diff --git a/.gitignore b/.gitignore
index 1e070aa..6502d24 100644
--- a/.gitignore
+++ b/.gitignore
@@ -3,5 +3,5 @@ package-lock.json
.DS_Store
.vscode
.history
-lib/
+dist/
src/**/.antlr
\ No newline at end of file
diff --git a/.npmignore b/.npmignore
index bdb3067..c28ae6d 100644
--- a/.npmignore
+++ b/.npmignore
@@ -7,4 +7,5 @@ package-lock.json
.history
site
src/
-docs
\ No newline at end of file
+docs
+lib/grammar
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
new file mode 100644
index 0000000..214e6cc
--- /dev/null
+++ b/CONTRIBUTING.md
@@ -0,0 +1,15 @@
+# dt-sql-parser
+
+summary
+
+## How to contribute
+
+## Prerequisites
+
+## Semantic Versioning
+
+## Branch Organization
+
+## Release Process
+
+## Source Code Organization
diff --git a/NeREADME.md b/NeREADME.md
new file mode 100644
index 0000000..0492d02
--- /dev/null
+++ b/NeREADME.md
@@ -0,0 +1,33 @@
+# dt-sql-parser
+
+[![NPM version][npm-image]][npm-url]
+
+[npm-image]: https://img.shields.io/npm/v/dt-sql-parser.svg?style=flat-square
+[npm-url]: https://www.npmjs.com/package/dt-sql-parser
+
+## Installation
+
+## Usage
+
+### Basic
+
+### Syntax validation
+
+### Visitor
+
+### Listener
+
+## Example
+
+## Roadmap
+
+- Unify parser generate to Antlr4
+- Generic SQL
+- Flink SQL
+- Libra SQL
+- TiDB
+ MySQL Compatible Syntax
+
+## Contributing
+
+## License
diff --git a/build/antlr4.js b/build/antlr4.js
index 33be0da..59af5a1 100644
--- a/build/antlr4.js
+++ b/build/antlr4.js
@@ -3,15 +3,14 @@ const exec = require('child_process').exec;
const antlr4 = path.resolve(__dirname, 'antlr-4.8-complete.jar');
const grammars = path.resolve(__dirname, '../src/grammar');
-const output = path.resolve(__dirname, '../src/parser');
+const output = path.resolve(__dirname, '../src/lib');
const entry = [
'generic',
- 'mysql',
'hive',
'plsql',
'spark',
- 'tsql',
+ 'impala',
];
entry.forEach((language) => {
diff --git a/docs/Roadmap.md b/docs/Roadmap.md
index 447b9de..e1db024 100644
--- a/docs/Roadmap.md
+++ b/docs/Roadmap.md
@@ -17,6 +17,5 @@
- Generic SQL
- Flink SQL
- Libra SQL
-- Oracle SQL
- TiDB
MySQL Compatible Syntax
diff --git a/docs/Tutorials.md b/docs/Tutorials.md
index 825011e..e3e0f06 100644
--- a/docs/Tutorials.md
+++ b/docs/Tutorials.md
@@ -1,5 +1,13 @@
# Tutorials
+## Antlr4 installation
+
+## How to extend new grammar
+
+## How to expose Javascript interface in this project
+
+## Integrate with Monaco Editor
+
## Reference
-
diff --git a/jest.config.js b/jest.config.js
index b5714b8..66dcd16 100644
--- a/jest.config.js
+++ b/jest.config.js
@@ -27,7 +27,7 @@ module.exports = {
// coverageDirectory: null,
// An array of regexp pattern strings used to skip coverage collection
- coveragePathIgnorePatterns: ["/node_modules/"],
+ coveragePathIgnorePatterns: ['/node_modules/'],
// A list of reporter names that Jest uses when writing coverage reports
// coverageReporters: [
@@ -57,7 +57,7 @@ module.exports = {
// A set of global variables that need to be available in all test environments
globals: {
- window: {},
+ window: {},
},
// An array of directory names to be searched recursively up from the requiring module's location
@@ -129,7 +129,7 @@ module.exports = {
// snapshotSerializers: [],
// The test environment that will be used for testing
- testEnvironment: "node",
+ testEnvironment: 'node',
// Options that will be passed to the testEnvironment
// testEnvironmentOptions: {},
@@ -144,7 +144,7 @@ module.exports = {
// ],
// An array of regexp pattern strings that are matched against all test paths, matched tests are skipped
- testPathIgnorePatterns: ["/node_modules/"],
+ testPathIgnorePatterns: ['/node_modules/'],
// The regexp pattern or array of patterns that Jest uses to detect test files
// testRegex: [],
@@ -163,11 +163,11 @@ module.exports = {
// A map from regular expressions to paths to transformers
transform: {
- "^.+\\.(t|j)sx?$": "ts-jest",
+ '^.+\\.(t|j)sx?$': 'ts-jest',
},
// An array of regexp pattern strings that are matched against all source file paths, matched files will skip transformation
- transformIgnorePatterns: ["/node_modules/"],
+ transformIgnorePatterns: ['/node_modules/'],
// An array of regexp pattern strings that are matched against all modules before the module loader will automatically return a mock for them
// unmockedModulePathPatterns: undefined,
@@ -180,4 +180,4 @@ module.exports = {
// Whether to use watchman for file crawling
// watchman: true,
-};
\ No newline at end of file
+};
diff --git a/lib/index.js b/lib/index.js
deleted file mode 100644
index 4d20aaf..0000000
--- a/lib/index.js
+++ /dev/null
@@ -1,14 +0,0 @@
-"use strict";
-var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
- if (k2 === undefined) k2 = k;
- Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
-}) : (function(o, m, k, k2) {
- if (k2 === undefined) k2 = k;
- o[k2] = m[k];
-}));
-var __exportStar = (this && this.__exportStar) || function(m, exports) {
- for (var p in m) if (p !== "default" && !exports.hasOwnProperty(p)) __createBinding(exports, m, p);
-};
-Object.defineProperty(exports, "__esModule", { value: true });
-__exportStar(require("./core"), exports);
-__exportStar(require("./utils"), exports);
diff --git a/lib/utils/index.js b/lib/utils/index.js
deleted file mode 100644
index 033bc2b..0000000
--- a/lib/utils/index.js
+++ /dev/null
@@ -1,123 +0,0 @@
-"use strict";
-Object.defineProperty(exports, "__esModule", { value: true });
-exports.splitSql = exports.replaceStrFormIndexArr = void 0;
-function replaceStrFormIndexArr(str, replaceStr, indexArr) {
- let result = '';
- let index = 0;
- if (!indexArr || indexArr.length < 1) {
- return str;
- }
- for (let i = 0; i < indexArr.length; i++) {
- const indexItem = indexArr[i];
- const begin = indexItem.begin;
- result = result + str.substring(index, begin) + replaceStr;
- index = indexItem.end + 1;
- if (i == indexArr.length - 1) {
- result = result + str.substring(index);
- }
- }
- return result;
-}
-exports.replaceStrFormIndexArr = replaceStrFormIndexArr;
-function splitSql(sql) {
- let haveEnd = true;
- if (!sql.endsWith(';')) {
- sql += ';';
- haveEnd = false;
- }
- function pushSql(parser, sql) {
- if (!haveEnd && parser.index == sql.length - 1) {
- parser.sqls.push(parser.index - 1);
- parser.queue = '';
- }
- else {
- parser.sqls.push(parser.index);
- parser.queue = '';
- }
- }
- // 处理引号
- function quoteToken(parser, sql) {
- const queue = parser.queue;
- const endsWith = queue[queue.length - 1];
- if (endsWith == '\'' || endsWith == '"') {
- const nextToken = sql.indexOf(endsWith, parser.index + 1);
- if (nextToken != -1) {
- parser.index = nextToken;
- parser.queue = '';
- }
- else {
- parser.index = sql.length - 1;
- }
- }
- else {
- return null;
- }
- }
- // 处理单行注释
- function singleLineCommentToken(parser, sql) {
- let queue = parser.queue;
- if (queue.endsWith('--')) {
- const nextToken = sql.indexOf('\n', parser.index + 1);
- if (nextToken != -1) {
- parser.index = nextToken;
- queue = '';
- }
- else {
- parser.index = sql.length - 1;
- }
- }
- else {
- return null;
- }
- }
- // 处理多行注释
- function multipleLineCommentToken(parser, sql) {
- const queue = parser.queue;
- if (queue.endsWith('/*')) {
- const nextToken = sql.indexOf('*/', parser.index + 1);
- if (nextToken != -1) {
- parser.index = nextToken + 1;
- parser.queue = '';
- }
- else {
- parser.index = sql.length - 1;
- parser.queue = '';
- }
- }
- else {
- return null;
- }
- }
- function splitToken(parser, sql) {
- const queue = parser.queue;
- if (queue.endsWith(';')) {
- pushSql(parser, sql);
- }
- else {
- return null;
- }
- }
- const parser = {
- index: 0,
- queue: '',
- sqls: [],
- };
- for (parser.index = 0; parser.index < sql.length; parser.index++) {
- const char = sql[parser.index];
- parser.queue += char;
- const tokenFuncs = [
- quoteToken,
- singleLineCommentToken,
- multipleLineCommentToken,
- splitToken,
- ];
- for (let i = 0; i < tokenFuncs.length; i++) {
- tokenFuncs[i](parser, sql);
- }
- if (parser.index == sql.length - 1 && parser.queue) {
- pushSql(parser, sql);
- }
- }
- return parser.sqls;
-}
-exports.splitSql = splitSql;
diff --git a/package.json b/package.json
index adae112..c4bbaf2 100644
--- a/package.json
+++ b/package.json
@@ -12,10 +12,10 @@
"impala",
"bigdata"
],
- "main": "lib/index.js",
+ "main": "dist/index.js",
"scripts": {
- "antlr": "node build/antlr4.js",
- "build": "npm test && rm -rf lib && tsc",
+ "antlr4": "node build/antlr4.js",
+ "build": "npm test && rm -rf dist && tsc",
"eslint": "eslint ./src/**/*.ts",
"check-types": "tsc --skipLibCheck",
"test": "jest"
diff --git a/src/core/common/baseParser.ts b/src/core/common/baseParser.ts
deleted file mode 100644
index 5a05688..0000000
--- a/src/core/common/baseParser.ts
+++ /dev/null
@@ -1,63 +0,0 @@
-import { Token, Lexer } from 'antlr4';
-
-import ParserErrorListener, { ParserError } from './parserErrorListener';
-
-/**
- * Custom Parser class, subclass needs extends it.
- */
-export default abstract class BaseParser {
- /**
- * Create antrl4 Lexer object
- * @param input source string
- */
- public abstract createLexer(input: string): Lexer;
-
- /**
- * Create Parser by lexer
- * @param lexer Lexer
- */
- public abstract createParserFromLexer(lexer: Lexer);
-
- public getAllTokens(input: string): Token[] {
- return this.createLexer(input).getAllTokens();
- };
-
- public createParser(input: string) {
- const lexer = this.createLexer(input);
- return this.createParserFromLexer(lexer);
- }
-
- public parserTree(input: string) {
- const lexer = this.createLexer(input);
- const parser: any = this.createParserFromLexer(lexer);
- parser.buildParseTrees = true;
- return parser;
- }
-
- /**
- * It convert tree to string, it's convenient to use in unit test.
- * @param string input
- */
- public parserTreeToString(input: string): string {
- const parser = this.parserTree(input);
- const tree = parser.statement();
- return tree.toStringTree(parser.ruleNames);
- }
-
- public validate(input: string): ParserError[] {
- const lexerError = []; const syntaxErrors = [];
- const lexer = this.createLexer(input);
- lexer.removeErrorListeners();
- lexer.addErrorListener(new ParserErrorListener(lexerError));
-
- const parser: any = this.createParserFromLexer(lexer);
- parser.buildParseTrees = true;
-
- parser.removeErrorListeners();
- parser.addErrorListener(new ParserErrorListener(syntaxErrors));
-
- parser.statement();
-
- return lexerError.concat(syntaxErrors);
- }
-}
diff --git a/src/core/common/parserErrorListener.ts b/src/core/common/parserErrorListener.ts
deleted file mode 100644
index a511092..0000000
--- a/src/core/common/parserErrorListener.ts
+++ /dev/null
@@ -1,36 +0,0 @@
-import { Token, Recognizer } from 'antlr4';
-import { ErrorListener } from 'antlr4/error';
-
-export interface ParserError {
- startLine: number;
- endLine: number;
- startCol: number;
- endCol: number;
- message: string;
-}
-
-export default class ParserErrorListener extends ErrorListener {
- private _errors: ParserError[] = [];
-
- constructor(errors: ParserError[]) {
- super();
- this._errors = errors;
- }
-
- syntaxError(
- recognizer: Recognizer, offendingSymbol: Token, line: number,
- charPositionInLine: number, msg: string, e: any,
- ) {
- let endCol = charPositionInLine + 1;
- if (offendingSymbol.text !== null) {
- endCol = charPositionInLine + offendingSymbol.text.length;
- }
- this._errors.push({
- startLine: line,
- endLine: line,
- startCol: charPositionInLine,
- endCol: endCol,
- message: msg,
- });
- }
-}
diff --git a/src/core/index.ts b/src/core/index.ts
deleted file mode 100644
index 2eb4d9c..0000000
--- a/src/core/index.ts
+++ /dev/null
@@ -1,2 +0,0 @@
-export * as mySQLParser from './mysql';
-export * as tSQLParser from './tsql';
diff --git a/src/core/mysql.ts b/src/core/mysql.ts
deleted file mode 100644
index 9a4ac09..0000000
--- a/src/core/mysql.ts
+++ /dev/null
@@ -1,17 +0,0 @@
-import { InputStream, CommonTokenStream, Lexer } from 'antlr4';
-import { MySQLLexer } from '../parser/MySQLLexer';
-import { MySQLParser } from '../parser/MySQLParser';
-
-import BaseParser from './common/baseParser';
-
-export default class MySQL extends BaseParser {
- public createLexer(input: string): Lexer {
- const chars = new InputStream(input.toUpperCase());
- const lexer = new MySQLLexer(chars) as Lexer;
- return lexer;
- }
- public createParserFromLexer(lexer: Lexer) {
- const tokenStream = new CommonTokenStream(lexer);
- return new MySQLParser(tokenStream);
- }
-}
diff --git a/src/core/tsql.ts b/src/core/tsql.ts
deleted file mode 100644
index 16e451e..0000000
--- a/src/core/tsql.ts
+++ /dev/null
@@ -1,17 +0,0 @@
-import { InputStream, CommonTokenStream, Lexer } from 'antlr4';
-import { TSqlParser } from '../parser/TSqlParser';
-import { TSqlLexer } from '../parser/TSqlLexer';
-
-import BaseParser from './common/baseParser';
-
-export default class TSQLParser extends BaseParser {
- public createLexer(input: string): Lexer {
- const chars = new InputStream(input.toUpperCase());
- const lexer = new TSqlLexer(chars) as Lexer;
- return lexer;
- }
- public createParserFromLexer(lexer: Lexer) {
- const tokenStream = new CommonTokenStream(lexer);
- return new TSqlParser(tokenStream);
- }
-}
diff --git a/src/grammar/mysql/README.md b/src/grammar/generic/README.md
similarity index 100%
rename from src/grammar/mysql/README.md
rename to src/grammar/generic/README.md
diff --git a/src/grammar/mysql/MySQLLexer.g4 b/src/grammar/generic/SqlLexer.g4
similarity index 99%
rename from src/grammar/mysql/MySQLLexer.g4
rename to src/grammar/generic/SqlLexer.g4
index 5b8d9dc..5f546d1 100644
--- a/src/grammar/mysql/MySQLLexer.g4
+++ b/src/grammar/generic/SqlLexer.g4
@@ -23,7 +23,7 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
*/
-lexer grammar MySQLLexer;
+lexer grammar SqlLexer;
channels { MYSQLCOMMENT, ERRORCHANNEL }
diff --git a/src/grammar/mysql/MySQLParser.g4 b/src/grammar/generic/SqlParser.g4
similarity index 99%
rename from src/grammar/mysql/MySQLParser.g4
rename to src/grammar/generic/SqlParser.g4
index 9d50e4f..305bf3a 100644
--- a/src/grammar/mysql/MySQLParser.g4
+++ b/src/grammar/generic/SqlParser.g4
@@ -23,13 +23,15 @@ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
*/
-parser grammar MySQLParser;
+parser grammar SqlParser;
-options { tokenVocab=MySQLLexer; }
+options { tokenVocab=SqlLexer; }
// Top Level Description
+program: statement EOF;
+
statement
: sqlStatements? MINUSMINUS? EOF
;
diff --git a/src/grammar/hello/Hello.g4 b/src/grammar/hello/Hello.g4
deleted file mode 100644
index 4b081ce..0000000
--- a/src/grammar/hello/Hello.g4
+++ /dev/null
@@ -1,4 +0,0 @@
-grammar helloSQL;
-r: 'hello' ID ;
-ID: [a-z]+ ;
-WS: [ \t\r\n]+ -> skip ;
diff --git a/src/grammar/hive/HiveSql.g4 b/src/grammar/hive/HiveSql.g4
new file mode 100644
index 0000000..65dbba0
--- /dev/null
+++ b/src/grammar/hive/HiveSql.g4
@@ -0,0 +1,1540 @@
+/**
+ Licensed to the Apache Software Foundation (ASF) under one or more
+ contributor license agreements. See the NOTICE file distributed with
+ this work for additional information regarding copyright ownership.
+ The ASF licenses this file to You under the Apache License, Version 2.0
+ (the "License"); you may not use this file except in compliance with
+ the License. You may obtain a copy of the License at
+ http://www.apache.org/licenses/LICENSE-2.0
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+*/
+
+// HPL/SQL Procedural SQL Extension Grammar
+grammar HiveSql;
+
+options {
+ tokenVocab=HiveSqlLexer;
+}
+
+program: block EOF;
+
+block : ((begin_end_block | stmt) T_GO?)+ ; // Multiple consecutive blocks/statements
+
+begin_end_block :
+ declare_block? T_BEGIN block exception_block? block_end
+ ;
+
+single_block_stmt : // Single BEGIN END block (but nested blocks are possible) or single statement
+ T_BEGIN block exception_block? block_end
+ | stmt T_SEMICOLON?
+ ;
+
+block_end :
+ {!this._input.LT(2).getText().equalsIgnoreCase("TRANSACTION")}? T_END
+ ;
+
+proc_block :
+ begin_end_block
+ | stmt+ T_GO?
+ ;
+
+stmt :
+ assignment_stmt
+ | allocate_cursor_stmt
+ | alter_table_stmt
+ | associate_locator_stmt
+ | begin_transaction_stmt
+ | break_stmt
+ | call_stmt
+ | collect_stats_stmt
+ | close_stmt
+ | cmp_stmt
+ | copy_from_local_stmt
+ | copy_stmt
+ | commit_stmt
+ | create_database_stmt
+ | create_function_stmt
+ | create_index_stmt
+ | create_local_temp_table_stmt
+ | create_package_stmt
+ | create_package_body_stmt
+ | create_procedure_stmt
+ | create_table_stmt
+ | declare_stmt
+ | delete_stmt
+ | describe_stmt
+ | drop_stmt
+ | end_transaction_stmt
+ | exec_stmt
+ | exit_stmt
+ | fetch_stmt
+ | for_cursor_stmt
+ | for_range_stmt
+ | if_stmt
+ | include_stmt
+ | insert_stmt
+ | insert_directory_stmt
+ | get_diag_stmt
+ | grant_stmt
+ | leave_stmt
+ | map_object_stmt
+ | merge_stmt
+ | open_stmt
+ | print_stmt
+ | quit_stmt
+ | raise_stmt
+ | resignal_stmt
+ | return_stmt
+ | rollback_stmt
+ | select_stmt
+ | signal_stmt
+ | summary_stmt
+ | update_stmt
+ | use_stmt
+ | truncate_stmt
+ | values_into_stmt
+ | while_stmt
+ | label
+ | hive
+ | host
+ | null_stmt
+ | expr_stmt
+ | semicolon_stmt // Placed here to allow null statements ;;...
+ ;
+
+semicolon_stmt :
+ T_SEMICOLON
+ | '@' | '#' | '/'
+ ;
+
+exception_block : // Exception block
+ T_EXCEPTION exception_block_item+
+ ;
+
+exception_block_item :
+ T_WHEN L_ID T_THEN block ~(T_WHEN | T_END)
+ ;
+
+null_stmt : // NULL statement (no operation)
+ T_NULL
+ ;
+
+expr_stmt : // Standalone expression
+ {!this._input.LT(1).getText().equalsIgnoreCase("GO")}? expr
+ ;
+
+assignment_stmt : // Assignment statement
+ T_SET set_session_option
+ | T_SET? assignment_stmt_item (T_COMMA assignment_stmt_item)*
+ ;
+
+assignment_stmt_item :
+ assignment_stmt_single_item
+ | assignment_stmt_multiple_item
+ | assignment_stmt_select_item
+ ;
+
+assignment_stmt_single_item :
+ ident T_COLON? T_EQUAL expr
+ | T_OPEN_P ident T_CLOSE_P T_COLON? T_EQUAL expr
+ ;
+
+assignment_stmt_multiple_item :
+ T_OPEN_P ident (T_COMMA ident)* T_CLOSE_P T_COLON? T_EQUAL T_OPEN_P expr (T_COMMA expr)* T_CLOSE_P
+ ;
+
+assignment_stmt_select_item :
+ (ident | (T_OPEN_P ident (T_COMMA ident)* T_CLOSE_P)) T_COLON? T_EQUAL T_OPEN_P select_stmt T_CLOSE_P
+ ;
+
+allocate_cursor_stmt:
+ T_ALLOCATE ident T_CURSOR T_FOR ((T_RESULT T_SET) | T_PROCEDURE) ident
+ ;
+
+associate_locator_stmt :
+ T_ASSOCIATE (T_RESULT T_SET)? (T_LOCATOR | T_LOCATORS) T_OPEN_P ident (T_COMMA ident)* T_CLOSE_P T_WITH T_PROCEDURE ident
+ ;
+
+begin_transaction_stmt :
+ T_BEGIN T_TRANSACTION
+ ;
+
+break_stmt :
+ T_BREAK
+ ;
+
+call_stmt :
+ T_CALL ident (T_OPEN_P expr_func_params? T_CLOSE_P | expr_func_params)?
+ ;
+
+declare_stmt : // Declaration statement
+ T_DECLARE declare_stmt_item (T_COMMA declare_stmt_item)*
+ ;
+
+declare_block : // Declaration block
+ T_DECLARE declare_stmt_item T_SEMICOLON (declare_stmt_item T_SEMICOLON)*
+ ;
+
+declare_block_inplace :
+ declare_stmt_item T_SEMICOLON (declare_stmt_item T_SEMICOLON)*
+ ;
+
+declare_stmt_item :
+ declare_cursor_item
+ | declare_condition_item
+ | declare_handler_item
+ | declare_var_item
+ | declare_temporary_table_item
+ ;
+
+declare_var_item :
+ ident (T_COMMA ident)* T_AS? dtype dtype_len? dtype_attr* dtype_default?
+ | ident T_CONSTANT T_AS? dtype dtype_len? dtype_default
+ ;
+
+declare_condition_item : // Condition declaration
+ ident T_CONDITION
+ ;
+
+declare_cursor_item : // Cursor declaration
+ (T_CURSOR ident | ident T_CURSOR) (cursor_with_return | cursor_without_return)? (T_IS | T_AS | T_FOR) (select_stmt | expr )
+ ;
+
+cursor_with_return :
+ T_WITH T_RETURN T_ONLY? (T_TO (T_CALLER | T_CLIENT))?
+ ;
+
+cursor_without_return :
+ T_WITHOUT T_RETURN
+ ;
+
+declare_handler_item : // Condition handler declaration
+ (T_CONTINUE | T_EXIT) T_HANDLER T_FOR (T_SQLEXCEPTION | T_SQLWARNING | T_NOT T_FOUND | ident) single_block_stmt
+ ;
+
+declare_temporary_table_item : // DECLARE TEMPORARY TABLE statement
+ T_GLOBAL? T_TEMPORARY T_TABLE ident create_table_preoptions? create_table_definition
+ ;
+
+create_table_stmt :
+ T_CREATE T_TABLE (T_IF T_NOT T_EXISTS)? table_name create_table_preoptions? create_table_definition
+ ;
+
+create_local_temp_table_stmt :
+ T_CREATE (T_LOCAL T_TEMPORARY | (T_SET | T_MULTISET)? T_VOLATILE) T_TABLE ident create_table_preoptions? create_table_definition
+ ;
+
+create_table_definition :
+ (T_AS? T_OPEN_P select_stmt T_CLOSE_P | T_AS? select_stmt | T_OPEN_P create_table_columns T_CLOSE_P | T_LIKE table_name) create_table_options?
+ ;
+
+create_table_columns :
+ create_table_columns_item (T_COMMA create_table_columns_item)*
+ ;
+
+create_table_columns_item :
+ column_name dtype dtype_len? dtype_attr* create_table_column_inline_cons*
+ | (T_CONSTRAINT ident)? create_table_column_cons
+ ;
+
+column_name :
+ ident
+ ;
+
+create_table_column_inline_cons :
+ dtype_default
+ | T_NOT? T_NULL
+ | T_PRIMARY T_KEY
+ | T_UNIQUE
+ | T_REFERENCES table_name T_OPEN_P ident T_CLOSE_P create_table_fk_action*
+ | T_IDENTITY T_OPEN_P L_INT (T_COMMA L_INT)* T_CLOSE_P
+ | T_AUTO_INCREMENT
+ | T_ENABLE
+ ;
+
+create_table_column_cons :
+ T_PRIMARY T_KEY T_CLUSTERED? T_OPEN_P ident (T_ASC | T_DESC)? (T_COMMA ident (T_ASC | T_DESC)?)* T_CLOSE_P T_ENABLE? index_storage_clause?
+ | T_FOREIGN T_KEY T_OPEN_P ident (T_COMMA ident)* T_CLOSE_P T_REFERENCES table_name T_OPEN_P ident (T_COMMA ident)* T_CLOSE_P create_table_fk_action*
+ ;
+
+create_table_fk_action :
+ T_ON (T_UPDATE | T_DELETE) (T_NO T_ACTION | T_RESTRICT | T_SET T_NULL | T_SET T_DEFAULT | T_CASCADE)
+ ;
+
+create_table_preoptions :
+ create_table_preoptions_item+
+ ;
+
+create_table_preoptions_item :
+ T_COMMA create_table_preoptions_td_item
+ | create_table_options_hive_item
+ ;
+
+create_table_preoptions_td_item :
+ T_NO? (T_LOG | T_FALLBACK)
+ ;
+
+create_table_options :
+ create_table_options_item+
+ ;
+
+create_table_options_item :
+ T_ON T_COMMIT (T_DELETE | T_PRESERVE) T_ROWS
+ | create_table_options_ora_item
+ | create_table_options_db2_item
+ | create_table_options_td_item
+ | create_table_options_hive_item
+ | create_table_options_mssql_item
+ | create_table_options_mysql_item
+ ;
+
+create_table_options_ora_item :
+ T_SEGMENT T_CREATION (T_IMMEDIATE | T_DEFERRED)
+ | (T_PCTFREE | T_PCTUSED | T_INITRANS | T_MAXTRANS) L_INT
+ | T_NOCOMPRESS
+ | (T_LOGGING | T_NOLOGGING)
+ | T_STORAGE T_OPEN_P (ident | L_INT)+ T_CLOSE_P
+ | T_TABLESPACE ident
+ ;
+
+create_table_options_db2_item :
+ T_INDEX? T_IN ident
+ | T_WITH T_REPLACE
+ | T_DISTRIBUTE T_BY T_HASH T_OPEN_P ident (T_COMMA ident)* T_CLOSE_P
+ | T_NOT? T_LOGGED
+ | T_COMPRESS (T_YES | T_NO)
+ | T_DEFINITION T_ONLY
+ | T_WITH T_RESTRICT T_ON T_DROP
+ ;
+
+create_table_options_td_item :
+ T_UNIQUE? T_PRIMARY T_INDEX T_OPEN_P ident (T_COMMA ident)* T_CLOSE_P
+ | T_WITH T_DATA
+ ;
+
+create_table_options_hive_item :
+ create_table_hive_row_format
+ | T_STORED T_AS ident
+ ;
+
+create_table_hive_row_format :
+ T_ROW T_FORMAT T_DELIMITED create_table_hive_row_format_fields*
+ ;
+
+create_table_hive_row_format_fields :
+ T_FIELDS T_TERMINATED T_BY expr (T_ESCAPED T_BY expr)?
+ | T_COLLECTION T_ITEMS T_TERMINATED T_BY expr
+ | T_MAP T_KEYS T_TERMINATED T_BY expr
+ | T_LINES T_TERMINATED T_BY expr
+ | T_NULL T_DEFINED T_AS expr
+ ;
+
+create_table_options_mssql_item :
+ T_ON ident
+ | T_TEXTIMAGE_ON ident
+ ;
+
+create_table_options_mysql_item :
+ T_AUTO_INCREMENT T_EQUAL? expr
+ | T_COMMENT T_EQUAL? expr
+ | T_DEFAULT? (T_CHARACTER T_SET | T_CHARSET) T_EQUAL? expr
+ | T_ENGINE T_EQUAL? expr
+ ;
+
+alter_table_stmt :
+ T_ALTER T_TABLE table_name alter_table_item
+ ;
+
+alter_table_item :
+ alter_table_add_constraint
+ ;
+
+alter_table_add_constraint :
+ T_ADD2 (T_CONSTRAINT ident)? alter_table_add_constraint_item
+ ;
+
+alter_table_add_constraint_item :
+ T_PRIMARY T_KEY T_CLUSTERED? T_OPEN_P ident (T_ASC | T_DESC)? (T_COMMA ident (T_ASC | T_DESC)?)* T_CLOSE_P T_ENABLE? index_storage_clause?
+ | T_FOREIGN T_KEY T_OPEN_P ident (T_COMMA ident)* T_CLOSE_P T_REFERENCES table_name T_OPEN_P ident (T_COMMA ident)* T_CLOSE_P create_table_fk_action*
+ | T_DEFAULT expr T_FOR ident
+ ;
+
+dtype : // Data types
+ T_CHAR
+ | T_CHARACTER
+ | T_BIGINT
+ | T_BINARY_DOUBLE
+ | T_BINARY_FLOAT
+ | T_BINARY_INTEGER
+ | T_BIT
+ | T_DATE
+ | T_DATETIME
+ | T_DEC
+ | T_DECIMAL
+ | T_DOUBLE T_PRECISION?
+ | T_FLOAT
+ | T_INT
+ | T_INT2
+ | T_INT4
+ | T_INT8
+ | T_INTEGER
+ | T_NCHAR
+ | T_NVARCHAR
+ | T_NUMBER
+ | T_NUMERIC
+ | T_PLS_INTEGER
+ | T_REAL
+ | T_RESULT_SET_LOCATOR T_VARYING
+ | T_SIMPLE_FLOAT
+ | T_SIMPLE_DOUBLE
+ | T_SIMPLE_INTEGER
+ | T_SMALLINT
+ | T_SMALLDATETIME
+ | T_STRING
+ | T_SYS_REFCURSOR
+ | T_TIMESTAMP
+ | T_TINYINT
+ | T_VARCHAR
+ | T_VARCHAR2
+ | T_XML
+ | ident ('%' (T_TYPE | T_ROWTYPE))? // User-defined or derived data type
+ ;
+
+dtype_len : // Data type length or size specification
+ T_OPEN_P (L_INT | T_MAX) (T_CHAR | T_BYTE)? (T_COMMA L_INT)? T_CLOSE_P
+ ;
+
+dtype_attr :
+ T_NOT? T_NULL
+ | T_CHARACTER T_SET ident
+ | T_NOT? (T_CASESPECIFIC | T_CS)
+ ;
+
+dtype_default :
+ T_COLON? T_EQUAL expr
+ | T_WITH? T_DEFAULT expr?
+ ;
+
+create_database_stmt :
+ T_CREATE (T_DATABASE | T_SCHEMA) (T_IF T_NOT T_EXISTS)? expr create_database_option*
+ ;
+
+create_database_option :
+ T_COMMENT expr
+ | T_LOCATION expr
+ ;
+
+create_function_stmt :
+ (T_ALTER | T_CREATE (T_OR T_REPLACE)? | T_REPLACE)? T_FUNCTION ident create_routine_params? create_function_return (T_AS | T_IS)? declare_block_inplace? single_block_stmt
+ ;
+
+create_function_return :
+ (T_RETURN | T_RETURNS) dtype dtype_len?
+ ;
+
+create_package_stmt :
+ (T_ALTER | T_CREATE (T_OR T_REPLACE)? | T_REPLACE)? T_PACKAGE ident (T_AS | T_IS) package_spec T_END (ident T_SEMICOLON)?
+ ;
+
+package_spec :
+ package_spec_item T_SEMICOLON (package_spec_item T_SEMICOLON)*
+ ;
+
+package_spec_item :
+ declare_stmt_item
+ | T_FUNCTION ident create_routine_params? create_function_return
+ | (T_PROCEDURE | T_PROC) ident create_routine_params?
+ ;
+
+create_package_body_stmt :
+ (T_ALTER | T_CREATE (T_OR T_REPLACE)? | T_REPLACE)? T_PACKAGE T_BODY ident (T_AS | T_IS) package_body T_END (ident T_SEMICOLON)?
+ ;
+
+package_body :
+ package_body_item T_SEMICOLON (package_body_item T_SEMICOLON)*
+ ;
+
+package_body_item :
+ declare_stmt_item
+ | create_function_stmt
+ | create_procedure_stmt
+ ;
+
+create_procedure_stmt :
+ (T_ALTER | T_CREATE (T_OR T_REPLACE)? | T_REPLACE)? (T_PROCEDURE | T_PROC) ident create_routine_params? create_routine_options? (T_AS | T_IS)? declare_block_inplace? label? proc_block (ident T_SEMICOLON)?
+ ;
+
+create_routine_params :
+ T_OPEN_P T_CLOSE_P
+ | T_OPEN_P create_routine_param_item (T_COMMA create_routine_param_item)* T_CLOSE_P
+ | {!this._input.LT(1).getText().equalsIgnoreCase("IS") &&
+ !this._input.LT(1).getText().equalsIgnoreCase("AS") &&
+ !(this._input.LT(1).getText().equalsIgnoreCase("DYNAMIC") && this._input.LT(2).getText().equalsIgnoreCase("RESULT"))
+ }?
+ create_routine_param_item (T_COMMA create_routine_param_item)*
+ ;
+
+create_routine_param_item :
+ (T_IN | T_OUT | T_INOUT | T_IN T_OUT)? ident dtype dtype_len? dtype_attr* dtype_default?
+ | ident (T_IN | T_OUT | T_INOUT | T_IN T_OUT)? dtype dtype_len? dtype_attr* dtype_default?
+ ;
+
+create_routine_options :
+ create_routine_option+
+ ;
+create_routine_option :
+ T_LANGUAGE T_SQL
+ | T_SQL T_SECURITY (T_CREATOR | T_DEFINER | T_INVOKER | T_OWNER)
+ | T_DYNAMIC? T_RESULT T_SETS L_INT
+ ;
+
+drop_stmt : // DROP statement
+ T_DROP T_TABLE (T_IF T_EXISTS)? table_name
+ | T_DROP (T_DATABASE | T_SCHEMA) (T_IF T_EXISTS)? expr
+ ;
+
+end_transaction_stmt :
+ T_END T_TRANSACTION
+ ;
+
+exec_stmt : // EXEC, EXECUTE IMMEDIATE statement
+ (T_EXEC | T_EXECUTE) T_IMMEDIATE? expr (T_OPEN_P expr_func_params T_CLOSE_P | expr_func_params)? (T_INTO L_ID (T_COMMA L_ID)*)? using_clause?
+ ;
+
+if_stmt : // IF statement
+ if_plsql_stmt
+ | if_tsql_stmt
+ | if_bteq_stmt
+ ;
+
+if_plsql_stmt :
+ T_IF bool_expr T_THEN block elseif_block* else_block? T_END T_IF
+ ;
+
+if_tsql_stmt :
+ T_IF bool_expr single_block_stmt (T_ELSE single_block_stmt)?
+ ;
+
+if_bteq_stmt :
+ '.' T_IF bool_expr T_THEN single_block_stmt
+ ;
+
+elseif_block :
+ (T_ELSIF | T_ELSEIF) bool_expr T_THEN block
+ ;
+
+else_block :
+ T_ELSE block
+ ;
+
+include_stmt : // INCLUDE statement
+ T_INCLUDE (file_name | expr)
+ ;
+
+insert_stmt : // INSERT statement
+ T_INSERT (T_OVERWRITE T_TABLE | T_INTO T_TABLE?) table_name insert_stmt_cols? (select_stmt | insert_stmt_rows)
+ ;
+
+insert_stmt_cols :
+ T_OPEN_P ident (T_COMMA ident)* T_CLOSE_P
+ ;
+
+insert_stmt_rows :
+ T_VALUES insert_stmt_row (T_COMMA insert_stmt_row)*
+ ;
+
+insert_stmt_row:
+ T_OPEN_P expr (T_COMMA expr)* T_CLOSE_P
+ ;
+
+insert_directory_stmt :
+ T_INSERT T_OVERWRITE T_LOCAL? T_DIRECTORY expr_file expr_select
+ ;
+
+exit_stmt :
+ T_EXIT L_ID? (T_WHEN bool_expr)?
+ ;
+
+get_diag_stmt : // GET DIAGNOSTICS statement
+ T_GET T_DIAGNOSTICS get_diag_stmt_item
+ ;
+
+get_diag_stmt_item :
+ get_diag_stmt_exception_item
+ | get_diag_stmt_rowcount_item
+ ;
+
+get_diag_stmt_exception_item :
+ T_EXCEPTION L_INT ident T_EQUAL T_MESSAGE_TEXT
+ ;
+
+get_diag_stmt_rowcount_item :
+ ident T_EQUAL T_ROW_COUNT
+ ;
+
+grant_stmt :
+ T_GRANT grant_stmt_item (T_COMMA grant_stmt_item)* T_TO T_ROLE ident
+ ;
+
+grant_stmt_item :
+ T_EXECUTE T_ON T_PROCEDURE ident
+ ;
+
+leave_stmt :
+ T_LEAVE L_ID?
+ ;
+
+map_object_stmt :
+ T_MAP T_OBJECT expr (T_TO expr)? (T_AT expr)?
+ ;
+
+open_stmt : // OPEN cursor statement
+ T_OPEN L_ID (T_FOR (select_stmt | expr))?
+ ;
+
+fetch_stmt : // FETCH cursor statement
+ T_FETCH T_FROM? L_ID T_INTO L_ID (T_COMMA L_ID)*
+ ;
+
+collect_stats_stmt :
+ T_COLLECT (T_STATISTICS | T_STATS) T_ON table_name collect_stats_clause?
+ ;
+
+collect_stats_clause :
+ T_COLUMN T_OPEN_P ident (T_COMMA ident)* T_CLOSE_P
+ ;
+
+close_stmt : // CLOSE cursor statement
+ T_CLOSE L_ID
+ ;
+
+cmp_stmt : // CMP statement
+ T_CMP (T_ROW_COUNT | T_SUM) cmp_source T_COMMA cmp_source
+ ;
+
+cmp_source :
+ (table_name where_clause? | T_OPEN_P select_stmt T_CLOSE_P) (T_AT ident)?
+ ;
+
+copy_from_local_stmt : // COPY FROM LOCAL statement
+ T_COPY T_FROM T_LOCAL copy_source (T_COMMA copy_source)* T_TO copy_target copy_file_option*
+ ;
+
+copy_stmt : // COPY statement
+ T_COPY (table_name | T_OPEN_P select_stmt T_CLOSE_P) T_TO T_HDFS? copy_target copy_option*
+ ;
+
+copy_source :
+ (file_name | expr)
+ ;
+
+copy_target :
+ (file_name | expr)
+ ;
+
+copy_option :
+ T_AT ident
+ | T_BATCHSIZE expr
+ | T_DELIMITER expr
+ | T_SQLINSERT ident
+ ;
+
+copy_file_option :
+ T_DELETE
+ | T_IGNORE
+ | T_OVERWRITE
+ ;
+
+commit_stmt : // COMMIT statement
+ T_COMMIT T_WORK?
+ ;
+
+create_index_stmt : // CREATE INDEX statement
+ T_CREATE T_UNIQUE? T_INDEX ident T_ON table_name T_OPEN_P create_index_col (T_COMMA create_index_col)* T_CLOSE_P
+ ;
+
+create_index_col :
+ ident (T_ASC | T_DESC)?
+ ;
+
+index_storage_clause :
+ index_mssql_storage_clause
+ ;
+
+index_mssql_storage_clause :
+ T_WITH T_OPEN_P ident T_EQUAL ident (T_COMMA ident T_EQUAL ident)* T_CLOSE_P create_table_options_mssql_item*
+ ;
+
+print_stmt : // PRINT statement
+ T_PRINT expr
+ | T_PRINT T_OPEN_P expr T_CLOSE_P
+ ;
+
+quit_stmt :
+ '.'? T_QUIT expr?
+ ;
+
+raise_stmt :
+ T_RAISE
+ ;
+
+resignal_stmt : // RESIGNAL statement
+ T_RESIGNAL (T_SQLSTATE T_VALUE? expr (T_SET T_MESSAGE_TEXT T_EQUAL expr)? )?
+ ;
+
+return_stmt : // RETURN statement
+ T_RETURN expr?
+ ;
+
+rollback_stmt : // ROLLBACK statement
+ T_ROLLBACK T_WORK?
+ ;
+
+set_session_option :
+ set_current_schema_option
+ | set_mssql_session_option
+ | set_teradata_session_option
+ ;
+
+set_current_schema_option :
+ ((T_CURRENT? T_SCHEMA) | T_CURRENT_SCHEMA) T_EQUAL? expr
+ ;
+
+set_mssql_session_option :
+ ( T_ANSI_NULLS
+ | T_ANSI_PADDING
+ | T_NOCOUNT
+ | T_QUOTED_IDENTIFIER
+ | T_XACT_ABORT )
+ (T_ON | T_OFF)
+ ;
+
+set_teradata_session_option :
+ T_QUERY_BAND T_EQUAL (expr | T_NONE) T_UPDATE? T_FOR (T_TRANSACTION | T_SESSION)
+ ;
+
+signal_stmt : // SIGNAL statement
+ T_SIGNAL ident
+ ;
+
+summary_stmt : // SUMMARY statement
+ T_SUMMARY (T_TOP expr)? T_FOR (select_stmt | table_name where_clause? (T_LIMIT expr)?)
+ ;
+
+truncate_stmt :
+ T_TRUNCATE T_TABLE? table_name
+ ;
+
+use_stmt : // USE statement
+ T_USE expr
+ ;
+
+values_into_stmt : // VALUES INTO statement
+ T_VALUES T_OPEN_P? expr (T_COMMA expr)* T_CLOSE_P? T_INTO T_OPEN_P? ident (T_COMMA ident)* T_CLOSE_P?
+ ;
+
+while_stmt : // WHILE loop statement
+ T_WHILE bool_expr (T_DO | T_LOOP | T_THEN | T_BEGIN) block T_END (T_WHILE | T_LOOP)?
+ ;
+
+for_cursor_stmt : // FOR (cursor) statement
+ T_FOR L_ID T_IN T_OPEN_P? select_stmt T_CLOSE_P? T_LOOP block T_END T_LOOP
+ ;
+
+for_range_stmt : // FOR (Integer range) statement
+ T_FOR L_ID T_IN T_REVERSE? expr T_DOT2 expr ((T_BY | T_STEP) expr)? T_LOOP block T_END T_LOOP
+ ;
+
+label :
+ L_LABEL
+ | T_LESS T_LESS L_ID T_GREATER T_GREATER
+ ;
+
+using_clause : // USING var,... clause
+ T_USING expr (T_COMMA expr)*
+ ;
+
+select_stmt : // SELECT statement
+ cte_select_stmt? fullselect_stmt
+ ;
+
+cte_select_stmt :
+ T_WITH cte_select_stmt_item (T_COMMA cte_select_stmt_item)*
+ ;
+
+cte_select_stmt_item :
+ ident cte_select_cols? T_AS T_OPEN_P fullselect_stmt T_CLOSE_P
+ ;
+
+cte_select_cols :
+ T_OPEN_P ident (T_COMMA ident)* T_CLOSE_P
+ ;
+
+fullselect_stmt :
+ fullselect_stmt_item (fullselect_set_clause fullselect_stmt_item)*
+ ;
+
+fullselect_stmt_item :
+ subselect_stmt
+ | T_OPEN_P fullselect_stmt T_CLOSE_P
+ ;
+
+fullselect_set_clause :
+ T_UNION T_ALL?
+ | T_EXCEPT T_ALL?
+ | T_INTERSECT T_ALL?
+ ;
+
+subselect_stmt :
+ (T_SELECT | T_SEL) select_list into_clause? from_clause? where_clause? group_by_clause? (having_clause | qualify_clause)? order_by_clause? select_options?
+ ;
+
+select_list :
+ select_list_set? select_list_limit? select_list_item (T_COMMA select_list_item)*
+ ;
+
+select_list_set :
+ T_ALL
+ | T_DISTINCT
+ ;
+
+select_list_limit :
+ T_TOP expr
+ ;
+
+select_list_item :
+ ((ident T_EQUAL)? expr select_list_alias? | select_list_asterisk)
+ ;
+
+select_list_alias :
+ {!this._input.LT(1).getText().equalsIgnoreCase("INTO") && !this._input.LT(1).getText().equalsIgnoreCase("FROM")}? T_AS? ident
+ | T_OPEN_P T_TITLE L_S_STRING T_CLOSE_P
+ ;
+
+select_list_asterisk :
+ (L_ID '.')? '*'
+ ;
+
+into_clause :
+ T_INTO ident (T_COMMA ident)*
+ ;
+
+from_clause :
+ T_FROM from_table_clause (from_join_clause)*
+ ;
+
+from_table_clause :
+ from_table_name_clause
+ | from_subselect_clause
+ | from_table_values_clause
+ ;
+
+from_table_name_clause :
+ table_name from_alias_clause?
+ ;
+
+from_subselect_clause :
+ T_OPEN_P select_stmt T_CLOSE_P from_alias_clause?
+ ;
+
+from_join_clause :
+ T_COMMA from_table_clause
+ | from_join_type_clause from_table_clause T_ON bool_expr
+ ;
+
+from_join_type_clause :
+ T_INNER? T_JOIN
+ | (T_LEFT | T_RIGHT | T_FULL) T_OUTER? T_JOIN
+ ;
+
+from_table_values_clause:
+ T_TABLE T_OPEN_P T_VALUES from_table_values_row (T_COMMA from_table_values_row)* T_CLOSE_P from_alias_clause?
+ ;
+
+from_table_values_row:
+ expr
+ | T_OPEN_P expr (T_COMMA expr)* T_CLOSE_P
+ ;
+
+from_alias_clause :
+ {!this._input.LT(1).getText().equalsIgnoreCase("EXEC") &&
+ !this._input.LT(1).getText().equalsIgnoreCase("EXECUTE") &&
+ !this._input.LT(1).getText().equalsIgnoreCase("INNER") &&
+ !this._input.LT(1).getText().equalsIgnoreCase("LEFT") &&
+ !this._input.LT(1).getText().equalsIgnoreCase("GROUP") &&
+ !this._input.LT(1).getText().equalsIgnoreCase("ORDER") &&
+ !this._input.LT(1).getText().equalsIgnoreCase("LIMIT") &&
+ !this._input.LT(1).getText().equalsIgnoreCase("WITH")}?
+ T_AS? ident (T_OPEN_P L_ID (T_COMMA L_ID)* T_CLOSE_P)?
+ ;
+
+table_name :
+ ident
+ ;
+
+where_clause :
+ T_WHERE bool_expr
+ ;
+
+group_by_clause :
+ T_GROUP T_BY expr (T_COMMA expr)*
+ ;
+
+having_clause :
+ T_HAVING bool_expr
+ ;
+
+qualify_clause :
+ T_QUALIFY bool_expr
+ ;
+
+order_by_clause :
+ T_ORDER T_BY expr (T_ASC | T_DESC)? (T_COMMA expr (T_ASC | T_DESC)?)*
+ ;
+
+select_options :
+ select_options_item+
+ ;
+
+select_options_item :
+ T_LIMIT expr
+ | T_WITH (T_RR | T_RS | T_CS | T_UR) (T_USE T_AND T_KEEP (T_EXCLUSIVE | T_UPDATE | T_SHARE) T_LOCKS)?
+ ;
+
+update_stmt : // UPDATE statement
+ T_UPDATE update_table T_SET update_assignment where_clause? update_upsert?
+ ;
+
+update_assignment :
+ assignment_stmt_item (T_COMMA assignment_stmt_item)*
+ ;
+
+update_table :
+ (table_name from_clause? | T_OPEN_P select_stmt T_CLOSE_P) (T_AS? ident)?
+ ;
+
+update_upsert :
+ T_ELSE insert_stmt
+ ;
+
+merge_stmt : // MERGE statement
+ T_MERGE T_INTO merge_table T_USING merge_table T_ON bool_expr merge_condition+
+ ;
+
+merge_table :
+ (table_name | (T_OPEN_P select_stmt T_CLOSE_P)) (T_AS? ident)?
+ ;
+
+merge_condition :
+ T_WHEN T_NOT? T_MATCHED (T_AND bool_expr)? T_THEN merge_action
+ | T_ELSE T_IGNORE
+ ;
+
+merge_action :
+ T_INSERT insert_stmt_cols? T_VALUES insert_stmt_row
+ | T_UPDATE T_SET assignment_stmt_item (T_COMMA assignment_stmt_item)* where_clause?
+ | T_DELETE
+ ;
+
+delete_stmt :
+ T_DELETE T_FROM? table_name delete_alias? (where_clause | T_ALL)?
+ ;
+
+delete_alias :
+ {!this._input.LT(1).getText().equalsIgnoreCase("ALL")}?
+ T_AS? ident
+ ;
+
+describe_stmt :
+ (T_DESCRIBE | T_DESC) T_TABLE? table_name
+ ;
+
+bool_expr : // Boolean condition
+ T_NOT? T_OPEN_P bool_expr T_CLOSE_P
+ | bool_expr bool_expr_logical_operator bool_expr
+ | bool_expr_atom
+ ;
+
+bool_expr_atom :
+ bool_expr_unary
+ | bool_expr_binary
+ | expr
+ ;
+
+bool_expr_unary :
+ expr T_IS T_NOT? T_NULL
+ | expr T_BETWEEN expr T_AND expr
+ | T_NOT? T_EXISTS T_OPEN_P select_stmt T_CLOSE_P
+ | bool_expr_single_in
+ | bool_expr_multi_in
+ ;
+
+bool_expr_single_in :
+ expr T_NOT? T_IN T_OPEN_P ((expr (T_COMMA expr)*) | select_stmt) T_CLOSE_P
+ ;
+
+bool_expr_multi_in :
+ T_OPEN_P expr (T_COMMA expr)* T_CLOSE_P T_NOT? T_IN T_OPEN_P select_stmt T_CLOSE_P
+ ;
+
+bool_expr_binary :
+ expr bool_expr_binary_operator expr
+ ;
+
+bool_expr_logical_operator :
+ T_AND
+ | T_OR
+ ;
+
+bool_expr_binary_operator :
+ T_EQUAL
+ | T_EQUAL2
+ | T_NOTEQUAL
+ | T_NOTEQUAL2
+ | T_LESS
+ | T_LESSEQUAL
+ | T_GREATER
+ | T_GREATEREQUAL
+ | T_NOT? (T_LIKE | T_RLIKE | T_REGEXP)
+ ;
+
+expr :
+ expr interval_item
+ | expr T_MUL expr
+ | expr T_DIV expr
+ | expr T_ADD expr
+ | expr T_SUB expr
+ | T_OPEN_P select_stmt T_CLOSE_P
+ | T_OPEN_P expr T_CLOSE_P
+ | expr_interval
+ | expr_concat
+ | expr_case
+ | expr_cursor_attribute
+ | expr_agg_window_func
+ | expr_spec_func
+ | expr_func
+ | expr_atom
+ ;
+
+expr_atom :
+ date_literal
+ | timestamp_literal
+ | bool_literal
+ | ident
+ | string
+ | dec_number
+ | int_number
+ | null_const
+ ;
+
+expr_interval :
+ T_INTERVAL expr interval_item
+ ;
+interval_item :
+ T_DAY
+ | T_DAYS
+ | T_MICROSECOND
+ | T_MICROSECONDS
+ | T_SECOND
+ | T_SECONDS
+ ;
+
+expr_concat : // String concatenation operator
+ expr_concat_item (T_PIPE | T_CONCAT) expr_concat_item ((T_PIPE | T_CONCAT) expr_concat_item)*
+ ;
+
+expr_concat_item :
+ T_OPEN_P expr T_CLOSE_P
+ | expr_case
+ | expr_agg_window_func
+ | expr_spec_func
+ | expr_func
+ | expr_atom
+ ;
+
+expr_case : // CASE expression
+ expr_case_simple
+ | expr_case_searched
+ ;
+
+expr_case_simple :
+ T_CASE expr (T_WHEN expr T_THEN expr)+ (T_ELSE expr)? T_END
+ ;
+
+expr_case_searched :
+ T_CASE (T_WHEN bool_expr T_THEN expr)+ (T_ELSE expr)? T_END
+ ;
+
+expr_cursor_attribute :
+ ident '%' (T_ISOPEN | T_FOUND | T_NOTFOUND)
+ ;
+
+expr_agg_window_func :
+ T_AVG T_OPEN_P expr_func_all_distinct? expr T_CLOSE_P expr_func_over_clause?
+ | T_COUNT T_OPEN_P ((expr_func_all_distinct? expr) | '*') T_CLOSE_P expr_func_over_clause?
+ | T_COUNT_BIG T_OPEN_P ((expr_func_all_distinct? expr) | '*') T_CLOSE_P expr_func_over_clause?
+ | T_CUME_DIST T_OPEN_P T_CLOSE_P expr_func_over_clause
+ | T_DENSE_RANK T_OPEN_P T_CLOSE_P expr_func_over_clause
+ | T_FIRST_VALUE T_OPEN_P expr T_CLOSE_P expr_func_over_clause
+ | T_LAG T_OPEN_P expr (T_COMMA expr (T_COMMA expr)?)? T_CLOSE_P expr_func_over_clause
+ | T_LAST_VALUE T_OPEN_P expr T_CLOSE_P expr_func_over_clause
+ | T_LEAD T_OPEN_P expr (T_COMMA expr (T_COMMA expr)?)? T_CLOSE_P expr_func_over_clause
+ | T_MAX T_OPEN_P expr_func_all_distinct? expr T_CLOSE_P expr_func_over_clause?
+ | T_MIN T_OPEN_P expr_func_all_distinct? expr T_CLOSE_P expr_func_over_clause?
+ | T_RANK T_OPEN_P T_CLOSE_P expr_func_over_clause
+ | T_ROW_NUMBER T_OPEN_P T_CLOSE_P expr_func_over_clause
+ | T_STDEV T_OPEN_P expr_func_all_distinct? expr T_CLOSE_P expr_func_over_clause?
+ | T_SUM T_OPEN_P expr_func_all_distinct? expr T_CLOSE_P expr_func_over_clause?
+ | T_VAR T_OPEN_P expr_func_all_distinct? expr T_CLOSE_P expr_func_over_clause?
+ | T_VARIANCE T_OPEN_P expr_func_all_distinct? expr T_CLOSE_P expr_func_over_clause?
+ ;
+
+expr_func_all_distinct :
+ T_ALL
+ | T_DISTINCT
+ ;
+
+expr_func_over_clause :
+ T_OVER T_OPEN_P expr_func_partition_by_clause? order_by_clause? T_CLOSE_P
+ ;
+
+expr_func_partition_by_clause :
+ T_PARTITION T_BY expr (T_COMMA expr)*
+ ;
+
+expr_spec_func :
+ T_ACTIVITY_COUNT
+ | T_CAST T_OPEN_P expr T_AS dtype dtype_len? T_CLOSE_P
+ | T_COUNT T_OPEN_P (expr | '*') T_CLOSE_P
+ | T_CURRENT_DATE | T_CURRENT T_DATE
+ | (T_CURRENT_TIMESTAMP | T_CURRENT T_TIMESTAMP) (T_OPEN_P expr T_CLOSE_P)?
+ | T_CURRENT_USER | T_CURRENT T_USER
+ | T_MAX_PART_STRING T_OPEN_P expr (T_COMMA expr (T_COMMA expr T_EQUAL expr)*)? T_CLOSE_P
+ | T_MIN_PART_STRING T_OPEN_P expr (T_COMMA expr (T_COMMA expr T_EQUAL expr)*)? T_CLOSE_P
+ | T_MAX_PART_INT T_OPEN_P expr (T_COMMA expr (T_COMMA expr T_EQUAL expr)*)? T_CLOSE_P
+ | T_MIN_PART_INT T_OPEN_P expr (T_COMMA expr (T_COMMA expr T_EQUAL expr)*)? T_CLOSE_P
+ | T_MAX_PART_DATE T_OPEN_P expr (T_COMMA expr (T_COMMA expr T_EQUAL expr)*)? T_CLOSE_P
+ | T_MIN_PART_DATE T_OPEN_P expr (T_COMMA expr (T_COMMA expr T_EQUAL expr)*)? T_CLOSE_P
+ | T_PART_COUNT T_OPEN_P expr (T_COMMA expr T_EQUAL expr)* T_CLOSE_P
+ | T_PART_LOC T_OPEN_P expr (T_COMMA expr T_EQUAL expr)+ (T_COMMA expr)? T_CLOSE_P
+ | T_TRIM T_OPEN_P expr T_CLOSE_P
+ | T_SUBSTRING T_OPEN_P expr T_FROM expr (T_FOR expr)? T_CLOSE_P
+ | T_SYSDATE
+ | T_USER
+ ;
+
+expr_func :
+ ident T_OPEN_P expr_func_params? T_CLOSE_P
+ ;
+
+expr_func_params :
+ func_param (T_COMMA func_param)*
+ ;
+
+func_param :
+ {!this._input.LT(1).getText().equalsIgnoreCase("INTO")}? (ident T_EQUAL T_GREATER?)? expr
+ ;
+
+expr_select :
+ select_stmt
+ | expr
+ ;
+
+expr_file :
+ file_name
+ | expr
+ ;
+
+hive :
+ T_HIVE hive_item*
+ ;
+
+hive_item :
+ T_SUB ident expr
+ | T_SUB ident L_ID T_EQUAL expr
+ | T_SUB ident
+ ;
+
+host :
+ '!' host_cmd ';' // OS command
+ | host_stmt
+ ;
+
+host_cmd :
+ .*?
+ ;
+
+host_stmt :
+ T_HOST expr
+ ;
+
+file_name :
+ L_FILE | ('/' | '.' '/')? ident ('/' ident)*
+ ;
+
+date_literal : // DATE 'YYYY-MM-DD' literal
+ T_DATE string
+ ;
+
+timestamp_literal : // TIMESTAMP 'YYYY-MM-DD HH:MI:SS.FFF' literal
+ T_TIMESTAMP string
+ ;
+
+ident :
+ '-'? (L_ID | non_reserved_words) ('.' (L_ID | non_reserved_words))*
+ ;
+
+string : // String literal (single or double quoted)
+ L_S_STRING # single_quotedString
+ | L_D_STRING # double_quotedString
+ ;
+
+int_number : // Integer (positive or negative)
+ ('-' | '+')? L_INT
+ ;
+
+dec_number : // Decimal number (positive or negative)
+ ('-' | '+')? L_DEC
+ ;
+
+bool_literal : // Boolean literal
+ T_TRUE
+ | T_FALSE
+ ;
+
+null_const : // NULL constant
+ T_NULL
+ ;
+
+non_reserved_words : // Tokens that are not reserved words and can be used as identifiers
+ T_ACTION
+ | T_ACTIVITY_COUNT
+ | T_ADD2
+ | T_ALL
+ | T_ALLOCATE
+ | T_ALTER
+ | T_AND
+ | T_ANSI_NULLS
+ | T_ANSI_PADDING
+ | T_AS
+ | T_ASC
+ | T_ASSOCIATE
+ | T_AT
+ | T_AUTO_INCREMENT
+ | T_AVG
+ | T_BATCHSIZE
+ | T_BEGIN
+ | T_BETWEEN
+ | T_BIGINT
+ | T_BINARY_DOUBLE
+ | T_BINARY_FLOAT
+ | T_BIT
+ | T_BODY
+ | T_BREAK
+ | T_BY
+ | T_BYTE
+ | T_CALL
+ | T_CALLER
+ | T_CASCADE
+ | T_CASE
+ | T_CASESPECIFIC
+ | T_CAST
+ | T_CHAR
+ | T_CHARACTER
+ | T_CHARSET
+ | T_CLIENT
+ | T_CLOSE
+ | T_CLUSTERED
+ | T_CMP
+ | T_COLLECT
+ | T_COLLECTION
+ | T_COLUMN
+ | T_COMMENT
+ | T_COMPRESS
+ | T_CONSTANT
+ | T_COPY
+ | T_COMMIT
+ | T_CONCAT
+ | T_CONDITION
+ | T_CONSTRAINT
+ | T_CONTINUE
+ | T_COUNT
+ | T_COUNT_BIG
+ | T_CREATE
+ | T_CREATION
+ | T_CREATOR
+ | T_CS
+ | T_CUME_DIST
+ | T_CURRENT
+ | T_CURRENT_DATE
+ | T_CURRENT_SCHEMA
+ | T_CURRENT_TIMESTAMP
+ | T_CURRENT_USER
+ | T_CURSOR
+ | T_DATA
+ | T_DATABASE
+ | T_DATE
+ | T_DATETIME
+ | T_DAY
+ | T_DAYS
+ | T_DEC
+ | T_DECIMAL
+ | T_DECLARE
+ | T_DEFAULT
+ | T_DEFERRED
+ | T_DEFINED
+ | T_DEFINER
+ | T_DEFINITION
+ | T_DELETE
+ | T_DELIMITED
+ | T_DELIMITER
+ | T_DENSE_RANK
+ | T_DESC
+ | T_DESCRIBE
+ | T_DIAGNOSTICS
+ | T_DIR
+ | T_DIRECTORY
+ | T_DISTINCT
+ | T_DISTRIBUTE
+ | T_DO
+ | T_DOUBLE
+ | T_DROP
+ | T_DYNAMIC
+ // T_ELSE reserved word
+ // T_ELSEIF reserved word
+ // T_ELSIF reserved word
+ // T_END reserved word
+ | T_ENABLE
+ | T_ENGINE
+ | T_ESCAPED
+ | T_EXCEPT
+ | T_EXEC
+ | T_EXECUTE
+ | T_EXCEPTION
+ | T_EXCLUSIVE
+ | T_EXISTS
+ | T_EXIT
+ | T_FALLBACK
+ | T_FALSE
+ | T_FETCH
+ | T_FIELDS
+ | T_FILE
+ | T_FILES
+ | T_FIRST_VALUE
+ | T_FLOAT
+ | T_FOR
+ | T_FOREIGN
+ | T_FORMAT
+ | T_FOUND
+ | T_FROM
+ | T_FULL
+ | T_FUNCTION
+ | T_GET
+ | T_GLOBAL
+ | T_GO
+ | T_GRANT
+ | T_GROUP
+ | T_HANDLER
+ | T_HASH
+ | T_HAVING
+ | T_HDFS
+ | T_HIVE
+ | T_HOST
+ | T_IDENTITY
+ | T_IF
+ | T_IGNORE
+ | T_IMMEDIATE
+ | T_IN
+ | T_INCLUDE
+ | T_INDEX
+ | T_INITRANS
+ | T_INNER
+ | T_INOUT
+ | T_INSERT
+ | T_INT
+ | T_INT2
+ | T_INT4
+ | T_INT8
+ | T_INTEGER
+ | T_INTERSECT
+ | T_INTERVAL
+ | T_INTO
+ | T_INVOKER
+ | T_ITEMS
+ | T_IS
+ | T_ISOPEN
+ | T_JOIN
+ | T_KEEP
+ | T_KEY
+ | T_KEYS
+ | T_LAG
+ | T_LANGUAGE
+ | T_LAST_VALUE
+ | T_LEAD
+ | T_LEAVE
+ | T_LEFT
+ | T_LIKE
+ | T_LIMIT
+ | T_LINES
+ | T_LOCAL
+ | T_LOCATION
+ | T_LOCATOR
+ | T_LOCATORS
+ | T_LOCKS
+ | T_LOG
+ | T_LOGGED
+ | T_LOGGING
+ | T_LOOP
+ | T_MAP
+ | T_MATCHED
+ | T_MAX
+ | T_MAXTRANS
+ | T_MERGE
+ | T_MESSAGE_TEXT
+ | T_MICROSECOND
+ | T_MICROSECONDS
+ | T_MIN
+ | T_MULTISET
+ | T_NCHAR
+ | T_NEW
+ | T_NVARCHAR
+ | T_NO
+ | T_NOCOMPRESS
+ | T_NOCOUNT
+ | T_NOLOGGING
+ | T_NONE
+ | T_NOT
+ | T_NOTFOUND
+ // T_NULL reserved word
+ | T_NUMERIC
+ | T_NUMBER
+ | T_OBJECT
+ | T_OFF
+ | T_ON
+ | T_ONLY
+ | T_OPEN
+ | T_OR
+ | T_ORDER
+ | T_OUT
+ | T_OUTER
+ | T_OVER
+ | T_OVERWRITE
+ | T_OWNER
+ | T_PACKAGE
+ | T_PART_COUNT
+ | T_PART_LOC
+ | T_PARTITION
+ | T_PCTFREE
+ | T_PCTUSED
+ | T_PRECISION
+ | T_PRESERVE
+ | T_PRIMARY
+ | T_PRINT
+ | T_PROC
+ | T_PROCEDURE
+ | T_PWD
+ | T_QUALIFY
+ | T_QUERY_BAND
+ | T_QUIT
+ | T_QUOTED_IDENTIFIER
+ | T_RAISE
+ | T_RANK
+ | T_REAL
+ | T_REFERENCES
+ | T_REGEXP
+ | T_RR
+ | T_REPLACE
+ | T_RESIGNAL
+ | T_RESTRICT
+ | T_RESULT
+ | T_RESULT_SET_LOCATOR
+ | T_RETURN
+ | T_RETURNS
+ | T_REVERSE
+ | T_RIGHT
+ | T_RLIKE
+ | T_RS
+ | T_ROLE
+ | T_ROLLBACK
+ | T_ROW
+ | T_ROWS
+ | T_ROW_COUNT
+ | T_ROW_NUMBER
+ | T_SCHEMA
+ | T_SECOND
+ | T_SECONDS
+ | T_SECURITY
+ | T_SEGMENT
+ | T_SEL
+ | T_SELECT
+ | T_SESSION
+ | T_SESSIONS
+ | T_SET
+ | T_SETS
+ | T_SHARE
+ | T_SIGNAL
+ | T_SIMPLE_DOUBLE
+ | T_SIMPLE_FLOAT
+ | T_SMALLDATETIME
+ | T_SMALLINT
+ | T_SQL
+ | T_SQLEXCEPTION
+ | T_SQLINSERT
+ | T_SQLSTATE
+ | T_SQLWARNING
+ | T_STATS
+ | T_STATISTICS
+ | T_STEP
+ | T_STDEV
+ | T_STORAGE
+ | T_STORED
+ | T_STRING
+ | T_SUBDIR
+ | T_SUBSTRING
+ | T_SUM
+ | T_SUMMARY
+ | T_SYSDATE
+ | T_SYS_REFCURSOR
+ | T_TABLE
+ | T_TABLESPACE
+ | T_TEMPORARY
+ | T_TERMINATED
+ | T_TEXTIMAGE_ON
+ | T_THEN
+ | T_TIMESTAMP
+ | T_TITLE
+ | T_TO
+ | T_TOP
+ | T_TRANSACTION
+ | T_TRIM
+ | T_TRUE
+ | T_TRUNCATE
+ // T_UNION reserved word
+ | T_UNIQUE
+ | T_UPDATE
+ | T_UR
+ | T_USE
+ | T_USER
+ | T_USING
+ | T_VALUE
+ | T_VALUES
+ | T_VAR
+ | T_VARCHAR
+ | T_VARCHAR2
+ | T_VARYING
+ | T_VARIANCE
+ | T_VOLATILE
+ // T_WHEN reserved word
+ // T_WHERE reserved word
+ | T_WHILE
+ | T_WITH
+ | T_WITHOUT
+ | T_WORK
+ | T_XACT_ABORT
+ | T_XML
+ | T_YES
+ ;
diff --git a/src/grammar/hive/HiveSqlLexer.g4 b/src/grammar/hive/HiveSqlLexer.g4
new file mode 100644
index 0000000..d322ba1
--- /dev/null
+++ b/src/grammar/hive/HiveSqlLexer.g4
@@ -0,0 +1,435 @@
+lexer grammar HiveSqlLexer;
+
+// Lexer rules
+T_ACTION : A C T I O N ;
+T_ADD2 : A D D ;
+T_ALL : A L L ;
+T_ALLOCATE : A L L O C A T E ;
+T_ALTER : A L T E R ;
+T_AND : A N D ;
+T_ANSI_NULLS : A N S I '_' N U L L S ;
+T_ANSI_PADDING : A N S I '_' P A D D I N G ;
+T_AS : A S ;
+T_ASC : A S C ;
+T_ASSOCIATE : A S S O C I A T E ;
+T_AT : A T ;
+T_AUTO_INCREMENT : A U T O '_' I N C R E M E N T ;
+T_AVG : A V G ;
+T_BATCHSIZE : B A T C H S I Z E ;
+T_BEGIN : B E G I N ;
+T_BETWEEN : B E T W E E N ;
+T_BIGINT : B I G I N T ;
+T_BINARY_DOUBLE : B I N A R Y '_' D O U B L E ;
+T_BINARY_FLOAT : B I N A R Y '_' F L O A T ;
+T_BINARY_INTEGER : B I N A R Y '_' I N T E G E R ;
+T_BIT : B I T ;
+T_BODY : B O D Y ;
+T_BREAK : B R E A K ;
+T_BY : B Y ;
+T_BYTE : B Y T E ;
+T_CALL : C A L L ;
+T_CALLER : C A L L E R ;
+T_CASCADE : C A S C A D E ;
+T_CASE : C A S E ;
+T_CASESPECIFIC : C A S E S P E C I F I C ;
+T_CAST : C A S T ;
+T_CHAR : C H A R ;
+T_CHARACTER : C H A R A C T E R ;
+T_CHARSET : C H A R S E T ;
+T_CLIENT : C L I E N T ;
+T_CLOSE : C L O S E ;
+T_CLUSTERED : C L U S T E R E D;
+T_CMP : C M P ;
+T_COLLECT : C O L L E C T ;
+T_COLLECTION : C O L L E C T I O N ;
+T_COLUMN : C O L U M N ;
+T_COMMENT : C O M M E N T;
+T_CONSTANT : C O N S T A N T ;
+T_COMMIT : C O M M I T ;
+T_COMPRESS : C O M P R E S S ;
+T_CONCAT : C O N C A T;
+T_CONDITION : C O N D I T I O N ;
+T_CONSTRAINT : C O N S T R A I N T ;
+T_CONTINUE : C O N T I N U E ;
+T_COPY : C O P Y ;
+T_COUNT : C O U N T ;
+T_COUNT_BIG : C O U N T '_' B I G;
+T_CREATE : C R E A T E ;
+T_CREATION : C R E A T I O N ;
+T_CREATOR : C R E A T O R ;
+T_CS : C S;
+T_CURRENT : C U R R E N T ;
+T_CURRENT_SCHEMA : C U R R E N T '_' S C H E M A ;
+T_CURSOR : C U R S O R ;
+T_DATABASE : D A T A B A S E ;
+T_DATA : D A T A ;
+T_DATE : D A T E ;
+T_DATETIME : D A T E T I M E ;
+T_DAY : D A Y ;
+T_DAYS : D A Y S ;
+T_DEC : D E C ;
+T_DECIMAL : D E C I M A L ;
+T_DECLARE : D E C L A R E ;
+T_DEFAULT : D E F A U L T ;
+T_DEFERRED : D E F E R R E D ;
+T_DEFINED : D E F I N E D ;
+T_DEFINER : D E F I N E R ;
+T_DEFINITION : D E F I N I T I O N ;
+T_DELETE : D E L E T E ;
+T_DELIMITED : D E L I M I T E D ;
+T_DELIMITER : D E L I M I T E R ;
+T_DESC : D E S C ;
+T_DESCRIBE : D E S C R I B E ;
+T_DIAGNOSTICS : D I A G N O S T I C S ;
+T_DIR : D I R ;
+T_DIRECTORY : D I R E C T O R Y ;
+T_DISTINCT : D I S T I N C T ;
+T_DISTRIBUTE : D I S T R I B U T E ;
+T_DO : D O ;
+T_DOUBLE : D O U B L E ;
+T_DROP : D R O P ;
+T_DYNAMIC : D Y N A M I C ;
+T_ELSE : E L S E ;
+T_ELSEIF : E L S E I F ;
+T_ELSIF : E L S I F ;
+T_ENABLE : E N A B L E ;
+T_END : E N D ;
+T_ENGINE : E N G I N E ;
+T_ESCAPED : E S C A P E D ;
+T_EXCEPT : E X C E P T ;
+T_EXEC : E X E C ;
+T_EXECUTE : E X E C U T E ;
+T_EXCEPTION : E X C E P T I O N ;
+T_EXCLUSIVE : E X C L U S I V E ;
+T_EXISTS : E X I S T S ;
+T_EXIT : E X I T ;
+T_FALLBACK : F A L L B A C K ;
+T_FALSE : F A L S E ;
+T_FETCH : F E T C H ;
+T_FIELDS : F I E L D S ;
+T_FILE : F I L E ;
+T_FILES : F I L E S ;
+T_FLOAT : F L O A T ;
+T_FOR : F O R ;
+T_FOREIGN : F O R E I G N ;
+T_FORMAT : F O R M A T ;
+T_FOUND : F O U N D ;
+T_FROM : F R O M ;
+T_FULL : F U L L ;
+T_FUNCTION : F U N C T I O N ;
+T_GET : G E T ;
+T_GLOBAL : G L O B A L ;
+T_GO : G O ;
+T_GRANT : G R A N T ;
+T_GROUP : G R O U P ;
+T_HANDLER : H A N D L E R ;
+T_HASH : H A S H ;
+T_HAVING : H A V I N G ;
+T_HDFS : H D F S ;
+T_HIVE : H I V E ;
+T_HOST : H O S T ;
+T_IDENTITY : I D E N T I T Y ;
+T_IF : I F ;
+T_IGNORE : I G N O R E ;
+T_IMMEDIATE : I M M E D I A T E ;
+T_IN : I N ;
+T_INCLUDE : I N C L U D E ;
+T_INDEX : I N D E X ;
+T_INITRANS : I N I T R A N S ;
+T_INNER : I N N E R ;
+T_INOUT : I N O U T;
+T_INSERT : I N S E R T ;
+T_INT : I N T ;
+T_INT2 : I N T '2';
+T_INT4 : I N T '4';
+T_INT8 : I N T '8';
+T_INTEGER : I N T E G E R ;
+T_INTERSECT : I N T E R S E C T ;
+T_INTERVAL : I N T E R V A L ;
+T_INTO : I N T O ;
+T_INVOKER : I N V O K E R ;
+T_IS : I S ;
+T_ISOPEN : I S O P E N ;
+T_ITEMS : I T E M S ;
+T_JOIN : J O I N ;
+T_KEEP : K E E P;
+T_KEY : K E Y ;
+T_KEYS : K E Y S ;
+T_LANGUAGE : L A N G U A G E ;
+T_LEAVE : L E A V E ;
+T_LEFT : L E F T ;
+T_LIKE : L I K E ;
+T_LIMIT : L I M I T ;
+T_LINES : L I N E S ;
+T_LOCAL : L O C A L ;
+T_LOCATION : L O C A T I O N ;
+T_LOCATOR : L O C A T O R ;
+T_LOCATORS : L O C A T O R S ;
+T_LOCKS : L O C K S ;
+T_LOG : L O G ;
+T_LOGGED : L O G G E D ;
+T_LOGGING : L O G G I N G ;
+T_LOOP : L O O P ;
+T_MAP : M A P ;
+T_MATCHED : M A T C H E D ;
+T_MAX : M A X ;
+T_MAXTRANS : M A X T R A N S ;
+T_MERGE : M E R G E ;
+T_MESSAGE_TEXT : M E S S A G E '_' T E X T ;
+T_MICROSECOND : M I C R O S E C O N D ;
+T_MICROSECONDS : M I C R O S E C O N D S;
+T_MIN : M I N ;
+T_MULTISET : M U L T I S E T ;
+T_NCHAR : N C H A R ;
+T_NEW : N E W ;
+T_NVARCHAR : N V A R C H A R ;
+T_NO : N O ;
+T_NOCOUNT : N O C O U N T ;
+T_NOCOMPRESS : N O C O M P R E S S ;
+T_NOLOGGING : N O L O G G I N G ;
+T_NONE : N O N E ;
+T_NOT : N O T ;
+T_NOTFOUND : N O T F O U N D ;
+T_NULL : N U L L ;
+T_NUMERIC : N U M E R I C ;
+T_NUMBER : N U M B E R ;
+T_OBJECT : O B J E C T ;
+T_OFF : O F F ;
+T_ON : O N ;
+T_ONLY : O N L Y ;
+T_OPEN : O P E N ;
+T_OR : O R ;
+T_ORDER : O R D E R;
+T_OUT : O U T ;
+T_OUTER : O U T E R ;
+T_OVER : O V E R ;
+T_OVERWRITE : O V E R W R I T E ;
+T_OWNER : O W N E R ;
+T_PACKAGE : P A C K A G E ;
+T_PARTITION : P A R T I T I O N ;
+T_PCTFREE : P C T F R E E ;
+T_PCTUSED : P C T U S E D ;
+T_PLS_INTEGER : P L S '_' I N T E G E R ;
+T_PRECISION : P R E C I S I O N ;
+T_PRESERVE : P R E S E R V E ;
+T_PRIMARY : P R I M A R Y ;
+T_PRINT : P R I N T ;
+T_PROC : P R O C ;
+T_PROCEDURE : P R O C E D U R E ;
+T_QUALIFY : Q U A L I F Y ;
+T_QUERY_BAND : Q U E R Y '_' B A N D ;
+T_QUIT : Q U I T ;
+T_QUOTED_IDENTIFIER : Q U O T E D '_' I D E N T I F I E R ;
+T_RAISE : R A I S E ;
+T_REAL : R E A L ;
+T_REFERENCES : R E F E R E N C E S ;
+T_REGEXP : R E G E X P ;
+T_REPLACE : R E P L A C E ;
+T_RESIGNAL : R E S I G N A L ;
+T_RESTRICT : R E S T R I C T ;
+T_RESULT : R E S U L T ;
+T_RESULT_SET_LOCATOR : R E S U L T '_' S E T '_' L O C A T O R ;
+T_RETURN : R E T U R N ;
+T_RETURNS : R E T U R N S ;
+T_REVERSE : R E V E R S E ;
+T_RIGHT : R I G H T ;
+T_RLIKE : R L I K E ;
+T_ROLE : R O L E ;
+T_ROLLBACK : R O L L B A C K ;
+T_ROW : R O W ;
+T_ROWS : R O W S ;
+T_ROWTYPE : R O W T Y P E ;
+T_ROW_COUNT : R O W '_' C O U N T ;
+T_RR : R R;
+T_RS : R S ;
+T_PWD : P W D ;
+T_TRIM : T R I M ;
+T_SCHEMA : S C H E M A ;
+T_SECOND : S E C O N D ;
+T_SECONDS : S E C O N D S;
+T_SECURITY : S E C U R I T Y ;
+T_SEGMENT : S E G M E N T ;
+T_SEL : S E L ;
+T_SELECT : S E L E C T ;
+T_SET : S E T ;
+T_SESSION : S E S S I O N ;
+T_SESSIONS : S E S S I O N S ;
+T_SETS : S E T S;
+T_SHARE : S H A R E ;
+T_SIGNAL : S I G N A L ;
+T_SIMPLE_DOUBLE : S I M P L E '_' D O U B L E ;
+T_SIMPLE_FLOAT : S I M P L E '_' F L O A T ;
+T_SIMPLE_INTEGER : S I M P L E '_' I N T E G E R ;
+T_SMALLDATETIME : S M A L L D A T E T I M E ;
+T_SMALLINT : S M A L L I N T ;
+T_SQL : S Q L ;
+T_SQLEXCEPTION : S Q L E X C E P T I O N ;
+T_SQLINSERT : S Q L I N S E R T ;
+T_SQLSTATE : S Q L S T A T E ;
+T_SQLWARNING : S Q L W A R N I N G ;
+T_STATS : S T A T S ;
+T_STATISTICS : S T A T I S T I C S ;
+T_STEP : S T E P ;
+T_STORAGE : S T O R A G E ;
+T_STORED : S T O R E D ;
+T_STRING : S T R I N G ;
+T_SUBDIR : S U B D I R ;
+T_SUBSTRING : S U B S T R I N G ;
+T_SUM : S U M ;
+T_SUMMARY : S U M M A R Y ;
+T_SYS_REFCURSOR : S Y S '_' R E F C U R S O R ;
+T_TABLE : T A B L E ;
+T_TABLESPACE : T A B L E S P A C E ;
+T_TEMPORARY : T E M P O R A R Y ;
+T_TERMINATED : T E R M I N A T E D ;
+T_TEXTIMAGE_ON : T E X T I M A G E '_' O N ;
+T_THEN : T H E N ;
+T_TIMESTAMP : T I M E S T A M P ;
+T_TINYINT : T I N Y I N T ;
+T_TITLE : T I T L E ;
+T_TO : T O ;
+T_TOP : T O P ;
+T_TRANSACTION : T R A N S A C T I O N ;
+T_TRUE : T R U E ;
+T_TRUNCATE : T R U N C A T E;
+T_TYPE : T Y P E ;
+T_UNION : U N I O N ;
+T_UNIQUE : U N I Q U E ;
+T_UPDATE : U P D A T E ;
+T_UR : U R ;
+T_USE : U S E ;
+T_USING : U S I N G ;
+T_VALUE : V A L U E ;
+T_VALUES : V A L U E S ;
+T_VAR : V A R ;
+T_VARCHAR : V A R C H A R ;
+T_VARCHAR2 : V A R C H A R '2' ;
+T_VARYING : V A R Y I N G ;
+T_VOLATILE : V O L A T I L E ;
+T_WHEN : W H E N ;
+T_WHERE : W H E R E ;
+T_WHILE : W H I L E ;
+T_WITH : W I T H ;
+T_WITHOUT : W I T H O U T ;
+T_WORK : W O R K ;
+T_XACT_ABORT : X A C T '_' A B O R T ;
+T_XML : X M L ;
+T_YES : Y E S ;
+
+// Functions with specific syntax
+T_ACTIVITY_COUNT : A C T I V I T Y '_' C O U N T ;
+T_CUME_DIST : C U M E '_' D I S T ;
+T_CURRENT_DATE : C U R R E N T '_' D A T E ;
+T_CURRENT_TIMESTAMP : C U R R E N T '_' T I M E S T A M P ;
+T_CURRENT_USER : C U R R E N T '_' U S E R ;
+T_DENSE_RANK : D E N S E '_' R A N K ;
+T_FIRST_VALUE : F I R S T '_' V A L U E;
+T_LAG : L A G ;
+T_LAST_VALUE : L A S T '_' V A L U E;
+T_LEAD : L E A D ;
+T_MAX_PART_STRING : M A X '_' P A R T '_' S T R I N G ;
+T_MIN_PART_STRING : M I N '_' P A R T '_' S T R I N G ;
+T_MAX_PART_INT : M A X '_' P A R T '_' I N T ;
+T_MIN_PART_INT : M I N '_' P A R T '_' I N T ;
+T_MAX_PART_DATE : M A X '_' P A R T '_' D A T E ;
+T_MIN_PART_DATE : M I N '_' P A R T '_' D A T E ;
+T_PART_COUNT : P A R T '_' C O U N T ;
+T_PART_LOC : P A R T '_' L O C ;
+T_RANK : R A N K ;
+T_ROW_NUMBER : R O W '_' N U M B E R;
+T_STDEV : S T D E V ;
+T_SYSDATE : S Y S D A T E ;
+T_VARIANCE : V A R I A N C E ;
+T_USER : U S E R;
+
+T_ADD : '+' ;
+T_COLON : ':' ;
+T_COMMA : ',' ;
+T_PIPE : '||' ;
+T_DIV : '/' ;
+T_DOT2 : '..' ;
+T_EQUAL : '=' ;
+T_EQUAL2 : '==' ;
+T_NOTEQUAL : '<>' ;
+T_NOTEQUAL2 : '!=' ;
+T_GREATER : '>' ;
+T_GREATEREQUAL : '>=' ;
+T_LESS : '<' ;
+T_LESSEQUAL : '<=' ;
+T_MUL : '*' ;
+T_OPEN_B : '{' ;
+T_OPEN_P : '(' ;
+T_OPEN_SB : '[' ;
+T_CLOSE_B : '}' ;
+T_CLOSE_P : ')' ;
+T_CLOSE_SB : ']' ;
+T_SEMICOLON : ';' ;
+T_SUB : '-' ;
+
+L_ID : L_ID_PART // Identifier
+ ;
+L_S_STRING : '\'' (('\'' '\'') | ('\\' '\'') | ~('\''))* '\'' // Single quoted string literal
+ ;
+L_D_STRING : '"' (L_STR_ESC_D | .)*? '"' // Double quoted string literal
+ ;
+L_INT : L_DIGIT+ ; // Integer
+L_DEC : L_DIGIT+ '.' ~'.' L_DIGIT* // Decimal number
+ | '.' L_DIGIT+
+ ;
+L_WS : L_BLANK+ -> skip ; // Whitespace
+L_M_COMMENT : '/*' .*? '*/' -> channel(HIDDEN) ; // Multiline comment
+L_S_COMMENT : ('--' | '//') .*? '\r'? '\n' -> channel(HIDDEN) ; // Single line comment
+
+L_FILE : ([a-zA-Z] ':' '\\'?)? L_ID ('\\' L_ID)* // File path (a/b/c Linux path causes conflicts with division operator and handled at parser level)
+ ;
+
+L_LABEL : ([a-zA-Z] | L_DIGIT | '_')* ':'
+ ;
+
+fragment
+L_ID_PART :
+ [a-zA-Z] ([a-zA-Z] | L_DIGIT | '_')* // Identifier part
+ | '$' '{' .*? '}'
+ | ('_' | '@' | ':' | '#' | '$') ([a-zA-Z] | L_DIGIT | '_' | '@' | ':' | '#' | '$')+ // (at least one char must follow special char)
+ | '"' .*? '"' // Quoted identifiers
+ | '[' .*? ']'
+ | '`' .*? '`'
+ ;
+fragment
+L_STR_ESC_D : // Double quoted string escape sequence
+ '""' | '\\"'
+ ;
+fragment
+L_DIGIT : [0-9] // Digit
+ ;
+fragment
+L_BLANK : (' ' | '\t' | '\r' | '\n')
+ ;
+
+// Support case-insensitive keywords and allowing case-sensitive identifiers
+fragment A : ('a'|'A') ;
+fragment B : ('b'|'B') ;
+fragment C : ('c'|'C') ;
+fragment D : ('d'|'D') ;
+fragment E : ('e'|'E') ;
+fragment F : ('f'|'F') ;
+fragment G : ('g'|'G') ;
+fragment H : ('h'|'H') ;
+fragment I : ('i'|'I') ;
+fragment J : ('j'|'J') ;
+fragment K : ('k'|'K') ;
+fragment L : ('l'|'L') ;
+fragment M : ('m'|'M') ;
+fragment N : ('n'|'N') ;
+fragment O : ('o'|'O') ;
+fragment P : ('p'|'P') ;
+fragment Q : ('q'|'Q') ;
+fragment R : ('r'|'R') ;
+fragment S : ('s'|'S') ;
+fragment T : ('t'|'T') ;
+fragment U : ('u'|'U') ;
+fragment V : ('v'|'V') ;
+fragment W : ('w'|'W') ;
+fragment X : ('x'|'X') ;
+fragment Y : ('y'|'Y') ;
+fragment Z : ('z'|'Z') ;
\ No newline at end of file
diff --git a/src/grammar/plsql/PlSqlLexer.g4 b/src/grammar/plsql/PlSqlLexer.g4
new file mode 100644
index 0000000..4d868ce
--- /dev/null
+++ b/src/grammar/plsql/PlSqlLexer.g4
@@ -0,0 +1,2369 @@
+/**
+ * Oracle(c) PL/SQL 11g Parser
+ *
+ * Copyright (c) 2009-2011 Alexandre Porcelli
+ * Copyright (c) 2015-2019 Ivan Kochurkin (KvanTTT, kvanttt@gmail.com, Positive Technologies).
+ * Copyright (c) 2017 Mark Adams
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+lexer grammar PlSqlLexer;
+
+options {
+ superClass=PlSqlBaseLexer;
+}
+
+@lexer::postinclude {
+#include
+}
+
+ABORT: 'ABORT';
+ABS: 'ABS';
+ACCESS: 'ACCESS';
+ACCESSED: 'ACCESSED';
+ACCOUNT: 'ACCOUNT';
+ACL: 'ACL';
+ACOS: 'ACOS';
+ACTION: 'ACTION';
+ACTIONS: 'ACTIONS';
+ACTIVATE: 'ACTIVATE';
+ACTIVE: 'ACTIVE';
+ACTIVE_COMPONENT: 'ACTIVE_COMPONENT';
+ACTIVE_DATA: 'ACTIVE_DATA';
+ACTIVE_FUNCTION: 'ACTIVE_FUNCTION';
+ACTIVE_TAG: 'ACTIVE_TAG';
+ACTIVITY: 'ACTIVITY';
+ADAPTIVE_PLAN: 'ADAPTIVE_PLAN';
+ADD: 'ADD';
+ADD_COLUMN: 'ADD_COLUMN';
+ADD_GROUP: 'ADD_GROUP';
+ADD_MONTHS: 'ADD_MONTHS';
+ADJ_DATE: 'ADJ_DATE';
+ADMIN: 'ADMIN';
+ADMINISTER: 'ADMINISTER';
+ADMINISTRATOR: 'ADMINISTRATOR';
+ADVANCED: 'ADVANCED';
+ADVISE: 'ADVISE';
+ADVISOR: 'ADVISOR';
+AFD_DISKSTRING: 'AFD_DISKSTRING';
+AFTER: 'AFTER';
+AGENT: 'AGENT';
+AGGREGATE: 'AGGREGATE';
+A_LETTER: 'A';
+ALIAS: 'ALIAS';
+ALL: 'ALL';
+ALLOCATE: 'ALLOCATE';
+ALLOW: 'ALLOW';
+ALL_ROWS: 'ALL_ROWS';
+ALTER: 'ALTER';
+ALWAYS: 'ALWAYS';
+ANALYZE: 'ANALYZE';
+ANCILLARY: 'ANCILLARY';
+AND: 'AND';
+AND_EQUAL: 'AND_EQUAL';
+ANOMALY: 'ANOMALY';
+ANSI_REARCH: 'ANSI_REARCH';
+ANTIJOIN: 'ANTIJOIN';
+ANY: 'ANY';
+ANYSCHEMA: 'ANYSCHEMA';
+APPEND: 'APPEND';
+APPENDCHILDXML: 'APPENDCHILDXML';
+APPEND_VALUES: 'APPEND_VALUES';
+APPLICATION: 'APPLICATION';
+APPLY: 'APPLY';
+APPROX_COUNT_DISTINCT: 'APPROX_COUNT_DISTINCT';
+ARCHIVAL: 'ARCHIVAL';
+ARCHIVE: 'ARCHIVE';
+ARCHIVED: 'ARCHIVED';
+ARCHIVELOG: 'ARCHIVELOG';
+ARRAY: 'ARRAY';
+AS: 'AS';
+ASC: 'ASC';
+ASCII: 'ASCII';
+ASCIISTR: 'ASCIISTR';
+ASIN: 'ASIN';
+ASIS: 'ASIS';
+ASSEMBLY: 'ASSEMBLY';
+ASSIGN: 'ASSIGN';
+ASSOCIATE: 'ASSOCIATE';
+ASYNC: 'ASYNC';
+ASYNCHRONOUS: 'ASYNCHRONOUS';
+ATAN2: 'ATAN2';
+ATAN: 'ATAN';
+AT: 'AT';
+ATTRIBUTE: 'ATTRIBUTE';
+ATTRIBUTES: 'ATTRIBUTES';
+AUDIT: 'AUDIT';
+AUTHENTICATED: 'AUTHENTICATED';
+AUTHENTICATION: 'AUTHENTICATION';
+AUTHID: 'AUTHID';
+AUTHORIZATION: 'AUTHORIZATION';
+AUTOALLOCATE: 'AUTOALLOCATE';
+AUTO: 'AUTO';
+AUTOBACKUP: 'AUTOBACKUP';
+AUTOEXTEND: 'AUTOEXTEND';
+AUTO_LOGIN: 'AUTO_LOGIN';
+AUTOMATIC: 'AUTOMATIC';
+AUTONOMOUS_TRANSACTION: 'AUTONOMOUS_TRANSACTION';
+AUTO_REOPTIMIZE: 'AUTO_REOPTIMIZE';
+AVAILABILITY: 'AVAILABILITY';
+AVRO: 'AVRO';
+BACKGROUND: 'BACKGROUND';
+BACKUP: 'BACKUP';
+BACKUPSET: 'BACKUPSET';
+BASIC: 'BASIC';
+BASICFILE: 'BASICFILE';
+BATCH: 'BATCH';
+BATCHSIZE: 'BATCHSIZE';
+BATCH_TABLE_ACCESS_BY_ROWID: 'BATCH_TABLE_ACCESS_BY_ROWID';
+BECOME: 'BECOME';
+BEFORE: 'BEFORE';
+BEGIN: 'BEGIN';
+BEGINNING: 'BEGINNING';
+BEGIN_OUTLINE_DATA: 'BEGIN_OUTLINE_DATA';
+BEHALF: 'BEHALF';
+BEQUEATH: 'BEQUEATH';
+BETWEEN: 'BETWEEN';
+BFILE: 'BFILE';
+BFILENAME: 'BFILENAME';
+BIGFILE: 'BIGFILE';
+BINARY: 'BINARY';
+BINARY_DOUBLE: 'BINARY_DOUBLE';
+BINARY_DOUBLE_INFINITY: 'BINARY_DOUBLE_INFINITY';
+BINARY_DOUBLE_NAN: 'BINARY_DOUBLE_NAN';
+BINARY_FLOAT: 'BINARY_FLOAT';
+BINARY_FLOAT_INFINITY: 'BINARY_FLOAT_INFINITY';
+BINARY_FLOAT_NAN: 'BINARY_FLOAT_NAN';
+BINARY_INTEGER: 'BINARY_INTEGER';
+BIND_AWARE: 'BIND_AWARE';
+BINDING: 'BINDING';
+BIN_TO_NUM: 'BIN_TO_NUM';
+BITAND: 'BITAND';
+BITMAP_AND: 'BITMAP_AND';
+BITMAP: 'BITMAP';
+BITMAPS: 'BITMAPS';
+BITMAP_TREE: 'BITMAP_TREE';
+BITS: 'BITS';
+BLOB: 'BLOB';
+BLOCK: 'BLOCK';
+BLOCK_RANGE: 'BLOCK_RANGE';
+BLOCKS: 'BLOCKS';
+BLOCKSIZE: 'BLOCKSIZE';
+BODY: 'BODY';
+BOOLEAN: 'BOOLEAN';
+BOTH: 'BOTH';
+BOUND: 'BOUND';
+BRANCH: 'BRANCH';
+BREADTH: 'BREADTH';
+BROADCAST: 'BROADCAST';
+BSON: 'BSON';
+BUFFER: 'BUFFER';
+BUFFER_CACHE: 'BUFFER_CACHE';
+BUFFER_POOL: 'BUFFER_POOL';
+BUILD: 'BUILD';
+BULK: 'BULK';
+BY: 'BY';
+BYPASS_RECURSIVE_CHECK: 'BYPASS_RECURSIVE_CHECK';
+BYPASS_UJVC: 'BYPASS_UJVC';
+BYTE: 'BYTE';
+CACHE: 'CACHE';
+CACHE_CB: 'CACHE_CB';
+CACHE_INSTANCES: 'CACHE_INSTANCES';
+CACHE_TEMP_TABLE: 'CACHE_TEMP_TABLE';
+CACHING: 'CACHING';
+CALCULATED: 'CALCULATED';
+CALLBACK: 'CALLBACK';
+CALL: 'CALL';
+CANCEL: 'CANCEL';
+CANONICAL: 'CANONICAL';
+CAPACITY: 'CAPACITY';
+CARDINALITY: 'CARDINALITY';
+CASCADE: 'CASCADE';
+CASE: 'CASE';
+CAST: 'CAST';
+CATEGORY: 'CATEGORY';
+CDBDEFAULT: 'CDB$DEFAULT';
+CEIL: 'CEIL';
+CELL_FLASH_CACHE: 'CELL_FLASH_CACHE';
+CERTIFICATE: 'CERTIFICATE';
+CFILE: 'CFILE';
+CHAINED: 'CHAINED';
+CHANGE: 'CHANGE';
+CHANGETRACKING: 'CHANGETRACKING';
+CHANGE_DUPKEY_ERROR_INDEX: 'CHANGE_DUPKEY_ERROR_INDEX';
+CHARACTER: 'CHARACTER';
+CHAR: 'CHAR';
+CHAR_CS: 'CHAR_CS';
+CHARTOROWID: 'CHARTOROWID';
+CHECK_ACL_REWRITE: 'CHECK_ACL_REWRITE';
+CHECK: 'CHECK';
+CHECKPOINT: 'CHECKPOINT';
+CHILD: 'CHILD';
+CHOOSE: 'CHOOSE';
+CHR: 'CHR';
+CHUNK: 'CHUNK';
+CLASS: 'CLASS';
+CLASSIFIER: 'CLASSIFIER';
+CLEANUP: 'CLEANUP';
+CLEAR: 'CLEAR';
+C_LETTER: 'C';
+CLIENT: 'CLIENT';
+CLOB: 'CLOB';
+CLONE: 'CLONE';
+CLOSE_CACHED_OPEN_CURSORS: 'CLOSE_CACHED_OPEN_CURSORS';
+CLOSE: 'CLOSE';
+CLUSTER_BY_ROWID: 'CLUSTER_BY_ROWID';
+CLUSTER: 'CLUSTER';
+CLUSTER_DETAILS: 'CLUSTER_DETAILS';
+CLUSTER_DISTANCE: 'CLUSTER_DISTANCE';
+CLUSTER_ID: 'CLUSTER_ID';
+CLUSTERING: 'CLUSTERING';
+CLUSTERING_FACTOR: 'CLUSTERING_FACTOR';
+CLUSTER_PROBABILITY: 'CLUSTER_PROBABILITY';
+CLUSTER_SET: 'CLUSTER_SET';
+COALESCE: 'COALESCE';
+COALESCE_SQ: 'COALESCE_SQ';
+COARSE: 'COARSE';
+CO_AUTH_IND: 'CO_AUTH_IND';
+COLD: 'COLD';
+COLLECT: 'COLLECT';
+COLUMNAR: 'COLUMNAR';
+COLUMN_AUTH_INDICATOR: 'COLUMN_AUTH_INDICATOR';
+COLUMN: 'COLUMN';
+COLUMNS: 'COLUMNS';
+COLUMN_STATS: 'COLUMN_STATS';
+COLUMN_VALUE: 'COLUMN_VALUE';
+COMMENT: 'COMMENT';
+COMMIT: 'COMMIT';
+COMMITTED: 'COMMITTED';
+COMMON_DATA: 'COMMON_DATA';
+COMPACT: 'COMPACT';
+COMPATIBILITY: 'COMPATIBILITY';
+COMPILE: 'COMPILE';
+COMPLETE: 'COMPLETE';
+COMPLIANCE: 'COMPLIANCE';
+COMPONENT: 'COMPONENT';
+COMPONENTS: 'COMPONENTS';
+COMPOSE: 'COMPOSE';
+COMPOSITE: 'COMPOSITE';
+COMPOSITE_LIMIT: 'COMPOSITE_LIMIT';
+COMPOUND: 'COMPOUND';
+COMPRESS: 'COMPRESS';
+COMPUTE: 'COMPUTE';
+CONCAT: 'CONCAT';
+CON_DBID_TO_ID: 'CON_DBID_TO_ID';
+CONDITIONAL: 'CONDITIONAL';
+CONDITION: 'CONDITION';
+CONFIRM: 'CONFIRM';
+CONFORMING: 'CONFORMING';
+CON_GUID_TO_ID: 'CON_GUID_TO_ID';
+CON_ID: 'CON_ID';
+CON_NAME_TO_ID: 'CON_NAME_TO_ID';
+CONNECT_BY_CB_WHR_ONLY: 'CONNECT_BY_CB_WHR_ONLY';
+CONNECT_BY_COMBINE_SW: 'CONNECT_BY_COMBINE_SW';
+CONNECT_BY_COST_BASED: 'CONNECT_BY_COST_BASED';
+CONNECT_BY_ELIM_DUPS: 'CONNECT_BY_ELIM_DUPS';
+CONNECT_BY_FILTERING: 'CONNECT_BY_FILTERING';
+CONNECT_BY_ISCYCLE: 'CONNECT_BY_ISCYCLE';
+CONNECT_BY_ISLEAF: 'CONNECT_BY_ISLEAF';
+CONNECT_BY_ROOT: 'CONNECT_BY_ROOT';
+CONNECT: 'CONNECT';
+CONNECT_TIME: 'CONNECT_TIME';
+CONSIDER: 'CONSIDER';
+CONSISTENT: 'CONSISTENT';
+CONSTANT: 'CONSTANT';
+CONST: 'CONST';
+CONSTRAINT: 'CONSTRAINT';
+CONSTRAINTS: 'CONSTRAINTS';
+CONSTRUCTOR: 'CONSTRUCTOR';
+CONTAINER: 'CONTAINER';
+CONTAINER_DATA: 'CONTAINER_DATA';
+CONTAINERS: 'CONTAINERS';
+CONTENT: 'CONTENT';
+CONTENTS: 'CONTENTS';
+CONTEXT: 'CONTEXT';
+CONTINUE: 'CONTINUE';
+CONTROLFILE: 'CONTROLFILE';
+CON_UID_TO_ID: 'CON_UID_TO_ID';
+CONVERT: 'CONVERT';
+COOKIE: 'COOKIE';
+COPY: 'COPY';
+CORR_K: 'CORR_K';
+CORR_S: 'CORR_S';
+CORRUPTION: 'CORRUPTION';
+CORRUPT_XID_ALL: 'CORRUPT_XID_ALL';
+CORRUPT_XID: 'CORRUPT_XID';
+COS: 'COS';
+COSH: 'COSH';
+COST: 'COST';
+COST_XML_QUERY_REWRITE: 'COST_XML_QUERY_REWRITE';
+COUNT: 'COUNT';
+COVAR_POP: 'COVAR_POP';
+COVAR_SAMP: 'COVAR_SAMP';
+CPU_COSTING: 'CPU_COSTING';
+CPU_PER_CALL: 'CPU_PER_CALL';
+CPU_PER_SESSION: 'CPU_PER_SESSION';
+CRASH: 'CRASH';
+CREATE: 'CREATE';
+CREATE_FILE_DEST: 'CREATE_FILE_DEST';
+CREATE_STORED_OUTLINES: 'CREATE_STORED_OUTLINES';
+CREATION: 'CREATION';
+CREDENTIAL: 'CREDENTIAL';
+CRITICAL: 'CRITICAL';
+CROSS: 'CROSS';
+CROSSEDITION: 'CROSSEDITION';
+CSCONVERT: 'CSCONVERT';
+CUBE_AJ: 'CUBE_AJ';
+CUBE: 'CUBE';
+CUBE_GB: 'CUBE_GB';
+CUBE_SJ: 'CUBE_SJ';
+CUME_DISTM: 'CUME_DISTM';
+CURRENT: 'CURRENT';
+CURRENT_DATE: 'CURRENT_DATE';
+CURRENT_SCHEMA: 'CURRENT_SCHEMA';
+CURRENT_TIME: 'CURRENT_TIME';
+CURRENT_TIMESTAMP: 'CURRENT_TIMESTAMP';
+CURRENT_USER: 'CURRENT_USER';
+CURRENTV: 'CURRENTV';
+CURSOR: 'CURSOR';
+CURSOR_SHARING_EXACT: 'CURSOR_SHARING_EXACT';
+CURSOR_SPECIFIC_SEGMENT: 'CURSOR_SPECIFIC_SEGMENT';
+CUSTOMDATUM: 'CUSTOMDATUM';
+CV: 'CV';
+CYCLE: 'CYCLE';
+DANGLING: 'DANGLING';
+DATABASE: 'DATABASE';
+DATA: 'DATA';
+DATAFILE: 'DATAFILE';
+DATAFILES: 'DATAFILES';
+DATAGUARDCONFIG: 'DATAGUARDCONFIG';
+DATAMOVEMENT: 'DATAMOVEMENT';
+DATAOBJNO: 'DATAOBJNO';
+DATAOBJ_TO_MAT_PARTITION: 'DATAOBJ_TO_MAT_PARTITION';
+DATAOBJ_TO_PARTITION: 'DATAOBJ_TO_PARTITION';
+DATAPUMP: 'DATAPUMP';
+DATA_SECURITY_REWRITE_LIMIT: 'DATA_SECURITY_REWRITE_LIMIT';
+DATE: 'DATE';
+DATE_MODE: 'DATE_MODE';
+DAY: 'DAY';
+DAYS: 'DAYS';
+DBA: 'DBA';
+DBA_RECYCLEBIN: 'DBA_RECYCLEBIN';
+DBMS_STATS: 'DBMS_STATS';
+DB_ROLE_CHANGE: 'DB_ROLE_CHANGE';
+DBTIMEZONE: 'DBTIMEZONE';
+DB_UNIQUE_NAME: 'DB_UNIQUE_NAME';
+DB_VERSION: 'DB_VERSION';
+DDL: 'DDL';
+DEALLOCATE: 'DEALLOCATE';
+DEBUG: 'DEBUG';
+DEBUGGER: 'DEBUGGER';
+DEC: 'DEC';
+DECIMAL: 'DECIMAL';
+DECLARE: 'DECLARE';
+DECOMPOSE: 'DECOMPOSE';
+DECORRELATE: 'DECORRELATE';
+DECR: 'DECR';
+DECREMENT: 'DECREMENT';
+DECRYPT: 'DECRYPT';
+DEDUPLICATE: 'DEDUPLICATE';
+DEFAULT: 'DEFAULT';
+DEFAULTS: 'DEFAULTS';
+DEFERRABLE: 'DEFERRABLE';
+DEFERRED: 'DEFERRED';
+DEFINED: 'DEFINED';
+DEFINE: 'DEFINE';
+DEFINER: 'DEFINER';
+DEGREE: 'DEGREE';
+DELAY: 'DELAY';
+DELEGATE: 'DELEGATE';
+DELETE_ALL: 'DELETE_ALL';
+DELETE: 'DELETE';
+DELETEXML: 'DELETEXML';
+DEMAND: 'DEMAND';
+DENSE_RANKM: 'DENSE_RANKM';
+DEPENDENT: 'DEPENDENT';
+DEPTH: 'DEPTH';
+DEQUEUE: 'DEQUEUE';
+DEREF: 'DEREF';
+DEREF_NO_REWRITE: 'DEREF_NO_REWRITE';
+DESC: 'DESC';
+DESTROY: 'DESTROY';
+DETACHED: 'DETACHED';
+DETERMINES: 'DETERMINES';
+DETERMINISTIC: 'DETERMINISTIC';
+DICTIONARY: 'DICTIONARY';
+DIMENSION: 'DIMENSION';
+DIMENSIONS: 'DIMENSIONS';
+DIRECT_LOAD: 'DIRECT_LOAD';
+DIRECTORY: 'DIRECTORY';
+DIRECT_PATH: 'DIRECT_PATH';
+DISABLE_ALL: 'DISABLE_ALL';
+DISABLE: 'DISABLE';
+DISABLE_PARALLEL_DML: 'DISABLE_PARALLEL_DML';
+DISABLE_PRESET: 'DISABLE_PRESET';
+DISABLE_RPKE: 'DISABLE_RPKE';
+DISALLOW: 'DISALLOW';
+DISASSOCIATE: 'DISASSOCIATE';
+DISCARD: 'DISCARD';
+DISCONNECT: 'DISCONNECT';
+DISK: 'DISK';
+DISKGROUP: 'DISKGROUP';
+DISKGROUP_PLUS: '\'+ DISKGROUP';
+DISKS: 'DISKS';
+DISMOUNT: 'DISMOUNT';
+DISTINCT: 'DISTINCT';
+DISTINGUISHED: 'DISTINGUISHED';
+DISTRIBUTED: 'DISTRIBUTED';
+DISTRIBUTE: 'DISTRIBUTE';
+DML: 'DML';
+DML_UPDATE: 'DML_UPDATE';
+DOCFIDELITY: 'DOCFIDELITY';
+DOCUMENT: 'DOCUMENT';
+DOMAIN_INDEX_FILTER: 'DOMAIN_INDEX_FILTER';
+DOMAIN_INDEX_NO_SORT: 'DOMAIN_INDEX_NO_SORT';
+DOMAIN_INDEX_SORT: 'DOMAIN_INDEX_SORT';
+DOUBLE: 'DOUBLE';
+DOWNGRADE: 'DOWNGRADE';
+DRIVING_SITE: 'DRIVING_SITE';
+DROP_COLUMN: 'DROP_COLUMN';
+DROP: 'DROP';
+DROP_GROUP: 'DROP_GROUP';
+DSINTERVAL_UNCONSTRAINED: 'DSINTERVAL_UNCONSTRAINED';
+DST_UPGRADE_INSERT_CONV: 'DST_UPGRADE_INSERT_CONV';
+DUMP: 'DUMP';
+DUMPSET: 'DUMPSET';
+DUPLICATE: 'DUPLICATE';
+DV: 'DV';
+DYNAMIC: 'DYNAMIC';
+DYNAMIC_SAMPLING: 'DYNAMIC_SAMPLING';
+DYNAMIC_SAMPLING_EST_CDN: 'DYNAMIC_SAMPLING_EST_CDN';
+EACH: 'EACH';
+EDITIONABLE: 'EDITIONABLE';
+EDITION: 'EDITION';
+EDITIONING: 'EDITIONING';
+EDITIONS: 'EDITIONS';
+ELEMENT: 'ELEMENT';
+ELIM_GROUPBY: 'ELIM_GROUPBY';
+ELIMINATE_JOIN: 'ELIMINATE_JOIN';
+ELIMINATE_OBY: 'ELIMINATE_OBY';
+ELIMINATE_OUTER_JOIN: 'ELIMINATE_OUTER_JOIN';
+ELSE: 'ELSE';
+ELSIF: 'ELSIF';
+EM: 'EM';
+EMPTY_BLOB: 'EMPTY_BLOB';
+EMPTY_CLOB: 'EMPTY_CLOB';
+EMPTY: 'EMPTY';
+ENABLE_ALL: 'ENABLE_ALL';
+ENABLE: 'ENABLE';
+ENABLE_PARALLEL_DML: 'ENABLE_PARALLEL_DML';
+ENABLE_PRESET: 'ENABLE_PRESET';
+ENCODING: 'ENCODING';
+ENCRYPT: 'ENCRYPT';
+ENCRYPTION: 'ENCRYPTION';
+END: 'END';
+END_OUTLINE_DATA: 'END_OUTLINE_DATA';
+ENFORCED: 'ENFORCED';
+ENFORCE: 'ENFORCE';
+ENQUEUE: 'ENQUEUE';
+ENTERPRISE: 'ENTERPRISE';
+ENTITYESCAPING: 'ENTITYESCAPING';
+ENTRY: 'ENTRY';
+EQUIPART: 'EQUIPART';
+ERR: 'ERR';
+ERROR_ARGUMENT: 'ERROR_ARGUMENT';
+ERROR: 'ERROR';
+ERROR_ON_OVERLAP_TIME: 'ERROR_ON_OVERLAP_TIME';
+ERRORS: 'ERRORS';
+ESCAPE: 'ESCAPE';
+ESTIMATE: 'ESTIMATE';
+EVAL: 'EVAL';
+EVALNAME: 'EVALNAME';
+EVALUATE: 'EVALUATE';
+EVALUATION: 'EVALUATION';
+EVENTS: 'EVENTS';
+EVERY: 'EVERY';
+EXCEPT: 'EXCEPT';
+EXCEPTION: 'EXCEPTION';
+EXCEPTION_INIT: 'EXCEPTION_INIT';
+EXCEPTIONS: 'EXCEPTIONS';
+EXCHANGE: 'EXCHANGE';
+EXCLUDE: 'EXCLUDE';
+EXCLUDING: 'EXCLUDING';
+EXCLUSIVE: 'EXCLUSIVE';
+EXECUTE: 'EXECUTE';
+EXEMPT: 'EXEMPT';
+EXISTING: 'EXISTING';
+EXISTS: 'EXISTS';
+EXISTSNODE: 'EXISTSNODE';
+EXIT: 'EXIT';
+EXPAND_GSET_TO_UNION: 'EXPAND_GSET_TO_UNION';
+EXPAND_TABLE: 'EXPAND_TABLE';
+EXP: 'EXP';
+EXPIRE: 'EXPIRE';
+EXPLAIN: 'EXPLAIN';
+EXPLOSION: 'EXPLOSION';
+EXPORT: 'EXPORT';
+EXPR_CORR_CHECK: 'EXPR_CORR_CHECK';
+EXPRESS: 'EXPRESS';
+EXTENDS: 'EXTENDS';
+EXTENT: 'EXTENT';
+EXTENTS: 'EXTENTS';
+EXTERNAL: 'EXTERNAL';
+EXTERNALLY: 'EXTERNALLY';
+EXTRACTCLOBXML: 'EXTRACTCLOBXML';
+EXTRACT: 'EXTRACT';
+EXTRACTVALUE: 'EXTRACTVALUE';
+EXTRA: 'EXTRA';
+FACILITY: 'FACILITY';
+FACT: 'FACT';
+FACTOR: 'FACTOR';
+FACTORIZE_JOIN: 'FACTORIZE_JOIN';
+FAILED: 'FAILED';
+FAILED_LOGIN_ATTEMPTS: 'FAILED_LOGIN_ATTEMPTS';
+FAILGROUP: 'FAILGROUP';
+FAILOVER: 'FAILOVER';
+FAILURE: 'FAILURE';
+FALSE: 'FALSE';
+FAMILY: 'FAMILY';
+FAR: 'FAR';
+FAST: 'FAST';
+FASTSTART: 'FASTSTART';
+FBTSCAN: 'FBTSCAN';
+FEATURE_DETAILS: 'FEATURE_DETAILS';
+FEATURE_ID: 'FEATURE_ID';
+FEATURE_SET: 'FEATURE_SET';
+FEATURE_VALUE: 'FEATURE_VALUE';
+FETCH: 'FETCH';
+FILE: 'FILE';
+FILE_NAME_CONVERT: 'FILE_NAME_CONVERT';
+FILESYSTEM_LIKE_LOGGING: 'FILESYSTEM_LIKE_LOGGING';
+FILTER: 'FILTER';
+FINAL: 'FINAL';
+FINE: 'FINE';
+FINISH: 'FINISH';
+FIRST: 'FIRST';
+FIRSTM: 'FIRSTM';
+FIRST_ROWS: 'FIRST_ROWS';
+FIRST_VALUE: 'FIRST_VALUE';
+FIXED_VIEW_DATA: 'FIXED_VIEW_DATA';
+FLAGGER: 'FLAGGER';
+FLASHBACK: 'FLASHBACK';
+FLASH_CACHE: 'FLASH_CACHE';
+FLOAT: 'FLOAT';
+FLOB: 'FLOB';
+FLOOR: 'FLOOR';
+FLUSH: 'FLUSH';
+FOLDER: 'FOLDER';
+FOLLOWING: 'FOLLOWING';
+FOLLOWS: 'FOLLOWS';
+FORALL: 'FORALL';
+FORCE: 'FORCE';
+FORCE_XML_QUERY_REWRITE: 'FORCE_XML_QUERY_REWRITE';
+FOREIGN: 'FOREIGN';
+FOREVER: 'FOREVER';
+FOR: 'FOR';
+FORMAT: 'FORMAT';
+FORWARD: 'FORWARD';
+FRAGMENT_NUMBER: 'FRAGMENT_NUMBER';
+FREELIST: 'FREELIST';
+FREELISTS: 'FREELISTS';
+FREEPOOLS: 'FREEPOOLS';
+FRESH: 'FRESH';
+FROM: 'FROM';
+FROM_TZ: 'FROM_TZ';
+FULL: 'FULL';
+FULL_OUTER_JOIN_TO_OUTER: 'FULL_OUTER_JOIN_TO_OUTER';
+FUNCTION: 'FUNCTION';
+FUNCTIONS: 'FUNCTIONS';
+GATHER_OPTIMIZER_STATISTICS: 'GATHER_OPTIMIZER_STATISTICS';
+GATHER_PLAN_STATISTICS: 'GATHER_PLAN_STATISTICS';
+GBY_CONC_ROLLUP: 'GBY_CONC_ROLLUP';
+GBY_PUSHDOWN: 'GBY_PUSHDOWN';
+GENERATED: 'GENERATED';
+GET: 'GET';
+GLOBAL: 'GLOBAL';
+GLOBALLY: 'GLOBALLY';
+GLOBAL_NAME: 'GLOBAL_NAME';
+GLOBAL_TOPIC_ENABLED: 'GLOBAL_TOPIC_ENABLED';
+GOTO: 'GOTO';
+GRANT: 'GRANT';
+GROUP_BY: 'GROUP_BY';
+GROUP: 'GROUP';
+GROUP_ID: 'GROUP_ID';
+GROUPING: 'GROUPING';
+GROUPING_ID: 'GROUPING_ID';
+GROUPS: 'GROUPS';
+GUARANTEED: 'GUARANTEED';
+GUARANTEE: 'GUARANTEE';
+GUARD: 'GUARD';
+HASH_AJ: 'HASH_AJ';
+HASH: 'HASH';
+HASHKEYS: 'HASHKEYS';
+HASH_SJ: 'HASH_SJ';
+HAVING: 'HAVING';
+HEADER: 'HEADER';
+HEAP: 'HEAP';
+HELP: 'HELP';
+HEXTORAW: 'HEXTORAW';
+HEXTOREF: 'HEXTOREF';
+HIDDEN_KEYWORD: 'HIDDEN';
+HIDE: 'HIDE';
+HIERARCHY: 'HIERARCHY';
+HIGH: 'HIGH';
+HINTSET_BEGIN: 'HINTSET_BEGIN';
+HINTSET_END: 'HINTSET_END';
+HOT: 'HOT';
+HOUR: 'HOUR';
+HWM_BROKERED: 'HWM_BROKERED';
+HYBRID: 'HYBRID';
+IDENTIFIED: 'IDENTIFIED';
+IDENTIFIER: 'IDENTIFIER';
+IDENTITY: 'IDENTITY';
+IDGENERATORS: 'IDGENERATORS';
+ID: 'ID';
+IDLE_TIME: 'IDLE_TIME';
+IF: 'IF';
+IGNORE: 'IGNORE';
+IGNORE_OPTIM_EMBEDDED_HINTS: 'IGNORE_OPTIM_EMBEDDED_HINTS';
+IGNORE_ROW_ON_DUPKEY_INDEX: 'IGNORE_ROW_ON_DUPKEY_INDEX';
+IGNORE_WHERE_CLAUSE: 'IGNORE_WHERE_CLAUSE';
+ILM: 'ILM';
+IMMEDIATE: 'IMMEDIATE';
+IMPACT: 'IMPACT';
+IMPORT: 'IMPORT';
+INACTIVE: 'INACTIVE';
+INCLUDE: 'INCLUDE';
+INCLUDE_VERSION: 'INCLUDE_VERSION';
+INCLUDING: 'INCLUDING';
+INCREMENTAL: 'INCREMENTAL';
+INCREMENT: 'INCREMENT';
+INCR: 'INCR';
+INDENT: 'INDENT';
+INDEX_ASC: 'INDEX_ASC';
+INDEX_COMBINE: 'INDEX_COMBINE';
+INDEX_DESC: 'INDEX_DESC';
+INDEXED: 'INDEXED';
+INDEXES: 'INDEXES';
+INDEX_FFS: 'INDEX_FFS';
+INDEX_FILTER: 'INDEX_FILTER';
+INDEX: 'INDEX';
+INDEXING: 'INDEXING';
+INDEX_JOIN: 'INDEX_JOIN';
+INDEX_ROWS: 'INDEX_ROWS';
+INDEX_RRS: 'INDEX_RRS';
+INDEX_RS_ASC: 'INDEX_RS_ASC';
+INDEX_RS_DESC: 'INDEX_RS_DESC';
+INDEX_RS: 'INDEX_RS';
+INDEX_SCAN: 'INDEX_SCAN';
+INDEX_SKIP_SCAN: 'INDEX_SKIP_SCAN';
+INDEX_SS_ASC: 'INDEX_SS_ASC';
+INDEX_SS_DESC: 'INDEX_SS_DESC';
+INDEX_SS: 'INDEX_SS';
+INDEX_STATS: 'INDEX_STATS';
+INDEXTYPE: 'INDEXTYPE';
+INDEXTYPES: 'INDEXTYPES';
+INDICATOR: 'INDICATOR';
+INDICES: 'INDICES';
+INFINITE: 'INFINITE';
+INFORMATIONAL: 'INFORMATIONAL';
+INHERIT: 'INHERIT';
+IN: 'IN';
+INITCAP: 'INITCAP';
+INITIAL: 'INITIAL';
+INITIALIZED: 'INITIALIZED';
+INITIALLY: 'INITIALLY';
+INITRANS: 'INITRANS';
+INLINE: 'INLINE';
+INLINE_XMLTYPE_NT: 'INLINE_XMLTYPE_NT';
+INMEMORY: 'INMEMORY';
+IN_MEMORY_METADATA: 'IN_MEMORY_METADATA';
+INMEMORY_PRUNING: 'INMEMORY_PRUNING';
+INNER: 'INNER';
+INOUT: 'INOUT';
+INPLACE: 'INPLACE';
+INSERTCHILDXMLAFTER: 'INSERTCHILDXMLAFTER';
+INSERTCHILDXMLBEFORE: 'INSERTCHILDXMLBEFORE';
+INSERTCHILDXML: 'INSERTCHILDXML';
+INSERT: 'INSERT';
+INSERTXMLAFTER: 'INSERTXMLAFTER';
+INSERTXMLBEFORE: 'INSERTXMLBEFORE';
+INSTANCE: 'INSTANCE';
+INSTANCES: 'INSTANCES';
+INSTANTIABLE: 'INSTANTIABLE';
+INSTANTLY: 'INSTANTLY';
+INSTEAD: 'INSTEAD';
+INSTR2: 'INSTR2';
+INSTR4: 'INSTR4';
+INSTRB: 'INSTRB';
+INSTRC: 'INSTRC';
+INSTR: 'INSTR';
+INTEGER: 'INTEGER';
+INTERLEAVED: 'INTERLEAVED';
+INTERMEDIATE: 'INTERMEDIATE';
+INTERNAL_CONVERT: 'INTERNAL_CONVERT';
+INTERNAL_USE: 'INTERNAL_USE';
+INTERPRETED: 'INTERPRETED';
+INTERSECT: 'INTERSECT';
+INTERVAL: 'INTERVAL';
+INT: 'INT';
+INTO: 'INTO';
+INVALIDATE: 'INVALIDATE';
+INVISIBLE: 'INVISIBLE';
+IN_XQUERY: 'IN_XQUERY';
+IS: 'IS';
+ISOLATION: 'ISOLATION';
+ISOLATION_LEVEL: 'ISOLATION_LEVEL';
+ITERATE: 'ITERATE';
+ITERATION_NUMBER: 'ITERATION_NUMBER';
+JAVA: 'JAVA';
+JOB: 'JOB';
+JOIN: 'JOIN';
+JSON_ARRAYAGG: 'JSON_ARRAYAGG';
+JSON_ARRAY: 'JSON_ARRAY';
+JSON_EQUAL: 'JSON_EQUAL';
+JSON_EXISTS2: 'JSON_EXISTS2';
+JSON_EXISTS: 'JSON_EXISTS';
+JSONGET: 'JSONGET';
+JSON: 'JSON';
+JSON_OBJECTAGG: 'JSON_OBJECTAGG';
+JSON_OBJECT: 'JSON_OBJECT';
+JSONPARSE: 'JSONPARSE';
+JSON_QUERY: 'JSON_QUERY';
+JSON_SERIALIZE: 'JSON_SERIALIZE';
+JSON_TABLE: 'JSON_TABLE';
+JSON_TEXTCONTAINS2: 'JSON_TEXTCONTAINS2';
+JSON_TEXTCONTAINS: 'JSON_TEXTCONTAINS';
+JSON_VALUE: 'JSON_VALUE';
+KEEP_DUPLICATES: 'KEEP_DUPLICATES';
+KEEP: 'KEEP';
+KERBEROS: 'KERBEROS';
+KEY: 'KEY';
+KEY_LENGTH: 'KEY_LENGTH';
+KEYSIZE: 'KEYSIZE';
+KEYS: 'KEYS';
+KEYSTORE: 'KEYSTORE';
+KILL: 'KILL';
+LABEL: 'LABEL';
+LANGUAGE: 'LANGUAGE';
+LAST_DAY: 'LAST_DAY';
+LAST: 'LAST';
+LAST_VALUE: 'LAST_VALUE';
+LATERAL: 'LATERAL';
+LAX: 'LAX';
+LAYER: 'LAYER';
+LDAP_REGISTRATION_ENABLED: 'LDAP_REGISTRATION_ENABLED';
+LDAP_REGISTRATION: 'LDAP_REGISTRATION';
+LDAP_REG_SYNC_INTERVAL: 'LDAP_REG_SYNC_INTERVAL';
+LEADING: 'LEADING';
+LEFT: 'LEFT';
+LENGTH2: 'LENGTH2';
+LENGTH4: 'LENGTH4';
+LENGTHB: 'LENGTHB';
+LENGTHC: 'LENGTHC';
+LENGTH: 'LENGTH';
+LESS: 'LESS';
+LEVEL: 'LEVEL';
+LEVELS: 'LEVELS';
+LIBRARY: 'LIBRARY';
+LIFECYCLE: 'LIFECYCLE';
+LIFE: 'LIFE';
+LIFETIME: 'LIFETIME';
+LIKE2: 'LIKE2';
+LIKE4: 'LIKE4';
+LIKEC: 'LIKEC';
+LIKE_EXPAND: 'LIKE_EXPAND';
+LIKE: 'LIKE';
+LIMIT: 'LIMIT';
+LINEAR: 'LINEAR';
+LINK: 'LINK';
+LIST: 'LIST';
+LN: 'LN';
+LNNVL: 'LNNVL';
+LOAD: 'LOAD';
+LOB: 'LOB';
+LOBNVL: 'LOBNVL';
+LOBS: 'LOBS';
+LOCAL_INDEXES: 'LOCAL_INDEXES';
+LOCAL: 'LOCAL';
+LOCALTIME: 'LOCALTIME';
+LOCALTIMESTAMP: 'LOCALTIMESTAMP';
+LOCATION: 'LOCATION';
+LOCATOR: 'LOCATOR';
+LOCKED: 'LOCKED';
+LOCKING: 'LOCKING';
+LOCK: 'LOCK';
+LOGFILE: 'LOGFILE';
+LOGFILES: 'LOGFILES';
+LOGGING: 'LOGGING';
+LOGICAL: 'LOGICAL';
+LOGICAL_READS_PER_CALL: 'LOGICAL_READS_PER_CALL';
+LOGICAL_READS_PER_SESSION: 'LOGICAL_READS_PER_SESSION';
+LOG: 'LOG';
+LOGMINING: 'LOGMINING';
+LOGOFF: 'LOGOFF';
+LOGON: 'LOGON';
+LOG_READ_ONLY_VIOLATIONS: 'LOG_READ_ONLY_VIOLATIONS';
+LONG: 'LONG';
+LOOP: 'LOOP';
+LOWER: 'LOWER';
+LOW: 'LOW';
+LPAD: 'LPAD';
+LTRIM: 'LTRIM';
+MAIN: 'MAIN';
+MAKE_REF: 'MAKE_REF';
+MANAGED: 'MANAGED';
+MANAGE: 'MANAGE';
+MANAGEMENT: 'MANAGEMENT';
+MANAGER: 'MANAGER';
+MANUAL: 'MANUAL';
+MAP: 'MAP';
+MAPPING: 'MAPPING';
+MASTER: 'MASTER';
+MATCHED: 'MATCHED';
+MATCHES: 'MATCHES';
+MATCH: 'MATCH';
+MATCH_NUMBER: 'MATCH_NUMBER';
+MATCH_RECOGNIZE: 'MATCH_RECOGNIZE';
+MATERIALIZED: 'MATERIALIZED';
+MATERIALIZE: 'MATERIALIZE';
+MAXARCHLOGS: 'MAXARCHLOGS';
+MAXDATAFILES: 'MAXDATAFILES';
+MAXEXTENTS: 'MAXEXTENTS';
+MAXIMIZE: 'MAXIMIZE';
+MAXINSTANCES: 'MAXINSTANCES';
+MAXLOGFILES: 'MAXLOGFILES';
+MAXLOGHISTORY: 'MAXLOGHISTORY';
+MAXLOGMEMBERS: 'MAXLOGMEMBERS';
+MAX_SHARED_TEMP_SIZE: 'MAX_SHARED_TEMP_SIZE';
+MAXSIZE: 'MAXSIZE';
+MAXTRANS: 'MAXTRANS';
+MAXVALUE: 'MAXVALUE';
+MEASURE: 'MEASURE';
+MEASURES: 'MEASURES';
+MEDIUM: 'MEDIUM';
+MEMBER: 'MEMBER';
+MEMCOMPRESS: 'MEMCOMPRESS';
+MEMORY: 'MEMORY';
+MERGEACTIONS: 'MERGE$ACTIONS';
+MERGE_AJ: 'MERGE_AJ';
+MERGE_CONST_ON: 'MERGE_CONST_ON';
+MERGE: 'MERGE';
+MERGE_SJ: 'MERGE_SJ';
+METADATA: 'METADATA';
+METHOD: 'METHOD';
+MIGRATE: 'MIGRATE';
+MIGRATION: 'MIGRATION';
+MINEXTENTS: 'MINEXTENTS';
+MINIMIZE: 'MINIMIZE';
+MINIMUM: 'MINIMUM';
+MINING: 'MINING';
+MINUS: 'MINUS';
+MINUS_NULL: 'MINUS_NULL';
+MINUTE: 'MINUTE';
+MINVALUE: 'MINVALUE';
+MIRRORCOLD: 'MIRRORCOLD';
+MIRRORHOT: 'MIRRORHOT';
+MIRROR: 'MIRROR';
+MLSLABEL: 'MLSLABEL';
+MODEL_COMPILE_SUBQUERY: 'MODEL_COMPILE_SUBQUERY';
+MODEL_DONTVERIFY_UNIQUENESS: 'MODEL_DONTVERIFY_UNIQUENESS';
+MODEL_DYNAMIC_SUBQUERY: 'MODEL_DYNAMIC_SUBQUERY';
+MODEL_MIN_ANALYSIS: 'MODEL_MIN_ANALYSIS';
+MODEL: 'MODEL';
+MODEL_NB: 'MODEL_NB';
+MODEL_NO_ANALYSIS: 'MODEL_NO_ANALYSIS';
+MODEL_PBY: 'MODEL_PBY';
+MODEL_PUSH_REF: 'MODEL_PUSH_REF';
+MODEL_SV: 'MODEL_SV';
+MODE: 'MODE';
+MODIFICATION: 'MODIFICATION';
+MODIFY_COLUMN_TYPE: 'MODIFY_COLUMN_TYPE';
+MODIFY: 'MODIFY';
+MOD: 'MOD';
+MODULE: 'MODULE';
+MONITORING: 'MONITORING';
+MONITOR: 'MONITOR';
+MONTH: 'MONTH';
+MONTHS_BETWEEN: 'MONTHS_BETWEEN';
+MONTHS: 'MONTHS';
+MOUNT: 'MOUNT';
+MOUNTPATH: 'MOUNTPATH';
+MOVEMENT: 'MOVEMENT';
+MOVE: 'MOVE';
+MULTIDIMENSIONAL: 'MULTIDIMENSIONAL';
+MULTISET: 'MULTISET';
+MV_MERGE: 'MV_MERGE';
+NAMED: 'NAMED';
+NAME: 'NAME';
+NAMESPACE: 'NAMESPACE';
+NAN: 'NAN';
+NANVL: 'NANVL';
+NATIONAL: 'NATIONAL';
+NATIVE_FULL_OUTER_JOIN: 'NATIVE_FULL_OUTER_JOIN';
+NATIVE: 'NATIVE';
+NATURAL: 'NATURAL';
+NATURALN: 'NATURALN';
+NAV: 'NAV';
+NCHAR_CS: 'NCHAR_CS';
+NCHAR: 'NCHAR';
+NCHR: 'NCHR';
+NCLOB: 'NCLOB';
+NEEDED: 'NEEDED';
+NEG: 'NEG';
+NESTED: 'NESTED';
+NESTED_TABLE_FAST_INSERT: 'NESTED_TABLE_FAST_INSERT';
+NESTED_TABLE_GET_REFS: 'NESTED_TABLE_GET_REFS';
+NESTED_TABLE_ID: 'NESTED_TABLE_ID';
+NESTED_TABLE_SET_REFS: 'NESTED_TABLE_SET_REFS';
+NESTED_TABLE_SET_SETID: 'NESTED_TABLE_SET_SETID';
+NETWORK: 'NETWORK';
+NEVER: 'NEVER';
+NEW: 'NEW';
+NEW_TIME: 'NEW_TIME';
+NEXT_DAY: 'NEXT_DAY';
+NEXT: 'NEXT';
+NL_AJ: 'NL_AJ';
+NLJ_BATCHING: 'NLJ_BATCHING';
+NLJ_INDEX_FILTER: 'NLJ_INDEX_FILTER';
+NLJ_INDEX_SCAN: 'NLJ_INDEX_SCAN';
+NLJ_PREFETCH: 'NLJ_PREFETCH';
+NLS_CALENDAR: 'NLS_CALENDAR';
+NLS_CHARACTERSET: 'NLS_CHARACTERSET';
+NLS_CHARSET_DECL_LEN: 'NLS_CHARSET_DECL_LEN';
+NLS_CHARSET_ID: 'NLS_CHARSET_ID';
+NLS_CHARSET_NAME: 'NLS_CHARSET_NAME';
+NLS_COMP: 'NLS_COMP';
+NLS_CURRENCY: 'NLS_CURRENCY';
+NLS_DATE_FORMAT: 'NLS_DATE_FORMAT';
+NLS_DATE_LANGUAGE: 'NLS_DATE_LANGUAGE';
+NLS_INITCAP: 'NLS_INITCAP';
+NLS_ISO_CURRENCY: 'NLS_ISO_CURRENCY';
+NL_SJ: 'NL_SJ';
+NLS_LANG: 'NLS_LANG';
+NLS_LANGUAGE: 'NLS_LANGUAGE';
+NLS_LENGTH_SEMANTICS: 'NLS_LENGTH_SEMANTICS';
+NLS_LOWER: 'NLS_LOWER';
+NLS_NCHAR_CONV_EXCP: 'NLS_NCHAR_CONV_EXCP';
+NLS_NUMERIC_CHARACTERS: 'NLS_NUMERIC_CHARACTERS';
+NLS_SORT: 'NLS_SORT';
+NLSSORT: 'NLSSORT';
+NLS_SPECIAL_CHARS: 'NLS_SPECIAL_CHARS';
+NLS_TERRITORY: 'NLS_TERRITORY';
+NLS_UPPER: 'NLS_UPPER';
+NO_ACCESS: 'NO_ACCESS';
+NO_ADAPTIVE_PLAN: 'NO_ADAPTIVE_PLAN';
+NO_ANSI_REARCH: 'NO_ANSI_REARCH';
+NOAPPEND: 'NOAPPEND';
+NOARCHIVELOG: 'NOARCHIVELOG';
+NOAUDIT: 'NOAUDIT';
+NO_AUTO_REOPTIMIZE: 'NO_AUTO_REOPTIMIZE';
+NO_BASETABLE_MULTIMV_REWRITE: 'NO_BASETABLE_MULTIMV_REWRITE';
+NO_BATCH_TABLE_ACCESS_BY_ROWID: 'NO_BATCH_TABLE_ACCESS_BY_ROWID';
+NO_BIND_AWARE: 'NO_BIND_AWARE';
+NO_BUFFER: 'NO_BUFFER';
+NOCACHE: 'NOCACHE';
+NO_CARTESIAN: 'NO_CARTESIAN';
+NO_CHECK_ACL_REWRITE: 'NO_CHECK_ACL_REWRITE';
+NO_CLUSTER_BY_ROWID: 'NO_CLUSTER_BY_ROWID';
+NO_CLUSTERING: 'NO_CLUSTERING';
+NO_COALESCE_SQ: 'NO_COALESCE_SQ';
+NO_COMMON_DATA: 'NO_COMMON_DATA';
+NOCOMPRESS: 'NOCOMPRESS';
+NO_CONNECT_BY_CB_WHR_ONLY: 'NO_CONNECT_BY_CB_WHR_ONLY';
+NO_CONNECT_BY_COMBINE_SW: 'NO_CONNECT_BY_COMBINE_SW';
+NO_CONNECT_BY_COST_BASED: 'NO_CONNECT_BY_COST_BASED';
+NO_CONNECT_BY_ELIM_DUPS: 'NO_CONNECT_BY_ELIM_DUPS';
+NO_CONNECT_BY_FILTERING: 'NO_CONNECT_BY_FILTERING';
+NOCOPY: 'NOCOPY';
+NO_COST_XML_QUERY_REWRITE: 'NO_COST_XML_QUERY_REWRITE';
+NO_CPU_COSTING: 'NO_CPU_COSTING';
+NOCPU_COSTING: 'NOCPU_COSTING';
+NOCYCLE: 'NOCYCLE';
+NO_DATA_SECURITY_REWRITE: 'NO_DATA_SECURITY_REWRITE';
+NO_DECORRELATE: 'NO_DECORRELATE';
+NODELAY: 'NODELAY';
+NO_DOMAIN_INDEX_FILTER: 'NO_DOMAIN_INDEX_FILTER';
+NO_DST_UPGRADE_INSERT_CONV: 'NO_DST_UPGRADE_INSERT_CONV';
+NO_ELIM_GROUPBY: 'NO_ELIM_GROUPBY';
+NO_ELIMINATE_JOIN: 'NO_ELIMINATE_JOIN';
+NO_ELIMINATE_OBY: 'NO_ELIMINATE_OBY';
+NO_ELIMINATE_OUTER_JOIN: 'NO_ELIMINATE_OUTER_JOIN';
+NOENTITYESCAPING: 'NOENTITYESCAPING';
+NO_EXPAND_GSET_TO_UNION: 'NO_EXPAND_GSET_TO_UNION';
+NO_EXPAND: 'NO_EXPAND';
+NO_EXPAND_TABLE: 'NO_EXPAND_TABLE';
+NO_FACT: 'NO_FACT';
+NO_FACTORIZE_JOIN: 'NO_FACTORIZE_JOIN';
+NO_FILTERING: 'NO_FILTERING';
+NOFORCE: 'NOFORCE';
+NO_FULL_OUTER_JOIN_TO_OUTER: 'NO_FULL_OUTER_JOIN_TO_OUTER';
+NO_GATHER_OPTIMIZER_STATISTICS: 'NO_GATHER_OPTIMIZER_STATISTICS';
+NO_GBY_PUSHDOWN: 'NO_GBY_PUSHDOWN';
+NOGUARANTEE: 'NOGUARANTEE';
+NO_INDEX_FFS: 'NO_INDEX_FFS';
+NO_INDEX: 'NO_INDEX';
+NO_INDEX_SS: 'NO_INDEX_SS';
+NO_INMEMORY: 'NO_INMEMORY';
+NO_INMEMORY_PRUNING: 'NO_INMEMORY_PRUNING';
+NOKEEP: 'NOKEEP';
+NO_LOAD: 'NO_LOAD';
+NOLOCAL: 'NOLOCAL';
+NOLOGGING: 'NOLOGGING';
+NOMAPPING: 'NOMAPPING';
+NOMAXVALUE: 'NOMAXVALUE';
+NO_MERGE: 'NO_MERGE';
+NOMINIMIZE: 'NOMINIMIZE';
+NOMINVALUE: 'NOMINVALUE';
+NO_MODEL_PUSH_REF: 'NO_MODEL_PUSH_REF';
+NO_MONITORING: 'NO_MONITORING';
+NOMONITORING: 'NOMONITORING';
+NO_MONITOR: 'NO_MONITOR';
+NO_MULTIMV_REWRITE: 'NO_MULTIMV_REWRITE';
+NO_NATIVE_FULL_OUTER_JOIN: 'NO_NATIVE_FULL_OUTER_JOIN';
+NONBLOCKING: 'NONBLOCKING';
+NONEDITIONABLE: 'NONEDITIONABLE';
+NONE: 'NONE';
+NO_NLJ_BATCHING: 'NO_NLJ_BATCHING';
+NO_NLJ_PREFETCH: 'NO_NLJ_PREFETCH';
+NO: 'NO';
+NONSCHEMA: 'NONSCHEMA';
+NO_OBJECT_LINK: 'NO_OBJECT_LINK';
+NOORDER: 'NOORDER';
+NO_ORDER_ROLLUPS: 'NO_ORDER_ROLLUPS';
+NO_OUTER_JOIN_TO_ANTI: 'NO_OUTER_JOIN_TO_ANTI';
+NO_OUTER_JOIN_TO_INNER: 'NO_OUTER_JOIN_TO_INNER';
+NOOVERRIDE: 'NOOVERRIDE';
+NO_PARALLEL_INDEX: 'NO_PARALLEL_INDEX';
+NOPARALLEL_INDEX: 'NOPARALLEL_INDEX';
+NO_PARALLEL: 'NO_PARALLEL';
+NOPARALLEL: 'NOPARALLEL';
+NO_PARTIAL_COMMIT: 'NO_PARTIAL_COMMIT';
+NO_PARTIAL_JOIN: 'NO_PARTIAL_JOIN';
+NO_PARTIAL_ROLLUP_PUSHDOWN: 'NO_PARTIAL_ROLLUP_PUSHDOWN';
+NOPARTITION: 'NOPARTITION';
+NO_PLACE_DISTINCT: 'NO_PLACE_DISTINCT';
+NO_PLACE_GROUP_BY: 'NO_PLACE_GROUP_BY';
+NO_PQ_CONCURRENT_UNION: 'NO_PQ_CONCURRENT_UNION';
+NO_PQ_MAP: 'NO_PQ_MAP';
+NO_PQ_REPLICATE: 'NO_PQ_REPLICATE';
+NO_PQ_SKEW: 'NO_PQ_SKEW';
+NO_PRUNE_GSETS: 'NO_PRUNE_GSETS';
+NO_PULL_PRED: 'NO_PULL_PRED';
+NO_PUSH_PRED: 'NO_PUSH_PRED';
+NO_PUSH_SUBQ: 'NO_PUSH_SUBQ';
+NO_PX_FAULT_TOLERANCE: 'NO_PX_FAULT_TOLERANCE';
+NO_PX_JOIN_FILTER: 'NO_PX_JOIN_FILTER';
+NO_QKN_BUFF: 'NO_QKN_BUFF';
+NO_QUERY_TRANSFORMATION: 'NO_QUERY_TRANSFORMATION';
+NO_REF_CASCADE: 'NO_REF_CASCADE';
+NORELOCATE: 'NORELOCATE';
+NORELY: 'NORELY';
+NOREPAIR: 'NOREPAIR';
+NOREPLAY: 'NOREPLAY';
+NORESETLOGS: 'NORESETLOGS';
+NO_RESULT_CACHE: 'NO_RESULT_CACHE';
+NOREVERSE: 'NOREVERSE';
+NO_REWRITE: 'NO_REWRITE';
+NOREWRITE: 'NOREWRITE';
+NORMAL: 'NORMAL';
+NO_ROOT_SW_FOR_LOCAL: 'NO_ROOT_SW_FOR_LOCAL';
+NOROWDEPENDENCIES: 'NOROWDEPENDENCIES';
+NOSCHEMACHECK: 'NOSCHEMACHECK';
+NOSEGMENT: 'NOSEGMENT';
+NO_SEMIJOIN: 'NO_SEMIJOIN';
+NO_SEMI_TO_INNER: 'NO_SEMI_TO_INNER';
+NO_SET_TO_JOIN: 'NO_SET_TO_JOIN';
+NOSORT: 'NOSORT';
+NO_SQL_TRANSLATION: 'NO_SQL_TRANSLATION';
+NO_SQL_TUNE: 'NO_SQL_TUNE';
+NO_STAR_TRANSFORMATION: 'NO_STAR_TRANSFORMATION';
+NO_STATEMENT_QUEUING: 'NO_STATEMENT_QUEUING';
+NO_STATS_GSETS: 'NO_STATS_GSETS';
+NOSTRICT: 'NOSTRICT';
+NO_SUBQUERY_PRUNING: 'NO_SUBQUERY_PRUNING';
+NO_SUBSTRB_PAD: 'NO_SUBSTRB_PAD';
+NO_SWAP_JOIN_INPUTS: 'NO_SWAP_JOIN_INPUTS';
+NOSWITCH: 'NOSWITCH';
+NO_TABLE_LOOKUP_BY_NL: 'NO_TABLE_LOOKUP_BY_NL';
+NO_TEMP_TABLE: 'NO_TEMP_TABLE';
+NOTHING: 'NOTHING';
+NOTIFICATION: 'NOTIFICATION';
+NOT: 'NOT';
+NO_TRANSFORM_DISTINCT_AGG: 'NO_TRANSFORM_DISTINCT_AGG';
+NO_UNNEST: 'NO_UNNEST';
+NO_USE_CUBE: 'NO_USE_CUBE';
+NO_USE_HASH_AGGREGATION: 'NO_USE_HASH_AGGREGATION';
+NO_USE_HASH_GBY_FOR_PUSHDOWN: 'NO_USE_HASH_GBY_FOR_PUSHDOWN';
+NO_USE_HASH: 'NO_USE_HASH';
+NO_USE_INVISIBLE_INDEXES: 'NO_USE_INVISIBLE_INDEXES';
+NO_USE_MERGE: 'NO_USE_MERGE';
+NO_USE_NL: 'NO_USE_NL';
+NO_USE_VECTOR_AGGREGATION: 'NO_USE_VECTOR_AGGREGATION';
+NOVALIDATE: 'NOVALIDATE';
+NO_VECTOR_TRANSFORM_DIMS: 'NO_VECTOR_TRANSFORM_DIMS';
+NO_VECTOR_TRANSFORM_FACT: 'NO_VECTOR_TRANSFORM_FACT';
+NO_VECTOR_TRANSFORM: 'NO_VECTOR_TRANSFORM';
+NOWAIT: 'NOWAIT';
+NO_XDB_FASTPATH_INSERT: 'NO_XDB_FASTPATH_INSERT';
+NO_XML_DML_REWRITE: 'NO_XML_DML_REWRITE';
+NO_XMLINDEX_REWRITE_IN_SELECT: 'NO_XMLINDEX_REWRITE_IN_SELECT';
+NO_XMLINDEX_REWRITE: 'NO_XMLINDEX_REWRITE';
+NO_XML_QUERY_REWRITE: 'NO_XML_QUERY_REWRITE';
+NO_ZONEMAP: 'NO_ZONEMAP';
+NTH_VALUE: 'NTH_VALUE';
+NULLIF: 'NULLIF';
+NULL_: 'NULL';
+NULLS: 'NULLS';
+NUMBER: 'NUMBER';
+NUMERIC: 'NUMERIC';
+NUM_INDEX_KEYS: 'NUM_INDEX_KEYS';
+NUMTODSINTERVAL: 'NUMTODSINTERVAL';
+NUMTOYMINTERVAL: 'NUMTOYMINTERVAL';
+NVARCHAR2: 'NVARCHAR2';
+NVL2: 'NVL2';
+OBJECT2XML: 'OBJECT2XML';
+OBJECT: 'OBJECT';
+OBJ_ID: 'OBJ_ID';
+OBJNO: 'OBJNO';
+OBJNO_REUSE: 'OBJNO_REUSE';
+OCCURENCES: 'OCCURENCES';
+OFFLINE: 'OFFLINE';
+OFF: 'OFF';
+OFFSET: 'OFFSET';
+OF: 'OF';
+OIDINDEX: 'OIDINDEX';
+OID: 'OID';
+OLAP: 'OLAP';
+OLD: 'OLD';
+OLD_PUSH_PRED: 'OLD_PUSH_PRED';
+OLS: 'OLS';
+OLTP: 'OLTP';
+OMIT: 'OMIT';
+ONE: 'ONE';
+ONLINE: 'ONLINE';
+ONLINELOG: 'ONLINELOG';
+ONLY: 'ONLY';
+ON: 'ON';
+OPAQUE: 'OPAQUE';
+OPAQUE_TRANSFORM: 'OPAQUE_TRANSFORM';
+OPAQUE_XCANONICAL: 'OPAQUE_XCANONICAL';
+OPCODE: 'OPCODE';
+OPEN: 'OPEN';
+OPERATIONS: 'OPERATIONS';
+OPERATOR: 'OPERATOR';
+OPT_ESTIMATE: 'OPT_ESTIMATE';
+OPTIMAL: 'OPTIMAL';
+OPTIMIZE: 'OPTIMIZE';
+OPTIMIZER_FEATURES_ENABLE: 'OPTIMIZER_FEATURES_ENABLE';
+OPTIMIZER_GOAL: 'OPTIMIZER_GOAL';
+OPTION: 'OPTION';
+OPT_PARAM: 'OPT_PARAM';
+ORA_BRANCH: 'ORA_BRANCH';
+ORA_CHECK_ACL: 'ORA_CHECK_ACL';
+ORA_CHECK_PRIVILEGE: 'ORA_CHECK_PRIVILEGE';
+ORA_CLUSTERING: 'ORA_CLUSTERING';
+ORADATA: 'ORADATA';
+ORADEBUG: 'ORADEBUG';
+ORA_DST_AFFECTED: 'ORA_DST_AFFECTED';
+ORA_DST_CONVERT: 'ORA_DST_CONVERT';
+ORA_DST_ERROR: 'ORA_DST_ERROR';
+ORA_GET_ACLIDS: 'ORA_GET_ACLIDS';
+ORA_GET_PRIVILEGES: 'ORA_GET_PRIVILEGES';
+ORA_HASH: 'ORA_HASH';
+ORA_INVOKING_USERID: 'ORA_INVOKING_USERID';
+ORA_INVOKING_USER: 'ORA_INVOKING_USER';
+ORA_INVOKING_XS_USER_GUID: 'ORA_INVOKING_XS_USER_GUID';
+ORA_INVOKING_XS_USER: 'ORA_INVOKING_XS_USER';
+ORA_RAWCOMPARE: 'ORA_RAWCOMPARE';
+ORA_RAWCONCAT: 'ORA_RAWCONCAT';
+ORA_ROWSCN: 'ORA_ROWSCN';
+ORA_ROWSCN_RAW: 'ORA_ROWSCN_RAW';
+ORA_ROWVERSION: 'ORA_ROWVERSION';
+ORA_TABVERSION: 'ORA_TABVERSION';
+ORA_WRITE_TIME: 'ORA_WRITE_TIME';
+ORDERED: 'ORDERED';
+ORDERED_PREDICATES: 'ORDERED_PREDICATES';
+ORDER: 'ORDER';
+ORDINALITY: 'ORDINALITY';
+OR_EXPAND: 'OR_EXPAND';
+ORGANIZATION: 'ORGANIZATION';
+OR: 'OR';
+OR_PREDICATES: 'OR_PREDICATES';
+OSERROR: 'OSERROR';
+OTHER: 'OTHER';
+OUTER_JOIN_TO_ANTI: 'OUTER_JOIN_TO_ANTI';
+OUTER_JOIN_TO_INNER: 'OUTER_JOIN_TO_INNER';
+OUTER: 'OUTER';
+OUTLINE_LEAF: 'OUTLINE_LEAF';
+OUTLINE: 'OUTLINE';
+OUT_OF_LINE: 'OUT_OF_LINE';
+OUT: 'OUT';
+OVERFLOW_NOMOVE: 'OVERFLOW_NOMOVE';
+OVERFLOW: 'OVERFLOW';
+OVERLAPS: 'OVERLAPS';
+OVER: 'OVER';
+OVERRIDING: 'OVERRIDING';
+OWNER: 'OWNER';
+OWNERSHIP: 'OWNERSHIP';
+OWN: 'OWN';
+PACKAGE: 'PACKAGE';
+PACKAGES: 'PACKAGES';
+PARALLEL_ENABLE: 'PARALLEL_ENABLE';
+PARALLEL_INDEX: 'PARALLEL_INDEX';
+PARALLEL: 'PARALLEL';
+PARAMETERFILE: 'PARAMETERFILE';
+PARAMETERS: 'PARAMETERS';
+PARAM: 'PARAM';
+PARENT: 'PARENT';
+PARITY: 'PARITY';
+PARTIAL_JOIN: 'PARTIAL_JOIN';
+PARTIALLY: 'PARTIALLY';
+PARTIAL: 'PARTIAL';
+PARTIAL_ROLLUP_PUSHDOWN: 'PARTIAL_ROLLUP_PUSHDOWN';
+PARTITION_HASH: 'PARTITION_HASH';
+PARTITION_LIST: 'PARTITION_LIST';
+PARTITION: 'PARTITION';
+PARTITION_RANGE: 'PARTITION_RANGE';
+PARTITIONS: 'PARTITIONS';
+PARTNUMINST: 'PART$NUM$INST';
+PASSING: 'PASSING';
+PASSWORD_GRACE_TIME: 'PASSWORD_GRACE_TIME';
+PASSWORD_LIFE_TIME: 'PASSWORD_LIFE_TIME';
+PASSWORD_LOCK_TIME: 'PASSWORD_LOCK_TIME';
+PASSWORD: 'PASSWORD';
+PASSWORD_REUSE_MAX: 'PASSWORD_REUSE_MAX';
+PASSWORD_REUSE_TIME: 'PASSWORD_REUSE_TIME';
+PASSWORD_VERIFY_FUNCTION: 'PASSWORD_VERIFY_FUNCTION';
+PAST: 'PAST';
+PATCH: 'PATCH';
+PATH: 'PATH';
+PATH_PREFIX: 'PATH_PREFIX';
+PATHS: 'PATHS';
+PATTERN: 'PATTERN';
+PBL_HS_BEGIN: 'PBL_HS_BEGIN';
+PBL_HS_END: 'PBL_HS_END';
+PCTFREE: 'PCTFREE';
+PCTINCREASE: 'PCTINCREASE';
+PCTTHRESHOLD: 'PCTTHRESHOLD';
+PCTUSED: 'PCTUSED';
+PCTVERSION: 'PCTVERSION';
+PENDING: 'PENDING';
+PERCENT_FOUND: '%' SPACE* 'FOUND';
+PERCENT_ISOPEN: '%' SPACE* 'ISOPEN';
+PERCENT_NOTFOUND: '%' SPACE* 'NOTFOUND';
+PERCENT_KEYWORD: 'PERCENT';
+PERCENT_RANKM: 'PERCENT_RANKM';
+PERCENT_ROWCOUNT: '%' SPACE* 'ROWCOUNT';
+PERCENT_ROWTYPE: '%' SPACE* 'ROWTYPE';
+PERCENT_TYPE: '%' SPACE* 'TYPE';
+PERFORMANCE: 'PERFORMANCE';
+PERIOD_KEYWORD: 'PERIOD';
+PERMANENT: 'PERMANENT';
+PERMISSION: 'PERMISSION';
+PERMUTE: 'PERMUTE';
+PER: 'PER';
+PFILE: 'PFILE';
+PHYSICAL: 'PHYSICAL';
+PIKEY: 'PIKEY';
+PIPELINED: 'PIPELINED';
+PIPE: 'PIPE';
+PIV_GB: 'PIV_GB';
+PIVOT: 'PIVOT';
+PIV_SSF: 'PIV_SSF';
+PLACE_DISTINCT: 'PLACE_DISTINCT';
+PLACE_GROUP_BY: 'PLACE_GROUP_BY';
+PLAN: 'PLAN';
+PLSCOPE_SETTINGS: 'PLSCOPE_SETTINGS';
+PLS_INTEGER: 'PLS_INTEGER';
+PLSQL_CCFLAGS: 'PLSQL_CCFLAGS';
+PLSQL_CODE_TYPE: 'PLSQL_CODE_TYPE';
+PLSQL_DEBUG: 'PLSQL_DEBUG';
+PLSQL_OPTIMIZE_LEVEL: 'PLSQL_OPTIMIZE_LEVEL';
+PLSQL_WARNINGS: 'PLSQL_WARNINGS';
+PLUGGABLE: 'PLUGGABLE';
+POINT: 'POINT';
+POLICY: 'POLICY';
+POOL_16K: 'POOL_16K';
+POOL_2K: 'POOL_2K';
+POOL_32K: 'POOL_32K';
+POOL_4K: 'POOL_4K';
+POOL_8K: 'POOL_8K';
+POSITIVEN: 'POSITIVEN';
+POSITIVE: 'POSITIVE';
+POST_TRANSACTION: 'POST_TRANSACTION';
+POWERMULTISET_BY_CARDINALITY: 'POWERMULTISET_BY_CARDINALITY';
+POWERMULTISET: 'POWERMULTISET';
+POWER: 'POWER';
+PQ_CONCURRENT_UNION: 'PQ_CONCURRENT_UNION';
+PQ_DISTRIBUTE: 'PQ_DISTRIBUTE';
+PQ_DISTRIBUTE_WINDOW: 'PQ_DISTRIBUTE_WINDOW';
+PQ_FILTER: 'PQ_FILTER';
+PQ_MAP: 'PQ_MAP';
+PQ_NOMAP: 'PQ_NOMAP';
+PQ_REPLICATE: 'PQ_REPLICATE';
+PQ_SKEW: 'PQ_SKEW';
+PRAGMA: 'PRAGMA';
+PREBUILT: 'PREBUILT';
+PRECEDES: 'PRECEDES';
+PRECEDING: 'PRECEDING';
+PRECISION: 'PRECISION';
+PRECOMPUTE_SUBQUERY: 'PRECOMPUTE_SUBQUERY';
+PREDICATE_REORDERS: 'PREDICATE_REORDERS';
+PRELOAD: 'PRELOAD';
+PREPARE: 'PREPARE';
+PRESENTNNV: 'PRESENTNNV';
+PRESENT: 'PRESENT';
+PRESENTV: 'PRESENTV';
+PRESERVE_OID: 'PRESERVE_OID';
+PRESERVE: 'PRESERVE';
+PRETTY: 'PRETTY';
+PREVIOUS: 'PREVIOUS';
+PREV: 'PREV';
+PRIMARY: 'PRIMARY';
+PRINTBLOBTOCLOB: 'PRINTBLOBTOCLOB';
+PRIORITY: 'PRIORITY';
+PRIOR: 'PRIOR';
+PRIVATE: 'PRIVATE';
+PRIVATE_SGA: 'PRIVATE_SGA';
+PRIVILEGED: 'PRIVILEGED';
+PRIVILEGE: 'PRIVILEGE';
+PRIVILEGES: 'PRIVILEGES';
+PROCEDURAL: 'PROCEDURAL';
+PROCEDURE: 'PROCEDURE';
+PROCESS: 'PROCESS';
+PROFILE: 'PROFILE';
+PROGRAM: 'PROGRAM';
+PROJECT: 'PROJECT';
+PROPAGATE: 'PROPAGATE';
+PROTECTED: 'PROTECTED';
+PROTECTION: 'PROTECTION';
+PROXY: 'PROXY';
+PRUNING: 'PRUNING';
+PUBLIC: 'PUBLIC';
+PULL_PRED: 'PULL_PRED';
+PURGE: 'PURGE';
+PUSH_PRED: 'PUSH_PRED';
+PUSH_SUBQ: 'PUSH_SUBQ';
+PX_FAULT_TOLERANCE: 'PX_FAULT_TOLERANCE';
+PX_GRANULE: 'PX_GRANULE';
+PX_JOIN_FILTER: 'PX_JOIN_FILTER';
+QB_NAME: 'QB_NAME';
+QUERY_BLOCK: 'QUERY_BLOCK';
+QUERY: 'QUERY';
+QUEUE_CURR: 'QUEUE_CURR';
+QUEUE: 'QUEUE';
+QUEUE_ROWP: 'QUEUE_ROWP';
+QUIESCE: 'QUIESCE';
+QUORUM: 'QUORUM';
+QUOTA: 'QUOTA';
+RAISE: 'RAISE';
+RANDOM_LOCAL: 'RANDOM_LOCAL';
+RANDOM: 'RANDOM';
+RANGE: 'RANGE';
+RANKM: 'RANKM';
+RAPIDLY: 'RAPIDLY';
+RAW: 'RAW';
+RAWTOHEX: 'RAWTOHEX';
+RAWTONHEX: 'RAWTONHEX';
+RBA: 'RBA';
+RBO_OUTLINE: 'RBO_OUTLINE';
+RDBA: 'RDBA';
+READ: 'READ';
+READS: 'READS';
+REALM: 'REALM';
+REAL: 'REAL';
+REBALANCE: 'REBALANCE';
+REBUILD: 'REBUILD';
+RECORD: 'RECORD';
+RECORDS_PER_BLOCK: 'RECORDS_PER_BLOCK';
+RECOVERABLE: 'RECOVERABLE';
+RECOVER: 'RECOVER';
+RECOVERY: 'RECOVERY';
+RECYCLEBIN: 'RECYCLEBIN';
+RECYCLE: 'RECYCLE';
+REDACTION: 'REDACTION';
+REDEFINE: 'REDEFINE';
+REDO: 'REDO';
+REDUCED: 'REDUCED';
+REDUNDANCY: 'REDUNDANCY';
+REF_CASCADE_CURSOR: 'REF_CASCADE_CURSOR';
+REFERENCED: 'REFERENCED';
+REFERENCE: 'REFERENCE';
+REFERENCES: 'REFERENCES';
+REFERENCING: 'REFERENCING';
+REF: 'REF';
+REFRESH: 'REFRESH';
+REFTOHEX: 'REFTOHEX';
+REGEXP_COUNT: 'REGEXP_COUNT';
+REGEXP_INSTR: 'REGEXP_INSTR';
+REGEXP_LIKE: 'REGEXP_LIKE';
+REGEXP_REPLACE: 'REGEXP_REPLACE';
+REGEXP_SUBSTR: 'REGEXP_SUBSTR';
+REGISTER: 'REGISTER';
+REGR_AVGX: 'REGR_AVGX';
+REGR_AVGY: 'REGR_AVGY';
+REGR_COUNT: 'REGR_COUNT';
+REGR_INTERCEPT: 'REGR_INTERCEPT';
+REGR_R2: 'REGR_R2';
+REGR_SLOPE: 'REGR_SLOPE';
+REGR_SXX: 'REGR_SXX';
+REGR_SXY: 'REGR_SXY';
+REGR_SYY: 'REGR_SYY';
+REGULAR: 'REGULAR';
+REJECT: 'REJECT';
+REKEY: 'REKEY';
+RELATIONAL: 'RELATIONAL';
+RELIES_ON: 'RELIES_ON';
+RELOCATE: 'RELOCATE';
+RELY: 'RELY';
+REMAINDER: 'REMAINDER';
+REMOTE_MAPPED: 'REMOTE_MAPPED';
+REMOVE: 'REMOVE';
+RENAME: 'RENAME';
+REPAIR: 'REPAIR';
+REPEAT: 'REPEAT';
+REPLACE: 'REPLACE';
+REPLICATION: 'REPLICATION';
+REQUIRED: 'REQUIRED';
+RESETLOGS: 'RESETLOGS';
+RESET: 'RESET';
+RESIZE: 'RESIZE';
+RESOLVE: 'RESOLVE';
+RESOLVER: 'RESOLVER';
+RESOURCE: 'RESOURCE';
+RESPECT: 'RESPECT';
+RESTART: 'RESTART';
+RESTORE_AS_INTERVALS: 'RESTORE_AS_INTERVALS';
+RESTORE: 'RESTORE';
+RESTRICT_ALL_REF_CONS: 'RESTRICT_ALL_REF_CONS';
+RESTRICTED: 'RESTRICTED';
+RESTRICT_REFERENCES: 'RESTRICT_REFERENCES';
+RESTRICT: 'RESTRICT';
+RESULT_CACHE: 'RESULT_CACHE';
+RESULT: 'RESULT';
+RESUMABLE: 'RESUMABLE';
+RESUME: 'RESUME';
+RETENTION: 'RETENTION';
+RETRY_ON_ROW_CHANGE: 'RETRY_ON_ROW_CHANGE';
+RETURNING: 'RETURNING';
+RETURN: 'RETURN';
+REUSE: 'REUSE';
+REVERSE: 'REVERSE';
+REVOKE: 'REVOKE';
+REWRITE_OR_ERROR: 'REWRITE_OR_ERROR';
+REWRITE: 'REWRITE';
+RIGHT: 'RIGHT';
+ROLE: 'ROLE';
+ROLESET: 'ROLESET';
+ROLES: 'ROLES';
+ROLLBACK: 'ROLLBACK';
+ROLLING: 'ROLLING';
+ROLLUP: 'ROLLUP';
+ROWDEPENDENCIES: 'ROWDEPENDENCIES';
+ROWID_MAPPING_TABLE: 'ROWID_MAPPING_TABLE';
+ROWID: 'ROWID';
+ROWIDTOCHAR: 'ROWIDTOCHAR';
+ROWIDTONCHAR: 'ROWIDTONCHAR';
+ROW_LENGTH: 'ROW_LENGTH';
+ROWNUM: 'ROWNUM';
+ROW: 'ROW';
+ROWS: 'ROWS';
+RPAD: 'RPAD';
+RTRIM: 'RTRIM';
+RULE: 'RULE';
+RULES: 'RULES';
+RUNNING: 'RUNNING';
+SALT: 'SALT';
+SAMPLE: 'SAMPLE';
+SAVE_AS_INTERVALS: 'SAVE_AS_INTERVALS';
+SAVEPOINT: 'SAVEPOINT';
+SAVE: 'SAVE';
+SB4: 'SB4';
+SCALE_ROWS: 'SCALE_ROWS';
+SCALE: 'SCALE';
+SCAN_INSTANCES: 'SCAN_INSTANCES';
+SCAN: 'SCAN';
+SCHEDULER: 'SCHEDULER';
+SCHEMACHECK: 'SCHEMACHECK';
+SCHEMA: 'SCHEMA';
+SCN_ASCENDING: 'SCN_ASCENDING';
+SCN: 'SCN';
+SCOPE: 'SCOPE';
+SCRUB: 'SCRUB';
+SD_ALL: 'SD_ALL';
+SD_INHIBIT: 'SD_INHIBIT';
+SDO_GEOM_MBR: 'SDO_GEOM_MBR';
+SD_SHOW: 'SD_SHOW';
+SEARCH: 'SEARCH';
+SECOND: 'SECOND';
+SECRET: 'SECRET';
+SECUREFILE_DBA: 'SECUREFILE_DBA';
+SECUREFILE: 'SECUREFILE';
+SECURITY: 'SECURITY';
+SEED: 'SEED';
+SEG_BLOCK: 'SEG_BLOCK';
+SEG_FILE: 'SEG_FILE';
+SEGMENT: 'SEGMENT';
+SELECTIVITY: 'SELECTIVITY';
+SELECT: 'SELECT';
+SELF: 'SELF';
+SEMIJOIN_DRIVER: 'SEMIJOIN_DRIVER';
+SEMIJOIN: 'SEMIJOIN';
+SEMI_TO_INNER: 'SEMI_TO_INNER';
+SEQUENCED: 'SEQUENCED';
+SEQUENCE: 'SEQUENCE';
+SEQUENTIAL: 'SEQUENTIAL';
+SEQ: 'SEQ';
+SERIALIZABLE: 'SERIALIZABLE';
+SERIALLY_REUSABLE: 'SERIALLY_REUSABLE';
+SERIAL: 'SERIAL';
+SERVERERROR: 'SERVERERROR';
+SERVICE_NAME_CONVERT: 'SERVICE_NAME_CONVERT';
+SERVICES: 'SERVICES';
+SESSION_CACHED_CURSORS: 'SESSION_CACHED_CURSORS';
+SESSION: 'SESSION';
+SESSIONS_PER_USER: 'SESSIONS_PER_USER';
+SESSIONTIMEZONE: 'SESSIONTIMEZONE';
+SESSIONTZNAME: 'SESSIONTZNAME';
+SET: 'SET';
+SETS: 'SETS';
+SETTINGS: 'SETTINGS';
+SET_TO_JOIN: 'SET_TO_JOIN';
+SEVERE: 'SEVERE';
+SHARED_POOL: 'SHARED_POOL';
+SHARED: 'SHARED';
+SHARE: 'SHARE';
+SHARING: 'SHARING';
+SHELFLIFE: 'SHELFLIFE';
+SHOW: 'SHOW';
+SHRINK: 'SHRINK';
+SHUTDOWN: 'SHUTDOWN';
+SIBLINGS: 'SIBLINGS';
+SID: 'SID';
+SIGNAL_COMPONENT: 'SIGNAL_COMPONENT';
+SIGNAL_FUNCTION: 'SIGNAL_FUNCTION';
+SIGN: 'SIGN';
+SIGNTYPE: 'SIGNTYPE';
+SIMPLE_INTEGER: 'SIMPLE_INTEGER';
+SIMPLE: 'SIMPLE';
+SINGLE: 'SINGLE';
+SINGLETASK: 'SINGLETASK';
+SINH: 'SINH';
+SIN: 'SIN';
+SIZE: 'SIZE';
+SKIP_EXT_OPTIMIZER: 'SKIP_EXT_OPTIMIZER';
+SKIP_ : 'SKIP';
+SKIP_UNQ_UNUSABLE_IDX: 'SKIP_UNQ_UNUSABLE_IDX';
+SKIP_UNUSABLE_INDEXES: 'SKIP_UNUSABLE_INDEXES';
+SMALLFILE: 'SMALLFILE';
+SMALLINT: 'SMALLINT';
+SNAPSHOT: 'SNAPSHOT';
+SOME: 'SOME';
+SORT: 'SORT';
+SOUNDEX: 'SOUNDEX';
+SOURCE_FILE_DIRECTORY: 'SOURCE_FILE_DIRECTORY';
+SOURCE_FILE_NAME_CONVERT: 'SOURCE_FILE_NAME_CONVERT';
+SOURCE: 'SOURCE';
+SPACE_KEYWORD: 'SPACE';
+SPECIFICATION: 'SPECIFICATION';
+SPFILE: 'SPFILE';
+SPLIT: 'SPLIT';
+SPREADSHEET: 'SPREADSHEET';
+SQLDATA: 'SQLDATA';
+SQLERROR: 'SQLERROR';
+SQLLDR: 'SQLLDR';
+SQL: 'SQL';
+SQL_TRACE: 'SQL_TRACE';
+SQL_TRANSLATION_PROFILE: 'SQL_TRANSLATION_PROFILE';
+SQRT: 'SQRT';
+STALE: 'STALE';
+STANDALONE: 'STANDALONE';
+STANDARD_HASH: 'STANDARD_HASH';
+STANDBY_MAX_DATA_DELAY: 'STANDBY_MAX_DATA_DELAY';
+STANDBYS: 'STANDBYS';
+STANDBY: 'STANDBY';
+STAR: 'STAR';
+STAR_TRANSFORMATION: 'STAR_TRANSFORMATION';
+START: 'START';
+STARTUP: 'STARTUP';
+STATEMENT_ID: 'STATEMENT_ID';
+STATEMENT_QUEUING: 'STATEMENT_QUEUING';
+STATEMENTS: 'STATEMENTS';
+STATEMENT: 'STATEMENT';
+STATE: 'STATE';
+STATIC: 'STATIC';
+STATISTICS: 'STATISTICS';
+STATS_BINOMIAL_TEST: 'STATS_BINOMIAL_TEST';
+STATS_CROSSTAB: 'STATS_CROSSTAB';
+STATS_F_TEST: 'STATS_F_TEST';
+STATS_KS_TEST: 'STATS_KS_TEST';
+STATS_MODE: 'STATS_MODE';
+STATS_MW_TEST: 'STATS_MW_TEST';
+STATS_ONE_WAY_ANOVA: 'STATS_ONE_WAY_ANOVA';
+STATS_T_TEST_INDEP: 'STATS_T_TEST_INDEP';
+STATS_T_TEST_INDEPU: 'STATS_T_TEST_INDEPU';
+STATS_T_TEST_ONE: 'STATS_T_TEST_ONE';
+STATS_T_TEST_PAIRED: 'STATS_T_TEST_PAIRED';
+STATS_WSR_TEST: 'STATS_WSR_TEST';
+STDDEV_POP: 'STDDEV_POP';
+STDDEV_SAMP: 'STDDEV_SAMP';
+STOP: 'STOP';
+STORAGE: 'STORAGE';
+STORE: 'STORE';
+STREAMS: 'STREAMS';
+STREAM: 'STREAM';
+STRICT: 'STRICT';
+STRING: 'STRING';
+STRIPE_COLUMNS: 'STRIPE_COLUMNS';
+STRIPE_WIDTH: 'STRIPE_WIDTH';
+STRIP: 'STRIP';
+STRUCTURE: 'STRUCTURE';
+SUBMULTISET: 'SUBMULTISET';
+SUBPARTITION_REL: 'SUBPARTITION_REL';
+SUBPARTITIONS: 'SUBPARTITIONS';
+SUBPARTITION: 'SUBPARTITION';
+SUBQUERIES: 'SUBQUERIES';
+SUBQUERY_PRUNING: 'SUBQUERY_PRUNING';
+SUBSCRIBE: 'SUBSCRIBE';
+SUBSET: 'SUBSET';
+SUBSTITUTABLE: 'SUBSTITUTABLE';
+SUBSTR2: 'SUBSTR2';
+SUBSTR4: 'SUBSTR4';
+SUBSTRB: 'SUBSTRB';
+SUBSTRC: 'SUBSTRC';
+SUBTYPE: 'SUBTYPE';
+SUCCESSFUL: 'SUCCESSFUL';
+SUCCESS: 'SUCCESS';
+SUMMARY: 'SUMMARY';
+SUPPLEMENTAL: 'SUPPLEMENTAL';
+SUSPEND: 'SUSPEND';
+SWAP_JOIN_INPUTS: 'SWAP_JOIN_INPUTS';
+SWITCHOVER: 'SWITCHOVER';
+SWITCH: 'SWITCH';
+SYNCHRONOUS: 'SYNCHRONOUS';
+SYNC: 'SYNC';
+SYNONYM: 'SYNONYM';
+SYSASM: 'SYSASM';
+SYS_AUDIT: 'SYS_AUDIT';
+SYSAUX: 'SYSAUX';
+SYSBACKUP: 'SYSBACKUP';
+SYS_CHECKACL: 'SYS_CHECKACL';
+SYS_CHECK_PRIVILEGE: 'SYS_CHECK_PRIVILEGE';
+SYS_CONNECT_BY_PATH: 'SYS_CONNECT_BY_PATH';
+SYS_CONTEXT: 'SYS_CONTEXT';
+SYSDATE: 'SYSDATE';
+SYSDBA: 'SYSDBA';
+SYS_DBURIGEN: 'SYS_DBURIGEN';
+SYSDG: 'SYSDG';
+SYS_DL_CURSOR: 'SYS_DL_CURSOR';
+SYS_DM_RXFORM_CHR: 'SYS_DM_RXFORM_CHR';
+SYS_DM_RXFORM_NUM: 'SYS_DM_RXFORM_NUM';
+SYS_DOM_COMPARE: 'SYS_DOM_COMPARE';
+SYS_DST_PRIM2SEC: 'SYS_DST_PRIM2SEC';
+SYS_DST_SEC2PRIM: 'SYS_DST_SEC2PRIM';
+SYS_ET_BFILE_TO_RAW: 'SYS_ET_BFILE_TO_RAW';
+SYS_ET_BLOB_TO_IMAGE: 'SYS_ET_BLOB_TO_IMAGE';
+SYS_ET_IMAGE_TO_BLOB: 'SYS_ET_IMAGE_TO_BLOB';
+SYS_ET_RAW_TO_BFILE: 'SYS_ET_RAW_TO_BFILE';
+SYS_EXTPDTXT: 'SYS_EXTPDTXT';
+SYS_EXTRACT_UTC: 'SYS_EXTRACT_UTC';
+SYS_FBT_INSDEL: 'SYS_FBT_INSDEL';
+SYS_FILTER_ACLS: 'SYS_FILTER_ACLS';
+SYS_FNMATCHES: 'SYS_FNMATCHES';
+SYS_FNREPLACE: 'SYS_FNREPLACE';
+SYS_GET_ACLIDS: 'SYS_GET_ACLIDS';
+SYS_GET_COL_ACLIDS: 'SYS_GET_COL_ACLIDS';
+SYS_GET_PRIVILEGES: 'SYS_GET_PRIVILEGES';
+SYS_GETTOKENID: 'SYS_GETTOKENID';
+SYS_GETXTIVAL: 'SYS_GETXTIVAL';
+SYS_GUID: 'SYS_GUID';
+SYSGUID: 'SYSGUID';
+SYSKM: 'SYSKM';
+SYS_MAKE_XMLNODEID: 'SYS_MAKE_XMLNODEID';
+SYS_MAKEXML: 'SYS_MAKEXML';
+SYS_MKXMLATTR: 'SYS_MKXMLATTR';
+SYS_MKXTI: 'SYS_MKXTI';
+SYSOBJ: 'SYSOBJ';
+SYS_OP_ADT2BIN: 'SYS_OP_ADT2BIN';
+SYS_OP_ADTCONS: 'SYS_OP_ADTCONS';
+SYS_OP_ALSCRVAL: 'SYS_OP_ALSCRVAL';
+SYS_OP_ATG: 'SYS_OP_ATG';
+SYS_OP_BIN2ADT: 'SYS_OP_BIN2ADT';
+SYS_OP_BITVEC: 'SYS_OP_BITVEC';
+SYS_OP_BL2R: 'SYS_OP_BL2R';
+SYS_OP_BLOOM_FILTER_LIST: 'SYS_OP_BLOOM_FILTER_LIST';
+SYS_OP_BLOOM_FILTER: 'SYS_OP_BLOOM_FILTER';
+SYS_OP_C2C: 'SYS_OP_C2C';
+SYS_OP_CAST: 'SYS_OP_CAST';
+SYS_OP_CEG: 'SYS_OP_CEG';
+SYS_OP_CL2C: 'SYS_OP_CL2C';
+SYS_OP_COMBINED_HASH: 'SYS_OP_COMBINED_HASH';
+SYS_OP_COMP: 'SYS_OP_COMP';
+SYS_OP_CONVERT: 'SYS_OP_CONVERT';
+SYS_OP_COUNTCHG: 'SYS_OP_COUNTCHG';
+SYS_OP_CSCONV: 'SYS_OP_CSCONV';
+SYS_OP_CSCONVTEST: 'SYS_OP_CSCONVTEST';
+SYS_OP_CSR: 'SYS_OP_CSR';
+SYS_OP_CSX_PATCH: 'SYS_OP_CSX_PATCH';
+SYS_OP_CYCLED_SEQ: 'SYS_OP_CYCLED_SEQ';
+SYS_OP_DECOMP: 'SYS_OP_DECOMP';
+SYS_OP_DESCEND: 'SYS_OP_DESCEND';
+SYS_OP_DISTINCT: 'SYS_OP_DISTINCT';
+SYS_OP_DRA: 'SYS_OP_DRA';
+SYS_OP_DUMP: 'SYS_OP_DUMP';
+SYS_OP_DV_CHECK: 'SYS_OP_DV_CHECK';
+SYS_OP_ENFORCE_NOT_NULL: 'SYS_OP_ENFORCE_NOT_NULL$';
+SYSOPER: 'SYSOPER';
+SYS_OP_EXTRACT: 'SYS_OP_EXTRACT';
+SYS_OP_GROUPING: 'SYS_OP_GROUPING';
+SYS_OP_GUID: 'SYS_OP_GUID';
+SYS_OP_HASH: 'SYS_OP_HASH';
+SYS_OP_IIX: 'SYS_OP_IIX';
+SYS_OP_ITR: 'SYS_OP_ITR';
+SYS_OP_KEY_VECTOR_CREATE: 'SYS_OP_KEY_VECTOR_CREATE';
+SYS_OP_KEY_VECTOR_FILTER_LIST: 'SYS_OP_KEY_VECTOR_FILTER_LIST';
+SYS_OP_KEY_VECTOR_FILTER: 'SYS_OP_KEY_VECTOR_FILTER';
+SYS_OP_KEY_VECTOR_SUCCEEDED: 'SYS_OP_KEY_VECTOR_SUCCEEDED';
+SYS_OP_KEY_VECTOR_USE: 'SYS_OP_KEY_VECTOR_USE';
+SYS_OP_LBID: 'SYS_OP_LBID';
+SYS_OP_LOBLOC2BLOB: 'SYS_OP_LOBLOC2BLOB';
+SYS_OP_LOBLOC2CLOB: 'SYS_OP_LOBLOC2CLOB';
+SYS_OP_LOBLOC2ID: 'SYS_OP_LOBLOC2ID';
+SYS_OP_LOBLOC2NCLOB: 'SYS_OP_LOBLOC2NCLOB';
+SYS_OP_LOBLOC2TYP: 'SYS_OP_LOBLOC2TYP';
+SYS_OP_LSVI: 'SYS_OP_LSVI';
+SYS_OP_LVL: 'SYS_OP_LVL';
+SYS_OP_MAKEOID: 'SYS_OP_MAKEOID';
+SYS_OP_MAP_NONNULL: 'SYS_OP_MAP_NONNULL';
+SYS_OP_MSR: 'SYS_OP_MSR';
+SYS_OP_NICOMBINE: 'SYS_OP_NICOMBINE';
+SYS_OP_NIEXTRACT: 'SYS_OP_NIEXTRACT';
+SYS_OP_NII: 'SYS_OP_NII';
+SYS_OP_NIX: 'SYS_OP_NIX';
+SYS_OP_NOEXPAND: 'SYS_OP_NOEXPAND';
+SYS_OP_NTCIMG: 'SYS_OP_NTCIMG$';
+SYS_OP_NUMTORAW: 'SYS_OP_NUMTORAW';
+SYS_OP_OIDVALUE: 'SYS_OP_OIDVALUE';
+SYS_OP_OPNSIZE: 'SYS_OP_OPNSIZE';
+SYS_OP_PAR_1: 'SYS_OP_PAR_1';
+SYS_OP_PARGID_1: 'SYS_OP_PARGID_1';
+SYS_OP_PARGID: 'SYS_OP_PARGID';
+SYS_OP_PAR: 'SYS_OP_PAR';
+SYS_OP_PART_ID: 'SYS_OP_PART_ID';
+SYS_OP_PIVOT: 'SYS_OP_PIVOT';
+SYS_OP_R2O: 'SYS_OP_R2O';
+SYS_OP_RAWTONUM: 'SYS_OP_RAWTONUM';
+SYS_OP_RDTM: 'SYS_OP_RDTM';
+SYS_OP_REF: 'SYS_OP_REF';
+SYS_OP_RMTD: 'SYS_OP_RMTD';
+SYS_OP_ROWIDTOOBJ: 'SYS_OP_ROWIDTOOBJ';
+SYS_OP_RPB: 'SYS_OP_RPB';
+SYS_OPTLOBPRBSC: 'SYS_OPTLOBPRBSC';
+SYS_OP_TOSETID: 'SYS_OP_TOSETID';
+SYS_OP_TPR: 'SYS_OP_TPR';
+SYS_OP_TRTB: 'SYS_OP_TRTB';
+SYS_OPTXICMP: 'SYS_OPTXICMP';
+SYS_OPTXQCASTASNQ: 'SYS_OPTXQCASTASNQ';
+SYS_OP_UNDESCEND: 'SYS_OP_UNDESCEND';
+SYS_OP_VECAND: 'SYS_OP_VECAND';
+SYS_OP_VECBIT: 'SYS_OP_VECBIT';
+SYS_OP_VECOR: 'SYS_OP_VECOR';
+SYS_OP_VECXOR: 'SYS_OP_VECXOR';
+SYS_OP_VERSION: 'SYS_OP_VERSION';
+SYS_OP_VREF: 'SYS_OP_VREF';
+SYS_OP_VVD: 'SYS_OP_VVD';
+SYS_OP_XMLCONS_FOR_CSX: 'SYS_OP_XMLCONS_FOR_CSX';
+SYS_OP_XPTHATG: 'SYS_OP_XPTHATG';
+SYS_OP_XPTHIDX: 'SYS_OP_XPTHIDX';
+SYS_OP_XPTHOP: 'SYS_OP_XPTHOP';
+SYS_OP_XTXT2SQLT: 'SYS_OP_XTXT2SQLT';
+SYS_OP_ZONE_ID: 'SYS_OP_ZONE_ID';
+SYS_ORDERKEY_DEPTH: 'SYS_ORDERKEY_DEPTH';
+SYS_ORDERKEY_MAXCHILD: 'SYS_ORDERKEY_MAXCHILD';
+SYS_ORDERKEY_PARENT: 'SYS_ORDERKEY_PARENT';
+SYS_PARALLEL_TXN: 'SYS_PARALLEL_TXN';
+SYS_PATHID_IS_ATTR: 'SYS_PATHID_IS_ATTR';
+SYS_PATHID_IS_NMSPC: 'SYS_PATHID_IS_NMSPC';
+SYS_PATHID_LASTNAME: 'SYS_PATHID_LASTNAME';
+SYS_PATHID_LASTNMSPC: 'SYS_PATHID_LASTNMSPC';
+SYS_PATH_REVERSE: 'SYS_PATH_REVERSE';
+SYS_PXQEXTRACT: 'SYS_PXQEXTRACT';
+SYS_RAW_TO_XSID: 'SYS_RAW_TO_XSID';
+SYS_RID_ORDER: 'SYS_RID_ORDER';
+SYS_ROW_DELTA: 'SYS_ROW_DELTA';
+SYS_SC_2_XMLT: 'SYS_SC_2_XMLT';
+SYS_SYNRCIREDO: 'SYS_SYNRCIREDO';
+SYSTEM_DEFINED: 'SYSTEM_DEFINED';
+SYSTEM: 'SYSTEM';
+SYSTIMESTAMP: 'SYSTIMESTAMP';
+SYS_TYPEID: 'SYS_TYPEID';
+SYS_UMAKEXML: 'SYS_UMAKEXML';
+SYS_XMLANALYZE: 'SYS_XMLANALYZE';
+SYS_XMLCONTAINS: 'SYS_XMLCONTAINS';
+SYS_XMLCONV: 'SYS_XMLCONV';
+SYS_XMLEXNSURI: 'SYS_XMLEXNSURI';
+SYS_XMLGEN: 'SYS_XMLGEN';
+SYS_XMLI_LOC_ISNODE: 'SYS_XMLI_LOC_ISNODE';
+SYS_XMLI_LOC_ISTEXT: 'SYS_XMLI_LOC_ISTEXT';
+SYS_XMLINSTR: 'SYS_XMLINSTR';
+SYS_XMLLOCATOR_GETSVAL: 'SYS_XMLLOCATOR_GETSVAL';
+SYS_XMLNODEID_GETCID: 'SYS_XMLNODEID_GETCID';
+SYS_XMLNODEID_GETLOCATOR: 'SYS_XMLNODEID_GETLOCATOR';
+SYS_XMLNODEID_GETOKEY: 'SYS_XMLNODEID_GETOKEY';
+SYS_XMLNODEID_GETPATHID: 'SYS_XMLNODEID_GETPATHID';
+SYS_XMLNODEID_GETPTRID: 'SYS_XMLNODEID_GETPTRID';
+SYS_XMLNODEID_GETRID: 'SYS_XMLNODEID_GETRID';
+SYS_XMLNODEID_GETSVAL: 'SYS_XMLNODEID_GETSVAL';
+SYS_XMLNODEID_GETTID: 'SYS_XMLNODEID_GETTID';
+SYS_XMLNODEID: 'SYS_XMLNODEID';
+SYS_XMLT_2_SC: 'SYS_XMLT_2_SC';
+SYS_XMLTRANSLATE: 'SYS_XMLTRANSLATE';
+SYS_XMLTYPE2SQL: 'SYS_XMLTYPE2SQL';
+SYS_XQ_ASQLCNV: 'SYS_XQ_ASQLCNV';
+SYS_XQ_ATOMCNVCHK: 'SYS_XQ_ATOMCNVCHK';
+SYS_XQBASEURI: 'SYS_XQBASEURI';
+SYS_XQCASTABLEERRH: 'SYS_XQCASTABLEERRH';
+SYS_XQCODEP2STR: 'SYS_XQCODEP2STR';
+SYS_XQCODEPEQ: 'SYS_XQCODEPEQ';
+SYS_XQCON2SEQ: 'SYS_XQCON2SEQ';
+SYS_XQCONCAT: 'SYS_XQCONCAT';
+SYS_XQDELETE: 'SYS_XQDELETE';
+SYS_XQDFLTCOLATION: 'SYS_XQDFLTCOLATION';
+SYS_XQDOC: 'SYS_XQDOC';
+SYS_XQDOCURI: 'SYS_XQDOCURI';
+SYS_XQDURDIV: 'SYS_XQDURDIV';
+SYS_XQED4URI: 'SYS_XQED4URI';
+SYS_XQENDSWITH: 'SYS_XQENDSWITH';
+SYS_XQERRH: 'SYS_XQERRH';
+SYS_XQERR: 'SYS_XQERR';
+SYS_XQESHTMLURI: 'SYS_XQESHTMLURI';
+SYS_XQEXLOBVAL: 'SYS_XQEXLOBVAL';
+SYS_XQEXSTWRP: 'SYS_XQEXSTWRP';
+SYS_XQEXTRACT: 'SYS_XQEXTRACT';
+SYS_XQEXTRREF: 'SYS_XQEXTRREF';
+SYS_XQEXVAL: 'SYS_XQEXVAL';
+SYS_XQFB2STR: 'SYS_XQFB2STR';
+SYS_XQFNBOOL: 'SYS_XQFNBOOL';
+SYS_XQFNCMP: 'SYS_XQFNCMP';
+SYS_XQFNDATIM: 'SYS_XQFNDATIM';
+SYS_XQFNLNAME: 'SYS_XQFNLNAME';
+SYS_XQFNNM: 'SYS_XQFNNM';
+SYS_XQFNNSURI: 'SYS_XQFNNSURI';
+SYS_XQFNPREDTRUTH: 'SYS_XQFNPREDTRUTH';
+SYS_XQFNQNM: 'SYS_XQFNQNM';
+SYS_XQFNROOT: 'SYS_XQFNROOT';
+SYS_XQFORMATNUM: 'SYS_XQFORMATNUM';
+SYS_XQFTCONTAIN: 'SYS_XQFTCONTAIN';
+SYS_XQFUNCR: 'SYS_XQFUNCR';
+SYS_XQGETCONTENT: 'SYS_XQGETCONTENT';
+SYS_XQINDXOF: 'SYS_XQINDXOF';
+SYS_XQINSERT: 'SYS_XQINSERT';
+SYS_XQINSPFX: 'SYS_XQINSPFX';
+SYS_XQIRI2URI: 'SYS_XQIRI2URI';
+SYS_XQLANG: 'SYS_XQLANG';
+SYS_XQLLNMFRMQNM: 'SYS_XQLLNMFRMQNM';
+SYS_XQMKNODEREF: 'SYS_XQMKNODEREF';
+SYS_XQNILLED: 'SYS_XQNILLED';
+SYS_XQNODENAME: 'SYS_XQNODENAME';
+SYS_XQNORMSPACE: 'SYS_XQNORMSPACE';
+SYS_XQNORMUCODE: 'SYS_XQNORMUCODE';
+SYS_XQ_NRNG: 'SYS_XQ_NRNG';
+SYS_XQNSP4PFX: 'SYS_XQNSP4PFX';
+SYS_XQNSPFRMQNM: 'SYS_XQNSPFRMQNM';
+SYS_XQPFXFRMQNM: 'SYS_XQPFXFRMQNM';
+SYS_XQ_PKSQL2XML: 'SYS_XQ_PKSQL2XML';
+SYS_XQPOLYABS: 'SYS_XQPOLYABS';
+SYS_XQPOLYADD: 'SYS_XQPOLYADD';
+SYS_XQPOLYCEL: 'SYS_XQPOLYCEL';
+SYS_XQPOLYCSTBL: 'SYS_XQPOLYCSTBL';
+SYS_XQPOLYCST: 'SYS_XQPOLYCST';
+SYS_XQPOLYDIV: 'SYS_XQPOLYDIV';
+SYS_XQPOLYFLR: 'SYS_XQPOLYFLR';
+SYS_XQPOLYMOD: 'SYS_XQPOLYMOD';
+SYS_XQPOLYMUL: 'SYS_XQPOLYMUL';
+SYS_XQPOLYRND: 'SYS_XQPOLYRND';
+SYS_XQPOLYSQRT: 'SYS_XQPOLYSQRT';
+SYS_XQPOLYSUB: 'SYS_XQPOLYSUB';
+SYS_XQPOLYUMUS: 'SYS_XQPOLYUMUS';
+SYS_XQPOLYUPLS: 'SYS_XQPOLYUPLS';
+SYS_XQPOLYVEQ: 'SYS_XQPOLYVEQ';
+SYS_XQPOLYVGE: 'SYS_XQPOLYVGE';
+SYS_XQPOLYVGT: 'SYS_XQPOLYVGT';
+SYS_XQPOLYVLE: 'SYS_XQPOLYVLE';
+SYS_XQPOLYVLT: 'SYS_XQPOLYVLT';
+SYS_XQPOLYVNE: 'SYS_XQPOLYVNE';
+SYS_XQREF2VAL: 'SYS_XQREF2VAL';
+SYS_XQRENAME: 'SYS_XQRENAME';
+SYS_XQREPLACE: 'SYS_XQREPLACE';
+SYS_XQRESVURI: 'SYS_XQRESVURI';
+SYS_XQRNDHALF2EVN: 'SYS_XQRNDHALF2EVN';
+SYS_XQRSLVQNM: 'SYS_XQRSLVQNM';
+SYS_XQRYENVPGET: 'SYS_XQRYENVPGET';
+SYS_XQRYVARGET: 'SYS_XQRYVARGET';
+SYS_XQRYWRP: 'SYS_XQRYWRP';
+SYS_XQSEQ2CON4XC: 'SYS_XQSEQ2CON4XC';
+SYS_XQSEQ2CON: 'SYS_XQSEQ2CON';
+SYS_XQSEQDEEPEQ: 'SYS_XQSEQDEEPEQ';
+SYS_XQSEQINSB: 'SYS_XQSEQINSB';
+SYS_XQSEQRM: 'SYS_XQSEQRM';
+SYS_XQSEQRVS: 'SYS_XQSEQRVS';
+SYS_XQSEQSUB: 'SYS_XQSEQSUB';
+SYS_XQSEQTYPMATCH: 'SYS_XQSEQTYPMATCH';
+SYS_XQSTARTSWITH: 'SYS_XQSTARTSWITH';
+SYS_XQSTATBURI: 'SYS_XQSTATBURI';
+SYS_XQSTR2CODEP: 'SYS_XQSTR2CODEP';
+SYS_XQSTRJOIN: 'SYS_XQSTRJOIN';
+SYS_XQSUBSTRAFT: 'SYS_XQSUBSTRAFT';
+SYS_XQSUBSTRBEF: 'SYS_XQSUBSTRBEF';
+SYS_XQTOKENIZE: 'SYS_XQTOKENIZE';
+SYS_XQTREATAS: 'SYS_XQTREATAS';
+SYS_XQ_UPKXML2SQL: 'SYS_XQ_UPKXML2SQL';
+SYS_XQXFORM: 'SYS_XQXFORM';
+SYS_XSID_TO_RAW: 'SYS_XSID_TO_RAW';
+SYS_ZMAP_FILTER: 'SYS_ZMAP_FILTER';
+SYS_ZMAP_REFRESH: 'SYS_ZMAP_REFRESH';
+TABLE_LOOKUP_BY_NL: 'TABLE_LOOKUP_BY_NL';
+TABLESPACE_NO: 'TABLESPACE_NO';
+TABLESPACE: 'TABLESPACE';
+TABLES: 'TABLES';
+TABLE_STATS: 'TABLE_STATS';
+TABLE: 'TABLE';
+TABNO: 'TABNO';
+TAG: 'TAG';
+TANH: 'TANH';
+TAN: 'TAN';
+TBLORIDXPARTNUM: 'TBL$OR$IDX$PART$NUM';
+TEMPFILE: 'TEMPFILE';
+TEMPLATE: 'TEMPLATE';
+TEMPORARY: 'TEMPORARY';
+TEMP_TABLE: 'TEMP_TABLE';
+TEST: 'TEST';
+TEXT: 'TEXT';
+THAN: 'THAN';
+THEN: 'THEN';
+THE: 'THE';
+THREAD: 'THREAD';
+THROUGH: 'THROUGH';
+TIER: 'TIER';
+TIES: 'TIES';
+TIMEOUT: 'TIMEOUT';
+TIMESTAMP_LTZ_UNCONSTRAINED: 'TIMESTAMP_LTZ_UNCONSTRAINED';
+TIMESTAMP: 'TIMESTAMP';
+TIMESTAMP_TZ_UNCONSTRAINED: 'TIMESTAMP_TZ_UNCONSTRAINED';
+TIMESTAMP_UNCONSTRAINED: 'TIMESTAMP_UNCONSTRAINED';
+TIMES: 'TIMES';
+TIME: 'TIME';
+TIMEZONE: 'TIMEZONE';
+TIMEZONE_ABBR: 'TIMEZONE_ABBR';
+TIMEZONE_HOUR: 'TIMEZONE_HOUR';
+TIMEZONE_MINUTE: 'TIMEZONE_MINUTE';
+TIMEZONE_OFFSET: 'TIMEZONE_OFFSET';
+TIMEZONE_REGION: 'TIMEZONE_REGION';
+TIME_ZONE: 'TIME_ZONE';
+TIV_GB: 'TIV_GB';
+TIV_SSF: 'TIV_SSF';
+TO_ACLID: 'TO_ACLID';
+TO_BINARY_DOUBLE: 'TO_BINARY_DOUBLE';
+TO_BINARY_FLOAT: 'TO_BINARY_FLOAT';
+TO_BLOB: 'TO_BLOB';
+TO_CLOB: 'TO_CLOB';
+TO_DSINTERVAL: 'TO_DSINTERVAL';
+TO_LOB: 'TO_LOB';
+TO_MULTI_BYTE: 'TO_MULTI_BYTE';
+TO_NCHAR: 'TO_NCHAR';
+TO_NCLOB: 'TO_NCLOB';
+TO_NUMBER: 'TO_NUMBER';
+TOPLEVEL: 'TOPLEVEL';
+TO_SINGLE_BYTE: 'TO_SINGLE_BYTE';
+TO_TIMESTAMP: 'TO_TIMESTAMP';
+TO_TIMESTAMP_TZ: 'TO_TIMESTAMP_TZ';
+TO_TIME: 'TO_TIME';
+TO_TIME_TZ: 'TO_TIME_TZ';
+TO: 'TO';
+TO_YMINTERVAL: 'TO_YMINTERVAL';
+TRACE: 'TRACE';
+TRACING: 'TRACING';
+TRACKING: 'TRACKING';
+TRAILING: 'TRAILING';
+TRANSACTION: 'TRANSACTION';
+TRANSFORM_DISTINCT_AGG: 'TRANSFORM_DISTINCT_AGG';
+TRANSITIONAL: 'TRANSITIONAL';
+TRANSITION: 'TRANSITION';
+TRANSLATE: 'TRANSLATE';
+TRANSLATION: 'TRANSLATION';
+TREAT: 'TREAT';
+TRIGGERS: 'TRIGGERS';
+TRIGGER: 'TRIGGER';
+TRUE: 'TRUE';
+TRUNCATE: 'TRUNCATE';
+TRUNC: 'TRUNC';
+TRUSTED: 'TRUSTED';
+TRUST: 'TRUST';
+TUNING: 'TUNING';
+TX: 'TX';
+TYPES: 'TYPES';
+TYPE: 'TYPE';
+TZ_OFFSET: 'TZ_OFFSET';
+UB2: 'UB2';
+UBA: 'UBA';
+UCS2: 'UCS2';
+UID: 'UID';
+UNARCHIVED: 'UNARCHIVED';
+UNBOUNDED: 'UNBOUNDED';
+UNBOUND: 'UNBOUND';
+UNCONDITIONAL: 'UNCONDITIONAL';
+UNDER: 'UNDER';
+UNDO: 'UNDO';
+UNDROP: 'UNDROP';
+UNIFORM: 'UNIFORM';
+UNION: 'UNION';
+UNIQUE: 'UNIQUE';
+UNISTR: 'UNISTR';
+UNLIMITED: 'UNLIMITED';
+UNLOAD: 'UNLOAD';
+UNLOCK: 'UNLOCK';
+UNMATCHED: 'UNMATCHED';
+UNNEST_INNERJ_DISTINCT_VIEW: 'UNNEST_INNERJ_DISTINCT_VIEW';
+UNNEST_NOSEMIJ_NODISTINCTVIEW: 'UNNEST_NOSEMIJ_NODISTINCTVIEW';
+UNNEST_SEMIJ_VIEW: 'UNNEST_SEMIJ_VIEW';
+UNNEST: 'UNNEST';
+UNPACKED: 'UNPACKED';
+UNPIVOT: 'UNPIVOT';
+UNPLUG: 'UNPLUG';
+UNPROTECTED: 'UNPROTECTED';
+UNQUIESCE: 'UNQUIESCE';
+UNRECOVERABLE: 'UNRECOVERABLE';
+UNRESTRICTED: 'UNRESTRICTED';
+UNSUBSCRIBE: 'UNSUBSCRIBE';
+UNTIL: 'UNTIL';
+UNUSABLE: 'UNUSABLE';
+UNUSED: 'UNUSED';
+UPDATABLE: 'UPDATABLE';
+UPDATED: 'UPDATED';
+UPDATE: 'UPDATE';
+UPDATEXML: 'UPDATEXML';
+UPD_INDEXES: 'UPD_INDEXES';
+UPD_JOININDEX: 'UPD_JOININDEX';
+UPGRADE: 'UPGRADE';
+UPPER: 'UPPER';
+UPSERT: 'UPSERT';
+UROWID: 'UROWID';
+USABLE: 'USABLE';
+USAGE: 'USAGE';
+USE_ANTI: 'USE_ANTI';
+USE_CONCAT: 'USE_CONCAT';
+USE_CUBE: 'USE_CUBE';
+USE_HASH_AGGREGATION: 'USE_HASH_AGGREGATION';
+USE_HASH_GBY_FOR_PUSHDOWN: 'USE_HASH_GBY_FOR_PUSHDOWN';
+USE_HASH: 'USE_HASH';
+USE_HIDDEN_PARTITIONS: 'USE_HIDDEN_PARTITIONS';
+USE_INVISIBLE_INDEXES: 'USE_INVISIBLE_INDEXES';
+USE_MERGE_CARTESIAN: 'USE_MERGE_CARTESIAN';
+USE_MERGE: 'USE_MERGE';
+USE_NL: 'USE_NL';
+USE_NL_WITH_INDEX: 'USE_NL_WITH_INDEX';
+USE_PRIVATE_OUTLINES: 'USE_PRIVATE_OUTLINES';
+USER_DATA: 'USER_DATA';
+USER_DEFINED: 'USER_DEFINED';
+USERENV: 'USERENV';
+USERGROUP: 'USERGROUP';
+USER_RECYCLEBIN: 'USER_RECYCLEBIN';
+USERS: 'USERS';
+USER_TABLESPACES: 'USER_TABLESPACES';
+USER: 'USER';
+USE_SEMI: 'USE_SEMI';
+USE_STORED_OUTLINES: 'USE_STORED_OUTLINES';
+USE_TTT_FOR_GSETS: 'USE_TTT_FOR_GSETS';
+USE: 'USE';
+USE_VECTOR_AGGREGATION: 'USE_VECTOR_AGGREGATION';
+USE_WEAK_NAME_RESL: 'USE_WEAK_NAME_RESL';
+USING_NO_EXPAND: 'USING_NO_EXPAND';
+USING: 'USING';
+UTF16BE: 'UTF16BE';
+UTF16LE: 'UTF16LE';
+UTF32: 'UTF32';
+UTF8: 'UTF8';
+V1: 'V1';
+V2: 'V2';
+VALIDATE: 'VALIDATE';
+VALIDATION: 'VALIDATION';
+VALID_TIME_END: 'VALID_TIME_END';
+VALUES: 'VALUES';
+VALUE: 'VALUE';
+VARCHAR2: 'VARCHAR2';
+VARCHAR: 'VARCHAR';
+VARIABLE: 'VARIABLE';
+VAR_POP: 'VAR_POP';
+VARRAYS: 'VARRAYS';
+VARRAY: 'VARRAY';
+VAR_SAMP: 'VAR_SAMP';
+VARYING: 'VARYING';
+VECTOR_READ_TRACE: 'VECTOR_READ_TRACE';
+VECTOR_READ: 'VECTOR_READ';
+VECTOR_TRANSFORM_DIMS: 'VECTOR_TRANSFORM_DIMS';
+VECTOR_TRANSFORM_FACT: 'VECTOR_TRANSFORM_FACT';
+VECTOR_TRANSFORM: 'VECTOR_TRANSFORM';
+VERIFIER: 'VERIFIER';
+VERIFY: 'VERIFY';
+VERSIONING: 'VERSIONING';
+VERSIONS_ENDSCN: 'VERSIONS_ENDSCN';
+VERSIONS_ENDTIME: 'VERSIONS_ENDTIME';
+VERSIONS_OPERATION: 'VERSIONS_OPERATION';
+VERSIONS_STARTSCN: 'VERSIONS_STARTSCN';
+VERSIONS_STARTTIME: 'VERSIONS_STARTTIME';
+VERSIONS: 'VERSIONS';
+VERSIONS_XID: 'VERSIONS_XID';
+VERSION: 'VERSION';
+VIEW: 'VIEW';
+VIOLATION: 'VIOLATION';
+VIRTUAL: 'VIRTUAL';
+VISIBILITY: 'VISIBILITY';
+VISIBLE: 'VISIBLE';
+VOLUME: 'VOLUME';
+VSIZE: 'VSIZE';
+WAIT: 'WAIT';
+WALLET: 'WALLET';
+WARNING: 'WARNING';
+WEEKS: 'WEEKS';
+WEEK: 'WEEK';
+WELLFORMED: 'WELLFORMED';
+WHENEVER: 'WHENEVER';
+WHEN: 'WHEN';
+WHERE: 'WHERE';
+WHILE: 'WHILE';
+WHITESPACE: 'WHITESPACE';
+WIDTH_BUCKET: 'WIDTH_BUCKET';
+WITHIN: 'WITHIN';
+WITHOUT: 'WITHOUT';
+WITH_PLSQL: 'WITH_PLSQL';
+WITH: 'WITH';
+WORK: 'WORK';
+WRAPPED: 'WRAPPED';
+WRAPPER: 'WRAPPER';
+WRITE: 'WRITE';
+XDB_FASTPATH_INSERT: 'XDB_FASTPATH_INSERT';
+XDB: 'XDB';
+X_DYN_PRUNE: 'X_DYN_PRUNE';
+XID: 'XID';
+XML2OBJECT: 'XML2OBJECT';
+XMLAGG: 'XMLAGG';
+XMLATTRIBUTES: 'XMLATTRIBUTES';
+XMLCAST: 'XMLCAST';
+XMLCDATA: 'XMLCDATA';
+XMLCOLATTVAL: 'XMLCOLATTVAL';
+XMLCOMMENT: 'XMLCOMMENT';
+XMLCONCAT: 'XMLCONCAT';
+XMLDIFF: 'XMLDIFF';
+XML_DML_RWT_STMT: 'XML_DML_RWT_STMT';
+XMLELEMENT: 'XMLELEMENT';
+XMLEXISTS2: 'XMLEXISTS2';
+XMLEXISTS: 'XMLEXISTS';
+XMLFOREST: 'XMLFOREST';
+XMLINDEX: 'XMLINDEX';
+XMLINDEX_REWRITE_IN_SELECT: 'XMLINDEX_REWRITE_IN_SELECT';
+XMLINDEX_REWRITE: 'XMLINDEX_REWRITE';
+XMLINDEX_SEL_IDX_TBL: 'XMLINDEX_SEL_IDX_TBL';
+XMLISNODE: 'XMLISNODE';
+XMLISVALID: 'XMLISVALID';
+XMLNAMESPACES: 'XMLNAMESPACES';
+XMLPARSE: 'XMLPARSE';
+XMLPATCH: 'XMLPATCH';
+XMLPI: 'XMLPI';
+XMLQUERYVAL: 'XMLQUERYVAL';
+XMLQUERY: 'XMLQUERY';
+XMLROOT: 'XMLROOT';
+XMLSCHEMA: 'XMLSCHEMA';
+XMLSERIALIZE: 'XMLSERIALIZE';
+XMLTABLE: 'XMLTABLE';
+XMLTRANSFORMBLOB: 'XMLTRANSFORMBLOB';
+XMLTRANSFORM: 'XMLTRANSFORM';
+XMLTYPE: 'XMLTYPE';
+XML: 'XML';
+XPATHTABLE: 'XPATHTABLE';
+XS_SYS_CONTEXT: 'XS_SYS_CONTEXT';
+XS: 'XS';
+XTRANSPORT: 'XTRANSPORT';
+YEARS: 'YEARS';
+YEAR: 'YEAR';
+YES: 'YES';
+YMINTERVAL_UNCONSTRAINED: 'YMINTERVAL_UNCONSTRAINED';
+ZONEMAP: 'ZONEMAP';
+ZONE: 'ZONE';
+PREDICTION: 'PREDICTION';
+PREDICTION_BOUNDS: 'PREDICTION_BOUNDS';
+PREDICTION_COST: 'PREDICTION_COST';
+PREDICTION_DETAILS: 'PREDICTION_DETAILS';
+PREDICTION_PROBABILITY: 'PREDICTION_PROBABILITY';
+PREDICTION_SET: 'PREDICTION_SET';
+
+CUME_DIST: 'CUME_DIST';
+DENSE_RANK: 'DENSE_RANK';
+LISTAGG: 'LISTAGG';
+PERCENT_RANK: 'PERCENT_RANK';
+PERCENTILE_CONT: 'PERCENTILE_CONT';
+PERCENTILE_DISC: 'PERCENTILE_DISC';
+RANK: 'RANK';
+
+AVG: 'AVG';
+CORR: 'CORR';
+COVAR_: 'COVAR_';
+DECODE: 'DECODE';
+LAG: 'LAG';
+LEAD: 'LEAD';
+MAX: 'MAX';
+MEDIAN: 'MEDIAN';
+MIN: 'MIN';
+NTILE: 'NTILE';
+NVL: 'NVL';
+RATIO_TO_REPORT: 'RATIO_TO_REPORT';
+REGR_: 'REGR_';
+ROUND: 'ROUND';
+ROW_NUMBER: 'ROW_NUMBER';
+SUBSTR: 'SUBSTR';
+TO_CHAR: 'TO_CHAR';
+TRIM: 'TRIM';
+SUM: 'SUM';
+STDDEV: 'STDDEV';
+VAR_: 'VAR_';
+VARIANCE: 'VARIANCE';
+LEAST: 'LEAST';
+GREATEST: 'GREATEST';
+TO_DATE: 'TO_DATE';
+
+// Rule #358 - subtoken typecast in , it also incorporates
+// Lowercase 'n' is a usual addition to the standard
+
+NATIONAL_CHAR_STRING_LIT: 'N' '\'' (~('\'' | '\r' | '\n' ) | '\'' '\'' | NEWLINE)* '\'';
+
+// Rule #040 - subtoken typecast in
+// Lowercase 'b' is a usual addition to the standard
+
+BIT_STRING_LIT: 'B' ('\'' [01]* '\'')+;
+
+// Rule #284 - subtoken typecast in
+// Lowercase 'x' is a usual addition to the standard
+
+HEX_STRING_LIT: 'X' ('\'' [A-F0-9]* '\'')+;
+DOUBLE_PERIOD: '..';
+PERIOD: '.';
+
+//{ Rule #238
+// This rule is a bit tricky - it resolves the ambiguity with
+// It also incorporates and for the
+// Rule #501 was incorporated directly in the token
+// See also the rule #617
+/*
+ : (
+ UNSIGNED_INTEGER
+ ( '.' UNSIGNED_INTEGER
+ | {$type = UNSIGNED_INTEGER;}
+ ) ( E ('+' | '-')? UNSIGNED_INTEGER {$type = APPROXIMATE_NUM_LIT;} )?
+ | '.' UNSIGNED_INTEGER ( E ('+' | '-')? UNSIGNED_INTEGER {$type = APPROXIMATE_NUM_LIT;} )?
+ )
+ (D | F)?
+ ;*/
+
+UNSIGNED_INTEGER: [0-9]+;
+APPROXIMATE_NUM_LIT: FLOAT_FRAGMENT ('E' ('+'|'-')? (FLOAT_FRAGMENT | [0-9]+))? ('D' | 'F')?;
+
+// Rule #--- is a base for Rule #065 , it incorporates
+// and a superfluous subtoken typecasting of the "QUOTE"
+CHAR_STRING: '\'' (~('\'' | '\r' | '\n') | '\'' '\'' | NEWLINE)* '\'';
+
+// See https://livesql.oracle.com/apex/livesql/file/content_CIREYU9EA54EOKQ7LAMZKRF6P.html
+// TODO: context sensitive string quotes (any characted after quote)
+CHAR_STRING_PERL : 'Q' '\'' (QS_ANGLE | QS_BRACE | QS_BRACK | QS_PAREN | QS_EXCLAM | QS_SHARP | QS_QUOTE | QS_DQUOTE) '\'' -> type(CHAR_STRING);
+fragment QS_ANGLE : '<' .*? '>';
+fragment QS_BRACE : '{' .*? '}';
+fragment QS_BRACK : '[' .*? ']';
+fragment QS_PAREN : '(' .*? ')';
+fragment QS_EXCLAM : '!' .*? '!';
+fragment QS_SHARP : '#' .*? '#';
+fragment QS_QUOTE : '\'' .*? '\'';
+fragment QS_DQUOTE : '"' .*? '"';
+
+DELIMITED_ID: '"' (~('"' | '\r' | '\n') | '"' '"')+ '"' ;
+
+PERCENT: '%';
+AMPERSAND: '&';
+LEFT_PAREN: '(';
+RIGHT_PAREN: ')';
+DOUBLE_ASTERISK: '**';
+ASTERISK: '*';
+PLUS_SIGN: '+';
+MINUS_SIGN: '-';
+COMMA: ',';
+SOLIDUS: '/';
+AT_SIGN: '@';
+ASSIGN_OP: ':=';
+
+BINDVAR
+ : ':' SIMPLE_LETTER (SIMPLE_LETTER | [0-9] | '_')*
+ | ':' DELIMITED_ID // not used in SQL but spotted in v$sqltext when using cursor_sharing
+ | ':' UNSIGNED_INTEGER
+ | QUESTION_MARK // not in SQL, not in Oracle, not in OCI, use this for JDBC
+ ;
+
+NOT_EQUAL_OP: '!='
+ | '<>'
+ | '^='
+ | '~='
+ ;
+CARRET_OPERATOR_PART: '^';
+TILDE_OPERATOR_PART: '~';
+EXCLAMATION_OPERATOR_PART: '!';
+GREATER_THAN_OP: '>';
+LESS_THAN_OP: '<';
+COLON: ':';
+SEMICOLON: ';';
+
+BAR: '|';
+EQUALS_OP: '=';
+
+LEFT_BRACKET: '[';
+RIGHT_BRACKET: ']';
+
+INTRODUCER: '_';
+
+// Comments https://docs.oracle.com/cd/E11882_01/server.112/e41084/sql_elements006.htm
+
+SINGLE_LINE_COMMENT: '--' ~('\r' | '\n')* NEWLINE_EOF -> channel(HIDDEN);
+MULTI_LINE_COMMENT: '/*' .*? '*/' -> channel(HIDDEN);
+// https://docs.oracle.com/cd/E11882_01/server.112/e16604/ch_twelve034.htm#SQPUG054
+REMARK_COMMENT: 'REM' {IsNewlineAtPos(-4)}? 'ARK'? (' ' ~('\r' | '\n')*)? NEWLINE_EOF -> channel(HIDDEN);
+
+// https://docs.oracle.com/cd/E11882_01/server.112/e16604/ch_twelve032.htm#SQPUG052
+PROMPT_MESSAGE: 'PRO' {IsNewlineAtPos(-4)}? 'MPT'? (' ' ~('\r' | '\n')*)? NEWLINE_EOF;
+
+// TODO: should starts with newline
+START_CMD
+ //: 'STA' 'RT'? SPACE ~('\r' | '\n')* NEWLINE_EOF
+ // https://docs.oracle.com/cd/B19306_01/server.102/b14357/ch12002.htm
+ // https://docs.oracle.com/cd/B19306_01/server.102/b14357/ch12003.htm
+ : '@' {IsNewlineAtPos(-2)}? '@'? ~('\r' | '\n')* NEWLINE_EOF
+ ;
+
+REGULAR_ID: SIMPLE_LETTER (SIMPLE_LETTER | '$' | '_' | '#' | [0-9])*;
+
+SPACES: [ \t\r\n]+ -> channel(HIDDEN);
+
+// Fragment rules
+
+fragment NEWLINE_EOF : NEWLINE | EOF;
+fragment QUESTION_MARK : '?';
+fragment SIMPLE_LETTER : [A-Z];
+fragment FLOAT_FRAGMENT : UNSIGNED_INTEGER* '.'? UNSIGNED_INTEGER+;
+fragment NEWLINE : '\r'? '\n';
+fragment SPACE : [ \t];
diff --git a/src/grammar/plsql/PlSqlParser.g4 b/src/grammar/plsql/PlSqlParser.g4
new file mode 100644
index 0000000..d181fd5
--- /dev/null
+++ b/src/grammar/plsql/PlSqlParser.g4
@@ -0,0 +1,6763 @@
+ /**
+ * Oracle(c) PL/SQL 11g Parser
+ *
+ * Copyright (c) 2009-2011 Alexandre Porcelli
+ * Copyright (c) 2015-2019 Ivan Kochurkin (KvanTTT, kvanttt@gmail.com, Positive Technologies).
+ * Copyright (c) 2017-2018 Mark Adams
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+parser grammar PlSqlParser;
+
+options {
+ tokenVocab=PlSqlLexer;
+ superClass=PlSqlBaseParser;
+}
+
+@parser::postinclude {
+#include
+}
+
+program: sql_script EOF;
+
+sql_script
+ : ((unit_statement | sql_plus_command) SEMICOLON?)* EOF
+ ;
+
+unit_statement
+ : transaction_control_statements
+ | alter_cluster
+ | alter_database
+ | alter_function
+ | alter_package
+ | alter_procedure
+ | alter_sequence
+ | alter_session
+ | alter_trigger
+ | alter_type
+ | alter_table
+ | alter_tablespace
+ | alter_index
+ | alter_library
+ | alter_materialized_view
+ | alter_materialized_view_log
+ | alter_user
+ | alter_view
+
+ | analyze
+ | associate_statistics
+ | audit_traditional
+ | unified_auditing
+
+ | create_function_body
+ | create_procedure_body
+ | create_package
+ | create_package_body
+
+ | create_index
+ | create_table
+ | create_tablespace
+ | create_cluster
+ | create_context
+ | create_view //TODO
+ | create_directory
+ | create_materialized_view
+ | create_materialized_view_log
+ | create_user
+
+ | create_sequence
+ | create_trigger
+ | create_type
+ | create_synonym
+
+ | drop_function
+ | drop_package
+ | drop_procedure
+ | drop_sequence
+ | drop_trigger
+ | drop_type
+ | data_manipulation_language_statements
+ | drop_table
+ | drop_view
+ | drop_index
+
+ | rename_object
+
+ | comment_on_column
+ | comment_on_table
+
+ | anonymous_block
+
+ | grant_statement
+
+ | procedure_call
+ ;
+
+// DDL -> SQL Statements for Stored PL/SQL Units
+
+// Function DDLs
+
+drop_function
+ : DROP FUNCTION function_name ';'
+ ;
+
+alter_function
+ : ALTER FUNCTION function_name COMPILE DEBUG? compiler_parameters_clause* (REUSE SETTINGS)? ';'
+ ;
+
+create_function_body
+ : CREATE (OR REPLACE)? FUNCTION function_name ('(' parameter (',' parameter)* ')')?
+ RETURN type_spec (invoker_rights_clause | parallel_enable_clause | result_cache_clause | DETERMINISTIC)*
+ ((PIPELINED? (IS | AS) (DECLARE? seq_of_declare_specs? body | call_spec)) | (PIPELINED | AGGREGATE) USING implementation_type_name) ';'
+ ;
+
+// Creation Function - Specific Clauses
+
+parallel_enable_clause
+ : PARALLEL_ENABLE partition_by_clause?
+ ;
+
+partition_by_clause
+ : '(' PARTITION expression BY (ANY | (HASH | RANGE | LIST) paren_column_list) streaming_clause? ')'
+ ;
+
+result_cache_clause
+ : RESULT_CACHE relies_on_part?
+ ;
+
+relies_on_part
+ : RELIES_ON '(' tableview_name (',' tableview_name)* ')'
+ ;
+
+streaming_clause
+ : (ORDER | CLUSTER) expression BY paren_column_list
+ ;
+
+// Package DDLs
+
+drop_package
+ : DROP PACKAGE BODY? (schema_object_name '.')? package_name ';'
+ ;
+
+alter_package
+ : ALTER PACKAGE package_name COMPILE DEBUG? (PACKAGE | BODY | SPECIFICATION)? compiler_parameters_clause* (REUSE SETTINGS)? ';'
+ ;
+
+create_package
+ : CREATE (OR REPLACE)? PACKAGE (schema_object_name '.')? package_name invoker_rights_clause? (IS | AS) package_obj_spec* END package_name? ';'
+ ;
+
+create_package_body
+ : CREATE (OR REPLACE)? PACKAGE BODY (schema_object_name '.')? package_name (IS | AS) package_obj_body* (BEGIN seq_of_statements)? END package_name? ';'
+ ;
+
+// Create Package Specific Clauses
+
+package_obj_spec
+ : pragma_declaration
+ | variable_declaration
+ | subtype_declaration
+ | cursor_declaration
+ | exception_declaration
+ | type_declaration
+ | procedure_spec
+ | function_spec
+ ;
+
+procedure_spec
+ : PROCEDURE identifier ('(' parameter ( ',' parameter )* ')')? ';'
+ ;
+
+function_spec
+ : FUNCTION identifier ('(' parameter ( ',' parameter)* ')')?
+ RETURN type_spec PIPELINED? DETERMINISTIC? (RESULT_CACHE)? ';'
+ ;
+
+package_obj_body
+ : variable_declaration
+ | subtype_declaration
+ | cursor_declaration
+ | exception_declaration
+ | type_declaration
+ | procedure_body
+ | function_body
+ | procedure_spec
+ | function_spec
+ ;
+
+// Procedure DDLs
+
+drop_procedure
+ : DROP PROCEDURE procedure_name ';'
+ ;
+
+alter_procedure
+ : ALTER PROCEDURE procedure_name COMPILE DEBUG? compiler_parameters_clause* (REUSE SETTINGS)? ';'
+ ;
+
+function_body
+ : FUNCTION identifier ('(' parameter (',' parameter)* ')')?
+ RETURN type_spec (invoker_rights_clause | parallel_enable_clause | result_cache_clause | DETERMINISTIC)*
+ ((PIPELINED? DETERMINISTIC? (IS | AS) (DECLARE? seq_of_declare_specs? body | call_spec)) | (PIPELINED | AGGREGATE) USING implementation_type_name) ';'
+ ;
+
+procedure_body
+ : PROCEDURE identifier ('(' parameter (',' parameter)* ')')? (IS | AS)
+ (DECLARE? seq_of_declare_specs? body | call_spec | EXTERNAL) ';'
+ ;
+
+create_procedure_body
+ : CREATE (OR REPLACE)? PROCEDURE procedure_name ('(' parameter (',' parameter)* ')')?
+ invoker_rights_clause? (IS | AS)
+ (DECLARE? seq_of_declare_specs? body | call_spec | EXTERNAL) ';'
+ ;
+
+// Trigger DDLs
+
+drop_trigger
+ : DROP TRIGGER trigger_name ';'
+ ;
+
+alter_trigger
+ : ALTER TRIGGER alter_trigger_name=trigger_name
+ ((ENABLE | DISABLE) | RENAME TO rename_trigger_name=trigger_name | COMPILE DEBUG? compiler_parameters_clause* (REUSE SETTINGS)?) ';'
+ ;
+
+create_trigger
+ : CREATE ( OR REPLACE )? TRIGGER trigger_name
+ (simple_dml_trigger | compound_dml_trigger | non_dml_trigger)
+ trigger_follows_clause? (ENABLE | DISABLE)? trigger_when_clause? trigger_body ';'
+ ;
+
+trigger_follows_clause
+ : FOLLOWS trigger_name (',' trigger_name)*
+ ;
+
+trigger_when_clause
+ : WHEN '(' condition ')'
+ ;
+
+// Create Trigger Specific Clauses
+
+simple_dml_trigger
+ : (BEFORE | AFTER | INSTEAD OF) dml_event_clause referencing_clause? for_each_row?
+ ;
+
+for_each_row
+ : FOR EACH ROW
+ ;
+
+compound_dml_trigger
+ : FOR dml_event_clause referencing_clause?
+ ;
+
+non_dml_trigger
+ : (BEFORE | AFTER) non_dml_event (OR non_dml_event)* ON (DATABASE | (schema_name '.')? SCHEMA)
+ ;
+
+trigger_body
+ : COMPOUND TRIGGER
+ | CALL identifier
+ | trigger_block
+ ;
+
+routine_clause
+ : routine_name function_argument?
+ ;
+
+compound_trigger_block
+ : COMPOUND TRIGGER seq_of_declare_specs? timing_point_section+ END trigger_name
+ ;
+
+timing_point_section
+ : bk=BEFORE STATEMENT IS trigger_block BEFORE STATEMENT ';'
+ | bk=BEFORE EACH ROW IS trigger_block BEFORE EACH ROW ';'
+ | ak=AFTER STATEMENT IS trigger_block AFTER STATEMENT ';'
+ | ak=AFTER EACH ROW IS trigger_block AFTER EACH ROW ';'
+ ;
+
+non_dml_event
+ : ALTER
+ | ANALYZE
+ | ASSOCIATE STATISTICS
+ | AUDIT
+ | COMMENT
+ | CREATE
+ | DISASSOCIATE STATISTICS
+ | DROP
+ | GRANT
+ | NOAUDIT
+ | RENAME
+ | REVOKE
+ | TRUNCATE
+ | DDL
+ | STARTUP
+ | SHUTDOWN
+ | DB_ROLE_CHANGE
+ | LOGON
+ | LOGOFF
+ | SERVERERROR
+ | SUSPEND
+ | DATABASE
+ | SCHEMA
+ | FOLLOWS
+ ;
+
+dml_event_clause
+ : dml_event_element (OR dml_event_element)* ON dml_event_nested_clause? tableview_name
+ ;
+
+dml_event_element
+ : (DELETE | INSERT | UPDATE) (OF column_list)?
+ ;
+
+dml_event_nested_clause
+ : NESTED TABLE tableview_name OF
+ ;
+
+referencing_clause
+ : REFERENCING referencing_element+
+ ;
+
+referencing_element
+ : (NEW | OLD | PARENT) column_alias
+ ;
+
+// DDLs
+
+drop_type
+ : DROP TYPE BODY? type_name (FORCE | VALIDATE)? ';'
+ ;
+
+alter_type
+ : ALTER TYPE type_name
+ (compile_type_clause
+ | replace_type_clause
+ //TODO | {input.LT(2).getText().equalsIgnoreCase("attribute")}? alter_attribute_definition
+ | alter_method_spec
+ | alter_collection_clauses
+ | modifier_clause
+ | overriding_subprogram_spec
+ ) dependent_handling_clause? ';'
+ ;
+
+// Alter Type Specific Clauses
+
+compile_type_clause
+ : COMPILE DEBUG? (SPECIFICATION | BODY)? compiler_parameters_clause* (REUSE SETTINGS)?
+ ;
+
+replace_type_clause
+ : REPLACE invoker_rights_clause? AS OBJECT '(' object_member_spec (',' object_member_spec)* ')'
+ ;
+
+alter_method_spec
+ : alter_method_element (',' alter_method_element)*
+ ;
+
+alter_method_element
+ : (ADD | DROP) (map_order_function_spec | subprogram_spec)
+ ;
+
+alter_attribute_definition
+ : (ADD | MODIFY | DROP) ATTRIBUTE (attribute_definition | '(' attribute_definition (',' attribute_definition)* ')')
+ ;
+
+attribute_definition
+ : attribute_name type_spec?
+ ;
+
+alter_collection_clauses
+ : MODIFY (LIMIT expression | ELEMENT TYPE type_spec)
+ ;
+
+dependent_handling_clause
+ : INVALIDATE
+ | CASCADE (CONVERT TO SUBSTITUTABLE | NOT? INCLUDING TABLE DATA)? dependent_exceptions_part?
+ ;
+
+dependent_exceptions_part
+ : FORCE? EXCEPTIONS INTO tableview_name
+ ;
+
+create_type
+ : CREATE (OR REPLACE)? TYPE (type_definition | type_body) ';'
+ ;
+
+// Create Type Specific Clauses
+
+type_definition
+ : type_name (OID CHAR_STRING)? object_type_def?
+ ;
+
+object_type_def
+ : invoker_rights_clause? (object_as_part | object_under_part) sqlj_object_type?
+ ('(' object_member_spec (',' object_member_spec)* ')')? modifier_clause*
+ ;
+
+object_as_part
+ : (IS | AS) (OBJECT | varray_type_def | nested_table_type_def)
+ ;
+
+object_under_part
+ : UNDER type_spec
+ ;
+
+nested_table_type_def
+ : TABLE OF type_spec (NOT NULL_)?
+ ;
+
+sqlj_object_type
+ : EXTERNAL NAME expression LANGUAGE JAVA USING (SQLDATA | CUSTOMDATUM | ORADATA)
+ ;
+
+type_body
+ : BODY type_name (IS | AS) (type_body_elements)+ END
+ ;
+
+type_body_elements
+ : map_order_func_declaration
+ | subprog_decl_in_type
+ | overriding_subprogram_spec
+ ;
+
+map_order_func_declaration
+ : (MAP | ORDER) MEMBER func_decl_in_type
+ ;
+
+subprog_decl_in_type
+ : (MEMBER | STATIC) (proc_decl_in_type | func_decl_in_type | constructor_declaration)
+ ;
+
+proc_decl_in_type
+ : PROCEDURE procedure_name '(' type_elements_parameter (',' type_elements_parameter)* ')'
+ (IS | AS) (call_spec | DECLARE? seq_of_declare_specs? body ';')
+ ;
+
+func_decl_in_type
+ : FUNCTION function_name ('(' type_elements_parameter (',' type_elements_parameter)* ')')?
+ RETURN type_spec (IS | AS) (call_spec | DECLARE? seq_of_declare_specs? body ';')
+ ;
+
+constructor_declaration
+ : FINAL? INSTANTIABLE? CONSTRUCTOR FUNCTION type_spec
+ ('(' (SELF IN OUT type_spec ',') type_elements_parameter (',' type_elements_parameter)* ')')?
+ RETURN SELF AS RESULT (IS | AS) (call_spec | DECLARE? seq_of_declare_specs? body ';')
+ ;
+
+// Common Type Clauses
+
+modifier_clause
+ : NOT? (INSTANTIABLE | FINAL | OVERRIDING)
+ ;
+
+object_member_spec
+ : identifier type_spec sqlj_object_type_attr?
+ | element_spec
+ ;
+
+sqlj_object_type_attr
+ : EXTERNAL NAME expression
+ ;
+
+element_spec
+ : modifier_clause? element_spec_options+ (',' pragma_clause)?
+ ;
+
+element_spec_options
+ : subprogram_spec
+ | constructor_spec
+ | map_order_function_spec
+ ;
+
+subprogram_spec
+ : (MEMBER | STATIC) (type_procedure_spec | type_function_spec)
+ ;
+
+// TODO: should be refactored such as Procedure body and Function body, maybe Type_Function_Body and overriding_function_body
+overriding_subprogram_spec
+ : OVERRIDING MEMBER overriding_function_spec
+ ;
+
+overriding_function_spec
+ : FUNCTION function_name ('(' type_elements_parameter (',' type_elements_parameter)* ')')?
+ RETURN (type_spec | SELF AS RESULT)
+ (PIPELINED? (IS | AS) (DECLARE? seq_of_declare_specs? body))? ';'?
+ ;
+
+type_procedure_spec
+ : PROCEDURE procedure_name '(' type_elements_parameter (',' type_elements_parameter)* ')' ((IS | AS) call_spec)?
+ ;
+
+type_function_spec
+ : FUNCTION function_name ('(' type_elements_parameter (',' type_elements_parameter)* ')')?
+ RETURN (type_spec | SELF AS RESULT) ((IS | AS) call_spec | EXTERNAL VARIABLE? NAME expression)?
+ ;
+
+constructor_spec
+ : FINAL? INSTANTIABLE? CONSTRUCTOR FUNCTION
+ type_spec ('(' (SELF IN OUT type_spec ',') type_elements_parameter (',' type_elements_parameter)* ')')?
+ RETURN SELF AS RESULT ((IS | AS) call_spec)?
+ ;
+
+map_order_function_spec
+ : (MAP | ORDER) MEMBER type_function_spec
+ ;
+
+pragma_clause
+ : PRAGMA RESTRICT_REFERENCES '(' pragma_elements (',' pragma_elements)* ')'
+ ;
+
+pragma_elements
+ : identifier
+ | DEFAULT
+ ;
+
+type_elements_parameter
+ : parameter_name type_spec
+ ;
+
+// Sequence DDLs
+
+drop_sequence
+ : DROP SEQUENCE sequence_name ';'
+ ;
+
+alter_sequence
+ : ALTER SEQUENCE sequence_name sequence_spec+ ';'
+ ;
+
+alter_session
+ : ALTER SESSION (
+ ADVISE ( COMMIT | ROLLBACK | NOTHING )
+ | CLOSE DATABASE LINK parameter_name
+ | enable_or_disable COMMIT IN PROCEDURE
+ | enable_or_disable GUARD
+ | (enable_or_disable | FORCE) PARALLEL (DML | DDL | QUERY) (PARALLEL (literal | parameter_name))?
+ | SET alter_session_set_clause
+ )
+ ;
+
+alter_session_set_clause
+ : parameter_name '=' parameter_value
+ ;
+
+create_sequence
+ : CREATE SEQUENCE sequence_name (sequence_start_clause | sequence_spec)* ';'
+ ;
+
+// Common Sequence
+
+sequence_spec
+ : INCREMENT BY UNSIGNED_INTEGER
+ | MAXVALUE UNSIGNED_INTEGER
+ | NOMAXVALUE
+ | MINVALUE UNSIGNED_INTEGER
+ | NOMINVALUE
+ | CYCLE
+ | NOCYCLE
+ | CACHE UNSIGNED_INTEGER
+ | NOCACHE
+ | ORDER
+ | NOORDER
+ ;
+
+sequence_start_clause
+ : START WITH UNSIGNED_INTEGER
+ ;
+
+create_index
+ : CREATE (UNIQUE | BITMAP)? INDEX index_name
+ ON (cluster_index_clause | table_index_clause | bitmap_join_index_clause)
+ UNUSABLE?
+ ';'
+ ;
+
+cluster_index_clause
+ : CLUSTER cluster_name index_attributes?
+ ;
+
+cluster_name
+ : (id_expression '.')? id_expression
+ ;
+
+table_index_clause
+ : tableview_name table_alias? '(' index_expr (ASC | DESC)? (',' index_expr (ASC | DESC)? )* ')'
+ index_properties?
+ ;
+bitmap_join_index_clause
+ : tableview_name '(' (tableview_name | table_alias)? column_name (ASC | DESC)? (',' (tableview_name | table_alias)? column_name (ASC | DESC)? )* ')'
+ FROM tableview_name table_alias (',' tableview_name table_alias)*
+ where_clause local_partitioned_index? index_attributes?
+ ;
+
+index_expr
+ : column_name
+ | expression
+ ;
+
+index_properties
+ : (global_partitioned_index | local_partitioned_index | index_attributes)+
+ | INDEXTYPE IS (domain_index_clause | xmlindex_clause)
+ ;
+
+domain_index_clause
+ : indextype local_domain_index_clause? parallel_clause? (PARAMETERS '(' odci_parameters ')' )?
+ ;
+
+local_domain_index_clause
+ : LOCAL ('(' PARTITION partition_name (PARAMETERS '(' odci_parameters ')' )? (',' PARTITION partition_name (PARAMETERS '(' odci_parameters ')' )? )* ')' )?
+ ;
+
+xmlindex_clause
+ : (XDB '.')? XMLINDEX local_xmlindex_clause?
+ parallel_clause? //TODO xmlindex_parameters_clause?
+ ;
+
+local_xmlindex_clause
+ : LOCAL ('(' PARTITION partition_name (',' PARTITION partition_name //TODO xmlindex_parameters_clause?
+ )* ')')?
+ ;
+
+global_partitioned_index
+ : GLOBAL PARTITION BY (RANGE '(' column_name (',' column_name)* ')' '(' index_partitioning_clause ')'
+ | HASH '(' column_name (',' column_name)* ')'
+ (individual_hash_partitions
+ | hash_partitions_by_quantity
+ )
+ )
+ ;
+
+index_partitioning_clause
+ : PARTITION partition_name? VALUES LESS THAN '(' literal (',' literal)* ')'
+ segment_attributes_clause?
+ ;
+
+local_partitioned_index
+ : LOCAL (on_range_partitioned_table
+ | on_list_partitioned_table
+ | on_hash_partitioned_table
+ | on_comp_partitioned_table
+ )?
+ ;
+
+on_range_partitioned_table
+ : '(' partitioned_table (',' partitioned_table)* ')'
+ ;
+
+on_list_partitioned_table
+ : '(' partitioned_table (',' partitioned_table)* ')'
+ ;
+
+partitioned_table
+ : PARTITION partition_name?
+ (segment_attributes_clause | key_compression)*
+ UNUSABLE?
+ ;
+
+on_hash_partitioned_table
+ : STORE IN '(' tablespace (',' tablespace)* ')'
+ | '(' on_hash_partitioned_clause (',' on_hash_partitioned_clause)* ')'
+ ;
+
+on_hash_partitioned_clause
+ : PARTITION partition_name? (TABLESPACE tablespace)?
+ key_compression? UNUSABLE?
+ ;
+on_comp_partitioned_table
+ : (STORE IN '(' tablespace (',' tablespace)* ')' )?
+ '(' on_comp_partitioned_clause (',' on_comp_partitioned_clause)* ')'
+ ;
+
+on_comp_partitioned_clause
+ : PARTITION partition_name?
+ (segment_attributes_clause | key_compression)*
+ UNUSABLE index_subpartition_clause?
+ ;
+
+index_subpartition_clause
+ : STORE IN '(' tablespace (',' tablespace)* ')'
+ | '(' index_subpartition_subclause (',' index_subpartition_subclause)* ')'
+ ;
+
+index_subpartition_subclause
+ : SUBPARTITION subpartition_name? (TABLESPACE tablespace)?
+ key_compression? UNUSABLE?
+ ;
+
+odci_parameters
+ : CHAR_STRING
+ ;
+
+indextype
+ : (id_expression '.')? id_expression
+ ;
+
+//https://docs.oracle.com/cd/E11882_01/server.112/e41084/statements_1010.htm#SQLRF00805
+alter_index
+ : ALTER INDEX index_name (alter_index_ops_set1 | alter_index_ops_set2) ';'
+ ;
+
+alter_index_ops_set1
+ : ( deallocate_unused_clause
+ | allocate_extent_clause
+ | shrink_clause
+ | parallel_clause
+ | physical_attributes_clause
+ | logging_clause
+ )+
+ ;
+
+alter_index_ops_set2
+ : rebuild_clause
+ | PARAMETERS '(' odci_parameters ')'
+ | COMPILE
+ | enable_or_disable
+ | UNUSABLE
+ | visible_or_invisible
+ | RENAME TO new_index_name
+ | COALESCE
+ | monitoring_nomonitoring USAGE
+ | UPDATE BLOCK REFERENCES
+ | alter_index_partitioning
+ ;
+
+visible_or_invisible
+ : VISIBLE
+ | INVISIBLE
+ ;
+
+monitoring_nomonitoring
+ : MONITORING
+ | NOMONITORING
+ ;
+
+rebuild_clause
+ : REBUILD ( PARTITION partition_name
+ | SUBPARTITION subpartition_name
+ | REVERSE
+ | NOREVERSE
+ )?
+ ( parallel_clause
+ | TABLESPACE tablespace
+ | PARAMETERS '(' odci_parameters ')'
+//TODO | xmlindex_parameters_clause
+ | ONLINE
+ | physical_attributes_clause
+ | key_compression
+ | logging_clause
+ )*
+ ;
+
+alter_index_partitioning
+ : modify_index_default_attrs
+ | add_hash_index_partition
+ | modify_index_partition
+ | rename_index_partition
+ | drop_index_partition
+ | split_index_partition
+ | coalesce_index_partition
+ | modify_index_subpartition
+ ;
+
+modify_index_default_attrs
+ : MODIFY DEFAULT ATTRIBUTES (FOR PARTITION partition_name)?
+ ( physical_attributes_clause
+ | TABLESPACE (tablespace | DEFAULT)
+ | logging_clause
+ )
+ ;
+
+add_hash_index_partition
+ : ADD PARTITION partition_name? (TABLESPACE tablespace)?
+ key_compression? parallel_clause?
+ ;
+
+coalesce_index_partition
+ : COALESCE PARTITION parallel_clause?
+ ;
+
+modify_index_partition
+ : MODIFY PARTITION partition_name
+ ( modify_index_partitions_ops+
+ | PARAMETERS '(' odci_parameters ')'
+ | COALESCE
+ | UPDATE BLOCK REFERENCES
+ | UNUSABLE
+ )
+ ;
+
+modify_index_partitions_ops
+ : deallocate_unused_clause
+ | allocate_extent_clause
+ | physical_attributes_clause
+ | logging_clause
+ | key_compression
+ ;
+
+rename_index_partition
+ : RENAME (PARTITION partition_name | SUBPARTITION subpartition_name)
+ TO new_partition_name
+ ;
+
+drop_index_partition
+ : DROP PARTITION partition_name
+ ;
+
+split_index_partition
+ : SPLIT PARTITION partition_name_old AT '(' literal (',' literal)* ')'
+ (INTO '(' index_partition_description ',' index_partition_description ')' ) ? parallel_clause?
+ ;
+
+index_partition_description
+ : PARTITION (partition_name ( (segment_attributes_clause | key_compression)+
+ | PARAMETERS '(' odci_parameters ')'
+ )
+ UNUSABLE?
+ )?
+ ;
+
+modify_index_subpartition
+ : MODIFY SUBPARTITION subpartition_name (UNUSABLE
+ | allocate_extent_clause
+ | deallocate_unused_clause
+ )
+ ;
+
+partition_name_old
+ : partition_name
+ ;
+
+new_partition_name
+ : partition_name
+ ;
+
+new_index_name
+ : index_name
+ ;
+
+create_user
+ : CREATE USER
+ user_object_name
+ ( identified_by
+ | identified_other_clause
+ | user_tablespace_clause
+ | quota_clause
+ | profile_clause
+ | password_expire_clause
+ | user_lock_clause
+ | user_editions_clause
+ | container_clause
+ )+ ';'
+ ;
+
+// The standard clauses only permit one user per statement.
+// The proxy clause allows multiple users for a proxy designation.
+alter_user
+ : ALTER USER
+ user_object_name
+ ( alter_identified_by
+ | identified_other_clause
+ | user_tablespace_clause
+ | quota_clause
+ | profile_clause
+ | user_default_role_clause
+ | password_expire_clause
+ | user_lock_clause
+ | alter_user_editions_clause
+ | container_clause
+ | container_data_clause
+ )+
+ ';'
+ | user_object_name (',' user_object_name)* proxy_clause ';'
+ ;
+
+alter_identified_by
+ : identified_by (REPLACE id_expression)?
+ ;
+
+identified_by
+ : IDENTIFIED BY id_expression
+ ;
+
+identified_other_clause
+ : IDENTIFIED (EXTERNALLY | GLOBALLY) (AS quoted_string)?
+ ;
+
+user_tablespace_clause
+ : (DEFAULT | TEMPORARY) TABLESPACE id_expression
+ ;
+
+quota_clause
+ : QUOTA (size_clause | UNLIMITED) ON id_expression
+ ;
+
+profile_clause
+ : PROFILE id_expression
+ ;
+
+role_clause
+ : role_name (',' role_name)*
+ | ALL (EXCEPT role_name (',' role_name)*)*
+ ;
+
+user_default_role_clause
+ : DEFAULT ROLE (NONE | role_clause)
+ ;
+
+password_expire_clause
+ : PASSWORD EXPIRE
+ ;
+
+user_lock_clause
+ : ACCOUNT (LOCK | UNLOCK)
+ ;
+
+user_editions_clause
+ : ENABLE EDITIONS
+ ;
+
+alter_user_editions_clause
+ : user_editions_clause (FOR regular_id (',' regular_id)*)? FORCE?
+ ;
+
+proxy_clause
+ : REVOKE CONNECT THROUGH (ENTERPRISE USERS | user_object_name)
+ | GRANT CONNECT THROUGH
+ ( ENTERPRISE USERS
+ | user_object_name
+ (WITH (NO ROLES | ROLE role_clause))?
+ (AUTHENTICATION REQUIRED)?
+ (AUTHENTICATED USING (PASSWORD | CERTIFICATE | DISTINGUISHED NAME))?
+ )
+ ;
+
+container_names
+ : LEFT_PAREN id_expression (',' id_expression)* RIGHT_PAREN
+ ;
+
+set_container_data
+ : SET CONTAINER_DATA EQUALS_OP (ALL | DEFAULT | container_names)
+ ;
+
+add_rem_container_data
+ : (ADD | REMOVE) CONTAINER_DATA EQUALS_OP container_names
+ ;
+
+container_data_clause
+ : set_container_data
+ | add_rem_container_data (FOR container_tableview_name)?
+ ;
+
+// https://docs.oracle.com/cd/E11882_01/server.112/e41084/statements_4005.htm#SQLRF01105
+analyze
+ : ( ANALYZE (TABLE tableview_name | INDEX index_name) partition_extention_clause?
+ | ANALYZE CLUSTER cluster_name
+ )
+
+ ( validation_clauses
+ | LIST CHAINED ROWS into_clause1?
+ | DELETE SYSTEM? STATISTICS
+ )
+ ';'
+ ;
+
+partition_extention_clause
+ : PARTITION ( '(' partition_name ')'
+ | FOR '(' partition_key_value (',' partition_key_value)* ')'
+ )
+ | SUBPARTITION ( '(' subpartition_name ')'
+ | FOR '(' subpartition_key_value (',' subpartition_key_value)* ')'
+ )
+ ;
+
+validation_clauses
+ : VALIDATE REF UPDATE (SET DANGLING TO NULL_)?
+ | VALIDATE STRUCTURE
+ ( CASCADE FAST
+ | CASCADE online_or_offline? into_clause?
+ | CASCADE
+ )?
+ online_or_offline? into_clause?
+ ;
+
+online_or_offline
+ : OFFLINE
+ | ONLINE
+ ;
+
+into_clause1
+ : INTO tableview_name?
+ ;
+
+//Making assumption on partition ad subpartition key value clauses
+partition_key_value
+ : literal
+ ;
+
+subpartition_key_value
+ : literal
+ ;
+
+//https://docs.oracle.com/cd/E11882_01/server.112/e41084/statements_4006.htm#SQLRF01106
+associate_statistics
+ : ASSOCIATE STATISTICS
+ WITH (column_association | function_association)
+ storage_table_clause?
+ ';'
+ ;
+
+column_association
+ : COLUMNS tableview_name '.' column_name (',' tableview_name '.' column_name)* using_statistics_type
+ ;
+
+function_association
+ : ( FUNCTIONS function_name (',' function_name)*
+ | PACKAGES package_name (',' package_name)*
+ | TYPES type_name (',' type_name)*
+ | INDEXES index_name (',' index_name)*
+ | INDEXTYPES indextype_name (',' indextype_name)*
+ )
+
+ ( using_statistics_type
+ | default_cost_clause (',' default_selectivity_clause)?
+ | default_selectivity_clause (',' default_cost_clause)?
+ )
+ ;
+
+indextype_name
+ : id_expression
+ ;
+
+
+using_statistics_type
+ : USING (statistics_type_name | NULL_)
+ ;
+
+statistics_type_name
+ : regular_id
+ ;
+
+default_cost_clause
+ : DEFAULT COST '(' cpu_cost ',' io_cost ',' network_cost ')'
+ ;
+
+cpu_cost
+ : UNSIGNED_INTEGER
+ ;
+
+io_cost
+ : UNSIGNED_INTEGER
+ ;
+
+network_cost
+ : UNSIGNED_INTEGER
+ ;
+
+default_selectivity_clause
+ : DEFAULT SELECTIVITY default_selectivity
+ ;
+
+default_selectivity
+ : UNSIGNED_INTEGER
+ ;
+
+storage_table_clause
+ : WITH (SYSTEM | USER) MANAGED STORAGE TABLES
+ ;
+
+// https://docs.oracle.com/database/121/SQLRF/statements_4008.htm#SQLRF56110
+unified_auditing
+ : {this.isVersion12()}?
+ AUDIT (POLICY policy_name ((BY | EXCEPT) audit_user (',' audit_user)* )?
+ (WHENEVER NOT? SUCCESSFUL)?
+ | CONTEXT NAMESPACE oracle_namespace
+ ATTRIBUTES attribute_name (',' attribute_name)* (BY audit_user (',' audit_user)*)?
+ )
+ ';'
+ ;
+
+policy_name
+ : identifier
+ ;
+
+// https://docs.oracle.com/cd/E11882_01/server.112/e41084/statements_4007.htm#SQLRF01107
+// https://docs.oracle.com/database/121/SQLRF/statements_4007.htm#SQLRF01107
+
+audit_traditional
+ : AUDIT ( audit_operation_clause (auditing_by_clause | IN SESSION CURRENT)?
+ | audit_schema_object_clause
+ | NETWORK
+ | audit_direct_path
+ )
+ (BY (SESSION | ACCESS) )? (WHENEVER NOT? SUCCESSFUL)?
+ audit_container_clause?
+ ';'
+ ;
+
+audit_direct_path
+ : {this.isVersion12()}? DIRECT_PATH auditing_by_clause
+ ;
+
+audit_container_clause
+ : {this.isVersion12()}? (CONTAINER EQUALS_OP (CURRENT | ALL))
+ ;
+
+audit_operation_clause
+ : ( (sql_statement_shortcut | ALL STATEMENTS?) (',' (sql_statement_shortcut | ALL STATEMENTS?) )*
+ | (system_privilege | ALL PRIVILEGES) (',' (system_privilege | ALL PRIVILEGES) )*
+ )
+ ;
+
+auditing_by_clause
+ : BY audit_user (',' audit_user)*
+ ;
+
+audit_user
+ : regular_id
+ ;
+
+audit_schema_object_clause
+ : ( sql_operation (',' sql_operation)* | ALL) auditing_on_clause
+ ;
+
+sql_operation
+ : ALTER
+ | AUDIT
+ | COMMENT
+ | DELETE
+ | EXECUTE
+ | FLASHBACK
+ | GRANT
+ | INDEX
+ | INSERT
+ | LOCK
+ | READ
+ | RENAME
+ | SELECT
+ | UPDATE
+ ;
+
+auditing_on_clause
+ : ON ( object_name
+ | DIRECTORY regular_id
+ | MINING MODEL model_name
+ | {this.isVersion12()}? SQL TRANSLATION PROFILE profile_name
+ | DEFAULT
+ )
+ ;
+
+model_name
+ : (id_expression '.')? id_expression
+ ;
+
+object_name
+ : (id_expression '.')? id_expression
+ ;
+
+profile_name
+ : (id_expression '.')? id_expression
+ ;
+
+sql_statement_shortcut
+ : ALTER SYSTEM
+ | CLUSTER
+ | CONTEXT
+ | DATABASE LINK
+ | DIMENSION
+ | DIRECTORY
+ | INDEX
+ | MATERIALIZED VIEW
+ | NOT EXISTS
+ | OUTLINE
+ | {this.isVersion12()}? PLUGGABLE DATABASE
+ | PROCEDURE
+ | PROFILE
+ | PUBLIC DATABASE LINK
+ | PUBLIC SYNONYM
+ | ROLE
+ | ROLLBACK SEGMENT
+ | SEQUENCE
+ | SESSION
+ | SYNONYM
+ | SYSTEM AUDIT
+ | SYSTEM GRANT
+ | TABLE
+ | TABLESPACE
+ | TRIGGER
+ | TYPE
+ | USER
+ | VIEW
+ | ALTER SEQUENCE
+ | ALTER TABLE
+ | COMMENT TABLE
+ | DELETE TABLE
+ | EXECUTE PROCEDURE
+ | GRANT DIRECTORY
+ | GRANT PROCEDURE
+ | GRANT SEQUENCE
+ | GRANT TABLE
+ | GRANT TYPE
+ | INSERT TABLE
+ | LOCK TABLE
+ | SELECT SEQUENCE
+ | SELECT TABLE
+ | UPDATE TABLE
+ ;
+
+drop_index
+ : DROP INDEX index_name ';'
+ ;
+
+rename_object
+ : RENAME object_name TO object_name ';'
+ ;
+
+grant_statement
+ : GRANT
+ ( ','?
+ (role_name
+ | system_privilege
+ | object_privilege paren_column_list?
+ )
+ )+
+ (ON grant_object_name)?
+ TO (grantee_name | PUBLIC) (',' (grantee_name | PUBLIC) )*
+ (WITH (ADMIN | DELEGATE) OPTION)?
+ (WITH HIERARCHY OPTION)?
+ (WITH GRANT OPTION)?
+ container_clause? ';'
+ ;
+
+container_clause
+ : CONTAINER EQUALS_OP (CURRENT | ALL)
+ ;
+
+create_directory
+ : CREATE (OR REPLACE)? DIRECTORY directory_name AS directory_path
+ ';'
+ ;
+
+directory_name
+ : regular_id
+ ;
+
+directory_path
+ : CHAR_STRING
+ ;
+
+// https://docs.oracle.com/cd/E11882_01/appdev.112/e25519/alter_library.htm#LNPLS99946
+// https://docs.oracle.com/database/121/LNPLS/alter_library.htm#LNPLS99946
+alter_library
+ : ALTER LIBRARY library_name
+ ( COMPILE library_debug? compiler_parameters_clause* (REUSE SETTINGS)?
+ | library_editionable
+ )
+ ';'
+ ;
+
+library_editionable
+ : {this.isVersion12()}? (EDITIONABLE | NONEDITIONABLE)
+ ;
+
+library_debug
+ : {this.isVersion12()}? DEBUG
+ ;
+
+
+compiler_parameters_clause
+ : parameter_name EQUALS_OP parameter_value
+ ;
+
+parameter_value
+ : regular_id
+ ;
+
+library_name
+ : (regular_id '.')? regular_id
+ ;
+
+// https://docs.oracle.com/cd/E11882_01/server.112/e41084/statements_4004.htm#SQLRF01104
+// https://docs.oracle.com/database/121/SQLRF/statements_4004.htm#SQLRF01104
+alter_view
+ : ALTER VIEW tableview_name
+ ( ADD out_of_line_constraint
+ | MODIFY CONSTRAINT constraint_name (RELY | NORELY)
+ | DROP ( CONSTRAINT constraint_name
+ | PRIMARY KEY
+ | UNIQUE '(' column_name (',' column_name)* ')'
+ )
+ | COMPILE
+ | READ (ONLY | WRITE)
+ | alter_view_editionable?
+ )
+ ';'
+ ;
+
+alter_view_editionable
+ : {this.isVersion12()}? (EDITIONABLE | NONEDITIONABLE)
+ ;
+
+create_view
+ : CREATE (OR REPLACE)? (OR? FORCE)? EDITIONABLE? EDITIONING? VIEW
+ tableview_name view_options?
+ AS select_only_statement subquery_restriction_clause?
+ ;
+
+view_options
+ : view_alias_constraint
+ | object_view_clause
+// | xmltype_view_clause //TODO
+ ;
+
+view_alias_constraint
+ : '(' ( ','? (table_alias inline_constraint* | out_of_line_constraint) )+ ')'
+ ;
+
+object_view_clause
+ : OF type_name
+ ( WITH OBJECT (IDENTIFIER|ID|OID) ( DEFAULT | '(' REGULAR_ID (',' REGULAR_ID)* ')' )
+ | UNDER tableview_name
+ )
+ ( '(' ( ','? (out_of_line_constraint | REGULAR_ID inline_constraint ) )+ ')' )*
+ ;
+
+inline_constraint
+ : (CONSTRAINT constraint_name)?
+ ( NOT? NULL_
+ | UNIQUE
+ | PRIMARY KEY
+ | references_clause
+ | check_constraint
+ )
+ constraint_state?
+ ;
+
+inline_ref_constraint
+ : SCOPE IS tableview_name
+ | WITH ROWID
+ | (CONSTRAINT constraint_name)? references_clause constraint_state?
+ ;
+
+out_of_line_ref_constraint
+ : SCOPE FOR '(' ref_col_or_attr=regular_id ')' IS tableview_name
+ | REF '(' ref_col_or_attr=regular_id ')' WITH ROWID
+ | (CONSTRAINT constraint_name)? FOREIGN KEY '(' ( ','? ref_col_or_attr=regular_id)+ ')' references_clause constraint_state?
+ ;
+
+out_of_line_constraint
+ : ( (CONSTRAINT constraint_name)?
+ ( UNIQUE '(' column_name (',' column_name)* ')'
+ | PRIMARY KEY '(' column_name (',' column_name)* ')'
+ | foreign_key_clause
+ | CHECK '(' expression ')'
+ )
+ )
+ constraint_state?
+ ;
+
+constraint_state
+ : ( NOT? DEFERRABLE
+ | INITIALLY (IMMEDIATE|DEFERRED)
+ | (RELY|NORELY)
+ | (ENABLE|DISABLE)
+ | (VALIDATE|NOVALIDATE)
+ | using_index_clause
+ )+
+ ;
+
+alter_tablespace
+ : ALTER TABLESPACE tablespace
+ ( DEFAULT table_compression? storage_clause?
+ | MINIMUM EXTENT size_clause
+ | RESIZE size_clause
+ | COALESCE
+ | SHRINK SPACE_KEYWORD (KEEP size_clause)?
+ | RENAME TO new_tablespace_name
+ | begin_or_end BACKUP
+ | datafile_tempfile_clauses
+ | tablespace_logging_clauses
+ | tablespace_group_clause
+ | tablespace_state_clauses
+ | autoextend_clause
+ | flashback_mode_clause
+ | tablespace_retention_clause
+ )
+ ';'
+ ;
+
+datafile_tempfile_clauses
+ : ADD (datafile_specification | tempfile_specification)
+ | DROP (DATAFILE | TEMPFILE) (filename | UNSIGNED_INTEGER) (KEEP size_clause)?
+ | SHRINK TEMPFILE (filename | UNSIGNED_INTEGER) (KEEP size_clause)?
+ | RENAME DATAFILE filename (',' filename)* TO filename (',' filename)*
+ | (DATAFILE | TEMPFILE) (online_or_offline)
+ ;
+
+tablespace_logging_clauses
+ : logging_clause
+ | NO? FORCE LOGGING
+ ;
+
+tablespace_group_clause
+ : TABLESPACE GROUP (tablespace_group_name | CHAR_STRING)
+ ;
+
+tablespace_group_name
+ : regular_id
+ ;
+
+tablespace_state_clauses
+ : ONLINE
+ | OFFLINE (NORMAL | TEMPORARY | IMMEDIATE)?
+ | READ (ONLY | WRITE)
+ | PERMANENT
+ | TEMPORARY
+ ;
+
+flashback_mode_clause
+ : FLASHBACK (ON | OFF)
+ ;
+
+new_tablespace_name
+ : tablespace
+ ;
+
+create_tablespace
+ : CREATE (BIGFILE | SMALLFILE)?
+ ( permanent_tablespace_clause
+ | temporary_tablespace_clause
+ | undo_tablespace_clause
+ )
+ ';'
+ ;
+
+permanent_tablespace_clause
+ : TABLESPACE id_expression datafile_specification?
+ ( MINIMUM EXTENT size_clause
+ | BLOCKSIZE size_clause
+ | logging_clause
+ | FORCE LOGGING
+ | (ONLINE | OFFLINE)
+ | ENCRYPTION tablespace_encryption_spec
+ | DEFAULT //TODO table_compression? storage_clause?
+ | extent_management_clause
+ | segment_management_clause
+ | flashback_mode_clause
+ )*
+ ;
+
+tablespace_encryption_spec
+ : USING encrypt_algorithm=CHAR_STRING
+ ;
+
+logging_clause
+ : LOGGING
+ | NOLOGGING
+ | FILESYSTEM_LIKE_LOGGING
+ ;
+
+extent_management_clause
+ : EXTENT MANAGEMENT LOCAL
+ ( AUTOALLOCATE
+ | UNIFORM (SIZE size_clause)?
+ )?
+ ;
+
+segment_management_clause
+ : SEGMENT SPACE_KEYWORD MANAGEMENT (AUTO | MANUAL)
+ ;
+
+temporary_tablespace_clause
+ : TEMPORARY TABLESPACE tablespace_name=id_expression
+ tempfile_specification?
+ tablespace_group_clause? extent_management_clause?
+ ;
+
+undo_tablespace_clause
+ : UNDO TABLESPACE tablespace_name=id_expression
+ datafile_specification?
+ extent_management_clause? tablespace_retention_clause?
+ ;
+
+tablespace_retention_clause
+ : RETENTION (GUARANTEE | NOGUARANTEE)
+ ;
+
+// asm_filename is just a charater string. Would need to parse the string
+// to find diskgroup...
+datafile_specification
+ : DATAFILE
+ (','? datafile_tempfile_spec)
+ ;
+
+tempfile_specification
+ : TEMPFILE
+ (','? datafile_tempfile_spec)
+ ;
+
+datafile_tempfile_spec
+ : (CHAR_STRING)? (SIZE size_clause)? REUSE? autoextend_clause?
+ ;
+
+
+redo_log_file_spec
+ : (DATAFILE CHAR_STRING
+ | '(' ( ','? CHAR_STRING )+ ')'
+ )?
+ (SIZE size_clause)?
+ (BLOCKSIZE size_clause)?
+ REUSE?
+ ;
+
+autoextend_clause
+ : AUTOEXTEND (OFF | ON (NEXT size_clause)? maxsize_clause? )
+ ;
+
+maxsize_clause
+ : MAXSIZE (UNLIMITED | size_clause)
+ ;
+
+build_clause
+ : BUILD (IMMEDIATE | DEFERRED)
+ ;
+
+parallel_clause
+ : NOPARALLEL
+ | PARALLEL parallel_count=UNSIGNED_INTEGER?
+ ;
+
+alter_materialized_view
+ : ALTER MATERIALIZED VIEW tableview_name
+ ( physical_attributes_clause
+ | modify_mv_column_clause
+ | table_compression
+ | lob_storage_clause (',' lob_storage_clause)*
+ | modify_lob_storage_clause (',' modify_lob_storage_clause)*
+//TODO | alter_table_partitioning
+ | parallel_clause
+ | logging_clause
+ | allocate_extent_clause
+ | deallocate_unused_clause
+ | shrink_clause
+ | (cache_or_nocache)
+ )?
+ alter_iot_clauses?
+ (USING INDEX physical_attributes_clause)?
+ alter_mv_option1?
+ ( enable_or_disable QUERY REWRITE
+ | COMPILE
+ | CONSIDER FRESH
+ )?
+ ';'
+ ;
+
+alter_mv_option1
+ : alter_mv_refresh
+//TODO | MODIFY scoped_table_ref_constraint
+ ;
+
+alter_mv_refresh
+ : REFRESH ( FAST
+ | COMPLETE
+ | FORCE
+ | ON (DEMAND | COMMIT)
+ | START WITH expression
+ | NEXT expression
+ | WITH PRIMARY KEY
+ | USING DEFAULT? MASTER ROLLBACK SEGMENT rollback_segment?
+ | USING (ENFORCED | TRUSTED) CONSTRAINTS
+ )+
+ ;
+
+rollback_segment
+ : regular_id
+ ;
+
+modify_mv_column_clause
+ : MODIFY '(' column_name (ENCRYPT encryption_spec | DECRYPT)? ')'
+ ;
+
+alter_materialized_view_log
+ : ALTER MATERIALIZED VIEW LOG FORCE? ON tableview_name
+ ( physical_attributes_clause
+ | add_mv_log_column_clause
+//TODO | alter_table_partitioning
+ | parallel_clause
+ | logging_clause
+ | allocate_extent_clause
+ | shrink_clause
+ | move_mv_log_clause
+ | cache_or_nocache
+ )?
+ mv_log_augmentation? mv_log_purge_clause?
+ ';'
+ ;
+add_mv_log_column_clause
+ : ADD '(' column_name ')'
+ ;
+
+move_mv_log_clause
+ : MOVE segment_attributes_clause parallel_clause?
+ ;
+
+mv_log_augmentation
+ : ADD ( ( OBJECT ID
+ | PRIMARY KEY
+ | ROWID
+ | SEQUENCE
+ )
+ ('(' column_name (',' column_name)* ')')?
+
+ | '(' column_name (',' column_name)* ')'
+ )
+ new_values_clause?
+ ;
+
+// Should bound this to just date/time expr
+datetime_expr
+ : expression
+ ;
+
+// Should bound this to just interval expr
+interval_expr
+ : expression
+ ;
+
+synchronous_or_asynchronous
+ : SYNCHRONOUS
+ | ASYNCHRONOUS
+ ;
+
+including_or_excluding
+ : INCLUDING
+ | EXCLUDING
+ ;
+
+
+create_materialized_view_log
+ : CREATE MATERIALIZED VIEW LOG ON tableview_name
+ ( ( physical_attributes_clause
+ | TABLESPACE tablespace_name=id_expression
+ | logging_clause
+ | (CACHE | NOCACHE)
+ )+
+ )?
+ parallel_clause?
+ // table_partitioning_clauses TODO
+ ( WITH
+ ( ','?
+ ( OBJECT ID
+ | PRIMARY KEY
+ | ROWID
+ | SEQUENCE
+ | COMMIT SCN
+ )
+ )*
+ ('(' ( ','? regular_id )+ ')' new_values_clause? )?
+ mv_log_purge_clause?
+ )*
+ ;
+
+new_values_clause
+ : (INCLUDING | EXCLUDING ) NEW VALUES
+ ;
+
+mv_log_purge_clause
+ : PURGE
+ ( IMMEDIATE (SYNCHRONOUS | ASYNCHRONOUS)?
+ // |START WITH CLAUSES TODO
+ )
+ ;
+
+create_materialized_view
+ : CREATE MATERIALIZED VIEW tableview_name
+ (OF type_name )?
+//scoped_table_ref and column alias goes here TODO
+ ( ON PREBUILT TABLE ( (WITH | WITHOUT) REDUCED PRECISION)?
+ | physical_properties? (CACHE | NOCACHE)? parallel_clause? build_clause?
+ )
+ ( USING INDEX ( (physical_attributes_clause | TABLESPACE mv_tablespace=id_expression)+ )*
+ | USING NO INDEX
+ )?
+ create_mv_refresh?
+ (FOR UPDATE)?
+ ( (DISABLE | ENABLE) QUERY REWRITE )?
+ AS select_only_statement
+ ';'
+ ;
+
+create_mv_refresh
+ : ( NEVER REFRESH
+ | REFRESH
+ ( (FAST | COMPLETE | FORCE)
+ | ON (DEMAND | COMMIT)
+ | (START WITH | NEXT) //date goes here TODO
+ | WITH (PRIMARY KEY | ROWID)
+ | USING
+ ( DEFAULT (MASTER | LOCAL)? ROLLBACK SEGMENT
+ | (MASTER | LOCAL)? ROLLBACK SEGMENT rb_segment=REGULAR_ID
+ )
+ | USING (ENFORCED | TRUSTED) CONSTRAINTS
+ )+
+ )
+ ;
+
+create_context
+ : CREATE (OR REPLACE)? CONTEXT oracle_namespace USING (schema_object_name '.')? package_name
+ (INITIALIZED (EXTERNALLY | GLOBALLY)
+ | ACCESSED GLOBALLY
+ )?
+ ';'
+ ;
+
+oracle_namespace
+ : id_expression
+ ;
+
+//https://docs.oracle.com/cd/E11882_01/server.112/e41084/statements_5001.htm#SQLRF01201
+create_cluster
+ : CREATE CLUSTER cluster_name '(' column_name datatype SORT? (',' column_name datatype SORT?)* ')'
+ ( physical_attributes_clause
+ | SIZE size_clause
+ | TABLESPACE tablespace
+ | INDEX
+ | (SINGLE TABLE)? HASHKEYS UNSIGNED_INTEGER (HASH IS expression)?
+ )*
+ parallel_clause? (ROWDEPENDENCIES | NOROWDEPENDENCIES)?
+ (CACHE | NOCACHE)?
+ ';'
+ ;
+
+create_table
+ : CREATE (GLOBAL TEMPORARY)? TABLE tableview_name
+ (relational_table | object_table | xmltype_table) (AS select_only_statement)?
+ ';'
+ ;
+
+xmltype_table
+ : OF XMLTYPE ('(' object_properties ')')?
+ (XMLTYPE xmltype_storage)? xmlschema_spec? xmltype_virtual_columns?
+ (ON COMMIT (DELETE | PRESERVE) ROWS)? oid_clause? oid_index_clause?
+ physical_properties? column_properties? table_partitioning_clauses?
+ (CACHE | NOCACHE)? (RESULT_CACHE '(' MODE (DEFAULT | FORCE) ')')?
+ parallel_clause? (ROWDEPENDENCIES | NOROWDEPENDENCIES)?
+ (enable_disable_clause+)? row_movement_clause?
+ flashback_archive_clause?
+ ;
+
+xmltype_virtual_columns
+ : VIRTUAL COLUMNS '(' column_name AS '(' expression ')' (',' column_name AS '(' expression ')')* ')'
+ ;
+
+xmltype_column_properties
+ : XMLTYPE COLUMN? column_name xmltype_storage? xmlschema_spec?
+ ;
+
+xmltype_storage
+ : STORE AS (OBJECT RELATIONAL
+ | (SECUREFILE | BASICFILE)? (CLOB | BINARY XML) (lob_segname ('(' lob_parameters ')')? | '(' lob_parameters ')')?
+ )
+ | STORE VARRAYS AS (LOBS | TABLES)
+ ;
+
+xmlschema_spec
+ : (XMLSCHEMA DELIMITED_ID)? ELEMENT DELIMITED_ID
+ (allow_or_disallow NONSCHEMA)?
+ (allow_or_disallow ANYSCHEMA)?
+ ;
+
+object_table
+ : OF type_name object_table_substitution?
+ ('(' object_properties (',' object_properties)* ')')?
+ (ON COMMIT (DELETE | PRESERVE) ROWS)? oid_clause? oid_index_clause?
+ physical_properties? column_properties? table_partitioning_clauses?
+ (CACHE | NOCACHE)? (RESULT_CACHE '(' MODE (DEFAULT | FORCE) ')')?
+ parallel_clause? (ROWDEPENDENCIES | NOROWDEPENDENCIES)?
+ (enable_disable_clause+)? row_movement_clause? flashback_archive_clause?
+ ;
+
+oid_index_clause
+ : OIDINDEX index_name? '(' (physical_attributes_clause | TABLESPACE tablespace)+ ')'
+ ;
+
+oid_clause
+ : OBJECT IDENTIFIER IS (SYSTEM GENERATED | PRIMARY KEY)
+ ;
+
+object_properties
+ : (column_name | attribute_name) (DEFAULT expression)? (inline_constraint (',' inline_constraint)* | inline_ref_constraint)?
+ | out_of_line_constraint
+ | out_of_line_ref_constraint
+ | supplemental_logging_props
+ ;
+
+object_table_substitution
+ : NOT? SUBSTITUTABLE AT ALL LEVELS
+ ;
+
+relational_table
+ : ('(' relational_property (',' relational_property)* ')')?
+ (ON COMMIT (DELETE | PRESERVE) ROWS)?
+ physical_properties? column_properties? table_partitioning_clauses?
+ (CACHE | NOCACHE)? (RESULT_CACHE '(' MODE (DEFAULT | FORCE) ')')?
+ parallel_clause?
+ (ROWDEPENDENCIES | NOROWDEPENDENCIES)?
+ (enable_disable_clause+)? row_movement_clause? flashback_archive_clause?
+ ;
+
+relational_property
+ : (column_definition
+ | virtual_column_definition
+ | out_of_line_constraint
+ | out_of_line_ref_constraint
+ | supplemental_logging_props
+ )
+ ;
+
+table_partitioning_clauses
+ : range_partitions
+ | list_partitions
+ | hash_partitions
+ | composite_range_partitions
+ | composite_list_partitions
+ | composite_hash_partitions
+ | reference_partitioning
+ | system_partitioning
+ ;
+
+range_partitions
+ : PARTITION BY RANGE '(' column_name (',' column_name)* ')'
+ (INTERVAL '(' expression ')' (STORE IN '(' tablespace (',' tablespace)* ')' )? )?
+ '(' PARTITION partition_name? range_values_clause table_partition_description (',' PARTITION partition_name? range_values_clause table_partition_description)* ')'
+ ;
+
+list_partitions
+ : PARTITION BY LIST '(' column_name ')'
+ '(' PARTITION partition_name? list_values_clause table_partition_description (',' PARTITION partition_name? list_values_clause table_partition_description )* ')'
+ ;
+
+hash_partitions
+ : PARTITION BY HASH '(' column_name (',' column_name)* ')'
+ (individual_hash_partitions | hash_partitions_by_quantity)
+ ;
+
+individual_hash_partitions
+ : '(' PARTITION partition_name? partitioning_storage_clause? (',' PARTITION partition_name? partitioning_storage_clause?)* ')'
+ ;
+
+hash_partitions_by_quantity
+ : PARTITIONS hash_partition_quantity
+ (STORE IN '(' tablespace (',' tablespace)* ')')?
+ (table_compression | key_compression)?
+ (OVERFLOW STORE IN '(' tablespace (',' tablespace)* ')' )?
+ ;
+
+hash_partition_quantity
+ : UNSIGNED_INTEGER
+ ;
+
+composite_range_partitions
+ : PARTITION BY RANGE '(' column_name (',' column_name)* ')'
+ (INTERVAL '(' expression ')' (STORE IN '(' tablespace (',' tablespace)* ')' )? )?
+ (subpartition_by_range | subpartition_by_list | subpartition_by_hash)
+ '(' range_partition_desc (',' range_partition_desc)* ')'
+ ;
+
+composite_list_partitions
+ : PARTITION BY LIST '(' column_name ')'
+ (subpartition_by_range | subpartition_by_list | subpartition_by_hash)
+ '(' list_partition_desc (',' list_partition_desc)* ')'
+ ;
+
+composite_hash_partitions
+ : PARTITION BY HASH '(' (',' column_name)+ ')'
+ (subpartition_by_range | subpartition_by_list | subpartition_by_hash)
+ (individual_hash_partitions | hash_partitions_by_quantity)
+ ;
+
+reference_partitioning
+ : PARTITION BY REFERENCE '(' regular_id ')'
+ ('(' reference_partition_desc (',' reference_partition_desc)* ')')?
+ ;
+
+reference_partition_desc
+ : PARTITION partition_name? table_partition_description
+ ;
+
+system_partitioning
+ : PARTITION BY SYSTEM
+ (PARTITIONS UNSIGNED_INTEGER | reference_partition_desc (',' reference_partition_desc)*)?
+ ;
+
+range_partition_desc
+ : PARTITION partition_name? range_values_clause table_partition_description
+ ( ( '(' ( range_subpartition_desc (',' range_subpartition_desc)*
+ | list_subpartition_desc (',' list_subpartition_desc)*
+ | individual_hash_subparts (',' individual_hash_subparts)*
+ )
+ ')'
+ | hash_subparts_by_quantity
+ )
+ )?
+ ;
+
+list_partition_desc
+ : PARTITION partition_name? list_values_clause table_partition_description
+ ( ( '(' ( range_subpartition_desc (',' range_subpartition_desc)*
+ | list_subpartition_desc (',' list_subpartition_desc)*
+ | individual_hash_subparts (',' individual_hash_subparts)*
+ )
+ ')'
+ | hash_subparts_by_quantity
+ )
+ )?
+ ;
+
+subpartition_template
+ : SUBPARTITION TEMPLATE
+ ( ( '(' ( range_subpartition_desc (',' range_subpartition_desc)*
+ | list_subpartition_desc (',' list_subpartition_desc)*
+ | individual_hash_subparts (',' individual_hash_subparts)*
+ )
+ ')'
+ | hash_subpartition_quantity
+ )
+ )
+ ;
+
+hash_subpartition_quantity
+ : UNSIGNED_INTEGER
+ ;
+
+subpartition_by_range
+ : SUBPARTITION BY RANGE '(' column_name (',' column_name)* ')' subpartition_template?
+ ;
+
+subpartition_by_list
+ : SUBPARTITION BY LIST '(' column_name ')' subpartition_template?
+ ;
+
+subpartition_by_hash
+ : SUBPARTITION BY HASH '(' column_name (',' column_name)* ')'
+ (SUBPARTITIONS UNSIGNED_INTEGER (STORE IN '(' tablespace (',' tablespace)* ')' )?
+ | subpartition_template
+ )?
+ ;
+
+subpartition_name
+ : partition_name
+ ;
+
+range_subpartition_desc
+ : SUBPARTITION subpartition_name? range_values_clause partitioning_storage_clause?
+ ;
+
+list_subpartition_desc
+ : SUBPARTITION subpartition_name? list_values_clause partitioning_storage_clause?
+ ;
+
+individual_hash_subparts
+ : SUBPARTITION subpartition_name? partitioning_storage_clause?
+ ;
+
+hash_subparts_by_quantity
+ : SUBPARTITIONS UNSIGNED_INTEGER (STORE IN '(' tablespace (',' tablespace)* ')' )?
+ ;
+
+range_values_clause
+ : VALUES LESS THAN '(' literal (',' literal)* ')'
+ ;
+
+list_values_clause
+ : VALUES '(' (literal (',' literal)* | DEFAULT) ')'
+ ;
+
+table_partition_description
+ : deferred_segment_creation? segment_attributes_clause?
+ (table_compression | key_compression)?
+ (OVERFLOW segment_attributes_clause? )?
+ (lob_storage_clause | varray_col_properties | nested_table_col_properties)?
+ ;
+
+partitioning_storage_clause
+ : ( TABLESPACE tablespace
+ | OVERFLOW (TABLESPACE tablespace)?
+ | table_compression
+ | key_compression
+ | lob_partitioning_storage
+ | VARRAY varray_item STORE AS (BASICFILE | SECUREFILE)? LOB lob_segname
+ )+
+ ;
+
+lob_partitioning_storage
+ : LOB '(' lob_item ')'
+ STORE AS (BASICFILE | SECUREFILE)?
+ (lob_segname ('(' TABLESPACE tablespace ')' )?
+ | '(' TABLESPACE tablespace ')'
+ )
+ ;
+
+datatype_null_enable
+ : column_name datatype
+ SORT? (DEFAULT expression)? (ENCRYPT ( USING CHAR_STRING )? (IDENTIFIED BY REGULAR_ID)? CHAR_STRING? ( NO? SALT )? )?
+ (NOT NULL_)? (ENABLE | DISABLE)?
+ ;
+
+//Technically, this should only allow 'K' | 'M' | 'G' | 'T' | 'P' | 'E'
+// but having issues with examples/numbers01.sql line 11 "sysdate -1m"
+size_clause
+ : UNSIGNED_INTEGER REGULAR_ID?
+ ;
+
+
+table_compression
+ : COMPRESS
+ ( BASIC
+ | FOR ( OLTP
+ | (QUERY | ARCHIVE) (LOW | HIGH)?
+ )
+ )?
+ | NOCOMPRESS
+ ;
+
+physical_attributes_clause
+ : (PCTFREE pctfree=UNSIGNED_INTEGER
+ | PCTUSED pctused=UNSIGNED_INTEGER
+ | INITRANS inittrans=UNSIGNED_INTEGER
+ | storage_clause
+ )+
+ ;
+
+storage_clause
+ : STORAGE '('
+ (INITIAL initial_size=size_clause
+ | NEXT next_size=size_clause
+ | MINEXTENTS minextents=(UNSIGNED_INTEGER | UNLIMITED)
+ | MAXEXTENTS minextents=(UNSIGNED_INTEGER | UNLIMITED)
+ | PCTINCREASE pctincrease=UNSIGNED_INTEGER
+ | FREELISTS freelists=UNSIGNED_INTEGER
+ | FREELIST GROUPS freelist_groups=UNSIGNED_INTEGER
+ | OPTIMAL (size_clause | NULL_ )
+ | BUFFER_POOL (KEEP | RECYCLE | DEFAULT)
+ | FLASH_CACHE (KEEP | NONE | DEFAULT)
+ | ENCRYPT
+ )+
+ ')'
+ ;
+
+deferred_segment_creation
+ : SEGMENT CREATION (IMMEDIATE | DEFERRED)
+ ;
+
+segment_attributes_clause
+ : ( physical_attributes_clause
+ | TABLESPACE tablespace_name=id_expression
+ | logging_clause
+ )+
+ ;
+
+physical_properties
+ : deferred_segment_creation? segment_attributes_clause table_compression?
+ ;
+
+row_movement_clause
+ : (ENABLE | DISABLE)? ROW MOVEMENT
+ ;
+
+flashback_archive_clause
+ : FLASHBACK ARCHIVE flashback_archive=REGULAR_ID
+ | NO FLASHBACK ARCHIVE
+ ;
+
+log_grp
+ : UNSIGNED_INTEGER
+ ;
+
+supplemental_table_logging
+ : ADD SUPPLEMENTAL LOG (supplemental_log_grp_clause | supplemental_id_key_clause)
+ (',' SUPPLEMENTAL LOG (supplemental_log_grp_clause | supplemental_id_key_clause) )*
+ | DROP SUPPLEMENTAL LOG (supplemental_id_key_clause | GROUP log_grp)
+ (',' SUPPLEMENTAL LOG (supplemental_id_key_clause | GROUP log_grp) )*
+ ;
+
+supplemental_log_grp_clause
+ : GROUP log_grp '(' regular_id (NO LOG)? (',' regular_id (NO LOG)?)* ')' ALWAYS?
+ ;
+
+supplemental_id_key_clause
+ : DATA '('( ','? ( ALL
+ | PRIMARY KEY
+ | UNIQUE
+ | FOREIGN KEY
+ )
+ )+
+ ')'
+ COLUMNS
+ ;
+
+allocate_extent_clause
+ : ALLOCATE EXTENT
+ ( '(' ( SIZE size_clause
+ | DATAFILE datafile=CHAR_STRING
+ | INSTANCE inst_num=UNSIGNED_INTEGER
+ )+
+ ')'
+ )?
+ ;
+
+deallocate_unused_clause
+ : DEALLOCATE UNUSED (KEEP size_clause)?
+ ;
+
+shrink_clause
+ : SHRINK SPACE_KEYWORD COMPACT? CASCADE?
+ ;
+
+records_per_block_clause
+ : (MINIMIZE | NOMINIMIZE)? RECORDS_PER_BLOCK
+ ;
+
+upgrade_table_clause
+ : UPGRADE (NOT? INCLUDING DATA) column_properties
+ ;
+
+drop_table
+ : DROP TABLE tableview_name PURGE? SEMICOLON
+ ;
+
+drop_view
+ : DROP VIEW tableview_name (CASCADE CONSTRAINT)? SEMICOLON
+ ;
+
+comment_on_column
+ : COMMENT ON COLUMN column_name IS quoted_string
+ ;
+
+enable_or_disable
+ : ENABLE
+ | DISABLE
+ ;
+allow_or_disallow
+ : ALLOW
+ | DISALLOW
+ ;
+
+// Synonym DDL Clauses
+
+create_synonym
+ // Synonym's schema cannot be specified for public synonyms
+ : CREATE (OR REPLACE)? PUBLIC SYNONYM synonym_name FOR (schema_name PERIOD)? schema_object_name (AT_SIGN link_name)?
+ | CREATE (OR REPLACE)? SYNONYM (schema_name PERIOD)? synonym_name FOR (schema_name PERIOD)? schema_object_name (AT_SIGN link_name)?
+ ;
+
+comment_on_table
+ : COMMENT ON TABLE tableview_name IS quoted_string
+ ;
+
+alter_cluster
+ : ALTER CLUSTER cluster_name
+ ( physical_attributes_clause
+ | SIZE size_clause
+ | allocate_extent_clause
+ | deallocate_unused_clause
+ | cache_or_nocache
+ )+
+ parallel_clause?
+ ';'
+ ;
+
+cache_or_nocache
+ : CACHE
+ | NOCACHE
+ ;
+
+database_name
+ : regular_id
+ ;
+
+alter_database
+ : ALTER DATABASE database_name?
+ ( startup_clauses
+ | recovery_clauses
+ | database_file_clauses
+ | logfile_clauses
+ | controlfile_clauses
+ | standby_database_clauses
+ | default_settings_clause
+ | instance_clauses
+ | security_clause
+ )
+ ';'
+ ;
+
+startup_clauses
+ : MOUNT ((STANDBY | CLONE) DATABASE)?
+ | OPEN (READ WRITE)? resetlogs_or_noresetlogs? upgrade_or_downgrade?
+ | OPEN READ ONLY
+ ;
+
+resetlogs_or_noresetlogs
+ : RESETLOGS
+ | NORESETLOGS
+ ;
+
+upgrade_or_downgrade
+ : UPGRADE
+ | DOWNGRADE
+ ;
+
+recovery_clauses
+ : general_recovery
+ | managed_standby_recovery
+ | begin_or_end BACKUP
+ ;
+
+begin_or_end
+ : BEGIN
+ | END
+ ;
+
+general_recovery
+ : RECOVER AUTOMATIC? (FROM CHAR_STRING)?
+ ( (full_database_recovery | partial_database_recovery | LOGFILE CHAR_STRING )?
+ ((TEST | ALLOW UNSIGNED_INTEGER CORRUPTION | parallel_clause)+ )?
+ | CONTINUE DEFAULT?
+ | CANCEL
+ )
+ ;
+
+//Need to come back to
+full_database_recovery
+ : STANDBY? DATABASE
+ ((UNTIL (CANCEL |TIME CHAR_STRING | CHANGE UNSIGNED_INTEGER | CONSISTENT)
+ | USING BACKUP CONTROLFILE
+ )+
+ )?
+ ;
+
+partial_database_recovery
+ : TABLESPACE tablespace (',' tablespace)*
+ | DATAFILE CHAR_STRING | filenumber (',' CHAR_STRING | filenumber)*
+ | partial_database_recovery_10g
+ ;
+
+partial_database_recovery_10g
+ : {isVersion10()}? STANDBY
+ ( TABLESPACE tablespace (',' tablespace)*
+ | DATAFILE CHAR_STRING | filenumber (',' CHAR_STRING | filenumber)*
+ )
+ UNTIL (CONSISTENT WITH)? CONTROLFILE
+ ;
+
+
+managed_standby_recovery
+ : RECOVER (MANAGED STANDBY DATABASE
+ ((USING CURRENT LOGFILE
+ | DISCONNECT (FROM SESSION)?
+ | NODELAY
+ | UNTIL CHANGE UNSIGNED_INTEGER
+ | UNTIL CONSISTENT
+ | parallel_clause
+ )+
+ | FINISH
+ | CANCEL
+ )?
+ | TO LOGICAL STANDBY (db_name | KEEP IDENTITY)
+ )
+ ;
+
+db_name
+ : regular_id
+ ;
+database_file_clauses
+ : RENAME FILE filename (',' filename)* TO filename
+ | create_datafile_clause
+ | alter_datafile_clause
+ | alter_tempfile_clause
+ ;
+
+create_datafile_clause
+ : CREATE DATAFILE (filename | filenumber) (',' (filename | filenumber) )*
+ (AS (//TODO (','? file_specification)+ |
+ NEW) )?
+ ;
+
+alter_datafile_clause
+ : DATAFILE (filename|filenumber) (',' (filename|filenumber) )*
+ ( ONLINE
+ | OFFLINE (FOR DROP)?
+ | RESIZE size_clause
+ | autoextend_clause
+ | END BACKUP
+ )
+ ;
+
+alter_tempfile_clause
+ : TEMPFILE (filename | filenumber) (',' (filename | filenumber) )*
+ ( RESIZE size_clause
+ | autoextend_clause
+ | DROP (INCLUDING DATAFILES)
+ | ONLINE
+ | OFFLINE
+ )
+ ;
+
+logfile_clauses
+ : (ARCHIVELOG MANUAL? | NOARCHIVELOG)
+ | NO? FORCE LOGGING
+ | RENAME FILE filename (',' filename)* TO filename
+ | CLEAR UNARCHIVED? LOGFILE logfile_descriptor (',' logfile_descriptor)* (UNRECOVERABLE DATAFILE)?
+ | add_logfile_clauses
+ | drop_logfile_clauses
+ | switch_logfile_clause
+ | supplemental_db_logging
+ ;
+
+add_logfile_clauses
+ : ADD STANDBY? LOGFILE
+ (
+//TODO (INSTANCE CHAR_STRING | THREAD UNSIGNED_INTEGER)?
+ (log_file_group redo_log_file_spec)+
+ | MEMBER filename REUSE? (',' filename REUSE?)* TO logfile_descriptor (',' logfile_descriptor)*
+ )
+ ;
+
+log_file_group
+ :(','? (THREAD UNSIGNED_INTEGER)? GROUP UNSIGNED_INTEGER)
+ ;
+
+drop_logfile_clauses
+ : DROP STANDBY?
+ LOGFILE (logfile_descriptor (',' logfile_descriptor)*
+ | MEMBER filename (',' filename)*
+ )
+ ;
+
+switch_logfile_clause
+ : SWITCH ALL LOGFILES TO BLOCKSIZE UNSIGNED_INTEGER
+ ;
+
+supplemental_db_logging
+ : add_or_drop
+ SUPPLEMENTAL LOG (DATA
+ | supplemental_id_key_clause
+ | supplemental_plsql_clause
+ )
+ ;
+
+add_or_drop
+ : ADD
+ | DROP
+ ;
+
+supplemental_plsql_clause
+ : DATA FOR PROCEDURAL REPLICATION
+ ;
+
+logfile_descriptor
+ : GROUP UNSIGNED_INTEGER
+ | '(' filename (',' filename)* ')'
+ | filename
+ ;
+
+controlfile_clauses
+ : CREATE (LOGICAL | PHYSICAL)? STANDBY CONTROLFILE AS filename REUSE?
+ | BACKUP CONTROLFILE TO (filename REUSE? | trace_file_clause)
+ ;
+
+trace_file_clause
+ : TRACE (AS filename REUSE?)? (RESETLOGS|NORESETLOGS)?
+ ;
+
+standby_database_clauses
+ : ( activate_standby_db_clause
+ | maximize_standby_db_clause
+ | register_logfile_clause
+ | commit_switchover_clause
+ | start_standby_clause
+ | stop_standby_clause
+ | convert_database_clause
+ )
+ parallel_clause?
+ ;
+
+activate_standby_db_clause
+ : ACTIVATE (PHYSICAL | LOGICAL)? STANDBY DATABASE (FINISH APPLY)?
+ ;
+
+maximize_standby_db_clause
+ : SET STANDBY DATABASE TO MAXIMIZE (PROTECTION | AVAILABILITY | PERFORMANCE)
+ ;
+
+register_logfile_clause
+ : REGISTER (OR REPLACE)? (PHYSICAL | LOGICAL) LOGFILE //TODO (','? file_specification)+
+ //TODO (FOR logminer_session_name)?
+ ;
+
+commit_switchover_clause
+ : (PREPARE | COMMIT) TO SWITCHOVER
+ ((TO (((PHYSICAL | LOGICAL)? PRIMARY | PHYSICAL? STANDBY)
+ ((WITH | WITHOUT)? SESSION SHUTDOWN (WAIT | NOWAIT) )?
+ | LOGICAL STANDBY
+ )
+ | LOGICAL STANDBY
+ )
+ | CANCEL
+ )?
+ ;
+
+start_standby_clause
+ : START LOGICAL STANDBY APPLY IMMEDIATE? NODELAY?
+ ( NEW PRIMARY regular_id
+ | INITIAL scn_value=UNSIGNED_INTEGER?
+ | SKIP_ FAILED TRANSACTION
+ | FINISH
+ )?
+ ;
+
+stop_standby_clause
+ : (STOP | ABORT) LOGICAL STANDBY APPLY
+ ;
+
+convert_database_clause
+ : CONVERT TO (PHYSICAL | SNAPSHOT) STANDBY
+ ;
+
+default_settings_clause
+ : DEFAULT EDITION EQUALS_OP edition_name
+ | SET DEFAULT (BIGFILE | SMALLFILE) TABLESPACE
+ | DEFAULT TABLESPACE tablespace
+ | DEFAULT TEMPORARY TABLESPACE (tablespace | tablespace_group_name)
+ | RENAME GLOBAL_NAME TO database ('.' domain)+
+ | ENABLE BLOCK CHANGE TRACKING (USING FILE filename REUSE?)?
+ | DISABLE BLOCK CHANGE TRACKING
+ | flashback_mode_clause
+ | set_time_zone_clause
+ ;
+
+set_time_zone_clause
+ : SET TIMEZONE EQUALS_OP CHAR_STRING
+ ;
+
+instance_clauses
+ : enable_or_disable INSTANCE CHAR_STRING
+ ;
+
+security_clause
+ : GUARD (ALL | STANDBY | NONE)
+ ;
+
+domain
+ : regular_id
+ ;
+
+database
+ : regular_id
+ ;
+
+edition_name
+ : regular_id
+ ;
+
+filenumber
+ : UNSIGNED_INTEGER
+ ;
+
+filename
+ : CHAR_STRING
+ ;
+
+alter_table
+ : ALTER TABLE tableview_name
+ (
+ | alter_table_properties
+ | constraint_clauses
+ | column_clauses
+//TODO | alter_table_partitioning
+//TODO | alter_external_table
+ | move_table_clause
+ )
+ ((enable_disable_clause | enable_or_disable (TABLE LOCK | ALL TRIGGERS) )+)?
+ ';'
+ ;
+
+alter_table_properties
+ : alter_table_properties_1
+ | RENAME TO tableview_name
+ | shrink_clause
+ | READ ONLY
+ | READ WRITE
+ | REKEY CHAR_STRING
+ ;
+
+alter_table_properties_1
+ : ( physical_attributes_clause
+ | logging_clause
+ | table_compression
+ | supplemental_table_logging
+ | allocate_extent_clause
+ | deallocate_unused_clause
+ | (CACHE | NOCACHE)
+ | RESULT_CACHE '(' MODE (DEFAULT | FORCE) ')'
+ | upgrade_table_clause
+ | records_per_block_clause
+ | parallel_clause
+ | row_movement_clause
+ | flashback_archive_clause
+ )+
+ alter_iot_clauses?
+ ;
+
+alter_iot_clauses
+ : index_org_table_clause
+ | alter_overflow_clause
+ | alter_mapping_table_clause
+ | COALESCE
+ ;
+
+alter_mapping_table_clause
+ : MAPPING TABLE (allocate_extent_clause | deallocate_unused_clause)
+ ;
+
+alter_overflow_clause
+ : add_overflow_clause
+ | OVERFLOW (segment_attributes_clause | allocate_extent_clause | shrink_clause | deallocate_unused_clause)+
+ ;
+
+add_overflow_clause
+ : ADD OVERFLOW segment_attributes_clause? ('(' PARTITION segment_attributes_clause? (',' PARTITION segment_attributes_clause?)* ')' )?
+ ;
+
+
+enable_disable_clause
+ : (ENABLE | DISABLE) (VALIDATE | NOVALIDATE)?
+ (UNIQUE '(' column_name (',' column_name)* ')'
+ | PRIMARY KEY
+ | CONSTRAINT constraint_name
+ ) using_index_clause? exceptions_clause?
+ CASCADE? ((KEEP | DROP) INDEX)?
+ ;
+
+using_index_clause
+ : USING INDEX (index_name | '(' create_index ')' | index_attributes )?
+ ;
+
+index_attributes
+ : ( physical_attributes_clause
+ | logging_clause
+ | TABLESPACE (tablespace | DEFAULT)
+ | key_compression
+ | sort_or_nosort
+ | REVERSE
+ | visible_or_invisible
+ | parallel_clause
+ )+
+ ;
+
+sort_or_nosort
+ : SORT
+ | NOSORT
+ ;
+
+exceptions_clause
+ : EXCEPTIONS INTO tableview_name
+ ;
+
+move_table_clause
+ : MOVE ONLINE? segment_attributes_clause? table_compression? index_org_table_clause? ((lob_storage_clause | varray_col_properties)+)? parallel_clause?
+ ;
+
+index_org_table_clause
+ : (mapping_table_clause | PCTTHRESHOLD UNSIGNED_INTEGER | key_compression) index_org_overflow_clause?
+ ;
+
+mapping_table_clause
+ : MAPPING TABLE
+ | NOMAPPING
+ ;
+
+key_compression
+ : NOCOMPRESS
+ | COMPRESS UNSIGNED_INTEGER
+ ;
+
+index_org_overflow_clause
+ : (INCLUDING column_name)? OVERFLOW segment_attributes_clause?
+ ;
+
+column_clauses
+ : add_modify_drop_column_clauses
+ | rename_column_clause
+ | modify_collection_retrieval
+ | modify_lob_storage_clause
+ ;
+
+modify_collection_retrieval
+ : MODIFY NESTED TABLE collection_item RETURN AS (LOCATOR | VALUE)
+ ;
+
+collection_item
+ : tableview_name
+ ;
+
+rename_column_clause
+ : RENAME COLUMN old_column_name TO new_column_name
+ ;
+
+old_column_name
+ : column_name
+ ;
+
+new_column_name
+ : column_name
+ ;
+
+add_modify_drop_column_clauses
+ : (add_column_clause
+ |modify_column_clauses
+ |drop_column_clause
+ )+
+ ;
+
+drop_column_clause
+ : SET UNUSED (COLUMN column_name| ('(' column_name (',' column_name)* ')' )) (CASCADE CONSTRAINTS | INVALIDATE)*
+ | DROP (COLUMN column_name | '(' column_name (',' column_name)* ')' ) (CASCADE CONSTRAINTS | INVALIDATE)* (CHECKPOINT UNSIGNED_INTEGER)?
+ | DROP (UNUSED COLUMNS | COLUMNS CONTINUE) (CHECKPOINT UNSIGNED_INTEGER)
+ ;
+
+modify_column_clauses
+ : MODIFY ('(' modify_col_properties (',' modify_col_properties)* ')'
+ | modify_col_properties
+ | modify_col_substitutable
+ )
+ ;
+
+modify_col_properties
+ : column_name datatype? (DEFAULT expression)? (ENCRYPT encryption_spec | DECRYPT)? inline_constraint* lob_storage_clause? //TODO alter_xmlschema_clause
+ ;
+
+modify_col_substitutable
+ : COLUMN column_name NOT? SUBSTITUTABLE AT ALL LEVELS FORCE?
+ ;
+
+add_column_clause
+ : ADD ('(' (column_definition | virtual_column_definition) (',' (column_definition
+ | virtual_column_definition)
+ )*
+ ')'
+ | ( column_definition | virtual_column_definition ))
+ column_properties?
+//TODO (','? out_of_line_part_storage )
+ ;
+
+alter_varray_col_properties
+ : MODIFY VARRAY varray_item '(' modify_lob_parameters ')'
+ ;
+
+varray_col_properties
+ : VARRAY varray_item ( substitutable_column_clause? varray_storage_clause
+ | substitutable_column_clause
+ )
+ ;
+
+varray_storage_clause
+ : STORE AS (SECUREFILE|BASICFILE)? LOB ( lob_segname? '(' lob_storage_parameters ')'
+ | lob_segname
+ )
+ ;
+
+lob_segname
+ : regular_id
+ ;
+
+lob_item
+ : regular_id
+ ;
+
+lob_storage_parameters
+ : TABLESPACE tablespace | (lob_parameters storage_clause? )
+ | storage_clause
+ ;
+
+lob_storage_clause
+ : LOB ( '(' lob_item (',' lob_item)* ')' STORE AS ( (SECUREFILE|BASICFILE) | '(' lob_storage_parameters ')' )+
+ | '(' lob_item ')' STORE AS ( (SECUREFILE | BASICFILE) | lob_segname | '(' lob_storage_parameters ')' )+
+ )
+ ;
+
+modify_lob_storage_clause
+ : MODIFY LOB '(' lob_item ')' '(' modify_lob_parameters ')'
+ ;
+
+modify_lob_parameters
+ : ( storage_clause
+ | (PCTVERSION | FREEPOOLS) UNSIGNED_INTEGER
+ | REBUILD FREEPOOLS
+ | lob_retention_clause
+ | lob_deduplicate_clause
+ | lob_compression_clause
+ | ENCRYPT encryption_spec
+ | DECRYPT
+ | CACHE
+ | (CACHE | NOCACHE | CACHE READS) logging_clause?
+ | allocate_extent_clause
+ | shrink_clause
+ | deallocate_unused_clause
+ )+
+ ;
+
+lob_parameters
+ : ( (ENABLE | DISABLE) STORAGE IN ROW
+ | CHUNK UNSIGNED_INTEGER
+ | PCTVERSION UNSIGNED_INTEGER
+ | FREEPOOLS UNSIGNED_INTEGER
+ | lob_retention_clause
+ | lob_deduplicate_clause
+ | lob_compression_clause
+ | ENCRYPT encryption_spec
+ | DECRYPT
+ | (CACHE | NOCACHE | CACHE READS) logging_clause?
+ )+
+ ;
+
+lob_deduplicate_clause
+ : DEDUPLICATE
+ | KEEP_DUPLICATES
+ ;
+
+lob_compression_clause
+ : NOCOMPRESS
+ | COMPRESS (HIGH | MEDIUM | LOW)?
+ ;
+
+lob_retention_clause
+ : RETENTION (MAX | MIN UNSIGNED_INTEGER | AUTO | NONE)?
+ ;
+
+encryption_spec
+ : (USING CHAR_STRING)? (IDENTIFIED BY REGULAR_ID)? CHAR_STRING? (NO? SALT)?
+ ;
+tablespace
+ : regular_id
+ ;
+
+varray_item
+ : (id_expression '.')? (id_expression '.')? id_expression
+ ;
+
+column_properties
+ : object_type_col_properties
+ | nested_table_col_properties
+ | (varray_col_properties | lob_storage_clause) //TODO '(' ( ','? lob_partition_storage)+ ')'
+ | xmltype_column_properties
+ ;
+
+period_definition
+ : {this.isVersion12()}? PERIOD FOR column_name
+ ( '(' start_time_column ',' end_time_column ')' )?
+ ;
+
+start_time_column
+ : column_name
+ ;
+
+end_time_column
+ : column_name
+ ;
+
+column_definition
+ : column_name (datatype | type_name)
+ SORT? (DEFAULT expression)? (ENCRYPT (USING CHAR_STRING)? (IDENTIFIED BY regular_id)? CHAR_STRING? (NO? SALT)? )? (inline_constraint* | inline_ref_constraint)
+ ;
+
+virtual_column_definition
+ : column_name datatype? autogenerated_sequence_definition?
+ VIRTUAL? inline_constraint*
+ ;
+
+autogenerated_sequence_definition
+ : GENERATED (ALWAYS | BY DEFAULT (ON NULL_)?)? AS IDENTITY
+ ;
+
+out_of_line_part_storage
+ : PARTITION partition_name
+ ;
+
+nested_table_col_properties
+ : NESTED TABLE (nested_item | COLUMN_VALUE) substitutable_column_clause? (LOCAL | GLOBAL)?
+ STORE AS tableview_name ( '(' ( '(' object_properties ')'
+ | physical_properties
+ | column_properties
+ )+
+ ')'
+ )?
+ (RETURN AS? (LOCATOR | VALUE) )?
+ ;
+
+nested_item
+ : regular_id
+ ;
+
+substitutable_column_clause
+ : ELEMENT? IS OF TYPE? '(' type_name ')'
+ | NOT? SUBSTITUTABLE AT ALL LEVELS
+ ;
+
+partition_name
+ : regular_id
+ ;
+
+supplemental_logging_props
+ : SUPPLEMENTAL LOG (supplemental_log_grp_clause | supplemental_id_key_clause)
+ ;
+
+column_or_attribute
+ : regular_id
+ ;
+
+object_type_col_properties
+ : COLUMN column=regular_id substitutable_column_clause
+ ;
+
+constraint_clauses
+ : ADD '(' (out_of_line_constraint* | out_of_line_ref_constraint) ')'
+ | ADD (out_of_line_constraint* | out_of_line_ref_constraint)
+ | MODIFY (CONSTRAINT constraint_name | PRIMARY KEY | UNIQUE '(' column_name (',' column_name)* ')') constraint_state CASCADE?
+ | RENAME CONSTRAINT old_constraint_name TO new_constraint_name
+ | drop_constraint_clause+
+ ;
+
+old_constraint_name
+ : constraint_name
+ ;
+
+new_constraint_name
+ : constraint_name
+ ;
+
+drop_constraint_clause
+ : DROP drop_primary_key_or_unique_or_generic_clause
+ ;
+
+drop_primary_key_or_unique_or_generic_clause
+ : (PRIMARY KEY | UNIQUE '(' column_name (',' column_name)* ')') CASCADE? (KEEP | DROP)?
+ | CONSTRAINT constraint_name CASCADE?
+ ;
+
+add_constraint
+ : ADD (CONSTRAINT constraint_name)? add_constraint_clause (',' (CONSTRAINT constraint_name)? add_constraint_clause)+
+ ;
+
+add_constraint_clause
+ : primary_key_clause
+ | foreign_key_clause
+ | unique_key_clause
+ | check_constraint
+ ;
+
+check_constraint
+ : CHECK '(' condition ')' DISABLE?
+ ;
+
+drop_constraint
+ : DROP CONSTRAINT constraint_name
+ ;
+
+enable_constraint
+ : ENABLE CONSTRAINT constraint_name
+ ;
+
+disable_constraint
+ : DISABLE CONSTRAINT constraint_name
+ ;
+
+foreign_key_clause
+ : FOREIGN KEY paren_column_list references_clause on_delete_clause?
+ ;
+
+references_clause
+ : REFERENCES tableview_name paren_column_list
+ ;
+
+on_delete_clause
+ : ON DELETE (CASCADE | SET NULL_)
+ ;
+
+unique_key_clause
+ : UNIQUE paren_column_list using_index_clause?
+ ;
+
+primary_key_clause
+ : PRIMARY KEY paren_column_list using_index_clause?
+ ;
+
+// Anonymous PL/SQL code block
+
+anonymous_block
+ : (DECLARE seq_of_declare_specs)? BEGIN seq_of_statements (EXCEPTION exception_handler+)? END SEMICOLON
+ ;
+
+// Common DDL Clauses
+
+invoker_rights_clause
+ : AUTHID (CURRENT_USER | DEFINER)
+ ;
+
+call_spec
+ : LANGUAGE (java_spec | c_spec)
+ ;
+
+// Call Spec Specific Clauses
+
+java_spec
+ : JAVA NAME CHAR_STRING
+ ;
+
+c_spec
+ : C_LETTER (NAME CHAR_STRING)? LIBRARY identifier c_agent_in_clause? (WITH CONTEXT)? c_parameters_clause?
+ ;
+
+c_agent_in_clause
+ : AGENT IN '(' expressions ')'
+ ;
+
+c_parameters_clause
+ : PARAMETERS '(' (expressions | '.' '.' '.') ')'
+ ;
+
+parameter
+ : parameter_name (IN | OUT | INOUT | NOCOPY)* type_spec? default_value_part?
+ ;
+
+default_value_part
+ : (ASSIGN_OP | DEFAULT) expression
+ ;
+
+// Elements Declarations
+
+seq_of_declare_specs
+ : declare_spec+
+ ;
+
+declare_spec
+ : pragma_declaration
+ | variable_declaration
+ | subtype_declaration
+ | cursor_declaration
+ | exception_declaration
+ | type_declaration
+ | procedure_spec
+ | function_spec
+ | procedure_body
+ | function_body
+ ;
+
+// incorporates constant_declaration
+variable_declaration
+ : identifier CONSTANT? type_spec (NOT NULL_)? default_value_part? ';'
+ ;
+
+subtype_declaration
+ : SUBTYPE identifier IS type_spec (RANGE expression '..' expression)? (NOT NULL_)? ';'
+ ;
+
+// cursor_declaration incorportates curscursor_body and cursor_spec
+
+cursor_declaration
+ : CURSOR identifier ('(' parameter_spec (',' parameter_spec)* ')' )? (RETURN type_spec)? (IS select_statement)? ';'
+ ;
+
+parameter_spec
+ : parameter_name (IN? type_spec)? default_value_part?
+ ;
+
+exception_declaration
+ : identifier EXCEPTION ';'
+ ;
+
+pragma_declaration
+ : PRAGMA (SERIALLY_REUSABLE
+ | AUTONOMOUS_TRANSACTION
+ | EXCEPTION_INIT '(' exception_name ',' numeric_negative ')'
+ | INLINE '(' id1=identifier ',' expression ')'
+ | RESTRICT_REFERENCES '(' (identifier | DEFAULT) (',' identifier)+ ')') ';'
+ ;
+
+// Record Declaration Specific Clauses
+
+// incorporates ref_cursor_type_definition
+
+record_type_def
+ : RECORD '(' field_spec (',' field_spec)* ')'
+ ;
+
+field_spec
+ : column_name type_spec? (NOT NULL_)? default_value_part?
+ ;
+
+ref_cursor_type_def
+ : REF CURSOR (RETURN type_spec)?
+ ;
+
+type_declaration
+ : TYPE identifier IS (table_type_def | varray_type_def | record_type_def | ref_cursor_type_def) ';'
+ ;
+
+table_type_def
+ : TABLE OF type_spec table_indexed_by_part? (NOT NULL_)?
+ ;
+
+table_indexed_by_part
+ : (idx1=INDEXED | idx2=INDEX) BY type_spec
+ ;
+
+varray_type_def
+ : (VARRAY | VARYING ARRAY) '(' expression ')' OF type_spec (NOT NULL_)?
+ ;
+
+// Statements
+
+seq_of_statements
+ : (statement (';' | EOF) | label_declaration)+
+ ;
+
+label_declaration
+ : ltp1= '<' '<' label_name '>' '>'
+ ;
+
+statement
+ : body
+ | block
+ | assignment_statement
+ | continue_statement
+ | exit_statement
+ | goto_statement
+ | if_statement
+ | loop_statement
+ | forall_statement
+ | null_statement
+ | raise_statement
+ | return_statement
+ | case_statement
+ | sql_statement
+ | function_call
+ | pipe_row_statement
+ | procedure_call
+ ;
+
+swallow_to_semi
+ : ~';'+
+ ;
+
+assignment_statement
+ : (general_element | bind_variable) ASSIGN_OP expression
+ ;
+
+continue_statement
+ : CONTINUE label_name? (WHEN condition)?
+ ;
+
+exit_statement
+ : EXIT label_name? (WHEN condition)?
+ ;
+
+goto_statement
+ : GOTO label_name
+ ;
+
+if_statement
+ : IF condition THEN seq_of_statements elsif_part* else_part? END IF
+ ;
+
+elsif_part
+ : ELSIF condition THEN seq_of_statements
+ ;
+
+else_part
+ : ELSE seq_of_statements
+ ;
+
+loop_statement
+ : label_declaration? (WHILE condition | FOR cursor_loop_param)? LOOP seq_of_statements END LOOP label_name?
+ ;
+
+// Loop Specific Clause
+
+cursor_loop_param
+ : index_name IN REVERSE? lower_bound range_separator='..' upper_bound
+ | record_name IN (cursor_name ('(' expressions? ')')? | '(' select_statement ')')
+ ;
+
+forall_statement
+ : FORALL index_name IN bounds_clause sql_statement (SAVE EXCEPTIONS)?
+ ;
+
+bounds_clause
+ : lower_bound '..' upper_bound
+ | INDICES OF collection_name between_bound?
+ | VALUES OF index_name
+ ;
+
+between_bound
+ : BETWEEN lower_bound AND upper_bound
+ ;
+
+lower_bound
+ : concatenation
+ ;
+
+upper_bound
+ : concatenation
+ ;
+
+null_statement
+ : NULL_
+ ;
+
+raise_statement
+ : RAISE exception_name?
+ ;
+
+return_statement
+ : RETURN expression?
+ ;
+
+function_call
+ : CALL? routine_name function_argument?
+ ;
+
+procedure_call
+ : routine_name function_argument?
+ ;
+
+pipe_row_statement
+ : PIPE ROW '(' expression ')';
+
+body
+ : BEGIN seq_of_statements (EXCEPTION exception_handler+)? END label_name?
+ ;
+
+// Body Specific Clause
+
+exception_handler
+ : WHEN exception_name (OR exception_name)* THEN seq_of_statements
+ ;
+
+trigger_block
+ : (DECLARE? declare_spec+)? body
+ ;
+
+block
+ : DECLARE? declare_spec+ body
+ ;
+
+// SQL Statements
+
+sql_statement
+ : execute_immediate
+ | data_manipulation_language_statements
+ | cursor_manipulation_statements
+ | transaction_control_statements
+ ;
+
+execute_immediate
+ : EXECUTE IMMEDIATE expression (into_clause using_clause? | using_clause dynamic_returning_clause? | dynamic_returning_clause)?
+ ;
+
+// Execute Immediate Specific Clause
+
+dynamic_returning_clause
+ : (RETURNING | RETURN) into_clause
+ ;
+
+// DML Statements
+
+data_manipulation_language_statements
+ : merge_statement
+ | lock_table_statement
+ | select_statement
+ | update_statement
+ | delete_statement
+ | insert_statement
+ | explain_statement
+ ;
+
+// Cursor Manipulation Statements
+
+cursor_manipulation_statements
+ : close_statement
+ | open_statement
+ | fetch_statement
+ | open_for_statement
+ ;
+
+close_statement
+ : CLOSE cursor_name
+ ;
+
+open_statement
+ : OPEN cursor_name ('(' expressions? ')')?
+ ;
+
+fetch_statement
+ : FETCH cursor_name (it1=INTO variable_name (',' variable_name)* | BULK COLLECT INTO variable_name (',' variable_name)*)
+ ;
+
+open_for_statement
+ : OPEN variable_name FOR (select_statement | expression) using_clause?
+ ;
+
+// Transaction Control SQL Statements
+
+transaction_control_statements
+ : set_transaction_command
+ | set_constraint_command
+ | commit_statement
+ | rollback_statement
+ | savepoint_statement
+ ;
+
+set_transaction_command
+ : SET TRANSACTION
+ (READ (ONLY | WRITE) | ISOLATION LEVEL (SERIALIZABLE | READ COMMITTED) | USE ROLLBACK SEGMENT rollback_segment_name)?
+ (NAME quoted_string)?
+ ;
+
+set_constraint_command
+ : SET (CONSTRAINT | CONSTRAINTS) (ALL | constraint_name (',' constraint_name)*) (IMMEDIATE | DEFERRED)
+ ;
+
+commit_statement
+ : COMMIT WORK?
+ (COMMENT expression | FORCE (CORRUPT_XID expression | CORRUPT_XID_ALL | expression (',' expression)?))?
+ write_clause?
+ ;
+
+write_clause
+ : WRITE (WAIT | NOWAIT)? (IMMEDIATE | BATCH)?
+ ;
+
+rollback_statement
+ : ROLLBACK WORK? (TO SAVEPOINT? savepoint_name | FORCE quoted_string)?
+ ;
+
+savepoint_statement
+ : SAVEPOINT savepoint_name
+ ;
+
+// Dml
+
+/* TODO
+//SHOULD BE OVERRIDEN!
+compilation_unit
+ : seq_of_statements* EOF
+ ;
+
+//SHOULD BE OVERRIDEN!
+seq_of_statements
+ : select_statement
+ | update_statement
+ | delete_statement
+ | insert_statement
+ | lock_table_statement
+ | merge_statement
+ | explain_statement
+// | case_statement[true]
+ ;
+*/
+
+explain_statement
+ : EXPLAIN PLAN (SET STATEMENT_ID '=' quoted_string)? (INTO tableview_name)?
+ FOR (select_statement | update_statement | delete_statement | insert_statement | merge_statement)
+ ;
+
+select_only_statement
+ : subquery_factoring_clause? subquery
+ ;
+
+select_statement
+ : select_only_statement (for_update_clause | order_by_clause | offset_clause | fetch_clause)*
+ ;
+
+// Select Specific Clauses
+
+subquery_factoring_clause
+ : WITH factoring_element (',' factoring_element)*
+ ;
+
+factoring_element
+ : query_name paren_column_list? AS '(' subquery order_by_clause? ')'
+ search_clause? cycle_clause?
+ ;
+
+search_clause
+ : SEARCH (DEPTH | BREADTH) FIRST BY column_name ASC? DESC? (NULLS FIRST)? (NULLS LAST)?
+ (',' column_name ASC? DESC? (NULLS FIRST)? (NULLS LAST)?)* SET column_name
+ ;
+
+cycle_clause
+ : CYCLE column_list SET column_name TO expression DEFAULT expression
+ ;
+
+subquery
+ : subquery_basic_elements subquery_operation_part*
+ ;
+
+subquery_basic_elements
+ : query_block
+ | '(' subquery ')'
+ ;
+
+subquery_operation_part
+ : (UNION ALL? | INTERSECT | MINUS) subquery_basic_elements
+ ;
+
+query_block
+ : SELECT (DISTINCT | UNIQUE | ALL)? selected_list
+ into_clause? from_clause where_clause? hierarchical_query_clause? group_by_clause? model_clause? order_by_clause?
+ ;
+
+selected_list
+ : '*'
+ | select_list_elements (',' select_list_elements)*
+ ;
+
+from_clause
+ : FROM table_ref_list
+ ;
+
+select_list_elements
+ : tableview_name '.' ASTERISK
+ | expression column_alias?
+ ;
+
+table_ref_list
+ : table_ref (',' table_ref)*
+ ;
+
+// NOTE to PIVOT clause
+// according the SQL reference this should not be possible
+// according to he reality it is. Here we probably apply pivot/unpivot onto whole join clause
+// eventhough it is not enclosed in parenthesis. See pivot examples 09,10,11
+
+table_ref
+ : table_ref_aux join_clause* (pivot_clause | unpivot_clause)?
+ ;
+
+table_ref_aux
+ : table_ref_aux_internal flashback_query_clause* (/*{isTableAlias()}?*/ table_alias)?
+ ;
+
+table_ref_aux_internal
+ : dml_table_expression_clause (pivot_clause | unpivot_clause)? # table_ref_aux_internal_one
+ | '(' table_ref subquery_operation_part* ')' (pivot_clause | unpivot_clause)? # table_ref_aux_internal_two
+ | ONLY '(' dml_table_expression_clause ')' # table_ref_aux_internal_three
+ ;
+
+join_clause
+ : query_partition_clause? (CROSS | NATURAL)? (INNER | outer_join_type)?
+ JOIN table_ref_aux query_partition_clause? (join_on_part | join_using_part)*
+ ;
+
+join_on_part
+ : ON condition
+ ;
+
+join_using_part
+ : USING paren_column_list
+ ;
+
+outer_join_type
+ : (FULL | LEFT | RIGHT) OUTER?
+ ;
+
+query_partition_clause
+ : PARTITION BY (('(' (subquery | expressions)? ')') | expressions)
+ ;
+
+flashback_query_clause
+ : VERSIONS BETWEEN (SCN | TIMESTAMP) expression
+ | AS OF (SCN | TIMESTAMP | SNAPSHOT) expression
+ ;
+
+pivot_clause
+ : PIVOT XML? '(' pivot_element (',' pivot_element)* pivot_for_clause pivot_in_clause ')'
+ ;
+
+pivot_element
+ : aggregate_function_name '(' expression ')' column_alias?
+ ;
+
+pivot_for_clause
+ : FOR (column_name | paren_column_list)
+ ;
+
+pivot_in_clause
+ : IN '(' (subquery | ANY (',' ANY)* | pivot_in_clause_element (',' pivot_in_clause_element)*) ')'
+ ;
+
+pivot_in_clause_element
+ : pivot_in_clause_elements column_alias?
+ ;
+
+pivot_in_clause_elements
+ : expression
+ | '(' expressions? ')'
+ ;
+
+unpivot_clause
+ : UNPIVOT ((INCLUDE | EXCLUDE) NULLS)?
+ '(' (column_name | paren_column_list) pivot_for_clause unpivot_in_clause ')'
+ ;
+
+unpivot_in_clause
+ : IN '(' unpivot_in_elements (',' unpivot_in_elements)* ')'
+ ;
+
+unpivot_in_elements
+ : (column_name | paren_column_list)
+ (AS (constant | '(' constant (',' constant)* ')'))?
+ ;
+
+hierarchical_query_clause
+ : CONNECT BY NOCYCLE? condition start_part?
+ | start_part CONNECT BY NOCYCLE? condition
+ ;
+
+start_part
+ : START WITH condition
+ ;
+
+group_by_clause
+ : GROUP BY group_by_elements (',' group_by_elements)* having_clause?
+ | having_clause (GROUP BY group_by_elements (',' group_by_elements)*)?
+ ;
+
+group_by_elements
+ : grouping_sets_clause
+ | rollup_cube_clause
+ | expression
+ ;
+
+rollup_cube_clause
+ : (ROLLUP | CUBE) '(' grouping_sets_elements (',' grouping_sets_elements)* ')'
+ ;
+
+grouping_sets_clause
+ : GROUPING SETS '(' grouping_sets_elements (',' grouping_sets_elements)* ')'
+ ;
+
+grouping_sets_elements
+ : rollup_cube_clause
+ | '(' expressions? ')'
+ | expression
+ ;
+
+having_clause
+ : HAVING condition
+ ;
+
+model_clause
+ : MODEL cell_reference_options* return_rows_clause? reference_model* main_model
+ ;
+
+cell_reference_options
+ : (IGNORE | KEEP) NAV
+ | UNIQUE (DIMENSION | SINGLE REFERENCE)
+ ;
+
+return_rows_clause
+ : RETURN (UPDATED | ALL) ROWS
+ ;
+
+reference_model
+ : REFERENCE reference_model_name ON '(' subquery ')' model_column_clauses cell_reference_options*
+ ;
+
+main_model
+ : (MAIN main_model_name)? model_column_clauses cell_reference_options* model_rules_clause
+ ;
+
+model_column_clauses
+ : model_column_partition_part? DIMENSION BY model_column_list MEASURES model_column_list
+ ;
+
+model_column_partition_part
+ : PARTITION BY model_column_list
+ ;
+
+model_column_list
+ : '(' model_column (',' model_column)* ')'
+ ;
+
+model_column
+ : (expression | query_block) column_alias?
+ ;
+
+model_rules_clause
+ : model_rules_part? '(' (model_rules_element (',' model_rules_element)*)? ')'
+ ;
+
+model_rules_part
+ : RULES (UPDATE | UPSERT ALL?)? ((AUTOMATIC | SEQUENTIAL) ORDER)? model_iterate_clause?
+ ;
+
+model_rules_element
+ : (UPDATE | UPSERT ALL?)? cell_assignment order_by_clause? '=' expression
+ ;
+
+cell_assignment
+ : model_expression
+ ;
+
+model_iterate_clause
+ : ITERATE '(' expression ')' until_part?
+ ;
+
+until_part
+ : UNTIL '(' condition ')'
+ ;
+
+order_by_clause
+ : ORDER SIBLINGS? BY order_by_elements (',' order_by_elements)*
+ ;
+
+order_by_elements
+ : expression (ASC | DESC)? (NULLS (FIRST | LAST))?
+ ;
+
+offset_clause
+ : OFFSET expression (ROW | ROWS)
+ ;
+
+fetch_clause
+ : FETCH (FIRST | NEXT) (expression PERCENT_KEYWORD?)? (ROW | ROWS) (ONLY | WITH TIES)
+ ;
+
+for_update_clause
+ : FOR UPDATE for_update_of_part? for_update_options?
+ ;
+
+for_update_of_part
+ : OF column_list
+ ;
+
+for_update_options
+ : SKIP_ LOCKED
+ | NOWAIT
+ | WAIT expression
+ ;
+
+update_statement
+ : UPDATE general_table_ref update_set_clause where_clause? static_returning_clause? error_logging_clause?
+ ;
+
+// Update Specific Clauses
+
+update_set_clause
+ : SET
+ (column_based_update_set_clause (',' column_based_update_set_clause)* | VALUE '(' identifier ')' '=' expression)
+ ;
+
+column_based_update_set_clause
+ : column_name '=' expression
+ | paren_column_list '=' subquery
+ ;
+
+delete_statement
+ : DELETE FROM? general_table_ref where_clause? static_returning_clause? error_logging_clause?
+ ;
+
+insert_statement
+ : INSERT (single_table_insert | multi_table_insert)
+ ;
+
+// Insert Specific Clauses
+
+single_table_insert
+ : insert_into_clause (values_clause static_returning_clause? | select_statement) error_logging_clause?
+ ;
+
+multi_table_insert
+ : (ALL multi_table_element+ | conditional_insert_clause) select_statement
+ ;
+
+multi_table_element
+ : insert_into_clause values_clause? error_logging_clause?
+ ;
+
+conditional_insert_clause
+ : (ALL | FIRST)? conditional_insert_when_part+ conditional_insert_else_part?
+ ;
+
+conditional_insert_when_part
+ : WHEN condition THEN multi_table_element+
+ ;
+
+conditional_insert_else_part
+ : ELSE multi_table_element+
+ ;
+
+insert_into_clause
+ : INTO general_table_ref paren_column_list?
+ ;
+
+values_clause
+ : VALUES '(' expressions? ')'
+ ;
+
+merge_statement
+ : MERGE INTO tableview_name table_alias? USING selected_tableview ON '(' condition ')'
+ (merge_update_clause merge_insert_clause? | merge_insert_clause merge_update_clause?)?
+ error_logging_clause?
+ ;
+
+// Merge Specific Clauses
+
+merge_update_clause
+ : WHEN MATCHED THEN UPDATE SET merge_element (',' merge_element)* where_clause? merge_update_delete_part?
+ ;
+
+merge_element
+ : column_name '=' expression
+ ;
+
+merge_update_delete_part
+ : DELETE where_clause
+ ;
+
+merge_insert_clause
+ : WHEN NOT MATCHED THEN INSERT paren_column_list?
+ VALUES '(' expressions? ')' where_clause?
+ ;
+
+selected_tableview
+ : (tableview_name | '(' select_statement ')') table_alias?
+ ;
+
+lock_table_statement
+ : LOCK TABLE lock_table_element (',' lock_table_element)* IN lock_mode MODE wait_nowait_part?
+ ;
+
+wait_nowait_part
+ : WAIT expression
+ | NOWAIT
+ ;
+
+// Lock Specific Clauses
+
+lock_table_element
+ : tableview_name partition_extension_clause?
+ ;
+
+lock_mode
+ : ROW SHARE
+ | ROW EXCLUSIVE
+ | SHARE UPDATE?
+ | SHARE ROW EXCLUSIVE
+ | EXCLUSIVE
+ ;
+
+// Common DDL Clauses
+
+general_table_ref
+ : (dml_table_expression_clause | ONLY '(' dml_table_expression_clause ')') table_alias?
+ ;
+
+static_returning_clause
+ : (RETURNING | RETURN) expressions into_clause
+ ;
+
+error_logging_clause
+ : LOG ERRORS error_logging_into_part? expression? error_logging_reject_part?
+ ;
+
+error_logging_into_part
+ : INTO tableview_name
+ ;
+
+error_logging_reject_part
+ : REJECT LIMIT (UNLIMITED | expression)
+ ;
+
+dml_table_expression_clause
+ : table_collection_expression
+ | '(' select_statement subquery_restriction_clause? ')'
+ | tableview_name sample_clause?
+ ;
+
+table_collection_expression
+ : (TABLE | THE) ('(' subquery ')' | '(' expression ')' outer_join_sign?)
+ ;
+
+subquery_restriction_clause
+ : WITH (READ ONLY | CHECK OPTION (CONSTRAINT constraint_name)?)
+ ;
+
+sample_clause
+ : SAMPLE BLOCK? '(' expression (',' expression)? ')' seed_part?
+ ;
+
+seed_part
+ : SEED '(' expression ')'
+ ;
+
+// Expression & Condition
+
+condition
+ : expression
+ ;
+
+expressions
+ : expression (',' expression)*
+ ;
+
+expression
+ : cursor_expression
+ | logical_expression
+ ;
+
+cursor_expression
+ : CURSOR '(' subquery ')'
+ ;
+
+logical_expression
+ : unary_logical_expression
+ | logical_expression AND logical_expression
+ | logical_expression OR logical_expression
+ ;
+
+unary_logical_expression
+ : NOT? multiset_expression (IS NOT? logical_operation)*
+ ;
+
+logical_operation:
+ (NULL_
+ | NAN | PRESENT
+ | INFINITE | A_LETTER SET | EMPTY
+ | OF TYPE? '(' ONLY? type_spec (',' type_spec)* ')')
+ ;
+
+multiset_expression
+ : relational_expression (multiset_type=(MEMBER | SUBMULTISET) OF? concatenation)?
+ ;
+
+relational_expression
+ : relational_expression relational_operator relational_expression
+ | compound_expression
+ ;
+
+compound_expression
+ : concatenation
+ (NOT? ( IN in_elements
+ | BETWEEN between_elements
+ | like_type=(LIKE | LIKEC | LIKE2 | LIKE4) concatenation (ESCAPE concatenation)?))?
+ ;
+
+relational_operator
+ : '='
+ | (NOT_EQUAL_OP | '<' '>' | '!' '=' | '^' '=')
+ | ('<' | '>') '='?
+ ;
+
+in_elements
+ : '(' subquery ')'
+ | '(' concatenation (',' concatenation)* ')'
+ | constant
+ | bind_variable
+ | general_element
+ ;
+
+between_elements
+ : concatenation AND concatenation
+ ;
+
+concatenation
+ : model_expression
+ (AT (LOCAL | TIME ZONE concatenation) | interval_expression)?
+ | concatenation op=(ASTERISK | SOLIDUS) concatenation
+ | concatenation op=(PLUS_SIGN | MINUS_SIGN) concatenation
+ | concatenation BAR BAR concatenation
+ ;
+
+interval_expression
+ : DAY ('(' concatenation ')')? TO SECOND ('(' concatenation ')')?
+ | YEAR ('(' concatenation ')')? TO MONTH
+ ;
+
+model_expression
+ : unary_expression ('[' model_expression_element ']')?
+ ;
+
+model_expression_element
+ : (ANY | expression) (',' (ANY | expression))*
+ | single_column_for_loop (',' single_column_for_loop)*
+ | multi_column_for_loop
+ ;
+
+single_column_for_loop
+ : FOR column_name
+ ( IN '(' expressions? ')'
+ | (LIKE expression)? FROM fromExpr=expression TO toExpr=expression
+ action_type=(INCREMENT | DECREMENT) action_expr=expression)
+ ;
+
+multi_column_for_loop
+ : FOR paren_column_list
+ IN '(' (subquery | '(' expressions? ')') ')'
+ ;
+
+unary_expression
+ : ('-' | '+') unary_expression
+ | PRIOR unary_expression
+ | CONNECT_BY_ROOT unary_expression
+ | /*TODO {input.LT(1).getText().equalsIgnoreCase("new") && !input.LT(2).getText().equals(".")}?*/ NEW unary_expression
+ | DISTINCT unary_expression
+ | ALL unary_expression
+ | /*TODO{(input.LA(1) == CASE || input.LA(2) == CASE)}?*/ case_statement/*[false]*/
+ | quantified_expression
+ | standard_function
+ | atom
+ ;
+
+case_statement /*TODO [boolean isStatementParameter]
+TODO scope {
+ boolean isStatement;
+}
+@init {$case_statement::isStatement = $isStatementParameter;}*/
+ : searched_case_statement
+ | simple_case_statement
+ ;
+
+// CASE
+
+simple_case_statement
+ : label_name? ck1=CASE expression simple_case_when_part+ case_else_part? END CASE? label_name?
+ ;
+
+simple_case_when_part
+ : WHEN expression THEN (/*TODO{$case_statement::isStatement}?*/ seq_of_statements | expression)
+ ;
+
+searched_case_statement
+ : label_name? ck1=CASE searched_case_when_part+ case_else_part? END CASE? label_name?
+ ;
+
+searched_case_when_part
+ : WHEN expression THEN (/*TODO{$case_statement::isStatement}?*/ seq_of_statements | expression)
+ ;
+
+case_else_part
+ : ELSE (/*{$case_statement::isStatement}?*/ seq_of_statements | expression)
+ ;
+
+atom
+ : table_element outer_join_sign
+ | bind_variable
+ | constant
+ | general_element
+ | '(' subquery ')' subquery_operation_part*
+ | '(' expressions ')'
+ ;
+
+quantified_expression
+ : (SOME | EXISTS | ALL | ANY) ('(' subquery ')' | '(' expression ')')
+ ;
+
+string_function
+ : SUBSTR '(' expression ',' expression (',' expression)? ')'
+ | TO_CHAR '(' (table_element | standard_function | expression)
+ (',' quoted_string)? (',' quoted_string)? ')'
+ | DECODE '(' expressions ')'
+ | CHR '(' concatenation USING NCHAR_CS ')'
+ | NVL '(' expression ',' expression ')'
+ | TRIM '(' ((LEADING | TRAILING | BOTH)? quoted_string? FROM)? concatenation ')'
+ | TO_DATE '(' expression (',' quoted_string)? ')'
+ ;
+
+standard_function
+ : string_function
+ | numeric_function_wrapper
+ | other_function
+ ;
+
+literal
+ : CHAR_STRING
+ | string_function
+ | numeric
+ | MAXVALUE
+ ;
+
+numeric_function_wrapper
+ : numeric_function (single_column_for_loop | multi_column_for_loop)?
+ ;
+
+numeric_function
+ : SUM '(' (DISTINCT | ALL)? expression ')'
+ | COUNT '(' ( ASTERISK | ((DISTINCT | UNIQUE | ALL)? concatenation)? ) ')' over_clause?
+ | ROUND '(' expression (',' UNSIGNED_INTEGER)? ')'
+ | AVG '(' (DISTINCT | ALL)? expression ')'
+ | MAX '(' (DISTINCT | ALL)? expression ')'
+ | LEAST '(' expressions ')'
+ | GREATEST '(' expressions ')'
+ ;
+
+other_function
+ : over_clause_keyword function_argument_analytic over_clause?
+ | /*TODO stantard_function_enabling_using*/ regular_id function_argument_modeling using_clause?
+ | COUNT '(' ( ASTERISK | (DISTINCT | UNIQUE | ALL)? concatenation) ')' over_clause?
+ | (CAST | XMLCAST) '(' (MULTISET '(' subquery ')' | concatenation) AS type_spec ')'
+ | COALESCE '(' table_element (',' (numeric | quoted_string))? ')'
+ | COLLECT '(' (DISTINCT | UNIQUE)? concatenation collect_order_by_part? ')'
+ | within_or_over_clause_keyword function_argument within_or_over_part+
+ | cursor_name ( PERCENT_ISOPEN | PERCENT_FOUND | PERCENT_NOTFOUND | PERCENT_ROWCOUNT )
+ | DECOMPOSE '(' concatenation (CANONICAL | COMPATIBILITY)? ')'
+ | EXTRACT '(' regular_id FROM concatenation ')'
+ | (FIRST_VALUE | LAST_VALUE) function_argument_analytic respect_or_ignore_nulls? over_clause
+ | standard_prediction_function_keyword
+ '(' expressions cost_matrix_clause? using_clause? ')'
+ | TRANSLATE '(' expression (USING (CHAR_CS | NCHAR_CS))? (',' expression)* ')'
+ | TREAT '(' expression AS REF? type_spec ')'
+ | TRIM '(' ((LEADING | TRAILING | BOTH)? quoted_string? FROM)? concatenation ')'
+ | XMLAGG '(' expression order_by_clause? ')' ('.' general_element_part)?
+ | (XMLCOLATTVAL | XMLFOREST)
+ '(' xml_multiuse_expression_element (',' xml_multiuse_expression_element)* ')' ('.' general_element_part)?
+ | XMLELEMENT
+ '(' (ENTITYESCAPING | NOENTITYESCAPING)? (NAME | EVALNAME)? expression
+ (/*TODO{input.LT(2).getText().equalsIgnoreCase("xmlattributes")}?*/ ',' xml_attributes_clause)?
+ (',' expression column_alias?)* ')' ('.' general_element_part)?
+ | XMLEXISTS '(' expression xml_passing_clause? ')'
+ | XMLPARSE '(' (DOCUMENT | CONTENT) concatenation WELLFORMED? ')' ('.' general_element_part)?
+ | XMLPI
+ '(' (NAME identifier | EVALNAME concatenation) (',' concatenation)? ')' ('.' general_element_part)?
+ | XMLQUERY
+ '(' concatenation xml_passing_clause? RETURNING CONTENT (NULL_ ON EMPTY)? ')' ('.' general_element_part)?
+ | XMLROOT
+ '(' concatenation (',' xmlroot_param_version_part)? (',' xmlroot_param_standalone_part)? ')' ('.' general_element_part)?
+ | XMLSERIALIZE
+ '(' (DOCUMENT | CONTENT) concatenation (AS type_spec)?
+ xmlserialize_param_enconding_part? xmlserialize_param_version_part? xmlserialize_param_ident_part? ((HIDE | SHOW) DEFAULTS)? ')'
+ ('.' general_element_part)?
+ | xmltable
+ ;
+
+over_clause_keyword
+ : AVG
+ | CORR
+ | LAG
+ | LEAD
+ | MAX
+ | MEDIAN
+ | MIN
+ | NTILE
+ | RATIO_TO_REPORT
+ | ROW_NUMBER
+ | SUM
+ | VARIANCE
+ | REGR_
+ | STDDEV
+ | VAR_
+ | COVAR_
+ ;
+
+within_or_over_clause_keyword
+ : CUME_DIST
+ | DENSE_RANK
+ | LISTAGG
+ | PERCENT_RANK
+ | PERCENTILE_CONT
+ | PERCENTILE_DISC
+ | RANK
+ ;
+
+standard_prediction_function_keyword
+ : PREDICTION
+ | PREDICTION_BOUNDS
+ | PREDICTION_COST
+ | PREDICTION_DETAILS
+ | PREDICTION_PROBABILITY
+ | PREDICTION_SET
+ ;
+
+over_clause
+ : OVER '(' query_partition_clause? (order_by_clause windowing_clause?)? ')'
+ ;
+
+windowing_clause
+ : windowing_type
+ (BETWEEN windowing_elements AND windowing_elements | windowing_elements)
+ ;
+
+windowing_type
+ : ROWS
+ | RANGE
+ ;
+
+windowing_elements
+ : UNBOUNDED PRECEDING
+ | CURRENT ROW
+ | concatenation (PRECEDING | FOLLOWING)
+ ;
+
+using_clause
+ : USING (ASTERISK | using_element (',' using_element)*)
+ ;
+
+using_element
+ : (IN OUT? | OUT)? select_list_elements
+ ;
+
+collect_order_by_part
+ : ORDER BY concatenation
+ ;
+
+within_or_over_part
+ : WITHIN GROUP '(' order_by_clause ')'
+ | over_clause
+ ;
+
+cost_matrix_clause
+ : COST (MODEL AUTO? | '(' cost_class_name (',' cost_class_name)* ')' VALUES '(' expressions? ')')
+ ;
+
+xml_passing_clause
+ : PASSING (BY VALUE)? expression column_alias? (',' expression column_alias?)*
+ ;
+
+xml_attributes_clause
+ : XMLATTRIBUTES
+ '(' (ENTITYESCAPING | NOENTITYESCAPING)? (SCHEMACHECK | NOSCHEMACHECK)?
+ xml_multiuse_expression_element (',' xml_multiuse_expression_element)* ')'
+ ;
+
+xml_namespaces_clause
+ : XMLNAMESPACES
+ '(' (concatenation column_alias)? (',' concatenation column_alias)* xml_general_default_part? ')'
+ ;
+
+xml_table_column
+ : xml_column_name
+ (FOR ORDINALITY | type_spec (PATH concatenation)? xml_general_default_part?)
+ ;
+
+xml_general_default_part
+ : DEFAULT concatenation
+ ;
+
+xml_multiuse_expression_element
+ : expression (AS (id_expression | EVALNAME concatenation))?
+ ;
+
+xmlroot_param_version_part
+ : VERSION (NO VALUE | expression)
+ ;
+
+xmlroot_param_standalone_part
+ : STANDALONE (YES | NO VALUE?)
+ ;
+
+xmlserialize_param_enconding_part
+ : ENCODING concatenation
+ ;
+
+xmlserialize_param_version_part
+ : VERSION concatenation
+ ;
+
+xmlserialize_param_ident_part
+ : NO INDENT
+ | INDENT (SIZE '=' concatenation)?
+ ;
+
+// SqlPlus
+
+sql_plus_command
+ : '/'
+ | EXIT
+ | PROMPT_MESSAGE
+ | SHOW (ERR | ERRORS)
+ | START_CMD
+ | whenever_command
+ | set_command
+ ;
+
+whenever_command
+ : WHENEVER (SQLERROR | OSERROR)
+ ( EXIT (SUCCESS | FAILURE | WARNING | variable_name) (COMMIT | ROLLBACK)
+ | CONTINUE (COMMIT | ROLLBACK | NONE))
+ ;
+
+set_command
+ : SET regular_id (CHAR_STRING | ON | OFF | /*EXACT_NUM_LIT*/numeric | regular_id)
+ ;
+
+// Common
+
+partition_extension_clause
+ : (SUBPARTITION | PARTITION) FOR? '(' expressions? ')'
+ ;
+
+column_alias
+ : AS? (identifier | quoted_string)
+ | AS
+ ;
+
+table_alias
+ : identifier
+ | quoted_string
+ ;
+
+where_clause
+ : WHERE (CURRENT OF cursor_name | expression)
+ ;
+
+into_clause
+ : (BULK COLLECT)? INTO variable_name (',' variable_name)*
+ ;
+
+// Common Named Elements
+
+xml_column_name
+ : identifier
+ | quoted_string
+ ;
+
+cost_class_name
+ : identifier
+ ;
+
+attribute_name
+ : identifier
+ ;
+
+savepoint_name
+ : identifier
+ ;
+
+rollback_segment_name
+ : identifier
+ ;
+
+table_var_name
+ : identifier
+ ;
+
+schema_name
+ : identifier
+ ;
+
+routine_name
+ : identifier ('.' id_expression)* ('@' link_name)?
+ ;
+
+package_name
+ : identifier
+ ;
+
+implementation_type_name
+ : identifier ('.' id_expression)?
+ ;
+
+parameter_name
+ : identifier
+ ;
+
+reference_model_name
+ : identifier
+ ;
+
+main_model_name
+ : identifier
+ ;
+
+container_tableview_name
+ : identifier ('.' id_expression)?
+ ;
+
+aggregate_function_name
+ : identifier ('.' id_expression)*
+ ;
+
+query_name
+ : identifier
+ ;
+
+grantee_name
+ : id_expression identified_by?
+ ;
+
+role_name
+ : id_expression
+ | CONNECT
+ ;
+
+constraint_name
+ : identifier ('.' id_expression)* ('@' link_name)?
+ ;
+
+label_name
+ : id_expression
+ ;
+
+type_name
+ : id_expression ('.' id_expression)*
+ ;
+
+sequence_name
+ : id_expression ('.' id_expression)*
+ ;
+
+exception_name
+ : identifier ('.' id_expression)*
+ ;
+
+function_name
+ : identifier ('.' id_expression)?
+ ;
+
+procedure_name
+ : identifier ('.' id_expression)?
+ ;
+
+trigger_name
+ : identifier ('.' id_expression)?
+ ;
+
+variable_name
+ : (INTRODUCER char_set_name)? id_expression ('.' id_expression)?
+ | bind_variable
+ ;
+
+index_name
+ : identifier ('.' id_expression)?
+ ;
+
+cursor_name
+ : general_element
+ | bind_variable
+ ;
+
+record_name
+ : identifier
+ | bind_variable
+ ;
+
+collection_name
+ : identifier ('.' id_expression)?
+ ;
+
+link_name
+ : identifier
+ ;
+
+column_name
+ : identifier ('.' id_expression)*
+ ;
+
+tableview_name
+ : identifier ('.' id_expression)?
+ (AT_SIGN link_name | /*TODO{!(input.LA(2) == BY)}?*/ partition_extension_clause)?
+ | xmltable outer_join_sign?
+ ;
+
+xmltable
+ : XMLTABLE '(' (xml_namespaces_clause ',')? concatenation xml_passing_clause? (COLUMNS xml_table_column (',' xml_table_column)*)? ')' ('.' general_element_part)?
+ ;
+
+char_set_name
+ : id_expression ('.' id_expression)*
+ ;
+
+synonym_name
+ : identifier
+ ;
+
+// Represents a valid DB object name in DDL commands which are valid for several DB (or schema) objects.
+// For instance, create synonym ... for , or rename to .
+// Both are valid for sequences, tables, views, etc.
+schema_object_name
+ : id_expression
+ ;
+
+dir_object_name
+ : id_expression
+ ;
+
+user_object_name
+ : id_expression
+ ;
+
+grant_object_name
+ : tableview_name
+ | USER user_object_name (',' user_object_name)*
+ | DIRECTORY dir_object_name
+ | EDITION schema_object_name
+ | MINING MODEL schema_object_name
+ | JAVA (SOURCE | RESOURCE) schema_object_name
+ | SQL TRANSLATION PROFILE schema_object_name
+ ;
+
+column_list
+ : column_name (',' column_name)*
+ ;
+
+paren_column_list
+ : LEFT_PAREN column_list RIGHT_PAREN
+ ;
+
+// PL/SQL Specs
+
+// NOTE: In reality this applies to aggregate functions only
+keep_clause
+ : KEEP '(' DENSE_RANK (FIRST | LAST) order_by_clause ')' over_clause?
+ ;
+
+function_argument
+ : '(' (argument (',' argument)*)? ')' keep_clause?
+ ;
+
+function_argument_analytic
+ : '(' (argument respect_or_ignore_nulls? (',' argument respect_or_ignore_nulls?)*)? ')' keep_clause?
+ ;
+
+function_argument_modeling
+ : '(' column_name (',' (numeric | NULL_) (',' (numeric | NULL_))?)?
+ USING (tableview_name '.' ASTERISK | ASTERISK | expression column_alias? (',' expression column_alias?)*)
+ ')' keep_clause?
+ ;
+
+respect_or_ignore_nulls
+ : (RESPECT | IGNORE) NULLS
+ ;
+
+argument
+ : (identifier '=' '>')? expression
+ ;
+
+type_spec
+ : datatype
+ | REF? type_name (PERCENT_ROWTYPE | PERCENT_TYPE)?
+ ;
+
+datatype
+ : native_datatype_element precision_part? (WITH LOCAL? TIME ZONE | CHARACTER SET char_set_name)?
+ | INTERVAL (YEAR | DAY) ('(' expression ')')? TO (MONTH | SECOND) ('(' expression ')')?
+ ;
+
+precision_part
+ : '(' (numeric | ASTERISK) (',' numeric)? (CHAR | BYTE)? ')'
+ ;
+
+native_datatype_element
+ : BINARY_INTEGER
+ | PLS_INTEGER
+ | NATURAL
+ | BINARY_FLOAT
+ | BINARY_DOUBLE
+ | NATURALN
+ | POSITIVE
+ | POSITIVEN
+ | SIGNTYPE
+ | SIMPLE_INTEGER
+ | NVARCHAR2
+ | DEC
+ | INTEGER
+ | INT
+ | NUMERIC
+ | SMALLINT
+ | NUMBER
+ | DECIMAL
+ | DOUBLE PRECISION?
+ | FLOAT
+ | REAL
+ | NCHAR
+ | LONG RAW?
+ | CHAR
+ | CHARACTER
+ | VARCHAR2
+ | VARCHAR
+ | STRING
+ | RAW
+ | BOOLEAN
+ | DATE
+ | ROWID
+ | UROWID
+ | YEAR
+ | MONTH
+ | DAY
+ | HOUR
+ | MINUTE
+ | SECOND
+ | TIMEZONE_HOUR
+ | TIMEZONE_MINUTE
+ | TIMEZONE_REGION
+ | TIMEZONE_ABBR
+ | TIMESTAMP
+ | TIMESTAMP_UNCONSTRAINED
+ | TIMESTAMP_TZ_UNCONSTRAINED
+ | TIMESTAMP_LTZ_UNCONSTRAINED
+ | YMINTERVAL_UNCONSTRAINED
+ | DSINTERVAL_UNCONSTRAINED
+ | BFILE
+ | BLOB
+ | CLOB
+ | NCLOB
+ | MLSLABEL
+ ;
+
+bind_variable
+ : (BINDVAR | ':' UNSIGNED_INTEGER)
+ // Pro*C/C++ indicator variables
+ (INDICATOR? (BINDVAR | ':' UNSIGNED_INTEGER))?
+ ('.' general_element_part)*
+ ;
+
+general_element
+ : general_element_part ('.' general_element_part)*
+ ;
+
+general_element_part
+ : (INTRODUCER char_set_name)? id_expression ('.' id_expression)* ('@' link_name)? function_argument?
+ ;
+
+table_element
+ : (INTRODUCER char_set_name)? id_expression ('.' id_expression)*
+ ;
+
+object_privilege
+ : ALL PRIVILEGES?
+ | ALTER
+ | DEBUG
+ | DELETE
+ | EXECUTE
+ | FLASHBACK ARCHIVE
+ | INDEX
+ | INHERIT PRIVILEGES
+ | INSERT
+ | KEEP SEQUENCE
+ | MERGE VIEW
+ | ON COMMIT REFRESH
+ | QUERY REWRITE
+ | READ
+ | REFERENCES
+ | SELECT
+ | TRANSLATE SQL
+ | UNDER
+ | UPDATE
+ | USE
+ | WRITE
+ ;
+
+//Ordered by type rather than alphabetically
+system_privilege
+ : ALL PRIVILEGES
+ | ADVISOR
+ | ADMINISTER ANY? SQL TUNING SET
+ | (ALTER | CREATE | DROP) ANY SQL PROFILE
+ | ADMINISTER SQL MANAGEMENT OBJECT
+ | CREATE ANY? CLUSTER
+ | (ALTER | DROP) ANY CLUSTER
+ | (CREATE | DROP) ANY CONTEXT
+ | EXEMPT REDACTION POLICY
+ | ALTER DATABASE
+ | (ALTER | CREATE) PUBLIC? DATABASE LINK
+ | DROP PUBLIC DATABASE LINK
+ | DEBUG CONNECT SESSION
+ | DEBUG ANY PROCEDURE
+ | ANALYZE ANY DICTIONARY
+ | CREATE ANY? DIMENSION
+ | (ALTER | DROP) ANY DIMENSION
+ | (CREATE | DROP) ANY DIRECTORY
+ | (CREATE | DROP) ANY EDITION
+ | FLASHBACK (ARCHIVE ADMINISTER | ANY TABLE)
+ | (ALTER | CREATE | DROP) ANY INDEX
+ | CREATE ANY? INDEXTYPE
+ | (ALTER | DROP | EXECUTE) ANY INDEXTYPE
+ | CREATE (ANY | EXTERNAL)? JOB
+ | EXECUTE ANY (CLASS | PROGRAM)
+ | MANAGE SCHEDULER
+ | ADMINISTER KEY MANAGEMENT
+ | CREATE ANY? LIBRARY
+ | (ALTER | DROP | EXECUTE) ANY LIBRARY
+ | LOGMINING
+ | CREATE ANY? MATERIALIZED VIEW
+ | (ALTER | DROP) ANY MATERIALIZED VIEW
+ | GLOBAL? QUERY REWRITE
+ | ON COMMIT REFRESH
+ | CREATE ANY? MINING MODEL
+ | (ALTER | DROP | SELECT | COMMENT) ANY MINING MODEL
+ | CREATE ANY? CUBE
+ | (ALTER | DROP | SELECT | UPDATE) ANY CUBE
+ | CREATE ANY? MEASURE FOLDER
+ | (DELETE | DROP | INSERT) ANY MEASURE FOLDER
+ | CREATE ANY? CUBE DIMENSION
+ | (ALTER | DELETE | DROP | INSERT | SELECT | UPDATE) ANY CUBE DIMENSION
+ | CREATE ANY? CUBE BUILD PROCESS
+ | (DROP | UPDATE) ANY CUBE BUILD PROCESS
+ | CREATE ANY? OPERATOR
+ | (ALTER | DROP | EXECUTE) ANY OPERATOR
+ | (CREATE | ALTER | DROP) ANY OUTLINE
+ | CREATE PLUGGABLE DATABASE
+ | SET CONTAINER
+ | CREATE ANY? PROCEDURE
+ | (ALTER | DROP | EXECUTE) ANY PROCEDURE
+ | (CREATE | ALTER | DROP ) PROFILE
+ | CREATE ROLE
+ | (ALTER | DROP | GRANT) ANY ROLE
+ | (CREATE | ALTER | DROP) ROLLBACK SEGMENT
+ | CREATE ANY? SEQUENCE
+ | (ALTER | DROP | SELECT) ANY SEQUENCE
+ | (ALTER | CREATE | RESTRICTED) SESSION
+ | ALTER RESOURCE COST
+ | CREATE ANY? SQL TRANSLATION PROFILE
+ | (ALTER | DROP | USE) ANY SQL TRANSLATION PROFILE
+ | TRANSLATE ANY SQL
+ | CREATE ANY? SYNONYM
+ | DROP ANY SYNONYM
+ | (CREATE | DROP) PUBLIC SYNONYM
+ | CREATE ANY? TABLE
+ | (ALTER | BACKUP | COMMENT | DELETE | DROP | INSERT | LOCK | READ | SELECT | UPDATE) ANY TABLE
+ | (CREATE | ALTER | DROP | MANAGE | UNLIMITED) TABLESPACE
+ | CREATE ANY? TRIGGER
+ | (ALTER | DROP) ANY TRIGGER
+ | ADMINISTER DATABASE TRIGGER
+ | CREATE ANY? TYPE
+ | (ALTER | DROP | EXECUTE | UNDER) ANY TYPE
+ | (CREATE | ALTER | DROP) USER
+ | CREATE ANY? VIEW
+ | (DROP | UNDER | MERGE) ANY VIEW
+ | (ANALYZE | AUDIT) ANY
+ | BECOME USER
+ | CHANGE NOTIFICATION
+ | EXEMPT ACCESS POLICY
+ | FORCE ANY? TRANSACTION
+ | GRANT ANY OBJECT? PRIVILEGE
+ | INHERIT ANY PRIVILEGES
+ | KEEP DATE TIME
+ | KEEP SYSGUID
+ | PURGE DBA_RECYCLEBIN
+ | RESUMABLE
+ | SELECT ANY (DICTIONARY | TRANSACTION)
+ | SYSBACKUP
+ | SYSDBA
+ | SYSDG
+ | SYSKM
+ | SYSOPER
+ ;
+
+// $>
+
+// $
diff --git a/src/grammar/tsql/.antlr/TSqlLexer.interp b/src/grammar/tsql/.antlr/TSqlLexer.interp
deleted file mode 100644
index 0e3cf31..0000000
--- a/src/grammar/tsql/.antlr/TSqlLexer.interp
+++ /dev/null
@@ -1,2543 +0,0 @@
-token literal names:
-null
-'ABSENT'
-'ADD'
-'AES'
-'ALL'
-'ALLOW_CONNECTIONS'
-'ALLOW_MULTIPLE_EVENT_LOSS'
-'ALLOW_SINGLE_EVENT_LOSS'
-'ALTER'
-'AND'
-'ANONYMOUS'
-'ANY'
-'APPEND'
-'APPLICATION'
-'AS'
-'ASC'
-'ASYMMETRIC'
-'ASYNCHRONOUS_COMMIT'
-'AUTHORIZATION'
-'AUTHENTICATION'
-'AUTOMATED_BACKUP_PREFERENCE'
-'AUTOMATIC'
-'AVAILABILITY_MODE'
-'\\'
-'BACKUP'
-'BEFORE'
-'BEGIN'
-'BETWEEN'
-'BLOCK'
-'BLOCKSIZE'
-'BLOCKING_HIERARCHY'
-'BREAK'
-'BROWSE'
-'BUFFER'
-'BUFFERCOUNT'
-'BULK'
-'BY'
-'CACHE'
-'CALLED'
-'CASCADE'
-'CASE'
-'CERTIFICATE'
-'CHANGETABLE'
-'CHANGES'
-'CHECK'
-'CHECKPOINT'
-'CHECK_POLICY'
-'CHECK_EXPIRATION'
-'CLASSIFIER_FUNCTION'
-'CLOSE'
-'CLUSTER'
-'CLUSTERED'
-'COALESCE'
-'COLLATE'
-'COLUMN'
-'COMPRESSION'
-'COMMIT'
-'COMPUTE'
-'CONFIGURATION'
-'CONSTRAINT'
-'CONTAINMENT'
-'CONTAINS'
-'CONTAINSTABLE'
-'CONTEXT'
-'CONTINUE'
-'CONTINUE_AFTER_ERROR'
-'CONTRACT'
-'CONTRACT_NAME'
-'CONVERSATION'
-null
-'COPY_ONLY'
-'CREATE'
-'CROSS'
-'CURRENT'
-'CURRENT_DATE'
-'CURRENT_TIME'
-'CURRENT_TIMESTAMP'
-'CURRENT_USER'
-'CURSOR'
-'CYCLE'
-'DATA_COMPRESSION'
-'DATA_SOURCE'
-'DATABASE'
-'DATABASE_MIRRORING'
-'DBCC'
-'DEALLOCATE'
-'DECLARE'
-'DEFAULT'
-'DEFAULT_DATABASE'
-'DEFAULT_SCHEMA'
-'DELETE'
-'DENY'
-'DESC'
-'DIAGNOSTICS'
-'DIFFERENTIAL'
-'DISK'
-'DISTINCT'
-'DISTRIBUTED'
-'DOUBLE'
-'\\\\'
-'//'
-'DROP'
-'DTC_SUPPORT'
-'DUMP'
-'ELSE'
-'ENABLED'
-'END'
-'ENDPOINT'
-'ERRLVL'
-'ESCAPE'
-'ERROR'
-'EVENT'
-null
-'EVENT_RETENTION_MODE'
-'EXCEPT'
-'EXECUTABLE_FILE'
-null
-'EXISTS'
-'EXPIREDATE'
-'EXIT'
-'EXTENSION'
-'EXTERNAL'
-'EXTERNAL_ACCESS'
-'FAILOVER'
-'FAILURECONDITIONLEVEL'
-'FAN_IN'
-'FETCH'
-'FILE'
-'FILENAME'
-'FILLFACTOR'
-'FILE_SNAPSHOT'
-'FOR'
-'FORCESEEK'
-'FORCE_SERVICE_ALLOW_DATA_LOSS'
-'FOREIGN'
-'FREETEXT'
-'FREETEXTTABLE'
-'FROM'
-'FULL'
-'FUNCTION'
-'GET'
-'GOTO'
-'GOVERNOR'
-'GRANT'
-'GROUP'
-'HAVING'
-'HASHED'
-'HEALTHCHECKTIMEOUT'
-'IDENTITY'
-'IDENTITYCOL'
-'IDENTITY_INSERT'
-'IF'
-'IIF'
-'IN'
-'INCLUDE'
-'INCREMENT'
-'INDEX'
-'INFINITE'
-'INIT'
-'INNER'
-'INSERT'
-'INSTEAD'
-'INTERSECT'
-'INTO'
-null
-null
-'IS'
-'ISNULL'
-'JOIN'
-'KERBEROS'
-'KEY'
-'KEY_PATH'
-'KEY_STORE_PROVIDER_NAME'
-'KILL'
-'LANGUAGE'
-'LEFT'
-'LIBRARY'
-'LIFETIME'
-'LIKE'
-'LINENO'
-'LINUX'
-'LISTENER_IP'
-'LISTENER_PORT'
-'LOAD'
-'LOCAL_SERVICE_NAME'
-'LOG'
-'MATCHED'
-'MASTER'
-'MAX_MEMORY'
-'MAXTRANSFER'
-'MAXVALUE'
-'MAX_DISPATCH_LATENCY'
-'MAX_EVENT_SIZE'
-'MAX_SIZE'
-'MAX_OUTSTANDING_IO_PER_VOLUME'
-'MEDIADESCRIPTION'
-'MEDIANAME'
-'MEMBER'
-'MEMORY_PARTITION_MODE'
-'MERGE'
-'MESSAGE_FORWARDING'
-'MESSAGE_FORWARD_SIZE'
-'MINVALUE'
-'MIRROR'
-'MUST_CHANGE'
-'NATIONAL'
-'NEGOTIATE'
-'NOCHECK'
-'NOFORMAT'
-'NOINIT'
-'NONCLUSTERED'
-'NONE'
-'NOREWIND'
-'NOSKIP'
-'NOUNLOAD'
-'NO_CHECKSUM'
-'NO_COMPRESSION'
-'NO_EVENT_LOSS'
-'NOT'
-'NOTIFICATION'
-'NTLM'
-'NULL'
-'NULLIF'
-'OF'
-'OFF'
-'OFFSETS'
-'OLD_PASSWORD'
-'ON'
-'ON_FAILURE'
-'OPEN'
-'OPENDATASOURCE'
-'OPENQUERY'
-'OPENROWSET'
-'OPENXML'
-'OPTION'
-'OR'
-'ORDER'
-'OUTER'
-'OVER'
-'PAGE'
-'PARAM_NODE'
-'PARTIAL'
-'PASSWORD'
-'PERCENT'
-'PERMISSION_SET'
-'PER_CPU'
-'PER_DB'
-'PER_NODE'
-'PIVOT'
-'PLAN'
-'PLATFORM'
-'POLICY'
-'PRECISION'
-'PREDICATE'
-'PRIMARY'
-'PRINT'
-'PROC'
-'PROCEDURE'
-'PROCESS'
-'PUBLIC'
-'PYTHON'
-'R'
-'RAISERROR'
-'RAW'
-'READ'
-'READTEXT'
-'READ_WRITE_FILEGROUPS'
-'RECONFIGURE'
-'REFERENCES'
-'REGENERATE'
-'RELATED_CONVERSATION'
-'RELATED_CONVERSATION_GROUP'
-'REPLICATION'
-'REQUIRED'
-'RESET'
-'RESTART'
-'RESTORE'
-'RESTRICT'
-'RESUME'
-'RETAINDAYS'
-'RETURN'
-'RETURNS'
-'REVERT'
-'REVOKE'
-'REWIND'
-'RIGHT'
-'ROLLBACK'
-'ROLE'
-'ROWCOUNT'
-'ROWGUIDCOL'
-'RSA_512'
-'RSA_1024'
-'RSA_2048'
-'RSA_3072'
-'RSA_4096'
-'SAFETY'
-'RULE'
-'SAFE'
-'SAVE'
-'SCHEDULER'
-'SCHEMA'
-'SCHEME'
-'SECURITYAUDIT'
-'SELECT'
-'SEMANTICKEYPHRASETABLE'
-'SEMANTICSIMILARITYDETAILSTABLE'
-'SEMANTICSIMILARITYTABLE'
-'SERVER'
-'SERVICE'
-'SERVICE_BROKER'
-'SERVICE_NAME'
-'SESSION'
-'SESSION_USER'
-'SET'
-'SETUSER'
-'SHUTDOWN'
-'SID'
-'SKIP'
-'SOFTNUMA'
-'SOME'
-'SOURCE'
-'SPECIFICATION'
-'SPLIT'
-'SQLDUMPERFLAGS'
-'SQLDUMPERPATH'
-'SQLDUMPERTIMEOUTS'
-'STATISTICS'
-'STATE'
-'STATS'
-'START'
-'STARTED'
-'STARTUP_STATE'
-'STOP'
-'STOPPED'
-'STOP_ON_ERROR'
-'SUPPORTED'
-'SYSTEM_USER'
-'TABLE'
-'TABLESAMPLE'
-'TAPE'
-'TARGET'
-'TCP'
-'TEXTSIZE'
-'THEN'
-'TO'
-'TOP'
-'TRACK_CAUSALITY'
-'TRAN'
-'TRANSACTION'
-'TRANSFER'
-'TRIGGER'
-'TRUNCATE'
-'TSEQUAL'
-'UNCHECKED'
-'UNION'
-'UNIQUE'
-'UNLOCK'
-'UNPIVOT'
-'UNSAFE'
-'UPDATE'
-'UPDATETEXT'
-'URL'
-'USE'
-'USED'
-'USER'
-'VALUES'
-'VARYING'
-'VERBOSELOGGING'
-'VIEW'
-'VISIBILITY'
-'WAITFOR'
-'WHEN'
-'WHERE'
-'WHILE'
-'WINDOWS'
-'WITH'
-'WITHIN'
-'WITHOUT'
-'WITNESS'
-'WRITETEXT'
-'ABSOLUTE'
-'ACCENT_SENSITIVITY'
-'ACTION'
-'ACTIVATION'
-'ACTIVE'
-'ADDRESS'
-'AES_128'
-'AES_192'
-'AES_256'
-'AFFINITY'
-'AFTER'
-'AGGREGATE'
-'ALGORITHM'
-'ALLOW_ENCRYPTED_VALUE_MODIFICATIONS'
-'ALLOW_SNAPSHOT_ISOLATION'
-'ALLOWED'
-'ANSI_NULL_DEFAULT'
-'ANSI_NULLS'
-'ANSI_PADDING'
-'ANSI_WARNINGS'
-'APPLICATION_LOG'
-'APPLY'
-'ARITHABORT'
-'ASSEMBLY'
-'AUDIT'
-'AUDIT_GUID'
-'AUTO'
-'AUTO_CLEANUP'
-'AUTO_CLOSE'
-'AUTO_CREATE_STATISTICS'
-'AUTO_SHRINK'
-'AUTO_UPDATE_STATISTICS'
-'AUTO_UPDATE_STATISTICS_ASYNC'
-'AVAILABILITY'
-'AVG'
-'BACKUP_PRIORITY'
-'BEGIN_DIALOG'
-'BIGINT'
-'BINARY BASE64'
-'BINARY_CHECKSUM'
-'BINDING'
-'BLOB_STORAGE'
-'BROKER'
-'BROKER_INSTANCE'
-'BULK_LOGGED'
-'CALLER'
-'CAP_CPU_PERCENT'
-null
-'CATALOG'
-'CATCH'
-'CHANGE_RETENTION'
-'CHANGE_TRACKING'
-'CHECKSUM'
-'CHECKSUM_AGG'
-'CLEANUP'
-'COLLECTION'
-'COLUMN_MASTER_KEY'
-'COMMITTED'
-'COMPATIBILITY_LEVEL'
-'CONCAT'
-'CONCAT_NULL_YIELDS_NULL'
-'CONTENT'
-'CONTROL'
-'COOKIE'
-'COUNT'
-'COUNT_BIG'
-'COUNTER'
-'CPU'
-'CREATE_NEW'
-'CREATION_DISPOSITION'
-'CREDENTIAL'
-'CRYPTOGRAPHIC'
-'CURSOR_CLOSE_ON_COMMIT'
-'CURSOR_DEFAULT'
-'DATA'
-'DATE_CORRELATION_OPTIMIZATION'
-'DATEADD'
-'DATEDIFF'
-'DATENAME'
-'DATEPART'
-'DAYS'
-'DB_CHAINING'
-'DB_FAILOVER'
-'DECRYPTION'
-null
-'DEFAULT_FULLTEXT_LANGUAGE'
-'DEFAULT_LANGUAGE'
-'DELAY'
-'DELAYED_DURABILITY'
-'DELETED'
-'DENSE_RANK'
-'DEPENDENTS'
-'DES'
-'DESCRIPTION'
-'DESX'
-'DHCP'
-'DIALOG'
-'DIRECTORY_NAME'
-'DISABLE'
-'DISABLE_BROKER'
-'DISABLED'
-null
-'DOCUMENT'
-'DYNAMIC'
-'ELEMENTS'
-'EMERGENCY'
-'EMPTY'
-'ENABLE'
-'ENABLE_BROKER'
-'ENCRYPTED_VALUE'
-'ENCRYPTION'
-'ENDPOINT_URL'
-'ERROR_BROKER_CONVERSATIONS'
-'EXCLUSIVE'
-'EXECUTABLE'
-'EXIST'
-'EXPAND'
-'EXPIRY_DATE'
-'EXPLICIT'
-'FAIL_OPERATION'
-'FAILOVER_MODE'
-'FAILURE'
-'FAILURE_CONDITION_LEVEL'
-'FAST'
-'FAST_FORWARD'
-'FILEGROUP'
-'FILEGROWTH'
-'FILEPATH'
-'FILESTREAM'
-'FILTER'
-'FIRST'
-'FIRST_VALUE'
-'FOLLOWING'
-'FORCE'
-'FORCE_FAILOVER_ALLOW_DATA_LOSS'
-'FORCED'
-'FORMAT'
-'FORWARD_ONLY'
-'FULLSCAN'
-'FULLTEXT'
-'GB'
-'GETDATE'
-'GETUTCDATE'
-'GLOBAL'
-'GO'
-'GROUP_MAX_REQUESTS'
-'GROUPING'
-'GROUPING_ID'
-'HADR'
-'HASH'
-'HEALTH_CHECK_TIMEOUT'
-'HIGH'
-'HONOR_BROKER_PRIORITY'
-'HOURS'
-'IDENTITY_VALUE'
-'IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX'
-'IMMEDIATE'
-'IMPERSONATE'
-'IMPORTANCE'
-'INCLUDE_NULL_VALUES'
-'INCREMENTAL'
-'INITIATOR'
-'INPUT'
-'INSENSITIVE'
-'INSERTED'
-'INT'
-'IP'
-'ISOLATION'
-'JOB'
-'JSON'
-'KB'
-'KEEP'
-'KEEPFIXED'
-'KEY_SOURCE'
-'KEYS'
-'KEYSET'
-'LAG'
-'LAST'
-'LAST_VALUE'
-'LEAD'
-'LEVEL'
-'LIST'
-'LISTENER'
-'LISTENER_URL'
-'LOB_COMPACTION'
-'LOCAL'
-'LOCATION'
-'LOCK'
-'LOCK_ESCALATION'
-'LOGIN'
-'LOOP'
-'LOW'
-'MANUAL'
-'MARK'
-'MATERIALIZED'
-'MAX'
-'MAX_CPU_PERCENT'
-'MAX_DOP'
-'MAX_FILES'
-'MAX_IOPS_PER_VOLUME'
-'MAX_MEMORY_PERCENT'
-'MAX_PROCESSES'
-'MAX_QUEUE_READERS'
-'MAX_ROLLOVER_FILES'
-'MAXDOP'
-'MAXRECURSION'
-'MAXSIZE'
-'MB'
-'MEDIUM'
-'MEMORY_OPTIMIZED_DATA'
-'MESSAGE'
-'MIN'
-'MIN_ACTIVE_ROWVERSION'
-'MIN_CPU_PERCENT'
-'MIN_IOPS_PER_VOLUME'
-'MIN_MEMORY_PERCENT'
-'MINUTES'
-'MIRROR_ADDRESS'
-'MIXED_PAGE_ALLOCATION'
-'MODE'
-'MODIFY'
-'MOVE'
-'MULTI_USER'
-'NAME'
-'NESTED_TRIGGERS'
-'NEW_ACCOUNT'
-'NEW_BROKER'
-'NEW_PASSWORD'
-'NEXT'
-'NO'
-'NO_TRUNCATE'
-'NO_WAIT'
-'NOCOUNT'
-'NODES'
-'NOEXPAND'
-'NON_TRANSACTED_ACCESS'
-'NORECOMPUTE'
-'NORECOVERY'
-'NOWAIT'
-'NTILE'
-'NUMANODE'
-'NUMBER'
-'NUMERIC_ROUNDABORT'
-'OBJECT'
-'OFFLINE'
-'OFFSET'
-'OLD_ACCOUNT'
-'ONLINE'
-'ONLY'
-'OPEN_EXISTING'
-'OPTIMISTIC'
-'OPTIMIZE'
-'OUT'
-'OUTPUT'
-'OVERRIDE'
-'OWNER'
-'PAGE_VERIFY'
-'PARAMETERIZATION'
-'PARTITION'
-'PARTITIONS'
-'PARTNER'
-'PATH'
-'POISON_MESSAGE_HANDLING'
-'POOL'
-'PORT'
-'PRECEDING'
-'PRIMARY_ROLE'
-'PRIOR'
-'PRIORITY'
-'PRIORITY_LEVEL'
-'PRIVATE'
-'PRIVATE_KEY'
-'PRIVILEGES'
-'PROCEDURE_NAME'
-'PROPERTY'
-'PROVIDER'
-'PROVIDER_KEY_NAME'
-'QUERY'
-'QUEUE'
-'QUEUE_DELAY'
-'QUOTED_IDENTIFIER'
-'RANGE'
-'RANK'
-'RC2'
-'RC4'
-'RC4_128'
-'READ_COMMITTED_SNAPSHOT'
-'READ_ONLY'
-'READ_ONLY_ROUTING_LIST'
-'READ_WRITE'
-'READONLY'
-'REBUILD'
-'RECEIVE'
-'RECOMPILE'
-'RECOVERY'
-'RECURSIVE_TRIGGERS'
-'RELATIVE'
-'REMOTE'
-'REMOTE_SERVICE_NAME'
-'REMOVE'
-'REORGANIZE'
-'REPEATABLE'
-'REPLICA'
-'REQUEST_MAX_CPU_TIME_SEC'
-'REQUEST_MAX_MEMORY_GRANT_PERCENT'
-'REQUEST_MEMORY_GRANT_TIMEOUT_SEC'
-'REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT'
-'RESERVE_DISK_SPACE'
-'RESOURCE'
-'RESOURCE_MANAGER_LOCATION'
-'RESTRICTED_USER'
-'RETENTION'
-'ROBUST'
-'ROOT'
-'ROUTE'
-'ROW'
-'ROW_NUMBER'
-'ROWGUID'
-'ROWS'
-'SAMPLE'
-'SCHEMABINDING'
-'SCOPED'
-'SCROLL'
-'SCROLL_LOCKS'
-'SEARCH'
-'SECONDARY'
-'SECONDARY_ONLY'
-'SECONDARY_ROLE'
-'SECONDS'
-'SECRET'
-'SECURITY'
-'SECURITY_LOG'
-'SEEDING_MODE'
-'SELF'
-'SEMI_SENSITIVE'
-'SEND'
-'SENT'
-'SEQUENCE'
-'SERIALIZABLE'
-'SESSION_TIMEOUT'
-'SETERROR'
-'SHARE'
-'SHOWPLAN'
-'SIGNATURE'
-'SIMPLE'
-'SINGLE_USER'
-'SIZE'
-'SMALLINT'
-'SNAPSHOT'
-'SPATIAL_WINDOW_MAX_CELLS'
-'STANDBY'
-'START_DATE'
-'STATIC'
-'STATS_STREAM'
-'STATUS'
-'STATUSONLY'
-'STDEV'
-'STDEVP'
-'STOPLIST'
-'STRING_AGG'
-'STUFF'
-'SUBJECT'
-'SUBSCRIPTION'
-'SUM'
-'SUSPEND'
-'SYMMETRIC'
-'SYNCHRONOUS_COMMIT'
-'SYNONYM'
-'SYSTEM'
-'TAKE'
-'TARGET_RECOVERY_TIME'
-'TB'
-'TEXTIMAGE_ON'
-'THROW'
-'TIES'
-'TIME'
-'TIMEOUT'
-'TIMER'
-'TINYINT'
-'TORN_PAGE_DETECTION'
-'TRANSFORM_NOISE_WORDS'
-'TRIPLE_DES'
-'TRIPLE_DES_3KEY'
-'TRUSTWORTHY'
-'TRY'
-'TSQL'
-'TWO_DIGIT_YEAR_CUTOFF'
-'TYPE'
-'TYPE_WARNING'
-'UNBOUNDED'
-'UNCOMMITTED'
-'UNKNOWN'
-'UNLIMITED'
-'UOW'
-'USING'
-'VALID_XML'
-'VALIDATION'
-'VALUE'
-'VAR'
-'VARP'
-'VIEW_METADATA'
-'VIEWS'
-'WAIT'
-'WELL_FORMED_XML'
-'WITHOUT_ARRAY_WRAPPER'
-'WORK'
-'WORKLOAD'
-'XML'
-'XMLDATA'
-'XMLNAMESPACES'
-'XMLSCHEMA'
-'XSINIL'
-'$ACTION'
-null
-null
-null
-null
-'\''
-null
-null
-null
-null
-null
-null
-null
-null
-null
-null
-'='
-'>'
-'<'
-'!'
-'+='
-'-='
-'*='
-'/='
-'%='
-'&='
-'^='
-'|='
-'||'
-'.'
-'_'
-'@'
-'#'
-'$'
-'('
-')'
-','
-';'
-':'
-'*'
-'/'
-'%'
-'+'
-'-'
-'~'
-'|'
-'&'
-'^'
-null
-
-token symbolic names:
-null
-ABSENT
-ADD
-AES
-ALL
-ALLOW_CONNECTIONS
-ALLOW_MULTIPLE_EVENT_LOSS
-ALLOW_SINGLE_EVENT_LOSS
-ALTER
-AND
-ANONYMOUS
-ANY
-APPEND
-APPLICATION
-AS
-ASC
-ASYMMETRIC
-ASYNCHRONOUS_COMMIT
-AUTHORIZATION
-AUTHENTICATION
-AUTOMATED_BACKUP_PREFERENCE
-AUTOMATIC
-AVAILABILITY_MODE
-BACKSLASH
-BACKUP
-BEFORE
-BEGIN
-BETWEEN
-BLOCK
-BLOCKSIZE
-BLOCKING_HIERARCHY
-BREAK
-BROWSE
-BUFFER
-BUFFERCOUNT
-BULK
-BY
-CACHE
-CALLED
-CASCADE
-CASE
-CERTIFICATE
-CHANGETABLE
-CHANGES
-CHECK
-CHECKPOINT
-CHECK_POLICY
-CHECK_EXPIRATION
-CLASSIFIER_FUNCTION
-CLOSE
-CLUSTER
-CLUSTERED
-COALESCE
-COLLATE
-COLUMN
-COMPRESSION
-COMMIT
-COMPUTE
-CONFIGURATION
-CONSTRAINT
-CONTAINMENT
-CONTAINS
-CONTAINSTABLE
-CONTEXT
-CONTINUE
-CONTINUE_AFTER_ERROR
-CONTRACT
-CONTRACT_NAME
-CONVERSATION
-CONVERT
-COPY_ONLY
-CREATE
-CROSS
-CURRENT
-CURRENT_DATE
-CURRENT_TIME
-CURRENT_TIMESTAMP
-CURRENT_USER
-CURSOR
-CYCLE
-DATA_COMPRESSION
-DATA_SOURCE
-DATABASE
-DATABASE_MIRRORING
-DBCC
-DEALLOCATE
-DECLARE
-DEFAULT
-DEFAULT_DATABASE
-DEFAULT_SCHEMA
-DELETE
-DENY
-DESC
-DIAGNOSTICS
-DIFFERENTIAL
-DISK
-DISTINCT
-DISTRIBUTED
-DOUBLE
-DOUBLE_BACK_SLASH
-DOUBLE_FORWARD_SLASH
-DROP
-DTC_SUPPORT
-DUMP
-ELSE
-ENABLED
-END
-ENDPOINT
-ERRLVL
-ESCAPE
-ERROR
-EVENT
-EVENTDATA
-EVENT_RETENTION_MODE
-EXCEPT
-EXECUTABLE_FILE
-EXECUTE
-EXISTS
-EXPIREDATE
-EXIT
-EXTENSION
-EXTERNAL
-EXTERNAL_ACCESS
-FAILOVER
-FAILURECONDITIONLEVEL
-FAN_IN
-FETCH
-FILE
-FILENAME
-FILLFACTOR
-FILE_SNAPSHOT
-FOR
-FORCESEEK
-FORCE_SERVICE_ALLOW_DATA_LOSS
-FOREIGN
-FREETEXT
-FREETEXTTABLE
-FROM
-FULL
-FUNCTION
-GET
-GOTO
-GOVERNOR
-GRANT
-GROUP
-HAVING
-HASHED
-HEALTHCHECKTIMEOUT
-IDENTITY
-IDENTITYCOL
-IDENTITY_INSERT
-IF
-IIF
-IN
-INCLUDE
-INCREMENT
-INDEX
-INFINITE
-INIT
-INNER
-INSERT
-INSTEAD
-INTERSECT
-INTO
-IPV4_ADDR
-IPV6_ADDR
-IS
-ISNULL
-JOIN
-KERBEROS
-KEY
-KEY_PATH
-KEY_STORE_PROVIDER_NAME
-KILL
-LANGUAGE
-LEFT
-LIBRARY
-LIFETIME
-LIKE
-LINENO
-LINUX
-LISTENER_IP
-LISTENER_PORT
-LOAD
-LOCAL_SERVICE_NAME
-LOG
-MATCHED
-MASTER
-MAX_MEMORY
-MAXTRANSFER
-MAXVALUE
-MAX_DISPATCH_LATENCY
-MAX_EVENT_SIZE
-MAX_SIZE
-MAX_OUTSTANDING_IO_PER_VOLUME
-MEDIADESCRIPTION
-MEDIANAME
-MEMBER
-MEMORY_PARTITION_MODE
-MERGE
-MESSAGE_FORWARDING
-MESSAGE_FORWARD_SIZE
-MINVALUE
-MIRROR
-MUST_CHANGE
-NATIONAL
-NEGOTIATE
-NOCHECK
-NOFORMAT
-NOINIT
-NONCLUSTERED
-NONE
-NOREWIND
-NOSKIP
-NOUNLOAD
-NO_CHECKSUM
-NO_COMPRESSION
-NO_EVENT_LOSS
-NOT
-NOTIFICATION
-NTLM
-NULL
-NULLIF
-OF
-OFF
-OFFSETS
-OLD_PASSWORD
-ON
-ON_FAILURE
-OPEN
-OPENDATASOURCE
-OPENQUERY
-OPENROWSET
-OPENXML
-OPTION
-OR
-ORDER
-OUTER
-OVER
-PAGE
-PARAM_NODE
-PARTIAL
-PASSWORD
-PERCENT
-PERMISSION_SET
-PER_CPU
-PER_DB
-PER_NODE
-PIVOT
-PLAN
-PLATFORM
-POLICY
-PRECISION
-PREDICATE
-PRIMARY
-PRINT
-PROC
-PROCEDURE
-PROCESS
-PUBLIC
-PYTHON
-R
-RAISERROR
-RAW
-READ
-READTEXT
-READ_WRITE_FILEGROUPS
-RECONFIGURE
-REFERENCES
-REGENERATE
-RELATED_CONVERSATION
-RELATED_CONVERSATION_GROUP
-REPLICATION
-REQUIRED
-RESET
-RESTART
-RESTORE
-RESTRICT
-RESUME
-RETAINDAYS
-RETURN
-RETURNS
-REVERT
-REVOKE
-REWIND
-RIGHT
-ROLLBACK
-ROLE
-ROWCOUNT
-ROWGUIDCOL
-RSA_512
-RSA_1024
-RSA_2048
-RSA_3072
-RSA_4096
-SAFETY
-RULE
-SAFE
-SAVE
-SCHEDULER
-SCHEMA
-SCHEME
-SECURITYAUDIT
-SELECT
-SEMANTICKEYPHRASETABLE
-SEMANTICSIMILARITYDETAILSTABLE
-SEMANTICSIMILARITYTABLE
-SERVER
-SERVICE
-SERVICE_BROKER
-SERVICE_NAME
-SESSION
-SESSION_USER
-SET
-SETUSER
-SHUTDOWN
-SID
-SKIP_KEYWORD
-SOFTNUMA
-SOME
-SOURCE
-SPECIFICATION
-SPLIT
-SQLDUMPERFLAGS
-SQLDUMPERPATH
-SQLDUMPERTIMEOUT
-STATISTICS
-STATE
-STATS
-START
-STARTED
-STARTUP_STATE
-STOP
-STOPPED
-STOP_ON_ERROR
-SUPPORTED
-SYSTEM_USER
-TABLE
-TABLESAMPLE
-TAPE
-TARGET
-TCP
-TEXTSIZE
-THEN
-TO
-TOP
-TRACK_CAUSALITY
-TRAN
-TRANSACTION
-TRANSFER
-TRIGGER
-TRUNCATE
-TSEQUAL
-UNCHECKED
-UNION
-UNIQUE
-UNLOCK
-UNPIVOT
-UNSAFE
-UPDATE
-UPDATETEXT
-URL
-USE
-USED
-USER
-VALUES
-VARYING
-VERBOSELOGGING
-VIEW
-VISIBILITY
-WAITFOR
-WHEN
-WHERE
-WHILE
-WINDOWS
-WITH
-WITHIN
-WITHOUT
-WITNESS
-WRITETEXT
-ABSOLUTE
-ACCENT_SENSITIVITY
-ACTION
-ACTIVATION
-ACTIVE
-ADDRESS
-AES_128
-AES_192
-AES_256
-AFFINITY
-AFTER
-AGGREGATE
-ALGORITHM
-ALLOW_ENCRYPTED_VALUE_MODIFICATIONS
-ALLOW_SNAPSHOT_ISOLATION
-ALLOWED
-ANSI_NULL_DEFAULT
-ANSI_NULLS
-ANSI_PADDING
-ANSI_WARNINGS
-APPLICATION_LOG
-APPLY
-ARITHABORT
-ASSEMBLY
-AUDIT
-AUDIT_GUID
-AUTO
-AUTO_CLEANUP
-AUTO_CLOSE
-AUTO_CREATE_STATISTICS
-AUTO_SHRINK
-AUTO_UPDATE_STATISTICS
-AUTO_UPDATE_STATISTICS_ASYNC
-AVAILABILITY
-AVG
-BACKUP_PRIORITY
-BEGIN_DIALOG
-BIGINT
-BINARY_BASE64
-BINARY_CHECKSUM
-BINDING
-BLOB_STORAGE
-BROKER
-BROKER_INSTANCE
-BULK_LOGGED
-CALLER
-CAP_CPU_PERCENT
-CAST
-CATALOG
-CATCH
-CHANGE_RETENTION
-CHANGE_TRACKING
-CHECKSUM
-CHECKSUM_AGG
-CLEANUP
-COLLECTION
-COLUMN_MASTER_KEY
-COMMITTED
-COMPATIBILITY_LEVEL
-CONCAT
-CONCAT_NULL_YIELDS_NULL
-CONTENT
-CONTROL
-COOKIE
-COUNT
-COUNT_BIG
-COUNTER
-CPU
-CREATE_NEW
-CREATION_DISPOSITION
-CREDENTIAL
-CRYPTOGRAPHIC
-CURSOR_CLOSE_ON_COMMIT
-CURSOR_DEFAULT
-DATA
-DATE_CORRELATION_OPTIMIZATION
-DATEADD
-DATEDIFF
-DATENAME
-DATEPART
-DAYS
-DB_CHAINING
-DB_FAILOVER
-DECRYPTION
-DEFAULT_DOUBLE_QUOTE
-DEFAULT_FULLTEXT_LANGUAGE
-DEFAULT_LANGUAGE
-DELAY
-DELAYED_DURABILITY
-DELETED
-DENSE_RANK
-DEPENDENTS
-DES
-DESCRIPTION
-DESX
-DHCP
-DIALOG
-DIRECTORY_NAME
-DISABLE
-DISABLE_BROKER
-DISABLED
-DISK_DRIVE
-DOCUMENT
-DYNAMIC
-ELEMENTS
-EMERGENCY
-EMPTY
-ENABLE
-ENABLE_BROKER
-ENCRYPTED_VALUE
-ENCRYPTION
-ENDPOINT_URL
-ERROR_BROKER_CONVERSATIONS
-EXCLUSIVE
-EXECUTABLE
-EXIST
-EXPAND
-EXPIRY_DATE
-EXPLICIT
-FAIL_OPERATION
-FAILOVER_MODE
-FAILURE
-FAILURE_CONDITION_LEVEL
-FAST
-FAST_FORWARD
-FILEGROUP
-FILEGROWTH
-FILEPATH
-FILESTREAM
-FILTER
-FIRST
-FIRST_VALUE
-FOLLOWING
-FORCE
-FORCE_FAILOVER_ALLOW_DATA_LOSS
-FORCED
-FORMAT
-FORWARD_ONLY
-FULLSCAN
-FULLTEXT
-GB
-GETDATE
-GETUTCDATE
-GLOBAL
-GO
-GROUP_MAX_REQUESTS
-GROUPING
-GROUPING_ID
-HADR
-HASH
-HEALTH_CHECK_TIMEOUT
-HIGH
-HONOR_BROKER_PRIORITY
-HOURS
-IDENTITY_VALUE
-IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX
-IMMEDIATE
-IMPERSONATE
-IMPORTANCE
-INCLUDE_NULL_VALUES
-INCREMENTAL
-INITIATOR
-INPUT
-INSENSITIVE
-INSERTED
-INT
-IP
-ISOLATION
-JOB
-JSON
-KB
-KEEP
-KEEPFIXED
-KEY_SOURCE
-KEYS
-KEYSET
-LAG
-LAST
-LAST_VALUE
-LEAD
-LEVEL
-LIST
-LISTENER
-LISTENER_URL
-LOB_COMPACTION
-LOCAL
-LOCATION
-LOCK
-LOCK_ESCALATION
-LOGIN
-LOOP
-LOW
-MANUAL
-MARK
-MATERIALIZED
-MAX
-MAX_CPU_PERCENT
-MAX_DOP
-MAX_FILES
-MAX_IOPS_PER_VOLUME
-MAX_MEMORY_PERCENT
-MAX_PROCESSES
-MAX_QUEUE_READERS
-MAX_ROLLOVER_FILES
-MAXDOP
-MAXRECURSION
-MAXSIZE
-MB
-MEDIUM
-MEMORY_OPTIMIZED_DATA
-MESSAGE
-MIN
-MIN_ACTIVE_ROWVERSION
-MIN_CPU_PERCENT
-MIN_IOPS_PER_VOLUME
-MIN_MEMORY_PERCENT
-MINUTES
-MIRROR_ADDRESS
-MIXED_PAGE_ALLOCATION
-MODE
-MODIFY
-MOVE
-MULTI_USER
-NAME
-NESTED_TRIGGERS
-NEW_ACCOUNT
-NEW_BROKER
-NEW_PASSWORD
-NEXT
-NO
-NO_TRUNCATE
-NO_WAIT
-NOCOUNT
-NODES
-NOEXPAND
-NON_TRANSACTED_ACCESS
-NORECOMPUTE
-NORECOVERY
-NOWAIT
-NTILE
-NUMANODE
-NUMBER
-NUMERIC_ROUNDABORT
-OBJECT
-OFFLINE
-OFFSET
-OLD_ACCOUNT
-ONLINE
-ONLY
-OPEN_EXISTING
-OPTIMISTIC
-OPTIMIZE
-OUT
-OUTPUT
-OVERRIDE
-OWNER
-PAGE_VERIFY
-PARAMETERIZATION
-PARTITION
-PARTITIONS
-PARTNER
-PATH
-POISON_MESSAGE_HANDLING
-POOL
-PORT
-PRECEDING
-PRIMARY_ROLE
-PRIOR
-PRIORITY
-PRIORITY_LEVEL
-PRIVATE
-PRIVATE_KEY
-PRIVILEGES
-PROCEDURE_NAME
-PROPERTY
-PROVIDER
-PROVIDER_KEY_NAME
-QUERY
-QUEUE
-QUEUE_DELAY
-QUOTED_IDENTIFIER
-RANGE
-RANK
-RC2
-RC4
-RC4_128
-READ_COMMITTED_SNAPSHOT
-READ_ONLY
-READ_ONLY_ROUTING_LIST
-READ_WRITE
-READONLY
-REBUILD
-RECEIVE
-RECOMPILE
-RECOVERY
-RECURSIVE_TRIGGERS
-RELATIVE
-REMOTE
-REMOTE_SERVICE_NAME
-REMOVE
-REORGANIZE
-REPEATABLE
-REPLICA
-REQUEST_MAX_CPU_TIME_SEC
-REQUEST_MAX_MEMORY_GRANT_PERCENT
-REQUEST_MEMORY_GRANT_TIMEOUT_SEC
-REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT
-RESERVE_DISK_SPACE
-RESOURCE
-RESOURCE_MANAGER_LOCATION
-RESTRICTED_USER
-RETENTION
-ROBUST
-ROOT
-ROUTE
-ROW
-ROW_NUMBER
-ROWGUID
-ROWS
-SAMPLE
-SCHEMABINDING
-SCOPED
-SCROLL
-SCROLL_LOCKS
-SEARCH
-SECONDARY
-SECONDARY_ONLY
-SECONDARY_ROLE
-SECONDS
-SECRET
-SECURITY
-SECURITY_LOG
-SEEDING_MODE
-SELF
-SEMI_SENSITIVE
-SEND
-SENT
-SEQUENCE
-SERIALIZABLE
-SESSION_TIMEOUT
-SETERROR
-SHARE
-SHOWPLAN
-SIGNATURE
-SIMPLE
-SINGLE_USER
-SIZE
-SMALLINT
-SNAPSHOT
-SPATIAL_WINDOW_MAX_CELLS
-STANDBY
-START_DATE
-STATIC
-STATS_STREAM
-STATUS
-STATUSONLY
-STDEV
-STDEVP
-STOPLIST
-STRING_AGG
-STUFF
-SUBJECT
-SUBSCRIPTION
-SUM
-SUSPEND
-SYMMETRIC
-SYNCHRONOUS_COMMIT
-SYNONYM
-SYSTEM
-TAKE
-TARGET_RECOVERY_TIME
-TB
-TEXTIMAGE_ON
-THROW
-TIES
-TIME
-TIMEOUT
-TIMER
-TINYINT
-TORN_PAGE_DETECTION
-TRANSFORM_NOISE_WORDS
-TRIPLE_DES
-TRIPLE_DES_3KEY
-TRUSTWORTHY
-TRY
-TSQL
-TWO_DIGIT_YEAR_CUTOFF
-TYPE
-TYPE_WARNING
-UNBOUNDED
-UNCOMMITTED
-UNKNOWN
-UNLIMITED
-UOW
-USING
-VALID_XML
-VALIDATION
-VALUE
-VAR
-VARP
-VIEW_METADATA
-VIEWS
-WAIT
-WELL_FORMED_XML
-WITHOUT_ARRAY_WRAPPER
-WORK
-WORKLOAD
-XML
-XMLDATA
-XMLNAMESPACES
-XMLSCHEMA
-XSINIL
-DOLLAR_ACTION
-SPACE
-COMMENT
-LINE_COMMENT
-DOUBLE_QUOTE_ID
-SINGLE_QUOTE
-SQUARE_BRACKET_ID
-LOCAL_ID
-DECIMAL
-ID
-QUOTED_URL
-QUOTED_HOST_AND_PORT
-STRING
-BINARY
-FLOAT
-REAL
-EQUAL
-GREATER
-LESS
-EXCLAMATION
-PLUS_ASSIGN
-MINUS_ASSIGN
-MULT_ASSIGN
-DIV_ASSIGN
-MOD_ASSIGN
-AND_ASSIGN
-XOR_ASSIGN
-OR_ASSIGN
-DOUBLE_BAR
-DOT
-UNDERLINE
-AT
-SHARP
-DOLLAR
-LR_BRACKET
-RR_BRACKET
-COMMA
-SEMI
-COLON
-STAR
-DIVIDE
-MODULE
-PLUS
-MINUS
-BIT_NOT
-BIT_OR
-BIT_AND
-BIT_XOR
-IPV4_OCTECT
-
-rule names:
-ABSENT
-ADD
-AES
-ALL
-ALLOW_CONNECTIONS
-ALLOW_MULTIPLE_EVENT_LOSS
-ALLOW_SINGLE_EVENT_LOSS
-ALTER
-AND
-ANONYMOUS
-ANY
-APPEND
-APPLICATION
-AS
-ASC
-ASYMMETRIC
-ASYNCHRONOUS_COMMIT
-AUTHORIZATION
-AUTHENTICATION
-AUTOMATED_BACKUP_PREFERENCE
-AUTOMATIC
-AVAILABILITY_MODE
-BACKSLASH
-BACKUP
-BEFORE
-BEGIN
-BETWEEN
-BLOCK
-BLOCKSIZE
-BLOCKING_HIERARCHY
-BREAK
-BROWSE
-BUFFER
-BUFFERCOUNT
-BULK
-BY
-CACHE
-CALLED
-CASCADE
-CASE
-CERTIFICATE
-CHANGETABLE
-CHANGES
-CHECK
-CHECKPOINT
-CHECK_POLICY
-CHECK_EXPIRATION
-CLASSIFIER_FUNCTION
-CLOSE
-CLUSTER
-CLUSTERED
-COALESCE
-COLLATE
-COLUMN
-COMPRESSION
-COMMIT
-COMPUTE
-CONFIGURATION
-CONSTRAINT
-CONTAINMENT
-CONTAINS
-CONTAINSTABLE
-CONTEXT
-CONTINUE
-CONTINUE_AFTER_ERROR
-CONTRACT
-CONTRACT_NAME
-CONVERSATION
-CONVERT
-COPY_ONLY
-CREATE
-CROSS
-CURRENT
-CURRENT_DATE
-CURRENT_TIME
-CURRENT_TIMESTAMP
-CURRENT_USER
-CURSOR
-CYCLE
-DATA_COMPRESSION
-DATA_SOURCE
-DATABASE
-DATABASE_MIRRORING
-DBCC
-DEALLOCATE
-DECLARE
-DEFAULT
-DEFAULT_DATABASE
-DEFAULT_SCHEMA
-DELETE
-DENY
-DESC
-DIAGNOSTICS
-DIFFERENTIAL
-DISK
-DISTINCT
-DISTRIBUTED
-DOUBLE
-DOUBLE_BACK_SLASH
-DOUBLE_FORWARD_SLASH
-DROP
-DTC_SUPPORT
-DUMP
-ELSE
-ENABLED
-END
-ENDPOINT
-ERRLVL
-ESCAPE
-ERROR
-EVENT
-EVENTDATA
-EVENT_RETENTION_MODE
-EXCEPT
-EXECUTABLE_FILE
-EXECUTE
-EXISTS
-EXPIREDATE
-EXIT
-EXTENSION
-EXTERNAL
-EXTERNAL_ACCESS
-FAILOVER
-FAILURECONDITIONLEVEL
-FAN_IN
-FETCH
-FILE
-FILENAME
-FILLFACTOR
-FILE_SNAPSHOT
-FOR
-FORCESEEK
-FORCE_SERVICE_ALLOW_DATA_LOSS
-FOREIGN
-FREETEXT
-FREETEXTTABLE
-FROM
-FULL
-FUNCTION
-GET
-GOTO
-GOVERNOR
-GRANT
-GROUP
-HAVING
-HASHED
-HEALTHCHECKTIMEOUT
-IDENTITY
-IDENTITYCOL
-IDENTITY_INSERT
-IF
-IIF
-IN
-INCLUDE
-INCREMENT
-INDEX
-INFINITE
-INIT
-INNER
-INSERT
-INSTEAD
-INTERSECT
-INTO
-IPV4_ADDR
-IPV6_ADDR
-IS
-ISNULL
-JOIN
-KERBEROS
-KEY
-KEY_PATH
-KEY_STORE_PROVIDER_NAME
-KILL
-LANGUAGE
-LEFT
-LIBRARY
-LIFETIME
-LIKE
-LINENO
-LINUX
-LISTENER_IP
-LISTENER_PORT
-LOAD
-LOCAL_SERVICE_NAME
-LOG
-MATCHED
-MASTER
-MAX_MEMORY
-MAXTRANSFER
-MAXVALUE
-MAX_DISPATCH_LATENCY
-MAX_EVENT_SIZE
-MAX_SIZE
-MAX_OUTSTANDING_IO_PER_VOLUME
-MEDIADESCRIPTION
-MEDIANAME
-MEMBER
-MEMORY_PARTITION_MODE
-MERGE
-MESSAGE_FORWARDING
-MESSAGE_FORWARD_SIZE
-MINVALUE
-MIRROR
-MUST_CHANGE
-NATIONAL
-NEGOTIATE
-NOCHECK
-NOFORMAT
-NOINIT
-NONCLUSTERED
-NONE
-NOREWIND
-NOSKIP
-NOUNLOAD
-NO_CHECKSUM
-NO_COMPRESSION
-NO_EVENT_LOSS
-NOT
-NOTIFICATION
-NTLM
-NULL
-NULLIF
-OF
-OFF
-OFFSETS
-OLD_PASSWORD
-ON
-ON_FAILURE
-OPEN
-OPENDATASOURCE
-OPENQUERY
-OPENROWSET
-OPENXML
-OPTION
-OR
-ORDER
-OUTER
-OVER
-PAGE
-PARAM_NODE
-PARTIAL
-PASSWORD
-PERCENT
-PERMISSION_SET
-PER_CPU
-PER_DB
-PER_NODE
-PIVOT
-PLAN
-PLATFORM
-POLICY
-PRECISION
-PREDICATE
-PRIMARY
-PRINT
-PROC
-PROCEDURE
-PROCESS
-PUBLIC
-PYTHON
-R
-RAISERROR
-RAW
-READ
-READTEXT
-READ_WRITE_FILEGROUPS
-RECONFIGURE
-REFERENCES
-REGENERATE
-RELATED_CONVERSATION
-RELATED_CONVERSATION_GROUP
-REPLICATION
-REQUIRED
-RESET
-RESTART
-RESTORE
-RESTRICT
-RESUME
-RETAINDAYS
-RETURN
-RETURNS
-REVERT
-REVOKE
-REWIND
-RIGHT
-ROLLBACK
-ROLE
-ROWCOUNT
-ROWGUIDCOL
-RSA_512
-RSA_1024
-RSA_2048
-RSA_3072
-RSA_4096
-SAFETY
-RULE
-SAFE
-SAVE
-SCHEDULER
-SCHEMA
-SCHEME
-SECURITYAUDIT
-SELECT
-SEMANTICKEYPHRASETABLE
-SEMANTICSIMILARITYDETAILSTABLE
-SEMANTICSIMILARITYTABLE
-SERVER
-SERVICE
-SERVICE_BROKER
-SERVICE_NAME
-SESSION
-SESSION_USER
-SET
-SETUSER
-SHUTDOWN
-SID
-SKIP_KEYWORD
-SOFTNUMA
-SOME
-SOURCE
-SPECIFICATION
-SPLIT
-SQLDUMPERFLAGS
-SQLDUMPERPATH
-SQLDUMPERTIMEOUT
-STATISTICS
-STATE
-STATS
-START
-STARTED
-STARTUP_STATE
-STOP
-STOPPED
-STOP_ON_ERROR
-SUPPORTED
-SYSTEM_USER
-TABLE
-TABLESAMPLE
-TAPE
-TARGET
-TCP
-TEXTSIZE
-THEN
-TO
-TOP
-TRACK_CAUSALITY
-TRAN
-TRANSACTION
-TRANSFER
-TRIGGER
-TRUNCATE
-TSEQUAL
-UNCHECKED
-UNION
-UNIQUE
-UNLOCK
-UNPIVOT
-UNSAFE
-UPDATE
-UPDATETEXT
-URL
-USE
-USED
-USER
-VALUES
-VARYING
-VERBOSELOGGING
-VIEW
-VISIBILITY
-WAITFOR
-WHEN
-WHERE
-WHILE
-WINDOWS
-WITH
-WITHIN
-WITHOUT
-WITNESS
-WRITETEXT
-ABSOLUTE
-ACCENT_SENSITIVITY
-ACTION
-ACTIVATION
-ACTIVE
-ADDRESS
-AES_128
-AES_192
-AES_256
-AFFINITY
-AFTER
-AGGREGATE
-ALGORITHM
-ALLOW_ENCRYPTED_VALUE_MODIFICATIONS
-ALLOW_SNAPSHOT_ISOLATION
-ALLOWED
-ANSI_NULL_DEFAULT
-ANSI_NULLS
-ANSI_PADDING
-ANSI_WARNINGS
-APPLICATION_LOG
-APPLY
-ARITHABORT
-ASSEMBLY
-AUDIT
-AUDIT_GUID
-AUTO
-AUTO_CLEANUP
-AUTO_CLOSE
-AUTO_CREATE_STATISTICS
-AUTO_SHRINK
-AUTO_UPDATE_STATISTICS
-AUTO_UPDATE_STATISTICS_ASYNC
-AVAILABILITY
-AVG
-BACKUP_PRIORITY
-BEGIN_DIALOG
-BIGINT
-BINARY_BASE64
-BINARY_CHECKSUM
-BINDING
-BLOB_STORAGE
-BROKER
-BROKER_INSTANCE
-BULK_LOGGED
-CALLER
-CAP_CPU_PERCENT
-CAST
-CATALOG
-CATCH
-CHANGE_RETENTION
-CHANGE_TRACKING
-CHECKSUM
-CHECKSUM_AGG
-CLEANUP
-COLLECTION
-COLUMN_MASTER_KEY
-COMMITTED
-COMPATIBILITY_LEVEL
-CONCAT
-CONCAT_NULL_YIELDS_NULL
-CONTENT
-CONTROL
-COOKIE
-COUNT
-COUNT_BIG
-COUNTER
-CPU
-CREATE_NEW
-CREATION_DISPOSITION
-CREDENTIAL
-CRYPTOGRAPHIC
-CURSOR_CLOSE_ON_COMMIT
-CURSOR_DEFAULT
-DATA
-DATE_CORRELATION_OPTIMIZATION
-DATEADD
-DATEDIFF
-DATENAME
-DATEPART
-DAYS
-DB_CHAINING
-DB_FAILOVER
-DECRYPTION
-DEFAULT_DOUBLE_QUOTE
-DEFAULT_FULLTEXT_LANGUAGE
-DEFAULT_LANGUAGE
-DELAY
-DELAYED_DURABILITY
-DELETED
-DENSE_RANK
-DEPENDENTS
-DES
-DESCRIPTION
-DESX
-DHCP
-DIALOG
-DIRECTORY_NAME
-DISABLE
-DISABLE_BROKER
-DISABLED
-DISK_DRIVE
-DOCUMENT
-DYNAMIC
-ELEMENTS
-EMERGENCY
-EMPTY
-ENABLE
-ENABLE_BROKER
-ENCRYPTED_VALUE
-ENCRYPTION
-ENDPOINT_URL
-ERROR_BROKER_CONVERSATIONS
-EXCLUSIVE
-EXECUTABLE
-EXIST
-EXPAND
-EXPIRY_DATE
-EXPLICIT
-FAIL_OPERATION
-FAILOVER_MODE
-FAILURE
-FAILURE_CONDITION_LEVEL
-FAST
-FAST_FORWARD
-FILEGROUP
-FILEGROWTH
-FILEPATH
-FILESTREAM
-FILTER
-FIRST
-FIRST_VALUE
-FOLLOWING
-FORCE
-FORCE_FAILOVER_ALLOW_DATA_LOSS
-FORCED
-FORMAT
-FORWARD_ONLY
-FULLSCAN
-FULLTEXT
-GB
-GETDATE
-GETUTCDATE
-GLOBAL
-GO
-GROUP_MAX_REQUESTS
-GROUPING
-GROUPING_ID
-HADR
-HASH
-HEALTH_CHECK_TIMEOUT
-HIGH
-HONOR_BROKER_PRIORITY
-HOURS
-IDENTITY_VALUE
-IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX
-IMMEDIATE
-IMPERSONATE
-IMPORTANCE
-INCLUDE_NULL_VALUES
-INCREMENTAL
-INITIATOR
-INPUT
-INSENSITIVE
-INSERTED
-INT
-IP
-ISOLATION
-JOB
-JSON
-KB
-KEEP
-KEEPFIXED
-KEY_SOURCE
-KEYS
-KEYSET
-LAG
-LAST
-LAST_VALUE
-LEAD
-LEVEL
-LIST
-LISTENER
-LISTENER_URL
-LOB_COMPACTION
-LOCAL
-LOCATION
-LOCK
-LOCK_ESCALATION
-LOGIN
-LOOP
-LOW
-MANUAL
-MARK
-MATERIALIZED
-MAX
-MAX_CPU_PERCENT
-MAX_DOP
-MAX_FILES
-MAX_IOPS_PER_VOLUME
-MAX_MEMORY_PERCENT
-MAX_PROCESSES
-MAX_QUEUE_READERS
-MAX_ROLLOVER_FILES
-MAXDOP
-MAXRECURSION
-MAXSIZE
-MB
-MEDIUM
-MEMORY_OPTIMIZED_DATA
-MESSAGE
-MIN
-MIN_ACTIVE_ROWVERSION
-MIN_CPU_PERCENT
-MIN_IOPS_PER_VOLUME
-MIN_MEMORY_PERCENT
-MINUTES
-MIRROR_ADDRESS
-MIXED_PAGE_ALLOCATION
-MODE
-MODIFY
-MOVE
-MULTI_USER
-NAME
-NESTED_TRIGGERS
-NEW_ACCOUNT
-NEW_BROKER
-NEW_PASSWORD
-NEXT
-NO
-NO_TRUNCATE
-NO_WAIT
-NOCOUNT
-NODES
-NOEXPAND
-NON_TRANSACTED_ACCESS
-NORECOMPUTE
-NORECOVERY
-NOWAIT
-NTILE
-NUMANODE
-NUMBER
-NUMERIC_ROUNDABORT
-OBJECT
-OFFLINE
-OFFSET
-OLD_ACCOUNT
-ONLINE
-ONLY
-OPEN_EXISTING
-OPTIMISTIC
-OPTIMIZE
-OUT
-OUTPUT
-OVERRIDE
-OWNER
-PAGE_VERIFY
-PARAMETERIZATION
-PARTITION
-PARTITIONS
-PARTNER
-PATH
-POISON_MESSAGE_HANDLING
-POOL
-PORT
-PRECEDING
-PRIMARY_ROLE
-PRIOR
-PRIORITY
-PRIORITY_LEVEL
-PRIVATE
-PRIVATE_KEY
-PRIVILEGES
-PROCEDURE_NAME
-PROPERTY
-PROVIDER
-PROVIDER_KEY_NAME
-QUERY
-QUEUE
-QUEUE_DELAY
-QUOTED_IDENTIFIER
-RANGE
-RANK
-RC2
-RC4
-RC4_128
-READ_COMMITTED_SNAPSHOT
-READ_ONLY
-READ_ONLY_ROUTING_LIST
-READ_WRITE
-READONLY
-REBUILD
-RECEIVE
-RECOMPILE
-RECOVERY
-RECURSIVE_TRIGGERS
-RELATIVE
-REMOTE
-REMOTE_SERVICE_NAME
-REMOVE
-REORGANIZE
-REPEATABLE
-REPLICA
-REQUEST_MAX_CPU_TIME_SEC
-REQUEST_MAX_MEMORY_GRANT_PERCENT
-REQUEST_MEMORY_GRANT_TIMEOUT_SEC
-REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT
-RESERVE_DISK_SPACE
-RESOURCE
-RESOURCE_MANAGER_LOCATION
-RESTRICTED_USER
-RETENTION
-ROBUST
-ROOT
-ROUTE
-ROW
-ROW_NUMBER
-ROWGUID
-ROWS
-SAMPLE
-SCHEMABINDING
-SCOPED
-SCROLL
-SCROLL_LOCKS
-SEARCH
-SECONDARY
-SECONDARY_ONLY
-SECONDARY_ROLE
-SECONDS
-SECRET
-SECURITY
-SECURITY_LOG
-SEEDING_MODE
-SELF
-SEMI_SENSITIVE
-SEND
-SENT
-SEQUENCE
-SERIALIZABLE
-SESSION_TIMEOUT
-SETERROR
-SHARE
-SHOWPLAN
-SIGNATURE
-SIMPLE
-SINGLE_USER
-SIZE
-SMALLINT
-SNAPSHOT
-SPATIAL_WINDOW_MAX_CELLS
-STANDBY
-START_DATE
-STATIC
-STATS_STREAM
-STATUS
-STATUSONLY
-STDEV
-STDEVP
-STOPLIST
-STRING_AGG
-STUFF
-SUBJECT
-SUBSCRIPTION
-SUM
-SUSPEND
-SYMMETRIC
-SYNCHRONOUS_COMMIT
-SYNONYM
-SYSTEM
-TAKE
-TARGET_RECOVERY_TIME
-TB
-TEXTIMAGE_ON
-THROW
-TIES
-TIME
-TIMEOUT
-TIMER
-TINYINT
-TORN_PAGE_DETECTION
-TRANSFORM_NOISE_WORDS
-TRIPLE_DES
-TRIPLE_DES_3KEY
-TRUSTWORTHY
-TRY
-TSQL
-TWO_DIGIT_YEAR_CUTOFF
-TYPE
-TYPE_WARNING
-UNBOUNDED
-UNCOMMITTED
-UNKNOWN
-UNLIMITED
-UOW
-USING
-VALID_XML
-VALIDATION
-VALUE
-VAR
-VARP
-VIEW_METADATA
-VIEWS
-WAIT
-WELL_FORMED_XML
-WITHOUT_ARRAY_WRAPPER
-WORK
-WORKLOAD
-XML
-XMLDATA
-XMLNAMESPACES
-XMLSCHEMA
-XSINIL
-DOLLAR_ACTION
-SPACE
-COMMENT
-LINE_COMMENT
-DOUBLE_QUOTE_ID
-SINGLE_QUOTE
-SQUARE_BRACKET_ID
-LOCAL_ID
-DECIMAL
-ID
-QUOTED_URL
-QUOTED_HOST_AND_PORT
-STRING
-BINARY
-FLOAT
-REAL
-EQUAL
-GREATER
-LESS
-EXCLAMATION
-PLUS_ASSIGN
-MINUS_ASSIGN
-MULT_ASSIGN
-DIV_ASSIGN
-MOD_ASSIGN
-AND_ASSIGN
-XOR_ASSIGN
-OR_ASSIGN
-DOUBLE_BAR
-DOT
-UNDERLINE
-AT
-SHARP
-DOLLAR
-LR_BRACKET
-RR_BRACKET
-COMMA
-SEMI
-COLON
-STAR
-DIVIDE
-MODULE
-PLUS
-MINUS
-BIT_NOT
-BIT_OR
-BIT_AND
-BIT_XOR
-LETTER
-IPV6_OCTECT
-IPV4_OCTECT
-DEC_DOT_DEC
-HEX_DIGIT
-DEC_DIGIT
-FullWidthLetter
-
-channel names:
-DEFAULT_TOKEN_CHANNEL
-HIDDEN
-
-mode names:
-DEFAULT_MODE
-
-atn:
-[3, 24715, 42794, 33075, 47597, 16764, 15335, 30598, 22884, 2, 842, 10091, 8, 1, 4, 2, 9, 2, 4, 3, 9, 3, 4, 4, 9, 4, 4, 5, 9, 5, 4, 6, 9, 6, 4, 7, 9, 7, 4, 8, 9, 8, 4, 9, 9, 9, 4, 10, 9, 10, 4, 11, 9, 11, 4, 12, 9, 12, 4, 13, 9, 13, 4, 14, 9, 14, 4, 15, 9, 15, 4, 16, 9, 16, 4, 17, 9, 17, 4, 18, 9, 18, 4, 19, 9, 19, 4, 20, 9, 20, 4, 21, 9, 21, 4, 22, 9, 22, 4, 23, 9, 23, 4, 24, 9, 24, 4, 25, 9, 25, 4, 26, 9, 26, 4, 27, 9, 27, 4, 28, 9, 28, 4, 29, 9, 29, 4, 30, 9, 30, 4, 31, 9, 31, 4, 32, 9, 32, 4, 33, 9, 33, 4, 34, 9, 34, 4, 35, 9, 35, 4, 36, 9, 36, 4, 37, 9, 37, 4, 38, 9, 38, 4, 39, 9, 39, 4, 40, 9, 40, 4, 41, 9, 41, 4, 42, 9, 42, 4, 43, 9, 43, 4, 44, 9, 44, 4, 45, 9, 45, 4, 46, 9, 46, 4, 47, 9, 47, 4, 48, 9, 48, 4, 49, 9, 49, 4, 50, 9, 50, 4, 51, 9, 51, 4, 52, 9, 52, 4, 53, 9, 53, 4, 54, 9, 54, 4, 55, 9, 55, 4, 56, 9, 56, 4, 57, 9, 57, 4, 58, 9, 58, 4, 59, 9, 59, 4, 60, 9, 60, 4, 61, 9, 61, 4, 62, 9, 62, 4, 63, 9, 63, 4, 64, 9, 64, 4, 65, 9, 65, 4, 66, 9, 66, 4, 67, 9, 67, 4, 68, 9, 68, 4, 69, 9, 69, 4, 70, 9, 70, 4, 71, 9, 71, 4, 72, 9, 72, 4, 73, 9, 73, 4, 74, 9, 74, 4, 75, 9, 75, 4, 76, 9, 76, 4, 77, 9, 77, 4, 78, 9, 78, 4, 79, 9, 79, 4, 80, 9, 80, 4, 81, 9, 81, 4, 82, 9, 82, 4, 83, 9, 83, 4, 84, 9, 84, 4, 85, 9, 85, 4, 86, 9, 86, 4, 87, 9, 87, 4, 88, 9, 88, 4, 89, 9, 89, 4, 90, 9, 90, 4, 91, 9, 91, 4, 92, 9, 92, 4, 93, 9, 93, 4, 94, 9, 94, 4, 95, 9, 95, 4, 96, 9, 96, 4, 97, 9, 97, 4, 98, 9, 98, 4, 99, 9, 99, 4, 100, 9, 100, 4, 101, 9, 101, 4, 102, 9, 102, 4, 103, 9, 103, 4, 104, 9, 104, 4, 105, 9, 105, 4, 106, 9, 106, 4, 107, 9, 107, 4, 108, 9, 108, 4, 109, 9, 109, 4, 110, 9, 110, 4, 111, 9, 111, 4, 112, 9, 112, 4, 113, 9, 113, 4, 114, 9, 114, 4, 115, 9, 115, 4, 116, 9, 116, 4, 117, 9, 117, 4, 118, 9, 118, 4, 119, 9, 119, 4, 120, 9, 120, 4, 121, 9, 121, 4, 122, 9, 122, 4, 123, 9, 123, 4, 124, 9, 124, 4, 125, 9, 125, 4, 126, 9, 126, 4, 127, 9, 127, 4, 128, 9, 128, 4, 129, 9, 129, 4, 130, 9, 130, 4, 131, 9, 131, 4, 132, 9, 132, 4, 133, 9, 133, 4, 134, 9, 134, 4, 135, 9, 135, 4, 136, 9, 136, 4, 137, 9, 137, 4, 138, 9, 138, 4, 139, 9, 139, 4, 140, 9, 140, 4, 141, 9, 141, 4, 142, 9, 142, 4, 143, 9, 143, 4, 144, 9, 144, 4, 145, 9, 145, 4, 146, 9, 146, 4, 147, 9, 147, 4, 148, 9, 148, 4, 149, 9, 149, 4, 150, 9, 150, 4, 151, 9, 151, 4, 152, 9, 152, 4, 153, 9, 153, 4, 154, 9, 154, 4, 155, 9, 155, 4, 156, 9, 156, 4, 157, 9, 157, 4, 158, 9, 158, 4, 159, 9, 159, 4, 160, 9, 160, 4, 161, 9, 161, 4, 162, 9, 162, 4, 163, 9, 163, 4, 164, 9, 164, 4, 165, 9, 165, 4, 166, 9, 166, 4, 167, 9, 167, 4, 168, 9, 168, 4, 169, 9, 169, 4, 170, 9, 170, 4, 171, 9, 171, 4, 172, 9, 172, 4, 173, 9, 173, 4, 174, 9, 174, 4, 175, 9, 175, 4, 176, 9, 176, 4, 177, 9, 177, 4, 178, 9, 178, 4, 179, 9, 179, 4, 180, 9, 180, 4, 181, 9, 181, 4, 182, 9, 182, 4, 183, 9, 183, 4, 184, 9, 184, 4, 185, 9, 185, 4, 186, 9, 186, 4, 187, 9, 187, 4, 188, 9, 188, 4, 189, 9, 189, 4, 190, 9, 190, 4, 191, 9, 191, 4, 192, 9, 192, 4, 193, 9, 193, 4, 194, 9, 194, 4, 195, 9, 195, 4, 196, 9, 196, 4, 197, 9, 197, 4, 198, 9, 198, 4, 199, 9, 199, 4, 200, 9, 200, 4, 201, 9, 201, 4, 202, 9, 202, 4, 203, 9, 203, 4, 204, 9, 204, 4, 205, 9, 205, 4, 206, 9, 206, 4, 207, 9, 207, 4, 208, 9, 208, 4, 209, 9, 209, 4, 210, 9, 210, 4, 211, 9, 211, 4, 212, 9, 212, 4, 213, 9, 213, 4, 214, 9, 214, 4, 215, 9, 215, 4, 216, 9, 216, 4, 217, 9, 217, 4, 218, 9, 218, 4, 219, 9, 219, 4, 220, 9, 220, 4, 221, 9, 221, 4, 222, 9, 222, 4, 223, 9, 223, 4, 224, 9, 224, 4, 225, 9, 225, 4, 226, 9, 226, 4, 227, 9, 227, 4, 228, 9, 228, 4, 229, 9, 229, 4, 230, 9, 230, 4, 231, 9, 231, 4, 232, 9, 232, 4, 233, 9, 233, 4, 234, 9, 234, 4, 235, 9, 235, 4, 236, 9, 236, 4, 237, 9, 237, 4, 238, 9, 238, 4, 239, 9, 239, 4, 240, 9, 240, 4, 241, 9, 241, 4, 242, 9, 242, 4, 243, 9, 243, 4, 244, 9, 244, 4, 245, 9, 245, 4, 246, 9, 246, 4, 247, 9, 247, 4, 248, 9, 248, 4, 249, 9, 249, 4, 250, 9, 250, 4, 251, 9, 251, 4, 252, 9, 252, 4, 253, 9, 253, 4, 254, 9, 254, 4, 255, 9, 255, 4, 256, 9, 256, 4, 257, 9, 257, 4, 258, 9, 258, 4, 259, 9, 259, 4, 260, 9, 260, 4, 261, 9, 261, 4, 262, 9, 262, 4, 263, 9, 263, 4, 264, 9, 264, 4, 265, 9, 265, 4, 266, 9, 266, 4, 267, 9, 267, 4, 268, 9, 268, 4, 269, 9, 269, 4, 270, 9, 270, 4, 271, 9, 271, 4, 272, 9, 272, 4, 273, 9, 273, 4, 274, 9, 274, 4, 275, 9, 275, 4, 276, 9, 276, 4, 277, 9, 277, 4, 278, 9, 278, 4, 279, 9, 279, 4, 280, 9, 280, 4, 281, 9, 281, 4, 282, 9, 282, 4, 283, 9, 283, 4, 284, 9, 284, 4, 285, 9, 285, 4, 286, 9, 286, 4, 287, 9, 287, 4, 288, 9, 288, 4, 289, 9, 289, 4, 290, 9, 290, 4, 291, 9, 291, 4, 292, 9, 292, 4, 293, 9, 293, 4, 294, 9, 294, 4, 295, 9, 295, 4, 296, 9, 296, 4, 297, 9, 297, 4, 298, 9, 298, 4, 299, 9, 299, 4, 300, 9, 300, 4, 301, 9, 301, 4, 302, 9, 302, 4, 303, 9, 303, 4, 304, 9, 304, 4, 305, 9, 305, 4, 306, 9, 306, 4, 307, 9, 307, 4, 308, 9, 308, 4, 309, 9, 309, 4, 310, 9, 310, 4, 311, 9, 311, 4, 312, 9, 312, 4, 313, 9, 313, 4, 314, 9, 314, 4, 315, 9, 315, 4, 316, 9, 316, 4, 317, 9, 317, 4, 318, 9, 318, 4, 319, 9, 319, 4, 320, 9, 320, 4, 321, 9, 321, 4, 322, 9, 322, 4, 323, 9, 323, 4, 324, 9, 324, 4, 325, 9, 325, 4, 326, 9, 326, 4, 327, 9, 327, 4, 328, 9, 328, 4, 329, 9, 329, 4, 330, 9, 330, 4, 331, 9, 331, 4, 332, 9, 332, 4, 333, 9, 333, 4, 334, 9, 334, 4, 335, 9, 335, 4, 336, 9, 336, 4, 337, 9, 337, 4, 338, 9, 338, 4, 339, 9, 339, 4, 340, 9, 340, 4, 341, 9, 341, 4, 342, 9, 342, 4, 343, 9, 343, 4, 344, 9, 344, 4, 345, 9, 345, 4, 346, 9, 346, 4, 347, 9, 347, 4, 348, 9, 348, 4, 349, 9, 349, 4, 350, 9, 350, 4, 351, 9, 351, 4, 352, 9, 352, 4, 353, 9, 353, 4, 354, 9, 354, 4, 355, 9, 355, 4, 356, 9, 356, 4, 357, 9, 357, 4, 358, 9, 358, 4, 359, 9, 359, 4, 360, 9, 360, 4, 361, 9, 361, 4, 362, 9, 362, 4, 363, 9, 363, 4, 364, 9, 364, 4, 365, 9, 365, 4, 366, 9, 366, 4, 367, 9, 367, 4, 368, 9, 368, 4, 369, 9, 369, 4, 370, 9, 370, 4, 371, 9, 371, 4, 372, 9, 372, 4, 373, 9, 373, 4, 374, 9, 374, 4, 375, 9, 375, 4, 376, 9, 376, 4, 377, 9, 377, 4, 378, 9, 378, 4, 379, 9, 379, 4, 380, 9, 380, 4, 381, 9, 381, 4, 382, 9, 382, 4, 383, 9, 383, 4, 384, 9, 384, 4, 385, 9, 385, 4, 386, 9, 386, 4, 387, 9, 387, 4, 388, 9, 388, 4, 389, 9, 389, 4, 390, 9, 390, 4, 391, 9, 391, 4, 392, 9, 392, 4, 393, 9, 393, 4, 394, 9, 394, 4, 395, 9, 395, 4, 396, 9, 396, 4, 397, 9, 397, 4, 398, 9, 398, 4, 399, 9, 399, 4, 400, 9, 400, 4, 401, 9, 401, 4, 402, 9, 402, 4, 403, 9, 403, 4, 404, 9, 404, 4, 405, 9, 405, 4, 406, 9, 406, 4, 407, 9, 407, 4, 408, 9, 408, 4, 409, 9, 409, 4, 410, 9, 410, 4, 411, 9, 411, 4, 412, 9, 412, 4, 413, 9, 413, 4, 414, 9, 414, 4, 415, 9, 415, 4, 416, 9, 416, 4, 417, 9, 417, 4, 418, 9, 418, 4, 419, 9, 419, 4, 420, 9, 420, 4, 421, 9, 421, 4, 422, 9, 422, 4, 423, 9, 423, 4, 424, 9, 424, 4, 425, 9, 425, 4, 426, 9, 426, 4, 427, 9, 427, 4, 428, 9, 428, 4, 429, 9, 429, 4, 430, 9, 430, 4, 431, 9, 431, 4, 432, 9, 432, 4, 433, 9, 433, 4, 434, 9, 434, 4, 435, 9, 435, 4, 436, 9, 436, 4, 437, 9, 437, 4, 438, 9, 438, 4, 439, 9, 439, 4, 440, 9, 440, 4, 441, 9, 441, 4, 442, 9, 442, 4, 443, 9, 443, 4, 444, 9, 444, 4, 445, 9, 445, 4, 446, 9, 446, 4, 447, 9, 447, 4, 448, 9, 448, 4, 449, 9, 449, 4, 450, 9, 450, 4, 451, 9, 451, 4, 452, 9, 452, 4, 453, 9, 453, 4, 454, 9, 454, 4, 455, 9, 455, 4, 456, 9, 456, 4, 457, 9, 457, 4, 458, 9, 458, 4, 459, 9, 459, 4, 460, 9, 460, 4, 461, 9, 461, 4, 462, 9, 462, 4, 463, 9, 463, 4, 464, 9, 464, 4, 465, 9, 465, 4, 466, 9, 466, 4, 467, 9, 467, 4, 468, 9, 468, 4, 469, 9, 469, 4, 470, 9, 470, 4, 471, 9, 471, 4, 472, 9, 472, 4, 473, 9, 473, 4, 474, 9, 474, 4, 475, 9, 475, 4, 476, 9, 476, 4, 477, 9, 477, 4, 478, 9, 478, 4, 479, 9, 479, 4, 480, 9, 480, 4, 481, 9, 481, 4, 482, 9, 482, 4, 483, 9, 483, 4, 484, 9, 484, 4, 485, 9, 485, 4, 486, 9, 486, 4, 487, 9, 487, 4, 488, 9, 488, 4, 489, 9, 489, 4, 490, 9, 490, 4, 491, 9, 491, 4, 492, 9, 492, 4, 493, 9, 493, 4, 494, 9, 494, 4, 495, 9, 495, 4, 496, 9, 496, 4, 497, 9, 497, 4, 498, 9, 498, 4, 499, 9, 499, 4, 500, 9, 500, 4, 501, 9, 501, 4, 502, 9, 502, 4, 503, 9, 503, 4, 504, 9, 504, 4, 505, 9, 505, 4, 506, 9, 506, 4, 507, 9, 507, 4, 508, 9, 508, 4, 509, 9, 509, 4, 510, 9, 510, 4, 511, 9, 511, 4, 512, 9, 512, 4, 513, 9, 513, 4, 514, 9, 514, 4, 515, 9, 515, 4, 516, 9, 516, 4, 517, 9, 517, 4, 518, 9, 518, 4, 519, 9, 519, 4, 520, 9, 520, 4, 521, 9, 521, 4, 522, 9, 522, 4, 523, 9, 523, 4, 524, 9, 524, 4, 525, 9, 525, 4, 526, 9, 526, 4, 527, 9, 527, 4, 528, 9, 528, 4, 529, 9, 529, 4, 530, 9, 530, 4, 531, 9, 531, 4, 532, 9, 532, 4, 533, 9, 533, 4, 534, 9, 534, 4, 535, 9, 535, 4, 536, 9, 536, 4, 537, 9, 537, 4, 538, 9, 538, 4, 539, 9, 539, 4, 540, 9, 540, 4, 541, 9, 541, 4, 542, 9, 542, 4, 543, 9, 543, 4, 544, 9, 544, 4, 545, 9, 545, 4, 546, 9, 546, 4, 547, 9, 547, 4, 548, 9, 548, 4, 549, 9, 549, 4, 550, 9, 550, 4, 551, 9, 551, 4, 552, 9, 552, 4, 553, 9, 553, 4, 554, 9, 554, 4, 555, 9, 555, 4, 556, 9, 556, 4, 557, 9, 557, 4, 558, 9, 558, 4, 559, 9, 559, 4, 560, 9, 560, 4, 561, 9, 561, 4, 562, 9, 562, 4, 563, 9, 563, 4, 564, 9, 564, 4, 565, 9, 565, 4, 566, 9, 566, 4, 567, 9, 567, 4, 568, 9, 568, 4, 569, 9, 569, 4, 570, 9, 570, 4, 571, 9, 571, 4, 572, 9, 572, 4, 573, 9, 573, 4, 574, 9, 574, 4, 575, 9, 575, 4, 576, 9, 576, 4, 577, 9, 577, 4, 578, 9, 578, 4, 579, 9, 579, 4, 580, 9, 580, 4, 581, 9, 581, 4, 582, 9, 582, 4, 583, 9, 583, 4, 584, 9, 584, 4, 585, 9, 585, 4, 586, 9, 586, 4, 587, 9, 587, 4, 588, 9, 588, 4, 589, 9, 589, 4, 590, 9, 590, 4, 591, 9, 591, 4, 592, 9, 592, 4, 593, 9, 593, 4, 594, 9, 594, 4, 595, 9, 595, 4, 596, 9, 596, 4, 597, 9, 597, 4, 598, 9, 598, 4, 599, 9, 599, 4, 600, 9, 600, 4, 601, 9, 601, 4, 602, 9, 602, 4, 603, 9, 603, 4, 604, 9, 604, 4, 605, 9, 605, 4, 606, 9, 606, 4, 607, 9, 607, 4, 608, 9, 608, 4, 609, 9, 609, 4, 610, 9, 610, 4, 611, 9, 611, 4, 612, 9, 612, 4, 613, 9, 613, 4, 614, 9, 614, 4, 615, 9, 615, 4, 616, 9, 616, 4, 617, 9, 617, 4, 618, 9, 618, 4, 619, 9, 619, 4, 620, 9, 620, 4, 621, 9, 621, 4, 622, 9, 622, 4, 623, 9, 623, 4, 624, 9, 624, 4, 625, 9, 625, 4, 626, 9, 626, 4, 627, 9, 627, 4, 628, 9, 628, 4, 629, 9, 629, 4, 630, 9, 630, 4, 631, 9, 631, 4, 632, 9, 632, 4, 633, 9, 633, 4, 634, 9, 634, 4, 635, 9, 635, 4, 636, 9, 636, 4, 637, 9, 637, 4, 638, 9, 638, 4, 639, 9, 639, 4, 640, 9, 640, 4, 641, 9, 641, 4, 642, 9, 642, 4, 643, 9, 643, 4, 644, 9, 644, 4, 645, 9, 645, 4, 646, 9, 646, 4, 647, 9, 647, 4, 648, 9, 648, 4, 649, 9, 649, 4, 650, 9, 650, 4, 651, 9, 651, 4, 652, 9, 652, 4, 653, 9, 653, 4, 654, 9, 654, 4, 655, 9, 655, 4, 656, 9, 656, 4, 657, 9, 657, 4, 658, 9, 658, 4, 659, 9, 659, 4, 660, 9, 660, 4, 661, 9, 661, 4, 662, 9, 662, 4, 663, 9, 663, 4, 664, 9, 664, 4, 665, 9, 665, 4, 666, 9, 666, 4, 667, 9, 667, 4, 668, 9, 668, 4, 669, 9, 669, 4, 670, 9, 670, 4, 671, 9, 671, 4, 672, 9, 672, 4, 673, 9, 673, 4, 674, 9, 674, 4, 675, 9, 675, 4, 676, 9, 676, 4, 677, 9, 677, 4, 678, 9, 678, 4, 679, 9, 679, 4, 680, 9, 680, 4, 681, 9, 681, 4, 682, 9, 682, 4, 683, 9, 683, 4, 684, 9, 684, 4, 685, 9, 685, 4, 686, 9, 686, 4, 687, 9, 687, 4, 688, 9, 688, 4, 689, 9, 689, 4, 690, 9, 690, 4, 691, 9, 691, 4, 692, 9, 692, 4, 693, 9, 693, 4, 694, 9, 694, 4, 695, 9, 695, 4, 696, 9, 696, 4, 697, 9, 697, 4, 698, 9, 698, 4, 699, 9, 699, 4, 700, 9, 700, 4, 701, 9, 701, 4, 702, 9, 702, 4, 703, 9, 703, 4, 704, 9, 704, 4, 705, 9, 705, 4, 706, 9, 706, 4, 707, 9, 707, 4, 708, 9, 708, 4, 709, 9, 709, 4, 710, 9, 710, 4, 711, 9, 711, 4, 712, 9, 712, 4, 713, 9, 713, 4, 714, 9, 714, 4, 715, 9, 715, 4, 716, 9, 716, 4, 717, 9, 717, 4, 718, 9, 718, 4, 719, 9, 719, 4, 720, 9, 720, 4, 721, 9, 721, 4, 722, 9, 722, 4, 723, 9, 723, 4, 724, 9, 724, 4, 725, 9, 725, 4, 726, 9, 726, 4, 727, 9, 727, 4, 728, 9, 728, 4, 729, 9, 729, 4, 730, 9, 730, 4, 731, 9, 731, 4, 732, 9, 732, 4, 733, 9, 733, 4, 734, 9, 734, 4, 735, 9, 735, 4, 736, 9, 736, 4, 737, 9, 737, 4, 738, 9, 738, 4, 739, 9, 739, 4, 740, 9, 740, 4, 741, 9, 741, 4, 742, 9, 742, 4, 743, 9, 743, 4, 744, 9, 744, 4, 745, 9, 745, 4, 746, 9, 746, 4, 747, 9, 747, 4, 748, 9, 748, 4, 749, 9, 749, 4, 750, 9, 750, 4, 751, 9, 751, 4, 752, 9, 752, 4, 753, 9, 753, 4, 754, 9, 754, 4, 755, 9, 755, 4, 756, 9, 756, 4, 757, 9, 757, 4, 758, 9, 758, 4, 759, 9, 759, 4, 760, 9, 760, 4, 761, 9, 761, 4, 762, 9, 762, 4, 763, 9, 763, 4, 764, 9, 764, 4, 765, 9, 765, 4, 766, 9, 766, 4, 767, 9, 767, 4, 768, 9, 768, 4, 769, 9, 769, 4, 770, 9, 770, 4, 771, 9, 771, 4, 772, 9, 772, 4, 773, 9, 773, 4, 774, 9, 774, 4, 775, 9, 775, 4, 776, 9, 776, 4, 777, 9, 777, 4, 778, 9, 778, 4, 779, 9, 779, 4, 780, 9, 780, 4, 781, 9, 781, 4, 782, 9, 782, 4, 783, 9, 783, 4, 784, 9, 784, 4, 785, 9, 785, 4, 786, 9, 786, 4, 787, 9, 787, 4, 788, 9, 788, 4, 789, 9, 789, 4, 790, 9, 790, 4, 791, 9, 791, 4, 792, 9, 792, 4, 793, 9, 793, 4, 794, 9, 794, 4, 795, 9, 795, 4, 796, 9, 796, 4, 797, 9, 797, 4, 798, 9, 798, 4, 799, 9, 799, 4, 800, 9, 800, 4, 801, 9, 801, 4, 802, 9, 802, 4, 803, 9, 803, 4, 804, 9, 804, 4, 805, 9, 805, 4, 806, 9, 806, 4, 807, 9, 807, 4, 808, 9, 808, 4, 809, 9, 809, 4, 810, 9, 810, 4, 811, 9, 811, 4, 812, 9, 812, 4, 813, 9, 813, 4, 814, 9, 814, 4, 815, 9, 815, 4, 816, 9, 816, 4, 817, 9, 817, 4, 818, 9, 818, 4, 819, 9, 819, 4, 820, 9, 820, 4, 821, 9, 821, 4, 822, 9, 822, 4, 823, 9, 823, 4, 824, 9, 824, 4, 825, 9, 825, 4, 826, 9, 826, 4, 827, 9, 827, 4, 828, 9, 828, 4, 829, 9, 829, 4, 830, 9, 830, 4, 831, 9, 831, 4, 832, 9, 832, 4, 833, 9, 833, 4, 834, 9, 834, 4, 835, 9, 835, 4, 836, 9, 836, 4, 837, 9, 837, 4, 838, 9, 838, 4, 839, 9, 839, 4, 840, 9, 840, 4, 841, 9, 841, 4, 842, 9, 842, 4, 843, 9, 843, 4, 844, 9, 844, 4, 845, 9, 845, 4, 846, 9, 846, 4, 847, 9, 847, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 3, 4, 3, 4, 3, 4, 3, 5, 3, 5, 3, 5, 3, 5, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 9, 3, 9, 3, 9, 3, 9, 3, 9, 3, 9, 3, 10, 3, 10, 3, 10, 3, 10, 3, 11, 3, 11, 3, 11, 3, 11, 3, 11, 3, 11, 3, 11, 3, 11, 3, 11, 3, 11, 3, 12, 3, 12, 3, 12, 3, 12, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 14, 3, 14, 3, 14, 3, 14, 3, 14, 3, 14, 3, 14, 3, 14, 3, 14, 3, 14, 3, 14, 3, 14, 3, 15, 3, 15, 3, 15, 3, 16, 3, 16, 3, 16, 3, 16, 3, 17, 3, 17, 3, 17, 3, 17, 3, 17, 3, 17, 3, 17, 3, 17, 3, 17, 3, 17, 3, 17, 3, 18, 3, 18, 3, 18, 3, 18, 3, 18, 3, 18, 3, 18, 3, 18, 3, 18, 3, 18, 3, 18, 3, 18, 3, 18, 3, 18, 3, 18, 3, 18, 3, 18, 3, 18, 3, 18, 3, 18, 3, 19, 3, 19, 3, 19, 3, 19, 3, 19, 3, 19, 3, 19, 3, 19, 3, 19, 3, 19, 3, 19, 3, 19, 3, 19, 3, 19, 3, 20, 3, 20, 3, 20, 3, 20, 3, 20, 3, 20, 3, 20, 3, 20, 3, 20, 3, 20, 3, 20, 3, 20, 3, 20, 3, 20, 3, 20, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 22, 3, 22, 3, 22, 3, 22, 3, 22, 3, 22, 3, 22, 3, 22, 3, 22, 3, 22, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 24, 3, 24, 3, 25, 3, 25, 3, 25, 3, 25, 3, 25, 3, 25, 3, 25, 3, 26, 3, 26, 3, 26, 3, 26, 3, 26, 3, 26, 3, 26, 3, 27, 3, 27, 3, 27, 3, 27, 3, 27, 3, 27, 3, 28, 3, 28, 3, 28, 3, 28, 3, 28, 3, 28, 3, 28, 3, 28, 3, 29, 3, 29, 3, 29, 3, 29, 3, 29, 3, 29, 3, 30, 3, 30, 3, 30, 3, 30, 3, 30, 3, 30, 3, 30, 3, 30, 3, 30, 3, 30, 3, 31, 3, 31, 3, 31, 3, 31, 3, 31, 3, 31, 3, 31, 3, 31, 3, 31, 3, 31, 3, 31, 3, 31, 3, 31, 3, 31, 3, 31, 3, 31, 3, 31, 3, 31, 3, 31, 3, 32, 3, 32, 3, 32, 3, 32, 3, 32, 3, 32, 3, 33, 3, 33, 3, 33, 3, 33, 3, 33, 3, 33, 3, 33, 3, 34, 3, 34, 3, 34, 3, 34, 3, 34, 3, 34, 3, 34, 3, 35, 3, 35, 3, 35, 3, 35, 3, 35, 3, 35, 3, 35, 3, 35, 3, 35, 3, 35, 3, 35, 3, 35, 3, 36, 3, 36, 3, 36, 3, 36, 3, 36, 3, 37, 3, 37, 3, 37, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 40, 3, 40, 3, 40, 3, 40, 3, 40, 3, 40, 3, 40, 3, 40, 3, 41, 3, 41, 3, 41, 3, 41, 3, 41, 3, 42, 3, 42, 3, 42, 3, 42, 3, 42, 3, 42, 3, 42, 3, 42, 3, 42, 3, 42, 3, 42, 3, 42, 3, 43, 3, 43, 3, 43, 3, 43, 3, 43, 3, 43, 3, 43, 3, 43, 3, 43, 3, 43, 3, 43, 3, 43, 3, 44, 3, 44, 3, 44, 3, 44, 3, 44, 3, 44, 3, 44, 3, 44, 3, 45, 3, 45, 3, 45, 3, 45, 3, 45, 3, 45, 3, 46, 3, 46, 3, 46, 3, 46, 3, 46, 3, 46, 3, 46, 3, 46, 3, 46, 3, 46, 3, 46, 3, 47, 3, 47, 3, 47, 3, 47, 3, 47, 3, 47, 3, 47, 3, 47, 3, 47, 3, 47, 3, 47, 3, 47, 3, 47, 3, 48, 3, 48, 3, 48, 3, 48, 3, 48, 3, 48, 3, 48, 3, 48, 3, 48, 3, 48, 3, 48, 3, 48, 3, 48, 3, 48, 3, 48, 3, 48, 3, 48, 3, 49, 3, 49, 3, 49, 3, 49, 3, 49, 3, 49, 3, 49, 3, 49, 3, 49, 3, 49, 3, 49, 3, 49, 3, 49, 3, 49, 3, 49, 3, 49, 3, 49, 3, 49, 3, 49, 3, 49, 3, 50, 3, 50, 3, 50, 3, 50, 3, 50, 3, 50, 3, 51, 3, 51, 3, 51, 3, 51, 3, 51, 3, 51, 3, 51, 3, 51, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 53, 3, 53, 3, 53, 3, 53, 3, 53, 3, 53, 3, 53, 3, 53, 3, 53, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 55, 3, 55, 3, 55, 3, 55, 3, 55, 3, 55, 3, 55, 3, 56, 3, 56, 3, 56, 3, 56, 3, 56, 3, 56, 3, 56, 3, 56, 3, 56, 3, 56, 3, 56, 3, 56, 3, 57, 3, 57, 3, 57, 3, 57, 3, 57, 3, 57, 3, 57, 3, 58, 3, 58, 3, 58, 3, 58, 3, 58, 3, 58, 3, 58, 3, 58, 3, 59, 3, 59, 3, 59, 3, 59, 3, 59, 3, 59, 3, 59, 3, 59, 3, 59, 3, 59, 3, 59, 3, 59, 3, 59, 3, 59, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 3, 62, 3, 62, 3, 62, 3, 62, 3, 62, 3, 62, 3, 62, 3, 62, 3, 62, 3, 63, 3, 63, 3, 63, 3, 63, 3, 63, 3, 63, 3, 63, 3, 63, 3, 63, 3, 63, 3, 63, 3, 63, 3, 63, 3, 63, 3, 64, 3, 64, 3, 64, 3, 64, 3, 64, 3, 64, 3, 64, 3, 64, 3, 65, 3, 65, 3, 65, 3, 65, 3, 65, 3, 65, 3, 65, 3, 65, 3, 65, 3, 66, 3, 66, 3, 66, 3, 66, 3, 66, 3, 66, 3, 66, 3, 66, 3, 66, 3, 66, 3, 66, 3, 66, 3, 66, 3, 66, 3, 66, 3, 66, 3, 66, 3, 66, 3, 66, 3, 66, 3, 66, 3, 67, 3, 67, 3, 67, 3, 67, 3, 67, 3, 67, 3, 67, 3, 67, 3, 67, 3, 68, 3, 68, 3, 68, 3, 68, 3, 68, 3, 68, 3, 68, 3, 68, 3, 68, 3, 68, 3, 68, 3, 68, 3, 68, 3, 68, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 70, 3, 70, 3, 70, 3, 70, 5, 70, 2392, 10, 70, 3, 70, 3, 70, 3, 70, 3, 70, 3, 70, 3, 70, 3, 70, 3, 70, 3, 71, 3, 71, 3, 71, 3, 71, 3, 71, 3, 71, 3, 71, 3, 71, 3, 71, 3, 71, 3, 72, 3, 72, 3, 72, 3, 72, 3, 72, 3, 72, 3, 72, 3, 73, 3, 73, 3, 73, 3, 73, 3, 73, 3, 73, 3, 74, 3, 74, 3, 74, 3, 74, 3, 74, 3, 74, 3, 74, 3, 74, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 77, 3, 77, 3, 77, 3, 77, 3, 77, 3, 77, 3, 77, 3, 77, 3, 77, 3, 77, 3, 77, 3, 77, 3, 77, 3, 77, 3, 77, 3, 77, 3, 77, 3, 77, 3, 78, 3, 78, 3, 78, 3, 78, 3, 78, 3, 78, 3, 78, 3, 78, 3, 78, 3, 78, 3, 78, 3, 78, 3, 78, 3, 79, 3, 79, 3, 79, 3, 79, 3, 79, 3, 79, 3, 79, 3, 80, 3, 80, 3, 80, 3, 80, 3, 80, 3, 80, 3, 81, 3, 81, 3, 81, 3, 81, 3, 81, 3, 81, 3, 81, 3, 81, 3, 81, 3, 81, 3, 81, 3, 81, 3, 81, 3, 81, 3, 81, 3, 81, 3, 81, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 83, 3, 83, 3, 83, 3, 83, 3, 83, 3, 83, 3, 83, 3, 83, 3, 83, 3, 84, 3, 84, 3, 84, 3, 84, 3, 84, 3, 84, 3, 84, 3, 84, 3, 84, 3, 84, 3, 84, 3, 84, 3, 84, 3, 84, 3, 84, 3, 84, 3, 84, 3, 84, 3, 84, 3, 85, 3, 85, 3, 85, 3, 85, 3, 85, 3, 86, 3, 86, 3, 86, 3, 86, 3, 86, 3, 86, 3, 86, 3, 86, 3, 86, 3, 86, 3, 86, 3, 87, 3, 87, 3, 87, 3, 87, 3, 87, 3, 87, 3, 87, 3, 87, 3, 88, 3, 88, 3, 88, 3, 88, 3, 88, 3, 88, 3, 88, 3, 88, 3, 89, 3, 89, 3, 89, 3, 89, 3, 89, 3, 89, 3, 89, 3, 89, 3, 89, 3, 89, 3, 89, 3, 89, 3, 89, 3, 89, 3, 89, 3, 89, 3, 89, 3, 90, 3, 90, 3, 90, 3, 90, 3, 90, 3, 90, 3, 90, 3, 90, 3, 90, 3, 90, 3, 90, 3, 90, 3, 90, 3, 90, 3, 90, 3, 91, 3, 91, 3, 91, 3, 91, 3, 91, 3, 91, 3, 91, 3, 92, 3, 92, 3, 92, 3, 92, 3, 92, 3, 93, 3, 93, 3, 93, 3, 93, 3, 93, 3, 94, 3, 94, 3, 94, 3, 94, 3, 94, 3, 94, 3, 94, 3, 94, 3, 94, 3, 94, 3, 94, 3, 94, 3, 95, 3, 95, 3, 95, 3, 95, 3, 95, 3, 95, 3, 95, 3, 95, 3, 95, 3, 95, 3, 95, 3, 95, 3, 95, 3, 96, 3, 96, 3, 96, 3, 96, 3, 96, 3, 97, 3, 97, 3, 97, 3, 97, 3, 97, 3, 97, 3, 97, 3, 97, 3, 97, 3, 98, 3, 98, 3, 98, 3, 98, 3, 98, 3, 98, 3, 98, 3, 98, 3, 98, 3, 98, 3, 98, 3, 98, 3, 99, 3, 99, 3, 99, 3, 99, 3, 99, 3, 99, 3, 99, 3, 100, 3, 100, 3, 100, 3, 101, 3, 101, 3, 101, 3, 102, 3, 102, 3, 102, 3, 102, 3, 102, 3, 103, 3, 103, 3, 103, 3, 103, 3, 103, 3, 103, 3, 103, 3, 103, 3, 103, 3, 103, 3, 103, 3, 103, 3, 104, 3, 104, 3, 104, 3, 104, 3, 104, 3, 105, 3, 105, 3, 105, 3, 105, 3, 105, 3, 106, 3, 106, 3, 106, 3, 106, 3, 106, 3, 106, 3, 106, 3, 106, 3, 107, 3, 107, 3, 107, 3, 107, 3, 108, 3, 108, 3, 108, 3, 108, 3, 108, 3, 108, 3, 108, 3, 108, 3, 108, 3, 109, 3, 109, 3, 109, 3, 109, 3, 109, 3, 109, 3, 109, 3, 110, 3, 110, 3, 110, 3, 110, 3, 110, 3, 110, 3, 110, 3, 111, 3, 111, 3, 111, 3, 111, 3, 111, 3, 111, 3, 112, 3, 112, 3, 112, 3, 112, 3, 112, 3, 112, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 3, 115, 3, 115, 3, 115, 3, 115, 3, 115, 3, 115, 3, 115, 3, 116, 3, 116, 3, 116, 3, 116, 3, 116, 3, 116, 3, 116, 3, 116, 3, 116, 3, 116, 3, 116, 3, 116, 3, 116, 3, 116, 3, 116, 3, 116, 3, 117, 3, 117, 3, 117, 3, 117, 3, 117, 3, 117, 3, 117, 3, 117, 5, 117, 2844, 10, 117, 3, 118, 3, 118, 3, 118, 3, 118, 3, 118, 3, 118, 3, 118, 3, 119, 3, 119, 3, 119, 3, 119, 3, 119, 3, 119, 3, 119, 3, 119, 3, 119, 3, 119, 3, 119, 3, 120, 3, 120, 3, 120, 3, 120, 3, 120, 3, 121, 3, 121, 3, 121, 3, 121, 3, 121, 3, 121, 3, 121, 3, 121, 3, 121, 3, 121, 3, 122, 3, 122, 3, 122, 3, 122, 3, 122, 3, 122, 3, 122, 3, 122, 3, 122, 3, 123, 3, 123, 3, 123, 3, 123, 3, 123, 3, 123, 3, 123, 3, 123, 3, 123, 3, 123, 3, 123, 3, 123, 3, 123, 3, 123, 3, 123, 3, 123, 3, 124, 3, 124, 3, 124, 3, 124, 3, 124, 3, 124, 3, 124, 3, 124, 3, 124, 3, 125, 3, 125, 3, 125, 3, 125, 3, 125, 3, 125, 3, 125, 3, 125, 3, 125, 3, 125, 3, 125, 3, 125, 3, 125, 3, 125, 3, 125, 3, 125, 3, 125, 3, 125, 3, 125, 3, 125, 3, 125, 3, 125, 3, 126, 3, 126, 3, 126, 3, 126, 3, 126, 3, 126, 3, 126, 3, 127, 3, 127, 3, 127, 3, 127, 3, 127, 3, 127, 3, 128, 3, 128, 3, 128, 3, 128, 3, 128, 3, 129, 3, 129, 3, 129, 3, 129, 3, 129, 3, 129, 3, 129, 3, 129, 3, 129, 3, 130, 3, 130, 3, 130, 3, 130, 3, 130, 3, 130, 3, 130, 3, 130, 3, 130, 3, 130, 3, 130, 3, 131, 3, 131, 3, 131, 3, 131, 3, 131, 3, 131, 3, 131, 3, 131, 3, 131, 3, 131, 3, 131, 3, 131, 3, 131, 3, 131, 3, 132, 3, 132, 3, 132, 3, 132, 3, 133, 3, 133, 3, 133, 3, 133, 3, 133, 3, 133, 3, 133, 3, 133, 3, 133, 3, 133, 3, 134, 3, 134, 3, 134, 3, 134, 3, 134, 3, 134, 3, 134, 3, 134, 3, 134, 3, 134, 3, 134, 3, 134, 3, 134, 3, 134, 3, 134, 3, 134, 3, 134, 3, 134, 3, 134, 3, 134, 3, 134, 3, 134, 3, 134, 3, 134, 3, 134, 3, 134, 3, 134, 3, 134, 3, 134, 3, 134, 3, 135, 3, 135, 3, 135, 3, 135, 3, 135, 3, 135, 3, 135, 3, 135, 3, 136, 3, 136, 3, 136, 3, 136, 3, 136, 3, 136, 3, 136, 3, 136, 3, 136, 3, 137, 3, 137, 3, 137, 3, 137, 3, 137, 3, 137, 3, 137, 3, 137, 3, 137, 3, 137, 3, 137, 3, 137, 3, 137, 3, 137, 3, 138, 3, 138, 3, 138, 3, 138, 3, 138, 3, 139, 3, 139, 3, 139, 3, 139, 3, 139, 3, 140, 3, 140, 3, 140, 3, 140, 3, 140, 3, 140, 3, 140, 3, 140, 3, 140, 3, 141, 3, 141, 3, 141, 3, 141, 3, 142, 3, 142, 3, 142, 3, 142, 3, 142, 3, 143, 3, 143, 3, 143, 3, 143, 3, 143, 3, 143, 3, 143, 3, 143, 3, 143, 3, 144, 3, 144, 3, 144, 3, 144, 3, 144, 3, 144, 3, 145, 3, 145, 3, 145, 3, 145, 3, 145, 3, 145, 3, 146, 3, 146, 3, 146, 3, 146, 3, 146, 3, 146, 3, 146, 3, 147, 3, 147, 3, 147, 3, 147, 3, 147, 3, 147, 3, 147, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 3, 150, 3, 150, 3, 150, 3, 150, 3, 150, 3, 150, 3, 150, 3, 150, 3, 150, 3, 150, 3, 150, 3, 150, 3, 151, 3, 151, 3, 151, 3, 151, 3, 151, 3, 151, 3, 151, 3, 151, 3, 151, 3, 151, 3, 151, 3, 151, 3, 151, 3, 151, 3, 151, 3, 151, 3, 152, 3, 152, 3, 152, 3, 153, 3, 153, 3, 153, 3, 153, 3, 154, 3, 154, 3, 154, 3, 155, 3, 155, 3, 155, 3, 155, 3, 155, 3, 155, 3, 155, 3, 155, 3, 156, 3, 156, 3, 156, 3, 156, 3, 156, 3, 156, 3, 156, 3, 156, 3, 156, 3, 156, 3, 157, 3, 157, 3, 157, 3, 157, 3, 157, 3, 157, 3, 158, 3, 158, 3, 158, 3, 158, 3, 158, 3, 158, 3, 158, 3, 158, 3, 158, 3, 159, 3, 159, 3, 159, 3, 159, 3, 159, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 161, 3, 161, 3, 161, 3, 161, 3, 161, 3, 161, 3, 161, 3, 162, 3, 162, 3, 162, 3, 162, 3, 162, 3, 162, 3, 162, 3, 162, 3, 163, 3, 163, 3, 163, 3, 163, 3, 163, 3, 163, 3, 163, 3, 163, 3, 163, 3, 163, 3, 164, 3, 164, 3, 164, 3, 164, 3, 164, 3, 165, 5, 165, 3266, 10, 165, 3, 165, 3, 165, 3, 165, 3, 165, 3, 165, 3, 165, 3, 165, 3, 165, 5, 165, 3276, 10, 165, 3, 166, 5, 166, 3279, 10, 166, 3, 166, 5, 166, 3282, 10, 166, 3, 166, 5, 166, 3285, 10, 166, 3, 166, 5, 166, 3288, 10, 166, 3, 166, 5, 166, 3291, 10, 166, 3, 166, 3, 166, 5, 166, 3295, 10, 166, 3, 166, 5, 166, 3298, 10, 166, 3, 166, 5, 166, 3301, 10, 166, 3, 166, 5, 166, 3304, 10, 166, 3, 166, 3, 166, 5, 166, 3308, 10, 166, 3, 166, 5, 166, 3311, 10, 166, 3, 166, 5, 166, 3314, 10, 166, 3, 166, 5, 166, 3317, 10, 166, 3, 166, 3, 166, 5, 166, 3321, 10, 166, 3, 166, 5, 166, 3324, 10, 166, 3, 166, 5, 166, 3327, 10, 166, 3, 166, 5, 166, 3330, 10, 166, 3, 166, 3, 166, 5, 166, 3334, 10, 166, 3, 166, 5, 166, 3337, 10, 166, 3, 166, 5, 166, 3340, 10, 166, 3, 166, 5, 166, 3343, 10, 166, 3, 166, 3, 166, 5, 166, 3347, 10, 166, 3, 166, 5, 166, 3350, 10, 166, 3, 166, 5, 166, 3353, 10, 166, 3, 166, 5, 166, 3356, 10, 166, 3, 166, 3, 166, 5, 166, 3360, 10, 166, 3, 166, 5, 166, 3363, 10, 166, 3, 166, 5, 166, 3366, 10, 166, 3, 166, 5, 166, 3369, 10, 166, 3, 166, 3, 166, 5, 166, 3373, 10, 166, 3, 166, 5, 166, 3376, 10, 166, 3, 166, 5, 166, 3379, 10, 166, 3, 166, 5, 166, 3382, 10, 166, 3, 166, 5, 166, 3385, 10, 166, 3, 167, 3, 167, 3, 167, 3, 168, 3, 168, 3, 168, 3, 168, 3, 168, 3, 168, 3, 168, 3, 169, 3, 169, 3, 169, 3, 169, 3, 169, 3, 170, 3, 170, 3, 170, 3, 170, 3, 170, 3, 170, 3, 170, 3, 170, 3, 170, 3, 171, 3, 171, 3, 171, 3, 171, 3, 172, 3, 172, 3, 172, 3, 172, 3, 172, 3, 172, 3, 172, 3, 172, 3, 172, 3, 173, 3, 173, 3, 173, 3, 173, 3, 173, 3, 173, 3, 173, 3, 173, 3, 173, 3, 173, 3, 173, 3, 173, 3, 173, 3, 173, 3, 173, 3, 173, 3, 173, 3, 173, 3, 173, 3, 173, 3, 173, 3, 173, 3, 173, 3, 173, 3, 174, 3, 174, 3, 174, 3, 174, 3, 174, 3, 175, 3, 175, 3, 175, 3, 175, 3, 175, 3, 175, 3, 175, 3, 175, 3, 175, 3, 176, 3, 176, 3, 176, 3, 176, 3, 176, 3, 177, 3, 177, 3, 177, 3, 177, 3, 177, 3, 177, 3, 177, 3, 177, 3, 178, 3, 178, 3, 178, 3, 178, 3, 178, 3, 178, 3, 178, 3, 178, 3, 178, 3, 179, 3, 179, 3, 179, 3, 179, 3, 179, 3, 180, 3, 180, 3, 180, 3, 180, 3, 180, 3, 180, 3, 180, 3, 181, 3, 181, 3, 181, 3, 181, 3, 181, 3, 181, 3, 182, 3, 182, 3, 182, 3, 182, 3, 182, 3, 182, 3, 182, 3, 182, 3, 182, 3, 182, 3, 182, 3, 182, 3, 183, 3, 183, 3, 183, 3, 183, 3, 183, 3, 183, 3, 183, 3, 183, 3, 183, 3, 183, 3, 183, 3, 183, 3, 183, 3, 183, 3, 184, 3, 184, 3, 184, 3, 184, 3, 184, 3, 185, 3, 185, 3, 185, 3, 185, 3, 185, 3, 185, 3, 185, 3, 185, 3, 185, 3, 185, 3, 185, 3, 185, 3, 185, 3, 185, 3, 185, 3, 185, 3, 185, 3, 185, 3, 185, 3, 186, 3, 186, 3, 186, 3, 186, 3, 187, 3, 187, 3, 187, 3, 187, 3, 187, 3, 187, 3, 187, 3, 187, 3, 188, 3, 188, 3, 188, 3, 188, 3, 188, 3, 188, 3, 188, 3, 189, 3, 189, 3, 189, 3, 189, 3, 189, 3, 189, 3, 189, 3, 189, 3, 189, 3, 189, 3, 189, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 192, 3, 192, 3, 192, 3, 192, 3, 192, 3, 192, 3, 192, 3, 192, 3, 192, 3, 192, 3, 192, 3, 192, 3, 192, 3, 192, 3, 192, 3, 192, 3, 192, 3, 192, 3, 192, 3, 192, 3, 192, 3, 193, 3, 193, 3, 193, 3, 193, 3, 193, 3, 193, 3, 193, 3, 193, 3, 193, 3, 193, 3, 193, 3, 193, 3, 193, 3, 193, 3, 193, 3, 194, 3, 194, 3, 194, 3, 194, 3, 194, 3, 194, 3, 194, 3, 194, 3, 194, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 196, 3, 196, 3, 196, 3, 196, 3, 196, 3, 196, 3, 196, 3, 196, 3, 196, 3, 196, 3, 196, 3, 196, 3, 196, 3, 196, 3, 196, 3, 196, 3, 196, 3, 197, 3, 197, 3, 197, 3, 197, 3, 197, 3, 197, 3, 197, 3, 197, 3, 197, 3, 197, 3, 198, 3, 198, 3, 198, 3, 198, 3, 198, 3, 198, 3, 198, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 200, 3, 200, 3, 200, 3, 200, 3, 200, 3, 200, 3, 201, 3, 201, 3, 201, 3, 201, 3, 201, 3, 201, 3, 201, 3, 201, 3, 201, 3, 201, 3, 201, 3, 201, 3, 201, 3, 201, 3, 201, 3, 201, 3, 201, 3, 201, 3, 201, 3, 202, 3, 202, 3, 202, 3, 202, 3, 202, 3, 202, 3, 202, 3, 202, 3, 202, 3, 202, 3, 202, 3, 202, 3, 202, 3, 202, 3, 202, 3, 202, 3, 202, 3, 202, 3, 202, 3, 202, 3, 202, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 3, 205, 3, 205, 3, 205, 3, 205, 3, 205, 3, 205, 3, 205, 3, 205, 3, 205, 3, 205, 3, 205, 3, 205, 3, 206, 3, 206, 3, 206, 3, 206, 3, 206, 3, 206, 3, 206, 3, 206, 3, 206, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 208, 3, 208, 3, 208, 3, 208, 3, 208, 3, 208, 3, 208, 3, 208, 3, 209, 3, 209, 3, 209, 3, 209, 3, 209, 3, 209, 3, 209, 3, 209, 3, 209, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 211, 3, 211, 3, 211, 3, 211, 3, 211, 3, 211, 3, 211, 3, 211, 3, 211, 3, 211, 3, 211, 3, 211, 3, 211, 3, 212, 3, 212, 3, 212, 3, 212, 3, 212, 3, 213, 3, 213, 3, 213, 3, 213, 3, 213, 3, 213, 3, 213, 3, 213, 3, 213, 3, 214, 3, 214, 3, 214, 3, 214, 3, 214, 3, 214, 3, 214, 3, 215, 3, 215, 3, 215, 3, 215, 3, 215, 3, 215, 3, 215, 3, 215, 3, 215, 3, 216, 3, 216, 3, 216, 3, 216, 3, 216, 3, 216, 3, 216, 3, 216, 3, 216, 3, 216, 3, 216, 3, 216, 3, 217, 3, 217, 3, 217, 3, 217, 3, 217, 3, 217, 3, 217, 3, 217, 3, 217, 3, 217, 3, 217, 3, 217, 3, 217, 3, 217, 3, 217, 3, 218, 3, 218, 3, 218, 3, 218, 3, 218, 3, 218, 3, 218, 3, 218, 3, 218, 3, 218, 3, 218, 3, 218, 3, 218, 3, 218, 3, 219, 3, 219, 3, 219, 3, 219, 3, 220, 3, 220, 3, 220, 3, 220, 3, 220, 3, 220, 3, 220, 3, 220, 3, 220, 3, 220, 3, 220, 3, 220, 3, 220, 3, 221, 3, 221, 3, 221, 3, 221, 3, 221, 3, 222, 3, 222, 3, 222, 3, 222, 3, 222, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 224, 3, 224, 3, 224, 3, 225, 3, 225, 3, 225, 3, 225, 3, 226, 3, 226, 3, 226, 3, 226, 3, 226, 3, 226, 3, 226, 3, 226, 3, 227, 3, 227, 3, 227, 3, 227, 3, 227, 3, 227, 3, 227, 3, 227, 3, 227, 3, 227, 3, 227, 3, 227, 3, 227, 3, 228, 3, 228, 3, 228, 3, 229, 3, 229, 3, 229, 3, 229, 3, 229, 3, 229, 3, 229, 3, 229, 3, 229, 3, 229, 3, 229, 3, 230, 3, 230, 3, 230, 3, 230, 3, 230, 3, 231, 3, 231, 3, 231, 3, 231, 3, 231, 3, 231, 3, 231, 3, 231, 3, 231, 3, 231, 3, 231, 3, 231, 3, 231, 3, 231, 3, 231, 3, 232, 3, 232, 3, 232, 3, 232, 3, 232, 3, 232, 3, 232, 3, 232, 3, 232, 3, 232, 3, 233, 3, 233, 3, 233, 3, 233, 3, 233, 3, 233, 3, 233, 3, 233, 3, 233, 3, 233, 3, 233, 3, 234, 3, 234, 3, 234, 3, 234, 3, 234, 3, 234, 3, 234, 3, 234, 3, 235, 3, 235, 3, 235, 3, 235, 3, 235, 3, 235, 3, 235, 3, 236, 3, 236, 3, 236, 3, 237, 3, 237, 3, 237, 3, 237, 3, 237, 3, 237, 3, 238, 3, 238, 3, 238, 3, 238, 3, 238, 3, 238, 3, 239, 3, 239, 3, 239, 3, 239, 3, 239, 3, 240, 3, 240, 3, 240, 3, 240, 3, 240, 3, 241, 3, 241, 3, 241, 3, 241, 3, 241, 3, 241, 3, 241, 3, 241, 3, 241, 3, 241, 3, 241, 3, 242, 3, 242, 3, 242, 3, 242, 3, 242, 3, 242, 3, 242, 3, 242, 3, 243, 3, 243, 3, 243, 3, 243, 3, 243, 3, 243, 3, 243, 3, 243, 3, 243, 3, 244, 3, 244, 3, 244, 3, 244, 3, 244, 3, 244, 3, 244, 3, 244, 3, 245, 3, 245, 3, 245, 3, 245, 3, 245, 3, 245, 3, 245, 3, 245, 3, 245, 3, 245, 3, 245, 3, 245, 3, 245, 3, 245, 3, 245, 3, 246, 3, 246, 3, 246, 3, 246, 3, 246, 3, 246, 3, 246, 3, 246, 3, 247, 3, 247, 3, 247, 3, 247, 3, 247, 3, 247, 3, 247, 3, 248, 3, 248, 3, 248, 3, 248, 3, 248, 3, 248, 3, 248, 3, 248, 3, 248, 3, 249, 3, 249, 3, 249, 3, 249, 3, 249, 3, 249, 3, 250, 3, 250, 3, 250, 3, 250, 3, 250, 3, 251, 3, 251, 3, 251, 3, 251, 3, 251, 3, 251, 3, 251, 3, 251, 3, 251, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 253, 3, 253, 3, 253, 3, 253, 3, 253, 3, 253, 3, 253, 3, 253, 3, 253, 3, 253, 3, 254, 3, 254, 3, 254, 3, 254, 3, 254, 3, 254, 3, 254, 3, 254, 3, 254, 3, 254, 3, 255, 3, 255, 3, 255, 3, 255, 3, 255, 3, 255, 3, 255, 3, 255, 3, 256, 3, 256, 3, 256, 3, 256, 3, 256, 3, 256, 3, 257, 3, 257, 3, 257, 3, 257, 3, 257, 3, 258, 3, 258, 3, 258, 3, 258, 3, 258, 3, 258, 3, 258, 3, 258, 3, 258, 3, 258, 3, 259, 3, 259, 3, 259, 3, 259, 3, 259, 3, 259, 3, 259, 3, 259, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 261, 3, 261, 3, 261, 3, 261, 3, 261, 3, 261, 3, 261, 3, 262, 3, 262, 3, 263, 3, 263, 3, 263, 3, 263, 3, 263, 3, 263, 3, 263, 3, 263, 3, 263, 3, 263, 3, 264, 3, 264, 3, 264, 3, 264, 3, 265, 3, 265, 3, 265, 3, 265, 3, 265, 3, 266, 3, 266, 3, 266, 3, 266, 3, 266, 3, 266, 3, 266, 3, 266, 3, 266, 3, 267, 3, 267, 3, 267, 3, 267, 3, 267, 3, 267, 3, 267, 3, 267, 3, 267, 3, 267, 3, 267, 3, 267, 3, 267, 3, 267, 3, 267, 3, 267, 3, 267, 3, 267, 3, 267, 3, 267, 3, 267, 3, 267, 3, 268, 3, 268, 3, 268, 3, 268, 3, 268, 3, 268, 3, 268, 3, 268, 3, 268, 3, 268, 3, 268, 3, 268, 3, 269, 3, 269, 3, 269, 3, 269, 3, 269, 3, 269, 3, 269, 3, 269, 3, 269, 3, 269, 3, 269, 3, 270, 3, 270, 3, 270, 3, 270, 3, 270, 3, 270, 3, 270, 3, 270, 3, 270, 3, 270, 3, 270, 3, 271, 3, 271, 3, 271, 3, 271, 3, 271, 3, 271, 3, 271, 3, 271, 3, 271, 3, 271, 3, 271, 3, 271, 3, 271, 3, 271, 3, 271, 3, 271, 3, 271, 3, 271, 3, 271, 3, 271, 3, 271, 3, 272, 3, 272, 3, 272, 3, 272, 3, 272, 3, 272, 3, 272, 3, 272, 3, 272, 3, 272, 3, 272, 3, 272, 3, 272, 3, 272, 3, 272, 3, 272, 3, 272, 3, 272, 3, 272, 3, 272, 3, 272, 3, 272, 3, 272, 3, 272, 3, 272, 3, 272, 3, 272, 3, 273, 3, 273, 3, 273, 3, 273, 3, 273, 3, 273, 3, 273, 3, 273, 3, 273, 3, 273, 3, 273, 3, 273, 3, 274, 3, 274, 3, 274, 3, 274, 3, 274, 3, 274, 3, 274, 3, 274, 3, 274, 3, 275, 3, 275, 3, 275, 3, 275, 3, 275, 3, 275, 3, 276, 3, 276, 3, 276, 3, 276, 3, 276, 3, 276, 3, 276, 3, 276, 3, 277, 3, 277, 3, 277, 3, 277, 3, 277, 3, 277, 3, 277, 3, 277, 3, 278, 3, 278, 3, 278, 3, 278, 3, 278, 3, 278, 3, 278, 3, 278, 3, 278, 3, 279, 3, 279, 3, 279, 3, 279, 3, 279, 3, 279, 3, 279, 3, 280, 3, 280, 3, 280, 3, 280, 3, 280, 3, 280, 3, 280, 3, 280, 3, 280, 3, 280, 3, 280, 3, 281, 3, 281, 3, 281, 3, 281, 3, 281, 3, 281, 3, 281, 3, 282, 3, 282, 3, 282, 3, 282, 3, 282, 3, 282, 3, 282, 3, 282, 3, 283, 3, 283, 3, 283, 3, 283, 3, 283, 3, 283, 3, 283, 3, 284, 3, 284, 3, 284, 3, 284, 3, 284, 3, 284, 3, 284, 3, 285, 3, 285, 3, 285, 3, 285, 3, 285, 3, 285, 3, 285, 3, 286, 3, 286, 3, 286, 3, 286, 3, 286, 3, 286, 3, 287, 3, 287, 3, 287, 3, 287, 3, 287, 3, 287, 3, 287, 3, 287, 3, 287, 3, 288, 3, 288, 3, 288, 3, 288, 3, 288, 3, 289, 3, 289, 3, 289, 3, 289, 3, 289, 3, 289, 3, 289, 3, 289, 3, 289, 3, 290, 3, 290, 3, 290, 3, 290, 3, 290, 3, 290, 3, 290, 3, 290, 3, 290, 3, 290, 3, 290, 3, 291, 3, 291, 3, 291, 3, 291, 3, 291, 3, 291, 3, 291, 3, 291, 3, 292, 3, 292, 3, 292, 3, 292, 3, 292, 3, 292, 3, 292, 3, 292, 3, 292, 3, 293, 3, 293, 3, 293, 3, 293, 3, 293, 3, 293, 3, 293, 3, 293, 3, 293, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 295, 3, 295, 3, 295, 3, 295, 3, 295, 3, 295, 3, 295, 3, 295, 3, 295, 3, 296, 3, 296, 3, 296, 3, 296, 3, 296, 3, 296, 3, 296, 3, 297, 3, 297, 3, 297, 3, 297, 3, 297, 3, 298, 3, 298, 3, 298, 3, 298, 3, 298, 3, 299, 3, 299, 3, 299, 3, 299, 3, 299, 3, 300, 3, 300, 3, 300, 3, 300, 3, 300, 3, 300, 3, 300, 3, 300, 3, 300, 3, 300, 3, 301, 3, 301, 3, 301, 3, 301, 3, 301, 3, 301, 3, 301, 3, 302, 3, 302, 3, 302, 3, 302, 3, 302, 3, 302, 3, 302, 3, 303, 3, 303, 3, 303, 3, 303, 3, 303, 3, 303, 3, 303, 3, 303, 3, 303, 3, 303, 3, 303, 3, 303, 3, 303, 3, 303, 3, 304, 3, 304, 3, 304, 3, 304, 3, 304, 3, 304, 3, 304, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 306, 3, 306, 3, 306, 3, 306, 3, 306, 3, 306, 3, 306, 3, 306, 3, 306, 3, 306, 3, 306, 3, 306, 3, 306, 3, 306, 3, 306, 3, 306, 3, 306, 3, 306, 3, 306, 3, 306, 3, 306, 3, 306, 3, 306, 3, 306, 3, 306, 3, 306, 3, 306, 3, 306, 3, 306, 3, 306, 3, 306, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 3, 309, 3, 309, 3, 309, 3, 309, 3, 309, 3, 309, 3, 309, 3, 309, 3, 310, 3, 310, 3, 310, 3, 310, 3, 310, 3, 310, 3, 310, 3, 310, 3, 310, 3, 310, 3, 310, 3, 310, 3, 310, 3, 310, 3, 310, 3, 311, 3, 311, 3, 311, 3, 311, 3, 311, 3, 311, 3, 311, 3, 311, 3, 311, 3, 311, 3, 311, 3, 311, 3, 311, 3, 312, 3, 312, 3, 312, 3, 312, 3, 312, 3, 312, 3, 312, 3, 312, 3, 313, 3, 313, 3, 313, 3, 313, 3, 313, 3, 313, 3, 313, 3, 313, 3, 313, 3, 313, 3, 313, 3, 313, 3, 313, 3, 314, 3, 314, 3, 314, 3, 314, 3, 315, 3, 315, 3, 315, 3, 315, 3, 315, 3, 315, 3, 315, 3, 315, 3, 316, 3, 316, 3, 316, 3, 316, 3, 316, 3, 316, 3, 316, 3, 316, 3, 316, 3, 317, 3, 317, 3, 317, 3, 317, 3, 318, 3, 318, 3, 318, 3, 318, 3, 318, 3, 319, 3, 319, 3, 319, 3, 319, 3, 319, 3, 319, 3, 319, 3, 319, 3, 319, 3, 320, 3, 320, 3, 320, 3, 320, 3, 320, 3, 321, 3, 321, 3, 321, 3, 321, 3, 321, 3, 321, 3, 321, 3, 322, 3, 322, 3, 322, 3, 322, 3, 322, 3, 322, 3, 322, 3, 322, 3, 322, 3, 322, 3, 322, 3, 322, 3, 322, 3, 322, 3, 323, 3, 323, 3, 323, 3, 323, 3, 323, 3, 323, 3, 324, 3, 324, 3, 324, 3, 324, 3, 324, 3, 324, 3, 324, 3, 324, 3, 324, 3, 324, 3, 324, 3, 324, 3, 324, 3, 324, 3, 324, 3, 325, 3, 325, 3, 325, 3, 325, 3, 325, 3, 325, 3, 325, 3, 325, 3, 325, 3, 325, 3, 325, 3, 325, 3, 325, 3, 325, 3, 326, 3, 326, 3, 326, 3, 326, 3, 326, 3, 326, 3, 326, 3, 326, 3, 326, 3, 326, 3, 326, 3, 326, 3, 326, 3, 326, 3, 326, 3, 326, 3, 326, 3, 326, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 328, 3, 328, 3, 328, 3, 328, 3, 328, 3, 328, 3, 329, 3, 329, 3, 329, 3, 329, 3, 329, 3, 329, 3, 330, 3, 330, 3, 330, 3, 330, 3, 330, 3, 330, 3, 331, 3, 331, 3, 331, 3, 331, 3, 331, 3, 331, 3, 331, 3, 331, 3, 332, 3, 332, 3, 332, 3, 332, 3, 332, 3, 332, 3, 332, 3, 332, 3, 332, 3, 332, 3, 332, 3, 332, 3, 332, 3, 332, 3, 333, 3, 333, 3, 333, 3, 333, 3, 333, 3, 334, 3, 334, 3, 334, 3, 334, 3, 334, 3, 334, 3, 334, 3, 334, 3, 335, 3, 335, 3, 335, 3, 335, 3, 335, 3, 335, 3, 335, 3, 335, 3, 335, 3, 335, 3, 335, 3, 335, 3, 335, 3, 335, 3, 336, 3, 336, 3, 336, 3, 336, 3, 336, 3, 336, 3, 336, 3, 336, 3, 336, 3, 336, 3, 337, 3, 337, 3, 337, 3, 337, 3, 337, 3, 337, 3, 337, 3, 337, 3, 337, 3, 337, 3, 337, 3, 337, 3, 338, 3, 338, 3, 338, 3, 338, 3, 338, 3, 338, 3, 339, 3, 339, 3, 339, 3, 339, 3, 339, 3, 339, 3, 339, 3, 339, 3, 339, 3, 339, 3, 339, 3, 339, 3, 340, 3, 340, 3, 340, 3, 340, 3, 340, 3, 341, 3, 341, 3, 341, 3, 341, 3, 341, 3, 341, 3, 341, 3, 342, 3, 342, 3, 342, 3, 342, 3, 343, 3, 343, 3, 343, 3, 343, 3, 343, 3, 343, 3, 343, 3, 343, 3, 343, 3, 344, 3, 344, 3, 344, 3, 344, 3, 344, 3, 345, 3, 345, 3, 345, 3, 346, 3, 346, 3, 346, 3, 346, 3, 347, 3, 347, 3, 347, 3, 347, 3, 347, 3, 347, 3, 347, 3, 347, 3, 347, 3, 347, 3, 347, 3, 347, 3, 347, 3, 347, 3, 347, 3, 347, 3, 348, 3, 348, 3, 348, 3, 348, 3, 348, 3, 349, 3, 349, 3, 349, 3, 349, 3, 349, 3, 349, 3, 349, 3, 349, 3, 349, 3, 349, 3, 349, 3, 349, 3, 350, 3, 350, 3, 350, 3, 350, 3, 350, 3, 350, 3, 350, 3, 350, 3, 350, 3, 351, 3, 351, 3, 351, 3, 351, 3, 351, 3, 351, 3, 351, 3, 351, 3, 352, 3, 352, 3, 352, 3, 352, 3, 352, 3, 352, 3, 352, 3, 352, 3, 352, 3, 353, 3, 353, 3, 353, 3, 353, 3, 353, 3, 353, 3, 353, 3, 353, 3, 354, 3, 354, 3, 354, 3, 354, 3, 354, 3, 354, 3, 354, 3, 354, 3, 354, 3, 354, 3, 355, 3, 355, 3, 355, 3, 355, 3, 355, 3, 355, 3, 356, 3, 356, 3, 356, 3, 356, 3, 356, 3, 356, 3, 356, 3, 357, 3, 357, 3, 357, 3, 357, 3, 357, 3, 357, 3, 357, 3, 358, 3, 358, 3, 358, 3, 358, 3, 358, 3, 358, 3, 358, 3, 358, 3, 359, 3, 359, 3, 359, 3, 359, 3, 359, 3, 359, 3, 359, 3, 360, 3, 360, 3, 360, 3, 360, 3, 360, 3, 360, 3, 360, 3, 361, 3, 361, 3, 361, 3, 361, 3, 361, 3, 361, 3, 361, 3, 361, 3, 361, 3, 361, 3, 361, 3, 362, 3, 362, 3, 362, 3, 362, 3, 363, 3, 363, 3, 363, 3, 363, 3, 364, 3, 364, 3, 364, 3, 364, 3, 364, 3, 365, 3, 365, 3, 365, 3, 365, 3, 365, 3, 366, 3, 366, 3, 366, 3, 366, 3, 366, 3, 366, 3, 366, 3, 367, 3, 367, 3, 367, 3, 367, 3, 367, 3, 367, 3, 367, 3, 367, 3, 368, 3, 368, 3, 368, 3, 368, 3, 368, 3, 368, 3, 368, 3, 368, 3, 368, 3, 368, 3, 368, 3, 368, 3, 368, 3, 368, 3, 368, 3, 369, 3, 369, 3, 369, 3, 369, 3, 369, 3, 370, 3, 370, 3, 370, 3, 370, 3, 370, 3, 370, 3, 370, 3, 370, 3, 370, 3, 370, 3, 370, 3, 371, 3, 371, 3, 371, 3, 371, 3, 371, 3, 371, 3, 371, 3, 371, 3, 372, 3, 372, 3, 372, 3, 372, 3, 372, 3, 373, 3, 373, 3, 373, 3, 373, 3, 373, 3, 373, 3, 374, 3, 374, 3, 374, 3, 374, 3, 374, 3, 374, 3, 375, 3, 375, 3, 375, 3, 375, 3, 375, 3, 375, 3, 375, 3, 375, 3, 376, 3, 376, 3, 376, 3, 376, 3, 376, 3, 377, 3, 377, 3, 377, 3, 377, 3, 377, 3, 377, 3, 377, 3, 378, 3, 378, 3, 378, 3, 378, 3, 378, 3, 378, 3, 378, 3, 378, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 380, 3, 380, 3, 380, 3, 380, 3, 380, 3, 380, 3, 380, 3, 380, 3, 380, 3, 380, 3, 381, 3, 381, 3, 381, 3, 381, 3, 381, 3, 381, 3, 381, 3, 381, 3, 381, 3, 382, 3, 382, 3, 382, 3, 382, 3, 382, 3, 382, 3, 382, 3, 382, 3, 382, 3, 382, 3, 382, 3, 382, 3, 382, 3, 382, 3, 382, 3, 382, 3, 382, 3, 382, 3, 382, 3, 383, 3, 383, 3, 383, 3, 383, 3, 383, 3, 383, 3, 383, 3, 384, 3, 384, 3, 384, 3, 384, 3, 384, 3, 384, 3, 384, 3, 384, 3, 384, 3, 384, 3, 384, 3, 385, 3, 385, 3, 385, 3, 385, 3, 385, 3, 385, 3, 385, 3, 386, 3, 386, 3, 386, 3, 386, 3, 386, 3, 386, 3, 386, 3, 386, 3, 387, 3, 387, 3, 387, 3, 387, 3, 387, 3, 387, 3, 387, 3, 387, 3, 388, 3, 388, 3, 388, 3, 388, 3, 388, 3, 388, 3, 388, 3, 388, 3, 389, 3, 389, 3, 389, 3, 389, 3, 389, 3, 389, 3, 389, 3, 389, 3, 390, 3, 390, 3, 390, 3, 390, 3, 390, 3, 390, 3, 390, 3, 390, 3, 390, 3, 391, 3, 391, 3, 391, 3, 391, 3, 391, 3, 391, 3, 392, 3, 392, 3, 392, 3, 392, 3, 392, 3, 392, 3, 392, 3, 392, 3, 392, 3, 392, 3, 393, 3, 393, 3, 393, 3, 393, 3, 393, 3, 393, 3, 393, 3, 393, 3, 393, 3, 393, 3, 394, 3, 394, 3, 394, 3, 394, 3, 394, 3, 394, 3, 394, 3, 394, 3, 394, 3, 394, 3, 394, 3, 394, 3, 394, 3, 394, 3, 394, 3, 394, 3, 394, 3, 394, 3, 394, 3, 394, 3, 394, 3, 394, 3, 394, 3, 394, 3, 394, 3, 394, 3, 394, 3, 394, 3, 394, 3, 394, 3, 394, 3, 394, 3, 394, 3, 394, 3, 394, 3, 394, 3, 395, 3, 395, 3, 395, 3, 395, 3, 395, 3, 395, 3, 395, 3, 395, 3, 395, 3, 395, 3, 395, 3, 395, 3, 395, 3, 395, 3, 395, 3, 395, 3, 395, 3, 395, 3, 395, 3, 395, 3, 395, 3, 395, 3, 395, 3, 395, 3, 395, 3, 396, 3, 396, 3, 396, 3, 396, 3, 396, 3, 396, 3, 396, 3, 396, 3, 397, 3, 397, 3, 397, 3, 397, 3, 397, 3, 397, 3, 397, 3, 397, 3, 397, 3, 397, 3, 397, 3, 397, 3, 397, 3, 397, 3, 397, 3, 397, 3, 397, 3, 397, 3, 398, 3, 398, 3, 398, 3, 398, 3, 398, 3, 398, 3, 398, 3, 398, 3, 398, 3, 398, 3, 398, 3, 399, 3, 399, 3, 399, 3, 399, 3, 399, 3, 399, 3, 399, 3, 399, 3, 399, 3, 399, 3, 399, 3, 399, 3, 399, 3, 400, 3, 400, 3, 400, 3, 400, 3, 400, 3, 400, 3, 400, 3, 400, 3, 400, 3, 400, 3, 400, 3, 400, 3, 400, 3, 400, 3, 401, 3, 401, 3, 401, 3, 401, 3, 401, 3, 401, 3, 401, 3, 401, 3, 401, 3, 401, 3, 401, 3, 401, 3, 401, 3, 401, 3, 401, 3, 401, 3, 402, 3, 402, 3, 402, 3, 402, 3, 402, 3, 402, 3, 403, 3, 403, 3, 403, 3, 403, 3, 403, 3, 403, 3, 403, 3, 403, 3, 403, 3, 403, 3, 403, 3, 404, 3, 404, 3, 404, 3, 404, 3, 404, 3, 404, 3, 404, 3, 404, 3, 404, 3, 405, 3, 405, 3, 405, 3, 405, 3, 405, 3, 405, 3, 406, 3, 406, 3, 406, 3, 406, 3, 406, 3, 406, 3, 406, 3, 406, 3, 406, 3, 406, 3, 406, 3, 407, 3, 407, 3, 407, 3, 407, 3, 407, 3, 408, 3, 408, 3, 408, 3, 408, 3, 408, 3, 408, 3, 408, 3, 408, 3, 408, 3, 408, 3, 408, 3, 408, 3, 408, 3, 409, 3, 409, 3, 409, 3, 409, 3, 409, 3, 409, 3, 409, 3, 409, 3, 409, 3, 409, 3, 409, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 411, 3, 411, 3, 411, 3, 411, 3, 411, 3, 411, 3, 411, 3, 411, 3, 411, 3, 411, 3, 411, 3, 411, 3, 412, 3, 412, 3, 412, 3, 412, 3, 412, 3, 412, 3, 412, 3, 412, 3, 412, 3, 412, 3, 412, 3, 412, 3, 412, 3, 412, 3, 412, 3, 412, 3, 412, 3, 412, 3, 412, 3, 412, 3, 412, 3, 412, 3, 412, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 415, 3, 415, 3, 415, 3, 415, 3, 416, 3, 416, 3, 416, 3, 416, 3, 416, 3, 416, 3, 416, 3, 416, 3, 416, 3, 416, 3, 416, 3, 416, 3, 416, 3, 416, 3, 416, 3, 416, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 418, 3, 418, 3, 418, 3, 418, 3, 418, 3, 418, 3, 418, 3, 419, 3, 419, 3, 419, 3, 419, 3, 419, 3, 419, 3, 419, 3, 419, 3, 419, 3, 419, 3, 419, 3, 419, 3, 419, 3, 419, 3, 420, 3, 420, 3, 420, 3, 420, 3, 420, 3, 420, 3, 420, 3, 420, 3, 420, 3, 420, 3, 420, 3, 420, 3, 420, 3, 420, 3, 420, 3, 420, 3, 421, 3, 421, 3, 421, 3, 421, 3, 421, 3, 421, 3, 421, 3, 421, 3, 422, 3, 422, 3, 422, 3, 422, 3, 422, 3, 422, 3, 422, 3, 422, 3, 422, 3, 422, 3, 422, 3, 422, 3, 422, 3, 423, 3, 423, 3, 423, 3, 423, 3, 423, 3, 423, 3, 423, 3, 424, 3, 424, 3, 424, 3, 424, 3, 424, 3, 424, 3, 424, 3, 424, 3, 424, 3, 424, 3, 424, 3, 424, 3, 424, 3, 424, 3, 424, 3, 424, 3, 425, 3, 425, 3, 425, 3, 425, 3, 425, 3, 425, 3, 425, 3, 425, 3, 425, 3, 425, 3, 425, 3, 425, 3, 426, 3, 426, 3, 426, 3, 426, 3, 426, 3, 426, 3, 426, 3, 427, 3, 427, 3, 427, 3, 427, 3, 427, 3, 427, 3, 427, 3, 427, 3, 427, 3, 427, 3, 427, 3, 427, 3, 427, 3, 427, 3, 427, 3, 427, 3, 428, 3, 428, 3, 428, 3, 428, 5, 428, 5922, 10, 428, 3, 428, 3, 428, 3, 428, 3, 428, 3, 428, 3, 429, 3, 429, 3, 429, 3, 429, 3, 429, 3, 429, 3, 429, 3, 429, 3, 430, 3, 430, 3, 430, 3, 430, 3, 430, 3, 430, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 432, 3, 432, 3, 432, 3, 432, 3, 432, 3, 432, 3, 432, 3, 432, 3, 432, 3, 432, 3, 432, 3, 432, 3, 432, 3, 432, 3, 432, 3, 432, 3, 433, 3, 433, 3, 433, 3, 433, 3, 433, 3, 433, 3, 433, 3, 433, 3, 433, 3, 434, 3, 434, 3, 434, 3, 434, 3, 434, 3, 434, 3, 434, 3, 434, 3, 434, 3, 434, 3, 434, 3, 434, 3, 434, 3, 435, 3, 435, 3, 435, 3, 435, 3, 435, 3, 435, 3, 435, 3, 435, 3, 436, 3, 436, 3, 436, 3, 436, 3, 436, 3, 436, 3, 436, 3, 436, 3, 436, 3, 436, 3, 436, 3, 437, 3, 437, 3, 437, 3, 437, 3, 437, 3, 437, 3, 437, 3, 437, 3, 437, 3, 437, 3, 437, 3, 437, 3, 437, 3, 437, 3, 437, 3, 437, 3, 437, 3, 437, 3, 438, 3, 438, 3, 438, 3, 438, 3, 438, 3, 438, 3, 438, 3, 438, 3, 438, 3, 438, 3, 439, 3, 439, 3, 439, 3, 439, 3, 439, 3, 439, 3, 439, 3, 439, 3, 439, 3, 439, 3, 439, 3, 439, 3, 439, 3, 439, 3, 439, 3, 439, 3, 439, 3, 439, 3, 439, 3, 439, 3, 440, 3, 440, 3, 440, 3, 440, 3, 440, 3, 440, 3, 440, 3, 441, 3, 441, 3, 441, 3, 441, 3, 441, 3, 441, 3, 441, 3, 441, 3, 441, 3, 441, 3, 441, 3, 441, 3, 441, 3, 441, 3, 441, 3, 441, 3, 441, 3, 441, 3, 441, 3, 441, 3, 441, 3, 441, 3, 441, 3, 441, 3, 442, 3, 442, 3, 442, 3, 442, 3, 442, 3, 442, 3, 442, 3, 442, 3, 443, 3, 443, 3, 443, 3, 443, 3, 443, 3, 443, 3, 443, 3, 443, 3, 444, 3, 444, 3, 444, 3, 444, 3, 444, 3, 444, 3, 444, 3, 445, 3, 445, 3, 445, 3, 445, 3, 445, 3, 445, 3, 446, 3, 446, 3, 446, 3, 446, 3, 446, 3, 446, 3, 446, 3, 446, 3, 446, 3, 446, 3, 447, 3, 447, 3, 447, 3, 447, 3, 447, 3, 447, 3, 447, 3, 447, 3, 448, 3, 448, 3, 448, 3, 448, 3, 449, 3, 449, 3, 449, 3, 449, 3, 449, 3, 449, 3, 449, 3, 449, 3, 449, 3, 449, 3, 449, 3, 450, 3, 450, 3, 450, 3, 450, 3, 450, 3, 450, 3, 450, 3, 450, 3, 450, 3, 450, 3, 450, 3, 450, 3, 450, 3, 450, 3, 450, 3, 450, 3, 450, 3, 450, 3, 450, 3, 450, 3, 450, 3, 451, 3, 451, 3, 451, 3, 451, 3, 451, 3, 451, 3, 451, 3, 451, 3, 451, 3, 451, 3, 451, 3, 452, 3, 452, 3, 452, 3, 452, 3, 452, 3, 452, 3, 452, 3, 452, 3, 452, 3, 452, 3, 452, 3, 452, 3, 452, 3, 452, 3, 453, 3, 453, 3, 453, 3, 453, 3, 453, 3, 453, 3, 453, 3, 453, 3, 453, 3, 453, 3, 453, 3, 453, 3, 453, 3, 453, 3, 453, 3, 453, 3, 453, 3, 453, 3, 453, 3, 453, 3, 453, 3, 453, 3, 453, 3, 454, 3, 454, 3, 454, 3, 454, 3, 454, 3, 454, 3, 454, 3, 454, 3, 454, 3, 454, 3, 454, 3, 454, 3, 454, 3, 454, 3, 454, 3, 455, 3, 455, 3, 455, 3, 455, 3, 455, 3, 456, 3, 456, 3, 456, 3, 456, 3, 456, 3, 456, 3, 456, 3, 456, 3, 456, 3, 456, 3, 456, 3, 456, 3, 456, 3, 456, 3, 456, 3, 456, 3, 456, 3, 456, 3, 456, 3, 456, 3, 456, 3, 456, 3, 456, 3, 456, 3, 456, 3, 456, 3, 456, 3, 456, 3, 456, 3, 456, 3, 457, 3, 457, 3, 457, 3, 457, 3, 457, 3, 457, 3, 457, 3, 457, 3, 458, 3, 458, 3, 458, 3, 458, 3, 458, 3, 458, 3, 458, 3, 458, 3, 458, 3, 459, 3, 459, 3, 459, 3, 459, 3, 459, 3, 459, 3, 459, 3, 459, 3, 459, 3, 460, 3, 460, 3, 460, 3, 460, 3, 460, 3, 460, 3, 460, 3, 460, 3, 460, 3, 461, 3, 461, 3, 461, 3, 461, 3, 461, 3, 462, 3, 462, 3, 462, 3, 462, 3, 462, 3, 462, 3, 462, 3, 462, 3, 462, 3, 462, 3, 462, 3, 462, 3, 463, 3, 463, 3, 463, 3, 463, 3, 463, 3, 463, 3, 463, 3, 463, 3, 463, 3, 463, 3, 463, 3, 463, 3, 464, 3, 464, 3, 464, 3, 464, 3, 464, 3, 464, 3, 464, 3, 464, 3, 464, 3, 464, 3, 464, 3, 465, 3, 465, 3, 465, 3, 465, 3, 465, 3, 465, 3, 465, 3, 465, 3, 465, 3, 465, 3, 465, 3, 466, 3, 466, 3, 466, 3, 466, 3, 466, 3, 466, 3, 466, 3, 466, 3, 466, 3, 466, 3, 466, 3, 466, 3, 466, 3, 466, 3, 466, 3, 466, 3, 466, 3, 466, 3, 466, 3, 466, 3, 466, 3, 466, 3, 466, 3, 466, 3, 466, 3, 466, 3, 467, 3, 467, 3, 467, 3, 467, 3, 467, 3, 467, 3, 467, 3, 467, 3, 467, 3, 467, 3, 467, 3, 467, 3, 467, 3, 467, 3, 467, 3, 467, 3, 467, 3, 468, 3, 468, 3, 468, 3, 468, 3, 468, 3, 468, 3, 469, 3, 469, 3, 469, 3, 469, 3, 469, 3, 469, 3, 469, 3, 469, 3, 469, 3, 469, 3, 469, 3, 469, 3, 469, 3, 469, 3, 469, 3, 469, 3, 469, 3, 469, 3, 469, 3, 470, 3, 470, 3, 470, 3, 470, 3, 470, 3, 470, 3, 470, 3, 470, 3, 471, 3, 471, 3, 471, 3, 471, 3, 471, 3, 471, 3, 471, 3, 471, 3, 471, 3, 471, 3, 471, 3, 472, 3, 472, 3, 472, 3, 472, 3, 472, 3, 472, 3, 472, 3, 472, 3, 472, 3, 472, 3, 472, 3, 473, 3, 473, 3, 473, 3, 473, 3, 474, 3, 474, 3, 474, 3, 474, 3, 474, 3, 474, 3, 474, 3, 474, 3, 474, 3, 474, 3, 474, 3, 474, 3, 475, 3, 475, 3, 475, 3, 475, 3, 475, 3, 476, 3, 476, 3, 476, 3, 476, 3, 476, 3, 477, 3, 477, 3, 477, 3, 477, 3, 477, 3, 477, 3, 477, 3, 478, 3, 478, 3, 478, 3, 478, 3, 478, 3, 478, 3, 478, 3, 478, 3, 478, 3, 478, 3, 478, 3, 478, 3, 478, 3, 478, 3, 478, 3, 479, 3, 479, 3, 479, 3, 479, 3, 479, 3, 479, 3, 479, 3, 479, 3, 480, 3, 480, 3, 480, 3, 480, 3, 480, 3, 480, 3, 480, 3, 480, 3, 480, 3, 480, 3, 480, 3, 480, 3, 480, 3, 480, 3, 480, 3, 481, 3, 481, 3, 481, 3, 481, 3, 481, 3, 481, 3, 481, 3, 481, 3, 481, 3, 482, 3, 482, 3, 482, 3, 483, 3, 483, 3, 483, 3, 483, 3, 483, 3, 483, 3, 483, 3, 483, 3, 483, 3, 484, 3, 484, 3, 484, 3, 484, 3, 484, 3, 484, 3, 484, 3, 484, 3, 485, 3, 485, 3, 485, 3, 485, 3, 485, 3, 485, 3, 485, 3, 485, 3, 485, 3, 486, 3, 486, 3, 486, 3, 486, 3, 486, 3, 486, 3, 486, 3, 486, 3, 486, 3, 486, 3, 487, 3, 487, 3, 487, 3, 487, 3, 487, 3, 487, 3, 488, 3, 488, 3, 488, 3, 488, 3, 488, 3, 488, 3, 488, 3, 489, 3, 489, 3, 489, 3, 489, 3, 489, 3, 489, 3, 489, 3, 489, 3, 489, 3, 489, 3, 489, 3, 489, 3, 489, 3, 489, 3, 490, 3, 490, 3, 490, 3, 490, 3, 490, 3, 490, 3, 490, 3, 490, 3, 490, 3, 490, 3, 490, 3, 490, 3, 490, 3, 490, 3, 490, 3, 490, 3, 491, 3, 491, 3, 491, 3, 491, 3, 491, 3, 491, 3, 491, 3, 491, 3, 491, 3, 491, 3, 491, 3, 492, 3, 492, 3, 492, 3, 492, 3, 492, 3, 492, 3, 492, 3, 492, 3, 492, 3, 492, 3, 492, 3, 492, 3, 492, 3, 493, 3, 493, 3, 493, 3, 493, 3, 493, 3, 493, 3, 493, 3, 493, 3, 493, 3, 493, 3, 493, 3, 493, 3, 493, 3, 493, 3, 493, 3, 493, 3, 493, 3, 493, 3, 493, 3, 493, 3, 493, 3, 493, 3, 493, 3, 493, 3, 493, 3, 493, 3, 493, 3, 494, 3, 494, 3, 494, 3, 494, 3, 494, 3, 494, 3, 494, 3, 494, 3, 494, 3, 494, 3, 495, 3, 495, 3, 495, 3, 495, 3, 495, 3, 495, 3, 495, 3, 495, 3, 495, 3, 495, 3, 495, 3, 496, 3, 496, 3, 496, 3, 496, 3, 496, 3, 496, 3, 497, 3, 497, 3, 497, 3, 497, 3, 497, 3, 497, 3, 497, 3, 498, 3, 498, 3, 498, 3, 498, 3, 498, 3, 498, 3, 498, 3, 498, 3, 498, 3, 498, 3, 498, 3, 498, 3, 499, 3, 499, 3, 499, 3, 499, 3, 499, 3, 499, 3, 499, 3, 499, 3, 499, 3, 500, 3, 500, 3, 500, 3, 500, 3, 500, 3, 500, 3, 500, 3, 500, 3, 500, 3, 500, 3, 500, 3, 500, 3, 500, 3, 500, 3, 500, 3, 501, 3, 501, 3, 501, 3, 501, 3, 501, 3, 501, 3, 501, 3, 501, 3, 501, 3, 501, 3, 501, 3, 501, 3, 501, 3, 501, 3, 502, 3, 502, 3, 502, 3, 502, 3, 502, 3, 502, 3, 502, 3, 502, 3, 503, 3, 503, 3, 503, 3, 503, 3, 503, 3, 503, 3, 503, 3, 503, 3, 503, 3, 503, 3, 503, 3, 503, 3, 503, 3, 503, 3, 503, 3, 503, 3, 503, 3, 503, 3, 503, 3, 503, 3, 503, 3, 503, 3, 503, 3, 503, 3, 504, 3, 504, 3, 504, 3, 504, 3, 504, 3, 505, 3, 505, 3, 505, 3, 505, 3, 505, 3, 505, 3, 505, 3, 505, 3, 505, 3, 505, 3, 505, 3, 505, 3, 505, 3, 506, 3, 506, 3, 506, 3, 506, 3, 506, 3, 506, 3, 506, 3, 506, 3, 506, 3, 506, 3, 507, 3, 507, 3, 507, 3, 507, 3, 507, 3, 507, 3, 507, 3, 507, 3, 507, 3, 507, 3, 507, 3, 508, 3, 508, 3, 508, 3, 508, 3, 508, 3, 508, 3, 508, 3, 508, 3, 508, 3, 509, 3, 509, 3, 509, 3, 509, 3, 509, 3, 509, 3, 509, 3, 509, 3, 509, 3, 509, 3, 509, 3, 510, 3, 510, 3, 510, 3, 510, 3, 510, 3, 510, 3, 510, 3, 511, 3, 511, 3, 511, 3, 511, 3, 511, 3, 511, 3, 512, 3, 512, 3, 512, 3, 512, 3, 512, 3, 512, 3, 512, 3, 512, 3, 512, 3, 512, 3, 512, 3, 512, 3, 513, 3, 513, 3, 513, 3, 513, 3, 513, 3, 513, 3, 513, 3, 513, 3, 513, 3, 513, 3, 514, 3, 514, 3, 514, 3, 514, 3, 514, 3, 514, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 516, 3, 516, 3, 516, 3, 516, 3, 516, 3, 516, 3, 516, 3, 517, 3, 517, 3, 517, 3, 517, 3, 517, 3, 517, 3, 517, 3, 518, 3, 518, 3, 518, 3, 518, 3, 518, 3, 518, 3, 518, 3, 518, 3, 518, 3, 518, 3, 518, 3, 518, 3, 518, 3, 519, 3, 519, 3, 519, 3, 519, 3, 519, 3, 519, 3, 519, 3, 519, 3, 519, 3, 520, 3, 520, 3, 520, 3, 520, 3, 520, 3, 520, 3, 520, 3, 520, 3, 520, 3, 521, 3, 521, 3, 521, 3, 522, 3, 522, 3, 522, 3, 522, 3, 522, 3, 522, 3, 522, 3, 522, 3, 523, 3, 523, 3, 523, 3, 523, 3, 523, 3, 523, 3, 523, 3, 523, 3, 523, 3, 523, 3, 523, 3, 524, 3, 524, 3, 524, 3, 524, 3, 524, 3, 524, 3, 524, 3, 525, 3, 525, 3, 525, 3, 526, 3, 526, 3, 526, 3, 526, 3, 526, 3, 526, 3, 526, 3, 526, 3, 526, 3, 526, 3, 526, 3, 526, 3, 526, 3, 526, 3, 526, 3, 526, 3, 526, 3, 526, 3, 526, 3, 527, 3, 527, 3, 527, 3, 527, 3, 527, 3, 527, 3, 527, 3, 527, 3, 527, 3, 528, 3, 528, 3, 528, 3, 528, 3, 528, 3, 528, 3, 528, 3, 528, 3, 528, 3, 528, 3, 528, 3, 528, 3, 529, 3, 529, 3, 529, 3, 529, 3, 529, 3, 530, 3, 530, 3, 530, 3, 530, 3, 530, 3, 531, 3, 531, 3, 531, 3, 531, 3, 531, 3, 531, 3, 531, 3, 531, 3, 531, 3, 531, 3, 531, 3, 531, 3, 531, 3, 531, 3, 531, 3, 531, 3, 531, 3, 531, 3, 531, 3, 531, 3, 531, 3, 532, 3, 532, 3, 532, 3, 532, 3, 532, 3, 533, 3, 533, 3, 533, 3, 533, 3, 533, 3, 533, 3, 533, 3, 533, 3, 533, 3, 533, 3, 533, 3, 533, 3, 533, 3, 533, 3, 533, 3, 533, 3, 533, 3, 533, 3, 533, 3, 533, 3, 533, 3, 533, 3, 534, 3, 534, 3, 534, 3, 534, 3, 534, 3, 534, 3, 535, 3, 535, 3, 535, 3, 535, 3, 535, 3, 535, 3, 535, 3, 535, 3, 535, 3, 535, 3, 535, 3, 535, 3, 535, 3, 535, 3, 535, 3, 536, 3, 536, 3, 536, 3, 536, 3, 536, 3, 536, 3, 536, 3, 536, 3, 536, 3, 536, 3, 536, 3, 536, 3, 536, 3, 536, 3, 536, 3, 536, 3, 536, 3, 536, 3, 536, 3, 536, 3, 536, 3, 536, 3, 536, 3, 536, 3, 536, 3, 536, 3, 536, 3, 536, 3, 536, 3, 536, 3, 536, 3, 536, 3, 536, 3, 536, 3, 536, 3, 536, 3, 536, 3, 536, 3, 537, 3, 537, 3, 537, 3, 537, 3, 537, 3, 537, 3, 537, 3, 537, 3, 537, 3, 537, 3, 538, 3, 538, 3, 538, 3, 538, 3, 538, 3, 538, 3, 538, 3, 538, 3, 538, 3, 538, 3, 538, 3, 538, 3, 539, 3, 539, 3, 539, 3, 539, 3, 539, 3, 539, 3, 539, 3, 539, 3, 539, 3, 539, 3, 539, 3, 540, 3, 540, 3, 540, 3, 540, 3, 540, 3, 540, 3, 540, 3, 540, 3, 540, 3, 540, 3, 540, 3, 540, 3, 540, 3, 540, 3, 540, 3, 540, 3, 540, 3, 540, 3, 540, 3, 540, 3, 541, 3, 541, 3, 541, 3, 541, 3, 541, 3, 541, 3, 541, 3, 541, 3, 541, 3, 541, 3, 541, 3, 541, 3, 542, 3, 542, 3, 542, 3, 542, 3, 542, 3, 542, 3, 542, 3, 542, 3, 542, 3, 542, 3, 543, 3, 543, 3, 543, 3, 543, 3, 543, 3, 543, 3, 544, 3, 544, 3, 544, 3, 544, 3, 544, 3, 544, 3, 544, 3, 544, 3, 544, 3, 544, 3, 544, 3, 544, 3, 545, 3, 545, 3, 545, 3, 545, 3, 545, 3, 545, 3, 545, 3, 545, 3, 545, 3, 546, 3, 546, 3, 546, 3, 546, 3, 547, 3, 547, 3, 547, 3, 548, 3, 548, 3, 548, 3, 548, 3, 548, 3, 548, 3, 548, 3, 548, 3, 548, 3, 548, 3, 549, 3, 549, 3, 549, 3, 549, 3, 550, 3, 550, 3, 550, 3, 550, 3, 550, 3, 551, 3, 551, 3, 551, 3, 552, 3, 552, 3, 552, 3, 552, 3, 552, 3, 553, 3, 553, 3, 553, 3, 553, 3, 553, 3, 553, 3, 553, 3, 553, 3, 553, 3, 553, 3, 554, 3, 554, 3, 554, 3, 554, 3, 554, 3, 554, 3, 554, 3, 554, 3, 554, 3, 554, 3, 554, 3, 555, 3, 555, 3, 555, 3, 555, 3, 555, 3, 556, 3, 556, 3, 556, 3, 556, 3, 556, 3, 556, 3, 556, 3, 557, 3, 557, 3, 557, 3, 557, 3, 558, 3, 558, 3, 558, 3, 558, 3, 558, 3, 559, 3, 559, 3, 559, 3, 559, 3, 559, 3, 559, 3, 559, 3, 559, 3, 559, 3, 559, 3, 559, 3, 560, 3, 560, 3, 560, 3, 560, 3, 560, 3, 561, 3, 561, 3, 561, 3, 561, 3, 561, 3, 561, 3, 562, 3, 562, 3, 562, 3, 562, 3, 562, 3, 563, 3, 563, 3, 563, 3, 563, 3, 563, 3, 563, 3, 563, 3, 563, 3, 563, 3, 564, 3, 564, 3, 564, 3, 564, 3, 564, 3, 564, 3, 564, 3, 564, 3, 564, 3, 564, 3, 564, 3, 564, 3, 564, 3, 565, 3, 565, 3, 565, 3, 565, 3, 565, 3, 565, 3, 565, 3, 565, 3, 565, 3, 565, 3, 565, 3, 565, 3, 565, 3, 565, 3, 565, 3, 566, 3, 566, 3, 566, 3, 566, 3, 566, 3, 566, 3, 567, 3, 567, 3, 567, 3, 567, 3, 567, 3, 567, 3, 567, 3, 567, 3, 567, 3, 568, 3, 568, 3, 568, 3, 568, 3, 568, 3, 569, 3, 569, 3, 569, 3, 569, 3, 569, 3, 569, 3, 569, 3, 569, 3, 569, 3, 569, 3, 569, 3, 569, 3, 569, 3, 569, 3, 569, 3, 569, 3, 570, 3, 570, 3, 570, 3, 570, 3, 570, 3, 570, 3, 571, 3, 571, 3, 571, 3, 571, 3, 571, 3, 572, 3, 572, 3, 572, 3, 572, 3, 573, 3, 573, 3, 573, 3, 573, 3, 573, 3, 573, 3, 573, 3, 574, 3, 574, 3, 574, 3, 574, 3, 574, 3, 575, 3, 575, 3, 575, 3, 575, 3, 575, 3, 575, 3, 575, 3, 575, 3, 575, 3, 575, 3, 575, 3, 575, 3, 575, 3, 576, 3, 576, 3, 576, 3, 576, 3, 577, 3, 577, 3, 577, 3, 577, 3, 577, 3, 577, 3, 577, 3, 577, 3, 577, 3, 577, 3, 577, 3, 577, 3, 577, 3, 577, 3, 577, 3, 577, 3, 578, 3, 578, 3, 578, 3, 578, 3, 578, 3, 578, 3, 578, 3, 578, 3, 579, 3, 579, 3, 579, 3, 579, 3, 579, 3, 579, 3, 579, 3, 579, 3, 579, 3, 579, 3, 580, 3, 580, 3, 580, 3, 580, 3, 580, 3, 580, 3, 580, 3, 580, 3, 580, 3, 580, 3, 580, 3, 580, 3, 580, 3, 580, 3, 580, 3, 580, 3, 580, 3, 580, 3, 580, 3, 580, 3, 581, 3, 581, 3, 581, 3, 581, 3, 581, 3, 581, 3, 581, 3, 581, 3, 581, 3, 581, 3, 581, 3, 581, 3, 581, 3, 581, 3, 581, 3, 581, 3, 581, 3, 581, 3, 581, 3, 582, 3, 582, 3, 582, 3, 582, 3, 582, 3, 582, 3, 582, 3, 582, 3, 582, 3, 582, 3, 582, 3, 582, 3, 582, 3, 582, 3, 583, 3, 583, 3, 583, 3, 583, 3, 583, 3, 583, 3, 583, 3, 583, 3, 583, 3, 583, 3, 583, 3, 583, 3, 583, 3, 583, 3, 583, 3, 583, 3, 583, 3, 583, 3, 584, 3, 584, 3, 584, 3, 584, 3, 584, 3, 584, 3, 584, 3, 584, 3, 584, 3, 584, 3, 584, 3, 584, 3, 584, 3, 584, 3, 584, 3, 584, 3, 584, 3, 584, 3, 584, 3, 585, 3, 585, 3, 585, 3, 585, 3, 585, 3, 585, 3, 585, 3, 586, 3, 586, 3, 586, 3, 586, 3, 586, 3, 586, 3, 586, 3, 586, 3, 586, 3, 586, 3, 586, 3, 586, 3, 586, 3, 587, 3, 587, 3, 587, 3, 587, 3, 587, 3, 587, 3, 587, 3, 587, 3, 588, 3, 588, 3, 588, 3, 589, 3, 589, 3, 589, 3, 589, 3, 589, 3, 589, 3, 589, 3, 590, 3, 590, 3, 590, 3, 590, 3, 590, 3, 590, 3, 590, 3, 590, 3, 590, 3, 590, 3, 590, 3, 590, 3, 590, 3, 590, 3, 590, 3, 590, 3, 590, 3, 590, 3, 590, 3, 590, 3, 590, 3, 590, 3, 591, 3, 591, 3, 591, 3, 591, 3, 591, 3, 591, 3, 591, 3, 591, 3, 592, 3, 592, 3, 592, 3, 592, 3, 593, 3, 593, 3, 593, 3, 593, 3, 593, 3, 593, 3, 593, 3, 593, 3, 593, 3, 593, 3, 593, 3, 593, 3, 593, 3, 593, 3, 593, 3, 593, 3, 593, 3, 593, 3, 593, 3, 593, 3, 593, 3, 593, 3, 594, 3, 594, 3, 594, 3, 594, 3, 594, 3, 594, 3, 594, 3, 594, 3, 594, 3, 594, 3, 594, 3, 594, 3, 594, 3, 594, 3, 594, 3, 594, 3, 595, 3, 595, 3, 595, 3, 595, 3, 595, 3, 595, 3, 595, 3, 595, 3, 595, 3, 595, 3, 595, 3, 595, 3, 595, 3, 595, 3, 595, 3, 595, 3, 595, 3, 595, 3, 595, 3, 595, 3, 596, 3, 596, 3, 596, 3, 596, 3, 596, 3, 596, 3, 596, 3, 596, 3, 596, 3, 596, 3, 596, 3, 596, 3, 596, 3, 596, 3, 596, 3, 596, 3, 596, 3, 596, 3, 596, 3, 597, 3, 597, 3, 597, 3, 597, 3, 597, 3, 597, 3, 597, 3, 597, 3, 598, 3, 598, 3, 598, 3, 598, 3, 598, 3, 598, 3, 598, 3, 598, 3, 598, 3, 598, 3, 598, 3, 598, 3, 598, 3, 598, 3, 598, 3, 599, 3, 599, 3, 599, 3, 599, 3, 599, 3, 599, 3, 599, 3, 599, 3, 599, 3, 599, 3, 599, 3, 599, 3, 599, 3, 599, 3, 599, 3, 599, 3, 599, 3, 599, 3, 599, 3, 599, 3, 599, 3, 599, 3, 600, 3, 600, 3, 600, 3, 600, 3, 600, 3, 601, 3, 601, 3, 601, 3, 601, 3, 601, 3, 601, 3, 601, 3, 602, 3, 602, 3, 602, 3, 602, 3, 602, 3, 603, 3, 603, 3, 603, 3, 603, 3, 603, 3, 603, 3, 603, 3, 603, 3, 603, 3, 603, 3, 603, 3, 604, 3, 604, 3, 604, 3, 604, 3, 604, 3, 605, 3, 605, 3, 605, 3, 605, 3, 605, 3, 605, 3, 605, 3, 605, 3, 605, 3, 605, 3, 605, 3, 605, 3, 605, 3, 605, 3, 605, 3, 605, 3, 606, 3, 606, 3, 606, 3, 606, 3, 606, 3, 606, 3, 606, 3, 606, 3, 606, 3, 606, 3, 606, 3, 606, 3, 607, 3, 607, 3, 607, 3, 607, 3, 607, 3, 607, 3, 607, 3, 607, 3, 607, 3, 607, 3, 607, 3, 608, 3, 608, 3, 608, 3, 608, 3, 608, 3, 608, 3, 608, 3, 608, 3, 608, 3, 608, 3, 608, 3, 608, 3, 608, 3, 609, 3, 609, 3, 609, 3, 609, 3, 609, 3, 610, 3, 610, 3, 610, 3, 611, 3, 611, 3, 611, 3, 611, 3, 611, 3, 611, 3, 611, 3, 611, 3, 611, 3, 611, 3, 611, 3, 611, 3, 612, 3, 612, 3, 612, 3, 612, 3, 612, 3, 612, 3, 612, 3, 612, 3, 613, 3, 613, 3, 613, 3, 613, 3, 613, 3, 613, 3, 613, 3, 613, 3, 614, 3, 614, 3, 614, 3, 614, 3, 614, 3, 614, 3, 615, 3, 615, 3, 615, 3, 615, 3, 615, 3, 615, 3, 615, 3, 615, 3, 615, 3, 616, 3, 616, 3, 616, 3, 616, 3, 616, 3, 616, 3, 616, 3, 616, 3, 616, 3, 616, 3, 616, 3, 616, 3, 616, 3, 616, 3, 616, 3, 616, 3, 616, 3, 616, 3, 616, 3, 616, 3, 616, 3, 616, 3, 617, 3, 617, 3, 617, 3, 617, 3, 617, 3, 617, 3, 617, 3, 617, 3, 617, 3, 617, 3, 617, 3, 617, 3, 618, 3, 618, 3, 618, 3, 618, 3, 618, 3, 618, 3, 618, 3, 618, 3, 618, 3, 618, 3, 618, 3, 619, 3, 619, 3, 619, 3, 619, 3, 619, 3, 619, 3, 619, 3, 620, 3, 620, 3, 620, 3, 620, 3, 620, 3, 620, 3, 621, 3, 621, 3, 621, 3, 621, 3, 621, 3, 621, 3, 621, 3, 621, 3, 621, 3, 622, 3, 622, 3, 622, 3, 622, 3, 622, 3, 622, 3, 622, 3, 623, 3, 623, 3, 623, 3, 623, 3, 623, 3, 623, 3, 623, 3, 623, 3, 623, 3, 623, 3, 623, 3, 623, 3, 623, 3, 623, 3, 623, 3, 623, 3, 623, 3, 623, 3, 623, 3, 624, 3, 624, 3, 624, 3, 624, 3, 624, 3, 624, 3, 624, 3, 625, 3, 625, 3, 625, 3, 625, 3, 625, 3, 625, 3, 625, 3, 625, 3, 626, 3, 626, 3, 626, 3, 626, 3, 626, 3, 626, 3, 626, 3, 627, 3, 627, 3, 627, 3, 627, 3, 627, 3, 627, 3, 627, 3, 627, 3, 627, 3, 627, 3, 627, 3, 627, 3, 628, 3, 628, 3, 628, 3, 628, 3, 628, 3, 628, 3, 628, 3, 629, 3, 629, 3, 629, 3, 629, 3, 629, 3, 630, 3, 630, 3, 630, 3, 630, 3, 630, 3, 630, 3, 630, 3, 630, 3, 630, 3, 630, 3, 630, 3, 630, 3, 630, 3, 630, 3, 631, 3, 631, 3, 631, 3, 631, 3, 631, 3, 631, 3, 631, 3, 631, 3, 631, 3, 631, 3, 631, 3, 632, 3, 632, 3, 632, 3, 632, 3, 632, 3, 632, 3, 632, 3, 632, 3, 632, 3, 633, 3, 633, 3, 633, 3, 633, 3, 634, 3, 634, 3, 634, 3, 634, 3, 634, 3, 634, 3, 634, 3, 635, 3, 635, 3, 635, 3, 635, 3, 635, 3, 635, 3, 635, 3, 635, 3, 635, 3, 636, 3, 636, 3, 636, 3, 636, 3, 636, 3, 636, 3, 637, 3, 637, 3, 637, 3, 637, 3, 637, 3, 637, 3, 637, 3, 637, 3, 637, 3, 637, 3, 637, 3, 637, 3, 638, 3, 638, 3, 638, 3, 638, 3, 638, 3, 638, 3, 638, 3, 638, 3, 638, 3, 638, 3, 638, 3, 638, 3, 638, 3, 638, 3, 638, 3, 638, 3, 638, 3, 639, 3, 639, 3, 639, 3, 639, 3, 639, 3, 639, 3, 639, 3, 639, 3, 639, 3, 639, 3, 640, 3, 640, 3, 640, 3, 640, 3, 640, 3, 640, 3, 640, 3, 640, 3, 640, 3, 640, 3, 640, 3, 641, 3, 641, 3, 641, 3, 641, 3, 641, 3, 641, 3, 641, 3, 641, 3, 642, 3, 642, 3, 642, 3, 642, 3, 642, 3, 643, 3, 643, 3, 643, 3, 643, 3, 643, 3, 643, 3, 643, 3, 643, 3, 643, 3, 643, 3, 643, 3, 643, 3, 643, 3, 643, 3, 643, 3, 643, 3, 643, 3, 643, 3, 643, 3, 643, 3, 643, 3, 643, 3, 643, 3, 643, 3, 644, 3, 644, 3, 644, 3, 644, 3, 644, 3, 645, 3, 645, 3, 645, 3, 645, 3, 645, 3, 646, 3, 646, 3, 646, 3, 646, 3, 646, 3, 646, 3, 646, 3, 646, 3, 646, 3, 646, 3, 647, 3, 647, 3, 647, 3, 647, 3, 647, 3, 647, 3, 647, 3, 647, 3, 647, 3, 647, 3, 647, 3, 647, 3, 647, 3, 648, 3, 648, 3, 648, 3, 648, 3, 648, 3, 648, 3, 649, 3, 649, 3, 649, 3, 649, 3, 649, 3, 649, 3, 649, 3, 649, 3, 649, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 651, 3, 651, 3, 651, 3, 651, 3, 651, 3, 651, 3, 651, 3, 651, 3, 652, 3, 652, 3, 652, 3, 652, 3, 652, 3, 652, 3, 652, 3, 652, 3, 652, 3, 652, 3, 652, 3, 652, 3, 653, 3, 653, 3, 653, 3, 653, 3, 653, 3, 653, 3, 653, 3, 653, 3, 653, 3, 653, 3, 653, 3, 654, 3, 654, 3, 654, 3, 654, 3, 654, 3, 654, 3, 654, 3, 654, 3, 654, 3, 654, 3, 654, 3, 654, 3, 654, 3, 654, 3, 654, 3, 655, 3, 655, 3, 655, 3, 655, 3, 655, 3, 655, 3, 655, 3, 655, 3, 655, 3, 656, 3, 656, 3, 656, 3, 656, 3, 656, 3, 656, 3, 656, 3, 656, 3, 656, 3, 657, 3, 657, 3, 657, 3, 657, 3, 657, 3, 657, 3, 657, 3, 657, 3, 657, 3, 657, 3, 657, 3, 657, 3, 657, 3, 657, 3, 657, 3, 657, 3, 657, 3, 657, 3, 658, 3, 658, 3, 658, 3, 658, 3, 658, 3, 658, 3, 659, 3, 659, 3, 659, 3, 659, 3, 659, 3, 659, 3, 660, 3, 660, 3, 660, 3, 660, 3, 660, 3, 660, 3, 660, 3, 660, 3, 660, 3, 660, 3, 660, 3, 660, 3, 661, 3, 661, 3, 661, 3, 661, 3, 661, 3, 661, 3, 661, 3, 661, 3, 661, 3, 661, 3, 661, 3, 661, 3, 661, 3, 661, 3, 661, 3, 661, 3, 661, 3, 661, 3, 662, 3, 662, 3, 662, 3, 662, 3, 662, 3, 662, 3, 663, 3, 663, 3, 663, 3, 663, 3, 663, 3, 664, 3, 664, 3, 664, 3, 664, 3, 665, 3, 665, 3, 665, 3, 665, 3, 666, 3, 666, 3, 666, 3, 666, 3, 666, 3, 666, 3, 666, 3, 666, 3, 667, 3, 667, 3, 667, 3, 667, 3, 667, 3, 667, 3, 667, 3, 667, 3, 667, 3, 667, 3, 667, 3, 667, 3, 667, 3, 667, 3, 667, 3, 667, 3, 667, 3, 667, 3, 667, 3, 667, 3, 667, 3, 667, 3, 667, 3, 667, 3, 668, 3, 668, 3, 668, 3, 668, 3, 668, 3, 668, 3, 668, 3, 668, 3, 668, 3, 668, 3, 669, 3, 669, 3, 669, 3, 669, 3, 669, 3, 669, 3, 669, 3, 669, 3, 669, 3, 669, 3, 669, 3, 669, 3, 669, 3, 669, 3, 669, 3, 669, 3, 669, 3, 669, 3, 669, 3, 669, 3, 669, 3, 669, 3, 669, 3, 670, 3, 670, 3, 670, 3, 670, 3, 670, 3, 670, 3, 670, 3, 670, 3, 670, 3, 670, 3, 670, 3, 671, 3, 671, 3, 671, 3, 671, 3, 671, 3, 671, 3, 671, 3, 671, 3, 671, 3, 672, 3, 672, 3, 672, 3, 672, 3, 672, 3, 672, 3, 672, 3, 672, 3, 673, 3, 673, 3, 673, 3, 673, 3, 673, 3, 673, 3, 673, 3, 673, 3, 674, 3, 674, 3, 674, 3, 674, 3, 674, 3, 674, 3, 674, 3, 674, 3, 674, 3, 674, 3, 675, 3, 675, 3, 675, 3, 675, 3, 675, 3, 675, 3, 675, 3, 675, 3, 675, 3, 676, 3, 676, 3, 676, 3, 676, 3, 676, 3, 676, 3, 676, 3, 676, 3, 676, 3, 676, 3, 676, 3, 676, 3, 676, 3, 676, 3, 676, 3, 676, 3, 676, 3, 676, 3, 676, 3, 677, 3, 677, 3, 677, 3, 677, 3, 677, 3, 677, 3, 677, 3, 677, 3, 677, 3, 678, 3, 678, 3, 678, 3, 678, 3, 678, 3, 678, 3, 678, 3, 679, 3, 679, 3, 679, 3, 679, 3, 679, 3, 679, 3, 679, 3, 679, 3, 679, 3, 679, 3, 679, 3, 679, 3, 679, 3, 679, 3, 679, 3, 679, 3, 679, 3, 679, 3, 679, 3, 679, 3, 680, 3, 680, 3, 680, 3, 680, 3, 680, 3, 680, 3, 680, 3, 681, 3, 681, 3, 681, 3, 681, 3, 681, 3, 681, 3, 681, 3, 681, 3, 681, 3, 681, 3, 681, 3, 682, 3, 682, 3, 682, 3, 682, 3, 682, 3, 682, 3, 682, 3, 682, 3, 682, 3, 682, 3, 682, 3, 683, 3, 683, 3, 683, 3, 683, 3, 683, 3, 683, 3, 683, 3, 683, 3, 684, 3, 684, 3, 684, 3, 684, 3, 684, 3, 684, 3, 684, 3, 684, 3, 684, 3, 684, 3, 684, 3, 684, 3, 684, 3, 684, 3, 684, 3, 684, 3, 684, 3, 684, 3, 684, 3, 684, 3, 684, 3, 684, 3, 684, 3, 684, 3, 684, 3, 685, 3, 685, 3, 685, 3, 685, 3, 685, 3, 685, 3, 685, 3, 685, 3, 685, 3, 685, 3, 685, 3, 685, 3, 685, 3, 685, 3, 685, 3, 685, 3, 685, 3, 685, 3, 685, 3, 685, 3, 685, 3, 685, 3, 685, 3, 685, 3, 685, 3, 685, 3, 685, 3, 685, 3, 685, 3, 685, 3, 685, 3, 685, 3, 685, 3, 686, 3, 686, 3, 686, 3, 686, 3, 686, 3, 686, 3, 686, 3, 686, 3, 686, 3, 686, 3, 686, 3, 686, 3, 686, 3, 686, 3, 686, 3, 686, 3, 686, 3, 686, 3, 686, 3, 686, 3, 686, 3, 686, 3, 686, 3, 686, 3, 686, 3, 686, 3, 686, 3, 686, 3, 686, 3, 686, 3, 686, 3, 686, 3, 686, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 688, 3, 688, 3, 688, 3, 688, 3, 688, 3, 688, 3, 688, 3, 688, 3, 688, 3, 688, 3, 688, 3, 688, 3, 688, 3, 688, 3, 688, 3, 688, 3, 688, 3, 688, 3, 688, 3, 689, 3, 689, 3, 689, 3, 689, 3, 689, 3, 689, 3, 689, 3, 689, 3, 689, 3, 690, 3, 690, 3, 690, 3, 690, 3, 690, 3, 690, 3, 690, 3, 690, 3, 690, 3, 690, 3, 690, 3, 690, 3, 690, 3, 690, 3, 690, 3, 690, 3, 690, 3, 690, 3, 690, 3, 690, 3, 690, 3, 690, 3, 690, 3, 690, 3, 690, 3, 690, 3, 691, 3, 691, 3, 691, 3, 691, 3, 691, 3, 691, 3, 691, 3, 691, 3, 691, 3, 691, 3, 691, 3, 691, 3, 691, 3, 691, 3, 691, 3, 691, 3, 692, 3, 692, 3, 692, 3, 692, 3, 692, 3, 692, 3, 692, 3, 692, 3, 692, 3, 692, 3, 693, 3, 693, 3, 693, 3, 693, 3, 693, 3, 693, 3, 693, 3, 694, 3, 694, 3, 694, 3, 694, 3, 694, 3, 695, 3, 695, 3, 695, 3, 695, 3, 695, 3, 695, 3, 696, 3, 696, 3, 696, 3, 696, 3, 697, 3, 697, 3, 697, 3, 697, 3, 697, 3, 697, 3, 697, 3, 697, 3, 697, 3, 697, 3, 697, 3, 698, 3, 698, 3, 698, 3, 698, 3, 698, 3, 698, 3, 698, 3, 698, 3, 699, 3, 699, 3, 699, 3, 699, 3, 699, 3, 700, 3, 700, 3, 700, 3, 700, 3, 700, 3, 700, 3, 700, 3, 701, 3, 701, 3, 701, 3, 701, 3, 701, 3, 701, 3, 701, 3, 701, 3, 701, 3, 701, 3, 701, 3, 701, 3, 701, 3, 701, 3, 702, 3, 702, 3, 702, 3, 702, 3, 702, 3, 702, 3, 702, 3, 703, 3, 703, 3, 703, 3, 703, 3, 703, 3, 703, 3, 703, 3, 704, 3, 704, 3, 704, 3, 704, 3, 704, 3, 704, 3, 704, 3, 704, 3, 704, 3, 704, 3, 704, 3, 704, 3, 704, 3, 705, 3, 705, 3, 705, 3, 705, 3, 705, 3, 705, 3, 705, 3, 706, 3, 706, 3, 706, 3, 706, 3, 706, 3, 706, 3, 706, 3, 706, 3, 706, 3, 706, 3, 707, 3, 707, 3, 707, 3, 707, 3, 707, 3, 707, 3, 707, 3, 707, 3, 707, 3, 707, 3, 707, 3, 707, 3, 707, 3, 707, 3, 707, 3, 708, 3, 708, 3, 708, 3, 708, 3, 708, 3, 708, 3, 708, 3, 708, 3, 708, 3, 708, 3, 708, 3, 708, 3, 708, 3, 708, 3, 708, 3, 709, 3, 709, 3, 709, 3, 709, 3, 709, 3, 709, 3, 709, 3, 709, 3, 710, 3, 710, 3, 710, 3, 710, 3, 710, 3, 710, 3, 710, 3, 711, 3, 711, 3, 711, 3, 711, 3, 711, 3, 711, 3, 711, 3, 711, 3, 711, 3, 712, 3, 712, 3, 712, 3, 712, 3, 712, 3, 712, 3, 712, 3, 712, 3, 712, 3, 712, 3, 712, 3, 712, 3, 712, 3, 713, 3, 713, 3, 713, 3, 713, 3, 713, 3, 713, 3, 713, 3, 713, 3, 713, 3, 713, 3, 713, 3, 713, 3, 713, 3, 714, 3, 714, 3, 714, 3, 714, 3, 714, 3, 715, 3, 715, 3, 715, 3, 715, 3, 715, 3, 715, 3, 715, 3, 715, 3, 715, 3, 715, 3, 715, 3, 715, 3, 715, 3, 715, 3, 715, 3, 716, 3, 716, 3, 716, 3, 716, 3, 716, 3, 717, 3, 717, 3, 717, 3, 717, 3, 717, 3, 718, 3, 718, 3, 718, 3, 718, 3, 718, 3, 718, 3, 718, 3, 718, 3, 718, 3, 719, 3, 719, 3, 719, 3, 719, 3, 719, 3, 719, 3, 719, 3, 719, 3, 719, 3, 719, 3, 719, 3, 719, 3, 719, 3, 720, 3, 720, 3, 720, 3, 720, 3, 720, 3, 720, 3, 720, 3, 720, 3, 720, 3, 720, 3, 720, 3, 720, 3, 720, 3, 720, 3, 720, 3, 720, 3, 721, 3, 721, 3, 721, 3, 721, 3, 721, 3, 721, 3, 721, 3, 721, 3, 721, 3, 722, 3, 722, 3, 722, 3, 722, 3, 722, 3, 722, 3, 723, 3, 723, 3, 723, 3, 723, 3, 723, 3, 723, 3, 723, 3, 723, 3, 723, 3, 724, 3, 724, 3, 724, 3, 724, 3, 724, 3, 724, 3, 724, 3, 724, 3, 724, 3, 724, 3, 725, 3, 725, 3, 725, 3, 725, 3, 725, 3, 725, 3, 725, 3, 726, 3, 726, 3, 726, 3, 726, 3, 726, 3, 726, 3, 726, 3, 726, 3, 726, 3, 726, 3, 726, 3, 726, 3, 727, 3, 727, 3, 727, 3, 727, 3, 727, 3, 728, 3, 728, 3, 728, 3, 728, 3, 728, 3, 728, 3, 728, 3, 728, 3, 728, 3, 729, 3, 729, 3, 729, 3, 729, 3, 729, 3, 729, 3, 729, 3, 729, 3, 729, 3, 730, 3, 730, 3, 730, 3, 730, 3, 730, 3, 730, 3, 730, 3, 730, 3, 730, 3, 730, 3, 730, 3, 730, 3, 730, 3, 730, 3, 730, 3, 730, 3, 730, 3, 730, 3, 730, 3, 730, 3, 730, 3, 730, 3, 730, 3, 730, 3, 730, 3, 731, 3, 731, 3, 731, 3, 731, 3, 731, 3, 731, 3, 731, 3, 731, 3, 732, 3, 732, 3, 732, 3, 732, 3, 732, 3, 732, 3, 732, 3, 732, 3, 732, 3, 732, 3, 732, 3, 733, 3, 733, 3, 733, 3, 733, 3, 733, 3, 733, 3, 733, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 735, 3, 735, 3, 735, 3, 735, 3, 735, 3, 735, 3, 735, 3, 736, 3, 736, 3, 736, 3, 736, 3, 736, 3, 736, 3, 736, 3, 736, 3, 736, 3, 736, 3, 736, 3, 737, 3, 737, 3, 737, 3, 737, 3, 737, 3, 737, 3, 738, 3, 738, 3, 738, 3, 738, 3, 738, 3, 738, 3, 738, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 741, 3, 741, 3, 741, 3, 741, 3, 741, 3, 741, 3, 742, 3, 742, 3, 742, 3, 742, 3, 742, 3, 742, 3, 742, 3, 742, 3, 743, 3, 743, 3, 743, 3, 743, 3, 743, 3, 743, 3, 743, 3, 743, 3, 743, 3, 743, 3, 743, 3, 743, 3, 743, 3, 744, 3, 744, 3, 744, 3, 744, 3, 745, 3, 745, 3, 745, 3, 745, 3, 745, 3, 745, 3, 745, 3, 745, 3, 746, 3, 746, 3, 746, 3, 746, 3, 746, 3, 746, 3, 746, 3, 746, 3, 746, 3, 746, 3, 747, 3, 747, 3, 747, 3, 747, 3, 747, 3, 747, 3, 747, 3, 747, 3, 747, 3, 747, 3, 747, 3, 747, 3, 747, 3, 747, 3, 747, 3, 747, 3, 747, 3, 747, 3, 747, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 749, 3, 749, 3, 749, 3, 749, 3, 749, 3, 749, 3, 749, 3, 750, 3, 750, 3, 750, 3, 750, 3, 750, 3, 751, 3, 751, 3, 751, 3, 751, 3, 751, 3, 751, 3, 751, 3, 751, 3, 751, 3, 751, 3, 751, 3, 751, 3, 751, 3, 751, 3, 751, 3, 751, 3, 751, 3, 751, 3, 751, 3, 751, 3, 751, 3, 752, 3, 752, 3, 752, 3, 753, 3, 753, 3, 753, 3, 753, 3, 753, 3, 753, 3, 753, 3, 753, 3, 753, 3, 753, 3, 753, 3, 753, 3, 753, 3, 754, 3, 754, 3, 754, 3, 754, 3, 754, 3, 754, 3, 755, 3, 755, 3, 755, 3, 755, 3, 755, 3, 756, 3, 756, 3, 756, 3, 756, 3, 756, 3, 757, 3, 757, 3, 757, 3, 757, 3, 757, 3, 757, 3, 757, 3, 757, 3, 758, 3, 758, 3, 758, 3, 758, 3, 758, 3, 758, 3, 759, 3, 759, 3, 759, 3, 759, 3, 759, 3, 759, 3, 759, 3, 759, 3, 760, 3, 760, 3, 760, 3, 760, 3, 760, 3, 760, 3, 760, 3, 760, 3, 760, 3, 760, 3, 760, 3, 760, 3, 760, 3, 760, 3, 760, 3, 760, 3, 760, 3, 760, 3, 760, 3, 760, 3, 761, 3, 761, 3, 761, 3, 761, 3, 761, 3, 761, 3, 761, 3, 761, 3, 761, 3, 761, 3, 761, 3, 761, 3, 761, 3, 761, 3, 761, 3, 761, 3, 761, 3, 761, 3, 761, 3, 761, 3, 761, 3, 761, 3, 762, 3, 762, 3, 762, 3, 762, 3, 762, 3, 762, 3, 762, 3, 762, 3, 762, 3, 762, 3, 762, 3, 763, 3, 763, 3, 763, 3, 763, 3, 763, 3, 763, 3, 763, 3, 763, 3, 763, 3, 763, 3, 763, 3, 763, 3, 763, 3, 763, 3, 763, 3, 763, 3, 764, 3, 764, 3, 764, 3, 764, 3, 764, 3, 764, 3, 764, 3, 764, 3, 764, 3, 764, 3, 764, 3, 764, 3, 765, 3, 765, 3, 765, 3, 765, 3, 766, 3, 766, 3, 766, 3, 766, 3, 766, 3, 767, 3, 767, 3, 767, 3, 767, 3, 767, 3, 767, 3, 767, 3, 767, 3, 767, 3, 767, 3, 767, 3, 767, 3, 767, 3, 767, 3, 767, 3, 767, 3, 767, 3, 767, 3, 767, 3, 767, 3, 767, 3, 767, 3, 768, 3, 768, 3, 768, 3, 768, 3, 768, 3, 769, 3, 769, 3, 769, 3, 769, 3, 769, 3, 769, 3, 769, 3, 769, 3, 769, 3, 769, 3, 769, 3, 769, 3, 769, 3, 770, 3, 770, 3, 770, 3, 770, 3, 770, 3, 770, 3, 770, 3, 770, 3, 770, 3, 770, 3, 771, 3, 771, 3, 771, 3, 771, 3, 771, 3, 771, 3, 771, 3, 771, 3, 771, 3, 771, 3, 771, 3, 771, 3, 772, 3, 772, 3, 772, 3, 772, 3, 772, 3, 772, 3, 772, 3, 772, 3, 773, 3, 773, 3, 773, 3, 773, 3, 773, 3, 773, 3, 773, 3, 773, 3, 773, 3, 773, 3, 774, 3, 774, 3, 774, 3, 774, 3, 775, 3, 775, 3, 775, 3, 775, 3, 775, 3, 775, 3, 776, 3, 776, 3, 776, 3, 776, 3, 776, 3, 776, 3, 776, 3, 776, 3, 776, 3, 776, 3, 777, 3, 777, 3, 777, 3, 777, 3, 777, 3, 777, 3, 777, 3, 777, 3, 777, 3, 777, 3, 777, 3, 778, 3, 778, 3, 778, 3, 778, 3, 778, 3, 778, 3, 779, 3, 779, 3, 779, 3, 779, 3, 780, 3, 780, 3, 780, 3, 780, 3, 780, 3, 781, 3, 781, 3, 781, 3, 781, 3, 781, 3, 781, 3, 781, 3, 781, 3, 781, 3, 781, 3, 781, 3, 781, 3, 781, 3, 781, 3, 782, 3, 782, 3, 782, 3, 782, 3, 782, 3, 782, 3, 783, 3, 783, 3, 783, 3, 783, 3, 783, 3, 784, 3, 784, 3, 784, 3, 784, 3, 784, 3, 784, 3, 784, 3, 784, 3, 784, 3, 784, 3, 784, 3, 784, 3, 784, 3, 784, 3, 784, 3, 784, 3, 785, 3, 785, 3, 785, 3, 785, 3, 785, 3, 785, 3, 785, 3, 785, 3, 785, 3, 785, 3, 785, 3, 785, 3, 785, 3, 785, 3, 785, 3, 785, 3, 785, 3, 785, 3, 785, 3, 785, 3, 785, 3, 785, 3, 786, 3, 786, 3, 786, 3, 786, 3, 786, 3, 787, 3, 787, 3, 787, 3, 787, 3, 787, 3, 787, 3, 787, 3, 787, 3, 787, 3, 788, 3, 788, 3, 788, 3, 788, 3, 789, 3, 789, 3, 789, 3, 789, 3, 789, 3, 789, 3, 789, 3, 789, 3, 790, 3, 790, 3, 790, 3, 790, 3, 790, 3, 790, 3, 790, 3, 790, 3, 790, 3, 790, 3, 790, 3, 790, 3, 790, 3, 790, 3, 791, 3, 791, 3, 791, 3, 791, 3, 791, 3, 791, 3, 791, 3, 791, 3, 791, 3, 791, 3, 792, 3, 792, 3, 792, 3, 792, 3, 792, 3, 792, 3, 792, 3, 793, 3, 793, 3, 793, 3, 793, 3, 793, 3, 793, 3, 793, 3, 793, 3, 794, 6, 794, 9808, 10, 794, 13, 794, 14, 794, 9809, 3, 794, 3, 794, 3, 795, 3, 795, 3, 795, 3, 795, 3, 795, 7, 795, 9819, 10, 795, 12, 795, 14, 795, 9822, 11, 795, 3, 795, 3, 795, 3, 795, 3, 795, 3, 795, 3, 796, 3, 796, 3, 796, 3, 796, 7, 796, 9833, 10, 796, 12, 796, 14, 796, 9836, 11, 796, 3, 796, 3, 796, 3, 797, 3, 797, 6, 797, 9842, 10, 797, 13, 797, 14, 797, 9843, 3, 797, 3, 797, 3, 798, 3, 798, 3, 799, 3, 799, 6, 799, 9852, 10, 799, 13, 799, 14, 799, 9853, 3, 799, 3, 799, 3, 800, 3, 800, 3, 800, 6, 800, 9861, 10, 800, 13, 800, 14, 800, 9862, 3, 801, 6, 801, 9866, 10, 801, 13, 801, 14, 801, 9867, 3, 802, 3, 802, 5, 802, 9872, 10, 802, 3, 802, 3, 802, 7, 802, 9876, 10, 802, 12, 802, 14, 802, 9879, 11, 802, 3, 803, 3, 803, 3, 803, 6, 803, 9884, 10, 803, 13, 803, 14, 803, 9885, 3, 803, 3, 803, 3, 803, 3, 803, 3, 803, 3, 803, 6, 803, 9894, 10, 803, 13, 803, 14, 803, 9895, 3, 803, 3, 803, 6, 803, 9900, 10, 803, 13, 803, 14, 803, 9901, 5, 803, 9904, 10, 803, 3, 803, 5, 803, 9907, 10, 803, 3, 803, 3, 803, 3, 803, 3, 803, 3, 804, 3, 804, 6, 804, 9915, 10, 804, 13, 804, 14, 804, 9916, 3, 804, 3, 804, 6, 804, 9921, 10, 804, 13, 804, 14, 804, 9922, 5, 804, 9925, 10, 804, 3, 804, 5, 804, 9928, 10, 804, 3, 804, 3, 804, 3, 804, 3, 804, 3, 804, 3, 805, 5, 805, 9936, 10, 805, 3, 805, 3, 805, 3, 805, 3, 805, 7, 805, 9942, 10, 805, 12, 805, 14, 805, 9945, 11, 805, 3, 805, 3, 805, 3, 806, 3, 806, 3, 806, 7, 806, 9952, 10, 806, 12, 806, 14, 806, 9955, 11, 806, 3, 807, 3, 807, 3, 808, 3, 808, 5, 808, 9961, 10, 808, 3, 808, 3, 808, 5, 808, 9965, 10, 808, 3, 808, 6, 808, 9968, 10, 808, 13, 808, 14, 808, 9969, 3, 809, 3, 809, 3, 810, 3, 810, 3, 811, 3, 811, 3, 812, 3, 812, 3, 813, 3, 813, 3, 813, 3, 814, 3, 814, 3, 814, 3, 815, 3, 815, 3, 815, 3, 816, 3, 816, 3, 816, 3, 817, 3, 817, 3, 817, 3, 818, 3, 818, 3, 818, 3, 819, 3, 819, 3, 819, 3, 820, 3, 820, 3, 820, 3, 821, 3, 821, 3, 821, 3, 822, 3, 822, 3, 823, 3, 823, 3, 824, 3, 824, 3, 825, 3, 825, 3, 826, 3, 826, 3, 827, 3, 827, 3, 828, 3, 828, 3, 829, 3, 829, 3, 830, 3, 830, 3, 831, 3, 831, 3, 832, 3, 832, 3, 833, 3, 833, 3, 834, 3, 834, 3, 835, 3, 835, 3, 836, 3, 836, 3, 837, 3, 837, 3, 838, 3, 838, 3, 839, 3, 839, 3, 840, 3, 840, 3, 841, 3, 841, 3, 842, 3, 842, 3, 842, 3, 842, 3, 842, 3, 843, 5, 843, 10053, 10, 843, 3, 843, 5, 843, 10056, 10, 843, 3, 843, 3, 843, 3, 844, 6, 844, 10061, 10, 844, 13, 844, 14, 844, 10062, 3, 844, 3, 844, 6, 844, 10067, 10, 844, 13, 844, 14, 844, 10068, 3, 844, 6, 844, 10072, 10, 844, 13, 844, 14, 844, 10073, 3, 844, 3, 844, 3, 844, 3, 844, 6, 844, 10080, 10, 844, 13, 844, 14, 844, 10081, 5, 844, 10084, 10, 844, 3, 845, 3, 845, 3, 846, 3, 846, 3, 847, 3, 847, 3, 9820, 2, 848, 3, 3, 5, 4, 7, 5, 9, 6, 11, 7, 13, 8, 15, 9, 17, 10, 19, 11, 21, 12, 23, 13, 25, 14, 27, 15, 29, 16, 31, 17, 33, 18, 35, 19, 37, 20, 39, 21, 41, 22, 43, 23, 45, 24, 47, 25, 49, 26, 51, 27, 53, 28, 55, 29, 57, 30, 59, 31, 61, 32, 63, 33, 65, 34, 67, 35, 69, 36, 71, 37, 73, 38, 75, 39, 77, 40, 79, 41, 81, 42, 83, 43, 85, 44, 87, 45, 89, 46, 91, 47, 93, 48, 95, 49, 97, 50, 99, 51, 101, 52, 103, 53, 105, 54, 107, 55, 109, 56, 111, 57, 113, 58, 115, 59, 117, 60, 119, 61, 121, 62, 123, 63, 125, 64, 127, 65, 129, 66, 131, 67, 133, 68, 135, 69, 137, 70, 139, 71, 141, 72, 143, 73, 145, 74, 147, 75, 149, 76, 151, 77, 153, 78, 155, 79, 157, 80, 159, 81, 161, 82, 163, 83, 165, 84, 167, 85, 169, 86, 171, 87, 173, 88, 175, 89, 177, 90, 179, 91, 181, 92, 183, 93, 185, 94, 187, 95, 189, 96, 191, 97, 193, 98, 195, 99, 197, 100, 199, 101, 201, 102, 203, 103, 205, 104, 207, 105, 209, 106, 211, 107, 213, 108, 215, 109, 217, 110, 219, 111, 221, 112, 223, 113, 225, 114, 227, 115, 229, 116, 231, 117, 233, 118, 235, 119, 237, 120, 239, 121, 241, 122, 243, 123, 245, 124, 247, 125, 249, 126, 251, 127, 253, 128, 255, 129, 257, 130, 259, 131, 261, 132, 263, 133, 265, 134, 267, 135, 269, 136, 271, 137, 273, 138, 275, 139, 277, 140, 279, 141, 281, 142, 283, 143, 285, 144, 287, 145, 289, 146, 291, 147, 293, 148, 295, 149, 297, 150, 299, 151, 301, 152, 303, 153, 305, 154, 307, 155, 309, 156, 311, 157, 313, 158, 315, 159, 317, 160, 319, 161, 321, 162, 323, 163, 325, 164, 327, 165, 329, 166, 331, 167, 333, 168, 335, 169, 337, 170, 339, 171, 341, 172, 343, 173, 345, 174, 347, 175, 349, 176, 351, 177, 353, 178, 355, 179, 357, 180, 359, 181, 361, 182, 363, 183, 365, 184, 367, 185, 369, 186, 371, 187, 373, 188, 375, 189, 377, 190, 379, 191, 381, 192, 383, 193, 385, 194, 387, 195, 389, 196, 391, 197, 393, 198, 395, 199, 397, 200, 399, 201, 401, 202, 403, 203, 405, 204, 407, 205, 409, 206, 411, 207, 413, 208, 415, 209, 417, 210, 419, 211, 421, 212, 423, 213, 425, 214, 427, 215, 429, 216, 431, 217, 433, 218, 435, 219, 437, 220, 439, 221, 441, 222, 443, 223, 445, 224, 447, 225, 449, 226, 451, 227, 453, 228, 455, 229, 457, 230, 459, 231, 461, 232, 463, 233, 465, 234, 467, 235, 469, 236, 471, 237, 473, 238, 475, 239, 477, 240, 479, 241, 481, 242, 483, 243, 485, 244, 487, 245, 489, 246, 491, 247, 493, 248, 495, 249, 497, 250, 499, 251, 501, 252, 503, 253, 505, 254, 507, 255, 509, 256, 511, 257, 513, 258, 515, 259, 517, 260, 519, 261, 521, 262, 523, 263, 525, 264, 527, 265, 529, 266, 531, 267, 533, 268, 535, 269, 537, 270, 539, 271, 541, 272, 543, 273, 545, 274, 547, 275, 549, 276, 551, 277, 553, 278, 555, 279, 557, 280, 559, 281, 561, 282, 563, 283, 565, 284, 567, 285, 569, 286, 571, 287, 573, 288, 575, 289, 577, 290, 579, 291, 581, 292, 583, 293, 585, 294, 587, 295, 589, 296, 591, 297, 593, 298, 595, 299, 597, 300, 599, 301, 601, 302, 603, 303, 605, 304, 607, 305, 609, 306, 611, 307, 613, 308, 615, 309, 617, 310, 619, 311, 621, 312, 623, 313, 625, 314, 627, 315, 629, 316, 631, 317, 633, 318, 635, 319, 637, 320, 639, 321, 641, 322, 643, 323, 645, 324, 647, 325, 649, 326, 651, 327, 653, 328, 655, 329, 657, 330, 659, 331, 661, 332, 663, 333, 665, 334, 667, 335, 669, 336, 671, 337, 673, 338, 675, 339, 677, 340, 679, 341, 681, 342, 683, 343, 685, 344, 687, 345, 689, 346, 691, 347, 693, 348, 695, 349, 697, 350, 699, 351, 701, 352, 703, 353, 705, 354, 707, 355, 709, 356, 711, 357, 713, 358, 715, 359, 717, 360, 719, 361, 721, 362, 723, 363, 725, 364, 727, 365, 729, 366, 731, 367, 733, 368, 735, 369, 737, 370, 739, 371, 741, 372, 743, 373, 745, 374, 747, 375, 749, 376, 751, 377, 753, 378, 755, 379, 757, 380, 759, 381, 761, 382, 763, 383, 765, 384, 767, 385, 769, 386, 771, 387, 773, 388, 775, 389, 777, 390, 779, 391, 781, 392, 783, 393, 785, 394, 787, 395, 789, 396, 791, 397, 793, 398, 795, 399, 797, 400, 799, 401, 801, 402, 803, 403, 805, 404, 807, 405, 809, 406, 811, 407, 813, 408, 815, 409, 817, 410, 819, 411, 821, 412, 823, 413, 825, 414, 827, 415, 829, 416, 831, 417, 833, 418, 835, 419, 837, 420, 839, 421, 841, 422, 843, 423, 845, 424, 847, 425, 849, 426, 851, 427, 853, 428, 855, 429, 857, 430, 859, 431, 861, 432, 863, 433, 865, 434, 867, 435, 869, 436, 871, 437, 873, 438, 875, 439, 877, 440, 879, 441, 881, 442, 883, 443, 885, 444, 887, 445, 889, 446, 891, 447, 893, 448, 895, 449, 897, 450, 899, 451, 901, 452, 903, 453, 905, 454, 907, 455, 909, 456, 911, 457, 913, 458, 915, 459, 917, 460, 919, 461, 921, 462, 923, 463, 925, 464, 927, 465, 929, 466, 931, 467, 933, 468, 935, 469, 937, 470, 939, 471, 941, 472, 943, 473, 945, 474, 947, 475, 949, 476, 951, 477, 953, 478, 955, 479, 957, 480, 959, 481, 961, 482, 963, 483, 965, 484, 967, 485, 969, 486, 971, 487, 973, 488, 975, 489, 977, 490, 979, 491, 981, 492, 983, 493, 985, 494, 987, 495, 989, 496, 991, 497, 993, 498, 995, 499, 997, 500, 999, 501, 1001, 502, 1003, 503, 1005, 504, 1007, 505, 1009, 506, 1011, 507, 1013, 508, 1015, 509, 1017, 510, 1019, 511, 1021, 512, 1023, 513, 1025, 514, 1027, 515, 1029, 516, 1031, 517, 1033, 518, 1035, 519, 1037, 520, 1039, 521, 1041, 522, 1043, 523, 1045, 524, 1047, 525, 1049, 526, 1051, 527, 1053, 528, 1055, 529, 1057, 530, 1059, 531, 1061, 532, 1063, 533, 1065, 534, 1067, 535, 1069, 536, 1071, 537, 1073, 538, 1075, 539, 1077, 540, 1079, 541, 1081, 542, 1083, 543, 1085, 544, 1087, 545, 1089, 546, 1091, 547, 1093, 548, 1095, 549, 1097, 550, 1099, 551, 1101, 552, 1103, 553, 1105, 554, 1107, 555, 1109, 556, 1111, 557, 1113, 558, 1115, 559, 1117, 560, 1119, 561, 1121, 562, 1123, 563, 1125, 564, 1127, 565, 1129, 566, 1131, 567, 1133, 568, 1135, 569, 1137, 570, 1139, 571, 1141, 572, 1143, 573, 1145, 574, 1147, 575, 1149, 576, 1151, 577, 1153, 578, 1155, 579, 1157, 580, 1159, 581, 1161, 582, 1163, 583, 1165, 584, 1167, 585, 1169, 586, 1171, 587, 1173, 588, 1175, 589, 1177, 590, 1179, 591, 1181, 592, 1183, 593, 1185, 594, 1187, 595, 1189, 596, 1191, 597, 1193, 598, 1195, 599, 1197, 600, 1199, 601, 1201, 602, 1203, 603, 1205, 604, 1207, 605, 1209, 606, 1211, 607, 1213, 608, 1215, 609, 1217, 610, 1219, 611, 1221, 612, 1223, 613, 1225, 614, 1227, 615, 1229, 616, 1231, 617, 1233, 618, 1235, 619, 1237, 620, 1239, 621, 1241, 622, 1243, 623, 1245, 624, 1247, 625, 1249, 626, 1251, 627, 1253, 628, 1255, 629, 1257, 630, 1259, 631, 1261, 632, 1263, 633, 1265, 634, 1267, 635, 1269, 636, 1271, 637, 1273, 638, 1275, 639, 1277, 640, 1279, 641, 1281, 642, 1283, 643, 1285, 644, 1287, 645, 1289, 646, 1291, 647, 1293, 648, 1295, 649, 1297, 650, 1299, 651, 1301, 652, 1303, 653, 1305, 654, 1307, 655, 1309, 656, 1311, 657, 1313, 658, 1315, 659, 1317, 660, 1319, 661, 1321, 662, 1323, 663, 1325, 664, 1327, 665, 1329, 666, 1331, 667, 1333, 668, 1335, 669, 1337, 670, 1339, 671, 1341, 672, 1343, 673, 1345, 674, 1347, 675, 1349, 676, 1351, 677, 1353, 678, 1355, 679, 1357, 680, 1359, 681, 1361, 682, 1363, 683, 1365, 684, 1367, 685, 1369, 686, 1371, 687, 1373, 688, 1375, 689, 1377, 690, 1379, 691, 1381, 692, 1383, 693, 1385, 694, 1387, 695, 1389, 696, 1391, 697, 1393, 698, 1395, 699, 1397, 700, 1399, 701, 1401, 702, 1403, 703, 1405, 704, 1407, 705, 1409, 706, 1411, 707, 1413, 708, 1415, 709, 1417, 710, 1419, 711, 1421, 712, 1423, 713, 1425, 714, 1427, 715, 1429, 716, 1431, 717, 1433, 718, 1435, 719, 1437, 720, 1439, 721, 1441, 722, 1443, 723, 1445, 724, 1447, 725, 1449, 726, 1451, 727, 1453, 728, 1455, 729, 1457, 730, 1459, 731, 1461, 732, 1463, 733, 1465, 734, 1467, 735, 1469, 736, 1471, 737, 1473, 738, 1475, 739, 1477, 740, 1479, 741, 1481, 742, 1483, 743, 1485, 744, 1487, 745, 1489, 746, 1491, 747, 1493, 748, 1495, 749, 1497, 750, 1499, 751, 1501, 752, 1503, 753, 1505, 754, 1507, 755, 1509, 756, 1511, 757, 1513, 758, 1515, 759, 1517, 760, 1519, 761, 1521, 762, 1523, 763, 1525, 764, 1527, 765, 1529, 766, 1531, 767, 1533, 768, 1535, 769, 1537, 770, 1539, 771, 1541, 772, 1543, 773, 1545, 774, 1547, 775, 1549, 776, 1551, 777, 1553, 778, 1555, 779, 1557, 780, 1559, 781, 1561, 782, 1563, 783, 1565, 784, 1567, 785, 1569, 786, 1571, 787, 1573, 788, 1575, 789, 1577, 790, 1579, 791, 1581, 792, 1583, 793, 1585, 794, 1587, 795, 1589, 796, 1591, 797, 1593, 798, 1595, 799, 1597, 800, 1599, 801, 1601, 802, 1603, 803, 1605, 804, 1607, 805, 1609, 806, 1611, 807, 1613, 808, 1615, 809, 1617, 810, 1619, 811, 1621, 812, 1623, 813, 1625, 814, 1627, 815, 1629, 816, 1631, 817, 1633, 818, 1635, 819, 1637, 820, 1639, 821, 1641, 822, 1643, 823, 1645, 824, 1647, 825, 1649, 826, 1651, 827, 1653, 828, 1655, 829, 1657, 830, 1659, 831, 1661, 832, 1663, 833, 1665, 834, 1667, 835, 1669, 836, 1671, 837, 1673, 838, 1675, 839, 1677, 840, 1679, 841, 1681, 2, 1683, 2, 1685, 842, 1687, 2, 1689, 2, 1691, 2, 1693, 2, 3, 2, 17, 3, 2, 41, 41, 4, 2, 50, 59, 67, 72, 3, 2, 60, 60, 3, 2, 36, 36, 3, 2, 67, 92, 5, 2, 11, 12, 15, 15, 34, 34, 4, 2, 12, 12, 15, 15, 3, 2, 95, 95, 6, 2, 37, 38, 50, 59, 66, 92, 97, 97, 5, 2, 37, 37, 67, 92, 97, 97, 3, 2, 48, 48, 4, 2, 45, 45, 47, 47, 4, 2, 67, 92, 97, 97, 3, 2, 50, 59, 12, 2, 194, 216, 218, 248, 250, 8193, 11266, 12289, 12354, 12689, 13058, 13185, 13314, 16385, 19970, 55297, 63746, 64257, 65282, 65522, 2, 10159, 2, 3, 3, 2, 2, 2, 2, 5, 3, 2, 2, 2, 2, 7, 3, 2, 2, 2, 2, 9, 3, 2, 2, 2, 2, 11, 3, 2, 2, 2, 2, 13, 3, 2, 2, 2, 2, 15, 3, 2, 2, 2, 2, 17, 3, 2, 2, 2, 2, 19, 3, 2, 2, 2, 2, 21, 3, 2, 2, 2, 2, 23, 3, 2, 2, 2, 2, 25, 3, 2, 2, 2, 2, 27, 3, 2, 2, 2, 2, 29, 3, 2, 2, 2, 2, 31, 3, 2, 2, 2, 2, 33, 3, 2, 2, 2, 2, 35, 3, 2, 2, 2, 2, 37, 3, 2, 2, 2, 2, 39, 3, 2, 2, 2, 2, 41, 3, 2, 2, 2, 2, 43, 3, 2, 2, 2, 2, 45, 3, 2, 2, 2, 2, 47, 3, 2, 2, 2, 2, 49, 3, 2, 2, 2, 2, 51, 3, 2, 2, 2, 2, 53, 3, 2, 2, 2, 2, 55, 3, 2, 2, 2, 2, 57, 3, 2, 2, 2, 2, 59, 3, 2, 2, 2, 2, 61, 3, 2, 2, 2, 2, 63, 3, 2, 2, 2, 2, 65, 3, 2, 2, 2, 2, 67, 3, 2, 2, 2, 2, 69, 3, 2, 2, 2, 2, 71, 3, 2, 2, 2, 2, 73, 3, 2, 2, 2, 2, 75, 3, 2, 2, 2, 2, 77, 3, 2, 2, 2, 2, 79, 3, 2, 2, 2, 2, 81, 3, 2, 2, 2, 2, 83, 3, 2, 2, 2, 2, 85, 3, 2, 2, 2, 2, 87, 3, 2, 2, 2, 2, 89, 3, 2, 2, 2, 2, 91, 3, 2, 2, 2, 2, 93, 3, 2, 2, 2, 2, 95, 3, 2, 2, 2, 2, 97, 3, 2, 2, 2, 2, 99, 3, 2, 2, 2, 2, 101, 3, 2, 2, 2, 2, 103, 3, 2, 2, 2, 2, 105, 3, 2, 2, 2, 2, 107, 3, 2, 2, 2, 2, 109, 3, 2, 2, 2, 2, 111, 3, 2, 2, 2, 2, 113, 3, 2, 2, 2, 2, 115, 3, 2, 2, 2, 2, 117, 3, 2, 2, 2, 2, 119, 3, 2, 2, 2, 2, 121, 3, 2, 2, 2, 2, 123, 3, 2, 2, 2, 2, 125, 3, 2, 2, 2, 2, 127, 3, 2, 2, 2, 2, 129, 3, 2, 2, 2, 2, 131, 3, 2, 2, 2, 2, 133, 3, 2, 2, 2, 2, 135, 3, 2, 2, 2, 2, 137, 3, 2, 2, 2, 2, 139, 3, 2, 2, 2, 2, 141, 3, 2, 2, 2, 2, 143, 3, 2, 2, 2, 2, 145, 3, 2, 2, 2, 2, 147, 3, 2, 2, 2, 2, 149, 3, 2, 2, 2, 2, 151, 3, 2, 2, 2, 2, 153, 3, 2, 2, 2, 2, 155, 3, 2, 2, 2, 2, 157, 3, 2, 2, 2, 2, 159, 3, 2, 2, 2, 2, 161, 3, 2, 2, 2, 2, 163, 3, 2, 2, 2, 2, 165, 3, 2, 2, 2, 2, 167, 3, 2, 2, 2, 2, 169, 3, 2, 2, 2, 2, 171, 3, 2, 2, 2, 2, 173, 3, 2, 2, 2, 2, 175, 3, 2, 2, 2, 2, 177, 3, 2, 2, 2, 2, 179, 3, 2, 2, 2, 2, 181, 3, 2, 2, 2, 2, 183, 3, 2, 2, 2, 2, 185, 3, 2, 2, 2, 2, 187, 3, 2, 2, 2, 2, 189, 3, 2, 2, 2, 2, 191, 3, 2, 2, 2, 2, 193, 3, 2, 2, 2, 2, 195, 3, 2, 2, 2, 2, 197, 3, 2, 2, 2, 2, 199, 3, 2, 2, 2, 2, 201, 3, 2, 2, 2, 2, 203, 3, 2, 2, 2, 2, 205, 3, 2, 2, 2, 2, 207, 3, 2, 2, 2, 2, 209, 3, 2, 2, 2, 2, 211, 3, 2, 2, 2, 2, 213, 3, 2, 2, 2, 2, 215, 3, 2, 2, 2, 2, 217, 3, 2, 2, 2, 2, 219, 3, 2, 2, 2, 2, 221, 3, 2, 2, 2, 2, 223, 3, 2, 2, 2, 2, 225, 3, 2, 2, 2, 2, 227, 3, 2, 2, 2, 2, 229, 3, 2, 2, 2, 2, 231, 3, 2, 2, 2, 2, 233, 3, 2, 2, 2, 2, 235, 3, 2, 2, 2, 2, 237, 3, 2, 2, 2, 2, 239, 3, 2, 2, 2, 2, 241, 3, 2, 2, 2, 2, 243, 3, 2, 2, 2, 2, 245, 3, 2, 2, 2, 2, 247, 3, 2, 2, 2, 2, 249, 3, 2, 2, 2, 2, 251, 3, 2, 2, 2, 2, 253, 3, 2, 2, 2, 2, 255, 3, 2, 2, 2, 2, 257, 3, 2, 2, 2, 2, 259, 3, 2, 2, 2, 2, 261, 3, 2, 2, 2, 2, 263, 3, 2, 2, 2, 2, 265, 3, 2, 2, 2, 2, 267, 3, 2, 2, 2, 2, 269, 3, 2, 2, 2, 2, 271, 3, 2, 2, 2, 2, 273, 3, 2, 2, 2, 2, 275, 3, 2, 2, 2, 2, 277, 3, 2, 2, 2, 2, 279, 3, 2, 2, 2, 2, 281, 3, 2, 2, 2, 2, 283, 3, 2, 2, 2, 2, 285, 3, 2, 2, 2, 2, 287, 3, 2, 2, 2, 2, 289, 3, 2, 2, 2, 2, 291, 3, 2, 2, 2, 2, 293, 3, 2, 2, 2, 2, 295, 3, 2, 2, 2, 2, 297, 3, 2, 2, 2, 2, 299, 3, 2, 2, 2, 2, 301, 3, 2, 2, 2, 2, 303, 3, 2, 2, 2, 2, 305, 3, 2, 2, 2, 2, 307, 3, 2, 2, 2, 2, 309, 3, 2, 2, 2, 2, 311, 3, 2, 2, 2, 2, 313, 3, 2, 2, 2, 2, 315, 3, 2, 2, 2, 2, 317, 3, 2, 2, 2, 2, 319, 3, 2, 2, 2, 2, 321, 3, 2, 2, 2, 2, 323, 3, 2, 2, 2, 2, 325, 3, 2, 2, 2, 2, 327, 3, 2, 2, 2, 2, 329, 3, 2, 2, 2, 2, 331, 3, 2, 2, 2, 2, 333, 3, 2, 2, 2, 2, 335, 3, 2, 2, 2, 2, 337, 3, 2, 2, 2, 2, 339, 3, 2, 2, 2, 2, 341, 3, 2, 2, 2, 2, 343, 3, 2, 2, 2, 2, 345, 3, 2, 2, 2, 2, 347, 3, 2, 2, 2, 2, 349, 3, 2, 2, 2, 2, 351, 3, 2, 2, 2, 2, 353, 3, 2, 2, 2, 2, 355, 3, 2, 2, 2, 2, 357, 3, 2, 2, 2, 2, 359, 3, 2, 2, 2, 2, 361, 3, 2, 2, 2, 2, 363, 3, 2, 2, 2, 2, 365, 3, 2, 2, 2, 2, 367, 3, 2, 2, 2, 2, 369, 3, 2, 2, 2, 2, 371, 3, 2, 2, 2, 2, 373, 3, 2, 2, 2, 2, 375, 3, 2, 2, 2, 2, 377, 3, 2, 2, 2, 2, 379, 3, 2, 2, 2, 2, 381, 3, 2, 2, 2, 2, 383, 3, 2, 2, 2, 2, 385, 3, 2, 2, 2, 2, 387, 3, 2, 2, 2, 2, 389, 3, 2, 2, 2, 2, 391, 3, 2, 2, 2, 2, 393, 3, 2, 2, 2, 2, 395, 3, 2, 2, 2, 2, 397, 3, 2, 2, 2, 2, 399, 3, 2, 2, 2, 2, 401, 3, 2, 2, 2, 2, 403, 3, 2, 2, 2, 2, 405, 3, 2, 2, 2, 2, 407, 3, 2, 2, 2, 2, 409, 3, 2, 2, 2, 2, 411, 3, 2, 2, 2, 2, 413, 3, 2, 2, 2, 2, 415, 3, 2, 2, 2, 2, 417, 3, 2, 2, 2, 2, 419, 3, 2, 2, 2, 2, 421, 3, 2, 2, 2, 2, 423, 3, 2, 2, 2, 2, 425, 3, 2, 2, 2, 2, 427, 3, 2, 2, 2, 2, 429, 3, 2, 2, 2, 2, 431, 3, 2, 2, 2, 2, 433, 3, 2, 2, 2, 2, 435, 3, 2, 2, 2, 2, 437, 3, 2, 2, 2, 2, 439, 3, 2, 2, 2, 2, 441, 3, 2, 2, 2, 2, 443, 3, 2, 2, 2, 2, 445, 3, 2, 2, 2, 2, 447, 3, 2, 2, 2, 2, 449, 3, 2, 2, 2, 2, 451, 3, 2, 2, 2, 2, 453, 3, 2, 2, 2, 2, 455, 3, 2, 2, 2, 2, 457, 3, 2, 2, 2, 2, 459, 3, 2, 2, 2, 2, 461, 3, 2, 2, 2, 2, 463, 3, 2, 2, 2, 2, 465, 3, 2, 2, 2, 2, 467, 3, 2, 2, 2, 2, 469, 3, 2, 2, 2, 2, 471, 3, 2, 2, 2, 2, 473, 3, 2, 2, 2, 2, 475, 3, 2, 2, 2, 2, 477, 3, 2, 2, 2, 2, 479, 3, 2, 2, 2, 2, 481, 3, 2, 2, 2, 2, 483, 3, 2, 2, 2, 2, 485, 3, 2, 2, 2, 2, 487, 3, 2, 2, 2, 2, 489, 3, 2, 2, 2, 2, 491, 3, 2, 2, 2, 2, 493, 3, 2, 2, 2, 2, 495, 3, 2, 2, 2, 2, 497, 3, 2, 2, 2, 2, 499, 3, 2, 2, 2, 2, 501, 3, 2, 2, 2, 2, 503, 3, 2, 2, 2, 2, 505, 3, 2, 2, 2, 2, 507, 3, 2, 2, 2, 2, 509, 3, 2, 2, 2, 2, 511, 3, 2, 2, 2, 2, 513, 3, 2, 2, 2, 2, 515, 3, 2, 2, 2, 2, 517, 3, 2, 2, 2, 2, 519, 3, 2, 2, 2, 2, 521, 3, 2, 2, 2, 2, 523, 3, 2, 2, 2, 2, 525, 3, 2, 2, 2, 2, 527, 3, 2, 2, 2, 2, 529, 3, 2, 2, 2, 2, 531, 3, 2, 2, 2, 2, 533, 3, 2, 2, 2, 2, 535, 3, 2, 2, 2, 2, 537, 3, 2, 2, 2, 2, 539, 3, 2, 2, 2, 2, 541, 3, 2, 2, 2, 2, 543, 3, 2, 2, 2, 2, 545, 3, 2, 2, 2, 2, 547, 3, 2, 2, 2, 2, 549, 3, 2, 2, 2, 2, 551, 3, 2, 2, 2, 2, 553, 3, 2, 2, 2, 2, 555, 3, 2, 2, 2, 2, 557, 3, 2, 2, 2, 2, 559, 3, 2, 2, 2, 2, 561, 3, 2, 2, 2, 2, 563, 3, 2, 2, 2, 2, 565, 3, 2, 2, 2, 2, 567, 3, 2, 2, 2, 2, 569, 3, 2, 2, 2, 2, 571, 3, 2, 2, 2, 2, 573, 3, 2, 2, 2, 2, 575, 3, 2, 2, 2, 2, 577, 3, 2, 2, 2, 2, 579, 3, 2, 2, 2, 2, 581, 3, 2, 2, 2, 2, 583, 3, 2, 2, 2, 2, 585, 3, 2, 2, 2, 2, 587, 3, 2, 2, 2, 2, 589, 3, 2, 2, 2, 2, 591, 3, 2, 2, 2, 2, 593, 3, 2, 2, 2, 2, 595, 3, 2, 2, 2, 2, 597, 3, 2, 2, 2, 2, 599, 3, 2, 2, 2, 2, 601, 3, 2, 2, 2, 2, 603, 3, 2, 2, 2, 2, 605, 3, 2, 2, 2, 2, 607, 3, 2, 2, 2, 2, 609, 3, 2, 2, 2, 2, 611, 3, 2, 2, 2, 2, 613, 3, 2, 2, 2, 2, 615, 3, 2, 2, 2, 2, 617, 3, 2, 2, 2, 2, 619, 3, 2, 2, 2, 2, 621, 3, 2, 2, 2, 2, 623, 3, 2, 2, 2, 2, 625, 3, 2, 2, 2, 2, 627, 3, 2, 2, 2, 2, 629, 3, 2, 2, 2, 2, 631, 3, 2, 2, 2, 2, 633, 3, 2, 2, 2, 2, 635, 3, 2, 2, 2, 2, 637, 3, 2, 2, 2, 2, 639, 3, 2, 2, 2, 2, 641, 3, 2, 2, 2, 2, 643, 3, 2, 2, 2, 2, 645, 3, 2, 2, 2, 2, 647, 3, 2, 2, 2, 2, 649, 3, 2, 2, 2, 2, 651, 3, 2, 2, 2, 2, 653, 3, 2, 2, 2, 2, 655, 3, 2, 2, 2, 2, 657, 3, 2, 2, 2, 2, 659, 3, 2, 2, 2, 2, 661, 3, 2, 2, 2, 2, 663, 3, 2, 2, 2, 2, 665, 3, 2, 2, 2, 2, 667, 3, 2, 2, 2, 2, 669, 3, 2, 2, 2, 2, 671, 3, 2, 2, 2, 2, 673, 3, 2, 2, 2, 2, 675, 3, 2, 2, 2, 2, 677, 3, 2, 2, 2, 2, 679, 3, 2, 2, 2, 2, 681, 3, 2, 2, 2, 2, 683, 3, 2, 2, 2, 2, 685, 3, 2, 2, 2, 2, 687, 3, 2, 2, 2, 2, 689, 3, 2, 2, 2, 2, 691, 3, 2, 2, 2, 2, 693, 3, 2, 2, 2, 2, 695, 3, 2, 2, 2, 2, 697, 3, 2, 2, 2, 2, 699, 3, 2, 2, 2, 2, 701, 3, 2, 2, 2, 2, 703, 3, 2, 2, 2, 2, 705, 3, 2, 2, 2, 2, 707, 3, 2, 2, 2, 2, 709, 3, 2, 2, 2, 2, 711, 3, 2, 2, 2, 2, 713, 3, 2, 2, 2, 2, 715, 3, 2, 2, 2, 2, 717, 3, 2, 2, 2, 2, 719, 3, 2, 2, 2, 2, 721, 3, 2, 2, 2, 2, 723, 3, 2, 2, 2, 2, 725, 3, 2, 2, 2, 2, 727, 3, 2, 2, 2, 2, 729, 3, 2, 2, 2, 2, 731, 3, 2, 2, 2, 2, 733, 3, 2, 2, 2, 2, 735, 3, 2, 2, 2, 2, 737, 3, 2, 2, 2, 2, 739, 3, 2, 2, 2, 2, 741, 3, 2, 2, 2, 2, 743, 3, 2, 2, 2, 2, 745, 3, 2, 2, 2, 2, 747, 3, 2, 2, 2, 2, 749, 3, 2, 2, 2, 2, 751, 3, 2, 2, 2, 2, 753, 3, 2, 2, 2, 2, 755, 3, 2, 2, 2, 2, 757, 3, 2, 2, 2, 2, 759, 3, 2, 2, 2, 2, 761, 3, 2, 2, 2, 2, 763, 3, 2, 2, 2, 2, 765, 3, 2, 2, 2, 2, 767, 3, 2, 2, 2, 2, 769, 3, 2, 2, 2, 2, 771, 3, 2, 2, 2, 2, 773, 3, 2, 2, 2, 2, 775, 3, 2, 2, 2, 2, 777, 3, 2, 2, 2, 2, 779, 3, 2, 2, 2, 2, 781, 3, 2, 2, 2, 2, 783, 3, 2, 2, 2, 2, 785, 3, 2, 2, 2, 2, 787, 3, 2, 2, 2, 2, 789, 3, 2, 2, 2, 2, 791, 3, 2, 2, 2, 2, 793, 3, 2, 2, 2, 2, 795, 3, 2, 2, 2, 2, 797, 3, 2, 2, 2, 2, 799, 3, 2, 2, 2, 2, 801, 3, 2, 2, 2, 2, 803, 3, 2, 2, 2, 2, 805, 3, 2, 2, 2, 2, 807, 3, 2, 2, 2, 2, 809, 3, 2, 2, 2, 2, 811, 3, 2, 2, 2, 2, 813, 3, 2, 2, 2, 2, 815, 3, 2, 2, 2, 2, 817, 3, 2, 2, 2, 2, 819, 3, 2, 2, 2, 2, 821, 3, 2, 2, 2, 2, 823, 3, 2, 2, 2, 2, 825, 3, 2, 2, 2, 2, 827, 3, 2, 2, 2, 2, 829, 3, 2, 2, 2, 2, 831, 3, 2, 2, 2, 2, 833, 3, 2, 2, 2, 2, 835, 3, 2, 2, 2, 2, 837, 3, 2, 2, 2, 2, 839, 3, 2, 2, 2, 2, 841, 3, 2, 2, 2, 2, 843, 3, 2, 2, 2, 2, 845, 3, 2, 2, 2, 2, 847, 3, 2, 2, 2, 2, 849, 3, 2, 2, 2, 2, 851, 3, 2, 2, 2, 2, 853, 3, 2, 2, 2, 2, 855, 3, 2, 2, 2, 2, 857, 3, 2, 2, 2, 2, 859, 3, 2, 2, 2, 2, 861, 3, 2, 2, 2, 2, 863, 3, 2, 2, 2, 2, 865, 3, 2, 2, 2, 2, 867, 3, 2, 2, 2, 2, 869, 3, 2, 2, 2, 2, 871, 3, 2, 2, 2, 2, 873, 3, 2, 2, 2, 2, 875, 3, 2, 2, 2, 2, 877, 3, 2, 2, 2, 2, 879, 3, 2, 2, 2, 2, 881, 3, 2, 2, 2, 2, 883, 3, 2, 2, 2, 2, 885, 3, 2, 2, 2, 2, 887, 3, 2, 2, 2, 2, 889, 3, 2, 2, 2, 2, 891, 3, 2, 2, 2, 2, 893, 3, 2, 2, 2, 2, 895, 3, 2, 2, 2, 2, 897, 3, 2, 2, 2, 2, 899, 3, 2, 2, 2, 2, 901, 3, 2, 2, 2, 2, 903, 3, 2, 2, 2, 2, 905, 3, 2, 2, 2, 2, 907, 3, 2, 2, 2, 2, 909, 3, 2, 2, 2, 2, 911, 3, 2, 2, 2, 2, 913, 3, 2, 2, 2, 2, 915, 3, 2, 2, 2, 2, 917, 3, 2, 2, 2, 2, 919, 3, 2, 2, 2, 2, 921, 3, 2, 2, 2, 2, 923, 3, 2, 2, 2, 2, 925, 3, 2, 2, 2, 2, 927, 3, 2, 2, 2, 2, 929, 3, 2, 2, 2, 2, 931, 3, 2, 2, 2, 2, 933, 3, 2, 2, 2, 2, 935, 3, 2, 2, 2, 2, 937, 3, 2, 2, 2, 2, 939, 3, 2, 2, 2, 2, 941, 3, 2, 2, 2, 2, 943, 3, 2, 2, 2, 2, 945, 3, 2, 2, 2, 2, 947, 3, 2, 2, 2, 2, 949, 3, 2, 2, 2, 2, 951, 3, 2, 2, 2, 2, 953, 3, 2, 2, 2, 2, 955, 3, 2, 2, 2, 2, 957, 3, 2, 2, 2, 2, 959, 3, 2, 2, 2, 2, 961, 3, 2, 2, 2, 2, 963, 3, 2, 2, 2, 2, 965, 3, 2, 2, 2, 2, 967, 3, 2, 2, 2, 2, 969, 3, 2, 2, 2, 2, 971, 3, 2, 2, 2, 2, 973, 3, 2, 2, 2, 2, 975, 3, 2, 2, 2, 2, 977, 3, 2, 2, 2, 2, 979, 3, 2, 2, 2, 2, 981, 3, 2, 2, 2, 2, 983, 3, 2, 2, 2, 2, 985, 3, 2, 2, 2, 2, 987, 3, 2, 2, 2, 2, 989, 3, 2, 2, 2, 2, 991, 3, 2, 2, 2, 2, 993, 3, 2, 2, 2, 2, 995, 3, 2, 2, 2, 2, 997, 3, 2, 2, 2, 2, 999, 3, 2, 2, 2, 2, 1001, 3, 2, 2, 2, 2, 1003, 3, 2, 2, 2, 2, 1005, 3, 2, 2, 2, 2, 1007, 3, 2, 2, 2, 2, 1009, 3, 2, 2, 2, 2, 1011, 3, 2, 2, 2, 2, 1013, 3, 2, 2, 2, 2, 1015, 3, 2, 2, 2, 2, 1017, 3, 2, 2, 2, 2, 1019, 3, 2, 2, 2, 2, 1021, 3, 2, 2, 2, 2, 1023, 3, 2, 2, 2, 2, 1025, 3, 2, 2, 2, 2, 1027, 3, 2, 2, 2, 2, 1029, 3, 2, 2, 2, 2, 1031, 3, 2, 2, 2, 2, 1033, 3, 2, 2, 2, 2, 1035, 3, 2, 2, 2, 2, 1037, 3, 2, 2, 2, 2, 1039, 3, 2, 2, 2, 2, 1041, 3, 2, 2, 2, 2, 1043, 3, 2, 2, 2, 2, 1045, 3, 2, 2, 2, 2, 1047, 3, 2, 2, 2, 2, 1049, 3, 2, 2, 2, 2, 1051, 3, 2, 2, 2, 2, 1053, 3, 2, 2, 2, 2, 1055, 3, 2, 2, 2, 2, 1057, 3, 2, 2, 2, 2, 1059, 3, 2, 2, 2, 2, 1061, 3, 2, 2, 2, 2, 1063, 3, 2, 2, 2, 2, 1065, 3, 2, 2, 2, 2, 1067, 3, 2, 2, 2, 2, 1069, 3, 2, 2, 2, 2, 1071, 3, 2, 2, 2, 2, 1073, 3, 2, 2, 2, 2, 1075, 3, 2, 2, 2, 2, 1077, 3, 2, 2, 2, 2, 1079, 3, 2, 2, 2, 2, 1081, 3, 2, 2, 2, 2, 1083, 3, 2, 2, 2, 2, 1085, 3, 2, 2, 2, 2, 1087, 3, 2, 2, 2, 2, 1089, 3, 2, 2, 2, 2, 1091, 3, 2, 2, 2, 2, 1093, 3, 2, 2, 2, 2, 1095, 3, 2, 2, 2, 2, 1097, 3, 2, 2, 2, 2, 1099, 3, 2, 2, 2, 2, 1101, 3, 2, 2, 2, 2, 1103, 3, 2, 2, 2, 2, 1105, 3, 2, 2, 2, 2, 1107, 3, 2, 2, 2, 2, 1109, 3, 2, 2, 2, 2, 1111, 3, 2, 2, 2, 2, 1113, 3, 2, 2, 2, 2, 1115, 3, 2, 2, 2, 2, 1117, 3, 2, 2, 2, 2, 1119, 3, 2, 2, 2, 2, 1121, 3, 2, 2, 2, 2, 1123, 3, 2, 2, 2, 2, 1125, 3, 2, 2, 2, 2, 1127, 3, 2, 2, 2, 2, 1129, 3, 2, 2, 2, 2, 1131, 3, 2, 2, 2, 2, 1133, 3, 2, 2, 2, 2, 1135, 3, 2, 2, 2, 2, 1137, 3, 2, 2, 2, 2, 1139, 3, 2, 2, 2, 2, 1141, 3, 2, 2, 2, 2, 1143, 3, 2, 2, 2, 2, 1145, 3, 2, 2, 2, 2, 1147, 3, 2, 2, 2, 2, 1149, 3, 2, 2, 2, 2, 1151, 3, 2, 2, 2, 2, 1153, 3, 2, 2, 2, 2, 1155, 3, 2, 2, 2, 2, 1157, 3, 2, 2, 2, 2, 1159, 3, 2, 2, 2, 2, 1161, 3, 2, 2, 2, 2, 1163, 3, 2, 2, 2, 2, 1165, 3, 2, 2, 2, 2, 1167, 3, 2, 2, 2, 2, 1169, 3, 2, 2, 2, 2, 1171, 3, 2, 2, 2, 2, 1173, 3, 2, 2, 2, 2, 1175, 3, 2, 2, 2, 2, 1177, 3, 2, 2, 2, 2, 1179, 3, 2, 2, 2, 2, 1181, 3, 2, 2, 2, 2, 1183, 3, 2, 2, 2, 2, 1185, 3, 2, 2, 2, 2, 1187, 3, 2, 2, 2, 2, 1189, 3, 2, 2, 2, 2, 1191, 3, 2, 2, 2, 2, 1193, 3, 2, 2, 2, 2, 1195, 3, 2, 2, 2, 2, 1197, 3, 2, 2, 2, 2, 1199, 3, 2, 2, 2, 2, 1201, 3, 2, 2, 2, 2, 1203, 3, 2, 2, 2, 2, 1205, 3, 2, 2, 2, 2, 1207, 3, 2, 2, 2, 2, 1209, 3, 2, 2, 2, 2, 1211, 3, 2, 2, 2, 2, 1213, 3, 2, 2, 2, 2, 1215, 3, 2, 2, 2, 2, 1217, 3, 2, 2, 2, 2, 1219, 3, 2, 2, 2, 2, 1221, 3, 2, 2, 2, 2, 1223, 3, 2, 2, 2, 2, 1225, 3, 2, 2, 2, 2, 1227, 3, 2, 2, 2, 2, 1229, 3, 2, 2, 2, 2, 1231, 3, 2, 2, 2, 2, 1233, 3, 2, 2, 2, 2, 1235, 3, 2, 2, 2, 2, 1237, 3, 2, 2, 2, 2, 1239, 3, 2, 2, 2, 2, 1241, 3, 2, 2, 2, 2, 1243, 3, 2, 2, 2, 2, 1245, 3, 2, 2, 2, 2, 1247, 3, 2, 2, 2, 2, 1249, 3, 2, 2, 2, 2, 1251, 3, 2, 2, 2, 2, 1253, 3, 2, 2, 2, 2, 1255, 3, 2, 2, 2, 2, 1257, 3, 2, 2, 2, 2, 1259, 3, 2, 2, 2, 2, 1261, 3, 2, 2, 2, 2, 1263, 3, 2, 2, 2, 2, 1265, 3, 2, 2, 2, 2, 1267, 3, 2, 2, 2, 2, 1269, 3, 2, 2, 2, 2, 1271, 3, 2, 2, 2, 2, 1273, 3, 2, 2, 2, 2, 1275, 3, 2, 2, 2, 2, 1277, 3, 2, 2, 2, 2, 1279, 3, 2, 2, 2, 2, 1281, 3, 2, 2, 2, 2, 1283, 3, 2, 2, 2, 2, 1285, 3, 2, 2, 2, 2, 1287, 3, 2, 2, 2, 2, 1289, 3, 2, 2, 2, 2, 1291, 3, 2, 2, 2, 2, 1293, 3, 2, 2, 2, 2, 1295, 3, 2, 2, 2, 2, 1297, 3, 2, 2, 2, 2, 1299, 3, 2, 2, 2, 2, 1301, 3, 2, 2, 2, 2, 1303, 3, 2, 2, 2, 2, 1305, 3, 2, 2, 2, 2, 1307, 3, 2, 2, 2, 2, 1309, 3, 2, 2, 2, 2, 1311, 3, 2, 2, 2, 2, 1313, 3, 2, 2, 2, 2, 1315, 3, 2, 2, 2, 2, 1317, 3, 2, 2, 2, 2, 1319, 3, 2, 2, 2, 2, 1321, 3, 2, 2, 2, 2, 1323, 3, 2, 2, 2, 2, 1325, 3, 2, 2, 2, 2, 1327, 3, 2, 2, 2, 2, 1329, 3, 2, 2, 2, 2, 1331, 3, 2, 2, 2, 2, 1333, 3, 2, 2, 2, 2, 1335, 3, 2, 2, 2, 2, 1337, 3, 2, 2, 2, 2, 1339, 3, 2, 2, 2, 2, 1341, 3, 2, 2, 2, 2, 1343, 3, 2, 2, 2, 2, 1345, 3, 2, 2, 2, 2, 1347, 3, 2, 2, 2, 2, 1349, 3, 2, 2, 2, 2, 1351, 3, 2, 2, 2, 2, 1353, 3, 2, 2, 2, 2, 1355, 3, 2, 2, 2, 2, 1357, 3, 2, 2, 2, 2, 1359, 3, 2, 2, 2, 2, 1361, 3, 2, 2, 2, 2, 1363, 3, 2, 2, 2, 2, 1365, 3, 2, 2, 2, 2, 1367, 3, 2, 2, 2, 2, 1369, 3, 2, 2, 2, 2, 1371, 3, 2, 2, 2, 2, 1373, 3, 2, 2, 2, 2, 1375, 3, 2, 2, 2, 2, 1377, 3, 2, 2, 2, 2, 1379, 3, 2, 2, 2, 2, 1381, 3, 2, 2, 2, 2, 1383, 3, 2, 2, 2, 2, 1385, 3, 2, 2, 2, 2, 1387, 3, 2, 2, 2, 2, 1389, 3, 2, 2, 2, 2, 1391, 3, 2, 2, 2, 2, 1393, 3, 2, 2, 2, 2, 1395, 3, 2, 2, 2, 2, 1397, 3, 2, 2, 2, 2, 1399, 3, 2, 2, 2, 2, 1401, 3, 2, 2, 2, 2, 1403, 3, 2, 2, 2, 2, 1405, 3, 2, 2, 2, 2, 1407, 3, 2, 2, 2, 2, 1409, 3, 2, 2, 2, 2, 1411, 3, 2, 2, 2, 2, 1413, 3, 2, 2, 2, 2, 1415, 3, 2, 2, 2, 2, 1417, 3, 2, 2, 2, 2, 1419, 3, 2, 2, 2, 2, 1421, 3, 2, 2, 2, 2, 1423, 3, 2, 2, 2, 2, 1425, 3, 2, 2, 2, 2, 1427, 3, 2, 2, 2, 2, 1429, 3, 2, 2, 2, 2, 1431, 3, 2, 2, 2, 2, 1433, 3, 2, 2, 2, 2, 1435, 3, 2, 2, 2, 2, 1437, 3, 2, 2, 2, 2, 1439, 3, 2, 2, 2, 2, 1441, 3, 2, 2, 2, 2, 1443, 3, 2, 2, 2, 2, 1445, 3, 2, 2, 2, 2, 1447, 3, 2, 2, 2, 2, 1449, 3, 2, 2, 2, 2, 1451, 3, 2, 2, 2, 2, 1453, 3, 2, 2, 2, 2, 1455, 3, 2, 2, 2, 2, 1457, 3, 2, 2, 2, 2, 1459, 3, 2, 2, 2, 2, 1461, 3, 2, 2, 2, 2, 1463, 3, 2, 2, 2, 2, 1465, 3, 2, 2, 2, 2, 1467, 3, 2, 2, 2, 2, 1469, 3, 2, 2, 2, 2, 1471, 3, 2, 2, 2, 2, 1473, 3, 2, 2, 2, 2, 1475, 3, 2, 2, 2, 2, 1477, 3, 2, 2, 2, 2, 1479, 3, 2, 2, 2, 2, 1481, 3, 2, 2, 2, 2, 1483, 3, 2, 2, 2, 2, 1485, 3, 2, 2, 2, 2, 1487, 3, 2, 2, 2, 2, 1489, 3, 2, 2, 2, 2, 1491, 3, 2, 2, 2, 2, 1493, 3, 2, 2, 2, 2, 1495, 3, 2, 2, 2, 2, 1497, 3, 2, 2, 2, 2, 1499, 3, 2, 2, 2, 2, 1501, 3, 2, 2, 2, 2, 1503, 3, 2, 2, 2, 2, 1505, 3, 2, 2, 2, 2, 1507, 3, 2, 2, 2, 2, 1509, 3, 2, 2, 2, 2, 1511, 3, 2, 2, 2, 2, 1513, 3, 2, 2, 2, 2, 1515, 3, 2, 2, 2, 2, 1517, 3, 2, 2, 2, 2, 1519, 3, 2, 2, 2, 2, 1521, 3, 2, 2, 2, 2, 1523, 3, 2, 2, 2, 2, 1525, 3, 2, 2, 2, 2, 1527, 3, 2, 2, 2, 2, 1529, 3, 2, 2, 2, 2, 1531, 3, 2, 2, 2, 2, 1533, 3, 2, 2, 2, 2, 1535, 3, 2, 2, 2, 2, 1537, 3, 2, 2, 2, 2, 1539, 3, 2, 2, 2, 2, 1541, 3, 2, 2, 2, 2, 1543, 3, 2, 2, 2, 2, 1545, 3, 2, 2, 2, 2, 1547, 3, 2, 2, 2, 2, 1549, 3, 2, 2, 2, 2, 1551, 3, 2, 2, 2, 2, 1553, 3, 2, 2, 2, 2, 1555, 3, 2, 2, 2, 2, 1557, 3, 2, 2, 2, 2, 1559, 3, 2, 2, 2, 2, 1561, 3, 2, 2, 2, 2, 1563, 3, 2, 2, 2, 2, 1565, 3, 2, 2, 2, 2, 1567, 3, 2, 2, 2, 2, 1569, 3, 2, 2, 2, 2, 1571, 3, 2, 2, 2, 2, 1573, 3, 2, 2, 2, 2, 1575, 3, 2, 2, 2, 2, 1577, 3, 2, 2, 2, 2, 1579, 3, 2, 2, 2, 2, 1581, 3, 2, 2, 2, 2, 1583, 3, 2, 2, 2, 2, 1585, 3, 2, 2, 2, 2, 1587, 3, 2, 2, 2, 2, 1589, 3, 2, 2, 2, 2, 1591, 3, 2, 2, 2, 2, 1593, 3, 2, 2, 2, 2, 1595, 3, 2, 2, 2, 2, 1597, 3, 2, 2, 2, 2, 1599, 3, 2, 2, 2, 2, 1601, 3, 2, 2, 2, 2, 1603, 3, 2, 2, 2, 2, 1605, 3, 2, 2, 2, 2, 1607, 3, 2, 2, 2, 2, 1609, 3, 2, 2, 2, 2, 1611, 3, 2, 2, 2, 2, 1613, 3, 2, 2, 2, 2, 1615, 3, 2, 2, 2, 2, 1617, 3, 2, 2, 2, 2, 1619, 3, 2, 2, 2, 2, 1621, 3, 2, 2, 2, 2, 1623, 3, 2, 2, 2, 2, 1625, 3, 2, 2, 2, 2, 1627, 3, 2, 2, 2, 2, 1629, 3, 2, 2, 2, 2, 1631, 3, 2, 2, 2, 2, 1633, 3, 2, 2, 2, 2, 1635, 3, 2, 2, 2, 2, 1637, 3, 2, 2, 2, 2, 1639, 3, 2, 2, 2, 2, 1641, 3, 2, 2, 2, 2, 1643, 3, 2, 2, 2, 2, 1645, 3, 2, 2, 2, 2, 1647, 3, 2, 2, 2, 2, 1649, 3, 2, 2, 2, 2, 1651, 3, 2, 2, 2, 2, 1653, 3, 2, 2, 2, 2, 1655, 3, 2, 2, 2, 2, 1657, 3, 2, 2, 2, 2, 1659, 3, 2, 2, 2, 2, 1661, 3, 2, 2, 2, 2, 1663, 3, 2, 2, 2, 2, 1665, 3, 2, 2, 2, 2, 1667, 3, 2, 2, 2, 2, 1669, 3, 2, 2, 2, 2, 1671, 3, 2, 2, 2, 2, 1673, 3, 2, 2, 2, 2, 1675, 3, 2, 2, 2, 2, 1677, 3, 2, 2, 2, 2, 1679, 3, 2, 2, 2, 2, 1685, 3, 2, 2, 2, 3, 1695, 3, 2, 2, 2, 5, 1702, 3, 2, 2, 2, 7, 1706, 3, 2, 2, 2, 9, 1710, 3, 2, 2, 2, 11, 1714, 3, 2, 2, 2, 13, 1732, 3, 2, 2, 2, 15, 1758, 3, 2, 2, 2, 17, 1782, 3, 2, 2, 2, 19, 1788, 3, 2, 2, 2, 21, 1792, 3, 2, 2, 2, 23, 1802, 3, 2, 2, 2, 25, 1806, 3, 2, 2, 2, 27, 1813, 3, 2, 2, 2, 29, 1825, 3, 2, 2, 2, 31, 1828, 3, 2, 2, 2, 33, 1832, 3, 2, 2, 2, 35, 1843, 3, 2, 2, 2, 37, 1863, 3, 2, 2, 2, 39, 1877, 3, 2, 2, 2, 41, 1892, 3, 2, 2, 2, 43, 1920, 3, 2, 2, 2, 45, 1930, 3, 2, 2, 2, 47, 1948, 3, 2, 2, 2, 49, 1950, 3, 2, 2, 2, 51, 1957, 3, 2, 2, 2, 53, 1964, 3, 2, 2, 2, 55, 1970, 3, 2, 2, 2, 57, 1978, 3, 2, 2, 2, 59, 1984, 3, 2, 2, 2, 61, 1994, 3, 2, 2, 2, 63, 2013, 3, 2, 2, 2, 65, 2019, 3, 2, 2, 2, 67, 2026, 3, 2, 2, 2, 69, 2033, 3, 2, 2, 2, 71, 2045, 3, 2, 2, 2, 73, 2050, 3, 2, 2, 2, 75, 2053, 3, 2, 2, 2, 77, 2059, 3, 2, 2, 2, 79, 2066, 3, 2, 2, 2, 81, 2074, 3, 2, 2, 2, 83, 2079, 3, 2, 2, 2, 85, 2091, 3, 2, 2, 2, 87, 2103, 3, 2, 2, 2, 89, 2111, 3, 2, 2, 2, 91, 2117, 3, 2, 2, 2, 93, 2128, 3, 2, 2, 2, 95, 2141, 3, 2, 2, 2, 97, 2158, 3, 2, 2, 2, 99, 2178, 3, 2, 2, 2, 101, 2184, 3, 2, 2, 2, 103, 2192, 3, 2, 2, 2, 105, 2202, 3, 2, 2, 2, 107, 2211, 3, 2, 2, 2, 109, 2219, 3, 2, 2, 2, 111, 2226, 3, 2, 2, 2, 113, 2238, 3, 2, 2, 2, 115, 2245, 3, 2, 2, 2, 117, 2253, 3, 2, 2, 2, 119, 2267, 3, 2, 2, 2, 121, 2278, 3, 2, 2, 2, 123, 2290, 3, 2, 2, 2, 125, 2299, 3, 2, 2, 2, 127, 2313, 3, 2, 2, 2, 129, 2321, 3, 2, 2, 2, 131, 2330, 3, 2, 2, 2, 133, 2351, 3, 2, 2, 2, 135, 2360, 3, 2, 2, 2, 137, 2374, 3, 2, 2, 2, 139, 2391, 3, 2, 2, 2, 141, 2401, 3, 2, 2, 2, 143, 2411, 3, 2, 2, 2, 145, 2418, 3, 2, 2, 2, 147, 2424, 3, 2, 2, 2, 149, 2432, 3, 2, 2, 2, 151, 2445, 3, 2, 2, 2, 153, 2458, 3, 2, 2, 2, 155, 2476, 3, 2, 2, 2, 157, 2489, 3, 2, 2, 2, 159, 2496, 3, 2, 2, 2, 161, 2502, 3, 2, 2, 2, 163, 2519, 3, 2, 2, 2, 165, 2531, 3, 2, 2, 2, 167, 2540, 3, 2, 2, 2, 169, 2559, 3, 2, 2, 2, 171, 2564, 3, 2, 2, 2, 173, 2575, 3, 2, 2, 2, 175, 2583, 3, 2, 2, 2, 177, 2591, 3, 2, 2, 2, 179, 2608, 3, 2, 2, 2, 181, 2623, 3, 2, 2, 2, 183, 2630, 3, 2, 2, 2, 185, 2635, 3, 2, 2, 2, 187, 2640, 3, 2, 2, 2, 189, 2652, 3, 2, 2, 2, 191, 2665, 3, 2, 2, 2, 193, 2670, 3, 2, 2, 2, 195, 2679, 3, 2, 2, 2, 197, 2691, 3, 2, 2, 2, 199, 2698, 3, 2, 2, 2, 201, 2701, 3, 2, 2, 2, 203, 2704, 3, 2, 2, 2, 205, 2709, 3, 2, 2, 2, 207, 2721, 3, 2, 2, 2, 209, 2726, 3, 2, 2, 2, 211, 2731, 3, 2, 2, 2, 213, 2739, 3, 2, 2, 2, 215, 2743, 3, 2, 2, 2, 217, 2752, 3, 2, 2, 2, 219, 2759, 3, 2, 2, 2, 221, 2766, 3, 2, 2, 2, 223, 2772, 3, 2, 2, 2, 225, 2778, 3, 2, 2, 2, 227, 2791, 3, 2, 2, 2, 229, 2812, 3, 2, 2, 2, 231, 2819, 3, 2, 2, 2, 233, 2835, 3, 2, 2, 2, 235, 2845, 3, 2, 2, 2, 237, 2852, 3, 2, 2, 2, 239, 2863, 3, 2, 2, 2, 241, 2868, 3, 2, 2, 2, 243, 2878, 3, 2, 2, 2, 245, 2887, 3, 2, 2, 2, 247, 2903, 3, 2, 2, 2, 249, 2912, 3, 2, 2, 2, 251, 2934, 3, 2, 2, 2, 253, 2941, 3, 2, 2, 2, 255, 2947, 3, 2, 2, 2, 257, 2952, 3, 2, 2, 2, 259, 2961, 3, 2, 2, 2, 261, 2972, 3, 2, 2, 2, 263, 2986, 3, 2, 2, 2, 265, 2990, 3, 2, 2, 2, 267, 3000, 3, 2, 2, 2, 269, 3030, 3, 2, 2, 2, 271, 3038, 3, 2, 2, 2, 273, 3047, 3, 2, 2, 2, 275, 3061, 3, 2, 2, 2, 277, 3066, 3, 2, 2, 2, 279, 3071, 3, 2, 2, 2, 281, 3080, 3, 2, 2, 2, 283, 3084, 3, 2, 2, 2, 285, 3089, 3, 2, 2, 2, 287, 3098, 3, 2, 2, 2, 289, 3104, 3, 2, 2, 2, 291, 3110, 3, 2, 2, 2, 293, 3117, 3, 2, 2, 2, 295, 3124, 3, 2, 2, 2, 297, 3143, 3, 2, 2, 2, 299, 3152, 3, 2, 2, 2, 301, 3164, 3, 2, 2, 2, 303, 3180, 3, 2, 2, 2, 305, 3183, 3, 2, 2, 2, 307, 3187, 3, 2, 2, 2, 309, 3190, 3, 2, 2, 2, 311, 3198, 3, 2, 2, 2, 313, 3208, 3, 2, 2, 2, 315, 3214, 3, 2, 2, 2, 317, 3223, 3, 2, 2, 2, 319, 3228, 3, 2, 2, 2, 321, 3234, 3, 2, 2, 2, 323, 3241, 3, 2, 2, 2, 325, 3249, 3, 2, 2, 2, 327, 3259, 3, 2, 2, 2, 329, 3265, 3, 2, 2, 2, 331, 3278, 3, 2, 2, 2, 333, 3386, 3, 2, 2, 2, 335, 3389, 3, 2, 2, 2, 337, 3396, 3, 2, 2, 2, 339, 3401, 3, 2, 2, 2, 341, 3410, 3, 2, 2, 2, 343, 3414, 3, 2, 2, 2, 345, 3423, 3, 2, 2, 2, 347, 3447, 3, 2, 2, 2, 349, 3452, 3, 2, 2, 2, 351, 3461, 3, 2, 2, 2, 353, 3466, 3, 2, 2, 2, 355, 3474, 3, 2, 2, 2, 357, 3483, 3, 2, 2, 2, 359, 3488, 3, 2, 2, 2, 361, 3495, 3, 2, 2, 2, 363, 3501, 3, 2, 2, 2, 365, 3513, 3, 2, 2, 2, 367, 3527, 3, 2, 2, 2, 369, 3532, 3, 2, 2, 2, 371, 3551, 3, 2, 2, 2, 373, 3555, 3, 2, 2, 2, 375, 3563, 3, 2, 2, 2, 377, 3570, 3, 2, 2, 2, 379, 3581, 3, 2, 2, 2, 381, 3593, 3, 2, 2, 2, 383, 3602, 3, 2, 2, 2, 385, 3623, 3, 2, 2, 2, 387, 3638, 3, 2, 2, 2, 389, 3647, 3, 2, 2, 2, 391, 3677, 3, 2, 2, 2, 393, 3694, 3, 2, 2, 2, 395, 3704, 3, 2, 2, 2, 397, 3711, 3, 2, 2, 2, 399, 3733, 3, 2, 2, 2, 401, 3739, 3, 2, 2, 2, 403, 3758, 3, 2, 2, 2, 405, 3779, 3, 2, 2, 2, 407, 3788, 3, 2, 2, 2, 409, 3795, 3, 2, 2, 2, 411, 3807, 3, 2, 2, 2, 413, 3816, 3, 2, 2, 2, 415, 3826, 3, 2, 2, 2, 417, 3834, 3, 2, 2, 2, 419, 3843, 3, 2, 2, 2, 421, 3850, 3, 2, 2, 2, 423, 3863, 3, 2, 2, 2, 425, 3868, 3, 2, 2, 2, 427, 3877, 3, 2, 2, 2, 429, 3884, 3, 2, 2, 2, 431, 3893, 3, 2, 2, 2, 433, 3905, 3, 2, 2, 2, 435, 3920, 3, 2, 2, 2, 437, 3934, 3, 2, 2, 2, 439, 3938, 3, 2, 2, 2, 441, 3951, 3, 2, 2, 2, 443, 3956, 3, 2, 2, 2, 445, 3961, 3, 2, 2, 2, 447, 3968, 3, 2, 2, 2, 449, 3971, 3, 2, 2, 2, 451, 3975, 3, 2, 2, 2, 453, 3983, 3, 2, 2, 2, 455, 3996, 3, 2, 2, 2, 457, 3999, 3, 2, 2, 2, 459, 4010, 3, 2, 2, 2, 461, 4015, 3, 2, 2, 2, 463, 4030, 3, 2, 2, 2, 465, 4040, 3, 2, 2, 2, 467, 4051, 3, 2, 2, 2, 469, 4059, 3, 2, 2, 2, 471, 4066, 3, 2, 2, 2, 473, 4069, 3, 2, 2, 2, 475, 4075, 3, 2, 2, 2, 477, 4081, 3, 2, 2, 2, 479, 4086, 3, 2, 2, 2, 481, 4091, 3, 2, 2, 2, 483, 4102, 3, 2, 2, 2, 485, 4110, 3, 2, 2, 2, 487, 4119, 3, 2, 2, 2, 489, 4127, 3, 2, 2, 2, 491, 4142, 3, 2, 2, 2, 493, 4150, 3, 2, 2, 2, 495, 4157, 3, 2, 2, 2, 497, 4166, 3, 2, 2, 2, 499, 4172, 3, 2, 2, 2, 501, 4177, 3, 2, 2, 2, 503, 4186, 3, 2, 2, 2, 505, 4193, 3, 2, 2, 2, 507, 4203, 3, 2, 2, 2, 509, 4213, 3, 2, 2, 2, 511, 4221, 3, 2, 2, 2, 513, 4227, 3, 2, 2, 2, 515, 4232, 3, 2, 2, 2, 517, 4242, 3, 2, 2, 2, 519, 4250, 3, 2, 2, 2, 521, 4257, 3, 2, 2, 2, 523, 4264, 3, 2, 2, 2, 525, 4266, 3, 2, 2, 2, 527, 4276, 3, 2, 2, 2, 529, 4280, 3, 2, 2, 2, 531, 4285, 3, 2, 2, 2, 533, 4294, 3, 2, 2, 2, 535, 4316, 3, 2, 2, 2, 537, 4328, 3, 2, 2, 2, 539, 4339, 3, 2, 2, 2, 541, 4350, 3, 2, 2, 2, 543, 4371, 3, 2, 2, 2, 545, 4398, 3, 2, 2, 2, 547, 4410, 3, 2, 2, 2, 549, 4419, 3, 2, 2, 2, 551, 4425, 3, 2, 2, 2, 553, 4433, 3, 2, 2, 2, 555, 4441, 3, 2, 2, 2, 557, 4450, 3, 2, 2, 2, 559, 4457, 3, 2, 2, 2, 561, 4468, 3, 2, 2, 2, 563, 4475, 3, 2, 2, 2, 565, 4483, 3, 2, 2, 2, 567, 4490, 3, 2, 2, 2, 569, 4497, 3, 2, 2, 2, 571, 4504, 3, 2, 2, 2, 573, 4510, 3, 2, 2, 2, 575, 4519, 3, 2, 2, 2, 577, 4524, 3, 2, 2, 2, 579, 4533, 3, 2, 2, 2, 581, 4544, 3, 2, 2, 2, 583, 4552, 3, 2, 2, 2, 585, 4561, 3, 2, 2, 2, 587, 4570, 3, 2, 2, 2, 589, 4579, 3, 2, 2, 2, 591, 4588, 3, 2, 2, 2, 593, 4595, 3, 2, 2, 2, 595, 4600, 3, 2, 2, 2, 597, 4605, 3, 2, 2, 2, 599, 4610, 3, 2, 2, 2, 601, 4620, 3, 2, 2, 2, 603, 4627, 3, 2, 2, 2, 605, 4634, 3, 2, 2, 2, 607, 4648, 3, 2, 2, 2, 609, 4655, 3, 2, 2, 2, 611, 4678, 3, 2, 2, 2, 613, 4709, 3, 2, 2, 2, 615, 4733, 3, 2, 2, 2, 617, 4740, 3, 2, 2, 2, 619, 4748, 3, 2, 2, 2, 621, 4763, 3, 2, 2, 2, 623, 4776, 3, 2, 2, 2, 625, 4784, 3, 2, 2, 2, 627, 4797, 3, 2, 2, 2, 629, 4801, 3, 2, 2, 2, 631, 4809, 3, 2, 2, 2, 633, 4818, 3, 2, 2, 2, 635, 4822, 3, 2, 2, 2, 637, 4827, 3, 2, 2, 2, 639, 4836, 3, 2, 2, 2, 641, 4841, 3, 2, 2, 2, 643, 4848, 3, 2, 2, 2, 645, 4862, 3, 2, 2, 2, 647, 4868, 3, 2, 2, 2, 649, 4883, 3, 2, 2, 2, 651, 4897, 3, 2, 2, 2, 653, 4915, 3, 2, 2, 2, 655, 4926, 3, 2, 2, 2, 657, 4932, 3, 2, 2, 2, 659, 4938, 3, 2, 2, 2, 661, 4944, 3, 2, 2, 2, 663, 4952, 3, 2, 2, 2, 665, 4966, 3, 2, 2, 2, 667, 4971, 3, 2, 2, 2, 669, 4979, 3, 2, 2, 2, 671, 4993, 3, 2, 2, 2, 673, 5003, 3, 2, 2, 2, 675, 5015, 3, 2, 2, 2, 677, 5021, 3, 2, 2, 2, 679, 5033, 3, 2, 2, 2, 681, 5038, 3, 2, 2, 2, 683, 5045, 3, 2, 2, 2, 685, 5049, 3, 2, 2, 2, 687, 5058, 3, 2, 2, 2, 689, 5063, 3, 2, 2, 2, 691, 5066, 3, 2, 2, 2, 693, 5070, 3, 2, 2, 2, 695, 5086, 3, 2, 2, 2, 697, 5091, 3, 2, 2, 2, 699, 5103, 3, 2, 2, 2, 701, 5112, 3, 2, 2, 2, 703, 5120, 3, 2, 2, 2, 705, 5129, 3, 2, 2, 2, 707, 5137, 3, 2, 2, 2, 709, 5147, 3, 2, 2, 2, 711, 5153, 3, 2, 2, 2, 713, 5160, 3, 2, 2, 2, 715, 5167, 3, 2, 2, 2, 717, 5175, 3, 2, 2, 2, 719, 5182, 3, 2, 2, 2, 721, 5189, 3, 2, 2, 2, 723, 5200, 3, 2, 2, 2, 725, 5204, 3, 2, 2, 2, 727, 5208, 3, 2, 2, 2, 729, 5213, 3, 2, 2, 2, 731, 5218, 3, 2, 2, 2, 733, 5225, 3, 2, 2, 2, 735, 5233, 3, 2, 2, 2, 737, 5248, 3, 2, 2, 2, 739, 5253, 3, 2, 2, 2, 741, 5264, 3, 2, 2, 2, 743, 5272, 3, 2, 2, 2, 745, 5277, 3, 2, 2, 2, 747, 5283, 3, 2, 2, 2, 749, 5289, 3, 2, 2, 2, 751, 5297, 3, 2, 2, 2, 753, 5302, 3, 2, 2, 2, 755, 5309, 3, 2, 2, 2, 757, 5317, 3, 2, 2, 2, 759, 5325, 3, 2, 2, 2, 761, 5335, 3, 2, 2, 2, 763, 5344, 3, 2, 2, 2, 765, 5363, 3, 2, 2, 2, 767, 5370, 3, 2, 2, 2, 769, 5381, 3, 2, 2, 2, 771, 5388, 3, 2, 2, 2, 773, 5396, 3, 2, 2, 2, 775, 5404, 3, 2, 2, 2, 777, 5412, 3, 2, 2, 2, 779, 5420, 3, 2, 2, 2, 781, 5429, 3, 2, 2, 2, 783, 5435, 3, 2, 2, 2, 785, 5445, 3, 2, 2, 2, 787, 5455, 3, 2, 2, 2, 789, 5491, 3, 2, 2, 2, 791, 5516, 3, 2, 2, 2, 793, 5524, 3, 2, 2, 2, 795, 5542, 3, 2, 2, 2, 797, 5553, 3, 2, 2, 2, 799, 5566, 3, 2, 2, 2, 801, 5580, 3, 2, 2, 2, 803, 5596, 3, 2, 2, 2, 805, 5602, 3, 2, 2, 2, 807, 5613, 3, 2, 2, 2, 809, 5622, 3, 2, 2, 2, 811, 5628, 3, 2, 2, 2, 813, 5639, 3, 2, 2, 2, 815, 5644, 3, 2, 2, 2, 817, 5657, 3, 2, 2, 2, 819, 5668, 3, 2, 2, 2, 821, 5691, 3, 2, 2, 2, 823, 5703, 3, 2, 2, 2, 825, 5726, 3, 2, 2, 2, 827, 5755, 3, 2, 2, 2, 829, 5768, 3, 2, 2, 2, 831, 5772, 3, 2, 2, 2, 833, 5788, 3, 2, 2, 2, 835, 5801, 3, 2, 2, 2, 837, 5808, 3, 2, 2, 2, 839, 5822, 3, 2, 2, 2, 841, 5838, 3, 2, 2, 2, 843, 5846, 3, 2, 2, 2, 845, 5859, 3, 2, 2, 2, 847, 5866, 3, 2, 2, 2, 849, 5882, 3, 2, 2, 2, 851, 5894, 3, 2, 2, 2, 853, 5901, 3, 2, 2, 2, 855, 5921, 3, 2, 2, 2, 857, 5928, 3, 2, 2, 2, 859, 5936, 3, 2, 2, 2, 861, 5942, 3, 2, 2, 2, 863, 5959, 3, 2, 2, 2, 865, 5975, 3, 2, 2, 2, 867, 5984, 3, 2, 2, 2, 869, 5997, 3, 2, 2, 2, 871, 6005, 3, 2, 2, 2, 873, 6016, 3, 2, 2, 2, 875, 6034, 3, 2, 2, 2, 877, 6044, 3, 2, 2, 2, 879, 6064, 3, 2, 2, 2, 881, 6071, 3, 2, 2, 2, 883, 6095, 3, 2, 2, 2, 885, 6103, 3, 2, 2, 2, 887, 6111, 3, 2, 2, 2, 889, 6118, 3, 2, 2, 2, 891, 6124, 3, 2, 2, 2, 893, 6134, 3, 2, 2, 2, 895, 6142, 3, 2, 2, 2, 897, 6146, 3, 2, 2, 2, 899, 6157, 3, 2, 2, 2, 901, 6178, 3, 2, 2, 2, 903, 6189, 3, 2, 2, 2, 905, 6203, 3, 2, 2, 2, 907, 6226, 3, 2, 2, 2, 909, 6241, 3, 2, 2, 2, 911, 6246, 3, 2, 2, 2, 913, 6276, 3, 2, 2, 2, 915, 6284, 3, 2, 2, 2, 917, 6293, 3, 2, 2, 2, 919, 6302, 3, 2, 2, 2, 921, 6311, 3, 2, 2, 2, 923, 6316, 3, 2, 2, 2, 925, 6328, 3, 2, 2, 2, 927, 6340, 3, 2, 2, 2, 929, 6351, 3, 2, 2, 2, 931, 6362, 3, 2, 2, 2, 933, 6388, 3, 2, 2, 2, 935, 6405, 3, 2, 2, 2, 937, 6411, 3, 2, 2, 2, 939, 6430, 3, 2, 2, 2, 941, 6438, 3, 2, 2, 2, 943, 6449, 3, 2, 2, 2, 945, 6460, 3, 2, 2, 2, 947, 6464, 3, 2, 2, 2, 949, 6476, 3, 2, 2, 2, 951, 6481, 3, 2, 2, 2, 953, 6486, 3, 2, 2, 2, 955, 6493, 3, 2, 2, 2, 957, 6508, 3, 2, 2, 2, 959, 6516, 3, 2, 2, 2, 961, 6531, 3, 2, 2, 2, 963, 6540, 3, 2, 2, 2, 965, 6543, 3, 2, 2, 2, 967, 6552, 3, 2, 2, 2, 969, 6560, 3, 2, 2, 2, 971, 6569, 3, 2, 2, 2, 973, 6579, 3, 2, 2, 2, 975, 6585, 3, 2, 2, 2, 977, 6592, 3, 2, 2, 2, 979, 6606, 3, 2, 2, 2, 981, 6622, 3, 2, 2, 2, 983, 6633, 3, 2, 2, 2, 985, 6646, 3, 2, 2, 2, 987, 6673, 3, 2, 2, 2, 989, 6683, 3, 2, 2, 2, 991, 6694, 3, 2, 2, 2, 993, 6700, 3, 2, 2, 2, 995, 6707, 3, 2, 2, 2, 997, 6719, 3, 2, 2, 2, 999, 6728, 3, 2, 2, 2, 1001, 6743, 3, 2, 2, 2, 1003, 6757, 3, 2, 2, 2, 1005, 6765, 3, 2, 2, 2, 1007, 6789, 3, 2, 2, 2, 1009, 6794, 3, 2, 2, 2, 1011, 6807, 3, 2, 2, 2, 1013, 6817, 3, 2, 2, 2, 1015, 6828, 3, 2, 2, 2, 1017, 6837, 3, 2, 2, 2, 1019, 6848, 3, 2, 2, 2, 1021, 6855, 3, 2, 2, 2, 1023, 6861, 3, 2, 2, 2, 1025, 6873, 3, 2, 2, 2, 1027, 6883, 3, 2, 2, 2, 1029, 6889, 3, 2, 2, 2, 1031, 6920, 3, 2, 2, 2, 1033, 6927, 3, 2, 2, 2, 1035, 6934, 3, 2, 2, 2, 1037, 6947, 3, 2, 2, 2, 1039, 6956, 3, 2, 2, 2, 1041, 6965, 3, 2, 2, 2, 1043, 6968, 3, 2, 2, 2, 1045, 6976, 3, 2, 2, 2, 1047, 6987, 3, 2, 2, 2, 1049, 6994, 3, 2, 2, 2, 1051, 6997, 3, 2, 2, 2, 1053, 7016, 3, 2, 2, 2, 1055, 7025, 3, 2, 2, 2, 1057, 7037, 3, 2, 2, 2, 1059, 7042, 3, 2, 2, 2, 1061, 7047, 3, 2, 2, 2, 1063, 7068, 3, 2, 2, 2, 1065, 7073, 3, 2, 2, 2, 1067, 7095, 3, 2, 2, 2, 1069, 7101, 3, 2, 2, 2, 1071, 7116, 3, 2, 2, 2, 1073, 7154, 3, 2, 2, 2, 1075, 7164, 3, 2, 2, 2, 1077, 7176, 3, 2, 2, 2, 1079, 7187, 3, 2, 2, 2, 1081, 7207, 3, 2, 2, 2, 1083, 7219, 3, 2, 2, 2, 1085, 7229, 3, 2, 2, 2, 1087, 7235, 3, 2, 2, 2, 1089, 7247, 3, 2, 2, 2, 1091, 7256, 3, 2, 2, 2, 1093, 7260, 3, 2, 2, 2, 1095, 7263, 3, 2, 2, 2, 1097, 7273, 3, 2, 2, 2, 1099, 7277, 3, 2, 2, 2, 1101, 7282, 3, 2, 2, 2, 1103, 7285, 3, 2, 2, 2, 1105, 7290, 3, 2, 2, 2, 1107, 7300, 3, 2, 2, 2, 1109, 7311, 3, 2, 2, 2, 1111, 7316, 3, 2, 2, 2, 1113, 7323, 3, 2, 2, 2, 1115, 7327, 3, 2, 2, 2, 1117, 7332, 3, 2, 2, 2, 1119, 7343, 3, 2, 2, 2, 1121, 7348, 3, 2, 2, 2, 1123, 7354, 3, 2, 2, 2, 1125, 7359, 3, 2, 2, 2, 1127, 7368, 3, 2, 2, 2, 1129, 7381, 3, 2, 2, 2, 1131, 7396, 3, 2, 2, 2, 1133, 7402, 3, 2, 2, 2, 1135, 7411, 3, 2, 2, 2, 1137, 7416, 3, 2, 2, 2, 1139, 7432, 3, 2, 2, 2, 1141, 7438, 3, 2, 2, 2, 1143, 7443, 3, 2, 2, 2, 1145, 7447, 3, 2, 2, 2, 1147, 7454, 3, 2, 2, 2, 1149, 7459, 3, 2, 2, 2, 1151, 7472, 3, 2, 2, 2, 1153, 7476, 3, 2, 2, 2, 1155, 7492, 3, 2, 2, 2, 1157, 7500, 3, 2, 2, 2, 1159, 7510, 3, 2, 2, 2, 1161, 7530, 3, 2, 2, 2, 1163, 7549, 3, 2, 2, 2, 1165, 7563, 3, 2, 2, 2, 1167, 7581, 3, 2, 2, 2, 1169, 7600, 3, 2, 2, 2, 1171, 7607, 3, 2, 2, 2, 1173, 7620, 3, 2, 2, 2, 1175, 7628, 3, 2, 2, 2, 1177, 7631, 3, 2, 2, 2, 1179, 7638, 3, 2, 2, 2, 1181, 7660, 3, 2, 2, 2, 1183, 7668, 3, 2, 2, 2, 1185, 7672, 3, 2, 2, 2, 1187, 7694, 3, 2, 2, 2, 1189, 7710, 3, 2, 2, 2, 1191, 7730, 3, 2, 2, 2, 1193, 7749, 3, 2, 2, 2, 1195, 7757, 3, 2, 2, 2, 1197, 7772, 3, 2, 2, 2, 1199, 7794, 3, 2, 2, 2, 1201, 7799, 3, 2, 2, 2, 1203, 7806, 3, 2, 2, 2, 1205, 7811, 3, 2, 2, 2, 1207, 7822, 3, 2, 2, 2, 1209, 7827, 3, 2, 2, 2, 1211, 7843, 3, 2, 2, 2, 1213, 7855, 3, 2, 2, 2, 1215, 7866, 3, 2, 2, 2, 1217, 7879, 3, 2, 2, 2, 1219, 7884, 3, 2, 2, 2, 1221, 7887, 3, 2, 2, 2, 1223, 7899, 3, 2, 2, 2, 1225, 7907, 3, 2, 2, 2, 1227, 7915, 3, 2, 2, 2, 1229, 7921, 3, 2, 2, 2, 1231, 7930, 3, 2, 2, 2, 1233, 7952, 3, 2, 2, 2, 1235, 7964, 3, 2, 2, 2, 1237, 7975, 3, 2, 2, 2, 1239, 7982, 3, 2, 2, 2, 1241, 7988, 3, 2, 2, 2, 1243, 7997, 3, 2, 2, 2, 1245, 8004, 3, 2, 2, 2, 1247, 8023, 3, 2, 2, 2, 1249, 8030, 3, 2, 2, 2, 1251, 8038, 3, 2, 2, 2, 1253, 8045, 3, 2, 2, 2, 1255, 8057, 3, 2, 2, 2, 1257, 8064, 3, 2, 2, 2, 1259, 8069, 3, 2, 2, 2, 1261, 8083, 3, 2, 2, 2, 1263, 8094, 3, 2, 2, 2, 1265, 8103, 3, 2, 2, 2, 1267, 8107, 3, 2, 2, 2, 1269, 8114, 3, 2, 2, 2, 1271, 8123, 3, 2, 2, 2, 1273, 8129, 3, 2, 2, 2, 1275, 8141, 3, 2, 2, 2, 1277, 8158, 3, 2, 2, 2, 1279, 8168, 3, 2, 2, 2, 1281, 8179, 3, 2, 2, 2, 1283, 8187, 3, 2, 2, 2, 1285, 8192, 3, 2, 2, 2, 1287, 8216, 3, 2, 2, 2, 1289, 8221, 3, 2, 2, 2, 1291, 8226, 3, 2, 2, 2, 1293, 8236, 3, 2, 2, 2, 1295, 8249, 3, 2, 2, 2, 1297, 8255, 3, 2, 2, 2, 1299, 8264, 3, 2, 2, 2, 1301, 8279, 3, 2, 2, 2, 1303, 8287, 3, 2, 2, 2, 1305, 8299, 3, 2, 2, 2, 1307, 8310, 3, 2, 2, 2, 1309, 8325, 3, 2, 2, 2, 1311, 8334, 3, 2, 2, 2, 1313, 8343, 3, 2, 2, 2, 1315, 8361, 3, 2, 2, 2, 1317, 8367, 3, 2, 2, 2, 1319, 8373, 3, 2, 2, 2, 1321, 8385, 3, 2, 2, 2, 1323, 8403, 3, 2, 2, 2, 1325, 8409, 3, 2, 2, 2, 1327, 8414, 3, 2, 2, 2, 1329, 8418, 3, 2, 2, 2, 1331, 8422, 3, 2, 2, 2, 1333, 8430, 3, 2, 2, 2, 1335, 8454, 3, 2, 2, 2, 1337, 8464, 3, 2, 2, 2, 1339, 8487, 3, 2, 2, 2, 1341, 8498, 3, 2, 2, 2, 1343, 8507, 3, 2, 2, 2, 1345, 8515, 3, 2, 2, 2, 1347, 8523, 3, 2, 2, 2, 1349, 8533, 3, 2, 2, 2, 1351, 8542, 3, 2, 2, 2, 1353, 8561, 3, 2, 2, 2, 1355, 8570, 3, 2, 2, 2, 1357, 8577, 3, 2, 2, 2, 1359, 8597, 3, 2, 2, 2, 1361, 8604, 3, 2, 2, 2, 1363, 8615, 3, 2, 2, 2, 1365, 8626, 3, 2, 2, 2, 1367, 8634, 3, 2, 2, 2, 1369, 8659, 3, 2, 2, 2, 1371, 8692, 3, 2, 2, 2, 1373, 8725, 3, 2, 2, 2, 1375, 8769, 3, 2, 2, 2, 1377, 8788, 3, 2, 2, 2, 1379, 8797, 3, 2, 2, 2, 1381, 8823, 3, 2, 2, 2, 1383, 8839, 3, 2, 2, 2, 1385, 8849, 3, 2, 2, 2, 1387, 8856, 3, 2, 2, 2, 1389, 8861, 3, 2, 2, 2, 1391, 8867, 3, 2, 2, 2, 1393, 8871, 3, 2, 2, 2, 1395, 8882, 3, 2, 2, 2, 1397, 8890, 3, 2, 2, 2, 1399, 8895, 3, 2, 2, 2, 1401, 8902, 3, 2, 2, 2, 1403, 8916, 3, 2, 2, 2, 1405, 8923, 3, 2, 2, 2, 1407, 8930, 3, 2, 2, 2, 1409, 8943, 3, 2, 2, 2, 1411, 8950, 3, 2, 2, 2, 1413, 8960, 3, 2, 2, 2, 1415, 8975, 3, 2, 2, 2, 1417, 8990, 3, 2, 2, 2, 1419, 8998, 3, 2, 2, 2, 1421, 9005, 3, 2, 2, 2, 1423, 9014, 3, 2, 2, 2, 1425, 9027, 3, 2, 2, 2, 1427, 9040, 3, 2, 2, 2, 1429, 9045, 3, 2, 2, 2, 1431, 9060, 3, 2, 2, 2, 1433, 9065, 3, 2, 2, 2, 1435, 9070, 3, 2, 2, 2, 1437, 9079, 3, 2, 2, 2, 1439, 9092, 3, 2, 2, 2, 1441, 9108, 3, 2, 2, 2, 1443, 9117, 3, 2, 2, 2, 1445, 9123, 3, 2, 2, 2, 1447, 9132, 3, 2, 2, 2, 1449, 9142, 3, 2, 2, 2, 1451, 9149, 3, 2, 2, 2, 1453, 9161, 3, 2, 2, 2, 1455, 9166, 3, 2, 2, 2, 1457, 9175, 3, 2, 2, 2, 1459, 9184, 3, 2, 2, 2, 1461, 9209, 3, 2, 2, 2, 1463, 9217, 3, 2, 2, 2, 1465, 9228, 3, 2, 2, 2, 1467, 9235, 3, 2, 2, 2, 1469, 9248, 3, 2, 2, 2, 1471, 9255, 3, 2, 2, 2, 1473, 9266, 3, 2, 2, 2, 1475, 9272, 3, 2, 2, 2, 1477, 9279, 3, 2, 2, 2, 1479, 9288, 3, 2, 2, 2, 1481, 9299, 3, 2, 2, 2, 1483, 9305, 3, 2, 2, 2, 1485, 9313, 3, 2, 2, 2, 1487, 9326, 3, 2, 2, 2, 1489, 9330, 3, 2, 2, 2, 1491, 9338, 3, 2, 2, 2, 1493, 9348, 3, 2, 2, 2, 1495, 9367, 3, 2, 2, 2, 1497, 9375, 3, 2, 2, 2, 1499, 9382, 3, 2, 2, 2, 1501, 9387, 3, 2, 2, 2, 1503, 9408, 3, 2, 2, 2, 1505, 9411, 3, 2, 2, 2, 1507, 9424, 3, 2, 2, 2, 1509, 9430, 3, 2, 2, 2, 1511, 9435, 3, 2, 2, 2, 1513, 9440, 3, 2, 2, 2, 1515, 9448, 3, 2, 2, 2, 1517, 9454, 3, 2, 2, 2, 1519, 9462, 3, 2, 2, 2, 1521, 9482, 3, 2, 2, 2, 1523, 9504, 3, 2, 2, 2, 1525, 9515, 3, 2, 2, 2, 1527, 9531, 3, 2, 2, 2, 1529, 9543, 3, 2, 2, 2, 1531, 9547, 3, 2, 2, 2, 1533, 9552, 3, 2, 2, 2, 1535, 9574, 3, 2, 2, 2, 1537, 9579, 3, 2, 2, 2, 1539, 9592, 3, 2, 2, 2, 1541, 9602, 3, 2, 2, 2, 1543, 9614, 3, 2, 2, 2, 1545, 9622, 3, 2, 2, 2, 1547, 9632, 3, 2, 2, 2, 1549, 9636, 3, 2, 2, 2, 1551, 9642, 3, 2, 2, 2, 1553, 9652, 3, 2, 2, 2, 1555, 9663, 3, 2, 2, 2, 1557, 9669, 3, 2, 2, 2, 1559, 9673, 3, 2, 2, 2, 1561, 9678, 3, 2, 2, 2, 1563, 9692, 3, 2, 2, 2, 1565, 9698, 3, 2, 2, 2, 1567, 9703, 3, 2, 2, 2, 1569, 9719, 3, 2, 2, 2, 1571, 9741, 3, 2, 2, 2, 1573, 9746, 3, 2, 2, 2, 1575, 9755, 3, 2, 2, 2, 1577, 9759, 3, 2, 2, 2, 1579, 9767, 3, 2, 2, 2, 1581, 9781, 3, 2, 2, 2, 1583, 9791, 3, 2, 2, 2, 1585, 9798, 3, 2, 2, 2, 1587, 9807, 3, 2, 2, 2, 1589, 9813, 3, 2, 2, 2, 1591, 9828, 3, 2, 2, 2, 1593, 9839, 3, 2, 2, 2, 1595, 9847, 3, 2, 2, 2, 1597, 9849, 3, 2, 2, 2, 1599, 9857, 3, 2, 2, 2, 1601, 9865, 3, 2, 2, 2, 1603, 9871, 3, 2, 2, 2, 1605, 9880, 3, 2, 2, 2, 1607, 9912, 3, 2, 2, 2, 1609, 9935, 3, 2, 2, 2, 1611, 9948, 3, 2, 2, 2, 1613, 9956, 3, 2, 2, 2, 1615, 9960, 3, 2, 2, 2, 1617, 9971, 3, 2, 2, 2, 1619, 9973, 3, 2, 2, 2, 1621, 9975, 3, 2, 2, 2, 1623, 9977, 3, 2, 2, 2, 1625, 9979, 3, 2, 2, 2, 1627, 9982, 3, 2, 2, 2, 1629, 9985, 3, 2, 2, 2, 1631, 9988, 3, 2, 2, 2, 1633, 9991, 3, 2, 2, 2, 1635, 9994, 3, 2, 2, 2, 1637, 9997, 3, 2, 2, 2, 1639, 10000, 3, 2, 2, 2, 1641, 10003, 3, 2, 2, 2, 1643, 10006, 3, 2, 2, 2, 1645, 10008, 3, 2, 2, 2, 1647, 10010, 3, 2, 2, 2, 1649, 10012, 3, 2, 2, 2, 1651, 10014, 3, 2, 2, 2, 1653, 10016, 3, 2, 2, 2, 1655, 10018, 3, 2, 2, 2, 1657, 10020, 3, 2, 2, 2, 1659, 10022, 3, 2, 2, 2, 1661, 10024, 3, 2, 2, 2, 1663, 10026, 3, 2, 2, 2, 1665, 10028, 3, 2, 2, 2, 1667, 10030, 3, 2, 2, 2, 1669, 10032, 3, 2, 2, 2, 1671, 10034, 3, 2, 2, 2, 1673, 10036, 3, 2, 2, 2, 1675, 10038, 3, 2, 2, 2, 1677, 10040, 3, 2, 2, 2, 1679, 10042, 3, 2, 2, 2, 1681, 10044, 3, 2, 2, 2, 1683, 10046, 3, 2, 2, 2, 1685, 10052, 3, 2, 2, 2, 1687, 10083, 3, 2, 2, 2, 1689, 10085, 3, 2, 2, 2, 1691, 10087, 3, 2, 2, 2, 1693, 10089, 3, 2, 2, 2, 1695, 1696, 7, 67, 2, 2, 1696, 1697, 7, 68, 2, 2, 1697, 1698, 7, 85, 2, 2, 1698, 1699, 7, 71, 2, 2, 1699, 1700, 7, 80, 2, 2, 1700, 1701, 7, 86, 2, 2, 1701, 4, 3, 2, 2, 2, 1702, 1703, 7, 67, 2, 2, 1703, 1704, 7, 70, 2, 2, 1704, 1705, 7, 70, 2, 2, 1705, 6, 3, 2, 2, 2, 1706, 1707, 7, 67, 2, 2, 1707, 1708, 7, 71, 2, 2, 1708, 1709, 7, 85, 2, 2, 1709, 8, 3, 2, 2, 2, 1710, 1711, 7, 67, 2, 2, 1711, 1712, 7, 78, 2, 2, 1712, 1713, 7, 78, 2, 2, 1713, 10, 3, 2, 2, 2, 1714, 1715, 7, 67, 2, 2, 1715, 1716, 7, 78, 2, 2, 1716, 1717, 7, 78, 2, 2, 1717, 1718, 7, 81, 2, 2, 1718, 1719, 7, 89, 2, 2, 1719, 1720, 7, 97, 2, 2, 1720, 1721, 7, 69, 2, 2, 1721, 1722, 7, 81, 2, 2, 1722, 1723, 7, 80, 2, 2, 1723, 1724, 7, 80, 2, 2, 1724, 1725, 7, 71, 2, 2, 1725, 1726, 7, 69, 2, 2, 1726, 1727, 7, 86, 2, 2, 1727, 1728, 7, 75, 2, 2, 1728, 1729, 7, 81, 2, 2, 1729, 1730, 7, 80, 2, 2, 1730, 1731, 7, 85, 2, 2, 1731, 12, 3, 2, 2, 2, 1732, 1733, 7, 67, 2, 2, 1733, 1734, 7, 78, 2, 2, 1734, 1735, 7, 78, 2, 2, 1735, 1736, 7, 81, 2, 2, 1736, 1737, 7, 89, 2, 2, 1737, 1738, 7, 97, 2, 2, 1738, 1739, 7, 79, 2, 2, 1739, 1740, 7, 87, 2, 2, 1740, 1741, 7, 78, 2, 2, 1741, 1742, 7, 86, 2, 2, 1742, 1743, 7, 75, 2, 2, 1743, 1744, 7, 82, 2, 2, 1744, 1745, 7, 78, 2, 2, 1745, 1746, 7, 71, 2, 2, 1746, 1747, 7, 97, 2, 2, 1747, 1748, 7, 71, 2, 2, 1748, 1749, 7, 88, 2, 2, 1749, 1750, 7, 71, 2, 2, 1750, 1751, 7, 80, 2, 2, 1751, 1752, 7, 86, 2, 2, 1752, 1753, 7, 97, 2, 2, 1753, 1754, 7, 78, 2, 2, 1754, 1755, 7, 81, 2, 2, 1755, 1756, 7, 85, 2, 2, 1756, 1757, 7, 85, 2, 2, 1757, 14, 3, 2, 2, 2, 1758, 1759, 7, 67, 2, 2, 1759, 1760, 7, 78, 2, 2, 1760, 1761, 7, 78, 2, 2, 1761, 1762, 7, 81, 2, 2, 1762, 1763, 7, 89, 2, 2, 1763, 1764, 7, 97, 2, 2, 1764, 1765, 7, 85, 2, 2, 1765, 1766, 7, 75, 2, 2, 1766, 1767, 7, 80, 2, 2, 1767, 1768, 7, 73, 2, 2, 1768, 1769, 7, 78, 2, 2, 1769, 1770, 7, 71, 2, 2, 1770, 1771, 7, 97, 2, 2, 1771, 1772, 7, 71, 2, 2, 1772, 1773, 7, 88, 2, 2, 1773, 1774, 7, 71, 2, 2, 1774, 1775, 7, 80, 2, 2, 1775, 1776, 7, 86, 2, 2, 1776, 1777, 7, 97, 2, 2, 1777, 1778, 7, 78, 2, 2, 1778, 1779, 7, 81, 2, 2, 1779, 1780, 7, 85, 2, 2, 1780, 1781, 7, 85, 2, 2, 1781, 16, 3, 2, 2, 2, 1782, 1783, 7, 67, 2, 2, 1783, 1784, 7, 78, 2, 2, 1784, 1785, 7, 86, 2, 2, 1785, 1786, 7, 71, 2, 2, 1786, 1787, 7, 84, 2, 2, 1787, 18, 3, 2, 2, 2, 1788, 1789, 7, 67, 2, 2, 1789, 1790, 7, 80, 2, 2, 1790, 1791, 7, 70, 2, 2, 1791, 20, 3, 2, 2, 2, 1792, 1793, 7, 67, 2, 2, 1793, 1794, 7, 80, 2, 2, 1794, 1795, 7, 81, 2, 2, 1795, 1796, 7, 80, 2, 2, 1796, 1797, 7, 91, 2, 2, 1797, 1798, 7, 79, 2, 2, 1798, 1799, 7, 81, 2, 2, 1799, 1800, 7, 87, 2, 2, 1800, 1801, 7, 85, 2, 2, 1801, 22, 3, 2, 2, 2, 1802, 1803, 7, 67, 2, 2, 1803, 1804, 7, 80, 2, 2, 1804, 1805, 7, 91, 2, 2, 1805, 24, 3, 2, 2, 2, 1806, 1807, 7, 67, 2, 2, 1807, 1808, 7, 82, 2, 2, 1808, 1809, 7, 82, 2, 2, 1809, 1810, 7, 71, 2, 2, 1810, 1811, 7, 80, 2, 2, 1811, 1812, 7, 70, 2, 2, 1812, 26, 3, 2, 2, 2, 1813, 1814, 7, 67, 2, 2, 1814, 1815, 7, 82, 2, 2, 1815, 1816, 7, 82, 2, 2, 1816, 1817, 7, 78, 2, 2, 1817, 1818, 7, 75, 2, 2, 1818, 1819, 7, 69, 2, 2, 1819, 1820, 7, 67, 2, 2, 1820, 1821, 7, 86, 2, 2, 1821, 1822, 7, 75, 2, 2, 1822, 1823, 7, 81, 2, 2, 1823, 1824, 7, 80, 2, 2, 1824, 28, 3, 2, 2, 2, 1825, 1826, 7, 67, 2, 2, 1826, 1827, 7, 85, 2, 2, 1827, 30, 3, 2, 2, 2, 1828, 1829, 7, 67, 2, 2, 1829, 1830, 7, 85, 2, 2, 1830, 1831, 7, 69, 2, 2, 1831, 32, 3, 2, 2, 2, 1832, 1833, 7, 67, 2, 2, 1833, 1834, 7, 85, 2, 2, 1834, 1835, 7, 91, 2, 2, 1835, 1836, 7, 79, 2, 2, 1836, 1837, 7, 79, 2, 2, 1837, 1838, 7, 71, 2, 2, 1838, 1839, 7, 86, 2, 2, 1839, 1840, 7, 84, 2, 2, 1840, 1841, 7, 75, 2, 2, 1841, 1842, 7, 69, 2, 2, 1842, 34, 3, 2, 2, 2, 1843, 1844, 7, 67, 2, 2, 1844, 1845, 7, 85, 2, 2, 1845, 1846, 7, 91, 2, 2, 1846, 1847, 7, 80, 2, 2, 1847, 1848, 7, 69, 2, 2, 1848, 1849, 7, 74, 2, 2, 1849, 1850, 7, 84, 2, 2, 1850, 1851, 7, 81, 2, 2, 1851, 1852, 7, 80, 2, 2, 1852, 1853, 7, 81, 2, 2, 1853, 1854, 7, 87, 2, 2, 1854, 1855, 7, 85, 2, 2, 1855, 1856, 7, 97, 2, 2, 1856, 1857, 7, 69, 2, 2, 1857, 1858, 7, 81, 2, 2, 1858, 1859, 7, 79, 2, 2, 1859, 1860, 7, 79, 2, 2, 1860, 1861, 7, 75, 2, 2, 1861, 1862, 7, 86, 2, 2, 1862, 36, 3, 2, 2, 2, 1863, 1864, 7, 67, 2, 2, 1864, 1865, 7, 87, 2, 2, 1865, 1866, 7, 86, 2, 2, 1866, 1867, 7, 74, 2, 2, 1867, 1868, 7, 81, 2, 2, 1868, 1869, 7, 84, 2, 2, 1869, 1870, 7, 75, 2, 2, 1870, 1871, 7, 92, 2, 2, 1871, 1872, 7, 67, 2, 2, 1872, 1873, 7, 86, 2, 2, 1873, 1874, 7, 75, 2, 2, 1874, 1875, 7, 81, 2, 2, 1875, 1876, 7, 80, 2, 2, 1876, 38, 3, 2, 2, 2, 1877, 1878, 7, 67, 2, 2, 1878, 1879, 7, 87, 2, 2, 1879, 1880, 7, 86, 2, 2, 1880, 1881, 7, 74, 2, 2, 1881, 1882, 7, 71, 2, 2, 1882, 1883, 7, 80, 2, 2, 1883, 1884, 7, 86, 2, 2, 1884, 1885, 7, 75, 2, 2, 1885, 1886, 7, 69, 2, 2, 1886, 1887, 7, 67, 2, 2, 1887, 1888, 7, 86, 2, 2, 1888, 1889, 7, 75, 2, 2, 1889, 1890, 7, 81, 2, 2, 1890, 1891, 7, 80, 2, 2, 1891, 40, 3, 2, 2, 2, 1892, 1893, 7, 67, 2, 2, 1893, 1894, 7, 87, 2, 2, 1894, 1895, 7, 86, 2, 2, 1895, 1896, 7, 81, 2, 2, 1896, 1897, 7, 79, 2, 2, 1897, 1898, 7, 67, 2, 2, 1898, 1899, 7, 86, 2, 2, 1899, 1900, 7, 71, 2, 2, 1900, 1901, 7, 70, 2, 2, 1901, 1902, 7, 97, 2, 2, 1902, 1903, 7, 68, 2, 2, 1903, 1904, 7, 67, 2, 2, 1904, 1905, 7, 69, 2, 2, 1905, 1906, 7, 77, 2, 2, 1906, 1907, 7, 87, 2, 2, 1907, 1908, 7, 82, 2, 2, 1908, 1909, 7, 97, 2, 2, 1909, 1910, 7, 82, 2, 2, 1910, 1911, 7, 84, 2, 2, 1911, 1912, 7, 71, 2, 2, 1912, 1913, 7, 72, 2, 2, 1913, 1914, 7, 71, 2, 2, 1914, 1915, 7, 84, 2, 2, 1915, 1916, 7, 71, 2, 2, 1916, 1917, 7, 80, 2, 2, 1917, 1918, 7, 69, 2, 2, 1918, 1919, 7, 71, 2, 2, 1919, 42, 3, 2, 2, 2, 1920, 1921, 7, 67, 2, 2, 1921, 1922, 7, 87, 2, 2, 1922, 1923, 7, 86, 2, 2, 1923, 1924, 7, 81, 2, 2, 1924, 1925, 7, 79, 2, 2, 1925, 1926, 7, 67, 2, 2, 1926, 1927, 7, 86, 2, 2, 1927, 1928, 7, 75, 2, 2, 1928, 1929, 7, 69, 2, 2, 1929, 44, 3, 2, 2, 2, 1930, 1931, 7, 67, 2, 2, 1931, 1932, 7, 88, 2, 2, 1932, 1933, 7, 67, 2, 2, 1933, 1934, 7, 75, 2, 2, 1934, 1935, 7, 78, 2, 2, 1935, 1936, 7, 67, 2, 2, 1936, 1937, 7, 68, 2, 2, 1937, 1938, 7, 75, 2, 2, 1938, 1939, 7, 78, 2, 2, 1939, 1940, 7, 75, 2, 2, 1940, 1941, 7, 86, 2, 2, 1941, 1942, 7, 91, 2, 2, 1942, 1943, 7, 97, 2, 2, 1943, 1944, 7, 79, 2, 2, 1944, 1945, 7, 81, 2, 2, 1945, 1946, 7, 70, 2, 2, 1946, 1947, 7, 71, 2, 2, 1947, 46, 3, 2, 2, 2, 1948, 1949, 7, 94, 2, 2, 1949, 48, 3, 2, 2, 2, 1950, 1951, 7, 68, 2, 2, 1951, 1952, 7, 67, 2, 2, 1952, 1953, 7, 69, 2, 2, 1953, 1954, 7, 77, 2, 2, 1954, 1955, 7, 87, 2, 2, 1955, 1956, 7, 82, 2, 2, 1956, 50, 3, 2, 2, 2, 1957, 1958, 7, 68, 2, 2, 1958, 1959, 7, 71, 2, 2, 1959, 1960, 7, 72, 2, 2, 1960, 1961, 7, 81, 2, 2, 1961, 1962, 7, 84, 2, 2, 1962, 1963, 7, 71, 2, 2, 1963, 52, 3, 2, 2, 2, 1964, 1965, 7, 68, 2, 2, 1965, 1966, 7, 71, 2, 2, 1966, 1967, 7, 73, 2, 2, 1967, 1968, 7, 75, 2, 2, 1968, 1969, 7, 80, 2, 2, 1969, 54, 3, 2, 2, 2, 1970, 1971, 7, 68, 2, 2, 1971, 1972, 7, 71, 2, 2, 1972, 1973, 7, 86, 2, 2, 1973, 1974, 7, 89, 2, 2, 1974, 1975, 7, 71, 2, 2, 1975, 1976, 7, 71, 2, 2, 1976, 1977, 7, 80, 2, 2, 1977, 56, 3, 2, 2, 2, 1978, 1979, 7, 68, 2, 2, 1979, 1980, 7, 78, 2, 2, 1980, 1981, 7, 81, 2, 2, 1981, 1982, 7, 69, 2, 2, 1982, 1983, 7, 77, 2, 2, 1983, 58, 3, 2, 2, 2, 1984, 1985, 7, 68, 2, 2, 1985, 1986, 7, 78, 2, 2, 1986, 1987, 7, 81, 2, 2, 1987, 1988, 7, 69, 2, 2, 1988, 1989, 7, 77, 2, 2, 1989, 1990, 7, 85, 2, 2, 1990, 1991, 7, 75, 2, 2, 1991, 1992, 7, 92, 2, 2, 1992, 1993, 7, 71, 2, 2, 1993, 60, 3, 2, 2, 2, 1994, 1995, 7, 68, 2, 2, 1995, 1996, 7, 78, 2, 2, 1996, 1997, 7, 81, 2, 2, 1997, 1998, 7, 69, 2, 2, 1998, 1999, 7, 77, 2, 2, 1999, 2000, 7, 75, 2, 2, 2000, 2001, 7, 80, 2, 2, 2001, 2002, 7, 73, 2, 2, 2002, 2003, 7, 97, 2, 2, 2003, 2004, 7, 74, 2, 2, 2004, 2005, 7, 75, 2, 2, 2005, 2006, 7, 71, 2, 2, 2006, 2007, 7, 84, 2, 2, 2007, 2008, 7, 67, 2, 2, 2008, 2009, 7, 84, 2, 2, 2009, 2010, 7, 69, 2, 2, 2010, 2011, 7, 74, 2, 2, 2011, 2012, 7, 91, 2, 2, 2012, 62, 3, 2, 2, 2, 2013, 2014, 7, 68, 2, 2, 2014, 2015, 7, 84, 2, 2, 2015, 2016, 7, 71, 2, 2, 2016, 2017, 7, 67, 2, 2, 2017, 2018, 7, 77, 2, 2, 2018, 64, 3, 2, 2, 2, 2019, 2020, 7, 68, 2, 2, 2020, 2021, 7, 84, 2, 2, 2021, 2022, 7, 81, 2, 2, 2022, 2023, 7, 89, 2, 2, 2023, 2024, 7, 85, 2, 2, 2024, 2025, 7, 71, 2, 2, 2025, 66, 3, 2, 2, 2, 2026, 2027, 7, 68, 2, 2, 2027, 2028, 7, 87, 2, 2, 2028, 2029, 7, 72, 2, 2, 2029, 2030, 7, 72, 2, 2, 2030, 2031, 7, 71, 2, 2, 2031, 2032, 7, 84, 2, 2, 2032, 68, 3, 2, 2, 2, 2033, 2034, 7, 68, 2, 2, 2034, 2035, 7, 87, 2, 2, 2035, 2036, 7, 72, 2, 2, 2036, 2037, 7, 72, 2, 2, 2037, 2038, 7, 71, 2, 2, 2038, 2039, 7, 84, 2, 2, 2039, 2040, 7, 69, 2, 2, 2040, 2041, 7, 81, 2, 2, 2041, 2042, 7, 87, 2, 2, 2042, 2043, 7, 80, 2, 2, 2043, 2044, 7, 86, 2, 2, 2044, 70, 3, 2, 2, 2, 2045, 2046, 7, 68, 2, 2, 2046, 2047, 7, 87, 2, 2, 2047, 2048, 7, 78, 2, 2, 2048, 2049, 7, 77, 2, 2, 2049, 72, 3, 2, 2, 2, 2050, 2051, 7, 68, 2, 2, 2051, 2052, 7, 91, 2, 2, 2052, 74, 3, 2, 2, 2, 2053, 2054, 7, 69, 2, 2, 2054, 2055, 7, 67, 2, 2, 2055, 2056, 7, 69, 2, 2, 2056, 2057, 7, 74, 2, 2, 2057, 2058, 7, 71, 2, 2, 2058, 76, 3, 2, 2, 2, 2059, 2060, 7, 69, 2, 2, 2060, 2061, 7, 67, 2, 2, 2061, 2062, 7, 78, 2, 2, 2062, 2063, 7, 78, 2, 2, 2063, 2064, 7, 71, 2, 2, 2064, 2065, 7, 70, 2, 2, 2065, 78, 3, 2, 2, 2, 2066, 2067, 7, 69, 2, 2, 2067, 2068, 7, 67, 2, 2, 2068, 2069, 7, 85, 2, 2, 2069, 2070, 7, 69, 2, 2, 2070, 2071, 7, 67, 2, 2, 2071, 2072, 7, 70, 2, 2, 2072, 2073, 7, 71, 2, 2, 2073, 80, 3, 2, 2, 2, 2074, 2075, 7, 69, 2, 2, 2075, 2076, 7, 67, 2, 2, 2076, 2077, 7, 85, 2, 2, 2077, 2078, 7, 71, 2, 2, 2078, 82, 3, 2, 2, 2, 2079, 2080, 7, 69, 2, 2, 2080, 2081, 7, 71, 2, 2, 2081, 2082, 7, 84, 2, 2, 2082, 2083, 7, 86, 2, 2, 2083, 2084, 7, 75, 2, 2, 2084, 2085, 7, 72, 2, 2, 2085, 2086, 7, 75, 2, 2, 2086, 2087, 7, 69, 2, 2, 2087, 2088, 7, 67, 2, 2, 2088, 2089, 7, 86, 2, 2, 2089, 2090, 7, 71, 2, 2, 2090, 84, 3, 2, 2, 2, 2091, 2092, 7, 69, 2, 2, 2092, 2093, 7, 74, 2, 2, 2093, 2094, 7, 67, 2, 2, 2094, 2095, 7, 80, 2, 2, 2095, 2096, 7, 73, 2, 2, 2096, 2097, 7, 71, 2, 2, 2097, 2098, 7, 86, 2, 2, 2098, 2099, 7, 67, 2, 2, 2099, 2100, 7, 68, 2, 2, 2100, 2101, 7, 78, 2, 2, 2101, 2102, 7, 71, 2, 2, 2102, 86, 3, 2, 2, 2, 2103, 2104, 7, 69, 2, 2, 2104, 2105, 7, 74, 2, 2, 2105, 2106, 7, 67, 2, 2, 2106, 2107, 7, 80, 2, 2, 2107, 2108, 7, 73, 2, 2, 2108, 2109, 7, 71, 2, 2, 2109, 2110, 7, 85, 2, 2, 2110, 88, 3, 2, 2, 2, 2111, 2112, 7, 69, 2, 2, 2112, 2113, 7, 74, 2, 2, 2113, 2114, 7, 71, 2, 2, 2114, 2115, 7, 69, 2, 2, 2115, 2116, 7, 77, 2, 2, 2116, 90, 3, 2, 2, 2, 2117, 2118, 7, 69, 2, 2, 2118, 2119, 7, 74, 2, 2, 2119, 2120, 7, 71, 2, 2, 2120, 2121, 7, 69, 2, 2, 2121, 2122, 7, 77, 2, 2, 2122, 2123, 7, 82, 2, 2, 2123, 2124, 7, 81, 2, 2, 2124, 2125, 7, 75, 2, 2, 2125, 2126, 7, 80, 2, 2, 2126, 2127, 7, 86, 2, 2, 2127, 92, 3, 2, 2, 2, 2128, 2129, 7, 69, 2, 2, 2129, 2130, 7, 74, 2, 2, 2130, 2131, 7, 71, 2, 2, 2131, 2132, 7, 69, 2, 2, 2132, 2133, 7, 77, 2, 2, 2133, 2134, 7, 97, 2, 2, 2134, 2135, 7, 82, 2, 2, 2135, 2136, 7, 81, 2, 2, 2136, 2137, 7, 78, 2, 2, 2137, 2138, 7, 75, 2, 2, 2138, 2139, 7, 69, 2, 2, 2139, 2140, 7, 91, 2, 2, 2140, 94, 3, 2, 2, 2, 2141, 2142, 7, 69, 2, 2, 2142, 2143, 7, 74, 2, 2, 2143, 2144, 7, 71, 2, 2, 2144, 2145, 7, 69, 2, 2, 2145, 2146, 7, 77, 2, 2, 2146, 2147, 7, 97, 2, 2, 2147, 2148, 7, 71, 2, 2, 2148, 2149, 7, 90, 2, 2, 2149, 2150, 7, 82, 2, 2, 2150, 2151, 7, 75, 2, 2, 2151, 2152, 7, 84, 2, 2, 2152, 2153, 7, 67, 2, 2, 2153, 2154, 7, 86, 2, 2, 2154, 2155, 7, 75, 2, 2, 2155, 2156, 7, 81, 2, 2, 2156, 2157, 7, 80, 2, 2, 2157, 96, 3, 2, 2, 2, 2158, 2159, 7, 69, 2, 2, 2159, 2160, 7, 78, 2, 2, 2160, 2161, 7, 67, 2, 2, 2161, 2162, 7, 85, 2, 2, 2162, 2163, 7, 85, 2, 2, 2163, 2164, 7, 75, 2, 2, 2164, 2165, 7, 72, 2, 2, 2165, 2166, 7, 75, 2, 2, 2166, 2167, 7, 71, 2, 2, 2167, 2168, 7, 84, 2, 2, 2168, 2169, 7, 97, 2, 2, 2169, 2170, 7, 72, 2, 2, 2170, 2171, 7, 87, 2, 2, 2171, 2172, 7, 80, 2, 2, 2172, 2173, 7, 69, 2, 2, 2173, 2174, 7, 86, 2, 2, 2174, 2175, 7, 75, 2, 2, 2175, 2176, 7, 81, 2, 2, 2176, 2177, 7, 80, 2, 2, 2177, 98, 3, 2, 2, 2, 2178, 2179, 7, 69, 2, 2, 2179, 2180, 7, 78, 2, 2, 2180, 2181, 7, 81, 2, 2, 2181, 2182, 7, 85, 2, 2, 2182, 2183, 7, 71, 2, 2, 2183, 100, 3, 2, 2, 2, 2184, 2185, 7, 69, 2, 2, 2185, 2186, 7, 78, 2, 2, 2186, 2187, 7, 87, 2, 2, 2187, 2188, 7, 85, 2, 2, 2188, 2189, 7, 86, 2, 2, 2189, 2190, 7, 71, 2, 2, 2190, 2191, 7, 84, 2, 2, 2191, 102, 3, 2, 2, 2, 2192, 2193, 7, 69, 2, 2, 2193, 2194, 7, 78, 2, 2, 2194, 2195, 7, 87, 2, 2, 2195, 2196, 7, 85, 2, 2, 2196, 2197, 7, 86, 2, 2, 2197, 2198, 7, 71, 2, 2, 2198, 2199, 7, 84, 2, 2, 2199, 2200, 7, 71, 2, 2, 2200, 2201, 7, 70, 2, 2, 2201, 104, 3, 2, 2, 2, 2202, 2203, 7, 69, 2, 2, 2203, 2204, 7, 81, 2, 2, 2204, 2205, 7, 67, 2, 2, 2205, 2206, 7, 78, 2, 2, 2206, 2207, 7, 71, 2, 2, 2207, 2208, 7, 85, 2, 2, 2208, 2209, 7, 69, 2, 2, 2209, 2210, 7, 71, 2, 2, 2210, 106, 3, 2, 2, 2, 2211, 2212, 7, 69, 2, 2, 2212, 2213, 7, 81, 2, 2, 2213, 2214, 7, 78, 2, 2, 2214, 2215, 7, 78, 2, 2, 2215, 2216, 7, 67, 2, 2, 2216, 2217, 7, 86, 2, 2, 2217, 2218, 7, 71, 2, 2, 2218, 108, 3, 2, 2, 2, 2219, 2220, 7, 69, 2, 2, 2220, 2221, 7, 81, 2, 2, 2221, 2222, 7, 78, 2, 2, 2222, 2223, 7, 87, 2, 2, 2223, 2224, 7, 79, 2, 2, 2224, 2225, 7, 80, 2, 2, 2225, 110, 3, 2, 2, 2, 2226, 2227, 7, 69, 2, 2, 2227, 2228, 7, 81, 2, 2, 2228, 2229, 7, 79, 2, 2, 2229, 2230, 7, 82, 2, 2, 2230, 2231, 7, 84, 2, 2, 2231, 2232, 7, 71, 2, 2, 2232, 2233, 7, 85, 2, 2, 2233, 2234, 7, 85, 2, 2, 2234, 2235, 7, 75, 2, 2, 2235, 2236, 7, 81, 2, 2, 2236, 2237, 7, 80, 2, 2, 2237, 112, 3, 2, 2, 2, 2238, 2239, 7, 69, 2, 2, 2239, 2240, 7, 81, 2, 2, 2240, 2241, 7, 79, 2, 2, 2241, 2242, 7, 79, 2, 2, 2242, 2243, 7, 75, 2, 2, 2243, 2244, 7, 86, 2, 2, 2244, 114, 3, 2, 2, 2, 2245, 2246, 7, 69, 2, 2, 2246, 2247, 7, 81, 2, 2, 2247, 2248, 7, 79, 2, 2, 2248, 2249, 7, 82, 2, 2, 2249, 2250, 7, 87, 2, 2, 2250, 2251, 7, 86, 2, 2, 2251, 2252, 7, 71, 2, 2, 2252, 116, 3, 2, 2, 2, 2253, 2254, 7, 69, 2, 2, 2254, 2255, 7, 81, 2, 2, 2255, 2256, 7, 80, 2, 2, 2256, 2257, 7, 72, 2, 2, 2257, 2258, 7, 75, 2, 2, 2258, 2259, 7, 73, 2, 2, 2259, 2260, 7, 87, 2, 2, 2260, 2261, 7, 84, 2, 2, 2261, 2262, 7, 67, 2, 2, 2262, 2263, 7, 86, 2, 2, 2263, 2264, 7, 75, 2, 2, 2264, 2265, 7, 81, 2, 2, 2265, 2266, 7, 80, 2, 2, 2266, 118, 3, 2, 2, 2, 2267, 2268, 7, 69, 2, 2, 2268, 2269, 7, 81, 2, 2, 2269, 2270, 7, 80, 2, 2, 2270, 2271, 7, 85, 2, 2, 2271, 2272, 7, 86, 2, 2, 2272, 2273, 7, 84, 2, 2, 2273, 2274, 7, 67, 2, 2, 2274, 2275, 7, 75, 2, 2, 2275, 2276, 7, 80, 2, 2, 2276, 2277, 7, 86, 2, 2, 2277, 120, 3, 2, 2, 2, 2278, 2279, 7, 69, 2, 2, 2279, 2280, 7, 81, 2, 2, 2280, 2281, 7, 80, 2, 2, 2281, 2282, 7, 86, 2, 2, 2282, 2283, 7, 67, 2, 2, 2283, 2284, 7, 75, 2, 2, 2284, 2285, 7, 80, 2, 2, 2285, 2286, 7, 79, 2, 2, 2286, 2287, 7, 71, 2, 2, 2287, 2288, 7, 80, 2, 2, 2288, 2289, 7, 86, 2, 2, 2289, 122, 3, 2, 2, 2, 2290, 2291, 7, 69, 2, 2, 2291, 2292, 7, 81, 2, 2, 2292, 2293, 7, 80, 2, 2, 2293, 2294, 7, 86, 2, 2, 2294, 2295, 7, 67, 2, 2, 2295, 2296, 7, 75, 2, 2, 2296, 2297, 7, 80, 2, 2, 2297, 2298, 7, 85, 2, 2, 2298, 124, 3, 2, 2, 2, 2299, 2300, 7, 69, 2, 2, 2300, 2301, 7, 81, 2, 2, 2301, 2302, 7, 80, 2, 2, 2302, 2303, 7, 86, 2, 2, 2303, 2304, 7, 67, 2, 2, 2304, 2305, 7, 75, 2, 2, 2305, 2306, 7, 80, 2, 2, 2306, 2307, 7, 85, 2, 2, 2307, 2308, 7, 86, 2, 2, 2308, 2309, 7, 67, 2, 2, 2309, 2310, 7, 68, 2, 2, 2310, 2311, 7, 78, 2, 2, 2311, 2312, 7, 71, 2, 2, 2312, 126, 3, 2, 2, 2, 2313, 2314, 7, 69, 2, 2, 2314, 2315, 7, 81, 2, 2, 2315, 2316, 7, 80, 2, 2, 2316, 2317, 7, 86, 2, 2, 2317, 2318, 7, 71, 2, 2, 2318, 2319, 7, 90, 2, 2, 2319, 2320, 7, 86, 2, 2, 2320, 128, 3, 2, 2, 2, 2321, 2322, 7, 69, 2, 2, 2322, 2323, 7, 81, 2, 2, 2323, 2324, 7, 80, 2, 2, 2324, 2325, 7, 86, 2, 2, 2325, 2326, 7, 75, 2, 2, 2326, 2327, 7, 80, 2, 2, 2327, 2328, 7, 87, 2, 2, 2328, 2329, 7, 71, 2, 2, 2329, 130, 3, 2, 2, 2, 2330, 2331, 7, 69, 2, 2, 2331, 2332, 7, 81, 2, 2, 2332, 2333, 7, 80, 2, 2, 2333, 2334, 7, 86, 2, 2, 2334, 2335, 7, 75, 2, 2, 2335, 2336, 7, 80, 2, 2, 2336, 2337, 7, 87, 2, 2, 2337, 2338, 7, 71, 2, 2, 2338, 2339, 7, 97, 2, 2, 2339, 2340, 7, 67, 2, 2, 2340, 2341, 7, 72, 2, 2, 2341, 2342, 7, 86, 2, 2, 2342, 2343, 7, 71, 2, 2, 2343, 2344, 7, 84, 2, 2, 2344, 2345, 7, 97, 2, 2, 2345, 2346, 7, 71, 2, 2, 2346, 2347, 7, 84, 2, 2, 2347, 2348, 7, 84, 2, 2, 2348, 2349, 7, 81, 2, 2, 2349, 2350, 7, 84, 2, 2, 2350, 132, 3, 2, 2, 2, 2351, 2352, 7, 69, 2, 2, 2352, 2353, 7, 81, 2, 2, 2353, 2354, 7, 80, 2, 2, 2354, 2355, 7, 86, 2, 2, 2355, 2356, 7, 84, 2, 2, 2356, 2357, 7, 67, 2, 2, 2357, 2358, 7, 69, 2, 2, 2358, 2359, 7, 86, 2, 2, 2359, 134, 3, 2, 2, 2, 2360, 2361, 7, 69, 2, 2, 2361, 2362, 7, 81, 2, 2, 2362, 2363, 7, 80, 2, 2, 2363, 2364, 7, 86, 2, 2, 2364, 2365, 7, 84, 2, 2, 2365, 2366, 7, 67, 2, 2, 2366, 2367, 7, 69, 2, 2, 2367, 2368, 7, 86, 2, 2, 2368, 2369, 7, 97, 2, 2, 2369, 2370, 7, 80, 2, 2, 2370, 2371, 7, 67, 2, 2, 2371, 2372, 7, 79, 2, 2, 2372, 2373, 7, 71, 2, 2, 2373, 136, 3, 2, 2, 2, 2374, 2375, 7, 69, 2, 2, 2375, 2376, 7, 81, 2, 2, 2376, 2377, 7, 80, 2, 2, 2377, 2378, 7, 88, 2, 2, 2378, 2379, 7, 71, 2, 2, 2379, 2380, 7, 84, 2, 2, 2380, 2381, 7, 85, 2, 2, 2381, 2382, 7, 67, 2, 2, 2382, 2383, 7, 86, 2, 2, 2383, 2384, 7, 75, 2, 2, 2384, 2385, 7, 81, 2, 2, 2385, 2386, 7, 80, 2, 2, 2386, 138, 3, 2, 2, 2, 2387, 2388, 7, 86, 2, 2, 2388, 2389, 7, 84, 2, 2, 2389, 2390, 7, 91, 2, 2, 2390, 2392, 7, 97, 2, 2, 2391, 2387, 3, 2, 2, 2, 2391, 2392, 3, 2, 2, 2, 2392, 2393, 3, 2, 2, 2, 2393, 2394, 7, 69, 2, 2, 2394, 2395, 7, 81, 2, 2, 2395, 2396, 7, 80, 2, 2, 2396, 2397, 7, 88, 2, 2, 2397, 2398, 7, 71, 2, 2, 2398, 2399, 7, 84, 2, 2, 2399, 2400, 7, 86, 2, 2, 2400, 140, 3, 2, 2, 2, 2401, 2402, 7, 69, 2, 2, 2402, 2403, 7, 81, 2, 2, 2403, 2404, 7, 82, 2, 2, 2404, 2405, 7, 91, 2, 2, 2405, 2406, 7, 97, 2, 2, 2406, 2407, 7, 81, 2, 2, 2407, 2408, 7, 80, 2, 2, 2408, 2409, 7, 78, 2, 2, 2409, 2410, 7, 91, 2, 2, 2410, 142, 3, 2, 2, 2, 2411, 2412, 7, 69, 2, 2, 2412, 2413, 7, 84, 2, 2, 2413, 2414, 7, 71, 2, 2, 2414, 2415, 7, 67, 2, 2, 2415, 2416, 7, 86, 2, 2, 2416, 2417, 7, 71, 2, 2, 2417, 144, 3, 2, 2, 2, 2418, 2419, 7, 69, 2, 2, 2419, 2420, 7, 84, 2, 2, 2420, 2421, 7, 81, 2, 2, 2421, 2422, 7, 85, 2, 2, 2422, 2423, 7, 85, 2, 2, 2423, 146, 3, 2, 2, 2, 2424, 2425, 7, 69, 2, 2, 2425, 2426, 7, 87, 2, 2, 2426, 2427, 7, 84, 2, 2, 2427, 2428, 7, 84, 2, 2, 2428, 2429, 7, 71, 2, 2, 2429, 2430, 7, 80, 2, 2, 2430, 2431, 7, 86, 2, 2, 2431, 148, 3, 2, 2, 2, 2432, 2433, 7, 69, 2, 2, 2433, 2434, 7, 87, 2, 2, 2434, 2435, 7, 84, 2, 2, 2435, 2436, 7, 84, 2, 2, 2436, 2437, 7, 71, 2, 2, 2437, 2438, 7, 80, 2, 2, 2438, 2439, 7, 86, 2, 2, 2439, 2440, 7, 97, 2, 2, 2440, 2441, 7, 70, 2, 2, 2441, 2442, 7, 67, 2, 2, 2442, 2443, 7, 86, 2, 2, 2443, 2444, 7, 71, 2, 2, 2444, 150, 3, 2, 2, 2, 2445, 2446, 7, 69, 2, 2, 2446, 2447, 7, 87, 2, 2, 2447, 2448, 7, 84, 2, 2, 2448, 2449, 7, 84, 2, 2, 2449, 2450, 7, 71, 2, 2, 2450, 2451, 7, 80, 2, 2, 2451, 2452, 7, 86, 2, 2, 2452, 2453, 7, 97, 2, 2, 2453, 2454, 7, 86, 2, 2, 2454, 2455, 7, 75, 2, 2, 2455, 2456, 7, 79, 2, 2, 2456, 2457, 7, 71, 2, 2, 2457, 152, 3, 2, 2, 2, 2458, 2459, 7, 69, 2, 2, 2459, 2460, 7, 87, 2, 2, 2460, 2461, 7, 84, 2, 2, 2461, 2462, 7, 84, 2, 2, 2462, 2463, 7, 71, 2, 2, 2463, 2464, 7, 80, 2, 2, 2464, 2465, 7, 86, 2, 2, 2465, 2466, 7, 97, 2, 2, 2466, 2467, 7, 86, 2, 2, 2467, 2468, 7, 75, 2, 2, 2468, 2469, 7, 79, 2, 2, 2469, 2470, 7, 71, 2, 2, 2470, 2471, 7, 85, 2, 2, 2471, 2472, 7, 86, 2, 2, 2472, 2473, 7, 67, 2, 2, 2473, 2474, 7, 79, 2, 2, 2474, 2475, 7, 82, 2, 2, 2475, 154, 3, 2, 2, 2, 2476, 2477, 7, 69, 2, 2, 2477, 2478, 7, 87, 2, 2, 2478, 2479, 7, 84, 2, 2, 2479, 2480, 7, 84, 2, 2, 2480, 2481, 7, 71, 2, 2, 2481, 2482, 7, 80, 2, 2, 2482, 2483, 7, 86, 2, 2, 2483, 2484, 7, 97, 2, 2, 2484, 2485, 7, 87, 2, 2, 2485, 2486, 7, 85, 2, 2, 2486, 2487, 7, 71, 2, 2, 2487, 2488, 7, 84, 2, 2, 2488, 156, 3, 2, 2, 2, 2489, 2490, 7, 69, 2, 2, 2490, 2491, 7, 87, 2, 2, 2491, 2492, 7, 84, 2, 2, 2492, 2493, 7, 85, 2, 2, 2493, 2494, 7, 81, 2, 2, 2494, 2495, 7, 84, 2, 2, 2495, 158, 3, 2, 2, 2, 2496, 2497, 7, 69, 2, 2, 2497, 2498, 7, 91, 2, 2, 2498, 2499, 7, 69, 2, 2, 2499, 2500, 7, 78, 2, 2, 2500, 2501, 7, 71, 2, 2, 2501, 160, 3, 2, 2, 2, 2502, 2503, 7, 70, 2, 2, 2503, 2504, 7, 67, 2, 2, 2504, 2505, 7, 86, 2, 2, 2505, 2506, 7, 67, 2, 2, 2506, 2507, 7, 97, 2, 2, 2507, 2508, 7, 69, 2, 2, 2508, 2509, 7, 81, 2, 2, 2509, 2510, 7, 79, 2, 2, 2510, 2511, 7, 82, 2, 2, 2511, 2512, 7, 84, 2, 2, 2512, 2513, 7, 71, 2, 2, 2513, 2514, 7, 85, 2, 2, 2514, 2515, 7, 85, 2, 2, 2515, 2516, 7, 75, 2, 2, 2516, 2517, 7, 81, 2, 2, 2517, 2518, 7, 80, 2, 2, 2518, 162, 3, 2, 2, 2, 2519, 2520, 7, 70, 2, 2, 2520, 2521, 7, 67, 2, 2, 2521, 2522, 7, 86, 2, 2, 2522, 2523, 7, 67, 2, 2, 2523, 2524, 7, 97, 2, 2, 2524, 2525, 7, 85, 2, 2, 2525, 2526, 7, 81, 2, 2, 2526, 2527, 7, 87, 2, 2, 2527, 2528, 7, 84, 2, 2, 2528, 2529, 7, 69, 2, 2, 2529, 2530, 7, 71, 2, 2, 2530, 164, 3, 2, 2, 2, 2531, 2532, 7, 70, 2, 2, 2532, 2533, 7, 67, 2, 2, 2533, 2534, 7, 86, 2, 2, 2534, 2535, 7, 67, 2, 2, 2535, 2536, 7, 68, 2, 2, 2536, 2537, 7, 67, 2, 2, 2537, 2538, 7, 85, 2, 2, 2538, 2539, 7, 71, 2, 2, 2539, 166, 3, 2, 2, 2, 2540, 2541, 7, 70, 2, 2, 2541, 2542, 7, 67, 2, 2, 2542, 2543, 7, 86, 2, 2, 2543, 2544, 7, 67, 2, 2, 2544, 2545, 7, 68, 2, 2, 2545, 2546, 7, 67, 2, 2, 2546, 2547, 7, 85, 2, 2, 2547, 2548, 7, 71, 2, 2, 2548, 2549, 7, 97, 2, 2, 2549, 2550, 7, 79, 2, 2, 2550, 2551, 7, 75, 2, 2, 2551, 2552, 7, 84, 2, 2, 2552, 2553, 7, 84, 2, 2, 2553, 2554, 7, 81, 2, 2, 2554, 2555, 7, 84, 2, 2, 2555, 2556, 7, 75, 2, 2, 2556, 2557, 7, 80, 2, 2, 2557, 2558, 7, 73, 2, 2, 2558, 168, 3, 2, 2, 2, 2559, 2560, 7, 70, 2, 2, 2560, 2561, 7, 68, 2, 2, 2561, 2562, 7, 69, 2, 2, 2562, 2563, 7, 69, 2, 2, 2563, 170, 3, 2, 2, 2, 2564, 2565, 7, 70, 2, 2, 2565, 2566, 7, 71, 2, 2, 2566, 2567, 7, 67, 2, 2, 2567, 2568, 7, 78, 2, 2, 2568, 2569, 7, 78, 2, 2, 2569, 2570, 7, 81, 2, 2, 2570, 2571, 7, 69, 2, 2, 2571, 2572, 7, 67, 2, 2, 2572, 2573, 7, 86, 2, 2, 2573, 2574, 7, 71, 2, 2, 2574, 172, 3, 2, 2, 2, 2575, 2576, 7, 70, 2, 2, 2576, 2577, 7, 71, 2, 2, 2577, 2578, 7, 69, 2, 2, 2578, 2579, 7, 78, 2, 2, 2579, 2580, 7, 67, 2, 2, 2580, 2581, 7, 84, 2, 2, 2581, 2582, 7, 71, 2, 2, 2582, 174, 3, 2, 2, 2, 2583, 2584, 7, 70, 2, 2, 2584, 2585, 7, 71, 2, 2, 2585, 2586, 7, 72, 2, 2, 2586, 2587, 7, 67, 2, 2, 2587, 2588, 7, 87, 2, 2, 2588, 2589, 7, 78, 2, 2, 2589, 2590, 7, 86, 2, 2, 2590, 176, 3, 2, 2, 2, 2591, 2592, 7, 70, 2, 2, 2592, 2593, 7, 71, 2, 2, 2593, 2594, 7, 72, 2, 2, 2594, 2595, 7, 67, 2, 2, 2595, 2596, 7, 87, 2, 2, 2596, 2597, 7, 78, 2, 2, 2597, 2598, 7, 86, 2, 2, 2598, 2599, 7, 97, 2, 2, 2599, 2600, 7, 70, 2, 2, 2600, 2601, 7, 67, 2, 2, 2601, 2602, 7, 86, 2, 2, 2602, 2603, 7, 67, 2, 2, 2603, 2604, 7, 68, 2, 2, 2604, 2605, 7, 67, 2, 2, 2605, 2606, 7, 85, 2, 2, 2606, 2607, 7, 71, 2, 2, 2607, 178, 3, 2, 2, 2, 2608, 2609, 7, 70, 2, 2, 2609, 2610, 7, 71, 2, 2, 2610, 2611, 7, 72, 2, 2, 2611, 2612, 7, 67, 2, 2, 2612, 2613, 7, 87, 2, 2, 2613, 2614, 7, 78, 2, 2, 2614, 2615, 7, 86, 2, 2, 2615, 2616, 7, 97, 2, 2, 2616, 2617, 7, 85, 2, 2, 2617, 2618, 7, 69, 2, 2, 2618, 2619, 7, 74, 2, 2, 2619, 2620, 7, 71, 2, 2, 2620, 2621, 7, 79, 2, 2, 2621, 2622, 7, 67, 2, 2, 2622, 180, 3, 2, 2, 2, 2623, 2624, 7, 70, 2, 2, 2624, 2625, 7, 71, 2, 2, 2625, 2626, 7, 78, 2, 2, 2626, 2627, 7, 71, 2, 2, 2627, 2628, 7, 86, 2, 2, 2628, 2629, 7, 71, 2, 2, 2629, 182, 3, 2, 2, 2, 2630, 2631, 7, 70, 2, 2, 2631, 2632, 7, 71, 2, 2, 2632, 2633, 7, 80, 2, 2, 2633, 2634, 7, 91, 2, 2, 2634, 184, 3, 2, 2, 2, 2635, 2636, 7, 70, 2, 2, 2636, 2637, 7, 71, 2, 2, 2637, 2638, 7, 85, 2, 2, 2638, 2639, 7, 69, 2, 2, 2639, 186, 3, 2, 2, 2, 2640, 2641, 7, 70, 2, 2, 2641, 2642, 7, 75, 2, 2, 2642, 2643, 7, 67, 2, 2, 2643, 2644, 7, 73, 2, 2, 2644, 2645, 7, 80, 2, 2, 2645, 2646, 7, 81, 2, 2, 2646, 2647, 7, 85, 2, 2, 2647, 2648, 7, 86, 2, 2, 2648, 2649, 7, 75, 2, 2, 2649, 2650, 7, 69, 2, 2, 2650, 2651, 7, 85, 2, 2, 2651, 188, 3, 2, 2, 2, 2652, 2653, 7, 70, 2, 2, 2653, 2654, 7, 75, 2, 2, 2654, 2655, 7, 72, 2, 2, 2655, 2656, 7, 72, 2, 2, 2656, 2657, 7, 71, 2, 2, 2657, 2658, 7, 84, 2, 2, 2658, 2659, 7, 71, 2, 2, 2659, 2660, 7, 80, 2, 2, 2660, 2661, 7, 86, 2, 2, 2661, 2662, 7, 75, 2, 2, 2662, 2663, 7, 67, 2, 2, 2663, 2664, 7, 78, 2, 2, 2664, 190, 3, 2, 2, 2, 2665, 2666, 7, 70, 2, 2, 2666, 2667, 7, 75, 2, 2, 2667, 2668, 7, 85, 2, 2, 2668, 2669, 7, 77, 2, 2, 2669, 192, 3, 2, 2, 2, 2670, 2671, 7, 70, 2, 2, 2671, 2672, 7, 75, 2, 2, 2672, 2673, 7, 85, 2, 2, 2673, 2674, 7, 86, 2, 2, 2674, 2675, 7, 75, 2, 2, 2675, 2676, 7, 80, 2, 2, 2676, 2677, 7, 69, 2, 2, 2677, 2678, 7, 86, 2, 2, 2678, 194, 3, 2, 2, 2, 2679, 2680, 7, 70, 2, 2, 2680, 2681, 7, 75, 2, 2, 2681, 2682, 7, 85, 2, 2, 2682, 2683, 7, 86, 2, 2, 2683, 2684, 7, 84, 2, 2, 2684, 2685, 7, 75, 2, 2, 2685, 2686, 7, 68, 2, 2, 2686, 2687, 7, 87, 2, 2, 2687, 2688, 7, 86, 2, 2, 2688, 2689, 7, 71, 2, 2, 2689, 2690, 7, 70, 2, 2, 2690, 196, 3, 2, 2, 2, 2691, 2692, 7, 70, 2, 2, 2692, 2693, 7, 81, 2, 2, 2693, 2694, 7, 87, 2, 2, 2694, 2695, 7, 68, 2, 2, 2695, 2696, 7, 78, 2, 2, 2696, 2697, 7, 71, 2, 2, 2697, 198, 3, 2, 2, 2, 2698, 2699, 7, 94, 2, 2, 2699, 2700, 7, 94, 2, 2, 2700, 200, 3, 2, 2, 2, 2701, 2702, 7, 49, 2, 2, 2702, 2703, 7, 49, 2, 2, 2703, 202, 3, 2, 2, 2, 2704, 2705, 7, 70, 2, 2, 2705, 2706, 7, 84, 2, 2, 2706, 2707, 7, 81, 2, 2, 2707, 2708, 7, 82, 2, 2, 2708, 204, 3, 2, 2, 2, 2709, 2710, 7, 70, 2, 2, 2710, 2711, 7, 86, 2, 2, 2711, 2712, 7, 69, 2, 2, 2712, 2713, 7, 97, 2, 2, 2713, 2714, 7, 85, 2, 2, 2714, 2715, 7, 87, 2, 2, 2715, 2716, 7, 82, 2, 2, 2716, 2717, 7, 82, 2, 2, 2717, 2718, 7, 81, 2, 2, 2718, 2719, 7, 84, 2, 2, 2719, 2720, 7, 86, 2, 2, 2720, 206, 3, 2, 2, 2, 2721, 2722, 7, 70, 2, 2, 2722, 2723, 7, 87, 2, 2, 2723, 2724, 7, 79, 2, 2, 2724, 2725, 7, 82, 2, 2, 2725, 208, 3, 2, 2, 2, 2726, 2727, 7, 71, 2, 2, 2727, 2728, 7, 78, 2, 2, 2728, 2729, 7, 85, 2, 2, 2729, 2730, 7, 71, 2, 2, 2730, 210, 3, 2, 2, 2, 2731, 2732, 7, 71, 2, 2, 2732, 2733, 7, 80, 2, 2, 2733, 2734, 7, 67, 2, 2, 2734, 2735, 7, 68, 2, 2, 2735, 2736, 7, 78, 2, 2, 2736, 2737, 7, 71, 2, 2, 2737, 2738, 7, 70, 2, 2, 2738, 212, 3, 2, 2, 2, 2739, 2740, 7, 71, 2, 2, 2740, 2741, 7, 80, 2, 2, 2741, 2742, 7, 70, 2, 2, 2742, 214, 3, 2, 2, 2, 2743, 2744, 7, 71, 2, 2, 2744, 2745, 7, 80, 2, 2, 2745, 2746, 7, 70, 2, 2, 2746, 2747, 7, 82, 2, 2, 2747, 2748, 7, 81, 2, 2, 2748, 2749, 7, 75, 2, 2, 2749, 2750, 7, 80, 2, 2, 2750, 2751, 7, 86, 2, 2, 2751, 216, 3, 2, 2, 2, 2752, 2753, 7, 71, 2, 2, 2753, 2754, 7, 84, 2, 2, 2754, 2755, 7, 84, 2, 2, 2755, 2756, 7, 78, 2, 2, 2756, 2757, 7, 88, 2, 2, 2757, 2758, 7, 78, 2, 2, 2758, 218, 3, 2, 2, 2, 2759, 2760, 7, 71, 2, 2, 2760, 2761, 7, 85, 2, 2, 2761, 2762, 7, 69, 2, 2, 2762, 2763, 7, 67, 2, 2, 2763, 2764, 7, 82, 2, 2, 2764, 2765, 7, 71, 2, 2, 2765, 220, 3, 2, 2, 2, 2766, 2767, 7, 71, 2, 2, 2767, 2768, 7, 84, 2, 2, 2768, 2769, 7, 84, 2, 2, 2769, 2770, 7, 81, 2, 2, 2770, 2771, 7, 84, 2, 2, 2771, 222, 3, 2, 2, 2, 2772, 2773, 7, 71, 2, 2, 2773, 2774, 7, 88, 2, 2, 2774, 2775, 7, 71, 2, 2, 2775, 2776, 7, 80, 2, 2, 2776, 2777, 7, 86, 2, 2, 2777, 224, 3, 2, 2, 2, 2778, 2779, 7, 71, 2, 2, 2779, 2780, 7, 88, 2, 2, 2780, 2781, 7, 71, 2, 2, 2781, 2782, 7, 80, 2, 2, 2782, 2783, 7, 86, 2, 2, 2783, 2784, 7, 70, 2, 2, 2784, 2785, 7, 67, 2, 2, 2785, 2786, 7, 86, 2, 2, 2786, 2787, 7, 67, 2, 2, 2787, 2788, 3, 2, 2, 2, 2788, 2789, 7, 42, 2, 2, 2789, 2790, 7, 43, 2, 2, 2790, 226, 3, 2, 2, 2, 2791, 2792, 7, 71, 2, 2, 2792, 2793, 7, 88, 2, 2, 2793, 2794, 7, 71, 2, 2, 2794, 2795, 7, 80, 2, 2, 2795, 2796, 7, 86, 2, 2, 2796, 2797, 7, 97, 2, 2, 2797, 2798, 7, 84, 2, 2, 2798, 2799, 7, 71, 2, 2, 2799, 2800, 7, 86, 2, 2, 2800, 2801, 7, 71, 2, 2, 2801, 2802, 7, 80, 2, 2, 2802, 2803, 7, 86, 2, 2, 2803, 2804, 7, 75, 2, 2, 2804, 2805, 7, 81, 2, 2, 2805, 2806, 7, 80, 2, 2, 2806, 2807, 7, 97, 2, 2, 2807, 2808, 7, 79, 2, 2, 2808, 2809, 7, 81, 2, 2, 2809, 2810, 7, 70, 2, 2, 2810, 2811, 7, 71, 2, 2, 2811, 228, 3, 2, 2, 2, 2812, 2813, 7, 71, 2, 2, 2813, 2814, 7, 90, 2, 2, 2814, 2815, 7, 69, 2, 2, 2815, 2816, 7, 71, 2, 2, 2816, 2817, 7, 82, 2, 2, 2817, 2818, 7, 86, 2, 2, 2818, 230, 3, 2, 2, 2, 2819, 2820, 7, 71, 2, 2, 2820, 2821, 7, 90, 2, 2, 2821, 2822, 7, 71, 2, 2, 2822, 2823, 7, 69, 2, 2, 2823, 2824, 7, 87, 2, 2, 2824, 2825, 7, 86, 2, 2, 2825, 2826, 7, 67, 2, 2, 2826, 2827, 7, 68, 2, 2, 2827, 2828, 7, 78, 2, 2, 2828, 2829, 7, 71, 2, 2, 2829, 2830, 7, 97, 2, 2, 2830, 2831, 7, 72, 2, 2, 2831, 2832, 7, 75, 2, 2, 2832, 2833, 7, 78, 2, 2, 2833, 2834, 7, 71, 2, 2, 2834, 232, 3, 2, 2, 2, 2835, 2836, 7, 71, 2, 2, 2836, 2837, 7, 90, 2, 2, 2837, 2838, 7, 71, 2, 2, 2838, 2839, 7, 69, 2, 2, 2839, 2843, 3, 2, 2, 2, 2840, 2841, 7, 87, 2, 2, 2841, 2842, 7, 86, 2, 2, 2842, 2844, 7, 71, 2, 2, 2843, 2840, 3, 2, 2, 2, 2843, 2844, 3, 2, 2, 2, 2844, 234, 3, 2, 2, 2, 2845, 2846, 7, 71, 2, 2, 2846, 2847, 7, 90, 2, 2, 2847, 2848, 7, 75, 2, 2, 2848, 2849, 7, 85, 2, 2, 2849, 2850, 7, 86, 2, 2, 2850, 2851, 7, 85, 2, 2, 2851, 236, 3, 2, 2, 2, 2852, 2853, 7, 71, 2, 2, 2853, 2854, 7, 90, 2, 2, 2854, 2855, 7, 82, 2, 2, 2855, 2856, 7, 75, 2, 2, 2856, 2857, 7, 84, 2, 2, 2857, 2858, 7, 71, 2, 2, 2858, 2859, 7, 70, 2, 2, 2859, 2860, 7, 67, 2, 2, 2860, 2861, 7, 86, 2, 2, 2861, 2862, 7, 71, 2, 2, 2862, 238, 3, 2, 2, 2, 2863, 2864, 7, 71, 2, 2, 2864, 2865, 7, 90, 2, 2, 2865, 2866, 7, 75, 2, 2, 2866, 2867, 7, 86, 2, 2, 2867, 240, 3, 2, 2, 2, 2868, 2869, 7, 71, 2, 2, 2869, 2870, 7, 90, 2, 2, 2870, 2871, 7, 86, 2, 2, 2871, 2872, 7, 71, 2, 2, 2872, 2873, 7, 80, 2, 2, 2873, 2874, 7, 85, 2, 2, 2874, 2875, 7, 75, 2, 2, 2875, 2876, 7, 81, 2, 2, 2876, 2877, 7, 80, 2, 2, 2877, 242, 3, 2, 2, 2, 2878, 2879, 7, 71, 2, 2, 2879, 2880, 7, 90, 2, 2, 2880, 2881, 7, 86, 2, 2, 2881, 2882, 7, 71, 2, 2, 2882, 2883, 7, 84, 2, 2, 2883, 2884, 7, 80, 2, 2, 2884, 2885, 7, 67, 2, 2, 2885, 2886, 7, 78, 2, 2, 2886, 244, 3, 2, 2, 2, 2887, 2888, 7, 71, 2, 2, 2888, 2889, 7, 90, 2, 2, 2889, 2890, 7, 86, 2, 2, 2890, 2891, 7, 71, 2, 2, 2891, 2892, 7, 84, 2, 2, 2892, 2893, 7, 80, 2, 2, 2893, 2894, 7, 67, 2, 2, 2894, 2895, 7, 78, 2, 2, 2895, 2896, 7, 97, 2, 2, 2896, 2897, 7, 67, 2, 2, 2897, 2898, 7, 69, 2, 2, 2898, 2899, 7, 69, 2, 2, 2899, 2900, 7, 71, 2, 2, 2900, 2901, 7, 85, 2, 2, 2901, 2902, 7, 85, 2, 2, 2902, 246, 3, 2, 2, 2, 2903, 2904, 7, 72, 2, 2, 2904, 2905, 7, 67, 2, 2, 2905, 2906, 7, 75, 2, 2, 2906, 2907, 7, 78, 2, 2, 2907, 2908, 7, 81, 2, 2, 2908, 2909, 7, 88, 2, 2, 2909, 2910, 7, 71, 2, 2, 2910, 2911, 7, 84, 2, 2, 2911, 248, 3, 2, 2, 2, 2912, 2913, 7, 72, 2, 2, 2913, 2914, 7, 67, 2, 2, 2914, 2915, 7, 75, 2, 2, 2915, 2916, 7, 78, 2, 2, 2916, 2917, 7, 87, 2, 2, 2917, 2918, 7, 84, 2, 2, 2918, 2919, 7, 71, 2, 2, 2919, 2920, 7, 69, 2, 2, 2920, 2921, 7, 81, 2, 2, 2921, 2922, 7, 80, 2, 2, 2922, 2923, 7, 70, 2, 2, 2923, 2924, 7, 75, 2, 2, 2924, 2925, 7, 86, 2, 2, 2925, 2926, 7, 75, 2, 2, 2926, 2927, 7, 81, 2, 2, 2927, 2928, 7, 80, 2, 2, 2928, 2929, 7, 78, 2, 2, 2929, 2930, 7, 71, 2, 2, 2930, 2931, 7, 88, 2, 2, 2931, 2932, 7, 71, 2, 2, 2932, 2933, 7, 78, 2, 2, 2933, 250, 3, 2, 2, 2, 2934, 2935, 7, 72, 2, 2, 2935, 2936, 7, 67, 2, 2, 2936, 2937, 7, 80, 2, 2, 2937, 2938, 7, 97, 2, 2, 2938, 2939, 7, 75, 2, 2, 2939, 2940, 7, 80, 2, 2, 2940, 252, 3, 2, 2, 2, 2941, 2942, 7, 72, 2, 2, 2942, 2943, 7, 71, 2, 2, 2943, 2944, 7, 86, 2, 2, 2944, 2945, 7, 69, 2, 2, 2945, 2946, 7, 74, 2, 2, 2946, 254, 3, 2, 2, 2, 2947, 2948, 7, 72, 2, 2, 2948, 2949, 7, 75, 2, 2, 2949, 2950, 7, 78, 2, 2, 2950, 2951, 7, 71, 2, 2, 2951, 256, 3, 2, 2, 2, 2952, 2953, 7, 72, 2, 2, 2953, 2954, 7, 75, 2, 2, 2954, 2955, 7, 78, 2, 2, 2955, 2956, 7, 71, 2, 2, 2956, 2957, 7, 80, 2, 2, 2957, 2958, 7, 67, 2, 2, 2958, 2959, 7, 79, 2, 2, 2959, 2960, 7, 71, 2, 2, 2960, 258, 3, 2, 2, 2, 2961, 2962, 7, 72, 2, 2, 2962, 2963, 7, 75, 2, 2, 2963, 2964, 7, 78, 2, 2, 2964, 2965, 7, 78, 2, 2, 2965, 2966, 7, 72, 2, 2, 2966, 2967, 7, 67, 2, 2, 2967, 2968, 7, 69, 2, 2, 2968, 2969, 7, 86, 2, 2, 2969, 2970, 7, 81, 2, 2, 2970, 2971, 7, 84, 2, 2, 2971, 260, 3, 2, 2, 2, 2972, 2973, 7, 72, 2, 2, 2973, 2974, 7, 75, 2, 2, 2974, 2975, 7, 78, 2, 2, 2975, 2976, 7, 71, 2, 2, 2976, 2977, 7, 97, 2, 2, 2977, 2978, 7, 85, 2, 2, 2978, 2979, 7, 80, 2, 2, 2979, 2980, 7, 67, 2, 2, 2980, 2981, 7, 82, 2, 2, 2981, 2982, 7, 85, 2, 2, 2982, 2983, 7, 74, 2, 2, 2983, 2984, 7, 81, 2, 2, 2984, 2985, 7, 86, 2, 2, 2985, 262, 3, 2, 2, 2, 2986, 2987, 7, 72, 2, 2, 2987, 2988, 7, 81, 2, 2, 2988, 2989, 7, 84, 2, 2, 2989, 264, 3, 2, 2, 2, 2990, 2991, 7, 72, 2, 2, 2991, 2992, 7, 81, 2, 2, 2992, 2993, 7, 84, 2, 2, 2993, 2994, 7, 69, 2, 2, 2994, 2995, 7, 71, 2, 2, 2995, 2996, 7, 85, 2, 2, 2996, 2997, 7, 71, 2, 2, 2997, 2998, 7, 71, 2, 2, 2998, 2999, 7, 77, 2, 2, 2999, 266, 3, 2, 2, 2, 3000, 3001, 7, 72, 2, 2, 3001, 3002, 7, 81, 2, 2, 3002, 3003, 7, 84, 2, 2, 3003, 3004, 7, 69, 2, 2, 3004, 3005, 7, 71, 2, 2, 3005, 3006, 7, 97, 2, 2, 3006, 3007, 7, 85, 2, 2, 3007, 3008, 7, 71, 2, 2, 3008, 3009, 7, 84, 2, 2, 3009, 3010, 7, 88, 2, 2, 3010, 3011, 7, 75, 2, 2, 3011, 3012, 7, 69, 2, 2, 3012, 3013, 7, 71, 2, 2, 3013, 3014, 7, 97, 2, 2, 3014, 3015, 7, 67, 2, 2, 3015, 3016, 7, 78, 2, 2, 3016, 3017, 7, 78, 2, 2, 3017, 3018, 7, 81, 2, 2, 3018, 3019, 7, 89, 2, 2, 3019, 3020, 7, 97, 2, 2, 3020, 3021, 7, 70, 2, 2, 3021, 3022, 7, 67, 2, 2, 3022, 3023, 7, 86, 2, 2, 3023, 3024, 7, 67, 2, 2, 3024, 3025, 7, 97, 2, 2, 3025, 3026, 7, 78, 2, 2, 3026, 3027, 7, 81, 2, 2, 3027, 3028, 7, 85, 2, 2, 3028, 3029, 7, 85, 2, 2, 3029, 268, 3, 2, 2, 2, 3030, 3031, 7, 72, 2, 2, 3031, 3032, 7, 81, 2, 2, 3032, 3033, 7, 84, 2, 2, 3033, 3034, 7, 71, 2, 2, 3034, 3035, 7, 75, 2, 2, 3035, 3036, 7, 73, 2, 2, 3036, 3037, 7, 80, 2, 2, 3037, 270, 3, 2, 2, 2, 3038, 3039, 7, 72, 2, 2, 3039, 3040, 7, 84, 2, 2, 3040, 3041, 7, 71, 2, 2, 3041, 3042, 7, 71, 2, 2, 3042, 3043, 7, 86, 2, 2, 3043, 3044, 7, 71, 2, 2, 3044, 3045, 7, 90, 2, 2, 3045, 3046, 7, 86, 2, 2, 3046, 272, 3, 2, 2, 2, 3047, 3048, 7, 72, 2, 2, 3048, 3049, 7, 84, 2, 2, 3049, 3050, 7, 71, 2, 2, 3050, 3051, 7, 71, 2, 2, 3051, 3052, 7, 86, 2, 2, 3052, 3053, 7, 71, 2, 2, 3053, 3054, 7, 90, 2, 2, 3054, 3055, 7, 86, 2, 2, 3055, 3056, 7, 86, 2, 2, 3056, 3057, 7, 67, 2, 2, 3057, 3058, 7, 68, 2, 2, 3058, 3059, 7, 78, 2, 2, 3059, 3060, 7, 71, 2, 2, 3060, 274, 3, 2, 2, 2, 3061, 3062, 7, 72, 2, 2, 3062, 3063, 7, 84, 2, 2, 3063, 3064, 7, 81, 2, 2, 3064, 3065, 7, 79, 2, 2, 3065, 276, 3, 2, 2, 2, 3066, 3067, 7, 72, 2, 2, 3067, 3068, 7, 87, 2, 2, 3068, 3069, 7, 78, 2, 2, 3069, 3070, 7, 78, 2, 2, 3070, 278, 3, 2, 2, 2, 3071, 3072, 7, 72, 2, 2, 3072, 3073, 7, 87, 2, 2, 3073, 3074, 7, 80, 2, 2, 3074, 3075, 7, 69, 2, 2, 3075, 3076, 7, 86, 2, 2, 3076, 3077, 7, 75, 2, 2, 3077, 3078, 7, 81, 2, 2, 3078, 3079, 7, 80, 2, 2, 3079, 280, 3, 2, 2, 2, 3080, 3081, 7, 73, 2, 2, 3081, 3082, 7, 71, 2, 2, 3082, 3083, 7, 86, 2, 2, 3083, 282, 3, 2, 2, 2, 3084, 3085, 7, 73, 2, 2, 3085, 3086, 7, 81, 2, 2, 3086, 3087, 7, 86, 2, 2, 3087, 3088, 7, 81, 2, 2, 3088, 284, 3, 2, 2, 2, 3089, 3090, 7, 73, 2, 2, 3090, 3091, 7, 81, 2, 2, 3091, 3092, 7, 88, 2, 2, 3092, 3093, 7, 71, 2, 2, 3093, 3094, 7, 84, 2, 2, 3094, 3095, 7, 80, 2, 2, 3095, 3096, 7, 81, 2, 2, 3096, 3097, 7, 84, 2, 2, 3097, 286, 3, 2, 2, 2, 3098, 3099, 7, 73, 2, 2, 3099, 3100, 7, 84, 2, 2, 3100, 3101, 7, 67, 2, 2, 3101, 3102, 7, 80, 2, 2, 3102, 3103, 7, 86, 2, 2, 3103, 288, 3, 2, 2, 2, 3104, 3105, 7, 73, 2, 2, 3105, 3106, 7, 84, 2, 2, 3106, 3107, 7, 81, 2, 2, 3107, 3108, 7, 87, 2, 2, 3108, 3109, 7, 82, 2, 2, 3109, 290, 3, 2, 2, 2, 3110, 3111, 7, 74, 2, 2, 3111, 3112, 7, 67, 2, 2, 3112, 3113, 7, 88, 2, 2, 3113, 3114, 7, 75, 2, 2, 3114, 3115, 7, 80, 2, 2, 3115, 3116, 7, 73, 2, 2, 3116, 292, 3, 2, 2, 2, 3117, 3118, 7, 74, 2, 2, 3118, 3119, 7, 67, 2, 2, 3119, 3120, 7, 85, 2, 2, 3120, 3121, 7, 74, 2, 2, 3121, 3122, 7, 71, 2, 2, 3122, 3123, 7, 70, 2, 2, 3123, 294, 3, 2, 2, 2, 3124, 3125, 7, 74, 2, 2, 3125, 3126, 7, 71, 2, 2, 3126, 3127, 7, 67, 2, 2, 3127, 3128, 7, 78, 2, 2, 3128, 3129, 7, 86, 2, 2, 3129, 3130, 7, 74, 2, 2, 3130, 3131, 7, 69, 2, 2, 3131, 3132, 7, 74, 2, 2, 3132, 3133, 7, 71, 2, 2, 3133, 3134, 7, 69, 2, 2, 3134, 3135, 7, 77, 2, 2, 3135, 3136, 7, 86, 2, 2, 3136, 3137, 7, 75, 2, 2, 3137, 3138, 7, 79, 2, 2, 3138, 3139, 7, 71, 2, 2, 3139, 3140, 7, 81, 2, 2, 3140, 3141, 7, 87, 2, 2, 3141, 3142, 7, 86, 2, 2, 3142, 296, 3, 2, 2, 2, 3143, 3144, 7, 75, 2, 2, 3144, 3145, 7, 70, 2, 2, 3145, 3146, 7, 71, 2, 2, 3146, 3147, 7, 80, 2, 2, 3147, 3148, 7, 86, 2, 2, 3148, 3149, 7, 75, 2, 2, 3149, 3150, 7, 86, 2, 2, 3150, 3151, 7, 91, 2, 2, 3151, 298, 3, 2, 2, 2, 3152, 3153, 7, 75, 2, 2, 3153, 3154, 7, 70, 2, 2, 3154, 3155, 7, 71, 2, 2, 3155, 3156, 7, 80, 2, 2, 3156, 3157, 7, 86, 2, 2, 3157, 3158, 7, 75, 2, 2, 3158, 3159, 7, 86, 2, 2, 3159, 3160, 7, 91, 2, 2, 3160, 3161, 7, 69, 2, 2, 3161, 3162, 7, 81, 2, 2, 3162, 3163, 7, 78, 2, 2, 3163, 300, 3, 2, 2, 2, 3164, 3165, 7, 75, 2, 2, 3165, 3166, 7, 70, 2, 2, 3166, 3167, 7, 71, 2, 2, 3167, 3168, 7, 80, 2, 2, 3168, 3169, 7, 86, 2, 2, 3169, 3170, 7, 75, 2, 2, 3170, 3171, 7, 86, 2, 2, 3171, 3172, 7, 91, 2, 2, 3172, 3173, 7, 97, 2, 2, 3173, 3174, 7, 75, 2, 2, 3174, 3175, 7, 80, 2, 2, 3175, 3176, 7, 85, 2, 2, 3176, 3177, 7, 71, 2, 2, 3177, 3178, 7, 84, 2, 2, 3178, 3179, 7, 86, 2, 2, 3179, 302, 3, 2, 2, 2, 3180, 3181, 7, 75, 2, 2, 3181, 3182, 7, 72, 2, 2, 3182, 304, 3, 2, 2, 2, 3183, 3184, 7, 75, 2, 2, 3184, 3185, 7, 75, 2, 2, 3185, 3186, 7, 72, 2, 2, 3186, 306, 3, 2, 2, 2, 3187, 3188, 7, 75, 2, 2, 3188, 3189, 7, 80, 2, 2, 3189, 308, 3, 2, 2, 2, 3190, 3191, 7, 75, 2, 2, 3191, 3192, 7, 80, 2, 2, 3192, 3193, 7, 69, 2, 2, 3193, 3194, 7, 78, 2, 2, 3194, 3195, 7, 87, 2, 2, 3195, 3196, 7, 70, 2, 2, 3196, 3197, 7, 71, 2, 2, 3197, 310, 3, 2, 2, 2, 3198, 3199, 7, 75, 2, 2, 3199, 3200, 7, 80, 2, 2, 3200, 3201, 7, 69, 2, 2, 3201, 3202, 7, 84, 2, 2, 3202, 3203, 7, 71, 2, 2, 3203, 3204, 7, 79, 2, 2, 3204, 3205, 7, 71, 2, 2, 3205, 3206, 7, 80, 2, 2, 3206, 3207, 7, 86, 2, 2, 3207, 312, 3, 2, 2, 2, 3208, 3209, 7, 75, 2, 2, 3209, 3210, 7, 80, 2, 2, 3210, 3211, 7, 70, 2, 2, 3211, 3212, 7, 71, 2, 2, 3212, 3213, 7, 90, 2, 2, 3213, 314, 3, 2, 2, 2, 3214, 3215, 7, 75, 2, 2, 3215, 3216, 7, 80, 2, 2, 3216, 3217, 7, 72, 2, 2, 3217, 3218, 7, 75, 2, 2, 3218, 3219, 7, 80, 2, 2, 3219, 3220, 7, 75, 2, 2, 3220, 3221, 7, 86, 2, 2, 3221, 3222, 7, 71, 2, 2, 3222, 316, 3, 2, 2, 2, 3223, 3224, 7, 75, 2, 2, 3224, 3225, 7, 80, 2, 2, 3225, 3226, 7, 75, 2, 2, 3226, 3227, 7, 86, 2, 2, 3227, 318, 3, 2, 2, 2, 3228, 3229, 7, 75, 2, 2, 3229, 3230, 7, 80, 2, 2, 3230, 3231, 7, 80, 2, 2, 3231, 3232, 7, 71, 2, 2, 3232, 3233, 7, 84, 2, 2, 3233, 320, 3, 2, 2, 2, 3234, 3235, 7, 75, 2, 2, 3235, 3236, 7, 80, 2, 2, 3236, 3237, 7, 85, 2, 2, 3237, 3238, 7, 71, 2, 2, 3238, 3239, 7, 84, 2, 2, 3239, 3240, 7, 86, 2, 2, 3240, 322, 3, 2, 2, 2, 3241, 3242, 7, 75, 2, 2, 3242, 3243, 7, 80, 2, 2, 3243, 3244, 7, 85, 2, 2, 3244, 3245, 7, 86, 2, 2, 3245, 3246, 7, 71, 2, 2, 3246, 3247, 7, 67, 2, 2, 3247, 3248, 7, 70, 2, 2, 3248, 324, 3, 2, 2, 2, 3249, 3250, 7, 75, 2, 2, 3250, 3251, 7, 80, 2, 2, 3251, 3252, 7, 86, 2, 2, 3252, 3253, 7, 71, 2, 2, 3253, 3254, 7, 84, 2, 2, 3254, 3255, 7, 85, 2, 2, 3255, 3256, 7, 71, 2, 2, 3256, 3257, 7, 69, 2, 2, 3257, 3258, 7, 86, 2, 2, 3258, 326, 3, 2, 2, 2, 3259, 3260, 7, 75, 2, 2, 3260, 3261, 7, 80, 2, 2, 3261, 3262, 7, 86, 2, 2, 3262, 3263, 7, 81, 2, 2, 3263, 328, 3, 2, 2, 2, 3264, 3266, 9, 2, 2, 2, 3265, 3264, 3, 2, 2, 2, 3265, 3266, 3, 2, 2, 2, 3266, 3267, 3, 2, 2, 2, 3267, 3268, 5, 1685, 843, 2, 3268, 3269, 5, 1643, 822, 2, 3269, 3270, 5, 1685, 843, 2, 3270, 3271, 5, 1643, 822, 2, 3271, 3272, 5, 1685, 843, 2, 3272, 3273, 5, 1643, 822, 2, 3273, 3275, 5, 1685, 843, 2, 3274, 3276, 9, 2, 2, 2, 3275, 3274, 3, 2, 2, 2, 3275, 3276, 3, 2, 2, 2, 3276, 330, 3, 2, 2, 2, 3277, 3279, 9, 2, 2, 2, 3278, 3277, 3, 2, 2, 2, 3278, 3279, 3, 2, 2, 2, 3279, 3281, 3, 2, 2, 2, 3280, 3282, 9, 3, 2, 2, 3281, 3280, 3, 2, 2, 2, 3281, 3282, 3, 2, 2, 2, 3282, 3284, 3, 2, 2, 2, 3283, 3285, 9, 3, 2, 2, 3284, 3283, 3, 2, 2, 2, 3284, 3285, 3, 2, 2, 2, 3285, 3287, 3, 2, 2, 2, 3286, 3288, 9, 3, 2, 2, 3287, 3286, 3, 2, 2, 2, 3287, 3288, 3, 2, 2, 2, 3288, 3290, 3, 2, 2, 2, 3289, 3291, 9, 3, 2, 2, 3290, 3289, 3, 2, 2, 2, 3290, 3291, 3, 2, 2, 2, 3291, 3292, 3, 2, 2, 2, 3292, 3294, 9, 4, 2, 2, 3293, 3295, 9, 3, 2, 2, 3294, 3293, 3, 2, 2, 2, 3294, 3295, 3, 2, 2, 2, 3295, 3297, 3, 2, 2, 2, 3296, 3298, 9, 3, 2, 2, 3297, 3296, 3, 2, 2, 2, 3297, 3298, 3, 2, 2, 2, 3298, 3300, 3, 2, 2, 2, 3299, 3301, 9, 3, 2, 2, 3300, 3299, 3, 2, 2, 2, 3300, 3301, 3, 2, 2, 2, 3301, 3303, 3, 2, 2, 2, 3302, 3304, 9, 3, 2, 2, 3303, 3302, 3, 2, 2, 2, 3303, 3304, 3, 2, 2, 2, 3304, 3305, 3, 2, 2, 2, 3305, 3307, 9, 4, 2, 2, 3306, 3308, 9, 3, 2, 2, 3307, 3306, 3, 2, 2, 2, 3307, 3308, 3, 2, 2, 2, 3308, 3310, 3, 2, 2, 2, 3309, 3311, 9, 3, 2, 2, 3310, 3309, 3, 2, 2, 2, 3310, 3311, 3, 2, 2, 2, 3311, 3313, 3, 2, 2, 2, 3312, 3314, 9, 3, 2, 2, 3313, 3312, 3, 2, 2, 2, 3313, 3314, 3, 2, 2, 2, 3314, 3316, 3, 2, 2, 2, 3315, 3317, 9, 3, 2, 2, 3316, 3315, 3, 2, 2, 2, 3316, 3317, 3, 2, 2, 2, 3317, 3318, 3, 2, 2, 2, 3318, 3320, 9, 4, 2, 2, 3319, 3321, 9, 3, 2, 2, 3320, 3319, 3, 2, 2, 2, 3320, 3321, 3, 2, 2, 2, 3321, 3323, 3, 2, 2, 2, 3322, 3324, 9, 3, 2, 2, 3323, 3322, 3, 2, 2, 2, 3323, 3324, 3, 2, 2, 2, 3324, 3326, 3, 2, 2, 2, 3325, 3327, 9, 3, 2, 2, 3326, 3325, 3, 2, 2, 2, 3326, 3327, 3, 2, 2, 2, 3327, 3329, 3, 2, 2, 2, 3328, 3330, 9, 3, 2, 2, 3329, 3328, 3, 2, 2, 2, 3329, 3330, 3, 2, 2, 2, 3330, 3331, 3, 2, 2, 2, 3331, 3333, 9, 4, 2, 2, 3332, 3334, 9, 3, 2, 2, 3333, 3332, 3, 2, 2, 2, 3333, 3334, 3, 2, 2, 2, 3334, 3336, 3, 2, 2, 2, 3335, 3337, 9, 3, 2, 2, 3336, 3335, 3, 2, 2, 2, 3336, 3337, 3, 2, 2, 2, 3337, 3339, 3, 2, 2, 2, 3338, 3340, 9, 3, 2, 2, 3339, 3338, 3, 2, 2, 2, 3339, 3340, 3, 2, 2, 2, 3340, 3342, 3, 2, 2, 2, 3341, 3343, 9, 3, 2, 2, 3342, 3341, 3, 2, 2, 2, 3342, 3343, 3, 2, 2, 2, 3343, 3344, 3, 2, 2, 2, 3344, 3346, 9, 4, 2, 2, 3345, 3347, 9, 3, 2, 2, 3346, 3345, 3, 2, 2, 2, 3346, 3347, 3, 2, 2, 2, 3347, 3349, 3, 2, 2, 2, 3348, 3350, 9, 3, 2, 2, 3349, 3348, 3, 2, 2, 2, 3349, 3350, 3, 2, 2, 2, 3350, 3352, 3, 2, 2, 2, 3351, 3353, 9, 3, 2, 2, 3352, 3351, 3, 2, 2, 2, 3352, 3353, 3, 2, 2, 2, 3353, 3355, 3, 2, 2, 2, 3354, 3356, 9, 3, 2, 2, 3355, 3354, 3, 2, 2, 2, 3355, 3356, 3, 2, 2, 2, 3356, 3357, 3, 2, 2, 2, 3357, 3359, 9, 4, 2, 2, 3358, 3360, 9, 3, 2, 2, 3359, 3358, 3, 2, 2, 2, 3359, 3360, 3, 2, 2, 2, 3360, 3362, 3, 2, 2, 2, 3361, 3363, 9, 3, 2, 2, 3362, 3361, 3, 2, 2, 2, 3362, 3363, 3, 2, 2, 2, 3363, 3365, 3, 2, 2, 2, 3364, 3366, 9, 3, 2, 2, 3365, 3364, 3, 2, 2, 2, 3365, 3366, 3, 2, 2, 2, 3366, 3368, 3, 2, 2, 2, 3367, 3369, 9, 3, 2, 2, 3368, 3367, 3, 2, 2, 2, 3368, 3369, 3, 2, 2, 2, 3369, 3370, 3, 2, 2, 2, 3370, 3372, 9, 4, 2, 2, 3371, 3373, 9, 3, 2, 2, 3372, 3371, 3, 2, 2, 2, 3372, 3373, 3, 2, 2, 2, 3373, 3375, 3, 2, 2, 2, 3374, 3376, 9, 3, 2, 2, 3375, 3374, 3, 2, 2, 2, 3375, 3376, 3, 2, 2, 2, 3376, 3378, 3, 2, 2, 2, 3377, 3379, 9, 3, 2, 2, 3378, 3377, 3, 2, 2, 2, 3378, 3379, 3, 2, 2, 2, 3379, 3381, 3, 2, 2, 2, 3380, 3382, 9, 3, 2, 2, 3381, 3380, 3, 2, 2, 2, 3381, 3382, 3, 2, 2, 2, 3382, 3384, 3, 2, 2, 2, 3383, 3385, 9, 2, 2, 2, 3384, 3383, 3, 2, 2, 2, 3384, 3385, 3, 2, 2, 2, 3385, 332, 3, 2, 2, 2, 3386, 3387, 7, 75, 2, 2, 3387, 3388, 7, 85, 2, 2, 3388, 334, 3, 2, 2, 2, 3389, 3390, 7, 75, 2, 2, 3390, 3391, 7, 85, 2, 2, 3391, 3392, 7, 80, 2, 2, 3392, 3393, 7, 87, 2, 2, 3393, 3394, 7, 78, 2, 2, 3394, 3395, 7, 78, 2, 2, 3395, 336, 3, 2, 2, 2, 3396, 3397, 7, 76, 2, 2, 3397, 3398, 7, 81, 2, 2, 3398, 3399, 7, 75, 2, 2, 3399, 3400, 7, 80, 2, 2, 3400, 338, 3, 2, 2, 2, 3401, 3402, 7, 77, 2, 2, 3402, 3403, 7, 71, 2, 2, 3403, 3404, 7, 84, 2, 2, 3404, 3405, 7, 68, 2, 2, 3405, 3406, 7, 71, 2, 2, 3406, 3407, 7, 84, 2, 2, 3407, 3408, 7, 81, 2, 2, 3408, 3409, 7, 85, 2, 2, 3409, 340, 3, 2, 2, 2, 3410, 3411, 7, 77, 2, 2, 3411, 3412, 7, 71, 2, 2, 3412, 3413, 7, 91, 2, 2, 3413, 342, 3, 2, 2, 2, 3414, 3415, 7, 77, 2, 2, 3415, 3416, 7, 71, 2, 2, 3416, 3417, 7, 91, 2, 2, 3417, 3418, 7, 97, 2, 2, 3418, 3419, 7, 82, 2, 2, 3419, 3420, 7, 67, 2, 2, 3420, 3421, 7, 86, 2, 2, 3421, 3422, 7, 74, 2, 2, 3422, 344, 3, 2, 2, 2, 3423, 3424, 7, 77, 2, 2, 3424, 3425, 7, 71, 2, 2, 3425, 3426, 7, 91, 2, 2, 3426, 3427, 7, 97, 2, 2, 3427, 3428, 7, 85, 2, 2, 3428, 3429, 7, 86, 2, 2, 3429, 3430, 7, 81, 2, 2, 3430, 3431, 7, 84, 2, 2, 3431, 3432, 7, 71, 2, 2, 3432, 3433, 7, 97, 2, 2, 3433, 3434, 7, 82, 2, 2, 3434, 3435, 7, 84, 2, 2, 3435, 3436, 7, 81, 2, 2, 3436, 3437, 7, 88, 2, 2, 3437, 3438, 7, 75, 2, 2, 3438, 3439, 7, 70, 2, 2, 3439, 3440, 7, 71, 2, 2, 3440, 3441, 7, 84, 2, 2, 3441, 3442, 7, 97, 2, 2, 3442, 3443, 7, 80, 2, 2, 3443, 3444, 7, 67, 2, 2, 3444, 3445, 7, 79, 2, 2, 3445, 3446, 7, 71, 2, 2, 3446, 346, 3, 2, 2, 2, 3447, 3448, 7, 77, 2, 2, 3448, 3449, 7, 75, 2, 2, 3449, 3450, 7, 78, 2, 2, 3450, 3451, 7, 78, 2, 2, 3451, 348, 3, 2, 2, 2, 3452, 3453, 7, 78, 2, 2, 3453, 3454, 7, 67, 2, 2, 3454, 3455, 7, 80, 2, 2, 3455, 3456, 7, 73, 2, 2, 3456, 3457, 7, 87, 2, 2, 3457, 3458, 7, 67, 2, 2, 3458, 3459, 7, 73, 2, 2, 3459, 3460, 7, 71, 2, 2, 3460, 350, 3, 2, 2, 2, 3461, 3462, 7, 78, 2, 2, 3462, 3463, 7, 71, 2, 2, 3463, 3464, 7, 72, 2, 2, 3464, 3465, 7, 86, 2, 2, 3465, 352, 3, 2, 2, 2, 3466, 3467, 7, 78, 2, 2, 3467, 3468, 7, 75, 2, 2, 3468, 3469, 7, 68, 2, 2, 3469, 3470, 7, 84, 2, 2, 3470, 3471, 7, 67, 2, 2, 3471, 3472, 7, 84, 2, 2, 3472, 3473, 7, 91, 2, 2, 3473, 354, 3, 2, 2, 2, 3474, 3475, 7, 78, 2, 2, 3475, 3476, 7, 75, 2, 2, 3476, 3477, 7, 72, 2, 2, 3477, 3478, 7, 71, 2, 2, 3478, 3479, 7, 86, 2, 2, 3479, 3480, 7, 75, 2, 2, 3480, 3481, 7, 79, 2, 2, 3481, 3482, 7, 71, 2, 2, 3482, 356, 3, 2, 2, 2, 3483, 3484, 7, 78, 2, 2, 3484, 3485, 7, 75, 2, 2, 3485, 3486, 7, 77, 2, 2, 3486, 3487, 7, 71, 2, 2, 3487, 358, 3, 2, 2, 2, 3488, 3489, 7, 78, 2, 2, 3489, 3490, 7, 75, 2, 2, 3490, 3491, 7, 80, 2, 2, 3491, 3492, 7, 71, 2, 2, 3492, 3493, 7, 80, 2, 2, 3493, 3494, 7, 81, 2, 2, 3494, 360, 3, 2, 2, 2, 3495, 3496, 7, 78, 2, 2, 3496, 3497, 7, 75, 2, 2, 3497, 3498, 7, 80, 2, 2, 3498, 3499, 7, 87, 2, 2, 3499, 3500, 7, 90, 2, 2, 3500, 362, 3, 2, 2, 2, 3501, 3502, 7, 78, 2, 2, 3502, 3503, 7, 75, 2, 2, 3503, 3504, 7, 85, 2, 2, 3504, 3505, 7, 86, 2, 2, 3505, 3506, 7, 71, 2, 2, 3506, 3507, 7, 80, 2, 2, 3507, 3508, 7, 71, 2, 2, 3508, 3509, 7, 84, 2, 2, 3509, 3510, 7, 97, 2, 2, 3510, 3511, 7, 75, 2, 2, 3511, 3512, 7, 82, 2, 2, 3512, 364, 3, 2, 2, 2, 3513, 3514, 7, 78, 2, 2, 3514, 3515, 7, 75, 2, 2, 3515, 3516, 7, 85, 2, 2, 3516, 3517, 7, 86, 2, 2, 3517, 3518, 7, 71, 2, 2, 3518, 3519, 7, 80, 2, 2, 3519, 3520, 7, 71, 2, 2, 3520, 3521, 7, 84, 2, 2, 3521, 3522, 7, 97, 2, 2, 3522, 3523, 7, 82, 2, 2, 3523, 3524, 7, 81, 2, 2, 3524, 3525, 7, 84, 2, 2, 3525, 3526, 7, 86, 2, 2, 3526, 366, 3, 2, 2, 2, 3527, 3528, 7, 78, 2, 2, 3528, 3529, 7, 81, 2, 2, 3529, 3530, 7, 67, 2, 2, 3530, 3531, 7, 70, 2, 2, 3531, 368, 3, 2, 2, 2, 3532, 3533, 7, 78, 2, 2, 3533, 3534, 7, 81, 2, 2, 3534, 3535, 7, 69, 2, 2, 3535, 3536, 7, 67, 2, 2, 3536, 3537, 7, 78, 2, 2, 3537, 3538, 7, 97, 2, 2, 3538, 3539, 7, 85, 2, 2, 3539, 3540, 7, 71, 2, 2, 3540, 3541, 7, 84, 2, 2, 3541, 3542, 7, 88, 2, 2, 3542, 3543, 7, 75, 2, 2, 3543, 3544, 7, 69, 2, 2, 3544, 3545, 7, 71, 2, 2, 3545, 3546, 7, 97, 2, 2, 3546, 3547, 7, 80, 2, 2, 3547, 3548, 7, 67, 2, 2, 3548, 3549, 7, 79, 2, 2, 3549, 3550, 7, 71, 2, 2, 3550, 370, 3, 2, 2, 2, 3551, 3552, 7, 78, 2, 2, 3552, 3553, 7, 81, 2, 2, 3553, 3554, 7, 73, 2, 2, 3554, 372, 3, 2, 2, 2, 3555, 3556, 7, 79, 2, 2, 3556, 3557, 7, 67, 2, 2, 3557, 3558, 7, 86, 2, 2, 3558, 3559, 7, 69, 2, 2, 3559, 3560, 7, 74, 2, 2, 3560, 3561, 7, 71, 2, 2, 3561, 3562, 7, 70, 2, 2, 3562, 374, 3, 2, 2, 2, 3563, 3564, 7, 79, 2, 2, 3564, 3565, 7, 67, 2, 2, 3565, 3566, 7, 85, 2, 2, 3566, 3567, 7, 86, 2, 2, 3567, 3568, 7, 71, 2, 2, 3568, 3569, 7, 84, 2, 2, 3569, 376, 3, 2, 2, 2, 3570, 3571, 7, 79, 2, 2, 3571, 3572, 7, 67, 2, 2, 3572, 3573, 7, 90, 2, 2, 3573, 3574, 7, 97, 2, 2, 3574, 3575, 7, 79, 2, 2, 3575, 3576, 7, 71, 2, 2, 3576, 3577, 7, 79, 2, 2, 3577, 3578, 7, 81, 2, 2, 3578, 3579, 7, 84, 2, 2, 3579, 3580, 7, 91, 2, 2, 3580, 378, 3, 2, 2, 2, 3581, 3582, 7, 79, 2, 2, 3582, 3583, 7, 67, 2, 2, 3583, 3584, 7, 90, 2, 2, 3584, 3585, 7, 86, 2, 2, 3585, 3586, 7, 84, 2, 2, 3586, 3587, 7, 67, 2, 2, 3587, 3588, 7, 80, 2, 2, 3588, 3589, 7, 85, 2, 2, 3589, 3590, 7, 72, 2, 2, 3590, 3591, 7, 71, 2, 2, 3591, 3592, 7, 84, 2, 2, 3592, 380, 3, 2, 2, 2, 3593, 3594, 7, 79, 2, 2, 3594, 3595, 7, 67, 2, 2, 3595, 3596, 7, 90, 2, 2, 3596, 3597, 7, 88, 2, 2, 3597, 3598, 7, 67, 2, 2, 3598, 3599, 7, 78, 2, 2, 3599, 3600, 7, 87, 2, 2, 3600, 3601, 7, 71, 2, 2, 3601, 382, 3, 2, 2, 2, 3602, 3603, 7, 79, 2, 2, 3603, 3604, 7, 67, 2, 2, 3604, 3605, 7, 90, 2, 2, 3605, 3606, 7, 97, 2, 2, 3606, 3607, 7, 70, 2, 2, 3607, 3608, 7, 75, 2, 2, 3608, 3609, 7, 85, 2, 2, 3609, 3610, 7, 82, 2, 2, 3610, 3611, 7, 67, 2, 2, 3611, 3612, 7, 86, 2, 2, 3612, 3613, 7, 69, 2, 2, 3613, 3614, 7, 74, 2, 2, 3614, 3615, 7, 97, 2, 2, 3615, 3616, 7, 78, 2, 2, 3616, 3617, 7, 67, 2, 2, 3617, 3618, 7, 86, 2, 2, 3618, 3619, 7, 71, 2, 2, 3619, 3620, 7, 80, 2, 2, 3620, 3621, 7, 69, 2, 2, 3621, 3622, 7, 91, 2, 2, 3622, 384, 3, 2, 2, 2, 3623, 3624, 7, 79, 2, 2, 3624, 3625, 7, 67, 2, 2, 3625, 3626, 7, 90, 2, 2, 3626, 3627, 7, 97, 2, 2, 3627, 3628, 7, 71, 2, 2, 3628, 3629, 7, 88, 2, 2, 3629, 3630, 7, 71, 2, 2, 3630, 3631, 7, 80, 2, 2, 3631, 3632, 7, 86, 2, 2, 3632, 3633, 7, 97, 2, 2, 3633, 3634, 7, 85, 2, 2, 3634, 3635, 7, 75, 2, 2, 3635, 3636, 7, 92, 2, 2, 3636, 3637, 7, 71, 2, 2, 3637, 386, 3, 2, 2, 2, 3638, 3639, 7, 79, 2, 2, 3639, 3640, 7, 67, 2, 2, 3640, 3641, 7, 90, 2, 2, 3641, 3642, 7, 97, 2, 2, 3642, 3643, 7, 85, 2, 2, 3643, 3644, 7, 75, 2, 2, 3644, 3645, 7, 92, 2, 2, 3645, 3646, 7, 71, 2, 2, 3646, 388, 3, 2, 2, 2, 3647, 3648, 7, 79, 2, 2, 3648, 3649, 7, 67, 2, 2, 3649, 3650, 7, 90, 2, 2, 3650, 3651, 7, 97, 2, 2, 3651, 3652, 7, 81, 2, 2, 3652, 3653, 7, 87, 2, 2, 3653, 3654, 7, 86, 2, 2, 3654, 3655, 7, 85, 2, 2, 3655, 3656, 7, 86, 2, 2, 3656, 3657, 7, 67, 2, 2, 3657, 3658, 7, 80, 2, 2, 3658, 3659, 7, 70, 2, 2, 3659, 3660, 7, 75, 2, 2, 3660, 3661, 7, 80, 2, 2, 3661, 3662, 7, 73, 2, 2, 3662, 3663, 7, 97, 2, 2, 3663, 3664, 7, 75, 2, 2, 3664, 3665, 7, 81, 2, 2, 3665, 3666, 7, 97, 2, 2, 3666, 3667, 7, 82, 2, 2, 3667, 3668, 7, 71, 2, 2, 3668, 3669, 7, 84, 2, 2, 3669, 3670, 7, 97, 2, 2, 3670, 3671, 7, 88, 2, 2, 3671, 3672, 7, 81, 2, 2, 3672, 3673, 7, 78, 2, 2, 3673, 3674, 7, 87, 2, 2, 3674, 3675, 7, 79, 2, 2, 3675, 3676, 7, 71, 2, 2, 3676, 390, 3, 2, 2, 2, 3677, 3678, 7, 79, 2, 2, 3678, 3679, 7, 71, 2, 2, 3679, 3680, 7, 70, 2, 2, 3680, 3681, 7, 75, 2, 2, 3681, 3682, 7, 67, 2, 2, 3682, 3683, 7, 70, 2, 2, 3683, 3684, 7, 71, 2, 2, 3684, 3685, 7, 85, 2, 2, 3685, 3686, 7, 69, 2, 2, 3686, 3687, 7, 84, 2, 2, 3687, 3688, 7, 75, 2, 2, 3688, 3689, 7, 82, 2, 2, 3689, 3690, 7, 86, 2, 2, 3690, 3691, 7, 75, 2, 2, 3691, 3692, 7, 81, 2, 2, 3692, 3693, 7, 80, 2, 2, 3693, 392, 3, 2, 2, 2, 3694, 3695, 7, 79, 2, 2, 3695, 3696, 7, 71, 2, 2, 3696, 3697, 7, 70, 2, 2, 3697, 3698, 7, 75, 2, 2, 3698, 3699, 7, 67, 2, 2, 3699, 3700, 7, 80, 2, 2, 3700, 3701, 7, 67, 2, 2, 3701, 3702, 7, 79, 2, 2, 3702, 3703, 7, 71, 2, 2, 3703, 394, 3, 2, 2, 2, 3704, 3705, 7, 79, 2, 2, 3705, 3706, 7, 71, 2, 2, 3706, 3707, 7, 79, 2, 2, 3707, 3708, 7, 68, 2, 2, 3708, 3709, 7, 71, 2, 2, 3709, 3710, 7, 84, 2, 2, 3710, 396, 3, 2, 2, 2, 3711, 3712, 7, 79, 2, 2, 3712, 3713, 7, 71, 2, 2, 3713, 3714, 7, 79, 2, 2, 3714, 3715, 7, 81, 2, 2, 3715, 3716, 7, 84, 2, 2, 3716, 3717, 7, 91, 2, 2, 3717, 3718, 7, 97, 2, 2, 3718, 3719, 7, 82, 2, 2, 3719, 3720, 7, 67, 2, 2, 3720, 3721, 7, 84, 2, 2, 3721, 3722, 7, 86, 2, 2, 3722, 3723, 7, 75, 2, 2, 3723, 3724, 7, 86, 2, 2, 3724, 3725, 7, 75, 2, 2, 3725, 3726, 7, 81, 2, 2, 3726, 3727, 7, 80, 2, 2, 3727, 3728, 7, 97, 2, 2, 3728, 3729, 7, 79, 2, 2, 3729, 3730, 7, 81, 2, 2, 3730, 3731, 7, 70, 2, 2, 3731, 3732, 7, 71, 2, 2, 3732, 398, 3, 2, 2, 2, 3733, 3734, 7, 79, 2, 2, 3734, 3735, 7, 71, 2, 2, 3735, 3736, 7, 84, 2, 2, 3736, 3737, 7, 73, 2, 2, 3737, 3738, 7, 71, 2, 2, 3738, 400, 3, 2, 2, 2, 3739, 3740, 7, 79, 2, 2, 3740, 3741, 7, 71, 2, 2, 3741, 3742, 7, 85, 2, 2, 3742, 3743, 7, 85, 2, 2, 3743, 3744, 7, 67, 2, 2, 3744, 3745, 7, 73, 2, 2, 3745, 3746, 7, 71, 2, 2, 3746, 3747, 7, 97, 2, 2, 3747, 3748, 7, 72, 2, 2, 3748, 3749, 7, 81, 2, 2, 3749, 3750, 7, 84, 2, 2, 3750, 3751, 7, 89, 2, 2, 3751, 3752, 7, 67, 2, 2, 3752, 3753, 7, 84, 2, 2, 3753, 3754, 7, 70, 2, 2, 3754, 3755, 7, 75, 2, 2, 3755, 3756, 7, 80, 2, 2, 3756, 3757, 7, 73, 2, 2, 3757, 402, 3, 2, 2, 2, 3758, 3759, 7, 79, 2, 2, 3759, 3760, 7, 71, 2, 2, 3760, 3761, 7, 85, 2, 2, 3761, 3762, 7, 85, 2, 2, 3762, 3763, 7, 67, 2, 2, 3763, 3764, 7, 73, 2, 2, 3764, 3765, 7, 71, 2, 2, 3765, 3766, 7, 97, 2, 2, 3766, 3767, 7, 72, 2, 2, 3767, 3768, 7, 81, 2, 2, 3768, 3769, 7, 84, 2, 2, 3769, 3770, 7, 89, 2, 2, 3770, 3771, 7, 67, 2, 2, 3771, 3772, 7, 84, 2, 2, 3772, 3773, 7, 70, 2, 2, 3773, 3774, 7, 97, 2, 2, 3774, 3775, 7, 85, 2, 2, 3775, 3776, 7, 75, 2, 2, 3776, 3777, 7, 92, 2, 2, 3777, 3778, 7, 71, 2, 2, 3778, 404, 3, 2, 2, 2, 3779, 3780, 7, 79, 2, 2, 3780, 3781, 7, 75, 2, 2, 3781, 3782, 7, 80, 2, 2, 3782, 3783, 7, 88, 2, 2, 3783, 3784, 7, 67, 2, 2, 3784, 3785, 7, 78, 2, 2, 3785, 3786, 7, 87, 2, 2, 3786, 3787, 7, 71, 2, 2, 3787, 406, 3, 2, 2, 2, 3788, 3789, 7, 79, 2, 2, 3789, 3790, 7, 75, 2, 2, 3790, 3791, 7, 84, 2, 2, 3791, 3792, 7, 84, 2, 2, 3792, 3793, 7, 81, 2, 2, 3793, 3794, 7, 84, 2, 2, 3794, 408, 3, 2, 2, 2, 3795, 3796, 7, 79, 2, 2, 3796, 3797, 7, 87, 2, 2, 3797, 3798, 7, 85, 2, 2, 3798, 3799, 7, 86, 2, 2, 3799, 3800, 7, 97, 2, 2, 3800, 3801, 7, 69, 2, 2, 3801, 3802, 7, 74, 2, 2, 3802, 3803, 7, 67, 2, 2, 3803, 3804, 7, 80, 2, 2, 3804, 3805, 7, 73, 2, 2, 3805, 3806, 7, 71, 2, 2, 3806, 410, 3, 2, 2, 2, 3807, 3808, 7, 80, 2, 2, 3808, 3809, 7, 67, 2, 2, 3809, 3810, 7, 86, 2, 2, 3810, 3811, 7, 75, 2, 2, 3811, 3812, 7, 81, 2, 2, 3812, 3813, 7, 80, 2, 2, 3813, 3814, 7, 67, 2, 2, 3814, 3815, 7, 78, 2, 2, 3815, 412, 3, 2, 2, 2, 3816, 3817, 7, 80, 2, 2, 3817, 3818, 7, 71, 2, 2, 3818, 3819, 7, 73, 2, 2, 3819, 3820, 7, 81, 2, 2, 3820, 3821, 7, 86, 2, 2, 3821, 3822, 7, 75, 2, 2, 3822, 3823, 7, 67, 2, 2, 3823, 3824, 7, 86, 2, 2, 3824, 3825, 7, 71, 2, 2, 3825, 414, 3, 2, 2, 2, 3826, 3827, 7, 80, 2, 2, 3827, 3828, 7, 81, 2, 2, 3828, 3829, 7, 69, 2, 2, 3829, 3830, 7, 74, 2, 2, 3830, 3831, 7, 71, 2, 2, 3831, 3832, 7, 69, 2, 2, 3832, 3833, 7, 77, 2, 2, 3833, 416, 3, 2, 2, 2, 3834, 3835, 7, 80, 2, 2, 3835, 3836, 7, 81, 2, 2, 3836, 3837, 7, 72, 2, 2, 3837, 3838, 7, 81, 2, 2, 3838, 3839, 7, 84, 2, 2, 3839, 3840, 7, 79, 2, 2, 3840, 3841, 7, 67, 2, 2, 3841, 3842, 7, 86, 2, 2, 3842, 418, 3, 2, 2, 2, 3843, 3844, 7, 80, 2, 2, 3844, 3845, 7, 81, 2, 2, 3845, 3846, 7, 75, 2, 2, 3846, 3847, 7, 80, 2, 2, 3847, 3848, 7, 75, 2, 2, 3848, 3849, 7, 86, 2, 2, 3849, 420, 3, 2, 2, 2, 3850, 3851, 7, 80, 2, 2, 3851, 3852, 7, 81, 2, 2, 3852, 3853, 7, 80, 2, 2, 3853, 3854, 7, 69, 2, 2, 3854, 3855, 7, 78, 2, 2, 3855, 3856, 7, 87, 2, 2, 3856, 3857, 7, 85, 2, 2, 3857, 3858, 7, 86, 2, 2, 3858, 3859, 7, 71, 2, 2, 3859, 3860, 7, 84, 2, 2, 3860, 3861, 7, 71, 2, 2, 3861, 3862, 7, 70, 2, 2, 3862, 422, 3, 2, 2, 2, 3863, 3864, 7, 80, 2, 2, 3864, 3865, 7, 81, 2, 2, 3865, 3866, 7, 80, 2, 2, 3866, 3867, 7, 71, 2, 2, 3867, 424, 3, 2, 2, 2, 3868, 3869, 7, 80, 2, 2, 3869, 3870, 7, 81, 2, 2, 3870, 3871, 7, 84, 2, 2, 3871, 3872, 7, 71, 2, 2, 3872, 3873, 7, 89, 2, 2, 3873, 3874, 7, 75, 2, 2, 3874, 3875, 7, 80, 2, 2, 3875, 3876, 7, 70, 2, 2, 3876, 426, 3, 2, 2, 2, 3877, 3878, 7, 80, 2, 2, 3878, 3879, 7, 81, 2, 2, 3879, 3880, 7, 85, 2, 2, 3880, 3881, 7, 77, 2, 2, 3881, 3882, 7, 75, 2, 2, 3882, 3883, 7, 82, 2, 2, 3883, 428, 3, 2, 2, 2, 3884, 3885, 7, 80, 2, 2, 3885, 3886, 7, 81, 2, 2, 3886, 3887, 7, 87, 2, 2, 3887, 3888, 7, 80, 2, 2, 3888, 3889, 7, 78, 2, 2, 3889, 3890, 7, 81, 2, 2, 3890, 3891, 7, 67, 2, 2, 3891, 3892, 7, 70, 2, 2, 3892, 430, 3, 2, 2, 2, 3893, 3894, 7, 80, 2, 2, 3894, 3895, 7, 81, 2, 2, 3895, 3896, 7, 97, 2, 2, 3896, 3897, 7, 69, 2, 2, 3897, 3898, 7, 74, 2, 2, 3898, 3899, 7, 71, 2, 2, 3899, 3900, 7, 69, 2, 2, 3900, 3901, 7, 77, 2, 2, 3901, 3902, 7, 85, 2, 2, 3902, 3903, 7, 87, 2, 2, 3903, 3904, 7, 79, 2, 2, 3904, 432, 3, 2, 2, 2, 3905, 3906, 7, 80, 2, 2, 3906, 3907, 7, 81, 2, 2, 3907, 3908, 7, 97, 2, 2, 3908, 3909, 7, 69, 2, 2, 3909, 3910, 7, 81, 2, 2, 3910, 3911, 7, 79, 2, 2, 3911, 3912, 7, 82, 2, 2, 3912, 3913, 7, 84, 2, 2, 3913, 3914, 7, 71, 2, 2, 3914, 3915, 7, 85, 2, 2, 3915, 3916, 7, 85, 2, 2, 3916, 3917, 7, 75, 2, 2, 3917, 3918, 7, 81, 2, 2, 3918, 3919, 7, 80, 2, 2, 3919, 434, 3, 2, 2, 2, 3920, 3921, 7, 80, 2, 2, 3921, 3922, 7, 81, 2, 2, 3922, 3923, 7, 97, 2, 2, 3923, 3924, 7, 71, 2, 2, 3924, 3925, 7, 88, 2, 2, 3925, 3926, 7, 71, 2, 2, 3926, 3927, 7, 80, 2, 2, 3927, 3928, 7, 86, 2, 2, 3928, 3929, 7, 97, 2, 2, 3929, 3930, 7, 78, 2, 2, 3930, 3931, 7, 81, 2, 2, 3931, 3932, 7, 85, 2, 2, 3932, 3933, 7, 85, 2, 2, 3933, 436, 3, 2, 2, 2, 3934, 3935, 7, 80, 2, 2, 3935, 3936, 7, 81, 2, 2, 3936, 3937, 7, 86, 2, 2, 3937, 438, 3, 2, 2, 2, 3938, 3939, 7, 80, 2, 2, 3939, 3940, 7, 81, 2, 2, 3940, 3941, 7, 86, 2, 2, 3941, 3942, 7, 75, 2, 2, 3942, 3943, 7, 72, 2, 2, 3943, 3944, 7, 75, 2, 2, 3944, 3945, 7, 69, 2, 2, 3945, 3946, 7, 67, 2, 2, 3946, 3947, 7, 86, 2, 2, 3947, 3948, 7, 75, 2, 2, 3948, 3949, 7, 81, 2, 2, 3949, 3950, 7, 80, 2, 2, 3950, 440, 3, 2, 2, 2, 3951, 3952, 7, 80, 2, 2, 3952, 3953, 7, 86, 2, 2, 3953, 3954, 7, 78, 2, 2, 3954, 3955, 7, 79, 2, 2, 3955, 442, 3, 2, 2, 2, 3956, 3957, 7, 80, 2, 2, 3957, 3958, 7, 87, 2, 2, 3958, 3959, 7, 78, 2, 2, 3959, 3960, 7, 78, 2, 2, 3960, 444, 3, 2, 2, 2, 3961, 3962, 7, 80, 2, 2, 3962, 3963, 7, 87, 2, 2, 3963, 3964, 7, 78, 2, 2, 3964, 3965, 7, 78, 2, 2, 3965, 3966, 7, 75, 2, 2, 3966, 3967, 7, 72, 2, 2, 3967, 446, 3, 2, 2, 2, 3968, 3969, 7, 81, 2, 2, 3969, 3970, 7, 72, 2, 2, 3970, 448, 3, 2, 2, 2, 3971, 3972, 7, 81, 2, 2, 3972, 3973, 7, 72, 2, 2, 3973, 3974, 7, 72, 2, 2, 3974, 450, 3, 2, 2, 2, 3975, 3976, 7, 81, 2, 2, 3976, 3977, 7, 72, 2, 2, 3977, 3978, 7, 72, 2, 2, 3978, 3979, 7, 85, 2, 2, 3979, 3980, 7, 71, 2, 2, 3980, 3981, 7, 86, 2, 2, 3981, 3982, 7, 85, 2, 2, 3982, 452, 3, 2, 2, 2, 3983, 3984, 7, 81, 2, 2, 3984, 3985, 7, 78, 2, 2, 3985, 3986, 7, 70, 2, 2, 3986, 3987, 7, 97, 2, 2, 3987, 3988, 7, 82, 2, 2, 3988, 3989, 7, 67, 2, 2, 3989, 3990, 7, 85, 2, 2, 3990, 3991, 7, 85, 2, 2, 3991, 3992, 7, 89, 2, 2, 3992, 3993, 7, 81, 2, 2, 3993, 3994, 7, 84, 2, 2, 3994, 3995, 7, 70, 2, 2, 3995, 454, 3, 2, 2, 2, 3996, 3997, 7, 81, 2, 2, 3997, 3998, 7, 80, 2, 2, 3998, 456, 3, 2, 2, 2, 3999, 4000, 7, 81, 2, 2, 4000, 4001, 7, 80, 2, 2, 4001, 4002, 7, 97, 2, 2, 4002, 4003, 7, 72, 2, 2, 4003, 4004, 7, 67, 2, 2, 4004, 4005, 7, 75, 2, 2, 4005, 4006, 7, 78, 2, 2, 4006, 4007, 7, 87, 2, 2, 4007, 4008, 7, 84, 2, 2, 4008, 4009, 7, 71, 2, 2, 4009, 458, 3, 2, 2, 2, 4010, 4011, 7, 81, 2, 2, 4011, 4012, 7, 82, 2, 2, 4012, 4013, 7, 71, 2, 2, 4013, 4014, 7, 80, 2, 2, 4014, 460, 3, 2, 2, 2, 4015, 4016, 7, 81, 2, 2, 4016, 4017, 7, 82, 2, 2, 4017, 4018, 7, 71, 2, 2, 4018, 4019, 7, 80, 2, 2, 4019, 4020, 7, 70, 2, 2, 4020, 4021, 7, 67, 2, 2, 4021, 4022, 7, 86, 2, 2, 4022, 4023, 7, 67, 2, 2, 4023, 4024, 7, 85, 2, 2, 4024, 4025, 7, 81, 2, 2, 4025, 4026, 7, 87, 2, 2, 4026, 4027, 7, 84, 2, 2, 4027, 4028, 7, 69, 2, 2, 4028, 4029, 7, 71, 2, 2, 4029, 462, 3, 2, 2, 2, 4030, 4031, 7, 81, 2, 2, 4031, 4032, 7, 82, 2, 2, 4032, 4033, 7, 71, 2, 2, 4033, 4034, 7, 80, 2, 2, 4034, 4035, 7, 83, 2, 2, 4035, 4036, 7, 87, 2, 2, 4036, 4037, 7, 71, 2, 2, 4037, 4038, 7, 84, 2, 2, 4038, 4039, 7, 91, 2, 2, 4039, 464, 3, 2, 2, 2, 4040, 4041, 7, 81, 2, 2, 4041, 4042, 7, 82, 2, 2, 4042, 4043, 7, 71, 2, 2, 4043, 4044, 7, 80, 2, 2, 4044, 4045, 7, 84, 2, 2, 4045, 4046, 7, 81, 2, 2, 4046, 4047, 7, 89, 2, 2, 4047, 4048, 7, 85, 2, 2, 4048, 4049, 7, 71, 2, 2, 4049, 4050, 7, 86, 2, 2, 4050, 466, 3, 2, 2, 2, 4051, 4052, 7, 81, 2, 2, 4052, 4053, 7, 82, 2, 2, 4053, 4054, 7, 71, 2, 2, 4054, 4055, 7, 80, 2, 2, 4055, 4056, 7, 90, 2, 2, 4056, 4057, 7, 79, 2, 2, 4057, 4058, 7, 78, 2, 2, 4058, 468, 3, 2, 2, 2, 4059, 4060, 7, 81, 2, 2, 4060, 4061, 7, 82, 2, 2, 4061, 4062, 7, 86, 2, 2, 4062, 4063, 7, 75, 2, 2, 4063, 4064, 7, 81, 2, 2, 4064, 4065, 7, 80, 2, 2, 4065, 470, 3, 2, 2, 2, 4066, 4067, 7, 81, 2, 2, 4067, 4068, 7, 84, 2, 2, 4068, 472, 3, 2, 2, 2, 4069, 4070, 7, 81, 2, 2, 4070, 4071, 7, 84, 2, 2, 4071, 4072, 7, 70, 2, 2, 4072, 4073, 7, 71, 2, 2, 4073, 4074, 7, 84, 2, 2, 4074, 474, 3, 2, 2, 2, 4075, 4076, 7, 81, 2, 2, 4076, 4077, 7, 87, 2, 2, 4077, 4078, 7, 86, 2, 2, 4078, 4079, 7, 71, 2, 2, 4079, 4080, 7, 84, 2, 2, 4080, 476, 3, 2, 2, 2, 4081, 4082, 7, 81, 2, 2, 4082, 4083, 7, 88, 2, 2, 4083, 4084, 7, 71, 2, 2, 4084, 4085, 7, 84, 2, 2, 4085, 478, 3, 2, 2, 2, 4086, 4087, 7, 82, 2, 2, 4087, 4088, 7, 67, 2, 2, 4088, 4089, 7, 73, 2, 2, 4089, 4090, 7, 71, 2, 2, 4090, 480, 3, 2, 2, 2, 4091, 4092, 7, 82, 2, 2, 4092, 4093, 7, 67, 2, 2, 4093, 4094, 7, 84, 2, 2, 4094, 4095, 7, 67, 2, 2, 4095, 4096, 7, 79, 2, 2, 4096, 4097, 7, 97, 2, 2, 4097, 4098, 7, 80, 2, 2, 4098, 4099, 7, 81, 2, 2, 4099, 4100, 7, 70, 2, 2, 4100, 4101, 7, 71, 2, 2, 4101, 482, 3, 2, 2, 2, 4102, 4103, 7, 82, 2, 2, 4103, 4104, 7, 67, 2, 2, 4104, 4105, 7, 84, 2, 2, 4105, 4106, 7, 86, 2, 2, 4106, 4107, 7, 75, 2, 2, 4107, 4108, 7, 67, 2, 2, 4108, 4109, 7, 78, 2, 2, 4109, 484, 3, 2, 2, 2, 4110, 4111, 7, 82, 2, 2, 4111, 4112, 7, 67, 2, 2, 4112, 4113, 7, 85, 2, 2, 4113, 4114, 7, 85, 2, 2, 4114, 4115, 7, 89, 2, 2, 4115, 4116, 7, 81, 2, 2, 4116, 4117, 7, 84, 2, 2, 4117, 4118, 7, 70, 2, 2, 4118, 486, 3, 2, 2, 2, 4119, 4120, 7, 82, 2, 2, 4120, 4121, 7, 71, 2, 2, 4121, 4122, 7, 84, 2, 2, 4122, 4123, 7, 69, 2, 2, 4123, 4124, 7, 71, 2, 2, 4124, 4125, 7, 80, 2, 2, 4125, 4126, 7, 86, 2, 2, 4126, 488, 3, 2, 2, 2, 4127, 4128, 7, 82, 2, 2, 4128, 4129, 7, 71, 2, 2, 4129, 4130, 7, 84, 2, 2, 4130, 4131, 7, 79, 2, 2, 4131, 4132, 7, 75, 2, 2, 4132, 4133, 7, 85, 2, 2, 4133, 4134, 7, 85, 2, 2, 4134, 4135, 7, 75, 2, 2, 4135, 4136, 7, 81, 2, 2, 4136, 4137, 7, 80, 2, 2, 4137, 4138, 7, 97, 2, 2, 4138, 4139, 7, 85, 2, 2, 4139, 4140, 7, 71, 2, 2, 4140, 4141, 7, 86, 2, 2, 4141, 490, 3, 2, 2, 2, 4142, 4143, 7, 82, 2, 2, 4143, 4144, 7, 71, 2, 2, 4144, 4145, 7, 84, 2, 2, 4145, 4146, 7, 97, 2, 2, 4146, 4147, 7, 69, 2, 2, 4147, 4148, 7, 82, 2, 2, 4148, 4149, 7, 87, 2, 2, 4149, 492, 3, 2, 2, 2, 4150, 4151, 7, 82, 2, 2, 4151, 4152, 7, 71, 2, 2, 4152, 4153, 7, 84, 2, 2, 4153, 4154, 7, 97, 2, 2, 4154, 4155, 7, 70, 2, 2, 4155, 4156, 7, 68, 2, 2, 4156, 494, 3, 2, 2, 2, 4157, 4158, 7, 82, 2, 2, 4158, 4159, 7, 71, 2, 2, 4159, 4160, 7, 84, 2, 2, 4160, 4161, 7, 97, 2, 2, 4161, 4162, 7, 80, 2, 2, 4162, 4163, 7, 81, 2, 2, 4163, 4164, 7, 70, 2, 2, 4164, 4165, 7, 71, 2, 2, 4165, 496, 3, 2, 2, 2, 4166, 4167, 7, 82, 2, 2, 4167, 4168, 7, 75, 2, 2, 4168, 4169, 7, 88, 2, 2, 4169, 4170, 7, 81, 2, 2, 4170, 4171, 7, 86, 2, 2, 4171, 498, 3, 2, 2, 2, 4172, 4173, 7, 82, 2, 2, 4173, 4174, 7, 78, 2, 2, 4174, 4175, 7, 67, 2, 2, 4175, 4176, 7, 80, 2, 2, 4176, 500, 3, 2, 2, 2, 4177, 4178, 7, 82, 2, 2, 4178, 4179, 7, 78, 2, 2, 4179, 4180, 7, 67, 2, 2, 4180, 4181, 7, 86, 2, 2, 4181, 4182, 7, 72, 2, 2, 4182, 4183, 7, 81, 2, 2, 4183, 4184, 7, 84, 2, 2, 4184, 4185, 7, 79, 2, 2, 4185, 502, 3, 2, 2, 2, 4186, 4187, 7, 82, 2, 2, 4187, 4188, 7, 81, 2, 2, 4188, 4189, 7, 78, 2, 2, 4189, 4190, 7, 75, 2, 2, 4190, 4191, 7, 69, 2, 2, 4191, 4192, 7, 91, 2, 2, 4192, 504, 3, 2, 2, 2, 4193, 4194, 7, 82, 2, 2, 4194, 4195, 7, 84, 2, 2, 4195, 4196, 7, 71, 2, 2, 4196, 4197, 7, 69, 2, 2, 4197, 4198, 7, 75, 2, 2, 4198, 4199, 7, 85, 2, 2, 4199, 4200, 7, 75, 2, 2, 4200, 4201, 7, 81, 2, 2, 4201, 4202, 7, 80, 2, 2, 4202, 506, 3, 2, 2, 2, 4203, 4204, 7, 82, 2, 2, 4204, 4205, 7, 84, 2, 2, 4205, 4206, 7, 71, 2, 2, 4206, 4207, 7, 70, 2, 2, 4207, 4208, 7, 75, 2, 2, 4208, 4209, 7, 69, 2, 2, 4209, 4210, 7, 67, 2, 2, 4210, 4211, 7, 86, 2, 2, 4211, 4212, 7, 71, 2, 2, 4212, 508, 3, 2, 2, 2, 4213, 4214, 7, 82, 2, 2, 4214, 4215, 7, 84, 2, 2, 4215, 4216, 7, 75, 2, 2, 4216, 4217, 7, 79, 2, 2, 4217, 4218, 7, 67, 2, 2, 4218, 4219, 7, 84, 2, 2, 4219, 4220, 7, 91, 2, 2, 4220, 510, 3, 2, 2, 2, 4221, 4222, 7, 82, 2, 2, 4222, 4223, 7, 84, 2, 2, 4223, 4224, 7, 75, 2, 2, 4224, 4225, 7, 80, 2, 2, 4225, 4226, 7, 86, 2, 2, 4226, 512, 3, 2, 2, 2, 4227, 4228, 7, 82, 2, 2, 4228, 4229, 7, 84, 2, 2, 4229, 4230, 7, 81, 2, 2, 4230, 4231, 7, 69, 2, 2, 4231, 514, 3, 2, 2, 2, 4232, 4233, 7, 82, 2, 2, 4233, 4234, 7, 84, 2, 2, 4234, 4235, 7, 81, 2, 2, 4235, 4236, 7, 69, 2, 2, 4236, 4237, 7, 71, 2, 2, 4237, 4238, 7, 70, 2, 2, 4238, 4239, 7, 87, 2, 2, 4239, 4240, 7, 84, 2, 2, 4240, 4241, 7, 71, 2, 2, 4241, 516, 3, 2, 2, 2, 4242, 4243, 7, 82, 2, 2, 4243, 4244, 7, 84, 2, 2, 4244, 4245, 7, 81, 2, 2, 4245, 4246, 7, 69, 2, 2, 4246, 4247, 7, 71, 2, 2, 4247, 4248, 7, 85, 2, 2, 4248, 4249, 7, 85, 2, 2, 4249, 518, 3, 2, 2, 2, 4250, 4251, 7, 82, 2, 2, 4251, 4252, 7, 87, 2, 2, 4252, 4253, 7, 68, 2, 2, 4253, 4254, 7, 78, 2, 2, 4254, 4255, 7, 75, 2, 2, 4255, 4256, 7, 69, 2, 2, 4256, 520, 3, 2, 2, 2, 4257, 4258, 7, 82, 2, 2, 4258, 4259, 7, 91, 2, 2, 4259, 4260, 7, 86, 2, 2, 4260, 4261, 7, 74, 2, 2, 4261, 4262, 7, 81, 2, 2, 4262, 4263, 7, 80, 2, 2, 4263, 522, 3, 2, 2, 2, 4264, 4265, 7, 84, 2, 2, 4265, 524, 3, 2, 2, 2, 4266, 4267, 7, 84, 2, 2, 4267, 4268, 7, 67, 2, 2, 4268, 4269, 7, 75, 2, 2, 4269, 4270, 7, 85, 2, 2, 4270, 4271, 7, 71, 2, 2, 4271, 4272, 7, 84, 2, 2, 4272, 4273, 7, 84, 2, 2, 4273, 4274, 7, 81, 2, 2, 4274, 4275, 7, 84, 2, 2, 4275, 526, 3, 2, 2, 2, 4276, 4277, 7, 84, 2, 2, 4277, 4278, 7, 67, 2, 2, 4278, 4279, 7, 89, 2, 2, 4279, 528, 3, 2, 2, 2, 4280, 4281, 7, 84, 2, 2, 4281, 4282, 7, 71, 2, 2, 4282, 4283, 7, 67, 2, 2, 4283, 4284, 7, 70, 2, 2, 4284, 530, 3, 2, 2, 2, 4285, 4286, 7, 84, 2, 2, 4286, 4287, 7, 71, 2, 2, 4287, 4288, 7, 67, 2, 2, 4288, 4289, 7, 70, 2, 2, 4289, 4290, 7, 86, 2, 2, 4290, 4291, 7, 71, 2, 2, 4291, 4292, 7, 90, 2, 2, 4292, 4293, 7, 86, 2, 2, 4293, 532, 3, 2, 2, 2, 4294, 4295, 7, 84, 2, 2, 4295, 4296, 7, 71, 2, 2, 4296, 4297, 7, 67, 2, 2, 4297, 4298, 7, 70, 2, 2, 4298, 4299, 7, 97, 2, 2, 4299, 4300, 7, 89, 2, 2, 4300, 4301, 7, 84, 2, 2, 4301, 4302, 7, 75, 2, 2, 4302, 4303, 7, 86, 2, 2, 4303, 4304, 7, 71, 2, 2, 4304, 4305, 7, 97, 2, 2, 4305, 4306, 7, 72, 2, 2, 4306, 4307, 7, 75, 2, 2, 4307, 4308, 7, 78, 2, 2, 4308, 4309, 7, 71, 2, 2, 4309, 4310, 7, 73, 2, 2, 4310, 4311, 7, 84, 2, 2, 4311, 4312, 7, 81, 2, 2, 4312, 4313, 7, 87, 2, 2, 4313, 4314, 7, 82, 2, 2, 4314, 4315, 7, 85, 2, 2, 4315, 534, 3, 2, 2, 2, 4316, 4317, 7, 84, 2, 2, 4317, 4318, 7, 71, 2, 2, 4318, 4319, 7, 69, 2, 2, 4319, 4320, 7, 81, 2, 2, 4320, 4321, 7, 80, 2, 2, 4321, 4322, 7, 72, 2, 2, 4322, 4323, 7, 75, 2, 2, 4323, 4324, 7, 73, 2, 2, 4324, 4325, 7, 87, 2, 2, 4325, 4326, 7, 84, 2, 2, 4326, 4327, 7, 71, 2, 2, 4327, 536, 3, 2, 2, 2, 4328, 4329, 7, 84, 2, 2, 4329, 4330, 7, 71, 2, 2, 4330, 4331, 7, 72, 2, 2, 4331, 4332, 7, 71, 2, 2, 4332, 4333, 7, 84, 2, 2, 4333, 4334, 7, 71, 2, 2, 4334, 4335, 7, 80, 2, 2, 4335, 4336, 7, 69, 2, 2, 4336, 4337, 7, 71, 2, 2, 4337, 4338, 7, 85, 2, 2, 4338, 538, 3, 2, 2, 2, 4339, 4340, 7, 84, 2, 2, 4340, 4341, 7, 71, 2, 2, 4341, 4342, 7, 73, 2, 2, 4342, 4343, 7, 71, 2, 2, 4343, 4344, 7, 80, 2, 2, 4344, 4345, 7, 71, 2, 2, 4345, 4346, 7, 84, 2, 2, 4346, 4347, 7, 67, 2, 2, 4347, 4348, 7, 86, 2, 2, 4348, 4349, 7, 71, 2, 2, 4349, 540, 3, 2, 2, 2, 4350, 4351, 7, 84, 2, 2, 4351, 4352, 7, 71, 2, 2, 4352, 4353, 7, 78, 2, 2, 4353, 4354, 7, 67, 2, 2, 4354, 4355, 7, 86, 2, 2, 4355, 4356, 7, 71, 2, 2, 4356, 4357, 7, 70, 2, 2, 4357, 4358, 7, 97, 2, 2, 4358, 4359, 7, 69, 2, 2, 4359, 4360, 7, 81, 2, 2, 4360, 4361, 7, 80, 2, 2, 4361, 4362, 7, 88, 2, 2, 4362, 4363, 7, 71, 2, 2, 4363, 4364, 7, 84, 2, 2, 4364, 4365, 7, 85, 2, 2, 4365, 4366, 7, 67, 2, 2, 4366, 4367, 7, 86, 2, 2, 4367, 4368, 7, 75, 2, 2, 4368, 4369, 7, 81, 2, 2, 4369, 4370, 7, 80, 2, 2, 4370, 542, 3, 2, 2, 2, 4371, 4372, 7, 84, 2, 2, 4372, 4373, 7, 71, 2, 2, 4373, 4374, 7, 78, 2, 2, 4374, 4375, 7, 67, 2, 2, 4375, 4376, 7, 86, 2, 2, 4376, 4377, 7, 71, 2, 2, 4377, 4378, 7, 70, 2, 2, 4378, 4379, 7, 97, 2, 2, 4379, 4380, 7, 69, 2, 2, 4380, 4381, 7, 81, 2, 2, 4381, 4382, 7, 80, 2, 2, 4382, 4383, 7, 88, 2, 2, 4383, 4384, 7, 71, 2, 2, 4384, 4385, 7, 84, 2, 2, 4385, 4386, 7, 85, 2, 2, 4386, 4387, 7, 67, 2, 2, 4387, 4388, 7, 86, 2, 2, 4388, 4389, 7, 75, 2, 2, 4389, 4390, 7, 81, 2, 2, 4390, 4391, 7, 80, 2, 2, 4391, 4392, 7, 97, 2, 2, 4392, 4393, 7, 73, 2, 2, 4393, 4394, 7, 84, 2, 2, 4394, 4395, 7, 81, 2, 2, 4395, 4396, 7, 87, 2, 2, 4396, 4397, 7, 82, 2, 2, 4397, 544, 3, 2, 2, 2, 4398, 4399, 7, 84, 2, 2, 4399, 4400, 7, 71, 2, 2, 4400, 4401, 7, 82, 2, 2, 4401, 4402, 7, 78, 2, 2, 4402, 4403, 7, 75, 2, 2, 4403, 4404, 7, 69, 2, 2, 4404, 4405, 7, 67, 2, 2, 4405, 4406, 7, 86, 2, 2, 4406, 4407, 7, 75, 2, 2, 4407, 4408, 7, 81, 2, 2, 4408, 4409, 7, 80, 2, 2, 4409, 546, 3, 2, 2, 2, 4410, 4411, 7, 84, 2, 2, 4411, 4412, 7, 71, 2, 2, 4412, 4413, 7, 83, 2, 2, 4413, 4414, 7, 87, 2, 2, 4414, 4415, 7, 75, 2, 2, 4415, 4416, 7, 84, 2, 2, 4416, 4417, 7, 71, 2, 2, 4417, 4418, 7, 70, 2, 2, 4418, 548, 3, 2, 2, 2, 4419, 4420, 7, 84, 2, 2, 4420, 4421, 7, 71, 2, 2, 4421, 4422, 7, 85, 2, 2, 4422, 4423, 7, 71, 2, 2, 4423, 4424, 7, 86, 2, 2, 4424, 550, 3, 2, 2, 2, 4425, 4426, 7, 84, 2, 2, 4426, 4427, 7, 71, 2, 2, 4427, 4428, 7, 85, 2, 2, 4428, 4429, 7, 86, 2, 2, 4429, 4430, 7, 67, 2, 2, 4430, 4431, 7, 84, 2, 2, 4431, 4432, 7, 86, 2, 2, 4432, 552, 3, 2, 2, 2, 4433, 4434, 7, 84, 2, 2, 4434, 4435, 7, 71, 2, 2, 4435, 4436, 7, 85, 2, 2, 4436, 4437, 7, 86, 2, 2, 4437, 4438, 7, 81, 2, 2, 4438, 4439, 7, 84, 2, 2, 4439, 4440, 7, 71, 2, 2, 4440, 554, 3, 2, 2, 2, 4441, 4442, 7, 84, 2, 2, 4442, 4443, 7, 71, 2, 2, 4443, 4444, 7, 85, 2, 2, 4444, 4445, 7, 86, 2, 2, 4445, 4446, 7, 84, 2, 2, 4446, 4447, 7, 75, 2, 2, 4447, 4448, 7, 69, 2, 2, 4448, 4449, 7, 86, 2, 2, 4449, 556, 3, 2, 2, 2, 4450, 4451, 7, 84, 2, 2, 4451, 4452, 7, 71, 2, 2, 4452, 4453, 7, 85, 2, 2, 4453, 4454, 7, 87, 2, 2, 4454, 4455, 7, 79, 2, 2, 4455, 4456, 7, 71, 2, 2, 4456, 558, 3, 2, 2, 2, 4457, 4458, 7, 84, 2, 2, 4458, 4459, 7, 71, 2, 2, 4459, 4460, 7, 86, 2, 2, 4460, 4461, 7, 67, 2, 2, 4461, 4462, 7, 75, 2, 2, 4462, 4463, 7, 80, 2, 2, 4463, 4464, 7, 70, 2, 2, 4464, 4465, 7, 67, 2, 2, 4465, 4466, 7, 91, 2, 2, 4466, 4467, 7, 85, 2, 2, 4467, 560, 3, 2, 2, 2, 4468, 4469, 7, 84, 2, 2, 4469, 4470, 7, 71, 2, 2, 4470, 4471, 7, 86, 2, 2, 4471, 4472, 7, 87, 2, 2, 4472, 4473, 7, 84, 2, 2, 4473, 4474, 7, 80, 2, 2, 4474, 562, 3, 2, 2, 2, 4475, 4476, 7, 84, 2, 2, 4476, 4477, 7, 71, 2, 2, 4477, 4478, 7, 86, 2, 2, 4478, 4479, 7, 87, 2, 2, 4479, 4480, 7, 84, 2, 2, 4480, 4481, 7, 80, 2, 2, 4481, 4482, 7, 85, 2, 2, 4482, 564, 3, 2, 2, 2, 4483, 4484, 7, 84, 2, 2, 4484, 4485, 7, 71, 2, 2, 4485, 4486, 7, 88, 2, 2, 4486, 4487, 7, 71, 2, 2, 4487, 4488, 7, 84, 2, 2, 4488, 4489, 7, 86, 2, 2, 4489, 566, 3, 2, 2, 2, 4490, 4491, 7, 84, 2, 2, 4491, 4492, 7, 71, 2, 2, 4492, 4493, 7, 88, 2, 2, 4493, 4494, 7, 81, 2, 2, 4494, 4495, 7, 77, 2, 2, 4495, 4496, 7, 71, 2, 2, 4496, 568, 3, 2, 2, 2, 4497, 4498, 7, 84, 2, 2, 4498, 4499, 7, 71, 2, 2, 4499, 4500, 7, 89, 2, 2, 4500, 4501, 7, 75, 2, 2, 4501, 4502, 7, 80, 2, 2, 4502, 4503, 7, 70, 2, 2, 4503, 570, 3, 2, 2, 2, 4504, 4505, 7, 84, 2, 2, 4505, 4506, 7, 75, 2, 2, 4506, 4507, 7, 73, 2, 2, 4507, 4508, 7, 74, 2, 2, 4508, 4509, 7, 86, 2, 2, 4509, 572, 3, 2, 2, 2, 4510, 4511, 7, 84, 2, 2, 4511, 4512, 7, 81, 2, 2, 4512, 4513, 7, 78, 2, 2, 4513, 4514, 7, 78, 2, 2, 4514, 4515, 7, 68, 2, 2, 4515, 4516, 7, 67, 2, 2, 4516, 4517, 7, 69, 2, 2, 4517, 4518, 7, 77, 2, 2, 4518, 574, 3, 2, 2, 2, 4519, 4520, 7, 84, 2, 2, 4520, 4521, 7, 81, 2, 2, 4521, 4522, 7, 78, 2, 2, 4522, 4523, 7, 71, 2, 2, 4523, 576, 3, 2, 2, 2, 4524, 4525, 7, 84, 2, 2, 4525, 4526, 7, 81, 2, 2, 4526, 4527, 7, 89, 2, 2, 4527, 4528, 7, 69, 2, 2, 4528, 4529, 7, 81, 2, 2, 4529, 4530, 7, 87, 2, 2, 4530, 4531, 7, 80, 2, 2, 4531, 4532, 7, 86, 2, 2, 4532, 578, 3, 2, 2, 2, 4533, 4534, 7, 84, 2, 2, 4534, 4535, 7, 81, 2, 2, 4535, 4536, 7, 89, 2, 2, 4536, 4537, 7, 73, 2, 2, 4537, 4538, 7, 87, 2, 2, 4538, 4539, 7, 75, 2, 2, 4539, 4540, 7, 70, 2, 2, 4540, 4541, 7, 69, 2, 2, 4541, 4542, 7, 81, 2, 2, 4542, 4543, 7, 78, 2, 2, 4543, 580, 3, 2, 2, 2, 4544, 4545, 7, 84, 2, 2, 4545, 4546, 7, 85, 2, 2, 4546, 4547, 7, 67, 2, 2, 4547, 4548, 7, 97, 2, 2, 4548, 4549, 7, 55, 2, 2, 4549, 4550, 7, 51, 2, 2, 4550, 4551, 7, 52, 2, 2, 4551, 582, 3, 2, 2, 2, 4552, 4553, 7, 84, 2, 2, 4553, 4554, 7, 85, 2, 2, 4554, 4555, 7, 67, 2, 2, 4555, 4556, 7, 97, 2, 2, 4556, 4557, 7, 51, 2, 2, 4557, 4558, 7, 50, 2, 2, 4558, 4559, 7, 52, 2, 2, 4559, 4560, 7, 54, 2, 2, 4560, 584, 3, 2, 2, 2, 4561, 4562, 7, 84, 2, 2, 4562, 4563, 7, 85, 2, 2, 4563, 4564, 7, 67, 2, 2, 4564, 4565, 7, 97, 2, 2, 4565, 4566, 7, 52, 2, 2, 4566, 4567, 7, 50, 2, 2, 4567, 4568, 7, 54, 2, 2, 4568, 4569, 7, 58, 2, 2, 4569, 586, 3, 2, 2, 2, 4570, 4571, 7, 84, 2, 2, 4571, 4572, 7, 85, 2, 2, 4572, 4573, 7, 67, 2, 2, 4573, 4574, 7, 97, 2, 2, 4574, 4575, 7, 53, 2, 2, 4575, 4576, 7, 50, 2, 2, 4576, 4577, 7, 57, 2, 2, 4577, 4578, 7, 52, 2, 2, 4578, 588, 3, 2, 2, 2, 4579, 4580, 7, 84, 2, 2, 4580, 4581, 7, 85, 2, 2, 4581, 4582, 7, 67, 2, 2, 4582, 4583, 7, 97, 2, 2, 4583, 4584, 7, 54, 2, 2, 4584, 4585, 7, 50, 2, 2, 4585, 4586, 7, 59, 2, 2, 4586, 4587, 7, 56, 2, 2, 4587, 590, 3, 2, 2, 2, 4588, 4589, 7, 85, 2, 2, 4589, 4590, 7, 67, 2, 2, 4590, 4591, 7, 72, 2, 2, 4591, 4592, 7, 71, 2, 2, 4592, 4593, 7, 86, 2, 2, 4593, 4594, 7, 91, 2, 2, 4594, 592, 3, 2, 2, 2, 4595, 4596, 7, 84, 2, 2, 4596, 4597, 7, 87, 2, 2, 4597, 4598, 7, 78, 2, 2, 4598, 4599, 7, 71, 2, 2, 4599, 594, 3, 2, 2, 2, 4600, 4601, 7, 85, 2, 2, 4601, 4602, 7, 67, 2, 2, 4602, 4603, 7, 72, 2, 2, 4603, 4604, 7, 71, 2, 2, 4604, 596, 3, 2, 2, 2, 4605, 4606, 7, 85, 2, 2, 4606, 4607, 7, 67, 2, 2, 4607, 4608, 7, 88, 2, 2, 4608, 4609, 7, 71, 2, 2, 4609, 598, 3, 2, 2, 2, 4610, 4611, 7, 85, 2, 2, 4611, 4612, 7, 69, 2, 2, 4612, 4613, 7, 74, 2, 2, 4613, 4614, 7, 71, 2, 2, 4614, 4615, 7, 70, 2, 2, 4615, 4616, 7, 87, 2, 2, 4616, 4617, 7, 78, 2, 2, 4617, 4618, 7, 71, 2, 2, 4618, 4619, 7, 84, 2, 2, 4619, 600, 3, 2, 2, 2, 4620, 4621, 7, 85, 2, 2, 4621, 4622, 7, 69, 2, 2, 4622, 4623, 7, 74, 2, 2, 4623, 4624, 7, 71, 2, 2, 4624, 4625, 7, 79, 2, 2, 4625, 4626, 7, 67, 2, 2, 4626, 602, 3, 2, 2, 2, 4627, 4628, 7, 85, 2, 2, 4628, 4629, 7, 69, 2, 2, 4629, 4630, 7, 74, 2, 2, 4630, 4631, 7, 71, 2, 2, 4631, 4632, 7, 79, 2, 2, 4632, 4633, 7, 71, 2, 2, 4633, 604, 3, 2, 2, 2, 4634, 4635, 7, 85, 2, 2, 4635, 4636, 7, 71, 2, 2, 4636, 4637, 7, 69, 2, 2, 4637, 4638, 7, 87, 2, 2, 4638, 4639, 7, 84, 2, 2, 4639, 4640, 7, 75, 2, 2, 4640, 4641, 7, 86, 2, 2, 4641, 4642, 7, 91, 2, 2, 4642, 4643, 7, 67, 2, 2, 4643, 4644, 7, 87, 2, 2, 4644, 4645, 7, 70, 2, 2, 4645, 4646, 7, 75, 2, 2, 4646, 4647, 7, 86, 2, 2, 4647, 606, 3, 2, 2, 2, 4648, 4649, 7, 85, 2, 2, 4649, 4650, 7, 71, 2, 2, 4650, 4651, 7, 78, 2, 2, 4651, 4652, 7, 71, 2, 2, 4652, 4653, 7, 69, 2, 2, 4653, 4654, 7, 86, 2, 2, 4654, 608, 3, 2, 2, 2, 4655, 4656, 7, 85, 2, 2, 4656, 4657, 7, 71, 2, 2, 4657, 4658, 7, 79, 2, 2, 4658, 4659, 7, 67, 2, 2, 4659, 4660, 7, 80, 2, 2, 4660, 4661, 7, 86, 2, 2, 4661, 4662, 7, 75, 2, 2, 4662, 4663, 7, 69, 2, 2, 4663, 4664, 7, 77, 2, 2, 4664, 4665, 7, 71, 2, 2, 4665, 4666, 7, 91, 2, 2, 4666, 4667, 7, 82, 2, 2, 4667, 4668, 7, 74, 2, 2, 4668, 4669, 7, 84, 2, 2, 4669, 4670, 7, 67, 2, 2, 4670, 4671, 7, 85, 2, 2, 4671, 4672, 7, 71, 2, 2, 4672, 4673, 7, 86, 2, 2, 4673, 4674, 7, 67, 2, 2, 4674, 4675, 7, 68, 2, 2, 4675, 4676, 7, 78, 2, 2, 4676, 4677, 7, 71, 2, 2, 4677, 610, 3, 2, 2, 2, 4678, 4679, 7, 85, 2, 2, 4679, 4680, 7, 71, 2, 2, 4680, 4681, 7, 79, 2, 2, 4681, 4682, 7, 67, 2, 2, 4682, 4683, 7, 80, 2, 2, 4683, 4684, 7, 86, 2, 2, 4684, 4685, 7, 75, 2, 2, 4685, 4686, 7, 69, 2, 2, 4686, 4687, 7, 85, 2, 2, 4687, 4688, 7, 75, 2, 2, 4688, 4689, 7, 79, 2, 2, 4689, 4690, 7, 75, 2, 2, 4690, 4691, 7, 78, 2, 2, 4691, 4692, 7, 67, 2, 2, 4692, 4693, 7, 84, 2, 2, 4693, 4694, 7, 75, 2, 2, 4694, 4695, 7, 86, 2, 2, 4695, 4696, 7, 91, 2, 2, 4696, 4697, 7, 70, 2, 2, 4697, 4698, 7, 71, 2, 2, 4698, 4699, 7, 86, 2, 2, 4699, 4700, 7, 67, 2, 2, 4700, 4701, 7, 75, 2, 2, 4701, 4702, 7, 78, 2, 2, 4702, 4703, 7, 85, 2, 2, 4703, 4704, 7, 86, 2, 2, 4704, 4705, 7, 67, 2, 2, 4705, 4706, 7, 68, 2, 2, 4706, 4707, 7, 78, 2, 2, 4707, 4708, 7, 71, 2, 2, 4708, 612, 3, 2, 2, 2, 4709, 4710, 7, 85, 2, 2, 4710, 4711, 7, 71, 2, 2, 4711, 4712, 7, 79, 2, 2, 4712, 4713, 7, 67, 2, 2, 4713, 4714, 7, 80, 2, 2, 4714, 4715, 7, 86, 2, 2, 4715, 4716, 7, 75, 2, 2, 4716, 4717, 7, 69, 2, 2, 4717, 4718, 7, 85, 2, 2, 4718, 4719, 7, 75, 2, 2, 4719, 4720, 7, 79, 2, 2, 4720, 4721, 7, 75, 2, 2, 4721, 4722, 7, 78, 2, 2, 4722, 4723, 7, 67, 2, 2, 4723, 4724, 7, 84, 2, 2, 4724, 4725, 7, 75, 2, 2, 4725, 4726, 7, 86, 2, 2, 4726, 4727, 7, 91, 2, 2, 4727, 4728, 7, 86, 2, 2, 4728, 4729, 7, 67, 2, 2, 4729, 4730, 7, 68, 2, 2, 4730, 4731, 7, 78, 2, 2, 4731, 4732, 7, 71, 2, 2, 4732, 614, 3, 2, 2, 2, 4733, 4734, 7, 85, 2, 2, 4734, 4735, 7, 71, 2, 2, 4735, 4736, 7, 84, 2, 2, 4736, 4737, 7, 88, 2, 2, 4737, 4738, 7, 71, 2, 2, 4738, 4739, 7, 84, 2, 2, 4739, 616, 3, 2, 2, 2, 4740, 4741, 7, 85, 2, 2, 4741, 4742, 7, 71, 2, 2, 4742, 4743, 7, 84, 2, 2, 4743, 4744, 7, 88, 2, 2, 4744, 4745, 7, 75, 2, 2, 4745, 4746, 7, 69, 2, 2, 4746, 4747, 7, 71, 2, 2, 4747, 618, 3, 2, 2, 2, 4748, 4749, 7, 85, 2, 2, 4749, 4750, 7, 71, 2, 2, 4750, 4751, 7, 84, 2, 2, 4751, 4752, 7, 88, 2, 2, 4752, 4753, 7, 75, 2, 2, 4753, 4754, 7, 69, 2, 2, 4754, 4755, 7, 71, 2, 2, 4755, 4756, 7, 97, 2, 2, 4756, 4757, 7, 68, 2, 2, 4757, 4758, 7, 84, 2, 2, 4758, 4759, 7, 81, 2, 2, 4759, 4760, 7, 77, 2, 2, 4760, 4761, 7, 71, 2, 2, 4761, 4762, 7, 84, 2, 2, 4762, 620, 3, 2, 2, 2, 4763, 4764, 7, 85, 2, 2, 4764, 4765, 7, 71, 2, 2, 4765, 4766, 7, 84, 2, 2, 4766, 4767, 7, 88, 2, 2, 4767, 4768, 7, 75, 2, 2, 4768, 4769, 7, 69, 2, 2, 4769, 4770, 7, 71, 2, 2, 4770, 4771, 7, 97, 2, 2, 4771, 4772, 7, 80, 2, 2, 4772, 4773, 7, 67, 2, 2, 4773, 4774, 7, 79, 2, 2, 4774, 4775, 7, 71, 2, 2, 4775, 622, 3, 2, 2, 2, 4776, 4777, 7, 85, 2, 2, 4777, 4778, 7, 71, 2, 2, 4778, 4779, 7, 85, 2, 2, 4779, 4780, 7, 85, 2, 2, 4780, 4781, 7, 75, 2, 2, 4781, 4782, 7, 81, 2, 2, 4782, 4783, 7, 80, 2, 2, 4783, 624, 3, 2, 2, 2, 4784, 4785, 7, 85, 2, 2, 4785, 4786, 7, 71, 2, 2, 4786, 4787, 7, 85, 2, 2, 4787, 4788, 7, 85, 2, 2, 4788, 4789, 7, 75, 2, 2, 4789, 4790, 7, 81, 2, 2, 4790, 4791, 7, 80, 2, 2, 4791, 4792, 7, 97, 2, 2, 4792, 4793, 7, 87, 2, 2, 4793, 4794, 7, 85, 2, 2, 4794, 4795, 7, 71, 2, 2, 4795, 4796, 7, 84, 2, 2, 4796, 626, 3, 2, 2, 2, 4797, 4798, 7, 85, 2, 2, 4798, 4799, 7, 71, 2, 2, 4799, 4800, 7, 86, 2, 2, 4800, 628, 3, 2, 2, 2, 4801, 4802, 7, 85, 2, 2, 4802, 4803, 7, 71, 2, 2, 4803, 4804, 7, 86, 2, 2, 4804, 4805, 7, 87, 2, 2, 4805, 4806, 7, 85, 2, 2, 4806, 4807, 7, 71, 2, 2, 4807, 4808, 7, 84, 2, 2, 4808, 630, 3, 2, 2, 2, 4809, 4810, 7, 85, 2, 2, 4810, 4811, 7, 74, 2, 2, 4811, 4812, 7, 87, 2, 2, 4812, 4813, 7, 86, 2, 2, 4813, 4814, 7, 70, 2, 2, 4814, 4815, 7, 81, 2, 2, 4815, 4816, 7, 89, 2, 2, 4816, 4817, 7, 80, 2, 2, 4817, 632, 3, 2, 2, 2, 4818, 4819, 7, 85, 2, 2, 4819, 4820, 7, 75, 2, 2, 4820, 4821, 7, 70, 2, 2, 4821, 634, 3, 2, 2, 2, 4822, 4823, 7, 85, 2, 2, 4823, 4824, 7, 77, 2, 2, 4824, 4825, 7, 75, 2, 2, 4825, 4826, 7, 82, 2, 2, 4826, 636, 3, 2, 2, 2, 4827, 4828, 7, 85, 2, 2, 4828, 4829, 7, 81, 2, 2, 4829, 4830, 7, 72, 2, 2, 4830, 4831, 7, 86, 2, 2, 4831, 4832, 7, 80, 2, 2, 4832, 4833, 7, 87, 2, 2, 4833, 4834, 7, 79, 2, 2, 4834, 4835, 7, 67, 2, 2, 4835, 638, 3, 2, 2, 2, 4836, 4837, 7, 85, 2, 2, 4837, 4838, 7, 81, 2, 2, 4838, 4839, 7, 79, 2, 2, 4839, 4840, 7, 71, 2, 2, 4840, 640, 3, 2, 2, 2, 4841, 4842, 7, 85, 2, 2, 4842, 4843, 7, 81, 2, 2, 4843, 4844, 7, 87, 2, 2, 4844, 4845, 7, 84, 2, 2, 4845, 4846, 7, 69, 2, 2, 4846, 4847, 7, 71, 2, 2, 4847, 642, 3, 2, 2, 2, 4848, 4849, 7, 85, 2, 2, 4849, 4850, 7, 82, 2, 2, 4850, 4851, 7, 71, 2, 2, 4851, 4852, 7, 69, 2, 2, 4852, 4853, 7, 75, 2, 2, 4853, 4854, 7, 72, 2, 2, 4854, 4855, 7, 75, 2, 2, 4855, 4856, 7, 69, 2, 2, 4856, 4857, 7, 67, 2, 2, 4857, 4858, 7, 86, 2, 2, 4858, 4859, 7, 75, 2, 2, 4859, 4860, 7, 81, 2, 2, 4860, 4861, 7, 80, 2, 2, 4861, 644, 3, 2, 2, 2, 4862, 4863, 7, 85, 2, 2, 4863, 4864, 7, 82, 2, 2, 4864, 4865, 7, 78, 2, 2, 4865, 4866, 7, 75, 2, 2, 4866, 4867, 7, 86, 2, 2, 4867, 646, 3, 2, 2, 2, 4868, 4869, 7, 85, 2, 2, 4869, 4870, 7, 83, 2, 2, 4870, 4871, 7, 78, 2, 2, 4871, 4872, 7, 70, 2, 2, 4872, 4873, 7, 87, 2, 2, 4873, 4874, 7, 79, 2, 2, 4874, 4875, 7, 82, 2, 2, 4875, 4876, 7, 71, 2, 2, 4876, 4877, 7, 84, 2, 2, 4877, 4878, 7, 72, 2, 2, 4878, 4879, 7, 78, 2, 2, 4879, 4880, 7, 67, 2, 2, 4880, 4881, 7, 73, 2, 2, 4881, 4882, 7, 85, 2, 2, 4882, 648, 3, 2, 2, 2, 4883, 4884, 7, 85, 2, 2, 4884, 4885, 7, 83, 2, 2, 4885, 4886, 7, 78, 2, 2, 4886, 4887, 7, 70, 2, 2, 4887, 4888, 7, 87, 2, 2, 4888, 4889, 7, 79, 2, 2, 4889, 4890, 7, 82, 2, 2, 4890, 4891, 7, 71, 2, 2, 4891, 4892, 7, 84, 2, 2, 4892, 4893, 7, 82, 2, 2, 4893, 4894, 7, 67, 2, 2, 4894, 4895, 7, 86, 2, 2, 4895, 4896, 7, 74, 2, 2, 4896, 650, 3, 2, 2, 2, 4897, 4898, 7, 85, 2, 2, 4898, 4899, 7, 83, 2, 2, 4899, 4900, 7, 78, 2, 2, 4900, 4901, 7, 70, 2, 2, 4901, 4902, 7, 87, 2, 2, 4902, 4903, 7, 79, 2, 2, 4903, 4904, 7, 82, 2, 2, 4904, 4905, 7, 71, 2, 2, 4905, 4906, 7, 84, 2, 2, 4906, 4907, 7, 86, 2, 2, 4907, 4908, 7, 75, 2, 2, 4908, 4909, 7, 79, 2, 2, 4909, 4910, 7, 71, 2, 2, 4910, 4911, 7, 81, 2, 2, 4911, 4912, 7, 87, 2, 2, 4912, 4913, 7, 86, 2, 2, 4913, 4914, 7, 85, 2, 2, 4914, 652, 3, 2, 2, 2, 4915, 4916, 7, 85, 2, 2, 4916, 4917, 7, 86, 2, 2, 4917, 4918, 7, 67, 2, 2, 4918, 4919, 7, 86, 2, 2, 4919, 4920, 7, 75, 2, 2, 4920, 4921, 7, 85, 2, 2, 4921, 4922, 7, 86, 2, 2, 4922, 4923, 7, 75, 2, 2, 4923, 4924, 7, 69, 2, 2, 4924, 4925, 7, 85, 2, 2, 4925, 654, 3, 2, 2, 2, 4926, 4927, 7, 85, 2, 2, 4927, 4928, 7, 86, 2, 2, 4928, 4929, 7, 67, 2, 2, 4929, 4930, 7, 86, 2, 2, 4930, 4931, 7, 71, 2, 2, 4931, 656, 3, 2, 2, 2, 4932, 4933, 7, 85, 2, 2, 4933, 4934, 7, 86, 2, 2, 4934, 4935, 7, 67, 2, 2, 4935, 4936, 7, 86, 2, 2, 4936, 4937, 7, 85, 2, 2, 4937, 658, 3, 2, 2, 2, 4938, 4939, 7, 85, 2, 2, 4939, 4940, 7, 86, 2, 2, 4940, 4941, 7, 67, 2, 2, 4941, 4942, 7, 84, 2, 2, 4942, 4943, 7, 86, 2, 2, 4943, 660, 3, 2, 2, 2, 4944, 4945, 7, 85, 2, 2, 4945, 4946, 7, 86, 2, 2, 4946, 4947, 7, 67, 2, 2, 4947, 4948, 7, 84, 2, 2, 4948, 4949, 7, 86, 2, 2, 4949, 4950, 7, 71, 2, 2, 4950, 4951, 7, 70, 2, 2, 4951, 662, 3, 2, 2, 2, 4952, 4953, 7, 85, 2, 2, 4953, 4954, 7, 86, 2, 2, 4954, 4955, 7, 67, 2, 2, 4955, 4956, 7, 84, 2, 2, 4956, 4957, 7, 86, 2, 2, 4957, 4958, 7, 87, 2, 2, 4958, 4959, 7, 82, 2, 2, 4959, 4960, 7, 97, 2, 2, 4960, 4961, 7, 85, 2, 2, 4961, 4962, 7, 86, 2, 2, 4962, 4963, 7, 67, 2, 2, 4963, 4964, 7, 86, 2, 2, 4964, 4965, 7, 71, 2, 2, 4965, 664, 3, 2, 2, 2, 4966, 4967, 7, 85, 2, 2, 4967, 4968, 7, 86, 2, 2, 4968, 4969, 7, 81, 2, 2, 4969, 4970, 7, 82, 2, 2, 4970, 666, 3, 2, 2, 2, 4971, 4972, 7, 85, 2, 2, 4972, 4973, 7, 86, 2, 2, 4973, 4974, 7, 81, 2, 2, 4974, 4975, 7, 82, 2, 2, 4975, 4976, 7, 82, 2, 2, 4976, 4977, 7, 71, 2, 2, 4977, 4978, 7, 70, 2, 2, 4978, 668, 3, 2, 2, 2, 4979, 4980, 7, 85, 2, 2, 4980, 4981, 7, 86, 2, 2, 4981, 4982, 7, 81, 2, 2, 4982, 4983, 7, 82, 2, 2, 4983, 4984, 7, 97, 2, 2, 4984, 4985, 7, 81, 2, 2, 4985, 4986, 7, 80, 2, 2, 4986, 4987, 7, 97, 2, 2, 4987, 4988, 7, 71, 2, 2, 4988, 4989, 7, 84, 2, 2, 4989, 4990, 7, 84, 2, 2, 4990, 4991, 7, 81, 2, 2, 4991, 4992, 7, 84, 2, 2, 4992, 670, 3, 2, 2, 2, 4993, 4994, 7, 85, 2, 2, 4994, 4995, 7, 87, 2, 2, 4995, 4996, 7, 82, 2, 2, 4996, 4997, 7, 82, 2, 2, 4997, 4998, 7, 81, 2, 2, 4998, 4999, 7, 84, 2, 2, 4999, 5000, 7, 86, 2, 2, 5000, 5001, 7, 71, 2, 2, 5001, 5002, 7, 70, 2, 2, 5002, 672, 3, 2, 2, 2, 5003, 5004, 7, 85, 2, 2, 5004, 5005, 7, 91, 2, 2, 5005, 5006, 7, 85, 2, 2, 5006, 5007, 7, 86, 2, 2, 5007, 5008, 7, 71, 2, 2, 5008, 5009, 7, 79, 2, 2, 5009, 5010, 7, 97, 2, 2, 5010, 5011, 7, 87, 2, 2, 5011, 5012, 7, 85, 2, 2, 5012, 5013, 7, 71, 2, 2, 5013, 5014, 7, 84, 2, 2, 5014, 674, 3, 2, 2, 2, 5015, 5016, 7, 86, 2, 2, 5016, 5017, 7, 67, 2, 2, 5017, 5018, 7, 68, 2, 2, 5018, 5019, 7, 78, 2, 2, 5019, 5020, 7, 71, 2, 2, 5020, 676, 3, 2, 2, 2, 5021, 5022, 7, 86, 2, 2, 5022, 5023, 7, 67, 2, 2, 5023, 5024, 7, 68, 2, 2, 5024, 5025, 7, 78, 2, 2, 5025, 5026, 7, 71, 2, 2, 5026, 5027, 7, 85, 2, 2, 5027, 5028, 7, 67, 2, 2, 5028, 5029, 7, 79, 2, 2, 5029, 5030, 7, 82, 2, 2, 5030, 5031, 7, 78, 2, 2, 5031, 5032, 7, 71, 2, 2, 5032, 678, 3, 2, 2, 2, 5033, 5034, 7, 86, 2, 2, 5034, 5035, 7, 67, 2, 2, 5035, 5036, 7, 82, 2, 2, 5036, 5037, 7, 71, 2, 2, 5037, 680, 3, 2, 2, 2, 5038, 5039, 7, 86, 2, 2, 5039, 5040, 7, 67, 2, 2, 5040, 5041, 7, 84, 2, 2, 5041, 5042, 7, 73, 2, 2, 5042, 5043, 7, 71, 2, 2, 5043, 5044, 7, 86, 2, 2, 5044, 682, 3, 2, 2, 2, 5045, 5046, 7, 86, 2, 2, 5046, 5047, 7, 69, 2, 2, 5047, 5048, 7, 82, 2, 2, 5048, 684, 3, 2, 2, 2, 5049, 5050, 7, 86, 2, 2, 5050, 5051, 7, 71, 2, 2, 5051, 5052, 7, 90, 2, 2, 5052, 5053, 7, 86, 2, 2, 5053, 5054, 7, 85, 2, 2, 5054, 5055, 7, 75, 2, 2, 5055, 5056, 7, 92, 2, 2, 5056, 5057, 7, 71, 2, 2, 5057, 686, 3, 2, 2, 2, 5058, 5059, 7, 86, 2, 2, 5059, 5060, 7, 74, 2, 2, 5060, 5061, 7, 71, 2, 2, 5061, 5062, 7, 80, 2, 2, 5062, 688, 3, 2, 2, 2, 5063, 5064, 7, 86, 2, 2, 5064, 5065, 7, 81, 2, 2, 5065, 690, 3, 2, 2, 2, 5066, 5067, 7, 86, 2, 2, 5067, 5068, 7, 81, 2, 2, 5068, 5069, 7, 82, 2, 2, 5069, 692, 3, 2, 2, 2, 5070, 5071, 7, 86, 2, 2, 5071, 5072, 7, 84, 2, 2, 5072, 5073, 7, 67, 2, 2, 5073, 5074, 7, 69, 2, 2, 5074, 5075, 7, 77, 2, 2, 5075, 5076, 7, 97, 2, 2, 5076, 5077, 7, 69, 2, 2, 5077, 5078, 7, 67, 2, 2, 5078, 5079, 7, 87, 2, 2, 5079, 5080, 7, 85, 2, 2, 5080, 5081, 7, 67, 2, 2, 5081, 5082, 7, 78, 2, 2, 5082, 5083, 7, 75, 2, 2, 5083, 5084, 7, 86, 2, 2, 5084, 5085, 7, 91, 2, 2, 5085, 694, 3, 2, 2, 2, 5086, 5087, 7, 86, 2, 2, 5087, 5088, 7, 84, 2, 2, 5088, 5089, 7, 67, 2, 2, 5089, 5090, 7, 80, 2, 2, 5090, 696, 3, 2, 2, 2, 5091, 5092, 7, 86, 2, 2, 5092, 5093, 7, 84, 2, 2, 5093, 5094, 7, 67, 2, 2, 5094, 5095, 7, 80, 2, 2, 5095, 5096, 7, 85, 2, 2, 5096, 5097, 7, 67, 2, 2, 5097, 5098, 7, 69, 2, 2, 5098, 5099, 7, 86, 2, 2, 5099, 5100, 7, 75, 2, 2, 5100, 5101, 7, 81, 2, 2, 5101, 5102, 7, 80, 2, 2, 5102, 698, 3, 2, 2, 2, 5103, 5104, 7, 86, 2, 2, 5104, 5105, 7, 84, 2, 2, 5105, 5106, 7, 67, 2, 2, 5106, 5107, 7, 80, 2, 2, 5107, 5108, 7, 85, 2, 2, 5108, 5109, 7, 72, 2, 2, 5109, 5110, 7, 71, 2, 2, 5110, 5111, 7, 84, 2, 2, 5111, 700, 3, 2, 2, 2, 5112, 5113, 7, 86, 2, 2, 5113, 5114, 7, 84, 2, 2, 5114, 5115, 7, 75, 2, 2, 5115, 5116, 7, 73, 2, 2, 5116, 5117, 7, 73, 2, 2, 5117, 5118, 7, 71, 2, 2, 5118, 5119, 7, 84, 2, 2, 5119, 702, 3, 2, 2, 2, 5120, 5121, 7, 86, 2, 2, 5121, 5122, 7, 84, 2, 2, 5122, 5123, 7, 87, 2, 2, 5123, 5124, 7, 80, 2, 2, 5124, 5125, 7, 69, 2, 2, 5125, 5126, 7, 67, 2, 2, 5126, 5127, 7, 86, 2, 2, 5127, 5128, 7, 71, 2, 2, 5128, 704, 3, 2, 2, 2, 5129, 5130, 7, 86, 2, 2, 5130, 5131, 7, 85, 2, 2, 5131, 5132, 7, 71, 2, 2, 5132, 5133, 7, 83, 2, 2, 5133, 5134, 7, 87, 2, 2, 5134, 5135, 7, 67, 2, 2, 5135, 5136, 7, 78, 2, 2, 5136, 706, 3, 2, 2, 2, 5137, 5138, 7, 87, 2, 2, 5138, 5139, 7, 80, 2, 2, 5139, 5140, 7, 69, 2, 2, 5140, 5141, 7, 74, 2, 2, 5141, 5142, 7, 71, 2, 2, 5142, 5143, 7, 69, 2, 2, 5143, 5144, 7, 77, 2, 2, 5144, 5145, 7, 71, 2, 2, 5145, 5146, 7, 70, 2, 2, 5146, 708, 3, 2, 2, 2, 5147, 5148, 7, 87, 2, 2, 5148, 5149, 7, 80, 2, 2, 5149, 5150, 7, 75, 2, 2, 5150, 5151, 7, 81, 2, 2, 5151, 5152, 7, 80, 2, 2, 5152, 710, 3, 2, 2, 2, 5153, 5154, 7, 87, 2, 2, 5154, 5155, 7, 80, 2, 2, 5155, 5156, 7, 75, 2, 2, 5156, 5157, 7, 83, 2, 2, 5157, 5158, 7, 87, 2, 2, 5158, 5159, 7, 71, 2, 2, 5159, 712, 3, 2, 2, 2, 5160, 5161, 7, 87, 2, 2, 5161, 5162, 7, 80, 2, 2, 5162, 5163, 7, 78, 2, 2, 5163, 5164, 7, 81, 2, 2, 5164, 5165, 7, 69, 2, 2, 5165, 5166, 7, 77, 2, 2, 5166, 714, 3, 2, 2, 2, 5167, 5168, 7, 87, 2, 2, 5168, 5169, 7, 80, 2, 2, 5169, 5170, 7, 82, 2, 2, 5170, 5171, 7, 75, 2, 2, 5171, 5172, 7, 88, 2, 2, 5172, 5173, 7, 81, 2, 2, 5173, 5174, 7, 86, 2, 2, 5174, 716, 3, 2, 2, 2, 5175, 5176, 7, 87, 2, 2, 5176, 5177, 7, 80, 2, 2, 5177, 5178, 7, 85, 2, 2, 5178, 5179, 7, 67, 2, 2, 5179, 5180, 7, 72, 2, 2, 5180, 5181, 7, 71, 2, 2, 5181, 718, 3, 2, 2, 2, 5182, 5183, 7, 87, 2, 2, 5183, 5184, 7, 82, 2, 2, 5184, 5185, 7, 70, 2, 2, 5185, 5186, 7, 67, 2, 2, 5186, 5187, 7, 86, 2, 2, 5187, 5188, 7, 71, 2, 2, 5188, 720, 3, 2, 2, 2, 5189, 5190, 7, 87, 2, 2, 5190, 5191, 7, 82, 2, 2, 5191, 5192, 7, 70, 2, 2, 5192, 5193, 7, 67, 2, 2, 5193, 5194, 7, 86, 2, 2, 5194, 5195, 7, 71, 2, 2, 5195, 5196, 7, 86, 2, 2, 5196, 5197, 7, 71, 2, 2, 5197, 5198, 7, 90, 2, 2, 5198, 5199, 7, 86, 2, 2, 5199, 722, 3, 2, 2, 2, 5200, 5201, 7, 87, 2, 2, 5201, 5202, 7, 84, 2, 2, 5202, 5203, 7, 78, 2, 2, 5203, 724, 3, 2, 2, 2, 5204, 5205, 7, 87, 2, 2, 5205, 5206, 7, 85, 2, 2, 5206, 5207, 7, 71, 2, 2, 5207, 726, 3, 2, 2, 2, 5208, 5209, 7, 87, 2, 2, 5209, 5210, 7, 85, 2, 2, 5210, 5211, 7, 71, 2, 2, 5211, 5212, 7, 70, 2, 2, 5212, 728, 3, 2, 2, 2, 5213, 5214, 7, 87, 2, 2, 5214, 5215, 7, 85, 2, 2, 5215, 5216, 7, 71, 2, 2, 5216, 5217, 7, 84, 2, 2, 5217, 730, 3, 2, 2, 2, 5218, 5219, 7, 88, 2, 2, 5219, 5220, 7, 67, 2, 2, 5220, 5221, 7, 78, 2, 2, 5221, 5222, 7, 87, 2, 2, 5222, 5223, 7, 71, 2, 2, 5223, 5224, 7, 85, 2, 2, 5224, 732, 3, 2, 2, 2, 5225, 5226, 7, 88, 2, 2, 5226, 5227, 7, 67, 2, 2, 5227, 5228, 7, 84, 2, 2, 5228, 5229, 7, 91, 2, 2, 5229, 5230, 7, 75, 2, 2, 5230, 5231, 7, 80, 2, 2, 5231, 5232, 7, 73, 2, 2, 5232, 734, 3, 2, 2, 2, 5233, 5234, 7, 88, 2, 2, 5234, 5235, 7, 71, 2, 2, 5235, 5236, 7, 84, 2, 2, 5236, 5237, 7, 68, 2, 2, 5237, 5238, 7, 81, 2, 2, 5238, 5239, 7, 85, 2, 2, 5239, 5240, 7, 71, 2, 2, 5240, 5241, 7, 78, 2, 2, 5241, 5242, 7, 81, 2, 2, 5242, 5243, 7, 73, 2, 2, 5243, 5244, 7, 73, 2, 2, 5244, 5245, 7, 75, 2, 2, 5245, 5246, 7, 80, 2, 2, 5246, 5247, 7, 73, 2, 2, 5247, 736, 3, 2, 2, 2, 5248, 5249, 7, 88, 2, 2, 5249, 5250, 7, 75, 2, 2, 5250, 5251, 7, 71, 2, 2, 5251, 5252, 7, 89, 2, 2, 5252, 738, 3, 2, 2, 2, 5253, 5254, 7, 88, 2, 2, 5254, 5255, 7, 75, 2, 2, 5255, 5256, 7, 85, 2, 2, 5256, 5257, 7, 75, 2, 2, 5257, 5258, 7, 68, 2, 2, 5258, 5259, 7, 75, 2, 2, 5259, 5260, 7, 78, 2, 2, 5260, 5261, 7, 75, 2, 2, 5261, 5262, 7, 86, 2, 2, 5262, 5263, 7, 91, 2, 2, 5263, 740, 3, 2, 2, 2, 5264, 5265, 7, 89, 2, 2, 5265, 5266, 7, 67, 2, 2, 5266, 5267, 7, 75, 2, 2, 5267, 5268, 7, 86, 2, 2, 5268, 5269, 7, 72, 2, 2, 5269, 5270, 7, 81, 2, 2, 5270, 5271, 7, 84, 2, 2, 5271, 742, 3, 2, 2, 2, 5272, 5273, 7, 89, 2, 2, 5273, 5274, 7, 74, 2, 2, 5274, 5275, 7, 71, 2, 2, 5275, 5276, 7, 80, 2, 2, 5276, 744, 3, 2, 2, 2, 5277, 5278, 7, 89, 2, 2, 5278, 5279, 7, 74, 2, 2, 5279, 5280, 7, 71, 2, 2, 5280, 5281, 7, 84, 2, 2, 5281, 5282, 7, 71, 2, 2, 5282, 746, 3, 2, 2, 2, 5283, 5284, 7, 89, 2, 2, 5284, 5285, 7, 74, 2, 2, 5285, 5286, 7, 75, 2, 2, 5286, 5287, 7, 78, 2, 2, 5287, 5288, 7, 71, 2, 2, 5288, 748, 3, 2, 2, 2, 5289, 5290, 7, 89, 2, 2, 5290, 5291, 7, 75, 2, 2, 5291, 5292, 7, 80, 2, 2, 5292, 5293, 7, 70, 2, 2, 5293, 5294, 7, 81, 2, 2, 5294, 5295, 7, 89, 2, 2, 5295, 5296, 7, 85, 2, 2, 5296, 750, 3, 2, 2, 2, 5297, 5298, 7, 89, 2, 2, 5298, 5299, 7, 75, 2, 2, 5299, 5300, 7, 86, 2, 2, 5300, 5301, 7, 74, 2, 2, 5301, 752, 3, 2, 2, 2, 5302, 5303, 7, 89, 2, 2, 5303, 5304, 7, 75, 2, 2, 5304, 5305, 7, 86, 2, 2, 5305, 5306, 7, 74, 2, 2, 5306, 5307, 7, 75, 2, 2, 5307, 5308, 7, 80, 2, 2, 5308, 754, 3, 2, 2, 2, 5309, 5310, 7, 89, 2, 2, 5310, 5311, 7, 75, 2, 2, 5311, 5312, 7, 86, 2, 2, 5312, 5313, 7, 74, 2, 2, 5313, 5314, 7, 81, 2, 2, 5314, 5315, 7, 87, 2, 2, 5315, 5316, 7, 86, 2, 2, 5316, 756, 3, 2, 2, 2, 5317, 5318, 7, 89, 2, 2, 5318, 5319, 7, 75, 2, 2, 5319, 5320, 7, 86, 2, 2, 5320, 5321, 7, 80, 2, 2, 5321, 5322, 7, 71, 2, 2, 5322, 5323, 7, 85, 2, 2, 5323, 5324, 7, 85, 2, 2, 5324, 758, 3, 2, 2, 2, 5325, 5326, 7, 89, 2, 2, 5326, 5327, 7, 84, 2, 2, 5327, 5328, 7, 75, 2, 2, 5328, 5329, 7, 86, 2, 2, 5329, 5330, 7, 71, 2, 2, 5330, 5331, 7, 86, 2, 2, 5331, 5332, 7, 71, 2, 2, 5332, 5333, 7, 90, 2, 2, 5333, 5334, 7, 86, 2, 2, 5334, 760, 3, 2, 2, 2, 5335, 5336, 7, 67, 2, 2, 5336, 5337, 7, 68, 2, 2, 5337, 5338, 7, 85, 2, 2, 5338, 5339, 7, 81, 2, 2, 5339, 5340, 7, 78, 2, 2, 5340, 5341, 7, 87, 2, 2, 5341, 5342, 7, 86, 2, 2, 5342, 5343, 7, 71, 2, 2, 5343, 762, 3, 2, 2, 2, 5344, 5345, 7, 67, 2, 2, 5345, 5346, 7, 69, 2, 2, 5346, 5347, 7, 69, 2, 2, 5347, 5348, 7, 71, 2, 2, 5348, 5349, 7, 80, 2, 2, 5349, 5350, 7, 86, 2, 2, 5350, 5351, 7, 97, 2, 2, 5351, 5352, 7, 85, 2, 2, 5352, 5353, 7, 71, 2, 2, 5353, 5354, 7, 80, 2, 2, 5354, 5355, 7, 85, 2, 2, 5355, 5356, 7, 75, 2, 2, 5356, 5357, 7, 86, 2, 2, 5357, 5358, 7, 75, 2, 2, 5358, 5359, 7, 88, 2, 2, 5359, 5360, 7, 75, 2, 2, 5360, 5361, 7, 86, 2, 2, 5361, 5362, 7, 91, 2, 2, 5362, 764, 3, 2, 2, 2, 5363, 5364, 7, 67, 2, 2, 5364, 5365, 7, 69, 2, 2, 5365, 5366, 7, 86, 2, 2, 5366, 5367, 7, 75, 2, 2, 5367, 5368, 7, 81, 2, 2, 5368, 5369, 7, 80, 2, 2, 5369, 766, 3, 2, 2, 2, 5370, 5371, 7, 67, 2, 2, 5371, 5372, 7, 69, 2, 2, 5372, 5373, 7, 86, 2, 2, 5373, 5374, 7, 75, 2, 2, 5374, 5375, 7, 88, 2, 2, 5375, 5376, 7, 67, 2, 2, 5376, 5377, 7, 86, 2, 2, 5377, 5378, 7, 75, 2, 2, 5378, 5379, 7, 81, 2, 2, 5379, 5380, 7, 80, 2, 2, 5380, 768, 3, 2, 2, 2, 5381, 5382, 7, 67, 2, 2, 5382, 5383, 7, 69, 2, 2, 5383, 5384, 7, 86, 2, 2, 5384, 5385, 7, 75, 2, 2, 5385, 5386, 7, 88, 2, 2, 5386, 5387, 7, 71, 2, 2, 5387, 770, 3, 2, 2, 2, 5388, 5389, 7, 67, 2, 2, 5389, 5390, 7, 70, 2, 2, 5390, 5391, 7, 70, 2, 2, 5391, 5392, 7, 84, 2, 2, 5392, 5393, 7, 71, 2, 2, 5393, 5394, 7, 85, 2, 2, 5394, 5395, 7, 85, 2, 2, 5395, 772, 3, 2, 2, 2, 5396, 5397, 7, 67, 2, 2, 5397, 5398, 7, 71, 2, 2, 5398, 5399, 7, 85, 2, 2, 5399, 5400, 7, 97, 2, 2, 5400, 5401, 7, 51, 2, 2, 5401, 5402, 7, 52, 2, 2, 5402, 5403, 7, 58, 2, 2, 5403, 774, 3, 2, 2, 2, 5404, 5405, 7, 67, 2, 2, 5405, 5406, 7, 71, 2, 2, 5406, 5407, 7, 85, 2, 2, 5407, 5408, 7, 97, 2, 2, 5408, 5409, 7, 51, 2, 2, 5409, 5410, 7, 59, 2, 2, 5410, 5411, 7, 52, 2, 2, 5411, 776, 3, 2, 2, 2, 5412, 5413, 7, 67, 2, 2, 5413, 5414, 7, 71, 2, 2, 5414, 5415, 7, 85, 2, 2, 5415, 5416, 7, 97, 2, 2, 5416, 5417, 7, 52, 2, 2, 5417, 5418, 7, 55, 2, 2, 5418, 5419, 7, 56, 2, 2, 5419, 778, 3, 2, 2, 2, 5420, 5421, 7, 67, 2, 2, 5421, 5422, 7, 72, 2, 2, 5422, 5423, 7, 72, 2, 2, 5423, 5424, 7, 75, 2, 2, 5424, 5425, 7, 80, 2, 2, 5425, 5426, 7, 75, 2, 2, 5426, 5427, 7, 86, 2, 2, 5427, 5428, 7, 91, 2, 2, 5428, 780, 3, 2, 2, 2, 5429, 5430, 7, 67, 2, 2, 5430, 5431, 7, 72, 2, 2, 5431, 5432, 7, 86, 2, 2, 5432, 5433, 7, 71, 2, 2, 5433, 5434, 7, 84, 2, 2, 5434, 782, 3, 2, 2, 2, 5435, 5436, 7, 67, 2, 2, 5436, 5437, 7, 73, 2, 2, 5437, 5438, 7, 73, 2, 2, 5438, 5439, 7, 84, 2, 2, 5439, 5440, 7, 71, 2, 2, 5440, 5441, 7, 73, 2, 2, 5441, 5442, 7, 67, 2, 2, 5442, 5443, 7, 86, 2, 2, 5443, 5444, 7, 71, 2, 2, 5444, 784, 3, 2, 2, 2, 5445, 5446, 7, 67, 2, 2, 5446, 5447, 7, 78, 2, 2, 5447, 5448, 7, 73, 2, 2, 5448, 5449, 7, 81, 2, 2, 5449, 5450, 7, 84, 2, 2, 5450, 5451, 7, 75, 2, 2, 5451, 5452, 7, 86, 2, 2, 5452, 5453, 7, 74, 2, 2, 5453, 5454, 7, 79, 2, 2, 5454, 786, 3, 2, 2, 2, 5455, 5456, 7, 67, 2, 2, 5456, 5457, 7, 78, 2, 2, 5457, 5458, 7, 78, 2, 2, 5458, 5459, 7, 81, 2, 2, 5459, 5460, 7, 89, 2, 2, 5460, 5461, 7, 97, 2, 2, 5461, 5462, 7, 71, 2, 2, 5462, 5463, 7, 80, 2, 2, 5463, 5464, 7, 69, 2, 2, 5464, 5465, 7, 84, 2, 2, 5465, 5466, 7, 91, 2, 2, 5466, 5467, 7, 82, 2, 2, 5467, 5468, 7, 86, 2, 2, 5468, 5469, 7, 71, 2, 2, 5469, 5470, 7, 70, 2, 2, 5470, 5471, 7, 97, 2, 2, 5471, 5472, 7, 88, 2, 2, 5472, 5473, 7, 67, 2, 2, 5473, 5474, 7, 78, 2, 2, 5474, 5475, 7, 87, 2, 2, 5475, 5476, 7, 71, 2, 2, 5476, 5477, 7, 97, 2, 2, 5477, 5478, 7, 79, 2, 2, 5478, 5479, 7, 81, 2, 2, 5479, 5480, 7, 70, 2, 2, 5480, 5481, 7, 75, 2, 2, 5481, 5482, 7, 72, 2, 2, 5482, 5483, 7, 75, 2, 2, 5483, 5484, 7, 69, 2, 2, 5484, 5485, 7, 67, 2, 2, 5485, 5486, 7, 86, 2, 2, 5486, 5487, 7, 75, 2, 2, 5487, 5488, 7, 81, 2, 2, 5488, 5489, 7, 80, 2, 2, 5489, 5490, 7, 85, 2, 2, 5490, 788, 3, 2, 2, 2, 5491, 5492, 7, 67, 2, 2, 5492, 5493, 7, 78, 2, 2, 5493, 5494, 7, 78, 2, 2, 5494, 5495, 7, 81, 2, 2, 5495, 5496, 7, 89, 2, 2, 5496, 5497, 7, 97, 2, 2, 5497, 5498, 7, 85, 2, 2, 5498, 5499, 7, 80, 2, 2, 5499, 5500, 7, 67, 2, 2, 5500, 5501, 7, 82, 2, 2, 5501, 5502, 7, 85, 2, 2, 5502, 5503, 7, 74, 2, 2, 5503, 5504, 7, 81, 2, 2, 5504, 5505, 7, 86, 2, 2, 5505, 5506, 7, 97, 2, 2, 5506, 5507, 7, 75, 2, 2, 5507, 5508, 7, 85, 2, 2, 5508, 5509, 7, 81, 2, 2, 5509, 5510, 7, 78, 2, 2, 5510, 5511, 7, 67, 2, 2, 5511, 5512, 7, 86, 2, 2, 5512, 5513, 7, 75, 2, 2, 5513, 5514, 7, 81, 2, 2, 5514, 5515, 7, 80, 2, 2, 5515, 790, 3, 2, 2, 2, 5516, 5517, 7, 67, 2, 2, 5517, 5518, 7, 78, 2, 2, 5518, 5519, 7, 78, 2, 2, 5519, 5520, 7, 81, 2, 2, 5520, 5521, 7, 89, 2, 2, 5521, 5522, 7, 71, 2, 2, 5522, 5523, 7, 70, 2, 2, 5523, 792, 3, 2, 2, 2, 5524, 5525, 7, 67, 2, 2, 5525, 5526, 7, 80, 2, 2, 5526, 5527, 7, 85, 2, 2, 5527, 5528, 7, 75, 2, 2, 5528, 5529, 7, 97, 2, 2, 5529, 5530, 7, 80, 2, 2, 5530, 5531, 7, 87, 2, 2, 5531, 5532, 7, 78, 2, 2, 5532, 5533, 7, 78, 2, 2, 5533, 5534, 7, 97, 2, 2, 5534, 5535, 7, 70, 2, 2, 5535, 5536, 7, 71, 2, 2, 5536, 5537, 7, 72, 2, 2, 5537, 5538, 7, 67, 2, 2, 5538, 5539, 7, 87, 2, 2, 5539, 5540, 7, 78, 2, 2, 5540, 5541, 7, 86, 2, 2, 5541, 794, 3, 2, 2, 2, 5542, 5543, 7, 67, 2, 2, 5543, 5544, 7, 80, 2, 2, 5544, 5545, 7, 85, 2, 2, 5545, 5546, 7, 75, 2, 2, 5546, 5547, 7, 97, 2, 2, 5547, 5548, 7, 80, 2, 2, 5548, 5549, 7, 87, 2, 2, 5549, 5550, 7, 78, 2, 2, 5550, 5551, 7, 78, 2, 2, 5551, 5552, 7, 85, 2, 2, 5552, 796, 3, 2, 2, 2, 5553, 5554, 7, 67, 2, 2, 5554, 5555, 7, 80, 2, 2, 5555, 5556, 7, 85, 2, 2, 5556, 5557, 7, 75, 2, 2, 5557, 5558, 7, 97, 2, 2, 5558, 5559, 7, 82, 2, 2, 5559, 5560, 7, 67, 2, 2, 5560, 5561, 7, 70, 2, 2, 5561, 5562, 7, 70, 2, 2, 5562, 5563, 7, 75, 2, 2, 5563, 5564, 7, 80, 2, 2, 5564, 5565, 7, 73, 2, 2, 5565, 798, 3, 2, 2, 2, 5566, 5567, 7, 67, 2, 2, 5567, 5568, 7, 80, 2, 2, 5568, 5569, 7, 85, 2, 2, 5569, 5570, 7, 75, 2, 2, 5570, 5571, 7, 97, 2, 2, 5571, 5572, 7, 89, 2, 2, 5572, 5573, 7, 67, 2, 2, 5573, 5574, 7, 84, 2, 2, 5574, 5575, 7, 80, 2, 2, 5575, 5576, 7, 75, 2, 2, 5576, 5577, 7, 80, 2, 2, 5577, 5578, 7, 73, 2, 2, 5578, 5579, 7, 85, 2, 2, 5579, 800, 3, 2, 2, 2, 5580, 5581, 7, 67, 2, 2, 5581, 5582, 7, 82, 2, 2, 5582, 5583, 7, 82, 2, 2, 5583, 5584, 7, 78, 2, 2, 5584, 5585, 7, 75, 2, 2, 5585, 5586, 7, 69, 2, 2, 5586, 5587, 7, 67, 2, 2, 5587, 5588, 7, 86, 2, 2, 5588, 5589, 7, 75, 2, 2, 5589, 5590, 7, 81, 2, 2, 5590, 5591, 7, 80, 2, 2, 5591, 5592, 7, 97, 2, 2, 5592, 5593, 7, 78, 2, 2, 5593, 5594, 7, 81, 2, 2, 5594, 5595, 7, 73, 2, 2, 5595, 802, 3, 2, 2, 2, 5596, 5597, 7, 67, 2, 2, 5597, 5598, 7, 82, 2, 2, 5598, 5599, 7, 82, 2, 2, 5599, 5600, 7, 78, 2, 2, 5600, 5601, 7, 91, 2, 2, 5601, 804, 3, 2, 2, 2, 5602, 5603, 7, 67, 2, 2, 5603, 5604, 7, 84, 2, 2, 5604, 5605, 7, 75, 2, 2, 5605, 5606, 7, 86, 2, 2, 5606, 5607, 7, 74, 2, 2, 5607, 5608, 7, 67, 2, 2, 5608, 5609, 7, 68, 2, 2, 5609, 5610, 7, 81, 2, 2, 5610, 5611, 7, 84, 2, 2, 5611, 5612, 7, 86, 2, 2, 5612, 806, 3, 2, 2, 2, 5613, 5614, 7, 67, 2, 2, 5614, 5615, 7, 85, 2, 2, 5615, 5616, 7, 85, 2, 2, 5616, 5617, 7, 71, 2, 2, 5617, 5618, 7, 79, 2, 2, 5618, 5619, 7, 68, 2, 2, 5619, 5620, 7, 78, 2, 2, 5620, 5621, 7, 91, 2, 2, 5621, 808, 3, 2, 2, 2, 5622, 5623, 7, 67, 2, 2, 5623, 5624, 7, 87, 2, 2, 5624, 5625, 7, 70, 2, 2, 5625, 5626, 7, 75, 2, 2, 5626, 5627, 7, 86, 2, 2, 5627, 810, 3, 2, 2, 2, 5628, 5629, 7, 67, 2, 2, 5629, 5630, 7, 87, 2, 2, 5630, 5631, 7, 70, 2, 2, 5631, 5632, 7, 75, 2, 2, 5632, 5633, 7, 86, 2, 2, 5633, 5634, 7, 97, 2, 2, 5634, 5635, 7, 73, 2, 2, 5635, 5636, 7, 87, 2, 2, 5636, 5637, 7, 75, 2, 2, 5637, 5638, 7, 70, 2, 2, 5638, 812, 3, 2, 2, 2, 5639, 5640, 7, 67, 2, 2, 5640, 5641, 7, 87, 2, 2, 5641, 5642, 7, 86, 2, 2, 5642, 5643, 7, 81, 2, 2, 5643, 814, 3, 2, 2, 2, 5644, 5645, 7, 67, 2, 2, 5645, 5646, 7, 87, 2, 2, 5646, 5647, 7, 86, 2, 2, 5647, 5648, 7, 81, 2, 2, 5648, 5649, 7, 97, 2, 2, 5649, 5650, 7, 69, 2, 2, 5650, 5651, 7, 78, 2, 2, 5651, 5652, 7, 71, 2, 2, 5652, 5653, 7, 67, 2, 2, 5653, 5654, 7, 80, 2, 2, 5654, 5655, 7, 87, 2, 2, 5655, 5656, 7, 82, 2, 2, 5656, 816, 3, 2, 2, 2, 5657, 5658, 7, 67, 2, 2, 5658, 5659, 7, 87, 2, 2, 5659, 5660, 7, 86, 2, 2, 5660, 5661, 7, 81, 2, 2, 5661, 5662, 7, 97, 2, 2, 5662, 5663, 7, 69, 2, 2, 5663, 5664, 7, 78, 2, 2, 5664, 5665, 7, 81, 2, 2, 5665, 5666, 7, 85, 2, 2, 5666, 5667, 7, 71, 2, 2, 5667, 818, 3, 2, 2, 2, 5668, 5669, 7, 67, 2, 2, 5669, 5670, 7, 87, 2, 2, 5670, 5671, 7, 86, 2, 2, 5671, 5672, 7, 81, 2, 2, 5672, 5673, 7, 97, 2, 2, 5673, 5674, 7, 69, 2, 2, 5674, 5675, 7, 84, 2, 2, 5675, 5676, 7, 71, 2, 2, 5676, 5677, 7, 67, 2, 2, 5677, 5678, 7, 86, 2, 2, 5678, 5679, 7, 71, 2, 2, 5679, 5680, 7, 97, 2, 2, 5680, 5681, 7, 85, 2, 2, 5681, 5682, 7, 86, 2, 2, 5682, 5683, 7, 67, 2, 2, 5683, 5684, 7, 86, 2, 2, 5684, 5685, 7, 75, 2, 2, 5685, 5686, 7, 85, 2, 2, 5686, 5687, 7, 86, 2, 2, 5687, 5688, 7, 75, 2, 2, 5688, 5689, 7, 69, 2, 2, 5689, 5690, 7, 85, 2, 2, 5690, 820, 3, 2, 2, 2, 5691, 5692, 7, 67, 2, 2, 5692, 5693, 7, 87, 2, 2, 5693, 5694, 7, 86, 2, 2, 5694, 5695, 7, 81, 2, 2, 5695, 5696, 7, 97, 2, 2, 5696, 5697, 7, 85, 2, 2, 5697, 5698, 7, 74, 2, 2, 5698, 5699, 7, 84, 2, 2, 5699, 5700, 7, 75, 2, 2, 5700, 5701, 7, 80, 2, 2, 5701, 5702, 7, 77, 2, 2, 5702, 822, 3, 2, 2, 2, 5703, 5704, 7, 67, 2, 2, 5704, 5705, 7, 87, 2, 2, 5705, 5706, 7, 86, 2, 2, 5706, 5707, 7, 81, 2, 2, 5707, 5708, 7, 97, 2, 2, 5708, 5709, 7, 87, 2, 2, 5709, 5710, 7, 82, 2, 2, 5710, 5711, 7, 70, 2, 2, 5711, 5712, 7, 67, 2, 2, 5712, 5713, 7, 86, 2, 2, 5713, 5714, 7, 71, 2, 2, 5714, 5715, 7, 97, 2, 2, 5715, 5716, 7, 85, 2, 2, 5716, 5717, 7, 86, 2, 2, 5717, 5718, 7, 67, 2, 2, 5718, 5719, 7, 86, 2, 2, 5719, 5720, 7, 75, 2, 2, 5720, 5721, 7, 85, 2, 2, 5721, 5722, 7, 86, 2, 2, 5722, 5723, 7, 75, 2, 2, 5723, 5724, 7, 69, 2, 2, 5724, 5725, 7, 85, 2, 2, 5725, 824, 3, 2, 2, 2, 5726, 5727, 7, 67, 2, 2, 5727, 5728, 7, 87, 2, 2, 5728, 5729, 7, 86, 2, 2, 5729, 5730, 7, 81, 2, 2, 5730, 5731, 7, 97, 2, 2, 5731, 5732, 7, 87, 2, 2, 5732, 5733, 7, 82, 2, 2, 5733, 5734, 7, 70, 2, 2, 5734, 5735, 7, 67, 2, 2, 5735, 5736, 7, 86, 2, 2, 5736, 5737, 7, 71, 2, 2, 5737, 5738, 7, 97, 2, 2, 5738, 5739, 7, 85, 2, 2, 5739, 5740, 7, 86, 2, 2, 5740, 5741, 7, 67, 2, 2, 5741, 5742, 7, 86, 2, 2, 5742, 5743, 7, 75, 2, 2, 5743, 5744, 7, 85, 2, 2, 5744, 5745, 7, 86, 2, 2, 5745, 5746, 7, 75, 2, 2, 5746, 5747, 7, 69, 2, 2, 5747, 5748, 7, 85, 2, 2, 5748, 5749, 7, 97, 2, 2, 5749, 5750, 7, 67, 2, 2, 5750, 5751, 7, 85, 2, 2, 5751, 5752, 7, 91, 2, 2, 5752, 5753, 7, 80, 2, 2, 5753, 5754, 7, 69, 2, 2, 5754, 826, 3, 2, 2, 2, 5755, 5756, 7, 67, 2, 2, 5756, 5757, 7, 88, 2, 2, 5757, 5758, 7, 67, 2, 2, 5758, 5759, 7, 75, 2, 2, 5759, 5760, 7, 78, 2, 2, 5760, 5761, 7, 67, 2, 2, 5761, 5762, 7, 68, 2, 2, 5762, 5763, 7, 75, 2, 2, 5763, 5764, 7, 78, 2, 2, 5764, 5765, 7, 75, 2, 2, 5765, 5766, 7, 86, 2, 2, 5766, 5767, 7, 91, 2, 2, 5767, 828, 3, 2, 2, 2, 5768, 5769, 7, 67, 2, 2, 5769, 5770, 7, 88, 2, 2, 5770, 5771, 7, 73, 2, 2, 5771, 830, 3, 2, 2, 2, 5772, 5773, 7, 68, 2, 2, 5773, 5774, 7, 67, 2, 2, 5774, 5775, 7, 69, 2, 2, 5775, 5776, 7, 77, 2, 2, 5776, 5777, 7, 87, 2, 2, 5777, 5778, 7, 82, 2, 2, 5778, 5779, 7, 97, 2, 2, 5779, 5780, 7, 82, 2, 2, 5780, 5781, 7, 84, 2, 2, 5781, 5782, 7, 75, 2, 2, 5782, 5783, 7, 81, 2, 2, 5783, 5784, 7, 84, 2, 2, 5784, 5785, 7, 75, 2, 2, 5785, 5786, 7, 86, 2, 2, 5786, 5787, 7, 91, 2, 2, 5787, 832, 3, 2, 2, 2, 5788, 5789, 7, 68, 2, 2, 5789, 5790, 7, 71, 2, 2, 5790, 5791, 7, 73, 2, 2, 5791, 5792, 7, 75, 2, 2, 5792, 5793, 7, 80, 2, 2, 5793, 5794, 7, 97, 2, 2, 5794, 5795, 7, 70, 2, 2, 5795, 5796, 7, 75, 2, 2, 5796, 5797, 7, 67, 2, 2, 5797, 5798, 7, 78, 2, 2, 5798, 5799, 7, 81, 2, 2, 5799, 5800, 7, 73, 2, 2, 5800, 834, 3, 2, 2, 2, 5801, 5802, 7, 68, 2, 2, 5802, 5803, 7, 75, 2, 2, 5803, 5804, 7, 73, 2, 2, 5804, 5805, 7, 75, 2, 2, 5805, 5806, 7, 80, 2, 2, 5806, 5807, 7, 86, 2, 2, 5807, 836, 3, 2, 2, 2, 5808, 5809, 7, 68, 2, 2, 5809, 5810, 7, 75, 2, 2, 5810, 5811, 7, 80, 2, 2, 5811, 5812, 7, 67, 2, 2, 5812, 5813, 7, 84, 2, 2, 5813, 5814, 7, 91, 2, 2, 5814, 5815, 7, 34, 2, 2, 5815, 5816, 7, 68, 2, 2, 5816, 5817, 7, 67, 2, 2, 5817, 5818, 7, 85, 2, 2, 5818, 5819, 7, 71, 2, 2, 5819, 5820, 7, 56, 2, 2, 5820, 5821, 7, 54, 2, 2, 5821, 838, 3, 2, 2, 2, 5822, 5823, 7, 68, 2, 2, 5823, 5824, 7, 75, 2, 2, 5824, 5825, 7, 80, 2, 2, 5825, 5826, 7, 67, 2, 2, 5826, 5827, 7, 84, 2, 2, 5827, 5828, 7, 91, 2, 2, 5828, 5829, 7, 97, 2, 2, 5829, 5830, 7, 69, 2, 2, 5830, 5831, 7, 74, 2, 2, 5831, 5832, 7, 71, 2, 2, 5832, 5833, 7, 69, 2, 2, 5833, 5834, 7, 77, 2, 2, 5834, 5835, 7, 85, 2, 2, 5835, 5836, 7, 87, 2, 2, 5836, 5837, 7, 79, 2, 2, 5837, 840, 3, 2, 2, 2, 5838, 5839, 7, 68, 2, 2, 5839, 5840, 7, 75, 2, 2, 5840, 5841, 7, 80, 2, 2, 5841, 5842, 7, 70, 2, 2, 5842, 5843, 7, 75, 2, 2, 5843, 5844, 7, 80, 2, 2, 5844, 5845, 7, 73, 2, 2, 5845, 842, 3, 2, 2, 2, 5846, 5847, 7, 68, 2, 2, 5847, 5848, 7, 78, 2, 2, 5848, 5849, 7, 81, 2, 2, 5849, 5850, 7, 68, 2, 2, 5850, 5851, 7, 97, 2, 2, 5851, 5852, 7, 85, 2, 2, 5852, 5853, 7, 86, 2, 2, 5853, 5854, 7, 81, 2, 2, 5854, 5855, 7, 84, 2, 2, 5855, 5856, 7, 67, 2, 2, 5856, 5857, 7, 73, 2, 2, 5857, 5858, 7, 71, 2, 2, 5858, 844, 3, 2, 2, 2, 5859, 5860, 7, 68, 2, 2, 5860, 5861, 7, 84, 2, 2, 5861, 5862, 7, 81, 2, 2, 5862, 5863, 7, 77, 2, 2, 5863, 5864, 7, 71, 2, 2, 5864, 5865, 7, 84, 2, 2, 5865, 846, 3, 2, 2, 2, 5866, 5867, 7, 68, 2, 2, 5867, 5868, 7, 84, 2, 2, 5868, 5869, 7, 81, 2, 2, 5869, 5870, 7, 77, 2, 2, 5870, 5871, 7, 71, 2, 2, 5871, 5872, 7, 84, 2, 2, 5872, 5873, 7, 97, 2, 2, 5873, 5874, 7, 75, 2, 2, 5874, 5875, 7, 80, 2, 2, 5875, 5876, 7, 85, 2, 2, 5876, 5877, 7, 86, 2, 2, 5877, 5878, 7, 67, 2, 2, 5878, 5879, 7, 80, 2, 2, 5879, 5880, 7, 69, 2, 2, 5880, 5881, 7, 71, 2, 2, 5881, 848, 3, 2, 2, 2, 5882, 5883, 7, 68, 2, 2, 5883, 5884, 7, 87, 2, 2, 5884, 5885, 7, 78, 2, 2, 5885, 5886, 7, 77, 2, 2, 5886, 5887, 7, 97, 2, 2, 5887, 5888, 7, 78, 2, 2, 5888, 5889, 7, 81, 2, 2, 5889, 5890, 7, 73, 2, 2, 5890, 5891, 7, 73, 2, 2, 5891, 5892, 7, 71, 2, 2, 5892, 5893, 7, 70, 2, 2, 5893, 850, 3, 2, 2, 2, 5894, 5895, 7, 69, 2, 2, 5895, 5896, 7, 67, 2, 2, 5896, 5897, 7, 78, 2, 2, 5897, 5898, 7, 78, 2, 2, 5898, 5899, 7, 71, 2, 2, 5899, 5900, 7, 84, 2, 2, 5900, 852, 3, 2, 2, 2, 5901, 5902, 7, 69, 2, 2, 5902, 5903, 7, 67, 2, 2, 5903, 5904, 7, 82, 2, 2, 5904, 5905, 7, 97, 2, 2, 5905, 5906, 7, 69, 2, 2, 5906, 5907, 7, 82, 2, 2, 5907, 5908, 7, 87, 2, 2, 5908, 5909, 7, 97, 2, 2, 5909, 5910, 7, 82, 2, 2, 5910, 5911, 7, 71, 2, 2, 5911, 5912, 7, 84, 2, 2, 5912, 5913, 7, 69, 2, 2, 5913, 5914, 7, 71, 2, 2, 5914, 5915, 7, 80, 2, 2, 5915, 5916, 7, 86, 2, 2, 5916, 854, 3, 2, 2, 2, 5917, 5918, 7, 86, 2, 2, 5918, 5919, 7, 84, 2, 2, 5919, 5920, 7, 91, 2, 2, 5920, 5922, 7, 97, 2, 2, 5921, 5917, 3, 2, 2, 2, 5921, 5922, 3, 2, 2, 2, 5922, 5923, 3, 2, 2, 2, 5923, 5924, 7, 69, 2, 2, 5924, 5925, 7, 67, 2, 2, 5925, 5926, 7, 85, 2, 2, 5926, 5927, 7, 86, 2, 2, 5927, 856, 3, 2, 2, 2, 5928, 5929, 7, 69, 2, 2, 5929, 5930, 7, 67, 2, 2, 5930, 5931, 7, 86, 2, 2, 5931, 5932, 7, 67, 2, 2, 5932, 5933, 7, 78, 2, 2, 5933, 5934, 7, 81, 2, 2, 5934, 5935, 7, 73, 2, 2, 5935, 858, 3, 2, 2, 2, 5936, 5937, 7, 69, 2, 2, 5937, 5938, 7, 67, 2, 2, 5938, 5939, 7, 86, 2, 2, 5939, 5940, 7, 69, 2, 2, 5940, 5941, 7, 74, 2, 2, 5941, 860, 3, 2, 2, 2, 5942, 5943, 7, 69, 2, 2, 5943, 5944, 7, 74, 2, 2, 5944, 5945, 7, 67, 2, 2, 5945, 5946, 7, 80, 2, 2, 5946, 5947, 7, 73, 2, 2, 5947, 5948, 7, 71, 2, 2, 5948, 5949, 7, 97, 2, 2, 5949, 5950, 7, 84, 2, 2, 5950, 5951, 7, 71, 2, 2, 5951, 5952, 7, 86, 2, 2, 5952, 5953, 7, 71, 2, 2, 5953, 5954, 7, 80, 2, 2, 5954, 5955, 7, 86, 2, 2, 5955, 5956, 7, 75, 2, 2, 5956, 5957, 7, 81, 2, 2, 5957, 5958, 7, 80, 2, 2, 5958, 862, 3, 2, 2, 2, 5959, 5960, 7, 69, 2, 2, 5960, 5961, 7, 74, 2, 2, 5961, 5962, 7, 67, 2, 2, 5962, 5963, 7, 80, 2, 2, 5963, 5964, 7, 73, 2, 2, 5964, 5965, 7, 71, 2, 2, 5965, 5966, 7, 97, 2, 2, 5966, 5967, 7, 86, 2, 2, 5967, 5968, 7, 84, 2, 2, 5968, 5969, 7, 67, 2, 2, 5969, 5970, 7, 69, 2, 2, 5970, 5971, 7, 77, 2, 2, 5971, 5972, 7, 75, 2, 2, 5972, 5973, 7, 80, 2, 2, 5973, 5974, 7, 73, 2, 2, 5974, 864, 3, 2, 2, 2, 5975, 5976, 7, 69, 2, 2, 5976, 5977, 7, 74, 2, 2, 5977, 5978, 7, 71, 2, 2, 5978, 5979, 7, 69, 2, 2, 5979, 5980, 7, 77, 2, 2, 5980, 5981, 7, 85, 2, 2, 5981, 5982, 7, 87, 2, 2, 5982, 5983, 7, 79, 2, 2, 5983, 866, 3, 2, 2, 2, 5984, 5985, 7, 69, 2, 2, 5985, 5986, 7, 74, 2, 2, 5986, 5987, 7, 71, 2, 2, 5987, 5988, 7, 69, 2, 2, 5988, 5989, 7, 77, 2, 2, 5989, 5990, 7, 85, 2, 2, 5990, 5991, 7, 87, 2, 2, 5991, 5992, 7, 79, 2, 2, 5992, 5993, 7, 97, 2, 2, 5993, 5994, 7, 67, 2, 2, 5994, 5995, 7, 73, 2, 2, 5995, 5996, 7, 73, 2, 2, 5996, 868, 3, 2, 2, 2, 5997, 5998, 7, 69, 2, 2, 5998, 5999, 7, 78, 2, 2, 5999, 6000, 7, 71, 2, 2, 6000, 6001, 7, 67, 2, 2, 6001, 6002, 7, 80, 2, 2, 6002, 6003, 7, 87, 2, 2, 6003, 6004, 7, 82, 2, 2, 6004, 870, 3, 2, 2, 2, 6005, 6006, 7, 69, 2, 2, 6006, 6007, 7, 81, 2, 2, 6007, 6008, 7, 78, 2, 2, 6008, 6009, 7, 78, 2, 2, 6009, 6010, 7, 71, 2, 2, 6010, 6011, 7, 69, 2, 2, 6011, 6012, 7, 86, 2, 2, 6012, 6013, 7, 75, 2, 2, 6013, 6014, 7, 81, 2, 2, 6014, 6015, 7, 80, 2, 2, 6015, 872, 3, 2, 2, 2, 6016, 6017, 7, 69, 2, 2, 6017, 6018, 7, 81, 2, 2, 6018, 6019, 7, 78, 2, 2, 6019, 6020, 7, 87, 2, 2, 6020, 6021, 7, 79, 2, 2, 6021, 6022, 7, 80, 2, 2, 6022, 6023, 7, 97, 2, 2, 6023, 6024, 7, 79, 2, 2, 6024, 6025, 7, 67, 2, 2, 6025, 6026, 7, 85, 2, 2, 6026, 6027, 7, 86, 2, 2, 6027, 6028, 7, 71, 2, 2, 6028, 6029, 7, 84, 2, 2, 6029, 6030, 7, 97, 2, 2, 6030, 6031, 7, 77, 2, 2, 6031, 6032, 7, 71, 2, 2, 6032, 6033, 7, 91, 2, 2, 6033, 874, 3, 2, 2, 2, 6034, 6035, 7, 69, 2, 2, 6035, 6036, 7, 81, 2, 2, 6036, 6037, 7, 79, 2, 2, 6037, 6038, 7, 79, 2, 2, 6038, 6039, 7, 75, 2, 2, 6039, 6040, 7, 86, 2, 2, 6040, 6041, 7, 86, 2, 2, 6041, 6042, 7, 71, 2, 2, 6042, 6043, 7, 70, 2, 2, 6043, 876, 3, 2, 2, 2, 6044, 6045, 7, 69, 2, 2, 6045, 6046, 7, 81, 2, 2, 6046, 6047, 7, 79, 2, 2, 6047, 6048, 7, 82, 2, 2, 6048, 6049, 7, 67, 2, 2, 6049, 6050, 7, 86, 2, 2, 6050, 6051, 7, 75, 2, 2, 6051, 6052, 7, 68, 2, 2, 6052, 6053, 7, 75, 2, 2, 6053, 6054, 7, 78, 2, 2, 6054, 6055, 7, 75, 2, 2, 6055, 6056, 7, 86, 2, 2, 6056, 6057, 7, 91, 2, 2, 6057, 6058, 7, 97, 2, 2, 6058, 6059, 7, 78, 2, 2, 6059, 6060, 7, 71, 2, 2, 6060, 6061, 7, 88, 2, 2, 6061, 6062, 7, 71, 2, 2, 6062, 6063, 7, 78, 2, 2, 6063, 878, 3, 2, 2, 2, 6064, 6065, 7, 69, 2, 2, 6065, 6066, 7, 81, 2, 2, 6066, 6067, 7, 80, 2, 2, 6067, 6068, 7, 69, 2, 2, 6068, 6069, 7, 67, 2, 2, 6069, 6070, 7, 86, 2, 2, 6070, 880, 3, 2, 2, 2, 6071, 6072, 7, 69, 2, 2, 6072, 6073, 7, 81, 2, 2, 6073, 6074, 7, 80, 2, 2, 6074, 6075, 7, 69, 2, 2, 6075, 6076, 7, 67, 2, 2, 6076, 6077, 7, 86, 2, 2, 6077, 6078, 7, 97, 2, 2, 6078, 6079, 7, 80, 2, 2, 6079, 6080, 7, 87, 2, 2, 6080, 6081, 7, 78, 2, 2, 6081, 6082, 7, 78, 2, 2, 6082, 6083, 7, 97, 2, 2, 6083, 6084, 7, 91, 2, 2, 6084, 6085, 7, 75, 2, 2, 6085, 6086, 7, 71, 2, 2, 6086, 6087, 7, 78, 2, 2, 6087, 6088, 7, 70, 2, 2, 6088, 6089, 7, 85, 2, 2, 6089, 6090, 7, 97, 2, 2, 6090, 6091, 7, 80, 2, 2, 6091, 6092, 7, 87, 2, 2, 6092, 6093, 7, 78, 2, 2, 6093, 6094, 7, 78, 2, 2, 6094, 882, 3, 2, 2, 2, 6095, 6096, 7, 69, 2, 2, 6096, 6097, 7, 81, 2, 2, 6097, 6098, 7, 80, 2, 2, 6098, 6099, 7, 86, 2, 2, 6099, 6100, 7, 71, 2, 2, 6100, 6101, 7, 80, 2, 2, 6101, 6102, 7, 86, 2, 2, 6102, 884, 3, 2, 2, 2, 6103, 6104, 7, 69, 2, 2, 6104, 6105, 7, 81, 2, 2, 6105, 6106, 7, 80, 2, 2, 6106, 6107, 7, 86, 2, 2, 6107, 6108, 7, 84, 2, 2, 6108, 6109, 7, 81, 2, 2, 6109, 6110, 7, 78, 2, 2, 6110, 886, 3, 2, 2, 2, 6111, 6112, 7, 69, 2, 2, 6112, 6113, 7, 81, 2, 2, 6113, 6114, 7, 81, 2, 2, 6114, 6115, 7, 77, 2, 2, 6115, 6116, 7, 75, 2, 2, 6116, 6117, 7, 71, 2, 2, 6117, 888, 3, 2, 2, 2, 6118, 6119, 7, 69, 2, 2, 6119, 6120, 7, 81, 2, 2, 6120, 6121, 7, 87, 2, 2, 6121, 6122, 7, 80, 2, 2, 6122, 6123, 7, 86, 2, 2, 6123, 890, 3, 2, 2, 2, 6124, 6125, 7, 69, 2, 2, 6125, 6126, 7, 81, 2, 2, 6126, 6127, 7, 87, 2, 2, 6127, 6128, 7, 80, 2, 2, 6128, 6129, 7, 86, 2, 2, 6129, 6130, 7, 97, 2, 2, 6130, 6131, 7, 68, 2, 2, 6131, 6132, 7, 75, 2, 2, 6132, 6133, 7, 73, 2, 2, 6133, 892, 3, 2, 2, 2, 6134, 6135, 7, 69, 2, 2, 6135, 6136, 7, 81, 2, 2, 6136, 6137, 7, 87, 2, 2, 6137, 6138, 7, 80, 2, 2, 6138, 6139, 7, 86, 2, 2, 6139, 6140, 7, 71, 2, 2, 6140, 6141, 7, 84, 2, 2, 6141, 894, 3, 2, 2, 2, 6142, 6143, 7, 69, 2, 2, 6143, 6144, 7, 82, 2, 2, 6144, 6145, 7, 87, 2, 2, 6145, 896, 3, 2, 2, 2, 6146, 6147, 7, 69, 2, 2, 6147, 6148, 7, 84, 2, 2, 6148, 6149, 7, 71, 2, 2, 6149, 6150, 7, 67, 2, 2, 6150, 6151, 7, 86, 2, 2, 6151, 6152, 7, 71, 2, 2, 6152, 6153, 7, 97, 2, 2, 6153, 6154, 7, 80, 2, 2, 6154, 6155, 7, 71, 2, 2, 6155, 6156, 7, 89, 2, 2, 6156, 898, 3, 2, 2, 2, 6157, 6158, 7, 69, 2, 2, 6158, 6159, 7, 84, 2, 2, 6159, 6160, 7, 71, 2, 2, 6160, 6161, 7, 67, 2, 2, 6161, 6162, 7, 86, 2, 2, 6162, 6163, 7, 75, 2, 2, 6163, 6164, 7, 81, 2, 2, 6164, 6165, 7, 80, 2, 2, 6165, 6166, 7, 97, 2, 2, 6166, 6167, 7, 70, 2, 2, 6167, 6168, 7, 75, 2, 2, 6168, 6169, 7, 85, 2, 2, 6169, 6170, 7, 82, 2, 2, 6170, 6171, 7, 81, 2, 2, 6171, 6172, 7, 85, 2, 2, 6172, 6173, 7, 75, 2, 2, 6173, 6174, 7, 86, 2, 2, 6174, 6175, 7, 75, 2, 2, 6175, 6176, 7, 81, 2, 2, 6176, 6177, 7, 80, 2, 2, 6177, 900, 3, 2, 2, 2, 6178, 6179, 7, 69, 2, 2, 6179, 6180, 7, 84, 2, 2, 6180, 6181, 7, 71, 2, 2, 6181, 6182, 7, 70, 2, 2, 6182, 6183, 7, 71, 2, 2, 6183, 6184, 7, 80, 2, 2, 6184, 6185, 7, 86, 2, 2, 6185, 6186, 7, 75, 2, 2, 6186, 6187, 7, 67, 2, 2, 6187, 6188, 7, 78, 2, 2, 6188, 902, 3, 2, 2, 2, 6189, 6190, 7, 69, 2, 2, 6190, 6191, 7, 84, 2, 2, 6191, 6192, 7, 91, 2, 2, 6192, 6193, 7, 82, 2, 2, 6193, 6194, 7, 86, 2, 2, 6194, 6195, 7, 81, 2, 2, 6195, 6196, 7, 73, 2, 2, 6196, 6197, 7, 84, 2, 2, 6197, 6198, 7, 67, 2, 2, 6198, 6199, 7, 82, 2, 2, 6199, 6200, 7, 74, 2, 2, 6200, 6201, 7, 75, 2, 2, 6201, 6202, 7, 69, 2, 2, 6202, 904, 3, 2, 2, 2, 6203, 6204, 7, 69, 2, 2, 6204, 6205, 7, 87, 2, 2, 6205, 6206, 7, 84, 2, 2, 6206, 6207, 7, 85, 2, 2, 6207, 6208, 7, 81, 2, 2, 6208, 6209, 7, 84, 2, 2, 6209, 6210, 7, 97, 2, 2, 6210, 6211, 7, 69, 2, 2, 6211, 6212, 7, 78, 2, 2, 6212, 6213, 7, 81, 2, 2, 6213, 6214, 7, 85, 2, 2, 6214, 6215, 7, 71, 2, 2, 6215, 6216, 7, 97, 2, 2, 6216, 6217, 7, 81, 2, 2, 6217, 6218, 7, 80, 2, 2, 6218, 6219, 7, 97, 2, 2, 6219, 6220, 7, 69, 2, 2, 6220, 6221, 7, 81, 2, 2, 6221, 6222, 7, 79, 2, 2, 6222, 6223, 7, 79, 2, 2, 6223, 6224, 7, 75, 2, 2, 6224, 6225, 7, 86, 2, 2, 6225, 906, 3, 2, 2, 2, 6226, 6227, 7, 69, 2, 2, 6227, 6228, 7, 87, 2, 2, 6228, 6229, 7, 84, 2, 2, 6229, 6230, 7, 85, 2, 2, 6230, 6231, 7, 81, 2, 2, 6231, 6232, 7, 84, 2, 2, 6232, 6233, 7, 97, 2, 2, 6233, 6234, 7, 70, 2, 2, 6234, 6235, 7, 71, 2, 2, 6235, 6236, 7, 72, 2, 2, 6236, 6237, 7, 67, 2, 2, 6237, 6238, 7, 87, 2, 2, 6238, 6239, 7, 78, 2, 2, 6239, 6240, 7, 86, 2, 2, 6240, 908, 3, 2, 2, 2, 6241, 6242, 7, 70, 2, 2, 6242, 6243, 7, 67, 2, 2, 6243, 6244, 7, 86, 2, 2, 6244, 6245, 7, 67, 2, 2, 6245, 910, 3, 2, 2, 2, 6246, 6247, 7, 70, 2, 2, 6247, 6248, 7, 67, 2, 2, 6248, 6249, 7, 86, 2, 2, 6249, 6250, 7, 71, 2, 2, 6250, 6251, 7, 97, 2, 2, 6251, 6252, 7, 69, 2, 2, 6252, 6253, 7, 81, 2, 2, 6253, 6254, 7, 84, 2, 2, 6254, 6255, 7, 84, 2, 2, 6255, 6256, 7, 71, 2, 2, 6256, 6257, 7, 78, 2, 2, 6257, 6258, 7, 67, 2, 2, 6258, 6259, 7, 86, 2, 2, 6259, 6260, 7, 75, 2, 2, 6260, 6261, 7, 81, 2, 2, 6261, 6262, 7, 80, 2, 2, 6262, 6263, 7, 97, 2, 2, 6263, 6264, 7, 81, 2, 2, 6264, 6265, 7, 82, 2, 2, 6265, 6266, 7, 86, 2, 2, 6266, 6267, 7, 75, 2, 2, 6267, 6268, 7, 79, 2, 2, 6268, 6269, 7, 75, 2, 2, 6269, 6270, 7, 92, 2, 2, 6270, 6271, 7, 67, 2, 2, 6271, 6272, 7, 86, 2, 2, 6272, 6273, 7, 75, 2, 2, 6273, 6274, 7, 81, 2, 2, 6274, 6275, 7, 80, 2, 2, 6275, 912, 3, 2, 2, 2, 6276, 6277, 7, 70, 2, 2, 6277, 6278, 7, 67, 2, 2, 6278, 6279, 7, 86, 2, 2, 6279, 6280, 7, 71, 2, 2, 6280, 6281, 7, 67, 2, 2, 6281, 6282, 7, 70, 2, 2, 6282, 6283, 7, 70, 2, 2, 6283, 914, 3, 2, 2, 2, 6284, 6285, 7, 70, 2, 2, 6285, 6286, 7, 67, 2, 2, 6286, 6287, 7, 86, 2, 2, 6287, 6288, 7, 71, 2, 2, 6288, 6289, 7, 70, 2, 2, 6289, 6290, 7, 75, 2, 2, 6290, 6291, 7, 72, 2, 2, 6291, 6292, 7, 72, 2, 2, 6292, 916, 3, 2, 2, 2, 6293, 6294, 7, 70, 2, 2, 6294, 6295, 7, 67, 2, 2, 6295, 6296, 7, 86, 2, 2, 6296, 6297, 7, 71, 2, 2, 6297, 6298, 7, 80, 2, 2, 6298, 6299, 7, 67, 2, 2, 6299, 6300, 7, 79, 2, 2, 6300, 6301, 7, 71, 2, 2, 6301, 918, 3, 2, 2, 2, 6302, 6303, 7, 70, 2, 2, 6303, 6304, 7, 67, 2, 2, 6304, 6305, 7, 86, 2, 2, 6305, 6306, 7, 71, 2, 2, 6306, 6307, 7, 82, 2, 2, 6307, 6308, 7, 67, 2, 2, 6308, 6309, 7, 84, 2, 2, 6309, 6310, 7, 86, 2, 2, 6310, 920, 3, 2, 2, 2, 6311, 6312, 7, 70, 2, 2, 6312, 6313, 7, 67, 2, 2, 6313, 6314, 7, 91, 2, 2, 6314, 6315, 7, 85, 2, 2, 6315, 922, 3, 2, 2, 2, 6316, 6317, 7, 70, 2, 2, 6317, 6318, 7, 68, 2, 2, 6318, 6319, 7, 97, 2, 2, 6319, 6320, 7, 69, 2, 2, 6320, 6321, 7, 74, 2, 2, 6321, 6322, 7, 67, 2, 2, 6322, 6323, 7, 75, 2, 2, 6323, 6324, 7, 80, 2, 2, 6324, 6325, 7, 75, 2, 2, 6325, 6326, 7, 80, 2, 2, 6326, 6327, 7, 73, 2, 2, 6327, 924, 3, 2, 2, 2, 6328, 6329, 7, 70, 2, 2, 6329, 6330, 7, 68, 2, 2, 6330, 6331, 7, 97, 2, 2, 6331, 6332, 7, 72, 2, 2, 6332, 6333, 7, 67, 2, 2, 6333, 6334, 7, 75, 2, 2, 6334, 6335, 7, 78, 2, 2, 6335, 6336, 7, 81, 2, 2, 6336, 6337, 7, 88, 2, 2, 6337, 6338, 7, 71, 2, 2, 6338, 6339, 7, 84, 2, 2, 6339, 926, 3, 2, 2, 2, 6340, 6341, 7, 70, 2, 2, 6341, 6342, 7, 71, 2, 2, 6342, 6343, 7, 69, 2, 2, 6343, 6344, 7, 84, 2, 2, 6344, 6345, 7, 91, 2, 2, 6345, 6346, 7, 82, 2, 2, 6346, 6347, 7, 86, 2, 2, 6347, 6348, 7, 75, 2, 2, 6348, 6349, 7, 81, 2, 2, 6349, 6350, 7, 80, 2, 2, 6350, 928, 3, 2, 2, 2, 6351, 6352, 9, 5, 2, 2, 6352, 6353, 7, 70, 2, 2, 6353, 6354, 7, 71, 2, 2, 6354, 6355, 7, 72, 2, 2, 6355, 6356, 7, 67, 2, 2, 6356, 6357, 7, 87, 2, 2, 6357, 6358, 7, 78, 2, 2, 6358, 6359, 7, 86, 2, 2, 6359, 6360, 3, 2, 2, 2, 6360, 6361, 9, 5, 2, 2, 6361, 930, 3, 2, 2, 2, 6362, 6363, 7, 70, 2, 2, 6363, 6364, 7, 71, 2, 2, 6364, 6365, 7, 72, 2, 2, 6365, 6366, 7, 67, 2, 2, 6366, 6367, 7, 87, 2, 2, 6367, 6368, 7, 78, 2, 2, 6368, 6369, 7, 86, 2, 2, 6369, 6370, 7, 97, 2, 2, 6370, 6371, 7, 72, 2, 2, 6371, 6372, 7, 87, 2, 2, 6372, 6373, 7, 78, 2, 2, 6373, 6374, 7, 78, 2, 2, 6374, 6375, 7, 86, 2, 2, 6375, 6376, 7, 71, 2, 2, 6376, 6377, 7, 90, 2, 2, 6377, 6378, 7, 86, 2, 2, 6378, 6379, 7, 97, 2, 2, 6379, 6380, 7, 78, 2, 2, 6380, 6381, 7, 67, 2, 2, 6381, 6382, 7, 80, 2, 2, 6382, 6383, 7, 73, 2, 2, 6383, 6384, 7, 87, 2, 2, 6384, 6385, 7, 67, 2, 2, 6385, 6386, 7, 73, 2, 2, 6386, 6387, 7, 71, 2, 2, 6387, 932, 3, 2, 2, 2, 6388, 6389, 7, 70, 2, 2, 6389, 6390, 7, 71, 2, 2, 6390, 6391, 7, 72, 2, 2, 6391, 6392, 7, 67, 2, 2, 6392, 6393, 7, 87, 2, 2, 6393, 6394, 7, 78, 2, 2, 6394, 6395, 7, 86, 2, 2, 6395, 6396, 7, 97, 2, 2, 6396, 6397, 7, 78, 2, 2, 6397, 6398, 7, 67, 2, 2, 6398, 6399, 7, 80, 2, 2, 6399, 6400, 7, 73, 2, 2, 6400, 6401, 7, 87, 2, 2, 6401, 6402, 7, 67, 2, 2, 6402, 6403, 7, 73, 2, 2, 6403, 6404, 7, 71, 2, 2, 6404, 934, 3, 2, 2, 2, 6405, 6406, 7, 70, 2, 2, 6406, 6407, 7, 71, 2, 2, 6407, 6408, 7, 78, 2, 2, 6408, 6409, 7, 67, 2, 2, 6409, 6410, 7, 91, 2, 2, 6410, 936, 3, 2, 2, 2, 6411, 6412, 7, 70, 2, 2, 6412, 6413, 7, 71, 2, 2, 6413, 6414, 7, 78, 2, 2, 6414, 6415, 7, 67, 2, 2, 6415, 6416, 7, 91, 2, 2, 6416, 6417, 7, 71, 2, 2, 6417, 6418, 7, 70, 2, 2, 6418, 6419, 7, 97, 2, 2, 6419, 6420, 7, 70, 2, 2, 6420, 6421, 7, 87, 2, 2, 6421, 6422, 7, 84, 2, 2, 6422, 6423, 7, 67, 2, 2, 6423, 6424, 7, 68, 2, 2, 6424, 6425, 7, 75, 2, 2, 6425, 6426, 7, 78, 2, 2, 6426, 6427, 7, 75, 2, 2, 6427, 6428, 7, 86, 2, 2, 6428, 6429, 7, 91, 2, 2, 6429, 938, 3, 2, 2, 2, 6430, 6431, 7, 70, 2, 2, 6431, 6432, 7, 71, 2, 2, 6432, 6433, 7, 78, 2, 2, 6433, 6434, 7, 71, 2, 2, 6434, 6435, 7, 86, 2, 2, 6435, 6436, 7, 71, 2, 2, 6436, 6437, 7, 70, 2, 2, 6437, 940, 3, 2, 2, 2, 6438, 6439, 7, 70, 2, 2, 6439, 6440, 7, 71, 2, 2, 6440, 6441, 7, 80, 2, 2, 6441, 6442, 7, 85, 2, 2, 6442, 6443, 7, 71, 2, 2, 6443, 6444, 7, 97, 2, 2, 6444, 6445, 7, 84, 2, 2, 6445, 6446, 7, 67, 2, 2, 6446, 6447, 7, 80, 2, 2, 6447, 6448, 7, 77, 2, 2, 6448, 942, 3, 2, 2, 2, 6449, 6450, 7, 70, 2, 2, 6450, 6451, 7, 71, 2, 2, 6451, 6452, 7, 82, 2, 2, 6452, 6453, 7, 71, 2, 2, 6453, 6454, 7, 80, 2, 2, 6454, 6455, 7, 70, 2, 2, 6455, 6456, 7, 71, 2, 2, 6456, 6457, 7, 80, 2, 2, 6457, 6458, 7, 86, 2, 2, 6458, 6459, 7, 85, 2, 2, 6459, 944, 3, 2, 2, 2, 6460, 6461, 7, 70, 2, 2, 6461, 6462, 7, 71, 2, 2, 6462, 6463, 7, 85, 2, 2, 6463, 946, 3, 2, 2, 2, 6464, 6465, 7, 70, 2, 2, 6465, 6466, 7, 71, 2, 2, 6466, 6467, 7, 85, 2, 2, 6467, 6468, 7, 69, 2, 2, 6468, 6469, 7, 84, 2, 2, 6469, 6470, 7, 75, 2, 2, 6470, 6471, 7, 82, 2, 2, 6471, 6472, 7, 86, 2, 2, 6472, 6473, 7, 75, 2, 2, 6473, 6474, 7, 81, 2, 2, 6474, 6475, 7, 80, 2, 2, 6475, 948, 3, 2, 2, 2, 6476, 6477, 7, 70, 2, 2, 6477, 6478, 7, 71, 2, 2, 6478, 6479, 7, 85, 2, 2, 6479, 6480, 7, 90, 2, 2, 6480, 950, 3, 2, 2, 2, 6481, 6482, 7, 70, 2, 2, 6482, 6483, 7, 74, 2, 2, 6483, 6484, 7, 69, 2, 2, 6484, 6485, 7, 82, 2, 2, 6485, 952, 3, 2, 2, 2, 6486, 6487, 7, 70, 2, 2, 6487, 6488, 7, 75, 2, 2, 6488, 6489, 7, 67, 2, 2, 6489, 6490, 7, 78, 2, 2, 6490, 6491, 7, 81, 2, 2, 6491, 6492, 7, 73, 2, 2, 6492, 954, 3, 2, 2, 2, 6493, 6494, 7, 70, 2, 2, 6494, 6495, 7, 75, 2, 2, 6495, 6496, 7, 84, 2, 2, 6496, 6497, 7, 71, 2, 2, 6497, 6498, 7, 69, 2, 2, 6498, 6499, 7, 86, 2, 2, 6499, 6500, 7, 81, 2, 2, 6500, 6501, 7, 84, 2, 2, 6501, 6502, 7, 91, 2, 2, 6502, 6503, 7, 97, 2, 2, 6503, 6504, 7, 80, 2, 2, 6504, 6505, 7, 67, 2, 2, 6505, 6506, 7, 79, 2, 2, 6506, 6507, 7, 71, 2, 2, 6507, 956, 3, 2, 2, 2, 6508, 6509, 7, 70, 2, 2, 6509, 6510, 7, 75, 2, 2, 6510, 6511, 7, 85, 2, 2, 6511, 6512, 7, 67, 2, 2, 6512, 6513, 7, 68, 2, 2, 6513, 6514, 7, 78, 2, 2, 6514, 6515, 7, 71, 2, 2, 6515, 958, 3, 2, 2, 2, 6516, 6517, 7, 70, 2, 2, 6517, 6518, 7, 75, 2, 2, 6518, 6519, 7, 85, 2, 2, 6519, 6520, 7, 67, 2, 2, 6520, 6521, 7, 68, 2, 2, 6521, 6522, 7, 78, 2, 2, 6522, 6523, 7, 71, 2, 2, 6523, 6524, 7, 97, 2, 2, 6524, 6525, 7, 68, 2, 2, 6525, 6526, 7, 84, 2, 2, 6526, 6527, 7, 81, 2, 2, 6527, 6528, 7, 77, 2, 2, 6528, 6529, 7, 71, 2, 2, 6529, 6530, 7, 84, 2, 2, 6530, 960, 3, 2, 2, 2, 6531, 6532, 7, 70, 2, 2, 6532, 6533, 7, 75, 2, 2, 6533, 6534, 7, 85, 2, 2, 6534, 6535, 7, 67, 2, 2, 6535, 6536, 7, 68, 2, 2, 6536, 6537, 7, 78, 2, 2, 6537, 6538, 7, 71, 2, 2, 6538, 6539, 7, 70, 2, 2, 6539, 962, 3, 2, 2, 2, 6540, 6541, 9, 6, 2, 2, 6541, 6542, 9, 4, 2, 2, 6542, 964, 3, 2, 2, 2, 6543, 6544, 7, 70, 2, 2, 6544, 6545, 7, 81, 2, 2, 6545, 6546, 7, 69, 2, 2, 6546, 6547, 7, 87, 2, 2, 6547, 6548, 7, 79, 2, 2, 6548, 6549, 7, 71, 2, 2, 6549, 6550, 7, 80, 2, 2, 6550, 6551, 7, 86, 2, 2, 6551, 966, 3, 2, 2, 2, 6552, 6553, 7, 70, 2, 2, 6553, 6554, 7, 91, 2, 2, 6554, 6555, 7, 80, 2, 2, 6555, 6556, 7, 67, 2, 2, 6556, 6557, 7, 79, 2, 2, 6557, 6558, 7, 75, 2, 2, 6558, 6559, 7, 69, 2, 2, 6559, 968, 3, 2, 2, 2, 6560, 6561, 7, 71, 2, 2, 6561, 6562, 7, 78, 2, 2, 6562, 6563, 7, 71, 2, 2, 6563, 6564, 7, 79, 2, 2, 6564, 6565, 7, 71, 2, 2, 6565, 6566, 7, 80, 2, 2, 6566, 6567, 7, 86, 2, 2, 6567, 6568, 7, 85, 2, 2, 6568, 970, 3, 2, 2, 2, 6569, 6570, 7, 71, 2, 2, 6570, 6571, 7, 79, 2, 2, 6571, 6572, 7, 71, 2, 2, 6572, 6573, 7, 84, 2, 2, 6573, 6574, 7, 73, 2, 2, 6574, 6575, 7, 71, 2, 2, 6575, 6576, 7, 80, 2, 2, 6576, 6577, 7, 69, 2, 2, 6577, 6578, 7, 91, 2, 2, 6578, 972, 3, 2, 2, 2, 6579, 6580, 7, 71, 2, 2, 6580, 6581, 7, 79, 2, 2, 6581, 6582, 7, 82, 2, 2, 6582, 6583, 7, 86, 2, 2, 6583, 6584, 7, 91, 2, 2, 6584, 974, 3, 2, 2, 2, 6585, 6586, 7, 71, 2, 2, 6586, 6587, 7, 80, 2, 2, 6587, 6588, 7, 67, 2, 2, 6588, 6589, 7, 68, 2, 2, 6589, 6590, 7, 78, 2, 2, 6590, 6591, 7, 71, 2, 2, 6591, 976, 3, 2, 2, 2, 6592, 6593, 7, 71, 2, 2, 6593, 6594, 7, 80, 2, 2, 6594, 6595, 7, 67, 2, 2, 6595, 6596, 7, 68, 2, 2, 6596, 6597, 7, 78, 2, 2, 6597, 6598, 7, 71, 2, 2, 6598, 6599, 7, 97, 2, 2, 6599, 6600, 7, 68, 2, 2, 6600, 6601, 7, 84, 2, 2, 6601, 6602, 7, 81, 2, 2, 6602, 6603, 7, 77, 2, 2, 6603, 6604, 7, 71, 2, 2, 6604, 6605, 7, 84, 2, 2, 6605, 978, 3, 2, 2, 2, 6606, 6607, 7, 71, 2, 2, 6607, 6608, 7, 80, 2, 2, 6608, 6609, 7, 69, 2, 2, 6609, 6610, 7, 84, 2, 2, 6610, 6611, 7, 91, 2, 2, 6611, 6612, 7, 82, 2, 2, 6612, 6613, 7, 86, 2, 2, 6613, 6614, 7, 71, 2, 2, 6614, 6615, 7, 70, 2, 2, 6615, 6616, 7, 97, 2, 2, 6616, 6617, 7, 88, 2, 2, 6617, 6618, 7, 67, 2, 2, 6618, 6619, 7, 78, 2, 2, 6619, 6620, 7, 87, 2, 2, 6620, 6621, 7, 71, 2, 2, 6621, 980, 3, 2, 2, 2, 6622, 6623, 7, 71, 2, 2, 6623, 6624, 7, 80, 2, 2, 6624, 6625, 7, 69, 2, 2, 6625, 6626, 7, 84, 2, 2, 6626, 6627, 7, 91, 2, 2, 6627, 6628, 7, 82, 2, 2, 6628, 6629, 7, 86, 2, 2, 6629, 6630, 7, 75, 2, 2, 6630, 6631, 7, 81, 2, 2, 6631, 6632, 7, 80, 2, 2, 6632, 982, 3, 2, 2, 2, 6633, 6634, 7, 71, 2, 2, 6634, 6635, 7, 80, 2, 2, 6635, 6636, 7, 70, 2, 2, 6636, 6637, 7, 82, 2, 2, 6637, 6638, 7, 81, 2, 2, 6638, 6639, 7, 75, 2, 2, 6639, 6640, 7, 80, 2, 2, 6640, 6641, 7, 86, 2, 2, 6641, 6642, 7, 97, 2, 2, 6642, 6643, 7, 87, 2, 2, 6643, 6644, 7, 84, 2, 2, 6644, 6645, 7, 78, 2, 2, 6645, 984, 3, 2, 2, 2, 6646, 6647, 7, 71, 2, 2, 6647, 6648, 7, 84, 2, 2, 6648, 6649, 7, 84, 2, 2, 6649, 6650, 7, 81, 2, 2, 6650, 6651, 7, 84, 2, 2, 6651, 6652, 7, 97, 2, 2, 6652, 6653, 7, 68, 2, 2, 6653, 6654, 7, 84, 2, 2, 6654, 6655, 7, 81, 2, 2, 6655, 6656, 7, 77, 2, 2, 6656, 6657, 7, 71, 2, 2, 6657, 6658, 7, 84, 2, 2, 6658, 6659, 7, 97, 2, 2, 6659, 6660, 7, 69, 2, 2, 6660, 6661, 7, 81, 2, 2, 6661, 6662, 7, 80, 2, 2, 6662, 6663, 7, 88, 2, 2, 6663, 6664, 7, 71, 2, 2, 6664, 6665, 7, 84, 2, 2, 6665, 6666, 7, 85, 2, 2, 6666, 6667, 7, 67, 2, 2, 6667, 6668, 7, 86, 2, 2, 6668, 6669, 7, 75, 2, 2, 6669, 6670, 7, 81, 2, 2, 6670, 6671, 7, 80, 2, 2, 6671, 6672, 7, 85, 2, 2, 6672, 986, 3, 2, 2, 2, 6673, 6674, 7, 71, 2, 2, 6674, 6675, 7, 90, 2, 2, 6675, 6676, 7, 69, 2, 2, 6676, 6677, 7, 78, 2, 2, 6677, 6678, 7, 87, 2, 2, 6678, 6679, 7, 85, 2, 2, 6679, 6680, 7, 75, 2, 2, 6680, 6681, 7, 88, 2, 2, 6681, 6682, 7, 71, 2, 2, 6682, 988, 3, 2, 2, 2, 6683, 6684, 7, 71, 2, 2, 6684, 6685, 7, 90, 2, 2, 6685, 6686, 7, 71, 2, 2, 6686, 6687, 7, 69, 2, 2, 6687, 6688, 7, 87, 2, 2, 6688, 6689, 7, 86, 2, 2, 6689, 6690, 7, 67, 2, 2, 6690, 6691, 7, 68, 2, 2, 6691, 6692, 7, 78, 2, 2, 6692, 6693, 7, 71, 2, 2, 6693, 990, 3, 2, 2, 2, 6694, 6695, 7, 71, 2, 2, 6695, 6696, 7, 90, 2, 2, 6696, 6697, 7, 75, 2, 2, 6697, 6698, 7, 85, 2, 2, 6698, 6699, 7, 86, 2, 2, 6699, 992, 3, 2, 2, 2, 6700, 6701, 7, 71, 2, 2, 6701, 6702, 7, 90, 2, 2, 6702, 6703, 7, 82, 2, 2, 6703, 6704, 7, 67, 2, 2, 6704, 6705, 7, 80, 2, 2, 6705, 6706, 7, 70, 2, 2, 6706, 994, 3, 2, 2, 2, 6707, 6708, 7, 71, 2, 2, 6708, 6709, 7, 90, 2, 2, 6709, 6710, 7, 82, 2, 2, 6710, 6711, 7, 75, 2, 2, 6711, 6712, 7, 84, 2, 2, 6712, 6713, 7, 91, 2, 2, 6713, 6714, 7, 97, 2, 2, 6714, 6715, 7, 70, 2, 2, 6715, 6716, 7, 67, 2, 2, 6716, 6717, 7, 86, 2, 2, 6717, 6718, 7, 71, 2, 2, 6718, 996, 3, 2, 2, 2, 6719, 6720, 7, 71, 2, 2, 6720, 6721, 7, 90, 2, 2, 6721, 6722, 7, 82, 2, 2, 6722, 6723, 7, 78, 2, 2, 6723, 6724, 7, 75, 2, 2, 6724, 6725, 7, 69, 2, 2, 6725, 6726, 7, 75, 2, 2, 6726, 6727, 7, 86, 2, 2, 6727, 998, 3, 2, 2, 2, 6728, 6729, 7, 72, 2, 2, 6729, 6730, 7, 67, 2, 2, 6730, 6731, 7, 75, 2, 2, 6731, 6732, 7, 78, 2, 2, 6732, 6733, 7, 97, 2, 2, 6733, 6734, 7, 81, 2, 2, 6734, 6735, 7, 82, 2, 2, 6735, 6736, 7, 71, 2, 2, 6736, 6737, 7, 84, 2, 2, 6737, 6738, 7, 67, 2, 2, 6738, 6739, 7, 86, 2, 2, 6739, 6740, 7, 75, 2, 2, 6740, 6741, 7, 81, 2, 2, 6741, 6742, 7, 80, 2, 2, 6742, 1000, 3, 2, 2, 2, 6743, 6744, 7, 72, 2, 2, 6744, 6745, 7, 67, 2, 2, 6745, 6746, 7, 75, 2, 2, 6746, 6747, 7, 78, 2, 2, 6747, 6748, 7, 81, 2, 2, 6748, 6749, 7, 88, 2, 2, 6749, 6750, 7, 71, 2, 2, 6750, 6751, 7, 84, 2, 2, 6751, 6752, 7, 97, 2, 2, 6752, 6753, 7, 79, 2, 2, 6753, 6754, 7, 81, 2, 2, 6754, 6755, 7, 70, 2, 2, 6755, 6756, 7, 71, 2, 2, 6756, 1002, 3, 2, 2, 2, 6757, 6758, 7, 72, 2, 2, 6758, 6759, 7, 67, 2, 2, 6759, 6760, 7, 75, 2, 2, 6760, 6761, 7, 78, 2, 2, 6761, 6762, 7, 87, 2, 2, 6762, 6763, 7, 84, 2, 2, 6763, 6764, 7, 71, 2, 2, 6764, 1004, 3, 2, 2, 2, 6765, 6766, 7, 72, 2, 2, 6766, 6767, 7, 67, 2, 2, 6767, 6768, 7, 75, 2, 2, 6768, 6769, 7, 78, 2, 2, 6769, 6770, 7, 87, 2, 2, 6770, 6771, 7, 84, 2, 2, 6771, 6772, 7, 71, 2, 2, 6772, 6773, 7, 97, 2, 2, 6773, 6774, 7, 69, 2, 2, 6774, 6775, 7, 81, 2, 2, 6775, 6776, 7, 80, 2, 2, 6776, 6777, 7, 70, 2, 2, 6777, 6778, 7, 75, 2, 2, 6778, 6779, 7, 86, 2, 2, 6779, 6780, 7, 75, 2, 2, 6780, 6781, 7, 81, 2, 2, 6781, 6782, 7, 80, 2, 2, 6782, 6783, 7, 97, 2, 2, 6783, 6784, 7, 78, 2, 2, 6784, 6785, 7, 71, 2, 2, 6785, 6786, 7, 88, 2, 2, 6786, 6787, 7, 71, 2, 2, 6787, 6788, 7, 78, 2, 2, 6788, 1006, 3, 2, 2, 2, 6789, 6790, 7, 72, 2, 2, 6790, 6791, 7, 67, 2, 2, 6791, 6792, 7, 85, 2, 2, 6792, 6793, 7, 86, 2, 2, 6793, 1008, 3, 2, 2, 2, 6794, 6795, 7, 72, 2, 2, 6795, 6796, 7, 67, 2, 2, 6796, 6797, 7, 85, 2, 2, 6797, 6798, 7, 86, 2, 2, 6798, 6799, 7, 97, 2, 2, 6799, 6800, 7, 72, 2, 2, 6800, 6801, 7, 81, 2, 2, 6801, 6802, 7, 84, 2, 2, 6802, 6803, 7, 89, 2, 2, 6803, 6804, 7, 67, 2, 2, 6804, 6805, 7, 84, 2, 2, 6805, 6806, 7, 70, 2, 2, 6806, 1010, 3, 2, 2, 2, 6807, 6808, 7, 72, 2, 2, 6808, 6809, 7, 75, 2, 2, 6809, 6810, 7, 78, 2, 2, 6810, 6811, 7, 71, 2, 2, 6811, 6812, 7, 73, 2, 2, 6812, 6813, 7, 84, 2, 2, 6813, 6814, 7, 81, 2, 2, 6814, 6815, 7, 87, 2, 2, 6815, 6816, 7, 82, 2, 2, 6816, 1012, 3, 2, 2, 2, 6817, 6818, 7, 72, 2, 2, 6818, 6819, 7, 75, 2, 2, 6819, 6820, 7, 78, 2, 2, 6820, 6821, 7, 71, 2, 2, 6821, 6822, 7, 73, 2, 2, 6822, 6823, 7, 84, 2, 2, 6823, 6824, 7, 81, 2, 2, 6824, 6825, 7, 89, 2, 2, 6825, 6826, 7, 86, 2, 2, 6826, 6827, 7, 74, 2, 2, 6827, 1014, 3, 2, 2, 2, 6828, 6829, 7, 72, 2, 2, 6829, 6830, 7, 75, 2, 2, 6830, 6831, 7, 78, 2, 2, 6831, 6832, 7, 71, 2, 2, 6832, 6833, 7, 82, 2, 2, 6833, 6834, 7, 67, 2, 2, 6834, 6835, 7, 86, 2, 2, 6835, 6836, 7, 74, 2, 2, 6836, 1016, 3, 2, 2, 2, 6837, 6838, 7, 72, 2, 2, 6838, 6839, 7, 75, 2, 2, 6839, 6840, 7, 78, 2, 2, 6840, 6841, 7, 71, 2, 2, 6841, 6842, 7, 85, 2, 2, 6842, 6843, 7, 86, 2, 2, 6843, 6844, 7, 84, 2, 2, 6844, 6845, 7, 71, 2, 2, 6845, 6846, 7, 67, 2, 2, 6846, 6847, 7, 79, 2, 2, 6847, 1018, 3, 2, 2, 2, 6848, 6849, 7, 72, 2, 2, 6849, 6850, 7, 75, 2, 2, 6850, 6851, 7, 78, 2, 2, 6851, 6852, 7, 86, 2, 2, 6852, 6853, 7, 71, 2, 2, 6853, 6854, 7, 84, 2, 2, 6854, 1020, 3, 2, 2, 2, 6855, 6856, 7, 72, 2, 2, 6856, 6857, 7, 75, 2, 2, 6857, 6858, 7, 84, 2, 2, 6858, 6859, 7, 85, 2, 2, 6859, 6860, 7, 86, 2, 2, 6860, 1022, 3, 2, 2, 2, 6861, 6862, 7, 72, 2, 2, 6862, 6863, 7, 75, 2, 2, 6863, 6864, 7, 84, 2, 2, 6864, 6865, 7, 85, 2, 2, 6865, 6866, 7, 86, 2, 2, 6866, 6867, 7, 97, 2, 2, 6867, 6868, 7, 88, 2, 2, 6868, 6869, 7, 67, 2, 2, 6869, 6870, 7, 78, 2, 2, 6870, 6871, 7, 87, 2, 2, 6871, 6872, 7, 71, 2, 2, 6872, 1024, 3, 2, 2, 2, 6873, 6874, 7, 72, 2, 2, 6874, 6875, 7, 81, 2, 2, 6875, 6876, 7, 78, 2, 2, 6876, 6877, 7, 78, 2, 2, 6877, 6878, 7, 81, 2, 2, 6878, 6879, 7, 89, 2, 2, 6879, 6880, 7, 75, 2, 2, 6880, 6881, 7, 80, 2, 2, 6881, 6882, 7, 73, 2, 2, 6882, 1026, 3, 2, 2, 2, 6883, 6884, 7, 72, 2, 2, 6884, 6885, 7, 81, 2, 2, 6885, 6886, 7, 84, 2, 2, 6886, 6887, 7, 69, 2, 2, 6887, 6888, 7, 71, 2, 2, 6888, 1028, 3, 2, 2, 2, 6889, 6890, 7, 72, 2, 2, 6890, 6891, 7, 81, 2, 2, 6891, 6892, 7, 84, 2, 2, 6892, 6893, 7, 69, 2, 2, 6893, 6894, 7, 71, 2, 2, 6894, 6895, 7, 97, 2, 2, 6895, 6896, 7, 72, 2, 2, 6896, 6897, 7, 67, 2, 2, 6897, 6898, 7, 75, 2, 2, 6898, 6899, 7, 78, 2, 2, 6899, 6900, 7, 81, 2, 2, 6900, 6901, 7, 88, 2, 2, 6901, 6902, 7, 71, 2, 2, 6902, 6903, 7, 84, 2, 2, 6903, 6904, 7, 97, 2, 2, 6904, 6905, 7, 67, 2, 2, 6905, 6906, 7, 78, 2, 2, 6906, 6907, 7, 78, 2, 2, 6907, 6908, 7, 81, 2, 2, 6908, 6909, 7, 89, 2, 2, 6909, 6910, 7, 97, 2, 2, 6910, 6911, 7, 70, 2, 2, 6911, 6912, 7, 67, 2, 2, 6912, 6913, 7, 86, 2, 2, 6913, 6914, 7, 67, 2, 2, 6914, 6915, 7, 97, 2, 2, 6915, 6916, 7, 78, 2, 2, 6916, 6917, 7, 81, 2, 2, 6917, 6918, 7, 85, 2, 2, 6918, 6919, 7, 85, 2, 2, 6919, 1030, 3, 2, 2, 2, 6920, 6921, 7, 72, 2, 2, 6921, 6922, 7, 81, 2, 2, 6922, 6923, 7, 84, 2, 2, 6923, 6924, 7, 69, 2, 2, 6924, 6925, 7, 71, 2, 2, 6925, 6926, 7, 70, 2, 2, 6926, 1032, 3, 2, 2, 2, 6927, 6928, 7, 72, 2, 2, 6928, 6929, 7, 81, 2, 2, 6929, 6930, 7, 84, 2, 2, 6930, 6931, 7, 79, 2, 2, 6931, 6932, 7, 67, 2, 2, 6932, 6933, 7, 86, 2, 2, 6933, 1034, 3, 2, 2, 2, 6934, 6935, 7, 72, 2, 2, 6935, 6936, 7, 81, 2, 2, 6936, 6937, 7, 84, 2, 2, 6937, 6938, 7, 89, 2, 2, 6938, 6939, 7, 67, 2, 2, 6939, 6940, 7, 84, 2, 2, 6940, 6941, 7, 70, 2, 2, 6941, 6942, 7, 97, 2, 2, 6942, 6943, 7, 81, 2, 2, 6943, 6944, 7, 80, 2, 2, 6944, 6945, 7, 78, 2, 2, 6945, 6946, 7, 91, 2, 2, 6946, 1036, 3, 2, 2, 2, 6947, 6948, 7, 72, 2, 2, 6948, 6949, 7, 87, 2, 2, 6949, 6950, 7, 78, 2, 2, 6950, 6951, 7, 78, 2, 2, 6951, 6952, 7, 85, 2, 2, 6952, 6953, 7, 69, 2, 2, 6953, 6954, 7, 67, 2, 2, 6954, 6955, 7, 80, 2, 2, 6955, 1038, 3, 2, 2, 2, 6956, 6957, 7, 72, 2, 2, 6957, 6958, 7, 87, 2, 2, 6958, 6959, 7, 78, 2, 2, 6959, 6960, 7, 78, 2, 2, 6960, 6961, 7, 86, 2, 2, 6961, 6962, 7, 71, 2, 2, 6962, 6963, 7, 90, 2, 2, 6963, 6964, 7, 86, 2, 2, 6964, 1040, 3, 2, 2, 2, 6965, 6966, 7, 73, 2, 2, 6966, 6967, 7, 68, 2, 2, 6967, 1042, 3, 2, 2, 2, 6968, 6969, 7, 73, 2, 2, 6969, 6970, 7, 71, 2, 2, 6970, 6971, 7, 86, 2, 2, 6971, 6972, 7, 70, 2, 2, 6972, 6973, 7, 67, 2, 2, 6973, 6974, 7, 86, 2, 2, 6974, 6975, 7, 71, 2, 2, 6975, 1044, 3, 2, 2, 2, 6976, 6977, 7, 73, 2, 2, 6977, 6978, 7, 71, 2, 2, 6978, 6979, 7, 86, 2, 2, 6979, 6980, 7, 87, 2, 2, 6980, 6981, 7, 86, 2, 2, 6981, 6982, 7, 69, 2, 2, 6982, 6983, 7, 70, 2, 2, 6983, 6984, 7, 67, 2, 2, 6984, 6985, 7, 86, 2, 2, 6985, 6986, 7, 71, 2, 2, 6986, 1046, 3, 2, 2, 2, 6987, 6988, 7, 73, 2, 2, 6988, 6989, 7, 78, 2, 2, 6989, 6990, 7, 81, 2, 2, 6990, 6991, 7, 68, 2, 2, 6991, 6992, 7, 67, 2, 2, 6992, 6993, 7, 78, 2, 2, 6993, 1048, 3, 2, 2, 2, 6994, 6995, 7, 73, 2, 2, 6995, 6996, 7, 81, 2, 2, 6996, 1050, 3, 2, 2, 2, 6997, 6998, 7, 73, 2, 2, 6998, 6999, 7, 84, 2, 2, 6999, 7000, 7, 81, 2, 2, 7000, 7001, 7, 87, 2, 2, 7001, 7002, 7, 82, 2, 2, 7002, 7003, 7, 97, 2, 2, 7003, 7004, 7, 79, 2, 2, 7004, 7005, 7, 67, 2, 2, 7005, 7006, 7, 90, 2, 2, 7006, 7007, 7, 97, 2, 2, 7007, 7008, 7, 84, 2, 2, 7008, 7009, 7, 71, 2, 2, 7009, 7010, 7, 83, 2, 2, 7010, 7011, 7, 87, 2, 2, 7011, 7012, 7, 71, 2, 2, 7012, 7013, 7, 85, 2, 2, 7013, 7014, 7, 86, 2, 2, 7014, 7015, 7, 85, 2, 2, 7015, 1052, 3, 2, 2, 2, 7016, 7017, 7, 73, 2, 2, 7017, 7018, 7, 84, 2, 2, 7018, 7019, 7, 81, 2, 2, 7019, 7020, 7, 87, 2, 2, 7020, 7021, 7, 82, 2, 2, 7021, 7022, 7, 75, 2, 2, 7022, 7023, 7, 80, 2, 2, 7023, 7024, 7, 73, 2, 2, 7024, 1054, 3, 2, 2, 2, 7025, 7026, 7, 73, 2, 2, 7026, 7027, 7, 84, 2, 2, 7027, 7028, 7, 81, 2, 2, 7028, 7029, 7, 87, 2, 2, 7029, 7030, 7, 82, 2, 2, 7030, 7031, 7, 75, 2, 2, 7031, 7032, 7, 80, 2, 2, 7032, 7033, 7, 73, 2, 2, 7033, 7034, 7, 97, 2, 2, 7034, 7035, 7, 75, 2, 2, 7035, 7036, 7, 70, 2, 2, 7036, 1056, 3, 2, 2, 2, 7037, 7038, 7, 74, 2, 2, 7038, 7039, 7, 67, 2, 2, 7039, 7040, 7, 70, 2, 2, 7040, 7041, 7, 84, 2, 2, 7041, 1058, 3, 2, 2, 2, 7042, 7043, 7, 74, 2, 2, 7043, 7044, 7, 67, 2, 2, 7044, 7045, 7, 85, 2, 2, 7045, 7046, 7, 74, 2, 2, 7046, 1060, 3, 2, 2, 2, 7047, 7048, 7, 74, 2, 2, 7048, 7049, 7, 71, 2, 2, 7049, 7050, 7, 67, 2, 2, 7050, 7051, 7, 78, 2, 2, 7051, 7052, 7, 86, 2, 2, 7052, 7053, 7, 74, 2, 2, 7053, 7054, 7, 97, 2, 2, 7054, 7055, 7, 69, 2, 2, 7055, 7056, 7, 74, 2, 2, 7056, 7057, 7, 71, 2, 2, 7057, 7058, 7, 69, 2, 2, 7058, 7059, 7, 77, 2, 2, 7059, 7060, 7, 97, 2, 2, 7060, 7061, 7, 86, 2, 2, 7061, 7062, 7, 75, 2, 2, 7062, 7063, 7, 79, 2, 2, 7063, 7064, 7, 71, 2, 2, 7064, 7065, 7, 81, 2, 2, 7065, 7066, 7, 87, 2, 2, 7066, 7067, 7, 86, 2, 2, 7067, 1062, 3, 2, 2, 2, 7068, 7069, 7, 74, 2, 2, 7069, 7070, 7, 75, 2, 2, 7070, 7071, 7, 73, 2, 2, 7071, 7072, 7, 74, 2, 2, 7072, 1064, 3, 2, 2, 2, 7073, 7074, 7, 74, 2, 2, 7074, 7075, 7, 81, 2, 2, 7075, 7076, 7, 80, 2, 2, 7076, 7077, 7, 81, 2, 2, 7077, 7078, 7, 84, 2, 2, 7078, 7079, 7, 97, 2, 2, 7079, 7080, 7, 68, 2, 2, 7080, 7081, 7, 84, 2, 2, 7081, 7082, 7, 81, 2, 2, 7082, 7083, 7, 77, 2, 2, 7083, 7084, 7, 71, 2, 2, 7084, 7085, 7, 84, 2, 2, 7085, 7086, 7, 97, 2, 2, 7086, 7087, 7, 82, 2, 2, 7087, 7088, 7, 84, 2, 2, 7088, 7089, 7, 75, 2, 2, 7089, 7090, 7, 81, 2, 2, 7090, 7091, 7, 84, 2, 2, 7091, 7092, 7, 75, 2, 2, 7092, 7093, 7, 86, 2, 2, 7093, 7094, 7, 91, 2, 2, 7094, 1066, 3, 2, 2, 2, 7095, 7096, 7, 74, 2, 2, 7096, 7097, 7, 81, 2, 2, 7097, 7098, 7, 87, 2, 2, 7098, 7099, 7, 84, 2, 2, 7099, 7100, 7, 85, 2, 2, 7100, 1068, 3, 2, 2, 2, 7101, 7102, 7, 75, 2, 2, 7102, 7103, 7, 70, 2, 2, 7103, 7104, 7, 71, 2, 2, 7104, 7105, 7, 80, 2, 2, 7105, 7106, 7, 86, 2, 2, 7106, 7107, 7, 75, 2, 2, 7107, 7108, 7, 86, 2, 2, 7108, 7109, 7, 91, 2, 2, 7109, 7110, 7, 97, 2, 2, 7110, 7111, 7, 88, 2, 2, 7111, 7112, 7, 67, 2, 2, 7112, 7113, 7, 78, 2, 2, 7113, 7114, 7, 87, 2, 2, 7114, 7115, 7, 71, 2, 2, 7115, 1070, 3, 2, 2, 2, 7116, 7117, 7, 75, 2, 2, 7117, 7118, 7, 73, 2, 2, 7118, 7119, 7, 80, 2, 2, 7119, 7120, 7, 81, 2, 2, 7120, 7121, 7, 84, 2, 2, 7121, 7122, 7, 71, 2, 2, 7122, 7123, 7, 97, 2, 2, 7123, 7124, 7, 80, 2, 2, 7124, 7125, 7, 81, 2, 2, 7125, 7126, 7, 80, 2, 2, 7126, 7127, 7, 69, 2, 2, 7127, 7128, 7, 78, 2, 2, 7128, 7129, 7, 87, 2, 2, 7129, 7130, 7, 85, 2, 2, 7130, 7131, 7, 86, 2, 2, 7131, 7132, 7, 71, 2, 2, 7132, 7133, 7, 84, 2, 2, 7133, 7134, 7, 71, 2, 2, 7134, 7135, 7, 70, 2, 2, 7135, 7136, 7, 97, 2, 2, 7136, 7137, 7, 69, 2, 2, 7137, 7138, 7, 81, 2, 2, 7138, 7139, 7, 78, 2, 2, 7139, 7140, 7, 87, 2, 2, 7140, 7141, 7, 79, 2, 2, 7141, 7142, 7, 80, 2, 2, 7142, 7143, 7, 85, 2, 2, 7143, 7144, 7, 86, 2, 2, 7144, 7145, 7, 81, 2, 2, 7145, 7146, 7, 84, 2, 2, 7146, 7147, 7, 71, 2, 2, 7147, 7148, 7, 97, 2, 2, 7148, 7149, 7, 75, 2, 2, 7149, 7150, 7, 80, 2, 2, 7150, 7151, 7, 70, 2, 2, 7151, 7152, 7, 71, 2, 2, 7152, 7153, 7, 90, 2, 2, 7153, 1072, 3, 2, 2, 2, 7154, 7155, 7, 75, 2, 2, 7155, 7156, 7, 79, 2, 2, 7156, 7157, 7, 79, 2, 2, 7157, 7158, 7, 71, 2, 2, 7158, 7159, 7, 70, 2, 2, 7159, 7160, 7, 75, 2, 2, 7160, 7161, 7, 67, 2, 2, 7161, 7162, 7, 86, 2, 2, 7162, 7163, 7, 71, 2, 2, 7163, 1074, 3, 2, 2, 2, 7164, 7165, 7, 75, 2, 2, 7165, 7166, 7, 79, 2, 2, 7166, 7167, 7, 82, 2, 2, 7167, 7168, 7, 71, 2, 2, 7168, 7169, 7, 84, 2, 2, 7169, 7170, 7, 85, 2, 2, 7170, 7171, 7, 81, 2, 2, 7171, 7172, 7, 80, 2, 2, 7172, 7173, 7, 67, 2, 2, 7173, 7174, 7, 86, 2, 2, 7174, 7175, 7, 71, 2, 2, 7175, 1076, 3, 2, 2, 2, 7176, 7177, 7, 75, 2, 2, 7177, 7178, 7, 79, 2, 2, 7178, 7179, 7, 82, 2, 2, 7179, 7180, 7, 81, 2, 2, 7180, 7181, 7, 84, 2, 2, 7181, 7182, 7, 86, 2, 2, 7182, 7183, 7, 67, 2, 2, 7183, 7184, 7, 80, 2, 2, 7184, 7185, 7, 69, 2, 2, 7185, 7186, 7, 71, 2, 2, 7186, 1078, 3, 2, 2, 2, 7187, 7188, 7, 75, 2, 2, 7188, 7189, 7, 80, 2, 2, 7189, 7190, 7, 69, 2, 2, 7190, 7191, 7, 78, 2, 2, 7191, 7192, 7, 87, 2, 2, 7192, 7193, 7, 70, 2, 2, 7193, 7194, 7, 71, 2, 2, 7194, 7195, 7, 97, 2, 2, 7195, 7196, 7, 80, 2, 2, 7196, 7197, 7, 87, 2, 2, 7197, 7198, 7, 78, 2, 2, 7198, 7199, 7, 78, 2, 2, 7199, 7200, 7, 97, 2, 2, 7200, 7201, 7, 88, 2, 2, 7201, 7202, 7, 67, 2, 2, 7202, 7203, 7, 78, 2, 2, 7203, 7204, 7, 87, 2, 2, 7204, 7205, 7, 71, 2, 2, 7205, 7206, 7, 85, 2, 2, 7206, 1080, 3, 2, 2, 2, 7207, 7208, 7, 75, 2, 2, 7208, 7209, 7, 80, 2, 2, 7209, 7210, 7, 69, 2, 2, 7210, 7211, 7, 84, 2, 2, 7211, 7212, 7, 71, 2, 2, 7212, 7213, 7, 79, 2, 2, 7213, 7214, 7, 71, 2, 2, 7214, 7215, 7, 80, 2, 2, 7215, 7216, 7, 86, 2, 2, 7216, 7217, 7, 67, 2, 2, 7217, 7218, 7, 78, 2, 2, 7218, 1082, 3, 2, 2, 2, 7219, 7220, 7, 75, 2, 2, 7220, 7221, 7, 80, 2, 2, 7221, 7222, 7, 75, 2, 2, 7222, 7223, 7, 86, 2, 2, 7223, 7224, 7, 75, 2, 2, 7224, 7225, 7, 67, 2, 2, 7225, 7226, 7, 86, 2, 2, 7226, 7227, 7, 81, 2, 2, 7227, 7228, 7, 84, 2, 2, 7228, 1084, 3, 2, 2, 2, 7229, 7230, 7, 75, 2, 2, 7230, 7231, 7, 80, 2, 2, 7231, 7232, 7, 82, 2, 2, 7232, 7233, 7, 87, 2, 2, 7233, 7234, 7, 86, 2, 2, 7234, 1086, 3, 2, 2, 2, 7235, 7236, 7, 75, 2, 2, 7236, 7237, 7, 80, 2, 2, 7237, 7238, 7, 85, 2, 2, 7238, 7239, 7, 71, 2, 2, 7239, 7240, 7, 80, 2, 2, 7240, 7241, 7, 85, 2, 2, 7241, 7242, 7, 75, 2, 2, 7242, 7243, 7, 86, 2, 2, 7243, 7244, 7, 75, 2, 2, 7244, 7245, 7, 88, 2, 2, 7245, 7246, 7, 71, 2, 2, 7246, 1088, 3, 2, 2, 2, 7247, 7248, 7, 75, 2, 2, 7248, 7249, 7, 80, 2, 2, 7249, 7250, 7, 85, 2, 2, 7250, 7251, 7, 71, 2, 2, 7251, 7252, 7, 84, 2, 2, 7252, 7253, 7, 86, 2, 2, 7253, 7254, 7, 71, 2, 2, 7254, 7255, 7, 70, 2, 2, 7255, 1090, 3, 2, 2, 2, 7256, 7257, 7, 75, 2, 2, 7257, 7258, 7, 80, 2, 2, 7258, 7259, 7, 86, 2, 2, 7259, 1092, 3, 2, 2, 2, 7260, 7261, 7, 75, 2, 2, 7261, 7262, 7, 82, 2, 2, 7262, 1094, 3, 2, 2, 2, 7263, 7264, 7, 75, 2, 2, 7264, 7265, 7, 85, 2, 2, 7265, 7266, 7, 81, 2, 2, 7266, 7267, 7, 78, 2, 2, 7267, 7268, 7, 67, 2, 2, 7268, 7269, 7, 86, 2, 2, 7269, 7270, 7, 75, 2, 2, 7270, 7271, 7, 81, 2, 2, 7271, 7272, 7, 80, 2, 2, 7272, 1096, 3, 2, 2, 2, 7273, 7274, 7, 76, 2, 2, 7274, 7275, 7, 81, 2, 2, 7275, 7276, 7, 68, 2, 2, 7276, 1098, 3, 2, 2, 2, 7277, 7278, 7, 76, 2, 2, 7278, 7279, 7, 85, 2, 2, 7279, 7280, 7, 81, 2, 2, 7280, 7281, 7, 80, 2, 2, 7281, 1100, 3, 2, 2, 2, 7282, 7283, 7, 77, 2, 2, 7283, 7284, 7, 68, 2, 2, 7284, 1102, 3, 2, 2, 2, 7285, 7286, 7, 77, 2, 2, 7286, 7287, 7, 71, 2, 2, 7287, 7288, 7, 71, 2, 2, 7288, 7289, 7, 82, 2, 2, 7289, 1104, 3, 2, 2, 2, 7290, 7291, 7, 77, 2, 2, 7291, 7292, 7, 71, 2, 2, 7292, 7293, 7, 71, 2, 2, 7293, 7294, 7, 82, 2, 2, 7294, 7295, 7, 72, 2, 2, 7295, 7296, 7, 75, 2, 2, 7296, 7297, 7, 90, 2, 2, 7297, 7298, 7, 71, 2, 2, 7298, 7299, 7, 70, 2, 2, 7299, 1106, 3, 2, 2, 2, 7300, 7301, 7, 77, 2, 2, 7301, 7302, 7, 71, 2, 2, 7302, 7303, 7, 91, 2, 2, 7303, 7304, 7, 97, 2, 2, 7304, 7305, 7, 85, 2, 2, 7305, 7306, 7, 81, 2, 2, 7306, 7307, 7, 87, 2, 2, 7307, 7308, 7, 84, 2, 2, 7308, 7309, 7, 69, 2, 2, 7309, 7310, 7, 71, 2, 2, 7310, 1108, 3, 2, 2, 2, 7311, 7312, 7, 77, 2, 2, 7312, 7313, 7, 71, 2, 2, 7313, 7314, 7, 91, 2, 2, 7314, 7315, 7, 85, 2, 2, 7315, 1110, 3, 2, 2, 2, 7316, 7317, 7, 77, 2, 2, 7317, 7318, 7, 71, 2, 2, 7318, 7319, 7, 91, 2, 2, 7319, 7320, 7, 85, 2, 2, 7320, 7321, 7, 71, 2, 2, 7321, 7322, 7, 86, 2, 2, 7322, 1112, 3, 2, 2, 2, 7323, 7324, 7, 78, 2, 2, 7324, 7325, 7, 67, 2, 2, 7325, 7326, 7, 73, 2, 2, 7326, 1114, 3, 2, 2, 2, 7327, 7328, 7, 78, 2, 2, 7328, 7329, 7, 67, 2, 2, 7329, 7330, 7, 85, 2, 2, 7330, 7331, 7, 86, 2, 2, 7331, 1116, 3, 2, 2, 2, 7332, 7333, 7, 78, 2, 2, 7333, 7334, 7, 67, 2, 2, 7334, 7335, 7, 85, 2, 2, 7335, 7336, 7, 86, 2, 2, 7336, 7337, 7, 97, 2, 2, 7337, 7338, 7, 88, 2, 2, 7338, 7339, 7, 67, 2, 2, 7339, 7340, 7, 78, 2, 2, 7340, 7341, 7, 87, 2, 2, 7341, 7342, 7, 71, 2, 2, 7342, 1118, 3, 2, 2, 2, 7343, 7344, 7, 78, 2, 2, 7344, 7345, 7, 71, 2, 2, 7345, 7346, 7, 67, 2, 2, 7346, 7347, 7, 70, 2, 2, 7347, 1120, 3, 2, 2, 2, 7348, 7349, 7, 78, 2, 2, 7349, 7350, 7, 71, 2, 2, 7350, 7351, 7, 88, 2, 2, 7351, 7352, 7, 71, 2, 2, 7352, 7353, 7, 78, 2, 2, 7353, 1122, 3, 2, 2, 2, 7354, 7355, 7, 78, 2, 2, 7355, 7356, 7, 75, 2, 2, 7356, 7357, 7, 85, 2, 2, 7357, 7358, 7, 86, 2, 2, 7358, 1124, 3, 2, 2, 2, 7359, 7360, 7, 78, 2, 2, 7360, 7361, 7, 75, 2, 2, 7361, 7362, 7, 85, 2, 2, 7362, 7363, 7, 86, 2, 2, 7363, 7364, 7, 71, 2, 2, 7364, 7365, 7, 80, 2, 2, 7365, 7366, 7, 71, 2, 2, 7366, 7367, 7, 84, 2, 2, 7367, 1126, 3, 2, 2, 2, 7368, 7369, 7, 78, 2, 2, 7369, 7370, 7, 75, 2, 2, 7370, 7371, 7, 85, 2, 2, 7371, 7372, 7, 86, 2, 2, 7372, 7373, 7, 71, 2, 2, 7373, 7374, 7, 80, 2, 2, 7374, 7375, 7, 71, 2, 2, 7375, 7376, 7, 84, 2, 2, 7376, 7377, 7, 97, 2, 2, 7377, 7378, 7, 87, 2, 2, 7378, 7379, 7, 84, 2, 2, 7379, 7380, 7, 78, 2, 2, 7380, 1128, 3, 2, 2, 2, 7381, 7382, 7, 78, 2, 2, 7382, 7383, 7, 81, 2, 2, 7383, 7384, 7, 68, 2, 2, 7384, 7385, 7, 97, 2, 2, 7385, 7386, 7, 69, 2, 2, 7386, 7387, 7, 81, 2, 2, 7387, 7388, 7, 79, 2, 2, 7388, 7389, 7, 82, 2, 2, 7389, 7390, 7, 67, 2, 2, 7390, 7391, 7, 69, 2, 2, 7391, 7392, 7, 86, 2, 2, 7392, 7393, 7, 75, 2, 2, 7393, 7394, 7, 81, 2, 2, 7394, 7395, 7, 80, 2, 2, 7395, 1130, 3, 2, 2, 2, 7396, 7397, 7, 78, 2, 2, 7397, 7398, 7, 81, 2, 2, 7398, 7399, 7, 69, 2, 2, 7399, 7400, 7, 67, 2, 2, 7400, 7401, 7, 78, 2, 2, 7401, 1132, 3, 2, 2, 2, 7402, 7403, 7, 78, 2, 2, 7403, 7404, 7, 81, 2, 2, 7404, 7405, 7, 69, 2, 2, 7405, 7406, 7, 67, 2, 2, 7406, 7407, 7, 86, 2, 2, 7407, 7408, 7, 75, 2, 2, 7408, 7409, 7, 81, 2, 2, 7409, 7410, 7, 80, 2, 2, 7410, 1134, 3, 2, 2, 2, 7411, 7412, 7, 78, 2, 2, 7412, 7413, 7, 81, 2, 2, 7413, 7414, 7, 69, 2, 2, 7414, 7415, 7, 77, 2, 2, 7415, 1136, 3, 2, 2, 2, 7416, 7417, 7, 78, 2, 2, 7417, 7418, 7, 81, 2, 2, 7418, 7419, 7, 69, 2, 2, 7419, 7420, 7, 77, 2, 2, 7420, 7421, 7, 97, 2, 2, 7421, 7422, 7, 71, 2, 2, 7422, 7423, 7, 85, 2, 2, 7423, 7424, 7, 69, 2, 2, 7424, 7425, 7, 67, 2, 2, 7425, 7426, 7, 78, 2, 2, 7426, 7427, 7, 67, 2, 2, 7427, 7428, 7, 86, 2, 2, 7428, 7429, 7, 75, 2, 2, 7429, 7430, 7, 81, 2, 2, 7430, 7431, 7, 80, 2, 2, 7431, 1138, 3, 2, 2, 2, 7432, 7433, 7, 78, 2, 2, 7433, 7434, 7, 81, 2, 2, 7434, 7435, 7, 73, 2, 2, 7435, 7436, 7, 75, 2, 2, 7436, 7437, 7, 80, 2, 2, 7437, 1140, 3, 2, 2, 2, 7438, 7439, 7, 78, 2, 2, 7439, 7440, 7, 81, 2, 2, 7440, 7441, 7, 81, 2, 2, 7441, 7442, 7, 82, 2, 2, 7442, 1142, 3, 2, 2, 2, 7443, 7444, 7, 78, 2, 2, 7444, 7445, 7, 81, 2, 2, 7445, 7446, 7, 89, 2, 2, 7446, 1144, 3, 2, 2, 2, 7447, 7448, 7, 79, 2, 2, 7448, 7449, 7, 67, 2, 2, 7449, 7450, 7, 80, 2, 2, 7450, 7451, 7, 87, 2, 2, 7451, 7452, 7, 67, 2, 2, 7452, 7453, 7, 78, 2, 2, 7453, 1146, 3, 2, 2, 2, 7454, 7455, 7, 79, 2, 2, 7455, 7456, 7, 67, 2, 2, 7456, 7457, 7, 84, 2, 2, 7457, 7458, 7, 77, 2, 2, 7458, 1148, 3, 2, 2, 2, 7459, 7460, 7, 79, 2, 2, 7460, 7461, 7, 67, 2, 2, 7461, 7462, 7, 86, 2, 2, 7462, 7463, 7, 71, 2, 2, 7463, 7464, 7, 84, 2, 2, 7464, 7465, 7, 75, 2, 2, 7465, 7466, 7, 67, 2, 2, 7466, 7467, 7, 78, 2, 2, 7467, 7468, 7, 75, 2, 2, 7468, 7469, 7, 92, 2, 2, 7469, 7470, 7, 71, 2, 2, 7470, 7471, 7, 70, 2, 2, 7471, 1150, 3, 2, 2, 2, 7472, 7473, 7, 79, 2, 2, 7473, 7474, 7, 67, 2, 2, 7474, 7475, 7, 90, 2, 2, 7475, 1152, 3, 2, 2, 2, 7476, 7477, 7, 79, 2, 2, 7477, 7478, 7, 67, 2, 2, 7478, 7479, 7, 90, 2, 2, 7479, 7480, 7, 97, 2, 2, 7480, 7481, 7, 69, 2, 2, 7481, 7482, 7, 82, 2, 2, 7482, 7483, 7, 87, 2, 2, 7483, 7484, 7, 97, 2, 2, 7484, 7485, 7, 82, 2, 2, 7485, 7486, 7, 71, 2, 2, 7486, 7487, 7, 84, 2, 2, 7487, 7488, 7, 69, 2, 2, 7488, 7489, 7, 71, 2, 2, 7489, 7490, 7, 80, 2, 2, 7490, 7491, 7, 86, 2, 2, 7491, 1154, 3, 2, 2, 2, 7492, 7493, 7, 79, 2, 2, 7493, 7494, 7, 67, 2, 2, 7494, 7495, 7, 90, 2, 2, 7495, 7496, 7, 97, 2, 2, 7496, 7497, 7, 70, 2, 2, 7497, 7498, 7, 81, 2, 2, 7498, 7499, 7, 82, 2, 2, 7499, 1156, 3, 2, 2, 2, 7500, 7501, 7, 79, 2, 2, 7501, 7502, 7, 67, 2, 2, 7502, 7503, 7, 90, 2, 2, 7503, 7504, 7, 97, 2, 2, 7504, 7505, 7, 72, 2, 2, 7505, 7506, 7, 75, 2, 2, 7506, 7507, 7, 78, 2, 2, 7507, 7508, 7, 71, 2, 2, 7508, 7509, 7, 85, 2, 2, 7509, 1158, 3, 2, 2, 2, 7510, 7511, 7, 79, 2, 2, 7511, 7512, 7, 67, 2, 2, 7512, 7513, 7, 90, 2, 2, 7513, 7514, 7, 97, 2, 2, 7514, 7515, 7, 75, 2, 2, 7515, 7516, 7, 81, 2, 2, 7516, 7517, 7, 82, 2, 2, 7517, 7518, 7, 85, 2, 2, 7518, 7519, 7, 97, 2, 2, 7519, 7520, 7, 82, 2, 2, 7520, 7521, 7, 71, 2, 2, 7521, 7522, 7, 84, 2, 2, 7522, 7523, 7, 97, 2, 2, 7523, 7524, 7, 88, 2, 2, 7524, 7525, 7, 81, 2, 2, 7525, 7526, 7, 78, 2, 2, 7526, 7527, 7, 87, 2, 2, 7527, 7528, 7, 79, 2, 2, 7528, 7529, 7, 71, 2, 2, 7529, 1160, 3, 2, 2, 2, 7530, 7531, 7, 79, 2, 2, 7531, 7532, 7, 67, 2, 2, 7532, 7533, 7, 90, 2, 2, 7533, 7534, 7, 97, 2, 2, 7534, 7535, 7, 79, 2, 2, 7535, 7536, 7, 71, 2, 2, 7536, 7537, 7, 79, 2, 2, 7537, 7538, 7, 81, 2, 2, 7538, 7539, 7, 84, 2, 2, 7539, 7540, 7, 91, 2, 2, 7540, 7541, 7, 97, 2, 2, 7541, 7542, 7, 82, 2, 2, 7542, 7543, 7, 71, 2, 2, 7543, 7544, 7, 84, 2, 2, 7544, 7545, 7, 69, 2, 2, 7545, 7546, 7, 71, 2, 2, 7546, 7547, 7, 80, 2, 2, 7547, 7548, 7, 86, 2, 2, 7548, 1162, 3, 2, 2, 2, 7549, 7550, 7, 79, 2, 2, 7550, 7551, 7, 67, 2, 2, 7551, 7552, 7, 90, 2, 2, 7552, 7553, 7, 97, 2, 2, 7553, 7554, 7, 82, 2, 2, 7554, 7555, 7, 84, 2, 2, 7555, 7556, 7, 81, 2, 2, 7556, 7557, 7, 69, 2, 2, 7557, 7558, 7, 71, 2, 2, 7558, 7559, 7, 85, 2, 2, 7559, 7560, 7, 85, 2, 2, 7560, 7561, 7, 71, 2, 2, 7561, 7562, 7, 85, 2, 2, 7562, 1164, 3, 2, 2, 2, 7563, 7564, 7, 79, 2, 2, 7564, 7565, 7, 67, 2, 2, 7565, 7566, 7, 90, 2, 2, 7566, 7567, 7, 97, 2, 2, 7567, 7568, 7, 83, 2, 2, 7568, 7569, 7, 87, 2, 2, 7569, 7570, 7, 71, 2, 2, 7570, 7571, 7, 87, 2, 2, 7571, 7572, 7, 71, 2, 2, 7572, 7573, 7, 97, 2, 2, 7573, 7574, 7, 84, 2, 2, 7574, 7575, 7, 71, 2, 2, 7575, 7576, 7, 67, 2, 2, 7576, 7577, 7, 70, 2, 2, 7577, 7578, 7, 71, 2, 2, 7578, 7579, 7, 84, 2, 2, 7579, 7580, 7, 85, 2, 2, 7580, 1166, 3, 2, 2, 2, 7581, 7582, 7, 79, 2, 2, 7582, 7583, 7, 67, 2, 2, 7583, 7584, 7, 90, 2, 2, 7584, 7585, 7, 97, 2, 2, 7585, 7586, 7, 84, 2, 2, 7586, 7587, 7, 81, 2, 2, 7587, 7588, 7, 78, 2, 2, 7588, 7589, 7, 78, 2, 2, 7589, 7590, 7, 81, 2, 2, 7590, 7591, 7, 88, 2, 2, 7591, 7592, 7, 71, 2, 2, 7592, 7593, 7, 84, 2, 2, 7593, 7594, 7, 97, 2, 2, 7594, 7595, 7, 72, 2, 2, 7595, 7596, 7, 75, 2, 2, 7596, 7597, 7, 78, 2, 2, 7597, 7598, 7, 71, 2, 2, 7598, 7599, 7, 85, 2, 2, 7599, 1168, 3, 2, 2, 2, 7600, 7601, 7, 79, 2, 2, 7601, 7602, 7, 67, 2, 2, 7602, 7603, 7, 90, 2, 2, 7603, 7604, 7, 70, 2, 2, 7604, 7605, 7, 81, 2, 2, 7605, 7606, 7, 82, 2, 2, 7606, 1170, 3, 2, 2, 2, 7607, 7608, 7, 79, 2, 2, 7608, 7609, 7, 67, 2, 2, 7609, 7610, 7, 90, 2, 2, 7610, 7611, 7, 84, 2, 2, 7611, 7612, 7, 71, 2, 2, 7612, 7613, 7, 69, 2, 2, 7613, 7614, 7, 87, 2, 2, 7614, 7615, 7, 84, 2, 2, 7615, 7616, 7, 85, 2, 2, 7616, 7617, 7, 75, 2, 2, 7617, 7618, 7, 81, 2, 2, 7618, 7619, 7, 80, 2, 2, 7619, 1172, 3, 2, 2, 2, 7620, 7621, 7, 79, 2, 2, 7621, 7622, 7, 67, 2, 2, 7622, 7623, 7, 90, 2, 2, 7623, 7624, 7, 85, 2, 2, 7624, 7625, 7, 75, 2, 2, 7625, 7626, 7, 92, 2, 2, 7626, 7627, 7, 71, 2, 2, 7627, 1174, 3, 2, 2, 2, 7628, 7629, 7, 79, 2, 2, 7629, 7630, 7, 68, 2, 2, 7630, 1176, 3, 2, 2, 2, 7631, 7632, 7, 79, 2, 2, 7632, 7633, 7, 71, 2, 2, 7633, 7634, 7, 70, 2, 2, 7634, 7635, 7, 75, 2, 2, 7635, 7636, 7, 87, 2, 2, 7636, 7637, 7, 79, 2, 2, 7637, 1178, 3, 2, 2, 2, 7638, 7639, 7, 79, 2, 2, 7639, 7640, 7, 71, 2, 2, 7640, 7641, 7, 79, 2, 2, 7641, 7642, 7, 81, 2, 2, 7642, 7643, 7, 84, 2, 2, 7643, 7644, 7, 91, 2, 2, 7644, 7645, 7, 97, 2, 2, 7645, 7646, 7, 81, 2, 2, 7646, 7647, 7, 82, 2, 2, 7647, 7648, 7, 86, 2, 2, 7648, 7649, 7, 75, 2, 2, 7649, 7650, 7, 79, 2, 2, 7650, 7651, 7, 75, 2, 2, 7651, 7652, 7, 92, 2, 2, 7652, 7653, 7, 71, 2, 2, 7653, 7654, 7, 70, 2, 2, 7654, 7655, 7, 97, 2, 2, 7655, 7656, 7, 70, 2, 2, 7656, 7657, 7, 67, 2, 2, 7657, 7658, 7, 86, 2, 2, 7658, 7659, 7, 67, 2, 2, 7659, 1180, 3, 2, 2, 2, 7660, 7661, 7, 79, 2, 2, 7661, 7662, 7, 71, 2, 2, 7662, 7663, 7, 85, 2, 2, 7663, 7664, 7, 85, 2, 2, 7664, 7665, 7, 67, 2, 2, 7665, 7666, 7, 73, 2, 2, 7666, 7667, 7, 71, 2, 2, 7667, 1182, 3, 2, 2, 2, 7668, 7669, 7, 79, 2, 2, 7669, 7670, 7, 75, 2, 2, 7670, 7671, 7, 80, 2, 2, 7671, 1184, 3, 2, 2, 2, 7672, 7673, 7, 79, 2, 2, 7673, 7674, 7, 75, 2, 2, 7674, 7675, 7, 80, 2, 2, 7675, 7676, 7, 97, 2, 2, 7676, 7677, 7, 67, 2, 2, 7677, 7678, 7, 69, 2, 2, 7678, 7679, 7, 86, 2, 2, 7679, 7680, 7, 75, 2, 2, 7680, 7681, 7, 88, 2, 2, 7681, 7682, 7, 71, 2, 2, 7682, 7683, 7, 97, 2, 2, 7683, 7684, 7, 84, 2, 2, 7684, 7685, 7, 81, 2, 2, 7685, 7686, 7, 89, 2, 2, 7686, 7687, 7, 88, 2, 2, 7687, 7688, 7, 71, 2, 2, 7688, 7689, 7, 84, 2, 2, 7689, 7690, 7, 85, 2, 2, 7690, 7691, 7, 75, 2, 2, 7691, 7692, 7, 81, 2, 2, 7692, 7693, 7, 80, 2, 2, 7693, 1186, 3, 2, 2, 2, 7694, 7695, 7, 79, 2, 2, 7695, 7696, 7, 75, 2, 2, 7696, 7697, 7, 80, 2, 2, 7697, 7698, 7, 97, 2, 2, 7698, 7699, 7, 69, 2, 2, 7699, 7700, 7, 82, 2, 2, 7700, 7701, 7, 87, 2, 2, 7701, 7702, 7, 97, 2, 2, 7702, 7703, 7, 82, 2, 2, 7703, 7704, 7, 71, 2, 2, 7704, 7705, 7, 84, 2, 2, 7705, 7706, 7, 69, 2, 2, 7706, 7707, 7, 71, 2, 2, 7707, 7708, 7, 80, 2, 2, 7708, 7709, 7, 86, 2, 2, 7709, 1188, 3, 2, 2, 2, 7710, 7711, 7, 79, 2, 2, 7711, 7712, 7, 75, 2, 2, 7712, 7713, 7, 80, 2, 2, 7713, 7714, 7, 97, 2, 2, 7714, 7715, 7, 75, 2, 2, 7715, 7716, 7, 81, 2, 2, 7716, 7717, 7, 82, 2, 2, 7717, 7718, 7, 85, 2, 2, 7718, 7719, 7, 97, 2, 2, 7719, 7720, 7, 82, 2, 2, 7720, 7721, 7, 71, 2, 2, 7721, 7722, 7, 84, 2, 2, 7722, 7723, 7, 97, 2, 2, 7723, 7724, 7, 88, 2, 2, 7724, 7725, 7, 81, 2, 2, 7725, 7726, 7, 78, 2, 2, 7726, 7727, 7, 87, 2, 2, 7727, 7728, 7, 79, 2, 2, 7728, 7729, 7, 71, 2, 2, 7729, 1190, 3, 2, 2, 2, 7730, 7731, 7, 79, 2, 2, 7731, 7732, 7, 75, 2, 2, 7732, 7733, 7, 80, 2, 2, 7733, 7734, 7, 97, 2, 2, 7734, 7735, 7, 79, 2, 2, 7735, 7736, 7, 71, 2, 2, 7736, 7737, 7, 79, 2, 2, 7737, 7738, 7, 81, 2, 2, 7738, 7739, 7, 84, 2, 2, 7739, 7740, 7, 91, 2, 2, 7740, 7741, 7, 97, 2, 2, 7741, 7742, 7, 82, 2, 2, 7742, 7743, 7, 71, 2, 2, 7743, 7744, 7, 84, 2, 2, 7744, 7745, 7, 69, 2, 2, 7745, 7746, 7, 71, 2, 2, 7746, 7747, 7, 80, 2, 2, 7747, 7748, 7, 86, 2, 2, 7748, 1192, 3, 2, 2, 2, 7749, 7750, 7, 79, 2, 2, 7750, 7751, 7, 75, 2, 2, 7751, 7752, 7, 80, 2, 2, 7752, 7753, 7, 87, 2, 2, 7753, 7754, 7, 86, 2, 2, 7754, 7755, 7, 71, 2, 2, 7755, 7756, 7, 85, 2, 2, 7756, 1194, 3, 2, 2, 2, 7757, 7758, 7, 79, 2, 2, 7758, 7759, 7, 75, 2, 2, 7759, 7760, 7, 84, 2, 2, 7760, 7761, 7, 84, 2, 2, 7761, 7762, 7, 81, 2, 2, 7762, 7763, 7, 84, 2, 2, 7763, 7764, 7, 97, 2, 2, 7764, 7765, 7, 67, 2, 2, 7765, 7766, 7, 70, 2, 2, 7766, 7767, 7, 70, 2, 2, 7767, 7768, 7, 84, 2, 2, 7768, 7769, 7, 71, 2, 2, 7769, 7770, 7, 85, 2, 2, 7770, 7771, 7, 85, 2, 2, 7771, 1196, 3, 2, 2, 2, 7772, 7773, 7, 79, 2, 2, 7773, 7774, 7, 75, 2, 2, 7774, 7775, 7, 90, 2, 2, 7775, 7776, 7, 71, 2, 2, 7776, 7777, 7, 70, 2, 2, 7777, 7778, 7, 97, 2, 2, 7778, 7779, 7, 82, 2, 2, 7779, 7780, 7, 67, 2, 2, 7780, 7781, 7, 73, 2, 2, 7781, 7782, 7, 71, 2, 2, 7782, 7783, 7, 97, 2, 2, 7783, 7784, 7, 67, 2, 2, 7784, 7785, 7, 78, 2, 2, 7785, 7786, 7, 78, 2, 2, 7786, 7787, 7, 81, 2, 2, 7787, 7788, 7, 69, 2, 2, 7788, 7789, 7, 67, 2, 2, 7789, 7790, 7, 86, 2, 2, 7790, 7791, 7, 75, 2, 2, 7791, 7792, 7, 81, 2, 2, 7792, 7793, 7, 80, 2, 2, 7793, 1198, 3, 2, 2, 2, 7794, 7795, 7, 79, 2, 2, 7795, 7796, 7, 81, 2, 2, 7796, 7797, 7, 70, 2, 2, 7797, 7798, 7, 71, 2, 2, 7798, 1200, 3, 2, 2, 2, 7799, 7800, 7, 79, 2, 2, 7800, 7801, 7, 81, 2, 2, 7801, 7802, 7, 70, 2, 2, 7802, 7803, 7, 75, 2, 2, 7803, 7804, 7, 72, 2, 2, 7804, 7805, 7, 91, 2, 2, 7805, 1202, 3, 2, 2, 2, 7806, 7807, 7, 79, 2, 2, 7807, 7808, 7, 81, 2, 2, 7808, 7809, 7, 88, 2, 2, 7809, 7810, 7, 71, 2, 2, 7810, 1204, 3, 2, 2, 2, 7811, 7812, 7, 79, 2, 2, 7812, 7813, 7, 87, 2, 2, 7813, 7814, 7, 78, 2, 2, 7814, 7815, 7, 86, 2, 2, 7815, 7816, 7, 75, 2, 2, 7816, 7817, 7, 97, 2, 2, 7817, 7818, 7, 87, 2, 2, 7818, 7819, 7, 85, 2, 2, 7819, 7820, 7, 71, 2, 2, 7820, 7821, 7, 84, 2, 2, 7821, 1206, 3, 2, 2, 2, 7822, 7823, 7, 80, 2, 2, 7823, 7824, 7, 67, 2, 2, 7824, 7825, 7, 79, 2, 2, 7825, 7826, 7, 71, 2, 2, 7826, 1208, 3, 2, 2, 2, 7827, 7828, 7, 80, 2, 2, 7828, 7829, 7, 71, 2, 2, 7829, 7830, 7, 85, 2, 2, 7830, 7831, 7, 86, 2, 2, 7831, 7832, 7, 71, 2, 2, 7832, 7833, 7, 70, 2, 2, 7833, 7834, 7, 97, 2, 2, 7834, 7835, 7, 86, 2, 2, 7835, 7836, 7, 84, 2, 2, 7836, 7837, 7, 75, 2, 2, 7837, 7838, 7, 73, 2, 2, 7838, 7839, 7, 73, 2, 2, 7839, 7840, 7, 71, 2, 2, 7840, 7841, 7, 84, 2, 2, 7841, 7842, 7, 85, 2, 2, 7842, 1210, 3, 2, 2, 2, 7843, 7844, 7, 80, 2, 2, 7844, 7845, 7, 71, 2, 2, 7845, 7846, 7, 89, 2, 2, 7846, 7847, 7, 97, 2, 2, 7847, 7848, 7, 67, 2, 2, 7848, 7849, 7, 69, 2, 2, 7849, 7850, 7, 69, 2, 2, 7850, 7851, 7, 81, 2, 2, 7851, 7852, 7, 87, 2, 2, 7852, 7853, 7, 80, 2, 2, 7853, 7854, 7, 86, 2, 2, 7854, 1212, 3, 2, 2, 2, 7855, 7856, 7, 80, 2, 2, 7856, 7857, 7, 71, 2, 2, 7857, 7858, 7, 89, 2, 2, 7858, 7859, 7, 97, 2, 2, 7859, 7860, 7, 68, 2, 2, 7860, 7861, 7, 84, 2, 2, 7861, 7862, 7, 81, 2, 2, 7862, 7863, 7, 77, 2, 2, 7863, 7864, 7, 71, 2, 2, 7864, 7865, 7, 84, 2, 2, 7865, 1214, 3, 2, 2, 2, 7866, 7867, 7, 80, 2, 2, 7867, 7868, 7, 71, 2, 2, 7868, 7869, 7, 89, 2, 2, 7869, 7870, 7, 97, 2, 2, 7870, 7871, 7, 82, 2, 2, 7871, 7872, 7, 67, 2, 2, 7872, 7873, 7, 85, 2, 2, 7873, 7874, 7, 85, 2, 2, 7874, 7875, 7, 89, 2, 2, 7875, 7876, 7, 81, 2, 2, 7876, 7877, 7, 84, 2, 2, 7877, 7878, 7, 70, 2, 2, 7878, 1216, 3, 2, 2, 2, 7879, 7880, 7, 80, 2, 2, 7880, 7881, 7, 71, 2, 2, 7881, 7882, 7, 90, 2, 2, 7882, 7883, 7, 86, 2, 2, 7883, 1218, 3, 2, 2, 2, 7884, 7885, 7, 80, 2, 2, 7885, 7886, 7, 81, 2, 2, 7886, 1220, 3, 2, 2, 2, 7887, 7888, 7, 80, 2, 2, 7888, 7889, 7, 81, 2, 2, 7889, 7890, 7, 97, 2, 2, 7890, 7891, 7, 86, 2, 2, 7891, 7892, 7, 84, 2, 2, 7892, 7893, 7, 87, 2, 2, 7893, 7894, 7, 80, 2, 2, 7894, 7895, 7, 69, 2, 2, 7895, 7896, 7, 67, 2, 2, 7896, 7897, 7, 86, 2, 2, 7897, 7898, 7, 71, 2, 2, 7898, 1222, 3, 2, 2, 2, 7899, 7900, 7, 80, 2, 2, 7900, 7901, 7, 81, 2, 2, 7901, 7902, 7, 97, 2, 2, 7902, 7903, 7, 89, 2, 2, 7903, 7904, 7, 67, 2, 2, 7904, 7905, 7, 75, 2, 2, 7905, 7906, 7, 86, 2, 2, 7906, 1224, 3, 2, 2, 2, 7907, 7908, 7, 80, 2, 2, 7908, 7909, 7, 81, 2, 2, 7909, 7910, 7, 69, 2, 2, 7910, 7911, 7, 81, 2, 2, 7911, 7912, 7, 87, 2, 2, 7912, 7913, 7, 80, 2, 2, 7913, 7914, 7, 86, 2, 2, 7914, 1226, 3, 2, 2, 2, 7915, 7916, 7, 80, 2, 2, 7916, 7917, 7, 81, 2, 2, 7917, 7918, 7, 70, 2, 2, 7918, 7919, 7, 71, 2, 2, 7919, 7920, 7, 85, 2, 2, 7920, 1228, 3, 2, 2, 2, 7921, 7922, 7, 80, 2, 2, 7922, 7923, 7, 81, 2, 2, 7923, 7924, 7, 71, 2, 2, 7924, 7925, 7, 90, 2, 2, 7925, 7926, 7, 82, 2, 2, 7926, 7927, 7, 67, 2, 2, 7927, 7928, 7, 80, 2, 2, 7928, 7929, 7, 70, 2, 2, 7929, 1230, 3, 2, 2, 2, 7930, 7931, 7, 80, 2, 2, 7931, 7932, 7, 81, 2, 2, 7932, 7933, 7, 80, 2, 2, 7933, 7934, 7, 97, 2, 2, 7934, 7935, 7, 86, 2, 2, 7935, 7936, 7, 84, 2, 2, 7936, 7937, 7, 67, 2, 2, 7937, 7938, 7, 80, 2, 2, 7938, 7939, 7, 85, 2, 2, 7939, 7940, 7, 67, 2, 2, 7940, 7941, 7, 69, 2, 2, 7941, 7942, 7, 86, 2, 2, 7942, 7943, 7, 71, 2, 2, 7943, 7944, 7, 70, 2, 2, 7944, 7945, 7, 97, 2, 2, 7945, 7946, 7, 67, 2, 2, 7946, 7947, 7, 69, 2, 2, 7947, 7948, 7, 69, 2, 2, 7948, 7949, 7, 71, 2, 2, 7949, 7950, 7, 85, 2, 2, 7950, 7951, 7, 85, 2, 2, 7951, 1232, 3, 2, 2, 2, 7952, 7953, 7, 80, 2, 2, 7953, 7954, 7, 81, 2, 2, 7954, 7955, 7, 84, 2, 2, 7955, 7956, 7, 71, 2, 2, 7956, 7957, 7, 69, 2, 2, 7957, 7958, 7, 81, 2, 2, 7958, 7959, 7, 79, 2, 2, 7959, 7960, 7, 82, 2, 2, 7960, 7961, 7, 87, 2, 2, 7961, 7962, 7, 86, 2, 2, 7962, 7963, 7, 71, 2, 2, 7963, 1234, 3, 2, 2, 2, 7964, 7965, 7, 80, 2, 2, 7965, 7966, 7, 81, 2, 2, 7966, 7967, 7, 84, 2, 2, 7967, 7968, 7, 71, 2, 2, 7968, 7969, 7, 69, 2, 2, 7969, 7970, 7, 81, 2, 2, 7970, 7971, 7, 88, 2, 2, 7971, 7972, 7, 71, 2, 2, 7972, 7973, 7, 84, 2, 2, 7973, 7974, 7, 91, 2, 2, 7974, 1236, 3, 2, 2, 2, 7975, 7976, 7, 80, 2, 2, 7976, 7977, 7, 81, 2, 2, 7977, 7978, 7, 89, 2, 2, 7978, 7979, 7, 67, 2, 2, 7979, 7980, 7, 75, 2, 2, 7980, 7981, 7, 86, 2, 2, 7981, 1238, 3, 2, 2, 2, 7982, 7983, 7, 80, 2, 2, 7983, 7984, 7, 86, 2, 2, 7984, 7985, 7, 75, 2, 2, 7985, 7986, 7, 78, 2, 2, 7986, 7987, 7, 71, 2, 2, 7987, 1240, 3, 2, 2, 2, 7988, 7989, 7, 80, 2, 2, 7989, 7990, 7, 87, 2, 2, 7990, 7991, 7, 79, 2, 2, 7991, 7992, 7, 67, 2, 2, 7992, 7993, 7, 80, 2, 2, 7993, 7994, 7, 81, 2, 2, 7994, 7995, 7, 70, 2, 2, 7995, 7996, 7, 71, 2, 2, 7996, 1242, 3, 2, 2, 2, 7997, 7998, 7, 80, 2, 2, 7998, 7999, 7, 87, 2, 2, 7999, 8000, 7, 79, 2, 2, 8000, 8001, 7, 68, 2, 2, 8001, 8002, 7, 71, 2, 2, 8002, 8003, 7, 84, 2, 2, 8003, 1244, 3, 2, 2, 2, 8004, 8005, 7, 80, 2, 2, 8005, 8006, 7, 87, 2, 2, 8006, 8007, 7, 79, 2, 2, 8007, 8008, 7, 71, 2, 2, 8008, 8009, 7, 84, 2, 2, 8009, 8010, 7, 75, 2, 2, 8010, 8011, 7, 69, 2, 2, 8011, 8012, 7, 97, 2, 2, 8012, 8013, 7, 84, 2, 2, 8013, 8014, 7, 81, 2, 2, 8014, 8015, 7, 87, 2, 2, 8015, 8016, 7, 80, 2, 2, 8016, 8017, 7, 70, 2, 2, 8017, 8018, 7, 67, 2, 2, 8018, 8019, 7, 68, 2, 2, 8019, 8020, 7, 81, 2, 2, 8020, 8021, 7, 84, 2, 2, 8021, 8022, 7, 86, 2, 2, 8022, 1246, 3, 2, 2, 2, 8023, 8024, 7, 81, 2, 2, 8024, 8025, 7, 68, 2, 2, 8025, 8026, 7, 76, 2, 2, 8026, 8027, 7, 71, 2, 2, 8027, 8028, 7, 69, 2, 2, 8028, 8029, 7, 86, 2, 2, 8029, 1248, 3, 2, 2, 2, 8030, 8031, 7, 81, 2, 2, 8031, 8032, 7, 72, 2, 2, 8032, 8033, 7, 72, 2, 2, 8033, 8034, 7, 78, 2, 2, 8034, 8035, 7, 75, 2, 2, 8035, 8036, 7, 80, 2, 2, 8036, 8037, 7, 71, 2, 2, 8037, 1250, 3, 2, 2, 2, 8038, 8039, 7, 81, 2, 2, 8039, 8040, 7, 72, 2, 2, 8040, 8041, 7, 72, 2, 2, 8041, 8042, 7, 85, 2, 2, 8042, 8043, 7, 71, 2, 2, 8043, 8044, 7, 86, 2, 2, 8044, 1252, 3, 2, 2, 2, 8045, 8046, 7, 81, 2, 2, 8046, 8047, 7, 78, 2, 2, 8047, 8048, 7, 70, 2, 2, 8048, 8049, 7, 97, 2, 2, 8049, 8050, 7, 67, 2, 2, 8050, 8051, 7, 69, 2, 2, 8051, 8052, 7, 69, 2, 2, 8052, 8053, 7, 81, 2, 2, 8053, 8054, 7, 87, 2, 2, 8054, 8055, 7, 80, 2, 2, 8055, 8056, 7, 86, 2, 2, 8056, 1254, 3, 2, 2, 2, 8057, 8058, 7, 81, 2, 2, 8058, 8059, 7, 80, 2, 2, 8059, 8060, 7, 78, 2, 2, 8060, 8061, 7, 75, 2, 2, 8061, 8062, 7, 80, 2, 2, 8062, 8063, 7, 71, 2, 2, 8063, 1256, 3, 2, 2, 2, 8064, 8065, 7, 81, 2, 2, 8065, 8066, 7, 80, 2, 2, 8066, 8067, 7, 78, 2, 2, 8067, 8068, 7, 91, 2, 2, 8068, 1258, 3, 2, 2, 2, 8069, 8070, 7, 81, 2, 2, 8070, 8071, 7, 82, 2, 2, 8071, 8072, 7, 71, 2, 2, 8072, 8073, 7, 80, 2, 2, 8073, 8074, 7, 97, 2, 2, 8074, 8075, 7, 71, 2, 2, 8075, 8076, 7, 90, 2, 2, 8076, 8077, 7, 75, 2, 2, 8077, 8078, 7, 85, 2, 2, 8078, 8079, 7, 86, 2, 2, 8079, 8080, 7, 75, 2, 2, 8080, 8081, 7, 80, 2, 2, 8081, 8082, 7, 73, 2, 2, 8082, 1260, 3, 2, 2, 2, 8083, 8084, 7, 81, 2, 2, 8084, 8085, 7, 82, 2, 2, 8085, 8086, 7, 86, 2, 2, 8086, 8087, 7, 75, 2, 2, 8087, 8088, 7, 79, 2, 2, 8088, 8089, 7, 75, 2, 2, 8089, 8090, 7, 85, 2, 2, 8090, 8091, 7, 86, 2, 2, 8091, 8092, 7, 75, 2, 2, 8092, 8093, 7, 69, 2, 2, 8093, 1262, 3, 2, 2, 2, 8094, 8095, 7, 81, 2, 2, 8095, 8096, 7, 82, 2, 2, 8096, 8097, 7, 86, 2, 2, 8097, 8098, 7, 75, 2, 2, 8098, 8099, 7, 79, 2, 2, 8099, 8100, 7, 75, 2, 2, 8100, 8101, 7, 92, 2, 2, 8101, 8102, 7, 71, 2, 2, 8102, 1264, 3, 2, 2, 2, 8103, 8104, 7, 81, 2, 2, 8104, 8105, 7, 87, 2, 2, 8105, 8106, 7, 86, 2, 2, 8106, 1266, 3, 2, 2, 2, 8107, 8108, 7, 81, 2, 2, 8108, 8109, 7, 87, 2, 2, 8109, 8110, 7, 86, 2, 2, 8110, 8111, 7, 82, 2, 2, 8111, 8112, 7, 87, 2, 2, 8112, 8113, 7, 86, 2, 2, 8113, 1268, 3, 2, 2, 2, 8114, 8115, 7, 81, 2, 2, 8115, 8116, 7, 88, 2, 2, 8116, 8117, 7, 71, 2, 2, 8117, 8118, 7, 84, 2, 2, 8118, 8119, 7, 84, 2, 2, 8119, 8120, 7, 75, 2, 2, 8120, 8121, 7, 70, 2, 2, 8121, 8122, 7, 71, 2, 2, 8122, 1270, 3, 2, 2, 2, 8123, 8124, 7, 81, 2, 2, 8124, 8125, 7, 89, 2, 2, 8125, 8126, 7, 80, 2, 2, 8126, 8127, 7, 71, 2, 2, 8127, 8128, 7, 84, 2, 2, 8128, 1272, 3, 2, 2, 2, 8129, 8130, 7, 82, 2, 2, 8130, 8131, 7, 67, 2, 2, 8131, 8132, 7, 73, 2, 2, 8132, 8133, 7, 71, 2, 2, 8133, 8134, 7, 97, 2, 2, 8134, 8135, 7, 88, 2, 2, 8135, 8136, 7, 71, 2, 2, 8136, 8137, 7, 84, 2, 2, 8137, 8138, 7, 75, 2, 2, 8138, 8139, 7, 72, 2, 2, 8139, 8140, 7, 91, 2, 2, 8140, 1274, 3, 2, 2, 2, 8141, 8142, 7, 82, 2, 2, 8142, 8143, 7, 67, 2, 2, 8143, 8144, 7, 84, 2, 2, 8144, 8145, 7, 67, 2, 2, 8145, 8146, 7, 79, 2, 2, 8146, 8147, 7, 71, 2, 2, 8147, 8148, 7, 86, 2, 2, 8148, 8149, 7, 71, 2, 2, 8149, 8150, 7, 84, 2, 2, 8150, 8151, 7, 75, 2, 2, 8151, 8152, 7, 92, 2, 2, 8152, 8153, 7, 67, 2, 2, 8153, 8154, 7, 86, 2, 2, 8154, 8155, 7, 75, 2, 2, 8155, 8156, 7, 81, 2, 2, 8156, 8157, 7, 80, 2, 2, 8157, 1276, 3, 2, 2, 2, 8158, 8159, 7, 82, 2, 2, 8159, 8160, 7, 67, 2, 2, 8160, 8161, 7, 84, 2, 2, 8161, 8162, 7, 86, 2, 2, 8162, 8163, 7, 75, 2, 2, 8163, 8164, 7, 86, 2, 2, 8164, 8165, 7, 75, 2, 2, 8165, 8166, 7, 81, 2, 2, 8166, 8167, 7, 80, 2, 2, 8167, 1278, 3, 2, 2, 2, 8168, 8169, 7, 82, 2, 2, 8169, 8170, 7, 67, 2, 2, 8170, 8171, 7, 84, 2, 2, 8171, 8172, 7, 86, 2, 2, 8172, 8173, 7, 75, 2, 2, 8173, 8174, 7, 86, 2, 2, 8174, 8175, 7, 75, 2, 2, 8175, 8176, 7, 81, 2, 2, 8176, 8177, 7, 80, 2, 2, 8177, 8178, 7, 85, 2, 2, 8178, 1280, 3, 2, 2, 2, 8179, 8180, 7, 82, 2, 2, 8180, 8181, 7, 67, 2, 2, 8181, 8182, 7, 84, 2, 2, 8182, 8183, 7, 86, 2, 2, 8183, 8184, 7, 80, 2, 2, 8184, 8185, 7, 71, 2, 2, 8185, 8186, 7, 84, 2, 2, 8186, 1282, 3, 2, 2, 2, 8187, 8188, 7, 82, 2, 2, 8188, 8189, 7, 67, 2, 2, 8189, 8190, 7, 86, 2, 2, 8190, 8191, 7, 74, 2, 2, 8191, 1284, 3, 2, 2, 2, 8192, 8193, 7, 82, 2, 2, 8193, 8194, 7, 81, 2, 2, 8194, 8195, 7, 75, 2, 2, 8195, 8196, 7, 85, 2, 2, 8196, 8197, 7, 81, 2, 2, 8197, 8198, 7, 80, 2, 2, 8198, 8199, 7, 97, 2, 2, 8199, 8200, 7, 79, 2, 2, 8200, 8201, 7, 71, 2, 2, 8201, 8202, 7, 85, 2, 2, 8202, 8203, 7, 85, 2, 2, 8203, 8204, 7, 67, 2, 2, 8204, 8205, 7, 73, 2, 2, 8205, 8206, 7, 71, 2, 2, 8206, 8207, 7, 97, 2, 2, 8207, 8208, 7, 74, 2, 2, 8208, 8209, 7, 67, 2, 2, 8209, 8210, 7, 80, 2, 2, 8210, 8211, 7, 70, 2, 2, 8211, 8212, 7, 78, 2, 2, 8212, 8213, 7, 75, 2, 2, 8213, 8214, 7, 80, 2, 2, 8214, 8215, 7, 73, 2, 2, 8215, 1286, 3, 2, 2, 2, 8216, 8217, 7, 82, 2, 2, 8217, 8218, 7, 81, 2, 2, 8218, 8219, 7, 81, 2, 2, 8219, 8220, 7, 78, 2, 2, 8220, 1288, 3, 2, 2, 2, 8221, 8222, 7, 82, 2, 2, 8222, 8223, 7, 81, 2, 2, 8223, 8224, 7, 84, 2, 2, 8224, 8225, 7, 86, 2, 2, 8225, 1290, 3, 2, 2, 2, 8226, 8227, 7, 82, 2, 2, 8227, 8228, 7, 84, 2, 2, 8228, 8229, 7, 71, 2, 2, 8229, 8230, 7, 69, 2, 2, 8230, 8231, 7, 71, 2, 2, 8231, 8232, 7, 70, 2, 2, 8232, 8233, 7, 75, 2, 2, 8233, 8234, 7, 80, 2, 2, 8234, 8235, 7, 73, 2, 2, 8235, 1292, 3, 2, 2, 2, 8236, 8237, 7, 82, 2, 2, 8237, 8238, 7, 84, 2, 2, 8238, 8239, 7, 75, 2, 2, 8239, 8240, 7, 79, 2, 2, 8240, 8241, 7, 67, 2, 2, 8241, 8242, 7, 84, 2, 2, 8242, 8243, 7, 91, 2, 2, 8243, 8244, 7, 97, 2, 2, 8244, 8245, 7, 84, 2, 2, 8245, 8246, 7, 81, 2, 2, 8246, 8247, 7, 78, 2, 2, 8247, 8248, 7, 71, 2, 2, 8248, 1294, 3, 2, 2, 2, 8249, 8250, 7, 82, 2, 2, 8250, 8251, 7, 84, 2, 2, 8251, 8252, 7, 75, 2, 2, 8252, 8253, 7, 81, 2, 2, 8253, 8254, 7, 84, 2, 2, 8254, 1296, 3, 2, 2, 2, 8255, 8256, 7, 82, 2, 2, 8256, 8257, 7, 84, 2, 2, 8257, 8258, 7, 75, 2, 2, 8258, 8259, 7, 81, 2, 2, 8259, 8260, 7, 84, 2, 2, 8260, 8261, 7, 75, 2, 2, 8261, 8262, 7, 86, 2, 2, 8262, 8263, 7, 91, 2, 2, 8263, 1298, 3, 2, 2, 2, 8264, 8265, 7, 82, 2, 2, 8265, 8266, 7, 84, 2, 2, 8266, 8267, 7, 75, 2, 2, 8267, 8268, 7, 81, 2, 2, 8268, 8269, 7, 84, 2, 2, 8269, 8270, 7, 75, 2, 2, 8270, 8271, 7, 86, 2, 2, 8271, 8272, 7, 91, 2, 2, 8272, 8273, 7, 97, 2, 2, 8273, 8274, 7, 78, 2, 2, 8274, 8275, 7, 71, 2, 2, 8275, 8276, 7, 88, 2, 2, 8276, 8277, 7, 71, 2, 2, 8277, 8278, 7, 78, 2, 2, 8278, 1300, 3, 2, 2, 2, 8279, 8280, 7, 82, 2, 2, 8280, 8281, 7, 84, 2, 2, 8281, 8282, 7, 75, 2, 2, 8282, 8283, 7, 88, 2, 2, 8283, 8284, 7, 67, 2, 2, 8284, 8285, 7, 86, 2, 2, 8285, 8286, 7, 71, 2, 2, 8286, 1302, 3, 2, 2, 2, 8287, 8288, 7, 82, 2, 2, 8288, 8289, 7, 84, 2, 2, 8289, 8290, 7, 75, 2, 2, 8290, 8291, 7, 88, 2, 2, 8291, 8292, 7, 67, 2, 2, 8292, 8293, 7, 86, 2, 2, 8293, 8294, 7, 71, 2, 2, 8294, 8295, 7, 97, 2, 2, 8295, 8296, 7, 77, 2, 2, 8296, 8297, 7, 71, 2, 2, 8297, 8298, 7, 91, 2, 2, 8298, 1304, 3, 2, 2, 2, 8299, 8300, 7, 82, 2, 2, 8300, 8301, 7, 84, 2, 2, 8301, 8302, 7, 75, 2, 2, 8302, 8303, 7, 88, 2, 2, 8303, 8304, 7, 75, 2, 2, 8304, 8305, 7, 78, 2, 2, 8305, 8306, 7, 71, 2, 2, 8306, 8307, 7, 73, 2, 2, 8307, 8308, 7, 71, 2, 2, 8308, 8309, 7, 85, 2, 2, 8309, 1306, 3, 2, 2, 2, 8310, 8311, 7, 82, 2, 2, 8311, 8312, 7, 84, 2, 2, 8312, 8313, 7, 81, 2, 2, 8313, 8314, 7, 69, 2, 2, 8314, 8315, 7, 71, 2, 2, 8315, 8316, 7, 70, 2, 2, 8316, 8317, 7, 87, 2, 2, 8317, 8318, 7, 84, 2, 2, 8318, 8319, 7, 71, 2, 2, 8319, 8320, 7, 97, 2, 2, 8320, 8321, 7, 80, 2, 2, 8321, 8322, 7, 67, 2, 2, 8322, 8323, 7, 79, 2, 2, 8323, 8324, 7, 71, 2, 2, 8324, 1308, 3, 2, 2, 2, 8325, 8326, 7, 82, 2, 2, 8326, 8327, 7, 84, 2, 2, 8327, 8328, 7, 81, 2, 2, 8328, 8329, 7, 82, 2, 2, 8329, 8330, 7, 71, 2, 2, 8330, 8331, 7, 84, 2, 2, 8331, 8332, 7, 86, 2, 2, 8332, 8333, 7, 91, 2, 2, 8333, 1310, 3, 2, 2, 2, 8334, 8335, 7, 82, 2, 2, 8335, 8336, 7, 84, 2, 2, 8336, 8337, 7, 81, 2, 2, 8337, 8338, 7, 88, 2, 2, 8338, 8339, 7, 75, 2, 2, 8339, 8340, 7, 70, 2, 2, 8340, 8341, 7, 71, 2, 2, 8341, 8342, 7, 84, 2, 2, 8342, 1312, 3, 2, 2, 2, 8343, 8344, 7, 82, 2, 2, 8344, 8345, 7, 84, 2, 2, 8345, 8346, 7, 81, 2, 2, 8346, 8347, 7, 88, 2, 2, 8347, 8348, 7, 75, 2, 2, 8348, 8349, 7, 70, 2, 2, 8349, 8350, 7, 71, 2, 2, 8350, 8351, 7, 84, 2, 2, 8351, 8352, 7, 97, 2, 2, 8352, 8353, 7, 77, 2, 2, 8353, 8354, 7, 71, 2, 2, 8354, 8355, 7, 91, 2, 2, 8355, 8356, 7, 97, 2, 2, 8356, 8357, 7, 80, 2, 2, 8357, 8358, 7, 67, 2, 2, 8358, 8359, 7, 79, 2, 2, 8359, 8360, 7, 71, 2, 2, 8360, 1314, 3, 2, 2, 2, 8361, 8362, 7, 83, 2, 2, 8362, 8363, 7, 87, 2, 2, 8363, 8364, 7, 71, 2, 2, 8364, 8365, 7, 84, 2, 2, 8365, 8366, 7, 91, 2, 2, 8366, 1316, 3, 2, 2, 2, 8367, 8368, 7, 83, 2, 2, 8368, 8369, 7, 87, 2, 2, 8369, 8370, 7, 71, 2, 2, 8370, 8371, 7, 87, 2, 2, 8371, 8372, 7, 71, 2, 2, 8372, 1318, 3, 2, 2, 2, 8373, 8374, 7, 83, 2, 2, 8374, 8375, 7, 87, 2, 2, 8375, 8376, 7, 71, 2, 2, 8376, 8377, 7, 87, 2, 2, 8377, 8378, 7, 71, 2, 2, 8378, 8379, 7, 97, 2, 2, 8379, 8380, 7, 70, 2, 2, 8380, 8381, 7, 71, 2, 2, 8381, 8382, 7, 78, 2, 2, 8382, 8383, 7, 67, 2, 2, 8383, 8384, 7, 91, 2, 2, 8384, 1320, 3, 2, 2, 2, 8385, 8386, 7, 83, 2, 2, 8386, 8387, 7, 87, 2, 2, 8387, 8388, 7, 81, 2, 2, 8388, 8389, 7, 86, 2, 2, 8389, 8390, 7, 71, 2, 2, 8390, 8391, 7, 70, 2, 2, 8391, 8392, 7, 97, 2, 2, 8392, 8393, 7, 75, 2, 2, 8393, 8394, 7, 70, 2, 2, 8394, 8395, 7, 71, 2, 2, 8395, 8396, 7, 80, 2, 2, 8396, 8397, 7, 86, 2, 2, 8397, 8398, 7, 75, 2, 2, 8398, 8399, 7, 72, 2, 2, 8399, 8400, 7, 75, 2, 2, 8400, 8401, 7, 71, 2, 2, 8401, 8402, 7, 84, 2, 2, 8402, 1322, 3, 2, 2, 2, 8403, 8404, 7, 84, 2, 2, 8404, 8405, 7, 67, 2, 2, 8405, 8406, 7, 80, 2, 2, 8406, 8407, 7, 73, 2, 2, 8407, 8408, 7, 71, 2, 2, 8408, 1324, 3, 2, 2, 2, 8409, 8410, 7, 84, 2, 2, 8410, 8411, 7, 67, 2, 2, 8411, 8412, 7, 80, 2, 2, 8412, 8413, 7, 77, 2, 2, 8413, 1326, 3, 2, 2, 2, 8414, 8415, 7, 84, 2, 2, 8415, 8416, 7, 69, 2, 2, 8416, 8417, 7, 52, 2, 2, 8417, 1328, 3, 2, 2, 2, 8418, 8419, 7, 84, 2, 2, 8419, 8420, 7, 69, 2, 2, 8420, 8421, 7, 54, 2, 2, 8421, 1330, 3, 2, 2, 2, 8422, 8423, 7, 84, 2, 2, 8423, 8424, 7, 69, 2, 2, 8424, 8425, 7, 54, 2, 2, 8425, 8426, 7, 97, 2, 2, 8426, 8427, 7, 51, 2, 2, 8427, 8428, 7, 52, 2, 2, 8428, 8429, 7, 58, 2, 2, 8429, 1332, 3, 2, 2, 2, 8430, 8431, 7, 84, 2, 2, 8431, 8432, 7, 71, 2, 2, 8432, 8433, 7, 67, 2, 2, 8433, 8434, 7, 70, 2, 2, 8434, 8435, 7, 97, 2, 2, 8435, 8436, 7, 69, 2, 2, 8436, 8437, 7, 81, 2, 2, 8437, 8438, 7, 79, 2, 2, 8438, 8439, 7, 79, 2, 2, 8439, 8440, 7, 75, 2, 2, 8440, 8441, 7, 86, 2, 2, 8441, 8442, 7, 86, 2, 2, 8442, 8443, 7, 71, 2, 2, 8443, 8444, 7, 70, 2, 2, 8444, 8445, 7, 97, 2, 2, 8445, 8446, 7, 85, 2, 2, 8446, 8447, 7, 80, 2, 2, 8447, 8448, 7, 67, 2, 2, 8448, 8449, 7, 82, 2, 2, 8449, 8450, 7, 85, 2, 2, 8450, 8451, 7, 74, 2, 2, 8451, 8452, 7, 81, 2, 2, 8452, 8453, 7, 86, 2, 2, 8453, 1334, 3, 2, 2, 2, 8454, 8455, 7, 84, 2, 2, 8455, 8456, 7, 71, 2, 2, 8456, 8457, 7, 67, 2, 2, 8457, 8458, 7, 70, 2, 2, 8458, 8459, 7, 97, 2, 2, 8459, 8460, 7, 81, 2, 2, 8460, 8461, 7, 80, 2, 2, 8461, 8462, 7, 78, 2, 2, 8462, 8463, 7, 91, 2, 2, 8463, 1336, 3, 2, 2, 2, 8464, 8465, 7, 84, 2, 2, 8465, 8466, 7, 71, 2, 2, 8466, 8467, 7, 67, 2, 2, 8467, 8468, 7, 70, 2, 2, 8468, 8469, 7, 97, 2, 2, 8469, 8470, 7, 81, 2, 2, 8470, 8471, 7, 80, 2, 2, 8471, 8472, 7, 78, 2, 2, 8472, 8473, 7, 91, 2, 2, 8473, 8474, 7, 97, 2, 2, 8474, 8475, 7, 84, 2, 2, 8475, 8476, 7, 81, 2, 2, 8476, 8477, 7, 87, 2, 2, 8477, 8478, 7, 86, 2, 2, 8478, 8479, 7, 75, 2, 2, 8479, 8480, 7, 80, 2, 2, 8480, 8481, 7, 73, 2, 2, 8481, 8482, 7, 97, 2, 2, 8482, 8483, 7, 78, 2, 2, 8483, 8484, 7, 75, 2, 2, 8484, 8485, 7, 85, 2, 2, 8485, 8486, 7, 86, 2, 2, 8486, 1338, 3, 2, 2, 2, 8487, 8488, 7, 84, 2, 2, 8488, 8489, 7, 71, 2, 2, 8489, 8490, 7, 67, 2, 2, 8490, 8491, 7, 70, 2, 2, 8491, 8492, 7, 97, 2, 2, 8492, 8493, 7, 89, 2, 2, 8493, 8494, 7, 84, 2, 2, 8494, 8495, 7, 75, 2, 2, 8495, 8496, 7, 86, 2, 2, 8496, 8497, 7, 71, 2, 2, 8497, 1340, 3, 2, 2, 2, 8498, 8499, 7, 84, 2, 2, 8499, 8500, 7, 71, 2, 2, 8500, 8501, 7, 67, 2, 2, 8501, 8502, 7, 70, 2, 2, 8502, 8503, 7, 81, 2, 2, 8503, 8504, 7, 80, 2, 2, 8504, 8505, 7, 78, 2, 2, 8505, 8506, 7, 91, 2, 2, 8506, 1342, 3, 2, 2, 2, 8507, 8508, 7, 84, 2, 2, 8508, 8509, 7, 71, 2, 2, 8509, 8510, 7, 68, 2, 2, 8510, 8511, 7, 87, 2, 2, 8511, 8512, 7, 75, 2, 2, 8512, 8513, 7, 78, 2, 2, 8513, 8514, 7, 70, 2, 2, 8514, 1344, 3, 2, 2, 2, 8515, 8516, 7, 84, 2, 2, 8516, 8517, 7, 71, 2, 2, 8517, 8518, 7, 69, 2, 2, 8518, 8519, 7, 71, 2, 2, 8519, 8520, 7, 75, 2, 2, 8520, 8521, 7, 88, 2, 2, 8521, 8522, 7, 71, 2, 2, 8522, 1346, 3, 2, 2, 2, 8523, 8524, 7, 84, 2, 2, 8524, 8525, 7, 71, 2, 2, 8525, 8526, 7, 69, 2, 2, 8526, 8527, 7, 81, 2, 2, 8527, 8528, 7, 79, 2, 2, 8528, 8529, 7, 82, 2, 2, 8529, 8530, 7, 75, 2, 2, 8530, 8531, 7, 78, 2, 2, 8531, 8532, 7, 71, 2, 2, 8532, 1348, 3, 2, 2, 2, 8533, 8534, 7, 84, 2, 2, 8534, 8535, 7, 71, 2, 2, 8535, 8536, 7, 69, 2, 2, 8536, 8537, 7, 81, 2, 2, 8537, 8538, 7, 88, 2, 2, 8538, 8539, 7, 71, 2, 2, 8539, 8540, 7, 84, 2, 2, 8540, 8541, 7, 91, 2, 2, 8541, 1350, 3, 2, 2, 2, 8542, 8543, 7, 84, 2, 2, 8543, 8544, 7, 71, 2, 2, 8544, 8545, 7, 69, 2, 2, 8545, 8546, 7, 87, 2, 2, 8546, 8547, 7, 84, 2, 2, 8547, 8548, 7, 85, 2, 2, 8548, 8549, 7, 75, 2, 2, 8549, 8550, 7, 88, 2, 2, 8550, 8551, 7, 71, 2, 2, 8551, 8552, 7, 97, 2, 2, 8552, 8553, 7, 86, 2, 2, 8553, 8554, 7, 84, 2, 2, 8554, 8555, 7, 75, 2, 2, 8555, 8556, 7, 73, 2, 2, 8556, 8557, 7, 73, 2, 2, 8557, 8558, 7, 71, 2, 2, 8558, 8559, 7, 84, 2, 2, 8559, 8560, 7, 85, 2, 2, 8560, 1352, 3, 2, 2, 2, 8561, 8562, 7, 84, 2, 2, 8562, 8563, 7, 71, 2, 2, 8563, 8564, 7, 78, 2, 2, 8564, 8565, 7, 67, 2, 2, 8565, 8566, 7, 86, 2, 2, 8566, 8567, 7, 75, 2, 2, 8567, 8568, 7, 88, 2, 2, 8568, 8569, 7, 71, 2, 2, 8569, 1354, 3, 2, 2, 2, 8570, 8571, 7, 84, 2, 2, 8571, 8572, 7, 71, 2, 2, 8572, 8573, 7, 79, 2, 2, 8573, 8574, 7, 81, 2, 2, 8574, 8575, 7, 86, 2, 2, 8575, 8576, 7, 71, 2, 2, 8576, 1356, 3, 2, 2, 2, 8577, 8578, 7, 84, 2, 2, 8578, 8579, 7, 71, 2, 2, 8579, 8580, 7, 79, 2, 2, 8580, 8581, 7, 81, 2, 2, 8581, 8582, 7, 86, 2, 2, 8582, 8583, 7, 71, 2, 2, 8583, 8584, 7, 97, 2, 2, 8584, 8585, 7, 85, 2, 2, 8585, 8586, 7, 71, 2, 2, 8586, 8587, 7, 84, 2, 2, 8587, 8588, 7, 88, 2, 2, 8588, 8589, 7, 75, 2, 2, 8589, 8590, 7, 69, 2, 2, 8590, 8591, 7, 71, 2, 2, 8591, 8592, 7, 97, 2, 2, 8592, 8593, 7, 80, 2, 2, 8593, 8594, 7, 67, 2, 2, 8594, 8595, 7, 79, 2, 2, 8595, 8596, 7, 71, 2, 2, 8596, 1358, 3, 2, 2, 2, 8597, 8598, 7, 84, 2, 2, 8598, 8599, 7, 71, 2, 2, 8599, 8600, 7, 79, 2, 2, 8600, 8601, 7, 81, 2, 2, 8601, 8602, 7, 88, 2, 2, 8602, 8603, 7, 71, 2, 2, 8603, 1360, 3, 2, 2, 2, 8604, 8605, 7, 84, 2, 2, 8605, 8606, 7, 71, 2, 2, 8606, 8607, 7, 81, 2, 2, 8607, 8608, 7, 84, 2, 2, 8608, 8609, 7, 73, 2, 2, 8609, 8610, 7, 67, 2, 2, 8610, 8611, 7, 80, 2, 2, 8611, 8612, 7, 75, 2, 2, 8612, 8613, 7, 92, 2, 2, 8613, 8614, 7, 71, 2, 2, 8614, 1362, 3, 2, 2, 2, 8615, 8616, 7, 84, 2, 2, 8616, 8617, 7, 71, 2, 2, 8617, 8618, 7, 82, 2, 2, 8618, 8619, 7, 71, 2, 2, 8619, 8620, 7, 67, 2, 2, 8620, 8621, 7, 86, 2, 2, 8621, 8622, 7, 67, 2, 2, 8622, 8623, 7, 68, 2, 2, 8623, 8624, 7, 78, 2, 2, 8624, 8625, 7, 71, 2, 2, 8625, 1364, 3, 2, 2, 2, 8626, 8627, 7, 84, 2, 2, 8627, 8628, 7, 71, 2, 2, 8628, 8629, 7, 82, 2, 2, 8629, 8630, 7, 78, 2, 2, 8630, 8631, 7, 75, 2, 2, 8631, 8632, 7, 69, 2, 2, 8632, 8633, 7, 67, 2, 2, 8633, 1366, 3, 2, 2, 2, 8634, 8635, 7, 84, 2, 2, 8635, 8636, 7, 71, 2, 2, 8636, 8637, 7, 83, 2, 2, 8637, 8638, 7, 87, 2, 2, 8638, 8639, 7, 71, 2, 2, 8639, 8640, 7, 85, 2, 2, 8640, 8641, 7, 86, 2, 2, 8641, 8642, 7, 97, 2, 2, 8642, 8643, 7, 79, 2, 2, 8643, 8644, 7, 67, 2, 2, 8644, 8645, 7, 90, 2, 2, 8645, 8646, 7, 97, 2, 2, 8646, 8647, 7, 69, 2, 2, 8647, 8648, 7, 82, 2, 2, 8648, 8649, 7, 87, 2, 2, 8649, 8650, 7, 97, 2, 2, 8650, 8651, 7, 86, 2, 2, 8651, 8652, 7, 75, 2, 2, 8652, 8653, 7, 79, 2, 2, 8653, 8654, 7, 71, 2, 2, 8654, 8655, 7, 97, 2, 2, 8655, 8656, 7, 85, 2, 2, 8656, 8657, 7, 71, 2, 2, 8657, 8658, 7, 69, 2, 2, 8658, 1368, 3, 2, 2, 2, 8659, 8660, 7, 84, 2, 2, 8660, 8661, 7, 71, 2, 2, 8661, 8662, 7, 83, 2, 2, 8662, 8663, 7, 87, 2, 2, 8663, 8664, 7, 71, 2, 2, 8664, 8665, 7, 85, 2, 2, 8665, 8666, 7, 86, 2, 2, 8666, 8667, 7, 97, 2, 2, 8667, 8668, 7, 79, 2, 2, 8668, 8669, 7, 67, 2, 2, 8669, 8670, 7, 90, 2, 2, 8670, 8671, 7, 97, 2, 2, 8671, 8672, 7, 79, 2, 2, 8672, 8673, 7, 71, 2, 2, 8673, 8674, 7, 79, 2, 2, 8674, 8675, 7, 81, 2, 2, 8675, 8676, 7, 84, 2, 2, 8676, 8677, 7, 91, 2, 2, 8677, 8678, 7, 97, 2, 2, 8678, 8679, 7, 73, 2, 2, 8679, 8680, 7, 84, 2, 2, 8680, 8681, 7, 67, 2, 2, 8681, 8682, 7, 80, 2, 2, 8682, 8683, 7, 86, 2, 2, 8683, 8684, 7, 97, 2, 2, 8684, 8685, 7, 82, 2, 2, 8685, 8686, 7, 71, 2, 2, 8686, 8687, 7, 84, 2, 2, 8687, 8688, 7, 69, 2, 2, 8688, 8689, 7, 71, 2, 2, 8689, 8690, 7, 80, 2, 2, 8690, 8691, 7, 86, 2, 2, 8691, 1370, 3, 2, 2, 2, 8692, 8693, 7, 84, 2, 2, 8693, 8694, 7, 71, 2, 2, 8694, 8695, 7, 83, 2, 2, 8695, 8696, 7, 87, 2, 2, 8696, 8697, 7, 71, 2, 2, 8697, 8698, 7, 85, 2, 2, 8698, 8699, 7, 86, 2, 2, 8699, 8700, 7, 97, 2, 2, 8700, 8701, 7, 79, 2, 2, 8701, 8702, 7, 71, 2, 2, 8702, 8703, 7, 79, 2, 2, 8703, 8704, 7, 81, 2, 2, 8704, 8705, 7, 84, 2, 2, 8705, 8706, 7, 91, 2, 2, 8706, 8707, 7, 97, 2, 2, 8707, 8708, 7, 73, 2, 2, 8708, 8709, 7, 84, 2, 2, 8709, 8710, 7, 67, 2, 2, 8710, 8711, 7, 80, 2, 2, 8711, 8712, 7, 86, 2, 2, 8712, 8713, 7, 97, 2, 2, 8713, 8714, 7, 86, 2, 2, 8714, 8715, 7, 75, 2, 2, 8715, 8716, 7, 79, 2, 2, 8716, 8717, 7, 71, 2, 2, 8717, 8718, 7, 81, 2, 2, 8718, 8719, 7, 87, 2, 2, 8719, 8720, 7, 86, 2, 2, 8720, 8721, 7, 97, 2, 2, 8721, 8722, 7, 85, 2, 2, 8722, 8723, 7, 71, 2, 2, 8723, 8724, 7, 69, 2, 2, 8724, 1372, 3, 2, 2, 2, 8725, 8726, 7, 84, 2, 2, 8726, 8727, 7, 71, 2, 2, 8727, 8728, 7, 83, 2, 2, 8728, 8729, 7, 87, 2, 2, 8729, 8730, 7, 75, 2, 2, 8730, 8731, 7, 84, 2, 2, 8731, 8732, 7, 71, 2, 2, 8732, 8733, 7, 70, 2, 2, 8733, 8734, 7, 97, 2, 2, 8734, 8735, 7, 85, 2, 2, 8735, 8736, 7, 91, 2, 2, 8736, 8737, 7, 80, 2, 2, 8737, 8738, 7, 69, 2, 2, 8738, 8739, 7, 74, 2, 2, 8739, 8740, 7, 84, 2, 2, 8740, 8741, 7, 81, 2, 2, 8741, 8742, 7, 80, 2, 2, 8742, 8743, 7, 75, 2, 2, 8743, 8744, 7, 92, 2, 2, 8744, 8745, 7, 71, 2, 2, 8745, 8746, 7, 70, 2, 2, 8746, 8747, 7, 97, 2, 2, 8747, 8748, 7, 85, 2, 2, 8748, 8749, 7, 71, 2, 2, 8749, 8750, 7, 69, 2, 2, 8750, 8751, 7, 81, 2, 2, 8751, 8752, 7, 80, 2, 2, 8752, 8753, 7, 70, 2, 2, 8753, 8754, 7, 67, 2, 2, 8754, 8755, 7, 84, 2, 2, 8755, 8756, 7, 75, 2, 2, 8756, 8757, 7, 71, 2, 2, 8757, 8758, 7, 85, 2, 2, 8758, 8759, 7, 97, 2, 2, 8759, 8760, 7, 86, 2, 2, 8760, 8761, 7, 81, 2, 2, 8761, 8762, 7, 97, 2, 2, 8762, 8763, 7, 69, 2, 2, 8763, 8764, 7, 81, 2, 2, 8764, 8765, 7, 79, 2, 2, 8765, 8766, 7, 79, 2, 2, 8766, 8767, 7, 75, 2, 2, 8767, 8768, 7, 86, 2, 2, 8768, 1374, 3, 2, 2, 2, 8769, 8770, 7, 84, 2, 2, 8770, 8771, 7, 71, 2, 2, 8771, 8772, 7, 85, 2, 2, 8772, 8773, 7, 71, 2, 2, 8773, 8774, 7, 84, 2, 2, 8774, 8775, 7, 88, 2, 2, 8775, 8776, 7, 71, 2, 2, 8776, 8777, 7, 97, 2, 2, 8777, 8778, 7, 70, 2, 2, 8778, 8779, 7, 75, 2, 2, 8779, 8780, 7, 85, 2, 2, 8780, 8781, 7, 77, 2, 2, 8781, 8782, 7, 97, 2, 2, 8782, 8783, 7, 85, 2, 2, 8783, 8784, 7, 82, 2, 2, 8784, 8785, 7, 67, 2, 2, 8785, 8786, 7, 69, 2, 2, 8786, 8787, 7, 71, 2, 2, 8787, 1376, 3, 2, 2, 2, 8788, 8789, 7, 84, 2, 2, 8789, 8790, 7, 71, 2, 2, 8790, 8791, 7, 85, 2, 2, 8791, 8792, 7, 81, 2, 2, 8792, 8793, 7, 87, 2, 2, 8793, 8794, 7, 84, 2, 2, 8794, 8795, 7, 69, 2, 2, 8795, 8796, 7, 71, 2, 2, 8796, 1378, 3, 2, 2, 2, 8797, 8798, 7, 84, 2, 2, 8798, 8799, 7, 71, 2, 2, 8799, 8800, 7, 85, 2, 2, 8800, 8801, 7, 81, 2, 2, 8801, 8802, 7, 87, 2, 2, 8802, 8803, 7, 84, 2, 2, 8803, 8804, 7, 69, 2, 2, 8804, 8805, 7, 71, 2, 2, 8805, 8806, 7, 97, 2, 2, 8806, 8807, 7, 79, 2, 2, 8807, 8808, 7, 67, 2, 2, 8808, 8809, 7, 80, 2, 2, 8809, 8810, 7, 67, 2, 2, 8810, 8811, 7, 73, 2, 2, 8811, 8812, 7, 71, 2, 2, 8812, 8813, 7, 84, 2, 2, 8813, 8814, 7, 97, 2, 2, 8814, 8815, 7, 78, 2, 2, 8815, 8816, 7, 81, 2, 2, 8816, 8817, 7, 69, 2, 2, 8817, 8818, 7, 67, 2, 2, 8818, 8819, 7, 86, 2, 2, 8819, 8820, 7, 75, 2, 2, 8820, 8821, 7, 81, 2, 2, 8821, 8822, 7, 80, 2, 2, 8822, 1380, 3, 2, 2, 2, 8823, 8824, 7, 84, 2, 2, 8824, 8825, 7, 71, 2, 2, 8825, 8826, 7, 85, 2, 2, 8826, 8827, 7, 86, 2, 2, 8827, 8828, 7, 84, 2, 2, 8828, 8829, 7, 75, 2, 2, 8829, 8830, 7, 69, 2, 2, 8830, 8831, 7, 86, 2, 2, 8831, 8832, 7, 71, 2, 2, 8832, 8833, 7, 70, 2, 2, 8833, 8834, 7, 97, 2, 2, 8834, 8835, 7, 87, 2, 2, 8835, 8836, 7, 85, 2, 2, 8836, 8837, 7, 71, 2, 2, 8837, 8838, 7, 84, 2, 2, 8838, 1382, 3, 2, 2, 2, 8839, 8840, 7, 84, 2, 2, 8840, 8841, 7, 71, 2, 2, 8841, 8842, 7, 86, 2, 2, 8842, 8843, 7, 71, 2, 2, 8843, 8844, 7, 80, 2, 2, 8844, 8845, 7, 86, 2, 2, 8845, 8846, 7, 75, 2, 2, 8846, 8847, 7, 81, 2, 2, 8847, 8848, 7, 80, 2, 2, 8848, 1384, 3, 2, 2, 2, 8849, 8850, 7, 84, 2, 2, 8850, 8851, 7, 81, 2, 2, 8851, 8852, 7, 68, 2, 2, 8852, 8853, 7, 87, 2, 2, 8853, 8854, 7, 85, 2, 2, 8854, 8855, 7, 86, 2, 2, 8855, 1386, 3, 2, 2, 2, 8856, 8857, 7, 84, 2, 2, 8857, 8858, 7, 81, 2, 2, 8858, 8859, 7, 81, 2, 2, 8859, 8860, 7, 86, 2, 2, 8860, 1388, 3, 2, 2, 2, 8861, 8862, 7, 84, 2, 2, 8862, 8863, 7, 81, 2, 2, 8863, 8864, 7, 87, 2, 2, 8864, 8865, 7, 86, 2, 2, 8865, 8866, 7, 71, 2, 2, 8866, 1390, 3, 2, 2, 2, 8867, 8868, 7, 84, 2, 2, 8868, 8869, 7, 81, 2, 2, 8869, 8870, 7, 89, 2, 2, 8870, 1392, 3, 2, 2, 2, 8871, 8872, 7, 84, 2, 2, 8872, 8873, 7, 81, 2, 2, 8873, 8874, 7, 89, 2, 2, 8874, 8875, 7, 97, 2, 2, 8875, 8876, 7, 80, 2, 2, 8876, 8877, 7, 87, 2, 2, 8877, 8878, 7, 79, 2, 2, 8878, 8879, 7, 68, 2, 2, 8879, 8880, 7, 71, 2, 2, 8880, 8881, 7, 84, 2, 2, 8881, 1394, 3, 2, 2, 2, 8882, 8883, 7, 84, 2, 2, 8883, 8884, 7, 81, 2, 2, 8884, 8885, 7, 89, 2, 2, 8885, 8886, 7, 73, 2, 2, 8886, 8887, 7, 87, 2, 2, 8887, 8888, 7, 75, 2, 2, 8888, 8889, 7, 70, 2, 2, 8889, 1396, 3, 2, 2, 2, 8890, 8891, 7, 84, 2, 2, 8891, 8892, 7, 81, 2, 2, 8892, 8893, 7, 89, 2, 2, 8893, 8894, 7, 85, 2, 2, 8894, 1398, 3, 2, 2, 2, 8895, 8896, 7, 85, 2, 2, 8896, 8897, 7, 67, 2, 2, 8897, 8898, 7, 79, 2, 2, 8898, 8899, 7, 82, 2, 2, 8899, 8900, 7, 78, 2, 2, 8900, 8901, 7, 71, 2, 2, 8901, 1400, 3, 2, 2, 2, 8902, 8903, 7, 85, 2, 2, 8903, 8904, 7, 69, 2, 2, 8904, 8905, 7, 74, 2, 2, 8905, 8906, 7, 71, 2, 2, 8906, 8907, 7, 79, 2, 2, 8907, 8908, 7, 67, 2, 2, 8908, 8909, 7, 68, 2, 2, 8909, 8910, 7, 75, 2, 2, 8910, 8911, 7, 80, 2, 2, 8911, 8912, 7, 70, 2, 2, 8912, 8913, 7, 75, 2, 2, 8913, 8914, 7, 80, 2, 2, 8914, 8915, 7, 73, 2, 2, 8915, 1402, 3, 2, 2, 2, 8916, 8917, 7, 85, 2, 2, 8917, 8918, 7, 69, 2, 2, 8918, 8919, 7, 81, 2, 2, 8919, 8920, 7, 82, 2, 2, 8920, 8921, 7, 71, 2, 2, 8921, 8922, 7, 70, 2, 2, 8922, 1404, 3, 2, 2, 2, 8923, 8924, 7, 85, 2, 2, 8924, 8925, 7, 69, 2, 2, 8925, 8926, 7, 84, 2, 2, 8926, 8927, 7, 81, 2, 2, 8927, 8928, 7, 78, 2, 2, 8928, 8929, 7, 78, 2, 2, 8929, 1406, 3, 2, 2, 2, 8930, 8931, 7, 85, 2, 2, 8931, 8932, 7, 69, 2, 2, 8932, 8933, 7, 84, 2, 2, 8933, 8934, 7, 81, 2, 2, 8934, 8935, 7, 78, 2, 2, 8935, 8936, 7, 78, 2, 2, 8936, 8937, 7, 97, 2, 2, 8937, 8938, 7, 78, 2, 2, 8938, 8939, 7, 81, 2, 2, 8939, 8940, 7, 69, 2, 2, 8940, 8941, 7, 77, 2, 2, 8941, 8942, 7, 85, 2, 2, 8942, 1408, 3, 2, 2, 2, 8943, 8944, 7, 85, 2, 2, 8944, 8945, 7, 71, 2, 2, 8945, 8946, 7, 67, 2, 2, 8946, 8947, 7, 84, 2, 2, 8947, 8948, 7, 69, 2, 2, 8948, 8949, 7, 74, 2, 2, 8949, 1410, 3, 2, 2, 2, 8950, 8951, 7, 85, 2, 2, 8951, 8952, 7, 71, 2, 2, 8952, 8953, 7, 69, 2, 2, 8953, 8954, 7, 81, 2, 2, 8954, 8955, 7, 80, 2, 2, 8955, 8956, 7, 70, 2, 2, 8956, 8957, 7, 67, 2, 2, 8957, 8958, 7, 84, 2, 2, 8958, 8959, 7, 91, 2, 2, 8959, 1412, 3, 2, 2, 2, 8960, 8961, 7, 85, 2, 2, 8961, 8962, 7, 71, 2, 2, 8962, 8963, 7, 69, 2, 2, 8963, 8964, 7, 81, 2, 2, 8964, 8965, 7, 80, 2, 2, 8965, 8966, 7, 70, 2, 2, 8966, 8967, 7, 67, 2, 2, 8967, 8968, 7, 84, 2, 2, 8968, 8969, 7, 91, 2, 2, 8969, 8970, 7, 97, 2, 2, 8970, 8971, 7, 81, 2, 2, 8971, 8972, 7, 80, 2, 2, 8972, 8973, 7, 78, 2, 2, 8973, 8974, 7, 91, 2, 2, 8974, 1414, 3, 2, 2, 2, 8975, 8976, 7, 85, 2, 2, 8976, 8977, 7, 71, 2, 2, 8977, 8978, 7, 69, 2, 2, 8978, 8979, 7, 81, 2, 2, 8979, 8980, 7, 80, 2, 2, 8980, 8981, 7, 70, 2, 2, 8981, 8982, 7, 67, 2, 2, 8982, 8983, 7, 84, 2, 2, 8983, 8984, 7, 91, 2, 2, 8984, 8985, 7, 97, 2, 2, 8985, 8986, 7, 84, 2, 2, 8986, 8987, 7, 81, 2, 2, 8987, 8988, 7, 78, 2, 2, 8988, 8989, 7, 71, 2, 2, 8989, 1416, 3, 2, 2, 2, 8990, 8991, 7, 85, 2, 2, 8991, 8992, 7, 71, 2, 2, 8992, 8993, 7, 69, 2, 2, 8993, 8994, 7, 81, 2, 2, 8994, 8995, 7, 80, 2, 2, 8995, 8996, 7, 70, 2, 2, 8996, 8997, 7, 85, 2, 2, 8997, 1418, 3, 2, 2, 2, 8998, 8999, 7, 85, 2, 2, 8999, 9000, 7, 71, 2, 2, 9000, 9001, 7, 69, 2, 2, 9001, 9002, 7, 84, 2, 2, 9002, 9003, 7, 71, 2, 2, 9003, 9004, 7, 86, 2, 2, 9004, 1420, 3, 2, 2, 2, 9005, 9006, 7, 85, 2, 2, 9006, 9007, 7, 71, 2, 2, 9007, 9008, 7, 69, 2, 2, 9008, 9009, 7, 87, 2, 2, 9009, 9010, 7, 84, 2, 2, 9010, 9011, 7, 75, 2, 2, 9011, 9012, 7, 86, 2, 2, 9012, 9013, 7, 91, 2, 2, 9013, 1422, 3, 2, 2, 2, 9014, 9015, 7, 85, 2, 2, 9015, 9016, 7, 71, 2, 2, 9016, 9017, 7, 69, 2, 2, 9017, 9018, 7, 87, 2, 2, 9018, 9019, 7, 84, 2, 2, 9019, 9020, 7, 75, 2, 2, 9020, 9021, 7, 86, 2, 2, 9021, 9022, 7, 91, 2, 2, 9022, 9023, 7, 97, 2, 2, 9023, 9024, 7, 78, 2, 2, 9024, 9025, 7, 81, 2, 2, 9025, 9026, 7, 73, 2, 2, 9026, 1424, 3, 2, 2, 2, 9027, 9028, 7, 85, 2, 2, 9028, 9029, 7, 71, 2, 2, 9029, 9030, 7, 71, 2, 2, 9030, 9031, 7, 70, 2, 2, 9031, 9032, 7, 75, 2, 2, 9032, 9033, 7, 80, 2, 2, 9033, 9034, 7, 73, 2, 2, 9034, 9035, 7, 97, 2, 2, 9035, 9036, 7, 79, 2, 2, 9036, 9037, 7, 81, 2, 2, 9037, 9038, 7, 70, 2, 2, 9038, 9039, 7, 71, 2, 2, 9039, 1426, 3, 2, 2, 2, 9040, 9041, 7, 85, 2, 2, 9041, 9042, 7, 71, 2, 2, 9042, 9043, 7, 78, 2, 2, 9043, 9044, 7, 72, 2, 2, 9044, 1428, 3, 2, 2, 2, 9045, 9046, 7, 85, 2, 2, 9046, 9047, 7, 71, 2, 2, 9047, 9048, 7, 79, 2, 2, 9048, 9049, 7, 75, 2, 2, 9049, 9050, 7, 97, 2, 2, 9050, 9051, 7, 85, 2, 2, 9051, 9052, 7, 71, 2, 2, 9052, 9053, 7, 80, 2, 2, 9053, 9054, 7, 85, 2, 2, 9054, 9055, 7, 75, 2, 2, 9055, 9056, 7, 86, 2, 2, 9056, 9057, 7, 75, 2, 2, 9057, 9058, 7, 88, 2, 2, 9058, 9059, 7, 71, 2, 2, 9059, 1430, 3, 2, 2, 2, 9060, 9061, 7, 85, 2, 2, 9061, 9062, 7, 71, 2, 2, 9062, 9063, 7, 80, 2, 2, 9063, 9064, 7, 70, 2, 2, 9064, 1432, 3, 2, 2, 2, 9065, 9066, 7, 85, 2, 2, 9066, 9067, 7, 71, 2, 2, 9067, 9068, 7, 80, 2, 2, 9068, 9069, 7, 86, 2, 2, 9069, 1434, 3, 2, 2, 2, 9070, 9071, 7, 85, 2, 2, 9071, 9072, 7, 71, 2, 2, 9072, 9073, 7, 83, 2, 2, 9073, 9074, 7, 87, 2, 2, 9074, 9075, 7, 71, 2, 2, 9075, 9076, 7, 80, 2, 2, 9076, 9077, 7, 69, 2, 2, 9077, 9078, 7, 71, 2, 2, 9078, 1436, 3, 2, 2, 2, 9079, 9080, 7, 85, 2, 2, 9080, 9081, 7, 71, 2, 2, 9081, 9082, 7, 84, 2, 2, 9082, 9083, 7, 75, 2, 2, 9083, 9084, 7, 67, 2, 2, 9084, 9085, 7, 78, 2, 2, 9085, 9086, 7, 75, 2, 2, 9086, 9087, 7, 92, 2, 2, 9087, 9088, 7, 67, 2, 2, 9088, 9089, 7, 68, 2, 2, 9089, 9090, 7, 78, 2, 2, 9090, 9091, 7, 71, 2, 2, 9091, 1438, 3, 2, 2, 2, 9092, 9093, 7, 85, 2, 2, 9093, 9094, 7, 71, 2, 2, 9094, 9095, 7, 85, 2, 2, 9095, 9096, 7, 85, 2, 2, 9096, 9097, 7, 75, 2, 2, 9097, 9098, 7, 81, 2, 2, 9098, 9099, 7, 80, 2, 2, 9099, 9100, 7, 97, 2, 2, 9100, 9101, 7, 86, 2, 2, 9101, 9102, 7, 75, 2, 2, 9102, 9103, 7, 79, 2, 2, 9103, 9104, 7, 71, 2, 2, 9104, 9105, 7, 81, 2, 2, 9105, 9106, 7, 87, 2, 2, 9106, 9107, 7, 86, 2, 2, 9107, 1440, 3, 2, 2, 2, 9108, 9109, 7, 85, 2, 2, 9109, 9110, 7, 71, 2, 2, 9110, 9111, 7, 86, 2, 2, 9111, 9112, 7, 71, 2, 2, 9112, 9113, 7, 84, 2, 2, 9113, 9114, 7, 84, 2, 2, 9114, 9115, 7, 81, 2, 2, 9115, 9116, 7, 84, 2, 2, 9116, 1442, 3, 2, 2, 2, 9117, 9118, 7, 85, 2, 2, 9118, 9119, 7, 74, 2, 2, 9119, 9120, 7, 67, 2, 2, 9120, 9121, 7, 84, 2, 2, 9121, 9122, 7, 71, 2, 2, 9122, 1444, 3, 2, 2, 2, 9123, 9124, 7, 85, 2, 2, 9124, 9125, 7, 74, 2, 2, 9125, 9126, 7, 81, 2, 2, 9126, 9127, 7, 89, 2, 2, 9127, 9128, 7, 82, 2, 2, 9128, 9129, 7, 78, 2, 2, 9129, 9130, 7, 67, 2, 2, 9130, 9131, 7, 80, 2, 2, 9131, 1446, 3, 2, 2, 2, 9132, 9133, 7, 85, 2, 2, 9133, 9134, 7, 75, 2, 2, 9134, 9135, 7, 73, 2, 2, 9135, 9136, 7, 80, 2, 2, 9136, 9137, 7, 67, 2, 2, 9137, 9138, 7, 86, 2, 2, 9138, 9139, 7, 87, 2, 2, 9139, 9140, 7, 84, 2, 2, 9140, 9141, 7, 71, 2, 2, 9141, 1448, 3, 2, 2, 2, 9142, 9143, 7, 85, 2, 2, 9143, 9144, 7, 75, 2, 2, 9144, 9145, 7, 79, 2, 2, 9145, 9146, 7, 82, 2, 2, 9146, 9147, 7, 78, 2, 2, 9147, 9148, 7, 71, 2, 2, 9148, 1450, 3, 2, 2, 2, 9149, 9150, 7, 85, 2, 2, 9150, 9151, 7, 75, 2, 2, 9151, 9152, 7, 80, 2, 2, 9152, 9153, 7, 73, 2, 2, 9153, 9154, 7, 78, 2, 2, 9154, 9155, 7, 71, 2, 2, 9155, 9156, 7, 97, 2, 2, 9156, 9157, 7, 87, 2, 2, 9157, 9158, 7, 85, 2, 2, 9158, 9159, 7, 71, 2, 2, 9159, 9160, 7, 84, 2, 2, 9160, 1452, 3, 2, 2, 2, 9161, 9162, 7, 85, 2, 2, 9162, 9163, 7, 75, 2, 2, 9163, 9164, 7, 92, 2, 2, 9164, 9165, 7, 71, 2, 2, 9165, 1454, 3, 2, 2, 2, 9166, 9167, 7, 85, 2, 2, 9167, 9168, 7, 79, 2, 2, 9168, 9169, 7, 67, 2, 2, 9169, 9170, 7, 78, 2, 2, 9170, 9171, 7, 78, 2, 2, 9171, 9172, 7, 75, 2, 2, 9172, 9173, 7, 80, 2, 2, 9173, 9174, 7, 86, 2, 2, 9174, 1456, 3, 2, 2, 2, 9175, 9176, 7, 85, 2, 2, 9176, 9177, 7, 80, 2, 2, 9177, 9178, 7, 67, 2, 2, 9178, 9179, 7, 82, 2, 2, 9179, 9180, 7, 85, 2, 2, 9180, 9181, 7, 74, 2, 2, 9181, 9182, 7, 81, 2, 2, 9182, 9183, 7, 86, 2, 2, 9183, 1458, 3, 2, 2, 2, 9184, 9185, 7, 85, 2, 2, 9185, 9186, 7, 82, 2, 2, 9186, 9187, 7, 67, 2, 2, 9187, 9188, 7, 86, 2, 2, 9188, 9189, 7, 75, 2, 2, 9189, 9190, 7, 67, 2, 2, 9190, 9191, 7, 78, 2, 2, 9191, 9192, 7, 97, 2, 2, 9192, 9193, 7, 89, 2, 2, 9193, 9194, 7, 75, 2, 2, 9194, 9195, 7, 80, 2, 2, 9195, 9196, 7, 70, 2, 2, 9196, 9197, 7, 81, 2, 2, 9197, 9198, 7, 89, 2, 2, 9198, 9199, 7, 97, 2, 2, 9199, 9200, 7, 79, 2, 2, 9200, 9201, 7, 67, 2, 2, 9201, 9202, 7, 90, 2, 2, 9202, 9203, 7, 97, 2, 2, 9203, 9204, 7, 69, 2, 2, 9204, 9205, 7, 71, 2, 2, 9205, 9206, 7, 78, 2, 2, 9206, 9207, 7, 78, 2, 2, 9207, 9208, 7, 85, 2, 2, 9208, 1460, 3, 2, 2, 2, 9209, 9210, 7, 85, 2, 2, 9210, 9211, 7, 86, 2, 2, 9211, 9212, 7, 67, 2, 2, 9212, 9213, 7, 80, 2, 2, 9213, 9214, 7, 70, 2, 2, 9214, 9215, 7, 68, 2, 2, 9215, 9216, 7, 91, 2, 2, 9216, 1462, 3, 2, 2, 2, 9217, 9218, 7, 85, 2, 2, 9218, 9219, 7, 86, 2, 2, 9219, 9220, 7, 67, 2, 2, 9220, 9221, 7, 84, 2, 2, 9221, 9222, 7, 86, 2, 2, 9222, 9223, 7, 97, 2, 2, 9223, 9224, 7, 70, 2, 2, 9224, 9225, 7, 67, 2, 2, 9225, 9226, 7, 86, 2, 2, 9226, 9227, 7, 71, 2, 2, 9227, 1464, 3, 2, 2, 2, 9228, 9229, 7, 85, 2, 2, 9229, 9230, 7, 86, 2, 2, 9230, 9231, 7, 67, 2, 2, 9231, 9232, 7, 86, 2, 2, 9232, 9233, 7, 75, 2, 2, 9233, 9234, 7, 69, 2, 2, 9234, 1466, 3, 2, 2, 2, 9235, 9236, 7, 85, 2, 2, 9236, 9237, 7, 86, 2, 2, 9237, 9238, 7, 67, 2, 2, 9238, 9239, 7, 86, 2, 2, 9239, 9240, 7, 85, 2, 2, 9240, 9241, 7, 97, 2, 2, 9241, 9242, 7, 85, 2, 2, 9242, 9243, 7, 86, 2, 2, 9243, 9244, 7, 84, 2, 2, 9244, 9245, 7, 71, 2, 2, 9245, 9246, 7, 67, 2, 2, 9246, 9247, 7, 79, 2, 2, 9247, 1468, 3, 2, 2, 2, 9248, 9249, 7, 85, 2, 2, 9249, 9250, 7, 86, 2, 2, 9250, 9251, 7, 67, 2, 2, 9251, 9252, 7, 86, 2, 2, 9252, 9253, 7, 87, 2, 2, 9253, 9254, 7, 85, 2, 2, 9254, 1470, 3, 2, 2, 2, 9255, 9256, 7, 85, 2, 2, 9256, 9257, 7, 86, 2, 2, 9257, 9258, 7, 67, 2, 2, 9258, 9259, 7, 86, 2, 2, 9259, 9260, 7, 87, 2, 2, 9260, 9261, 7, 85, 2, 2, 9261, 9262, 7, 81, 2, 2, 9262, 9263, 7, 80, 2, 2, 9263, 9264, 7, 78, 2, 2, 9264, 9265, 7, 91, 2, 2, 9265, 1472, 3, 2, 2, 2, 9266, 9267, 7, 85, 2, 2, 9267, 9268, 7, 86, 2, 2, 9268, 9269, 7, 70, 2, 2, 9269, 9270, 7, 71, 2, 2, 9270, 9271, 7, 88, 2, 2, 9271, 1474, 3, 2, 2, 2, 9272, 9273, 7, 85, 2, 2, 9273, 9274, 7, 86, 2, 2, 9274, 9275, 7, 70, 2, 2, 9275, 9276, 7, 71, 2, 2, 9276, 9277, 7, 88, 2, 2, 9277, 9278, 7, 82, 2, 2, 9278, 1476, 3, 2, 2, 2, 9279, 9280, 7, 85, 2, 2, 9280, 9281, 7, 86, 2, 2, 9281, 9282, 7, 81, 2, 2, 9282, 9283, 7, 82, 2, 2, 9283, 9284, 7, 78, 2, 2, 9284, 9285, 7, 75, 2, 2, 9285, 9286, 7, 85, 2, 2, 9286, 9287, 7, 86, 2, 2, 9287, 1478, 3, 2, 2, 2, 9288, 9289, 7, 85, 2, 2, 9289, 9290, 7, 86, 2, 2, 9290, 9291, 7, 84, 2, 2, 9291, 9292, 7, 75, 2, 2, 9292, 9293, 7, 80, 2, 2, 9293, 9294, 7, 73, 2, 2, 9294, 9295, 7, 97, 2, 2, 9295, 9296, 7, 67, 2, 2, 9296, 9297, 7, 73, 2, 2, 9297, 9298, 7, 73, 2, 2, 9298, 1480, 3, 2, 2, 2, 9299, 9300, 7, 85, 2, 2, 9300, 9301, 7, 86, 2, 2, 9301, 9302, 7, 87, 2, 2, 9302, 9303, 7, 72, 2, 2, 9303, 9304, 7, 72, 2, 2, 9304, 1482, 3, 2, 2, 2, 9305, 9306, 7, 85, 2, 2, 9306, 9307, 7, 87, 2, 2, 9307, 9308, 7, 68, 2, 2, 9308, 9309, 7, 76, 2, 2, 9309, 9310, 7, 71, 2, 2, 9310, 9311, 7, 69, 2, 2, 9311, 9312, 7, 86, 2, 2, 9312, 1484, 3, 2, 2, 2, 9313, 9314, 7, 85, 2, 2, 9314, 9315, 7, 87, 2, 2, 9315, 9316, 7, 68, 2, 2, 9316, 9317, 7, 85, 2, 2, 9317, 9318, 7, 69, 2, 2, 9318, 9319, 7, 84, 2, 2, 9319, 9320, 7, 75, 2, 2, 9320, 9321, 7, 82, 2, 2, 9321, 9322, 7, 86, 2, 2, 9322, 9323, 7, 75, 2, 2, 9323, 9324, 7, 81, 2, 2, 9324, 9325, 7, 80, 2, 2, 9325, 1486, 3, 2, 2, 2, 9326, 9327, 7, 85, 2, 2, 9327, 9328, 7, 87, 2, 2, 9328, 9329, 7, 79, 2, 2, 9329, 1488, 3, 2, 2, 2, 9330, 9331, 7, 85, 2, 2, 9331, 9332, 7, 87, 2, 2, 9332, 9333, 7, 85, 2, 2, 9333, 9334, 7, 82, 2, 2, 9334, 9335, 7, 71, 2, 2, 9335, 9336, 7, 80, 2, 2, 9336, 9337, 7, 70, 2, 2, 9337, 1490, 3, 2, 2, 2, 9338, 9339, 7, 85, 2, 2, 9339, 9340, 7, 91, 2, 2, 9340, 9341, 7, 79, 2, 2, 9341, 9342, 7, 79, 2, 2, 9342, 9343, 7, 71, 2, 2, 9343, 9344, 7, 86, 2, 2, 9344, 9345, 7, 84, 2, 2, 9345, 9346, 7, 75, 2, 2, 9346, 9347, 7, 69, 2, 2, 9347, 1492, 3, 2, 2, 2, 9348, 9349, 7, 85, 2, 2, 9349, 9350, 7, 91, 2, 2, 9350, 9351, 7, 80, 2, 2, 9351, 9352, 7, 69, 2, 2, 9352, 9353, 7, 74, 2, 2, 9353, 9354, 7, 84, 2, 2, 9354, 9355, 7, 81, 2, 2, 9355, 9356, 7, 80, 2, 2, 9356, 9357, 7, 81, 2, 2, 9357, 9358, 7, 87, 2, 2, 9358, 9359, 7, 85, 2, 2, 9359, 9360, 7, 97, 2, 2, 9360, 9361, 7, 69, 2, 2, 9361, 9362, 7, 81, 2, 2, 9362, 9363, 7, 79, 2, 2, 9363, 9364, 7, 79, 2, 2, 9364, 9365, 7, 75, 2, 2, 9365, 9366, 7, 86, 2, 2, 9366, 1494, 3, 2, 2, 2, 9367, 9368, 7, 85, 2, 2, 9368, 9369, 7, 91, 2, 2, 9369, 9370, 7, 80, 2, 2, 9370, 9371, 7, 81, 2, 2, 9371, 9372, 7, 80, 2, 2, 9372, 9373, 7, 91, 2, 2, 9373, 9374, 7, 79, 2, 2, 9374, 1496, 3, 2, 2, 2, 9375, 9376, 7, 85, 2, 2, 9376, 9377, 7, 91, 2, 2, 9377, 9378, 7, 85, 2, 2, 9378, 9379, 7, 86, 2, 2, 9379, 9380, 7, 71, 2, 2, 9380, 9381, 7, 79, 2, 2, 9381, 1498, 3, 2, 2, 2, 9382, 9383, 7, 86, 2, 2, 9383, 9384, 7, 67, 2, 2, 9384, 9385, 7, 77, 2, 2, 9385, 9386, 7, 71, 2, 2, 9386, 1500, 3, 2, 2, 2, 9387, 9388, 7, 86, 2, 2, 9388, 9389, 7, 67, 2, 2, 9389, 9390, 7, 84, 2, 2, 9390, 9391, 7, 73, 2, 2, 9391, 9392, 7, 71, 2, 2, 9392, 9393, 7, 86, 2, 2, 9393, 9394, 7, 97, 2, 2, 9394, 9395, 7, 84, 2, 2, 9395, 9396, 7, 71, 2, 2, 9396, 9397, 7, 69, 2, 2, 9397, 9398, 7, 81, 2, 2, 9398, 9399, 7, 88, 2, 2, 9399, 9400, 7, 71, 2, 2, 9400, 9401, 7, 84, 2, 2, 9401, 9402, 7, 91, 2, 2, 9402, 9403, 7, 97, 2, 2, 9403, 9404, 7, 86, 2, 2, 9404, 9405, 7, 75, 2, 2, 9405, 9406, 7, 79, 2, 2, 9406, 9407, 7, 71, 2, 2, 9407, 1502, 3, 2, 2, 2, 9408, 9409, 7, 86, 2, 2, 9409, 9410, 7, 68, 2, 2, 9410, 1504, 3, 2, 2, 2, 9411, 9412, 7, 86, 2, 2, 9412, 9413, 7, 71, 2, 2, 9413, 9414, 7, 90, 2, 2, 9414, 9415, 7, 86, 2, 2, 9415, 9416, 7, 75, 2, 2, 9416, 9417, 7, 79, 2, 2, 9417, 9418, 7, 67, 2, 2, 9418, 9419, 7, 73, 2, 2, 9419, 9420, 7, 71, 2, 2, 9420, 9421, 7, 97, 2, 2, 9421, 9422, 7, 81, 2, 2, 9422, 9423, 7, 80, 2, 2, 9423, 1506, 3, 2, 2, 2, 9424, 9425, 7, 86, 2, 2, 9425, 9426, 7, 74, 2, 2, 9426, 9427, 7, 84, 2, 2, 9427, 9428, 7, 81, 2, 2, 9428, 9429, 7, 89, 2, 2, 9429, 1508, 3, 2, 2, 2, 9430, 9431, 7, 86, 2, 2, 9431, 9432, 7, 75, 2, 2, 9432, 9433, 7, 71, 2, 2, 9433, 9434, 7, 85, 2, 2, 9434, 1510, 3, 2, 2, 2, 9435, 9436, 7, 86, 2, 2, 9436, 9437, 7, 75, 2, 2, 9437, 9438, 7, 79, 2, 2, 9438, 9439, 7, 71, 2, 2, 9439, 1512, 3, 2, 2, 2, 9440, 9441, 7, 86, 2, 2, 9441, 9442, 7, 75, 2, 2, 9442, 9443, 7, 79, 2, 2, 9443, 9444, 7, 71, 2, 2, 9444, 9445, 7, 81, 2, 2, 9445, 9446, 7, 87, 2, 2, 9446, 9447, 7, 86, 2, 2, 9447, 1514, 3, 2, 2, 2, 9448, 9449, 7, 86, 2, 2, 9449, 9450, 7, 75, 2, 2, 9450, 9451, 7, 79, 2, 2, 9451, 9452, 7, 71, 2, 2, 9452, 9453, 7, 84, 2, 2, 9453, 1516, 3, 2, 2, 2, 9454, 9455, 7, 86, 2, 2, 9455, 9456, 7, 75, 2, 2, 9456, 9457, 7, 80, 2, 2, 9457, 9458, 7, 91, 2, 2, 9458, 9459, 7, 75, 2, 2, 9459, 9460, 7, 80, 2, 2, 9460, 9461, 7, 86, 2, 2, 9461, 1518, 3, 2, 2, 2, 9462, 9463, 7, 86, 2, 2, 9463, 9464, 7, 81, 2, 2, 9464, 9465, 7, 84, 2, 2, 9465, 9466, 7, 80, 2, 2, 9466, 9467, 7, 97, 2, 2, 9467, 9468, 7, 82, 2, 2, 9468, 9469, 7, 67, 2, 2, 9469, 9470, 7, 73, 2, 2, 9470, 9471, 7, 71, 2, 2, 9471, 9472, 7, 97, 2, 2, 9472, 9473, 7, 70, 2, 2, 9473, 9474, 7, 71, 2, 2, 9474, 9475, 7, 86, 2, 2, 9475, 9476, 7, 71, 2, 2, 9476, 9477, 7, 69, 2, 2, 9477, 9478, 7, 86, 2, 2, 9478, 9479, 7, 75, 2, 2, 9479, 9480, 7, 81, 2, 2, 9480, 9481, 7, 80, 2, 2, 9481, 1520, 3, 2, 2, 2, 9482, 9483, 7, 86, 2, 2, 9483, 9484, 7, 84, 2, 2, 9484, 9485, 7, 67, 2, 2, 9485, 9486, 7, 80, 2, 2, 9486, 9487, 7, 85, 2, 2, 9487, 9488, 7, 72, 2, 2, 9488, 9489, 7, 81, 2, 2, 9489, 9490, 7, 84, 2, 2, 9490, 9491, 7, 79, 2, 2, 9491, 9492, 7, 97, 2, 2, 9492, 9493, 7, 80, 2, 2, 9493, 9494, 7, 81, 2, 2, 9494, 9495, 7, 75, 2, 2, 9495, 9496, 7, 85, 2, 2, 9496, 9497, 7, 71, 2, 2, 9497, 9498, 7, 97, 2, 2, 9498, 9499, 7, 89, 2, 2, 9499, 9500, 7, 81, 2, 2, 9500, 9501, 7, 84, 2, 2, 9501, 9502, 7, 70, 2, 2, 9502, 9503, 7, 85, 2, 2, 9503, 1522, 3, 2, 2, 2, 9504, 9505, 7, 86, 2, 2, 9505, 9506, 7, 84, 2, 2, 9506, 9507, 7, 75, 2, 2, 9507, 9508, 7, 82, 2, 2, 9508, 9509, 7, 78, 2, 2, 9509, 9510, 7, 71, 2, 2, 9510, 9511, 7, 97, 2, 2, 9511, 9512, 7, 70, 2, 2, 9512, 9513, 7, 71, 2, 2, 9513, 9514, 7, 85, 2, 2, 9514, 1524, 3, 2, 2, 2, 9515, 9516, 7, 86, 2, 2, 9516, 9517, 7, 84, 2, 2, 9517, 9518, 7, 75, 2, 2, 9518, 9519, 7, 82, 2, 2, 9519, 9520, 7, 78, 2, 2, 9520, 9521, 7, 71, 2, 2, 9521, 9522, 7, 97, 2, 2, 9522, 9523, 7, 70, 2, 2, 9523, 9524, 7, 71, 2, 2, 9524, 9525, 7, 85, 2, 2, 9525, 9526, 7, 97, 2, 2, 9526, 9527, 7, 53, 2, 2, 9527, 9528, 7, 77, 2, 2, 9528, 9529, 7, 71, 2, 2, 9529, 9530, 7, 91, 2, 2, 9530, 1526, 3, 2, 2, 2, 9531, 9532, 7, 86, 2, 2, 9532, 9533, 7, 84, 2, 2, 9533, 9534, 7, 87, 2, 2, 9534, 9535, 7, 85, 2, 2, 9535, 9536, 7, 86, 2, 2, 9536, 9537, 7, 89, 2, 2, 9537, 9538, 7, 81, 2, 2, 9538, 9539, 7, 84, 2, 2, 9539, 9540, 7, 86, 2, 2, 9540, 9541, 7, 74, 2, 2, 9541, 9542, 7, 91, 2, 2, 9542, 1528, 3, 2, 2, 2, 9543, 9544, 7, 86, 2, 2, 9544, 9545, 7, 84, 2, 2, 9545, 9546, 7, 91, 2, 2, 9546, 1530, 3, 2, 2, 2, 9547, 9548, 7, 86, 2, 2, 9548, 9549, 7, 85, 2, 2, 9549, 9550, 7, 83, 2, 2, 9550, 9551, 7, 78, 2, 2, 9551, 1532, 3, 2, 2, 2, 9552, 9553, 7, 86, 2, 2, 9553, 9554, 7, 89, 2, 2, 9554, 9555, 7, 81, 2, 2, 9555, 9556, 7, 97, 2, 2, 9556, 9557, 7, 70, 2, 2, 9557, 9558, 7, 75, 2, 2, 9558, 9559, 7, 73, 2, 2, 9559, 9560, 7, 75, 2, 2, 9560, 9561, 7, 86, 2, 2, 9561, 9562, 7, 97, 2, 2, 9562, 9563, 7, 91, 2, 2, 9563, 9564, 7, 71, 2, 2, 9564, 9565, 7, 67, 2, 2, 9565, 9566, 7, 84, 2, 2, 9566, 9567, 7, 97, 2, 2, 9567, 9568, 7, 69, 2, 2, 9568, 9569, 7, 87, 2, 2, 9569, 9570, 7, 86, 2, 2, 9570, 9571, 7, 81, 2, 2, 9571, 9572, 7, 72, 2, 2, 9572, 9573, 7, 72, 2, 2, 9573, 1534, 3, 2, 2, 2, 9574, 9575, 7, 86, 2, 2, 9575, 9576, 7, 91, 2, 2, 9576, 9577, 7, 82, 2, 2, 9577, 9578, 7, 71, 2, 2, 9578, 1536, 3, 2, 2, 2, 9579, 9580, 7, 86, 2, 2, 9580, 9581, 7, 91, 2, 2, 9581, 9582, 7, 82, 2, 2, 9582, 9583, 7, 71, 2, 2, 9583, 9584, 7, 97, 2, 2, 9584, 9585, 7, 89, 2, 2, 9585, 9586, 7, 67, 2, 2, 9586, 9587, 7, 84, 2, 2, 9587, 9588, 7, 80, 2, 2, 9588, 9589, 7, 75, 2, 2, 9589, 9590, 7, 80, 2, 2, 9590, 9591, 7, 73, 2, 2, 9591, 1538, 3, 2, 2, 2, 9592, 9593, 7, 87, 2, 2, 9593, 9594, 7, 80, 2, 2, 9594, 9595, 7, 68, 2, 2, 9595, 9596, 7, 81, 2, 2, 9596, 9597, 7, 87, 2, 2, 9597, 9598, 7, 80, 2, 2, 9598, 9599, 7, 70, 2, 2, 9599, 9600, 7, 71, 2, 2, 9600, 9601, 7, 70, 2, 2, 9601, 1540, 3, 2, 2, 2, 9602, 9603, 7, 87, 2, 2, 9603, 9604, 7, 80, 2, 2, 9604, 9605, 7, 69, 2, 2, 9605, 9606, 7, 81, 2, 2, 9606, 9607, 7, 79, 2, 2, 9607, 9608, 7, 79, 2, 2, 9608, 9609, 7, 75, 2, 2, 9609, 9610, 7, 86, 2, 2, 9610, 9611, 7, 86, 2, 2, 9611, 9612, 7, 71, 2, 2, 9612, 9613, 7, 70, 2, 2, 9613, 1542, 3, 2, 2, 2, 9614, 9615, 7, 87, 2, 2, 9615, 9616, 7, 80, 2, 2, 9616, 9617, 7, 77, 2, 2, 9617, 9618, 7, 80, 2, 2, 9618, 9619, 7, 81, 2, 2, 9619, 9620, 7, 89, 2, 2, 9620, 9621, 7, 80, 2, 2, 9621, 1544, 3, 2, 2, 2, 9622, 9623, 7, 87, 2, 2, 9623, 9624, 7, 80, 2, 2, 9624, 9625, 7, 78, 2, 2, 9625, 9626, 7, 75, 2, 2, 9626, 9627, 7, 79, 2, 2, 9627, 9628, 7, 75, 2, 2, 9628, 9629, 7, 86, 2, 2, 9629, 9630, 7, 71, 2, 2, 9630, 9631, 7, 70, 2, 2, 9631, 1546, 3, 2, 2, 2, 9632, 9633, 7, 87, 2, 2, 9633, 9634, 7, 81, 2, 2, 9634, 9635, 7, 89, 2, 2, 9635, 1548, 3, 2, 2, 2, 9636, 9637, 7, 87, 2, 2, 9637, 9638, 7, 85, 2, 2, 9638, 9639, 7, 75, 2, 2, 9639, 9640, 7, 80, 2, 2, 9640, 9641, 7, 73, 2, 2, 9641, 1550, 3, 2, 2, 2, 9642, 9643, 7, 88, 2, 2, 9643, 9644, 7, 67, 2, 2, 9644, 9645, 7, 78, 2, 2, 9645, 9646, 7, 75, 2, 2, 9646, 9647, 7, 70, 2, 2, 9647, 9648, 7, 97, 2, 2, 9648, 9649, 7, 90, 2, 2, 9649, 9650, 7, 79, 2, 2, 9650, 9651, 7, 78, 2, 2, 9651, 1552, 3, 2, 2, 2, 9652, 9653, 7, 88, 2, 2, 9653, 9654, 7, 67, 2, 2, 9654, 9655, 7, 78, 2, 2, 9655, 9656, 7, 75, 2, 2, 9656, 9657, 7, 70, 2, 2, 9657, 9658, 7, 67, 2, 2, 9658, 9659, 7, 86, 2, 2, 9659, 9660, 7, 75, 2, 2, 9660, 9661, 7, 81, 2, 2, 9661, 9662, 7, 80, 2, 2, 9662, 1554, 3, 2, 2, 2, 9663, 9664, 7, 88, 2, 2, 9664, 9665, 7, 67, 2, 2, 9665, 9666, 7, 78, 2, 2, 9666, 9667, 7, 87, 2, 2, 9667, 9668, 7, 71, 2, 2, 9668, 1556, 3, 2, 2, 2, 9669, 9670, 7, 88, 2, 2, 9670, 9671, 7, 67, 2, 2, 9671, 9672, 7, 84, 2, 2, 9672, 1558, 3, 2, 2, 2, 9673, 9674, 7, 88, 2, 2, 9674, 9675, 7, 67, 2, 2, 9675, 9676, 7, 84, 2, 2, 9676, 9677, 7, 82, 2, 2, 9677, 1560, 3, 2, 2, 2, 9678, 9679, 7, 88, 2, 2, 9679, 9680, 7, 75, 2, 2, 9680, 9681, 7, 71, 2, 2, 9681, 9682, 7, 89, 2, 2, 9682, 9683, 7, 97, 2, 2, 9683, 9684, 7, 79, 2, 2, 9684, 9685, 7, 71, 2, 2, 9685, 9686, 7, 86, 2, 2, 9686, 9687, 7, 67, 2, 2, 9687, 9688, 7, 70, 2, 2, 9688, 9689, 7, 67, 2, 2, 9689, 9690, 7, 86, 2, 2, 9690, 9691, 7, 67, 2, 2, 9691, 1562, 3, 2, 2, 2, 9692, 9693, 7, 88, 2, 2, 9693, 9694, 7, 75, 2, 2, 9694, 9695, 7, 71, 2, 2, 9695, 9696, 7, 89, 2, 2, 9696, 9697, 7, 85, 2, 2, 9697, 1564, 3, 2, 2, 2, 9698, 9699, 7, 89, 2, 2, 9699, 9700, 7, 67, 2, 2, 9700, 9701, 7, 75, 2, 2, 9701, 9702, 7, 86, 2, 2, 9702, 1566, 3, 2, 2, 2, 9703, 9704, 7, 89, 2, 2, 9704, 9705, 7, 71, 2, 2, 9705, 9706, 7, 78, 2, 2, 9706, 9707, 7, 78, 2, 2, 9707, 9708, 7, 97, 2, 2, 9708, 9709, 7, 72, 2, 2, 9709, 9710, 7, 81, 2, 2, 9710, 9711, 7, 84, 2, 2, 9711, 9712, 7, 79, 2, 2, 9712, 9713, 7, 71, 2, 2, 9713, 9714, 7, 70, 2, 2, 9714, 9715, 7, 97, 2, 2, 9715, 9716, 7, 90, 2, 2, 9716, 9717, 7, 79, 2, 2, 9717, 9718, 7, 78, 2, 2, 9718, 1568, 3, 2, 2, 2, 9719, 9720, 7, 89, 2, 2, 9720, 9721, 7, 75, 2, 2, 9721, 9722, 7, 86, 2, 2, 9722, 9723, 7, 74, 2, 2, 9723, 9724, 7, 81, 2, 2, 9724, 9725, 7, 87, 2, 2, 9725, 9726, 7, 86, 2, 2, 9726, 9727, 7, 97, 2, 2, 9727, 9728, 7, 67, 2, 2, 9728, 9729, 7, 84, 2, 2, 9729, 9730, 7, 84, 2, 2, 9730, 9731, 7, 67, 2, 2, 9731, 9732, 7, 91, 2, 2, 9732, 9733, 7, 97, 2, 2, 9733, 9734, 7, 89, 2, 2, 9734, 9735, 7, 84, 2, 2, 9735, 9736, 7, 67, 2, 2, 9736, 9737, 7, 82, 2, 2, 9737, 9738, 7, 82, 2, 2, 9738, 9739, 7, 71, 2, 2, 9739, 9740, 7, 84, 2, 2, 9740, 1570, 3, 2, 2, 2, 9741, 9742, 7, 89, 2, 2, 9742, 9743, 7, 81, 2, 2, 9743, 9744, 7, 84, 2, 2, 9744, 9745, 7, 77, 2, 2, 9745, 1572, 3, 2, 2, 2, 9746, 9747, 7, 89, 2, 2, 9747, 9748, 7, 81, 2, 2, 9748, 9749, 7, 84, 2, 2, 9749, 9750, 7, 77, 2, 2, 9750, 9751, 7, 78, 2, 2, 9751, 9752, 7, 81, 2, 2, 9752, 9753, 7, 67, 2, 2, 9753, 9754, 7, 70, 2, 2, 9754, 1574, 3, 2, 2, 2, 9755, 9756, 7, 90, 2, 2, 9756, 9757, 7, 79, 2, 2, 9757, 9758, 7, 78, 2, 2, 9758, 1576, 3, 2, 2, 2, 9759, 9760, 7, 90, 2, 2, 9760, 9761, 7, 79, 2, 2, 9761, 9762, 7, 78, 2, 2, 9762, 9763, 7, 70, 2, 2, 9763, 9764, 7, 67, 2, 2, 9764, 9765, 7, 86, 2, 2, 9765, 9766, 7, 67, 2, 2, 9766, 1578, 3, 2, 2, 2, 9767, 9768, 7, 90, 2, 2, 9768, 9769, 7, 79, 2, 2, 9769, 9770, 7, 78, 2, 2, 9770, 9771, 7, 80, 2, 2, 9771, 9772, 7, 67, 2, 2, 9772, 9773, 7, 79, 2, 2, 9773, 9774, 7, 71, 2, 2, 9774, 9775, 7, 85, 2, 2, 9775, 9776, 7, 82, 2, 2, 9776, 9777, 7, 67, 2, 2, 9777, 9778, 7, 69, 2, 2, 9778, 9779, 7, 71, 2, 2, 9779, 9780, 7, 85, 2, 2, 9780, 1580, 3, 2, 2, 2, 9781, 9782, 7, 90, 2, 2, 9782, 9783, 7, 79, 2, 2, 9783, 9784, 7, 78, 2, 2, 9784, 9785, 7, 85, 2, 2, 9785, 9786, 7, 69, 2, 2, 9786, 9787, 7, 74, 2, 2, 9787, 9788, 7, 71, 2, 2, 9788, 9789, 7, 79, 2, 2, 9789, 9790, 7, 67, 2, 2, 9790, 1582, 3, 2, 2, 2, 9791, 9792, 7, 90, 2, 2, 9792, 9793, 7, 85, 2, 2, 9793, 9794, 7, 75, 2, 2, 9794, 9795, 7, 80, 2, 2, 9795, 9796, 7, 75, 2, 2, 9796, 9797, 7, 78, 2, 2, 9797, 1584, 3, 2, 2, 2, 9798, 9799, 7, 38, 2, 2, 9799, 9800, 7, 67, 2, 2, 9800, 9801, 7, 69, 2, 2, 9801, 9802, 7, 86, 2, 2, 9802, 9803, 7, 75, 2, 2, 9803, 9804, 7, 81, 2, 2, 9804, 9805, 7, 80, 2, 2, 9805, 1586, 3, 2, 2, 2, 9806, 9808, 9, 7, 2, 2, 9807, 9806, 3, 2, 2, 2, 9808, 9809, 3, 2, 2, 2, 9809, 9807, 3, 2, 2, 2, 9809, 9810, 3, 2, 2, 2, 9810, 9811, 3, 2, 2, 2, 9811, 9812, 8, 794, 2, 2, 9812, 1588, 3, 2, 2, 2, 9813, 9814, 7, 49, 2, 2, 9814, 9815, 7, 44, 2, 2, 9815, 9820, 3, 2, 2, 2, 9816, 9819, 5, 1589, 795, 2, 9817, 9819, 11, 2, 2, 2, 9818, 9816, 3, 2, 2, 2, 9818, 9817, 3, 2, 2, 2, 9819, 9822, 3, 2, 2, 2, 9820, 9821, 3, 2, 2, 2, 9820, 9818, 3, 2, 2, 2, 9821, 9823, 3, 2, 2, 2, 9822, 9820, 3, 2, 2, 2, 9823, 9824, 7, 44, 2, 2, 9824, 9825, 7, 49, 2, 2, 9825, 9826, 3, 2, 2, 2, 9826, 9827, 8, 795, 3, 2, 9827, 1590, 3, 2, 2, 2, 9828, 9829, 7, 47, 2, 2, 9829, 9830, 7, 47, 2, 2, 9830, 9834, 3, 2, 2, 2, 9831, 9833, 10, 8, 2, 2, 9832, 9831, 3, 2, 2, 2, 9833, 9836, 3, 2, 2, 2, 9834, 9832, 3, 2, 2, 2, 9834, 9835, 3, 2, 2, 2, 9835, 9837, 3, 2, 2, 2, 9836, 9834, 3, 2, 2, 2, 9837, 9838, 8, 796, 3, 2, 9838, 1592, 3, 2, 2, 2, 9839, 9841, 7, 36, 2, 2, 9840, 9842, 10, 5, 2, 2, 9841, 9840, 3, 2, 2, 2, 9842, 9843, 3, 2, 2, 2, 9843, 9841, 3, 2, 2, 2, 9843, 9844, 3, 2, 2, 2, 9844, 9845, 3, 2, 2, 2, 9845, 9846, 7, 36, 2, 2, 9846, 1594, 3, 2, 2, 2, 9847, 9848, 7, 41, 2, 2, 9848, 1596, 3, 2, 2, 2, 9849, 9851, 7, 93, 2, 2, 9850, 9852, 10, 9, 2, 2, 9851, 9850, 3, 2, 2, 2, 9852, 9853, 3, 2, 2, 2, 9853, 9851, 3, 2, 2, 2, 9853, 9854, 3, 2, 2, 2, 9854, 9855, 3, 2, 2, 2, 9855, 9856, 7, 95, 2, 2, 9856, 1598, 3, 2, 2, 2, 9857, 9860, 7, 66, 2, 2, 9858, 9861, 9, 10, 2, 2, 9859, 9861, 5, 1693, 847, 2, 9860, 9858, 3, 2, 2, 2, 9860, 9859, 3, 2, 2, 2, 9861, 9862, 3, 2, 2, 2, 9862, 9860, 3, 2, 2, 2, 9862, 9863, 3, 2, 2, 2, 9863, 1600, 3, 2, 2, 2, 9864, 9866, 5, 1691, 846, 2, 9865, 9864, 3, 2, 2, 2, 9866, 9867, 3, 2, 2, 2, 9867, 9865, 3, 2, 2, 2, 9867, 9868, 3, 2, 2, 2, 9868, 1602, 3, 2, 2, 2, 9869, 9872, 9, 11, 2, 2, 9870, 9872, 5, 1693, 847, 2, 9871, 9869, 3, 2, 2, 2, 9871, 9870, 3, 2, 2, 2, 9872, 9877, 3, 2, 2, 2, 9873, 9876, 9, 10, 2, 2, 9874, 9876, 5, 1693, 847, 2, 9875, 9873, 3, 2, 2, 2, 9875, 9874, 3, 2, 2, 2, 9876, 9879, 3, 2, 2, 2, 9877, 9875, 3, 2, 2, 2, 9877, 9878, 3, 2, 2, 2, 9878, 1604, 3, 2, 2, 2, 9879, 9877, 3, 2, 2, 2, 9880, 9881, 7, 41, 2, 2, 9881, 9883, 9, 6, 2, 2, 9882, 9884, 9, 6, 2, 2, 9883, 9882, 3, 2, 2, 2, 9884, 9885, 3, 2, 2, 2, 9885, 9883, 3, 2, 2, 2, 9885, 9886, 3, 2, 2, 2, 9886, 9887, 3, 2, 2, 2, 9887, 9888, 9, 4, 2, 2, 9888, 9889, 3, 2, 2, 2, 9889, 9890, 7, 49, 2, 2, 9890, 9891, 7, 49, 2, 2, 9891, 9906, 3, 2, 2, 2, 9892, 9894, 9, 6, 2, 2, 9893, 9892, 3, 2, 2, 2, 9894, 9895, 3, 2, 2, 2, 9895, 9893, 3, 2, 2, 2, 9895, 9896, 3, 2, 2, 2, 9896, 9897, 3, 2, 2, 2, 9897, 9904, 9, 12, 2, 2, 9898, 9900, 9, 6, 2, 2, 9899, 9898, 3, 2, 2, 2, 9900, 9901, 3, 2, 2, 2, 9901, 9899, 3, 2, 2, 2, 9901, 9902, 3, 2, 2, 2, 9902, 9904, 3, 2, 2, 2, 9903, 9893, 3, 2, 2, 2, 9903, 9899, 3, 2, 2, 2, 9904, 9907, 3, 2, 2, 2, 9905, 9907, 5, 329, 165, 2, 9906, 9903, 3, 2, 2, 2, 9906, 9905, 3, 2, 2, 2, 9907, 9908, 3, 2, 2, 2, 9908, 9909, 9, 4, 2, 2, 9909, 9910, 5, 1601, 801, 2, 9910, 9911, 7, 41, 2, 2, 9911, 1606, 3, 2, 2, 2, 9912, 9927, 7, 41, 2, 2, 9913, 9915, 9, 6, 2, 2, 9914, 9913, 3, 2, 2, 2, 9915, 9916, 3, 2, 2, 2, 9916, 9914, 3, 2, 2, 2, 9916, 9917, 3, 2, 2, 2, 9917, 9918, 3, 2, 2, 2, 9918, 9925, 9, 12, 2, 2, 9919, 9921, 9, 6, 2, 2, 9920, 9919, 3, 2, 2, 2, 9921, 9922, 3, 2, 2, 2, 9922, 9920, 3, 2, 2, 2, 9922, 9923, 3, 2, 2, 2, 9923, 9925, 3, 2, 2, 2, 9924, 9914, 3, 2, 2, 2, 9924, 9920, 3, 2, 2, 2, 9925, 9928, 3, 2, 2, 2, 9926, 9928, 5, 329, 165, 2, 9927, 9924, 3, 2, 2, 2, 9927, 9926, 3, 2, 2, 2, 9928, 9929, 3, 2, 2, 2, 9929, 9930, 9, 4, 2, 2, 9930, 9931, 5, 1601, 801, 2, 9931, 9932, 3, 2, 2, 2, 9932, 9933, 7, 41, 2, 2, 9933, 1608, 3, 2, 2, 2, 9934, 9936, 7, 80, 2, 2, 9935, 9934, 3, 2, 2, 2, 9935, 9936, 3, 2, 2, 2, 9936, 9937, 3, 2, 2, 2, 9937, 9943, 7, 41, 2, 2, 9938, 9942, 10, 2, 2, 2, 9939, 9940, 7, 41, 2, 2, 9940, 9942, 7, 41, 2, 2, 9941, 9938, 3, 2, 2, 2, 9941, 9939, 3, 2, 2, 2, 9942, 9945, 3, 2, 2, 2, 9943, 9941, 3, 2, 2, 2, 9943, 9944, 3, 2, 2, 2, 9944, 9946, 3, 2, 2, 2, 9945, 9943, 3, 2, 2, 2, 9946, 9947, 7, 41, 2, 2, 9947, 1610, 3, 2, 2, 2, 9948, 9949, 7, 50, 2, 2, 9949, 9953, 7, 90, 2, 2, 9950, 9952, 5, 1689, 845, 2, 9951, 9950, 3, 2, 2, 2, 9952, 9955, 3, 2, 2, 2, 9953, 9951, 3, 2, 2, 2, 9953, 9954, 3, 2, 2, 2, 9954, 1612, 3, 2, 2, 2, 9955, 9953, 3, 2, 2, 2, 9956, 9957, 5, 1687, 844, 2, 9957, 1614, 3, 2, 2, 2, 9958, 9961, 5, 1601, 801, 2, 9959, 9961, 5, 1687, 844, 2, 9960, 9958, 3, 2, 2, 2, 9960, 9959, 3, 2, 2, 2, 9961, 9962, 3, 2, 2, 2, 9962, 9964, 7, 71, 2, 2, 9963, 9965, 9, 13, 2, 2, 9964, 9963, 3, 2, 2, 2, 9964, 9965, 3, 2, 2, 2, 9965, 9967, 3, 2, 2, 2, 9966, 9968, 5, 1691, 846, 2, 9967, 9966, 3, 2, 2, 2, 9968, 9969, 3, 2, 2, 2, 9969, 9967, 3, 2, 2, 2, 9969, 9970, 3, 2, 2, 2, 9970, 1616, 3, 2, 2, 2, 9971, 9972, 7, 63, 2, 2, 9972, 1618, 3, 2, 2, 2, 9973, 9974, 7, 64, 2, 2, 9974, 1620, 3, 2, 2, 2, 9975, 9976, 7, 62, 2, 2, 9976, 1622, 3, 2, 2, 2, 9977, 9978, 7, 35, 2, 2, 9978, 1624, 3, 2, 2, 2, 9979, 9980, 7, 45, 2, 2, 9980, 9981, 7, 63, 2, 2, 9981, 1626, 3, 2, 2, 2, 9982, 9983, 7, 47, 2, 2, 9983, 9984, 7, 63, 2, 2, 9984, 1628, 3, 2, 2, 2, 9985, 9986, 7, 44, 2, 2, 9986, 9987, 7, 63, 2, 2, 9987, 1630, 3, 2, 2, 2, 9988, 9989, 7, 49, 2, 2, 9989, 9990, 7, 63, 2, 2, 9990, 1632, 3, 2, 2, 2, 9991, 9992, 7, 39, 2, 2, 9992, 9993, 7, 63, 2, 2, 9993, 1634, 3, 2, 2, 2, 9994, 9995, 7, 40, 2, 2, 9995, 9996, 7, 63, 2, 2, 9996, 1636, 3, 2, 2, 2, 9997, 9998, 7, 96, 2, 2, 9998, 9999, 7, 63, 2, 2, 9999, 1638, 3, 2, 2, 2, 10000, 10001, 7, 126, 2, 2, 10001, 10002, 7, 63, 2, 2, 10002, 1640, 3, 2, 2, 2, 10003, 10004, 7, 126, 2, 2, 10004, 10005, 7, 126, 2, 2, 10005, 1642, 3, 2, 2, 2, 10006, 10007, 7, 48, 2, 2, 10007, 1644, 3, 2, 2, 2, 10008, 10009, 7, 97, 2, 2, 10009, 1646, 3, 2, 2, 2, 10010, 10011, 7, 66, 2, 2, 10011, 1648, 3, 2, 2, 2, 10012, 10013, 7, 37, 2, 2, 10013, 1650, 3, 2, 2, 2, 10014, 10015, 7, 38, 2, 2, 10015, 1652, 3, 2, 2, 2, 10016, 10017, 7, 42, 2, 2, 10017, 1654, 3, 2, 2, 2, 10018, 10019, 7, 43, 2, 2, 10019, 1656, 3, 2, 2, 2, 10020, 10021, 7, 46, 2, 2, 10021, 1658, 3, 2, 2, 2, 10022, 10023, 7, 61, 2, 2, 10023, 1660, 3, 2, 2, 2, 10024, 10025, 7, 60, 2, 2, 10025, 1662, 3, 2, 2, 2, 10026, 10027, 7, 44, 2, 2, 10027, 1664, 3, 2, 2, 2, 10028, 10029, 7, 49, 2, 2, 10029, 1666, 3, 2, 2, 2, 10030, 10031, 7, 39, 2, 2, 10031, 1668, 3, 2, 2, 2, 10032, 10033, 7, 45, 2, 2, 10033, 1670, 3, 2, 2, 2, 10034, 10035, 7, 47, 2, 2, 10035, 1672, 3, 2, 2, 2, 10036, 10037, 7, 128, 2, 2, 10037, 1674, 3, 2, 2, 2, 10038, 10039, 7, 126, 2, 2, 10039, 1676, 3, 2, 2, 2, 10040, 10041, 7, 40, 2, 2, 10041, 1678, 3, 2, 2, 2, 10042, 10043, 7, 96, 2, 2, 10043, 1680, 3, 2, 2, 2, 10044, 10045, 9, 14, 2, 2, 10045, 1682, 3, 2, 2, 2, 10046, 10047, 9, 3, 2, 2, 10047, 10048, 9, 3, 2, 2, 10048, 10049, 9, 3, 2, 2, 10049, 10050, 9, 3, 2, 2, 10050, 1684, 3, 2, 2, 2, 10051, 10053, 9, 15, 2, 2, 10052, 10051, 3, 2, 2, 2, 10052, 10053, 3, 2, 2, 2, 10053, 10055, 3, 2, 2, 2, 10054, 10056, 9, 15, 2, 2, 10055, 10054, 3, 2, 2, 2, 10055, 10056, 3, 2, 2, 2, 10056, 10057, 3, 2, 2, 2, 10057, 10058, 9, 15, 2, 2, 10058, 1686, 3, 2, 2, 2, 10059, 10061, 5, 1691, 846, 2, 10060, 10059, 3, 2, 2, 2, 10061, 10062, 3, 2, 2, 2, 10062, 10060, 3, 2, 2, 2, 10062, 10063, 3, 2, 2, 2, 10063, 10064, 3, 2, 2, 2, 10064, 10066, 7, 48, 2, 2, 10065, 10067, 5, 1691, 846, 2, 10066, 10065, 3, 2, 2, 2, 10067, 10068, 3, 2, 2, 2, 10068, 10066, 3, 2, 2, 2, 10068, 10069, 3, 2, 2, 2, 10069, 10084, 3, 2, 2, 2, 10070, 10072, 5, 1691, 846, 2, 10071, 10070, 3, 2, 2, 2, 10072, 10073, 3, 2, 2, 2, 10073, 10071, 3, 2, 2, 2, 10073, 10074, 3, 2, 2, 2, 10074, 10075, 3, 2, 2, 2, 10075, 10076, 7, 48, 2, 2, 10076, 10084, 3, 2, 2, 2, 10077, 10079, 7, 48, 2, 2, 10078, 10080, 5, 1691, 846, 2, 10079, 10078, 3, 2, 2, 2, 10080, 10081, 3, 2, 2, 2, 10081, 10079, 3, 2, 2, 2, 10081, 10082, 3, 2, 2, 2, 10082, 10084, 3, 2, 2, 2, 10083, 10060, 3, 2, 2, 2, 10083, 10071, 3, 2, 2, 2, 10083, 10077, 3, 2, 2, 2, 10084, 1688, 3, 2, 2, 2, 10085, 10086, 9, 3, 2, 2, 10086, 1690, 3, 2, 2, 2, 10087, 10088, 9, 15, 2, 2, 10088, 1692, 3, 2, 2, 2, 10089, 10090, 9, 16, 2, 2, 10090, 1694, 3, 2, 2, 2, 77, 2, 2391, 2843, 3265, 3275, 3278, 3281, 3284, 3287, 3290, 3294, 3297, 3300, 3303, 3307, 3310, 3313, 3316, 3320, 3323, 3326, 3329, 3333, 3336, 3339, 3342, 3346, 3349, 3352, 3355, 3359, 3362, 3365, 3368, 3372, 3375, 3378, 3381, 3384, 5921, 9809, 9818, 9820, 9834, 9843, 9853, 9860, 9862, 9867, 9871, 9875, 9877, 9885, 9895, 9901, 9903, 9906, 9916, 9922, 9924, 9927, 9935, 9941, 9943, 9953, 9960, 9964, 9969, 10052, 10055, 10062, 10068, 10073, 10081, 10083, 4, 8, 2, 2, 2, 3, 2]
\ No newline at end of file
diff --git a/src/grammar/tsql/.antlr/TSqlParser.interp b/src/grammar/tsql/.antlr/TSqlParser.interp
deleted file mode 100644
index c495072..0000000
--- a/src/grammar/tsql/.antlr/TSqlParser.interp
+++ /dev/null
@@ -1,2178 +0,0 @@
-token literal names:
-null
-'ABSENT'
-'ADD'
-'AES'
-'ALL'
-'ALLOW_CONNECTIONS'
-'ALLOW_MULTIPLE_EVENT_LOSS'
-'ALLOW_SINGLE_EVENT_LOSS'
-'ALTER'
-'AND'
-'ANONYMOUS'
-'ANY'
-'APPEND'
-'APPLICATION'
-'AS'
-'ASC'
-'ASYMMETRIC'
-'ASYNCHRONOUS_COMMIT'
-'AUTHORIZATION'
-'AUTHENTICATION'
-'AUTOMATED_BACKUP_PREFERENCE'
-'AUTOMATIC'
-'AVAILABILITY_MODE'
-'\\'
-'BACKUP'
-'BEFORE'
-'BEGIN'
-'BETWEEN'
-'BLOCK'
-'BLOCKSIZE'
-'BLOCKING_HIERARCHY'
-'BREAK'
-'BROWSE'
-'BUFFER'
-'BUFFERCOUNT'
-'BULK'
-'BY'
-'CACHE'
-'CALLED'
-'CASCADE'
-'CASE'
-'CERTIFICATE'
-'CHANGETABLE'
-'CHANGES'
-'CHECK'
-'CHECKPOINT'
-'CHECK_POLICY'
-'CHECK_EXPIRATION'
-'CLASSIFIER_FUNCTION'
-'CLOSE'
-'CLUSTER'
-'CLUSTERED'
-'COALESCE'
-'COLLATE'
-'COLUMN'
-'COMPRESSION'
-'COMMIT'
-'COMPUTE'
-'CONFIGURATION'
-'CONSTRAINT'
-'CONTAINMENT'
-'CONTAINS'
-'CONTAINSTABLE'
-'CONTEXT'
-'CONTINUE'
-'CONTINUE_AFTER_ERROR'
-'CONTRACT'
-'CONTRACT_NAME'
-'CONVERSATION'
-null
-'COPY_ONLY'
-'CREATE'
-'CROSS'
-'CURRENT'
-'CURRENT_DATE'
-'CURRENT_TIME'
-'CURRENT_TIMESTAMP'
-'CURRENT_USER'
-'CURSOR'
-'CYCLE'
-'DATA_COMPRESSION'
-'DATA_SOURCE'
-'DATABASE'
-'DATABASE_MIRRORING'
-'DBCC'
-'DEALLOCATE'
-'DECLARE'
-'DEFAULT'
-'DEFAULT_DATABASE'
-'DEFAULT_SCHEMA'
-'DELETE'
-'DENY'
-'DESC'
-'DIAGNOSTICS'
-'DIFFERENTIAL'
-'DISK'
-'DISTINCT'
-'DISTRIBUTED'
-'DOUBLE'
-'\\\\'
-'//'
-'DROP'
-'DTC_SUPPORT'
-'DUMP'
-'ELSE'
-'ENABLED'
-'END'
-'ENDPOINT'
-'ERRLVL'
-'ESCAPE'
-'ERROR'
-'EVENT'
-null
-'EVENT_RETENTION_MODE'
-'EXCEPT'
-'EXECUTABLE_FILE'
-null
-'EXISTS'
-'EXPIREDATE'
-'EXIT'
-'EXTENSION'
-'EXTERNAL'
-'EXTERNAL_ACCESS'
-'FAILOVER'
-'FAILURECONDITIONLEVEL'
-'FAN_IN'
-'FETCH'
-'FILE'
-'FILENAME'
-'FILLFACTOR'
-'FILE_SNAPSHOT'
-'FOR'
-'FORCESEEK'
-'FORCE_SERVICE_ALLOW_DATA_LOSS'
-'FOREIGN'
-'FREETEXT'
-'FREETEXTTABLE'
-'FROM'
-'FULL'
-'FUNCTION'
-'GET'
-'GOTO'
-'GOVERNOR'
-'GRANT'
-'GROUP'
-'HAVING'
-'HASHED'
-'HEALTHCHECKTIMEOUT'
-'IDENTITY'
-'IDENTITYCOL'
-'IDENTITY_INSERT'
-'IF'
-'IIF'
-'IN'
-'INCLUDE'
-'INCREMENT'
-'INDEX'
-'INFINITE'
-'INIT'
-'INNER'
-'INSERT'
-'INSTEAD'
-'INTERSECT'
-'INTO'
-null
-null
-'IS'
-'ISNULL'
-'JOIN'
-'KERBEROS'
-'KEY'
-'KEY_PATH'
-'KEY_STORE_PROVIDER_NAME'
-'KILL'
-'LANGUAGE'
-'LEFT'
-'LIBRARY'
-'LIFETIME'
-'LIKE'
-'LINENO'
-'LINUX'
-'LISTENER_IP'
-'LISTENER_PORT'
-'LOAD'
-'LOCAL_SERVICE_NAME'
-'LOG'
-'MATCHED'
-'MASTER'
-'MAX_MEMORY'
-'MAXTRANSFER'
-'MAXVALUE'
-'MAX_DISPATCH_LATENCY'
-'MAX_EVENT_SIZE'
-'MAX_SIZE'
-'MAX_OUTSTANDING_IO_PER_VOLUME'
-'MEDIADESCRIPTION'
-'MEDIANAME'
-'MEMBER'
-'MEMORY_PARTITION_MODE'
-'MERGE'
-'MESSAGE_FORWARDING'
-'MESSAGE_FORWARD_SIZE'
-'MINVALUE'
-'MIRROR'
-'MUST_CHANGE'
-'NATIONAL'
-'NEGOTIATE'
-'NOCHECK'
-'NOFORMAT'
-'NOINIT'
-'NONCLUSTERED'
-'NONE'
-'NOREWIND'
-'NOSKIP'
-'NOUNLOAD'
-'NO_CHECKSUM'
-'NO_COMPRESSION'
-'NO_EVENT_LOSS'
-'NOT'
-'NOTIFICATION'
-'NTLM'
-'NULL'
-'NULLIF'
-'OF'
-'OFF'
-'OFFSETS'
-'OLD_PASSWORD'
-'ON'
-'ON_FAILURE'
-'OPEN'
-'OPENDATASOURCE'
-'OPENQUERY'
-'OPENROWSET'
-'OPENXML'
-'OPTION'
-'OR'
-'ORDER'
-'OUTER'
-'OVER'
-'PAGE'
-'PARAM_NODE'
-'PARTIAL'
-'PASSWORD'
-'PERCENT'
-'PERMISSION_SET'
-'PER_CPU'
-'PER_DB'
-'PER_NODE'
-'PIVOT'
-'PLAN'
-'PLATFORM'
-'POLICY'
-'PRECISION'
-'PREDICATE'
-'PRIMARY'
-'PRINT'
-'PROC'
-'PROCEDURE'
-'PROCESS'
-'PUBLIC'
-'PYTHON'
-'R'
-'RAISERROR'
-'RAW'
-'READ'
-'READTEXT'
-'READ_WRITE_FILEGROUPS'
-'RECONFIGURE'
-'REFERENCES'
-'REGENERATE'
-'RELATED_CONVERSATION'
-'RELATED_CONVERSATION_GROUP'
-'REPLICATION'
-'REQUIRED'
-'RESET'
-'RESTART'
-'RESTORE'
-'RESTRICT'
-'RESUME'
-'RETAINDAYS'
-'RETURN'
-'RETURNS'
-'REVERT'
-'REVOKE'
-'REWIND'
-'RIGHT'
-'ROLLBACK'
-'ROLE'
-'ROWCOUNT'
-'ROWGUIDCOL'
-'RSA_512'
-'RSA_1024'
-'RSA_2048'
-'RSA_3072'
-'RSA_4096'
-'SAFETY'
-'RULE'
-'SAFE'
-'SAVE'
-'SCHEDULER'
-'SCHEMA'
-'SCHEME'
-'SECURITYAUDIT'
-'SELECT'
-'SEMANTICKEYPHRASETABLE'
-'SEMANTICSIMILARITYDETAILSTABLE'
-'SEMANTICSIMILARITYTABLE'
-'SERVER'
-'SERVICE'
-'SERVICE_BROKER'
-'SERVICE_NAME'
-'SESSION'
-'SESSION_USER'
-'SET'
-'SETUSER'
-'SHUTDOWN'
-'SID'
-'SKIP'
-'SOFTNUMA'
-'SOME'
-'SOURCE'
-'SPECIFICATION'
-'SPLIT'
-'SQLDUMPERFLAGS'
-'SQLDUMPERPATH'
-'SQLDUMPERTIMEOUTS'
-'STATISTICS'
-'STATE'
-'STATS'
-'START'
-'STARTED'
-'STARTUP_STATE'
-'STOP'
-'STOPPED'
-'STOP_ON_ERROR'
-'SUPPORTED'
-'SYSTEM_USER'
-'TABLE'
-'TABLESAMPLE'
-'TAPE'
-'TARGET'
-'TCP'
-'TEXTSIZE'
-'THEN'
-'TO'
-'TOP'
-'TRACK_CAUSALITY'
-'TRAN'
-'TRANSACTION'
-'TRANSFER'
-'TRIGGER'
-'TRUNCATE'
-'TSEQUAL'
-'UNCHECKED'
-'UNION'
-'UNIQUE'
-'UNLOCK'
-'UNPIVOT'
-'UNSAFE'
-'UPDATE'
-'UPDATETEXT'
-'URL'
-'USE'
-'USED'
-'USER'
-'VALUES'
-'VARYING'
-'VERBOSELOGGING'
-'VIEW'
-'VISIBILITY'
-'WAITFOR'
-'WHEN'
-'WHERE'
-'WHILE'
-'WINDOWS'
-'WITH'
-'WITHIN'
-'WITHOUT'
-'WITNESS'
-'WRITETEXT'
-'ABSOLUTE'
-'ACCENT_SENSITIVITY'
-'ACTION'
-'ACTIVATION'
-'ACTIVE'
-'ADDRESS'
-'AES_128'
-'AES_192'
-'AES_256'
-'AFFINITY'
-'AFTER'
-'AGGREGATE'
-'ALGORITHM'
-'ALLOW_ENCRYPTED_VALUE_MODIFICATIONS'
-'ALLOW_SNAPSHOT_ISOLATION'
-'ALLOWED'
-'ANSI_NULL_DEFAULT'
-'ANSI_NULLS'
-'ANSI_PADDING'
-'ANSI_WARNINGS'
-'APPLICATION_LOG'
-'APPLY'
-'ARITHABORT'
-'ASSEMBLY'
-'AUDIT'
-'AUDIT_GUID'
-'AUTO'
-'AUTO_CLEANUP'
-'AUTO_CLOSE'
-'AUTO_CREATE_STATISTICS'
-'AUTO_SHRINK'
-'AUTO_UPDATE_STATISTICS'
-'AUTO_UPDATE_STATISTICS_ASYNC'
-'AVAILABILITY'
-'AVG'
-'BACKUP_PRIORITY'
-'BEGIN_DIALOG'
-'BIGINT'
-'BINARY BASE64'
-'BINARY_CHECKSUM'
-'BINDING'
-'BLOB_STORAGE'
-'BROKER'
-'BROKER_INSTANCE'
-'BULK_LOGGED'
-'CALLER'
-'CAP_CPU_PERCENT'
-null
-'CATALOG'
-'CATCH'
-'CHANGE_RETENTION'
-'CHANGE_TRACKING'
-'CHECKSUM'
-'CHECKSUM_AGG'
-'CLEANUP'
-'COLLECTION'
-'COLUMN_MASTER_KEY'
-'COMMITTED'
-'COMPATIBILITY_LEVEL'
-'CONCAT'
-'CONCAT_NULL_YIELDS_NULL'
-'CONTENT'
-'CONTROL'
-'COOKIE'
-'COUNT'
-'COUNT_BIG'
-'COUNTER'
-'CPU'
-'CREATE_NEW'
-'CREATION_DISPOSITION'
-'CREDENTIAL'
-'CRYPTOGRAPHIC'
-'CURSOR_CLOSE_ON_COMMIT'
-'CURSOR_DEFAULT'
-'DATA'
-'DATE_CORRELATION_OPTIMIZATION'
-'DATEADD'
-'DATEDIFF'
-'DATENAME'
-'DATEPART'
-'DAYS'
-'DB_CHAINING'
-'DB_FAILOVER'
-'DECRYPTION'
-null
-'DEFAULT_FULLTEXT_LANGUAGE'
-'DEFAULT_LANGUAGE'
-'DELAY'
-'DELAYED_DURABILITY'
-'DELETED'
-'DENSE_RANK'
-'DEPENDENTS'
-'DES'
-'DESCRIPTION'
-'DESX'
-'DHCP'
-'DIALOG'
-'DIRECTORY_NAME'
-'DISABLE'
-'DISABLE_BROKER'
-'DISABLED'
-null
-'DOCUMENT'
-'DYNAMIC'
-'ELEMENTS'
-'EMERGENCY'
-'EMPTY'
-'ENABLE'
-'ENABLE_BROKER'
-'ENCRYPTED_VALUE'
-'ENCRYPTION'
-'ENDPOINT_URL'
-'ERROR_BROKER_CONVERSATIONS'
-'EXCLUSIVE'
-'EXECUTABLE'
-'EXIST'
-'EXPAND'
-'EXPIRY_DATE'
-'EXPLICIT'
-'FAIL_OPERATION'
-'FAILOVER_MODE'
-'FAILURE'
-'FAILURE_CONDITION_LEVEL'
-'FAST'
-'FAST_FORWARD'
-'FILEGROUP'
-'FILEGROWTH'
-'FILEPATH'
-'FILESTREAM'
-'FILTER'
-'FIRST'
-'FIRST_VALUE'
-'FOLLOWING'
-'FORCE'
-'FORCE_FAILOVER_ALLOW_DATA_LOSS'
-'FORCED'
-'FORMAT'
-'FORWARD_ONLY'
-'FULLSCAN'
-'FULLTEXT'
-'GB'
-'GETDATE'
-'GETUTCDATE'
-'GLOBAL'
-'GO'
-'GROUP_MAX_REQUESTS'
-'GROUPING'
-'GROUPING_ID'
-'HADR'
-'HASH'
-'HEALTH_CHECK_TIMEOUT'
-'HIGH'
-'HONOR_BROKER_PRIORITY'
-'HOURS'
-'IDENTITY_VALUE'
-'IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX'
-'IMMEDIATE'
-'IMPERSONATE'
-'IMPORTANCE'
-'INCLUDE_NULL_VALUES'
-'INCREMENTAL'
-'INITIATOR'
-'INPUT'
-'INSENSITIVE'
-'INSERTED'
-'INT'
-'IP'
-'ISOLATION'
-'JOB'
-'JSON'
-'KB'
-'KEEP'
-'KEEPFIXED'
-'KEY_SOURCE'
-'KEYS'
-'KEYSET'
-'LAG'
-'LAST'
-'LAST_VALUE'
-'LEAD'
-'LEVEL'
-'LIST'
-'LISTENER'
-'LISTENER_URL'
-'LOB_COMPACTION'
-'LOCAL'
-'LOCATION'
-'LOCK'
-'LOCK_ESCALATION'
-'LOGIN'
-'LOOP'
-'LOW'
-'MANUAL'
-'MARK'
-'MATERIALIZED'
-'MAX'
-'MAX_CPU_PERCENT'
-'MAX_DOP'
-'MAX_FILES'
-'MAX_IOPS_PER_VOLUME'
-'MAX_MEMORY_PERCENT'
-'MAX_PROCESSES'
-'MAX_QUEUE_READERS'
-'MAX_ROLLOVER_FILES'
-'MAXDOP'
-'MAXRECURSION'
-'MAXSIZE'
-'MB'
-'MEDIUM'
-'MEMORY_OPTIMIZED_DATA'
-'MESSAGE'
-'MIN'
-'MIN_ACTIVE_ROWVERSION'
-'MIN_CPU_PERCENT'
-'MIN_IOPS_PER_VOLUME'
-'MIN_MEMORY_PERCENT'
-'MINUTES'
-'MIRROR_ADDRESS'
-'MIXED_PAGE_ALLOCATION'
-'MODE'
-'MODIFY'
-'MOVE'
-'MULTI_USER'
-'NAME'
-'NESTED_TRIGGERS'
-'NEW_ACCOUNT'
-'NEW_BROKER'
-'NEW_PASSWORD'
-'NEXT'
-'NO'
-'NO_TRUNCATE'
-'NO_WAIT'
-'NOCOUNT'
-'NODES'
-'NOEXPAND'
-'NON_TRANSACTED_ACCESS'
-'NORECOMPUTE'
-'NORECOVERY'
-'NOWAIT'
-'NTILE'
-'NUMANODE'
-'NUMBER'
-'NUMERIC_ROUNDABORT'
-'OBJECT'
-'OFFLINE'
-'OFFSET'
-'OLD_ACCOUNT'
-'ONLINE'
-'ONLY'
-'OPEN_EXISTING'
-'OPTIMISTIC'
-'OPTIMIZE'
-'OUT'
-'OUTPUT'
-'OVERRIDE'
-'OWNER'
-'PAGE_VERIFY'
-'PARAMETERIZATION'
-'PARTITION'
-'PARTITIONS'
-'PARTNER'
-'PATH'
-'POISON_MESSAGE_HANDLING'
-'POOL'
-'PORT'
-'PRECEDING'
-'PRIMARY_ROLE'
-'PRIOR'
-'PRIORITY'
-'PRIORITY_LEVEL'
-'PRIVATE'
-'PRIVATE_KEY'
-'PRIVILEGES'
-'PROCEDURE_NAME'
-'PROPERTY'
-'PROVIDER'
-'PROVIDER_KEY_NAME'
-'QUERY'
-'QUEUE'
-'QUEUE_DELAY'
-'QUOTED_IDENTIFIER'
-'RANGE'
-'RANK'
-'RC2'
-'RC4'
-'RC4_128'
-'READ_COMMITTED_SNAPSHOT'
-'READ_ONLY'
-'READ_ONLY_ROUTING_LIST'
-'READ_WRITE'
-'READONLY'
-'REBUILD'
-'RECEIVE'
-'RECOMPILE'
-'RECOVERY'
-'RECURSIVE_TRIGGERS'
-'RELATIVE'
-'REMOTE'
-'REMOTE_SERVICE_NAME'
-'REMOVE'
-'REORGANIZE'
-'REPEATABLE'
-'REPLICA'
-'REQUEST_MAX_CPU_TIME_SEC'
-'REQUEST_MAX_MEMORY_GRANT_PERCENT'
-'REQUEST_MEMORY_GRANT_TIMEOUT_SEC'
-'REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT'
-'RESERVE_DISK_SPACE'
-'RESOURCE'
-'RESOURCE_MANAGER_LOCATION'
-'RESTRICTED_USER'
-'RETENTION'
-'ROBUST'
-'ROOT'
-'ROUTE'
-'ROW'
-'ROW_NUMBER'
-'ROWGUID'
-'ROWS'
-'SAMPLE'
-'SCHEMABINDING'
-'SCOPED'
-'SCROLL'
-'SCROLL_LOCKS'
-'SEARCH'
-'SECONDARY'
-'SECONDARY_ONLY'
-'SECONDARY_ROLE'
-'SECONDS'
-'SECRET'
-'SECURITY'
-'SECURITY_LOG'
-'SEEDING_MODE'
-'SELF'
-'SEMI_SENSITIVE'
-'SEND'
-'SENT'
-'SEQUENCE'
-'SERIALIZABLE'
-'SESSION_TIMEOUT'
-'SETERROR'
-'SHARE'
-'SHOWPLAN'
-'SIGNATURE'
-'SIMPLE'
-'SINGLE_USER'
-'SIZE'
-'SMALLINT'
-'SNAPSHOT'
-'SPATIAL_WINDOW_MAX_CELLS'
-'STANDBY'
-'START_DATE'
-'STATIC'
-'STATS_STREAM'
-'STATUS'
-'STATUSONLY'
-'STDEV'
-'STDEVP'
-'STOPLIST'
-'STRING_AGG'
-'STUFF'
-'SUBJECT'
-'SUBSCRIPTION'
-'SUM'
-'SUSPEND'
-'SYMMETRIC'
-'SYNCHRONOUS_COMMIT'
-'SYNONYM'
-'SYSTEM'
-'TAKE'
-'TARGET_RECOVERY_TIME'
-'TB'
-'TEXTIMAGE_ON'
-'THROW'
-'TIES'
-'TIME'
-'TIMEOUT'
-'TIMER'
-'TINYINT'
-'TORN_PAGE_DETECTION'
-'TRANSFORM_NOISE_WORDS'
-'TRIPLE_DES'
-'TRIPLE_DES_3KEY'
-'TRUSTWORTHY'
-'TRY'
-'TSQL'
-'TWO_DIGIT_YEAR_CUTOFF'
-'TYPE'
-'TYPE_WARNING'
-'UNBOUNDED'
-'UNCOMMITTED'
-'UNKNOWN'
-'UNLIMITED'
-'UOW'
-'USING'
-'VALID_XML'
-'VALIDATION'
-'VALUE'
-'VAR'
-'VARP'
-'VIEW_METADATA'
-'VIEWS'
-'WAIT'
-'WELL_FORMED_XML'
-'WITHOUT_ARRAY_WRAPPER'
-'WORK'
-'WORKLOAD'
-'XML'
-'XMLDATA'
-'XMLNAMESPACES'
-'XMLSCHEMA'
-'XSINIL'
-'$ACTION'
-null
-null
-null
-null
-'\''
-null
-null
-null
-null
-null
-null
-null
-null
-null
-null
-'='
-'>'
-'<'
-'!'
-'+='
-'-='
-'*='
-'/='
-'%='
-'&='
-'^='
-'|='
-'||'
-'.'
-'_'
-'@'
-'#'
-'$'
-'('
-')'
-','
-';'
-':'
-'*'
-'/'
-'%'
-'+'
-'-'
-'~'
-'|'
-'&'
-'^'
-null
-
-token symbolic names:
-null
-ABSENT
-ADD
-AES
-ALL
-ALLOW_CONNECTIONS
-ALLOW_MULTIPLE_EVENT_LOSS
-ALLOW_SINGLE_EVENT_LOSS
-ALTER
-AND
-ANONYMOUS
-ANY
-APPEND
-APPLICATION
-AS
-ASC
-ASYMMETRIC
-ASYNCHRONOUS_COMMIT
-AUTHORIZATION
-AUTHENTICATION
-AUTOMATED_BACKUP_PREFERENCE
-AUTOMATIC
-AVAILABILITY_MODE
-BACKSLASH
-BACKUP
-BEFORE
-BEGIN
-BETWEEN
-BLOCK
-BLOCKSIZE
-BLOCKING_HIERARCHY
-BREAK
-BROWSE
-BUFFER
-BUFFERCOUNT
-BULK
-BY
-CACHE
-CALLED
-CASCADE
-CASE
-CERTIFICATE
-CHANGETABLE
-CHANGES
-CHECK
-CHECKPOINT
-CHECK_POLICY
-CHECK_EXPIRATION
-CLASSIFIER_FUNCTION
-CLOSE
-CLUSTER
-CLUSTERED
-COALESCE
-COLLATE
-COLUMN
-COMPRESSION
-COMMIT
-COMPUTE
-CONFIGURATION
-CONSTRAINT
-CONTAINMENT
-CONTAINS
-CONTAINSTABLE
-CONTEXT
-CONTINUE
-CONTINUE_AFTER_ERROR
-CONTRACT
-CONTRACT_NAME
-CONVERSATION
-CONVERT
-COPY_ONLY
-CREATE
-CROSS
-CURRENT
-CURRENT_DATE
-CURRENT_TIME
-CURRENT_TIMESTAMP
-CURRENT_USER
-CURSOR
-CYCLE
-DATA_COMPRESSION
-DATA_SOURCE
-DATABASE
-DATABASE_MIRRORING
-DBCC
-DEALLOCATE
-DECLARE
-DEFAULT
-DEFAULT_DATABASE
-DEFAULT_SCHEMA
-DELETE
-DENY
-DESC
-DIAGNOSTICS
-DIFFERENTIAL
-DISK
-DISTINCT
-DISTRIBUTED
-DOUBLE
-DOUBLE_BACK_SLASH
-DOUBLE_FORWARD_SLASH
-DROP
-DTC_SUPPORT
-DUMP
-ELSE
-ENABLED
-END
-ENDPOINT
-ERRLVL
-ESCAPE
-ERROR
-EVENT
-EVENTDATA
-EVENT_RETENTION_MODE
-EXCEPT
-EXECUTABLE_FILE
-EXECUTE
-EXISTS
-EXPIREDATE
-EXIT
-EXTENSION
-EXTERNAL
-EXTERNAL_ACCESS
-FAILOVER
-FAILURECONDITIONLEVEL
-FAN_IN
-FETCH
-FILE
-FILENAME
-FILLFACTOR
-FILE_SNAPSHOT
-FOR
-FORCESEEK
-FORCE_SERVICE_ALLOW_DATA_LOSS
-FOREIGN
-FREETEXT
-FREETEXTTABLE
-FROM
-FULL
-FUNCTION
-GET
-GOTO
-GOVERNOR
-GRANT
-GROUP
-HAVING
-HASHED
-HEALTHCHECKTIMEOUT
-IDENTITY
-IDENTITYCOL
-IDENTITY_INSERT
-IF
-IIF
-IN
-INCLUDE
-INCREMENT
-INDEX
-INFINITE
-INIT
-INNER
-INSERT
-INSTEAD
-INTERSECT
-INTO
-IPV4_ADDR
-IPV6_ADDR
-IS
-ISNULL
-JOIN
-KERBEROS
-KEY
-KEY_PATH
-KEY_STORE_PROVIDER_NAME
-KILL
-LANGUAGE
-LEFT
-LIBRARY
-LIFETIME
-LIKE
-LINENO
-LINUX
-LISTENER_IP
-LISTENER_PORT
-LOAD
-LOCAL_SERVICE_NAME
-LOG
-MATCHED
-MASTER
-MAX_MEMORY
-MAXTRANSFER
-MAXVALUE
-MAX_DISPATCH_LATENCY
-MAX_EVENT_SIZE
-MAX_SIZE
-MAX_OUTSTANDING_IO_PER_VOLUME
-MEDIADESCRIPTION
-MEDIANAME
-MEMBER
-MEMORY_PARTITION_MODE
-MERGE
-MESSAGE_FORWARDING
-MESSAGE_FORWARD_SIZE
-MINVALUE
-MIRROR
-MUST_CHANGE
-NATIONAL
-NEGOTIATE
-NOCHECK
-NOFORMAT
-NOINIT
-NONCLUSTERED
-NONE
-NOREWIND
-NOSKIP
-NOUNLOAD
-NO_CHECKSUM
-NO_COMPRESSION
-NO_EVENT_LOSS
-NOT
-NOTIFICATION
-NTLM
-NULL
-NULLIF
-OF
-OFF
-OFFSETS
-OLD_PASSWORD
-ON
-ON_FAILURE
-OPEN
-OPENDATASOURCE
-OPENQUERY
-OPENROWSET
-OPENXML
-OPTION
-OR
-ORDER
-OUTER
-OVER
-PAGE
-PARAM_NODE
-PARTIAL
-PASSWORD
-PERCENT
-PERMISSION_SET
-PER_CPU
-PER_DB
-PER_NODE
-PIVOT
-PLAN
-PLATFORM
-POLICY
-PRECISION
-PREDICATE
-PRIMARY
-PRINT
-PROC
-PROCEDURE
-PROCESS
-PUBLIC
-PYTHON
-R
-RAISERROR
-RAW
-READ
-READTEXT
-READ_WRITE_FILEGROUPS
-RECONFIGURE
-REFERENCES
-REGENERATE
-RELATED_CONVERSATION
-RELATED_CONVERSATION_GROUP
-REPLICATION
-REQUIRED
-RESET
-RESTART
-RESTORE
-RESTRICT
-RESUME
-RETAINDAYS
-RETURN
-RETURNS
-REVERT
-REVOKE
-REWIND
-RIGHT
-ROLLBACK
-ROLE
-ROWCOUNT
-ROWGUIDCOL
-RSA_512
-RSA_1024
-RSA_2048
-RSA_3072
-RSA_4096
-SAFETY
-RULE
-SAFE
-SAVE
-SCHEDULER
-SCHEMA
-SCHEME
-SECURITYAUDIT
-SELECT
-SEMANTICKEYPHRASETABLE
-SEMANTICSIMILARITYDETAILSTABLE
-SEMANTICSIMILARITYTABLE
-SERVER
-SERVICE
-SERVICE_BROKER
-SERVICE_NAME
-SESSION
-SESSION_USER
-SET
-SETUSER
-SHUTDOWN
-SID
-SKIP_KEYWORD
-SOFTNUMA
-SOME
-SOURCE
-SPECIFICATION
-SPLIT
-SQLDUMPERFLAGS
-SQLDUMPERPATH
-SQLDUMPERTIMEOUT
-STATISTICS
-STATE
-STATS
-START
-STARTED
-STARTUP_STATE
-STOP
-STOPPED
-STOP_ON_ERROR
-SUPPORTED
-SYSTEM_USER
-TABLE
-TABLESAMPLE
-TAPE
-TARGET
-TCP
-TEXTSIZE
-THEN
-TO
-TOP
-TRACK_CAUSALITY
-TRAN
-TRANSACTION
-TRANSFER
-TRIGGER
-TRUNCATE
-TSEQUAL
-UNCHECKED
-UNION
-UNIQUE
-UNLOCK
-UNPIVOT
-UNSAFE
-UPDATE
-UPDATETEXT
-URL
-USE
-USED
-USER
-VALUES
-VARYING
-VERBOSELOGGING
-VIEW
-VISIBILITY
-WAITFOR
-WHEN
-WHERE
-WHILE
-WINDOWS
-WITH
-WITHIN
-WITHOUT
-WITNESS
-WRITETEXT
-ABSOLUTE
-ACCENT_SENSITIVITY
-ACTION
-ACTIVATION
-ACTIVE
-ADDRESS
-AES_128
-AES_192
-AES_256
-AFFINITY
-AFTER
-AGGREGATE
-ALGORITHM
-ALLOW_ENCRYPTED_VALUE_MODIFICATIONS
-ALLOW_SNAPSHOT_ISOLATION
-ALLOWED
-ANSI_NULL_DEFAULT
-ANSI_NULLS
-ANSI_PADDING
-ANSI_WARNINGS
-APPLICATION_LOG
-APPLY
-ARITHABORT
-ASSEMBLY
-AUDIT
-AUDIT_GUID
-AUTO
-AUTO_CLEANUP
-AUTO_CLOSE
-AUTO_CREATE_STATISTICS
-AUTO_SHRINK
-AUTO_UPDATE_STATISTICS
-AUTO_UPDATE_STATISTICS_ASYNC
-AVAILABILITY
-AVG
-BACKUP_PRIORITY
-BEGIN_DIALOG
-BIGINT
-BINARY_BASE64
-BINARY_CHECKSUM
-BINDING
-BLOB_STORAGE
-BROKER
-BROKER_INSTANCE
-BULK_LOGGED
-CALLER
-CAP_CPU_PERCENT
-CAST
-CATALOG
-CATCH
-CHANGE_RETENTION
-CHANGE_TRACKING
-CHECKSUM
-CHECKSUM_AGG
-CLEANUP
-COLLECTION
-COLUMN_MASTER_KEY
-COMMITTED
-COMPATIBILITY_LEVEL
-CONCAT
-CONCAT_NULL_YIELDS_NULL
-CONTENT
-CONTROL
-COOKIE
-COUNT
-COUNT_BIG
-COUNTER
-CPU
-CREATE_NEW
-CREATION_DISPOSITION
-CREDENTIAL
-CRYPTOGRAPHIC
-CURSOR_CLOSE_ON_COMMIT
-CURSOR_DEFAULT
-DATA
-DATE_CORRELATION_OPTIMIZATION
-DATEADD
-DATEDIFF
-DATENAME
-DATEPART
-DAYS
-DB_CHAINING
-DB_FAILOVER
-DECRYPTION
-DEFAULT_DOUBLE_QUOTE
-DEFAULT_FULLTEXT_LANGUAGE
-DEFAULT_LANGUAGE
-DELAY
-DELAYED_DURABILITY
-DELETED
-DENSE_RANK
-DEPENDENTS
-DES
-DESCRIPTION
-DESX
-DHCP
-DIALOG
-DIRECTORY_NAME
-DISABLE
-DISABLE_BROKER
-DISABLED
-DISK_DRIVE
-DOCUMENT
-DYNAMIC
-ELEMENTS
-EMERGENCY
-EMPTY
-ENABLE
-ENABLE_BROKER
-ENCRYPTED_VALUE
-ENCRYPTION
-ENDPOINT_URL
-ERROR_BROKER_CONVERSATIONS
-EXCLUSIVE
-EXECUTABLE
-EXIST
-EXPAND
-EXPIRY_DATE
-EXPLICIT
-FAIL_OPERATION
-FAILOVER_MODE
-FAILURE
-FAILURE_CONDITION_LEVEL
-FAST
-FAST_FORWARD
-FILEGROUP
-FILEGROWTH
-FILEPATH
-FILESTREAM
-FILTER
-FIRST
-FIRST_VALUE
-FOLLOWING
-FORCE
-FORCE_FAILOVER_ALLOW_DATA_LOSS
-FORCED
-FORMAT
-FORWARD_ONLY
-FULLSCAN
-FULLTEXT
-GB
-GETDATE
-GETUTCDATE
-GLOBAL
-GO
-GROUP_MAX_REQUESTS
-GROUPING
-GROUPING_ID
-HADR
-HASH
-HEALTH_CHECK_TIMEOUT
-HIGH
-HONOR_BROKER_PRIORITY
-HOURS
-IDENTITY_VALUE
-IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX
-IMMEDIATE
-IMPERSONATE
-IMPORTANCE
-INCLUDE_NULL_VALUES
-INCREMENTAL
-INITIATOR
-INPUT
-INSENSITIVE
-INSERTED
-INT
-IP
-ISOLATION
-JOB
-JSON
-KB
-KEEP
-KEEPFIXED
-KEY_SOURCE
-KEYS
-KEYSET
-LAG
-LAST
-LAST_VALUE
-LEAD
-LEVEL
-LIST
-LISTENER
-LISTENER_URL
-LOB_COMPACTION
-LOCAL
-LOCATION
-LOCK
-LOCK_ESCALATION
-LOGIN
-LOOP
-LOW
-MANUAL
-MARK
-MATERIALIZED
-MAX
-MAX_CPU_PERCENT
-MAX_DOP
-MAX_FILES
-MAX_IOPS_PER_VOLUME
-MAX_MEMORY_PERCENT
-MAX_PROCESSES
-MAX_QUEUE_READERS
-MAX_ROLLOVER_FILES
-MAXDOP
-MAXRECURSION
-MAXSIZE
-MB
-MEDIUM
-MEMORY_OPTIMIZED_DATA
-MESSAGE
-MIN
-MIN_ACTIVE_ROWVERSION
-MIN_CPU_PERCENT
-MIN_IOPS_PER_VOLUME
-MIN_MEMORY_PERCENT
-MINUTES
-MIRROR_ADDRESS
-MIXED_PAGE_ALLOCATION
-MODE
-MODIFY
-MOVE
-MULTI_USER
-NAME
-NESTED_TRIGGERS
-NEW_ACCOUNT
-NEW_BROKER
-NEW_PASSWORD
-NEXT
-NO
-NO_TRUNCATE
-NO_WAIT
-NOCOUNT
-NODES
-NOEXPAND
-NON_TRANSACTED_ACCESS
-NORECOMPUTE
-NORECOVERY
-NOWAIT
-NTILE
-NUMANODE
-NUMBER
-NUMERIC_ROUNDABORT
-OBJECT
-OFFLINE
-OFFSET
-OLD_ACCOUNT
-ONLINE
-ONLY
-OPEN_EXISTING
-OPTIMISTIC
-OPTIMIZE
-OUT
-OUTPUT
-OVERRIDE
-OWNER
-PAGE_VERIFY
-PARAMETERIZATION
-PARTITION
-PARTITIONS
-PARTNER
-PATH
-POISON_MESSAGE_HANDLING
-POOL
-PORT
-PRECEDING
-PRIMARY_ROLE
-PRIOR
-PRIORITY
-PRIORITY_LEVEL
-PRIVATE
-PRIVATE_KEY
-PRIVILEGES
-PROCEDURE_NAME
-PROPERTY
-PROVIDER
-PROVIDER_KEY_NAME
-QUERY
-QUEUE
-QUEUE_DELAY
-QUOTED_IDENTIFIER
-RANGE
-RANK
-RC2
-RC4
-RC4_128
-READ_COMMITTED_SNAPSHOT
-READ_ONLY
-READ_ONLY_ROUTING_LIST
-READ_WRITE
-READONLY
-REBUILD
-RECEIVE
-RECOMPILE
-RECOVERY
-RECURSIVE_TRIGGERS
-RELATIVE
-REMOTE
-REMOTE_SERVICE_NAME
-REMOVE
-REORGANIZE
-REPEATABLE
-REPLICA
-REQUEST_MAX_CPU_TIME_SEC
-REQUEST_MAX_MEMORY_GRANT_PERCENT
-REQUEST_MEMORY_GRANT_TIMEOUT_SEC
-REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT
-RESERVE_DISK_SPACE
-RESOURCE
-RESOURCE_MANAGER_LOCATION
-RESTRICTED_USER
-RETENTION
-ROBUST
-ROOT
-ROUTE
-ROW
-ROW_NUMBER
-ROWGUID
-ROWS
-SAMPLE
-SCHEMABINDING
-SCOPED
-SCROLL
-SCROLL_LOCKS
-SEARCH
-SECONDARY
-SECONDARY_ONLY
-SECONDARY_ROLE
-SECONDS
-SECRET
-SECURITY
-SECURITY_LOG
-SEEDING_MODE
-SELF
-SEMI_SENSITIVE
-SEND
-SENT
-SEQUENCE
-SERIALIZABLE
-SESSION_TIMEOUT
-SETERROR
-SHARE
-SHOWPLAN
-SIGNATURE
-SIMPLE
-SINGLE_USER
-SIZE
-SMALLINT
-SNAPSHOT
-SPATIAL_WINDOW_MAX_CELLS
-STANDBY
-START_DATE
-STATIC
-STATS_STREAM
-STATUS
-STATUSONLY
-STDEV
-STDEVP
-STOPLIST
-STRING_AGG
-STUFF
-SUBJECT
-SUBSCRIPTION
-SUM
-SUSPEND
-SYMMETRIC
-SYNCHRONOUS_COMMIT
-SYNONYM
-SYSTEM
-TAKE
-TARGET_RECOVERY_TIME
-TB
-TEXTIMAGE_ON
-THROW
-TIES
-TIME
-TIMEOUT
-TIMER
-TINYINT
-TORN_PAGE_DETECTION
-TRANSFORM_NOISE_WORDS
-TRIPLE_DES
-TRIPLE_DES_3KEY
-TRUSTWORTHY
-TRY
-TSQL
-TWO_DIGIT_YEAR_CUTOFF
-TYPE
-TYPE_WARNING
-UNBOUNDED
-UNCOMMITTED
-UNKNOWN
-UNLIMITED
-UOW
-USING
-VALID_XML
-VALIDATION
-VALUE
-VAR
-VARP
-VIEW_METADATA
-VIEWS
-WAIT
-WELL_FORMED_XML
-WITHOUT_ARRAY_WRAPPER
-WORK
-WORKLOAD
-XML
-XMLDATA
-XMLNAMESPACES
-XMLSCHEMA
-XSINIL
-DOLLAR_ACTION
-SPACE
-COMMENT
-LINE_COMMENT
-DOUBLE_QUOTE_ID
-SINGLE_QUOTE
-SQUARE_BRACKET_ID
-LOCAL_ID
-DECIMAL
-ID
-QUOTED_URL
-QUOTED_HOST_AND_PORT
-STRING
-BINARY
-FLOAT
-REAL
-EQUAL
-GREATER
-LESS
-EXCLAMATION
-PLUS_ASSIGN
-MINUS_ASSIGN
-MULT_ASSIGN
-DIV_ASSIGN
-MOD_ASSIGN
-AND_ASSIGN
-XOR_ASSIGN
-OR_ASSIGN
-DOUBLE_BAR
-DOT
-UNDERLINE
-AT
-SHARP
-DOLLAR
-LR_BRACKET
-RR_BRACKET
-COMMA
-SEMI
-COLON
-STAR
-DIVIDE
-MODULE
-PLUS
-MINUS
-BIT_NOT
-BIT_OR
-BIT_AND
-BIT_XOR
-IPV4_OCTECT
-
-rule names:
-tsql_file
-batch
-sql_clauses
-sql_clause
-dml_clause
-ddl_clause
-backup_statement
-cfl_statement
-block_statement
-break_statement
-continue_statement
-goto_statement
-return_statement
-if_statement
-throw_statement
-throw_error_number
-throw_message
-throw_state
-try_catch_statement
-waitfor_statement
-while_statement
-print_statement
-raiseerror_statement
-empty_statement
-another_statement
-alter_application_role
-create_application_role
-drop_aggregate
-drop_application_role
-alter_assembly
-alter_assembly_start
-alter_assembly_clause
-alter_assembly_from_clause
-alter_assembly_from_clause_start
-alter_assembly_drop_clause
-alter_assembly_drop_multiple_files
-alter_assembly_drop
-alter_assembly_add_clause
-alter_asssembly_add_clause_start
-alter_assembly_client_file_clause
-alter_assembly_file_name
-alter_assembly_file_bits
-alter_assembly_as
-alter_assembly_with_clause
-alter_assembly_with
-client_assembly_specifier
-assembly_option
-network_file_share
-network_computer
-network_file_start
-file_path
-file_directory_path_separator
-local_file
-local_drive
-multiple_local_files
-multiple_local_file_start
-create_assembly
-drop_assembly
-alter_asymmetric_key
-alter_asymmetric_key_start
-asymmetric_key_option
-asymmetric_key_option_start
-asymmetric_key_password_change_option
-create_asymmetric_key
-drop_asymmetric_key
-alter_authorization
-authorization_grantee
-entity_to
-colon_colon
-alter_authorization_start
-alter_authorization_for_sql_database
-alter_authorization_for_azure_dw
-alter_authorization_for_parallel_dw
-class_type
-class_type_for_sql_database
-class_type_for_azure_dw
-class_type_for_parallel_dw
-drop_availability_group
-alter_availability_group
-alter_availability_group_start
-alter_availability_group_options
-create_or_alter_broker_priority
-drop_broker_priority
-alter_certificate
-alter_column_encryption_key
-create_column_encryption_key
-drop_certificate
-drop_column_encryption_key
-drop_column_master_key
-drop_contract
-drop_credential
-drop_cryptograhic_provider
-drop_database
-drop_database_audit_specification
-drop_database_scoped_credential
-drop_default
-drop_endpoint
-drop_external_data_source
-drop_external_file_format
-drop_external_library
-drop_external_resource_pool
-drop_external_table
-drop_event_notifications
-drop_event_session
-drop_fulltext_catalog
-drop_fulltext_index
-drop_fulltext_stoplist
-drop_login
-drop_master_key
-drop_message_type
-drop_partition_function
-drop_partition_scheme
-drop_queue
-drop_remote_service_binding
-drop_resource_pool
-drop_db_role
-drop_route
-drop_rule
-drop_schema
-drop_search_property_list
-drop_security_policy
-drop_sequence
-drop_server_audit
-drop_server_audit_specification
-drop_server_role
-drop_service
-drop_signature
-drop_statistics_name_azure_dw_and_pdw
-drop_symmetric_key
-drop_synonym
-drop_user
-drop_workload_group
-drop_xml_schema_collection
-disable_trigger
-enable_trigger
-lock_table
-truncate_table
-create_column_master_key
-alter_credential
-create_credential
-alter_cryptographic_provider
-create_cryptographic_provider
-create_event_notification
-create_or_alter_event_session
-event_session_predicate_expression
-event_session_predicate_factor
-event_session_predicate_leaf
-alter_external_data_source
-alter_external_library
-create_external_library
-alter_external_resource_pool
-create_external_resource_pool
-alter_fulltext_catalog
-create_fulltext_catalog
-alter_fulltext_stoplist
-create_fulltext_stoplist
-alter_login_sql_server
-create_login_sql_server
-alter_login_azure_sql
-create_login_azure_sql
-alter_login_azure_sql_dw_and_pdw
-create_login_pdw
-alter_master_key_sql_server
-create_master_key_sql_server
-alter_master_key_azure_sql
-create_master_key_azure_sql
-alter_message_type
-alter_partition_function
-alter_partition_scheme
-alter_remote_service_binding
-create_remote_service_binding
-create_resource_pool
-alter_resource_governor
-alter_db_role
-create_db_role
-create_route
-create_rule
-alter_schema_sql
-create_schema
-create_schema_azure_sql_dw_and_pdw
-alter_schema_azure_sql_dw_and_pdw
-create_search_property_list
-create_security_policy
-alter_sequence
-create_sequence
-alter_server_audit
-create_server_audit
-alter_server_audit_specification
-create_server_audit_specification
-alter_server_configuration
-alter_server_role
-create_server_role
-alter_server_role_pdw
-alter_service
-create_service
-alter_service_master_key
-alter_symmetric_key
-create_symmetric_key
-create_synonym
-alter_user
-create_user
-create_user_azure_sql_dw
-alter_user_azure_sql
-alter_workload_group
-create_workload_group
-create_xml_schema_collection
-create_queue
-queue_settings
-alter_queue
-queue_action
-queue_rebuild_options
-create_contract
-conversation_statement
-message_statement
-merge_statement
-merge_matched
-merge_not_matched
-delete_statement
-delete_statement_from
-insert_statement
-insert_statement_value
-receive_statement
-select_statement
-time
-update_statement
-output_clause
-output_dml_list_elem
-output_column_name
-create_database
-create_index
-create_or_alter_procedure
-create_or_alter_trigger
-create_or_alter_dml_trigger
-dml_trigger_option
-dml_trigger_operation
-create_or_alter_ddl_trigger
-ddl_trigger_operation
-create_or_alter_function
-func_body_returns_select
-func_body_returns_table
-func_body_returns_scalar
-procedure_param
-procedure_option
-function_option
-create_statistics
-update_statistics
-create_table
-table_options
-create_view
-view_attribute
-alter_table
-alter_database
-database_optionspec
-auto_option
-change_tracking_option
-change_tracking_option_list
-containment_option
-cursor_option
-alter_endpoint
-database_mirroring_option
-mirroring_set_option
-mirroring_partner
-mirroring_witness
-witness_partner_equal
-partner_option
-witness_option
-witness_server
-partner_server
-mirroring_host_port_seperator
-partner_server_tcp_prefix
-port_number
-host
-date_correlation_optimization_option
-db_encryption_option
-db_state_option
-db_update_option
-db_user_access_option
-delayed_durability_option
-external_access_option
-hadr_options
-mixed_page_allocation_option
-parameterization_option
-recovery_option
-service_broker_option
-snapshot_option
-sql_option
-target_recovery_time_option
-termination
-drop_index
-drop_relational_or_xml_or_spatial_index
-drop_backward_compatible_index
-drop_procedure
-drop_trigger
-drop_dml_trigger
-drop_ddl_trigger
-drop_function
-drop_statistics
-drop_table
-drop_view
-create_type
-drop_type
-rowset_function_limited
-openquery
-opendatasource
-declare_statement
-cursor_statement
-backup_database
-backup_log
-backup_certificate
-backup_master_key
-backup_service_master_key
-kill_statement
-kill_process
-kill_query_notification
-kill_stats_job
-execute_statement
-execute_body
-execute_statement_arg
-execute_var_string
-security_statement
-create_certificate
-existing_keys
-private_key_options
-generate_new_keys
-date_options
-open_key
-close_key
-create_key
-key_options
-algorithm
-encryption_mechanism
-decryption_mechanism
-grant_permission
-set_statement
-transaction_statement
-go_statement
-use_statement
-setuser_statement
-reconfigure_statement
-shutdown_statement
-dbcc_clause
-dbcc_options
-execute_clause
-declare_local
-table_type_definition
-xml_type_definition
-xml_schema_collection
-column_def_table_constraints
-column_def_table_constraint
-column_definition
-materialized_column_definition
-column_constraint
-table_constraint
-on_delete
-on_update
-index_options
-index_option
-declare_cursor
-declare_set_cursor_common
-declare_set_cursor_common_partial
-fetch_cursor
-set_special
-constant_LOCAL_ID
-expression
-primitive_expression
-case_expression
-unary_operator_expression
-bracket_expression
-constant_expression
-subquery
-with_expression
-common_table_expression
-update_elem
-search_condition_list
-search_condition
-search_condition_and
-search_condition_not
-predicate
-query_expression
-sql_union
-query_specification
-top_clause
-top_percent
-top_count
-order_by_clause
-for_clause
-xml_common_directives
-order_by_expression
-group_by_item
-option_clause
-option
-optimize_for_arg
-select_list
-udt_method_arguments
-asterisk
-column_elem
-udt_elem
-expression_elem
-select_list_elem
-table_sources
-table_source
-table_source_item_joined
-table_source_item
-open_xml
-schema_declaration
-column_declaration
-change_table
-join_part
-pivot_clause
-unpivot_clause
-full_column_name_list
-table_name_with_hint
-rowset_function
-bulk_option
-derived_table
-function_call
-xml_data_type_methods
-value_method
-query_method
-exist_method
-modify_method
-nodes_method
-switch_section
-switch_search_condition_section
-as_column_alias
-as_table_alias
-table_alias
-with_table_hints
-insert_with_table_hints
-table_hint
-index_value
-column_alias_list
-column_alias
-table_value_constructor
-expression_list
-ranking_windowed_function
-aggregate_windowed_function
-analytic_windowed_function
-all_distinct_expression
-over_clause
-row_or_range_clause
-window_frame_extent
-window_frame_bound
-window_frame_preceding
-window_frame_following
-create_database_option
-database_filestream_option
-database_file_spec
-file_group
-file_spec
-entity_name
-entity_name_for_azure_dw
-entity_name_for_parallel_dw
-full_table_name
-table_name
-simple_name
-func_proc_name_schema
-func_proc_name_database_schema
-func_proc_name_server_database_schema
-ddl_object
-full_column_name
-column_name_list_with_order
-column_name_list
-cursor_name
-on_off
-clustered
-null_notnull
-null_or_default
-scalar_function_name
-begin_conversation_timer
-begin_conversation_dialog
-contract_name
-service_name
-end_conversation
-waitfor_conversation
-get_conversation
-queue_id
-send_conversation
-data_type
-default_value
-constant
-sign
-id
-simple_id
-comparison_operator
-assignment_operator
-file_size
-
-
-atn:
-[3, 24715, 42794, 33075, 47597, 16764, 15335, 30598, 22884, 3, 842, 10760, 4, 2, 9, 2, 4, 3, 9, 3, 4, 4, 9, 4, 4, 5, 9, 5, 4, 6, 9, 6, 4, 7, 9, 7, 4, 8, 9, 8, 4, 9, 9, 9, 4, 10, 9, 10, 4, 11, 9, 11, 4, 12, 9, 12, 4, 13, 9, 13, 4, 14, 9, 14, 4, 15, 9, 15, 4, 16, 9, 16, 4, 17, 9, 17, 4, 18, 9, 18, 4, 19, 9, 19, 4, 20, 9, 20, 4, 21, 9, 21, 4, 22, 9, 22, 4, 23, 9, 23, 4, 24, 9, 24, 4, 25, 9, 25, 4, 26, 9, 26, 4, 27, 9, 27, 4, 28, 9, 28, 4, 29, 9, 29, 4, 30, 9, 30, 4, 31, 9, 31, 4, 32, 9, 32, 4, 33, 9, 33, 4, 34, 9, 34, 4, 35, 9, 35, 4, 36, 9, 36, 4, 37, 9, 37, 4, 38, 9, 38, 4, 39, 9, 39, 4, 40, 9, 40, 4, 41, 9, 41, 4, 42, 9, 42, 4, 43, 9, 43, 4, 44, 9, 44, 4, 45, 9, 45, 4, 46, 9, 46, 4, 47, 9, 47, 4, 48, 9, 48, 4, 49, 9, 49, 4, 50, 9, 50, 4, 51, 9, 51, 4, 52, 9, 52, 4, 53, 9, 53, 4, 54, 9, 54, 4, 55, 9, 55, 4, 56, 9, 56, 4, 57, 9, 57, 4, 58, 9, 58, 4, 59, 9, 59, 4, 60, 9, 60, 4, 61, 9, 61, 4, 62, 9, 62, 4, 63, 9, 63, 4, 64, 9, 64, 4, 65, 9, 65, 4, 66, 9, 66, 4, 67, 9, 67, 4, 68, 9, 68, 4, 69, 9, 69, 4, 70, 9, 70, 4, 71, 9, 71, 4, 72, 9, 72, 4, 73, 9, 73, 4, 74, 9, 74, 4, 75, 9, 75, 4, 76, 9, 76, 4, 77, 9, 77, 4, 78, 9, 78, 4, 79, 9, 79, 4, 80, 9, 80, 4, 81, 9, 81, 4, 82, 9, 82, 4, 83, 9, 83, 4, 84, 9, 84, 4, 85, 9, 85, 4, 86, 9, 86, 4, 87, 9, 87, 4, 88, 9, 88, 4, 89, 9, 89, 4, 90, 9, 90, 4, 91, 9, 91, 4, 92, 9, 92, 4, 93, 9, 93, 4, 94, 9, 94, 4, 95, 9, 95, 4, 96, 9, 96, 4, 97, 9, 97, 4, 98, 9, 98, 4, 99, 9, 99, 4, 100, 9, 100, 4, 101, 9, 101, 4, 102, 9, 102, 4, 103, 9, 103, 4, 104, 9, 104, 4, 105, 9, 105, 4, 106, 9, 106, 4, 107, 9, 107, 4, 108, 9, 108, 4, 109, 9, 109, 4, 110, 9, 110, 4, 111, 9, 111, 4, 112, 9, 112, 4, 113, 9, 113, 4, 114, 9, 114, 4, 115, 9, 115, 4, 116, 9, 116, 4, 117, 9, 117, 4, 118, 9, 118, 4, 119, 9, 119, 4, 120, 9, 120, 4, 121, 9, 121, 4, 122, 9, 122, 4, 123, 9, 123, 4, 124, 9, 124, 4, 125, 9, 125, 4, 126, 9, 126, 4, 127, 9, 127, 4, 128, 9, 128, 4, 129, 9, 129, 4, 130, 9, 130, 4, 131, 9, 131, 4, 132, 9, 132, 4, 133, 9, 133, 4, 134, 9, 134, 4, 135, 9, 135, 4, 136, 9, 136, 4, 137, 9, 137, 4, 138, 9, 138, 4, 139, 9, 139, 4, 140, 9, 140, 4, 141, 9, 141, 4, 142, 9, 142, 4, 143, 9, 143, 4, 144, 9, 144, 4, 145, 9, 145, 4, 146, 9, 146, 4, 147, 9, 147, 4, 148, 9, 148, 4, 149, 9, 149, 4, 150, 9, 150, 4, 151, 9, 151, 4, 152, 9, 152, 4, 153, 9, 153, 4, 154, 9, 154, 4, 155, 9, 155, 4, 156, 9, 156, 4, 157, 9, 157, 4, 158, 9, 158, 4, 159, 9, 159, 4, 160, 9, 160, 4, 161, 9, 161, 4, 162, 9, 162, 4, 163, 9, 163, 4, 164, 9, 164, 4, 165, 9, 165, 4, 166, 9, 166, 4, 167, 9, 167, 4, 168, 9, 168, 4, 169, 9, 169, 4, 170, 9, 170, 4, 171, 9, 171, 4, 172, 9, 172, 4, 173, 9, 173, 4, 174, 9, 174, 4, 175, 9, 175, 4, 176, 9, 176, 4, 177, 9, 177, 4, 178, 9, 178, 4, 179, 9, 179, 4, 180, 9, 180, 4, 181, 9, 181, 4, 182, 9, 182, 4, 183, 9, 183, 4, 184, 9, 184, 4, 185, 9, 185, 4, 186, 9, 186, 4, 187, 9, 187, 4, 188, 9, 188, 4, 189, 9, 189, 4, 190, 9, 190, 4, 191, 9, 191, 4, 192, 9, 192, 4, 193, 9, 193, 4, 194, 9, 194, 4, 195, 9, 195, 4, 196, 9, 196, 4, 197, 9, 197, 4, 198, 9, 198, 4, 199, 9, 199, 4, 200, 9, 200, 4, 201, 9, 201, 4, 202, 9, 202, 4, 203, 9, 203, 4, 204, 9, 204, 4, 205, 9, 205, 4, 206, 9, 206, 4, 207, 9, 207, 4, 208, 9, 208, 4, 209, 9, 209, 4, 210, 9, 210, 4, 211, 9, 211, 4, 212, 9, 212, 4, 213, 9, 213, 4, 214, 9, 214, 4, 215, 9, 215, 4, 216, 9, 216, 4, 217, 9, 217, 4, 218, 9, 218, 4, 219, 9, 219, 4, 220, 9, 220, 4, 221, 9, 221, 4, 222, 9, 222, 4, 223, 9, 223, 4, 224, 9, 224, 4, 225, 9, 225, 4, 226, 9, 226, 4, 227, 9, 227, 4, 228, 9, 228, 4, 229, 9, 229, 4, 230, 9, 230, 4, 231, 9, 231, 4, 232, 9, 232, 4, 233, 9, 233, 4, 234, 9, 234, 4, 235, 9, 235, 4, 236, 9, 236, 4, 237, 9, 237, 4, 238, 9, 238, 4, 239, 9, 239, 4, 240, 9, 240, 4, 241, 9, 241, 4, 242, 9, 242, 4, 243, 9, 243, 4, 244, 9, 244, 4, 245, 9, 245, 4, 246, 9, 246, 4, 247, 9, 247, 4, 248, 9, 248, 4, 249, 9, 249, 4, 250, 9, 250, 4, 251, 9, 251, 4, 252, 9, 252, 4, 253, 9, 253, 4, 254, 9, 254, 4, 255, 9, 255, 4, 256, 9, 256, 4, 257, 9, 257, 4, 258, 9, 258, 4, 259, 9, 259, 4, 260, 9, 260, 4, 261, 9, 261, 4, 262, 9, 262, 4, 263, 9, 263, 4, 264, 9, 264, 4, 265, 9, 265, 4, 266, 9, 266, 4, 267, 9, 267, 4, 268, 9, 268, 4, 269, 9, 269, 4, 270, 9, 270, 4, 271, 9, 271, 4, 272, 9, 272, 4, 273, 9, 273, 4, 274, 9, 274, 4, 275, 9, 275, 4, 276, 9, 276, 4, 277, 9, 277, 4, 278, 9, 278, 4, 279, 9, 279, 4, 280, 9, 280, 4, 281, 9, 281, 4, 282, 9, 282, 4, 283, 9, 283, 4, 284, 9, 284, 4, 285, 9, 285, 4, 286, 9, 286, 4, 287, 9, 287, 4, 288, 9, 288, 4, 289, 9, 289, 4, 290, 9, 290, 4, 291, 9, 291, 4, 292, 9, 292, 4, 293, 9, 293, 4, 294, 9, 294, 4, 295, 9, 295, 4, 296, 9, 296, 4, 297, 9, 297, 4, 298, 9, 298, 4, 299, 9, 299, 4, 300, 9, 300, 4, 301, 9, 301, 4, 302, 9, 302, 4, 303, 9, 303, 4, 304, 9, 304, 4, 305, 9, 305, 4, 306, 9, 306, 4, 307, 9, 307, 4, 308, 9, 308, 4, 309, 9, 309, 4, 310, 9, 310, 4, 311, 9, 311, 4, 312, 9, 312, 4, 313, 9, 313, 4, 314, 9, 314, 4, 315, 9, 315, 4, 316, 9, 316, 4, 317, 9, 317, 4, 318, 9, 318, 4, 319, 9, 319, 4, 320, 9, 320, 4, 321, 9, 321, 4, 322, 9, 322, 4, 323, 9, 323, 4, 324, 9, 324, 4, 325, 9, 325, 4, 326, 9, 326, 4, 327, 9, 327, 4, 328, 9, 328, 4, 329, 9, 329, 4, 330, 9, 330, 4, 331, 9, 331, 4, 332, 9, 332, 4, 333, 9, 333, 4, 334, 9, 334, 4, 335, 9, 335, 4, 336, 9, 336, 4, 337, 9, 337, 4, 338, 9, 338, 4, 339, 9, 339, 4, 340, 9, 340, 4, 341, 9, 341, 4, 342, 9, 342, 4, 343, 9, 343, 4, 344, 9, 344, 4, 345, 9, 345, 4, 346, 9, 346, 4, 347, 9, 347, 4, 348, 9, 348, 4, 349, 9, 349, 4, 350, 9, 350, 4, 351, 9, 351, 4, 352, 9, 352, 4, 353, 9, 353, 4, 354, 9, 354, 4, 355, 9, 355, 4, 356, 9, 356, 4, 357, 9, 357, 4, 358, 9, 358, 4, 359, 9, 359, 4, 360, 9, 360, 4, 361, 9, 361, 4, 362, 9, 362, 4, 363, 9, 363, 4, 364, 9, 364, 4, 365, 9, 365, 4, 366, 9, 366, 4, 367, 9, 367, 4, 368, 9, 368, 4, 369, 9, 369, 4, 370, 9, 370, 4, 371, 9, 371, 4, 372, 9, 372, 4, 373, 9, 373, 4, 374, 9, 374, 4, 375, 9, 375, 4, 376, 9, 376, 4, 377, 9, 377, 4, 378, 9, 378, 4, 379, 9, 379, 4, 380, 9, 380, 4, 381, 9, 381, 4, 382, 9, 382, 4, 383, 9, 383, 4, 384, 9, 384, 4, 385, 9, 385, 4, 386, 9, 386, 4, 387, 9, 387, 4, 388, 9, 388, 4, 389, 9, 389, 4, 390, 9, 390, 4, 391, 9, 391, 4, 392, 9, 392, 4, 393, 9, 393, 4, 394, 9, 394, 4, 395, 9, 395, 4, 396, 9, 396, 4, 397, 9, 397, 4, 398, 9, 398, 4, 399, 9, 399, 4, 400, 9, 400, 4, 401, 9, 401, 4, 402, 9, 402, 4, 403, 9, 403, 4, 404, 9, 404, 4, 405, 9, 405, 4, 406, 9, 406, 4, 407, 9, 407, 4, 408, 9, 408, 4, 409, 9, 409, 4, 410, 9, 410, 4, 411, 9, 411, 4, 412, 9, 412, 4, 413, 9, 413, 4, 414, 9, 414, 4, 415, 9, 415, 4, 416, 9, 416, 4, 417, 9, 417, 4, 418, 9, 418, 4, 419, 9, 419, 4, 420, 9, 420, 4, 421, 9, 421, 4, 422, 9, 422, 4, 423, 9, 423, 4, 424, 9, 424, 4, 425, 9, 425, 4, 426, 9, 426, 4, 427, 9, 427, 4, 428, 9, 428, 4, 429, 9, 429, 4, 430, 9, 430, 4, 431, 9, 431, 4, 432, 9, 432, 4, 433, 9, 433, 4, 434, 9, 434, 4, 435, 9, 435, 4, 436, 9, 436, 4, 437, 9, 437, 4, 438, 9, 438, 4, 439, 9, 439, 4, 440, 9, 440, 4, 441, 9, 441, 4, 442, 9, 442, 4, 443, 9, 443, 4, 444, 9, 444, 4, 445, 9, 445, 4, 446, 9, 446, 4, 447, 9, 447, 4, 448, 9, 448, 4, 449, 9, 449, 4, 450, 9, 450, 4, 451, 9, 451, 4, 452, 9, 452, 4, 453, 9, 453, 4, 454, 9, 454, 4, 455, 9, 455, 4, 456, 9, 456, 4, 457, 9, 457, 4, 458, 9, 458, 4, 459, 9, 459, 4, 460, 9, 460, 4, 461, 9, 461, 4, 462, 9, 462, 4, 463, 9, 463, 4, 464, 9, 464, 4, 465, 9, 465, 4, 466, 9, 466, 4, 467, 9, 467, 4, 468, 9, 468, 4, 469, 9, 469, 4, 470, 9, 470, 4, 471, 9, 471, 4, 472, 9, 472, 4, 473, 9, 473, 4, 474, 9, 474, 4, 475, 9, 475, 4, 476, 9, 476, 4, 477, 9, 477, 4, 478, 9, 478, 4, 479, 9, 479, 4, 480, 9, 480, 4, 481, 9, 481, 4, 482, 9, 482, 4, 483, 9, 483, 4, 484, 9, 484, 4, 485, 9, 485, 4, 486, 9, 486, 4, 487, 9, 487, 4, 488, 9, 488, 3, 2, 7, 2, 978, 10, 2, 12, 2, 14, 2, 981, 11, 2, 3, 2, 3, 2, 3, 3, 3, 3, 7, 3, 987, 10, 3, 12, 3, 14, 3, 990, 11, 3, 3, 3, 5, 3, 993, 10, 3, 3, 3, 3, 3, 7, 3, 997, 10, 3, 12, 3, 14, 3, 1000, 11, 3, 5, 3, 1002, 10, 3, 3, 4, 3, 4, 5, 4, 1006, 10, 4, 6, 4, 1008, 10, 4, 13, 4, 14, 4, 1009, 3, 5, 3, 5, 3, 5, 3, 5, 3, 5, 3, 5, 3, 5, 5, 5, 1019, 10, 5, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 5, 6, 1026, 10, 6, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 5, 7, 1187, 10, 7, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 5, 8, 1194, 10, 8, 3, 9, 3, 9, 3, 9, 3, 9, 3, 9, 3, 9, 3, 9, 3, 9, 3, 9, 3, 9, 3, 9, 3, 9, 5, 9, 1208, 10, 9, 3, 10, 3, 10, 5, 10, 1212, 10, 10, 3, 10, 5, 10, 1215, 10, 10, 3, 10, 3, 10, 5, 10, 1219, 10, 10, 3, 11, 3, 11, 5, 11, 1223, 10, 11, 3, 12, 3, 12, 5, 12, 1227, 10, 12, 3, 13, 3, 13, 3, 13, 5, 13, 1232, 10, 13, 3, 13, 3, 13, 3, 13, 5, 13, 1237, 10, 13, 5, 13, 1239, 10, 13, 3, 14, 3, 14, 5, 14, 1243, 10, 14, 3, 14, 5, 14, 1246, 10, 14, 3, 15, 3, 15, 3, 15, 3, 15, 3, 15, 5, 15, 1253, 10, 15, 3, 15, 5, 15, 1256, 10, 15, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 5, 16, 1265, 10, 16, 3, 16, 5, 16, 1268, 10, 16, 3, 17, 3, 17, 3, 18, 3, 18, 3, 19, 3, 19, 3, 20, 3, 20, 3, 20, 5, 20, 1279, 10, 20, 3, 20, 5, 20, 1282, 10, 20, 3, 20, 3, 20, 3, 20, 5, 20, 1287, 10, 20, 3, 20, 3, 20, 3, 20, 5, 20, 1292, 10, 20, 3, 20, 5, 20, 1295, 10, 20, 3, 20, 3, 20, 3, 20, 5, 20, 1300, 10, 20, 3, 21, 3, 21, 5, 21, 1304, 10, 21, 3, 21, 5, 21, 1307, 10, 21, 3, 21, 3, 21, 5, 21, 1311, 10, 21, 3, 21, 5, 21, 1314, 10, 21, 3, 21, 5, 21, 1317, 10, 21, 3, 22, 3, 22, 3, 22, 3, 22, 3, 22, 5, 22, 1324, 10, 22, 3, 22, 3, 22, 5, 22, 1328, 10, 22, 5, 22, 1330, 10, 22, 3, 23, 3, 23, 3, 23, 5, 23, 1335, 10, 23, 3, 23, 3, 23, 7, 23, 1339, 10, 23, 12, 23, 14, 23, 1342, 11, 23, 3, 23, 5, 23, 1345, 10, 23, 3, 24, 3, 24, 3, 24, 3, 24, 3, 24, 3, 24, 3, 24, 3, 24, 3, 24, 7, 24, 1356, 10, 24, 12, 24, 14, 24, 1359, 11, 24, 3, 24, 3, 24, 3, 24, 5, 24, 1364, 10, 24, 3, 24, 5, 24, 1367, 10, 24, 3, 24, 3, 24, 3, 24, 3, 24, 3, 24, 7, 24, 1374, 10, 24, 12, 24, 14, 24, 1377, 11, 24, 5, 24, 1379, 10, 24, 3, 25, 3, 25, 3, 26, 3, 26, 3, 26, 3, 26, 3, 26, 3, 26, 3, 26, 3, 26, 3, 26, 3, 26, 3, 26, 3, 26, 3, 26, 3, 26, 3, 26, 3, 26, 5, 26, 1399, 10, 26, 3, 27, 3, 27, 3, 27, 3, 27, 3, 27, 3, 27, 5, 27, 1407, 10, 27, 3, 27, 3, 27, 3, 27, 5, 27, 1412, 10, 27, 3, 27, 5, 27, 1415, 10, 27, 3, 27, 3, 27, 3, 27, 5, 27, 1420, 10, 27, 3, 27, 5, 27, 1423, 10, 27, 3, 27, 3, 27, 3, 27, 5, 27, 1428, 10, 27, 3, 28, 3, 28, 3, 28, 3, 28, 3, 28, 3, 28, 5, 28, 1436, 10, 28, 3, 28, 3, 28, 3, 28, 5, 28, 1441, 10, 28, 3, 28, 5, 28, 1444, 10, 28, 3, 28, 3, 28, 3, 28, 5, 28, 1449, 10, 28, 3, 29, 3, 29, 3, 29, 3, 29, 5, 29, 1455, 10, 29, 3, 29, 3, 29, 3, 29, 5, 29, 1460, 10, 29, 3, 29, 3, 29, 3, 30, 3, 30, 3, 30, 3, 30, 3, 30, 3, 31, 3, 31, 3, 31, 3, 31, 3, 32, 3, 32, 3, 32, 3, 33, 5, 33, 1477, 10, 33, 3, 33, 5, 33, 1480, 10, 33, 3, 33, 5, 33, 1483, 10, 33, 3, 33, 5, 33, 1486, 10, 33, 3, 34, 3, 34, 3, 34, 5, 34, 1491, 10, 34, 3, 35, 3, 35, 3, 36, 3, 36, 3, 36, 3, 37, 3, 37, 5, 37, 1500, 10, 37, 3, 38, 3, 38, 3, 39, 3, 39, 3, 39, 3, 40, 3, 40, 3, 40, 3, 40, 3, 41, 3, 41, 3, 41, 3, 41, 5, 41, 1515, 10, 41, 3, 42, 3, 42, 3, 43, 3, 43, 3, 43, 3, 44, 3, 44, 3, 45, 3, 45, 3, 45, 3, 46, 3, 46, 3, 47, 3, 47, 3, 47, 5, 47, 1532, 10, 47, 3, 48, 3, 48, 3, 48, 3, 48, 3, 48, 3, 48, 3, 48, 3, 48, 3, 48, 5, 48, 1543, 10, 48, 3, 48, 3, 48, 7, 48, 1547, 10, 48, 12, 48, 14, 48, 1550, 11, 48, 3, 49, 3, 49, 3, 49, 3, 49, 3, 50, 3, 50, 3, 51, 3, 51, 3, 52, 3, 52, 3, 52, 3, 52, 5, 52, 1564, 10, 52, 3, 53, 3, 53, 3, 54, 3, 54, 3, 54, 3, 55, 3, 55, 3, 56, 3, 56, 3, 56, 3, 56, 3, 56, 3, 56, 5, 56, 1579, 10, 56, 3, 57, 3, 57, 3, 58, 3, 58, 3, 58, 3, 58, 3, 58, 5, 58, 1588, 10, 58, 3, 58, 3, 58, 5, 58, 1592, 10, 58, 3, 58, 6, 58, 1595, 10, 58, 13, 58, 14, 58, 1596, 3, 58, 3, 58, 3, 58, 3, 58, 5, 58, 1603, 10, 58, 3, 59, 3, 59, 3, 59, 3, 59, 5, 59, 1609, 10, 59, 3, 59, 5, 59, 1612, 10, 59, 3, 59, 6, 59, 1615, 10, 59, 13, 59, 14, 59, 1616, 3, 59, 3, 59, 3, 59, 5, 59, 1622, 10, 59, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 5, 60, 1630, 10, 60, 3, 61, 3, 61, 3, 61, 3, 61, 3, 62, 3, 62, 3, 62, 3, 62, 5, 62, 1640, 10, 62, 3, 62, 3, 62, 3, 63, 3, 63, 3, 63, 3, 63, 3, 63, 3, 64, 3, 64, 3, 64, 3, 64, 3, 64, 3, 64, 3, 64, 3, 64, 3, 64, 3, 64, 5, 64, 1659, 10, 64, 3, 65, 3, 65, 3, 65, 3, 65, 3, 65, 3, 65, 5, 65, 1667, 10, 65, 3, 65, 3, 65, 3, 65, 3, 65, 3, 65, 3, 65, 3, 65, 3, 65, 3, 65, 3, 65, 3, 65, 5, 65, 1680, 10, 65, 5, 65, 1682, 10, 65, 3, 65, 3, 65, 3, 65, 3, 65, 3, 65, 3, 65, 3, 65, 3, 65, 3, 65, 3, 65, 5, 65, 1694, 10, 65, 5, 65, 1696, 10, 65, 3, 65, 3, 65, 3, 65, 3, 65, 3, 65, 5, 65, 1703, 10, 65, 3, 66, 3, 66, 3, 66, 3, 66, 3, 66, 3, 66, 3, 66, 5, 66, 1712, 10, 66, 3, 67, 3, 67, 3, 67, 3, 67, 5, 67, 1718, 10, 67, 3, 67, 3, 67, 3, 67, 3, 67, 3, 68, 3, 68, 3, 68, 5, 68, 1727, 10, 68, 3, 69, 3, 69, 3, 70, 3, 70, 3, 70, 3, 71, 3, 71, 3, 71, 3, 71, 3, 72, 3, 72, 3, 72, 3, 72, 5, 72, 1742, 10, 72, 3, 72, 3, 72, 3, 72, 3, 72, 3, 73, 3, 73, 3, 73, 3, 73, 5, 73, 1752, 10, 73, 3, 73, 3, 73, 3, 73, 3, 73, 3, 74, 3, 74, 3, 74, 3, 74, 5, 74, 1762, 10, 74, 3, 74, 3, 74, 3, 74, 3, 74, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 5, 75, 1802, 10, 75, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 5, 76, 1825, 10, 76, 3, 77, 3, 77, 3, 78, 3, 78, 3, 79, 3, 79, 3, 79, 3, 79, 3, 79, 3, 80, 3, 80, 3, 80, 3, 81, 3, 81, 3, 81, 3, 81, 3, 81, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 5, 82, 1861, 10, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 5, 82, 1879, 10, 82, 3, 82, 5, 82, 1882, 10, 82, 3, 82, 3, 82, 3, 82, 5, 82, 1887, 10, 82, 3, 82, 5, 82, 1890, 10, 82, 3, 82, 3, 82, 3, 82, 5, 82, 1895, 10, 82, 3, 82, 5, 82, 1898, 10, 82, 3, 82, 3, 82, 3, 82, 5, 82, 1903, 10, 82, 3, 82, 5, 82, 1906, 10, 82, 3, 82, 3, 82, 3, 82, 5, 82, 1911, 10, 82, 3, 82, 5, 82, 1914, 10, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 5, 82, 1922, 10, 82, 3, 82, 5, 82, 1925, 10, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 5, 82, 1933, 10, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 5, 82, 1946, 10, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 5, 82, 1957, 10, 82, 3, 82, 7, 82, 1960, 10, 82, 12, 82, 14, 82, 1963, 11, 82, 3, 82, 5, 82, 1966, 10, 82, 3, 82, 3, 82, 3, 82, 3, 82, 5, 82, 1972, 10, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 5, 82, 1995, 10, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 5, 82, 2007, 10, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 5, 82, 2018, 10, 82, 3, 82, 7, 82, 2021, 10, 82, 12, 82, 14, 82, 2024, 11, 82, 3, 82, 5, 82, 2027, 10, 82, 3, 82, 3, 82, 3, 82, 3, 82, 5, 82, 2033, 10, 82, 5, 82, 2035, 10, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 5, 82, 2048, 10, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 6, 82, 2069, 10, 82, 13, 82, 14, 82, 2070, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 5, 82, 2078, 10, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 5, 82, 2087, 10, 82, 3, 82, 3, 82, 3, 82, 5, 82, 2092, 10, 82, 3, 82, 5, 82, 2095, 10, 82, 3, 82, 3, 82, 3, 82, 5, 82, 2100, 10, 82, 3, 82, 5, 82, 2103, 10, 82, 3, 82, 3, 82, 3, 82, 5, 82, 2108, 10, 82, 3, 82, 6, 82, 2111, 10, 82, 13, 82, 14, 82, 2112, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 5, 82, 2141, 10, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 5, 82, 2148, 10, 82, 3, 82, 6, 82, 2151, 10, 82, 13, 82, 14, 82, 2152, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 5, 82, 2160, 10, 82, 5, 82, 2162, 10, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 5, 82, 2173, 10, 82, 3, 82, 3, 82, 3, 82, 3, 82, 5, 82, 2179, 10, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 5, 82, 2194, 10, 82, 3, 83, 3, 83, 3, 83, 3, 83, 3, 83, 3, 83, 3, 83, 3, 83, 3, 83, 3, 83, 3, 83, 3, 83, 5, 83, 2208, 10, 83, 3, 83, 5, 83, 2211, 10, 83, 5, 83, 2213, 10, 83, 3, 83, 3, 83, 3, 83, 5, 83, 2218, 10, 83, 3, 83, 3, 83, 5, 83, 2222, 10, 83, 3, 83, 5, 83, 2225, 10, 83, 5, 83, 2227, 10, 83, 3, 83, 3, 83, 3, 83, 3, 83, 5, 83, 2233, 10, 83, 3, 83, 5, 83, 2236, 10, 83, 5, 83, 2238, 10, 83, 3, 83, 3, 83, 3, 83, 3, 83, 5, 83, 2244, 10, 83, 5, 83, 2246, 10, 83, 3, 83, 3, 83, 3, 84, 3, 84, 3, 84, 3, 84, 3, 84, 3, 85, 3, 85, 3, 85, 3, 85, 3, 85, 3, 85, 3, 85, 3, 85, 3, 85, 3, 85, 3, 85, 3, 85, 3, 85, 5, 85, 2268, 10, 85, 3, 85, 3, 85, 3, 85, 3, 85, 3, 85, 3, 85, 5, 85, 2276, 10, 85, 3, 85, 3, 85, 3, 85, 3, 85, 3, 85, 3, 85, 5, 85, 2284, 10, 85, 6, 85, 2286, 10, 85, 13, 85, 14, 85, 2287, 3, 85, 3, 85, 3, 85, 3, 85, 3, 85, 3, 85, 3, 85, 5, 85, 2297, 10, 85, 3, 86, 3, 86, 3, 86, 3, 86, 3, 86, 3, 86, 3, 86, 3, 86, 3, 86, 3, 86, 3, 86, 3, 86, 3, 86, 3, 86, 3, 86, 3, 86, 3, 86, 3, 86, 3, 86, 5, 86, 2318, 10, 86, 3, 86, 3, 86, 3, 87, 3, 87, 3, 87, 3, 87, 3, 87, 3, 87, 3, 87, 3, 87, 3, 87, 5, 87, 2331, 10, 87, 3, 87, 3, 87, 3, 87, 3, 87, 3, 87, 3, 87, 3, 87, 3, 87, 3, 87, 3, 87, 3, 87, 3, 87, 3, 87, 5, 87, 2346, 10, 87, 6, 87, 2348, 10, 87, 13, 87, 14, 87, 2349, 3, 88, 3, 88, 3, 88, 3, 88, 3, 89, 3, 89, 3, 89, 3, 89, 3, 89, 3, 89, 3, 90, 3, 90, 3, 90, 3, 90, 3, 90, 3, 90, 3, 91, 3, 91, 3, 91, 3, 91, 3, 92, 3, 92, 3, 92, 3, 92, 3, 93, 3, 93, 3, 93, 3, 93, 3, 93, 3, 94, 3, 94, 3, 94, 3, 94, 5, 94, 2385, 10, 94, 3, 94, 5, 94, 2388, 10, 94, 3, 94, 6, 94, 2391, 10, 94, 13, 94, 14, 94, 2392, 3, 95, 3, 95, 3, 95, 3, 95, 3, 95, 3, 95, 3, 96, 3, 96, 3, 96, 3, 96, 3, 96, 3, 96, 3, 97, 3, 97, 3, 97, 3, 97, 5, 97, 2411, 10, 97, 3, 97, 5, 97, 2414, 10, 97, 3, 97, 3, 97, 3, 97, 5, 97, 2419, 10, 97, 3, 97, 3, 97, 3, 98, 3, 98, 3, 98, 3, 98, 3, 99, 3, 99, 3, 99, 3, 99, 3, 99, 3, 99, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 101, 3, 101, 3, 101, 3, 101, 3, 101, 3, 101, 5, 101, 2445, 10, 101, 3, 102, 3, 102, 3, 102, 3, 102, 3, 102, 3, 102, 3, 103, 3, 103, 3, 103, 3, 103, 3, 103, 3, 103, 5, 103, 2459, 10, 103, 3, 103, 3, 103, 3, 103, 5, 103, 2464, 10, 103, 3, 103, 3, 103, 3, 104, 3, 104, 3, 104, 3, 104, 5, 104, 2472, 10, 104, 3, 104, 6, 104, 2475, 10, 104, 13, 104, 14, 104, 2476, 3, 104, 3, 104, 3, 104, 3, 104, 3, 104, 5, 104, 2484, 10, 104, 3, 105, 3, 105, 3, 105, 3, 105, 3, 105, 3, 105, 3, 105, 3, 106, 3, 106, 3, 106, 3, 106, 3, 106, 3, 107, 3, 107, 3, 107, 3, 107, 3, 107, 3, 107, 3, 107, 5, 107, 2505, 10, 107, 3, 107, 3, 107, 3, 108, 3, 108, 3, 108, 3, 108, 3, 108, 3, 109, 3, 109, 3, 109, 3, 109, 3, 110, 3, 110, 3, 110, 3, 110, 3, 111, 3, 111, 3, 111, 3, 111, 3, 111, 3, 112, 3, 112, 3, 112, 3, 112, 3, 112, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 5, 114, 2542, 10, 114, 3, 114, 3, 114, 3, 114, 5, 114, 2547, 10, 114, 3, 114, 3, 114, 3, 115, 3, 115, 3, 115, 3, 115, 3, 115, 3, 115, 3, 116, 3, 116, 3, 116, 3, 116, 3, 116, 3, 117, 3, 117, 3, 117, 3, 117, 5, 117, 2566, 10, 117, 3, 117, 3, 117, 3, 118, 3, 118, 3, 118, 3, 118, 3, 119, 3, 119, 3, 119, 3, 119, 5, 119, 2578, 10, 119, 3, 119, 5, 119, 2581, 10, 119, 3, 119, 3, 119, 3, 119, 5, 119, 2586, 10, 119, 3, 119, 5, 119, 2589, 10, 119, 3, 120, 3, 120, 3, 120, 3, 120, 5, 120, 2595, 10, 120, 3, 120, 3, 120, 3, 121, 3, 121, 3, 121, 3, 121, 3, 121, 3, 121, 3, 122, 3, 122, 3, 122, 3, 122, 3, 122, 5, 122, 2610, 10, 122, 3, 122, 3, 122, 3, 122, 5, 122, 2615, 10, 122, 3, 122, 3, 122, 3, 123, 3, 123, 3, 123, 3, 123, 5, 123, 2623, 10, 123, 3, 123, 5, 123, 2626, 10, 123, 3, 123, 3, 123, 3, 123, 5, 123, 2631, 10, 123, 3, 123, 3, 123, 3, 123, 5, 123, 2636, 10, 123, 3, 123, 5, 123, 2639, 10, 123, 3, 124, 3, 124, 3, 124, 3, 124, 3, 124, 3, 125, 3, 125, 3, 125, 3, 125, 3, 125, 3, 125, 3, 126, 3, 126, 3, 126, 3, 126, 3, 126, 3, 127, 3, 127, 3, 127, 3, 127, 3, 128, 3, 128, 5, 128, 2663, 10, 128, 3, 128, 3, 128, 3, 128, 3, 128, 3, 128, 5, 128, 2670, 10, 128, 3, 128, 3, 128, 3, 128, 5, 128, 2675, 10, 128, 3, 128, 3, 128, 3, 128, 5, 128, 2680, 10, 128, 3, 128, 3, 128, 3, 128, 6, 128, 2685, 10, 128, 13, 128, 14, 128, 2686, 3, 129, 3, 129, 3, 129, 3, 129, 3, 129, 5, 129, 2694, 10, 129, 3, 129, 3, 129, 3, 129, 3, 129, 3, 130, 3, 130, 3, 130, 3, 130, 3, 130, 3, 130, 3, 130, 5, 130, 2707, 10, 130, 3, 131, 3, 131, 3, 131, 3, 131, 5, 131, 2713, 10, 131, 3, 131, 3, 131, 3, 131, 5, 131, 2718, 10, 131, 3, 131, 3, 131, 3, 132, 3, 132, 3, 132, 3, 132, 5, 132, 2726, 10, 132, 3, 132, 3, 132, 3, 133, 3, 133, 3, 133, 3, 133, 3, 133, 3, 134, 3, 134, 3, 134, 3, 134, 3, 134, 3, 134, 3, 134, 5, 134, 2742, 10, 134, 3, 134, 3, 134, 3, 135, 3, 135, 3, 135, 5, 135, 2749, 10, 135, 3, 135, 3, 135, 3, 135, 5, 135, 2754, 10, 135, 3, 135, 6, 135, 2757, 10, 135, 13, 135, 14, 135, 2758, 3, 135, 5, 135, 2762, 10, 135, 3, 135, 3, 135, 3, 135, 3, 135, 5, 135, 2768, 10, 135, 3, 135, 3, 135, 3, 135, 3, 135, 5, 135, 2774, 10, 135, 3, 136, 3, 136, 3, 136, 5, 136, 2779, 10, 136, 3, 136, 3, 136, 3, 136, 5, 136, 2784, 10, 136, 3, 136, 6, 136, 2787, 10, 136, 13, 136, 14, 136, 2788, 3, 136, 5, 136, 2792, 10, 136, 3, 136, 3, 136, 3, 136, 3, 136, 5, 136, 2798, 10, 136, 3, 136, 3, 136, 3, 136, 3, 136, 5, 136, 2804, 10, 136, 3, 137, 3, 137, 3, 137, 3, 137, 3, 137, 3, 137, 3, 137, 3, 137, 3, 137, 5, 137, 2815, 10, 137, 3, 137, 5, 137, 2818, 10, 137, 3, 138, 3, 138, 3, 138, 3, 138, 3, 138, 3, 138, 3, 138, 3, 138, 5, 138, 2828, 10, 138, 3, 138, 3, 138, 3, 138, 3, 138, 5, 138, 2834, 10, 138, 6, 138, 2836, 10, 138, 13, 138, 14, 138, 2837, 3, 138, 3, 138, 5, 138, 2842, 10, 138, 3, 139, 3, 139, 3, 139, 3, 139, 3, 139, 3, 139, 3, 139, 3, 139, 3, 139, 3, 139, 3, 139, 3, 139, 3, 139, 3, 139, 3, 139, 3, 139, 3, 140, 3, 140, 3, 140, 3, 140, 3, 140, 3, 140, 3, 140, 3, 140, 3, 140, 3, 140, 3, 140, 5, 140, 2871, 10, 140, 3, 141, 3, 141, 3, 141, 3, 141, 3, 141, 3, 141, 3, 141, 3, 141, 3, 141, 3, 141, 3, 141, 5, 141, 2884, 10, 141, 3, 141, 3, 141, 3, 141, 3, 141, 5, 141, 2890, 10, 141, 3, 142, 3, 142, 3, 142, 3, 142, 3, 142, 3, 142, 3, 142, 3, 142, 5, 142, 2900, 10, 142, 3, 142, 5, 142, 2903, 10, 142, 3, 143, 3, 143, 3, 143, 3, 143, 3, 143, 3, 143, 3, 143, 3, 143, 3, 143, 3, 144, 3, 144, 3, 144, 3, 144, 3, 144, 3, 144, 3, 144, 3, 144, 3, 144, 5, 144, 2923, 10, 144, 3, 144, 3, 144, 5, 144, 2927, 10, 144, 3, 144, 3, 144, 5, 144, 2931, 10, 144, 3, 144, 6, 144, 2934, 10, 144, 13, 144, 14, 144, 2935, 3, 144, 3, 144, 3, 144, 3, 144, 3, 144, 3, 144, 3, 145, 3, 145, 3, 145, 3, 145, 3, 145, 3, 145, 3, 145, 5, 145, 2951, 10, 145, 3, 145, 3, 145, 3, 145, 3, 145, 3, 145, 5, 145, 2958, 10, 145, 3, 145, 3, 145, 3, 145, 3, 145, 3, 145, 3, 145, 3, 145, 5, 145, 2967, 10, 145, 3, 145, 3, 145, 3, 145, 3, 145, 7, 145, 2973, 10, 145, 12, 145, 14, 145, 2976, 11, 145, 5, 145, 2978, 10, 145, 3, 145, 3, 145, 3, 145, 5, 145, 2983, 10, 145, 3, 145, 3, 145, 3, 145, 5, 145, 2988, 10, 145, 3, 145, 3, 145, 3, 145, 3, 145, 6, 145, 2994, 10, 145, 13, 145, 14, 145, 2995, 3, 145, 3, 145, 6, 145, 3000, 10, 145, 13, 145, 14, 145, 3001, 3, 145, 3, 145, 5, 145, 3006, 10, 145, 3, 145, 3, 145, 7, 145, 3010, 10, 145, 12, 145, 14, 145, 3013, 11, 145, 7, 145, 3015, 10, 145, 12, 145, 14, 145, 3018, 11, 145, 3, 145, 5, 145, 3021, 10, 145, 3, 145, 3, 145, 3, 145, 3, 145, 3, 145, 5, 145, 3028, 10, 145, 3, 145, 3, 145, 3, 145, 3, 145, 7, 145, 3034, 10, 145, 12, 145, 14, 145, 3037, 11, 145, 3, 145, 3, 145, 3, 145, 3, 145, 3, 145, 5, 145, 3044, 10, 145, 3, 145, 3, 145, 3, 145, 3, 145, 3, 145, 3, 145, 3, 145, 5, 145, 3053, 10, 145, 3, 145, 3, 145, 3, 145, 5, 145, 3058, 10, 145, 3, 145, 3, 145, 5, 145, 3062, 10, 145, 3, 145, 5, 145, 3065, 10, 145, 6, 145, 3067, 10, 145, 13, 145, 14, 145, 3068, 3, 145, 3, 145, 7, 145, 3073, 10, 145, 12, 145, 14, 145, 3076, 11, 145, 7, 145, 3078, 10, 145, 12, 145, 14, 145, 3081, 11, 145, 3, 145, 3, 145, 3, 145, 3, 145, 3, 145, 5, 145, 3088, 10, 145, 3, 145, 3, 145, 3, 145, 3, 145, 7, 145, 3094, 10, 145, 12, 145, 14, 145, 3097, 11, 145, 3, 145, 3, 145, 3, 145, 5, 145, 3102, 10, 145, 3, 145, 3, 145, 3, 145, 3, 145, 5, 145, 3108, 10, 145, 3, 145, 5, 145, 3111, 10, 145, 3, 145, 3, 145, 3, 145, 5, 145, 3116, 10, 145, 3, 145, 5, 145, 3119, 10, 145, 3, 145, 3, 145, 3, 145, 3, 145, 3, 145, 5, 145, 3126, 10, 145, 5, 145, 3128, 10, 145, 3, 145, 5, 145, 3131, 10, 145, 3, 145, 3, 145, 3, 145, 3, 145, 5, 145, 3137, 10, 145, 3, 145, 5, 145, 3140, 10, 145, 3, 145, 3, 145, 3, 145, 5, 145, 3145, 10, 145, 3, 145, 5, 145, 3148, 10, 145, 3, 145, 3, 145, 3, 145, 5, 145, 3153, 10, 145, 3, 145, 5, 145, 3156, 10, 145, 3, 145, 3, 145, 3, 145, 5, 145, 3161, 10, 145, 3, 145, 5, 145, 3164, 10, 145, 3, 145, 3, 145, 3, 145, 5, 145, 3169, 10, 145, 3, 146, 5, 146, 3172, 10, 146, 3, 146, 5, 146, 3175, 10, 146, 3, 146, 5, 146, 3178, 10, 146, 3, 146, 3, 146, 3, 146, 3, 146, 3, 146, 5, 146, 3185, 10, 146, 6, 146, 3187, 10, 146, 13, 146, 14, 146, 3188, 3, 147, 3, 147, 3, 147, 3, 147, 3, 147, 5, 147, 3196, 10, 147, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 5, 148, 3203, 10, 148, 3, 148, 3, 148, 3, 148, 3, 148, 5, 148, 3209, 10, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 5, 148, 3222, 10, 148, 3, 148, 3, 148, 5, 148, 3226, 10, 148, 3, 148, 3, 148, 3, 148, 5, 148, 3231, 10, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 5, 148, 3241, 10, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 5, 148, 3250, 10, 148, 3, 148, 3, 148, 5, 148, 3254, 10, 148, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 5, 149, 3266, 10, 149, 3, 149, 3, 149, 3, 149, 3, 149, 5, 149, 3272, 10, 149, 3, 149, 3, 149, 3, 149, 6, 149, 3277, 10, 149, 13, 149, 14, 149, 3278, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 5, 149, 3299, 10, 149, 3, 149, 3, 149, 5, 149, 3303, 10, 149, 3, 150, 3, 150, 3, 150, 3, 150, 3, 150, 3, 150, 5, 150, 3311, 10, 150, 3, 150, 3, 150, 3, 150, 3, 150, 3, 150, 3, 150, 3, 150, 5, 150, 3320, 10, 150, 3, 150, 3, 150, 3, 150, 3, 150, 5, 150, 3326, 10, 150, 3, 150, 3, 150, 3, 150, 3, 150, 5, 150, 3332, 10, 150, 3, 150, 3, 150, 3, 150, 3, 150, 3, 150, 3, 150, 6, 150, 3340, 10, 150, 13, 150, 14, 150, 3341, 3, 150, 3, 150, 3, 151, 3, 151, 3, 151, 3, 151, 3, 151, 3, 151, 5, 151, 3352, 10, 151, 3, 151, 3, 151, 5, 151, 3356, 10, 151, 3, 151, 5, 151, 3359, 10, 151, 3, 151, 3, 151, 5, 151, 3363, 10, 151, 3, 151, 3, 151, 3, 151, 5, 151, 3368, 10, 151, 3, 151, 3, 151, 3, 151, 3, 151, 5, 151, 3374, 10, 151, 3, 151, 5, 151, 3377, 10, 151, 3, 151, 3, 151, 5, 151, 3381, 10, 151, 3, 151, 3, 151, 3, 151, 3, 151, 3, 151, 3, 151, 6, 151, 3389, 10, 151, 13, 151, 14, 151, 3390, 3, 151, 5, 151, 3394, 10, 151, 3, 152, 3, 152, 3, 152, 3, 152, 3, 152, 3, 152, 5, 152, 3402, 10, 152, 3, 152, 3, 152, 3, 152, 3, 152, 3, 152, 3, 152, 5, 152, 3410, 10, 152, 3, 152, 3, 152, 3, 152, 3, 152, 3, 152, 5, 152, 3417, 10, 152, 3, 152, 3, 152, 3, 152, 3, 152, 3, 152, 6, 152, 3424, 10, 152, 13, 152, 14, 152, 3425, 5, 152, 3428, 10, 152, 3, 152, 3, 152, 3, 152, 5, 152, 3433, 10, 152, 3, 152, 3, 152, 3, 152, 3, 152, 5, 152, 3439, 10, 152, 3, 152, 6, 152, 3442, 10, 152, 13, 152, 14, 152, 3443, 5, 152, 3446, 10, 152, 3, 152, 5, 152, 3449, 10, 152, 3, 152, 3, 152, 3, 152, 5, 152, 3454, 10, 152, 3, 152, 5, 152, 3457, 10, 152, 3, 152, 3, 152, 3, 152, 5, 152, 3462, 10, 152, 3, 152, 3, 152, 3, 153, 3, 153, 3, 153, 3, 153, 3, 153, 3, 153, 3, 153, 3, 153, 3, 153, 3, 153, 3, 153, 5, 153, 3477, 10, 153, 3, 153, 3, 153, 3, 153, 3, 153, 3, 153, 5, 153, 3484, 10, 153, 3, 153, 3, 153, 3, 153, 3, 153, 3, 153, 6, 153, 3491, 10, 153, 13, 153, 14, 153, 3492, 5, 153, 3495, 10, 153, 3, 153, 3, 153, 3, 153, 5, 153, 3500, 10, 153, 3, 153, 3, 153, 3, 153, 3, 153, 5, 153, 3506, 10, 153, 3, 153, 6, 153, 3509, 10, 153, 13, 153, 14, 153, 3510, 5, 153, 3513, 10, 153, 3, 153, 5, 153, 3516, 10, 153, 3, 153, 3, 153, 3, 153, 5, 153, 3521, 10, 153, 3, 153, 5, 153, 3524, 10, 153, 3, 153, 3, 153, 3, 153, 5, 153, 3529, 10, 153, 3, 153, 3, 153, 3, 154, 3, 154, 3, 154, 3, 154, 3, 154, 3, 154, 3, 154, 3, 154, 3, 154, 5, 154, 3542, 10, 154, 3, 154, 3, 154, 3, 154, 5, 154, 3547, 10, 154, 3, 155, 3, 155, 3, 155, 3, 155, 3, 155, 3, 155, 3, 155, 5, 155, 3556, 10, 155, 3, 155, 3, 155, 3, 155, 5, 155, 3561, 10, 155, 3, 155, 3, 155, 3, 155, 3, 155, 5, 155, 3567, 10, 155, 3, 155, 3, 155, 5, 155, 3571, 10, 155, 3, 155, 3, 155, 5, 155, 3575, 10, 155, 3, 156, 3, 156, 3, 156, 3, 156, 3, 156, 3, 156, 3, 156, 3, 156, 3, 156, 3, 156, 3, 156, 3, 156, 3, 156, 3, 156, 3, 156, 5, 156, 3592, 10, 156, 5, 156, 3594, 10, 156, 3, 157, 3, 157, 3, 157, 3, 157, 3, 157, 3, 157, 3, 157, 3, 157, 5, 157, 3604, 10, 157, 3, 157, 3, 157, 3, 157, 5, 157, 3609, 10, 157, 5, 157, 3611, 10, 157, 3, 157, 3, 157, 5, 157, 3615, 10, 157, 3, 158, 3, 158, 3, 158, 3, 158, 5, 158, 3621, 10, 158, 3, 158, 3, 158, 3, 158, 3, 158, 3, 158, 3, 158, 5, 158, 3629, 10, 158, 3, 158, 7, 158, 3632, 10, 158, 12, 158, 14, 158, 3635, 11, 158, 5, 158, 3637, 10, 158, 3, 158, 3, 158, 3, 158, 3, 158, 7, 158, 3643, 10, 158, 12, 158, 14, 158, 3646, 11, 158, 5, 158, 3648, 10, 158, 3, 158, 3, 158, 3, 158, 5, 158, 3653, 10, 158, 3, 158, 3, 158, 3, 158, 5, 158, 3658, 10, 158, 3, 158, 3, 158, 3, 158, 5, 158, 3663, 10, 158, 3, 158, 3, 158, 3, 158, 5, 158, 3668, 10, 158, 3, 158, 3, 158, 3, 158, 5, 158, 3673, 10, 158, 3, 158, 3, 158, 3, 158, 5, 158, 3678, 10, 158, 3, 158, 3, 158, 5, 158, 3682, 10, 158, 3, 158, 3, 158, 3, 158, 5, 158, 3687, 10, 158, 3, 159, 3, 159, 3, 159, 3, 159, 3, 159, 3, 159, 3, 159, 3, 159, 3, 159, 5, 159, 3698, 10, 159, 3, 159, 7, 159, 3701, 10, 159, 12, 159, 14, 159, 3704, 11, 159, 5, 159, 3706, 10, 159, 3, 159, 5, 159, 3709, 10, 159, 3, 159, 3, 159, 3, 159, 5, 159, 3714, 10, 159, 3, 159, 5, 159, 3717, 10, 159, 3, 159, 3, 159, 3, 159, 5, 159, 3722, 10, 159, 3, 159, 5, 159, 3725, 10, 159, 3, 159, 3, 159, 3, 159, 5, 159, 3730, 10, 159, 3, 159, 5, 159, 3733, 10, 159, 3, 159, 3, 159, 3, 159, 5, 159, 3738, 10, 159, 3, 159, 5, 159, 3741, 10, 159, 3, 159, 3, 159, 3, 159, 5, 159, 3746, 10, 159, 3, 159, 5, 159, 3749, 10, 159, 3, 159, 3, 159, 3, 159, 5, 159, 3754, 10, 159, 3, 159, 3, 159, 3, 159, 3, 159, 5, 159, 3760, 10, 159, 3, 159, 3, 159, 3, 159, 5, 159, 3765, 10, 159, 3, 159, 5, 159, 3768, 10, 159, 3, 159, 3, 159, 3, 159, 5, 159, 3773, 10, 159, 3, 159, 3, 159, 3, 159, 3, 159, 3, 159, 5, 159, 3780, 10, 159, 5, 159, 3782, 10, 159, 3, 160, 3, 160, 3, 160, 3, 160, 5, 160, 3788, 10, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 5, 160, 3797, 10, 160, 3, 160, 3, 160, 3, 160, 5, 160, 3802, 10, 160, 5, 160, 3804, 10, 160, 3, 161, 3, 161, 3, 161, 3, 161, 3, 161, 3, 161, 3, 161, 3, 161, 3, 161, 3, 161, 5, 161, 3816, 10, 161, 3, 162, 3, 162, 3, 162, 3, 162, 5, 162, 3822, 10, 162, 3, 162, 3, 162, 3, 162, 3, 162, 3, 162, 3, 162, 3, 162, 3, 162, 7, 162, 3832, 10, 162, 12, 162, 14, 162, 3835, 11, 162, 5, 162, 3837, 10, 162, 3, 162, 3, 162, 3, 162, 5, 162, 3842, 10, 162, 5, 162, 3844, 10, 162, 3, 163, 3, 163, 3, 163, 3, 163, 3, 163, 3, 163, 3, 163, 3, 163, 5, 163, 3854, 10, 163, 3, 163, 3, 163, 3, 163, 5, 163, 3859, 10, 163, 5, 163, 3861, 10, 163, 3, 163, 3, 163, 5, 163, 3865, 10, 163, 3, 164, 3, 164, 3, 164, 3, 164, 5, 164, 3871, 10, 164, 3, 164, 3, 164, 3, 164, 3, 164, 3, 164, 3, 164, 3, 164, 3, 164, 3, 164, 3, 164, 3, 164, 3, 164, 3, 164, 3, 164, 3, 164, 3, 164, 5, 164, 3889, 10, 164, 5, 164, 3891, 10, 164, 3, 165, 3, 165, 3, 165, 3, 165, 3, 165, 3, 165, 3, 165, 3, 165, 3, 165, 3, 166, 3, 166, 3, 166, 3, 166, 5, 166, 3906, 10, 166, 3, 166, 3, 166, 3, 166, 3, 166, 3, 166, 3, 166, 3, 166, 3, 166, 3, 166, 3, 166, 3, 166, 3, 166, 3, 166, 3, 166, 3, 166, 3, 166, 5, 166, 3924, 10, 166, 3, 166, 3, 166, 3, 166, 3, 166, 3, 166, 3, 166, 5, 166, 3932, 10, 166, 3, 167, 3, 167, 3, 167, 3, 167, 3, 167, 3, 167, 3, 167, 3, 167, 5, 167, 3942, 10, 167, 3, 168, 3, 168, 3, 168, 3, 168, 3, 168, 3, 168, 3, 168, 3, 168, 3, 168, 3, 168, 3, 168, 3, 168, 3, 168, 3, 168, 5, 168, 3958, 10, 168, 3, 169, 3, 169, 3, 169, 3, 169, 3, 169, 3, 169, 3, 169, 3, 169, 3, 169, 3, 169, 3, 169, 3, 169, 3, 170, 3, 170, 3, 170, 3, 170, 3, 170, 3, 170, 3, 170, 5, 170, 3979, 10, 170, 3, 171, 3, 171, 3, 171, 3, 171, 3, 171, 3, 171, 3, 171, 3, 171, 3, 171, 5, 171, 3990, 10, 171, 3, 171, 3, 171, 3, 171, 3, 171, 5, 171, 3996, 10, 171, 3, 172, 3, 172, 3, 172, 3, 172, 3, 172, 3, 172, 3, 172, 5, 172, 4005, 10, 172, 3, 172, 3, 172, 3, 172, 3, 172, 3, 172, 3, 172, 3, 172, 5, 172, 4014, 10, 172, 3, 172, 3, 172, 3, 172, 3, 172, 5, 172, 4020, 10, 172, 3, 173, 3, 173, 3, 173, 3, 173, 3, 173, 3, 173, 3, 173, 5, 173, 4029, 10, 173, 3, 173, 3, 173, 3, 173, 5, 173, 4034, 10, 173, 3, 173, 5, 173, 4037, 10, 173, 3, 173, 3, 173, 3, 173, 5, 173, 4042, 10, 173, 3, 173, 5, 173, 4045, 10, 173, 3, 173, 3, 173, 3, 173, 5, 173, 4050, 10, 173, 3, 173, 5, 173, 4053, 10, 173, 3, 173, 3, 173, 3, 173, 3, 173, 3, 173, 3, 173, 5, 173, 4061, 10, 173, 3, 173, 3, 173, 3, 173, 3, 173, 5, 173, 4067, 10, 173, 6, 173, 4069, 10, 173, 13, 173, 14, 173, 4070, 3, 173, 3, 173, 3, 173, 3, 173, 3, 173, 5, 173, 4078, 10, 173, 3, 173, 3, 173, 3, 173, 3, 173, 5, 173, 4084, 10, 173, 6, 173, 4086, 10, 173, 13, 173, 14, 173, 4087, 3, 173, 5, 173, 4091, 10, 173, 5, 173, 4093, 10, 173, 3, 173, 5, 173, 4096, 10, 173, 3, 173, 3, 173, 3, 173, 5, 173, 4101, 10, 173, 3, 173, 5, 173, 4104, 10, 173, 3, 173, 3, 173, 3, 173, 5, 173, 4109, 10, 173, 3, 173, 5, 173, 4112, 10, 173, 3, 173, 3, 173, 3, 173, 5, 173, 4117, 10, 173, 3, 173, 5, 173, 4120, 10, 173, 3, 173, 3, 173, 3, 173, 5, 173, 4125, 10, 173, 3, 173, 5, 173, 4128, 10, 173, 3, 174, 3, 174, 3, 174, 3, 174, 3, 174, 3, 174, 3, 174, 3, 174, 3, 174, 3, 174, 3, 174, 3, 174, 3, 174, 5, 174, 4143, 10, 174, 3, 174, 3, 174, 3, 174, 3, 174, 3, 174, 3, 174, 3, 174, 3, 174, 3, 174, 5, 174, 4154, 10, 174, 3, 175, 3, 175, 3, 175, 3, 175, 3, 175, 3, 175, 3, 175, 3, 175, 3, 175, 3, 175, 5, 175, 4166, 10, 175, 3, 176, 3, 176, 3, 176, 3, 176, 3, 176, 5, 176, 4173, 10, 176, 3, 177, 3, 177, 3, 177, 3, 177, 3, 177, 5, 177, 4180, 10, 177, 3, 177, 3, 177, 5, 177, 4184, 10, 177, 3, 177, 3, 177, 3, 177, 5, 177, 4189, 10, 177, 3, 177, 5, 177, 4192, 10, 177, 3, 177, 3, 177, 3, 177, 5, 177, 4197, 10, 177, 3, 177, 5, 177, 4200, 10, 177, 3, 177, 3, 177, 3, 177, 5, 177, 4205, 10, 177, 3, 177, 5, 177, 4208, 10, 177, 3, 177, 3, 177, 3, 177, 3, 177, 3, 177, 3, 177, 3, 177, 5, 177, 4217, 10, 177, 3, 178, 3, 178, 3, 178, 3, 178, 3, 178, 5, 178, 4224, 10, 178, 3, 178, 3, 178, 3, 178, 3, 178, 3, 179, 3, 179, 3, 179, 3, 179, 3, 179, 3, 179, 3, 179, 3, 179, 3, 179, 5, 179, 4239, 10, 179, 3, 179, 3, 179, 5, 179, 4243, 10, 179, 3, 179, 3, 179, 3, 179, 5, 179, 4248, 10, 179, 3, 180, 3, 180, 3, 180, 3, 180, 3, 180, 3, 180, 3, 180, 3, 180, 3, 180, 5, 180, 4259, 10, 180, 3, 180, 3, 180, 3, 180, 3, 180, 3, 180, 3, 180, 3, 180, 3, 180, 5, 180, 4269, 10, 180, 3, 180, 3, 180, 3, 180, 3, 180, 3, 180, 3, 180, 3, 180, 3, 180, 3, 180, 3, 180, 5, 180, 4281, 10, 180, 3, 180, 3, 180, 3, 180, 3, 180, 7, 180, 4287, 10, 180, 12, 180, 14, 180, 4290, 11, 180, 3, 181, 3, 181, 3, 181, 3, 181, 3, 181, 5, 181, 4297, 10, 181, 3, 182, 3, 182, 3, 182, 3, 182, 3, 182, 3, 182, 3, 182, 5, 182, 4306, 10, 182, 3, 182, 3, 182, 3, 182, 5, 182, 4311, 10, 182, 3, 183, 3, 183, 3, 183, 3, 183, 3, 183, 3, 183, 3, 183, 3, 183, 3, 183, 5, 183, 4322, 10, 183, 3, 183, 5, 183, 4325, 10, 183, 3, 183, 3, 183, 5, 183, 4329, 10, 183, 3, 184, 3, 184, 3, 184, 3, 184, 3, 184, 3, 184, 5, 184, 4337, 10, 184, 3, 184, 3, 184, 5, 184, 4341, 10, 184, 3, 184, 3, 184, 5, 184, 4345, 10, 184, 3, 184, 3, 184, 3, 184, 3, 184, 3, 184, 3, 184, 5, 184, 4353, 10, 184, 3, 184, 6, 184, 4356, 10, 184, 13, 184, 14, 184, 4357, 3, 184, 3, 184, 3, 184, 3, 184, 3, 184, 3, 184, 5, 184, 4366, 10, 184, 3, 184, 3, 184, 3, 184, 5, 184, 4371, 10, 184, 3, 184, 3, 184, 7, 184, 4375, 10, 184, 12, 184, 14, 184, 4378, 11, 184, 6, 184, 4380, 10, 184, 13, 184, 14, 184, 4381, 3, 184, 3, 184, 3, 184, 3, 184, 3, 184, 3, 184, 3, 184, 5, 184, 4391, 10, 184, 3, 184, 5, 184, 4394, 10, 184, 3, 184, 3, 184, 3, 184, 5, 184, 4399, 10, 184, 3, 185, 3, 185, 3, 185, 3, 185, 3, 185, 5, 185, 4406, 10, 185, 3, 185, 3, 185, 3, 185, 3, 185, 5, 185, 4412, 10, 185, 5, 185, 4414, 10, 185, 3, 185, 3, 185, 3, 185, 5, 185, 4419, 10, 185, 3, 185, 3, 185, 3, 185, 3, 185, 5, 185, 4425, 10, 185, 3, 185, 3, 185, 3, 185, 3, 185, 5, 185, 4431, 10, 185, 3, 185, 3, 185, 3, 185, 5, 185, 4436, 10, 185, 3, 185, 3, 185, 3, 185, 3, 185, 5, 185, 4442, 10, 185, 3, 186, 3, 186, 3, 186, 3, 186, 3, 186, 5, 186, 4449, 10, 186, 3, 186, 3, 186, 3, 186, 5, 186, 4454, 10, 186, 3, 186, 3, 186, 3, 186, 5, 186, 4459, 10, 186, 3, 186, 3, 186, 3, 186, 5, 186, 4464, 10, 186, 3, 186, 5, 186, 4467, 10, 186, 3, 186, 3, 186, 5, 186, 4471, 10, 186, 3, 186, 3, 186, 5, 186, 4475, 10, 186, 3, 186, 3, 186, 5, 186, 4479, 10, 186, 3, 186, 3, 186, 5, 186, 4483, 10, 186, 3, 186, 3, 186, 3, 186, 5, 186, 4488, 10, 186, 3, 186, 3, 186, 5, 186, 4492, 10, 186, 3, 186, 3, 186, 5, 186, 4496, 10, 186, 3, 187, 3, 187, 3, 187, 3, 187, 3, 187, 3, 187, 3, 187, 3, 187, 5, 187, 4506, 10, 187, 3, 187, 3, 187, 3, 187, 3, 187, 5, 187, 4512, 10, 187, 3, 187, 3, 187, 3, 187, 3, 187, 3, 187, 5, 187, 4519, 10, 187, 3, 187, 5, 187, 4522, 10, 187, 3, 187, 3, 187, 3, 187, 3, 187, 5, 187, 4528, 10, 187, 3, 187, 3, 187, 3, 187, 3, 187, 5, 187, 4534, 10, 187, 3, 187, 3, 187, 3, 187, 7, 187, 4539, 10, 187, 12, 187, 14, 187, 4542, 11, 187, 3, 187, 3, 187, 3, 187, 5, 187, 4547, 10, 187, 5, 187, 4549, 10, 187, 3, 187, 3, 187, 3, 187, 5, 187, 4554, 10, 187, 3, 187, 3, 187, 3, 187, 3, 187, 5, 187, 4560, 10, 187, 3, 187, 3, 187, 3, 187, 3, 187, 5, 187, 4566, 10, 187, 3, 187, 3, 187, 3, 187, 7, 187, 4571, 10, 187, 12, 187, 14, 187, 4574, 11, 187, 3, 187, 5, 187, 4577, 10, 187, 3, 187, 3, 187, 5, 187, 4581, 10, 187, 3, 187, 5, 187, 4584, 10, 187, 3, 187, 3, 187, 3, 187, 3, 187, 3, 187, 3, 187, 3, 187, 3, 187, 3, 187, 3, 187, 3, 187, 3, 187, 5, 187, 4598, 10, 187, 3, 187, 3, 187, 3, 187, 5, 187, 4603, 10, 187, 3, 187, 3, 187, 5, 187, 4607, 10, 187, 3, 187, 3, 187, 3, 187, 3, 187, 3, 187, 3, 187, 3, 187, 3, 187, 3, 187, 3, 187, 3, 187, 5, 187, 4620, 10, 187, 3, 187, 5, 187, 4623, 10, 187, 5, 187, 4625, 10, 187, 3, 187, 3, 187, 3, 187, 3, 187, 3, 187, 3, 187, 5, 187, 4633, 10, 187, 3, 188, 3, 188, 3, 188, 3, 188, 3, 188, 3, 188, 3, 188, 3, 188, 5, 188, 4643, 10, 188, 3, 188, 3, 188, 3, 188, 3, 188, 5, 188, 4649, 10, 188, 3, 188, 3, 188, 3, 188, 3, 188, 3, 188, 5, 188, 4656, 10, 188, 3, 188, 5, 188, 4659, 10, 188, 3, 188, 3, 188, 3, 188, 3, 188, 5, 188, 4665, 10, 188, 3, 188, 3, 188, 3, 188, 3, 188, 5, 188, 4671, 10, 188, 3, 188, 3, 188, 3, 188, 7, 188, 4676, 10, 188, 12, 188, 14, 188, 4679, 11, 188, 3, 188, 3, 188, 3, 188, 5, 188, 4684, 10, 188, 5, 188, 4686, 10, 188, 3, 188, 3, 188, 3, 188, 5, 188, 4691, 10, 188, 3, 188, 3, 188, 3, 188, 3, 188, 5, 188, 4697, 10, 188, 3, 188, 3, 188, 3, 188, 3, 188, 5, 188, 4703, 10, 188, 3, 188, 3, 188, 3, 188, 3, 188, 5, 188, 4709, 10, 188, 3, 188, 3, 188, 3, 188, 7, 188, 4714, 10, 188, 12, 188, 14, 188, 4717, 11, 188, 3, 188, 5, 188, 4720, 10, 188, 3, 188, 3, 188, 5, 188, 4724, 10, 188, 3, 188, 5, 188, 4727, 10, 188, 3, 188, 3, 188, 3, 188, 3, 188, 3, 188, 3, 188, 3, 188, 3, 188, 3, 188, 3, 188, 3, 188, 3, 188, 5, 188, 4741, 10, 188, 3, 188, 3, 188, 3, 188, 5, 188, 4746, 10, 188, 3, 188, 3, 188, 5, 188, 4750, 10, 188, 3, 188, 3, 188, 3, 188, 3, 188, 3, 188, 3, 188, 3, 188, 3, 188, 3, 188, 3, 188, 3, 188, 5, 188, 4763, 10, 188, 3, 188, 5, 188, 4766, 10, 188, 5, 188, 4768, 10, 188, 3, 188, 3, 188, 3, 188, 3, 188, 3, 188, 3, 188, 5, 188, 4776, 10, 188, 3, 189, 3, 189, 3, 189, 3, 189, 3, 189, 3, 189, 3, 189, 3, 189, 3, 189, 5, 189, 4787, 10, 189, 3, 189, 3, 189, 3, 189, 3, 189, 3, 189, 7, 189, 4794, 10, 189, 12, 189, 14, 189, 4797, 11, 189, 3, 189, 3, 189, 3, 189, 3, 189, 3, 189, 3, 189, 5, 189, 4805, 10, 189, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 5, 190, 4816, 10, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 7, 190, 4823, 10, 190, 12, 190, 14, 190, 4826, 11, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 5, 190, 4834, 10, 190, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 5, 191, 4846, 10, 191, 3, 191, 3, 191, 5, 191, 4850, 10, 191, 3, 191, 3, 191, 3, 191, 6, 191, 4855, 10, 191, 13, 191, 14, 191, 4856, 5, 191, 4859, 10, 191, 3, 191, 3, 191, 3, 191, 5, 191, 4864, 10, 191, 3, 191, 3, 191, 5, 191, 4868, 10, 191, 3, 191, 3, 191, 3, 191, 6, 191, 4873, 10, 191, 13, 191, 14, 191, 4874, 5, 191, 4877, 10, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 5, 191, 4891, 10, 191, 3, 191, 3, 191, 3, 191, 5, 191, 4896, 10, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 5, 191, 4918, 10, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 5, 191, 4940, 10, 191, 3, 191, 3, 191, 3, 191, 5, 191, 4945, 10, 191, 3, 192, 3, 192, 3, 192, 3, 192, 3, 192, 3, 192, 3, 192, 3, 192, 3, 192, 3, 192, 3, 192, 5, 192, 4958, 10, 192, 3, 193, 3, 193, 3, 193, 3, 193, 3, 193, 3, 193, 5, 193, 4966, 10, 193, 3, 194, 3, 194, 3, 194, 3, 194, 3, 194, 3, 194, 3, 194, 3, 194, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 5, 195, 4986, 10, 195, 3, 195, 5, 195, 4989, 10, 195, 3, 195, 3, 195, 7, 195, 4993, 10, 195, 12, 195, 14, 195, 4996, 11, 195, 3, 196, 3, 196, 3, 196, 3, 196, 3, 196, 5, 196, 5003, 10, 196, 3, 196, 3, 196, 3, 196, 3, 196, 3, 196, 5, 196, 5010, 10, 196, 3, 196, 3, 196, 3, 196, 5, 196, 5015, 10, 196, 3, 196, 3, 196, 5, 196, 5019, 10, 196, 6, 196, 5021, 10, 196, 13, 196, 14, 196, 5022, 3, 196, 5, 196, 5026, 10, 196, 3, 197, 3, 197, 3, 197, 3, 197, 3, 197, 5, 197, 5033, 10, 197, 3, 197, 3, 197, 3, 197, 3, 197, 3, 197, 3, 197, 3, 197, 3, 197, 3, 197, 3, 197, 3, 197, 3, 197, 3, 197, 3, 197, 3, 197, 3, 197, 5, 197, 5051, 10, 197, 5, 197, 5053, 10, 197, 3, 198, 3, 198, 3, 198, 3, 198, 3, 198, 3, 198, 3, 198, 3, 198, 3, 198, 3, 198, 3, 198, 3, 198, 3, 198, 3, 198, 3, 198, 3, 198, 3, 198, 3, 198, 5, 198, 5073, 10, 198, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 5, 199, 5081, 10, 199, 3, 199, 3, 199, 3, 199, 5, 199, 5086, 10, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 5, 199, 5104, 10, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 5, 199, 5119, 10, 199, 5, 199, 5121, 10, 199, 3, 200, 3, 200, 3, 200, 3, 200, 3, 200, 5, 200, 5128, 10, 200, 3, 200, 3, 200, 3, 200, 3, 200, 3, 200, 5, 200, 5135, 10, 200, 3, 200, 3, 200, 3, 200, 5, 200, 5140, 10, 200, 3, 200, 3, 200, 3, 200, 5, 200, 5145, 10, 200, 3, 200, 3, 200, 3, 200, 3, 200, 5, 200, 5151, 10, 200, 3, 200, 3, 200, 3, 200, 5, 200, 5156, 10, 200, 5, 200, 5158, 10, 200, 3, 201, 3, 201, 3, 201, 3, 201, 3, 201, 5, 201, 5165, 10, 201, 3, 201, 3, 201, 3, 201, 3, 201, 5, 201, 5171, 10, 201, 3, 201, 3, 201, 3, 201, 3, 201, 5, 201, 5177, 10, 201, 3, 201, 5, 201, 5180, 10, 201, 3, 201, 3, 201, 3, 201, 3, 201, 5, 201, 5186, 10, 201, 3, 201, 3, 201, 3, 201, 3, 201, 3, 201, 3, 201, 6, 201, 5194, 10, 201, 13, 201, 14, 201, 5195, 3, 201, 5, 201, 5199, 10, 201, 3, 201, 3, 201, 3, 201, 3, 201, 3, 201, 5, 201, 5206, 10, 201, 3, 201, 5, 201, 5209, 10, 201, 3, 201, 3, 201, 3, 201, 6, 201, 5214, 10, 201, 13, 201, 14, 201, 5215, 3, 202, 3, 202, 3, 202, 3, 202, 3, 202, 3, 202, 5, 202, 5224, 10, 202, 3, 202, 3, 202, 5, 202, 5228, 10, 202, 3, 202, 3, 202, 3, 202, 3, 202, 5, 202, 5234, 10, 202, 3, 202, 3, 202, 3, 202, 7, 202, 5239, 10, 202, 12, 202, 14, 202, 5242, 11, 202, 5, 202, 5244, 10, 202, 3, 202, 3, 202, 3, 202, 3, 202, 3, 202, 5, 202, 5251, 10, 202, 3, 202, 3, 202, 3, 202, 3, 202, 5, 202, 5257, 10, 202, 3, 202, 3, 202, 3, 202, 3, 202, 3, 202, 5, 202, 5264, 10, 202, 3, 202, 5, 202, 5267, 10, 202, 3, 202, 3, 202, 3, 202, 3, 202, 5, 202, 5273, 10, 202, 3, 202, 3, 202, 3, 202, 7, 202, 5278, 10, 202, 12, 202, 14, 202, 5281, 11, 202, 5, 202, 5283, 10, 202, 3, 202, 3, 202, 3, 202, 3, 202, 3, 202, 3, 202, 5, 202, 5291, 10, 202, 3, 202, 3, 202, 3, 202, 3, 202, 5, 202, 5297, 10, 202, 3, 202, 3, 202, 3, 202, 3, 202, 3, 202, 5, 202, 5304, 10, 202, 3, 202, 5, 202, 5307, 10, 202, 3, 202, 3, 202, 3, 202, 3, 202, 5, 202, 5313, 10, 202, 3, 202, 3, 202, 3, 202, 7, 202, 5318, 10, 202, 12, 202, 14, 202, 5321, 11, 202, 3, 202, 3, 202, 3, 202, 3, 202, 3, 202, 5, 202, 5328, 10, 202, 3, 202, 3, 202, 3, 202, 3, 202, 3, 202, 3, 202, 5, 202, 5336, 10, 202, 3, 202, 3, 202, 3, 202, 3, 202, 5, 202, 5342, 10, 202, 3, 202, 3, 202, 3, 202, 7, 202, 5347, 10, 202, 12, 202, 14, 202, 5350, 11, 202, 3, 202, 3, 202, 3, 202, 3, 202, 3, 202, 3, 202, 3, 202, 5, 202, 5359, 10, 202, 3, 202, 3, 202, 3, 202, 5, 202, 5364, 10, 202, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 5, 203, 5374, 10, 203, 3, 203, 3, 203, 3, 203, 3, 203, 5, 203, 5380, 10, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 5, 203, 5392, 10, 203, 5, 203, 5394, 10, 203, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 5, 204, 5401, 10, 204, 3, 204, 3, 204, 3, 204, 3, 204, 5, 204, 5407, 10, 204, 3, 204, 3, 204, 3, 204, 3, 204, 5, 204, 5413, 10, 204, 3, 204, 3, 204, 3, 204, 3, 204, 5, 204, 5419, 10, 204, 3, 204, 3, 204, 3, 204, 6, 204, 5424, 10, 204, 13, 204, 14, 204, 5425, 3, 205, 3, 205, 3, 205, 3, 205, 3, 205, 5, 205, 5433, 10, 205, 3, 205, 3, 205, 3, 205, 3, 205, 3, 205, 3, 205, 5, 205, 5441, 10, 205, 3, 205, 3, 205, 3, 205, 3, 205, 5, 205, 5447, 10, 205, 3, 205, 3, 205, 3, 205, 3, 205, 3, 205, 3, 205, 3, 205, 3, 205, 3, 205, 3, 205, 3, 205, 3, 205, 6, 205, 5461, 10, 205, 13, 205, 14, 205, 5462, 3, 205, 5, 205, 5466, 10, 205, 3, 205, 3, 205, 3, 205, 5, 205, 5471, 10, 205, 5, 205, 5473, 10, 205, 3, 206, 3, 206, 3, 206, 3, 206, 3, 206, 3, 206, 3, 206, 3, 206, 3, 206, 3, 206, 5, 206, 5485, 10, 206, 3, 206, 3, 206, 3, 206, 3, 206, 5, 206, 5491, 10, 206, 3, 206, 3, 206, 3, 206, 3, 206, 3, 206, 3, 206, 3, 206, 3, 206, 3, 206, 3, 206, 3, 206, 3, 206, 6, 206, 5505, 10, 206, 13, 206, 14, 206, 5506, 3, 206, 5, 206, 5510, 10, 206, 3, 206, 3, 206, 3, 206, 5, 206, 5515, 10, 206, 3, 206, 5, 206, 5518, 10, 206, 3, 206, 3, 206, 3, 206, 5, 206, 5523, 10, 206, 5, 206, 5525, 10, 206, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 5, 207, 5534, 10, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 5, 207, 5541, 10, 207, 3, 208, 3, 208, 3, 208, 3, 208, 5, 208, 5547, 10, 208, 3, 208, 5, 208, 5550, 10, 208, 3, 208, 3, 208, 3, 208, 5, 208, 5555, 10, 208, 3, 209, 3, 209, 3, 209, 3, 209, 3, 209, 5, 209, 5562, 10, 209, 5, 209, 5564, 10, 209, 3, 209, 3, 209, 3, 209, 3, 209, 5, 209, 5570, 10, 209, 5, 209, 5572, 10, 209, 3, 209, 3, 209, 3, 209, 3, 209, 3, 209, 3, 209, 5, 209, 5580, 10, 209, 5, 209, 5582, 10, 209, 3, 209, 3, 209, 3, 209, 3, 209, 5, 209, 5588, 10, 209, 5, 209, 5590, 10, 209, 3, 209, 3, 209, 3, 209, 3, 209, 5, 209, 5596, 10, 209, 5, 209, 5598, 10, 209, 3, 209, 3, 209, 3, 209, 3, 209, 3, 209, 5, 209, 5605, 10, 209, 3, 209, 5, 209, 5608, 10, 209, 5, 209, 5610, 10, 209, 3, 209, 5, 209, 5613, 10, 209, 3, 209, 3, 209, 5, 209, 5617, 10, 209, 5, 209, 5619, 10, 209, 3, 209, 3, 209, 3, 209, 3, 209, 3, 209, 3, 209, 3, 209, 5, 209, 5628, 10, 209, 3, 210, 3, 210, 3, 210, 3, 210, 5, 210, 5634, 10, 210, 3, 210, 3, 210, 5, 210, 5638, 10, 210, 3, 211, 3, 211, 3, 211, 3, 211, 3, 211, 3, 211, 5, 211, 5646, 10, 211, 3, 211, 3, 211, 3, 211, 3, 211, 3, 211, 5, 211, 5653, 10, 211, 3, 211, 3, 211, 3, 211, 3, 211, 5, 211, 5659, 10, 211, 5, 211, 5661, 10, 211, 3, 212, 3, 212, 3, 212, 3, 212, 3, 213, 3, 213, 3, 213, 3, 213, 3, 213, 5, 213, 5672, 10, 213, 3, 213, 3, 213, 3, 213, 5, 213, 5677, 10, 213, 3, 213, 3, 213, 3, 213, 3, 213, 5, 213, 5683, 10, 213, 6, 213, 5685, 10, 213, 13, 213, 14, 213, 5686, 3, 213, 3, 213, 3, 214, 3, 214, 3, 214, 3, 214, 3, 214, 3, 214, 5, 214, 5697, 10, 214, 3, 215, 3, 215, 3, 215, 3, 215, 3, 215, 3, 215, 5, 215, 5705, 10, 215, 3, 215, 3, 215, 3, 215, 3, 215, 3, 215, 3, 215, 3, 215, 3, 215, 3, 215, 3, 215, 5, 215, 5717, 10, 215, 3, 216, 5, 216, 5720, 10, 216, 3, 216, 3, 216, 3, 216, 3, 216, 3, 216, 3, 216, 5, 216, 5728, 10, 216, 5, 216, 5730, 10, 216, 3, 216, 5, 216, 5733, 10, 216, 3, 216, 3, 216, 5, 216, 5737, 10, 216, 3, 216, 5, 216, 5740, 10, 216, 3, 216, 3, 216, 3, 216, 3, 216, 3, 216, 3, 216, 3, 216, 3, 216, 5, 216, 5750, 10, 216, 3, 216, 3, 216, 7, 216, 5754, 10, 216, 12, 216, 14, 216, 5757, 11, 216, 3, 216, 3, 216, 3, 216, 3, 216, 3, 216, 5, 216, 5764, 10, 216, 3, 216, 3, 216, 5, 216, 5768, 10, 216, 3, 216, 3, 216, 5, 216, 5772, 10, 216, 3, 216, 3, 216, 3, 216, 3, 216, 3, 216, 3, 216, 3, 216, 5, 216, 5781, 10, 216, 3, 216, 3, 216, 7, 216, 5785, 10, 216, 12, 216, 14, 216, 5788, 11, 216, 3, 216, 5, 216, 5791, 10, 216, 3, 216, 5, 216, 5794, 10, 216, 3, 216, 3, 216, 3, 217, 3, 217, 3, 217, 3, 217, 3, 217, 7, 217, 5803, 10, 217, 12, 217, 14, 217, 5806, 11, 217, 3, 217, 5, 217, 5809, 10, 217, 3, 218, 3, 218, 3, 218, 3, 218, 3, 218, 5, 218, 5816, 10, 218, 3, 218, 3, 218, 3, 218, 5, 218, 5821, 10, 218, 3, 219, 5, 219, 5824, 10, 219, 3, 219, 3, 219, 3, 219, 3, 219, 3, 219, 3, 219, 5, 219, 5832, 10, 219, 3, 219, 3, 219, 5, 219, 5836, 10, 219, 3, 219, 5, 219, 5839, 10, 219, 3, 219, 3, 219, 5, 219, 5843, 10, 219, 3, 219, 5, 219, 5846, 10, 219, 3, 219, 3, 219, 5, 219, 5850, 10, 219, 3, 219, 3, 219, 3, 219, 3, 219, 3, 219, 5, 219, 5857, 10, 219, 3, 219, 3, 219, 5, 219, 5861, 10, 219, 5, 219, 5863, 10, 219, 5, 219, 5865, 10, 219, 3, 219, 5, 219, 5868, 10, 219, 3, 219, 5, 219, 5871, 10, 219, 3, 219, 5, 219, 5874, 10, 219, 3, 220, 3, 220, 3, 220, 3, 220, 5, 220, 5880, 10, 220, 3, 221, 5, 221, 5883, 10, 221, 3, 221, 3, 221, 3, 221, 3, 221, 3, 221, 3, 221, 5, 221, 5891, 10, 221, 5, 221, 5893, 10, 221, 3, 221, 5, 221, 5896, 10, 221, 3, 221, 3, 221, 5, 221, 5900, 10, 221, 3, 221, 5, 221, 5903, 10, 221, 3, 221, 3, 221, 3, 221, 3, 221, 5, 221, 5909, 10, 221, 3, 221, 5, 221, 5912, 10, 221, 3, 221, 3, 221, 5, 221, 5916, 10, 221, 3, 221, 5, 221, 5919, 10, 221, 3, 221, 5, 221, 5922, 10, 221, 3, 222, 3, 222, 3, 222, 3, 222, 3, 222, 5, 222, 5929, 10, 222, 3, 223, 5, 223, 5932, 10, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 5, 223, 5939, 10, 223, 3, 223, 3, 223, 3, 223, 3, 223, 5, 223, 5945, 10, 223, 7, 223, 5947, 10, 223, 12, 223, 14, 223, 5950, 11, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 5, 223, 5959, 10, 223, 3, 223, 5, 223, 5962, 10, 223, 3, 224, 5, 224, 5965, 10, 224, 3, 224, 3, 224, 5, 224, 5969, 10, 224, 3, 224, 5, 224, 5972, 10, 224, 3, 224, 5, 224, 5975, 10, 224, 3, 224, 5, 224, 5978, 10, 224, 3, 225, 3, 225, 5, 225, 5982, 10, 225, 3, 226, 5, 226, 5985, 10, 226, 3, 226, 3, 226, 3, 226, 3, 226, 3, 226, 3, 226, 5, 226, 5993, 10, 226, 5, 226, 5995, 10, 226, 3, 226, 3, 226, 5, 226, 5999, 10, 226, 3, 226, 5, 226, 6002, 10, 226, 3, 226, 3, 226, 3, 226, 3, 226, 7, 226, 6008, 10, 226, 12, 226, 14, 226, 6011, 11, 226, 3, 226, 5, 226, 6014, 10, 226, 3, 226, 3, 226, 5, 226, 6018, 10, 226, 3, 226, 3, 226, 3, 226, 3, 226, 3, 226, 5, 226, 6025, 10, 226, 3, 226, 3, 226, 5, 226, 6029, 10, 226, 5, 226, 6031, 10, 226, 5, 226, 6033, 10, 226, 3, 226, 5, 226, 6036, 10, 226, 3, 226, 5, 226, 6039, 10, 226, 3, 226, 5, 226, 6042, 10, 226, 3, 227, 3, 227, 3, 227, 3, 227, 7, 227, 6048, 10, 227, 12, 227, 14, 227, 6051, 11, 227, 3, 227, 3, 227, 3, 227, 5, 227, 6056, 10, 227, 3, 227, 3, 227, 3, 227, 3, 227, 5, 227, 6062, 10, 227, 5, 227, 6064, 10, 227, 3, 228, 3, 228, 5, 228, 6068, 10, 228, 3, 228, 5, 228, 6071, 10, 228, 3, 229, 3, 229, 3, 229, 5, 229, 6076, 10, 229, 3, 229, 3, 229, 3, 229, 5, 229, 6081, 10, 229, 3, 229, 5, 229, 6084, 10, 229, 3, 230, 3, 230, 3, 230, 3, 230, 3, 230, 3, 230, 5, 230, 6092, 10, 230, 3, 230, 3, 230, 5, 230, 6096, 10, 230, 3, 230, 3, 230, 3, 230, 7, 230, 6101, 10, 230, 12, 230, 14, 230, 6104, 11, 230, 5, 230, 6106, 10, 230, 3, 230, 3, 230, 3, 230, 3, 230, 3, 230, 7, 230, 6113, 10, 230, 12, 230, 14, 230, 6116, 11, 230, 5, 230, 6118, 10, 230, 3, 230, 3, 230, 5, 230, 6122, 10, 230, 3, 230, 3, 230, 3, 230, 3, 230, 7, 230, 6128, 10, 230, 12, 230, 14, 230, 6131, 11, 230, 5, 230, 6133, 10, 230, 3, 231, 3, 231, 5, 231, 6137, 10, 231, 3, 231, 5, 231, 6140, 10, 231, 3, 231, 3, 231, 3, 231, 3, 231, 3, 231, 3, 231, 3, 231, 3, 231, 3, 231, 3, 231, 3, 231, 3, 231, 5, 231, 6154, 10, 231, 3, 231, 3, 231, 5, 231, 6158, 10, 231, 3, 231, 5, 231, 6161, 10, 231, 3, 231, 3, 231, 5, 231, 6165, 10, 231, 3, 231, 5, 231, 6168, 10, 231, 3, 232, 3, 232, 3, 232, 5, 232, 6173, 10, 232, 3, 232, 5, 232, 6176, 10, 232, 3, 232, 3, 232, 3, 232, 3, 232, 5, 232, 6182, 10, 232, 3, 232, 5, 232, 6185, 10, 232, 3, 232, 3, 232, 3, 232, 7, 232, 6190, 10, 232, 12, 232, 14, 232, 6193, 11, 232, 3, 232, 5, 232, 6196, 10, 232, 5, 232, 6198, 10, 232, 3, 232, 3, 232, 3, 232, 3, 232, 7, 232, 6204, 10, 232, 12, 232, 14, 232, 6207, 11, 232, 5, 232, 6209, 10, 232, 3, 232, 3, 232, 5, 232, 6213, 10, 232, 3, 232, 3, 232, 3, 232, 3, 233, 3, 233, 5, 233, 6220, 10, 233, 3, 234, 3, 234, 3, 234, 5, 234, 6225, 10, 234, 3, 234, 5, 234, 6228, 10, 234, 3, 234, 3, 234, 3, 234, 3, 234, 3, 234, 3, 234, 3, 234, 3, 234, 7, 234, 6238, 10, 234, 12, 234, 14, 234, 6241, 11, 234, 5, 234, 6243, 10, 234, 3, 234, 3, 234, 3, 234, 3, 234, 5, 234, 6249, 10, 234, 3, 234, 3, 234, 3, 234, 7, 234, 6254, 10, 234, 12, 234, 14, 234, 6257, 11, 234, 3, 234, 3, 234, 5, 234, 6261, 10, 234, 3, 234, 3, 234, 3, 234, 5, 234, 6266, 10, 234, 3, 234, 3, 234, 3, 234, 3, 235, 3, 235, 5, 235, 6273, 10, 235, 3, 236, 3, 236, 3, 237, 3, 237, 3, 237, 5, 237, 6280, 10, 237, 3, 237, 5, 237, 6283, 10, 237, 3, 237, 3, 237, 3, 237, 3, 237, 3, 237, 3, 237, 5, 237, 6291, 10, 237, 3, 237, 3, 237, 3, 237, 3, 237, 7, 237, 6297, 10, 237, 12, 237, 14, 237, 6300, 11, 237, 5, 237, 6302, 10, 237, 3, 237, 3, 237, 3, 237, 3, 237, 7, 237, 6308, 10, 237, 12, 237, 14, 237, 6311, 11, 237, 3, 237, 3, 237, 3, 237, 3, 238, 3, 238, 3, 239, 3, 239, 3, 239, 5, 239, 6321, 10, 239, 3, 239, 5, 239, 6324, 10, 239, 3, 239, 3, 239, 3, 239, 3, 239, 3, 239, 3, 239, 7, 239, 6332, 10, 239, 12, 239, 14, 239, 6335, 11, 239, 3, 239, 3, 239, 3, 239, 3, 239, 5, 239, 6341, 10, 239, 3, 239, 3, 239, 3, 239, 5, 239, 6346, 10, 239, 3, 239, 5, 239, 6349, 10, 239, 3, 240, 3, 240, 3, 240, 3, 240, 3, 240, 3, 240, 7, 240, 6357, 10, 240, 12, 240, 14, 240, 6360, 11, 240, 5, 240, 6362, 10, 240, 3, 240, 5, 240, 6365, 10, 240, 3, 240, 3, 240, 3, 240, 3, 240, 3, 240, 3, 240, 5, 240, 6373, 10, 240, 3, 241, 3, 241, 3, 241, 3, 241, 3, 241, 3, 241, 3, 241, 7, 241, 6382, 10, 241, 12, 241, 14, 241, 6385, 11, 241, 5, 241, 6387, 10, 241, 3, 241, 5, 241, 6390, 10, 241, 3, 241, 3, 241, 7, 241, 6394, 10, 241, 12, 241, 14, 241, 6397, 11, 241, 3, 241, 3, 241, 5, 241, 6401, 10, 241, 3, 241, 3, 241, 5, 241, 6405, 10, 241, 3, 242, 3, 242, 3, 242, 3, 242, 3, 242, 3, 242, 7, 242, 6413, 10, 242, 12, 242, 14, 242, 6416, 11, 242, 5, 242, 6418, 10, 242, 3, 242, 5, 242, 6421, 10, 242, 3, 242, 3, 242, 7, 242, 6425, 10, 242, 12, 242, 14, 242, 6428, 11, 242, 3, 242, 3, 242, 3, 242, 5, 242, 6433, 10, 242, 3, 242, 3, 242, 3, 243, 3, 243, 3, 243, 3, 243, 5, 243, 6441, 10, 243, 3, 243, 5, 243, 6444, 10, 243, 3, 243, 3, 243, 5, 243, 6448, 10, 243, 3, 243, 3, 243, 5, 243, 6452, 10, 243, 3, 243, 5, 243, 6455, 10, 243, 3, 244, 3, 244, 3, 244, 5, 244, 6460, 10, 244, 3, 245, 3, 245, 3, 245, 3, 245, 3, 245, 3, 245, 3, 245, 3, 245, 3, 245, 3, 245, 3, 245, 3, 245, 5, 245, 6474, 10, 245, 3, 246, 3, 246, 3, 246, 3, 246, 3, 246, 3, 246, 3, 246, 3, 246, 3, 246, 3, 246, 3, 246, 3, 246, 3, 246, 3, 246, 5, 246, 6490, 10, 246, 3, 246, 3, 246, 5, 246, 6494, 10, 246, 3, 246, 3, 246, 3, 246, 3, 246, 5, 246, 6500, 10, 246, 5, 246, 6502, 10, 246, 3, 246, 5, 246, 6505, 10, 246, 3, 247, 3, 247, 5, 247, 6509, 10, 247, 3, 247, 3, 247, 3, 247, 5, 247, 6514, 10, 247, 3, 247, 3, 247, 3, 247, 5, 247, 6519, 10, 247, 3, 248, 3, 248, 3, 248, 3, 248, 3, 248, 3, 248, 5, 248, 6527, 10, 248, 3, 248, 3, 248, 3, 248, 5, 248, 6532, 10, 248, 3, 248, 7, 248, 6535, 10, 248, 12, 248, 14, 248, 6538, 11, 248, 3, 248, 3, 248, 3, 248, 5, 248, 6543, 10, 248, 3, 248, 3, 248, 3, 248, 5, 248, 6548, 10, 248, 3, 248, 5, 248, 6551, 10, 248, 3, 249, 3, 249, 3, 249, 3, 249, 3, 249, 7, 249, 6558, 10, 249, 12, 249, 14, 249, 6561, 11, 249, 3, 249, 3, 249, 3, 249, 3, 249, 3, 249, 7, 249, 6568, 10, 249, 12, 249, 14, 249, 6571, 11, 249, 5, 249, 6573, 10, 249, 3, 250, 3, 250, 3, 250, 3, 250, 3, 250, 3, 250, 3, 250, 5, 250, 6582, 10, 250, 3, 250, 3, 250, 3, 250, 3, 250, 7, 250, 6588, 10, 250, 12, 250, 14, 250, 6591, 11, 250, 5, 250, 6593, 10, 250, 3, 250, 3, 250, 3, 250, 3, 250, 3, 250, 5, 250, 6600, 10, 250, 3, 250, 5, 250, 6603, 10, 250, 3, 251, 3, 251, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 5, 252, 6649, 10, 252, 3, 252, 3, 252, 5, 252, 6653, 10, 252, 3, 252, 5, 252, 6656, 10, 252, 3, 253, 3, 253, 3, 253, 3, 253, 5, 253, 6662, 10, 253, 3, 253, 3, 253, 3, 253, 3, 253, 3, 253, 3, 253, 3, 253, 3, 253, 3, 253, 3, 253, 5, 253, 6674, 10, 253, 5, 253, 6676, 10, 253, 3, 253, 5, 253, 6679, 10, 253, 3, 254, 3, 254, 3, 254, 3, 254, 3, 254, 3, 254, 3, 254, 3, 254, 3, 254, 3, 254, 3, 254, 3, 254, 3, 254, 3, 254, 3, 254, 3, 254, 3, 254, 3, 254, 3, 254, 3, 254, 3, 254, 3, 254, 3, 254, 5, 254, 6704, 10, 254, 3, 255, 3, 255, 3, 255, 3, 255, 3, 255, 3, 255, 3, 255, 3, 255, 3, 255, 5, 255, 6715, 10, 255, 3, 255, 3, 255, 3, 255, 3, 255, 3, 255, 3, 255, 5, 255, 6723, 10, 255, 3, 256, 3, 256, 3, 256, 3, 256, 3, 256, 3, 256, 3, 256, 7, 256, 6732, 10, 256, 12, 256, 14, 256, 6735, 11, 256, 7, 256, 6737, 10, 256, 12, 256, 14, 256, 6740, 11, 256, 5, 256, 6742, 10, 256, 3, 257, 3, 257, 3, 257, 3, 257, 3, 257, 3, 257, 5, 257, 6750, 10, 257, 3, 258, 3, 258, 3, 258, 3, 258, 3, 259, 3, 259, 3, 259, 3, 259, 5, 259, 6760, 10, 259, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 5, 260, 6767, 10, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 5, 260, 6774, 10, 260, 5, 260, 6776, 10, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 5, 260, 6788, 10, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 5, 260, 6799, 10, 260, 3, 260, 3, 260, 5, 260, 6803, 10, 260, 3, 260, 3, 260, 3, 260, 5, 260, 6808, 10, 260, 3, 260, 5, 260, 6811, 10, 260, 5, 260, 6813, 10, 260, 3, 260, 5, 260, 6816, 10, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 5, 260, 6828, 10, 260, 5, 260, 6830, 10, 260, 5, 260, 6832, 10, 260, 3, 260, 5, 260, 6835, 10, 260, 3, 260, 3, 260, 3, 260, 5, 260, 6840, 10, 260, 3, 260, 5, 260, 6843, 10, 260, 3, 260, 3, 260, 3, 260, 5, 260, 6848, 10, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 5, 260, 6858, 10, 260, 3, 260, 3, 260, 5, 260, 6862, 10, 260, 3, 260, 3, 260, 3, 260, 5, 260, 6867, 10, 260, 3, 260, 5, 260, 6870, 10, 260, 5, 260, 6872, 10, 260, 3, 260, 5, 260, 6875, 10, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 5, 260, 6887, 10, 260, 5, 260, 6889, 10, 260, 5, 260, 6891, 10, 260, 3, 260, 5, 260, 6894, 10, 260, 3, 260, 3, 260, 3, 260, 3, 260, 5, 260, 6900, 10, 260, 3, 261, 3, 261, 3, 262, 3, 262, 3, 262, 3, 262, 3, 262, 3, 262, 5, 262, 6910, 10, 262, 3, 263, 3, 263, 3, 264, 3, 264, 3, 265, 3, 265, 3, 266, 3, 266, 3, 266, 3, 266, 3, 266, 3, 266, 3, 266, 3, 266, 3, 266, 3, 266, 3, 266, 3, 266, 5, 266, 6930, 10, 266, 3, 267, 3, 267, 3, 267, 3, 267, 5, 267, 6936, 10, 267, 3, 268, 3, 268, 3, 269, 3, 269, 3, 269, 3, 269, 3, 269, 3, 270, 3, 270, 3, 271, 3, 271, 3, 271, 3, 271, 3, 272, 3, 272, 3, 273, 3, 273, 3, 273, 3, 273, 3, 273, 3, 273, 3, 273, 3, 273, 5, 273, 6961, 10, 273, 5, 273, 6963, 10, 273, 3, 274, 3, 274, 3, 274, 3, 275, 3, 275, 3, 275, 3, 276, 3, 276, 3, 277, 3, 277, 3, 278, 3, 278, 3, 279, 3, 279, 3, 279, 3, 279, 3, 280, 3, 280, 3, 280, 3, 280, 3, 280, 3, 280, 3, 280, 3, 280, 5, 280, 6989, 10, 280, 3, 280, 3, 280, 3, 280, 3, 280, 5, 280, 6995, 10, 280, 3, 280, 3, 280, 3, 280, 3, 280, 3, 280, 3, 280, 3, 280, 3, 280, 3, 280, 5, 280, 7006, 10, 280, 3, 281, 3, 281, 3, 281, 3, 281, 3, 281, 3, 281, 5, 281, 7014, 10, 281, 3, 281, 5, 281, 7017, 10, 281, 3, 282, 3, 282, 3, 282, 3, 283, 3, 283, 3, 283, 3, 284, 3, 284, 3, 284, 3, 284, 3, 284, 3, 284, 5, 284, 7031, 10, 284, 3, 285, 3, 285, 3, 285, 3, 285, 3, 285, 3, 285, 5, 285, 7039, 10, 285, 3, 286, 3, 286, 3, 286, 3, 286, 3, 286, 5, 286, 7046, 10, 286, 3, 287, 3, 287, 3, 287, 3, 287, 3, 287, 3, 287, 3, 287, 3, 287, 3, 287, 3, 287, 3, 287, 3, 287, 3, 287, 3, 287, 3, 287, 3, 287, 3, 287, 3, 287, 3, 287, 3, 287, 3, 287, 5, 287, 7069, 10, 287, 3, 288, 3, 288, 3, 288, 3, 288, 3, 288, 3, 289, 3, 289, 3, 289, 3, 289, 3, 289, 3, 289, 5, 289, 7082, 10, 289, 3, 290, 3, 290, 3, 290, 3, 290, 5, 290, 7088, 10, 290, 3, 290, 3, 290, 3, 290, 7, 290, 7093, 10, 290, 12, 290, 14, 290, 7096, 11, 290, 3, 290, 3, 290, 3, 290, 7, 290, 7101, 10, 290, 12, 290, 14, 290, 7104, 11, 290, 5, 290, 7106, 10, 290, 3, 290, 5, 290, 7109, 10, 290, 3, 291, 3, 291, 3, 291, 3, 291, 3, 292, 3, 292, 3, 292, 5, 292, 7118, 10, 292, 3, 292, 3, 292, 3, 292, 3, 292, 3, 293, 3, 293, 3, 293, 3, 293, 5, 293, 7128, 10, 293, 3, 293, 3, 293, 3, 293, 7, 293, 7133, 10, 293, 12, 293, 14, 293, 7136, 11, 293, 3, 293, 5, 293, 7139, 10, 293, 3, 294, 3, 294, 5, 294, 7143, 10, 294, 3, 295, 3, 295, 3, 295, 3, 295, 5, 295, 7149, 10, 295, 3, 295, 3, 295, 3, 295, 7, 295, 7154, 10, 295, 12, 295, 14, 295, 7157, 11, 295, 3, 295, 5, 295, 7160, 10, 295, 3, 296, 3, 296, 3, 296, 3, 296, 5, 296, 7166, 10, 296, 3, 296, 3, 296, 3, 296, 7, 296, 7171, 10, 296, 12, 296, 14, 296, 7174, 11, 296, 3, 296, 3, 296, 3, 296, 3, 296, 5, 296, 7180, 10, 296, 3, 296, 5, 296, 7183, 10, 296, 3, 297, 3, 297, 3, 297, 3, 297, 5, 297, 7189, 10, 297, 3, 297, 3, 297, 3, 297, 7, 297, 7194, 10, 297, 12, 297, 14, 297, 7197, 11, 297, 3, 297, 5, 297, 7200, 10, 297, 3, 298, 3, 298, 3, 298, 5, 298, 7205, 10, 298, 3, 298, 3, 298, 3, 298, 5, 298, 7210, 10, 298, 3, 298, 6, 298, 7213, 10, 298, 13, 298, 14, 298, 7214, 3, 298, 3, 298, 3, 299, 3, 299, 3, 299, 3, 299, 5, 299, 7223, 10, 299, 3, 299, 3, 299, 5, 299, 7227, 10, 299, 3, 300, 3, 300, 3, 300, 3, 300, 5, 300, 7233, 10, 300, 3, 300, 3, 300, 3, 300, 7, 300, 7238, 10, 300, 12, 300, 14, 300, 7241, 11, 300, 3, 300, 5, 300, 7244, 10, 300, 3, 301, 3, 301, 3, 301, 3, 301, 3, 301, 3, 301, 3, 301, 5, 301, 7253, 10, 301, 3, 301, 3, 301, 3, 301, 3, 301, 3, 301, 3, 301, 5, 301, 7261, 10, 301, 3, 302, 3, 302, 3, 302, 3, 302, 5, 302, 7267, 10, 302, 3, 302, 3, 302, 3, 303, 3, 303, 5, 303, 7273, 10, 303, 3, 304, 3, 304, 3, 304, 3, 304, 3, 304, 3, 304, 3, 304, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 5, 305, 7290, 10, 305, 3, 305, 3, 305, 5, 305, 7294, 10, 305, 3, 305, 3, 305, 3, 305, 3, 306, 3, 306, 3, 306, 5, 306, 7302, 10, 306, 3, 306, 3, 306, 5, 306, 7306, 10, 306, 3, 306, 3, 306, 3, 306, 3, 306, 7, 306, 7312, 10, 306, 12, 306, 14, 306, 7315, 11, 306, 3, 306, 5, 306, 7318, 10, 306, 3, 306, 3, 306, 3, 306, 5, 306, 7323, 10, 306, 3, 306, 3, 306, 5, 306, 7327, 10, 306, 3, 306, 3, 306, 3, 306, 3, 306, 3, 306, 5, 306, 7334, 10, 306, 3, 306, 3, 306, 3, 306, 3, 306, 5, 306, 7340, 10, 306, 5, 306, 7342, 10, 306, 3, 307, 3, 307, 5, 307, 7346, 10, 307, 3, 307, 3, 307, 5, 307, 7350, 10, 307, 3, 307, 3, 307, 5, 307, 7354, 10, 307, 3, 307, 5, 307, 7357, 10, 307, 3, 307, 3, 307, 5, 307, 7361, 10, 307, 3, 307, 3, 307, 3, 307, 3, 307, 5, 307, 7367, 10, 307, 3, 307, 3, 307, 5, 307, 7371, 10, 307, 5, 307, 7373, 10, 307, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 5, 308, 7380, 10, 308, 3, 308, 3, 308, 3, 308, 7, 308, 7385, 10, 308, 12, 308, 14, 308, 7388, 11, 308, 5, 308, 7390, 10, 308, 3, 308, 5, 308, 7393, 10, 308, 3, 308, 3, 308, 3, 308, 7, 308, 7398, 10, 308, 12, 308, 14, 308, 7401, 11, 308, 3, 308, 3, 308, 5, 308, 7405, 10, 308, 3, 308, 6, 308, 7408, 10, 308, 13, 308, 14, 308, 7409, 3, 308, 3, 308, 5, 308, 7414, 10, 308, 3, 308, 3, 308, 3, 308, 3, 308, 5, 308, 7420, 10, 308, 6, 308, 7422, 10, 308, 13, 308, 14, 308, 7423, 5, 308, 7426, 10, 308, 3, 308, 3, 308, 3, 308, 5, 308, 7431, 10, 308, 3, 308, 6, 308, 7434, 10, 308, 13, 308, 14, 308, 7435, 6, 308, 7438, 10, 308, 13, 308, 14, 308, 7439, 3, 308, 3, 308, 3, 308, 5, 308, 7445, 10, 308, 3, 308, 3, 308, 3, 308, 3, 308, 5, 308, 7451, 10, 308, 6, 308, 7453, 10, 308, 13, 308, 14, 308, 7454, 6, 308, 7457, 10, 308, 13, 308, 14, 308, 7458, 5, 308, 7461, 10, 308, 3, 308, 3, 308, 5, 308, 7465, 10, 308, 3, 308, 3, 308, 5, 308, 7469, 10, 308, 3, 308, 3, 308, 5, 308, 7473, 10, 308, 3, 308, 3, 308, 5, 308, 7477, 10, 308, 3, 308, 3, 308, 3, 308, 3, 308, 5, 308, 7483, 10, 308, 3, 308, 5, 308, 7486, 10, 308, 3, 308, 3, 308, 3, 308, 3, 308, 5, 308, 7492, 10, 308, 3, 308, 3, 308, 5, 308, 7496, 10, 308, 3, 308, 3, 308, 5, 308, 7500, 10, 308, 3, 308, 3, 308, 3, 308, 3, 308, 5, 308, 7506, 10, 308, 3, 308, 3, 308, 3, 308, 3, 308, 5, 308, 7512, 10, 308, 5, 308, 7514, 10, 308, 3, 308, 5, 308, 7517, 10, 308, 3, 308, 3, 308, 5, 308, 7521, 10, 308, 3, 308, 3, 308, 5, 308, 7525, 10, 308, 3, 308, 3, 308, 5, 308, 7529, 10, 308, 3, 308, 3, 308, 3, 308, 3, 308, 5, 308, 7535, 10, 308, 3, 308, 5, 308, 7538, 10, 308, 3, 308, 3, 308, 3, 308, 3, 308, 5, 308, 7544, 10, 308, 3, 308, 3, 308, 3, 308, 3, 308, 5, 308, 7550, 10, 308, 3, 308, 5, 308, 7553, 10, 308, 3, 308, 3, 308, 3, 308, 3, 308, 5, 308, 7559, 10, 308, 3, 308, 5, 308, 7562, 10, 308, 3, 308, 3, 308, 3, 308, 3, 308, 5, 308, 7568, 10, 308, 3, 308, 5, 308, 7571, 10, 308, 3, 308, 3, 308, 5, 308, 7575, 10, 308, 3, 308, 3, 308, 5, 308, 7579, 10, 308, 3, 308, 3, 308, 5, 308, 7583, 10, 308, 3, 308, 3, 308, 3, 308, 5, 308, 7588, 10, 308, 3, 308, 5, 308, 7591, 10, 308, 3, 308, 3, 308, 5, 308, 7595, 10, 308, 3, 308, 3, 308, 5, 308, 7599, 10, 308, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 5, 308, 7616, 10, 308, 7, 308, 7618, 10, 308, 12, 308, 14, 308, 7621, 11, 308, 5, 308, 7623, 10, 308, 3, 309, 3, 309, 3, 309, 3, 309, 3, 309, 5, 309, 7630, 10, 309, 3, 309, 6, 309, 7633, 10, 309, 13, 309, 14, 309, 7634, 3, 309, 3, 309, 5, 309, 7639, 10, 309, 3, 309, 3, 309, 3, 309, 3, 309, 5, 309, 7645, 10, 309, 6, 309, 7647, 10, 309, 13, 309, 14, 309, 7648, 5, 309, 7651, 10, 309, 3, 309, 3, 309, 3, 309, 5, 309, 7656, 10, 309, 3, 309, 6, 309, 7659, 10, 309, 13, 309, 14, 309, 7660, 6, 309, 7663, 10, 309, 13, 309, 14, 309, 7664, 3, 309, 3, 309, 3, 309, 5, 309, 7670, 10, 309, 3, 309, 3, 309, 3, 309, 3, 309, 5, 309, 7676, 10, 309, 6, 309, 7678, 10, 309, 13, 309, 14, 309, 7679, 6, 309, 7682, 10, 309, 13, 309, 14, 309, 7683, 5, 309, 7686, 10, 309, 3, 309, 3, 309, 5, 309, 7690, 10, 309, 3, 309, 3, 309, 5, 309, 7694, 10, 309, 3, 309, 3, 309, 5, 309, 7698, 10, 309, 3, 309, 3, 309, 5, 309, 7702, 10, 309, 3, 309, 3, 309, 3, 309, 3, 309, 5, 309, 7708, 10, 309, 3, 309, 5, 309, 7711, 10, 309, 3, 309, 3, 309, 3, 309, 3, 309, 5, 309, 7717, 10, 309, 3, 309, 3, 309, 5, 309, 7721, 10, 309, 3, 309, 3, 309, 5, 309, 7725, 10, 309, 3, 309, 3, 309, 3, 309, 3, 309, 5, 309, 7731, 10, 309, 3, 309, 3, 309, 3, 309, 3, 309, 5, 309, 7737, 10, 309, 5, 309, 7739, 10, 309, 3, 309, 5, 309, 7742, 10, 309, 3, 309, 3, 309, 5, 309, 7746, 10, 309, 3, 309, 3, 309, 5, 309, 7750, 10, 309, 3, 309, 3, 309, 5, 309, 7754, 10, 309, 3, 309, 3, 309, 3, 309, 3, 309, 5, 309, 7760, 10, 309, 3, 309, 5, 309, 7763, 10, 309, 3, 309, 3, 309, 3, 309, 3, 309, 5, 309, 7769, 10, 309, 3, 309, 3, 309, 3, 309, 3, 309, 5, 309, 7775, 10, 309, 3, 309, 5, 309, 7778, 10, 309, 3, 309, 3, 309, 3, 309, 3, 309, 5, 309, 7784, 10, 309, 3, 309, 5, 309, 7787, 10, 309, 3, 309, 3, 309, 3, 309, 3, 309, 5, 309, 7793, 10, 309, 3, 309, 5, 309, 7796, 10, 309, 3, 309, 3, 309, 5, 309, 7800, 10, 309, 3, 309, 3, 309, 5, 309, 7804, 10, 309, 3, 309, 3, 309, 5, 309, 7808, 10, 309, 3, 309, 3, 309, 3, 309, 5, 309, 7813, 10, 309, 3, 309, 5, 309, 7816, 10, 309, 3, 309, 3, 309, 5, 309, 7820, 10, 309, 3, 309, 3, 309, 5, 309, 7824, 10, 309, 3, 309, 3, 309, 3, 309, 3, 309, 5, 309, 7830, 10, 309, 3, 309, 5, 309, 7833, 10, 309, 3, 309, 3, 309, 5, 309, 7837, 10, 309, 3, 309, 3, 309, 3, 309, 3, 309, 3, 309, 3, 309, 3, 309, 3, 309, 3, 309, 3, 309, 3, 309, 3, 309, 3, 309, 3, 309, 3, 309, 5, 309, 7854, 10, 309, 7, 309, 7856, 10, 309, 12, 309, 14, 309, 7859, 11, 309, 5, 309, 7861, 10, 309, 3, 310, 3, 310, 3, 310, 3, 310, 3, 310, 3, 310, 3, 310, 3, 310, 3, 310, 3, 310, 3, 310, 3, 310, 5, 310, 7875, 10, 310, 3, 310, 3, 310, 3, 310, 3, 310, 5, 310, 7881, 10, 310, 3, 310, 3, 310, 3, 310, 3, 310, 3, 310, 3, 310, 5, 310, 7889, 10, 310, 3, 310, 3, 310, 3, 310, 3, 310, 3, 310, 6, 310, 7896, 10, 310, 13, 310, 14, 310, 7897, 3, 310, 5, 310, 7901, 10, 310, 3, 311, 3, 311, 3, 311, 3, 311, 3, 311, 3, 311, 3, 311, 3, 311, 3, 311, 3, 311, 3, 311, 3, 311, 3, 311, 3, 312, 3, 312, 3, 312, 3, 312, 3, 312, 3, 312, 3, 312, 3, 312, 3, 312, 3, 312, 3, 312, 3, 312, 3, 312, 3, 312, 3, 313, 3, 313, 3, 313, 3, 313, 5, 313, 7934, 10, 313, 3, 314, 3, 314, 5, 314, 7938, 10, 314, 3, 314, 3, 314, 5, 314, 7942, 10, 314, 3, 315, 3, 315, 3, 315, 3, 315, 3, 315, 5, 315, 7949, 10, 315, 3, 316, 3, 316, 3, 316, 3, 316, 3, 317, 3, 317, 3, 317, 3, 318, 3, 318, 5, 318, 7960, 10, 318, 3, 318, 3, 318, 5, 318, 7964, 10, 318, 3, 318, 3, 318, 3, 318, 7, 318, 7969, 10, 318, 12, 318, 14, 318, 7972, 11, 318, 5, 318, 7974, 10, 318, 3, 318, 5, 318, 7977, 10, 318, 3, 318, 3, 318, 3, 318, 3, 318, 7, 318, 7983, 10, 318, 12, 318, 14, 318, 7986, 11, 318, 3, 318, 3, 318, 5, 318, 7990, 10, 318, 3, 318, 3, 318, 3, 318, 5, 318, 7995, 10, 318, 3, 318, 5, 318, 7998, 10, 318, 5, 318, 8000, 10, 318, 3, 319, 3, 319, 5, 319, 8004, 10, 319, 3, 319, 3, 319, 5, 319, 8008, 10, 319, 3, 319, 5, 319, 8011, 10, 319, 3, 319, 3, 319, 5, 319, 8015, 10, 319, 3, 320, 3, 320, 3, 321, 3, 321, 5, 321, 8021, 10, 321, 3, 321, 3, 321, 3, 321, 5, 321, 8026, 10, 321, 3, 321, 3, 321, 3, 321, 3, 321, 3, 321, 5, 321, 8033, 10, 321, 5, 321, 8035, 10, 321, 3, 321, 3, 321, 5, 321, 8039, 10, 321, 3, 321, 3, 321, 3, 321, 3, 321, 7, 321, 8045, 10, 321, 12, 321, 14, 321, 8048, 11, 321, 3, 321, 3, 321, 3, 321, 5, 321, 8053, 10, 321, 3, 321, 3, 321, 5, 321, 8057, 10, 321, 3, 321, 5, 321, 8060, 10, 321, 3, 321, 3, 321, 3, 321, 3, 321, 3, 321, 3, 321, 3, 321, 5, 321, 8069, 10, 321, 3, 321, 5, 321, 8072, 10, 321, 3, 321, 3, 321, 3, 321, 3, 321, 5, 321, 8078, 10, 321, 3, 322, 3, 322, 3, 322, 3, 322, 3, 322, 5, 322, 8085, 10, 322, 3, 322, 3, 322, 3, 322, 5, 322, 8090, 10, 322, 3, 322, 3, 322, 3, 322, 3, 322, 3, 322, 3, 322, 5, 322, 8098, 10, 322, 3, 323, 3, 323, 3, 323, 5, 323, 8103, 10, 323, 3, 323, 3, 323, 3, 323, 3, 323, 3, 323, 3, 323, 3, 323, 3, 323, 3, 323, 3, 323, 5, 323, 8115, 10, 323, 5, 323, 8117, 10, 323, 3, 324, 3, 324, 3, 324, 3, 324, 3, 324, 3, 324, 3, 324, 3, 324, 3, 324, 5, 324, 8128, 10, 324, 3, 325, 3, 325, 3, 325, 3, 325, 3, 325, 5, 325, 8135, 10, 325, 3, 325, 3, 325, 3, 325, 3, 325, 3, 325, 3, 325, 7, 325, 8143, 10, 325, 12, 325, 14, 325, 8146, 11, 325, 3, 326, 3, 326, 3, 326, 3, 326, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 5, 327, 8168, 10, 327, 3, 328, 3, 328, 3, 328, 3, 328, 3, 328, 3, 328, 3, 328, 3, 328, 3, 328, 3, 328, 3, 328, 5, 328, 8181, 10, 328, 3, 329, 3, 329, 3, 329, 3, 329, 3, 329, 3, 329, 3, 329, 3, 329, 3, 329, 3, 329, 3, 329, 3, 329, 3, 329, 3, 329, 5, 329, 8197, 10, 329, 3, 329, 3, 329, 3, 329, 5, 329, 8202, 10, 329, 3, 329, 3, 329, 3, 329, 3, 329, 3, 329, 5, 329, 8209, 10, 329, 3, 329, 5, 329, 8212, 10, 329, 6, 329, 8214, 10, 329, 13, 329, 14, 329, 8215, 5, 329, 8218, 10, 329, 3, 330, 3, 330, 3, 330, 3, 330, 3, 330, 3, 330, 3, 330, 3, 330, 3, 330, 3, 330, 3, 330, 3, 330, 3, 330, 3, 330, 3, 330, 5, 330, 8235, 10, 330, 3, 331, 3, 331, 3, 332, 3, 332, 3, 332, 3, 332, 3, 332, 3, 332, 3, 332, 3, 332, 3, 332, 3, 332, 3, 332, 5, 332, 8250, 10, 332, 3, 333, 3, 333, 3, 333, 3, 333, 3, 333, 3, 333, 5, 333, 8258, 10, 333, 3, 333, 3, 333, 3, 333, 3, 333, 3, 333, 3, 333, 3, 333, 5, 333, 8267, 10, 333, 3, 333, 3, 333, 3, 333, 3, 333, 3, 333, 3, 333, 5, 333, 8275, 10, 333, 3, 334, 3, 334, 3, 334, 3, 334, 3, 334, 3, 334, 3, 334, 5, 334, 8284, 10, 334, 3, 334, 3, 334, 3, 334, 3, 334, 3, 334, 3, 334, 3, 334, 3, 334, 3, 334, 5, 334, 8295, 10, 334, 3, 334, 3, 334, 5, 334, 8299, 10, 334, 5, 334, 8301, 10, 334, 5, 334, 8303, 10, 334, 3, 335, 3, 335, 3, 335, 3, 335, 5, 335, 8309, 10, 335, 3, 335, 3, 335, 3, 335, 5, 335, 8314, 10, 335, 3, 335, 3, 335, 3, 335, 3, 335, 3, 335, 5, 335, 8321, 10, 335, 3, 335, 3, 335, 3, 335, 3, 335, 3, 335, 3, 335, 3, 335, 3, 335, 3, 335, 3, 335, 3, 335, 5, 335, 8334, 10, 335, 5, 335, 8336, 10, 335, 5, 335, 8338, 10, 335, 3, 335, 5, 335, 8341, 10, 335, 3, 335, 5, 335, 8344, 10, 335, 3, 336, 3, 336, 3, 336, 3, 336, 3, 336, 5, 336, 8351, 10, 336, 3, 336, 5, 336, 8354, 10, 336, 3, 336, 3, 336, 3, 336, 3, 336, 5, 336, 8360, 10, 336, 3, 336, 3, 336, 3, 336, 5, 336, 8365, 10, 336, 5, 336, 8367, 10, 336, 3, 336, 5, 336, 8370, 10, 336, 3, 336, 3, 336, 3, 336, 3, 336, 5, 336, 8376, 10, 336, 3, 336, 3, 336, 3, 336, 3, 336, 3, 336, 3, 336, 5, 336, 8384, 10, 336, 5, 336, 8386, 10, 336, 3, 336, 5, 336, 8389, 10, 336, 3, 336, 3, 336, 5, 336, 8393, 10, 336, 3, 336, 5, 336, 8396, 10, 336, 3, 336, 3, 336, 3, 336, 3, 336, 3, 336, 3, 336, 3, 336, 3, 336, 5, 336, 8406, 10, 336, 3, 336, 5, 336, 8409, 10, 336, 3, 336, 3, 336, 5, 336, 8413, 10, 336, 3, 336, 5, 336, 8416, 10, 336, 3, 336, 3, 336, 3, 336, 3, 336, 5, 336, 8422, 10, 336, 3, 336, 5, 336, 8425, 10, 336, 5, 336, 8427, 10, 336, 3, 337, 3, 337, 5, 337, 8431, 10, 337, 3, 338, 3, 338, 3, 338, 5, 338, 8436, 10, 338, 3, 339, 3, 339, 5, 339, 8440, 10, 339, 3, 340, 3, 340, 3, 340, 5, 340, 8445, 10, 340, 3, 341, 3, 341, 3, 341, 5, 341, 8450, 10, 341, 3, 342, 3, 342, 3, 342, 3, 342, 3, 342, 3, 342, 5, 342, 8458, 10, 342, 3, 342, 3, 342, 5, 342, 8462, 10, 342, 3, 342, 5, 342, 8465, 10, 342, 3, 343, 3, 343, 3, 343, 5, 343, 8470, 10, 343, 3, 344, 3, 344, 3, 344, 3, 344, 3, 345, 3, 345, 5, 345, 8478, 10, 345, 3, 345, 3, 345, 3, 345, 5, 345, 8483, 10, 345, 3, 346, 3, 346, 3, 346, 3, 346, 3, 346, 3, 347, 3, 347, 3, 347, 5, 347, 8493, 10, 347, 3, 347, 3, 347, 3, 347, 3, 348, 3, 348, 3, 348, 3, 348, 3, 349, 3, 349, 5, 349, 8504, 10, 349, 3, 349, 7, 349, 8507, 10, 349, 12, 349, 14, 349, 8510, 11, 349, 3, 350, 3, 350, 3, 350, 5, 350, 8515, 10, 350, 3, 351, 3, 351, 3, 351, 3, 351, 5, 351, 8521, 10, 351, 3, 351, 3, 351, 5, 351, 8525, 10, 351, 3, 351, 5, 351, 8528, 10, 351, 3, 351, 3, 351, 5, 351, 8532, 10, 351, 3, 351, 3, 351, 5, 351, 8536, 10, 351, 3, 351, 3, 351, 3, 351, 3, 351, 3, 351, 3, 351, 5, 351, 8544, 10, 351, 3, 351, 3, 351, 3, 351, 5, 351, 8549, 10, 351, 5, 351, 8551, 10, 351, 3, 351, 5, 351, 8554, 10, 351, 3, 351, 7, 351, 8557, 10, 351, 12, 351, 14, 351, 8560, 11, 351, 3, 352, 3, 352, 3, 352, 3, 352, 3, 352, 3, 352, 5, 352, 8568, 10, 352, 3, 353, 3, 353, 5, 353, 8572, 10, 353, 3, 353, 3, 353, 3, 353, 5, 353, 8577, 10, 353, 3, 353, 5, 353, 8580, 10, 353, 3, 353, 5, 353, 8583, 10, 353, 3, 353, 3, 353, 3, 353, 3, 353, 5, 353, 8589, 10, 353, 3, 353, 3, 353, 3, 353, 3, 353, 3, 353, 3, 353, 5, 353, 8597, 10, 353, 3, 353, 3, 353, 3, 353, 3, 353, 3, 353, 3, 353, 5, 353, 8605, 10, 353, 3, 353, 5, 353, 8608, 10, 353, 3, 353, 5, 353, 8611, 10, 353, 3, 354, 3, 354, 5, 354, 8615, 10, 354, 3, 354, 3, 354, 3, 354, 5, 354, 8620, 10, 354, 3, 354, 5, 354, 8623, 10, 354, 3, 354, 3, 354, 3, 354, 3, 354, 5, 354, 8629, 10, 354, 3, 354, 3, 354, 5, 354, 8633, 10, 354, 3, 354, 3, 354, 3, 354, 3, 354, 5, 354, 8639, 10, 354, 3, 354, 3, 354, 3, 354, 3, 354, 3, 354, 3, 354, 5, 354, 8647, 10, 354, 3, 354, 3, 354, 3, 354, 3, 354, 6, 354, 8653, 10, 354, 13, 354, 14, 354, 8654, 3, 354, 5, 354, 8658, 10, 354, 3, 354, 3, 354, 3, 354, 3, 354, 3, 354, 3, 354, 3, 354, 3, 354, 3, 354, 3, 354, 3, 354, 3, 354, 3, 354, 5, 354, 8673, 10, 354, 3, 354, 5, 354, 8676, 10, 354, 3, 354, 5, 354, 8679, 10, 354, 5, 354, 8681, 10, 354, 3, 355, 3, 355, 3, 355, 3, 355, 3, 355, 3, 355, 3, 355, 3, 355, 3, 355, 5, 355, 8692, 10, 355, 3, 356, 3, 356, 3, 356, 3, 356, 3, 356, 3, 356, 3, 356, 3, 356, 3, 356, 5, 356, 8703, 10, 356, 3, 357, 3, 357, 3, 357, 3, 357, 3, 357, 7, 357, 8710, 10, 357, 12, 357, 14, 357, 8713, 11, 357, 3, 357, 3, 357, 3, 358, 3, 358, 3, 358, 3, 358, 3, 358, 5, 358, 8722, 10, 358, 3, 359, 3, 359, 3, 359, 3, 359, 3, 359, 3, 359, 3, 359, 3, 359, 5, 359, 8732, 10, 359, 5, 359, 8734, 10, 359, 5, 359, 8736, 10, 359, 3, 359, 5, 359, 8739, 10, 359, 3, 359, 5, 359, 8742, 10, 359, 3, 359, 3, 359, 3, 359, 3, 359, 3, 359, 3, 359, 3, 359, 3, 359, 3, 359, 5, 359, 8753, 10, 359, 5, 359, 8755, 10, 359, 5, 359, 8757, 10, 359, 3, 359, 5, 359, 8760, 10, 359, 3, 360, 7, 360, 8763, 10, 360, 12, 360, 14, 360, 8766, 11, 360, 3, 360, 3, 360, 3, 360, 3, 361, 3, 361, 3, 361, 3, 361, 3, 361, 5, 361, 8776, 10, 361, 3, 362, 3, 362, 3, 362, 3, 362, 3, 362, 3, 362, 3, 362, 5, 362, 8785, 10, 362, 3, 362, 5, 362, 8788, 10, 362, 3, 362, 5, 362, 8791, 10, 362, 3, 362, 3, 362, 3, 362, 3, 362, 3, 362, 7, 362, 8798, 10, 362, 12, 362, 14, 362, 8801, 11, 362, 5, 362, 8803, 10, 362, 3, 362, 5, 362, 8806, 10, 362, 3, 363, 3, 363, 3, 363, 3, 363, 3, 363, 5, 363, 8813, 10, 363, 3, 363, 5, 363, 8816, 10, 363, 3, 363, 3, 363, 3, 363, 3, 363, 3, 363, 3, 363, 3, 363, 3, 363, 3, 363, 3, 363, 3, 363, 3, 363, 3, 363, 5, 363, 8831, 10, 363, 3, 363, 5, 363, 8834, 10, 363, 3, 363, 3, 363, 3, 363, 3, 363, 3, 363, 5, 363, 8841, 10, 363, 3, 363, 3, 363, 3, 363, 3, 363, 3, 363, 3, 363, 3, 363, 3, 363, 3, 363, 3, 363, 3, 363, 3, 363, 3, 363, 3, 363, 5, 363, 8857, 10, 363, 3, 364, 3, 364, 5, 364, 8861, 10, 364, 3, 365, 3, 365, 3, 365, 3, 365, 3, 365, 3, 365, 3, 365, 3, 365, 5, 365, 8871, 10, 365, 3, 365, 3, 365, 3, 365, 3, 365, 3, 365, 3, 365, 3, 365, 3, 365, 3, 365, 3, 365, 3, 365, 3, 365, 3, 365, 3, 365, 3, 365, 3, 365, 3, 365, 7, 365, 8890, 10, 365, 12, 365, 14, 365, 8893, 11, 365, 3, 366, 3, 366, 3, 366, 3, 366, 5, 366, 8899, 10, 366, 3, 367, 3, 367, 3, 367, 6, 367, 8904, 10, 367, 13, 367, 14, 367, 8905, 3, 367, 3, 367, 5, 367, 8910, 10, 367, 3, 367, 3, 367, 3, 367, 3, 367, 6, 367, 8916, 10, 367, 13, 367, 14, 367, 8917, 3, 367, 3, 367, 5, 367, 8922, 10, 367, 3, 367, 3, 367, 5, 367, 8926, 10, 367, 3, 368, 3, 368, 3, 368, 3, 368, 5, 368, 8932, 10, 368, 3, 369, 3, 369, 3, 369, 3, 369, 3, 369, 3, 369, 3, 369, 3, 369, 5, 369, 8942, 10, 369, 3, 370, 3, 370, 3, 370, 3, 370, 3, 370, 3, 370, 3, 370, 3, 370, 5, 370, 8952, 10, 370, 3, 371, 3, 371, 3, 372, 3, 372, 3, 372, 5, 372, 8959, 10, 372, 3, 372, 3, 372, 3, 372, 7, 372, 8964, 10, 372, 12, 372, 14, 372, 8967, 11, 372, 3, 372, 3, 372, 3, 372, 3, 372, 3, 372, 3, 372, 5, 372, 8975, 10, 372, 3, 372, 3, 372, 3, 372, 3, 372, 3, 372, 5, 372, 8982, 10, 372, 3, 373, 3, 373, 3, 373, 3, 373, 3, 373, 5, 373, 8989, 10, 373, 3, 373, 3, 373, 3, 373, 3, 373, 3, 373, 3, 374, 3, 374, 5, 374, 8998, 10, 374, 3, 374, 3, 374, 5, 374, 9002, 10, 374, 3, 374, 3, 374, 3, 374, 3, 374, 3, 374, 3, 374, 3, 374, 3, 374, 5, 374, 9012, 10, 374, 3, 375, 3, 375, 3, 375, 7, 375, 9017, 10, 375, 12, 375, 14, 375, 9020, 11, 375, 3, 376, 3, 376, 3, 376, 7, 376, 9025, 10, 376, 12, 376, 14, 376, 9028, 11, 376, 3, 377, 3, 377, 3, 377, 7, 377, 9033, 10, 377, 12, 377, 14, 377, 9036, 11, 377, 3, 378, 5, 378, 9039, 10, 378, 3, 378, 3, 378, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 5, 379, 9061, 10, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 5, 379, 9070, 10, 379, 3, 379, 3, 379, 3, 379, 3, 379, 5, 379, 9076, 10, 379, 3, 379, 3, 379, 3, 379, 3, 379, 5, 379, 9082, 10, 379, 3, 379, 3, 379, 3, 379, 3, 379, 5, 379, 9088, 10, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 5, 379, 9098, 10, 379, 3, 380, 3, 380, 3, 380, 3, 380, 3, 380, 5, 380, 9105, 10, 380, 3, 380, 7, 380, 9108, 10, 380, 12, 380, 14, 380, 9111, 11, 380, 3, 381, 3, 381, 5, 381, 9115, 10, 381, 3, 381, 3, 381, 5, 381, 9119, 10, 381, 3, 381, 3, 381, 3, 381, 3, 381, 3, 381, 5, 381, 9126, 10, 381, 3, 382, 3, 382, 5, 382, 9130, 10, 382, 3, 382, 5, 382, 9133, 10, 382, 3, 382, 3, 382, 3, 382, 5, 382, 9138, 10, 382, 3, 382, 3, 382, 5, 382, 9142, 10, 382, 3, 382, 3, 382, 5, 382, 9146, 10, 382, 3, 382, 3, 382, 3, 382, 5, 382, 9151, 10, 382, 3, 382, 3, 382, 3, 382, 7, 382, 9156, 10, 382, 12, 382, 14, 382, 9159, 11, 382, 5, 382, 9161, 10, 382, 3, 382, 3, 382, 5, 382, 9165, 10, 382, 3, 383, 3, 383, 3, 383, 5, 383, 9170, 10, 383, 3, 383, 3, 383, 5, 383, 9174, 10, 383, 3, 384, 3, 384, 3, 384, 3, 384, 3, 384, 3, 384, 3, 384, 5, 384, 9183, 10, 384, 3, 385, 3, 385, 3, 385, 3, 385, 3, 385, 5, 385, 9190, 10, 385, 3, 386, 3, 386, 3, 386, 3, 386, 3, 386, 7, 386, 9197, 10, 386, 12, 386, 14, 386, 9200, 11, 386, 3, 386, 3, 386, 3, 386, 3, 386, 3, 386, 3, 386, 3, 386, 3, 386, 3, 386, 5, 386, 9211, 10, 386, 5, 386, 9213, 10, 386, 3, 387, 3, 387, 3, 387, 3, 387, 3, 387, 3, 387, 3, 387, 3, 387, 5, 387, 9223, 10, 387, 3, 387, 5, 387, 9226, 10, 387, 3, 387, 7, 387, 9229, 10, 387, 12, 387, 14, 387, 9232, 11, 387, 3, 387, 3, 387, 3, 387, 3, 387, 3, 387, 3, 387, 5, 387, 9240, 10, 387, 5, 387, 9242, 10, 387, 5, 387, 9244, 10, 387, 3, 387, 3, 387, 3, 387, 5, 387, 9249, 10, 387, 3, 387, 3, 387, 3, 387, 3, 387, 7, 387, 9255, 10, 387, 12, 387, 14, 387, 9258, 11, 387, 3, 387, 3, 387, 5, 387, 9262, 10, 387, 3, 387, 3, 387, 3, 387, 3, 387, 3, 387, 3, 387, 5, 387, 9270, 10, 387, 3, 387, 7, 387, 9273, 10, 387, 12, 387, 14, 387, 9276, 11, 387, 3, 387, 3, 387, 3, 387, 5, 387, 9281, 10, 387, 3, 387, 3, 387, 3, 387, 3, 387, 3, 387, 3, 387, 3, 387, 3, 387, 5, 387, 9291, 10, 387, 5, 387, 9293, 10, 387, 3, 387, 3, 387, 5, 387, 9297, 10, 387, 3, 387, 3, 387, 5, 387, 9301, 10, 387, 5, 387, 9303, 10, 387, 3, 388, 3, 388, 3, 388, 3, 388, 3, 388, 3, 388, 3, 388, 5, 388, 9312, 10, 388, 5, 388, 9314, 10, 388, 3, 389, 3, 389, 5, 389, 9318, 10, 389, 3, 390, 3, 390, 3, 391, 3, 391, 3, 391, 3, 391, 3, 391, 7, 391, 9327, 10, 391, 12, 391, 14, 391, 9330, 11, 391, 3, 391, 3, 391, 3, 392, 3, 392, 3, 392, 3, 392, 3, 392, 3, 392, 3, 392, 3, 392, 3, 392, 3, 392, 3, 392, 3, 392, 3, 392, 3, 392, 3, 392, 3, 392, 3, 392, 3, 392, 3, 392, 3, 392, 3, 392, 3, 392, 3, 392, 3, 392, 3, 392, 3, 392, 3, 392, 7, 392, 9361, 10, 392, 12, 392, 14, 392, 9364, 11, 392, 3, 392, 3, 392, 3, 392, 3, 392, 3, 392, 3, 392, 3, 392, 3, 392, 3, 392, 3, 392, 3, 392, 3, 392, 3, 392, 5, 392, 9379, 10, 392, 3, 393, 3, 393, 3, 393, 3, 393, 3, 393, 5, 393, 9386, 10, 393, 5, 393, 9388, 10, 393, 3, 394, 3, 394, 3, 394, 7, 394, 9393, 10, 394, 12, 394, 14, 394, 9396, 11, 394, 3, 395, 3, 395, 3, 395, 3, 395, 7, 395, 9402, 10, 395, 12, 395, 14, 395, 9405, 11, 395, 3, 395, 3, 395, 3, 396, 3, 396, 3, 396, 5, 396, 9412, 10, 396, 3, 396, 3, 396, 3, 397, 3, 397, 3, 397, 5, 397, 9419, 10, 397, 3, 397, 3, 397, 3, 397, 3, 397, 3, 397, 5, 397, 9426, 10, 397, 3, 397, 5, 397, 9429, 10, 397, 3, 397, 5, 397, 9432, 10, 397, 3, 398, 3, 398, 3, 398, 3, 398, 3, 398, 5, 398, 9439, 10, 398, 3, 398, 3, 398, 3, 398, 3, 398, 3, 398, 5, 398, 9446, 10, 398, 3, 398, 5, 398, 9449, 10, 398, 5, 398, 9451, 10, 398, 3, 399, 3, 399, 3, 399, 3, 399, 3, 399, 3, 399, 5, 399, 9459, 10, 399, 5, 399, 9461, 10, 399, 3, 400, 3, 400, 3, 400, 3, 400, 5, 400, 9467, 10, 400, 3, 401, 3, 401, 3, 401, 7, 401, 9472, 10, 401, 12, 401, 14, 401, 9475, 11, 401, 3, 402, 3, 402, 3, 402, 3, 402, 3, 402, 5, 402, 9482, 10, 402, 3, 403, 3, 403, 7, 403, 9486, 10, 403, 12, 403, 14, 403, 9489, 11, 403, 3, 404, 3, 404, 5, 404, 9493, 10, 404, 3, 404, 3, 404, 5, 404, 9497, 10, 404, 3, 404, 3, 404, 5, 404, 9501, 10, 404, 3, 404, 3, 404, 3, 404, 5, 404, 9506, 10, 404, 5, 404, 9508, 10, 404, 3, 404, 3, 404, 3, 404, 3, 404, 3, 404, 3, 404, 5, 404, 9516, 10, 404, 5, 404, 9518, 10, 404, 3, 404, 3, 404, 5, 404, 9522, 10, 404, 3, 404, 3, 404, 3, 404, 3, 404, 3, 404, 5, 404, 9529, 10, 404, 5, 404, 9531, 10, 404, 3, 404, 3, 404, 3, 404, 3, 404, 3, 404, 5, 404, 9538, 10, 404, 5, 404, 9540, 10, 404, 3, 405, 3, 405, 3, 405, 3, 405, 3, 405, 3, 405, 3, 405, 5, 405, 9549, 10, 405, 3, 405, 3, 405, 3, 405, 3, 405, 3, 405, 3, 405, 5, 405, 9557, 10, 405, 3, 406, 3, 406, 3, 406, 7, 406, 9562, 10, 406, 12, 406, 14, 406, 9565, 11, 406, 3, 407, 3, 407, 3, 407, 5, 407, 9570, 10, 407, 3, 408, 3, 408, 3, 408, 3, 408, 3, 408, 3, 408, 3, 408, 3, 408, 3, 409, 5, 409, 9581, 10, 409, 3, 409, 3, 409, 5, 409, 9585, 10, 409, 5, 409, 9587, 10, 409, 3, 409, 5, 409, 9590, 10, 409, 3, 409, 3, 409, 3, 409, 3, 409, 3, 409, 3, 409, 3, 409, 3, 409, 3, 409, 3, 409, 3, 409, 3, 409, 3, 409, 3, 409, 3, 409, 3, 409, 3, 409, 3, 409, 3, 409, 3, 409, 3, 409, 3, 409, 5, 409, 9614, 10, 409, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 411, 3, 411, 3, 411, 3, 411, 3, 411, 3, 411, 3, 411, 3, 411, 3, 411, 3, 411, 3, 412, 3, 412, 3, 412, 7, 412, 9637, 10, 412, 12, 412, 14, 412, 9640, 11, 412, 3, 413, 3, 413, 5, 413, 9644, 10, 413, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 7, 414, 9662, 10, 414, 12, 414, 14, 414, 9665, 11, 414, 3, 414, 5, 414, 9668, 10, 414, 3, 414, 3, 414, 5, 414, 9672, 10, 414, 3, 415, 3, 415, 3, 415, 3, 415, 3, 416, 3, 416, 3, 416, 3, 416, 3, 416, 3, 416, 3, 416, 3, 416, 3, 416, 3, 416, 5, 416, 9688, 10, 416, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 5, 417, 9708, 10, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 5, 417, 9766, 10, 417, 3, 417, 3, 417, 5, 417, 9770, 10, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 5, 417, 9818, 10, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 5, 417, 9834, 10, 417, 5, 417, 9836, 10, 417, 3, 418, 3, 418, 3, 418, 3, 418, 3, 418, 5, 418, 9843, 10, 418, 3, 419, 3, 419, 3, 419, 3, 419, 5, 419, 9849, 10, 419, 3, 419, 3, 419, 3, 419, 3, 419, 3, 419, 3, 419, 3, 419, 3, 419, 3, 419, 3, 419, 3, 419, 5, 419, 9862, 10, 419, 3, 419, 3, 419, 3, 419, 3, 419, 3, 419, 3, 419, 3, 419, 3, 419, 3, 419, 3, 419, 3, 419, 3, 419, 3, 419, 5, 419, 9877, 10, 419, 3, 419, 3, 419, 3, 419, 3, 419, 3, 419, 3, 419, 3, 419, 3, 419, 3, 419, 5, 419, 9888, 10, 419, 3, 420, 3, 420, 3, 420, 5, 420, 9893, 10, 420, 3, 420, 3, 420, 3, 420, 3, 420, 3, 420, 3, 420, 3, 420, 3, 420, 5, 420, 9903, 10, 420, 3, 420, 3, 420, 3, 420, 3, 420, 3, 420, 3, 420, 3, 420, 5, 420, 9912, 10, 420, 3, 421, 3, 421, 3, 421, 3, 421, 3, 421, 3, 421, 3, 421, 3, 422, 3, 422, 3, 422, 3, 422, 3, 422, 3, 422, 3, 422, 3, 423, 3, 423, 3, 423, 3, 423, 3, 423, 3, 423, 3, 423, 3, 424, 3, 424, 3, 424, 3, 424, 3, 424, 3, 425, 3, 425, 3, 425, 3, 425, 3, 425, 3, 426, 5, 426, 9946, 10, 426, 3, 426, 3, 426, 3, 427, 5, 427, 9951, 10, 427, 3, 427, 3, 427, 3, 428, 3, 428, 5, 428, 9957, 10, 428, 3, 429, 5, 429, 9960, 10, 429, 3, 429, 3, 429, 3, 429, 5, 429, 9965, 10, 429, 3, 429, 7, 429, 9968, 10, 429, 12, 429, 14, 429, 9971, 11, 429, 3, 429, 3, 429, 3, 430, 3, 430, 3, 430, 3, 430, 5, 430, 9979, 10, 430, 3, 430, 7, 430, 9982, 10, 430, 12, 430, 14, 430, 9985, 11, 430, 3, 430, 3, 430, 3, 431, 5, 431, 9990, 10, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 7, 431, 9997, 10, 431, 12, 431, 14, 431, 10000, 11, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 7, 431, 10007, 10, 431, 12, 431, 14, 431, 10010, 11, 431, 5, 431, 10012, 10, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 7, 431, 10024, 10, 431, 12, 431, 14, 431, 10027, 11, 431, 3, 431, 3, 431, 3, 431, 5, 431, 10032, 10, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 5, 431, 10040, 10, 431, 3, 432, 3, 432, 5, 432, 10044, 10, 432, 3, 433, 3, 433, 3, 433, 3, 433, 7, 433, 10050, 10, 433, 12, 433, 14, 433, 10053, 11, 433, 3, 433, 3, 433, 3, 434, 3, 434, 5, 434, 10059, 10, 434, 3, 435, 3, 435, 3, 435, 3, 435, 3, 435, 3, 435, 3, 435, 3, 435, 3, 435, 7, 435, 10070, 10, 435, 12, 435, 14, 435, 10073, 11, 435, 3, 436, 3, 436, 3, 436, 7, 436, 10078, 10, 436, 12, 436, 14, 436, 10081, 11, 436, 3, 437, 3, 437, 3, 437, 3, 437, 3, 437, 3, 437, 3, 437, 3, 437, 3, 437, 3, 437, 5, 437, 10093, 10, 437, 3, 438, 3, 438, 3, 438, 3, 438, 3, 438, 5, 438, 10100, 10, 438, 3, 438, 3, 438, 3, 438, 3, 438, 5, 438, 10106, 10, 438, 3, 438, 3, 438, 5, 438, 10110, 10, 438, 3, 438, 3, 438, 3, 438, 3, 438, 3, 438, 3, 438, 3, 438, 3, 438, 3, 438, 3, 438, 3, 438, 3, 438, 3, 438, 3, 438, 3, 438, 5, 438, 10127, 10, 438, 3, 439, 3, 439, 3, 439, 3, 439, 3, 439, 3, 439, 3, 439, 3, 439, 3, 439, 3, 439, 3, 439, 3, 439, 3, 439, 5, 439, 10142, 10, 439, 5, 439, 10144, 10, 439, 3, 439, 3, 439, 3, 439, 5, 439, 10149, 10, 439, 3, 440, 5, 440, 10152, 10, 440, 3, 440, 3, 440, 3, 441, 3, 441, 3, 441, 3, 441, 3, 441, 5, 441, 10161, 10, 441, 3, 441, 5, 441, 10164, 10, 441, 3, 441, 5, 441, 10167, 10, 441, 3, 441, 3, 441, 3, 442, 3, 442, 3, 442, 3, 443, 3, 443, 3, 443, 3, 443, 3, 443, 3, 443, 5, 443, 10180, 10, 443, 3, 444, 3, 444, 5, 444, 10184, 10, 444, 3, 445, 3, 445, 3, 445, 3, 445, 3, 445, 3, 445, 5, 445, 10192, 10, 445, 3, 446, 3, 446, 3, 446, 3, 446, 5, 446, 10198, 10, 446, 3, 447, 3, 447, 3, 447, 3, 447, 7, 447, 10204, 10, 447, 12, 447, 14, 447, 10207, 11, 447, 3, 447, 3, 447, 3, 447, 3, 447, 5, 447, 10213, 10, 447, 3, 447, 3, 447, 3, 447, 3, 447, 5, 447, 10219, 10, 447, 3, 447, 3, 447, 3, 447, 3, 447, 3, 447, 3, 447, 3, 447, 3, 447, 3, 447, 3, 447, 3, 447, 3, 447, 3, 447, 5, 447, 10234, 10, 447, 3, 448, 3, 448, 3, 448, 3, 448, 3, 448, 3, 448, 3, 448, 5, 448, 10243, 10, 448, 3, 448, 3, 448, 3, 449, 3, 449, 5, 449, 10249, 10, 449, 3, 450, 3, 450, 3, 450, 3, 450, 5, 450, 10255, 10, 450, 3, 450, 5, 450, 10258, 10, 450, 3, 450, 3, 450, 5, 450, 10262, 10, 450, 3, 450, 3, 450, 3, 450, 7, 450, 10267, 10, 450, 12, 450, 14, 450, 10270, 11, 450, 3, 451, 3, 451, 3, 451, 3, 451, 3, 451, 5, 451, 10277, 10, 451, 3, 451, 5, 451, 10280, 10, 451, 3, 451, 3, 451, 3, 451, 3, 451, 5, 451, 10286, 10, 451, 3, 451, 3, 451, 3, 451, 3, 451, 5, 451, 10292, 10, 451, 5, 451, 10294, 10, 451, 3, 451, 3, 451, 3, 451, 3, 451, 5, 451, 10300, 10, 451, 3, 451, 5, 451, 10303, 10, 451, 5, 451, 10305, 10, 451, 3, 451, 3, 451, 3, 451, 3, 451, 5, 451, 10311, 10, 451, 5, 451, 10313, 10, 451, 3, 451, 3, 451, 3, 452, 3, 452, 3, 452, 3, 452, 3, 452, 3, 452, 3, 452, 3, 452, 3, 452, 3, 452, 5, 452, 10327, 10, 452, 3, 452, 3, 452, 3, 452, 3, 452, 3, 452, 5, 452, 10334, 10, 452, 3, 452, 3, 452, 3, 453, 3, 453, 3, 453, 3, 453, 3, 453, 5, 453, 10343, 10, 453, 3, 454, 3, 454, 3, 454, 3, 454, 3, 454, 5, 454, 10350, 10, 454, 3, 455, 3, 455, 3, 455, 3, 455, 3, 455, 3, 455, 3, 455, 3, 455, 3, 455, 3, 455, 5, 455, 10362, 10, 455, 3, 455, 3, 455, 3, 455, 3, 455, 3, 455, 5, 455, 10369, 10, 455, 3, 455, 3, 455, 3, 456, 3, 456, 3, 456, 5, 456, 10376, 10, 456, 3, 456, 3, 456, 3, 456, 3, 456, 3, 456, 5, 456, 10383, 10, 456, 3, 456, 3, 456, 3, 456, 3, 456, 5, 456, 10389, 10, 456, 3, 456, 3, 456, 3, 456, 3, 456, 3, 456, 5, 456, 10396, 10, 456, 3, 456, 5, 456, 10399, 10, 456, 3, 457, 3, 457, 3, 457, 5, 457, 10404, 10, 457, 3, 457, 3, 457, 3, 458, 3, 458, 3, 458, 5, 458, 10411, 10, 458, 3, 458, 3, 458, 3, 459, 3, 459, 3, 459, 3, 459, 5, 459, 10419, 10, 459, 3, 459, 3, 459, 5, 459, 10423, 10, 459, 3, 459, 5, 459, 10426, 10, 459, 3, 460, 3, 460, 3, 460, 3, 460, 3, 460, 3, 460, 5, 460, 10434, 10, 460, 3, 460, 3, 460, 5, 460, 10438, 10, 460, 3, 460, 5, 460, 10441, 10, 460, 3, 461, 3, 461, 5, 461, 10445, 10, 461, 3, 462, 3, 462, 3, 462, 5, 462, 10450, 10, 462, 3, 462, 3, 462, 3, 462, 3, 462, 5, 462, 10456, 10, 462, 3, 462, 3, 462, 3, 462, 3, 462, 5, 462, 10462, 10, 462, 3, 462, 3, 462, 3, 462, 3, 462, 5, 462, 10468, 10, 462, 3, 462, 3, 462, 3, 462, 3, 462, 5, 462, 10474, 10, 462, 3, 462, 3, 462, 3, 462, 3, 462, 5, 462, 10480, 10, 462, 3, 462, 3, 462, 3, 462, 3, 462, 5, 462, 10486, 10, 462, 3, 462, 3, 462, 3, 462, 3, 462, 5, 462, 10492, 10, 462, 3, 462, 5, 462, 10495, 10, 462, 3, 463, 3, 463, 5, 463, 10499, 10, 463, 3, 463, 3, 463, 3, 463, 5, 463, 10504, 10, 463, 7, 463, 10506, 10, 463, 12, 463, 14, 463, 10509, 11, 463, 3, 464, 3, 464, 3, 464, 7, 464, 10514, 10, 464, 12, 464, 14, 464, 10517, 11, 464, 3, 465, 3, 465, 5, 465, 10521, 10, 465, 3, 466, 3, 466, 3, 467, 3, 467, 3, 468, 5, 468, 10528, 10, 468, 3, 468, 3, 468, 3, 469, 3, 469, 3, 469, 3, 469, 3, 469, 5, 469, 10537, 10, 469, 5, 469, 10539, 10, 469, 3, 470, 3, 470, 3, 470, 3, 470, 3, 470, 5, 470, 10546, 10, 470, 3, 471, 3, 471, 3, 471, 3, 471, 3, 471, 3, 471, 3, 471, 3, 471, 3, 471, 3, 471, 5, 471, 10558, 10, 471, 3, 472, 3, 472, 3, 472, 5, 472, 10563, 10, 472, 3, 472, 3, 472, 3, 472, 3, 472, 3, 472, 3, 472, 3, 472, 3, 472, 3, 472, 5, 472, 10574, 10, 472, 3, 472, 3, 472, 3, 472, 3, 472, 3, 472, 3, 472, 3, 472, 3, 472, 5, 472, 10584, 10, 472, 5, 472, 10586, 10, 472, 3, 472, 3, 472, 3, 472, 3, 472, 5, 472, 10592, 10, 472, 5, 472, 10594, 10, 472, 3, 472, 3, 472, 3, 472, 5, 472, 10599, 10, 472, 5, 472, 10601, 10, 472, 3, 472, 5, 472, 10604, 10, 472, 3, 473, 3, 473, 5, 473, 10608, 10, 473, 3, 474, 3, 474, 5, 474, 10612, 10, 474, 3, 475, 3, 475, 3, 475, 3, 475, 5, 475, 10618, 10, 475, 3, 475, 3, 475, 3, 475, 3, 475, 3, 475, 3, 475, 3, 475, 5, 475, 10627, 10, 475, 3, 475, 5, 475, 10630, 10, 475, 5, 475, 10632, 10, 475, 3, 476, 5, 476, 10635, 10, 476, 3, 476, 3, 476, 3, 476, 3, 476, 5, 476, 10641, 10, 476, 3, 476, 3, 476, 5, 476, 10645, 10, 476, 3, 476, 5, 476, 10648, 10, 476, 3, 477, 3, 477, 3, 477, 3, 477, 3, 477, 3, 477, 3, 477, 5, 477, 10657, 10, 477, 3, 478, 3, 478, 3, 478, 3, 478, 3, 478, 3, 478, 3, 478, 5, 478, 10666, 10, 478, 3, 479, 3, 479, 3, 479, 3, 479, 3, 479, 3, 479, 3, 479, 3, 479, 3, 479, 3, 479, 5, 479, 10678, 10, 479, 3, 479, 5, 479, 10681, 10, 479, 3, 480, 3, 480, 5, 480, 10685, 10, 480, 3, 480, 3, 480, 3, 480, 3, 480, 5, 480, 10691, 10, 480, 3, 480, 5, 480, 10694, 10, 480, 3, 480, 3, 480, 5, 480, 10698, 10, 480, 3, 480, 3, 480, 3, 480, 3, 480, 5, 480, 10704, 10, 480, 3, 481, 3, 481, 3, 481, 5, 481, 10709, 10, 481, 3, 482, 3, 482, 3, 482, 5, 482, 10714, 10, 482, 3, 482, 3, 482, 5, 482, 10718, 10, 482, 3, 482, 3, 482, 5, 482, 10722, 10, 482, 3, 482, 3, 482, 5, 482, 10726, 10, 482, 3, 483, 3, 483, 3, 484, 3, 484, 3, 484, 5, 484, 10733, 10, 484, 3, 485, 3, 485, 3, 486, 3, 486, 3, 486, 3, 486, 3, 486, 3, 486, 3, 486, 3, 486, 3, 486, 3, 486, 3, 486, 3, 486, 3, 486, 3, 486, 3, 486, 5, 486, 10752, 10, 486, 3, 487, 3, 487, 3, 488, 3, 488, 5, 488, 10758, 10, 488, 3, 488, 2, 4, 94, 728, 489, 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, 696, 698, 700, 702, 704, 706, 708, 710, 712, 714, 716, 718, 720, 722, 724, 726, 728, 730, 732, 734, 736, 738, 740, 742, 744, 746, 748, 750, 752, 754, 756, 758, 760, 762, 764, 766, 768, 770, 772, 774, 776, 778, 780, 782, 784, 786, 788, 790, 792, 794, 796, 798, 800, 802, 804, 806, 808, 810, 812, 814, 816, 818, 820, 822, 824, 826, 828, 830, 832, 834, 836, 838, 840, 842, 844, 846, 848, 850, 852, 854, 856, 858, 860, 862, 864, 866, 868, 870, 872, 874, 876, 878, 880, 882, 884, 886, 888, 890, 892, 894, 896, 898, 900, 902, 904, 906, 908, 910, 912, 914, 916, 918, 920, 922, 924, 926, 928, 930, 932, 934, 936, 938, 940, 942, 944, 946, 948, 950, 952, 954, 956, 958, 960, 962, 964, 966, 968, 970, 972, 974, 2, 139, 3, 2, 801, 802, 4, 2, 801, 801, 806, 806, 4, 2, 469, 469, 757, 758, 4, 2, 801, 802, 806, 806, 4, 2, 187, 187, 722, 722, 5, 2, 798, 798, 801, 801, 806, 806, 5, 2, 124, 124, 299, 299, 360, 360, 4, 2, 226, 226, 229, 229, 3, 2, 806, 807, 3, 2, 292, 296, 4, 2, 450, 450, 631, 631, 4, 2, 302, 302, 625, 625, 5, 2, 84, 84, 302, 302, 625, 625, 5, 2, 213, 213, 256, 256, 707, 708, 4, 2, 19, 19, 748, 748, 4, 2, 23, 23, 574, 574, 4, 2, 6, 6, 671, 671, 5, 2, 6, 6, 611, 611, 669, 669, 4, 2, 10, 10, 73, 73, 4, 2, 4, 4, 103, 103, 4, 2, 495, 495, 723, 723, 4, 2, 480, 480, 489, 489, 4, 2, 802, 802, 806, 806, 4, 2, 552, 552, 589, 589, 4, 2, 8, 9, 219, 219, 5, 2, 213, 213, 247, 247, 249, 249, 4, 2, 331, 331, 334, 334, 4, 2, 11, 11, 237, 237, 3, 2, 804, 805, 4, 2, 4, 4, 315, 315, 4, 2, 182, 182, 376, 376, 3, 2, 262, 263, 4, 2, 802, 802, 806, 807, 4, 2, 206, 206, 358, 358, 4, 2, 201, 201, 324, 324, 4, 2, 269, 269, 480, 480, 4, 2, 804, 804, 806, 806, 4, 2, 93, 93, 145, 145, 6, 2, 92, 92, 162, 162, 305, 305, 361, 361, 4, 2, 30, 30, 511, 511, 4, 2, 162, 162, 361, 361, 4, 2, 92, 92, 361, 361, 5, 2, 522, 522, 589, 589, 753, 753, 4, 2, 774, 774, 802, 802, 5, 2, 66, 66, 317, 317, 501, 501, 4, 2, 89, 89, 806, 806, 4, 2, 89, 89, 802, 802, 4, 2, 567, 567, 806, 806, 5, 2, 522, 522, 552, 552, 589, 589, 7, 2, 388, 390, 474, 474, 476, 476, 665, 667, 763, 764, 4, 2, 133, 133, 139, 139, 5, 2, 533, 533, 573, 573, 590, 590, 5, 2, 13, 13, 342, 342, 543, 543, 4, 2, 213, 213, 243, 243, 3, 2, 258, 259, 5, 2, 92, 92, 162, 162, 361, 361, 4, 2, 133, 133, 392, 392, 4, 2, 634, 635, 672, 672, 4, 2, 245, 245, 700, 700, 4, 2, 6, 6, 158, 158, 5, 2, 492, 492, 702, 702, 782, 782, 5, 2, 339, 339, 408, 408, 480, 480, 5, 2, 462, 462, 535, 535, 598, 598, 4, 2, 525, 525, 567, 567, 4, 2, 6, 6, 166, 167, 5, 2, 171, 171, 208, 208, 222, 222, 5, 2, 275, 275, 337, 337, 482, 482, 4, 2, 107, 107, 482, 482, 5, 2, 6, 6, 380, 380, 642, 642, 4, 2, 140, 140, 226, 226, 5, 2, 487, 487, 626, 626, 629, 629, 4, 2, 669, 669, 671, 671, 5, 2, 604, 604, 692, 692, 727, 727, 5, 2, 397, 397, 482, 482, 517, 517, 4, 2, 280, 280, 746, 746, 4, 2, 517, 517, 726, 726, 5, 2, 140, 140, 426, 426, 726, 726, 5, 2, 213, 213, 434, 434, 761, 761, 4, 2, 598, 598, 710, 710, 4, 2, 129, 129, 507, 507, 5, 2, 97, 97, 341, 341, 363, 363, 4, 2, 57, 57, 218, 218, 4, 2, 160, 160, 211, 211, 4, 2, 215, 215, 319, 319, 4, 2, 210, 210, 518, 518, 4, 2, 217, 217, 434, 434, 4, 2, 67, 67, 336, 336, 4, 2, 214, 214, 286, 286, 4, 2, 185, 185, 216, 216, 4, 2, 388, 390, 764, 764, 4, 2, 366, 366, 571, 571, 3, 2, 634, 635, 4, 2, 129, 129, 807, 807, 4, 2, 465, 465, 492, 492, 4, 2, 499, 499, 733, 733, 4, 2, 339, 339, 370, 370, 3, 2, 349, 350, 6, 2, 427, 427, 637, 637, 715, 715, 806, 806, 4, 2, 443, 443, 484, 484, 4, 2, 16, 16, 59, 59, 4, 2, 545, 545, 716, 716, 4, 2, 519, 519, 704, 704, 6, 2, 485, 485, 506, 506, 557, 557, 734, 734, 5, 2, 632, 632, 669, 669, 705, 705, 4, 2, 382, 382, 678, 678, 3, 2, 833, 835, 5, 2, 822, 822, 836, 837, 839, 841, 3, 2, 836, 837, 5, 2, 6, 6, 13, 13, 321, 321, 4, 2, 6, 6, 98, 98, 3, 2, 808, 809, 4, 2, 697, 697, 700, 700, 4, 2, 512, 512, 610, 610, 4, 2, 3, 3, 793, 793, 4, 2, 408, 408, 643, 643, 4, 2, 17, 17, 94, 94, 4, 2, 238, 238, 531, 531, 5, 2, 201, 201, 441, 441, 531, 531, 5, 2, 201, 201, 531, 531, 572, 572, 4, 2, 223, 223, 801, 802, 5, 2, 140, 140, 177, 177, 287, 287, 6, 2, 201, 201, 531, 531, 572, 572, 679, 679, 4, 2, 801, 801, 803, 803, 5, 2, 472, 472, 664, 664, 698, 698, 8, 2, 416, 416, 577, 577, 593, 593, 738, 739, 745, 745, 780, 781, 3, 2, 446, 447, 4, 2, 513, 513, 560, 560, 4, 2, 558, 558, 561, 561, 4, 2, 663, 663, 700, 700, 5, 2, 140, 140, 226, 226, 669, 669, 4, 2, 53, 53, 212, 212, 3, 2, 272, 273, 4, 2, 577, 577, 802, 802, 4, 2, 802, 802, 808, 808, 36, 2, 40, 40, 82, 82, 114, 114, 130, 131, 134, 134, 160, 160, 172, 172, 189, 190, 227, 227, 241, 241, 261, 261, 263, 263, 265, 265, 282, 283, 290, 290, 297, 297, 309, 309, 318, 318, 322, 322, 324, 324, 329, 329, 331, 331, 342, 342, 382, 485, 487, 540, 542, 549, 552, 635, 637, 736, 738, 743, 745, 774, 776, 785, 787, 789, 791, 791, 803, 803, 3, 2, 814, 821, 7, 2, 522, 522, 552, 552, 589, 589, 753, 753, 835, 835, 2, 12518, 2, 979, 3, 2, 2, 2, 4, 1001, 3, 2, 2, 2, 6, 1007, 3, 2, 2, 2, 8, 1018, 3, 2, 2, 2, 10, 1025, 3, 2, 2, 2, 12, 1186, 3, 2, 2, 2, 14, 1193, 3, 2, 2, 2, 16, 1207, 3, 2, 2, 2, 18, 1209, 3, 2, 2, 2, 20, 1220, 3, 2, 2, 2, 22, 1224, 3, 2, 2, 2, 24, 1238, 3, 2, 2, 2, 26, 1240, 3, 2, 2, 2, 28, 1247, 3, 2, 2, 2, 30, 1257, 3, 2, 2, 2, 32, 1269, 3, 2, 2, 2, 34, 1271, 3, 2, 2, 2, 36, 1273, 3, 2, 2, 2, 38, 1275, 3, 2, 2, 2, 40, 1301, 3, 2, 2, 2, 42, 1318, 3, 2, 2, 2, 44, 1331, 3, 2, 2, 2, 46, 1378, 3, 2, 2, 2, 48, 1380, 3, 2, 2, 2, 50, 1398, 3, 2, 2, 2, 52, 1400, 3, 2, 2, 2, 54, 1429, 3, 2, 2, 2, 56, 1450, 3, 2, 2, 2, 58, 1463, 3, 2, 2, 2, 60, 1468, 3, 2, 2, 2, 62, 1472, 3, 2, 2, 2, 64, 1476, 3, 2, 2, 2, 66, 1487, 3, 2, 2, 2, 68, 1492, 3, 2, 2, 2, 70, 1494, 3, 2, 2, 2, 72, 1499, 3, 2, 2, 2, 74, 1501, 3, 2, 2, 2, 76, 1503, 3, 2, 2, 2, 78, 1506, 3, 2, 2, 2, 80, 1510, 3, 2, 2, 2, 82, 1516, 3, 2, 2, 2, 84, 1518, 3, 2, 2, 2, 86, 1521, 3, 2, 2, 2, 88, 1523, 3, 2, 2, 2, 90, 1526, 3, 2, 2, 2, 92, 1531, 3, 2, 2, 2, 94, 1542, 3, 2, 2, 2, 96, 1551, 3, 2, 2, 2, 98, 1555, 3, 2, 2, 2, 100, 1557, 3, 2, 2, 2, 102, 1563, 3, 2, 2, 2, 104, 1565, 3, 2, 2, 2, 106, 1567, 3, 2, 2, 2, 108, 1570, 3, 2, 2, 2, 110, 1578, 3, 2, 2, 2, 112, 1580, 3, 2, 2, 2, 114, 1582, 3, 2, 2, 2, 116, 1604, 3, 2, 2, 2, 118, 1623, 3, 2, 2, 2, 120, 1631, 3, 2, 2, 2, 122, 1635, 3, 2, 2, 2, 124, 1643, 3, 2, 2, 2, 126, 1658, 3, 2, 2, 2, 128, 1660, 3, 2, 2, 2, 130, 1704, 3, 2, 2, 2, 132, 1713, 3, 2, 2, 2, 134, 1726, 3, 2, 2, 2, 136, 1728, 3, 2, 2, 2, 138, 1730, 3, 2, 2, 2, 140, 1733, 3, 2, 2, 2, 142, 1737, 3, 2, 2, 2, 144, 1747, 3, 2, 2, 2, 146, 1757, 3, 2, 2, 2, 148, 1801, 3, 2, 2, 2, 150, 1824, 3, 2, 2, 2, 152, 1826, 3, 2, 2, 2, 154, 1828, 3, 2, 2, 2, 156, 1830, 3, 2, 2, 2, 158, 1835, 3, 2, 2, 2, 160, 1838, 3, 2, 2, 2, 162, 2193, 3, 2, 2, 2, 164, 2195, 3, 2, 2, 2, 166, 2249, 3, 2, 2, 2, 168, 2254, 3, 2, 2, 2, 170, 2298, 3, 2, 2, 2, 172, 2321, 3, 2, 2, 2, 174, 2351, 3, 2, 2, 2, 176, 2355, 3, 2, 2, 2, 178, 2361, 3, 2, 2, 2, 180, 2367, 3, 2, 2, 2, 182, 2371, 3, 2, 2, 2, 184, 2375, 3, 2, 2, 2, 186, 2380, 3, 2, 2, 2, 188, 2394, 3, 2, 2, 2, 190, 2400, 3, 2, 2, 2, 192, 2406, 3, 2, 2, 2, 194, 2422, 3, 2, 2, 2, 196, 2426, 3, 2, 2, 2, 198, 2432, 3, 2, 2, 2, 200, 2438, 3, 2, 2, 2, 202, 2446, 3, 2, 2, 2, 204, 2452, 3, 2, 2, 2, 206, 2467, 3, 2, 2, 2, 208, 2485, 3, 2, 2, 2, 210, 2492, 3, 2, 2, 2, 212, 2497, 3, 2, 2, 2, 214, 2508, 3, 2, 2, 2, 216, 2513, 3, 2, 2, 2, 218, 2517, 3, 2, 2, 2, 220, 2521, 3, 2, 2, 2, 222, 2526, 3, 2, 2, 2, 224, 2531, 3, 2, 2, 2, 226, 2536, 3, 2, 2, 2, 228, 2550, 3, 2, 2, 2, 230, 2556, 3, 2, 2, 2, 232, 2561, 3, 2, 2, 2, 234, 2569, 3, 2, 2, 2, 236, 2573, 3, 2, 2, 2, 238, 2590, 3, 2, 2, 2, 240, 2598, 3, 2, 2, 2, 242, 2604, 3, 2, 2, 2, 244, 2618, 3, 2, 2, 2, 246, 2640, 3, 2, 2, 2, 248, 2645, 3, 2, 2, 2, 250, 2651, 3, 2, 2, 2, 252, 2656, 3, 2, 2, 2, 254, 2660, 3, 2, 2, 2, 256, 2688, 3, 2, 2, 2, 258, 2699, 3, 2, 2, 2, 260, 2708, 3, 2, 2, 2, 262, 2721, 3, 2, 2, 2, 264, 2729, 3, 2, 2, 2, 266, 2734, 3, 2, 2, 2, 268, 2745, 3, 2, 2, 2, 270, 2775, 3, 2, 2, 2, 272, 2805, 3, 2, 2, 2, 274, 2819, 3, 2, 2, 2, 276, 2843, 3, 2, 2, 2, 278, 2859, 3, 2, 2, 2, 280, 2872, 3, 2, 2, 2, 282, 2891, 3, 2, 2, 2, 284, 2904, 3, 2, 2, 2, 286, 2913, 3, 2, 2, 2, 288, 2943, 3, 2, 2, 2, 290, 3186, 3, 2, 2, 2, 292, 3195, 3, 2, 2, 2, 294, 3253, 3, 2, 2, 2, 296, 3302, 3, 2, 2, 2, 298, 3304, 3, 2, 2, 2, 300, 3345, 3, 2, 2, 2, 302, 3395, 3, 2, 2, 2, 304, 3465, 3, 2, 2, 2, 306, 3532, 3, 2, 2, 2, 308, 3548, 3, 2, 2, 2, 310, 3576, 3, 2, 2, 2, 312, 3595, 3, 2, 2, 2, 314, 3616, 3, 2, 2, 2, 316, 3688, 3, 2, 2, 2, 318, 3783, 3, 2, 2, 2, 320, 3805, 3, 2, 2, 2, 322, 3817, 3, 2, 2, 2, 324, 3845, 3, 2, 2, 2, 326, 3866, 3, 2, 2, 2, 328, 3892, 3, 2, 2, 2, 330, 3901, 3, 2, 2, 2, 332, 3933, 3, 2, 2, 2, 334, 3943, 3, 2, 2, 2, 336, 3959, 3, 2, 2, 2, 338, 3971, 3, 2, 2, 2, 340, 3980, 3, 2, 2, 2, 342, 3997, 3, 2, 2, 2, 344, 4021, 3, 2, 2, 2, 346, 4129, 3, 2, 2, 2, 348, 4155, 3, 2, 2, 2, 350, 4167, 3, 2, 2, 2, 352, 4174, 3, 2, 2, 2, 354, 4218, 3, 2, 2, 2, 356, 4229, 3, 2, 2, 2, 358, 4249, 3, 2, 2, 2, 360, 4291, 3, 2, 2, 2, 362, 4298, 3, 2, 2, 2, 364, 4312, 3, 2, 2, 2, 366, 4330, 3, 2, 2, 2, 368, 4400, 3, 2, 2, 2, 370, 4443, 3, 2, 2, 2, 372, 4497, 3, 2, 2, 2, 374, 4634, 3, 2, 2, 2, 376, 4777, 3, 2, 2, 2, 378, 4806, 3, 2, 2, 2, 380, 4835, 3, 2, 2, 2, 382, 4946, 3, 2, 2, 2, 384, 4959, 3, 2, 2, 2, 386, 4967, 3, 2, 2, 2, 388, 4975, 3, 2, 2, 2, 390, 4997, 3, 2, 2, 2, 392, 5027, 3, 2, 2, 2, 394, 5054, 3, 2, 2, 2, 396, 5074, 3, 2, 2, 2, 398, 5122, 3, 2, 2, 2, 400, 5159, 3, 2, 2, 2, 402, 5363, 3, 2, 2, 2, 404, 5393, 3, 2, 2, 2, 406, 5395, 3, 2, 2, 2, 408, 5427, 3, 2, 2, 2, 410, 5474, 3, 2, 2, 2, 412, 5526, 3, 2, 2, 2, 414, 5542, 3, 2, 2, 2, 416, 5556, 3, 2, 2, 2, 418, 5629, 3, 2, 2, 2, 420, 5660, 3, 2, 2, 2, 422, 5662, 3, 2, 2, 2, 424, 5666, 3, 2, 2, 2, 426, 5696, 3, 2, 2, 2, 428, 5698, 3, 2, 2, 2, 430, 5719, 3, 2, 2, 2, 432, 5808, 3, 2, 2, 2, 434, 5810, 3, 2, 2, 2, 436, 5823, 3, 2, 2, 2, 438, 5879, 3, 2, 2, 2, 440, 5882, 3, 2, 2, 2, 442, 5928, 3, 2, 2, 2, 444, 5931, 3, 2, 2, 2, 446, 5964, 3, 2, 2, 2, 448, 5981, 3, 2, 2, 2, 450, 5984, 3, 2, 2, 2, 452, 6043, 3, 2, 2, 2, 454, 6067, 3, 2, 2, 2, 456, 6083, 3, 2, 2, 2, 458, 6085, 3, 2, 2, 2, 460, 6134, 3, 2, 2, 2, 462, 6175, 3, 2, 2, 2, 464, 6219, 3, 2, 2, 2, 466, 6227, 3, 2, 2, 2, 468, 6272, 3, 2, 2, 2, 470, 6274, 3, 2, 2, 2, 472, 6282, 3, 2, 2, 2, 474, 6315, 3, 2, 2, 2, 476, 6323, 3, 2, 2, 2, 478, 6350, 3, 2, 2, 2, 480, 6374, 3, 2, 2, 2, 482, 6406, 3, 2, 2, 2, 484, 6436, 3, 2, 2, 2, 486, 6459, 3, 2, 2, 2, 488, 6473, 3, 2, 2, 2, 490, 6475, 3, 2, 2, 2, 492, 6506, 3, 2, 2, 2, 494, 6520, 3, 2, 2, 2, 496, 6552, 3, 2, 2, 2, 498, 6574, 3, 2, 2, 2, 500, 6604, 3, 2, 2, 2, 502, 6606, 3, 2, 2, 2, 504, 6657, 3, 2, 2, 2, 506, 6703, 3, 2, 2, 2, 508, 6722, 3, 2, 2, 2, 510, 6724, 3, 2, 2, 2, 512, 6749, 3, 2, 2, 2, 514, 6751, 3, 2, 2, 2, 516, 6759, 3, 2, 2, 2, 518, 6761, 3, 2, 2, 2, 520, 6901, 3, 2, 2, 2, 522, 6909, 3, 2, 2, 2, 524, 6911, 3, 2, 2, 2, 526, 6913, 3, 2, 2, 2, 528, 6915, 3, 2, 2, 2, 530, 6929, 3, 2, 2, 2, 532, 6935, 3, 2, 2, 2, 534, 6937, 3, 2, 2, 2, 536, 6939, 3, 2, 2, 2, 538, 6944, 3, 2, 2, 2, 540, 6946, 3, 2, 2, 2, 542, 6950, 3, 2, 2, 2, 544, 6962, 3, 2, 2, 2, 546, 6964, 3, 2, 2, 2, 548, 6967, 3, 2, 2, 2, 550, 6970, 3, 2, 2, 2, 552, 6972, 3, 2, 2, 2, 554, 6974, 3, 2, 2, 2, 556, 6976, 3, 2, 2, 2, 558, 7005, 3, 2, 2, 2, 560, 7007, 3, 2, 2, 2, 562, 7018, 3, 2, 2, 2, 564, 7021, 3, 2, 2, 2, 566, 7030, 3, 2, 2, 2, 568, 7038, 3, 2, 2, 2, 570, 7045, 3, 2, 2, 2, 572, 7068, 3, 2, 2, 2, 574, 7070, 3, 2, 2, 2, 576, 7081, 3, 2, 2, 2, 578, 7083, 3, 2, 2, 2, 580, 7110, 3, 2, 2, 2, 582, 7117, 3, 2, 2, 2, 584, 7123, 3, 2, 2, 2, 586, 7142, 3, 2, 2, 2, 588, 7144, 3, 2, 2, 2, 590, 7161, 3, 2, 2, 2, 592, 7184, 3, 2, 2, 2, 594, 7201, 3, 2, 2, 2, 596, 7218, 3, 2, 2, 2, 598, 7228, 3, 2, 2, 2, 600, 7245, 3, 2, 2, 2, 602, 7262, 3, 2, 2, 2, 604, 7272, 3, 2, 2, 2, 606, 7274, 3, 2, 2, 2, 608, 7281, 3, 2, 2, 2, 610, 7341, 3, 2, 2, 2, 612, 7372, 3, 2, 2, 2, 614, 7374, 3, 2, 2, 2, 616, 7624, 3, 2, 2, 2, 618, 7862, 3, 2, 2, 2, 620, 7902, 3, 2, 2, 2, 622, 7915, 3, 2, 2, 2, 624, 7929, 3, 2, 2, 2, 626, 7937, 3, 2, 2, 2, 628, 7943, 3, 2, 2, 2, 630, 7950, 3, 2, 2, 2, 632, 7954, 3, 2, 2, 2, 634, 7999, 3, 2, 2, 2, 636, 8003, 3, 2, 2, 2, 638, 8016, 3, 2, 2, 2, 640, 8077, 3, 2, 2, 2, 642, 8079, 3, 2, 2, 2, 644, 8116, 3, 2, 2, 2, 646, 8118, 3, 2, 2, 2, 648, 8134, 3, 2, 2, 2, 650, 8147, 3, 2, 2, 2, 652, 8167, 3, 2, 2, 2, 654, 8180, 3, 2, 2, 2, 656, 8217, 3, 2, 2, 2, 658, 8234, 3, 2, 2, 2, 660, 8236, 3, 2, 2, 2, 662, 8249, 3, 2, 2, 2, 664, 8274, 3, 2, 2, 2, 666, 8302, 3, 2, 2, 2, 668, 8343, 3, 2, 2, 2, 670, 8426, 3, 2, 2, 2, 672, 8428, 3, 2, 2, 2, 674, 8432, 3, 2, 2, 2, 676, 8437, 3, 2, 2, 2, 678, 8441, 3, 2, 2, 2, 680, 8446, 3, 2, 2, 2, 682, 8451, 3, 2, 2, 2, 684, 8466, 3, 2, 2, 2, 686, 8471, 3, 2, 2, 2, 688, 8475, 3, 2, 2, 2, 690, 8484, 3, 2, 2, 2, 692, 8489, 3, 2, 2, 2, 694, 8497, 3, 2, 2, 2, 696, 8501, 3, 2, 2, 2, 698, 8514, 3, 2, 2, 2, 700, 8516, 3, 2, 2, 2, 702, 8561, 3, 2, 2, 2, 704, 8571, 3, 2, 2, 2, 706, 8614, 3, 2, 2, 2, 708, 8682, 3, 2, 2, 2, 710, 8693, 3, 2, 2, 2, 712, 8704, 3, 2, 2, 2, 714, 8716, 3, 2, 2, 2, 716, 8723, 3, 2, 2, 2, 718, 8764, 3, 2, 2, 2, 720, 8775, 3, 2, 2, 2, 722, 8777, 3, 2, 2, 2, 724, 8856, 3, 2, 2, 2, 726, 8860, 3, 2, 2, 2, 728, 8870, 3, 2, 2, 2, 730, 8898, 3, 2, 2, 2, 732, 8925, 3, 2, 2, 2, 734, 8931, 3, 2, 2, 2, 736, 8941, 3, 2, 2, 2, 738, 8951, 3, 2, 2, 2, 740, 8953, 3, 2, 2, 2, 742, 8981, 3, 2, 2, 2, 744, 8983, 3, 2, 2, 2, 746, 9011, 3, 2, 2, 2, 748, 9013, 3, 2, 2, 2, 750, 9021, 3, 2, 2, 2, 752, 9029, 3, 2, 2, 2, 754, 9038, 3, 2, 2, 2, 756, 9097, 3, 2, 2, 2, 758, 9104, 3, 2, 2, 2, 760, 9118, 3, 2, 2, 2, 762, 9127, 3, 2, 2, 2, 764, 9166, 3, 2, 2, 2, 766, 9182, 3, 2, 2, 2, 768, 9189, 3, 2, 2, 2, 770, 9191, 3, 2, 2, 2, 772, 9302, 3, 2, 2, 2, 774, 9304, 3, 2, 2, 2, 776, 9315, 3, 2, 2, 2, 778, 9319, 3, 2, 2, 2, 780, 9321, 3, 2, 2, 2, 782, 9378, 3, 2, 2, 2, 784, 9380, 3, 2, 2, 2, 786, 9389, 3, 2, 2, 2, 788, 9397, 3, 2, 2, 2, 790, 9411, 3, 2, 2, 2, 792, 9428, 3, 2, 2, 2, 794, 9450, 3, 2, 2, 2, 796, 9460, 3, 2, 2, 2, 798, 9466, 3, 2, 2, 2, 800, 9468, 3, 2, 2, 2, 802, 9481, 3, 2, 2, 2, 804, 9483, 3, 2, 2, 2, 806, 9539, 3, 2, 2, 2, 808, 9541, 3, 2, 2, 2, 810, 9558, 3, 2, 2, 2, 812, 9566, 3, 2, 2, 2, 814, 9571, 3, 2, 2, 2, 816, 9613, 3, 2, 2, 2, 818, 9615, 3, 2, 2, 2, 820, 9623, 3, 2, 2, 2, 822, 9633, 3, 2, 2, 2, 824, 9641, 3, 2, 2, 2, 826, 9671, 3, 2, 2, 2, 828, 9673, 3, 2, 2, 2, 830, 9687, 3, 2, 2, 2, 832, 9835, 3, 2, 2, 2, 834, 9842, 3, 2, 2, 2, 836, 9887, 3, 2, 2, 2, 838, 9911, 3, 2, 2, 2, 840, 9913, 3, 2, 2, 2, 842, 9920, 3, 2, 2, 2, 844, 9927, 3, 2, 2, 2, 846, 9934, 3, 2, 2, 2, 848, 9939, 3, 2, 2, 2, 850, 9945, 3, 2, 2, 2, 852, 9950, 3, 2, 2, 2, 854, 9954, 3, 2, 2, 2, 856, 9959, 3, 2, 2, 2, 858, 9974, 3, 2, 2, 2, 860, 9989, 3, 2, 2, 2, 862, 10043, 3, 2, 2, 2, 864, 10045, 3, 2, 2, 2, 866, 10058, 3, 2, 2, 2, 868, 10060, 3, 2, 2, 2, 870, 10074, 3, 2, 2, 2, 872, 10092, 3, 2, 2, 2, 874, 10126, 3, 2, 2, 2, 876, 10148, 3, 2, 2, 2, 878, 10151, 3, 2, 2, 2, 880, 10155, 3, 2, 2, 2, 882, 10170, 3, 2, 2, 2, 884, 10179, 3, 2, 2, 2, 886, 10183, 3, 2, 2, 2, 888, 10191, 3, 2, 2, 2, 890, 10197, 3, 2, 2, 2, 892, 10233, 3, 2, 2, 2, 894, 10235, 3, 2, 2, 2, 896, 10248, 3, 2, 2, 2, 898, 10250, 3, 2, 2, 2, 900, 10271, 3, 2, 2, 2, 902, 10333, 3, 2, 2, 2, 904, 10342, 3, 2, 2, 2, 906, 10349, 3, 2, 2, 2, 908, 10368, 3, 2, 2, 2, 910, 10398, 3, 2, 2, 2, 912, 10403, 3, 2, 2, 2, 914, 10410, 3, 2, 2, 2, 916, 10425, 3, 2, 2, 2, 918, 10440, 3, 2, 2, 2, 920, 10444, 3, 2, 2, 2, 922, 10494, 3, 2, 2, 2, 924, 10496, 3, 2, 2, 2, 926, 10510, 3, 2, 2, 2, 928, 10520, 3, 2, 2, 2, 930, 10522, 3, 2, 2, 2, 932, 10524, 3, 2, 2, 2, 934, 10527, 3, 2, 2, 2, 936, 10538, 3, 2, 2, 2, 938, 10545, 3, 2, 2, 2, 940, 10547, 3, 2, 2, 2, 942, 10559, 3, 2, 2, 2, 944, 10607, 3, 2, 2, 2, 946, 10611, 3, 2, 2, 2, 948, 10613, 3, 2, 2, 2, 950, 10634, 3, 2, 2, 2, 952, 10649, 3, 2, 2, 2, 954, 10665, 3, 2, 2, 2, 956, 10667, 3, 2, 2, 2, 958, 10703, 3, 2, 2, 2, 960, 10708, 3, 2, 2, 2, 962, 10725, 3, 2, 2, 2, 964, 10727, 3, 2, 2, 2, 966, 10732, 3, 2, 2, 2, 968, 10734, 3, 2, 2, 2, 970, 10751, 3, 2, 2, 2, 972, 10753, 3, 2, 2, 2, 974, 10755, 3, 2, 2, 2, 976, 978, 5, 4, 3, 2, 977, 976, 3, 2, 2, 2, 978, 981, 3, 2, 2, 2, 979, 977, 3, 2, 2, 2, 979, 980, 3, 2, 2, 2, 980, 982, 3, 2, 2, 2, 981, 979, 3, 2, 2, 2, 982, 983, 7, 2, 2, 3, 983, 3, 3, 2, 2, 2, 984, 988, 5, 634, 318, 2, 985, 987, 5, 672, 337, 2, 986, 985, 3, 2, 2, 2, 987, 990, 3, 2, 2, 2, 988, 986, 3, 2, 2, 2, 988, 989, 3, 2, 2, 2, 989, 1002, 3, 2, 2, 2, 990, 988, 3, 2, 2, 2, 991, 993, 5, 634, 318, 2, 992, 991, 3, 2, 2, 2, 992, 993, 3, 2, 2, 2, 993, 994, 3, 2, 2, 2, 994, 998, 5, 6, 4, 2, 995, 997, 5, 672, 337, 2, 996, 995, 3, 2, 2, 2, 997, 1000, 3, 2, 2, 2, 998, 996, 3, 2, 2, 2, 998, 999, 3, 2, 2, 2, 999, 1002, 3, 2, 2, 2, 1000, 998, 3, 2, 2, 2, 1001, 984, 3, 2, 2, 2, 1001, 992, 3, 2, 2, 2, 1002, 5, 3, 2, 2, 2, 1003, 1005, 5, 8, 5, 2, 1004, 1006, 7, 831, 2, 2, 1005, 1004, 3, 2, 2, 2, 1005, 1006, 3, 2, 2, 2, 1006, 1008, 3, 2, 2, 2, 1007, 1003, 3, 2, 2, 2, 1008, 1009, 3, 2, 2, 2, 1009, 1007, 3, 2, 2, 2, 1009, 1010, 3, 2, 2, 2, 1010, 7, 3, 2, 2, 2, 1011, 1019, 5, 10, 6, 2, 1012, 1019, 5, 12, 7, 2, 1013, 1019, 5, 16, 9, 2, 1014, 1019, 5, 682, 342, 2, 1015, 1019, 5, 48, 25, 2, 1016, 1019, 5, 50, 26, 2, 1017, 1019, 5, 14, 8, 2, 1018, 1011, 3, 2, 2, 2, 1018, 1012, 3, 2, 2, 2, 1018, 1013, 3, 2, 2, 2, 1018, 1014, 3, 2, 2, 2, 1018, 1015, 3, 2, 2, 2, 1018, 1016, 3, 2, 2, 2, 1018, 1017, 3, 2, 2, 2, 1019, 9, 3, 2, 2, 2, 1020, 1026, 5, 430, 216, 2, 1021, 1026, 5, 436, 219, 2, 1022, 1026, 5, 440, 221, 2, 1023, 1026, 5, 446, 224, 2, 1024, 1026, 5, 450, 226, 2, 1025, 1020, 3, 2, 2, 2, 1025, 1021, 3, 2, 2, 2, 1025, 1022, 3, 2, 2, 2, 1025, 1023, 3, 2, 2, 2, 1025, 1024, 3, 2, 2, 2, 1026, 11, 3, 2, 2, 2, 1027, 1187, 5, 52, 27, 2, 1028, 1187, 5, 60, 31, 2, 1029, 1187, 5, 118, 60, 2, 1030, 1187, 5, 132, 67, 2, 1031, 1187, 5, 144, 73, 2, 1032, 1187, 5, 146, 74, 2, 1033, 1187, 5, 142, 72, 2, 1034, 1187, 5, 158, 80, 2, 1035, 1187, 5, 168, 85, 2, 1036, 1187, 5, 170, 86, 2, 1037, 1187, 5, 278, 140, 2, 1038, 1187, 5, 282, 142, 2, 1039, 1187, 5, 504, 253, 2, 1040, 1187, 5, 348, 175, 2, 1041, 1187, 5, 518, 260, 2, 1042, 1187, 5, 288, 145, 2, 1043, 1187, 5, 296, 149, 2, 1044, 1187, 5, 298, 150, 2, 1045, 1187, 5, 302, 152, 2, 1046, 1187, 5, 306, 154, 2, 1047, 1187, 5, 310, 156, 2, 1048, 1187, 5, 318, 160, 2, 1049, 1187, 5, 322, 162, 2, 1050, 1187, 5, 314, 158, 2, 1051, 1187, 5, 330, 166, 2, 1052, 1187, 5, 326, 164, 2, 1053, 1187, 5, 334, 168, 2, 1054, 1187, 5, 336, 169, 2, 1055, 1187, 5, 338, 170, 2, 1056, 1187, 5, 340, 171, 2, 1057, 1187, 5, 346, 174, 2, 1058, 1187, 5, 362, 182, 2, 1059, 1187, 5, 356, 179, 2, 1060, 1187, 5, 368, 185, 2, 1061, 1187, 5, 372, 187, 2, 1062, 1187, 5, 376, 189, 2, 1063, 1187, 5, 380, 191, 2, 1064, 1187, 5, 382, 192, 2, 1065, 1187, 5, 386, 194, 2, 1066, 1187, 5, 388, 195, 2, 1067, 1187, 5, 392, 197, 2, 1068, 1187, 5, 394, 198, 2, 1069, 1187, 5, 502, 252, 2, 1070, 1187, 5, 400, 201, 2, 1071, 1187, 5, 406, 204, 2, 1072, 1187, 5, 408, 205, 2, 1073, 1187, 5, 54, 28, 2, 1074, 1187, 5, 114, 58, 2, 1075, 1187, 5, 128, 65, 2, 1076, 1187, 5, 172, 87, 2, 1077, 1187, 5, 276, 139, 2, 1078, 1187, 5, 280, 141, 2, 1079, 1187, 5, 284, 143, 2, 1080, 1187, 5, 458, 230, 2, 1081, 1187, 5, 350, 176, 2, 1082, 1187, 5, 286, 144, 2, 1083, 1187, 5, 300, 151, 2, 1084, 1187, 5, 304, 153, 2, 1085, 1187, 5, 308, 155, 2, 1086, 1187, 5, 312, 157, 2, 1087, 1187, 5, 460, 231, 2, 1088, 1187, 5, 320, 161, 2, 1089, 1187, 5, 324, 163, 2, 1090, 1187, 5, 316, 159, 2, 1091, 1187, 5, 332, 167, 2, 1092, 1187, 5, 328, 165, 2, 1093, 1187, 5, 164, 83, 2, 1094, 1187, 5, 476, 239, 2, 1095, 1187, 5, 462, 232, 2, 1096, 1187, 5, 464, 233, 2, 1097, 1187, 5, 342, 172, 2, 1098, 1187, 5, 344, 173, 2, 1099, 1187, 5, 352, 177, 2, 1100, 1187, 5, 354, 178, 2, 1101, 1187, 5, 358, 180, 2, 1102, 1187, 5, 360, 181, 2, 1103, 1187, 5, 364, 183, 2, 1104, 1187, 5, 366, 184, 2, 1105, 1187, 5, 370, 186, 2, 1106, 1187, 5, 374, 188, 2, 1107, 1187, 5, 378, 190, 2, 1108, 1187, 5, 384, 193, 2, 1109, 1187, 5, 390, 196, 2, 1110, 1187, 5, 490, 246, 2, 1111, 1187, 5, 396, 199, 2, 1112, 1187, 5, 398, 200, 2, 1113, 1187, 5, 494, 248, 2, 1114, 1187, 5, 600, 301, 2, 1115, 1187, 5, 402, 202, 2, 1116, 1187, 5, 404, 203, 2, 1117, 1187, 5, 498, 250, 2, 1118, 1187, 5, 410, 206, 2, 1119, 1187, 5, 412, 207, 2, 1120, 1187, 5, 56, 29, 2, 1121, 1187, 5, 58, 30, 2, 1122, 1187, 5, 116, 59, 2, 1123, 1187, 5, 130, 66, 2, 1124, 1187, 5, 156, 79, 2, 1125, 1187, 5, 166, 84, 2, 1126, 1187, 5, 174, 88, 2, 1127, 1187, 5, 176, 89, 2, 1128, 1187, 5, 178, 90, 2, 1129, 1187, 5, 180, 91, 2, 1130, 1187, 5, 182, 92, 2, 1131, 1187, 5, 184, 93, 2, 1132, 1187, 5, 186, 94, 2, 1133, 1187, 5, 188, 95, 2, 1134, 1187, 5, 190, 96, 2, 1135, 1187, 5, 232, 117, 2, 1136, 1187, 5, 192, 97, 2, 1137, 1187, 5, 194, 98, 2, 1138, 1187, 5, 206, 104, 2, 1139, 1187, 5, 208, 105, 2, 1140, 1187, 5, 196, 99, 2, 1141, 1187, 5, 198, 100, 2, 1142, 1187, 5, 200, 101, 2, 1143, 1187, 5, 202, 102, 2, 1144, 1187, 5, 204, 103, 2, 1145, 1187, 5, 210, 106, 2, 1146, 1187, 5, 212, 107, 2, 1147, 1187, 5, 214, 108, 2, 1148, 1187, 5, 592, 297, 2, 1149, 1187, 5, 578, 290, 2, 1150, 1187, 5, 216, 109, 2, 1151, 1187, 5, 218, 110, 2, 1152, 1187, 5, 220, 111, 2, 1153, 1187, 5, 222, 112, 2, 1154, 1187, 5, 224, 113, 2, 1155, 1187, 5, 584, 293, 2, 1156, 1187, 5, 226, 114, 2, 1157, 1187, 5, 228, 115, 2, 1158, 1187, 5, 230, 116, 2, 1159, 1187, 5, 234, 118, 2, 1160, 1187, 5, 236, 119, 2, 1161, 1187, 5, 238, 120, 2, 1162, 1187, 5, 240, 121, 2, 1163, 1187, 5, 242, 122, 2, 1164, 1187, 5, 244, 123, 2, 1165, 1187, 5, 246, 124, 2, 1166, 1187, 5, 248, 125, 2, 1167, 1187, 5, 250, 126, 2, 1168, 1187, 5, 252, 127, 2, 1169, 1187, 5, 254, 128, 2, 1170, 1187, 5, 594, 298, 2, 1171, 1187, 5, 256, 129, 2, 1172, 1187, 5, 258, 130, 2, 1173, 1187, 5, 260, 131, 2, 1174, 1187, 5, 596, 299, 2, 1175, 1187, 5, 586, 294, 2, 1176, 1187, 5, 602, 302, 2, 1177, 1187, 5, 262, 132, 2, 1178, 1187, 5, 598, 300, 2, 1179, 1187, 5, 264, 133, 2, 1180, 1187, 5, 266, 134, 2, 1181, 1187, 5, 268, 135, 2, 1182, 1187, 5, 270, 136, 2, 1183, 1187, 5, 272, 137, 2, 1184, 1187, 5, 274, 138, 2, 1185, 1187, 5, 492, 247, 2, 1186, 1027, 3, 2, 2, 2, 1186, 1028, 3, 2, 2, 2, 1186, 1029, 3, 2, 2, 2, 1186, 1030, 3, 2, 2, 2, 1186, 1031, 3, 2, 2, 2, 1186, 1032, 3, 2, 2, 2, 1186, 1033, 3, 2, 2, 2, 1186, 1034, 3, 2, 2, 2, 1186, 1035, 3, 2, 2, 2, 1186, 1036, 3, 2, 2, 2, 1186, 1037, 3, 2, 2, 2, 1186, 1038, 3, 2, 2, 2, 1186, 1039, 3, 2, 2, 2, 1186, 1040, 3, 2, 2, 2, 1186, 1041, 3, 2, 2, 2, 1186, 1042, 3, 2, 2, 2, 1186, 1043, 3, 2, 2, 2, 1186, 1044, 3, 2, 2, 2, 1186, 1045, 3, 2, 2, 2, 1186, 1046, 3, 2, 2, 2, 1186, 1047, 3, 2, 2, 2, 1186, 1048, 3, 2, 2, 2, 1186, 1049, 3, 2, 2, 2, 1186, 1050, 3, 2, 2, 2, 1186, 1051, 3, 2, 2, 2, 1186, 1052, 3, 2, 2, 2, 1186, 1053, 3, 2, 2, 2, 1186, 1054, 3, 2, 2, 2, 1186, 1055, 3, 2, 2, 2, 1186, 1056, 3, 2, 2, 2, 1186, 1057, 3, 2, 2, 2, 1186, 1058, 3, 2, 2, 2, 1186, 1059, 3, 2, 2, 2, 1186, 1060, 3, 2, 2, 2, 1186, 1061, 3, 2, 2, 2, 1186, 1062, 3, 2, 2, 2, 1186, 1063, 3, 2, 2, 2, 1186, 1064, 3, 2, 2, 2, 1186, 1065, 3, 2, 2, 2, 1186, 1066, 3, 2, 2, 2, 1186, 1067, 3, 2, 2, 2, 1186, 1068, 3, 2, 2, 2, 1186, 1069, 3, 2, 2, 2, 1186, 1070, 3, 2, 2, 2, 1186, 1071, 3, 2, 2, 2, 1186, 1072, 3, 2, 2, 2, 1186, 1073, 3, 2, 2, 2, 1186, 1074, 3, 2, 2, 2, 1186, 1075, 3, 2, 2, 2, 1186, 1076, 3, 2, 2, 2, 1186, 1077, 3, 2, 2, 2, 1186, 1078, 3, 2, 2, 2, 1186, 1079, 3, 2, 2, 2, 1186, 1080, 3, 2, 2, 2, 1186, 1081, 3, 2, 2, 2, 1186, 1082, 3, 2, 2, 2, 1186, 1083, 3, 2, 2, 2, 1186, 1084, 3, 2, 2, 2, 1186, 1085, 3, 2, 2, 2, 1186, 1086, 3, 2, 2, 2, 1186, 1087, 3, 2, 2, 2, 1186, 1088, 3, 2, 2, 2, 1186, 1089, 3, 2, 2, 2, 1186, 1090, 3, 2, 2, 2, 1186, 1091, 3, 2, 2, 2, 1186, 1092, 3, 2, 2, 2, 1186, 1093, 3, 2, 2, 2, 1186, 1094, 3, 2, 2, 2, 1186, 1095, 3, 2, 2, 2, 1186, 1096, 3, 2, 2, 2, 1186, 1097, 3, 2, 2, 2, 1186, 1098, 3, 2, 2, 2, 1186, 1099, 3, 2, 2, 2, 1186, 1100, 3, 2, 2, 2, 1186, 1101, 3, 2, 2, 2, 1186, 1102, 3, 2, 2, 2, 1186, 1103, 3, 2, 2, 2, 1186, 1104, 3, 2, 2, 2, 1186, 1105, 3, 2, 2, 2, 1186, 1106, 3, 2, 2, 2, 1186, 1107, 3, 2, 2, 2, 1186, 1108, 3, 2, 2, 2, 1186, 1109, 3, 2, 2, 2, 1186, 1110, 3, 2, 2, 2, 1186, 1111, 3, 2, 2, 2, 1186, 1112, 3, 2, 2, 2, 1186, 1113, 3, 2, 2, 2, 1186, 1114, 3, 2, 2, 2, 1186, 1115, 3, 2, 2, 2, 1186, 1116, 3, 2, 2, 2, 1186, 1117, 3, 2, 2, 2, 1186, 1118, 3, 2, 2, 2, 1186, 1119, 3, 2, 2, 2, 1186, 1120, 3, 2, 2, 2, 1186, 1121, 3, 2, 2, 2, 1186, 1122, 3, 2, 2, 2, 1186, 1123, 3, 2, 2, 2, 1186, 1124, 3, 2, 2, 2, 1186, 1125, 3, 2, 2, 2, 1186, 1126, 3, 2, 2, 2, 1186, 1127, 3, 2, 2, 2, 1186, 1128, 3, 2, 2, 2, 1186, 1129, 3, 2, 2, 2, 1186, 1130, 3, 2, 2, 2, 1186, 1131, 3, 2, 2, 2, 1186, 1132, 3, 2, 2, 2, 1186, 1133, 3, 2, 2, 2, 1186, 1134, 3, 2, 2, 2, 1186, 1135, 3, 2, 2, 2, 1186, 1136, 3, 2, 2, 2, 1186, 1137, 3, 2, 2, 2, 1186, 1138, 3, 2, 2, 2, 1186, 1139, 3, 2, 2, 2, 1186, 1140, 3, 2, 2, 2, 1186, 1141, 3, 2, 2, 2, 1186, 1142, 3, 2, 2, 2, 1186, 1143, 3, 2, 2, 2, 1186, 1144, 3, 2, 2, 2, 1186, 1145, 3, 2, 2, 2, 1186, 1146, 3, 2, 2, 2, 1186, 1147, 3, 2, 2, 2, 1186, 1148, 3, 2, 2, 2, 1186, 1149, 3, 2, 2, 2, 1186, 1150, 3, 2, 2, 2, 1186, 1151, 3, 2, 2, 2, 1186, 1152, 3, 2, 2, 2, 1186, 1153, 3, 2, 2, 2, 1186, 1154, 3, 2, 2, 2, 1186, 1155, 3, 2, 2, 2, 1186, 1156, 3, 2, 2, 2, 1186, 1157, 3, 2, 2, 2, 1186, 1158, 3, 2, 2, 2, 1186, 1159, 3, 2, 2, 2, 1186, 1160, 3, 2, 2, 2, 1186, 1161, 3, 2, 2, 2, 1186, 1162, 3, 2, 2, 2, 1186, 1163, 3, 2, 2, 2, 1186, 1164, 3, 2, 2, 2, 1186, 1165, 3, 2, 2, 2, 1186, 1166, 3, 2, 2, 2, 1186, 1167, 3, 2, 2, 2, 1186, 1168, 3, 2, 2, 2, 1186, 1169, 3, 2, 2, 2, 1186, 1170, 3, 2, 2, 2, 1186, 1171, 3, 2, 2, 2, 1186, 1172, 3, 2, 2, 2, 1186, 1173, 3, 2, 2, 2, 1186, 1174, 3, 2, 2, 2, 1186, 1175, 3, 2, 2, 2, 1186, 1176, 3, 2, 2, 2, 1186, 1177, 3, 2, 2, 2, 1186, 1178, 3, 2, 2, 2, 1186, 1179, 3, 2, 2, 2, 1186, 1180, 3, 2, 2, 2, 1186, 1181, 3, 2, 2, 2, 1186, 1182, 3, 2, 2, 2, 1186, 1183, 3, 2, 2, 2, 1186, 1184, 3, 2, 2, 2, 1186, 1185, 3, 2, 2, 2, 1187, 13, 3, 2, 2, 2, 1188, 1194, 5, 614, 308, 2, 1189, 1194, 5, 616, 309, 2, 1190, 1194, 5, 618, 310, 2, 1191, 1194, 5, 620, 311, 2, 1192, 1194, 5, 622, 312, 2, 1193, 1188, 3, 2, 2, 2, 1193, 1189, 3, 2, 2, 2, 1193, 1190, 3, 2, 2, 2, 1193, 1191, 3, 2, 2, 2, 1193, 1192, 3, 2, 2, 2, 1194, 15, 3, 2, 2, 2, 1195, 1208, 5, 18, 10, 2, 1196, 1208, 5, 20, 11, 2, 1197, 1208, 5, 22, 12, 2, 1198, 1208, 5, 24, 13, 2, 1199, 1208, 5, 28, 15, 2, 1200, 1208, 5, 26, 14, 2, 1201, 1208, 5, 30, 16, 2, 1202, 1208, 5, 38, 20, 2, 1203, 1208, 5, 40, 21, 2, 1204, 1208, 5, 42, 22, 2, 1205, 1208, 5, 44, 23, 2, 1206, 1208, 5, 46, 24, 2, 1207, 1195, 3, 2, 2, 2, 1207, 1196, 3, 2, 2, 2, 1207, 1197, 3, 2, 2, 2, 1207, 1198, 3, 2, 2, 2, 1207, 1199, 3, 2, 2, 2, 1207, 1200, 3, 2, 2, 2, 1207, 1201, 3, 2, 2, 2, 1207, 1202, 3, 2, 2, 2, 1207, 1203, 3, 2, 2, 2, 1207, 1204, 3, 2, 2, 2, 1207, 1205, 3, 2, 2, 2, 1207, 1206, 3, 2, 2, 2, 1208, 17, 3, 2, 2, 2, 1209, 1211, 7, 28, 2, 2, 1210, 1212, 7, 831, 2, 2, 1211, 1210, 3, 2, 2, 2, 1211, 1212, 3, 2, 2, 2, 1212, 1214, 3, 2, 2, 2, 1213, 1215, 5, 6, 4, 2, 1214, 1213, 3, 2, 2, 2, 1214, 1215, 3, 2, 2, 2, 1215, 1216, 3, 2, 2, 2, 1216, 1218, 7, 108, 2, 2, 1217, 1219, 7, 831, 2, 2, 1218, 1217, 3, 2, 2, 2, 1218, 1219, 3, 2, 2, 2, 1219, 19, 3, 2, 2, 2, 1220, 1222, 7, 33, 2, 2, 1221, 1223, 7, 831, 2, 2, 1222, 1221, 3, 2, 2, 2, 1222, 1223, 3, 2, 2, 2, 1223, 21, 3, 2, 2, 2, 1224, 1226, 7, 66, 2, 2, 1225, 1227, 7, 831, 2, 2, 1226, 1225, 3, 2, 2, 2, 1226, 1227, 3, 2, 2, 2, 1227, 23, 3, 2, 2, 2, 1228, 1229, 7, 143, 2, 2, 1229, 1231, 5, 966, 484, 2, 1230, 1232, 7, 831, 2, 2, 1231, 1230, 3, 2, 2, 2, 1231, 1232, 3, 2, 2, 2, 1232, 1239, 3, 2, 2, 2, 1233, 1234, 5, 966, 484, 2, 1234, 1236, 7, 832, 2, 2, 1235, 1237, 7, 831, 2, 2, 1236, 1235, 3, 2, 2, 2, 1236, 1237, 3, 2, 2, 2, 1237, 1239, 3, 2, 2, 2, 1238, 1228, 3, 2, 2, 2, 1238, 1233, 3, 2, 2, 2, 1239, 25, 3, 2, 2, 2, 1240, 1242, 7, 282, 2, 2, 1241, 1243, 5, 728, 365, 2, 1242, 1241, 3, 2, 2, 2, 1242, 1243, 3, 2, 2, 2, 1243, 1245, 3, 2, 2, 2, 1244, 1246, 7, 831, 2, 2, 1245, 1244, 3, 2, 2, 2, 1245, 1246, 3, 2, 2, 2, 1246, 27, 3, 2, 2, 2, 1247, 1248, 7, 153, 2, 2, 1248, 1249, 5, 750, 376, 2, 1249, 1252, 5, 8, 5, 2, 1250, 1251, 7, 106, 2, 2, 1251, 1253, 5, 8, 5, 2, 1252, 1250, 3, 2, 2, 2, 1252, 1253, 3, 2, 2, 2, 1253, 1255, 3, 2, 2, 2, 1254, 1256, 7, 831, 2, 2, 1255, 1254, 3, 2, 2, 2, 1255, 1256, 3, 2, 2, 2, 1256, 29, 3, 2, 2, 2, 1257, 1264, 7, 755, 2, 2, 1258, 1259, 5, 32, 17, 2, 1259, 1260, 7, 830, 2, 2, 1260, 1261, 5, 34, 18, 2, 1261, 1262, 7, 830, 2, 2, 1262, 1263, 5, 36, 19, 2, 1263, 1265, 3, 2, 2, 2, 1264, 1258, 3, 2, 2, 2, 1264, 1265, 3, 2, 2, 2, 1265, 1267, 3, 2, 2, 2, 1266, 1268, 7, 831, 2, 2, 1267, 1266, 3, 2, 2, 2, 1267, 1268, 3, 2, 2, 2, 1268, 31, 3, 2, 2, 2, 1269, 1270, 9, 2, 2, 2, 1270, 33, 3, 2, 2, 2, 1271, 1272, 9, 3, 2, 2, 1272, 35, 3, 2, 2, 2, 1273, 1274, 9, 2, 2, 2, 1274, 37, 3, 2, 2, 2, 1275, 1276, 7, 28, 2, 2, 1276, 1278, 7, 766, 2, 2, 1277, 1279, 7, 831, 2, 2, 1278, 1277, 3, 2, 2, 2, 1278, 1279, 3, 2, 2, 2, 1279, 1281, 3, 2, 2, 2, 1280, 1282, 5, 6, 4, 2, 1281, 1280, 3, 2, 2, 2, 1281, 1282, 3, 2, 2, 2, 1282, 1283, 3, 2, 2, 2, 1283, 1284, 7, 108, 2, 2, 1284, 1286, 7, 766, 2, 2, 1285, 1287, 7, 831, 2, 2, 1286, 1285, 3, 2, 2, 2, 1286, 1287, 3, 2, 2, 2, 1287, 1288, 3, 2, 2, 2, 1288, 1289, 7, 28, 2, 2, 1289, 1291, 7, 431, 2, 2, 1290, 1292, 7, 831, 2, 2, 1291, 1290, 3, 2, 2, 2, 1291, 1292, 3, 2, 2, 2, 1292, 1294, 3, 2, 2, 2, 1293, 1295, 5, 6, 4, 2, 1294, 1293, 3, 2, 2, 2, 1294, 1295, 3, 2, 2, 2, 1295, 1296, 3, 2, 2, 2, 1296, 1297, 7, 108, 2, 2, 1297, 1299, 7, 431, 2, 2, 1298, 1300, 7, 831, 2, 2, 1299, 1298, 3, 2, 2, 2, 1299, 1300, 3, 2, 2, 2, 1300, 39, 3, 2, 2, 2, 1301, 1303, 7, 372, 2, 2, 1302, 1304, 5, 444, 223, 2, 1303, 1302, 3, 2, 2, 2, 1303, 1304, 3, 2, 2, 2, 1304, 1306, 3, 2, 2, 2, 1305, 1307, 7, 830, 2, 2, 1306, 1305, 3, 2, 2, 2, 1306, 1307, 3, 2, 2, 2, 1307, 1310, 3, 2, 2, 2, 1308, 1309, 9, 4, 2, 2, 1309, 1311, 5, 448, 225, 2, 1310, 1308, 3, 2, 2, 2, 1310, 1311, 3, 2, 2, 2, 1311, 1313, 3, 2, 2, 2, 1312, 1314, 5, 728, 365, 2, 1313, 1312, 3, 2, 2, 2, 1313, 1314, 3, 2, 2, 2, 1314, 1316, 3, 2, 2, 2, 1315, 1317, 7, 831, 2, 2, 1316, 1315, 3, 2, 2, 2, 1316, 1317, 3, 2, 2, 2, 1317, 41, 3, 2, 2, 2, 1318, 1319, 7, 375, 2, 2, 1319, 1329, 5, 750, 376, 2, 1320, 1330, 5, 8, 5, 2, 1321, 1323, 7, 33, 2, 2, 1322, 1324, 7, 831, 2, 2, 1323, 1322, 3, 2, 2, 2, 1323, 1324, 3, 2, 2, 2, 1324, 1330, 3, 2, 2, 2, 1325, 1327, 7, 66, 2, 2, 1326, 1328, 7, 831, 2, 2, 1327, 1326, 3, 2, 2, 2, 1327, 1328, 3, 2, 2, 2, 1328, 1330, 3, 2, 2, 2, 1329, 1320, 3, 2, 2, 2, 1329, 1321, 3, 2, 2, 2, 1329, 1325, 3, 2, 2, 2, 1330, 43, 3, 2, 2, 2, 1331, 1334, 7, 257, 2, 2, 1332, 1335, 5, 728, 365, 2, 1333, 1335, 7, 798, 2, 2, 1334, 1332, 3, 2, 2, 2, 1334, 1333, 3, 2, 2, 2, 1335, 1340, 3, 2, 2, 2, 1336, 1337, 7, 830, 2, 2, 1337, 1339, 7, 801, 2, 2, 1338, 1336, 3, 2, 2, 2, 1339, 1342, 3, 2, 2, 2, 1340, 1338, 3, 2, 2, 2, 1340, 1341, 3, 2, 2, 2, 1341, 1344, 3, 2, 2, 2, 1342, 1340, 3, 2, 2, 2, 1343, 1345, 7, 831, 2, 2, 1344, 1343, 3, 2, 2, 2, 1344, 1345, 3, 2, 2, 2, 1345, 45, 3, 2, 2, 2, 1346, 1347, 7, 264, 2, 2, 1347, 1348, 7, 828, 2, 2, 1348, 1349, 9, 5, 2, 2, 1349, 1350, 7, 830, 2, 2, 1350, 1351, 5, 726, 364, 2, 1351, 1352, 7, 830, 2, 2, 1352, 1357, 5, 726, 364, 2, 1353, 1354, 7, 830, 2, 2, 1354, 1356, 5, 726, 364, 2, 1355, 1353, 3, 2, 2, 2, 1356, 1359, 3, 2, 2, 2, 1357, 1355, 3, 2, 2, 2, 1357, 1358, 3, 2, 2, 2, 1358, 1360, 3, 2, 2, 2, 1359, 1357, 3, 2, 2, 2, 1360, 1363, 7, 829, 2, 2, 1361, 1362, 7, 377, 2, 2, 1362, 1364, 9, 6, 2, 2, 1363, 1361, 3, 2, 2, 2, 1363, 1364, 3, 2, 2, 2, 1364, 1366, 3, 2, 2, 2, 1365, 1367, 7, 831, 2, 2, 1366, 1365, 3, 2, 2, 2, 1366, 1367, 3, 2, 2, 2, 1367, 1379, 3, 2, 2, 2, 1368, 1369, 7, 264, 2, 2, 1369, 1370, 7, 802, 2, 2, 1370, 1375, 9, 7, 2, 2, 1371, 1372, 7, 830, 2, 2, 1372, 1374, 9, 5, 2, 2, 1373, 1371, 3, 2, 2, 2, 1374, 1377, 3, 2, 2, 2, 1375, 1373, 3, 2, 2, 2, 1375, 1376, 3, 2, 2, 2, 1376, 1379, 3, 2, 2, 2, 1377, 1375, 3, 2, 2, 2, 1378, 1346, 3, 2, 2, 2, 1378, 1368, 3, 2, 2, 2, 1379, 47, 3, 2, 2, 2, 1380, 1381, 7, 831, 2, 2, 1381, 49, 3, 2, 2, 2, 1382, 1399, 5, 610, 306, 2, 1383, 1399, 5, 612, 307, 2, 1384, 1399, 5, 426, 214, 2, 1385, 1399, 5, 424, 213, 2, 1386, 1399, 5, 414, 208, 2, 1387, 1399, 5, 418, 210, 2, 1388, 1399, 5, 632, 317, 2, 1389, 1399, 5, 624, 313, 2, 1390, 1399, 5, 428, 215, 2, 1391, 1399, 5, 640, 321, 2, 1392, 1399, 5, 668, 335, 2, 1393, 1399, 5, 670, 336, 2, 1394, 1399, 5, 674, 338, 2, 1395, 1399, 5, 676, 339, 2, 1396, 1399, 5, 678, 340, 2, 1397, 1399, 5, 680, 341, 2, 1398, 1382, 3, 2, 2, 2, 1398, 1383, 3, 2, 2, 2, 1398, 1384, 3, 2, 2, 2, 1398, 1385, 3, 2, 2, 2, 1398, 1386, 3, 2, 2, 2, 1398, 1387, 3, 2, 2, 2, 1398, 1388, 3, 2, 2, 2, 1398, 1389, 3, 2, 2, 2, 1398, 1390, 3, 2, 2, 2, 1398, 1391, 3, 2, 2, 2, 1398, 1392, 3, 2, 2, 2, 1398, 1393, 3, 2, 2, 2, 1398, 1394, 3, 2, 2, 2, 1398, 1395, 3, 2, 2, 2, 1398, 1396, 3, 2, 2, 2, 1398, 1397, 3, 2, 2, 2, 1399, 51, 3, 2, 2, 2, 1400, 1401, 7, 10, 2, 2, 1401, 1402, 7, 15, 2, 2, 1402, 1403, 7, 289, 2, 2, 1403, 1404, 5, 966, 484, 2, 1404, 1411, 7, 377, 2, 2, 1405, 1407, 7, 830, 2, 2, 1406, 1405, 3, 2, 2, 2, 1406, 1407, 3, 2, 2, 2, 1407, 1408, 3, 2, 2, 2, 1408, 1409, 7, 605, 2, 2, 1409, 1410, 7, 810, 2, 2, 1410, 1412, 5, 966, 484, 2, 1411, 1406, 3, 2, 2, 2, 1411, 1412, 3, 2, 2, 2, 1412, 1419, 3, 2, 2, 2, 1413, 1415, 7, 830, 2, 2, 1414, 1413, 3, 2, 2, 2, 1414, 1415, 3, 2, 2, 2, 1415, 1416, 3, 2, 2, 2, 1416, 1417, 7, 244, 2, 2, 1417, 1418, 7, 810, 2, 2, 1418, 1420, 7, 806, 2, 2, 1419, 1414, 3, 2, 2, 2, 1419, 1420, 3, 2, 2, 2, 1420, 1427, 3, 2, 2, 2, 1421, 1423, 7, 830, 2, 2, 1422, 1421, 3, 2, 2, 2, 1422, 1423, 3, 2, 2, 2, 1423, 1424, 3, 2, 2, 2, 1424, 1425, 7, 91, 2, 2, 1425, 1426, 7, 810, 2, 2, 1426, 1428, 5, 966, 484, 2, 1427, 1422, 3, 2, 2, 2, 1427, 1428, 3, 2, 2, 2, 1428, 53, 3, 2, 2, 2, 1429, 1430, 7, 73, 2, 2, 1430, 1431, 7, 15, 2, 2, 1431, 1432, 7, 289, 2, 2, 1432, 1433, 5, 966, 484, 2, 1433, 1440, 7, 377, 2, 2, 1434, 1436, 7, 830, 2, 2, 1435, 1434, 3, 2, 2, 2, 1435, 1436, 3, 2, 2, 2, 1436, 1437, 3, 2, 2, 2, 1437, 1438, 7, 244, 2, 2, 1438, 1439, 7, 810, 2, 2, 1439, 1441, 7, 806, 2, 2, 1440, 1435, 3, 2, 2, 2, 1440, 1441, 3, 2, 2, 2, 1441, 1448, 3, 2, 2, 2, 1442, 1444, 7, 830, 2, 2, 1443, 1442, 3, 2, 2, 2, 1443, 1444, 3, 2, 2, 2, 1444, 1445, 3, 2, 2, 2, 1445, 1446, 7, 91, 2, 2, 1446, 1447, 7, 810, 2, 2, 1447, 1449, 5, 966, 484, 2, 1448, 1443, 3, 2, 2, 2, 1448, 1449, 3, 2, 2, 2, 1449, 55, 3, 2, 2, 2, 1450, 1451, 7, 103, 2, 2, 1451, 1454, 7, 393, 2, 2, 1452, 1453, 7, 153, 2, 2, 1453, 1455, 7, 119, 2, 2, 1454, 1452, 3, 2, 2, 2, 1454, 1455, 3, 2, 2, 2, 1455, 1459, 3, 2, 2, 2, 1456, 1457, 5, 966, 484, 2, 1457, 1458, 7, 823, 2, 2, 1458, 1460, 3, 2, 2, 2, 1459, 1456, 3, 2, 2, 2, 1459, 1460, 3, 2, 2, 2, 1460, 1461, 3, 2, 2, 2, 1461, 1462, 5, 966, 484, 2, 1462, 57, 3, 2, 2, 2, 1463, 1464, 7, 103, 2, 2, 1464, 1465, 7, 15, 2, 2, 1465, 1466, 7, 289, 2, 2, 1466, 1467, 5, 966, 484, 2, 1467, 59, 3, 2, 2, 2, 1468, 1469, 5, 62, 32, 2, 1469, 1470, 5, 966, 484, 2, 1470, 1471, 5, 64, 33, 2, 1471, 61, 3, 2, 2, 2, 1472, 1473, 7, 10, 2, 2, 1473, 1474, 7, 405, 2, 2, 1474, 63, 3, 2, 2, 2, 1475, 1477, 5, 66, 34, 2, 1476, 1475, 3, 2, 2, 2, 1476, 1477, 3, 2, 2, 2, 1477, 1479, 3, 2, 2, 2, 1478, 1480, 5, 88, 45, 2, 1479, 1478, 3, 2, 2, 2, 1479, 1480, 3, 2, 2, 2, 1480, 1482, 3, 2, 2, 2, 1481, 1483, 5, 70, 36, 2, 1482, 1481, 3, 2, 2, 2, 1482, 1483, 3, 2, 2, 2, 1483, 1485, 3, 2, 2, 2, 1484, 1486, 5, 76, 39, 2, 1485, 1484, 3, 2, 2, 2, 1485, 1486, 3, 2, 2, 2, 1486, 65, 3, 2, 2, 2, 1487, 1490, 5, 68, 35, 2, 1488, 1491, 5, 92, 47, 2, 1489, 1491, 5, 84, 43, 2, 1490, 1488, 3, 2, 2, 2, 1490, 1489, 3, 2, 2, 2, 1491, 67, 3, 2, 2, 2, 1492, 1493, 7, 139, 2, 2, 1493, 69, 3, 2, 2, 2, 1494, 1495, 5, 74, 38, 2, 1495, 1496, 5, 72, 37, 2, 1496, 71, 3, 2, 2, 2, 1497, 1500, 7, 6, 2, 2, 1498, 1500, 5, 110, 56, 2, 1499, 1497, 3, 2, 2, 2, 1499, 1498, 3, 2, 2, 2, 1500, 73, 3, 2, 2, 2, 1501, 1502, 7, 103, 2, 2, 1502, 75, 3, 2, 2, 2, 1503, 1504, 5, 78, 40, 2, 1504, 1505, 5, 80, 41, 2, 1505, 77, 3, 2, 2, 2, 1506, 1507, 7, 4, 2, 2, 1507, 1508, 7, 129, 2, 2, 1508, 1509, 7, 139, 2, 2, 1509, 79, 3, 2, 2, 2, 1510, 1514, 5, 82, 42, 2, 1511, 1512, 5, 86, 44, 2, 1512, 1513, 5, 966, 484, 2, 1513, 1515, 3, 2, 2, 2, 1514, 1511, 3, 2, 2, 2, 1514, 1515, 3, 2, 2, 2, 1515, 81, 3, 2, 2, 2, 1516, 1517, 7, 806, 2, 2, 1517, 83, 3, 2, 2, 2, 1518, 1519, 5, 86, 44, 2, 1519, 1520, 5, 966, 484, 2, 1520, 85, 3, 2, 2, 2, 1521, 1522, 7, 16, 2, 2, 1522, 87, 3, 2, 2, 2, 1523, 1524, 5, 90, 46, 2, 1524, 1525, 5, 94, 48, 2, 1525, 89, 3, 2, 2, 2, 1526, 1527, 7, 377, 2, 2, 1527, 91, 3, 2, 2, 2, 1528, 1532, 5, 96, 49, 2, 1529, 1532, 5, 106, 54, 2, 1530, 1532, 7, 806, 2, 2, 1531, 1528, 3, 2, 2, 2, 1531, 1529, 3, 2, 2, 2, 1531, 1530, 3, 2, 2, 2, 1532, 93, 3, 2, 2, 2, 1533, 1534, 8, 48, 1, 2, 1534, 1535, 7, 246, 2, 2, 1535, 1536, 7, 810, 2, 2, 1536, 1543, 9, 8, 2, 2, 1537, 1538, 7, 371, 2, 2, 1538, 1539, 7, 810, 2, 2, 1539, 1543, 9, 9, 2, 2, 1540, 1541, 7, 355, 2, 2, 1541, 1543, 7, 456, 2, 2, 1542, 1533, 3, 2, 2, 2, 1542, 1537, 3, 2, 2, 2, 1542, 1540, 3, 2, 2, 2, 1543, 1548, 3, 2, 2, 2, 1544, 1545, 12, 3, 2, 2, 1545, 1547, 7, 830, 2, 2, 1546, 1544, 3, 2, 2, 2, 1547, 1550, 3, 2, 2, 2, 1548, 1546, 3, 2, 2, 2, 1548, 1549, 3, 2, 2, 2, 1549, 95, 3, 2, 2, 2, 1550, 1548, 3, 2, 2, 2, 1551, 1552, 5, 100, 51, 2, 1552, 1553, 5, 98, 50, 2, 1553, 1554, 5, 102, 52, 2, 1554, 97, 3, 2, 2, 2, 1555, 1556, 5, 966, 484, 2, 1556, 99, 3, 2, 2, 2, 1557, 1558, 7, 101, 2, 2, 1558, 101, 3, 2, 2, 2, 1559, 1560, 5, 104, 53, 2, 1560, 1561, 5, 102, 52, 2, 1561, 1564, 3, 2, 2, 2, 1562, 1564, 5, 966, 484, 2, 1563, 1559, 3, 2, 2, 2, 1563, 1562, 3, 2, 2, 2, 1564, 103, 3, 2, 2, 2, 1565, 1566, 7, 25, 2, 2, 1566, 105, 3, 2, 2, 2, 1567, 1568, 5, 108, 55, 2, 1568, 1569, 5, 102, 52, 2, 1569, 107, 3, 2, 2, 2, 1570, 1571, 7, 483, 2, 2, 1571, 109, 3, 2, 2, 2, 1572, 1573, 5, 112, 57, 2, 1573, 1574, 5, 106, 54, 2, 1574, 1575, 7, 799, 2, 2, 1575, 1576, 7, 830, 2, 2, 1576, 1579, 3, 2, 2, 2, 1577, 1579, 5, 106, 54, 2, 1578, 1572, 3, 2, 2, 2, 1578, 1577, 3, 2, 2, 2, 1579, 111, 3, 2, 2, 2, 1580, 1581, 7, 799, 2, 2, 1581, 113, 3, 2, 2, 2, 1582, 1583, 7, 73, 2, 2, 1583, 1584, 7, 405, 2, 2, 1584, 1587, 5, 966, 484, 2, 1585, 1586, 7, 20, 2, 2, 1586, 1588, 5, 966, 484, 2, 1587, 1585, 3, 2, 2, 2, 1587, 1588, 3, 2, 2, 2, 1588, 1589, 3, 2, 2, 2, 1589, 1594, 7, 139, 2, 2, 1590, 1592, 7, 830, 2, 2, 1591, 1590, 3, 2, 2, 2, 1591, 1592, 3, 2, 2, 2, 1592, 1593, 3, 2, 2, 2, 1593, 1595, 9, 10, 2, 2, 1594, 1591, 3, 2, 2, 2, 1595, 1596, 3, 2, 2, 2, 1596, 1594, 3, 2, 2, 2, 1596, 1597, 3, 2, 2, 2, 1597, 1602, 3, 2, 2, 2, 1598, 1599, 7, 377, 2, 2, 1599, 1600, 7, 246, 2, 2, 1600, 1601, 7, 810, 2, 2, 1601, 1603, 9, 8, 2, 2, 1602, 1598, 3, 2, 2, 2, 1602, 1603, 3, 2, 2, 2, 1603, 115, 3, 2, 2, 2, 1604, 1605, 7, 103, 2, 2, 1605, 1608, 7, 405, 2, 2, 1606, 1607, 7, 153, 2, 2, 1607, 1609, 7, 119, 2, 2, 1608, 1606, 3, 2, 2, 2, 1608, 1609, 3, 2, 2, 2, 1609, 1614, 3, 2, 2, 2, 1610, 1612, 7, 830, 2, 2, 1611, 1610, 3, 2, 2, 2, 1611, 1612, 3, 2, 2, 2, 1612, 1613, 3, 2, 2, 2, 1613, 1615, 5, 966, 484, 2, 1614, 1611, 3, 2, 2, 2, 1615, 1616, 3, 2, 2, 2, 1616, 1614, 3, 2, 2, 2, 1616, 1617, 3, 2, 2, 2, 1617, 1621, 3, 2, 2, 2, 1618, 1619, 7, 377, 2, 2, 1619, 1620, 7, 611, 2, 2, 1620, 1622, 7, 473, 2, 2, 1621, 1618, 3, 2, 2, 2, 1621, 1622, 3, 2, 2, 2, 1622, 117, 3, 2, 2, 2, 1623, 1624, 5, 120, 61, 2, 1624, 1629, 5, 966, 484, 2, 1625, 1630, 5, 122, 62, 2, 1626, 1627, 7, 681, 2, 2, 1627, 1628, 7, 652, 2, 2, 1628, 1630, 7, 172, 2, 2, 1629, 1625, 3, 2, 2, 2, 1629, 1626, 3, 2, 2, 2, 1630, 119, 3, 2, 2, 2, 1631, 1632, 7, 10, 2, 2, 1632, 1633, 7, 18, 2, 2, 1633, 1634, 7, 172, 2, 2, 1634, 121, 3, 2, 2, 2, 1635, 1636, 5, 124, 63, 2, 1636, 1639, 5, 126, 64, 2, 1637, 1638, 7, 830, 2, 2, 1638, 1640, 5, 126, 64, 2, 1639, 1637, 3, 2, 2, 2, 1639, 1640, 3, 2, 2, 2, 1640, 1641, 3, 2, 2, 2, 1641, 1642, 7, 829, 2, 2, 1642, 123, 3, 2, 2, 2, 1643, 1644, 7, 377, 2, 2, 1644, 1645, 7, 652, 2, 2, 1645, 1646, 7, 172, 2, 2, 1646, 1647, 7, 828, 2, 2, 1647, 125, 3, 2, 2, 2, 1648, 1649, 7, 465, 2, 2, 1649, 1650, 7, 38, 2, 2, 1650, 1651, 7, 244, 2, 2, 1651, 1652, 7, 810, 2, 2, 1652, 1659, 7, 806, 2, 2, 1653, 1654, 7, 492, 2, 2, 1654, 1655, 7, 38, 2, 2, 1655, 1656, 7, 244, 2, 2, 1656, 1657, 7, 810, 2, 2, 1657, 1659, 7, 806, 2, 2, 1658, 1648, 3, 2, 2, 2, 1658, 1653, 3, 2, 2, 2, 1659, 127, 3, 2, 2, 2, 1660, 1661, 7, 73, 2, 2, 1661, 1662, 7, 18, 2, 2, 1662, 1663, 7, 172, 2, 2, 1663, 1666, 5, 966, 484, 2, 1664, 1665, 7, 20, 2, 2, 1665, 1667, 5, 966, 484, 2, 1666, 1664, 3, 2, 2, 2, 1666, 1667, 3, 2, 2, 2, 1667, 1681, 3, 2, 2, 2, 1668, 1679, 7, 139, 2, 2, 1669, 1670, 7, 129, 2, 2, 1670, 1671, 7, 810, 2, 2, 1671, 1680, 7, 806, 2, 2, 1672, 1673, 7, 117, 2, 2, 1673, 1674, 7, 810, 2, 2, 1674, 1680, 7, 806, 2, 2, 1675, 1676, 7, 405, 2, 2, 1676, 1680, 5, 966, 484, 2, 1677, 1678, 7, 657, 2, 2, 1678, 1680, 5, 966, 484, 2, 1679, 1669, 3, 2, 2, 2, 1679, 1672, 3, 2, 2, 2, 1679, 1675, 3, 2, 2, 2, 1679, 1677, 3, 2, 2, 2, 1680, 1682, 3, 2, 2, 2, 1681, 1668, 3, 2, 2, 2, 1681, 1682, 3, 2, 2, 2, 1682, 1695, 3, 2, 2, 2, 1683, 1693, 7, 377, 2, 2, 1684, 1685, 7, 394, 2, 2, 1685, 1686, 7, 810, 2, 2, 1686, 1694, 9, 11, 2, 2, 1687, 1688, 7, 658, 2, 2, 1688, 1689, 7, 810, 2, 2, 1689, 1694, 7, 806, 2, 2, 1690, 1691, 7, 451, 2, 2, 1691, 1692, 7, 810, 2, 2, 1692, 1694, 9, 12, 2, 2, 1693, 1684, 3, 2, 2, 2, 1693, 1687, 3, 2, 2, 2, 1693, 1690, 3, 2, 2, 2, 1694, 1696, 3, 2, 2, 2, 1695, 1683, 3, 2, 2, 2, 1695, 1696, 3, 2, 2, 2, 1696, 1702, 3, 2, 2, 2, 1697, 1698, 7, 492, 2, 2, 1698, 1699, 7, 38, 2, 2, 1699, 1700, 7, 244, 2, 2, 1700, 1701, 7, 810, 2, 2, 1701, 1703, 7, 806, 2, 2, 1702, 1697, 3, 2, 2, 2, 1702, 1703, 3, 2, 2, 2, 1703, 129, 3, 2, 2, 2, 1704, 1705, 7, 103, 2, 2, 1705, 1706, 7, 18, 2, 2, 1706, 1707, 7, 172, 2, 2, 1707, 1711, 5, 966, 484, 2, 1708, 1709, 7, 681, 2, 2, 1709, 1710, 7, 657, 2, 2, 1710, 1712, 7, 172, 2, 2, 1711, 1708, 3, 2, 2, 2, 1711, 1712, 3, 2, 2, 2, 1712, 131, 3, 2, 2, 2, 1713, 1717, 5, 140, 71, 2, 1714, 1715, 5, 148, 75, 2, 1715, 1716, 5, 138, 70, 2, 1716, 1718, 3, 2, 2, 2, 1717, 1714, 3, 2, 2, 2, 1717, 1718, 3, 2, 2, 2, 1718, 1719, 3, 2, 2, 2, 1719, 1720, 5, 902, 452, 2, 1720, 1721, 5, 136, 69, 2, 1721, 1722, 5, 134, 68, 2, 1722, 133, 3, 2, 2, 2, 1723, 1727, 5, 966, 484, 2, 1724, 1725, 7, 302, 2, 2, 1725, 1727, 7, 637, 2, 2, 1726, 1723, 3, 2, 2, 2, 1726, 1724, 3, 2, 2, 2, 1727, 135, 3, 2, 2, 2, 1728, 1729, 7, 346, 2, 2, 1729, 137, 3, 2, 2, 2, 1730, 1731, 7, 832, 2, 2, 1731, 1732, 7, 832, 2, 2, 1732, 139, 3, 2, 2, 2, 1733, 1734, 7, 10, 2, 2, 1734, 1735, 7, 20, 2, 2, 1735, 1736, 7, 229, 2, 2, 1736, 141, 3, 2, 2, 2, 1737, 1741, 5, 140, 71, 2, 1738, 1739, 5, 150, 76, 2, 1739, 1740, 5, 138, 70, 2, 1740, 1742, 3, 2, 2, 2, 1741, 1738, 3, 2, 2, 2, 1741, 1742, 3, 2, 2, 2, 1742, 1743, 3, 2, 2, 2, 1743, 1744, 5, 902, 452, 2, 1744, 1745, 5, 136, 69, 2, 1745, 1746, 5, 134, 68, 2, 1746, 143, 3, 2, 2, 2, 1747, 1751, 5, 140, 71, 2, 1748, 1749, 5, 152, 77, 2, 1749, 1750, 5, 138, 70, 2, 1750, 1752, 3, 2, 2, 2, 1751, 1748, 3, 2, 2, 2, 1751, 1752, 3, 2, 2, 2, 1752, 1753, 3, 2, 2, 2, 1753, 1754, 5, 904, 453, 2, 1754, 1755, 5, 136, 69, 2, 1755, 1756, 5, 134, 68, 2, 1756, 145, 3, 2, 2, 2, 1757, 1761, 5, 140, 71, 2, 1758, 1759, 5, 154, 78, 2, 1759, 1760, 5, 138, 70, 2, 1760, 1762, 3, 2, 2, 2, 1761, 1758, 3, 2, 2, 2, 1761, 1762, 3, 2, 2, 2, 1762, 1763, 3, 2, 2, 2, 1763, 1764, 5, 906, 454, 2, 1764, 1765, 5, 136, 69, 2, 1765, 1766, 5, 134, 68, 2, 1766, 147, 3, 2, 2, 2, 1767, 1802, 7, 625, 2, 2, 1768, 1802, 7, 405, 2, 2, 1769, 1770, 7, 18, 2, 2, 1770, 1802, 7, 172, 2, 2, 1771, 1772, 7, 415, 2, 2, 1772, 1802, 7, 146, 2, 2, 1773, 1802, 7, 43, 2, 2, 1774, 1802, 7, 68, 2, 2, 1775, 1802, 7, 769, 2, 2, 1776, 1802, 7, 84, 2, 2, 1777, 1802, 7, 109, 2, 2, 1778, 1779, 7, 521, 2, 2, 1779, 1802, 7, 430, 2, 2, 1780, 1781, 7, 521, 2, 2, 1781, 1802, 7, 740, 2, 2, 1782, 1783, 7, 592, 2, 2, 1783, 1802, 7, 769, 2, 2, 1784, 1785, 7, 679, 2, 2, 1785, 1786, 7, 310, 2, 2, 1786, 1802, 7, 422, 2, 2, 1787, 1802, 7, 289, 2, 2, 1788, 1802, 7, 696, 2, 2, 1789, 1802, 7, 302, 2, 2, 1790, 1791, 7, 706, 2, 2, 1791, 1792, 7, 656, 2, 2, 1792, 1802, 7, 563, 2, 2, 1793, 1794, 7, 309, 2, 2, 1794, 1802, 7, 289, 2, 2, 1795, 1802, 7, 310, 2, 2, 1796, 1797, 7, 747, 2, 2, 1797, 1802, 7, 172, 2, 2, 1798, 1799, 7, 789, 2, 2, 1799, 1800, 7, 302, 2, 2, 1800, 1802, 7, 437, 2, 2, 1801, 1767, 3, 2, 2, 2, 1801, 1768, 3, 2, 2, 2, 1801, 1769, 3, 2, 2, 2, 1801, 1771, 3, 2, 2, 2, 1801, 1773, 3, 2, 2, 2, 1801, 1774, 3, 2, 2, 2, 1801, 1775, 3, 2, 2, 2, 1801, 1776, 3, 2, 2, 2, 1801, 1777, 3, 2, 2, 2, 1801, 1778, 3, 2, 2, 2, 1801, 1780, 3, 2, 2, 2, 1801, 1782, 3, 2, 2, 2, 1801, 1784, 3, 2, 2, 2, 1801, 1787, 3, 2, 2, 2, 1801, 1788, 3, 2, 2, 2, 1801, 1789, 3, 2, 2, 2, 1801, 1790, 3, 2, 2, 2, 1801, 1793, 3, 2, 2, 2, 1801, 1795, 3, 2, 2, 2, 1801, 1796, 3, 2, 2, 2, 1801, 1798, 3, 2, 2, 2, 1802, 149, 3, 2, 2, 2, 1803, 1825, 7, 625, 2, 2, 1804, 1825, 7, 405, 2, 2, 1805, 1806, 7, 18, 2, 2, 1806, 1825, 7, 172, 2, 2, 1807, 1825, 7, 43, 2, 2, 1808, 1825, 7, 769, 2, 2, 1809, 1825, 7, 84, 2, 2, 1810, 1811, 7, 521, 2, 2, 1811, 1825, 7, 430, 2, 2, 1812, 1813, 7, 521, 2, 2, 1813, 1825, 7, 740, 2, 2, 1814, 1825, 7, 289, 2, 2, 1815, 1825, 7, 302, 2, 2, 1816, 1817, 7, 706, 2, 2, 1817, 1818, 7, 656, 2, 2, 1818, 1825, 7, 563, 2, 2, 1819, 1820, 7, 747, 2, 2, 1820, 1825, 7, 172, 2, 2, 1821, 1822, 7, 789, 2, 2, 1822, 1823, 7, 302, 2, 2, 1823, 1825, 7, 437, 2, 2, 1824, 1803, 3, 2, 2, 2, 1824, 1804, 3, 2, 2, 2, 1824, 1805, 3, 2, 2, 2, 1824, 1807, 3, 2, 2, 2, 1824, 1808, 3, 2, 2, 2, 1824, 1809, 3, 2, 2, 2, 1824, 1810, 3, 2, 2, 2, 1824, 1812, 3, 2, 2, 2, 1824, 1814, 3, 2, 2, 2, 1824, 1815, 3, 2, 2, 2, 1824, 1816, 3, 2, 2, 2, 1824, 1819, 3, 2, 2, 2, 1824, 1821, 3, 2, 2, 2, 1825, 151, 3, 2, 2, 2, 1826, 1827, 9, 13, 2, 2, 1827, 153, 3, 2, 2, 2, 1828, 1829, 9, 14, 2, 2, 1829, 155, 3, 2, 2, 2, 1830, 1831, 7, 103, 2, 2, 1831, 1832, 7, 415, 2, 2, 1832, 1833, 7, 146, 2, 2, 1833, 1834, 5, 966, 484, 2, 1834, 157, 3, 2, 2, 2, 1835, 1836, 5, 160, 81, 2, 1836, 1837, 5, 162, 82, 2, 1837, 159, 3, 2, 2, 2, 1838, 1839, 7, 10, 2, 2, 1839, 1840, 7, 415, 2, 2, 1840, 1841, 7, 146, 2, 2, 1841, 1842, 5, 966, 484, 2, 1842, 161, 3, 2, 2, 2, 1843, 1844, 7, 315, 2, 2, 1844, 1860, 7, 828, 2, 2, 1845, 1846, 7, 22, 2, 2, 1846, 1847, 7, 810, 2, 2, 1847, 1861, 9, 15, 2, 2, 1848, 1849, 7, 504, 2, 2, 1849, 1850, 7, 810, 2, 2, 1850, 1861, 7, 802, 2, 2, 1851, 1852, 7, 532, 2, 2, 1852, 1853, 7, 810, 2, 2, 1853, 1861, 7, 802, 2, 2, 1854, 1855, 7, 464, 2, 2, 1855, 1856, 7, 810, 2, 2, 1856, 1861, 9, 9, 2, 2, 1857, 1858, 7, 688, 2, 2, 1858, 1859, 7, 810, 2, 2, 1859, 1861, 7, 802, 2, 2, 1860, 1845, 3, 2, 2, 2, 1860, 1848, 3, 2, 2, 2, 1860, 1851, 3, 2, 2, 2, 1860, 1854, 3, 2, 2, 2, 1860, 1857, 3, 2, 2, 2, 1861, 1862, 3, 2, 2, 2, 1862, 2194, 7, 829, 2, 2, 1863, 1864, 7, 4, 2, 2, 1864, 1865, 7, 84, 2, 2, 1865, 2194, 5, 966, 484, 2, 1866, 1867, 7, 681, 2, 2, 1867, 1868, 7, 84, 2, 2, 1868, 2194, 5, 966, 484, 2, 1869, 1870, 7, 4, 2, 2, 1870, 1871, 7, 684, 2, 2, 1871, 1872, 7, 229, 2, 2, 1872, 1873, 7, 806, 2, 2, 1873, 1874, 7, 377, 2, 2, 1874, 1878, 7, 828, 2, 2, 1875, 1876, 7, 493, 2, 2, 1876, 1877, 7, 810, 2, 2, 1877, 1879, 7, 806, 2, 2, 1878, 1875, 3, 2, 2, 2, 1878, 1879, 3, 2, 2, 2, 1879, 1886, 3, 2, 2, 2, 1880, 1882, 7, 830, 2, 2, 1881, 1880, 3, 2, 2, 2, 1881, 1882, 3, 2, 2, 2, 1882, 1883, 3, 2, 2, 2, 1883, 1884, 7, 24, 2, 2, 1884, 1885, 7, 810, 2, 2, 1885, 1887, 9, 16, 2, 2, 1886, 1881, 3, 2, 2, 2, 1886, 1887, 3, 2, 2, 2, 1887, 1894, 3, 2, 2, 2, 1888, 1890, 7, 830, 2, 2, 1889, 1888, 3, 2, 2, 2, 1889, 1890, 3, 2, 2, 2, 1890, 1891, 3, 2, 2, 2, 1891, 1892, 7, 502, 2, 2, 1892, 1893, 7, 810, 2, 2, 1893, 1895, 9, 17, 2, 2, 1894, 1889, 3, 2, 2, 2, 1894, 1895, 3, 2, 2, 2, 1895, 1902, 3, 2, 2, 2, 1896, 1898, 7, 830, 2, 2, 1897, 1896, 3, 2, 2, 2, 1897, 1898, 3, 2, 2, 2, 1898, 1899, 3, 2, 2, 2, 1899, 1900, 7, 714, 2, 2, 1900, 1901, 7, 810, 2, 2, 1901, 1903, 9, 17, 2, 2, 1902, 1897, 3, 2, 2, 2, 1902, 1903, 3, 2, 2, 2, 1903, 1910, 3, 2, 2, 2, 1904, 1906, 7, 830, 2, 2, 1905, 1904, 3, 2, 2, 2, 1905, 1906, 3, 2, 2, 2, 1906, 1907, 3, 2, 2, 2, 1907, 1908, 7, 417, 2, 2, 1908, 1909, 7, 810, 2, 2, 1909, 1911, 7, 802, 2, 2, 1910, 1905, 3, 2, 2, 2, 1910, 1911, 3, 2, 2, 2, 1911, 1921, 3, 2, 2, 2, 1912, 1914, 7, 830, 2, 2, 1913, 1912, 3, 2, 2, 2, 1913, 1914, 3, 2, 2, 2, 1914, 1915, 3, 2, 2, 2, 1915, 1916, 7, 648, 2, 2, 1916, 1917, 7, 828, 2, 2, 1917, 1918, 7, 7, 2, 2, 1918, 1919, 7, 810, 2, 2, 1919, 1920, 9, 18, 2, 2, 1920, 1922, 7, 829, 2, 2, 1921, 1913, 3, 2, 2, 2, 1921, 1922, 3, 2, 2, 2, 1922, 1932, 3, 2, 2, 2, 1923, 1925, 7, 830, 2, 2, 1924, 1923, 3, 2, 2, 2, 1924, 1925, 3, 2, 2, 2, 1925, 1926, 3, 2, 2, 2, 1926, 1927, 7, 709, 2, 2, 1927, 1928, 7, 828, 2, 2, 1928, 1929, 7, 7, 2, 2, 1929, 1930, 7, 810, 2, 2, 1930, 1931, 7, 669, 2, 2, 1931, 1933, 7, 829, 2, 2, 1932, 1924, 3, 2, 2, 2, 1932, 1933, 3, 2, 2, 2, 1933, 1934, 3, 2, 2, 2, 1934, 2194, 7, 829, 2, 2, 1935, 1936, 7, 709, 2, 2, 1936, 1945, 7, 828, 2, 2, 1937, 1938, 7, 7, 2, 2, 1938, 1939, 7, 810, 2, 2, 1939, 1946, 9, 19, 2, 2, 1940, 1941, 7, 670, 2, 2, 1941, 1942, 7, 810, 2, 2, 1942, 1943, 7, 828, 2, 2, 1943, 1944, 7, 806, 2, 2, 1944, 1946, 7, 829, 2, 2, 1945, 1937, 3, 2, 2, 2, 1945, 1940, 3, 2, 2, 2, 1946, 2194, 3, 2, 2, 2, 1947, 1948, 7, 648, 2, 2, 1948, 1971, 7, 828, 2, 2, 1949, 1950, 7, 7, 2, 2, 1950, 1951, 7, 810, 2, 2, 1951, 1972, 9, 19, 2, 2, 1952, 1953, 7, 670, 2, 2, 1953, 1954, 7, 810, 2, 2, 1954, 1965, 7, 828, 2, 2, 1955, 1957, 7, 830, 2, 2, 1956, 1955, 3, 2, 2, 2, 1956, 1957, 3, 2, 2, 2, 1957, 1958, 3, 2, 2, 2, 1958, 1960, 7, 806, 2, 2, 1959, 1956, 3, 2, 2, 2, 1960, 1963, 3, 2, 2, 2, 1961, 1959, 3, 2, 2, 2, 1961, 1962, 3, 2, 2, 2, 1962, 1966, 3, 2, 2, 2, 1963, 1961, 3, 2, 2, 2, 1964, 1966, 7, 213, 2, 2, 1965, 1961, 3, 2, 2, 2, 1965, 1964, 3, 2, 2, 2, 1966, 1967, 3, 2, 2, 2, 1967, 1972, 7, 829, 2, 2, 1968, 1969, 7, 721, 2, 2, 1969, 1970, 7, 810, 2, 2, 1970, 1972, 7, 802, 2, 2, 1971, 1949, 3, 2, 2, 2, 1971, 1952, 3, 2, 2, 2, 1971, 1968, 3, 2, 2, 2, 1972, 2194, 3, 2, 2, 2, 1973, 1974, 7, 602, 2, 2, 1974, 1975, 7, 684, 2, 2, 1975, 1976, 7, 229, 2, 2, 1976, 2034, 7, 806, 2, 2, 1977, 1978, 7, 377, 2, 2, 1978, 1994, 7, 828, 2, 2, 1979, 1980, 7, 493, 2, 2, 1980, 1981, 7, 810, 2, 2, 1981, 1995, 7, 806, 2, 2, 1982, 1983, 7, 24, 2, 2, 1983, 1984, 7, 810, 2, 2, 1984, 1995, 9, 16, 2, 2, 1985, 1986, 7, 502, 2, 2, 1986, 1987, 7, 810, 2, 2, 1987, 1995, 9, 17, 2, 2, 1988, 1989, 7, 714, 2, 2, 1989, 1990, 7, 810, 2, 2, 1990, 1995, 9, 17, 2, 2, 1991, 1992, 7, 417, 2, 2, 1992, 1993, 7, 810, 2, 2, 1993, 1995, 7, 802, 2, 2, 1994, 1979, 3, 2, 2, 2, 1994, 1982, 3, 2, 2, 2, 1994, 1985, 3, 2, 2, 2, 1994, 1988, 3, 2, 2, 2, 1994, 1991, 3, 2, 2, 2, 1995, 2035, 3, 2, 2, 2, 1996, 1997, 7, 709, 2, 2, 1997, 2006, 7, 828, 2, 2, 1998, 1999, 7, 7, 2, 2, 1999, 2000, 7, 810, 2, 2, 2000, 2007, 9, 19, 2, 2, 2001, 2002, 7, 670, 2, 2, 2002, 2003, 7, 810, 2, 2, 2003, 2004, 7, 828, 2, 2, 2004, 2005, 7, 806, 2, 2, 2005, 2007, 7, 829, 2, 2, 2006, 1998, 3, 2, 2, 2, 2006, 2001, 3, 2, 2, 2, 2007, 2035, 3, 2, 2, 2, 2008, 2009, 7, 648, 2, 2, 2009, 2032, 7, 828, 2, 2, 2010, 2011, 7, 7, 2, 2, 2011, 2012, 7, 810, 2, 2, 2012, 2033, 9, 19, 2, 2, 2013, 2014, 7, 670, 2, 2, 2014, 2015, 7, 810, 2, 2, 2015, 2026, 7, 828, 2, 2, 2016, 2018, 7, 830, 2, 2, 2017, 2016, 3, 2, 2, 2, 2017, 2018, 3, 2, 2, 2, 2018, 2019, 3, 2, 2, 2, 2019, 2021, 7, 806, 2, 2, 2020, 2017, 3, 2, 2, 2, 2021, 2024, 3, 2, 2, 2, 2022, 2020, 3, 2, 2, 2, 2022, 2023, 3, 2, 2, 2, 2023, 2027, 3, 2, 2, 2, 2024, 2022, 3, 2, 2, 2, 2025, 2027, 7, 213, 2, 2, 2026, 2022, 3, 2, 2, 2, 2026, 2025, 3, 2, 2, 2, 2027, 2028, 3, 2, 2, 2, 2028, 2033, 7, 829, 2, 2, 2029, 2030, 7, 721, 2, 2, 2030, 2031, 7, 810, 2, 2, 2031, 2033, 7, 802, 2, 2, 2032, 2010, 3, 2, 2, 2, 2032, 2013, 3, 2, 2, 2, 2032, 2029, 3, 2, 2, 2, 2033, 2035, 3, 2, 2, 2, 2034, 1977, 3, 2, 2, 2, 2034, 1996, 3, 2, 2, 2, 2034, 2008, 3, 2, 2, 2, 2035, 2036, 3, 2, 2, 2, 2036, 2194, 7, 829, 2, 2, 2037, 2038, 7, 681, 2, 2, 2038, 2039, 7, 684, 2, 2, 2039, 2040, 7, 229, 2, 2, 2040, 2194, 7, 806, 2, 2, 2041, 2194, 7, 170, 2, 2, 2042, 2043, 7, 170, 2, 2, 2043, 2044, 7, 415, 2, 2, 2044, 2045, 7, 146, 2, 2, 2045, 2068, 7, 229, 2, 2, 2046, 2048, 7, 830, 2, 2, 2047, 2046, 3, 2, 2, 2, 2047, 2048, 3, 2, 2, 2, 2048, 2049, 3, 2, 2, 2, 2049, 2050, 7, 806, 2, 2, 2050, 2051, 7, 377, 2, 2, 2051, 2052, 7, 828, 2, 2, 2052, 2053, 7, 565, 2, 2, 2053, 2054, 7, 810, 2, 2, 2054, 2055, 7, 806, 2, 2, 2055, 2056, 7, 830, 2, 2, 2056, 2057, 7, 24, 2, 2, 2057, 2058, 7, 810, 2, 2, 2058, 2059, 9, 16, 2, 2, 2059, 2060, 7, 830, 2, 2, 2060, 2061, 7, 502, 2, 2, 2061, 2062, 7, 810, 2, 2, 2062, 2063, 7, 574, 2, 2, 2063, 2064, 7, 830, 2, 2, 2064, 2065, 7, 714, 2, 2, 2065, 2066, 7, 810, 2, 2, 2066, 2067, 9, 17, 2, 2, 2067, 2069, 7, 829, 2, 2, 2068, 2047, 3, 2, 2, 2, 2069, 2070, 3, 2, 2, 2, 2070, 2068, 3, 2, 2, 2, 2070, 2071, 3, 2, 2, 2, 2071, 2194, 3, 2, 2, 2, 2072, 2073, 7, 602, 2, 2, 2073, 2074, 7, 415, 2, 2, 2074, 2075, 7, 146, 2, 2, 2075, 2110, 7, 229, 2, 2, 2076, 2078, 7, 830, 2, 2, 2077, 2076, 3, 2, 2, 2, 2077, 2078, 3, 2, 2, 2, 2078, 2079, 3, 2, 2, 2, 2079, 2080, 7, 806, 2, 2, 2080, 2081, 7, 377, 2, 2, 2081, 2082, 7, 828, 2, 2, 2082, 2083, 7, 565, 2, 2, 2083, 2084, 7, 810, 2, 2, 2084, 2091, 7, 806, 2, 2, 2085, 2087, 7, 830, 2, 2, 2086, 2085, 3, 2, 2, 2, 2086, 2087, 3, 2, 2, 2, 2087, 2088, 3, 2, 2, 2, 2088, 2089, 7, 24, 2, 2, 2089, 2090, 7, 810, 2, 2, 2090, 2092, 9, 16, 2, 2, 2091, 2086, 3, 2, 2, 2, 2091, 2092, 3, 2, 2, 2, 2092, 2099, 3, 2, 2, 2, 2093, 2095, 7, 830, 2, 2, 2094, 2093, 3, 2, 2, 2, 2094, 2095, 3, 2, 2, 2, 2095, 2096, 3, 2, 2, 2, 2096, 2097, 7, 502, 2, 2, 2097, 2098, 7, 810, 2, 2, 2098, 2100, 7, 574, 2, 2, 2099, 2094, 3, 2, 2, 2, 2099, 2100, 3, 2, 2, 2, 2100, 2107, 3, 2, 2, 2, 2101, 2103, 7, 830, 2, 2, 2102, 2101, 3, 2, 2, 2, 2102, 2103, 3, 2, 2, 2, 2103, 2104, 3, 2, 2, 2, 2104, 2105, 7, 714, 2, 2, 2105, 2106, 7, 810, 2, 2, 2106, 2108, 9, 17, 2, 2, 2107, 2102, 3, 2, 2, 2, 2107, 2108, 3, 2, 2, 2, 2108, 2109, 3, 2, 2, 2, 2109, 2111, 7, 829, 2, 2, 2110, 2077, 3, 2, 2, 2, 2111, 2112, 3, 2, 2, 2, 2112, 2110, 3, 2, 2, 2, 2112, 2113, 3, 2, 2, 2, 2113, 2194, 3, 2, 2, 2, 2114, 2115, 7, 145, 2, 2, 2115, 2116, 7, 73, 2, 2, 2116, 2117, 7, 13, 2, 2, 2117, 2194, 7, 84, 2, 2, 2118, 2119, 7, 93, 2, 2, 2119, 2120, 7, 73, 2, 2, 2120, 2121, 7, 13, 2, 2, 2121, 2194, 7, 84, 2, 2, 2122, 2194, 7, 125, 2, 2, 2123, 2194, 7, 516, 2, 2, 2124, 2125, 7, 4, 2, 2, 2125, 2126, 7, 564, 2, 2, 2126, 2127, 7, 806, 2, 2, 2127, 2161, 7, 828, 2, 2, 2128, 2129, 7, 377, 2, 2, 2129, 2130, 7, 477, 2, 2, 2130, 2131, 7, 229, 2, 2, 2131, 2132, 7, 828, 2, 2, 2132, 2133, 7, 166, 2, 2, 2133, 2134, 7, 166, 2, 2, 2134, 2135, 3, 2, 2, 2, 2135, 2162, 7, 829, 2, 2, 2136, 2137, 7, 377, 2, 2, 2137, 2138, 7, 548, 2, 2, 2138, 2150, 7, 828, 2, 2, 2139, 2141, 7, 830, 2, 2, 2140, 2139, 3, 2, 2, 2, 2140, 2141, 3, 2, 2, 2, 2141, 2142, 3, 2, 2, 2, 2142, 2147, 7, 828, 2, 2, 2143, 2144, 7, 166, 2, 2, 2144, 2145, 7, 830, 2, 2, 2145, 2148, 7, 166, 2, 2, 2146, 2148, 7, 167, 2, 2, 2147, 2143, 3, 2, 2, 2, 2147, 2146, 3, 2, 2, 2, 2148, 2149, 3, 2, 2, 2, 2149, 2151, 7, 829, 2, 2, 2150, 2140, 3, 2, 2, 2, 2151, 2152, 3, 2, 2, 2, 2152, 2150, 3, 2, 2, 2, 2152, 2153, 3, 2, 2, 2, 2153, 2154, 3, 2, 2, 2, 2154, 2159, 7, 829, 2, 2, 2155, 2156, 7, 830, 2, 2, 2156, 2157, 7, 646, 2, 2, 2157, 2158, 7, 810, 2, 2, 2158, 2160, 7, 802, 2, 2, 2159, 2155, 3, 2, 2, 2, 2159, 2160, 3, 2, 2, 2, 2160, 2162, 3, 2, 2, 2, 2161, 2128, 3, 2, 2, 2, 2161, 2136, 3, 2, 2, 2, 2162, 2163, 3, 2, 2, 2, 2163, 2194, 7, 829, 2, 2, 2164, 2165, 7, 602, 2, 2, 2165, 2178, 7, 564, 2, 2, 2166, 2167, 7, 4, 2, 2, 2167, 2168, 7, 548, 2, 2, 2168, 2172, 7, 828, 2, 2, 2169, 2170, 7, 166, 2, 2, 2170, 2173, 7, 166, 2, 2, 2171, 2173, 7, 167, 2, 2, 2172, 2169, 3, 2, 2, 2, 2172, 2171, 3, 2, 2, 2, 2173, 2174, 3, 2, 2, 2, 2174, 2179, 7, 829, 2, 2, 2175, 2176, 7, 646, 2, 2, 2176, 2177, 7, 810, 2, 2, 2177, 2179, 7, 802, 2, 2, 2178, 2166, 3, 2, 2, 2, 2178, 2175, 3, 2, 2, 2, 2179, 2194, 3, 2, 2, 2, 2180, 2181, 7, 277, 2, 2, 2181, 2182, 7, 564, 2, 2, 2182, 2194, 7, 806, 2, 2, 2183, 2184, 7, 681, 2, 2, 2184, 2185, 7, 564, 2, 2, 2185, 2194, 7, 806, 2, 2, 2186, 2194, 7, 626, 2, 2, 2187, 2188, 7, 377, 2, 2, 2188, 2189, 7, 828, 2, 2, 2189, 2190, 7, 104, 2, 2, 2190, 2191, 7, 810, 2, 2, 2191, 2192, 7, 248, 2, 2, 2192, 2194, 7, 829, 2, 2, 2193, 1843, 3, 2, 2, 2, 2193, 1863, 3, 2, 2, 2, 2193, 1866, 3, 2, 2, 2, 2193, 1869, 3, 2, 2, 2, 2193, 1935, 3, 2, 2, 2, 2193, 1947, 3, 2, 2, 2, 2193, 1973, 3, 2, 2, 2, 2193, 2037, 3, 2, 2, 2, 2193, 2041, 3, 2, 2, 2, 2193, 2042, 3, 2, 2, 2, 2193, 2072, 3, 2, 2, 2, 2193, 2114, 3, 2, 2, 2, 2193, 2118, 3, 2, 2, 2, 2193, 2122, 3, 2, 2, 2, 2193, 2123, 3, 2, 2, 2, 2193, 2124, 3, 2, 2, 2, 2193, 2164, 3, 2, 2, 2, 2193, 2180, 3, 2, 2, 2, 2193, 2183, 3, 2, 2, 2, 2193, 2186, 3, 2, 2, 2, 2193, 2187, 3, 2, 2, 2, 2194, 163, 3, 2, 2, 2, 2195, 2196, 9, 20, 2, 2, 2196, 2197, 7, 424, 2, 2, 2197, 2198, 7, 650, 2, 2, 2198, 2199, 5, 966, 484, 2, 2199, 2200, 7, 133, 2, 2, 2200, 2201, 7, 70, 2, 2, 2201, 2202, 7, 315, 2, 2, 2202, 2212, 7, 828, 2, 2, 2203, 2204, 7, 69, 2, 2, 2204, 2207, 7, 810, 2, 2, 2205, 2208, 5, 966, 484, 2, 2206, 2208, 7, 13, 2, 2, 2207, 2205, 3, 2, 2, 2, 2207, 2206, 3, 2, 2, 2, 2208, 2210, 3, 2, 2, 2, 2209, 2211, 7, 830, 2, 2, 2210, 2209, 3, 2, 2, 2, 2210, 2211, 3, 2, 2, 2, 2211, 2213, 3, 2, 2, 2, 2212, 2203, 3, 2, 2, 2, 2212, 2213, 3, 2, 2, 2, 2213, 2226, 3, 2, 2, 2, 2214, 2215, 7, 186, 2, 2, 2215, 2221, 7, 810, 2, 2, 2216, 2218, 7, 102, 2, 2, 2217, 2216, 3, 2, 2, 2, 2217, 2218, 3, 2, 2, 2, 2218, 2219, 3, 2, 2, 2, 2219, 2222, 5, 966, 484, 2, 2220, 2222, 7, 13, 2, 2, 2221, 2217, 3, 2, 2, 2, 2221, 2220, 3, 2, 2, 2, 2222, 2224, 3, 2, 2, 2, 2223, 2225, 7, 830, 2, 2, 2224, 2223, 3, 2, 2, 2, 2224, 2225, 3, 2, 2, 2, 2225, 2227, 3, 2, 2, 2, 2226, 2214, 3, 2, 2, 2, 2226, 2227, 3, 2, 2, 2, 2227, 2237, 3, 2, 2, 2, 2228, 2229, 7, 680, 2, 2, 2229, 2232, 7, 810, 2, 2, 2230, 2233, 7, 806, 2, 2, 2231, 2233, 7, 13, 2, 2, 2232, 2230, 3, 2, 2, 2, 2232, 2231, 3, 2, 2, 2, 2233, 2235, 3, 2, 2, 2, 2234, 2236, 7, 830, 2, 2, 2235, 2234, 3, 2, 2, 2, 2235, 2236, 3, 2, 2, 2, 2236, 2238, 3, 2, 2, 2, 2237, 2228, 3, 2, 2, 2, 2237, 2238, 3, 2, 2, 2, 2238, 2245, 3, 2, 2, 2, 2239, 2240, 7, 651, 2, 2, 2240, 2243, 7, 810, 2, 2, 2241, 2244, 7, 802, 2, 2, 2242, 2244, 7, 89, 2, 2, 2243, 2241, 3, 2, 2, 2, 2243, 2242, 3, 2, 2, 2, 2244, 2246, 3, 2, 2, 2, 2245, 2239, 3, 2, 2, 2, 2245, 2246, 3, 2, 2, 2, 2246, 2247, 3, 2, 2, 2, 2247, 2248, 7, 829, 2, 2, 2248, 165, 3, 2, 2, 2, 2249, 2250, 7, 103, 2, 2, 2250, 2251, 7, 424, 2, 2, 2251, 2252, 7, 650, 2, 2, 2252, 2253, 5, 966, 484, 2, 2253, 167, 3, 2, 2, 2, 2254, 2255, 7, 10, 2, 2, 2255, 2256, 7, 43, 2, 2, 2256, 2296, 5, 966, 484, 2, 2257, 2258, 7, 681, 2, 2, 2258, 2297, 7, 653, 2, 2, 2259, 2260, 7, 377, 2, 2, 2260, 2261, 7, 652, 2, 2, 2261, 2262, 7, 172, 2, 2, 2262, 2285, 7, 828, 2, 2, 2263, 2264, 7, 129, 2, 2, 2264, 2265, 7, 810, 2, 2, 2265, 2267, 7, 806, 2, 2, 2266, 2268, 7, 830, 2, 2, 2267, 2266, 3, 2, 2, 2, 2267, 2268, 3, 2, 2, 2, 2268, 2286, 3, 2, 2, 2, 2269, 2270, 7, 465, 2, 2, 2270, 2271, 7, 38, 2, 2, 2271, 2272, 7, 244, 2, 2, 2272, 2273, 7, 810, 2, 2, 2273, 2275, 7, 806, 2, 2, 2274, 2276, 7, 830, 2, 2, 2275, 2274, 3, 2, 2, 2, 2275, 2276, 3, 2, 2, 2, 2276, 2286, 3, 2, 2, 2, 2277, 2278, 7, 492, 2, 2, 2278, 2279, 7, 38, 2, 2, 2279, 2280, 7, 244, 2, 2, 2280, 2281, 7, 810, 2, 2, 2281, 2283, 7, 806, 2, 2, 2282, 2284, 7, 830, 2, 2, 2283, 2282, 3, 2, 2, 2, 2283, 2284, 3, 2, 2, 2, 2284, 2286, 3, 2, 2, 2, 2285, 2263, 3, 2, 2, 2, 2285, 2269, 3, 2, 2, 2, 2285, 2277, 3, 2, 2, 2, 2286, 2287, 3, 2, 2, 2, 2287, 2285, 3, 2, 2, 2, 2287, 2288, 3, 2, 2, 2, 2288, 2289, 3, 2, 2, 2, 2289, 2297, 7, 829, 2, 2, 2290, 2291, 7, 377, 2, 2, 2291, 2292, 7, 386, 2, 2, 2292, 2293, 7, 133, 2, 2, 2293, 2294, 7, 418, 2, 2, 2294, 2295, 7, 810, 2, 2, 2295, 2297, 9, 9, 2, 2, 2296, 2257, 3, 2, 2, 2, 2296, 2259, 3, 2, 2, 2, 2296, 2290, 3, 2, 2, 2, 2297, 169, 3, 2, 2, 2, 2298, 2299, 7, 10, 2, 2, 2299, 2300, 7, 56, 2, 2, 2300, 2301, 7, 492, 2, 2, 2301, 2302, 7, 172, 2, 2, 2302, 2303, 5, 966, 484, 2, 2303, 2304, 9, 21, 2, 2, 2304, 2305, 7, 779, 2, 2, 2305, 2306, 7, 828, 2, 2, 2306, 2307, 7, 438, 2, 2, 2307, 2308, 7, 810, 2, 2, 2308, 2317, 5, 966, 484, 2, 2309, 2310, 7, 830, 2, 2, 2310, 2311, 7, 394, 2, 2, 2311, 2312, 7, 810, 2, 2, 2312, 2313, 7, 806, 2, 2, 2313, 2314, 7, 830, 2, 2, 2314, 2315, 7, 491, 2, 2, 2315, 2316, 7, 810, 2, 2, 2316, 2318, 7, 807, 2, 2, 2317, 2309, 3, 2, 2, 2, 2317, 2318, 3, 2, 2, 2, 2318, 2319, 3, 2, 2, 2, 2319, 2320, 7, 829, 2, 2, 2320, 171, 3, 2, 2, 2, 2321, 2322, 7, 73, 2, 2, 2322, 2323, 7, 56, 2, 2, 2323, 2324, 7, 492, 2, 2, 2324, 2325, 7, 172, 2, 2, 2325, 2326, 5, 966, 484, 2, 2326, 2327, 7, 377, 2, 2, 2327, 2347, 7, 367, 2, 2, 2328, 2330, 7, 828, 2, 2, 2329, 2331, 7, 830, 2, 2, 2330, 2329, 3, 2, 2, 2, 2330, 2331, 3, 2, 2, 2, 2331, 2332, 3, 2, 2, 2, 2332, 2333, 7, 438, 2, 2, 2333, 2334, 7, 810, 2, 2, 2334, 2335, 5, 966, 484, 2, 2335, 2336, 7, 830, 2, 2, 2336, 2337, 7, 394, 2, 2, 2337, 2338, 7, 810, 2, 2, 2338, 2339, 7, 806, 2, 2, 2339, 2340, 7, 830, 2, 2, 2340, 2341, 7, 491, 2, 2, 2341, 2342, 7, 810, 2, 2, 2342, 2343, 7, 807, 2, 2, 2343, 2345, 7, 829, 2, 2, 2344, 2346, 7, 830, 2, 2, 2345, 2344, 3, 2, 2, 2, 2345, 2346, 3, 2, 2, 2, 2346, 2348, 3, 2, 2, 2, 2347, 2328, 3, 2, 2, 2, 2348, 2349, 3, 2, 2, 2, 2349, 2347, 3, 2, 2, 2, 2349, 2350, 3, 2, 2, 2, 2350, 173, 3, 2, 2, 2, 2351, 2352, 7, 103, 2, 2, 2352, 2353, 7, 43, 2, 2, 2353, 2354, 5, 966, 484, 2, 2354, 175, 3, 2, 2, 2, 2355, 2356, 7, 103, 2, 2, 2356, 2357, 7, 56, 2, 2, 2357, 2358, 7, 492, 2, 2, 2358, 2359, 7, 172, 2, 2, 2359, 2360, 5, 966, 484, 2, 2360, 177, 3, 2, 2, 2, 2361, 2362, 7, 103, 2, 2, 2362, 2363, 7, 56, 2, 2, 2363, 2364, 7, 189, 2, 2, 2364, 2365, 7, 172, 2, 2, 2365, 2366, 5, 966, 484, 2, 2366, 179, 3, 2, 2, 2, 2367, 2368, 7, 103, 2, 2, 2368, 2369, 7, 68, 2, 2, 2369, 2370, 5, 966, 484, 2, 2370, 181, 3, 2, 2, 2, 2371, 2372, 7, 103, 2, 2, 2372, 2373, 7, 452, 2, 2, 2373, 2374, 5, 966, 484, 2, 2374, 183, 3, 2, 2, 2, 2375, 2376, 7, 103, 2, 2, 2376, 2377, 7, 453, 2, 2, 2377, 2378, 7, 657, 2, 2, 2378, 2379, 5, 966, 484, 2, 2379, 185, 3, 2, 2, 2, 2380, 2381, 7, 103, 2, 2, 2381, 2384, 7, 84, 2, 2, 2382, 2383, 7, 153, 2, 2, 2383, 2385, 7, 119, 2, 2, 2384, 2382, 3, 2, 2, 2, 2384, 2385, 3, 2, 2, 2, 2385, 2390, 3, 2, 2, 2, 2386, 2388, 7, 830, 2, 2, 2387, 2386, 3, 2, 2, 2, 2387, 2388, 3, 2, 2, 2, 2388, 2389, 3, 2, 2, 2, 2389, 2391, 5, 966, 484, 2, 2390, 2387, 3, 2, 2, 2, 2391, 2392, 3, 2, 2, 2, 2392, 2390, 3, 2, 2, 2, 2392, 2393, 3, 2, 2, 2, 2393, 187, 3, 2, 2, 2, 2394, 2395, 7, 103, 2, 2, 2395, 2396, 7, 84, 2, 2, 2396, 2397, 7, 406, 2, 2, 2397, 2398, 7, 323, 2, 2, 2398, 2399, 5, 966, 484, 2, 2399, 189, 3, 2, 2, 2, 2400, 2401, 7, 103, 2, 2, 2401, 2402, 7, 84, 2, 2, 2402, 2403, 7, 703, 2, 2, 2403, 2404, 7, 452, 2, 2, 2404, 2405, 5, 966, 484, 2, 2405, 191, 3, 2, 2, 2, 2406, 2407, 7, 103, 2, 2, 2407, 2410, 7, 89, 2, 2, 2408, 2409, 7, 153, 2, 2, 2409, 2411, 7, 119, 2, 2, 2410, 2408, 3, 2, 2, 2, 2410, 2411, 3, 2, 2, 2, 2411, 2413, 3, 2, 2, 2, 2412, 2414, 7, 830, 2, 2, 2413, 2412, 3, 2, 2, 2, 2413, 2414, 3, 2, 2, 2, 2414, 2418, 3, 2, 2, 2, 2415, 2416, 5, 966, 484, 2, 2416, 2417, 7, 823, 2, 2, 2417, 2419, 3, 2, 2, 2, 2418, 2415, 3, 2, 2, 2, 2418, 2419, 3, 2, 2, 2, 2419, 2420, 3, 2, 2, 2, 2420, 2421, 5, 966, 484, 2, 2421, 193, 3, 2, 2, 2, 2422, 2423, 7, 103, 2, 2, 2423, 2424, 7, 109, 2, 2, 2424, 2425, 5, 966, 484, 2, 2425, 195, 3, 2, 2, 2, 2426, 2427, 7, 103, 2, 2, 2427, 2428, 7, 123, 2, 2, 2428, 2429, 7, 456, 2, 2, 2429, 2430, 7, 322, 2, 2, 2430, 2431, 5, 966, 484, 2, 2431, 197, 3, 2, 2, 2, 2432, 2433, 7, 103, 2, 2, 2433, 2434, 7, 123, 2, 2, 2434, 2435, 7, 129, 2, 2, 2435, 2436, 7, 518, 2, 2, 2436, 2437, 5, 966, 484, 2, 2437, 199, 3, 2, 2, 2, 2438, 2439, 7, 103, 2, 2, 2439, 2440, 7, 123, 2, 2, 2440, 2441, 7, 178, 2, 2, 2441, 2444, 5, 966, 484, 2, 2442, 2443, 7, 20, 2, 2, 2443, 2445, 5, 966, 484, 2, 2444, 2442, 3, 2, 2, 2, 2444, 2445, 3, 2, 2, 2, 2445, 201, 3, 2, 2, 2, 2446, 2447, 7, 103, 2, 2, 2447, 2448, 7, 123, 2, 2, 2448, 2449, 7, 690, 2, 2, 2449, 2450, 7, 645, 2, 2, 2450, 2451, 5, 966, 484, 2, 2451, 203, 3, 2, 2, 2, 2452, 2453, 7, 103, 2, 2, 2453, 2454, 7, 123, 2, 2, 2454, 2458, 7, 339, 2, 2, 2455, 2456, 5, 966, 484, 2, 2456, 2457, 7, 823, 2, 2, 2457, 2459, 3, 2, 2, 2, 2458, 2455, 3, 2, 2, 2, 2458, 2459, 3, 2, 2, 2, 2459, 2463, 3, 2, 2, 2, 2460, 2461, 5, 966, 484, 2, 2461, 2462, 7, 823, 2, 2, 2462, 2464, 3, 2, 2, 2, 2463, 2460, 3, 2, 2, 2, 2463, 2464, 3, 2, 2, 2, 2464, 2465, 3, 2, 2, 2, 2465, 2466, 5, 966, 484, 2, 2466, 205, 3, 2, 2, 2, 2467, 2468, 7, 103, 2, 2, 2468, 2469, 7, 113, 2, 2, 2469, 2474, 7, 221, 2, 2, 2470, 2472, 7, 830, 2, 2, 2471, 2470, 3, 2, 2, 2, 2471, 2472, 3, 2, 2, 2, 2472, 2473, 3, 2, 2, 2, 2473, 2475, 5, 966, 484, 2, 2474, 2471, 3, 2, 2, 2, 2475, 2476, 3, 2, 2, 2, 2476, 2474, 3, 2, 2, 2, 2476, 2477, 3, 2, 2, 2, 2477, 2478, 3, 2, 2, 2, 2478, 2483, 7, 229, 2, 2, 2479, 2484, 7, 309, 2, 2, 2480, 2484, 7, 84, 2, 2, 2481, 2482, 7, 660, 2, 2, 2482, 2484, 5, 966, 484, 2, 2483, 2479, 3, 2, 2, 2, 2483, 2480, 3, 2, 2, 2, 2483, 2481, 3, 2, 2, 2, 2484, 207, 3, 2, 2, 2, 2485, 2486, 7, 103, 2, 2, 2486, 2487, 7, 113, 2, 2, 2487, 2488, 7, 313, 2, 2, 2488, 2489, 5, 966, 484, 2, 2489, 2490, 7, 229, 2, 2, 2490, 2491, 7, 309, 2, 2, 2491, 209, 3, 2, 2, 2, 2492, 2493, 7, 103, 2, 2, 2493, 2494, 7, 521, 2, 2, 2494, 2495, 7, 430, 2, 2, 2495, 2496, 5, 966, 484, 2, 2496, 211, 3, 2, 2, 2, 2497, 2498, 7, 103, 2, 2, 2498, 2499, 7, 521, 2, 2, 2499, 2500, 7, 158, 2, 2, 2500, 2504, 7, 229, 2, 2, 2501, 2502, 5, 966, 484, 2, 2502, 2503, 7, 823, 2, 2, 2503, 2505, 3, 2, 2, 2, 2504, 2501, 3, 2, 2, 2, 2504, 2505, 3, 2, 2, 2, 2505, 2506, 3, 2, 2, 2, 2506, 2507, 5, 966, 484, 2, 2507, 213, 3, 2, 2, 2, 2508, 2509, 7, 103, 2, 2, 2509, 2510, 7, 521, 2, 2, 2510, 2511, 7, 740, 2, 2, 2511, 2512, 5, 966, 484, 2, 2512, 215, 3, 2, 2, 2, 2513, 2514, 7, 103, 2, 2, 2514, 2515, 7, 571, 2, 2, 2515, 2516, 5, 966, 484, 2, 2516, 217, 3, 2, 2, 2, 2517, 2518, 7, 103, 2, 2, 2518, 2519, 7, 189, 2, 2, 2519, 2520, 7, 172, 2, 2, 2520, 219, 3, 2, 2, 2, 2521, 2522, 7, 103, 2, 2, 2522, 2523, 7, 592, 2, 2, 2523, 2524, 7, 769, 2, 2, 2524, 2525, 5, 966, 484, 2, 2525, 221, 3, 2, 2, 2, 2526, 2527, 7, 103, 2, 2, 2527, 2528, 7, 640, 2, 2, 2528, 2529, 7, 141, 2, 2, 2529, 2530, 5, 966, 484, 2, 2530, 223, 3, 2, 2, 2, 2531, 2532, 7, 103, 2, 2, 2532, 2533, 7, 640, 2, 2, 2533, 2534, 7, 303, 2, 2, 2534, 2535, 5, 966, 484, 2, 2535, 225, 3, 2, 2, 2, 2536, 2537, 7, 103, 2, 2, 2537, 2541, 7, 660, 2, 2, 2538, 2539, 5, 966, 484, 2, 2539, 2540, 7, 823, 2, 2, 2540, 2542, 3, 2, 2, 2, 2541, 2538, 3, 2, 2, 2, 2541, 2542, 3, 2, 2, 2, 2542, 2546, 3, 2, 2, 2, 2543, 2544, 5, 966, 484, 2, 2544, 2545, 7, 823, 2, 2, 2545, 2547, 3, 2, 2, 2, 2546, 2543, 3, 2, 2, 2, 2546, 2547, 3, 2, 2, 2, 2547, 2548, 3, 2, 2, 2, 2548, 2549, 5, 966, 484, 2, 2549, 227, 3, 2, 2, 2, 2550, 2551, 7, 103, 2, 2, 2551, 2552, 7, 679, 2, 2, 2552, 2553, 7, 310, 2, 2, 2553, 2554, 7, 422, 2, 2, 2554, 2555, 5, 966, 484, 2, 2555, 229, 3, 2, 2, 2, 2556, 2557, 7, 103, 2, 2, 2557, 2558, 7, 690, 2, 2, 2558, 2559, 7, 645, 2, 2, 2559, 2560, 5, 966, 484, 2, 2560, 231, 3, 2, 2, 2, 2561, 2562, 7, 103, 2, 2, 2562, 2565, 7, 289, 2, 2, 2563, 2564, 7, 153, 2, 2, 2564, 2566, 7, 119, 2, 2, 2565, 2563, 3, 2, 2, 2, 2565, 2566, 3, 2, 2, 2, 2566, 2567, 3, 2, 2, 2, 2567, 2568, 5, 966, 484, 2, 2568, 233, 3, 2, 2, 2, 2569, 2570, 7, 103, 2, 2, 2570, 2571, 7, 696, 2, 2, 2571, 2572, 5, 966, 484, 2, 2572, 235, 3, 2, 2, 2, 2573, 2574, 7, 103, 2, 2, 2574, 2577, 7, 298, 2, 2, 2575, 2576, 7, 153, 2, 2, 2576, 2578, 7, 119, 2, 2, 2577, 2575, 3, 2, 2, 2, 2577, 2578, 3, 2, 2, 2, 2578, 2588, 3, 2, 2, 2, 2579, 2581, 7, 830, 2, 2, 2580, 2579, 3, 2, 2, 2, 2580, 2581, 3, 2, 2, 2, 2581, 2585, 3, 2, 2, 2, 2582, 2583, 5, 966, 484, 2, 2583, 2584, 7, 823, 2, 2, 2584, 2586, 3, 2, 2, 2, 2585, 2582, 3, 2, 2, 2, 2585, 2586, 3, 2, 2, 2, 2586, 2587, 3, 2, 2, 2, 2587, 2589, 5, 966, 484, 2, 2588, 2580, 3, 2, 2, 2, 2588, 2589, 3, 2, 2, 2, 2589, 237, 3, 2, 2, 2, 2590, 2591, 7, 103, 2, 2, 2591, 2594, 7, 302, 2, 2, 2592, 2593, 7, 153, 2, 2, 2593, 2595, 7, 119, 2, 2, 2594, 2592, 3, 2, 2, 2, 2594, 2595, 3, 2, 2, 2, 2595, 2596, 3, 2, 2, 2, 2596, 2597, 5, 966, 484, 2, 2597, 239, 3, 2, 2, 2, 2598, 2599, 7, 103, 2, 2, 2599, 2600, 7, 706, 2, 2, 2600, 2601, 7, 656, 2, 2, 2601, 2602, 7, 563, 2, 2, 2602, 2603, 5, 966, 484, 2, 2603, 241, 3, 2, 2, 2, 2604, 2605, 7, 103, 2, 2, 2605, 2606, 7, 712, 2, 2, 2606, 2609, 7, 253, 2, 2, 2607, 2608, 7, 153, 2, 2, 2608, 2610, 7, 119, 2, 2, 2609, 2607, 3, 2, 2, 2, 2609, 2610, 3, 2, 2, 2, 2610, 2614, 3, 2, 2, 2, 2611, 2612, 5, 966, 484, 2, 2612, 2613, 7, 823, 2, 2, 2613, 2615, 3, 2, 2, 2, 2614, 2611, 3, 2, 2, 2, 2614, 2615, 3, 2, 2, 2, 2615, 2616, 3, 2, 2, 2, 2616, 2617, 5, 966, 484, 2, 2617, 243, 3, 2, 2, 2, 2618, 2619, 7, 103, 2, 2, 2619, 2622, 7, 719, 2, 2, 2620, 2621, 7, 153, 2, 2, 2621, 2623, 7, 119, 2, 2, 2622, 2620, 3, 2, 2, 2, 2622, 2623, 3, 2, 2, 2, 2623, 2638, 3, 2, 2, 2, 2624, 2626, 7, 830, 2, 2, 2625, 2624, 3, 2, 2, 2, 2625, 2626, 3, 2, 2, 2, 2626, 2630, 3, 2, 2, 2, 2627, 2628, 5, 966, 484, 2, 2628, 2629, 7, 823, 2, 2, 2629, 2631, 3, 2, 2, 2, 2630, 2627, 3, 2, 2, 2, 2630, 2631, 3, 2, 2, 2, 2631, 2635, 3, 2, 2, 2, 2632, 2633, 5, 966, 484, 2, 2633, 2634, 7, 823, 2, 2, 2634, 2636, 3, 2, 2, 2, 2635, 2632, 3, 2, 2, 2, 2635, 2636, 3, 2, 2, 2, 2636, 2637, 3, 2, 2, 2, 2637, 2639, 5, 966, 484, 2, 2638, 2625, 3, 2, 2, 2, 2638, 2639, 3, 2, 2, 2, 2639, 245, 3, 2, 2, 2, 2640, 2641, 7, 103, 2, 2, 2641, 2642, 7, 309, 2, 2, 2642, 2643, 7, 406, 2, 2, 2643, 2644, 5, 966, 484, 2, 2644, 247, 3, 2, 2, 2, 2645, 2646, 7, 103, 2, 2, 2646, 2647, 7, 309, 2, 2, 2647, 2648, 7, 406, 2, 2, 2648, 2649, 7, 323, 2, 2, 2649, 2650, 5, 966, 484, 2, 2650, 249, 3, 2, 2, 2, 2651, 2652, 7, 103, 2, 2, 2652, 2653, 7, 309, 2, 2, 2653, 2654, 7, 289, 2, 2, 2654, 2655, 5, 966, 484, 2, 2655, 251, 3, 2, 2, 2, 2656, 2657, 7, 103, 2, 2, 2657, 2658, 7, 310, 2, 2, 2658, 2659, 5, 966, 484, 2, 2659, 253, 3, 2, 2, 2, 2660, 2662, 7, 103, 2, 2, 2661, 2663, 7, 448, 2, 2, 2662, 2661, 3, 2, 2, 2, 2662, 2663, 3, 2, 2, 2, 2663, 2664, 3, 2, 2, 2, 2664, 2665, 7, 725, 2, 2, 2665, 2669, 7, 139, 2, 2, 2666, 2667, 5, 966, 484, 2, 2667, 2668, 7, 823, 2, 2, 2668, 2670, 3, 2, 2, 2, 2669, 2666, 3, 2, 2, 2, 2669, 2670, 3, 2, 2, 2, 2670, 2671, 3, 2, 2, 2, 2671, 2672, 5, 966, 484, 2, 2672, 2684, 7, 38, 2, 2, 2673, 2675, 7, 830, 2, 2, 2674, 2673, 3, 2, 2, 2, 2674, 2675, 3, 2, 2, 2, 2675, 2676, 3, 2, 2, 2, 2676, 2677, 7, 43, 2, 2, 2677, 2685, 5, 966, 484, 2, 2678, 2680, 7, 830, 2, 2, 2679, 2678, 3, 2, 2, 2, 2679, 2680, 3, 2, 2, 2, 2680, 2681, 3, 2, 2, 2, 2681, 2682, 7, 18, 2, 2, 2682, 2683, 7, 172, 2, 2, 2683, 2685, 5, 966, 484, 2, 2684, 2674, 3, 2, 2, 2, 2684, 2679, 3, 2, 2, 2, 2685, 2686, 3, 2, 2, 2, 2686, 2684, 3, 2, 2, 2, 2686, 2687, 3, 2, 2, 2, 2687, 255, 3, 2, 2, 2, 2688, 2689, 7, 103, 2, 2, 2689, 2693, 7, 328, 2, 2, 2690, 2691, 5, 966, 484, 2, 2691, 2692, 7, 823, 2, 2, 2692, 2694, 3, 2, 2, 2, 2693, 2690, 3, 2, 2, 2, 2693, 2694, 3, 2, 2, 2, 2694, 2695, 3, 2, 2, 2, 2695, 2696, 5, 966, 484, 2, 2696, 2697, 7, 823, 2, 2, 2697, 2698, 5, 966, 484, 2, 2698, 257, 3, 2, 2, 2, 2699, 2700, 7, 103, 2, 2, 2700, 2701, 7, 747, 2, 2, 2701, 2702, 7, 172, 2, 2, 2702, 2706, 5, 966, 484, 2, 2703, 2704, 7, 681, 2, 2, 2704, 2705, 7, 657, 2, 2, 2705, 2707, 7, 172, 2, 2, 2706, 2703, 3, 2, 2, 2, 2706, 2707, 3, 2, 2, 2, 2707, 259, 3, 2, 2, 2, 2708, 2709, 7, 103, 2, 2, 2709, 2712, 7, 749, 2, 2, 2710, 2711, 7, 153, 2, 2, 2711, 2713, 7, 119, 2, 2, 2712, 2710, 3, 2, 2, 2, 2712, 2713, 3, 2, 2, 2, 2713, 2717, 3, 2, 2, 2, 2714, 2715, 5, 966, 484, 2, 2715, 2716, 7, 823, 2, 2, 2716, 2718, 3, 2, 2, 2, 2717, 2714, 3, 2, 2, 2, 2717, 2718, 3, 2, 2, 2, 2718, 2719, 3, 2, 2, 2, 2719, 2720, 5, 966, 484, 2, 2720, 261, 3, 2, 2, 2, 2721, 2722, 7, 103, 2, 2, 2722, 2725, 7, 366, 2, 2, 2723, 2724, 7, 153, 2, 2, 2724, 2726, 7, 119, 2, 2, 2725, 2723, 3, 2, 2, 2, 2725, 2726, 3, 2, 2, 2, 2726, 2727, 3, 2, 2, 2, 2727, 2728, 5, 966, 484, 2, 2728, 263, 3, 2, 2, 2, 2729, 2730, 7, 103, 2, 2, 2730, 2731, 7, 788, 2, 2, 2731, 2732, 7, 146, 2, 2, 2732, 2733, 5, 966, 484, 2, 2733, 265, 3, 2, 2, 2, 2734, 2735, 7, 103, 2, 2, 2735, 2736, 7, 789, 2, 2, 2736, 2737, 7, 302, 2, 2, 2737, 2741, 7, 437, 2, 2, 2738, 2739, 5, 966, 484, 2, 2739, 2740, 7, 823, 2, 2, 2740, 2742, 3, 2, 2, 2, 2741, 2738, 3, 2, 2, 2, 2741, 2742, 3, 2, 2, 2, 2742, 2743, 3, 2, 2, 2, 2743, 2744, 5, 966, 484, 2, 2744, 267, 3, 2, 2, 2, 2745, 2746, 7, 480, 2, 2, 2746, 2761, 7, 352, 2, 2, 2747, 2749, 7, 830, 2, 2, 2748, 2747, 3, 2, 2, 2, 2748, 2749, 3, 2, 2, 2, 2749, 2753, 3, 2, 2, 2, 2750, 2751, 5, 966, 484, 2, 2751, 2752, 7, 823, 2, 2, 2752, 2754, 3, 2, 2, 2, 2753, 2750, 3, 2, 2, 2, 2753, 2754, 3, 2, 2, 2, 2754, 2755, 3, 2, 2, 2, 2755, 2757, 5, 966, 484, 2, 2756, 2748, 3, 2, 2, 2, 2757, 2758, 3, 2, 2, 2, 2758, 2756, 3, 2, 2, 2, 2758, 2759, 3, 2, 2, 2, 2759, 2762, 3, 2, 2, 2, 2760, 2762, 7, 6, 2, 2, 2761, 2756, 3, 2, 2, 2, 2761, 2760, 3, 2, 2, 2, 2762, 2763, 3, 2, 2, 2, 2763, 2773, 7, 229, 2, 2, 2764, 2765, 5, 966, 484, 2, 2765, 2766, 7, 823, 2, 2, 2766, 2768, 3, 2, 2, 2, 2767, 2764, 3, 2, 2, 2, 2767, 2768, 3, 2, 2, 2, 2768, 2769, 3, 2, 2, 2, 2769, 2774, 5, 966, 484, 2, 2770, 2774, 7, 84, 2, 2, 2771, 2772, 7, 6, 2, 2, 2772, 2774, 7, 309, 2, 2, 2773, 2767, 3, 2, 2, 2, 2773, 2770, 3, 2, 2, 2, 2773, 2771, 3, 2, 2, 2, 2774, 269, 3, 2, 2, 2, 2775, 2776, 7, 489, 2, 2, 2776, 2791, 7, 352, 2, 2, 2777, 2779, 7, 830, 2, 2, 2778, 2777, 3, 2, 2, 2, 2778, 2779, 3, 2, 2, 2, 2779, 2783, 3, 2, 2, 2, 2780, 2781, 5, 966, 484, 2, 2781, 2782, 7, 823, 2, 2, 2782, 2784, 3, 2, 2, 2, 2783, 2780, 3, 2, 2, 2, 2783, 2784, 3, 2, 2, 2, 2784, 2785, 3, 2, 2, 2, 2785, 2787, 5, 966, 484, 2, 2786, 2778, 3, 2, 2, 2, 2787, 2788, 3, 2, 2, 2, 2788, 2786, 3, 2, 2, 2, 2788, 2789, 3, 2, 2, 2, 2789, 2792, 3, 2, 2, 2, 2790, 2792, 7, 6, 2, 2, 2791, 2786, 3, 2, 2, 2, 2791, 2790, 3, 2, 2, 2, 2792, 2793, 3, 2, 2, 2, 2793, 2803, 7, 229, 2, 2, 2794, 2795, 5, 966, 484, 2, 2795, 2796, 7, 823, 2, 2, 2796, 2798, 3, 2, 2, 2, 2797, 2794, 3, 2, 2, 2, 2797, 2798, 3, 2, 2, 2, 2798, 2799, 3, 2, 2, 2, 2799, 2804, 5, 966, 484, 2, 2800, 2804, 7, 84, 2, 2, 2801, 2802, 7, 6, 2, 2, 2802, 2804, 7, 309, 2, 2, 2803, 2797, 3, 2, 2, 2, 2803, 2800, 3, 2, 2, 2, 2803, 2801, 3, 2, 2, 2, 2804, 271, 3, 2, 2, 2, 2805, 2806, 7, 569, 2, 2, 2806, 2807, 7, 339, 2, 2, 2807, 2808, 5, 910, 456, 2, 2808, 2809, 7, 155, 2, 2, 2809, 2810, 9, 22, 2, 2, 2810, 2814, 7, 601, 2, 2, 2811, 2812, 7, 784, 2, 2, 2812, 2815, 7, 802, 2, 2, 2813, 2815, 7, 620, 2, 2, 2814, 2811, 3, 2, 2, 2, 2814, 2813, 3, 2, 2, 2, 2814, 2815, 3, 2, 2, 2, 2815, 2817, 3, 2, 2, 2, 2816, 2818, 7, 831, 2, 2, 2817, 2816, 3, 2, 2, 2, 2817, 2818, 3, 2, 2, 2, 2818, 273, 3, 2, 2, 2, 2819, 2820, 7, 353, 2, 2, 2820, 2821, 7, 339, 2, 2, 2821, 2841, 5, 910, 456, 2, 2822, 2823, 7, 377, 2, 2, 2823, 2824, 7, 828, 2, 2, 2824, 2825, 7, 641, 2, 2, 2825, 2835, 7, 828, 2, 2, 2826, 2828, 7, 830, 2, 2, 2827, 2826, 3, 2, 2, 2, 2827, 2828, 3, 2, 2, 2, 2828, 2833, 3, 2, 2, 2, 2829, 2834, 7, 802, 2, 2, 2830, 2831, 7, 802, 2, 2, 2831, 2832, 7, 346, 2, 2, 2832, 2834, 7, 802, 2, 2, 2833, 2829, 3, 2, 2, 2, 2833, 2830, 3, 2, 2, 2, 2834, 2836, 3, 2, 2, 2, 2835, 2827, 3, 2, 2, 2, 2836, 2837, 3, 2, 2, 2, 2837, 2835, 3, 2, 2, 2, 2837, 2838, 3, 2, 2, 2, 2838, 2839, 3, 2, 2, 2, 2839, 2840, 7, 829, 2, 2, 2840, 2842, 7, 829, 2, 2, 2841, 2822, 3, 2, 2, 2, 2841, 2842, 3, 2, 2, 2, 2842, 275, 3, 2, 2, 2, 2843, 2844, 7, 73, 2, 2, 2844, 2845, 7, 56, 2, 2, 2845, 2846, 7, 189, 2, 2, 2846, 2847, 7, 172, 2, 2, 2847, 2848, 5, 966, 484, 2, 2848, 2849, 7, 377, 2, 2, 2849, 2850, 7, 828, 2, 2, 2850, 2851, 7, 174, 2, 2, 2851, 2852, 7, 810, 2, 2, 2852, 2853, 7, 806, 2, 2, 2853, 2854, 7, 830, 2, 2, 2854, 2855, 7, 173, 2, 2, 2855, 2856, 7, 810, 2, 2, 2856, 2857, 7, 806, 2, 2, 2857, 2858, 7, 829, 2, 2, 2858, 277, 3, 2, 2, 2, 2859, 2860, 7, 10, 2, 2, 2860, 2861, 7, 452, 2, 2, 2861, 2862, 5, 966, 484, 2, 2862, 2863, 7, 377, 2, 2, 2863, 2864, 7, 150, 2, 2, 2864, 2865, 7, 810, 2, 2, 2865, 2870, 7, 806, 2, 2, 2866, 2867, 7, 830, 2, 2, 2867, 2868, 7, 711, 2, 2, 2868, 2869, 7, 810, 2, 2, 2869, 2871, 7, 806, 2, 2, 2870, 2866, 3, 2, 2, 2, 2870, 2871, 3, 2, 2, 2, 2871, 279, 3, 2, 2, 2, 2872, 2873, 7, 73, 2, 2, 2873, 2874, 7, 452, 2, 2, 2874, 2875, 5, 966, 484, 2, 2875, 2876, 7, 377, 2, 2, 2876, 2877, 7, 150, 2, 2, 2877, 2878, 7, 810, 2, 2, 2878, 2883, 7, 806, 2, 2, 2879, 2880, 7, 830, 2, 2, 2880, 2881, 7, 711, 2, 2, 2881, 2882, 7, 810, 2, 2, 2882, 2884, 7, 806, 2, 2, 2883, 2879, 3, 2, 2, 2, 2883, 2884, 3, 2, 2, 2, 2884, 2889, 3, 2, 2, 2, 2885, 2886, 7, 133, 2, 2, 2886, 2887, 7, 453, 2, 2, 2887, 2888, 7, 657, 2, 2, 2888, 2890, 5, 966, 484, 2, 2889, 2885, 3, 2, 2, 2, 2889, 2890, 3, 2, 2, 2, 2890, 281, 3, 2, 2, 2, 2891, 2892, 7, 10, 2, 2, 2892, 2893, 7, 453, 2, 2, 2893, 2894, 7, 657, 2, 2, 2894, 2899, 5, 966, 484, 2, 2895, 2896, 7, 139, 2, 2, 2896, 2897, 7, 129, 2, 2, 2897, 2898, 7, 810, 2, 2, 2898, 2900, 7, 806, 2, 2, 2899, 2895, 3, 2, 2, 2, 2899, 2900, 3, 2, 2, 2, 2900, 2902, 3, 2, 2, 2, 2901, 2903, 9, 23, 2, 2, 2902, 2901, 3, 2, 2, 2, 2902, 2903, 3, 2, 2, 2, 2903, 283, 3, 2, 2, 2, 2904, 2905, 7, 73, 2, 2, 2905, 2906, 7, 453, 2, 2, 2906, 2907, 7, 657, 2, 2, 2907, 2908, 5, 966, 484, 2, 2908, 2909, 7, 139, 2, 2, 2909, 2910, 7, 129, 2, 2, 2910, 2911, 7, 810, 2, 2, 2911, 2912, 7, 806, 2, 2, 2912, 285, 3, 2, 2, 2, 2913, 2914, 7, 73, 2, 2, 2914, 2915, 7, 113, 2, 2, 2915, 2916, 7, 221, 2, 2, 2916, 2917, 5, 966, 484, 2, 2917, 2922, 7, 229, 2, 2, 2918, 2923, 7, 309, 2, 2, 2919, 2923, 7, 84, 2, 2, 2920, 2921, 7, 660, 2, 2, 2921, 2923, 5, 966, 484, 2, 2922, 2918, 3, 2, 2, 2, 2922, 2919, 3, 2, 2, 2, 2922, 2920, 3, 2, 2, 2, 2923, 2926, 3, 2, 2, 2, 2924, 2925, 7, 377, 2, 2, 2925, 2927, 7, 127, 2, 2, 2926, 2924, 3, 2, 2, 2, 2926, 2927, 3, 2, 2, 2, 2927, 2928, 3, 2, 2, 2, 2928, 2933, 7, 133, 2, 2, 2929, 2931, 7, 830, 2, 2, 2930, 2929, 3, 2, 2, 2, 2930, 2931, 3, 2, 2, 2, 2931, 2932, 3, 2, 2, 2, 2932, 2934, 5, 966, 484, 2, 2933, 2930, 3, 2, 2, 2, 2934, 2935, 3, 2, 2, 2, 2935, 2933, 3, 2, 2, 2, 2935, 2936, 3, 2, 2, 2, 2936, 2937, 3, 2, 2, 2, 2937, 2938, 7, 346, 2, 2, 2938, 2939, 7, 310, 2, 2, 2939, 2940, 7, 806, 2, 2, 2940, 2941, 7, 830, 2, 2, 2941, 2942, 7, 806, 2, 2, 2942, 287, 3, 2, 2, 2, 2943, 2944, 9, 20, 2, 2, 2944, 2945, 7, 113, 2, 2, 2945, 2946, 7, 313, 2, 2, 2946, 2947, 5, 966, 484, 2, 2947, 2948, 7, 229, 2, 2, 2948, 3016, 7, 309, 2, 2, 2949, 2951, 7, 830, 2, 2, 2950, 2949, 3, 2, 2, 2, 2950, 2951, 3, 2, 2, 2, 2951, 2952, 3, 2, 2, 2, 2952, 2953, 7, 4, 2, 2, 2953, 2957, 7, 113, 2, 2, 2954, 2955, 5, 966, 484, 2, 2955, 2956, 7, 823, 2, 2, 2956, 2958, 3, 2, 2, 2, 2957, 2954, 3, 2, 2, 2, 2957, 2958, 3, 2, 2, 2, 2958, 2959, 3, 2, 2, 2, 2959, 2960, 5, 966, 484, 2, 2960, 2961, 7, 823, 2, 2, 2961, 2962, 5, 966, 484, 2, 2962, 3011, 3, 2, 2, 2, 2963, 2977, 7, 828, 2, 2, 2964, 2974, 7, 315, 2, 2, 2965, 2967, 7, 830, 2, 2, 2966, 2965, 3, 2, 2, 2, 2966, 2967, 3, 2, 2, 2, 2967, 2968, 3, 2, 2, 2, 2968, 2969, 5, 966, 484, 2, 2969, 2970, 7, 810, 2, 2, 2970, 2971, 9, 24, 2, 2, 2971, 2973, 3, 2, 2, 2, 2972, 2966, 3, 2, 2, 2, 2973, 2976, 3, 2, 2, 2, 2974, 2972, 3, 2, 2, 2, 2974, 2975, 3, 2, 2, 2, 2975, 2978, 3, 2, 2, 2, 2976, 2974, 3, 2, 2, 2, 2977, 2964, 3, 2, 2, 2, 2977, 2978, 3, 2, 2, 2, 2978, 2999, 3, 2, 2, 2, 2979, 2980, 7, 384, 2, 2, 2980, 2993, 7, 828, 2, 2, 2981, 2983, 7, 830, 2, 2, 2982, 2981, 3, 2, 2, 2, 2982, 2983, 3, 2, 2, 2, 2983, 2987, 3, 2, 2, 2, 2984, 2985, 5, 966, 484, 2, 2985, 2986, 7, 823, 2, 2, 2986, 2988, 3, 2, 2, 2, 2987, 2984, 3, 2, 2, 2, 2987, 2988, 3, 2, 2, 2, 2988, 2989, 3, 2, 2, 2, 2989, 2990, 5, 966, 484, 2, 2990, 2991, 7, 823, 2, 2, 2991, 2992, 5, 966, 484, 2, 2992, 2994, 3, 2, 2, 2, 2993, 2982, 3, 2, 2, 2, 2994, 2995, 3, 2, 2, 2, 2995, 2993, 3, 2, 2, 2, 2995, 2996, 3, 2, 2, 2, 2996, 2997, 3, 2, 2, 2, 2997, 2998, 7, 829, 2, 2, 2998, 3000, 3, 2, 2, 2, 2999, 2979, 3, 2, 2, 2, 3000, 3001, 3, 2, 2, 2, 3001, 2999, 3, 2, 2, 2, 3001, 3002, 3, 2, 2, 2, 3002, 3005, 3, 2, 2, 2, 3003, 3004, 7, 374, 2, 2, 3004, 3006, 5, 290, 146, 2, 3005, 3003, 3, 2, 2, 2, 3005, 3006, 3, 2, 2, 2, 3006, 3007, 3, 2, 2, 2, 3007, 3008, 7, 829, 2, 2, 3008, 3010, 3, 2, 2, 2, 3009, 2963, 3, 2, 2, 2, 3010, 3013, 3, 2, 2, 2, 3011, 3009, 3, 2, 2, 2, 3011, 3012, 3, 2, 2, 2, 3012, 3015, 3, 2, 2, 2, 3013, 3011, 3, 2, 2, 2, 3014, 2950, 3, 2, 2, 2, 3015, 3018, 3, 2, 2, 2, 3016, 3014, 3, 2, 2, 2, 3016, 3017, 3, 2, 2, 2, 3017, 3035, 3, 2, 2, 2, 3018, 3016, 3, 2, 2, 2, 3019, 3021, 7, 830, 2, 2, 3020, 3019, 3, 2, 2, 2, 3020, 3021, 3, 2, 2, 2, 3021, 3022, 3, 2, 2, 2, 3022, 3023, 7, 103, 2, 2, 3023, 3027, 7, 113, 2, 2, 3024, 3025, 5, 966, 484, 2, 3025, 3026, 7, 823, 2, 2, 3026, 3028, 3, 2, 2, 2, 3027, 3024, 3, 2, 2, 2, 3027, 3028, 3, 2, 2, 2, 3028, 3029, 3, 2, 2, 2, 3029, 3030, 5, 966, 484, 2, 3030, 3031, 7, 823, 2, 2, 3031, 3032, 5, 966, 484, 2, 3032, 3034, 3, 2, 2, 2, 3033, 3020, 3, 2, 2, 2, 3034, 3037, 3, 2, 2, 2, 3035, 3033, 3, 2, 2, 2, 3035, 3036, 3, 2, 2, 2, 3036, 3079, 3, 2, 2, 2, 3037, 3035, 3, 2, 2, 2, 3038, 3039, 7, 4, 2, 2, 3039, 3043, 7, 342, 2, 2, 3040, 3041, 5, 966, 484, 2, 3041, 3042, 7, 823, 2, 2, 3042, 3044, 3, 2, 2, 2, 3043, 3040, 3, 2, 2, 2, 3043, 3044, 3, 2, 2, 2, 3044, 3045, 3, 2, 2, 2, 3045, 3046, 5, 966, 484, 2, 3046, 3047, 7, 823, 2, 2, 3047, 3048, 5, 966, 484, 2, 3048, 3074, 3, 2, 2, 2, 3049, 3050, 7, 828, 2, 2, 3050, 3066, 7, 315, 2, 2, 3051, 3053, 7, 830, 2, 2, 3052, 3051, 3, 2, 2, 2, 3052, 3053, 3, 2, 2, 2, 3053, 3054, 3, 2, 2, 2, 3054, 3055, 5, 966, 484, 2, 3055, 3064, 7, 810, 2, 2, 3056, 3058, 7, 828, 2, 2, 3057, 3056, 3, 2, 2, 2, 3057, 3058, 3, 2, 2, 2, 3058, 3059, 3, 2, 2, 2, 3059, 3061, 7, 802, 2, 2, 3060, 3062, 7, 829, 2, 2, 3061, 3060, 3, 2, 2, 2, 3061, 3062, 3, 2, 2, 2, 3062, 3065, 3, 2, 2, 2, 3063, 3065, 7, 806, 2, 2, 3064, 3057, 3, 2, 2, 2, 3064, 3063, 3, 2, 2, 2, 3065, 3067, 3, 2, 2, 2, 3066, 3052, 3, 2, 2, 2, 3067, 3068, 3, 2, 2, 2, 3068, 3066, 3, 2, 2, 2, 3068, 3069, 3, 2, 2, 2, 3069, 3070, 3, 2, 2, 2, 3070, 3071, 7, 829, 2, 2, 3071, 3073, 3, 2, 2, 2, 3072, 3049, 3, 2, 2, 2, 3073, 3076, 3, 2, 2, 2, 3074, 3072, 3, 2, 2, 2, 3074, 3075, 3, 2, 2, 2, 3075, 3078, 3, 2, 2, 2, 3076, 3074, 3, 2, 2, 2, 3077, 3038, 3, 2, 2, 2, 3078, 3081, 3, 2, 2, 2, 3079, 3077, 3, 2, 2, 2, 3079, 3080, 3, 2, 2, 2, 3080, 3095, 3, 2, 2, 2, 3081, 3079, 3, 2, 2, 2, 3082, 3083, 7, 103, 2, 2, 3083, 3087, 7, 342, 2, 2, 3084, 3085, 5, 966, 484, 2, 3085, 3086, 7, 823, 2, 2, 3086, 3088, 3, 2, 2, 2, 3087, 3084, 3, 2, 2, 2, 3087, 3088, 3, 2, 2, 2, 3088, 3089, 3, 2, 2, 2, 3089, 3090, 5, 966, 484, 2, 3090, 3091, 7, 823, 2, 2, 3091, 3092, 5, 966, 484, 2, 3092, 3094, 3, 2, 2, 2, 3093, 3082, 3, 2, 2, 2, 3094, 3097, 3, 2, 2, 2, 3095, 3093, 3, 2, 2, 2, 3095, 3096, 3, 2, 2, 2, 3096, 3163, 3, 2, 2, 2, 3097, 3095, 3, 2, 2, 2, 3098, 3099, 7, 377, 2, 2, 3099, 3107, 7, 828, 2, 2, 3100, 3102, 7, 830, 2, 2, 3101, 3100, 3, 2, 2, 2, 3101, 3102, 3, 2, 2, 2, 3102, 3103, 3, 2, 2, 2, 3103, 3104, 7, 190, 2, 2, 3104, 3105, 7, 810, 2, 2, 3105, 3106, 7, 802, 2, 2, 3106, 3108, 9, 25, 2, 2, 3107, 3101, 3, 2, 2, 2, 3107, 3108, 3, 2, 2, 2, 3108, 3115, 3, 2, 2, 2, 3109, 3111, 7, 830, 2, 2, 3110, 3109, 3, 2, 2, 2, 3110, 3111, 3, 2, 2, 2, 3111, 3112, 3, 2, 2, 2, 3112, 3113, 7, 115, 2, 2, 3113, 3114, 7, 810, 2, 2, 3114, 3116, 9, 26, 2, 2, 3115, 3110, 3, 2, 2, 2, 3115, 3116, 3, 2, 2, 2, 3116, 3127, 3, 2, 2, 2, 3117, 3119, 7, 830, 2, 2, 3118, 3117, 3, 2, 2, 2, 3118, 3119, 3, 2, 2, 2, 3119, 3120, 3, 2, 2, 2, 3120, 3121, 7, 193, 2, 2, 3121, 3125, 7, 810, 2, 2, 3122, 3123, 7, 802, 2, 2, 3123, 3126, 7, 710, 2, 2, 3124, 3126, 7, 159, 2, 2, 3125, 3122, 3, 2, 2, 2, 3125, 3124, 3, 2, 2, 2, 3126, 3128, 3, 2, 2, 2, 3127, 3118, 3, 2, 2, 2, 3127, 3128, 3, 2, 2, 2, 3128, 3136, 3, 2, 2, 2, 3129, 3131, 7, 830, 2, 2, 3130, 3129, 3, 2, 2, 2, 3130, 3131, 3, 2, 2, 2, 3131, 3132, 3, 2, 2, 2, 3132, 3133, 7, 194, 2, 2, 3133, 3134, 7, 810, 2, 2, 3134, 3135, 7, 802, 2, 2, 3135, 3137, 9, 25, 2, 2, 3136, 3130, 3, 2, 2, 2, 3136, 3137, 3, 2, 2, 2, 3137, 3144, 3, 2, 2, 2, 3138, 3140, 7, 830, 2, 2, 3139, 3138, 3, 2, 2, 2, 3139, 3140, 3, 2, 2, 2, 3140, 3141, 3, 2, 2, 2, 3141, 3142, 7, 200, 2, 2, 3142, 3143, 7, 810, 2, 2, 3143, 3145, 9, 27, 2, 2, 3144, 3139, 3, 2, 2, 2, 3144, 3145, 3, 2, 2, 2, 3145, 3152, 3, 2, 2, 2, 3146, 3148, 7, 830, 2, 2, 3147, 3146, 3, 2, 2, 2, 3147, 3148, 3, 2, 2, 2, 3148, 3149, 3, 2, 2, 2, 3149, 3150, 7, 348, 2, 2, 3150, 3151, 7, 810, 2, 2, 3151, 3153, 9, 9, 2, 2, 3152, 3147, 3, 2, 2, 2, 3152, 3153, 3, 2, 2, 2, 3153, 3160, 3, 2, 2, 2, 3154, 3156, 7, 830, 2, 2, 3155, 3154, 3, 2, 2, 2, 3155, 3156, 3, 2, 2, 2, 3156, 3157, 3, 2, 2, 2, 3157, 3158, 7, 333, 2, 2, 3158, 3159, 7, 810, 2, 2, 3159, 3161, 9, 9, 2, 2, 3160, 3155, 3, 2, 2, 2, 3160, 3161, 3, 2, 2, 2, 3161, 3162, 3, 2, 2, 2, 3162, 3164, 7, 829, 2, 2, 3163, 3098, 3, 2, 2, 2, 3163, 3164, 3, 2, 2, 2, 3164, 3168, 3, 2, 2, 2, 3165, 3166, 7, 329, 2, 2, 3166, 3167, 7, 810, 2, 2, 3167, 3169, 9, 28, 2, 2, 3168, 3165, 3, 2, 2, 2, 3168, 3169, 3, 2, 2, 2, 3169, 289, 3, 2, 2, 2, 3170, 3172, 7, 830, 2, 2, 3171, 3170, 3, 2, 2, 2, 3171, 3172, 3, 2, 2, 2, 3172, 3174, 3, 2, 2, 2, 3173, 3175, 9, 29, 2, 2, 3174, 3173, 3, 2, 2, 2, 3174, 3175, 3, 2, 2, 2, 3175, 3177, 3, 2, 2, 2, 3176, 3178, 7, 220, 2, 2, 3177, 3176, 3, 2, 2, 2, 3177, 3178, 3, 2, 2, 2, 3178, 3184, 3, 2, 2, 2, 3179, 3185, 5, 292, 147, 2, 3180, 3181, 7, 828, 2, 2, 3181, 3182, 5, 290, 146, 2, 3182, 3183, 7, 829, 2, 2, 3183, 3185, 3, 2, 2, 2, 3184, 3179, 3, 2, 2, 2, 3184, 3180, 3, 2, 2, 2, 3185, 3187, 3, 2, 2, 2, 3186, 3171, 3, 2, 2, 2, 3187, 3188, 3, 2, 2, 2, 3188, 3186, 3, 2, 2, 2, 3188, 3189, 3, 2, 2, 2, 3189, 291, 3, 2, 2, 2, 3190, 3196, 5, 294, 148, 2, 3191, 3192, 7, 828, 2, 2, 3192, 3193, 5, 290, 146, 2, 3193, 3194, 7, 829, 2, 2, 3194, 3196, 3, 2, 2, 2, 3195, 3190, 3, 2, 2, 2, 3195, 3191, 3, 2, 2, 2, 3196, 293, 3, 2, 2, 2, 3197, 3226, 5, 966, 484, 2, 3198, 3209, 5, 966, 484, 2, 3199, 3200, 5, 966, 484, 2, 3200, 3201, 7, 823, 2, 2, 3201, 3203, 3, 2, 2, 2, 3202, 3199, 3, 2, 2, 2, 3202, 3203, 3, 2, 2, 2, 3203, 3204, 3, 2, 2, 2, 3204, 3205, 5, 966, 484, 2, 3205, 3206, 7, 823, 2, 2, 3206, 3207, 5, 966, 484, 2, 3207, 3209, 3, 2, 2, 2, 3208, 3198, 3, 2, 2, 2, 3208, 3202, 3, 2, 2, 2, 3209, 3221, 3, 2, 2, 2, 3210, 3222, 7, 810, 2, 2, 3211, 3212, 7, 812, 2, 2, 3212, 3222, 7, 811, 2, 2, 3213, 3214, 7, 813, 2, 2, 3214, 3222, 7, 810, 2, 2, 3215, 3222, 7, 811, 2, 2, 3216, 3217, 7, 811, 2, 2, 3217, 3222, 7, 810, 2, 2, 3218, 3222, 7, 812, 2, 2, 3219, 3220, 7, 812, 2, 2, 3220, 3222, 7, 810, 2, 2, 3221, 3210, 3, 2, 2, 2, 3221, 3211, 3, 2, 2, 2, 3221, 3213, 3, 2, 2, 2, 3221, 3215, 3, 2, 2, 2, 3221, 3216, 3, 2, 2, 2, 3221, 3218, 3, 2, 2, 2, 3221, 3219, 3, 2, 2, 2, 3222, 3223, 3, 2, 2, 2, 3223, 3224, 9, 24, 2, 2, 3224, 3226, 3, 2, 2, 2, 3225, 3197, 3, 2, 2, 2, 3225, 3208, 3, 2, 2, 2, 3226, 3254, 3, 2, 2, 2, 3227, 3228, 5, 966, 484, 2, 3228, 3229, 7, 823, 2, 2, 3229, 3231, 3, 2, 2, 2, 3230, 3227, 3, 2, 2, 2, 3230, 3231, 3, 2, 2, 2, 3231, 3232, 3, 2, 2, 2, 3232, 3233, 5, 966, 484, 2, 3233, 3234, 7, 823, 2, 2, 3234, 3235, 5, 966, 484, 2, 3235, 3249, 7, 828, 2, 2, 3236, 3250, 5, 966, 484, 2, 3237, 3238, 5, 966, 484, 2, 3238, 3239, 7, 823, 2, 2, 3239, 3241, 3, 2, 2, 2, 3240, 3237, 3, 2, 2, 2, 3240, 3241, 3, 2, 2, 2, 3241, 3242, 3, 2, 2, 2, 3242, 3243, 5, 966, 484, 2, 3243, 3244, 7, 823, 2, 2, 3244, 3245, 5, 966, 484, 2, 3245, 3246, 3, 2, 2, 2, 3246, 3247, 7, 830, 2, 2, 3247, 3248, 9, 24, 2, 2, 3248, 3250, 3, 2, 2, 2, 3249, 3236, 3, 2, 2, 2, 3249, 3240, 3, 2, 2, 2, 3250, 3251, 3, 2, 2, 2, 3251, 3252, 7, 829, 2, 2, 3252, 3254, 3, 2, 2, 2, 3253, 3225, 3, 2, 2, 2, 3253, 3230, 3, 2, 2, 2, 3254, 295, 3, 2, 2, 2, 3255, 3256, 7, 10, 2, 2, 3256, 3257, 7, 123, 2, 2, 3257, 3258, 7, 456, 2, 2, 3258, 3259, 7, 322, 2, 2, 3259, 3260, 5, 966, 484, 2, 3260, 3276, 7, 315, 2, 2, 3261, 3262, 7, 568, 2, 2, 3262, 3263, 7, 810, 2, 2, 3263, 3265, 9, 30, 2, 2, 3264, 3266, 7, 830, 2, 2, 3265, 3264, 3, 2, 2, 2, 3265, 3266, 3, 2, 2, 2, 3266, 3277, 3, 2, 2, 2, 3267, 3268, 7, 691, 2, 2, 3268, 3269, 7, 810, 2, 2, 3269, 3271, 9, 30, 2, 2, 3270, 3272, 7, 830, 2, 2, 3271, 3270, 3, 2, 2, 2, 3271, 3272, 3, 2, 2, 2, 3272, 3277, 3, 2, 2, 2, 3273, 3274, 7, 452, 2, 2, 3274, 3275, 7, 810, 2, 2, 3275, 3277, 5, 966, 484, 2, 3276, 3261, 3, 2, 2, 2, 3276, 3267, 3, 2, 2, 2, 3276, 3273, 3, 2, 2, 2, 3277, 3278, 3, 2, 2, 2, 3278, 3276, 3, 2, 2, 2, 3278, 3279, 3, 2, 2, 2, 3279, 3303, 3, 2, 2, 2, 3280, 3281, 7, 10, 2, 2, 3281, 3282, 7, 123, 2, 2, 3282, 3283, 7, 456, 2, 2, 3283, 3284, 7, 322, 2, 2, 3284, 3285, 5, 966, 484, 2, 3285, 3286, 7, 377, 2, 2, 3286, 3287, 7, 828, 2, 2, 3287, 3288, 7, 769, 2, 2, 3288, 3289, 7, 810, 2, 2, 3289, 3290, 7, 423, 2, 2, 3290, 3291, 7, 830, 2, 2, 3291, 3292, 7, 568, 2, 2, 3292, 3293, 7, 810, 2, 2, 3293, 3298, 7, 806, 2, 2, 3294, 3295, 7, 830, 2, 2, 3295, 3296, 7, 452, 2, 2, 3296, 3297, 7, 810, 2, 2, 3297, 3299, 5, 966, 484, 2, 3298, 3294, 3, 2, 2, 2, 3298, 3299, 3, 2, 2, 2, 3299, 3300, 3, 2, 2, 2, 3300, 3301, 7, 829, 2, 2, 3301, 3303, 3, 2, 2, 2, 3302, 3255, 3, 2, 2, 2, 3302, 3280, 3, 2, 2, 2, 3303, 297, 3, 2, 2, 2, 3304, 3305, 7, 10, 2, 2, 3305, 3306, 7, 123, 2, 2, 3306, 3307, 7, 178, 2, 2, 3307, 3310, 5, 966, 484, 2, 3308, 3309, 7, 20, 2, 2, 3309, 3311, 5, 966, 484, 2, 3310, 3308, 3, 2, 2, 2, 3310, 3311, 3, 2, 2, 2, 3311, 3312, 3, 2, 2, 2, 3312, 3313, 9, 31, 2, 2, 3313, 3314, 7, 828, 2, 2, 3314, 3315, 7, 443, 2, 2, 3315, 3319, 7, 810, 2, 2, 3316, 3320, 7, 806, 2, 2, 3317, 3320, 7, 807, 2, 2, 3318, 3320, 7, 213, 2, 2, 3319, 3316, 3, 2, 2, 2, 3319, 3317, 3, 2, 2, 2, 3319, 3318, 3, 2, 2, 2, 3320, 3321, 3, 2, 2, 2, 3321, 3322, 7, 830, 2, 2, 3322, 3323, 7, 252, 2, 2, 3323, 3325, 7, 810, 2, 2, 3324, 3326, 9, 32, 2, 2, 3325, 3324, 3, 2, 2, 2, 3325, 3326, 3, 2, 2, 2, 3326, 3327, 3, 2, 2, 2, 3327, 3328, 7, 829, 2, 2, 3328, 3329, 3, 2, 2, 2, 3329, 3339, 7, 377, 2, 2, 3330, 3332, 7, 830, 2, 2, 3331, 3330, 3, 2, 2, 2, 3331, 3332, 3, 2, 2, 2, 3332, 3333, 3, 2, 2, 2, 3333, 3334, 7, 176, 2, 2, 3334, 3335, 7, 810, 2, 2, 3335, 3340, 9, 33, 2, 2, 3336, 3337, 7, 83, 2, 2, 3337, 3338, 7, 810, 2, 2, 3338, 3340, 5, 966, 484, 2, 3339, 3331, 3, 2, 2, 2, 3339, 3336, 3, 2, 2, 2, 3340, 3341, 3, 2, 2, 2, 3341, 3339, 3, 2, 2, 2, 3341, 3342, 3, 2, 2, 2, 3342, 3343, 3, 2, 2, 2, 3343, 3344, 7, 829, 2, 2, 3344, 299, 3, 2, 2, 2, 3345, 3346, 7, 73, 2, 2, 3346, 3347, 7, 123, 2, 2, 3347, 3348, 7, 178, 2, 2, 3348, 3351, 5, 966, 484, 2, 3349, 3350, 7, 20, 2, 2, 3350, 3352, 5, 966, 484, 2, 3351, 3349, 3, 2, 2, 2, 3351, 3352, 3, 2, 2, 2, 3352, 3353, 3, 2, 2, 2, 3353, 3355, 7, 139, 2, 2, 3354, 3356, 7, 830, 2, 2, 3355, 3354, 3, 2, 2, 2, 3355, 3356, 3, 2, 2, 2, 3356, 3358, 3, 2, 2, 2, 3357, 3359, 7, 828, 2, 2, 3358, 3357, 3, 2, 2, 2, 3358, 3359, 3, 2, 2, 2, 3359, 3362, 3, 2, 2, 2, 3360, 3361, 7, 443, 2, 2, 3361, 3363, 7, 810, 2, 2, 3362, 3360, 3, 2, 2, 2, 3362, 3363, 3, 2, 2, 2, 3363, 3367, 3, 2, 2, 2, 3364, 3368, 7, 806, 2, 2, 3365, 3368, 7, 807, 2, 2, 3366, 3368, 7, 213, 2, 2, 3367, 3364, 3, 2, 2, 2, 3367, 3365, 3, 2, 2, 2, 3367, 3366, 3, 2, 2, 2, 3368, 3376, 3, 2, 2, 2, 3369, 3370, 7, 830, 2, 2, 3370, 3371, 7, 252, 2, 2, 3371, 3373, 7, 810, 2, 2, 3372, 3374, 9, 32, 2, 2, 3373, 3372, 3, 2, 2, 2, 3373, 3374, 3, 2, 2, 2, 3374, 3375, 3, 2, 2, 2, 3375, 3377, 7, 829, 2, 2, 3376, 3369, 3, 2, 2, 2, 3376, 3377, 3, 2, 2, 2, 3377, 3393, 3, 2, 2, 2, 3378, 3388, 7, 377, 2, 2, 3379, 3381, 7, 830, 2, 2, 3380, 3379, 3, 2, 2, 2, 3380, 3381, 3, 2, 2, 2, 3381, 3382, 3, 2, 2, 2, 3382, 3383, 7, 176, 2, 2, 3383, 3384, 7, 810, 2, 2, 3384, 3389, 9, 33, 2, 2, 3385, 3386, 7, 83, 2, 2, 3386, 3387, 7, 810, 2, 2, 3387, 3389, 5, 966, 484, 2, 3388, 3380, 3, 2, 2, 2, 3388, 3385, 3, 2, 2, 2, 3389, 3390, 3, 2, 2, 2, 3390, 3388, 3, 2, 2, 2, 3390, 3391, 3, 2, 2, 2, 3391, 3392, 3, 2, 2, 2, 3392, 3394, 7, 829, 2, 2, 3393, 3378, 3, 2, 2, 2, 3393, 3394, 3, 2, 2, 2, 3394, 301, 3, 2, 2, 2, 3395, 3396, 7, 10, 2, 2, 3396, 3397, 7, 123, 2, 2, 3397, 3398, 7, 690, 2, 2, 3398, 3401, 7, 645, 2, 2, 3399, 3402, 5, 966, 484, 2, 3400, 3402, 7, 466, 2, 2, 3401, 3399, 3, 2, 2, 2, 3401, 3400, 3, 2, 2, 2, 3402, 3403, 3, 2, 2, 2, 3403, 3404, 7, 377, 2, 2, 3404, 3405, 7, 828, 2, 2, 3405, 3406, 7, 578, 2, 2, 3406, 3407, 7, 810, 2, 2, 3407, 3445, 7, 802, 2, 2, 3408, 3410, 7, 830, 2, 2, 3409, 3408, 3, 2, 2, 2, 3409, 3410, 3, 2, 2, 2, 3410, 3411, 3, 2, 2, 2, 3411, 3412, 7, 391, 2, 2, 3412, 3413, 7, 449, 2, 2, 3413, 3427, 7, 810, 2, 2, 3414, 3428, 7, 408, 2, 2, 3415, 3417, 7, 830, 2, 2, 3416, 3415, 3, 2, 2, 2, 3416, 3417, 3, 2, 2, 2, 3417, 3418, 3, 2, 2, 2, 3418, 3419, 7, 802, 2, 2, 3419, 3420, 7, 346, 2, 2, 3420, 3424, 7, 802, 2, 2, 3421, 3422, 7, 830, 2, 2, 3422, 3424, 7, 802, 2, 2, 3423, 3416, 3, 2, 2, 2, 3423, 3421, 3, 2, 2, 2, 3424, 3425, 3, 2, 2, 2, 3425, 3423, 3, 2, 2, 2, 3425, 3426, 3, 2, 2, 2, 3426, 3428, 3, 2, 2, 2, 3427, 3414, 3, 2, 2, 2, 3427, 3423, 3, 2, 2, 2, 3428, 3446, 3, 2, 2, 2, 3429, 3430, 7, 622, 2, 2, 3430, 3441, 7, 810, 2, 2, 3431, 3433, 7, 830, 2, 2, 3432, 3431, 3, 2, 2, 2, 3432, 3433, 3, 2, 2, 2, 3433, 3434, 3, 2, 2, 2, 3434, 3435, 7, 802, 2, 2, 3435, 3436, 7, 346, 2, 2, 3436, 3442, 7, 802, 2, 2, 3437, 3439, 7, 830, 2, 2, 3438, 3437, 3, 2, 2, 2, 3438, 3439, 3, 2, 2, 2, 3439, 3440, 3, 2, 2, 2, 3440, 3442, 7, 802, 2, 2, 3441, 3432, 3, 2, 2, 2, 3441, 3438, 3, 2, 2, 2, 3442, 3443, 3, 2, 2, 2, 3443, 3441, 3, 2, 2, 2, 3443, 3444, 3, 2, 2, 2, 3444, 3446, 3, 2, 2, 2, 3445, 3409, 3, 2, 2, 2, 3445, 3429, 3, 2, 2, 2, 3446, 3453, 3, 2, 2, 2, 3447, 3449, 7, 830, 2, 2, 3448, 3447, 3, 2, 2, 2, 3448, 3449, 3, 2, 2, 2, 3449, 3450, 3, 2, 2, 2, 3450, 3451, 7, 582, 2, 2, 3451, 3452, 7, 810, 2, 2, 3452, 3454, 7, 802, 2, 2, 3453, 3448, 3, 2, 2, 2, 3453, 3454, 3, 2, 2, 2, 3454, 3461, 3, 2, 2, 2, 3455, 3457, 7, 830, 2, 2, 3456, 3455, 3, 2, 2, 2, 3456, 3457, 3, 2, 2, 2, 3457, 3458, 3, 2, 2, 2, 3458, 3459, 7, 583, 2, 2, 3459, 3460, 7, 810, 2, 2, 3460, 3462, 7, 802, 2, 2, 3461, 3456, 3, 2, 2, 2, 3461, 3462, 3, 2, 2, 2, 3462, 3463, 3, 2, 2, 2, 3463, 3464, 7, 829, 2, 2, 3464, 303, 3, 2, 2, 2, 3465, 3466, 7, 73, 2, 2, 3466, 3467, 7, 123, 2, 2, 3467, 3468, 7, 690, 2, 2, 3468, 3469, 7, 645, 2, 2, 3469, 3470, 5, 966, 484, 2, 3470, 3471, 7, 377, 2, 2, 3471, 3472, 7, 828, 2, 2, 3472, 3473, 7, 578, 2, 2, 3473, 3474, 7, 810, 2, 2, 3474, 3512, 7, 802, 2, 2, 3475, 3477, 7, 830, 2, 2, 3476, 3475, 3, 2, 2, 2, 3476, 3477, 3, 2, 2, 2, 3477, 3478, 3, 2, 2, 2, 3478, 3479, 7, 391, 2, 2, 3479, 3480, 7, 449, 2, 2, 3480, 3494, 7, 810, 2, 2, 3481, 3495, 7, 408, 2, 2, 3482, 3484, 7, 830, 2, 2, 3483, 3482, 3, 2, 2, 2, 3483, 3484, 3, 2, 2, 2, 3484, 3485, 3, 2, 2, 2, 3485, 3486, 7, 802, 2, 2, 3486, 3487, 7, 346, 2, 2, 3487, 3491, 7, 802, 2, 2, 3488, 3489, 7, 830, 2, 2, 3489, 3491, 7, 802, 2, 2, 3490, 3483, 3, 2, 2, 2, 3490, 3488, 3, 2, 2, 2, 3491, 3492, 3, 2, 2, 2, 3492, 3490, 3, 2, 2, 2, 3492, 3493, 3, 2, 2, 2, 3493, 3495, 3, 2, 2, 2, 3494, 3481, 3, 2, 2, 2, 3494, 3490, 3, 2, 2, 2, 3495, 3513, 3, 2, 2, 2, 3496, 3497, 7, 622, 2, 2, 3497, 3508, 7, 810, 2, 2, 3498, 3500, 7, 830, 2, 2, 3499, 3498, 3, 2, 2, 2, 3499, 3500, 3, 2, 2, 2, 3500, 3501, 3, 2, 2, 2, 3501, 3502, 7, 802, 2, 2, 3502, 3503, 7, 346, 2, 2, 3503, 3509, 7, 802, 2, 2, 3504, 3506, 7, 830, 2, 2, 3505, 3504, 3, 2, 2, 2, 3505, 3506, 3, 2, 2, 2, 3506, 3507, 3, 2, 2, 2, 3507, 3509, 7, 802, 2, 2, 3508, 3499, 3, 2, 2, 2, 3508, 3505, 3, 2, 2, 2, 3509, 3510, 3, 2, 2, 2, 3510, 3508, 3, 2, 2, 2, 3510, 3511, 3, 2, 2, 2, 3511, 3513, 3, 2, 2, 2, 3512, 3476, 3, 2, 2, 2, 3512, 3496, 3, 2, 2, 2, 3513, 3520, 3, 2, 2, 2, 3514, 3516, 7, 830, 2, 2, 3515, 3514, 3, 2, 2, 2, 3515, 3516, 3, 2, 2, 2, 3516, 3517, 3, 2, 2, 2, 3517, 3518, 7, 582, 2, 2, 3518, 3519, 7, 810, 2, 2, 3519, 3521, 7, 802, 2, 2, 3520, 3515, 3, 2, 2, 2, 3520, 3521, 3, 2, 2, 2, 3521, 3528, 3, 2, 2, 2, 3522, 3524, 7, 830, 2, 2, 3523, 3522, 3, 2, 2, 2, 3523, 3524, 3, 2, 2, 2, 3524, 3525, 3, 2, 2, 2, 3525, 3526, 7, 583, 2, 2, 3526, 3527, 7, 810, 2, 2, 3527, 3529, 7, 802, 2, 2, 3528, 3523, 3, 2, 2, 2, 3528, 3529, 3, 2, 2, 2, 3529, 3530, 3, 2, 2, 2, 3530, 3531, 7, 829, 2, 2, 3531, 305, 3, 2, 2, 2, 3532, 3533, 7, 10, 2, 2, 3533, 3534, 7, 521, 2, 2, 3534, 3535, 7, 430, 2, 2, 3535, 3546, 5, 966, 484, 2, 3536, 3541, 7, 673, 2, 2, 3537, 3538, 7, 377, 2, 2, 3538, 3539, 7, 383, 2, 2, 3539, 3540, 7, 810, 2, 2, 3540, 3542, 9, 9, 2, 2, 3541, 3537, 3, 2, 2, 2, 3541, 3542, 3, 2, 2, 2, 3542, 3547, 3, 2, 2, 2, 3543, 3547, 7, 682, 2, 2, 3544, 3545, 7, 16, 2, 2, 3545, 3547, 7, 89, 2, 2, 3546, 3536, 3, 2, 2, 2, 3546, 3543, 3, 2, 2, 2, 3546, 3544, 3, 2, 2, 2, 3547, 307, 3, 2, 2, 2, 3548, 3549, 7, 73, 2, 2, 3549, 3550, 7, 521, 2, 2, 3550, 3551, 7, 430, 2, 2, 3551, 3555, 5, 966, 484, 2, 3552, 3553, 7, 229, 2, 2, 3553, 3554, 7, 507, 2, 2, 3554, 3556, 5, 966, 484, 2, 3555, 3552, 3, 2, 2, 2, 3555, 3556, 3, 2, 2, 2, 3556, 3560, 3, 2, 2, 2, 3557, 3558, 7, 155, 2, 2, 3558, 3559, 7, 643, 2, 2, 3559, 3561, 7, 806, 2, 2, 3560, 3557, 3, 2, 2, 2, 3560, 3561, 3, 2, 2, 2, 3561, 3566, 3, 2, 2, 2, 3562, 3563, 7, 377, 2, 2, 3563, 3564, 7, 383, 2, 2, 3564, 3565, 7, 810, 2, 2, 3565, 3567, 9, 9, 2, 2, 3566, 3562, 3, 2, 2, 2, 3566, 3567, 3, 2, 2, 2, 3567, 3570, 3, 2, 2, 2, 3568, 3569, 7, 16, 2, 2, 3569, 3571, 7, 89, 2, 2, 3570, 3568, 3, 2, 2, 2, 3570, 3571, 3, 2, 2, 2, 3571, 3574, 3, 2, 2, 2, 3572, 3573, 7, 20, 2, 2, 3573, 3575, 5, 966, 484, 2, 3574, 3572, 3, 2, 2, 2, 3574, 3575, 3, 2, 2, 2, 3575, 309, 3, 2, 2, 2, 3576, 3577, 7, 10, 2, 2, 3577, 3578, 7, 521, 2, 2, 3578, 3579, 7, 740, 2, 2, 3579, 3593, 5, 966, 484, 2, 3580, 3581, 7, 4, 2, 2, 3581, 3582, 7, 806, 2, 2, 3582, 3583, 7, 176, 2, 2, 3583, 3594, 9, 34, 2, 2, 3584, 3591, 7, 103, 2, 2, 3585, 3586, 7, 806, 2, 2, 3586, 3587, 7, 176, 2, 2, 3587, 3592, 9, 34, 2, 2, 3588, 3589, 7, 6, 2, 2, 3589, 3592, 9, 34, 2, 2, 3590, 3592, 7, 6, 2, 2, 3591, 3585, 3, 2, 2, 2, 3591, 3588, 3, 2, 2, 2, 3591, 3590, 3, 2, 2, 2, 3592, 3594, 3, 2, 2, 2, 3593, 3580, 3, 2, 2, 2, 3593, 3584, 3, 2, 2, 2, 3594, 311, 3, 2, 2, 2, 3595, 3596, 7, 73, 2, 2, 3596, 3597, 7, 521, 2, 2, 3597, 3598, 7, 740, 2, 2, 3598, 3610, 5, 966, 484, 2, 3599, 3608, 7, 139, 2, 2, 3600, 3601, 5, 966, 484, 2, 3601, 3602, 7, 823, 2, 2, 3602, 3604, 3, 2, 2, 2, 3603, 3600, 3, 2, 2, 2, 3603, 3604, 3, 2, 2, 2, 3604, 3605, 3, 2, 2, 2, 3605, 3609, 5, 966, 484, 2, 3606, 3607, 7, 750, 2, 2, 3607, 3609, 7, 740, 2, 2, 3608, 3603, 3, 2, 2, 2, 3608, 3606, 3, 2, 2, 2, 3609, 3611, 3, 2, 2, 2, 3610, 3599, 3, 2, 2, 2, 3610, 3611, 3, 2, 2, 2, 3611, 3614, 3, 2, 2, 2, 3612, 3613, 7, 20, 2, 2, 3613, 3615, 5, 966, 484, 2, 3614, 3612, 3, 2, 2, 2, 3614, 3615, 3, 2, 2, 2, 3615, 313, 3, 2, 2, 2, 3616, 3617, 7, 10, 2, 2, 3617, 3618, 7, 571, 2, 2, 3618, 3686, 5, 966, 484, 2, 3619, 3621, 9, 23, 2, 2, 3620, 3619, 3, 2, 2, 2, 3620, 3621, 3, 2, 2, 2, 3621, 3687, 3, 2, 2, 2, 3622, 3636, 7, 377, 2, 2, 3623, 3624, 7, 244, 2, 2, 3624, 3628, 7, 810, 2, 2, 3625, 3629, 7, 806, 2, 2, 3626, 3627, 7, 807, 2, 2, 3627, 3629, 7, 148, 2, 2, 3628, 3625, 3, 2, 2, 2, 3628, 3626, 3, 2, 2, 2, 3629, 3633, 3, 2, 2, 2, 3630, 3632, 9, 35, 2, 2, 3631, 3630, 3, 2, 2, 2, 3632, 3635, 3, 2, 2, 2, 3633, 3631, 3, 2, 2, 2, 3633, 3634, 3, 2, 2, 2, 3634, 3637, 3, 2, 2, 2, 3635, 3633, 3, 2, 2, 2, 3636, 3623, 3, 2, 2, 2, 3636, 3637, 3, 2, 2, 2, 3637, 3647, 3, 2, 2, 2, 3638, 3639, 7, 228, 2, 2, 3639, 3640, 7, 810, 2, 2, 3640, 3644, 7, 806, 2, 2, 3641, 3643, 9, 35, 2, 2, 3642, 3641, 3, 2, 2, 2, 3643, 3646, 3, 2, 2, 2, 3644, 3642, 3, 2, 2, 2, 3644, 3645, 3, 2, 2, 2, 3645, 3648, 3, 2, 2, 2, 3646, 3644, 3, 2, 2, 2, 3647, 3638, 3, 2, 2, 2, 3647, 3648, 3, 2, 2, 2, 3648, 3652, 3, 2, 2, 2, 3649, 3650, 7, 90, 2, 2, 3650, 3651, 7, 810, 2, 2, 3651, 3653, 5, 966, 484, 2, 3652, 3649, 3, 2, 2, 2, 3652, 3653, 3, 2, 2, 2, 3653, 3657, 3, 2, 2, 2, 3654, 3655, 7, 468, 2, 2, 3655, 3656, 7, 810, 2, 2, 3656, 3658, 5, 966, 484, 2, 3657, 3654, 3, 2, 2, 2, 3657, 3658, 3, 2, 2, 2, 3658, 3662, 3, 2, 2, 2, 3659, 3660, 7, 605, 2, 2, 3660, 3661, 7, 810, 2, 2, 3661, 3663, 5, 966, 484, 2, 3662, 3659, 3, 2, 2, 2, 3662, 3663, 3, 2, 2, 2, 3663, 3667, 3, 2, 2, 2, 3664, 3665, 7, 48, 2, 2, 3665, 3666, 7, 810, 2, 2, 3666, 3668, 9, 9, 2, 2, 3667, 3664, 3, 2, 2, 2, 3667, 3668, 3, 2, 2, 2, 3668, 3672, 3, 2, 2, 2, 3669, 3670, 7, 49, 2, 2, 3670, 3671, 7, 810, 2, 2, 3671, 3673, 9, 9, 2, 2, 3672, 3669, 3, 2, 2, 2, 3672, 3673, 3, 2, 2, 2, 3673, 3677, 3, 2, 2, 2, 3674, 3675, 7, 452, 2, 2, 3675, 3676, 7, 810, 2, 2, 3676, 3678, 5, 966, 484, 2, 3677, 3674, 3, 2, 2, 2, 3677, 3678, 3, 2, 2, 2, 3678, 3681, 3, 2, 2, 2, 3679, 3680, 7, 611, 2, 2, 3680, 3682, 7, 452, 2, 2, 3681, 3679, 3, 2, 2, 2, 3681, 3682, 3, 2, 2, 2, 3682, 3687, 3, 2, 2, 2, 3683, 3684, 9, 21, 2, 2, 3684, 3685, 7, 452, 2, 2, 3685, 3687, 5, 966, 484, 2, 3686, 3620, 3, 2, 2, 2, 3686, 3622, 3, 2, 2, 2, 3686, 3683, 3, 2, 2, 2, 3687, 315, 3, 2, 2, 2, 3688, 3689, 7, 73, 2, 2, 3689, 3690, 7, 571, 2, 2, 3690, 3781, 5, 966, 484, 2, 3691, 3705, 7, 377, 2, 2, 3692, 3693, 7, 244, 2, 2, 3693, 3697, 7, 810, 2, 2, 3694, 3698, 7, 806, 2, 2, 3695, 3696, 7, 807, 2, 2, 3696, 3698, 7, 148, 2, 2, 3697, 3694, 3, 2, 2, 2, 3697, 3695, 3, 2, 2, 2, 3698, 3702, 3, 2, 2, 2, 3699, 3701, 9, 35, 2, 2, 3700, 3699, 3, 2, 2, 2, 3701, 3704, 3, 2, 2, 2, 3702, 3700, 3, 2, 2, 2, 3702, 3703, 3, 2, 2, 2, 3703, 3706, 3, 2, 2, 2, 3704, 3702, 3, 2, 2, 2, 3705, 3692, 3, 2, 2, 2, 3705, 3706, 3, 2, 2, 2, 3706, 3713, 3, 2, 2, 2, 3707, 3709, 7, 830, 2, 2, 3708, 3707, 3, 2, 2, 2, 3708, 3709, 3, 2, 2, 2, 3709, 3710, 3, 2, 2, 2, 3710, 3711, 7, 318, 2, 2, 3711, 3712, 7, 810, 2, 2, 3712, 3714, 7, 807, 2, 2, 3713, 3708, 3, 2, 2, 2, 3713, 3714, 3, 2, 2, 2, 3714, 3721, 3, 2, 2, 2, 3715, 3717, 7, 830, 2, 2, 3716, 3715, 3, 2, 2, 2, 3716, 3717, 3, 2, 2, 2, 3717, 3718, 3, 2, 2, 2, 3718, 3719, 7, 90, 2, 2, 3719, 3720, 7, 810, 2, 2, 3720, 3722, 5, 966, 484, 2, 3721, 3716, 3, 2, 2, 2, 3721, 3722, 3, 2, 2, 2, 3722, 3729, 3, 2, 2, 2, 3723, 3725, 7, 830, 2, 2, 3724, 3723, 3, 2, 2, 2, 3724, 3725, 3, 2, 2, 2, 3725, 3726, 3, 2, 2, 2, 3726, 3727, 7, 468, 2, 2, 3727, 3728, 7, 810, 2, 2, 3728, 3730, 5, 966, 484, 2, 3729, 3724, 3, 2, 2, 2, 3729, 3730, 3, 2, 2, 2, 3730, 3737, 3, 2, 2, 2, 3731, 3733, 7, 830, 2, 2, 3732, 3731, 3, 2, 2, 2, 3732, 3733, 3, 2, 2, 2, 3733, 3734, 3, 2, 2, 2, 3734, 3735, 7, 49, 2, 2, 3735, 3736, 7, 810, 2, 2, 3736, 3738, 9, 9, 2, 2, 3737, 3732, 3, 2, 2, 2, 3737, 3738, 3, 2, 2, 2, 3738, 3745, 3, 2, 2, 2, 3739, 3741, 7, 830, 2, 2, 3740, 3739, 3, 2, 2, 2, 3740, 3741, 3, 2, 2, 2, 3741, 3742, 3, 2, 2, 2, 3742, 3743, 7, 48, 2, 2, 3743, 3744, 7, 810, 2, 2, 3744, 3746, 9, 9, 2, 2, 3745, 3740, 3, 2, 2, 2, 3745, 3746, 3, 2, 2, 2, 3746, 3753, 3, 2, 2, 2, 3747, 3749, 7, 830, 2, 2, 3748, 3747, 3, 2, 2, 2, 3748, 3749, 3, 2, 2, 2, 3749, 3750, 3, 2, 2, 2, 3750, 3751, 7, 452, 2, 2, 3751, 3752, 7, 810, 2, 2, 3752, 3754, 5, 966, 484, 2, 3753, 3748, 3, 2, 2, 2, 3753, 3754, 3, 2, 2, 2, 3754, 3782, 3, 2, 2, 2, 3755, 3779, 7, 139, 2, 2, 3756, 3757, 7, 376, 2, 2, 3757, 3764, 7, 377, 2, 2, 3758, 3760, 7, 830, 2, 2, 3759, 3758, 3, 2, 2, 2, 3759, 3760, 3, 2, 2, 2, 3760, 3761, 3, 2, 2, 2, 3761, 3762, 7, 90, 2, 2, 3762, 3763, 7, 810, 2, 2, 3763, 3765, 5, 966, 484, 2, 3764, 3759, 3, 2, 2, 2, 3764, 3765, 3, 2, 2, 2, 3765, 3772, 3, 2, 2, 2, 3766, 3768, 7, 830, 2, 2, 3767, 3766, 3, 2, 2, 2, 3767, 3768, 3, 2, 2, 2, 3768, 3769, 3, 2, 2, 2, 3769, 3770, 7, 468, 2, 2, 3770, 3771, 7, 810, 2, 2, 3771, 3773, 7, 806, 2, 2, 3772, 3767, 3, 2, 2, 2, 3772, 3773, 3, 2, 2, 2, 3773, 3780, 3, 2, 2, 2, 3774, 3775, 7, 43, 2, 2, 3775, 3780, 5, 966, 484, 2, 3776, 3777, 7, 18, 2, 2, 3777, 3778, 7, 172, 2, 2, 3778, 3780, 5, 966, 484, 2, 3779, 3756, 3, 2, 2, 2, 3779, 3774, 3, 2, 2, 2, 3779, 3776, 3, 2, 2, 2, 3780, 3782, 3, 2, 2, 2, 3781, 3691, 3, 2, 2, 2, 3781, 3755, 3, 2, 2, 2, 3782, 317, 3, 2, 2, 2, 3783, 3784, 7, 10, 2, 2, 3784, 3785, 7, 571, 2, 2, 3785, 3803, 5, 966, 484, 2, 3786, 3788, 9, 23, 2, 2, 3787, 3786, 3, 2, 2, 2, 3787, 3788, 3, 2, 2, 2, 3788, 3804, 3, 2, 2, 2, 3789, 3801, 7, 377, 2, 2, 3790, 3791, 7, 244, 2, 2, 3791, 3792, 7, 810, 2, 2, 3792, 3796, 7, 806, 2, 2, 3793, 3794, 7, 228, 2, 2, 3794, 3795, 7, 810, 2, 2, 3795, 3797, 7, 806, 2, 2, 3796, 3793, 3, 2, 2, 2, 3796, 3797, 3, 2, 2, 2, 3797, 3802, 3, 2, 2, 2, 3798, 3799, 7, 605, 2, 2, 3799, 3800, 7, 810, 2, 2, 3800, 3802, 5, 966, 484, 2, 3801, 3790, 3, 2, 2, 2, 3801, 3798, 3, 2, 2, 2, 3802, 3804, 3, 2, 2, 2, 3803, 3787, 3, 2, 2, 2, 3803, 3789, 3, 2, 2, 2, 3804, 319, 3, 2, 2, 2, 3805, 3806, 7, 73, 2, 2, 3806, 3807, 7, 571, 2, 2, 3807, 3808, 5, 966, 484, 2, 3808, 3809, 7, 377, 2, 2, 3809, 3810, 7, 244, 2, 2, 3810, 3811, 7, 810, 2, 2, 3811, 3815, 7, 806, 2, 2, 3812, 3813, 7, 318, 2, 2, 3813, 3814, 7, 810, 2, 2, 3814, 3816, 7, 807, 2, 2, 3815, 3812, 3, 2, 2, 2, 3815, 3816, 3, 2, 2, 2, 3816, 321, 3, 2, 2, 2, 3817, 3818, 7, 10, 2, 2, 3818, 3819, 7, 571, 2, 2, 3819, 3843, 5, 966, 484, 2, 3820, 3822, 9, 23, 2, 2, 3821, 3820, 3, 2, 2, 2, 3821, 3822, 3, 2, 2, 2, 3822, 3844, 3, 2, 2, 2, 3823, 3841, 7, 377, 2, 2, 3824, 3825, 7, 244, 2, 2, 3825, 3826, 7, 810, 2, 2, 3826, 3836, 7, 806, 2, 2, 3827, 3828, 7, 228, 2, 2, 3828, 3829, 7, 810, 2, 2, 3829, 3833, 7, 806, 2, 2, 3830, 3832, 9, 35, 2, 2, 3831, 3830, 3, 2, 2, 2, 3832, 3835, 3, 2, 2, 2, 3833, 3831, 3, 2, 2, 2, 3833, 3834, 3, 2, 2, 2, 3834, 3837, 3, 2, 2, 2, 3835, 3833, 3, 2, 2, 2, 3836, 3827, 3, 2, 2, 2, 3836, 3837, 3, 2, 2, 2, 3837, 3842, 3, 2, 2, 2, 3838, 3839, 7, 605, 2, 2, 3839, 3840, 7, 810, 2, 2, 3840, 3842, 5, 966, 484, 2, 3841, 3824, 3, 2, 2, 2, 3841, 3838, 3, 2, 2, 2, 3842, 3844, 3, 2, 2, 2, 3843, 3821, 3, 2, 2, 2, 3843, 3823, 3, 2, 2, 2, 3844, 323, 3, 2, 2, 2, 3845, 3846, 7, 73, 2, 2, 3846, 3847, 7, 571, 2, 2, 3847, 3864, 5, 966, 484, 2, 3848, 3849, 7, 377, 2, 2, 3849, 3850, 7, 244, 2, 2, 3850, 3851, 7, 810, 2, 2, 3851, 3853, 7, 806, 2, 2, 3852, 3854, 7, 206, 2, 2, 3853, 3852, 3, 2, 2, 2, 3853, 3854, 3, 2, 2, 2, 3854, 3860, 3, 2, 2, 2, 3855, 3856, 7, 48, 2, 2, 3856, 3858, 7, 810, 2, 2, 3857, 3859, 9, 9, 2, 2, 3858, 3857, 3, 2, 2, 2, 3858, 3859, 3, 2, 2, 2, 3859, 3861, 3, 2, 2, 2, 3860, 3855, 3, 2, 2, 2, 3860, 3861, 3, 2, 2, 2, 3861, 3865, 3, 2, 2, 2, 3862, 3863, 7, 139, 2, 2, 3863, 3865, 7, 376, 2, 2, 3864, 3848, 3, 2, 2, 2, 3864, 3862, 3, 2, 2, 2, 3865, 325, 3, 2, 2, 2, 3866, 3867, 7, 10, 2, 2, 3867, 3868, 7, 189, 2, 2, 3868, 3890, 7, 172, 2, 2, 3869, 3871, 7, 515, 2, 2, 3870, 3869, 3, 2, 2, 2, 3870, 3871, 3, 2, 2, 2, 3871, 3872, 3, 2, 2, 2, 3872, 3873, 7, 271, 2, 2, 3873, 3874, 7, 377, 2, 2, 3874, 3875, 7, 492, 2, 2, 3875, 3876, 7, 38, 2, 2, 3876, 3877, 7, 244, 2, 2, 3877, 3878, 7, 810, 2, 2, 3878, 3891, 7, 806, 2, 2, 3879, 3880, 9, 21, 2, 2, 3880, 3881, 7, 492, 2, 2, 3881, 3888, 7, 38, 2, 2, 3882, 3883, 7, 310, 2, 2, 3883, 3884, 7, 189, 2, 2, 3884, 3889, 7, 172, 2, 2, 3885, 3886, 7, 244, 2, 2, 3886, 3887, 7, 810, 2, 2, 3887, 3889, 7, 806, 2, 2, 3888, 3882, 3, 2, 2, 2, 3888, 3885, 3, 2, 2, 2, 3889, 3891, 3, 2, 2, 2, 3890, 3870, 3, 2, 2, 2, 3890, 3879, 3, 2, 2, 2, 3891, 327, 3, 2, 2, 2, 3892, 3893, 7, 73, 2, 2, 3893, 3894, 7, 189, 2, 2, 3894, 3895, 7, 172, 2, 2, 3895, 3896, 7, 492, 2, 2, 3896, 3897, 7, 38, 2, 2, 3897, 3898, 7, 244, 2, 2, 3898, 3899, 7, 810, 2, 2, 3899, 3900, 7, 806, 2, 2, 3900, 329, 3, 2, 2, 2, 3901, 3902, 7, 10, 2, 2, 3902, 3903, 7, 189, 2, 2, 3903, 3931, 7, 172, 2, 2, 3904, 3906, 7, 515, 2, 2, 3905, 3904, 3, 2, 2, 2, 3905, 3906, 3, 2, 2, 2, 3906, 3907, 3, 2, 2, 2, 3907, 3908, 7, 271, 2, 2, 3908, 3909, 7, 377, 2, 2, 3909, 3910, 7, 492, 2, 2, 3910, 3911, 7, 38, 2, 2, 3911, 3912, 7, 244, 2, 2, 3912, 3913, 7, 810, 2, 2, 3913, 3932, 7, 806, 2, 2, 3914, 3915, 7, 4, 2, 2, 3915, 3916, 7, 492, 2, 2, 3916, 3923, 7, 38, 2, 2, 3917, 3918, 7, 310, 2, 2, 3918, 3919, 7, 189, 2, 2, 3919, 3924, 7, 172, 2, 2, 3920, 3921, 7, 244, 2, 2, 3921, 3922, 7, 810, 2, 2, 3922, 3924, 7, 806, 2, 2, 3923, 3917, 3, 2, 2, 2, 3923, 3920, 3, 2, 2, 2, 3924, 3932, 3, 2, 2, 2, 3925, 3926, 7, 103, 2, 2, 3926, 3927, 7, 492, 2, 2, 3927, 3928, 7, 38, 2, 2, 3928, 3929, 7, 244, 2, 2, 3929, 3930, 7, 810, 2, 2, 3930, 3932, 7, 806, 2, 2, 3931, 3905, 3, 2, 2, 2, 3931, 3914, 3, 2, 2, 2, 3931, 3925, 3, 2, 2, 2, 3932, 331, 3, 2, 2, 2, 3933, 3934, 7, 73, 2, 2, 3934, 3935, 7, 189, 2, 2, 3935, 3941, 7, 172, 2, 2, 3936, 3937, 7, 492, 2, 2, 3937, 3938, 7, 38, 2, 2, 3938, 3939, 7, 244, 2, 2, 3939, 3940, 7, 810, 2, 2, 3940, 3942, 7, 806, 2, 2, 3941, 3936, 3, 2, 2, 2, 3941, 3942, 3, 2, 2, 2, 3942, 333, 3, 2, 2, 2, 3943, 3944, 7, 10, 2, 2, 3944, 3945, 7, 592, 2, 2, 3945, 3946, 7, 769, 2, 2, 3946, 3947, 5, 966, 484, 2, 3947, 3948, 7, 778, 2, 2, 3948, 3957, 7, 810, 2, 2, 3949, 3958, 7, 213, 2, 2, 3950, 3958, 7, 488, 2, 2, 3951, 3958, 7, 785, 2, 2, 3952, 3953, 7, 777, 2, 2, 3953, 3954, 7, 377, 2, 2, 3954, 3955, 7, 302, 2, 2, 3955, 3956, 7, 437, 2, 2, 3956, 3958, 5, 966, 484, 2, 3957, 3949, 3, 2, 2, 2, 3957, 3950, 3, 2, 2, 2, 3957, 3951, 3, 2, 2, 2, 3957, 3952, 3, 2, 2, 2, 3958, 335, 3, 2, 2, 2, 3959, 3960, 7, 10, 2, 2, 3960, 3961, 7, 640, 2, 2, 3961, 3962, 7, 141, 2, 2, 3962, 3963, 5, 966, 484, 2, 3963, 3964, 7, 828, 2, 2, 3964, 3965, 7, 829, 2, 2, 3965, 3966, 9, 36, 2, 2, 3966, 3967, 7, 663, 2, 2, 3967, 3968, 7, 828, 2, 2, 3968, 3969, 7, 802, 2, 2, 3969, 3970, 7, 829, 2, 2, 3970, 337, 3, 2, 2, 2, 3971, 3972, 7, 10, 2, 2, 3972, 3973, 7, 640, 2, 2, 3973, 3974, 7, 303, 2, 2, 3974, 3975, 5, 966, 484, 2, 3975, 3976, 7, 610, 2, 2, 3976, 3978, 7, 365, 2, 2, 3977, 3979, 5, 966, 484, 2, 3978, 3977, 3, 2, 2, 2, 3978, 3979, 3, 2, 2, 2, 3979, 339, 3, 2, 2, 2, 3980, 3981, 7, 10, 2, 2, 3981, 3982, 7, 679, 2, 2, 3982, 3983, 7, 310, 2, 2, 3983, 3984, 7, 422, 2, 2, 3984, 3985, 5, 966, 484, 2, 3985, 3989, 7, 377, 2, 2, 3986, 3987, 7, 366, 2, 2, 3987, 3988, 7, 810, 2, 2, 3988, 3990, 5, 966, 484, 2, 3989, 3986, 3, 2, 2, 2, 3989, 3990, 3, 2, 2, 2, 3990, 3995, 3, 2, 2, 2, 3991, 3992, 7, 830, 2, 2, 3992, 3993, 7, 12, 2, 2, 3993, 3994, 7, 810, 2, 2, 3994, 3996, 9, 9, 2, 2, 3995, 3991, 3, 2, 2, 2, 3995, 3996, 3, 2, 2, 2, 3996, 341, 3, 2, 2, 2, 3997, 3998, 7, 73, 2, 2, 3998, 3999, 7, 679, 2, 2, 3999, 4000, 7, 310, 2, 2, 4000, 4001, 7, 422, 2, 2, 4001, 4004, 5, 966, 484, 2, 4002, 4003, 7, 20, 2, 2, 4003, 4005, 5, 966, 484, 2, 4004, 4002, 3, 2, 2, 2, 4004, 4005, 3, 2, 2, 2, 4005, 4006, 3, 2, 2, 2, 4006, 4007, 7, 346, 2, 2, 4007, 4008, 7, 310, 2, 2, 4008, 4009, 7, 806, 2, 2, 4009, 4013, 7, 377, 2, 2, 4010, 4011, 7, 366, 2, 2, 4011, 4012, 7, 810, 2, 2, 4012, 4014, 5, 966, 484, 2, 4013, 4010, 3, 2, 2, 2, 4013, 4014, 3, 2, 2, 2, 4014, 4019, 3, 2, 2, 2, 4015, 4016, 7, 830, 2, 2, 4016, 4017, 7, 12, 2, 2, 4017, 4018, 7, 810, 2, 2, 4018, 4020, 9, 9, 2, 2, 4019, 4015, 3, 2, 2, 2, 4019, 4020, 3, 2, 2, 2, 4020, 343, 3, 2, 2, 2, 4021, 4022, 7, 73, 2, 2, 4022, 4023, 7, 690, 2, 2, 4023, 4024, 7, 645, 2, 2, 4024, 4127, 5, 966, 484, 2, 4025, 4026, 7, 377, 2, 2, 4026, 4033, 7, 828, 2, 2, 4027, 4029, 7, 830, 2, 2, 4028, 4027, 3, 2, 2, 2, 4028, 4029, 3, 2, 2, 2, 4029, 4030, 3, 2, 2, 2, 4030, 4031, 7, 595, 2, 2, 4031, 4032, 7, 810, 2, 2, 4032, 4034, 7, 802, 2, 2, 4033, 4028, 3, 2, 2, 2, 4033, 4034, 3, 2, 2, 2, 4034, 4041, 3, 2, 2, 2, 4035, 4037, 7, 830, 2, 2, 4036, 4035, 3, 2, 2, 2, 4036, 4037, 3, 2, 2, 2, 4037, 4038, 3, 2, 2, 2, 4038, 4039, 7, 578, 2, 2, 4039, 4040, 7, 810, 2, 2, 4040, 4042, 7, 802, 2, 2, 4041, 4036, 3, 2, 2, 2, 4041, 4042, 3, 2, 2, 2, 4042, 4049, 3, 2, 2, 2, 4043, 4045, 7, 830, 2, 2, 4044, 4043, 3, 2, 2, 2, 4044, 4045, 3, 2, 2, 2, 4045, 4046, 3, 2, 2, 2, 4046, 4047, 7, 428, 2, 2, 4047, 4048, 7, 810, 2, 2, 4048, 4050, 7, 802, 2, 2, 4049, 4044, 3, 2, 2, 2, 4049, 4050, 3, 2, 2, 2, 4050, 4092, 3, 2, 2, 2, 4051, 4053, 7, 830, 2, 2, 4052, 4051, 3, 2, 2, 2, 4052, 4053, 3, 2, 2, 2, 4053, 4054, 3, 2, 2, 2, 4054, 4055, 7, 391, 2, 2, 4055, 4056, 7, 301, 2, 2, 4056, 4090, 7, 810, 2, 2, 4057, 4091, 7, 408, 2, 2, 4058, 4068, 7, 828, 2, 2, 4059, 4061, 7, 830, 2, 2, 4060, 4059, 3, 2, 2, 2, 4060, 4061, 3, 2, 2, 2, 4061, 4066, 3, 2, 2, 2, 4062, 4067, 7, 802, 2, 2, 4063, 4064, 7, 802, 2, 2, 4064, 4065, 7, 346, 2, 2, 4065, 4067, 7, 802, 2, 2, 4066, 4062, 3, 2, 2, 2, 4066, 4063, 3, 2, 2, 2, 4067, 4069, 3, 2, 2, 2, 4068, 4060, 3, 2, 2, 2, 4069, 4070, 3, 2, 2, 2, 4070, 4068, 3, 2, 2, 2, 4070, 4071, 3, 2, 2, 2, 4071, 4072, 3, 2, 2, 2, 4072, 4091, 7, 829, 2, 2, 4073, 4074, 7, 622, 2, 2, 4074, 4075, 7, 810, 2, 2, 4075, 4085, 7, 828, 2, 2, 4076, 4078, 7, 830, 2, 2, 4077, 4076, 3, 2, 2, 2, 4077, 4078, 3, 2, 2, 2, 4078, 4083, 3, 2, 2, 2, 4079, 4084, 7, 802, 2, 2, 4080, 4081, 7, 802, 2, 2, 4081, 4082, 7, 346, 2, 2, 4082, 4084, 7, 802, 2, 2, 4083, 4079, 3, 2, 2, 2, 4083, 4080, 3, 2, 2, 2, 4084, 4086, 3, 2, 2, 2, 4085, 4077, 3, 2, 2, 2, 4086, 4087, 3, 2, 2, 2, 4087, 4085, 3, 2, 2, 2, 4087, 4088, 3, 2, 2, 2, 4088, 4089, 3, 2, 2, 2, 4089, 4091, 7, 829, 2, 2, 4090, 4057, 3, 2, 2, 2, 4090, 4058, 3, 2, 2, 2, 4090, 4073, 3, 2, 2, 2, 4091, 4093, 3, 2, 2, 2, 4092, 4052, 3, 2, 2, 2, 4092, 4093, 3, 2, 2, 2, 4093, 4100, 3, 2, 2, 2, 4094, 4096, 7, 830, 2, 2, 4095, 4094, 3, 2, 2, 2, 4095, 4096, 3, 2, 2, 2, 4096, 4097, 3, 2, 2, 2, 4097, 4098, 7, 597, 2, 2, 4098, 4099, 7, 810, 2, 2, 4099, 4101, 7, 802, 2, 2, 4100, 4095, 3, 2, 2, 2, 4100, 4101, 3, 2, 2, 2, 4101, 4108, 3, 2, 2, 2, 4102, 4104, 7, 830, 2, 2, 4103, 4102, 3, 2, 2, 2, 4103, 4104, 3, 2, 2, 2, 4104, 4105, 3, 2, 2, 2, 4105, 4106, 7, 582, 2, 2, 4106, 4107, 7, 810, 2, 2, 4107, 4109, 7, 802, 2, 2, 4108, 4103, 3, 2, 2, 2, 4108, 4109, 3, 2, 2, 2, 4109, 4116, 3, 2, 2, 2, 4110, 4112, 7, 830, 2, 2, 4111, 4110, 3, 2, 2, 2, 4111, 4112, 3, 2, 2, 2, 4112, 4113, 3, 2, 2, 2, 4113, 4114, 7, 596, 2, 2, 4114, 4115, 7, 810, 2, 2, 4115, 4117, 7, 802, 2, 2, 4116, 4111, 3, 2, 2, 2, 4116, 4117, 3, 2, 2, 2, 4117, 4124, 3, 2, 2, 2, 4118, 4120, 7, 830, 2, 2, 4119, 4118, 3, 2, 2, 2, 4119, 4120, 3, 2, 2, 2, 4120, 4121, 3, 2, 2, 2, 4121, 4122, 7, 581, 2, 2, 4122, 4123, 7, 810, 2, 2, 4123, 4125, 7, 802, 2, 2, 4124, 4119, 3, 2, 2, 2, 4124, 4125, 3, 2, 2, 2, 4125, 4126, 3, 2, 2, 2, 4126, 4128, 7, 829, 2, 2, 4127, 4025, 3, 2, 2, 2, 4127, 4128, 3, 2, 2, 2, 4128, 345, 3, 2, 2, 2, 4129, 4130, 7, 10, 2, 2, 4130, 4131, 7, 690, 2, 2, 4131, 4153, 7, 144, 2, 2, 4132, 4154, 9, 37, 2, 2, 4133, 4134, 7, 377, 2, 2, 4134, 4135, 7, 828, 2, 2, 4135, 4136, 7, 50, 2, 2, 4136, 4142, 7, 810, 2, 2, 4137, 4138, 5, 966, 484, 2, 4138, 4139, 7, 823, 2, 2, 4139, 4140, 5, 966, 484, 2, 4140, 4143, 3, 2, 2, 2, 4141, 4143, 7, 223, 2, 2, 4142, 4137, 3, 2, 2, 2, 4142, 4141, 3, 2, 2, 2, 4143, 4144, 3, 2, 2, 2, 4144, 4154, 7, 829, 2, 2, 4145, 4146, 7, 276, 2, 2, 4146, 4154, 7, 328, 2, 2, 4147, 4148, 7, 377, 2, 2, 4148, 4149, 7, 828, 2, 2, 4149, 4150, 7, 196, 2, 2, 4150, 4151, 7, 810, 2, 2, 4151, 4152, 7, 802, 2, 2, 4152, 4154, 7, 829, 2, 2, 4153, 4132, 3, 2, 2, 2, 4153, 4133, 3, 2, 2, 2, 4153, 4145, 3, 2, 2, 2, 4153, 4147, 3, 2, 2, 2, 4154, 347, 3, 2, 2, 2, 4155, 4156, 7, 10, 2, 2, 4156, 4157, 7, 289, 2, 2, 4157, 4165, 5, 966, 484, 2, 4158, 4159, 9, 21, 2, 2, 4159, 4160, 7, 199, 2, 2, 4160, 4166, 5, 966, 484, 2, 4161, 4162, 7, 377, 2, 2, 4162, 4163, 7, 605, 2, 2, 4163, 4164, 7, 810, 2, 2, 4164, 4166, 5, 966, 484, 2, 4165, 4158, 3, 2, 2, 2, 4165, 4161, 3, 2, 2, 2, 4166, 349, 3, 2, 2, 2, 4167, 4168, 7, 73, 2, 2, 4168, 4169, 7, 289, 2, 2, 4169, 4172, 5, 966, 484, 2, 4170, 4171, 7, 20, 2, 2, 4171, 4173, 5, 966, 484, 2, 4172, 4170, 3, 2, 2, 2, 4172, 4173, 3, 2, 2, 2, 4173, 351, 3, 2, 2, 2, 4174, 4175, 7, 73, 2, 2, 4175, 4176, 7, 696, 2, 2, 4176, 4179, 5, 966, 484, 2, 4177, 4178, 7, 20, 2, 2, 4178, 4180, 5, 966, 484, 2, 4179, 4177, 3, 2, 2, 2, 4179, 4180, 3, 2, 2, 2, 4180, 4181, 3, 2, 2, 2, 4181, 4188, 7, 377, 2, 2, 4182, 4184, 7, 830, 2, 2, 4183, 4182, 3, 2, 2, 2, 4183, 4184, 3, 2, 2, 2, 4184, 4185, 3, 2, 2, 2, 4185, 4186, 7, 312, 2, 2, 4186, 4187, 7, 810, 2, 2, 4187, 4189, 7, 806, 2, 2, 4188, 4183, 3, 2, 2, 2, 4188, 4189, 3, 2, 2, 2, 4189, 4196, 3, 2, 2, 2, 4190, 4192, 7, 830, 2, 2, 4191, 4190, 3, 2, 2, 2, 4191, 4192, 3, 2, 2, 2, 4192, 4193, 3, 2, 2, 2, 4193, 4194, 7, 425, 2, 2, 4194, 4195, 7, 810, 2, 2, 4195, 4197, 7, 806, 2, 2, 4196, 4191, 3, 2, 2, 2, 4196, 4197, 3, 2, 2, 2, 4197, 4204, 3, 2, 2, 2, 4198, 4200, 7, 830, 2, 2, 4199, 4198, 3, 2, 2, 2, 4199, 4200, 3, 2, 2, 2, 4200, 4201, 3, 2, 2, 2, 4201, 4202, 7, 179, 2, 2, 4202, 4203, 7, 810, 2, 2, 4203, 4205, 7, 802, 2, 2, 4204, 4199, 3, 2, 2, 2, 4204, 4205, 3, 2, 2, 2, 4205, 4207, 3, 2, 2, 2, 4206, 4208, 7, 830, 2, 2, 4207, 4206, 3, 2, 2, 2, 4207, 4208, 3, 2, 2, 2, 4208, 4209, 3, 2, 2, 2, 4209, 4210, 7, 387, 2, 2, 4210, 4211, 7, 810, 2, 2, 4211, 4216, 9, 38, 2, 2, 4212, 4213, 7, 830, 2, 2, 4213, 4214, 7, 599, 2, 2, 4214, 4215, 7, 810, 2, 2, 4215, 4217, 9, 38, 2, 2, 4216, 4212, 3, 2, 2, 2, 4216, 4217, 3, 2, 2, 2, 4217, 353, 3, 2, 2, 2, 4218, 4219, 7, 73, 2, 2, 4219, 4223, 7, 298, 2, 2, 4220, 4221, 5, 966, 484, 2, 4221, 4222, 7, 823, 2, 2, 4222, 4224, 3, 2, 2, 2, 4223, 4220, 3, 2, 2, 2, 4223, 4224, 3, 2, 2, 2, 4224, 4225, 3, 2, 2, 2, 4225, 4226, 5, 966, 484, 2, 4226, 4227, 7, 16, 2, 2, 4227, 4228, 5, 750, 376, 2, 4228, 355, 3, 2, 2, 2, 4229, 4230, 7, 10, 2, 2, 4230, 4231, 7, 302, 2, 2, 4231, 4232, 5, 966, 484, 2, 4232, 4242, 7, 351, 2, 2, 4233, 4239, 7, 625, 2, 2, 4234, 4239, 7, 769, 2, 2, 4235, 4236, 7, 789, 2, 2, 4236, 4237, 7, 302, 2, 2, 4237, 4239, 7, 437, 2, 2, 4238, 4233, 3, 2, 2, 2, 4238, 4234, 3, 2, 2, 2, 4238, 4235, 3, 2, 2, 2, 4239, 4240, 3, 2, 2, 2, 4240, 4241, 7, 832, 2, 2, 4241, 4243, 7, 832, 2, 2, 4242, 4238, 3, 2, 2, 2, 4242, 4243, 3, 2, 2, 2, 4243, 4244, 3, 2, 2, 2, 4244, 4247, 5, 966, 484, 2, 4245, 4246, 7, 823, 2, 2, 4246, 4248, 5, 966, 484, 2, 4247, 4245, 3, 2, 2, 2, 4247, 4248, 3, 2, 2, 2, 4248, 357, 3, 2, 2, 2, 4249, 4250, 7, 73, 2, 2, 4250, 4258, 7, 302, 2, 2, 4251, 4259, 5, 966, 484, 2, 4252, 4253, 7, 20, 2, 2, 4253, 4259, 5, 966, 484, 2, 4254, 4255, 5, 966, 484, 2, 4255, 4256, 7, 20, 2, 2, 4256, 4257, 5, 966, 484, 2, 4257, 4259, 3, 2, 2, 2, 4258, 4251, 3, 2, 2, 2, 4258, 4252, 3, 2, 2, 2, 4258, 4254, 3, 2, 2, 2, 4259, 4288, 3, 2, 2, 2, 4260, 4287, 5, 494, 248, 2, 4261, 4287, 5, 498, 250, 2, 4262, 4263, 9, 39, 2, 2, 4263, 4264, 9, 40, 2, 2, 4264, 4268, 7, 229, 2, 2, 4265, 4266, 7, 302, 2, 2, 4266, 4267, 7, 832, 2, 2, 4267, 4269, 7, 832, 2, 2, 4268, 4265, 3, 2, 2, 2, 4268, 4269, 3, 2, 2, 2, 4269, 4270, 3, 2, 2, 2, 4270, 4271, 5, 966, 484, 2, 4271, 4272, 7, 346, 2, 2, 4272, 4273, 5, 966, 484, 2, 4273, 4287, 3, 2, 2, 2, 4274, 4275, 7, 285, 2, 2, 4275, 4276, 9, 40, 2, 2, 4276, 4280, 7, 229, 2, 2, 4277, 4278, 7, 302, 2, 2, 4278, 4279, 7, 832, 2, 2, 4279, 4281, 7, 832, 2, 2, 4280, 4277, 3, 2, 2, 2, 4280, 4281, 3, 2, 2, 2, 4281, 4282, 3, 2, 2, 2, 4282, 4283, 5, 966, 484, 2, 4283, 4284, 7, 139, 2, 2, 4284, 4285, 5, 966, 484, 2, 4285, 4287, 3, 2, 2, 2, 4286, 4260, 3, 2, 2, 2, 4286, 4261, 3, 2, 2, 2, 4286, 4262, 3, 2, 2, 2, 4286, 4274, 3, 2, 2, 2, 4287, 4290, 3, 2, 2, 2, 4288, 4286, 3, 2, 2, 2, 4288, 4289, 3, 2, 2, 2, 4289, 359, 3, 2, 2, 2, 4290, 4288, 3, 2, 2, 2, 4291, 4292, 7, 73, 2, 2, 4292, 4293, 7, 302, 2, 2, 4293, 4296, 5, 966, 484, 2, 4294, 4295, 7, 20, 2, 2, 4295, 4297, 5, 966, 484, 2, 4296, 4294, 3, 2, 2, 2, 4296, 4297, 3, 2, 2, 2, 4297, 361, 3, 2, 2, 2, 4298, 4299, 7, 10, 2, 2, 4299, 4300, 7, 302, 2, 2, 4300, 4301, 5, 966, 484, 2, 4301, 4305, 7, 351, 2, 2, 4302, 4303, 7, 625, 2, 2, 4303, 4304, 7, 832, 2, 2, 4304, 4306, 7, 832, 2, 2, 4305, 4302, 3, 2, 2, 2, 4305, 4306, 3, 2, 2, 2, 4306, 4307, 3, 2, 2, 2, 4307, 4310, 5, 966, 484, 2, 4308, 4309, 7, 823, 2, 2, 4309, 4311, 7, 803, 2, 2, 4310, 4308, 3, 2, 2, 2, 4310, 4311, 3, 2, 2, 2, 4311, 363, 3, 2, 2, 2, 4312, 4313, 7, 73, 2, 2, 4313, 4314, 7, 706, 2, 2, 4314, 4315, 7, 656, 2, 2, 4315, 4316, 7, 563, 2, 2, 4316, 4324, 5, 966, 484, 2, 4317, 4321, 7, 139, 2, 2, 4318, 4319, 5, 966, 484, 2, 4319, 4320, 7, 823, 2, 2, 4320, 4322, 3, 2, 2, 2, 4321, 4318, 3, 2, 2, 2, 4321, 4322, 3, 2, 2, 2, 4322, 4323, 3, 2, 2, 2, 4323, 4325, 5, 966, 484, 2, 4324, 4317, 3, 2, 2, 2, 4324, 4325, 3, 2, 2, 2, 4325, 4328, 3, 2, 2, 2, 4326, 4327, 7, 20, 2, 2, 4327, 4329, 5, 966, 484, 2, 4328, 4326, 3, 2, 2, 2, 4328, 4329, 3, 2, 2, 2, 4329, 365, 3, 2, 2, 2, 4330, 4331, 7, 73, 2, 2, 4331, 4332, 7, 712, 2, 2, 4332, 4336, 7, 253, 2, 2, 4333, 4334, 5, 966, 484, 2, 4334, 4335, 7, 823, 2, 2, 4335, 4337, 3, 2, 2, 2, 4336, 4333, 3, 2, 2, 2, 4336, 4337, 3, 2, 2, 2, 4337, 4338, 3, 2, 2, 2, 4338, 4379, 5, 966, 484, 2, 4339, 4341, 7, 830, 2, 2, 4340, 4339, 3, 2, 2, 2, 4340, 4341, 3, 2, 2, 2, 4341, 4342, 3, 2, 2, 2, 4342, 4344, 7, 4, 2, 2, 4343, 4345, 9, 41, 2, 2, 4344, 4343, 3, 2, 2, 2, 4344, 4345, 3, 2, 2, 2, 4345, 4346, 3, 2, 2, 2, 4346, 4347, 7, 255, 2, 2, 4347, 4348, 5, 966, 484, 2, 4348, 4349, 7, 823, 2, 2, 4349, 4350, 5, 966, 484, 2, 4350, 4355, 7, 828, 2, 2, 4351, 4353, 7, 830, 2, 2, 4352, 4351, 3, 2, 2, 2, 4352, 4353, 3, 2, 2, 2, 4353, 4354, 3, 2, 2, 2, 4354, 4356, 5, 966, 484, 2, 4355, 4352, 3, 2, 2, 2, 4356, 4357, 3, 2, 2, 2, 4357, 4355, 3, 2, 2, 2, 4357, 4358, 3, 2, 2, 2, 4358, 4359, 3, 2, 2, 2, 4359, 4360, 7, 829, 2, 2, 4360, 4361, 7, 229, 2, 2, 4361, 4362, 5, 966, 484, 2, 4362, 4363, 7, 823, 2, 2, 4363, 4376, 5, 966, 484, 2, 4364, 4366, 7, 830, 2, 2, 4365, 4364, 3, 2, 2, 2, 4365, 4366, 3, 2, 2, 2, 4366, 4367, 3, 2, 2, 2, 4367, 4368, 7, 392, 2, 2, 4368, 4375, 9, 42, 2, 2, 4369, 4371, 7, 830, 2, 2, 4370, 4369, 3, 2, 2, 2, 4370, 4371, 3, 2, 2, 2, 4371, 4372, 3, 2, 2, 2, 4372, 4373, 7, 27, 2, 2, 4373, 4375, 9, 43, 2, 2, 4374, 4365, 3, 2, 2, 2, 4374, 4370, 3, 2, 2, 2, 4375, 4378, 3, 2, 2, 2, 4376, 4374, 3, 2, 2, 2, 4376, 4377, 3, 2, 2, 2, 4377, 4380, 3, 2, 2, 2, 4378, 4376, 3, 2, 2, 2, 4379, 4340, 3, 2, 2, 2, 4380, 4381, 3, 2, 2, 2, 4381, 4379, 3, 2, 2, 2, 4381, 4382, 3, 2, 2, 2, 4382, 4393, 3, 2, 2, 2, 4383, 4384, 7, 377, 2, 2, 4384, 4385, 7, 828, 2, 2, 4385, 4386, 7, 329, 2, 2, 4386, 4387, 7, 810, 2, 2, 4387, 4390, 9, 9, 2, 2, 4388, 4389, 7, 702, 2, 2, 4389, 4391, 9, 9, 2, 2, 4390, 4388, 3, 2, 2, 2, 4390, 4391, 3, 2, 2, 2, 4391, 4392, 3, 2, 2, 2, 4392, 4394, 7, 829, 2, 2, 4393, 4383, 3, 2, 2, 2, 4393, 4394, 3, 2, 2, 2, 4394, 4398, 3, 2, 2, 2, 4395, 4396, 7, 220, 2, 2, 4396, 4397, 7, 133, 2, 2, 4397, 4399, 7, 274, 2, 2, 4398, 4395, 3, 2, 2, 2, 4398, 4399, 3, 2, 2, 2, 4399, 367, 3, 2, 2, 2, 4400, 4401, 7, 10, 2, 2, 4401, 4405, 7, 719, 2, 2, 4402, 4403, 5, 966, 484, 2, 4403, 4404, 7, 823, 2, 2, 4404, 4406, 3, 2, 2, 2, 4405, 4402, 3, 2, 2, 2, 4405, 4406, 3, 2, 2, 2, 4406, 4407, 3, 2, 2, 2, 4407, 4413, 5, 966, 484, 2, 4408, 4411, 7, 277, 2, 2, 4409, 4410, 7, 377, 2, 2, 4410, 4412, 7, 802, 2, 2, 4411, 4409, 3, 2, 2, 2, 4411, 4412, 3, 2, 2, 2, 4412, 4414, 3, 2, 2, 2, 4413, 4408, 3, 2, 2, 2, 4413, 4414, 3, 2, 2, 2, 4414, 4418, 3, 2, 2, 2, 4415, 4416, 7, 157, 2, 2, 4416, 4417, 7, 38, 2, 2, 4417, 4419, 7, 802, 2, 2, 4418, 4415, 3, 2, 2, 2, 4418, 4419, 3, 2, 2, 2, 4419, 4424, 3, 2, 2, 2, 4420, 4421, 7, 204, 2, 2, 4421, 4425, 7, 802, 2, 2, 4422, 4423, 7, 611, 2, 2, 4423, 4425, 7, 204, 2, 2, 4424, 4420, 3, 2, 2, 2, 4424, 4422, 3, 2, 2, 2, 4424, 4425, 3, 2, 2, 2, 4425, 4430, 3, 2, 2, 2, 4426, 4427, 7, 192, 2, 2, 4427, 4431, 7, 802, 2, 2, 4428, 4429, 7, 611, 2, 2, 4429, 4431, 7, 192, 2, 2, 4430, 4426, 3, 2, 2, 2, 4430, 4428, 3, 2, 2, 2, 4430, 4431, 3, 2, 2, 2, 4431, 4435, 3, 2, 2, 2, 4432, 4436, 7, 81, 2, 2, 4433, 4434, 7, 611, 2, 2, 4434, 4436, 7, 81, 2, 2, 4435, 4432, 3, 2, 2, 2, 4435, 4433, 3, 2, 2, 2, 4435, 4436, 3, 2, 2, 2, 4436, 4441, 3, 2, 2, 2, 4437, 4438, 7, 39, 2, 2, 4438, 4442, 7, 802, 2, 2, 4439, 4440, 7, 611, 2, 2, 4440, 4442, 7, 39, 2, 2, 4441, 4437, 3, 2, 2, 2, 4441, 4439, 3, 2, 2, 2, 4441, 4442, 3, 2, 2, 2, 4442, 369, 3, 2, 2, 2, 4443, 4444, 7, 73, 2, 2, 4444, 4448, 7, 719, 2, 2, 4445, 4446, 5, 966, 484, 2, 4446, 4447, 7, 823, 2, 2, 4447, 4449, 3, 2, 2, 2, 4448, 4445, 3, 2, 2, 2, 4448, 4449, 3, 2, 2, 2, 4449, 4450, 3, 2, 2, 2, 4450, 4453, 5, 966, 484, 2, 4451, 4452, 7, 16, 2, 2, 4452, 4454, 5, 958, 480, 2, 4453, 4451, 3, 2, 2, 2, 4453, 4454, 3, 2, 2, 2, 4454, 4458, 3, 2, 2, 2, 4455, 4456, 7, 331, 2, 2, 4456, 4457, 7, 377, 2, 2, 4457, 4459, 7, 802, 2, 2, 4458, 4455, 3, 2, 2, 2, 4458, 4459, 3, 2, 2, 2, 4459, 4466, 3, 2, 2, 2, 4460, 4461, 7, 157, 2, 2, 4461, 4463, 7, 38, 2, 2, 4462, 4464, 7, 837, 2, 2, 4463, 4462, 3, 2, 2, 2, 4463, 4464, 3, 2, 2, 2, 4464, 4465, 3, 2, 2, 2, 4465, 4467, 7, 802, 2, 2, 4466, 4460, 3, 2, 2, 2, 4466, 4467, 3, 2, 2, 2, 4467, 4474, 3, 2, 2, 2, 4468, 4470, 7, 204, 2, 2, 4469, 4471, 7, 802, 2, 2, 4470, 4469, 3, 2, 2, 2, 4470, 4471, 3, 2, 2, 2, 4471, 4475, 3, 2, 2, 2, 4472, 4473, 7, 611, 2, 2, 4473, 4475, 7, 204, 2, 2, 4474, 4468, 3, 2, 2, 2, 4474, 4472, 3, 2, 2, 2, 4474, 4475, 3, 2, 2, 2, 4475, 4482, 3, 2, 2, 2, 4476, 4478, 7, 192, 2, 2, 4477, 4479, 7, 802, 2, 2, 4478, 4477, 3, 2, 2, 2, 4478, 4479, 3, 2, 2, 2, 4479, 4483, 3, 2, 2, 2, 4480, 4481, 7, 611, 2, 2, 4481, 4483, 7, 192, 2, 2, 4482, 4476, 3, 2, 2, 2, 4482, 4480, 3, 2, 2, 2, 4482, 4483, 3, 2, 2, 2, 4483, 4487, 3, 2, 2, 2, 4484, 4488, 7, 81, 2, 2, 4485, 4486, 7, 611, 2, 2, 4486, 4488, 7, 81, 2, 2, 4487, 4484, 3, 2, 2, 2, 4487, 4485, 3, 2, 2, 2, 4487, 4488, 3, 2, 2, 2, 4488, 4495, 3, 2, 2, 2, 4489, 4491, 7, 39, 2, 2, 4490, 4492, 7, 802, 2, 2, 4491, 4490, 3, 2, 2, 2, 4491, 4492, 3, 2, 2, 2, 4492, 4496, 3, 2, 2, 2, 4493, 4494, 7, 611, 2, 2, 4494, 4496, 7, 39, 2, 2, 4495, 4489, 3, 2, 2, 2, 4495, 4493, 3, 2, 2, 2, 4495, 4496, 3, 2, 2, 2, 4496, 371, 3, 2, 2, 2, 4497, 4498, 7, 10, 2, 2, 4498, 4499, 7, 309, 2, 2, 4499, 4500, 7, 406, 2, 2, 4500, 4632, 5, 966, 484, 2, 4501, 4546, 7, 346, 2, 2, 4502, 4503, 7, 129, 2, 2, 4503, 4540, 7, 828, 2, 2, 4504, 4506, 7, 830, 2, 2, 4505, 4504, 3, 2, 2, 2, 4505, 4506, 3, 2, 2, 2, 4506, 4507, 3, 2, 2, 2, 4507, 4508, 7, 509, 2, 2, 4508, 4509, 7, 810, 2, 2, 4509, 4539, 7, 806, 2, 2, 4510, 4512, 7, 830, 2, 2, 4511, 4510, 3, 2, 2, 2, 4511, 4512, 3, 2, 2, 2, 4512, 4513, 3, 2, 2, 2, 4513, 4514, 7, 588, 2, 2, 4514, 4518, 7, 810, 2, 2, 4515, 4516, 7, 802, 2, 2, 4516, 4519, 9, 44, 2, 2, 4517, 4519, 7, 774, 2, 2, 4518, 4515, 3, 2, 2, 2, 4518, 4517, 3, 2, 2, 2, 4519, 4539, 3, 2, 2, 2, 4520, 4522, 7, 830, 2, 2, 4521, 4520, 3, 2, 2, 2, 4521, 4522, 3, 2, 2, 2, 4522, 4523, 3, 2, 2, 2, 4523, 4524, 7, 585, 2, 2, 4524, 4525, 7, 810, 2, 2, 4525, 4539, 9, 45, 2, 2, 4526, 4528, 7, 830, 2, 2, 4527, 4526, 3, 2, 2, 2, 4527, 4528, 3, 2, 2, 2, 4528, 4529, 3, 2, 2, 2, 4529, 4530, 7, 580, 2, 2, 4530, 4531, 7, 810, 2, 2, 4531, 4539, 7, 802, 2, 2, 4532, 4534, 7, 830, 2, 2, 4533, 4532, 3, 2, 2, 2, 4533, 4534, 3, 2, 2, 2, 4534, 4535, 3, 2, 2, 2, 4535, 4536, 7, 689, 2, 2, 4536, 4537, 7, 810, 2, 2, 4537, 4539, 9, 9, 2, 2, 4538, 4505, 3, 2, 2, 2, 4538, 4511, 3, 2, 2, 2, 4538, 4521, 3, 2, 2, 2, 4538, 4527, 3, 2, 2, 2, 4538, 4533, 3, 2, 2, 2, 4539, 4542, 3, 2, 2, 2, 4540, 4538, 3, 2, 2, 2, 4540, 4541, 3, 2, 2, 2, 4541, 4543, 3, 2, 2, 2, 4542, 4540, 3, 2, 2, 2, 4543, 4547, 7, 829, 2, 2, 4544, 4547, 7, 402, 2, 2, 4545, 4547, 7, 713, 2, 2, 4546, 4502, 3, 2, 2, 2, 4546, 4544, 3, 2, 2, 2, 4546, 4545, 3, 2, 2, 2, 4547, 4549, 3, 2, 2, 2, 4548, 4501, 3, 2, 2, 2, 4548, 4549, 3, 2, 2, 2, 4549, 4576, 3, 2, 2, 2, 4550, 4551, 7, 377, 2, 2, 4551, 4572, 7, 828, 2, 2, 4552, 4554, 7, 830, 2, 2, 4553, 4552, 3, 2, 2, 2, 4553, 4554, 3, 2, 2, 2, 4554, 4555, 3, 2, 2, 2, 4555, 4556, 7, 661, 2, 2, 4556, 4557, 7, 810, 2, 2, 4557, 4571, 7, 802, 2, 2, 4558, 4560, 7, 830, 2, 2, 4559, 4558, 3, 2, 2, 2, 4559, 4560, 3, 2, 2, 2, 4560, 4561, 3, 2, 2, 2, 4561, 4562, 7, 230, 2, 2, 4562, 4563, 7, 810, 2, 2, 4563, 4571, 9, 46, 2, 2, 4564, 4566, 7, 830, 2, 2, 4565, 4564, 3, 2, 2, 2, 4565, 4566, 3, 2, 2, 2, 4566, 4567, 3, 2, 2, 2, 4567, 4568, 7, 329, 2, 2, 4568, 4569, 7, 810, 2, 2, 4569, 4571, 9, 9, 2, 2, 4570, 4553, 3, 2, 2, 2, 4570, 4559, 3, 2, 2, 2, 4570, 4565, 3, 2, 2, 2, 4571, 4574, 3, 2, 2, 2, 4572, 4570, 3, 2, 2, 2, 4572, 4573, 3, 2, 2, 2, 4573, 4575, 3, 2, 2, 2, 4574, 4572, 3, 2, 2, 2, 4575, 4577, 7, 829, 2, 2, 4576, 4550, 3, 2, 2, 2, 4576, 4577, 3, 2, 2, 2, 4577, 4624, 3, 2, 2, 2, 4578, 4622, 7, 374, 2, 2, 4579, 4581, 7, 830, 2, 2, 4580, 4579, 3, 2, 2, 2, 4580, 4581, 3, 2, 2, 2, 4581, 4583, 3, 2, 2, 2, 4582, 4584, 7, 220, 2, 2, 4583, 4582, 3, 2, 2, 2, 4583, 4584, 3, 2, 2, 2, 4584, 4585, 3, 2, 2, 2, 4585, 4597, 5, 966, 484, 2, 4586, 4598, 7, 810, 2, 2, 4587, 4588, 7, 812, 2, 2, 4588, 4598, 7, 811, 2, 2, 4589, 4590, 7, 813, 2, 2, 4590, 4598, 7, 810, 2, 2, 4591, 4598, 7, 811, 2, 2, 4592, 4593, 7, 811, 2, 2, 4593, 4598, 7, 810, 2, 2, 4594, 4598, 7, 812, 2, 2, 4595, 4596, 7, 812, 2, 2, 4596, 4598, 7, 810, 2, 2, 4597, 4586, 3, 2, 2, 2, 4597, 4587, 3, 2, 2, 2, 4597, 4589, 3, 2, 2, 2, 4597, 4591, 3, 2, 2, 2, 4597, 4592, 3, 2, 2, 2, 4597, 4594, 3, 2, 2, 2, 4597, 4595, 3, 2, 2, 2, 4598, 4599, 3, 2, 2, 2, 4599, 4600, 9, 24, 2, 2, 4600, 4623, 3, 2, 2, 2, 4601, 4603, 7, 830, 2, 2, 4602, 4601, 3, 2, 2, 2, 4602, 4603, 3, 2, 2, 2, 4603, 4604, 3, 2, 2, 2, 4604, 4606, 9, 29, 2, 2, 4605, 4607, 7, 220, 2, 2, 4606, 4605, 3, 2, 2, 2, 4606, 4607, 3, 2, 2, 2, 4607, 4619, 3, 2, 2, 2, 4608, 4620, 7, 810, 2, 2, 4609, 4610, 7, 812, 2, 2, 4610, 4620, 7, 811, 2, 2, 4611, 4612, 7, 813, 2, 2, 4612, 4620, 7, 810, 2, 2, 4613, 4620, 7, 811, 2, 2, 4614, 4615, 7, 811, 2, 2, 4615, 4620, 7, 810, 2, 2, 4616, 4620, 7, 812, 2, 2, 4617, 4618, 7, 812, 2, 2, 4618, 4620, 7, 810, 2, 2, 4619, 4608, 3, 2, 2, 2, 4619, 4609, 3, 2, 2, 2, 4619, 4611, 3, 2, 2, 2, 4619, 4613, 3, 2, 2, 2, 4619, 4614, 3, 2, 2, 2, 4619, 4616, 3, 2, 2, 2, 4619, 4617, 3, 2, 2, 2, 4620, 4621, 3, 2, 2, 2, 4621, 4623, 9, 24, 2, 2, 4622, 4580, 3, 2, 2, 2, 4622, 4602, 3, 2, 2, 2, 4623, 4625, 3, 2, 2, 2, 4624, 4578, 3, 2, 2, 2, 4624, 4625, 3, 2, 2, 2, 4625, 4633, 3, 2, 2, 2, 4626, 4627, 7, 681, 2, 2, 4627, 4633, 7, 374, 2, 2, 4628, 4629, 7, 602, 2, 2, 4629, 4630, 7, 605, 2, 2, 4630, 4631, 7, 810, 2, 2, 4631, 4633, 5, 966, 484, 2, 4632, 4548, 3, 2, 2, 2, 4632, 4626, 3, 2, 2, 2, 4632, 4628, 3, 2, 2, 2, 4633, 373, 3, 2, 2, 2, 4634, 4635, 7, 73, 2, 2, 4635, 4636, 7, 309, 2, 2, 4636, 4637, 7, 406, 2, 2, 4637, 4775, 5, 966, 484, 2, 4638, 4683, 7, 346, 2, 2, 4639, 4640, 7, 129, 2, 2, 4640, 4677, 7, 828, 2, 2, 4641, 4643, 7, 830, 2, 2, 4642, 4641, 3, 2, 2, 2, 4642, 4643, 3, 2, 2, 2, 4643, 4644, 3, 2, 2, 2, 4644, 4645, 7, 509, 2, 2, 4645, 4646, 7, 810, 2, 2, 4646, 4676, 7, 806, 2, 2, 4647, 4649, 7, 830, 2, 2, 4648, 4647, 3, 2, 2, 2, 4648, 4649, 3, 2, 2, 2, 4649, 4650, 3, 2, 2, 2, 4650, 4651, 7, 588, 2, 2, 4651, 4655, 7, 810, 2, 2, 4652, 4653, 7, 802, 2, 2, 4653, 4656, 9, 44, 2, 2, 4654, 4656, 7, 774, 2, 2, 4655, 4652, 3, 2, 2, 2, 4655, 4654, 3, 2, 2, 2, 4656, 4676, 3, 2, 2, 2, 4657, 4659, 7, 830, 2, 2, 4658, 4657, 3, 2, 2, 2, 4658, 4659, 3, 2, 2, 2, 4659, 4660, 3, 2, 2, 2, 4660, 4661, 7, 585, 2, 2, 4661, 4662, 7, 810, 2, 2, 4662, 4676, 9, 45, 2, 2, 4663, 4665, 7, 830, 2, 2, 4664, 4663, 3, 2, 2, 2, 4664, 4665, 3, 2, 2, 2, 4665, 4666, 3, 2, 2, 2, 4666, 4667, 7, 580, 2, 2, 4667, 4668, 7, 810, 2, 2, 4668, 4676, 7, 802, 2, 2, 4669, 4671, 7, 830, 2, 2, 4670, 4669, 3, 2, 2, 2, 4670, 4671, 3, 2, 2, 2, 4671, 4672, 3, 2, 2, 2, 4672, 4673, 7, 689, 2, 2, 4673, 4674, 7, 810, 2, 2, 4674, 4676, 9, 9, 2, 2, 4675, 4642, 3, 2, 2, 2, 4675, 4648, 3, 2, 2, 2, 4675, 4658, 3, 2, 2, 2, 4675, 4664, 3, 2, 2, 2, 4675, 4670, 3, 2, 2, 2, 4676, 4679, 3, 2, 2, 2, 4677, 4675, 3, 2, 2, 2, 4677, 4678, 3, 2, 2, 2, 4678, 4680, 3, 2, 2, 2, 4679, 4677, 3, 2, 2, 2, 4680, 4684, 7, 829, 2, 2, 4681, 4684, 7, 402, 2, 2, 4682, 4684, 7, 713, 2, 2, 4683, 4639, 3, 2, 2, 2, 4683, 4681, 3, 2, 2, 2, 4683, 4682, 3, 2, 2, 2, 4684, 4686, 3, 2, 2, 2, 4685, 4638, 3, 2, 2, 2, 4685, 4686, 3, 2, 2, 2, 4686, 4719, 3, 2, 2, 2, 4687, 4688, 7, 377, 2, 2, 4688, 4715, 7, 828, 2, 2, 4689, 4691, 7, 830, 2, 2, 4690, 4689, 3, 2, 2, 2, 4690, 4691, 3, 2, 2, 2, 4691, 4692, 3, 2, 2, 2, 4692, 4693, 7, 661, 2, 2, 4693, 4694, 7, 810, 2, 2, 4694, 4714, 7, 802, 2, 2, 4695, 4697, 7, 830, 2, 2, 4696, 4695, 3, 2, 2, 2, 4696, 4697, 3, 2, 2, 2, 4697, 4698, 3, 2, 2, 2, 4698, 4699, 7, 230, 2, 2, 4699, 4700, 7, 810, 2, 2, 4700, 4714, 9, 46, 2, 2, 4701, 4703, 7, 830, 2, 2, 4702, 4701, 3, 2, 2, 2, 4702, 4703, 3, 2, 2, 2, 4703, 4704, 3, 2, 2, 2, 4704, 4705, 7, 329, 2, 2, 4705, 4706, 7, 810, 2, 2, 4706, 4714, 9, 9, 2, 2, 4707, 4709, 7, 830, 2, 2, 4708, 4707, 3, 2, 2, 2, 4708, 4709, 3, 2, 2, 2, 4709, 4710, 3, 2, 2, 2, 4710, 4711, 7, 407, 2, 2, 4711, 4712, 7, 810, 2, 2, 4712, 4714, 5, 966, 484, 2, 4713, 4690, 3, 2, 2, 2, 4713, 4696, 3, 2, 2, 2, 4713, 4702, 3, 2, 2, 2, 4713, 4708, 3, 2, 2, 2, 4714, 4717, 3, 2, 2, 2, 4715, 4713, 3, 2, 2, 2, 4715, 4716, 3, 2, 2, 2, 4716, 4718, 3, 2, 2, 2, 4717, 4715, 3, 2, 2, 2, 4718, 4720, 7, 829, 2, 2, 4719, 4687, 3, 2, 2, 2, 4719, 4720, 3, 2, 2, 2, 4720, 4767, 3, 2, 2, 2, 4721, 4765, 7, 374, 2, 2, 4722, 4724, 7, 830, 2, 2, 4723, 4722, 3, 2, 2, 2, 4723, 4724, 3, 2, 2, 2, 4724, 4726, 3, 2, 2, 2, 4725, 4727, 7, 220, 2, 2, 4726, 4725, 3, 2, 2, 2, 4726, 4727, 3, 2, 2, 2, 4727, 4728, 3, 2, 2, 2, 4728, 4740, 5, 966, 484, 2, 4729, 4741, 7, 810, 2, 2, 4730, 4731, 7, 812, 2, 2, 4731, 4741, 7, 811, 2, 2, 4732, 4733, 7, 813, 2, 2, 4733, 4741, 7, 810, 2, 2, 4734, 4741, 7, 811, 2, 2, 4735, 4736, 7, 811, 2, 2, 4736, 4741, 7, 810, 2, 2, 4737, 4741, 7, 812, 2, 2, 4738, 4739, 7, 812, 2, 2, 4739, 4741, 7, 810, 2, 2, 4740, 4729, 3, 2, 2, 2, 4740, 4730, 3, 2, 2, 2, 4740, 4732, 3, 2, 2, 2, 4740, 4734, 3, 2, 2, 2, 4740, 4735, 3, 2, 2, 2, 4740, 4737, 3, 2, 2, 2, 4740, 4738, 3, 2, 2, 2, 4741, 4742, 3, 2, 2, 2, 4742, 4743, 9, 24, 2, 2, 4743, 4766, 3, 2, 2, 2, 4744, 4746, 7, 830, 2, 2, 4745, 4744, 3, 2, 2, 2, 4745, 4746, 3, 2, 2, 2, 4746, 4747, 3, 2, 2, 2, 4747, 4749, 9, 29, 2, 2, 4748, 4750, 7, 220, 2, 2, 4749, 4748, 3, 2, 2, 2, 4749, 4750, 3, 2, 2, 2, 4750, 4762, 3, 2, 2, 2, 4751, 4763, 7, 810, 2, 2, 4752, 4753, 7, 812, 2, 2, 4753, 4763, 7, 811, 2, 2, 4754, 4755, 7, 813, 2, 2, 4755, 4763, 7, 810, 2, 2, 4756, 4763, 7, 811, 2, 2, 4757, 4758, 7, 811, 2, 2, 4758, 4763, 7, 810, 2, 2, 4759, 4763, 7, 812, 2, 2, 4760, 4761, 7, 812, 2, 2, 4761, 4763, 7, 810, 2, 2, 4762, 4751, 3, 2, 2, 2, 4762, 4752, 3, 2, 2, 2, 4762, 4754, 3, 2, 2, 2, 4762, 4756, 3, 2, 2, 2, 4762, 4757, 3, 2, 2, 2, 4762, 4759, 3, 2, 2, 2, 4762, 4760, 3, 2, 2, 2, 4763, 4764, 3, 2, 2, 2, 4764, 4766, 9, 24, 2, 2, 4765, 4723, 3, 2, 2, 2, 4765, 4745, 3, 2, 2, 2, 4766, 4768, 3, 2, 2, 2, 4767, 4721, 3, 2, 2, 2, 4767, 4768, 3, 2, 2, 2, 4768, 4776, 3, 2, 2, 2, 4769, 4770, 7, 681, 2, 2, 4770, 4776, 7, 374, 2, 2, 4771, 4772, 7, 602, 2, 2, 4772, 4773, 7, 605, 2, 2, 4773, 4774, 7, 810, 2, 2, 4774, 4776, 5, 966, 484, 2, 4775, 4685, 3, 2, 2, 2, 4775, 4769, 3, 2, 2, 2, 4775, 4771, 3, 2, 2, 2, 4776, 375, 3, 2, 2, 2, 4777, 4778, 7, 10, 2, 2, 4778, 4779, 7, 309, 2, 2, 4779, 4780, 7, 406, 2, 2, 4780, 4781, 7, 323, 2, 2, 4781, 4786, 5, 966, 484, 2, 4782, 4783, 7, 133, 2, 2, 4783, 4784, 7, 309, 2, 2, 4784, 4785, 7, 406, 2, 2, 4785, 4787, 5, 966, 484, 2, 4786, 4782, 3, 2, 2, 2, 4786, 4787, 3, 2, 2, 2, 4787, 4795, 3, 2, 2, 2, 4788, 4789, 9, 21, 2, 2, 4789, 4790, 7, 828, 2, 2, 4790, 4791, 5, 966, 484, 2, 4791, 4792, 7, 829, 2, 2, 4792, 4794, 3, 2, 2, 2, 4793, 4788, 3, 2, 2, 2, 4794, 4797, 3, 2, 2, 2, 4795, 4793, 3, 2, 2, 2, 4795, 4796, 3, 2, 2, 2, 4796, 4804, 3, 2, 2, 2, 4797, 4795, 3, 2, 2, 2, 4798, 4799, 7, 377, 2, 2, 4799, 4800, 7, 828, 2, 2, 4800, 4801, 7, 329, 2, 2, 4801, 4802, 7, 810, 2, 2, 4802, 4803, 9, 9, 2, 2, 4803, 4805, 7, 829, 2, 2, 4804, 4798, 3, 2, 2, 2, 4804, 4805, 3, 2, 2, 2, 4805, 377, 3, 2, 2, 2, 4806, 4807, 7, 73, 2, 2, 4807, 4808, 7, 309, 2, 2, 4808, 4809, 7, 406, 2, 2, 4809, 4810, 7, 323, 2, 2, 4810, 4815, 5, 966, 484, 2, 4811, 4812, 7, 133, 2, 2, 4812, 4813, 7, 309, 2, 2, 4813, 4814, 7, 406, 2, 2, 4814, 4816, 5, 966, 484, 2, 4815, 4811, 3, 2, 2, 2, 4815, 4816, 3, 2, 2, 2, 4816, 4824, 3, 2, 2, 2, 4817, 4818, 7, 4, 2, 2, 4818, 4819, 7, 828, 2, 2, 4819, 4820, 5, 966, 484, 2, 4820, 4821, 7, 829, 2, 2, 4821, 4823, 3, 2, 2, 2, 4822, 4817, 3, 2, 2, 2, 4823, 4826, 3, 2, 2, 2, 4824, 4822, 3, 2, 2, 2, 4824, 4825, 3, 2, 2, 2, 4825, 4833, 3, 2, 2, 2, 4826, 4824, 3, 2, 2, 2, 4827, 4828, 7, 377, 2, 2, 4828, 4829, 7, 828, 2, 2, 4829, 4830, 7, 329, 2, 2, 4830, 4831, 7, 810, 2, 2, 4831, 4832, 9, 9, 2, 2, 4832, 4834, 7, 829, 2, 2, 4833, 4827, 3, 2, 2, 2, 4833, 4834, 3, 2, 2, 2, 4834, 379, 3, 2, 2, 2, 4835, 4836, 7, 10, 2, 2, 4836, 4837, 7, 309, 2, 2, 4837, 4838, 7, 60, 2, 2, 4838, 4944, 7, 315, 2, 2, 4839, 4840, 7, 260, 2, 2, 4840, 4876, 7, 391, 2, 2, 4841, 4842, 7, 449, 2, 2, 4842, 4858, 7, 810, 2, 2, 4843, 4859, 7, 408, 2, 2, 4844, 4846, 7, 830, 2, 2, 4845, 4844, 3, 2, 2, 2, 4845, 4846, 3, 2, 2, 2, 4846, 4847, 3, 2, 2, 2, 4847, 4855, 7, 802, 2, 2, 4848, 4850, 7, 830, 2, 2, 4849, 4848, 3, 2, 2, 2, 4849, 4850, 3, 2, 2, 2, 4850, 4851, 3, 2, 2, 2, 4851, 4852, 7, 802, 2, 2, 4852, 4853, 7, 346, 2, 2, 4853, 4855, 7, 802, 2, 2, 4854, 4845, 3, 2, 2, 2, 4854, 4849, 3, 2, 2, 2, 4855, 4856, 3, 2, 2, 2, 4856, 4854, 3, 2, 2, 2, 4856, 4857, 3, 2, 2, 2, 4857, 4859, 3, 2, 2, 2, 4858, 4843, 3, 2, 2, 2, 4858, 4854, 3, 2, 2, 2, 4859, 4877, 3, 2, 2, 2, 4860, 4861, 7, 622, 2, 2, 4861, 4872, 7, 810, 2, 2, 4862, 4864, 7, 830, 2, 2, 4863, 4862, 3, 2, 2, 2, 4863, 4864, 3, 2, 2, 2, 4864, 4865, 3, 2, 2, 2, 4865, 4873, 7, 802, 2, 2, 4866, 4868, 7, 830, 2, 2, 4867, 4866, 3, 2, 2, 2, 4867, 4868, 3, 2, 2, 2, 4868, 4869, 3, 2, 2, 2, 4869, 4870, 7, 802, 2, 2, 4870, 4871, 7, 346, 2, 2, 4871, 4873, 7, 802, 2, 2, 4872, 4863, 3, 2, 2, 2, 4872, 4867, 3, 2, 2, 2, 4873, 4874, 3, 2, 2, 2, 4874, 4872, 3, 2, 2, 2, 4874, 4875, 3, 2, 2, 2, 4875, 4877, 3, 2, 2, 2, 4876, 4841, 3, 2, 2, 2, 4876, 4860, 3, 2, 2, 2, 4877, 4945, 3, 2, 2, 2, 4878, 4879, 7, 95, 2, 2, 4879, 4895, 7, 187, 2, 2, 4880, 4896, 7, 229, 2, 2, 4881, 4896, 7, 226, 2, 2, 4882, 4883, 7, 643, 2, 2, 4883, 4884, 7, 810, 2, 2, 4884, 4896, 9, 47, 2, 2, 4885, 4886, 7, 195, 2, 2, 4886, 4890, 7, 810, 2, 2, 4887, 4888, 7, 802, 2, 2, 4888, 4891, 7, 589, 2, 2, 4889, 4891, 7, 89, 2, 2, 4890, 4887, 3, 2, 2, 2, 4890, 4889, 3, 2, 2, 2, 4891, 4896, 3, 2, 2, 2, 4892, 4893, 7, 580, 2, 2, 4893, 4894, 7, 810, 2, 2, 4894, 4896, 9, 48, 2, 2, 4895, 4880, 3, 2, 2, 2, 4895, 4881, 3, 2, 2, 2, 4895, 4882, 3, 2, 2, 2, 4895, 4885, 3, 2, 2, 2, 4895, 4892, 3, 2, 2, 2, 4896, 4945, 3, 2, 2, 2, 4897, 4898, 7, 125, 2, 2, 4898, 4899, 7, 52, 2, 2, 4899, 4917, 7, 656, 2, 2, 4900, 4901, 7, 369, 2, 2, 4901, 4902, 7, 810, 2, 2, 4902, 4918, 9, 47, 2, 2, 4903, 4904, 7, 325, 2, 2, 4904, 4905, 7, 810, 2, 2, 4905, 4918, 9, 47, 2, 2, 4906, 4907, 7, 326, 2, 2, 4907, 4908, 7, 810, 2, 2, 4908, 4918, 9, 47, 2, 2, 4909, 4910, 7, 327, 2, 2, 4910, 4918, 9, 47, 2, 2, 4911, 4912, 7, 126, 2, 2, 4912, 4913, 7, 810, 2, 2, 4913, 4918, 9, 47, 2, 2, 4914, 4915, 7, 149, 2, 2, 4915, 4916, 7, 810, 2, 2, 4916, 4918, 9, 48, 2, 2, 4917, 4900, 3, 2, 2, 2, 4917, 4903, 3, 2, 2, 2, 4917, 4906, 3, 2, 2, 2, 4917, 4909, 3, 2, 2, 2, 4917, 4911, 3, 2, 2, 2, 4917, 4914, 3, 2, 2, 2, 4918, 4945, 3, 2, 2, 2, 4919, 4920, 7, 530, 2, 2, 4920, 4921, 7, 52, 2, 2, 4921, 4922, 7, 65, 2, 2, 4922, 4923, 7, 810, 2, 2, 4923, 4945, 9, 49, 2, 2, 4924, 4925, 7, 35, 2, 2, 4925, 4926, 7, 645, 2, 2, 4926, 4939, 7, 122, 2, 2, 4927, 4928, 7, 229, 2, 2, 4928, 4929, 7, 828, 2, 2, 4929, 4930, 7, 130, 2, 2, 4930, 4931, 7, 810, 2, 2, 4931, 4932, 7, 806, 2, 2, 4932, 4933, 7, 830, 2, 2, 4933, 4934, 7, 728, 2, 2, 4934, 4935, 7, 810, 2, 2, 4935, 4936, 7, 802, 2, 2, 4936, 4937, 9, 50, 2, 2, 4937, 4940, 7, 829, 2, 2, 4938, 4940, 7, 226, 2, 2, 4939, 4927, 3, 2, 2, 2, 4939, 4938, 3, 2, 2, 2, 4940, 4945, 3, 2, 2, 2, 4941, 4942, 7, 315, 2, 2, 4942, 4943, 7, 320, 2, 2, 4943, 4945, 9, 9, 2, 2, 4944, 4839, 3, 2, 2, 2, 4944, 4878, 3, 2, 2, 2, 4944, 4897, 3, 2, 2, 2, 4944, 4919, 3, 2, 2, 2, 4944, 4924, 3, 2, 2, 2, 4944, 4941, 3, 2, 2, 2, 4945, 381, 3, 2, 2, 2, 4946, 4947, 7, 10, 2, 2, 4947, 4948, 7, 309, 2, 2, 4948, 4949, 7, 289, 2, 2, 4949, 4957, 5, 966, 484, 2, 4950, 4951, 9, 21, 2, 2, 4951, 4952, 7, 199, 2, 2, 4952, 4958, 5, 966, 484, 2, 4953, 4954, 7, 377, 2, 2, 4954, 4955, 7, 605, 2, 2, 4955, 4956, 7, 810, 2, 2, 4956, 4958, 5, 966, 484, 2, 4957, 4950, 3, 2, 2, 2, 4957, 4953, 3, 2, 2, 2, 4958, 383, 3, 2, 2, 2, 4959, 4960, 7, 73, 2, 2, 4960, 4961, 7, 309, 2, 2, 4961, 4962, 7, 289, 2, 2, 4962, 4965, 5, 966, 484, 2, 4963, 4964, 7, 20, 2, 2, 4964, 4966, 5, 966, 484, 2, 4965, 4963, 3, 2, 2, 2, 4965, 4966, 3, 2, 2, 2, 4966, 385, 3, 2, 2, 2, 4967, 4968, 7, 10, 2, 2, 4968, 4969, 7, 309, 2, 2, 4969, 4970, 7, 289, 2, 2, 4970, 4971, 5, 966, 484, 2, 4971, 4972, 9, 21, 2, 2, 4972, 4973, 7, 199, 2, 2, 4973, 4974, 5, 966, 484, 2, 4974, 387, 3, 2, 2, 2, 4975, 4976, 7, 10, 2, 2, 4976, 4977, 7, 310, 2, 2, 4977, 4985, 5, 966, 484, 2, 4978, 4979, 7, 229, 2, 2, 4979, 4980, 7, 660, 2, 2, 4980, 4981, 5, 966, 484, 2, 4981, 4982, 7, 823, 2, 2, 4982, 4983, 3, 2, 2, 2, 4983, 4984, 5, 966, 484, 2, 4984, 4986, 3, 2, 2, 2, 4985, 4978, 3, 2, 2, 2, 4985, 4986, 3, 2, 2, 2, 4986, 4994, 3, 2, 2, 2, 4987, 4989, 7, 830, 2, 2, 4988, 4987, 3, 2, 2, 2, 4988, 4989, 3, 2, 2, 2, 4989, 4990, 3, 2, 2, 2, 4990, 4991, 9, 21, 2, 2, 4991, 4993, 5, 966, 484, 2, 4992, 4988, 3, 2, 2, 2, 4993, 4996, 3, 2, 2, 2, 4994, 4992, 3, 2, 2, 2, 4994, 4995, 3, 2, 2, 2, 4995, 389, 3, 2, 2, 2, 4996, 4994, 3, 2, 2, 2, 4997, 4998, 7, 73, 2, 2, 4998, 4999, 7, 310, 2, 2, 4999, 5002, 5, 966, 484, 2, 5000, 5001, 7, 20, 2, 2, 5001, 5003, 5, 966, 484, 2, 5002, 5000, 3, 2, 2, 2, 5002, 5003, 3, 2, 2, 2, 5003, 5004, 3, 2, 2, 2, 5004, 5005, 7, 229, 2, 2, 5005, 5009, 7, 660, 2, 2, 5006, 5007, 5, 966, 484, 2, 5007, 5008, 7, 823, 2, 2, 5008, 5010, 3, 2, 2, 2, 5009, 5006, 3, 2, 2, 2, 5009, 5010, 3, 2, 2, 2, 5010, 5011, 3, 2, 2, 2, 5011, 5025, 5, 966, 484, 2, 5012, 5020, 7, 828, 2, 2, 5013, 5015, 7, 830, 2, 2, 5014, 5013, 3, 2, 2, 2, 5014, 5015, 3, 2, 2, 2, 5015, 5018, 3, 2, 2, 2, 5016, 5019, 5, 966, 484, 2, 5017, 5019, 7, 89, 2, 2, 5018, 5016, 3, 2, 2, 2, 5018, 5017, 3, 2, 2, 2, 5019, 5021, 3, 2, 2, 2, 5020, 5014, 3, 2, 2, 2, 5021, 5022, 3, 2, 2, 2, 5022, 5020, 3, 2, 2, 2, 5022, 5023, 3, 2, 2, 2, 5023, 5024, 3, 2, 2, 2, 5024, 5026, 7, 829, 2, 2, 5025, 5012, 3, 2, 2, 2, 5025, 5026, 3, 2, 2, 2, 5026, 391, 3, 2, 2, 2, 5027, 5028, 7, 10, 2, 2, 5028, 5029, 7, 310, 2, 2, 5029, 5030, 7, 189, 2, 2, 5030, 5052, 7, 172, 2, 2, 5031, 5033, 7, 515, 2, 2, 5032, 5031, 3, 2, 2, 2, 5032, 5033, 3, 2, 2, 2, 5033, 5034, 3, 2, 2, 2, 5034, 5053, 7, 271, 2, 2, 5035, 5050, 7, 377, 2, 2, 5036, 5037, 7, 628, 2, 2, 5037, 5038, 7, 810, 2, 2, 5038, 5039, 7, 806, 2, 2, 5039, 5040, 7, 830, 2, 2, 5040, 5041, 7, 228, 2, 2, 5041, 5042, 7, 810, 2, 2, 5042, 5051, 7, 806, 2, 2, 5043, 5044, 7, 607, 2, 2, 5044, 5045, 7, 810, 2, 2, 5045, 5046, 7, 806, 2, 2, 5046, 5047, 7, 830, 2, 2, 5047, 5048, 7, 609, 2, 2, 5048, 5049, 7, 810, 2, 2, 5049, 5051, 7, 806, 2, 2, 5050, 5036, 3, 2, 2, 2, 5050, 5043, 3, 2, 2, 2, 5050, 5051, 3, 2, 2, 2, 5051, 5053, 3, 2, 2, 2, 5052, 5032, 3, 2, 2, 2, 5052, 5035, 3, 2, 2, 2, 5053, 393, 3, 2, 2, 2, 5054, 5055, 7, 10, 2, 2, 5055, 5056, 7, 747, 2, 2, 5056, 5057, 7, 172, 2, 2, 5057, 5058, 5, 966, 484, 2, 5058, 5059, 9, 21, 2, 2, 5059, 5060, 7, 492, 2, 2, 5060, 5072, 7, 38, 2, 2, 5061, 5062, 7, 43, 2, 2, 5062, 5073, 5, 966, 484, 2, 5063, 5064, 7, 244, 2, 2, 5064, 5065, 7, 810, 2, 2, 5065, 5073, 7, 806, 2, 2, 5066, 5067, 7, 747, 2, 2, 5067, 5068, 7, 172, 2, 2, 5068, 5073, 5, 966, 484, 2, 5069, 5070, 7, 18, 2, 2, 5070, 5071, 7, 172, 2, 2, 5071, 5073, 5, 966, 484, 2, 5072, 5061, 3, 2, 2, 2, 5072, 5063, 3, 2, 2, 2, 5072, 5066, 3, 2, 2, 2, 5072, 5069, 3, 2, 2, 2, 5073, 395, 3, 2, 2, 2, 5074, 5075, 7, 10, 2, 2, 5075, 5076, 7, 747, 2, 2, 5076, 5077, 7, 172, 2, 2, 5077, 5080, 5, 966, 484, 2, 5078, 5079, 7, 20, 2, 2, 5079, 5081, 5, 966, 484, 2, 5080, 5078, 3, 2, 2, 2, 5080, 5081, 3, 2, 2, 2, 5081, 5085, 3, 2, 2, 2, 5082, 5083, 7, 139, 2, 2, 5083, 5084, 7, 657, 2, 2, 5084, 5086, 5, 966, 484, 2, 5085, 5082, 3, 2, 2, 2, 5085, 5086, 3, 2, 2, 2, 5086, 5087, 3, 2, 2, 2, 5087, 5120, 7, 377, 2, 2, 5088, 5089, 7, 555, 2, 2, 5089, 5090, 7, 810, 2, 2, 5090, 5104, 7, 806, 2, 2, 5091, 5092, 7, 394, 2, 2, 5092, 5093, 7, 810, 2, 2, 5093, 5104, 9, 51, 2, 2, 5094, 5095, 7, 536, 2, 2, 5095, 5096, 7, 810, 2, 2, 5096, 5104, 7, 806, 2, 2, 5097, 5098, 7, 658, 2, 2, 5098, 5099, 7, 810, 2, 2, 5099, 5104, 7, 806, 2, 2, 5100, 5101, 7, 451, 2, 2, 5101, 5102, 7, 810, 2, 2, 5102, 5104, 9, 12, 2, 2, 5103, 5088, 3, 2, 2, 2, 5103, 5091, 3, 2, 2, 2, 5103, 5094, 3, 2, 2, 2, 5103, 5097, 3, 2, 2, 2, 5103, 5100, 3, 2, 2, 2, 5104, 5121, 3, 2, 2, 2, 5105, 5106, 7, 492, 2, 2, 5106, 5118, 7, 38, 2, 2, 5107, 5108, 7, 43, 2, 2, 5108, 5119, 5, 966, 484, 2, 5109, 5110, 7, 244, 2, 2, 5110, 5111, 7, 810, 2, 2, 5111, 5119, 7, 806, 2, 2, 5112, 5113, 7, 747, 2, 2, 5113, 5114, 7, 172, 2, 2, 5114, 5119, 5, 966, 484, 2, 5115, 5116, 7, 18, 2, 2, 5116, 5117, 7, 172, 2, 2, 5117, 5119, 5, 966, 484, 2, 5118, 5107, 3, 2, 2, 2, 5118, 5109, 3, 2, 2, 2, 5118, 5112, 3, 2, 2, 2, 5118, 5115, 3, 2, 2, 2, 5119, 5121, 3, 2, 2, 2, 5120, 5103, 3, 2, 2, 2, 5120, 5105, 3, 2, 2, 2, 5121, 397, 3, 2, 2, 2, 5122, 5123, 7, 73, 2, 2, 5123, 5127, 7, 749, 2, 2, 5124, 5125, 5, 966, 484, 2, 5125, 5126, 7, 823, 2, 2, 5126, 5128, 3, 2, 2, 2, 5127, 5124, 3, 2, 2, 2, 5127, 5128, 3, 2, 2, 2, 5128, 5129, 3, 2, 2, 2, 5129, 5130, 5, 966, 484, 2, 5130, 5157, 7, 133, 2, 2, 5131, 5132, 5, 966, 484, 2, 5132, 5133, 7, 823, 2, 2, 5133, 5135, 3, 2, 2, 2, 5134, 5131, 3, 2, 2, 2, 5134, 5135, 3, 2, 2, 2, 5135, 5139, 3, 2, 2, 2, 5136, 5137, 5, 966, 484, 2, 5137, 5138, 7, 823, 2, 2, 5138, 5140, 3, 2, 2, 2, 5139, 5136, 3, 2, 2, 2, 5139, 5140, 3, 2, 2, 2, 5140, 5144, 3, 2, 2, 2, 5141, 5142, 5, 966, 484, 2, 5142, 5143, 7, 823, 2, 2, 5143, 5145, 3, 2, 2, 2, 5144, 5141, 3, 2, 2, 2, 5144, 5145, 3, 2, 2, 2, 5145, 5146, 3, 2, 2, 2, 5146, 5158, 5, 966, 484, 2, 5147, 5148, 5, 966, 484, 2, 5148, 5149, 7, 823, 2, 2, 5149, 5151, 3, 2, 2, 2, 5150, 5147, 3, 2, 2, 2, 5150, 5151, 3, 2, 2, 2, 5151, 5155, 3, 2, 2, 2, 5152, 5153, 5, 966, 484, 2, 5153, 5154, 7, 823, 2, 2, 5154, 5156, 3, 2, 2, 2, 5155, 5152, 3, 2, 2, 2, 5155, 5156, 3, 2, 2, 2, 5156, 5158, 3, 2, 2, 2, 5157, 5134, 3, 2, 2, 2, 5157, 5150, 3, 2, 2, 2, 5158, 399, 3, 2, 2, 2, 5159, 5160, 7, 10, 2, 2, 5160, 5161, 7, 366, 2, 2, 5161, 5162, 5, 966, 484, 2, 5162, 5213, 7, 377, 2, 2, 5163, 5165, 7, 830, 2, 2, 5164, 5163, 3, 2, 2, 2, 5164, 5165, 3, 2, 2, 2, 5165, 5166, 3, 2, 2, 2, 5166, 5167, 7, 605, 2, 2, 5167, 5168, 7, 810, 2, 2, 5168, 5214, 5, 966, 484, 2, 5169, 5171, 7, 830, 2, 2, 5170, 5169, 3, 2, 2, 2, 5170, 5171, 3, 2, 2, 2, 5171, 5172, 3, 2, 2, 2, 5172, 5173, 7, 91, 2, 2, 5173, 5176, 7, 810, 2, 2, 5174, 5177, 5, 966, 484, 2, 5175, 5177, 7, 223, 2, 2, 5176, 5174, 3, 2, 2, 2, 5176, 5175, 3, 2, 2, 2, 5177, 5214, 3, 2, 2, 2, 5178, 5180, 7, 830, 2, 2, 5179, 5178, 3, 2, 2, 2, 5179, 5180, 3, 2, 2, 2, 5180, 5181, 3, 2, 2, 2, 5181, 5182, 7, 571, 2, 2, 5182, 5183, 7, 810, 2, 2, 5183, 5214, 5, 966, 484, 2, 5184, 5186, 7, 830, 2, 2, 5185, 5184, 3, 2, 2, 2, 5185, 5186, 3, 2, 2, 2, 5186, 5187, 3, 2, 2, 2, 5187, 5188, 7, 244, 2, 2, 5188, 5189, 7, 810, 2, 2, 5189, 5193, 7, 806, 2, 2, 5190, 5191, 7, 228, 2, 2, 5191, 5192, 7, 810, 2, 2, 5192, 5194, 7, 806, 2, 2, 5193, 5190, 3, 2, 2, 2, 5194, 5195, 3, 2, 2, 2, 5195, 5193, 3, 2, 2, 2, 5195, 5196, 3, 2, 2, 2, 5196, 5214, 3, 2, 2, 2, 5197, 5199, 7, 830, 2, 2, 5198, 5197, 3, 2, 2, 2, 5198, 5199, 3, 2, 2, 2, 5199, 5200, 3, 2, 2, 2, 5200, 5201, 7, 468, 2, 2, 5201, 5205, 7, 810, 2, 2, 5202, 5206, 7, 213, 2, 2, 5203, 5206, 7, 802, 2, 2, 5204, 5206, 5, 966, 484, 2, 5205, 5202, 3, 2, 2, 2, 5205, 5203, 3, 2, 2, 2, 5205, 5204, 3, 2, 2, 2, 5206, 5214, 3, 2, 2, 2, 5207, 5209, 7, 830, 2, 2, 5208, 5207, 3, 2, 2, 2, 5208, 5209, 3, 2, 2, 2, 5209, 5210, 3, 2, 2, 2, 5210, 5211, 7, 395, 2, 2, 5211, 5212, 7, 810, 2, 2, 5212, 5214, 9, 9, 2, 2, 5213, 5164, 3, 2, 2, 2, 5213, 5170, 3, 2, 2, 2, 5213, 5179, 3, 2, 2, 2, 5213, 5185, 3, 2, 2, 2, 5213, 5198, 3, 2, 2, 2, 5213, 5208, 3, 2, 2, 2, 5214, 5215, 3, 2, 2, 2, 5215, 5213, 3, 2, 2, 2, 5215, 5216, 3, 2, 2, 2, 5216, 401, 3, 2, 2, 2, 5217, 5218, 7, 73, 2, 2, 5218, 5219, 7, 366, 2, 2, 5219, 5223, 5, 966, 484, 2, 5220, 5221, 9, 52, 2, 2, 5221, 5222, 7, 571, 2, 2, 5222, 5224, 5, 966, 484, 2, 5223, 5220, 3, 2, 2, 2, 5223, 5224, 3, 2, 2, 2, 5224, 5243, 3, 2, 2, 2, 5225, 5240, 7, 377, 2, 2, 5226, 5228, 7, 830, 2, 2, 5227, 5226, 3, 2, 2, 2, 5227, 5228, 3, 2, 2, 2, 5228, 5229, 3, 2, 2, 2, 5229, 5230, 7, 91, 2, 2, 5230, 5231, 7, 810, 2, 2, 5231, 5239, 5, 966, 484, 2, 5232, 5234, 7, 830, 2, 2, 5233, 5232, 3, 2, 2, 2, 5233, 5234, 3, 2, 2, 2, 5234, 5235, 3, 2, 2, 2, 5235, 5236, 7, 395, 2, 2, 5236, 5237, 7, 810, 2, 2, 5237, 5239, 9, 9, 2, 2, 5238, 5227, 3, 2, 2, 2, 5238, 5233, 3, 2, 2, 2, 5239, 5242, 3, 2, 2, 2, 5240, 5238, 3, 2, 2, 2, 5240, 5241, 3, 2, 2, 2, 5241, 5244, 3, 2, 2, 2, 5242, 5240, 3, 2, 2, 2, 5243, 5225, 3, 2, 2, 2, 5243, 5244, 3, 2, 2, 2, 5244, 5364, 3, 2, 2, 2, 5245, 5246, 7, 73, 2, 2, 5246, 5327, 7, 366, 2, 2, 5247, 5282, 5, 966, 484, 2, 5248, 5279, 7, 377, 2, 2, 5249, 5251, 7, 830, 2, 2, 5250, 5249, 3, 2, 2, 2, 5250, 5251, 3, 2, 2, 2, 5251, 5252, 3, 2, 2, 2, 5252, 5253, 7, 91, 2, 2, 5253, 5254, 7, 810, 2, 2, 5254, 5278, 5, 966, 484, 2, 5255, 5257, 7, 830, 2, 2, 5256, 5255, 3, 2, 2, 2, 5256, 5257, 3, 2, 2, 2, 5257, 5258, 3, 2, 2, 2, 5258, 5259, 7, 468, 2, 2, 5259, 5263, 7, 810, 2, 2, 5260, 5264, 7, 213, 2, 2, 5261, 5264, 7, 802, 2, 2, 5262, 5264, 5, 966, 484, 2, 5263, 5260, 3, 2, 2, 2, 5263, 5261, 3, 2, 2, 2, 5263, 5262, 3, 2, 2, 2, 5264, 5278, 3, 2, 2, 2, 5265, 5267, 7, 830, 2, 2, 5266, 5265, 3, 2, 2, 2, 5266, 5267, 3, 2, 2, 2, 5267, 5268, 3, 2, 2, 2, 5268, 5269, 7, 318, 2, 2, 5269, 5270, 7, 810, 2, 2, 5270, 5278, 7, 807, 2, 2, 5271, 5273, 7, 830, 2, 2, 5272, 5271, 3, 2, 2, 2, 5272, 5273, 3, 2, 2, 2, 5273, 5274, 3, 2, 2, 2, 5274, 5275, 7, 395, 2, 2, 5275, 5276, 7, 810, 2, 2, 5276, 5278, 9, 9, 2, 2, 5277, 5250, 3, 2, 2, 2, 5277, 5256, 3, 2, 2, 2, 5277, 5266, 3, 2, 2, 2, 5277, 5272, 3, 2, 2, 2, 5278, 5281, 3, 2, 2, 2, 5279, 5277, 3, 2, 2, 2, 5279, 5280, 3, 2, 2, 2, 5280, 5283, 3, 2, 2, 2, 5281, 5279, 3, 2, 2, 2, 5282, 5248, 3, 2, 2, 2, 5282, 5283, 3, 2, 2, 2, 5283, 5328, 3, 2, 2, 2, 5284, 5285, 5, 966, 484, 2, 5285, 5286, 7, 377, 2, 2, 5286, 5287, 7, 244, 2, 2, 5287, 5288, 7, 810, 2, 2, 5288, 5319, 7, 806, 2, 2, 5289, 5291, 7, 830, 2, 2, 5290, 5289, 3, 2, 2, 2, 5290, 5291, 3, 2, 2, 2, 5291, 5292, 3, 2, 2, 2, 5292, 5293, 7, 91, 2, 2, 5293, 5294, 7, 810, 2, 2, 5294, 5318, 5, 966, 484, 2, 5295, 5297, 7, 830, 2, 2, 5296, 5295, 3, 2, 2, 2, 5296, 5297, 3, 2, 2, 2, 5297, 5298, 3, 2, 2, 2, 5298, 5299, 7, 468, 2, 2, 5299, 5303, 7, 810, 2, 2, 5300, 5304, 7, 213, 2, 2, 5301, 5304, 7, 802, 2, 2, 5302, 5304, 5, 966, 484, 2, 5303, 5300, 3, 2, 2, 2, 5303, 5301, 3, 2, 2, 2, 5303, 5302, 3, 2, 2, 2, 5304, 5318, 3, 2, 2, 2, 5305, 5307, 7, 830, 2, 2, 5306, 5305, 3, 2, 2, 2, 5306, 5307, 3, 2, 2, 2, 5307, 5308, 3, 2, 2, 2, 5308, 5309, 7, 318, 2, 2, 5309, 5310, 7, 810, 2, 2, 5310, 5318, 7, 807, 2, 2, 5311, 5313, 7, 830, 2, 2, 5312, 5311, 3, 2, 2, 2, 5312, 5313, 3, 2, 2, 2, 5313, 5314, 3, 2, 2, 2, 5314, 5315, 7, 395, 2, 2, 5315, 5316, 7, 810, 2, 2, 5316, 5318, 9, 9, 2, 2, 5317, 5290, 3, 2, 2, 2, 5317, 5296, 3, 2, 2, 2, 5317, 5306, 3, 2, 2, 2, 5317, 5312, 3, 2, 2, 2, 5318, 5321, 3, 2, 2, 2, 5319, 5317, 3, 2, 2, 2, 5319, 5320, 3, 2, 2, 2, 5320, 5328, 3, 2, 2, 2, 5321, 5319, 3, 2, 2, 2, 5322, 5323, 5, 966, 484, 2, 5323, 5324, 7, 139, 2, 2, 5324, 5325, 7, 123, 2, 2, 5325, 5326, 7, 657, 2, 2, 5326, 5328, 3, 2, 2, 2, 5327, 5247, 3, 2, 2, 2, 5327, 5284, 3, 2, 2, 2, 5327, 5322, 3, 2, 2, 2, 5328, 5364, 3, 2, 2, 2, 5329, 5330, 7, 73, 2, 2, 5330, 5331, 7, 366, 2, 2, 5331, 5358, 5, 966, 484, 2, 5332, 5333, 7, 379, 2, 2, 5333, 5348, 7, 571, 2, 2, 5334, 5336, 7, 830, 2, 2, 5335, 5334, 3, 2, 2, 2, 5335, 5336, 3, 2, 2, 2, 5336, 5337, 3, 2, 2, 2, 5337, 5338, 7, 91, 2, 2, 5338, 5339, 7, 810, 2, 2, 5339, 5347, 5, 966, 484, 2, 5340, 5342, 7, 830, 2, 2, 5341, 5340, 3, 2, 2, 2, 5341, 5342, 3, 2, 2, 2, 5342, 5343, 3, 2, 2, 2, 5343, 5344, 7, 395, 2, 2, 5344, 5345, 7, 810, 2, 2, 5345, 5347, 9, 9, 2, 2, 5346, 5335, 3, 2, 2, 2, 5346, 5341, 3, 2, 2, 2, 5347, 5350, 3, 2, 2, 2, 5348, 5346, 3, 2, 2, 2, 5348, 5349, 3, 2, 2, 2, 5349, 5359, 3, 2, 2, 2, 5350, 5348, 3, 2, 2, 2, 5351, 5352, 9, 52, 2, 2, 5352, 5353, 7, 43, 2, 2, 5353, 5359, 5, 966, 484, 2, 5354, 5355, 9, 52, 2, 2, 5355, 5356, 7, 18, 2, 2, 5356, 5357, 7, 172, 2, 2, 5357, 5359, 5, 966, 484, 2, 5358, 5332, 3, 2, 2, 2, 5358, 5351, 3, 2, 2, 2, 5358, 5354, 3, 2, 2, 2, 5359, 5364, 3, 2, 2, 2, 5360, 5361, 7, 73, 2, 2, 5361, 5362, 7, 366, 2, 2, 5362, 5364, 5, 966, 484, 2, 5363, 5217, 3, 2, 2, 2, 5363, 5245, 3, 2, 2, 2, 5363, 5329, 3, 2, 2, 2, 5363, 5360, 3, 2, 2, 2, 5364, 403, 3, 2, 2, 2, 5365, 5366, 7, 73, 2, 2, 5366, 5367, 7, 366, 2, 2, 5367, 5373, 5, 966, 484, 2, 5368, 5369, 9, 52, 2, 2, 5369, 5370, 7, 571, 2, 2, 5370, 5374, 5, 966, 484, 2, 5371, 5372, 7, 379, 2, 2, 5372, 5374, 7, 571, 2, 2, 5373, 5368, 3, 2, 2, 2, 5373, 5371, 3, 2, 2, 2, 5373, 5374, 3, 2, 2, 2, 5374, 5379, 3, 2, 2, 2, 5375, 5376, 7, 377, 2, 2, 5376, 5377, 7, 91, 2, 2, 5377, 5378, 7, 810, 2, 2, 5378, 5380, 5, 966, 484, 2, 5379, 5375, 3, 2, 2, 2, 5379, 5380, 3, 2, 2, 2, 5380, 5394, 3, 2, 2, 2, 5381, 5382, 7, 73, 2, 2, 5382, 5383, 7, 366, 2, 2, 5383, 5384, 5, 966, 484, 2, 5384, 5385, 7, 139, 2, 2, 5385, 5386, 7, 123, 2, 2, 5386, 5391, 7, 657, 2, 2, 5387, 5388, 7, 377, 2, 2, 5388, 5389, 7, 91, 2, 2, 5389, 5390, 7, 810, 2, 2, 5390, 5392, 5, 966, 484, 2, 5391, 5387, 3, 2, 2, 2, 5391, 5392, 3, 2, 2, 2, 5392, 5394, 3, 2, 2, 2, 5393, 5365, 3, 2, 2, 2, 5393, 5381, 3, 2, 2, 2, 5394, 405, 3, 2, 2, 2, 5395, 5396, 7, 10, 2, 2, 5396, 5397, 7, 366, 2, 2, 5397, 5398, 5, 966, 484, 2, 5398, 5423, 7, 377, 2, 2, 5399, 5401, 7, 830, 2, 2, 5400, 5399, 3, 2, 2, 2, 5400, 5401, 3, 2, 2, 2, 5401, 5402, 3, 2, 2, 2, 5402, 5403, 7, 605, 2, 2, 5403, 5404, 7, 810, 2, 2, 5404, 5424, 5, 966, 484, 2, 5405, 5407, 7, 830, 2, 2, 5406, 5405, 3, 2, 2, 2, 5406, 5407, 3, 2, 2, 2, 5407, 5408, 3, 2, 2, 2, 5408, 5409, 7, 91, 2, 2, 5409, 5410, 7, 810, 2, 2, 5410, 5424, 5, 966, 484, 2, 5411, 5413, 7, 830, 2, 2, 5412, 5411, 3, 2, 2, 2, 5412, 5413, 3, 2, 2, 2, 5413, 5414, 3, 2, 2, 2, 5414, 5415, 7, 571, 2, 2, 5415, 5416, 7, 810, 2, 2, 5416, 5424, 5, 966, 484, 2, 5417, 5419, 7, 830, 2, 2, 5418, 5417, 3, 2, 2, 2, 5418, 5419, 3, 2, 2, 2, 5419, 5420, 3, 2, 2, 2, 5420, 5421, 7, 395, 2, 2, 5421, 5422, 7, 810, 2, 2, 5422, 5424, 9, 9, 2, 2, 5423, 5400, 3, 2, 2, 2, 5423, 5406, 3, 2, 2, 2, 5423, 5412, 3, 2, 2, 2, 5423, 5418, 3, 2, 2, 2, 5424, 5425, 3, 2, 2, 2, 5425, 5423, 3, 2, 2, 2, 5425, 5426, 3, 2, 2, 2, 5426, 407, 3, 2, 2, 2, 5427, 5428, 7, 10, 2, 2, 5428, 5429, 7, 788, 2, 2, 5429, 5432, 7, 146, 2, 2, 5430, 5433, 5, 966, 484, 2, 5431, 5433, 7, 466, 2, 2, 5432, 5430, 3, 2, 2, 2, 5432, 5431, 3, 2, 2, 2, 5433, 5465, 3, 2, 2, 2, 5434, 5435, 7, 377, 2, 2, 5435, 5460, 7, 828, 2, 2, 5436, 5437, 7, 540, 2, 2, 5437, 5438, 7, 810, 2, 2, 5438, 5461, 9, 53, 2, 2, 5439, 5441, 7, 830, 2, 2, 5440, 5439, 3, 2, 2, 2, 5440, 5441, 3, 2, 2, 2, 5441, 5442, 3, 2, 2, 2, 5442, 5443, 7, 686, 2, 2, 5443, 5444, 7, 810, 2, 2, 5444, 5461, 7, 802, 2, 2, 5445, 5447, 7, 830, 2, 2, 5446, 5445, 3, 2, 2, 2, 5446, 5447, 3, 2, 2, 2, 5447, 5448, 3, 2, 2, 2, 5448, 5449, 7, 685, 2, 2, 5449, 5450, 7, 810, 2, 2, 5450, 5461, 7, 802, 2, 2, 5451, 5452, 7, 687, 2, 2, 5452, 5453, 7, 810, 2, 2, 5453, 5461, 7, 802, 2, 2, 5454, 5455, 7, 579, 2, 2, 5455, 5456, 7, 810, 2, 2, 5456, 5461, 7, 802, 2, 2, 5457, 5458, 7, 527, 2, 2, 5458, 5459, 7, 810, 2, 2, 5459, 5461, 7, 802, 2, 2, 5460, 5436, 3, 2, 2, 2, 5460, 5440, 3, 2, 2, 2, 5460, 5446, 3, 2, 2, 2, 5460, 5451, 3, 2, 2, 2, 5460, 5454, 3, 2, 2, 2, 5460, 5457, 3, 2, 2, 2, 5461, 5462, 3, 2, 2, 2, 5462, 5460, 3, 2, 2, 2, 5462, 5463, 3, 2, 2, 2, 5463, 5464, 3, 2, 2, 2, 5464, 5466, 7, 829, 2, 2, 5465, 5434, 3, 2, 2, 2, 5465, 5466, 3, 2, 2, 2, 5466, 5472, 3, 2, 2, 2, 5467, 5470, 7, 776, 2, 2, 5468, 5471, 5, 966, 484, 2, 5469, 5471, 7, 466, 2, 2, 5470, 5468, 3, 2, 2, 2, 5470, 5469, 3, 2, 2, 2, 5471, 5473, 3, 2, 2, 2, 5472, 5467, 3, 2, 2, 2, 5472, 5473, 3, 2, 2, 2, 5473, 409, 3, 2, 2, 2, 5474, 5475, 7, 73, 2, 2, 5475, 5476, 7, 788, 2, 2, 5476, 5477, 7, 146, 2, 2, 5477, 5509, 5, 966, 484, 2, 5478, 5479, 7, 377, 2, 2, 5479, 5504, 7, 828, 2, 2, 5480, 5481, 7, 540, 2, 2, 5481, 5482, 7, 810, 2, 2, 5482, 5505, 9, 53, 2, 2, 5483, 5485, 7, 830, 2, 2, 5484, 5483, 3, 2, 2, 2, 5484, 5485, 3, 2, 2, 2, 5485, 5486, 3, 2, 2, 2, 5486, 5487, 7, 686, 2, 2, 5487, 5488, 7, 810, 2, 2, 5488, 5505, 7, 802, 2, 2, 5489, 5491, 7, 830, 2, 2, 5490, 5489, 3, 2, 2, 2, 5490, 5491, 3, 2, 2, 2, 5491, 5492, 3, 2, 2, 2, 5492, 5493, 7, 685, 2, 2, 5493, 5494, 7, 810, 2, 2, 5494, 5505, 7, 802, 2, 2, 5495, 5496, 7, 687, 2, 2, 5496, 5497, 7, 810, 2, 2, 5497, 5505, 7, 802, 2, 2, 5498, 5499, 7, 579, 2, 2, 5499, 5500, 7, 810, 2, 2, 5500, 5505, 7, 802, 2, 2, 5501, 5502, 7, 527, 2, 2, 5502, 5503, 7, 810, 2, 2, 5503, 5505, 7, 802, 2, 2, 5504, 5480, 3, 2, 2, 2, 5504, 5484, 3, 2, 2, 2, 5504, 5490, 3, 2, 2, 2, 5504, 5495, 3, 2, 2, 2, 5504, 5498, 3, 2, 2, 2, 5504, 5501, 3, 2, 2, 2, 5505, 5506, 3, 2, 2, 2, 5506, 5504, 3, 2, 2, 2, 5506, 5507, 3, 2, 2, 2, 5507, 5508, 3, 2, 2, 2, 5508, 5510, 7, 829, 2, 2, 5509, 5478, 3, 2, 2, 2, 5509, 5510, 3, 2, 2, 2, 5510, 5524, 3, 2, 2, 2, 5511, 5514, 7, 776, 2, 2, 5512, 5515, 5, 966, 484, 2, 5513, 5515, 7, 466, 2, 2, 5514, 5512, 3, 2, 2, 2, 5514, 5513, 3, 2, 2, 2, 5514, 5515, 3, 2, 2, 2, 5515, 5522, 3, 2, 2, 2, 5516, 5518, 7, 830, 2, 2, 5517, 5516, 3, 2, 2, 2, 5517, 5518, 3, 2, 2, 2, 5518, 5519, 3, 2, 2, 2, 5519, 5520, 7, 123, 2, 2, 5520, 5523, 5, 966, 484, 2, 5521, 5523, 7, 466, 2, 2, 5522, 5517, 3, 2, 2, 2, 5522, 5521, 3, 2, 2, 2, 5522, 5523, 3, 2, 2, 2, 5523, 5525, 3, 2, 2, 2, 5524, 5511, 3, 2, 2, 2, 5524, 5525, 3, 2, 2, 2, 5525, 411, 3, 2, 2, 2, 5526, 5527, 7, 73, 2, 2, 5527, 5528, 7, 789, 2, 2, 5528, 5529, 7, 302, 2, 2, 5529, 5533, 7, 437, 2, 2, 5530, 5531, 5, 966, 484, 2, 5531, 5532, 7, 823, 2, 2, 5532, 5534, 3, 2, 2, 2, 5533, 5530, 3, 2, 2, 2, 5533, 5534, 3, 2, 2, 2, 5534, 5535, 3, 2, 2, 2, 5535, 5536, 5, 966, 484, 2, 5536, 5540, 7, 16, 2, 2, 5537, 5541, 7, 806, 2, 2, 5538, 5541, 5, 966, 484, 2, 5539, 5541, 7, 801, 2, 2, 5540, 5537, 3, 2, 2, 2, 5540, 5538, 3, 2, 2, 2, 5540, 5539, 3, 2, 2, 2, 5541, 413, 3, 2, 2, 2, 5542, 5543, 7, 73, 2, 2, 5543, 5546, 7, 660, 2, 2, 5544, 5547, 5, 908, 455, 2, 5545, 5547, 5, 966, 484, 2, 5546, 5544, 3, 2, 2, 2, 5546, 5545, 3, 2, 2, 2, 5547, 5549, 3, 2, 2, 2, 5548, 5550, 5, 416, 209, 2, 5549, 5548, 3, 2, 2, 2, 5549, 5550, 3, 2, 2, 2, 5550, 5554, 3, 2, 2, 2, 5551, 5552, 7, 229, 2, 2, 5552, 5555, 5, 966, 484, 2, 5553, 5555, 7, 89, 2, 2, 5554, 5551, 3, 2, 2, 2, 5554, 5553, 3, 2, 2, 2, 5554, 5555, 3, 2, 2, 2, 5555, 415, 3, 2, 2, 2, 5556, 5563, 7, 377, 2, 2, 5557, 5558, 7, 736, 2, 2, 5558, 5559, 7, 810, 2, 2, 5559, 5561, 9, 9, 2, 2, 5560, 5562, 7, 830, 2, 2, 5561, 5560, 3, 2, 2, 2, 5561, 5562, 3, 2, 2, 2, 5562, 5564, 3, 2, 2, 2, 5563, 5557, 3, 2, 2, 2, 5563, 5564, 3, 2, 2, 2, 5564, 5571, 3, 2, 2, 2, 5565, 5566, 7, 693, 2, 2, 5566, 5567, 7, 810, 2, 2, 5567, 5569, 9, 9, 2, 2, 5568, 5570, 7, 830, 2, 2, 5569, 5568, 3, 2, 2, 2, 5569, 5570, 3, 2, 2, 2, 5570, 5572, 3, 2, 2, 2, 5571, 5565, 3, 2, 2, 2, 5571, 5572, 3, 2, 2, 2, 5572, 5618, 3, 2, 2, 2, 5573, 5574, 7, 385, 2, 2, 5574, 5612, 7, 828, 2, 2, 5575, 5576, 7, 736, 2, 2, 5576, 5577, 7, 810, 2, 2, 5577, 5579, 9, 9, 2, 2, 5578, 5580, 7, 830, 2, 2, 5579, 5578, 3, 2, 2, 2, 5579, 5580, 3, 2, 2, 2, 5580, 5582, 3, 2, 2, 2, 5581, 5575, 3, 2, 2, 2, 5581, 5582, 3, 2, 2, 2, 5582, 5589, 3, 2, 2, 2, 5583, 5584, 7, 655, 2, 2, 5584, 5585, 7, 810, 2, 2, 5585, 5587, 5, 916, 459, 2, 5586, 5588, 7, 830, 2, 2, 5587, 5586, 3, 2, 2, 2, 5587, 5588, 3, 2, 2, 2, 5588, 5590, 3, 2, 2, 2, 5589, 5583, 3, 2, 2, 2, 5589, 5590, 3, 2, 2, 2, 5590, 5597, 3, 2, 2, 2, 5591, 5592, 7, 584, 2, 2, 5592, 5593, 7, 810, 2, 2, 5593, 5595, 7, 802, 2, 2, 5594, 5596, 7, 830, 2, 2, 5595, 5594, 3, 2, 2, 2, 5595, 5596, 3, 2, 2, 2, 5596, 5598, 3, 2, 2, 2, 5597, 5591, 3, 2, 2, 2, 5597, 5598, 3, 2, 2, 2, 5598, 5609, 3, 2, 2, 2, 5599, 5600, 7, 118, 2, 2, 5600, 5604, 7, 16, 2, 2, 5601, 5605, 7, 715, 2, 2, 5602, 5605, 7, 806, 2, 2, 5603, 5605, 7, 637, 2, 2, 5604, 5601, 3, 2, 2, 2, 5604, 5602, 3, 2, 2, 2, 5604, 5603, 3, 2, 2, 2, 5605, 5607, 3, 2, 2, 2, 5606, 5608, 7, 830, 2, 2, 5607, 5606, 3, 2, 2, 2, 5607, 5608, 3, 2, 2, 2, 5608, 5610, 3, 2, 2, 2, 5609, 5599, 3, 2, 2, 2, 5609, 5610, 3, 2, 2, 2, 5610, 5613, 3, 2, 2, 2, 5611, 5613, 7, 103, 2, 2, 5612, 5581, 3, 2, 2, 2, 5612, 5611, 3, 2, 2, 2, 5613, 5614, 3, 2, 2, 2, 5614, 5616, 7, 829, 2, 2, 5615, 5617, 7, 830, 2, 2, 5616, 5615, 3, 2, 2, 2, 5616, 5617, 3, 2, 2, 2, 5617, 5619, 3, 2, 2, 2, 5618, 5573, 3, 2, 2, 2, 5618, 5619, 3, 2, 2, 2, 5619, 5627, 3, 2, 2, 2, 5620, 5621, 7, 644, 2, 2, 5621, 5622, 7, 828, 2, 2, 5622, 5623, 7, 736, 2, 2, 5623, 5624, 7, 810, 2, 2, 5624, 5625, 9, 9, 2, 2, 5625, 5626, 3, 2, 2, 2, 5626, 5628, 7, 829, 2, 2, 5627, 5620, 3, 2, 2, 2, 5627, 5628, 3, 2, 2, 2, 5628, 417, 3, 2, 2, 2, 5629, 5630, 7, 10, 2, 2, 5630, 5633, 7, 660, 2, 2, 5631, 5634, 5, 908, 455, 2, 5632, 5634, 5, 966, 484, 2, 5633, 5631, 3, 2, 2, 2, 5633, 5632, 3, 2, 2, 2, 5634, 5637, 3, 2, 2, 2, 5635, 5638, 5, 416, 209, 2, 5636, 5638, 5, 420, 211, 2, 5637, 5635, 3, 2, 2, 2, 5637, 5636, 3, 2, 2, 2, 5638, 419, 3, 2, 2, 2, 5639, 5645, 7, 673, 2, 2, 5640, 5641, 7, 377, 2, 2, 5641, 5642, 7, 828, 2, 2, 5642, 5643, 5, 422, 212, 2, 5643, 5644, 7, 829, 2, 2, 5644, 5646, 3, 2, 2, 2, 5645, 5640, 3, 2, 2, 2, 5645, 5646, 3, 2, 2, 2, 5646, 5661, 3, 2, 2, 2, 5647, 5652, 7, 682, 2, 2, 5648, 5649, 7, 377, 2, 2, 5649, 5650, 7, 566, 2, 2, 5650, 5651, 7, 810, 2, 2, 5651, 5653, 9, 9, 2, 2, 5652, 5648, 3, 2, 2, 2, 5652, 5653, 3, 2, 2, 2, 5653, 5661, 3, 2, 2, 2, 5654, 5655, 7, 603, 2, 2, 5655, 5658, 7, 346, 2, 2, 5656, 5659, 5, 966, 484, 2, 5657, 5659, 7, 89, 2, 2, 5658, 5656, 3, 2, 2, 2, 5658, 5657, 3, 2, 2, 2, 5659, 5661, 3, 2, 2, 2, 5660, 5639, 3, 2, 2, 2, 5660, 5647, 3, 2, 2, 2, 5660, 5654, 3, 2, 2, 2, 5661, 421, 3, 2, 2, 2, 5662, 5663, 7, 586, 2, 2, 5663, 5664, 7, 810, 2, 2, 5664, 5665, 7, 802, 2, 2, 5665, 423, 3, 2, 2, 2, 5666, 5667, 7, 73, 2, 2, 5667, 5668, 7, 68, 2, 2, 5668, 5671, 5, 944, 473, 2, 5669, 5670, 7, 20, 2, 2, 5670, 5672, 5, 966, 484, 2, 5671, 5669, 3, 2, 2, 2, 5671, 5672, 3, 2, 2, 2, 5672, 5673, 3, 2, 2, 2, 5673, 5684, 7, 828, 2, 2, 5674, 5677, 5, 966, 484, 2, 5675, 5677, 7, 89, 2, 2, 5676, 5674, 3, 2, 2, 2, 5676, 5675, 3, 2, 2, 2, 5677, 5678, 3, 2, 2, 2, 5678, 5679, 7, 718, 2, 2, 5679, 5680, 7, 38, 2, 2, 5680, 5682, 9, 54, 2, 2, 5681, 5683, 7, 830, 2, 2, 5682, 5681, 3, 2, 2, 2, 5682, 5683, 3, 2, 2, 2, 5683, 5685, 3, 2, 2, 2, 5684, 5676, 3, 2, 2, 2, 5685, 5686, 3, 2, 2, 2, 5686, 5684, 3, 2, 2, 2, 5686, 5687, 3, 2, 2, 2, 5687, 5688, 3, 2, 2, 2, 5688, 5689, 7, 829, 2, 2, 5689, 425, 3, 2, 2, 2, 5690, 5697, 5, 940, 471, 2, 5691, 5697, 5, 942, 472, 2, 5692, 5697, 5, 948, 475, 2, 5693, 5697, 5, 952, 477, 2, 5694, 5697, 5, 956, 479, 2, 5695, 5697, 5, 950, 476, 2, 5696, 5690, 3, 2, 2, 2, 5696, 5691, 3, 2, 2, 2, 5696, 5692, 3, 2, 2, 2, 5696, 5693, 3, 2, 2, 2, 5696, 5694, 3, 2, 2, 2, 5696, 5695, 3, 2, 2, 2, 5697, 427, 3, 2, 2, 2, 5698, 5699, 7, 73, 2, 2, 5699, 5700, 7, 592, 2, 2, 5700, 5701, 7, 769, 2, 2, 5701, 5704, 5, 966, 484, 2, 5702, 5703, 7, 20, 2, 2, 5703, 5705, 5, 966, 484, 2, 5704, 5702, 3, 2, 2, 2, 5704, 5705, 3, 2, 2, 2, 5705, 5706, 3, 2, 2, 2, 5706, 5707, 7, 778, 2, 2, 5707, 5716, 7, 810, 2, 2, 5708, 5717, 7, 213, 2, 2, 5709, 5717, 7, 488, 2, 2, 5710, 5717, 7, 785, 2, 2, 5711, 5712, 7, 777, 2, 2, 5712, 5713, 7, 377, 2, 2, 5713, 5714, 7, 302, 2, 2, 5714, 5715, 7, 437, 2, 2, 5715, 5717, 5, 966, 484, 2, 5716, 5708, 3, 2, 2, 2, 5716, 5709, 3, 2, 2, 2, 5716, 5710, 3, 2, 2, 2, 5716, 5711, 3, 2, 2, 2, 5717, 429, 3, 2, 2, 2, 5718, 5720, 5, 742, 372, 2, 5719, 5718, 3, 2, 2, 2, 5719, 5720, 3, 2, 2, 2, 5720, 5721, 3, 2, 2, 2, 5721, 5729, 7, 201, 2, 2, 5722, 5723, 7, 347, 2, 2, 5723, 5724, 7, 828, 2, 2, 5724, 5725, 5, 728, 365, 2, 5725, 5727, 7, 829, 2, 2, 5726, 5728, 7, 245, 2, 2, 5727, 5726, 3, 2, 2, 2, 5727, 5728, 3, 2, 2, 2, 5728, 5730, 3, 2, 2, 2, 5729, 5722, 3, 2, 2, 2, 5729, 5730, 3, 2, 2, 2, 5730, 5732, 3, 2, 2, 2, 5731, 5733, 7, 165, 2, 2, 5732, 5731, 3, 2, 2, 2, 5732, 5733, 3, 2, 2, 2, 5733, 5734, 3, 2, 2, 2, 5734, 5736, 5, 920, 461, 2, 5735, 5737, 5, 858, 430, 2, 5736, 5735, 3, 2, 2, 2, 5736, 5737, 3, 2, 2, 2, 5737, 5739, 3, 2, 2, 2, 5738, 5740, 5, 852, 427, 2, 5739, 5738, 3, 2, 2, 2, 5739, 5740, 3, 2, 2, 2, 5740, 5741, 3, 2, 2, 2, 5741, 5742, 7, 776, 2, 2, 5742, 5743, 5, 800, 401, 2, 5743, 5744, 7, 229, 2, 2, 5744, 5755, 5, 750, 376, 2, 5745, 5746, 7, 373, 2, 2, 5746, 5749, 7, 188, 2, 2, 5747, 5748, 7, 11, 2, 2, 5748, 5750, 5, 750, 376, 2, 5749, 5747, 3, 2, 2, 2, 5749, 5750, 3, 2, 2, 2, 5750, 5751, 3, 2, 2, 2, 5751, 5752, 7, 345, 2, 2, 5752, 5754, 5, 432, 217, 2, 5753, 5745, 3, 2, 2, 2, 5754, 5757, 3, 2, 2, 2, 5755, 5753, 3, 2, 2, 2, 5755, 5756, 3, 2, 2, 2, 5756, 5771, 3, 2, 2, 2, 5757, 5755, 3, 2, 2, 2, 5758, 5759, 7, 373, 2, 2, 5759, 5760, 7, 220, 2, 2, 5760, 5763, 7, 188, 2, 2, 5761, 5762, 7, 38, 2, 2, 5762, 5764, 7, 342, 2, 2, 5763, 5761, 3, 2, 2, 2, 5763, 5764, 3, 2, 2, 2, 5764, 5767, 3, 2, 2, 2, 5765, 5766, 7, 11, 2, 2, 5766, 5768, 5, 750, 376, 2, 5767, 5765, 3, 2, 2, 2, 5767, 5768, 3, 2, 2, 2, 5768, 5769, 3, 2, 2, 2, 5769, 5770, 7, 345, 2, 2, 5770, 5772, 5, 434, 218, 2, 5771, 5758, 3, 2, 2, 2, 5771, 5772, 3, 2, 2, 2, 5772, 5786, 3, 2, 2, 2, 5773, 5774, 7, 373, 2, 2, 5774, 5775, 7, 220, 2, 2, 5775, 5776, 7, 188, 2, 2, 5776, 5777, 7, 38, 2, 2, 5777, 5780, 7, 322, 2, 2, 5778, 5779, 7, 11, 2, 2, 5779, 5781, 5, 750, 376, 2, 5780, 5778, 3, 2, 2, 2, 5780, 5781, 3, 2, 2, 2, 5781, 5782, 3, 2, 2, 2, 5782, 5783, 7, 345, 2, 2, 5783, 5785, 5, 432, 217, 2, 5784, 5773, 3, 2, 2, 2, 5785, 5788, 3, 2, 2, 2, 5786, 5784, 3, 2, 2, 2, 5786, 5787, 3, 2, 2, 2, 5787, 5790, 3, 2, 2, 2, 5788, 5786, 3, 2, 2, 2, 5789, 5791, 5, 452, 227, 2, 5790, 5789, 3, 2, 2, 2, 5790, 5791, 3, 2, 2, 2, 5791, 5793, 3, 2, 2, 2, 5792, 5794, 5, 780, 391, 2, 5793, 5792, 3, 2, 2, 2, 5793, 5794, 3, 2, 2, 2, 5794, 5795, 3, 2, 2, 2, 5795, 5796, 7, 831, 2, 2, 5796, 431, 3, 2, 2, 2, 5797, 5798, 7, 361, 2, 2, 5798, 5799, 7, 315, 2, 2, 5799, 5804, 5, 746, 374, 2, 5800, 5801, 7, 830, 2, 2, 5801, 5803, 5, 746, 374, 2, 5802, 5800, 3, 2, 2, 2, 5803, 5806, 3, 2, 2, 2, 5804, 5802, 3, 2, 2, 2, 5804, 5805, 3, 2, 2, 2, 5805, 5809, 3, 2, 2, 2, 5806, 5804, 3, 2, 2, 2, 5807, 5809, 7, 92, 2, 2, 5808, 5797, 3, 2, 2, 2, 5808, 5807, 3, 2, 2, 2, 5809, 433, 3, 2, 2, 2, 5810, 5815, 7, 162, 2, 2, 5811, 5812, 7, 828, 2, 2, 5812, 5813, 5, 926, 464, 2, 5813, 5814, 7, 829, 2, 2, 5814, 5816, 3, 2, 2, 2, 5815, 5811, 3, 2, 2, 2, 5815, 5816, 3, 2, 2, 2, 5816, 5820, 3, 2, 2, 2, 5817, 5821, 5, 868, 435, 2, 5818, 5819, 7, 89, 2, 2, 5819, 5821, 7, 367, 2, 2, 5820, 5817, 3, 2, 2, 2, 5820, 5818, 3, 2, 2, 2, 5821, 435, 3, 2, 2, 2, 5822, 5824, 5, 742, 372, 2, 5823, 5822, 3, 2, 2, 2, 5823, 5824, 3, 2, 2, 2, 5824, 5825, 3, 2, 2, 2, 5825, 5835, 7, 92, 2, 2, 5826, 5827, 7, 347, 2, 2, 5827, 5828, 7, 828, 2, 2, 5828, 5829, 5, 728, 365, 2, 5829, 5831, 7, 829, 2, 2, 5830, 5832, 7, 245, 2, 2, 5831, 5830, 3, 2, 2, 2, 5831, 5832, 3, 2, 2, 2, 5832, 5836, 3, 2, 2, 2, 5833, 5834, 7, 347, 2, 2, 5834, 5836, 7, 802, 2, 2, 5835, 5826, 3, 2, 2, 2, 5835, 5833, 3, 2, 2, 2, 5835, 5836, 3, 2, 2, 2, 5836, 5838, 3, 2, 2, 2, 5837, 5839, 7, 139, 2, 2, 5838, 5837, 3, 2, 2, 2, 5838, 5839, 3, 2, 2, 2, 5839, 5840, 3, 2, 2, 2, 5840, 5842, 5, 438, 220, 2, 5841, 5843, 5, 858, 430, 2, 5842, 5841, 3, 2, 2, 2, 5842, 5843, 3, 2, 2, 2, 5843, 5845, 3, 2, 2, 2, 5844, 5846, 5, 452, 227, 2, 5845, 5844, 3, 2, 2, 2, 5845, 5846, 3, 2, 2, 2, 5846, 5849, 3, 2, 2, 2, 5847, 5848, 7, 139, 2, 2, 5848, 5850, 5, 800, 401, 2, 5849, 5847, 3, 2, 2, 2, 5849, 5850, 3, 2, 2, 2, 5850, 5864, 3, 2, 2, 2, 5851, 5862, 7, 374, 2, 2, 5852, 5863, 5, 750, 376, 2, 5853, 5854, 7, 75, 2, 2, 5854, 5860, 7, 225, 2, 2, 5855, 5857, 7, 525, 2, 2, 5856, 5855, 3, 2, 2, 2, 5856, 5857, 3, 2, 2, 2, 5857, 5858, 3, 2, 2, 2, 5858, 5861, 5, 928, 465, 2, 5859, 5861, 7, 801, 2, 2, 5860, 5856, 3, 2, 2, 2, 5860, 5859, 3, 2, 2, 2, 5861, 5863, 3, 2, 2, 2, 5862, 5852, 3, 2, 2, 2, 5862, 5853, 3, 2, 2, 2, 5863, 5865, 3, 2, 2, 2, 5864, 5851, 3, 2, 2, 2, 5864, 5865, 3, 2, 2, 2, 5865, 5867, 3, 2, 2, 2, 5866, 5868, 5, 772, 387, 2, 5867, 5866, 3, 2, 2, 2, 5867, 5868, 3, 2, 2, 2, 5868, 5870, 3, 2, 2, 2, 5869, 5871, 5, 780, 391, 2, 5870, 5869, 3, 2, 2, 2, 5870, 5871, 3, 2, 2, 2, 5871, 5873, 3, 2, 2, 2, 5872, 5874, 7, 831, 2, 2, 5873, 5872, 3, 2, 2, 2, 5873, 5874, 3, 2, 2, 2, 5874, 437, 3, 2, 2, 2, 5875, 5880, 5, 920, 461, 2, 5876, 5880, 5, 854, 428, 2, 5877, 5880, 5, 604, 303, 2, 5878, 5880, 7, 801, 2, 2, 5879, 5875, 3, 2, 2, 2, 5879, 5876, 3, 2, 2, 2, 5879, 5877, 3, 2, 2, 2, 5879, 5878, 3, 2, 2, 2, 5880, 439, 3, 2, 2, 2, 5881, 5883, 5, 742, 372, 2, 5882, 5881, 3, 2, 2, 2, 5882, 5883, 3, 2, 2, 2, 5883, 5884, 3, 2, 2, 2, 5884, 5892, 7, 162, 2, 2, 5885, 5886, 7, 347, 2, 2, 5886, 5887, 7, 828, 2, 2, 5887, 5888, 5, 728, 365, 2, 5888, 5890, 7, 829, 2, 2, 5889, 5891, 7, 245, 2, 2, 5890, 5889, 3, 2, 2, 2, 5890, 5891, 3, 2, 2, 2, 5891, 5893, 3, 2, 2, 2, 5892, 5885, 3, 2, 2, 2, 5892, 5893, 3, 2, 2, 2, 5893, 5895, 3, 2, 2, 2, 5894, 5896, 7, 165, 2, 2, 5895, 5894, 3, 2, 2, 2, 5895, 5896, 3, 2, 2, 2, 5896, 5899, 3, 2, 2, 2, 5897, 5900, 5, 920, 461, 2, 5898, 5900, 5, 604, 303, 2, 5899, 5897, 3, 2, 2, 2, 5899, 5898, 3, 2, 2, 2, 5900, 5902, 3, 2, 2, 2, 5901, 5903, 5, 858, 430, 2, 5902, 5901, 3, 2, 2, 2, 5902, 5903, 3, 2, 2, 2, 5903, 5908, 3, 2, 2, 2, 5904, 5905, 7, 828, 2, 2, 5905, 5906, 5, 926, 464, 2, 5906, 5907, 7, 829, 2, 2, 5907, 5909, 3, 2, 2, 2, 5908, 5904, 3, 2, 2, 2, 5908, 5909, 3, 2, 2, 2, 5909, 5911, 3, 2, 2, 2, 5910, 5912, 5, 452, 227, 2, 5911, 5910, 3, 2, 2, 2, 5911, 5912, 3, 2, 2, 2, 5912, 5913, 3, 2, 2, 2, 5913, 5915, 5, 442, 222, 2, 5914, 5916, 5, 772, 387, 2, 5915, 5914, 3, 2, 2, 2, 5915, 5916, 3, 2, 2, 2, 5916, 5918, 3, 2, 2, 2, 5917, 5919, 5, 780, 391, 2, 5918, 5917, 3, 2, 2, 2, 5918, 5919, 3, 2, 2, 2, 5919, 5921, 3, 2, 2, 2, 5920, 5922, 7, 831, 2, 2, 5921, 5920, 3, 2, 2, 2, 5921, 5922, 3, 2, 2, 2, 5922, 441, 3, 2, 2, 2, 5923, 5929, 5, 868, 435, 2, 5924, 5929, 5, 830, 416, 2, 5925, 5929, 5, 632, 317, 2, 5926, 5927, 7, 89, 2, 2, 5927, 5929, 7, 367, 2, 2, 5928, 5923, 3, 2, 2, 2, 5928, 5924, 3, 2, 2, 2, 5928, 5925, 3, 2, 2, 2, 5928, 5926, 3, 2, 2, 2, 5929, 443, 3, 2, 2, 2, 5930, 5932, 7, 828, 2, 2, 5931, 5930, 3, 2, 2, 2, 5931, 5932, 3, 2, 2, 2, 5932, 5933, 3, 2, 2, 2, 5933, 5938, 7, 674, 2, 2, 5934, 5939, 7, 6, 2, 2, 5935, 5939, 7, 98, 2, 2, 5936, 5939, 5, 764, 383, 2, 5937, 5939, 7, 833, 2, 2, 5938, 5934, 3, 2, 2, 2, 5938, 5935, 3, 2, 2, 2, 5938, 5936, 3, 2, 2, 2, 5938, 5937, 3, 2, 2, 2, 5939, 5948, 3, 2, 2, 2, 5940, 5941, 7, 801, 2, 2, 5941, 5942, 7, 810, 2, 2, 5942, 5944, 5, 728, 365, 2, 5943, 5945, 7, 830, 2, 2, 5944, 5943, 3, 2, 2, 2, 5944, 5945, 3, 2, 2, 2, 5945, 5947, 3, 2, 2, 2, 5946, 5940, 3, 2, 2, 2, 5947, 5950, 3, 2, 2, 2, 5948, 5946, 3, 2, 2, 2, 5948, 5949, 3, 2, 2, 2, 5949, 5951, 3, 2, 2, 2, 5950, 5948, 3, 2, 2, 2, 5951, 5952, 7, 139, 2, 2, 5952, 5958, 5, 908, 455, 2, 5953, 5954, 7, 165, 2, 2, 5954, 5955, 5, 966, 484, 2, 5955, 5956, 7, 374, 2, 2, 5956, 5957, 5, 750, 376, 2, 5957, 5959, 3, 2, 2, 2, 5958, 5953, 3, 2, 2, 2, 5958, 5959, 3, 2, 2, 2, 5959, 5961, 3, 2, 2, 2, 5960, 5962, 7, 829, 2, 2, 5961, 5960, 3, 2, 2, 2, 5961, 5962, 3, 2, 2, 2, 5962, 445, 3, 2, 2, 2, 5963, 5965, 5, 742, 372, 2, 5964, 5963, 3, 2, 2, 2, 5964, 5965, 3, 2, 2, 2, 5965, 5966, 3, 2, 2, 2, 5966, 5968, 5, 758, 380, 2, 5967, 5969, 5, 770, 386, 2, 5968, 5967, 3, 2, 2, 2, 5968, 5969, 3, 2, 2, 2, 5969, 5971, 3, 2, 2, 2, 5970, 5972, 5, 772, 387, 2, 5971, 5970, 3, 2, 2, 2, 5971, 5972, 3, 2, 2, 2, 5972, 5974, 3, 2, 2, 2, 5973, 5975, 5, 780, 391, 2, 5974, 5973, 3, 2, 2, 2, 5974, 5975, 3, 2, 2, 2, 5975, 5977, 3, 2, 2, 2, 5976, 5978, 7, 831, 2, 2, 5977, 5976, 3, 2, 2, 2, 5977, 5978, 3, 2, 2, 2, 5978, 447, 3, 2, 2, 2, 5979, 5982, 7, 801, 2, 2, 5980, 5982, 5, 962, 482, 2, 5981, 5979, 3, 2, 2, 2, 5981, 5980, 3, 2, 2, 2, 5982, 449, 3, 2, 2, 2, 5983, 5985, 5, 742, 372, 2, 5984, 5983, 3, 2, 2, 2, 5984, 5985, 3, 2, 2, 2, 5985, 5986, 3, 2, 2, 2, 5986, 5994, 7, 361, 2, 2, 5987, 5988, 7, 347, 2, 2, 5988, 5989, 7, 828, 2, 2, 5989, 5990, 5, 728, 365, 2, 5990, 5992, 7, 829, 2, 2, 5991, 5993, 7, 245, 2, 2, 5992, 5991, 3, 2, 2, 2, 5992, 5993, 3, 2, 2, 2, 5993, 5995, 3, 2, 2, 2, 5994, 5987, 3, 2, 2, 2, 5994, 5995, 3, 2, 2, 2, 5995, 5998, 3, 2, 2, 2, 5996, 5999, 5, 920, 461, 2, 5997, 5999, 5, 604, 303, 2, 5998, 5996, 3, 2, 2, 2, 5998, 5997, 3, 2, 2, 2, 5999, 6001, 3, 2, 2, 2, 6000, 6002, 5, 856, 429, 2, 6001, 6000, 3, 2, 2, 2, 6001, 6002, 3, 2, 2, 2, 6002, 6003, 3, 2, 2, 2, 6003, 6004, 7, 315, 2, 2, 6004, 6009, 5, 746, 374, 2, 6005, 6006, 7, 830, 2, 2, 6006, 6008, 5, 746, 374, 2, 6007, 6005, 3, 2, 2, 2, 6008, 6011, 3, 2, 2, 2, 6009, 6007, 3, 2, 2, 2, 6009, 6010, 3, 2, 2, 2, 6010, 6013, 3, 2, 2, 2, 6011, 6009, 3, 2, 2, 2, 6012, 6014, 5, 452, 227, 2, 6013, 6012, 3, 2, 2, 2, 6013, 6014, 3, 2, 2, 2, 6014, 6017, 3, 2, 2, 2, 6015, 6016, 7, 139, 2, 2, 6016, 6018, 5, 800, 401, 2, 6017, 6015, 3, 2, 2, 2, 6017, 6018, 3, 2, 2, 2, 6018, 6032, 3, 2, 2, 2, 6019, 6030, 7, 374, 2, 2, 6020, 6031, 5, 748, 375, 2, 6021, 6022, 7, 75, 2, 2, 6022, 6028, 7, 225, 2, 2, 6023, 6025, 7, 525, 2, 2, 6024, 6023, 3, 2, 2, 2, 6024, 6025, 3, 2, 2, 2, 6025, 6026, 3, 2, 2, 2, 6026, 6029, 5, 928, 465, 2, 6027, 6029, 7, 801, 2, 2, 6028, 6024, 3, 2, 2, 2, 6028, 6027, 3, 2, 2, 2, 6029, 6031, 3, 2, 2, 2, 6030, 6020, 3, 2, 2, 2, 6030, 6021, 3, 2, 2, 2, 6031, 6033, 3, 2, 2, 2, 6032, 6019, 3, 2, 2, 2, 6032, 6033, 3, 2, 2, 2, 6033, 6035, 3, 2, 2, 2, 6034, 6036, 5, 772, 387, 2, 6035, 6034, 3, 2, 2, 2, 6035, 6036, 3, 2, 2, 2, 6036, 6038, 3, 2, 2, 2, 6037, 6039, 5, 780, 391, 2, 6038, 6037, 3, 2, 2, 2, 6038, 6039, 3, 2, 2, 2, 6039, 6041, 3, 2, 2, 2, 6040, 6042, 7, 831, 2, 2, 6041, 6040, 3, 2, 2, 2, 6041, 6042, 3, 2, 2, 2, 6042, 451, 3, 2, 2, 2, 6043, 6044, 7, 635, 2, 2, 6044, 6049, 5, 454, 228, 2, 6045, 6046, 7, 830, 2, 2, 6046, 6048, 5, 454, 228, 2, 6047, 6045, 3, 2, 2, 2, 6048, 6051, 3, 2, 2, 2, 6049, 6047, 3, 2, 2, 2, 6049, 6050, 3, 2, 2, 2, 6050, 6063, 3, 2, 2, 2, 6051, 6049, 3, 2, 2, 2, 6052, 6055, 7, 165, 2, 2, 6053, 6056, 7, 801, 2, 2, 6054, 6056, 5, 910, 456, 2, 6055, 6053, 3, 2, 2, 2, 6055, 6054, 3, 2, 2, 2, 6056, 6061, 3, 2, 2, 2, 6057, 6058, 7, 828, 2, 2, 6058, 6059, 5, 926, 464, 2, 6059, 6060, 7, 829, 2, 2, 6060, 6062, 3, 2, 2, 2, 6061, 6057, 3, 2, 2, 2, 6061, 6062, 3, 2, 2, 2, 6062, 6064, 3, 2, 2, 2, 6063, 6052, 3, 2, 2, 2, 6063, 6064, 3, 2, 2, 2, 6064, 453, 3, 2, 2, 2, 6065, 6068, 5, 456, 229, 2, 6066, 6068, 5, 728, 365, 2, 6067, 6065, 3, 2, 2, 2, 6067, 6066, 3, 2, 2, 2, 6068, 6070, 3, 2, 2, 2, 6069, 6071, 5, 850, 426, 2, 6070, 6069, 3, 2, 2, 2, 6070, 6071, 3, 2, 2, 2, 6071, 455, 3, 2, 2, 2, 6072, 6076, 7, 471, 2, 2, 6073, 6076, 7, 546, 2, 2, 6074, 6076, 5, 910, 456, 2, 6075, 6072, 3, 2, 2, 2, 6075, 6073, 3, 2, 2, 2, 6075, 6074, 3, 2, 2, 2, 6076, 6077, 3, 2, 2, 2, 6077, 6080, 7, 823, 2, 2, 6078, 6081, 7, 833, 2, 2, 6079, 6081, 5, 966, 484, 2, 6080, 6078, 3, 2, 2, 2, 6080, 6079, 3, 2, 2, 2, 6081, 6084, 3, 2, 2, 2, 6082, 6084, 7, 794, 2, 2, 6083, 6075, 3, 2, 2, 2, 6083, 6082, 3, 2, 2, 2, 6084, 457, 3, 2, 2, 2, 6085, 6086, 7, 73, 2, 2, 6086, 6087, 7, 84, 2, 2, 6087, 6091, 5, 966, 484, 2, 6088, 6089, 7, 62, 2, 2, 6089, 6090, 7, 810, 2, 2, 6090, 6092, 9, 55, 2, 2, 6091, 6088, 3, 2, 2, 2, 6091, 6092, 3, 2, 2, 2, 6092, 6105, 3, 2, 2, 2, 6093, 6095, 7, 229, 2, 2, 6094, 6096, 7, 256, 2, 2, 6095, 6094, 3, 2, 2, 2, 6095, 6096, 3, 2, 2, 2, 6096, 6097, 3, 2, 2, 2, 6097, 6102, 5, 896, 449, 2, 6098, 6099, 7, 830, 2, 2, 6099, 6101, 5, 896, 449, 2, 6100, 6098, 3, 2, 2, 2, 6101, 6104, 3, 2, 2, 2, 6102, 6100, 3, 2, 2, 2, 6102, 6103, 3, 2, 2, 2, 6103, 6106, 3, 2, 2, 2, 6104, 6102, 3, 2, 2, 2, 6105, 6093, 3, 2, 2, 2, 6105, 6106, 3, 2, 2, 2, 6106, 6117, 3, 2, 2, 2, 6107, 6108, 7, 187, 2, 2, 6108, 6109, 7, 229, 2, 2, 6109, 6114, 5, 896, 449, 2, 6110, 6111, 7, 830, 2, 2, 6111, 6113, 5, 896, 449, 2, 6112, 6110, 3, 2, 2, 2, 6113, 6116, 3, 2, 2, 2, 6114, 6112, 3, 2, 2, 2, 6114, 6115, 3, 2, 2, 2, 6115, 6118, 3, 2, 2, 2, 6116, 6114, 3, 2, 2, 2, 6117, 6107, 3, 2, 2, 2, 6117, 6118, 3, 2, 2, 2, 6118, 6121, 3, 2, 2, 2, 6119, 6120, 7, 55, 2, 2, 6120, 6122, 5, 966, 484, 2, 6121, 6119, 3, 2, 2, 2, 6121, 6122, 3, 2, 2, 2, 6122, 6132, 3, 2, 2, 2, 6123, 6124, 7, 377, 2, 2, 6124, 6129, 5, 892, 447, 2, 6125, 6126, 7, 830, 2, 2, 6126, 6128, 5, 892, 447, 2, 6127, 6125, 3, 2, 2, 2, 6128, 6131, 3, 2, 2, 2, 6129, 6127, 3, 2, 2, 2, 6129, 6130, 3, 2, 2, 2, 6130, 6133, 3, 2, 2, 2, 6131, 6129, 3, 2, 2, 2, 6132, 6123, 3, 2, 2, 2, 6132, 6133, 3, 2, 2, 2, 6133, 459, 3, 2, 2, 2, 6134, 6136, 7, 73, 2, 2, 6135, 6137, 7, 357, 2, 2, 6136, 6135, 3, 2, 2, 2, 6136, 6137, 3, 2, 2, 2, 6137, 6139, 3, 2, 2, 2, 6138, 6140, 5, 932, 467, 2, 6139, 6138, 3, 2, 2, 2, 6139, 6140, 3, 2, 2, 2, 6140, 6141, 3, 2, 2, 2, 6141, 6142, 7, 158, 2, 2, 6142, 6143, 5, 966, 484, 2, 6143, 6144, 7, 229, 2, 2, 6144, 6145, 5, 824, 413, 2, 6145, 6146, 7, 828, 2, 2, 6146, 6147, 5, 924, 463, 2, 6147, 6153, 7, 829, 2, 2, 6148, 6149, 7, 156, 2, 2, 6149, 6150, 7, 828, 2, 2, 6150, 6151, 5, 926, 464, 2, 6151, 6152, 7, 829, 2, 2, 6152, 6154, 3, 2, 2, 2, 6153, 6148, 3, 2, 2, 2, 6153, 6154, 3, 2, 2, 2, 6154, 6157, 3, 2, 2, 2, 6155, 6156, 7, 374, 2, 2, 6156, 6158, 5, 750, 376, 2, 6157, 6155, 3, 2, 2, 2, 6157, 6158, 3, 2, 2, 2, 6158, 6160, 3, 2, 2, 2, 6159, 6161, 5, 712, 357, 2, 6160, 6159, 3, 2, 2, 2, 6160, 6161, 3, 2, 2, 2, 6161, 6164, 3, 2, 2, 2, 6162, 6163, 7, 229, 2, 2, 6163, 6165, 5, 966, 484, 2, 6164, 6162, 3, 2, 2, 2, 6164, 6165, 3, 2, 2, 2, 6165, 6167, 3, 2, 2, 2, 6166, 6168, 7, 831, 2, 2, 6167, 6166, 3, 2, 2, 2, 6167, 6168, 3, 2, 2, 2, 6168, 461, 3, 2, 2, 2, 6169, 6172, 7, 73, 2, 2, 6170, 6171, 7, 237, 2, 2, 6171, 6173, 7, 10, 2, 2, 6172, 6170, 3, 2, 2, 2, 6172, 6173, 3, 2, 2, 2, 6173, 6176, 3, 2, 2, 2, 6174, 6176, 7, 10, 2, 2, 6175, 6169, 3, 2, 2, 2, 6175, 6174, 3, 2, 2, 2, 6176, 6177, 3, 2, 2, 2, 6177, 6178, 9, 56, 2, 2, 6178, 6181, 5, 914, 458, 2, 6179, 6180, 7, 831, 2, 2, 6180, 6182, 7, 802, 2, 2, 6181, 6179, 3, 2, 2, 2, 6181, 6182, 3, 2, 2, 2, 6182, 6197, 3, 2, 2, 2, 6183, 6185, 7, 828, 2, 2, 6184, 6183, 3, 2, 2, 2, 6184, 6185, 3, 2, 2, 2, 6185, 6186, 3, 2, 2, 2, 6186, 6191, 5, 484, 243, 2, 6187, 6188, 7, 830, 2, 2, 6188, 6190, 5, 484, 243, 2, 6189, 6187, 3, 2, 2, 2, 6190, 6193, 3, 2, 2, 2, 6191, 6189, 3, 2, 2, 2, 6191, 6192, 3, 2, 2, 2, 6192, 6195, 3, 2, 2, 2, 6193, 6191, 3, 2, 2, 2, 6194, 6196, 7, 829, 2, 2, 6195, 6194, 3, 2, 2, 2, 6195, 6196, 3, 2, 2, 2, 6196, 6198, 3, 2, 2, 2, 6197, 6184, 3, 2, 2, 2, 6197, 6198, 3, 2, 2, 2, 6198, 6208, 3, 2, 2, 2, 6199, 6200, 7, 377, 2, 2, 6200, 6205, 5, 486, 244, 2, 6201, 6202, 7, 830, 2, 2, 6202, 6204, 5, 486, 244, 2, 6203, 6201, 3, 2, 2, 2, 6204, 6207, 3, 2, 2, 2, 6205, 6203, 3, 2, 2, 2, 6205, 6206, 3, 2, 2, 2, 6206, 6209, 3, 2, 2, 2, 6207, 6205, 3, 2, 2, 2, 6208, 6199, 3, 2, 2, 2, 6208, 6209, 3, 2, 2, 2, 6209, 6212, 3, 2, 2, 2, 6210, 6211, 7, 133, 2, 2, 6211, 6213, 7, 274, 2, 2, 6212, 6210, 3, 2, 2, 2, 6212, 6213, 3, 2, 2, 2, 6213, 6214, 3, 2, 2, 2, 6214, 6215, 7, 16, 2, 2, 6215, 6216, 5, 6, 4, 2, 6216, 463, 3, 2, 2, 2, 6217, 6220, 5, 466, 234, 2, 6218, 6220, 5, 472, 237, 2, 6219, 6217, 3, 2, 2, 2, 6219, 6218, 3, 2, 2, 2, 6220, 465, 3, 2, 2, 2, 6221, 6224, 7, 73, 2, 2, 6222, 6223, 7, 237, 2, 2, 6223, 6225, 7, 10, 2, 2, 6224, 6222, 3, 2, 2, 2, 6224, 6225, 3, 2, 2, 2, 6225, 6228, 3, 2, 2, 2, 6226, 6228, 7, 10, 2, 2, 6227, 6221, 3, 2, 2, 2, 6227, 6226, 3, 2, 2, 2, 6228, 6229, 3, 2, 2, 2, 6229, 6230, 7, 352, 2, 2, 6230, 6231, 5, 912, 457, 2, 6231, 6232, 7, 229, 2, 2, 6232, 6242, 5, 910, 456, 2, 6233, 6234, 7, 377, 2, 2, 6234, 6239, 5, 468, 235, 2, 6235, 6236, 7, 830, 2, 2, 6236, 6238, 5, 468, 235, 2, 6237, 6235, 3, 2, 2, 2, 6238, 6241, 3, 2, 2, 2, 6239, 6237, 3, 2, 2, 2, 6239, 6240, 3, 2, 2, 2, 6240, 6243, 3, 2, 2, 2, 6241, 6239, 3, 2, 2, 2, 6242, 6233, 3, 2, 2, 2, 6242, 6243, 3, 2, 2, 2, 6243, 6248, 3, 2, 2, 2, 6244, 6249, 7, 133, 2, 2, 6245, 6249, 7, 392, 2, 2, 6246, 6247, 7, 163, 2, 2, 6247, 6249, 7, 225, 2, 2, 6248, 6244, 3, 2, 2, 2, 6248, 6245, 3, 2, 2, 2, 6248, 6246, 3, 2, 2, 2, 6249, 6250, 3, 2, 2, 2, 6250, 6255, 5, 470, 236, 2, 6251, 6252, 7, 830, 2, 2, 6252, 6254, 5, 470, 236, 2, 6253, 6251, 3, 2, 2, 2, 6254, 6257, 3, 2, 2, 2, 6255, 6253, 3, 2, 2, 2, 6255, 6256, 3, 2, 2, 2, 6256, 6260, 3, 2, 2, 2, 6257, 6255, 3, 2, 2, 2, 6258, 6259, 7, 377, 2, 2, 6259, 6261, 7, 14, 2, 2, 6260, 6258, 3, 2, 2, 2, 6260, 6261, 3, 2, 2, 2, 6261, 6265, 3, 2, 2, 2, 6262, 6263, 7, 220, 2, 2, 6263, 6264, 7, 133, 2, 2, 6264, 6266, 7, 274, 2, 2, 6265, 6262, 3, 2, 2, 2, 6265, 6266, 3, 2, 2, 2, 6266, 6267, 3, 2, 2, 2, 6267, 6268, 7, 16, 2, 2, 6268, 6269, 5, 6, 4, 2, 6269, 467, 3, 2, 2, 2, 6270, 6273, 7, 492, 2, 2, 6271, 6273, 5, 686, 344, 2, 6272, 6270, 3, 2, 2, 2, 6272, 6271, 3, 2, 2, 2, 6273, 469, 3, 2, 2, 2, 6274, 6275, 9, 57, 2, 2, 6275, 471, 3, 2, 2, 2, 6276, 6279, 7, 73, 2, 2, 6277, 6278, 7, 237, 2, 2, 6278, 6280, 7, 10, 2, 2, 6279, 6277, 3, 2, 2, 2, 6279, 6280, 3, 2, 2, 2, 6280, 6283, 3, 2, 2, 2, 6281, 6283, 7, 10, 2, 2, 6282, 6276, 3, 2, 2, 2, 6282, 6281, 3, 2, 2, 2, 6283, 6284, 3, 2, 2, 2, 6284, 6285, 7, 352, 2, 2, 6285, 6286, 5, 968, 485, 2, 6286, 6290, 7, 229, 2, 2, 6287, 6288, 7, 6, 2, 2, 6288, 6291, 7, 309, 2, 2, 6289, 6291, 7, 84, 2, 2, 6290, 6287, 3, 2, 2, 2, 6290, 6289, 3, 2, 2, 2, 6291, 6301, 3, 2, 2, 2, 6292, 6293, 7, 377, 2, 2, 6293, 6298, 5, 468, 235, 2, 6294, 6295, 7, 830, 2, 2, 6295, 6297, 5, 468, 235, 2, 6296, 6294, 3, 2, 2, 2, 6297, 6300, 3, 2, 2, 2, 6298, 6296, 3, 2, 2, 2, 6298, 6299, 3, 2, 2, 2, 6299, 6302, 3, 2, 2, 2, 6300, 6298, 3, 2, 2, 2, 6301, 6292, 3, 2, 2, 2, 6301, 6302, 3, 2, 2, 2, 6302, 6303, 3, 2, 2, 2, 6303, 6304, 9, 58, 2, 2, 6304, 6309, 5, 474, 238, 2, 6305, 6306, 7, 830, 2, 2, 6306, 6308, 5, 470, 236, 2, 6307, 6305, 3, 2, 2, 2, 6308, 6311, 3, 2, 2, 2, 6309, 6307, 3, 2, 2, 2, 6309, 6310, 3, 2, 2, 2, 6310, 6312, 3, 2, 2, 2, 6311, 6309, 3, 2, 2, 2, 6312, 6313, 7, 16, 2, 2, 6313, 6314, 5, 6, 4, 2, 6314, 473, 3, 2, 2, 2, 6315, 6316, 5, 968, 485, 2, 6316, 475, 3, 2, 2, 2, 6317, 6320, 7, 73, 2, 2, 6318, 6319, 7, 237, 2, 2, 6319, 6321, 7, 10, 2, 2, 6320, 6318, 3, 2, 2, 2, 6320, 6321, 3, 2, 2, 2, 6321, 6324, 3, 2, 2, 2, 6322, 6324, 7, 10, 2, 2, 6323, 6317, 3, 2, 2, 2, 6323, 6322, 3, 2, 2, 2, 6324, 6325, 3, 2, 2, 2, 6325, 6326, 7, 141, 2, 2, 6326, 6340, 5, 914, 458, 2, 6327, 6328, 7, 828, 2, 2, 6328, 6333, 5, 484, 243, 2, 6329, 6330, 7, 830, 2, 2, 6330, 6332, 5, 484, 243, 2, 6331, 6329, 3, 2, 2, 2, 6332, 6335, 3, 2, 2, 2, 6333, 6331, 3, 2, 2, 2, 6333, 6334, 3, 2, 2, 2, 6334, 6336, 3, 2, 2, 2, 6335, 6333, 3, 2, 2, 2, 6336, 6337, 7, 829, 2, 2, 6337, 6341, 3, 2, 2, 2, 6338, 6339, 7, 828, 2, 2, 6339, 6341, 7, 829, 2, 2, 6340, 6327, 3, 2, 2, 2, 6340, 6338, 3, 2, 2, 2, 6341, 6345, 3, 2, 2, 2, 6342, 6346, 5, 478, 240, 2, 6343, 6346, 5, 480, 241, 2, 6344, 6346, 5, 482, 242, 2, 6345, 6342, 3, 2, 2, 2, 6345, 6343, 3, 2, 2, 2, 6345, 6344, 3, 2, 2, 2, 6346, 6348, 3, 2, 2, 2, 6347, 6349, 7, 831, 2, 2, 6348, 6347, 3, 2, 2, 2, 6348, 6349, 3, 2, 2, 2, 6349, 477, 3, 2, 2, 2, 6350, 6351, 7, 283, 2, 2, 6351, 6361, 7, 339, 2, 2, 6352, 6353, 7, 377, 2, 2, 6353, 6358, 5, 488, 245, 2, 6354, 6355, 7, 830, 2, 2, 6355, 6357, 5, 488, 245, 2, 6356, 6354, 3, 2, 2, 2, 6357, 6360, 3, 2, 2, 2, 6358, 6356, 3, 2, 2, 2, 6358, 6359, 3, 2, 2, 2, 6359, 6362, 3, 2, 2, 2, 6360, 6358, 3, 2, 2, 2, 6361, 6352, 3, 2, 2, 2, 6361, 6362, 3, 2, 2, 2, 6362, 6364, 3, 2, 2, 2, 6363, 6365, 7, 16, 2, 2, 6364, 6363, 3, 2, 2, 2, 6364, 6365, 3, 2, 2, 2, 6365, 6366, 3, 2, 2, 2, 6366, 6372, 7, 282, 2, 2, 6367, 6368, 7, 828, 2, 2, 6368, 6369, 5, 446, 224, 2, 6369, 6370, 7, 829, 2, 2, 6370, 6373, 3, 2, 2, 2, 6371, 6373, 5, 446, 224, 2, 6372, 6367, 3, 2, 2, 2, 6372, 6371, 3, 2, 2, 2, 6373, 479, 3, 2, 2, 2, 6374, 6375, 7, 283, 2, 2, 6375, 6376, 7, 801, 2, 2, 6376, 6386, 5, 690, 346, 2, 6377, 6378, 7, 377, 2, 2, 6378, 6383, 5, 488, 245, 2, 6379, 6380, 7, 830, 2, 2, 6380, 6382, 5, 488, 245, 2, 6381, 6379, 3, 2, 2, 2, 6382, 6385, 3, 2, 2, 2, 6383, 6381, 3, 2, 2, 2, 6383, 6384, 3, 2, 2, 2, 6384, 6387, 3, 2, 2, 2, 6385, 6383, 3, 2, 2, 2, 6386, 6377, 3, 2, 2, 2, 6386, 6387, 3, 2, 2, 2, 6387, 6389, 3, 2, 2, 2, 6388, 6390, 7, 16, 2, 2, 6389, 6388, 3, 2, 2, 2, 6389, 6390, 3, 2, 2, 2, 6390, 6391, 3, 2, 2, 2, 6391, 6395, 7, 28, 2, 2, 6392, 6394, 5, 8, 5, 2, 6393, 6392, 3, 2, 2, 2, 6394, 6397, 3, 2, 2, 2, 6395, 6393, 3, 2, 2, 2, 6395, 6396, 3, 2, 2, 2, 6396, 6398, 3, 2, 2, 2, 6397, 6395, 3, 2, 2, 2, 6398, 6400, 7, 282, 2, 2, 6399, 6401, 7, 831, 2, 2, 6400, 6399, 3, 2, 2, 2, 6400, 6401, 3, 2, 2, 2, 6401, 6402, 3, 2, 2, 2, 6402, 6404, 7, 108, 2, 2, 6403, 6405, 7, 831, 2, 2, 6404, 6403, 3, 2, 2, 2, 6404, 6405, 3, 2, 2, 2, 6405, 481, 3, 2, 2, 2, 6406, 6407, 7, 283, 2, 2, 6407, 6417, 5, 958, 480, 2, 6408, 6409, 7, 377, 2, 2, 6409, 6414, 5, 488, 245, 2, 6410, 6411, 7, 830, 2, 2, 6411, 6413, 5, 488, 245, 2, 6412, 6410, 3, 2, 2, 2, 6413, 6416, 3, 2, 2, 2, 6414, 6412, 3, 2, 2, 2, 6414, 6415, 3, 2, 2, 2, 6415, 6418, 3, 2, 2, 2, 6416, 6414, 3, 2, 2, 2, 6417, 6408, 3, 2, 2, 2, 6417, 6418, 3, 2, 2, 2, 6418, 6420, 3, 2, 2, 2, 6419, 6421, 7, 16, 2, 2, 6420, 6419, 3, 2, 2, 2, 6420, 6421, 3, 2, 2, 2, 6421, 6422, 3, 2, 2, 2, 6422, 6426, 7, 28, 2, 2, 6423, 6425, 5, 8, 5, 2, 6424, 6423, 3, 2, 2, 2, 6425, 6428, 3, 2, 2, 2, 6426, 6424, 3, 2, 2, 2, 6426, 6427, 3, 2, 2, 2, 6427, 6429, 3, 2, 2, 2, 6428, 6426, 3, 2, 2, 2, 6429, 6430, 7, 282, 2, 2, 6430, 6432, 5, 728, 365, 2, 6431, 6433, 7, 831, 2, 2, 6432, 6431, 3, 2, 2, 2, 6432, 6433, 3, 2, 2, 2, 6433, 6434, 3, 2, 2, 2, 6434, 6435, 7, 108, 2, 2, 6435, 483, 3, 2, 2, 2, 6436, 6440, 7, 801, 2, 2, 6437, 6438, 5, 966, 484, 2, 6438, 6439, 7, 823, 2, 2, 6439, 6441, 3, 2, 2, 2, 6440, 6437, 3, 2, 2, 2, 6440, 6441, 3, 2, 2, 2, 6441, 6443, 3, 2, 2, 2, 6442, 6444, 7, 16, 2, 2, 6443, 6442, 3, 2, 2, 2, 6443, 6444, 3, 2, 2, 2, 6444, 6445, 3, 2, 2, 2, 6445, 6447, 5, 958, 480, 2, 6446, 6448, 7, 368, 2, 2, 6447, 6446, 3, 2, 2, 2, 6447, 6448, 3, 2, 2, 2, 6448, 6451, 3, 2, 2, 2, 6449, 6450, 7, 810, 2, 2, 6450, 6452, 5, 960, 481, 2, 6451, 6449, 3, 2, 2, 2, 6451, 6452, 3, 2, 2, 2, 6452, 6454, 3, 2, 2, 2, 6453, 6455, 9, 59, 2, 2, 6454, 6453, 3, 2, 2, 2, 6454, 6455, 3, 2, 2, 2, 6455, 485, 3, 2, 2, 2, 6456, 6460, 7, 492, 2, 2, 6457, 6460, 7, 675, 2, 2, 6458, 6460, 5, 686, 344, 2, 6459, 6456, 3, 2, 2, 2, 6459, 6457, 3, 2, 2, 2, 6459, 6458, 3, 2, 2, 2, 6460, 487, 3, 2, 2, 2, 6461, 6474, 7, 492, 2, 2, 6462, 6474, 7, 702, 2, 2, 6463, 6464, 7, 283, 2, 2, 6464, 6465, 7, 223, 2, 2, 6465, 6466, 7, 229, 2, 2, 6466, 6467, 7, 223, 2, 2, 6467, 6474, 7, 544, 2, 2, 6468, 6469, 7, 40, 2, 2, 6469, 6470, 7, 229, 2, 2, 6470, 6471, 7, 223, 2, 2, 6471, 6474, 7, 544, 2, 2, 6472, 6474, 5, 686, 344, 2, 6473, 6461, 3, 2, 2, 2, 6473, 6462, 3, 2, 2, 2, 6473, 6463, 3, 2, 2, 2, 6473, 6468, 3, 2, 2, 2, 6473, 6472, 3, 2, 2, 2, 6474, 489, 3, 2, 2, 2, 6475, 6476, 7, 73, 2, 2, 6476, 6477, 7, 328, 2, 2, 6477, 6478, 5, 966, 484, 2, 6478, 6479, 7, 229, 2, 2, 6479, 6480, 5, 824, 413, 2, 6480, 6481, 7, 828, 2, 2, 6481, 6482, 5, 926, 464, 2, 6482, 6501, 7, 829, 2, 2, 6483, 6489, 7, 377, 2, 2, 6484, 6490, 7, 520, 2, 2, 6485, 6486, 7, 701, 2, 2, 6486, 6487, 7, 802, 2, 2, 6487, 6490, 9, 60, 2, 2, 6488, 6490, 7, 735, 2, 2, 6489, 6484, 3, 2, 2, 2, 6489, 6485, 3, 2, 2, 2, 6489, 6488, 3, 2, 2, 2, 6490, 6493, 3, 2, 2, 2, 6491, 6492, 7, 830, 2, 2, 6492, 6494, 7, 618, 2, 2, 6493, 6491, 3, 2, 2, 2, 6493, 6494, 3, 2, 2, 2, 6494, 6499, 3, 2, 2, 2, 6495, 6496, 7, 830, 2, 2, 6496, 6497, 7, 542, 2, 2, 6497, 6498, 7, 810, 2, 2, 6498, 6500, 5, 930, 466, 2, 6499, 6495, 3, 2, 2, 2, 6499, 6500, 3, 2, 2, 2, 6500, 6502, 3, 2, 2, 2, 6501, 6483, 3, 2, 2, 2, 6501, 6502, 3, 2, 2, 2, 6502, 6504, 3, 2, 2, 2, 6503, 6505, 7, 831, 2, 2, 6504, 6503, 3, 2, 2, 2, 6504, 6505, 3, 2, 2, 2, 6505, 491, 3, 2, 2, 2, 6506, 6508, 7, 361, 2, 2, 6507, 6509, 9, 61, 2, 2, 6508, 6507, 3, 2, 2, 2, 6508, 6509, 3, 2, 2, 2, 6509, 6510, 3, 2, 2, 2, 6510, 6511, 7, 328, 2, 2, 6511, 6513, 5, 908, 455, 2, 6512, 6514, 5, 966, 484, 2, 6513, 6512, 3, 2, 2, 2, 6513, 6514, 3, 2, 2, 2, 6514, 6518, 3, 2, 2, 2, 6515, 6516, 7, 776, 2, 2, 6516, 6517, 7, 802, 2, 2, 6517, 6519, 7, 367, 2, 2, 6518, 6515, 3, 2, 2, 2, 6518, 6519, 3, 2, 2, 2, 6519, 493, 3, 2, 2, 2, 6520, 6521, 7, 73, 2, 2, 6521, 6522, 7, 339, 2, 2, 6522, 6523, 5, 910, 456, 2, 6523, 6524, 7, 828, 2, 2, 6524, 6526, 5, 696, 349, 2, 6525, 6527, 7, 830, 2, 2, 6526, 6525, 3, 2, 2, 2, 6526, 6527, 3, 2, 2, 2, 6527, 6528, 3, 2, 2, 2, 6528, 6531, 7, 829, 2, 2, 6529, 6530, 7, 569, 2, 2, 6530, 6532, 5, 968, 485, 2, 6531, 6529, 3, 2, 2, 2, 6531, 6532, 3, 2, 2, 2, 6532, 6536, 3, 2, 2, 2, 6533, 6535, 5, 496, 249, 2, 6534, 6533, 3, 2, 2, 2, 6535, 6538, 3, 2, 2, 2, 6536, 6534, 3, 2, 2, 2, 6536, 6537, 3, 2, 2, 2, 6537, 6542, 3, 2, 2, 2, 6538, 6536, 3, 2, 2, 2, 6539, 6540, 7, 229, 2, 2, 6540, 6543, 5, 966, 484, 2, 6541, 6543, 7, 89, 2, 2, 6542, 6539, 3, 2, 2, 2, 6542, 6541, 3, 2, 2, 2, 6542, 6543, 3, 2, 2, 2, 6543, 6547, 3, 2, 2, 2, 6544, 6545, 7, 754, 2, 2, 6545, 6548, 5, 966, 484, 2, 6546, 6548, 7, 89, 2, 2, 6547, 6544, 3, 2, 2, 2, 6547, 6546, 3, 2, 2, 2, 6547, 6548, 3, 2, 2, 2, 6548, 6550, 3, 2, 2, 2, 6549, 6551, 7, 831, 2, 2, 6550, 6549, 3, 2, 2, 2, 6550, 6551, 3, 2, 2, 2, 6551, 495, 3, 2, 2, 2, 6552, 6572, 7, 377, 2, 2, 6553, 6554, 7, 828, 2, 2, 6554, 6559, 5, 714, 358, 2, 6555, 6556, 7, 830, 2, 2, 6556, 6558, 5, 714, 358, 2, 6557, 6555, 3, 2, 2, 2, 6558, 6561, 3, 2, 2, 2, 6559, 6557, 3, 2, 2, 2, 6559, 6560, 3, 2, 2, 2, 6560, 6562, 3, 2, 2, 2, 6561, 6559, 3, 2, 2, 2, 6562, 6563, 7, 829, 2, 2, 6563, 6573, 3, 2, 2, 2, 6564, 6569, 5, 714, 358, 2, 6565, 6566, 7, 830, 2, 2, 6566, 6568, 5, 714, 358, 2, 6567, 6565, 3, 2, 2, 2, 6568, 6571, 3, 2, 2, 2, 6569, 6567, 3, 2, 2, 2, 6569, 6570, 3, 2, 2, 2, 6570, 6573, 3, 2, 2, 2, 6571, 6569, 3, 2, 2, 2, 6572, 6553, 3, 2, 2, 2, 6572, 6564, 3, 2, 2, 2, 6573, 497, 3, 2, 2, 2, 6574, 6575, 7, 73, 2, 2, 6575, 6576, 7, 370, 2, 2, 6576, 6581, 5, 912, 457, 2, 6577, 6578, 7, 828, 2, 2, 6578, 6579, 5, 926, 464, 2, 6579, 6580, 7, 829, 2, 2, 6580, 6582, 3, 2, 2, 2, 6581, 6577, 3, 2, 2, 2, 6581, 6582, 3, 2, 2, 2, 6582, 6592, 3, 2, 2, 2, 6583, 6584, 7, 377, 2, 2, 6584, 6589, 5, 500, 251, 2, 6585, 6586, 7, 830, 2, 2, 6586, 6588, 5, 500, 251, 2, 6587, 6585, 3, 2, 2, 2, 6588, 6591, 3, 2, 2, 2, 6589, 6587, 3, 2, 2, 2, 6589, 6590, 3, 2, 2, 2, 6590, 6593, 3, 2, 2, 2, 6591, 6589, 3, 2, 2, 2, 6592, 6583, 3, 2, 2, 2, 6592, 6593, 3, 2, 2, 2, 6593, 6594, 3, 2, 2, 2, 6594, 6595, 7, 16, 2, 2, 6595, 6599, 5, 446, 224, 2, 6596, 6597, 7, 377, 2, 2, 6597, 6598, 7, 46, 2, 2, 6598, 6600, 7, 236, 2, 2, 6599, 6596, 3, 2, 2, 2, 6599, 6600, 3, 2, 2, 2, 6600, 6602, 3, 2, 2, 2, 6601, 6603, 7, 831, 2, 2, 6602, 6601, 3, 2, 2, 2, 6602, 6603, 3, 2, 2, 2, 6603, 499, 3, 2, 2, 2, 6604, 6605, 9, 62, 2, 2, 6605, 501, 3, 2, 2, 2, 6606, 6607, 7, 10, 2, 2, 6607, 6608, 7, 339, 2, 2, 6608, 6652, 5, 910, 456, 2, 6609, 6610, 7, 315, 2, 2, 6610, 6611, 7, 828, 2, 2, 6611, 6612, 7, 570, 2, 2, 6612, 6613, 7, 810, 2, 2, 6613, 6614, 9, 63, 2, 2, 6614, 6653, 7, 829, 2, 2, 6615, 6616, 7, 4, 2, 2, 6616, 6653, 5, 698, 350, 2, 6617, 6618, 7, 10, 2, 2, 6618, 6619, 7, 56, 2, 2, 6619, 6653, 5, 700, 351, 2, 6620, 6621, 7, 103, 2, 2, 6621, 6622, 7, 56, 2, 2, 6622, 6653, 5, 966, 484, 2, 6623, 6624, 7, 103, 2, 2, 6624, 6625, 7, 61, 2, 2, 6625, 6653, 5, 966, 484, 2, 6626, 6627, 7, 377, 2, 2, 6627, 6628, 7, 46, 2, 2, 6628, 6629, 7, 4, 2, 2, 6629, 6630, 7, 61, 2, 2, 6630, 6631, 5, 966, 484, 2, 6631, 6632, 7, 136, 2, 2, 6632, 6633, 7, 172, 2, 2, 6633, 6634, 7, 828, 2, 2, 6634, 6635, 5, 926, 464, 2, 6635, 6636, 7, 829, 2, 2, 6636, 6637, 7, 270, 2, 2, 6637, 6638, 5, 910, 456, 2, 6638, 6639, 7, 828, 2, 2, 6639, 6640, 5, 926, 464, 2, 6640, 6641, 7, 829, 2, 2, 6641, 6653, 3, 2, 2, 2, 6642, 6643, 7, 46, 2, 2, 6643, 6644, 7, 61, 2, 2, 6644, 6653, 5, 966, 484, 2, 6645, 6646, 9, 23, 2, 2, 6646, 6648, 7, 352, 2, 2, 6647, 6649, 5, 966, 484, 2, 6648, 6647, 3, 2, 2, 2, 6648, 6649, 3, 2, 2, 2, 6649, 6653, 3, 2, 2, 2, 6650, 6651, 7, 673, 2, 2, 6651, 6653, 5, 496, 249, 2, 6652, 6609, 3, 2, 2, 2, 6652, 6615, 3, 2, 2, 2, 6652, 6617, 3, 2, 2, 2, 6652, 6620, 3, 2, 2, 2, 6652, 6623, 3, 2, 2, 2, 6652, 6626, 3, 2, 2, 2, 6652, 6642, 3, 2, 2, 2, 6652, 6645, 3, 2, 2, 2, 6652, 6650, 3, 2, 2, 2, 6653, 6655, 3, 2, 2, 2, 6654, 6656, 7, 831, 2, 2, 6655, 6654, 3, 2, 2, 2, 6655, 6656, 3, 2, 2, 2, 6656, 503, 3, 2, 2, 2, 6657, 6658, 7, 10, 2, 2, 6658, 6661, 7, 84, 2, 2, 6659, 6662, 5, 966, 484, 2, 6660, 6662, 7, 75, 2, 2, 6661, 6659, 3, 2, 2, 2, 6661, 6660, 3, 2, 2, 2, 6662, 6675, 3, 2, 2, 2, 6663, 6664, 7, 602, 2, 2, 6664, 6665, 7, 605, 2, 2, 6665, 6666, 7, 810, 2, 2, 6666, 6676, 5, 966, 484, 2, 6667, 6668, 7, 55, 2, 2, 6668, 6676, 5, 966, 484, 2, 6669, 6670, 7, 315, 2, 2, 6670, 6673, 5, 506, 254, 2, 6671, 6672, 7, 377, 2, 2, 6672, 6674, 5, 576, 289, 2, 6673, 6671, 3, 2, 2, 2, 6673, 6674, 3, 2, 2, 2, 6674, 6676, 3, 2, 2, 2, 6675, 6663, 3, 2, 2, 2, 6675, 6667, 3, 2, 2, 2, 6675, 6669, 3, 2, 2, 2, 6676, 6678, 3, 2, 2, 2, 6677, 6679, 7, 831, 2, 2, 6678, 6677, 3, 2, 2, 2, 6678, 6679, 3, 2, 2, 2, 6679, 505, 3, 2, 2, 2, 6680, 6704, 5, 508, 255, 2, 6681, 6704, 5, 510, 256, 2, 6682, 6704, 5, 514, 258, 2, 6683, 6704, 5, 516, 259, 2, 6684, 6704, 5, 520, 261, 2, 6685, 6704, 5, 546, 274, 2, 6686, 6704, 5, 548, 275, 2, 6687, 6704, 5, 550, 276, 2, 6688, 6704, 5, 552, 277, 2, 6689, 6704, 5, 554, 278, 2, 6690, 6704, 5, 556, 279, 2, 6691, 6704, 5, 558, 280, 2, 6692, 6693, 7, 510, 2, 2, 6693, 6704, 5, 894, 448, 2, 6694, 6704, 5, 560, 281, 2, 6695, 6704, 5, 562, 282, 2, 6696, 6704, 5, 564, 283, 2, 6697, 6704, 5, 566, 284, 2, 6698, 6704, 5, 568, 285, 2, 6699, 6704, 5, 570, 286, 2, 6700, 6704, 5, 572, 287, 2, 6701, 6704, 5, 574, 288, 2, 6702, 6704, 5, 576, 289, 2, 6703, 6680, 3, 2, 2, 2, 6703, 6681, 3, 2, 2, 2, 6703, 6682, 3, 2, 2, 2, 6703, 6683, 3, 2, 2, 2, 6703, 6684, 3, 2, 2, 2, 6703, 6685, 3, 2, 2, 2, 6703, 6686, 3, 2, 2, 2, 6703, 6687, 3, 2, 2, 2, 6703, 6688, 3, 2, 2, 2, 6703, 6689, 3, 2, 2, 2, 6703, 6690, 3, 2, 2, 2, 6703, 6691, 3, 2, 2, 2, 6703, 6692, 3, 2, 2, 2, 6703, 6694, 3, 2, 2, 2, 6703, 6695, 3, 2, 2, 2, 6703, 6696, 3, 2, 2, 2, 6703, 6697, 3, 2, 2, 2, 6703, 6698, 3, 2, 2, 2, 6703, 6699, 3, 2, 2, 2, 6703, 6700, 3, 2, 2, 2, 6703, 6701, 3, 2, 2, 2, 6703, 6702, 3, 2, 2, 2, 6704, 507, 3, 2, 2, 2, 6705, 6706, 7, 410, 2, 2, 6706, 6723, 5, 930, 466, 2, 6707, 6708, 7, 411, 2, 2, 6708, 6723, 7, 226, 2, 2, 6709, 6714, 7, 229, 2, 2, 6710, 6711, 7, 542, 2, 2, 6711, 6712, 7, 810, 2, 2, 6712, 6715, 7, 229, 2, 2, 6713, 6715, 7, 226, 2, 2, 6714, 6710, 3, 2, 2, 2, 6714, 6713, 3, 2, 2, 2, 6715, 6723, 3, 2, 2, 2, 6716, 6717, 7, 412, 2, 2, 6717, 6723, 5, 930, 466, 2, 6718, 6719, 7, 413, 2, 2, 6719, 6723, 5, 930, 466, 2, 6720, 6721, 7, 414, 2, 2, 6721, 6723, 9, 9, 2, 2, 6722, 6705, 3, 2, 2, 2, 6722, 6707, 3, 2, 2, 2, 6722, 6709, 3, 2, 2, 2, 6722, 6716, 3, 2, 2, 2, 6722, 6718, 3, 2, 2, 2, 6722, 6720, 3, 2, 2, 2, 6723, 509, 3, 2, 2, 2, 6724, 6725, 7, 433, 2, 2, 6725, 6741, 7, 810, 2, 2, 6726, 6742, 7, 226, 2, 2, 6727, 6738, 7, 229, 2, 2, 6728, 6733, 5, 512, 257, 2, 6729, 6730, 7, 830, 2, 2, 6730, 6732, 5, 512, 257, 2, 6731, 6729, 3, 2, 2, 2, 6732, 6735, 3, 2, 2, 2, 6733, 6731, 3, 2, 2, 2, 6733, 6734, 3, 2, 2, 2, 6734, 6737, 3, 2, 2, 2, 6735, 6733, 3, 2, 2, 2, 6736, 6728, 3, 2, 2, 2, 6737, 6740, 3, 2, 2, 2, 6738, 6736, 3, 2, 2, 2, 6738, 6739, 3, 2, 2, 2, 6739, 6742, 3, 2, 2, 2, 6740, 6738, 3, 2, 2, 2, 6741, 6726, 3, 2, 2, 2, 6741, 6727, 3, 2, 2, 2, 6742, 511, 3, 2, 2, 2, 6743, 6744, 7, 409, 2, 2, 6744, 6745, 7, 810, 2, 2, 6745, 6750, 5, 930, 466, 2, 6746, 6747, 7, 432, 2, 2, 6747, 6748, 7, 810, 2, 2, 6748, 6750, 9, 64, 2, 2, 6749, 6743, 3, 2, 2, 2, 6749, 6746, 3, 2, 2, 2, 6750, 513, 3, 2, 2, 2, 6751, 6752, 7, 62, 2, 2, 6752, 6753, 7, 810, 2, 2, 6753, 6754, 9, 55, 2, 2, 6754, 515, 3, 2, 2, 2, 6755, 6756, 7, 454, 2, 2, 6756, 6760, 5, 930, 466, 2, 6757, 6758, 7, 455, 2, 2, 6758, 6760, 9, 65, 2, 2, 6759, 6755, 3, 2, 2, 2, 6759, 6757, 3, 2, 2, 2, 6760, 517, 3, 2, 2, 2, 6761, 6762, 7, 10, 2, 2, 6762, 6763, 7, 109, 2, 2, 6763, 6766, 5, 966, 484, 2, 6764, 6765, 7, 20, 2, 2, 6765, 6767, 5, 966, 484, 2, 6766, 6764, 3, 2, 2, 2, 6766, 6767, 3, 2, 2, 2, 6767, 6775, 3, 2, 2, 2, 6768, 6769, 7, 329, 2, 2, 6769, 6773, 7, 810, 2, 2, 6770, 6774, 7, 332, 2, 2, 6771, 6774, 7, 335, 2, 2, 6772, 6774, 7, 482, 2, 2, 6773, 6770, 3, 2, 2, 2, 6773, 6771, 3, 2, 2, 2, 6773, 6772, 3, 2, 2, 2, 6774, 6776, 3, 2, 2, 2, 6775, 6768, 3, 2, 2, 2, 6775, 6776, 3, 2, 2, 2, 6776, 6777, 3, 2, 2, 2, 6777, 6778, 7, 16, 2, 2, 6778, 6779, 7, 343, 2, 2, 6779, 6780, 7, 828, 2, 2, 6780, 6781, 7, 184, 2, 2, 6781, 6782, 7, 810, 2, 2, 6782, 6787, 7, 802, 2, 2, 6783, 6784, 7, 830, 2, 2, 6784, 6785, 7, 183, 2, 2, 6785, 6786, 7, 810, 2, 2, 6786, 6788, 9, 66, 2, 2, 6787, 6783, 3, 2, 2, 2, 6787, 6788, 3, 2, 2, 2, 6788, 6789, 3, 2, 2, 2, 6789, 6899, 7, 829, 2, 2, 6790, 6900, 7, 767, 2, 2, 6791, 6792, 7, 133, 2, 2, 6792, 6793, 7, 311, 2, 2, 6793, 6794, 7, 828, 2, 2, 6794, 6795, 7, 21, 2, 2, 6795, 6812, 7, 810, 2, 2, 6796, 6798, 7, 376, 2, 2, 6797, 6799, 9, 67, 2, 2, 6798, 6797, 3, 2, 2, 2, 6798, 6799, 3, 2, 2, 2, 6799, 6802, 3, 2, 2, 2, 6800, 6801, 7, 43, 2, 2, 6801, 6803, 5, 966, 484, 2, 6802, 6800, 3, 2, 2, 2, 6802, 6803, 3, 2, 2, 2, 6803, 6813, 3, 2, 2, 2, 6804, 6805, 7, 43, 2, 2, 6805, 6807, 5, 966, 484, 2, 6806, 6808, 7, 376, 2, 2, 6807, 6806, 3, 2, 2, 2, 6807, 6808, 3, 2, 2, 2, 6808, 6810, 3, 2, 2, 2, 6809, 6811, 9, 67, 2, 2, 6810, 6809, 3, 2, 2, 2, 6810, 6811, 3, 2, 2, 2, 6811, 6813, 3, 2, 2, 2, 6812, 6796, 3, 2, 2, 2, 6812, 6804, 3, 2, 2, 2, 6813, 6831, 3, 2, 2, 2, 6814, 6816, 7, 830, 2, 2, 6815, 6814, 3, 2, 2, 2, 6815, 6816, 3, 2, 2, 2, 6816, 6817, 3, 2, 2, 2, 6817, 6818, 7, 492, 2, 2, 6818, 6819, 7, 810, 2, 2, 6819, 6829, 9, 68, 2, 2, 6820, 6827, 7, 394, 2, 2, 6821, 6828, 7, 5, 2, 2, 6822, 6828, 7, 666, 2, 2, 6823, 6824, 7, 5, 2, 2, 6824, 6828, 7, 666, 2, 2, 6825, 6826, 7, 666, 2, 2, 6826, 6828, 7, 5, 2, 2, 6827, 6821, 3, 2, 2, 2, 6827, 6822, 3, 2, 2, 2, 6827, 6823, 3, 2, 2, 2, 6827, 6825, 3, 2, 2, 2, 6828, 6830, 3, 2, 2, 2, 6829, 6820, 3, 2, 2, 2, 6829, 6830, 3, 2, 2, 2, 6830, 6832, 3, 2, 2, 2, 6831, 6815, 3, 2, 2, 2, 6831, 6832, 3, 2, 2, 2, 6832, 6839, 3, 2, 2, 2, 6833, 6835, 7, 830, 2, 2, 6834, 6833, 3, 2, 2, 2, 6834, 6835, 3, 2, 2, 2, 6835, 6836, 3, 2, 2, 2, 6836, 6837, 7, 202, 2, 2, 6837, 6838, 7, 810, 2, 2, 6838, 6840, 9, 69, 2, 2, 6839, 6834, 3, 2, 2, 2, 6839, 6840, 3, 2, 2, 2, 6840, 6847, 3, 2, 2, 2, 6841, 6843, 7, 830, 2, 2, 6842, 6841, 3, 2, 2, 2, 6842, 6843, 3, 2, 2, 2, 6843, 6844, 3, 2, 2, 2, 6844, 6845, 7, 203, 2, 2, 6845, 6846, 7, 810, 2, 2, 6846, 6848, 7, 802, 2, 2, 6847, 6842, 3, 2, 2, 2, 6847, 6848, 3, 2, 2, 2, 6848, 6849, 3, 2, 2, 2, 6849, 6900, 7, 829, 2, 2, 6850, 6851, 7, 133, 2, 2, 6851, 6852, 7, 85, 2, 2, 6852, 6853, 7, 828, 2, 2, 6853, 6854, 7, 21, 2, 2, 6854, 6871, 7, 810, 2, 2, 6855, 6857, 7, 376, 2, 2, 6856, 6858, 9, 67, 2, 2, 6857, 6856, 3, 2, 2, 2, 6857, 6858, 3, 2, 2, 2, 6858, 6861, 3, 2, 2, 2, 6859, 6860, 7, 43, 2, 2, 6860, 6862, 5, 966, 484, 2, 6861, 6859, 3, 2, 2, 2, 6861, 6862, 3, 2, 2, 2, 6862, 6872, 3, 2, 2, 2, 6863, 6864, 7, 43, 2, 2, 6864, 6866, 5, 966, 484, 2, 6865, 6867, 7, 376, 2, 2, 6866, 6865, 3, 2, 2, 2, 6866, 6867, 3, 2, 2, 2, 6867, 6869, 3, 2, 2, 2, 6868, 6870, 9, 67, 2, 2, 6869, 6868, 3, 2, 2, 2, 6869, 6870, 3, 2, 2, 2, 6870, 6872, 3, 2, 2, 2, 6871, 6855, 3, 2, 2, 2, 6871, 6863, 3, 2, 2, 2, 6872, 6890, 3, 2, 2, 2, 6873, 6875, 7, 830, 2, 2, 6874, 6873, 3, 2, 2, 2, 6874, 6875, 3, 2, 2, 2, 6875, 6876, 3, 2, 2, 2, 6876, 6877, 7, 492, 2, 2, 6877, 6878, 7, 810, 2, 2, 6878, 6888, 9, 68, 2, 2, 6879, 6886, 7, 394, 2, 2, 6880, 6887, 7, 5, 2, 2, 6881, 6887, 7, 666, 2, 2, 6882, 6883, 7, 5, 2, 2, 6883, 6887, 7, 666, 2, 2, 6884, 6885, 7, 666, 2, 2, 6885, 6887, 7, 5, 2, 2, 6886, 6880, 3, 2, 2, 2, 6886, 6881, 3, 2, 2, 2, 6886, 6882, 3, 2, 2, 2, 6886, 6884, 3, 2, 2, 2, 6887, 6889, 3, 2, 2, 2, 6888, 6879, 3, 2, 2, 2, 6888, 6889, 3, 2, 2, 2, 6889, 6891, 3, 2, 2, 2, 6890, 6874, 3, 2, 2, 2, 6890, 6891, 3, 2, 2, 2, 6891, 6893, 3, 2, 2, 2, 6892, 6894, 7, 830, 2, 2, 6893, 6892, 3, 2, 2, 2, 6893, 6894, 3, 2, 2, 2, 6894, 6895, 3, 2, 2, 2, 6895, 6896, 7, 289, 2, 2, 6896, 6897, 7, 810, 2, 2, 6897, 6898, 9, 70, 2, 2, 6898, 6900, 7, 829, 2, 2, 6899, 6790, 3, 2, 2, 2, 6899, 6791, 3, 2, 2, 2, 6899, 6850, 3, 2, 2, 2, 6900, 519, 3, 2, 2, 2, 6901, 6902, 5, 522, 262, 2, 6902, 521, 3, 2, 2, 2, 6903, 6904, 5, 524, 263, 2, 6904, 6905, 5, 530, 266, 2, 6905, 6910, 3, 2, 2, 2, 6906, 6907, 5, 526, 264, 2, 6907, 6908, 5, 532, 267, 2, 6908, 6910, 3, 2, 2, 2, 6909, 6903, 3, 2, 2, 2, 6909, 6906, 3, 2, 2, 2, 6910, 523, 3, 2, 2, 2, 6911, 6912, 7, 642, 2, 2, 6912, 525, 3, 2, 2, 2, 6913, 6914, 7, 380, 2, 2, 6914, 527, 3, 2, 2, 2, 6915, 6916, 7, 810, 2, 2, 6916, 529, 3, 2, 2, 2, 6917, 6918, 5, 528, 265, 2, 6918, 6919, 5, 536, 269, 2, 6919, 6930, 3, 2, 2, 2, 6920, 6930, 7, 125, 2, 2, 6921, 6930, 7, 135, 2, 2, 6922, 6930, 7, 226, 2, 2, 6923, 6930, 7, 280, 2, 2, 6924, 6925, 7, 297, 2, 2, 6925, 6930, 9, 71, 2, 2, 6926, 6930, 7, 746, 2, 2, 6927, 6928, 7, 758, 2, 2, 6928, 6930, 7, 802, 2, 2, 6929, 6917, 3, 2, 2, 2, 6929, 6920, 3, 2, 2, 2, 6929, 6921, 3, 2, 2, 2, 6929, 6922, 3, 2, 2, 2, 6929, 6923, 3, 2, 2, 2, 6929, 6924, 3, 2, 2, 2, 6929, 6926, 3, 2, 2, 2, 6929, 6927, 3, 2, 2, 2, 6930, 531, 3, 2, 2, 2, 6931, 6932, 5, 528, 265, 2, 6932, 6933, 5, 534, 268, 2, 6933, 6936, 3, 2, 2, 2, 6934, 6936, 7, 226, 2, 2, 6935, 6931, 3, 2, 2, 2, 6935, 6934, 3, 2, 2, 2, 6936, 533, 3, 2, 2, 2, 6937, 6938, 5, 536, 269, 2, 6938, 535, 3, 2, 2, 2, 6939, 6940, 5, 540, 271, 2, 6940, 6941, 5, 544, 273, 2, 6941, 6942, 5, 538, 270, 2, 6942, 6943, 5, 542, 272, 2, 6943, 537, 3, 2, 2, 2, 6944, 6945, 7, 832, 2, 2, 6945, 539, 3, 2, 2, 2, 6946, 6947, 7, 343, 2, 2, 6947, 6948, 7, 832, 2, 2, 6948, 6949, 7, 102, 2, 2, 6949, 541, 3, 2, 2, 2, 6950, 6951, 7, 802, 2, 2, 6951, 543, 3, 2, 2, 2, 6952, 6953, 5, 966, 484, 2, 6953, 6954, 7, 823, 2, 2, 6954, 6955, 5, 544, 273, 2, 6955, 6963, 3, 2, 2, 2, 6956, 6957, 5, 966, 484, 2, 6957, 6958, 7, 823, 2, 2, 6958, 6961, 3, 2, 2, 2, 6959, 6961, 5, 966, 484, 2, 6960, 6956, 3, 2, 2, 2, 6960, 6959, 3, 2, 2, 2, 6961, 6963, 3, 2, 2, 2, 6962, 6952, 3, 2, 2, 2, 6962, 6960, 3, 2, 2, 2, 6963, 545, 3, 2, 2, 2, 6964, 6965, 7, 457, 2, 2, 6965, 6966, 5, 930, 466, 2, 6966, 547, 3, 2, 2, 2, 6967, 6968, 7, 492, 2, 2, 6968, 6969, 5, 930, 466, 2, 6969, 549, 3, 2, 2, 2, 6970, 6971, 9, 72, 2, 2, 6971, 551, 3, 2, 2, 2, 6972, 6973, 9, 73, 2, 2, 6973, 553, 3, 2, 2, 2, 6974, 6975, 9, 74, 2, 2, 6975, 555, 3, 2, 2, 2, 6976, 6977, 7, 470, 2, 2, 6977, 6978, 7, 810, 2, 2, 6978, 6979, 9, 75, 2, 2, 6979, 557, 3, 2, 2, 2, 6980, 6981, 7, 463, 2, 2, 6981, 7006, 5, 930, 466, 2, 6982, 6983, 7, 765, 2, 2, 6983, 7006, 5, 930, 466, 2, 6984, 6985, 7, 468, 2, 2, 6985, 6988, 7, 810, 2, 2, 6986, 6989, 5, 966, 484, 2, 6987, 6989, 7, 806, 2, 2, 6988, 6986, 3, 2, 2, 2, 6988, 6987, 3, 2, 2, 2, 6989, 7006, 3, 2, 2, 2, 6990, 6991, 7, 467, 2, 2, 6991, 6994, 7, 810, 2, 2, 6992, 6995, 5, 966, 484, 2, 6993, 6995, 7, 806, 2, 2, 6994, 6992, 3, 2, 2, 2, 6994, 6993, 3, 2, 2, 2, 6995, 7006, 3, 2, 2, 2, 6996, 6997, 7, 606, 2, 2, 6997, 6998, 7, 810, 2, 2, 6998, 7006, 9, 9, 2, 2, 6999, 7000, 7, 762, 2, 2, 7000, 7001, 7, 810, 2, 2, 7001, 7006, 9, 9, 2, 2, 7002, 7003, 7, 768, 2, 2, 7003, 7004, 7, 810, 2, 2, 7004, 7006, 7, 802, 2, 2, 7005, 6980, 3, 2, 2, 2, 7005, 6982, 3, 2, 2, 2, 7005, 6984, 3, 2, 2, 2, 7005, 6990, 3, 2, 2, 2, 7005, 6996, 3, 2, 2, 2, 7005, 6999, 3, 2, 2, 2, 7005, 7002, 3, 2, 2, 2, 7006, 559, 3, 2, 2, 2, 7007, 7016, 7, 530, 2, 2, 7008, 7009, 7, 415, 2, 2, 7009, 7010, 7, 146, 2, 2, 7010, 7011, 7, 810, 2, 2, 7011, 7014, 5, 966, 484, 2, 7012, 7014, 7, 226, 2, 2, 7013, 7008, 3, 2, 2, 2, 7013, 7012, 3, 2, 2, 2, 7014, 7017, 3, 2, 2, 2, 7015, 7017, 9, 76, 2, 2, 7016, 7013, 3, 2, 2, 2, 7016, 7015, 3, 2, 2, 2, 7017, 561, 3, 2, 2, 2, 7018, 7019, 7, 600, 2, 2, 7019, 7020, 9, 9, 2, 2, 7020, 563, 3, 2, 2, 2, 7021, 7022, 7, 639, 2, 2, 7022, 7023, 9, 77, 2, 2, 7023, 565, 3, 2, 2, 2, 7024, 7025, 7, 676, 2, 2, 7025, 7031, 9, 78, 2, 2, 7026, 7027, 7, 761, 2, 2, 7027, 7031, 5, 930, 466, 2, 7028, 7029, 7, 638, 2, 2, 7029, 7031, 9, 79, 2, 2, 7030, 7024, 3, 2, 2, 2, 7030, 7026, 3, 2, 2, 2, 7030, 7028, 3, 2, 2, 2, 7031, 567, 3, 2, 2, 2, 7032, 7039, 7, 490, 2, 2, 7033, 7039, 7, 481, 2, 2, 7034, 7039, 7, 608, 2, 2, 7035, 7039, 7, 494, 2, 2, 7036, 7037, 7, 534, 2, 2, 7037, 7039, 5, 930, 466, 2, 7038, 7032, 3, 2, 2, 2, 7038, 7033, 3, 2, 2, 2, 7038, 7034, 3, 2, 2, 2, 7038, 7035, 3, 2, 2, 2, 7038, 7036, 3, 2, 2, 2, 7039, 569, 3, 2, 2, 2, 7040, 7041, 7, 396, 2, 2, 7041, 7046, 5, 930, 466, 2, 7042, 7043, 7, 668, 2, 2, 7043, 7046, 9, 9, 2, 2, 7044, 7046, 9, 9, 2, 2, 7045, 7040, 3, 2, 2, 2, 7045, 7042, 3, 2, 2, 2, 7045, 7044, 3, 2, 2, 2, 7046, 571, 3, 2, 2, 2, 7047, 7048, 7, 398, 2, 2, 7048, 7069, 5, 930, 466, 2, 7049, 7050, 7, 399, 2, 2, 7050, 7069, 5, 930, 466, 2, 7051, 7052, 7, 400, 2, 2, 7052, 7069, 5, 930, 466, 2, 7053, 7054, 7, 401, 2, 2, 7054, 7069, 5, 930, 466, 2, 7055, 7056, 7, 404, 2, 2, 7056, 7069, 5, 930, 466, 2, 7057, 7058, 7, 440, 2, 2, 7058, 7059, 7, 810, 2, 2, 7059, 7069, 7, 802, 2, 2, 7060, 7061, 7, 442, 2, 2, 7061, 7069, 5, 930, 466, 2, 7062, 7063, 7, 624, 2, 2, 7063, 7069, 5, 930, 466, 2, 7064, 7065, 7, 662, 2, 2, 7065, 7069, 5, 930, 466, 2, 7066, 7067, 7, 677, 2, 2, 7067, 7069, 5, 930, 466, 2, 7068, 7047, 3, 2, 2, 2, 7068, 7049, 3, 2, 2, 2, 7068, 7051, 3, 2, 2, 2, 7068, 7053, 3, 2, 2, 2, 7068, 7055, 3, 2, 2, 2, 7068, 7057, 3, 2, 2, 2, 7068, 7060, 3, 2, 2, 2, 7068, 7062, 3, 2, 2, 2, 7068, 7064, 3, 2, 2, 2, 7068, 7066, 3, 2, 2, 2, 7069, 573, 3, 2, 2, 2, 7070, 7071, 7, 752, 2, 2, 7071, 7072, 7, 810, 2, 2, 7072, 7073, 7, 802, 2, 2, 7073, 7074, 9, 80, 2, 2, 7074, 575, 3, 2, 2, 2, 7075, 7076, 7, 288, 2, 2, 7076, 7077, 7, 392, 2, 2, 7077, 7082, 7, 802, 2, 2, 7078, 7079, 7, 288, 2, 2, 7079, 7082, 7, 538, 2, 2, 7080, 7082, 7, 613, 2, 2, 7081, 7075, 3, 2, 2, 2, 7081, 7078, 3, 2, 2, 2, 7081, 7080, 3, 2, 2, 2, 7082, 577, 3, 2, 2, 2, 7083, 7084, 7, 103, 2, 2, 7084, 7087, 7, 158, 2, 2, 7085, 7086, 7, 153, 2, 2, 7086, 7088, 7, 119, 2, 2, 7087, 7085, 3, 2, 2, 2, 7087, 7088, 3, 2, 2, 2, 7088, 7105, 3, 2, 2, 2, 7089, 7094, 5, 580, 291, 2, 7090, 7091, 7, 830, 2, 2, 7091, 7093, 5, 580, 291, 2, 7092, 7090, 3, 2, 2, 2, 7093, 7096, 3, 2, 2, 2, 7094, 7092, 3, 2, 2, 2, 7094, 7095, 3, 2, 2, 2, 7095, 7106, 3, 2, 2, 2, 7096, 7094, 3, 2, 2, 2, 7097, 7102, 5, 582, 292, 2, 7098, 7099, 7, 830, 2, 2, 7099, 7101, 5, 582, 292, 2, 7100, 7098, 3, 2, 2, 2, 7101, 7104, 3, 2, 2, 2, 7102, 7100, 3, 2, 2, 2, 7102, 7103, 3, 2, 2, 2, 7103, 7106, 3, 2, 2, 2, 7104, 7102, 3, 2, 2, 2, 7105, 7089, 3, 2, 2, 2, 7105, 7097, 3, 2, 2, 2, 7106, 7108, 3, 2, 2, 2, 7107, 7109, 7, 831, 2, 2, 7108, 7107, 3, 2, 2, 2, 7108, 7109, 3, 2, 2, 2, 7109, 579, 3, 2, 2, 2, 7110, 7111, 5, 966, 484, 2, 7111, 7112, 7, 229, 2, 2, 7112, 7113, 5, 908, 455, 2, 7113, 581, 3, 2, 2, 2, 7114, 7115, 5, 966, 484, 2, 7115, 7116, 7, 823, 2, 2, 7116, 7118, 3, 2, 2, 2, 7117, 7114, 3, 2, 2, 2, 7117, 7118, 3, 2, 2, 2, 7118, 7119, 3, 2, 2, 2, 7119, 7120, 5, 966, 484, 2, 7120, 7121, 7, 823, 2, 2, 7121, 7122, 5, 966, 484, 2, 7122, 583, 3, 2, 2, 2, 7123, 7124, 7, 103, 2, 2, 7124, 7127, 9, 56, 2, 2, 7125, 7126, 7, 153, 2, 2, 7126, 7128, 7, 119, 2, 2, 7127, 7125, 3, 2, 2, 2, 7127, 7128, 3, 2, 2, 2, 7128, 7129, 3, 2, 2, 2, 7129, 7134, 5, 914, 458, 2, 7130, 7131, 7, 830, 2, 2, 7131, 7133, 5, 914, 458, 2, 7132, 7130, 3, 2, 2, 2, 7133, 7136, 3, 2, 2, 2, 7134, 7132, 3, 2, 2, 2, 7134, 7135, 3, 2, 2, 2, 7135, 7138, 3, 2, 2, 2, 7136, 7134, 3, 2, 2, 2, 7137, 7139, 7, 831, 2, 2, 7138, 7137, 3, 2, 2, 2, 7138, 7139, 3, 2, 2, 2, 7139, 585, 3, 2, 2, 2, 7140, 7143, 5, 588, 295, 2, 7141, 7143, 5, 590, 296, 2, 7142, 7140, 3, 2, 2, 2, 7142, 7141, 3, 2, 2, 2, 7143, 587, 3, 2, 2, 2, 7144, 7145, 7, 103, 2, 2, 7145, 7148, 7, 352, 2, 2, 7146, 7147, 7, 153, 2, 2, 7147, 7149, 7, 119, 2, 2, 7148, 7146, 3, 2, 2, 2, 7148, 7149, 3, 2, 2, 2, 7149, 7150, 3, 2, 2, 2, 7150, 7155, 5, 912, 457, 2, 7151, 7152, 7, 830, 2, 2, 7152, 7154, 5, 912, 457, 2, 7153, 7151, 3, 2, 2, 2, 7154, 7157, 3, 2, 2, 2, 7155, 7153, 3, 2, 2, 2, 7155, 7156, 3, 2, 2, 2, 7156, 7159, 3, 2, 2, 2, 7157, 7155, 3, 2, 2, 2, 7158, 7160, 7, 831, 2, 2, 7159, 7158, 3, 2, 2, 2, 7159, 7160, 3, 2, 2, 2, 7160, 589, 3, 2, 2, 2, 7161, 7162, 7, 103, 2, 2, 7162, 7165, 7, 352, 2, 2, 7163, 7164, 7, 153, 2, 2, 7164, 7166, 7, 119, 2, 2, 7165, 7163, 3, 2, 2, 2, 7165, 7166, 3, 2, 2, 2, 7166, 7167, 3, 2, 2, 2, 7167, 7172, 5, 912, 457, 2, 7168, 7169, 7, 830, 2, 2, 7169, 7171, 5, 912, 457, 2, 7170, 7168, 3, 2, 2, 2, 7171, 7174, 3, 2, 2, 2, 7172, 7170, 3, 2, 2, 2, 7172, 7173, 3, 2, 2, 2, 7173, 7175, 3, 2, 2, 2, 7174, 7172, 3, 2, 2, 2, 7175, 7179, 7, 229, 2, 2, 7176, 7180, 7, 84, 2, 2, 7177, 7178, 7, 6, 2, 2, 7178, 7180, 7, 309, 2, 2, 7179, 7176, 3, 2, 2, 2, 7179, 7177, 3, 2, 2, 2, 7180, 7182, 3, 2, 2, 2, 7181, 7183, 7, 831, 2, 2, 7182, 7181, 3, 2, 2, 2, 7182, 7183, 3, 2, 2, 2, 7183, 591, 3, 2, 2, 2, 7184, 7185, 7, 103, 2, 2, 7185, 7188, 7, 141, 2, 2, 7186, 7187, 7, 153, 2, 2, 7187, 7189, 7, 119, 2, 2, 7188, 7186, 3, 2, 2, 2, 7188, 7189, 3, 2, 2, 2, 7189, 7190, 3, 2, 2, 2, 7190, 7195, 5, 914, 458, 2, 7191, 7192, 7, 830, 2, 2, 7192, 7194, 5, 914, 458, 2, 7193, 7191, 3, 2, 2, 2, 7194, 7197, 3, 2, 2, 2, 7195, 7193, 3, 2, 2, 2, 7195, 7196, 3, 2, 2, 2, 7196, 7199, 3, 2, 2, 2, 7197, 7195, 3, 2, 2, 2, 7198, 7200, 7, 831, 2, 2, 7199, 7198, 3, 2, 2, 2, 7199, 7200, 3, 2, 2, 2, 7200, 593, 3, 2, 2, 2, 7201, 7202, 7, 103, 2, 2, 7202, 7212, 7, 328, 2, 2, 7203, 7205, 7, 830, 2, 2, 7204, 7203, 3, 2, 2, 2, 7204, 7205, 3, 2, 2, 2, 7205, 7209, 3, 2, 2, 2, 7206, 7207, 5, 910, 456, 2, 7207, 7208, 7, 823, 2, 2, 7208, 7210, 3, 2, 2, 2, 7209, 7206, 3, 2, 2, 2, 7209, 7210, 3, 2, 2, 2, 7210, 7211, 3, 2, 2, 2, 7211, 7213, 5, 966, 484, 2, 7212, 7204, 3, 2, 2, 2, 7213, 7214, 3, 2, 2, 2, 7214, 7212, 3, 2, 2, 2, 7214, 7215, 3, 2, 2, 2, 7215, 7216, 3, 2, 2, 2, 7216, 7217, 7, 831, 2, 2, 7217, 595, 3, 2, 2, 2, 7218, 7219, 7, 103, 2, 2, 7219, 7222, 7, 339, 2, 2, 7220, 7221, 7, 153, 2, 2, 7221, 7223, 7, 119, 2, 2, 7222, 7220, 3, 2, 2, 2, 7222, 7223, 3, 2, 2, 2, 7223, 7224, 3, 2, 2, 2, 7224, 7226, 5, 910, 456, 2, 7225, 7227, 7, 831, 2, 2, 7226, 7225, 3, 2, 2, 2, 7226, 7227, 3, 2, 2, 2, 7227, 597, 3, 2, 2, 2, 7228, 7229, 7, 103, 2, 2, 7229, 7232, 7, 370, 2, 2, 7230, 7231, 7, 153, 2, 2, 7231, 7233, 7, 119, 2, 2, 7232, 7230, 3, 2, 2, 2, 7232, 7233, 3, 2, 2, 2, 7233, 7234, 3, 2, 2, 2, 7234, 7239, 5, 912, 457, 2, 7235, 7236, 7, 830, 2, 2, 7236, 7238, 5, 912, 457, 2, 7237, 7235, 3, 2, 2, 2, 7238, 7241, 3, 2, 2, 2, 7239, 7237, 3, 2, 2, 2, 7239, 7240, 3, 2, 2, 2, 7240, 7243, 3, 2, 2, 2, 7241, 7239, 3, 2, 2, 2, 7242, 7244, 7, 831, 2, 2, 7243, 7242, 3, 2, 2, 2, 7243, 7244, 3, 2, 2, 2, 7244, 599, 3, 2, 2, 2, 7245, 7246, 7, 73, 2, 2, 7246, 7247, 7, 769, 2, 2, 7247, 7252, 5, 912, 457, 2, 7248, 7249, 7, 139, 2, 2, 7249, 7250, 5, 958, 480, 2, 7250, 7251, 5, 960, 481, 2, 7251, 7253, 3, 2, 2, 2, 7252, 7248, 3, 2, 2, 2, 7252, 7253, 3, 2, 2, 2, 7253, 7260, 3, 2, 2, 2, 7254, 7255, 7, 16, 2, 2, 7255, 7256, 7, 339, 2, 2, 7256, 7257, 7, 828, 2, 2, 7257, 7258, 5, 696, 349, 2, 7258, 7259, 7, 829, 2, 2, 7259, 7261, 3, 2, 2, 2, 7260, 7254, 3, 2, 2, 2, 7260, 7261, 3, 2, 2, 2, 7261, 601, 3, 2, 2, 2, 7262, 7263, 7, 103, 2, 2, 7263, 7266, 7, 769, 2, 2, 7264, 7265, 7, 153, 2, 2, 7265, 7267, 7, 119, 2, 2, 7266, 7264, 3, 2, 2, 2, 7266, 7267, 3, 2, 2, 2, 7267, 7268, 3, 2, 2, 2, 7268, 7269, 5, 912, 457, 2, 7269, 603, 3, 2, 2, 2, 7270, 7273, 5, 606, 304, 2, 7271, 7273, 5, 608, 305, 2, 7272, 7270, 3, 2, 2, 2, 7272, 7271, 3, 2, 2, 2, 7273, 605, 3, 2, 2, 2, 7274, 7275, 7, 233, 2, 2, 7275, 7276, 7, 828, 2, 2, 7276, 7277, 5, 966, 484, 2, 7277, 7278, 7, 830, 2, 2, 7278, 7279, 7, 806, 2, 2, 7279, 7280, 7, 829, 2, 2, 7280, 607, 3, 2, 2, 2, 7281, 7282, 7, 232, 2, 2, 7282, 7283, 7, 828, 2, 2, 7283, 7284, 7, 806, 2, 2, 7284, 7285, 7, 830, 2, 2, 7285, 7286, 7, 806, 2, 2, 7286, 7287, 7, 829, 2, 2, 7287, 7289, 7, 823, 2, 2, 7288, 7290, 5, 966, 484, 2, 7289, 7288, 3, 2, 2, 2, 7289, 7290, 3, 2, 2, 2, 7290, 7291, 3, 2, 2, 2, 7291, 7293, 7, 823, 2, 2, 7292, 7294, 5, 966, 484, 2, 7293, 7292, 3, 2, 2, 2, 7293, 7294, 3, 2, 2, 2, 7294, 7295, 3, 2, 2, 2, 7295, 7296, 7, 823, 2, 2, 7296, 7297, 5, 966, 484, 2, 7297, 609, 3, 2, 2, 2, 7298, 7299, 7, 88, 2, 2, 7299, 7301, 7, 801, 2, 2, 7300, 7302, 7, 16, 2, 2, 7301, 7300, 3, 2, 2, 2, 7301, 7302, 3, 2, 2, 2, 7302, 7303, 3, 2, 2, 2, 7303, 7305, 5, 690, 346, 2, 7304, 7306, 7, 831, 2, 2, 7305, 7304, 3, 2, 2, 2, 7305, 7306, 3, 2, 2, 2, 7306, 7342, 3, 2, 2, 2, 7307, 7308, 7, 88, 2, 2, 7308, 7313, 5, 688, 345, 2, 7309, 7310, 7, 830, 2, 2, 7310, 7312, 5, 688, 345, 2, 7311, 7309, 3, 2, 2, 2, 7312, 7315, 3, 2, 2, 2, 7313, 7311, 3, 2, 2, 2, 7313, 7314, 3, 2, 2, 2, 7314, 7317, 3, 2, 2, 2, 7315, 7313, 3, 2, 2, 2, 7316, 7318, 7, 831, 2, 2, 7317, 7316, 3, 2, 2, 2, 7317, 7318, 3, 2, 2, 2, 7318, 7342, 3, 2, 2, 2, 7319, 7320, 7, 88, 2, 2, 7320, 7322, 7, 801, 2, 2, 7321, 7323, 7, 16, 2, 2, 7322, 7321, 3, 2, 2, 2, 7322, 7323, 3, 2, 2, 2, 7323, 7324, 3, 2, 2, 2, 7324, 7326, 5, 692, 347, 2, 7325, 7327, 7, 831, 2, 2, 7326, 7325, 3, 2, 2, 2, 7326, 7327, 3, 2, 2, 2, 7327, 7342, 3, 2, 2, 2, 7328, 7329, 7, 377, 2, 2, 7329, 7330, 7, 791, 2, 2, 7330, 7331, 7, 828, 2, 2, 7331, 7333, 7, 806, 2, 2, 7332, 7334, 7, 830, 2, 2, 7333, 7332, 3, 2, 2, 2, 7333, 7334, 3, 2, 2, 2, 7334, 7335, 3, 2, 2, 2, 7335, 7336, 7, 16, 2, 2, 7336, 7337, 5, 966, 484, 2, 7337, 7339, 7, 829, 2, 2, 7338, 7340, 7, 831, 2, 2, 7339, 7338, 3, 2, 2, 2, 7339, 7340, 3, 2, 2, 2, 7340, 7342, 3, 2, 2, 2, 7341, 7298, 3, 2, 2, 2, 7341, 7307, 3, 2, 2, 2, 7341, 7319, 3, 2, 2, 2, 7341, 7328, 3, 2, 2, 2, 7342, 611, 3, 2, 2, 2, 7343, 7345, 7, 51, 2, 2, 7344, 7346, 7, 525, 2, 2, 7345, 7344, 3, 2, 2, 2, 7345, 7346, 3, 2, 2, 2, 7346, 7347, 3, 2, 2, 2, 7347, 7349, 5, 928, 465, 2, 7348, 7350, 7, 831, 2, 2, 7349, 7348, 3, 2, 2, 2, 7349, 7350, 3, 2, 2, 2, 7350, 7373, 3, 2, 2, 2, 7351, 7353, 7, 87, 2, 2, 7352, 7354, 7, 525, 2, 2, 7353, 7352, 3, 2, 2, 2, 7353, 7354, 3, 2, 2, 2, 7354, 7356, 3, 2, 2, 2, 7355, 7357, 7, 80, 2, 2, 7356, 7355, 3, 2, 2, 2, 7356, 7357, 3, 2, 2, 2, 7357, 7358, 3, 2, 2, 2, 7358, 7360, 5, 928, 465, 2, 7359, 7361, 7, 831, 2, 2, 7360, 7359, 3, 2, 2, 2, 7360, 7361, 3, 2, 2, 2, 7361, 7373, 3, 2, 2, 2, 7362, 7373, 5, 716, 359, 2, 7363, 7373, 5, 722, 362, 2, 7364, 7366, 7, 231, 2, 2, 7365, 7367, 7, 525, 2, 2, 7366, 7365, 3, 2, 2, 2, 7366, 7367, 3, 2, 2, 2, 7367, 7368, 3, 2, 2, 2, 7368, 7370, 5, 928, 465, 2, 7369, 7371, 7, 831, 2, 2, 7370, 7369, 3, 2, 2, 2, 7370, 7371, 3, 2, 2, 2, 7371, 7373, 3, 2, 2, 2, 7372, 7343, 3, 2, 2, 2, 7372, 7351, 3, 2, 2, 2, 7372, 7362, 3, 2, 2, 2, 7372, 7363, 3, 2, 2, 2, 7372, 7364, 3, 2, 2, 2, 7373, 613, 3, 2, 2, 2, 7374, 7375, 7, 26, 2, 2, 7375, 7376, 7, 84, 2, 2, 7376, 7389, 5, 966, 484, 2, 7377, 7386, 7, 268, 2, 2, 7378, 7380, 7, 830, 2, 2, 7379, 7378, 3, 2, 2, 2, 7379, 7380, 3, 2, 2, 2, 7380, 7381, 3, 2, 2, 2, 7381, 7382, 9, 81, 2, 2, 7382, 7383, 7, 810, 2, 2, 7383, 7385, 7, 806, 2, 2, 7384, 7379, 3, 2, 2, 2, 7385, 7388, 3, 2, 2, 2, 7386, 7384, 3, 2, 2, 2, 7386, 7387, 3, 2, 2, 2, 7387, 7390, 3, 2, 2, 2, 7388, 7386, 3, 2, 2, 2, 7389, 7377, 3, 2, 2, 2, 7389, 7390, 3, 2, 2, 2, 7390, 7399, 3, 2, 2, 2, 7391, 7393, 7, 830, 2, 2, 7392, 7391, 3, 2, 2, 2, 7392, 7393, 3, 2, 2, 2, 7393, 7394, 3, 2, 2, 2, 7394, 7395, 9, 81, 2, 2, 7395, 7396, 7, 810, 2, 2, 7396, 7398, 7, 806, 2, 2, 7397, 7392, 3, 2, 2, 2, 7398, 7401, 3, 2, 2, 2, 7399, 7397, 3, 2, 2, 2, 7399, 7400, 3, 2, 2, 2, 7400, 7425, 3, 2, 2, 2, 7401, 7399, 3, 2, 2, 2, 7402, 7407, 7, 346, 2, 2, 7403, 7405, 7, 830, 2, 2, 7404, 7403, 3, 2, 2, 2, 7404, 7405, 3, 2, 2, 2, 7405, 7406, 3, 2, 2, 2, 7406, 7408, 5, 966, 484, 2, 7407, 7404, 3, 2, 2, 2, 7408, 7409, 3, 2, 2, 2, 7409, 7407, 3, 2, 2, 2, 7409, 7410, 3, 2, 2, 2, 7410, 7426, 3, 2, 2, 2, 7411, 7421, 7, 346, 2, 2, 7412, 7414, 7, 830, 2, 2, 7413, 7412, 3, 2, 2, 2, 7413, 7414, 3, 2, 2, 2, 7414, 7415, 3, 2, 2, 2, 7415, 7416, 9, 82, 2, 2, 7416, 7419, 7, 810, 2, 2, 7417, 7420, 7, 806, 2, 2, 7418, 7420, 5, 966, 484, 2, 7419, 7417, 3, 2, 2, 2, 7419, 7418, 3, 2, 2, 2, 7420, 7422, 3, 2, 2, 2, 7421, 7413, 3, 2, 2, 2, 7422, 7423, 3, 2, 2, 2, 7423, 7421, 3, 2, 2, 2, 7423, 7424, 3, 2, 2, 2, 7424, 7426, 3, 2, 2, 2, 7425, 7402, 3, 2, 2, 2, 7425, 7411, 3, 2, 2, 2, 7426, 7460, 3, 2, 2, 2, 7427, 7428, 7, 205, 2, 2, 7428, 7433, 7, 346, 2, 2, 7429, 7431, 7, 830, 2, 2, 7430, 7429, 3, 2, 2, 2, 7430, 7431, 3, 2, 2, 2, 7431, 7432, 3, 2, 2, 2, 7432, 7434, 5, 966, 484, 2, 7433, 7430, 3, 2, 2, 2, 7434, 7435, 3, 2, 2, 2, 7435, 7433, 3, 2, 2, 2, 7435, 7436, 3, 2, 2, 2, 7436, 7438, 3, 2, 2, 2, 7437, 7427, 3, 2, 2, 2, 7438, 7439, 3, 2, 2, 2, 7439, 7437, 3, 2, 2, 2, 7439, 7440, 3, 2, 2, 2, 7440, 7461, 3, 2, 2, 2, 7441, 7442, 7, 205, 2, 2, 7442, 7452, 7, 346, 2, 2, 7443, 7445, 7, 830, 2, 2, 7444, 7443, 3, 2, 2, 2, 7444, 7445, 3, 2, 2, 2, 7445, 7446, 3, 2, 2, 2, 7446, 7447, 9, 82, 2, 2, 7447, 7450, 7, 810, 2, 2, 7448, 7451, 7, 806, 2, 2, 7449, 7451, 5, 966, 484, 2, 7450, 7448, 3, 2, 2, 2, 7450, 7449, 3, 2, 2, 2, 7451, 7453, 3, 2, 2, 2, 7452, 7444, 3, 2, 2, 2, 7453, 7454, 3, 2, 2, 2, 7454, 7452, 3, 2, 2, 2, 7454, 7455, 3, 2, 2, 2, 7455, 7457, 3, 2, 2, 2, 7456, 7441, 3, 2, 2, 2, 7457, 7458, 3, 2, 2, 2, 7458, 7456, 3, 2, 2, 2, 7458, 7459, 3, 2, 2, 2, 7459, 7461, 3, 2, 2, 2, 7460, 7437, 3, 2, 2, 2, 7460, 7456, 3, 2, 2, 2, 7460, 7461, 3, 2, 2, 2, 7461, 7622, 3, 2, 2, 2, 7462, 7619, 7, 377, 2, 2, 7463, 7465, 7, 830, 2, 2, 7464, 7463, 3, 2, 2, 2, 7464, 7465, 3, 2, 2, 2, 7465, 7466, 3, 2, 2, 2, 7466, 7618, 7, 96, 2, 2, 7467, 7469, 7, 830, 2, 2, 7468, 7467, 3, 2, 2, 2, 7468, 7469, 3, 2, 2, 2, 7469, 7470, 3, 2, 2, 2, 7470, 7618, 7, 72, 2, 2, 7471, 7473, 7, 830, 2, 2, 7472, 7471, 3, 2, 2, 2, 7472, 7473, 3, 2, 2, 2, 7473, 7474, 3, 2, 2, 2, 7474, 7618, 9, 83, 2, 2, 7475, 7477, 7, 830, 2, 2, 7476, 7475, 3, 2, 2, 2, 7476, 7477, 3, 2, 2, 2, 7477, 7478, 3, 2, 2, 2, 7478, 7479, 7, 475, 2, 2, 7479, 7482, 7, 810, 2, 2, 7480, 7483, 7, 806, 2, 2, 7481, 7483, 5, 966, 484, 2, 7482, 7480, 3, 2, 2, 2, 7482, 7481, 3, 2, 2, 2, 7483, 7618, 3, 2, 2, 2, 7484, 7486, 7, 830, 2, 2, 7485, 7484, 3, 2, 2, 2, 7485, 7486, 3, 2, 2, 2, 7486, 7487, 3, 2, 2, 2, 7487, 7488, 7, 605, 2, 2, 7488, 7489, 7, 810, 2, 2, 7489, 7618, 5, 966, 484, 2, 7490, 7492, 7, 830, 2, 2, 7491, 7490, 3, 2, 2, 2, 7491, 7492, 3, 2, 2, 2, 7492, 7493, 3, 2, 2, 2, 7493, 7618, 7, 452, 2, 2, 7494, 7496, 7, 830, 2, 2, 7495, 7494, 3, 2, 2, 2, 7495, 7496, 3, 2, 2, 2, 7496, 7497, 3, 2, 2, 2, 7497, 7618, 7, 132, 2, 2, 7498, 7500, 7, 830, 2, 2, 7499, 7498, 3, 2, 2, 2, 7499, 7500, 3, 2, 2, 2, 7500, 7513, 3, 2, 2, 2, 7501, 7502, 7, 120, 2, 2, 7502, 7505, 7, 810, 2, 2, 7503, 7506, 7, 806, 2, 2, 7504, 7506, 5, 966, 484, 2, 7505, 7503, 3, 2, 2, 2, 7505, 7504, 3, 2, 2, 2, 7506, 7514, 3, 2, 2, 2, 7507, 7508, 7, 281, 2, 2, 7508, 7511, 7, 810, 2, 2, 7509, 7512, 7, 802, 2, 2, 7510, 7512, 5, 966, 484, 2, 7511, 7509, 3, 2, 2, 2, 7511, 7510, 3, 2, 2, 2, 7512, 7514, 3, 2, 2, 2, 7513, 7501, 3, 2, 2, 2, 7513, 7507, 3, 2, 2, 2, 7514, 7618, 3, 2, 2, 2, 7515, 7517, 7, 830, 2, 2, 7516, 7515, 3, 2, 2, 2, 7516, 7517, 3, 2, 2, 2, 7517, 7518, 3, 2, 2, 2, 7518, 7618, 9, 84, 2, 2, 7519, 7521, 7, 830, 2, 2, 7520, 7519, 3, 2, 2, 2, 7520, 7521, 3, 2, 2, 2, 7521, 7522, 3, 2, 2, 2, 7522, 7618, 9, 85, 2, 2, 7523, 7525, 7, 830, 2, 2, 7524, 7523, 3, 2, 2, 2, 7524, 7525, 3, 2, 2, 2, 7525, 7526, 3, 2, 2, 2, 7526, 7618, 9, 86, 2, 2, 7527, 7529, 7, 830, 2, 2, 7528, 7527, 3, 2, 2, 2, 7528, 7529, 3, 2, 2, 2, 7529, 7530, 3, 2, 2, 2, 7530, 7531, 7, 197, 2, 2, 7531, 7534, 7, 810, 2, 2, 7532, 7535, 7, 806, 2, 2, 7533, 7535, 5, 966, 484, 2, 7534, 7532, 3, 2, 2, 2, 7534, 7533, 3, 2, 2, 2, 7535, 7618, 3, 2, 2, 2, 7536, 7538, 7, 830, 2, 2, 7537, 7536, 3, 2, 2, 2, 7537, 7538, 3, 2, 2, 2, 7538, 7539, 3, 2, 2, 2, 7539, 7540, 7, 198, 2, 2, 7540, 7541, 7, 810, 2, 2, 7541, 7618, 7, 806, 2, 2, 7542, 7544, 7, 830, 2, 2, 7543, 7542, 3, 2, 2, 2, 7543, 7544, 3, 2, 2, 2, 7544, 7545, 3, 2, 2, 2, 7545, 7546, 7, 31, 2, 2, 7546, 7549, 7, 810, 2, 2, 7547, 7550, 7, 802, 2, 2, 7548, 7550, 5, 966, 484, 2, 7549, 7547, 3, 2, 2, 2, 7549, 7548, 3, 2, 2, 2, 7550, 7618, 3, 2, 2, 2, 7551, 7553, 7, 830, 2, 2, 7552, 7551, 3, 2, 2, 2, 7552, 7553, 3, 2, 2, 2, 7553, 7554, 3, 2, 2, 2, 7554, 7555, 7, 36, 2, 2, 7555, 7558, 7, 810, 2, 2, 7556, 7559, 7, 802, 2, 2, 7557, 7559, 5, 966, 484, 2, 7558, 7556, 3, 2, 2, 2, 7558, 7557, 3, 2, 2, 2, 7559, 7618, 3, 2, 2, 2, 7560, 7562, 7, 830, 2, 2, 7561, 7560, 3, 2, 2, 2, 7561, 7562, 3, 2, 2, 2, 7562, 7563, 3, 2, 2, 2, 7563, 7564, 7, 191, 2, 2, 7564, 7567, 7, 810, 2, 2, 7565, 7568, 7, 802, 2, 2, 7566, 7568, 5, 966, 484, 2, 7567, 7565, 3, 2, 2, 2, 7567, 7566, 3, 2, 2, 2, 7568, 7618, 3, 2, 2, 2, 7569, 7571, 7, 830, 2, 2, 7570, 7569, 3, 2, 2, 2, 7570, 7571, 3, 2, 2, 2, 7571, 7572, 3, 2, 2, 2, 7572, 7618, 9, 87, 2, 2, 7573, 7575, 7, 830, 2, 2, 7574, 7573, 3, 2, 2, 2, 7574, 7575, 3, 2, 2, 2, 7575, 7576, 3, 2, 2, 2, 7576, 7618, 9, 88, 2, 2, 7577, 7579, 7, 830, 2, 2, 7578, 7577, 3, 2, 2, 2, 7578, 7579, 3, 2, 2, 2, 7579, 7580, 3, 2, 2, 2, 7580, 7618, 7, 277, 2, 2, 7581, 7583, 7, 830, 2, 2, 7582, 7581, 3, 2, 2, 2, 7582, 7583, 3, 2, 2, 2, 7583, 7584, 3, 2, 2, 2, 7584, 7587, 7, 330, 2, 2, 7585, 7586, 7, 810, 2, 2, 7586, 7588, 7, 802, 2, 2, 7587, 7585, 3, 2, 2, 2, 7587, 7588, 3, 2, 2, 2, 7588, 7618, 3, 2, 2, 2, 7589, 7591, 7, 830, 2, 2, 7590, 7589, 3, 2, 2, 2, 7590, 7591, 3, 2, 2, 2, 7591, 7592, 3, 2, 2, 2, 7592, 7618, 9, 89, 2, 2, 7593, 7595, 7, 830, 2, 2, 7594, 7593, 3, 2, 2, 2, 7594, 7595, 3, 2, 2, 2, 7595, 7596, 3, 2, 2, 2, 7596, 7618, 9, 90, 2, 2, 7597, 7599, 7, 830, 2, 2, 7598, 7597, 3, 2, 2, 2, 7598, 7599, 3, 2, 2, 2, 7599, 7600, 3, 2, 2, 2, 7600, 7601, 7, 492, 2, 2, 7601, 7602, 7, 828, 2, 2, 7602, 7603, 7, 394, 2, 2, 7603, 7604, 7, 810, 2, 2, 7604, 7605, 9, 91, 2, 2, 7605, 7606, 7, 830, 2, 2, 7606, 7607, 7, 309, 2, 2, 7607, 7608, 7, 43, 2, 2, 7608, 7615, 7, 810, 2, 2, 7609, 7616, 5, 966, 484, 2, 7610, 7611, 7, 309, 2, 2, 7611, 7612, 7, 18, 2, 2, 7612, 7613, 7, 172, 2, 2, 7613, 7614, 7, 810, 2, 2, 7614, 7616, 5, 966, 484, 2, 7615, 7609, 3, 2, 2, 2, 7615, 7610, 3, 2, 2, 2, 7616, 7618, 3, 2, 2, 2, 7617, 7464, 3, 2, 2, 2, 7617, 7468, 3, 2, 2, 2, 7617, 7472, 3, 2, 2, 2, 7617, 7476, 3, 2, 2, 2, 7617, 7485, 3, 2, 2, 2, 7617, 7491, 3, 2, 2, 2, 7617, 7495, 3, 2, 2, 2, 7617, 7499, 3, 2, 2, 2, 7617, 7516, 3, 2, 2, 2, 7617, 7520, 3, 2, 2, 2, 7617, 7524, 3, 2, 2, 2, 7617, 7528, 3, 2, 2, 2, 7617, 7537, 3, 2, 2, 2, 7617, 7543, 3, 2, 2, 2, 7617, 7552, 3, 2, 2, 2, 7617, 7561, 3, 2, 2, 2, 7617, 7570, 3, 2, 2, 2, 7617, 7574, 3, 2, 2, 2, 7617, 7578, 3, 2, 2, 2, 7617, 7582, 3, 2, 2, 2, 7617, 7590, 3, 2, 2, 2, 7617, 7594, 3, 2, 2, 2, 7617, 7598, 3, 2, 2, 2, 7618, 7621, 3, 2, 2, 2, 7619, 7617, 3, 2, 2, 2, 7619, 7620, 3, 2, 2, 2, 7620, 7623, 3, 2, 2, 2, 7621, 7619, 3, 2, 2, 2, 7622, 7462, 3, 2, 2, 2, 7622, 7623, 3, 2, 2, 2, 7623, 615, 3, 2, 2, 2, 7624, 7625, 7, 26, 2, 2, 7625, 7626, 7, 187, 2, 2, 7626, 7650, 5, 966, 484, 2, 7627, 7632, 7, 346, 2, 2, 7628, 7630, 7, 830, 2, 2, 7629, 7628, 3, 2, 2, 2, 7629, 7630, 3, 2, 2, 2, 7630, 7631, 3, 2, 2, 2, 7631, 7633, 5, 966, 484, 2, 7632, 7629, 3, 2, 2, 2, 7633, 7634, 3, 2, 2, 2, 7634, 7632, 3, 2, 2, 2, 7634, 7635, 3, 2, 2, 2, 7635, 7651, 3, 2, 2, 2, 7636, 7646, 7, 346, 2, 2, 7637, 7639, 7, 830, 2, 2, 7638, 7637, 3, 2, 2, 2, 7638, 7639, 3, 2, 2, 2, 7639, 7640, 3, 2, 2, 2, 7640, 7641, 9, 82, 2, 2, 7641, 7644, 7, 810, 2, 2, 7642, 7645, 7, 806, 2, 2, 7643, 7645, 5, 966, 484, 2, 7644, 7642, 3, 2, 2, 2, 7644, 7643, 3, 2, 2, 2, 7645, 7647, 3, 2, 2, 2, 7646, 7638, 3, 2, 2, 2, 7647, 7648, 3, 2, 2, 2, 7648, 7646, 3, 2, 2, 2, 7648, 7649, 3, 2, 2, 2, 7649, 7651, 3, 2, 2, 2, 7650, 7627, 3, 2, 2, 2, 7650, 7636, 3, 2, 2, 2, 7651, 7685, 3, 2, 2, 2, 7652, 7653, 7, 205, 2, 2, 7653, 7658, 7, 346, 2, 2, 7654, 7656, 7, 830, 2, 2, 7655, 7654, 3, 2, 2, 2, 7655, 7656, 3, 2, 2, 2, 7656, 7657, 3, 2, 2, 2, 7657, 7659, 5, 966, 484, 2, 7658, 7655, 3, 2, 2, 2, 7659, 7660, 3, 2, 2, 2, 7660, 7658, 3, 2, 2, 2, 7660, 7661, 3, 2, 2, 2, 7661, 7663, 3, 2, 2, 2, 7662, 7652, 3, 2, 2, 2, 7663, 7664, 3, 2, 2, 2, 7664, 7662, 3, 2, 2, 2, 7664, 7665, 3, 2, 2, 2, 7665, 7686, 3, 2, 2, 2, 7666, 7667, 7, 205, 2, 2, 7667, 7677, 7, 346, 2, 2, 7668, 7670, 7, 830, 2, 2, 7669, 7668, 3, 2, 2, 2, 7669, 7670, 3, 2, 2, 2, 7670, 7671, 3, 2, 2, 2, 7671, 7672, 9, 82, 2, 2, 7672, 7675, 7, 810, 2, 2, 7673, 7676, 7, 806, 2, 2, 7674, 7676, 5, 966, 484, 2, 7675, 7673, 3, 2, 2, 2, 7675, 7674, 3, 2, 2, 2, 7676, 7678, 3, 2, 2, 2, 7677, 7669, 3, 2, 2, 2, 7678, 7679, 3, 2, 2, 2, 7679, 7677, 3, 2, 2, 2, 7679, 7680, 3, 2, 2, 2, 7680, 7682, 3, 2, 2, 2, 7681, 7666, 3, 2, 2, 2, 7682, 7683, 3, 2, 2, 2, 7683, 7681, 3, 2, 2, 2, 7683, 7684, 3, 2, 2, 2, 7684, 7686, 3, 2, 2, 2, 7685, 7662, 3, 2, 2, 2, 7685, 7681, 3, 2, 2, 2, 7685, 7686, 3, 2, 2, 2, 7686, 7860, 3, 2, 2, 2, 7687, 7857, 7, 377, 2, 2, 7688, 7690, 7, 830, 2, 2, 7689, 7688, 3, 2, 2, 2, 7689, 7690, 3, 2, 2, 2, 7690, 7691, 3, 2, 2, 2, 7691, 7856, 7, 96, 2, 2, 7692, 7694, 7, 830, 2, 2, 7693, 7692, 3, 2, 2, 2, 7693, 7694, 3, 2, 2, 2, 7694, 7695, 3, 2, 2, 2, 7695, 7856, 7, 72, 2, 2, 7696, 7698, 7, 830, 2, 2, 7697, 7696, 3, 2, 2, 2, 7697, 7698, 3, 2, 2, 2, 7698, 7699, 3, 2, 2, 2, 7699, 7856, 9, 83, 2, 2, 7700, 7702, 7, 830, 2, 2, 7701, 7700, 3, 2, 2, 2, 7701, 7702, 3, 2, 2, 2, 7702, 7703, 3, 2, 2, 2, 7703, 7704, 7, 475, 2, 2, 7704, 7707, 7, 810, 2, 2, 7705, 7708, 7, 806, 2, 2, 7706, 7708, 5, 966, 484, 2, 7707, 7705, 3, 2, 2, 2, 7707, 7706, 3, 2, 2, 2, 7708, 7856, 3, 2, 2, 2, 7709, 7711, 7, 830, 2, 2, 7710, 7709, 3, 2, 2, 2, 7710, 7711, 3, 2, 2, 2, 7711, 7712, 3, 2, 2, 2, 7712, 7713, 7, 605, 2, 2, 7713, 7714, 7, 810, 2, 2, 7714, 7856, 5, 966, 484, 2, 7715, 7717, 7, 830, 2, 2, 7716, 7715, 3, 2, 2, 2, 7716, 7717, 3, 2, 2, 2, 7717, 7718, 3, 2, 2, 2, 7718, 7856, 7, 452, 2, 2, 7719, 7721, 7, 830, 2, 2, 7720, 7719, 3, 2, 2, 2, 7720, 7721, 3, 2, 2, 2, 7721, 7722, 3, 2, 2, 2, 7722, 7856, 7, 132, 2, 2, 7723, 7725, 7, 830, 2, 2, 7724, 7723, 3, 2, 2, 2, 7724, 7725, 3, 2, 2, 2, 7725, 7738, 3, 2, 2, 2, 7726, 7727, 7, 120, 2, 2, 7727, 7730, 7, 810, 2, 2, 7728, 7731, 7, 806, 2, 2, 7729, 7731, 5, 966, 484, 2, 7730, 7728, 3, 2, 2, 2, 7730, 7729, 3, 2, 2, 2, 7731, 7739, 3, 2, 2, 2, 7732, 7733, 7, 281, 2, 2, 7733, 7736, 7, 810, 2, 2, 7734, 7737, 7, 802, 2, 2, 7735, 7737, 5, 966, 484, 2, 7736, 7734, 3, 2, 2, 2, 7736, 7735, 3, 2, 2, 2, 7737, 7739, 3, 2, 2, 2, 7738, 7726, 3, 2, 2, 2, 7738, 7732, 3, 2, 2, 2, 7739, 7856, 3, 2, 2, 2, 7740, 7742, 7, 830, 2, 2, 7741, 7740, 3, 2, 2, 2, 7741, 7742, 3, 2, 2, 2, 7742, 7743, 3, 2, 2, 2, 7743, 7856, 9, 84, 2, 2, 7744, 7746, 7, 830, 2, 2, 7745, 7744, 3, 2, 2, 2, 7745, 7746, 3, 2, 2, 2, 7746, 7747, 3, 2, 2, 2, 7747, 7856, 9, 85, 2, 2, 7748, 7750, 7, 830, 2, 2, 7749, 7748, 3, 2, 2, 2, 7749, 7750, 3, 2, 2, 2, 7750, 7751, 3, 2, 2, 2, 7751, 7856, 9, 86, 2, 2, 7752, 7754, 7, 830, 2, 2, 7753, 7752, 3, 2, 2, 2, 7753, 7754, 3, 2, 2, 2, 7754, 7755, 3, 2, 2, 2, 7755, 7756, 7, 197, 2, 2, 7756, 7759, 7, 810, 2, 2, 7757, 7760, 7, 806, 2, 2, 7758, 7760, 5, 966, 484, 2, 7759, 7757, 3, 2, 2, 2, 7759, 7758, 3, 2, 2, 2, 7760, 7856, 3, 2, 2, 2, 7761, 7763, 7, 830, 2, 2, 7762, 7761, 3, 2, 2, 2, 7762, 7763, 3, 2, 2, 2, 7763, 7764, 3, 2, 2, 2, 7764, 7765, 7, 198, 2, 2, 7765, 7766, 7, 810, 2, 2, 7766, 7856, 7, 806, 2, 2, 7767, 7769, 7, 830, 2, 2, 7768, 7767, 3, 2, 2, 2, 7768, 7769, 3, 2, 2, 2, 7769, 7770, 3, 2, 2, 2, 7770, 7771, 7, 31, 2, 2, 7771, 7774, 7, 810, 2, 2, 7772, 7775, 7, 802, 2, 2, 7773, 7775, 5, 966, 484, 2, 7774, 7772, 3, 2, 2, 2, 7774, 7773, 3, 2, 2, 2, 7775, 7856, 3, 2, 2, 2, 7776, 7778, 7, 830, 2, 2, 7777, 7776, 3, 2, 2, 2, 7777, 7778, 3, 2, 2, 2, 7778, 7779, 3, 2, 2, 2, 7779, 7780, 7, 36, 2, 2, 7780, 7783, 7, 810, 2, 2, 7781, 7784, 7, 802, 2, 2, 7782, 7784, 5, 966, 484, 2, 7783, 7781, 3, 2, 2, 2, 7783, 7782, 3, 2, 2, 2, 7784, 7856, 3, 2, 2, 2, 7785, 7787, 7, 830, 2, 2, 7786, 7785, 3, 2, 2, 2, 7786, 7787, 3, 2, 2, 2, 7787, 7788, 3, 2, 2, 2, 7788, 7789, 7, 191, 2, 2, 7789, 7792, 7, 810, 2, 2, 7790, 7793, 7, 802, 2, 2, 7791, 7793, 5, 966, 484, 2, 7792, 7790, 3, 2, 2, 2, 7792, 7791, 3, 2, 2, 2, 7793, 7856, 3, 2, 2, 2, 7794, 7796, 7, 830, 2, 2, 7795, 7794, 3, 2, 2, 2, 7795, 7796, 3, 2, 2, 2, 7796, 7797, 3, 2, 2, 2, 7797, 7856, 9, 87, 2, 2, 7798, 7800, 7, 830, 2, 2, 7799, 7798, 3, 2, 2, 2, 7799, 7800, 3, 2, 2, 2, 7800, 7801, 3, 2, 2, 2, 7801, 7856, 9, 88, 2, 2, 7802, 7804, 7, 830, 2, 2, 7803, 7802, 3, 2, 2, 2, 7803, 7804, 3, 2, 2, 2, 7804, 7805, 3, 2, 2, 2, 7805, 7856, 7, 277, 2, 2, 7806, 7808, 7, 830, 2, 2, 7807, 7806, 3, 2, 2, 2, 7807, 7808, 3, 2, 2, 2, 7808, 7809, 3, 2, 2, 2, 7809, 7812, 7, 330, 2, 2, 7810, 7811, 7, 810, 2, 2, 7811, 7813, 7, 802, 2, 2, 7812, 7810, 3, 2, 2, 2, 7812, 7813, 3, 2, 2, 2, 7813, 7856, 3, 2, 2, 2, 7814, 7816, 7, 830, 2, 2, 7815, 7814, 3, 2, 2, 2, 7815, 7816, 3, 2, 2, 2, 7816, 7817, 3, 2, 2, 2, 7817, 7856, 9, 89, 2, 2, 7818, 7820, 7, 830, 2, 2, 7819, 7818, 3, 2, 2, 2, 7819, 7820, 3, 2, 2, 2, 7820, 7821, 3, 2, 2, 2, 7821, 7856, 9, 90, 2, 2, 7822, 7824, 7, 830, 2, 2, 7823, 7822, 3, 2, 2, 2, 7823, 7824, 3, 2, 2, 2, 7824, 7829, 3, 2, 2, 2, 7825, 7830, 7, 619, 2, 2, 7826, 7827, 7, 732, 2, 2, 7827, 7828, 7, 810, 2, 2, 7828, 7830, 7, 806, 2, 2, 7829, 7825, 3, 2, 2, 2, 7829, 7826, 3, 2, 2, 2, 7830, 7856, 3, 2, 2, 2, 7831, 7833, 7, 830, 2, 2, 7832, 7831, 3, 2, 2, 2, 7832, 7833, 3, 2, 2, 2, 7833, 7834, 3, 2, 2, 2, 7834, 7856, 7, 612, 2, 2, 7835, 7837, 7, 830, 2, 2, 7836, 7835, 3, 2, 2, 2, 7836, 7837, 3, 2, 2, 2, 7837, 7838, 3, 2, 2, 2, 7838, 7839, 7, 492, 2, 2, 7839, 7840, 7, 828, 2, 2, 7840, 7841, 7, 394, 2, 2, 7841, 7842, 7, 810, 2, 2, 7842, 7843, 9, 91, 2, 2, 7843, 7844, 7, 830, 2, 2, 7844, 7845, 7, 309, 2, 2, 7845, 7846, 7, 43, 2, 2, 7846, 7853, 7, 810, 2, 2, 7847, 7854, 5, 966, 484, 2, 7848, 7849, 7, 309, 2, 2, 7849, 7850, 7, 18, 2, 2, 7850, 7851, 7, 172, 2, 2, 7851, 7852, 7, 810, 2, 2, 7852, 7854, 5, 966, 484, 2, 7853, 7847, 3, 2, 2, 2, 7853, 7848, 3, 2, 2, 2, 7854, 7856, 3, 2, 2, 2, 7855, 7689, 3, 2, 2, 2, 7855, 7693, 3, 2, 2, 2, 7855, 7697, 3, 2, 2, 2, 7855, 7701, 3, 2, 2, 2, 7855, 7710, 3, 2, 2, 2, 7855, 7716, 3, 2, 2, 2, 7855, 7720, 3, 2, 2, 2, 7855, 7724, 3, 2, 2, 2, 7855, 7741, 3, 2, 2, 2, 7855, 7745, 3, 2, 2, 2, 7855, 7749, 3, 2, 2, 2, 7855, 7753, 3, 2, 2, 2, 7855, 7762, 3, 2, 2, 2, 7855, 7768, 3, 2, 2, 2, 7855, 7777, 3, 2, 2, 2, 7855, 7786, 3, 2, 2, 2, 7855, 7795, 3, 2, 2, 2, 7855, 7799, 3, 2, 2, 2, 7855, 7803, 3, 2, 2, 2, 7855, 7807, 3, 2, 2, 2, 7855, 7815, 3, 2, 2, 2, 7855, 7819, 3, 2, 2, 2, 7855, 7823, 3, 2, 2, 2, 7855, 7832, 3, 2, 2, 2, 7855, 7836, 3, 2, 2, 2, 7856, 7859, 3, 2, 2, 2, 7857, 7855, 3, 2, 2, 2, 7857, 7858, 3, 2, 2, 2, 7858, 7861, 3, 2, 2, 2, 7859, 7857, 3, 2, 2, 2, 7860, 7687, 3, 2, 2, 2, 7860, 7861, 3, 2, 2, 2, 7861, 617, 3, 2, 2, 2, 7862, 7863, 7, 26, 2, 2, 7863, 7864, 7, 43, 2, 2, 7864, 7865, 5, 966, 484, 2, 7865, 7866, 7, 346, 2, 2, 7866, 7867, 7, 129, 2, 2, 7867, 7868, 7, 810, 2, 2, 7868, 7900, 7, 806, 2, 2, 7869, 7870, 7, 377, 2, 2, 7870, 7871, 7, 652, 2, 2, 7871, 7872, 7, 172, 2, 2, 7872, 7895, 7, 828, 2, 2, 7873, 7875, 7, 830, 2, 2, 7874, 7873, 3, 2, 2, 2, 7874, 7875, 3, 2, 2, 2, 7875, 7876, 3, 2, 2, 2, 7876, 7877, 7, 129, 2, 2, 7877, 7878, 7, 810, 2, 2, 7878, 7896, 7, 806, 2, 2, 7879, 7881, 7, 830, 2, 2, 7880, 7879, 3, 2, 2, 2, 7880, 7881, 3, 2, 2, 2, 7881, 7882, 3, 2, 2, 2, 7882, 7883, 7, 492, 2, 2, 7883, 7884, 7, 38, 2, 2, 7884, 7885, 7, 244, 2, 2, 7885, 7886, 7, 810, 2, 2, 7886, 7896, 7, 806, 2, 2, 7887, 7889, 7, 830, 2, 2, 7888, 7887, 3, 2, 2, 2, 7888, 7889, 3, 2, 2, 2, 7889, 7890, 3, 2, 2, 2, 7890, 7891, 7, 465, 2, 2, 7891, 7892, 7, 38, 2, 2, 7892, 7893, 7, 244, 2, 2, 7893, 7894, 7, 810, 2, 2, 7894, 7896, 7, 806, 2, 2, 7895, 7874, 3, 2, 2, 2, 7895, 7880, 3, 2, 2, 2, 7895, 7888, 3, 2, 2, 2, 7896, 7897, 3, 2, 2, 2, 7897, 7895, 3, 2, 2, 2, 7897, 7898, 3, 2, 2, 2, 7898, 7899, 3, 2, 2, 2, 7899, 7901, 7, 829, 2, 2, 7900, 7869, 3, 2, 2, 2, 7900, 7901, 3, 2, 2, 2, 7901, 619, 3, 2, 2, 2, 7902, 7903, 7, 26, 2, 2, 7903, 7904, 7, 189, 2, 2, 7904, 7905, 7, 172, 2, 2, 7905, 7906, 7, 346, 2, 2, 7906, 7907, 7, 129, 2, 2, 7907, 7908, 7, 810, 2, 2, 7908, 7909, 7, 806, 2, 2, 7909, 7910, 7, 492, 2, 2, 7910, 7911, 7, 38, 2, 2, 7911, 7912, 7, 244, 2, 2, 7912, 7913, 7, 810, 2, 2, 7913, 7914, 7, 806, 2, 2, 7914, 621, 3, 2, 2, 2, 7915, 7916, 7, 26, 2, 2, 7916, 7917, 7, 310, 2, 2, 7917, 7918, 7, 189, 2, 2, 7918, 7919, 7, 172, 2, 2, 7919, 7920, 7, 346, 2, 2, 7920, 7921, 7, 129, 2, 2, 7921, 7922, 7, 810, 2, 2, 7922, 7923, 7, 806, 2, 2, 7923, 7924, 7, 492, 2, 2, 7924, 7925, 7, 38, 2, 2, 7925, 7926, 7, 244, 2, 2, 7926, 7927, 7, 810, 2, 2, 7927, 7928, 7, 806, 2, 2, 7928, 623, 3, 2, 2, 2, 7929, 7933, 7, 175, 2, 2, 7930, 7934, 5, 626, 314, 2, 7931, 7934, 5, 628, 315, 2, 7932, 7934, 5, 630, 316, 2, 7933, 7930, 3, 2, 2, 2, 7933, 7931, 3, 2, 2, 2, 7933, 7932, 3, 2, 2, 2, 7934, 625, 3, 2, 2, 2, 7935, 7938, 9, 24, 2, 2, 7936, 7938, 7, 775, 2, 2, 7937, 7935, 3, 2, 2, 2, 7937, 7936, 3, 2, 2, 2, 7938, 7941, 3, 2, 2, 2, 7939, 7940, 7, 377, 2, 2, 7940, 7942, 7, 737, 2, 2, 7941, 7939, 3, 2, 2, 2, 7941, 7942, 3, 2, 2, 2, 7942, 627, 3, 2, 2, 2, 7943, 7944, 7, 659, 2, 2, 7944, 7945, 7, 221, 2, 2, 7945, 7948, 7, 744, 2, 2, 7946, 7949, 7, 6, 2, 2, 7947, 7949, 7, 802, 2, 2, 7948, 7946, 3, 2, 2, 2, 7948, 7947, 3, 2, 2, 2, 7949, 629, 3, 2, 2, 2, 7950, 7951, 7, 330, 2, 2, 7951, 7952, 7, 550, 2, 2, 7952, 7953, 7, 802, 2, 2, 7953, 631, 3, 2, 2, 2, 7954, 7955, 7, 118, 2, 2, 7955, 7956, 5, 634, 318, 2, 7956, 633, 3, 2, 2, 2, 7957, 7958, 7, 801, 2, 2, 7958, 7960, 7, 810, 2, 2, 7959, 7957, 3, 2, 2, 2, 7959, 7960, 3, 2, 2, 2, 7960, 7963, 3, 2, 2, 2, 7961, 7964, 5, 918, 460, 2, 7962, 7964, 5, 728, 365, 2, 7963, 7961, 3, 2, 2, 2, 7963, 7962, 3, 2, 2, 2, 7964, 7973, 3, 2, 2, 2, 7965, 7970, 5, 636, 319, 2, 7966, 7967, 7, 830, 2, 2, 7967, 7969, 5, 636, 319, 2, 7968, 7966, 3, 2, 2, 2, 7969, 7972, 3, 2, 2, 2, 7970, 7968, 3, 2, 2, 2, 7970, 7971, 3, 2, 2, 2, 7971, 7974, 3, 2, 2, 2, 7972, 7970, 3, 2, 2, 2, 7973, 7965, 3, 2, 2, 2, 7973, 7974, 3, 2, 2, 2, 7974, 7976, 3, 2, 2, 2, 7975, 7977, 7, 831, 2, 2, 7976, 7975, 3, 2, 2, 2, 7976, 7977, 3, 2, 2, 2, 7977, 8000, 3, 2, 2, 2, 7978, 7979, 7, 828, 2, 2, 7979, 7984, 5, 638, 320, 2, 7980, 7981, 7, 836, 2, 2, 7981, 7983, 5, 638, 320, 2, 7982, 7980, 3, 2, 2, 2, 7983, 7986, 3, 2, 2, 2, 7984, 7982, 3, 2, 2, 2, 7984, 7985, 3, 2, 2, 2, 7985, 7987, 3, 2, 2, 2, 7986, 7984, 3, 2, 2, 2, 7987, 7994, 7, 829, 2, 2, 7988, 7990, 7, 16, 2, 2, 7989, 7988, 3, 2, 2, 2, 7989, 7990, 3, 2, 2, 2, 7990, 7991, 3, 2, 2, 2, 7991, 7992, 9, 92, 2, 2, 7992, 7993, 7, 810, 2, 2, 7993, 7995, 7, 806, 2, 2, 7994, 7989, 3, 2, 2, 2, 7994, 7995, 3, 2, 2, 2, 7995, 7997, 3, 2, 2, 2, 7996, 7998, 7, 831, 2, 2, 7997, 7996, 3, 2, 2, 2, 7997, 7998, 3, 2, 2, 2, 7998, 8000, 3, 2, 2, 2, 7999, 7959, 3, 2, 2, 2, 7999, 7978, 3, 2, 2, 2, 8000, 635, 3, 2, 2, 2, 8001, 8002, 7, 801, 2, 2, 8002, 8004, 7, 810, 2, 2, 8003, 8001, 3, 2, 2, 2, 8003, 8004, 3, 2, 2, 2, 8004, 8014, 3, 2, 2, 2, 8005, 8008, 5, 726, 364, 2, 8006, 8008, 5, 966, 484, 2, 8007, 8005, 3, 2, 2, 2, 8007, 8006, 3, 2, 2, 2, 8008, 8010, 3, 2, 2, 2, 8009, 8011, 9, 93, 2, 2, 8010, 8009, 3, 2, 2, 2, 8010, 8011, 3, 2, 2, 2, 8011, 8015, 3, 2, 2, 2, 8012, 8015, 7, 89, 2, 2, 8013, 8015, 7, 223, 2, 2, 8014, 8007, 3, 2, 2, 2, 8014, 8012, 3, 2, 2, 2, 8014, 8013, 3, 2, 2, 2, 8015, 637, 3, 2, 2, 2, 8016, 8017, 9, 3, 2, 2, 8017, 639, 3, 2, 2, 2, 8018, 8020, 5, 686, 344, 2, 8019, 8021, 7, 831, 2, 2, 8020, 8019, 3, 2, 2, 2, 8020, 8021, 3, 2, 2, 2, 8021, 8078, 3, 2, 2, 2, 8022, 8034, 7, 145, 2, 2, 8023, 8025, 7, 6, 2, 2, 8024, 8026, 7, 654, 2, 2, 8025, 8024, 3, 2, 2, 2, 8025, 8026, 3, 2, 2, 2, 8026, 8035, 3, 2, 2, 2, 8027, 8032, 5, 666, 334, 2, 8028, 8029, 7, 828, 2, 2, 8029, 8030, 5, 926, 464, 2, 8030, 8031, 7, 829, 2, 2, 8031, 8033, 3, 2, 2, 2, 8032, 8028, 3, 2, 2, 2, 8032, 8033, 3, 2, 2, 2, 8033, 8035, 3, 2, 2, 2, 8034, 8023, 3, 2, 2, 2, 8034, 8027, 3, 2, 2, 2, 8035, 8038, 3, 2, 2, 2, 8036, 8037, 7, 229, 2, 2, 8037, 8039, 5, 910, 456, 2, 8038, 8036, 3, 2, 2, 2, 8038, 8039, 3, 2, 2, 2, 8039, 8040, 3, 2, 2, 2, 8040, 8041, 7, 346, 2, 2, 8041, 8046, 5, 966, 484, 2, 8042, 8043, 7, 830, 2, 2, 8043, 8045, 5, 966, 484, 2, 8044, 8042, 3, 2, 2, 2, 8045, 8048, 3, 2, 2, 2, 8046, 8044, 3, 2, 2, 2, 8046, 8047, 3, 2, 2, 2, 8047, 8052, 3, 2, 2, 2, 8048, 8046, 3, 2, 2, 2, 8049, 8050, 7, 377, 2, 2, 8050, 8051, 7, 145, 2, 2, 8051, 8053, 7, 236, 2, 2, 8052, 8049, 3, 2, 2, 2, 8052, 8053, 3, 2, 2, 2, 8053, 8056, 3, 2, 2, 2, 8054, 8055, 7, 16, 2, 2, 8055, 8057, 5, 966, 484, 2, 8056, 8054, 3, 2, 2, 2, 8056, 8057, 3, 2, 2, 2, 8057, 8059, 3, 2, 2, 2, 8058, 8060, 7, 831, 2, 2, 8059, 8058, 3, 2, 2, 2, 8059, 8060, 3, 2, 2, 2, 8060, 8078, 3, 2, 2, 2, 8061, 8068, 7, 284, 2, 2, 8062, 8063, 7, 828, 2, 2, 8063, 8064, 7, 377, 2, 2, 8064, 8065, 7, 445, 2, 2, 8065, 8066, 7, 810, 2, 2, 8066, 8067, 7, 801, 2, 2, 8067, 8069, 7, 829, 2, 2, 8068, 8062, 3, 2, 2, 2, 8068, 8069, 3, 2, 2, 2, 8069, 8071, 3, 2, 2, 2, 8070, 8072, 7, 831, 2, 2, 8071, 8070, 3, 2, 2, 2, 8071, 8072, 3, 2, 2, 2, 8072, 8078, 3, 2, 2, 2, 8073, 8078, 5, 652, 327, 2, 8074, 8078, 5, 654, 328, 2, 8075, 8078, 5, 656, 329, 2, 8076, 8078, 5, 642, 322, 2, 8077, 8018, 3, 2, 2, 2, 8077, 8022, 3, 2, 2, 2, 8077, 8061, 3, 2, 2, 2, 8077, 8073, 3, 2, 2, 2, 8077, 8074, 3, 2, 2, 2, 8077, 8075, 3, 2, 2, 2, 8077, 8076, 3, 2, 2, 2, 8078, 641, 3, 2, 2, 2, 8079, 8080, 7, 73, 2, 2, 8080, 8081, 7, 43, 2, 2, 8081, 8084, 5, 966, 484, 2, 8082, 8083, 7, 20, 2, 2, 8083, 8085, 5, 966, 484, 2, 8084, 8082, 3, 2, 2, 2, 8084, 8085, 3, 2, 2, 2, 8085, 8089, 3, 2, 2, 2, 8086, 8087, 7, 139, 2, 2, 8087, 8090, 5, 644, 323, 2, 8088, 8090, 5, 648, 325, 2, 8089, 8086, 3, 2, 2, 2, 8089, 8088, 3, 2, 2, 2, 8090, 8097, 3, 2, 2, 2, 8091, 8092, 7, 386, 2, 2, 8092, 8093, 7, 133, 2, 2, 8093, 8094, 7, 28, 2, 2, 8094, 8095, 7, 478, 2, 2, 8095, 8096, 7, 810, 2, 2, 8096, 8098, 9, 9, 2, 2, 8097, 8091, 3, 2, 2, 2, 8097, 8098, 3, 2, 2, 2, 8098, 643, 3, 2, 2, 2, 8099, 8100, 7, 405, 2, 2, 8100, 8117, 5, 966, 484, 2, 8101, 8103, 7, 496, 2, 2, 8102, 8101, 3, 2, 2, 2, 8102, 8103, 3, 2, 2, 2, 8103, 8104, 3, 2, 2, 2, 8104, 8105, 7, 129, 2, 2, 8105, 8106, 7, 810, 2, 2, 8106, 8114, 7, 806, 2, 2, 8107, 8108, 7, 377, 2, 2, 8108, 8109, 7, 652, 2, 2, 8109, 8110, 7, 172, 2, 2, 8110, 8111, 7, 828, 2, 2, 8111, 8112, 5, 646, 324, 2, 8112, 8113, 7, 829, 2, 2, 8113, 8115, 3, 2, 2, 2, 8114, 8107, 3, 2, 2, 2, 8114, 8115, 3, 2, 2, 2, 8115, 8117, 3, 2, 2, 2, 8116, 8099, 3, 2, 2, 2, 8116, 8102, 3, 2, 2, 2, 8117, 645, 3, 2, 2, 2, 8118, 8119, 9, 94, 2, 2, 8119, 8120, 7, 810, 2, 2, 8120, 8127, 7, 806, 2, 2, 8121, 8122, 7, 830, 2, 2, 8122, 8123, 9, 95, 2, 2, 8123, 8124, 7, 38, 2, 2, 8124, 8125, 7, 244, 2, 2, 8125, 8126, 7, 810, 2, 2, 8126, 8128, 7, 806, 2, 2, 8127, 8121, 3, 2, 2, 2, 8127, 8128, 3, 2, 2, 2, 8128, 647, 3, 2, 2, 2, 8129, 8130, 7, 492, 2, 2, 8130, 8131, 7, 38, 2, 2, 8131, 8132, 7, 244, 2, 2, 8132, 8133, 7, 810, 2, 2, 8133, 8135, 7, 806, 2, 2, 8134, 8129, 3, 2, 2, 2, 8134, 8135, 3, 2, 2, 2, 8135, 8136, 3, 2, 2, 2, 8136, 8137, 7, 377, 2, 2, 8137, 8138, 7, 743, 2, 2, 8138, 8139, 7, 810, 2, 2, 8139, 8144, 7, 806, 2, 2, 8140, 8141, 7, 830, 2, 2, 8141, 8143, 5, 650, 326, 2, 8142, 8140, 3, 2, 2, 2, 8143, 8146, 3, 2, 2, 2, 8144, 8142, 3, 2, 2, 2, 8144, 8145, 3, 2, 2, 2, 8145, 649, 3, 2, 2, 2, 8146, 8144, 3, 2, 2, 2, 8147, 8148, 9, 96, 2, 2, 8148, 8149, 7, 810, 2, 2, 8149, 8150, 7, 806, 2, 2, 8150, 651, 3, 2, 2, 2, 8151, 8152, 7, 231, 2, 2, 8152, 8153, 7, 747, 2, 2, 8153, 8154, 7, 172, 2, 2, 8154, 8155, 5, 966, 484, 2, 8155, 8156, 7, 465, 2, 2, 8156, 8157, 7, 38, 2, 2, 8157, 8158, 5, 664, 333, 2, 8158, 8168, 3, 2, 2, 2, 8159, 8160, 7, 231, 2, 2, 8160, 8161, 7, 189, 2, 2, 8161, 8162, 7, 172, 2, 2, 8162, 8163, 7, 465, 2, 2, 8163, 8164, 7, 38, 2, 2, 8164, 8165, 7, 244, 2, 2, 8165, 8166, 7, 810, 2, 2, 8166, 8168, 7, 806, 2, 2, 8167, 8151, 3, 2, 2, 2, 8167, 8159, 3, 2, 2, 2, 8168, 653, 3, 2, 2, 2, 8169, 8170, 7, 51, 2, 2, 8170, 8171, 7, 747, 2, 2, 8171, 8172, 7, 172, 2, 2, 8172, 8181, 5, 966, 484, 2, 8173, 8174, 7, 51, 2, 2, 8174, 8175, 7, 6, 2, 2, 8175, 8176, 7, 747, 2, 2, 8176, 8181, 7, 556, 2, 2, 8177, 8178, 7, 51, 2, 2, 8178, 8179, 7, 189, 2, 2, 8179, 8181, 7, 172, 2, 2, 8180, 8169, 3, 2, 2, 2, 8180, 8173, 3, 2, 2, 2, 8180, 8177, 3, 2, 2, 2, 8181, 655, 3, 2, 2, 2, 8182, 8183, 7, 73, 2, 2, 8183, 8184, 7, 189, 2, 2, 8184, 8185, 7, 172, 2, 2, 8185, 8186, 7, 492, 2, 2, 8186, 8187, 7, 38, 2, 2, 8187, 8188, 7, 244, 2, 2, 8188, 8189, 7, 810, 2, 2, 8189, 8218, 7, 806, 2, 2, 8190, 8191, 7, 73, 2, 2, 8191, 8192, 7, 747, 2, 2, 8192, 8193, 7, 172, 2, 2, 8193, 8196, 5, 966, 484, 2, 8194, 8195, 7, 20, 2, 2, 8195, 8197, 5, 966, 484, 2, 8196, 8194, 3, 2, 2, 2, 8196, 8197, 3, 2, 2, 2, 8197, 8201, 3, 2, 2, 2, 8198, 8199, 7, 139, 2, 2, 8199, 8200, 7, 657, 2, 2, 8200, 8202, 5, 966, 484, 2, 8201, 8198, 3, 2, 2, 2, 8201, 8202, 3, 2, 2, 2, 8202, 8203, 3, 2, 2, 2, 8203, 8213, 7, 377, 2, 2, 8204, 8209, 5, 658, 330, 2, 8205, 8206, 7, 492, 2, 2, 8206, 8207, 7, 38, 2, 2, 8207, 8209, 5, 662, 332, 2, 8208, 8204, 3, 2, 2, 2, 8208, 8205, 3, 2, 2, 2, 8209, 8211, 3, 2, 2, 2, 8210, 8212, 7, 830, 2, 2, 8211, 8210, 3, 2, 2, 2, 8211, 8212, 3, 2, 2, 2, 8212, 8214, 3, 2, 2, 2, 8213, 8208, 3, 2, 2, 2, 8214, 8215, 3, 2, 2, 2, 8215, 8213, 3, 2, 2, 2, 8215, 8216, 3, 2, 2, 2, 8216, 8218, 3, 2, 2, 2, 8217, 8182, 3, 2, 2, 2, 8217, 8190, 3, 2, 2, 2, 8218, 657, 3, 2, 2, 2, 8219, 8220, 7, 555, 2, 2, 8220, 8221, 7, 810, 2, 2, 8221, 8235, 7, 806, 2, 2, 8222, 8223, 7, 394, 2, 2, 8223, 8224, 7, 810, 2, 2, 8224, 8235, 5, 660, 331, 2, 8225, 8226, 7, 536, 2, 2, 8226, 8227, 7, 810, 2, 2, 8227, 8235, 7, 806, 2, 2, 8228, 8229, 7, 658, 2, 2, 8229, 8230, 7, 810, 2, 2, 8230, 8235, 7, 806, 2, 2, 8231, 8232, 7, 451, 2, 2, 8232, 8233, 7, 810, 2, 2, 8233, 8235, 9, 12, 2, 2, 8234, 8219, 3, 2, 2, 2, 8234, 8222, 3, 2, 2, 2, 8234, 8225, 3, 2, 2, 2, 8234, 8228, 3, 2, 2, 2, 8234, 8231, 3, 2, 2, 2, 8235, 659, 3, 2, 2, 2, 8236, 8237, 9, 51, 2, 2, 8237, 661, 3, 2, 2, 2, 8238, 8239, 7, 43, 2, 2, 8239, 8250, 5, 966, 484, 2, 8240, 8241, 7, 18, 2, 2, 8241, 8242, 7, 172, 2, 2, 8242, 8250, 5, 966, 484, 2, 8243, 8244, 7, 747, 2, 2, 8244, 8245, 7, 172, 2, 2, 8245, 8250, 5, 966, 484, 2, 8246, 8247, 7, 244, 2, 2, 8247, 8248, 7, 810, 2, 2, 8248, 8250, 7, 806, 2, 2, 8249, 8238, 3, 2, 2, 2, 8249, 8240, 3, 2, 2, 2, 8249, 8243, 3, 2, 2, 2, 8249, 8246, 3, 2, 2, 2, 8250, 663, 3, 2, 2, 2, 8251, 8252, 7, 43, 2, 2, 8252, 8257, 5, 966, 484, 2, 8253, 8254, 7, 377, 2, 2, 8254, 8255, 7, 244, 2, 2, 8255, 8256, 7, 810, 2, 2, 8256, 8258, 7, 806, 2, 2, 8257, 8253, 3, 2, 2, 2, 8257, 8258, 3, 2, 2, 2, 8258, 8275, 3, 2, 2, 2, 8259, 8260, 7, 18, 2, 2, 8260, 8261, 7, 172, 2, 2, 8261, 8266, 5, 966, 484, 2, 8262, 8263, 7, 377, 2, 2, 8263, 8264, 7, 244, 2, 2, 8264, 8265, 7, 810, 2, 2, 8265, 8267, 7, 806, 2, 2, 8266, 8262, 3, 2, 2, 2, 8266, 8267, 3, 2, 2, 2, 8267, 8275, 3, 2, 2, 2, 8268, 8269, 7, 747, 2, 2, 8269, 8270, 7, 172, 2, 2, 8270, 8275, 5, 966, 484, 2, 8271, 8272, 7, 244, 2, 2, 8272, 8273, 7, 810, 2, 2, 8273, 8275, 7, 806, 2, 2, 8274, 8251, 3, 2, 2, 2, 8274, 8259, 3, 2, 2, 2, 8274, 8268, 3, 2, 2, 2, 8274, 8271, 3, 2, 2, 2, 8275, 665, 3, 2, 2, 2, 8276, 8303, 7, 118, 2, 2, 8277, 8278, 7, 370, 2, 2, 8278, 8303, 5, 966, 484, 2, 8279, 8280, 7, 751, 2, 2, 8280, 8303, 5, 966, 484, 2, 8281, 8283, 7, 444, 2, 2, 8282, 8284, 5, 966, 484, 2, 8283, 8282, 3, 2, 2, 2, 8283, 8284, 3, 2, 2, 2, 8284, 8303, 3, 2, 2, 2, 8285, 8286, 7, 73, 2, 2, 8286, 8303, 9, 97, 2, 2, 8287, 8303, 7, 724, 2, 2, 8288, 8303, 7, 539, 2, 2, 8289, 8303, 7, 305, 2, 2, 8290, 8303, 7, 270, 2, 2, 8291, 8303, 7, 162, 2, 2, 8292, 8300, 7, 10, 2, 2, 8293, 8295, 7, 13, 2, 2, 8294, 8293, 3, 2, 2, 2, 8294, 8295, 3, 2, 2, 2, 8295, 8298, 3, 2, 2, 2, 8296, 8299, 5, 966, 484, 2, 8297, 8299, 7, 84, 2, 2, 8298, 8296, 3, 2, 2, 2, 8298, 8297, 3, 2, 2, 2, 8299, 8301, 3, 2, 2, 2, 8300, 8294, 3, 2, 2, 2, 8300, 8301, 3, 2, 2, 2, 8301, 8303, 3, 2, 2, 2, 8302, 8276, 3, 2, 2, 2, 8302, 8277, 3, 2, 2, 2, 8302, 8279, 3, 2, 2, 2, 8302, 8281, 3, 2, 2, 2, 8302, 8285, 3, 2, 2, 2, 8302, 8287, 3, 2, 2, 2, 8302, 8288, 3, 2, 2, 2, 8302, 8289, 3, 2, 2, 2, 8302, 8290, 3, 2, 2, 2, 8302, 8291, 3, 2, 2, 2, 8302, 8292, 3, 2, 2, 2, 8303, 667, 3, 2, 2, 2, 8304, 8305, 7, 315, 2, 2, 8305, 8308, 7, 801, 2, 2, 8306, 8307, 7, 823, 2, 2, 8307, 8309, 5, 966, 484, 2, 8308, 8306, 3, 2, 2, 2, 8308, 8309, 3, 2, 2, 2, 8309, 8310, 3, 2, 2, 2, 8310, 8311, 7, 810, 2, 2, 8311, 8313, 5, 728, 365, 2, 8312, 8314, 7, 831, 2, 2, 8313, 8312, 3, 2, 2, 2, 8313, 8314, 3, 2, 2, 2, 8314, 8344, 3, 2, 2, 2, 8315, 8316, 7, 315, 2, 2, 8316, 8317, 7, 801, 2, 2, 8317, 8318, 5, 972, 487, 2, 8318, 8320, 5, 728, 365, 2, 8319, 8321, 7, 831, 2, 2, 8320, 8319, 3, 2, 2, 2, 8320, 8321, 3, 2, 2, 2, 8321, 8344, 3, 2, 2, 2, 8322, 8323, 7, 315, 2, 2, 8323, 8324, 7, 801, 2, 2, 8324, 8325, 7, 810, 2, 2, 8325, 8326, 7, 80, 2, 2, 8326, 8337, 5, 718, 360, 2, 8327, 8335, 7, 133, 2, 2, 8328, 8329, 7, 266, 2, 2, 8329, 8336, 7, 630, 2, 2, 8330, 8333, 7, 361, 2, 2, 8331, 8332, 7, 225, 2, 2, 8332, 8334, 5, 926, 464, 2, 8333, 8331, 3, 2, 2, 2, 8333, 8334, 3, 2, 2, 2, 8334, 8336, 3, 2, 2, 2, 8335, 8328, 3, 2, 2, 2, 8335, 8330, 3, 2, 2, 2, 8336, 8338, 3, 2, 2, 2, 8337, 8327, 3, 2, 2, 2, 8337, 8338, 3, 2, 2, 2, 8338, 8340, 3, 2, 2, 2, 8339, 8341, 7, 831, 2, 2, 8340, 8339, 3, 2, 2, 2, 8340, 8341, 3, 2, 2, 2, 8341, 8344, 3, 2, 2, 2, 8342, 8344, 5, 724, 363, 2, 8343, 8304, 3, 2, 2, 2, 8343, 8315, 3, 2, 2, 2, 8343, 8322, 3, 2, 2, 2, 8343, 8342, 3, 2, 2, 2, 8344, 669, 3, 2, 2, 2, 8345, 8346, 7, 28, 2, 2, 8346, 8347, 7, 99, 2, 2, 8347, 8350, 9, 98, 2, 2, 8348, 8351, 5, 966, 484, 2, 8349, 8351, 7, 801, 2, 2, 8350, 8348, 3, 2, 2, 2, 8350, 8349, 3, 2, 2, 2, 8350, 8351, 3, 2, 2, 2, 8351, 8353, 3, 2, 2, 2, 8352, 8354, 7, 831, 2, 2, 8353, 8352, 3, 2, 2, 2, 8353, 8354, 3, 2, 2, 2, 8354, 8427, 3, 2, 2, 2, 8355, 8356, 7, 28, 2, 2, 8356, 8366, 9, 98, 2, 2, 8357, 8360, 5, 966, 484, 2, 8358, 8360, 7, 801, 2, 2, 8359, 8357, 3, 2, 2, 2, 8359, 8358, 3, 2, 2, 2, 8360, 8364, 3, 2, 2, 2, 8361, 8362, 7, 377, 2, 2, 8362, 8363, 7, 575, 2, 2, 8363, 8365, 7, 806, 2, 2, 8364, 8361, 3, 2, 2, 2, 8364, 8365, 3, 2, 2, 2, 8365, 8367, 3, 2, 2, 2, 8366, 8359, 3, 2, 2, 2, 8366, 8367, 3, 2, 2, 2, 8367, 8369, 3, 2, 2, 2, 8368, 8370, 7, 831, 2, 2, 8369, 8368, 3, 2, 2, 2, 8369, 8370, 3, 2, 2, 2, 8370, 8427, 3, 2, 2, 2, 8371, 8372, 7, 58, 2, 2, 8372, 8385, 9, 98, 2, 2, 8373, 8376, 5, 966, 484, 2, 8374, 8376, 7, 801, 2, 2, 8375, 8373, 3, 2, 2, 2, 8375, 8374, 3, 2, 2, 2, 8376, 8383, 3, 2, 2, 2, 8377, 8378, 7, 377, 2, 2, 8378, 8379, 7, 828, 2, 2, 8379, 8380, 7, 470, 2, 2, 8380, 8381, 7, 810, 2, 2, 8381, 8382, 9, 9, 2, 2, 8382, 8384, 7, 829, 2, 2, 8383, 8377, 3, 2, 2, 2, 8383, 8384, 3, 2, 2, 2, 8384, 8386, 3, 2, 2, 2, 8385, 8375, 3, 2, 2, 2, 8385, 8386, 3, 2, 2, 2, 8386, 8388, 3, 2, 2, 2, 8387, 8389, 7, 831, 2, 2, 8388, 8387, 3, 2, 2, 2, 8388, 8389, 3, 2, 2, 2, 8389, 8427, 3, 2, 2, 2, 8390, 8392, 7, 58, 2, 2, 8391, 8393, 7, 787, 2, 2, 8392, 8391, 3, 2, 2, 2, 8392, 8393, 3, 2, 2, 2, 8393, 8395, 3, 2, 2, 2, 8394, 8396, 7, 831, 2, 2, 8395, 8394, 3, 2, 2, 2, 8395, 8396, 3, 2, 2, 2, 8396, 8427, 3, 2, 2, 2, 8397, 8398, 7, 58, 2, 2, 8398, 8427, 5, 966, 484, 2, 8399, 8400, 7, 288, 2, 2, 8400, 8427, 5, 966, 484, 2, 8401, 8402, 7, 288, 2, 2, 8402, 8405, 9, 98, 2, 2, 8403, 8406, 5, 966, 484, 2, 8404, 8406, 7, 801, 2, 2, 8405, 8403, 3, 2, 2, 2, 8405, 8404, 3, 2, 2, 2, 8405, 8406, 3, 2, 2, 2, 8406, 8408, 3, 2, 2, 2, 8407, 8409, 7, 831, 2, 2, 8408, 8407, 3, 2, 2, 2, 8408, 8409, 3, 2, 2, 2, 8409, 8427, 3, 2, 2, 2, 8410, 8412, 7, 288, 2, 2, 8411, 8413, 7, 787, 2, 2, 8412, 8411, 3, 2, 2, 2, 8412, 8413, 3, 2, 2, 2, 8413, 8415, 3, 2, 2, 2, 8414, 8416, 7, 831, 2, 2, 8415, 8414, 3, 2, 2, 2, 8415, 8416, 3, 2, 2, 2, 8416, 8427, 3, 2, 2, 2, 8417, 8418, 7, 300, 2, 2, 8418, 8421, 9, 98, 2, 2, 8419, 8422, 5, 966, 484, 2, 8420, 8422, 7, 801, 2, 2, 8421, 8419, 3, 2, 2, 2, 8421, 8420, 3, 2, 2, 2, 8421, 8422, 3, 2, 2, 2, 8422, 8424, 3, 2, 2, 2, 8423, 8425, 7, 831, 2, 2, 8424, 8423, 3, 2, 2, 2, 8424, 8425, 3, 2, 2, 2, 8425, 8427, 3, 2, 2, 2, 8426, 8345, 3, 2, 2, 2, 8426, 8355, 3, 2, 2, 2, 8426, 8371, 3, 2, 2, 2, 8426, 8390, 3, 2, 2, 2, 8426, 8397, 3, 2, 2, 2, 8426, 8399, 3, 2, 2, 2, 8426, 8401, 3, 2, 2, 2, 8426, 8410, 3, 2, 2, 2, 8426, 8417, 3, 2, 2, 2, 8427, 671, 3, 2, 2, 2, 8428, 8430, 7, 526, 2, 2, 8429, 8431, 7, 802, 2, 2, 8430, 8429, 3, 2, 2, 2, 8430, 8431, 3, 2, 2, 2, 8431, 673, 3, 2, 2, 2, 8432, 8433, 7, 364, 2, 2, 8433, 8435, 5, 966, 484, 2, 8434, 8436, 7, 831, 2, 2, 8435, 8434, 3, 2, 2, 2, 8435, 8436, 3, 2, 2, 2, 8436, 675, 3, 2, 2, 2, 8437, 8439, 7, 316, 2, 2, 8438, 8440, 7, 806, 2, 2, 8439, 8438, 3, 2, 2, 2, 8439, 8440, 3, 2, 2, 2, 8440, 677, 3, 2, 2, 2, 8441, 8444, 7, 269, 2, 2, 8442, 8443, 7, 377, 2, 2, 8443, 8445, 7, 636, 2, 2, 8444, 8442, 3, 2, 2, 2, 8444, 8445, 3, 2, 2, 2, 8445, 679, 3, 2, 2, 2, 8446, 8449, 7, 317, 2, 2, 8447, 8448, 7, 377, 2, 2, 8448, 8450, 7, 620, 2, 2, 8449, 8447, 3, 2, 2, 2, 8449, 8450, 3, 2, 2, 2, 8450, 681, 3, 2, 2, 2, 8451, 8452, 7, 86, 2, 2, 8452, 8457, 5, 968, 485, 2, 8453, 8454, 7, 828, 2, 2, 8454, 8455, 5, 870, 436, 2, 8455, 8456, 7, 829, 2, 2, 8456, 8458, 3, 2, 2, 2, 8457, 8453, 3, 2, 2, 2, 8457, 8458, 3, 2, 2, 2, 8458, 8461, 3, 2, 2, 2, 8459, 8460, 7, 377, 2, 2, 8460, 8462, 5, 684, 343, 2, 8461, 8459, 3, 2, 2, 2, 8461, 8462, 3, 2, 2, 2, 8462, 8464, 3, 2, 2, 2, 8463, 8465, 7, 831, 2, 2, 8464, 8463, 3, 2, 2, 2, 8464, 8465, 3, 2, 2, 2, 8465, 683, 3, 2, 2, 2, 8466, 8469, 5, 968, 485, 2, 8467, 8468, 7, 830, 2, 2, 8468, 8470, 5, 968, 485, 2, 8469, 8467, 3, 2, 2, 2, 8469, 8470, 3, 2, 2, 2, 8470, 685, 3, 2, 2, 2, 8471, 8472, 7, 118, 2, 2, 8472, 8473, 7, 16, 2, 2, 8473, 8474, 9, 99, 2, 2, 8474, 687, 3, 2, 2, 2, 8475, 8477, 7, 801, 2, 2, 8476, 8478, 7, 16, 2, 2, 8477, 8476, 3, 2, 2, 2, 8477, 8478, 3, 2, 2, 2, 8478, 8479, 3, 2, 2, 2, 8479, 8482, 5, 958, 480, 2, 8480, 8481, 7, 810, 2, 2, 8481, 8483, 5, 728, 365, 2, 8482, 8480, 3, 2, 2, 2, 8482, 8483, 3, 2, 2, 2, 8483, 689, 3, 2, 2, 2, 8484, 8485, 7, 339, 2, 2, 8485, 8486, 7, 828, 2, 2, 8486, 8487, 5, 696, 349, 2, 8487, 8488, 7, 829, 2, 2, 8488, 691, 3, 2, 2, 2, 8489, 8490, 7, 789, 2, 2, 8490, 8492, 7, 828, 2, 2, 8491, 8493, 9, 100, 2, 2, 8492, 8491, 3, 2, 2, 2, 8492, 8493, 3, 2, 2, 2, 8493, 8494, 3, 2, 2, 2, 8494, 8495, 5, 694, 348, 2, 8495, 8496, 7, 829, 2, 2, 8496, 693, 3, 2, 2, 2, 8497, 8498, 7, 803, 2, 2, 8498, 8499, 7, 823, 2, 2, 8499, 8500, 7, 803, 2, 2, 8500, 695, 3, 2, 2, 2, 8501, 8508, 5, 698, 350, 2, 8502, 8504, 7, 830, 2, 2, 8503, 8502, 3, 2, 2, 2, 8503, 8504, 3, 2, 2, 2, 8504, 8505, 3, 2, 2, 2, 8505, 8507, 5, 698, 350, 2, 8506, 8503, 3, 2, 2, 2, 8507, 8510, 3, 2, 2, 2, 8508, 8506, 3, 2, 2, 2, 8508, 8509, 3, 2, 2, 2, 8509, 697, 3, 2, 2, 2, 8510, 8508, 3, 2, 2, 2, 8511, 8515, 5, 700, 351, 2, 8512, 8515, 5, 702, 352, 2, 8513, 8515, 5, 706, 354, 2, 8514, 8511, 3, 2, 2, 2, 8514, 8512, 3, 2, 2, 2, 8514, 8513, 3, 2, 2, 2, 8515, 699, 3, 2, 2, 2, 8516, 8520, 5, 966, 484, 2, 8517, 8521, 5, 958, 480, 2, 8518, 8519, 7, 16, 2, 2, 8519, 8521, 5, 728, 365, 2, 8520, 8517, 3, 2, 2, 2, 8520, 8518, 3, 2, 2, 2, 8521, 8524, 3, 2, 2, 2, 8522, 8523, 7, 55, 2, 2, 8523, 8525, 5, 966, 484, 2, 8524, 8522, 3, 2, 2, 2, 8524, 8525, 3, 2, 2, 2, 8525, 8527, 3, 2, 2, 2, 8526, 8528, 5, 934, 468, 2, 8527, 8526, 3, 2, 2, 2, 8527, 8528, 3, 2, 2, 2, 8528, 8550, 3, 2, 2, 2, 8529, 8530, 7, 61, 2, 2, 8530, 8532, 5, 966, 484, 2, 8531, 8529, 3, 2, 2, 2, 8531, 8532, 3, 2, 2, 2, 8532, 8533, 3, 2, 2, 2, 8533, 8535, 5, 936, 469, 2, 8534, 8536, 5, 936, 469, 2, 8535, 8534, 3, 2, 2, 2, 8535, 8536, 3, 2, 2, 2, 8536, 8551, 3, 2, 2, 2, 8537, 8543, 7, 150, 2, 2, 8538, 8539, 7, 828, 2, 2, 8539, 8540, 7, 802, 2, 2, 8540, 8541, 7, 830, 2, 2, 8541, 8542, 7, 802, 2, 2, 8542, 8544, 7, 829, 2, 2, 8543, 8538, 3, 2, 2, 2, 8543, 8544, 3, 2, 2, 2, 8544, 8548, 3, 2, 2, 2, 8545, 8546, 7, 220, 2, 2, 8546, 8547, 7, 133, 2, 2, 8547, 8549, 7, 274, 2, 2, 8548, 8545, 3, 2, 2, 2, 8548, 8549, 3, 2, 2, 2, 8549, 8551, 3, 2, 2, 2, 8550, 8531, 3, 2, 2, 2, 8550, 8537, 3, 2, 2, 2, 8550, 8551, 3, 2, 2, 2, 8551, 8553, 3, 2, 2, 2, 8552, 8554, 7, 291, 2, 2, 8553, 8552, 3, 2, 2, 2, 8553, 8554, 3, 2, 2, 2, 8554, 8558, 3, 2, 2, 2, 8555, 8557, 5, 704, 353, 2, 8556, 8555, 3, 2, 2, 2, 8557, 8560, 3, 2, 2, 2, 8558, 8556, 3, 2, 2, 2, 8558, 8559, 3, 2, 2, 2, 8559, 701, 3, 2, 2, 2, 8560, 8558, 3, 2, 2, 2, 8561, 8562, 5, 966, 484, 2, 8562, 8563, 9, 101, 2, 2, 8563, 8567, 5, 728, 365, 2, 8564, 8568, 7, 576, 2, 2, 8565, 8566, 7, 220, 2, 2, 8566, 8568, 7, 576, 2, 2, 8567, 8564, 3, 2, 2, 2, 8567, 8565, 3, 2, 2, 2, 8567, 8568, 3, 2, 2, 2, 8568, 703, 3, 2, 2, 2, 8569, 8570, 7, 61, 2, 2, 8570, 8572, 5, 966, 484, 2, 8571, 8569, 3, 2, 2, 2, 8571, 8572, 3, 2, 2, 2, 8572, 8610, 3, 2, 2, 2, 8573, 8574, 7, 256, 2, 2, 8574, 8577, 7, 172, 2, 2, 8575, 8577, 7, 357, 2, 2, 8576, 8573, 3, 2, 2, 2, 8576, 8575, 3, 2, 2, 2, 8577, 8579, 3, 2, 2, 2, 8578, 8580, 5, 932, 467, 2, 8579, 8578, 3, 2, 2, 2, 8579, 8580, 3, 2, 2, 2, 8580, 8582, 3, 2, 2, 2, 8581, 8583, 5, 712, 357, 2, 8582, 8581, 3, 2, 2, 2, 8582, 8583, 3, 2, 2, 2, 8583, 8611, 3, 2, 2, 2, 8584, 8588, 7, 46, 2, 2, 8585, 8586, 7, 220, 2, 2, 8586, 8587, 7, 133, 2, 2, 8587, 8589, 7, 274, 2, 2, 8588, 8585, 3, 2, 2, 2, 8588, 8589, 3, 2, 2, 2, 8589, 8590, 3, 2, 2, 2, 8590, 8591, 7, 828, 2, 2, 8591, 8592, 5, 750, 376, 2, 8592, 8593, 7, 829, 2, 2, 8593, 8611, 3, 2, 2, 2, 8594, 8595, 7, 136, 2, 2, 8595, 8597, 7, 172, 2, 2, 8596, 8594, 3, 2, 2, 2, 8596, 8597, 3, 2, 2, 2, 8597, 8598, 3, 2, 2, 2, 8598, 8599, 7, 270, 2, 2, 8599, 8600, 5, 910, 456, 2, 8600, 8601, 7, 828, 2, 2, 8601, 8602, 5, 926, 464, 2, 8602, 8604, 7, 829, 2, 2, 8603, 8605, 5, 708, 355, 2, 8604, 8603, 3, 2, 2, 2, 8604, 8605, 3, 2, 2, 2, 8605, 8607, 3, 2, 2, 2, 8606, 8608, 5, 710, 356, 2, 8607, 8606, 3, 2, 2, 2, 8607, 8608, 3, 2, 2, 2, 8608, 8611, 3, 2, 2, 2, 8609, 8611, 5, 934, 468, 2, 8610, 8576, 3, 2, 2, 2, 8610, 8584, 3, 2, 2, 2, 8610, 8596, 3, 2, 2, 2, 8610, 8609, 3, 2, 2, 2, 8611, 705, 3, 2, 2, 2, 8612, 8613, 7, 61, 2, 2, 8613, 8615, 5, 966, 484, 2, 8614, 8612, 3, 2, 2, 2, 8614, 8615, 3, 2, 2, 2, 8615, 8680, 3, 2, 2, 2, 8616, 8617, 7, 256, 2, 2, 8617, 8620, 7, 172, 2, 2, 8618, 8620, 7, 357, 2, 2, 8619, 8616, 3, 2, 2, 2, 8619, 8618, 3, 2, 2, 2, 8620, 8622, 3, 2, 2, 2, 8621, 8623, 5, 932, 467, 2, 8622, 8621, 3, 2, 2, 2, 8622, 8623, 3, 2, 2, 2, 8623, 8624, 3, 2, 2, 2, 8624, 8625, 7, 828, 2, 2, 8625, 8626, 5, 924, 463, 2, 8626, 8628, 7, 829, 2, 2, 8627, 8629, 5, 712, 357, 2, 8628, 8627, 3, 2, 2, 2, 8628, 8629, 3, 2, 2, 2, 8629, 8632, 3, 2, 2, 2, 8630, 8631, 7, 229, 2, 2, 8631, 8633, 5, 966, 484, 2, 8632, 8630, 3, 2, 2, 2, 8632, 8633, 3, 2, 2, 2, 8633, 8681, 3, 2, 2, 2, 8634, 8638, 7, 46, 2, 2, 8635, 8636, 7, 220, 2, 2, 8636, 8637, 7, 133, 2, 2, 8637, 8639, 7, 274, 2, 2, 8638, 8635, 3, 2, 2, 2, 8638, 8639, 3, 2, 2, 2, 8639, 8640, 3, 2, 2, 2, 8640, 8641, 7, 828, 2, 2, 8641, 8642, 5, 750, 376, 2, 8642, 8643, 7, 829, 2, 2, 8643, 8681, 3, 2, 2, 2, 8644, 8646, 7, 89, 2, 2, 8645, 8647, 7, 828, 2, 2, 8646, 8645, 3, 2, 2, 2, 8646, 8647, 3, 2, 2, 2, 8647, 8652, 3, 2, 2, 2, 8648, 8653, 7, 806, 2, 2, 8649, 8653, 7, 836, 2, 2, 8650, 8653, 5, 832, 417, 2, 8651, 8653, 7, 802, 2, 2, 8652, 8648, 3, 2, 2, 2, 8652, 8649, 3, 2, 2, 2, 8652, 8650, 3, 2, 2, 2, 8652, 8651, 3, 2, 2, 2, 8653, 8654, 3, 2, 2, 2, 8654, 8652, 3, 2, 2, 2, 8654, 8655, 3, 2, 2, 2, 8655, 8657, 3, 2, 2, 2, 8656, 8658, 7, 829, 2, 2, 8657, 8656, 3, 2, 2, 2, 8657, 8658, 3, 2, 2, 2, 8658, 8659, 3, 2, 2, 2, 8659, 8660, 7, 133, 2, 2, 8660, 8681, 5, 966, 484, 2, 8661, 8662, 7, 136, 2, 2, 8662, 8663, 7, 172, 2, 2, 8663, 8664, 7, 828, 2, 2, 8664, 8665, 5, 926, 464, 2, 8665, 8666, 7, 829, 2, 2, 8666, 8667, 7, 270, 2, 2, 8667, 8672, 5, 910, 456, 2, 8668, 8669, 7, 828, 2, 2, 8669, 8670, 5, 926, 464, 2, 8670, 8671, 7, 829, 2, 2, 8671, 8673, 3, 2, 2, 2, 8672, 8668, 3, 2, 2, 2, 8672, 8673, 3, 2, 2, 2, 8673, 8675, 3, 2, 2, 2, 8674, 8676, 5, 708, 355, 2, 8675, 8674, 3, 2, 2, 2, 8675, 8676, 3, 2, 2, 2, 8676, 8678, 3, 2, 2, 2, 8677, 8679, 5, 710, 356, 2, 8678, 8677, 3, 2, 2, 2, 8678, 8679, 3, 2, 2, 2, 8679, 8681, 3, 2, 2, 2, 8680, 8619, 3, 2, 2, 2, 8680, 8634, 3, 2, 2, 2, 8680, 8644, 3, 2, 2, 2, 8680, 8661, 3, 2, 2, 2, 8681, 707, 3, 2, 2, 2, 8682, 8683, 7, 229, 2, 2, 8683, 8691, 7, 92, 2, 2, 8684, 8685, 7, 611, 2, 2, 8685, 8692, 7, 384, 2, 2, 8686, 8692, 7, 41, 2, 2, 8687, 8688, 7, 315, 2, 2, 8688, 8692, 7, 223, 2, 2, 8689, 8690, 7, 315, 2, 2, 8690, 8692, 7, 89, 2, 2, 8691, 8684, 3, 2, 2, 2, 8691, 8686, 3, 2, 2, 2, 8691, 8687, 3, 2, 2, 2, 8691, 8689, 3, 2, 2, 2, 8692, 709, 3, 2, 2, 2, 8693, 8694, 7, 229, 2, 2, 8694, 8702, 7, 361, 2, 2, 8695, 8696, 7, 611, 2, 2, 8696, 8703, 7, 384, 2, 2, 8697, 8703, 7, 41, 2, 2, 8698, 8699, 7, 315, 2, 2, 8699, 8703, 7, 223, 2, 2, 8700, 8701, 7, 315, 2, 2, 8701, 8703, 7, 89, 2, 2, 8702, 8695, 3, 2, 2, 2, 8702, 8697, 3, 2, 2, 2, 8702, 8698, 3, 2, 2, 2, 8702, 8700, 3, 2, 2, 2, 8703, 711, 3, 2, 2, 2, 8704, 8705, 7, 377, 2, 2, 8705, 8706, 7, 828, 2, 2, 8706, 8711, 5, 714, 358, 2, 8707, 8708, 7, 830, 2, 2, 8708, 8710, 5, 714, 358, 2, 8709, 8707, 3, 2, 2, 2, 8710, 8713, 3, 2, 2, 2, 8711, 8709, 3, 2, 2, 2, 8711, 8712, 3, 2, 2, 2, 8712, 8714, 3, 2, 2, 2, 8713, 8711, 3, 2, 2, 2, 8714, 8715, 7, 829, 2, 2, 8715, 713, 3, 2, 2, 2, 8716, 8717, 5, 968, 485, 2, 8717, 8721, 7, 810, 2, 2, 8718, 8722, 5, 968, 485, 2, 8719, 8722, 5, 930, 466, 2, 8720, 8722, 7, 802, 2, 2, 8721, 8718, 3, 2, 2, 2, 8721, 8719, 3, 2, 2, 2, 8721, 8720, 3, 2, 2, 2, 8722, 715, 3, 2, 2, 2, 8723, 8724, 7, 88, 2, 2, 8724, 8756, 5, 928, 465, 2, 8725, 8735, 7, 80, 2, 2, 8726, 8733, 5, 718, 360, 2, 8727, 8728, 7, 133, 2, 2, 8728, 8731, 7, 361, 2, 2, 8729, 8730, 7, 225, 2, 2, 8730, 8732, 5, 926, 464, 2, 8731, 8729, 3, 2, 2, 2, 8731, 8732, 3, 2, 2, 2, 8732, 8734, 3, 2, 2, 2, 8733, 8727, 3, 2, 2, 2, 8733, 8734, 3, 2, 2, 2, 8734, 8736, 3, 2, 2, 2, 8735, 8726, 3, 2, 2, 2, 8735, 8736, 3, 2, 2, 2, 8736, 8757, 3, 2, 2, 2, 8737, 8739, 9, 102, 2, 2, 8738, 8737, 3, 2, 2, 2, 8738, 8739, 3, 2, 2, 2, 8739, 8741, 3, 2, 2, 2, 8740, 8742, 7, 704, 2, 2, 8741, 8740, 3, 2, 2, 2, 8741, 8742, 3, 2, 2, 2, 8742, 8743, 3, 2, 2, 2, 8743, 8744, 7, 80, 2, 2, 8744, 8745, 7, 133, 2, 2, 8745, 8754, 5, 446, 224, 2, 8746, 8752, 7, 133, 2, 2, 8747, 8748, 7, 266, 2, 2, 8748, 8753, 7, 630, 2, 2, 8749, 8753, 7, 361, 2, 2, 8750, 8751, 7, 225, 2, 2, 8751, 8753, 5, 926, 464, 2, 8752, 8747, 3, 2, 2, 2, 8752, 8749, 3, 2, 2, 2, 8752, 8750, 3, 2, 2, 2, 8753, 8755, 3, 2, 2, 2, 8754, 8746, 3, 2, 2, 2, 8754, 8755, 3, 2, 2, 2, 8755, 8757, 3, 2, 2, 2, 8756, 8725, 3, 2, 2, 2, 8756, 8738, 3, 2, 2, 2, 8757, 8759, 3, 2, 2, 2, 8758, 8760, 7, 831, 2, 2, 8759, 8758, 3, 2, 2, 2, 8759, 8760, 3, 2, 2, 2, 8760, 717, 3, 2, 2, 2, 8761, 8763, 5, 720, 361, 2, 8762, 8761, 3, 2, 2, 2, 8763, 8766, 3, 2, 2, 2, 8764, 8762, 3, 2, 2, 2, 8764, 8765, 3, 2, 2, 2, 8765, 8767, 3, 2, 2, 2, 8766, 8764, 3, 2, 2, 2, 8767, 8768, 7, 133, 2, 2, 8768, 8769, 5, 446, 224, 2, 8769, 719, 3, 2, 2, 2, 8770, 8776, 9, 65, 2, 2, 8771, 8776, 9, 103, 2, 2, 8772, 8776, 9, 104, 2, 2, 8773, 8776, 9, 105, 2, 2, 8774, 8776, 7, 770, 2, 2, 8775, 8770, 3, 2, 2, 2, 8775, 8771, 3, 2, 2, 2, 8775, 8772, 3, 2, 2, 2, 8775, 8773, 3, 2, 2, 2, 8775, 8774, 3, 2, 2, 2, 8776, 721, 3, 2, 2, 2, 8777, 8787, 7, 128, 2, 2, 8778, 8785, 7, 610, 2, 2, 8779, 8785, 7, 649, 2, 2, 8780, 8785, 7, 512, 2, 2, 8781, 8785, 7, 559, 2, 2, 8782, 8783, 9, 106, 2, 2, 8783, 8785, 5, 728, 365, 2, 8784, 8778, 3, 2, 2, 2, 8784, 8779, 3, 2, 2, 2, 8784, 8780, 3, 2, 2, 2, 8784, 8781, 3, 2, 2, 2, 8784, 8782, 3, 2, 2, 2, 8784, 8785, 3, 2, 2, 2, 8785, 8786, 3, 2, 2, 2, 8786, 8788, 7, 139, 2, 2, 8787, 8784, 3, 2, 2, 2, 8787, 8788, 3, 2, 2, 2, 8788, 8790, 3, 2, 2, 2, 8789, 8791, 7, 525, 2, 2, 8790, 8789, 3, 2, 2, 2, 8790, 8791, 3, 2, 2, 2, 8791, 8792, 3, 2, 2, 2, 8792, 8802, 5, 928, 465, 2, 8793, 8794, 7, 165, 2, 2, 8794, 8799, 7, 801, 2, 2, 8795, 8796, 7, 830, 2, 2, 8796, 8798, 7, 801, 2, 2, 8797, 8795, 3, 2, 2, 2, 8798, 8801, 3, 2, 2, 2, 8799, 8797, 3, 2, 2, 2, 8799, 8800, 3, 2, 2, 2, 8800, 8803, 3, 2, 2, 2, 8801, 8799, 3, 2, 2, 2, 8802, 8793, 3, 2, 2, 2, 8802, 8803, 3, 2, 2, 2, 8803, 8805, 3, 2, 2, 2, 8804, 8806, 7, 831, 2, 2, 8805, 8804, 3, 2, 2, 2, 8805, 8806, 3, 2, 2, 2, 8806, 723, 3, 2, 2, 2, 8807, 8808, 7, 315, 2, 2, 8808, 8812, 5, 966, 484, 2, 8809, 8813, 5, 966, 484, 2, 8810, 8813, 5, 726, 364, 2, 8811, 8813, 5, 930, 466, 2, 8812, 8809, 3, 2, 2, 2, 8812, 8810, 3, 2, 2, 2, 8812, 8811, 3, 2, 2, 2, 8813, 8815, 3, 2, 2, 2, 8814, 8816, 7, 831, 2, 2, 8815, 8814, 3, 2, 2, 2, 8815, 8816, 3, 2, 2, 2, 8816, 8857, 3, 2, 2, 2, 8817, 8818, 7, 315, 2, 2, 8818, 8819, 7, 350, 2, 2, 8819, 8820, 7, 549, 2, 2, 8820, 8830, 7, 562, 2, 2, 8821, 8822, 7, 266, 2, 2, 8822, 8831, 7, 772, 2, 2, 8823, 8824, 7, 266, 2, 2, 8824, 8831, 7, 439, 2, 2, 8825, 8826, 7, 683, 2, 2, 8826, 8831, 7, 266, 2, 2, 8827, 8831, 7, 730, 2, 2, 8828, 8831, 7, 720, 2, 2, 8829, 8831, 7, 802, 2, 2, 8830, 8821, 3, 2, 2, 2, 8830, 8823, 3, 2, 2, 2, 8830, 8825, 3, 2, 2, 2, 8830, 8827, 3, 2, 2, 2, 8830, 8828, 3, 2, 2, 2, 8830, 8829, 3, 2, 2, 2, 8831, 8833, 3, 2, 2, 2, 8832, 8834, 7, 831, 2, 2, 8833, 8832, 3, 2, 2, 2, 8833, 8834, 3, 2, 2, 2, 8834, 8857, 3, 2, 2, 2, 8835, 8836, 7, 315, 2, 2, 8836, 8837, 7, 152, 2, 2, 8837, 8838, 5, 910, 456, 2, 8838, 8840, 5, 930, 466, 2, 8839, 8841, 7, 831, 2, 2, 8840, 8839, 3, 2, 2, 2, 8840, 8841, 3, 2, 2, 2, 8841, 8857, 3, 2, 2, 2, 8842, 8843, 7, 315, 2, 2, 8843, 8844, 7, 399, 2, 2, 8844, 8857, 5, 930, 466, 2, 8845, 8846, 7, 315, 2, 2, 8846, 8847, 7, 662, 2, 2, 8847, 8857, 5, 930, 466, 2, 8848, 8849, 7, 315, 2, 2, 8849, 8850, 7, 400, 2, 2, 8850, 8857, 5, 930, 466, 2, 8851, 8852, 7, 315, 2, 2, 8852, 8853, 7, 401, 2, 2, 8853, 8857, 5, 930, 466, 2, 8854, 8855, 7, 315, 2, 2, 8855, 8857, 5, 842, 422, 2, 8856, 8807, 3, 2, 2, 2, 8856, 8817, 3, 2, 2, 2, 8856, 8835, 3, 2, 2, 2, 8856, 8842, 3, 2, 2, 2, 8856, 8845, 3, 2, 2, 2, 8856, 8848, 3, 2, 2, 2, 8856, 8851, 3, 2, 2, 2, 8856, 8854, 3, 2, 2, 2, 8857, 725, 3, 2, 2, 2, 8858, 8861, 5, 962, 482, 2, 8859, 8861, 7, 801, 2, 2, 8860, 8858, 3, 2, 2, 2, 8860, 8859, 3, 2, 2, 2, 8861, 727, 3, 2, 2, 2, 8862, 8863, 8, 365, 1, 2, 8863, 8871, 5, 730, 366, 2, 8864, 8871, 5, 832, 417, 2, 8865, 8871, 5, 732, 367, 2, 8866, 8871, 5, 922, 462, 2, 8867, 8871, 5, 736, 369, 2, 8868, 8871, 5, 734, 368, 2, 8869, 8871, 5, 880, 441, 2, 8870, 8862, 3, 2, 2, 2, 8870, 8864, 3, 2, 2, 2, 8870, 8865, 3, 2, 2, 2, 8870, 8866, 3, 2, 2, 2, 8870, 8867, 3, 2, 2, 2, 8870, 8868, 3, 2, 2, 2, 8870, 8869, 3, 2, 2, 2, 8871, 8891, 3, 2, 2, 2, 8872, 8873, 12, 7, 2, 2, 8873, 8874, 9, 107, 2, 2, 8874, 8890, 5, 728, 365, 8, 8875, 8876, 12, 6, 2, 2, 8876, 8877, 9, 108, 2, 2, 8877, 8890, 5, 728, 365, 7, 8878, 8879, 12, 5, 2, 2, 8879, 8880, 5, 970, 486, 2, 8880, 8881, 5, 728, 365, 6, 8881, 8890, 3, 2, 2, 2, 8882, 8883, 12, 4, 2, 2, 8883, 8884, 5, 972, 487, 2, 8884, 8885, 5, 728, 365, 5, 8885, 8890, 3, 2, 2, 2, 8886, 8887, 12, 12, 2, 2, 8887, 8888, 7, 55, 2, 2, 8888, 8890, 5, 966, 484, 2, 8889, 8872, 3, 2, 2, 2, 8889, 8875, 3, 2, 2, 2, 8889, 8878, 3, 2, 2, 2, 8889, 8882, 3, 2, 2, 2, 8889, 8886, 3, 2, 2, 2, 8890, 8893, 3, 2, 2, 2, 8891, 8889, 3, 2, 2, 2, 8891, 8892, 3, 2, 2, 2, 8892, 729, 3, 2, 2, 2, 8893, 8891, 3, 2, 2, 2, 8894, 8899, 7, 89, 2, 2, 8895, 8899, 7, 223, 2, 2, 8896, 8899, 7, 801, 2, 2, 8897, 8899, 5, 962, 482, 2, 8898, 8894, 3, 2, 2, 2, 8898, 8895, 3, 2, 2, 2, 8898, 8896, 3, 2, 2, 2, 8898, 8897, 3, 2, 2, 2, 8899, 731, 3, 2, 2, 2, 8900, 8901, 7, 42, 2, 2, 8901, 8903, 5, 728, 365, 2, 8902, 8904, 5, 846, 424, 2, 8903, 8902, 3, 2, 2, 2, 8904, 8905, 3, 2, 2, 2, 8905, 8903, 3, 2, 2, 2, 8905, 8906, 3, 2, 2, 2, 8906, 8909, 3, 2, 2, 2, 8907, 8908, 7, 106, 2, 2, 8908, 8910, 5, 728, 365, 2, 8909, 8907, 3, 2, 2, 2, 8909, 8910, 3, 2, 2, 2, 8910, 8911, 3, 2, 2, 2, 8911, 8912, 7, 108, 2, 2, 8912, 8926, 3, 2, 2, 2, 8913, 8915, 7, 42, 2, 2, 8914, 8916, 5, 848, 425, 2, 8915, 8914, 3, 2, 2, 2, 8916, 8917, 3, 2, 2, 2, 8917, 8915, 3, 2, 2, 2, 8917, 8918, 3, 2, 2, 2, 8918, 8921, 3, 2, 2, 2, 8919, 8920, 7, 106, 2, 2, 8920, 8922, 5, 728, 365, 2, 8921, 8919, 3, 2, 2, 2, 8921, 8922, 3, 2, 2, 2, 8922, 8923, 3, 2, 2, 2, 8923, 8924, 7, 108, 2, 2, 8924, 8926, 3, 2, 2, 2, 8925, 8900, 3, 2, 2, 2, 8925, 8913, 3, 2, 2, 2, 8926, 733, 3, 2, 2, 2, 8927, 8928, 7, 838, 2, 2, 8928, 8932, 5, 728, 365, 2, 8929, 8930, 9, 109, 2, 2, 8930, 8932, 5, 728, 365, 2, 8931, 8927, 3, 2, 2, 2, 8931, 8929, 3, 2, 2, 2, 8932, 735, 3, 2, 2, 2, 8933, 8934, 7, 828, 2, 2, 8934, 8935, 5, 728, 365, 2, 8935, 8936, 7, 829, 2, 2, 8936, 8942, 3, 2, 2, 2, 8937, 8938, 7, 828, 2, 2, 8938, 8939, 5, 740, 371, 2, 8939, 8940, 7, 829, 2, 2, 8940, 8942, 3, 2, 2, 2, 8941, 8933, 3, 2, 2, 2, 8941, 8937, 3, 2, 2, 2, 8942, 737, 3, 2, 2, 2, 8943, 8952, 7, 223, 2, 2, 8944, 8952, 5, 962, 482, 2, 8945, 8952, 5, 832, 417, 2, 8946, 8952, 7, 801, 2, 2, 8947, 8948, 7, 828, 2, 2, 8948, 8949, 5, 738, 370, 2, 8949, 8950, 7, 829, 2, 2, 8950, 8952, 3, 2, 2, 2, 8951, 8943, 3, 2, 2, 2, 8951, 8944, 3, 2, 2, 2, 8951, 8945, 3, 2, 2, 2, 8951, 8946, 3, 2, 2, 2, 8951, 8947, 3, 2, 2, 2, 8952, 739, 3, 2, 2, 2, 8953, 8954, 5, 446, 224, 2, 8954, 741, 3, 2, 2, 2, 8955, 8958, 7, 377, 2, 2, 8956, 8957, 7, 791, 2, 2, 8957, 8959, 7, 830, 2, 2, 8958, 8956, 3, 2, 2, 2, 8958, 8959, 3, 2, 2, 2, 8959, 8960, 3, 2, 2, 2, 8960, 8965, 5, 744, 373, 2, 8961, 8962, 7, 830, 2, 2, 8962, 8964, 5, 744, 373, 2, 8963, 8961, 3, 2, 2, 2, 8964, 8967, 3, 2, 2, 2, 8965, 8963, 3, 2, 2, 2, 8965, 8966, 3, 2, 2, 2, 8966, 8982, 3, 2, 2, 2, 8967, 8965, 3, 2, 2, 2, 8968, 8969, 7, 377, 2, 2, 8969, 8974, 7, 32, 2, 2, 8970, 8971, 7, 828, 2, 2, 8971, 8972, 5, 822, 412, 2, 8972, 8973, 7, 829, 2, 2, 8973, 8975, 3, 2, 2, 2, 8974, 8970, 3, 2, 2, 2, 8974, 8975, 3, 2, 2, 2, 8975, 8976, 3, 2, 2, 2, 8976, 8977, 7, 16, 2, 2, 8977, 8978, 7, 828, 2, 2, 8978, 8979, 5, 446, 224, 2, 8979, 8980, 7, 829, 2, 2, 8980, 8982, 3, 2, 2, 2, 8981, 8955, 3, 2, 2, 2, 8981, 8968, 3, 2, 2, 2, 8982, 743, 3, 2, 2, 2, 8983, 8988, 5, 966, 484, 2, 8984, 8985, 7, 828, 2, 2, 8985, 8986, 5, 926, 464, 2, 8986, 8987, 7, 829, 2, 2, 8987, 8989, 3, 2, 2, 2, 8988, 8984, 3, 2, 2, 2, 8988, 8989, 3, 2, 2, 2, 8989, 8990, 3, 2, 2, 2, 8990, 8991, 7, 16, 2, 2, 8991, 8992, 7, 828, 2, 2, 8992, 8993, 5, 446, 224, 2, 8993, 8994, 7, 829, 2, 2, 8994, 745, 3, 2, 2, 2, 8995, 8998, 5, 922, 462, 2, 8996, 8998, 7, 801, 2, 2, 8997, 8995, 3, 2, 2, 2, 8997, 8996, 3, 2, 2, 2, 8998, 9001, 3, 2, 2, 2, 8999, 9002, 7, 810, 2, 2, 9000, 9002, 5, 972, 487, 2, 9001, 8999, 3, 2, 2, 2, 9001, 9000, 3, 2, 2, 2, 9002, 9003, 3, 2, 2, 2, 9003, 9012, 5, 728, 365, 2, 9004, 9005, 5, 966, 484, 2, 9005, 9006, 7, 823, 2, 2, 9006, 9007, 5, 966, 484, 2, 9007, 9008, 7, 828, 2, 2, 9008, 9009, 5, 870, 436, 2, 9009, 9010, 7, 829, 2, 2, 9010, 9012, 3, 2, 2, 2, 9011, 8997, 3, 2, 2, 2, 9011, 9004, 3, 2, 2, 2, 9012, 747, 3, 2, 2, 2, 9013, 9018, 5, 750, 376, 2, 9014, 9015, 7, 830, 2, 2, 9015, 9017, 5, 750, 376, 2, 9016, 9014, 3, 2, 2, 2, 9017, 9020, 3, 2, 2, 2, 9018, 9016, 3, 2, 2, 2, 9018, 9019, 3, 2, 2, 2, 9019, 749, 3, 2, 2, 2, 9020, 9018, 3, 2, 2, 2, 9021, 9026, 5, 752, 377, 2, 9022, 9023, 7, 237, 2, 2, 9023, 9025, 5, 752, 377, 2, 9024, 9022, 3, 2, 2, 2, 9025, 9028, 3, 2, 2, 2, 9026, 9024, 3, 2, 2, 2, 9026, 9027, 3, 2, 2, 2, 9027, 751, 3, 2, 2, 2, 9028, 9026, 3, 2, 2, 2, 9029, 9034, 5, 754, 378, 2, 9030, 9031, 7, 11, 2, 2, 9031, 9033, 5, 754, 378, 2, 9032, 9030, 3, 2, 2, 2, 9033, 9036, 3, 2, 2, 2, 9034, 9032, 3, 2, 2, 2, 9034, 9035, 3, 2, 2, 2, 9035, 753, 3, 2, 2, 2, 9036, 9034, 3, 2, 2, 2, 9037, 9039, 7, 220, 2, 2, 9038, 9037, 3, 2, 2, 2, 9038, 9039, 3, 2, 2, 2, 9039, 9040, 3, 2, 2, 2, 9040, 9041, 5, 756, 379, 2, 9041, 755, 3, 2, 2, 2, 9042, 9043, 7, 119, 2, 2, 9043, 9044, 7, 828, 2, 2, 9044, 9045, 5, 740, 371, 2, 9045, 9046, 7, 829, 2, 2, 9046, 9098, 3, 2, 2, 2, 9047, 9048, 5, 728, 365, 2, 9048, 9049, 5, 970, 486, 2, 9049, 9050, 5, 728, 365, 2, 9050, 9098, 3, 2, 2, 2, 9051, 9052, 5, 728, 365, 2, 9052, 9053, 5, 970, 486, 2, 9053, 9054, 9, 110, 2, 2, 9054, 9055, 7, 828, 2, 2, 9055, 9056, 5, 740, 371, 2, 9056, 9057, 7, 829, 2, 2, 9057, 9098, 3, 2, 2, 2, 9058, 9060, 5, 728, 365, 2, 9059, 9061, 7, 220, 2, 2, 9060, 9059, 3, 2, 2, 2, 9060, 9061, 3, 2, 2, 2, 9061, 9062, 3, 2, 2, 2, 9062, 9063, 7, 29, 2, 2, 9063, 9064, 5, 728, 365, 2, 9064, 9065, 7, 11, 2, 2, 9065, 9066, 5, 728, 365, 2, 9066, 9098, 3, 2, 2, 2, 9067, 9069, 5, 728, 365, 2, 9068, 9070, 7, 220, 2, 2, 9069, 9068, 3, 2, 2, 2, 9069, 9070, 3, 2, 2, 2, 9070, 9071, 3, 2, 2, 2, 9071, 9072, 7, 155, 2, 2, 9072, 9075, 7, 828, 2, 2, 9073, 9076, 5, 740, 371, 2, 9074, 9076, 5, 870, 436, 2, 9075, 9073, 3, 2, 2, 2, 9075, 9074, 3, 2, 2, 2, 9076, 9077, 3, 2, 2, 2, 9077, 9078, 7, 829, 2, 2, 9078, 9098, 3, 2, 2, 2, 9079, 9081, 5, 728, 365, 2, 9080, 9082, 7, 220, 2, 2, 9081, 9080, 3, 2, 2, 2, 9081, 9082, 3, 2, 2, 2, 9082, 9083, 3, 2, 2, 2, 9083, 9084, 7, 180, 2, 2, 9084, 9087, 5, 728, 365, 2, 9085, 9086, 7, 111, 2, 2, 9086, 9088, 5, 728, 365, 2, 9087, 9085, 3, 2, 2, 2, 9087, 9088, 3, 2, 2, 2, 9088, 9098, 3, 2, 2, 2, 9089, 9090, 5, 728, 365, 2, 9090, 9091, 7, 168, 2, 2, 9091, 9092, 5, 934, 468, 2, 9092, 9098, 3, 2, 2, 2, 9093, 9094, 7, 828, 2, 2, 9094, 9095, 5, 750, 376, 2, 9095, 9096, 7, 829, 2, 2, 9096, 9098, 3, 2, 2, 2, 9097, 9042, 3, 2, 2, 2, 9097, 9047, 3, 2, 2, 2, 9097, 9051, 3, 2, 2, 2, 9097, 9058, 3, 2, 2, 2, 9097, 9067, 3, 2, 2, 2, 9097, 9079, 3, 2, 2, 2, 9097, 9089, 3, 2, 2, 2, 9097, 9093, 3, 2, 2, 2, 9098, 757, 3, 2, 2, 2, 9099, 9105, 5, 762, 382, 2, 9100, 9101, 7, 828, 2, 2, 9101, 9102, 5, 758, 380, 2, 9102, 9103, 7, 829, 2, 2, 9103, 9105, 3, 2, 2, 2, 9104, 9099, 3, 2, 2, 2, 9104, 9100, 3, 2, 2, 2, 9105, 9109, 3, 2, 2, 2, 9106, 9108, 5, 760, 381, 2, 9107, 9106, 3, 2, 2, 2, 9108, 9111, 3, 2, 2, 2, 9109, 9107, 3, 2, 2, 2, 9109, 9110, 3, 2, 2, 2, 9110, 759, 3, 2, 2, 2, 9111, 9109, 3, 2, 2, 2, 9112, 9114, 7, 356, 2, 2, 9113, 9115, 7, 6, 2, 2, 9114, 9113, 3, 2, 2, 2, 9114, 9115, 3, 2, 2, 2, 9115, 9119, 3, 2, 2, 2, 9116, 9119, 7, 116, 2, 2, 9117, 9119, 7, 164, 2, 2, 9118, 9112, 3, 2, 2, 2, 9118, 9116, 3, 2, 2, 2, 9118, 9117, 3, 2, 2, 2, 9119, 9125, 3, 2, 2, 2, 9120, 9126, 5, 762, 382, 2, 9121, 9122, 7, 828, 2, 2, 9122, 9123, 5, 758, 380, 2, 9123, 9124, 7, 829, 2, 2, 9124, 9126, 3, 2, 2, 2, 9125, 9120, 3, 2, 2, 2, 9125, 9121, 3, 2, 2, 2, 9126, 761, 3, 2, 2, 2, 9127, 9129, 7, 305, 2, 2, 9128, 9130, 9, 111, 2, 2, 9129, 9128, 3, 2, 2, 2, 9129, 9130, 3, 2, 2, 2, 9130, 9132, 3, 2, 2, 2, 9131, 9133, 5, 764, 383, 2, 9132, 9131, 3, 2, 2, 2, 9132, 9133, 3, 2, 2, 2, 9133, 9134, 3, 2, 2, 2, 9134, 9137, 5, 786, 394, 2, 9135, 9136, 7, 165, 2, 2, 9136, 9138, 5, 910, 456, 2, 9137, 9135, 3, 2, 2, 2, 9137, 9138, 3, 2, 2, 2, 9138, 9141, 3, 2, 2, 2, 9139, 9140, 7, 139, 2, 2, 9140, 9142, 5, 800, 401, 2, 9141, 9139, 3, 2, 2, 2, 9141, 9142, 3, 2, 2, 2, 9142, 9145, 3, 2, 2, 2, 9143, 9144, 7, 374, 2, 2, 9144, 9146, 5, 750, 376, 2, 9145, 9143, 3, 2, 2, 2, 9145, 9146, 3, 2, 2, 2, 9146, 9160, 3, 2, 2, 2, 9147, 9148, 7, 146, 2, 2, 9148, 9150, 7, 38, 2, 2, 9149, 9151, 7, 6, 2, 2, 9150, 9149, 3, 2, 2, 2, 9150, 9151, 3, 2, 2, 2, 9151, 9152, 3, 2, 2, 2, 9152, 9157, 5, 778, 390, 2, 9153, 9154, 7, 830, 2, 2, 9154, 9156, 5, 778, 390, 2, 9155, 9153, 3, 2, 2, 2, 9156, 9159, 3, 2, 2, 2, 9157, 9155, 3, 2, 2, 2, 9157, 9158, 3, 2, 2, 2, 9158, 9161, 3, 2, 2, 2, 9159, 9157, 3, 2, 2, 2, 9160, 9147, 3, 2, 2, 2, 9160, 9161, 3, 2, 2, 2, 9161, 9164, 3, 2, 2, 2, 9162, 9163, 7, 147, 2, 2, 9163, 9165, 5, 750, 376, 2, 9164, 9162, 3, 2, 2, 2, 9164, 9165, 3, 2, 2, 2, 9165, 763, 3, 2, 2, 2, 9166, 9169, 7, 347, 2, 2, 9167, 9170, 5, 766, 384, 2, 9168, 9170, 5, 768, 385, 2, 9169, 9167, 3, 2, 2, 2, 9169, 9168, 3, 2, 2, 2, 9170, 9173, 3, 2, 2, 2, 9171, 9172, 7, 377, 2, 2, 9172, 9174, 7, 756, 2, 2, 9173, 9171, 3, 2, 2, 2, 9173, 9174, 3, 2, 2, 2, 9174, 765, 3, 2, 2, 2, 9175, 9176, 9, 112, 2, 2, 9176, 9183, 7, 245, 2, 2, 9177, 9178, 7, 828, 2, 2, 9178, 9179, 5, 728, 365, 2, 9179, 9180, 7, 829, 2, 2, 9180, 9181, 7, 245, 2, 2, 9181, 9183, 3, 2, 2, 2, 9182, 9175, 3, 2, 2, 2, 9182, 9177, 3, 2, 2, 2, 9183, 767, 3, 2, 2, 2, 9184, 9190, 7, 802, 2, 2, 9185, 9186, 7, 828, 2, 2, 9186, 9187, 5, 728, 365, 2, 9187, 9188, 7, 829, 2, 2, 9188, 9190, 3, 2, 2, 2, 9189, 9184, 3, 2, 2, 2, 9189, 9185, 3, 2, 2, 2, 9190, 769, 3, 2, 2, 2, 9191, 9192, 7, 238, 2, 2, 9192, 9193, 7, 38, 2, 2, 9193, 9198, 5, 776, 389, 2, 9194, 9195, 7, 830, 2, 2, 9195, 9197, 5, 776, 389, 2, 9196, 9194, 3, 2, 2, 2, 9197, 9200, 3, 2, 2, 2, 9198, 9196, 3, 2, 2, 2, 9198, 9199, 3, 2, 2, 2, 9199, 9212, 3, 2, 2, 2, 9200, 9198, 3, 2, 2, 2, 9201, 9202, 7, 627, 2, 2, 9202, 9203, 5, 728, 365, 2, 9203, 9210, 9, 113, 2, 2, 9204, 9205, 7, 128, 2, 2, 9205, 9206, 9, 114, 2, 2, 9206, 9207, 5, 728, 365, 2, 9207, 9208, 9, 113, 2, 2, 9208, 9209, 7, 630, 2, 2, 9209, 9211, 3, 2, 2, 2, 9210, 9204, 3, 2, 2, 2, 9210, 9211, 3, 2, 2, 2, 9211, 9213, 3, 2, 2, 2, 9212, 9201, 3, 2, 2, 2, 9212, 9213, 3, 2, 2, 2, 9213, 771, 3, 2, 2, 2, 9214, 9215, 7, 133, 2, 2, 9215, 9303, 7, 34, 2, 2, 9216, 9217, 7, 133, 2, 2, 9217, 9225, 7, 789, 2, 2, 9218, 9222, 7, 265, 2, 2, 9219, 9220, 7, 828, 2, 2, 9220, 9221, 7, 806, 2, 2, 9221, 9223, 7, 829, 2, 2, 9222, 9219, 3, 2, 2, 2, 9222, 9223, 3, 2, 2, 2, 9223, 9226, 3, 2, 2, 2, 9224, 9226, 7, 408, 2, 2, 9225, 9218, 3, 2, 2, 2, 9225, 9224, 3, 2, 2, 2, 9226, 9230, 3, 2, 2, 2, 9227, 9229, 5, 774, 388, 2, 9228, 9227, 3, 2, 2, 2, 9229, 9232, 3, 2, 2, 2, 9230, 9228, 3, 2, 2, 2, 9230, 9231, 3, 2, 2, 2, 9231, 9243, 3, 2, 2, 2, 9232, 9230, 3, 2, 2, 2, 9233, 9241, 7, 830, 2, 2, 9234, 9242, 7, 790, 2, 2, 9235, 9239, 7, 792, 2, 2, 9236, 9237, 7, 828, 2, 2, 9237, 9238, 7, 806, 2, 2, 9238, 9240, 7, 829, 2, 2, 9239, 9236, 3, 2, 2, 2, 9239, 9240, 3, 2, 2, 2, 9240, 9242, 3, 2, 2, 2, 9241, 9234, 3, 2, 2, 2, 9241, 9235, 3, 2, 2, 2, 9242, 9244, 3, 2, 2, 2, 9243, 9233, 3, 2, 2, 2, 9243, 9244, 3, 2, 2, 2, 9244, 9248, 3, 2, 2, 2, 9245, 9246, 7, 830, 2, 2, 9246, 9247, 7, 486, 2, 2, 9247, 9249, 9, 115, 2, 2, 9248, 9245, 3, 2, 2, 2, 9248, 9249, 3, 2, 2, 2, 9249, 9303, 3, 2, 2, 2, 9250, 9251, 7, 133, 2, 2, 9251, 9252, 7, 789, 2, 2, 9252, 9256, 7, 500, 2, 2, 9253, 9255, 5, 774, 388, 2, 9254, 9253, 3, 2, 2, 2, 9255, 9258, 3, 2, 2, 2, 9256, 9254, 3, 2, 2, 2, 9256, 9257, 3, 2, 2, 2, 9257, 9261, 3, 2, 2, 2, 9258, 9256, 3, 2, 2, 2, 9259, 9260, 7, 830, 2, 2, 9260, 9262, 7, 790, 2, 2, 9261, 9259, 3, 2, 2, 2, 9261, 9262, 3, 2, 2, 2, 9262, 9303, 3, 2, 2, 2, 9263, 9264, 7, 133, 2, 2, 9264, 9265, 7, 789, 2, 2, 9265, 9269, 7, 643, 2, 2, 9266, 9267, 7, 828, 2, 2, 9267, 9268, 7, 806, 2, 2, 9268, 9270, 7, 829, 2, 2, 9269, 9266, 3, 2, 2, 2, 9269, 9270, 3, 2, 2, 2, 9270, 9274, 3, 2, 2, 2, 9271, 9273, 5, 774, 388, 2, 9272, 9271, 3, 2, 2, 2, 9273, 9276, 3, 2, 2, 2, 9274, 9272, 3, 2, 2, 2, 9274, 9275, 3, 2, 2, 2, 9275, 9280, 3, 2, 2, 2, 9276, 9274, 3, 2, 2, 2, 9277, 9278, 7, 830, 2, 2, 9278, 9279, 7, 486, 2, 2, 9279, 9281, 9, 115, 2, 2, 9280, 9277, 3, 2, 2, 2, 9280, 9281, 3, 2, 2, 2, 9281, 9303, 3, 2, 2, 2, 9282, 9283, 7, 133, 2, 2, 9283, 9284, 7, 551, 2, 2, 9284, 9292, 9, 116, 2, 2, 9285, 9286, 7, 830, 2, 2, 9286, 9290, 7, 695, 2, 2, 9287, 9288, 7, 828, 2, 2, 9288, 9289, 7, 806, 2, 2, 9289, 9291, 7, 829, 2, 2, 9290, 9287, 3, 2, 2, 2, 9290, 9291, 3, 2, 2, 2, 9291, 9293, 3, 2, 2, 2, 9292, 9285, 3, 2, 2, 2, 9292, 9293, 3, 2, 2, 2, 9293, 9296, 3, 2, 2, 2, 9294, 9295, 7, 830, 2, 2, 9295, 9297, 7, 541, 2, 2, 9296, 9294, 3, 2, 2, 2, 9296, 9297, 3, 2, 2, 2, 9297, 9300, 3, 2, 2, 2, 9298, 9299, 7, 830, 2, 2, 9299, 9301, 7, 786, 2, 2, 9300, 9298, 3, 2, 2, 2, 9300, 9301, 3, 2, 2, 2, 9301, 9303, 3, 2, 2, 2, 9302, 9214, 3, 2, 2, 2, 9302, 9216, 3, 2, 2, 2, 9302, 9250, 3, 2, 2, 2, 9302, 9263, 3, 2, 2, 2, 9302, 9282, 3, 2, 2, 2, 9303, 773, 3, 2, 2, 2, 9304, 9313, 7, 830, 2, 2, 9305, 9314, 7, 420, 2, 2, 9306, 9314, 7, 769, 2, 2, 9307, 9311, 7, 695, 2, 2, 9308, 9309, 7, 828, 2, 2, 9309, 9310, 7, 806, 2, 2, 9310, 9312, 7, 829, 2, 2, 9311, 9308, 3, 2, 2, 2, 9311, 9312, 3, 2, 2, 2, 9312, 9314, 3, 2, 2, 2, 9313, 9305, 3, 2, 2, 2, 9313, 9306, 3, 2, 2, 2, 9313, 9307, 3, 2, 2, 2, 9314, 775, 3, 2, 2, 2, 9315, 9317, 5, 728, 365, 2, 9316, 9318, 9, 117, 2, 2, 9317, 9316, 3, 2, 2, 2, 9317, 9318, 3, 2, 2, 2, 9318, 777, 3, 2, 2, 2, 9319, 9320, 5, 728, 365, 2, 9320, 779, 3, 2, 2, 2, 9321, 9322, 7, 236, 2, 2, 9322, 9323, 7, 828, 2, 2, 9323, 9328, 5, 782, 392, 2, 9324, 9325, 7, 830, 2, 2, 9325, 9327, 5, 782, 392, 2, 9326, 9324, 3, 2, 2, 2, 9327, 9330, 3, 2, 2, 2, 9328, 9326, 3, 2, 2, 2, 9328, 9329, 3, 2, 2, 2, 9329, 9331, 3, 2, 2, 2, 9330, 9328, 3, 2, 2, 2, 9331, 9332, 7, 829, 2, 2, 9332, 781, 3, 2, 2, 2, 9333, 9334, 7, 505, 2, 2, 9334, 9379, 7, 802, 2, 2, 9335, 9336, 9, 118, 2, 2, 9336, 9379, 7, 146, 2, 2, 9337, 9338, 9, 119, 2, 2, 9338, 9379, 7, 356, 2, 2, 9339, 9340, 9, 120, 2, 2, 9340, 9379, 7, 170, 2, 2, 9341, 9342, 7, 498, 2, 2, 9342, 9379, 7, 783, 2, 2, 9343, 9344, 7, 515, 2, 2, 9344, 9379, 7, 238, 2, 2, 9345, 9379, 7, 537, 2, 2, 9346, 9347, 7, 553, 2, 2, 9347, 9379, 7, 251, 2, 2, 9348, 9349, 7, 554, 2, 2, 9349, 9379, 7, 251, 2, 2, 9350, 9351, 7, 586, 2, 2, 9351, 9379, 7, 802, 2, 2, 9352, 9353, 7, 587, 2, 2, 9353, 9379, 7, 802, 2, 2, 9354, 9355, 7, 633, 2, 2, 9355, 9356, 7, 133, 2, 2, 9356, 9357, 7, 828, 2, 2, 9357, 9362, 5, 784, 393, 2, 9358, 9359, 7, 830, 2, 2, 9359, 9361, 5, 784, 393, 2, 9360, 9358, 3, 2, 2, 2, 9361, 9364, 3, 2, 2, 2, 9362, 9360, 3, 2, 2, 2, 9362, 9363, 3, 2, 2, 2, 9363, 9365, 3, 2, 2, 2, 9364, 9362, 3, 2, 2, 2, 9365, 9366, 7, 829, 2, 2, 9366, 9379, 3, 2, 2, 2, 9367, 9368, 7, 633, 2, 2, 9368, 9369, 7, 133, 2, 2, 9369, 9379, 7, 773, 2, 2, 9370, 9371, 7, 639, 2, 2, 9371, 9379, 9, 77, 2, 2, 9372, 9379, 7, 675, 2, 2, 9373, 9374, 7, 694, 2, 2, 9374, 9379, 7, 251, 2, 2, 9375, 9376, 7, 364, 2, 2, 9376, 9377, 7, 251, 2, 2, 9377, 9379, 7, 806, 2, 2, 9378, 9333, 3, 2, 2, 2, 9378, 9335, 3, 2, 2, 2, 9378, 9337, 3, 2, 2, 2, 9378, 9339, 3, 2, 2, 2, 9378, 9341, 3, 2, 2, 2, 9378, 9343, 3, 2, 2, 2, 9378, 9345, 3, 2, 2, 2, 9378, 9346, 3, 2, 2, 2, 9378, 9348, 3, 2, 2, 2, 9378, 9350, 3, 2, 2, 2, 9378, 9352, 3, 2, 2, 2, 9378, 9354, 3, 2, 2, 2, 9378, 9367, 3, 2, 2, 2, 9378, 9370, 3, 2, 2, 2, 9378, 9372, 3, 2, 2, 2, 9378, 9373, 3, 2, 2, 2, 9378, 9375, 3, 2, 2, 2, 9379, 783, 3, 2, 2, 2, 9380, 9387, 7, 801, 2, 2, 9381, 9388, 7, 773, 2, 2, 9382, 9385, 7, 810, 2, 2, 9383, 9386, 5, 962, 482, 2, 9384, 9386, 7, 223, 2, 2, 9385, 9383, 3, 2, 2, 2, 9385, 9384, 3, 2, 2, 2, 9386, 9388, 3, 2, 2, 2, 9387, 9381, 3, 2, 2, 2, 9387, 9382, 3, 2, 2, 2, 9388, 785, 3, 2, 2, 2, 9389, 9394, 5, 798, 400, 2, 9390, 9391, 7, 830, 2, 2, 9391, 9393, 5, 798, 400, 2, 9392, 9390, 3, 2, 2, 2, 9393, 9396, 3, 2, 2, 2, 9394, 9392, 3, 2, 2, 2, 9394, 9395, 3, 2, 2, 2, 9395, 787, 3, 2, 2, 2, 9396, 9394, 3, 2, 2, 2, 9397, 9398, 7, 828, 2, 2, 9398, 9403, 5, 638, 320, 2, 9399, 9400, 7, 830, 2, 2, 9400, 9402, 5, 638, 320, 2, 9401, 9399, 3, 2, 2, 2, 9402, 9405, 3, 2, 2, 2, 9403, 9401, 3, 2, 2, 2, 9403, 9404, 3, 2, 2, 2, 9404, 9406, 3, 2, 2, 2, 9405, 9403, 3, 2, 2, 2, 9406, 9407, 7, 829, 2, 2, 9407, 789, 3, 2, 2, 2, 9408, 9409, 5, 910, 456, 2, 9409, 9410, 7, 823, 2, 2, 9410, 9412, 3, 2, 2, 2, 9411, 9408, 3, 2, 2, 2, 9411, 9412, 3, 2, 2, 2, 9412, 9413, 3, 2, 2, 2, 9413, 9414, 7, 833, 2, 2, 9414, 791, 3, 2, 2, 2, 9415, 9416, 5, 910, 456, 2, 9416, 9417, 7, 823, 2, 2, 9417, 9419, 3, 2, 2, 2, 9418, 9415, 3, 2, 2, 2, 9418, 9419, 3, 2, 2, 2, 9419, 9425, 3, 2, 2, 2, 9420, 9426, 5, 966, 484, 2, 9421, 9422, 7, 827, 2, 2, 9422, 9426, 7, 150, 2, 2, 9423, 9424, 7, 827, 2, 2, 9424, 9426, 7, 699, 2, 2, 9425, 9420, 3, 2, 2, 2, 9425, 9421, 3, 2, 2, 2, 9425, 9423, 3, 2, 2, 2, 9426, 9429, 3, 2, 2, 2, 9427, 9429, 7, 223, 2, 2, 9428, 9418, 3, 2, 2, 2, 9428, 9427, 3, 2, 2, 2, 9429, 9431, 3, 2, 2, 2, 9430, 9432, 5, 850, 426, 2, 9431, 9430, 3, 2, 2, 2, 9431, 9432, 3, 2, 2, 2, 9432, 793, 3, 2, 2, 2, 9433, 9434, 5, 966, 484, 2, 9434, 9435, 7, 823, 2, 2, 9435, 9436, 5, 966, 484, 2, 9436, 9438, 5, 788, 395, 2, 9437, 9439, 5, 850, 426, 2, 9438, 9437, 3, 2, 2, 2, 9438, 9439, 3, 2, 2, 2, 9439, 9451, 3, 2, 2, 2, 9440, 9441, 5, 966, 484, 2, 9441, 9442, 7, 832, 2, 2, 9442, 9443, 7, 832, 2, 2, 9443, 9445, 5, 966, 484, 2, 9444, 9446, 5, 788, 395, 2, 9445, 9444, 3, 2, 2, 2, 9445, 9446, 3, 2, 2, 2, 9446, 9448, 3, 2, 2, 2, 9447, 9449, 5, 850, 426, 2, 9448, 9447, 3, 2, 2, 2, 9448, 9449, 3, 2, 2, 2, 9449, 9451, 3, 2, 2, 2, 9450, 9433, 3, 2, 2, 2, 9450, 9440, 3, 2, 2, 2, 9451, 795, 3, 2, 2, 2, 9452, 9453, 5, 866, 434, 2, 9453, 9454, 7, 810, 2, 2, 9454, 9455, 5, 728, 365, 2, 9455, 9461, 3, 2, 2, 2, 9456, 9458, 5, 728, 365, 2, 9457, 9459, 5, 850, 426, 2, 9458, 9457, 3, 2, 2, 2, 9458, 9459, 3, 2, 2, 2, 9459, 9461, 3, 2, 2, 2, 9460, 9452, 3, 2, 2, 2, 9460, 9456, 3, 2, 2, 2, 9461, 797, 3, 2, 2, 2, 9462, 9467, 5, 790, 396, 2, 9463, 9467, 5, 792, 397, 2, 9464, 9467, 5, 794, 398, 2, 9465, 9467, 5, 796, 399, 2, 9466, 9462, 3, 2, 2, 2, 9466, 9463, 3, 2, 2, 2, 9466, 9464, 3, 2, 2, 2, 9466, 9465, 3, 2, 2, 2, 9467, 799, 3, 2, 2, 2, 9468, 9473, 5, 802, 402, 2, 9469, 9470, 7, 830, 2, 2, 9470, 9472, 5, 802, 402, 2, 9471, 9469, 3, 2, 2, 2, 9472, 9475, 3, 2, 2, 2, 9473, 9471, 3, 2, 2, 2, 9473, 9474, 3, 2, 2, 2, 9474, 801, 3, 2, 2, 2, 9475, 9473, 3, 2, 2, 2, 9476, 9482, 5, 804, 403, 2, 9477, 9478, 7, 828, 2, 2, 9478, 9479, 5, 804, 403, 2, 9479, 9480, 7, 829, 2, 2, 9480, 9482, 3, 2, 2, 2, 9481, 9476, 3, 2, 2, 2, 9481, 9477, 3, 2, 2, 2, 9482, 803, 3, 2, 2, 2, 9483, 9487, 5, 806, 404, 2, 9484, 9486, 5, 816, 409, 2, 9485, 9484, 3, 2, 2, 2, 9486, 9489, 3, 2, 2, 2, 9487, 9485, 3, 2, 2, 2, 9487, 9488, 3, 2, 2, 2, 9488, 805, 3, 2, 2, 2, 9489, 9487, 3, 2, 2, 2, 9490, 9492, 5, 824, 413, 2, 9491, 9493, 5, 852, 427, 2, 9492, 9491, 3, 2, 2, 2, 9492, 9493, 3, 2, 2, 2, 9493, 9540, 3, 2, 2, 2, 9494, 9496, 5, 908, 455, 2, 9495, 9497, 5, 852, 427, 2, 9496, 9495, 3, 2, 2, 2, 9496, 9497, 3, 2, 2, 2, 9497, 9540, 3, 2, 2, 2, 9498, 9500, 5, 826, 414, 2, 9499, 9501, 5, 852, 427, 2, 9500, 9499, 3, 2, 2, 2, 9500, 9501, 3, 2, 2, 2, 9501, 9540, 3, 2, 2, 2, 9502, 9507, 5, 830, 416, 2, 9503, 9505, 5, 852, 427, 2, 9504, 9506, 5, 864, 433, 2, 9505, 9504, 3, 2, 2, 2, 9505, 9506, 3, 2, 2, 2, 9506, 9508, 3, 2, 2, 2, 9507, 9503, 3, 2, 2, 2, 9507, 9508, 3, 2, 2, 2, 9508, 9540, 3, 2, 2, 2, 9509, 9510, 5, 814, 408, 2, 9510, 9511, 5, 852, 427, 2, 9511, 9540, 3, 2, 2, 2, 9512, 9517, 5, 832, 417, 2, 9513, 9515, 5, 852, 427, 2, 9514, 9516, 5, 864, 433, 2, 9515, 9514, 3, 2, 2, 2, 9515, 9516, 3, 2, 2, 2, 9516, 9518, 3, 2, 2, 2, 9517, 9513, 3, 2, 2, 2, 9517, 9518, 3, 2, 2, 2, 9518, 9540, 3, 2, 2, 2, 9519, 9521, 7, 801, 2, 2, 9520, 9522, 5, 852, 427, 2, 9521, 9520, 3, 2, 2, 2, 9521, 9522, 3, 2, 2, 2, 9522, 9540, 3, 2, 2, 2, 9523, 9524, 7, 801, 2, 2, 9524, 9525, 7, 823, 2, 2, 9525, 9530, 5, 832, 417, 2, 9526, 9528, 5, 852, 427, 2, 9527, 9529, 5, 864, 433, 2, 9528, 9527, 3, 2, 2, 2, 9528, 9529, 3, 2, 2, 2, 9529, 9531, 3, 2, 2, 2, 9530, 9526, 3, 2, 2, 2, 9530, 9531, 3, 2, 2, 2, 9531, 9540, 3, 2, 2, 2, 9532, 9540, 5, 808, 405, 2, 9533, 9534, 7, 832, 2, 2, 9534, 9535, 7, 832, 2, 2, 9535, 9537, 5, 832, 417, 2, 9536, 9538, 5, 852, 427, 2, 9537, 9536, 3, 2, 2, 2, 9537, 9538, 3, 2, 2, 2, 9538, 9540, 3, 2, 2, 2, 9539, 9490, 3, 2, 2, 2, 9539, 9494, 3, 2, 2, 2, 9539, 9498, 3, 2, 2, 2, 9539, 9502, 3, 2, 2, 2, 9539, 9509, 3, 2, 2, 2, 9539, 9512, 3, 2, 2, 2, 9539, 9519, 3, 2, 2, 2, 9539, 9523, 3, 2, 2, 2, 9539, 9532, 3, 2, 2, 2, 9539, 9533, 3, 2, 2, 2, 9540, 807, 3, 2, 2, 2, 9541, 9542, 7, 235, 2, 2, 9542, 9543, 7, 828, 2, 2, 9543, 9544, 5, 728, 365, 2, 9544, 9545, 7, 830, 2, 2, 9545, 9548, 5, 728, 365, 2, 9546, 9547, 7, 830, 2, 2, 9547, 9549, 5, 728, 365, 2, 9548, 9546, 3, 2, 2, 2, 9548, 9549, 3, 2, 2, 2, 9549, 9550, 3, 2, 2, 2, 9550, 9556, 7, 829, 2, 2, 9551, 9552, 7, 377, 2, 2, 9552, 9553, 7, 828, 2, 2, 9553, 9554, 5, 810, 406, 2, 9554, 9555, 7, 829, 2, 2, 9555, 9557, 3, 2, 2, 2, 9556, 9551, 3, 2, 2, 2, 9556, 9557, 3, 2, 2, 2, 9557, 809, 3, 2, 2, 2, 9558, 9563, 5, 812, 407, 2, 9559, 9560, 7, 830, 2, 2, 9560, 9562, 5, 812, 407, 2, 9561, 9559, 3, 2, 2, 2, 9562, 9565, 3, 2, 2, 2, 9563, 9561, 3, 2, 2, 2, 9563, 9564, 3, 2, 2, 2, 9564, 811, 3, 2, 2, 2, 9565, 9563, 3, 2, 2, 2, 9566, 9567, 7, 803, 2, 2, 9567, 9569, 5, 958, 480, 2, 9568, 9570, 7, 806, 2, 2, 9569, 9568, 3, 2, 2, 2, 9569, 9570, 3, 2, 2, 2, 9570, 813, 3, 2, 2, 2, 9571, 9572, 7, 44, 2, 2, 9572, 9573, 7, 828, 2, 2, 9573, 9574, 7, 45, 2, 2, 9574, 9575, 5, 910, 456, 2, 9575, 9576, 7, 830, 2, 2, 9576, 9577, 9, 121, 2, 2, 9577, 9578, 7, 829, 2, 2, 9578, 815, 3, 2, 2, 2, 9579, 9581, 7, 161, 2, 2, 9580, 9579, 3, 2, 2, 2, 9580, 9581, 3, 2, 2, 2, 9581, 9587, 3, 2, 2, 2, 9582, 9584, 9, 122, 2, 2, 9583, 9585, 7, 239, 2, 2, 9584, 9583, 3, 2, 2, 2, 9584, 9585, 3, 2, 2, 2, 9585, 9587, 3, 2, 2, 2, 9586, 9580, 3, 2, 2, 2, 9586, 9582, 3, 2, 2, 2, 9587, 9589, 3, 2, 2, 2, 9588, 9590, 9, 123, 2, 2, 9589, 9588, 3, 2, 2, 2, 9589, 9590, 3, 2, 2, 2, 9590, 9591, 3, 2, 2, 2, 9591, 9592, 7, 170, 2, 2, 9592, 9593, 5, 802, 402, 2, 9593, 9594, 7, 229, 2, 2, 9594, 9595, 5, 750, 376, 2, 9595, 9614, 3, 2, 2, 2, 9596, 9597, 7, 74, 2, 2, 9597, 9598, 7, 170, 2, 2, 9598, 9614, 5, 802, 402, 2, 9599, 9600, 7, 74, 2, 2, 9600, 9601, 7, 403, 2, 2, 9601, 9614, 5, 802, 402, 2, 9602, 9603, 7, 239, 2, 2, 9603, 9604, 7, 403, 2, 2, 9604, 9614, 5, 802, 402, 2, 9605, 9606, 7, 250, 2, 2, 9606, 9607, 5, 818, 410, 2, 9607, 9608, 5, 852, 427, 2, 9608, 9614, 3, 2, 2, 2, 9609, 9610, 7, 359, 2, 2, 9610, 9611, 5, 820, 411, 2, 9611, 9612, 5, 852, 427, 2, 9612, 9614, 3, 2, 2, 2, 9613, 9586, 3, 2, 2, 2, 9613, 9596, 3, 2, 2, 2, 9613, 9599, 3, 2, 2, 2, 9613, 9602, 3, 2, 2, 2, 9613, 9605, 3, 2, 2, 2, 9613, 9609, 3, 2, 2, 2, 9614, 817, 3, 2, 2, 2, 9615, 9616, 7, 828, 2, 2, 9616, 9617, 5, 874, 438, 2, 9617, 9618, 7, 133, 2, 2, 9618, 9619, 5, 922, 462, 2, 9619, 9620, 7, 155, 2, 2, 9620, 9621, 5, 864, 433, 2, 9621, 9622, 7, 829, 2, 2, 9622, 819, 3, 2, 2, 2, 9623, 9624, 7, 828, 2, 2, 9624, 9625, 5, 728, 365, 2, 9625, 9626, 7, 133, 2, 2, 9626, 9627, 5, 922, 462, 2, 9627, 9628, 7, 155, 2, 2, 9628, 9629, 7, 828, 2, 2, 9629, 9630, 5, 822, 412, 2, 9630, 9631, 7, 829, 2, 2, 9631, 9632, 7, 829, 2, 2, 9632, 821, 3, 2, 2, 2, 9633, 9638, 5, 922, 462, 2, 9634, 9635, 7, 830, 2, 2, 9635, 9637, 5, 922, 462, 2, 9636, 9634, 3, 2, 2, 2, 9637, 9640, 3, 2, 2, 2, 9638, 9636, 3, 2, 2, 2, 9638, 9639, 3, 2, 2, 2, 9639, 823, 3, 2, 2, 2, 9640, 9638, 3, 2, 2, 2, 9641, 9643, 5, 910, 456, 2, 9642, 9644, 5, 856, 429, 2, 9643, 9642, 3, 2, 2, 2, 9643, 9644, 3, 2, 2, 2, 9644, 825, 3, 2, 2, 2, 9645, 9646, 7, 234, 2, 2, 9646, 9647, 7, 828, 2, 2, 9647, 9648, 7, 806, 2, 2, 9648, 9649, 7, 830, 2, 2, 9649, 9650, 7, 806, 2, 2, 9650, 9651, 7, 830, 2, 2, 9651, 9652, 7, 806, 2, 2, 9652, 9672, 7, 829, 2, 2, 9653, 9654, 7, 234, 2, 2, 9654, 9655, 7, 828, 2, 2, 9655, 9656, 7, 37, 2, 2, 9656, 9657, 7, 806, 2, 2, 9657, 9667, 7, 830, 2, 2, 9658, 9663, 5, 828, 415, 2, 9659, 9660, 7, 830, 2, 2, 9660, 9662, 5, 828, 415, 2, 9661, 9659, 3, 2, 2, 2, 9662, 9665, 3, 2, 2, 2, 9663, 9661, 3, 2, 2, 2, 9663, 9664, 3, 2, 2, 2, 9664, 9668, 3, 2, 2, 2, 9665, 9663, 3, 2, 2, 2, 9666, 9668, 5, 966, 484, 2, 9667, 9658, 3, 2, 2, 2, 9667, 9666, 3, 2, 2, 2, 9668, 9669, 3, 2, 2, 2, 9669, 9670, 7, 829, 2, 2, 9670, 9672, 3, 2, 2, 2, 9671, 9645, 3, 2, 2, 2, 9671, 9653, 3, 2, 2, 2, 9672, 827, 3, 2, 2, 2, 9673, 9674, 5, 966, 484, 2, 9674, 9675, 7, 810, 2, 2, 9675, 9676, 9, 24, 2, 2, 9676, 829, 3, 2, 2, 2, 9677, 9688, 5, 740, 371, 2, 9678, 9679, 7, 828, 2, 2, 9679, 9680, 5, 740, 371, 2, 9680, 9681, 7, 829, 2, 2, 9681, 9688, 3, 2, 2, 2, 9682, 9688, 5, 868, 435, 2, 9683, 9684, 7, 828, 2, 2, 9684, 9685, 5, 868, 435, 2, 9685, 9686, 7, 829, 2, 2, 9686, 9688, 3, 2, 2, 2, 9687, 9677, 3, 2, 2, 2, 9687, 9678, 3, 2, 2, 2, 9687, 9682, 3, 2, 2, 2, 9687, 9683, 3, 2, 2, 2, 9688, 831, 3, 2, 2, 2, 9689, 9690, 7, 421, 2, 2, 9690, 9691, 7, 828, 2, 2, 9691, 9692, 7, 833, 2, 2, 9692, 9836, 7, 829, 2, 2, 9693, 9694, 7, 429, 2, 2, 9694, 9695, 7, 828, 2, 2, 9695, 9696, 5, 728, 365, 2, 9696, 9697, 7, 16, 2, 2, 9697, 9698, 5, 958, 480, 2, 9698, 9699, 7, 829, 2, 2, 9699, 9836, 3, 2, 2, 2, 9700, 9701, 7, 71, 2, 2, 9701, 9702, 7, 828, 2, 2, 9702, 9703, 5, 958, 480, 2, 9703, 9704, 7, 830, 2, 2, 9704, 9707, 5, 728, 365, 2, 9705, 9706, 7, 830, 2, 2, 9706, 9708, 5, 728, 365, 2, 9707, 9705, 3, 2, 2, 2, 9707, 9708, 3, 2, 2, 2, 9708, 9709, 3, 2, 2, 2, 9709, 9710, 7, 829, 2, 2, 9710, 9836, 3, 2, 2, 2, 9711, 9712, 7, 434, 2, 2, 9712, 9713, 7, 828, 2, 2, 9713, 9714, 7, 833, 2, 2, 9714, 9836, 7, 829, 2, 2, 9715, 9716, 7, 54, 2, 2, 9716, 9717, 7, 828, 2, 2, 9717, 9718, 5, 870, 436, 2, 9718, 9719, 7, 829, 2, 2, 9719, 9836, 3, 2, 2, 2, 9720, 9836, 7, 78, 2, 2, 9721, 9836, 7, 79, 2, 2, 9722, 9723, 7, 458, 2, 2, 9723, 9724, 7, 828, 2, 2, 9724, 9725, 7, 803, 2, 2, 9725, 9726, 7, 830, 2, 2, 9726, 9727, 5, 728, 365, 2, 9727, 9728, 7, 830, 2, 2, 9728, 9729, 5, 728, 365, 2, 9729, 9730, 7, 829, 2, 2, 9730, 9836, 3, 2, 2, 2, 9731, 9732, 7, 459, 2, 2, 9732, 9733, 7, 828, 2, 2, 9733, 9734, 7, 803, 2, 2, 9734, 9735, 7, 830, 2, 2, 9735, 9736, 5, 728, 365, 2, 9736, 9737, 7, 830, 2, 2, 9737, 9738, 5, 728, 365, 2, 9738, 9739, 7, 829, 2, 2, 9739, 9836, 3, 2, 2, 2, 9740, 9741, 7, 460, 2, 2, 9741, 9742, 7, 828, 2, 2, 9742, 9743, 7, 803, 2, 2, 9743, 9744, 7, 830, 2, 2, 9744, 9745, 5, 728, 365, 2, 9745, 9746, 7, 829, 2, 2, 9746, 9836, 3, 2, 2, 2, 9747, 9748, 7, 461, 2, 2, 9748, 9749, 7, 828, 2, 2, 9749, 9750, 7, 803, 2, 2, 9750, 9751, 7, 830, 2, 2, 9751, 9752, 5, 728, 365, 2, 9752, 9753, 7, 829, 2, 2, 9753, 9836, 3, 2, 2, 2, 9754, 9755, 7, 523, 2, 2, 9755, 9756, 7, 828, 2, 2, 9756, 9836, 7, 829, 2, 2, 9757, 9758, 7, 524, 2, 2, 9758, 9759, 7, 828, 2, 2, 9759, 9836, 7, 829, 2, 2, 9760, 9761, 7, 150, 2, 2, 9761, 9762, 7, 828, 2, 2, 9762, 9765, 5, 958, 480, 2, 9763, 9764, 7, 830, 2, 2, 9764, 9766, 7, 802, 2, 2, 9765, 9763, 3, 2, 2, 2, 9765, 9766, 3, 2, 2, 2, 9766, 9769, 3, 2, 2, 2, 9767, 9768, 7, 830, 2, 2, 9768, 9770, 7, 802, 2, 2, 9769, 9767, 3, 2, 2, 2, 9769, 9770, 3, 2, 2, 2, 9770, 9771, 3, 2, 2, 2, 9771, 9772, 7, 829, 2, 2, 9772, 9836, 3, 2, 2, 2, 9773, 9836, 7, 594, 2, 2, 9774, 9775, 7, 224, 2, 2, 9775, 9776, 7, 828, 2, 2, 9776, 9777, 5, 728, 365, 2, 9777, 9778, 7, 830, 2, 2, 9778, 9779, 5, 728, 365, 2, 9779, 9780, 7, 829, 2, 2, 9780, 9836, 3, 2, 2, 2, 9781, 9782, 7, 742, 2, 2, 9782, 9783, 7, 828, 2, 2, 9783, 9784, 5, 728, 365, 2, 9784, 9785, 7, 830, 2, 2, 9785, 9786, 7, 802, 2, 2, 9786, 9787, 7, 830, 2, 2, 9787, 9788, 7, 802, 2, 2, 9788, 9789, 7, 830, 2, 2, 9789, 9790, 5, 728, 365, 2, 9790, 9791, 7, 829, 2, 2, 9791, 9836, 3, 2, 2, 2, 9792, 9836, 7, 314, 2, 2, 9793, 9836, 7, 338, 2, 2, 9794, 9795, 7, 169, 2, 2, 9795, 9796, 7, 828, 2, 2, 9796, 9797, 5, 728, 365, 2, 9797, 9798, 7, 830, 2, 2, 9798, 9799, 5, 728, 365, 2, 9799, 9800, 7, 829, 2, 2, 9800, 9836, 3, 2, 2, 2, 9801, 9836, 5, 834, 418, 2, 9802, 9803, 7, 154, 2, 2, 9803, 9804, 7, 828, 2, 2, 9804, 9805, 5, 750, 376, 2, 9805, 9806, 7, 830, 2, 2, 9806, 9807, 5, 728, 365, 2, 9807, 9808, 7, 830, 2, 2, 9808, 9809, 5, 728, 365, 2, 9809, 9810, 7, 829, 2, 2, 9810, 9836, 3, 2, 2, 2, 9811, 9836, 5, 872, 437, 2, 9812, 9836, 5, 874, 438, 2, 9813, 9836, 5, 876, 439, 2, 9814, 9815, 5, 938, 470, 2, 9815, 9817, 7, 828, 2, 2, 9816, 9818, 5, 870, 436, 2, 9817, 9816, 3, 2, 2, 2, 9817, 9818, 3, 2, 2, 2, 9818, 9819, 3, 2, 2, 2, 9819, 9820, 7, 829, 2, 2, 9820, 9836, 3, 2, 2, 2, 9821, 9822, 7, 741, 2, 2, 9822, 9823, 7, 828, 2, 2, 9823, 9824, 5, 728, 365, 2, 9824, 9825, 7, 830, 2, 2, 9825, 9826, 5, 728, 365, 2, 9826, 9833, 7, 829, 2, 2, 9827, 9828, 7, 378, 2, 2, 9828, 9829, 7, 146, 2, 2, 9829, 9830, 7, 828, 2, 2, 9830, 9831, 5, 770, 386, 2, 9831, 9832, 7, 829, 2, 2, 9832, 9834, 3, 2, 2, 2, 9833, 9827, 3, 2, 2, 2, 9833, 9834, 3, 2, 2, 2, 9834, 9836, 3, 2, 2, 2, 9835, 9689, 3, 2, 2, 2, 9835, 9693, 3, 2, 2, 2, 9835, 9700, 3, 2, 2, 2, 9835, 9711, 3, 2, 2, 2, 9835, 9715, 3, 2, 2, 2, 9835, 9720, 3, 2, 2, 2, 9835, 9721, 3, 2, 2, 2, 9835, 9722, 3, 2, 2, 2, 9835, 9731, 3, 2, 2, 2, 9835, 9740, 3, 2, 2, 2, 9835, 9747, 3, 2, 2, 2, 9835, 9754, 3, 2, 2, 2, 9835, 9757, 3, 2, 2, 2, 9835, 9760, 3, 2, 2, 2, 9835, 9773, 3, 2, 2, 2, 9835, 9774, 3, 2, 2, 2, 9835, 9781, 3, 2, 2, 2, 9835, 9792, 3, 2, 2, 2, 9835, 9793, 3, 2, 2, 2, 9835, 9794, 3, 2, 2, 2, 9835, 9801, 3, 2, 2, 2, 9835, 9802, 3, 2, 2, 2, 9835, 9811, 3, 2, 2, 2, 9835, 9812, 3, 2, 2, 2, 9835, 9813, 3, 2, 2, 2, 9835, 9814, 3, 2, 2, 2, 9835, 9821, 3, 2, 2, 2, 9836, 833, 3, 2, 2, 2, 9837, 9843, 5, 836, 419, 2, 9838, 9843, 5, 838, 420, 2, 9839, 9843, 5, 840, 421, 2, 9840, 9843, 5, 842, 422, 2, 9841, 9843, 5, 844, 423, 2, 9842, 9837, 3, 2, 2, 2, 9842, 9838, 3, 2, 2, 2, 9842, 9839, 3, 2, 2, 2, 9842, 9840, 3, 2, 2, 2, 9842, 9841, 3, 2, 2, 2, 9843, 835, 3, 2, 2, 2, 9844, 9849, 7, 801, 2, 2, 9845, 9849, 7, 803, 2, 2, 9846, 9849, 7, 114, 2, 2, 9847, 9849, 5, 838, 420, 2, 9848, 9844, 3, 2, 2, 2, 9848, 9845, 3, 2, 2, 2, 9848, 9846, 3, 2, 2, 2, 9848, 9847, 3, 2, 2, 2, 9849, 9850, 3, 2, 2, 2, 9850, 9851, 7, 823, 2, 2, 9851, 9852, 7, 779, 2, 2, 9852, 9853, 7, 828, 2, 2, 9853, 9854, 7, 806, 2, 2, 9854, 9855, 7, 830, 2, 2, 9855, 9856, 7, 806, 2, 2, 9856, 9888, 7, 829, 2, 2, 9857, 9862, 7, 801, 2, 2, 9858, 9862, 7, 803, 2, 2, 9859, 9862, 7, 114, 2, 2, 9860, 9862, 5, 838, 420, 2, 9861, 9857, 3, 2, 2, 2, 9861, 9858, 3, 2, 2, 2, 9861, 9859, 3, 2, 2, 2, 9861, 9860, 3, 2, 2, 2, 9862, 9863, 3, 2, 2, 2, 9863, 9864, 7, 823, 2, 2, 9864, 9865, 7, 697, 2, 2, 9865, 9866, 7, 823, 2, 2, 9866, 9867, 7, 779, 2, 2, 9867, 9868, 7, 828, 2, 2, 9868, 9869, 7, 806, 2, 2, 9869, 9870, 7, 830, 2, 2, 9870, 9871, 7, 806, 2, 2, 9871, 9888, 7, 829, 2, 2, 9872, 9877, 7, 801, 2, 2, 9873, 9877, 7, 803, 2, 2, 9874, 9877, 7, 114, 2, 2, 9875, 9877, 5, 838, 420, 2, 9876, 9872, 3, 2, 2, 2, 9876, 9873, 3, 2, 2, 2, 9876, 9874, 3, 2, 2, 2, 9876, 9875, 3, 2, 2, 2, 9877, 9878, 3, 2, 2, 2, 9878, 9879, 7, 823, 2, 2, 9879, 9880, 7, 242, 2, 2, 9880, 9881, 7, 823, 2, 2, 9881, 9882, 7, 779, 2, 2, 9882, 9883, 7, 828, 2, 2, 9883, 9884, 7, 806, 2, 2, 9884, 9885, 7, 830, 2, 2, 9885, 9886, 7, 806, 2, 2, 9886, 9888, 7, 829, 2, 2, 9887, 9848, 3, 2, 2, 2, 9887, 9861, 3, 2, 2, 2, 9887, 9876, 3, 2, 2, 2, 9888, 837, 3, 2, 2, 2, 9889, 9893, 7, 801, 2, 2, 9890, 9893, 7, 803, 2, 2, 9891, 9893, 5, 908, 455, 2, 9892, 9889, 3, 2, 2, 2, 9892, 9890, 3, 2, 2, 2, 9892, 9891, 3, 2, 2, 2, 9893, 9894, 3, 2, 2, 2, 9894, 9895, 7, 823, 2, 2, 9895, 9896, 7, 659, 2, 2, 9896, 9897, 7, 828, 2, 2, 9897, 9898, 7, 806, 2, 2, 9898, 9912, 7, 829, 2, 2, 9899, 9903, 7, 801, 2, 2, 9900, 9903, 7, 803, 2, 2, 9901, 9903, 5, 908, 455, 2, 9902, 9899, 3, 2, 2, 2, 9902, 9900, 3, 2, 2, 2, 9902, 9901, 3, 2, 2, 2, 9903, 9904, 3, 2, 2, 2, 9904, 9905, 7, 823, 2, 2, 9905, 9906, 7, 697, 2, 2, 9906, 9907, 7, 823, 2, 2, 9907, 9908, 7, 659, 2, 2, 9908, 9909, 7, 828, 2, 2, 9909, 9910, 7, 806, 2, 2, 9910, 9912, 7, 829, 2, 2, 9911, 9892, 3, 2, 2, 2, 9911, 9902, 3, 2, 2, 2, 9912, 839, 3, 2, 2, 2, 9913, 9914, 9, 124, 2, 2, 9914, 9915, 7, 823, 2, 2, 9915, 9916, 7, 497, 2, 2, 9916, 9917, 7, 828, 2, 2, 9917, 9918, 7, 806, 2, 2, 9918, 9919, 7, 829, 2, 2, 9919, 841, 3, 2, 2, 2, 9920, 9921, 9, 124, 2, 2, 9921, 9922, 7, 823, 2, 2, 9922, 9923, 7, 602, 2, 2, 9923, 9924, 7, 828, 2, 2, 9924, 9925, 7, 806, 2, 2, 9925, 9926, 7, 829, 2, 2, 9926, 843, 3, 2, 2, 2, 9927, 9928, 9, 124, 2, 2, 9928, 9929, 7, 823, 2, 2, 9929, 9930, 7, 615, 2, 2, 9930, 9931, 7, 828, 2, 2, 9931, 9932, 7, 806, 2, 2, 9932, 9933, 7, 829, 2, 2, 9933, 845, 3, 2, 2, 2, 9934, 9935, 7, 373, 2, 2, 9935, 9936, 5, 728, 365, 2, 9936, 9937, 7, 345, 2, 2, 9937, 9938, 5, 728, 365, 2, 9938, 847, 3, 2, 2, 2, 9939, 9940, 7, 373, 2, 2, 9940, 9941, 5, 750, 376, 2, 9941, 9942, 7, 345, 2, 2, 9942, 9943, 5, 728, 365, 2, 9943, 849, 3, 2, 2, 2, 9944, 9946, 7, 16, 2, 2, 9945, 9944, 3, 2, 2, 2, 9945, 9946, 3, 2, 2, 2, 9946, 9947, 3, 2, 2, 2, 9947, 9948, 5, 866, 434, 2, 9948, 851, 3, 2, 2, 2, 9949, 9951, 7, 16, 2, 2, 9950, 9949, 3, 2, 2, 2, 9950, 9951, 3, 2, 2, 2, 9951, 9952, 3, 2, 2, 2, 9952, 9953, 5, 854, 428, 2, 9953, 853, 3, 2, 2, 2, 9954, 9956, 5, 966, 484, 2, 9955, 9957, 5, 856, 429, 2, 9956, 9955, 3, 2, 2, 2, 9956, 9957, 3, 2, 2, 2, 9957, 855, 3, 2, 2, 2, 9958, 9960, 7, 377, 2, 2, 9959, 9958, 3, 2, 2, 2, 9959, 9960, 3, 2, 2, 2, 9960, 9961, 3, 2, 2, 2, 9961, 9962, 7, 828, 2, 2, 9962, 9969, 5, 860, 431, 2, 9963, 9965, 7, 830, 2, 2, 9964, 9963, 3, 2, 2, 2, 9964, 9965, 3, 2, 2, 2, 9965, 9966, 3, 2, 2, 2, 9966, 9968, 5, 860, 431, 2, 9967, 9964, 3, 2, 2, 2, 9968, 9971, 3, 2, 2, 2, 9969, 9967, 3, 2, 2, 2, 9969, 9970, 3, 2, 2, 2, 9970, 9972, 3, 2, 2, 2, 9971, 9969, 3, 2, 2, 2, 9972, 9973, 7, 829, 2, 2, 9973, 857, 3, 2, 2, 2, 9974, 9975, 7, 377, 2, 2, 9975, 9976, 7, 828, 2, 2, 9976, 9983, 5, 860, 431, 2, 9977, 9979, 7, 830, 2, 2, 9978, 9977, 3, 2, 2, 2, 9978, 9979, 3, 2, 2, 2, 9979, 9980, 3, 2, 2, 2, 9980, 9982, 5, 860, 431, 2, 9981, 9978, 3, 2, 2, 2, 9982, 9985, 3, 2, 2, 2, 9983, 9981, 3, 2, 2, 2, 9983, 9984, 3, 2, 2, 2, 9984, 9986, 3, 2, 2, 2, 9985, 9983, 3, 2, 2, 2, 9986, 9987, 7, 829, 2, 2, 9987, 859, 3, 2, 2, 2, 9988, 9990, 7, 616, 2, 2, 9989, 9988, 3, 2, 2, 2, 9989, 9990, 3, 2, 2, 2, 9990, 10039, 3, 2, 2, 2, 9991, 10011, 7, 158, 2, 2, 9992, 9993, 7, 828, 2, 2, 9993, 9998, 5, 862, 432, 2, 9994, 9995, 7, 830, 2, 2, 9995, 9997, 5, 862, 432, 2, 9996, 9994, 3, 2, 2, 2, 9997, 10000, 3, 2, 2, 2, 9998, 9996, 3, 2, 2, 2, 9998, 9999, 3, 2, 2, 2, 9999, 10001, 3, 2, 2, 2, 10000, 9998, 3, 2, 2, 2, 10001, 10002, 7, 829, 2, 2, 10002, 10012, 3, 2, 2, 2, 10003, 10008, 5, 862, 432, 2, 10004, 10005, 7, 830, 2, 2, 10005, 10007, 5, 862, 432, 2, 10006, 10004, 3, 2, 2, 2, 10007, 10010, 3, 2, 2, 2, 10008, 10006, 3, 2, 2, 2, 10008, 10009, 3, 2, 2, 2, 10009, 10012, 3, 2, 2, 2, 10010, 10008, 3, 2, 2, 2, 10011, 9992, 3, 2, 2, 2, 10011, 10003, 3, 2, 2, 2, 10012, 10040, 3, 2, 2, 2, 10013, 10014, 7, 158, 2, 2, 10014, 10015, 7, 810, 2, 2, 10015, 10040, 5, 862, 432, 2, 10016, 10031, 7, 134, 2, 2, 10017, 10018, 7, 828, 2, 2, 10018, 10019, 5, 862, 432, 2, 10019, 10020, 7, 828, 2, 2, 10020, 10025, 7, 803, 2, 2, 10021, 10022, 7, 830, 2, 2, 10022, 10024, 7, 803, 2, 2, 10023, 10021, 3, 2, 2, 2, 10024, 10027, 3, 2, 2, 2, 10025, 10023, 3, 2, 2, 2, 10025, 10026, 3, 2, 2, 2, 10026, 10028, 3, 2, 2, 2, 10027, 10025, 3, 2, 2, 2, 10028, 10029, 7, 829, 2, 2, 10029, 10030, 7, 829, 2, 2, 10030, 10032, 3, 2, 2, 2, 10031, 10017, 3, 2, 2, 2, 10031, 10032, 3, 2, 2, 2, 10032, 10040, 3, 2, 2, 2, 10033, 10040, 7, 720, 2, 2, 10034, 10040, 7, 730, 2, 2, 10035, 10036, 7, 731, 2, 2, 10036, 10037, 7, 810, 2, 2, 10037, 10040, 7, 802, 2, 2, 10038, 10040, 7, 803, 2, 2, 10039, 9991, 3, 2, 2, 2, 10039, 10013, 3, 2, 2, 2, 10039, 10016, 3, 2, 2, 2, 10039, 10033, 3, 2, 2, 2, 10039, 10034, 3, 2, 2, 2, 10039, 10035, 3, 2, 2, 2, 10039, 10038, 3, 2, 2, 2, 10040, 861, 3, 2, 2, 2, 10041, 10044, 5, 966, 484, 2, 10042, 10044, 7, 802, 2, 2, 10043, 10041, 3, 2, 2, 2, 10043, 10042, 3, 2, 2, 2, 10044, 863, 3, 2, 2, 2, 10045, 10046, 7, 828, 2, 2, 10046, 10051, 5, 866, 434, 2, 10047, 10048, 7, 830, 2, 2, 10048, 10050, 5, 866, 434, 2, 10049, 10047, 3, 2, 2, 2, 10050, 10053, 3, 2, 2, 2, 10051, 10049, 3, 2, 2, 2, 10051, 10052, 3, 2, 2, 2, 10052, 10054, 3, 2, 2, 2, 10053, 10051, 3, 2, 2, 2, 10054, 10055, 7, 829, 2, 2, 10055, 865, 3, 2, 2, 2, 10056, 10059, 5, 966, 484, 2, 10057, 10059, 7, 806, 2, 2, 10058, 10056, 3, 2, 2, 2, 10058, 10057, 3, 2, 2, 2, 10059, 867, 3, 2, 2, 2, 10060, 10061, 7, 367, 2, 2, 10061, 10062, 7, 828, 2, 2, 10062, 10063, 5, 870, 436, 2, 10063, 10071, 7, 829, 2, 2, 10064, 10065, 7, 830, 2, 2, 10065, 10066, 7, 828, 2, 2, 10066, 10067, 5, 870, 436, 2, 10067, 10068, 7, 829, 2, 2, 10068, 10070, 3, 2, 2, 2, 10069, 10064, 3, 2, 2, 2, 10070, 10073, 3, 2, 2, 2, 10071, 10069, 3, 2, 2, 2, 10071, 10072, 3, 2, 2, 2, 10072, 869, 3, 2, 2, 2, 10073, 10071, 3, 2, 2, 2, 10074, 10079, 5, 728, 365, 2, 10075, 10076, 7, 830, 2, 2, 10076, 10078, 5, 728, 365, 2, 10077, 10075, 3, 2, 2, 2, 10078, 10081, 3, 2, 2, 2, 10079, 10077, 3, 2, 2, 2, 10079, 10080, 3, 2, 2, 2, 10080, 871, 3, 2, 2, 2, 10081, 10079, 3, 2, 2, 2, 10082, 10083, 9, 125, 2, 2, 10083, 10084, 7, 828, 2, 2, 10084, 10085, 7, 829, 2, 2, 10085, 10093, 5, 880, 441, 2, 10086, 10087, 7, 621, 2, 2, 10087, 10088, 7, 828, 2, 2, 10088, 10089, 5, 728, 365, 2, 10089, 10090, 7, 829, 2, 2, 10090, 10091, 5, 880, 441, 2, 10091, 10093, 3, 2, 2, 2, 10092, 10082, 3, 2, 2, 2, 10092, 10086, 3, 2, 2, 2, 10093, 873, 3, 2, 2, 2, 10094, 10095, 9, 126, 2, 2, 10095, 10096, 7, 828, 2, 2, 10096, 10097, 5, 878, 440, 2, 10097, 10099, 7, 829, 2, 2, 10098, 10100, 5, 880, 441, 2, 10099, 10098, 3, 2, 2, 2, 10099, 10100, 3, 2, 2, 2, 10100, 10127, 3, 2, 2, 2, 10101, 10102, 9, 127, 2, 2, 10102, 10105, 7, 828, 2, 2, 10103, 10106, 7, 833, 2, 2, 10104, 10106, 5, 878, 440, 2, 10105, 10103, 3, 2, 2, 2, 10105, 10104, 3, 2, 2, 2, 10106, 10107, 3, 2, 2, 2, 10107, 10109, 7, 829, 2, 2, 10108, 10110, 5, 880, 441, 2, 10109, 10108, 3, 2, 2, 2, 10109, 10110, 3, 2, 2, 2, 10110, 10127, 3, 2, 2, 2, 10111, 10112, 7, 435, 2, 2, 10112, 10113, 7, 828, 2, 2, 10113, 10114, 5, 878, 440, 2, 10114, 10115, 7, 829, 2, 2, 10115, 10127, 3, 2, 2, 2, 10116, 10117, 7, 528, 2, 2, 10117, 10118, 7, 828, 2, 2, 10118, 10119, 5, 728, 365, 2, 10119, 10120, 7, 829, 2, 2, 10120, 10127, 3, 2, 2, 2, 10121, 10122, 7, 529, 2, 2, 10122, 10123, 7, 828, 2, 2, 10123, 10124, 5, 870, 436, 2, 10124, 10125, 7, 829, 2, 2, 10125, 10127, 3, 2, 2, 2, 10126, 10094, 3, 2, 2, 2, 10126, 10101, 3, 2, 2, 2, 10126, 10111, 3, 2, 2, 2, 10126, 10116, 3, 2, 2, 2, 10126, 10121, 3, 2, 2, 2, 10127, 875, 3, 2, 2, 2, 10128, 10129, 9, 128, 2, 2, 10129, 10130, 7, 828, 2, 2, 10130, 10131, 5, 728, 365, 2, 10131, 10132, 7, 829, 2, 2, 10132, 10133, 5, 880, 441, 2, 10133, 10149, 3, 2, 2, 2, 10134, 10135, 9, 129, 2, 2, 10135, 10136, 7, 828, 2, 2, 10136, 10143, 5, 728, 365, 2, 10137, 10138, 7, 830, 2, 2, 10138, 10141, 5, 728, 365, 2, 10139, 10140, 7, 830, 2, 2, 10140, 10142, 5, 728, 365, 2, 10141, 10139, 3, 2, 2, 2, 10141, 10142, 3, 2, 2, 2, 10142, 10144, 3, 2, 2, 2, 10143, 10137, 3, 2, 2, 2, 10143, 10144, 3, 2, 2, 2, 10144, 10145, 3, 2, 2, 2, 10145, 10146, 7, 829, 2, 2, 10146, 10147, 5, 880, 441, 2, 10147, 10149, 3, 2, 2, 2, 10148, 10128, 3, 2, 2, 2, 10148, 10134, 3, 2, 2, 2, 10149, 877, 3, 2, 2, 2, 10150, 10152, 9, 111, 2, 2, 10151, 10150, 3, 2, 2, 2, 10151, 10152, 3, 2, 2, 2, 10152, 10153, 3, 2, 2, 2, 10153, 10154, 5, 728, 365, 2, 10154, 879, 3, 2, 2, 2, 10155, 10156, 7, 240, 2, 2, 10156, 10160, 7, 828, 2, 2, 10157, 10158, 7, 640, 2, 2, 10158, 10159, 7, 38, 2, 2, 10159, 10161, 5, 870, 436, 2, 10160, 10157, 3, 2, 2, 2, 10160, 10161, 3, 2, 2, 2, 10161, 10163, 3, 2, 2, 2, 10162, 10164, 5, 770, 386, 2, 10163, 10162, 3, 2, 2, 2, 10163, 10164, 3, 2, 2, 2, 10164, 10166, 3, 2, 2, 2, 10165, 10167, 5, 882, 442, 2, 10166, 10165, 3, 2, 2, 2, 10166, 10167, 3, 2, 2, 2, 10167, 10168, 3, 2, 2, 2, 10168, 10169, 7, 829, 2, 2, 10169, 881, 3, 2, 2, 2, 10170, 10171, 9, 130, 2, 2, 10171, 10172, 5, 884, 443, 2, 10172, 883, 3, 2, 2, 2, 10173, 10180, 5, 888, 445, 2, 10174, 10175, 7, 29, 2, 2, 10175, 10176, 5, 886, 444, 2, 10176, 10177, 7, 11, 2, 2, 10177, 10178, 5, 886, 444, 2, 10178, 10180, 3, 2, 2, 2, 10179, 10173, 3, 2, 2, 2, 10179, 10174, 3, 2, 2, 2, 10180, 885, 3, 2, 2, 2, 10181, 10184, 5, 888, 445, 2, 10182, 10184, 5, 890, 446, 2, 10183, 10181, 3, 2, 2, 2, 10183, 10182, 3, 2, 2, 2, 10184, 887, 3, 2, 2, 2, 10185, 10186, 7, 771, 2, 2, 10186, 10192, 7, 647, 2, 2, 10187, 10188, 7, 802, 2, 2, 10188, 10192, 7, 647, 2, 2, 10189, 10190, 7, 75, 2, 2, 10190, 10192, 7, 697, 2, 2, 10191, 10185, 3, 2, 2, 2, 10191, 10187, 3, 2, 2, 2, 10191, 10189, 3, 2, 2, 2, 10192, 889, 3, 2, 2, 2, 10193, 10194, 7, 771, 2, 2, 10194, 10198, 7, 514, 2, 2, 10195, 10196, 7, 802, 2, 2, 10196, 10198, 7, 514, 2, 2, 10197, 10193, 3, 2, 2, 2, 10197, 10195, 3, 2, 2, 2, 10198, 891, 3, 2, 2, 2, 10199, 10200, 7, 510, 2, 2, 10200, 10205, 5, 894, 448, 2, 10201, 10202, 7, 830, 2, 2, 10202, 10204, 5, 894, 448, 2, 10203, 10201, 3, 2, 2, 2, 10204, 10207, 3, 2, 2, 2, 10205, 10203, 3, 2, 2, 2, 10205, 10206, 3, 2, 2, 2, 10206, 10234, 3, 2, 2, 2, 10207, 10205, 3, 2, 2, 2, 10208, 10209, 7, 468, 2, 2, 10209, 10212, 7, 810, 2, 2, 10210, 10213, 5, 966, 484, 2, 10211, 10213, 7, 806, 2, 2, 10212, 10210, 3, 2, 2, 2, 10212, 10211, 3, 2, 2, 2, 10213, 10234, 3, 2, 2, 2, 10214, 10215, 7, 467, 2, 2, 10215, 10218, 7, 810, 2, 2, 10216, 10219, 5, 966, 484, 2, 10217, 10219, 7, 806, 2, 2, 10218, 10216, 3, 2, 2, 2, 10218, 10217, 3, 2, 2, 2, 10219, 10234, 3, 2, 2, 2, 10220, 10221, 7, 606, 2, 2, 10221, 10222, 7, 810, 2, 2, 10222, 10234, 9, 9, 2, 2, 10223, 10224, 7, 762, 2, 2, 10224, 10225, 7, 810, 2, 2, 10225, 10234, 9, 9, 2, 2, 10226, 10227, 7, 768, 2, 2, 10227, 10228, 7, 810, 2, 2, 10228, 10234, 7, 802, 2, 2, 10229, 10230, 7, 463, 2, 2, 10230, 10234, 9, 9, 2, 2, 10231, 10232, 7, 765, 2, 2, 10232, 10234, 9, 9, 2, 2, 10233, 10199, 3, 2, 2, 2, 10233, 10208, 3, 2, 2, 2, 10233, 10214, 3, 2, 2, 2, 10233, 10220, 3, 2, 2, 2, 10233, 10223, 3, 2, 2, 2, 10233, 10226, 3, 2, 2, 2, 10233, 10229, 3, 2, 2, 2, 10233, 10231, 3, 2, 2, 2, 10234, 893, 3, 2, 2, 2, 10235, 10242, 7, 828, 2, 2, 10236, 10237, 7, 617, 2, 2, 10237, 10238, 7, 810, 2, 2, 10238, 10243, 9, 131, 2, 2, 10239, 10240, 7, 479, 2, 2, 10240, 10241, 7, 810, 2, 2, 10241, 10243, 7, 806, 2, 2, 10242, 10236, 3, 2, 2, 2, 10242, 10239, 3, 2, 2, 2, 10243, 10244, 3, 2, 2, 2, 10244, 10245, 7, 829, 2, 2, 10245, 895, 3, 2, 2, 2, 10246, 10249, 5, 898, 450, 2, 10247, 10249, 5, 900, 451, 2, 10248, 10246, 3, 2, 2, 2, 10248, 10247, 3, 2, 2, 2, 10249, 897, 3, 2, 2, 2, 10250, 10251, 7, 507, 2, 2, 10251, 10254, 5, 966, 484, 2, 10252, 10253, 7, 63, 2, 2, 10253, 10255, 7, 510, 2, 2, 10254, 10252, 3, 2, 2, 2, 10254, 10255, 3, 2, 2, 2, 10255, 10257, 3, 2, 2, 2, 10256, 10258, 7, 89, 2, 2, 10257, 10256, 3, 2, 2, 2, 10257, 10258, 3, 2, 2, 2, 10258, 10261, 3, 2, 2, 2, 10259, 10260, 7, 63, 2, 2, 10260, 10262, 7, 591, 2, 2, 10261, 10259, 3, 2, 2, 2, 10261, 10262, 3, 2, 2, 2, 10262, 10263, 3, 2, 2, 2, 10263, 10268, 5, 900, 451, 2, 10264, 10265, 7, 830, 2, 2, 10265, 10267, 5, 900, 451, 2, 10266, 10264, 3, 2, 2, 2, 10267, 10270, 3, 2, 2, 2, 10268, 10266, 3, 2, 2, 2, 10268, 10269, 3, 2, 2, 2, 10269, 899, 3, 2, 2, 2, 10270, 10268, 3, 2, 2, 2, 10271, 10272, 7, 828, 2, 2, 10272, 10273, 7, 605, 2, 2, 10273, 10276, 7, 810, 2, 2, 10274, 10277, 5, 966, 484, 2, 10275, 10277, 7, 806, 2, 2, 10276, 10274, 3, 2, 2, 2, 10276, 10275, 3, 2, 2, 2, 10277, 10279, 3, 2, 2, 2, 10278, 10280, 7, 830, 2, 2, 10279, 10278, 3, 2, 2, 2, 10279, 10280, 3, 2, 2, 2, 10280, 10281, 3, 2, 2, 2, 10281, 10282, 7, 130, 2, 2, 10282, 10283, 7, 810, 2, 2, 10283, 10285, 7, 806, 2, 2, 10284, 10286, 7, 830, 2, 2, 10285, 10284, 3, 2, 2, 2, 10285, 10286, 3, 2, 2, 2, 10286, 10293, 3, 2, 2, 2, 10287, 10288, 7, 728, 2, 2, 10288, 10289, 7, 810, 2, 2, 10289, 10291, 5, 974, 488, 2, 10290, 10292, 7, 830, 2, 2, 10291, 10290, 3, 2, 2, 2, 10291, 10292, 3, 2, 2, 2, 10292, 10294, 3, 2, 2, 2, 10293, 10287, 3, 2, 2, 2, 10293, 10294, 3, 2, 2, 2, 10294, 10304, 3, 2, 2, 2, 10295, 10296, 7, 588, 2, 2, 10296, 10299, 7, 810, 2, 2, 10297, 10300, 5, 974, 488, 2, 10298, 10300, 7, 774, 2, 2, 10299, 10297, 3, 2, 2, 2, 10299, 10298, 3, 2, 2, 2, 10300, 10302, 3, 2, 2, 2, 10301, 10303, 7, 830, 2, 2, 10302, 10301, 3, 2, 2, 2, 10302, 10303, 3, 2, 2, 2, 10303, 10305, 3, 2, 2, 2, 10304, 10295, 3, 2, 2, 2, 10304, 10305, 3, 2, 2, 2, 10305, 10312, 3, 2, 2, 2, 10306, 10307, 7, 508, 2, 2, 10307, 10308, 7, 810, 2, 2, 10308, 10310, 5, 974, 488, 2, 10309, 10311, 7, 830, 2, 2, 10310, 10309, 3, 2, 2, 2, 10310, 10311, 3, 2, 2, 2, 10311, 10313, 3, 2, 2, 2, 10312, 10306, 3, 2, 2, 2, 10312, 10313, 3, 2, 2, 2, 10313, 10314, 3, 2, 2, 2, 10314, 10315, 7, 829, 2, 2, 10315, 901, 3, 2, 2, 2, 10316, 10317, 5, 966, 484, 2, 10317, 10318, 7, 823, 2, 2, 10318, 10319, 5, 966, 484, 2, 10319, 10320, 7, 823, 2, 2, 10320, 10321, 5, 966, 484, 2, 10321, 10322, 7, 823, 2, 2, 10322, 10334, 3, 2, 2, 2, 10323, 10324, 5, 966, 484, 2, 10324, 10326, 7, 823, 2, 2, 10325, 10327, 5, 966, 484, 2, 10326, 10325, 3, 2, 2, 2, 10326, 10327, 3, 2, 2, 2, 10327, 10328, 3, 2, 2, 2, 10328, 10329, 7, 823, 2, 2, 10329, 10334, 3, 2, 2, 2, 10330, 10331, 5, 966, 484, 2, 10331, 10332, 7, 823, 2, 2, 10332, 10334, 3, 2, 2, 2, 10333, 10316, 3, 2, 2, 2, 10333, 10323, 3, 2, 2, 2, 10333, 10330, 3, 2, 2, 2, 10333, 10334, 3, 2, 2, 2, 10334, 10335, 3, 2, 2, 2, 10335, 10336, 5, 966, 484, 2, 10336, 903, 3, 2, 2, 2, 10337, 10343, 5, 966, 484, 2, 10338, 10339, 5, 966, 484, 2, 10339, 10340, 7, 823, 2, 2, 10340, 10341, 5, 966, 484, 2, 10341, 10343, 3, 2, 2, 2, 10342, 10337, 3, 2, 2, 2, 10342, 10338, 3, 2, 2, 2, 10343, 905, 3, 2, 2, 2, 10344, 10350, 5, 966, 484, 2, 10345, 10346, 5, 966, 484, 2, 10346, 10347, 7, 823, 2, 2, 10347, 10348, 5, 966, 484, 2, 10348, 10350, 3, 2, 2, 2, 10349, 10344, 3, 2, 2, 2, 10349, 10345, 3, 2, 2, 2, 10350, 907, 3, 2, 2, 2, 10351, 10352, 5, 966, 484, 2, 10352, 10353, 7, 823, 2, 2, 10353, 10354, 5, 966, 484, 2, 10354, 10355, 7, 823, 2, 2, 10355, 10356, 5, 966, 484, 2, 10356, 10357, 7, 823, 2, 2, 10357, 10369, 3, 2, 2, 2, 10358, 10359, 5, 966, 484, 2, 10359, 10361, 7, 823, 2, 2, 10360, 10362, 5, 966, 484, 2, 10361, 10360, 3, 2, 2, 2, 10361, 10362, 3, 2, 2, 2, 10362, 10363, 3, 2, 2, 2, 10363, 10364, 7, 823, 2, 2, 10364, 10369, 3, 2, 2, 2, 10365, 10366, 5, 966, 484, 2, 10366, 10367, 7, 823, 2, 2, 10367, 10369, 3, 2, 2, 2, 10368, 10351, 3, 2, 2, 2, 10368, 10358, 3, 2, 2, 2, 10368, 10365, 3, 2, 2, 2, 10368, 10369, 3, 2, 2, 2, 10369, 10370, 3, 2, 2, 2, 10370, 10371, 5, 966, 484, 2, 10371, 909, 3, 2, 2, 2, 10372, 10373, 5, 966, 484, 2, 10373, 10375, 7, 823, 2, 2, 10374, 10376, 5, 966, 484, 2, 10375, 10374, 3, 2, 2, 2, 10375, 10376, 3, 2, 2, 2, 10376, 10377, 3, 2, 2, 2, 10377, 10378, 7, 823, 2, 2, 10378, 10383, 3, 2, 2, 2, 10379, 10380, 5, 966, 484, 2, 10380, 10381, 7, 823, 2, 2, 10381, 10383, 3, 2, 2, 2, 10382, 10372, 3, 2, 2, 2, 10382, 10379, 3, 2, 2, 2, 10382, 10383, 3, 2, 2, 2, 10383, 10384, 3, 2, 2, 2, 10384, 10399, 5, 966, 484, 2, 10385, 10386, 5, 966, 484, 2, 10386, 10388, 7, 823, 2, 2, 10387, 10389, 5, 966, 484, 2, 10388, 10387, 3, 2, 2, 2, 10388, 10389, 3, 2, 2, 2, 10389, 10390, 3, 2, 2, 2, 10390, 10391, 7, 823, 2, 2, 10391, 10396, 3, 2, 2, 2, 10392, 10393, 5, 966, 484, 2, 10393, 10394, 7, 823, 2, 2, 10394, 10396, 3, 2, 2, 2, 10395, 10385, 3, 2, 2, 2, 10395, 10392, 3, 2, 2, 2, 10395, 10396, 3, 2, 2, 2, 10396, 10397, 3, 2, 2, 2, 10397, 10399, 7, 32, 2, 2, 10398, 10382, 3, 2, 2, 2, 10398, 10395, 3, 2, 2, 2, 10399, 911, 3, 2, 2, 2, 10400, 10401, 5, 966, 484, 2, 10401, 10402, 7, 823, 2, 2, 10402, 10404, 3, 2, 2, 2, 10403, 10400, 3, 2, 2, 2, 10403, 10404, 3, 2, 2, 2, 10404, 10405, 3, 2, 2, 2, 10405, 10406, 5, 966, 484, 2, 10406, 913, 3, 2, 2, 2, 10407, 10408, 5, 966, 484, 2, 10408, 10409, 7, 823, 2, 2, 10409, 10411, 3, 2, 2, 2, 10410, 10407, 3, 2, 2, 2, 10410, 10411, 3, 2, 2, 2, 10411, 10412, 3, 2, 2, 2, 10412, 10413, 5, 966, 484, 2, 10413, 915, 3, 2, 2, 2, 10414, 10426, 5, 914, 458, 2, 10415, 10416, 5, 966, 484, 2, 10416, 10418, 7, 823, 2, 2, 10417, 10419, 5, 966, 484, 2, 10418, 10417, 3, 2, 2, 2, 10418, 10419, 3, 2, 2, 2, 10419, 10420, 3, 2, 2, 2, 10420, 10421, 7, 823, 2, 2, 10421, 10423, 3, 2, 2, 2, 10422, 10415, 3, 2, 2, 2, 10422, 10423, 3, 2, 2, 2, 10423, 10424, 3, 2, 2, 2, 10424, 10426, 5, 966, 484, 2, 10425, 10414, 3, 2, 2, 2, 10425, 10422, 3, 2, 2, 2, 10426, 917, 3, 2, 2, 2, 10427, 10441, 5, 916, 459, 2, 10428, 10429, 5, 966, 484, 2, 10429, 10430, 7, 823, 2, 2, 10430, 10431, 5, 966, 484, 2, 10431, 10433, 7, 823, 2, 2, 10432, 10434, 5, 966, 484, 2, 10433, 10432, 3, 2, 2, 2, 10433, 10434, 3, 2, 2, 2, 10434, 10435, 3, 2, 2, 2, 10435, 10436, 7, 823, 2, 2, 10436, 10438, 3, 2, 2, 2, 10437, 10428, 3, 2, 2, 2, 10437, 10438, 3, 2, 2, 2, 10438, 10439, 3, 2, 2, 2, 10439, 10441, 5, 966, 484, 2, 10440, 10427, 3, 2, 2, 2, 10440, 10437, 3, 2, 2, 2, 10441, 919, 3, 2, 2, 2, 10442, 10445, 5, 908, 455, 2, 10443, 10445, 7, 801, 2, 2, 10444, 10442, 3, 2, 2, 2, 10444, 10443, 3, 2, 2, 2, 10445, 921, 3, 2, 2, 2, 10446, 10447, 5, 910, 456, 2, 10447, 10448, 7, 823, 2, 2, 10448, 10450, 3, 2, 2, 2, 10449, 10446, 3, 2, 2, 2, 10449, 10450, 3, 2, 2, 2, 10450, 10451, 3, 2, 2, 2, 10451, 10495, 5, 966, 484, 2, 10452, 10453, 5, 910, 456, 2, 10453, 10454, 7, 823, 2, 2, 10454, 10456, 3, 2, 2, 2, 10455, 10452, 3, 2, 2, 2, 10455, 10456, 3, 2, 2, 2, 10456, 10457, 3, 2, 2, 2, 10457, 10495, 7, 440, 2, 2, 10458, 10459, 5, 910, 456, 2, 10459, 10460, 7, 823, 2, 2, 10460, 10462, 3, 2, 2, 2, 10461, 10458, 3, 2, 2, 2, 10461, 10462, 3, 2, 2, 2, 10462, 10463, 3, 2, 2, 2, 10463, 10495, 7, 736, 2, 2, 10464, 10465, 5, 910, 456, 2, 10465, 10466, 7, 823, 2, 2, 10466, 10468, 3, 2, 2, 2, 10467, 10464, 3, 2, 2, 2, 10467, 10468, 3, 2, 2, 2, 10468, 10469, 3, 2, 2, 2, 10469, 10495, 7, 662, 2, 2, 10470, 10471, 5, 910, 456, 2, 10471, 10472, 7, 823, 2, 2, 10472, 10474, 3, 2, 2, 2, 10473, 10470, 3, 2, 2, 2, 10473, 10474, 3, 2, 2, 2, 10474, 10475, 3, 2, 2, 2, 10475, 10495, 7, 404, 2, 2, 10476, 10477, 5, 910, 456, 2, 10477, 10478, 7, 823, 2, 2, 10478, 10480, 3, 2, 2, 2, 10479, 10476, 3, 2, 2, 2, 10479, 10480, 3, 2, 2, 2, 10480, 10481, 3, 2, 2, 2, 10481, 10495, 7, 401, 2, 2, 10482, 10483, 5, 910, 456, 2, 10483, 10484, 7, 823, 2, 2, 10484, 10486, 3, 2, 2, 2, 10485, 10482, 3, 2, 2, 2, 10485, 10486, 3, 2, 2, 2, 10486, 10487, 3, 2, 2, 2, 10487, 10495, 7, 400, 2, 2, 10488, 10489, 5, 910, 456, 2, 10489, 10490, 7, 823, 2, 2, 10490, 10492, 3, 2, 2, 2, 10491, 10488, 3, 2, 2, 2, 10491, 10492, 3, 2, 2, 2, 10492, 10493, 3, 2, 2, 2, 10493, 10495, 7, 399, 2, 2, 10494, 10449, 3, 2, 2, 2, 10494, 10455, 3, 2, 2, 2, 10494, 10461, 3, 2, 2, 2, 10494, 10467, 3, 2, 2, 2, 10494, 10473, 3, 2, 2, 2, 10494, 10479, 3, 2, 2, 2, 10494, 10485, 3, 2, 2, 2, 10494, 10491, 3, 2, 2, 2, 10495, 923, 3, 2, 2, 2, 10496, 10498, 5, 966, 484, 2, 10497, 10499, 9, 117, 2, 2, 10498, 10497, 3, 2, 2, 2, 10498, 10499, 3, 2, 2, 2, 10499, 10507, 3, 2, 2, 2, 10500, 10501, 7, 830, 2, 2, 10501, 10503, 5, 966, 484, 2, 10502, 10504, 9, 117, 2, 2, 10503, 10502, 3, 2, 2, 2, 10503, 10504, 3, 2, 2, 2, 10504, 10506, 3, 2, 2, 2, 10505, 10500, 3, 2, 2, 2, 10506, 10509, 3, 2, 2, 2, 10507, 10505, 3, 2, 2, 2, 10507, 10508, 3, 2, 2, 2, 10508, 925, 3, 2, 2, 2, 10509, 10507, 3, 2, 2, 2, 10510, 10515, 5, 966, 484, 2, 10511, 10512, 7, 830, 2, 2, 10512, 10514, 5, 966, 484, 2, 10513, 10511, 3, 2, 2, 2, 10514, 10517, 3, 2, 2, 2, 10515, 10513, 3, 2, 2, 2, 10515, 10516, 3, 2, 2, 2, 10516, 927, 3, 2, 2, 2, 10517, 10515, 3, 2, 2, 2, 10518, 10521, 5, 966, 484, 2, 10519, 10521, 7, 801, 2, 2, 10520, 10518, 3, 2, 2, 2, 10520, 10519, 3, 2, 2, 2, 10521, 929, 3, 2, 2, 2, 10522, 10523, 9, 9, 2, 2, 10523, 931, 3, 2, 2, 2, 10524, 10525, 9, 132, 2, 2, 10525, 933, 3, 2, 2, 2, 10526, 10528, 7, 220, 2, 2, 10527, 10526, 3, 2, 2, 2, 10527, 10528, 3, 2, 2, 2, 10528, 10529, 3, 2, 2, 2, 10529, 10530, 7, 223, 2, 2, 10530, 935, 3, 2, 2, 2, 10531, 10539, 5, 934, 468, 2, 10532, 10533, 7, 89, 2, 2, 10533, 10536, 5, 738, 370, 2, 10534, 10535, 7, 377, 2, 2, 10535, 10537, 7, 367, 2, 2, 10536, 10534, 3, 2, 2, 2, 10536, 10537, 3, 2, 2, 2, 10537, 10539, 3, 2, 2, 2, 10538, 10531, 3, 2, 2, 2, 10538, 10532, 3, 2, 2, 2, 10539, 937, 3, 2, 2, 2, 10540, 10546, 5, 918, 460, 2, 10541, 10546, 7, 287, 2, 2, 10542, 10546, 7, 177, 2, 2, 10543, 10546, 7, 421, 2, 2, 10544, 10546, 7, 434, 2, 2, 10545, 10540, 3, 2, 2, 2, 10545, 10541, 3, 2, 2, 2, 10545, 10542, 3, 2, 2, 2, 10545, 10543, 3, 2, 2, 2, 10545, 10544, 3, 2, 2, 2, 10546, 939, 3, 2, 2, 2, 10547, 10548, 7, 28, 2, 2, 10548, 10549, 7, 70, 2, 2, 10549, 10550, 7, 759, 2, 2, 10550, 10551, 7, 828, 2, 2, 10551, 10552, 7, 801, 2, 2, 10552, 10553, 7, 829, 2, 2, 10553, 10554, 7, 758, 2, 2, 10554, 10555, 7, 810, 2, 2, 10555, 10557, 5, 448, 225, 2, 10556, 10558, 7, 831, 2, 2, 10557, 10556, 3, 2, 2, 2, 10557, 10558, 3, 2, 2, 2, 10558, 941, 3, 2, 2, 2, 10559, 10560, 7, 28, 2, 2, 10560, 10562, 7, 478, 2, 2, 10561, 10563, 7, 70, 2, 2, 10562, 10561, 3, 2, 2, 2, 10562, 10563, 3, 2, 2, 2, 10563, 10564, 3, 2, 2, 2, 10564, 10565, 7, 801, 2, 2, 10565, 10566, 7, 139, 2, 2, 10566, 10567, 7, 310, 2, 2, 10567, 10568, 5, 946, 474, 2, 10568, 10569, 7, 346, 2, 2, 10569, 10570, 7, 310, 2, 2, 10570, 10573, 5, 946, 474, 2, 10571, 10572, 7, 830, 2, 2, 10572, 10574, 7, 806, 2, 2, 10573, 10571, 3, 2, 2, 2, 10573, 10574, 3, 2, 2, 2, 10574, 10575, 3, 2, 2, 2, 10575, 10576, 7, 229, 2, 2, 10576, 10577, 7, 68, 2, 2, 10577, 10600, 5, 944, 473, 2, 10578, 10585, 7, 377, 2, 2, 10579, 10580, 9, 133, 2, 2, 10580, 10581, 7, 810, 2, 2, 10581, 10583, 7, 801, 2, 2, 10582, 10584, 7, 830, 2, 2, 10583, 10582, 3, 2, 2, 2, 10583, 10584, 3, 2, 2, 2, 10584, 10586, 3, 2, 2, 2, 10585, 10579, 3, 2, 2, 2, 10585, 10586, 3, 2, 2, 2, 10586, 10593, 3, 2, 2, 2, 10587, 10588, 7, 179, 2, 2, 10588, 10589, 7, 810, 2, 2, 10589, 10591, 9, 2, 2, 2, 10590, 10592, 7, 830, 2, 2, 10591, 10590, 3, 2, 2, 2, 10591, 10592, 3, 2, 2, 2, 10592, 10594, 3, 2, 2, 2, 10593, 10587, 3, 2, 2, 2, 10593, 10594, 3, 2, 2, 2, 10594, 10598, 3, 2, 2, 2, 10595, 10596, 7, 492, 2, 2, 10596, 10597, 7, 810, 2, 2, 10597, 10599, 9, 9, 2, 2, 10598, 10595, 3, 2, 2, 2, 10598, 10599, 3, 2, 2, 2, 10599, 10601, 3, 2, 2, 2, 10600, 10578, 3, 2, 2, 2, 10600, 10601, 3, 2, 2, 2, 10601, 10603, 3, 2, 2, 2, 10602, 10604, 7, 831, 2, 2, 10603, 10602, 3, 2, 2, 2, 10603, 10604, 3, 2, 2, 2, 10604, 943, 3, 2, 2, 2, 10605, 10608, 5, 966, 484, 2, 10606, 10608, 5, 728, 365, 2, 10607, 10605, 3, 2, 2, 2, 10607, 10606, 3, 2, 2, 2, 10608, 945, 3, 2, 2, 2, 10609, 10612, 5, 966, 484, 2, 10610, 10612, 5, 728, 365, 2, 10611, 10609, 3, 2, 2, 2, 10611, 10610, 3, 2, 2, 2, 10612, 947, 3, 2, 2, 2, 10613, 10614, 7, 108, 2, 2, 10614, 10615, 7, 70, 2, 2, 10615, 10617, 7, 801, 2, 2, 10616, 10618, 7, 831, 2, 2, 10617, 10616, 3, 2, 2, 2, 10617, 10618, 3, 2, 2, 2, 10618, 10631, 3, 2, 2, 2, 10619, 10626, 7, 377, 2, 2, 10620, 10621, 7, 112, 2, 2, 10621, 10622, 7, 810, 2, 2, 10622, 10623, 9, 3, 2, 2, 10623, 10624, 7, 475, 2, 2, 10624, 10625, 7, 810, 2, 2, 10625, 10627, 9, 3, 2, 2, 10626, 10620, 3, 2, 2, 2, 10626, 10627, 3, 2, 2, 2, 10627, 10629, 3, 2, 2, 2, 10628, 10630, 7, 436, 2, 2, 10629, 10628, 3, 2, 2, 2, 10629, 10630, 3, 2, 2, 2, 10630, 10632, 3, 2, 2, 2, 10631, 10619, 3, 2, 2, 2, 10631, 10632, 3, 2, 2, 2, 10632, 949, 3, 2, 2, 2, 10633, 10635, 7, 372, 2, 2, 10634, 10633, 3, 2, 2, 2, 10634, 10635, 3, 2, 2, 2, 10635, 10636, 3, 2, 2, 2, 10636, 10637, 7, 828, 2, 2, 10637, 10638, 5, 952, 477, 2, 10638, 10644, 7, 829, 2, 2, 10639, 10641, 7, 830, 2, 2, 10640, 10639, 3, 2, 2, 2, 10640, 10641, 3, 2, 2, 2, 10641, 10642, 3, 2, 2, 2, 10642, 10643, 7, 758, 2, 2, 10643, 10645, 5, 448, 225, 2, 10644, 10640, 3, 2, 2, 2, 10644, 10645, 3, 2, 2, 2, 10645, 10647, 3, 2, 2, 2, 10646, 10648, 7, 831, 2, 2, 10647, 10646, 3, 2, 2, 2, 10647, 10648, 3, 2, 2, 2, 10648, 951, 3, 2, 2, 2, 10649, 10650, 7, 142, 2, 2, 10650, 10651, 7, 70, 2, 2, 10651, 10652, 7, 146, 2, 2, 10652, 10653, 9, 3, 2, 2, 10653, 10654, 7, 139, 2, 2, 10654, 10656, 5, 954, 478, 2, 10655, 10657, 7, 831, 2, 2, 10656, 10655, 3, 2, 2, 2, 10656, 10657, 3, 2, 2, 2, 10657, 953, 3, 2, 2, 2, 10658, 10659, 5, 966, 484, 2, 10659, 10660, 7, 823, 2, 2, 10660, 10661, 5, 966, 484, 2, 10661, 10662, 7, 823, 2, 2, 10662, 10663, 5, 966, 484, 2, 10663, 10666, 3, 2, 2, 2, 10664, 10666, 5, 966, 484, 2, 10665, 10658, 3, 2, 2, 2, 10665, 10664, 3, 2, 2, 2, 10666, 955, 3, 2, 2, 2, 10667, 10668, 7, 717, 2, 2, 10668, 10669, 7, 229, 2, 2, 10669, 10670, 7, 70, 2, 2, 10670, 10671, 9, 3, 2, 2, 10671, 10672, 7, 592, 2, 2, 10672, 10673, 7, 769, 2, 2, 10673, 10677, 5, 728, 365, 2, 10674, 10675, 7, 828, 2, 2, 10675, 10676, 9, 3, 2, 2, 10676, 10678, 7, 829, 2, 2, 10677, 10674, 3, 2, 2, 2, 10677, 10678, 3, 2, 2, 2, 10678, 10680, 3, 2, 2, 2, 10679, 10681, 7, 831, 2, 2, 10680, 10679, 3, 2, 2, 2, 10680, 10681, 3, 2, 2, 2, 10681, 957, 3, 2, 2, 2, 10682, 10684, 5, 966, 484, 2, 10683, 10685, 7, 150, 2, 2, 10684, 10683, 3, 2, 2, 2, 10684, 10685, 3, 2, 2, 2, 10685, 10693, 3, 2, 2, 2, 10686, 10687, 7, 828, 2, 2, 10687, 10690, 9, 134, 2, 2, 10688, 10689, 7, 830, 2, 2, 10689, 10691, 7, 802, 2, 2, 10690, 10688, 3, 2, 2, 2, 10690, 10691, 3, 2, 2, 2, 10691, 10692, 3, 2, 2, 2, 10692, 10694, 7, 829, 2, 2, 10693, 10686, 3, 2, 2, 2, 10693, 10694, 3, 2, 2, 2, 10694, 10704, 3, 2, 2, 2, 10695, 10697, 7, 100, 2, 2, 10696, 10698, 7, 254, 2, 2, 10697, 10696, 3, 2, 2, 2, 10697, 10698, 3, 2, 2, 2, 10698, 10704, 3, 2, 2, 2, 10699, 10704, 7, 547, 2, 2, 10700, 10704, 7, 760, 2, 2, 10701, 10704, 7, 729, 2, 2, 10702, 10704, 7, 419, 2, 2, 10703, 10682, 3, 2, 2, 2, 10703, 10695, 3, 2, 2, 2, 10703, 10699, 3, 2, 2, 2, 10703, 10700, 3, 2, 2, 2, 10703, 10701, 3, 2, 2, 2, 10703, 10702, 3, 2, 2, 2, 10704, 959, 3, 2, 2, 2, 10705, 10709, 7, 223, 2, 2, 10706, 10709, 7, 89, 2, 2, 10707, 10709, 5, 962, 482, 2, 10708, 10705, 3, 2, 2, 2, 10708, 10706, 3, 2, 2, 2, 10708, 10707, 3, 2, 2, 2, 10709, 961, 3, 2, 2, 2, 10710, 10726, 7, 806, 2, 2, 10711, 10726, 7, 807, 2, 2, 10712, 10714, 5, 964, 483, 2, 10713, 10712, 3, 2, 2, 2, 10713, 10714, 3, 2, 2, 2, 10714, 10715, 3, 2, 2, 2, 10715, 10726, 7, 802, 2, 2, 10716, 10718, 5, 964, 483, 2, 10717, 10716, 3, 2, 2, 2, 10717, 10718, 3, 2, 2, 2, 10718, 10719, 3, 2, 2, 2, 10719, 10726, 9, 112, 2, 2, 10720, 10722, 5, 964, 483, 2, 10721, 10720, 3, 2, 2, 2, 10721, 10722, 3, 2, 2, 2, 10722, 10723, 3, 2, 2, 2, 10723, 10724, 7, 827, 2, 2, 10724, 10726, 9, 135, 2, 2, 10725, 10710, 3, 2, 2, 2, 10725, 10711, 3, 2, 2, 2, 10725, 10713, 3, 2, 2, 2, 10725, 10717, 3, 2, 2, 2, 10725, 10721, 3, 2, 2, 2, 10726, 963, 3, 2, 2, 2, 10727, 10728, 9, 109, 2, 2, 10728, 965, 3, 2, 2, 2, 10729, 10733, 5, 968, 485, 2, 10730, 10733, 7, 798, 2, 2, 10731, 10733, 7, 800, 2, 2, 10732, 10729, 3, 2, 2, 2, 10732, 10730, 3, 2, 2, 2, 10732, 10731, 3, 2, 2, 2, 10733, 967, 3, 2, 2, 2, 10734, 10735, 9, 136, 2, 2, 10735, 969, 3, 2, 2, 2, 10736, 10752, 7, 810, 2, 2, 10737, 10752, 7, 811, 2, 2, 10738, 10752, 7, 812, 2, 2, 10739, 10740, 7, 812, 2, 2, 10740, 10752, 7, 810, 2, 2, 10741, 10742, 7, 811, 2, 2, 10742, 10752, 7, 810, 2, 2, 10743, 10744, 7, 812, 2, 2, 10744, 10752, 7, 811, 2, 2, 10745, 10746, 7, 813, 2, 2, 10746, 10752, 7, 810, 2, 2, 10747, 10748, 7, 813, 2, 2, 10748, 10752, 7, 811, 2, 2, 10749, 10750, 7, 813, 2, 2, 10750, 10752, 7, 812, 2, 2, 10751, 10736, 3, 2, 2, 2, 10751, 10737, 3, 2, 2, 2, 10751, 10738, 3, 2, 2, 2, 10751, 10739, 3, 2, 2, 2, 10751, 10741, 3, 2, 2, 2, 10751, 10743, 3, 2, 2, 2, 10751, 10745, 3, 2, 2, 2, 10751, 10747, 3, 2, 2, 2, 10751, 10749, 3, 2, 2, 2, 10752, 971, 3, 2, 2, 2, 10753, 10754, 9, 137, 2, 2, 10754, 973, 3, 2, 2, 2, 10755, 10757, 7, 802, 2, 2, 10756, 10758, 9, 138, 2, 2, 10757, 10756, 3, 2, 2, 2, 10757, 10758, 3, 2, 2, 2, 10758, 975, 3, 2, 2, 2, 1525, 979, 988, 992, 998, 1001, 1005, 1009, 1018, 1025, 1186, 1193, 1207, 1211, 1214, 1218, 1222, 1226, 1231, 1236, 1238, 1242, 1245, 1252, 1255, 1264, 1267, 1278, 1281, 1286, 1291, 1294, 1299, 1303, 1306, 1310, 1313, 1316, 1323, 1327, 1329, 1334, 1340, 1344, 1357, 1363, 1366, 1375, 1378, 1398, 1406, 1411, 1414, 1419, 1422, 1427, 1435, 1440, 1443, 1448, 1454, 1459, 1476, 1479, 1482, 1485, 1490, 1499, 1514, 1531, 1542, 1548, 1563, 1578, 1587, 1591, 1596, 1602, 1608, 1611, 1616, 1621, 1629, 1639, 1658, 1666, 1679, 1681, 1693, 1695, 1702, 1711, 1717, 1726, 1741, 1751, 1761, 1801, 1824, 1860, 1878, 1881, 1886, 1889, 1894, 1897, 1902, 1905, 1910, 1913, 1921, 1924, 1932, 1945, 1956, 1961, 1965, 1971, 1994, 2006, 2017, 2022, 2026, 2032, 2034, 2047, 2070, 2077, 2086, 2091, 2094, 2099, 2102, 2107, 2112, 2140, 2147, 2152, 2159, 2161, 2172, 2178, 2193, 2207, 2210, 2212, 2217, 2221, 2224, 2226, 2232, 2235, 2237, 2243, 2245, 2267, 2275, 2283, 2285, 2287, 2296, 2317, 2330, 2345, 2349, 2384, 2387, 2392, 2410, 2413, 2418, 2444, 2458, 2463, 2471, 2476, 2483, 2504, 2541, 2546, 2565, 2577, 2580, 2585, 2588, 2594, 2609, 2614, 2622, 2625, 2630, 2635, 2638, 2662, 2669, 2674, 2679, 2684, 2686, 2693, 2706, 2712, 2717, 2725, 2741, 2748, 2753, 2758, 2761, 2767, 2773, 2778, 2783, 2788, 2791, 2797, 2803, 2814, 2817, 2827, 2833, 2837, 2841, 2870, 2883, 2889, 2899, 2902, 2922, 2926, 2930, 2935, 2950, 2957, 2966, 2974, 2977, 2982, 2987, 2995, 3001, 3005, 3011, 3016, 3020, 3027, 3035, 3043, 3052, 3057, 3061, 3064, 3068, 3074, 3079, 3087, 3095, 3101, 3107, 3110, 3115, 3118, 3125, 3127, 3130, 3136, 3139, 3144, 3147, 3152, 3155, 3160, 3163, 3168, 3171, 3174, 3177, 3184, 3188, 3195, 3202, 3208, 3221, 3225, 3230, 3240, 3249, 3253, 3265, 3271, 3276, 3278, 3298, 3302, 3310, 3319, 3325, 3331, 3339, 3341, 3351, 3355, 3358, 3362, 3367, 3373, 3376, 3380, 3388, 3390, 3393, 3401, 3409, 3416, 3423, 3425, 3427, 3432, 3438, 3441, 3443, 3445, 3448, 3453, 3456, 3461, 3476, 3483, 3490, 3492, 3494, 3499, 3505, 3508, 3510, 3512, 3515, 3520, 3523, 3528, 3541, 3546, 3555, 3560, 3566, 3570, 3574, 3591, 3593, 3603, 3608, 3610, 3614, 3620, 3628, 3633, 3636, 3644, 3647, 3652, 3657, 3662, 3667, 3672, 3677, 3681, 3686, 3697, 3702, 3705, 3708, 3713, 3716, 3721, 3724, 3729, 3732, 3737, 3740, 3745, 3748, 3753, 3759, 3764, 3767, 3772, 3779, 3781, 3787, 3796, 3801, 3803, 3815, 3821, 3833, 3836, 3841, 3843, 3853, 3858, 3860, 3864, 3870, 3888, 3890, 3905, 3923, 3931, 3941, 3957, 3978, 3989, 3995, 4004, 4013, 4019, 4028, 4033, 4036, 4041, 4044, 4049, 4052, 4060, 4066, 4070, 4077, 4083, 4087, 4090, 4092, 4095, 4100, 4103, 4108, 4111, 4116, 4119, 4124, 4127, 4142, 4153, 4165, 4172, 4179, 4183, 4188, 4191, 4196, 4199, 4204, 4207, 4216, 4223, 4238, 4242, 4247, 4258, 4268, 4280, 4286, 4288, 4296, 4305, 4310, 4321, 4324, 4328, 4336, 4340, 4344, 4352, 4357, 4365, 4370, 4374, 4376, 4381, 4390, 4393, 4398, 4405, 4411, 4413, 4418, 4424, 4430, 4435, 4441, 4448, 4453, 4458, 4463, 4466, 4470, 4474, 4478, 4482, 4487, 4491, 4495, 4505, 4511, 4518, 4521, 4527, 4533, 4538, 4540, 4546, 4548, 4553, 4559, 4565, 4570, 4572, 4576, 4580, 4583, 4597, 4602, 4606, 4619, 4622, 4624, 4632, 4642, 4648, 4655, 4658, 4664, 4670, 4675, 4677, 4683, 4685, 4690, 4696, 4702, 4708, 4713, 4715, 4719, 4723, 4726, 4740, 4745, 4749, 4762, 4765, 4767, 4775, 4786, 4795, 4804, 4815, 4824, 4833, 4845, 4849, 4854, 4856, 4858, 4863, 4867, 4872, 4874, 4876, 4890, 4895, 4917, 4939, 4944, 4957, 4965, 4985, 4988, 4994, 5002, 5009, 5014, 5018, 5022, 5025, 5032, 5050, 5052, 5072, 5080, 5085, 5103, 5118, 5120, 5127, 5134, 5139, 5144, 5150, 5155, 5157, 5164, 5170, 5176, 5179, 5185, 5195, 5198, 5205, 5208, 5213, 5215, 5223, 5227, 5233, 5238, 5240, 5243, 5250, 5256, 5263, 5266, 5272, 5277, 5279, 5282, 5290, 5296, 5303, 5306, 5312, 5317, 5319, 5327, 5335, 5341, 5346, 5348, 5358, 5363, 5373, 5379, 5391, 5393, 5400, 5406, 5412, 5418, 5423, 5425, 5432, 5440, 5446, 5460, 5462, 5465, 5470, 5472, 5484, 5490, 5504, 5506, 5509, 5514, 5517, 5522, 5524, 5533, 5540, 5546, 5549, 5554, 5561, 5563, 5569, 5571, 5579, 5581, 5587, 5589, 5595, 5597, 5604, 5607, 5609, 5612, 5616, 5618, 5627, 5633, 5637, 5645, 5652, 5658, 5660, 5671, 5676, 5682, 5686, 5696, 5704, 5716, 5719, 5727, 5729, 5732, 5736, 5739, 5749, 5755, 5763, 5767, 5771, 5780, 5786, 5790, 5793, 5804, 5808, 5815, 5820, 5823, 5831, 5835, 5838, 5842, 5845, 5849, 5856, 5860, 5862, 5864, 5867, 5870, 5873, 5879, 5882, 5890, 5892, 5895, 5899, 5902, 5908, 5911, 5915, 5918, 5921, 5928, 5931, 5938, 5944, 5948, 5958, 5961, 5964, 5968, 5971, 5974, 5977, 5981, 5984, 5992, 5994, 5998, 6001, 6009, 6013, 6017, 6024, 6028, 6030, 6032, 6035, 6038, 6041, 6049, 6055, 6061, 6063, 6067, 6070, 6075, 6080, 6083, 6091, 6095, 6102, 6105, 6114, 6117, 6121, 6129, 6132, 6136, 6139, 6153, 6157, 6160, 6164, 6167, 6172, 6175, 6181, 6184, 6191, 6195, 6197, 6205, 6208, 6212, 6219, 6224, 6227, 6239, 6242, 6248, 6255, 6260, 6265, 6272, 6279, 6282, 6290, 6298, 6301, 6309, 6320, 6323, 6333, 6340, 6345, 6348, 6358, 6361, 6364, 6372, 6383, 6386, 6389, 6395, 6400, 6404, 6414, 6417, 6420, 6426, 6432, 6440, 6443, 6447, 6451, 6454, 6459, 6473, 6489, 6493, 6499, 6501, 6504, 6508, 6513, 6518, 6526, 6531, 6536, 6542, 6547, 6550, 6559, 6569, 6572, 6581, 6589, 6592, 6599, 6602, 6648, 6652, 6655, 6661, 6673, 6675, 6678, 6703, 6714, 6722, 6733, 6738, 6741, 6749, 6759, 6766, 6773, 6775, 6787, 6798, 6802, 6807, 6810, 6812, 6815, 6827, 6829, 6831, 6834, 6839, 6842, 6847, 6857, 6861, 6866, 6869, 6871, 6874, 6886, 6888, 6890, 6893, 6899, 6909, 6929, 6935, 6960, 6962, 6988, 6994, 7005, 7013, 7016, 7030, 7038, 7045, 7068, 7081, 7087, 7094, 7102, 7105, 7108, 7117, 7127, 7134, 7138, 7142, 7148, 7155, 7159, 7165, 7172, 7179, 7182, 7188, 7195, 7199, 7204, 7209, 7214, 7222, 7226, 7232, 7239, 7243, 7252, 7260, 7266, 7272, 7289, 7293, 7301, 7305, 7313, 7317, 7322, 7326, 7333, 7339, 7341, 7345, 7349, 7353, 7356, 7360, 7366, 7370, 7372, 7379, 7386, 7389, 7392, 7399, 7404, 7409, 7413, 7419, 7423, 7425, 7430, 7435, 7439, 7444, 7450, 7454, 7458, 7460, 7464, 7468, 7472, 7476, 7482, 7485, 7491, 7495, 7499, 7505, 7511, 7513, 7516, 7520, 7524, 7528, 7534, 7537, 7543, 7549, 7552, 7558, 7561, 7567, 7570, 7574, 7578, 7582, 7587, 7590, 7594, 7598, 7615, 7617, 7619, 7622, 7629, 7634, 7638, 7644, 7648, 7650, 7655, 7660, 7664, 7669, 7675, 7679, 7683, 7685, 7689, 7693, 7697, 7701, 7707, 7710, 7716, 7720, 7724, 7730, 7736, 7738, 7741, 7745, 7749, 7753, 7759, 7762, 7768, 7774, 7777, 7783, 7786, 7792, 7795, 7799, 7803, 7807, 7812, 7815, 7819, 7823, 7829, 7832, 7836, 7853, 7855, 7857, 7860, 7874, 7880, 7888, 7895, 7897, 7900, 7933, 7937, 7941, 7948, 7959, 7963, 7970, 7973, 7976, 7984, 7989, 7994, 7997, 7999, 8003, 8007, 8010, 8014, 8020, 8025, 8032, 8034, 8038, 8046, 8052, 8056, 8059, 8068, 8071, 8077, 8084, 8089, 8097, 8102, 8114, 8116, 8127, 8134, 8144, 8167, 8180, 8196, 8201, 8208, 8211, 8215, 8217, 8234, 8249, 8257, 8266, 8274, 8283, 8294, 8298, 8300, 8302, 8308, 8313, 8320, 8333, 8335, 8337, 8340, 8343, 8350, 8353, 8359, 8364, 8366, 8369, 8375, 8383, 8385, 8388, 8392, 8395, 8405, 8408, 8412, 8415, 8421, 8424, 8426, 8430, 8435, 8439, 8444, 8449, 8457, 8461, 8464, 8469, 8477, 8482, 8492, 8503, 8508, 8514, 8520, 8524, 8527, 8531, 8535, 8543, 8548, 8550, 8553, 8558, 8567, 8571, 8576, 8579, 8582, 8588, 8596, 8604, 8607, 8610, 8614, 8619, 8622, 8628, 8632, 8638, 8646, 8652, 8654, 8657, 8672, 8675, 8678, 8680, 8691, 8702, 8711, 8721, 8731, 8733, 8735, 8738, 8741, 8752, 8754, 8756, 8759, 8764, 8775, 8784, 8787, 8790, 8799, 8802, 8805, 8812, 8815, 8830, 8833, 8840, 8856, 8860, 8870, 8889, 8891, 8898, 8905, 8909, 8917, 8921, 8925, 8931, 8941, 8951, 8958, 8965, 8974, 8981, 8988, 8997, 9001, 9011, 9018, 9026, 9034, 9038, 9060, 9069, 9075, 9081, 9087, 9097, 9104, 9109, 9114, 9118, 9125, 9129, 9132, 9137, 9141, 9145, 9150, 9157, 9160, 9164, 9169, 9173, 9182, 9189, 9198, 9210, 9212, 9222, 9225, 9230, 9239, 9241, 9243, 9248, 9256, 9261, 9269, 9274, 9280, 9290, 9292, 9296, 9300, 9302, 9311, 9313, 9317, 9328, 9362, 9378, 9385, 9387, 9394, 9403, 9411, 9418, 9425, 9428, 9431, 9438, 9445, 9448, 9450, 9458, 9460, 9466, 9473, 9481, 9487, 9492, 9496, 9500, 9505, 9507, 9515, 9517, 9521, 9528, 9530, 9537, 9539, 9548, 9556, 9563, 9569, 9580, 9584, 9586, 9589, 9613, 9638, 9643, 9663, 9667, 9671, 9687, 9707, 9765, 9769, 9817, 9833, 9835, 9842, 9848, 9861, 9876, 9887, 9892, 9902, 9911, 9945, 9950, 9956, 9959, 9964, 9969, 9978, 9983, 9989, 9998, 10008, 10011, 10025, 10031, 10039, 10043, 10051, 10058, 10071, 10079, 10092, 10099, 10105, 10109, 10126, 10141, 10143, 10148, 10151, 10160, 10163, 10166, 10179, 10183, 10191, 10197, 10205, 10212, 10218, 10233, 10242, 10248, 10254, 10257, 10261, 10268, 10276, 10279, 10285, 10291, 10293, 10299, 10302, 10304, 10310, 10312, 10326, 10333, 10342, 10349, 10361, 10368, 10375, 10382, 10388, 10395, 10398, 10403, 10410, 10418, 10422, 10425, 10433, 10437, 10440, 10444, 10449, 10455, 10461, 10467, 10473, 10479, 10485, 10491, 10494, 10498, 10503, 10507, 10515, 10520, 10527, 10536, 10538, 10545, 10557, 10562, 10573, 10583, 10585, 10591, 10593, 10598, 10600, 10603, 10607, 10611, 10617, 10626, 10629, 10631, 10634, 10640, 10644, 10647, 10656, 10665, 10677, 10680, 10684, 10690, 10693, 10697, 10703, 10708, 10713, 10717, 10721, 10725, 10732, 10751, 10757]
\ No newline at end of file
diff --git a/src/grammar/tsql/TSqlLexer.g4 b/src/grammar/tsql/TSqlLexer.g4
deleted file mode 100644
index 19db4c5..0000000
--- a/src/grammar/tsql/TSqlLexer.g4
+++ /dev/null
@@ -1,902 +0,0 @@
-/*
-T-SQL (Transact-SQL, MSSQL) grammar.
-The MIT License (MIT).
-Copyright (c) 2017, Mark Adams (madams51703@gmail.com)
-Copyright (c) 2015-2017, Ivan Kochurkin (kvanttt@gmail.com), Positive Technologies.
-Copyright (c) 2016, Scott Ure (scott@redstormsoftware.com).
-Copyright (c) 2016, Rui Zhang (ruizhang.ccs@gmail.com).
-Copyright (c) 2016, Marcus Henriksson (kuseman80@gmail.com).
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
-*/
-
-lexer grammar TSqlLexer;
-
-// Basic keywords (from https://msdn.microsoft.com/en-us/library/ms189822.aspx)
-ABSENT: 'ABSENT';
-ADD: 'ADD';
-AES: 'AES';
-ALL: 'ALL';
-ALLOW_CONNECTIONS: 'ALLOW_CONNECTIONS';
-ALLOW_MULTIPLE_EVENT_LOSS: 'ALLOW_MULTIPLE_EVENT_LOSS';
-ALLOW_SINGLE_EVENT_LOSS: 'ALLOW_SINGLE_EVENT_LOSS';
-ALTER: 'ALTER';
-AND: 'AND';
-ANONYMOUS: 'ANONYMOUS';
-ANY: 'ANY';
-APPEND: 'APPEND';
-APPLICATION: 'APPLICATION';
-AS: 'AS';
-ASC: 'ASC';
-ASYMMETRIC: 'ASYMMETRIC';
-ASYNCHRONOUS_COMMIT: 'ASYNCHRONOUS_COMMIT';
-AUTHORIZATION: 'AUTHORIZATION';
-AUTHENTICATION: 'AUTHENTICATION';
-AUTOMATED_BACKUP_PREFERENCE: 'AUTOMATED_BACKUP_PREFERENCE';
-AUTOMATIC: 'AUTOMATIC';
-AVAILABILITY_MODE: 'AVAILABILITY_MODE';
-BACKSLASH: '\\';
-BACKUP: 'BACKUP';
-BEFORE: 'BEFORE';
-BEGIN: 'BEGIN';
-BETWEEN: 'BETWEEN';
-BLOCK: 'BLOCK';
-BLOCKSIZE: 'BLOCKSIZE';
-BLOCKING_HIERARCHY: 'BLOCKING_HIERARCHY';
-BREAK: 'BREAK';
-BROWSE: 'BROWSE';
-BUFFER: 'BUFFER';
-BUFFERCOUNT: 'BUFFERCOUNT';
-BULK: 'BULK';
-BY: 'BY';
-CACHE: 'CACHE';
-CALLED: 'CALLED';
-CASCADE: 'CASCADE';
-CASE: 'CASE';
-CERTIFICATE: 'CERTIFICATE';
-CHANGETABLE: 'CHANGETABLE';
-CHANGES: 'CHANGES';
-CHECK: 'CHECK';
-CHECKPOINT: 'CHECKPOINT';
-CHECK_POLICY: 'CHECK_POLICY';
-CHECK_EXPIRATION: 'CHECK_EXPIRATION';
-CLASSIFIER_FUNCTION: 'CLASSIFIER_FUNCTION';
-CLOSE: 'CLOSE';
-CLUSTER: 'CLUSTER';
-CLUSTERED: 'CLUSTERED';
-COALESCE: 'COALESCE';
-COLLATE: 'COLLATE';
-COLUMN: 'COLUMN';
-COMPRESSION: 'COMPRESSION';
-COMMIT: 'COMMIT';
-COMPUTE: 'COMPUTE';
-CONFIGURATION: 'CONFIGURATION';
-CONSTRAINT: 'CONSTRAINT';
-CONTAINMENT: 'CONTAINMENT';
-CONTAINS: 'CONTAINS';
-CONTAINSTABLE: 'CONTAINSTABLE';
-CONTEXT: 'CONTEXT';
-CONTINUE: 'CONTINUE';
-CONTINUE_AFTER_ERROR: 'CONTINUE_AFTER_ERROR';
-CONTRACT: 'CONTRACT';
-CONTRACT_NAME: 'CONTRACT_NAME';
-CONVERSATION: 'CONVERSATION';
-CONVERT: 'TRY_'? 'CONVERT';
-COPY_ONLY: 'COPY_ONLY';
-CREATE: 'CREATE';
-CROSS: 'CROSS';
-CURRENT: 'CURRENT';
-CURRENT_DATE: 'CURRENT_DATE';
-CURRENT_TIME: 'CURRENT_TIME';
-CURRENT_TIMESTAMP: 'CURRENT_TIMESTAMP';
-CURRENT_USER: 'CURRENT_USER';
-CURSOR: 'CURSOR';
-CYCLE: 'CYCLE';
-DATA_COMPRESSION: 'DATA_COMPRESSION';
-DATA_SOURCE: 'DATA_SOURCE';
-DATABASE: 'DATABASE';
-DATABASE_MIRRORING: 'DATABASE_MIRRORING';
-DBCC: 'DBCC';
-DEALLOCATE: 'DEALLOCATE';
-DECLARE: 'DECLARE';
-DEFAULT: 'DEFAULT';
-DEFAULT_DATABASE: 'DEFAULT_DATABASE';
-DEFAULT_SCHEMA: 'DEFAULT_SCHEMA';
-DELETE: 'DELETE';
-DENY: 'DENY';
-DESC: 'DESC';
-DIAGNOSTICS: 'DIAGNOSTICS';
-DIFFERENTIAL: 'DIFFERENTIAL';
-DISK: 'DISK';
-DISTINCT: 'DISTINCT';
-DISTRIBUTED: 'DISTRIBUTED';
-DOUBLE: 'DOUBLE';
-DOUBLE_BACK_SLASH: '\\\\';
-DOUBLE_FORWARD_SLASH: '//';
-DROP: 'DROP';
-DTC_SUPPORT: 'DTC_SUPPORT';
-DUMP: 'DUMP';
-ELSE: 'ELSE';
-ENABLED: 'ENABLED';
-END: 'END';
-ENDPOINT: 'ENDPOINT';
-ERRLVL: 'ERRLVL';
-ESCAPE: 'ESCAPE';
-ERROR: 'ERROR';
-EVENT: 'EVENT';
-EVENTDATA: 'EVENTDATA' '(' ')';
-EVENT_RETENTION_MODE: 'EVENT_RETENTION_MODE';
-EXCEPT: 'EXCEPT';
-EXECUTABLE_FILE: 'EXECUTABLE_FILE';
-EXECUTE: 'EXEC' 'UTE'?;
-EXISTS: 'EXISTS';
-EXPIREDATE: 'EXPIREDATE';
-EXIT: 'EXIT';
-EXTENSION: 'EXTENSION';
-EXTERNAL: 'EXTERNAL';
-EXTERNAL_ACCESS: 'EXTERNAL_ACCESS';
-FAILOVER: 'FAILOVER';
-FAILURECONDITIONLEVEL: 'FAILURECONDITIONLEVEL';
-FAN_IN: 'FAN_IN';
-FETCH: 'FETCH';
-FILE: 'FILE';
-FILENAME: 'FILENAME';
-FILLFACTOR: 'FILLFACTOR';
-FILE_SNAPSHOT: 'FILE_SNAPSHOT';
-FOR: 'FOR';
-FORCESEEK: 'FORCESEEK';
-FORCE_SERVICE_ALLOW_DATA_LOSS: 'FORCE_SERVICE_ALLOW_DATA_LOSS';
-FOREIGN: 'FOREIGN';
-FREETEXT: 'FREETEXT';
-FREETEXTTABLE: 'FREETEXTTABLE';
-FROM: 'FROM';
-FULL: 'FULL';
-FUNCTION: 'FUNCTION';
-GET: 'GET';
-GOTO: 'GOTO';
-GOVERNOR: 'GOVERNOR';
-GRANT: 'GRANT';
-GROUP: 'GROUP';
-HAVING: 'HAVING';
-HASHED: 'HASHED';
-HEALTHCHECKTIMEOUT: 'HEALTHCHECKTIMEOUT';
-IDENTITY: 'IDENTITY';
-IDENTITYCOL: 'IDENTITYCOL';
-IDENTITY_INSERT: 'IDENTITY_INSERT';
-IF: 'IF';
-IIF: 'IIF';
-IN: 'IN';
-INCLUDE: 'INCLUDE';
-INCREMENT: 'INCREMENT';
-INDEX: 'INDEX';
-INFINITE: 'INFINITE';
-INIT: 'INIT';
-INNER: 'INNER';
-INSERT: 'INSERT';
-INSTEAD: 'INSTEAD';
-INTERSECT: 'INTERSECT';
-INTO: 'INTO';
-IPV4_ADDR: [']? IPV4_OCTECT DOT IPV4_OCTECT DOT IPV4_OCTECT DOT IPV4_OCTECT [']?;
-IPV6_ADDR: [']?[0-9A-F]?[0-9A-F]?[0-9A-F]?[0-9A-F]?[:][0-9A-F]?[0-9A-F]?[0-9A-F]?[0-9A-F]?[:][0-9A-F]?[0-9A-F]?[0-9A-F]?[0-9A-F]?[:][0-9A-F]?[0-9A-F]?[0-9A-F]?[0-9A-F]?[:][0-9A-F]?[0-9A-F]?[0-9A-F]?[0-9A-F]?[:][0-9A-F]?[0-9A-F]?[0-9A-F]?[0-9A-F]?[:][0-9A-F]?[0-9A-F]?[0-9A-F]?[0-9A-F]?[:][0-9A-F]?[0-9A-F]?[0-9A-F]?[0-9A-F]?[']?;
-IS: 'IS';
-ISNULL: 'ISNULL';
-JOIN: 'JOIN';
-KERBEROS: 'KERBEROS';
-KEY: 'KEY';
-KEY_PATH: 'KEY_PATH';
-KEY_STORE_PROVIDER_NAME: 'KEY_STORE_PROVIDER_NAME';
-KILL: 'KILL';
-LANGUAGE: 'LANGUAGE';
-LEFT: 'LEFT';
-LIBRARY: 'LIBRARY';
-LIFETIME: 'LIFETIME';
-LIKE: 'LIKE';
-LINENO: 'LINENO';
-LINUX: 'LINUX';
-LISTENER_IP: 'LISTENER_IP';
-LISTENER_PORT: 'LISTENER_PORT';
-LOAD: 'LOAD';
-LOCAL_SERVICE_NAME: 'LOCAL_SERVICE_NAME';
-LOG: 'LOG';
-MATCHED: 'MATCHED';
-MASTER: 'MASTER';
-MAX_MEMORY: 'MAX_MEMORY';
-MAXTRANSFER: 'MAXTRANSFER';
-MAXVALUE: 'MAXVALUE';
-MAX_DISPATCH_LATENCY: 'MAX_DISPATCH_LATENCY';
-MAX_EVENT_SIZE: 'MAX_EVENT_SIZE';
-MAX_SIZE: 'MAX_SIZE';
-MAX_OUTSTANDING_IO_PER_VOLUME: 'MAX_OUTSTANDING_IO_PER_VOLUME';
-MEDIADESCRIPTION: 'MEDIADESCRIPTION';
-MEDIANAME: 'MEDIANAME';
-MEMBER: 'MEMBER';
-MEMORY_PARTITION_MODE: 'MEMORY_PARTITION_MODE';
-MERGE: 'MERGE';
-MESSAGE_FORWARDING: 'MESSAGE_FORWARDING';
-MESSAGE_FORWARD_SIZE: 'MESSAGE_FORWARD_SIZE';
-MINVALUE: 'MINVALUE';
-MIRROR: 'MIRROR';
-MUST_CHANGE: 'MUST_CHANGE';
-NATIONAL: 'NATIONAL';
-NEGOTIATE: 'NEGOTIATE';
-NOCHECK: 'NOCHECK';
-NOFORMAT: 'NOFORMAT';
-NOINIT: 'NOINIT';
-NONCLUSTERED: 'NONCLUSTERED';
-NONE: 'NONE';
-NOREWIND: 'NOREWIND';
-NOSKIP: 'NOSKIP';
-NOUNLOAD: 'NOUNLOAD';
-NO_CHECKSUM: 'NO_CHECKSUM';
-NO_COMPRESSION: 'NO_COMPRESSION';
-NO_EVENT_LOSS: 'NO_EVENT_LOSS';
-NOT: 'NOT';
-NOTIFICATION: 'NOTIFICATION';
-NTLM: 'NTLM';
-NULL: 'NULL';
-NULLIF: 'NULLIF';
-OF: 'OF';
-OFF: 'OFF';
-OFFSETS: 'OFFSETS';
-OLD_PASSWORD: 'OLD_PASSWORD';
-ON: 'ON';
-ON_FAILURE: 'ON_FAILURE';
-OPEN: 'OPEN';
-OPENDATASOURCE: 'OPENDATASOURCE';
-OPENQUERY: 'OPENQUERY';
-OPENROWSET: 'OPENROWSET';
-OPENXML: 'OPENXML';
-OPTION: 'OPTION';
-OR: 'OR';
-ORDER: 'ORDER';
-OUTER: 'OUTER';
-OVER: 'OVER';
-PAGE: 'PAGE';
-PARAM_NODE: 'PARAM_NODE';
-PARTIAL: 'PARTIAL';
-PASSWORD: 'PASSWORD';
-PERCENT: 'PERCENT';
-PERMISSION_SET: 'PERMISSION_SET';
-PER_CPU: 'PER_CPU';
-PER_DB: 'PER_DB';
-PER_NODE: 'PER_NODE';
-PIVOT: 'PIVOT';
-PLAN: 'PLAN';
-PLATFORM: 'PLATFORM';
-POLICY: 'POLICY';
-PRECISION: 'PRECISION';
-PREDICATE: 'PREDICATE';
-PRIMARY: 'PRIMARY';
-PRINT: 'PRINT';
-PROC: 'PROC';
-PROCEDURE: 'PROCEDURE';
-PROCESS: 'PROCESS';
-PUBLIC: 'PUBLIC';
-PYTHON: 'PYTHON';
-R: 'R';
-RAISERROR: 'RAISERROR';
-RAW: 'RAW';
-READ: 'READ';
-READTEXT: 'READTEXT';
-READ_WRITE_FILEGROUPS: 'READ_WRITE_FILEGROUPS';
-RECONFIGURE: 'RECONFIGURE';
-REFERENCES: 'REFERENCES';
-REGENERATE: 'REGENERATE';
-RELATED_CONVERSATION: 'RELATED_CONVERSATION';
-RELATED_CONVERSATION_GROUP: 'RELATED_CONVERSATION_GROUP';
-REPLICATION: 'REPLICATION';
-REQUIRED: 'REQUIRED';
-RESET: 'RESET';
-RESTART: 'RESTART';
-RESTORE: 'RESTORE';
-RESTRICT: 'RESTRICT';
-RESUME: 'RESUME';
-RETAINDAYS: 'RETAINDAYS';
-RETURN: 'RETURN';
-RETURNS: 'RETURNS';
-REVERT: 'REVERT';
-REVOKE: 'REVOKE';
-REWIND: 'REWIND';
-RIGHT: 'RIGHT';
-ROLLBACK: 'ROLLBACK';
-ROLE: 'ROLE';
-ROWCOUNT: 'ROWCOUNT';
-ROWGUIDCOL: 'ROWGUIDCOL';
-RSA_512: 'RSA_512';
-RSA_1024: 'RSA_1024';
-RSA_2048: 'RSA_2048';
-RSA_3072: 'RSA_3072';
-RSA_4096: 'RSA_4096';
-SAFETY: 'SAFETY';
-RULE: 'RULE';
-SAFE: 'SAFE';
-SAVE: 'SAVE';
-SCHEDULER: 'SCHEDULER';
-SCHEMA: 'SCHEMA';
-SCHEME: 'SCHEME';
-SECURITYAUDIT: 'SECURITYAUDIT';
-SELECT: 'SELECT';
-SEMANTICKEYPHRASETABLE: 'SEMANTICKEYPHRASETABLE';
-SEMANTICSIMILARITYDETAILSTABLE: 'SEMANTICSIMILARITYDETAILSTABLE';
-SEMANTICSIMILARITYTABLE: 'SEMANTICSIMILARITYTABLE';
-SERVER: 'SERVER';
-SERVICE: 'SERVICE';
-SERVICE_BROKER: 'SERVICE_BROKER';
-SERVICE_NAME: 'SERVICE_NAME';
-SESSION: 'SESSION';
-SESSION_USER: 'SESSION_USER';
-SET: 'SET';
-SETUSER: 'SETUSER';
-SHUTDOWN: 'SHUTDOWN';
-SID: 'SID';
-SKIP_KEYWORD: 'SKIP';
-SOFTNUMA: 'SOFTNUMA';
-SOME: 'SOME';
-SOURCE: 'SOURCE';
-SPECIFICATION: 'SPECIFICATION';
-SPLIT: 'SPLIT';
-SQLDUMPERFLAGS: 'SQLDUMPERFLAGS';
-SQLDUMPERPATH: 'SQLDUMPERPATH';
-SQLDUMPERTIMEOUT: 'SQLDUMPERTIMEOUTS';
-STATISTICS: 'STATISTICS';
-STATE: 'STATE';
-STATS: 'STATS';
-START: 'START';
-STARTED: 'STARTED';
-STARTUP_STATE: 'STARTUP_STATE';
-STOP: 'STOP';
-STOPPED: 'STOPPED';
-STOP_ON_ERROR: 'STOP_ON_ERROR';
-SUPPORTED: 'SUPPORTED';
-SYSTEM_USER: 'SYSTEM_USER';
-TABLE: 'TABLE';
-TABLESAMPLE: 'TABLESAMPLE';
-TAPE: 'TAPE';
-TARGET: 'TARGET';
-TCP: 'TCP';
-TEXTSIZE: 'TEXTSIZE';
-THEN: 'THEN';
-TO: 'TO';
-TOP: 'TOP';
-TRACK_CAUSALITY: 'TRACK_CAUSALITY';
-TRAN: 'TRAN';
-TRANSACTION: 'TRANSACTION';
-TRANSFER: 'TRANSFER';
-TRIGGER: 'TRIGGER';
-TRUNCATE: 'TRUNCATE';
-TSEQUAL: 'TSEQUAL';
-UNCHECKED: 'UNCHECKED';
-UNION: 'UNION';
-UNIQUE: 'UNIQUE';
-UNLOCK: 'UNLOCK';
-UNPIVOT: 'UNPIVOT';
-UNSAFE: 'UNSAFE';
-UPDATE: 'UPDATE';
-UPDATETEXT: 'UPDATETEXT';
-URL: 'URL';
-USE: 'USE';
-USED: 'USED';
-USER: 'USER';
-VALUES: 'VALUES';
-VARYING: 'VARYING';
-VERBOSELOGGING: 'VERBOSELOGGING';
-VIEW: 'VIEW';
-VISIBILITY: 'VISIBILITY';
-WAITFOR: 'WAITFOR';
-WHEN: 'WHEN';
-WHERE: 'WHERE';
-WHILE: 'WHILE';
-WINDOWS: 'WINDOWS';
-WITH: 'WITH';
-WITHIN: 'WITHIN';
-WITHOUT: 'WITHOUT';
-WITNESS: 'WITNESS';
-WRITETEXT: 'WRITETEXT';
-
-// Additional keywords. They can be id, please keep them in sync with the parser.
-ABSOLUTE: 'ABSOLUTE';
-ACCENT_SENSITIVITY: 'ACCENT_SENSITIVITY';
-ACTION: 'ACTION';
-ACTIVATION: 'ACTIVATION';
-ACTIVE: 'ACTIVE';
-ADDRESS: 'ADDRESS';
-AES_128: 'AES_128';
-AES_192: 'AES_192';
-AES_256: 'AES_256';
-AFFINITY: 'AFFINITY';
-AFTER: 'AFTER';
-AGGREGATE: 'AGGREGATE';
-ALGORITHM: 'ALGORITHM';
-ALLOW_ENCRYPTED_VALUE_MODIFICATIONS: 'ALLOW_ENCRYPTED_VALUE_MODIFICATIONS';
-ALLOW_SNAPSHOT_ISOLATION: 'ALLOW_SNAPSHOT_ISOLATION';
-ALLOWED: 'ALLOWED';
-ANSI_NULL_DEFAULT: 'ANSI_NULL_DEFAULT';
-ANSI_NULLS: 'ANSI_NULLS';
-ANSI_PADDING: 'ANSI_PADDING';
-ANSI_WARNINGS: 'ANSI_WARNINGS';
-APPLICATION_LOG: 'APPLICATION_LOG';
-APPLY: 'APPLY';
-ARITHABORT: 'ARITHABORT';
-ASSEMBLY: 'ASSEMBLY';
-AUDIT: 'AUDIT';
-AUDIT_GUID: 'AUDIT_GUID';
-AUTO: 'AUTO';
-AUTO_CLEANUP: 'AUTO_CLEANUP';
-AUTO_CLOSE: 'AUTO_CLOSE';
-AUTO_CREATE_STATISTICS: 'AUTO_CREATE_STATISTICS';
-AUTO_SHRINK: 'AUTO_SHRINK';
-AUTO_UPDATE_STATISTICS: 'AUTO_UPDATE_STATISTICS';
-AUTO_UPDATE_STATISTICS_ASYNC: 'AUTO_UPDATE_STATISTICS_ASYNC';
-AVAILABILITY: 'AVAILABILITY';
-AVG: 'AVG';
-BACKUP_PRIORITY: 'BACKUP_PRIORITY';
-BEGIN_DIALOG: 'BEGIN_DIALOG';
-BIGINT: 'BIGINT';
-BINARY_BASE64: 'BINARY BASE64';
-BINARY_CHECKSUM: 'BINARY_CHECKSUM';
-BINDING: 'BINDING';
-BLOB_STORAGE: 'BLOB_STORAGE';
-BROKER: 'BROKER';
-BROKER_INSTANCE: 'BROKER_INSTANCE';
-BULK_LOGGED: 'BULK_LOGGED';
-CALLER: 'CALLER';
-CAP_CPU_PERCENT: 'CAP_CPU_PERCENT';
-CAST: 'TRY_'? 'CAST';
-CATALOG: 'CATALOG';
-CATCH: 'CATCH';
-CHANGE_RETENTION: 'CHANGE_RETENTION';
-CHANGE_TRACKING: 'CHANGE_TRACKING';
-CHECKSUM: 'CHECKSUM';
-CHECKSUM_AGG: 'CHECKSUM_AGG';
-CLEANUP: 'CLEANUP';
-COLLECTION: 'COLLECTION';
-COLUMN_MASTER_KEY: 'COLUMN_MASTER_KEY';
-COMMITTED: 'COMMITTED';
-COMPATIBILITY_LEVEL: 'COMPATIBILITY_LEVEL';
-CONCAT: 'CONCAT';
-CONCAT_NULL_YIELDS_NULL: 'CONCAT_NULL_YIELDS_NULL';
-CONTENT: 'CONTENT';
-CONTROL: 'CONTROL';
-COOKIE: 'COOKIE';
-COUNT: 'COUNT';
-COUNT_BIG: 'COUNT_BIG';
-COUNTER: 'COUNTER';
-CPU: 'CPU';
-CREATE_NEW: 'CREATE_NEW';
-CREATION_DISPOSITION: 'CREATION_DISPOSITION';
-CREDENTIAL: 'CREDENTIAL';
-CRYPTOGRAPHIC: 'CRYPTOGRAPHIC';
-CURSOR_CLOSE_ON_COMMIT: 'CURSOR_CLOSE_ON_COMMIT';
-CURSOR_DEFAULT: 'CURSOR_DEFAULT';
-DATA: 'DATA';
-DATE_CORRELATION_OPTIMIZATION: 'DATE_CORRELATION_OPTIMIZATION';
-DATEADD: 'DATEADD';
-DATEDIFF: 'DATEDIFF';
-DATENAME: 'DATENAME';
-DATEPART: 'DATEPART';
-DAYS: 'DAYS';
-DB_CHAINING: 'DB_CHAINING';
-DB_FAILOVER: 'DB_FAILOVER';
-DECRYPTION: 'DECRYPTION';
-DEFAULT_DOUBLE_QUOTE: ["]'DEFAULT'["];
-DEFAULT_FULLTEXT_LANGUAGE: 'DEFAULT_FULLTEXT_LANGUAGE';
-DEFAULT_LANGUAGE: 'DEFAULT_LANGUAGE';
-DELAY: 'DELAY';
-DELAYED_DURABILITY: 'DELAYED_DURABILITY';
-DELETED: 'DELETED';
-DENSE_RANK: 'DENSE_RANK';
-DEPENDENTS: 'DEPENDENTS';
-DES: 'DES';
-DESCRIPTION: 'DESCRIPTION';
-DESX: 'DESX';
-DHCP: 'DHCP';
-DIALOG: 'DIALOG';
-DIRECTORY_NAME: 'DIRECTORY_NAME';
-DISABLE: 'DISABLE';
-DISABLE_BROKER: 'DISABLE_BROKER';
-DISABLED: 'DISABLED';
-DISK_DRIVE: [A-Z][:];
-DOCUMENT: 'DOCUMENT';
-DYNAMIC: 'DYNAMIC';
-ELEMENTS: 'ELEMENTS';
-EMERGENCY: 'EMERGENCY';
-EMPTY: 'EMPTY';
-ENABLE: 'ENABLE';
-ENABLE_BROKER: 'ENABLE_BROKER';
-ENCRYPTED_VALUE: 'ENCRYPTED_VALUE';
-ENCRYPTION: 'ENCRYPTION';
-ENDPOINT_URL: 'ENDPOINT_URL';
-ERROR_BROKER_CONVERSATIONS: 'ERROR_BROKER_CONVERSATIONS';
-EXCLUSIVE: 'EXCLUSIVE';
-EXECUTABLE: 'EXECUTABLE';
-EXIST: 'EXIST';
-EXPAND: 'EXPAND';
-EXPIRY_DATE: 'EXPIRY_DATE';
-EXPLICIT: 'EXPLICIT';
-FAIL_OPERATION: 'FAIL_OPERATION';
-FAILOVER_MODE: 'FAILOVER_MODE';
-FAILURE: 'FAILURE';
-FAILURE_CONDITION_LEVEL: 'FAILURE_CONDITION_LEVEL';
-FAST: 'FAST';
-FAST_FORWARD: 'FAST_FORWARD';
-FILEGROUP: 'FILEGROUP';
-FILEGROWTH: 'FILEGROWTH';
-FILEPATH: 'FILEPATH';
-FILESTREAM: 'FILESTREAM';
-FILTER: 'FILTER';
-FIRST: 'FIRST';
-FIRST_VALUE: 'FIRST_VALUE';
-FOLLOWING: 'FOLLOWING';
-FORCE: 'FORCE';
-FORCE_FAILOVER_ALLOW_DATA_LOSS: 'FORCE_FAILOVER_ALLOW_DATA_LOSS';
-FORCED: 'FORCED';
-FORMAT: 'FORMAT';
-FORWARD_ONLY: 'FORWARD_ONLY';
-FULLSCAN: 'FULLSCAN';
-FULLTEXT: 'FULLTEXT';
-GB: 'GB';
-GETDATE: 'GETDATE';
-GETUTCDATE: 'GETUTCDATE';
-GLOBAL: 'GLOBAL';
-GO: 'GO';
-GROUP_MAX_REQUESTS: 'GROUP_MAX_REQUESTS';
-GROUPING: 'GROUPING';
-GROUPING_ID: 'GROUPING_ID';
-HADR: 'HADR';
-HASH: 'HASH';
-HEALTH_CHECK_TIMEOUT: 'HEALTH_CHECK_TIMEOUT';
-HIGH: 'HIGH';
-HONOR_BROKER_PRIORITY: 'HONOR_BROKER_PRIORITY';
-HOURS: 'HOURS';
-IDENTITY_VALUE: 'IDENTITY_VALUE';
-IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX: 'IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX';
-IMMEDIATE: 'IMMEDIATE';
-IMPERSONATE: 'IMPERSONATE';
-IMPORTANCE: 'IMPORTANCE';
-INCLUDE_NULL_VALUES: 'INCLUDE_NULL_VALUES';
-INCREMENTAL: 'INCREMENTAL';
-INITIATOR: 'INITIATOR';
-INPUT: 'INPUT';
-INSENSITIVE: 'INSENSITIVE';
-INSERTED: 'INSERTED';
-INT: 'INT';
-IP: 'IP';
-ISOLATION: 'ISOLATION';
-JOB: 'JOB';
-JSON: 'JSON';
-KB: 'KB';
-KEEP: 'KEEP';
-KEEPFIXED: 'KEEPFIXED';
-KEY_SOURCE: 'KEY_SOURCE';
-KEYS: 'KEYS';
-KEYSET: 'KEYSET';
-LAG: 'LAG';
-LAST: 'LAST';
-LAST_VALUE: 'LAST_VALUE';
-LEAD: 'LEAD';
-LEVEL: 'LEVEL';
-LIST: 'LIST';
-LISTENER: 'LISTENER';
-LISTENER_URL: 'LISTENER_URL';
-LOB_COMPACTION: 'LOB_COMPACTION';
-LOCAL: 'LOCAL';
-LOCATION: 'LOCATION';
-LOCK: 'LOCK';
-LOCK_ESCALATION: 'LOCK_ESCALATION';
-LOGIN: 'LOGIN';
-LOOP: 'LOOP';
-LOW: 'LOW';
-MANUAL: 'MANUAL';
-MARK: 'MARK';
-MATERIALIZED: 'MATERIALIZED';
-MAX: 'MAX';
-MAX_CPU_PERCENT: 'MAX_CPU_PERCENT';
-MAX_DOP: 'MAX_DOP';
-MAX_FILES: 'MAX_FILES';
-MAX_IOPS_PER_VOLUME: 'MAX_IOPS_PER_VOLUME';
-MAX_MEMORY_PERCENT: 'MAX_MEMORY_PERCENT';
-MAX_PROCESSES: 'MAX_PROCESSES';
-MAX_QUEUE_READERS: 'MAX_QUEUE_READERS';
-MAX_ROLLOVER_FILES: 'MAX_ROLLOVER_FILES';
-MAXDOP: 'MAXDOP';
-MAXRECURSION: 'MAXRECURSION';
-MAXSIZE: 'MAXSIZE';
-MB: 'MB';
-MEDIUM: 'MEDIUM';
-MEMORY_OPTIMIZED_DATA: 'MEMORY_OPTIMIZED_DATA';
-MESSAGE: 'MESSAGE';
-MIN: 'MIN';
-MIN_ACTIVE_ROWVERSION: 'MIN_ACTIVE_ROWVERSION';
-MIN_CPU_PERCENT: 'MIN_CPU_PERCENT';
-MIN_IOPS_PER_VOLUME: 'MIN_IOPS_PER_VOLUME';
-MIN_MEMORY_PERCENT: 'MIN_MEMORY_PERCENT';
-MINUTES: 'MINUTES';
-MIRROR_ADDRESS: 'MIRROR_ADDRESS';
-MIXED_PAGE_ALLOCATION: 'MIXED_PAGE_ALLOCATION';
-MODE: 'MODE';
-MODIFY: 'MODIFY';
-MOVE: 'MOVE';
-MULTI_USER: 'MULTI_USER';
-NAME: 'NAME';
-NESTED_TRIGGERS: 'NESTED_TRIGGERS';
-NEW_ACCOUNT: 'NEW_ACCOUNT';
-NEW_BROKER: 'NEW_BROKER';
-NEW_PASSWORD: 'NEW_PASSWORD';
-NEXT: 'NEXT';
-NO: 'NO';
-NO_TRUNCATE: 'NO_TRUNCATE';
-NO_WAIT: 'NO_WAIT';
-NOCOUNT: 'NOCOUNT';
-NODES: 'NODES';
-NOEXPAND: 'NOEXPAND';
-NON_TRANSACTED_ACCESS: 'NON_TRANSACTED_ACCESS';
-NORECOMPUTE: 'NORECOMPUTE';
-NORECOVERY: 'NORECOVERY';
-NOWAIT: 'NOWAIT';
-NTILE: 'NTILE';
-NUMANODE: 'NUMANODE';
-NUMBER: 'NUMBER';
-NUMERIC_ROUNDABORT: 'NUMERIC_ROUNDABORT';
-OBJECT: 'OBJECT';
-OFFLINE: 'OFFLINE';
-OFFSET: 'OFFSET';
-OLD_ACCOUNT: 'OLD_ACCOUNT';
-ONLINE: 'ONLINE';
-ONLY: 'ONLY';
-OPEN_EXISTING: 'OPEN_EXISTING';
-OPTIMISTIC: 'OPTIMISTIC';
-OPTIMIZE: 'OPTIMIZE';
-OUT: 'OUT';
-OUTPUT: 'OUTPUT';
-OVERRIDE: 'OVERRIDE';
-OWNER: 'OWNER';
-PAGE_VERIFY: 'PAGE_VERIFY';
-PARAMETERIZATION: 'PARAMETERIZATION';
-PARTITION: 'PARTITION';
-PARTITIONS: 'PARTITIONS';
-PARTNER: 'PARTNER';
-PATH: 'PATH';
-POISON_MESSAGE_HANDLING: 'POISON_MESSAGE_HANDLING';
-POOL: 'POOL';
-PORT: 'PORT';
-PRECEDING: 'PRECEDING';
-PRIMARY_ROLE: 'PRIMARY_ROLE';
-PRIOR: 'PRIOR';
-PRIORITY: 'PRIORITY';
-PRIORITY_LEVEL: 'PRIORITY_LEVEL';
-PRIVATE: 'PRIVATE';
-PRIVATE_KEY: 'PRIVATE_KEY';
-PRIVILEGES: 'PRIVILEGES';
-PROCEDURE_NAME: 'PROCEDURE_NAME';
-PROPERTY: 'PROPERTY';
-PROVIDER: 'PROVIDER';
-PROVIDER_KEY_NAME: 'PROVIDER_KEY_NAME';
-QUERY: 'QUERY';
-QUEUE: 'QUEUE';
-QUEUE_DELAY: 'QUEUE_DELAY';
-QUOTED_IDENTIFIER: 'QUOTED_IDENTIFIER';
-RANGE: 'RANGE';
-RANK: 'RANK';
-RC2: 'RC2';
-RC4: 'RC4';
-RC4_128: 'RC4_128';
-READ_COMMITTED_SNAPSHOT: 'READ_COMMITTED_SNAPSHOT';
-READ_ONLY: 'READ_ONLY';
-READ_ONLY_ROUTING_LIST: 'READ_ONLY_ROUTING_LIST';
-READ_WRITE: 'READ_WRITE';
-READONLY: 'READONLY';
-REBUILD: 'REBUILD';
-RECEIVE: 'RECEIVE';
-RECOMPILE: 'RECOMPILE';
-RECOVERY: 'RECOVERY';
-RECURSIVE_TRIGGERS: 'RECURSIVE_TRIGGERS';
-RELATIVE: 'RELATIVE';
-REMOTE: 'REMOTE';
-REMOTE_SERVICE_NAME: 'REMOTE_SERVICE_NAME';
-REMOVE: 'REMOVE';
-REORGANIZE: 'REORGANIZE';
-REPEATABLE: 'REPEATABLE';
-REPLICA: 'REPLICA';
-REQUEST_MAX_CPU_TIME_SEC: 'REQUEST_MAX_CPU_TIME_SEC';
-REQUEST_MAX_MEMORY_GRANT_PERCENT: 'REQUEST_MAX_MEMORY_GRANT_PERCENT';
-REQUEST_MEMORY_GRANT_TIMEOUT_SEC: 'REQUEST_MEMORY_GRANT_TIMEOUT_SEC';
-REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT: 'REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT';
-RESERVE_DISK_SPACE: 'RESERVE_DISK_SPACE';
-RESOURCE: 'RESOURCE';
-RESOURCE_MANAGER_LOCATION: 'RESOURCE_MANAGER_LOCATION';
-RESTRICTED_USER: 'RESTRICTED_USER';
-RETENTION: 'RETENTION';
-ROBUST: 'ROBUST';
-ROOT: 'ROOT';
-ROUTE: 'ROUTE';
-ROW: 'ROW';
-ROW_NUMBER: 'ROW_NUMBER';
-ROWGUID: 'ROWGUID';
-ROWS: 'ROWS';
-SAMPLE: 'SAMPLE';
-SCHEMABINDING: 'SCHEMABINDING';
-SCOPED: 'SCOPED';
-SCROLL: 'SCROLL';
-SCROLL_LOCKS: 'SCROLL_LOCKS';
-SEARCH: 'SEARCH';
-SECONDARY: 'SECONDARY';
-SECONDARY_ONLY: 'SECONDARY_ONLY';
-SECONDARY_ROLE: 'SECONDARY_ROLE';
-SECONDS: 'SECONDS';
-SECRET: 'SECRET';
-SECURITY: 'SECURITY';
-SECURITY_LOG: 'SECURITY_LOG';
-SEEDING_MODE: 'SEEDING_MODE';
-SELF: 'SELF';
-SEMI_SENSITIVE: 'SEMI_SENSITIVE';
-SEND: 'SEND';
-SENT: 'SENT';
-SEQUENCE: 'SEQUENCE';
-SERIALIZABLE: 'SERIALIZABLE';
-SESSION_TIMEOUT: 'SESSION_TIMEOUT';
-SETERROR: 'SETERROR';
-SHARE: 'SHARE';
-SHOWPLAN: 'SHOWPLAN';
-SIGNATURE: 'SIGNATURE';
-SIMPLE: 'SIMPLE';
-SINGLE_USER: 'SINGLE_USER';
-SIZE: 'SIZE';
-SMALLINT: 'SMALLINT';
-SNAPSHOT: 'SNAPSHOT';
-SPATIAL_WINDOW_MAX_CELLS: 'SPATIAL_WINDOW_MAX_CELLS';
-STANDBY: 'STANDBY';
-START_DATE: 'START_DATE';
-STATIC: 'STATIC';
-STATS_STREAM: 'STATS_STREAM';
-STATUS: 'STATUS';
-STATUSONLY: 'STATUSONLY';
-STDEV: 'STDEV';
-STDEVP: 'STDEVP';
-STOPLIST: 'STOPLIST';
-STRING_AGG: 'STRING_AGG';
-STUFF: 'STUFF';
-SUBJECT: 'SUBJECT';
-SUBSCRIPTION: 'SUBSCRIPTION';
-SUM: 'SUM';
-SUSPEND: 'SUSPEND';
-SYMMETRIC: 'SYMMETRIC';
-SYNCHRONOUS_COMMIT: 'SYNCHRONOUS_COMMIT';
-SYNONYM: 'SYNONYM';
-SYSTEM: 'SYSTEM';
-TAKE: 'TAKE';
-TARGET_RECOVERY_TIME: 'TARGET_RECOVERY_TIME';
-TB: 'TB';
-TEXTIMAGE_ON: 'TEXTIMAGE_ON';
-THROW: 'THROW';
-TIES: 'TIES';
-TIME: 'TIME';
-TIMEOUT: 'TIMEOUT';
-TIMER: 'TIMER';
-TINYINT: 'TINYINT';
-TORN_PAGE_DETECTION: 'TORN_PAGE_DETECTION';
-TRANSFORM_NOISE_WORDS: 'TRANSFORM_NOISE_WORDS';
-TRIPLE_DES: 'TRIPLE_DES';
-TRIPLE_DES_3KEY: 'TRIPLE_DES_3KEY';
-TRUSTWORTHY: 'TRUSTWORTHY';
-TRY: 'TRY';
-TSQL: 'TSQL';
-TWO_DIGIT_YEAR_CUTOFF: 'TWO_DIGIT_YEAR_CUTOFF';
-TYPE: 'TYPE';
-TYPE_WARNING: 'TYPE_WARNING';
-UNBOUNDED: 'UNBOUNDED';
-UNCOMMITTED: 'UNCOMMITTED';
-UNKNOWN: 'UNKNOWN';
-UNLIMITED: 'UNLIMITED';
-UOW: 'UOW';
-USING: 'USING';
-VALID_XML: 'VALID_XML';
-VALIDATION: 'VALIDATION';
-VALUE: 'VALUE';
-VAR: 'VAR';
-VARP: 'VARP';
-VIEW_METADATA: 'VIEW_METADATA';
-VIEWS: 'VIEWS';
-WAIT: 'WAIT';
-WELL_FORMED_XML: 'WELL_FORMED_XML';
-WITHOUT_ARRAY_WRAPPER: 'WITHOUT_ARRAY_WRAPPER';
-WORK: 'WORK';
-WORKLOAD: 'WORKLOAD';
-XML: 'XML';
-XMLDATA: 'XMLDATA';
-XMLNAMESPACES: 'XMLNAMESPACES';
-XMLSCHEMA: 'XMLSCHEMA';
-XSINIL: 'XSINIL';
-
-DOLLAR_ACTION: '$ACTION';
-
-SPACE: [ \t\r\n]+ -> skip;
-// https://docs.microsoft.com/en-us/sql/t-sql/language-elements/slash-star-comment-transact-sql
-COMMENT: '/*' (COMMENT | .)*? '*/' -> channel(HIDDEN);
-LINE_COMMENT: '--' ~[\r\n]* -> channel(HIDDEN);
-
-// TODO: ID can be not only Latin.
-DOUBLE_QUOTE_ID: '"' ~'"'+ '"';
-SINGLE_QUOTE: '\'';
-SQUARE_BRACKET_ID: '[' ~']'+ ']';
-LOCAL_ID: '@' ([A-Z_$@#0-9] | FullWidthLetter)+;
-DECIMAL: DEC_DIGIT+;
-ID: ( [A-Z_#] | FullWidthLetter) ( [A-Z_#$@0-9] | FullWidthLetter )*;
-QUOTED_URL: '\''([A-Z][A-Z]+[:]) '//'(([A-Z]+[.]|[A-Z]+)|IPV4_ADDR) [:] DECIMAL '\'';
-QUOTED_HOST_AND_PORT:'\''(([A-Z]+[.]|[A-Z]+)|IPV4_ADDR) ([:] DECIMAL) '\'';
-STRING: 'N'? '\'' (~'\'' | '\'\'')* '\'';
-BINARY: '0' 'X' HEX_DIGIT*;
-FLOAT: DEC_DOT_DEC;
-REAL: (DECIMAL | DEC_DOT_DEC) ('E' [+-]? DEC_DIGIT+);
-
-EQUAL: '=';
-
-GREATER: '>';
-LESS: '<';
-EXCLAMATION: '!';
-
-PLUS_ASSIGN: '+=';
-MINUS_ASSIGN: '-=';
-MULT_ASSIGN: '*=';
-DIV_ASSIGN: '/=';
-MOD_ASSIGN: '%=';
-AND_ASSIGN: '&=';
-XOR_ASSIGN: '^=';
-OR_ASSIGN: '|=';
-
-DOUBLE_BAR: '||';
-DOT: '.';
-UNDERLINE: '_';
-AT: '@';
-SHARP: '#';
-DOLLAR: '$';
-LR_BRACKET: '(';
-RR_BRACKET: ')';
-COMMA: ',';
-SEMI: ';';
-COLON: ':';
-STAR: '*';
-DIVIDE: '/';
-MODULE: '%';
-PLUS: '+';
-MINUS: '-';
-BIT_NOT: '~';
-BIT_OR: '|';
-BIT_AND: '&';
-BIT_XOR: '^';
-
-fragment LETTER: [A-Z_];
-fragment IPV6_OCTECT: [0-9A-F][0-9A-F][0-9A-F][0-9A-F];
-IPV4_OCTECT: [0-9]?[0-9]?[0-9];
-fragment DEC_DOT_DEC: (DEC_DIGIT+ '.' DEC_DIGIT+ | DEC_DIGIT+ '.' | '.' DEC_DIGIT+);
-fragment HEX_DIGIT: [0-9A-F];
-fragment DEC_DIGIT: [0-9];
-
-fragment FullWidthLetter
- : '\u00c0'..'\u00d6'
- | '\u00d8'..'\u00f6'
- | '\u00f8'..'\u00ff'
- | '\u0100'..'\u1fff'
- | '\u2c00'..'\u2fff'
- | '\u3040'..'\u318f'
- | '\u3300'..'\u337f'
- | '\u3400'..'\u3fff'
- | '\u4e00'..'\u9fff'
- | '\ua000'..'\ud7ff'
- | '\uf900'..'\ufaff'
- | '\uff00'..'\ufff0'
- // | '\u10000'..'\u1F9FF' //not support four bytes chars
- // | '\u20000'..'\u2FA1F'
- ;
diff --git a/src/grammar/tsql/TSqlParser.g4 b/src/grammar/tsql/TSqlParser.g4
deleted file mode 100644
index e15fab7..0000000
--- a/src/grammar/tsql/TSqlParser.g4
+++ /dev/null
@@ -1,4072 +0,0 @@
-/*
-T-SQL (Transact-SQL, MSSQL) grammar.
-The MIT License (MIT).
-Copyright (c) 2017, Mark Adams (madams51703@gmail.com)
-Copyright (c) 2015-2017, Ivan Kochurkin (kvanttt@gmail.com), Positive Technologies.
-Copyright (c) 2016, Scott Ure (scott@redstormsoftware.com).
-Copyright (c) 2016, Rui Zhang (ruizhang.ccs@gmail.com).
-Copyright (c) 2016, Marcus Henriksson (kuseman80@gmail.com).
-Permission is hereby granted, free of charge, to any person obtaining a copy
-of this software and associated documentation files (the "Software"), to deal
-in the Software without restriction, including without limitation the rights
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
-copies of the Software, and to permit persons to whom the Software is
-furnished to do so, subject to the following conditions:
-The above copyright notice and this permission notice shall be included in
-all copies or substantial portions of the Software.
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
-THE SOFTWARE.
-*/
-
-parser grammar TSqlParser;
-
-options { tokenVocab=TSqlLexer; }
-
-tsql_file
- : batch* EOF
- ;
-
-batch
- : execute_body go_statement*
- | execute_body? sql_clauses go_statement*
- ;
-
-sql_clauses
- : (sql_clause SEMI?)+
- ;
-
-sql_clause
- : dml_clause
-
- | ddl_clause
-
- | cfl_statement
-
- | dbcc_clause
-
- | empty_statement
-
- | another_statement
-
- | backup_statement
- ;
-
-// Data Manipulation Language: https://msdn.microsoft.com/en-us/library/ff848766(v=sql.120).aspx
-dml_clause
- : merge_statement
- | delete_statement
- | insert_statement
- | select_statement
- | update_statement
- ;
-
-// Data Definition Language: https://msdn.microsoft.com/en-us/library/ff848799.aspx)
-ddl_clause
- : alter_application_role
- | alter_assembly
- | alter_asymmetric_key
- | alter_authorization
- | alter_authorization_for_azure_dw
- | alter_authorization_for_parallel_dw
- | alter_authorization_for_sql_database
- | alter_availability_group
- | alter_certificate
- | alter_column_encryption_key
- | alter_credential
- | alter_cryptographic_provider
- | alter_database
- | alter_db_role
- | alter_endpoint
- | create_or_alter_event_session
- | alter_external_data_source
- | alter_external_library
- | alter_external_resource_pool
- | alter_fulltext_catalog
- | alter_fulltext_stoplist
- | alter_login_azure_sql
- | alter_login_azure_sql_dw_and_pdw
- | alter_login_sql_server
- | alter_master_key_azure_sql
- | alter_master_key_sql_server
- | alter_message_type
- | alter_partition_function
- | alter_partition_scheme
- | alter_remote_service_binding
- | alter_resource_governor
- | alter_schema_azure_sql_dw_and_pdw
- | alter_schema_sql
- | alter_sequence
- | alter_server_audit
- | alter_server_audit_specification
- | alter_server_configuration
- | alter_server_role
- | alter_server_role_pdw
- | alter_service
- | alter_service_master_key
- | alter_symmetric_key
- | alter_table
- | alter_user
- | alter_user_azure_sql
- | alter_workload_group
- | create_application_role
- | create_assembly
- | create_asymmetric_key
- | create_column_encryption_key
- | create_column_master_key
- | create_credential
- | create_cryptographic_provider
- | create_database
- | create_db_role
- | create_event_notification
- | create_external_library
- | create_external_resource_pool
- | create_fulltext_catalog
- | create_fulltext_stoplist
- | create_index
- | create_login_azure_sql
- | create_login_pdw
- | create_login_sql_server
- | create_master_key_azure_sql
- | create_master_key_sql_server
- | create_or_alter_broker_priority
- | create_or_alter_function
- | create_or_alter_procedure
- | create_or_alter_trigger
- | create_remote_service_binding
- | create_resource_pool
- | create_route
- | create_rule
- | create_schema
- | create_schema_azure_sql_dw_and_pdw
- | create_search_property_list
- | create_security_policy
- | create_sequence
- | create_server_audit
- | create_server_audit_specification
- | create_server_role
- | create_service
- | create_statistics
- | create_symmetric_key
- | create_synonym
- | create_table
- | create_type
- | create_user
- | create_user_azure_sql_dw
- | create_view
- | create_workload_group
- | create_xml_schema_collection
- | drop_aggregate
- | drop_application_role
- | drop_assembly
- | drop_asymmetric_key
- | drop_availability_group
- | drop_broker_priority
- | drop_certificate
- | drop_column_encryption_key
- | drop_column_master_key
- | drop_contract
- | drop_credential
- | drop_cryptograhic_provider
- | drop_database
- | drop_database_audit_specification
- | drop_database_scoped_credential
- | drop_db_role
- | drop_default
- | drop_endpoint
- | drop_event_notifications
- | drop_event_session
- | drop_external_data_source
- | drop_external_file_format
- | drop_external_library
- | drop_external_resource_pool
- | drop_external_table
- | drop_fulltext_catalog
- | drop_fulltext_index
- | drop_fulltext_stoplist
- | drop_function
- | drop_index
- | drop_login
- | drop_master_key
- | drop_message_type
- | drop_partition_function
- | drop_partition_scheme
- | drop_procedure
- | drop_queue
- | drop_remote_service_binding
- | drop_resource_pool
- | drop_route
- | drop_rule
- | drop_schema
- | drop_search_property_list
- | drop_security_policy
- | drop_sequence
- | drop_server_audit
- | drop_server_audit_specification
- | drop_server_role
- | drop_service
- | drop_signature
- | drop_statistics
- | drop_statistics_name_azure_dw_and_pdw
- | drop_symmetric_key
- | drop_synonym
- | drop_table
- | drop_trigger
- | drop_type
- | drop_user
- | drop_view
- | drop_workload_group
- | drop_xml_schema_collection
- | disable_trigger
- | enable_trigger
- | lock_table
- | truncate_table
- | update_statistics
- ;
-backup_statement
- : backup_database
- | backup_log
- | backup_certificate
- | backup_master_key
- | backup_service_master_key
- ;
-
-// Control-of-Flow Language: https://docs.microsoft.com/en-us/sql/t-sql/language-elements/control-of-flow
-cfl_statement
- : block_statement
- | break_statement
- | continue_statement
- | goto_statement
- | if_statement
- | return_statement
- | throw_statement
- | try_catch_statement
- | waitfor_statement
- | while_statement
- | print_statement
- | raiseerror_statement
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/language-elements/begin-end-transact-sql
-block_statement
- : BEGIN ';'? sql_clauses? END ';'?
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/language-elements/break-transact-sql
-break_statement
- : BREAK ';'?
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/language-elements/continue-transact-sql
-continue_statement
- : CONTINUE ';'?
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/language-elements/goto-transact-sql
-goto_statement
- : GOTO id ';'?
- | id ':' ';'?
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/language-elements/return-transact-sql
-return_statement
- : RETURN expression? ';'?
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/language-elements/if-else-transact-sql
-if_statement
- : IF search_condition sql_clause (ELSE sql_clause)? ';'?
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/language-elements/throw-transact-sql
-throw_statement
- : THROW (throw_error_number ',' throw_message ',' throw_state)? ';'?
- ;
-
-throw_error_number
- : DECIMAL | LOCAL_ID
- ;
-
-throw_message
- : STRING | LOCAL_ID
- ;
-
-throw_state
- : DECIMAL | LOCAL_ID
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/language-elements/try-catch-transact-sql
-try_catch_statement
- : BEGIN TRY ';'? try_clauses=sql_clauses? END TRY ';'? BEGIN CATCH ';'? catch_clauses=sql_clauses? END CATCH ';'?
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/language-elements/waitfor-transact-sql
-waitfor_statement
- : WAITFOR receive_statement? ','? ((DELAY | TIME | TIMEOUT) time)? expression? ';'?
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/language-elements/while-transact-sql
-while_statement
- : WHILE search_condition (sql_clause | BREAK ';'? | CONTINUE ';'?)
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/language-elements/print-transact-sql
-print_statement
- : PRINT (expression | DOUBLE_QUOTE_ID) (',' LOCAL_ID)* ';'?
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/language-elements/raiserror-transact-sql
-raiseerror_statement
- : RAISERROR '(' msg=(DECIMAL | STRING | LOCAL_ID) ',' severity=constant_LOCAL_ID ','
- state=constant_LOCAL_ID (',' constant_LOCAL_ID)* ')' (WITH (LOG | SETERROR))? ';'?
- | RAISERROR DECIMAL formatstring=(STRING | LOCAL_ID | DOUBLE_QUOTE_ID) (',' argument=(DECIMAL | STRING | LOCAL_ID))*
- ;
-
-empty_statement
- : ';'
- ;
-
-another_statement
- : declare_statement
- | cursor_statement
- | conversation_statement
- | create_contract
- | create_queue
- | alter_queue
- | execute_statement
- | kill_statement
- | message_statement
- | security_statement
- | set_statement
- | transaction_statement
- | use_statement
- | setuser_statement
- | reconfigure_statement
- | shutdown_statement
- ;
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/alter-application-role-transact-sql
-
-alter_application_role
- : ALTER APPLICATION ROLE appliction_role=id WITH (COMMA? NAME EQUAL new_application_role_name=id)? (COMMA? PASSWORD EQUAL application_role_password=STRING)? (COMMA? DEFAULT_SCHEMA EQUAL app_role_default_schema=id)?
- ;
-
-create_application_role
- : CREATE APPLICATION ROLE appliction_role=id WITH (COMMA? PASSWORD EQUAL application_role_password=STRING)? (COMMA? DEFAULT_SCHEMA EQUAL app_role_default_schema=id)?
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-aggregate-transact-sql
-
-drop_aggregate
- : DROP AGGREGATE ( IF EXISTS )? ( schema_name=id DOT )? aggregate_name=id
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-application-role-transact-sql
-drop_application_role
- : DROP APPLICATION ROLE rolename=id
- ;
-
-alter_assembly
- : alter_assembly_start assembly_name=id alter_assembly_clause
- ;
-
-alter_assembly_start
- : ALTER ASSEMBLY
- ;
-
-alter_assembly_clause
- : alter_assembly_from_clause? alter_assembly_with_clause? alter_assembly_drop_clause? alter_assembly_add_clause?
- ;
-
-alter_assembly_from_clause
- : alter_assembly_from_clause_start (client_assembly_specifier | alter_assembly_file_bits )
- ;
-
-alter_assembly_from_clause_start
- : FROM
- ;
-
-alter_assembly_drop_clause
- : alter_assembly_drop alter_assembly_drop_multiple_files
- ;
-
-alter_assembly_drop_multiple_files
- : ALL
- | multiple_local_files
- ;
-
-alter_assembly_drop
- : DROP
- ;
-
-alter_assembly_add_clause
- : alter_asssembly_add_clause_start alter_assembly_client_file_clause
- ;
-
-alter_asssembly_add_clause_start
- : ADD FILE FROM
- ;
-
-// need to implement
-alter_assembly_client_file_clause
- : alter_assembly_file_name (alter_assembly_as id)?
- ;
-
-alter_assembly_file_name
- : STRING
- ;
-
-//need to implement
-alter_assembly_file_bits
- : alter_assembly_as id
- ;
-
-alter_assembly_as
- : AS
- ;
-
-alter_assembly_with_clause
- : alter_assembly_with assembly_option
- ;
-
-alter_assembly_with
- : WITH
- ;
-
-client_assembly_specifier
- : network_file_share
- | local_file
- | STRING
- ;
-
-assembly_option
- : PERMISSION_SET EQUAL (SAFE|EXTERNAL_ACCESS|UNSAFE)
- | VISIBILITY EQUAL (ON | OFF)
- | UNCHECKED DATA
- | assembly_option COMMA
- ;
-
-network_file_share
- : network_file_start network_computer file_path
- ;
-
-network_computer
- : computer_name=id
- ;
-
-network_file_start
- : DOUBLE_BACK_SLASH
- ;
-
-file_path
- : file_directory_path_separator file_path
- | id
- ;
-
-file_directory_path_separator
- : '\\'
- ;
-
-local_file
- : local_drive file_path
- ;
-
-local_drive
- :
- DISK_DRIVE
- ;
-multiple_local_files
- :
- multiple_local_file_start local_file SINGLE_QUOTE COMMA
- | local_file
- ;
-
-multiple_local_file_start
- : SINGLE_QUOTE
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/create-assembly-transact-sql
-create_assembly
- : CREATE ASSEMBLY assembly_name=id (AUTHORIZATION owner_name=id)?
- FROM (COMMA? (STRING|BINARY) )+
- (WITH PERMISSION_SET EQUAL (SAFE|EXTERNAL_ACCESS|UNSAFE) )?
-
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-assembly-transact-sql
-drop_assembly
- : DROP ASSEMBLY ( IF EXISTS )? (COMMA? assembly_name=id)+
- ( WITH NO DEPENDENTS )?
- ;
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/alter-asymmetric-key-transact-sql
-
-alter_asymmetric_key
- :
- alter_asymmetric_key_start Asym_Key_Name=id (asymmetric_key_option | REMOVE PRIVATE KEY )
- ;
-
-alter_asymmetric_key_start
- : ALTER ASYMMETRIC KEY
- ;
-
-asymmetric_key_option
- : asymmetric_key_option_start asymmetric_key_password_change_option ( COMMA asymmetric_key_password_change_option)? RR_BRACKET
- ;
-
-asymmetric_key_option_start
- : WITH PRIVATE KEY LR_BRACKET
- ;
-
-asymmetric_key_password_change_option
- : DECRYPTION BY PASSWORD EQUAL STRING
- | ENCRYPTION BY PASSWORD EQUAL STRING
- ;
-
-
-//https://docs.microsoft.com/en-us/sql/t-sql/statements/create-asymmetric-key-transact-sql
-
-create_asymmetric_key
- : CREATE ASYMMETRIC KEY Asym_Key_Nam=id
- (AUTHORIZATION database_principal_name=id)?
- ( FROM (FILE EQUAL STRING |EXECUTABLE_FILE EQUAL STRING|ASSEMBLY Assembly_Name=id | PROVIDER Provider_Name=id) )?
- (WITH (ALGORITHM EQUAL ( RSA_4096 | RSA_3072 | RSA_2048 | RSA_1024 | RSA_512) |PROVIDER_KEY_NAME EQUAL provider_key_name=STRING | CREATION_DISPOSITION EQUAL (CREATE_NEW|OPEN_EXISTING) ) )?
- (ENCRYPTION BY PASSWORD EQUAL asymmetric_key_password=STRING )?
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-asymmetric-key-transact-sql
-drop_asymmetric_key
- : DROP ASYMMETRIC KEY key_name=id ( REMOVE PROVIDER KEY )?
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/alter-authorization-transact-sql
-
-alter_authorization
- : alter_authorization_start (class_type colon_colon)? entity=entity_name entity_to authorization_grantee
- ;
-
-authorization_grantee
- : principal_name=id
- | SCHEMA OWNER
- ;
-
-entity_to
- : TO
- ;
-
-colon_colon
- : COLON COLON
- ;
-
-alter_authorization_start
- : ALTER AUTHORIZATION ON
- ;
-
-alter_authorization_for_sql_database
- : alter_authorization_start (class_type_for_sql_database colon_colon)? entity=entity_name entity_to authorization_grantee
- ;
-
-alter_authorization_for_azure_dw
- : alter_authorization_start (class_type_for_azure_dw colon_colon)? entity=entity_name_for_azure_dw entity_to authorization_grantee
- ;
-
-alter_authorization_for_parallel_dw
- : alter_authorization_start (class_type_for_parallel_dw colon_colon)? entity=entity_name_for_parallel_dw entity_to authorization_grantee
- ;
-
-
-class_type
- : OBJECT
- | ASSEMBLY
- | ASYMMETRIC KEY
- | AVAILABILITY GROUP
- | CERTIFICATE
- | CONTRACT
- | TYPE
- | DATABASE
- | ENDPOINT
- | FULLTEXT CATALOG
- | FULLTEXT STOPLIST
- | MESSAGE TYPE
- | REMOTE SERVICE BINDING
- | ROLE
- | ROUTE
- | SCHEMA
- | SEARCH PROPERTY LIST
- | SERVER ROLE
- | SERVICE
- | SYMMETRIC KEY
- | XML SCHEMA COLLECTION
- ;
-
-class_type_for_sql_database
- : OBJECT
- | ASSEMBLY
- | ASYMMETRIC KEY
- | CERTIFICATE
- | TYPE
- | DATABASE
- | FULLTEXT CATALOG
- | FULLTEXT STOPLIST
- | ROLE
- | SCHEMA
- | SEARCH PROPERTY LIST
- | SYMMETRIC KEY
- | XML SCHEMA COLLECTION
- ;
-
-class_type_for_azure_dw
- : SCHEMA
- | OBJECT
- ;
-
-class_type_for_parallel_dw
- : DATABASE
- | SCHEMA
- | OBJECT
- ;
-
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-availability-group-transact-sql
-drop_availability_group
- : DROP AVAILABILITY GROUP group_name=id
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/alter-availability-group-transact-sql
-alter_availability_group
- : alter_availability_group_start alter_availability_group_options
- ;
-
-alter_availability_group_start
- : ALTER AVAILABILITY GROUP group_name=id
- ;
-
-alter_availability_group_options
- : SET LR_BRACKET ( ( AUTOMATED_BACKUP_PREFERENCE EQUAL ( PRIMARY | SECONDARY_ONLY| SECONDARY | NONE ) | FAILURE_CONDITION_LEVEL EQUAL DECIMAL | HEALTH_CHECK_TIMEOUT EQUAL milliseconds=DECIMAL | DB_FAILOVER EQUAL ( ON | OFF ) | REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT EQUAL DECIMAL ) RR_BRACKET )
- | ADD DATABASE database_name=id
- | REMOVE DATABASE database_name=id
- | ADD REPLICA ON server_instance=STRING (WITH LR_BRACKET ( (ENDPOINT_URL EQUAL STRING)? (COMMA? AVAILABILITY_MODE EQUAL (SYNCHRONOUS_COMMIT| ASYNCHRONOUS_COMMIT))? (COMMA? FAILOVER_MODE EQUAL (AUTOMATIC|MANUAL) )? (COMMA? SEEDING_MODE EQUAL (AUTOMATIC|MANUAL) )? (COMMA? BACKUP_PRIORITY EQUAL DECIMAL)? ( COMMA? PRIMARY_ROLE LR_BRACKET ALLOW_CONNECTIONS EQUAL ( READ_WRITE | ALL ) RR_BRACKET)? ( COMMA? SECONDARY_ROLE LR_BRACKET ALLOW_CONNECTIONS EQUAL ( READ_ONLY ) RR_BRACKET )? )
-) RR_BRACKET
- |SECONDARY_ROLE LR_BRACKET (ALLOW_CONNECTIONS EQUAL (NO|READ_ONLY|ALL) | READ_ONLY_ROUTING_LIST EQUAL ( LR_BRACKET ( ( STRING) ) RR_BRACKET ) )
- |PRIMARY_ROLE LR_BRACKET (ALLOW_CONNECTIONS EQUAL (NO|READ_ONLY|ALL) | READ_ONLY_ROUTING_LIST EQUAL ( LR_BRACKET ( (COMMA? STRING)*|NONE ) RR_BRACKET )
- | SESSION_TIMEOUT EQUAL session_timeout=DECIMAL
-)
- | MODIFY REPLICA ON server_instance=STRING (WITH LR_BRACKET (ENDPOINT_URL EQUAL STRING| AVAILABILITY_MODE EQUAL (SYNCHRONOUS_COMMIT| ASYNCHRONOUS_COMMIT) | FAILOVER_MODE EQUAL (AUTOMATIC|MANUAL) | SEEDING_MODE EQUAL (AUTOMATIC|MANUAL) | BACKUP_PRIORITY EQUAL DECIMAL )
- |SECONDARY_ROLE LR_BRACKET (ALLOW_CONNECTIONS EQUAL (NO|READ_ONLY|ALL) | READ_ONLY_ROUTING_LIST EQUAL ( LR_BRACKET ( ( STRING) ) RR_BRACKET ) )
- |PRIMARY_ROLE LR_BRACKET (ALLOW_CONNECTIONS EQUAL (NO|READ_ONLY|ALL) | READ_ONLY_ROUTING_LIST EQUAL ( LR_BRACKET ( (COMMA? STRING)*|NONE ) RR_BRACKET )
- | SESSION_TIMEOUT EQUAL session_timeout=DECIMAL
-) ) RR_BRACKET
- | REMOVE REPLICA ON STRING
- | JOIN
- | JOIN AVAILABILITY GROUP ON (COMMA? ag_name=STRING WITH LR_BRACKET ( LISTENER_URL EQUAL STRING COMMA AVAILABILITY_MODE EQUAL (SYNCHRONOUS_COMMIT|ASYNCHRONOUS_COMMIT) COMMA FAILOVER_MODE EQUAL MANUAL COMMA SEEDING_MODE EQUAL (AUTOMATIC|MANUAL) RR_BRACKET ) )+
- | MODIFY AVAILABILITY GROUP ON (COMMA? ag_name_modified=STRING WITH LR_BRACKET (LISTENER_URL EQUAL STRING (COMMA? AVAILABILITY_MODE EQUAL (SYNCHRONOUS_COMMIT|ASYNCHRONOUS_COMMIT) )? (COMMA? FAILOVER_MODE EQUAL MANUAL )? (COMMA? SEEDING_MODE EQUAL (AUTOMATIC|MANUAL))? RR_BRACKET ) )+
- |GRANT CREATE ANY DATABASE
- | DENY CREATE ANY DATABASE
- | FAILOVER
- | FORCE_FAILOVER_ALLOW_DATA_LOSS
- | ADD LISTENER listener_name=STRING LR_BRACKET ( WITH DHCP (ON LR_BRACKET (IPV4_ADDR IPV4_ADDR ) RR_BRACKET ) | WITH IP LR_BRACKET ( (COMMA? LR_BRACKET ( IPV4_ADDR COMMA IPV4_ADDR | IPV6_ADDR ) RR_BRACKET)+ RR_BRACKET (COMMA PORT EQUAL DECIMAL)? ) ) RR_BRACKET
- | MODIFY LISTENER (ADD IP LR_BRACKET (IPV4_ADDR IPV4_ADDR | IPV6_ADDR) RR_BRACKET | PORT EQUAL DECIMAL )
- |RESTART LISTENER STRING
- |REMOVE LISTENER STRING
- |OFFLINE
- | WITH LR_BRACKET DTC_SUPPORT EQUAL PER_DB RR_BRACKET
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/alter-broker-priority-transact-sql
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/create-broker-priority-transact-sql
-create_or_alter_broker_priority
- : (CREATE | ALTER) BROKER PRIORITY ConversationPriorityName=id FOR CONVERSATION
- SET LR_BRACKET
- ( CONTRACT_NAME EQUAL ( ( id) | ANY ) COMMA? )?
- ( LOCAL_SERVICE_NAME EQUAL (DOUBLE_FORWARD_SLASH? id | ANY ) COMMA? )?
- ( REMOTE_SERVICE_NAME EQUAL (RemoteServiceName=STRING | ANY ) COMMA? )?
- ( PRIORITY_LEVEL EQUAL ( PriorityValue=DECIMAL | DEFAULT ) ) ?
- RR_BRACKET
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-broker-priority-transact-sql
-drop_broker_priority
- : DROP BROKER PRIORITY ConversationPriorityName=id
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/alter-certificate-transact-sql
-alter_certificate
- : ALTER CERTIFICATE certificate_name=id (REMOVE PRIVATE_KEY | WITH PRIVATE KEY LR_BRACKET ( FILE EQUAL STRING COMMA? | DECRYPTION BY PASSWORD EQUAL STRING COMMA?| ENCRYPTION BY PASSWORD EQUAL STRING COMMA?)+ RR_BRACKET | WITH ACTIVE FOR BEGIN_DIALOG EQUAL ( ON | OFF ) )
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/alter-column-encryption-key-transact-sql
-alter_column_encryption_key
- : ALTER COLUMN ENCRYPTION KEY column_encryption_key=id (ADD | DROP) VALUE LR_BRACKET COLUMN_MASTER_KEY EQUAL column_master_key_name=id ( COMMA ALGORITHM EQUAL algorithm_name=STRING COMMA ENCRYPTED_VALUE EQUAL BINARY)? RR_BRACKET
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/create-column-encryption-key-transact-sql
-create_column_encryption_key
- : CREATE COLUMN ENCRYPTION KEY column_encryption_key=id
- WITH VALUES
- (LR_BRACKET COMMA? COLUMN_MASTER_KEY EQUAL column_master_key_name=id COMMA
- ALGORITHM EQUAL algorithm_name=STRING COMMA
- ENCRYPTED_VALUE EQUAL encrypted_value=BINARY RR_BRACKET COMMA?)+
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-certificate-transact-sql
-drop_certificate
- : DROP CERTIFICATE certificate_name=id
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-column-encryption-key-transact-sql
-drop_column_encryption_key
- : DROP COLUMN ENCRYPTION KEY key_name=id
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-column-master-key-transact-sql
-drop_column_master_key
- : DROP COLUMN MASTER KEY key_name=id
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-contract-transact-sql
-drop_contract
- : DROP CONTRACT dropped_contract_name=id
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-credential-transact-sql
-drop_credential
- : DROP CREDENTIAL credential_name=id
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-cryptographic-provider-transact-sql
-drop_cryptograhic_provider
- : DROP CRYPTOGRAPHIC PROVIDER provider_name=id
- ;
-
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-database-transact-sql
-drop_database
- : DROP DATABASE ( IF EXISTS )? (COMMA? database_name_or_database_snapshot_name=id)+
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-database-audit-specification-transact-sql
-drop_database_audit_specification
- : DROP DATABASE AUDIT SPECIFICATION audit_specification_name=id
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-database-scoped-credential-transact-sql
-drop_database_scoped_credential
- : DROP DATABASE SCOPED CREDENTIAL credential_name=id
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-default-transact-sql
-drop_default
- : DROP DEFAULT ( IF EXISTS )? (COMMA? (schema_name=id DOT)? default_name=id)
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-endpoint-transact-sql
-drop_endpoint
- : DROP ENDPOINT endPointName=id
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-external-data-source-transact-sql
-drop_external_data_source
- : DROP EXTERNAL DATA SOURCE external_data_source_name=id
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-external-file-format-transact-sql
-drop_external_file_format
- : DROP EXTERNAL FILE FORMAT external_file_format_name=id
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-external-library-transact-sql
-drop_external_library
- : DROP EXTERNAL LIBRARY library_name=id
-( AUTHORIZATION owner_name=id )?
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-external-resource-pool-transact-sql
-drop_external_resource_pool
- : DROP EXTERNAL RESOURCE POOL pool_name=id
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-external-table-transact-sql
-drop_external_table
- : DROP EXTERNAL TABLE (database_name=id DOT)? (schema_name=id DOT)? table=id
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-event-notification-transact-sql
-drop_event_notifications
- : DROP EVENT NOTIFICATION (COMMA? notification_name=id)+
- ON (SERVER|DATABASE|QUEUE queue_name=id)
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-event-session-transact-sql
-drop_event_session
- : DROP EVENT SESSION event_session_name=id
- ON SERVER
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-fulltext-catalog-transact-sql
-drop_fulltext_catalog
- : DROP FULLTEXT CATALOG catalog_name=id
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-fulltext-index-transact-sql
-drop_fulltext_index
- : DROP FULLTEXT INDEX ON (schema=id DOT)? table=id
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-fulltext-stoplist-transact-sql
-drop_fulltext_stoplist
- : DROP FULLTEXT STOPLIST stoplist_name=id
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-login-transact-sql
-drop_login
- : DROP LOGIN login_name=id
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-master-key-transact-sql
-drop_master_key
- : DROP MASTER KEY
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-message-type-transact-sql
-drop_message_type
- : DROP MESSAGE TYPE message_type_name=id
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-partition-function-transact-sql
-drop_partition_function
- : DROP PARTITION FUNCTION partition_function_name=id
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-partition-scheme-transact-sql
-drop_partition_scheme
- : DROP PARTITION SCHEME partition_scheme_name=id
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-queue-transact-sql
-drop_queue
- : DROP QUEUE (database_name=id DOT)? (schema_name=id DOT)? queue_name=id
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-remote-service-binding-transact-sql
-drop_remote_service_binding
- : DROP REMOTE SERVICE BINDING binding_name=id
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-resource-pool-transact-sql
-drop_resource_pool
- : DROP RESOURCE POOL pool_name=id
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-role-transact-sql
-drop_db_role
- : DROP ROLE ( IF EXISTS )? role_name=id
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-route-transact-sql
-drop_route
- : DROP ROUTE route_name=id
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-rule-transact-sql
-drop_rule
- : DROP RULE ( IF EXISTS )? (COMMA? (schema_name=id DOT)? rule_name=id)?
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-schema-transact-sql
-drop_schema
- : DROP SCHEMA ( IF EXISTS )? schema_name=id
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-search-property-list-transact-sql
-drop_search_property_list
- : DROP SEARCH PROPERTY LIST property_list_name=id
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-security-policy-transact-sql
-drop_security_policy
- : DROP SECURITY POLICY ( IF EXISTS )? (schema_name=id DOT )? security_policy_name=id
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-sequence-transact-sql
-drop_sequence
- : DROP SEQUENCE ( IF EXISTS )? ( COMMA? (database_name=id DOT)? (schema_name=id DOT)? sequence_name=id )?
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-server-audit-transact-sql
-drop_server_audit
- : DROP SERVER AUDIT audit_name=id
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-server-audit-specification-transact-sql
-drop_server_audit_specification
- : DROP SERVER AUDIT SPECIFICATION audit_specification_name=id
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-server-role-transact-sql
-drop_server_role
- : DROP SERVER ROLE role_name=id
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-service-transact-sql
-drop_service
- : DROP SERVICE dropped_service_name=id
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-signature-transact-sql
-drop_signature
- : DROP ( COUNTER )? SIGNATURE FROM (schema_name=id DOT)? module_name=id
- BY (COMMA? CERTIFICATE cert_name=id
- | COMMA? ASYMMETRIC KEY Asym_key_name=id
- )+
- ;
-
-
-drop_statistics_name_azure_dw_and_pdw
- : DROP STATISTICS (schema_name=id DOT)? object_name=id DOT statistics_name=id
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-symmetric-key-transact-sql
-drop_symmetric_key
- : DROP SYMMETRIC KEY symmetric_key_name=id (REMOVE PROVIDER KEY)?
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-synonym-transact-sql
-drop_synonym
- : DROP SYNONYM ( IF EXISTS )? ( schema=id DOT )? synonym_name=id
- ;
-
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-user-transact-sql
-drop_user
- : DROP USER ( IF EXISTS )? user_name=id
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-workload-group-transact-sql
-drop_workload_group
- : DROP WORKLOAD GROUP group_name=id
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-xml-schema-collection-transact-sql
-drop_xml_schema_collection
- : DROP XML SCHEMA COLLECTION ( relational_schema=id DOT )? sql_identifier=id
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/disable-trigger-transact-sql
-disable_trigger
- : DISABLE TRIGGER ( ( COMMA? (schema_name=id DOT)? trigger_name=id )+ | ALL) ON ((schema_id=id DOT)? object_name=id|DATABASE|ALL SERVER)
- ;
-
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/enable-trigger-transact-sql
-enable_trigger
- : ENABLE TRIGGER ( ( COMMA? (schema_name=id DOT)? trigger_name=id )+ | ALL) ON ( (schema_id=id DOT)? object_name=id|DATABASE|ALL SERVER)
- ;
-
-lock_table
- : LOCK TABLE table_name IN (SHARE | EXCLUSIVE) MODE (WAIT seconds=DECIMAL | NOWAIT)? ';'?
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/truncate-table-transact-sql
-truncate_table
- : TRUNCATE TABLE table_name
- ( WITH LR_BRACKET
- PARTITIONS LR_BRACKET
- (COMMA? (DECIMAL|DECIMAL TO DECIMAL) )+
- RR_BRACKET
-
- RR_BRACKET
- )?
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/create-column-master-key-transact-sql
-create_column_master_key
- : CREATE COLUMN MASTER KEY key_name=id
- WITH LR_BRACKET
- KEY_STORE_PROVIDER_NAME EQUAL key_store_provider_name=STRING COMMA
- KEY_PATH EQUAL key_path=STRING
- RR_BRACKET
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/alter-credential-transact-sql
-alter_credential
- : ALTER CREDENTIAL credential_name=id
- WITH IDENTITY EQUAL identity_name=STRING
- ( COMMA SECRET EQUAL secret=STRING )?
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/create-credential-transact-sql
-create_credential
- : CREATE CREDENTIAL credential_name=id
- WITH IDENTITY EQUAL identity_name=STRING
- ( COMMA SECRET EQUAL secret=STRING )?
- ( FOR CRYPTOGRAPHIC PROVIDER cryptographic_provider_name=id )?
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/alter-cryptographic-provider-transact-sql
-alter_cryptographic_provider
- : ALTER CRYPTOGRAPHIC PROVIDER provider_name=id (FROM FILE EQUAL crypto_provider_ddl_file=STRING)? (ENABLE | DISABLE)?
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/create-cryptographic-provider-transact-sql
-create_cryptographic_provider
- : CREATE CRYPTOGRAPHIC PROVIDER provider_name=id
- FROM FILE EQUAL path_of_DLL=STRING
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/create-event-notification-transact-sql
-create_event_notification
- : CREATE EVENT NOTIFICATION event_notification_name=id
- ON (SERVER|DATABASE|QUEUE queue_name=id)
- (WITH FAN_IN)?
- FOR (COMMA? event_type_or_group=id)+
- TO SERVICE broker_service=STRING COMMA
- broker_service_specifier_or_current_database=STRING
- ;
-
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/alter-event-session-transact-sql
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/create-event-session-transact-sql
-// todo: not implemented
-create_or_alter_event_session
- : (CREATE | ALTER) EVENT SESSION event_session_name=id ON SERVER
- (COMMA? ADD EVENT ( (event_module_guid=id DOT)? event_package_name=id DOT event_name=id)
- (LR_BRACKET
- (SET ( COMMA? event_customizable_attributue=id EQUAL (DECIMAL|STRING) )* )?
- ( ACTION LR_BRACKET (COMMA? (event_module_guid=id DOT)? event_package_name=id DOT action_name=id)+ RR_BRACKET)+
- (WHERE event_session_predicate_expression)?
- RR_BRACKET )*
- )*
- (COMMA? DROP EVENT (event_module_guid=id DOT)? event_package_name=id DOT event_name=id )*
-
- ( (ADD TARGET (event_module_guid=id DOT)? event_package_name=id DOT target_name=id ) ( LR_BRACKET SET (COMMA? target_parameter_name=id EQUAL (LR_BRACKET? DECIMAL RR_BRACKET? |STRING) )+ RR_BRACKET )* )*
- (DROP TARGET (event_module_guid=id DOT)? event_package_name=id DOT target_name=id )*
-
-
- (WITH
- LR_BRACKET
- (COMMA? MAX_MEMORY EQUAL max_memory=DECIMAL (KB|MB) )?
- (COMMA? EVENT_RETENTION_MODE EQUAL (ALLOW_SINGLE_EVENT_LOSS | ALLOW_MULTIPLE_EVENT_LOSS | NO_EVENT_LOSS ) )?
- (COMMA? MAX_DISPATCH_LATENCY EQUAL (max_dispatch_latency_seconds=DECIMAL SECONDS | INFINITE) )?
- (COMMA? MAX_EVENT_SIZE EQUAL max_event_size=DECIMAL (KB|MB) )?
- (COMMA? MEMORY_PARTITION_MODE EQUAL (NONE | PER_NODE | PER_CPU) )?
- (COMMA? TRACK_CAUSALITY EQUAL (ON|OFF) )?
- (COMMA? STARTUP_STATE EQUAL (ON|OFF) )?
- RR_BRACKET
- )?
- (STATE EQUAL (START|STOP) )?
-
- ;
-
-event_session_predicate_expression
- : ( COMMA? (AND|OR)? NOT? ( event_session_predicate_factor | LR_BRACKET event_session_predicate_expression RR_BRACKET) )+
- ;
-
-event_session_predicate_factor
- : event_session_predicate_leaf
- | LR_BRACKET event_session_predicate_expression RR_BRACKET
- ;
-
-event_session_predicate_leaf
- : (event_field_name=id | (event_field_name=id |( (event_module_guid=id DOT)? event_package_name=id DOT predicate_source_name=id ) ) (EQUAL |(LESS GREATER) | (EXCLAMATION EQUAL) | GREATER | (GREATER EQUAL)| LESS | LESS EQUAL) (DECIMAL | STRING) )
- | (event_module_guid=id DOT)? event_package_name=id DOT predicate_compare_name=id LR_BRACKET (event_field_name=id |( (event_module_guid=id DOT)? event_package_name=id DOT predicate_source_name=id ) COMMA (DECIMAL | STRING) ) RR_BRACKET
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/alter-external-data-source-transact-sql
-alter_external_data_source
- : ALTER EXTERNAL DATA SOURCE data_source_name=id SET
- ( LOCATION EQUAL location=(QUOTED_URL|QUOTED_HOST_AND_PORT) COMMA? | RESOURCE_MANAGER_LOCATION EQUAL resource_manager_location=(QUOTED_URL|QUOTED_HOST_AND_PORT) COMMA? | CREDENTIAL EQUAL credential_name=id )+
- | ALTER EXTERNAL DATA SOURCE data_source_name=id WITH LR_BRACKET TYPE EQUAL BLOB_STORAGE COMMA LOCATION EQUAL location=STRING (COMMA CREDENTIAL EQUAL credential_name=id )? RR_BRACKET
- ;
-
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/alter-external-library-transact-sql
-alter_external_library
- : ALTER EXTERNAL LIBRARY library_name=id (AUTHORIZATION owner_name=id)?
- (SET|ADD) ( LR_BRACKET CONTENT EQUAL (client_library=STRING | BINARY | NONE) (COMMA PLATFORM EQUAL (WINDOWS|LINUX)? RR_BRACKET) WITH (COMMA? LANGUAGE EQUAL (R|PYTHON) | DATA_SOURCE EQUAL external_data_source_name=id )+ RR_BRACKET )
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/create-external-library-transact-sql
-create_external_library
- : CREATE EXTERNAL LIBRARY library_name=id (AUTHORIZATION owner_name=id)?
- FROM (COMMA? LR_BRACKET? (CONTENT EQUAL)? (client_library=STRING | BINARY | NONE) (COMMA PLATFORM EQUAL (WINDOWS|LINUX)? RR_BRACKET)? ) ( WITH (COMMA? LANGUAGE EQUAL (R|PYTHON) | DATA_SOURCE EQUAL external_data_source_name=id )+ RR_BRACKET )?
- ;
-
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/alter-external-resource-pool-transact-sql
-alter_external_resource_pool
- : ALTER EXTERNAL RESOURCE POOL (pool_name=id | DEFAULT_DOUBLE_QUOTE) WITH LR_BRACKET MAX_CPU_PERCENT EQUAL max_cpu_percent=DECIMAL ( COMMA? AFFINITY CPU EQUAL (AUTO|(COMMA? DECIMAL TO DECIMAL |COMMA DECIMAL )+ ) | NUMANODE EQUAL (COMMA? DECIMAL TO DECIMAL| COMMA? DECIMAL )+ ) (COMMA? MAX_MEMORY_PERCENT EQUAL max_memory_percent=DECIMAL)? (COMMA? MAX_PROCESSES EQUAL max_processes=DECIMAL)? RR_BRACKET
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/create-external-resource-pool-transact-sql
-create_external_resource_pool
- : CREATE EXTERNAL RESOURCE POOL pool_name=id WITH LR_BRACKET MAX_CPU_PERCENT EQUAL max_cpu_percent=DECIMAL ( COMMA? AFFINITY CPU EQUAL (AUTO|(COMMA? DECIMAL TO DECIMAL |COMMA DECIMAL )+ ) | NUMANODE EQUAL (COMMA? DECIMAL TO DECIMAL| COMMA? DECIMAL )+ ) (COMMA? MAX_MEMORY_PERCENT EQUAL max_memory_percent=DECIMAL)? (COMMA? MAX_PROCESSES EQUAL max_processes=DECIMAL)? RR_BRACKET
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/alter-fulltext-catalog-transact-sql
-alter_fulltext_catalog
- : ALTER FULLTEXT CATALOG catalog_name=id (REBUILD (WITH ACCENT_SENSITIVITY EQUAL (ON|OFF) )? | REORGANIZE | AS DEFAULT )
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/create-fulltext-catalog-transact-sql
-create_fulltext_catalog
- : CREATE FULLTEXT CATALOG catalog_name=id
- (ON FILEGROUP filegroup=id)?
- (IN PATH rootpath=STRING)?
- (WITH ACCENT_SENSITIVITY EQUAL (ON|OFF) )?
- (AS DEFAULT)?
- (AUTHORIZATION owner_name=id)?
- ;
-
-
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/alter-fulltext-stoplist-transact-sql
-alter_fulltext_stoplist
- : ALTER FULLTEXT STOPLIST stoplist_name=id (ADD stopword=STRING LANGUAGE (STRING|DECIMAL|BINARY) | DROP ( stopword=STRING LANGUAGE (STRING|DECIMAL|BINARY) |ALL (STRING|DECIMAL|BINARY) | ALL ) )
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/create-fulltext-stoplist-transact-sql
-create_fulltext_stoplist
- : CREATE FULLTEXT STOPLIST stoplist_name=id
- (FROM ( (database_name=id DOT)? source_stoplist_name=id |SYSTEM STOPLIST ) )?
- (AUTHORIZATION owner_name=id)?
- ;
-
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/alter-login-transact-sql
-alter_login_sql_server
- : ALTER LOGIN login_name=id
- ( (ENABLE|DISABLE)? | WITH ( (PASSWORD EQUAL ( password=STRING | password_hash=BINARY HASHED ) ) (MUST_CHANGE|UNLOCK)* )? (OLD_PASSWORD EQUAL old_password=STRING (MUST_CHANGE|UNLOCK)* )? (DEFAULT_DATABASE EQUAL default_database=id)? (DEFAULT_LANGUAGE EQUAL default_laguage=id)? (NAME EQUAL login_name=id)? (CHECK_POLICY EQUAL (ON|OFF) )? (CHECK_EXPIRATION EQUAL (ON|OFF) )? (CREDENTIAL EQUAL credential_name=id)? (NO CREDENTIAL)? | (ADD|DROP) CREDENTIAL credential_name=id )
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/create-login-transact-sql
-create_login_sql_server
- : CREATE LOGIN login_name=id
- ( WITH ( (PASSWORD EQUAL ( password=STRING | password_hash=BINARY HASHED ) ) (MUST_CHANGE|UNLOCK)* )?
- (COMMA? SID EQUAL sid=BINARY)?
- (COMMA? DEFAULT_DATABASE EQUAL default_database=id)?
- (COMMA? DEFAULT_LANGUAGE EQUAL default_laguage=id)?
- (COMMA? CHECK_EXPIRATION EQUAL (ON|OFF) )?
- (COMMA? CHECK_POLICY EQUAL (ON|OFF) )?
- (COMMA? CREDENTIAL EQUAL credential_name=id)?
- |(FROM
- (WINDOWS
- (WITH (COMMA? DEFAULT_DATABASE EQUAL default_database=id)? (COMMA? DEFAULT_LANGUAGE EQUAL default_language=STRING)? )
- | CERTIFICATE certname=id
- | ASYMMETRIC KEY asym_key_name=id
- )
- )
- )
- ;
-
-alter_login_azure_sql
- : ALTER LOGIN login_name=id ( (ENABLE|DISABLE)? | WITH (PASSWORD EQUAL password=STRING (OLD_PASSWORD EQUAL old_password=STRING)? | NAME EQUAL login_name=id ) )
- ;
-
-create_login_azure_sql
- : CREATE LOGIN login_name=id
- WITH PASSWORD EQUAL STRING (SID EQUAL sid=BINARY)?
- ;
-
-alter_login_azure_sql_dw_and_pdw
- : ALTER LOGIN login_name=id ( (ENABLE|DISABLE)? | WITH (PASSWORD EQUAL password=STRING (OLD_PASSWORD EQUAL old_password=STRING (MUST_CHANGE|UNLOCK)* )? | NAME EQUAL login_name=id ) )
- ;
-
-create_login_pdw
- : CREATE LOGIN loginName=id
- (WITH
- ( PASSWORD EQUAL password=STRING (MUST_CHANGE)?
- (CHECK_POLICY EQUAL (ON|OFF)? )?
- )
- | FROM WINDOWS
- )
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/alter-master-key-transact-sql
-alter_master_key_sql_server
- : ALTER MASTER KEY ( (FORCE)? REGENERATE WITH ENCRYPTION BY PASSWORD EQUAL password=STRING |(ADD|DROP) ENCRYPTION BY (SERVICE MASTER KEY | PASSWORD EQUAL encryption_password=STRING) )
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/create-master-key-transact-sql
-create_master_key_sql_server
- : CREATE MASTER KEY ENCRYPTION BY PASSWORD EQUAL password=STRING
- ;
-
-alter_master_key_azure_sql
- : ALTER MASTER KEY ( (FORCE)? REGENERATE WITH ENCRYPTION BY PASSWORD EQUAL password=STRING |ADD ENCRYPTION BY (SERVICE MASTER KEY | PASSWORD EQUAL encryption_password=STRING) | DROP ENCRYPTION BY PASSWORD EQUAL encryption_password=STRING )
- ;
-
-create_master_key_azure_sql
- : CREATE MASTER KEY (ENCRYPTION BY PASSWORD EQUAL password=STRING)?
- ;
-
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/alter-message-type-transact-sql
-alter_message_type
- : ALTER MESSAGE TYPE message_type_name=id VALIDATION EQUAL (NONE | EMPTY | WELL_FORMED_XML | VALID_XML WITH SCHEMA COLLECTION schema_collection_name=id)
- ;
-
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/alter-partition-function-transact-sql
-alter_partition_function
- : ALTER PARTITION FUNCTION partition_function_name=id LR_BRACKET RR_BRACKET (SPLIT|MERGE) RANGE LR_BRACKET DECIMAL RR_BRACKET
- ;
-
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/alter-partition-scheme-transact-sql
-alter_partition_scheme
- : ALTER PARTITION SCHEME partition_scheme_name=id NEXT USED (file_group_name=id)?
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/alter-remote-service-binding-transact-sql
-alter_remote_service_binding
- : ALTER REMOTE SERVICE BINDING binding_name=id
- WITH (USER EQUAL user_name=id)?
- (COMMA ANONYMOUS EQUAL (ON|OFF) )?
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/create-remote-service-binding-transact-sql
-create_remote_service_binding
- : CREATE REMOTE SERVICE BINDING binding_name=id
- (AUTHORIZATION owner_name=id)?
- TO SERVICE remote_service_name=STRING
- WITH (USER EQUAL user_name=id)?
- (COMMA ANONYMOUS EQUAL (ON|OFF) )?
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/create-resource-pool-transact-sql
-create_resource_pool
- : CREATE RESOURCE POOL pool_name=id
- (WITH
- LR_BRACKET
- (COMMA? MIN_CPU_PERCENT EQUAL DECIMAL)?
- (COMMA? MAX_CPU_PERCENT EQUAL DECIMAL)?
- (COMMA? CAP_CPU_PERCENT EQUAL DECIMAL)?
- (COMMA? AFFINITY SCHEDULER EQUAL
- (AUTO
- | LR_BRACKET (COMMA? (DECIMAL|DECIMAL TO DECIMAL) )+ RR_BRACKET
- | NUMANODE EQUAL LR_BRACKET (COMMA? (DECIMAL|DECIMAL TO DECIMAL) )+ RR_BRACKET
- )
- )?
- (COMMA? MIN_MEMORY_PERCENT EQUAL DECIMAL)?
- (COMMA? MAX_MEMORY_PERCENT EQUAL DECIMAL)?
- (COMMA? MIN_IOPS_PER_VOLUME EQUAL DECIMAL)?
- (COMMA? MAX_IOPS_PER_VOLUME EQUAL DECIMAL)?
- RR_BRACKET
- )?
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/alter-resource-governor-transact-sql
-alter_resource_governor
- : ALTER RESOURCE GOVERNOR ( (DISABLE | RECONFIGURE) | WITH LR_BRACKET CLASSIFIER_FUNCTION EQUAL ( schema_name=id DOT function_name=id | NULL ) RR_BRACKET | RESET STATISTICS | WITH LR_BRACKET MAX_OUTSTANDING_IO_PER_VOLUME EQUAL max_outstanding_io_per_volume=DECIMAL RR_BRACKET )
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/alter-role-transact-sql
-alter_db_role
- : ALTER ROLE role_name=id
- ( (ADD|DROP) MEMBER database_principal=id
- | WITH NAME EQUAL new_role_name=id )
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/create-role-transact-sql
-create_db_role
- : CREATE ROLE role_name=id (AUTHORIZATION owner_name = id)?
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/create-route-transact-sql
-create_route
- : CREATE ROUTE route_name=id
- (AUTHORIZATION owner_name=id)?
- WITH
- (COMMA? SERVICE_NAME EQUAL route_service_name=STRING)?
- (COMMA? BROKER_INSTANCE EQUAL broker_instance_identifier=STRING)?
- (COMMA? LIFETIME EQUAL DECIMAL)?
- COMMA? ADDRESS EQUAL (STRING|QUOTED_URL)
- (COMMA MIRROR_ADDRESS EQUAL (STRING|QUOTED_URL) )?
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/create-rule-transact-sql
-create_rule
- : CREATE RULE (schema_name=id DOT)? rule_name=id
- AS search_condition
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/alter-schema-transact-sql
-alter_schema_sql
- : ALTER SCHEMA schema_name=id TRANSFER ((OBJECT|TYPE|XML SCHEMA COLLECTION) COLON COLON )? id (DOT id)?
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/create-schema-transact-sql
-create_schema
- : CREATE SCHEMA
- (schema_name=id
- |AUTHORIZATION owner_name=id
- | schema_name=id AUTHORIZATION owner_name=id
- )
- (create_table
- |create_view
- | (GRANT|DENY) (SELECT|INSERT|DELETE|UPDATE) ON (SCHEMA COLON COLON)? object_name=id TO owner_name=id
- | REVOKE (SELECT|INSERT|DELETE|UPDATE) ON (SCHEMA COLON COLON)? object_name=id FROM owner_name=id
- )*
- ;
-
-create_schema_azure_sql_dw_and_pdw
- :
-CREATE SCHEMA schema_name=id (AUTHORIZATION owner_name=id )?
- ;
-
-alter_schema_azure_sql_dw_and_pdw
- : ALTER SCHEMA schema_name=id TRANSFER (OBJECT COLON COLON )? id (DOT ID)?
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/create-search-property-list-transact-sql
-create_search_property_list
- : CREATE SEARCH PROPERTY LIST new_list_name=id
- (FROM (database_name=id DOT)? source_list_name=id )?
- (AUTHORIZATION owner_name=id)?
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/create-security-policy-transact-sql
-create_security_policy
- : CREATE SECURITY POLICY (schema_name=id DOT)? security_policy_name=id
- (COMMA? ADD (FILTER|BLOCK)? PREDICATE tvf_schema_name=id DOT security_predicate_function_name=id
- LR_BRACKET (COMMA? column_name_or_arguments=id)+ RR_BRACKET
- ON table_schema_name=id DOT name=id
- (COMMA? AFTER (INSERT|UPDATE)
- | COMMA? BEFORE (UPDATE|DELETE)
- )*
- )+
- (WITH LR_BRACKET
- STATE EQUAL (ON|OFF)
- (SCHEMABINDING (ON|OFF) )?
- RR_BRACKET
- )?
- (NOT FOR REPLICATION)?
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/alter-sequence-transact-sql
-alter_sequence
- : ALTER SEQUENCE (schema_name=id DOT)? sequence_name=id ( RESTART (WITH DECIMAL)? )? (INCREMENT BY sequnce_increment=DECIMAL )? ( MINVALUE DECIMAL| NO MINVALUE)? (MAXVALUE DECIMAL| NO MAXVALUE)? (CYCLE|NO CYCLE)? (CACHE DECIMAL | NO CACHE)?
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/create-sequence-transact-sql
-create_sequence
- : CREATE SEQUENCE (schema_name=id DOT)? sequence_name=id
- (AS data_type )?
- (START WITH DECIMAL)?
- (INCREMENT BY MINUS? DECIMAL)?
- (MINVALUE DECIMAL? | NO MINVALUE)?
- (MAXVALUE DECIMAL? | NO MAXVALUE)?
- (CYCLE|NO CYCLE)?
- (CACHE DECIMAL? | NO CACHE)?
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/alter-server-audit-transact-sql
-alter_server_audit
- : ALTER SERVER AUDIT audit_name=id
- ( ( TO
- (FILE
- ( LR_BRACKET
- ( COMMA? FILEPATH EQUAL filepath=STRING
- | COMMA? MAXSIZE EQUAL ( DECIMAL (MB|GB|TB)
- | UNLIMITED
- )
- | COMMA? MAX_ROLLOVER_FILES EQUAL max_rollover_files=(DECIMAL|UNLIMITED)
- | COMMA? MAX_FILES EQUAL max_files=DECIMAL
- | COMMA? RESERVE_DISK_SPACE EQUAL (ON|OFF) )*
- RR_BRACKET )
- | APPLICATION_LOG
- | SECURITY_LOG
- ) )?
- ( WITH LR_BRACKET
- (COMMA? QUEUE_DELAY EQUAL queue_delay=DECIMAL
- | COMMA? ON_FAILURE EQUAL (CONTINUE | SHUTDOWN|FAIL_OPERATION)
- |COMMA? STATE EQUAL (ON|OFF) )*
- RR_BRACKET
- )?
- ( WHERE ( COMMA? (NOT?) event_field_name=id
- (EQUAL
- |(LESS GREATER)
- | (EXCLAMATION EQUAL)
- | GREATER
- | (GREATER EQUAL)
- | LESS
- | LESS EQUAL
- )
- (DECIMAL | STRING)
- | COMMA? (AND|OR) NOT? (EQUAL
- |(LESS GREATER)
- | (EXCLAMATION EQUAL)
- | GREATER
- | (GREATER EQUAL)
- | LESS
- | LESS EQUAL)
- (DECIMAL | STRING) ) )?
- |REMOVE WHERE
- | MODIFY NAME EQUAL new_audit_name=id
- )
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/create-server-audit-transact-sql
-create_server_audit
- : CREATE SERVER AUDIT audit_name=id
- ( ( TO
- (FILE
- ( LR_BRACKET
- ( COMMA? FILEPATH EQUAL filepath=STRING
- | COMMA? MAXSIZE EQUAL ( DECIMAL (MB|GB|TB)
- | UNLIMITED
- )
- | COMMA? MAX_ROLLOVER_FILES EQUAL max_rollover_files=(DECIMAL|UNLIMITED)
- | COMMA? MAX_FILES EQUAL max_files=DECIMAL
- | COMMA? RESERVE_DISK_SPACE EQUAL (ON|OFF) )*
- RR_BRACKET )
- | APPLICATION_LOG
- | SECURITY_LOG
- ) )?
- ( WITH LR_BRACKET
- (COMMA? QUEUE_DELAY EQUAL queue_delay=DECIMAL
- | COMMA? ON_FAILURE EQUAL (CONTINUE | SHUTDOWN|FAIL_OPERATION)
- |COMMA? STATE EQUAL (ON|OFF)
- |COMMA? AUDIT_GUID EQUAL audit_guid=id
- )*
-
- RR_BRACKET
- )?
- ( WHERE ( COMMA? (NOT?) event_field_name=id
- (EQUAL
- |(LESS GREATER)
- | (EXCLAMATION EQUAL)
- | GREATER
- | (GREATER EQUAL)
- | LESS
- | LESS EQUAL
- )
- (DECIMAL | STRING)
- | COMMA? (AND|OR) NOT? (EQUAL
- |(LESS GREATER)
- | (EXCLAMATION EQUAL)
- | GREATER
- | (GREATER EQUAL)
- | LESS
- | LESS EQUAL)
- (DECIMAL | STRING) ) )?
- |REMOVE WHERE
- | MODIFY NAME EQUAL new_audit_name=id
- )
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/alter-server-audit-specification-transact-sql
-
-alter_server_audit_specification
- : ALTER SERVER AUDIT SPECIFICATION audit_specification_name=id
- (FOR SERVER AUDIT audit_name=id)?
- ( (ADD|DROP) LR_BRACKET audit_action_group_name=id RR_BRACKET )*
- (WITH LR_BRACKET STATE EQUAL (ON|OFF) RR_BRACKET )?
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/create-server-audit-specification-transact-sql
-create_server_audit_specification
- : CREATE SERVER AUDIT SPECIFICATION audit_specification_name=id
- (FOR SERVER AUDIT audit_name=id)?
- ( ADD LR_BRACKET audit_action_group_name=id RR_BRACKET )*
- (WITH LR_BRACKET STATE EQUAL (ON|OFF) RR_BRACKET )?
- ;
-
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/alter-server-configuration-transact-sql
-
-alter_server_configuration
- : ALTER SERVER CONFIGURATION
- SET ( (PROCESS AFFINITY (CPU EQUAL (AUTO | (COMMA? DECIMAL | COMMA? DECIMAL TO DECIMAL)+ ) | NUMANODE EQUAL ( COMMA? DECIMAL |COMMA? DECIMAL TO DECIMAL)+ ) | DIAGNOSTICS LOG (ON|OFF|PATH EQUAL (STRING | DEFAULT) |MAX_SIZE EQUAL (DECIMAL MB |DEFAULT)|MAX_FILES EQUAL (DECIMAL|DEFAULT) ) | FAILOVER CLUSTER PROPERTY (VERBOSELOGGING EQUAL (STRING|DEFAULT) |SQLDUMPERFLAGS EQUAL (STRING|DEFAULT) | SQLDUMPERPATH EQUAL (STRING|DEFAULT) | SQLDUMPERTIMEOUT (STRING|DEFAULT) | FAILURECONDITIONLEVEL EQUAL (STRING|DEFAULT) | HEALTHCHECKTIMEOUT EQUAL (DECIMAL|DEFAULT) ) | HADR CLUSTER CONTEXT EQUAL (STRING|LOCAL) | BUFFER POOL EXTENSION (ON LR_BRACKET FILENAME EQUAL STRING COMMA SIZE EQUAL DECIMAL (KB|MB|GB) RR_BRACKET | OFF ) | SET SOFTNUMA (ON|OFF) ) )
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/alter-server-role-transact-sql
-alter_server_role
- : ALTER SERVER ROLE server_role_name=id
- ( (ADD|DROP) MEMBER server_principal=id
- | WITH NAME EQUAL new_server_role_name=id
- )
- ;
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/create-server-role-transact-sql
-create_server_role
- : CREATE SERVER ROLE server_role=id (AUTHORIZATION server_principal=id)?
- ;
-
-alter_server_role_pdw
- : ALTER SERVER ROLE server_role_name=id (ADD|DROP) MEMBER login=id
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/alter-service-transact-sql
-alter_service
- : ALTER SERVICE modified_service_name=id (ON QUEUE (schema_name=id DOT) queue_name=id)? (COMMA? (ADD|DROP) modified_contract_name=id)*
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/create-service-transact-sql
-create_service
- : CREATE SERVICE create_service_name=id
- (AUTHORIZATION owner_name=id)?
- ON QUEUE (schema_name=id DOT)? queue_name=id
- ( LR_BRACKET (COMMA? (id|DEFAULT) )+ RR_BRACKET )?
- ;
-
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/alter-service-master-key-transact-sql
-
-alter_service_master_key
- : ALTER SERVICE MASTER KEY ( FORCE? REGENERATE | (WITH (OLD_ACCOUNT EQUAL acold_account_name=STRING COMMA OLD_PASSWORD EQUAL old_password=STRING | NEW_ACCOUNT EQUAL new_account_name=STRING COMMA NEW_PASSWORD EQUAL new_password=STRING)? ) )
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/alter-symmetric-key-transact-sql
-
-alter_symmetric_key
- : ALTER SYMMETRIC KEY key_name=id ( (ADD|DROP) ENCRYPTION BY (CERTIFICATE certificate_name=id | PASSWORD EQUAL password=STRING | SYMMETRIC KEY symmetric_key_name=id | ASYMMETRIC KEY Asym_key_name=id ) )
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/create-symmetric-key-transact-sql
-create_symmetric_key
- : ALTER SYMMETRIC KEY key_name=id
- (AUTHORIZATION owner_name=id)?
- (FROM PROVIDER provider_name=id)?
- (WITH ( (KEY_SOURCE EQUAL key_pass_phrase=STRING
- | ALGORITHM EQUAL (DES | TRIPLE_DES | TRIPLE_DES_3KEY | RC2 | RC4 | RC4_128 | DESX | AES_128 | AES_192 | AES_256)
- | IDENTITY_VALUE EQUAL identity_phrase=STRING
- | PROVIDER_KEY_NAME EQUAL provider_key_name=STRING
- | CREATION_DISPOSITION EQUAL (CREATE_NEW|OPEN_EXISTING)
- )
- | ENCRYPTION BY
- ( CERTIFICATE certificate_name=id
- | PASSWORD EQUAL password=STRING
- | SYMMETRIC KEY symmetric_key_name=id
- | ASYMMETRIC KEY asym_key_name=id
- )
- )
- )
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/create-synonym-transact-sql
-create_synonym
- : CREATE SYNONYM (schema_name_1=id DOT )? synonym_name=id
- FOR ( (server_name=id DOT )? (database_name=id DOT)? (schema_name_2=id DOT)? object_name=id
- | (database_or_schema2=id DOT)? (schema_id_2_or_object_name=id DOT)?
- )
- ;
-
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/alter-user-transact-sql
-alter_user
- : ALTER USER username=id WITH (COMMA? NAME EQUAL newusername=id | COMMA? DEFAULT_SCHEMA EQUAL ( schema_name=id |NULL ) | COMMA? LOGIN EQUAL loginame=id | COMMA? PASSWORD EQUAL STRING (OLD_PASSWORD EQUAL STRING)+ | COMMA? DEFAULT_LANGUAGE EQUAL (NONE| lcid=DECIMAL| language_name_or_alias=id) | COMMA? ALLOW_ENCRYPTED_VALUE_MODIFICATIONS EQUAL (ON|OFF) )+
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/create-user-transact-sql
-create_user
- : CREATE USER user_name=id
- ( (FOR|FROM) LOGIN login_name=id )?
- ( WITH (COMMA? DEFAULT_SCHEMA EQUAL schema_name=id
- |COMMA? ALLOW_ENCRYPTED_VALUE_MODIFICATIONS EQUAL (ON|OFF)
- )*
- )?
- | CREATE USER ( windows_principal=id
- (WITH
- (COMMA? DEFAULT_SCHEMA EQUAL schema_name=id
- |COMMA? DEFAULT_LANGUAGE EQUAL (NONE
- |DECIMAL
- |language_name_or_alias=id )
- |COMMA? SID EQUAL BINARY
- |COMMA? ALLOW_ENCRYPTED_VALUE_MODIFICATIONS EQUAL (ON|OFF)
- )*
- )?
- | user_name=id WITH PASSWORD EQUAL password=STRING
- (COMMA? DEFAULT_SCHEMA EQUAL schema_name=id
- |COMMA? DEFAULT_LANGUAGE EQUAL (NONE
- |DECIMAL
- |language_name_or_alias=id )
- |COMMA? SID EQUAL BINARY
- |COMMA? ALLOW_ENCRYPTED_VALUE_MODIFICATIONS EQUAL (ON|OFF)
- )*
- | Azure_Active_Directory_principal=id FROM EXTERNAL PROVIDER
- )
- | CREATE USER user_name=id
- ( WITHOUT LOGIN
- (COMMA? DEFAULT_SCHEMA EQUAL schema_name=id
- |COMMA? ALLOW_ENCRYPTED_VALUE_MODIFICATIONS EQUAL (ON|OFF)
- )*
- | (FOR|FROM) CERTIFICATE cert_name=id
- | (FOR|FROM) ASYMMETRIC KEY asym_key_name=id
- )
- | CREATE USER user_name=id
- ;
-
-create_user_azure_sql_dw
- : CREATE USER user_name=id
- ( (FOR|FROM) LOGIN login_name=id
- | WITHOUT LOGIN
- )?
-
- ( WITH DEFAULT_SCHEMA EQUAL schema_name=id)?
- | CREATE USER Azure_Active_Directory_principal=id
- FROM EXTERNAL PROVIDER
- ( WITH DEFAULT_SCHEMA EQUAL schema_name=id)?
- ;
-
-
-alter_user_azure_sql
- : ALTER USER username=id WITH (COMMA? NAME EQUAL newusername=id | COMMA? DEFAULT_SCHEMA EQUAL schema_name=id | COMMA? LOGIN EQUAL loginame=id | COMMA? ALLOW_ENCRYPTED_VALUE_MODIFICATIONS EQUAL (ON|OFF) )+
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/alter-workload-group-transact-sql
-
-alter_workload_group
- : ALTER WORKLOAD GROUP
- (workload_group_group_name=id
- |DEFAULT_DOUBLE_QUOTE
- )
- (WITH LR_BRACKET
- (IMPORTANCE EQUAL (LOW|MEDIUM|HIGH)
- | COMMA? REQUEST_MAX_MEMORY_GRANT_PERCENT EQUAL request_max_memory_grant=DECIMAL
- | COMMA? REQUEST_MAX_CPU_TIME_SEC EQUAL request_max_cpu_time_sec=DECIMAL
- | REQUEST_MEMORY_GRANT_TIMEOUT_SEC EQUAL request_memory_grant_timeout_sec=DECIMAL
- | MAX_DOP EQUAL max_dop=DECIMAL
- | GROUP_MAX_REQUESTS EQUAL group_max_requests=DECIMAL)+
- RR_BRACKET )?
- (USING (workload_group_pool_name=id | DEFAULT_DOUBLE_QUOTE) )?
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/create-workload-group-transact-sql
-create_workload_group
- : CREATE WORKLOAD GROUP workload_group_group_name=id
- (WITH LR_BRACKET
- (IMPORTANCE EQUAL (LOW|MEDIUM|HIGH)
- | COMMA? REQUEST_MAX_MEMORY_GRANT_PERCENT EQUAL request_max_memory_grant=DECIMAL
- | COMMA? REQUEST_MAX_CPU_TIME_SEC EQUAL request_max_cpu_time_sec=DECIMAL
- | REQUEST_MEMORY_GRANT_TIMEOUT_SEC EQUAL request_memory_grant_timeout_sec=DECIMAL
- | MAX_DOP EQUAL max_dop=DECIMAL
- | GROUP_MAX_REQUESTS EQUAL group_max_requests=DECIMAL)+
- RR_BRACKET )?
- (USING (workload_group_pool_name=id | DEFAULT_DOUBLE_QUOTE)?
- (COMMA? EXTERNAL external_pool_name=id | DEFAULT_DOUBLE_QUOTE)?
- )?
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/create-xml-schema-collection-transact-sql
-create_xml_schema_collection
- : CREATE XML SCHEMA COLLECTION (relational_schema=id DOT)? sql_identifier=id AS (STRING|id|LOCAL_ID)
- ;
-
-create_queue
- : CREATE QUEUE (full_table_name | queue_name=id) queue_settings?
- (ON filegroup=id | DEFAULT)?
- ;
-
-
-queue_settings
- :WITH
- (STATUS EQUAL (ON | OFF) COMMA?)?
- (RETENTION EQUAL (ON | OFF) COMMA?)?
- (ACTIVATION
- LR_BRACKET
- (
- (
- (STATUS EQUAL (ON | OFF) COMMA? )?
- (PROCEDURE_NAME EQUAL func_proc_name_database_schema COMMA?)?
- (MAX_QUEUE_READERS EQUAL max_readers=DECIMAL COMMA?)?
- (EXECUTE AS (SELF | user_name=STRING | OWNER) COMMA?)?
- )
- | DROP
- )
- RR_BRACKET COMMA?
- )?
- (POISON_MESSAGE_HANDLING
- LR_BRACKET
- (STATUS EQUAL (ON | OFF))
- RR_BRACKET
- )?
- ;
-
-alter_queue
- : ALTER QUEUE (full_table_name | queue_name=id)
- (queue_settings | queue_action)
- ;
-
-queue_action
- : REBUILD ( WITH LR_BRACKET queue_rebuild_options RR_BRACKET)?
- | REORGANIZE (WITH LOB_COMPACTION EQUAL (ON | OFF))?
- | MOVE TO (id | DEFAULT)
- ;
-queue_rebuild_options
- : MAXDOP EQUAL DECIMAL
- ;
-
-create_contract
- : CREATE CONTRACT contract_name
- (AUTHORIZATION owner_name=id)?
- LR_BRACKET ((message_type_name=id | DEFAULT)
- SENT BY (INITIATOR | TARGET | ANY ) COMMA?)+
- RR_BRACKET
- ;
-
-conversation_statement
- : begin_conversation_timer
- | begin_conversation_dialog
- | end_conversation
- | get_conversation
- | send_conversation
- | waitfor_conversation
- ;
-
-message_statement
- : CREATE MESSAGE TYPE message_type_name=id
- (AUTHORIZATION owner_name=id)?
- (VALIDATION EQUAL (NONE
- | EMPTY
- | WELL_FORMED_XML
- | VALID_XML WITH SCHEMA COLLECTION schema_collection_name=id))
- ;
-
-// DML
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/merge-transact-sql
-merge_statement
- : with_expression?
- MERGE (TOP '(' expression ')' PERCENT?)?
- INTO? ddl_object insert_with_table_hints? as_table_alias?
- USING table_sources
- ON search_condition
- (WHEN MATCHED (AND search_condition)?
- THEN merge_matched)*
- (WHEN NOT MATCHED (BY TARGET)? (AND search_condition)?
- THEN merge_not_matched)?
- (WHEN NOT MATCHED BY SOURCE (AND search_condition)?
- THEN merge_matched)*
- output_clause?
- option_clause? ';'
- ;
-
-
-merge_matched
- : UPDATE SET update_elem (',' update_elem)*
- | DELETE
- ;
-
-merge_not_matched
- : INSERT ('(' column_name_list ')')?
- (table_value_constructor | DEFAULT VALUES)
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms189835.aspx
-delete_statement
- : with_expression?
- DELETE (TOP '(' expression ')' PERCENT? | TOP DECIMAL)?
- FROM? delete_statement_from
- insert_with_table_hints?
- output_clause?
- (FROM table_sources)?
- (WHERE (search_condition | CURRENT OF (GLOBAL? cursor_name | cursor_var=LOCAL_ID)))?
- for_clause? option_clause? ';'?
- ;
-
-delete_statement_from
- : ddl_object
- | table_alias
- | rowset_function_limited
- | table_var=LOCAL_ID
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms174335.aspx
-insert_statement
- : with_expression?
- INSERT (TOP '(' expression ')' PERCENT?)?
- INTO? (ddl_object | rowset_function_limited)
- insert_with_table_hints?
- ('(' column_name_list ')')?
- output_clause?
- insert_statement_value
- for_clause? option_clause? ';'?
- ;
-
-insert_statement_value
- : table_value_constructor
- | derived_table
- | execute_statement
- | DEFAULT VALUES
- ;
-
-
-receive_statement
- : '('? RECEIVE (ALL | DISTINCT | top_clause | '*')
- (LOCAL_ID '=' expression ','?)* FROM full_table_name
- (INTO table_variable=id (WHERE where=search_condition))? ')'?
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms189499.aspx
-select_statement
- : with_expression? query_expression order_by_clause? for_clause? option_clause? ';'?
- ;
-
-time
- : (LOCAL_ID | constant)
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms177523.aspx
-update_statement
- : with_expression?
- UPDATE (TOP '(' expression ')' PERCENT?)?
- (ddl_object | rowset_function_limited)
- with_table_hints?
- SET update_elem (',' update_elem)*
- output_clause?
- (FROM table_sources)?
- (WHERE (search_condition_list | CURRENT OF (GLOBAL? cursor_name | cursor_var=LOCAL_ID)))?
- for_clause? option_clause? ';'?
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms177564.aspx
-output_clause
- : OUTPUT output_dml_list_elem (',' output_dml_list_elem)*
- (INTO (LOCAL_ID | table_name) ('(' column_name_list ')')? )?
- ;
-
-output_dml_list_elem
- : (output_column_name | expression) as_column_alias? // TODO: scalar_expression
- ;
-
-output_column_name
- : (DELETED | INSERTED | table_name) '.' ('*' | id)
- | DOLLAR_ACTION
- ;
-
-// DDL
-
-// https://msdn.microsoft.com/en-ie/library/ms176061.aspx
-create_database
- : CREATE DATABASE (database=id)
- ( CONTAINMENT '=' ( NONE | PARTIAL ) )?
- ( ON PRIMARY? database_file_spec ( ',' database_file_spec )* )?
- ( LOG ON database_file_spec ( ',' database_file_spec )* )?
- ( COLLATE collation_name = id )?
- ( WITH create_database_option ( ',' create_database_option )* )?
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms188783.aspx
-create_index
- : CREATE UNIQUE? clustered? INDEX id ON table_name_with_hint '(' column_name_list_with_order ')'
- (INCLUDE '(' column_name_list ')' )?
- (WHERE where=search_condition)?
- (index_options)?
- (ON id)?
- ';'?
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms187926(v=sql.120).aspx
-create_or_alter_procedure
- : ((CREATE (OR ALTER)?) | ALTER) proc=(PROC | PROCEDURE) func_proc_name_schema (';' DECIMAL)?
- ('('? procedure_param (',' procedure_param)* ')'?)?
- (WITH procedure_option (',' procedure_option)*)?
- (FOR REPLICATION)? AS sql_clauses
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/create-trigger-transact-sql
-create_or_alter_trigger
- : create_or_alter_dml_trigger
- | create_or_alter_ddl_trigger
- ;
-
-create_or_alter_dml_trigger
- : ((CREATE (OR ALTER)?) | ALTER) TRIGGER simple_name
- ON table_name
- (WITH dml_trigger_option (',' dml_trigger_option)* )?
- (FOR | AFTER | INSTEAD OF)
- dml_trigger_operation (',' dml_trigger_operation)*
- (WITH APPEND)?
- (NOT FOR REPLICATION)?
- AS sql_clauses
- ;
-
-dml_trigger_option
- : ENCRYPTION
- | execute_clause
- ;
-
-dml_trigger_operation
- : (INSERT | UPDATE | DELETE)
- ;
-
-create_or_alter_ddl_trigger
- : ((CREATE (OR ALTER)?) | ALTER) TRIGGER simple_id
- ON (ALL SERVER | DATABASE)
- (WITH dml_trigger_option (',' dml_trigger_option)* )?
- (FOR | AFTER) ddl_trigger_operation (',' dml_trigger_operation)*
- AS sql_clauses
- ;
-
-ddl_trigger_operation
- : simple_id
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms186755.aspx
-create_or_alter_function
- : ((CREATE (OR ALTER)?) | ALTER) FUNCTION func_proc_name_schema
- (('(' procedure_param (',' procedure_param)* ')') | '(' ')') //must have (), but can be empty
- (func_body_returns_select | func_body_returns_table | func_body_returns_scalar) ';'?
- ;
-
-func_body_returns_select
- :RETURNS TABLE
- (WITH function_option (',' function_option)*)?
- AS?
- RETURN ('(' select_statement ')' | select_statement)
- ;
-
-func_body_returns_table
- : RETURNS LOCAL_ID table_type_definition
- (WITH function_option (',' function_option)*)?
- AS?
- BEGIN
- sql_clause*
- RETURN ';'?
- END ';'?
- ;
-
-func_body_returns_scalar
- :RETURNS data_type
- (WITH function_option (',' function_option)*)?
- AS?
- BEGIN
- sql_clause*
- RETURN ret=expression ';'?
- END
- ;
-
-procedure_param
- : LOCAL_ID (id '.')? AS? data_type VARYING? ('=' default_val=default_value)? (OUT | OUTPUT | READONLY)?
- ;
-
-procedure_option
- : ENCRYPTION
- | RECOMPILE
- | execute_clause
- ;
-
-function_option
- : ENCRYPTION
- | SCHEMABINDING
- | RETURNS NULL ON NULL INPUT
- | CALLED ON NULL INPUT
- | execute_clause
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms188038.aspx
-create_statistics
- : CREATE STATISTICS id ON table_name_with_hint '(' column_name_list ')'
- (WITH (FULLSCAN | SAMPLE DECIMAL (PERCENT | ROWS) | STATS_STREAM)
- (',' NORECOMPUTE)? (',' INCREMENTAL EQUAL on_off)? )? ';'?
- ;
-
-update_statistics
- : UPDATE (INDEX | ALL)? STATISTICS full_table_name id? (USING DECIMAL VALUES)?
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms174979.aspx
-create_table
- : CREATE TABLE table_name '(' column_def_table_constraints ','? ')' (LOCK simple_id)? table_options* (ON id | DEFAULT)? (TEXTIMAGE_ON id | DEFAULT)?';'?
- ;
-
-table_options
- : WITH ('(' index_option (',' index_option)* ')' | index_option (',' index_option)*)
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms187956.aspx
-create_view
- : CREATE VIEW simple_name ('(' column_name_list ')')?
- (WITH view_attribute (',' view_attribute)*)?
- AS select_statement (WITH CHECK OPTION)? ';'?
- ;
-
-view_attribute
- : ENCRYPTION | SCHEMABINDING | VIEW_METADATA
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms190273.aspx
-alter_table
- : ALTER TABLE table_name (SET '(' LOCK_ESCALATION '=' (AUTO | TABLE | DISABLE) ')'
- | ADD column_def_table_constraint
- | ALTER COLUMN column_definition
- | DROP COLUMN id
- | DROP CONSTRAINT constraint=id
- | WITH CHECK ADD CONSTRAINT constraint=id FOREIGN KEY '(' fk = column_name_list ')' REFERENCES table_name '(' pk = column_name_list')'
- | CHECK CONSTRAINT constraint=id
- | (ENABLE | DISABLE) TRIGGER id?
- | REBUILD table_options)
- ';'?
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms174269.aspx
-alter_database
- : ALTER DATABASE (database=id | CURRENT)
- (MODIFY NAME '=' new_name=id | COLLATE collation=id | SET database_optionspec (WITH termination)? ) ';'?
- ;
-
-// https://msdn.microsoft.com/en-us/library/bb522682.aspx
-// Runtime check.
-database_optionspec
- : auto_option
- | change_tracking_option
- | containment_option
- | cursor_option
- | database_mirroring_option
- | date_correlation_optimization_option
- | db_encryption_option
- | db_state_option
- | db_update_option
- | db_user_access_option
- | delayed_durability_option
- | external_access_option
- | FILESTREAM database_filestream_option
- | hadr_options
- | mixed_page_allocation_option
- | parameterization_option
-// | query_store_options
- | recovery_option
-// | remote_data_archive_option
- | service_broker_option
- | snapshot_option
- | sql_option
- | target_recovery_time_option
- | termination
- ;
-
-auto_option:
- AUTO_CLOSE on_off
- | AUTO_CREATE_STATISTICS OFF | ON ( INCREMENTAL EQUAL ON | OFF )
- | AUTO_SHRINK on_off
- | AUTO_UPDATE_STATISTICS on_off
- | AUTO_UPDATE_STATISTICS_ASYNC (ON | OFF )
- ;
-
-change_tracking_option:
- CHANGE_TRACKING EQUAL ( OFF | ON (change_tracking_option_list (',' change_tracking_option_list)*)* )
- ;
-
-change_tracking_option_list:
- AUTO_CLEANUP EQUAL on_off
- | CHANGE_RETENTION EQUAL ( DAYS | HOURS | MINUTES )
- ;
-
-containment_option:
- CONTAINMENT EQUAL ( NONE | PARTIAL )
- ;
-
-cursor_option:
- CURSOR_CLOSE_ON_COMMIT on_off
- | CURSOR_DEFAULT ( LOCAL | GLOBAL )
- ;
-
-
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/alter-endpoint-transact-sql
-alter_endpoint
- : ALTER ENDPOINT endpointname=id (AUTHORIZATION login=id)?
- ( STATE EQUAL ( state=STARTED | state=STOPPED | state=DISABLED ) )?
- AS TCP LR_BRACKET
- LISTENER_PORT EQUAL port=DECIMAL
- ( COMMA LISTENER_IP EQUAL
- (ALL | IPV4_ADDR | IPV6_ADDR) )?
- RR_BRACKET
- (TSQL
- |
- FOR SERVICE_BROKER LR_BRACKET
- AUTHENTICATION EQUAL
- ( WINDOWS ( NTLM |KERBEROS | NEGOTIATE )? (CERTIFICATE cert_name=id)?
- | CERTIFICATE cert_name=id WINDOWS? ( NTLM |KERBEROS | NEGOTIATE )?
- )
- ( COMMA? ENCRYPTION EQUAL ( DISABLED |SUPPORTED | REQUIRED )
- ( ALGORITHM ( AES | RC4 | AES RC4 | RC4 AES ) )?
- )?
-
- ( COMMA? MESSAGE_FORWARDING EQUAL ( ENABLED | DISABLED ) )?
- ( COMMA? MESSAGE_FORWARD_SIZE EQUAL DECIMAL)?
- RR_BRACKET
- |
- FOR DATABASE_MIRRORING LR_BRACKET
- AUTHENTICATION EQUAL
- ( WINDOWS ( NTLM |KERBEROS | NEGOTIATE )? (CERTIFICATE cert_name=id)?
- | CERTIFICATE cert_name=id WINDOWS? ( NTLM |KERBEROS | NEGOTIATE )?
- )
-
- ( COMMA? ENCRYPTION EQUAL ( DISABLED |SUPPORTED | REQUIRED )
- ( ALGORITHM ( AES | RC4 | AES RC4 | RC4 AES ) )?
- )?
-
- COMMA? ROLE EQUAL ( WITNESS | PARTNER | ALL )
- RR_BRACKET
- )
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/create-endpoint-transact-sql
-// todo: not implemented
-
-/* Will visit later
-*/
-database_mirroring_option
- : mirroring_set_option
- ;
-
-mirroring_set_option
- : mirroring_partner partner_option
- | mirroring_witness witness_option
- ;
-mirroring_partner
- : PARTNER
- ;
-
-mirroring_witness
- : WITNESS
- ;
-
-witness_partner_equal
- : EQUAL
- ;
-
-
-partner_option
- : witness_partner_equal partner_server
- | FAILOVER
- | FORCE_SERVICE_ALLOW_DATA_LOSS
- | OFF
- | RESUME
- | SAFETY (FULL | OFF )
- | SUSPEND
- | TIMEOUT DECIMAL
-;
-
-witness_option
- : witness_partner_equal witness_server
- | OFF
-;
-
-witness_server
- : partner_server
- ;
-
-partner_server
- :
- partner_server_tcp_prefix host mirroring_host_port_seperator port_number
- ;
-
-mirroring_host_port_seperator
- : COLON
- ;
-
-partner_server_tcp_prefix
- : TCP COLON DOUBLE_FORWARD_SLASH
- ;
-port_number
- :
- port=DECIMAL
- ;
-
-host
- : id DOT host
- | (id DOT |id)
- ;
-
-date_correlation_optimization_option:
- DATE_CORRELATION_OPTIMIZATION on_off
- ;
-
-db_encryption_option:
- ENCRYPTION on_off
- ;
-db_state_option:
- ( ONLINE | OFFLINE | EMERGENCY )
- ;
-
-db_update_option:
- READ_ONLY | READ_WRITE
- ;
-
-db_user_access_option:
- ( SINGLE_USER | RESTRICTED_USER | MULTI_USER )
- ;
-delayed_durability_option:
- DELAYED_DURABILITY EQUAL ( DISABLED | ALLOWED | FORCED )
- ;
-
-external_access_option:
- DB_CHAINING on_off
- | TRUSTWORTHY on_off
- | DEFAULT_LANGUAGE EQUAL ( id | STRING )
- | DEFAULT_FULLTEXT_LANGUAGE EQUAL ( id | STRING )
- | NESTED_TRIGGERS EQUAL ( OFF | ON )
- | TRANSFORM_NOISE_WORDS EQUAL ( OFF | ON )
- | TWO_DIGIT_YEAR_CUTOFF EQUAL DECIMAL
- ;
-
-hadr_options
- : HADR
- ( ( AVAILABILITY GROUP EQUAL availability_group_name=id | OFF ) |(SUSPEND|RESUME) )
- ;
-
-mixed_page_allocation_option:
- MIXED_PAGE_ALLOCATION ( OFF | ON )
- ;
-
-parameterization_option:
- PARAMETERIZATION ( SIMPLE | FORCED )
- ;
-
-recovery_option:
- RECOVERY ( FULL | BULK_LOGGED | SIMPLE )
- | TORN_PAGE_DETECTION on_off
- | PAGE_VERIFY ( CHECKSUM | TORN_PAGE_DETECTION | NONE )
- ;
-
-service_broker_option:
- ENABLE_BROKER
- | DISABLE_BROKER
- | NEW_BROKER
- | ERROR_BROKER_CONVERSATIONS
- | HONOR_BROKER_PRIORITY on_off
- ;
-snapshot_option:
- ALLOW_SNAPSHOT_ISOLATION on_off
- | READ_COMMITTED_SNAPSHOT (ON | OFF )
- | MEMORY_OPTIMIZED_ELEVATE_TO_SNAPSHOT = (ON | OFF )
- ;
-
-sql_option:
- ANSI_NULL_DEFAULT on_off
- | ANSI_NULLS on_off
- | ANSI_PADDING on_off
- | ANSI_WARNINGS on_off
- | ARITHABORT on_off
- | COMPATIBILITY_LEVEL EQUAL DECIMAL
- | CONCAT_NULL_YIELDS_NULL on_off
- | NUMERIC_ROUNDABORT on_off
- | QUOTED_IDENTIFIER on_off
- | RECURSIVE_TRIGGERS on_off
- ;
-
-target_recovery_time_option:
- TARGET_RECOVERY_TIME EQUAL DECIMAL ( SECONDS | MINUTES )
- ;
-
-termination:
- ROLLBACK AFTER seconds = DECIMAL
- | ROLLBACK IMMEDIATE
- | NO_WAIT
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms176118.aspx
-drop_index
- : DROP INDEX (IF EXISTS)?
- ( drop_relational_or_xml_or_spatial_index (',' drop_relational_or_xml_or_spatial_index)*
- | drop_backward_compatible_index (',' drop_backward_compatible_index)*
- )
- ';'?
- ;
-
-drop_relational_or_xml_or_spatial_index
- : index_name=id ON full_table_name
- ;
-
-drop_backward_compatible_index
- : (owner_name=id '.')? table_or_view_name=id '.' index_name=id
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms174969.aspx
-drop_procedure
- : DROP proc=(PROC | PROCEDURE) (IF EXISTS)? func_proc_name_schema (',' func_proc_name_schema)* ';'?
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/drop-trigger-transact-sql
-drop_trigger
- : drop_dml_trigger
- | drop_ddl_trigger
- ;
-
-drop_dml_trigger
- : DROP TRIGGER (IF EXISTS)? simple_name (',' simple_name)* ';'?
- ;
-
-drop_ddl_trigger
- : DROP TRIGGER (IF EXISTS)? simple_name (',' simple_name)*
- ON (DATABASE | ALL SERVER) ';'?
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms190290.aspx
-drop_function
- : DROP FUNCTION (IF EXISTS)? func_proc_name_schema (',' func_proc_name_schema)* ';'?
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms175075.aspx
-drop_statistics
- : DROP STATISTICS (COMMA? (table_name '.')? name=id)+ ';'
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms173790.aspx
-drop_table
- : DROP TABLE (IF EXISTS)? table_name ';'?
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms173492.aspx
-drop_view
- : DROP VIEW (IF EXISTS)? simple_name (',' simple_name)* ';'?
- ;
-
-create_type
- : CREATE TYPE name = simple_name
- (FROM data_type default_value)?
- (AS TABLE LR_BRACKET column_def_table_constraints RR_BRACKET)?
- ;
-
-drop_type:
- DROP TYPE ( IF EXISTS )? name = simple_name
- ;
-
-rowset_function_limited
- : openquery
- | opendatasource
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms188427(v=sql.120).aspx
-openquery
- : OPENQUERY '(' linked_server=id ',' query=STRING ')'
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms179856.aspx
-opendatasource
- : OPENDATASOURCE '(' provider=STRING ',' init=STRING ')'
- '.' (database=id)? '.' (scheme=id)? '.' (table=id)
- ;
-
-// Other statements.
-
-// https://msdn.microsoft.com/en-us/library/ms188927.aspx
-declare_statement
- : DECLARE LOCAL_ID AS? table_type_definition ';'?
- | DECLARE declare_local (',' declare_local)* ';'?
- | DECLARE LOCAL_ID AS? xml_type_definition ';'?
- | WITH XMLNAMESPACES '(' xml_namespace_uri=STRING ','? AS id ')' ';'?
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms181441(v=sql.120).aspx
-cursor_statement
- // https://msdn.microsoft.com/en-us/library/ms175035(v=sql.120).aspx
- : CLOSE GLOBAL? cursor_name ';'?
- // https://msdn.microsoft.com/en-us/library/ms188782(v=sql.120).aspx
- | DEALLOCATE GLOBAL? CURSOR? cursor_name ';'?
- // https://msdn.microsoft.com/en-us/library/ms180169(v=sql.120).aspx
- | declare_cursor
- // https://msdn.microsoft.com/en-us/library/ms180152(v=sql.120).aspx
- | fetch_cursor
- // https://msdn.microsoft.com/en-us/library/ms190500(v=sql.120).aspx
- | OPEN GLOBAL? cursor_name ';'?
- ;
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/backup-transact-sql
-backup_database
- : BACKUP DATABASE ( database_name=id )
- (READ_WRITE_FILEGROUPS (COMMA? (FILE|FILEGROUP) EQUAL file_or_filegroup=STRING)* )?
- (COMMA? (FILE|FILEGROUP) EQUAL file_or_filegroup=STRING)*
- ( TO ( COMMA? logical_device_name=id)+
- | TO ( COMMA? (DISK|TAPE|URL) EQUAL (STRING|id) )+
- )
-
- ( (MIRROR TO ( COMMA? logical_device_name=id)+ )+
- | ( MIRROR TO ( COMMA? (DISK|TAPE|URL) EQUAL (STRING|id) )+ )+
- )?
-
- (WITH ( COMMA? DIFFERENTIAL
- | COMMA? COPY_ONLY
- | COMMA? (COMPRESSION|NO_COMPRESSION)
- | COMMA? DESCRIPTION EQUAL (STRING|id)
- | COMMA? NAME EQUAL backup_set_name=id
- | COMMA? CREDENTIAL
- | COMMA? FILE_SNAPSHOT
- | COMMA? (EXPIREDATE EQUAL (STRING|id) | RETAINDAYS EQUAL (DECIMAL|id) )
- | COMMA? (NOINIT|INIT)
- | COMMA? (NOSKIP|SKIP_KEYWORD)
- | COMMA? (NOFORMAT|FORMAT)
- | COMMA? MEDIADESCRIPTION EQUAL (STRING|id)
- | COMMA? MEDIANAME EQUAL (medianame=STRING)
- | COMMA? BLOCKSIZE EQUAL (DECIMAL|id)
- | COMMA? BUFFERCOUNT EQUAL (DECIMAL|id)
- | COMMA? MAXTRANSFER EQUAL (DECIMAL|id)
- | COMMA? (NO_CHECKSUM|CHECKSUM)
- | COMMA? (STOP_ON_ERROR|CONTINUE_AFTER_ERROR)
- | COMMA? RESTART
- | COMMA? STATS (EQUAL stats_percent=DECIMAL)?
- | COMMA? (REWIND|NOREWIND)
- | COMMA? (LOAD|NOUNLOAD)
- | COMMA? ENCRYPTION LR_BRACKET
- ALGORITHM EQUAL
- (AES_128
- | AES_192
- | AES_256
- | TRIPLE_DES_3KEY
- )
- COMMA
- SERVER CERTIFICATE EQUAL
- (encryptor_name=id
- | SERVER ASYMMETRIC KEY EQUAL encryptor_name=id
- )
- )*
- )?
-
- ;
-
-backup_log
- : BACKUP LOG ( database_name=id )
- ( TO ( COMMA? logical_device_name=id)+
- | TO ( COMMA? (DISK|TAPE|URL) EQUAL (STRING|id) )+
- )
-
- ( (MIRROR TO ( COMMA? logical_device_name=id)+ )+
- | ( MIRROR TO ( COMMA? (DISK|TAPE|URL) EQUAL (STRING|id) )+ )+
- )?
-
- (WITH ( COMMA? DIFFERENTIAL
- | COMMA? COPY_ONLY
- | COMMA? (COMPRESSION|NO_COMPRESSION)
- | COMMA? DESCRIPTION EQUAL (STRING|id)
- | COMMA? NAME EQUAL backup_set_name=id
- | COMMA? CREDENTIAL
- | COMMA? FILE_SNAPSHOT
- | COMMA? (EXPIREDATE EQUAL (STRING|id) | RETAINDAYS EQUAL (DECIMAL|id) )
- | COMMA? (NOINIT|INIT)
- | COMMA? (NOSKIP|SKIP_KEYWORD)
- | COMMA? (NOFORMAT|FORMAT)
- | COMMA? MEDIADESCRIPTION EQUAL (STRING|id)
- | COMMA? MEDIANAME EQUAL (medianame=STRING)
- | COMMA? BLOCKSIZE EQUAL (DECIMAL|id)
- | COMMA? BUFFERCOUNT EQUAL (DECIMAL|id)
- | COMMA? MAXTRANSFER EQUAL (DECIMAL|id)
- | COMMA? (NO_CHECKSUM|CHECKSUM)
- | COMMA? (STOP_ON_ERROR|CONTINUE_AFTER_ERROR)
- | COMMA? RESTART
- | COMMA? STATS (EQUAL stats_percent=DECIMAL)?
- | COMMA? (REWIND|NOREWIND)
- | COMMA? (LOAD|NOUNLOAD)
- | COMMA? (NORECOVERY| STANDBY EQUAL undo_file_name=STRING)
- | COMMA? NO_TRUNCATE
- | COMMA? ENCRYPTION LR_BRACKET
- ALGORITHM EQUAL
- (AES_128
- | AES_192
- | AES_256
- | TRIPLE_DES_3KEY
- )
- COMMA
- SERVER CERTIFICATE EQUAL
- (encryptor_name=id
- | SERVER ASYMMETRIC KEY EQUAL encryptor_name=id
- )
- )*
- )?
-
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/backup-certificate-transact-sql
-backup_certificate
- : BACKUP CERTIFICATE certname=id TO FILE EQUAL cert_file=STRING
- ( WITH PRIVATE KEY
- LR_BRACKET
- (COMMA? FILE EQUAL private_key_file=STRING
- |COMMA? ENCRYPTION BY PASSWORD EQUAL encryption_password=STRING
- |COMMA? DECRYPTION BY PASSWORD EQUAL decryption_pasword=STRING
- )+
- RR_BRACKET
- )?
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/backup-master-key-transact-sql
-backup_master_key
- : BACKUP MASTER KEY TO FILE EQUAL master_key_backup_file=STRING
- ENCRYPTION BY PASSWORD EQUAL encryption_password=STRING
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/statements/backup-service-master-key-transact-sql
-backup_service_master_key
- : BACKUP SERVICE MASTER KEY TO FILE EQUAL service_master_key_backup_file=STRING
- ENCRYPTION BY PASSWORD EQUAL encryption_password=STRING
- ;
-
-kill_statement
- : KILL (kill_process | kill_query_notification | kill_stats_job)
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/language-elements/kill-transact-sql
-kill_process
- : (session_id=(DECIMAL|STRING) | UOW) (WITH STATUSONLY)?
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/language-elements/kill-query-notification-subscription-transact-sql
-kill_query_notification
- : QUERY NOTIFICATION SUBSCRIPTION (ALL | subscription_id=DECIMAL)
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/language-elements/kill-stats-job-transact-sql
-kill_stats_job
- : STATS JOB job_id=DECIMAL
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms188332.aspx
-execute_statement
- : EXECUTE execute_body
- ;
-
-execute_body
- : (return_status=LOCAL_ID '=')? (func_proc_name_server_database_schema | expression) (execute_statement_arg (',' execute_statement_arg)*)? ';'?
- | '(' execute_var_string ('+' execute_var_string)* ')' (AS? (LOGIN | USER) '=' STRING)? ';'?
- ;
-
-execute_statement_arg
- : (parameter=LOCAL_ID '=')? ((constant_LOCAL_ID | id) (OUTPUT | OUT)? | DEFAULT | NULL)
- ;
-
-execute_var_string
- : LOCAL_ID
- | STRING
- ;
-
-// https://msdn.microsoft.com/en-us/library/ff848791.aspx
-security_statement
- // https://msdn.microsoft.com/en-us/library/ms188354.aspx
- : execute_clause ';'?
- // https://msdn.microsoft.com/en-us/library/ms187965.aspx
- | GRANT (ALL PRIVILEGES? | grant_permission ('(' column_name_list ')')?) (ON on_id=table_name)? TO (to_principal+=id) (',' to_principal+=id)* (WITH GRANT OPTION)? (AS as_principal=id)? ';'?
- // https://msdn.microsoft.com/en-us/library/ms178632.aspx
- | REVERT ('(' WITH COOKIE '=' LOCAL_ID ')')? ';'?
- | open_key
- | close_key
- | create_key
- | create_certificate
- ;
-
-create_certificate
- : CREATE CERTIFICATE certificate_name=id (AUTHORIZATION user_name=id)?
- (FROM existing_keys | generate_new_keys)
- (ACTIVE FOR BEGIN DIALOG '=' (ON | OFF))?
- ;
-
-existing_keys
- : ASSEMBLY assembly_name=id
- | EXECUTABLE? FILE EQUAL path_to_file=STRING (WITH PRIVATE KEY '(' private_key_options ')')?
- ;
-
-private_key_options
- : (FILE | BINARY) '=' path=STRING (',' (DECRYPTION | ENCRYPTION) BY PASSWORD '=' password=STRING)?
- ;
-
-generate_new_keys
- : (ENCRYPTION BY PASSWORD '=' password=STRING)?
- WITH SUBJECT EQUAL certificate_subject_name=STRING (',' date_options)*
- ;
-
-date_options
- : (START_DATE | EXPIRY_DATE) EQUAL STRING
- ;
-
-open_key
- : OPEN SYMMETRIC KEY key_name=id DECRYPTION BY decryption_mechanism
- | OPEN MASTER KEY DECRYPTION BY PASSWORD '=' password=STRING
- ;
-
-close_key
- : CLOSE SYMMETRIC KEY key_name=id
- | CLOSE ALL SYMMETRIC KEYS
- | CLOSE MASTER KEY
- ;
-
-create_key
- : CREATE MASTER KEY ENCRYPTION BY PASSWORD '=' password=STRING
- | CREATE SYMMETRIC KEY key_name=id
- (AUTHORIZATION user_name=id)?
- (FROM PROVIDER provider_name=id)?
- WITH ((key_options | ENCRYPTION BY encryption_mechanism)','?)+
- ;
-
-key_options
- : KEY_SOURCE EQUAL pass_phrase=STRING
- | ALGORITHM EQUAL algorithm
- | IDENTITY_VALUE EQUAL identity_phrase=STRING
- | PROVIDER_KEY_NAME EQUAL key_name_in_provider=STRING
- | CREATION_DISPOSITION EQUAL (CREATE_NEW | OPEN_EXISTING)
- ;
-
-algorithm
- : DES
- | TRIPLE_DES
- | TRIPLE_DES_3KEY
- | RC2
- | RC4
- | RC4_128
- | DESX
- | AES_128
- | AES_192
- | AES_256
- ;
-
-encryption_mechanism
- : CERTIFICATE certificate_name=id
- | ASYMMETRIC KEY asym_key_name=id
- | SYMMETRIC KEY decrypting_Key_name=id
- | PASSWORD '=' STRING
- ;
-
-decryption_mechanism
- : CERTIFICATE certificate_name=id (WITH PASSWORD EQUAL STRING)?
- | ASYMMETRIC KEY asym_key_name=id (WITH PASSWORD EQUAL STRING)?
- | SYMMETRIC KEY decrypting_Key_name=id
- | PASSWORD EQUAL STRING
- ;
-
-grant_permission
- : EXECUTE
- | VIEW id // DEFINITION
- | TAKE id // OWNERSHIP
- | CONTROL id? // SERVER
- | CREATE (TABLE | VIEW)
- | SHOWPLAN
- | IMPERSONATE
- | SELECT
- | REFERENCES
- | INSERT
- | ALTER (ANY? (id | DATABASE))?
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms190356.aspx
-// https://msdn.microsoft.com/en-us/library/ms189484.aspx
-set_statement
- : SET LOCAL_ID ('.' member_name=id)? '=' expression ';'?
- | SET LOCAL_ID assignment_operator expression ';'?
- | SET LOCAL_ID '='
- CURSOR declare_set_cursor_common (FOR (READ ONLY | UPDATE (OF column_name_list)?))? ';'?
- // https://msdn.microsoft.com/en-us/library/ms189837.aspx
- | set_special
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms174377.aspx
-transaction_statement
- // https://msdn.microsoft.com/en-us/library/ms188386.aspx
- : BEGIN DISTRIBUTED (TRAN | TRANSACTION) (id | LOCAL_ID)? ';'?
- // https://msdn.microsoft.com/en-us/library/ms188929.aspx
- | BEGIN (TRAN | TRANSACTION) ((id | LOCAL_ID) (WITH MARK STRING)?)? ';'?
- // https://msdn.microsoft.com/en-us/library/ms190295.aspx
- | COMMIT (TRAN | TRANSACTION) ((id | LOCAL_ID) (WITH '(' DELAYED_DURABILITY EQUAL (OFF | ON) ')')?)? ';'?
- // https://msdn.microsoft.com/en-us/library/ms178628.aspx
- | COMMIT WORK? ';'?
- | COMMIT id
- | ROLLBACK id
- // https://msdn.microsoft.com/en-us/library/ms181299.aspx
- | ROLLBACK (TRAN | TRANSACTION) (id | LOCAL_ID)? ';'?
- // https://msdn.microsoft.com/en-us/library/ms174973.aspx
- | ROLLBACK WORK? ';'?
- // https://msdn.microsoft.com/en-us/library/ms188378.aspx
- | SAVE (TRAN | TRANSACTION) (id | LOCAL_ID)? ';'?
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms188037.aspx
-go_statement
- : GO (count=DECIMAL)?
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms188366.aspx
-use_statement
- : USE database=id ';'?
- ;
-
-setuser_statement
- : SETUSER user=STRING?
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/language-elements/reconfigure-transact-sql
-reconfigure_statement
- : RECONFIGURE (WITH OVERRIDE)?
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/language-elements/shutdown-transact-sql
-shutdown_statement
- : SHUTDOWN (WITH NOWAIT)?
- ;
-
-dbcc_clause
- : DBCC name=simple_id ('(' expression_list ')')? (WITH dbcc_options)? ';'?
- ;
-
-dbcc_options
- : simple_id (',' simple_id)?
- ;
-
-execute_clause
- : EXECUTE AS clause=(CALLER | SELF | OWNER | STRING)
- ;
-
-declare_local
- : LOCAL_ID AS? data_type ('=' expression)?
- ;
-
-table_type_definition
- : TABLE '(' column_def_table_constraints ')'
- ;
-
-xml_type_definition
- : XML '(' ( CONTENT | DOCUMENT )? xml_schema_collection ')'
- ;
-
-xml_schema_collection
- : ID '.' ID
- ;
-
-column_def_table_constraints
- : column_def_table_constraint (','? column_def_table_constraint)*
- ;
-
-column_def_table_constraint
- : column_definition
- | materialized_column_definition
- | table_constraint
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms187742.aspx
-column_definition
- : id (data_type | AS expression) (COLLATE id)? null_notnull?
- ((CONSTRAINT constraint=id)? null_or_default null_or_default?
- | IDENTITY ('(' seed=DECIMAL ',' increment=DECIMAL ')')? (NOT FOR REPLICATION)?)?
- ROWGUIDCOL?
- column_constraint*
- ;
-
-materialized_column_definition
- : id (COMPUTE | AS) expression (MATERIALIZED | NOT MATERIALIZED)?
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms186712.aspx
-column_constraint
- :(CONSTRAINT constraint=id)?
- ((PRIMARY KEY | UNIQUE) clustered? index_options?
- | CHECK (NOT FOR REPLICATION)? '(' search_condition ')'
- | (FOREIGN KEY)? REFERENCES table_name '(' pk = column_name_list')' on_delete? on_update?
- | null_notnull)
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms188066.aspx
-table_constraint
- : (CONSTRAINT constraint=id)?
- ((PRIMARY KEY | UNIQUE) clustered? '(' column_name_list_with_order ')' index_options? (ON id)?
- | CHECK (NOT FOR REPLICATION)? '(' search_condition ')'
- | DEFAULT '('? (STRING | PLUS | function_call | DECIMAL)+ ')'? FOR id
- | FOREIGN KEY '(' fk = column_name_list ')' REFERENCES table_name ('(' pk = column_name_list')')? on_delete? on_update?)
- ;
-
-on_delete
- : ON DELETE (NO ACTION | CASCADE | SET NULL | SET DEFAULT)
- ;
-
-on_update
- : ON UPDATE (NO ACTION | CASCADE | SET NULL | SET DEFAULT)
- ;
-
-index_options
- : WITH '(' index_option (',' index_option)* ')'
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms186869.aspx
-// Id runtime checking. Id in (PAD_INDEX, FILLFACTOR, IGNORE_DUP_KEY, STATISTICS_NORECOMPUTE, ALLOW_ROW_LOCKS,
-// ALLOW_PAGE_LOCKS, SORT_IN_TEMPDB, ONLINE, MAXDOP, DATA_COMPRESSION, ONLINE).
-index_option
- : simple_id '=' (simple_id | on_off | DECIMAL)
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms180169.aspx
-declare_cursor
- : DECLARE cursor_name
- (CURSOR (declare_set_cursor_common (FOR UPDATE (OF column_name_list)?)?)?
- | (SEMI_SENSITIVE | INSENSITIVE)? SCROLL? CURSOR FOR select_statement (FOR (READ ONLY | UPDATE | (OF column_name_list)))?
- ) ';'?
- ;
-
-declare_set_cursor_common
- : declare_set_cursor_common_partial*
- FOR select_statement
- ;
-
-declare_set_cursor_common_partial
- : (LOCAL | GLOBAL)
- | (FORWARD_ONLY | SCROLL)
- | (STATIC | KEYSET | DYNAMIC | FAST_FORWARD)
- | (READ_ONLY | SCROLL_LOCKS | OPTIMISTIC)
- | TYPE_WARNING
- ;
-
-fetch_cursor
- : FETCH ((NEXT | PRIOR | FIRST | LAST | (ABSOLUTE | RELATIVE) expression)? FROM)?
- GLOBAL? cursor_name (INTO LOCAL_ID (',' LOCAL_ID)*)? ';'?
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms190356.aspx
-// Runtime check.
-set_special
- : SET id (id | constant_LOCAL_ID | on_off) ';'?
- // https://msdn.microsoft.com/en-us/library/ms173763.aspx
- | SET TRANSACTION ISOLATION LEVEL
- (READ UNCOMMITTED | READ COMMITTED | REPEATABLE READ | SNAPSHOT | SERIALIZABLE | DECIMAL) ';'?
- // https://msdn.microsoft.com/en-us/library/ms188059.aspx
- | SET IDENTITY_INSERT table_name on_off ';'?
- | SET ANSI_NULLS on_off
- | SET QUOTED_IDENTIFIER on_off
- | SET ANSI_PADDING on_off
- | SET ANSI_WARNINGS on_off
- | SET modify_method
- ;
-
-constant_LOCAL_ID
- : constant
- | LOCAL_ID
- ;
-
-// Expression.
-
-// https://docs.microsoft.com/en-us/sql/t-sql/language-elements/expressions-transact-sql
-// Operator precendence: https://docs.microsoft.com/en-us/sql/t-sql/language-elements/operator-precedence-transact-sql
-expression
- : primitive_expression
- | function_call
- | expression COLLATE id
- | case_expression
- | full_column_name
- | bracket_expression
- | unary_operator_expression
- | expression op=('*' | '/' | '%') expression
- | expression op=('+' | '-' | '&' | '^' | '|' | '||') expression
- | expression comparison_operator expression
- | expression assignment_operator expression
- | over_clause
- ;
-
-primitive_expression
- : DEFAULT | NULL | LOCAL_ID | constant
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/language-elements/case-transact-sql
-case_expression
- : CASE caseExpr=expression switch_section+ (ELSE elseExpr=expression)? END
- | CASE switch_search_condition_section+ (ELSE elseExpr=expression)? END
- ;
-
-unary_operator_expression
- : '~' expression
- | op=('+' | '-') expression
- ;
-
-bracket_expression
- : '(' expression ')' | '(' subquery ')'
- ;
-
-constant_expression
- : NULL
- | constant
- // system functions: https://msdn.microsoft.com/en-us/library/ms187786.aspx
- | function_call
- | LOCAL_ID // TODO: remove.
- | '(' constant_expression ')'
- ;
-
-subquery
- : select_statement
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms175972.aspx
-with_expression
- : WITH (XMLNAMESPACES ',')? common_table_expression (',' common_table_expression)*
- | WITH BLOCKING_HIERARCHY ('(' full_column_name_list ')')? AS '(' select_statement ')'
- ;
-
-common_table_expression
- : expression_name=id ('(' column_name_list ')')? AS '(' select_statement ')'
- ;
-
-update_elem
- : (full_column_name | LOCAL_ID) ('=' | assignment_operator) expression
- | udt_column_name=id '.' method_name=id '(' expression_list ')'
- //| full_column_name '.' WRITE (expression, )
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms173545.aspx
-search_condition_list
- : search_condition (',' search_condition)*
- ;
-
-search_condition
- : search_condition_and (OR search_condition_and)*
- ;
-
-search_condition_and
- : search_condition_not (AND search_condition_not)*
- ;
-
-search_condition_not
- : NOT? predicate
- ;
-
-predicate
- : EXISTS '(' subquery ')'
- | expression comparison_operator expression
- | expression comparison_operator (ALL | SOME | ANY) '(' subquery ')'
- | expression NOT? BETWEEN expression AND expression
- | expression NOT? IN '(' (subquery | expression_list) ')'
- | expression NOT? LIKE expression (ESCAPE expression)?
- | expression IS null_notnull
- | '(' search_condition ')'
- ;
-
-// Changed union rule to sql_union to avoid union construct with C++ target. Issue reported by person who generates into C++. This individual reports change causes generated code to work
-
-query_expression
- : (query_specification | '(' query_expression ')') sql_union*
- ;
-
-sql_union
- : (UNION ALL? | EXCEPT | INTERSECT) (query_specification | ('(' query_expression ')'))
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms176104.aspx
-query_specification
- : SELECT (ALL | DISTINCT)? top_clause?
- select_list
- // https://msdn.microsoft.com/en-us/library/ms188029.aspx
- (INTO table_name)?
- (FROM table_sources)?
- (WHERE where=search_condition)?
- // https://msdn.microsoft.com/en-us/library/ms177673.aspx
- (GROUP BY (ALL)? group_by_item (',' group_by_item)*)?
- (HAVING having=search_condition)?
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms189463.aspx
-top_clause
- : TOP (top_percent | top_count) (WITH TIES)?
- ;
-
-top_percent
- : (REAL | FLOAT) PERCENT
- | '(' expression ')' PERCENT
- ;
-
-top_count
- : DECIMAL
- | '(' expression ')'
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms188385.aspx
-order_by_clause
- : ORDER BY order_by_expression (',' order_by_expression)*
- (OFFSET expression (ROW | ROWS) (FETCH (FIRST | NEXT) expression (ROW | ROWS) ONLY)?)?
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/queries/select-for-clause-transact-sql
-for_clause
- : FOR BROWSE
- | FOR XML (RAW ('(' STRING ')')? | AUTO) xml_common_directives*
- (COMMA (XMLDATA | XMLSCHEMA ('(' STRING ')')?))?
- (COMMA ELEMENTS (XSINIL | ABSENT))?
- | FOR XML EXPLICIT xml_common_directives*
- (COMMA XMLDATA)?
- | FOR XML PATH ('(' STRING ')')? xml_common_directives*
- (COMMA ELEMENTS (XSINIL | ABSENT))?
- | FOR JSON (AUTO | PATH)
- (COMMA ROOT ('(' STRING ')')?)?
- (COMMA INCLUDE_NULL_VALUES)?
- (COMMA WITHOUT_ARRAY_WRAPPER)?
- ;
-
-xml_common_directives
- : ',' (BINARY_BASE64 | TYPE | ROOT ('(' STRING ')')?)
- ;
-
-order_by_expression
- : expression (ASC | DESC)?
- ;
-
-group_by_item
- : expression
- /*| rollup_spec
- | cube_spec
- | grouping_sets_spec
- | grand_total*/
- ;
-
-option_clause
- // https://msdn.microsoft.com/en-us/library/ms181714.aspx
- : OPTION '(' option (',' option)* ')'
- ;
-
-option
- : FAST number_rows=DECIMAL
- | (HASH | ORDER) GROUP
- | (MERGE | HASH | CONCAT) UNION
- | (LOOP | MERGE | HASH) JOIN
- | EXPAND VIEWS
- | FORCE ORDER
- | IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX
- | KEEP PLAN
- | KEEPFIXED PLAN
- | MAXDOP number_of_processors=DECIMAL
- | MAXRECURSION number_recursion=DECIMAL
- | OPTIMIZE FOR '(' optimize_for_arg (',' optimize_for_arg)* ')'
- | OPTIMIZE FOR UNKNOWN
- | PARAMETERIZATION (SIMPLE | FORCED)
- | RECOMPILE
- | ROBUST PLAN
- | USE PLAN STRING
- ;
-
-optimize_for_arg
- : LOCAL_ID (UNKNOWN | '=' (constant | NULL))
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms176104.aspx
-select_list
- : select_list_elem (',' select_list_elem)*
- ;
-
-udt_method_arguments
- : '(' execute_var_string (',' execute_var_string)* ')'
- ;
-
-// https://docs.microsoft.com/ru-ru/sql/t-sql/queries/select-clause-transact-sql
-asterisk
- : (table_name '.')? '*'
- ;
-
-column_elem
- : ((table_name '.')? (column_name=id | '$' IDENTITY | '$' ROWGUID) | NULL) as_column_alias?
- ;
-
-udt_elem
- : udt_column_name=id '.' non_static_attr=id udt_method_arguments as_column_alias?
- | udt_column_name=id ':' ':' static_attr=id udt_method_arguments? as_column_alias?
- ;
-
-expression_elem
- : column_alias eq='=' expression
- | expression as_column_alias?
- ;
-
-select_list_elem
- : asterisk
- | column_elem
- | udt_elem
- | expression_elem
- ;
-
-table_sources
- : table_source (',' table_source)*
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms177634.aspx
-table_source
- : table_source_item_joined
- | '(' table_source_item_joined ')'
- ;
-
-table_source_item_joined
- : table_source_item join_part*
- ;
-
-table_source_item
- : table_name_with_hint as_table_alias?
- | full_table_name as_table_alias?
- | rowset_function as_table_alias?
- | derived_table (as_table_alias column_alias_list?)?
- | change_table as_table_alias
- | function_call (as_table_alias column_alias_list?)?
- | LOCAL_ID as_table_alias?
- | LOCAL_ID '.' function_call (as_table_alias column_alias_list?)?
- | open_xml
- | ':' ':' function_call as_table_alias? // Build-in function (old syntax)
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/functions/openxml-transact-sql
-open_xml
- : OPENXML '(' expression ',' expression (',' expression)? ')'
- (WITH '(' schema_declaration ')' )?
- ;
-
-schema_declaration
- : column_declaration (',' column_declaration)*
- ;
-
-column_declaration
- : ID data_type (STRING)?
- ;
-
-change_table
- : CHANGETABLE '(' CHANGES table_name ',' (NULL | DECIMAL | LOCAL_ID) ')'
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms191472.aspx
-join_part
- // https://msdn.microsoft.com/en-us/library/ms173815(v=sql.120).aspx
- : (INNER? |
- join_type=(LEFT | RIGHT | FULL) OUTER?) (join_hint=(LOOP | HASH | MERGE | REMOTE))?
- JOIN table_source ON search_condition
- | CROSS JOIN table_source
- | CROSS APPLY table_source
- | OUTER APPLY table_source
- | PIVOT pivot_clause as_table_alias
- | UNPIVOT unpivot_clause as_table_alias
- ;
-
-pivot_clause
- : '(' aggregate_windowed_function FOR full_column_name IN column_alias_list ')'
- ;
-
-unpivot_clause
- : '(' expression FOR full_column_name IN '(' full_column_name_list ')' ')'
- ;
-
-full_column_name_list
- : full_column_name (',' full_column_name)*
- ;
-
-table_name_with_hint
- : table_name with_table_hints?
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms190312.aspx
-rowset_function
- : (
- OPENROWSET LR_BRACKET provider_name = STRING COMMA connectionString = STRING COMMA sql = STRING RR_BRACKET
- )
- | ( OPENROWSET '(' BULK data_file=STRING ',' (bulk_option (',' bulk_option)* | id)')' )
- ;
-
-// runtime check.
-bulk_option
- : id '=' bulk_option_value=(DECIMAL | STRING)
- ;
-
-derived_table
- : subquery
- | '(' subquery ')'
- | table_value_constructor
- | '(' table_value_constructor ')'
- ;
-
-function_call
- : // https://msdn.microsoft.com/en-us/library/ms173784.aspx
- BINARY_CHECKSUM '(' '*' ')' #BINARY_CHECKSUM
- // https://msdn.microsoft.com/en-us/library/hh231076.aspx
- // https://msdn.microsoft.com/en-us/library/ms187928.aspx
- | CAST '(' expression AS data_type ')' #CAST
- | CONVERT '(' convert_data_type=data_type ','convert_expression=expression (',' style=expression)? ')' #CONVERT
- // https://msdn.microsoft.com/en-us/library/ms189788.aspx
- | CHECKSUM '(' '*' ')' #CHECKSUM
- // https://msdn.microsoft.com/en-us/library/ms190349.aspx
- | COALESCE '(' expression_list ')' #COALESCE
- // https://msdn.microsoft.com/en-us/library/ms188751.aspx
- | CURRENT_TIMESTAMP #CURRENT_TIMESTAMP
- // https://msdn.microsoft.com/en-us/library/ms176050.aspx
- | CURRENT_USER #CURRENT_USER
- // https://msdn.microsoft.com/en-us/library/ms186819.aspx
- | DATEADD '(' ID ',' expression ',' expression ')' #DATEADD
- // https://msdn.microsoft.com/en-us/library/ms189794.aspx
- | DATEDIFF '(' ID ',' expression ',' expression ')' #DATEDIFF
- // https://msdn.microsoft.com/en-us/library/ms174395.aspx
- | DATENAME '(' ID ',' expression ')' #DATENAME
- // https://msdn.microsoft.com/en-us/library/ms174420.aspx
- | DATEPART '(' ID ',' expression ')' #DATEPART
- // https://docs.microsoft.com/en-us/sql/t-sql/functions/getdate-transact-sql
- | GETDATE '(' ')' #GETDATE
- // https://docs.microsoft.com/en-us/sql/t-sql/functions/getdate-transact-sql
- | GETUTCDATE '(' ')' #GETUTCDATE
- // https://msdn.microsoft.com/en-us/library/ms189838.aspx
- | IDENTITY '(' data_type (',' seed=DECIMAL)? (',' increment=DECIMAL)? ')' #IDENTITY
- // https://msdn.microsoft.com/en-us/library/bb839514.aspx
- | MIN_ACTIVE_ROWVERSION #MIN_ACTIVE_ROWVERSION
- // https://msdn.microsoft.com/en-us/library/ms177562.aspx
- | NULLIF '(' expression ',' expression ')' #NULLIF
- // https://msdn.microsoft.com/fr-fr/library/ms188043.aspx
- | STUFF '(' expression ',' DECIMAL ',' DECIMAL ',' expression ')' #STUFF
- // https://msdn.microsoft.com/en-us/library/ms177587.aspx
- | SESSION_USER #SESSION_USER
- // https://msdn.microsoft.com/en-us/library/ms179930.aspx
- | SYSTEM_USER #SYSTEM_USER
- // https://msdn.microsoft.com/en-us/library/ms184325.aspx
- | ISNULL '(' expression ',' expression ')' #ISNULL
- // https://docs.microsoft.com/en-us/sql/t-sql/xml/xml-data-type-methods
- | xml_data_type_methods #XML_DATA_TYPE_FUNC
- // https://docs.microsoft.com/en-us/sql/t-sql/functions/logical-functions-iif-transact-sql
- | IIF '(' search_condition ',' expression ',' expression ')' #IFF
- | ranking_windowed_function #RANKING_WINDOWED_FUNC
- | aggregate_windowed_function #AGGREGATE_WINDOWED_FUNC
- | analytic_windowed_function #ANALYTIC_WINDOWED_FUNC
- | scalar_function_name '(' expression_list? ')' #SCALAR_FUNCTION
- | STRING_AGG '(' expr=expression ',' separator=expression ')' (WITHIN GROUP '(' order_by_clause ')')? #STRINGAGG
- ;
-
-xml_data_type_methods
- : value_method
- | query_method
- | exist_method
- | modify_method
- | nodes_method
- ;
-
-value_method
- : (LOCAL_ID | ID | EVENTDATA | query_method) '.' VALUE '(' xquery=STRING ',' sqltype=STRING ')'
- | (LOCAL_ID | ID | EVENTDATA | query_method) '.' ROW '.' VALUE '(' xquery=STRING ',' sqltype=STRING ')'
- | (LOCAL_ID | ID | EVENTDATA | query_method) '.' PARAM_NODE '.' VALUE '(' xquery=STRING ',' sqltype=STRING ')'
- ;
-
-query_method
- : (LOCAL_ID | ID | full_table_name) '.' QUERY '(' xquery=STRING ')'
- | (LOCAL_ID | ID | full_table_name) '.' ROW '.' QUERY '(' xquery=STRING ')'
- ;
-
-exist_method
- : (LOCAL_ID | ID) '.' EXIST '(' xquery=STRING ')'
- ;
-
-modify_method
- : (LOCAL_ID | ID) '.' MODIFY '(' xml_dml=STRING ')'
- ;
-
-nodes_method
- : (LOCAL_ID | ID) '.' NODES '(' xquery=STRING ')'
- ;
-
-
-switch_section
- : WHEN expression THEN expression
- ;
-
-switch_search_condition_section
- : WHEN search_condition THEN expression
- ;
-
-as_column_alias
- : AS? column_alias
- ;
-
-as_table_alias
- : AS? table_alias
- ;
-
-table_alias
- : id with_table_hints?
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms187373.aspx
-with_table_hints
- : WITH? '(' table_hint (','? table_hint)* ')'
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms187373.aspx
-insert_with_table_hints
- : WITH '(' table_hint (','? table_hint)* ')'
- ;
-
-// Id runtime check. Id can be (FORCESCAN, HOLDLOCK, NOLOCK, NOWAIT, PAGLOCK, READCOMMITTED,
-// READCOMMITTEDLOCK, READPAST, READUNCOMMITTED, REPEATABLEREAD, ROWLOCK, TABLOCK, TABLOCKX
-// UPDLOCK, XLOCK)
-table_hint
- : NOEXPAND? ( INDEX ('(' index_value (',' index_value)* ')' | index_value (',' index_value)*)
- | INDEX '=' index_value
- | FORCESEEK ('(' index_value '(' ID (',' ID)* ')' ')')?
- | SERIALIZABLE
- | SNAPSHOT
- | SPATIAL_WINDOW_MAX_CELLS '=' DECIMAL
- | ID)
- ;
-
-index_value
- : id | DECIMAL
- ;
-
-column_alias_list
- : '(' column_alias (',' column_alias)* ')'
- ;
-
-column_alias
- : id
- | STRING
- ;
-
-table_value_constructor
- : VALUES '(' expression_list ')' (',' '(' expression_list ')')*
- ;
-
-expression_list
- : expression (',' expression)*
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms189798.aspx
-ranking_windowed_function
- : (RANK | DENSE_RANK | ROW_NUMBER) '(' ')' over_clause
- | NTILE '(' expression ')' over_clause
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms173454.aspx
-aggregate_windowed_function
- : (AVG | MAX | MIN | SUM | STDEV | STDEVP | VAR | VARP)
- '(' all_distinct_expression ')' over_clause?
- | (COUNT | COUNT_BIG)
- '(' ('*' | all_distinct_expression) ')' over_clause?
- | CHECKSUM_AGG '(' all_distinct_expression ')'
- | GROUPING '(' expression ')'
- | GROUPING_ID '(' expression_list ')'
- ;
-
-// https://docs.microsoft.com/en-us/sql/t-sql/functions/analytic-functions-transact-sql
-analytic_windowed_function
- : (FIRST_VALUE | LAST_VALUE) '(' expression ')' over_clause
- | (LAG | LEAD) '(' expression (',' expression (',' expression)? )? ')' over_clause
- ;
-
-all_distinct_expression
- : (ALL | DISTINCT)? expression
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms189461.aspx
-over_clause
- : OVER '(' (PARTITION BY expression_list)? order_by_clause? row_or_range_clause? ')'
- ;
-
-row_or_range_clause
- : (ROWS | RANGE) window_frame_extent
- ;
-
-window_frame_extent
- : window_frame_preceding
- | BETWEEN window_frame_bound AND window_frame_bound
- ;
-
-window_frame_bound
- : window_frame_preceding
- | window_frame_following
- ;
-
-window_frame_preceding
- : UNBOUNDED PRECEDING
- | DECIMAL PRECEDING
- | CURRENT ROW
- ;
-
-window_frame_following
- : UNBOUNDED FOLLOWING
- | DECIMAL FOLLOWING
- ;
-
-create_database_option:
- FILESTREAM ( database_filestream_option (',' database_filestream_option)* )
- | DEFAULT_LANGUAGE EQUAL ( id | STRING )
- | DEFAULT_FULLTEXT_LANGUAGE EQUAL ( id | STRING )
- | NESTED_TRIGGERS EQUAL ( OFF | ON )
- | TRANSFORM_NOISE_WORDS EQUAL ( OFF | ON )
- | TWO_DIGIT_YEAR_CUTOFF EQUAL DECIMAL
- | DB_CHAINING ( OFF | ON )
- | TRUSTWORTHY ( OFF | ON )
- ;
-
-database_filestream_option:
- LR_BRACKET
- (
- ( NON_TRANSACTED_ACCESS EQUAL ( OFF | READ_ONLY | FULL ) )
- |
- ( DIRECTORY_NAME EQUAL STRING )
- )
- RR_BRACKET
- ;
-
-database_file_spec:
- file_group | file_spec;
-
-file_group:
- FILEGROUP id
- ( CONTAINS FILESTREAM )?
- ( DEFAULT )?
- ( CONTAINS MEMORY_OPTIMIZED_DATA )?
- file_spec ( ',' file_spec )*
- ;
-file_spec
- : LR_BRACKET
- NAME EQUAL ( id | STRING ) ','?
- FILENAME EQUAL file = STRING ','?
- ( SIZE EQUAL file_size ','? )?
- ( MAXSIZE EQUAL (file_size | UNLIMITED )','? )?
- ( FILEGROWTH EQUAL file_size ','? )?
- RR_BRACKET
- ;
-
-
-// Primitive.
-entity_name
- : (server=id '.' database=id '.' schema=id '.'
- | database=id '.' (schema=id)? '.'
- | schema=id '.')? table=id
- ;
-
-
-entity_name_for_azure_dw
- : schema=id
- | schema=id '.' object_name=id
- ;
-
-entity_name_for_parallel_dw
- : schema_database=id
- | schema=id '.' object_name=id
- ;
-
-full_table_name
- : (server=id '.' database=id '.' schema=id '.'
- | database=id '.' (schema=id)? '.'
- | schema=id '.')? table=id
- ;
-
-table_name
- : (database=id '.' (schema=id)? '.' | schema=id '.')? table=id
- | (database=id '.' (schema=id)? '.' | schema=id '.')? BLOCKING_HIERARCHY
- ;
-
-simple_name
- : (schema=id '.')? name=id
- ;
-
-func_proc_name_schema
- : ((schema=id) '.')? procedure=id
- ;
-
-func_proc_name_database_schema
- : func_proc_name_schema
- | (database=id '.' (schema=id)? '.')? procedure=id
- ;
-
-func_proc_name_server_database_schema
- : func_proc_name_database_schema
- | (server=id '.' database=id '.' (schema=id)? '.')? procedure=id
- ;
-
-ddl_object
- : full_table_name
- | LOCAL_ID
- ;
-/* There are some RESERVED WORDS that can be column names */
-full_column_name
- : (table_name '.')? column_name=id
- | (table_name '.')? COMPATIBILITY_LEVEL
- | (table_name '.')? STATUS
- | (table_name '.')? QUOTED_IDENTIFIER
- | (table_name '.')? ARITHABORT
- | (table_name '.')? ANSI_WARNINGS
- | (table_name '.')? ANSI_PADDING
- | (table_name '.')? ANSI_NULLS
-
- ;
-
-column_name_list_with_order
- : id (ASC | DESC)? (',' id (ASC | DESC)?)*
- ;
-
-column_name_list
- : id (',' id)*
- ;
-
-cursor_name
- : id
- | LOCAL_ID
- ;
-
-on_off
- : ON
- | OFF
- ;
-
-clustered
- : CLUSTERED
- | NONCLUSTERED
- ;
-
-null_notnull
- : NOT? NULL
- ;
-
-null_or_default
- :(null_notnull | DEFAULT constant_expression (WITH VALUES)?)
- ;
-
-scalar_function_name
- : func_proc_name_server_database_schema
- | RIGHT
- | LEFT
- | BINARY_CHECKSUM
- | CHECKSUM
- ;
-
-begin_conversation_timer
- : BEGIN CONVERSATION TIMER '(' LOCAL_ID ')' TIMEOUT '=' time ';'?
- ;
-
-begin_conversation_dialog
- : BEGIN DIALOG (CONVERSATION)? dialog_handle=LOCAL_ID
- FROM SERVICE initiator_service_name=service_name
- TO SERVICE target_service_name=service_name (',' service_broker_guid=STRING)?
- ON CONTRACT contract_name
- (WITH
- ((RELATED_CONVERSATION | RELATED_CONVERSATION_GROUP) '=' LOCAL_ID ','?)?
- (LIFETIME '=' (DECIMAL | LOCAL_ID) ','?)?
- (ENCRYPTION '=' (ON | OFF))? )?
- ';'?
- ;
-
-contract_name
- : (id | expression)
- ;
-
-service_name
- : (id | expression)
- ;
-
-end_conversation
- : END CONVERSATION conversation_handle=LOCAL_ID ';'?
- (WITH (ERROR '=' faliure_code=(LOCAL_ID | STRING) DESCRIPTION '=' failure_text=(LOCAL_ID | STRING))? CLEANUP? )?
- ;
-
-waitfor_conversation
- : WAITFOR? '(' get_conversation ')' (','? TIMEOUT timeout=time)? ';'?
- ;
-
-get_conversation
- :GET CONVERSATION GROUP conversation_group_id=(STRING | LOCAL_ID) FROM queue=queue_id ';'?
- ;
-
-queue_id
- : (database_name=id '.' schema_name=id '.' name=id)
- | id
- ;
-
-send_conversation
- : SEND ON CONVERSATION conversation_handle=(STRING | LOCAL_ID)
- MESSAGE TYPE message_type_name=expression
- ('(' message_body_expression=(STRING | LOCAL_ID) ')' )?
- ';'?
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms187752.aspx
-// TODO: implement runtime check or add new tokens.
-data_type
- /*: BIGINT
- | BINARY '(' DECIMAL ')'
- | BIT
- | CHAR '(' DECIMAL ')'
- | DATE
- | DATETIME
- | DATETIME2
- | DATETIMEOFFSET '(' DECIMAL ')'
- | DECIMAL '(' DECIMAL ',' DECIMAL ')'
- | DOUBLE PRECISION?
- | FLOAT
- | GEOGRAPHY
- | GEOMETRY
- | HIERARCHYID
- | IMAGE
- | INT
- | MONEY
- | NCHAR '(' DECIMAL ')'
- | NTEXT
- | NUMERIC '(' DECIMAL ',' DECIMAL ')'
- | NVARCHAR '(' DECIMAL | MAX ')'
- | REAL
- | SMALLDATETIME
- | SMALLINT
- | SMALLMONEY
- | SQL_VARIANT
- | TEXT
- | TIME '(' DECIMAL ')'
- | TIMESTAMP
- | TINYINT
- | UNIQUEIDENTIFIER
- | VARBINARY '(' DECIMAL | MAX ')'
- | VARCHAR '(' DECIMAL | MAX ')'
- | XML*/
- : id IDENTITY? ('(' (DECIMAL | MAX) (',' DECIMAL)? ')')?
- | DOUBLE PRECISION?
- | INT
- | TINYINT
- | SMALLINT
- | BIGINT
- ;
-
-default_value
- : NULL
- | DEFAULT
- | constant
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms179899.aspx
-constant
- : STRING // string, datetime or uniqueidentifier
- | BINARY
- | sign? DECIMAL
- | sign? (REAL | FLOAT) // float or decimal
- | sign? dollar='$' (DECIMAL | FLOAT) // money
- ;
-
-sign
- : '+'
- | '-'
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms175874.aspx
-id
- : simple_id
- | DOUBLE_QUOTE_ID
- | SQUARE_BRACKET_ID
- ;
-
-simple_id
- : ID
- | ABSOLUTE
- | ACCENT_SENSITIVITY
- | ACTION
- | ACTIVATION
- | ACTIVE
- | ADDRESS
- | AES_128
- | AES_192
- | AES_256
- | AFFINITY
- | AFTER
- | AGGREGATE
- | ALGORITHM
- | ALLOW_ENCRYPTED_VALUE_MODIFICATIONS
- | ALLOW_SNAPSHOT_ISOLATION
- | ALLOWED
- | ANSI_NULL_DEFAULT
- | ANSI_NULLS
- | ANSI_PADDING
- | ANSI_WARNINGS
- | APPLICATION_LOG
- | APPLY
- | ARITHABORT
- | ASSEMBLY
- | AUDIT
- | AUDIT_GUID
- | AUTO
- | AUTO_CLEANUP
- | AUTO_CLOSE
- | AUTO_CREATE_STATISTICS
- | AUTO_SHRINK
- | AUTO_UPDATE_STATISTICS
- | AUTO_UPDATE_STATISTICS_ASYNC
- | AVAILABILITY
- | AVG
- | BACKUP_PRIORITY
- | BEGIN_DIALOG
- | BIGINT
- | BINARY_BASE64
- | BINARY_CHECKSUM
- | BINDING
- | BLOB_STORAGE
- | BROKER
- | BROKER_INSTANCE
- | BULK_LOGGED
- | CALLED
- | CALLER
- | CAP_CPU_PERCENT
- | CAST
- | CATALOG
- | CATCH
- | CHANGE_RETENTION
- | CHANGE_TRACKING
- | CHECKSUM
- | CHECKSUM_AGG
- | CLEANUP
- | COLLECTION
- | COLUMN_MASTER_KEY
- | COMMITTED
- | COMPATIBILITY_LEVEL
- | CONCAT
- | CONCAT_NULL_YIELDS_NULL
- | CONTENT
- | CONTROL
- | COOKIE
- | COUNT
- | COUNT_BIG
- | COUNTER
- | CPU
- | CREATE_NEW
- | CREATION_DISPOSITION
- | CREDENTIAL
- | CRYPTOGRAPHIC
- | CURSOR_CLOSE_ON_COMMIT
- | CURSOR_DEFAULT
- | DATA
- | DATA_COMPRESSION
- | DATE_CORRELATION_OPTIMIZATION
- | DATEADD
- | DATEDIFF
- | DATENAME
- | DATEPART
- | DAYS
- | DB_CHAINING
- | DB_FAILOVER
- | DECRYPTION
- | DEFAULT_DOUBLE_QUOTE
- | DEFAULT_FULLTEXT_LANGUAGE
- | DEFAULT_LANGUAGE
- | DELAY
- | DELAYED_DURABILITY
- | DELETED
- | DENSE_RANK
- | DEPENDENTS
- | DES
- | DESCRIPTION
- | DESX
- | DHCP
- | DIALOG
- | DIRECTORY_NAME
- | DISABLE
- | DISABLE_BROKER
- | DISABLED
- | DISK_DRIVE
- | DOCUMENT
- | DYNAMIC
- | EMERGENCY
- | EMPTY
- | ENABLE
- | ENABLE_BROKER
- | ENCRYPTED_VALUE
- | ENCRYPTION
- | ENDPOINT_URL
- | ERROR_BROKER_CONVERSATIONS
- | EVENTDATA
- | EXCLUSIVE
- | EXECUTABLE
- | EXIST
- | EXPAND
- | EXPIRY_DATE
- | EXPLICIT
- | FAIL_OPERATION
- | FAILOVER_MODE
- | FAILURE
- | FAILURE_CONDITION_LEVEL
- | FAST
- | FAST_FORWARD
- | FILEGROUP
- | FILEGROWTH
- | FILENAME
- | FILEPATH
- | FILESTREAM
- | FILLFACTOR
- | FILTER
- | FIRST
- | FIRST_VALUE
- | FOLLOWING
- | FORCE
- | FORCE_FAILOVER_ALLOW_DATA_LOSS
- | FORCED
- | FORCESEEK
- | FORMAT
- | FORWARD_ONLY
- | FULLSCAN
- | FULLTEXT
- | GB
- | GETDATE
- | GETUTCDATE
- | GLOBAL
- | GO
- | GROUP_MAX_REQUESTS
- | GROUPING
- | GROUPING_ID
- | HADR
- | HASH
- | HEALTH_CHECK_TIMEOUT
- | HIGH
- | HONOR_BROKER_PRIORITY
- | HOURS
- | IDENTITY_VALUE
- | IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX
- | IMMEDIATE
- | IMPERSONATE
- | IMPORTANCE
- | INCREMENTAL
- | INIT
- | INITIATOR
- | INPUT
- | INSENSITIVE
- | INSERTED
- | INT
- | IP
- | ISOLATION
- | KB
- | KEEP
- | KEEPFIXED
- | KEY
- | KEY_SOURCE
- | KEYS
- | KEYSET
- | LAG
- | LAST
- | LAST_VALUE
- | LEAD
- | LEVEL
- | LIST
- | LISTENER
- | LISTENER_URL
- | LOB_COMPACTION
- | LOCAL
- | LOCATION
- | LOCK
- | LOCK_ESCALATION
- | LOGIN
- | LOOP
- | LOW
- | MANUAL
- | MARK
- | MASTER
- | MATERIALIZED
- | MAX
- | MAX_CPU_PERCENT
- | MAX_DOP
- | MAX_FILES
- | MAX_IOPS_PER_VOLUME
- | MAX_MEMORY
- | MAX_MEMORY_PERCENT
- | MAX_PROCESSES
- | MAX_QUEUE_READERS
- | MAX_ROLLOVER_FILES
- | MAXDOP
- | MAXRECURSION
- | MAXSIZE
- | MB
- | MEDIUM
- | MEMORY_OPTIMIZED_DATA
- | MESSAGE
- | MIN
- | MIN_ACTIVE_ROWVERSION
- | MIN_CPU_PERCENT
- | MIN_IOPS_PER_VOLUME
- | MIN_MEMORY_PERCENT
- | MINUTES
- | MIRROR_ADDRESS
- | MIXED_PAGE_ALLOCATION
- | MODE
- | MODIFY
- | MOVE
- | MULTI_USER
- | NAME
- | NESTED_TRIGGERS
- | NEW_ACCOUNT
- | NEW_BROKER
- | NEW_PASSWORD
- | NEXT
- | NO
- | NO_TRUNCATE
- | NO_WAIT
- | NOCOUNT
- | NODES
- | NOEXPAND
- | NON_TRANSACTED_ACCESS
- | NORECOMPUTE
- | NORECOVERY
- | NOWAIT
- | NTILE
- | NUMANODE
- | NUMBER
- | NUMERIC_ROUNDABORT
- | OBJECT
- | OFFLINE
- | OFFSET
- | OFFSETS
- | OLD_ACCOUNT
- | ONLINE
- | ONLY
- | OPEN_EXISTING
- | OPTIMISTIC
- | OPTIMIZE
- | OUT
- | OUTPUT
- | OWNER
- | PAGE
- | PAGE_VERIFY
- | PARAMETERIZATION
- | PARTITION
- | PARTITIONS
- | PARTNER
- | PATH
- | POISON_MESSAGE_HANDLING
- | POOL
- | PORT
- | PRECEDING
- | PRIMARY_ROLE
- | PRIOR
- | PRIORITY
- | PRIORITY_LEVEL
- | PRIVATE
- | PRIVATE_KEY
- | PRIVILEGES
- | PROCEDURE_NAME
- | PROPERTY
- | PROVIDER
- | PROVIDER_KEY_NAME
- | PUBLIC
- | QUERY
- | QUEUE
- | QUEUE_DELAY
- | QUOTED_IDENTIFIER
- | R
- | RANGE
- | RANK
- | RAW
- | RC2
- | RC4
- | RC4_128
- | READ_COMMITTED_SNAPSHOT
- | READ_ONLY
- | READ_ONLY_ROUTING_LIST
- | READ_WRITE
- | READONLY
- | REBUILD
- | RECEIVE
- | RECOMPILE
- | RECOVERY
- | RECURSIVE_TRIGGERS
- | RELATIVE
- | REMOTE
- | REMOTE_SERVICE_NAME
- | REMOVE
- | REORGANIZE
- | REPEATABLE
- | REPLICA
- | REQUEST_MAX_CPU_TIME_SEC
- | REQUEST_MAX_MEMORY_GRANT_PERCENT
- | REQUEST_MEMORY_GRANT_TIMEOUT_SEC
- | REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT
- | RESERVE_DISK_SPACE
- | RESOURCE
- | RESOURCE_MANAGER_LOCATION
- | RESTRICTED_USER
- | RETENTION
- | RETURN
- | RETURNS
- | ROBUST
- | ROOT
- | ROUTE
- | ROW
- | ROW_NUMBER
- | ROWCOUNT
- | ROWGUID
- | ROWS
- | SAFETY
- | SAMPLE
- | SCHEMABINDING
- | SCOPED
- | SCROLL
- | SCROLL_LOCKS
- | SEARCH
- | SECONDARY
- | SECONDARY_ONLY
- | SECONDARY_ROLE
- | SECONDS
- | SECRET
- | SECURITY
- | SECURITY_LOG
- | SEEDING_MODE
- | SELF
- | SEMI_SENSITIVE
- | SEND
- | SENT
- | SEQUENCE
- | SERIALIZABLE
- | SERVER
- | SESSION_TIMEOUT
- | SETERROR
- | SHARE
- | SHOWPLAN
- | SID
- | SID
- | SIGNATURE
- | SIMPLE
- | SINGLE_USER
- | SIZE
- | SMALLINT
- | SNAPSHOT
- | SOURCE
- | SPATIAL_WINDOW_MAX_CELLS
- | SPLIT
- | STANDBY
- | START
- | START_DATE
- | STATE
- | STATIC
- | STATS_STREAM
- | STATUS
- | STDEV
- | STDEVP
- | STOPLIST
- | STRING_AGG
- | STUFF
- | SUBJECT
- | SUM
- | SUSPEND
- | SYMMETRIC
- | SYNCHRONOUS_COMMIT
- | SYNONYM
- | SYSTEM
- | TAKE
- | TARGET
- | TARGET_RECOVERY_TIME
- | TB
- | TEXTIMAGE_ON
- | THROW
- | TIES
- | TIME
- | TIMEOUT
- | TIMER
- | TINYINT
- | TORN_PAGE_DETECTION
- | TRANSFORM_NOISE_WORDS
- | TRIPLE_DES
- | TRIPLE_DES_3KEY
- | TRUSTWORTHY
- | TRY
- | TSQL
- | TWO_DIGIT_YEAR_CUTOFF
- | TYPE
- | TYPE_WARNING
- | UNBOUNDED
- | UNCOMMITTED
- | UNKNOWN
- | UNLIMITED
- | USING
- | VALID_XML
- | VALIDATION
- | VALUE
- | VAR
- | VARP
- | VIEW_METADATA
- | VIEWS
- | WAIT
- | WELL_FORMED_XML
- | WORK
- | WORKLOAD
- | XML
- | XMLNAMESPACES
- ;
-
-// https://msdn.microsoft.com/en-us/library/ms188074.aspx
-// Spaces are allowed for comparison operators.
-comparison_operator
- : '=' | '>' | '<' | '<' '=' | '>' '=' | '<' '>' | '!' '=' | '!' '>' | '!' '<'
- ;
-
-assignment_operator
- : '+=' | '-=' | '*=' | '/=' | '%=' | '&=' | '^=' | '|='
- ;
-
-file_size
- : DECIMAL( KB | MB | GB | TB | '%' )?
- ;
diff --git a/src/grammar/tsql/parser/TSqlLexer.js b/src/grammar/tsql/parser/TSqlLexer.js
deleted file mode 100644
index 94a3171..0000000
--- a/src/grammar/tsql/parser/TSqlLexer.js
+++ /dev/null
@@ -1,8175 +0,0 @@
-// Generated from /Users/ziv/Workspace/dt-sql-parser/src/grammar/tsql/TSqlLexer.g4 by ANTLR 4.8
-// jshint ignore: start
-var antlr4 = require('antlr4');
-
-
-
-var serializedATN = ["\u0003\u608b\ua72a\u8133\ub9ed\u417c\u3be7\u7786\u5964",
- "\u0002\u034a\u276b\b\u0001\u0004\u0002\t\u0002\u0004\u0003\t\u0003\u0004",
- "\u0004\t\u0004\u0004\u0005\t\u0005\u0004\u0006\t\u0006\u0004\u0007\t",
- "\u0007\u0004\b\t\b\u0004\t\t\t\u0004\n\t\n\u0004\u000b\t\u000b\u0004",
- "\f\t\f\u0004\r\t\r\u0004\u000e\t\u000e\u0004\u000f\t\u000f\u0004\u0010",
- "\t\u0010\u0004\u0011\t\u0011\u0004\u0012\t\u0012\u0004\u0013\t\u0013",
- "\u0004\u0014\t\u0014\u0004\u0015\t\u0015\u0004\u0016\t\u0016\u0004\u0017",
- "\t\u0017\u0004\u0018\t\u0018\u0004\u0019\t\u0019\u0004\u001a\t\u001a",
- "\u0004\u001b\t\u001b\u0004\u001c\t\u001c\u0004\u001d\t\u001d\u0004\u001e",
- "\t\u001e\u0004\u001f\t\u001f\u0004 \t \u0004!\t!\u0004\"\t\"\u0004#",
- "\t#\u0004$\t$\u0004%\t%\u0004&\t&\u0004\'\t\'\u0004(\t(\u0004)\t)\u0004",
- "*\t*\u0004+\t+\u0004,\t,\u0004-\t-\u0004.\t.\u0004/\t/\u00040\t0\u0004",
- "1\t1\u00042\t2\u00043\t3\u00044\t4\u00045\t5\u00046\t6\u00047\t7\u0004",
- "8\t8\u00049\t9\u0004:\t:\u0004;\t;\u0004<\t<\u0004=\t=\u0004>\t>\u0004",
- "?\t?\u0004@\t@\u0004A\tA\u0004B\tB\u0004C\tC\u0004D\tD\u0004E\tE\u0004",
- "F\tF\u0004G\tG\u0004H\tH\u0004I\tI\u0004J\tJ\u0004K\tK\u0004L\tL\u0004",
- "M\tM\u0004N\tN\u0004O\tO\u0004P\tP\u0004Q\tQ\u0004R\tR\u0004S\tS\u0004",
- "T\tT\u0004U\tU\u0004V\tV\u0004W\tW\u0004X\tX\u0004Y\tY\u0004Z\tZ\u0004",
- "[\t[\u0004\\\t\\\u0004]\t]\u0004^\t^\u0004_\t_\u0004`\t`\u0004a\ta\u0004",
- "b\tb\u0004c\tc\u0004d\td\u0004e\te\u0004f\tf\u0004g\tg\u0004h\th\u0004",
- "i\ti\u0004j\tj\u0004k\tk\u0004l\tl\u0004m\tm\u0004n\tn\u0004o\to\u0004",
- "p\tp\u0004q\tq\u0004r\tr\u0004s\ts\u0004t\tt\u0004u\tu\u0004v\tv\u0004",
- "w\tw\u0004x\tx\u0004y\ty\u0004z\tz\u0004{\t{\u0004|\t|\u0004}\t}\u0004",
- "~\t~\u0004\u007f\t\u007f\u0004\u0080\t\u0080\u0004\u0081\t\u0081\u0004",
- "\u0082\t\u0082\u0004\u0083\t\u0083\u0004\u0084\t\u0084\u0004\u0085\t",
- "\u0085\u0004\u0086\t\u0086\u0004\u0087\t\u0087\u0004\u0088\t\u0088\u0004",
- "\u0089\t\u0089\u0004\u008a\t\u008a\u0004\u008b\t\u008b\u0004\u008c\t",
- "\u008c\u0004\u008d\t\u008d\u0004\u008e\t\u008e\u0004\u008f\t\u008f\u0004",
- "\u0090\t\u0090\u0004\u0091\t\u0091\u0004\u0092\t\u0092\u0004\u0093\t",
- "\u0093\u0004\u0094\t\u0094\u0004\u0095\t\u0095\u0004\u0096\t\u0096\u0004",
- "\u0097\t\u0097\u0004\u0098\t\u0098\u0004\u0099\t\u0099\u0004\u009a\t",
- "\u009a\u0004\u009b\t\u009b\u0004\u009c\t\u009c\u0004\u009d\t\u009d\u0004",
- "\u009e\t\u009e\u0004\u009f\t\u009f\u0004\u00a0\t\u00a0\u0004\u00a1\t",
- "\u00a1\u0004\u00a2\t\u00a2\u0004\u00a3\t\u00a3\u0004\u00a4\t\u00a4\u0004",
- "\u00a5\t\u00a5\u0004\u00a6\t\u00a6\u0004\u00a7\t\u00a7\u0004\u00a8\t",
- "\u00a8\u0004\u00a9\t\u00a9\u0004\u00aa\t\u00aa\u0004\u00ab\t\u00ab\u0004",
- "\u00ac\t\u00ac\u0004\u00ad\t\u00ad\u0004\u00ae\t\u00ae\u0004\u00af\t",
- "\u00af\u0004\u00b0\t\u00b0\u0004\u00b1\t\u00b1\u0004\u00b2\t\u00b2\u0004",
- "\u00b3\t\u00b3\u0004\u00b4\t\u00b4\u0004\u00b5\t\u00b5\u0004\u00b6\t",
- "\u00b6\u0004\u00b7\t\u00b7\u0004\u00b8\t\u00b8\u0004\u00b9\t\u00b9\u0004",
- "\u00ba\t\u00ba\u0004\u00bb\t\u00bb\u0004\u00bc\t\u00bc\u0004\u00bd\t",
- "\u00bd\u0004\u00be\t\u00be\u0004\u00bf\t\u00bf\u0004\u00c0\t\u00c0\u0004",
- "\u00c1\t\u00c1\u0004\u00c2\t\u00c2\u0004\u00c3\t\u00c3\u0004\u00c4\t",
- "\u00c4\u0004\u00c5\t\u00c5\u0004\u00c6\t\u00c6\u0004\u00c7\t\u00c7\u0004",
- "\u00c8\t\u00c8\u0004\u00c9\t\u00c9\u0004\u00ca\t\u00ca\u0004\u00cb\t",
- "\u00cb\u0004\u00cc\t\u00cc\u0004\u00cd\t\u00cd\u0004\u00ce\t\u00ce\u0004",
- "\u00cf\t\u00cf\u0004\u00d0\t\u00d0\u0004\u00d1\t\u00d1\u0004\u00d2\t",
- "\u00d2\u0004\u00d3\t\u00d3\u0004\u00d4\t\u00d4\u0004\u00d5\t\u00d5\u0004",
- "\u00d6\t\u00d6\u0004\u00d7\t\u00d7\u0004\u00d8\t\u00d8\u0004\u00d9\t",
- "\u00d9\u0004\u00da\t\u00da\u0004\u00db\t\u00db\u0004\u00dc\t\u00dc\u0004",
- "\u00dd\t\u00dd\u0004\u00de\t\u00de\u0004\u00df\t\u00df\u0004\u00e0\t",
- "\u00e0\u0004\u00e1\t\u00e1\u0004\u00e2\t\u00e2\u0004\u00e3\t\u00e3\u0004",
- "\u00e4\t\u00e4\u0004\u00e5\t\u00e5\u0004\u00e6\t\u00e6\u0004\u00e7\t",
- "\u00e7\u0004\u00e8\t\u00e8\u0004\u00e9\t\u00e9\u0004\u00ea\t\u00ea\u0004",
- "\u00eb\t\u00eb\u0004\u00ec\t\u00ec\u0004\u00ed\t\u00ed\u0004\u00ee\t",
- "\u00ee\u0004\u00ef\t\u00ef\u0004\u00f0\t\u00f0\u0004\u00f1\t\u00f1\u0004",
- "\u00f2\t\u00f2\u0004\u00f3\t\u00f3\u0004\u00f4\t\u00f4\u0004\u00f5\t",
- "\u00f5\u0004\u00f6\t\u00f6\u0004\u00f7\t\u00f7\u0004\u00f8\t\u00f8\u0004",
- "\u00f9\t\u00f9\u0004\u00fa\t\u00fa\u0004\u00fb\t\u00fb\u0004\u00fc\t",
- "\u00fc\u0004\u00fd\t\u00fd\u0004\u00fe\t\u00fe\u0004\u00ff\t\u00ff\u0004",
- "\u0100\t\u0100\u0004\u0101\t\u0101\u0004\u0102\t\u0102\u0004\u0103\t",
- "\u0103\u0004\u0104\t\u0104\u0004\u0105\t\u0105\u0004\u0106\t\u0106\u0004",
- "\u0107\t\u0107\u0004\u0108\t\u0108\u0004\u0109\t\u0109\u0004\u010a\t",
- "\u010a\u0004\u010b\t\u010b\u0004\u010c\t\u010c\u0004\u010d\t\u010d\u0004",
- "\u010e\t\u010e\u0004\u010f\t\u010f\u0004\u0110\t\u0110\u0004\u0111\t",
- "\u0111\u0004\u0112\t\u0112\u0004\u0113\t\u0113\u0004\u0114\t\u0114\u0004",
- "\u0115\t\u0115\u0004\u0116\t\u0116\u0004\u0117\t\u0117\u0004\u0118\t",
- "\u0118\u0004\u0119\t\u0119\u0004\u011a\t\u011a\u0004\u011b\t\u011b\u0004",
- "\u011c\t\u011c\u0004\u011d\t\u011d\u0004\u011e\t\u011e\u0004\u011f\t",
- "\u011f\u0004\u0120\t\u0120\u0004\u0121\t\u0121\u0004\u0122\t\u0122\u0004",
- "\u0123\t\u0123\u0004\u0124\t\u0124\u0004\u0125\t\u0125\u0004\u0126\t",
- "\u0126\u0004\u0127\t\u0127\u0004\u0128\t\u0128\u0004\u0129\t\u0129\u0004",
- "\u012a\t\u012a\u0004\u012b\t\u012b\u0004\u012c\t\u012c\u0004\u012d\t",
- "\u012d\u0004\u012e\t\u012e\u0004\u012f\t\u012f\u0004\u0130\t\u0130\u0004",
- "\u0131\t\u0131\u0004\u0132\t\u0132\u0004\u0133\t\u0133\u0004\u0134\t",
- "\u0134\u0004\u0135\t\u0135\u0004\u0136\t\u0136\u0004\u0137\t\u0137\u0004",
- "\u0138\t\u0138\u0004\u0139\t\u0139\u0004\u013a\t\u013a\u0004\u013b\t",
- "\u013b\u0004\u013c\t\u013c\u0004\u013d\t\u013d\u0004\u013e\t\u013e\u0004",
- "\u013f\t\u013f\u0004\u0140\t\u0140\u0004\u0141\t\u0141\u0004\u0142\t",
- "\u0142\u0004\u0143\t\u0143\u0004\u0144\t\u0144\u0004\u0145\t\u0145\u0004",
- "\u0146\t\u0146\u0004\u0147\t\u0147\u0004\u0148\t\u0148\u0004\u0149\t",
- "\u0149\u0004\u014a\t\u014a\u0004\u014b\t\u014b\u0004\u014c\t\u014c\u0004",
- "\u014d\t\u014d\u0004\u014e\t\u014e\u0004\u014f\t\u014f\u0004\u0150\t",
- "\u0150\u0004\u0151\t\u0151\u0004\u0152\t\u0152\u0004\u0153\t\u0153\u0004",
- "\u0154\t\u0154\u0004\u0155\t\u0155\u0004\u0156\t\u0156\u0004\u0157\t",
- "\u0157\u0004\u0158\t\u0158\u0004\u0159\t\u0159\u0004\u015a\t\u015a\u0004",
- "\u015b\t\u015b\u0004\u015c\t\u015c\u0004\u015d\t\u015d\u0004\u015e\t",
- "\u015e\u0004\u015f\t\u015f\u0004\u0160\t\u0160\u0004\u0161\t\u0161\u0004",
- "\u0162\t\u0162\u0004\u0163\t\u0163\u0004\u0164\t\u0164\u0004\u0165\t",
- "\u0165\u0004\u0166\t\u0166\u0004\u0167\t\u0167\u0004\u0168\t\u0168\u0004",
- "\u0169\t\u0169\u0004\u016a\t\u016a\u0004\u016b\t\u016b\u0004\u016c\t",
- "\u016c\u0004\u016d\t\u016d\u0004\u016e\t\u016e\u0004\u016f\t\u016f\u0004",
- "\u0170\t\u0170\u0004\u0171\t\u0171\u0004\u0172\t\u0172\u0004\u0173\t",
- "\u0173\u0004\u0174\t\u0174\u0004\u0175\t\u0175\u0004\u0176\t\u0176\u0004",
- "\u0177\t\u0177\u0004\u0178\t\u0178\u0004\u0179\t\u0179\u0004\u017a\t",
- "\u017a\u0004\u017b\t\u017b\u0004\u017c\t\u017c\u0004\u017d\t\u017d\u0004",
- "\u017e\t\u017e\u0004\u017f\t\u017f\u0004\u0180\t\u0180\u0004\u0181\t",
- "\u0181\u0004\u0182\t\u0182\u0004\u0183\t\u0183\u0004\u0184\t\u0184\u0004",
- "\u0185\t\u0185\u0004\u0186\t\u0186\u0004\u0187\t\u0187\u0004\u0188\t",
- "\u0188\u0004\u0189\t\u0189\u0004\u018a\t\u018a\u0004\u018b\t\u018b\u0004",
- "\u018c\t\u018c\u0004\u018d\t\u018d\u0004\u018e\t\u018e\u0004\u018f\t",
- "\u018f\u0004\u0190\t\u0190\u0004\u0191\t\u0191\u0004\u0192\t\u0192\u0004",
- "\u0193\t\u0193\u0004\u0194\t\u0194\u0004\u0195\t\u0195\u0004\u0196\t",
- "\u0196\u0004\u0197\t\u0197\u0004\u0198\t\u0198\u0004\u0199\t\u0199\u0004",
- "\u019a\t\u019a\u0004\u019b\t\u019b\u0004\u019c\t\u019c\u0004\u019d\t",
- "\u019d\u0004\u019e\t\u019e\u0004\u019f\t\u019f\u0004\u01a0\t\u01a0\u0004",
- "\u01a1\t\u01a1\u0004\u01a2\t\u01a2\u0004\u01a3\t\u01a3\u0004\u01a4\t",
- "\u01a4\u0004\u01a5\t\u01a5\u0004\u01a6\t\u01a6\u0004\u01a7\t\u01a7\u0004",
- "\u01a8\t\u01a8\u0004\u01a9\t\u01a9\u0004\u01aa\t\u01aa\u0004\u01ab\t",
- "\u01ab\u0004\u01ac\t\u01ac\u0004\u01ad\t\u01ad\u0004\u01ae\t\u01ae\u0004",
- "\u01af\t\u01af\u0004\u01b0\t\u01b0\u0004\u01b1\t\u01b1\u0004\u01b2\t",
- "\u01b2\u0004\u01b3\t\u01b3\u0004\u01b4\t\u01b4\u0004\u01b5\t\u01b5\u0004",
- "\u01b6\t\u01b6\u0004\u01b7\t\u01b7\u0004\u01b8\t\u01b8\u0004\u01b9\t",
- "\u01b9\u0004\u01ba\t\u01ba\u0004\u01bb\t\u01bb\u0004\u01bc\t\u01bc\u0004",
- "\u01bd\t\u01bd\u0004\u01be\t\u01be\u0004\u01bf\t\u01bf\u0004\u01c0\t",
- "\u01c0\u0004\u01c1\t\u01c1\u0004\u01c2\t\u01c2\u0004\u01c3\t\u01c3\u0004",
- "\u01c4\t\u01c4\u0004\u01c5\t\u01c5\u0004\u01c6\t\u01c6\u0004\u01c7\t",
- "\u01c7\u0004\u01c8\t\u01c8\u0004\u01c9\t\u01c9\u0004\u01ca\t\u01ca\u0004",
- "\u01cb\t\u01cb\u0004\u01cc\t\u01cc\u0004\u01cd\t\u01cd\u0004\u01ce\t",
- "\u01ce\u0004\u01cf\t\u01cf\u0004\u01d0\t\u01d0\u0004\u01d1\t\u01d1\u0004",
- "\u01d2\t\u01d2\u0004\u01d3\t\u01d3\u0004\u01d4\t\u01d4\u0004\u01d5\t",
- "\u01d5\u0004\u01d6\t\u01d6\u0004\u01d7\t\u01d7\u0004\u01d8\t\u01d8\u0004",
- "\u01d9\t\u01d9\u0004\u01da\t\u01da\u0004\u01db\t\u01db\u0004\u01dc\t",
- "\u01dc\u0004\u01dd\t\u01dd\u0004\u01de\t\u01de\u0004\u01df\t\u01df\u0004",
- "\u01e0\t\u01e0\u0004\u01e1\t\u01e1\u0004\u01e2\t\u01e2\u0004\u01e3\t",
- "\u01e3\u0004\u01e4\t\u01e4\u0004\u01e5\t\u01e5\u0004\u01e6\t\u01e6\u0004",
- "\u01e7\t\u01e7\u0004\u01e8\t\u01e8\u0004\u01e9\t\u01e9\u0004\u01ea\t",
- "\u01ea\u0004\u01eb\t\u01eb\u0004\u01ec\t\u01ec\u0004\u01ed\t\u01ed\u0004",
- "\u01ee\t\u01ee\u0004\u01ef\t\u01ef\u0004\u01f0\t\u01f0\u0004\u01f1\t",
- "\u01f1\u0004\u01f2\t\u01f2\u0004\u01f3\t\u01f3\u0004\u01f4\t\u01f4\u0004",
- "\u01f5\t\u01f5\u0004\u01f6\t\u01f6\u0004\u01f7\t\u01f7\u0004\u01f8\t",
- "\u01f8\u0004\u01f9\t\u01f9\u0004\u01fa\t\u01fa\u0004\u01fb\t\u01fb\u0004",
- "\u01fc\t\u01fc\u0004\u01fd\t\u01fd\u0004\u01fe\t\u01fe\u0004\u01ff\t",
- "\u01ff\u0004\u0200\t\u0200\u0004\u0201\t\u0201\u0004\u0202\t\u0202\u0004",
- "\u0203\t\u0203\u0004\u0204\t\u0204\u0004\u0205\t\u0205\u0004\u0206\t",
- "\u0206\u0004\u0207\t\u0207\u0004\u0208\t\u0208\u0004\u0209\t\u0209\u0004",
- "\u020a\t\u020a\u0004\u020b\t\u020b\u0004\u020c\t\u020c\u0004\u020d\t",
- "\u020d\u0004\u020e\t\u020e\u0004\u020f\t\u020f\u0004\u0210\t\u0210\u0004",
- "\u0211\t\u0211\u0004\u0212\t\u0212\u0004\u0213\t\u0213\u0004\u0214\t",
- "\u0214\u0004\u0215\t\u0215\u0004\u0216\t\u0216\u0004\u0217\t\u0217\u0004",
- "\u0218\t\u0218\u0004\u0219\t\u0219\u0004\u021a\t\u021a\u0004\u021b\t",
- "\u021b\u0004\u021c\t\u021c\u0004\u021d\t\u021d\u0004\u021e\t\u021e\u0004",
- "\u021f\t\u021f\u0004\u0220\t\u0220\u0004\u0221\t\u0221\u0004\u0222\t",
- "\u0222\u0004\u0223\t\u0223\u0004\u0224\t\u0224\u0004\u0225\t\u0225\u0004",
- "\u0226\t\u0226\u0004\u0227\t\u0227\u0004\u0228\t\u0228\u0004\u0229\t",
- "\u0229\u0004\u022a\t\u022a\u0004\u022b\t\u022b\u0004\u022c\t\u022c\u0004",
- "\u022d\t\u022d\u0004\u022e\t\u022e\u0004\u022f\t\u022f\u0004\u0230\t",
- "\u0230\u0004\u0231\t\u0231\u0004\u0232\t\u0232\u0004\u0233\t\u0233\u0004",
- "\u0234\t\u0234\u0004\u0235\t\u0235\u0004\u0236\t\u0236\u0004\u0237\t",
- "\u0237\u0004\u0238\t\u0238\u0004\u0239\t\u0239\u0004\u023a\t\u023a\u0004",
- "\u023b\t\u023b\u0004\u023c\t\u023c\u0004\u023d\t\u023d\u0004\u023e\t",
- "\u023e\u0004\u023f\t\u023f\u0004\u0240\t\u0240\u0004\u0241\t\u0241\u0004",
- "\u0242\t\u0242\u0004\u0243\t\u0243\u0004\u0244\t\u0244\u0004\u0245\t",
- "\u0245\u0004\u0246\t\u0246\u0004\u0247\t\u0247\u0004\u0248\t\u0248\u0004",
- "\u0249\t\u0249\u0004\u024a\t\u024a\u0004\u024b\t\u024b\u0004\u024c\t",
- "\u024c\u0004\u024d\t\u024d\u0004\u024e\t\u024e\u0004\u024f\t\u024f\u0004",
- "\u0250\t\u0250\u0004\u0251\t\u0251\u0004\u0252\t\u0252\u0004\u0253\t",
- "\u0253\u0004\u0254\t\u0254\u0004\u0255\t\u0255\u0004\u0256\t\u0256\u0004",
- "\u0257\t\u0257\u0004\u0258\t\u0258\u0004\u0259\t\u0259\u0004\u025a\t",
- "\u025a\u0004\u025b\t\u025b\u0004\u025c\t\u025c\u0004\u025d\t\u025d\u0004",
- "\u025e\t\u025e\u0004\u025f\t\u025f\u0004\u0260\t\u0260\u0004\u0261\t",
- "\u0261\u0004\u0262\t\u0262\u0004\u0263\t\u0263\u0004\u0264\t\u0264\u0004",
- "\u0265\t\u0265\u0004\u0266\t\u0266\u0004\u0267\t\u0267\u0004\u0268\t",
- "\u0268\u0004\u0269\t\u0269\u0004\u026a\t\u026a\u0004\u026b\t\u026b\u0004",
- "\u026c\t\u026c\u0004\u026d\t\u026d\u0004\u026e\t\u026e\u0004\u026f\t",
- "\u026f\u0004\u0270\t\u0270\u0004\u0271\t\u0271\u0004\u0272\t\u0272\u0004",
- "\u0273\t\u0273\u0004\u0274\t\u0274\u0004\u0275\t\u0275\u0004\u0276\t",
- "\u0276\u0004\u0277\t\u0277\u0004\u0278\t\u0278\u0004\u0279\t\u0279\u0004",
- "\u027a\t\u027a\u0004\u027b\t\u027b\u0004\u027c\t\u027c\u0004\u027d\t",
- "\u027d\u0004\u027e\t\u027e\u0004\u027f\t\u027f\u0004\u0280\t\u0280\u0004",
- "\u0281\t\u0281\u0004\u0282\t\u0282\u0004\u0283\t\u0283\u0004\u0284\t",
- "\u0284\u0004\u0285\t\u0285\u0004\u0286\t\u0286\u0004\u0287\t\u0287\u0004",
- "\u0288\t\u0288\u0004\u0289\t\u0289\u0004\u028a\t\u028a\u0004\u028b\t",
- "\u028b\u0004\u028c\t\u028c\u0004\u028d\t\u028d\u0004\u028e\t\u028e\u0004",
- "\u028f\t\u028f\u0004\u0290\t\u0290\u0004\u0291\t\u0291\u0004\u0292\t",
- "\u0292\u0004\u0293\t\u0293\u0004\u0294\t\u0294\u0004\u0295\t\u0295\u0004",
- "\u0296\t\u0296\u0004\u0297\t\u0297\u0004\u0298\t\u0298\u0004\u0299\t",
- "\u0299\u0004\u029a\t\u029a\u0004\u029b\t\u029b\u0004\u029c\t\u029c\u0004",
- "\u029d\t\u029d\u0004\u029e\t\u029e\u0004\u029f\t\u029f\u0004\u02a0\t",
- "\u02a0\u0004\u02a1\t\u02a1\u0004\u02a2\t\u02a2\u0004\u02a3\t\u02a3\u0004",
- "\u02a4\t\u02a4\u0004\u02a5\t\u02a5\u0004\u02a6\t\u02a6\u0004\u02a7\t",
- "\u02a7\u0004\u02a8\t\u02a8\u0004\u02a9\t\u02a9\u0004\u02aa\t\u02aa\u0004",
- "\u02ab\t\u02ab\u0004\u02ac\t\u02ac\u0004\u02ad\t\u02ad\u0004\u02ae\t",
- "\u02ae\u0004\u02af\t\u02af\u0004\u02b0\t\u02b0\u0004\u02b1\t\u02b1\u0004",
- "\u02b2\t\u02b2\u0004\u02b3\t\u02b3\u0004\u02b4\t\u02b4\u0004\u02b5\t",
- "\u02b5\u0004\u02b6\t\u02b6\u0004\u02b7\t\u02b7\u0004\u02b8\t\u02b8\u0004",
- "\u02b9\t\u02b9\u0004\u02ba\t\u02ba\u0004\u02bb\t\u02bb\u0004\u02bc\t",
- "\u02bc\u0004\u02bd\t\u02bd\u0004\u02be\t\u02be\u0004\u02bf\t\u02bf\u0004",
- "\u02c0\t\u02c0\u0004\u02c1\t\u02c1\u0004\u02c2\t\u02c2\u0004\u02c3\t",
- "\u02c3\u0004\u02c4\t\u02c4\u0004\u02c5\t\u02c5\u0004\u02c6\t\u02c6\u0004",
- "\u02c7\t\u02c7\u0004\u02c8\t\u02c8\u0004\u02c9\t\u02c9\u0004\u02ca\t",
- "\u02ca\u0004\u02cb\t\u02cb\u0004\u02cc\t\u02cc\u0004\u02cd\t\u02cd\u0004",
- "\u02ce\t\u02ce\u0004\u02cf\t\u02cf\u0004\u02d0\t\u02d0\u0004\u02d1\t",
- "\u02d1\u0004\u02d2\t\u02d2\u0004\u02d3\t\u02d3\u0004\u02d4\t\u02d4\u0004",
- "\u02d5\t\u02d5\u0004\u02d6\t\u02d6\u0004\u02d7\t\u02d7\u0004\u02d8\t",
- "\u02d8\u0004\u02d9\t\u02d9\u0004\u02da\t\u02da\u0004\u02db\t\u02db\u0004",
- "\u02dc\t\u02dc\u0004\u02dd\t\u02dd\u0004\u02de\t\u02de\u0004\u02df\t",
- "\u02df\u0004\u02e0\t\u02e0\u0004\u02e1\t\u02e1\u0004\u02e2\t\u02e2\u0004",
- "\u02e3\t\u02e3\u0004\u02e4\t\u02e4\u0004\u02e5\t\u02e5\u0004\u02e6\t",
- "\u02e6\u0004\u02e7\t\u02e7\u0004\u02e8\t\u02e8\u0004\u02e9\t\u02e9\u0004",
- "\u02ea\t\u02ea\u0004\u02eb\t\u02eb\u0004\u02ec\t\u02ec\u0004\u02ed\t",
- "\u02ed\u0004\u02ee\t\u02ee\u0004\u02ef\t\u02ef\u0004\u02f0\t\u02f0\u0004",
- "\u02f1\t\u02f1\u0004\u02f2\t\u02f2\u0004\u02f3\t\u02f3\u0004\u02f4\t",
- "\u02f4\u0004\u02f5\t\u02f5\u0004\u02f6\t\u02f6\u0004\u02f7\t\u02f7\u0004",
- "\u02f8\t\u02f8\u0004\u02f9\t\u02f9\u0004\u02fa\t\u02fa\u0004\u02fb\t",
- "\u02fb\u0004\u02fc\t\u02fc\u0004\u02fd\t\u02fd\u0004\u02fe\t\u02fe\u0004",
- "\u02ff\t\u02ff\u0004\u0300\t\u0300\u0004\u0301\t\u0301\u0004\u0302\t",
- "\u0302\u0004\u0303\t\u0303\u0004\u0304\t\u0304\u0004\u0305\t\u0305\u0004",
- "\u0306\t\u0306\u0004\u0307\t\u0307\u0004\u0308\t\u0308\u0004\u0309\t",
- "\u0309\u0004\u030a\t\u030a\u0004\u030b\t\u030b\u0004\u030c\t\u030c\u0004",
- "\u030d\t\u030d\u0004\u030e\t\u030e\u0004\u030f\t\u030f\u0004\u0310\t",
- "\u0310\u0004\u0311\t\u0311\u0004\u0312\t\u0312\u0004\u0313\t\u0313\u0004",
- "\u0314\t\u0314\u0004\u0315\t\u0315\u0004\u0316\t\u0316\u0004\u0317\t",
- "\u0317\u0004\u0318\t\u0318\u0004\u0319\t\u0319\u0004\u031a\t\u031a\u0004",
- "\u031b\t\u031b\u0004\u031c\t\u031c\u0004\u031d\t\u031d\u0004\u031e\t",
- "\u031e\u0004\u031f\t\u031f\u0004\u0320\t\u0320\u0004\u0321\t\u0321\u0004",
- "\u0322\t\u0322\u0004\u0323\t\u0323\u0004\u0324\t\u0324\u0004\u0325\t",
- "\u0325\u0004\u0326\t\u0326\u0004\u0327\t\u0327\u0004\u0328\t\u0328\u0004",
- "\u0329\t\u0329\u0004\u032a\t\u032a\u0004\u032b\t\u032b\u0004\u032c\t",
- "\u032c\u0004\u032d\t\u032d\u0004\u032e\t\u032e\u0004\u032f\t\u032f\u0004",
- "\u0330\t\u0330\u0004\u0331\t\u0331\u0004\u0332\t\u0332\u0004\u0333\t",
- "\u0333\u0004\u0334\t\u0334\u0004\u0335\t\u0335\u0004\u0336\t\u0336\u0004",
- "\u0337\t\u0337\u0004\u0338\t\u0338\u0004\u0339\t\u0339\u0004\u033a\t",
- "\u033a\u0004\u033b\t\u033b\u0004\u033c\t\u033c\u0004\u033d\t\u033d\u0004",
- "\u033e\t\u033e\u0004\u033f\t\u033f\u0004\u0340\t\u0340\u0004\u0341\t",
- "\u0341\u0004\u0342\t\u0342\u0004\u0343\t\u0343\u0004\u0344\t\u0344\u0004",
- "\u0345\t\u0345\u0004\u0346\t\u0346\u0004\u0347\t\u0347\u0004\u0348\t",
- "\u0348\u0004\u0349\t\u0349\u0004\u034a\t\u034a\u0004\u034b\t\u034b\u0004",
- "\u034c\t\u034c\u0004\u034d\t\u034d\u0004\u034e\t\u034e\u0004\u034f\t",
- "\u034f\u0003\u0002\u0003\u0002\u0003\u0002\u0003\u0002\u0003\u0002\u0003",
- "\u0002\u0003\u0002\u0003\u0003\u0003\u0003\u0003\u0003\u0003\u0003\u0003",
- "\u0004\u0003\u0004\u0003\u0004\u0003\u0004\u0003\u0005\u0003\u0005\u0003",
- "\u0005\u0003\u0005\u0003\u0006\u0003\u0006\u0003\u0006\u0003\u0006\u0003",
- "\u0006\u0003\u0006\u0003\u0006\u0003\u0006\u0003\u0006\u0003\u0006\u0003",
- "\u0006\u0003\u0006\u0003\u0006\u0003\u0006\u0003\u0006\u0003\u0006\u0003",
- "\u0006\u0003\u0006\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003",
- "\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003",
- "\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003",
- "\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003",
- "\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\b\u0003\b\u0003\b\u0003",
- "\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003",
- "\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003",
- "\b\u0003\b\u0003\b\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003",
- "\n\u0003\n\u0003\n\u0003\n\u0003\u000b\u0003\u000b\u0003\u000b\u0003",
- "\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003",
- "\u000b\u0003\f\u0003\f\u0003\f\u0003\f\u0003\r\u0003\r\u0003\r\u0003",
- "\r\u0003\r\u0003\r\u0003\r\u0003\u000e\u0003\u000e\u0003\u000e\u0003",
- "\u000e\u0003\u000e\u0003\u000e\u0003\u000e\u0003\u000e\u0003\u000e\u0003",
- "\u000e\u0003\u000e\u0003\u000e\u0003\u000f\u0003\u000f\u0003\u000f\u0003",
- "\u0010\u0003\u0010\u0003\u0010\u0003\u0010\u0003\u0011\u0003\u0011\u0003",
- "\u0011\u0003\u0011\u0003\u0011\u0003\u0011\u0003\u0011\u0003\u0011\u0003",
- "\u0011\u0003\u0011\u0003\u0011\u0003\u0012\u0003\u0012\u0003\u0012\u0003",
- "\u0012\u0003\u0012\u0003\u0012\u0003\u0012\u0003\u0012\u0003\u0012\u0003",
- "\u0012\u0003\u0012\u0003\u0012\u0003\u0012\u0003\u0012\u0003\u0012\u0003",
- "\u0012\u0003\u0012\u0003\u0012\u0003\u0012\u0003\u0012\u0003\u0013\u0003",
- "\u0013\u0003\u0013\u0003\u0013\u0003\u0013\u0003\u0013\u0003\u0013\u0003",
- "\u0013\u0003\u0013\u0003\u0013\u0003\u0013\u0003\u0013\u0003\u0013\u0003",
- "\u0013\u0003\u0014\u0003\u0014\u0003\u0014\u0003\u0014\u0003\u0014\u0003",
- "\u0014\u0003\u0014\u0003\u0014\u0003\u0014\u0003\u0014\u0003\u0014\u0003",
- "\u0014\u0003\u0014\u0003\u0014\u0003\u0014\u0003\u0015\u0003\u0015\u0003",
- "\u0015\u0003\u0015\u0003\u0015\u0003\u0015\u0003\u0015\u0003\u0015\u0003",
- "\u0015\u0003\u0015\u0003\u0015\u0003\u0015\u0003\u0015\u0003\u0015\u0003",
- "\u0015\u0003\u0015\u0003\u0015\u0003\u0015\u0003\u0015\u0003\u0015\u0003",
- "\u0015\u0003\u0015\u0003\u0015\u0003\u0015\u0003\u0015\u0003\u0015\u0003",
- "\u0015\u0003\u0015\u0003\u0016\u0003\u0016\u0003\u0016\u0003\u0016\u0003",
- "\u0016\u0003\u0016\u0003\u0016\u0003\u0016\u0003\u0016\u0003\u0016\u0003",
- "\u0017\u0003\u0017\u0003\u0017\u0003\u0017\u0003\u0017\u0003\u0017\u0003",
- "\u0017\u0003\u0017\u0003\u0017\u0003\u0017\u0003\u0017\u0003\u0017\u0003",
- "\u0017\u0003\u0017\u0003\u0017\u0003\u0017\u0003\u0017\u0003\u0017\u0003",
- "\u0018\u0003\u0018\u0003\u0019\u0003\u0019\u0003\u0019\u0003\u0019\u0003",
- "\u0019\u0003\u0019\u0003\u0019\u0003\u001a\u0003\u001a\u0003\u001a\u0003",
- "\u001a\u0003\u001a\u0003\u001a\u0003\u001a\u0003\u001b\u0003\u001b\u0003",
- "\u001b\u0003\u001b\u0003\u001b\u0003\u001b\u0003\u001c\u0003\u001c\u0003",
- "\u001c\u0003\u001c\u0003\u001c\u0003\u001c\u0003\u001c\u0003\u001c\u0003",
- "\u001d\u0003\u001d\u0003\u001d\u0003\u001d\u0003\u001d\u0003\u001d\u0003",
- "\u001e\u0003\u001e\u0003\u001e\u0003\u001e\u0003\u001e\u0003\u001e\u0003",
- "\u001e\u0003\u001e\u0003\u001e\u0003\u001e\u0003\u001f\u0003\u001f\u0003",
- "\u001f\u0003\u001f\u0003\u001f\u0003\u001f\u0003\u001f\u0003\u001f\u0003",
- "\u001f\u0003\u001f\u0003\u001f\u0003\u001f\u0003\u001f\u0003\u001f\u0003",
- "\u001f\u0003\u001f\u0003\u001f\u0003\u001f\u0003\u001f\u0003 \u0003",
- " \u0003 \u0003 \u0003 \u0003 \u0003!\u0003!\u0003!\u0003!\u0003!\u0003",
- "!\u0003!\u0003\"\u0003\"\u0003\"\u0003\"\u0003\"\u0003\"\u0003\"\u0003",
- "#\u0003#\u0003#\u0003#\u0003#\u0003#\u0003#\u0003#\u0003#\u0003#\u0003",
- "#\u0003#\u0003$\u0003$\u0003$\u0003$\u0003$\u0003%\u0003%\u0003%\u0003",
- "&\u0003&\u0003&\u0003&\u0003&\u0003&\u0003\'\u0003\'\u0003\'\u0003\'",
- "\u0003\'\u0003\'\u0003\'\u0003(\u0003(\u0003(\u0003(\u0003(\u0003(\u0003",
- "(\u0003(\u0003)\u0003)\u0003)\u0003)\u0003)\u0003*\u0003*\u0003*\u0003",
- "*\u0003*\u0003*\u0003*\u0003*\u0003*\u0003*\u0003*\u0003*\u0003+\u0003",
- "+\u0003+\u0003+\u0003+\u0003+\u0003+\u0003+\u0003+\u0003+\u0003+\u0003",
- "+\u0003,\u0003,\u0003,\u0003,\u0003,\u0003,\u0003,\u0003,\u0003-\u0003",
- "-\u0003-\u0003-\u0003-\u0003-\u0003.\u0003.\u0003.\u0003.\u0003.\u0003",
- ".\u0003.\u0003.\u0003.\u0003.\u0003.\u0003/\u0003/\u0003/\u0003/\u0003",
- "/\u0003/\u0003/\u0003/\u0003/\u0003/\u0003/\u0003/\u0003/\u00030\u0003",
- "0\u00030\u00030\u00030\u00030\u00030\u00030\u00030\u00030\u00030\u0003",
- "0\u00030\u00030\u00030\u00030\u00030\u00031\u00031\u00031\u00031\u0003",
- "1\u00031\u00031\u00031\u00031\u00031\u00031\u00031\u00031\u00031\u0003",
- "1\u00031\u00031\u00031\u00031\u00031\u00032\u00032\u00032\u00032\u0003",
- "2\u00032\u00033\u00033\u00033\u00033\u00033\u00033\u00033\u00033\u0003",
- "4\u00034\u00034\u00034\u00034\u00034\u00034\u00034\u00034\u00034\u0003",
- "5\u00035\u00035\u00035\u00035\u00035\u00035\u00035\u00035\u00036\u0003",
- "6\u00036\u00036\u00036\u00036\u00036\u00036\u00037\u00037\u00037\u0003",
- "7\u00037\u00037\u00037\u00038\u00038\u00038\u00038\u00038\u00038\u0003",
- "8\u00038\u00038\u00038\u00038\u00038\u00039\u00039\u00039\u00039\u0003",
- "9\u00039\u00039\u0003:\u0003:\u0003:\u0003:\u0003:\u0003:\u0003:\u0003",
- ":\u0003;\u0003;\u0003;\u0003;\u0003;\u0003;\u0003;\u0003;\u0003;\u0003",
- ";\u0003;\u0003;\u0003;\u0003;\u0003<\u0003<\u0003<\u0003<\u0003<\u0003",
- "<\u0003<\u0003<\u0003<\u0003<\u0003<\u0003=\u0003=\u0003=\u0003=\u0003",
- "=\u0003=\u0003=\u0003=\u0003=\u0003=\u0003=\u0003=\u0003>\u0003>\u0003",
- ">\u0003>\u0003>\u0003>\u0003>\u0003>\u0003>\u0003?\u0003?\u0003?\u0003",
- "?\u0003?\u0003?\u0003?\u0003?\u0003?\u0003?\u0003?\u0003?\u0003?\u0003",
- "?\u0003@\u0003@\u0003@\u0003@\u0003@\u0003@\u0003@\u0003@\u0003A\u0003",
- "A\u0003A\u0003A\u0003A\u0003A\u0003A\u0003A\u0003A\u0003B\u0003B\u0003",
- "B\u0003B\u0003B\u0003B\u0003B\u0003B\u0003B\u0003B\u0003B\u0003B\u0003",
- "B\u0003B\u0003B\u0003B\u0003B\u0003B\u0003B\u0003B\u0003B\u0003C\u0003",
- "C\u0003C\u0003C\u0003C\u0003C\u0003C\u0003C\u0003C\u0003D\u0003D\u0003",
- "D\u0003D\u0003D\u0003D\u0003D\u0003D\u0003D\u0003D\u0003D\u0003D\u0003",
- "D\u0003D\u0003E\u0003E\u0003E\u0003E\u0003E\u0003E\u0003E\u0003E\u0003",
- "E\u0003E\u0003E\u0003E\u0003E\u0003F\u0003F\u0003F\u0003F\u0005F\u0958",
- "\nF\u0003F\u0003F\u0003F\u0003F\u0003F\u0003F\u0003F\u0003F\u0003G\u0003",
- "G\u0003G\u0003G\u0003G\u0003G\u0003G\u0003G\u0003G\u0003G\u0003H\u0003",
- "H\u0003H\u0003H\u0003H\u0003H\u0003H\u0003I\u0003I\u0003I\u0003I\u0003",
- "I\u0003I\u0003J\u0003J\u0003J\u0003J\u0003J\u0003J\u0003J\u0003J\u0003",
- "K\u0003K\u0003K\u0003K\u0003K\u0003K\u0003K\u0003K\u0003K\u0003K\u0003",
- "K\u0003K\u0003K\u0003L\u0003L\u0003L\u0003L\u0003L\u0003L\u0003L\u0003",
- "L\u0003L\u0003L\u0003L\u0003L\u0003L\u0003M\u0003M\u0003M\u0003M\u0003",
- "M\u0003M\u0003M\u0003M\u0003M\u0003M\u0003M\u0003M\u0003M\u0003M\u0003",
- "M\u0003M\u0003M\u0003M\u0003N\u0003N\u0003N\u0003N\u0003N\u0003N\u0003",
- "N\u0003N\u0003N\u0003N\u0003N\u0003N\u0003N\u0003O\u0003O\u0003O\u0003",
- "O\u0003O\u0003O\u0003O\u0003P\u0003P\u0003P\u0003P\u0003P\u0003P\u0003",
- "Q\u0003Q\u0003Q\u0003Q\u0003Q\u0003Q\u0003Q\u0003Q\u0003Q\u0003Q\u0003",
- "Q\u0003Q\u0003Q\u0003Q\u0003Q\u0003Q\u0003Q\u0003R\u0003R\u0003R\u0003",
- "R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003S\u0003",
- "S\u0003S\u0003S\u0003S\u0003S\u0003S\u0003S\u0003S\u0003T\u0003T\u0003",
- "T\u0003T\u0003T\u0003T\u0003T\u0003T\u0003T\u0003T\u0003T\u0003T\u0003",
- "T\u0003T\u0003T\u0003T\u0003T\u0003T\u0003T\u0003U\u0003U\u0003U\u0003",
- "U\u0003U\u0003V\u0003V\u0003V\u0003V\u0003V\u0003V\u0003V\u0003V\u0003",
- "V\u0003V\u0003V\u0003W\u0003W\u0003W\u0003W\u0003W\u0003W\u0003W\u0003",
- "W\u0003X\u0003X\u0003X\u0003X\u0003X\u0003X\u0003X\u0003X\u0003Y\u0003",
- "Y\u0003Y\u0003Y\u0003Y\u0003Y\u0003Y\u0003Y\u0003Y\u0003Y\u0003Y\u0003",
- "Y\u0003Y\u0003Y\u0003Y\u0003Y\u0003Y\u0003Z\u0003Z\u0003Z\u0003Z\u0003",
- "Z\u0003Z\u0003Z\u0003Z\u0003Z\u0003Z\u0003Z\u0003Z\u0003Z\u0003Z\u0003",
- "Z\u0003[\u0003[\u0003[\u0003[\u0003[\u0003[\u0003[\u0003\\\u0003\\\u0003",
- "\\\u0003\\\u0003\\\u0003]\u0003]\u0003]\u0003]\u0003]\u0003^\u0003^",
- "\u0003^\u0003^\u0003^\u0003^\u0003^\u0003^\u0003^\u0003^\u0003^\u0003",
- "^\u0003_\u0003_\u0003_\u0003_\u0003_\u0003_\u0003_\u0003_\u0003_\u0003",
- "_\u0003_\u0003_\u0003_\u0003`\u0003`\u0003`\u0003`\u0003`\u0003a\u0003",
- "a\u0003a\u0003a\u0003a\u0003a\u0003a\u0003a\u0003a\u0003b\u0003b\u0003",
- "b\u0003b\u0003b\u0003b\u0003b\u0003b\u0003b\u0003b\u0003b\u0003b\u0003",
- "c\u0003c\u0003c\u0003c\u0003c\u0003c\u0003c\u0003d\u0003d\u0003d\u0003",
- "e\u0003e\u0003e\u0003f\u0003f\u0003f\u0003f\u0003f\u0003g\u0003g\u0003",
- "g\u0003g\u0003g\u0003g\u0003g\u0003g\u0003g\u0003g\u0003g\u0003g\u0003",
- "h\u0003h\u0003h\u0003h\u0003h\u0003i\u0003i\u0003i\u0003i\u0003i\u0003",
- "j\u0003j\u0003j\u0003j\u0003j\u0003j\u0003j\u0003j\u0003k\u0003k\u0003",
- "k\u0003k\u0003l\u0003l\u0003l\u0003l\u0003l\u0003l\u0003l\u0003l\u0003",
- "l\u0003m\u0003m\u0003m\u0003m\u0003m\u0003m\u0003m\u0003n\u0003n\u0003",
- "n\u0003n\u0003n\u0003n\u0003n\u0003o\u0003o\u0003o\u0003o\u0003o\u0003",
- "o\u0003p\u0003p\u0003p\u0003p\u0003p\u0003p\u0003q\u0003q\u0003q\u0003",
- "q\u0003q\u0003q\u0003q\u0003q\u0003q\u0003q\u0003q\u0003q\u0003q\u0003",
- "r\u0003r\u0003r\u0003r\u0003r\u0003r\u0003r\u0003r\u0003r\u0003r\u0003",
- "r\u0003r\u0003r\u0003r\u0003r\u0003r\u0003r\u0003r\u0003r\u0003r\u0003",
- "r\u0003s\u0003s\u0003s\u0003s\u0003s\u0003s\u0003s\u0003t\u0003t\u0003",
- "t\u0003t\u0003t\u0003t\u0003t\u0003t\u0003t\u0003t\u0003t\u0003t\u0003",
- "t\u0003t\u0003t\u0003t\u0003u\u0003u\u0003u\u0003u\u0003u\u0003u\u0003",
- "u\u0003u\u0005u\u0b1c\nu\u0003v\u0003v\u0003v\u0003v\u0003v\u0003v\u0003",
- "v\u0003w\u0003w\u0003w\u0003w\u0003w\u0003w\u0003w\u0003w\u0003w\u0003",
- "w\u0003w\u0003x\u0003x\u0003x\u0003x\u0003x\u0003y\u0003y\u0003y\u0003",
- "y\u0003y\u0003y\u0003y\u0003y\u0003y\u0003y\u0003z\u0003z\u0003z\u0003",
- "z\u0003z\u0003z\u0003z\u0003z\u0003z\u0003{\u0003{\u0003{\u0003{\u0003",
- "{\u0003{\u0003{\u0003{\u0003{\u0003{\u0003{\u0003{\u0003{\u0003{\u0003",
- "{\u0003{\u0003|\u0003|\u0003|\u0003|\u0003|\u0003|\u0003|\u0003|\u0003",
- "|\u0003}\u0003}\u0003}\u0003}\u0003}\u0003}\u0003}\u0003}\u0003}\u0003",
- "}\u0003}\u0003}\u0003}\u0003}\u0003}\u0003}\u0003}\u0003}\u0003}\u0003",
- "}\u0003}\u0003}\u0003~\u0003~\u0003~\u0003~\u0003~\u0003~\u0003~\u0003",
- "\u007f\u0003\u007f\u0003\u007f\u0003\u007f\u0003\u007f\u0003\u007f\u0003",
- "\u0080\u0003\u0080\u0003\u0080\u0003\u0080\u0003\u0080\u0003\u0081\u0003",
- "\u0081\u0003\u0081\u0003\u0081\u0003\u0081\u0003\u0081\u0003\u0081\u0003",
- "\u0081\u0003\u0081\u0003\u0082\u0003\u0082\u0003\u0082\u0003\u0082\u0003",
- "\u0082\u0003\u0082\u0003\u0082\u0003\u0082\u0003\u0082\u0003\u0082\u0003",
- "\u0082\u0003\u0083\u0003\u0083\u0003\u0083\u0003\u0083\u0003\u0083\u0003",
- "\u0083\u0003\u0083\u0003\u0083\u0003\u0083\u0003\u0083\u0003\u0083\u0003",
- "\u0083\u0003\u0083\u0003\u0083\u0003\u0084\u0003\u0084\u0003\u0084\u0003",
- "\u0084\u0003\u0085\u0003\u0085\u0003\u0085\u0003\u0085\u0003\u0085\u0003",
- "\u0085\u0003\u0085\u0003\u0085\u0003\u0085\u0003\u0085\u0003\u0086\u0003",
- "\u0086\u0003\u0086\u0003\u0086\u0003\u0086\u0003\u0086\u0003\u0086\u0003",
- "\u0086\u0003\u0086\u0003\u0086\u0003\u0086\u0003\u0086\u0003\u0086\u0003",
- "\u0086\u0003\u0086\u0003\u0086\u0003\u0086\u0003\u0086\u0003\u0086\u0003",
- "\u0086\u0003\u0086\u0003\u0086\u0003\u0086\u0003\u0086\u0003\u0086\u0003",
- "\u0086\u0003\u0086\u0003\u0086\u0003\u0086\u0003\u0086\u0003\u0087\u0003",
- "\u0087\u0003\u0087\u0003\u0087\u0003\u0087\u0003\u0087\u0003\u0087\u0003",
- "\u0087\u0003\u0088\u0003\u0088\u0003\u0088\u0003\u0088\u0003\u0088\u0003",
- "\u0088\u0003\u0088\u0003\u0088\u0003\u0088\u0003\u0089\u0003\u0089\u0003",
- "\u0089\u0003\u0089\u0003\u0089\u0003\u0089\u0003\u0089\u0003\u0089\u0003",
- "\u0089\u0003\u0089\u0003\u0089\u0003\u0089\u0003\u0089\u0003\u0089\u0003",
- "\u008a\u0003\u008a\u0003\u008a\u0003\u008a\u0003\u008a\u0003\u008b\u0003",
- "\u008b\u0003\u008b\u0003\u008b\u0003\u008b\u0003\u008c\u0003\u008c\u0003",
- "\u008c\u0003\u008c\u0003\u008c\u0003\u008c\u0003\u008c\u0003\u008c\u0003",
- "\u008c\u0003\u008d\u0003\u008d\u0003\u008d\u0003\u008d\u0003\u008e\u0003",
- "\u008e\u0003\u008e\u0003\u008e\u0003\u008e\u0003\u008f\u0003\u008f\u0003",
- "\u008f\u0003\u008f\u0003\u008f\u0003\u008f\u0003\u008f\u0003\u008f\u0003",
- "\u008f\u0003\u0090\u0003\u0090\u0003\u0090\u0003\u0090\u0003\u0090\u0003",
- "\u0090\u0003\u0091\u0003\u0091\u0003\u0091\u0003\u0091\u0003\u0091\u0003",
- "\u0091\u0003\u0092\u0003\u0092\u0003\u0092\u0003\u0092\u0003\u0092\u0003",
- "\u0092\u0003\u0092\u0003\u0093\u0003\u0093\u0003\u0093\u0003\u0093\u0003",
- "\u0093\u0003\u0093\u0003\u0093\u0003\u0094\u0003\u0094\u0003\u0094\u0003",
- "\u0094\u0003\u0094\u0003\u0094\u0003\u0094\u0003\u0094\u0003\u0094\u0003",
- "\u0094\u0003\u0094\u0003\u0094\u0003\u0094\u0003\u0094\u0003\u0094\u0003",
- "\u0094\u0003\u0094\u0003\u0094\u0003\u0094\u0003\u0095\u0003\u0095\u0003",
- "\u0095\u0003\u0095\u0003\u0095\u0003\u0095\u0003\u0095\u0003\u0095\u0003",
- "\u0095\u0003\u0096\u0003\u0096\u0003\u0096\u0003\u0096\u0003\u0096\u0003",
- "\u0096\u0003\u0096\u0003\u0096\u0003\u0096\u0003\u0096\u0003\u0096\u0003",
- "\u0096\u0003\u0097\u0003\u0097\u0003\u0097\u0003\u0097\u0003\u0097\u0003",
- "\u0097\u0003\u0097\u0003\u0097\u0003\u0097\u0003\u0097\u0003\u0097\u0003",
- "\u0097\u0003\u0097\u0003\u0097\u0003\u0097\u0003\u0097\u0003\u0098\u0003",
- "\u0098\u0003\u0098\u0003\u0099\u0003\u0099\u0003\u0099\u0003\u0099\u0003",
- "\u009a\u0003\u009a\u0003\u009a\u0003\u009b\u0003\u009b\u0003\u009b\u0003",
- "\u009b\u0003\u009b\u0003\u009b\u0003\u009b\u0003\u009b\u0003\u009c\u0003",
- "\u009c\u0003\u009c\u0003\u009c\u0003\u009c\u0003\u009c\u0003\u009c\u0003",
- "\u009c\u0003\u009c\u0003\u009c\u0003\u009d\u0003\u009d\u0003\u009d\u0003",
- "\u009d\u0003\u009d\u0003\u009d\u0003\u009e\u0003\u009e\u0003\u009e\u0003",
- "\u009e\u0003\u009e\u0003\u009e\u0003\u009e\u0003\u009e\u0003\u009e\u0003",
- "\u009f\u0003\u009f\u0003\u009f\u0003\u009f\u0003\u009f\u0003\u00a0\u0003",
- "\u00a0\u0003\u00a0\u0003\u00a0\u0003\u00a0\u0003\u00a0\u0003\u00a1\u0003",
- "\u00a1\u0003\u00a1\u0003\u00a1\u0003\u00a1\u0003\u00a1\u0003\u00a1\u0003",
- "\u00a2\u0003\u00a2\u0003\u00a2\u0003\u00a2\u0003\u00a2\u0003\u00a2\u0003",
- "\u00a2\u0003\u00a2\u0003\u00a3\u0003\u00a3\u0003\u00a3\u0003\u00a3\u0003",
- "\u00a3\u0003\u00a3\u0003\u00a3\u0003\u00a3\u0003\u00a3\u0003\u00a3\u0003",
- "\u00a4\u0003\u00a4\u0003\u00a4\u0003\u00a4\u0003\u00a4\u0003\u00a5\u0005",
- "\u00a5\u0cc2\n\u00a5\u0003\u00a5\u0003\u00a5\u0003\u00a5\u0003\u00a5",
- "\u0003\u00a5\u0003\u00a5\u0003\u00a5\u0003\u00a5\u0005\u00a5\u0ccc\n",
- "\u00a5\u0003\u00a6\u0005\u00a6\u0ccf\n\u00a6\u0003\u00a6\u0005\u00a6",
- "\u0cd2\n\u00a6\u0003\u00a6\u0005\u00a6\u0cd5\n\u00a6\u0003\u00a6\u0005",
- "\u00a6\u0cd8\n\u00a6\u0003\u00a6\u0005\u00a6\u0cdb\n\u00a6\u0003\u00a6",
- "\u0003\u00a6\u0005\u00a6\u0cdf\n\u00a6\u0003\u00a6\u0005\u00a6\u0ce2",
- "\n\u00a6\u0003\u00a6\u0005\u00a6\u0ce5\n\u00a6\u0003\u00a6\u0005\u00a6",
- "\u0ce8\n\u00a6\u0003\u00a6\u0003\u00a6\u0005\u00a6\u0cec\n\u00a6\u0003",
- "\u00a6\u0005\u00a6\u0cef\n\u00a6\u0003\u00a6\u0005\u00a6\u0cf2\n\u00a6",
- "\u0003\u00a6\u0005\u00a6\u0cf5\n\u00a6\u0003\u00a6\u0003\u00a6\u0005",
- "\u00a6\u0cf9\n\u00a6\u0003\u00a6\u0005\u00a6\u0cfc\n\u00a6\u0003\u00a6",
- "\u0005\u00a6\u0cff\n\u00a6\u0003\u00a6\u0005\u00a6\u0d02\n\u00a6\u0003",
- "\u00a6\u0003\u00a6\u0005\u00a6\u0d06\n\u00a6\u0003\u00a6\u0005\u00a6",
- "\u0d09\n\u00a6\u0003\u00a6\u0005\u00a6\u0d0c\n\u00a6\u0003\u00a6\u0005",
- "\u00a6\u0d0f\n\u00a6\u0003\u00a6\u0003\u00a6\u0005\u00a6\u0d13\n\u00a6",
- "\u0003\u00a6\u0005\u00a6\u0d16\n\u00a6\u0003\u00a6\u0005\u00a6\u0d19",
- "\n\u00a6\u0003\u00a6\u0005\u00a6\u0d1c\n\u00a6\u0003\u00a6\u0003\u00a6",
- "\u0005\u00a6\u0d20\n\u00a6\u0003\u00a6\u0005\u00a6\u0d23\n\u00a6\u0003",
- "\u00a6\u0005\u00a6\u0d26\n\u00a6\u0003\u00a6\u0005\u00a6\u0d29\n\u00a6",
- "\u0003\u00a6\u0003\u00a6\u0005\u00a6\u0d2d\n\u00a6\u0003\u00a6\u0005",
- "\u00a6\u0d30\n\u00a6\u0003\u00a6\u0005\u00a6\u0d33\n\u00a6\u0003\u00a6",
- "\u0005\u00a6\u0d36\n\u00a6\u0003\u00a6\u0005\u00a6\u0d39\n\u00a6\u0003",
- "\u00a7\u0003\u00a7\u0003\u00a7\u0003\u00a8\u0003\u00a8\u0003\u00a8\u0003",
- "\u00a8\u0003\u00a8\u0003\u00a8\u0003\u00a8\u0003\u00a9\u0003\u00a9\u0003",
- "\u00a9\u0003\u00a9\u0003\u00a9\u0003\u00aa\u0003\u00aa\u0003\u00aa\u0003",
- "\u00aa\u0003\u00aa\u0003\u00aa\u0003\u00aa\u0003\u00aa\u0003\u00aa\u0003",
- "\u00ab\u0003\u00ab\u0003\u00ab\u0003\u00ab\u0003\u00ac\u0003\u00ac\u0003",
- "\u00ac\u0003\u00ac\u0003\u00ac\u0003\u00ac\u0003\u00ac\u0003\u00ac\u0003",
- "\u00ac\u0003\u00ad\u0003\u00ad\u0003\u00ad\u0003\u00ad\u0003\u00ad\u0003",
- "\u00ad\u0003\u00ad\u0003\u00ad\u0003\u00ad\u0003\u00ad\u0003\u00ad\u0003",
- "\u00ad\u0003\u00ad\u0003\u00ad\u0003\u00ad\u0003\u00ad\u0003\u00ad\u0003",
- "\u00ad\u0003\u00ad\u0003\u00ad\u0003\u00ad\u0003\u00ad\u0003\u00ad\u0003",
- "\u00ad\u0003\u00ae\u0003\u00ae\u0003\u00ae\u0003\u00ae\u0003\u00ae\u0003",
- "\u00af\u0003\u00af\u0003\u00af\u0003\u00af\u0003\u00af\u0003\u00af\u0003",
- "\u00af\u0003\u00af\u0003\u00af\u0003\u00b0\u0003\u00b0\u0003\u00b0\u0003",
- "\u00b0\u0003\u00b0\u0003\u00b1\u0003\u00b1\u0003\u00b1\u0003\u00b1\u0003",
- "\u00b1\u0003\u00b1\u0003\u00b1\u0003\u00b1\u0003\u00b2\u0003\u00b2\u0003",
- "\u00b2\u0003\u00b2\u0003\u00b2\u0003\u00b2\u0003\u00b2\u0003\u00b2\u0003",
- "\u00b2\u0003\u00b3\u0003\u00b3\u0003\u00b3\u0003\u00b3\u0003\u00b3\u0003",
- "\u00b4\u0003\u00b4\u0003\u00b4\u0003\u00b4\u0003\u00b4\u0003\u00b4\u0003",
- "\u00b4\u0003\u00b5\u0003\u00b5\u0003\u00b5\u0003\u00b5\u0003\u00b5\u0003",
- "\u00b5\u0003\u00b6\u0003\u00b6\u0003\u00b6\u0003\u00b6\u0003\u00b6\u0003",
- "\u00b6\u0003\u00b6\u0003\u00b6\u0003\u00b6\u0003\u00b6\u0003\u00b6\u0003",
- "\u00b6\u0003\u00b7\u0003\u00b7\u0003\u00b7\u0003\u00b7\u0003\u00b7\u0003",
- "\u00b7\u0003\u00b7\u0003\u00b7\u0003\u00b7\u0003\u00b7\u0003\u00b7\u0003",
- "\u00b7\u0003\u00b7\u0003\u00b7\u0003\u00b8\u0003\u00b8\u0003\u00b8\u0003",
- "\u00b8\u0003\u00b8\u0003\u00b9\u0003\u00b9\u0003\u00b9\u0003\u00b9\u0003",
- "\u00b9\u0003\u00b9\u0003\u00b9\u0003\u00b9\u0003\u00b9\u0003\u00b9\u0003",
- "\u00b9\u0003\u00b9\u0003\u00b9\u0003\u00b9\u0003\u00b9\u0003\u00b9\u0003",
- "\u00b9\u0003\u00b9\u0003\u00b9\u0003\u00ba\u0003\u00ba\u0003\u00ba\u0003",
- "\u00ba\u0003\u00bb\u0003\u00bb\u0003\u00bb\u0003\u00bb\u0003\u00bb\u0003",
- "\u00bb\u0003\u00bb\u0003\u00bb\u0003\u00bc\u0003\u00bc\u0003\u00bc\u0003",
- "\u00bc\u0003\u00bc\u0003\u00bc\u0003\u00bc\u0003\u00bd\u0003\u00bd\u0003",
- "\u00bd\u0003\u00bd\u0003\u00bd\u0003\u00bd\u0003\u00bd\u0003\u00bd\u0003",
- "\u00bd\u0003\u00bd\u0003\u00bd\u0003\u00be\u0003\u00be\u0003\u00be\u0003",
- "\u00be\u0003\u00be\u0003\u00be\u0003\u00be\u0003\u00be\u0003\u00be\u0003",
- "\u00be\u0003\u00be\u0003\u00be\u0003\u00bf\u0003\u00bf\u0003\u00bf\u0003",
- "\u00bf\u0003\u00bf\u0003\u00bf\u0003\u00bf\u0003\u00bf\u0003\u00bf\u0003",
- "\u00c0\u0003\u00c0\u0003\u00c0\u0003\u00c0\u0003\u00c0\u0003\u00c0\u0003",
- "\u00c0\u0003\u00c0\u0003\u00c0\u0003\u00c0\u0003\u00c0\u0003\u00c0\u0003",
- "\u00c0\u0003\u00c0\u0003\u00c0\u0003\u00c0\u0003\u00c0\u0003\u00c0\u0003",
- "\u00c0\u0003\u00c0\u0003\u00c0\u0003\u00c1\u0003\u00c1\u0003\u00c1\u0003",
- "\u00c1\u0003\u00c1\u0003\u00c1\u0003\u00c1\u0003\u00c1\u0003\u00c1\u0003",
- "\u00c1\u0003\u00c1\u0003\u00c1\u0003\u00c1\u0003\u00c1\u0003\u00c1\u0003",
- "\u00c2\u0003\u00c2\u0003\u00c2\u0003\u00c2\u0003\u00c2\u0003\u00c2\u0003",
- "\u00c2\u0003\u00c2\u0003\u00c2\u0003\u00c3\u0003\u00c3\u0003\u00c3\u0003",
- "\u00c3\u0003\u00c3\u0003\u00c3\u0003\u00c3\u0003\u00c3\u0003\u00c3\u0003",
- "\u00c3\u0003\u00c3\u0003\u00c3\u0003\u00c3\u0003\u00c3\u0003\u00c3\u0003",
- "\u00c3\u0003\u00c3\u0003\u00c3\u0003\u00c3\u0003\u00c3\u0003\u00c3\u0003",
- "\u00c3\u0003\u00c3\u0003\u00c3\u0003\u00c3\u0003\u00c3\u0003\u00c3\u0003",
- "\u00c3\u0003\u00c3\u0003\u00c3\u0003\u00c4\u0003\u00c4\u0003\u00c4\u0003",
- "\u00c4\u0003\u00c4\u0003\u00c4\u0003\u00c4\u0003\u00c4\u0003\u00c4\u0003",
- "\u00c4\u0003\u00c4\u0003\u00c4\u0003\u00c4\u0003\u00c4\u0003\u00c4\u0003",
- "\u00c4\u0003\u00c4\u0003\u00c5\u0003\u00c5\u0003\u00c5\u0003\u00c5\u0003",
- "\u00c5\u0003\u00c5\u0003\u00c5\u0003\u00c5\u0003\u00c5\u0003\u00c5\u0003",
- "\u00c6\u0003\u00c6\u0003\u00c6\u0003\u00c6\u0003\u00c6\u0003\u00c6\u0003",
- "\u00c6\u0003\u00c7\u0003\u00c7\u0003\u00c7\u0003\u00c7\u0003\u00c7\u0003",
- "\u00c7\u0003\u00c7\u0003\u00c7\u0003\u00c7\u0003\u00c7\u0003\u00c7\u0003",
- "\u00c7\u0003\u00c7\u0003\u00c7\u0003\u00c7\u0003\u00c7\u0003\u00c7\u0003",
- "\u00c7\u0003\u00c7\u0003\u00c7\u0003\u00c7\u0003\u00c7\u0003\u00c8\u0003",
- "\u00c8\u0003\u00c8\u0003\u00c8\u0003\u00c8\u0003\u00c8\u0003\u00c9\u0003",
- "\u00c9\u0003\u00c9\u0003\u00c9\u0003\u00c9\u0003\u00c9\u0003\u00c9\u0003",
- "\u00c9\u0003\u00c9\u0003\u00c9\u0003\u00c9\u0003\u00c9\u0003\u00c9\u0003",
- "\u00c9\u0003\u00c9\u0003\u00c9\u0003\u00c9\u0003\u00c9\u0003\u00c9\u0003",
- "\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0003",
- "\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0003",
- "\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0003",
- "\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0003",
- "\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0003",
- "\u00cc\u0003\u00cc\u0003\u00cc\u0003\u00cc\u0003\u00cc\u0003\u00cc\u0003",
- "\u00cc\u0003\u00cd\u0003\u00cd\u0003\u00cd\u0003\u00cd\u0003\u00cd\u0003",
- "\u00cd\u0003\u00cd\u0003\u00cd\u0003\u00cd\u0003\u00cd\u0003\u00cd\u0003",
- "\u00cd\u0003\u00ce\u0003\u00ce\u0003\u00ce\u0003\u00ce\u0003\u00ce\u0003",
- "\u00ce\u0003\u00ce\u0003\u00ce\u0003\u00ce\u0003\u00cf\u0003\u00cf\u0003",
- "\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003",
- "\u00cf\u0003\u00cf\u0003\u00d0\u0003\u00d0\u0003\u00d0\u0003\u00d0\u0003",
- "\u00d0\u0003\u00d0\u0003\u00d0\u0003\u00d0\u0003\u00d1\u0003\u00d1\u0003",
- "\u00d1\u0003\u00d1\u0003\u00d1\u0003\u00d1\u0003\u00d1\u0003\u00d1\u0003",
- "\u00d1\u0003\u00d2\u0003\u00d2\u0003\u00d2\u0003\u00d2\u0003\u00d2\u0003",
- "\u00d2\u0003\u00d2\u0003\u00d3\u0003\u00d3\u0003\u00d3\u0003\u00d3\u0003",
- "\u00d3\u0003\u00d3\u0003\u00d3\u0003\u00d3\u0003\u00d3\u0003\u00d3\u0003",
- "\u00d3\u0003\u00d3\u0003\u00d3\u0003\u00d4\u0003\u00d4\u0003\u00d4\u0003",
- "\u00d4\u0003\u00d4\u0003\u00d5\u0003\u00d5\u0003\u00d5\u0003\u00d5\u0003",
- "\u00d5\u0003\u00d5\u0003\u00d5\u0003\u00d5\u0003\u00d5\u0003\u00d6\u0003",
- "\u00d6\u0003\u00d6\u0003\u00d6\u0003\u00d6\u0003\u00d6\u0003\u00d6\u0003",
- "\u00d7\u0003\u00d7\u0003\u00d7\u0003\u00d7\u0003\u00d7\u0003\u00d7\u0003",
- "\u00d7\u0003\u00d7\u0003\u00d7\u0003\u00d8\u0003\u00d8\u0003\u00d8\u0003",
- "\u00d8\u0003\u00d8\u0003\u00d8\u0003\u00d8\u0003\u00d8\u0003\u00d8\u0003",
- "\u00d8\u0003\u00d8\u0003\u00d8\u0003\u00d9\u0003\u00d9\u0003\u00d9\u0003",
- "\u00d9\u0003\u00d9\u0003\u00d9\u0003\u00d9\u0003\u00d9\u0003\u00d9\u0003",
- "\u00d9\u0003\u00d9\u0003\u00d9\u0003\u00d9\u0003\u00d9\u0003\u00d9\u0003",
- "\u00da\u0003\u00da\u0003\u00da\u0003\u00da\u0003\u00da\u0003\u00da\u0003",
- "\u00da\u0003\u00da\u0003\u00da\u0003\u00da\u0003\u00da\u0003\u00da\u0003",
- "\u00da\u0003\u00da\u0003\u00db\u0003\u00db\u0003\u00db\u0003\u00db\u0003",
- "\u00dc\u0003\u00dc\u0003\u00dc\u0003\u00dc\u0003\u00dc\u0003\u00dc\u0003",
- "\u00dc\u0003\u00dc\u0003\u00dc\u0003\u00dc\u0003\u00dc\u0003\u00dc\u0003",
- "\u00dc\u0003\u00dd\u0003\u00dd\u0003\u00dd\u0003\u00dd\u0003\u00dd\u0003",
- "\u00de\u0003\u00de\u0003\u00de\u0003\u00de\u0003\u00de\u0003\u00df\u0003",
- "\u00df\u0003\u00df\u0003\u00df\u0003\u00df\u0003\u00df\u0003\u00df\u0003",
- "\u00e0\u0003\u00e0\u0003\u00e0\u0003\u00e1\u0003\u00e1\u0003\u00e1\u0003",
- "\u00e1\u0003\u00e2\u0003\u00e2\u0003\u00e2\u0003\u00e2\u0003\u00e2\u0003",
- "\u00e2\u0003\u00e2\u0003\u00e2\u0003\u00e3\u0003\u00e3\u0003\u00e3\u0003",
- "\u00e3\u0003\u00e3\u0003\u00e3\u0003\u00e3\u0003\u00e3\u0003\u00e3\u0003",
- "\u00e3\u0003\u00e3\u0003\u00e3\u0003\u00e3\u0003\u00e4\u0003\u00e4\u0003",
- "\u00e4\u0003\u00e5\u0003\u00e5\u0003\u00e5\u0003\u00e5\u0003\u00e5\u0003",
- "\u00e5\u0003\u00e5\u0003\u00e5\u0003\u00e5\u0003\u00e5\u0003\u00e5\u0003",
- "\u00e6\u0003\u00e6\u0003\u00e6\u0003\u00e6\u0003\u00e6\u0003\u00e7\u0003",
- "\u00e7\u0003\u00e7\u0003\u00e7\u0003\u00e7\u0003\u00e7\u0003\u00e7\u0003",
- "\u00e7\u0003\u00e7\u0003\u00e7\u0003\u00e7\u0003\u00e7\u0003\u00e7\u0003",
- "\u00e7\u0003\u00e7\u0003\u00e8\u0003\u00e8\u0003\u00e8\u0003\u00e8\u0003",
- "\u00e8\u0003\u00e8\u0003\u00e8\u0003\u00e8\u0003\u00e8\u0003\u00e8\u0003",
- "\u00e9\u0003\u00e9\u0003\u00e9\u0003\u00e9\u0003\u00e9\u0003\u00e9\u0003",
- "\u00e9\u0003\u00e9\u0003\u00e9\u0003\u00e9\u0003\u00e9\u0003\u00ea\u0003",
- "\u00ea\u0003\u00ea\u0003\u00ea\u0003\u00ea\u0003\u00ea\u0003\u00ea\u0003",
- "\u00ea\u0003\u00eb\u0003\u00eb\u0003\u00eb\u0003\u00eb\u0003\u00eb\u0003",
- "\u00eb\u0003\u00eb\u0003\u00ec\u0003\u00ec\u0003\u00ec\u0003\u00ed\u0003",
- "\u00ed\u0003\u00ed\u0003\u00ed\u0003\u00ed\u0003\u00ed\u0003\u00ee\u0003",
- "\u00ee\u0003\u00ee\u0003\u00ee\u0003\u00ee\u0003\u00ee\u0003\u00ef\u0003",
- "\u00ef\u0003\u00ef\u0003\u00ef\u0003\u00ef\u0003\u00f0\u0003\u00f0\u0003",
- "\u00f0\u0003\u00f0\u0003\u00f0\u0003\u00f1\u0003\u00f1\u0003\u00f1\u0003",
- "\u00f1\u0003\u00f1\u0003\u00f1\u0003\u00f1\u0003\u00f1\u0003\u00f1\u0003",
- "\u00f1\u0003\u00f1\u0003\u00f2\u0003\u00f2\u0003\u00f2\u0003\u00f2\u0003",
- "\u00f2\u0003\u00f2\u0003\u00f2\u0003\u00f2\u0003\u00f3\u0003\u00f3\u0003",
- "\u00f3\u0003\u00f3\u0003\u00f3\u0003\u00f3\u0003\u00f3\u0003\u00f3\u0003",
- "\u00f3\u0003\u00f4\u0003\u00f4\u0003\u00f4\u0003\u00f4\u0003\u00f4\u0003",
- "\u00f4\u0003\u00f4\u0003\u00f4\u0003\u00f5\u0003\u00f5\u0003\u00f5\u0003",
- "\u00f5\u0003\u00f5\u0003\u00f5\u0003\u00f5\u0003\u00f5\u0003\u00f5\u0003",
- "\u00f5\u0003\u00f5\u0003\u00f5\u0003\u00f5\u0003\u00f5\u0003\u00f5\u0003",
- "\u00f6\u0003\u00f6\u0003\u00f6\u0003\u00f6\u0003\u00f6\u0003\u00f6\u0003",
- "\u00f6\u0003\u00f6\u0003\u00f7\u0003\u00f7\u0003\u00f7\u0003\u00f7\u0003",
- "\u00f7\u0003\u00f7\u0003\u00f7\u0003\u00f8\u0003\u00f8\u0003\u00f8\u0003",
- "\u00f8\u0003\u00f8\u0003\u00f8\u0003\u00f8\u0003\u00f8\u0003\u00f8\u0003",
- "\u00f9\u0003\u00f9\u0003\u00f9\u0003\u00f9\u0003\u00f9\u0003\u00f9\u0003",
- "\u00fa\u0003\u00fa\u0003\u00fa\u0003\u00fa\u0003\u00fa\u0003\u00fb\u0003",
- "\u00fb\u0003\u00fb\u0003\u00fb\u0003\u00fb\u0003\u00fb\u0003\u00fb\u0003",
- "\u00fb\u0003\u00fb\u0003\u00fc\u0003\u00fc\u0003\u00fc\u0003\u00fc\u0003",
- "\u00fc\u0003\u00fc\u0003\u00fc\u0003\u00fd\u0003\u00fd\u0003\u00fd\u0003",
- "\u00fd\u0003\u00fd\u0003\u00fd\u0003\u00fd\u0003\u00fd\u0003\u00fd\u0003",
- "\u00fd\u0003\u00fe\u0003\u00fe\u0003\u00fe\u0003\u00fe\u0003\u00fe\u0003",
- "\u00fe\u0003\u00fe\u0003\u00fe\u0003\u00fe\u0003\u00fe\u0003\u00ff\u0003",
- "\u00ff\u0003\u00ff\u0003\u00ff\u0003\u00ff\u0003\u00ff\u0003\u00ff\u0003",
- "\u00ff\u0003\u0100\u0003\u0100\u0003\u0100\u0003\u0100\u0003\u0100\u0003",
- "\u0100\u0003\u0101\u0003\u0101\u0003\u0101\u0003\u0101\u0003\u0101\u0003",
- "\u0102\u0003\u0102\u0003\u0102\u0003\u0102\u0003\u0102\u0003\u0102\u0003",
- "\u0102\u0003\u0102\u0003\u0102\u0003\u0102\u0003\u0103\u0003\u0103\u0003",
- "\u0103\u0003\u0103\u0003\u0103\u0003\u0103\u0003\u0103\u0003\u0103\u0003",
- "\u0104\u0003\u0104\u0003\u0104\u0003\u0104\u0003\u0104\u0003\u0104\u0003",
- "\u0104\u0003\u0105\u0003\u0105\u0003\u0105\u0003\u0105\u0003\u0105\u0003",
- "\u0105\u0003\u0105\u0003\u0106\u0003\u0106\u0003\u0107\u0003\u0107\u0003",
- "\u0107\u0003\u0107\u0003\u0107\u0003\u0107\u0003\u0107\u0003\u0107\u0003",
- "\u0107\u0003\u0107\u0003\u0108\u0003\u0108\u0003\u0108\u0003\u0108\u0003",
- "\u0109\u0003\u0109\u0003\u0109\u0003\u0109\u0003\u0109\u0003\u010a\u0003",
- "\u010a\u0003\u010a\u0003\u010a\u0003\u010a\u0003\u010a\u0003\u010a\u0003",
- "\u010a\u0003\u010a\u0003\u010b\u0003\u010b\u0003\u010b\u0003\u010b\u0003",
- "\u010b\u0003\u010b\u0003\u010b\u0003\u010b\u0003\u010b\u0003\u010b\u0003",
- "\u010b\u0003\u010b\u0003\u010b\u0003\u010b\u0003\u010b\u0003\u010b\u0003",
- "\u010b\u0003\u010b\u0003\u010b\u0003\u010b\u0003\u010b\u0003\u010b\u0003",
- "\u010c\u0003\u010c\u0003\u010c\u0003\u010c\u0003\u010c\u0003\u010c\u0003",
- "\u010c\u0003\u010c\u0003\u010c\u0003\u010c\u0003\u010c\u0003\u010c\u0003",
- "\u010d\u0003\u010d\u0003\u010d\u0003\u010d\u0003\u010d\u0003\u010d\u0003",
- "\u010d\u0003\u010d\u0003\u010d\u0003\u010d\u0003\u010d\u0003\u010e\u0003",
- "\u010e\u0003\u010e\u0003\u010e\u0003\u010e\u0003\u010e\u0003\u010e\u0003",
- "\u010e\u0003\u010e\u0003\u010e\u0003\u010e\u0003\u010f\u0003\u010f\u0003",
- "\u010f\u0003\u010f\u0003\u010f\u0003\u010f\u0003\u010f\u0003\u010f\u0003",
- "\u010f\u0003\u010f\u0003\u010f\u0003\u010f\u0003\u010f\u0003\u010f\u0003",
- "\u010f\u0003\u010f\u0003\u010f\u0003\u010f\u0003\u010f\u0003\u010f\u0003",
- "\u010f\u0003\u0110\u0003\u0110\u0003\u0110\u0003\u0110\u0003\u0110\u0003",
- "\u0110\u0003\u0110\u0003\u0110\u0003\u0110\u0003\u0110\u0003\u0110\u0003",
- "\u0110\u0003\u0110\u0003\u0110\u0003\u0110\u0003\u0110\u0003\u0110\u0003",
- "\u0110\u0003\u0110\u0003\u0110\u0003\u0110\u0003\u0110\u0003\u0110\u0003",
- "\u0110\u0003\u0110\u0003\u0110\u0003\u0110\u0003\u0111\u0003\u0111\u0003",
- "\u0111\u0003\u0111\u0003\u0111\u0003\u0111\u0003\u0111\u0003\u0111\u0003",
- "\u0111\u0003\u0111\u0003\u0111\u0003\u0111\u0003\u0112\u0003\u0112\u0003",
- "\u0112\u0003\u0112\u0003\u0112\u0003\u0112\u0003\u0112\u0003\u0112\u0003",
- "\u0112\u0003\u0113\u0003\u0113\u0003\u0113\u0003\u0113\u0003\u0113\u0003",
- "\u0113\u0003\u0114\u0003\u0114\u0003\u0114\u0003\u0114\u0003\u0114\u0003",
- "\u0114\u0003\u0114\u0003\u0114\u0003\u0115\u0003\u0115\u0003\u0115\u0003",
- "\u0115\u0003\u0115\u0003\u0115\u0003\u0115\u0003\u0115\u0003\u0116\u0003",
- "\u0116\u0003\u0116\u0003\u0116\u0003\u0116\u0003\u0116\u0003\u0116\u0003",
- "\u0116\u0003\u0116\u0003\u0117\u0003\u0117\u0003\u0117\u0003\u0117\u0003",
- "\u0117\u0003\u0117\u0003\u0117\u0003\u0118\u0003\u0118\u0003\u0118\u0003",
- "\u0118\u0003\u0118\u0003\u0118\u0003\u0118\u0003\u0118\u0003\u0118\u0003",
- "\u0118\u0003\u0118\u0003\u0119\u0003\u0119\u0003\u0119\u0003\u0119\u0003",
- "\u0119\u0003\u0119\u0003\u0119\u0003\u011a\u0003\u011a\u0003\u011a\u0003",
- "\u011a\u0003\u011a\u0003\u011a\u0003\u011a\u0003\u011a\u0003\u011b\u0003",
- "\u011b\u0003\u011b\u0003\u011b\u0003\u011b\u0003\u011b\u0003\u011b\u0003",
- "\u011c\u0003\u011c\u0003\u011c\u0003\u011c\u0003\u011c\u0003\u011c\u0003",
- "\u011c\u0003\u011d\u0003\u011d\u0003\u011d\u0003\u011d\u0003\u011d\u0003",
- "\u011d\u0003\u011d\u0003\u011e\u0003\u011e\u0003\u011e\u0003\u011e\u0003",
- "\u011e\u0003\u011e\u0003\u011f\u0003\u011f\u0003\u011f\u0003\u011f\u0003",
- "\u011f\u0003\u011f\u0003\u011f\u0003\u011f\u0003\u011f\u0003\u0120\u0003",
- "\u0120\u0003\u0120\u0003\u0120\u0003\u0120\u0003\u0121\u0003\u0121\u0003",
- "\u0121\u0003\u0121\u0003\u0121\u0003\u0121\u0003\u0121\u0003\u0121\u0003",
- "\u0121\u0003\u0122\u0003\u0122\u0003\u0122\u0003\u0122\u0003\u0122\u0003",
- "\u0122\u0003\u0122\u0003\u0122\u0003\u0122\u0003\u0122\u0003\u0122\u0003",
- "\u0123\u0003\u0123\u0003\u0123\u0003\u0123\u0003\u0123\u0003\u0123\u0003",
- "\u0123\u0003\u0123\u0003\u0124\u0003\u0124\u0003\u0124\u0003\u0124\u0003",
- "\u0124\u0003\u0124\u0003\u0124\u0003\u0124\u0003\u0124\u0003\u0125\u0003",
- "\u0125\u0003\u0125\u0003\u0125\u0003\u0125\u0003\u0125\u0003\u0125\u0003",
- "\u0125\u0003\u0125\u0003\u0126\u0003\u0126\u0003\u0126\u0003\u0126\u0003",
- "\u0126\u0003\u0126\u0003\u0126\u0003\u0126\u0003\u0126\u0003\u0127\u0003",
- "\u0127\u0003\u0127\u0003\u0127\u0003\u0127\u0003\u0127\u0003\u0127\u0003",
- "\u0127\u0003\u0127\u0003\u0128\u0003\u0128\u0003\u0128\u0003\u0128\u0003",
- "\u0128\u0003\u0128\u0003\u0128\u0003\u0129\u0003\u0129\u0003\u0129\u0003",
- "\u0129\u0003\u0129\u0003\u012a\u0003\u012a\u0003\u012a\u0003\u012a\u0003",
- "\u012a\u0003\u012b\u0003\u012b\u0003\u012b\u0003\u012b\u0003\u012b\u0003",
- "\u012c\u0003\u012c\u0003\u012c\u0003\u012c\u0003\u012c\u0003\u012c\u0003",
- "\u012c\u0003\u012c\u0003\u012c\u0003\u012c\u0003\u012d\u0003\u012d\u0003",
- "\u012d\u0003\u012d\u0003\u012d\u0003\u012d\u0003\u012d\u0003\u012e\u0003",
- "\u012e\u0003\u012e\u0003\u012e\u0003\u012e\u0003\u012e\u0003\u012e\u0003",
- "\u012f\u0003\u012f\u0003\u012f\u0003\u012f\u0003\u012f\u0003\u012f\u0003",
- "\u012f\u0003\u012f\u0003\u012f\u0003\u012f\u0003\u012f\u0003\u012f\u0003",
- "\u012f\u0003\u012f\u0003\u0130\u0003\u0130\u0003\u0130\u0003\u0130\u0003",
- "\u0130\u0003\u0130\u0003\u0130\u0003\u0131\u0003\u0131\u0003\u0131\u0003",
- "\u0131\u0003\u0131\u0003\u0131\u0003\u0131\u0003\u0131\u0003\u0131\u0003",
- "\u0131\u0003\u0131\u0003\u0131\u0003\u0131\u0003\u0131\u0003\u0131\u0003",
- "\u0131\u0003\u0131\u0003\u0131\u0003\u0131\u0003\u0131\u0003\u0131\u0003",
- "\u0131\u0003\u0131\u0003\u0132\u0003\u0132\u0003\u0132\u0003\u0132\u0003",
- "\u0132\u0003\u0132\u0003\u0132\u0003\u0132\u0003\u0132\u0003\u0132\u0003",
- "\u0132\u0003\u0132\u0003\u0132\u0003\u0132\u0003\u0132\u0003\u0132\u0003",
- "\u0132\u0003\u0132\u0003\u0132\u0003\u0132\u0003\u0132\u0003\u0132\u0003",
- "\u0132\u0003\u0132\u0003\u0132\u0003\u0132\u0003\u0132\u0003\u0132\u0003",
- "\u0132\u0003\u0132\u0003\u0132\u0003\u0133\u0003\u0133\u0003\u0133\u0003",
- "\u0133\u0003\u0133\u0003\u0133\u0003\u0133\u0003\u0133\u0003\u0133\u0003",
- "\u0133\u0003\u0133\u0003\u0133\u0003\u0133\u0003\u0133\u0003\u0133\u0003",
- "\u0133\u0003\u0133\u0003\u0133\u0003\u0133\u0003\u0133\u0003\u0133\u0003",
- "\u0133\u0003\u0133\u0003\u0133\u0003\u0134\u0003\u0134\u0003\u0134\u0003",
- "\u0134\u0003\u0134\u0003\u0134\u0003\u0134\u0003\u0135\u0003\u0135\u0003",
- "\u0135\u0003\u0135\u0003\u0135\u0003\u0135\u0003\u0135\u0003\u0135\u0003",
- "\u0136\u0003\u0136\u0003\u0136\u0003\u0136\u0003\u0136\u0003\u0136\u0003",
- "\u0136\u0003\u0136\u0003\u0136\u0003\u0136\u0003\u0136\u0003\u0136\u0003",
- "\u0136\u0003\u0136\u0003\u0136\u0003\u0137\u0003\u0137\u0003\u0137\u0003",
- "\u0137\u0003\u0137\u0003\u0137\u0003\u0137\u0003\u0137\u0003\u0137\u0003",
- "\u0137\u0003\u0137\u0003\u0137\u0003\u0137\u0003\u0138\u0003\u0138\u0003",
- "\u0138\u0003\u0138\u0003\u0138\u0003\u0138\u0003\u0138\u0003\u0138\u0003",
- "\u0139\u0003\u0139\u0003\u0139\u0003\u0139\u0003\u0139\u0003\u0139\u0003",
- "\u0139\u0003\u0139\u0003\u0139\u0003\u0139\u0003\u0139\u0003\u0139\u0003",
- "\u0139\u0003\u013a\u0003\u013a\u0003\u013a\u0003\u013a\u0003\u013b\u0003",
- "\u013b\u0003\u013b\u0003\u013b\u0003\u013b\u0003\u013b\u0003\u013b\u0003",
- "\u013b\u0003\u013c\u0003\u013c\u0003\u013c\u0003\u013c\u0003\u013c\u0003",
- "\u013c\u0003\u013c\u0003\u013c\u0003\u013c\u0003\u013d\u0003\u013d\u0003",
- "\u013d\u0003\u013d\u0003\u013e\u0003\u013e\u0003\u013e\u0003\u013e\u0003",
- "\u013e\u0003\u013f\u0003\u013f\u0003\u013f\u0003\u013f\u0003\u013f\u0003",
- "\u013f\u0003\u013f\u0003\u013f\u0003\u013f\u0003\u0140\u0003\u0140\u0003",
- "\u0140\u0003\u0140\u0003\u0140\u0003\u0141\u0003\u0141\u0003\u0141\u0003",
- "\u0141\u0003\u0141\u0003\u0141\u0003\u0141\u0003\u0142\u0003\u0142\u0003",
- "\u0142\u0003\u0142\u0003\u0142\u0003\u0142\u0003\u0142\u0003\u0142\u0003",
- "\u0142\u0003\u0142\u0003\u0142\u0003\u0142\u0003\u0142\u0003\u0142\u0003",
- "\u0143\u0003\u0143\u0003\u0143\u0003\u0143\u0003\u0143\u0003\u0143\u0003",
- "\u0144\u0003\u0144\u0003\u0144\u0003\u0144\u0003\u0144\u0003\u0144\u0003",
- "\u0144\u0003\u0144\u0003\u0144\u0003\u0144\u0003\u0144\u0003\u0144\u0003",
- "\u0144\u0003\u0144\u0003\u0144\u0003\u0145\u0003\u0145\u0003\u0145\u0003",
- "\u0145\u0003\u0145\u0003\u0145\u0003\u0145\u0003\u0145\u0003\u0145\u0003",
- "\u0145\u0003\u0145\u0003\u0145\u0003\u0145\u0003\u0145\u0003\u0146\u0003",
- "\u0146\u0003\u0146\u0003\u0146\u0003\u0146\u0003\u0146\u0003\u0146\u0003",
- "\u0146\u0003\u0146\u0003\u0146\u0003\u0146\u0003\u0146\u0003\u0146\u0003",
- "\u0146\u0003\u0146\u0003\u0146\u0003\u0146\u0003\u0146\u0003\u0147\u0003",
- "\u0147\u0003\u0147\u0003\u0147\u0003\u0147\u0003\u0147\u0003\u0147\u0003",
- "\u0147\u0003\u0147\u0003\u0147\u0003\u0147\u0003\u0148\u0003\u0148\u0003",
- "\u0148\u0003\u0148\u0003\u0148\u0003\u0148\u0003\u0149\u0003\u0149\u0003",
- "\u0149\u0003\u0149\u0003\u0149\u0003\u0149\u0003\u014a\u0003\u014a\u0003",
- "\u014a\u0003\u014a\u0003\u014a\u0003\u014a\u0003\u014b\u0003\u014b\u0003",
- "\u014b\u0003\u014b\u0003\u014b\u0003\u014b\u0003\u014b\u0003\u014b\u0003",
- "\u014c\u0003\u014c\u0003\u014c\u0003\u014c\u0003\u014c\u0003\u014c\u0003",
- "\u014c\u0003\u014c\u0003\u014c\u0003\u014c\u0003\u014c\u0003\u014c\u0003",
- "\u014c\u0003\u014c\u0003\u014d\u0003\u014d\u0003\u014d\u0003\u014d\u0003",
- "\u014d\u0003\u014e\u0003\u014e\u0003\u014e\u0003\u014e\u0003\u014e\u0003",
- "\u014e\u0003\u014e\u0003\u014e\u0003\u014f\u0003\u014f\u0003\u014f\u0003",
- "\u014f\u0003\u014f\u0003\u014f\u0003\u014f\u0003\u014f\u0003\u014f\u0003",
- "\u014f\u0003\u014f\u0003\u014f\u0003\u014f\u0003\u014f\u0003\u0150\u0003",
- "\u0150\u0003\u0150\u0003\u0150\u0003\u0150\u0003\u0150\u0003\u0150\u0003",
- "\u0150\u0003\u0150\u0003\u0150\u0003\u0151\u0003\u0151\u0003\u0151\u0003",
- "\u0151\u0003\u0151\u0003\u0151\u0003\u0151\u0003\u0151\u0003\u0151\u0003",
- "\u0151\u0003\u0151\u0003\u0151\u0003\u0152\u0003\u0152\u0003\u0152\u0003",
- "\u0152\u0003\u0152\u0003\u0152\u0003\u0153\u0003\u0153\u0003\u0153\u0003",
- "\u0153\u0003\u0153\u0003\u0153\u0003\u0153\u0003\u0153\u0003\u0153\u0003",
- "\u0153\u0003\u0153\u0003\u0153\u0003\u0154\u0003\u0154\u0003\u0154\u0003",
- "\u0154\u0003\u0154\u0003\u0155\u0003\u0155\u0003\u0155\u0003\u0155\u0003",
- "\u0155\u0003\u0155\u0003\u0155\u0003\u0156\u0003\u0156\u0003\u0156\u0003",
- "\u0156\u0003\u0157\u0003\u0157\u0003\u0157\u0003\u0157\u0003\u0157\u0003",
- "\u0157\u0003\u0157\u0003\u0157\u0003\u0157\u0003\u0158\u0003\u0158\u0003",
- "\u0158\u0003\u0158\u0003\u0158\u0003\u0159\u0003\u0159\u0003\u0159\u0003",
- "\u015a\u0003\u015a\u0003\u015a\u0003\u015a\u0003\u015b\u0003\u015b\u0003",
- "\u015b\u0003\u015b\u0003\u015b\u0003\u015b\u0003\u015b\u0003\u015b\u0003",
- "\u015b\u0003\u015b\u0003\u015b\u0003\u015b\u0003\u015b\u0003\u015b\u0003",
- "\u015b\u0003\u015b\u0003\u015c\u0003\u015c\u0003\u015c\u0003\u015c\u0003",
- "\u015c\u0003\u015d\u0003\u015d\u0003\u015d\u0003\u015d\u0003\u015d\u0003",
- "\u015d\u0003\u015d\u0003\u015d\u0003\u015d\u0003\u015d\u0003\u015d\u0003",
- "\u015d\u0003\u015e\u0003\u015e\u0003\u015e\u0003\u015e\u0003\u015e\u0003",
- "\u015e\u0003\u015e\u0003\u015e\u0003\u015e\u0003\u015f\u0003\u015f\u0003",
- "\u015f\u0003\u015f\u0003\u015f\u0003\u015f\u0003\u015f\u0003\u015f\u0003",
- "\u0160\u0003\u0160\u0003\u0160\u0003\u0160\u0003\u0160\u0003\u0160\u0003",
- "\u0160\u0003\u0160\u0003\u0160\u0003\u0161\u0003\u0161\u0003\u0161\u0003",
- "\u0161\u0003\u0161\u0003\u0161\u0003\u0161\u0003\u0161\u0003\u0162\u0003",
- "\u0162\u0003\u0162\u0003\u0162\u0003\u0162\u0003\u0162\u0003\u0162\u0003",
- "\u0162\u0003\u0162\u0003\u0162\u0003\u0163\u0003\u0163\u0003\u0163\u0003",
- "\u0163\u0003\u0163\u0003\u0163\u0003\u0164\u0003\u0164\u0003\u0164\u0003",
- "\u0164\u0003\u0164\u0003\u0164\u0003\u0164\u0003\u0165\u0003\u0165\u0003",
- "\u0165\u0003\u0165\u0003\u0165\u0003\u0165\u0003\u0165\u0003\u0166\u0003",
- "\u0166\u0003\u0166\u0003\u0166\u0003\u0166\u0003\u0166\u0003\u0166\u0003",
- "\u0166\u0003\u0167\u0003\u0167\u0003\u0167\u0003\u0167\u0003\u0167\u0003",
- "\u0167\u0003\u0167\u0003\u0168\u0003\u0168\u0003\u0168\u0003\u0168\u0003",
- "\u0168\u0003\u0168\u0003\u0168\u0003\u0169\u0003\u0169\u0003\u0169\u0003",
- "\u0169\u0003\u0169\u0003\u0169\u0003\u0169\u0003\u0169\u0003\u0169\u0003",
- "\u0169\u0003\u0169\u0003\u016a\u0003\u016a\u0003\u016a\u0003\u016a\u0003",
- "\u016b\u0003\u016b\u0003\u016b\u0003\u016b\u0003\u016c\u0003\u016c\u0003",
- "\u016c\u0003\u016c\u0003\u016c\u0003\u016d\u0003\u016d\u0003\u016d\u0003",
- "\u016d\u0003\u016d\u0003\u016e\u0003\u016e\u0003\u016e\u0003\u016e\u0003",
- "\u016e\u0003\u016e\u0003\u016e\u0003\u016f\u0003\u016f\u0003\u016f\u0003",
- "\u016f\u0003\u016f\u0003\u016f\u0003\u016f\u0003\u016f\u0003\u0170\u0003",
- "\u0170\u0003\u0170\u0003\u0170\u0003\u0170\u0003\u0170\u0003\u0170\u0003",
- "\u0170\u0003\u0170\u0003\u0170\u0003\u0170\u0003\u0170\u0003\u0170\u0003",
- "\u0170\u0003\u0170\u0003\u0171\u0003\u0171\u0003\u0171\u0003\u0171\u0003",
- "\u0171\u0003\u0172\u0003\u0172\u0003\u0172\u0003\u0172\u0003\u0172\u0003",
- "\u0172\u0003\u0172\u0003\u0172\u0003\u0172\u0003\u0172\u0003\u0172\u0003",
- "\u0173\u0003\u0173\u0003\u0173\u0003\u0173\u0003\u0173\u0003\u0173\u0003",
- "\u0173\u0003\u0173\u0003\u0174\u0003\u0174\u0003\u0174\u0003\u0174\u0003",
- "\u0174\u0003\u0175\u0003\u0175\u0003\u0175\u0003\u0175\u0003\u0175\u0003",
- "\u0175\u0003\u0176\u0003\u0176\u0003\u0176\u0003\u0176\u0003\u0176\u0003",
- "\u0176\u0003\u0177\u0003\u0177\u0003\u0177\u0003\u0177\u0003\u0177\u0003",
- "\u0177\u0003\u0177\u0003\u0177\u0003\u0178\u0003\u0178\u0003\u0178\u0003",
- "\u0178\u0003\u0178\u0003\u0179\u0003\u0179\u0003\u0179\u0003\u0179\u0003",
- "\u0179\u0003\u0179\u0003\u0179\u0003\u017a\u0003\u017a\u0003\u017a\u0003",
- "\u017a\u0003\u017a\u0003\u017a\u0003\u017a\u0003\u017a\u0003\u017b\u0003",
- "\u017b\u0003\u017b\u0003\u017b\u0003\u017b\u0003\u017b\u0003\u017b\u0003",
- "\u017b\u0003\u017c\u0003\u017c\u0003\u017c\u0003\u017c\u0003\u017c\u0003",
- "\u017c\u0003\u017c\u0003\u017c\u0003\u017c\u0003\u017c\u0003\u017d\u0003",
- "\u017d\u0003\u017d\u0003\u017d\u0003\u017d\u0003\u017d\u0003\u017d\u0003",
- "\u017d\u0003\u017d\u0003\u017e\u0003\u017e\u0003\u017e\u0003\u017e\u0003",
- "\u017e\u0003\u017e\u0003\u017e\u0003\u017e\u0003\u017e\u0003\u017e\u0003",
- "\u017e\u0003\u017e\u0003\u017e\u0003\u017e\u0003\u017e\u0003\u017e\u0003",
- "\u017e\u0003\u017e\u0003\u017e\u0003\u017f\u0003\u017f\u0003\u017f\u0003",
- "\u017f\u0003\u017f\u0003\u017f\u0003\u017f\u0003\u0180\u0003\u0180\u0003",
- "\u0180\u0003\u0180\u0003\u0180\u0003\u0180\u0003\u0180\u0003\u0180\u0003",
- "\u0180\u0003\u0180\u0003\u0180\u0003\u0181\u0003\u0181\u0003\u0181\u0003",
- "\u0181\u0003\u0181\u0003\u0181\u0003\u0181\u0003\u0182\u0003\u0182\u0003",
- "\u0182\u0003\u0182\u0003\u0182\u0003\u0182\u0003\u0182\u0003\u0182\u0003",
- "\u0183\u0003\u0183\u0003\u0183\u0003\u0183\u0003\u0183\u0003\u0183\u0003",
- "\u0183\u0003\u0183\u0003\u0184\u0003\u0184\u0003\u0184\u0003\u0184\u0003",
- "\u0184\u0003\u0184\u0003\u0184\u0003\u0184\u0003\u0185\u0003\u0185\u0003",
- "\u0185\u0003\u0185\u0003\u0185\u0003\u0185\u0003\u0185\u0003\u0185\u0003",
- "\u0186\u0003\u0186\u0003\u0186\u0003\u0186\u0003\u0186\u0003\u0186\u0003",
- "\u0186\u0003\u0186\u0003\u0186\u0003\u0187\u0003\u0187\u0003\u0187\u0003",
- "\u0187\u0003\u0187\u0003\u0187\u0003\u0188\u0003\u0188\u0003\u0188\u0003",
- "\u0188\u0003\u0188\u0003\u0188\u0003\u0188\u0003\u0188\u0003\u0188\u0003",
- "\u0188\u0003\u0189\u0003\u0189\u0003\u0189\u0003\u0189\u0003\u0189\u0003",
- "\u0189\u0003\u0189\u0003\u0189\u0003\u0189\u0003\u0189\u0003\u018a\u0003",
- "\u018a\u0003\u018a\u0003\u018a\u0003\u018a\u0003\u018a\u0003\u018a\u0003",
- "\u018a\u0003\u018a\u0003\u018a\u0003\u018a\u0003\u018a\u0003\u018a\u0003",
- "\u018a\u0003\u018a\u0003\u018a\u0003\u018a\u0003\u018a\u0003\u018a\u0003",
- "\u018a\u0003\u018a\u0003\u018a\u0003\u018a\u0003\u018a\u0003\u018a\u0003",
- "\u018a\u0003\u018a\u0003\u018a\u0003\u018a\u0003\u018a\u0003\u018a\u0003",
- "\u018a\u0003\u018a\u0003\u018a\u0003\u018a\u0003\u018a\u0003\u018b\u0003",
- "\u018b\u0003\u018b\u0003\u018b\u0003\u018b\u0003\u018b\u0003\u018b\u0003",
- "\u018b\u0003\u018b\u0003\u018b\u0003\u018b\u0003\u018b\u0003\u018b\u0003",
- "\u018b\u0003\u018b\u0003\u018b\u0003\u018b\u0003\u018b\u0003\u018b\u0003",
- "\u018b\u0003\u018b\u0003\u018b\u0003\u018b\u0003\u018b\u0003\u018b\u0003",
- "\u018c\u0003\u018c\u0003\u018c\u0003\u018c\u0003\u018c\u0003\u018c\u0003",
- "\u018c\u0003\u018c\u0003\u018d\u0003\u018d\u0003\u018d\u0003\u018d\u0003",
- "\u018d\u0003\u018d\u0003\u018d\u0003\u018d\u0003\u018d\u0003\u018d\u0003",
- "\u018d\u0003\u018d\u0003\u018d\u0003\u018d\u0003\u018d\u0003\u018d\u0003",
- "\u018d\u0003\u018d\u0003\u018e\u0003\u018e\u0003\u018e\u0003\u018e\u0003",
- "\u018e\u0003\u018e\u0003\u018e\u0003\u018e\u0003\u018e\u0003\u018e\u0003",
- "\u018e\u0003\u018f\u0003\u018f\u0003\u018f\u0003\u018f\u0003\u018f\u0003",
- "\u018f\u0003\u018f\u0003\u018f\u0003\u018f\u0003\u018f\u0003\u018f\u0003",
- "\u018f\u0003\u018f\u0003\u0190\u0003\u0190\u0003\u0190\u0003\u0190\u0003",
- "\u0190\u0003\u0190\u0003\u0190\u0003\u0190\u0003\u0190\u0003\u0190\u0003",
- "\u0190\u0003\u0190\u0003\u0190\u0003\u0190\u0003\u0191\u0003\u0191\u0003",
- "\u0191\u0003\u0191\u0003\u0191\u0003\u0191\u0003\u0191\u0003\u0191\u0003",
- "\u0191\u0003\u0191\u0003\u0191\u0003\u0191\u0003\u0191\u0003\u0191\u0003",
- "\u0191\u0003\u0191\u0003\u0192\u0003\u0192\u0003\u0192\u0003\u0192\u0003",
- "\u0192\u0003\u0192\u0003\u0193\u0003\u0193\u0003\u0193\u0003\u0193\u0003",
- "\u0193\u0003\u0193\u0003\u0193\u0003\u0193\u0003\u0193\u0003\u0193\u0003",
- "\u0193\u0003\u0194\u0003\u0194\u0003\u0194\u0003\u0194\u0003\u0194\u0003",
- "\u0194\u0003\u0194\u0003\u0194\u0003\u0194\u0003\u0195\u0003\u0195\u0003",
- "\u0195\u0003\u0195\u0003\u0195\u0003\u0195\u0003\u0196\u0003\u0196\u0003",
- "\u0196\u0003\u0196\u0003\u0196\u0003\u0196\u0003\u0196\u0003\u0196\u0003",
- "\u0196\u0003\u0196\u0003\u0196\u0003\u0197\u0003\u0197\u0003\u0197\u0003",
- "\u0197\u0003\u0197\u0003\u0198\u0003\u0198\u0003\u0198\u0003\u0198\u0003",
- "\u0198\u0003\u0198\u0003\u0198\u0003\u0198\u0003\u0198\u0003\u0198\u0003",
- "\u0198\u0003\u0198\u0003\u0198\u0003\u0199\u0003\u0199\u0003\u0199\u0003",
- "\u0199\u0003\u0199\u0003\u0199\u0003\u0199\u0003\u0199\u0003\u0199\u0003",
- "\u0199\u0003\u0199\u0003\u019a\u0003\u019a\u0003\u019a\u0003\u019a\u0003",
- "\u019a\u0003\u019a\u0003\u019a\u0003\u019a\u0003\u019a\u0003\u019a\u0003",
- "\u019a\u0003\u019a\u0003\u019a\u0003\u019a\u0003\u019a\u0003\u019a\u0003",
- "\u019a\u0003\u019a\u0003\u019a\u0003\u019a\u0003\u019a\u0003\u019a\u0003",
- "\u019a\u0003\u019b\u0003\u019b\u0003\u019b\u0003\u019b\u0003\u019b\u0003",
- "\u019b\u0003\u019b\u0003\u019b\u0003\u019b\u0003\u019b\u0003\u019b\u0003",
- "\u019b\u0003\u019c\u0003\u019c\u0003\u019c\u0003\u019c\u0003\u019c\u0003",
- "\u019c\u0003\u019c\u0003\u019c\u0003\u019c\u0003\u019c\u0003\u019c\u0003",
- "\u019c\u0003\u019c\u0003\u019c\u0003\u019c\u0003\u019c\u0003\u019c\u0003",
- "\u019c\u0003\u019c\u0003\u019c\u0003\u019c\u0003\u019c\u0003\u019c\u0003",
- "\u019d\u0003\u019d\u0003\u019d\u0003\u019d\u0003\u019d\u0003\u019d\u0003",
- "\u019d\u0003\u019d\u0003\u019d\u0003\u019d\u0003\u019d\u0003\u019d\u0003",
- "\u019d\u0003\u019d\u0003\u019d\u0003\u019d\u0003\u019d\u0003\u019d\u0003",
- "\u019d\u0003\u019d\u0003\u019d\u0003\u019d\u0003\u019d\u0003\u019d\u0003",
- "\u019d\u0003\u019d\u0003\u019d\u0003\u019d\u0003\u019d\u0003\u019e\u0003",
- "\u019e\u0003\u019e\u0003\u019e\u0003\u019e\u0003\u019e\u0003\u019e\u0003",
- "\u019e\u0003\u019e\u0003\u019e\u0003\u019e\u0003\u019e\u0003\u019e\u0003",
- "\u019f\u0003\u019f\u0003\u019f\u0003\u019f\u0003\u01a0\u0003\u01a0\u0003",
- "\u01a0\u0003\u01a0\u0003\u01a0\u0003\u01a0\u0003\u01a0\u0003\u01a0\u0003",
- "\u01a0\u0003\u01a0\u0003\u01a0\u0003\u01a0\u0003\u01a0\u0003\u01a0\u0003",
- "\u01a0\u0003\u01a0\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003",
- "\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003",
- "\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a2\u0003\u01a2\u0003\u01a2\u0003",
- "\u01a2\u0003\u01a2\u0003\u01a2\u0003\u01a2\u0003\u01a3\u0003\u01a3\u0003",
- "\u01a3\u0003\u01a3\u0003\u01a3\u0003\u01a3\u0003\u01a3\u0003\u01a3\u0003",
- "\u01a3\u0003\u01a3\u0003\u01a3\u0003\u01a3\u0003\u01a3\u0003\u01a3\u0003",
- "\u01a4\u0003\u01a4\u0003\u01a4\u0003\u01a4\u0003\u01a4\u0003\u01a4\u0003",
- "\u01a4\u0003\u01a4\u0003\u01a4\u0003\u01a4\u0003\u01a4\u0003\u01a4\u0003",
- "\u01a4\u0003\u01a4\u0003\u01a4\u0003\u01a4\u0003\u01a5\u0003\u01a5\u0003",
- "\u01a5\u0003\u01a5\u0003\u01a5\u0003\u01a5\u0003\u01a5\u0003\u01a5\u0003",
- "\u01a6\u0003\u01a6\u0003\u01a6\u0003\u01a6\u0003\u01a6\u0003\u01a6\u0003",
- "\u01a6\u0003\u01a6\u0003\u01a6\u0003\u01a6\u0003\u01a6\u0003\u01a6\u0003",
- "\u01a6\u0003\u01a7\u0003\u01a7\u0003\u01a7\u0003\u01a7\u0003\u01a7\u0003",
- "\u01a7\u0003\u01a7\u0003\u01a8\u0003\u01a8\u0003\u01a8\u0003\u01a8\u0003",
- "\u01a8\u0003\u01a8\u0003\u01a8\u0003\u01a8\u0003\u01a8\u0003\u01a8\u0003",
- "\u01a8\u0003\u01a8\u0003\u01a8\u0003\u01a8\u0003\u01a8\u0003\u01a8\u0003",
- "\u01a9\u0003\u01a9\u0003\u01a9\u0003\u01a9\u0003\u01a9\u0003\u01a9\u0003",
- "\u01a9\u0003\u01a9\u0003\u01a9\u0003\u01a9\u0003\u01a9\u0003\u01a9\u0003",
- "\u01aa\u0003\u01aa\u0003\u01aa\u0003\u01aa\u0003\u01aa\u0003\u01aa\u0003",
- "\u01aa\u0003\u01ab\u0003\u01ab\u0003\u01ab\u0003\u01ab\u0003\u01ab\u0003",
- "\u01ab\u0003\u01ab\u0003\u01ab\u0003\u01ab\u0003\u01ab\u0003\u01ab\u0003",
- "\u01ab\u0003\u01ab\u0003\u01ab\u0003\u01ab\u0003\u01ab\u0003\u01ac\u0003",
- "\u01ac\u0003\u01ac\u0003\u01ac\u0005\u01ac\u1722\n\u01ac\u0003\u01ac",
- "\u0003\u01ac\u0003\u01ac\u0003\u01ac\u0003\u01ac\u0003\u01ad\u0003\u01ad",
- "\u0003\u01ad\u0003\u01ad\u0003\u01ad\u0003\u01ad\u0003\u01ad\u0003\u01ad",
- "\u0003\u01ae\u0003\u01ae\u0003\u01ae\u0003\u01ae\u0003\u01ae\u0003\u01ae",
- "\u0003\u01af\u0003\u01af\u0003\u01af\u0003\u01af\u0003\u01af\u0003\u01af",
- "\u0003\u01af\u0003\u01af\u0003\u01af\u0003\u01af\u0003\u01af\u0003\u01af",
- "\u0003\u01af\u0003\u01af\u0003\u01af\u0003\u01af\u0003\u01af\u0003\u01b0",
- "\u0003\u01b0\u0003\u01b0\u0003\u01b0\u0003\u01b0\u0003\u01b0\u0003\u01b0",
- "\u0003\u01b0\u0003\u01b0\u0003\u01b0\u0003\u01b0\u0003\u01b0\u0003\u01b0",
- "\u0003\u01b0\u0003\u01b0\u0003\u01b0\u0003\u01b1\u0003\u01b1\u0003\u01b1",
- "\u0003\u01b1\u0003\u01b1\u0003\u01b1\u0003\u01b1\u0003\u01b1\u0003\u01b1",
- "\u0003\u01b2\u0003\u01b2\u0003\u01b2\u0003\u01b2\u0003\u01b2\u0003\u01b2",
- "\u0003\u01b2\u0003\u01b2\u0003\u01b2\u0003\u01b2\u0003\u01b2\u0003\u01b2",
- "\u0003\u01b2\u0003\u01b3\u0003\u01b3\u0003\u01b3\u0003\u01b3\u0003\u01b3",
- "\u0003\u01b3\u0003\u01b3\u0003\u01b3\u0003\u01b4\u0003\u01b4\u0003\u01b4",
- "\u0003\u01b4\u0003\u01b4\u0003\u01b4\u0003\u01b4\u0003\u01b4\u0003\u01b4",
- "\u0003\u01b4\u0003\u01b4\u0003\u01b5\u0003\u01b5\u0003\u01b5\u0003\u01b5",
- "\u0003\u01b5\u0003\u01b5\u0003\u01b5\u0003\u01b5\u0003\u01b5\u0003\u01b5",
- "\u0003\u01b5\u0003\u01b5\u0003\u01b5\u0003\u01b5\u0003\u01b5\u0003\u01b5",
- "\u0003\u01b5\u0003\u01b5\u0003\u01b6\u0003\u01b6\u0003\u01b6\u0003\u01b6",
- "\u0003\u01b6\u0003\u01b6\u0003\u01b6\u0003\u01b6\u0003\u01b6\u0003\u01b6",
- "\u0003\u01b7\u0003\u01b7\u0003\u01b7\u0003\u01b7\u0003\u01b7\u0003\u01b7",
- "\u0003\u01b7\u0003\u01b7\u0003\u01b7\u0003\u01b7\u0003\u01b7\u0003\u01b7",
- "\u0003\u01b7\u0003\u01b7\u0003\u01b7\u0003\u01b7\u0003\u01b7\u0003\u01b7",
- "\u0003\u01b7\u0003\u01b7\u0003\u01b8\u0003\u01b8\u0003\u01b8\u0003\u01b8",
- "\u0003\u01b8\u0003\u01b8\u0003\u01b8\u0003\u01b9\u0003\u01b9\u0003\u01b9",
- "\u0003\u01b9\u0003\u01b9\u0003\u01b9\u0003\u01b9\u0003\u01b9\u0003\u01b9",
- "\u0003\u01b9\u0003\u01b9\u0003\u01b9\u0003\u01b9\u0003\u01b9\u0003\u01b9",
- "\u0003\u01b9\u0003\u01b9\u0003\u01b9\u0003\u01b9\u0003\u01b9\u0003\u01b9",
- "\u0003\u01b9\u0003\u01b9\u0003\u01b9\u0003\u01ba\u0003\u01ba\u0003\u01ba",
- "\u0003\u01ba\u0003\u01ba\u0003\u01ba\u0003\u01ba\u0003\u01ba\u0003\u01bb",
- "\u0003\u01bb\u0003\u01bb\u0003\u01bb\u0003\u01bb\u0003\u01bb\u0003\u01bb",
- "\u0003\u01bb\u0003\u01bc\u0003\u01bc\u0003\u01bc\u0003\u01bc\u0003\u01bc",
- "\u0003\u01bc\u0003\u01bc\u0003\u01bd\u0003\u01bd\u0003\u01bd\u0003\u01bd",
- "\u0003\u01bd\u0003\u01bd\u0003\u01be\u0003\u01be\u0003\u01be\u0003\u01be",
- "\u0003\u01be\u0003\u01be\u0003\u01be\u0003\u01be\u0003\u01be\u0003\u01be",
- "\u0003\u01bf\u0003\u01bf\u0003\u01bf\u0003\u01bf\u0003\u01bf\u0003\u01bf",
- "\u0003\u01bf\u0003\u01bf\u0003\u01c0\u0003\u01c0\u0003\u01c0\u0003\u01c0",
- "\u0003\u01c1\u0003\u01c1\u0003\u01c1\u0003\u01c1\u0003\u01c1\u0003\u01c1",
- "\u0003\u01c1\u0003\u01c1\u0003\u01c1\u0003\u01c1\u0003\u01c1\u0003\u01c2",
- "\u0003\u01c2\u0003\u01c2\u0003\u01c2\u0003\u01c2\u0003\u01c2\u0003\u01c2",
- "\u0003\u01c2\u0003\u01c2\u0003\u01c2\u0003\u01c2\u0003\u01c2\u0003\u01c2",
- "\u0003\u01c2\u0003\u01c2\u0003\u01c2\u0003\u01c2\u0003\u01c2\u0003\u01c2",
- "\u0003\u01c2\u0003\u01c2\u0003\u01c3\u0003\u01c3\u0003\u01c3\u0003\u01c3",
- "\u0003\u01c3\u0003\u01c3\u0003\u01c3\u0003\u01c3\u0003\u01c3\u0003\u01c3",
- "\u0003\u01c3\u0003\u01c4\u0003\u01c4\u0003\u01c4\u0003\u01c4\u0003\u01c4",
- "\u0003\u01c4\u0003\u01c4\u0003\u01c4\u0003\u01c4\u0003\u01c4\u0003\u01c4",
- "\u0003\u01c4\u0003\u01c4\u0003\u01c4\u0003\u01c5\u0003\u01c5\u0003\u01c5",
- "\u0003\u01c5\u0003\u01c5\u0003\u01c5\u0003\u01c5\u0003\u01c5\u0003\u01c5",
- "\u0003\u01c5\u0003\u01c5\u0003\u01c5\u0003\u01c5\u0003\u01c5\u0003\u01c5",
- "\u0003\u01c5\u0003\u01c5\u0003\u01c5\u0003\u01c5\u0003\u01c5\u0003\u01c5",
- "\u0003\u01c5\u0003\u01c5\u0003\u01c6\u0003\u01c6\u0003\u01c6\u0003\u01c6",
- "\u0003\u01c6\u0003\u01c6\u0003\u01c6\u0003\u01c6\u0003\u01c6\u0003\u01c6",
- "\u0003\u01c6\u0003\u01c6\u0003\u01c6\u0003\u01c6\u0003\u01c6\u0003\u01c7",
- "\u0003\u01c7\u0003\u01c7\u0003\u01c7\u0003\u01c7\u0003\u01c8\u0003\u01c8",
- "\u0003\u01c8\u0003\u01c8\u0003\u01c8\u0003\u01c8\u0003\u01c8\u0003\u01c8",
- "\u0003\u01c8\u0003\u01c8\u0003\u01c8\u0003\u01c8\u0003\u01c8\u0003\u01c8",
- "\u0003\u01c8\u0003\u01c8\u0003\u01c8\u0003\u01c8\u0003\u01c8\u0003\u01c8",
- "\u0003\u01c8\u0003\u01c8\u0003\u01c8\u0003\u01c8\u0003\u01c8\u0003\u01c8",
- "\u0003\u01c8\u0003\u01c8\u0003\u01c8\u0003\u01c8\u0003\u01c9\u0003\u01c9",
- "\u0003\u01c9\u0003\u01c9\u0003\u01c9\u0003\u01c9\u0003\u01c9\u0003\u01c9",
- "\u0003\u01ca\u0003\u01ca\u0003\u01ca\u0003\u01ca\u0003\u01ca\u0003\u01ca",
- "\u0003\u01ca\u0003\u01ca\u0003\u01ca\u0003\u01cb\u0003\u01cb\u0003\u01cb",
- "\u0003\u01cb\u0003\u01cb\u0003\u01cb\u0003\u01cb\u0003\u01cb\u0003\u01cb",
- "\u0003\u01cc\u0003\u01cc\u0003\u01cc\u0003\u01cc\u0003\u01cc\u0003\u01cc",
- "\u0003\u01cc\u0003\u01cc\u0003\u01cc\u0003\u01cd\u0003\u01cd\u0003\u01cd",
- "\u0003\u01cd\u0003\u01cd\u0003\u01ce\u0003\u01ce\u0003\u01ce\u0003\u01ce",
- "\u0003\u01ce\u0003\u01ce\u0003\u01ce\u0003\u01ce\u0003\u01ce\u0003\u01ce",
- "\u0003\u01ce\u0003\u01ce\u0003\u01cf\u0003\u01cf\u0003\u01cf\u0003\u01cf",
- "\u0003\u01cf\u0003\u01cf\u0003\u01cf\u0003\u01cf\u0003\u01cf\u0003\u01cf",
- "\u0003\u01cf\u0003\u01cf\u0003\u01d0\u0003\u01d0\u0003\u01d0\u0003\u01d0",
- "\u0003\u01d0\u0003\u01d0\u0003\u01d0\u0003\u01d0\u0003\u01d0\u0003\u01d0",
- "\u0003\u01d0\u0003\u01d1\u0003\u01d1\u0003\u01d1\u0003\u01d1\u0003\u01d1",
- "\u0003\u01d1\u0003\u01d1\u0003\u01d1\u0003\u01d1\u0003\u01d1\u0003\u01d1",
- "\u0003\u01d2\u0003\u01d2\u0003\u01d2\u0003\u01d2\u0003\u01d2\u0003\u01d2",
- "\u0003\u01d2\u0003\u01d2\u0003\u01d2\u0003\u01d2\u0003\u01d2\u0003\u01d2",
- "\u0003\u01d2\u0003\u01d2\u0003\u01d2\u0003\u01d2\u0003\u01d2\u0003\u01d2",
- "\u0003\u01d2\u0003\u01d2\u0003\u01d2\u0003\u01d2\u0003\u01d2\u0003\u01d2",
- "\u0003\u01d2\u0003\u01d2\u0003\u01d3\u0003\u01d3\u0003\u01d3\u0003\u01d3",
- "\u0003\u01d3\u0003\u01d3\u0003\u01d3\u0003\u01d3\u0003\u01d3\u0003\u01d3",
- "\u0003\u01d3\u0003\u01d3\u0003\u01d3\u0003\u01d3\u0003\u01d3\u0003\u01d3",
- "\u0003\u01d3\u0003\u01d4\u0003\u01d4\u0003\u01d4\u0003\u01d4\u0003\u01d4",
- "\u0003\u01d4\u0003\u01d5\u0003\u01d5\u0003\u01d5\u0003\u01d5\u0003\u01d5",
- "\u0003\u01d5\u0003\u01d5\u0003\u01d5\u0003\u01d5\u0003\u01d5\u0003\u01d5",
- "\u0003\u01d5\u0003\u01d5\u0003\u01d5\u0003\u01d5\u0003\u01d5\u0003\u01d5",
- "\u0003\u01d5\u0003\u01d5\u0003\u01d6\u0003\u01d6\u0003\u01d6\u0003\u01d6",
- "\u0003\u01d6\u0003\u01d6\u0003\u01d6\u0003\u01d6\u0003\u01d7\u0003\u01d7",
- "\u0003\u01d7\u0003\u01d7\u0003\u01d7\u0003\u01d7\u0003\u01d7\u0003\u01d7",
- "\u0003\u01d7\u0003\u01d7\u0003\u01d7\u0003\u01d8\u0003\u01d8\u0003\u01d8",
- "\u0003\u01d8\u0003\u01d8\u0003\u01d8\u0003\u01d8\u0003\u01d8\u0003\u01d8",
- "\u0003\u01d8\u0003\u01d8\u0003\u01d9\u0003\u01d9\u0003\u01d9\u0003\u01d9",
- "\u0003\u01da\u0003\u01da\u0003\u01da\u0003\u01da\u0003\u01da\u0003\u01da",
- "\u0003\u01da\u0003\u01da\u0003\u01da\u0003\u01da\u0003\u01da\u0003\u01da",
- "\u0003\u01db\u0003\u01db\u0003\u01db\u0003\u01db\u0003\u01db\u0003\u01dc",
- "\u0003\u01dc\u0003\u01dc\u0003\u01dc\u0003\u01dc\u0003\u01dd\u0003\u01dd",
- "\u0003\u01dd\u0003\u01dd\u0003\u01dd\u0003\u01dd\u0003\u01dd\u0003\u01de",
- "\u0003\u01de\u0003\u01de\u0003\u01de\u0003\u01de\u0003\u01de\u0003\u01de",
- "\u0003\u01de\u0003\u01de\u0003\u01de\u0003\u01de\u0003\u01de\u0003\u01de",
- "\u0003\u01de\u0003\u01de\u0003\u01df\u0003\u01df\u0003\u01df\u0003\u01df",
- "\u0003\u01df\u0003\u01df\u0003\u01df\u0003\u01df\u0003\u01e0\u0003\u01e0",
- "\u0003\u01e0\u0003\u01e0\u0003\u01e0\u0003\u01e0\u0003\u01e0\u0003\u01e0",
- "\u0003\u01e0\u0003\u01e0\u0003\u01e0\u0003\u01e0\u0003\u01e0\u0003\u01e0",
- "\u0003\u01e0\u0003\u01e1\u0003\u01e1\u0003\u01e1\u0003\u01e1\u0003\u01e1",
- "\u0003\u01e1\u0003\u01e1\u0003\u01e1\u0003\u01e1\u0003\u01e2\u0003\u01e2",
- "\u0003\u01e2\u0003\u01e3\u0003\u01e3\u0003\u01e3\u0003\u01e3\u0003\u01e3",
- "\u0003\u01e3\u0003\u01e3\u0003\u01e3\u0003\u01e3\u0003\u01e4\u0003\u01e4",
- "\u0003\u01e4\u0003\u01e4\u0003\u01e4\u0003\u01e4\u0003\u01e4\u0003\u01e4",
- "\u0003\u01e5\u0003\u01e5\u0003\u01e5\u0003\u01e5\u0003\u01e5\u0003\u01e5",
- "\u0003\u01e5\u0003\u01e5\u0003\u01e5\u0003\u01e6\u0003\u01e6\u0003\u01e6",
- "\u0003\u01e6\u0003\u01e6\u0003\u01e6\u0003\u01e6\u0003\u01e6\u0003\u01e6",
- "\u0003\u01e6\u0003\u01e7\u0003\u01e7\u0003\u01e7\u0003\u01e7\u0003\u01e7",
- "\u0003\u01e7\u0003\u01e8\u0003\u01e8\u0003\u01e8\u0003\u01e8\u0003\u01e8",
- "\u0003\u01e8\u0003\u01e8\u0003\u01e9\u0003\u01e9\u0003\u01e9\u0003\u01e9",
- "\u0003\u01e9\u0003\u01e9\u0003\u01e9\u0003\u01e9\u0003\u01e9\u0003\u01e9",
- "\u0003\u01e9\u0003\u01e9\u0003\u01e9\u0003\u01e9\u0003\u01ea\u0003\u01ea",
- "\u0003\u01ea\u0003\u01ea\u0003\u01ea\u0003\u01ea\u0003\u01ea\u0003\u01ea",
- "\u0003\u01ea\u0003\u01ea\u0003\u01ea\u0003\u01ea\u0003\u01ea\u0003\u01ea",
- "\u0003\u01ea\u0003\u01ea\u0003\u01eb\u0003\u01eb\u0003\u01eb\u0003\u01eb",
- "\u0003\u01eb\u0003\u01eb\u0003\u01eb\u0003\u01eb\u0003\u01eb\u0003\u01eb",
- "\u0003\u01eb\u0003\u01ec\u0003\u01ec\u0003\u01ec\u0003\u01ec\u0003\u01ec",
- "\u0003\u01ec\u0003\u01ec\u0003\u01ec\u0003\u01ec\u0003\u01ec\u0003\u01ec",
- "\u0003\u01ec\u0003\u01ec\u0003\u01ed\u0003\u01ed\u0003\u01ed\u0003\u01ed",
- "\u0003\u01ed\u0003\u01ed\u0003\u01ed\u0003\u01ed\u0003\u01ed\u0003\u01ed",
- "\u0003\u01ed\u0003\u01ed\u0003\u01ed\u0003\u01ed\u0003\u01ed\u0003\u01ed",
- "\u0003\u01ed\u0003\u01ed\u0003\u01ed\u0003\u01ed\u0003\u01ed\u0003\u01ed",
- "\u0003\u01ed\u0003\u01ed\u0003\u01ed\u0003\u01ed\u0003\u01ed\u0003\u01ee",
- "\u0003\u01ee\u0003\u01ee\u0003\u01ee\u0003\u01ee\u0003\u01ee\u0003\u01ee",
- "\u0003\u01ee\u0003\u01ee\u0003\u01ee\u0003\u01ef\u0003\u01ef\u0003\u01ef",
- "\u0003\u01ef\u0003\u01ef\u0003\u01ef\u0003\u01ef\u0003\u01ef\u0003\u01ef",
- "\u0003\u01ef\u0003\u01ef\u0003\u01f0\u0003\u01f0\u0003\u01f0\u0003\u01f0",
- "\u0003\u01f0\u0003\u01f0\u0003\u01f1\u0003\u01f1\u0003\u01f1\u0003\u01f1",
- "\u0003\u01f1\u0003\u01f1\u0003\u01f1\u0003\u01f2\u0003\u01f2\u0003\u01f2",
- "\u0003\u01f2\u0003\u01f2\u0003\u01f2\u0003\u01f2\u0003\u01f2\u0003\u01f2",
- "\u0003\u01f2\u0003\u01f2\u0003\u01f2\u0003\u01f3\u0003\u01f3\u0003\u01f3",
- "\u0003\u01f3\u0003\u01f3\u0003\u01f3\u0003\u01f3\u0003\u01f3\u0003\u01f3",
- "\u0003\u01f4\u0003\u01f4\u0003\u01f4\u0003\u01f4\u0003\u01f4\u0003\u01f4",
- "\u0003\u01f4\u0003\u01f4\u0003\u01f4\u0003\u01f4\u0003\u01f4\u0003\u01f4",
- "\u0003\u01f4\u0003\u01f4\u0003\u01f4\u0003\u01f5\u0003\u01f5\u0003\u01f5",
- "\u0003\u01f5\u0003\u01f5\u0003\u01f5\u0003\u01f5\u0003\u01f5\u0003\u01f5",
- "\u0003\u01f5\u0003\u01f5\u0003\u01f5\u0003\u01f5\u0003\u01f5\u0003\u01f6",
- "\u0003\u01f6\u0003\u01f6\u0003\u01f6\u0003\u01f6\u0003\u01f6\u0003\u01f6",
- "\u0003\u01f6\u0003\u01f7\u0003\u01f7\u0003\u01f7\u0003\u01f7\u0003\u01f7",
- "\u0003\u01f7\u0003\u01f7\u0003\u01f7\u0003\u01f7\u0003\u01f7\u0003\u01f7",
- "\u0003\u01f7\u0003\u01f7\u0003\u01f7\u0003\u01f7\u0003\u01f7\u0003\u01f7",
- "\u0003\u01f7\u0003\u01f7\u0003\u01f7\u0003\u01f7\u0003\u01f7\u0003\u01f7",
- "\u0003\u01f7\u0003\u01f8\u0003\u01f8\u0003\u01f8\u0003\u01f8\u0003\u01f8",
- "\u0003\u01f9\u0003\u01f9\u0003\u01f9\u0003\u01f9\u0003\u01f9\u0003\u01f9",
- "\u0003\u01f9\u0003\u01f9\u0003\u01f9\u0003\u01f9\u0003\u01f9\u0003\u01f9",
- "\u0003\u01f9\u0003\u01fa\u0003\u01fa\u0003\u01fa\u0003\u01fa\u0003\u01fa",
- "\u0003\u01fa\u0003\u01fa\u0003\u01fa\u0003\u01fa\u0003\u01fa\u0003\u01fb",
- "\u0003\u01fb\u0003\u01fb\u0003\u01fb\u0003\u01fb\u0003\u01fb\u0003\u01fb",
- "\u0003\u01fb\u0003\u01fb\u0003\u01fb\u0003\u01fb\u0003\u01fc\u0003\u01fc",
- "\u0003\u01fc\u0003\u01fc\u0003\u01fc\u0003\u01fc\u0003\u01fc\u0003\u01fc",
- "\u0003\u01fc\u0003\u01fd\u0003\u01fd\u0003\u01fd\u0003\u01fd\u0003\u01fd",
- "\u0003\u01fd\u0003\u01fd\u0003\u01fd\u0003\u01fd\u0003\u01fd\u0003\u01fd",
- "\u0003\u01fe\u0003\u01fe\u0003\u01fe\u0003\u01fe\u0003\u01fe\u0003\u01fe",
- "\u0003\u01fe\u0003\u01ff\u0003\u01ff\u0003\u01ff\u0003\u01ff\u0003\u01ff",
- "\u0003\u01ff\u0003\u0200\u0003\u0200\u0003\u0200\u0003\u0200\u0003\u0200",
- "\u0003\u0200\u0003\u0200\u0003\u0200\u0003\u0200\u0003\u0200\u0003\u0200",
- "\u0003\u0200\u0003\u0201\u0003\u0201\u0003\u0201\u0003\u0201\u0003\u0201",
- "\u0003\u0201\u0003\u0201\u0003\u0201\u0003\u0201\u0003\u0201\u0003\u0202",
- "\u0003\u0202\u0003\u0202\u0003\u0202\u0003\u0202\u0003\u0202\u0003\u0203",
- "\u0003\u0203\u0003\u0203\u0003\u0203\u0003\u0203\u0003\u0203\u0003\u0203",
- "\u0003\u0203\u0003\u0203\u0003\u0203\u0003\u0203\u0003\u0203\u0003\u0203",
- "\u0003\u0203\u0003\u0203\u0003\u0203\u0003\u0203\u0003\u0203\u0003\u0203",
- "\u0003\u0203\u0003\u0203\u0003\u0203\u0003\u0203\u0003\u0203\u0003\u0203",
- "\u0003\u0203\u0003\u0203\u0003\u0203\u0003\u0203\u0003\u0203\u0003\u0203",
- "\u0003\u0204\u0003\u0204\u0003\u0204\u0003\u0204\u0003\u0204\u0003\u0204",
- "\u0003\u0204\u0003\u0205\u0003\u0205\u0003\u0205\u0003\u0205\u0003\u0205",
- "\u0003\u0205\u0003\u0205\u0003\u0206\u0003\u0206\u0003\u0206\u0003\u0206",
- "\u0003\u0206\u0003\u0206\u0003\u0206\u0003\u0206\u0003\u0206\u0003\u0206",
- "\u0003\u0206\u0003\u0206\u0003\u0206\u0003\u0207\u0003\u0207\u0003\u0207",
- "\u0003\u0207\u0003\u0207\u0003\u0207\u0003\u0207\u0003\u0207\u0003\u0207",
- "\u0003\u0208\u0003\u0208\u0003\u0208\u0003\u0208\u0003\u0208\u0003\u0208",
- "\u0003\u0208\u0003\u0208\u0003\u0208\u0003\u0209\u0003\u0209\u0003\u0209",
- "\u0003\u020a\u0003\u020a\u0003\u020a\u0003\u020a\u0003\u020a\u0003\u020a",
- "\u0003\u020a\u0003\u020a\u0003\u020b\u0003\u020b\u0003\u020b\u0003\u020b",
- "\u0003\u020b\u0003\u020b\u0003\u020b\u0003\u020b\u0003\u020b\u0003\u020b",
- "\u0003\u020b\u0003\u020c\u0003\u020c\u0003\u020c\u0003\u020c\u0003\u020c",
- "\u0003\u020c\u0003\u020c\u0003\u020d\u0003\u020d\u0003\u020d\u0003\u020e",
- "\u0003\u020e\u0003\u020e\u0003\u020e\u0003\u020e\u0003\u020e\u0003\u020e",
- "\u0003\u020e\u0003\u020e\u0003\u020e\u0003\u020e\u0003\u020e\u0003\u020e",
- "\u0003\u020e\u0003\u020e\u0003\u020e\u0003\u020e\u0003\u020e\u0003\u020e",
- "\u0003\u020f\u0003\u020f\u0003\u020f\u0003\u020f\u0003\u020f\u0003\u020f",
- "\u0003\u020f\u0003\u020f\u0003\u020f\u0003\u0210\u0003\u0210\u0003\u0210",
- "\u0003\u0210\u0003\u0210\u0003\u0210\u0003\u0210\u0003\u0210\u0003\u0210",
- "\u0003\u0210\u0003\u0210\u0003\u0210\u0003\u0211\u0003\u0211\u0003\u0211",
- "\u0003\u0211\u0003\u0211\u0003\u0212\u0003\u0212\u0003\u0212\u0003\u0212",
- "\u0003\u0212\u0003\u0213\u0003\u0213\u0003\u0213\u0003\u0213\u0003\u0213",
- "\u0003\u0213\u0003\u0213\u0003\u0213\u0003\u0213\u0003\u0213\u0003\u0213",
- "\u0003\u0213\u0003\u0213\u0003\u0213\u0003\u0213\u0003\u0213\u0003\u0213",
- "\u0003\u0213\u0003\u0213\u0003\u0213\u0003\u0213\u0003\u0214\u0003\u0214",
- "\u0003\u0214\u0003\u0214\u0003\u0214\u0003\u0215\u0003\u0215\u0003\u0215",
- "\u0003\u0215\u0003\u0215\u0003\u0215\u0003\u0215\u0003\u0215\u0003\u0215",
- "\u0003\u0215\u0003\u0215\u0003\u0215\u0003\u0215\u0003\u0215\u0003\u0215",
- "\u0003\u0215\u0003\u0215\u0003\u0215\u0003\u0215\u0003\u0215\u0003\u0215",
- "\u0003\u0215\u0003\u0216\u0003\u0216\u0003\u0216\u0003\u0216\u0003\u0216",
- "\u0003\u0216\u0003\u0217\u0003\u0217\u0003\u0217\u0003\u0217\u0003\u0217",
- "\u0003\u0217\u0003\u0217\u0003\u0217\u0003\u0217\u0003\u0217\u0003\u0217",
- "\u0003\u0217\u0003\u0217\u0003\u0217\u0003\u0217\u0003\u0218\u0003\u0218",
- "\u0003\u0218\u0003\u0218\u0003\u0218\u0003\u0218\u0003\u0218\u0003\u0218",
- "\u0003\u0218\u0003\u0218\u0003\u0218\u0003\u0218\u0003\u0218\u0003\u0218",
- "\u0003\u0218\u0003\u0218\u0003\u0218\u0003\u0218\u0003\u0218\u0003\u0218",
- "\u0003\u0218\u0003\u0218\u0003\u0218\u0003\u0218\u0003\u0218\u0003\u0218",
- "\u0003\u0218\u0003\u0218\u0003\u0218\u0003\u0218\u0003\u0218\u0003\u0218",
- "\u0003\u0218\u0003\u0218\u0003\u0218\u0003\u0218\u0003\u0218\u0003\u0218",
- "\u0003\u0219\u0003\u0219\u0003\u0219\u0003\u0219\u0003\u0219\u0003\u0219",
- "\u0003\u0219\u0003\u0219\u0003\u0219\u0003\u0219\u0003\u021a\u0003\u021a",
- "\u0003\u021a\u0003\u021a\u0003\u021a\u0003\u021a\u0003\u021a\u0003\u021a",
- "\u0003\u021a\u0003\u021a\u0003\u021a\u0003\u021a\u0003\u021b\u0003\u021b",
- "\u0003\u021b\u0003\u021b\u0003\u021b\u0003\u021b\u0003\u021b\u0003\u021b",
- "\u0003\u021b\u0003\u021b\u0003\u021b\u0003\u021c\u0003\u021c\u0003\u021c",
- "\u0003\u021c\u0003\u021c\u0003\u021c\u0003\u021c\u0003\u021c\u0003\u021c",
- "\u0003\u021c\u0003\u021c\u0003\u021c\u0003\u021c\u0003\u021c\u0003\u021c",
- "\u0003\u021c\u0003\u021c\u0003\u021c\u0003\u021c\u0003\u021c\u0003\u021d",
- "\u0003\u021d\u0003\u021d\u0003\u021d\u0003\u021d\u0003\u021d\u0003\u021d",
- "\u0003\u021d\u0003\u021d\u0003\u021d\u0003\u021d\u0003\u021d\u0003\u021e",
- "\u0003\u021e\u0003\u021e\u0003\u021e\u0003\u021e\u0003\u021e\u0003\u021e",
- "\u0003\u021e\u0003\u021e\u0003\u021e\u0003\u021f\u0003\u021f\u0003\u021f",
- "\u0003\u021f\u0003\u021f\u0003\u021f\u0003\u0220\u0003\u0220\u0003\u0220",
- "\u0003\u0220\u0003\u0220\u0003\u0220\u0003\u0220\u0003\u0220\u0003\u0220",
- "\u0003\u0220\u0003\u0220\u0003\u0220\u0003\u0221\u0003\u0221\u0003\u0221",
- "\u0003\u0221\u0003\u0221\u0003\u0221\u0003\u0221\u0003\u0221\u0003\u0221",
- "\u0003\u0222\u0003\u0222\u0003\u0222\u0003\u0222\u0003\u0223\u0003\u0223",
- "\u0003\u0223\u0003\u0224\u0003\u0224\u0003\u0224\u0003\u0224\u0003\u0224",
- "\u0003\u0224\u0003\u0224\u0003\u0224\u0003\u0224\u0003\u0224\u0003\u0225",
- "\u0003\u0225\u0003\u0225\u0003\u0225\u0003\u0226\u0003\u0226\u0003\u0226",
- "\u0003\u0226\u0003\u0226\u0003\u0227\u0003\u0227\u0003\u0227\u0003\u0228",
- "\u0003\u0228\u0003\u0228\u0003\u0228\u0003\u0228\u0003\u0229\u0003\u0229",
- "\u0003\u0229\u0003\u0229\u0003\u0229\u0003\u0229\u0003\u0229\u0003\u0229",
- "\u0003\u0229\u0003\u0229\u0003\u022a\u0003\u022a\u0003\u022a\u0003\u022a",
- "\u0003\u022a\u0003\u022a\u0003\u022a\u0003\u022a\u0003\u022a\u0003\u022a",
- "\u0003\u022a\u0003\u022b\u0003\u022b\u0003\u022b\u0003\u022b\u0003\u022b",
- "\u0003\u022c\u0003\u022c\u0003\u022c\u0003\u022c\u0003\u022c\u0003\u022c",
- "\u0003\u022c\u0003\u022d\u0003\u022d\u0003\u022d\u0003\u022d\u0003\u022e",
- "\u0003\u022e\u0003\u022e\u0003\u022e\u0003\u022e\u0003\u022f\u0003\u022f",
- "\u0003\u022f\u0003\u022f\u0003\u022f\u0003\u022f\u0003\u022f\u0003\u022f",
- "\u0003\u022f\u0003\u022f\u0003\u022f\u0003\u0230\u0003\u0230\u0003\u0230",
- "\u0003\u0230\u0003\u0230\u0003\u0231\u0003\u0231\u0003\u0231\u0003\u0231",
- "\u0003\u0231\u0003\u0231\u0003\u0232\u0003\u0232\u0003\u0232\u0003\u0232",
- "\u0003\u0232\u0003\u0233\u0003\u0233\u0003\u0233\u0003\u0233\u0003\u0233",
- "\u0003\u0233\u0003\u0233\u0003\u0233\u0003\u0233\u0003\u0234\u0003\u0234",
- "\u0003\u0234\u0003\u0234\u0003\u0234\u0003\u0234\u0003\u0234\u0003\u0234",
- "\u0003\u0234\u0003\u0234\u0003\u0234\u0003\u0234\u0003\u0234\u0003\u0235",
- "\u0003\u0235\u0003\u0235\u0003\u0235\u0003\u0235\u0003\u0235\u0003\u0235",
- "\u0003\u0235\u0003\u0235\u0003\u0235\u0003\u0235\u0003\u0235\u0003\u0235",
- "\u0003\u0235\u0003\u0235\u0003\u0236\u0003\u0236\u0003\u0236\u0003\u0236",
- "\u0003\u0236\u0003\u0236\u0003\u0237\u0003\u0237\u0003\u0237\u0003\u0237",
- "\u0003\u0237\u0003\u0237\u0003\u0237\u0003\u0237\u0003\u0237\u0003\u0238",
- "\u0003\u0238\u0003\u0238\u0003\u0238\u0003\u0238\u0003\u0239\u0003\u0239",
- "\u0003\u0239\u0003\u0239\u0003\u0239\u0003\u0239\u0003\u0239\u0003\u0239",
- "\u0003\u0239\u0003\u0239\u0003\u0239\u0003\u0239\u0003\u0239\u0003\u0239",
- "\u0003\u0239\u0003\u0239\u0003\u023a\u0003\u023a\u0003\u023a\u0003\u023a",
- "\u0003\u023a\u0003\u023a\u0003\u023b\u0003\u023b\u0003\u023b\u0003\u023b",
- "\u0003\u023b\u0003\u023c\u0003\u023c\u0003\u023c\u0003\u023c\u0003\u023d",
- "\u0003\u023d\u0003\u023d\u0003\u023d\u0003\u023d\u0003\u023d\u0003\u023d",
- "\u0003\u023e\u0003\u023e\u0003\u023e\u0003\u023e\u0003\u023e\u0003\u023f",
- "\u0003\u023f\u0003\u023f\u0003\u023f\u0003\u023f\u0003\u023f\u0003\u023f",
- "\u0003\u023f\u0003\u023f\u0003\u023f\u0003\u023f\u0003\u023f\u0003\u023f",
- "\u0003\u0240\u0003\u0240\u0003\u0240\u0003\u0240\u0003\u0241\u0003\u0241",
- "\u0003\u0241\u0003\u0241\u0003\u0241\u0003\u0241\u0003\u0241\u0003\u0241",
- "\u0003\u0241\u0003\u0241\u0003\u0241\u0003\u0241\u0003\u0241\u0003\u0241",
- "\u0003\u0241\u0003\u0241\u0003\u0242\u0003\u0242\u0003\u0242\u0003\u0242",
- "\u0003\u0242\u0003\u0242\u0003\u0242\u0003\u0242\u0003\u0243\u0003\u0243",
- "\u0003\u0243\u0003\u0243\u0003\u0243\u0003\u0243\u0003\u0243\u0003\u0243",
- "\u0003\u0243\u0003\u0243\u0003\u0244\u0003\u0244\u0003\u0244\u0003\u0244",
- "\u0003\u0244\u0003\u0244\u0003\u0244\u0003\u0244\u0003\u0244\u0003\u0244",
- "\u0003\u0244\u0003\u0244\u0003\u0244\u0003\u0244\u0003\u0244\u0003\u0244",
- "\u0003\u0244\u0003\u0244\u0003\u0244\u0003\u0244\u0003\u0245\u0003\u0245",
- "\u0003\u0245\u0003\u0245\u0003\u0245\u0003\u0245\u0003\u0245\u0003\u0245",
- "\u0003\u0245\u0003\u0245\u0003\u0245\u0003\u0245\u0003\u0245\u0003\u0245",
- "\u0003\u0245\u0003\u0245\u0003\u0245\u0003\u0245\u0003\u0245\u0003\u0246",
- "\u0003\u0246\u0003\u0246\u0003\u0246\u0003\u0246\u0003\u0246\u0003\u0246",
- "\u0003\u0246\u0003\u0246\u0003\u0246\u0003\u0246\u0003\u0246\u0003\u0246",
- "\u0003\u0246\u0003\u0247\u0003\u0247\u0003\u0247\u0003\u0247\u0003\u0247",
- "\u0003\u0247\u0003\u0247\u0003\u0247\u0003\u0247\u0003\u0247\u0003\u0247",
- "\u0003\u0247\u0003\u0247\u0003\u0247\u0003\u0247\u0003\u0247\u0003\u0247",
- "\u0003\u0247\u0003\u0248\u0003\u0248\u0003\u0248\u0003\u0248\u0003\u0248",
- "\u0003\u0248\u0003\u0248\u0003\u0248\u0003\u0248\u0003\u0248\u0003\u0248",
- "\u0003\u0248\u0003\u0248\u0003\u0248\u0003\u0248\u0003\u0248\u0003\u0248",
- "\u0003\u0248\u0003\u0248\u0003\u0249\u0003\u0249\u0003\u0249\u0003\u0249",
- "\u0003\u0249\u0003\u0249\u0003\u0249\u0003\u024a\u0003\u024a\u0003\u024a",
- "\u0003\u024a\u0003\u024a\u0003\u024a\u0003\u024a\u0003\u024a\u0003\u024a",
- "\u0003\u024a\u0003\u024a\u0003\u024a\u0003\u024a\u0003\u024b\u0003\u024b",
- "\u0003\u024b\u0003\u024b\u0003\u024b\u0003\u024b\u0003\u024b\u0003\u024b",
- "\u0003\u024c\u0003\u024c\u0003\u024c\u0003\u024d\u0003\u024d\u0003\u024d",
- "\u0003\u024d\u0003\u024d\u0003\u024d\u0003\u024d\u0003\u024e\u0003\u024e",
- "\u0003\u024e\u0003\u024e\u0003\u024e\u0003\u024e\u0003\u024e\u0003\u024e",
- "\u0003\u024e\u0003\u024e\u0003\u024e\u0003\u024e\u0003\u024e\u0003\u024e",
- "\u0003\u024e\u0003\u024e\u0003\u024e\u0003\u024e\u0003\u024e\u0003\u024e",
- "\u0003\u024e\u0003\u024e\u0003\u024f\u0003\u024f\u0003\u024f\u0003\u024f",
- "\u0003\u024f\u0003\u024f\u0003\u024f\u0003\u024f\u0003\u0250\u0003\u0250",
- "\u0003\u0250\u0003\u0250\u0003\u0251\u0003\u0251\u0003\u0251\u0003\u0251",
- "\u0003\u0251\u0003\u0251\u0003\u0251\u0003\u0251\u0003\u0251\u0003\u0251",
- "\u0003\u0251\u0003\u0251\u0003\u0251\u0003\u0251\u0003\u0251\u0003\u0251",
- "\u0003\u0251\u0003\u0251\u0003\u0251\u0003\u0251\u0003\u0251\u0003\u0251",
- "\u0003\u0252\u0003\u0252\u0003\u0252\u0003\u0252\u0003\u0252\u0003\u0252",
- "\u0003\u0252\u0003\u0252\u0003\u0252\u0003\u0252\u0003\u0252\u0003\u0252",
- "\u0003\u0252\u0003\u0252\u0003\u0252\u0003\u0252\u0003\u0253\u0003\u0253",
- "\u0003\u0253\u0003\u0253\u0003\u0253\u0003\u0253\u0003\u0253\u0003\u0253",
- "\u0003\u0253\u0003\u0253\u0003\u0253\u0003\u0253\u0003\u0253\u0003\u0253",
- "\u0003\u0253\u0003\u0253\u0003\u0253\u0003\u0253\u0003\u0253\u0003\u0253",
- "\u0003\u0254\u0003\u0254\u0003\u0254\u0003\u0254\u0003\u0254\u0003\u0254",
- "\u0003\u0254\u0003\u0254\u0003\u0254\u0003\u0254\u0003\u0254\u0003\u0254",
- "\u0003\u0254\u0003\u0254\u0003\u0254\u0003\u0254\u0003\u0254\u0003\u0254",
- "\u0003\u0254\u0003\u0255\u0003\u0255\u0003\u0255\u0003\u0255\u0003\u0255",
- "\u0003\u0255\u0003\u0255\u0003\u0255\u0003\u0256\u0003\u0256\u0003\u0256",
- "\u0003\u0256\u0003\u0256\u0003\u0256\u0003\u0256\u0003\u0256\u0003\u0256",
- "\u0003\u0256\u0003\u0256\u0003\u0256\u0003\u0256\u0003\u0256\u0003\u0256",
- "\u0003\u0257\u0003\u0257\u0003\u0257\u0003\u0257\u0003\u0257\u0003\u0257",
- "\u0003\u0257\u0003\u0257\u0003\u0257\u0003\u0257\u0003\u0257\u0003\u0257",
- "\u0003\u0257\u0003\u0257\u0003\u0257\u0003\u0257\u0003\u0257\u0003\u0257",
- "\u0003\u0257\u0003\u0257\u0003\u0257\u0003\u0257\u0003\u0258\u0003\u0258",
- "\u0003\u0258\u0003\u0258\u0003\u0258\u0003\u0259\u0003\u0259\u0003\u0259",
- "\u0003\u0259\u0003\u0259\u0003\u0259\u0003\u0259\u0003\u025a\u0003\u025a",
- "\u0003\u025a\u0003\u025a\u0003\u025a\u0003\u025b\u0003\u025b\u0003\u025b",
- "\u0003\u025b\u0003\u025b\u0003\u025b\u0003\u025b\u0003\u025b\u0003\u025b",
- "\u0003\u025b\u0003\u025b\u0003\u025c\u0003\u025c\u0003\u025c\u0003\u025c",
- "\u0003\u025c\u0003\u025d\u0003\u025d\u0003\u025d\u0003\u025d\u0003\u025d",
- "\u0003\u025d\u0003\u025d\u0003\u025d\u0003\u025d\u0003\u025d\u0003\u025d",
- "\u0003\u025d\u0003\u025d\u0003\u025d\u0003\u025d\u0003\u025d\u0003\u025e",
- "\u0003\u025e\u0003\u025e\u0003\u025e\u0003\u025e\u0003\u025e\u0003\u025e",
- "\u0003\u025e\u0003\u025e\u0003\u025e\u0003\u025e\u0003\u025e\u0003\u025f",
- "\u0003\u025f\u0003\u025f\u0003\u025f\u0003\u025f\u0003\u025f\u0003\u025f",
- "\u0003\u025f\u0003\u025f\u0003\u025f\u0003\u025f\u0003\u0260\u0003\u0260",
- "\u0003\u0260\u0003\u0260\u0003\u0260\u0003\u0260\u0003\u0260\u0003\u0260",
- "\u0003\u0260\u0003\u0260\u0003\u0260\u0003\u0260\u0003\u0260\u0003\u0261",
- "\u0003\u0261\u0003\u0261\u0003\u0261\u0003\u0261\u0003\u0262\u0003\u0262",
- "\u0003\u0262\u0003\u0263\u0003\u0263\u0003\u0263\u0003\u0263\u0003\u0263",
- "\u0003\u0263\u0003\u0263\u0003\u0263\u0003\u0263\u0003\u0263\u0003\u0263",
- "\u0003\u0263\u0003\u0264\u0003\u0264\u0003\u0264\u0003\u0264\u0003\u0264",
- "\u0003\u0264\u0003\u0264\u0003\u0264\u0003\u0265\u0003\u0265\u0003\u0265",
- "\u0003\u0265\u0003\u0265\u0003\u0265\u0003\u0265\u0003\u0265\u0003\u0266",
- "\u0003\u0266\u0003\u0266\u0003\u0266\u0003\u0266\u0003\u0266\u0003\u0267",
- "\u0003\u0267\u0003\u0267\u0003\u0267\u0003\u0267\u0003\u0267\u0003\u0267",
- "\u0003\u0267\u0003\u0267\u0003\u0268\u0003\u0268\u0003\u0268\u0003\u0268",
- "\u0003\u0268\u0003\u0268\u0003\u0268\u0003\u0268\u0003\u0268\u0003\u0268",
- "\u0003\u0268\u0003\u0268\u0003\u0268\u0003\u0268\u0003\u0268\u0003\u0268",
- "\u0003\u0268\u0003\u0268\u0003\u0268\u0003\u0268\u0003\u0268\u0003\u0268",
- "\u0003\u0269\u0003\u0269\u0003\u0269\u0003\u0269\u0003\u0269\u0003\u0269",
- "\u0003\u0269\u0003\u0269\u0003\u0269\u0003\u0269\u0003\u0269\u0003\u0269",
- "\u0003\u026a\u0003\u026a\u0003\u026a\u0003\u026a\u0003\u026a\u0003\u026a",
- "\u0003\u026a\u0003\u026a\u0003\u026a\u0003\u026a\u0003\u026a\u0003\u026b",
- "\u0003\u026b\u0003\u026b\u0003\u026b\u0003\u026b\u0003\u026b\u0003\u026b",
- "\u0003\u026c\u0003\u026c\u0003\u026c\u0003\u026c\u0003\u026c\u0003\u026c",
- "\u0003\u026d\u0003\u026d\u0003\u026d\u0003\u026d\u0003\u026d\u0003\u026d",
- "\u0003\u026d\u0003\u026d\u0003\u026d\u0003\u026e\u0003\u026e\u0003\u026e",
- "\u0003\u026e\u0003\u026e\u0003\u026e\u0003\u026e\u0003\u026f\u0003\u026f",
- "\u0003\u026f\u0003\u026f\u0003\u026f\u0003\u026f\u0003\u026f\u0003\u026f",
- "\u0003\u026f\u0003\u026f\u0003\u026f\u0003\u026f\u0003\u026f\u0003\u026f",
- "\u0003\u026f\u0003\u026f\u0003\u026f\u0003\u026f\u0003\u026f\u0003\u0270",
- "\u0003\u0270\u0003\u0270\u0003\u0270\u0003\u0270\u0003\u0270\u0003\u0270",
- "\u0003\u0271\u0003\u0271\u0003\u0271\u0003\u0271\u0003\u0271\u0003\u0271",
- "\u0003\u0271\u0003\u0271\u0003\u0272\u0003\u0272\u0003\u0272\u0003\u0272",
- "\u0003\u0272\u0003\u0272\u0003\u0272\u0003\u0273\u0003\u0273\u0003\u0273",
- "\u0003\u0273\u0003\u0273\u0003\u0273\u0003\u0273\u0003\u0273\u0003\u0273",
- "\u0003\u0273\u0003\u0273\u0003\u0273\u0003\u0274\u0003\u0274\u0003\u0274",
- "\u0003\u0274\u0003\u0274\u0003\u0274\u0003\u0274\u0003\u0275\u0003\u0275",
- "\u0003\u0275\u0003\u0275\u0003\u0275\u0003\u0276\u0003\u0276\u0003\u0276",
- "\u0003\u0276\u0003\u0276\u0003\u0276\u0003\u0276\u0003\u0276\u0003\u0276",
- "\u0003\u0276\u0003\u0276\u0003\u0276\u0003\u0276\u0003\u0276\u0003\u0277",
- "\u0003\u0277\u0003\u0277\u0003\u0277\u0003\u0277\u0003\u0277\u0003\u0277",
- "\u0003\u0277\u0003\u0277\u0003\u0277\u0003\u0277\u0003\u0278\u0003\u0278",
- "\u0003\u0278\u0003\u0278\u0003\u0278\u0003\u0278\u0003\u0278\u0003\u0278",
- "\u0003\u0278\u0003\u0279\u0003\u0279\u0003\u0279\u0003\u0279\u0003\u027a",
- "\u0003\u027a\u0003\u027a\u0003\u027a\u0003\u027a\u0003\u027a\u0003\u027a",
- "\u0003\u027b\u0003\u027b\u0003\u027b\u0003\u027b\u0003\u027b\u0003\u027b",
- "\u0003\u027b\u0003\u027b\u0003\u027b\u0003\u027c\u0003\u027c\u0003\u027c",
- "\u0003\u027c\u0003\u027c\u0003\u027c\u0003\u027d\u0003\u027d\u0003\u027d",
- "\u0003\u027d\u0003\u027d\u0003\u027d\u0003\u027d\u0003\u027d\u0003\u027d",
- "\u0003\u027d\u0003\u027d\u0003\u027d\u0003\u027e\u0003\u027e\u0003\u027e",
- "\u0003\u027e\u0003\u027e\u0003\u027e\u0003\u027e\u0003\u027e\u0003\u027e",
- "\u0003\u027e\u0003\u027e\u0003\u027e\u0003\u027e\u0003\u027e\u0003\u027e",
- "\u0003\u027e\u0003\u027e\u0003\u027f\u0003\u027f\u0003\u027f\u0003\u027f",
- "\u0003\u027f\u0003\u027f\u0003\u027f\u0003\u027f\u0003\u027f\u0003\u027f",
- "\u0003\u0280\u0003\u0280\u0003\u0280\u0003\u0280\u0003\u0280\u0003\u0280",
- "\u0003\u0280\u0003\u0280\u0003\u0280\u0003\u0280\u0003\u0280\u0003\u0281",
- "\u0003\u0281\u0003\u0281\u0003\u0281\u0003\u0281\u0003\u0281\u0003\u0281",
- "\u0003\u0281\u0003\u0282\u0003\u0282\u0003\u0282\u0003\u0282\u0003\u0282",
- "\u0003\u0283\u0003\u0283\u0003\u0283\u0003\u0283\u0003\u0283\u0003\u0283",
- "\u0003\u0283\u0003\u0283\u0003\u0283\u0003\u0283\u0003\u0283\u0003\u0283",
- "\u0003\u0283\u0003\u0283\u0003\u0283\u0003\u0283\u0003\u0283\u0003\u0283",
- "\u0003\u0283\u0003\u0283\u0003\u0283\u0003\u0283\u0003\u0283\u0003\u0283",
- "\u0003\u0284\u0003\u0284\u0003\u0284\u0003\u0284\u0003\u0284\u0003\u0285",
- "\u0003\u0285\u0003\u0285\u0003\u0285\u0003\u0285\u0003\u0286\u0003\u0286",
- "\u0003\u0286\u0003\u0286\u0003\u0286\u0003\u0286\u0003\u0286\u0003\u0286",
- "\u0003\u0286\u0003\u0286\u0003\u0287\u0003\u0287\u0003\u0287\u0003\u0287",
- "\u0003\u0287\u0003\u0287\u0003\u0287\u0003\u0287\u0003\u0287\u0003\u0287",
- "\u0003\u0287\u0003\u0287\u0003\u0287\u0003\u0288\u0003\u0288\u0003\u0288",
- "\u0003\u0288\u0003\u0288\u0003\u0288\u0003\u0289\u0003\u0289\u0003\u0289",
- "\u0003\u0289\u0003\u0289\u0003\u0289\u0003\u0289\u0003\u0289\u0003\u0289",
- "\u0003\u028a\u0003\u028a\u0003\u028a\u0003\u028a\u0003\u028a\u0003\u028a",
- "\u0003\u028a\u0003\u028a\u0003\u028a\u0003\u028a\u0003\u028a\u0003\u028a",
- "\u0003\u028a\u0003\u028a\u0003\u028a\u0003\u028b\u0003\u028b\u0003\u028b",
- "\u0003\u028b\u0003\u028b\u0003\u028b\u0003\u028b\u0003\u028b\u0003\u028c",
- "\u0003\u028c\u0003\u028c\u0003\u028c\u0003\u028c\u0003\u028c\u0003\u028c",
- "\u0003\u028c\u0003\u028c\u0003\u028c\u0003\u028c\u0003\u028c\u0003\u028d",
- "\u0003\u028d\u0003\u028d\u0003\u028d\u0003\u028d\u0003\u028d\u0003\u028d",
- "\u0003\u028d\u0003\u028d\u0003\u028d\u0003\u028d\u0003\u028e\u0003\u028e",
- "\u0003\u028e\u0003\u028e\u0003\u028e\u0003\u028e\u0003\u028e\u0003\u028e",
- "\u0003\u028e\u0003\u028e\u0003\u028e\u0003\u028e\u0003\u028e\u0003\u028e",
- "\u0003\u028e\u0003\u028f\u0003\u028f\u0003\u028f\u0003\u028f\u0003\u028f",
- "\u0003\u028f\u0003\u028f\u0003\u028f\u0003\u028f\u0003\u0290\u0003\u0290",
- "\u0003\u0290\u0003\u0290\u0003\u0290\u0003\u0290\u0003\u0290\u0003\u0290",
- "\u0003\u0290\u0003\u0291\u0003\u0291\u0003\u0291\u0003\u0291\u0003\u0291",
- "\u0003\u0291\u0003\u0291\u0003\u0291\u0003\u0291\u0003\u0291\u0003\u0291",
- "\u0003\u0291\u0003\u0291\u0003\u0291\u0003\u0291\u0003\u0291\u0003\u0291",
- "\u0003\u0291\u0003\u0292\u0003\u0292\u0003\u0292\u0003\u0292\u0003\u0292",
- "\u0003\u0292\u0003\u0293\u0003\u0293\u0003\u0293\u0003\u0293\u0003\u0293",
- "\u0003\u0293\u0003\u0294\u0003\u0294\u0003\u0294\u0003\u0294\u0003\u0294",
- "\u0003\u0294\u0003\u0294\u0003\u0294\u0003\u0294\u0003\u0294\u0003\u0294",
- "\u0003\u0294\u0003\u0295\u0003\u0295\u0003\u0295\u0003\u0295\u0003\u0295",
- "\u0003\u0295\u0003\u0295\u0003\u0295\u0003\u0295\u0003\u0295\u0003\u0295",
- "\u0003\u0295\u0003\u0295\u0003\u0295\u0003\u0295\u0003\u0295\u0003\u0295",
- "\u0003\u0295\u0003\u0296\u0003\u0296\u0003\u0296\u0003\u0296\u0003\u0296",
- "\u0003\u0296\u0003\u0297\u0003\u0297\u0003\u0297\u0003\u0297\u0003\u0297",
- "\u0003\u0298\u0003\u0298\u0003\u0298\u0003\u0298\u0003\u0299\u0003\u0299",
- "\u0003\u0299\u0003\u0299\u0003\u029a\u0003\u029a\u0003\u029a\u0003\u029a",
- "\u0003\u029a\u0003\u029a\u0003\u029a\u0003\u029a\u0003\u029b\u0003\u029b",
- "\u0003\u029b\u0003\u029b\u0003\u029b\u0003\u029b\u0003\u029b\u0003\u029b",
- "\u0003\u029b\u0003\u029b\u0003\u029b\u0003\u029b\u0003\u029b\u0003\u029b",
- "\u0003\u029b\u0003\u029b\u0003\u029b\u0003\u029b\u0003\u029b\u0003\u029b",
- "\u0003\u029b\u0003\u029b\u0003\u029b\u0003\u029b\u0003\u029c\u0003\u029c",
- "\u0003\u029c\u0003\u029c\u0003\u029c\u0003\u029c\u0003\u029c\u0003\u029c",
- "\u0003\u029c\u0003\u029c\u0003\u029d\u0003\u029d\u0003\u029d\u0003\u029d",
- "\u0003\u029d\u0003\u029d\u0003\u029d\u0003\u029d\u0003\u029d\u0003\u029d",
- "\u0003\u029d\u0003\u029d\u0003\u029d\u0003\u029d\u0003\u029d\u0003\u029d",
- "\u0003\u029d\u0003\u029d\u0003\u029d\u0003\u029d\u0003\u029d\u0003\u029d",
- "\u0003\u029d\u0003\u029e\u0003\u029e\u0003\u029e\u0003\u029e\u0003\u029e",
- "\u0003\u029e\u0003\u029e\u0003\u029e\u0003\u029e\u0003\u029e\u0003\u029e",
- "\u0003\u029f\u0003\u029f\u0003\u029f\u0003\u029f\u0003\u029f\u0003\u029f",
- "\u0003\u029f\u0003\u029f\u0003\u029f\u0003\u02a0\u0003\u02a0\u0003\u02a0",
- "\u0003\u02a0\u0003\u02a0\u0003\u02a0\u0003\u02a0\u0003\u02a0\u0003\u02a1",
- "\u0003\u02a1\u0003\u02a1\u0003\u02a1\u0003\u02a1\u0003\u02a1\u0003\u02a1",
- "\u0003\u02a1\u0003\u02a2\u0003\u02a2\u0003\u02a2\u0003\u02a2\u0003\u02a2",
- "\u0003\u02a2\u0003\u02a2\u0003\u02a2\u0003\u02a2\u0003\u02a2\u0003\u02a3",
- "\u0003\u02a3\u0003\u02a3\u0003\u02a3\u0003\u02a3\u0003\u02a3\u0003\u02a3",
- "\u0003\u02a3\u0003\u02a3\u0003\u02a4\u0003\u02a4\u0003\u02a4\u0003\u02a4",
- "\u0003\u02a4\u0003\u02a4\u0003\u02a4\u0003\u02a4\u0003\u02a4\u0003\u02a4",
- "\u0003\u02a4\u0003\u02a4\u0003\u02a4\u0003\u02a4\u0003\u02a4\u0003\u02a4",
- "\u0003\u02a4\u0003\u02a4\u0003\u02a4\u0003\u02a5\u0003\u02a5\u0003\u02a5",
- "\u0003\u02a5\u0003\u02a5\u0003\u02a5\u0003\u02a5\u0003\u02a5\u0003\u02a5",
- "\u0003\u02a6\u0003\u02a6\u0003\u02a6\u0003\u02a6\u0003\u02a6\u0003\u02a6",
- "\u0003\u02a6\u0003\u02a7\u0003\u02a7\u0003\u02a7\u0003\u02a7\u0003\u02a7",
- "\u0003\u02a7\u0003\u02a7\u0003\u02a7\u0003\u02a7\u0003\u02a7\u0003\u02a7",
- "\u0003\u02a7\u0003\u02a7\u0003\u02a7\u0003\u02a7\u0003\u02a7\u0003\u02a7",
- "\u0003\u02a7\u0003\u02a7\u0003\u02a7\u0003\u02a8\u0003\u02a8\u0003\u02a8",
- "\u0003\u02a8\u0003\u02a8\u0003\u02a8\u0003\u02a8\u0003\u02a9\u0003\u02a9",
- "\u0003\u02a9\u0003\u02a9\u0003\u02a9\u0003\u02a9\u0003\u02a9\u0003\u02a9",
- "\u0003\u02a9\u0003\u02a9\u0003\u02a9\u0003\u02aa\u0003\u02aa\u0003\u02aa",
- "\u0003\u02aa\u0003\u02aa\u0003\u02aa\u0003\u02aa\u0003\u02aa\u0003\u02aa",
- "\u0003\u02aa\u0003\u02aa\u0003\u02ab\u0003\u02ab\u0003\u02ab\u0003\u02ab",
- "\u0003\u02ab\u0003\u02ab\u0003\u02ab\u0003\u02ab\u0003\u02ac\u0003\u02ac",
- "\u0003\u02ac\u0003\u02ac\u0003\u02ac\u0003\u02ac\u0003\u02ac\u0003\u02ac",
- "\u0003\u02ac\u0003\u02ac\u0003\u02ac\u0003\u02ac\u0003\u02ac\u0003\u02ac",
- "\u0003\u02ac\u0003\u02ac\u0003\u02ac\u0003\u02ac\u0003\u02ac\u0003\u02ac",
- "\u0003\u02ac\u0003\u02ac\u0003\u02ac\u0003\u02ac\u0003\u02ac\u0003\u02ad",
- "\u0003\u02ad\u0003\u02ad\u0003\u02ad\u0003\u02ad\u0003\u02ad\u0003\u02ad",
- "\u0003\u02ad\u0003\u02ad\u0003\u02ad\u0003\u02ad\u0003\u02ad\u0003\u02ad",
- "\u0003\u02ad\u0003\u02ad\u0003\u02ad\u0003\u02ad\u0003\u02ad\u0003\u02ad",
- "\u0003\u02ad\u0003\u02ad\u0003\u02ad\u0003\u02ad\u0003\u02ad\u0003\u02ad",
- "\u0003\u02ad\u0003\u02ad\u0003\u02ad\u0003\u02ad\u0003\u02ad\u0003\u02ad",
- "\u0003\u02ad\u0003\u02ad\u0003\u02ae\u0003\u02ae\u0003\u02ae\u0003\u02ae",
- "\u0003\u02ae\u0003\u02ae\u0003\u02ae\u0003\u02ae\u0003\u02ae\u0003\u02ae",
- "\u0003\u02ae\u0003\u02ae\u0003\u02ae\u0003\u02ae\u0003\u02ae\u0003\u02ae",
- "\u0003\u02ae\u0003\u02ae\u0003\u02ae\u0003\u02ae\u0003\u02ae\u0003\u02ae",
- "\u0003\u02ae\u0003\u02ae\u0003\u02ae\u0003\u02ae\u0003\u02ae\u0003\u02ae",
- "\u0003\u02ae\u0003\u02ae\u0003\u02ae\u0003\u02ae\u0003\u02ae\u0003\u02af",
- "\u0003\u02af\u0003\u02af\u0003\u02af\u0003\u02af\u0003\u02af\u0003\u02af",
- "\u0003\u02af\u0003\u02af\u0003\u02af\u0003\u02af\u0003\u02af\u0003\u02af",
- "\u0003\u02af\u0003\u02af\u0003\u02af\u0003\u02af\u0003\u02af\u0003\u02af",
- "\u0003\u02af\u0003\u02af\u0003\u02af\u0003\u02af\u0003\u02af\u0003\u02af",
- "\u0003\u02af\u0003\u02af\u0003\u02af\u0003\u02af\u0003\u02af\u0003\u02af",
- "\u0003\u02af\u0003\u02af\u0003\u02af\u0003\u02af\u0003\u02af\u0003\u02af",
- "\u0003\u02af\u0003\u02af\u0003\u02af\u0003\u02af\u0003\u02af\u0003\u02af",
- "\u0003\u02af\u0003\u02b0\u0003\u02b0\u0003\u02b0\u0003\u02b0\u0003\u02b0",
- "\u0003\u02b0\u0003\u02b0\u0003\u02b0\u0003\u02b0\u0003\u02b0\u0003\u02b0",
- "\u0003\u02b0\u0003\u02b0\u0003\u02b0\u0003\u02b0\u0003\u02b0\u0003\u02b0",
- "\u0003\u02b0\u0003\u02b0\u0003\u02b1\u0003\u02b1\u0003\u02b1\u0003\u02b1",
- "\u0003\u02b1\u0003\u02b1\u0003\u02b1\u0003\u02b1\u0003\u02b1\u0003\u02b2",
- "\u0003\u02b2\u0003\u02b2\u0003\u02b2\u0003\u02b2\u0003\u02b2\u0003\u02b2",
- "\u0003\u02b2\u0003\u02b2\u0003\u02b2\u0003\u02b2\u0003\u02b2\u0003\u02b2",
- "\u0003\u02b2\u0003\u02b2\u0003\u02b2\u0003\u02b2\u0003\u02b2\u0003\u02b2",
- "\u0003\u02b2\u0003\u02b2\u0003\u02b2\u0003\u02b2\u0003\u02b2\u0003\u02b2",
- "\u0003\u02b2\u0003\u02b3\u0003\u02b3\u0003\u02b3\u0003\u02b3\u0003\u02b3",
- "\u0003\u02b3\u0003\u02b3\u0003\u02b3\u0003\u02b3\u0003\u02b3\u0003\u02b3",
- "\u0003\u02b3\u0003\u02b3\u0003\u02b3\u0003\u02b3\u0003\u02b3\u0003\u02b4",
- "\u0003\u02b4\u0003\u02b4\u0003\u02b4\u0003\u02b4\u0003\u02b4\u0003\u02b4",
- "\u0003\u02b4\u0003\u02b4\u0003\u02b4\u0003\u02b5\u0003\u02b5\u0003\u02b5",
- "\u0003\u02b5\u0003\u02b5\u0003\u02b5\u0003\u02b5\u0003\u02b6\u0003\u02b6",
- "\u0003\u02b6\u0003\u02b6\u0003\u02b6\u0003\u02b7\u0003\u02b7\u0003\u02b7",
- "\u0003\u02b7\u0003\u02b7\u0003\u02b7\u0003\u02b8\u0003\u02b8\u0003\u02b8",
- "\u0003\u02b8\u0003\u02b9\u0003\u02b9\u0003\u02b9\u0003\u02b9\u0003\u02b9",
- "\u0003\u02b9\u0003\u02b9\u0003\u02b9\u0003\u02b9\u0003\u02b9\u0003\u02b9",
- "\u0003\u02ba\u0003\u02ba\u0003\u02ba\u0003\u02ba\u0003\u02ba\u0003\u02ba",
- "\u0003\u02ba\u0003\u02ba\u0003\u02bb\u0003\u02bb\u0003\u02bb\u0003\u02bb",
- "\u0003\u02bb\u0003\u02bc\u0003\u02bc\u0003\u02bc\u0003\u02bc\u0003\u02bc",
- "\u0003\u02bc\u0003\u02bc\u0003\u02bd\u0003\u02bd\u0003\u02bd\u0003\u02bd",
- "\u0003\u02bd\u0003\u02bd\u0003\u02bd\u0003\u02bd\u0003\u02bd\u0003\u02bd",
- "\u0003\u02bd\u0003\u02bd\u0003\u02bd\u0003\u02bd\u0003\u02be\u0003\u02be",
- "\u0003\u02be\u0003\u02be\u0003\u02be\u0003\u02be\u0003\u02be\u0003\u02bf",
- "\u0003\u02bf\u0003\u02bf\u0003\u02bf\u0003\u02bf\u0003\u02bf\u0003\u02bf",
- "\u0003\u02c0\u0003\u02c0\u0003\u02c0\u0003\u02c0\u0003\u02c0\u0003\u02c0",
- "\u0003\u02c0\u0003\u02c0\u0003\u02c0\u0003\u02c0\u0003\u02c0\u0003\u02c0",
- "\u0003\u02c0\u0003\u02c1\u0003\u02c1\u0003\u02c1\u0003\u02c1\u0003\u02c1",
- "\u0003\u02c1\u0003\u02c1\u0003\u02c2\u0003\u02c2\u0003\u02c2\u0003\u02c2",
- "\u0003\u02c2\u0003\u02c2\u0003\u02c2\u0003\u02c2\u0003\u02c2\u0003\u02c2",
- "\u0003\u02c3\u0003\u02c3\u0003\u02c3\u0003\u02c3\u0003\u02c3\u0003\u02c3",
- "\u0003\u02c3\u0003\u02c3\u0003\u02c3\u0003\u02c3\u0003\u02c3\u0003\u02c3",
- "\u0003\u02c3\u0003\u02c3\u0003\u02c3\u0003\u02c4\u0003\u02c4\u0003\u02c4",
- "\u0003\u02c4\u0003\u02c4\u0003\u02c4\u0003\u02c4\u0003\u02c4\u0003\u02c4",
- "\u0003\u02c4\u0003\u02c4\u0003\u02c4\u0003\u02c4\u0003\u02c4\u0003\u02c4",
- "\u0003\u02c5\u0003\u02c5\u0003\u02c5\u0003\u02c5\u0003\u02c5\u0003\u02c5",
- "\u0003\u02c5\u0003\u02c5\u0003\u02c6\u0003\u02c6\u0003\u02c6\u0003\u02c6",
- "\u0003\u02c6\u0003\u02c6\u0003\u02c6\u0003\u02c7\u0003\u02c7\u0003\u02c7",
- "\u0003\u02c7\u0003\u02c7\u0003\u02c7\u0003\u02c7\u0003\u02c7\u0003\u02c7",
- "\u0003\u02c8\u0003\u02c8\u0003\u02c8\u0003\u02c8\u0003\u02c8\u0003\u02c8",
- "\u0003\u02c8\u0003\u02c8\u0003\u02c8\u0003\u02c8\u0003\u02c8\u0003\u02c8",
- "\u0003\u02c8\u0003\u02c9\u0003\u02c9\u0003\u02c9\u0003\u02c9\u0003\u02c9",
- "\u0003\u02c9\u0003\u02c9\u0003\u02c9\u0003\u02c9\u0003\u02c9\u0003\u02c9",
- "\u0003\u02c9\u0003\u02c9\u0003\u02ca\u0003\u02ca\u0003\u02ca\u0003\u02ca",
- "\u0003\u02ca\u0003\u02cb\u0003\u02cb\u0003\u02cb\u0003\u02cb\u0003\u02cb",
- "\u0003\u02cb\u0003\u02cb\u0003\u02cb\u0003\u02cb\u0003\u02cb\u0003\u02cb",
- "\u0003\u02cb\u0003\u02cb\u0003\u02cb\u0003\u02cb\u0003\u02cc\u0003\u02cc",
- "\u0003\u02cc\u0003\u02cc\u0003\u02cc\u0003\u02cd\u0003\u02cd\u0003\u02cd",
- "\u0003\u02cd\u0003\u02cd\u0003\u02ce\u0003\u02ce\u0003\u02ce\u0003\u02ce",
- "\u0003\u02ce\u0003\u02ce\u0003\u02ce\u0003\u02ce\u0003\u02ce\u0003\u02cf",
- "\u0003\u02cf\u0003\u02cf\u0003\u02cf\u0003\u02cf\u0003\u02cf\u0003\u02cf",
- "\u0003\u02cf\u0003\u02cf\u0003\u02cf\u0003\u02cf\u0003\u02cf\u0003\u02cf",
- "\u0003\u02d0\u0003\u02d0\u0003\u02d0\u0003\u02d0\u0003\u02d0\u0003\u02d0",
- "\u0003\u02d0\u0003\u02d0\u0003\u02d0\u0003\u02d0\u0003\u02d0\u0003\u02d0",
- "\u0003\u02d0\u0003\u02d0\u0003\u02d0\u0003\u02d0\u0003\u02d1\u0003\u02d1",
- "\u0003\u02d1\u0003\u02d1\u0003\u02d1\u0003\u02d1\u0003\u02d1\u0003\u02d1",
- "\u0003\u02d1\u0003\u02d2\u0003\u02d2\u0003\u02d2\u0003\u02d2\u0003\u02d2",
- "\u0003\u02d2\u0003\u02d3\u0003\u02d3\u0003\u02d3\u0003\u02d3\u0003\u02d3",
- "\u0003\u02d3\u0003\u02d3\u0003\u02d3\u0003\u02d3\u0003\u02d4\u0003\u02d4",
- "\u0003\u02d4\u0003\u02d4\u0003\u02d4\u0003\u02d4\u0003\u02d4\u0003\u02d4",
- "\u0003\u02d4\u0003\u02d4\u0003\u02d5\u0003\u02d5\u0003\u02d5\u0003\u02d5",
- "\u0003\u02d5\u0003\u02d5\u0003\u02d5\u0003\u02d6\u0003\u02d6\u0003\u02d6",
- "\u0003\u02d6\u0003\u02d6\u0003\u02d6\u0003\u02d6\u0003\u02d6\u0003\u02d6",
- "\u0003\u02d6\u0003\u02d6\u0003\u02d6\u0003\u02d7\u0003\u02d7\u0003\u02d7",
- "\u0003\u02d7\u0003\u02d7\u0003\u02d8\u0003\u02d8\u0003\u02d8\u0003\u02d8",
- "\u0003\u02d8\u0003\u02d8\u0003\u02d8\u0003\u02d8\u0003\u02d8\u0003\u02d9",
- "\u0003\u02d9\u0003\u02d9\u0003\u02d9\u0003\u02d9\u0003\u02d9\u0003\u02d9",
- "\u0003\u02d9\u0003\u02d9\u0003\u02da\u0003\u02da\u0003\u02da\u0003\u02da",
- "\u0003\u02da\u0003\u02da\u0003\u02da\u0003\u02da\u0003\u02da\u0003\u02da",
- "\u0003\u02da\u0003\u02da\u0003\u02da\u0003\u02da\u0003\u02da\u0003\u02da",
- "\u0003\u02da\u0003\u02da\u0003\u02da\u0003\u02da\u0003\u02da\u0003\u02da",
- "\u0003\u02da\u0003\u02da\u0003\u02da\u0003\u02db\u0003\u02db\u0003\u02db",
- "\u0003\u02db\u0003\u02db\u0003\u02db\u0003\u02db\u0003\u02db\u0003\u02dc",
- "\u0003\u02dc\u0003\u02dc\u0003\u02dc\u0003\u02dc\u0003\u02dc\u0003\u02dc",
- "\u0003\u02dc\u0003\u02dc\u0003\u02dc\u0003\u02dc\u0003\u02dd\u0003\u02dd",
- "\u0003\u02dd\u0003\u02dd\u0003\u02dd\u0003\u02dd\u0003\u02dd\u0003\u02de",
- "\u0003\u02de\u0003\u02de\u0003\u02de\u0003\u02de\u0003\u02de\u0003\u02de",
- "\u0003\u02de\u0003\u02de\u0003\u02de\u0003\u02de\u0003\u02de\u0003\u02de",
- "\u0003\u02df\u0003\u02df\u0003\u02df\u0003\u02df\u0003\u02df\u0003\u02df",
- "\u0003\u02df\u0003\u02e0\u0003\u02e0\u0003\u02e0\u0003\u02e0\u0003\u02e0",
- "\u0003\u02e0\u0003\u02e0\u0003\u02e0\u0003\u02e0\u0003\u02e0\u0003\u02e0",
- "\u0003\u02e1\u0003\u02e1\u0003\u02e1\u0003\u02e1\u0003\u02e1\u0003\u02e1",
- "\u0003\u02e2\u0003\u02e2\u0003\u02e2\u0003\u02e2\u0003\u02e2\u0003\u02e2",
- "\u0003\u02e2\u0003\u02e3\u0003\u02e3\u0003\u02e3\u0003\u02e3\u0003\u02e3",
- "\u0003\u02e3\u0003\u02e3\u0003\u02e3\u0003\u02e3\u0003\u02e4\u0003\u02e4",
- "\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4",
- "\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e5\u0003\u02e5\u0003\u02e5",
- "\u0003\u02e5\u0003\u02e5\u0003\u02e5\u0003\u02e6\u0003\u02e6\u0003\u02e6",
- "\u0003\u02e6\u0003\u02e6\u0003\u02e6\u0003\u02e6\u0003\u02e6\u0003\u02e7",
- "\u0003\u02e7\u0003\u02e7\u0003\u02e7\u0003\u02e7\u0003\u02e7\u0003\u02e7",
- "\u0003\u02e7\u0003\u02e7\u0003\u02e7\u0003\u02e7\u0003\u02e7\u0003\u02e7",
- "\u0003\u02e8\u0003\u02e8\u0003\u02e8\u0003\u02e8\u0003\u02e9\u0003\u02e9",
- "\u0003\u02e9\u0003\u02e9\u0003\u02e9\u0003\u02e9\u0003\u02e9\u0003\u02e9",
- "\u0003\u02ea\u0003\u02ea\u0003\u02ea\u0003\u02ea\u0003\u02ea\u0003\u02ea",
- "\u0003\u02ea\u0003\u02ea\u0003\u02ea\u0003\u02ea\u0003\u02eb\u0003\u02eb",
- "\u0003\u02eb\u0003\u02eb\u0003\u02eb\u0003\u02eb\u0003\u02eb\u0003\u02eb",
- "\u0003\u02eb\u0003\u02eb\u0003\u02eb\u0003\u02eb\u0003\u02eb\u0003\u02eb",
- "\u0003\u02eb\u0003\u02eb\u0003\u02eb\u0003\u02eb\u0003\u02eb\u0003\u02ec",
- "\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003\u02ec",
- "\u0003\u02ec\u0003\u02ed\u0003\u02ed\u0003\u02ed\u0003\u02ed\u0003\u02ed",
- "\u0003\u02ed\u0003\u02ed\u0003\u02ee\u0003\u02ee\u0003\u02ee\u0003\u02ee",
- "\u0003\u02ee\u0003\u02ef\u0003\u02ef\u0003\u02ef\u0003\u02ef\u0003\u02ef",
- "\u0003\u02ef\u0003\u02ef\u0003\u02ef\u0003\u02ef\u0003\u02ef\u0003\u02ef",
- "\u0003\u02ef\u0003\u02ef\u0003\u02ef\u0003\u02ef\u0003\u02ef\u0003\u02ef",
- "\u0003\u02ef\u0003\u02ef\u0003\u02ef\u0003\u02ef\u0003\u02f0\u0003\u02f0",
- "\u0003\u02f0\u0003\u02f1\u0003\u02f1\u0003\u02f1\u0003\u02f1\u0003\u02f1",
- "\u0003\u02f1\u0003\u02f1\u0003\u02f1\u0003\u02f1\u0003\u02f1\u0003\u02f1",
- "\u0003\u02f1\u0003\u02f1\u0003\u02f2\u0003\u02f2\u0003\u02f2\u0003\u02f2",
- "\u0003\u02f2\u0003\u02f2\u0003\u02f3\u0003\u02f3\u0003\u02f3\u0003\u02f3",
- "\u0003\u02f3\u0003\u02f4\u0003\u02f4\u0003\u02f4\u0003\u02f4\u0003\u02f4",
- "\u0003\u02f5\u0003\u02f5\u0003\u02f5\u0003\u02f5\u0003\u02f5\u0003\u02f5",
- "\u0003\u02f5\u0003\u02f5\u0003\u02f6\u0003\u02f6\u0003\u02f6\u0003\u02f6",
- "\u0003\u02f6\u0003\u02f6\u0003\u02f7\u0003\u02f7\u0003\u02f7\u0003\u02f7",
- "\u0003\u02f7\u0003\u02f7\u0003\u02f7\u0003\u02f7\u0003\u02f8\u0003\u02f8",
- "\u0003\u02f8\u0003\u02f8\u0003\u02f8\u0003\u02f8\u0003\u02f8\u0003\u02f8",
- "\u0003\u02f8\u0003\u02f8\u0003\u02f8\u0003\u02f8\u0003\u02f8\u0003\u02f8",
- "\u0003\u02f8\u0003\u02f8\u0003\u02f8\u0003\u02f8\u0003\u02f8\u0003\u02f8",
- "\u0003\u02f9\u0003\u02f9\u0003\u02f9\u0003\u02f9\u0003\u02f9\u0003\u02f9",
- "\u0003\u02f9\u0003\u02f9\u0003\u02f9\u0003\u02f9\u0003\u02f9\u0003\u02f9",
- "\u0003\u02f9\u0003\u02f9\u0003\u02f9\u0003\u02f9\u0003\u02f9\u0003\u02f9",
- "\u0003\u02f9\u0003\u02f9\u0003\u02f9\u0003\u02f9\u0003\u02fa\u0003\u02fa",
- "\u0003\u02fa\u0003\u02fa\u0003\u02fa\u0003\u02fa\u0003\u02fa\u0003\u02fa",
- "\u0003\u02fa\u0003\u02fa\u0003\u02fa\u0003\u02fb\u0003\u02fb\u0003\u02fb",
- "\u0003\u02fb\u0003\u02fb\u0003\u02fb\u0003\u02fb\u0003\u02fb\u0003\u02fb",
- "\u0003\u02fb\u0003\u02fb\u0003\u02fb\u0003\u02fb\u0003\u02fb\u0003\u02fb",
- "\u0003\u02fb\u0003\u02fc\u0003\u02fc\u0003\u02fc\u0003\u02fc\u0003\u02fc",
- "\u0003\u02fc\u0003\u02fc\u0003\u02fc\u0003\u02fc\u0003\u02fc\u0003\u02fc",
- "\u0003\u02fc\u0003\u02fd\u0003\u02fd\u0003\u02fd\u0003\u02fd\u0003\u02fe",
- "\u0003\u02fe\u0003\u02fe\u0003\u02fe\u0003\u02fe\u0003\u02ff\u0003\u02ff",
- "\u0003\u02ff\u0003\u02ff\u0003\u02ff\u0003\u02ff\u0003\u02ff\u0003\u02ff",
- "\u0003\u02ff\u0003\u02ff\u0003\u02ff\u0003\u02ff\u0003\u02ff\u0003\u02ff",
- "\u0003\u02ff\u0003\u02ff\u0003\u02ff\u0003\u02ff\u0003\u02ff\u0003\u02ff",
- "\u0003\u02ff\u0003\u02ff\u0003\u0300\u0003\u0300\u0003\u0300\u0003\u0300",
- "\u0003\u0300\u0003\u0301\u0003\u0301\u0003\u0301\u0003\u0301\u0003\u0301",
- "\u0003\u0301\u0003\u0301\u0003\u0301\u0003\u0301\u0003\u0301\u0003\u0301",
- "\u0003\u0301\u0003\u0301\u0003\u0302\u0003\u0302\u0003\u0302\u0003\u0302",
- "\u0003\u0302\u0003\u0302\u0003\u0302\u0003\u0302\u0003\u0302\u0003\u0302",
- "\u0003\u0303\u0003\u0303\u0003\u0303\u0003\u0303\u0003\u0303\u0003\u0303",
- "\u0003\u0303\u0003\u0303\u0003\u0303\u0003\u0303\u0003\u0303\u0003\u0303",
- "\u0003\u0304\u0003\u0304\u0003\u0304\u0003\u0304\u0003\u0304\u0003\u0304",
- "\u0003\u0304\u0003\u0304\u0003\u0305\u0003\u0305\u0003\u0305\u0003\u0305",
- "\u0003\u0305\u0003\u0305\u0003\u0305\u0003\u0305\u0003\u0305\u0003\u0305",
- "\u0003\u0306\u0003\u0306\u0003\u0306\u0003\u0306\u0003\u0307\u0003\u0307",
- "\u0003\u0307\u0003\u0307\u0003\u0307\u0003\u0307\u0003\u0308\u0003\u0308",
- "\u0003\u0308\u0003\u0308\u0003\u0308\u0003\u0308\u0003\u0308\u0003\u0308",
- "\u0003\u0308\u0003\u0308\u0003\u0309\u0003\u0309\u0003\u0309\u0003\u0309",
- "\u0003\u0309\u0003\u0309\u0003\u0309\u0003\u0309\u0003\u0309\u0003\u0309",
- "\u0003\u0309\u0003\u030a\u0003\u030a\u0003\u030a\u0003\u030a\u0003\u030a",
- "\u0003\u030a\u0003\u030b\u0003\u030b\u0003\u030b\u0003\u030b\u0003\u030c",
- "\u0003\u030c\u0003\u030c\u0003\u030c\u0003\u030c\u0003\u030d\u0003\u030d",
- "\u0003\u030d\u0003\u030d\u0003\u030d\u0003\u030d\u0003\u030d\u0003\u030d",
- "\u0003\u030d\u0003\u030d\u0003\u030d\u0003\u030d\u0003\u030d\u0003\u030d",
- "\u0003\u030e\u0003\u030e\u0003\u030e\u0003\u030e\u0003\u030e\u0003\u030e",
- "\u0003\u030f\u0003\u030f\u0003\u030f\u0003\u030f\u0003\u030f\u0003\u0310",
- "\u0003\u0310\u0003\u0310\u0003\u0310\u0003\u0310\u0003\u0310\u0003\u0310",
- "\u0003\u0310\u0003\u0310\u0003\u0310\u0003\u0310\u0003\u0310\u0003\u0310",
- "\u0003\u0310\u0003\u0310\u0003\u0310\u0003\u0311\u0003\u0311\u0003\u0311",
- "\u0003\u0311\u0003\u0311\u0003\u0311\u0003\u0311\u0003\u0311\u0003\u0311",
- "\u0003\u0311\u0003\u0311\u0003\u0311\u0003\u0311\u0003\u0311\u0003\u0311",
- "\u0003\u0311\u0003\u0311\u0003\u0311\u0003\u0311\u0003\u0311\u0003\u0311",
- "\u0003\u0311\u0003\u0312\u0003\u0312\u0003\u0312\u0003\u0312\u0003\u0312",
- "\u0003\u0313\u0003\u0313\u0003\u0313\u0003\u0313\u0003\u0313\u0003\u0313",
- "\u0003\u0313\u0003\u0313\u0003\u0313\u0003\u0314\u0003\u0314\u0003\u0314",
- "\u0003\u0314\u0003\u0315\u0003\u0315\u0003\u0315\u0003\u0315\u0003\u0315",
- "\u0003\u0315\u0003\u0315\u0003\u0315\u0003\u0316\u0003\u0316\u0003\u0316",
- "\u0003\u0316\u0003\u0316\u0003\u0316\u0003\u0316\u0003\u0316\u0003\u0316",
- "\u0003\u0316\u0003\u0316\u0003\u0316\u0003\u0316\u0003\u0316\u0003\u0317",
- "\u0003\u0317\u0003\u0317\u0003\u0317\u0003\u0317\u0003\u0317\u0003\u0317",
- "\u0003\u0317\u0003\u0317\u0003\u0317\u0003\u0318\u0003\u0318\u0003\u0318",
- "\u0003\u0318\u0003\u0318\u0003\u0318\u0003\u0318\u0003\u0319\u0003\u0319",
- "\u0003\u0319\u0003\u0319\u0003\u0319\u0003\u0319\u0003\u0319\u0003\u0319",
- "\u0003\u031a\u0006\u031a\u2650\n\u031a\r\u031a\u000e\u031a\u2651\u0003",
- "\u031a\u0003\u031a\u0003\u031b\u0003\u031b\u0003\u031b\u0003\u031b\u0003",
- "\u031b\u0007\u031b\u265b\n\u031b\f\u031b\u000e\u031b\u265e\u000b\u031b",
- "\u0003\u031b\u0003\u031b\u0003\u031b\u0003\u031b\u0003\u031b\u0003\u031c",
- "\u0003\u031c\u0003\u031c\u0003\u031c\u0007\u031c\u2669\n\u031c\f\u031c",
- "\u000e\u031c\u266c\u000b\u031c\u0003\u031c\u0003\u031c\u0003\u031d\u0003",
- "\u031d\u0006\u031d\u2672\n\u031d\r\u031d\u000e\u031d\u2673\u0003\u031d",
- "\u0003\u031d\u0003\u031e\u0003\u031e\u0003\u031f\u0003\u031f\u0006\u031f",
- "\u267c\n\u031f\r\u031f\u000e\u031f\u267d\u0003\u031f\u0003\u031f\u0003",
- "\u0320\u0003\u0320\u0003\u0320\u0006\u0320\u2685\n\u0320\r\u0320\u000e",
- "\u0320\u2686\u0003\u0321\u0006\u0321\u268a\n\u0321\r\u0321\u000e\u0321",
- "\u268b\u0003\u0322\u0003\u0322\u0005\u0322\u2690\n\u0322\u0003\u0322",
- "\u0003\u0322\u0007\u0322\u2694\n\u0322\f\u0322\u000e\u0322\u2697\u000b",
- "\u0322\u0003\u0323\u0003\u0323\u0003\u0323\u0006\u0323\u269c\n\u0323",
- "\r\u0323\u000e\u0323\u269d\u0003\u0323\u0003\u0323\u0003\u0323\u0003",
- "\u0323\u0003\u0323\u0003\u0323\u0006\u0323\u26a6\n\u0323\r\u0323\u000e",
- "\u0323\u26a7\u0003\u0323\u0003\u0323\u0006\u0323\u26ac\n\u0323\r\u0323",
- "\u000e\u0323\u26ad\u0005\u0323\u26b0\n\u0323\u0003\u0323\u0005\u0323",
- "\u26b3\n\u0323\u0003\u0323\u0003\u0323\u0003\u0323\u0003\u0323\u0003",
- "\u0324\u0003\u0324\u0006\u0324\u26bb\n\u0324\r\u0324\u000e\u0324\u26bc",
- "\u0003\u0324\u0003\u0324\u0006\u0324\u26c1\n\u0324\r\u0324\u000e\u0324",
- "\u26c2\u0005\u0324\u26c5\n\u0324\u0003\u0324\u0005\u0324\u26c8\n\u0324",
- "\u0003\u0324\u0003\u0324\u0003\u0324\u0003\u0324\u0003\u0324\u0003\u0325",
- "\u0005\u0325\u26d0\n\u0325\u0003\u0325\u0003\u0325\u0003\u0325\u0003",
- "\u0325\u0007\u0325\u26d6\n\u0325\f\u0325\u000e\u0325\u26d9\u000b\u0325",
- "\u0003\u0325\u0003\u0325\u0003\u0326\u0003\u0326\u0003\u0326\u0007\u0326",
- "\u26e0\n\u0326\f\u0326\u000e\u0326\u26e3\u000b\u0326\u0003\u0327\u0003",
- "\u0327\u0003\u0328\u0003\u0328\u0005\u0328\u26e9\n\u0328\u0003\u0328",
- "\u0003\u0328\u0005\u0328\u26ed\n\u0328\u0003\u0328\u0006\u0328\u26f0",
- "\n\u0328\r\u0328\u000e\u0328\u26f1\u0003\u0329\u0003\u0329\u0003\u032a",
- "\u0003\u032a\u0003\u032b\u0003\u032b\u0003\u032c\u0003\u032c\u0003\u032d",
- "\u0003\u032d\u0003\u032d\u0003\u032e\u0003\u032e\u0003\u032e\u0003\u032f",
- "\u0003\u032f\u0003\u032f\u0003\u0330\u0003\u0330\u0003\u0330\u0003\u0331",
- "\u0003\u0331\u0003\u0331\u0003\u0332\u0003\u0332\u0003\u0332\u0003\u0333",
- "\u0003\u0333\u0003\u0333\u0003\u0334\u0003\u0334\u0003\u0334\u0003\u0335",
- "\u0003\u0335\u0003\u0335\u0003\u0336\u0003\u0336\u0003\u0337\u0003\u0337",
- "\u0003\u0338\u0003\u0338\u0003\u0339\u0003\u0339\u0003\u033a\u0003\u033a",
- "\u0003\u033b\u0003\u033b\u0003\u033c\u0003\u033c\u0003\u033d\u0003\u033d",
- "\u0003\u033e\u0003\u033e\u0003\u033f\u0003\u033f\u0003\u0340\u0003\u0340",
- "\u0003\u0341\u0003\u0341\u0003\u0342\u0003\u0342\u0003\u0343\u0003\u0343",
- "\u0003\u0344\u0003\u0344\u0003\u0345\u0003\u0345\u0003\u0346\u0003\u0346",
- "\u0003\u0347\u0003\u0347\u0003\u0348\u0003\u0348\u0003\u0349\u0003\u0349",
- "\u0003\u034a\u0003\u034a\u0003\u034a\u0003\u034a\u0003\u034a\u0003\u034b",
- "\u0005\u034b\u2745\n\u034b\u0003\u034b\u0005\u034b\u2748\n\u034b\u0003",
- "\u034b\u0003\u034b\u0003\u034c\u0006\u034c\u274d\n\u034c\r\u034c\u000e",
- "\u034c\u274e\u0003\u034c\u0003\u034c\u0006\u034c\u2753\n\u034c\r\u034c",
- "\u000e\u034c\u2754\u0003\u034c\u0006\u034c\u2758\n\u034c\r\u034c\u000e",
- "\u034c\u2759\u0003\u034c\u0003\u034c\u0003\u034c\u0003\u034c\u0006\u034c",
- "\u2760\n\u034c\r\u034c\u000e\u034c\u2761\u0005\u034c\u2764\n\u034c\u0003",
- "\u034d\u0003\u034d\u0003\u034e\u0003\u034e\u0003\u034f\u0003\u034f\u0003",
- "\u265c\u0002\u0350\u0003\u0003\u0005\u0004\u0007\u0005\t\u0006\u000b",
- "\u0007\r\b\u000f\t\u0011\n\u0013\u000b\u0015\f\u0017\r\u0019\u000e\u001b",
- "\u000f\u001d\u0010\u001f\u0011!\u0012#\u0013%\u0014\'\u0015)\u0016+",
- "\u0017-\u0018/\u00191\u001a3\u001b5\u001c7\u001d9\u001e;\u001f= ?!A",
- "\"C#E$G%I&K\'M(O)Q*S+U,W-Y.[/]0_1a2c3e4g5i6k7m8o9q:s;u{?}@\u007f",
- "A\u0081B\u0083C\u0085D\u0087E\u0089F\u008bG\u008dH\u008fI\u0091J\u0093",
- "K\u0095L\u0097M\u0099N\u009bO\u009dP\u009fQ\u00a1R\u00a3S\u00a5T\u00a7",
- "U\u00a9V\u00abW\u00adX\u00afY\u00b1Z\u00b3[\u00b5\\\u00b7]\u00b9^\u00bb",
- "_\u00bd`\u00bfa\u00c1b\u00c3c\u00c5d\u00c7e\u00c9f\u00cbg\u00cdh\u00cf",
- "i\u00d1j\u00d3k\u00d5l\u00d7m\u00d9n\u00dbo\u00ddp\u00dfq\u00e1r\u00e3",
- "s\u00e5t\u00e7u\u00e9v\u00ebw\u00edx\u00efy\u00f1z\u00f3{\u00f5|\u00f7",
- "}\u00f9~\u00fb\u007f\u00fd\u0080\u00ff\u0081\u0101\u0082\u0103\u0083",
- "\u0105\u0084\u0107\u0085\u0109\u0086\u010b\u0087\u010d\u0088\u010f\u0089",
- "\u0111\u008a\u0113\u008b\u0115\u008c\u0117\u008d\u0119\u008e\u011b\u008f",
- "\u011d\u0090\u011f\u0091\u0121\u0092\u0123\u0093\u0125\u0094\u0127\u0095",
- "\u0129\u0096\u012b\u0097\u012d\u0098\u012f\u0099\u0131\u009a\u0133\u009b",
- "\u0135\u009c\u0137\u009d\u0139\u009e\u013b\u009f\u013d\u00a0\u013f\u00a1",
- "\u0141\u00a2\u0143\u00a3\u0145\u00a4\u0147\u00a5\u0149\u00a6\u014b\u00a7",
- "\u014d\u00a8\u014f\u00a9\u0151\u00aa\u0153\u00ab\u0155\u00ac\u0157\u00ad",
- "\u0159\u00ae\u015b\u00af\u015d\u00b0\u015f\u00b1\u0161\u00b2\u0163\u00b3",
- "\u0165\u00b4\u0167\u00b5\u0169\u00b6\u016b\u00b7\u016d\u00b8\u016f\u00b9",
- "\u0171\u00ba\u0173\u00bb\u0175\u00bc\u0177\u00bd\u0179\u00be\u017b\u00bf",
- "\u017d\u00c0\u017f\u00c1\u0181\u00c2\u0183\u00c3\u0185\u00c4\u0187\u00c5",
- "\u0189\u00c6\u018b\u00c7\u018d\u00c8\u018f\u00c9\u0191\u00ca\u0193\u00cb",
- "\u0195\u00cc\u0197\u00cd\u0199\u00ce\u019b\u00cf\u019d\u00d0\u019f\u00d1",
- "\u01a1\u00d2\u01a3\u00d3\u01a5\u00d4\u01a7\u00d5\u01a9\u00d6\u01ab\u00d7",
- "\u01ad\u00d8\u01af\u00d9\u01b1\u00da\u01b3\u00db\u01b5\u00dc\u01b7\u00dd",
- "\u01b9\u00de\u01bb\u00df\u01bd\u00e0\u01bf\u00e1\u01c1\u00e2\u01c3\u00e3",
- "\u01c5\u00e4\u01c7\u00e5\u01c9\u00e6\u01cb\u00e7\u01cd\u00e8\u01cf\u00e9",
- "\u01d1\u00ea\u01d3\u00eb\u01d5\u00ec\u01d7\u00ed\u01d9\u00ee\u01db\u00ef",
- "\u01dd\u00f0\u01df\u00f1\u01e1\u00f2\u01e3\u00f3\u01e5\u00f4\u01e7\u00f5",
- "\u01e9\u00f6\u01eb\u00f7\u01ed\u00f8\u01ef\u00f9\u01f1\u00fa\u01f3\u00fb",
- "\u01f5\u00fc\u01f7\u00fd\u01f9\u00fe\u01fb\u00ff\u01fd\u0100\u01ff\u0101",
- "\u0201\u0102\u0203\u0103\u0205\u0104\u0207\u0105\u0209\u0106\u020b\u0107",
- "\u020d\u0108\u020f\u0109\u0211\u010a\u0213\u010b\u0215\u010c\u0217\u010d",
- "\u0219\u010e\u021b\u010f\u021d\u0110\u021f\u0111\u0221\u0112\u0223\u0113",
- "\u0225\u0114\u0227\u0115\u0229\u0116\u022b\u0117\u022d\u0118\u022f\u0119",
- "\u0231\u011a\u0233\u011b\u0235\u011c\u0237\u011d\u0239\u011e\u023b\u011f",
- "\u023d\u0120\u023f\u0121\u0241\u0122\u0243\u0123\u0245\u0124\u0247\u0125",
- "\u0249\u0126\u024b\u0127\u024d\u0128\u024f\u0129\u0251\u012a\u0253\u012b",
- "\u0255\u012c\u0257\u012d\u0259\u012e\u025b\u012f\u025d\u0130\u025f\u0131",
- "\u0261\u0132\u0263\u0133\u0265\u0134\u0267\u0135\u0269\u0136\u026b\u0137",
- "\u026d\u0138\u026f\u0139\u0271\u013a\u0273\u013b\u0275\u013c\u0277\u013d",
- "\u0279\u013e\u027b\u013f\u027d\u0140\u027f\u0141\u0281\u0142\u0283\u0143",
- "\u0285\u0144\u0287\u0145\u0289\u0146\u028b\u0147\u028d\u0148\u028f\u0149",
- "\u0291\u014a\u0293\u014b\u0295\u014c\u0297\u014d\u0299\u014e\u029b\u014f",
- "\u029d\u0150\u029f\u0151\u02a1\u0152\u02a3\u0153\u02a5\u0154\u02a7\u0155",
- "\u02a9\u0156\u02ab\u0157\u02ad\u0158\u02af\u0159\u02b1\u015a\u02b3\u015b",
- "\u02b5\u015c\u02b7\u015d\u02b9\u015e\u02bb\u015f\u02bd\u0160\u02bf\u0161",
- "\u02c1\u0162\u02c3\u0163\u02c5\u0164\u02c7\u0165\u02c9\u0166\u02cb\u0167",
- "\u02cd\u0168\u02cf\u0169\u02d1\u016a\u02d3\u016b\u02d5\u016c\u02d7\u016d",
- "\u02d9\u016e\u02db\u016f\u02dd\u0170\u02df\u0171\u02e1\u0172\u02e3\u0173",
- "\u02e5\u0174\u02e7\u0175\u02e9\u0176\u02eb\u0177\u02ed\u0178\u02ef\u0179",
- "\u02f1\u017a\u02f3\u017b\u02f5\u017c\u02f7\u017d\u02f9\u017e\u02fb\u017f",
- "\u02fd\u0180\u02ff\u0181\u0301\u0182\u0303\u0183\u0305\u0184\u0307\u0185",
- "\u0309\u0186\u030b\u0187\u030d\u0188\u030f\u0189\u0311\u018a\u0313\u018b",
- "\u0315\u018c\u0317\u018d\u0319\u018e\u031b\u018f\u031d\u0190\u031f\u0191",
- "\u0321\u0192\u0323\u0193\u0325\u0194\u0327\u0195\u0329\u0196\u032b\u0197",
- "\u032d\u0198\u032f\u0199\u0331\u019a\u0333\u019b\u0335\u019c\u0337\u019d",
- "\u0339\u019e\u033b\u019f\u033d\u01a0\u033f\u01a1\u0341\u01a2\u0343\u01a3",
- "\u0345\u01a4\u0347\u01a5\u0349\u01a6\u034b\u01a7\u034d\u01a8\u034f\u01a9",
- "\u0351\u01aa\u0353\u01ab\u0355\u01ac\u0357\u01ad\u0359\u01ae\u035b\u01af",
- "\u035d\u01b0\u035f\u01b1\u0361\u01b2\u0363\u01b3\u0365\u01b4\u0367\u01b5",
- "\u0369\u01b6\u036b\u01b7\u036d\u01b8\u036f\u01b9\u0371\u01ba\u0373\u01bb",
- "\u0375\u01bc\u0377\u01bd\u0379\u01be\u037b\u01bf\u037d\u01c0\u037f\u01c1",
- "\u0381\u01c2\u0383\u01c3\u0385\u01c4\u0387\u01c5\u0389\u01c6\u038b\u01c7",
- "\u038d\u01c8\u038f\u01c9\u0391\u01ca\u0393\u01cb\u0395\u01cc\u0397\u01cd",
- "\u0399\u01ce\u039b\u01cf\u039d\u01d0\u039f\u01d1\u03a1\u01d2\u03a3\u01d3",
- "\u03a5\u01d4\u03a7\u01d5\u03a9\u01d6\u03ab\u01d7\u03ad\u01d8\u03af\u01d9",
- "\u03b1\u01da\u03b3\u01db\u03b5\u01dc\u03b7\u01dd\u03b9\u01de\u03bb\u01df",
- "\u03bd\u01e0\u03bf\u01e1\u03c1\u01e2\u03c3\u01e3\u03c5\u01e4\u03c7\u01e5",
- "\u03c9\u01e6\u03cb\u01e7\u03cd\u01e8\u03cf\u01e9\u03d1\u01ea\u03d3\u01eb",
- "\u03d5\u01ec\u03d7\u01ed\u03d9\u01ee\u03db\u01ef\u03dd\u01f0\u03df\u01f1",
- "\u03e1\u01f2\u03e3\u01f3\u03e5\u01f4\u03e7\u01f5\u03e9\u01f6\u03eb\u01f7",
- "\u03ed\u01f8\u03ef\u01f9\u03f1\u01fa\u03f3\u01fb\u03f5\u01fc\u03f7\u01fd",
- "\u03f9\u01fe\u03fb\u01ff\u03fd\u0200\u03ff\u0201\u0401\u0202\u0403\u0203",
- "\u0405\u0204\u0407\u0205\u0409\u0206\u040b\u0207\u040d\u0208\u040f\u0209",
- "\u0411\u020a\u0413\u020b\u0415\u020c\u0417\u020d\u0419\u020e\u041b\u020f",
- "\u041d\u0210\u041f\u0211\u0421\u0212\u0423\u0213\u0425\u0214\u0427\u0215",
- "\u0429\u0216\u042b\u0217\u042d\u0218\u042f\u0219\u0431\u021a\u0433\u021b",
- "\u0435\u021c\u0437\u021d\u0439\u021e\u043b\u021f\u043d\u0220\u043f\u0221",
- "\u0441\u0222\u0443\u0223\u0445\u0224\u0447\u0225\u0449\u0226\u044b\u0227",
- "\u044d\u0228\u044f\u0229\u0451\u022a\u0453\u022b\u0455\u022c\u0457\u022d",
- "\u0459\u022e\u045b\u022f\u045d\u0230\u045f\u0231\u0461\u0232\u0463\u0233",
- "\u0465\u0234\u0467\u0235\u0469\u0236\u046b\u0237\u046d\u0238\u046f\u0239",
- "\u0471\u023a\u0473\u023b\u0475\u023c\u0477\u023d\u0479\u023e\u047b\u023f",
- "\u047d\u0240\u047f\u0241\u0481\u0242\u0483\u0243\u0485\u0244\u0487\u0245",
- "\u0489\u0246\u048b\u0247\u048d\u0248\u048f\u0249\u0491\u024a\u0493\u024b",
- "\u0495\u024c\u0497\u024d\u0499\u024e\u049b\u024f\u049d\u0250\u049f\u0251",
- "\u04a1\u0252\u04a3\u0253\u04a5\u0254\u04a7\u0255\u04a9\u0256\u04ab\u0257",
- "\u04ad\u0258\u04af\u0259\u04b1\u025a\u04b3\u025b\u04b5\u025c\u04b7\u025d",
- "\u04b9\u025e\u04bb\u025f\u04bd\u0260\u04bf\u0261\u04c1\u0262\u04c3\u0263",
- "\u04c5\u0264\u04c7\u0265\u04c9\u0266\u04cb\u0267\u04cd\u0268\u04cf\u0269",
- "\u04d1\u026a\u04d3\u026b\u04d5\u026c\u04d7\u026d\u04d9\u026e\u04db\u026f",
- "\u04dd\u0270\u04df\u0271\u04e1\u0272\u04e3\u0273\u04e5\u0274\u04e7\u0275",
- "\u04e9\u0276\u04eb\u0277\u04ed\u0278\u04ef\u0279\u04f1\u027a\u04f3\u027b",
- "\u04f5\u027c\u04f7\u027d\u04f9\u027e\u04fb\u027f\u04fd\u0280\u04ff\u0281",
- "\u0501\u0282\u0503\u0283\u0505\u0284\u0507\u0285\u0509\u0286\u050b\u0287",
- "\u050d\u0288\u050f\u0289\u0511\u028a\u0513\u028b\u0515\u028c\u0517\u028d",
- "\u0519\u028e\u051b\u028f\u051d\u0290\u051f\u0291\u0521\u0292\u0523\u0293",
- "\u0525\u0294\u0527\u0295\u0529\u0296\u052b\u0297\u052d\u0298\u052f\u0299",
- "\u0531\u029a\u0533\u029b\u0535\u029c\u0537\u029d\u0539\u029e\u053b\u029f",
- "\u053d\u02a0\u053f\u02a1\u0541\u02a2\u0543\u02a3\u0545\u02a4\u0547\u02a5",
- "\u0549\u02a6\u054b\u02a7\u054d\u02a8\u054f\u02a9\u0551\u02aa\u0553\u02ab",
- "\u0555\u02ac\u0557\u02ad\u0559\u02ae\u055b\u02af\u055d\u02b0\u055f\u02b1",
- "\u0561\u02b2\u0563\u02b3\u0565\u02b4\u0567\u02b5\u0569\u02b6\u056b\u02b7",
- "\u056d\u02b8\u056f\u02b9\u0571\u02ba\u0573\u02bb\u0575\u02bc\u0577\u02bd",
- "\u0579\u02be\u057b\u02bf\u057d\u02c0\u057f\u02c1\u0581\u02c2\u0583\u02c3",
- "\u0585\u02c4\u0587\u02c5\u0589\u02c6\u058b\u02c7\u058d\u02c8\u058f\u02c9",
- "\u0591\u02ca\u0593\u02cb\u0595\u02cc\u0597\u02cd\u0599\u02ce\u059b\u02cf",
- "\u059d\u02d0\u059f\u02d1\u05a1\u02d2\u05a3\u02d3\u05a5\u02d4\u05a7\u02d5",
- "\u05a9\u02d6\u05ab\u02d7\u05ad\u02d8\u05af\u02d9\u05b1\u02da\u05b3\u02db",
- "\u05b5\u02dc\u05b7\u02dd\u05b9\u02de\u05bb\u02df\u05bd\u02e0\u05bf\u02e1",
- "\u05c1\u02e2\u05c3\u02e3\u05c5\u02e4\u05c7\u02e5\u05c9\u02e6\u05cb\u02e7",
- "\u05cd\u02e8\u05cf\u02e9\u05d1\u02ea\u05d3\u02eb\u05d5\u02ec\u05d7\u02ed",
- "\u05d9\u02ee\u05db\u02ef\u05dd\u02f0\u05df\u02f1\u05e1\u02f2\u05e3\u02f3",
- "\u05e5\u02f4\u05e7\u02f5\u05e9\u02f6\u05eb\u02f7\u05ed\u02f8\u05ef\u02f9",
- "\u05f1\u02fa\u05f3\u02fb\u05f5\u02fc\u05f7\u02fd\u05f9\u02fe\u05fb\u02ff",
- "\u05fd\u0300\u05ff\u0301\u0601\u0302\u0603\u0303\u0605\u0304\u0607\u0305",
- "\u0609\u0306\u060b\u0307\u060d\u0308\u060f\u0309\u0611\u030a\u0613\u030b",
- "\u0615\u030c\u0617\u030d\u0619\u030e\u061b\u030f\u061d\u0310\u061f\u0311",
- "\u0621\u0312\u0623\u0313\u0625\u0314\u0627\u0315\u0629\u0316\u062b\u0317",
- "\u062d\u0318\u062f\u0319\u0631\u031a\u0633\u031b\u0635\u031c\u0637\u031d",
- "\u0639\u031e\u063b\u031f\u063d\u0320\u063f\u0321\u0641\u0322\u0643\u0323",
- "\u0645\u0324\u0647\u0325\u0649\u0326\u064b\u0327\u064d\u0328\u064f\u0329",
- "\u0651\u032a\u0653\u032b\u0655\u032c\u0657\u032d\u0659\u032e\u065b\u032f",
- "\u065d\u0330\u065f\u0331\u0661\u0332\u0663\u0333\u0665\u0334\u0667\u0335",
- "\u0669\u0336\u066b\u0337\u066d\u0338\u066f\u0339\u0671\u033a\u0673\u033b",
- "\u0675\u033c\u0677\u033d\u0679\u033e\u067b\u033f\u067d\u0340\u067f\u0341",
- "\u0681\u0342\u0683\u0343\u0685\u0344\u0687\u0345\u0689\u0346\u068b\u0347",
- "\u068d\u0348\u068f\u0349\u0691\u0002\u0693\u0002\u0695\u034a\u0697\u0002",
- "\u0699\u0002\u069b\u0002\u069d\u0002\u0003\u0002\u0011\u0003\u0002)",
- ")\u0004\u00022;CH\u0003\u0002<<\u0003\u0002$$\u0003\u0002C\\\u0005\u0002",
- "\u000b\f\u000f\u000f\"\"\u0004\u0002\f\f\u000f\u000f\u0003\u0002__\u0006",
- "\u0002%&2;B\\aa\u0005\u0002%%C\\aa\u0003\u000200\u0004\u0002--//\u0004",
- "\u0002C\\aa\u0003\u00022;\f\u0002\u00c2\u00d8\u00da\u00f8\u00fa\u2001",
- "\u2c02\u3001\u3042\u3191\u3302\u3381\u3402\u4001\u4e02\ud801\uf902\ufb01",
- "\uff02\ufff2\u0002\u27af\u0002\u0003\u0003\u0002\u0002\u0002\u0002\u0005",
- "\u0003\u0002\u0002\u0002\u0002\u0007\u0003\u0002\u0002\u0002\u0002\t",
- "\u0003\u0002\u0002\u0002\u0002\u000b\u0003\u0002\u0002\u0002\u0002\r",
- "\u0003\u0002\u0002\u0002\u0002\u000f\u0003\u0002\u0002\u0002\u0002\u0011",
- "\u0003\u0002\u0002\u0002\u0002\u0013\u0003\u0002\u0002\u0002\u0002\u0015",
- "\u0003\u0002\u0002\u0002\u0002\u0017\u0003\u0002\u0002\u0002\u0002\u0019",
- "\u0003\u0002\u0002\u0002\u0002\u001b\u0003\u0002\u0002\u0002\u0002\u001d",
- "\u0003\u0002\u0002\u0002\u0002\u001f\u0003\u0002\u0002\u0002\u0002!",
- "\u0003\u0002\u0002\u0002\u0002#\u0003\u0002\u0002\u0002\u0002%\u0003",
- "\u0002\u0002\u0002\u0002\'\u0003\u0002\u0002\u0002\u0002)\u0003\u0002",
- "\u0002\u0002\u0002+\u0003\u0002\u0002\u0002\u0002-\u0003\u0002\u0002",
- "\u0002\u0002/\u0003\u0002\u0002\u0002\u00021\u0003\u0002\u0002\u0002",
- "\u00023\u0003\u0002\u0002\u0002\u00025\u0003\u0002\u0002\u0002\u0002",
- "7\u0003\u0002\u0002\u0002\u00029\u0003\u0002\u0002\u0002\u0002;\u0003",
- "\u0002\u0002\u0002\u0002=\u0003\u0002\u0002\u0002\u0002?\u0003\u0002",
- "\u0002\u0002\u0002A\u0003\u0002\u0002\u0002\u0002C\u0003\u0002\u0002",
- "\u0002\u0002E\u0003\u0002\u0002\u0002\u0002G\u0003\u0002\u0002\u0002",
- "\u0002I\u0003\u0002\u0002\u0002\u0002K\u0003\u0002\u0002\u0002\u0002",
- "M\u0003\u0002\u0002\u0002\u0002O\u0003\u0002\u0002\u0002\u0002Q\u0003",
- "\u0002\u0002\u0002\u0002S\u0003\u0002\u0002\u0002\u0002U\u0003\u0002",
- "\u0002\u0002\u0002W\u0003\u0002\u0002\u0002\u0002Y\u0003\u0002\u0002",
- "\u0002\u0002[\u0003\u0002\u0002\u0002\u0002]\u0003\u0002\u0002\u0002",
- "\u0002_\u0003\u0002\u0002\u0002\u0002a\u0003\u0002\u0002\u0002\u0002",
- "c\u0003\u0002\u0002\u0002\u0002e\u0003\u0002\u0002\u0002\u0002g\u0003",
- "\u0002\u0002\u0002\u0002i\u0003\u0002\u0002\u0002\u0002k\u0003\u0002",
- "\u0002\u0002\u0002m\u0003\u0002\u0002\u0002\u0002o\u0003\u0002\u0002",
- "\u0002\u0002q\u0003\u0002\u0002\u0002\u0002s\u0003\u0002\u0002\u0002",
- "\u0002u\u0003\u0002\u0002\u0002\u0002w\u0003\u0002\u0002\u0002\u0002",
- "y\u0003\u0002\u0002\u0002\u0002{\u0003\u0002\u0002\u0002\u0002}\u0003",
- "\u0002\u0002\u0002\u0002\u007f\u0003\u0002\u0002\u0002\u0002\u0081\u0003",
- "\u0002\u0002\u0002\u0002\u0083\u0003\u0002\u0002\u0002\u0002\u0085\u0003",
- "\u0002\u0002\u0002\u0002\u0087\u0003\u0002\u0002\u0002\u0002\u0089\u0003",
- "\u0002\u0002\u0002\u0002\u008b\u0003\u0002\u0002\u0002\u0002\u008d\u0003",
- "\u0002\u0002\u0002\u0002\u008f\u0003\u0002\u0002\u0002\u0002\u0091\u0003",
- "\u0002\u0002\u0002\u0002\u0093\u0003\u0002\u0002\u0002\u0002\u0095\u0003",
- "\u0002\u0002\u0002\u0002\u0097\u0003\u0002\u0002\u0002\u0002\u0099\u0003",
- "\u0002\u0002\u0002\u0002\u009b\u0003\u0002\u0002\u0002\u0002\u009d\u0003",
- "\u0002\u0002\u0002\u0002\u009f\u0003\u0002\u0002\u0002\u0002\u00a1\u0003",
- "\u0002\u0002\u0002\u0002\u00a3\u0003\u0002\u0002\u0002\u0002\u00a5\u0003",
- "\u0002\u0002\u0002\u0002\u00a7\u0003\u0002\u0002\u0002\u0002\u00a9\u0003",
- "\u0002\u0002\u0002\u0002\u00ab\u0003\u0002\u0002\u0002\u0002\u00ad\u0003",
- "\u0002\u0002\u0002\u0002\u00af\u0003\u0002\u0002\u0002\u0002\u00b1\u0003",
- "\u0002\u0002\u0002\u0002\u00b3\u0003\u0002\u0002\u0002\u0002\u00b5\u0003",
- "\u0002\u0002\u0002\u0002\u00b7\u0003\u0002\u0002\u0002\u0002\u00b9\u0003",
- "\u0002\u0002\u0002\u0002\u00bb\u0003\u0002\u0002\u0002\u0002\u00bd\u0003",
- "\u0002\u0002\u0002\u0002\u00bf\u0003\u0002\u0002\u0002\u0002\u00c1\u0003",
- "\u0002\u0002\u0002\u0002\u00c3\u0003\u0002\u0002\u0002\u0002\u00c5\u0003",
- "\u0002\u0002\u0002\u0002\u00c7\u0003\u0002\u0002\u0002\u0002\u00c9\u0003",
- "\u0002\u0002\u0002\u0002\u00cb\u0003\u0002\u0002\u0002\u0002\u00cd\u0003",
- "\u0002\u0002\u0002\u0002\u00cf\u0003\u0002\u0002\u0002\u0002\u00d1\u0003",
- "\u0002\u0002\u0002\u0002\u00d3\u0003\u0002\u0002\u0002\u0002\u00d5\u0003",
- "\u0002\u0002\u0002\u0002\u00d7\u0003\u0002\u0002\u0002\u0002\u00d9\u0003",
- "\u0002\u0002\u0002\u0002\u00db\u0003\u0002\u0002\u0002\u0002\u00dd\u0003",
- "\u0002\u0002\u0002\u0002\u00df\u0003\u0002\u0002\u0002\u0002\u00e1\u0003",
- "\u0002\u0002\u0002\u0002\u00e3\u0003\u0002\u0002\u0002\u0002\u00e5\u0003",
- "\u0002\u0002\u0002\u0002\u00e7\u0003\u0002\u0002\u0002\u0002\u00e9\u0003",
- "\u0002\u0002\u0002\u0002\u00eb\u0003\u0002\u0002\u0002\u0002\u00ed\u0003",
- "\u0002\u0002\u0002\u0002\u00ef\u0003\u0002\u0002\u0002\u0002\u00f1\u0003",
- "\u0002\u0002\u0002\u0002\u00f3\u0003\u0002\u0002\u0002\u0002\u00f5\u0003",
- "\u0002\u0002\u0002\u0002\u00f7\u0003\u0002\u0002\u0002\u0002\u00f9\u0003",
- "\u0002\u0002\u0002\u0002\u00fb\u0003\u0002\u0002\u0002\u0002\u00fd\u0003",
- "\u0002\u0002\u0002\u0002\u00ff\u0003\u0002\u0002\u0002\u0002\u0101\u0003",
- "\u0002\u0002\u0002\u0002\u0103\u0003\u0002\u0002\u0002\u0002\u0105\u0003",
- "\u0002\u0002\u0002\u0002\u0107\u0003\u0002\u0002\u0002\u0002\u0109\u0003",
- "\u0002\u0002\u0002\u0002\u010b\u0003\u0002\u0002\u0002\u0002\u010d\u0003",
- "\u0002\u0002\u0002\u0002\u010f\u0003\u0002\u0002\u0002\u0002\u0111\u0003",
- "\u0002\u0002\u0002\u0002\u0113\u0003\u0002\u0002\u0002\u0002\u0115\u0003",
- "\u0002\u0002\u0002\u0002\u0117\u0003\u0002\u0002\u0002\u0002\u0119\u0003",
- "\u0002\u0002\u0002\u0002\u011b\u0003\u0002\u0002\u0002\u0002\u011d\u0003",
- "\u0002\u0002\u0002\u0002\u011f\u0003\u0002\u0002\u0002\u0002\u0121\u0003",
- "\u0002\u0002\u0002\u0002\u0123\u0003\u0002\u0002\u0002\u0002\u0125\u0003",
- "\u0002\u0002\u0002\u0002\u0127\u0003\u0002\u0002\u0002\u0002\u0129\u0003",
- "\u0002\u0002\u0002\u0002\u012b\u0003\u0002\u0002\u0002\u0002\u012d\u0003",
- "\u0002\u0002\u0002\u0002\u012f\u0003\u0002\u0002\u0002\u0002\u0131\u0003",
- "\u0002\u0002\u0002\u0002\u0133\u0003\u0002\u0002\u0002\u0002\u0135\u0003",
- "\u0002\u0002\u0002\u0002\u0137\u0003\u0002\u0002\u0002\u0002\u0139\u0003",
- "\u0002\u0002\u0002\u0002\u013b\u0003\u0002\u0002\u0002\u0002\u013d\u0003",
- "\u0002\u0002\u0002\u0002\u013f\u0003\u0002\u0002\u0002\u0002\u0141\u0003",
- "\u0002\u0002\u0002\u0002\u0143\u0003\u0002\u0002\u0002\u0002\u0145\u0003",
- "\u0002\u0002\u0002\u0002\u0147\u0003\u0002\u0002\u0002\u0002\u0149\u0003",
- "\u0002\u0002\u0002\u0002\u014b\u0003\u0002\u0002\u0002\u0002\u014d\u0003",
- "\u0002\u0002\u0002\u0002\u014f\u0003\u0002\u0002\u0002\u0002\u0151\u0003",
- "\u0002\u0002\u0002\u0002\u0153\u0003\u0002\u0002\u0002\u0002\u0155\u0003",
- "\u0002\u0002\u0002\u0002\u0157\u0003\u0002\u0002\u0002\u0002\u0159\u0003",
- "\u0002\u0002\u0002\u0002\u015b\u0003\u0002\u0002\u0002\u0002\u015d\u0003",
- "\u0002\u0002\u0002\u0002\u015f\u0003\u0002\u0002\u0002\u0002\u0161\u0003",
- "\u0002\u0002\u0002\u0002\u0163\u0003\u0002\u0002\u0002\u0002\u0165\u0003",
- "\u0002\u0002\u0002\u0002\u0167\u0003\u0002\u0002\u0002\u0002\u0169\u0003",
- "\u0002\u0002\u0002\u0002\u016b\u0003\u0002\u0002\u0002\u0002\u016d\u0003",
- "\u0002\u0002\u0002\u0002\u016f\u0003\u0002\u0002\u0002\u0002\u0171\u0003",
- "\u0002\u0002\u0002\u0002\u0173\u0003\u0002\u0002\u0002\u0002\u0175\u0003",
- "\u0002\u0002\u0002\u0002\u0177\u0003\u0002\u0002\u0002\u0002\u0179\u0003",
- "\u0002\u0002\u0002\u0002\u017b\u0003\u0002\u0002\u0002\u0002\u017d\u0003",
- "\u0002\u0002\u0002\u0002\u017f\u0003\u0002\u0002\u0002\u0002\u0181\u0003",
- "\u0002\u0002\u0002\u0002\u0183\u0003\u0002\u0002\u0002\u0002\u0185\u0003",
- "\u0002\u0002\u0002\u0002\u0187\u0003\u0002\u0002\u0002\u0002\u0189\u0003",
- "\u0002\u0002\u0002\u0002\u018b\u0003\u0002\u0002\u0002\u0002\u018d\u0003",
- "\u0002\u0002\u0002\u0002\u018f\u0003\u0002\u0002\u0002\u0002\u0191\u0003",
- "\u0002\u0002\u0002\u0002\u0193\u0003\u0002\u0002\u0002\u0002\u0195\u0003",
- "\u0002\u0002\u0002\u0002\u0197\u0003\u0002\u0002\u0002\u0002\u0199\u0003",
- "\u0002\u0002\u0002\u0002\u019b\u0003\u0002\u0002\u0002\u0002\u019d\u0003",
- "\u0002\u0002\u0002\u0002\u019f\u0003\u0002\u0002\u0002\u0002\u01a1\u0003",
- "\u0002\u0002\u0002\u0002\u01a3\u0003\u0002\u0002\u0002\u0002\u01a5\u0003",
- "\u0002\u0002\u0002\u0002\u01a7\u0003\u0002\u0002\u0002\u0002\u01a9\u0003",
- "\u0002\u0002\u0002\u0002\u01ab\u0003\u0002\u0002\u0002\u0002\u01ad\u0003",
- "\u0002\u0002\u0002\u0002\u01af\u0003\u0002\u0002\u0002\u0002\u01b1\u0003",
- "\u0002\u0002\u0002\u0002\u01b3\u0003\u0002\u0002\u0002\u0002\u01b5\u0003",
- "\u0002\u0002\u0002\u0002\u01b7\u0003\u0002\u0002\u0002\u0002\u01b9\u0003",
- "\u0002\u0002\u0002\u0002\u01bb\u0003\u0002\u0002\u0002\u0002\u01bd\u0003",
- "\u0002\u0002\u0002\u0002\u01bf\u0003\u0002\u0002\u0002\u0002\u01c1\u0003",
- "\u0002\u0002\u0002\u0002\u01c3\u0003\u0002\u0002\u0002\u0002\u01c5\u0003",
- "\u0002\u0002\u0002\u0002\u01c7\u0003\u0002\u0002\u0002\u0002\u01c9\u0003",
- "\u0002\u0002\u0002\u0002\u01cb\u0003\u0002\u0002\u0002\u0002\u01cd\u0003",
- "\u0002\u0002\u0002\u0002\u01cf\u0003\u0002\u0002\u0002\u0002\u01d1\u0003",
- "\u0002\u0002\u0002\u0002\u01d3\u0003\u0002\u0002\u0002\u0002\u01d5\u0003",
- "\u0002\u0002\u0002\u0002\u01d7\u0003\u0002\u0002\u0002\u0002\u01d9\u0003",
- "\u0002\u0002\u0002\u0002\u01db\u0003\u0002\u0002\u0002\u0002\u01dd\u0003",
- "\u0002\u0002\u0002\u0002\u01df\u0003\u0002\u0002\u0002\u0002\u01e1\u0003",
- "\u0002\u0002\u0002\u0002\u01e3\u0003\u0002\u0002\u0002\u0002\u01e5\u0003",
- "\u0002\u0002\u0002\u0002\u01e7\u0003\u0002\u0002\u0002\u0002\u01e9\u0003",
- "\u0002\u0002\u0002\u0002\u01eb\u0003\u0002\u0002\u0002\u0002\u01ed\u0003",
- "\u0002\u0002\u0002\u0002\u01ef\u0003\u0002\u0002\u0002\u0002\u01f1\u0003",
- "\u0002\u0002\u0002\u0002\u01f3\u0003\u0002\u0002\u0002\u0002\u01f5\u0003",
- "\u0002\u0002\u0002\u0002\u01f7\u0003\u0002\u0002\u0002\u0002\u01f9\u0003",
- "\u0002\u0002\u0002\u0002\u01fb\u0003\u0002\u0002\u0002\u0002\u01fd\u0003",
- "\u0002\u0002\u0002\u0002\u01ff\u0003\u0002\u0002\u0002\u0002\u0201\u0003",
- "\u0002\u0002\u0002\u0002\u0203\u0003\u0002\u0002\u0002\u0002\u0205\u0003",
- "\u0002\u0002\u0002\u0002\u0207\u0003\u0002\u0002\u0002\u0002\u0209\u0003",
- "\u0002\u0002\u0002\u0002\u020b\u0003\u0002\u0002\u0002\u0002\u020d\u0003",
- "\u0002\u0002\u0002\u0002\u020f\u0003\u0002\u0002\u0002\u0002\u0211\u0003",
- "\u0002\u0002\u0002\u0002\u0213\u0003\u0002\u0002\u0002\u0002\u0215\u0003",
- "\u0002\u0002\u0002\u0002\u0217\u0003\u0002\u0002\u0002\u0002\u0219\u0003",
- "\u0002\u0002\u0002\u0002\u021b\u0003\u0002\u0002\u0002\u0002\u021d\u0003",
- "\u0002\u0002\u0002\u0002\u021f\u0003\u0002\u0002\u0002\u0002\u0221\u0003",
- "\u0002\u0002\u0002\u0002\u0223\u0003\u0002\u0002\u0002\u0002\u0225\u0003",
- "\u0002\u0002\u0002\u0002\u0227\u0003\u0002\u0002\u0002\u0002\u0229\u0003",
- "\u0002\u0002\u0002\u0002\u022b\u0003\u0002\u0002\u0002\u0002\u022d\u0003",
- "\u0002\u0002\u0002\u0002\u022f\u0003\u0002\u0002\u0002\u0002\u0231\u0003",
- "\u0002\u0002\u0002\u0002\u0233\u0003\u0002\u0002\u0002\u0002\u0235\u0003",
- "\u0002\u0002\u0002\u0002\u0237\u0003\u0002\u0002\u0002\u0002\u0239\u0003",
- "\u0002\u0002\u0002\u0002\u023b\u0003\u0002\u0002\u0002\u0002\u023d\u0003",
- "\u0002\u0002\u0002\u0002\u023f\u0003\u0002\u0002\u0002\u0002\u0241\u0003",
- "\u0002\u0002\u0002\u0002\u0243\u0003\u0002\u0002\u0002\u0002\u0245\u0003",
- "\u0002\u0002\u0002\u0002\u0247\u0003\u0002\u0002\u0002\u0002\u0249\u0003",
- "\u0002\u0002\u0002\u0002\u024b\u0003\u0002\u0002\u0002\u0002\u024d\u0003",
- "\u0002\u0002\u0002\u0002\u024f\u0003\u0002\u0002\u0002\u0002\u0251\u0003",
- "\u0002\u0002\u0002\u0002\u0253\u0003\u0002\u0002\u0002\u0002\u0255\u0003",
- "\u0002\u0002\u0002\u0002\u0257\u0003\u0002\u0002\u0002\u0002\u0259\u0003",
- "\u0002\u0002\u0002\u0002\u025b\u0003\u0002\u0002\u0002\u0002\u025d\u0003",
- "\u0002\u0002\u0002\u0002\u025f\u0003\u0002\u0002\u0002\u0002\u0261\u0003",
- "\u0002\u0002\u0002\u0002\u0263\u0003\u0002\u0002\u0002\u0002\u0265\u0003",
- "\u0002\u0002\u0002\u0002\u0267\u0003\u0002\u0002\u0002\u0002\u0269\u0003",
- "\u0002\u0002\u0002\u0002\u026b\u0003\u0002\u0002\u0002\u0002\u026d\u0003",
- "\u0002\u0002\u0002\u0002\u026f\u0003\u0002\u0002\u0002\u0002\u0271\u0003",
- "\u0002\u0002\u0002\u0002\u0273\u0003\u0002\u0002\u0002\u0002\u0275\u0003",
- "\u0002\u0002\u0002\u0002\u0277\u0003\u0002\u0002\u0002\u0002\u0279\u0003",
- "\u0002\u0002\u0002\u0002\u027b\u0003\u0002\u0002\u0002\u0002\u027d\u0003",
- "\u0002\u0002\u0002\u0002\u027f\u0003\u0002\u0002\u0002\u0002\u0281\u0003",
- "\u0002\u0002\u0002\u0002\u0283\u0003\u0002\u0002\u0002\u0002\u0285\u0003",
- "\u0002\u0002\u0002\u0002\u0287\u0003\u0002\u0002\u0002\u0002\u0289\u0003",
- "\u0002\u0002\u0002\u0002\u028b\u0003\u0002\u0002\u0002\u0002\u028d\u0003",
- "\u0002\u0002\u0002\u0002\u028f\u0003\u0002\u0002\u0002\u0002\u0291\u0003",
- "\u0002\u0002\u0002\u0002\u0293\u0003\u0002\u0002\u0002\u0002\u0295\u0003",
- "\u0002\u0002\u0002\u0002\u0297\u0003\u0002\u0002\u0002\u0002\u0299\u0003",
- "\u0002\u0002\u0002\u0002\u029b\u0003\u0002\u0002\u0002\u0002\u029d\u0003",
- "\u0002\u0002\u0002\u0002\u029f\u0003\u0002\u0002\u0002\u0002\u02a1\u0003",
- "\u0002\u0002\u0002\u0002\u02a3\u0003\u0002\u0002\u0002\u0002\u02a5\u0003",
- "\u0002\u0002\u0002\u0002\u02a7\u0003\u0002\u0002\u0002\u0002\u02a9\u0003",
- "\u0002\u0002\u0002\u0002\u02ab\u0003\u0002\u0002\u0002\u0002\u02ad\u0003",
- "\u0002\u0002\u0002\u0002\u02af\u0003\u0002\u0002\u0002\u0002\u02b1\u0003",
- "\u0002\u0002\u0002\u0002\u02b3\u0003\u0002\u0002\u0002\u0002\u02b5\u0003",
- "\u0002\u0002\u0002\u0002\u02b7\u0003\u0002\u0002\u0002\u0002\u02b9\u0003",
- "\u0002\u0002\u0002\u0002\u02bb\u0003\u0002\u0002\u0002\u0002\u02bd\u0003",
- "\u0002\u0002\u0002\u0002\u02bf\u0003\u0002\u0002\u0002\u0002\u02c1\u0003",
- "\u0002\u0002\u0002\u0002\u02c3\u0003\u0002\u0002\u0002\u0002\u02c5\u0003",
- "\u0002\u0002\u0002\u0002\u02c7\u0003\u0002\u0002\u0002\u0002\u02c9\u0003",
- "\u0002\u0002\u0002\u0002\u02cb\u0003\u0002\u0002\u0002\u0002\u02cd\u0003",
- "\u0002\u0002\u0002\u0002\u02cf\u0003\u0002\u0002\u0002\u0002\u02d1\u0003",
- "\u0002\u0002\u0002\u0002\u02d3\u0003\u0002\u0002\u0002\u0002\u02d5\u0003",
- "\u0002\u0002\u0002\u0002\u02d7\u0003\u0002\u0002\u0002\u0002\u02d9\u0003",
- "\u0002\u0002\u0002\u0002\u02db\u0003\u0002\u0002\u0002\u0002\u02dd\u0003",
- "\u0002\u0002\u0002\u0002\u02df\u0003\u0002\u0002\u0002\u0002\u02e1\u0003",
- "\u0002\u0002\u0002\u0002\u02e3\u0003\u0002\u0002\u0002\u0002\u02e5\u0003",
- "\u0002\u0002\u0002\u0002\u02e7\u0003\u0002\u0002\u0002\u0002\u02e9\u0003",
- "\u0002\u0002\u0002\u0002\u02eb\u0003\u0002\u0002\u0002\u0002\u02ed\u0003",
- "\u0002\u0002\u0002\u0002\u02ef\u0003\u0002\u0002\u0002\u0002\u02f1\u0003",
- "\u0002\u0002\u0002\u0002\u02f3\u0003\u0002\u0002\u0002\u0002\u02f5\u0003",
- "\u0002\u0002\u0002\u0002\u02f7\u0003\u0002\u0002\u0002\u0002\u02f9\u0003",
- "\u0002\u0002\u0002\u0002\u02fb\u0003\u0002\u0002\u0002\u0002\u02fd\u0003",
- "\u0002\u0002\u0002\u0002\u02ff\u0003\u0002\u0002\u0002\u0002\u0301\u0003",
- "\u0002\u0002\u0002\u0002\u0303\u0003\u0002\u0002\u0002\u0002\u0305\u0003",
- "\u0002\u0002\u0002\u0002\u0307\u0003\u0002\u0002\u0002\u0002\u0309\u0003",
- "\u0002\u0002\u0002\u0002\u030b\u0003\u0002\u0002\u0002\u0002\u030d\u0003",
- "\u0002\u0002\u0002\u0002\u030f\u0003\u0002\u0002\u0002\u0002\u0311\u0003",
- "\u0002\u0002\u0002\u0002\u0313\u0003\u0002\u0002\u0002\u0002\u0315\u0003",
- "\u0002\u0002\u0002\u0002\u0317\u0003\u0002\u0002\u0002\u0002\u0319\u0003",
- "\u0002\u0002\u0002\u0002\u031b\u0003\u0002\u0002\u0002\u0002\u031d\u0003",
- "\u0002\u0002\u0002\u0002\u031f\u0003\u0002\u0002\u0002\u0002\u0321\u0003",
- "\u0002\u0002\u0002\u0002\u0323\u0003\u0002\u0002\u0002\u0002\u0325\u0003",
- "\u0002\u0002\u0002\u0002\u0327\u0003\u0002\u0002\u0002\u0002\u0329\u0003",
- "\u0002\u0002\u0002\u0002\u032b\u0003\u0002\u0002\u0002\u0002\u032d\u0003",
- "\u0002\u0002\u0002\u0002\u032f\u0003\u0002\u0002\u0002\u0002\u0331\u0003",
- "\u0002\u0002\u0002\u0002\u0333\u0003\u0002\u0002\u0002\u0002\u0335\u0003",
- "\u0002\u0002\u0002\u0002\u0337\u0003\u0002\u0002\u0002\u0002\u0339\u0003",
- "\u0002\u0002\u0002\u0002\u033b\u0003\u0002\u0002\u0002\u0002\u033d\u0003",
- "\u0002\u0002\u0002\u0002\u033f\u0003\u0002\u0002\u0002\u0002\u0341\u0003",
- "\u0002\u0002\u0002\u0002\u0343\u0003\u0002\u0002\u0002\u0002\u0345\u0003",
- "\u0002\u0002\u0002\u0002\u0347\u0003\u0002\u0002\u0002\u0002\u0349\u0003",
- "\u0002\u0002\u0002\u0002\u034b\u0003\u0002\u0002\u0002\u0002\u034d\u0003",
- "\u0002\u0002\u0002\u0002\u034f\u0003\u0002\u0002\u0002\u0002\u0351\u0003",
- "\u0002\u0002\u0002\u0002\u0353\u0003\u0002\u0002\u0002\u0002\u0355\u0003",
- "\u0002\u0002\u0002\u0002\u0357\u0003\u0002\u0002\u0002\u0002\u0359\u0003",
- "\u0002\u0002\u0002\u0002\u035b\u0003\u0002\u0002\u0002\u0002\u035d\u0003",
- "\u0002\u0002\u0002\u0002\u035f\u0003\u0002\u0002\u0002\u0002\u0361\u0003",
- "\u0002\u0002\u0002\u0002\u0363\u0003\u0002\u0002\u0002\u0002\u0365\u0003",
- "\u0002\u0002\u0002\u0002\u0367\u0003\u0002\u0002\u0002\u0002\u0369\u0003",
- "\u0002\u0002\u0002\u0002\u036b\u0003\u0002\u0002\u0002\u0002\u036d\u0003",
- "\u0002\u0002\u0002\u0002\u036f\u0003\u0002\u0002\u0002\u0002\u0371\u0003",
- "\u0002\u0002\u0002\u0002\u0373\u0003\u0002\u0002\u0002\u0002\u0375\u0003",
- "\u0002\u0002\u0002\u0002\u0377\u0003\u0002\u0002\u0002\u0002\u0379\u0003",
- "\u0002\u0002\u0002\u0002\u037b\u0003\u0002\u0002\u0002\u0002\u037d\u0003",
- "\u0002\u0002\u0002\u0002\u037f\u0003\u0002\u0002\u0002\u0002\u0381\u0003",
- "\u0002\u0002\u0002\u0002\u0383\u0003\u0002\u0002\u0002\u0002\u0385\u0003",
- "\u0002\u0002\u0002\u0002\u0387\u0003\u0002\u0002\u0002\u0002\u0389\u0003",
- "\u0002\u0002\u0002\u0002\u038b\u0003\u0002\u0002\u0002\u0002\u038d\u0003",
- "\u0002\u0002\u0002\u0002\u038f\u0003\u0002\u0002\u0002\u0002\u0391\u0003",
- "\u0002\u0002\u0002\u0002\u0393\u0003\u0002\u0002\u0002\u0002\u0395\u0003",
- "\u0002\u0002\u0002\u0002\u0397\u0003\u0002\u0002\u0002\u0002\u0399\u0003",
- "\u0002\u0002\u0002\u0002\u039b\u0003\u0002\u0002\u0002\u0002\u039d\u0003",
- "\u0002\u0002\u0002\u0002\u039f\u0003\u0002\u0002\u0002\u0002\u03a1\u0003",
- "\u0002\u0002\u0002\u0002\u03a3\u0003\u0002\u0002\u0002\u0002\u03a5\u0003",
- "\u0002\u0002\u0002\u0002\u03a7\u0003\u0002\u0002\u0002\u0002\u03a9\u0003",
- "\u0002\u0002\u0002\u0002\u03ab\u0003\u0002\u0002\u0002\u0002\u03ad\u0003",
- "\u0002\u0002\u0002\u0002\u03af\u0003\u0002\u0002\u0002\u0002\u03b1\u0003",
- "\u0002\u0002\u0002\u0002\u03b3\u0003\u0002\u0002\u0002\u0002\u03b5\u0003",
- "\u0002\u0002\u0002\u0002\u03b7\u0003\u0002\u0002\u0002\u0002\u03b9\u0003",
- "\u0002\u0002\u0002\u0002\u03bb\u0003\u0002\u0002\u0002\u0002\u03bd\u0003",
- "\u0002\u0002\u0002\u0002\u03bf\u0003\u0002\u0002\u0002\u0002\u03c1\u0003",
- "\u0002\u0002\u0002\u0002\u03c3\u0003\u0002\u0002\u0002\u0002\u03c5\u0003",
- "\u0002\u0002\u0002\u0002\u03c7\u0003\u0002\u0002\u0002\u0002\u03c9\u0003",
- "\u0002\u0002\u0002\u0002\u03cb\u0003\u0002\u0002\u0002\u0002\u03cd\u0003",
- "\u0002\u0002\u0002\u0002\u03cf\u0003\u0002\u0002\u0002\u0002\u03d1\u0003",
- "\u0002\u0002\u0002\u0002\u03d3\u0003\u0002\u0002\u0002\u0002\u03d5\u0003",
- "\u0002\u0002\u0002\u0002\u03d7\u0003\u0002\u0002\u0002\u0002\u03d9\u0003",
- "\u0002\u0002\u0002\u0002\u03db\u0003\u0002\u0002\u0002\u0002\u03dd\u0003",
- "\u0002\u0002\u0002\u0002\u03df\u0003\u0002\u0002\u0002\u0002\u03e1\u0003",
- "\u0002\u0002\u0002\u0002\u03e3\u0003\u0002\u0002\u0002\u0002\u03e5\u0003",
- "\u0002\u0002\u0002\u0002\u03e7\u0003\u0002\u0002\u0002\u0002\u03e9\u0003",
- "\u0002\u0002\u0002\u0002\u03eb\u0003\u0002\u0002\u0002\u0002\u03ed\u0003",
- "\u0002\u0002\u0002\u0002\u03ef\u0003\u0002\u0002\u0002\u0002\u03f1\u0003",
- "\u0002\u0002\u0002\u0002\u03f3\u0003\u0002\u0002\u0002\u0002\u03f5\u0003",
- "\u0002\u0002\u0002\u0002\u03f7\u0003\u0002\u0002\u0002\u0002\u03f9\u0003",
- "\u0002\u0002\u0002\u0002\u03fb\u0003\u0002\u0002\u0002\u0002\u03fd\u0003",
- "\u0002\u0002\u0002\u0002\u03ff\u0003\u0002\u0002\u0002\u0002\u0401\u0003",
- "\u0002\u0002\u0002\u0002\u0403\u0003\u0002\u0002\u0002\u0002\u0405\u0003",
- "\u0002\u0002\u0002\u0002\u0407\u0003\u0002\u0002\u0002\u0002\u0409\u0003",
- "\u0002\u0002\u0002\u0002\u040b\u0003\u0002\u0002\u0002\u0002\u040d\u0003",
- "\u0002\u0002\u0002\u0002\u040f\u0003\u0002\u0002\u0002\u0002\u0411\u0003",
- "\u0002\u0002\u0002\u0002\u0413\u0003\u0002\u0002\u0002\u0002\u0415\u0003",
- "\u0002\u0002\u0002\u0002\u0417\u0003\u0002\u0002\u0002\u0002\u0419\u0003",
- "\u0002\u0002\u0002\u0002\u041b\u0003\u0002\u0002\u0002\u0002\u041d\u0003",
- "\u0002\u0002\u0002\u0002\u041f\u0003\u0002\u0002\u0002\u0002\u0421\u0003",
- "\u0002\u0002\u0002\u0002\u0423\u0003\u0002\u0002\u0002\u0002\u0425\u0003",
- "\u0002\u0002\u0002\u0002\u0427\u0003\u0002\u0002\u0002\u0002\u0429\u0003",
- "\u0002\u0002\u0002\u0002\u042b\u0003\u0002\u0002\u0002\u0002\u042d\u0003",
- "\u0002\u0002\u0002\u0002\u042f\u0003\u0002\u0002\u0002\u0002\u0431\u0003",
- "\u0002\u0002\u0002\u0002\u0433\u0003\u0002\u0002\u0002\u0002\u0435\u0003",
- "\u0002\u0002\u0002\u0002\u0437\u0003\u0002\u0002\u0002\u0002\u0439\u0003",
- "\u0002\u0002\u0002\u0002\u043b\u0003\u0002\u0002\u0002\u0002\u043d\u0003",
- "\u0002\u0002\u0002\u0002\u043f\u0003\u0002\u0002\u0002\u0002\u0441\u0003",
- "\u0002\u0002\u0002\u0002\u0443\u0003\u0002\u0002\u0002\u0002\u0445\u0003",
- "\u0002\u0002\u0002\u0002\u0447\u0003\u0002\u0002\u0002\u0002\u0449\u0003",
- "\u0002\u0002\u0002\u0002\u044b\u0003\u0002\u0002\u0002\u0002\u044d\u0003",
- "\u0002\u0002\u0002\u0002\u044f\u0003\u0002\u0002\u0002\u0002\u0451\u0003",
- "\u0002\u0002\u0002\u0002\u0453\u0003\u0002\u0002\u0002\u0002\u0455\u0003",
- "\u0002\u0002\u0002\u0002\u0457\u0003\u0002\u0002\u0002\u0002\u0459\u0003",
- "\u0002\u0002\u0002\u0002\u045b\u0003\u0002\u0002\u0002\u0002\u045d\u0003",
- "\u0002\u0002\u0002\u0002\u045f\u0003\u0002\u0002\u0002\u0002\u0461\u0003",
- "\u0002\u0002\u0002\u0002\u0463\u0003\u0002\u0002\u0002\u0002\u0465\u0003",
- "\u0002\u0002\u0002\u0002\u0467\u0003\u0002\u0002\u0002\u0002\u0469\u0003",
- "\u0002\u0002\u0002\u0002\u046b\u0003\u0002\u0002\u0002\u0002\u046d\u0003",
- "\u0002\u0002\u0002\u0002\u046f\u0003\u0002\u0002\u0002\u0002\u0471\u0003",
- "\u0002\u0002\u0002\u0002\u0473\u0003\u0002\u0002\u0002\u0002\u0475\u0003",
- "\u0002\u0002\u0002\u0002\u0477\u0003\u0002\u0002\u0002\u0002\u0479\u0003",
- "\u0002\u0002\u0002\u0002\u047b\u0003\u0002\u0002\u0002\u0002\u047d\u0003",
- "\u0002\u0002\u0002\u0002\u047f\u0003\u0002\u0002\u0002\u0002\u0481\u0003",
- "\u0002\u0002\u0002\u0002\u0483\u0003\u0002\u0002\u0002\u0002\u0485\u0003",
- "\u0002\u0002\u0002\u0002\u0487\u0003\u0002\u0002\u0002\u0002\u0489\u0003",
- "\u0002\u0002\u0002\u0002\u048b\u0003\u0002\u0002\u0002\u0002\u048d\u0003",
- "\u0002\u0002\u0002\u0002\u048f\u0003\u0002\u0002\u0002\u0002\u0491\u0003",
- "\u0002\u0002\u0002\u0002\u0493\u0003\u0002\u0002\u0002\u0002\u0495\u0003",
- "\u0002\u0002\u0002\u0002\u0497\u0003\u0002\u0002\u0002\u0002\u0499\u0003",
- "\u0002\u0002\u0002\u0002\u049b\u0003\u0002\u0002\u0002\u0002\u049d\u0003",
- "\u0002\u0002\u0002\u0002\u049f\u0003\u0002\u0002\u0002\u0002\u04a1\u0003",
- "\u0002\u0002\u0002\u0002\u04a3\u0003\u0002\u0002\u0002\u0002\u04a5\u0003",
- "\u0002\u0002\u0002\u0002\u04a7\u0003\u0002\u0002\u0002\u0002\u04a9\u0003",
- "\u0002\u0002\u0002\u0002\u04ab\u0003\u0002\u0002\u0002\u0002\u04ad\u0003",
- "\u0002\u0002\u0002\u0002\u04af\u0003\u0002\u0002\u0002\u0002\u04b1\u0003",
- "\u0002\u0002\u0002\u0002\u04b3\u0003\u0002\u0002\u0002\u0002\u04b5\u0003",
- "\u0002\u0002\u0002\u0002\u04b7\u0003\u0002\u0002\u0002\u0002\u04b9\u0003",
- "\u0002\u0002\u0002\u0002\u04bb\u0003\u0002\u0002\u0002\u0002\u04bd\u0003",
- "\u0002\u0002\u0002\u0002\u04bf\u0003\u0002\u0002\u0002\u0002\u04c1\u0003",
- "\u0002\u0002\u0002\u0002\u04c3\u0003\u0002\u0002\u0002\u0002\u04c5\u0003",
- "\u0002\u0002\u0002\u0002\u04c7\u0003\u0002\u0002\u0002\u0002\u04c9\u0003",
- "\u0002\u0002\u0002\u0002\u04cb\u0003\u0002\u0002\u0002\u0002\u04cd\u0003",
- "\u0002\u0002\u0002\u0002\u04cf\u0003\u0002\u0002\u0002\u0002\u04d1\u0003",
- "\u0002\u0002\u0002\u0002\u04d3\u0003\u0002\u0002\u0002\u0002\u04d5\u0003",
- "\u0002\u0002\u0002\u0002\u04d7\u0003\u0002\u0002\u0002\u0002\u04d9\u0003",
- "\u0002\u0002\u0002\u0002\u04db\u0003\u0002\u0002\u0002\u0002\u04dd\u0003",
- "\u0002\u0002\u0002\u0002\u04df\u0003\u0002\u0002\u0002\u0002\u04e1\u0003",
- "\u0002\u0002\u0002\u0002\u04e3\u0003\u0002\u0002\u0002\u0002\u04e5\u0003",
- "\u0002\u0002\u0002\u0002\u04e7\u0003\u0002\u0002\u0002\u0002\u04e9\u0003",
- "\u0002\u0002\u0002\u0002\u04eb\u0003\u0002\u0002\u0002\u0002\u04ed\u0003",
- "\u0002\u0002\u0002\u0002\u04ef\u0003\u0002\u0002\u0002\u0002\u04f1\u0003",
- "\u0002\u0002\u0002\u0002\u04f3\u0003\u0002\u0002\u0002\u0002\u04f5\u0003",
- "\u0002\u0002\u0002\u0002\u04f7\u0003\u0002\u0002\u0002\u0002\u04f9\u0003",
- "\u0002\u0002\u0002\u0002\u04fb\u0003\u0002\u0002\u0002\u0002\u04fd\u0003",
- "\u0002\u0002\u0002\u0002\u04ff\u0003\u0002\u0002\u0002\u0002\u0501\u0003",
- "\u0002\u0002\u0002\u0002\u0503\u0003\u0002\u0002\u0002\u0002\u0505\u0003",
- "\u0002\u0002\u0002\u0002\u0507\u0003\u0002\u0002\u0002\u0002\u0509\u0003",
- "\u0002\u0002\u0002\u0002\u050b\u0003\u0002\u0002\u0002\u0002\u050d\u0003",
- "\u0002\u0002\u0002\u0002\u050f\u0003\u0002\u0002\u0002\u0002\u0511\u0003",
- "\u0002\u0002\u0002\u0002\u0513\u0003\u0002\u0002\u0002\u0002\u0515\u0003",
- "\u0002\u0002\u0002\u0002\u0517\u0003\u0002\u0002\u0002\u0002\u0519\u0003",
- "\u0002\u0002\u0002\u0002\u051b\u0003\u0002\u0002\u0002\u0002\u051d\u0003",
- "\u0002\u0002\u0002\u0002\u051f\u0003\u0002\u0002\u0002\u0002\u0521\u0003",
- "\u0002\u0002\u0002\u0002\u0523\u0003\u0002\u0002\u0002\u0002\u0525\u0003",
- "\u0002\u0002\u0002\u0002\u0527\u0003\u0002\u0002\u0002\u0002\u0529\u0003",
- "\u0002\u0002\u0002\u0002\u052b\u0003\u0002\u0002\u0002\u0002\u052d\u0003",
- "\u0002\u0002\u0002\u0002\u052f\u0003\u0002\u0002\u0002\u0002\u0531\u0003",
- "\u0002\u0002\u0002\u0002\u0533\u0003\u0002\u0002\u0002\u0002\u0535\u0003",
- "\u0002\u0002\u0002\u0002\u0537\u0003\u0002\u0002\u0002\u0002\u0539\u0003",
- "\u0002\u0002\u0002\u0002\u053b\u0003\u0002\u0002\u0002\u0002\u053d\u0003",
- "\u0002\u0002\u0002\u0002\u053f\u0003\u0002\u0002\u0002\u0002\u0541\u0003",
- "\u0002\u0002\u0002\u0002\u0543\u0003\u0002\u0002\u0002\u0002\u0545\u0003",
- "\u0002\u0002\u0002\u0002\u0547\u0003\u0002\u0002\u0002\u0002\u0549\u0003",
- "\u0002\u0002\u0002\u0002\u054b\u0003\u0002\u0002\u0002\u0002\u054d\u0003",
- "\u0002\u0002\u0002\u0002\u054f\u0003\u0002\u0002\u0002\u0002\u0551\u0003",
- "\u0002\u0002\u0002\u0002\u0553\u0003\u0002\u0002\u0002\u0002\u0555\u0003",
- "\u0002\u0002\u0002\u0002\u0557\u0003\u0002\u0002\u0002\u0002\u0559\u0003",
- "\u0002\u0002\u0002\u0002\u055b\u0003\u0002\u0002\u0002\u0002\u055d\u0003",
- "\u0002\u0002\u0002\u0002\u055f\u0003\u0002\u0002\u0002\u0002\u0561\u0003",
- "\u0002\u0002\u0002\u0002\u0563\u0003\u0002\u0002\u0002\u0002\u0565\u0003",
- "\u0002\u0002\u0002\u0002\u0567\u0003\u0002\u0002\u0002\u0002\u0569\u0003",
- "\u0002\u0002\u0002\u0002\u056b\u0003\u0002\u0002\u0002\u0002\u056d\u0003",
- "\u0002\u0002\u0002\u0002\u056f\u0003\u0002\u0002\u0002\u0002\u0571\u0003",
- "\u0002\u0002\u0002\u0002\u0573\u0003\u0002\u0002\u0002\u0002\u0575\u0003",
- "\u0002\u0002\u0002\u0002\u0577\u0003\u0002\u0002\u0002\u0002\u0579\u0003",
- "\u0002\u0002\u0002\u0002\u057b\u0003\u0002\u0002\u0002\u0002\u057d\u0003",
- "\u0002\u0002\u0002\u0002\u057f\u0003\u0002\u0002\u0002\u0002\u0581\u0003",
- "\u0002\u0002\u0002\u0002\u0583\u0003\u0002\u0002\u0002\u0002\u0585\u0003",
- "\u0002\u0002\u0002\u0002\u0587\u0003\u0002\u0002\u0002\u0002\u0589\u0003",
- "\u0002\u0002\u0002\u0002\u058b\u0003\u0002\u0002\u0002\u0002\u058d\u0003",
- "\u0002\u0002\u0002\u0002\u058f\u0003\u0002\u0002\u0002\u0002\u0591\u0003",
- "\u0002\u0002\u0002\u0002\u0593\u0003\u0002\u0002\u0002\u0002\u0595\u0003",
- "\u0002\u0002\u0002\u0002\u0597\u0003\u0002\u0002\u0002\u0002\u0599\u0003",
- "\u0002\u0002\u0002\u0002\u059b\u0003\u0002\u0002\u0002\u0002\u059d\u0003",
- "\u0002\u0002\u0002\u0002\u059f\u0003\u0002\u0002\u0002\u0002\u05a1\u0003",
- "\u0002\u0002\u0002\u0002\u05a3\u0003\u0002\u0002\u0002\u0002\u05a5\u0003",
- "\u0002\u0002\u0002\u0002\u05a7\u0003\u0002\u0002\u0002\u0002\u05a9\u0003",
- "\u0002\u0002\u0002\u0002\u05ab\u0003\u0002\u0002\u0002\u0002\u05ad\u0003",
- "\u0002\u0002\u0002\u0002\u05af\u0003\u0002\u0002\u0002\u0002\u05b1\u0003",
- "\u0002\u0002\u0002\u0002\u05b3\u0003\u0002\u0002\u0002\u0002\u05b5\u0003",
- "\u0002\u0002\u0002\u0002\u05b7\u0003\u0002\u0002\u0002\u0002\u05b9\u0003",
- "\u0002\u0002\u0002\u0002\u05bb\u0003\u0002\u0002\u0002\u0002\u05bd\u0003",
- "\u0002\u0002\u0002\u0002\u05bf\u0003\u0002\u0002\u0002\u0002\u05c1\u0003",
- "\u0002\u0002\u0002\u0002\u05c3\u0003\u0002\u0002\u0002\u0002\u05c5\u0003",
- "\u0002\u0002\u0002\u0002\u05c7\u0003\u0002\u0002\u0002\u0002\u05c9\u0003",
- "\u0002\u0002\u0002\u0002\u05cb\u0003\u0002\u0002\u0002\u0002\u05cd\u0003",
- "\u0002\u0002\u0002\u0002\u05cf\u0003\u0002\u0002\u0002\u0002\u05d1\u0003",
- "\u0002\u0002\u0002\u0002\u05d3\u0003\u0002\u0002\u0002\u0002\u05d5\u0003",
- "\u0002\u0002\u0002\u0002\u05d7\u0003\u0002\u0002\u0002\u0002\u05d9\u0003",
- "\u0002\u0002\u0002\u0002\u05db\u0003\u0002\u0002\u0002\u0002\u05dd\u0003",
- "\u0002\u0002\u0002\u0002\u05df\u0003\u0002\u0002\u0002\u0002\u05e1\u0003",
- "\u0002\u0002\u0002\u0002\u05e3\u0003\u0002\u0002\u0002\u0002\u05e5\u0003",
- "\u0002\u0002\u0002\u0002\u05e7\u0003\u0002\u0002\u0002\u0002\u05e9\u0003",
- "\u0002\u0002\u0002\u0002\u05eb\u0003\u0002\u0002\u0002\u0002\u05ed\u0003",
- "\u0002\u0002\u0002\u0002\u05ef\u0003\u0002\u0002\u0002\u0002\u05f1\u0003",
- "\u0002\u0002\u0002\u0002\u05f3\u0003\u0002\u0002\u0002\u0002\u05f5\u0003",
- "\u0002\u0002\u0002\u0002\u05f7\u0003\u0002\u0002\u0002\u0002\u05f9\u0003",
- "\u0002\u0002\u0002\u0002\u05fb\u0003\u0002\u0002\u0002\u0002\u05fd\u0003",
- "\u0002\u0002\u0002\u0002\u05ff\u0003\u0002\u0002\u0002\u0002\u0601\u0003",
- "\u0002\u0002\u0002\u0002\u0603\u0003\u0002\u0002\u0002\u0002\u0605\u0003",
- "\u0002\u0002\u0002\u0002\u0607\u0003\u0002\u0002\u0002\u0002\u0609\u0003",
- "\u0002\u0002\u0002\u0002\u060b\u0003\u0002\u0002\u0002\u0002\u060d\u0003",
- "\u0002\u0002\u0002\u0002\u060f\u0003\u0002\u0002\u0002\u0002\u0611\u0003",
- "\u0002\u0002\u0002\u0002\u0613\u0003\u0002\u0002\u0002\u0002\u0615\u0003",
- "\u0002\u0002\u0002\u0002\u0617\u0003\u0002\u0002\u0002\u0002\u0619\u0003",
- "\u0002\u0002\u0002\u0002\u061b\u0003\u0002\u0002\u0002\u0002\u061d\u0003",
- "\u0002\u0002\u0002\u0002\u061f\u0003\u0002\u0002\u0002\u0002\u0621\u0003",
- "\u0002\u0002\u0002\u0002\u0623\u0003\u0002\u0002\u0002\u0002\u0625\u0003",
- "\u0002\u0002\u0002\u0002\u0627\u0003\u0002\u0002\u0002\u0002\u0629\u0003",
- "\u0002\u0002\u0002\u0002\u062b\u0003\u0002\u0002\u0002\u0002\u062d\u0003",
- "\u0002\u0002\u0002\u0002\u062f\u0003\u0002\u0002\u0002\u0002\u0631\u0003",
- "\u0002\u0002\u0002\u0002\u0633\u0003\u0002\u0002\u0002\u0002\u0635\u0003",
- "\u0002\u0002\u0002\u0002\u0637\u0003\u0002\u0002\u0002\u0002\u0639\u0003",
- "\u0002\u0002\u0002\u0002\u063b\u0003\u0002\u0002\u0002\u0002\u063d\u0003",
- "\u0002\u0002\u0002\u0002\u063f\u0003\u0002\u0002\u0002\u0002\u0641\u0003",
- "\u0002\u0002\u0002\u0002\u0643\u0003\u0002\u0002\u0002\u0002\u0645\u0003",
- "\u0002\u0002\u0002\u0002\u0647\u0003\u0002\u0002\u0002\u0002\u0649\u0003",
- "\u0002\u0002\u0002\u0002\u064b\u0003\u0002\u0002\u0002\u0002\u064d\u0003",
- "\u0002\u0002\u0002\u0002\u064f\u0003\u0002\u0002\u0002\u0002\u0651\u0003",
- "\u0002\u0002\u0002\u0002\u0653\u0003\u0002\u0002\u0002\u0002\u0655\u0003",
- "\u0002\u0002\u0002\u0002\u0657\u0003\u0002\u0002\u0002\u0002\u0659\u0003",
- "\u0002\u0002\u0002\u0002\u065b\u0003\u0002\u0002\u0002\u0002\u065d\u0003",
- "\u0002\u0002\u0002\u0002\u065f\u0003\u0002\u0002\u0002\u0002\u0661\u0003",
- "\u0002\u0002\u0002\u0002\u0663\u0003\u0002\u0002\u0002\u0002\u0665\u0003",
- "\u0002\u0002\u0002\u0002\u0667\u0003\u0002\u0002\u0002\u0002\u0669\u0003",
- "\u0002\u0002\u0002\u0002\u066b\u0003\u0002\u0002\u0002\u0002\u066d\u0003",
- "\u0002\u0002\u0002\u0002\u066f\u0003\u0002\u0002\u0002\u0002\u0671\u0003",
- "\u0002\u0002\u0002\u0002\u0673\u0003\u0002\u0002\u0002\u0002\u0675\u0003",
- "\u0002\u0002\u0002\u0002\u0677\u0003\u0002\u0002\u0002\u0002\u0679\u0003",
- "\u0002\u0002\u0002\u0002\u067b\u0003\u0002\u0002\u0002\u0002\u067d\u0003",
- "\u0002\u0002\u0002\u0002\u067f\u0003\u0002\u0002\u0002\u0002\u0681\u0003",
- "\u0002\u0002\u0002\u0002\u0683\u0003\u0002\u0002\u0002\u0002\u0685\u0003",
- "\u0002\u0002\u0002\u0002\u0687\u0003\u0002\u0002\u0002\u0002\u0689\u0003",
- "\u0002\u0002\u0002\u0002\u068b\u0003\u0002\u0002\u0002\u0002\u068d\u0003",
- "\u0002\u0002\u0002\u0002\u068f\u0003\u0002\u0002\u0002\u0002\u0695\u0003",
- "\u0002\u0002\u0002\u0003\u069f\u0003\u0002\u0002\u0002\u0005\u06a6\u0003",
- "\u0002\u0002\u0002\u0007\u06aa\u0003\u0002\u0002\u0002\t\u06ae\u0003",
- "\u0002\u0002\u0002\u000b\u06b2\u0003\u0002\u0002\u0002\r\u06c4\u0003",
- "\u0002\u0002\u0002\u000f\u06de\u0003\u0002\u0002\u0002\u0011\u06f6\u0003",
- "\u0002\u0002\u0002\u0013\u06fc\u0003\u0002\u0002\u0002\u0015\u0700\u0003",
- "\u0002\u0002\u0002\u0017\u070a\u0003\u0002\u0002\u0002\u0019\u070e\u0003",
- "\u0002\u0002\u0002\u001b\u0715\u0003\u0002\u0002\u0002\u001d\u0721\u0003",
- "\u0002\u0002\u0002\u001f\u0724\u0003\u0002\u0002\u0002!\u0728\u0003",
- "\u0002\u0002\u0002#\u0733\u0003\u0002\u0002\u0002%\u0747\u0003\u0002",
- "\u0002\u0002\'\u0755\u0003\u0002\u0002\u0002)\u0764\u0003\u0002\u0002",
- "\u0002+\u0780\u0003\u0002\u0002\u0002-\u078a\u0003\u0002\u0002\u0002",
- "/\u079c\u0003\u0002\u0002\u00021\u079e\u0003\u0002\u0002\u00023\u07a5",
- "\u0003\u0002\u0002\u00025\u07ac\u0003\u0002\u0002\u00027\u07b2\u0003",
- "\u0002\u0002\u00029\u07ba\u0003\u0002\u0002\u0002;\u07c0\u0003\u0002",
- "\u0002\u0002=\u07ca\u0003\u0002\u0002\u0002?\u07dd\u0003\u0002\u0002",
- "\u0002A\u07e3\u0003\u0002\u0002\u0002C\u07ea\u0003\u0002\u0002\u0002",
- "E\u07f1\u0003\u0002\u0002\u0002G\u07fd\u0003\u0002\u0002\u0002I\u0802",
- "\u0003\u0002\u0002\u0002K\u0805\u0003\u0002\u0002\u0002M\u080b\u0003",
- "\u0002\u0002\u0002O\u0812\u0003\u0002\u0002\u0002Q\u081a\u0003\u0002",
- "\u0002\u0002S\u081f\u0003\u0002\u0002\u0002U\u082b\u0003\u0002\u0002",
- "\u0002W\u0837\u0003\u0002\u0002\u0002Y\u083f\u0003\u0002\u0002\u0002",
- "[\u0845\u0003\u0002\u0002\u0002]\u0850\u0003\u0002\u0002\u0002_\u085d",
- "\u0003\u0002\u0002\u0002a\u086e\u0003\u0002\u0002\u0002c\u0882\u0003",
- "\u0002\u0002\u0002e\u0888\u0003\u0002\u0002\u0002g\u0890\u0003\u0002",
- "\u0002\u0002i\u089a\u0003\u0002\u0002\u0002k\u08a3\u0003\u0002\u0002",
- "\u0002m\u08ab\u0003\u0002\u0002\u0002o\u08b2\u0003\u0002\u0002\u0002",
- "q\u08be\u0003\u0002\u0002\u0002s\u08c5\u0003\u0002\u0002\u0002u\u08cd",
- "\u0003\u0002\u0002\u0002w\u08db\u0003\u0002\u0002\u0002y\u08e6\u0003",
- "\u0002\u0002\u0002{\u08f2\u0003\u0002\u0002\u0002}\u08fb\u0003\u0002",
- "\u0002\u0002\u007f\u0909\u0003\u0002\u0002\u0002\u0081\u0911\u0003\u0002",
- "\u0002\u0002\u0083\u091a\u0003\u0002\u0002\u0002\u0085\u092f\u0003\u0002",
- "\u0002\u0002\u0087\u0938\u0003\u0002\u0002\u0002\u0089\u0946\u0003\u0002",
- "\u0002\u0002\u008b\u0957\u0003\u0002\u0002\u0002\u008d\u0961\u0003\u0002",
- "\u0002\u0002\u008f\u096b\u0003\u0002\u0002\u0002\u0091\u0972\u0003\u0002",
- "\u0002\u0002\u0093\u0978\u0003\u0002\u0002\u0002\u0095\u0980\u0003\u0002",
- "\u0002\u0002\u0097\u098d\u0003\u0002\u0002\u0002\u0099\u099a\u0003\u0002",
- "\u0002\u0002\u009b\u09ac\u0003\u0002\u0002\u0002\u009d\u09b9\u0003\u0002",
- "\u0002\u0002\u009f\u09c0\u0003\u0002\u0002\u0002\u00a1\u09c6\u0003\u0002",
- "\u0002\u0002\u00a3\u09d7\u0003\u0002\u0002\u0002\u00a5\u09e3\u0003\u0002",
- "\u0002\u0002\u00a7\u09ec\u0003\u0002\u0002\u0002\u00a9\u09ff\u0003\u0002",
- "\u0002\u0002\u00ab\u0a04\u0003\u0002\u0002\u0002\u00ad\u0a0f\u0003\u0002",
- "\u0002\u0002\u00af\u0a17\u0003\u0002\u0002\u0002\u00b1\u0a1f\u0003\u0002",
- "\u0002\u0002\u00b3\u0a30\u0003\u0002\u0002\u0002\u00b5\u0a3f\u0003\u0002",
- "\u0002\u0002\u00b7\u0a46\u0003\u0002\u0002\u0002\u00b9\u0a4b\u0003\u0002",
- "\u0002\u0002\u00bb\u0a50\u0003\u0002\u0002\u0002\u00bd\u0a5c\u0003\u0002",
- "\u0002\u0002\u00bf\u0a69\u0003\u0002\u0002\u0002\u00c1\u0a6e\u0003\u0002",
- "\u0002\u0002\u00c3\u0a77\u0003\u0002\u0002\u0002\u00c5\u0a83\u0003\u0002",
- "\u0002\u0002\u00c7\u0a8a\u0003\u0002\u0002\u0002\u00c9\u0a8d\u0003\u0002",
- "\u0002\u0002\u00cb\u0a90\u0003\u0002\u0002\u0002\u00cd\u0a95\u0003\u0002",
- "\u0002\u0002\u00cf\u0aa1\u0003\u0002\u0002\u0002\u00d1\u0aa6\u0003\u0002",
- "\u0002\u0002\u00d3\u0aab\u0003\u0002\u0002\u0002\u00d5\u0ab3\u0003\u0002",
- "\u0002\u0002\u00d7\u0ab7\u0003\u0002\u0002\u0002\u00d9\u0ac0\u0003\u0002",
- "\u0002\u0002\u00db\u0ac7\u0003\u0002\u0002\u0002\u00dd\u0ace\u0003\u0002",
- "\u0002\u0002\u00df\u0ad4\u0003\u0002\u0002\u0002\u00e1\u0ada\u0003\u0002",
- "\u0002\u0002\u00e3\u0ae7\u0003\u0002\u0002\u0002\u00e5\u0afc\u0003\u0002",
- "\u0002\u0002\u00e7\u0b03\u0003\u0002\u0002\u0002\u00e9\u0b13\u0003\u0002",
- "\u0002\u0002\u00eb\u0b1d\u0003\u0002\u0002\u0002\u00ed\u0b24\u0003\u0002",
- "\u0002\u0002\u00ef\u0b2f\u0003\u0002\u0002\u0002\u00f1\u0b34\u0003\u0002",
- "\u0002\u0002\u00f3\u0b3e\u0003\u0002\u0002\u0002\u00f5\u0b47\u0003\u0002",
- "\u0002\u0002\u00f7\u0b57\u0003\u0002\u0002\u0002\u00f9\u0b60\u0003\u0002",
- "\u0002\u0002\u00fb\u0b76\u0003\u0002\u0002\u0002\u00fd\u0b7d\u0003\u0002",
- "\u0002\u0002\u00ff\u0b83\u0003\u0002\u0002\u0002\u0101\u0b88\u0003\u0002",
- "\u0002\u0002\u0103\u0b91\u0003\u0002\u0002\u0002\u0105\u0b9c\u0003\u0002",
- "\u0002\u0002\u0107\u0baa\u0003\u0002\u0002\u0002\u0109\u0bae\u0003\u0002",
- "\u0002\u0002\u010b\u0bb8\u0003\u0002\u0002\u0002\u010d\u0bd6\u0003\u0002",
- "\u0002\u0002\u010f\u0bde\u0003\u0002\u0002\u0002\u0111\u0be7\u0003\u0002",
- "\u0002\u0002\u0113\u0bf5\u0003\u0002\u0002\u0002\u0115\u0bfa\u0003\u0002",
- "\u0002\u0002\u0117\u0bff\u0003\u0002\u0002\u0002\u0119\u0c08\u0003\u0002",
- "\u0002\u0002\u011b\u0c0c\u0003\u0002\u0002\u0002\u011d\u0c11\u0003\u0002",
- "\u0002\u0002\u011f\u0c1a\u0003\u0002\u0002\u0002\u0121\u0c20\u0003\u0002",
- "\u0002\u0002\u0123\u0c26\u0003\u0002\u0002\u0002\u0125\u0c2d\u0003\u0002",
- "\u0002\u0002\u0127\u0c34\u0003\u0002\u0002\u0002\u0129\u0c47\u0003\u0002",
- "\u0002\u0002\u012b\u0c50\u0003\u0002\u0002\u0002\u012d\u0c5c\u0003\u0002",
- "\u0002\u0002\u012f\u0c6c\u0003\u0002\u0002\u0002\u0131\u0c6f\u0003\u0002",
- "\u0002\u0002\u0133\u0c73\u0003\u0002\u0002\u0002\u0135\u0c76\u0003\u0002",
- "\u0002\u0002\u0137\u0c7e\u0003\u0002\u0002\u0002\u0139\u0c88\u0003\u0002",
- "\u0002\u0002\u013b\u0c8e\u0003\u0002\u0002\u0002\u013d\u0c97\u0003\u0002",
- "\u0002\u0002\u013f\u0c9c\u0003\u0002\u0002\u0002\u0141\u0ca2\u0003\u0002",
- "\u0002\u0002\u0143\u0ca9\u0003\u0002\u0002\u0002\u0145\u0cb1\u0003\u0002",
- "\u0002\u0002\u0147\u0cbb\u0003\u0002\u0002\u0002\u0149\u0cc1\u0003\u0002",
- "\u0002\u0002\u014b\u0cce\u0003\u0002\u0002\u0002\u014d\u0d3a\u0003\u0002",
- "\u0002\u0002\u014f\u0d3d\u0003\u0002\u0002\u0002\u0151\u0d44\u0003\u0002",
- "\u0002\u0002\u0153\u0d49\u0003\u0002\u0002\u0002\u0155\u0d52\u0003\u0002",
- "\u0002\u0002\u0157\u0d56\u0003\u0002\u0002\u0002\u0159\u0d5f\u0003\u0002",
- "\u0002\u0002\u015b\u0d77\u0003\u0002\u0002\u0002\u015d\u0d7c\u0003\u0002",
- "\u0002\u0002\u015f\u0d85\u0003\u0002\u0002\u0002\u0161\u0d8a\u0003\u0002",
- "\u0002\u0002\u0163\u0d92\u0003\u0002\u0002\u0002\u0165\u0d9b\u0003\u0002",
- "\u0002\u0002\u0167\u0da0\u0003\u0002\u0002\u0002\u0169\u0da7\u0003\u0002",
- "\u0002\u0002\u016b\u0dad\u0003\u0002\u0002\u0002\u016d\u0db9\u0003\u0002",
- "\u0002\u0002\u016f\u0dc7\u0003\u0002\u0002\u0002\u0171\u0dcc\u0003\u0002",
- "\u0002\u0002\u0173\u0ddf\u0003\u0002\u0002\u0002\u0175\u0de3\u0003\u0002",
- "\u0002\u0002\u0177\u0deb\u0003\u0002\u0002\u0002\u0179\u0df2\u0003\u0002",
- "\u0002\u0002\u017b\u0dfd\u0003\u0002\u0002\u0002\u017d\u0e09\u0003\u0002",
- "\u0002\u0002\u017f\u0e12\u0003\u0002\u0002\u0002\u0181\u0e27\u0003\u0002",
- "\u0002\u0002\u0183\u0e36\u0003\u0002\u0002\u0002\u0185\u0e3f\u0003\u0002",
- "\u0002\u0002\u0187\u0e5d\u0003\u0002\u0002\u0002\u0189\u0e6e\u0003\u0002",
- "\u0002\u0002\u018b\u0e78\u0003\u0002\u0002\u0002\u018d\u0e7f\u0003\u0002",
- "\u0002\u0002\u018f\u0e95\u0003\u0002\u0002\u0002\u0191\u0e9b\u0003\u0002",
- "\u0002\u0002\u0193\u0eae\u0003\u0002\u0002\u0002\u0195\u0ec3\u0003\u0002",
- "\u0002\u0002\u0197\u0ecc\u0003\u0002\u0002\u0002\u0199\u0ed3\u0003\u0002",
- "\u0002\u0002\u019b\u0edf\u0003\u0002\u0002\u0002\u019d\u0ee8\u0003\u0002",
- "\u0002\u0002\u019f\u0ef2\u0003\u0002\u0002\u0002\u01a1\u0efa\u0003\u0002",
- "\u0002\u0002\u01a3\u0f03\u0003\u0002\u0002\u0002\u01a5\u0f0a\u0003\u0002",
- "\u0002\u0002\u01a7\u0f17\u0003\u0002\u0002\u0002\u01a9\u0f1c\u0003\u0002",
- "\u0002\u0002\u01ab\u0f25\u0003\u0002\u0002\u0002\u01ad\u0f2c\u0003\u0002",
- "\u0002\u0002\u01af\u0f35\u0003\u0002\u0002\u0002\u01b1\u0f41\u0003\u0002",
- "\u0002\u0002\u01b3\u0f50\u0003\u0002\u0002\u0002\u01b5\u0f5e\u0003\u0002",
- "\u0002\u0002\u01b7\u0f62\u0003\u0002\u0002\u0002\u01b9\u0f6f\u0003\u0002",
- "\u0002\u0002\u01bb\u0f74\u0003\u0002\u0002\u0002\u01bd\u0f79\u0003\u0002",
- "\u0002\u0002\u01bf\u0f80\u0003\u0002\u0002\u0002\u01c1\u0f83\u0003\u0002",
- "\u0002\u0002\u01c3\u0f87\u0003\u0002\u0002\u0002\u01c5\u0f8f\u0003\u0002",
- "\u0002\u0002\u01c7\u0f9c\u0003\u0002\u0002\u0002\u01c9\u0f9f\u0003\u0002",
- "\u0002\u0002\u01cb\u0faa\u0003\u0002\u0002\u0002\u01cd\u0faf\u0003\u0002",
- "\u0002\u0002\u01cf\u0fbe\u0003\u0002\u0002\u0002\u01d1\u0fc8\u0003\u0002",
- "\u0002\u0002\u01d3\u0fd3\u0003\u0002\u0002\u0002\u01d5\u0fdb\u0003\u0002",
- "\u0002\u0002\u01d7\u0fe2\u0003\u0002\u0002\u0002\u01d9\u0fe5\u0003\u0002",
- "\u0002\u0002\u01db\u0feb\u0003\u0002\u0002\u0002\u01dd\u0ff1\u0003\u0002",
- "\u0002\u0002\u01df\u0ff6\u0003\u0002\u0002\u0002\u01e1\u0ffb\u0003\u0002",
- "\u0002\u0002\u01e3\u1006\u0003\u0002\u0002\u0002\u01e5\u100e\u0003\u0002",
- "\u0002\u0002\u01e7\u1017\u0003\u0002\u0002\u0002\u01e9\u101f\u0003\u0002",
- "\u0002\u0002\u01eb\u102e\u0003\u0002\u0002\u0002\u01ed\u1036\u0003\u0002",
- "\u0002\u0002\u01ef\u103d\u0003\u0002\u0002\u0002\u01f1\u1046\u0003\u0002",
- "\u0002\u0002\u01f3\u104c\u0003\u0002\u0002\u0002\u01f5\u1051\u0003\u0002",
- "\u0002\u0002\u01f7\u105a\u0003\u0002\u0002\u0002\u01f9\u1061\u0003\u0002",
- "\u0002\u0002\u01fb\u106b\u0003\u0002\u0002\u0002\u01fd\u1075\u0003\u0002",
- "\u0002\u0002\u01ff\u107d\u0003\u0002\u0002\u0002\u0201\u1083\u0003\u0002",
- "\u0002\u0002\u0203\u1088\u0003\u0002\u0002\u0002\u0205\u1092\u0003\u0002",
- "\u0002\u0002\u0207\u109a\u0003\u0002\u0002\u0002\u0209\u10a1\u0003\u0002",
- "\u0002\u0002\u020b\u10a8\u0003\u0002\u0002\u0002\u020d\u10aa\u0003\u0002",
- "\u0002\u0002\u020f\u10b4\u0003\u0002\u0002\u0002\u0211\u10b8\u0003\u0002",
- "\u0002\u0002\u0213\u10bd\u0003\u0002\u0002\u0002\u0215\u10c6\u0003\u0002",
- "\u0002\u0002\u0217\u10dc\u0003\u0002\u0002\u0002\u0219\u10e8\u0003\u0002",
- "\u0002\u0002\u021b\u10f3\u0003\u0002\u0002\u0002\u021d\u10fe\u0003\u0002",
- "\u0002\u0002\u021f\u1113\u0003\u0002\u0002\u0002\u0221\u112e\u0003\u0002",
- "\u0002\u0002\u0223\u113a\u0003\u0002\u0002\u0002\u0225\u1143\u0003\u0002",
- "\u0002\u0002\u0227\u1149\u0003\u0002\u0002\u0002\u0229\u1151\u0003\u0002",
- "\u0002\u0002\u022b\u1159\u0003\u0002\u0002\u0002\u022d\u1162\u0003\u0002",
- "\u0002\u0002\u022f\u1169\u0003\u0002\u0002\u0002\u0231\u1174\u0003\u0002",
- "\u0002\u0002\u0233\u117b\u0003\u0002\u0002\u0002\u0235\u1183\u0003\u0002",
- "\u0002\u0002\u0237\u118a\u0003\u0002\u0002\u0002\u0239\u1191\u0003\u0002",
- "\u0002\u0002\u023b\u1198\u0003\u0002\u0002\u0002\u023d\u119e\u0003\u0002",
- "\u0002\u0002\u023f\u11a7\u0003\u0002\u0002\u0002\u0241\u11ac\u0003\u0002",
- "\u0002\u0002\u0243\u11b5\u0003\u0002\u0002\u0002\u0245\u11c0\u0003\u0002",
- "\u0002\u0002\u0247\u11c8\u0003\u0002\u0002\u0002\u0249\u11d1\u0003\u0002",
- "\u0002\u0002\u024b\u11da\u0003\u0002\u0002\u0002\u024d\u11e3\u0003\u0002",
- "\u0002\u0002\u024f\u11ec\u0003\u0002\u0002\u0002\u0251\u11f3\u0003\u0002",
- "\u0002\u0002\u0253\u11f8\u0003\u0002\u0002\u0002\u0255\u11fd\u0003\u0002",
- "\u0002\u0002\u0257\u1202\u0003\u0002\u0002\u0002\u0259\u120c\u0003\u0002",
- "\u0002\u0002\u025b\u1213\u0003\u0002\u0002\u0002\u025d\u121a\u0003\u0002",
- "\u0002\u0002\u025f\u1228\u0003\u0002\u0002\u0002\u0261\u122f\u0003\u0002",
- "\u0002\u0002\u0263\u1246\u0003\u0002\u0002\u0002\u0265\u1265\u0003\u0002",
- "\u0002\u0002\u0267\u127d\u0003\u0002\u0002\u0002\u0269\u1284\u0003\u0002",
- "\u0002\u0002\u026b\u128c\u0003\u0002\u0002\u0002\u026d\u129b\u0003\u0002",
- "\u0002\u0002\u026f\u12a8\u0003\u0002\u0002\u0002\u0271\u12b0\u0003\u0002",
- "\u0002\u0002\u0273\u12bd\u0003\u0002\u0002\u0002\u0275\u12c1\u0003\u0002",
- "\u0002\u0002\u0277\u12c9\u0003\u0002\u0002\u0002\u0279\u12d2\u0003\u0002",
- "\u0002\u0002\u027b\u12d6\u0003\u0002\u0002\u0002\u027d\u12db\u0003\u0002",
- "\u0002\u0002\u027f\u12e4\u0003\u0002\u0002\u0002\u0281\u12e9\u0003\u0002",
- "\u0002\u0002\u0283\u12f0\u0003\u0002\u0002\u0002\u0285\u12fe\u0003\u0002",
- "\u0002\u0002\u0287\u1304\u0003\u0002\u0002\u0002\u0289\u1313\u0003\u0002",
- "\u0002\u0002\u028b\u1321\u0003\u0002\u0002\u0002\u028d\u1333\u0003\u0002",
- "\u0002\u0002\u028f\u133e\u0003\u0002\u0002\u0002\u0291\u1344\u0003\u0002",
- "\u0002\u0002\u0293\u134a\u0003\u0002\u0002\u0002\u0295\u1350\u0003\u0002",
- "\u0002\u0002\u0297\u1358\u0003\u0002\u0002\u0002\u0299\u1366\u0003\u0002",
- "\u0002\u0002\u029b\u136b\u0003\u0002\u0002\u0002\u029d\u1373\u0003\u0002",
- "\u0002\u0002\u029f\u1381\u0003\u0002\u0002\u0002\u02a1\u138b\u0003\u0002",
- "\u0002\u0002\u02a3\u1397\u0003\u0002\u0002\u0002\u02a5\u139d\u0003\u0002",
- "\u0002\u0002\u02a7\u13a9\u0003\u0002\u0002\u0002\u02a9\u13ae\u0003\u0002",
- "\u0002\u0002\u02ab\u13b5\u0003\u0002\u0002\u0002\u02ad\u13b9\u0003\u0002",
- "\u0002\u0002\u02af\u13c2\u0003\u0002\u0002\u0002\u02b1\u13c7\u0003\u0002",
- "\u0002\u0002\u02b3\u13ca\u0003\u0002\u0002\u0002\u02b5\u13ce\u0003\u0002",
- "\u0002\u0002\u02b7\u13de\u0003\u0002\u0002\u0002\u02b9\u13e3\u0003\u0002",
- "\u0002\u0002\u02bb\u13ef\u0003\u0002\u0002\u0002\u02bd\u13f8\u0003\u0002",
- "\u0002\u0002\u02bf\u1400\u0003\u0002\u0002\u0002\u02c1\u1409\u0003\u0002",
- "\u0002\u0002\u02c3\u1411\u0003\u0002\u0002\u0002\u02c5\u141b\u0003\u0002",
- "\u0002\u0002\u02c7\u1421\u0003\u0002\u0002\u0002\u02c9\u1428\u0003\u0002",
- "\u0002\u0002\u02cb\u142f\u0003\u0002\u0002\u0002\u02cd\u1437\u0003\u0002",
- "\u0002\u0002\u02cf\u143e\u0003\u0002\u0002\u0002\u02d1\u1445\u0003\u0002",
- "\u0002\u0002\u02d3\u1450\u0003\u0002\u0002\u0002\u02d5\u1454\u0003\u0002",
- "\u0002\u0002\u02d7\u1458\u0003\u0002\u0002\u0002\u02d9\u145d\u0003\u0002",
- "\u0002\u0002\u02db\u1462\u0003\u0002\u0002\u0002\u02dd\u1469\u0003\u0002",
- "\u0002\u0002\u02df\u1471\u0003\u0002\u0002\u0002\u02e1\u1480\u0003\u0002",
- "\u0002\u0002\u02e3\u1485\u0003\u0002\u0002\u0002\u02e5\u1490\u0003\u0002",
- "\u0002\u0002\u02e7\u1498\u0003\u0002\u0002\u0002\u02e9\u149d\u0003\u0002",
- "\u0002\u0002\u02eb\u14a3\u0003\u0002\u0002\u0002\u02ed\u14a9\u0003\u0002",
- "\u0002\u0002\u02ef\u14b1\u0003\u0002\u0002\u0002\u02f1\u14b6\u0003\u0002",
- "\u0002\u0002\u02f3\u14bd\u0003\u0002\u0002\u0002\u02f5\u14c5\u0003\u0002",
- "\u0002\u0002\u02f7\u14cd\u0003\u0002\u0002\u0002\u02f9\u14d7\u0003\u0002",
- "\u0002\u0002\u02fb\u14e0\u0003\u0002\u0002\u0002\u02fd\u14f3\u0003\u0002",
- "\u0002\u0002\u02ff\u14fa\u0003\u0002\u0002\u0002\u0301\u1505\u0003\u0002",
- "\u0002\u0002\u0303\u150c\u0003\u0002\u0002\u0002\u0305\u1514\u0003\u0002",
- "\u0002\u0002\u0307\u151c\u0003\u0002\u0002\u0002\u0309\u1524\u0003\u0002",
- "\u0002\u0002\u030b\u152c\u0003\u0002\u0002\u0002\u030d\u1535\u0003\u0002",
- "\u0002\u0002\u030f\u153b\u0003\u0002\u0002\u0002\u0311\u1545\u0003\u0002",
- "\u0002\u0002\u0313\u154f\u0003\u0002\u0002\u0002\u0315\u1573\u0003\u0002",
- "\u0002\u0002\u0317\u158c\u0003\u0002\u0002\u0002\u0319\u1594\u0003\u0002",
- "\u0002\u0002\u031b\u15a6\u0003\u0002\u0002\u0002\u031d\u15b1\u0003\u0002",
- "\u0002\u0002\u031f\u15be\u0003\u0002\u0002\u0002\u0321\u15cc\u0003\u0002",
- "\u0002\u0002\u0323\u15dc\u0003\u0002\u0002\u0002\u0325\u15e2\u0003\u0002",
- "\u0002\u0002\u0327\u15ed\u0003\u0002\u0002\u0002\u0329\u15f6\u0003\u0002",
- "\u0002\u0002\u032b\u15fc\u0003\u0002\u0002\u0002\u032d\u1607\u0003\u0002",
- "\u0002\u0002\u032f\u160c\u0003\u0002\u0002\u0002\u0331\u1619\u0003\u0002",
- "\u0002\u0002\u0333\u1624\u0003\u0002\u0002\u0002\u0335\u163b\u0003\u0002",
- "\u0002\u0002\u0337\u1647\u0003\u0002\u0002\u0002\u0339\u165e\u0003\u0002",
- "\u0002\u0002\u033b\u167b\u0003\u0002\u0002\u0002\u033d\u1688\u0003\u0002",
- "\u0002\u0002\u033f\u168c\u0003\u0002\u0002\u0002\u0341\u169c\u0003\u0002",
- "\u0002\u0002\u0343\u16a9\u0003\u0002\u0002\u0002\u0345\u16b0\u0003\u0002",
- "\u0002\u0002\u0347\u16be\u0003\u0002\u0002\u0002\u0349\u16ce\u0003\u0002",
- "\u0002\u0002\u034b\u16d6\u0003\u0002\u0002\u0002\u034d\u16e3\u0003\u0002",
- "\u0002\u0002\u034f\u16ea\u0003\u0002\u0002\u0002\u0351\u16fa\u0003\u0002",
- "\u0002\u0002\u0353\u1706\u0003\u0002\u0002\u0002\u0355\u170d\u0003\u0002",
- "\u0002\u0002\u0357\u1721\u0003\u0002\u0002\u0002\u0359\u1728\u0003\u0002",
- "\u0002\u0002\u035b\u1730\u0003\u0002\u0002\u0002\u035d\u1736\u0003\u0002",
- "\u0002\u0002\u035f\u1747\u0003\u0002\u0002\u0002\u0361\u1757\u0003\u0002",
- "\u0002\u0002\u0363\u1760\u0003\u0002\u0002\u0002\u0365\u176d\u0003\u0002",
- "\u0002\u0002\u0367\u1775\u0003\u0002\u0002\u0002\u0369\u1780\u0003\u0002",
- "\u0002\u0002\u036b\u1792\u0003\u0002\u0002\u0002\u036d\u179c\u0003\u0002",
- "\u0002\u0002\u036f\u17b0\u0003\u0002\u0002\u0002\u0371\u17b7\u0003\u0002",
- "\u0002\u0002\u0373\u17cf\u0003\u0002\u0002\u0002\u0375\u17d7\u0003\u0002",
- "\u0002\u0002\u0377\u17df\u0003\u0002\u0002\u0002\u0379\u17e6\u0003\u0002",
- "\u0002\u0002\u037b\u17ec\u0003\u0002\u0002\u0002\u037d\u17f6\u0003\u0002",
- "\u0002\u0002\u037f\u17fe\u0003\u0002\u0002\u0002\u0381\u1802\u0003\u0002",
- "\u0002\u0002\u0383\u180d\u0003\u0002\u0002\u0002\u0385\u1822\u0003\u0002",
- "\u0002\u0002\u0387\u182d\u0003\u0002\u0002\u0002\u0389\u183b\u0003\u0002",
- "\u0002\u0002\u038b\u1852\u0003\u0002\u0002\u0002\u038d\u1861\u0003\u0002",
- "\u0002\u0002\u038f\u1866\u0003\u0002\u0002\u0002\u0391\u1884\u0003\u0002",
- "\u0002\u0002\u0393\u188c\u0003\u0002\u0002\u0002\u0395\u1895\u0003\u0002",
- "\u0002\u0002\u0397\u189e\u0003\u0002\u0002\u0002\u0399\u18a7\u0003\u0002",
- "\u0002\u0002\u039b\u18ac\u0003\u0002\u0002\u0002\u039d\u18b8\u0003\u0002",
- "\u0002\u0002\u039f\u18c4\u0003\u0002\u0002\u0002\u03a1\u18cf\u0003\u0002",
- "\u0002\u0002\u03a3\u18da\u0003\u0002\u0002\u0002\u03a5\u18f4\u0003\u0002",
- "\u0002\u0002\u03a7\u1905\u0003\u0002\u0002\u0002\u03a9\u190b\u0003\u0002",
- "\u0002\u0002\u03ab\u191e\u0003\u0002\u0002\u0002\u03ad\u1926\u0003\u0002",
- "\u0002\u0002\u03af\u1931\u0003\u0002\u0002\u0002\u03b1\u193c\u0003\u0002",
- "\u0002\u0002\u03b3\u1940\u0003\u0002\u0002\u0002\u03b5\u194c\u0003\u0002",
- "\u0002\u0002\u03b7\u1951\u0003\u0002\u0002\u0002\u03b9\u1956\u0003\u0002",
- "\u0002\u0002\u03bb\u195d\u0003\u0002\u0002\u0002\u03bd\u196c\u0003\u0002",
- "\u0002\u0002\u03bf\u1974\u0003\u0002\u0002\u0002\u03c1\u1983\u0003\u0002",
- "\u0002\u0002\u03c3\u198c\u0003\u0002\u0002\u0002\u03c5\u198f\u0003\u0002",
- "\u0002\u0002\u03c7\u1998\u0003\u0002\u0002\u0002\u03c9\u19a0\u0003\u0002",
- "\u0002\u0002\u03cb\u19a9\u0003\u0002\u0002\u0002\u03cd\u19b3\u0003\u0002",
- "\u0002\u0002\u03cf\u19b9\u0003\u0002\u0002\u0002\u03d1\u19c0\u0003\u0002",
- "\u0002\u0002\u03d3\u19ce\u0003\u0002\u0002\u0002\u03d5\u19de\u0003\u0002",
- "\u0002\u0002\u03d7\u19e9\u0003\u0002\u0002\u0002\u03d9\u19f6\u0003\u0002",
- "\u0002\u0002\u03db\u1a11\u0003\u0002\u0002\u0002\u03dd\u1a1b\u0003\u0002",
- "\u0002\u0002\u03df\u1a26\u0003\u0002\u0002\u0002\u03e1\u1a2c\u0003\u0002",
- "\u0002\u0002\u03e3\u1a33\u0003\u0002\u0002\u0002\u03e5\u1a3f\u0003\u0002",
- "\u0002\u0002\u03e7\u1a48\u0003\u0002\u0002\u0002\u03e9\u1a57\u0003\u0002",
- "\u0002\u0002\u03eb\u1a65\u0003\u0002\u0002\u0002\u03ed\u1a6d\u0003\u0002",
- "\u0002\u0002\u03ef\u1a85\u0003\u0002\u0002\u0002\u03f1\u1a8a\u0003\u0002",
- "\u0002\u0002\u03f3\u1a97\u0003\u0002\u0002\u0002\u03f5\u1aa1\u0003\u0002",
- "\u0002\u0002\u03f7\u1aac\u0003\u0002\u0002\u0002\u03f9\u1ab5\u0003\u0002",
- "\u0002\u0002\u03fb\u1ac0\u0003\u0002\u0002\u0002\u03fd\u1ac7\u0003\u0002",
- "\u0002\u0002\u03ff\u1acd\u0003\u0002\u0002\u0002\u0401\u1ad9\u0003\u0002",
- "\u0002\u0002\u0403\u1ae3\u0003\u0002\u0002\u0002\u0405\u1ae9\u0003\u0002",
- "\u0002\u0002\u0407\u1b08\u0003\u0002\u0002\u0002\u0409\u1b0f\u0003\u0002",
- "\u0002\u0002\u040b\u1b16\u0003\u0002\u0002\u0002\u040d\u1b23\u0003\u0002",
- "\u0002\u0002\u040f\u1b2c\u0003\u0002\u0002\u0002\u0411\u1b35\u0003\u0002",
- "\u0002\u0002\u0413\u1b38\u0003\u0002\u0002\u0002\u0415\u1b40\u0003\u0002",
- "\u0002\u0002\u0417\u1b4b\u0003\u0002\u0002\u0002\u0419\u1b52\u0003\u0002",
- "\u0002\u0002\u041b\u1b55\u0003\u0002\u0002\u0002\u041d\u1b68\u0003\u0002",
- "\u0002\u0002\u041f\u1b71\u0003\u0002\u0002\u0002\u0421\u1b7d\u0003\u0002",
- "\u0002\u0002\u0423\u1b82\u0003\u0002\u0002\u0002\u0425\u1b87\u0003\u0002",
- "\u0002\u0002\u0427\u1b9c\u0003\u0002\u0002\u0002\u0429\u1ba1\u0003\u0002",
- "\u0002\u0002\u042b\u1bb7\u0003\u0002\u0002\u0002\u042d\u1bbd\u0003\u0002",
- "\u0002\u0002\u042f\u1bcc\u0003\u0002\u0002\u0002\u0431\u1bf2\u0003\u0002",
- "\u0002\u0002\u0433\u1bfc\u0003\u0002\u0002\u0002\u0435\u1c08\u0003\u0002",
- "\u0002\u0002\u0437\u1c13\u0003\u0002\u0002\u0002\u0439\u1c27\u0003\u0002",
- "\u0002\u0002\u043b\u1c33\u0003\u0002\u0002\u0002\u043d\u1c3d\u0003\u0002",
- "\u0002\u0002\u043f\u1c43\u0003\u0002\u0002\u0002\u0441\u1c4f\u0003\u0002",
- "\u0002\u0002\u0443\u1c58\u0003\u0002\u0002\u0002\u0445\u1c5c\u0003\u0002",
- "\u0002\u0002\u0447\u1c5f\u0003\u0002\u0002\u0002\u0449\u1c69\u0003\u0002",
- "\u0002\u0002\u044b\u1c6d\u0003\u0002\u0002\u0002\u044d\u1c72\u0003\u0002",
- "\u0002\u0002\u044f\u1c75\u0003\u0002\u0002\u0002\u0451\u1c7a\u0003\u0002",
- "\u0002\u0002\u0453\u1c84\u0003\u0002\u0002\u0002\u0455\u1c8f\u0003\u0002",
- "\u0002\u0002\u0457\u1c94\u0003\u0002\u0002\u0002\u0459\u1c9b\u0003\u0002",
- "\u0002\u0002\u045b\u1c9f\u0003\u0002\u0002\u0002\u045d\u1ca4\u0003\u0002",
- "\u0002\u0002\u045f\u1caf\u0003\u0002\u0002\u0002\u0461\u1cb4\u0003\u0002",
- "\u0002\u0002\u0463\u1cba\u0003\u0002\u0002\u0002\u0465\u1cbf\u0003\u0002",
- "\u0002\u0002\u0467\u1cc8\u0003\u0002\u0002\u0002\u0469\u1cd5\u0003\u0002",
- "\u0002\u0002\u046b\u1ce4\u0003\u0002\u0002\u0002\u046d\u1cea\u0003\u0002",
- "\u0002\u0002\u046f\u1cf3\u0003\u0002\u0002\u0002\u0471\u1cf8\u0003\u0002",
- "\u0002\u0002\u0473\u1d08\u0003\u0002\u0002\u0002\u0475\u1d0e\u0003\u0002",
- "\u0002\u0002\u0477\u1d13\u0003\u0002\u0002\u0002\u0479\u1d17\u0003\u0002",
- "\u0002\u0002\u047b\u1d1e\u0003\u0002\u0002\u0002\u047d\u1d23\u0003\u0002",
- "\u0002\u0002\u047f\u1d30\u0003\u0002\u0002\u0002\u0481\u1d34\u0003\u0002",
- "\u0002\u0002\u0483\u1d44\u0003\u0002\u0002\u0002\u0485\u1d4c\u0003\u0002",
- "\u0002\u0002\u0487\u1d56\u0003\u0002\u0002\u0002\u0489\u1d6a\u0003\u0002",
- "\u0002\u0002\u048b\u1d7d\u0003\u0002\u0002\u0002\u048d\u1d8b\u0003\u0002",
- "\u0002\u0002\u048f\u1d9d\u0003\u0002\u0002\u0002\u0491\u1db0\u0003\u0002",
- "\u0002\u0002\u0493\u1db7\u0003\u0002\u0002\u0002\u0495\u1dc4\u0003\u0002",
- "\u0002\u0002\u0497\u1dcc\u0003\u0002\u0002\u0002\u0499\u1dcf\u0003\u0002",
- "\u0002\u0002\u049b\u1dd6\u0003\u0002\u0002\u0002\u049d\u1dec\u0003\u0002",
- "\u0002\u0002\u049f\u1df4\u0003\u0002\u0002\u0002\u04a1\u1df8\u0003\u0002",
- "\u0002\u0002\u04a3\u1e0e\u0003\u0002\u0002\u0002\u04a5\u1e1e\u0003\u0002",
- "\u0002\u0002\u04a7\u1e32\u0003\u0002\u0002\u0002\u04a9\u1e45\u0003\u0002",
- "\u0002\u0002\u04ab\u1e4d\u0003\u0002\u0002\u0002\u04ad\u1e5c\u0003\u0002",
- "\u0002\u0002\u04af\u1e72\u0003\u0002\u0002\u0002\u04b1\u1e77\u0003\u0002",
- "\u0002\u0002\u04b3\u1e7e\u0003\u0002\u0002\u0002\u04b5\u1e83\u0003\u0002",
- "\u0002\u0002\u04b7\u1e8e\u0003\u0002\u0002\u0002\u04b9\u1e93\u0003\u0002",
- "\u0002\u0002\u04bb\u1ea3\u0003\u0002\u0002\u0002\u04bd\u1eaf\u0003\u0002",
- "\u0002\u0002\u04bf\u1eba\u0003\u0002\u0002\u0002\u04c1\u1ec7\u0003\u0002",
- "\u0002\u0002\u04c3\u1ecc\u0003\u0002\u0002\u0002\u04c5\u1ecf\u0003\u0002",
- "\u0002\u0002\u04c7\u1edb\u0003\u0002\u0002\u0002\u04c9\u1ee3\u0003\u0002",
- "\u0002\u0002\u04cb\u1eeb\u0003\u0002\u0002\u0002\u04cd\u1ef1\u0003\u0002",
- "\u0002\u0002\u04cf\u1efa\u0003\u0002\u0002\u0002\u04d1\u1f10\u0003\u0002",
- "\u0002\u0002\u04d3\u1f1c\u0003\u0002\u0002\u0002\u04d5\u1f27\u0003\u0002",
- "\u0002\u0002\u04d7\u1f2e\u0003\u0002\u0002\u0002\u04d9\u1f34\u0003\u0002",
- "\u0002\u0002\u04db\u1f3d\u0003\u0002\u0002\u0002\u04dd\u1f44\u0003\u0002",
- "\u0002\u0002\u04df\u1f57\u0003\u0002\u0002\u0002\u04e1\u1f5e\u0003\u0002",
- "\u0002\u0002\u04e3\u1f66\u0003\u0002\u0002\u0002\u04e5\u1f6d\u0003\u0002",
- "\u0002\u0002\u04e7\u1f79\u0003\u0002\u0002\u0002\u04e9\u1f80\u0003\u0002",
- "\u0002\u0002\u04eb\u1f85\u0003\u0002\u0002\u0002\u04ed\u1f93\u0003\u0002",
- "\u0002\u0002\u04ef\u1f9e\u0003\u0002\u0002\u0002\u04f1\u1fa7\u0003\u0002",
- "\u0002\u0002\u04f3\u1fab\u0003\u0002\u0002\u0002\u04f5\u1fb2\u0003\u0002",
- "\u0002\u0002\u04f7\u1fbb\u0003\u0002\u0002\u0002\u04f9\u1fc1\u0003\u0002",
- "\u0002\u0002\u04fb\u1fcd\u0003\u0002\u0002\u0002\u04fd\u1fde\u0003\u0002",
- "\u0002\u0002\u04ff\u1fe8\u0003\u0002\u0002\u0002\u0501\u1ff3\u0003\u0002",
- "\u0002\u0002\u0503\u1ffb\u0003\u0002\u0002\u0002\u0505\u2000\u0003\u0002",
- "\u0002\u0002\u0507\u2018\u0003\u0002\u0002\u0002\u0509\u201d\u0003\u0002",
- "\u0002\u0002\u050b\u2022\u0003\u0002\u0002\u0002\u050d\u202c\u0003\u0002",
- "\u0002\u0002\u050f\u2039\u0003\u0002\u0002\u0002\u0511\u203f\u0003\u0002",
- "\u0002\u0002\u0513\u2048\u0003\u0002\u0002\u0002\u0515\u2057\u0003\u0002",
- "\u0002\u0002\u0517\u205f\u0003\u0002\u0002\u0002\u0519\u206b\u0003\u0002",
- "\u0002\u0002\u051b\u2076\u0003\u0002\u0002\u0002\u051d\u2085\u0003\u0002",
- "\u0002\u0002\u051f\u208e\u0003\u0002\u0002\u0002\u0521\u2097\u0003\u0002",
- "\u0002\u0002\u0523\u20a9\u0003\u0002\u0002\u0002\u0525\u20af\u0003\u0002",
- "\u0002\u0002\u0527\u20b5\u0003\u0002\u0002\u0002\u0529\u20c1\u0003\u0002",
- "\u0002\u0002\u052b\u20d3\u0003\u0002\u0002\u0002\u052d\u20d9\u0003\u0002",
- "\u0002\u0002\u052f\u20de\u0003\u0002\u0002\u0002\u0531\u20e2\u0003\u0002",
- "\u0002\u0002\u0533\u20e6\u0003\u0002\u0002\u0002\u0535\u20ee\u0003\u0002",
- "\u0002\u0002\u0537\u2106\u0003\u0002\u0002\u0002\u0539\u2110\u0003\u0002",
- "\u0002\u0002\u053b\u2127\u0003\u0002\u0002\u0002\u053d\u2132\u0003\u0002",
- "\u0002\u0002\u053f\u213b\u0003\u0002\u0002\u0002\u0541\u2143\u0003\u0002",
- "\u0002\u0002\u0543\u214b\u0003\u0002\u0002\u0002\u0545\u2155\u0003\u0002",
- "\u0002\u0002\u0547\u215e\u0003\u0002\u0002\u0002\u0549\u2171\u0003\u0002",
- "\u0002\u0002\u054b\u217a\u0003\u0002\u0002\u0002\u054d\u2181\u0003\u0002",
- "\u0002\u0002\u054f\u2195\u0003\u0002\u0002\u0002\u0551\u219c\u0003\u0002",
- "\u0002\u0002\u0553\u21a7\u0003\u0002\u0002\u0002\u0555\u21b2\u0003\u0002",
- "\u0002\u0002\u0557\u21ba\u0003\u0002\u0002\u0002\u0559\u21d3\u0003\u0002",
- "\u0002\u0002\u055b\u21f4\u0003\u0002\u0002\u0002\u055d\u2215\u0003\u0002",
- "\u0002\u0002\u055f\u2241\u0003\u0002\u0002\u0002\u0561\u2254\u0003\u0002",
- "\u0002\u0002\u0563\u225d\u0003\u0002\u0002\u0002\u0565\u2277\u0003\u0002",
- "\u0002\u0002\u0567\u2287\u0003\u0002\u0002\u0002\u0569\u2291\u0003\u0002",
- "\u0002\u0002\u056b\u2298\u0003\u0002\u0002\u0002\u056d\u229d\u0003\u0002",
- "\u0002\u0002\u056f\u22a3\u0003\u0002\u0002\u0002\u0571\u22a7\u0003\u0002",
- "\u0002\u0002\u0573\u22b2\u0003\u0002\u0002\u0002\u0575\u22ba\u0003\u0002",
- "\u0002\u0002\u0577\u22bf\u0003\u0002\u0002\u0002\u0579\u22c6\u0003\u0002",
- "\u0002\u0002\u057b\u22d4\u0003\u0002\u0002\u0002\u057d\u22db\u0003\u0002",
- "\u0002\u0002\u057f\u22e2\u0003\u0002\u0002\u0002\u0581\u22ef\u0003\u0002",
- "\u0002\u0002\u0583\u22f6\u0003\u0002\u0002\u0002\u0585\u2300\u0003\u0002",
- "\u0002\u0002\u0587\u230f\u0003\u0002\u0002\u0002\u0589\u231e\u0003\u0002",
- "\u0002\u0002\u058b\u2326\u0003\u0002\u0002\u0002\u058d\u232d\u0003\u0002",
- "\u0002\u0002\u058f\u2336\u0003\u0002\u0002\u0002\u0591\u2343\u0003\u0002",
- "\u0002\u0002\u0593\u2350\u0003\u0002\u0002\u0002\u0595\u2355\u0003\u0002",
- "\u0002\u0002\u0597\u2364\u0003\u0002\u0002\u0002\u0599\u2369\u0003\u0002",
- "\u0002\u0002\u059b\u236e\u0003\u0002\u0002\u0002\u059d\u2377\u0003\u0002",
- "\u0002\u0002\u059f\u2384\u0003\u0002\u0002\u0002\u05a1\u2394\u0003\u0002",
- "\u0002\u0002\u05a3\u239d\u0003\u0002\u0002\u0002\u05a5\u23a3\u0003\u0002",
- "\u0002\u0002\u05a7\u23ac\u0003\u0002\u0002\u0002\u05a9\u23b6\u0003\u0002",
- "\u0002\u0002\u05ab\u23bd\u0003\u0002\u0002\u0002\u05ad\u23c9\u0003\u0002",
- "\u0002\u0002\u05af\u23ce\u0003\u0002\u0002\u0002\u05b1\u23d7\u0003\u0002",
- "\u0002\u0002\u05b3\u23e0\u0003\u0002\u0002\u0002\u05b5\u23f9\u0003\u0002",
- "\u0002\u0002\u05b7\u2401\u0003\u0002\u0002\u0002\u05b9\u240c\u0003\u0002",
- "\u0002\u0002\u05bb\u2413\u0003\u0002\u0002\u0002\u05bd\u2420\u0003\u0002",
- "\u0002\u0002\u05bf\u2427\u0003\u0002\u0002\u0002\u05c1\u2432\u0003\u0002",
- "\u0002\u0002\u05c3\u2438\u0003\u0002\u0002\u0002\u05c5\u243f\u0003\u0002",
- "\u0002\u0002\u05c7\u2448\u0003\u0002\u0002\u0002\u05c9\u2453\u0003\u0002",
- "\u0002\u0002\u05cb\u2459\u0003\u0002\u0002\u0002\u05cd\u2461\u0003\u0002",
- "\u0002\u0002\u05cf\u246e\u0003\u0002\u0002\u0002\u05d1\u2472\u0003\u0002",
- "\u0002\u0002\u05d3\u247a\u0003\u0002\u0002\u0002\u05d5\u2484\u0003\u0002",
- "\u0002\u0002\u05d7\u2497\u0003\u0002\u0002\u0002\u05d9\u249f\u0003\u0002",
- "\u0002\u0002\u05db\u24a6\u0003\u0002\u0002\u0002\u05dd\u24ab\u0003\u0002",
- "\u0002\u0002\u05df\u24c0\u0003\u0002\u0002\u0002\u05e1\u24c3\u0003\u0002",
- "\u0002\u0002\u05e3\u24d0\u0003\u0002\u0002\u0002\u05e5\u24d6\u0003\u0002",
- "\u0002\u0002\u05e7\u24db\u0003\u0002\u0002\u0002\u05e9\u24e0\u0003\u0002",
- "\u0002\u0002\u05eb\u24e8\u0003\u0002\u0002\u0002\u05ed\u24ee\u0003\u0002",
- "\u0002\u0002\u05ef\u24f6\u0003\u0002\u0002\u0002\u05f1\u250a\u0003\u0002",
- "\u0002\u0002\u05f3\u2520\u0003\u0002\u0002\u0002\u05f5\u252b\u0003\u0002",
- "\u0002\u0002\u05f7\u253b\u0003\u0002\u0002\u0002\u05f9\u2547\u0003\u0002",
- "\u0002\u0002\u05fb\u254b\u0003\u0002\u0002\u0002\u05fd\u2550\u0003\u0002",
- "\u0002\u0002\u05ff\u2566\u0003\u0002\u0002\u0002\u0601\u256b\u0003\u0002",
- "\u0002\u0002\u0603\u2578\u0003\u0002\u0002\u0002\u0605\u2582\u0003\u0002",
- "\u0002\u0002\u0607\u258e\u0003\u0002\u0002\u0002\u0609\u2596\u0003\u0002",
- "\u0002\u0002\u060b\u25a0\u0003\u0002\u0002\u0002\u060d\u25a4\u0003\u0002",
- "\u0002\u0002\u060f\u25aa\u0003\u0002\u0002\u0002\u0611\u25b4\u0003\u0002",
- "\u0002\u0002\u0613\u25bf\u0003\u0002\u0002\u0002\u0615\u25c5\u0003\u0002",
- "\u0002\u0002\u0617\u25c9\u0003\u0002\u0002\u0002\u0619\u25ce\u0003\u0002",
- "\u0002\u0002\u061b\u25dc\u0003\u0002\u0002\u0002\u061d\u25e2\u0003\u0002",
- "\u0002\u0002\u061f\u25e7\u0003\u0002\u0002\u0002\u0621\u25f7\u0003\u0002",
- "\u0002\u0002\u0623\u260d\u0003\u0002\u0002\u0002\u0625\u2612\u0003\u0002",
- "\u0002\u0002\u0627\u261b\u0003\u0002\u0002\u0002\u0629\u261f\u0003\u0002",
- "\u0002\u0002\u062b\u2627\u0003\u0002\u0002\u0002\u062d\u2635\u0003\u0002",
- "\u0002\u0002\u062f\u263f\u0003\u0002\u0002\u0002\u0631\u2646\u0003\u0002",
- "\u0002\u0002\u0633\u264f\u0003\u0002\u0002\u0002\u0635\u2655\u0003\u0002",
- "\u0002\u0002\u0637\u2664\u0003\u0002\u0002\u0002\u0639\u266f\u0003\u0002",
- "\u0002\u0002\u063b\u2677\u0003\u0002\u0002\u0002\u063d\u2679\u0003\u0002",
- "\u0002\u0002\u063f\u2681\u0003\u0002\u0002\u0002\u0641\u2689\u0003\u0002",
- "\u0002\u0002\u0643\u268f\u0003\u0002\u0002\u0002\u0645\u2698\u0003\u0002",
- "\u0002\u0002\u0647\u26b8\u0003\u0002\u0002\u0002\u0649\u26cf\u0003\u0002",
- "\u0002\u0002\u064b\u26dc\u0003\u0002\u0002\u0002\u064d\u26e4\u0003\u0002",
- "\u0002\u0002\u064f\u26e8\u0003\u0002\u0002\u0002\u0651\u26f3\u0003\u0002",
- "\u0002\u0002\u0653\u26f5\u0003\u0002\u0002\u0002\u0655\u26f7\u0003\u0002",
- "\u0002\u0002\u0657\u26f9\u0003\u0002\u0002\u0002\u0659\u26fb\u0003\u0002",
- "\u0002\u0002\u065b\u26fe\u0003\u0002\u0002\u0002\u065d\u2701\u0003\u0002",
- "\u0002\u0002\u065f\u2704\u0003\u0002\u0002\u0002\u0661\u2707\u0003\u0002",
- "\u0002\u0002\u0663\u270a\u0003\u0002\u0002\u0002\u0665\u270d\u0003\u0002",
- "\u0002\u0002\u0667\u2710\u0003\u0002\u0002\u0002\u0669\u2713\u0003\u0002",
- "\u0002\u0002\u066b\u2716\u0003\u0002\u0002\u0002\u066d\u2718\u0003\u0002",
- "\u0002\u0002\u066f\u271a\u0003\u0002\u0002\u0002\u0671\u271c\u0003\u0002",
- "\u0002\u0002\u0673\u271e\u0003\u0002\u0002\u0002\u0675\u2720\u0003\u0002",
- "\u0002\u0002\u0677\u2722\u0003\u0002\u0002\u0002\u0679\u2724\u0003\u0002",
- "\u0002\u0002\u067b\u2726\u0003\u0002\u0002\u0002\u067d\u2728\u0003\u0002",
- "\u0002\u0002\u067f\u272a\u0003\u0002\u0002\u0002\u0681\u272c\u0003\u0002",
- "\u0002\u0002\u0683\u272e\u0003\u0002\u0002\u0002\u0685\u2730\u0003\u0002",
- "\u0002\u0002\u0687\u2732\u0003\u0002\u0002\u0002\u0689\u2734\u0003\u0002",
- "\u0002\u0002\u068b\u2736\u0003\u0002\u0002\u0002\u068d\u2738\u0003\u0002",
- "\u0002\u0002\u068f\u273a\u0003\u0002\u0002\u0002\u0691\u273c\u0003\u0002",
- "\u0002\u0002\u0693\u273e\u0003\u0002\u0002\u0002\u0695\u2744\u0003\u0002",
- "\u0002\u0002\u0697\u2763\u0003\u0002\u0002\u0002\u0699\u2765\u0003\u0002",
- "\u0002\u0002\u069b\u2767\u0003\u0002\u0002\u0002\u069d\u2769\u0003\u0002",
- "\u0002\u0002\u069f\u06a0\u0007C\u0002\u0002\u06a0\u06a1\u0007D\u0002",
- "\u0002\u06a1\u06a2\u0007U\u0002\u0002\u06a2\u06a3\u0007G\u0002\u0002",
- "\u06a3\u06a4\u0007P\u0002\u0002\u06a4\u06a5\u0007V\u0002\u0002\u06a5",
- "\u0004\u0003\u0002\u0002\u0002\u06a6\u06a7\u0007C\u0002\u0002\u06a7",
- "\u06a8\u0007F\u0002\u0002\u06a8\u06a9\u0007F\u0002\u0002\u06a9\u0006",
- "\u0003\u0002\u0002\u0002\u06aa\u06ab\u0007C\u0002\u0002\u06ab\u06ac",
- "\u0007G\u0002\u0002\u06ac\u06ad\u0007U\u0002\u0002\u06ad\b\u0003\u0002",
- "\u0002\u0002\u06ae\u06af\u0007C\u0002\u0002\u06af\u06b0\u0007N\u0002",
- "\u0002\u06b0\u06b1\u0007N\u0002\u0002\u06b1\n\u0003\u0002\u0002\u0002",
- "\u06b2\u06b3\u0007C\u0002\u0002\u06b3\u06b4\u0007N\u0002\u0002\u06b4",
- "\u06b5\u0007N\u0002\u0002\u06b5\u06b6\u0007Q\u0002\u0002\u06b6\u06b7",
- "\u0007Y\u0002\u0002\u06b7\u06b8\u0007a\u0002\u0002\u06b8\u06b9\u0007",
- "E\u0002\u0002\u06b9\u06ba\u0007Q\u0002\u0002\u06ba\u06bb\u0007P\u0002",
- "\u0002\u06bb\u06bc\u0007P\u0002\u0002\u06bc\u06bd\u0007G\u0002\u0002",
- "\u06bd\u06be\u0007E\u0002\u0002\u06be\u06bf\u0007V\u0002\u0002\u06bf",
- "\u06c0\u0007K\u0002\u0002\u06c0\u06c1\u0007Q\u0002\u0002\u06c1\u06c2",
- "\u0007P\u0002\u0002\u06c2\u06c3\u0007U\u0002\u0002\u06c3\f\u0003\u0002",
- "\u0002\u0002\u06c4\u06c5\u0007C\u0002\u0002\u06c5\u06c6\u0007N\u0002",
- "\u0002\u06c6\u06c7\u0007N\u0002\u0002\u06c7\u06c8\u0007Q\u0002\u0002",
- "\u06c8\u06c9\u0007Y\u0002\u0002\u06c9\u06ca\u0007a\u0002\u0002\u06ca",
- "\u06cb\u0007O\u0002\u0002\u06cb\u06cc\u0007W\u0002\u0002\u06cc\u06cd",
- "\u0007N\u0002\u0002\u06cd\u06ce\u0007V\u0002\u0002\u06ce\u06cf\u0007",
- "K\u0002\u0002\u06cf\u06d0\u0007R\u0002\u0002\u06d0\u06d1\u0007N\u0002",
- "\u0002\u06d1\u06d2\u0007G\u0002\u0002\u06d2\u06d3\u0007a\u0002\u0002",
- "\u06d3\u06d4\u0007G\u0002\u0002\u06d4\u06d5\u0007X\u0002\u0002\u06d5",
- "\u06d6\u0007G\u0002\u0002\u06d6\u06d7\u0007P\u0002\u0002\u06d7\u06d8",
- "\u0007V\u0002\u0002\u06d8\u06d9\u0007a\u0002\u0002\u06d9\u06da\u0007",
- "N\u0002\u0002\u06da\u06db\u0007Q\u0002\u0002\u06db\u06dc\u0007U\u0002",
- "\u0002\u06dc\u06dd\u0007U\u0002\u0002\u06dd\u000e\u0003\u0002\u0002",
- "\u0002\u06de\u06df\u0007C\u0002\u0002\u06df\u06e0\u0007N\u0002\u0002",
- "\u06e0\u06e1\u0007N\u0002\u0002\u06e1\u06e2\u0007Q\u0002\u0002\u06e2",
- "\u06e3\u0007Y\u0002\u0002\u06e3\u06e4\u0007a\u0002\u0002\u06e4\u06e5",
- "\u0007U\u0002\u0002\u06e5\u06e6\u0007K\u0002\u0002\u06e6\u06e7\u0007",
- "P\u0002\u0002\u06e7\u06e8\u0007I\u0002\u0002\u06e8\u06e9\u0007N\u0002",
- "\u0002\u06e9\u06ea\u0007G\u0002\u0002\u06ea\u06eb\u0007a\u0002\u0002",
- "\u06eb\u06ec\u0007G\u0002\u0002\u06ec\u06ed\u0007X\u0002\u0002\u06ed",
- "\u06ee\u0007G\u0002\u0002\u06ee\u06ef\u0007P\u0002\u0002\u06ef\u06f0",
- "\u0007V\u0002\u0002\u06f0\u06f1\u0007a\u0002\u0002\u06f1\u06f2\u0007",
- "N\u0002\u0002\u06f2\u06f3\u0007Q\u0002\u0002\u06f3\u06f4\u0007U\u0002",
- "\u0002\u06f4\u06f5\u0007U\u0002\u0002\u06f5\u0010\u0003\u0002\u0002",
- "\u0002\u06f6\u06f7\u0007C\u0002\u0002\u06f7\u06f8\u0007N\u0002\u0002",
- "\u06f8\u06f9\u0007V\u0002\u0002\u06f9\u06fa\u0007G\u0002\u0002\u06fa",
- "\u06fb\u0007T\u0002\u0002\u06fb\u0012\u0003\u0002\u0002\u0002\u06fc",
- "\u06fd\u0007C\u0002\u0002\u06fd\u06fe\u0007P\u0002\u0002\u06fe\u06ff",
- "\u0007F\u0002\u0002\u06ff\u0014\u0003\u0002\u0002\u0002\u0700\u0701",
- "\u0007C\u0002\u0002\u0701\u0702\u0007P\u0002\u0002\u0702\u0703\u0007",
- "Q\u0002\u0002\u0703\u0704\u0007P\u0002\u0002\u0704\u0705\u0007[\u0002",
- "\u0002\u0705\u0706\u0007O\u0002\u0002\u0706\u0707\u0007Q\u0002\u0002",
- "\u0707\u0708\u0007W\u0002\u0002\u0708\u0709\u0007U\u0002\u0002\u0709",
- "\u0016\u0003\u0002\u0002\u0002\u070a\u070b\u0007C\u0002\u0002\u070b",
- "\u070c\u0007P\u0002\u0002\u070c\u070d\u0007[\u0002\u0002\u070d\u0018",
- "\u0003\u0002\u0002\u0002\u070e\u070f\u0007C\u0002\u0002\u070f\u0710",
- "\u0007R\u0002\u0002\u0710\u0711\u0007R\u0002\u0002\u0711\u0712\u0007",
- "G\u0002\u0002\u0712\u0713\u0007P\u0002\u0002\u0713\u0714\u0007F\u0002",
- "\u0002\u0714\u001a\u0003\u0002\u0002\u0002\u0715\u0716\u0007C\u0002",
- "\u0002\u0716\u0717\u0007R\u0002\u0002\u0717\u0718\u0007R\u0002\u0002",
- "\u0718\u0719\u0007N\u0002\u0002\u0719\u071a\u0007K\u0002\u0002\u071a",
- "\u071b\u0007E\u0002\u0002\u071b\u071c\u0007C\u0002\u0002\u071c\u071d",
- "\u0007V\u0002\u0002\u071d\u071e\u0007K\u0002\u0002\u071e\u071f\u0007",
- "Q\u0002\u0002\u071f\u0720\u0007P\u0002\u0002\u0720\u001c\u0003\u0002",
- "\u0002\u0002\u0721\u0722\u0007C\u0002\u0002\u0722\u0723\u0007U\u0002",
- "\u0002\u0723\u001e\u0003\u0002\u0002\u0002\u0724\u0725\u0007C\u0002",
- "\u0002\u0725\u0726\u0007U\u0002\u0002\u0726\u0727\u0007E\u0002\u0002",
- "\u0727 \u0003\u0002\u0002\u0002\u0728\u0729\u0007C\u0002\u0002\u0729",
- "\u072a\u0007U\u0002\u0002\u072a\u072b\u0007[\u0002\u0002\u072b\u072c",
- "\u0007O\u0002\u0002\u072c\u072d\u0007O\u0002\u0002\u072d\u072e\u0007",
- "G\u0002\u0002\u072e\u072f\u0007V\u0002\u0002\u072f\u0730\u0007T\u0002",
- "\u0002\u0730\u0731\u0007K\u0002\u0002\u0731\u0732\u0007E\u0002\u0002",
- "\u0732\"\u0003\u0002\u0002\u0002\u0733\u0734\u0007C\u0002\u0002\u0734",
- "\u0735\u0007U\u0002\u0002\u0735\u0736\u0007[\u0002\u0002\u0736\u0737",
- "\u0007P\u0002\u0002\u0737\u0738\u0007E\u0002\u0002\u0738\u0739\u0007",
- "J\u0002\u0002\u0739\u073a\u0007T\u0002\u0002\u073a\u073b\u0007Q\u0002",
- "\u0002\u073b\u073c\u0007P\u0002\u0002\u073c\u073d\u0007Q\u0002\u0002",
- "\u073d\u073e\u0007W\u0002\u0002\u073e\u073f\u0007U\u0002\u0002\u073f",
- "\u0740\u0007a\u0002\u0002\u0740\u0741\u0007E\u0002\u0002\u0741\u0742",
- "\u0007Q\u0002\u0002\u0742\u0743\u0007O\u0002\u0002\u0743\u0744\u0007",
- "O\u0002\u0002\u0744\u0745\u0007K\u0002\u0002\u0745\u0746\u0007V\u0002",
- "\u0002\u0746$\u0003\u0002\u0002\u0002\u0747\u0748\u0007C\u0002\u0002",
- "\u0748\u0749\u0007W\u0002\u0002\u0749\u074a\u0007V\u0002\u0002\u074a",
- "\u074b\u0007J\u0002\u0002\u074b\u074c\u0007Q\u0002\u0002\u074c\u074d",
- "\u0007T\u0002\u0002\u074d\u074e\u0007K\u0002\u0002\u074e\u074f\u0007",
- "\\\u0002\u0002\u074f\u0750\u0007C\u0002\u0002\u0750\u0751\u0007V\u0002",
- "\u0002\u0751\u0752\u0007K\u0002\u0002\u0752\u0753\u0007Q\u0002\u0002",
- "\u0753\u0754\u0007P\u0002\u0002\u0754&\u0003\u0002\u0002\u0002\u0755",
- "\u0756\u0007C\u0002\u0002\u0756\u0757\u0007W\u0002\u0002\u0757\u0758",
- "\u0007V\u0002\u0002\u0758\u0759\u0007J\u0002\u0002\u0759\u075a\u0007",
- "G\u0002\u0002\u075a\u075b\u0007P\u0002\u0002\u075b\u075c\u0007V\u0002",
- "\u0002\u075c\u075d\u0007K\u0002\u0002\u075d\u075e\u0007E\u0002\u0002",
- "\u075e\u075f\u0007C\u0002\u0002\u075f\u0760\u0007V\u0002\u0002\u0760",
- "\u0761\u0007K\u0002\u0002\u0761\u0762\u0007Q\u0002\u0002\u0762\u0763",
- "\u0007P\u0002\u0002\u0763(\u0003\u0002\u0002\u0002\u0764\u0765\u0007",
- "C\u0002\u0002\u0765\u0766\u0007W\u0002\u0002\u0766\u0767\u0007V\u0002",
- "\u0002\u0767\u0768\u0007Q\u0002\u0002\u0768\u0769\u0007O\u0002\u0002",
- "\u0769\u076a\u0007C\u0002\u0002\u076a\u076b\u0007V\u0002\u0002\u076b",
- "\u076c\u0007G\u0002\u0002\u076c\u076d\u0007F\u0002\u0002\u076d\u076e",
- "\u0007a\u0002\u0002\u076e\u076f\u0007D\u0002\u0002\u076f\u0770\u0007",
- "C\u0002\u0002\u0770\u0771\u0007E\u0002\u0002\u0771\u0772\u0007M\u0002",
- "\u0002\u0772\u0773\u0007W\u0002\u0002\u0773\u0774\u0007R\u0002\u0002",
- "\u0774\u0775\u0007a\u0002\u0002\u0775\u0776\u0007R\u0002\u0002\u0776",
- "\u0777\u0007T\u0002\u0002\u0777\u0778\u0007G\u0002\u0002\u0778\u0779",
- "\u0007H\u0002\u0002\u0779\u077a\u0007G\u0002\u0002\u077a\u077b\u0007",
- "T\u0002\u0002\u077b\u077c\u0007G\u0002\u0002\u077c\u077d\u0007P\u0002",
- "\u0002\u077d\u077e\u0007E\u0002\u0002\u077e\u077f\u0007G\u0002\u0002",
- "\u077f*\u0003\u0002\u0002\u0002\u0780\u0781\u0007C\u0002\u0002\u0781",
- "\u0782\u0007W\u0002\u0002\u0782\u0783\u0007V\u0002\u0002\u0783\u0784",
- "\u0007Q\u0002\u0002\u0784\u0785\u0007O\u0002\u0002\u0785\u0786\u0007",
- "C\u0002\u0002\u0786\u0787\u0007V\u0002\u0002\u0787\u0788\u0007K\u0002",
- "\u0002\u0788\u0789\u0007E\u0002\u0002\u0789,\u0003\u0002\u0002\u0002",
- "\u078a\u078b\u0007C\u0002\u0002\u078b\u078c\u0007X\u0002\u0002\u078c",
- "\u078d\u0007C\u0002\u0002\u078d\u078e\u0007K\u0002\u0002\u078e\u078f",
- "\u0007N\u0002\u0002\u078f\u0790\u0007C\u0002\u0002\u0790\u0791\u0007",
- "D\u0002\u0002\u0791\u0792\u0007K\u0002\u0002\u0792\u0793\u0007N\u0002",
- "\u0002\u0793\u0794\u0007K\u0002\u0002\u0794\u0795\u0007V\u0002\u0002",
- "\u0795\u0796\u0007[\u0002\u0002\u0796\u0797\u0007a\u0002\u0002\u0797",
- "\u0798\u0007O\u0002\u0002\u0798\u0799\u0007Q\u0002\u0002\u0799\u079a",
- "\u0007F\u0002\u0002\u079a\u079b\u0007G\u0002\u0002\u079b.\u0003\u0002",
- "\u0002\u0002\u079c\u079d\u0007^\u0002\u0002\u079d0\u0003\u0002\u0002",
- "\u0002\u079e\u079f\u0007D\u0002\u0002\u079f\u07a0\u0007C\u0002\u0002",
- "\u07a0\u07a1\u0007E\u0002\u0002\u07a1\u07a2\u0007M\u0002\u0002\u07a2",
- "\u07a3\u0007W\u0002\u0002\u07a3\u07a4\u0007R\u0002\u0002\u07a42\u0003",
- "\u0002\u0002\u0002\u07a5\u07a6\u0007D\u0002\u0002\u07a6\u07a7\u0007",
- "G\u0002\u0002\u07a7\u07a8\u0007H\u0002\u0002\u07a8\u07a9\u0007Q\u0002",
- "\u0002\u07a9\u07aa\u0007T\u0002\u0002\u07aa\u07ab\u0007G\u0002\u0002",
- "\u07ab4\u0003\u0002\u0002\u0002\u07ac\u07ad\u0007D\u0002\u0002\u07ad",
- "\u07ae\u0007G\u0002\u0002\u07ae\u07af\u0007I\u0002\u0002\u07af\u07b0",
- "\u0007K\u0002\u0002\u07b0\u07b1\u0007P\u0002\u0002\u07b16\u0003\u0002",
- "\u0002\u0002\u07b2\u07b3\u0007D\u0002\u0002\u07b3\u07b4\u0007G\u0002",
- "\u0002\u07b4\u07b5\u0007V\u0002\u0002\u07b5\u07b6\u0007Y\u0002\u0002",
- "\u07b6\u07b7\u0007G\u0002\u0002\u07b7\u07b8\u0007G\u0002\u0002\u07b8",
- "\u07b9\u0007P\u0002\u0002\u07b98\u0003\u0002\u0002\u0002\u07ba\u07bb",
- "\u0007D\u0002\u0002\u07bb\u07bc\u0007N\u0002\u0002\u07bc\u07bd\u0007",
- "Q\u0002\u0002\u07bd\u07be\u0007E\u0002\u0002\u07be\u07bf\u0007M\u0002",
- "\u0002\u07bf:\u0003\u0002\u0002\u0002\u07c0\u07c1\u0007D\u0002\u0002",
- "\u07c1\u07c2\u0007N\u0002\u0002\u07c2\u07c3\u0007Q\u0002\u0002\u07c3",
- "\u07c4\u0007E\u0002\u0002\u07c4\u07c5\u0007M\u0002\u0002\u07c5\u07c6",
- "\u0007U\u0002\u0002\u07c6\u07c7\u0007K\u0002\u0002\u07c7\u07c8\u0007",
- "\\\u0002\u0002\u07c8\u07c9\u0007G\u0002\u0002\u07c9<\u0003\u0002\u0002",
- "\u0002\u07ca\u07cb\u0007D\u0002\u0002\u07cb\u07cc\u0007N\u0002\u0002",
- "\u07cc\u07cd\u0007Q\u0002\u0002\u07cd\u07ce\u0007E\u0002\u0002\u07ce",
- "\u07cf\u0007M\u0002\u0002\u07cf\u07d0\u0007K\u0002\u0002\u07d0\u07d1",
- "\u0007P\u0002\u0002\u07d1\u07d2\u0007I\u0002\u0002\u07d2\u07d3\u0007",
- "a\u0002\u0002\u07d3\u07d4\u0007J\u0002\u0002\u07d4\u07d5\u0007K\u0002",
- "\u0002\u07d5\u07d6\u0007G\u0002\u0002\u07d6\u07d7\u0007T\u0002\u0002",
- "\u07d7\u07d8\u0007C\u0002\u0002\u07d8\u07d9\u0007T\u0002\u0002\u07d9",
- "\u07da\u0007E\u0002\u0002\u07da\u07db\u0007J\u0002\u0002\u07db\u07dc",
- "\u0007[\u0002\u0002\u07dc>\u0003\u0002\u0002\u0002\u07dd\u07de\u0007",
- "D\u0002\u0002\u07de\u07df\u0007T\u0002\u0002\u07df\u07e0\u0007G\u0002",
- "\u0002\u07e0\u07e1\u0007C\u0002\u0002\u07e1\u07e2\u0007M\u0002\u0002",
- "\u07e2@\u0003\u0002\u0002\u0002\u07e3\u07e4\u0007D\u0002\u0002\u07e4",
- "\u07e5\u0007T\u0002\u0002\u07e5\u07e6\u0007Q\u0002\u0002\u07e6\u07e7",
- "\u0007Y\u0002\u0002\u07e7\u07e8\u0007U\u0002\u0002\u07e8\u07e9\u0007",
- "G\u0002\u0002\u07e9B\u0003\u0002\u0002\u0002\u07ea\u07eb\u0007D\u0002",
- "\u0002\u07eb\u07ec\u0007W\u0002\u0002\u07ec\u07ed\u0007H\u0002\u0002",
- "\u07ed\u07ee\u0007H\u0002\u0002\u07ee\u07ef\u0007G\u0002\u0002\u07ef",
- "\u07f0\u0007T\u0002\u0002\u07f0D\u0003\u0002\u0002\u0002\u07f1\u07f2",
- "\u0007D\u0002\u0002\u07f2\u07f3\u0007W\u0002\u0002\u07f3\u07f4\u0007",
- "H\u0002\u0002\u07f4\u07f5\u0007H\u0002\u0002\u07f5\u07f6\u0007G\u0002",
- "\u0002\u07f6\u07f7\u0007T\u0002\u0002\u07f7\u07f8\u0007E\u0002\u0002",
- "\u07f8\u07f9\u0007Q\u0002\u0002\u07f9\u07fa\u0007W\u0002\u0002\u07fa",
- "\u07fb\u0007P\u0002\u0002\u07fb\u07fc\u0007V\u0002\u0002\u07fcF\u0003",
- "\u0002\u0002\u0002\u07fd\u07fe\u0007D\u0002\u0002\u07fe\u07ff\u0007",
- "W\u0002\u0002\u07ff\u0800\u0007N\u0002\u0002\u0800\u0801\u0007M\u0002",
- "\u0002\u0801H\u0003\u0002\u0002\u0002\u0802\u0803\u0007D\u0002\u0002",
- "\u0803\u0804\u0007[\u0002\u0002\u0804J\u0003\u0002\u0002\u0002\u0805",
- "\u0806\u0007E\u0002\u0002\u0806\u0807\u0007C\u0002\u0002\u0807\u0808",
- "\u0007E\u0002\u0002\u0808\u0809\u0007J\u0002\u0002\u0809\u080a\u0007",
- "G\u0002\u0002\u080aL\u0003\u0002\u0002\u0002\u080b\u080c\u0007E\u0002",
- "\u0002\u080c\u080d\u0007C\u0002\u0002\u080d\u080e\u0007N\u0002\u0002",
- "\u080e\u080f\u0007N\u0002\u0002\u080f\u0810\u0007G\u0002\u0002\u0810",
- "\u0811\u0007F\u0002\u0002\u0811N\u0003\u0002\u0002\u0002\u0812\u0813",
- "\u0007E\u0002\u0002\u0813\u0814\u0007C\u0002\u0002\u0814\u0815\u0007",
- "U\u0002\u0002\u0815\u0816\u0007E\u0002\u0002\u0816\u0817\u0007C\u0002",
- "\u0002\u0817\u0818\u0007F\u0002\u0002\u0818\u0819\u0007G\u0002\u0002",
- "\u0819P\u0003\u0002\u0002\u0002\u081a\u081b\u0007E\u0002\u0002\u081b",
- "\u081c\u0007C\u0002\u0002\u081c\u081d\u0007U\u0002\u0002\u081d\u081e",
- "\u0007G\u0002\u0002\u081eR\u0003\u0002\u0002\u0002\u081f\u0820\u0007",
- "E\u0002\u0002\u0820\u0821\u0007G\u0002\u0002\u0821\u0822\u0007T\u0002",
- "\u0002\u0822\u0823\u0007V\u0002\u0002\u0823\u0824\u0007K\u0002\u0002",
- "\u0824\u0825\u0007H\u0002\u0002\u0825\u0826\u0007K\u0002\u0002\u0826",
- "\u0827\u0007E\u0002\u0002\u0827\u0828\u0007C\u0002\u0002\u0828\u0829",
- "\u0007V\u0002\u0002\u0829\u082a\u0007G\u0002\u0002\u082aT\u0003\u0002",
- "\u0002\u0002\u082b\u082c\u0007E\u0002\u0002\u082c\u082d\u0007J\u0002",
- "\u0002\u082d\u082e\u0007C\u0002\u0002\u082e\u082f\u0007P\u0002\u0002",
- "\u082f\u0830\u0007I\u0002\u0002\u0830\u0831\u0007G\u0002\u0002\u0831",
- "\u0832\u0007V\u0002\u0002\u0832\u0833\u0007C\u0002\u0002\u0833\u0834",
- "\u0007D\u0002\u0002\u0834\u0835\u0007N\u0002\u0002\u0835\u0836\u0007",
- "G\u0002\u0002\u0836V\u0003\u0002\u0002\u0002\u0837\u0838\u0007E\u0002",
- "\u0002\u0838\u0839\u0007J\u0002\u0002\u0839\u083a\u0007C\u0002\u0002",
- "\u083a\u083b\u0007P\u0002\u0002\u083b\u083c\u0007I\u0002\u0002\u083c",
- "\u083d\u0007G\u0002\u0002\u083d\u083e\u0007U\u0002\u0002\u083eX\u0003",
- "\u0002\u0002\u0002\u083f\u0840\u0007E\u0002\u0002\u0840\u0841\u0007",
- "J\u0002\u0002\u0841\u0842\u0007G\u0002\u0002\u0842\u0843\u0007E\u0002",
- "\u0002\u0843\u0844\u0007M\u0002\u0002\u0844Z\u0003\u0002\u0002\u0002",
- "\u0845\u0846\u0007E\u0002\u0002\u0846\u0847\u0007J\u0002\u0002\u0847",
- "\u0848\u0007G\u0002\u0002\u0848\u0849\u0007E\u0002\u0002\u0849\u084a",
- "\u0007M\u0002\u0002\u084a\u084b\u0007R\u0002\u0002\u084b\u084c\u0007",
- "Q\u0002\u0002\u084c\u084d\u0007K\u0002\u0002\u084d\u084e\u0007P\u0002",
- "\u0002\u084e\u084f\u0007V\u0002\u0002\u084f\\\u0003\u0002\u0002\u0002",
- "\u0850\u0851\u0007E\u0002\u0002\u0851\u0852\u0007J\u0002\u0002\u0852",
- "\u0853\u0007G\u0002\u0002\u0853\u0854\u0007E\u0002\u0002\u0854\u0855",
- "\u0007M\u0002\u0002\u0855\u0856\u0007a\u0002\u0002\u0856\u0857\u0007",
- "R\u0002\u0002\u0857\u0858\u0007Q\u0002\u0002\u0858\u0859\u0007N\u0002",
- "\u0002\u0859\u085a\u0007K\u0002\u0002\u085a\u085b\u0007E\u0002\u0002",
- "\u085b\u085c\u0007[\u0002\u0002\u085c^\u0003\u0002\u0002\u0002\u085d",
- "\u085e\u0007E\u0002\u0002\u085e\u085f\u0007J\u0002\u0002\u085f\u0860",
- "\u0007G\u0002\u0002\u0860\u0861\u0007E\u0002\u0002\u0861\u0862\u0007",
- "M\u0002\u0002\u0862\u0863\u0007a\u0002\u0002\u0863\u0864\u0007G\u0002",
- "\u0002\u0864\u0865\u0007Z\u0002\u0002\u0865\u0866\u0007R\u0002\u0002",
- "\u0866\u0867\u0007K\u0002\u0002\u0867\u0868\u0007T\u0002\u0002\u0868",
- "\u0869\u0007C\u0002\u0002\u0869\u086a\u0007V\u0002\u0002\u086a\u086b",
- "\u0007K\u0002\u0002\u086b\u086c\u0007Q\u0002\u0002\u086c\u086d\u0007",
- "P\u0002\u0002\u086d`\u0003\u0002\u0002\u0002\u086e\u086f\u0007E\u0002",
- "\u0002\u086f\u0870\u0007N\u0002\u0002\u0870\u0871\u0007C\u0002\u0002",
- "\u0871\u0872\u0007U\u0002\u0002\u0872\u0873\u0007U\u0002\u0002\u0873",
- "\u0874\u0007K\u0002\u0002\u0874\u0875\u0007H\u0002\u0002\u0875\u0876",
- "\u0007K\u0002\u0002\u0876\u0877\u0007G\u0002\u0002\u0877\u0878\u0007",
- "T\u0002\u0002\u0878\u0879\u0007a\u0002\u0002\u0879\u087a\u0007H\u0002",
- "\u0002\u087a\u087b\u0007W\u0002\u0002\u087b\u087c\u0007P\u0002\u0002",
- "\u087c\u087d\u0007E\u0002\u0002\u087d\u087e\u0007V\u0002\u0002\u087e",
- "\u087f\u0007K\u0002\u0002\u087f\u0880\u0007Q\u0002\u0002\u0880\u0881",
- "\u0007P\u0002\u0002\u0881b\u0003\u0002\u0002\u0002\u0882\u0883\u0007",
- "E\u0002\u0002\u0883\u0884\u0007N\u0002\u0002\u0884\u0885\u0007Q\u0002",
- "\u0002\u0885\u0886\u0007U\u0002\u0002\u0886\u0887\u0007G\u0002\u0002",
- "\u0887d\u0003\u0002\u0002\u0002\u0888\u0889\u0007E\u0002\u0002\u0889",
- "\u088a\u0007N\u0002\u0002\u088a\u088b\u0007W\u0002\u0002\u088b\u088c",
- "\u0007U\u0002\u0002\u088c\u088d\u0007V\u0002\u0002\u088d\u088e\u0007",
- "G\u0002\u0002\u088e\u088f\u0007T\u0002\u0002\u088ff\u0003\u0002\u0002",
- "\u0002\u0890\u0891\u0007E\u0002\u0002\u0891\u0892\u0007N\u0002\u0002",
- "\u0892\u0893\u0007W\u0002\u0002\u0893\u0894\u0007U\u0002\u0002\u0894",
- "\u0895\u0007V\u0002\u0002\u0895\u0896\u0007G\u0002\u0002\u0896\u0897",
- "\u0007T\u0002\u0002\u0897\u0898\u0007G\u0002\u0002\u0898\u0899\u0007",
- "F\u0002\u0002\u0899h\u0003\u0002\u0002\u0002\u089a\u089b\u0007E\u0002",
- "\u0002\u089b\u089c\u0007Q\u0002\u0002\u089c\u089d\u0007C\u0002\u0002",
- "\u089d\u089e\u0007N\u0002\u0002\u089e\u089f\u0007G\u0002\u0002\u089f",
- "\u08a0\u0007U\u0002\u0002\u08a0\u08a1\u0007E\u0002\u0002\u08a1\u08a2",
- "\u0007G\u0002\u0002\u08a2j\u0003\u0002\u0002\u0002\u08a3\u08a4\u0007",
- "E\u0002\u0002\u08a4\u08a5\u0007Q\u0002\u0002\u08a5\u08a6\u0007N\u0002",
- "\u0002\u08a6\u08a7\u0007N\u0002\u0002\u08a7\u08a8\u0007C\u0002\u0002",
- "\u08a8\u08a9\u0007V\u0002\u0002\u08a9\u08aa\u0007G\u0002\u0002\u08aa",
- "l\u0003\u0002\u0002\u0002\u08ab\u08ac\u0007E\u0002\u0002\u08ac\u08ad",
- "\u0007Q\u0002\u0002\u08ad\u08ae\u0007N\u0002\u0002\u08ae\u08af\u0007",
- "W\u0002\u0002\u08af\u08b0\u0007O\u0002\u0002\u08b0\u08b1\u0007P\u0002",
- "\u0002\u08b1n\u0003\u0002\u0002\u0002\u08b2\u08b3\u0007E\u0002\u0002",
- "\u08b3\u08b4\u0007Q\u0002\u0002\u08b4\u08b5\u0007O\u0002\u0002\u08b5",
- "\u08b6\u0007R\u0002\u0002\u08b6\u08b7\u0007T\u0002\u0002\u08b7\u08b8",
- "\u0007G\u0002\u0002\u08b8\u08b9\u0007U\u0002\u0002\u08b9\u08ba\u0007",
- "U\u0002\u0002\u08ba\u08bb\u0007K\u0002\u0002\u08bb\u08bc\u0007Q\u0002",
- "\u0002\u08bc\u08bd\u0007P\u0002\u0002\u08bdp\u0003\u0002\u0002\u0002",
- "\u08be\u08bf\u0007E\u0002\u0002\u08bf\u08c0\u0007Q\u0002\u0002\u08c0",
- "\u08c1\u0007O\u0002\u0002\u08c1\u08c2\u0007O\u0002\u0002\u08c2\u08c3",
- "\u0007K\u0002\u0002\u08c3\u08c4\u0007V\u0002\u0002\u08c4r\u0003\u0002",
- "\u0002\u0002\u08c5\u08c6\u0007E\u0002\u0002\u08c6\u08c7\u0007Q\u0002",
- "\u0002\u08c7\u08c8\u0007O\u0002\u0002\u08c8\u08c9\u0007R\u0002\u0002",
- "\u08c9\u08ca\u0007W\u0002\u0002\u08ca\u08cb\u0007V\u0002\u0002\u08cb",
- "\u08cc\u0007G\u0002\u0002\u08cct\u0003\u0002\u0002\u0002\u08cd\u08ce",
- "\u0007E\u0002\u0002\u08ce\u08cf\u0007Q\u0002\u0002\u08cf\u08d0\u0007",
- "P\u0002\u0002\u08d0\u08d1\u0007H\u0002\u0002\u08d1\u08d2\u0007K\u0002",
- "\u0002\u08d2\u08d3\u0007I\u0002\u0002\u08d3\u08d4\u0007W\u0002\u0002",
- "\u08d4\u08d5\u0007T\u0002\u0002\u08d5\u08d6\u0007C\u0002\u0002\u08d6",
- "\u08d7\u0007V\u0002\u0002\u08d7\u08d8\u0007K\u0002\u0002\u08d8\u08d9",
- "\u0007Q\u0002\u0002\u08d9\u08da\u0007P\u0002\u0002\u08dav\u0003\u0002",
- "\u0002\u0002\u08db\u08dc\u0007E\u0002\u0002\u08dc\u08dd\u0007Q\u0002",
- "\u0002\u08dd\u08de\u0007P\u0002\u0002\u08de\u08df\u0007U\u0002\u0002",
- "\u08df\u08e0\u0007V\u0002\u0002\u08e0\u08e1\u0007T\u0002\u0002\u08e1",
- "\u08e2\u0007C\u0002\u0002\u08e2\u08e3\u0007K\u0002\u0002\u08e3\u08e4",
- "\u0007P\u0002\u0002\u08e4\u08e5\u0007V\u0002\u0002\u08e5x\u0003\u0002",
- "\u0002\u0002\u08e6\u08e7\u0007E\u0002\u0002\u08e7\u08e8\u0007Q\u0002",
- "\u0002\u08e8\u08e9\u0007P\u0002\u0002\u08e9\u08ea\u0007V\u0002\u0002",
- "\u08ea\u08eb\u0007C\u0002\u0002\u08eb\u08ec\u0007K\u0002\u0002\u08ec",
- "\u08ed\u0007P\u0002\u0002\u08ed\u08ee\u0007O\u0002\u0002\u08ee\u08ef",
- "\u0007G\u0002\u0002\u08ef\u08f0\u0007P\u0002\u0002\u08f0\u08f1\u0007",
- "V\u0002\u0002\u08f1z\u0003\u0002\u0002\u0002\u08f2\u08f3\u0007E\u0002",
- "\u0002\u08f3\u08f4\u0007Q\u0002\u0002\u08f4\u08f5\u0007P\u0002\u0002",
- "\u08f5\u08f6\u0007V\u0002\u0002\u08f6\u08f7\u0007C\u0002\u0002\u08f7",
- "\u08f8\u0007K\u0002\u0002\u08f8\u08f9\u0007P\u0002\u0002\u08f9\u08fa",
- "\u0007U\u0002\u0002\u08fa|\u0003\u0002\u0002\u0002\u08fb\u08fc\u0007",
- "E\u0002\u0002\u08fc\u08fd\u0007Q\u0002\u0002\u08fd\u08fe\u0007P\u0002",
- "\u0002\u08fe\u08ff\u0007V\u0002\u0002\u08ff\u0900\u0007C\u0002\u0002",
- "\u0900\u0901\u0007K\u0002\u0002\u0901\u0902\u0007P\u0002\u0002\u0902",
- "\u0903\u0007U\u0002\u0002\u0903\u0904\u0007V\u0002\u0002\u0904\u0905",
- "\u0007C\u0002\u0002\u0905\u0906\u0007D\u0002\u0002\u0906\u0907\u0007",
- "N\u0002\u0002\u0907\u0908\u0007G\u0002\u0002\u0908~\u0003\u0002\u0002",
- "\u0002\u0909\u090a\u0007E\u0002\u0002\u090a\u090b\u0007Q\u0002\u0002",
- "\u090b\u090c\u0007P\u0002\u0002\u090c\u090d\u0007V\u0002\u0002\u090d",
- "\u090e\u0007G\u0002\u0002\u090e\u090f\u0007Z\u0002\u0002\u090f\u0910",
- "\u0007V\u0002\u0002\u0910\u0080\u0003\u0002\u0002\u0002\u0911\u0912",
- "\u0007E\u0002\u0002\u0912\u0913\u0007Q\u0002\u0002\u0913\u0914\u0007",
- "P\u0002\u0002\u0914\u0915\u0007V\u0002\u0002\u0915\u0916\u0007K\u0002",
- "\u0002\u0916\u0917\u0007P\u0002\u0002\u0917\u0918\u0007W\u0002\u0002",
- "\u0918\u0919\u0007G\u0002\u0002\u0919\u0082\u0003\u0002\u0002\u0002",
- "\u091a\u091b\u0007E\u0002\u0002\u091b\u091c\u0007Q\u0002\u0002\u091c",
- "\u091d\u0007P\u0002\u0002\u091d\u091e\u0007V\u0002\u0002\u091e\u091f",
- "\u0007K\u0002\u0002\u091f\u0920\u0007P\u0002\u0002\u0920\u0921\u0007",
- "W\u0002\u0002\u0921\u0922\u0007G\u0002\u0002\u0922\u0923\u0007a\u0002",
- "\u0002\u0923\u0924\u0007C\u0002\u0002\u0924\u0925\u0007H\u0002\u0002",
- "\u0925\u0926\u0007V\u0002\u0002\u0926\u0927\u0007G\u0002\u0002\u0927",
- "\u0928\u0007T\u0002\u0002\u0928\u0929\u0007a\u0002\u0002\u0929\u092a",
- "\u0007G\u0002\u0002\u092a\u092b\u0007T\u0002\u0002\u092b\u092c\u0007",
- "T\u0002\u0002\u092c\u092d\u0007Q\u0002\u0002\u092d\u092e\u0007T\u0002",
- "\u0002\u092e\u0084\u0003\u0002\u0002\u0002\u092f\u0930\u0007E\u0002",
- "\u0002\u0930\u0931\u0007Q\u0002\u0002\u0931\u0932\u0007P\u0002\u0002",
- "\u0932\u0933\u0007V\u0002\u0002\u0933\u0934\u0007T\u0002\u0002\u0934",
- "\u0935\u0007C\u0002\u0002\u0935\u0936\u0007E\u0002\u0002\u0936\u0937",
- "\u0007V\u0002\u0002\u0937\u0086\u0003\u0002\u0002\u0002\u0938\u0939",
- "\u0007E\u0002\u0002\u0939\u093a\u0007Q\u0002\u0002\u093a\u093b\u0007",
- "P\u0002\u0002\u093b\u093c\u0007V\u0002\u0002\u093c\u093d\u0007T\u0002",
- "\u0002\u093d\u093e\u0007C\u0002\u0002\u093e\u093f\u0007E\u0002\u0002",
- "\u093f\u0940\u0007V\u0002\u0002\u0940\u0941\u0007a\u0002\u0002\u0941",
- "\u0942\u0007P\u0002\u0002\u0942\u0943\u0007C\u0002\u0002\u0943\u0944",
- "\u0007O\u0002\u0002\u0944\u0945\u0007G\u0002\u0002\u0945\u0088\u0003",
- "\u0002\u0002\u0002\u0946\u0947\u0007E\u0002\u0002\u0947\u0948\u0007",
- "Q\u0002\u0002\u0948\u0949\u0007P\u0002\u0002\u0949\u094a\u0007X\u0002",
- "\u0002\u094a\u094b\u0007G\u0002\u0002\u094b\u094c\u0007T\u0002\u0002",
- "\u094c\u094d\u0007U\u0002\u0002\u094d\u094e\u0007C\u0002\u0002\u094e",
- "\u094f\u0007V\u0002\u0002\u094f\u0950\u0007K\u0002\u0002\u0950\u0951",
- "\u0007Q\u0002\u0002\u0951\u0952\u0007P\u0002\u0002\u0952\u008a\u0003",
- "\u0002\u0002\u0002\u0953\u0954\u0007V\u0002\u0002\u0954\u0955\u0007",
- "T\u0002\u0002\u0955\u0956\u0007[\u0002\u0002\u0956\u0958\u0007a\u0002",
- "\u0002\u0957\u0953\u0003\u0002\u0002\u0002\u0957\u0958\u0003\u0002\u0002",
- "\u0002\u0958\u0959\u0003\u0002\u0002\u0002\u0959\u095a\u0007E\u0002",
- "\u0002\u095a\u095b\u0007Q\u0002\u0002\u095b\u095c\u0007P\u0002\u0002",
- "\u095c\u095d\u0007X\u0002\u0002\u095d\u095e\u0007G\u0002\u0002\u095e",
- "\u095f\u0007T\u0002\u0002\u095f\u0960\u0007V\u0002\u0002\u0960\u008c",
- "\u0003\u0002\u0002\u0002\u0961\u0962\u0007E\u0002\u0002\u0962\u0963",
- "\u0007Q\u0002\u0002\u0963\u0964\u0007R\u0002\u0002\u0964\u0965\u0007",
- "[\u0002\u0002\u0965\u0966\u0007a\u0002\u0002\u0966\u0967\u0007Q\u0002",
- "\u0002\u0967\u0968\u0007P\u0002\u0002\u0968\u0969\u0007N\u0002\u0002",
- "\u0969\u096a\u0007[\u0002\u0002\u096a\u008e\u0003\u0002\u0002\u0002",
- "\u096b\u096c\u0007E\u0002\u0002\u096c\u096d\u0007T\u0002\u0002\u096d",
- "\u096e\u0007G\u0002\u0002\u096e\u096f\u0007C\u0002\u0002\u096f\u0970",
- "\u0007V\u0002\u0002\u0970\u0971\u0007G\u0002\u0002\u0971\u0090\u0003",
- "\u0002\u0002\u0002\u0972\u0973\u0007E\u0002\u0002\u0973\u0974\u0007",
- "T\u0002\u0002\u0974\u0975\u0007Q\u0002\u0002\u0975\u0976\u0007U\u0002",
- "\u0002\u0976\u0977\u0007U\u0002\u0002\u0977\u0092\u0003\u0002\u0002",
- "\u0002\u0978\u0979\u0007E\u0002\u0002\u0979\u097a\u0007W\u0002\u0002",
- "\u097a\u097b\u0007T\u0002\u0002\u097b\u097c\u0007T\u0002\u0002\u097c",
- "\u097d\u0007G\u0002\u0002\u097d\u097e\u0007P\u0002\u0002\u097e\u097f",
- "\u0007V\u0002\u0002\u097f\u0094\u0003\u0002\u0002\u0002\u0980\u0981",
- "\u0007E\u0002\u0002\u0981\u0982\u0007W\u0002\u0002\u0982\u0983\u0007",
- "T\u0002\u0002\u0983\u0984\u0007T\u0002\u0002\u0984\u0985\u0007G\u0002",
- "\u0002\u0985\u0986\u0007P\u0002\u0002\u0986\u0987\u0007V\u0002\u0002",
- "\u0987\u0988\u0007a\u0002\u0002\u0988\u0989\u0007F\u0002\u0002\u0989",
- "\u098a\u0007C\u0002\u0002\u098a\u098b\u0007V\u0002\u0002\u098b\u098c",
- "\u0007G\u0002\u0002\u098c\u0096\u0003\u0002\u0002\u0002\u098d\u098e",
- "\u0007E\u0002\u0002\u098e\u098f\u0007W\u0002\u0002\u098f\u0990\u0007",
- "T\u0002\u0002\u0990\u0991\u0007T\u0002\u0002\u0991\u0992\u0007G\u0002",
- "\u0002\u0992\u0993\u0007P\u0002\u0002\u0993\u0994\u0007V\u0002\u0002",
- "\u0994\u0995\u0007a\u0002\u0002\u0995\u0996\u0007V\u0002\u0002\u0996",
- "\u0997\u0007K\u0002\u0002\u0997\u0998\u0007O\u0002\u0002\u0998\u0999",
- "\u0007G\u0002\u0002\u0999\u0098\u0003\u0002\u0002\u0002\u099a\u099b",
- "\u0007E\u0002\u0002\u099b\u099c\u0007W\u0002\u0002\u099c\u099d\u0007",
- "T\u0002\u0002\u099d\u099e\u0007T\u0002\u0002\u099e\u099f\u0007G\u0002",
- "\u0002\u099f\u09a0\u0007P\u0002\u0002\u09a0\u09a1\u0007V\u0002\u0002",
- "\u09a1\u09a2\u0007a\u0002\u0002\u09a2\u09a3\u0007V\u0002\u0002\u09a3",
- "\u09a4\u0007K\u0002\u0002\u09a4\u09a5\u0007O\u0002\u0002\u09a5\u09a6",
- "\u0007G\u0002\u0002\u09a6\u09a7\u0007U\u0002\u0002\u09a7\u09a8\u0007",
- "V\u0002\u0002\u09a8\u09a9\u0007C\u0002\u0002\u09a9\u09aa\u0007O\u0002",
- "\u0002\u09aa\u09ab\u0007R\u0002\u0002\u09ab\u009a\u0003\u0002\u0002",
- "\u0002\u09ac\u09ad\u0007E\u0002\u0002\u09ad\u09ae\u0007W\u0002\u0002",
- "\u09ae\u09af\u0007T\u0002\u0002\u09af\u09b0\u0007T\u0002\u0002\u09b0",
- "\u09b1\u0007G\u0002\u0002\u09b1\u09b2\u0007P\u0002\u0002\u09b2\u09b3",
- "\u0007V\u0002\u0002\u09b3\u09b4\u0007a\u0002\u0002\u09b4\u09b5\u0007",
- "W\u0002\u0002\u09b5\u09b6\u0007U\u0002\u0002\u09b6\u09b7\u0007G\u0002",
- "\u0002\u09b7\u09b8\u0007T\u0002\u0002\u09b8\u009c\u0003\u0002\u0002",
- "\u0002\u09b9\u09ba\u0007E\u0002\u0002\u09ba\u09bb\u0007W\u0002\u0002",
- "\u09bb\u09bc\u0007T\u0002\u0002\u09bc\u09bd\u0007U\u0002\u0002\u09bd",
- "\u09be\u0007Q\u0002\u0002\u09be\u09bf\u0007T\u0002\u0002\u09bf\u009e",
- "\u0003\u0002\u0002\u0002\u09c0\u09c1\u0007E\u0002\u0002\u09c1\u09c2",
- "\u0007[\u0002\u0002\u09c2\u09c3\u0007E\u0002\u0002\u09c3\u09c4\u0007",
- "N\u0002\u0002\u09c4\u09c5\u0007G\u0002\u0002\u09c5\u00a0\u0003\u0002",
- "\u0002\u0002\u09c6\u09c7\u0007F\u0002\u0002\u09c7\u09c8\u0007C\u0002",
- "\u0002\u09c8\u09c9\u0007V\u0002\u0002\u09c9\u09ca\u0007C\u0002\u0002",
- "\u09ca\u09cb\u0007a\u0002\u0002\u09cb\u09cc\u0007E\u0002\u0002\u09cc",
- "\u09cd\u0007Q\u0002\u0002\u09cd\u09ce\u0007O\u0002\u0002\u09ce\u09cf",
- "\u0007R\u0002\u0002\u09cf\u09d0\u0007T\u0002\u0002\u09d0\u09d1\u0007",
- "G\u0002\u0002\u09d1\u09d2\u0007U\u0002\u0002\u09d2\u09d3\u0007U\u0002",
- "\u0002\u09d3\u09d4\u0007K\u0002\u0002\u09d4\u09d5\u0007Q\u0002\u0002",
- "\u09d5\u09d6\u0007P\u0002\u0002\u09d6\u00a2\u0003\u0002\u0002\u0002",
- "\u09d7\u09d8\u0007F\u0002\u0002\u09d8\u09d9\u0007C\u0002\u0002\u09d9",
- "\u09da\u0007V\u0002\u0002\u09da\u09db\u0007C\u0002\u0002\u09db\u09dc",
- "\u0007a\u0002\u0002\u09dc\u09dd\u0007U\u0002\u0002\u09dd\u09de\u0007",
- "Q\u0002\u0002\u09de\u09df\u0007W\u0002\u0002\u09df\u09e0\u0007T\u0002",
- "\u0002\u09e0\u09e1\u0007E\u0002\u0002\u09e1\u09e2\u0007G\u0002\u0002",
- "\u09e2\u00a4\u0003\u0002\u0002\u0002\u09e3\u09e4\u0007F\u0002\u0002",
- "\u09e4\u09e5\u0007C\u0002\u0002\u09e5\u09e6\u0007V\u0002\u0002\u09e6",
- "\u09e7\u0007C\u0002\u0002\u09e7\u09e8\u0007D\u0002\u0002\u09e8\u09e9",
- "\u0007C\u0002\u0002\u09e9\u09ea\u0007U\u0002\u0002\u09ea\u09eb\u0007",
- "G\u0002\u0002\u09eb\u00a6\u0003\u0002\u0002\u0002\u09ec\u09ed\u0007",
- "F\u0002\u0002\u09ed\u09ee\u0007C\u0002\u0002\u09ee\u09ef\u0007V\u0002",
- "\u0002\u09ef\u09f0\u0007C\u0002\u0002\u09f0\u09f1\u0007D\u0002\u0002",
- "\u09f1\u09f2\u0007C\u0002\u0002\u09f2\u09f3\u0007U\u0002\u0002\u09f3",
- "\u09f4\u0007G\u0002\u0002\u09f4\u09f5\u0007a\u0002\u0002\u09f5\u09f6",
- "\u0007O\u0002\u0002\u09f6\u09f7\u0007K\u0002\u0002\u09f7\u09f8\u0007",
- "T\u0002\u0002\u09f8\u09f9\u0007T\u0002\u0002\u09f9\u09fa\u0007Q\u0002",
- "\u0002\u09fa\u09fb\u0007T\u0002\u0002\u09fb\u09fc\u0007K\u0002\u0002",
- "\u09fc\u09fd\u0007P\u0002\u0002\u09fd\u09fe\u0007I\u0002\u0002\u09fe",
- "\u00a8\u0003\u0002\u0002\u0002\u09ff\u0a00\u0007F\u0002\u0002\u0a00",
- "\u0a01\u0007D\u0002\u0002\u0a01\u0a02\u0007E\u0002\u0002\u0a02\u0a03",
- "\u0007E\u0002\u0002\u0a03\u00aa\u0003\u0002\u0002\u0002\u0a04\u0a05",
- "\u0007F\u0002\u0002\u0a05\u0a06\u0007G\u0002\u0002\u0a06\u0a07\u0007",
- "C\u0002\u0002\u0a07\u0a08\u0007N\u0002\u0002\u0a08\u0a09\u0007N\u0002",
- "\u0002\u0a09\u0a0a\u0007Q\u0002\u0002\u0a0a\u0a0b\u0007E\u0002\u0002",
- "\u0a0b\u0a0c\u0007C\u0002\u0002\u0a0c\u0a0d\u0007V\u0002\u0002\u0a0d",
- "\u0a0e\u0007G\u0002\u0002\u0a0e\u00ac\u0003\u0002\u0002\u0002\u0a0f",
- "\u0a10\u0007F\u0002\u0002\u0a10\u0a11\u0007G\u0002\u0002\u0a11\u0a12",
- "\u0007E\u0002\u0002\u0a12\u0a13\u0007N\u0002\u0002\u0a13\u0a14\u0007",
- "C\u0002\u0002\u0a14\u0a15\u0007T\u0002\u0002\u0a15\u0a16\u0007G\u0002",
- "\u0002\u0a16\u00ae\u0003\u0002\u0002\u0002\u0a17\u0a18\u0007F\u0002",
- "\u0002\u0a18\u0a19\u0007G\u0002\u0002\u0a19\u0a1a\u0007H\u0002\u0002",
- "\u0a1a\u0a1b\u0007C\u0002\u0002\u0a1b\u0a1c\u0007W\u0002\u0002\u0a1c",
- "\u0a1d\u0007N\u0002\u0002\u0a1d\u0a1e\u0007V\u0002\u0002\u0a1e\u00b0",
- "\u0003\u0002\u0002\u0002\u0a1f\u0a20\u0007F\u0002\u0002\u0a20\u0a21",
- "\u0007G\u0002\u0002\u0a21\u0a22\u0007H\u0002\u0002\u0a22\u0a23\u0007",
- "C\u0002\u0002\u0a23\u0a24\u0007W\u0002\u0002\u0a24\u0a25\u0007N\u0002",
- "\u0002\u0a25\u0a26\u0007V\u0002\u0002\u0a26\u0a27\u0007a\u0002\u0002",
- "\u0a27\u0a28\u0007F\u0002\u0002\u0a28\u0a29\u0007C\u0002\u0002\u0a29",
- "\u0a2a\u0007V\u0002\u0002\u0a2a\u0a2b\u0007C\u0002\u0002\u0a2b\u0a2c",
- "\u0007D\u0002\u0002\u0a2c\u0a2d\u0007C\u0002\u0002\u0a2d\u0a2e\u0007",
- "U\u0002\u0002\u0a2e\u0a2f\u0007G\u0002\u0002\u0a2f\u00b2\u0003\u0002",
- "\u0002\u0002\u0a30\u0a31\u0007F\u0002\u0002\u0a31\u0a32\u0007G\u0002",
- "\u0002\u0a32\u0a33\u0007H\u0002\u0002\u0a33\u0a34\u0007C\u0002\u0002",
- "\u0a34\u0a35\u0007W\u0002\u0002\u0a35\u0a36\u0007N\u0002\u0002\u0a36",
- "\u0a37\u0007V\u0002\u0002\u0a37\u0a38\u0007a\u0002\u0002\u0a38\u0a39",
- "\u0007U\u0002\u0002\u0a39\u0a3a\u0007E\u0002\u0002\u0a3a\u0a3b\u0007",
- "J\u0002\u0002\u0a3b\u0a3c\u0007G\u0002\u0002\u0a3c\u0a3d\u0007O\u0002",
- "\u0002\u0a3d\u0a3e\u0007C\u0002\u0002\u0a3e\u00b4\u0003\u0002\u0002",
- "\u0002\u0a3f\u0a40\u0007F\u0002\u0002\u0a40\u0a41\u0007G\u0002\u0002",
- "\u0a41\u0a42\u0007N\u0002\u0002\u0a42\u0a43\u0007G\u0002\u0002\u0a43",
- "\u0a44\u0007V\u0002\u0002\u0a44\u0a45\u0007G\u0002\u0002\u0a45\u00b6",
- "\u0003\u0002\u0002\u0002\u0a46\u0a47\u0007F\u0002\u0002\u0a47\u0a48",
- "\u0007G\u0002\u0002\u0a48\u0a49\u0007P\u0002\u0002\u0a49\u0a4a\u0007",
- "[\u0002\u0002\u0a4a\u00b8\u0003\u0002\u0002\u0002\u0a4b\u0a4c\u0007",
- "F\u0002\u0002\u0a4c\u0a4d\u0007G\u0002\u0002\u0a4d\u0a4e\u0007U\u0002",
- "\u0002\u0a4e\u0a4f\u0007E\u0002\u0002\u0a4f\u00ba\u0003\u0002\u0002",
- "\u0002\u0a50\u0a51\u0007F\u0002\u0002\u0a51\u0a52\u0007K\u0002\u0002",
- "\u0a52\u0a53\u0007C\u0002\u0002\u0a53\u0a54\u0007I\u0002\u0002\u0a54",
- "\u0a55\u0007P\u0002\u0002\u0a55\u0a56\u0007Q\u0002\u0002\u0a56\u0a57",
- "\u0007U\u0002\u0002\u0a57\u0a58\u0007V\u0002\u0002\u0a58\u0a59\u0007",
- "K\u0002\u0002\u0a59\u0a5a\u0007E\u0002\u0002\u0a5a\u0a5b\u0007U\u0002",
- "\u0002\u0a5b\u00bc\u0003\u0002\u0002\u0002\u0a5c\u0a5d\u0007F\u0002",
- "\u0002\u0a5d\u0a5e\u0007K\u0002\u0002\u0a5e\u0a5f\u0007H\u0002\u0002",
- "\u0a5f\u0a60\u0007H\u0002\u0002\u0a60\u0a61\u0007G\u0002\u0002\u0a61",
- "\u0a62\u0007T\u0002\u0002\u0a62\u0a63\u0007G\u0002\u0002\u0a63\u0a64",
- "\u0007P\u0002\u0002\u0a64\u0a65\u0007V\u0002\u0002\u0a65\u0a66\u0007",
- "K\u0002\u0002\u0a66\u0a67\u0007C\u0002\u0002\u0a67\u0a68\u0007N\u0002",
- "\u0002\u0a68\u00be\u0003\u0002\u0002\u0002\u0a69\u0a6a\u0007F\u0002",
- "\u0002\u0a6a\u0a6b\u0007K\u0002\u0002\u0a6b\u0a6c\u0007U\u0002\u0002",
- "\u0a6c\u0a6d\u0007M\u0002\u0002\u0a6d\u00c0\u0003\u0002\u0002\u0002",
- "\u0a6e\u0a6f\u0007F\u0002\u0002\u0a6f\u0a70\u0007K\u0002\u0002\u0a70",
- "\u0a71\u0007U\u0002\u0002\u0a71\u0a72\u0007V\u0002\u0002\u0a72\u0a73",
- "\u0007K\u0002\u0002\u0a73\u0a74\u0007P\u0002\u0002\u0a74\u0a75\u0007",
- "E\u0002\u0002\u0a75\u0a76\u0007V\u0002\u0002\u0a76\u00c2\u0003\u0002",
- "\u0002\u0002\u0a77\u0a78\u0007F\u0002\u0002\u0a78\u0a79\u0007K\u0002",
- "\u0002\u0a79\u0a7a\u0007U\u0002\u0002\u0a7a\u0a7b\u0007V\u0002\u0002",
- "\u0a7b\u0a7c\u0007T\u0002\u0002\u0a7c\u0a7d\u0007K\u0002\u0002\u0a7d",
- "\u0a7e\u0007D\u0002\u0002\u0a7e\u0a7f\u0007W\u0002\u0002\u0a7f\u0a80",
- "\u0007V\u0002\u0002\u0a80\u0a81\u0007G\u0002\u0002\u0a81\u0a82\u0007",
- "F\u0002\u0002\u0a82\u00c4\u0003\u0002\u0002\u0002\u0a83\u0a84\u0007",
- "F\u0002\u0002\u0a84\u0a85\u0007Q\u0002\u0002\u0a85\u0a86\u0007W\u0002",
- "\u0002\u0a86\u0a87\u0007D\u0002\u0002\u0a87\u0a88\u0007N\u0002\u0002",
- "\u0a88\u0a89\u0007G\u0002\u0002\u0a89\u00c6\u0003\u0002\u0002\u0002",
- "\u0a8a\u0a8b\u0007^\u0002\u0002\u0a8b\u0a8c\u0007^\u0002\u0002\u0a8c",
- "\u00c8\u0003\u0002\u0002\u0002\u0a8d\u0a8e\u00071\u0002\u0002\u0a8e",
- "\u0a8f\u00071\u0002\u0002\u0a8f\u00ca\u0003\u0002\u0002\u0002\u0a90",
- "\u0a91\u0007F\u0002\u0002\u0a91\u0a92\u0007T\u0002\u0002\u0a92\u0a93",
- "\u0007Q\u0002\u0002\u0a93\u0a94\u0007R\u0002\u0002\u0a94\u00cc\u0003",
- "\u0002\u0002\u0002\u0a95\u0a96\u0007F\u0002\u0002\u0a96\u0a97\u0007",
- "V\u0002\u0002\u0a97\u0a98\u0007E\u0002\u0002\u0a98\u0a99\u0007a\u0002",
- "\u0002\u0a99\u0a9a\u0007U\u0002\u0002\u0a9a\u0a9b\u0007W\u0002\u0002",
- "\u0a9b\u0a9c\u0007R\u0002\u0002\u0a9c\u0a9d\u0007R\u0002\u0002\u0a9d",
- "\u0a9e\u0007Q\u0002\u0002\u0a9e\u0a9f\u0007T\u0002\u0002\u0a9f\u0aa0",
- "\u0007V\u0002\u0002\u0aa0\u00ce\u0003\u0002\u0002\u0002\u0aa1\u0aa2",
- "\u0007F\u0002\u0002\u0aa2\u0aa3\u0007W\u0002\u0002\u0aa3\u0aa4\u0007",
- "O\u0002\u0002\u0aa4\u0aa5\u0007R\u0002\u0002\u0aa5\u00d0\u0003\u0002",
- "\u0002\u0002\u0aa6\u0aa7\u0007G\u0002\u0002\u0aa7\u0aa8\u0007N\u0002",
- "\u0002\u0aa8\u0aa9\u0007U\u0002\u0002\u0aa9\u0aaa\u0007G\u0002\u0002",
- "\u0aaa\u00d2\u0003\u0002\u0002\u0002\u0aab\u0aac\u0007G\u0002\u0002",
- "\u0aac\u0aad\u0007P\u0002\u0002\u0aad\u0aae\u0007C\u0002\u0002\u0aae",
- "\u0aaf\u0007D\u0002\u0002\u0aaf\u0ab0\u0007N\u0002\u0002\u0ab0\u0ab1",
- "\u0007G\u0002\u0002\u0ab1\u0ab2\u0007F\u0002\u0002\u0ab2\u00d4\u0003",
- "\u0002\u0002\u0002\u0ab3\u0ab4\u0007G\u0002\u0002\u0ab4\u0ab5\u0007",
- "P\u0002\u0002\u0ab5\u0ab6\u0007F\u0002\u0002\u0ab6\u00d6\u0003\u0002",
- "\u0002\u0002\u0ab7\u0ab8\u0007G\u0002\u0002\u0ab8\u0ab9\u0007P\u0002",
- "\u0002\u0ab9\u0aba\u0007F\u0002\u0002\u0aba\u0abb\u0007R\u0002\u0002",
- "\u0abb\u0abc\u0007Q\u0002\u0002\u0abc\u0abd\u0007K\u0002\u0002\u0abd",
- "\u0abe\u0007P\u0002\u0002\u0abe\u0abf\u0007V\u0002\u0002\u0abf\u00d8",
- "\u0003\u0002\u0002\u0002\u0ac0\u0ac1\u0007G\u0002\u0002\u0ac1\u0ac2",
- "\u0007T\u0002\u0002\u0ac2\u0ac3\u0007T\u0002\u0002\u0ac3\u0ac4\u0007",
- "N\u0002\u0002\u0ac4\u0ac5\u0007X\u0002\u0002\u0ac5\u0ac6\u0007N\u0002",
- "\u0002\u0ac6\u00da\u0003\u0002\u0002\u0002\u0ac7\u0ac8\u0007G\u0002",
- "\u0002\u0ac8\u0ac9\u0007U\u0002\u0002\u0ac9\u0aca\u0007E\u0002\u0002",
- "\u0aca\u0acb\u0007C\u0002\u0002\u0acb\u0acc\u0007R\u0002\u0002\u0acc",
- "\u0acd\u0007G\u0002\u0002\u0acd\u00dc\u0003\u0002\u0002\u0002\u0ace",
- "\u0acf\u0007G\u0002\u0002\u0acf\u0ad0\u0007T\u0002\u0002\u0ad0\u0ad1",
- "\u0007T\u0002\u0002\u0ad1\u0ad2\u0007Q\u0002\u0002\u0ad2\u0ad3\u0007",
- "T\u0002\u0002\u0ad3\u00de\u0003\u0002\u0002\u0002\u0ad4\u0ad5\u0007",
- "G\u0002\u0002\u0ad5\u0ad6\u0007X\u0002\u0002\u0ad6\u0ad7\u0007G\u0002",
- "\u0002\u0ad7\u0ad8\u0007P\u0002\u0002\u0ad8\u0ad9\u0007V\u0002\u0002",
- "\u0ad9\u00e0\u0003\u0002\u0002\u0002\u0ada\u0adb\u0007G\u0002\u0002",
- "\u0adb\u0adc\u0007X\u0002\u0002\u0adc\u0add\u0007G\u0002\u0002\u0add",
- "\u0ade\u0007P\u0002\u0002\u0ade\u0adf\u0007V\u0002\u0002\u0adf\u0ae0",
- "\u0007F\u0002\u0002\u0ae0\u0ae1\u0007C\u0002\u0002\u0ae1\u0ae2\u0007",
- "V\u0002\u0002\u0ae2\u0ae3\u0007C\u0002\u0002\u0ae3\u0ae4\u0003\u0002",
- "\u0002\u0002\u0ae4\u0ae5\u0007*\u0002\u0002\u0ae5\u0ae6\u0007+\u0002",
- "\u0002\u0ae6\u00e2\u0003\u0002\u0002\u0002\u0ae7\u0ae8\u0007G\u0002",
- "\u0002\u0ae8\u0ae9\u0007X\u0002\u0002\u0ae9\u0aea\u0007G\u0002\u0002",
- "\u0aea\u0aeb\u0007P\u0002\u0002\u0aeb\u0aec\u0007V\u0002\u0002\u0aec",
- "\u0aed\u0007a\u0002\u0002\u0aed\u0aee\u0007T\u0002\u0002\u0aee\u0aef",
- "\u0007G\u0002\u0002\u0aef\u0af0\u0007V\u0002\u0002\u0af0\u0af1\u0007",
- "G\u0002\u0002\u0af1\u0af2\u0007P\u0002\u0002\u0af2\u0af3\u0007V\u0002",
- "\u0002\u0af3\u0af4\u0007K\u0002\u0002\u0af4\u0af5\u0007Q\u0002\u0002",
- "\u0af5\u0af6\u0007P\u0002\u0002\u0af6\u0af7\u0007a\u0002\u0002\u0af7",
- "\u0af8\u0007O\u0002\u0002\u0af8\u0af9\u0007Q\u0002\u0002\u0af9\u0afa",
- "\u0007F\u0002\u0002\u0afa\u0afb\u0007G\u0002\u0002\u0afb\u00e4\u0003",
- "\u0002\u0002\u0002\u0afc\u0afd\u0007G\u0002\u0002\u0afd\u0afe\u0007",
- "Z\u0002\u0002\u0afe\u0aff\u0007E\u0002\u0002\u0aff\u0b00\u0007G\u0002",
- "\u0002\u0b00\u0b01\u0007R\u0002\u0002\u0b01\u0b02\u0007V\u0002\u0002",
- "\u0b02\u00e6\u0003\u0002\u0002\u0002\u0b03\u0b04\u0007G\u0002\u0002",
- "\u0b04\u0b05\u0007Z\u0002\u0002\u0b05\u0b06\u0007G\u0002\u0002\u0b06",
- "\u0b07\u0007E\u0002\u0002\u0b07\u0b08\u0007W\u0002\u0002\u0b08\u0b09",
- "\u0007V\u0002\u0002\u0b09\u0b0a\u0007C\u0002\u0002\u0b0a\u0b0b\u0007",
- "D\u0002\u0002\u0b0b\u0b0c\u0007N\u0002\u0002\u0b0c\u0b0d\u0007G\u0002",
- "\u0002\u0b0d\u0b0e\u0007a\u0002\u0002\u0b0e\u0b0f\u0007H\u0002\u0002",
- "\u0b0f\u0b10\u0007K\u0002\u0002\u0b10\u0b11\u0007N\u0002\u0002\u0b11",
- "\u0b12\u0007G\u0002\u0002\u0b12\u00e8\u0003\u0002\u0002\u0002\u0b13",
- "\u0b14\u0007G\u0002\u0002\u0b14\u0b15\u0007Z\u0002\u0002\u0b15\u0b16",
- "\u0007G\u0002\u0002\u0b16\u0b17\u0007E\u0002\u0002\u0b17\u0b1b\u0003",
- "\u0002\u0002\u0002\u0b18\u0b19\u0007W\u0002\u0002\u0b19\u0b1a\u0007",
- "V\u0002\u0002\u0b1a\u0b1c\u0007G\u0002\u0002\u0b1b\u0b18\u0003\u0002",
- "\u0002\u0002\u0b1b\u0b1c\u0003\u0002\u0002\u0002\u0b1c\u00ea\u0003\u0002",
- "\u0002\u0002\u0b1d\u0b1e\u0007G\u0002\u0002\u0b1e\u0b1f\u0007Z\u0002",
- "\u0002\u0b1f\u0b20\u0007K\u0002\u0002\u0b20\u0b21\u0007U\u0002\u0002",
- "\u0b21\u0b22\u0007V\u0002\u0002\u0b22\u0b23\u0007U\u0002\u0002\u0b23",
- "\u00ec\u0003\u0002\u0002\u0002\u0b24\u0b25\u0007G\u0002\u0002\u0b25",
- "\u0b26\u0007Z\u0002\u0002\u0b26\u0b27\u0007R\u0002\u0002\u0b27\u0b28",
- "\u0007K\u0002\u0002\u0b28\u0b29\u0007T\u0002\u0002\u0b29\u0b2a\u0007",
- "G\u0002\u0002\u0b2a\u0b2b\u0007F\u0002\u0002\u0b2b\u0b2c\u0007C\u0002",
- "\u0002\u0b2c\u0b2d\u0007V\u0002\u0002\u0b2d\u0b2e\u0007G\u0002\u0002",
- "\u0b2e\u00ee\u0003\u0002\u0002\u0002\u0b2f\u0b30\u0007G\u0002\u0002",
- "\u0b30\u0b31\u0007Z\u0002\u0002\u0b31\u0b32\u0007K\u0002\u0002\u0b32",
- "\u0b33\u0007V\u0002\u0002\u0b33\u00f0\u0003\u0002\u0002\u0002\u0b34",
- "\u0b35\u0007G\u0002\u0002\u0b35\u0b36\u0007Z\u0002\u0002\u0b36\u0b37",
- "\u0007V\u0002\u0002\u0b37\u0b38\u0007G\u0002\u0002\u0b38\u0b39\u0007",
- "P\u0002\u0002\u0b39\u0b3a\u0007U\u0002\u0002\u0b3a\u0b3b\u0007K\u0002",
- "\u0002\u0b3b\u0b3c\u0007Q\u0002\u0002\u0b3c\u0b3d\u0007P\u0002\u0002",
- "\u0b3d\u00f2\u0003\u0002\u0002\u0002\u0b3e\u0b3f\u0007G\u0002\u0002",
- "\u0b3f\u0b40\u0007Z\u0002\u0002\u0b40\u0b41\u0007V\u0002\u0002\u0b41",
- "\u0b42\u0007G\u0002\u0002\u0b42\u0b43\u0007T\u0002\u0002\u0b43\u0b44",
- "\u0007P\u0002\u0002\u0b44\u0b45\u0007C\u0002\u0002\u0b45\u0b46\u0007",
- "N\u0002\u0002\u0b46\u00f4\u0003\u0002\u0002\u0002\u0b47\u0b48\u0007",
- "G\u0002\u0002\u0b48\u0b49\u0007Z\u0002\u0002\u0b49\u0b4a\u0007V\u0002",
- "\u0002\u0b4a\u0b4b\u0007G\u0002\u0002\u0b4b\u0b4c\u0007T\u0002\u0002",
- "\u0b4c\u0b4d\u0007P\u0002\u0002\u0b4d\u0b4e\u0007C\u0002\u0002\u0b4e",
- "\u0b4f\u0007N\u0002\u0002\u0b4f\u0b50\u0007a\u0002\u0002\u0b50\u0b51",
- "\u0007C\u0002\u0002\u0b51\u0b52\u0007E\u0002\u0002\u0b52\u0b53\u0007",
- "E\u0002\u0002\u0b53\u0b54\u0007G\u0002\u0002\u0b54\u0b55\u0007U\u0002",
- "\u0002\u0b55\u0b56\u0007U\u0002\u0002\u0b56\u00f6\u0003\u0002\u0002",
- "\u0002\u0b57\u0b58\u0007H\u0002\u0002\u0b58\u0b59\u0007C\u0002\u0002",
- "\u0b59\u0b5a\u0007K\u0002\u0002\u0b5a\u0b5b\u0007N\u0002\u0002\u0b5b",
- "\u0b5c\u0007Q\u0002\u0002\u0b5c\u0b5d\u0007X\u0002\u0002\u0b5d\u0b5e",
- "\u0007G\u0002\u0002\u0b5e\u0b5f\u0007T\u0002\u0002\u0b5f\u00f8\u0003",
- "\u0002\u0002\u0002\u0b60\u0b61\u0007H\u0002\u0002\u0b61\u0b62\u0007",
- "C\u0002\u0002\u0b62\u0b63\u0007K\u0002\u0002\u0b63\u0b64\u0007N\u0002",
- "\u0002\u0b64\u0b65\u0007W\u0002\u0002\u0b65\u0b66\u0007T\u0002\u0002",
- "\u0b66\u0b67\u0007G\u0002\u0002\u0b67\u0b68\u0007E\u0002\u0002\u0b68",
- "\u0b69\u0007Q\u0002\u0002\u0b69\u0b6a\u0007P\u0002\u0002\u0b6a\u0b6b",
- "\u0007F\u0002\u0002\u0b6b\u0b6c\u0007K\u0002\u0002\u0b6c\u0b6d\u0007",
- "V\u0002\u0002\u0b6d\u0b6e\u0007K\u0002\u0002\u0b6e\u0b6f\u0007Q\u0002",
- "\u0002\u0b6f\u0b70\u0007P\u0002\u0002\u0b70\u0b71\u0007N\u0002\u0002",
- "\u0b71\u0b72\u0007G\u0002\u0002\u0b72\u0b73\u0007X\u0002\u0002\u0b73",
- "\u0b74\u0007G\u0002\u0002\u0b74\u0b75\u0007N\u0002\u0002\u0b75\u00fa",
- "\u0003\u0002\u0002\u0002\u0b76\u0b77\u0007H\u0002\u0002\u0b77\u0b78",
- "\u0007C\u0002\u0002\u0b78\u0b79\u0007P\u0002\u0002\u0b79\u0b7a\u0007",
- "a\u0002\u0002\u0b7a\u0b7b\u0007K\u0002\u0002\u0b7b\u0b7c\u0007P\u0002",
- "\u0002\u0b7c\u00fc\u0003\u0002\u0002\u0002\u0b7d\u0b7e\u0007H\u0002",
- "\u0002\u0b7e\u0b7f\u0007G\u0002\u0002\u0b7f\u0b80\u0007V\u0002\u0002",
- "\u0b80\u0b81\u0007E\u0002\u0002\u0b81\u0b82\u0007J\u0002\u0002\u0b82",
- "\u00fe\u0003\u0002\u0002\u0002\u0b83\u0b84\u0007H\u0002\u0002\u0b84",
- "\u0b85\u0007K\u0002\u0002\u0b85\u0b86\u0007N\u0002\u0002\u0b86\u0b87",
- "\u0007G\u0002\u0002\u0b87\u0100\u0003\u0002\u0002\u0002\u0b88\u0b89",
- "\u0007H\u0002\u0002\u0b89\u0b8a\u0007K\u0002\u0002\u0b8a\u0b8b\u0007",
- "N\u0002\u0002\u0b8b\u0b8c\u0007G\u0002\u0002\u0b8c\u0b8d\u0007P\u0002",
- "\u0002\u0b8d\u0b8e\u0007C\u0002\u0002\u0b8e\u0b8f\u0007O\u0002\u0002",
- "\u0b8f\u0b90\u0007G\u0002\u0002\u0b90\u0102\u0003\u0002\u0002\u0002",
- "\u0b91\u0b92\u0007H\u0002\u0002\u0b92\u0b93\u0007K\u0002\u0002\u0b93",
- "\u0b94\u0007N\u0002\u0002\u0b94\u0b95\u0007N\u0002\u0002\u0b95\u0b96",
- "\u0007H\u0002\u0002\u0b96\u0b97\u0007C\u0002\u0002\u0b97\u0b98\u0007",
- "E\u0002\u0002\u0b98\u0b99\u0007V\u0002\u0002\u0b99\u0b9a\u0007Q\u0002",
- "\u0002\u0b9a\u0b9b\u0007T\u0002\u0002\u0b9b\u0104\u0003\u0002\u0002",
- "\u0002\u0b9c\u0b9d\u0007H\u0002\u0002\u0b9d\u0b9e\u0007K\u0002\u0002",
- "\u0b9e\u0b9f\u0007N\u0002\u0002\u0b9f\u0ba0\u0007G\u0002\u0002\u0ba0",
- "\u0ba1\u0007a\u0002\u0002\u0ba1\u0ba2\u0007U\u0002\u0002\u0ba2\u0ba3",
- "\u0007P\u0002\u0002\u0ba3\u0ba4\u0007C\u0002\u0002\u0ba4\u0ba5\u0007",
- "R\u0002\u0002\u0ba5\u0ba6\u0007U\u0002\u0002\u0ba6\u0ba7\u0007J\u0002",
- "\u0002\u0ba7\u0ba8\u0007Q\u0002\u0002\u0ba8\u0ba9\u0007V\u0002\u0002",
- "\u0ba9\u0106\u0003\u0002\u0002\u0002\u0baa\u0bab\u0007H\u0002\u0002",
- "\u0bab\u0bac\u0007Q\u0002\u0002\u0bac\u0bad\u0007T\u0002\u0002\u0bad",
- "\u0108\u0003\u0002\u0002\u0002\u0bae\u0baf\u0007H\u0002\u0002\u0baf",
- "\u0bb0\u0007Q\u0002\u0002\u0bb0\u0bb1\u0007T\u0002\u0002\u0bb1\u0bb2",
- "\u0007E\u0002\u0002\u0bb2\u0bb3\u0007G\u0002\u0002\u0bb3\u0bb4\u0007",
- "U\u0002\u0002\u0bb4\u0bb5\u0007G\u0002\u0002\u0bb5\u0bb6\u0007G\u0002",
- "\u0002\u0bb6\u0bb7\u0007M\u0002\u0002\u0bb7\u010a\u0003\u0002\u0002",
- "\u0002\u0bb8\u0bb9\u0007H\u0002\u0002\u0bb9\u0bba\u0007Q\u0002\u0002",
- "\u0bba\u0bbb\u0007T\u0002\u0002\u0bbb\u0bbc\u0007E\u0002\u0002\u0bbc",
- "\u0bbd\u0007G\u0002\u0002\u0bbd\u0bbe\u0007a\u0002\u0002\u0bbe\u0bbf",
- "\u0007U\u0002\u0002\u0bbf\u0bc0\u0007G\u0002\u0002\u0bc0\u0bc1\u0007",
- "T\u0002\u0002\u0bc1\u0bc2\u0007X\u0002\u0002\u0bc2\u0bc3\u0007K\u0002",
- "\u0002\u0bc3\u0bc4\u0007E\u0002\u0002\u0bc4\u0bc5\u0007G\u0002\u0002",
- "\u0bc5\u0bc6\u0007a\u0002\u0002\u0bc6\u0bc7\u0007C\u0002\u0002\u0bc7",
- "\u0bc8\u0007N\u0002\u0002\u0bc8\u0bc9\u0007N\u0002\u0002\u0bc9\u0bca",
- "\u0007Q\u0002\u0002\u0bca\u0bcb\u0007Y\u0002\u0002\u0bcb\u0bcc\u0007",
- "a\u0002\u0002\u0bcc\u0bcd\u0007F\u0002\u0002\u0bcd\u0bce\u0007C\u0002",
- "\u0002\u0bce\u0bcf\u0007V\u0002\u0002\u0bcf\u0bd0\u0007C\u0002\u0002",
- "\u0bd0\u0bd1\u0007a\u0002\u0002\u0bd1\u0bd2\u0007N\u0002\u0002\u0bd2",
- "\u0bd3\u0007Q\u0002\u0002\u0bd3\u0bd4\u0007U\u0002\u0002\u0bd4\u0bd5",
- "\u0007U\u0002\u0002\u0bd5\u010c\u0003\u0002\u0002\u0002\u0bd6\u0bd7",
- "\u0007H\u0002\u0002\u0bd7\u0bd8\u0007Q\u0002\u0002\u0bd8\u0bd9\u0007",
- "T\u0002\u0002\u0bd9\u0bda\u0007G\u0002\u0002\u0bda\u0bdb\u0007K\u0002",
- "\u0002\u0bdb\u0bdc\u0007I\u0002\u0002\u0bdc\u0bdd\u0007P\u0002\u0002",
- "\u0bdd\u010e\u0003\u0002\u0002\u0002\u0bde\u0bdf\u0007H\u0002\u0002",
- "\u0bdf\u0be0\u0007T\u0002\u0002\u0be0\u0be1\u0007G\u0002\u0002\u0be1",
- "\u0be2\u0007G\u0002\u0002\u0be2\u0be3\u0007V\u0002\u0002\u0be3\u0be4",
- "\u0007G\u0002\u0002\u0be4\u0be5\u0007Z\u0002\u0002\u0be5\u0be6\u0007",
- "V\u0002\u0002\u0be6\u0110\u0003\u0002\u0002\u0002\u0be7\u0be8\u0007",
- "H\u0002\u0002\u0be8\u0be9\u0007T\u0002\u0002\u0be9\u0bea\u0007G\u0002",
- "\u0002\u0bea\u0beb\u0007G\u0002\u0002\u0beb\u0bec\u0007V\u0002\u0002",
- "\u0bec\u0bed\u0007G\u0002\u0002\u0bed\u0bee\u0007Z\u0002\u0002\u0bee",
- "\u0bef\u0007V\u0002\u0002\u0bef\u0bf0\u0007V\u0002\u0002\u0bf0\u0bf1",
- "\u0007C\u0002\u0002\u0bf1\u0bf2\u0007D\u0002\u0002\u0bf2\u0bf3\u0007",
- "N\u0002\u0002\u0bf3\u0bf4\u0007G\u0002\u0002\u0bf4\u0112\u0003\u0002",
- "\u0002\u0002\u0bf5\u0bf6\u0007H\u0002\u0002\u0bf6\u0bf7\u0007T\u0002",
- "\u0002\u0bf7\u0bf8\u0007Q\u0002\u0002\u0bf8\u0bf9\u0007O\u0002\u0002",
- "\u0bf9\u0114\u0003\u0002\u0002\u0002\u0bfa\u0bfb\u0007H\u0002\u0002",
- "\u0bfb\u0bfc\u0007W\u0002\u0002\u0bfc\u0bfd\u0007N\u0002\u0002\u0bfd",
- "\u0bfe\u0007N\u0002\u0002\u0bfe\u0116\u0003\u0002\u0002\u0002\u0bff",
- "\u0c00\u0007H\u0002\u0002\u0c00\u0c01\u0007W\u0002\u0002\u0c01\u0c02",
- "\u0007P\u0002\u0002\u0c02\u0c03\u0007E\u0002\u0002\u0c03\u0c04\u0007",
- "V\u0002\u0002\u0c04\u0c05\u0007K\u0002\u0002\u0c05\u0c06\u0007Q\u0002",
- "\u0002\u0c06\u0c07\u0007P\u0002\u0002\u0c07\u0118\u0003\u0002\u0002",
- "\u0002\u0c08\u0c09\u0007I\u0002\u0002\u0c09\u0c0a\u0007G\u0002\u0002",
- "\u0c0a\u0c0b\u0007V\u0002\u0002\u0c0b\u011a\u0003\u0002\u0002\u0002",
- "\u0c0c\u0c0d\u0007I\u0002\u0002\u0c0d\u0c0e\u0007Q\u0002\u0002\u0c0e",
- "\u0c0f\u0007V\u0002\u0002\u0c0f\u0c10\u0007Q\u0002\u0002\u0c10\u011c",
- "\u0003\u0002\u0002\u0002\u0c11\u0c12\u0007I\u0002\u0002\u0c12\u0c13",
- "\u0007Q\u0002\u0002\u0c13\u0c14\u0007X\u0002\u0002\u0c14\u0c15\u0007",
- "G\u0002\u0002\u0c15\u0c16\u0007T\u0002\u0002\u0c16\u0c17\u0007P\u0002",
- "\u0002\u0c17\u0c18\u0007Q\u0002\u0002\u0c18\u0c19\u0007T\u0002\u0002",
- "\u0c19\u011e\u0003\u0002\u0002\u0002\u0c1a\u0c1b\u0007I\u0002\u0002",
- "\u0c1b\u0c1c\u0007T\u0002\u0002\u0c1c\u0c1d\u0007C\u0002\u0002\u0c1d",
- "\u0c1e\u0007P\u0002\u0002\u0c1e\u0c1f\u0007V\u0002\u0002\u0c1f\u0120",
- "\u0003\u0002\u0002\u0002\u0c20\u0c21\u0007I\u0002\u0002\u0c21\u0c22",
- "\u0007T\u0002\u0002\u0c22\u0c23\u0007Q\u0002\u0002\u0c23\u0c24\u0007",
- "W\u0002\u0002\u0c24\u0c25\u0007R\u0002\u0002\u0c25\u0122\u0003\u0002",
- "\u0002\u0002\u0c26\u0c27\u0007J\u0002\u0002\u0c27\u0c28\u0007C\u0002",
- "\u0002\u0c28\u0c29\u0007X\u0002\u0002\u0c29\u0c2a\u0007K\u0002\u0002",
- "\u0c2a\u0c2b\u0007P\u0002\u0002\u0c2b\u0c2c\u0007I\u0002\u0002\u0c2c",
- "\u0124\u0003\u0002\u0002\u0002\u0c2d\u0c2e\u0007J\u0002\u0002\u0c2e",
- "\u0c2f\u0007C\u0002\u0002\u0c2f\u0c30\u0007U\u0002\u0002\u0c30\u0c31",
- "\u0007J\u0002\u0002\u0c31\u0c32\u0007G\u0002\u0002\u0c32\u0c33\u0007",
- "F\u0002\u0002\u0c33\u0126\u0003\u0002\u0002\u0002\u0c34\u0c35\u0007",
- "J\u0002\u0002\u0c35\u0c36\u0007G\u0002\u0002\u0c36\u0c37\u0007C\u0002",
- "\u0002\u0c37\u0c38\u0007N\u0002\u0002\u0c38\u0c39\u0007V\u0002\u0002",
- "\u0c39\u0c3a\u0007J\u0002\u0002\u0c3a\u0c3b\u0007E\u0002\u0002\u0c3b",
- "\u0c3c\u0007J\u0002\u0002\u0c3c\u0c3d\u0007G\u0002\u0002\u0c3d\u0c3e",
- "\u0007E\u0002\u0002\u0c3e\u0c3f\u0007M\u0002\u0002\u0c3f\u0c40\u0007",
- "V\u0002\u0002\u0c40\u0c41\u0007K\u0002\u0002\u0c41\u0c42\u0007O\u0002",
- "\u0002\u0c42\u0c43\u0007G\u0002\u0002\u0c43\u0c44\u0007Q\u0002\u0002",
- "\u0c44\u0c45\u0007W\u0002\u0002\u0c45\u0c46\u0007V\u0002\u0002\u0c46",
- "\u0128\u0003\u0002\u0002\u0002\u0c47\u0c48\u0007K\u0002\u0002\u0c48",
- "\u0c49\u0007F\u0002\u0002\u0c49\u0c4a\u0007G\u0002\u0002\u0c4a\u0c4b",
- "\u0007P\u0002\u0002\u0c4b\u0c4c\u0007V\u0002\u0002\u0c4c\u0c4d\u0007",
- "K\u0002\u0002\u0c4d\u0c4e\u0007V\u0002\u0002\u0c4e\u0c4f\u0007[\u0002",
- "\u0002\u0c4f\u012a\u0003\u0002\u0002\u0002\u0c50\u0c51\u0007K\u0002",
- "\u0002\u0c51\u0c52\u0007F\u0002\u0002\u0c52\u0c53\u0007G\u0002\u0002",
- "\u0c53\u0c54\u0007P\u0002\u0002\u0c54\u0c55\u0007V\u0002\u0002\u0c55",
- "\u0c56\u0007K\u0002\u0002\u0c56\u0c57\u0007V\u0002\u0002\u0c57\u0c58",
- "\u0007[\u0002\u0002\u0c58\u0c59\u0007E\u0002\u0002\u0c59\u0c5a\u0007",
- "Q\u0002\u0002\u0c5a\u0c5b\u0007N\u0002\u0002\u0c5b\u012c\u0003\u0002",
- "\u0002\u0002\u0c5c\u0c5d\u0007K\u0002\u0002\u0c5d\u0c5e\u0007F\u0002",
- "\u0002\u0c5e\u0c5f\u0007G\u0002\u0002\u0c5f\u0c60\u0007P\u0002\u0002",
- "\u0c60\u0c61\u0007V\u0002\u0002\u0c61\u0c62\u0007K\u0002\u0002\u0c62",
- "\u0c63\u0007V\u0002\u0002\u0c63\u0c64\u0007[\u0002\u0002\u0c64\u0c65",
- "\u0007a\u0002\u0002\u0c65\u0c66\u0007K\u0002\u0002\u0c66\u0c67\u0007",
- "P\u0002\u0002\u0c67\u0c68\u0007U\u0002\u0002\u0c68\u0c69\u0007G\u0002",
- "\u0002\u0c69\u0c6a\u0007T\u0002\u0002\u0c6a\u0c6b\u0007V\u0002\u0002",
- "\u0c6b\u012e\u0003\u0002\u0002\u0002\u0c6c\u0c6d\u0007K\u0002\u0002",
- "\u0c6d\u0c6e\u0007H\u0002\u0002\u0c6e\u0130\u0003\u0002\u0002\u0002",
- "\u0c6f\u0c70\u0007K\u0002\u0002\u0c70\u0c71\u0007K\u0002\u0002\u0c71",
- "\u0c72\u0007H\u0002\u0002\u0c72\u0132\u0003\u0002\u0002\u0002\u0c73",
- "\u0c74\u0007K\u0002\u0002\u0c74\u0c75\u0007P\u0002\u0002\u0c75\u0134",
- "\u0003\u0002\u0002\u0002\u0c76\u0c77\u0007K\u0002\u0002\u0c77\u0c78",
- "\u0007P\u0002\u0002\u0c78\u0c79\u0007E\u0002\u0002\u0c79\u0c7a\u0007",
- "N\u0002\u0002\u0c7a\u0c7b\u0007W\u0002\u0002\u0c7b\u0c7c\u0007F\u0002",
- "\u0002\u0c7c\u0c7d\u0007G\u0002\u0002\u0c7d\u0136\u0003\u0002\u0002",
- "\u0002\u0c7e\u0c7f\u0007K\u0002\u0002\u0c7f\u0c80\u0007P\u0002\u0002",
- "\u0c80\u0c81\u0007E\u0002\u0002\u0c81\u0c82\u0007T\u0002\u0002\u0c82",
- "\u0c83\u0007G\u0002\u0002\u0c83\u0c84\u0007O\u0002\u0002\u0c84\u0c85",
- "\u0007G\u0002\u0002\u0c85\u0c86\u0007P\u0002\u0002\u0c86\u0c87\u0007",
- "V\u0002\u0002\u0c87\u0138\u0003\u0002\u0002\u0002\u0c88\u0c89\u0007",
- "K\u0002\u0002\u0c89\u0c8a\u0007P\u0002\u0002\u0c8a\u0c8b\u0007F\u0002",
- "\u0002\u0c8b\u0c8c\u0007G\u0002\u0002\u0c8c\u0c8d\u0007Z\u0002\u0002",
- "\u0c8d\u013a\u0003\u0002\u0002\u0002\u0c8e\u0c8f\u0007K\u0002\u0002",
- "\u0c8f\u0c90\u0007P\u0002\u0002\u0c90\u0c91\u0007H\u0002\u0002\u0c91",
- "\u0c92\u0007K\u0002\u0002\u0c92\u0c93\u0007P\u0002\u0002\u0c93\u0c94",
- "\u0007K\u0002\u0002\u0c94\u0c95\u0007V\u0002\u0002\u0c95\u0c96\u0007",
- "G\u0002\u0002\u0c96\u013c\u0003\u0002\u0002\u0002\u0c97\u0c98\u0007",
- "K\u0002\u0002\u0c98\u0c99\u0007P\u0002\u0002\u0c99\u0c9a\u0007K\u0002",
- "\u0002\u0c9a\u0c9b\u0007V\u0002\u0002\u0c9b\u013e\u0003\u0002\u0002",
- "\u0002\u0c9c\u0c9d\u0007K\u0002\u0002\u0c9d\u0c9e\u0007P\u0002\u0002",
- "\u0c9e\u0c9f\u0007P\u0002\u0002\u0c9f\u0ca0\u0007G\u0002\u0002\u0ca0",
- "\u0ca1\u0007T\u0002\u0002\u0ca1\u0140\u0003\u0002\u0002\u0002\u0ca2",
- "\u0ca3\u0007K\u0002\u0002\u0ca3\u0ca4\u0007P\u0002\u0002\u0ca4\u0ca5",
- "\u0007U\u0002\u0002\u0ca5\u0ca6\u0007G\u0002\u0002\u0ca6\u0ca7\u0007",
- "T\u0002\u0002\u0ca7\u0ca8\u0007V\u0002\u0002\u0ca8\u0142\u0003\u0002",
- "\u0002\u0002\u0ca9\u0caa\u0007K\u0002\u0002\u0caa\u0cab\u0007P\u0002",
- "\u0002\u0cab\u0cac\u0007U\u0002\u0002\u0cac\u0cad\u0007V\u0002\u0002",
- "\u0cad\u0cae\u0007G\u0002\u0002\u0cae\u0caf\u0007C\u0002\u0002\u0caf",
- "\u0cb0\u0007F\u0002\u0002\u0cb0\u0144\u0003\u0002\u0002\u0002\u0cb1",
- "\u0cb2\u0007K\u0002\u0002\u0cb2\u0cb3\u0007P\u0002\u0002\u0cb3\u0cb4",
- "\u0007V\u0002\u0002\u0cb4\u0cb5\u0007G\u0002\u0002\u0cb5\u0cb6\u0007",
- "T\u0002\u0002\u0cb6\u0cb7\u0007U\u0002\u0002\u0cb7\u0cb8\u0007G\u0002",
- "\u0002\u0cb8\u0cb9\u0007E\u0002\u0002\u0cb9\u0cba\u0007V\u0002\u0002",
- "\u0cba\u0146\u0003\u0002\u0002\u0002\u0cbb\u0cbc\u0007K\u0002\u0002",
- "\u0cbc\u0cbd\u0007P\u0002\u0002\u0cbd\u0cbe\u0007V\u0002\u0002\u0cbe",
- "\u0cbf\u0007Q\u0002\u0002\u0cbf\u0148\u0003\u0002\u0002\u0002\u0cc0",
- "\u0cc2\t\u0002\u0002\u0002\u0cc1\u0cc0\u0003\u0002\u0002\u0002\u0cc1",
- "\u0cc2\u0003\u0002\u0002\u0002\u0cc2\u0cc3\u0003\u0002\u0002\u0002\u0cc3",
- "\u0cc4\u0005\u0695\u034b\u0002\u0cc4\u0cc5\u0005\u066b\u0336\u0002\u0cc5",
- "\u0cc6\u0005\u0695\u034b\u0002\u0cc6\u0cc7\u0005\u066b\u0336\u0002\u0cc7",
- "\u0cc8\u0005\u0695\u034b\u0002\u0cc8\u0cc9\u0005\u066b\u0336\u0002\u0cc9",
- "\u0ccb\u0005\u0695\u034b\u0002\u0cca\u0ccc\t\u0002\u0002\u0002\u0ccb",
- "\u0cca\u0003\u0002\u0002\u0002\u0ccb\u0ccc\u0003\u0002\u0002\u0002\u0ccc",
- "\u014a\u0003\u0002\u0002\u0002\u0ccd\u0ccf\t\u0002\u0002\u0002\u0cce",
- "\u0ccd\u0003\u0002\u0002\u0002\u0cce\u0ccf\u0003\u0002\u0002\u0002\u0ccf",
- "\u0cd1\u0003\u0002\u0002\u0002\u0cd0\u0cd2\t\u0003\u0002\u0002\u0cd1",
- "\u0cd0\u0003\u0002\u0002\u0002\u0cd1\u0cd2\u0003\u0002\u0002\u0002\u0cd2",
- "\u0cd4\u0003\u0002\u0002\u0002\u0cd3\u0cd5\t\u0003\u0002\u0002\u0cd4",
- "\u0cd3\u0003\u0002\u0002\u0002\u0cd4\u0cd5\u0003\u0002\u0002\u0002\u0cd5",
- "\u0cd7\u0003\u0002\u0002\u0002\u0cd6\u0cd8\t\u0003\u0002\u0002\u0cd7",
- "\u0cd6\u0003\u0002\u0002\u0002\u0cd7\u0cd8\u0003\u0002\u0002\u0002\u0cd8",
- "\u0cda\u0003\u0002\u0002\u0002\u0cd9\u0cdb\t\u0003\u0002\u0002\u0cda",
- "\u0cd9\u0003\u0002\u0002\u0002\u0cda\u0cdb\u0003\u0002\u0002\u0002\u0cdb",
- "\u0cdc\u0003\u0002\u0002\u0002\u0cdc\u0cde\t\u0004\u0002\u0002\u0cdd",
- "\u0cdf\t\u0003\u0002\u0002\u0cde\u0cdd\u0003\u0002\u0002\u0002\u0cde",
- "\u0cdf\u0003\u0002\u0002\u0002\u0cdf\u0ce1\u0003\u0002\u0002\u0002\u0ce0",
- "\u0ce2\t\u0003\u0002\u0002\u0ce1\u0ce0\u0003\u0002\u0002\u0002\u0ce1",
- "\u0ce2\u0003\u0002\u0002\u0002\u0ce2\u0ce4\u0003\u0002\u0002\u0002\u0ce3",
- "\u0ce5\t\u0003\u0002\u0002\u0ce4\u0ce3\u0003\u0002\u0002\u0002\u0ce4",
- "\u0ce5\u0003\u0002\u0002\u0002\u0ce5\u0ce7\u0003\u0002\u0002\u0002\u0ce6",
- "\u0ce8\t\u0003\u0002\u0002\u0ce7\u0ce6\u0003\u0002\u0002\u0002\u0ce7",
- "\u0ce8\u0003\u0002\u0002\u0002\u0ce8\u0ce9\u0003\u0002\u0002\u0002\u0ce9",
- "\u0ceb\t\u0004\u0002\u0002\u0cea\u0cec\t\u0003\u0002\u0002\u0ceb\u0cea",
- "\u0003\u0002\u0002\u0002\u0ceb\u0cec\u0003\u0002\u0002\u0002\u0cec\u0cee",
- "\u0003\u0002\u0002\u0002\u0ced\u0cef\t\u0003\u0002\u0002\u0cee\u0ced",
- "\u0003\u0002\u0002\u0002\u0cee\u0cef\u0003\u0002\u0002\u0002\u0cef\u0cf1",
- "\u0003\u0002\u0002\u0002\u0cf0\u0cf2\t\u0003\u0002\u0002\u0cf1\u0cf0",
- "\u0003\u0002\u0002\u0002\u0cf1\u0cf2\u0003\u0002\u0002\u0002\u0cf2\u0cf4",
- "\u0003\u0002\u0002\u0002\u0cf3\u0cf5\t\u0003\u0002\u0002\u0cf4\u0cf3",
- "\u0003\u0002\u0002\u0002\u0cf4\u0cf5\u0003\u0002\u0002\u0002\u0cf5\u0cf6",
- "\u0003\u0002\u0002\u0002\u0cf6\u0cf8\t\u0004\u0002\u0002\u0cf7\u0cf9",
- "\t\u0003\u0002\u0002\u0cf8\u0cf7\u0003\u0002\u0002\u0002\u0cf8\u0cf9",
- "\u0003\u0002\u0002\u0002\u0cf9\u0cfb\u0003\u0002\u0002\u0002\u0cfa\u0cfc",
- "\t\u0003\u0002\u0002\u0cfb\u0cfa\u0003\u0002\u0002\u0002\u0cfb\u0cfc",
- "\u0003\u0002\u0002\u0002\u0cfc\u0cfe\u0003\u0002\u0002\u0002\u0cfd\u0cff",
- "\t\u0003\u0002\u0002\u0cfe\u0cfd\u0003\u0002\u0002\u0002\u0cfe\u0cff",
- "\u0003\u0002\u0002\u0002\u0cff\u0d01\u0003\u0002\u0002\u0002\u0d00\u0d02",
- "\t\u0003\u0002\u0002\u0d01\u0d00\u0003\u0002\u0002\u0002\u0d01\u0d02",
- "\u0003\u0002\u0002\u0002\u0d02\u0d03\u0003\u0002\u0002\u0002\u0d03\u0d05",
- "\t\u0004\u0002\u0002\u0d04\u0d06\t\u0003\u0002\u0002\u0d05\u0d04\u0003",
- "\u0002\u0002\u0002\u0d05\u0d06\u0003\u0002\u0002\u0002\u0d06\u0d08\u0003",
- "\u0002\u0002\u0002\u0d07\u0d09\t\u0003\u0002\u0002\u0d08\u0d07\u0003",
- "\u0002\u0002\u0002\u0d08\u0d09\u0003\u0002\u0002\u0002\u0d09\u0d0b\u0003",
- "\u0002\u0002\u0002\u0d0a\u0d0c\t\u0003\u0002\u0002\u0d0b\u0d0a\u0003",
- "\u0002\u0002\u0002\u0d0b\u0d0c\u0003\u0002\u0002\u0002\u0d0c\u0d0e\u0003",
- "\u0002\u0002\u0002\u0d0d\u0d0f\t\u0003\u0002\u0002\u0d0e\u0d0d\u0003",
- "\u0002\u0002\u0002\u0d0e\u0d0f\u0003\u0002\u0002\u0002\u0d0f\u0d10\u0003",
- "\u0002\u0002\u0002\u0d10\u0d12\t\u0004\u0002\u0002\u0d11\u0d13\t\u0003",
- "\u0002\u0002\u0d12\u0d11\u0003\u0002\u0002\u0002\u0d12\u0d13\u0003\u0002",
- "\u0002\u0002\u0d13\u0d15\u0003\u0002\u0002\u0002\u0d14\u0d16\t\u0003",
- "\u0002\u0002\u0d15\u0d14\u0003\u0002\u0002\u0002\u0d15\u0d16\u0003\u0002",
- "\u0002\u0002\u0d16\u0d18\u0003\u0002\u0002\u0002\u0d17\u0d19\t\u0003",
- "\u0002\u0002\u0d18\u0d17\u0003\u0002\u0002\u0002\u0d18\u0d19\u0003\u0002",
- "\u0002\u0002\u0d19\u0d1b\u0003\u0002\u0002\u0002\u0d1a\u0d1c\t\u0003",
- "\u0002\u0002\u0d1b\u0d1a\u0003\u0002\u0002\u0002\u0d1b\u0d1c\u0003\u0002",
- "\u0002\u0002\u0d1c\u0d1d\u0003\u0002\u0002\u0002\u0d1d\u0d1f\t\u0004",
- "\u0002\u0002\u0d1e\u0d20\t\u0003\u0002\u0002\u0d1f\u0d1e\u0003\u0002",
- "\u0002\u0002\u0d1f\u0d20\u0003\u0002\u0002\u0002\u0d20\u0d22\u0003\u0002",
- "\u0002\u0002\u0d21\u0d23\t\u0003\u0002\u0002\u0d22\u0d21\u0003\u0002",
- "\u0002\u0002\u0d22\u0d23\u0003\u0002\u0002\u0002\u0d23\u0d25\u0003\u0002",
- "\u0002\u0002\u0d24\u0d26\t\u0003\u0002\u0002\u0d25\u0d24\u0003\u0002",
- "\u0002\u0002\u0d25\u0d26\u0003\u0002\u0002\u0002\u0d26\u0d28\u0003\u0002",
- "\u0002\u0002\u0d27\u0d29\t\u0003\u0002\u0002\u0d28\u0d27\u0003\u0002",
- "\u0002\u0002\u0d28\u0d29\u0003\u0002\u0002\u0002\u0d29\u0d2a\u0003\u0002",
- "\u0002\u0002\u0d2a\u0d2c\t\u0004\u0002\u0002\u0d2b\u0d2d\t\u0003\u0002",
- "\u0002\u0d2c\u0d2b\u0003\u0002\u0002\u0002\u0d2c\u0d2d\u0003\u0002\u0002",
- "\u0002\u0d2d\u0d2f\u0003\u0002\u0002\u0002\u0d2e\u0d30\t\u0003\u0002",
- "\u0002\u0d2f\u0d2e\u0003\u0002\u0002\u0002\u0d2f\u0d30\u0003\u0002\u0002",
- "\u0002\u0d30\u0d32\u0003\u0002\u0002\u0002\u0d31\u0d33\t\u0003\u0002",
- "\u0002\u0d32\u0d31\u0003\u0002\u0002\u0002\u0d32\u0d33\u0003\u0002\u0002",
- "\u0002\u0d33\u0d35\u0003\u0002\u0002\u0002\u0d34\u0d36\t\u0003\u0002",
- "\u0002\u0d35\u0d34\u0003\u0002\u0002\u0002\u0d35\u0d36\u0003\u0002\u0002",
- "\u0002\u0d36\u0d38\u0003\u0002\u0002\u0002\u0d37\u0d39\t\u0002\u0002",
- "\u0002\u0d38\u0d37\u0003\u0002\u0002\u0002\u0d38\u0d39\u0003\u0002\u0002",
- "\u0002\u0d39\u014c\u0003\u0002\u0002\u0002\u0d3a\u0d3b\u0007K\u0002",
- "\u0002\u0d3b\u0d3c\u0007U\u0002\u0002\u0d3c\u014e\u0003\u0002\u0002",
- "\u0002\u0d3d\u0d3e\u0007K\u0002\u0002\u0d3e\u0d3f\u0007U\u0002\u0002",
- "\u0d3f\u0d40\u0007P\u0002\u0002\u0d40\u0d41\u0007W\u0002\u0002\u0d41",
- "\u0d42\u0007N\u0002\u0002\u0d42\u0d43\u0007N\u0002\u0002\u0d43\u0150",
- "\u0003\u0002\u0002\u0002\u0d44\u0d45\u0007L\u0002\u0002\u0d45\u0d46",
- "\u0007Q\u0002\u0002\u0d46\u0d47\u0007K\u0002\u0002\u0d47\u0d48\u0007",
- "P\u0002\u0002\u0d48\u0152\u0003\u0002\u0002\u0002\u0d49\u0d4a\u0007",
- "M\u0002\u0002\u0d4a\u0d4b\u0007G\u0002\u0002\u0d4b\u0d4c\u0007T\u0002",
- "\u0002\u0d4c\u0d4d\u0007D\u0002\u0002\u0d4d\u0d4e\u0007G\u0002\u0002",
- "\u0d4e\u0d4f\u0007T\u0002\u0002\u0d4f\u0d50\u0007Q\u0002\u0002\u0d50",
- "\u0d51\u0007U\u0002\u0002\u0d51\u0154\u0003\u0002\u0002\u0002\u0d52",
- "\u0d53\u0007M\u0002\u0002\u0d53\u0d54\u0007G\u0002\u0002\u0d54\u0d55",
- "\u0007[\u0002\u0002\u0d55\u0156\u0003\u0002\u0002\u0002\u0d56\u0d57",
- "\u0007M\u0002\u0002\u0d57\u0d58\u0007G\u0002\u0002\u0d58\u0d59\u0007",
- "[\u0002\u0002\u0d59\u0d5a\u0007a\u0002\u0002\u0d5a\u0d5b\u0007R\u0002",
- "\u0002\u0d5b\u0d5c\u0007C\u0002\u0002\u0d5c\u0d5d\u0007V\u0002\u0002",
- "\u0d5d\u0d5e\u0007J\u0002\u0002\u0d5e\u0158\u0003\u0002\u0002\u0002",
- "\u0d5f\u0d60\u0007M\u0002\u0002\u0d60\u0d61\u0007G\u0002\u0002\u0d61",
- "\u0d62\u0007[\u0002\u0002\u0d62\u0d63\u0007a\u0002\u0002\u0d63\u0d64",
- "\u0007U\u0002\u0002\u0d64\u0d65\u0007V\u0002\u0002\u0d65\u0d66\u0007",
- "Q\u0002\u0002\u0d66\u0d67\u0007T\u0002\u0002\u0d67\u0d68\u0007G\u0002",
- "\u0002\u0d68\u0d69\u0007a\u0002\u0002\u0d69\u0d6a\u0007R\u0002\u0002",
- "\u0d6a\u0d6b\u0007T\u0002\u0002\u0d6b\u0d6c\u0007Q\u0002\u0002\u0d6c",
- "\u0d6d\u0007X\u0002\u0002\u0d6d\u0d6e\u0007K\u0002\u0002\u0d6e\u0d6f",
- "\u0007F\u0002\u0002\u0d6f\u0d70\u0007G\u0002\u0002\u0d70\u0d71\u0007",
- "T\u0002\u0002\u0d71\u0d72\u0007a\u0002\u0002\u0d72\u0d73\u0007P\u0002",
- "\u0002\u0d73\u0d74\u0007C\u0002\u0002\u0d74\u0d75\u0007O\u0002\u0002",
- "\u0d75\u0d76\u0007G\u0002\u0002\u0d76\u015a\u0003\u0002\u0002\u0002",
- "\u0d77\u0d78\u0007M\u0002\u0002\u0d78\u0d79\u0007K\u0002\u0002\u0d79",
- "\u0d7a\u0007N\u0002\u0002\u0d7a\u0d7b\u0007N\u0002\u0002\u0d7b\u015c",
- "\u0003\u0002\u0002\u0002\u0d7c\u0d7d\u0007N\u0002\u0002\u0d7d\u0d7e",
- "\u0007C\u0002\u0002\u0d7e\u0d7f\u0007P\u0002\u0002\u0d7f\u0d80\u0007",
- "I\u0002\u0002\u0d80\u0d81\u0007W\u0002\u0002\u0d81\u0d82\u0007C\u0002",
- "\u0002\u0d82\u0d83\u0007I\u0002\u0002\u0d83\u0d84\u0007G\u0002\u0002",
- "\u0d84\u015e\u0003\u0002\u0002\u0002\u0d85\u0d86\u0007N\u0002\u0002",
- "\u0d86\u0d87\u0007G\u0002\u0002\u0d87\u0d88\u0007H\u0002\u0002\u0d88",
- "\u0d89\u0007V\u0002\u0002\u0d89\u0160\u0003\u0002\u0002\u0002\u0d8a",
- "\u0d8b\u0007N\u0002\u0002\u0d8b\u0d8c\u0007K\u0002\u0002\u0d8c\u0d8d",
- "\u0007D\u0002\u0002\u0d8d\u0d8e\u0007T\u0002\u0002\u0d8e\u0d8f\u0007",
- "C\u0002\u0002\u0d8f\u0d90\u0007T\u0002\u0002\u0d90\u0d91\u0007[\u0002",
- "\u0002\u0d91\u0162\u0003\u0002\u0002\u0002\u0d92\u0d93\u0007N\u0002",
- "\u0002\u0d93\u0d94\u0007K\u0002\u0002\u0d94\u0d95\u0007H\u0002\u0002",
- "\u0d95\u0d96\u0007G\u0002\u0002\u0d96\u0d97\u0007V\u0002\u0002\u0d97",
- "\u0d98\u0007K\u0002\u0002\u0d98\u0d99\u0007O\u0002\u0002\u0d99\u0d9a",
- "\u0007G\u0002\u0002\u0d9a\u0164\u0003\u0002\u0002\u0002\u0d9b\u0d9c",
- "\u0007N\u0002\u0002\u0d9c\u0d9d\u0007K\u0002\u0002\u0d9d\u0d9e\u0007",
- "M\u0002\u0002\u0d9e\u0d9f\u0007G\u0002\u0002\u0d9f\u0166\u0003\u0002",
- "\u0002\u0002\u0da0\u0da1\u0007N\u0002\u0002\u0da1\u0da2\u0007K\u0002",
- "\u0002\u0da2\u0da3\u0007P\u0002\u0002\u0da3\u0da4\u0007G\u0002\u0002",
- "\u0da4\u0da5\u0007P\u0002\u0002\u0da5\u0da6\u0007Q\u0002\u0002\u0da6",
- "\u0168\u0003\u0002\u0002\u0002\u0da7\u0da8\u0007N\u0002\u0002\u0da8",
- "\u0da9\u0007K\u0002\u0002\u0da9\u0daa\u0007P\u0002\u0002\u0daa\u0dab",
- "\u0007W\u0002\u0002\u0dab\u0dac\u0007Z\u0002\u0002\u0dac\u016a\u0003",
- "\u0002\u0002\u0002\u0dad\u0dae\u0007N\u0002\u0002\u0dae\u0daf\u0007",
- "K\u0002\u0002\u0daf\u0db0\u0007U\u0002\u0002\u0db0\u0db1\u0007V\u0002",
- "\u0002\u0db1\u0db2\u0007G\u0002\u0002\u0db2\u0db3\u0007P\u0002\u0002",
- "\u0db3\u0db4\u0007G\u0002\u0002\u0db4\u0db5\u0007T\u0002\u0002\u0db5",
- "\u0db6\u0007a\u0002\u0002\u0db6\u0db7\u0007K\u0002\u0002\u0db7\u0db8",
- "\u0007R\u0002\u0002\u0db8\u016c\u0003\u0002\u0002\u0002\u0db9\u0dba",
- "\u0007N\u0002\u0002\u0dba\u0dbb\u0007K\u0002\u0002\u0dbb\u0dbc\u0007",
- "U\u0002\u0002\u0dbc\u0dbd\u0007V\u0002\u0002\u0dbd\u0dbe\u0007G\u0002",
- "\u0002\u0dbe\u0dbf\u0007P\u0002\u0002\u0dbf\u0dc0\u0007G\u0002\u0002",
- "\u0dc0\u0dc1\u0007T\u0002\u0002\u0dc1\u0dc2\u0007a\u0002\u0002\u0dc2",
- "\u0dc3\u0007R\u0002\u0002\u0dc3\u0dc4\u0007Q\u0002\u0002\u0dc4\u0dc5",
- "\u0007T\u0002\u0002\u0dc5\u0dc6\u0007V\u0002\u0002\u0dc6\u016e\u0003",
- "\u0002\u0002\u0002\u0dc7\u0dc8\u0007N\u0002\u0002\u0dc8\u0dc9\u0007",
- "Q\u0002\u0002\u0dc9\u0dca\u0007C\u0002\u0002\u0dca\u0dcb\u0007F\u0002",
- "\u0002\u0dcb\u0170\u0003\u0002\u0002\u0002\u0dcc\u0dcd\u0007N\u0002",
- "\u0002\u0dcd\u0dce\u0007Q\u0002\u0002\u0dce\u0dcf\u0007E\u0002\u0002",
- "\u0dcf\u0dd0\u0007C\u0002\u0002\u0dd0\u0dd1\u0007N\u0002\u0002\u0dd1",
- "\u0dd2\u0007a\u0002\u0002\u0dd2\u0dd3\u0007U\u0002\u0002\u0dd3\u0dd4",
- "\u0007G\u0002\u0002\u0dd4\u0dd5\u0007T\u0002\u0002\u0dd5\u0dd6\u0007",
- "X\u0002\u0002\u0dd6\u0dd7\u0007K\u0002\u0002\u0dd7\u0dd8\u0007E\u0002",
- "\u0002\u0dd8\u0dd9\u0007G\u0002\u0002\u0dd9\u0dda\u0007a\u0002\u0002",
- "\u0dda\u0ddb\u0007P\u0002\u0002\u0ddb\u0ddc\u0007C\u0002\u0002\u0ddc",
- "\u0ddd\u0007O\u0002\u0002\u0ddd\u0dde\u0007G\u0002\u0002\u0dde\u0172",
- "\u0003\u0002\u0002\u0002\u0ddf\u0de0\u0007N\u0002\u0002\u0de0\u0de1",
- "\u0007Q\u0002\u0002\u0de1\u0de2\u0007I\u0002\u0002\u0de2\u0174\u0003",
- "\u0002\u0002\u0002\u0de3\u0de4\u0007O\u0002\u0002\u0de4\u0de5\u0007",
- "C\u0002\u0002\u0de5\u0de6\u0007V\u0002\u0002\u0de6\u0de7\u0007E\u0002",
- "\u0002\u0de7\u0de8\u0007J\u0002\u0002\u0de8\u0de9\u0007G\u0002\u0002",
- "\u0de9\u0dea\u0007F\u0002\u0002\u0dea\u0176\u0003\u0002\u0002\u0002",
- "\u0deb\u0dec\u0007O\u0002\u0002\u0dec\u0ded\u0007C\u0002\u0002\u0ded",
- "\u0dee\u0007U\u0002\u0002\u0dee\u0def\u0007V\u0002\u0002\u0def\u0df0",
- "\u0007G\u0002\u0002\u0df0\u0df1\u0007T\u0002\u0002\u0df1\u0178\u0003",
- "\u0002\u0002\u0002\u0df2\u0df3\u0007O\u0002\u0002\u0df3\u0df4\u0007",
- "C\u0002\u0002\u0df4\u0df5\u0007Z\u0002\u0002\u0df5\u0df6\u0007a\u0002",
- "\u0002\u0df6\u0df7\u0007O\u0002\u0002\u0df7\u0df8\u0007G\u0002\u0002",
- "\u0df8\u0df9\u0007O\u0002\u0002\u0df9\u0dfa\u0007Q\u0002\u0002\u0dfa",
- "\u0dfb\u0007T\u0002\u0002\u0dfb\u0dfc\u0007[\u0002\u0002\u0dfc\u017a",
- "\u0003\u0002\u0002\u0002\u0dfd\u0dfe\u0007O\u0002\u0002\u0dfe\u0dff",
- "\u0007C\u0002\u0002\u0dff\u0e00\u0007Z\u0002\u0002\u0e00\u0e01\u0007",
- "V\u0002\u0002\u0e01\u0e02\u0007T\u0002\u0002\u0e02\u0e03\u0007C\u0002",
- "\u0002\u0e03\u0e04\u0007P\u0002\u0002\u0e04\u0e05\u0007U\u0002\u0002",
- "\u0e05\u0e06\u0007H\u0002\u0002\u0e06\u0e07\u0007G\u0002\u0002\u0e07",
- "\u0e08\u0007T\u0002\u0002\u0e08\u017c\u0003\u0002\u0002\u0002\u0e09",
- "\u0e0a\u0007O\u0002\u0002\u0e0a\u0e0b\u0007C\u0002\u0002\u0e0b\u0e0c",
- "\u0007Z\u0002\u0002\u0e0c\u0e0d\u0007X\u0002\u0002\u0e0d\u0e0e\u0007",
- "C\u0002\u0002\u0e0e\u0e0f\u0007N\u0002\u0002\u0e0f\u0e10\u0007W\u0002",
- "\u0002\u0e10\u0e11\u0007G\u0002\u0002\u0e11\u017e\u0003\u0002\u0002",
- "\u0002\u0e12\u0e13\u0007O\u0002\u0002\u0e13\u0e14\u0007C\u0002\u0002",
- "\u0e14\u0e15\u0007Z\u0002\u0002\u0e15\u0e16\u0007a\u0002\u0002\u0e16",
- "\u0e17\u0007F\u0002\u0002\u0e17\u0e18\u0007K\u0002\u0002\u0e18\u0e19",
- "\u0007U\u0002\u0002\u0e19\u0e1a\u0007R\u0002\u0002\u0e1a\u0e1b\u0007",
- "C\u0002\u0002\u0e1b\u0e1c\u0007V\u0002\u0002\u0e1c\u0e1d\u0007E\u0002",
- "\u0002\u0e1d\u0e1e\u0007J\u0002\u0002\u0e1e\u0e1f\u0007a\u0002\u0002",
- "\u0e1f\u0e20\u0007N\u0002\u0002\u0e20\u0e21\u0007C\u0002\u0002\u0e21",
- "\u0e22\u0007V\u0002\u0002\u0e22\u0e23\u0007G\u0002\u0002\u0e23\u0e24",
- "\u0007P\u0002\u0002\u0e24\u0e25\u0007E\u0002\u0002\u0e25\u0e26\u0007",
- "[\u0002\u0002\u0e26\u0180\u0003\u0002\u0002\u0002\u0e27\u0e28\u0007",
- "O\u0002\u0002\u0e28\u0e29\u0007C\u0002\u0002\u0e29\u0e2a\u0007Z\u0002",
- "\u0002\u0e2a\u0e2b\u0007a\u0002\u0002\u0e2b\u0e2c\u0007G\u0002\u0002",
- "\u0e2c\u0e2d\u0007X\u0002\u0002\u0e2d\u0e2e\u0007G\u0002\u0002\u0e2e",
- "\u0e2f\u0007P\u0002\u0002\u0e2f\u0e30\u0007V\u0002\u0002\u0e30\u0e31",
- "\u0007a\u0002\u0002\u0e31\u0e32\u0007U\u0002\u0002\u0e32\u0e33\u0007",
- "K\u0002\u0002\u0e33\u0e34\u0007\\\u0002\u0002\u0e34\u0e35\u0007G\u0002",
- "\u0002\u0e35\u0182\u0003\u0002\u0002\u0002\u0e36\u0e37\u0007O\u0002",
- "\u0002\u0e37\u0e38\u0007C\u0002\u0002\u0e38\u0e39\u0007Z\u0002\u0002",
- "\u0e39\u0e3a\u0007a\u0002\u0002\u0e3a\u0e3b\u0007U\u0002\u0002\u0e3b",
- "\u0e3c\u0007K\u0002\u0002\u0e3c\u0e3d\u0007\\\u0002\u0002\u0e3d\u0e3e",
- "\u0007G\u0002\u0002\u0e3e\u0184\u0003\u0002\u0002\u0002\u0e3f\u0e40",
- "\u0007O\u0002\u0002\u0e40\u0e41\u0007C\u0002\u0002\u0e41\u0e42\u0007",
- "Z\u0002\u0002\u0e42\u0e43\u0007a\u0002\u0002\u0e43\u0e44\u0007Q\u0002",
- "\u0002\u0e44\u0e45\u0007W\u0002\u0002\u0e45\u0e46\u0007V\u0002\u0002",
- "\u0e46\u0e47\u0007U\u0002\u0002\u0e47\u0e48\u0007V\u0002\u0002\u0e48",
- "\u0e49\u0007C\u0002\u0002\u0e49\u0e4a\u0007P\u0002\u0002\u0e4a\u0e4b",
- "\u0007F\u0002\u0002\u0e4b\u0e4c\u0007K\u0002\u0002\u0e4c\u0e4d\u0007",
- "P\u0002\u0002\u0e4d\u0e4e\u0007I\u0002\u0002\u0e4e\u0e4f\u0007a\u0002",
- "\u0002\u0e4f\u0e50\u0007K\u0002\u0002\u0e50\u0e51\u0007Q\u0002\u0002",
- "\u0e51\u0e52\u0007a\u0002\u0002\u0e52\u0e53\u0007R\u0002\u0002\u0e53",
- "\u0e54\u0007G\u0002\u0002\u0e54\u0e55\u0007T\u0002\u0002\u0e55\u0e56",
- "\u0007a\u0002\u0002\u0e56\u0e57\u0007X\u0002\u0002\u0e57\u0e58\u0007",
- "Q\u0002\u0002\u0e58\u0e59\u0007N\u0002\u0002\u0e59\u0e5a\u0007W\u0002",
- "\u0002\u0e5a\u0e5b\u0007O\u0002\u0002\u0e5b\u0e5c\u0007G\u0002\u0002",
- "\u0e5c\u0186\u0003\u0002\u0002\u0002\u0e5d\u0e5e\u0007O\u0002\u0002",
- "\u0e5e\u0e5f\u0007G\u0002\u0002\u0e5f\u0e60\u0007F\u0002\u0002\u0e60",
- "\u0e61\u0007K\u0002\u0002\u0e61\u0e62\u0007C\u0002\u0002\u0e62\u0e63",
- "\u0007F\u0002\u0002\u0e63\u0e64\u0007G\u0002\u0002\u0e64\u0e65\u0007",
- "U\u0002\u0002\u0e65\u0e66\u0007E\u0002\u0002\u0e66\u0e67\u0007T\u0002",
- "\u0002\u0e67\u0e68\u0007K\u0002\u0002\u0e68\u0e69\u0007R\u0002\u0002",
- "\u0e69\u0e6a\u0007V\u0002\u0002\u0e6a\u0e6b\u0007K\u0002\u0002\u0e6b",
- "\u0e6c\u0007Q\u0002\u0002\u0e6c\u0e6d\u0007P\u0002\u0002\u0e6d\u0188",
- "\u0003\u0002\u0002\u0002\u0e6e\u0e6f\u0007O\u0002\u0002\u0e6f\u0e70",
- "\u0007G\u0002\u0002\u0e70\u0e71\u0007F\u0002\u0002\u0e71\u0e72\u0007",
- "K\u0002\u0002\u0e72\u0e73\u0007C\u0002\u0002\u0e73\u0e74\u0007P\u0002",
- "\u0002\u0e74\u0e75\u0007C\u0002\u0002\u0e75\u0e76\u0007O\u0002\u0002",
- "\u0e76\u0e77\u0007G\u0002\u0002\u0e77\u018a\u0003\u0002\u0002\u0002",
- "\u0e78\u0e79\u0007O\u0002\u0002\u0e79\u0e7a\u0007G\u0002\u0002\u0e7a",
- "\u0e7b\u0007O\u0002\u0002\u0e7b\u0e7c\u0007D\u0002\u0002\u0e7c\u0e7d",
- "\u0007G\u0002\u0002\u0e7d\u0e7e\u0007T\u0002\u0002\u0e7e\u018c\u0003",
- "\u0002\u0002\u0002\u0e7f\u0e80\u0007O\u0002\u0002\u0e80\u0e81\u0007",
- "G\u0002\u0002\u0e81\u0e82\u0007O\u0002\u0002\u0e82\u0e83\u0007Q\u0002",
- "\u0002\u0e83\u0e84\u0007T\u0002\u0002\u0e84\u0e85\u0007[\u0002\u0002",
- "\u0e85\u0e86\u0007a\u0002\u0002\u0e86\u0e87\u0007R\u0002\u0002\u0e87",
- "\u0e88\u0007C\u0002\u0002\u0e88\u0e89\u0007T\u0002\u0002\u0e89\u0e8a",
- "\u0007V\u0002\u0002\u0e8a\u0e8b\u0007K\u0002\u0002\u0e8b\u0e8c\u0007",
- "V\u0002\u0002\u0e8c\u0e8d\u0007K\u0002\u0002\u0e8d\u0e8e\u0007Q\u0002",
- "\u0002\u0e8e\u0e8f\u0007P\u0002\u0002\u0e8f\u0e90\u0007a\u0002\u0002",
- "\u0e90\u0e91\u0007O\u0002\u0002\u0e91\u0e92\u0007Q\u0002\u0002\u0e92",
- "\u0e93\u0007F\u0002\u0002\u0e93\u0e94\u0007G\u0002\u0002\u0e94\u018e",
- "\u0003\u0002\u0002\u0002\u0e95\u0e96\u0007O\u0002\u0002\u0e96\u0e97",
- "\u0007G\u0002\u0002\u0e97\u0e98\u0007T\u0002\u0002\u0e98\u0e99\u0007",
- "I\u0002\u0002\u0e99\u0e9a\u0007G\u0002\u0002\u0e9a\u0190\u0003\u0002",
- "\u0002\u0002\u0e9b\u0e9c\u0007O\u0002\u0002\u0e9c\u0e9d\u0007G\u0002",
- "\u0002\u0e9d\u0e9e\u0007U\u0002\u0002\u0e9e\u0e9f\u0007U\u0002\u0002",
- "\u0e9f\u0ea0\u0007C\u0002\u0002\u0ea0\u0ea1\u0007I\u0002\u0002\u0ea1",
- "\u0ea2\u0007G\u0002\u0002\u0ea2\u0ea3\u0007a\u0002\u0002\u0ea3\u0ea4",
- "\u0007H\u0002\u0002\u0ea4\u0ea5\u0007Q\u0002\u0002\u0ea5\u0ea6\u0007",
- "T\u0002\u0002\u0ea6\u0ea7\u0007Y\u0002\u0002\u0ea7\u0ea8\u0007C\u0002",
- "\u0002\u0ea8\u0ea9\u0007T\u0002\u0002\u0ea9\u0eaa\u0007F\u0002\u0002",
- "\u0eaa\u0eab\u0007K\u0002\u0002\u0eab\u0eac\u0007P\u0002\u0002\u0eac",
- "\u0ead\u0007I\u0002\u0002\u0ead\u0192\u0003\u0002\u0002\u0002\u0eae",
- "\u0eaf\u0007O\u0002\u0002\u0eaf\u0eb0\u0007G\u0002\u0002\u0eb0\u0eb1",
- "\u0007U\u0002\u0002\u0eb1\u0eb2\u0007U\u0002\u0002\u0eb2\u0eb3\u0007",
- "C\u0002\u0002\u0eb3\u0eb4\u0007I\u0002\u0002\u0eb4\u0eb5\u0007G\u0002",
- "\u0002\u0eb5\u0eb6\u0007a\u0002\u0002\u0eb6\u0eb7\u0007H\u0002\u0002",
- "\u0eb7\u0eb8\u0007Q\u0002\u0002\u0eb8\u0eb9\u0007T\u0002\u0002\u0eb9",
- "\u0eba\u0007Y\u0002\u0002\u0eba\u0ebb\u0007C\u0002\u0002\u0ebb\u0ebc",
- "\u0007T\u0002\u0002\u0ebc\u0ebd\u0007F\u0002\u0002\u0ebd\u0ebe\u0007",
- "a\u0002\u0002\u0ebe\u0ebf\u0007U\u0002\u0002\u0ebf\u0ec0\u0007K\u0002",
- "\u0002\u0ec0\u0ec1\u0007\\\u0002\u0002\u0ec1\u0ec2\u0007G\u0002\u0002",
- "\u0ec2\u0194\u0003\u0002\u0002\u0002\u0ec3\u0ec4\u0007O\u0002\u0002",
- "\u0ec4\u0ec5\u0007K\u0002\u0002\u0ec5\u0ec6\u0007P\u0002\u0002\u0ec6",
- "\u0ec7\u0007X\u0002\u0002\u0ec7\u0ec8\u0007C\u0002\u0002\u0ec8\u0ec9",
- "\u0007N\u0002\u0002\u0ec9\u0eca\u0007W\u0002\u0002\u0eca\u0ecb\u0007",
- "G\u0002\u0002\u0ecb\u0196\u0003\u0002\u0002\u0002\u0ecc\u0ecd\u0007",
- "O\u0002\u0002\u0ecd\u0ece\u0007K\u0002\u0002\u0ece\u0ecf\u0007T\u0002",
- "\u0002\u0ecf\u0ed0\u0007T\u0002\u0002\u0ed0\u0ed1\u0007Q\u0002\u0002",
- "\u0ed1\u0ed2\u0007T\u0002\u0002\u0ed2\u0198\u0003\u0002\u0002\u0002",
- "\u0ed3\u0ed4\u0007O\u0002\u0002\u0ed4\u0ed5\u0007W\u0002\u0002\u0ed5",
- "\u0ed6\u0007U\u0002\u0002\u0ed6\u0ed7\u0007V\u0002\u0002\u0ed7\u0ed8",
- "\u0007a\u0002\u0002\u0ed8\u0ed9\u0007E\u0002\u0002\u0ed9\u0eda\u0007",
- "J\u0002\u0002\u0eda\u0edb\u0007C\u0002\u0002\u0edb\u0edc\u0007P\u0002",
- "\u0002\u0edc\u0edd\u0007I\u0002\u0002\u0edd\u0ede\u0007G\u0002\u0002",
- "\u0ede\u019a\u0003\u0002\u0002\u0002\u0edf\u0ee0\u0007P\u0002\u0002",
- "\u0ee0\u0ee1\u0007C\u0002\u0002\u0ee1\u0ee2\u0007V\u0002\u0002\u0ee2",
- "\u0ee3\u0007K\u0002\u0002\u0ee3\u0ee4\u0007Q\u0002\u0002\u0ee4\u0ee5",
- "\u0007P\u0002\u0002\u0ee5\u0ee6\u0007C\u0002\u0002\u0ee6\u0ee7\u0007",
- "N\u0002\u0002\u0ee7\u019c\u0003\u0002\u0002\u0002\u0ee8\u0ee9\u0007",
- "P\u0002\u0002\u0ee9\u0eea\u0007G\u0002\u0002\u0eea\u0eeb\u0007I\u0002",
- "\u0002\u0eeb\u0eec\u0007Q\u0002\u0002\u0eec\u0eed\u0007V\u0002\u0002",
- "\u0eed\u0eee\u0007K\u0002\u0002\u0eee\u0eef\u0007C\u0002\u0002\u0eef",
- "\u0ef0\u0007V\u0002\u0002\u0ef0\u0ef1\u0007G\u0002\u0002\u0ef1\u019e",
- "\u0003\u0002\u0002\u0002\u0ef2\u0ef3\u0007P\u0002\u0002\u0ef3\u0ef4",
- "\u0007Q\u0002\u0002\u0ef4\u0ef5\u0007E\u0002\u0002\u0ef5\u0ef6\u0007",
- "J\u0002\u0002\u0ef6\u0ef7\u0007G\u0002\u0002\u0ef7\u0ef8\u0007E\u0002",
- "\u0002\u0ef8\u0ef9\u0007M\u0002\u0002\u0ef9\u01a0\u0003\u0002\u0002",
- "\u0002\u0efa\u0efb\u0007P\u0002\u0002\u0efb\u0efc\u0007Q\u0002\u0002",
- "\u0efc\u0efd\u0007H\u0002\u0002\u0efd\u0efe\u0007Q\u0002\u0002\u0efe",
- "\u0eff\u0007T\u0002\u0002\u0eff\u0f00\u0007O\u0002\u0002\u0f00\u0f01",
- "\u0007C\u0002\u0002\u0f01\u0f02\u0007V\u0002\u0002\u0f02\u01a2\u0003",
- "\u0002\u0002\u0002\u0f03\u0f04\u0007P\u0002\u0002\u0f04\u0f05\u0007",
- "Q\u0002\u0002\u0f05\u0f06\u0007K\u0002\u0002\u0f06\u0f07\u0007P\u0002",
- "\u0002\u0f07\u0f08\u0007K\u0002\u0002\u0f08\u0f09\u0007V\u0002\u0002",
- "\u0f09\u01a4\u0003\u0002\u0002\u0002\u0f0a\u0f0b\u0007P\u0002\u0002",
- "\u0f0b\u0f0c\u0007Q\u0002\u0002\u0f0c\u0f0d\u0007P\u0002\u0002\u0f0d",
- "\u0f0e\u0007E\u0002\u0002\u0f0e\u0f0f\u0007N\u0002\u0002\u0f0f\u0f10",
- "\u0007W\u0002\u0002\u0f10\u0f11\u0007U\u0002\u0002\u0f11\u0f12\u0007",
- "V\u0002\u0002\u0f12\u0f13\u0007G\u0002\u0002\u0f13\u0f14\u0007T\u0002",
- "\u0002\u0f14\u0f15\u0007G\u0002\u0002\u0f15\u0f16\u0007F\u0002\u0002",
- "\u0f16\u01a6\u0003\u0002\u0002\u0002\u0f17\u0f18\u0007P\u0002\u0002",
- "\u0f18\u0f19\u0007Q\u0002\u0002\u0f19\u0f1a\u0007P\u0002\u0002\u0f1a",
- "\u0f1b\u0007G\u0002\u0002\u0f1b\u01a8\u0003\u0002\u0002\u0002\u0f1c",
- "\u0f1d\u0007P\u0002\u0002\u0f1d\u0f1e\u0007Q\u0002\u0002\u0f1e\u0f1f",
- "\u0007T\u0002\u0002\u0f1f\u0f20\u0007G\u0002\u0002\u0f20\u0f21\u0007",
- "Y\u0002\u0002\u0f21\u0f22\u0007K\u0002\u0002\u0f22\u0f23\u0007P\u0002",
- "\u0002\u0f23\u0f24\u0007F\u0002\u0002\u0f24\u01aa\u0003\u0002\u0002",
- "\u0002\u0f25\u0f26\u0007P\u0002\u0002\u0f26\u0f27\u0007Q\u0002\u0002",
- "\u0f27\u0f28\u0007U\u0002\u0002\u0f28\u0f29\u0007M\u0002\u0002\u0f29",
- "\u0f2a\u0007K\u0002\u0002\u0f2a\u0f2b\u0007R\u0002\u0002\u0f2b\u01ac",
- "\u0003\u0002\u0002\u0002\u0f2c\u0f2d\u0007P\u0002\u0002\u0f2d\u0f2e",
- "\u0007Q\u0002\u0002\u0f2e\u0f2f\u0007W\u0002\u0002\u0f2f\u0f30\u0007",
- "P\u0002\u0002\u0f30\u0f31\u0007N\u0002\u0002\u0f31\u0f32\u0007Q\u0002",
- "\u0002\u0f32\u0f33\u0007C\u0002\u0002\u0f33\u0f34\u0007F\u0002\u0002",
- "\u0f34\u01ae\u0003\u0002\u0002\u0002\u0f35\u0f36\u0007P\u0002\u0002",
- "\u0f36\u0f37\u0007Q\u0002\u0002\u0f37\u0f38\u0007a\u0002\u0002\u0f38",
- "\u0f39\u0007E\u0002\u0002\u0f39\u0f3a\u0007J\u0002\u0002\u0f3a\u0f3b",
- "\u0007G\u0002\u0002\u0f3b\u0f3c\u0007E\u0002\u0002\u0f3c\u0f3d\u0007",
- "M\u0002\u0002\u0f3d\u0f3e\u0007U\u0002\u0002\u0f3e\u0f3f\u0007W\u0002",
- "\u0002\u0f3f\u0f40\u0007O\u0002\u0002\u0f40\u01b0\u0003\u0002\u0002",
- "\u0002\u0f41\u0f42\u0007P\u0002\u0002\u0f42\u0f43\u0007Q\u0002\u0002",
- "\u0f43\u0f44\u0007a\u0002\u0002\u0f44\u0f45\u0007E\u0002\u0002\u0f45",
- "\u0f46\u0007Q\u0002\u0002\u0f46\u0f47\u0007O\u0002\u0002\u0f47\u0f48",
- "\u0007R\u0002\u0002\u0f48\u0f49\u0007T\u0002\u0002\u0f49\u0f4a\u0007",
- "G\u0002\u0002\u0f4a\u0f4b\u0007U\u0002\u0002\u0f4b\u0f4c\u0007U\u0002",
- "\u0002\u0f4c\u0f4d\u0007K\u0002\u0002\u0f4d\u0f4e\u0007Q\u0002\u0002",
- "\u0f4e\u0f4f\u0007P\u0002\u0002\u0f4f\u01b2\u0003\u0002\u0002\u0002",
- "\u0f50\u0f51\u0007P\u0002\u0002\u0f51\u0f52\u0007Q\u0002\u0002\u0f52",
- "\u0f53\u0007a\u0002\u0002\u0f53\u0f54\u0007G\u0002\u0002\u0f54\u0f55",
- "\u0007X\u0002\u0002\u0f55\u0f56\u0007G\u0002\u0002\u0f56\u0f57\u0007",
- "P\u0002\u0002\u0f57\u0f58\u0007V\u0002\u0002\u0f58\u0f59\u0007a\u0002",
- "\u0002\u0f59\u0f5a\u0007N\u0002\u0002\u0f5a\u0f5b\u0007Q\u0002\u0002",
- "\u0f5b\u0f5c\u0007U\u0002\u0002\u0f5c\u0f5d\u0007U\u0002\u0002\u0f5d",
- "\u01b4\u0003\u0002\u0002\u0002\u0f5e\u0f5f\u0007P\u0002\u0002\u0f5f",
- "\u0f60\u0007Q\u0002\u0002\u0f60\u0f61\u0007V\u0002\u0002\u0f61\u01b6",
- "\u0003\u0002\u0002\u0002\u0f62\u0f63\u0007P\u0002\u0002\u0f63\u0f64",
- "\u0007Q\u0002\u0002\u0f64\u0f65\u0007V\u0002\u0002\u0f65\u0f66\u0007",
- "K\u0002\u0002\u0f66\u0f67\u0007H\u0002\u0002\u0f67\u0f68\u0007K\u0002",
- "\u0002\u0f68\u0f69\u0007E\u0002\u0002\u0f69\u0f6a\u0007C\u0002\u0002",
- "\u0f6a\u0f6b\u0007V\u0002\u0002\u0f6b\u0f6c\u0007K\u0002\u0002\u0f6c",
- "\u0f6d\u0007Q\u0002\u0002\u0f6d\u0f6e\u0007P\u0002\u0002\u0f6e\u01b8",
- "\u0003\u0002\u0002\u0002\u0f6f\u0f70\u0007P\u0002\u0002\u0f70\u0f71",
- "\u0007V\u0002\u0002\u0f71\u0f72\u0007N\u0002\u0002\u0f72\u0f73\u0007",
- "O\u0002\u0002\u0f73\u01ba\u0003\u0002\u0002\u0002\u0f74\u0f75\u0007",
- "P\u0002\u0002\u0f75\u0f76\u0007W\u0002\u0002\u0f76\u0f77\u0007N\u0002",
- "\u0002\u0f77\u0f78\u0007N\u0002\u0002\u0f78\u01bc\u0003\u0002\u0002",
- "\u0002\u0f79\u0f7a\u0007P\u0002\u0002\u0f7a\u0f7b\u0007W\u0002\u0002",
- "\u0f7b\u0f7c\u0007N\u0002\u0002\u0f7c\u0f7d\u0007N\u0002\u0002\u0f7d",
- "\u0f7e\u0007K\u0002\u0002\u0f7e\u0f7f\u0007H\u0002\u0002\u0f7f\u01be",
- "\u0003\u0002\u0002\u0002\u0f80\u0f81\u0007Q\u0002\u0002\u0f81\u0f82",
- "\u0007H\u0002\u0002\u0f82\u01c0\u0003\u0002\u0002\u0002\u0f83\u0f84",
- "\u0007Q\u0002\u0002\u0f84\u0f85\u0007H\u0002\u0002\u0f85\u0f86\u0007",
- "H\u0002\u0002\u0f86\u01c2\u0003\u0002\u0002\u0002\u0f87\u0f88\u0007",
- "Q\u0002\u0002\u0f88\u0f89\u0007H\u0002\u0002\u0f89\u0f8a\u0007H\u0002",
- "\u0002\u0f8a\u0f8b\u0007U\u0002\u0002\u0f8b\u0f8c\u0007G\u0002\u0002",
- "\u0f8c\u0f8d\u0007V\u0002\u0002\u0f8d\u0f8e\u0007U\u0002\u0002\u0f8e",
- "\u01c4\u0003\u0002\u0002\u0002\u0f8f\u0f90\u0007Q\u0002\u0002\u0f90",
- "\u0f91\u0007N\u0002\u0002\u0f91\u0f92\u0007F\u0002\u0002\u0f92\u0f93",
- "\u0007a\u0002\u0002\u0f93\u0f94\u0007R\u0002\u0002\u0f94\u0f95\u0007",
- "C\u0002\u0002\u0f95\u0f96\u0007U\u0002\u0002\u0f96\u0f97\u0007U\u0002",
- "\u0002\u0f97\u0f98\u0007Y\u0002\u0002\u0f98\u0f99\u0007Q\u0002\u0002",
- "\u0f99\u0f9a\u0007T\u0002\u0002\u0f9a\u0f9b\u0007F\u0002\u0002\u0f9b",
- "\u01c6\u0003\u0002\u0002\u0002\u0f9c\u0f9d\u0007Q\u0002\u0002\u0f9d",
- "\u0f9e\u0007P\u0002\u0002\u0f9e\u01c8\u0003\u0002\u0002\u0002\u0f9f",
- "\u0fa0\u0007Q\u0002\u0002\u0fa0\u0fa1\u0007P\u0002\u0002\u0fa1\u0fa2",
- "\u0007a\u0002\u0002\u0fa2\u0fa3\u0007H\u0002\u0002\u0fa3\u0fa4\u0007",
- "C\u0002\u0002\u0fa4\u0fa5\u0007K\u0002\u0002\u0fa5\u0fa6\u0007N\u0002",
- "\u0002\u0fa6\u0fa7\u0007W\u0002\u0002\u0fa7\u0fa8\u0007T\u0002\u0002",
- "\u0fa8\u0fa9\u0007G\u0002\u0002\u0fa9\u01ca\u0003\u0002\u0002\u0002",
- "\u0faa\u0fab\u0007Q\u0002\u0002\u0fab\u0fac\u0007R\u0002\u0002\u0fac",
- "\u0fad\u0007G\u0002\u0002\u0fad\u0fae\u0007P\u0002\u0002\u0fae\u01cc",
- "\u0003\u0002\u0002\u0002\u0faf\u0fb0\u0007Q\u0002\u0002\u0fb0\u0fb1",
- "\u0007R\u0002\u0002\u0fb1\u0fb2\u0007G\u0002\u0002\u0fb2\u0fb3\u0007",
- "P\u0002\u0002\u0fb3\u0fb4\u0007F\u0002\u0002\u0fb4\u0fb5\u0007C\u0002",
- "\u0002\u0fb5\u0fb6\u0007V\u0002\u0002\u0fb6\u0fb7\u0007C\u0002\u0002",
- "\u0fb7\u0fb8\u0007U\u0002\u0002\u0fb8\u0fb9\u0007Q\u0002\u0002\u0fb9",
- "\u0fba\u0007W\u0002\u0002\u0fba\u0fbb\u0007T\u0002\u0002\u0fbb\u0fbc",
- "\u0007E\u0002\u0002\u0fbc\u0fbd\u0007G\u0002\u0002\u0fbd\u01ce\u0003",
- "\u0002\u0002\u0002\u0fbe\u0fbf\u0007Q\u0002\u0002\u0fbf\u0fc0\u0007",
- "R\u0002\u0002\u0fc0\u0fc1\u0007G\u0002\u0002\u0fc1\u0fc2\u0007P\u0002",
- "\u0002\u0fc2\u0fc3\u0007S\u0002\u0002\u0fc3\u0fc4\u0007W\u0002\u0002",
- "\u0fc4\u0fc5\u0007G\u0002\u0002\u0fc5\u0fc6\u0007T\u0002\u0002\u0fc6",
- "\u0fc7\u0007[\u0002\u0002\u0fc7\u01d0\u0003\u0002\u0002\u0002\u0fc8",
- "\u0fc9\u0007Q\u0002\u0002\u0fc9\u0fca\u0007R\u0002\u0002\u0fca\u0fcb",
- "\u0007G\u0002\u0002\u0fcb\u0fcc\u0007P\u0002\u0002\u0fcc\u0fcd\u0007",
- "T\u0002\u0002\u0fcd\u0fce\u0007Q\u0002\u0002\u0fce\u0fcf\u0007Y\u0002",
- "\u0002\u0fcf\u0fd0\u0007U\u0002\u0002\u0fd0\u0fd1\u0007G\u0002\u0002",
- "\u0fd1\u0fd2\u0007V\u0002\u0002\u0fd2\u01d2\u0003\u0002\u0002\u0002",
- "\u0fd3\u0fd4\u0007Q\u0002\u0002\u0fd4\u0fd5\u0007R\u0002\u0002\u0fd5",
- "\u0fd6\u0007G\u0002\u0002\u0fd6\u0fd7\u0007P\u0002\u0002\u0fd7\u0fd8",
- "\u0007Z\u0002\u0002\u0fd8\u0fd9\u0007O\u0002\u0002\u0fd9\u0fda\u0007",
- "N\u0002\u0002\u0fda\u01d4\u0003\u0002\u0002\u0002\u0fdb\u0fdc\u0007",
- "Q\u0002\u0002\u0fdc\u0fdd\u0007R\u0002\u0002\u0fdd\u0fde\u0007V\u0002",
- "\u0002\u0fde\u0fdf\u0007K\u0002\u0002\u0fdf\u0fe0\u0007Q\u0002\u0002",
- "\u0fe0\u0fe1\u0007P\u0002\u0002\u0fe1\u01d6\u0003\u0002\u0002\u0002",
- "\u0fe2\u0fe3\u0007Q\u0002\u0002\u0fe3\u0fe4\u0007T\u0002\u0002\u0fe4",
- "\u01d8\u0003\u0002\u0002\u0002\u0fe5\u0fe6\u0007Q\u0002\u0002\u0fe6",
- "\u0fe7\u0007T\u0002\u0002\u0fe7\u0fe8\u0007F\u0002\u0002\u0fe8\u0fe9",
- "\u0007G\u0002\u0002\u0fe9\u0fea\u0007T\u0002\u0002\u0fea\u01da\u0003",
- "\u0002\u0002\u0002\u0feb\u0fec\u0007Q\u0002\u0002\u0fec\u0fed\u0007",
- "W\u0002\u0002\u0fed\u0fee\u0007V\u0002\u0002\u0fee\u0fef\u0007G\u0002",
- "\u0002\u0fef\u0ff0\u0007T\u0002\u0002\u0ff0\u01dc\u0003\u0002\u0002",
- "\u0002\u0ff1\u0ff2\u0007Q\u0002\u0002\u0ff2\u0ff3\u0007X\u0002\u0002",
- "\u0ff3\u0ff4\u0007G\u0002\u0002\u0ff4\u0ff5\u0007T\u0002\u0002\u0ff5",
- "\u01de\u0003\u0002\u0002\u0002\u0ff6\u0ff7\u0007R\u0002\u0002\u0ff7",
- "\u0ff8\u0007C\u0002\u0002\u0ff8\u0ff9\u0007I\u0002\u0002\u0ff9\u0ffa",
- "\u0007G\u0002\u0002\u0ffa\u01e0\u0003\u0002\u0002\u0002\u0ffb\u0ffc",
- "\u0007R\u0002\u0002\u0ffc\u0ffd\u0007C\u0002\u0002\u0ffd\u0ffe\u0007",
- "T\u0002\u0002\u0ffe\u0fff\u0007C\u0002\u0002\u0fff\u1000\u0007O\u0002",
- "\u0002\u1000\u1001\u0007a\u0002\u0002\u1001\u1002\u0007P\u0002\u0002",
- "\u1002\u1003\u0007Q\u0002\u0002\u1003\u1004\u0007F\u0002\u0002\u1004",
- "\u1005\u0007G\u0002\u0002\u1005\u01e2\u0003\u0002\u0002\u0002\u1006",
- "\u1007\u0007R\u0002\u0002\u1007\u1008\u0007C\u0002\u0002\u1008\u1009",
- "\u0007T\u0002\u0002\u1009\u100a\u0007V\u0002\u0002\u100a\u100b\u0007",
- "K\u0002\u0002\u100b\u100c\u0007C\u0002\u0002\u100c\u100d\u0007N\u0002",
- "\u0002\u100d\u01e4\u0003\u0002\u0002\u0002\u100e\u100f\u0007R\u0002",
- "\u0002\u100f\u1010\u0007C\u0002\u0002\u1010\u1011\u0007U\u0002\u0002",
- "\u1011\u1012\u0007U\u0002\u0002\u1012\u1013\u0007Y\u0002\u0002\u1013",
- "\u1014\u0007Q\u0002\u0002\u1014\u1015\u0007T\u0002\u0002\u1015\u1016",
- "\u0007F\u0002\u0002\u1016\u01e6\u0003\u0002\u0002\u0002\u1017\u1018",
- "\u0007R\u0002\u0002\u1018\u1019\u0007G\u0002\u0002\u1019\u101a\u0007",
- "T\u0002\u0002\u101a\u101b\u0007E\u0002\u0002\u101b\u101c\u0007G\u0002",
- "\u0002\u101c\u101d\u0007P\u0002\u0002\u101d\u101e\u0007V\u0002\u0002",
- "\u101e\u01e8\u0003\u0002\u0002\u0002\u101f\u1020\u0007R\u0002\u0002",
- "\u1020\u1021\u0007G\u0002\u0002\u1021\u1022\u0007T\u0002\u0002\u1022",
- "\u1023\u0007O\u0002\u0002\u1023\u1024\u0007K\u0002\u0002\u1024\u1025",
- "\u0007U\u0002\u0002\u1025\u1026\u0007U\u0002\u0002\u1026\u1027\u0007",
- "K\u0002\u0002\u1027\u1028\u0007Q\u0002\u0002\u1028\u1029\u0007P\u0002",
- "\u0002\u1029\u102a\u0007a\u0002\u0002\u102a\u102b\u0007U\u0002\u0002",
- "\u102b\u102c\u0007G\u0002\u0002\u102c\u102d\u0007V\u0002\u0002\u102d",
- "\u01ea\u0003\u0002\u0002\u0002\u102e\u102f\u0007R\u0002\u0002\u102f",
- "\u1030\u0007G\u0002\u0002\u1030\u1031\u0007T\u0002\u0002\u1031\u1032",
- "\u0007a\u0002\u0002\u1032\u1033\u0007E\u0002\u0002\u1033\u1034\u0007",
- "R\u0002\u0002\u1034\u1035\u0007W\u0002\u0002\u1035\u01ec\u0003\u0002",
- "\u0002\u0002\u1036\u1037\u0007R\u0002\u0002\u1037\u1038\u0007G\u0002",
- "\u0002\u1038\u1039\u0007T\u0002\u0002\u1039\u103a\u0007a\u0002\u0002",
- "\u103a\u103b\u0007F\u0002\u0002\u103b\u103c\u0007D\u0002\u0002\u103c",
- "\u01ee\u0003\u0002\u0002\u0002\u103d\u103e\u0007R\u0002\u0002\u103e",
- "\u103f\u0007G\u0002\u0002\u103f\u1040\u0007T\u0002\u0002\u1040\u1041",
- "\u0007a\u0002\u0002\u1041\u1042\u0007P\u0002\u0002\u1042\u1043\u0007",
- "Q\u0002\u0002\u1043\u1044\u0007F\u0002\u0002\u1044\u1045\u0007G\u0002",
- "\u0002\u1045\u01f0\u0003\u0002\u0002\u0002\u1046\u1047\u0007R\u0002",
- "\u0002\u1047\u1048\u0007K\u0002\u0002\u1048\u1049\u0007X\u0002\u0002",
- "\u1049\u104a\u0007Q\u0002\u0002\u104a\u104b\u0007V\u0002\u0002\u104b",
- "\u01f2\u0003\u0002\u0002\u0002\u104c\u104d\u0007R\u0002\u0002\u104d",
- "\u104e\u0007N\u0002\u0002\u104e\u104f\u0007C\u0002\u0002\u104f\u1050",
- "\u0007P\u0002\u0002\u1050\u01f4\u0003\u0002\u0002\u0002\u1051\u1052",
- "\u0007R\u0002\u0002\u1052\u1053\u0007N\u0002\u0002\u1053\u1054\u0007",
- "C\u0002\u0002\u1054\u1055\u0007V\u0002\u0002\u1055\u1056\u0007H\u0002",
- "\u0002\u1056\u1057\u0007Q\u0002\u0002\u1057\u1058\u0007T\u0002\u0002",
- "\u1058\u1059\u0007O\u0002\u0002\u1059\u01f6\u0003\u0002\u0002\u0002",
- "\u105a\u105b\u0007R\u0002\u0002\u105b\u105c\u0007Q\u0002\u0002\u105c",
- "\u105d\u0007N\u0002\u0002\u105d\u105e\u0007K\u0002\u0002\u105e\u105f",
- "\u0007E\u0002\u0002\u105f\u1060\u0007[\u0002\u0002\u1060\u01f8\u0003",
- "\u0002\u0002\u0002\u1061\u1062\u0007R\u0002\u0002\u1062\u1063\u0007",
- "T\u0002\u0002\u1063\u1064\u0007G\u0002\u0002\u1064\u1065\u0007E\u0002",
- "\u0002\u1065\u1066\u0007K\u0002\u0002\u1066\u1067\u0007U\u0002\u0002",
- "\u1067\u1068\u0007K\u0002\u0002\u1068\u1069\u0007Q\u0002\u0002\u1069",
- "\u106a\u0007P\u0002\u0002\u106a\u01fa\u0003\u0002\u0002\u0002\u106b",
- "\u106c\u0007R\u0002\u0002\u106c\u106d\u0007T\u0002\u0002\u106d\u106e",
- "\u0007G\u0002\u0002\u106e\u106f\u0007F\u0002\u0002\u106f\u1070\u0007",
- "K\u0002\u0002\u1070\u1071\u0007E\u0002\u0002\u1071\u1072\u0007C\u0002",
- "\u0002\u1072\u1073\u0007V\u0002\u0002\u1073\u1074\u0007G\u0002\u0002",
- "\u1074\u01fc\u0003\u0002\u0002\u0002\u1075\u1076\u0007R\u0002\u0002",
- "\u1076\u1077\u0007T\u0002\u0002\u1077\u1078\u0007K\u0002\u0002\u1078",
- "\u1079\u0007O\u0002\u0002\u1079\u107a\u0007C\u0002\u0002\u107a\u107b",
- "\u0007T\u0002\u0002\u107b\u107c\u0007[\u0002\u0002\u107c\u01fe\u0003",
- "\u0002\u0002\u0002\u107d\u107e\u0007R\u0002\u0002\u107e\u107f\u0007",
- "T\u0002\u0002\u107f\u1080\u0007K\u0002\u0002\u1080\u1081\u0007P\u0002",
- "\u0002\u1081\u1082\u0007V\u0002\u0002\u1082\u0200\u0003\u0002\u0002",
- "\u0002\u1083\u1084\u0007R\u0002\u0002\u1084\u1085\u0007T\u0002\u0002",
- "\u1085\u1086\u0007Q\u0002\u0002\u1086\u1087\u0007E\u0002\u0002\u1087",
- "\u0202\u0003\u0002\u0002\u0002\u1088\u1089\u0007R\u0002\u0002\u1089",
- "\u108a\u0007T\u0002\u0002\u108a\u108b\u0007Q\u0002\u0002\u108b\u108c",
- "\u0007E\u0002\u0002\u108c\u108d\u0007G\u0002\u0002\u108d\u108e\u0007",
- "F\u0002\u0002\u108e\u108f\u0007W\u0002\u0002\u108f\u1090\u0007T\u0002",
- "\u0002\u1090\u1091\u0007G\u0002\u0002\u1091\u0204\u0003\u0002\u0002",
- "\u0002\u1092\u1093\u0007R\u0002\u0002\u1093\u1094\u0007T\u0002\u0002",
- "\u1094\u1095\u0007Q\u0002\u0002\u1095\u1096\u0007E\u0002\u0002\u1096",
- "\u1097\u0007G\u0002\u0002\u1097\u1098\u0007U\u0002\u0002\u1098\u1099",
- "\u0007U\u0002\u0002\u1099\u0206\u0003\u0002\u0002\u0002\u109a\u109b",
- "\u0007R\u0002\u0002\u109b\u109c\u0007W\u0002\u0002\u109c\u109d\u0007",
- "D\u0002\u0002\u109d\u109e\u0007N\u0002\u0002\u109e\u109f\u0007K\u0002",
- "\u0002\u109f\u10a0\u0007E\u0002\u0002\u10a0\u0208\u0003\u0002\u0002",
- "\u0002\u10a1\u10a2\u0007R\u0002\u0002\u10a2\u10a3\u0007[\u0002\u0002",
- "\u10a3\u10a4\u0007V\u0002\u0002\u10a4\u10a5\u0007J\u0002\u0002\u10a5",
- "\u10a6\u0007Q\u0002\u0002\u10a6\u10a7\u0007P\u0002\u0002\u10a7\u020a",
- "\u0003\u0002\u0002\u0002\u10a8\u10a9\u0007T\u0002\u0002\u10a9\u020c",
- "\u0003\u0002\u0002\u0002\u10aa\u10ab\u0007T\u0002\u0002\u10ab\u10ac",
- "\u0007C\u0002\u0002\u10ac\u10ad\u0007K\u0002\u0002\u10ad\u10ae\u0007",
- "U\u0002\u0002\u10ae\u10af\u0007G\u0002\u0002\u10af\u10b0\u0007T\u0002",
- "\u0002\u10b0\u10b1\u0007T\u0002\u0002\u10b1\u10b2\u0007Q\u0002\u0002",
- "\u10b2\u10b3\u0007T\u0002\u0002\u10b3\u020e\u0003\u0002\u0002\u0002",
- "\u10b4\u10b5\u0007T\u0002\u0002\u10b5\u10b6\u0007C\u0002\u0002\u10b6",
- "\u10b7\u0007Y\u0002\u0002\u10b7\u0210\u0003\u0002\u0002\u0002\u10b8",
- "\u10b9\u0007T\u0002\u0002\u10b9\u10ba\u0007G\u0002\u0002\u10ba\u10bb",
- "\u0007C\u0002\u0002\u10bb\u10bc\u0007F\u0002\u0002\u10bc\u0212\u0003",
- "\u0002\u0002\u0002\u10bd\u10be\u0007T\u0002\u0002\u10be\u10bf\u0007",
- "G\u0002\u0002\u10bf\u10c0\u0007C\u0002\u0002\u10c0\u10c1\u0007F\u0002",
- "\u0002\u10c1\u10c2\u0007V\u0002\u0002\u10c2\u10c3\u0007G\u0002\u0002",
- "\u10c3\u10c4\u0007Z\u0002\u0002\u10c4\u10c5\u0007V\u0002\u0002\u10c5",
- "\u0214\u0003\u0002\u0002\u0002\u10c6\u10c7\u0007T\u0002\u0002\u10c7",
- "\u10c8\u0007G\u0002\u0002\u10c8\u10c9\u0007C\u0002\u0002\u10c9\u10ca",
- "\u0007F\u0002\u0002\u10ca\u10cb\u0007a\u0002\u0002\u10cb\u10cc\u0007",
- "Y\u0002\u0002\u10cc\u10cd\u0007T\u0002\u0002\u10cd\u10ce\u0007K\u0002",
- "\u0002\u10ce\u10cf\u0007V\u0002\u0002\u10cf\u10d0\u0007G\u0002\u0002",
- "\u10d0\u10d1\u0007a\u0002\u0002\u10d1\u10d2\u0007H\u0002\u0002\u10d2",
- "\u10d3\u0007K\u0002\u0002\u10d3\u10d4\u0007N\u0002\u0002\u10d4\u10d5",
- "\u0007G\u0002\u0002\u10d5\u10d6\u0007I\u0002\u0002\u10d6\u10d7\u0007",
- "T\u0002\u0002\u10d7\u10d8\u0007Q\u0002\u0002\u10d8\u10d9\u0007W\u0002",
- "\u0002\u10d9\u10da\u0007R\u0002\u0002\u10da\u10db\u0007U\u0002\u0002",
- "\u10db\u0216\u0003\u0002\u0002\u0002\u10dc\u10dd\u0007T\u0002\u0002",
- "\u10dd\u10de\u0007G\u0002\u0002\u10de\u10df\u0007E\u0002\u0002\u10df",
- "\u10e0\u0007Q\u0002\u0002\u10e0\u10e1\u0007P\u0002\u0002\u10e1\u10e2",
- "\u0007H\u0002\u0002\u10e2\u10e3\u0007K\u0002\u0002\u10e3\u10e4\u0007",
- "I\u0002\u0002\u10e4\u10e5\u0007W\u0002\u0002\u10e5\u10e6\u0007T\u0002",
- "\u0002\u10e6\u10e7\u0007G\u0002\u0002\u10e7\u0218\u0003\u0002\u0002",
- "\u0002\u10e8\u10e9\u0007T\u0002\u0002\u10e9\u10ea\u0007G\u0002\u0002",
- "\u10ea\u10eb\u0007H\u0002\u0002\u10eb\u10ec\u0007G\u0002\u0002\u10ec",
- "\u10ed\u0007T\u0002\u0002\u10ed\u10ee\u0007G\u0002\u0002\u10ee\u10ef",
- "\u0007P\u0002\u0002\u10ef\u10f0\u0007E\u0002\u0002\u10f0\u10f1\u0007",
- "G\u0002\u0002\u10f1\u10f2\u0007U\u0002\u0002\u10f2\u021a\u0003\u0002",
- "\u0002\u0002\u10f3\u10f4\u0007T\u0002\u0002\u10f4\u10f5\u0007G\u0002",
- "\u0002\u10f5\u10f6\u0007I\u0002\u0002\u10f6\u10f7\u0007G\u0002\u0002",
- "\u10f7\u10f8\u0007P\u0002\u0002\u10f8\u10f9\u0007G\u0002\u0002\u10f9",
- "\u10fa\u0007T\u0002\u0002\u10fa\u10fb\u0007C\u0002\u0002\u10fb\u10fc",
- "\u0007V\u0002\u0002\u10fc\u10fd\u0007G\u0002\u0002\u10fd\u021c\u0003",
- "\u0002\u0002\u0002\u10fe\u10ff\u0007T\u0002\u0002\u10ff\u1100\u0007",
- "G\u0002\u0002\u1100\u1101\u0007N\u0002\u0002\u1101\u1102\u0007C\u0002",
- "\u0002\u1102\u1103\u0007V\u0002\u0002\u1103\u1104\u0007G\u0002\u0002",
- "\u1104\u1105\u0007F\u0002\u0002\u1105\u1106\u0007a\u0002\u0002\u1106",
- "\u1107\u0007E\u0002\u0002\u1107\u1108\u0007Q\u0002\u0002\u1108\u1109",
- "\u0007P\u0002\u0002\u1109\u110a\u0007X\u0002\u0002\u110a\u110b\u0007",
- "G\u0002\u0002\u110b\u110c\u0007T\u0002\u0002\u110c\u110d\u0007U\u0002",
- "\u0002\u110d\u110e\u0007C\u0002\u0002\u110e\u110f\u0007V\u0002\u0002",
- "\u110f\u1110\u0007K\u0002\u0002\u1110\u1111\u0007Q\u0002\u0002\u1111",
- "\u1112\u0007P\u0002\u0002\u1112\u021e\u0003\u0002\u0002\u0002\u1113",
- "\u1114\u0007T\u0002\u0002\u1114\u1115\u0007G\u0002\u0002\u1115\u1116",
- "\u0007N\u0002\u0002\u1116\u1117\u0007C\u0002\u0002\u1117\u1118\u0007",
- "V\u0002\u0002\u1118\u1119\u0007G\u0002\u0002\u1119\u111a\u0007F\u0002",
- "\u0002\u111a\u111b\u0007a\u0002\u0002\u111b\u111c\u0007E\u0002\u0002",
- "\u111c\u111d\u0007Q\u0002\u0002\u111d\u111e\u0007P\u0002\u0002\u111e",
- "\u111f\u0007X\u0002\u0002\u111f\u1120\u0007G\u0002\u0002\u1120\u1121",
- "\u0007T\u0002\u0002\u1121\u1122\u0007U\u0002\u0002\u1122\u1123\u0007",
- "C\u0002\u0002\u1123\u1124\u0007V\u0002\u0002\u1124\u1125\u0007K\u0002",
- "\u0002\u1125\u1126\u0007Q\u0002\u0002\u1126\u1127\u0007P\u0002\u0002",
- "\u1127\u1128\u0007a\u0002\u0002\u1128\u1129\u0007I\u0002\u0002\u1129",
- "\u112a\u0007T\u0002\u0002\u112a\u112b\u0007Q\u0002\u0002\u112b\u112c",
- "\u0007W\u0002\u0002\u112c\u112d\u0007R\u0002\u0002\u112d\u0220\u0003",
- "\u0002\u0002\u0002\u112e\u112f\u0007T\u0002\u0002\u112f\u1130\u0007",
- "G\u0002\u0002\u1130\u1131\u0007R\u0002\u0002\u1131\u1132\u0007N\u0002",
- "\u0002\u1132\u1133\u0007K\u0002\u0002\u1133\u1134\u0007E\u0002\u0002",
- "\u1134\u1135\u0007C\u0002\u0002\u1135\u1136\u0007V\u0002\u0002\u1136",
- "\u1137\u0007K\u0002\u0002\u1137\u1138\u0007Q\u0002\u0002\u1138\u1139",
- "\u0007P\u0002\u0002\u1139\u0222\u0003\u0002\u0002\u0002\u113a\u113b",
- "\u0007T\u0002\u0002\u113b\u113c\u0007G\u0002\u0002\u113c\u113d\u0007",
- "S\u0002\u0002\u113d\u113e\u0007W\u0002\u0002\u113e\u113f\u0007K\u0002",
- "\u0002\u113f\u1140\u0007T\u0002\u0002\u1140\u1141\u0007G\u0002\u0002",
- "\u1141\u1142\u0007F\u0002\u0002\u1142\u0224\u0003\u0002\u0002\u0002",
- "\u1143\u1144\u0007T\u0002\u0002\u1144\u1145\u0007G\u0002\u0002\u1145",
- "\u1146\u0007U\u0002\u0002\u1146\u1147\u0007G\u0002\u0002\u1147\u1148",
- "\u0007V\u0002\u0002\u1148\u0226\u0003\u0002\u0002\u0002\u1149\u114a",
- "\u0007T\u0002\u0002\u114a\u114b\u0007G\u0002\u0002\u114b\u114c\u0007",
- "U\u0002\u0002\u114c\u114d\u0007V\u0002\u0002\u114d\u114e\u0007C\u0002",
- "\u0002\u114e\u114f\u0007T\u0002\u0002\u114f\u1150\u0007V\u0002\u0002",
- "\u1150\u0228\u0003\u0002\u0002\u0002\u1151\u1152\u0007T\u0002\u0002",
- "\u1152\u1153\u0007G\u0002\u0002\u1153\u1154\u0007U\u0002\u0002\u1154",
- "\u1155\u0007V\u0002\u0002\u1155\u1156\u0007Q\u0002\u0002\u1156\u1157",
- "\u0007T\u0002\u0002\u1157\u1158\u0007G\u0002\u0002\u1158\u022a\u0003",
- "\u0002\u0002\u0002\u1159\u115a\u0007T\u0002\u0002\u115a\u115b\u0007",
- "G\u0002\u0002\u115b\u115c\u0007U\u0002\u0002\u115c\u115d\u0007V\u0002",
- "\u0002\u115d\u115e\u0007T\u0002\u0002\u115e\u115f\u0007K\u0002\u0002",
- "\u115f\u1160\u0007E\u0002\u0002\u1160\u1161\u0007V\u0002\u0002\u1161",
- "\u022c\u0003\u0002\u0002\u0002\u1162\u1163\u0007T\u0002\u0002\u1163",
- "\u1164\u0007G\u0002\u0002\u1164\u1165\u0007U\u0002\u0002\u1165\u1166",
- "\u0007W\u0002\u0002\u1166\u1167\u0007O\u0002\u0002\u1167\u1168\u0007",
- "G\u0002\u0002\u1168\u022e\u0003\u0002\u0002\u0002\u1169\u116a\u0007",
- "T\u0002\u0002\u116a\u116b\u0007G\u0002\u0002\u116b\u116c\u0007V\u0002",
- "\u0002\u116c\u116d\u0007C\u0002\u0002\u116d\u116e\u0007K\u0002\u0002",
- "\u116e\u116f\u0007P\u0002\u0002\u116f\u1170\u0007F\u0002\u0002\u1170",
- "\u1171\u0007C\u0002\u0002\u1171\u1172\u0007[\u0002\u0002\u1172\u1173",
- "\u0007U\u0002\u0002\u1173\u0230\u0003\u0002\u0002\u0002\u1174\u1175",
- "\u0007T\u0002\u0002\u1175\u1176\u0007G\u0002\u0002\u1176\u1177\u0007",
- "V\u0002\u0002\u1177\u1178\u0007W\u0002\u0002\u1178\u1179\u0007T\u0002",
- "\u0002\u1179\u117a\u0007P\u0002\u0002\u117a\u0232\u0003\u0002\u0002",
- "\u0002\u117b\u117c\u0007T\u0002\u0002\u117c\u117d\u0007G\u0002\u0002",
- "\u117d\u117e\u0007V\u0002\u0002\u117e\u117f\u0007W\u0002\u0002\u117f",
- "\u1180\u0007T\u0002\u0002\u1180\u1181\u0007P\u0002\u0002\u1181\u1182",
- "\u0007U\u0002\u0002\u1182\u0234\u0003\u0002\u0002\u0002\u1183\u1184",
- "\u0007T\u0002\u0002\u1184\u1185\u0007G\u0002\u0002\u1185\u1186\u0007",
- "X\u0002\u0002\u1186\u1187\u0007G\u0002\u0002\u1187\u1188\u0007T\u0002",
- "\u0002\u1188\u1189\u0007V\u0002\u0002\u1189\u0236\u0003\u0002\u0002",
- "\u0002\u118a\u118b\u0007T\u0002\u0002\u118b\u118c\u0007G\u0002\u0002",
- "\u118c\u118d\u0007X\u0002\u0002\u118d\u118e\u0007Q\u0002\u0002\u118e",
- "\u118f\u0007M\u0002\u0002\u118f\u1190\u0007G\u0002\u0002\u1190\u0238",
- "\u0003\u0002\u0002\u0002\u1191\u1192\u0007T\u0002\u0002\u1192\u1193",
- "\u0007G\u0002\u0002\u1193\u1194\u0007Y\u0002\u0002\u1194\u1195\u0007",
- "K\u0002\u0002\u1195\u1196\u0007P\u0002\u0002\u1196\u1197\u0007F\u0002",
- "\u0002\u1197\u023a\u0003\u0002\u0002\u0002\u1198\u1199\u0007T\u0002",
- "\u0002\u1199\u119a\u0007K\u0002\u0002\u119a\u119b\u0007I\u0002\u0002",
- "\u119b\u119c\u0007J\u0002\u0002\u119c\u119d\u0007V\u0002\u0002\u119d",
- "\u023c\u0003\u0002\u0002\u0002\u119e\u119f\u0007T\u0002\u0002\u119f",
- "\u11a0\u0007Q\u0002\u0002\u11a0\u11a1\u0007N\u0002\u0002\u11a1\u11a2",
- "\u0007N\u0002\u0002\u11a2\u11a3\u0007D\u0002\u0002\u11a3\u11a4\u0007",
- "C\u0002\u0002\u11a4\u11a5\u0007E\u0002\u0002\u11a5\u11a6\u0007M\u0002",
- "\u0002\u11a6\u023e\u0003\u0002\u0002\u0002\u11a7\u11a8\u0007T\u0002",
- "\u0002\u11a8\u11a9\u0007Q\u0002\u0002\u11a9\u11aa\u0007N\u0002\u0002",
- "\u11aa\u11ab\u0007G\u0002\u0002\u11ab\u0240\u0003\u0002\u0002\u0002",
- "\u11ac\u11ad\u0007T\u0002\u0002\u11ad\u11ae\u0007Q\u0002\u0002\u11ae",
- "\u11af\u0007Y\u0002\u0002\u11af\u11b0\u0007E\u0002\u0002\u11b0\u11b1",
- "\u0007Q\u0002\u0002\u11b1\u11b2\u0007W\u0002\u0002\u11b2\u11b3\u0007",
- "P\u0002\u0002\u11b3\u11b4\u0007V\u0002\u0002\u11b4\u0242\u0003\u0002",
- "\u0002\u0002\u11b5\u11b6\u0007T\u0002\u0002\u11b6\u11b7\u0007Q\u0002",
- "\u0002\u11b7\u11b8\u0007Y\u0002\u0002\u11b8\u11b9\u0007I\u0002\u0002",
- "\u11b9\u11ba\u0007W\u0002\u0002\u11ba\u11bb\u0007K\u0002\u0002\u11bb",
- "\u11bc\u0007F\u0002\u0002\u11bc\u11bd\u0007E\u0002\u0002\u11bd\u11be",
- "\u0007Q\u0002\u0002\u11be\u11bf\u0007N\u0002\u0002\u11bf\u0244\u0003",
- "\u0002\u0002\u0002\u11c0\u11c1\u0007T\u0002\u0002\u11c1\u11c2\u0007",
- "U\u0002\u0002\u11c2\u11c3\u0007C\u0002\u0002\u11c3\u11c4\u0007a\u0002",
- "\u0002\u11c4\u11c5\u00077\u0002\u0002\u11c5\u11c6\u00073\u0002\u0002",
- "\u11c6\u11c7\u00074\u0002\u0002\u11c7\u0246\u0003\u0002\u0002\u0002",
- "\u11c8\u11c9\u0007T\u0002\u0002\u11c9\u11ca\u0007U\u0002\u0002\u11ca",
- "\u11cb\u0007C\u0002\u0002\u11cb\u11cc\u0007a\u0002\u0002\u11cc\u11cd",
- "\u00073\u0002\u0002\u11cd\u11ce\u00072\u0002\u0002\u11ce\u11cf\u0007",
- "4\u0002\u0002\u11cf\u11d0\u00076\u0002\u0002\u11d0\u0248\u0003\u0002",
- "\u0002\u0002\u11d1\u11d2\u0007T\u0002\u0002\u11d2\u11d3\u0007U\u0002",
- "\u0002\u11d3\u11d4\u0007C\u0002\u0002\u11d4\u11d5\u0007a\u0002\u0002",
- "\u11d5\u11d6\u00074\u0002\u0002\u11d6\u11d7\u00072\u0002\u0002\u11d7",
- "\u11d8\u00076\u0002\u0002\u11d8\u11d9\u0007:\u0002\u0002\u11d9\u024a",
- "\u0003\u0002\u0002\u0002\u11da\u11db\u0007T\u0002\u0002\u11db\u11dc",
- "\u0007U\u0002\u0002\u11dc\u11dd\u0007C\u0002\u0002\u11dd\u11de\u0007",
- "a\u0002\u0002\u11de\u11df\u00075\u0002\u0002\u11df\u11e0\u00072\u0002",
- "\u0002\u11e0\u11e1\u00079\u0002\u0002\u11e1\u11e2\u00074\u0002\u0002",
- "\u11e2\u024c\u0003\u0002\u0002\u0002\u11e3\u11e4\u0007T\u0002\u0002",
- "\u11e4\u11e5\u0007U\u0002\u0002\u11e5\u11e6\u0007C\u0002\u0002\u11e6",
- "\u11e7\u0007a\u0002\u0002\u11e7\u11e8\u00076\u0002\u0002\u11e8\u11e9",
- "\u00072\u0002\u0002\u11e9\u11ea\u0007;\u0002\u0002\u11ea\u11eb\u0007",
- "8\u0002\u0002\u11eb\u024e\u0003\u0002\u0002\u0002\u11ec\u11ed\u0007",
- "U\u0002\u0002\u11ed\u11ee\u0007C\u0002\u0002\u11ee\u11ef\u0007H\u0002",
- "\u0002\u11ef\u11f0\u0007G\u0002\u0002\u11f0\u11f1\u0007V\u0002\u0002",
- "\u11f1\u11f2\u0007[\u0002\u0002\u11f2\u0250\u0003\u0002\u0002\u0002",
- "\u11f3\u11f4\u0007T\u0002\u0002\u11f4\u11f5\u0007W\u0002\u0002\u11f5",
- "\u11f6\u0007N\u0002\u0002\u11f6\u11f7\u0007G\u0002\u0002\u11f7\u0252",
- "\u0003\u0002\u0002\u0002\u11f8\u11f9\u0007U\u0002\u0002\u11f9\u11fa",
- "\u0007C\u0002\u0002\u11fa\u11fb\u0007H\u0002\u0002\u11fb\u11fc\u0007",
- "G\u0002\u0002\u11fc\u0254\u0003\u0002\u0002\u0002\u11fd\u11fe\u0007",
- "U\u0002\u0002\u11fe\u11ff\u0007C\u0002\u0002\u11ff\u1200\u0007X\u0002",
- "\u0002\u1200\u1201\u0007G\u0002\u0002\u1201\u0256\u0003\u0002\u0002",
- "\u0002\u1202\u1203\u0007U\u0002\u0002\u1203\u1204\u0007E\u0002\u0002",
- "\u1204\u1205\u0007J\u0002\u0002\u1205\u1206\u0007G\u0002\u0002\u1206",
- "\u1207\u0007F\u0002\u0002\u1207\u1208\u0007W\u0002\u0002\u1208\u1209",
- "\u0007N\u0002\u0002\u1209\u120a\u0007G\u0002\u0002\u120a\u120b\u0007",
- "T\u0002\u0002\u120b\u0258\u0003\u0002\u0002\u0002\u120c\u120d\u0007",
- "U\u0002\u0002\u120d\u120e\u0007E\u0002\u0002\u120e\u120f\u0007J\u0002",
- "\u0002\u120f\u1210\u0007G\u0002\u0002\u1210\u1211\u0007O\u0002\u0002",
- "\u1211\u1212\u0007C\u0002\u0002\u1212\u025a\u0003\u0002\u0002\u0002",
- "\u1213\u1214\u0007U\u0002\u0002\u1214\u1215\u0007E\u0002\u0002\u1215",
- "\u1216\u0007J\u0002\u0002\u1216\u1217\u0007G\u0002\u0002\u1217\u1218",
- "\u0007O\u0002\u0002\u1218\u1219\u0007G\u0002\u0002\u1219\u025c\u0003",
- "\u0002\u0002\u0002\u121a\u121b\u0007U\u0002\u0002\u121b\u121c\u0007",
- "G\u0002\u0002\u121c\u121d\u0007E\u0002\u0002\u121d\u121e\u0007W\u0002",
- "\u0002\u121e\u121f\u0007T\u0002\u0002\u121f\u1220\u0007K\u0002\u0002",
- "\u1220\u1221\u0007V\u0002\u0002\u1221\u1222\u0007[\u0002\u0002\u1222",
- "\u1223\u0007C\u0002\u0002\u1223\u1224\u0007W\u0002\u0002\u1224\u1225",
- "\u0007F\u0002\u0002\u1225\u1226\u0007K\u0002\u0002\u1226\u1227\u0007",
- "V\u0002\u0002\u1227\u025e\u0003\u0002\u0002\u0002\u1228\u1229\u0007",
- "U\u0002\u0002\u1229\u122a\u0007G\u0002\u0002\u122a\u122b\u0007N\u0002",
- "\u0002\u122b\u122c\u0007G\u0002\u0002\u122c\u122d\u0007E\u0002\u0002",
- "\u122d\u122e\u0007V\u0002\u0002\u122e\u0260\u0003\u0002\u0002\u0002",
- "\u122f\u1230\u0007U\u0002\u0002\u1230\u1231\u0007G\u0002\u0002\u1231",
- "\u1232\u0007O\u0002\u0002\u1232\u1233\u0007C\u0002\u0002\u1233\u1234",
- "\u0007P\u0002\u0002\u1234\u1235\u0007V\u0002\u0002\u1235\u1236\u0007",
- "K\u0002\u0002\u1236\u1237\u0007E\u0002\u0002\u1237\u1238\u0007M\u0002",
- "\u0002\u1238\u1239\u0007G\u0002\u0002\u1239\u123a\u0007[\u0002\u0002",
- "\u123a\u123b\u0007R\u0002\u0002\u123b\u123c\u0007J\u0002\u0002\u123c",
- "\u123d\u0007T\u0002\u0002\u123d\u123e\u0007C\u0002\u0002\u123e\u123f",
- "\u0007U\u0002\u0002\u123f\u1240\u0007G\u0002\u0002\u1240\u1241\u0007",
- "V\u0002\u0002\u1241\u1242\u0007C\u0002\u0002\u1242\u1243\u0007D\u0002",
- "\u0002\u1243\u1244\u0007N\u0002\u0002\u1244\u1245\u0007G\u0002\u0002",
- "\u1245\u0262\u0003\u0002\u0002\u0002\u1246\u1247\u0007U\u0002\u0002",
- "\u1247\u1248\u0007G\u0002\u0002\u1248\u1249\u0007O\u0002\u0002\u1249",
- "\u124a\u0007C\u0002\u0002\u124a\u124b\u0007P\u0002\u0002\u124b\u124c",
- "\u0007V\u0002\u0002\u124c\u124d\u0007K\u0002\u0002\u124d\u124e\u0007",
- "E\u0002\u0002\u124e\u124f\u0007U\u0002\u0002\u124f\u1250\u0007K\u0002",
- "\u0002\u1250\u1251\u0007O\u0002\u0002\u1251\u1252\u0007K\u0002\u0002",
- "\u1252\u1253\u0007N\u0002\u0002\u1253\u1254\u0007C\u0002\u0002\u1254",
- "\u1255\u0007T\u0002\u0002\u1255\u1256\u0007K\u0002\u0002\u1256\u1257",
- "\u0007V\u0002\u0002\u1257\u1258\u0007[\u0002\u0002\u1258\u1259\u0007",
- "F\u0002\u0002\u1259\u125a\u0007G\u0002\u0002\u125a\u125b\u0007V\u0002",
- "\u0002\u125b\u125c\u0007C\u0002\u0002\u125c\u125d\u0007K\u0002\u0002",
- "\u125d\u125e\u0007N\u0002\u0002\u125e\u125f\u0007U\u0002\u0002\u125f",
- "\u1260\u0007V\u0002\u0002\u1260\u1261\u0007C\u0002\u0002\u1261\u1262",
- "\u0007D\u0002\u0002\u1262\u1263\u0007N\u0002\u0002\u1263\u1264\u0007",
- "G\u0002\u0002\u1264\u0264\u0003\u0002\u0002\u0002\u1265\u1266\u0007",
- "U\u0002\u0002\u1266\u1267\u0007G\u0002\u0002\u1267\u1268\u0007O\u0002",
- "\u0002\u1268\u1269\u0007C\u0002\u0002\u1269\u126a\u0007P\u0002\u0002",
- "\u126a\u126b\u0007V\u0002\u0002\u126b\u126c\u0007K\u0002\u0002\u126c",
- "\u126d\u0007E\u0002\u0002\u126d\u126e\u0007U\u0002\u0002\u126e\u126f",
- "\u0007K\u0002\u0002\u126f\u1270\u0007O\u0002\u0002\u1270\u1271\u0007",
- "K\u0002\u0002\u1271\u1272\u0007N\u0002\u0002\u1272\u1273\u0007C\u0002",
- "\u0002\u1273\u1274\u0007T\u0002\u0002\u1274\u1275\u0007K\u0002\u0002",
- "\u1275\u1276\u0007V\u0002\u0002\u1276\u1277\u0007[\u0002\u0002\u1277",
- "\u1278\u0007V\u0002\u0002\u1278\u1279\u0007C\u0002\u0002\u1279\u127a",
- "\u0007D\u0002\u0002\u127a\u127b\u0007N\u0002\u0002\u127b\u127c\u0007",
- "G\u0002\u0002\u127c\u0266\u0003\u0002\u0002\u0002\u127d\u127e\u0007",
- "U\u0002\u0002\u127e\u127f\u0007G\u0002\u0002\u127f\u1280\u0007T\u0002",
- "\u0002\u1280\u1281\u0007X\u0002\u0002\u1281\u1282\u0007G\u0002\u0002",
- "\u1282\u1283\u0007T\u0002\u0002\u1283\u0268\u0003\u0002\u0002\u0002",
- "\u1284\u1285\u0007U\u0002\u0002\u1285\u1286\u0007G\u0002\u0002\u1286",
- "\u1287\u0007T\u0002\u0002\u1287\u1288\u0007X\u0002\u0002\u1288\u1289",
- "\u0007K\u0002\u0002\u1289\u128a\u0007E\u0002\u0002\u128a\u128b\u0007",
- "G\u0002\u0002\u128b\u026a\u0003\u0002\u0002\u0002\u128c\u128d\u0007",
- "U\u0002\u0002\u128d\u128e\u0007G\u0002\u0002\u128e\u128f\u0007T\u0002",
- "\u0002\u128f\u1290\u0007X\u0002\u0002\u1290\u1291\u0007K\u0002\u0002",
- "\u1291\u1292\u0007E\u0002\u0002\u1292\u1293\u0007G\u0002\u0002\u1293",
- "\u1294\u0007a\u0002\u0002\u1294\u1295\u0007D\u0002\u0002\u1295\u1296",
- "\u0007T\u0002\u0002\u1296\u1297\u0007Q\u0002\u0002\u1297\u1298\u0007",
- "M\u0002\u0002\u1298\u1299\u0007G\u0002\u0002\u1299\u129a\u0007T\u0002",
- "\u0002\u129a\u026c\u0003\u0002\u0002\u0002\u129b\u129c\u0007U\u0002",
- "\u0002\u129c\u129d\u0007G\u0002\u0002\u129d\u129e\u0007T\u0002\u0002",
- "\u129e\u129f\u0007X\u0002\u0002\u129f\u12a0\u0007K\u0002\u0002\u12a0",
- "\u12a1\u0007E\u0002\u0002\u12a1\u12a2\u0007G\u0002\u0002\u12a2\u12a3",
- "\u0007a\u0002\u0002\u12a3\u12a4\u0007P\u0002\u0002\u12a4\u12a5\u0007",
- "C\u0002\u0002\u12a5\u12a6\u0007O\u0002\u0002\u12a6\u12a7\u0007G\u0002",
- "\u0002\u12a7\u026e\u0003\u0002\u0002\u0002\u12a8\u12a9\u0007U\u0002",
- "\u0002\u12a9\u12aa\u0007G\u0002\u0002\u12aa\u12ab\u0007U\u0002\u0002",
- "\u12ab\u12ac\u0007U\u0002\u0002\u12ac\u12ad\u0007K\u0002\u0002\u12ad",
- "\u12ae\u0007Q\u0002\u0002\u12ae\u12af\u0007P\u0002\u0002\u12af\u0270",
- "\u0003\u0002\u0002\u0002\u12b0\u12b1\u0007U\u0002\u0002\u12b1\u12b2",
- "\u0007G\u0002\u0002\u12b2\u12b3\u0007U\u0002\u0002\u12b3\u12b4\u0007",
- "U\u0002\u0002\u12b4\u12b5\u0007K\u0002\u0002\u12b5\u12b6\u0007Q\u0002",
- "\u0002\u12b6\u12b7\u0007P\u0002\u0002\u12b7\u12b8\u0007a\u0002\u0002",
- "\u12b8\u12b9\u0007W\u0002\u0002\u12b9\u12ba\u0007U\u0002\u0002\u12ba",
- "\u12bb\u0007G\u0002\u0002\u12bb\u12bc\u0007T\u0002\u0002\u12bc\u0272",
- "\u0003\u0002\u0002\u0002\u12bd\u12be\u0007U\u0002\u0002\u12be\u12bf",
- "\u0007G\u0002\u0002\u12bf\u12c0\u0007V\u0002\u0002\u12c0\u0274\u0003",
- "\u0002\u0002\u0002\u12c1\u12c2\u0007U\u0002\u0002\u12c2\u12c3\u0007",
- "G\u0002\u0002\u12c3\u12c4\u0007V\u0002\u0002\u12c4\u12c5\u0007W\u0002",
- "\u0002\u12c5\u12c6\u0007U\u0002\u0002\u12c6\u12c7\u0007G\u0002\u0002",
- "\u12c7\u12c8\u0007T\u0002\u0002\u12c8\u0276\u0003\u0002\u0002\u0002",
- "\u12c9\u12ca\u0007U\u0002\u0002\u12ca\u12cb\u0007J\u0002\u0002\u12cb",
- "\u12cc\u0007W\u0002\u0002\u12cc\u12cd\u0007V\u0002\u0002\u12cd\u12ce",
- "\u0007F\u0002\u0002\u12ce\u12cf\u0007Q\u0002\u0002\u12cf\u12d0\u0007",
- "Y\u0002\u0002\u12d0\u12d1\u0007P\u0002\u0002\u12d1\u0278\u0003\u0002",
- "\u0002\u0002\u12d2\u12d3\u0007U\u0002\u0002\u12d3\u12d4\u0007K\u0002",
- "\u0002\u12d4\u12d5\u0007F\u0002\u0002\u12d5\u027a\u0003\u0002\u0002",
- "\u0002\u12d6\u12d7\u0007U\u0002\u0002\u12d7\u12d8\u0007M\u0002\u0002",
- "\u12d8\u12d9\u0007K\u0002\u0002\u12d9\u12da\u0007R\u0002\u0002\u12da",
- "\u027c\u0003\u0002\u0002\u0002\u12db\u12dc\u0007U\u0002\u0002\u12dc",
- "\u12dd\u0007Q\u0002\u0002\u12dd\u12de\u0007H\u0002\u0002\u12de\u12df",
- "\u0007V\u0002\u0002\u12df\u12e0\u0007P\u0002\u0002\u12e0\u12e1\u0007",
- "W\u0002\u0002\u12e1\u12e2\u0007O\u0002\u0002\u12e2\u12e3\u0007C\u0002",
- "\u0002\u12e3\u027e\u0003\u0002\u0002\u0002\u12e4\u12e5\u0007U\u0002",
- "\u0002\u12e5\u12e6\u0007Q\u0002\u0002\u12e6\u12e7\u0007O\u0002\u0002",
- "\u12e7\u12e8\u0007G\u0002\u0002\u12e8\u0280\u0003\u0002\u0002\u0002",
- "\u12e9\u12ea\u0007U\u0002\u0002\u12ea\u12eb\u0007Q\u0002\u0002\u12eb",
- "\u12ec\u0007W\u0002\u0002\u12ec\u12ed\u0007T\u0002\u0002\u12ed\u12ee",
- "\u0007E\u0002\u0002\u12ee\u12ef\u0007G\u0002\u0002\u12ef\u0282\u0003",
- "\u0002\u0002\u0002\u12f0\u12f1\u0007U\u0002\u0002\u12f1\u12f2\u0007",
- "R\u0002\u0002\u12f2\u12f3\u0007G\u0002\u0002\u12f3\u12f4\u0007E\u0002",
- "\u0002\u12f4\u12f5\u0007K\u0002\u0002\u12f5\u12f6\u0007H\u0002\u0002",
- "\u12f6\u12f7\u0007K\u0002\u0002\u12f7\u12f8\u0007E\u0002\u0002\u12f8",
- "\u12f9\u0007C\u0002\u0002\u12f9\u12fa\u0007V\u0002\u0002\u12fa\u12fb",
- "\u0007K\u0002\u0002\u12fb\u12fc\u0007Q\u0002\u0002\u12fc\u12fd\u0007",
- "P\u0002\u0002\u12fd\u0284\u0003\u0002\u0002\u0002\u12fe\u12ff\u0007",
- "U\u0002\u0002\u12ff\u1300\u0007R\u0002\u0002\u1300\u1301\u0007N\u0002",
- "\u0002\u1301\u1302\u0007K\u0002\u0002\u1302\u1303\u0007V\u0002\u0002",
- "\u1303\u0286\u0003\u0002\u0002\u0002\u1304\u1305\u0007U\u0002\u0002",
- "\u1305\u1306\u0007S\u0002\u0002\u1306\u1307\u0007N\u0002\u0002\u1307",
- "\u1308\u0007F\u0002\u0002\u1308\u1309\u0007W\u0002\u0002\u1309\u130a",
- "\u0007O\u0002\u0002\u130a\u130b\u0007R\u0002\u0002\u130b\u130c\u0007",
- "G\u0002\u0002\u130c\u130d\u0007T\u0002\u0002\u130d\u130e\u0007H\u0002",
- "\u0002\u130e\u130f\u0007N\u0002\u0002\u130f\u1310\u0007C\u0002\u0002",
- "\u1310\u1311\u0007I\u0002\u0002\u1311\u1312\u0007U\u0002\u0002\u1312",
- "\u0288\u0003\u0002\u0002\u0002\u1313\u1314\u0007U\u0002\u0002\u1314",
- "\u1315\u0007S\u0002\u0002\u1315\u1316\u0007N\u0002\u0002\u1316\u1317",
- "\u0007F\u0002\u0002\u1317\u1318\u0007W\u0002\u0002\u1318\u1319\u0007",
- "O\u0002\u0002\u1319\u131a\u0007R\u0002\u0002\u131a\u131b\u0007G\u0002",
- "\u0002\u131b\u131c\u0007T\u0002\u0002\u131c\u131d\u0007R\u0002\u0002",
- "\u131d\u131e\u0007C\u0002\u0002\u131e\u131f\u0007V\u0002\u0002\u131f",
- "\u1320\u0007J\u0002\u0002\u1320\u028a\u0003\u0002\u0002\u0002\u1321",
- "\u1322\u0007U\u0002\u0002\u1322\u1323\u0007S\u0002\u0002\u1323\u1324",
- "\u0007N\u0002\u0002\u1324\u1325\u0007F\u0002\u0002\u1325\u1326\u0007",
- "W\u0002\u0002\u1326\u1327\u0007O\u0002\u0002\u1327\u1328\u0007R\u0002",
- "\u0002\u1328\u1329\u0007G\u0002\u0002\u1329\u132a\u0007T\u0002\u0002",
- "\u132a\u132b\u0007V\u0002\u0002\u132b\u132c\u0007K\u0002\u0002\u132c",
- "\u132d\u0007O\u0002\u0002\u132d\u132e\u0007G\u0002\u0002\u132e\u132f",
- "\u0007Q\u0002\u0002\u132f\u1330\u0007W\u0002\u0002\u1330\u1331\u0007",
- "V\u0002\u0002\u1331\u1332\u0007U\u0002\u0002\u1332\u028c\u0003\u0002",
- "\u0002\u0002\u1333\u1334\u0007U\u0002\u0002\u1334\u1335\u0007V\u0002",
- "\u0002\u1335\u1336\u0007C\u0002\u0002\u1336\u1337\u0007V\u0002\u0002",
- "\u1337\u1338\u0007K\u0002\u0002\u1338\u1339\u0007U\u0002\u0002\u1339",
- "\u133a\u0007V\u0002\u0002\u133a\u133b\u0007K\u0002\u0002\u133b\u133c",
- "\u0007E\u0002\u0002\u133c\u133d\u0007U\u0002\u0002\u133d\u028e\u0003",
- "\u0002\u0002\u0002\u133e\u133f\u0007U\u0002\u0002\u133f\u1340\u0007",
- "V\u0002\u0002\u1340\u1341\u0007C\u0002\u0002\u1341\u1342\u0007V\u0002",
- "\u0002\u1342\u1343\u0007G\u0002\u0002\u1343\u0290\u0003\u0002\u0002",
- "\u0002\u1344\u1345\u0007U\u0002\u0002\u1345\u1346\u0007V\u0002\u0002",
- "\u1346\u1347\u0007C\u0002\u0002\u1347\u1348\u0007V\u0002\u0002\u1348",
- "\u1349\u0007U\u0002\u0002\u1349\u0292\u0003\u0002\u0002\u0002\u134a",
- "\u134b\u0007U\u0002\u0002\u134b\u134c\u0007V\u0002\u0002\u134c\u134d",
- "\u0007C\u0002\u0002\u134d\u134e\u0007T\u0002\u0002\u134e\u134f\u0007",
- "V\u0002\u0002\u134f\u0294\u0003\u0002\u0002\u0002\u1350\u1351\u0007",
- "U\u0002\u0002\u1351\u1352\u0007V\u0002\u0002\u1352\u1353\u0007C\u0002",
- "\u0002\u1353\u1354\u0007T\u0002\u0002\u1354\u1355\u0007V\u0002\u0002",
- "\u1355\u1356\u0007G\u0002\u0002\u1356\u1357\u0007F\u0002\u0002\u1357",
- "\u0296\u0003\u0002\u0002\u0002\u1358\u1359\u0007U\u0002\u0002\u1359",
- "\u135a\u0007V\u0002\u0002\u135a\u135b\u0007C\u0002\u0002\u135b\u135c",
- "\u0007T\u0002\u0002\u135c\u135d\u0007V\u0002\u0002\u135d\u135e\u0007",
- "W\u0002\u0002\u135e\u135f\u0007R\u0002\u0002\u135f\u1360\u0007a\u0002",
- "\u0002\u1360\u1361\u0007U\u0002\u0002\u1361\u1362\u0007V\u0002\u0002",
- "\u1362\u1363\u0007C\u0002\u0002\u1363\u1364\u0007V\u0002\u0002\u1364",
- "\u1365\u0007G\u0002\u0002\u1365\u0298\u0003\u0002\u0002\u0002\u1366",
- "\u1367\u0007U\u0002\u0002\u1367\u1368\u0007V\u0002\u0002\u1368\u1369",
- "\u0007Q\u0002\u0002\u1369\u136a\u0007R\u0002\u0002\u136a\u029a\u0003",
- "\u0002\u0002\u0002\u136b\u136c\u0007U\u0002\u0002\u136c\u136d\u0007",
- "V\u0002\u0002\u136d\u136e\u0007Q\u0002\u0002\u136e\u136f\u0007R\u0002",
- "\u0002\u136f\u1370\u0007R\u0002\u0002\u1370\u1371\u0007G\u0002\u0002",
- "\u1371\u1372\u0007F\u0002\u0002\u1372\u029c\u0003\u0002\u0002\u0002",
- "\u1373\u1374\u0007U\u0002\u0002\u1374\u1375\u0007V\u0002\u0002\u1375",
- "\u1376\u0007Q\u0002\u0002\u1376\u1377\u0007R\u0002\u0002\u1377\u1378",
- "\u0007a\u0002\u0002\u1378\u1379\u0007Q\u0002\u0002\u1379\u137a\u0007",
- "P\u0002\u0002\u137a\u137b\u0007a\u0002\u0002\u137b\u137c\u0007G\u0002",
- "\u0002\u137c\u137d\u0007T\u0002\u0002\u137d\u137e\u0007T\u0002\u0002",
- "\u137e\u137f\u0007Q\u0002\u0002\u137f\u1380\u0007T\u0002\u0002\u1380",
- "\u029e\u0003\u0002\u0002\u0002\u1381\u1382\u0007U\u0002\u0002\u1382",
- "\u1383\u0007W\u0002\u0002\u1383\u1384\u0007R\u0002\u0002\u1384\u1385",
- "\u0007R\u0002\u0002\u1385\u1386\u0007Q\u0002\u0002\u1386\u1387\u0007",
- "T\u0002\u0002\u1387\u1388\u0007V\u0002\u0002\u1388\u1389\u0007G\u0002",
- "\u0002\u1389\u138a\u0007F\u0002\u0002\u138a\u02a0\u0003\u0002\u0002",
- "\u0002\u138b\u138c\u0007U\u0002\u0002\u138c\u138d\u0007[\u0002\u0002",
- "\u138d\u138e\u0007U\u0002\u0002\u138e\u138f\u0007V\u0002\u0002\u138f",
- "\u1390\u0007G\u0002\u0002\u1390\u1391\u0007O\u0002\u0002\u1391\u1392",
- "\u0007a\u0002\u0002\u1392\u1393\u0007W\u0002\u0002\u1393\u1394\u0007",
- "U\u0002\u0002\u1394\u1395\u0007G\u0002\u0002\u1395\u1396\u0007T\u0002",
- "\u0002\u1396\u02a2\u0003\u0002\u0002\u0002\u1397\u1398\u0007V\u0002",
- "\u0002\u1398\u1399\u0007C\u0002\u0002\u1399\u139a\u0007D\u0002\u0002",
- "\u139a\u139b\u0007N\u0002\u0002\u139b\u139c\u0007G\u0002\u0002\u139c",
- "\u02a4\u0003\u0002\u0002\u0002\u139d\u139e\u0007V\u0002\u0002\u139e",
- "\u139f\u0007C\u0002\u0002\u139f\u13a0\u0007D\u0002\u0002\u13a0\u13a1",
- "\u0007N\u0002\u0002\u13a1\u13a2\u0007G\u0002\u0002\u13a2\u13a3\u0007",
- "U\u0002\u0002\u13a3\u13a4\u0007C\u0002\u0002\u13a4\u13a5\u0007O\u0002",
- "\u0002\u13a5\u13a6\u0007R\u0002\u0002\u13a6\u13a7\u0007N\u0002\u0002",
- "\u13a7\u13a8\u0007G\u0002\u0002\u13a8\u02a6\u0003\u0002\u0002\u0002",
- "\u13a9\u13aa\u0007V\u0002\u0002\u13aa\u13ab\u0007C\u0002\u0002\u13ab",
- "\u13ac\u0007R\u0002\u0002\u13ac\u13ad\u0007G\u0002\u0002\u13ad\u02a8",
- "\u0003\u0002\u0002\u0002\u13ae\u13af\u0007V\u0002\u0002\u13af\u13b0",
- "\u0007C\u0002\u0002\u13b0\u13b1\u0007T\u0002\u0002\u13b1\u13b2\u0007",
- "I\u0002\u0002\u13b2\u13b3\u0007G\u0002\u0002\u13b3\u13b4\u0007V\u0002",
- "\u0002\u13b4\u02aa\u0003\u0002\u0002\u0002\u13b5\u13b6\u0007V\u0002",
- "\u0002\u13b6\u13b7\u0007E\u0002\u0002\u13b7\u13b8\u0007R\u0002\u0002",
- "\u13b8\u02ac\u0003\u0002\u0002\u0002\u13b9\u13ba\u0007V\u0002\u0002",
- "\u13ba\u13bb\u0007G\u0002\u0002\u13bb\u13bc\u0007Z\u0002\u0002\u13bc",
- "\u13bd\u0007V\u0002\u0002\u13bd\u13be\u0007U\u0002\u0002\u13be\u13bf",
- "\u0007K\u0002\u0002\u13bf\u13c0\u0007\\\u0002\u0002\u13c0\u13c1\u0007",
- "G\u0002\u0002\u13c1\u02ae\u0003\u0002\u0002\u0002\u13c2\u13c3\u0007",
- "V\u0002\u0002\u13c3\u13c4\u0007J\u0002\u0002\u13c4\u13c5\u0007G\u0002",
- "\u0002\u13c5\u13c6\u0007P\u0002\u0002\u13c6\u02b0\u0003\u0002\u0002",
- "\u0002\u13c7\u13c8\u0007V\u0002\u0002\u13c8\u13c9\u0007Q\u0002\u0002",
- "\u13c9\u02b2\u0003\u0002\u0002\u0002\u13ca\u13cb\u0007V\u0002\u0002",
- "\u13cb\u13cc\u0007Q\u0002\u0002\u13cc\u13cd\u0007R\u0002\u0002\u13cd",
- "\u02b4\u0003\u0002\u0002\u0002\u13ce\u13cf\u0007V\u0002\u0002\u13cf",
- "\u13d0\u0007T\u0002\u0002\u13d0\u13d1\u0007C\u0002\u0002\u13d1\u13d2",
- "\u0007E\u0002\u0002\u13d2\u13d3\u0007M\u0002\u0002\u13d3\u13d4\u0007",
- "a\u0002\u0002\u13d4\u13d5\u0007E\u0002\u0002\u13d5\u13d6\u0007C\u0002",
- "\u0002\u13d6\u13d7\u0007W\u0002\u0002\u13d7\u13d8\u0007U\u0002\u0002",
- "\u13d8\u13d9\u0007C\u0002\u0002\u13d9\u13da\u0007N\u0002\u0002\u13da",
- "\u13db\u0007K\u0002\u0002\u13db\u13dc\u0007V\u0002\u0002\u13dc\u13dd",
- "\u0007[\u0002\u0002\u13dd\u02b6\u0003\u0002\u0002\u0002\u13de\u13df",
- "\u0007V\u0002\u0002\u13df\u13e0\u0007T\u0002\u0002\u13e0\u13e1\u0007",
- "C\u0002\u0002\u13e1\u13e2\u0007P\u0002\u0002\u13e2\u02b8\u0003\u0002",
- "\u0002\u0002\u13e3\u13e4\u0007V\u0002\u0002\u13e4\u13e5\u0007T\u0002",
- "\u0002\u13e5\u13e6\u0007C\u0002\u0002\u13e6\u13e7\u0007P\u0002\u0002",
- "\u13e7\u13e8\u0007U\u0002\u0002\u13e8\u13e9\u0007C\u0002\u0002\u13e9",
- "\u13ea\u0007E\u0002\u0002\u13ea\u13eb\u0007V\u0002\u0002\u13eb\u13ec",
- "\u0007K\u0002\u0002\u13ec\u13ed\u0007Q\u0002\u0002\u13ed\u13ee\u0007",
- "P\u0002\u0002\u13ee\u02ba\u0003\u0002\u0002\u0002\u13ef\u13f0\u0007",
- "V\u0002\u0002\u13f0\u13f1\u0007T\u0002\u0002\u13f1\u13f2\u0007C\u0002",
- "\u0002\u13f2\u13f3\u0007P\u0002\u0002\u13f3\u13f4\u0007U\u0002\u0002",
- "\u13f4\u13f5\u0007H\u0002\u0002\u13f5\u13f6\u0007G\u0002\u0002\u13f6",
- "\u13f7\u0007T\u0002\u0002\u13f7\u02bc\u0003\u0002\u0002\u0002\u13f8",
- "\u13f9\u0007V\u0002\u0002\u13f9\u13fa\u0007T\u0002\u0002\u13fa\u13fb",
- "\u0007K\u0002\u0002\u13fb\u13fc\u0007I\u0002\u0002\u13fc\u13fd\u0007",
- "I\u0002\u0002\u13fd\u13fe\u0007G\u0002\u0002\u13fe\u13ff\u0007T\u0002",
- "\u0002\u13ff\u02be\u0003\u0002\u0002\u0002\u1400\u1401\u0007V\u0002",
- "\u0002\u1401\u1402\u0007T\u0002\u0002\u1402\u1403\u0007W\u0002\u0002",
- "\u1403\u1404\u0007P\u0002\u0002\u1404\u1405\u0007E\u0002\u0002\u1405",
- "\u1406\u0007C\u0002\u0002\u1406\u1407\u0007V\u0002\u0002\u1407\u1408",
- "\u0007G\u0002\u0002\u1408\u02c0\u0003\u0002\u0002\u0002\u1409\u140a",
- "\u0007V\u0002\u0002\u140a\u140b\u0007U\u0002\u0002\u140b\u140c\u0007",
- "G\u0002\u0002\u140c\u140d\u0007S\u0002\u0002\u140d\u140e\u0007W\u0002",
- "\u0002\u140e\u140f\u0007C\u0002\u0002\u140f\u1410\u0007N\u0002\u0002",
- "\u1410\u02c2\u0003\u0002\u0002\u0002\u1411\u1412\u0007W\u0002\u0002",
- "\u1412\u1413\u0007P\u0002\u0002\u1413\u1414\u0007E\u0002\u0002\u1414",
- "\u1415\u0007J\u0002\u0002\u1415\u1416\u0007G\u0002\u0002\u1416\u1417",
- "\u0007E\u0002\u0002\u1417\u1418\u0007M\u0002\u0002\u1418\u1419\u0007",
- "G\u0002\u0002\u1419\u141a\u0007F\u0002\u0002\u141a\u02c4\u0003\u0002",
- "\u0002\u0002\u141b\u141c\u0007W\u0002\u0002\u141c\u141d\u0007P\u0002",
- "\u0002\u141d\u141e\u0007K\u0002\u0002\u141e\u141f\u0007Q\u0002\u0002",
- "\u141f\u1420\u0007P\u0002\u0002\u1420\u02c6\u0003\u0002\u0002\u0002",
- "\u1421\u1422\u0007W\u0002\u0002\u1422\u1423\u0007P\u0002\u0002\u1423",
- "\u1424\u0007K\u0002\u0002\u1424\u1425\u0007S\u0002\u0002\u1425\u1426",
- "\u0007W\u0002\u0002\u1426\u1427\u0007G\u0002\u0002\u1427\u02c8\u0003",
- "\u0002\u0002\u0002\u1428\u1429\u0007W\u0002\u0002\u1429\u142a\u0007",
- "P\u0002\u0002\u142a\u142b\u0007N\u0002\u0002\u142b\u142c\u0007Q\u0002",
- "\u0002\u142c\u142d\u0007E\u0002\u0002\u142d\u142e\u0007M\u0002\u0002",
- "\u142e\u02ca\u0003\u0002\u0002\u0002\u142f\u1430\u0007W\u0002\u0002",
- "\u1430\u1431\u0007P\u0002\u0002\u1431\u1432\u0007R\u0002\u0002\u1432",
- "\u1433\u0007K\u0002\u0002\u1433\u1434\u0007X\u0002\u0002\u1434\u1435",
- "\u0007Q\u0002\u0002\u1435\u1436\u0007V\u0002\u0002\u1436\u02cc\u0003",
- "\u0002\u0002\u0002\u1437\u1438\u0007W\u0002\u0002\u1438\u1439\u0007",
- "P\u0002\u0002\u1439\u143a\u0007U\u0002\u0002\u143a\u143b\u0007C\u0002",
- "\u0002\u143b\u143c\u0007H\u0002\u0002\u143c\u143d\u0007G\u0002\u0002",
- "\u143d\u02ce\u0003\u0002\u0002\u0002\u143e\u143f\u0007W\u0002\u0002",
- "\u143f\u1440\u0007R\u0002\u0002\u1440\u1441\u0007F\u0002\u0002\u1441",
- "\u1442\u0007C\u0002\u0002\u1442\u1443\u0007V\u0002\u0002\u1443\u1444",
- "\u0007G\u0002\u0002\u1444\u02d0\u0003\u0002\u0002\u0002\u1445\u1446",
- "\u0007W\u0002\u0002\u1446\u1447\u0007R\u0002\u0002\u1447\u1448\u0007",
- "F\u0002\u0002\u1448\u1449\u0007C\u0002\u0002\u1449\u144a\u0007V\u0002",
- "\u0002\u144a\u144b\u0007G\u0002\u0002\u144b\u144c\u0007V\u0002\u0002",
- "\u144c\u144d\u0007G\u0002\u0002\u144d\u144e\u0007Z\u0002\u0002\u144e",
- "\u144f\u0007V\u0002\u0002\u144f\u02d2\u0003\u0002\u0002\u0002\u1450",
- "\u1451\u0007W\u0002\u0002\u1451\u1452\u0007T\u0002\u0002\u1452\u1453",
- "\u0007N\u0002\u0002\u1453\u02d4\u0003\u0002\u0002\u0002\u1454\u1455",
- "\u0007W\u0002\u0002\u1455\u1456\u0007U\u0002\u0002\u1456\u1457\u0007",
- "G\u0002\u0002\u1457\u02d6\u0003\u0002\u0002\u0002\u1458\u1459\u0007",
- "W\u0002\u0002\u1459\u145a\u0007U\u0002\u0002\u145a\u145b\u0007G\u0002",
- "\u0002\u145b\u145c\u0007F\u0002\u0002\u145c\u02d8\u0003\u0002\u0002",
- "\u0002\u145d\u145e\u0007W\u0002\u0002\u145e\u145f\u0007U\u0002\u0002",
- "\u145f\u1460\u0007G\u0002\u0002\u1460\u1461\u0007T\u0002\u0002\u1461",
- "\u02da\u0003\u0002\u0002\u0002\u1462\u1463\u0007X\u0002\u0002\u1463",
- "\u1464\u0007C\u0002\u0002\u1464\u1465\u0007N\u0002\u0002\u1465\u1466",
- "\u0007W\u0002\u0002\u1466\u1467\u0007G\u0002\u0002\u1467\u1468\u0007",
- "U\u0002\u0002\u1468\u02dc\u0003\u0002\u0002\u0002\u1469\u146a\u0007",
- "X\u0002\u0002\u146a\u146b\u0007C\u0002\u0002\u146b\u146c\u0007T\u0002",
- "\u0002\u146c\u146d\u0007[\u0002\u0002\u146d\u146e\u0007K\u0002\u0002",
- "\u146e\u146f\u0007P\u0002\u0002\u146f\u1470\u0007I\u0002\u0002\u1470",
- "\u02de\u0003\u0002\u0002\u0002\u1471\u1472\u0007X\u0002\u0002\u1472",
- "\u1473\u0007G\u0002\u0002\u1473\u1474\u0007T\u0002\u0002\u1474\u1475",
- "\u0007D\u0002\u0002\u1475\u1476\u0007Q\u0002\u0002\u1476\u1477\u0007",
- "U\u0002\u0002\u1477\u1478\u0007G\u0002\u0002\u1478\u1479\u0007N\u0002",
- "\u0002\u1479\u147a\u0007Q\u0002\u0002\u147a\u147b\u0007I\u0002\u0002",
- "\u147b\u147c\u0007I\u0002\u0002\u147c\u147d\u0007K\u0002\u0002\u147d",
- "\u147e\u0007P\u0002\u0002\u147e\u147f\u0007I\u0002\u0002\u147f\u02e0",
- "\u0003\u0002\u0002\u0002\u1480\u1481\u0007X\u0002\u0002\u1481\u1482",
- "\u0007K\u0002\u0002\u1482\u1483\u0007G\u0002\u0002\u1483\u1484\u0007",
- "Y\u0002\u0002\u1484\u02e2\u0003\u0002\u0002\u0002\u1485\u1486\u0007",
- "X\u0002\u0002\u1486\u1487\u0007K\u0002\u0002\u1487\u1488\u0007U\u0002",
- "\u0002\u1488\u1489\u0007K\u0002\u0002\u1489\u148a\u0007D\u0002\u0002",
- "\u148a\u148b\u0007K\u0002\u0002\u148b\u148c\u0007N\u0002\u0002\u148c",
- "\u148d\u0007K\u0002\u0002\u148d\u148e\u0007V\u0002\u0002\u148e\u148f",
- "\u0007[\u0002\u0002\u148f\u02e4\u0003\u0002\u0002\u0002\u1490\u1491",
- "\u0007Y\u0002\u0002\u1491\u1492\u0007C\u0002\u0002\u1492\u1493\u0007",
- "K\u0002\u0002\u1493\u1494\u0007V\u0002\u0002\u1494\u1495\u0007H\u0002",
- "\u0002\u1495\u1496\u0007Q\u0002\u0002\u1496\u1497\u0007T\u0002\u0002",
- "\u1497\u02e6\u0003\u0002\u0002\u0002\u1498\u1499\u0007Y\u0002\u0002",
- "\u1499\u149a\u0007J\u0002\u0002\u149a\u149b\u0007G\u0002\u0002\u149b",
- "\u149c\u0007P\u0002\u0002\u149c\u02e8\u0003\u0002\u0002\u0002\u149d",
- "\u149e\u0007Y\u0002\u0002\u149e\u149f\u0007J\u0002\u0002\u149f\u14a0",
- "\u0007G\u0002\u0002\u14a0\u14a1\u0007T\u0002\u0002\u14a1\u14a2\u0007",
- "G\u0002\u0002\u14a2\u02ea\u0003\u0002\u0002\u0002\u14a3\u14a4\u0007",
- "Y\u0002\u0002\u14a4\u14a5\u0007J\u0002\u0002\u14a5\u14a6\u0007K\u0002",
- "\u0002\u14a6\u14a7\u0007N\u0002\u0002\u14a7\u14a8\u0007G\u0002\u0002",
- "\u14a8\u02ec\u0003\u0002\u0002\u0002\u14a9\u14aa\u0007Y\u0002\u0002",
- "\u14aa\u14ab\u0007K\u0002\u0002\u14ab\u14ac\u0007P\u0002\u0002\u14ac",
- "\u14ad\u0007F\u0002\u0002\u14ad\u14ae\u0007Q\u0002\u0002\u14ae\u14af",
- "\u0007Y\u0002\u0002\u14af\u14b0\u0007U\u0002\u0002\u14b0\u02ee\u0003",
- "\u0002\u0002\u0002\u14b1\u14b2\u0007Y\u0002\u0002\u14b2\u14b3\u0007",
- "K\u0002\u0002\u14b3\u14b4\u0007V\u0002\u0002\u14b4\u14b5\u0007J\u0002",
- "\u0002\u14b5\u02f0\u0003\u0002\u0002\u0002\u14b6\u14b7\u0007Y\u0002",
- "\u0002\u14b7\u14b8\u0007K\u0002\u0002\u14b8\u14b9\u0007V\u0002\u0002",
- "\u14b9\u14ba\u0007J\u0002\u0002\u14ba\u14bb\u0007K\u0002\u0002\u14bb",
- "\u14bc\u0007P\u0002\u0002\u14bc\u02f2\u0003\u0002\u0002\u0002\u14bd",
- "\u14be\u0007Y\u0002\u0002\u14be\u14bf\u0007K\u0002\u0002\u14bf\u14c0",
- "\u0007V\u0002\u0002\u14c0\u14c1\u0007J\u0002\u0002\u14c1\u14c2\u0007",
- "Q\u0002\u0002\u14c2\u14c3\u0007W\u0002\u0002\u14c3\u14c4\u0007V\u0002",
- "\u0002\u14c4\u02f4\u0003\u0002\u0002\u0002\u14c5\u14c6\u0007Y\u0002",
- "\u0002\u14c6\u14c7\u0007K\u0002\u0002\u14c7\u14c8\u0007V\u0002\u0002",
- "\u14c8\u14c9\u0007P\u0002\u0002\u14c9\u14ca\u0007G\u0002\u0002\u14ca",
- "\u14cb\u0007U\u0002\u0002\u14cb\u14cc\u0007U\u0002\u0002\u14cc\u02f6",
- "\u0003\u0002\u0002\u0002\u14cd\u14ce\u0007Y\u0002\u0002\u14ce\u14cf",
- "\u0007T\u0002\u0002\u14cf\u14d0\u0007K\u0002\u0002\u14d0\u14d1\u0007",
- "V\u0002\u0002\u14d1\u14d2\u0007G\u0002\u0002\u14d2\u14d3\u0007V\u0002",
- "\u0002\u14d3\u14d4\u0007G\u0002\u0002\u14d4\u14d5\u0007Z\u0002\u0002",
- "\u14d5\u14d6\u0007V\u0002\u0002\u14d6\u02f8\u0003\u0002\u0002\u0002",
- "\u14d7\u14d8\u0007C\u0002\u0002\u14d8\u14d9\u0007D\u0002\u0002\u14d9",
- "\u14da\u0007U\u0002\u0002\u14da\u14db\u0007Q\u0002\u0002\u14db\u14dc",
- "\u0007N\u0002\u0002\u14dc\u14dd\u0007W\u0002\u0002\u14dd\u14de\u0007",
- "V\u0002\u0002\u14de\u14df\u0007G\u0002\u0002\u14df\u02fa\u0003\u0002",
- "\u0002\u0002\u14e0\u14e1\u0007C\u0002\u0002\u14e1\u14e2\u0007E\u0002",
- "\u0002\u14e2\u14e3\u0007E\u0002\u0002\u14e3\u14e4\u0007G\u0002\u0002",
- "\u14e4\u14e5\u0007P\u0002\u0002\u14e5\u14e6\u0007V\u0002\u0002\u14e6",
- "\u14e7\u0007a\u0002\u0002\u14e7\u14e8\u0007U\u0002\u0002\u14e8\u14e9",
- "\u0007G\u0002\u0002\u14e9\u14ea\u0007P\u0002\u0002\u14ea\u14eb\u0007",
- "U\u0002\u0002\u14eb\u14ec\u0007K\u0002\u0002\u14ec\u14ed\u0007V\u0002",
- "\u0002\u14ed\u14ee\u0007K\u0002\u0002\u14ee\u14ef\u0007X\u0002\u0002",
- "\u14ef\u14f0\u0007K\u0002\u0002\u14f0\u14f1\u0007V\u0002\u0002\u14f1",
- "\u14f2\u0007[\u0002\u0002\u14f2\u02fc\u0003\u0002\u0002\u0002\u14f3",
- "\u14f4\u0007C\u0002\u0002\u14f4\u14f5\u0007E\u0002\u0002\u14f5\u14f6",
- "\u0007V\u0002\u0002\u14f6\u14f7\u0007K\u0002\u0002\u14f7\u14f8\u0007",
- "Q\u0002\u0002\u14f8\u14f9\u0007P\u0002\u0002\u14f9\u02fe\u0003\u0002",
- "\u0002\u0002\u14fa\u14fb\u0007C\u0002\u0002\u14fb\u14fc\u0007E\u0002",
- "\u0002\u14fc\u14fd\u0007V\u0002\u0002\u14fd\u14fe\u0007K\u0002\u0002",
- "\u14fe\u14ff\u0007X\u0002\u0002\u14ff\u1500\u0007C\u0002\u0002\u1500",
- "\u1501\u0007V\u0002\u0002\u1501\u1502\u0007K\u0002\u0002\u1502\u1503",
- "\u0007Q\u0002\u0002\u1503\u1504\u0007P\u0002\u0002\u1504\u0300\u0003",
- "\u0002\u0002\u0002\u1505\u1506\u0007C\u0002\u0002\u1506\u1507\u0007",
- "E\u0002\u0002\u1507\u1508\u0007V\u0002\u0002\u1508\u1509\u0007K\u0002",
- "\u0002\u1509\u150a\u0007X\u0002\u0002\u150a\u150b\u0007G\u0002\u0002",
- "\u150b\u0302\u0003\u0002\u0002\u0002\u150c\u150d\u0007C\u0002\u0002",
- "\u150d\u150e\u0007F\u0002\u0002\u150e\u150f\u0007F\u0002\u0002\u150f",
- "\u1510\u0007T\u0002\u0002\u1510\u1511\u0007G\u0002\u0002\u1511\u1512",
- "\u0007U\u0002\u0002\u1512\u1513\u0007U\u0002\u0002\u1513\u0304\u0003",
- "\u0002\u0002\u0002\u1514\u1515\u0007C\u0002\u0002\u1515\u1516\u0007",
- "G\u0002\u0002\u1516\u1517\u0007U\u0002\u0002\u1517\u1518\u0007a\u0002",
- "\u0002\u1518\u1519\u00073\u0002\u0002\u1519\u151a\u00074\u0002\u0002",
- "\u151a\u151b\u0007:\u0002\u0002\u151b\u0306\u0003\u0002\u0002\u0002",
- "\u151c\u151d\u0007C\u0002\u0002\u151d\u151e\u0007G\u0002\u0002\u151e",
- "\u151f\u0007U\u0002\u0002\u151f\u1520\u0007a\u0002\u0002\u1520\u1521",
- "\u00073\u0002\u0002\u1521\u1522\u0007;\u0002\u0002\u1522\u1523\u0007",
- "4\u0002\u0002\u1523\u0308\u0003\u0002\u0002\u0002\u1524\u1525\u0007",
- "C\u0002\u0002\u1525\u1526\u0007G\u0002\u0002\u1526\u1527\u0007U\u0002",
- "\u0002\u1527\u1528\u0007a\u0002\u0002\u1528\u1529\u00074\u0002\u0002",
- "\u1529\u152a\u00077\u0002\u0002\u152a\u152b\u00078\u0002\u0002\u152b",
- "\u030a\u0003\u0002\u0002\u0002\u152c\u152d\u0007C\u0002\u0002\u152d",
- "\u152e\u0007H\u0002\u0002\u152e\u152f\u0007H\u0002\u0002\u152f\u1530",
- "\u0007K\u0002\u0002\u1530\u1531\u0007P\u0002\u0002\u1531\u1532\u0007",
- "K\u0002\u0002\u1532\u1533\u0007V\u0002\u0002\u1533\u1534\u0007[\u0002",
- "\u0002\u1534\u030c\u0003\u0002\u0002\u0002\u1535\u1536\u0007C\u0002",
- "\u0002\u1536\u1537\u0007H\u0002\u0002\u1537\u1538\u0007V\u0002\u0002",
- "\u1538\u1539\u0007G\u0002\u0002\u1539\u153a\u0007T\u0002\u0002\u153a",
- "\u030e\u0003\u0002\u0002\u0002\u153b\u153c\u0007C\u0002\u0002\u153c",
- "\u153d\u0007I\u0002\u0002\u153d\u153e\u0007I\u0002\u0002\u153e\u153f",
- "\u0007T\u0002\u0002\u153f\u1540\u0007G\u0002\u0002\u1540\u1541\u0007",
- "I\u0002\u0002\u1541\u1542\u0007C\u0002\u0002\u1542\u1543\u0007V\u0002",
- "\u0002\u1543\u1544\u0007G\u0002\u0002\u1544\u0310\u0003\u0002\u0002",
- "\u0002\u1545\u1546\u0007C\u0002\u0002\u1546\u1547\u0007N\u0002\u0002",
- "\u1547\u1548\u0007I\u0002\u0002\u1548\u1549\u0007Q\u0002\u0002\u1549",
- "\u154a\u0007T\u0002\u0002\u154a\u154b\u0007K\u0002\u0002\u154b\u154c",
- "\u0007V\u0002\u0002\u154c\u154d\u0007J\u0002\u0002\u154d\u154e\u0007",
- "O\u0002\u0002\u154e\u0312\u0003\u0002\u0002\u0002\u154f\u1550\u0007",
- "C\u0002\u0002\u1550\u1551\u0007N\u0002\u0002\u1551\u1552\u0007N\u0002",
- "\u0002\u1552\u1553\u0007Q\u0002\u0002\u1553\u1554\u0007Y\u0002\u0002",
- "\u1554\u1555\u0007a\u0002\u0002\u1555\u1556\u0007G\u0002\u0002\u1556",
- "\u1557\u0007P\u0002\u0002\u1557\u1558\u0007E\u0002\u0002\u1558\u1559",
- "\u0007T\u0002\u0002\u1559\u155a\u0007[\u0002\u0002\u155a\u155b\u0007",
- "R\u0002\u0002\u155b\u155c\u0007V\u0002\u0002\u155c\u155d\u0007G\u0002",
- "\u0002\u155d\u155e\u0007F\u0002\u0002\u155e\u155f\u0007a\u0002\u0002",
- "\u155f\u1560\u0007X\u0002\u0002\u1560\u1561\u0007C\u0002\u0002\u1561",
- "\u1562\u0007N\u0002\u0002\u1562\u1563\u0007W\u0002\u0002\u1563\u1564",
- "\u0007G\u0002\u0002\u1564\u1565\u0007a\u0002\u0002\u1565\u1566\u0007",
- "O\u0002\u0002\u1566\u1567\u0007Q\u0002\u0002\u1567\u1568\u0007F\u0002",
- "\u0002\u1568\u1569\u0007K\u0002\u0002\u1569\u156a\u0007H\u0002\u0002",
- "\u156a\u156b\u0007K\u0002\u0002\u156b\u156c\u0007E\u0002\u0002\u156c",
- "\u156d\u0007C\u0002\u0002\u156d\u156e\u0007V\u0002\u0002\u156e\u156f",
- "\u0007K\u0002\u0002\u156f\u1570\u0007Q\u0002\u0002\u1570\u1571\u0007",
- "P\u0002\u0002\u1571\u1572\u0007U\u0002\u0002\u1572\u0314\u0003\u0002",
- "\u0002\u0002\u1573\u1574\u0007C\u0002\u0002\u1574\u1575\u0007N\u0002",
- "\u0002\u1575\u1576\u0007N\u0002\u0002\u1576\u1577\u0007Q\u0002\u0002",
- "\u1577\u1578\u0007Y\u0002\u0002\u1578\u1579\u0007a\u0002\u0002\u1579",
- "\u157a\u0007U\u0002\u0002\u157a\u157b\u0007P\u0002\u0002\u157b\u157c",
- "\u0007C\u0002\u0002\u157c\u157d\u0007R\u0002\u0002\u157d\u157e\u0007",
- "U\u0002\u0002\u157e\u157f\u0007J\u0002\u0002\u157f\u1580\u0007Q\u0002",
- "\u0002\u1580\u1581\u0007V\u0002\u0002\u1581\u1582\u0007a\u0002\u0002",
- "\u1582\u1583\u0007K\u0002\u0002\u1583\u1584\u0007U\u0002\u0002\u1584",
- "\u1585\u0007Q\u0002\u0002\u1585\u1586\u0007N\u0002\u0002\u1586\u1587",
- "\u0007C\u0002\u0002\u1587\u1588\u0007V\u0002\u0002\u1588\u1589\u0007",
- "K\u0002\u0002\u1589\u158a\u0007Q\u0002\u0002\u158a\u158b\u0007P\u0002",
- "\u0002\u158b\u0316\u0003\u0002\u0002\u0002\u158c\u158d\u0007C\u0002",
- "\u0002\u158d\u158e\u0007N\u0002\u0002\u158e\u158f\u0007N\u0002\u0002",
- "\u158f\u1590\u0007Q\u0002\u0002\u1590\u1591\u0007Y\u0002\u0002\u1591",
- "\u1592\u0007G\u0002\u0002\u1592\u1593\u0007F\u0002\u0002\u1593\u0318",
- "\u0003\u0002\u0002\u0002\u1594\u1595\u0007C\u0002\u0002\u1595\u1596",
- "\u0007P\u0002\u0002\u1596\u1597\u0007U\u0002\u0002\u1597\u1598\u0007",
- "K\u0002\u0002\u1598\u1599\u0007a\u0002\u0002\u1599\u159a\u0007P\u0002",
- "\u0002\u159a\u159b\u0007W\u0002\u0002\u159b\u159c\u0007N\u0002\u0002",
- "\u159c\u159d\u0007N\u0002\u0002\u159d\u159e\u0007a\u0002\u0002\u159e",
- "\u159f\u0007F\u0002\u0002\u159f\u15a0\u0007G\u0002\u0002\u15a0\u15a1",
- "\u0007H\u0002\u0002\u15a1\u15a2\u0007C\u0002\u0002\u15a2\u15a3\u0007",
- "W\u0002\u0002\u15a3\u15a4\u0007N\u0002\u0002\u15a4\u15a5\u0007V\u0002",
- "\u0002\u15a5\u031a\u0003\u0002\u0002\u0002\u15a6\u15a7\u0007C\u0002",
- "\u0002\u15a7\u15a8\u0007P\u0002\u0002\u15a8\u15a9\u0007U\u0002\u0002",
- "\u15a9\u15aa\u0007K\u0002\u0002\u15aa\u15ab\u0007a\u0002\u0002\u15ab",
- "\u15ac\u0007P\u0002\u0002\u15ac\u15ad\u0007W\u0002\u0002\u15ad\u15ae",
- "\u0007N\u0002\u0002\u15ae\u15af\u0007N\u0002\u0002\u15af\u15b0\u0007",
- "U\u0002\u0002\u15b0\u031c\u0003\u0002\u0002\u0002\u15b1\u15b2\u0007",
- "C\u0002\u0002\u15b2\u15b3\u0007P\u0002\u0002\u15b3\u15b4\u0007U\u0002",
- "\u0002\u15b4\u15b5\u0007K\u0002\u0002\u15b5\u15b6\u0007a\u0002\u0002",
- "\u15b6\u15b7\u0007R\u0002\u0002\u15b7\u15b8\u0007C\u0002\u0002\u15b8",
- "\u15b9\u0007F\u0002\u0002\u15b9\u15ba\u0007F\u0002\u0002\u15ba\u15bb",
- "\u0007K\u0002\u0002\u15bb\u15bc\u0007P\u0002\u0002\u15bc\u15bd\u0007",
- "I\u0002\u0002\u15bd\u031e\u0003\u0002\u0002\u0002\u15be\u15bf\u0007",
- "C\u0002\u0002\u15bf\u15c0\u0007P\u0002\u0002\u15c0\u15c1\u0007U\u0002",
- "\u0002\u15c1\u15c2\u0007K\u0002\u0002\u15c2\u15c3\u0007a\u0002\u0002",
- "\u15c3\u15c4\u0007Y\u0002\u0002\u15c4\u15c5\u0007C\u0002\u0002\u15c5",
- "\u15c6\u0007T\u0002\u0002\u15c6\u15c7\u0007P\u0002\u0002\u15c7\u15c8",
- "\u0007K\u0002\u0002\u15c8\u15c9\u0007P\u0002\u0002\u15c9\u15ca\u0007",
- "I\u0002\u0002\u15ca\u15cb\u0007U\u0002\u0002\u15cb\u0320\u0003\u0002",
- "\u0002\u0002\u15cc\u15cd\u0007C\u0002\u0002\u15cd\u15ce\u0007R\u0002",
- "\u0002\u15ce\u15cf\u0007R\u0002\u0002\u15cf\u15d0\u0007N\u0002\u0002",
- "\u15d0\u15d1\u0007K\u0002\u0002\u15d1\u15d2\u0007E\u0002\u0002\u15d2",
- "\u15d3\u0007C\u0002\u0002\u15d3\u15d4\u0007V\u0002\u0002\u15d4\u15d5",
- "\u0007K\u0002\u0002\u15d5\u15d6\u0007Q\u0002\u0002\u15d6\u15d7\u0007",
- "P\u0002\u0002\u15d7\u15d8\u0007a\u0002\u0002\u15d8\u15d9\u0007N\u0002",
- "\u0002\u15d9\u15da\u0007Q\u0002\u0002\u15da\u15db\u0007I\u0002\u0002",
- "\u15db\u0322\u0003\u0002\u0002\u0002\u15dc\u15dd\u0007C\u0002\u0002",
- "\u15dd\u15de\u0007R\u0002\u0002\u15de\u15df\u0007R\u0002\u0002\u15df",
- "\u15e0\u0007N\u0002\u0002\u15e0\u15e1\u0007[\u0002\u0002\u15e1\u0324",
- "\u0003\u0002\u0002\u0002\u15e2\u15e3\u0007C\u0002\u0002\u15e3\u15e4",
- "\u0007T\u0002\u0002\u15e4\u15e5\u0007K\u0002\u0002\u15e5\u15e6\u0007",
- "V\u0002\u0002\u15e6\u15e7\u0007J\u0002\u0002\u15e7\u15e8\u0007C\u0002",
- "\u0002\u15e8\u15e9\u0007D\u0002\u0002\u15e9\u15ea\u0007Q\u0002\u0002",
- "\u15ea\u15eb\u0007T\u0002\u0002\u15eb\u15ec\u0007V\u0002\u0002\u15ec",
- "\u0326\u0003\u0002\u0002\u0002\u15ed\u15ee\u0007C\u0002\u0002\u15ee",
- "\u15ef\u0007U\u0002\u0002\u15ef\u15f0\u0007U\u0002\u0002\u15f0\u15f1",
- "\u0007G\u0002\u0002\u15f1\u15f2\u0007O\u0002\u0002\u15f2\u15f3\u0007",
- "D\u0002\u0002\u15f3\u15f4\u0007N\u0002\u0002\u15f4\u15f5\u0007[\u0002",
- "\u0002\u15f5\u0328\u0003\u0002\u0002\u0002\u15f6\u15f7\u0007C\u0002",
- "\u0002\u15f7\u15f8\u0007W\u0002\u0002\u15f8\u15f9\u0007F\u0002\u0002",
- "\u15f9\u15fa\u0007K\u0002\u0002\u15fa\u15fb\u0007V\u0002\u0002\u15fb",
- "\u032a\u0003\u0002\u0002\u0002\u15fc\u15fd\u0007C\u0002\u0002\u15fd",
- "\u15fe\u0007W\u0002\u0002\u15fe\u15ff\u0007F\u0002\u0002\u15ff\u1600",
- "\u0007K\u0002\u0002\u1600\u1601\u0007V\u0002\u0002\u1601\u1602\u0007",
- "a\u0002\u0002\u1602\u1603\u0007I\u0002\u0002\u1603\u1604\u0007W\u0002",
- "\u0002\u1604\u1605\u0007K\u0002\u0002\u1605\u1606\u0007F\u0002\u0002",
- "\u1606\u032c\u0003\u0002\u0002\u0002\u1607\u1608\u0007C\u0002\u0002",
- "\u1608\u1609\u0007W\u0002\u0002\u1609\u160a\u0007V\u0002\u0002\u160a",
- "\u160b\u0007Q\u0002\u0002\u160b\u032e\u0003\u0002\u0002\u0002\u160c",
- "\u160d\u0007C\u0002\u0002\u160d\u160e\u0007W\u0002\u0002\u160e\u160f",
- "\u0007V\u0002\u0002\u160f\u1610\u0007Q\u0002\u0002\u1610\u1611\u0007",
- "a\u0002\u0002\u1611\u1612\u0007E\u0002\u0002\u1612\u1613\u0007N\u0002",
- "\u0002\u1613\u1614\u0007G\u0002\u0002\u1614\u1615\u0007C\u0002\u0002",
- "\u1615\u1616\u0007P\u0002\u0002\u1616\u1617\u0007W\u0002\u0002\u1617",
- "\u1618\u0007R\u0002\u0002\u1618\u0330\u0003\u0002\u0002\u0002\u1619",
- "\u161a\u0007C\u0002\u0002\u161a\u161b\u0007W\u0002\u0002\u161b\u161c",
- "\u0007V\u0002\u0002\u161c\u161d\u0007Q\u0002\u0002\u161d\u161e\u0007",
- "a\u0002\u0002\u161e\u161f\u0007E\u0002\u0002\u161f\u1620\u0007N\u0002",
- "\u0002\u1620\u1621\u0007Q\u0002\u0002\u1621\u1622\u0007U\u0002\u0002",
- "\u1622\u1623\u0007G\u0002\u0002\u1623\u0332\u0003\u0002\u0002\u0002",
- "\u1624\u1625\u0007C\u0002\u0002\u1625\u1626\u0007W\u0002\u0002\u1626",
- "\u1627\u0007V\u0002\u0002\u1627\u1628\u0007Q\u0002\u0002\u1628\u1629",
- "\u0007a\u0002\u0002\u1629\u162a\u0007E\u0002\u0002\u162a\u162b\u0007",
- "T\u0002\u0002\u162b\u162c\u0007G\u0002\u0002\u162c\u162d\u0007C\u0002",
- "\u0002\u162d\u162e\u0007V\u0002\u0002\u162e\u162f\u0007G\u0002\u0002",
- "\u162f\u1630\u0007a\u0002\u0002\u1630\u1631\u0007U\u0002\u0002\u1631",
- "\u1632\u0007V\u0002\u0002\u1632\u1633\u0007C\u0002\u0002\u1633\u1634",
- "\u0007V\u0002\u0002\u1634\u1635\u0007K\u0002\u0002\u1635\u1636\u0007",
- "U\u0002\u0002\u1636\u1637\u0007V\u0002\u0002\u1637\u1638\u0007K\u0002",
- "\u0002\u1638\u1639\u0007E\u0002\u0002\u1639\u163a\u0007U\u0002\u0002",
- "\u163a\u0334\u0003\u0002\u0002\u0002\u163b\u163c\u0007C\u0002\u0002",
- "\u163c\u163d\u0007W\u0002\u0002\u163d\u163e\u0007V\u0002\u0002\u163e",
- "\u163f\u0007Q\u0002\u0002\u163f\u1640\u0007a\u0002\u0002\u1640\u1641",
- "\u0007U\u0002\u0002\u1641\u1642\u0007J\u0002\u0002\u1642\u1643\u0007",
- "T\u0002\u0002\u1643\u1644\u0007K\u0002\u0002\u1644\u1645\u0007P\u0002",
- "\u0002\u1645\u1646\u0007M\u0002\u0002\u1646\u0336\u0003\u0002\u0002",
- "\u0002\u1647\u1648\u0007C\u0002\u0002\u1648\u1649\u0007W\u0002\u0002",
- "\u1649\u164a\u0007V\u0002\u0002\u164a\u164b\u0007Q\u0002\u0002\u164b",
- "\u164c\u0007a\u0002\u0002\u164c\u164d\u0007W\u0002\u0002\u164d\u164e",
- "\u0007R\u0002\u0002\u164e\u164f\u0007F\u0002\u0002\u164f\u1650\u0007",
- "C\u0002\u0002\u1650\u1651\u0007V\u0002\u0002\u1651\u1652\u0007G\u0002",
- "\u0002\u1652\u1653\u0007a\u0002\u0002\u1653\u1654\u0007U\u0002\u0002",
- "\u1654\u1655\u0007V\u0002\u0002\u1655\u1656\u0007C\u0002\u0002\u1656",
- "\u1657\u0007V\u0002\u0002\u1657\u1658\u0007K\u0002\u0002\u1658\u1659",
- "\u0007U\u0002\u0002\u1659\u165a\u0007V\u0002\u0002\u165a\u165b\u0007",
- "K\u0002\u0002\u165b\u165c\u0007E\u0002\u0002\u165c\u165d\u0007U\u0002",
- "\u0002\u165d\u0338\u0003\u0002\u0002\u0002\u165e\u165f\u0007C\u0002",
- "\u0002\u165f\u1660\u0007W\u0002\u0002\u1660\u1661\u0007V\u0002\u0002",
- "\u1661\u1662\u0007Q\u0002\u0002\u1662\u1663\u0007a\u0002\u0002\u1663",
- "\u1664\u0007W\u0002\u0002\u1664\u1665\u0007R\u0002\u0002\u1665\u1666",
- "\u0007F\u0002\u0002\u1666\u1667\u0007C\u0002\u0002\u1667\u1668\u0007",
- "V\u0002\u0002\u1668\u1669\u0007G\u0002\u0002\u1669\u166a\u0007a\u0002",
- "\u0002\u166a\u166b\u0007U\u0002\u0002\u166b\u166c\u0007V\u0002\u0002",
- "\u166c\u166d\u0007C\u0002\u0002\u166d\u166e\u0007V\u0002\u0002\u166e",
- "\u166f\u0007K\u0002\u0002\u166f\u1670\u0007U\u0002\u0002\u1670\u1671",
- "\u0007V\u0002\u0002\u1671\u1672\u0007K\u0002\u0002\u1672\u1673\u0007",
- "E\u0002\u0002\u1673\u1674\u0007U\u0002\u0002\u1674\u1675\u0007a\u0002",
- "\u0002\u1675\u1676\u0007C\u0002\u0002\u1676\u1677\u0007U\u0002\u0002",
- "\u1677\u1678\u0007[\u0002\u0002\u1678\u1679\u0007P\u0002\u0002\u1679",
- "\u167a\u0007E\u0002\u0002\u167a\u033a\u0003\u0002\u0002\u0002\u167b",
- "\u167c\u0007C\u0002\u0002\u167c\u167d\u0007X\u0002\u0002\u167d\u167e",
- "\u0007C\u0002\u0002\u167e\u167f\u0007K\u0002\u0002\u167f\u1680\u0007",
- "N\u0002\u0002\u1680\u1681\u0007C\u0002\u0002\u1681\u1682\u0007D\u0002",
- "\u0002\u1682\u1683\u0007K\u0002\u0002\u1683\u1684\u0007N\u0002\u0002",
- "\u1684\u1685\u0007K\u0002\u0002\u1685\u1686\u0007V\u0002\u0002\u1686",
- "\u1687\u0007[\u0002\u0002\u1687\u033c\u0003\u0002\u0002\u0002\u1688",
- "\u1689\u0007C\u0002\u0002\u1689\u168a\u0007X\u0002\u0002\u168a\u168b",
- "\u0007I\u0002\u0002\u168b\u033e\u0003\u0002\u0002\u0002\u168c\u168d",
- "\u0007D\u0002\u0002\u168d\u168e\u0007C\u0002\u0002\u168e\u168f\u0007",
- "E\u0002\u0002\u168f\u1690\u0007M\u0002\u0002\u1690\u1691\u0007W\u0002",
- "\u0002\u1691\u1692\u0007R\u0002\u0002\u1692\u1693\u0007a\u0002\u0002",
- "\u1693\u1694\u0007R\u0002\u0002\u1694\u1695\u0007T\u0002\u0002\u1695",
- "\u1696\u0007K\u0002\u0002\u1696\u1697\u0007Q\u0002\u0002\u1697\u1698",
- "\u0007T\u0002\u0002\u1698\u1699\u0007K\u0002\u0002\u1699\u169a\u0007",
- "V\u0002\u0002\u169a\u169b\u0007[\u0002\u0002\u169b\u0340\u0003\u0002",
- "\u0002\u0002\u169c\u169d\u0007D\u0002\u0002\u169d\u169e\u0007G\u0002",
- "\u0002\u169e\u169f\u0007I\u0002\u0002\u169f\u16a0\u0007K\u0002\u0002",
- "\u16a0\u16a1\u0007P\u0002\u0002\u16a1\u16a2\u0007a\u0002\u0002\u16a2",
- "\u16a3\u0007F\u0002\u0002\u16a3\u16a4\u0007K\u0002\u0002\u16a4\u16a5",
- "\u0007C\u0002\u0002\u16a5\u16a6\u0007N\u0002\u0002\u16a6\u16a7\u0007",
- "Q\u0002\u0002\u16a7\u16a8\u0007I\u0002\u0002\u16a8\u0342\u0003\u0002",
- "\u0002\u0002\u16a9\u16aa\u0007D\u0002\u0002\u16aa\u16ab\u0007K\u0002",
- "\u0002\u16ab\u16ac\u0007I\u0002\u0002\u16ac\u16ad\u0007K\u0002\u0002",
- "\u16ad\u16ae\u0007P\u0002\u0002\u16ae\u16af\u0007V\u0002\u0002\u16af",
- "\u0344\u0003\u0002\u0002\u0002\u16b0\u16b1\u0007D\u0002\u0002\u16b1",
- "\u16b2\u0007K\u0002\u0002\u16b2\u16b3\u0007P\u0002\u0002\u16b3\u16b4",
- "\u0007C\u0002\u0002\u16b4\u16b5\u0007T\u0002\u0002\u16b5\u16b6\u0007",
- "[\u0002\u0002\u16b6\u16b7\u0007\"\u0002\u0002\u16b7\u16b8\u0007D\u0002",
- "\u0002\u16b8\u16b9\u0007C\u0002\u0002\u16b9\u16ba\u0007U\u0002\u0002",
- "\u16ba\u16bb\u0007G\u0002\u0002\u16bb\u16bc\u00078\u0002\u0002\u16bc",
- "\u16bd\u00076\u0002\u0002\u16bd\u0346\u0003\u0002\u0002\u0002\u16be",
- "\u16bf\u0007D\u0002\u0002\u16bf\u16c0\u0007K\u0002\u0002\u16c0\u16c1",
- "\u0007P\u0002\u0002\u16c1\u16c2\u0007C\u0002\u0002\u16c2\u16c3\u0007",
- "T\u0002\u0002\u16c3\u16c4\u0007[\u0002\u0002\u16c4\u16c5\u0007a\u0002",
- "\u0002\u16c5\u16c6\u0007E\u0002\u0002\u16c6\u16c7\u0007J\u0002\u0002",
- "\u16c7\u16c8\u0007G\u0002\u0002\u16c8\u16c9\u0007E\u0002\u0002\u16c9",
- "\u16ca\u0007M\u0002\u0002\u16ca\u16cb\u0007U\u0002\u0002\u16cb\u16cc",
- "\u0007W\u0002\u0002\u16cc\u16cd\u0007O\u0002\u0002\u16cd\u0348\u0003",
- "\u0002\u0002\u0002\u16ce\u16cf\u0007D\u0002\u0002\u16cf\u16d0\u0007",
- "K\u0002\u0002\u16d0\u16d1\u0007P\u0002\u0002\u16d1\u16d2\u0007F\u0002",
- "\u0002\u16d2\u16d3\u0007K\u0002\u0002\u16d3\u16d4\u0007P\u0002\u0002",
- "\u16d4\u16d5\u0007I\u0002\u0002\u16d5\u034a\u0003\u0002\u0002\u0002",
- "\u16d6\u16d7\u0007D\u0002\u0002\u16d7\u16d8\u0007N\u0002\u0002\u16d8",
- "\u16d9\u0007Q\u0002\u0002\u16d9\u16da\u0007D\u0002\u0002\u16da\u16db",
- "\u0007a\u0002\u0002\u16db\u16dc\u0007U\u0002\u0002\u16dc\u16dd\u0007",
- "V\u0002\u0002\u16dd\u16de\u0007Q\u0002\u0002\u16de\u16df\u0007T\u0002",
- "\u0002\u16df\u16e0\u0007C\u0002\u0002\u16e0\u16e1\u0007I\u0002\u0002",
- "\u16e1\u16e2\u0007G\u0002\u0002\u16e2\u034c\u0003\u0002\u0002\u0002",
- "\u16e3\u16e4\u0007D\u0002\u0002\u16e4\u16e5\u0007T\u0002\u0002\u16e5",
- "\u16e6\u0007Q\u0002\u0002\u16e6\u16e7\u0007M\u0002\u0002\u16e7\u16e8",
- "\u0007G\u0002\u0002\u16e8\u16e9\u0007T\u0002\u0002\u16e9\u034e\u0003",
- "\u0002\u0002\u0002\u16ea\u16eb\u0007D\u0002\u0002\u16eb\u16ec\u0007",
- "T\u0002\u0002\u16ec\u16ed\u0007Q\u0002\u0002\u16ed\u16ee\u0007M\u0002",
- "\u0002\u16ee\u16ef\u0007G\u0002\u0002\u16ef\u16f0\u0007T\u0002\u0002",
- "\u16f0\u16f1\u0007a\u0002\u0002\u16f1\u16f2\u0007K\u0002\u0002\u16f2",
- "\u16f3\u0007P\u0002\u0002\u16f3\u16f4\u0007U\u0002\u0002\u16f4\u16f5",
- "\u0007V\u0002\u0002\u16f5\u16f6\u0007C\u0002\u0002\u16f6\u16f7\u0007",
- "P\u0002\u0002\u16f7\u16f8\u0007E\u0002\u0002\u16f8\u16f9\u0007G\u0002",
- "\u0002\u16f9\u0350\u0003\u0002\u0002\u0002\u16fa\u16fb\u0007D\u0002",
- "\u0002\u16fb\u16fc\u0007W\u0002\u0002\u16fc\u16fd\u0007N\u0002\u0002",
- "\u16fd\u16fe\u0007M\u0002\u0002\u16fe\u16ff\u0007a\u0002\u0002\u16ff",
- "\u1700\u0007N\u0002\u0002\u1700\u1701\u0007Q\u0002\u0002\u1701\u1702",
- "\u0007I\u0002\u0002\u1702\u1703\u0007I\u0002\u0002\u1703\u1704\u0007",
- "G\u0002\u0002\u1704\u1705\u0007F\u0002\u0002\u1705\u0352\u0003\u0002",
- "\u0002\u0002\u1706\u1707\u0007E\u0002\u0002\u1707\u1708\u0007C\u0002",
- "\u0002\u1708\u1709\u0007N\u0002\u0002\u1709\u170a\u0007N\u0002\u0002",
- "\u170a\u170b\u0007G\u0002\u0002\u170b\u170c\u0007T\u0002\u0002\u170c",
- "\u0354\u0003\u0002\u0002\u0002\u170d\u170e\u0007E\u0002\u0002\u170e",
- "\u170f\u0007C\u0002\u0002\u170f\u1710\u0007R\u0002\u0002\u1710\u1711",
- "\u0007a\u0002\u0002\u1711\u1712\u0007E\u0002\u0002\u1712\u1713\u0007",
- "R\u0002\u0002\u1713\u1714\u0007W\u0002\u0002\u1714\u1715\u0007a\u0002",
- "\u0002\u1715\u1716\u0007R\u0002\u0002\u1716\u1717\u0007G\u0002\u0002",
- "\u1717\u1718\u0007T\u0002\u0002\u1718\u1719\u0007E\u0002\u0002\u1719",
- "\u171a\u0007G\u0002\u0002\u171a\u171b\u0007P\u0002\u0002\u171b\u171c",
- "\u0007V\u0002\u0002\u171c\u0356\u0003\u0002\u0002\u0002\u171d\u171e",
- "\u0007V\u0002\u0002\u171e\u171f\u0007T\u0002\u0002\u171f\u1720\u0007",
- "[\u0002\u0002\u1720\u1722\u0007a\u0002\u0002\u1721\u171d\u0003\u0002",
- "\u0002\u0002\u1721\u1722\u0003\u0002\u0002\u0002\u1722\u1723\u0003\u0002",
- "\u0002\u0002\u1723\u1724\u0007E\u0002\u0002\u1724\u1725\u0007C\u0002",
- "\u0002\u1725\u1726\u0007U\u0002\u0002\u1726\u1727\u0007V\u0002\u0002",
- "\u1727\u0358\u0003\u0002\u0002\u0002\u1728\u1729\u0007E\u0002\u0002",
- "\u1729\u172a\u0007C\u0002\u0002\u172a\u172b\u0007V\u0002\u0002\u172b",
- "\u172c\u0007C\u0002\u0002\u172c\u172d\u0007N\u0002\u0002\u172d\u172e",
- "\u0007Q\u0002\u0002\u172e\u172f\u0007I\u0002\u0002\u172f\u035a\u0003",
- "\u0002\u0002\u0002\u1730\u1731\u0007E\u0002\u0002\u1731\u1732\u0007",
- "C\u0002\u0002\u1732\u1733\u0007V\u0002\u0002\u1733\u1734\u0007E\u0002",
- "\u0002\u1734\u1735\u0007J\u0002\u0002\u1735\u035c\u0003\u0002\u0002",
- "\u0002\u1736\u1737\u0007E\u0002\u0002\u1737\u1738\u0007J\u0002\u0002",
- "\u1738\u1739\u0007C\u0002\u0002\u1739\u173a\u0007P\u0002\u0002\u173a",
- "\u173b\u0007I\u0002\u0002\u173b\u173c\u0007G\u0002\u0002\u173c\u173d",
- "\u0007a\u0002\u0002\u173d\u173e\u0007T\u0002\u0002\u173e\u173f\u0007",
- "G\u0002\u0002\u173f\u1740\u0007V\u0002\u0002\u1740\u1741\u0007G\u0002",
- "\u0002\u1741\u1742\u0007P\u0002\u0002\u1742\u1743\u0007V\u0002\u0002",
- "\u1743\u1744\u0007K\u0002\u0002\u1744\u1745\u0007Q\u0002\u0002\u1745",
- "\u1746\u0007P\u0002\u0002\u1746\u035e\u0003\u0002\u0002\u0002\u1747",
- "\u1748\u0007E\u0002\u0002\u1748\u1749\u0007J\u0002\u0002\u1749\u174a",
- "\u0007C\u0002\u0002\u174a\u174b\u0007P\u0002\u0002\u174b\u174c\u0007",
- "I\u0002\u0002\u174c\u174d\u0007G\u0002\u0002\u174d\u174e\u0007a\u0002",
- "\u0002\u174e\u174f\u0007V\u0002\u0002\u174f\u1750\u0007T\u0002\u0002",
- "\u1750\u1751\u0007C\u0002\u0002\u1751\u1752\u0007E\u0002\u0002\u1752",
- "\u1753\u0007M\u0002\u0002\u1753\u1754\u0007K\u0002\u0002\u1754\u1755",
- "\u0007P\u0002\u0002\u1755\u1756\u0007I\u0002\u0002\u1756\u0360\u0003",
- "\u0002\u0002\u0002\u1757\u1758\u0007E\u0002\u0002\u1758\u1759\u0007",
- "J\u0002\u0002\u1759\u175a\u0007G\u0002\u0002\u175a\u175b\u0007E\u0002",
- "\u0002\u175b\u175c\u0007M\u0002\u0002\u175c\u175d\u0007U\u0002\u0002",
- "\u175d\u175e\u0007W\u0002\u0002\u175e\u175f\u0007O\u0002\u0002\u175f",
- "\u0362\u0003\u0002\u0002\u0002\u1760\u1761\u0007E\u0002\u0002\u1761",
- "\u1762\u0007J\u0002\u0002\u1762\u1763\u0007G\u0002\u0002\u1763\u1764",
- "\u0007E\u0002\u0002\u1764\u1765\u0007M\u0002\u0002\u1765\u1766\u0007",
- "U\u0002\u0002\u1766\u1767\u0007W\u0002\u0002\u1767\u1768\u0007O\u0002",
- "\u0002\u1768\u1769\u0007a\u0002\u0002\u1769\u176a\u0007C\u0002\u0002",
- "\u176a\u176b\u0007I\u0002\u0002\u176b\u176c\u0007I\u0002\u0002\u176c",
- "\u0364\u0003\u0002\u0002\u0002\u176d\u176e\u0007E\u0002\u0002\u176e",
- "\u176f\u0007N\u0002\u0002\u176f\u1770\u0007G\u0002\u0002\u1770\u1771",
- "\u0007C\u0002\u0002\u1771\u1772\u0007P\u0002\u0002\u1772\u1773\u0007",
- "W\u0002\u0002\u1773\u1774\u0007R\u0002\u0002\u1774\u0366\u0003\u0002",
- "\u0002\u0002\u1775\u1776\u0007E\u0002\u0002\u1776\u1777\u0007Q\u0002",
- "\u0002\u1777\u1778\u0007N\u0002\u0002\u1778\u1779\u0007N\u0002\u0002",
- "\u1779\u177a\u0007G\u0002\u0002\u177a\u177b\u0007E\u0002\u0002\u177b",
- "\u177c\u0007V\u0002\u0002\u177c\u177d\u0007K\u0002\u0002\u177d\u177e",
- "\u0007Q\u0002\u0002\u177e\u177f\u0007P\u0002\u0002\u177f\u0368\u0003",
- "\u0002\u0002\u0002\u1780\u1781\u0007E\u0002\u0002\u1781\u1782\u0007",
- "Q\u0002\u0002\u1782\u1783\u0007N\u0002\u0002\u1783\u1784\u0007W\u0002",
- "\u0002\u1784\u1785\u0007O\u0002\u0002\u1785\u1786\u0007P\u0002\u0002",
- "\u1786\u1787\u0007a\u0002\u0002\u1787\u1788\u0007O\u0002\u0002\u1788",
- "\u1789\u0007C\u0002\u0002\u1789\u178a\u0007U\u0002\u0002\u178a\u178b",
- "\u0007V\u0002\u0002\u178b\u178c\u0007G\u0002\u0002\u178c\u178d\u0007",
- "T\u0002\u0002\u178d\u178e\u0007a\u0002\u0002\u178e\u178f\u0007M\u0002",
- "\u0002\u178f\u1790\u0007G\u0002\u0002\u1790\u1791\u0007[\u0002\u0002",
- "\u1791\u036a\u0003\u0002\u0002\u0002\u1792\u1793\u0007E\u0002\u0002",
- "\u1793\u1794\u0007Q\u0002\u0002\u1794\u1795\u0007O\u0002\u0002\u1795",
- "\u1796\u0007O\u0002\u0002\u1796\u1797\u0007K\u0002\u0002\u1797\u1798",
- "\u0007V\u0002\u0002\u1798\u1799\u0007V\u0002\u0002\u1799\u179a\u0007",
- "G\u0002\u0002\u179a\u179b\u0007F\u0002\u0002\u179b\u036c\u0003\u0002",
- "\u0002\u0002\u179c\u179d\u0007E\u0002\u0002\u179d\u179e\u0007Q\u0002",
- "\u0002\u179e\u179f\u0007O\u0002\u0002\u179f\u17a0\u0007R\u0002\u0002",
- "\u17a0\u17a1\u0007C\u0002\u0002\u17a1\u17a2\u0007V\u0002\u0002\u17a2",
- "\u17a3\u0007K\u0002\u0002\u17a3\u17a4\u0007D\u0002\u0002\u17a4\u17a5",
- "\u0007K\u0002\u0002\u17a5\u17a6\u0007N\u0002\u0002\u17a6\u17a7\u0007",
- "K\u0002\u0002\u17a7\u17a8\u0007V\u0002\u0002\u17a8\u17a9\u0007[\u0002",
- "\u0002\u17a9\u17aa\u0007a\u0002\u0002\u17aa\u17ab\u0007N\u0002\u0002",
- "\u17ab\u17ac\u0007G\u0002\u0002\u17ac\u17ad\u0007X\u0002\u0002\u17ad",
- "\u17ae\u0007G\u0002\u0002\u17ae\u17af\u0007N\u0002\u0002\u17af\u036e",
- "\u0003\u0002\u0002\u0002\u17b0\u17b1\u0007E\u0002\u0002\u17b1\u17b2",
- "\u0007Q\u0002\u0002\u17b2\u17b3\u0007P\u0002\u0002\u17b3\u17b4\u0007",
- "E\u0002\u0002\u17b4\u17b5\u0007C\u0002\u0002\u17b5\u17b6\u0007V\u0002",
- "\u0002\u17b6\u0370\u0003\u0002\u0002\u0002\u17b7\u17b8\u0007E\u0002",
- "\u0002\u17b8\u17b9\u0007Q\u0002\u0002\u17b9\u17ba\u0007P\u0002\u0002",
- "\u17ba\u17bb\u0007E\u0002\u0002\u17bb\u17bc\u0007C\u0002\u0002\u17bc",
- "\u17bd\u0007V\u0002\u0002\u17bd\u17be\u0007a\u0002\u0002\u17be\u17bf",
- "\u0007P\u0002\u0002\u17bf\u17c0\u0007W\u0002\u0002\u17c0\u17c1\u0007",
- "N\u0002\u0002\u17c1\u17c2\u0007N\u0002\u0002\u17c2\u17c3\u0007a\u0002",
- "\u0002\u17c3\u17c4\u0007[\u0002\u0002\u17c4\u17c5\u0007K\u0002\u0002",
- "\u17c5\u17c6\u0007G\u0002\u0002\u17c6\u17c7\u0007N\u0002\u0002\u17c7",
- "\u17c8\u0007F\u0002\u0002\u17c8\u17c9\u0007U\u0002\u0002\u17c9\u17ca",
- "\u0007a\u0002\u0002\u17ca\u17cb\u0007P\u0002\u0002\u17cb\u17cc\u0007",
- "W\u0002\u0002\u17cc\u17cd\u0007N\u0002\u0002\u17cd\u17ce\u0007N\u0002",
- "\u0002\u17ce\u0372\u0003\u0002\u0002\u0002\u17cf\u17d0\u0007E\u0002",
- "\u0002\u17d0\u17d1\u0007Q\u0002\u0002\u17d1\u17d2\u0007P\u0002\u0002",
- "\u17d2\u17d3\u0007V\u0002\u0002\u17d3\u17d4\u0007G\u0002\u0002\u17d4",
- "\u17d5\u0007P\u0002\u0002\u17d5\u17d6\u0007V\u0002\u0002\u17d6\u0374",
- "\u0003\u0002\u0002\u0002\u17d7\u17d8\u0007E\u0002\u0002\u17d8\u17d9",
- "\u0007Q\u0002\u0002\u17d9\u17da\u0007P\u0002\u0002\u17da\u17db\u0007",
- "V\u0002\u0002\u17db\u17dc\u0007T\u0002\u0002\u17dc\u17dd\u0007Q\u0002",
- "\u0002\u17dd\u17de\u0007N\u0002\u0002\u17de\u0376\u0003\u0002\u0002",
- "\u0002\u17df\u17e0\u0007E\u0002\u0002\u17e0\u17e1\u0007Q\u0002\u0002",
- "\u17e1\u17e2\u0007Q\u0002\u0002\u17e2\u17e3\u0007M\u0002\u0002\u17e3",
- "\u17e4\u0007K\u0002\u0002\u17e4\u17e5\u0007G\u0002\u0002\u17e5\u0378",
- "\u0003\u0002\u0002\u0002\u17e6\u17e7\u0007E\u0002\u0002\u17e7\u17e8",
- "\u0007Q\u0002\u0002\u17e8\u17e9\u0007W\u0002\u0002\u17e9\u17ea\u0007",
- "P\u0002\u0002\u17ea\u17eb\u0007V\u0002\u0002\u17eb\u037a\u0003\u0002",
- "\u0002\u0002\u17ec\u17ed\u0007E\u0002\u0002\u17ed\u17ee\u0007Q\u0002",
- "\u0002\u17ee\u17ef\u0007W\u0002\u0002\u17ef\u17f0\u0007P\u0002\u0002",
- "\u17f0\u17f1\u0007V\u0002\u0002\u17f1\u17f2\u0007a\u0002\u0002\u17f2",
- "\u17f3\u0007D\u0002\u0002\u17f3\u17f4\u0007K\u0002\u0002\u17f4\u17f5",
- "\u0007I\u0002\u0002\u17f5\u037c\u0003\u0002\u0002\u0002\u17f6\u17f7",
- "\u0007E\u0002\u0002\u17f7\u17f8\u0007Q\u0002\u0002\u17f8\u17f9\u0007",
- "W\u0002\u0002\u17f9\u17fa\u0007P\u0002\u0002\u17fa\u17fb\u0007V\u0002",
- "\u0002\u17fb\u17fc\u0007G\u0002\u0002\u17fc\u17fd\u0007T\u0002\u0002",
- "\u17fd\u037e\u0003\u0002\u0002\u0002\u17fe\u17ff\u0007E\u0002\u0002",
- "\u17ff\u1800\u0007R\u0002\u0002\u1800\u1801\u0007W\u0002\u0002\u1801",
- "\u0380\u0003\u0002\u0002\u0002\u1802\u1803\u0007E\u0002\u0002\u1803",
- "\u1804\u0007T\u0002\u0002\u1804\u1805\u0007G\u0002\u0002\u1805\u1806",
- "\u0007C\u0002\u0002\u1806\u1807\u0007V\u0002\u0002\u1807\u1808\u0007",
- "G\u0002\u0002\u1808\u1809\u0007a\u0002\u0002\u1809\u180a\u0007P\u0002",
- "\u0002\u180a\u180b\u0007G\u0002\u0002\u180b\u180c\u0007Y\u0002\u0002",
- "\u180c\u0382\u0003\u0002\u0002\u0002\u180d\u180e\u0007E\u0002\u0002",
- "\u180e\u180f\u0007T\u0002\u0002\u180f\u1810\u0007G\u0002\u0002\u1810",
- "\u1811\u0007C\u0002\u0002\u1811\u1812\u0007V\u0002\u0002\u1812\u1813",
- "\u0007K\u0002\u0002\u1813\u1814\u0007Q\u0002\u0002\u1814\u1815\u0007",
- "P\u0002\u0002\u1815\u1816\u0007a\u0002\u0002\u1816\u1817\u0007F\u0002",
- "\u0002\u1817\u1818\u0007K\u0002\u0002\u1818\u1819\u0007U\u0002\u0002",
- "\u1819\u181a\u0007R\u0002\u0002\u181a\u181b\u0007Q\u0002\u0002\u181b",
- "\u181c\u0007U\u0002\u0002\u181c\u181d\u0007K\u0002\u0002\u181d\u181e",
- "\u0007V\u0002\u0002\u181e\u181f\u0007K\u0002\u0002\u181f\u1820\u0007",
- "Q\u0002\u0002\u1820\u1821\u0007P\u0002\u0002\u1821\u0384\u0003\u0002",
- "\u0002\u0002\u1822\u1823\u0007E\u0002\u0002\u1823\u1824\u0007T\u0002",
- "\u0002\u1824\u1825\u0007G\u0002\u0002\u1825\u1826\u0007F\u0002\u0002",
- "\u1826\u1827\u0007G\u0002\u0002\u1827\u1828\u0007P\u0002\u0002\u1828",
- "\u1829\u0007V\u0002\u0002\u1829\u182a\u0007K\u0002\u0002\u182a\u182b",
- "\u0007C\u0002\u0002\u182b\u182c\u0007N\u0002\u0002\u182c\u0386\u0003",
- "\u0002\u0002\u0002\u182d\u182e\u0007E\u0002\u0002\u182e\u182f\u0007",
- "T\u0002\u0002\u182f\u1830\u0007[\u0002\u0002\u1830\u1831\u0007R\u0002",
- "\u0002\u1831\u1832\u0007V\u0002\u0002\u1832\u1833\u0007Q\u0002\u0002",
- "\u1833\u1834\u0007I\u0002\u0002\u1834\u1835\u0007T\u0002\u0002\u1835",
- "\u1836\u0007C\u0002\u0002\u1836\u1837\u0007R\u0002\u0002\u1837\u1838",
- "\u0007J\u0002\u0002\u1838\u1839\u0007K\u0002\u0002\u1839\u183a\u0007",
- "E\u0002\u0002\u183a\u0388\u0003\u0002\u0002\u0002\u183b\u183c\u0007",
- "E\u0002\u0002\u183c\u183d\u0007W\u0002\u0002\u183d\u183e\u0007T\u0002",
- "\u0002\u183e\u183f\u0007U\u0002\u0002\u183f\u1840\u0007Q\u0002\u0002",
- "\u1840\u1841\u0007T\u0002\u0002\u1841\u1842\u0007a\u0002\u0002\u1842",
- "\u1843\u0007E\u0002\u0002\u1843\u1844\u0007N\u0002\u0002\u1844\u1845",
- "\u0007Q\u0002\u0002\u1845\u1846\u0007U\u0002\u0002\u1846\u1847\u0007",
- "G\u0002\u0002\u1847\u1848\u0007a\u0002\u0002\u1848\u1849\u0007Q\u0002",
- "\u0002\u1849\u184a\u0007P\u0002\u0002\u184a\u184b\u0007a\u0002\u0002",
- "\u184b\u184c\u0007E\u0002\u0002\u184c\u184d\u0007Q\u0002\u0002\u184d",
- "\u184e\u0007O\u0002\u0002\u184e\u184f\u0007O\u0002\u0002\u184f\u1850",
- "\u0007K\u0002\u0002\u1850\u1851\u0007V\u0002\u0002\u1851\u038a\u0003",
- "\u0002\u0002\u0002\u1852\u1853\u0007E\u0002\u0002\u1853\u1854\u0007",
- "W\u0002\u0002\u1854\u1855\u0007T\u0002\u0002\u1855\u1856\u0007U\u0002",
- "\u0002\u1856\u1857\u0007Q\u0002\u0002\u1857\u1858\u0007T\u0002\u0002",
- "\u1858\u1859\u0007a\u0002\u0002\u1859\u185a\u0007F\u0002\u0002\u185a",
- "\u185b\u0007G\u0002\u0002\u185b\u185c\u0007H\u0002\u0002\u185c\u185d",
- "\u0007C\u0002\u0002\u185d\u185e\u0007W\u0002\u0002\u185e\u185f\u0007",
- "N\u0002\u0002\u185f\u1860\u0007V\u0002\u0002\u1860\u038c\u0003\u0002",
- "\u0002\u0002\u1861\u1862\u0007F\u0002\u0002\u1862\u1863\u0007C\u0002",
- "\u0002\u1863\u1864\u0007V\u0002\u0002\u1864\u1865\u0007C\u0002\u0002",
- "\u1865\u038e\u0003\u0002\u0002\u0002\u1866\u1867\u0007F\u0002\u0002",
- "\u1867\u1868\u0007C\u0002\u0002\u1868\u1869\u0007V\u0002\u0002\u1869",
- "\u186a\u0007G\u0002\u0002\u186a\u186b\u0007a\u0002\u0002\u186b\u186c",
- "\u0007E\u0002\u0002\u186c\u186d\u0007Q\u0002\u0002\u186d\u186e\u0007",
- "T\u0002\u0002\u186e\u186f\u0007T\u0002\u0002\u186f\u1870\u0007G\u0002",
- "\u0002\u1870\u1871\u0007N\u0002\u0002\u1871\u1872\u0007C\u0002\u0002",
- "\u1872\u1873\u0007V\u0002\u0002\u1873\u1874\u0007K\u0002\u0002\u1874",
- "\u1875\u0007Q\u0002\u0002\u1875\u1876\u0007P\u0002\u0002\u1876\u1877",
- "\u0007a\u0002\u0002\u1877\u1878\u0007Q\u0002\u0002\u1878\u1879\u0007",
- "R\u0002\u0002\u1879\u187a\u0007V\u0002\u0002\u187a\u187b\u0007K\u0002",
- "\u0002\u187b\u187c\u0007O\u0002\u0002\u187c\u187d\u0007K\u0002\u0002",
- "\u187d\u187e\u0007\\\u0002\u0002\u187e\u187f\u0007C\u0002\u0002\u187f",
- "\u1880\u0007V\u0002\u0002\u1880\u1881\u0007K\u0002\u0002\u1881\u1882",
- "\u0007Q\u0002\u0002\u1882\u1883\u0007P\u0002\u0002\u1883\u0390\u0003",
- "\u0002\u0002\u0002\u1884\u1885\u0007F\u0002\u0002\u1885\u1886\u0007",
- "C\u0002\u0002\u1886\u1887\u0007V\u0002\u0002\u1887\u1888\u0007G\u0002",
- "\u0002\u1888\u1889\u0007C\u0002\u0002\u1889\u188a\u0007F\u0002\u0002",
- "\u188a\u188b\u0007F\u0002\u0002\u188b\u0392\u0003\u0002\u0002\u0002",
- "\u188c\u188d\u0007F\u0002\u0002\u188d\u188e\u0007C\u0002\u0002\u188e",
- "\u188f\u0007V\u0002\u0002\u188f\u1890\u0007G\u0002\u0002\u1890\u1891",
- "\u0007F\u0002\u0002\u1891\u1892\u0007K\u0002\u0002\u1892\u1893\u0007",
- "H\u0002\u0002\u1893\u1894\u0007H\u0002\u0002\u1894\u0394\u0003\u0002",
- "\u0002\u0002\u1895\u1896\u0007F\u0002\u0002\u1896\u1897\u0007C\u0002",
- "\u0002\u1897\u1898\u0007V\u0002\u0002\u1898\u1899\u0007G\u0002\u0002",
- "\u1899\u189a\u0007P\u0002\u0002\u189a\u189b\u0007C\u0002\u0002\u189b",
- "\u189c\u0007O\u0002\u0002\u189c\u189d\u0007G\u0002\u0002\u189d\u0396",
- "\u0003\u0002\u0002\u0002\u189e\u189f\u0007F\u0002\u0002\u189f\u18a0",
- "\u0007C\u0002\u0002\u18a0\u18a1\u0007V\u0002\u0002\u18a1\u18a2\u0007",
- "G\u0002\u0002\u18a2\u18a3\u0007R\u0002\u0002\u18a3\u18a4\u0007C\u0002",
- "\u0002\u18a4\u18a5\u0007T\u0002\u0002\u18a5\u18a6\u0007V\u0002\u0002",
- "\u18a6\u0398\u0003\u0002\u0002\u0002\u18a7\u18a8\u0007F\u0002\u0002",
- "\u18a8\u18a9\u0007C\u0002\u0002\u18a9\u18aa\u0007[\u0002\u0002\u18aa",
- "\u18ab\u0007U\u0002\u0002\u18ab\u039a\u0003\u0002\u0002\u0002\u18ac",
- "\u18ad\u0007F\u0002\u0002\u18ad\u18ae\u0007D\u0002\u0002\u18ae\u18af",
- "\u0007a\u0002\u0002\u18af\u18b0\u0007E\u0002\u0002\u18b0\u18b1\u0007",
- "J\u0002\u0002\u18b1\u18b2\u0007C\u0002\u0002\u18b2\u18b3\u0007K\u0002",
- "\u0002\u18b3\u18b4\u0007P\u0002\u0002\u18b4\u18b5\u0007K\u0002\u0002",
- "\u18b5\u18b6\u0007P\u0002\u0002\u18b6\u18b7\u0007I\u0002\u0002\u18b7",
- "\u039c\u0003\u0002\u0002\u0002\u18b8\u18b9\u0007F\u0002\u0002\u18b9",
- "\u18ba\u0007D\u0002\u0002\u18ba\u18bb\u0007a\u0002\u0002\u18bb\u18bc",
- "\u0007H\u0002\u0002\u18bc\u18bd\u0007C\u0002\u0002\u18bd\u18be\u0007",
- "K\u0002\u0002\u18be\u18bf\u0007N\u0002\u0002\u18bf\u18c0\u0007Q\u0002",
- "\u0002\u18c0\u18c1\u0007X\u0002\u0002\u18c1\u18c2\u0007G\u0002\u0002",
- "\u18c2\u18c3\u0007T\u0002\u0002\u18c3\u039e\u0003\u0002\u0002\u0002",
- "\u18c4\u18c5\u0007F\u0002\u0002\u18c5\u18c6\u0007G\u0002\u0002\u18c6",
- "\u18c7\u0007E\u0002\u0002\u18c7\u18c8\u0007T\u0002\u0002\u18c8\u18c9",
- "\u0007[\u0002\u0002\u18c9\u18ca\u0007R\u0002\u0002\u18ca\u18cb\u0007",
- "V\u0002\u0002\u18cb\u18cc\u0007K\u0002\u0002\u18cc\u18cd\u0007Q\u0002",
- "\u0002\u18cd\u18ce\u0007P\u0002\u0002\u18ce\u03a0\u0003\u0002\u0002",
- "\u0002\u18cf\u18d0\t\u0005\u0002\u0002\u18d0\u18d1\u0007F\u0002\u0002",
- "\u18d1\u18d2\u0007G\u0002\u0002\u18d2\u18d3\u0007H\u0002\u0002\u18d3",
- "\u18d4\u0007C\u0002\u0002\u18d4\u18d5\u0007W\u0002\u0002\u18d5\u18d6",
- "\u0007N\u0002\u0002\u18d6\u18d7\u0007V\u0002\u0002\u18d7\u18d8\u0003",
- "\u0002\u0002\u0002\u18d8\u18d9\t\u0005\u0002\u0002\u18d9\u03a2\u0003",
- "\u0002\u0002\u0002\u18da\u18db\u0007F\u0002\u0002\u18db\u18dc\u0007",
- "G\u0002\u0002\u18dc\u18dd\u0007H\u0002\u0002\u18dd\u18de\u0007C\u0002",
- "\u0002\u18de\u18df\u0007W\u0002\u0002\u18df\u18e0\u0007N\u0002\u0002",
- "\u18e0\u18e1\u0007V\u0002\u0002\u18e1\u18e2\u0007a\u0002\u0002\u18e2",
- "\u18e3\u0007H\u0002\u0002\u18e3\u18e4\u0007W\u0002\u0002\u18e4\u18e5",
- "\u0007N\u0002\u0002\u18e5\u18e6\u0007N\u0002\u0002\u18e6\u18e7\u0007",
- "V\u0002\u0002\u18e7\u18e8\u0007G\u0002\u0002\u18e8\u18e9\u0007Z\u0002",
- "\u0002\u18e9\u18ea\u0007V\u0002\u0002\u18ea\u18eb\u0007a\u0002\u0002",
- "\u18eb\u18ec\u0007N\u0002\u0002\u18ec\u18ed\u0007C\u0002\u0002\u18ed",
- "\u18ee\u0007P\u0002\u0002\u18ee\u18ef\u0007I\u0002\u0002\u18ef\u18f0",
- "\u0007W\u0002\u0002\u18f0\u18f1\u0007C\u0002\u0002\u18f1\u18f2\u0007",
- "I\u0002\u0002\u18f2\u18f3\u0007G\u0002\u0002\u18f3\u03a4\u0003\u0002",
- "\u0002\u0002\u18f4\u18f5\u0007F\u0002\u0002\u18f5\u18f6\u0007G\u0002",
- "\u0002\u18f6\u18f7\u0007H\u0002\u0002\u18f7\u18f8\u0007C\u0002\u0002",
- "\u18f8\u18f9\u0007W\u0002\u0002\u18f9\u18fa\u0007N\u0002\u0002\u18fa",
- "\u18fb\u0007V\u0002\u0002\u18fb\u18fc\u0007a\u0002\u0002\u18fc\u18fd",
- "\u0007N\u0002\u0002\u18fd\u18fe\u0007C\u0002\u0002\u18fe\u18ff\u0007",
- "P\u0002\u0002\u18ff\u1900\u0007I\u0002\u0002\u1900\u1901\u0007W\u0002",
- "\u0002\u1901\u1902\u0007C\u0002\u0002\u1902\u1903\u0007I\u0002\u0002",
- "\u1903\u1904\u0007G\u0002\u0002\u1904\u03a6\u0003\u0002\u0002\u0002",
- "\u1905\u1906\u0007F\u0002\u0002\u1906\u1907\u0007G\u0002\u0002\u1907",
- "\u1908\u0007N\u0002\u0002\u1908\u1909\u0007C\u0002\u0002\u1909\u190a",
- "\u0007[\u0002\u0002\u190a\u03a8\u0003\u0002\u0002\u0002\u190b\u190c",
- "\u0007F\u0002\u0002\u190c\u190d\u0007G\u0002\u0002\u190d\u190e\u0007",
- "N\u0002\u0002\u190e\u190f\u0007C\u0002\u0002\u190f\u1910\u0007[\u0002",
- "\u0002\u1910\u1911\u0007G\u0002\u0002\u1911\u1912\u0007F\u0002\u0002",
- "\u1912\u1913\u0007a\u0002\u0002\u1913\u1914\u0007F\u0002\u0002\u1914",
- "\u1915\u0007W\u0002\u0002\u1915\u1916\u0007T\u0002\u0002\u1916\u1917",
- "\u0007C\u0002\u0002\u1917\u1918\u0007D\u0002\u0002\u1918\u1919\u0007",
- "K\u0002\u0002\u1919\u191a\u0007N\u0002\u0002\u191a\u191b\u0007K\u0002",
- "\u0002\u191b\u191c\u0007V\u0002\u0002\u191c\u191d\u0007[\u0002\u0002",
- "\u191d\u03aa\u0003\u0002\u0002\u0002\u191e\u191f\u0007F\u0002\u0002",
- "\u191f\u1920\u0007G\u0002\u0002\u1920\u1921\u0007N\u0002\u0002\u1921",
- "\u1922\u0007G\u0002\u0002\u1922\u1923\u0007V\u0002\u0002\u1923\u1924",
- "\u0007G\u0002\u0002\u1924\u1925\u0007F\u0002\u0002\u1925\u03ac\u0003",
- "\u0002\u0002\u0002\u1926\u1927\u0007F\u0002\u0002\u1927\u1928\u0007",
- "G\u0002\u0002\u1928\u1929\u0007P\u0002\u0002\u1929\u192a\u0007U\u0002",
- "\u0002\u192a\u192b\u0007G\u0002\u0002\u192b\u192c\u0007a\u0002\u0002",
- "\u192c\u192d\u0007T\u0002\u0002\u192d\u192e\u0007C\u0002\u0002\u192e",
- "\u192f\u0007P\u0002\u0002\u192f\u1930\u0007M\u0002\u0002\u1930\u03ae",
- "\u0003\u0002\u0002\u0002\u1931\u1932\u0007F\u0002\u0002\u1932\u1933",
- "\u0007G\u0002\u0002\u1933\u1934\u0007R\u0002\u0002\u1934\u1935\u0007",
- "G\u0002\u0002\u1935\u1936\u0007P\u0002\u0002\u1936\u1937\u0007F\u0002",
- "\u0002\u1937\u1938\u0007G\u0002\u0002\u1938\u1939\u0007P\u0002\u0002",
- "\u1939\u193a\u0007V\u0002\u0002\u193a\u193b\u0007U\u0002\u0002\u193b",
- "\u03b0\u0003\u0002\u0002\u0002\u193c\u193d\u0007F\u0002\u0002\u193d",
- "\u193e\u0007G\u0002\u0002\u193e\u193f\u0007U\u0002\u0002\u193f\u03b2",
- "\u0003\u0002\u0002\u0002\u1940\u1941\u0007F\u0002\u0002\u1941\u1942",
- "\u0007G\u0002\u0002\u1942\u1943\u0007U\u0002\u0002\u1943\u1944\u0007",
- "E\u0002\u0002\u1944\u1945\u0007T\u0002\u0002\u1945\u1946\u0007K\u0002",
- "\u0002\u1946\u1947\u0007R\u0002\u0002\u1947\u1948\u0007V\u0002\u0002",
- "\u1948\u1949\u0007K\u0002\u0002\u1949\u194a\u0007Q\u0002\u0002\u194a",
- "\u194b\u0007P\u0002\u0002\u194b\u03b4\u0003\u0002\u0002\u0002\u194c",
- "\u194d\u0007F\u0002\u0002\u194d\u194e\u0007G\u0002\u0002\u194e\u194f",
- "\u0007U\u0002\u0002\u194f\u1950\u0007Z\u0002\u0002\u1950\u03b6\u0003",
- "\u0002\u0002\u0002\u1951\u1952\u0007F\u0002\u0002\u1952\u1953\u0007",
- "J\u0002\u0002\u1953\u1954\u0007E\u0002\u0002\u1954\u1955\u0007R\u0002",
- "\u0002\u1955\u03b8\u0003\u0002\u0002\u0002\u1956\u1957\u0007F\u0002",
- "\u0002\u1957\u1958\u0007K\u0002\u0002\u1958\u1959\u0007C\u0002\u0002",
- "\u1959\u195a\u0007N\u0002\u0002\u195a\u195b\u0007Q\u0002\u0002\u195b",
- "\u195c\u0007I\u0002\u0002\u195c\u03ba\u0003\u0002\u0002\u0002\u195d",
- "\u195e\u0007F\u0002\u0002\u195e\u195f\u0007K\u0002\u0002\u195f\u1960",
- "\u0007T\u0002\u0002\u1960\u1961\u0007G\u0002\u0002\u1961\u1962\u0007",
- "E\u0002\u0002\u1962\u1963\u0007V\u0002\u0002\u1963\u1964\u0007Q\u0002",
- "\u0002\u1964\u1965\u0007T\u0002\u0002\u1965\u1966\u0007[\u0002\u0002",
- "\u1966\u1967\u0007a\u0002\u0002\u1967\u1968\u0007P\u0002\u0002\u1968",
- "\u1969\u0007C\u0002\u0002\u1969\u196a\u0007O\u0002\u0002\u196a\u196b",
- "\u0007G\u0002\u0002\u196b\u03bc\u0003\u0002\u0002\u0002\u196c\u196d",
- "\u0007F\u0002\u0002\u196d\u196e\u0007K\u0002\u0002\u196e\u196f\u0007",
- "U\u0002\u0002\u196f\u1970\u0007C\u0002\u0002\u1970\u1971\u0007D\u0002",
- "\u0002\u1971\u1972\u0007N\u0002\u0002\u1972\u1973\u0007G\u0002\u0002",
- "\u1973\u03be\u0003\u0002\u0002\u0002\u1974\u1975\u0007F\u0002\u0002",
- "\u1975\u1976\u0007K\u0002\u0002\u1976\u1977\u0007U\u0002\u0002\u1977",
- "\u1978\u0007C\u0002\u0002\u1978\u1979\u0007D\u0002\u0002\u1979\u197a",
- "\u0007N\u0002\u0002\u197a\u197b\u0007G\u0002\u0002\u197b\u197c\u0007",
- "a\u0002\u0002\u197c\u197d\u0007D\u0002\u0002\u197d\u197e\u0007T\u0002",
- "\u0002\u197e\u197f\u0007Q\u0002\u0002\u197f\u1980\u0007M\u0002\u0002",
- "\u1980\u1981\u0007G\u0002\u0002\u1981\u1982\u0007T\u0002\u0002\u1982",
- "\u03c0\u0003\u0002\u0002\u0002\u1983\u1984\u0007F\u0002\u0002\u1984",
- "\u1985\u0007K\u0002\u0002\u1985\u1986\u0007U\u0002\u0002\u1986\u1987",
- "\u0007C\u0002\u0002\u1987\u1988\u0007D\u0002\u0002\u1988\u1989\u0007",
- "N\u0002\u0002\u1989\u198a\u0007G\u0002\u0002\u198a\u198b\u0007F\u0002",
- "\u0002\u198b\u03c2\u0003\u0002\u0002\u0002\u198c\u198d\t\u0006\u0002",
- "\u0002\u198d\u198e\t\u0004\u0002\u0002\u198e\u03c4\u0003\u0002\u0002",
- "\u0002\u198f\u1990\u0007F\u0002\u0002\u1990\u1991\u0007Q\u0002\u0002",
- "\u1991\u1992\u0007E\u0002\u0002\u1992\u1993\u0007W\u0002\u0002\u1993",
- "\u1994\u0007O\u0002\u0002\u1994\u1995\u0007G\u0002\u0002\u1995\u1996",
- "\u0007P\u0002\u0002\u1996\u1997\u0007V\u0002\u0002\u1997\u03c6\u0003",
- "\u0002\u0002\u0002\u1998\u1999\u0007F\u0002\u0002\u1999\u199a\u0007",
- "[\u0002\u0002\u199a\u199b\u0007P\u0002\u0002\u199b\u199c\u0007C\u0002",
- "\u0002\u199c\u199d\u0007O\u0002\u0002\u199d\u199e\u0007K\u0002\u0002",
- "\u199e\u199f\u0007E\u0002\u0002\u199f\u03c8\u0003\u0002\u0002\u0002",
- "\u19a0\u19a1\u0007G\u0002\u0002\u19a1\u19a2\u0007N\u0002\u0002\u19a2",
- "\u19a3\u0007G\u0002\u0002\u19a3\u19a4\u0007O\u0002\u0002\u19a4\u19a5",
- "\u0007G\u0002\u0002\u19a5\u19a6\u0007P\u0002\u0002\u19a6\u19a7\u0007",
- "V\u0002\u0002\u19a7\u19a8\u0007U\u0002\u0002\u19a8\u03ca\u0003\u0002",
- "\u0002\u0002\u19a9\u19aa\u0007G\u0002\u0002\u19aa\u19ab\u0007O\u0002",
- "\u0002\u19ab\u19ac\u0007G\u0002\u0002\u19ac\u19ad\u0007T\u0002\u0002",
- "\u19ad\u19ae\u0007I\u0002\u0002\u19ae\u19af\u0007G\u0002\u0002\u19af",
- "\u19b0\u0007P\u0002\u0002\u19b0\u19b1\u0007E\u0002\u0002\u19b1\u19b2",
- "\u0007[\u0002\u0002\u19b2\u03cc\u0003\u0002\u0002\u0002\u19b3\u19b4",
- "\u0007G\u0002\u0002\u19b4\u19b5\u0007O\u0002\u0002\u19b5\u19b6\u0007",
- "R\u0002\u0002\u19b6\u19b7\u0007V\u0002\u0002\u19b7\u19b8\u0007[\u0002",
- "\u0002\u19b8\u03ce\u0003\u0002\u0002\u0002\u19b9\u19ba\u0007G\u0002",
- "\u0002\u19ba\u19bb\u0007P\u0002\u0002\u19bb\u19bc\u0007C\u0002\u0002",
- "\u19bc\u19bd\u0007D\u0002\u0002\u19bd\u19be\u0007N\u0002\u0002\u19be",
- "\u19bf\u0007G\u0002\u0002\u19bf\u03d0\u0003\u0002\u0002\u0002\u19c0",
- "\u19c1\u0007G\u0002\u0002\u19c1\u19c2\u0007P\u0002\u0002\u19c2\u19c3",
- "\u0007C\u0002\u0002\u19c3\u19c4\u0007D\u0002\u0002\u19c4\u19c5\u0007",
- "N\u0002\u0002\u19c5\u19c6\u0007G\u0002\u0002\u19c6\u19c7\u0007a\u0002",
- "\u0002\u19c7\u19c8\u0007D\u0002\u0002\u19c8\u19c9\u0007T\u0002\u0002",
- "\u19c9\u19ca\u0007Q\u0002\u0002\u19ca\u19cb\u0007M\u0002\u0002\u19cb",
- "\u19cc\u0007G\u0002\u0002\u19cc\u19cd\u0007T\u0002\u0002\u19cd\u03d2",
- "\u0003\u0002\u0002\u0002\u19ce\u19cf\u0007G\u0002\u0002\u19cf\u19d0",
- "\u0007P\u0002\u0002\u19d0\u19d1\u0007E\u0002\u0002\u19d1\u19d2\u0007",
- "T\u0002\u0002\u19d2\u19d3\u0007[\u0002\u0002\u19d3\u19d4\u0007R\u0002",
- "\u0002\u19d4\u19d5\u0007V\u0002\u0002\u19d5\u19d6\u0007G\u0002\u0002",
- "\u19d6\u19d7\u0007F\u0002\u0002\u19d7\u19d8\u0007a\u0002\u0002\u19d8",
- "\u19d9\u0007X\u0002\u0002\u19d9\u19da\u0007C\u0002\u0002\u19da\u19db",
- "\u0007N\u0002\u0002\u19db\u19dc\u0007W\u0002\u0002\u19dc\u19dd\u0007",
- "G\u0002\u0002\u19dd\u03d4\u0003\u0002\u0002\u0002\u19de\u19df\u0007",
- "G\u0002\u0002\u19df\u19e0\u0007P\u0002\u0002\u19e0\u19e1\u0007E\u0002",
- "\u0002\u19e1\u19e2\u0007T\u0002\u0002\u19e2\u19e3\u0007[\u0002\u0002",
- "\u19e3\u19e4\u0007R\u0002\u0002\u19e4\u19e5\u0007V\u0002\u0002\u19e5",
- "\u19e6\u0007K\u0002\u0002\u19e6\u19e7\u0007Q\u0002\u0002\u19e7\u19e8",
- "\u0007P\u0002\u0002\u19e8\u03d6\u0003\u0002\u0002\u0002\u19e9\u19ea",
- "\u0007G\u0002\u0002\u19ea\u19eb\u0007P\u0002\u0002\u19eb\u19ec\u0007",
- "F\u0002\u0002\u19ec\u19ed\u0007R\u0002\u0002\u19ed\u19ee\u0007Q\u0002",
- "\u0002\u19ee\u19ef\u0007K\u0002\u0002\u19ef\u19f0\u0007P\u0002\u0002",
- "\u19f0\u19f1\u0007V\u0002\u0002\u19f1\u19f2\u0007a\u0002\u0002\u19f2",
- "\u19f3\u0007W\u0002\u0002\u19f3\u19f4\u0007T\u0002\u0002\u19f4\u19f5",
- "\u0007N\u0002\u0002\u19f5\u03d8\u0003\u0002\u0002\u0002\u19f6\u19f7",
- "\u0007G\u0002\u0002\u19f7\u19f8\u0007T\u0002\u0002\u19f8\u19f9\u0007",
- "T\u0002\u0002\u19f9\u19fa\u0007Q\u0002\u0002\u19fa\u19fb\u0007T\u0002",
- "\u0002\u19fb\u19fc\u0007a\u0002\u0002\u19fc\u19fd\u0007D\u0002\u0002",
- "\u19fd\u19fe\u0007T\u0002\u0002\u19fe\u19ff\u0007Q\u0002\u0002\u19ff",
- "\u1a00\u0007M\u0002\u0002\u1a00\u1a01\u0007G\u0002\u0002\u1a01\u1a02",
- "\u0007T\u0002\u0002\u1a02\u1a03\u0007a\u0002\u0002\u1a03\u1a04\u0007",
- "E\u0002\u0002\u1a04\u1a05\u0007Q\u0002\u0002\u1a05\u1a06\u0007P\u0002",
- "\u0002\u1a06\u1a07\u0007X\u0002\u0002\u1a07\u1a08\u0007G\u0002\u0002",
- "\u1a08\u1a09\u0007T\u0002\u0002\u1a09\u1a0a\u0007U\u0002\u0002\u1a0a",
- "\u1a0b\u0007C\u0002\u0002\u1a0b\u1a0c\u0007V\u0002\u0002\u1a0c\u1a0d",
- "\u0007K\u0002\u0002\u1a0d\u1a0e\u0007Q\u0002\u0002\u1a0e\u1a0f\u0007",
- "P\u0002\u0002\u1a0f\u1a10\u0007U\u0002\u0002\u1a10\u03da\u0003\u0002",
- "\u0002\u0002\u1a11\u1a12\u0007G\u0002\u0002\u1a12\u1a13\u0007Z\u0002",
- "\u0002\u1a13\u1a14\u0007E\u0002\u0002\u1a14\u1a15\u0007N\u0002\u0002",
- "\u1a15\u1a16\u0007W\u0002\u0002\u1a16\u1a17\u0007U\u0002\u0002\u1a17",
- "\u1a18\u0007K\u0002\u0002\u1a18\u1a19\u0007X\u0002\u0002\u1a19\u1a1a",
- "\u0007G\u0002\u0002\u1a1a\u03dc\u0003\u0002\u0002\u0002\u1a1b\u1a1c",
- "\u0007G\u0002\u0002\u1a1c\u1a1d\u0007Z\u0002\u0002\u1a1d\u1a1e\u0007",
- "G\u0002\u0002\u1a1e\u1a1f\u0007E\u0002\u0002\u1a1f\u1a20\u0007W\u0002",
- "\u0002\u1a20\u1a21\u0007V\u0002\u0002\u1a21\u1a22\u0007C\u0002\u0002",
- "\u1a22\u1a23\u0007D\u0002\u0002\u1a23\u1a24\u0007N\u0002\u0002\u1a24",
- "\u1a25\u0007G\u0002\u0002\u1a25\u03de\u0003\u0002\u0002\u0002\u1a26",
- "\u1a27\u0007G\u0002\u0002\u1a27\u1a28\u0007Z\u0002\u0002\u1a28\u1a29",
- "\u0007K\u0002\u0002\u1a29\u1a2a\u0007U\u0002\u0002\u1a2a\u1a2b\u0007",
- "V\u0002\u0002\u1a2b\u03e0\u0003\u0002\u0002\u0002\u1a2c\u1a2d\u0007",
- "G\u0002\u0002\u1a2d\u1a2e\u0007Z\u0002\u0002\u1a2e\u1a2f\u0007R\u0002",
- "\u0002\u1a2f\u1a30\u0007C\u0002\u0002\u1a30\u1a31\u0007P\u0002\u0002",
- "\u1a31\u1a32\u0007F\u0002\u0002\u1a32\u03e2\u0003\u0002\u0002\u0002",
- "\u1a33\u1a34\u0007G\u0002\u0002\u1a34\u1a35\u0007Z\u0002\u0002\u1a35",
- "\u1a36\u0007R\u0002\u0002\u1a36\u1a37\u0007K\u0002\u0002\u1a37\u1a38",
- "\u0007T\u0002\u0002\u1a38\u1a39\u0007[\u0002\u0002\u1a39\u1a3a\u0007",
- "a\u0002\u0002\u1a3a\u1a3b\u0007F\u0002\u0002\u1a3b\u1a3c\u0007C\u0002",
- "\u0002\u1a3c\u1a3d\u0007V\u0002\u0002\u1a3d\u1a3e\u0007G\u0002\u0002",
- "\u1a3e\u03e4\u0003\u0002\u0002\u0002\u1a3f\u1a40\u0007G\u0002\u0002",
- "\u1a40\u1a41\u0007Z\u0002\u0002\u1a41\u1a42\u0007R\u0002\u0002\u1a42",
- "\u1a43\u0007N\u0002\u0002\u1a43\u1a44\u0007K\u0002\u0002\u1a44\u1a45",
- "\u0007E\u0002\u0002\u1a45\u1a46\u0007K\u0002\u0002\u1a46\u1a47\u0007",
- "V\u0002\u0002\u1a47\u03e6\u0003\u0002\u0002\u0002\u1a48\u1a49\u0007",
- "H\u0002\u0002\u1a49\u1a4a\u0007C\u0002\u0002\u1a4a\u1a4b\u0007K\u0002",
- "\u0002\u1a4b\u1a4c\u0007N\u0002\u0002\u1a4c\u1a4d\u0007a\u0002\u0002",
- "\u1a4d\u1a4e\u0007Q\u0002\u0002\u1a4e\u1a4f\u0007R\u0002\u0002\u1a4f",
- "\u1a50\u0007G\u0002\u0002\u1a50\u1a51\u0007T\u0002\u0002\u1a51\u1a52",
- "\u0007C\u0002\u0002\u1a52\u1a53\u0007V\u0002\u0002\u1a53\u1a54\u0007",
- "K\u0002\u0002\u1a54\u1a55\u0007Q\u0002\u0002\u1a55\u1a56\u0007P\u0002",
- "\u0002\u1a56\u03e8\u0003\u0002\u0002\u0002\u1a57\u1a58\u0007H\u0002",
- "\u0002\u1a58\u1a59\u0007C\u0002\u0002\u1a59\u1a5a\u0007K\u0002\u0002",
- "\u1a5a\u1a5b\u0007N\u0002\u0002\u1a5b\u1a5c\u0007Q\u0002\u0002\u1a5c",
- "\u1a5d\u0007X\u0002\u0002\u1a5d\u1a5e\u0007G\u0002\u0002\u1a5e\u1a5f",
- "\u0007T\u0002\u0002\u1a5f\u1a60\u0007a\u0002\u0002\u1a60\u1a61\u0007",
- "O\u0002\u0002\u1a61\u1a62\u0007Q\u0002\u0002\u1a62\u1a63\u0007F\u0002",
- "\u0002\u1a63\u1a64\u0007G\u0002\u0002\u1a64\u03ea\u0003\u0002\u0002",
- "\u0002\u1a65\u1a66\u0007H\u0002\u0002\u1a66\u1a67\u0007C\u0002\u0002",
- "\u1a67\u1a68\u0007K\u0002\u0002\u1a68\u1a69\u0007N\u0002\u0002\u1a69",
- "\u1a6a\u0007W\u0002\u0002\u1a6a\u1a6b\u0007T\u0002\u0002\u1a6b\u1a6c",
- "\u0007G\u0002\u0002\u1a6c\u03ec\u0003\u0002\u0002\u0002\u1a6d\u1a6e",
- "\u0007H\u0002\u0002\u1a6e\u1a6f\u0007C\u0002\u0002\u1a6f\u1a70\u0007",
- "K\u0002\u0002\u1a70\u1a71\u0007N\u0002\u0002\u1a71\u1a72\u0007W\u0002",
- "\u0002\u1a72\u1a73\u0007T\u0002\u0002\u1a73\u1a74\u0007G\u0002\u0002",
- "\u1a74\u1a75\u0007a\u0002\u0002\u1a75\u1a76\u0007E\u0002\u0002\u1a76",
- "\u1a77\u0007Q\u0002\u0002\u1a77\u1a78\u0007P\u0002\u0002\u1a78\u1a79",
- "\u0007F\u0002\u0002\u1a79\u1a7a\u0007K\u0002\u0002\u1a7a\u1a7b\u0007",
- "V\u0002\u0002\u1a7b\u1a7c\u0007K\u0002\u0002\u1a7c\u1a7d\u0007Q\u0002",
- "\u0002\u1a7d\u1a7e\u0007P\u0002\u0002\u1a7e\u1a7f\u0007a\u0002\u0002",
- "\u1a7f\u1a80\u0007N\u0002\u0002\u1a80\u1a81\u0007G\u0002\u0002\u1a81",
- "\u1a82\u0007X\u0002\u0002\u1a82\u1a83\u0007G\u0002\u0002\u1a83\u1a84",
- "\u0007N\u0002\u0002\u1a84\u03ee\u0003\u0002\u0002\u0002\u1a85\u1a86",
- "\u0007H\u0002\u0002\u1a86\u1a87\u0007C\u0002\u0002\u1a87\u1a88\u0007",
- "U\u0002\u0002\u1a88\u1a89\u0007V\u0002\u0002\u1a89\u03f0\u0003\u0002",
- "\u0002\u0002\u1a8a\u1a8b\u0007H\u0002\u0002\u1a8b\u1a8c\u0007C\u0002",
- "\u0002\u1a8c\u1a8d\u0007U\u0002\u0002\u1a8d\u1a8e\u0007V\u0002\u0002",
- "\u1a8e\u1a8f\u0007a\u0002\u0002\u1a8f\u1a90\u0007H\u0002\u0002\u1a90",
- "\u1a91\u0007Q\u0002\u0002\u1a91\u1a92\u0007T\u0002\u0002\u1a92\u1a93",
- "\u0007Y\u0002\u0002\u1a93\u1a94\u0007C\u0002\u0002\u1a94\u1a95\u0007",
- "T\u0002\u0002\u1a95\u1a96\u0007F\u0002\u0002\u1a96\u03f2\u0003\u0002",
- "\u0002\u0002\u1a97\u1a98\u0007H\u0002\u0002\u1a98\u1a99\u0007K\u0002",
- "\u0002\u1a99\u1a9a\u0007N\u0002\u0002\u1a9a\u1a9b\u0007G\u0002\u0002",
- "\u1a9b\u1a9c\u0007I\u0002\u0002\u1a9c\u1a9d\u0007T\u0002\u0002\u1a9d",
- "\u1a9e\u0007Q\u0002\u0002\u1a9e\u1a9f\u0007W\u0002\u0002\u1a9f\u1aa0",
- "\u0007R\u0002\u0002\u1aa0\u03f4\u0003\u0002\u0002\u0002\u1aa1\u1aa2",
- "\u0007H\u0002\u0002\u1aa2\u1aa3\u0007K\u0002\u0002\u1aa3\u1aa4\u0007",
- "N\u0002\u0002\u1aa4\u1aa5\u0007G\u0002\u0002\u1aa5\u1aa6\u0007I\u0002",
- "\u0002\u1aa6\u1aa7\u0007T\u0002\u0002\u1aa7\u1aa8\u0007Q\u0002\u0002",
- "\u1aa8\u1aa9\u0007Y\u0002\u0002\u1aa9\u1aaa\u0007V\u0002\u0002\u1aaa",
- "\u1aab\u0007J\u0002\u0002\u1aab\u03f6\u0003\u0002\u0002\u0002\u1aac",
- "\u1aad\u0007H\u0002\u0002\u1aad\u1aae\u0007K\u0002\u0002\u1aae\u1aaf",
- "\u0007N\u0002\u0002\u1aaf\u1ab0\u0007G\u0002\u0002\u1ab0\u1ab1\u0007",
- "R\u0002\u0002\u1ab1\u1ab2\u0007C\u0002\u0002\u1ab2\u1ab3\u0007V\u0002",
- "\u0002\u1ab3\u1ab4\u0007J\u0002\u0002\u1ab4\u03f8\u0003\u0002\u0002",
- "\u0002\u1ab5\u1ab6\u0007H\u0002\u0002\u1ab6\u1ab7\u0007K\u0002\u0002",
- "\u1ab7\u1ab8\u0007N\u0002\u0002\u1ab8\u1ab9\u0007G\u0002\u0002\u1ab9",
- "\u1aba\u0007U\u0002\u0002\u1aba\u1abb\u0007V\u0002\u0002\u1abb\u1abc",
- "\u0007T\u0002\u0002\u1abc\u1abd\u0007G\u0002\u0002\u1abd\u1abe\u0007",
- "C\u0002\u0002\u1abe\u1abf\u0007O\u0002\u0002\u1abf\u03fa\u0003\u0002",
- "\u0002\u0002\u1ac0\u1ac1\u0007H\u0002\u0002\u1ac1\u1ac2\u0007K\u0002",
- "\u0002\u1ac2\u1ac3\u0007N\u0002\u0002\u1ac3\u1ac4\u0007V\u0002\u0002",
- "\u1ac4\u1ac5\u0007G\u0002\u0002\u1ac5\u1ac6\u0007T\u0002\u0002\u1ac6",
- "\u03fc\u0003\u0002\u0002\u0002\u1ac7\u1ac8\u0007H\u0002\u0002\u1ac8",
- "\u1ac9\u0007K\u0002\u0002\u1ac9\u1aca\u0007T\u0002\u0002\u1aca\u1acb",
- "\u0007U\u0002\u0002\u1acb\u1acc\u0007V\u0002\u0002\u1acc\u03fe\u0003",
- "\u0002\u0002\u0002\u1acd\u1ace\u0007H\u0002\u0002\u1ace\u1acf\u0007",
- "K\u0002\u0002\u1acf\u1ad0\u0007T\u0002\u0002\u1ad0\u1ad1\u0007U\u0002",
- "\u0002\u1ad1\u1ad2\u0007V\u0002\u0002\u1ad2\u1ad3\u0007a\u0002\u0002",
- "\u1ad3\u1ad4\u0007X\u0002\u0002\u1ad4\u1ad5\u0007C\u0002\u0002\u1ad5",
- "\u1ad6\u0007N\u0002\u0002\u1ad6\u1ad7\u0007W\u0002\u0002\u1ad7\u1ad8",
- "\u0007G\u0002\u0002\u1ad8\u0400\u0003\u0002\u0002\u0002\u1ad9\u1ada",
- "\u0007H\u0002\u0002\u1ada\u1adb\u0007Q\u0002\u0002\u1adb\u1adc\u0007",
- "N\u0002\u0002\u1adc\u1add\u0007N\u0002\u0002\u1add\u1ade\u0007Q\u0002",
- "\u0002\u1ade\u1adf\u0007Y\u0002\u0002\u1adf\u1ae0\u0007K\u0002\u0002",
- "\u1ae0\u1ae1\u0007P\u0002\u0002\u1ae1\u1ae2\u0007I\u0002\u0002\u1ae2",
- "\u0402\u0003\u0002\u0002\u0002\u1ae3\u1ae4\u0007H\u0002\u0002\u1ae4",
- "\u1ae5\u0007Q\u0002\u0002\u1ae5\u1ae6\u0007T\u0002\u0002\u1ae6\u1ae7",
- "\u0007E\u0002\u0002\u1ae7\u1ae8\u0007G\u0002\u0002\u1ae8\u0404\u0003",
- "\u0002\u0002\u0002\u1ae9\u1aea\u0007H\u0002\u0002\u1aea\u1aeb\u0007",
- "Q\u0002\u0002\u1aeb\u1aec\u0007T\u0002\u0002\u1aec\u1aed\u0007E\u0002",
- "\u0002\u1aed\u1aee\u0007G\u0002\u0002\u1aee\u1aef\u0007a\u0002\u0002",
- "\u1aef\u1af0\u0007H\u0002\u0002\u1af0\u1af1\u0007C\u0002\u0002\u1af1",
- "\u1af2\u0007K\u0002\u0002\u1af2\u1af3\u0007N\u0002\u0002\u1af3\u1af4",
- "\u0007Q\u0002\u0002\u1af4\u1af5\u0007X\u0002\u0002\u1af5\u1af6\u0007",
- "G\u0002\u0002\u1af6\u1af7\u0007T\u0002\u0002\u1af7\u1af8\u0007a\u0002",
- "\u0002\u1af8\u1af9\u0007C\u0002\u0002\u1af9\u1afa\u0007N\u0002\u0002",
- "\u1afa\u1afb\u0007N\u0002\u0002\u1afb\u1afc\u0007Q\u0002\u0002\u1afc",
- "\u1afd\u0007Y\u0002\u0002\u1afd\u1afe\u0007a\u0002\u0002\u1afe\u1aff",
- "\u0007F\u0002\u0002\u1aff\u1b00\u0007C\u0002\u0002\u1b00\u1b01\u0007",
- "V\u0002\u0002\u1b01\u1b02\u0007C\u0002\u0002\u1b02\u1b03\u0007a\u0002",
- "\u0002\u1b03\u1b04\u0007N\u0002\u0002\u1b04\u1b05\u0007Q\u0002\u0002",
- "\u1b05\u1b06\u0007U\u0002\u0002\u1b06\u1b07\u0007U\u0002\u0002\u1b07",
- "\u0406\u0003\u0002\u0002\u0002\u1b08\u1b09\u0007H\u0002\u0002\u1b09",
- "\u1b0a\u0007Q\u0002\u0002\u1b0a\u1b0b\u0007T\u0002\u0002\u1b0b\u1b0c",
- "\u0007E\u0002\u0002\u1b0c\u1b0d\u0007G\u0002\u0002\u1b0d\u1b0e\u0007",
- "F\u0002\u0002\u1b0e\u0408\u0003\u0002\u0002\u0002\u1b0f\u1b10\u0007",
- "H\u0002\u0002\u1b10\u1b11\u0007Q\u0002\u0002\u1b11\u1b12\u0007T\u0002",
- "\u0002\u1b12\u1b13\u0007O\u0002\u0002\u1b13\u1b14\u0007C\u0002\u0002",
- "\u1b14\u1b15\u0007V\u0002\u0002\u1b15\u040a\u0003\u0002\u0002\u0002",
- "\u1b16\u1b17\u0007H\u0002\u0002\u1b17\u1b18\u0007Q\u0002\u0002\u1b18",
- "\u1b19\u0007T\u0002\u0002\u1b19\u1b1a\u0007Y\u0002\u0002\u1b1a\u1b1b",
- "\u0007C\u0002\u0002\u1b1b\u1b1c\u0007T\u0002\u0002\u1b1c\u1b1d\u0007",
- "F\u0002\u0002\u1b1d\u1b1e\u0007a\u0002\u0002\u1b1e\u1b1f\u0007Q\u0002",
- "\u0002\u1b1f\u1b20\u0007P\u0002\u0002\u1b20\u1b21\u0007N\u0002\u0002",
- "\u1b21\u1b22\u0007[\u0002\u0002\u1b22\u040c\u0003\u0002\u0002\u0002",
- "\u1b23\u1b24\u0007H\u0002\u0002\u1b24\u1b25\u0007W\u0002\u0002\u1b25",
- "\u1b26\u0007N\u0002\u0002\u1b26\u1b27\u0007N\u0002\u0002\u1b27\u1b28",
- "\u0007U\u0002\u0002\u1b28\u1b29\u0007E\u0002\u0002\u1b29\u1b2a\u0007",
- "C\u0002\u0002\u1b2a\u1b2b\u0007P\u0002\u0002\u1b2b\u040e\u0003\u0002",
- "\u0002\u0002\u1b2c\u1b2d\u0007H\u0002\u0002\u1b2d\u1b2e\u0007W\u0002",
- "\u0002\u1b2e\u1b2f\u0007N\u0002\u0002\u1b2f\u1b30\u0007N\u0002\u0002",
- "\u1b30\u1b31\u0007V\u0002\u0002\u1b31\u1b32\u0007G\u0002\u0002\u1b32",
- "\u1b33\u0007Z\u0002\u0002\u1b33\u1b34\u0007V\u0002\u0002\u1b34\u0410",
- "\u0003\u0002\u0002\u0002\u1b35\u1b36\u0007I\u0002\u0002\u1b36\u1b37",
- "\u0007D\u0002\u0002\u1b37\u0412\u0003\u0002\u0002\u0002\u1b38\u1b39",
- "\u0007I\u0002\u0002\u1b39\u1b3a\u0007G\u0002\u0002\u1b3a\u1b3b\u0007",
- "V\u0002\u0002\u1b3b\u1b3c\u0007F\u0002\u0002\u1b3c\u1b3d\u0007C\u0002",
- "\u0002\u1b3d\u1b3e\u0007V\u0002\u0002\u1b3e\u1b3f\u0007G\u0002\u0002",
- "\u1b3f\u0414\u0003\u0002\u0002\u0002\u1b40\u1b41\u0007I\u0002\u0002",
- "\u1b41\u1b42\u0007G\u0002\u0002\u1b42\u1b43\u0007V\u0002\u0002\u1b43",
- "\u1b44\u0007W\u0002\u0002\u1b44\u1b45\u0007V\u0002\u0002\u1b45\u1b46",
- "\u0007E\u0002\u0002\u1b46\u1b47\u0007F\u0002\u0002\u1b47\u1b48\u0007",
- "C\u0002\u0002\u1b48\u1b49\u0007V\u0002\u0002\u1b49\u1b4a\u0007G\u0002",
- "\u0002\u1b4a\u0416\u0003\u0002\u0002\u0002\u1b4b\u1b4c\u0007I\u0002",
- "\u0002\u1b4c\u1b4d\u0007N\u0002\u0002\u1b4d\u1b4e\u0007Q\u0002\u0002",
- "\u1b4e\u1b4f\u0007D\u0002\u0002\u1b4f\u1b50\u0007C\u0002\u0002\u1b50",
- "\u1b51\u0007N\u0002\u0002\u1b51\u0418\u0003\u0002\u0002\u0002\u1b52",
- "\u1b53\u0007I\u0002\u0002\u1b53\u1b54\u0007Q\u0002\u0002\u1b54\u041a",
- "\u0003\u0002\u0002\u0002\u1b55\u1b56\u0007I\u0002\u0002\u1b56\u1b57",
- "\u0007T\u0002\u0002\u1b57\u1b58\u0007Q\u0002\u0002\u1b58\u1b59\u0007",
- "W\u0002\u0002\u1b59\u1b5a\u0007R\u0002\u0002\u1b5a\u1b5b\u0007a\u0002",
- "\u0002\u1b5b\u1b5c\u0007O\u0002\u0002\u1b5c\u1b5d\u0007C\u0002\u0002",
- "\u1b5d\u1b5e\u0007Z\u0002\u0002\u1b5e\u1b5f\u0007a\u0002\u0002\u1b5f",
- "\u1b60\u0007T\u0002\u0002\u1b60\u1b61\u0007G\u0002\u0002\u1b61\u1b62",
- "\u0007S\u0002\u0002\u1b62\u1b63\u0007W\u0002\u0002\u1b63\u1b64\u0007",
- "G\u0002\u0002\u1b64\u1b65\u0007U\u0002\u0002\u1b65\u1b66\u0007V\u0002",
- "\u0002\u1b66\u1b67\u0007U\u0002\u0002\u1b67\u041c\u0003\u0002\u0002",
- "\u0002\u1b68\u1b69\u0007I\u0002\u0002\u1b69\u1b6a\u0007T\u0002\u0002",
- "\u1b6a\u1b6b\u0007Q\u0002\u0002\u1b6b\u1b6c\u0007W\u0002\u0002\u1b6c",
- "\u1b6d\u0007R\u0002\u0002\u1b6d\u1b6e\u0007K\u0002\u0002\u1b6e\u1b6f",
- "\u0007P\u0002\u0002\u1b6f\u1b70\u0007I\u0002\u0002\u1b70\u041e\u0003",
- "\u0002\u0002\u0002\u1b71\u1b72\u0007I\u0002\u0002\u1b72\u1b73\u0007",
- "T\u0002\u0002\u1b73\u1b74\u0007Q\u0002\u0002\u1b74\u1b75\u0007W\u0002",
- "\u0002\u1b75\u1b76\u0007R\u0002\u0002\u1b76\u1b77\u0007K\u0002\u0002",
- "\u1b77\u1b78\u0007P\u0002\u0002\u1b78\u1b79\u0007I\u0002\u0002\u1b79",
- "\u1b7a\u0007a\u0002\u0002\u1b7a\u1b7b\u0007K\u0002\u0002\u1b7b\u1b7c",
- "\u0007F\u0002\u0002\u1b7c\u0420\u0003\u0002\u0002\u0002\u1b7d\u1b7e",
- "\u0007J\u0002\u0002\u1b7e\u1b7f\u0007C\u0002\u0002\u1b7f\u1b80\u0007",
- "F\u0002\u0002\u1b80\u1b81\u0007T\u0002\u0002\u1b81\u0422\u0003\u0002",
- "\u0002\u0002\u1b82\u1b83\u0007J\u0002\u0002\u1b83\u1b84\u0007C\u0002",
- "\u0002\u1b84\u1b85\u0007U\u0002\u0002\u1b85\u1b86\u0007J\u0002\u0002",
- "\u1b86\u0424\u0003\u0002\u0002\u0002\u1b87\u1b88\u0007J\u0002\u0002",
- "\u1b88\u1b89\u0007G\u0002\u0002\u1b89\u1b8a\u0007C\u0002\u0002\u1b8a",
- "\u1b8b\u0007N\u0002\u0002\u1b8b\u1b8c\u0007V\u0002\u0002\u1b8c\u1b8d",
- "\u0007J\u0002\u0002\u1b8d\u1b8e\u0007a\u0002\u0002\u1b8e\u1b8f\u0007",
- "E\u0002\u0002\u1b8f\u1b90\u0007J\u0002\u0002\u1b90\u1b91\u0007G\u0002",
- "\u0002\u1b91\u1b92\u0007E\u0002\u0002\u1b92\u1b93\u0007M\u0002\u0002",
- "\u1b93\u1b94\u0007a\u0002\u0002\u1b94\u1b95\u0007V\u0002\u0002\u1b95",
- "\u1b96\u0007K\u0002\u0002\u1b96\u1b97\u0007O\u0002\u0002\u1b97\u1b98",
- "\u0007G\u0002\u0002\u1b98\u1b99\u0007Q\u0002\u0002\u1b99\u1b9a\u0007",
- "W\u0002\u0002\u1b9a\u1b9b\u0007V\u0002\u0002\u1b9b\u0426\u0003\u0002",
- "\u0002\u0002\u1b9c\u1b9d\u0007J\u0002\u0002\u1b9d\u1b9e\u0007K\u0002",
- "\u0002\u1b9e\u1b9f\u0007I\u0002\u0002\u1b9f\u1ba0\u0007J\u0002\u0002",
- "\u1ba0\u0428\u0003\u0002\u0002\u0002\u1ba1\u1ba2\u0007J\u0002\u0002",
- "\u1ba2\u1ba3\u0007Q\u0002\u0002\u1ba3\u1ba4\u0007P\u0002\u0002\u1ba4",
- "\u1ba5\u0007Q\u0002\u0002\u1ba5\u1ba6\u0007T\u0002\u0002\u1ba6\u1ba7",
- "\u0007a\u0002\u0002\u1ba7\u1ba8\u0007D\u0002\u0002\u1ba8\u1ba9\u0007",
- "T\u0002\u0002\u1ba9\u1baa\u0007Q\u0002\u0002\u1baa\u1bab\u0007M\u0002",
- "\u0002\u1bab\u1bac\u0007G\u0002\u0002\u1bac\u1bad\u0007T\u0002\u0002",
- "\u1bad\u1bae\u0007a\u0002\u0002\u1bae\u1baf\u0007R\u0002\u0002\u1baf",
- "\u1bb0\u0007T\u0002\u0002\u1bb0\u1bb1\u0007K\u0002\u0002\u1bb1\u1bb2",
- "\u0007Q\u0002\u0002\u1bb2\u1bb3\u0007T\u0002\u0002\u1bb3\u1bb4\u0007",
- "K\u0002\u0002\u1bb4\u1bb5\u0007V\u0002\u0002\u1bb5\u1bb6\u0007[\u0002",
- "\u0002\u1bb6\u042a\u0003\u0002\u0002\u0002\u1bb7\u1bb8\u0007J\u0002",
- "\u0002\u1bb8\u1bb9\u0007Q\u0002\u0002\u1bb9\u1bba\u0007W\u0002\u0002",
- "\u1bba\u1bbb\u0007T\u0002\u0002\u1bbb\u1bbc\u0007U\u0002\u0002\u1bbc",
- "\u042c\u0003\u0002\u0002\u0002\u1bbd\u1bbe\u0007K\u0002\u0002\u1bbe",
- "\u1bbf\u0007F\u0002\u0002\u1bbf\u1bc0\u0007G\u0002\u0002\u1bc0\u1bc1",
- "\u0007P\u0002\u0002\u1bc1\u1bc2\u0007V\u0002\u0002\u1bc2\u1bc3\u0007",
- "K\u0002\u0002\u1bc3\u1bc4\u0007V\u0002\u0002\u1bc4\u1bc5\u0007[\u0002",
- "\u0002\u1bc5\u1bc6\u0007a\u0002\u0002\u1bc6\u1bc7\u0007X\u0002\u0002",
- "\u1bc7\u1bc8\u0007C\u0002\u0002\u1bc8\u1bc9\u0007N\u0002\u0002\u1bc9",
- "\u1bca\u0007W\u0002\u0002\u1bca\u1bcb\u0007G\u0002\u0002\u1bcb\u042e",
- "\u0003\u0002\u0002\u0002\u1bcc\u1bcd\u0007K\u0002\u0002\u1bcd\u1bce",
- "\u0007I\u0002\u0002\u1bce\u1bcf\u0007P\u0002\u0002\u1bcf\u1bd0\u0007",
- "Q\u0002\u0002\u1bd0\u1bd1\u0007T\u0002\u0002\u1bd1\u1bd2\u0007G\u0002",
- "\u0002\u1bd2\u1bd3\u0007a\u0002\u0002\u1bd3\u1bd4\u0007P\u0002\u0002",
- "\u1bd4\u1bd5\u0007Q\u0002\u0002\u1bd5\u1bd6\u0007P\u0002\u0002\u1bd6",
- "\u1bd7\u0007E\u0002\u0002\u1bd7\u1bd8\u0007N\u0002\u0002\u1bd8\u1bd9",
- "\u0007W\u0002\u0002\u1bd9\u1bda\u0007U\u0002\u0002\u1bda\u1bdb\u0007",
- "V\u0002\u0002\u1bdb\u1bdc\u0007G\u0002\u0002\u1bdc\u1bdd\u0007T\u0002",
- "\u0002\u1bdd\u1bde\u0007G\u0002\u0002\u1bde\u1bdf\u0007F\u0002\u0002",
- "\u1bdf\u1be0\u0007a\u0002\u0002\u1be0\u1be1\u0007E\u0002\u0002\u1be1",
- "\u1be2\u0007Q\u0002\u0002\u1be2\u1be3\u0007N\u0002\u0002\u1be3\u1be4",
- "\u0007W\u0002\u0002\u1be4\u1be5\u0007O\u0002\u0002\u1be5\u1be6\u0007",
- "P\u0002\u0002\u1be6\u1be7\u0007U\u0002\u0002\u1be7\u1be8\u0007V\u0002",
- "\u0002\u1be8\u1be9\u0007Q\u0002\u0002\u1be9\u1bea\u0007T\u0002\u0002",
- "\u1bea\u1beb\u0007G\u0002\u0002\u1beb\u1bec\u0007a\u0002\u0002\u1bec",
- "\u1bed\u0007K\u0002\u0002\u1bed\u1bee\u0007P\u0002\u0002\u1bee\u1bef",
- "\u0007F\u0002\u0002\u1bef\u1bf0\u0007G\u0002\u0002\u1bf0\u1bf1\u0007",
- "Z\u0002\u0002\u1bf1\u0430\u0003\u0002\u0002\u0002\u1bf2\u1bf3\u0007",
- "K\u0002\u0002\u1bf3\u1bf4\u0007O\u0002\u0002\u1bf4\u1bf5\u0007O\u0002",
- "\u0002\u1bf5\u1bf6\u0007G\u0002\u0002\u1bf6\u1bf7\u0007F\u0002\u0002",
- "\u1bf7\u1bf8\u0007K\u0002\u0002\u1bf8\u1bf9\u0007C\u0002\u0002\u1bf9",
- "\u1bfa\u0007V\u0002\u0002\u1bfa\u1bfb\u0007G\u0002\u0002\u1bfb\u0432",
- "\u0003\u0002\u0002\u0002\u1bfc\u1bfd\u0007K\u0002\u0002\u1bfd\u1bfe",
- "\u0007O\u0002\u0002\u1bfe\u1bff\u0007R\u0002\u0002\u1bff\u1c00\u0007",
- "G\u0002\u0002\u1c00\u1c01\u0007T\u0002\u0002\u1c01\u1c02\u0007U\u0002",
- "\u0002\u1c02\u1c03\u0007Q\u0002\u0002\u1c03\u1c04\u0007P\u0002\u0002",
- "\u1c04\u1c05\u0007C\u0002\u0002\u1c05\u1c06\u0007V\u0002\u0002\u1c06",
- "\u1c07\u0007G\u0002\u0002\u1c07\u0434\u0003\u0002\u0002\u0002\u1c08",
- "\u1c09\u0007K\u0002\u0002\u1c09\u1c0a\u0007O\u0002\u0002\u1c0a\u1c0b",
- "\u0007R\u0002\u0002\u1c0b\u1c0c\u0007Q\u0002\u0002\u1c0c\u1c0d\u0007",
- "T\u0002\u0002\u1c0d\u1c0e\u0007V\u0002\u0002\u1c0e\u1c0f\u0007C\u0002",
- "\u0002\u1c0f\u1c10\u0007P\u0002\u0002\u1c10\u1c11\u0007E\u0002\u0002",
- "\u1c11\u1c12\u0007G\u0002\u0002\u1c12\u0436\u0003\u0002\u0002\u0002",
- "\u1c13\u1c14\u0007K\u0002\u0002\u1c14\u1c15\u0007P\u0002\u0002\u1c15",
- "\u1c16\u0007E\u0002\u0002\u1c16\u1c17\u0007N\u0002\u0002\u1c17\u1c18",
- "\u0007W\u0002\u0002\u1c18\u1c19\u0007F\u0002\u0002\u1c19\u1c1a\u0007",
- "G\u0002\u0002\u1c1a\u1c1b\u0007a\u0002\u0002\u1c1b\u1c1c\u0007P\u0002",
- "\u0002\u1c1c\u1c1d\u0007W\u0002\u0002\u1c1d\u1c1e\u0007N\u0002\u0002",
- "\u1c1e\u1c1f\u0007N\u0002\u0002\u1c1f\u1c20\u0007a\u0002\u0002\u1c20",
- "\u1c21\u0007X\u0002\u0002\u1c21\u1c22\u0007C\u0002\u0002\u1c22\u1c23",
- "\u0007N\u0002\u0002\u1c23\u1c24\u0007W\u0002\u0002\u1c24\u1c25\u0007",
- "G\u0002\u0002\u1c25\u1c26\u0007U\u0002\u0002\u1c26\u0438\u0003\u0002",
- "\u0002\u0002\u1c27\u1c28\u0007K\u0002\u0002\u1c28\u1c29\u0007P\u0002",
- "\u0002\u1c29\u1c2a\u0007E\u0002\u0002\u1c2a\u1c2b\u0007T\u0002\u0002",
- "\u1c2b\u1c2c\u0007G\u0002\u0002\u1c2c\u1c2d\u0007O\u0002\u0002\u1c2d",
- "\u1c2e\u0007G\u0002\u0002\u1c2e\u1c2f\u0007P\u0002\u0002\u1c2f\u1c30",
- "\u0007V\u0002\u0002\u1c30\u1c31\u0007C\u0002\u0002\u1c31\u1c32\u0007",
- "N\u0002\u0002\u1c32\u043a\u0003\u0002\u0002\u0002\u1c33\u1c34\u0007",
- "K\u0002\u0002\u1c34\u1c35\u0007P\u0002\u0002\u1c35\u1c36\u0007K\u0002",
- "\u0002\u1c36\u1c37\u0007V\u0002\u0002\u1c37\u1c38\u0007K\u0002\u0002",
- "\u1c38\u1c39\u0007C\u0002\u0002\u1c39\u1c3a\u0007V\u0002\u0002\u1c3a",
- "\u1c3b\u0007Q\u0002\u0002\u1c3b\u1c3c\u0007T\u0002\u0002\u1c3c\u043c",
- "\u0003\u0002\u0002\u0002\u1c3d\u1c3e\u0007K\u0002\u0002\u1c3e\u1c3f",
- "\u0007P\u0002\u0002\u1c3f\u1c40\u0007R\u0002\u0002\u1c40\u1c41\u0007",
- "W\u0002\u0002\u1c41\u1c42\u0007V\u0002\u0002\u1c42\u043e\u0003\u0002",
- "\u0002\u0002\u1c43\u1c44\u0007K\u0002\u0002\u1c44\u1c45\u0007P\u0002",
- "\u0002\u1c45\u1c46\u0007U\u0002\u0002\u1c46\u1c47\u0007G\u0002\u0002",
- "\u1c47\u1c48\u0007P\u0002\u0002\u1c48\u1c49\u0007U\u0002\u0002\u1c49",
- "\u1c4a\u0007K\u0002\u0002\u1c4a\u1c4b\u0007V\u0002\u0002\u1c4b\u1c4c",
- "\u0007K\u0002\u0002\u1c4c\u1c4d\u0007X\u0002\u0002\u1c4d\u1c4e\u0007",
- "G\u0002\u0002\u1c4e\u0440\u0003\u0002\u0002\u0002\u1c4f\u1c50\u0007",
- "K\u0002\u0002\u1c50\u1c51\u0007P\u0002\u0002\u1c51\u1c52\u0007U\u0002",
- "\u0002\u1c52\u1c53\u0007G\u0002\u0002\u1c53\u1c54\u0007T\u0002\u0002",
- "\u1c54\u1c55\u0007V\u0002\u0002\u1c55\u1c56\u0007G\u0002\u0002\u1c56",
- "\u1c57\u0007F\u0002\u0002\u1c57\u0442\u0003\u0002\u0002\u0002\u1c58",
- "\u1c59\u0007K\u0002\u0002\u1c59\u1c5a\u0007P\u0002\u0002\u1c5a\u1c5b",
- "\u0007V\u0002\u0002\u1c5b\u0444\u0003\u0002\u0002\u0002\u1c5c\u1c5d",
- "\u0007K\u0002\u0002\u1c5d\u1c5e\u0007R\u0002\u0002\u1c5e\u0446\u0003",
- "\u0002\u0002\u0002\u1c5f\u1c60\u0007K\u0002\u0002\u1c60\u1c61\u0007",
- "U\u0002\u0002\u1c61\u1c62\u0007Q\u0002\u0002\u1c62\u1c63\u0007N\u0002",
- "\u0002\u1c63\u1c64\u0007C\u0002\u0002\u1c64\u1c65\u0007V\u0002\u0002",
- "\u1c65\u1c66\u0007K\u0002\u0002\u1c66\u1c67\u0007Q\u0002\u0002\u1c67",
- "\u1c68\u0007P\u0002\u0002\u1c68\u0448\u0003\u0002\u0002\u0002\u1c69",
- "\u1c6a\u0007L\u0002\u0002\u1c6a\u1c6b\u0007Q\u0002\u0002\u1c6b\u1c6c",
- "\u0007D\u0002\u0002\u1c6c\u044a\u0003\u0002\u0002\u0002\u1c6d\u1c6e",
- "\u0007L\u0002\u0002\u1c6e\u1c6f\u0007U\u0002\u0002\u1c6f\u1c70\u0007",
- "Q\u0002\u0002\u1c70\u1c71\u0007P\u0002\u0002\u1c71\u044c\u0003\u0002",
- "\u0002\u0002\u1c72\u1c73\u0007M\u0002\u0002\u1c73\u1c74\u0007D\u0002",
- "\u0002\u1c74\u044e\u0003\u0002\u0002\u0002\u1c75\u1c76\u0007M\u0002",
- "\u0002\u1c76\u1c77\u0007G\u0002\u0002\u1c77\u1c78\u0007G\u0002\u0002",
- "\u1c78\u1c79\u0007R\u0002\u0002\u1c79\u0450\u0003\u0002\u0002\u0002",
- "\u1c7a\u1c7b\u0007M\u0002\u0002\u1c7b\u1c7c\u0007G\u0002\u0002\u1c7c",
- "\u1c7d\u0007G\u0002\u0002\u1c7d\u1c7e\u0007R\u0002\u0002\u1c7e\u1c7f",
- "\u0007H\u0002\u0002\u1c7f\u1c80\u0007K\u0002\u0002\u1c80\u1c81\u0007",
- "Z\u0002\u0002\u1c81\u1c82\u0007G\u0002\u0002\u1c82\u1c83\u0007F\u0002",
- "\u0002\u1c83\u0452\u0003\u0002\u0002\u0002\u1c84\u1c85\u0007M\u0002",
- "\u0002\u1c85\u1c86\u0007G\u0002\u0002\u1c86\u1c87\u0007[\u0002\u0002",
- "\u1c87\u1c88\u0007a\u0002\u0002\u1c88\u1c89\u0007U\u0002\u0002\u1c89",
- "\u1c8a\u0007Q\u0002\u0002\u1c8a\u1c8b\u0007W\u0002\u0002\u1c8b\u1c8c",
- "\u0007T\u0002\u0002\u1c8c\u1c8d\u0007E\u0002\u0002\u1c8d\u1c8e\u0007",
- "G\u0002\u0002\u1c8e\u0454\u0003\u0002\u0002\u0002\u1c8f\u1c90\u0007",
- "M\u0002\u0002\u1c90\u1c91\u0007G\u0002\u0002\u1c91\u1c92\u0007[\u0002",
- "\u0002\u1c92\u1c93\u0007U\u0002\u0002\u1c93\u0456\u0003\u0002\u0002",
- "\u0002\u1c94\u1c95\u0007M\u0002\u0002\u1c95\u1c96\u0007G\u0002\u0002",
- "\u1c96\u1c97\u0007[\u0002\u0002\u1c97\u1c98\u0007U\u0002\u0002\u1c98",
- "\u1c99\u0007G\u0002\u0002\u1c99\u1c9a\u0007V\u0002\u0002\u1c9a\u0458",
- "\u0003\u0002\u0002\u0002\u1c9b\u1c9c\u0007N\u0002\u0002\u1c9c\u1c9d",
- "\u0007C\u0002\u0002\u1c9d\u1c9e\u0007I\u0002\u0002\u1c9e\u045a\u0003",
- "\u0002\u0002\u0002\u1c9f\u1ca0\u0007N\u0002\u0002\u1ca0\u1ca1\u0007",
- "C\u0002\u0002\u1ca1\u1ca2\u0007U\u0002\u0002\u1ca2\u1ca3\u0007V\u0002",
- "\u0002\u1ca3\u045c\u0003\u0002\u0002\u0002\u1ca4\u1ca5\u0007N\u0002",
- "\u0002\u1ca5\u1ca6\u0007C\u0002\u0002\u1ca6\u1ca7\u0007U\u0002\u0002",
- "\u1ca7\u1ca8\u0007V\u0002\u0002\u1ca8\u1ca9\u0007a\u0002\u0002\u1ca9",
- "\u1caa\u0007X\u0002\u0002\u1caa\u1cab\u0007C\u0002\u0002\u1cab\u1cac",
- "\u0007N\u0002\u0002\u1cac\u1cad\u0007W\u0002\u0002\u1cad\u1cae\u0007",
- "G\u0002\u0002\u1cae\u045e\u0003\u0002\u0002\u0002\u1caf\u1cb0\u0007",
- "N\u0002\u0002\u1cb0\u1cb1\u0007G\u0002\u0002\u1cb1\u1cb2\u0007C\u0002",
- "\u0002\u1cb2\u1cb3\u0007F\u0002\u0002\u1cb3\u0460\u0003\u0002\u0002",
- "\u0002\u1cb4\u1cb5\u0007N\u0002\u0002\u1cb5\u1cb6\u0007G\u0002\u0002",
- "\u1cb6\u1cb7\u0007X\u0002\u0002\u1cb7\u1cb8\u0007G\u0002\u0002\u1cb8",
- "\u1cb9\u0007N\u0002\u0002\u1cb9\u0462\u0003\u0002\u0002\u0002\u1cba",
- "\u1cbb\u0007N\u0002\u0002\u1cbb\u1cbc\u0007K\u0002\u0002\u1cbc\u1cbd",
- "\u0007U\u0002\u0002\u1cbd\u1cbe\u0007V\u0002\u0002\u1cbe\u0464\u0003",
- "\u0002\u0002\u0002\u1cbf\u1cc0\u0007N\u0002\u0002\u1cc0\u1cc1\u0007",
- "K\u0002\u0002\u1cc1\u1cc2\u0007U\u0002\u0002\u1cc2\u1cc3\u0007V\u0002",
- "\u0002\u1cc3\u1cc4\u0007G\u0002\u0002\u1cc4\u1cc5\u0007P\u0002\u0002",
- "\u1cc5\u1cc6\u0007G\u0002\u0002\u1cc6\u1cc7\u0007T\u0002\u0002\u1cc7",
- "\u0466\u0003\u0002\u0002\u0002\u1cc8\u1cc9\u0007N\u0002\u0002\u1cc9",
- "\u1cca\u0007K\u0002\u0002\u1cca\u1ccb\u0007U\u0002\u0002\u1ccb\u1ccc",
- "\u0007V\u0002\u0002\u1ccc\u1ccd\u0007G\u0002\u0002\u1ccd\u1cce\u0007",
- "P\u0002\u0002\u1cce\u1ccf\u0007G\u0002\u0002\u1ccf\u1cd0\u0007T\u0002",
- "\u0002\u1cd0\u1cd1\u0007a\u0002\u0002\u1cd1\u1cd2\u0007W\u0002\u0002",
- "\u1cd2\u1cd3\u0007T\u0002\u0002\u1cd3\u1cd4\u0007N\u0002\u0002\u1cd4",
- "\u0468\u0003\u0002\u0002\u0002\u1cd5\u1cd6\u0007N\u0002\u0002\u1cd6",
- "\u1cd7\u0007Q\u0002\u0002\u1cd7\u1cd8\u0007D\u0002\u0002\u1cd8\u1cd9",
- "\u0007a\u0002\u0002\u1cd9\u1cda\u0007E\u0002\u0002\u1cda\u1cdb\u0007",
- "Q\u0002\u0002\u1cdb\u1cdc\u0007O\u0002\u0002\u1cdc\u1cdd\u0007R\u0002",
- "\u0002\u1cdd\u1cde\u0007C\u0002\u0002\u1cde\u1cdf\u0007E\u0002\u0002",
- "\u1cdf\u1ce0\u0007V\u0002\u0002\u1ce0\u1ce1\u0007K\u0002\u0002\u1ce1",
- "\u1ce2\u0007Q\u0002\u0002\u1ce2\u1ce3\u0007P\u0002\u0002\u1ce3\u046a",
- "\u0003\u0002\u0002\u0002\u1ce4\u1ce5\u0007N\u0002\u0002\u1ce5\u1ce6",
- "\u0007Q\u0002\u0002\u1ce6\u1ce7\u0007E\u0002\u0002\u1ce7\u1ce8\u0007",
- "C\u0002\u0002\u1ce8\u1ce9\u0007N\u0002\u0002\u1ce9\u046c\u0003\u0002",
- "\u0002\u0002\u1cea\u1ceb\u0007N\u0002\u0002\u1ceb\u1cec\u0007Q\u0002",
- "\u0002\u1cec\u1ced\u0007E\u0002\u0002\u1ced\u1cee\u0007C\u0002\u0002",
- "\u1cee\u1cef\u0007V\u0002\u0002\u1cef\u1cf0\u0007K\u0002\u0002\u1cf0",
- "\u1cf1\u0007Q\u0002\u0002\u1cf1\u1cf2\u0007P\u0002\u0002\u1cf2\u046e",
- "\u0003\u0002\u0002\u0002\u1cf3\u1cf4\u0007N\u0002\u0002\u1cf4\u1cf5",
- "\u0007Q\u0002\u0002\u1cf5\u1cf6\u0007E\u0002\u0002\u1cf6\u1cf7\u0007",
- "M\u0002\u0002\u1cf7\u0470\u0003\u0002\u0002\u0002\u1cf8\u1cf9\u0007",
- "N\u0002\u0002\u1cf9\u1cfa\u0007Q\u0002\u0002\u1cfa\u1cfb\u0007E\u0002",
- "\u0002\u1cfb\u1cfc\u0007M\u0002\u0002\u1cfc\u1cfd\u0007a\u0002\u0002",
- "\u1cfd\u1cfe\u0007G\u0002\u0002\u1cfe\u1cff\u0007U\u0002\u0002\u1cff",
- "\u1d00\u0007E\u0002\u0002\u1d00\u1d01\u0007C\u0002\u0002\u1d01\u1d02",
- "\u0007N\u0002\u0002\u1d02\u1d03\u0007C\u0002\u0002\u1d03\u1d04\u0007",
- "V\u0002\u0002\u1d04\u1d05\u0007K\u0002\u0002\u1d05\u1d06\u0007Q\u0002",
- "\u0002\u1d06\u1d07\u0007P\u0002\u0002\u1d07\u0472\u0003\u0002\u0002",
- "\u0002\u1d08\u1d09\u0007N\u0002\u0002\u1d09\u1d0a\u0007Q\u0002\u0002",
- "\u1d0a\u1d0b\u0007I\u0002\u0002\u1d0b\u1d0c\u0007K\u0002\u0002\u1d0c",
- "\u1d0d\u0007P\u0002\u0002\u1d0d\u0474\u0003\u0002\u0002\u0002\u1d0e",
- "\u1d0f\u0007N\u0002\u0002\u1d0f\u1d10\u0007Q\u0002\u0002\u1d10\u1d11",
- "\u0007Q\u0002\u0002\u1d11\u1d12\u0007R\u0002\u0002\u1d12\u0476\u0003",
- "\u0002\u0002\u0002\u1d13\u1d14\u0007N\u0002\u0002\u1d14\u1d15\u0007",
- "Q\u0002\u0002\u1d15\u1d16\u0007Y\u0002\u0002\u1d16\u0478\u0003\u0002",
- "\u0002\u0002\u1d17\u1d18\u0007O\u0002\u0002\u1d18\u1d19\u0007C\u0002",
- "\u0002\u1d19\u1d1a\u0007P\u0002\u0002\u1d1a\u1d1b\u0007W\u0002\u0002",
- "\u1d1b\u1d1c\u0007C\u0002\u0002\u1d1c\u1d1d\u0007N\u0002\u0002\u1d1d",
- "\u047a\u0003\u0002\u0002\u0002\u1d1e\u1d1f\u0007O\u0002\u0002\u1d1f",
- "\u1d20\u0007C\u0002\u0002\u1d20\u1d21\u0007T\u0002\u0002\u1d21\u1d22",
- "\u0007M\u0002\u0002\u1d22\u047c\u0003\u0002\u0002\u0002\u1d23\u1d24",
- "\u0007O\u0002\u0002\u1d24\u1d25\u0007C\u0002\u0002\u1d25\u1d26\u0007",
- "V\u0002\u0002\u1d26\u1d27\u0007G\u0002\u0002\u1d27\u1d28\u0007T\u0002",
- "\u0002\u1d28\u1d29\u0007K\u0002\u0002\u1d29\u1d2a\u0007C\u0002\u0002",
- "\u1d2a\u1d2b\u0007N\u0002\u0002\u1d2b\u1d2c\u0007K\u0002\u0002\u1d2c",
- "\u1d2d\u0007\\\u0002\u0002\u1d2d\u1d2e\u0007G\u0002\u0002\u1d2e\u1d2f",
- "\u0007F\u0002\u0002\u1d2f\u047e\u0003\u0002\u0002\u0002\u1d30\u1d31",
- "\u0007O\u0002\u0002\u1d31\u1d32\u0007C\u0002\u0002\u1d32\u1d33\u0007",
- "Z\u0002\u0002\u1d33\u0480\u0003\u0002\u0002\u0002\u1d34\u1d35\u0007",
- "O\u0002\u0002\u1d35\u1d36\u0007C\u0002\u0002\u1d36\u1d37\u0007Z\u0002",
- "\u0002\u1d37\u1d38\u0007a\u0002\u0002\u1d38\u1d39\u0007E\u0002\u0002",
- "\u1d39\u1d3a\u0007R\u0002\u0002\u1d3a\u1d3b\u0007W\u0002\u0002\u1d3b",
- "\u1d3c\u0007a\u0002\u0002\u1d3c\u1d3d\u0007R\u0002\u0002\u1d3d\u1d3e",
- "\u0007G\u0002\u0002\u1d3e\u1d3f\u0007T\u0002\u0002\u1d3f\u1d40\u0007",
- "E\u0002\u0002\u1d40\u1d41\u0007G\u0002\u0002\u1d41\u1d42\u0007P\u0002",
- "\u0002\u1d42\u1d43\u0007V\u0002\u0002\u1d43\u0482\u0003\u0002\u0002",
- "\u0002\u1d44\u1d45\u0007O\u0002\u0002\u1d45\u1d46\u0007C\u0002\u0002",
- "\u1d46\u1d47\u0007Z\u0002\u0002\u1d47\u1d48\u0007a\u0002\u0002\u1d48",
- "\u1d49\u0007F\u0002\u0002\u1d49\u1d4a\u0007Q\u0002\u0002\u1d4a\u1d4b",
- "\u0007R\u0002\u0002\u1d4b\u0484\u0003\u0002\u0002\u0002\u1d4c\u1d4d",
- "\u0007O\u0002\u0002\u1d4d\u1d4e\u0007C\u0002\u0002\u1d4e\u1d4f\u0007",
- "Z\u0002\u0002\u1d4f\u1d50\u0007a\u0002\u0002\u1d50\u1d51\u0007H\u0002",
- "\u0002\u1d51\u1d52\u0007K\u0002\u0002\u1d52\u1d53\u0007N\u0002\u0002",
- "\u1d53\u1d54\u0007G\u0002\u0002\u1d54\u1d55\u0007U\u0002\u0002\u1d55",
- "\u0486\u0003\u0002\u0002\u0002\u1d56\u1d57\u0007O\u0002\u0002\u1d57",
- "\u1d58\u0007C\u0002\u0002\u1d58\u1d59\u0007Z\u0002\u0002\u1d59\u1d5a",
- "\u0007a\u0002\u0002\u1d5a\u1d5b\u0007K\u0002\u0002\u1d5b\u1d5c\u0007",
- "Q\u0002\u0002\u1d5c\u1d5d\u0007R\u0002\u0002\u1d5d\u1d5e\u0007U\u0002",
- "\u0002\u1d5e\u1d5f\u0007a\u0002\u0002\u1d5f\u1d60\u0007R\u0002\u0002",
- "\u1d60\u1d61\u0007G\u0002\u0002\u1d61\u1d62\u0007T\u0002\u0002\u1d62",
- "\u1d63\u0007a\u0002\u0002\u1d63\u1d64\u0007X\u0002\u0002\u1d64\u1d65",
- "\u0007Q\u0002\u0002\u1d65\u1d66\u0007N\u0002\u0002\u1d66\u1d67\u0007",
- "W\u0002\u0002\u1d67\u1d68\u0007O\u0002\u0002\u1d68\u1d69\u0007G\u0002",
- "\u0002\u1d69\u0488\u0003\u0002\u0002\u0002\u1d6a\u1d6b\u0007O\u0002",
- "\u0002\u1d6b\u1d6c\u0007C\u0002\u0002\u1d6c\u1d6d\u0007Z\u0002\u0002",
- "\u1d6d\u1d6e\u0007a\u0002\u0002\u1d6e\u1d6f\u0007O\u0002\u0002\u1d6f",
- "\u1d70\u0007G\u0002\u0002\u1d70\u1d71\u0007O\u0002\u0002\u1d71\u1d72",
- "\u0007Q\u0002\u0002\u1d72\u1d73\u0007T\u0002\u0002\u1d73\u1d74\u0007",
- "[\u0002\u0002\u1d74\u1d75\u0007a\u0002\u0002\u1d75\u1d76\u0007R\u0002",
- "\u0002\u1d76\u1d77\u0007G\u0002\u0002\u1d77\u1d78\u0007T\u0002\u0002",
- "\u1d78\u1d79\u0007E\u0002\u0002\u1d79\u1d7a\u0007G\u0002\u0002\u1d7a",
- "\u1d7b\u0007P\u0002\u0002\u1d7b\u1d7c\u0007V\u0002\u0002\u1d7c\u048a",
- "\u0003\u0002\u0002\u0002\u1d7d\u1d7e\u0007O\u0002\u0002\u1d7e\u1d7f",
- "\u0007C\u0002\u0002\u1d7f\u1d80\u0007Z\u0002\u0002\u1d80\u1d81\u0007",
- "a\u0002\u0002\u1d81\u1d82\u0007R\u0002\u0002\u1d82\u1d83\u0007T\u0002",
- "\u0002\u1d83\u1d84\u0007Q\u0002\u0002\u1d84\u1d85\u0007E\u0002\u0002",
- "\u1d85\u1d86\u0007G\u0002\u0002\u1d86\u1d87\u0007U\u0002\u0002\u1d87",
- "\u1d88\u0007U\u0002\u0002\u1d88\u1d89\u0007G\u0002\u0002\u1d89\u1d8a",
- "\u0007U\u0002\u0002\u1d8a\u048c\u0003\u0002\u0002\u0002\u1d8b\u1d8c",
- "\u0007O\u0002\u0002\u1d8c\u1d8d\u0007C\u0002\u0002\u1d8d\u1d8e\u0007",
- "Z\u0002\u0002\u1d8e\u1d8f\u0007a\u0002\u0002\u1d8f\u1d90\u0007S\u0002",
- "\u0002\u1d90\u1d91\u0007W\u0002\u0002\u1d91\u1d92\u0007G\u0002\u0002",
- "\u1d92\u1d93\u0007W\u0002\u0002\u1d93\u1d94\u0007G\u0002\u0002\u1d94",
- "\u1d95\u0007a\u0002\u0002\u1d95\u1d96\u0007T\u0002\u0002\u1d96\u1d97",
- "\u0007G\u0002\u0002\u1d97\u1d98\u0007C\u0002\u0002\u1d98\u1d99\u0007",
- "F\u0002\u0002\u1d99\u1d9a\u0007G\u0002\u0002\u1d9a\u1d9b\u0007T\u0002",
- "\u0002\u1d9b\u1d9c\u0007U\u0002\u0002\u1d9c\u048e\u0003\u0002\u0002",
- "\u0002\u1d9d\u1d9e\u0007O\u0002\u0002\u1d9e\u1d9f\u0007C\u0002\u0002",
- "\u1d9f\u1da0\u0007Z\u0002\u0002\u1da0\u1da1\u0007a\u0002\u0002\u1da1",
- "\u1da2\u0007T\u0002\u0002\u1da2\u1da3\u0007Q\u0002\u0002\u1da3\u1da4",
- "\u0007N\u0002\u0002\u1da4\u1da5\u0007N\u0002\u0002\u1da5\u1da6\u0007",
- "Q\u0002\u0002\u1da6\u1da7\u0007X\u0002\u0002\u1da7\u1da8\u0007G\u0002",
- "\u0002\u1da8\u1da9\u0007T\u0002\u0002\u1da9\u1daa\u0007a\u0002\u0002",
- "\u1daa\u1dab\u0007H\u0002\u0002\u1dab\u1dac\u0007K\u0002\u0002\u1dac",
- "\u1dad\u0007N\u0002\u0002\u1dad\u1dae\u0007G\u0002\u0002\u1dae\u1daf",
- "\u0007U\u0002\u0002\u1daf\u0490\u0003\u0002\u0002\u0002\u1db0\u1db1",
- "\u0007O\u0002\u0002\u1db1\u1db2\u0007C\u0002\u0002\u1db2\u1db3\u0007",
- "Z\u0002\u0002\u1db3\u1db4\u0007F\u0002\u0002\u1db4\u1db5\u0007Q\u0002",
- "\u0002\u1db5\u1db6\u0007R\u0002\u0002\u1db6\u0492\u0003\u0002\u0002",
- "\u0002\u1db7\u1db8\u0007O\u0002\u0002\u1db8\u1db9\u0007C\u0002\u0002",
- "\u1db9\u1dba\u0007Z\u0002\u0002\u1dba\u1dbb\u0007T\u0002\u0002\u1dbb",
- "\u1dbc\u0007G\u0002\u0002\u1dbc\u1dbd\u0007E\u0002\u0002\u1dbd\u1dbe",
- "\u0007W\u0002\u0002\u1dbe\u1dbf\u0007T\u0002\u0002\u1dbf\u1dc0\u0007",
- "U\u0002\u0002\u1dc0\u1dc1\u0007K\u0002\u0002\u1dc1\u1dc2\u0007Q\u0002",
- "\u0002\u1dc2\u1dc3\u0007P\u0002\u0002\u1dc3\u0494\u0003\u0002\u0002",
- "\u0002\u1dc4\u1dc5\u0007O\u0002\u0002\u1dc5\u1dc6\u0007C\u0002\u0002",
- "\u1dc6\u1dc7\u0007Z\u0002\u0002\u1dc7\u1dc8\u0007U\u0002\u0002\u1dc8",
- "\u1dc9\u0007K\u0002\u0002\u1dc9\u1dca\u0007\\\u0002\u0002\u1dca\u1dcb",
- "\u0007G\u0002\u0002\u1dcb\u0496\u0003\u0002\u0002\u0002\u1dcc\u1dcd",
- "\u0007O\u0002\u0002\u1dcd\u1dce\u0007D\u0002\u0002\u1dce\u0498\u0003",
- "\u0002\u0002\u0002\u1dcf\u1dd0\u0007O\u0002\u0002\u1dd0\u1dd1\u0007",
- "G\u0002\u0002\u1dd1\u1dd2\u0007F\u0002\u0002\u1dd2\u1dd3\u0007K\u0002",
- "\u0002\u1dd3\u1dd4\u0007W\u0002\u0002\u1dd4\u1dd5\u0007O\u0002\u0002",
- "\u1dd5\u049a\u0003\u0002\u0002\u0002\u1dd6\u1dd7\u0007O\u0002\u0002",
- "\u1dd7\u1dd8\u0007G\u0002\u0002\u1dd8\u1dd9\u0007O\u0002\u0002\u1dd9",
- "\u1dda\u0007Q\u0002\u0002\u1dda\u1ddb\u0007T\u0002\u0002\u1ddb\u1ddc",
- "\u0007[\u0002\u0002\u1ddc\u1ddd\u0007a\u0002\u0002\u1ddd\u1dde\u0007",
- "Q\u0002\u0002\u1dde\u1ddf\u0007R\u0002\u0002\u1ddf\u1de0\u0007V\u0002",
- "\u0002\u1de0\u1de1\u0007K\u0002\u0002\u1de1\u1de2\u0007O\u0002\u0002",
- "\u1de2\u1de3\u0007K\u0002\u0002\u1de3\u1de4\u0007\\\u0002\u0002\u1de4",
- "\u1de5\u0007G\u0002\u0002\u1de5\u1de6\u0007F\u0002\u0002\u1de6\u1de7",
- "\u0007a\u0002\u0002\u1de7\u1de8\u0007F\u0002\u0002\u1de8\u1de9\u0007",
- "C\u0002\u0002\u1de9\u1dea\u0007V\u0002\u0002\u1dea\u1deb\u0007C\u0002",
- "\u0002\u1deb\u049c\u0003\u0002\u0002\u0002\u1dec\u1ded\u0007O\u0002",
- "\u0002\u1ded\u1dee\u0007G\u0002\u0002\u1dee\u1def\u0007U\u0002\u0002",
- "\u1def\u1df0\u0007U\u0002\u0002\u1df0\u1df1\u0007C\u0002\u0002\u1df1",
- "\u1df2\u0007I\u0002\u0002\u1df2\u1df3\u0007G\u0002\u0002\u1df3\u049e",
- "\u0003\u0002\u0002\u0002\u1df4\u1df5\u0007O\u0002\u0002\u1df5\u1df6",
- "\u0007K\u0002\u0002\u1df6\u1df7\u0007P\u0002\u0002\u1df7\u04a0\u0003",
- "\u0002\u0002\u0002\u1df8\u1df9\u0007O\u0002\u0002\u1df9\u1dfa\u0007",
- "K\u0002\u0002\u1dfa\u1dfb\u0007P\u0002\u0002\u1dfb\u1dfc\u0007a\u0002",
- "\u0002\u1dfc\u1dfd\u0007C\u0002\u0002\u1dfd\u1dfe\u0007E\u0002\u0002",
- "\u1dfe\u1dff\u0007V\u0002\u0002\u1dff\u1e00\u0007K\u0002\u0002\u1e00",
- "\u1e01\u0007X\u0002\u0002\u1e01\u1e02\u0007G\u0002\u0002\u1e02\u1e03",
- "\u0007a\u0002\u0002\u1e03\u1e04\u0007T\u0002\u0002\u1e04\u1e05\u0007",
- "Q\u0002\u0002\u1e05\u1e06\u0007Y\u0002\u0002\u1e06\u1e07\u0007X\u0002",
- "\u0002\u1e07\u1e08\u0007G\u0002\u0002\u1e08\u1e09\u0007T\u0002\u0002",
- "\u1e09\u1e0a\u0007U\u0002\u0002\u1e0a\u1e0b\u0007K\u0002\u0002\u1e0b",
- "\u1e0c\u0007Q\u0002\u0002\u1e0c\u1e0d\u0007P\u0002\u0002\u1e0d\u04a2",
- "\u0003\u0002\u0002\u0002\u1e0e\u1e0f\u0007O\u0002\u0002\u1e0f\u1e10",
- "\u0007K\u0002\u0002\u1e10\u1e11\u0007P\u0002\u0002\u1e11\u1e12\u0007",
- "a\u0002\u0002\u1e12\u1e13\u0007E\u0002\u0002\u1e13\u1e14\u0007R\u0002",
- "\u0002\u1e14\u1e15\u0007W\u0002\u0002\u1e15\u1e16\u0007a\u0002\u0002",
- "\u1e16\u1e17\u0007R\u0002\u0002\u1e17\u1e18\u0007G\u0002\u0002\u1e18",
- "\u1e19\u0007T\u0002\u0002\u1e19\u1e1a\u0007E\u0002\u0002\u1e1a\u1e1b",
- "\u0007G\u0002\u0002\u1e1b\u1e1c\u0007P\u0002\u0002\u1e1c\u1e1d\u0007",
- "V\u0002\u0002\u1e1d\u04a4\u0003\u0002\u0002\u0002\u1e1e\u1e1f\u0007",
- "O\u0002\u0002\u1e1f\u1e20\u0007K\u0002\u0002\u1e20\u1e21\u0007P\u0002",
- "\u0002\u1e21\u1e22\u0007a\u0002\u0002\u1e22\u1e23\u0007K\u0002\u0002",
- "\u1e23\u1e24\u0007Q\u0002\u0002\u1e24\u1e25\u0007R\u0002\u0002\u1e25",
- "\u1e26\u0007U\u0002\u0002\u1e26\u1e27\u0007a\u0002\u0002\u1e27\u1e28",
- "\u0007R\u0002\u0002\u1e28\u1e29\u0007G\u0002\u0002\u1e29\u1e2a\u0007",
- "T\u0002\u0002\u1e2a\u1e2b\u0007a\u0002\u0002\u1e2b\u1e2c\u0007X\u0002",
- "\u0002\u1e2c\u1e2d\u0007Q\u0002\u0002\u1e2d\u1e2e\u0007N\u0002\u0002",
- "\u1e2e\u1e2f\u0007W\u0002\u0002\u1e2f\u1e30\u0007O\u0002\u0002\u1e30",
- "\u1e31\u0007G\u0002\u0002\u1e31\u04a6\u0003\u0002\u0002\u0002\u1e32",
- "\u1e33\u0007O\u0002\u0002\u1e33\u1e34\u0007K\u0002\u0002\u1e34\u1e35",
- "\u0007P\u0002\u0002\u1e35\u1e36\u0007a\u0002\u0002\u1e36\u1e37\u0007",
- "O\u0002\u0002\u1e37\u1e38\u0007G\u0002\u0002\u1e38\u1e39\u0007O\u0002",
- "\u0002\u1e39\u1e3a\u0007Q\u0002\u0002\u1e3a\u1e3b\u0007T\u0002\u0002",
- "\u1e3b\u1e3c\u0007[\u0002\u0002\u1e3c\u1e3d\u0007a\u0002\u0002\u1e3d",
- "\u1e3e\u0007R\u0002\u0002\u1e3e\u1e3f\u0007G\u0002\u0002\u1e3f\u1e40",
- "\u0007T\u0002\u0002\u1e40\u1e41\u0007E\u0002\u0002\u1e41\u1e42\u0007",
- "G\u0002\u0002\u1e42\u1e43\u0007P\u0002\u0002\u1e43\u1e44\u0007V\u0002",
- "\u0002\u1e44\u04a8\u0003\u0002\u0002\u0002\u1e45\u1e46\u0007O\u0002",
- "\u0002\u1e46\u1e47\u0007K\u0002\u0002\u1e47\u1e48\u0007P\u0002\u0002",
- "\u1e48\u1e49\u0007W\u0002\u0002\u1e49\u1e4a\u0007V\u0002\u0002\u1e4a",
- "\u1e4b\u0007G\u0002\u0002\u1e4b\u1e4c\u0007U\u0002\u0002\u1e4c\u04aa",
- "\u0003\u0002\u0002\u0002\u1e4d\u1e4e\u0007O\u0002\u0002\u1e4e\u1e4f",
- "\u0007K\u0002\u0002\u1e4f\u1e50\u0007T\u0002\u0002\u1e50\u1e51\u0007",
- "T\u0002\u0002\u1e51\u1e52\u0007Q\u0002\u0002\u1e52\u1e53\u0007T\u0002",
- "\u0002\u1e53\u1e54\u0007a\u0002\u0002\u1e54\u1e55\u0007C\u0002\u0002",
- "\u1e55\u1e56\u0007F\u0002\u0002\u1e56\u1e57\u0007F\u0002\u0002\u1e57",
- "\u1e58\u0007T\u0002\u0002\u1e58\u1e59\u0007G\u0002\u0002\u1e59\u1e5a",
- "\u0007U\u0002\u0002\u1e5a\u1e5b\u0007U\u0002\u0002\u1e5b\u04ac\u0003",
- "\u0002\u0002\u0002\u1e5c\u1e5d\u0007O\u0002\u0002\u1e5d\u1e5e\u0007",
- "K\u0002\u0002\u1e5e\u1e5f\u0007Z\u0002\u0002\u1e5f\u1e60\u0007G\u0002",
- "\u0002\u1e60\u1e61\u0007F\u0002\u0002\u1e61\u1e62\u0007a\u0002\u0002",
- "\u1e62\u1e63\u0007R\u0002\u0002\u1e63\u1e64\u0007C\u0002\u0002\u1e64",
- "\u1e65\u0007I\u0002\u0002\u1e65\u1e66\u0007G\u0002\u0002\u1e66\u1e67",
- "\u0007a\u0002\u0002\u1e67\u1e68\u0007C\u0002\u0002\u1e68\u1e69\u0007",
- "N\u0002\u0002\u1e69\u1e6a\u0007N\u0002\u0002\u1e6a\u1e6b\u0007Q\u0002",
- "\u0002\u1e6b\u1e6c\u0007E\u0002\u0002\u1e6c\u1e6d\u0007C\u0002\u0002",
- "\u1e6d\u1e6e\u0007V\u0002\u0002\u1e6e\u1e6f\u0007K\u0002\u0002\u1e6f",
- "\u1e70\u0007Q\u0002\u0002\u1e70\u1e71\u0007P\u0002\u0002\u1e71\u04ae",
- "\u0003\u0002\u0002\u0002\u1e72\u1e73\u0007O\u0002\u0002\u1e73\u1e74",
- "\u0007Q\u0002\u0002\u1e74\u1e75\u0007F\u0002\u0002\u1e75\u1e76\u0007",
- "G\u0002\u0002\u1e76\u04b0\u0003\u0002\u0002\u0002\u1e77\u1e78\u0007",
- "O\u0002\u0002\u1e78\u1e79\u0007Q\u0002\u0002\u1e79\u1e7a\u0007F\u0002",
- "\u0002\u1e7a\u1e7b\u0007K\u0002\u0002\u1e7b\u1e7c\u0007H\u0002\u0002",
- "\u1e7c\u1e7d\u0007[\u0002\u0002\u1e7d\u04b2\u0003\u0002\u0002\u0002",
- "\u1e7e\u1e7f\u0007O\u0002\u0002\u1e7f\u1e80\u0007Q\u0002\u0002\u1e80",
- "\u1e81\u0007X\u0002\u0002\u1e81\u1e82\u0007G\u0002\u0002\u1e82\u04b4",
- "\u0003\u0002\u0002\u0002\u1e83\u1e84\u0007O\u0002\u0002\u1e84\u1e85",
- "\u0007W\u0002\u0002\u1e85\u1e86\u0007N\u0002\u0002\u1e86\u1e87\u0007",
- "V\u0002\u0002\u1e87\u1e88\u0007K\u0002\u0002\u1e88\u1e89\u0007a\u0002",
- "\u0002\u1e89\u1e8a\u0007W\u0002\u0002\u1e8a\u1e8b\u0007U\u0002\u0002",
- "\u1e8b\u1e8c\u0007G\u0002\u0002\u1e8c\u1e8d\u0007T\u0002\u0002\u1e8d",
- "\u04b6\u0003\u0002\u0002\u0002\u1e8e\u1e8f\u0007P\u0002\u0002\u1e8f",
- "\u1e90\u0007C\u0002\u0002\u1e90\u1e91\u0007O\u0002\u0002\u1e91\u1e92",
- "\u0007G\u0002\u0002\u1e92\u04b8\u0003\u0002\u0002\u0002\u1e93\u1e94",
- "\u0007P\u0002\u0002\u1e94\u1e95\u0007G\u0002\u0002\u1e95\u1e96\u0007",
- "U\u0002\u0002\u1e96\u1e97\u0007V\u0002\u0002\u1e97\u1e98\u0007G\u0002",
- "\u0002\u1e98\u1e99\u0007F\u0002\u0002\u1e99\u1e9a\u0007a\u0002\u0002",
- "\u1e9a\u1e9b\u0007V\u0002\u0002\u1e9b\u1e9c\u0007T\u0002\u0002\u1e9c",
- "\u1e9d\u0007K\u0002\u0002\u1e9d\u1e9e\u0007I\u0002\u0002\u1e9e\u1e9f",
- "\u0007I\u0002\u0002\u1e9f\u1ea0\u0007G\u0002\u0002\u1ea0\u1ea1\u0007",
- "T\u0002\u0002\u1ea1\u1ea2\u0007U\u0002\u0002\u1ea2\u04ba\u0003\u0002",
- "\u0002\u0002\u1ea3\u1ea4\u0007P\u0002\u0002\u1ea4\u1ea5\u0007G\u0002",
- "\u0002\u1ea5\u1ea6\u0007Y\u0002\u0002\u1ea6\u1ea7\u0007a\u0002\u0002",
- "\u1ea7\u1ea8\u0007C\u0002\u0002\u1ea8\u1ea9\u0007E\u0002\u0002\u1ea9",
- "\u1eaa\u0007E\u0002\u0002\u1eaa\u1eab\u0007Q\u0002\u0002\u1eab\u1eac",
- "\u0007W\u0002\u0002\u1eac\u1ead\u0007P\u0002\u0002\u1ead\u1eae\u0007",
- "V\u0002\u0002\u1eae\u04bc\u0003\u0002\u0002\u0002\u1eaf\u1eb0\u0007",
- "P\u0002\u0002\u1eb0\u1eb1\u0007G\u0002\u0002\u1eb1\u1eb2\u0007Y\u0002",
- "\u0002\u1eb2\u1eb3\u0007a\u0002\u0002\u1eb3\u1eb4\u0007D\u0002\u0002",
- "\u1eb4\u1eb5\u0007T\u0002\u0002\u1eb5\u1eb6\u0007Q\u0002\u0002\u1eb6",
- "\u1eb7\u0007M\u0002\u0002\u1eb7\u1eb8\u0007G\u0002\u0002\u1eb8\u1eb9",
- "\u0007T\u0002\u0002\u1eb9\u04be\u0003\u0002\u0002\u0002\u1eba\u1ebb",
- "\u0007P\u0002\u0002\u1ebb\u1ebc\u0007G\u0002\u0002\u1ebc\u1ebd\u0007",
- "Y\u0002\u0002\u1ebd\u1ebe\u0007a\u0002\u0002\u1ebe\u1ebf\u0007R\u0002",
- "\u0002\u1ebf\u1ec0\u0007C\u0002\u0002\u1ec0\u1ec1\u0007U\u0002\u0002",
- "\u1ec1\u1ec2\u0007U\u0002\u0002\u1ec2\u1ec3\u0007Y\u0002\u0002\u1ec3",
- "\u1ec4\u0007Q\u0002\u0002\u1ec4\u1ec5\u0007T\u0002\u0002\u1ec5\u1ec6",
- "\u0007F\u0002\u0002\u1ec6\u04c0\u0003\u0002\u0002\u0002\u1ec7\u1ec8",
- "\u0007P\u0002\u0002\u1ec8\u1ec9\u0007G\u0002\u0002\u1ec9\u1eca\u0007",
- "Z\u0002\u0002\u1eca\u1ecb\u0007V\u0002\u0002\u1ecb\u04c2\u0003\u0002",
- "\u0002\u0002\u1ecc\u1ecd\u0007P\u0002\u0002\u1ecd\u1ece\u0007Q\u0002",
- "\u0002\u1ece\u04c4\u0003\u0002\u0002\u0002\u1ecf\u1ed0\u0007P\u0002",
- "\u0002\u1ed0\u1ed1\u0007Q\u0002\u0002\u1ed1\u1ed2\u0007a\u0002\u0002",
- "\u1ed2\u1ed3\u0007V\u0002\u0002\u1ed3\u1ed4\u0007T\u0002\u0002\u1ed4",
- "\u1ed5\u0007W\u0002\u0002\u1ed5\u1ed6\u0007P\u0002\u0002\u1ed6\u1ed7",
- "\u0007E\u0002\u0002\u1ed7\u1ed8\u0007C\u0002\u0002\u1ed8\u1ed9\u0007",
- "V\u0002\u0002\u1ed9\u1eda\u0007G\u0002\u0002\u1eda\u04c6\u0003\u0002",
- "\u0002\u0002\u1edb\u1edc\u0007P\u0002\u0002\u1edc\u1edd\u0007Q\u0002",
- "\u0002\u1edd\u1ede\u0007a\u0002\u0002\u1ede\u1edf\u0007Y\u0002\u0002",
- "\u1edf\u1ee0\u0007C\u0002\u0002\u1ee0\u1ee1\u0007K\u0002\u0002\u1ee1",
- "\u1ee2\u0007V\u0002\u0002\u1ee2\u04c8\u0003\u0002\u0002\u0002\u1ee3",
- "\u1ee4\u0007P\u0002\u0002\u1ee4\u1ee5\u0007Q\u0002\u0002\u1ee5\u1ee6",
- "\u0007E\u0002\u0002\u1ee6\u1ee7\u0007Q\u0002\u0002\u1ee7\u1ee8\u0007",
- "W\u0002\u0002\u1ee8\u1ee9\u0007P\u0002\u0002\u1ee9\u1eea\u0007V\u0002",
- "\u0002\u1eea\u04ca\u0003\u0002\u0002\u0002\u1eeb\u1eec\u0007P\u0002",
- "\u0002\u1eec\u1eed\u0007Q\u0002\u0002\u1eed\u1eee\u0007F\u0002\u0002",
- "\u1eee\u1eef\u0007G\u0002\u0002\u1eef\u1ef0\u0007U\u0002\u0002\u1ef0",
- "\u04cc\u0003\u0002\u0002\u0002\u1ef1\u1ef2\u0007P\u0002\u0002\u1ef2",
- "\u1ef3\u0007Q\u0002\u0002\u1ef3\u1ef4\u0007G\u0002\u0002\u1ef4\u1ef5",
- "\u0007Z\u0002\u0002\u1ef5\u1ef6\u0007R\u0002\u0002\u1ef6\u1ef7\u0007",
- "C\u0002\u0002\u1ef7\u1ef8\u0007P\u0002\u0002\u1ef8\u1ef9\u0007F\u0002",
- "\u0002\u1ef9\u04ce\u0003\u0002\u0002\u0002\u1efa\u1efb\u0007P\u0002",
- "\u0002\u1efb\u1efc\u0007Q\u0002\u0002\u1efc\u1efd\u0007P\u0002\u0002",
- "\u1efd\u1efe\u0007a\u0002\u0002\u1efe\u1eff\u0007V\u0002\u0002\u1eff",
- "\u1f00\u0007T\u0002\u0002\u1f00\u1f01\u0007C\u0002\u0002\u1f01\u1f02",
- "\u0007P\u0002\u0002\u1f02\u1f03\u0007U\u0002\u0002\u1f03\u1f04\u0007",
- "C\u0002\u0002\u1f04\u1f05\u0007E\u0002\u0002\u1f05\u1f06\u0007V\u0002",
- "\u0002\u1f06\u1f07\u0007G\u0002\u0002\u1f07\u1f08\u0007F\u0002\u0002",
- "\u1f08\u1f09\u0007a\u0002\u0002\u1f09\u1f0a\u0007C\u0002\u0002\u1f0a",
- "\u1f0b\u0007E\u0002\u0002\u1f0b\u1f0c\u0007E\u0002\u0002\u1f0c\u1f0d",
- "\u0007G\u0002\u0002\u1f0d\u1f0e\u0007U\u0002\u0002\u1f0e\u1f0f\u0007",
- "U\u0002\u0002\u1f0f\u04d0\u0003\u0002\u0002\u0002\u1f10\u1f11\u0007",
- "P\u0002\u0002\u1f11\u1f12\u0007Q\u0002\u0002\u1f12\u1f13\u0007T\u0002",
- "\u0002\u1f13\u1f14\u0007G\u0002\u0002\u1f14\u1f15\u0007E\u0002\u0002",
- "\u1f15\u1f16\u0007Q\u0002\u0002\u1f16\u1f17\u0007O\u0002\u0002\u1f17",
- "\u1f18\u0007R\u0002\u0002\u1f18\u1f19\u0007W\u0002\u0002\u1f19\u1f1a",
- "\u0007V\u0002\u0002\u1f1a\u1f1b\u0007G\u0002\u0002\u1f1b\u04d2\u0003",
- "\u0002\u0002\u0002\u1f1c\u1f1d\u0007P\u0002\u0002\u1f1d\u1f1e\u0007",
- "Q\u0002\u0002\u1f1e\u1f1f\u0007T\u0002\u0002\u1f1f\u1f20\u0007G\u0002",
- "\u0002\u1f20\u1f21\u0007E\u0002\u0002\u1f21\u1f22\u0007Q\u0002\u0002",
- "\u1f22\u1f23\u0007X\u0002\u0002\u1f23\u1f24\u0007G\u0002\u0002\u1f24",
- "\u1f25\u0007T\u0002\u0002\u1f25\u1f26\u0007[\u0002\u0002\u1f26\u04d4",
- "\u0003\u0002\u0002\u0002\u1f27\u1f28\u0007P\u0002\u0002\u1f28\u1f29",
- "\u0007Q\u0002\u0002\u1f29\u1f2a\u0007Y\u0002\u0002\u1f2a\u1f2b\u0007",
- "C\u0002\u0002\u1f2b\u1f2c\u0007K\u0002\u0002\u1f2c\u1f2d\u0007V\u0002",
- "\u0002\u1f2d\u04d6\u0003\u0002\u0002\u0002\u1f2e\u1f2f\u0007P\u0002",
- "\u0002\u1f2f\u1f30\u0007V\u0002\u0002\u1f30\u1f31\u0007K\u0002\u0002",
- "\u1f31\u1f32\u0007N\u0002\u0002\u1f32\u1f33\u0007G\u0002\u0002\u1f33",
- "\u04d8\u0003\u0002\u0002\u0002\u1f34\u1f35\u0007P\u0002\u0002\u1f35",
- "\u1f36\u0007W\u0002\u0002\u1f36\u1f37\u0007O\u0002\u0002\u1f37\u1f38",
- "\u0007C\u0002\u0002\u1f38\u1f39\u0007P\u0002\u0002\u1f39\u1f3a\u0007",
- "Q\u0002\u0002\u1f3a\u1f3b\u0007F\u0002\u0002\u1f3b\u1f3c\u0007G\u0002",
- "\u0002\u1f3c\u04da\u0003\u0002\u0002\u0002\u1f3d\u1f3e\u0007P\u0002",
- "\u0002\u1f3e\u1f3f\u0007W\u0002\u0002\u1f3f\u1f40\u0007O\u0002\u0002",
- "\u1f40\u1f41\u0007D\u0002\u0002\u1f41\u1f42\u0007G\u0002\u0002\u1f42",
- "\u1f43\u0007T\u0002\u0002\u1f43\u04dc\u0003\u0002\u0002\u0002\u1f44",
- "\u1f45\u0007P\u0002\u0002\u1f45\u1f46\u0007W\u0002\u0002\u1f46\u1f47",
- "\u0007O\u0002\u0002\u1f47\u1f48\u0007G\u0002\u0002\u1f48\u1f49\u0007",
- "T\u0002\u0002\u1f49\u1f4a\u0007K\u0002\u0002\u1f4a\u1f4b\u0007E\u0002",
- "\u0002\u1f4b\u1f4c\u0007a\u0002\u0002\u1f4c\u1f4d\u0007T\u0002\u0002",
- "\u1f4d\u1f4e\u0007Q\u0002\u0002\u1f4e\u1f4f\u0007W\u0002\u0002\u1f4f",
- "\u1f50\u0007P\u0002\u0002\u1f50\u1f51\u0007F\u0002\u0002\u1f51\u1f52",
- "\u0007C\u0002\u0002\u1f52\u1f53\u0007D\u0002\u0002\u1f53\u1f54\u0007",
- "Q\u0002\u0002\u1f54\u1f55\u0007T\u0002\u0002\u1f55\u1f56\u0007V\u0002",
- "\u0002\u1f56\u04de\u0003\u0002\u0002\u0002\u1f57\u1f58\u0007Q\u0002",
- "\u0002\u1f58\u1f59\u0007D\u0002\u0002\u1f59\u1f5a\u0007L\u0002\u0002",
- "\u1f5a\u1f5b\u0007G\u0002\u0002\u1f5b\u1f5c\u0007E\u0002\u0002\u1f5c",
- "\u1f5d\u0007V\u0002\u0002\u1f5d\u04e0\u0003\u0002\u0002\u0002\u1f5e",
- "\u1f5f\u0007Q\u0002\u0002\u1f5f\u1f60\u0007H\u0002\u0002\u1f60\u1f61",
- "\u0007H\u0002\u0002\u1f61\u1f62\u0007N\u0002\u0002\u1f62\u1f63\u0007",
- "K\u0002\u0002\u1f63\u1f64\u0007P\u0002\u0002\u1f64\u1f65\u0007G\u0002",
- "\u0002\u1f65\u04e2\u0003\u0002\u0002\u0002\u1f66\u1f67\u0007Q\u0002",
- "\u0002\u1f67\u1f68\u0007H\u0002\u0002\u1f68\u1f69\u0007H\u0002\u0002",
- "\u1f69\u1f6a\u0007U\u0002\u0002\u1f6a\u1f6b\u0007G\u0002\u0002\u1f6b",
- "\u1f6c\u0007V\u0002\u0002\u1f6c\u04e4\u0003\u0002\u0002\u0002\u1f6d",
- "\u1f6e\u0007Q\u0002\u0002\u1f6e\u1f6f\u0007N\u0002\u0002\u1f6f\u1f70",
- "\u0007F\u0002\u0002\u1f70\u1f71\u0007a\u0002\u0002\u1f71\u1f72\u0007",
- "C\u0002\u0002\u1f72\u1f73\u0007E\u0002\u0002\u1f73\u1f74\u0007E\u0002",
- "\u0002\u1f74\u1f75\u0007Q\u0002\u0002\u1f75\u1f76\u0007W\u0002\u0002",
- "\u1f76\u1f77\u0007P\u0002\u0002\u1f77\u1f78\u0007V\u0002\u0002\u1f78",
- "\u04e6\u0003\u0002\u0002\u0002\u1f79\u1f7a\u0007Q\u0002\u0002\u1f7a",
- "\u1f7b\u0007P\u0002\u0002\u1f7b\u1f7c\u0007N\u0002\u0002\u1f7c\u1f7d",
- "\u0007K\u0002\u0002\u1f7d\u1f7e\u0007P\u0002\u0002\u1f7e\u1f7f\u0007",
- "G\u0002\u0002\u1f7f\u04e8\u0003\u0002\u0002\u0002\u1f80\u1f81\u0007",
- "Q\u0002\u0002\u1f81\u1f82\u0007P\u0002\u0002\u1f82\u1f83\u0007N\u0002",
- "\u0002\u1f83\u1f84\u0007[\u0002\u0002\u1f84\u04ea\u0003\u0002\u0002",
- "\u0002\u1f85\u1f86\u0007Q\u0002\u0002\u1f86\u1f87\u0007R\u0002\u0002",
- "\u1f87\u1f88\u0007G\u0002\u0002\u1f88\u1f89\u0007P\u0002\u0002\u1f89",
- "\u1f8a\u0007a\u0002\u0002\u1f8a\u1f8b\u0007G\u0002\u0002\u1f8b\u1f8c",
- "\u0007Z\u0002\u0002\u1f8c\u1f8d\u0007K\u0002\u0002\u1f8d\u1f8e\u0007",
- "U\u0002\u0002\u1f8e\u1f8f\u0007V\u0002\u0002\u1f8f\u1f90\u0007K\u0002",
- "\u0002\u1f90\u1f91\u0007P\u0002\u0002\u1f91\u1f92\u0007I\u0002\u0002",
- "\u1f92\u04ec\u0003\u0002\u0002\u0002\u1f93\u1f94\u0007Q\u0002\u0002",
- "\u1f94\u1f95\u0007R\u0002\u0002\u1f95\u1f96\u0007V\u0002\u0002\u1f96",
- "\u1f97\u0007K\u0002\u0002\u1f97\u1f98\u0007O\u0002\u0002\u1f98\u1f99",
- "\u0007K\u0002\u0002\u1f99\u1f9a\u0007U\u0002\u0002\u1f9a\u1f9b\u0007",
- "V\u0002\u0002\u1f9b\u1f9c\u0007K\u0002\u0002\u1f9c\u1f9d\u0007E\u0002",
- "\u0002\u1f9d\u04ee\u0003\u0002\u0002\u0002\u1f9e\u1f9f\u0007Q\u0002",
- "\u0002\u1f9f\u1fa0\u0007R\u0002\u0002\u1fa0\u1fa1\u0007V\u0002\u0002",
- "\u1fa1\u1fa2\u0007K\u0002\u0002\u1fa2\u1fa3\u0007O\u0002\u0002\u1fa3",
- "\u1fa4\u0007K\u0002\u0002\u1fa4\u1fa5\u0007\\\u0002\u0002\u1fa5\u1fa6",
- "\u0007G\u0002\u0002\u1fa6\u04f0\u0003\u0002\u0002\u0002\u1fa7\u1fa8",
- "\u0007Q\u0002\u0002\u1fa8\u1fa9\u0007W\u0002\u0002\u1fa9\u1faa\u0007",
- "V\u0002\u0002\u1faa\u04f2\u0003\u0002\u0002\u0002\u1fab\u1fac\u0007",
- "Q\u0002\u0002\u1fac\u1fad\u0007W\u0002\u0002\u1fad\u1fae\u0007V\u0002",
- "\u0002\u1fae\u1faf\u0007R\u0002\u0002\u1faf\u1fb0\u0007W\u0002\u0002",
- "\u1fb0\u1fb1\u0007V\u0002\u0002\u1fb1\u04f4\u0003\u0002\u0002\u0002",
- "\u1fb2\u1fb3\u0007Q\u0002\u0002\u1fb3\u1fb4\u0007X\u0002\u0002\u1fb4",
- "\u1fb5\u0007G\u0002\u0002\u1fb5\u1fb6\u0007T\u0002\u0002\u1fb6\u1fb7",
- "\u0007T\u0002\u0002\u1fb7\u1fb8\u0007K\u0002\u0002\u1fb8\u1fb9\u0007",
- "F\u0002\u0002\u1fb9\u1fba\u0007G\u0002\u0002\u1fba\u04f6\u0003\u0002",
- "\u0002\u0002\u1fbb\u1fbc\u0007Q\u0002\u0002\u1fbc\u1fbd\u0007Y\u0002",
- "\u0002\u1fbd\u1fbe\u0007P\u0002\u0002\u1fbe\u1fbf\u0007G\u0002\u0002",
- "\u1fbf\u1fc0\u0007T\u0002\u0002\u1fc0\u04f8\u0003\u0002\u0002\u0002",
- "\u1fc1\u1fc2\u0007R\u0002\u0002\u1fc2\u1fc3\u0007C\u0002\u0002\u1fc3",
- "\u1fc4\u0007I\u0002\u0002\u1fc4\u1fc5\u0007G\u0002\u0002\u1fc5\u1fc6",
- "\u0007a\u0002\u0002\u1fc6\u1fc7\u0007X\u0002\u0002\u1fc7\u1fc8\u0007",
- "G\u0002\u0002\u1fc8\u1fc9\u0007T\u0002\u0002\u1fc9\u1fca\u0007K\u0002",
- "\u0002\u1fca\u1fcb\u0007H\u0002\u0002\u1fcb\u1fcc\u0007[\u0002\u0002",
- "\u1fcc\u04fa\u0003\u0002\u0002\u0002\u1fcd\u1fce\u0007R\u0002\u0002",
- "\u1fce\u1fcf\u0007C\u0002\u0002\u1fcf\u1fd0\u0007T\u0002\u0002\u1fd0",
- "\u1fd1\u0007C\u0002\u0002\u1fd1\u1fd2\u0007O\u0002\u0002\u1fd2\u1fd3",
- "\u0007G\u0002\u0002\u1fd3\u1fd4\u0007V\u0002\u0002\u1fd4\u1fd5\u0007",
- "G\u0002\u0002\u1fd5\u1fd6\u0007T\u0002\u0002\u1fd6\u1fd7\u0007K\u0002",
- "\u0002\u1fd7\u1fd8\u0007\\\u0002\u0002\u1fd8\u1fd9\u0007C\u0002\u0002",
- "\u1fd9\u1fda\u0007V\u0002\u0002\u1fda\u1fdb\u0007K\u0002\u0002\u1fdb",
- "\u1fdc\u0007Q\u0002\u0002\u1fdc\u1fdd\u0007P\u0002\u0002\u1fdd\u04fc",
- "\u0003\u0002\u0002\u0002\u1fde\u1fdf\u0007R\u0002\u0002\u1fdf\u1fe0",
- "\u0007C\u0002\u0002\u1fe0\u1fe1\u0007T\u0002\u0002\u1fe1\u1fe2\u0007",
- "V\u0002\u0002\u1fe2\u1fe3\u0007K\u0002\u0002\u1fe3\u1fe4\u0007V\u0002",
- "\u0002\u1fe4\u1fe5\u0007K\u0002\u0002\u1fe5\u1fe6\u0007Q\u0002\u0002",
- "\u1fe6\u1fe7\u0007P\u0002\u0002\u1fe7\u04fe\u0003\u0002\u0002\u0002",
- "\u1fe8\u1fe9\u0007R\u0002\u0002\u1fe9\u1fea\u0007C\u0002\u0002\u1fea",
- "\u1feb\u0007T\u0002\u0002\u1feb\u1fec\u0007V\u0002\u0002\u1fec\u1fed",
- "\u0007K\u0002\u0002\u1fed\u1fee\u0007V\u0002\u0002\u1fee\u1fef\u0007",
- "K\u0002\u0002\u1fef\u1ff0\u0007Q\u0002\u0002\u1ff0\u1ff1\u0007P\u0002",
- "\u0002\u1ff1\u1ff2\u0007U\u0002\u0002\u1ff2\u0500\u0003\u0002\u0002",
- "\u0002\u1ff3\u1ff4\u0007R\u0002\u0002\u1ff4\u1ff5\u0007C\u0002\u0002",
- "\u1ff5\u1ff6\u0007T\u0002\u0002\u1ff6\u1ff7\u0007V\u0002\u0002\u1ff7",
- "\u1ff8\u0007P\u0002\u0002\u1ff8\u1ff9\u0007G\u0002\u0002\u1ff9\u1ffa",
- "\u0007T\u0002\u0002\u1ffa\u0502\u0003\u0002\u0002\u0002\u1ffb\u1ffc",
- "\u0007R\u0002\u0002\u1ffc\u1ffd\u0007C\u0002\u0002\u1ffd\u1ffe\u0007",
- "V\u0002\u0002\u1ffe\u1fff\u0007J\u0002\u0002\u1fff\u0504\u0003\u0002",
- "\u0002\u0002\u2000\u2001\u0007R\u0002\u0002\u2001\u2002\u0007Q\u0002",
- "\u0002\u2002\u2003\u0007K\u0002\u0002\u2003\u2004\u0007U\u0002\u0002",
- "\u2004\u2005\u0007Q\u0002\u0002\u2005\u2006\u0007P\u0002\u0002\u2006",
- "\u2007\u0007a\u0002\u0002\u2007\u2008\u0007O\u0002\u0002\u2008\u2009",
- "\u0007G\u0002\u0002\u2009\u200a\u0007U\u0002\u0002\u200a\u200b\u0007",
- "U\u0002\u0002\u200b\u200c\u0007C\u0002\u0002\u200c\u200d\u0007I\u0002",
- "\u0002\u200d\u200e\u0007G\u0002\u0002\u200e\u200f\u0007a\u0002\u0002",
- "\u200f\u2010\u0007J\u0002\u0002\u2010\u2011\u0007C\u0002\u0002\u2011",
- "\u2012\u0007P\u0002\u0002\u2012\u2013\u0007F\u0002\u0002\u2013\u2014",
- "\u0007N\u0002\u0002\u2014\u2015\u0007K\u0002\u0002\u2015\u2016\u0007",
- "P\u0002\u0002\u2016\u2017\u0007I\u0002\u0002\u2017\u0506\u0003\u0002",
- "\u0002\u0002\u2018\u2019\u0007R\u0002\u0002\u2019\u201a\u0007Q\u0002",
- "\u0002\u201a\u201b\u0007Q\u0002\u0002\u201b\u201c\u0007N\u0002\u0002",
- "\u201c\u0508\u0003\u0002\u0002\u0002\u201d\u201e\u0007R\u0002\u0002",
- "\u201e\u201f\u0007Q\u0002\u0002\u201f\u2020\u0007T\u0002\u0002\u2020",
- "\u2021\u0007V\u0002\u0002\u2021\u050a\u0003\u0002\u0002\u0002\u2022",
- "\u2023\u0007R\u0002\u0002\u2023\u2024\u0007T\u0002\u0002\u2024\u2025",
- "\u0007G\u0002\u0002\u2025\u2026\u0007E\u0002\u0002\u2026\u2027\u0007",
- "G\u0002\u0002\u2027\u2028\u0007F\u0002\u0002\u2028\u2029\u0007K\u0002",
- "\u0002\u2029\u202a\u0007P\u0002\u0002\u202a\u202b\u0007I\u0002\u0002",
- "\u202b\u050c\u0003\u0002\u0002\u0002\u202c\u202d\u0007R\u0002\u0002",
- "\u202d\u202e\u0007T\u0002\u0002\u202e\u202f\u0007K\u0002\u0002\u202f",
- "\u2030\u0007O\u0002\u0002\u2030\u2031\u0007C\u0002\u0002\u2031\u2032",
- "\u0007T\u0002\u0002\u2032\u2033\u0007[\u0002\u0002\u2033\u2034\u0007",
- "a\u0002\u0002\u2034\u2035\u0007T\u0002\u0002\u2035\u2036\u0007Q\u0002",
- "\u0002\u2036\u2037\u0007N\u0002\u0002\u2037\u2038\u0007G\u0002\u0002",
- "\u2038\u050e\u0003\u0002\u0002\u0002\u2039\u203a\u0007R\u0002\u0002",
- "\u203a\u203b\u0007T\u0002\u0002\u203b\u203c\u0007K\u0002\u0002\u203c",
- "\u203d\u0007Q\u0002\u0002\u203d\u203e\u0007T\u0002\u0002\u203e\u0510",
- "\u0003\u0002\u0002\u0002\u203f\u2040\u0007R\u0002\u0002\u2040\u2041",
- "\u0007T\u0002\u0002\u2041\u2042\u0007K\u0002\u0002\u2042\u2043\u0007",
- "Q\u0002\u0002\u2043\u2044\u0007T\u0002\u0002\u2044\u2045\u0007K\u0002",
- "\u0002\u2045\u2046\u0007V\u0002\u0002\u2046\u2047\u0007[\u0002\u0002",
- "\u2047\u0512\u0003\u0002\u0002\u0002\u2048\u2049\u0007R\u0002\u0002",
- "\u2049\u204a\u0007T\u0002\u0002\u204a\u204b\u0007K\u0002\u0002\u204b",
- "\u204c\u0007Q\u0002\u0002\u204c\u204d\u0007T\u0002\u0002\u204d\u204e",
- "\u0007K\u0002\u0002\u204e\u204f\u0007V\u0002\u0002\u204f\u2050\u0007",
- "[\u0002\u0002\u2050\u2051\u0007a\u0002\u0002\u2051\u2052\u0007N\u0002",
- "\u0002\u2052\u2053\u0007G\u0002\u0002\u2053\u2054\u0007X\u0002\u0002",
- "\u2054\u2055\u0007G\u0002\u0002\u2055\u2056\u0007N\u0002\u0002\u2056",
- "\u0514\u0003\u0002\u0002\u0002\u2057\u2058\u0007R\u0002\u0002\u2058",
- "\u2059\u0007T\u0002\u0002\u2059\u205a\u0007K\u0002\u0002\u205a\u205b",
- "\u0007X\u0002\u0002\u205b\u205c\u0007C\u0002\u0002\u205c\u205d\u0007",
- "V\u0002\u0002\u205d\u205e\u0007G\u0002\u0002\u205e\u0516\u0003\u0002",
- "\u0002\u0002\u205f\u2060\u0007R\u0002\u0002\u2060\u2061\u0007T\u0002",
- "\u0002\u2061\u2062\u0007K\u0002\u0002\u2062\u2063\u0007X\u0002\u0002",
- "\u2063\u2064\u0007C\u0002\u0002\u2064\u2065\u0007V\u0002\u0002\u2065",
- "\u2066\u0007G\u0002\u0002\u2066\u2067\u0007a\u0002\u0002\u2067\u2068",
- "\u0007M\u0002\u0002\u2068\u2069\u0007G\u0002\u0002\u2069\u206a\u0007",
- "[\u0002\u0002\u206a\u0518\u0003\u0002\u0002\u0002\u206b\u206c\u0007",
- "R\u0002\u0002\u206c\u206d\u0007T\u0002\u0002\u206d\u206e\u0007K\u0002",
- "\u0002\u206e\u206f\u0007X\u0002\u0002\u206f\u2070\u0007K\u0002\u0002",
- "\u2070\u2071\u0007N\u0002\u0002\u2071\u2072\u0007G\u0002\u0002\u2072",
- "\u2073\u0007I\u0002\u0002\u2073\u2074\u0007G\u0002\u0002\u2074\u2075",
- "\u0007U\u0002\u0002\u2075\u051a\u0003\u0002\u0002\u0002\u2076\u2077",
- "\u0007R\u0002\u0002\u2077\u2078\u0007T\u0002\u0002\u2078\u2079\u0007",
- "Q\u0002\u0002\u2079\u207a\u0007E\u0002\u0002\u207a\u207b\u0007G\u0002",
- "\u0002\u207b\u207c\u0007F\u0002\u0002\u207c\u207d\u0007W\u0002\u0002",
- "\u207d\u207e\u0007T\u0002\u0002\u207e\u207f\u0007G\u0002\u0002\u207f",
- "\u2080\u0007a\u0002\u0002\u2080\u2081\u0007P\u0002\u0002\u2081\u2082",
- "\u0007C\u0002\u0002\u2082\u2083\u0007O\u0002\u0002\u2083\u2084\u0007",
- "G\u0002\u0002\u2084\u051c\u0003\u0002\u0002\u0002\u2085\u2086\u0007",
- "R\u0002\u0002\u2086\u2087\u0007T\u0002\u0002\u2087\u2088\u0007Q\u0002",
- "\u0002\u2088\u2089\u0007R\u0002\u0002\u2089\u208a\u0007G\u0002\u0002",
- "\u208a\u208b\u0007T\u0002\u0002\u208b\u208c\u0007V\u0002\u0002\u208c",
- "\u208d\u0007[\u0002\u0002\u208d\u051e\u0003\u0002\u0002\u0002\u208e",
- "\u208f\u0007R\u0002\u0002\u208f\u2090\u0007T\u0002\u0002\u2090\u2091",
- "\u0007Q\u0002\u0002\u2091\u2092\u0007X\u0002\u0002\u2092\u2093\u0007",
- "K\u0002\u0002\u2093\u2094\u0007F\u0002\u0002\u2094\u2095\u0007G\u0002",
- "\u0002\u2095\u2096\u0007T\u0002\u0002\u2096\u0520\u0003\u0002\u0002",
- "\u0002\u2097\u2098\u0007R\u0002\u0002\u2098\u2099\u0007T\u0002\u0002",
- "\u2099\u209a\u0007Q\u0002\u0002\u209a\u209b\u0007X\u0002\u0002\u209b",
- "\u209c\u0007K\u0002\u0002\u209c\u209d\u0007F\u0002\u0002\u209d\u209e",
- "\u0007G\u0002\u0002\u209e\u209f\u0007T\u0002\u0002\u209f\u20a0\u0007",
- "a\u0002\u0002\u20a0\u20a1\u0007M\u0002\u0002\u20a1\u20a2\u0007G\u0002",
- "\u0002\u20a2\u20a3\u0007[\u0002\u0002\u20a3\u20a4\u0007a\u0002\u0002",
- "\u20a4\u20a5\u0007P\u0002\u0002\u20a5\u20a6\u0007C\u0002\u0002\u20a6",
- "\u20a7\u0007O\u0002\u0002\u20a7\u20a8\u0007G\u0002\u0002\u20a8\u0522",
- "\u0003\u0002\u0002\u0002\u20a9\u20aa\u0007S\u0002\u0002\u20aa\u20ab",
- "\u0007W\u0002\u0002\u20ab\u20ac\u0007G\u0002\u0002\u20ac\u20ad\u0007",
- "T\u0002\u0002\u20ad\u20ae\u0007[\u0002\u0002\u20ae\u0524\u0003\u0002",
- "\u0002\u0002\u20af\u20b0\u0007S\u0002\u0002\u20b0\u20b1\u0007W\u0002",
- "\u0002\u20b1\u20b2\u0007G\u0002\u0002\u20b2\u20b3\u0007W\u0002\u0002",
- "\u20b3\u20b4\u0007G\u0002\u0002\u20b4\u0526\u0003\u0002\u0002\u0002",
- "\u20b5\u20b6\u0007S\u0002\u0002\u20b6\u20b7\u0007W\u0002\u0002\u20b7",
- "\u20b8\u0007G\u0002\u0002\u20b8\u20b9\u0007W\u0002\u0002\u20b9\u20ba",
- "\u0007G\u0002\u0002\u20ba\u20bb\u0007a\u0002\u0002\u20bb\u20bc\u0007",
- "F\u0002\u0002\u20bc\u20bd\u0007G\u0002\u0002\u20bd\u20be\u0007N\u0002",
- "\u0002\u20be\u20bf\u0007C\u0002\u0002\u20bf\u20c0\u0007[\u0002\u0002",
- "\u20c0\u0528\u0003\u0002\u0002\u0002\u20c1\u20c2\u0007S\u0002\u0002",
- "\u20c2\u20c3\u0007W\u0002\u0002\u20c3\u20c4\u0007Q\u0002\u0002\u20c4",
- "\u20c5\u0007V\u0002\u0002\u20c5\u20c6\u0007G\u0002\u0002\u20c6\u20c7",
- "\u0007F\u0002\u0002\u20c7\u20c8\u0007a\u0002\u0002\u20c8\u20c9\u0007",
- "K\u0002\u0002\u20c9\u20ca\u0007F\u0002\u0002\u20ca\u20cb\u0007G\u0002",
- "\u0002\u20cb\u20cc\u0007P\u0002\u0002\u20cc\u20cd\u0007V\u0002\u0002",
- "\u20cd\u20ce\u0007K\u0002\u0002\u20ce\u20cf\u0007H\u0002\u0002\u20cf",
- "\u20d0\u0007K\u0002\u0002\u20d0\u20d1\u0007G\u0002\u0002\u20d1\u20d2",
- "\u0007T\u0002\u0002\u20d2\u052a\u0003\u0002\u0002\u0002\u20d3\u20d4",
- "\u0007T\u0002\u0002\u20d4\u20d5\u0007C\u0002\u0002\u20d5\u20d6\u0007",
- "P\u0002\u0002\u20d6\u20d7\u0007I\u0002\u0002\u20d7\u20d8\u0007G\u0002",
- "\u0002\u20d8\u052c\u0003\u0002\u0002\u0002\u20d9\u20da\u0007T\u0002",
- "\u0002\u20da\u20db\u0007C\u0002\u0002\u20db\u20dc\u0007P\u0002\u0002",
- "\u20dc\u20dd\u0007M\u0002\u0002\u20dd\u052e\u0003\u0002\u0002\u0002",
- "\u20de\u20df\u0007T\u0002\u0002\u20df\u20e0\u0007E\u0002\u0002\u20e0",
- "\u20e1\u00074\u0002\u0002\u20e1\u0530\u0003\u0002\u0002\u0002\u20e2",
- "\u20e3\u0007T\u0002\u0002\u20e3\u20e4\u0007E\u0002\u0002\u20e4\u20e5",
- "\u00076\u0002\u0002\u20e5\u0532\u0003\u0002\u0002\u0002\u20e6\u20e7",
- "\u0007T\u0002\u0002\u20e7\u20e8\u0007E\u0002\u0002\u20e8\u20e9\u0007",
- "6\u0002\u0002\u20e9\u20ea\u0007a\u0002\u0002\u20ea\u20eb\u00073\u0002",
- "\u0002\u20eb\u20ec\u00074\u0002\u0002\u20ec\u20ed\u0007:\u0002\u0002",
- "\u20ed\u0534\u0003\u0002\u0002\u0002\u20ee\u20ef\u0007T\u0002\u0002",
- "\u20ef\u20f0\u0007G\u0002\u0002\u20f0\u20f1\u0007C\u0002\u0002\u20f1",
- "\u20f2\u0007F\u0002\u0002\u20f2\u20f3\u0007a\u0002\u0002\u20f3\u20f4",
- "\u0007E\u0002\u0002\u20f4\u20f5\u0007Q\u0002\u0002\u20f5\u20f6\u0007",
- "O\u0002\u0002\u20f6\u20f7\u0007O\u0002\u0002\u20f7\u20f8\u0007K\u0002",
- "\u0002\u20f8\u20f9\u0007V\u0002\u0002\u20f9\u20fa\u0007V\u0002\u0002",
- "\u20fa\u20fb\u0007G\u0002\u0002\u20fb\u20fc\u0007F\u0002\u0002\u20fc",
- "\u20fd\u0007a\u0002\u0002\u20fd\u20fe\u0007U\u0002\u0002\u20fe\u20ff",
- "\u0007P\u0002\u0002\u20ff\u2100\u0007C\u0002\u0002\u2100\u2101\u0007",
- "R\u0002\u0002\u2101\u2102\u0007U\u0002\u0002\u2102\u2103\u0007J\u0002",
- "\u0002\u2103\u2104\u0007Q\u0002\u0002\u2104\u2105\u0007V\u0002\u0002",
- "\u2105\u0536\u0003\u0002\u0002\u0002\u2106\u2107\u0007T\u0002\u0002",
- "\u2107\u2108\u0007G\u0002\u0002\u2108\u2109\u0007C\u0002\u0002\u2109",
- "\u210a\u0007F\u0002\u0002\u210a\u210b\u0007a\u0002\u0002\u210b\u210c",
- "\u0007Q\u0002\u0002\u210c\u210d\u0007P\u0002\u0002\u210d\u210e\u0007",
- "N\u0002\u0002\u210e\u210f\u0007[\u0002\u0002\u210f\u0538\u0003\u0002",
- "\u0002\u0002\u2110\u2111\u0007T\u0002\u0002\u2111\u2112\u0007G\u0002",
- "\u0002\u2112\u2113\u0007C\u0002\u0002\u2113\u2114\u0007F\u0002\u0002",
- "\u2114\u2115\u0007a\u0002\u0002\u2115\u2116\u0007Q\u0002\u0002\u2116",
- "\u2117\u0007P\u0002\u0002\u2117\u2118\u0007N\u0002\u0002\u2118\u2119",
- "\u0007[\u0002\u0002\u2119\u211a\u0007a\u0002\u0002\u211a\u211b\u0007",
- "T\u0002\u0002\u211b\u211c\u0007Q\u0002\u0002\u211c\u211d\u0007W\u0002",
- "\u0002\u211d\u211e\u0007V\u0002\u0002\u211e\u211f\u0007K\u0002\u0002",
- "\u211f\u2120\u0007P\u0002\u0002\u2120\u2121\u0007I\u0002\u0002\u2121",
- "\u2122\u0007a\u0002\u0002\u2122\u2123\u0007N\u0002\u0002\u2123\u2124",
- "\u0007K\u0002\u0002\u2124\u2125\u0007U\u0002\u0002\u2125\u2126\u0007",
- "V\u0002\u0002\u2126\u053a\u0003\u0002\u0002\u0002\u2127\u2128\u0007",
- "T\u0002\u0002\u2128\u2129\u0007G\u0002\u0002\u2129\u212a\u0007C\u0002",
- "\u0002\u212a\u212b\u0007F\u0002\u0002\u212b\u212c\u0007a\u0002\u0002",
- "\u212c\u212d\u0007Y\u0002\u0002\u212d\u212e\u0007T\u0002\u0002\u212e",
- "\u212f\u0007K\u0002\u0002\u212f\u2130\u0007V\u0002\u0002\u2130\u2131",
- "\u0007G\u0002\u0002\u2131\u053c\u0003\u0002\u0002\u0002\u2132\u2133",
- "\u0007T\u0002\u0002\u2133\u2134\u0007G\u0002\u0002\u2134\u2135\u0007",
- "C\u0002\u0002\u2135\u2136\u0007F\u0002\u0002\u2136\u2137\u0007Q\u0002",
- "\u0002\u2137\u2138\u0007P\u0002\u0002\u2138\u2139\u0007N\u0002\u0002",
- "\u2139\u213a\u0007[\u0002\u0002\u213a\u053e\u0003\u0002\u0002\u0002",
- "\u213b\u213c\u0007T\u0002\u0002\u213c\u213d\u0007G\u0002\u0002\u213d",
- "\u213e\u0007D\u0002\u0002\u213e\u213f\u0007W\u0002\u0002\u213f\u2140",
- "\u0007K\u0002\u0002\u2140\u2141\u0007N\u0002\u0002\u2141\u2142\u0007",
- "F\u0002\u0002\u2142\u0540\u0003\u0002\u0002\u0002\u2143\u2144\u0007",
- "T\u0002\u0002\u2144\u2145\u0007G\u0002\u0002\u2145\u2146\u0007E\u0002",
- "\u0002\u2146\u2147\u0007G\u0002\u0002\u2147\u2148\u0007K\u0002\u0002",
- "\u2148\u2149\u0007X\u0002\u0002\u2149\u214a\u0007G\u0002\u0002\u214a",
- "\u0542\u0003\u0002\u0002\u0002\u214b\u214c\u0007T\u0002\u0002\u214c",
- "\u214d\u0007G\u0002\u0002\u214d\u214e\u0007E\u0002\u0002\u214e\u214f",
- "\u0007Q\u0002\u0002\u214f\u2150\u0007O\u0002\u0002\u2150\u2151\u0007",
- "R\u0002\u0002\u2151\u2152\u0007K\u0002\u0002\u2152\u2153\u0007N\u0002",
- "\u0002\u2153\u2154\u0007G\u0002\u0002\u2154\u0544\u0003\u0002\u0002",
- "\u0002\u2155\u2156\u0007T\u0002\u0002\u2156\u2157\u0007G\u0002\u0002",
- "\u2157\u2158\u0007E\u0002\u0002\u2158\u2159\u0007Q\u0002\u0002\u2159",
- "\u215a\u0007X\u0002\u0002\u215a\u215b\u0007G\u0002\u0002\u215b\u215c",
- "\u0007T\u0002\u0002\u215c\u215d\u0007[\u0002\u0002\u215d\u0546\u0003",
- "\u0002\u0002\u0002\u215e\u215f\u0007T\u0002\u0002\u215f\u2160\u0007",
- "G\u0002\u0002\u2160\u2161\u0007E\u0002\u0002\u2161\u2162\u0007W\u0002",
- "\u0002\u2162\u2163\u0007T\u0002\u0002\u2163\u2164\u0007U\u0002\u0002",
- "\u2164\u2165\u0007K\u0002\u0002\u2165\u2166\u0007X\u0002\u0002\u2166",
- "\u2167\u0007G\u0002\u0002\u2167\u2168\u0007a\u0002\u0002\u2168\u2169",
- "\u0007V\u0002\u0002\u2169\u216a\u0007T\u0002\u0002\u216a\u216b\u0007",
- "K\u0002\u0002\u216b\u216c\u0007I\u0002\u0002\u216c\u216d\u0007I\u0002",
- "\u0002\u216d\u216e\u0007G\u0002\u0002\u216e\u216f\u0007T\u0002\u0002",
- "\u216f\u2170\u0007U\u0002\u0002\u2170\u0548\u0003\u0002\u0002\u0002",
- "\u2171\u2172\u0007T\u0002\u0002\u2172\u2173\u0007G\u0002\u0002\u2173",
- "\u2174\u0007N\u0002\u0002\u2174\u2175\u0007C\u0002\u0002\u2175\u2176",
- "\u0007V\u0002\u0002\u2176\u2177\u0007K\u0002\u0002\u2177\u2178\u0007",
- "X\u0002\u0002\u2178\u2179\u0007G\u0002\u0002\u2179\u054a\u0003\u0002",
- "\u0002\u0002\u217a\u217b\u0007T\u0002\u0002\u217b\u217c\u0007G\u0002",
- "\u0002\u217c\u217d\u0007O\u0002\u0002\u217d\u217e\u0007Q\u0002\u0002",
- "\u217e\u217f\u0007V\u0002\u0002\u217f\u2180\u0007G\u0002\u0002\u2180",
- "\u054c\u0003\u0002\u0002\u0002\u2181\u2182\u0007T\u0002\u0002\u2182",
- "\u2183\u0007G\u0002\u0002\u2183\u2184\u0007O\u0002\u0002\u2184\u2185",
- "\u0007Q\u0002\u0002\u2185\u2186\u0007V\u0002\u0002\u2186\u2187\u0007",
- "G\u0002\u0002\u2187\u2188\u0007a\u0002\u0002\u2188\u2189\u0007U\u0002",
- "\u0002\u2189\u218a\u0007G\u0002\u0002\u218a\u218b\u0007T\u0002\u0002",
- "\u218b\u218c\u0007X\u0002\u0002\u218c\u218d\u0007K\u0002\u0002\u218d",
- "\u218e\u0007E\u0002\u0002\u218e\u218f\u0007G\u0002\u0002\u218f\u2190",
- "\u0007a\u0002\u0002\u2190\u2191\u0007P\u0002\u0002\u2191\u2192\u0007",
- "C\u0002\u0002\u2192\u2193\u0007O\u0002\u0002\u2193\u2194\u0007G\u0002",
- "\u0002\u2194\u054e\u0003\u0002\u0002\u0002\u2195\u2196\u0007T\u0002",
- "\u0002\u2196\u2197\u0007G\u0002\u0002\u2197\u2198\u0007O\u0002\u0002",
- "\u2198\u2199\u0007Q\u0002\u0002\u2199\u219a\u0007X\u0002\u0002\u219a",
- "\u219b\u0007G\u0002\u0002\u219b\u0550\u0003\u0002\u0002\u0002\u219c",
- "\u219d\u0007T\u0002\u0002\u219d\u219e\u0007G\u0002\u0002\u219e\u219f",
- "\u0007Q\u0002\u0002\u219f\u21a0\u0007T\u0002\u0002\u21a0\u21a1\u0007",
- "I\u0002\u0002\u21a1\u21a2\u0007C\u0002\u0002\u21a2\u21a3\u0007P\u0002",
- "\u0002\u21a3\u21a4\u0007K\u0002\u0002\u21a4\u21a5\u0007\\\u0002\u0002",
- "\u21a5\u21a6\u0007G\u0002\u0002\u21a6\u0552\u0003\u0002\u0002\u0002",
- "\u21a7\u21a8\u0007T\u0002\u0002\u21a8\u21a9\u0007G\u0002\u0002\u21a9",
- "\u21aa\u0007R\u0002\u0002\u21aa\u21ab\u0007G\u0002\u0002\u21ab\u21ac",
- "\u0007C\u0002\u0002\u21ac\u21ad\u0007V\u0002\u0002\u21ad\u21ae\u0007",
- "C\u0002\u0002\u21ae\u21af\u0007D\u0002\u0002\u21af\u21b0\u0007N\u0002",
- "\u0002\u21b0\u21b1\u0007G\u0002\u0002\u21b1\u0554\u0003\u0002\u0002",
- "\u0002\u21b2\u21b3\u0007T\u0002\u0002\u21b3\u21b4\u0007G\u0002\u0002",
- "\u21b4\u21b5\u0007R\u0002\u0002\u21b5\u21b6\u0007N\u0002\u0002\u21b6",
- "\u21b7\u0007K\u0002\u0002\u21b7\u21b8\u0007E\u0002\u0002\u21b8\u21b9",
- "\u0007C\u0002\u0002\u21b9\u0556\u0003\u0002\u0002\u0002\u21ba\u21bb",
- "\u0007T\u0002\u0002\u21bb\u21bc\u0007G\u0002\u0002\u21bc\u21bd\u0007",
- "S\u0002\u0002\u21bd\u21be\u0007W\u0002\u0002\u21be\u21bf\u0007G\u0002",
- "\u0002\u21bf\u21c0\u0007U\u0002\u0002\u21c0\u21c1\u0007V\u0002\u0002",
- "\u21c1\u21c2\u0007a\u0002\u0002\u21c2\u21c3\u0007O\u0002\u0002\u21c3",
- "\u21c4\u0007C\u0002\u0002\u21c4\u21c5\u0007Z\u0002\u0002\u21c5\u21c6",
- "\u0007a\u0002\u0002\u21c6\u21c7\u0007E\u0002\u0002\u21c7\u21c8\u0007",
- "R\u0002\u0002\u21c8\u21c9\u0007W\u0002\u0002\u21c9\u21ca\u0007a\u0002",
- "\u0002\u21ca\u21cb\u0007V\u0002\u0002\u21cb\u21cc\u0007K\u0002\u0002",
- "\u21cc\u21cd\u0007O\u0002\u0002\u21cd\u21ce\u0007G\u0002\u0002\u21ce",
- "\u21cf\u0007a\u0002\u0002\u21cf\u21d0\u0007U\u0002\u0002\u21d0\u21d1",
- "\u0007G\u0002\u0002\u21d1\u21d2\u0007E\u0002\u0002\u21d2\u0558\u0003",
- "\u0002\u0002\u0002\u21d3\u21d4\u0007T\u0002\u0002\u21d4\u21d5\u0007",
- "G\u0002\u0002\u21d5\u21d6\u0007S\u0002\u0002\u21d6\u21d7\u0007W\u0002",
- "\u0002\u21d7\u21d8\u0007G\u0002\u0002\u21d8\u21d9\u0007U\u0002\u0002",
- "\u21d9\u21da\u0007V\u0002\u0002\u21da\u21db\u0007a\u0002\u0002\u21db",
- "\u21dc\u0007O\u0002\u0002\u21dc\u21dd\u0007C\u0002\u0002\u21dd\u21de",
- "\u0007Z\u0002\u0002\u21de\u21df\u0007a\u0002\u0002\u21df\u21e0\u0007",
- "O\u0002\u0002\u21e0\u21e1\u0007G\u0002\u0002\u21e1\u21e2\u0007O\u0002",
- "\u0002\u21e2\u21e3\u0007Q\u0002\u0002\u21e3\u21e4\u0007T\u0002\u0002",
- "\u21e4\u21e5\u0007[\u0002\u0002\u21e5\u21e6\u0007a\u0002\u0002\u21e6",
- "\u21e7\u0007I\u0002\u0002\u21e7\u21e8\u0007T\u0002\u0002\u21e8\u21e9",
- "\u0007C\u0002\u0002\u21e9\u21ea\u0007P\u0002\u0002\u21ea\u21eb\u0007",
- "V\u0002\u0002\u21eb\u21ec\u0007a\u0002\u0002\u21ec\u21ed\u0007R\u0002",
- "\u0002\u21ed\u21ee\u0007G\u0002\u0002\u21ee\u21ef\u0007T\u0002\u0002",
- "\u21ef\u21f0\u0007E\u0002\u0002\u21f0\u21f1\u0007G\u0002\u0002\u21f1",
- "\u21f2\u0007P\u0002\u0002\u21f2\u21f3\u0007V\u0002\u0002\u21f3\u055a",
- "\u0003\u0002\u0002\u0002\u21f4\u21f5\u0007T\u0002\u0002\u21f5\u21f6",
- "\u0007G\u0002\u0002\u21f6\u21f7\u0007S\u0002\u0002\u21f7\u21f8\u0007",
- "W\u0002\u0002\u21f8\u21f9\u0007G\u0002\u0002\u21f9\u21fa\u0007U\u0002",
- "\u0002\u21fa\u21fb\u0007V\u0002\u0002\u21fb\u21fc\u0007a\u0002\u0002",
- "\u21fc\u21fd\u0007O\u0002\u0002\u21fd\u21fe\u0007G\u0002\u0002\u21fe",
- "\u21ff\u0007O\u0002\u0002\u21ff\u2200\u0007Q\u0002\u0002\u2200\u2201",
- "\u0007T\u0002\u0002\u2201\u2202\u0007[\u0002\u0002\u2202\u2203\u0007",
- "a\u0002\u0002\u2203\u2204\u0007I\u0002\u0002\u2204\u2205\u0007T\u0002",
- "\u0002\u2205\u2206\u0007C\u0002\u0002\u2206\u2207\u0007P\u0002\u0002",
- "\u2207\u2208\u0007V\u0002\u0002\u2208\u2209\u0007a\u0002\u0002\u2209",
- "\u220a\u0007V\u0002\u0002\u220a\u220b\u0007K\u0002\u0002\u220b\u220c",
- "\u0007O\u0002\u0002\u220c\u220d\u0007G\u0002\u0002\u220d\u220e\u0007",
- "Q\u0002\u0002\u220e\u220f\u0007W\u0002\u0002\u220f\u2210\u0007V\u0002",
- "\u0002\u2210\u2211\u0007a\u0002\u0002\u2211\u2212\u0007U\u0002\u0002",
- "\u2212\u2213\u0007G\u0002\u0002\u2213\u2214\u0007E\u0002\u0002\u2214",
- "\u055c\u0003\u0002\u0002\u0002\u2215\u2216\u0007T\u0002\u0002\u2216",
- "\u2217\u0007G\u0002\u0002\u2217\u2218\u0007S\u0002\u0002\u2218\u2219",
- "\u0007W\u0002\u0002\u2219\u221a\u0007K\u0002\u0002\u221a\u221b\u0007",
- "T\u0002\u0002\u221b\u221c\u0007G\u0002\u0002\u221c\u221d\u0007F\u0002",
- "\u0002\u221d\u221e\u0007a\u0002\u0002\u221e\u221f\u0007U\u0002\u0002",
- "\u221f\u2220\u0007[\u0002\u0002\u2220\u2221\u0007P\u0002\u0002\u2221",
- "\u2222\u0007E\u0002\u0002\u2222\u2223\u0007J\u0002\u0002\u2223\u2224",
- "\u0007T\u0002\u0002\u2224\u2225\u0007Q\u0002\u0002\u2225\u2226\u0007",
- "P\u0002\u0002\u2226\u2227\u0007K\u0002\u0002\u2227\u2228\u0007\\\u0002",
- "\u0002\u2228\u2229\u0007G\u0002\u0002\u2229\u222a\u0007F\u0002\u0002",
- "\u222a\u222b\u0007a\u0002\u0002\u222b\u222c\u0007U\u0002\u0002\u222c",
- "\u222d\u0007G\u0002\u0002\u222d\u222e\u0007E\u0002\u0002\u222e\u222f",
- "\u0007Q\u0002\u0002\u222f\u2230\u0007P\u0002\u0002\u2230\u2231\u0007",
- "F\u0002\u0002\u2231\u2232\u0007C\u0002\u0002\u2232\u2233\u0007T\u0002",
- "\u0002\u2233\u2234\u0007K\u0002\u0002\u2234\u2235\u0007G\u0002\u0002",
- "\u2235\u2236\u0007U\u0002\u0002\u2236\u2237\u0007a\u0002\u0002\u2237",
- "\u2238\u0007V\u0002\u0002\u2238\u2239\u0007Q\u0002\u0002\u2239\u223a",
- "\u0007a\u0002\u0002\u223a\u223b\u0007E\u0002\u0002\u223b\u223c\u0007",
- "Q\u0002\u0002\u223c\u223d\u0007O\u0002\u0002\u223d\u223e\u0007O\u0002",
- "\u0002\u223e\u223f\u0007K\u0002\u0002\u223f\u2240\u0007V\u0002\u0002",
- "\u2240\u055e\u0003\u0002\u0002\u0002\u2241\u2242\u0007T\u0002\u0002",
- "\u2242\u2243\u0007G\u0002\u0002\u2243\u2244\u0007U\u0002\u0002\u2244",
- "\u2245\u0007G\u0002\u0002\u2245\u2246\u0007T\u0002\u0002\u2246\u2247",
- "\u0007X\u0002\u0002\u2247\u2248\u0007G\u0002\u0002\u2248\u2249\u0007",
- "a\u0002\u0002\u2249\u224a\u0007F\u0002\u0002\u224a\u224b\u0007K\u0002",
- "\u0002\u224b\u224c\u0007U\u0002\u0002\u224c\u224d\u0007M\u0002\u0002",
- "\u224d\u224e\u0007a\u0002\u0002\u224e\u224f\u0007U\u0002\u0002\u224f",
- "\u2250\u0007R\u0002\u0002\u2250\u2251\u0007C\u0002\u0002\u2251\u2252",
- "\u0007E\u0002\u0002\u2252\u2253\u0007G\u0002\u0002\u2253\u0560\u0003",
- "\u0002\u0002\u0002\u2254\u2255\u0007T\u0002\u0002\u2255\u2256\u0007",
- "G\u0002\u0002\u2256\u2257\u0007U\u0002\u0002\u2257\u2258\u0007Q\u0002",
- "\u0002\u2258\u2259\u0007W\u0002\u0002\u2259\u225a\u0007T\u0002\u0002",
- "\u225a\u225b\u0007E\u0002\u0002\u225b\u225c\u0007G\u0002\u0002\u225c",
- "\u0562\u0003\u0002\u0002\u0002\u225d\u225e\u0007T\u0002\u0002\u225e",
- "\u225f\u0007G\u0002\u0002\u225f\u2260\u0007U\u0002\u0002\u2260\u2261",
- "\u0007Q\u0002\u0002\u2261\u2262\u0007W\u0002\u0002\u2262\u2263\u0007",
- "T\u0002\u0002\u2263\u2264\u0007E\u0002\u0002\u2264\u2265\u0007G\u0002",
- "\u0002\u2265\u2266\u0007a\u0002\u0002\u2266\u2267\u0007O\u0002\u0002",
- "\u2267\u2268\u0007C\u0002\u0002\u2268\u2269\u0007P\u0002\u0002\u2269",
- "\u226a\u0007C\u0002\u0002\u226a\u226b\u0007I\u0002\u0002\u226b\u226c",
- "\u0007G\u0002\u0002\u226c\u226d\u0007T\u0002\u0002\u226d\u226e\u0007",
- "a\u0002\u0002\u226e\u226f\u0007N\u0002\u0002\u226f\u2270\u0007Q\u0002",
- "\u0002\u2270\u2271\u0007E\u0002\u0002\u2271\u2272\u0007C\u0002\u0002",
- "\u2272\u2273\u0007V\u0002\u0002\u2273\u2274\u0007K\u0002\u0002\u2274",
- "\u2275\u0007Q\u0002\u0002\u2275\u2276\u0007P\u0002\u0002\u2276\u0564",
- "\u0003\u0002\u0002\u0002\u2277\u2278\u0007T\u0002\u0002\u2278\u2279",
- "\u0007G\u0002\u0002\u2279\u227a\u0007U\u0002\u0002\u227a\u227b\u0007",
- "V\u0002\u0002\u227b\u227c\u0007T\u0002\u0002\u227c\u227d\u0007K\u0002",
- "\u0002\u227d\u227e\u0007E\u0002\u0002\u227e\u227f\u0007V\u0002\u0002",
- "\u227f\u2280\u0007G\u0002\u0002\u2280\u2281\u0007F\u0002\u0002\u2281",
- "\u2282\u0007a\u0002\u0002\u2282\u2283\u0007W\u0002\u0002\u2283\u2284",
- "\u0007U\u0002\u0002\u2284\u2285\u0007G\u0002\u0002\u2285\u2286\u0007",
- "T\u0002\u0002\u2286\u0566\u0003\u0002\u0002\u0002\u2287\u2288\u0007",
- "T\u0002\u0002\u2288\u2289\u0007G\u0002\u0002\u2289\u228a\u0007V\u0002",
- "\u0002\u228a\u228b\u0007G\u0002\u0002\u228b\u228c\u0007P\u0002\u0002",
- "\u228c\u228d\u0007V\u0002\u0002\u228d\u228e\u0007K\u0002\u0002\u228e",
- "\u228f\u0007Q\u0002\u0002\u228f\u2290\u0007P\u0002\u0002\u2290\u0568",
- "\u0003\u0002\u0002\u0002\u2291\u2292\u0007T\u0002\u0002\u2292\u2293",
- "\u0007Q\u0002\u0002\u2293\u2294\u0007D\u0002\u0002\u2294\u2295\u0007",
- "W\u0002\u0002\u2295\u2296\u0007U\u0002\u0002\u2296\u2297\u0007V\u0002",
- "\u0002\u2297\u056a\u0003\u0002\u0002\u0002\u2298\u2299\u0007T\u0002",
- "\u0002\u2299\u229a\u0007Q\u0002\u0002\u229a\u229b\u0007Q\u0002\u0002",
- "\u229b\u229c\u0007V\u0002\u0002\u229c\u056c\u0003\u0002\u0002\u0002",
- "\u229d\u229e\u0007T\u0002\u0002\u229e\u229f\u0007Q\u0002\u0002\u229f",
- "\u22a0\u0007W\u0002\u0002\u22a0\u22a1\u0007V\u0002\u0002\u22a1\u22a2",
- "\u0007G\u0002\u0002\u22a2\u056e\u0003\u0002\u0002\u0002\u22a3\u22a4",
- "\u0007T\u0002\u0002\u22a4\u22a5\u0007Q\u0002\u0002\u22a5\u22a6\u0007",
- "Y\u0002\u0002\u22a6\u0570\u0003\u0002\u0002\u0002\u22a7\u22a8\u0007",
- "T\u0002\u0002\u22a8\u22a9\u0007Q\u0002\u0002\u22a9\u22aa\u0007Y\u0002",
- "\u0002\u22aa\u22ab\u0007a\u0002\u0002\u22ab\u22ac\u0007P\u0002\u0002",
- "\u22ac\u22ad\u0007W\u0002\u0002\u22ad\u22ae\u0007O\u0002\u0002\u22ae",
- "\u22af\u0007D\u0002\u0002\u22af\u22b0\u0007G\u0002\u0002\u22b0\u22b1",
- "\u0007T\u0002\u0002\u22b1\u0572\u0003\u0002\u0002\u0002\u22b2\u22b3",
- "\u0007T\u0002\u0002\u22b3\u22b4\u0007Q\u0002\u0002\u22b4\u22b5\u0007",
- "Y\u0002\u0002\u22b5\u22b6\u0007I\u0002\u0002\u22b6\u22b7\u0007W\u0002",
- "\u0002\u22b7\u22b8\u0007K\u0002\u0002\u22b8\u22b9\u0007F\u0002\u0002",
- "\u22b9\u0574\u0003\u0002\u0002\u0002\u22ba\u22bb\u0007T\u0002\u0002",
- "\u22bb\u22bc\u0007Q\u0002\u0002\u22bc\u22bd\u0007Y\u0002\u0002\u22bd",
- "\u22be\u0007U\u0002\u0002\u22be\u0576\u0003\u0002\u0002\u0002\u22bf",
- "\u22c0\u0007U\u0002\u0002\u22c0\u22c1\u0007C\u0002\u0002\u22c1\u22c2",
- "\u0007O\u0002\u0002\u22c2\u22c3\u0007R\u0002\u0002\u22c3\u22c4\u0007",
- "N\u0002\u0002\u22c4\u22c5\u0007G\u0002\u0002\u22c5\u0578\u0003\u0002",
- "\u0002\u0002\u22c6\u22c7\u0007U\u0002\u0002\u22c7\u22c8\u0007E\u0002",
- "\u0002\u22c8\u22c9\u0007J\u0002\u0002\u22c9\u22ca\u0007G\u0002\u0002",
- "\u22ca\u22cb\u0007O\u0002\u0002\u22cb\u22cc\u0007C\u0002\u0002\u22cc",
- "\u22cd\u0007D\u0002\u0002\u22cd\u22ce\u0007K\u0002\u0002\u22ce\u22cf",
- "\u0007P\u0002\u0002\u22cf\u22d0\u0007F\u0002\u0002\u22d0\u22d1\u0007",
- "K\u0002\u0002\u22d1\u22d2\u0007P\u0002\u0002\u22d2\u22d3\u0007I\u0002",
- "\u0002\u22d3\u057a\u0003\u0002\u0002\u0002\u22d4\u22d5\u0007U\u0002",
- "\u0002\u22d5\u22d6\u0007E\u0002\u0002\u22d6\u22d7\u0007Q\u0002\u0002",
- "\u22d7\u22d8\u0007R\u0002\u0002\u22d8\u22d9\u0007G\u0002\u0002\u22d9",
- "\u22da\u0007F\u0002\u0002\u22da\u057c\u0003\u0002\u0002\u0002\u22db",
- "\u22dc\u0007U\u0002\u0002\u22dc\u22dd\u0007E\u0002\u0002\u22dd\u22de",
- "\u0007T\u0002\u0002\u22de\u22df\u0007Q\u0002\u0002\u22df\u22e0\u0007",
- "N\u0002\u0002\u22e0\u22e1\u0007N\u0002\u0002\u22e1\u057e\u0003\u0002",
- "\u0002\u0002\u22e2\u22e3\u0007U\u0002\u0002\u22e3\u22e4\u0007E\u0002",
- "\u0002\u22e4\u22e5\u0007T\u0002\u0002\u22e5\u22e6\u0007Q\u0002\u0002",
- "\u22e6\u22e7\u0007N\u0002\u0002\u22e7\u22e8\u0007N\u0002\u0002\u22e8",
- "\u22e9\u0007a\u0002\u0002\u22e9\u22ea\u0007N\u0002\u0002\u22ea\u22eb",
- "\u0007Q\u0002\u0002\u22eb\u22ec\u0007E\u0002\u0002\u22ec\u22ed\u0007",
- "M\u0002\u0002\u22ed\u22ee\u0007U\u0002\u0002\u22ee\u0580\u0003\u0002",
- "\u0002\u0002\u22ef\u22f0\u0007U\u0002\u0002\u22f0\u22f1\u0007G\u0002",
- "\u0002\u22f1\u22f2\u0007C\u0002\u0002\u22f2\u22f3\u0007T\u0002\u0002",
- "\u22f3\u22f4\u0007E\u0002\u0002\u22f4\u22f5\u0007J\u0002\u0002\u22f5",
- "\u0582\u0003\u0002\u0002\u0002\u22f6\u22f7\u0007U\u0002\u0002\u22f7",
- "\u22f8\u0007G\u0002\u0002\u22f8\u22f9\u0007E\u0002\u0002\u22f9\u22fa",
- "\u0007Q\u0002\u0002\u22fa\u22fb\u0007P\u0002\u0002\u22fb\u22fc\u0007",
- "F\u0002\u0002\u22fc\u22fd\u0007C\u0002\u0002\u22fd\u22fe\u0007T\u0002",
- "\u0002\u22fe\u22ff\u0007[\u0002\u0002\u22ff\u0584\u0003\u0002\u0002",
- "\u0002\u2300\u2301\u0007U\u0002\u0002\u2301\u2302\u0007G\u0002\u0002",
- "\u2302\u2303\u0007E\u0002\u0002\u2303\u2304\u0007Q\u0002\u0002\u2304",
- "\u2305\u0007P\u0002\u0002\u2305\u2306\u0007F\u0002\u0002\u2306\u2307",
- "\u0007C\u0002\u0002\u2307\u2308\u0007T\u0002\u0002\u2308\u2309\u0007",
- "[\u0002\u0002\u2309\u230a\u0007a\u0002\u0002\u230a\u230b\u0007Q\u0002",
- "\u0002\u230b\u230c\u0007P\u0002\u0002\u230c\u230d\u0007N\u0002\u0002",
- "\u230d\u230e\u0007[\u0002\u0002\u230e\u0586\u0003\u0002\u0002\u0002",
- "\u230f\u2310\u0007U\u0002\u0002\u2310\u2311\u0007G\u0002\u0002\u2311",
- "\u2312\u0007E\u0002\u0002\u2312\u2313\u0007Q\u0002\u0002\u2313\u2314",
- "\u0007P\u0002\u0002\u2314\u2315\u0007F\u0002\u0002\u2315\u2316\u0007",
- "C\u0002\u0002\u2316\u2317\u0007T\u0002\u0002\u2317\u2318\u0007[\u0002",
- "\u0002\u2318\u2319\u0007a\u0002\u0002\u2319\u231a\u0007T\u0002\u0002",
- "\u231a\u231b\u0007Q\u0002\u0002\u231b\u231c\u0007N\u0002\u0002\u231c",
- "\u231d\u0007G\u0002\u0002\u231d\u0588\u0003\u0002\u0002\u0002\u231e",
- "\u231f\u0007U\u0002\u0002\u231f\u2320\u0007G\u0002\u0002\u2320\u2321",
- "\u0007E\u0002\u0002\u2321\u2322\u0007Q\u0002\u0002\u2322\u2323\u0007",
- "P\u0002\u0002\u2323\u2324\u0007F\u0002\u0002\u2324\u2325\u0007U\u0002",
- "\u0002\u2325\u058a\u0003\u0002\u0002\u0002\u2326\u2327\u0007U\u0002",
- "\u0002\u2327\u2328\u0007G\u0002\u0002\u2328\u2329\u0007E\u0002\u0002",
- "\u2329\u232a\u0007T\u0002\u0002\u232a\u232b\u0007G\u0002\u0002\u232b",
- "\u232c\u0007V\u0002\u0002\u232c\u058c\u0003\u0002\u0002\u0002\u232d",
- "\u232e\u0007U\u0002\u0002\u232e\u232f\u0007G\u0002\u0002\u232f\u2330",
- "\u0007E\u0002\u0002\u2330\u2331\u0007W\u0002\u0002\u2331\u2332\u0007",
- "T\u0002\u0002\u2332\u2333\u0007K\u0002\u0002\u2333\u2334\u0007V\u0002",
- "\u0002\u2334\u2335\u0007[\u0002\u0002\u2335\u058e\u0003\u0002\u0002",
- "\u0002\u2336\u2337\u0007U\u0002\u0002\u2337\u2338\u0007G\u0002\u0002",
- "\u2338\u2339\u0007E\u0002\u0002\u2339\u233a\u0007W\u0002\u0002\u233a",
- "\u233b\u0007T\u0002\u0002\u233b\u233c\u0007K\u0002\u0002\u233c\u233d",
- "\u0007V\u0002\u0002\u233d\u233e\u0007[\u0002\u0002\u233e\u233f\u0007",
- "a\u0002\u0002\u233f\u2340\u0007N\u0002\u0002\u2340\u2341\u0007Q\u0002",
- "\u0002\u2341\u2342\u0007I\u0002\u0002\u2342\u0590\u0003\u0002\u0002",
- "\u0002\u2343\u2344\u0007U\u0002\u0002\u2344\u2345\u0007G\u0002\u0002",
- "\u2345\u2346\u0007G\u0002\u0002\u2346\u2347\u0007F\u0002\u0002\u2347",
- "\u2348\u0007K\u0002\u0002\u2348\u2349\u0007P\u0002\u0002\u2349\u234a",
- "\u0007I\u0002\u0002\u234a\u234b\u0007a\u0002\u0002\u234b\u234c\u0007",
- "O\u0002\u0002\u234c\u234d\u0007Q\u0002\u0002\u234d\u234e\u0007F\u0002",
- "\u0002\u234e\u234f\u0007G\u0002\u0002\u234f\u0592\u0003\u0002\u0002",
- "\u0002\u2350\u2351\u0007U\u0002\u0002\u2351\u2352\u0007G\u0002\u0002",
- "\u2352\u2353\u0007N\u0002\u0002\u2353\u2354\u0007H\u0002\u0002\u2354",
- "\u0594\u0003\u0002\u0002\u0002\u2355\u2356\u0007U\u0002\u0002\u2356",
- "\u2357\u0007G\u0002\u0002\u2357\u2358\u0007O\u0002\u0002\u2358\u2359",
- "\u0007K\u0002\u0002\u2359\u235a\u0007a\u0002\u0002\u235a\u235b\u0007",
- "U\u0002\u0002\u235b\u235c\u0007G\u0002\u0002\u235c\u235d\u0007P\u0002",
- "\u0002\u235d\u235e\u0007U\u0002\u0002\u235e\u235f\u0007K\u0002\u0002",
- "\u235f\u2360\u0007V\u0002\u0002\u2360\u2361\u0007K\u0002\u0002\u2361",
- "\u2362\u0007X\u0002\u0002\u2362\u2363\u0007G\u0002\u0002\u2363\u0596",
- "\u0003\u0002\u0002\u0002\u2364\u2365\u0007U\u0002\u0002\u2365\u2366",
- "\u0007G\u0002\u0002\u2366\u2367\u0007P\u0002\u0002\u2367\u2368\u0007",
- "F\u0002\u0002\u2368\u0598\u0003\u0002\u0002\u0002\u2369\u236a\u0007",
- "U\u0002\u0002\u236a\u236b\u0007G\u0002\u0002\u236b\u236c\u0007P\u0002",
- "\u0002\u236c\u236d\u0007V\u0002\u0002\u236d\u059a\u0003\u0002\u0002",
- "\u0002\u236e\u236f\u0007U\u0002\u0002\u236f\u2370\u0007G\u0002\u0002",
- "\u2370\u2371\u0007S\u0002\u0002\u2371\u2372\u0007W\u0002\u0002\u2372",
- "\u2373\u0007G\u0002\u0002\u2373\u2374\u0007P\u0002\u0002\u2374\u2375",
- "\u0007E\u0002\u0002\u2375\u2376\u0007G\u0002\u0002\u2376\u059c\u0003",
- "\u0002\u0002\u0002\u2377\u2378\u0007U\u0002\u0002\u2378\u2379\u0007",
- "G\u0002\u0002\u2379\u237a\u0007T\u0002\u0002\u237a\u237b\u0007K\u0002",
- "\u0002\u237b\u237c\u0007C\u0002\u0002\u237c\u237d\u0007N\u0002\u0002",
- "\u237d\u237e\u0007K\u0002\u0002\u237e\u237f\u0007\\\u0002\u0002\u237f",
- "\u2380\u0007C\u0002\u0002\u2380\u2381\u0007D\u0002\u0002\u2381\u2382",
- "\u0007N\u0002\u0002\u2382\u2383\u0007G\u0002\u0002\u2383\u059e\u0003",
- "\u0002\u0002\u0002\u2384\u2385\u0007U\u0002\u0002\u2385\u2386\u0007",
- "G\u0002\u0002\u2386\u2387\u0007U\u0002\u0002\u2387\u2388\u0007U\u0002",
- "\u0002\u2388\u2389\u0007K\u0002\u0002\u2389\u238a\u0007Q\u0002\u0002",
- "\u238a\u238b\u0007P\u0002\u0002\u238b\u238c\u0007a\u0002\u0002\u238c",
- "\u238d\u0007V\u0002\u0002\u238d\u238e\u0007K\u0002\u0002\u238e\u238f",
- "\u0007O\u0002\u0002\u238f\u2390\u0007G\u0002\u0002\u2390\u2391\u0007",
- "Q\u0002\u0002\u2391\u2392\u0007W\u0002\u0002\u2392\u2393\u0007V\u0002",
- "\u0002\u2393\u05a0\u0003\u0002\u0002\u0002\u2394\u2395\u0007U\u0002",
- "\u0002\u2395\u2396\u0007G\u0002\u0002\u2396\u2397\u0007V\u0002\u0002",
- "\u2397\u2398\u0007G\u0002\u0002\u2398\u2399\u0007T\u0002\u0002\u2399",
- "\u239a\u0007T\u0002\u0002\u239a\u239b\u0007Q\u0002\u0002\u239b\u239c",
- "\u0007T\u0002\u0002\u239c\u05a2\u0003\u0002\u0002\u0002\u239d\u239e",
- "\u0007U\u0002\u0002\u239e\u239f\u0007J\u0002\u0002\u239f\u23a0\u0007",
- "C\u0002\u0002\u23a0\u23a1\u0007T\u0002\u0002\u23a1\u23a2\u0007G\u0002",
- "\u0002\u23a2\u05a4\u0003\u0002\u0002\u0002\u23a3\u23a4\u0007U\u0002",
- "\u0002\u23a4\u23a5\u0007J\u0002\u0002\u23a5\u23a6\u0007Q\u0002\u0002",
- "\u23a6\u23a7\u0007Y\u0002\u0002\u23a7\u23a8\u0007R\u0002\u0002\u23a8",
- "\u23a9\u0007N\u0002\u0002\u23a9\u23aa\u0007C\u0002\u0002\u23aa\u23ab",
- "\u0007P\u0002\u0002\u23ab\u05a6\u0003\u0002\u0002\u0002\u23ac\u23ad",
- "\u0007U\u0002\u0002\u23ad\u23ae\u0007K\u0002\u0002\u23ae\u23af\u0007",
- "I\u0002\u0002\u23af\u23b0\u0007P\u0002\u0002\u23b0\u23b1\u0007C\u0002",
- "\u0002\u23b1\u23b2\u0007V\u0002\u0002\u23b2\u23b3\u0007W\u0002\u0002",
- "\u23b3\u23b4\u0007T\u0002\u0002\u23b4\u23b5\u0007G\u0002\u0002\u23b5",
- "\u05a8\u0003\u0002\u0002\u0002\u23b6\u23b7\u0007U\u0002\u0002\u23b7",
- "\u23b8\u0007K\u0002\u0002\u23b8\u23b9\u0007O\u0002\u0002\u23b9\u23ba",
- "\u0007R\u0002\u0002\u23ba\u23bb\u0007N\u0002\u0002\u23bb\u23bc\u0007",
- "G\u0002\u0002\u23bc\u05aa\u0003\u0002\u0002\u0002\u23bd\u23be\u0007",
- "U\u0002\u0002\u23be\u23bf\u0007K\u0002\u0002\u23bf\u23c0\u0007P\u0002",
- "\u0002\u23c0\u23c1\u0007I\u0002\u0002\u23c1\u23c2\u0007N\u0002\u0002",
- "\u23c2\u23c3\u0007G\u0002\u0002\u23c3\u23c4\u0007a\u0002\u0002\u23c4",
- "\u23c5\u0007W\u0002\u0002\u23c5\u23c6\u0007U\u0002\u0002\u23c6\u23c7",
- "\u0007G\u0002\u0002\u23c7\u23c8\u0007T\u0002\u0002\u23c8\u05ac\u0003",
- "\u0002\u0002\u0002\u23c9\u23ca\u0007U\u0002\u0002\u23ca\u23cb\u0007",
- "K\u0002\u0002\u23cb\u23cc\u0007\\\u0002\u0002\u23cc\u23cd\u0007G\u0002",
- "\u0002\u23cd\u05ae\u0003\u0002\u0002\u0002\u23ce\u23cf\u0007U\u0002",
- "\u0002\u23cf\u23d0\u0007O\u0002\u0002\u23d0\u23d1\u0007C\u0002\u0002",
- "\u23d1\u23d2\u0007N\u0002\u0002\u23d2\u23d3\u0007N\u0002\u0002\u23d3",
- "\u23d4\u0007K\u0002\u0002\u23d4\u23d5\u0007P\u0002\u0002\u23d5\u23d6",
- "\u0007V\u0002\u0002\u23d6\u05b0\u0003\u0002\u0002\u0002\u23d7\u23d8",
- "\u0007U\u0002\u0002\u23d8\u23d9\u0007P\u0002\u0002\u23d9\u23da\u0007",
- "C\u0002\u0002\u23da\u23db\u0007R\u0002\u0002\u23db\u23dc\u0007U\u0002",
- "\u0002\u23dc\u23dd\u0007J\u0002\u0002\u23dd\u23de\u0007Q\u0002\u0002",
- "\u23de\u23df\u0007V\u0002\u0002\u23df\u05b2\u0003\u0002\u0002\u0002",
- "\u23e0\u23e1\u0007U\u0002\u0002\u23e1\u23e2\u0007R\u0002\u0002\u23e2",
- "\u23e3\u0007C\u0002\u0002\u23e3\u23e4\u0007V\u0002\u0002\u23e4\u23e5",
- "\u0007K\u0002\u0002\u23e5\u23e6\u0007C\u0002\u0002\u23e6\u23e7\u0007",
- "N\u0002\u0002\u23e7\u23e8\u0007a\u0002\u0002\u23e8\u23e9\u0007Y\u0002",
- "\u0002\u23e9\u23ea\u0007K\u0002\u0002\u23ea\u23eb\u0007P\u0002\u0002",
- "\u23eb\u23ec\u0007F\u0002\u0002\u23ec\u23ed\u0007Q\u0002\u0002\u23ed",
- "\u23ee\u0007Y\u0002\u0002\u23ee\u23ef\u0007a\u0002\u0002\u23ef\u23f0",
- "\u0007O\u0002\u0002\u23f0\u23f1\u0007C\u0002\u0002\u23f1\u23f2\u0007",
- "Z\u0002\u0002\u23f2\u23f3\u0007a\u0002\u0002\u23f3\u23f4\u0007E\u0002",
- "\u0002\u23f4\u23f5\u0007G\u0002\u0002\u23f5\u23f6\u0007N\u0002\u0002",
- "\u23f6\u23f7\u0007N\u0002\u0002\u23f7\u23f8\u0007U\u0002\u0002\u23f8",
- "\u05b4\u0003\u0002\u0002\u0002\u23f9\u23fa\u0007U\u0002\u0002\u23fa",
- "\u23fb\u0007V\u0002\u0002\u23fb\u23fc\u0007C\u0002\u0002\u23fc\u23fd",
- "\u0007P\u0002\u0002\u23fd\u23fe\u0007F\u0002\u0002\u23fe\u23ff\u0007",
- "D\u0002\u0002\u23ff\u2400\u0007[\u0002\u0002\u2400\u05b6\u0003\u0002",
- "\u0002\u0002\u2401\u2402\u0007U\u0002\u0002\u2402\u2403\u0007V\u0002",
- "\u0002\u2403\u2404\u0007C\u0002\u0002\u2404\u2405\u0007T\u0002\u0002",
- "\u2405\u2406\u0007V\u0002\u0002\u2406\u2407\u0007a\u0002\u0002\u2407",
- "\u2408\u0007F\u0002\u0002\u2408\u2409\u0007C\u0002\u0002\u2409\u240a",
- "\u0007V\u0002\u0002\u240a\u240b\u0007G\u0002\u0002\u240b\u05b8\u0003",
- "\u0002\u0002\u0002\u240c\u240d\u0007U\u0002\u0002\u240d\u240e\u0007",
- "V\u0002\u0002\u240e\u240f\u0007C\u0002\u0002\u240f\u2410\u0007V\u0002",
- "\u0002\u2410\u2411\u0007K\u0002\u0002\u2411\u2412\u0007E\u0002\u0002",
- "\u2412\u05ba\u0003\u0002\u0002\u0002\u2413\u2414\u0007U\u0002\u0002",
- "\u2414\u2415\u0007V\u0002\u0002\u2415\u2416\u0007C\u0002\u0002\u2416",
- "\u2417\u0007V\u0002\u0002\u2417\u2418\u0007U\u0002\u0002\u2418\u2419",
- "\u0007a\u0002\u0002\u2419\u241a\u0007U\u0002\u0002\u241a\u241b\u0007",
- "V\u0002\u0002\u241b\u241c\u0007T\u0002\u0002\u241c\u241d\u0007G\u0002",
- "\u0002\u241d\u241e\u0007C\u0002\u0002\u241e\u241f\u0007O\u0002\u0002",
- "\u241f\u05bc\u0003\u0002\u0002\u0002\u2420\u2421\u0007U\u0002\u0002",
- "\u2421\u2422\u0007V\u0002\u0002\u2422\u2423\u0007C\u0002\u0002\u2423",
- "\u2424\u0007V\u0002\u0002\u2424\u2425\u0007W\u0002\u0002\u2425\u2426",
- "\u0007U\u0002\u0002\u2426\u05be\u0003\u0002\u0002\u0002\u2427\u2428",
- "\u0007U\u0002\u0002\u2428\u2429\u0007V\u0002\u0002\u2429\u242a\u0007",
- "C\u0002\u0002\u242a\u242b\u0007V\u0002\u0002\u242b\u242c\u0007W\u0002",
- "\u0002\u242c\u242d\u0007U\u0002\u0002\u242d\u242e\u0007Q\u0002\u0002",
- "\u242e\u242f\u0007P\u0002\u0002\u242f\u2430\u0007N\u0002\u0002\u2430",
- "\u2431\u0007[\u0002\u0002\u2431\u05c0\u0003\u0002\u0002\u0002\u2432",
- "\u2433\u0007U\u0002\u0002\u2433\u2434\u0007V\u0002\u0002\u2434\u2435",
- "\u0007F\u0002\u0002\u2435\u2436\u0007G\u0002\u0002\u2436\u2437\u0007",
- "X\u0002\u0002\u2437\u05c2\u0003\u0002\u0002\u0002\u2438\u2439\u0007",
- "U\u0002\u0002\u2439\u243a\u0007V\u0002\u0002\u243a\u243b\u0007F\u0002",
- "\u0002\u243b\u243c\u0007G\u0002\u0002\u243c\u243d\u0007X\u0002\u0002",
- "\u243d\u243e\u0007R\u0002\u0002\u243e\u05c4\u0003\u0002\u0002\u0002",
- "\u243f\u2440\u0007U\u0002\u0002\u2440\u2441\u0007V\u0002\u0002\u2441",
- "\u2442\u0007Q\u0002\u0002\u2442\u2443\u0007R\u0002\u0002\u2443\u2444",
- "\u0007N\u0002\u0002\u2444\u2445\u0007K\u0002\u0002\u2445\u2446\u0007",
- "U\u0002\u0002\u2446\u2447\u0007V\u0002\u0002\u2447\u05c6\u0003\u0002",
- "\u0002\u0002\u2448\u2449\u0007U\u0002\u0002\u2449\u244a\u0007V\u0002",
- "\u0002\u244a\u244b\u0007T\u0002\u0002\u244b\u244c\u0007K\u0002\u0002",
- "\u244c\u244d\u0007P\u0002\u0002\u244d\u244e\u0007I\u0002\u0002\u244e",
- "\u244f\u0007a\u0002\u0002\u244f\u2450\u0007C\u0002\u0002\u2450\u2451",
- "\u0007I\u0002\u0002\u2451\u2452\u0007I\u0002\u0002\u2452\u05c8\u0003",
- "\u0002\u0002\u0002\u2453\u2454\u0007U\u0002\u0002\u2454\u2455\u0007",
- "V\u0002\u0002\u2455\u2456\u0007W\u0002\u0002\u2456\u2457\u0007H\u0002",
- "\u0002\u2457\u2458\u0007H\u0002\u0002\u2458\u05ca\u0003\u0002\u0002",
- "\u0002\u2459\u245a\u0007U\u0002\u0002\u245a\u245b\u0007W\u0002\u0002",
- "\u245b\u245c\u0007D\u0002\u0002\u245c\u245d\u0007L\u0002\u0002\u245d",
- "\u245e\u0007G\u0002\u0002\u245e\u245f\u0007E\u0002\u0002\u245f\u2460",
- "\u0007V\u0002\u0002\u2460\u05cc\u0003\u0002\u0002\u0002\u2461\u2462",
- "\u0007U\u0002\u0002\u2462\u2463\u0007W\u0002\u0002\u2463\u2464\u0007",
- "D\u0002\u0002\u2464\u2465\u0007U\u0002\u0002\u2465\u2466\u0007E\u0002",
- "\u0002\u2466\u2467\u0007T\u0002\u0002\u2467\u2468\u0007K\u0002\u0002",
- "\u2468\u2469\u0007R\u0002\u0002\u2469\u246a\u0007V\u0002\u0002\u246a",
- "\u246b\u0007K\u0002\u0002\u246b\u246c\u0007Q\u0002\u0002\u246c\u246d",
- "\u0007P\u0002\u0002\u246d\u05ce\u0003\u0002\u0002\u0002\u246e\u246f",
- "\u0007U\u0002\u0002\u246f\u2470\u0007W\u0002\u0002\u2470\u2471\u0007",
- "O\u0002\u0002\u2471\u05d0\u0003\u0002\u0002\u0002\u2472\u2473\u0007",
- "U\u0002\u0002\u2473\u2474\u0007W\u0002\u0002\u2474\u2475\u0007U\u0002",
- "\u0002\u2475\u2476\u0007R\u0002\u0002\u2476\u2477\u0007G\u0002\u0002",
- "\u2477\u2478\u0007P\u0002\u0002\u2478\u2479\u0007F\u0002\u0002\u2479",
- "\u05d2\u0003\u0002\u0002\u0002\u247a\u247b\u0007U\u0002\u0002\u247b",
- "\u247c\u0007[\u0002\u0002\u247c\u247d\u0007O\u0002\u0002\u247d\u247e",
- "\u0007O\u0002\u0002\u247e\u247f\u0007G\u0002\u0002\u247f\u2480\u0007",
- "V\u0002\u0002\u2480\u2481\u0007T\u0002\u0002\u2481\u2482\u0007K\u0002",
- "\u0002\u2482\u2483\u0007E\u0002\u0002\u2483\u05d4\u0003\u0002\u0002",
- "\u0002\u2484\u2485\u0007U\u0002\u0002\u2485\u2486\u0007[\u0002\u0002",
- "\u2486\u2487\u0007P\u0002\u0002\u2487\u2488\u0007E\u0002\u0002\u2488",
- "\u2489\u0007J\u0002\u0002\u2489\u248a\u0007T\u0002\u0002\u248a\u248b",
- "\u0007Q\u0002\u0002\u248b\u248c\u0007P\u0002\u0002\u248c\u248d\u0007",
- "Q\u0002\u0002\u248d\u248e\u0007W\u0002\u0002\u248e\u248f\u0007U\u0002",
- "\u0002\u248f\u2490\u0007a\u0002\u0002\u2490\u2491\u0007E\u0002\u0002",
- "\u2491\u2492\u0007Q\u0002\u0002\u2492\u2493\u0007O\u0002\u0002\u2493",
- "\u2494\u0007O\u0002\u0002\u2494\u2495\u0007K\u0002\u0002\u2495\u2496",
- "\u0007V\u0002\u0002\u2496\u05d6\u0003\u0002\u0002\u0002\u2497\u2498",
- "\u0007U\u0002\u0002\u2498\u2499\u0007[\u0002\u0002\u2499\u249a\u0007",
- "P\u0002\u0002\u249a\u249b\u0007Q\u0002\u0002\u249b\u249c\u0007P\u0002",
- "\u0002\u249c\u249d\u0007[\u0002\u0002\u249d\u249e\u0007O\u0002\u0002",
- "\u249e\u05d8\u0003\u0002\u0002\u0002\u249f\u24a0\u0007U\u0002\u0002",
- "\u24a0\u24a1\u0007[\u0002\u0002\u24a1\u24a2\u0007U\u0002\u0002\u24a2",
- "\u24a3\u0007V\u0002\u0002\u24a3\u24a4\u0007G\u0002\u0002\u24a4\u24a5",
- "\u0007O\u0002\u0002\u24a5\u05da\u0003\u0002\u0002\u0002\u24a6\u24a7",
- "\u0007V\u0002\u0002\u24a7\u24a8\u0007C\u0002\u0002\u24a8\u24a9\u0007",
- "M\u0002\u0002\u24a9\u24aa\u0007G\u0002\u0002\u24aa\u05dc\u0003\u0002",
- "\u0002\u0002\u24ab\u24ac\u0007V\u0002\u0002\u24ac\u24ad\u0007C\u0002",
- "\u0002\u24ad\u24ae\u0007T\u0002\u0002\u24ae\u24af\u0007I\u0002\u0002",
- "\u24af\u24b0\u0007G\u0002\u0002\u24b0\u24b1\u0007V\u0002\u0002\u24b1",
- "\u24b2\u0007a\u0002\u0002\u24b2\u24b3\u0007T\u0002\u0002\u24b3\u24b4",
- "\u0007G\u0002\u0002\u24b4\u24b5\u0007E\u0002\u0002\u24b5\u24b6\u0007",
- "Q\u0002\u0002\u24b6\u24b7\u0007X\u0002\u0002\u24b7\u24b8\u0007G\u0002",
- "\u0002\u24b8\u24b9\u0007T\u0002\u0002\u24b9\u24ba\u0007[\u0002\u0002",
- "\u24ba\u24bb\u0007a\u0002\u0002\u24bb\u24bc\u0007V\u0002\u0002\u24bc",
- "\u24bd\u0007K\u0002\u0002\u24bd\u24be\u0007O\u0002\u0002\u24be\u24bf",
- "\u0007G\u0002\u0002\u24bf\u05de\u0003\u0002\u0002\u0002\u24c0\u24c1",
- "\u0007V\u0002\u0002\u24c1\u24c2\u0007D\u0002\u0002\u24c2\u05e0\u0003",
- "\u0002\u0002\u0002\u24c3\u24c4\u0007V\u0002\u0002\u24c4\u24c5\u0007",
- "G\u0002\u0002\u24c5\u24c6\u0007Z\u0002\u0002\u24c6\u24c7\u0007V\u0002",
- "\u0002\u24c7\u24c8\u0007K\u0002\u0002\u24c8\u24c9\u0007O\u0002\u0002",
- "\u24c9\u24ca\u0007C\u0002\u0002\u24ca\u24cb\u0007I\u0002\u0002\u24cb",
- "\u24cc\u0007G\u0002\u0002\u24cc\u24cd\u0007a\u0002\u0002\u24cd\u24ce",
- "\u0007Q\u0002\u0002\u24ce\u24cf\u0007P\u0002\u0002\u24cf\u05e2\u0003",
- "\u0002\u0002\u0002\u24d0\u24d1\u0007V\u0002\u0002\u24d1\u24d2\u0007",
- "J\u0002\u0002\u24d2\u24d3\u0007T\u0002\u0002\u24d3\u24d4\u0007Q\u0002",
- "\u0002\u24d4\u24d5\u0007Y\u0002\u0002\u24d5\u05e4\u0003\u0002\u0002",
- "\u0002\u24d6\u24d7\u0007V\u0002\u0002\u24d7\u24d8\u0007K\u0002\u0002",
- "\u24d8\u24d9\u0007G\u0002\u0002\u24d9\u24da\u0007U\u0002\u0002\u24da",
- "\u05e6\u0003\u0002\u0002\u0002\u24db\u24dc\u0007V\u0002\u0002\u24dc",
- "\u24dd\u0007K\u0002\u0002\u24dd\u24de\u0007O\u0002\u0002\u24de\u24df",
- "\u0007G\u0002\u0002\u24df\u05e8\u0003\u0002\u0002\u0002\u24e0\u24e1",
- "\u0007V\u0002\u0002\u24e1\u24e2\u0007K\u0002\u0002\u24e2\u24e3\u0007",
- "O\u0002\u0002\u24e3\u24e4\u0007G\u0002\u0002\u24e4\u24e5\u0007Q\u0002",
- "\u0002\u24e5\u24e6\u0007W\u0002\u0002\u24e6\u24e7\u0007V\u0002\u0002",
- "\u24e7\u05ea\u0003\u0002\u0002\u0002\u24e8\u24e9\u0007V\u0002\u0002",
- "\u24e9\u24ea\u0007K\u0002\u0002\u24ea\u24eb\u0007O\u0002\u0002\u24eb",
- "\u24ec\u0007G\u0002\u0002\u24ec\u24ed\u0007T\u0002\u0002\u24ed\u05ec",
- "\u0003\u0002\u0002\u0002\u24ee\u24ef\u0007V\u0002\u0002\u24ef\u24f0",
- "\u0007K\u0002\u0002\u24f0\u24f1\u0007P\u0002\u0002\u24f1\u24f2\u0007",
- "[\u0002\u0002\u24f2\u24f3\u0007K\u0002\u0002\u24f3\u24f4\u0007P\u0002",
- "\u0002\u24f4\u24f5\u0007V\u0002\u0002\u24f5\u05ee\u0003\u0002\u0002",
- "\u0002\u24f6\u24f7\u0007V\u0002\u0002\u24f7\u24f8\u0007Q\u0002\u0002",
- "\u24f8\u24f9\u0007T\u0002\u0002\u24f9\u24fa\u0007P\u0002\u0002\u24fa",
- "\u24fb\u0007a\u0002\u0002\u24fb\u24fc\u0007R\u0002\u0002\u24fc\u24fd",
- "\u0007C\u0002\u0002\u24fd\u24fe\u0007I\u0002\u0002\u24fe\u24ff\u0007",
- "G\u0002\u0002\u24ff\u2500\u0007a\u0002\u0002\u2500\u2501\u0007F\u0002",
- "\u0002\u2501\u2502\u0007G\u0002\u0002\u2502\u2503\u0007V\u0002\u0002",
- "\u2503\u2504\u0007G\u0002\u0002\u2504\u2505\u0007E\u0002\u0002\u2505",
- "\u2506\u0007V\u0002\u0002\u2506\u2507\u0007K\u0002\u0002\u2507\u2508",
- "\u0007Q\u0002\u0002\u2508\u2509\u0007P\u0002\u0002\u2509\u05f0\u0003",
- "\u0002\u0002\u0002\u250a\u250b\u0007V\u0002\u0002\u250b\u250c\u0007",
- "T\u0002\u0002\u250c\u250d\u0007C\u0002\u0002\u250d\u250e\u0007P\u0002",
- "\u0002\u250e\u250f\u0007U\u0002\u0002\u250f\u2510\u0007H\u0002\u0002",
- "\u2510\u2511\u0007Q\u0002\u0002\u2511\u2512\u0007T\u0002\u0002\u2512",
- "\u2513\u0007O\u0002\u0002\u2513\u2514\u0007a\u0002\u0002\u2514\u2515",
- "\u0007P\u0002\u0002\u2515\u2516\u0007Q\u0002\u0002\u2516\u2517\u0007",
- "K\u0002\u0002\u2517\u2518\u0007U\u0002\u0002\u2518\u2519\u0007G\u0002",
- "\u0002\u2519\u251a\u0007a\u0002\u0002\u251a\u251b\u0007Y\u0002\u0002",
- "\u251b\u251c\u0007Q\u0002\u0002\u251c\u251d\u0007T\u0002\u0002\u251d",
- "\u251e\u0007F\u0002\u0002\u251e\u251f\u0007U\u0002\u0002\u251f\u05f2",
- "\u0003\u0002\u0002\u0002\u2520\u2521\u0007V\u0002\u0002\u2521\u2522",
- "\u0007T\u0002\u0002\u2522\u2523\u0007K\u0002\u0002\u2523\u2524\u0007",
- "R\u0002\u0002\u2524\u2525\u0007N\u0002\u0002\u2525\u2526\u0007G\u0002",
- "\u0002\u2526\u2527\u0007a\u0002\u0002\u2527\u2528\u0007F\u0002\u0002",
- "\u2528\u2529\u0007G\u0002\u0002\u2529\u252a\u0007U\u0002\u0002\u252a",
- "\u05f4\u0003\u0002\u0002\u0002\u252b\u252c\u0007V\u0002\u0002\u252c",
- "\u252d\u0007T\u0002\u0002\u252d\u252e\u0007K\u0002\u0002\u252e\u252f",
- "\u0007R\u0002\u0002\u252f\u2530\u0007N\u0002\u0002\u2530\u2531\u0007",
- "G\u0002\u0002\u2531\u2532\u0007a\u0002\u0002\u2532\u2533\u0007F\u0002",
- "\u0002\u2533\u2534\u0007G\u0002\u0002\u2534\u2535\u0007U\u0002\u0002",
- "\u2535\u2536\u0007a\u0002\u0002\u2536\u2537\u00075\u0002\u0002\u2537",
- "\u2538\u0007M\u0002\u0002\u2538\u2539\u0007G\u0002\u0002\u2539\u253a",
- "\u0007[\u0002\u0002\u253a\u05f6\u0003\u0002\u0002\u0002\u253b\u253c",
- "\u0007V\u0002\u0002\u253c\u253d\u0007T\u0002\u0002\u253d\u253e\u0007",
- "W\u0002\u0002\u253e\u253f\u0007U\u0002\u0002\u253f\u2540\u0007V\u0002",
- "\u0002\u2540\u2541\u0007Y\u0002\u0002\u2541\u2542\u0007Q\u0002\u0002",
- "\u2542\u2543\u0007T\u0002\u0002\u2543\u2544\u0007V\u0002\u0002\u2544",
- "\u2545\u0007J\u0002\u0002\u2545\u2546\u0007[\u0002\u0002\u2546\u05f8",
- "\u0003\u0002\u0002\u0002\u2547\u2548\u0007V\u0002\u0002\u2548\u2549",
- "\u0007T\u0002\u0002\u2549\u254a\u0007[\u0002\u0002\u254a\u05fa\u0003",
- "\u0002\u0002\u0002\u254b\u254c\u0007V\u0002\u0002\u254c\u254d\u0007",
- "U\u0002\u0002\u254d\u254e\u0007S\u0002\u0002\u254e\u254f\u0007N\u0002",
- "\u0002\u254f\u05fc\u0003\u0002\u0002\u0002\u2550\u2551\u0007V\u0002",
- "\u0002\u2551\u2552\u0007Y\u0002\u0002\u2552\u2553\u0007Q\u0002\u0002",
- "\u2553\u2554\u0007a\u0002\u0002\u2554\u2555\u0007F\u0002\u0002\u2555",
- "\u2556\u0007K\u0002\u0002\u2556\u2557\u0007I\u0002\u0002\u2557\u2558",
- "\u0007K\u0002\u0002\u2558\u2559\u0007V\u0002\u0002\u2559\u255a\u0007",
- "a\u0002\u0002\u255a\u255b\u0007[\u0002\u0002\u255b\u255c\u0007G\u0002",
- "\u0002\u255c\u255d\u0007C\u0002\u0002\u255d\u255e\u0007T\u0002\u0002",
- "\u255e\u255f\u0007a\u0002\u0002\u255f\u2560\u0007E\u0002\u0002\u2560",
- "\u2561\u0007W\u0002\u0002\u2561\u2562\u0007V\u0002\u0002\u2562\u2563",
- "\u0007Q\u0002\u0002\u2563\u2564\u0007H\u0002\u0002\u2564\u2565\u0007",
- "H\u0002\u0002\u2565\u05fe\u0003\u0002\u0002\u0002\u2566\u2567\u0007",
- "V\u0002\u0002\u2567\u2568\u0007[\u0002\u0002\u2568\u2569\u0007R\u0002",
- "\u0002\u2569\u256a\u0007G\u0002\u0002\u256a\u0600\u0003\u0002\u0002",
- "\u0002\u256b\u256c\u0007V\u0002\u0002\u256c\u256d\u0007[\u0002\u0002",
- "\u256d\u256e\u0007R\u0002\u0002\u256e\u256f\u0007G\u0002\u0002\u256f",
- "\u2570\u0007a\u0002\u0002\u2570\u2571\u0007Y\u0002\u0002\u2571\u2572",
- "\u0007C\u0002\u0002\u2572\u2573\u0007T\u0002\u0002\u2573\u2574\u0007",
- "P\u0002\u0002\u2574\u2575\u0007K\u0002\u0002\u2575\u2576\u0007P\u0002",
- "\u0002\u2576\u2577\u0007I\u0002\u0002\u2577\u0602\u0003\u0002\u0002",
- "\u0002\u2578\u2579\u0007W\u0002\u0002\u2579\u257a\u0007P\u0002\u0002",
- "\u257a\u257b\u0007D\u0002\u0002\u257b\u257c\u0007Q\u0002\u0002\u257c",
- "\u257d\u0007W\u0002\u0002\u257d\u257e\u0007P\u0002\u0002\u257e\u257f",
- "\u0007F\u0002\u0002\u257f\u2580\u0007G\u0002\u0002\u2580\u2581\u0007",
- "F\u0002\u0002\u2581\u0604\u0003\u0002\u0002\u0002\u2582\u2583\u0007",
- "W\u0002\u0002\u2583\u2584\u0007P\u0002\u0002\u2584\u2585\u0007E\u0002",
- "\u0002\u2585\u2586\u0007Q\u0002\u0002\u2586\u2587\u0007O\u0002\u0002",
- "\u2587\u2588\u0007O\u0002\u0002\u2588\u2589\u0007K\u0002\u0002\u2589",
- "\u258a\u0007V\u0002\u0002\u258a\u258b\u0007V\u0002\u0002\u258b\u258c",
- "\u0007G\u0002\u0002\u258c\u258d\u0007F\u0002\u0002\u258d\u0606\u0003",
- "\u0002\u0002\u0002\u258e\u258f\u0007W\u0002\u0002\u258f\u2590\u0007",
- "P\u0002\u0002\u2590\u2591\u0007M\u0002\u0002\u2591\u2592\u0007P\u0002",
- "\u0002\u2592\u2593\u0007Q\u0002\u0002\u2593\u2594\u0007Y\u0002\u0002",
- "\u2594\u2595\u0007P\u0002\u0002\u2595\u0608\u0003\u0002\u0002\u0002",
- "\u2596\u2597\u0007W\u0002\u0002\u2597\u2598\u0007P\u0002\u0002\u2598",
- "\u2599\u0007N\u0002\u0002\u2599\u259a\u0007K\u0002\u0002\u259a\u259b",
- "\u0007O\u0002\u0002\u259b\u259c\u0007K\u0002\u0002\u259c\u259d\u0007",
- "V\u0002\u0002\u259d\u259e\u0007G\u0002\u0002\u259e\u259f\u0007F\u0002",
- "\u0002\u259f\u060a\u0003\u0002\u0002\u0002\u25a0\u25a1\u0007W\u0002",
- "\u0002\u25a1\u25a2\u0007Q\u0002\u0002\u25a2\u25a3\u0007Y\u0002\u0002",
- "\u25a3\u060c\u0003\u0002\u0002\u0002\u25a4\u25a5\u0007W\u0002\u0002",
- "\u25a5\u25a6\u0007U\u0002\u0002\u25a6\u25a7\u0007K\u0002\u0002\u25a7",
- "\u25a8\u0007P\u0002\u0002\u25a8\u25a9\u0007I\u0002\u0002\u25a9\u060e",
- "\u0003\u0002\u0002\u0002\u25aa\u25ab\u0007X\u0002\u0002\u25ab\u25ac",
- "\u0007C\u0002\u0002\u25ac\u25ad\u0007N\u0002\u0002\u25ad\u25ae\u0007",
- "K\u0002\u0002\u25ae\u25af\u0007F\u0002\u0002\u25af\u25b0\u0007a\u0002",
- "\u0002\u25b0\u25b1\u0007Z\u0002\u0002\u25b1\u25b2\u0007O\u0002\u0002",
- "\u25b2\u25b3\u0007N\u0002\u0002\u25b3\u0610\u0003\u0002\u0002\u0002",
- "\u25b4\u25b5\u0007X\u0002\u0002\u25b5\u25b6\u0007C\u0002\u0002\u25b6",
- "\u25b7\u0007N\u0002\u0002\u25b7\u25b8\u0007K\u0002\u0002\u25b8\u25b9",
- "\u0007F\u0002\u0002\u25b9\u25ba\u0007C\u0002\u0002\u25ba\u25bb\u0007",
- "V\u0002\u0002\u25bb\u25bc\u0007K\u0002\u0002\u25bc\u25bd\u0007Q\u0002",
- "\u0002\u25bd\u25be\u0007P\u0002\u0002\u25be\u0612\u0003\u0002\u0002",
- "\u0002\u25bf\u25c0\u0007X\u0002\u0002\u25c0\u25c1\u0007C\u0002\u0002",
- "\u25c1\u25c2\u0007N\u0002\u0002\u25c2\u25c3\u0007W\u0002\u0002\u25c3",
- "\u25c4\u0007G\u0002\u0002\u25c4\u0614\u0003\u0002\u0002\u0002\u25c5",
- "\u25c6\u0007X\u0002\u0002\u25c6\u25c7\u0007C\u0002\u0002\u25c7\u25c8",
- "\u0007T\u0002\u0002\u25c8\u0616\u0003\u0002\u0002\u0002\u25c9\u25ca",
- "\u0007X\u0002\u0002\u25ca\u25cb\u0007C\u0002\u0002\u25cb\u25cc\u0007",
- "T\u0002\u0002\u25cc\u25cd\u0007R\u0002\u0002\u25cd\u0618\u0003\u0002",
- "\u0002\u0002\u25ce\u25cf\u0007X\u0002\u0002\u25cf\u25d0\u0007K\u0002",
- "\u0002\u25d0\u25d1\u0007G\u0002\u0002\u25d1\u25d2\u0007Y\u0002\u0002",
- "\u25d2\u25d3\u0007a\u0002\u0002\u25d3\u25d4\u0007O\u0002\u0002\u25d4",
- "\u25d5\u0007G\u0002\u0002\u25d5\u25d6\u0007V\u0002\u0002\u25d6\u25d7",
- "\u0007C\u0002\u0002\u25d7\u25d8\u0007F\u0002\u0002\u25d8\u25d9\u0007",
- "C\u0002\u0002\u25d9\u25da\u0007V\u0002\u0002\u25da\u25db\u0007C\u0002",
- "\u0002\u25db\u061a\u0003\u0002\u0002\u0002\u25dc\u25dd\u0007X\u0002",
- "\u0002\u25dd\u25de\u0007K\u0002\u0002\u25de\u25df\u0007G\u0002\u0002",
- "\u25df\u25e0\u0007Y\u0002\u0002\u25e0\u25e1\u0007U\u0002\u0002\u25e1",
- "\u061c\u0003\u0002\u0002\u0002\u25e2\u25e3\u0007Y\u0002\u0002\u25e3",
- "\u25e4\u0007C\u0002\u0002\u25e4\u25e5\u0007K\u0002\u0002\u25e5\u25e6",
- "\u0007V\u0002\u0002\u25e6\u061e\u0003\u0002\u0002\u0002\u25e7\u25e8",
- "\u0007Y\u0002\u0002\u25e8\u25e9\u0007G\u0002\u0002\u25e9\u25ea\u0007",
- "N\u0002\u0002\u25ea\u25eb\u0007N\u0002\u0002\u25eb\u25ec\u0007a\u0002",
- "\u0002\u25ec\u25ed\u0007H\u0002\u0002\u25ed\u25ee\u0007Q\u0002\u0002",
- "\u25ee\u25ef\u0007T\u0002\u0002\u25ef\u25f0\u0007O\u0002\u0002\u25f0",
- "\u25f1\u0007G\u0002\u0002\u25f1\u25f2\u0007F\u0002\u0002\u25f2\u25f3",
- "\u0007a\u0002\u0002\u25f3\u25f4\u0007Z\u0002\u0002\u25f4\u25f5\u0007",
- "O\u0002\u0002\u25f5\u25f6\u0007N\u0002\u0002\u25f6\u0620\u0003\u0002",
- "\u0002\u0002\u25f7\u25f8\u0007Y\u0002\u0002\u25f8\u25f9\u0007K\u0002",
- "\u0002\u25f9\u25fa\u0007V\u0002\u0002\u25fa\u25fb\u0007J\u0002\u0002",
- "\u25fb\u25fc\u0007Q\u0002\u0002\u25fc\u25fd\u0007W\u0002\u0002\u25fd",
- "\u25fe\u0007V\u0002\u0002\u25fe\u25ff\u0007a\u0002\u0002\u25ff\u2600",
- "\u0007C\u0002\u0002\u2600\u2601\u0007T\u0002\u0002\u2601\u2602\u0007",
- "T\u0002\u0002\u2602\u2603\u0007C\u0002\u0002\u2603\u2604\u0007[\u0002",
- "\u0002\u2604\u2605\u0007a\u0002\u0002\u2605\u2606\u0007Y\u0002\u0002",
- "\u2606\u2607\u0007T\u0002\u0002\u2607\u2608\u0007C\u0002\u0002\u2608",
- "\u2609\u0007R\u0002\u0002\u2609\u260a\u0007R\u0002\u0002\u260a\u260b",
- "\u0007G\u0002\u0002\u260b\u260c\u0007T\u0002\u0002\u260c\u0622\u0003",
- "\u0002\u0002\u0002\u260d\u260e\u0007Y\u0002\u0002\u260e\u260f\u0007",
- "Q\u0002\u0002\u260f\u2610\u0007T\u0002\u0002\u2610\u2611\u0007M\u0002",
- "\u0002\u2611\u0624\u0003\u0002\u0002\u0002\u2612\u2613\u0007Y\u0002",
- "\u0002\u2613\u2614\u0007Q\u0002\u0002\u2614\u2615\u0007T\u0002\u0002",
- "\u2615\u2616\u0007M\u0002\u0002\u2616\u2617\u0007N\u0002\u0002\u2617",
- "\u2618\u0007Q\u0002\u0002\u2618\u2619\u0007C\u0002\u0002\u2619\u261a",
- "\u0007F\u0002\u0002\u261a\u0626\u0003\u0002\u0002\u0002\u261b\u261c",
- "\u0007Z\u0002\u0002\u261c\u261d\u0007O\u0002\u0002\u261d\u261e\u0007",
- "N\u0002\u0002\u261e\u0628\u0003\u0002\u0002\u0002\u261f\u2620\u0007",
- "Z\u0002\u0002\u2620\u2621\u0007O\u0002\u0002\u2621\u2622\u0007N\u0002",
- "\u0002\u2622\u2623\u0007F\u0002\u0002\u2623\u2624\u0007C\u0002\u0002",
- "\u2624\u2625\u0007V\u0002\u0002\u2625\u2626\u0007C\u0002\u0002\u2626",
- "\u062a\u0003\u0002\u0002\u0002\u2627\u2628\u0007Z\u0002\u0002\u2628",
- "\u2629\u0007O\u0002\u0002\u2629\u262a\u0007N\u0002\u0002\u262a\u262b",
- "\u0007P\u0002\u0002\u262b\u262c\u0007C\u0002\u0002\u262c\u262d\u0007",
- "O\u0002\u0002\u262d\u262e\u0007G\u0002\u0002\u262e\u262f\u0007U\u0002",
- "\u0002\u262f\u2630\u0007R\u0002\u0002\u2630\u2631\u0007C\u0002\u0002",
- "\u2631\u2632\u0007E\u0002\u0002\u2632\u2633\u0007G\u0002\u0002\u2633",
- "\u2634\u0007U\u0002\u0002\u2634\u062c\u0003\u0002\u0002\u0002\u2635",
- "\u2636\u0007Z\u0002\u0002\u2636\u2637\u0007O\u0002\u0002\u2637\u2638",
- "\u0007N\u0002\u0002\u2638\u2639\u0007U\u0002\u0002\u2639\u263a\u0007",
- "E\u0002\u0002\u263a\u263b\u0007J\u0002\u0002\u263b\u263c\u0007G\u0002",
- "\u0002\u263c\u263d\u0007O\u0002\u0002\u263d\u263e\u0007C\u0002\u0002",
- "\u263e\u062e\u0003\u0002\u0002\u0002\u263f\u2640\u0007Z\u0002\u0002",
- "\u2640\u2641\u0007U\u0002\u0002\u2641\u2642\u0007K\u0002\u0002\u2642",
- "\u2643\u0007P\u0002\u0002\u2643\u2644\u0007K\u0002\u0002\u2644\u2645",
- "\u0007N\u0002\u0002\u2645\u0630\u0003\u0002\u0002\u0002\u2646\u2647",
- "\u0007&\u0002\u0002\u2647\u2648\u0007C\u0002\u0002\u2648\u2649\u0007",
- "E\u0002\u0002\u2649\u264a\u0007V\u0002\u0002\u264a\u264b\u0007K\u0002",
- "\u0002\u264b\u264c\u0007Q\u0002\u0002\u264c\u264d\u0007P\u0002\u0002",
- "\u264d\u0632\u0003\u0002\u0002\u0002\u264e\u2650\t\u0007\u0002\u0002",
- "\u264f\u264e\u0003\u0002\u0002\u0002\u2650\u2651\u0003\u0002\u0002\u0002",
- "\u2651\u264f\u0003\u0002\u0002\u0002\u2651\u2652\u0003\u0002\u0002\u0002",
- "\u2652\u2653\u0003\u0002\u0002\u0002\u2653\u2654\b\u031a\u0002\u0002",
- "\u2654\u0634\u0003\u0002\u0002\u0002\u2655\u2656\u00071\u0002\u0002",
- "\u2656\u2657\u0007,\u0002\u0002\u2657\u265c\u0003\u0002\u0002\u0002",
- "\u2658\u265b\u0005\u0635\u031b\u0002\u2659\u265b\u000b\u0002\u0002\u0002",
- "\u265a\u2658\u0003\u0002\u0002\u0002\u265a\u2659\u0003\u0002\u0002\u0002",
- "\u265b\u265e\u0003\u0002\u0002\u0002\u265c\u265d\u0003\u0002\u0002\u0002",
- "\u265c\u265a\u0003\u0002\u0002\u0002\u265d\u265f\u0003\u0002\u0002\u0002",
- "\u265e\u265c\u0003\u0002\u0002\u0002\u265f\u2660\u0007,\u0002\u0002",
- "\u2660\u2661\u00071\u0002\u0002\u2661\u2662\u0003\u0002\u0002\u0002",
- "\u2662\u2663\b\u031b\u0003\u0002\u2663\u0636\u0003\u0002\u0002\u0002",
- "\u2664\u2665\u0007/\u0002\u0002\u2665\u2666\u0007/\u0002\u0002\u2666",
- "\u266a\u0003\u0002\u0002\u0002\u2667\u2669\n\b\u0002\u0002\u2668\u2667",
- "\u0003\u0002\u0002\u0002\u2669\u266c\u0003\u0002\u0002\u0002\u266a\u2668",
- "\u0003\u0002\u0002\u0002\u266a\u266b\u0003\u0002\u0002\u0002\u266b\u266d",
- "\u0003\u0002\u0002\u0002\u266c\u266a\u0003\u0002\u0002\u0002\u266d\u266e",
- "\b\u031c\u0003\u0002\u266e\u0638\u0003\u0002\u0002\u0002\u266f\u2671",
- "\u0007$\u0002\u0002\u2670\u2672\n\u0005\u0002\u0002\u2671\u2670\u0003",
- "\u0002\u0002\u0002\u2672\u2673\u0003\u0002\u0002\u0002\u2673\u2671\u0003",
- "\u0002\u0002\u0002\u2673\u2674\u0003\u0002\u0002\u0002\u2674\u2675\u0003",
- "\u0002\u0002\u0002\u2675\u2676\u0007$\u0002\u0002\u2676\u063a\u0003",
- "\u0002\u0002\u0002\u2677\u2678\u0007)\u0002\u0002\u2678\u063c\u0003",
- "\u0002\u0002\u0002\u2679\u267b\u0007]\u0002\u0002\u267a\u267c\n\t\u0002",
- "\u0002\u267b\u267a\u0003\u0002\u0002\u0002\u267c\u267d\u0003\u0002\u0002",
- "\u0002\u267d\u267b\u0003\u0002\u0002\u0002\u267d\u267e\u0003\u0002\u0002",
- "\u0002\u267e\u267f\u0003\u0002\u0002\u0002\u267f\u2680\u0007_\u0002",
- "\u0002\u2680\u063e\u0003\u0002\u0002\u0002\u2681\u2684\u0007B\u0002",
- "\u0002\u2682\u2685\t\n\u0002\u0002\u2683\u2685\u0005\u069d\u034f\u0002",
- "\u2684\u2682\u0003\u0002\u0002\u0002\u2684\u2683\u0003\u0002\u0002\u0002",
- "\u2685\u2686\u0003\u0002\u0002\u0002\u2686\u2684\u0003\u0002\u0002\u0002",
- "\u2686\u2687\u0003\u0002\u0002\u0002\u2687\u0640\u0003\u0002\u0002\u0002",
- "\u2688\u268a\u0005\u069b\u034e\u0002\u2689\u2688\u0003\u0002\u0002\u0002",
- "\u268a\u268b\u0003\u0002\u0002\u0002\u268b\u2689\u0003\u0002\u0002\u0002",
- "\u268b\u268c\u0003\u0002\u0002\u0002\u268c\u0642\u0003\u0002\u0002\u0002",
- "\u268d\u2690\t\u000b\u0002\u0002\u268e\u2690\u0005\u069d\u034f\u0002",
- "\u268f\u268d\u0003\u0002\u0002\u0002\u268f\u268e\u0003\u0002\u0002\u0002",
- "\u2690\u2695\u0003\u0002\u0002\u0002\u2691\u2694\t\n\u0002\u0002\u2692",
- "\u2694\u0005\u069d\u034f\u0002\u2693\u2691\u0003\u0002\u0002\u0002\u2693",
- "\u2692\u0003\u0002\u0002\u0002\u2694\u2697\u0003\u0002\u0002\u0002\u2695",
- "\u2693\u0003\u0002\u0002\u0002\u2695\u2696\u0003\u0002\u0002\u0002\u2696",
- "\u0644\u0003\u0002\u0002\u0002\u2697\u2695\u0003\u0002\u0002\u0002\u2698",
- "\u2699\u0007)\u0002\u0002\u2699\u269b\t\u0006\u0002\u0002\u269a\u269c",
- "\t\u0006\u0002\u0002\u269b\u269a\u0003\u0002\u0002\u0002\u269c\u269d",
- "\u0003\u0002\u0002\u0002\u269d\u269b\u0003\u0002\u0002\u0002\u269d\u269e",
- "\u0003\u0002\u0002\u0002\u269e\u269f\u0003\u0002\u0002\u0002\u269f\u26a0",
- "\t\u0004\u0002\u0002\u26a0\u26a1\u0003\u0002\u0002\u0002\u26a1\u26a2",
- "\u00071\u0002\u0002\u26a2\u26a3\u00071\u0002\u0002\u26a3\u26b2\u0003",
- "\u0002\u0002\u0002\u26a4\u26a6\t\u0006\u0002\u0002\u26a5\u26a4\u0003",
- "\u0002\u0002\u0002\u26a6\u26a7\u0003\u0002\u0002\u0002\u26a7\u26a5\u0003",
- "\u0002\u0002\u0002\u26a7\u26a8\u0003\u0002\u0002\u0002\u26a8\u26a9\u0003",
- "\u0002\u0002\u0002\u26a9\u26b0\t\f\u0002\u0002\u26aa\u26ac\t\u0006\u0002",
- "\u0002\u26ab\u26aa\u0003\u0002\u0002\u0002\u26ac\u26ad\u0003\u0002\u0002",
- "\u0002\u26ad\u26ab\u0003\u0002\u0002\u0002\u26ad\u26ae\u0003\u0002\u0002",
- "\u0002\u26ae\u26b0\u0003\u0002\u0002\u0002\u26af\u26a5\u0003\u0002\u0002",
- "\u0002\u26af\u26ab\u0003\u0002\u0002\u0002\u26b0\u26b3\u0003\u0002\u0002",
- "\u0002\u26b1\u26b3\u0005\u0149\u00a5\u0002\u26b2\u26af\u0003\u0002\u0002",
- "\u0002\u26b2\u26b1\u0003\u0002\u0002\u0002\u26b3\u26b4\u0003\u0002\u0002",
- "\u0002\u26b4\u26b5\t\u0004\u0002\u0002\u26b5\u26b6\u0005\u0641\u0321",
- "\u0002\u26b6\u26b7\u0007)\u0002\u0002\u26b7\u0646\u0003\u0002\u0002",
- "\u0002\u26b8\u26c7\u0007)\u0002\u0002\u26b9\u26bb\t\u0006\u0002\u0002",
- "\u26ba\u26b9\u0003\u0002\u0002\u0002\u26bb\u26bc\u0003\u0002\u0002\u0002",
- "\u26bc\u26ba\u0003\u0002\u0002\u0002\u26bc\u26bd\u0003\u0002\u0002\u0002",
- "\u26bd\u26be\u0003\u0002\u0002\u0002\u26be\u26c5\t\f\u0002\u0002\u26bf",
- "\u26c1\t\u0006\u0002\u0002\u26c0\u26bf\u0003\u0002\u0002\u0002\u26c1",
- "\u26c2\u0003\u0002\u0002\u0002\u26c2\u26c0\u0003\u0002\u0002\u0002\u26c2",
- "\u26c3\u0003\u0002\u0002\u0002\u26c3\u26c5\u0003\u0002\u0002\u0002\u26c4",
- "\u26ba\u0003\u0002\u0002\u0002\u26c4\u26c0\u0003\u0002\u0002\u0002\u26c5",
- "\u26c8\u0003\u0002\u0002\u0002\u26c6\u26c8\u0005\u0149\u00a5\u0002\u26c7",
- "\u26c4\u0003\u0002\u0002\u0002\u26c7\u26c6\u0003\u0002\u0002\u0002\u26c8",
- "\u26c9\u0003\u0002\u0002\u0002\u26c9\u26ca\t\u0004\u0002\u0002\u26ca",
- "\u26cb\u0005\u0641\u0321\u0002\u26cb\u26cc\u0003\u0002\u0002\u0002\u26cc",
- "\u26cd\u0007)\u0002\u0002\u26cd\u0648\u0003\u0002\u0002\u0002\u26ce",
- "\u26d0\u0007P\u0002\u0002\u26cf\u26ce\u0003\u0002\u0002\u0002\u26cf",
- "\u26d0\u0003\u0002\u0002\u0002\u26d0\u26d1\u0003\u0002\u0002\u0002\u26d1",
- "\u26d7\u0007)\u0002\u0002\u26d2\u26d6\n\u0002\u0002\u0002\u26d3\u26d4",
- "\u0007)\u0002\u0002\u26d4\u26d6\u0007)\u0002\u0002\u26d5\u26d2\u0003",
- "\u0002\u0002\u0002\u26d5\u26d3\u0003\u0002\u0002\u0002\u26d6\u26d9\u0003",
- "\u0002\u0002\u0002\u26d7\u26d5\u0003\u0002\u0002\u0002\u26d7\u26d8\u0003",
- "\u0002\u0002\u0002\u26d8\u26da\u0003\u0002\u0002\u0002\u26d9\u26d7\u0003",
- "\u0002\u0002\u0002\u26da\u26db\u0007)\u0002\u0002\u26db\u064a\u0003",
- "\u0002\u0002\u0002\u26dc\u26dd\u00072\u0002\u0002\u26dd\u26e1\u0007",
- "Z\u0002\u0002\u26de\u26e0\u0005\u0699\u034d\u0002\u26df\u26de\u0003",
- "\u0002\u0002\u0002\u26e0\u26e3\u0003\u0002\u0002\u0002\u26e1\u26df\u0003",
- "\u0002\u0002\u0002\u26e1\u26e2\u0003\u0002\u0002\u0002\u26e2\u064c\u0003",
- "\u0002\u0002\u0002\u26e3\u26e1\u0003\u0002\u0002\u0002\u26e4\u26e5\u0005",
- "\u0697\u034c\u0002\u26e5\u064e\u0003\u0002\u0002\u0002\u26e6\u26e9\u0005",
- "\u0641\u0321\u0002\u26e7\u26e9\u0005\u0697\u034c\u0002\u26e8\u26e6\u0003",
- "\u0002\u0002\u0002\u26e8\u26e7\u0003\u0002\u0002\u0002\u26e9\u26ea\u0003",
- "\u0002\u0002\u0002\u26ea\u26ec\u0007G\u0002\u0002\u26eb\u26ed\t\r\u0002",
- "\u0002\u26ec\u26eb\u0003\u0002\u0002\u0002\u26ec\u26ed\u0003\u0002\u0002",
- "\u0002\u26ed\u26ef\u0003\u0002\u0002\u0002\u26ee\u26f0\u0005\u069b\u034e",
- "\u0002\u26ef\u26ee\u0003\u0002\u0002\u0002\u26f0\u26f1\u0003\u0002\u0002",
- "\u0002\u26f1\u26ef\u0003\u0002\u0002\u0002\u26f1\u26f2\u0003\u0002\u0002",
- "\u0002\u26f2\u0650\u0003\u0002\u0002\u0002\u26f3\u26f4\u0007?\u0002",
- "\u0002\u26f4\u0652\u0003\u0002\u0002\u0002\u26f5\u26f6\u0007@\u0002",
- "\u0002\u26f6\u0654\u0003\u0002\u0002\u0002\u26f7\u26f8\u0007>\u0002",
- "\u0002\u26f8\u0656\u0003\u0002\u0002\u0002\u26f9\u26fa\u0007#\u0002",
- "\u0002\u26fa\u0658\u0003\u0002\u0002\u0002\u26fb\u26fc\u0007-\u0002",
- "\u0002\u26fc\u26fd\u0007?\u0002\u0002\u26fd\u065a\u0003\u0002\u0002",
- "\u0002\u26fe\u26ff\u0007/\u0002\u0002\u26ff\u2700\u0007?\u0002\u0002",
- "\u2700\u065c\u0003\u0002\u0002\u0002\u2701\u2702\u0007,\u0002\u0002",
- "\u2702\u2703\u0007?\u0002\u0002\u2703\u065e\u0003\u0002\u0002\u0002",
- "\u2704\u2705\u00071\u0002\u0002\u2705\u2706\u0007?\u0002\u0002\u2706",
- "\u0660\u0003\u0002\u0002\u0002\u2707\u2708\u0007\'\u0002\u0002\u2708",
- "\u2709\u0007?\u0002\u0002\u2709\u0662\u0003\u0002\u0002\u0002\u270a",
- "\u270b\u0007(\u0002\u0002\u270b\u270c\u0007?\u0002\u0002\u270c\u0664",
- "\u0003\u0002\u0002\u0002\u270d\u270e\u0007`\u0002\u0002\u270e\u270f",
- "\u0007?\u0002\u0002\u270f\u0666\u0003\u0002\u0002\u0002\u2710\u2711",
- "\u0007~\u0002\u0002\u2711\u2712\u0007?\u0002\u0002\u2712\u0668\u0003",
- "\u0002\u0002\u0002\u2713\u2714\u0007~\u0002\u0002\u2714\u2715\u0007",
- "~\u0002\u0002\u2715\u066a\u0003\u0002\u0002\u0002\u2716\u2717\u0007",
- "0\u0002\u0002\u2717\u066c\u0003\u0002\u0002\u0002\u2718\u2719\u0007",
- "a\u0002\u0002\u2719\u066e\u0003\u0002\u0002\u0002\u271a\u271b\u0007",
- "B\u0002\u0002\u271b\u0670\u0003\u0002\u0002\u0002\u271c\u271d\u0007",
- "%\u0002\u0002\u271d\u0672\u0003\u0002\u0002\u0002\u271e\u271f\u0007",
- "&\u0002\u0002\u271f\u0674\u0003\u0002\u0002\u0002\u2720\u2721\u0007",
- "*\u0002\u0002\u2721\u0676\u0003\u0002\u0002\u0002\u2722\u2723\u0007",
- "+\u0002\u0002\u2723\u0678\u0003\u0002\u0002\u0002\u2724\u2725\u0007",
- ".\u0002\u0002\u2725\u067a\u0003\u0002\u0002\u0002\u2726\u2727\u0007",
- "=\u0002\u0002\u2727\u067c\u0003\u0002\u0002\u0002\u2728\u2729\u0007",
- "<\u0002\u0002\u2729\u067e\u0003\u0002\u0002\u0002\u272a\u272b\u0007",
- ",\u0002\u0002\u272b\u0680\u0003\u0002\u0002\u0002\u272c\u272d\u0007",
- "1\u0002\u0002\u272d\u0682\u0003\u0002\u0002\u0002\u272e\u272f\u0007",
- "\'\u0002\u0002\u272f\u0684\u0003\u0002\u0002\u0002\u2730\u2731\u0007",
- "-\u0002\u0002\u2731\u0686\u0003\u0002\u0002\u0002\u2732\u2733\u0007",
- "/\u0002\u0002\u2733\u0688\u0003\u0002\u0002\u0002\u2734\u2735\u0007",
- "\u0080\u0002\u0002\u2735\u068a\u0003\u0002\u0002\u0002\u2736\u2737\u0007",
- "~\u0002\u0002\u2737\u068c\u0003\u0002\u0002\u0002\u2738\u2739\u0007",
- "(\u0002\u0002\u2739\u068e\u0003\u0002\u0002\u0002\u273a\u273b\u0007",
- "`\u0002\u0002\u273b\u0690\u0003\u0002\u0002\u0002\u273c\u273d\t\u000e",
- "\u0002\u0002\u273d\u0692\u0003\u0002\u0002\u0002\u273e\u273f\t\u0003",
- "\u0002\u0002\u273f\u2740\t\u0003\u0002\u0002\u2740\u2741\t\u0003\u0002",
- "\u0002\u2741\u2742\t\u0003\u0002\u0002\u2742\u0694\u0003\u0002\u0002",
- "\u0002\u2743\u2745\t\u000f\u0002\u0002\u2744\u2743\u0003\u0002\u0002",
- "\u0002\u2744\u2745\u0003\u0002\u0002\u0002\u2745\u2747\u0003\u0002\u0002",
- "\u0002\u2746\u2748\t\u000f\u0002\u0002\u2747\u2746\u0003\u0002\u0002",
- "\u0002\u2747\u2748\u0003\u0002\u0002\u0002\u2748\u2749\u0003\u0002\u0002",
- "\u0002\u2749\u274a\t\u000f\u0002\u0002\u274a\u0696\u0003\u0002\u0002",
- "\u0002\u274b\u274d\u0005\u069b\u034e\u0002\u274c\u274b\u0003\u0002\u0002",
- "\u0002\u274d\u274e\u0003\u0002\u0002\u0002\u274e\u274c\u0003\u0002\u0002",
- "\u0002\u274e\u274f\u0003\u0002\u0002\u0002\u274f\u2750\u0003\u0002\u0002",
- "\u0002\u2750\u2752\u00070\u0002\u0002\u2751\u2753\u0005\u069b\u034e",
- "\u0002\u2752\u2751\u0003\u0002\u0002\u0002\u2753\u2754\u0003\u0002\u0002",
- "\u0002\u2754\u2752\u0003\u0002\u0002\u0002\u2754\u2755\u0003\u0002\u0002",
- "\u0002\u2755\u2764\u0003\u0002\u0002\u0002\u2756\u2758\u0005\u069b\u034e",
- "\u0002\u2757\u2756\u0003\u0002\u0002\u0002\u2758\u2759\u0003\u0002\u0002",
- "\u0002\u2759\u2757\u0003\u0002\u0002\u0002\u2759\u275a\u0003\u0002\u0002",
- "\u0002\u275a\u275b\u0003\u0002\u0002\u0002\u275b\u275c\u00070\u0002",
- "\u0002\u275c\u2764\u0003\u0002\u0002\u0002\u275d\u275f\u00070\u0002",
- "\u0002\u275e\u2760\u0005\u069b\u034e\u0002\u275f\u275e\u0003\u0002\u0002",
- "\u0002\u2760\u2761\u0003\u0002\u0002\u0002\u2761\u275f\u0003\u0002\u0002",
- "\u0002\u2761\u2762\u0003\u0002\u0002\u0002\u2762\u2764\u0003\u0002\u0002",
- "\u0002\u2763\u274c\u0003\u0002\u0002\u0002\u2763\u2757\u0003\u0002\u0002",
- "\u0002\u2763\u275d\u0003\u0002\u0002\u0002\u2764\u0698\u0003\u0002\u0002",
- "\u0002\u2765\u2766\t\u0003\u0002\u0002\u2766\u069a\u0003\u0002\u0002",
- "\u0002\u2767\u2768\t\u000f\u0002\u0002\u2768\u069c\u0003\u0002\u0002",
- "\u0002\u2769\u276a\t\u0010\u0002\u0002\u276a\u069e\u0003\u0002\u0002",
- "\u0002M\u0002\u0957\u0b1b\u0cc1\u0ccb\u0cce\u0cd1\u0cd4\u0cd7\u0cda",
- "\u0cde\u0ce1\u0ce4\u0ce7\u0ceb\u0cee\u0cf1\u0cf4\u0cf8\u0cfb\u0cfe\u0d01",
- "\u0d05\u0d08\u0d0b\u0d0e\u0d12\u0d15\u0d18\u0d1b\u0d1f\u0d22\u0d25\u0d28",
- "\u0d2c\u0d2f\u0d32\u0d35\u0d38\u1721\u2651\u265a\u265c\u266a\u2673\u267d",
- "\u2684\u2686\u268b\u268f\u2693\u2695\u269d\u26a7\u26ad\u26af\u26b2\u26bc",
- "\u26c2\u26c4\u26c7\u26cf\u26d5\u26d7\u26e1\u26e8\u26ec\u26f1\u2744\u2747",
- "\u274e\u2754\u2759\u2761\u2763\u0004\b\u0002\u0002\u0002\u0003\u0002"].join("");
-
-
-var atn = new antlr4.atn.ATNDeserializer().deserialize(serializedATN);
-
-var decisionsToDFA = atn.decisionToState.map( function(ds, index) { return new antlr4.dfa.DFA(ds, index); });
-
-function TSqlLexer(input) {
- antlr4.Lexer.call(this, input);
- this._interp = new antlr4.atn.LexerATNSimulator(this, atn, decisionsToDFA, new antlr4.PredictionContextCache());
- return this;
-}
-
-TSqlLexer.prototype = Object.create(antlr4.Lexer.prototype);
-TSqlLexer.prototype.constructor = TSqlLexer;
-
-Object.defineProperty(TSqlLexer.prototype, "atn", {
- get : function() {
- return atn;
- }
-});
-
-TSqlLexer.EOF = antlr4.Token.EOF;
-TSqlLexer.ABSENT = 1;
-TSqlLexer.ADD = 2;
-TSqlLexer.AES = 3;
-TSqlLexer.ALL = 4;
-TSqlLexer.ALLOW_CONNECTIONS = 5;
-TSqlLexer.ALLOW_MULTIPLE_EVENT_LOSS = 6;
-TSqlLexer.ALLOW_SINGLE_EVENT_LOSS = 7;
-TSqlLexer.ALTER = 8;
-TSqlLexer.AND = 9;
-TSqlLexer.ANONYMOUS = 10;
-TSqlLexer.ANY = 11;
-TSqlLexer.APPEND = 12;
-TSqlLexer.APPLICATION = 13;
-TSqlLexer.AS = 14;
-TSqlLexer.ASC = 15;
-TSqlLexer.ASYMMETRIC = 16;
-TSqlLexer.ASYNCHRONOUS_COMMIT = 17;
-TSqlLexer.AUTHORIZATION = 18;
-TSqlLexer.AUTHENTICATION = 19;
-TSqlLexer.AUTOMATED_BACKUP_PREFERENCE = 20;
-TSqlLexer.AUTOMATIC = 21;
-TSqlLexer.AVAILABILITY_MODE = 22;
-TSqlLexer.BACKSLASH = 23;
-TSqlLexer.BACKUP = 24;
-TSqlLexer.BEFORE = 25;
-TSqlLexer.BEGIN = 26;
-TSqlLexer.BETWEEN = 27;
-TSqlLexer.BLOCK = 28;
-TSqlLexer.BLOCKSIZE = 29;
-TSqlLexer.BLOCKING_HIERARCHY = 30;
-TSqlLexer.BREAK = 31;
-TSqlLexer.BROWSE = 32;
-TSqlLexer.BUFFER = 33;
-TSqlLexer.BUFFERCOUNT = 34;
-TSqlLexer.BULK = 35;
-TSqlLexer.BY = 36;
-TSqlLexer.CACHE = 37;
-TSqlLexer.CALLED = 38;
-TSqlLexer.CASCADE = 39;
-TSqlLexer.CASE = 40;
-TSqlLexer.CERTIFICATE = 41;
-TSqlLexer.CHANGETABLE = 42;
-TSqlLexer.CHANGES = 43;
-TSqlLexer.CHECK = 44;
-TSqlLexer.CHECKPOINT = 45;
-TSqlLexer.CHECK_POLICY = 46;
-TSqlLexer.CHECK_EXPIRATION = 47;
-TSqlLexer.CLASSIFIER_FUNCTION = 48;
-TSqlLexer.CLOSE = 49;
-TSqlLexer.CLUSTER = 50;
-TSqlLexer.CLUSTERED = 51;
-TSqlLexer.COALESCE = 52;
-TSqlLexer.COLLATE = 53;
-TSqlLexer.COLUMN = 54;
-TSqlLexer.COMPRESSION = 55;
-TSqlLexer.COMMIT = 56;
-TSqlLexer.COMPUTE = 57;
-TSqlLexer.CONFIGURATION = 58;
-TSqlLexer.CONSTRAINT = 59;
-TSqlLexer.CONTAINMENT = 60;
-TSqlLexer.CONTAINS = 61;
-TSqlLexer.CONTAINSTABLE = 62;
-TSqlLexer.CONTEXT = 63;
-TSqlLexer.CONTINUE = 64;
-TSqlLexer.CONTINUE_AFTER_ERROR = 65;
-TSqlLexer.CONTRACT = 66;
-TSqlLexer.CONTRACT_NAME = 67;
-TSqlLexer.CONVERSATION = 68;
-TSqlLexer.CONVERT = 69;
-TSqlLexer.COPY_ONLY = 70;
-TSqlLexer.CREATE = 71;
-TSqlLexer.CROSS = 72;
-TSqlLexer.CURRENT = 73;
-TSqlLexer.CURRENT_DATE = 74;
-TSqlLexer.CURRENT_TIME = 75;
-TSqlLexer.CURRENT_TIMESTAMP = 76;
-TSqlLexer.CURRENT_USER = 77;
-TSqlLexer.CURSOR = 78;
-TSqlLexer.CYCLE = 79;
-TSqlLexer.DATA_COMPRESSION = 80;
-TSqlLexer.DATA_SOURCE = 81;
-TSqlLexer.DATABASE = 82;
-TSqlLexer.DATABASE_MIRRORING = 83;
-TSqlLexer.DBCC = 84;
-TSqlLexer.DEALLOCATE = 85;
-TSqlLexer.DECLARE = 86;
-TSqlLexer.DEFAULT = 87;
-TSqlLexer.DEFAULT_DATABASE = 88;
-TSqlLexer.DEFAULT_SCHEMA = 89;
-TSqlLexer.DELETE = 90;
-TSqlLexer.DENY = 91;
-TSqlLexer.DESC = 92;
-TSqlLexer.DIAGNOSTICS = 93;
-TSqlLexer.DIFFERENTIAL = 94;
-TSqlLexer.DISK = 95;
-TSqlLexer.DISTINCT = 96;
-TSqlLexer.DISTRIBUTED = 97;
-TSqlLexer.DOUBLE = 98;
-TSqlLexer.DOUBLE_BACK_SLASH = 99;
-TSqlLexer.DOUBLE_FORWARD_SLASH = 100;
-TSqlLexer.DROP = 101;
-TSqlLexer.DTC_SUPPORT = 102;
-TSqlLexer.DUMP = 103;
-TSqlLexer.ELSE = 104;
-TSqlLexer.ENABLED = 105;
-TSqlLexer.END = 106;
-TSqlLexer.ENDPOINT = 107;
-TSqlLexer.ERRLVL = 108;
-TSqlLexer.ESCAPE = 109;
-TSqlLexer.ERROR = 110;
-TSqlLexer.EVENT = 111;
-TSqlLexer.EVENTDATA = 112;
-TSqlLexer.EVENT_RETENTION_MODE = 113;
-TSqlLexer.EXCEPT = 114;
-TSqlLexer.EXECUTABLE_FILE = 115;
-TSqlLexer.EXECUTE = 116;
-TSqlLexer.EXISTS = 117;
-TSqlLexer.EXPIREDATE = 118;
-TSqlLexer.EXIT = 119;
-TSqlLexer.EXTENSION = 120;
-TSqlLexer.EXTERNAL = 121;
-TSqlLexer.EXTERNAL_ACCESS = 122;
-TSqlLexer.FAILOVER = 123;
-TSqlLexer.FAILURECONDITIONLEVEL = 124;
-TSqlLexer.FAN_IN = 125;
-TSqlLexer.FETCH = 126;
-TSqlLexer.FILE = 127;
-TSqlLexer.FILENAME = 128;
-TSqlLexer.FILLFACTOR = 129;
-TSqlLexer.FILE_SNAPSHOT = 130;
-TSqlLexer.FOR = 131;
-TSqlLexer.FORCESEEK = 132;
-TSqlLexer.FORCE_SERVICE_ALLOW_DATA_LOSS = 133;
-TSqlLexer.FOREIGN = 134;
-TSqlLexer.FREETEXT = 135;
-TSqlLexer.FREETEXTTABLE = 136;
-TSqlLexer.FROM = 137;
-TSqlLexer.FULL = 138;
-TSqlLexer.FUNCTION = 139;
-TSqlLexer.GET = 140;
-TSqlLexer.GOTO = 141;
-TSqlLexer.GOVERNOR = 142;
-TSqlLexer.GRANT = 143;
-TSqlLexer.GROUP = 144;
-TSqlLexer.HAVING = 145;
-TSqlLexer.HASHED = 146;
-TSqlLexer.HEALTHCHECKTIMEOUT = 147;
-TSqlLexer.IDENTITY = 148;
-TSqlLexer.IDENTITYCOL = 149;
-TSqlLexer.IDENTITY_INSERT = 150;
-TSqlLexer.IF = 151;
-TSqlLexer.IIF = 152;
-TSqlLexer.IN = 153;
-TSqlLexer.INCLUDE = 154;
-TSqlLexer.INCREMENT = 155;
-TSqlLexer.INDEX = 156;
-TSqlLexer.INFINITE = 157;
-TSqlLexer.INIT = 158;
-TSqlLexer.INNER = 159;
-TSqlLexer.INSERT = 160;
-TSqlLexer.INSTEAD = 161;
-TSqlLexer.INTERSECT = 162;
-TSqlLexer.INTO = 163;
-TSqlLexer.IPV4_ADDR = 164;
-TSqlLexer.IPV6_ADDR = 165;
-TSqlLexer.IS = 166;
-TSqlLexer.ISNULL = 167;
-TSqlLexer.JOIN = 168;
-TSqlLexer.KERBEROS = 169;
-TSqlLexer.KEY = 170;
-TSqlLexer.KEY_PATH = 171;
-TSqlLexer.KEY_STORE_PROVIDER_NAME = 172;
-TSqlLexer.KILL = 173;
-TSqlLexer.LANGUAGE = 174;
-TSqlLexer.LEFT = 175;
-TSqlLexer.LIBRARY = 176;
-TSqlLexer.LIFETIME = 177;
-TSqlLexer.LIKE = 178;
-TSqlLexer.LINENO = 179;
-TSqlLexer.LINUX = 180;
-TSqlLexer.LISTENER_IP = 181;
-TSqlLexer.LISTENER_PORT = 182;
-TSqlLexer.LOAD = 183;
-TSqlLexer.LOCAL_SERVICE_NAME = 184;
-TSqlLexer.LOG = 185;
-TSqlLexer.MATCHED = 186;
-TSqlLexer.MASTER = 187;
-TSqlLexer.MAX_MEMORY = 188;
-TSqlLexer.MAXTRANSFER = 189;
-TSqlLexer.MAXVALUE = 190;
-TSqlLexer.MAX_DISPATCH_LATENCY = 191;
-TSqlLexer.MAX_EVENT_SIZE = 192;
-TSqlLexer.MAX_SIZE = 193;
-TSqlLexer.MAX_OUTSTANDING_IO_PER_VOLUME = 194;
-TSqlLexer.MEDIADESCRIPTION = 195;
-TSqlLexer.MEDIANAME = 196;
-TSqlLexer.MEMBER = 197;
-TSqlLexer.MEMORY_PARTITION_MODE = 198;
-TSqlLexer.MERGE = 199;
-TSqlLexer.MESSAGE_FORWARDING = 200;
-TSqlLexer.MESSAGE_FORWARD_SIZE = 201;
-TSqlLexer.MINVALUE = 202;
-TSqlLexer.MIRROR = 203;
-TSqlLexer.MUST_CHANGE = 204;
-TSqlLexer.NATIONAL = 205;
-TSqlLexer.NEGOTIATE = 206;
-TSqlLexer.NOCHECK = 207;
-TSqlLexer.NOFORMAT = 208;
-TSqlLexer.NOINIT = 209;
-TSqlLexer.NONCLUSTERED = 210;
-TSqlLexer.NONE = 211;
-TSqlLexer.NOREWIND = 212;
-TSqlLexer.NOSKIP = 213;
-TSqlLexer.NOUNLOAD = 214;
-TSqlLexer.NO_CHECKSUM = 215;
-TSqlLexer.NO_COMPRESSION = 216;
-TSqlLexer.NO_EVENT_LOSS = 217;
-TSqlLexer.NOT = 218;
-TSqlLexer.NOTIFICATION = 219;
-TSqlLexer.NTLM = 220;
-TSqlLexer.NULL = 221;
-TSqlLexer.NULLIF = 222;
-TSqlLexer.OF = 223;
-TSqlLexer.OFF = 224;
-TSqlLexer.OFFSETS = 225;
-TSqlLexer.OLD_PASSWORD = 226;
-TSqlLexer.ON = 227;
-TSqlLexer.ON_FAILURE = 228;
-TSqlLexer.OPEN = 229;
-TSqlLexer.OPENDATASOURCE = 230;
-TSqlLexer.OPENQUERY = 231;
-TSqlLexer.OPENROWSET = 232;
-TSqlLexer.OPENXML = 233;
-TSqlLexer.OPTION = 234;
-TSqlLexer.OR = 235;
-TSqlLexer.ORDER = 236;
-TSqlLexer.OUTER = 237;
-TSqlLexer.OVER = 238;
-TSqlLexer.PAGE = 239;
-TSqlLexer.PARAM_NODE = 240;
-TSqlLexer.PARTIAL = 241;
-TSqlLexer.PASSWORD = 242;
-TSqlLexer.PERCENT = 243;
-TSqlLexer.PERMISSION_SET = 244;
-TSqlLexer.PER_CPU = 245;
-TSqlLexer.PER_DB = 246;
-TSqlLexer.PER_NODE = 247;
-TSqlLexer.PIVOT = 248;
-TSqlLexer.PLAN = 249;
-TSqlLexer.PLATFORM = 250;
-TSqlLexer.POLICY = 251;
-TSqlLexer.PRECISION = 252;
-TSqlLexer.PREDICATE = 253;
-TSqlLexer.PRIMARY = 254;
-TSqlLexer.PRINT = 255;
-TSqlLexer.PROC = 256;
-TSqlLexer.PROCEDURE = 257;
-TSqlLexer.PROCESS = 258;
-TSqlLexer.PUBLIC = 259;
-TSqlLexer.PYTHON = 260;
-TSqlLexer.R = 261;
-TSqlLexer.RAISERROR = 262;
-TSqlLexer.RAW = 263;
-TSqlLexer.READ = 264;
-TSqlLexer.READTEXT = 265;
-TSqlLexer.READ_WRITE_FILEGROUPS = 266;
-TSqlLexer.RECONFIGURE = 267;
-TSqlLexer.REFERENCES = 268;
-TSqlLexer.REGENERATE = 269;
-TSqlLexer.RELATED_CONVERSATION = 270;
-TSqlLexer.RELATED_CONVERSATION_GROUP = 271;
-TSqlLexer.REPLICATION = 272;
-TSqlLexer.REQUIRED = 273;
-TSqlLexer.RESET = 274;
-TSqlLexer.RESTART = 275;
-TSqlLexer.RESTORE = 276;
-TSqlLexer.RESTRICT = 277;
-TSqlLexer.RESUME = 278;
-TSqlLexer.RETAINDAYS = 279;
-TSqlLexer.RETURN = 280;
-TSqlLexer.RETURNS = 281;
-TSqlLexer.REVERT = 282;
-TSqlLexer.REVOKE = 283;
-TSqlLexer.REWIND = 284;
-TSqlLexer.RIGHT = 285;
-TSqlLexer.ROLLBACK = 286;
-TSqlLexer.ROLE = 287;
-TSqlLexer.ROWCOUNT = 288;
-TSqlLexer.ROWGUIDCOL = 289;
-TSqlLexer.RSA_512 = 290;
-TSqlLexer.RSA_1024 = 291;
-TSqlLexer.RSA_2048 = 292;
-TSqlLexer.RSA_3072 = 293;
-TSqlLexer.RSA_4096 = 294;
-TSqlLexer.SAFETY = 295;
-TSqlLexer.RULE = 296;
-TSqlLexer.SAFE = 297;
-TSqlLexer.SAVE = 298;
-TSqlLexer.SCHEDULER = 299;
-TSqlLexer.SCHEMA = 300;
-TSqlLexer.SCHEME = 301;
-TSqlLexer.SECURITYAUDIT = 302;
-TSqlLexer.SELECT = 303;
-TSqlLexer.SEMANTICKEYPHRASETABLE = 304;
-TSqlLexer.SEMANTICSIMILARITYDETAILSTABLE = 305;
-TSqlLexer.SEMANTICSIMILARITYTABLE = 306;
-TSqlLexer.SERVER = 307;
-TSqlLexer.SERVICE = 308;
-TSqlLexer.SERVICE_BROKER = 309;
-TSqlLexer.SERVICE_NAME = 310;
-TSqlLexer.SESSION = 311;
-TSqlLexer.SESSION_USER = 312;
-TSqlLexer.SET = 313;
-TSqlLexer.SETUSER = 314;
-TSqlLexer.SHUTDOWN = 315;
-TSqlLexer.SID = 316;
-TSqlLexer.SKIP_KEYWORD = 317;
-TSqlLexer.SOFTNUMA = 318;
-TSqlLexer.SOME = 319;
-TSqlLexer.SOURCE = 320;
-TSqlLexer.SPECIFICATION = 321;
-TSqlLexer.SPLIT = 322;
-TSqlLexer.SQLDUMPERFLAGS = 323;
-TSqlLexer.SQLDUMPERPATH = 324;
-TSqlLexer.SQLDUMPERTIMEOUT = 325;
-TSqlLexer.STATISTICS = 326;
-TSqlLexer.STATE = 327;
-TSqlLexer.STATS = 328;
-TSqlLexer.START = 329;
-TSqlLexer.STARTED = 330;
-TSqlLexer.STARTUP_STATE = 331;
-TSqlLexer.STOP = 332;
-TSqlLexer.STOPPED = 333;
-TSqlLexer.STOP_ON_ERROR = 334;
-TSqlLexer.SUPPORTED = 335;
-TSqlLexer.SYSTEM_USER = 336;
-TSqlLexer.TABLE = 337;
-TSqlLexer.TABLESAMPLE = 338;
-TSqlLexer.TAPE = 339;
-TSqlLexer.TARGET = 340;
-TSqlLexer.TCP = 341;
-TSqlLexer.TEXTSIZE = 342;
-TSqlLexer.THEN = 343;
-TSqlLexer.TO = 344;
-TSqlLexer.TOP = 345;
-TSqlLexer.TRACK_CAUSALITY = 346;
-TSqlLexer.TRAN = 347;
-TSqlLexer.TRANSACTION = 348;
-TSqlLexer.TRANSFER = 349;
-TSqlLexer.TRIGGER = 350;
-TSqlLexer.TRUNCATE = 351;
-TSqlLexer.TSEQUAL = 352;
-TSqlLexer.UNCHECKED = 353;
-TSqlLexer.UNION = 354;
-TSqlLexer.UNIQUE = 355;
-TSqlLexer.UNLOCK = 356;
-TSqlLexer.UNPIVOT = 357;
-TSqlLexer.UNSAFE = 358;
-TSqlLexer.UPDATE = 359;
-TSqlLexer.UPDATETEXT = 360;
-TSqlLexer.URL = 361;
-TSqlLexer.USE = 362;
-TSqlLexer.USED = 363;
-TSqlLexer.USER = 364;
-TSqlLexer.VALUES = 365;
-TSqlLexer.VARYING = 366;
-TSqlLexer.VERBOSELOGGING = 367;
-TSqlLexer.VIEW = 368;
-TSqlLexer.VISIBILITY = 369;
-TSqlLexer.WAITFOR = 370;
-TSqlLexer.WHEN = 371;
-TSqlLexer.WHERE = 372;
-TSqlLexer.WHILE = 373;
-TSqlLexer.WINDOWS = 374;
-TSqlLexer.WITH = 375;
-TSqlLexer.WITHIN = 376;
-TSqlLexer.WITHOUT = 377;
-TSqlLexer.WITNESS = 378;
-TSqlLexer.WRITETEXT = 379;
-TSqlLexer.ABSOLUTE = 380;
-TSqlLexer.ACCENT_SENSITIVITY = 381;
-TSqlLexer.ACTION = 382;
-TSqlLexer.ACTIVATION = 383;
-TSqlLexer.ACTIVE = 384;
-TSqlLexer.ADDRESS = 385;
-TSqlLexer.AES_128 = 386;
-TSqlLexer.AES_192 = 387;
-TSqlLexer.AES_256 = 388;
-TSqlLexer.AFFINITY = 389;
-TSqlLexer.AFTER = 390;
-TSqlLexer.AGGREGATE = 391;
-TSqlLexer.ALGORITHM = 392;
-TSqlLexer.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS = 393;
-TSqlLexer.ALLOW_SNAPSHOT_ISOLATION = 394;
-TSqlLexer.ALLOWED = 395;
-TSqlLexer.ANSI_NULL_DEFAULT = 396;
-TSqlLexer.ANSI_NULLS = 397;
-TSqlLexer.ANSI_PADDING = 398;
-TSqlLexer.ANSI_WARNINGS = 399;
-TSqlLexer.APPLICATION_LOG = 400;
-TSqlLexer.APPLY = 401;
-TSqlLexer.ARITHABORT = 402;
-TSqlLexer.ASSEMBLY = 403;
-TSqlLexer.AUDIT = 404;
-TSqlLexer.AUDIT_GUID = 405;
-TSqlLexer.AUTO = 406;
-TSqlLexer.AUTO_CLEANUP = 407;
-TSqlLexer.AUTO_CLOSE = 408;
-TSqlLexer.AUTO_CREATE_STATISTICS = 409;
-TSqlLexer.AUTO_SHRINK = 410;
-TSqlLexer.AUTO_UPDATE_STATISTICS = 411;
-TSqlLexer.AUTO_UPDATE_STATISTICS_ASYNC = 412;
-TSqlLexer.AVAILABILITY = 413;
-TSqlLexer.AVG = 414;
-TSqlLexer.BACKUP_PRIORITY = 415;
-TSqlLexer.BEGIN_DIALOG = 416;
-TSqlLexer.BIGINT = 417;
-TSqlLexer.BINARY_BASE64 = 418;
-TSqlLexer.BINARY_CHECKSUM = 419;
-TSqlLexer.BINDING = 420;
-TSqlLexer.BLOB_STORAGE = 421;
-TSqlLexer.BROKER = 422;
-TSqlLexer.BROKER_INSTANCE = 423;
-TSqlLexer.BULK_LOGGED = 424;
-TSqlLexer.CALLER = 425;
-TSqlLexer.CAP_CPU_PERCENT = 426;
-TSqlLexer.CAST = 427;
-TSqlLexer.CATALOG = 428;
-TSqlLexer.CATCH = 429;
-TSqlLexer.CHANGE_RETENTION = 430;
-TSqlLexer.CHANGE_TRACKING = 431;
-TSqlLexer.CHECKSUM = 432;
-TSqlLexer.CHECKSUM_AGG = 433;
-TSqlLexer.CLEANUP = 434;
-TSqlLexer.COLLECTION = 435;
-TSqlLexer.COLUMN_MASTER_KEY = 436;
-TSqlLexer.COMMITTED = 437;
-TSqlLexer.COMPATIBILITY_LEVEL = 438;
-TSqlLexer.CONCAT = 439;
-TSqlLexer.CONCAT_NULL_YIELDS_NULL = 440;
-TSqlLexer.CONTENT = 441;
-TSqlLexer.CONTROL = 442;
-TSqlLexer.COOKIE = 443;
-TSqlLexer.COUNT = 444;
-TSqlLexer.COUNT_BIG = 445;
-TSqlLexer.COUNTER = 446;
-TSqlLexer.CPU = 447;
-TSqlLexer.CREATE_NEW = 448;
-TSqlLexer.CREATION_DISPOSITION = 449;
-TSqlLexer.CREDENTIAL = 450;
-TSqlLexer.CRYPTOGRAPHIC = 451;
-TSqlLexer.CURSOR_CLOSE_ON_COMMIT = 452;
-TSqlLexer.CURSOR_DEFAULT = 453;
-TSqlLexer.DATA = 454;
-TSqlLexer.DATE_CORRELATION_OPTIMIZATION = 455;
-TSqlLexer.DATEADD = 456;
-TSqlLexer.DATEDIFF = 457;
-TSqlLexer.DATENAME = 458;
-TSqlLexer.DATEPART = 459;
-TSqlLexer.DAYS = 460;
-TSqlLexer.DB_CHAINING = 461;
-TSqlLexer.DB_FAILOVER = 462;
-TSqlLexer.DECRYPTION = 463;
-TSqlLexer.DEFAULT_DOUBLE_QUOTE = 464;
-TSqlLexer.DEFAULT_FULLTEXT_LANGUAGE = 465;
-TSqlLexer.DEFAULT_LANGUAGE = 466;
-TSqlLexer.DELAY = 467;
-TSqlLexer.DELAYED_DURABILITY = 468;
-TSqlLexer.DELETED = 469;
-TSqlLexer.DENSE_RANK = 470;
-TSqlLexer.DEPENDENTS = 471;
-TSqlLexer.DES = 472;
-TSqlLexer.DESCRIPTION = 473;
-TSqlLexer.DESX = 474;
-TSqlLexer.DHCP = 475;
-TSqlLexer.DIALOG = 476;
-TSqlLexer.DIRECTORY_NAME = 477;
-TSqlLexer.DISABLE = 478;
-TSqlLexer.DISABLE_BROKER = 479;
-TSqlLexer.DISABLED = 480;
-TSqlLexer.DISK_DRIVE = 481;
-TSqlLexer.DOCUMENT = 482;
-TSqlLexer.DYNAMIC = 483;
-TSqlLexer.ELEMENTS = 484;
-TSqlLexer.EMERGENCY = 485;
-TSqlLexer.EMPTY = 486;
-TSqlLexer.ENABLE = 487;
-TSqlLexer.ENABLE_BROKER = 488;
-TSqlLexer.ENCRYPTED_VALUE = 489;
-TSqlLexer.ENCRYPTION = 490;
-TSqlLexer.ENDPOINT_URL = 491;
-TSqlLexer.ERROR_BROKER_CONVERSATIONS = 492;
-TSqlLexer.EXCLUSIVE = 493;
-TSqlLexer.EXECUTABLE = 494;
-TSqlLexer.EXIST = 495;
-TSqlLexer.EXPAND = 496;
-TSqlLexer.EXPIRY_DATE = 497;
-TSqlLexer.EXPLICIT = 498;
-TSqlLexer.FAIL_OPERATION = 499;
-TSqlLexer.FAILOVER_MODE = 500;
-TSqlLexer.FAILURE = 501;
-TSqlLexer.FAILURE_CONDITION_LEVEL = 502;
-TSqlLexer.FAST = 503;
-TSqlLexer.FAST_FORWARD = 504;
-TSqlLexer.FILEGROUP = 505;
-TSqlLexer.FILEGROWTH = 506;
-TSqlLexer.FILEPATH = 507;
-TSqlLexer.FILESTREAM = 508;
-TSqlLexer.FILTER = 509;
-TSqlLexer.FIRST = 510;
-TSqlLexer.FIRST_VALUE = 511;
-TSqlLexer.FOLLOWING = 512;
-TSqlLexer.FORCE = 513;
-TSqlLexer.FORCE_FAILOVER_ALLOW_DATA_LOSS = 514;
-TSqlLexer.FORCED = 515;
-TSqlLexer.FORMAT = 516;
-TSqlLexer.FORWARD_ONLY = 517;
-TSqlLexer.FULLSCAN = 518;
-TSqlLexer.FULLTEXT = 519;
-TSqlLexer.GB = 520;
-TSqlLexer.GETDATE = 521;
-TSqlLexer.GETUTCDATE = 522;
-TSqlLexer.GLOBAL = 523;
-TSqlLexer.GO = 524;
-TSqlLexer.GROUP_MAX_REQUESTS = 525;
-TSqlLexer.GROUPING = 526;
-TSqlLexer.GROUPING_ID = 527;
-TSqlLexer.HADR = 528;
-TSqlLexer.HASH = 529;
-TSqlLexer.HEALTH_CHECK_TIMEOUT = 530;
-TSqlLexer.HIGH = 531;
-TSqlLexer.HONOR_BROKER_PRIORITY = 532;
-TSqlLexer.HOURS = 533;
-TSqlLexer.IDENTITY_VALUE = 534;
-TSqlLexer.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX = 535;
-TSqlLexer.IMMEDIATE = 536;
-TSqlLexer.IMPERSONATE = 537;
-TSqlLexer.IMPORTANCE = 538;
-TSqlLexer.INCLUDE_NULL_VALUES = 539;
-TSqlLexer.INCREMENTAL = 540;
-TSqlLexer.INITIATOR = 541;
-TSqlLexer.INPUT = 542;
-TSqlLexer.INSENSITIVE = 543;
-TSqlLexer.INSERTED = 544;
-TSqlLexer.INT = 545;
-TSqlLexer.IP = 546;
-TSqlLexer.ISOLATION = 547;
-TSqlLexer.JOB = 548;
-TSqlLexer.JSON = 549;
-TSqlLexer.KB = 550;
-TSqlLexer.KEEP = 551;
-TSqlLexer.KEEPFIXED = 552;
-TSqlLexer.KEY_SOURCE = 553;
-TSqlLexer.KEYS = 554;
-TSqlLexer.KEYSET = 555;
-TSqlLexer.LAG = 556;
-TSqlLexer.LAST = 557;
-TSqlLexer.LAST_VALUE = 558;
-TSqlLexer.LEAD = 559;
-TSqlLexer.LEVEL = 560;
-TSqlLexer.LIST = 561;
-TSqlLexer.LISTENER = 562;
-TSqlLexer.LISTENER_URL = 563;
-TSqlLexer.LOB_COMPACTION = 564;
-TSqlLexer.LOCAL = 565;
-TSqlLexer.LOCATION = 566;
-TSqlLexer.LOCK = 567;
-TSqlLexer.LOCK_ESCALATION = 568;
-TSqlLexer.LOGIN = 569;
-TSqlLexer.LOOP = 570;
-TSqlLexer.LOW = 571;
-TSqlLexer.MANUAL = 572;
-TSqlLexer.MARK = 573;
-TSqlLexer.MATERIALIZED = 574;
-TSqlLexer.MAX = 575;
-TSqlLexer.MAX_CPU_PERCENT = 576;
-TSqlLexer.MAX_DOP = 577;
-TSqlLexer.MAX_FILES = 578;
-TSqlLexer.MAX_IOPS_PER_VOLUME = 579;
-TSqlLexer.MAX_MEMORY_PERCENT = 580;
-TSqlLexer.MAX_PROCESSES = 581;
-TSqlLexer.MAX_QUEUE_READERS = 582;
-TSqlLexer.MAX_ROLLOVER_FILES = 583;
-TSqlLexer.MAXDOP = 584;
-TSqlLexer.MAXRECURSION = 585;
-TSqlLexer.MAXSIZE = 586;
-TSqlLexer.MB = 587;
-TSqlLexer.MEDIUM = 588;
-TSqlLexer.MEMORY_OPTIMIZED_DATA = 589;
-TSqlLexer.MESSAGE = 590;
-TSqlLexer.MIN = 591;
-TSqlLexer.MIN_ACTIVE_ROWVERSION = 592;
-TSqlLexer.MIN_CPU_PERCENT = 593;
-TSqlLexer.MIN_IOPS_PER_VOLUME = 594;
-TSqlLexer.MIN_MEMORY_PERCENT = 595;
-TSqlLexer.MINUTES = 596;
-TSqlLexer.MIRROR_ADDRESS = 597;
-TSqlLexer.MIXED_PAGE_ALLOCATION = 598;
-TSqlLexer.MODE = 599;
-TSqlLexer.MODIFY = 600;
-TSqlLexer.MOVE = 601;
-TSqlLexer.MULTI_USER = 602;
-TSqlLexer.NAME = 603;
-TSqlLexer.NESTED_TRIGGERS = 604;
-TSqlLexer.NEW_ACCOUNT = 605;
-TSqlLexer.NEW_BROKER = 606;
-TSqlLexer.NEW_PASSWORD = 607;
-TSqlLexer.NEXT = 608;
-TSqlLexer.NO = 609;
-TSqlLexer.NO_TRUNCATE = 610;
-TSqlLexer.NO_WAIT = 611;
-TSqlLexer.NOCOUNT = 612;
-TSqlLexer.NODES = 613;
-TSqlLexer.NOEXPAND = 614;
-TSqlLexer.NON_TRANSACTED_ACCESS = 615;
-TSqlLexer.NORECOMPUTE = 616;
-TSqlLexer.NORECOVERY = 617;
-TSqlLexer.NOWAIT = 618;
-TSqlLexer.NTILE = 619;
-TSqlLexer.NUMANODE = 620;
-TSqlLexer.NUMBER = 621;
-TSqlLexer.NUMERIC_ROUNDABORT = 622;
-TSqlLexer.OBJECT = 623;
-TSqlLexer.OFFLINE = 624;
-TSqlLexer.OFFSET = 625;
-TSqlLexer.OLD_ACCOUNT = 626;
-TSqlLexer.ONLINE = 627;
-TSqlLexer.ONLY = 628;
-TSqlLexer.OPEN_EXISTING = 629;
-TSqlLexer.OPTIMISTIC = 630;
-TSqlLexer.OPTIMIZE = 631;
-TSqlLexer.OUT = 632;
-TSqlLexer.OUTPUT = 633;
-TSqlLexer.OVERRIDE = 634;
-TSqlLexer.OWNER = 635;
-TSqlLexer.PAGE_VERIFY = 636;
-TSqlLexer.PARAMETERIZATION = 637;
-TSqlLexer.PARTITION = 638;
-TSqlLexer.PARTITIONS = 639;
-TSqlLexer.PARTNER = 640;
-TSqlLexer.PATH = 641;
-TSqlLexer.POISON_MESSAGE_HANDLING = 642;
-TSqlLexer.POOL = 643;
-TSqlLexer.PORT = 644;
-TSqlLexer.PRECEDING = 645;
-TSqlLexer.PRIMARY_ROLE = 646;
-TSqlLexer.PRIOR = 647;
-TSqlLexer.PRIORITY = 648;
-TSqlLexer.PRIORITY_LEVEL = 649;
-TSqlLexer.PRIVATE = 650;
-TSqlLexer.PRIVATE_KEY = 651;
-TSqlLexer.PRIVILEGES = 652;
-TSqlLexer.PROCEDURE_NAME = 653;
-TSqlLexer.PROPERTY = 654;
-TSqlLexer.PROVIDER = 655;
-TSqlLexer.PROVIDER_KEY_NAME = 656;
-TSqlLexer.QUERY = 657;
-TSqlLexer.QUEUE = 658;
-TSqlLexer.QUEUE_DELAY = 659;
-TSqlLexer.QUOTED_IDENTIFIER = 660;
-TSqlLexer.RANGE = 661;
-TSqlLexer.RANK = 662;
-TSqlLexer.RC2 = 663;
-TSqlLexer.RC4 = 664;
-TSqlLexer.RC4_128 = 665;
-TSqlLexer.READ_COMMITTED_SNAPSHOT = 666;
-TSqlLexer.READ_ONLY = 667;
-TSqlLexer.READ_ONLY_ROUTING_LIST = 668;
-TSqlLexer.READ_WRITE = 669;
-TSqlLexer.READONLY = 670;
-TSqlLexer.REBUILD = 671;
-TSqlLexer.RECEIVE = 672;
-TSqlLexer.RECOMPILE = 673;
-TSqlLexer.RECOVERY = 674;
-TSqlLexer.RECURSIVE_TRIGGERS = 675;
-TSqlLexer.RELATIVE = 676;
-TSqlLexer.REMOTE = 677;
-TSqlLexer.REMOTE_SERVICE_NAME = 678;
-TSqlLexer.REMOVE = 679;
-TSqlLexer.REORGANIZE = 680;
-TSqlLexer.REPEATABLE = 681;
-TSqlLexer.REPLICA = 682;
-TSqlLexer.REQUEST_MAX_CPU_TIME_SEC = 683;
-TSqlLexer.REQUEST_MAX_MEMORY_GRANT_PERCENT = 684;
-TSqlLexer.REQUEST_MEMORY_GRANT_TIMEOUT_SEC = 685;
-TSqlLexer.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT = 686;
-TSqlLexer.RESERVE_DISK_SPACE = 687;
-TSqlLexer.RESOURCE = 688;
-TSqlLexer.RESOURCE_MANAGER_LOCATION = 689;
-TSqlLexer.RESTRICTED_USER = 690;
-TSqlLexer.RETENTION = 691;
-TSqlLexer.ROBUST = 692;
-TSqlLexer.ROOT = 693;
-TSqlLexer.ROUTE = 694;
-TSqlLexer.ROW = 695;
-TSqlLexer.ROW_NUMBER = 696;
-TSqlLexer.ROWGUID = 697;
-TSqlLexer.ROWS = 698;
-TSqlLexer.SAMPLE = 699;
-TSqlLexer.SCHEMABINDING = 700;
-TSqlLexer.SCOPED = 701;
-TSqlLexer.SCROLL = 702;
-TSqlLexer.SCROLL_LOCKS = 703;
-TSqlLexer.SEARCH = 704;
-TSqlLexer.SECONDARY = 705;
-TSqlLexer.SECONDARY_ONLY = 706;
-TSqlLexer.SECONDARY_ROLE = 707;
-TSqlLexer.SECONDS = 708;
-TSqlLexer.SECRET = 709;
-TSqlLexer.SECURITY = 710;
-TSqlLexer.SECURITY_LOG = 711;
-TSqlLexer.SEEDING_MODE = 712;
-TSqlLexer.SELF = 713;
-TSqlLexer.SEMI_SENSITIVE = 714;
-TSqlLexer.SEND = 715;
-TSqlLexer.SENT = 716;
-TSqlLexer.SEQUENCE = 717;
-TSqlLexer.SERIALIZABLE = 718;
-TSqlLexer.SESSION_TIMEOUT = 719;
-TSqlLexer.SETERROR = 720;
-TSqlLexer.SHARE = 721;
-TSqlLexer.SHOWPLAN = 722;
-TSqlLexer.SIGNATURE = 723;
-TSqlLexer.SIMPLE = 724;
-TSqlLexer.SINGLE_USER = 725;
-TSqlLexer.SIZE = 726;
-TSqlLexer.SMALLINT = 727;
-TSqlLexer.SNAPSHOT = 728;
-TSqlLexer.SPATIAL_WINDOW_MAX_CELLS = 729;
-TSqlLexer.STANDBY = 730;
-TSqlLexer.START_DATE = 731;
-TSqlLexer.STATIC = 732;
-TSqlLexer.STATS_STREAM = 733;
-TSqlLexer.STATUS = 734;
-TSqlLexer.STATUSONLY = 735;
-TSqlLexer.STDEV = 736;
-TSqlLexer.STDEVP = 737;
-TSqlLexer.STOPLIST = 738;
-TSqlLexer.STRING_AGG = 739;
-TSqlLexer.STUFF = 740;
-TSqlLexer.SUBJECT = 741;
-TSqlLexer.SUBSCRIPTION = 742;
-TSqlLexer.SUM = 743;
-TSqlLexer.SUSPEND = 744;
-TSqlLexer.SYMMETRIC = 745;
-TSqlLexer.SYNCHRONOUS_COMMIT = 746;
-TSqlLexer.SYNONYM = 747;
-TSqlLexer.SYSTEM = 748;
-TSqlLexer.TAKE = 749;
-TSqlLexer.TARGET_RECOVERY_TIME = 750;
-TSqlLexer.TB = 751;
-TSqlLexer.TEXTIMAGE_ON = 752;
-TSqlLexer.THROW = 753;
-TSqlLexer.TIES = 754;
-TSqlLexer.TIME = 755;
-TSqlLexer.TIMEOUT = 756;
-TSqlLexer.TIMER = 757;
-TSqlLexer.TINYINT = 758;
-TSqlLexer.TORN_PAGE_DETECTION = 759;
-TSqlLexer.TRANSFORM_NOISE_WORDS = 760;
-TSqlLexer.TRIPLE_DES = 761;
-TSqlLexer.TRIPLE_DES_3KEY = 762;
-TSqlLexer.TRUSTWORTHY = 763;
-TSqlLexer.TRY = 764;
-TSqlLexer.TSQL = 765;
-TSqlLexer.TWO_DIGIT_YEAR_CUTOFF = 766;
-TSqlLexer.TYPE = 767;
-TSqlLexer.TYPE_WARNING = 768;
-TSqlLexer.UNBOUNDED = 769;
-TSqlLexer.UNCOMMITTED = 770;
-TSqlLexer.UNKNOWN = 771;
-TSqlLexer.UNLIMITED = 772;
-TSqlLexer.UOW = 773;
-TSqlLexer.USING = 774;
-TSqlLexer.VALID_XML = 775;
-TSqlLexer.VALIDATION = 776;
-TSqlLexer.VALUE = 777;
-TSqlLexer.VAR = 778;
-TSqlLexer.VARP = 779;
-TSqlLexer.VIEW_METADATA = 780;
-TSqlLexer.VIEWS = 781;
-TSqlLexer.WAIT = 782;
-TSqlLexer.WELL_FORMED_XML = 783;
-TSqlLexer.WITHOUT_ARRAY_WRAPPER = 784;
-TSqlLexer.WORK = 785;
-TSqlLexer.WORKLOAD = 786;
-TSqlLexer.XML = 787;
-TSqlLexer.XMLDATA = 788;
-TSqlLexer.XMLNAMESPACES = 789;
-TSqlLexer.XMLSCHEMA = 790;
-TSqlLexer.XSINIL = 791;
-TSqlLexer.DOLLAR_ACTION = 792;
-TSqlLexer.SPACE = 793;
-TSqlLexer.COMMENT = 794;
-TSqlLexer.LINE_COMMENT = 795;
-TSqlLexer.DOUBLE_QUOTE_ID = 796;
-TSqlLexer.SINGLE_QUOTE = 797;
-TSqlLexer.SQUARE_BRACKET_ID = 798;
-TSqlLexer.LOCAL_ID = 799;
-TSqlLexer.DECIMAL = 800;
-TSqlLexer.ID = 801;
-TSqlLexer.QUOTED_URL = 802;
-TSqlLexer.QUOTED_HOST_AND_PORT = 803;
-TSqlLexer.STRING = 804;
-TSqlLexer.BINARY = 805;
-TSqlLexer.FLOAT = 806;
-TSqlLexer.REAL = 807;
-TSqlLexer.EQUAL = 808;
-TSqlLexer.GREATER = 809;
-TSqlLexer.LESS = 810;
-TSqlLexer.EXCLAMATION = 811;
-TSqlLexer.PLUS_ASSIGN = 812;
-TSqlLexer.MINUS_ASSIGN = 813;
-TSqlLexer.MULT_ASSIGN = 814;
-TSqlLexer.DIV_ASSIGN = 815;
-TSqlLexer.MOD_ASSIGN = 816;
-TSqlLexer.AND_ASSIGN = 817;
-TSqlLexer.XOR_ASSIGN = 818;
-TSqlLexer.OR_ASSIGN = 819;
-TSqlLexer.DOUBLE_BAR = 820;
-TSqlLexer.DOT = 821;
-TSqlLexer.UNDERLINE = 822;
-TSqlLexer.AT = 823;
-TSqlLexer.SHARP = 824;
-TSqlLexer.DOLLAR = 825;
-TSqlLexer.LR_BRACKET = 826;
-TSqlLexer.RR_BRACKET = 827;
-TSqlLexer.COMMA = 828;
-TSqlLexer.SEMI = 829;
-TSqlLexer.COLON = 830;
-TSqlLexer.STAR = 831;
-TSqlLexer.DIVIDE = 832;
-TSqlLexer.MODULE = 833;
-TSqlLexer.PLUS = 834;
-TSqlLexer.MINUS = 835;
-TSqlLexer.BIT_NOT = 836;
-TSqlLexer.BIT_OR = 837;
-TSqlLexer.BIT_AND = 838;
-TSqlLexer.BIT_XOR = 839;
-TSqlLexer.IPV4_OCTECT = 840;
-
-TSqlLexer.prototype.channelNames = [ "DEFAULT_TOKEN_CHANNEL", "HIDDEN" ];
-
-TSqlLexer.prototype.modeNames = [ "DEFAULT_MODE" ];
-
-TSqlLexer.prototype.literalNames = [ null, "'ABSENT'", "'ADD'", "'AES'",
- "'ALL'", "'ALLOW_CONNECTIONS'", "'ALLOW_MULTIPLE_EVENT_LOSS'",
- "'ALLOW_SINGLE_EVENT_LOSS'", "'ALTER'",
- "'AND'", "'ANONYMOUS'", "'ANY'", "'APPEND'",
- "'APPLICATION'", "'AS'", "'ASC'", "'ASYMMETRIC'",
- "'ASYNCHRONOUS_COMMIT'", "'AUTHORIZATION'",
- "'AUTHENTICATION'", "'AUTOMATED_BACKUP_PREFERENCE'",
- "'AUTOMATIC'", "'AVAILABILITY_MODE'",
- "'\\'", "'BACKUP'", "'BEFORE'", "'BEGIN'",
- "'BETWEEN'", "'BLOCK'", "'BLOCKSIZE'",
- "'BLOCKING_HIERARCHY'", "'BREAK'",
- "'BROWSE'", "'BUFFER'", "'BUFFERCOUNT'",
- "'BULK'", "'BY'", "'CACHE'", "'CALLED'",
- "'CASCADE'", "'CASE'", "'CERTIFICATE'",
- "'CHANGETABLE'", "'CHANGES'", "'CHECK'",
- "'CHECKPOINT'", "'CHECK_POLICY'", "'CHECK_EXPIRATION'",
- "'CLASSIFIER_FUNCTION'", "'CLOSE'",
- "'CLUSTER'", "'CLUSTERED'", "'COALESCE'",
- "'COLLATE'", "'COLUMN'", "'COMPRESSION'",
- "'COMMIT'", "'COMPUTE'", "'CONFIGURATION'",
- "'CONSTRAINT'", "'CONTAINMENT'", "'CONTAINS'",
- "'CONTAINSTABLE'", "'CONTEXT'", "'CONTINUE'",
- "'CONTINUE_AFTER_ERROR'", "'CONTRACT'",
- "'CONTRACT_NAME'", "'CONVERSATION'",
- null, "'COPY_ONLY'", "'CREATE'", "'CROSS'",
- "'CURRENT'", "'CURRENT_DATE'", "'CURRENT_TIME'",
- "'CURRENT_TIMESTAMP'", "'CURRENT_USER'",
- "'CURSOR'", "'CYCLE'", "'DATA_COMPRESSION'",
- "'DATA_SOURCE'", "'DATABASE'", "'DATABASE_MIRRORING'",
- "'DBCC'", "'DEALLOCATE'", "'DECLARE'",
- "'DEFAULT'", "'DEFAULT_DATABASE'",
- "'DEFAULT_SCHEMA'", "'DELETE'", "'DENY'",
- "'DESC'", "'DIAGNOSTICS'", "'DIFFERENTIAL'",
- "'DISK'", "'DISTINCT'", "'DISTRIBUTED'",
- "'DOUBLE'", "'\\\\'", "'//'", "'DROP'",
- "'DTC_SUPPORT'", "'DUMP'", "'ELSE'",
- "'ENABLED'", "'END'", "'ENDPOINT'",
- "'ERRLVL'", "'ESCAPE'", "'ERROR'",
- "'EVENT'", null, "'EVENT_RETENTION_MODE'",
- "'EXCEPT'", "'EXECUTABLE_FILE'", null,
- "'EXISTS'", "'EXPIREDATE'", "'EXIT'",
- "'EXTENSION'", "'EXTERNAL'", "'EXTERNAL_ACCESS'",
- "'FAILOVER'", "'FAILURECONDITIONLEVEL'",
- "'FAN_IN'", "'FETCH'", "'FILE'", "'FILENAME'",
- "'FILLFACTOR'", "'FILE_SNAPSHOT'",
- "'FOR'", "'FORCESEEK'", "'FORCE_SERVICE_ALLOW_DATA_LOSS'",
- "'FOREIGN'", "'FREETEXT'", "'FREETEXTTABLE'",
- "'FROM'", "'FULL'", "'FUNCTION'", "'GET'",
- "'GOTO'", "'GOVERNOR'", "'GRANT'",
- "'GROUP'", "'HAVING'", "'HASHED'",
- "'HEALTHCHECKTIMEOUT'", "'IDENTITY'",
- "'IDENTITYCOL'", "'IDENTITY_INSERT'",
- "'IF'", "'IIF'", "'IN'", "'INCLUDE'",
- "'INCREMENT'", "'INDEX'", "'INFINITE'",
- "'INIT'", "'INNER'", "'INSERT'", "'INSTEAD'",
- "'INTERSECT'", "'INTO'", null, null,
- "'IS'", "'ISNULL'", "'JOIN'", "'KERBEROS'",
- "'KEY'", "'KEY_PATH'", "'KEY_STORE_PROVIDER_NAME'",
- "'KILL'", "'LANGUAGE'", "'LEFT'", "'LIBRARY'",
- "'LIFETIME'", "'LIKE'", "'LINENO'",
- "'LINUX'", "'LISTENER_IP'", "'LISTENER_PORT'",
- "'LOAD'", "'LOCAL_SERVICE_NAME'", "'LOG'",
- "'MATCHED'", "'MASTER'", "'MAX_MEMORY'",
- "'MAXTRANSFER'", "'MAXVALUE'", "'MAX_DISPATCH_LATENCY'",
- "'MAX_EVENT_SIZE'", "'MAX_SIZE'", "'MAX_OUTSTANDING_IO_PER_VOLUME'",
- "'MEDIADESCRIPTION'", "'MEDIANAME'",
- "'MEMBER'", "'MEMORY_PARTITION_MODE'",
- "'MERGE'", "'MESSAGE_FORWARDING'",
- "'MESSAGE_FORWARD_SIZE'", "'MINVALUE'",
- "'MIRROR'", "'MUST_CHANGE'", "'NATIONAL'",
- "'NEGOTIATE'", "'NOCHECK'", "'NOFORMAT'",
- "'NOINIT'", "'NONCLUSTERED'", "'NONE'",
- "'NOREWIND'", "'NOSKIP'", "'NOUNLOAD'",
- "'NO_CHECKSUM'", "'NO_COMPRESSION'",
- "'NO_EVENT_LOSS'", "'NOT'", "'NOTIFICATION'",
- "'NTLM'", "'NULL'", "'NULLIF'", "'OF'",
- "'OFF'", "'OFFSETS'", "'OLD_PASSWORD'",
- "'ON'", "'ON_FAILURE'", "'OPEN'", "'OPENDATASOURCE'",
- "'OPENQUERY'", "'OPENROWSET'", "'OPENXML'",
- "'OPTION'", "'OR'", "'ORDER'", "'OUTER'",
- "'OVER'", "'PAGE'", "'PARAM_NODE'",
- "'PARTIAL'", "'PASSWORD'", "'PERCENT'",
- "'PERMISSION_SET'", "'PER_CPU'", "'PER_DB'",
- "'PER_NODE'", "'PIVOT'", "'PLAN'",
- "'PLATFORM'", "'POLICY'", "'PRECISION'",
- "'PREDICATE'", "'PRIMARY'", "'PRINT'",
- "'PROC'", "'PROCEDURE'", "'PROCESS'",
- "'PUBLIC'", "'PYTHON'", "'R'", "'RAISERROR'",
- "'RAW'", "'READ'", "'READTEXT'", "'READ_WRITE_FILEGROUPS'",
- "'RECONFIGURE'", "'REFERENCES'", "'REGENERATE'",
- "'RELATED_CONVERSATION'", "'RELATED_CONVERSATION_GROUP'",
- "'REPLICATION'", "'REQUIRED'", "'RESET'",
- "'RESTART'", "'RESTORE'", "'RESTRICT'",
- "'RESUME'", "'RETAINDAYS'", "'RETURN'",
- "'RETURNS'", "'REVERT'", "'REVOKE'",
- "'REWIND'", "'RIGHT'", "'ROLLBACK'",
- "'ROLE'", "'ROWCOUNT'", "'ROWGUIDCOL'",
- "'RSA_512'", "'RSA_1024'", "'RSA_2048'",
- "'RSA_3072'", "'RSA_4096'", "'SAFETY'",
- "'RULE'", "'SAFE'", "'SAVE'", "'SCHEDULER'",
- "'SCHEMA'", "'SCHEME'", "'SECURITYAUDIT'",
- "'SELECT'", "'SEMANTICKEYPHRASETABLE'",
- "'SEMANTICSIMILARITYDETAILSTABLE'",
- "'SEMANTICSIMILARITYTABLE'", "'SERVER'",
- "'SERVICE'", "'SERVICE_BROKER'", "'SERVICE_NAME'",
- "'SESSION'", "'SESSION_USER'", "'SET'",
- "'SETUSER'", "'SHUTDOWN'", "'SID'",
- "'SKIP'", "'SOFTNUMA'", "'SOME'", "'SOURCE'",
- "'SPECIFICATION'", "'SPLIT'", "'SQLDUMPERFLAGS'",
- "'SQLDUMPERPATH'", "'SQLDUMPERTIMEOUTS'",
- "'STATISTICS'", "'STATE'", "'STATS'",
- "'START'", "'STARTED'", "'STARTUP_STATE'",
- "'STOP'", "'STOPPED'", "'STOP_ON_ERROR'",
- "'SUPPORTED'", "'SYSTEM_USER'", "'TABLE'",
- "'TABLESAMPLE'", "'TAPE'", "'TARGET'",
- "'TCP'", "'TEXTSIZE'", "'THEN'", "'TO'",
- "'TOP'", "'TRACK_CAUSALITY'", "'TRAN'",
- "'TRANSACTION'", "'TRANSFER'", "'TRIGGER'",
- "'TRUNCATE'", "'TSEQUAL'", "'UNCHECKED'",
- "'UNION'", "'UNIQUE'", "'UNLOCK'",
- "'UNPIVOT'", "'UNSAFE'", "'UPDATE'",
- "'UPDATETEXT'", "'URL'", "'USE'", "'USED'",
- "'USER'", "'VALUES'", "'VARYING'",
- "'VERBOSELOGGING'", "'VIEW'", "'VISIBILITY'",
- "'WAITFOR'", "'WHEN'", "'WHERE'", "'WHILE'",
- "'WINDOWS'", "'WITH'", "'WITHIN'",
- "'WITHOUT'", "'WITNESS'", "'WRITETEXT'",
- "'ABSOLUTE'", "'ACCENT_SENSITIVITY'",
- "'ACTION'", "'ACTIVATION'", "'ACTIVE'",
- "'ADDRESS'", "'AES_128'", "'AES_192'",
- "'AES_256'", "'AFFINITY'", "'AFTER'",
- "'AGGREGATE'", "'ALGORITHM'", "'ALLOW_ENCRYPTED_VALUE_MODIFICATIONS'",
- "'ALLOW_SNAPSHOT_ISOLATION'", "'ALLOWED'",
- "'ANSI_NULL_DEFAULT'", "'ANSI_NULLS'",
- "'ANSI_PADDING'", "'ANSI_WARNINGS'",
- "'APPLICATION_LOG'", "'APPLY'", "'ARITHABORT'",
- "'ASSEMBLY'", "'AUDIT'", "'AUDIT_GUID'",
- "'AUTO'", "'AUTO_CLEANUP'", "'AUTO_CLOSE'",
- "'AUTO_CREATE_STATISTICS'", "'AUTO_SHRINK'",
- "'AUTO_UPDATE_STATISTICS'", "'AUTO_UPDATE_STATISTICS_ASYNC'",
- "'AVAILABILITY'", "'AVG'", "'BACKUP_PRIORITY'",
- "'BEGIN_DIALOG'", "'BIGINT'", "'BINARY BASE64'",
- "'BINARY_CHECKSUM'", "'BINDING'", "'BLOB_STORAGE'",
- "'BROKER'", "'BROKER_INSTANCE'", "'BULK_LOGGED'",
- "'CALLER'", "'CAP_CPU_PERCENT'", null,
- "'CATALOG'", "'CATCH'", "'CHANGE_RETENTION'",
- "'CHANGE_TRACKING'", "'CHECKSUM'",
- "'CHECKSUM_AGG'", "'CLEANUP'", "'COLLECTION'",
- "'COLUMN_MASTER_KEY'", "'COMMITTED'",
- "'COMPATIBILITY_LEVEL'", "'CONCAT'",
- "'CONCAT_NULL_YIELDS_NULL'", "'CONTENT'",
- "'CONTROL'", "'COOKIE'", "'COUNT'",
- "'COUNT_BIG'", "'COUNTER'", "'CPU'",
- "'CREATE_NEW'", "'CREATION_DISPOSITION'",
- "'CREDENTIAL'", "'CRYPTOGRAPHIC'",
- "'CURSOR_CLOSE_ON_COMMIT'", "'CURSOR_DEFAULT'",
- "'DATA'", "'DATE_CORRELATION_OPTIMIZATION'",
- "'DATEADD'", "'DATEDIFF'", "'DATENAME'",
- "'DATEPART'", "'DAYS'", "'DB_CHAINING'",
- "'DB_FAILOVER'", "'DECRYPTION'", null,
- "'DEFAULT_FULLTEXT_LANGUAGE'", "'DEFAULT_LANGUAGE'",
- "'DELAY'", "'DELAYED_DURABILITY'",
- "'DELETED'", "'DENSE_RANK'", "'DEPENDENTS'",
- "'DES'", "'DESCRIPTION'", "'DESX'",
- "'DHCP'", "'DIALOG'", "'DIRECTORY_NAME'",
- "'DISABLE'", "'DISABLE_BROKER'", "'DISABLED'",
- null, "'DOCUMENT'", "'DYNAMIC'", "'ELEMENTS'",
- "'EMERGENCY'", "'EMPTY'", "'ENABLE'",
- "'ENABLE_BROKER'", "'ENCRYPTED_VALUE'",
- "'ENCRYPTION'", "'ENDPOINT_URL'", "'ERROR_BROKER_CONVERSATIONS'",
- "'EXCLUSIVE'", "'EXECUTABLE'", "'EXIST'",
- "'EXPAND'", "'EXPIRY_DATE'", "'EXPLICIT'",
- "'FAIL_OPERATION'", "'FAILOVER_MODE'",
- "'FAILURE'", "'FAILURE_CONDITION_LEVEL'",
- "'FAST'", "'FAST_FORWARD'", "'FILEGROUP'",
- "'FILEGROWTH'", "'FILEPATH'", "'FILESTREAM'",
- "'FILTER'", "'FIRST'", "'FIRST_VALUE'",
- "'FOLLOWING'", "'FORCE'", "'FORCE_FAILOVER_ALLOW_DATA_LOSS'",
- "'FORCED'", "'FORMAT'", "'FORWARD_ONLY'",
- "'FULLSCAN'", "'FULLTEXT'", "'GB'",
- "'GETDATE'", "'GETUTCDATE'", "'GLOBAL'",
- "'GO'", "'GROUP_MAX_REQUESTS'", "'GROUPING'",
- "'GROUPING_ID'", "'HADR'", "'HASH'",
- "'HEALTH_CHECK_TIMEOUT'", "'HIGH'",
- "'HONOR_BROKER_PRIORITY'", "'HOURS'",
- "'IDENTITY_VALUE'", "'IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX'",
- "'IMMEDIATE'", "'IMPERSONATE'", "'IMPORTANCE'",
- "'INCLUDE_NULL_VALUES'", "'INCREMENTAL'",
- "'INITIATOR'", "'INPUT'", "'INSENSITIVE'",
- "'INSERTED'", "'INT'", "'IP'", "'ISOLATION'",
- "'JOB'", "'JSON'", "'KB'", "'KEEP'",
- "'KEEPFIXED'", "'KEY_SOURCE'", "'KEYS'",
- "'KEYSET'", "'LAG'", "'LAST'", "'LAST_VALUE'",
- "'LEAD'", "'LEVEL'", "'LIST'", "'LISTENER'",
- "'LISTENER_URL'", "'LOB_COMPACTION'",
- "'LOCAL'", "'LOCATION'", "'LOCK'",
- "'LOCK_ESCALATION'", "'LOGIN'", "'LOOP'",
- "'LOW'", "'MANUAL'", "'MARK'", "'MATERIALIZED'",
- "'MAX'", "'MAX_CPU_PERCENT'", "'MAX_DOP'",
- "'MAX_FILES'", "'MAX_IOPS_PER_VOLUME'",
- "'MAX_MEMORY_PERCENT'", "'MAX_PROCESSES'",
- "'MAX_QUEUE_READERS'", "'MAX_ROLLOVER_FILES'",
- "'MAXDOP'", "'MAXRECURSION'", "'MAXSIZE'",
- "'MB'", "'MEDIUM'", "'MEMORY_OPTIMIZED_DATA'",
- "'MESSAGE'", "'MIN'", "'MIN_ACTIVE_ROWVERSION'",
- "'MIN_CPU_PERCENT'", "'MIN_IOPS_PER_VOLUME'",
- "'MIN_MEMORY_PERCENT'", "'MINUTES'",
- "'MIRROR_ADDRESS'", "'MIXED_PAGE_ALLOCATION'",
- "'MODE'", "'MODIFY'", "'MOVE'", "'MULTI_USER'",
- "'NAME'", "'NESTED_TRIGGERS'", "'NEW_ACCOUNT'",
- "'NEW_BROKER'", "'NEW_PASSWORD'", "'NEXT'",
- "'NO'", "'NO_TRUNCATE'", "'NO_WAIT'",
- "'NOCOUNT'", "'NODES'", "'NOEXPAND'",
- "'NON_TRANSACTED_ACCESS'", "'NORECOMPUTE'",
- "'NORECOVERY'", "'NOWAIT'", "'NTILE'",
- "'NUMANODE'", "'NUMBER'", "'NUMERIC_ROUNDABORT'",
- "'OBJECT'", "'OFFLINE'", "'OFFSET'",
- "'OLD_ACCOUNT'", "'ONLINE'", "'ONLY'",
- "'OPEN_EXISTING'", "'OPTIMISTIC'",
- "'OPTIMIZE'", "'OUT'", "'OUTPUT'",
- "'OVERRIDE'", "'OWNER'", "'PAGE_VERIFY'",
- "'PARAMETERIZATION'", "'PARTITION'",
- "'PARTITIONS'", "'PARTNER'", "'PATH'",
- "'POISON_MESSAGE_HANDLING'", "'POOL'",
- "'PORT'", "'PRECEDING'", "'PRIMARY_ROLE'",
- "'PRIOR'", "'PRIORITY'", "'PRIORITY_LEVEL'",
- "'PRIVATE'", "'PRIVATE_KEY'", "'PRIVILEGES'",
- "'PROCEDURE_NAME'", "'PROPERTY'", "'PROVIDER'",
- "'PROVIDER_KEY_NAME'", "'QUERY'", "'QUEUE'",
- "'QUEUE_DELAY'", "'QUOTED_IDENTIFIER'",
- "'RANGE'", "'RANK'", "'RC2'", "'RC4'",
- "'RC4_128'", "'READ_COMMITTED_SNAPSHOT'",
- "'READ_ONLY'", "'READ_ONLY_ROUTING_LIST'",
- "'READ_WRITE'", "'READONLY'", "'REBUILD'",
- "'RECEIVE'", "'RECOMPILE'", "'RECOVERY'",
- "'RECURSIVE_TRIGGERS'", "'RELATIVE'",
- "'REMOTE'", "'REMOTE_SERVICE_NAME'",
- "'REMOVE'", "'REORGANIZE'", "'REPEATABLE'",
- "'REPLICA'", "'REQUEST_MAX_CPU_TIME_SEC'",
- "'REQUEST_MAX_MEMORY_GRANT_PERCENT'",
- "'REQUEST_MEMORY_GRANT_TIMEOUT_SEC'",
- "'REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT'",
- "'RESERVE_DISK_SPACE'", "'RESOURCE'",
- "'RESOURCE_MANAGER_LOCATION'", "'RESTRICTED_USER'",
- "'RETENTION'", "'ROBUST'", "'ROOT'",
- "'ROUTE'", "'ROW'", "'ROW_NUMBER'",
- "'ROWGUID'", "'ROWS'", "'SAMPLE'",
- "'SCHEMABINDING'", "'SCOPED'", "'SCROLL'",
- "'SCROLL_LOCKS'", "'SEARCH'", "'SECONDARY'",
- "'SECONDARY_ONLY'", "'SECONDARY_ROLE'",
- "'SECONDS'", "'SECRET'", "'SECURITY'",
- "'SECURITY_LOG'", "'SEEDING_MODE'",
- "'SELF'", "'SEMI_SENSITIVE'", "'SEND'",
- "'SENT'", "'SEQUENCE'", "'SERIALIZABLE'",
- "'SESSION_TIMEOUT'", "'SETERROR'",
- "'SHARE'", "'SHOWPLAN'", "'SIGNATURE'",
- "'SIMPLE'", "'SINGLE_USER'", "'SIZE'",
- "'SMALLINT'", "'SNAPSHOT'", "'SPATIAL_WINDOW_MAX_CELLS'",
- "'STANDBY'", "'START_DATE'", "'STATIC'",
- "'STATS_STREAM'", "'STATUS'", "'STATUSONLY'",
- "'STDEV'", "'STDEVP'", "'STOPLIST'",
- "'STRING_AGG'", "'STUFF'", "'SUBJECT'",
- "'SUBSCRIPTION'", "'SUM'", "'SUSPEND'",
- "'SYMMETRIC'", "'SYNCHRONOUS_COMMIT'",
- "'SYNONYM'", "'SYSTEM'", "'TAKE'",
- "'TARGET_RECOVERY_TIME'", "'TB'", "'TEXTIMAGE_ON'",
- "'THROW'", "'TIES'", "'TIME'", "'TIMEOUT'",
- "'TIMER'", "'TINYINT'", "'TORN_PAGE_DETECTION'",
- "'TRANSFORM_NOISE_WORDS'", "'TRIPLE_DES'",
- "'TRIPLE_DES_3KEY'", "'TRUSTWORTHY'",
- "'TRY'", "'TSQL'", "'TWO_DIGIT_YEAR_CUTOFF'",
- "'TYPE'", "'TYPE_WARNING'", "'UNBOUNDED'",
- "'UNCOMMITTED'", "'UNKNOWN'", "'UNLIMITED'",
- "'UOW'", "'USING'", "'VALID_XML'",
- "'VALIDATION'", "'VALUE'", "'VAR'",
- "'VARP'", "'VIEW_METADATA'", "'VIEWS'",
- "'WAIT'", "'WELL_FORMED_XML'", "'WITHOUT_ARRAY_WRAPPER'",
- "'WORK'", "'WORKLOAD'", "'XML'", "'XMLDATA'",
- "'XMLNAMESPACES'", "'XMLSCHEMA'", "'XSINIL'",
- "'$ACTION'", null, null, null, null,
- "'''", null, null, null, null, null,
- null, null, null, null, null, "'='",
- "'>'", "'<'", "'!'", "'+='", "'-='",
- "'*='", "'/='", "'%='", "'&='", "'^='",
- "'|='", "'||'", "'.'", "'_'", "'@'",
- "'#'", "'$'", "'('", "')'", "','",
- "';'", "':'", "'*'", "'/'", "'%'",
- "'+'", "'-'", "'~'", "'|'", "'&'",
- "'^'" ];
-
-TSqlLexer.prototype.symbolicNames = [ null, "ABSENT", "ADD", "AES", "ALL",
- "ALLOW_CONNECTIONS", "ALLOW_MULTIPLE_EVENT_LOSS",
- "ALLOW_SINGLE_EVENT_LOSS", "ALTER",
- "AND", "ANONYMOUS", "ANY", "APPEND",
- "APPLICATION", "AS", "ASC", "ASYMMETRIC",
- "ASYNCHRONOUS_COMMIT", "AUTHORIZATION",
- "AUTHENTICATION", "AUTOMATED_BACKUP_PREFERENCE",
- "AUTOMATIC", "AVAILABILITY_MODE",
- "BACKSLASH", "BACKUP", "BEFORE", "BEGIN",
- "BETWEEN", "BLOCK", "BLOCKSIZE", "BLOCKING_HIERARCHY",
- "BREAK", "BROWSE", "BUFFER", "BUFFERCOUNT",
- "BULK", "BY", "CACHE", "CALLED", "CASCADE",
- "CASE", "CERTIFICATE", "CHANGETABLE",
- "CHANGES", "CHECK", "CHECKPOINT",
- "CHECK_POLICY", "CHECK_EXPIRATION",
- "CLASSIFIER_FUNCTION", "CLOSE", "CLUSTER",
- "CLUSTERED", "COALESCE", "COLLATE",
- "COLUMN", "COMPRESSION", "COMMIT",
- "COMPUTE", "CONFIGURATION", "CONSTRAINT",
- "CONTAINMENT", "CONTAINS", "CONTAINSTABLE",
- "CONTEXT", "CONTINUE", "CONTINUE_AFTER_ERROR",
- "CONTRACT", "CONTRACT_NAME", "CONVERSATION",
- "CONVERT", "COPY_ONLY", "CREATE",
- "CROSS", "CURRENT", "CURRENT_DATE",
- "CURRENT_TIME", "CURRENT_TIMESTAMP",
- "CURRENT_USER", "CURSOR", "CYCLE",
- "DATA_COMPRESSION", "DATA_SOURCE",
- "DATABASE", "DATABASE_MIRRORING",
- "DBCC", "DEALLOCATE", "DECLARE", "DEFAULT",
- "DEFAULT_DATABASE", "DEFAULT_SCHEMA",
- "DELETE", "DENY", "DESC", "DIAGNOSTICS",
- "DIFFERENTIAL", "DISK", "DISTINCT",
- "DISTRIBUTED", "DOUBLE", "DOUBLE_BACK_SLASH",
- "DOUBLE_FORWARD_SLASH", "DROP", "DTC_SUPPORT",
- "DUMP", "ELSE", "ENABLED", "END",
- "ENDPOINT", "ERRLVL", "ESCAPE", "ERROR",
- "EVENT", "EVENTDATA", "EVENT_RETENTION_MODE",
- "EXCEPT", "EXECUTABLE_FILE", "EXECUTE",
- "EXISTS", "EXPIREDATE", "EXIT", "EXTENSION",
- "EXTERNAL", "EXTERNAL_ACCESS", "FAILOVER",
- "FAILURECONDITIONLEVEL", "FAN_IN",
- "FETCH", "FILE", "FILENAME", "FILLFACTOR",
- "FILE_SNAPSHOT", "FOR", "FORCESEEK",
- "FORCE_SERVICE_ALLOW_DATA_LOSS", "FOREIGN",
- "FREETEXT", "FREETEXTTABLE", "FROM",
- "FULL", "FUNCTION", "GET", "GOTO",
- "GOVERNOR", "GRANT", "GROUP", "HAVING",
- "HASHED", "HEALTHCHECKTIMEOUT", "IDENTITY",
- "IDENTITYCOL", "IDENTITY_INSERT",
- "IF", "IIF", "IN", "INCLUDE", "INCREMENT",
- "INDEX", "INFINITE", "INIT", "INNER",
- "INSERT", "INSTEAD", "INTERSECT",
- "INTO", "IPV4_ADDR", "IPV6_ADDR",
- "IS", "ISNULL", "JOIN", "KERBEROS",
- "KEY", "KEY_PATH", "KEY_STORE_PROVIDER_NAME",
- "KILL", "LANGUAGE", "LEFT", "LIBRARY",
- "LIFETIME", "LIKE", "LINENO", "LINUX",
- "LISTENER_IP", "LISTENER_PORT", "LOAD",
- "LOCAL_SERVICE_NAME", "LOG", "MATCHED",
- "MASTER", "MAX_MEMORY", "MAXTRANSFER",
- "MAXVALUE", "MAX_DISPATCH_LATENCY",
- "MAX_EVENT_SIZE", "MAX_SIZE", "MAX_OUTSTANDING_IO_PER_VOLUME",
- "MEDIADESCRIPTION", "MEDIANAME", "MEMBER",
- "MEMORY_PARTITION_MODE", "MERGE",
- "MESSAGE_FORWARDING", "MESSAGE_FORWARD_SIZE",
- "MINVALUE", "MIRROR", "MUST_CHANGE",
- "NATIONAL", "NEGOTIATE", "NOCHECK",
- "NOFORMAT", "NOINIT", "NONCLUSTERED",
- "NONE", "NOREWIND", "NOSKIP", "NOUNLOAD",
- "NO_CHECKSUM", "NO_COMPRESSION", "NO_EVENT_LOSS",
- "NOT", "NOTIFICATION", "NTLM", "NULL",
- "NULLIF", "OF", "OFF", "OFFSETS",
- "OLD_PASSWORD", "ON", "ON_FAILURE",
- "OPEN", "OPENDATASOURCE", "OPENQUERY",
- "OPENROWSET", "OPENXML", "OPTION",
- "OR", "ORDER", "OUTER", "OVER", "PAGE",
- "PARAM_NODE", "PARTIAL", "PASSWORD",
- "PERCENT", "PERMISSION_SET", "PER_CPU",
- "PER_DB", "PER_NODE", "PIVOT", "PLAN",
- "PLATFORM", "POLICY", "PRECISION",
- "PREDICATE", "PRIMARY", "PRINT", "PROC",
- "PROCEDURE", "PROCESS", "PUBLIC",
- "PYTHON", "R", "RAISERROR", "RAW",
- "READ", "READTEXT", "READ_WRITE_FILEGROUPS",
- "RECONFIGURE", "REFERENCES", "REGENERATE",
- "RELATED_CONVERSATION", "RELATED_CONVERSATION_GROUP",
- "REPLICATION", "REQUIRED", "RESET",
- "RESTART", "RESTORE", "RESTRICT",
- "RESUME", "RETAINDAYS", "RETURN",
- "RETURNS", "REVERT", "REVOKE", "REWIND",
- "RIGHT", "ROLLBACK", "ROLE", "ROWCOUNT",
- "ROWGUIDCOL", "RSA_512", "RSA_1024",
- "RSA_2048", "RSA_3072", "RSA_4096",
- "SAFETY", "RULE", "SAFE", "SAVE",
- "SCHEDULER", "SCHEMA", "SCHEME", "SECURITYAUDIT",
- "SELECT", "SEMANTICKEYPHRASETABLE",
- "SEMANTICSIMILARITYDETAILSTABLE",
- "SEMANTICSIMILARITYTABLE", "SERVER",
- "SERVICE", "SERVICE_BROKER", "SERVICE_NAME",
- "SESSION", "SESSION_USER", "SET",
- "SETUSER", "SHUTDOWN", "SID", "SKIP_KEYWORD",
- "SOFTNUMA", "SOME", "SOURCE", "SPECIFICATION",
- "SPLIT", "SQLDUMPERFLAGS", "SQLDUMPERPATH",
- "SQLDUMPERTIMEOUT", "STATISTICS",
- "STATE", "STATS", "START", "STARTED",
- "STARTUP_STATE", "STOP", "STOPPED",
- "STOP_ON_ERROR", "SUPPORTED", "SYSTEM_USER",
- "TABLE", "TABLESAMPLE", "TAPE", "TARGET",
- "TCP", "TEXTSIZE", "THEN", "TO", "TOP",
- "TRACK_CAUSALITY", "TRAN", "TRANSACTION",
- "TRANSFER", "TRIGGER", "TRUNCATE",
- "TSEQUAL", "UNCHECKED", "UNION", "UNIQUE",
- "UNLOCK", "UNPIVOT", "UNSAFE", "UPDATE",
- "UPDATETEXT", "URL", "USE", "USED",
- "USER", "VALUES", "VARYING", "VERBOSELOGGING",
- "VIEW", "VISIBILITY", "WAITFOR", "WHEN",
- "WHERE", "WHILE", "WINDOWS", "WITH",
- "WITHIN", "WITHOUT", "WITNESS", "WRITETEXT",
- "ABSOLUTE", "ACCENT_SENSITIVITY",
- "ACTION", "ACTIVATION", "ACTIVE",
- "ADDRESS", "AES_128", "AES_192", "AES_256",
- "AFFINITY", "AFTER", "AGGREGATE",
- "ALGORITHM", "ALLOW_ENCRYPTED_VALUE_MODIFICATIONS",
- "ALLOW_SNAPSHOT_ISOLATION", "ALLOWED",
- "ANSI_NULL_DEFAULT", "ANSI_NULLS",
- "ANSI_PADDING", "ANSI_WARNINGS", "APPLICATION_LOG",
- "APPLY", "ARITHABORT", "ASSEMBLY",
- "AUDIT", "AUDIT_GUID", "AUTO", "AUTO_CLEANUP",
- "AUTO_CLOSE", "AUTO_CREATE_STATISTICS",
- "AUTO_SHRINK", "AUTO_UPDATE_STATISTICS",
- "AUTO_UPDATE_STATISTICS_ASYNC", "AVAILABILITY",
- "AVG", "BACKUP_PRIORITY", "BEGIN_DIALOG",
- "BIGINT", "BINARY_BASE64", "BINARY_CHECKSUM",
- "BINDING", "BLOB_STORAGE", "BROKER",
- "BROKER_INSTANCE", "BULK_LOGGED",
- "CALLER", "CAP_CPU_PERCENT", "CAST",
- "CATALOG", "CATCH", "CHANGE_RETENTION",
- "CHANGE_TRACKING", "CHECKSUM", "CHECKSUM_AGG",
- "CLEANUP", "COLLECTION", "COLUMN_MASTER_KEY",
- "COMMITTED", "COMPATIBILITY_LEVEL",
- "CONCAT", "CONCAT_NULL_YIELDS_NULL",
- "CONTENT", "CONTROL", "COOKIE", "COUNT",
- "COUNT_BIG", "COUNTER", "CPU", "CREATE_NEW",
- "CREATION_DISPOSITION", "CREDENTIAL",
- "CRYPTOGRAPHIC", "CURSOR_CLOSE_ON_COMMIT",
- "CURSOR_DEFAULT", "DATA", "DATE_CORRELATION_OPTIMIZATION",
- "DATEADD", "DATEDIFF", "DATENAME",
- "DATEPART", "DAYS", "DB_CHAINING",
- "DB_FAILOVER", "DECRYPTION", "DEFAULT_DOUBLE_QUOTE",
- "DEFAULT_FULLTEXT_LANGUAGE", "DEFAULT_LANGUAGE",
- "DELAY", "DELAYED_DURABILITY", "DELETED",
- "DENSE_RANK", "DEPENDENTS", "DES",
- "DESCRIPTION", "DESX", "DHCP", "DIALOG",
- "DIRECTORY_NAME", "DISABLE", "DISABLE_BROKER",
- "DISABLED", "DISK_DRIVE", "DOCUMENT",
- "DYNAMIC", "ELEMENTS", "EMERGENCY",
- "EMPTY", "ENABLE", "ENABLE_BROKER",
- "ENCRYPTED_VALUE", "ENCRYPTION", "ENDPOINT_URL",
- "ERROR_BROKER_CONVERSATIONS", "EXCLUSIVE",
- "EXECUTABLE", "EXIST", "EXPAND", "EXPIRY_DATE",
- "EXPLICIT", "FAIL_OPERATION", "FAILOVER_MODE",
- "FAILURE", "FAILURE_CONDITION_LEVEL",
- "FAST", "FAST_FORWARD", "FILEGROUP",
- "FILEGROWTH", "FILEPATH", "FILESTREAM",
- "FILTER", "FIRST", "FIRST_VALUE",
- "FOLLOWING", "FORCE", "FORCE_FAILOVER_ALLOW_DATA_LOSS",
- "FORCED", "FORMAT", "FORWARD_ONLY",
- "FULLSCAN", "FULLTEXT", "GB", "GETDATE",
- "GETUTCDATE", "GLOBAL", "GO", "GROUP_MAX_REQUESTS",
- "GROUPING", "GROUPING_ID", "HADR",
- "HASH", "HEALTH_CHECK_TIMEOUT", "HIGH",
- "HONOR_BROKER_PRIORITY", "HOURS",
- "IDENTITY_VALUE", "IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX",
- "IMMEDIATE", "IMPERSONATE", "IMPORTANCE",
- "INCLUDE_NULL_VALUES", "INCREMENTAL",
- "INITIATOR", "INPUT", "INSENSITIVE",
- "INSERTED", "INT", "IP", "ISOLATION",
- "JOB", "JSON", "KB", "KEEP", "KEEPFIXED",
- "KEY_SOURCE", "KEYS", "KEYSET", "LAG",
- "LAST", "LAST_VALUE", "LEAD", "LEVEL",
- "LIST", "LISTENER", "LISTENER_URL",
- "LOB_COMPACTION", "LOCAL", "LOCATION",
- "LOCK", "LOCK_ESCALATION", "LOGIN",
- "LOOP", "LOW", "MANUAL", "MARK", "MATERIALIZED",
- "MAX", "MAX_CPU_PERCENT", "MAX_DOP",
- "MAX_FILES", "MAX_IOPS_PER_VOLUME",
- "MAX_MEMORY_PERCENT", "MAX_PROCESSES",
- "MAX_QUEUE_READERS", "MAX_ROLLOVER_FILES",
- "MAXDOP", "MAXRECURSION", "MAXSIZE",
- "MB", "MEDIUM", "MEMORY_OPTIMIZED_DATA",
- "MESSAGE", "MIN", "MIN_ACTIVE_ROWVERSION",
- "MIN_CPU_PERCENT", "MIN_IOPS_PER_VOLUME",
- "MIN_MEMORY_PERCENT", "MINUTES", "MIRROR_ADDRESS",
- "MIXED_PAGE_ALLOCATION", "MODE", "MODIFY",
- "MOVE", "MULTI_USER", "NAME", "NESTED_TRIGGERS",
- "NEW_ACCOUNT", "NEW_BROKER", "NEW_PASSWORD",
- "NEXT", "NO", "NO_TRUNCATE", "NO_WAIT",
- "NOCOUNT", "NODES", "NOEXPAND", "NON_TRANSACTED_ACCESS",
- "NORECOMPUTE", "NORECOVERY", "NOWAIT",
- "NTILE", "NUMANODE", "NUMBER", "NUMERIC_ROUNDABORT",
- "OBJECT", "OFFLINE", "OFFSET", "OLD_ACCOUNT",
- "ONLINE", "ONLY", "OPEN_EXISTING",
- "OPTIMISTIC", "OPTIMIZE", "OUT", "OUTPUT",
- "OVERRIDE", "OWNER", "PAGE_VERIFY",
- "PARAMETERIZATION", "PARTITION", "PARTITIONS",
- "PARTNER", "PATH", "POISON_MESSAGE_HANDLING",
- "POOL", "PORT", "PRECEDING", "PRIMARY_ROLE",
- "PRIOR", "PRIORITY", "PRIORITY_LEVEL",
- "PRIVATE", "PRIVATE_KEY", "PRIVILEGES",
- "PROCEDURE_NAME", "PROPERTY", "PROVIDER",
- "PROVIDER_KEY_NAME", "QUERY", "QUEUE",
- "QUEUE_DELAY", "QUOTED_IDENTIFIER",
- "RANGE", "RANK", "RC2", "RC4", "RC4_128",
- "READ_COMMITTED_SNAPSHOT", "READ_ONLY",
- "READ_ONLY_ROUTING_LIST", "READ_WRITE",
- "READONLY", "REBUILD", "RECEIVE",
- "RECOMPILE", "RECOVERY", "RECURSIVE_TRIGGERS",
- "RELATIVE", "REMOTE", "REMOTE_SERVICE_NAME",
- "REMOVE", "REORGANIZE", "REPEATABLE",
- "REPLICA", "REQUEST_MAX_CPU_TIME_SEC",
- "REQUEST_MAX_MEMORY_GRANT_PERCENT",
- "REQUEST_MEMORY_GRANT_TIMEOUT_SEC",
- "REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT",
- "RESERVE_DISK_SPACE", "RESOURCE",
- "RESOURCE_MANAGER_LOCATION", "RESTRICTED_USER",
- "RETENTION", "ROBUST", "ROOT", "ROUTE",
- "ROW", "ROW_NUMBER", "ROWGUID", "ROWS",
- "SAMPLE", "SCHEMABINDING", "SCOPED",
- "SCROLL", "SCROLL_LOCKS", "SEARCH",
- "SECONDARY", "SECONDARY_ONLY", "SECONDARY_ROLE",
- "SECONDS", "SECRET", "SECURITY", "SECURITY_LOG",
- "SEEDING_MODE", "SELF", "SEMI_SENSITIVE",
- "SEND", "SENT", "SEQUENCE", "SERIALIZABLE",
- "SESSION_TIMEOUT", "SETERROR", "SHARE",
- "SHOWPLAN", "SIGNATURE", "SIMPLE",
- "SINGLE_USER", "SIZE", "SMALLINT",
- "SNAPSHOT", "SPATIAL_WINDOW_MAX_CELLS",
- "STANDBY", "START_DATE", "STATIC",
- "STATS_STREAM", "STATUS", "STATUSONLY",
- "STDEV", "STDEVP", "STOPLIST", "STRING_AGG",
- "STUFF", "SUBJECT", "SUBSCRIPTION",
- "SUM", "SUSPEND", "SYMMETRIC", "SYNCHRONOUS_COMMIT",
- "SYNONYM", "SYSTEM", "TAKE", "TARGET_RECOVERY_TIME",
- "TB", "TEXTIMAGE_ON", "THROW", "TIES",
- "TIME", "TIMEOUT", "TIMER", "TINYINT",
- "TORN_PAGE_DETECTION", "TRANSFORM_NOISE_WORDS",
- "TRIPLE_DES", "TRIPLE_DES_3KEY", "TRUSTWORTHY",
- "TRY", "TSQL", "TWO_DIGIT_YEAR_CUTOFF",
- "TYPE", "TYPE_WARNING", "UNBOUNDED",
- "UNCOMMITTED", "UNKNOWN", "UNLIMITED",
- "UOW", "USING", "VALID_XML", "VALIDATION",
- "VALUE", "VAR", "VARP", "VIEW_METADATA",
- "VIEWS", "WAIT", "WELL_FORMED_XML",
- "WITHOUT_ARRAY_WRAPPER", "WORK", "WORKLOAD",
- "XML", "XMLDATA", "XMLNAMESPACES",
- "XMLSCHEMA", "XSINIL", "DOLLAR_ACTION",
- "SPACE", "COMMENT", "LINE_COMMENT",
- "DOUBLE_QUOTE_ID", "SINGLE_QUOTE",
- "SQUARE_BRACKET_ID", "LOCAL_ID", "DECIMAL",
- "ID", "QUOTED_URL", "QUOTED_HOST_AND_PORT",
- "STRING", "BINARY", "FLOAT", "REAL",
- "EQUAL", "GREATER", "LESS", "EXCLAMATION",
- "PLUS_ASSIGN", "MINUS_ASSIGN", "MULT_ASSIGN",
- "DIV_ASSIGN", "MOD_ASSIGN", "AND_ASSIGN",
- "XOR_ASSIGN", "OR_ASSIGN", "DOUBLE_BAR",
- "DOT", "UNDERLINE", "AT", "SHARP",
- "DOLLAR", "LR_BRACKET", "RR_BRACKET",
- "COMMA", "SEMI", "COLON", "STAR",
- "DIVIDE", "MODULE", "PLUS", "MINUS",
- "BIT_NOT", "BIT_OR", "BIT_AND", "BIT_XOR",
- "IPV4_OCTECT" ];
-
-TSqlLexer.prototype.ruleNames = [ "ABSENT", "ADD", "AES", "ALL", "ALLOW_CONNECTIONS",
- "ALLOW_MULTIPLE_EVENT_LOSS", "ALLOW_SINGLE_EVENT_LOSS",
- "ALTER", "AND", "ANONYMOUS", "ANY", "APPEND",
- "APPLICATION", "AS", "ASC", "ASYMMETRIC",
- "ASYNCHRONOUS_COMMIT", "AUTHORIZATION",
- "AUTHENTICATION", "AUTOMATED_BACKUP_PREFERENCE",
- "AUTOMATIC", "AVAILABILITY_MODE", "BACKSLASH",
- "BACKUP", "BEFORE", "BEGIN", "BETWEEN",
- "BLOCK", "BLOCKSIZE", "BLOCKING_HIERARCHY",
- "BREAK", "BROWSE", "BUFFER", "BUFFERCOUNT",
- "BULK", "BY", "CACHE", "CALLED", "CASCADE",
- "CASE", "CERTIFICATE", "CHANGETABLE",
- "CHANGES", "CHECK", "CHECKPOINT", "CHECK_POLICY",
- "CHECK_EXPIRATION", "CLASSIFIER_FUNCTION",
- "CLOSE", "CLUSTER", "CLUSTERED", "COALESCE",
- "COLLATE", "COLUMN", "COMPRESSION", "COMMIT",
- "COMPUTE", "CONFIGURATION", "CONSTRAINT",
- "CONTAINMENT", "CONTAINS", "CONTAINSTABLE",
- "CONTEXT", "CONTINUE", "CONTINUE_AFTER_ERROR",
- "CONTRACT", "CONTRACT_NAME", "CONVERSATION",
- "CONVERT", "COPY_ONLY", "CREATE", "CROSS",
- "CURRENT", "CURRENT_DATE", "CURRENT_TIME",
- "CURRENT_TIMESTAMP", "CURRENT_USER", "CURSOR",
- "CYCLE", "DATA_COMPRESSION", "DATA_SOURCE",
- "DATABASE", "DATABASE_MIRRORING", "DBCC",
- "DEALLOCATE", "DECLARE", "DEFAULT", "DEFAULT_DATABASE",
- "DEFAULT_SCHEMA", "DELETE", "DENY", "DESC",
- "DIAGNOSTICS", "DIFFERENTIAL", "DISK",
- "DISTINCT", "DISTRIBUTED", "DOUBLE", "DOUBLE_BACK_SLASH",
- "DOUBLE_FORWARD_SLASH", "DROP", "DTC_SUPPORT",
- "DUMP", "ELSE", "ENABLED", "END", "ENDPOINT",
- "ERRLVL", "ESCAPE", "ERROR", "EVENT",
- "EVENTDATA", "EVENT_RETENTION_MODE", "EXCEPT",
- "EXECUTABLE_FILE", "EXECUTE", "EXISTS",
- "EXPIREDATE", "EXIT", "EXTENSION", "EXTERNAL",
- "EXTERNAL_ACCESS", "FAILOVER", "FAILURECONDITIONLEVEL",
- "FAN_IN", "FETCH", "FILE", "FILENAME",
- "FILLFACTOR", "FILE_SNAPSHOT", "FOR",
- "FORCESEEK", "FORCE_SERVICE_ALLOW_DATA_LOSS",
- "FOREIGN", "FREETEXT", "FREETEXTTABLE",
- "FROM", "FULL", "FUNCTION", "GET", "GOTO",
- "GOVERNOR", "GRANT", "GROUP", "HAVING",
- "HASHED", "HEALTHCHECKTIMEOUT", "IDENTITY",
- "IDENTITYCOL", "IDENTITY_INSERT", "IF",
- "IIF", "IN", "INCLUDE", "INCREMENT", "INDEX",
- "INFINITE", "INIT", "INNER", "INSERT",
- "INSTEAD", "INTERSECT", "INTO", "IPV4_ADDR",
- "IPV6_ADDR", "IS", "ISNULL", "JOIN", "KERBEROS",
- "KEY", "KEY_PATH", "KEY_STORE_PROVIDER_NAME",
- "KILL", "LANGUAGE", "LEFT", "LIBRARY",
- "LIFETIME", "LIKE", "LINENO", "LINUX",
- "LISTENER_IP", "LISTENER_PORT", "LOAD",
- "LOCAL_SERVICE_NAME", "LOG", "MATCHED",
- "MASTER", "MAX_MEMORY", "MAXTRANSFER",
- "MAXVALUE", "MAX_DISPATCH_LATENCY", "MAX_EVENT_SIZE",
- "MAX_SIZE", "MAX_OUTSTANDING_IO_PER_VOLUME",
- "MEDIADESCRIPTION", "MEDIANAME", "MEMBER",
- "MEMORY_PARTITION_MODE", "MERGE", "MESSAGE_FORWARDING",
- "MESSAGE_FORWARD_SIZE", "MINVALUE", "MIRROR",
- "MUST_CHANGE", "NATIONAL", "NEGOTIATE",
- "NOCHECK", "NOFORMAT", "NOINIT", "NONCLUSTERED",
- "NONE", "NOREWIND", "NOSKIP", "NOUNLOAD",
- "NO_CHECKSUM", "NO_COMPRESSION", "NO_EVENT_LOSS",
- "NOT", "NOTIFICATION", "NTLM", "NULL",
- "NULLIF", "OF", "OFF", "OFFSETS", "OLD_PASSWORD",
- "ON", "ON_FAILURE", "OPEN", "OPENDATASOURCE",
- "OPENQUERY", "OPENROWSET", "OPENXML",
- "OPTION", "OR", "ORDER", "OUTER", "OVER",
- "PAGE", "PARAM_NODE", "PARTIAL", "PASSWORD",
- "PERCENT", "PERMISSION_SET", "PER_CPU",
- "PER_DB", "PER_NODE", "PIVOT", "PLAN",
- "PLATFORM", "POLICY", "PRECISION", "PREDICATE",
- "PRIMARY", "PRINT", "PROC", "PROCEDURE",
- "PROCESS", "PUBLIC", "PYTHON", "R", "RAISERROR",
- "RAW", "READ", "READTEXT", "READ_WRITE_FILEGROUPS",
- "RECONFIGURE", "REFERENCES", "REGENERATE",
- "RELATED_CONVERSATION", "RELATED_CONVERSATION_GROUP",
- "REPLICATION", "REQUIRED", "RESET", "RESTART",
- "RESTORE", "RESTRICT", "RESUME", "RETAINDAYS",
- "RETURN", "RETURNS", "REVERT", "REVOKE",
- "REWIND", "RIGHT", "ROLLBACK", "ROLE",
- "ROWCOUNT", "ROWGUIDCOL", "RSA_512", "RSA_1024",
- "RSA_2048", "RSA_3072", "RSA_4096", "SAFETY",
- "RULE", "SAFE", "SAVE", "SCHEDULER", "SCHEMA",
- "SCHEME", "SECURITYAUDIT", "SELECT", "SEMANTICKEYPHRASETABLE",
- "SEMANTICSIMILARITYDETAILSTABLE", "SEMANTICSIMILARITYTABLE",
- "SERVER", "SERVICE", "SERVICE_BROKER",
- "SERVICE_NAME", "SESSION", "SESSION_USER",
- "SET", "SETUSER", "SHUTDOWN", "SID", "SKIP_KEYWORD",
- "SOFTNUMA", "SOME", "SOURCE", "SPECIFICATION",
- "SPLIT", "SQLDUMPERFLAGS", "SQLDUMPERPATH",
- "SQLDUMPERTIMEOUT", "STATISTICS", "STATE",
- "STATS", "START", "STARTED", "STARTUP_STATE",
- "STOP", "STOPPED", "STOP_ON_ERROR", "SUPPORTED",
- "SYSTEM_USER", "TABLE", "TABLESAMPLE",
- "TAPE", "TARGET", "TCP", "TEXTSIZE", "THEN",
- "TO", "TOP", "TRACK_CAUSALITY", "TRAN",
- "TRANSACTION", "TRANSFER", "TRIGGER",
- "TRUNCATE", "TSEQUAL", "UNCHECKED", "UNION",
- "UNIQUE", "UNLOCK", "UNPIVOT", "UNSAFE",
- "UPDATE", "UPDATETEXT", "URL", "USE",
- "USED", "USER", "VALUES", "VARYING", "VERBOSELOGGING",
- "VIEW", "VISIBILITY", "WAITFOR", "WHEN",
- "WHERE", "WHILE", "WINDOWS", "WITH", "WITHIN",
- "WITHOUT", "WITNESS", "WRITETEXT", "ABSOLUTE",
- "ACCENT_SENSITIVITY", "ACTION", "ACTIVATION",
- "ACTIVE", "ADDRESS", "AES_128", "AES_192",
- "AES_256", "AFFINITY", "AFTER", "AGGREGATE",
- "ALGORITHM", "ALLOW_ENCRYPTED_VALUE_MODIFICATIONS",
- "ALLOW_SNAPSHOT_ISOLATION", "ALLOWED",
- "ANSI_NULL_DEFAULT", "ANSI_NULLS", "ANSI_PADDING",
- "ANSI_WARNINGS", "APPLICATION_LOG", "APPLY",
- "ARITHABORT", "ASSEMBLY", "AUDIT", "AUDIT_GUID",
- "AUTO", "AUTO_CLEANUP", "AUTO_CLOSE",
- "AUTO_CREATE_STATISTICS", "AUTO_SHRINK",
- "AUTO_UPDATE_STATISTICS", "AUTO_UPDATE_STATISTICS_ASYNC",
- "AVAILABILITY", "AVG", "BACKUP_PRIORITY",
- "BEGIN_DIALOG", "BIGINT", "BINARY_BASE64",
- "BINARY_CHECKSUM", "BINDING", "BLOB_STORAGE",
- "BROKER", "BROKER_INSTANCE", "BULK_LOGGED",
- "CALLER", "CAP_CPU_PERCENT", "CAST", "CATALOG",
- "CATCH", "CHANGE_RETENTION", "CHANGE_TRACKING",
- "CHECKSUM", "CHECKSUM_AGG", "CLEANUP",
- "COLLECTION", "COLUMN_MASTER_KEY", "COMMITTED",
- "COMPATIBILITY_LEVEL", "CONCAT", "CONCAT_NULL_YIELDS_NULL",
- "CONTENT", "CONTROL", "COOKIE", "COUNT",
- "COUNT_BIG", "COUNTER", "CPU", "CREATE_NEW",
- "CREATION_DISPOSITION", "CREDENTIAL",
- "CRYPTOGRAPHIC", "CURSOR_CLOSE_ON_COMMIT",
- "CURSOR_DEFAULT", "DATA", "DATE_CORRELATION_OPTIMIZATION",
- "DATEADD", "DATEDIFF", "DATENAME", "DATEPART",
- "DAYS", "DB_CHAINING", "DB_FAILOVER",
- "DECRYPTION", "DEFAULT_DOUBLE_QUOTE",
- "DEFAULT_FULLTEXT_LANGUAGE", "DEFAULT_LANGUAGE",
- "DELAY", "DELAYED_DURABILITY", "DELETED",
- "DENSE_RANK", "DEPENDENTS", "DES", "DESCRIPTION",
- "DESX", "DHCP", "DIALOG", "DIRECTORY_NAME",
- "DISABLE", "DISABLE_BROKER", "DISABLED",
- "DISK_DRIVE", "DOCUMENT", "DYNAMIC", "ELEMENTS",
- "EMERGENCY", "EMPTY", "ENABLE", "ENABLE_BROKER",
- "ENCRYPTED_VALUE", "ENCRYPTION", "ENDPOINT_URL",
- "ERROR_BROKER_CONVERSATIONS", "EXCLUSIVE",
- "EXECUTABLE", "EXIST", "EXPAND", "EXPIRY_DATE",
- "EXPLICIT", "FAIL_OPERATION", "FAILOVER_MODE",
- "FAILURE", "FAILURE_CONDITION_LEVEL",
- "FAST", "FAST_FORWARD", "FILEGROUP", "FILEGROWTH",
- "FILEPATH", "FILESTREAM", "FILTER", "FIRST",
- "FIRST_VALUE", "FOLLOWING", "FORCE", "FORCE_FAILOVER_ALLOW_DATA_LOSS",
- "FORCED", "FORMAT", "FORWARD_ONLY", "FULLSCAN",
- "FULLTEXT", "GB", "GETDATE", "GETUTCDATE",
- "GLOBAL", "GO", "GROUP_MAX_REQUESTS",
- "GROUPING", "GROUPING_ID", "HADR", "HASH",
- "HEALTH_CHECK_TIMEOUT", "HIGH", "HONOR_BROKER_PRIORITY",
- "HOURS", "IDENTITY_VALUE", "IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX",
- "IMMEDIATE", "IMPERSONATE", "IMPORTANCE",
- "INCLUDE_NULL_VALUES", "INCREMENTAL",
- "INITIATOR", "INPUT", "INSENSITIVE", "INSERTED",
- "INT", "IP", "ISOLATION", "JOB", "JSON",
- "KB", "KEEP", "KEEPFIXED", "KEY_SOURCE",
- "KEYS", "KEYSET", "LAG", "LAST", "LAST_VALUE",
- "LEAD", "LEVEL", "LIST", "LISTENER", "LISTENER_URL",
- "LOB_COMPACTION", "LOCAL", "LOCATION",
- "LOCK", "LOCK_ESCALATION", "LOGIN", "LOOP",
- "LOW", "MANUAL", "MARK", "MATERIALIZED",
- "MAX", "MAX_CPU_PERCENT", "MAX_DOP", "MAX_FILES",
- "MAX_IOPS_PER_VOLUME", "MAX_MEMORY_PERCENT",
- "MAX_PROCESSES", "MAX_QUEUE_READERS",
- "MAX_ROLLOVER_FILES", "MAXDOP", "MAXRECURSION",
- "MAXSIZE", "MB", "MEDIUM", "MEMORY_OPTIMIZED_DATA",
- "MESSAGE", "MIN", "MIN_ACTIVE_ROWVERSION",
- "MIN_CPU_PERCENT", "MIN_IOPS_PER_VOLUME",
- "MIN_MEMORY_PERCENT", "MINUTES", "MIRROR_ADDRESS",
- "MIXED_PAGE_ALLOCATION", "MODE", "MODIFY",
- "MOVE", "MULTI_USER", "NAME", "NESTED_TRIGGERS",
- "NEW_ACCOUNT", "NEW_BROKER", "NEW_PASSWORD",
- "NEXT", "NO", "NO_TRUNCATE", "NO_WAIT",
- "NOCOUNT", "NODES", "NOEXPAND", "NON_TRANSACTED_ACCESS",
- "NORECOMPUTE", "NORECOVERY", "NOWAIT",
- "NTILE", "NUMANODE", "NUMBER", "NUMERIC_ROUNDABORT",
- "OBJECT", "OFFLINE", "OFFSET", "OLD_ACCOUNT",
- "ONLINE", "ONLY", "OPEN_EXISTING", "OPTIMISTIC",
- "OPTIMIZE", "OUT", "OUTPUT", "OVERRIDE",
- "OWNER", "PAGE_VERIFY", "PARAMETERIZATION",
- "PARTITION", "PARTITIONS", "PARTNER",
- "PATH", "POISON_MESSAGE_HANDLING", "POOL",
- "PORT", "PRECEDING", "PRIMARY_ROLE", "PRIOR",
- "PRIORITY", "PRIORITY_LEVEL", "PRIVATE",
- "PRIVATE_KEY", "PRIVILEGES", "PROCEDURE_NAME",
- "PROPERTY", "PROVIDER", "PROVIDER_KEY_NAME",
- "QUERY", "QUEUE", "QUEUE_DELAY", "QUOTED_IDENTIFIER",
- "RANGE", "RANK", "RC2", "RC4", "RC4_128",
- "READ_COMMITTED_SNAPSHOT", "READ_ONLY",
- "READ_ONLY_ROUTING_LIST", "READ_WRITE",
- "READONLY", "REBUILD", "RECEIVE", "RECOMPILE",
- "RECOVERY", "RECURSIVE_TRIGGERS", "RELATIVE",
- "REMOTE", "REMOTE_SERVICE_NAME", "REMOVE",
- "REORGANIZE", "REPEATABLE", "REPLICA",
- "REQUEST_MAX_CPU_TIME_SEC", "REQUEST_MAX_MEMORY_GRANT_PERCENT",
- "REQUEST_MEMORY_GRANT_TIMEOUT_SEC", "REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT",
- "RESERVE_DISK_SPACE", "RESOURCE", "RESOURCE_MANAGER_LOCATION",
- "RESTRICTED_USER", "RETENTION", "ROBUST",
- "ROOT", "ROUTE", "ROW", "ROW_NUMBER",
- "ROWGUID", "ROWS", "SAMPLE", "SCHEMABINDING",
- "SCOPED", "SCROLL", "SCROLL_LOCKS", "SEARCH",
- "SECONDARY", "SECONDARY_ONLY", "SECONDARY_ROLE",
- "SECONDS", "SECRET", "SECURITY", "SECURITY_LOG",
- "SEEDING_MODE", "SELF", "SEMI_SENSITIVE",
- "SEND", "SENT", "SEQUENCE", "SERIALIZABLE",
- "SESSION_TIMEOUT", "SETERROR", "SHARE",
- "SHOWPLAN", "SIGNATURE", "SIMPLE", "SINGLE_USER",
- "SIZE", "SMALLINT", "SNAPSHOT", "SPATIAL_WINDOW_MAX_CELLS",
- "STANDBY", "START_DATE", "STATIC", "STATS_STREAM",
- "STATUS", "STATUSONLY", "STDEV", "STDEVP",
- "STOPLIST", "STRING_AGG", "STUFF", "SUBJECT",
- "SUBSCRIPTION", "SUM", "SUSPEND", "SYMMETRIC",
- "SYNCHRONOUS_COMMIT", "SYNONYM", "SYSTEM",
- "TAKE", "TARGET_RECOVERY_TIME", "TB",
- "TEXTIMAGE_ON", "THROW", "TIES", "TIME",
- "TIMEOUT", "TIMER", "TINYINT", "TORN_PAGE_DETECTION",
- "TRANSFORM_NOISE_WORDS", "TRIPLE_DES",
- "TRIPLE_DES_3KEY", "TRUSTWORTHY", "TRY",
- "TSQL", "TWO_DIGIT_YEAR_CUTOFF", "TYPE",
- "TYPE_WARNING", "UNBOUNDED", "UNCOMMITTED",
- "UNKNOWN", "UNLIMITED", "UOW", "USING",
- "VALID_XML", "VALIDATION", "VALUE", "VAR",
- "VARP", "VIEW_METADATA", "VIEWS", "WAIT",
- "WELL_FORMED_XML", "WITHOUT_ARRAY_WRAPPER",
- "WORK", "WORKLOAD", "XML", "XMLDATA",
- "XMLNAMESPACES", "XMLSCHEMA", "XSINIL",
- "DOLLAR_ACTION", "SPACE", "COMMENT", "LINE_COMMENT",
- "DOUBLE_QUOTE_ID", "SINGLE_QUOTE", "SQUARE_BRACKET_ID",
- "LOCAL_ID", "DECIMAL", "ID", "QUOTED_URL",
- "QUOTED_HOST_AND_PORT", "STRING", "BINARY",
- "FLOAT", "REAL", "EQUAL", "GREATER", "LESS",
- "EXCLAMATION", "PLUS_ASSIGN", "MINUS_ASSIGN",
- "MULT_ASSIGN", "DIV_ASSIGN", "MOD_ASSIGN",
- "AND_ASSIGN", "XOR_ASSIGN", "OR_ASSIGN",
- "DOUBLE_BAR", "DOT", "UNDERLINE", "AT",
- "SHARP", "DOLLAR", "LR_BRACKET", "RR_BRACKET",
- "COMMA", "SEMI", "COLON", "STAR", "DIVIDE",
- "MODULE", "PLUS", "MINUS", "BIT_NOT",
- "BIT_OR", "BIT_AND", "BIT_XOR", "LETTER",
- "IPV6_OCTECT", "IPV4_OCTECT", "DEC_DOT_DEC",
- "HEX_DIGIT", "DEC_DIGIT", "FullWidthLetter" ];
-
-TSqlLexer.prototype.grammarFileName = "TSqlLexer.g4";
-
-
-exports.TSqlLexer = TSqlLexer;
-
diff --git a/src/grammar/tsql/parser/TSqlLexer.tokens b/src/grammar/tsql/parser/TSqlLexer.tokens
deleted file mode 100644
index 5d9475f..0000000
--- a/src/grammar/tsql/parser/TSqlLexer.tokens
+++ /dev/null
@@ -1,1657 +0,0 @@
-ABSENT=1
-ADD=2
-AES=3
-ALL=4
-ALLOW_CONNECTIONS=5
-ALLOW_MULTIPLE_EVENT_LOSS=6
-ALLOW_SINGLE_EVENT_LOSS=7
-ALTER=8
-AND=9
-ANONYMOUS=10
-ANY=11
-APPEND=12
-APPLICATION=13
-AS=14
-ASC=15
-ASYMMETRIC=16
-ASYNCHRONOUS_COMMIT=17
-AUTHORIZATION=18
-AUTHENTICATION=19
-AUTOMATED_BACKUP_PREFERENCE=20
-AUTOMATIC=21
-AVAILABILITY_MODE=22
-BACKSLASH=23
-BACKUP=24
-BEFORE=25
-BEGIN=26
-BETWEEN=27
-BLOCK=28
-BLOCKSIZE=29
-BLOCKING_HIERARCHY=30
-BREAK=31
-BROWSE=32
-BUFFER=33
-BUFFERCOUNT=34
-BULK=35
-BY=36
-CACHE=37
-CALLED=38
-CASCADE=39
-CASE=40
-CERTIFICATE=41
-CHANGETABLE=42
-CHANGES=43
-CHECK=44
-CHECKPOINT=45
-CHECK_POLICY=46
-CHECK_EXPIRATION=47
-CLASSIFIER_FUNCTION=48
-CLOSE=49
-CLUSTER=50
-CLUSTERED=51
-COALESCE=52
-COLLATE=53
-COLUMN=54
-COMPRESSION=55
-COMMIT=56
-COMPUTE=57
-CONFIGURATION=58
-CONSTRAINT=59
-CONTAINMENT=60
-CONTAINS=61
-CONTAINSTABLE=62
-CONTEXT=63
-CONTINUE=64
-CONTINUE_AFTER_ERROR=65
-CONTRACT=66
-CONTRACT_NAME=67
-CONVERSATION=68
-CONVERT=69
-COPY_ONLY=70
-CREATE=71
-CROSS=72
-CURRENT=73
-CURRENT_DATE=74
-CURRENT_TIME=75
-CURRENT_TIMESTAMP=76
-CURRENT_USER=77
-CURSOR=78
-CYCLE=79
-DATA_COMPRESSION=80
-DATA_SOURCE=81
-DATABASE=82
-DATABASE_MIRRORING=83
-DBCC=84
-DEALLOCATE=85
-DECLARE=86
-DEFAULT=87
-DEFAULT_DATABASE=88
-DEFAULT_SCHEMA=89
-DELETE=90
-DENY=91
-DESC=92
-DIAGNOSTICS=93
-DIFFERENTIAL=94
-DISK=95
-DISTINCT=96
-DISTRIBUTED=97
-DOUBLE=98
-DOUBLE_BACK_SLASH=99
-DOUBLE_FORWARD_SLASH=100
-DROP=101
-DTC_SUPPORT=102
-DUMP=103
-ELSE=104
-ENABLED=105
-END=106
-ENDPOINT=107
-ERRLVL=108
-ESCAPE=109
-ERROR=110
-EVENT=111
-EVENTDATA=112
-EVENT_RETENTION_MODE=113
-EXCEPT=114
-EXECUTABLE_FILE=115
-EXECUTE=116
-EXISTS=117
-EXPIREDATE=118
-EXIT=119
-EXTENSION=120
-EXTERNAL=121
-EXTERNAL_ACCESS=122
-FAILOVER=123
-FAILURECONDITIONLEVEL=124
-FAN_IN=125
-FETCH=126
-FILE=127
-FILENAME=128
-FILLFACTOR=129
-FILE_SNAPSHOT=130
-FOR=131
-FORCESEEK=132
-FORCE_SERVICE_ALLOW_DATA_LOSS=133
-FOREIGN=134
-FREETEXT=135
-FREETEXTTABLE=136
-FROM=137
-FULL=138
-FUNCTION=139
-GET=140
-GOTO=141
-GOVERNOR=142
-GRANT=143
-GROUP=144
-HAVING=145
-HASHED=146
-HEALTHCHECKTIMEOUT=147
-IDENTITY=148
-IDENTITYCOL=149
-IDENTITY_INSERT=150
-IF=151
-IIF=152
-IN=153
-INCLUDE=154
-INCREMENT=155
-INDEX=156
-INFINITE=157
-INIT=158
-INNER=159
-INSERT=160
-INSTEAD=161
-INTERSECT=162
-INTO=163
-IPV4_ADDR=164
-IPV6_ADDR=165
-IS=166
-ISNULL=167
-JOIN=168
-KERBEROS=169
-KEY=170
-KEY_PATH=171
-KEY_STORE_PROVIDER_NAME=172
-KILL=173
-LANGUAGE=174
-LEFT=175
-LIBRARY=176
-LIFETIME=177
-LIKE=178
-LINENO=179
-LINUX=180
-LISTENER_IP=181
-LISTENER_PORT=182
-LOAD=183
-LOCAL_SERVICE_NAME=184
-LOG=185
-MATCHED=186
-MASTER=187
-MAX_MEMORY=188
-MAXTRANSFER=189
-MAXVALUE=190
-MAX_DISPATCH_LATENCY=191
-MAX_EVENT_SIZE=192
-MAX_SIZE=193
-MAX_OUTSTANDING_IO_PER_VOLUME=194
-MEDIADESCRIPTION=195
-MEDIANAME=196
-MEMBER=197
-MEMORY_PARTITION_MODE=198
-MERGE=199
-MESSAGE_FORWARDING=200
-MESSAGE_FORWARD_SIZE=201
-MINVALUE=202
-MIRROR=203
-MUST_CHANGE=204
-NATIONAL=205
-NEGOTIATE=206
-NOCHECK=207
-NOFORMAT=208
-NOINIT=209
-NONCLUSTERED=210
-NONE=211
-NOREWIND=212
-NOSKIP=213
-NOUNLOAD=214
-NO_CHECKSUM=215
-NO_COMPRESSION=216
-NO_EVENT_LOSS=217
-NOT=218
-NOTIFICATION=219
-NTLM=220
-NULL=221
-NULLIF=222
-OF=223
-OFF=224
-OFFSETS=225
-OLD_PASSWORD=226
-ON=227
-ON_FAILURE=228
-OPEN=229
-OPENDATASOURCE=230
-OPENQUERY=231
-OPENROWSET=232
-OPENXML=233
-OPTION=234
-OR=235
-ORDER=236
-OUTER=237
-OVER=238
-PAGE=239
-PARAM_NODE=240
-PARTIAL=241
-PASSWORD=242
-PERCENT=243
-PERMISSION_SET=244
-PER_CPU=245
-PER_DB=246
-PER_NODE=247
-PIVOT=248
-PLAN=249
-PLATFORM=250
-POLICY=251
-PRECISION=252
-PREDICATE=253
-PRIMARY=254
-PRINT=255
-PROC=256
-PROCEDURE=257
-PROCESS=258
-PUBLIC=259
-PYTHON=260
-R=261
-RAISERROR=262
-RAW=263
-READ=264
-READTEXT=265
-READ_WRITE_FILEGROUPS=266
-RECONFIGURE=267
-REFERENCES=268
-REGENERATE=269
-RELATED_CONVERSATION=270
-RELATED_CONVERSATION_GROUP=271
-REPLICATION=272
-REQUIRED=273
-RESET=274
-RESTART=275
-RESTORE=276
-RESTRICT=277
-RESUME=278
-RETAINDAYS=279
-RETURN=280
-RETURNS=281
-REVERT=282
-REVOKE=283
-REWIND=284
-RIGHT=285
-ROLLBACK=286
-ROLE=287
-ROWCOUNT=288
-ROWGUIDCOL=289
-RSA_512=290
-RSA_1024=291
-RSA_2048=292
-RSA_3072=293
-RSA_4096=294
-SAFETY=295
-RULE=296
-SAFE=297
-SAVE=298
-SCHEDULER=299
-SCHEMA=300
-SCHEME=301
-SECURITYAUDIT=302
-SELECT=303
-SEMANTICKEYPHRASETABLE=304
-SEMANTICSIMILARITYDETAILSTABLE=305
-SEMANTICSIMILARITYTABLE=306
-SERVER=307
-SERVICE=308
-SERVICE_BROKER=309
-SERVICE_NAME=310
-SESSION=311
-SESSION_USER=312
-SET=313
-SETUSER=314
-SHUTDOWN=315
-SID=316
-SKIP_KEYWORD=317
-SOFTNUMA=318
-SOME=319
-SOURCE=320
-SPECIFICATION=321
-SPLIT=322
-SQLDUMPERFLAGS=323
-SQLDUMPERPATH=324
-SQLDUMPERTIMEOUT=325
-STATISTICS=326
-STATE=327
-STATS=328
-START=329
-STARTED=330
-STARTUP_STATE=331
-STOP=332
-STOPPED=333
-STOP_ON_ERROR=334
-SUPPORTED=335
-SYSTEM_USER=336
-TABLE=337
-TABLESAMPLE=338
-TAPE=339
-TARGET=340
-TCP=341
-TEXTSIZE=342
-THEN=343
-TO=344
-TOP=345
-TRACK_CAUSALITY=346
-TRAN=347
-TRANSACTION=348
-TRANSFER=349
-TRIGGER=350
-TRUNCATE=351
-TSEQUAL=352
-UNCHECKED=353
-UNION=354
-UNIQUE=355
-UNLOCK=356
-UNPIVOT=357
-UNSAFE=358
-UPDATE=359
-UPDATETEXT=360
-URL=361
-USE=362
-USED=363
-USER=364
-VALUES=365
-VARYING=366
-VERBOSELOGGING=367
-VIEW=368
-VISIBILITY=369
-WAITFOR=370
-WHEN=371
-WHERE=372
-WHILE=373
-WINDOWS=374
-WITH=375
-WITHIN=376
-WITHOUT=377
-WITNESS=378
-WRITETEXT=379
-ABSOLUTE=380
-ACCENT_SENSITIVITY=381
-ACTION=382
-ACTIVATION=383
-ACTIVE=384
-ADDRESS=385
-AES_128=386
-AES_192=387
-AES_256=388
-AFFINITY=389
-AFTER=390
-AGGREGATE=391
-ALGORITHM=392
-ALLOW_ENCRYPTED_VALUE_MODIFICATIONS=393
-ALLOW_SNAPSHOT_ISOLATION=394
-ALLOWED=395
-ANSI_NULL_DEFAULT=396
-ANSI_NULLS=397
-ANSI_PADDING=398
-ANSI_WARNINGS=399
-APPLICATION_LOG=400
-APPLY=401
-ARITHABORT=402
-ASSEMBLY=403
-AUDIT=404
-AUDIT_GUID=405
-AUTO=406
-AUTO_CLEANUP=407
-AUTO_CLOSE=408
-AUTO_CREATE_STATISTICS=409
-AUTO_SHRINK=410
-AUTO_UPDATE_STATISTICS=411
-AUTO_UPDATE_STATISTICS_ASYNC=412
-AVAILABILITY=413
-AVG=414
-BACKUP_PRIORITY=415
-BEGIN_DIALOG=416
-BIGINT=417
-BINARY_BASE64=418
-BINARY_CHECKSUM=419
-BINDING=420
-BLOB_STORAGE=421
-BROKER=422
-BROKER_INSTANCE=423
-BULK_LOGGED=424
-CALLER=425
-CAP_CPU_PERCENT=426
-CAST=427
-CATALOG=428
-CATCH=429
-CHANGE_RETENTION=430
-CHANGE_TRACKING=431
-CHECKSUM=432
-CHECKSUM_AGG=433
-CLEANUP=434
-COLLECTION=435
-COLUMN_MASTER_KEY=436
-COMMITTED=437
-COMPATIBILITY_LEVEL=438
-CONCAT=439
-CONCAT_NULL_YIELDS_NULL=440
-CONTENT=441
-CONTROL=442
-COOKIE=443
-COUNT=444
-COUNT_BIG=445
-COUNTER=446
-CPU=447
-CREATE_NEW=448
-CREATION_DISPOSITION=449
-CREDENTIAL=450
-CRYPTOGRAPHIC=451
-CURSOR_CLOSE_ON_COMMIT=452
-CURSOR_DEFAULT=453
-DATA=454
-DATE_CORRELATION_OPTIMIZATION=455
-DATEADD=456
-DATEDIFF=457
-DATENAME=458
-DATEPART=459
-DAYS=460
-DB_CHAINING=461
-DB_FAILOVER=462
-DECRYPTION=463
-DEFAULT_DOUBLE_QUOTE=464
-DEFAULT_FULLTEXT_LANGUAGE=465
-DEFAULT_LANGUAGE=466
-DELAY=467
-DELAYED_DURABILITY=468
-DELETED=469
-DENSE_RANK=470
-DEPENDENTS=471
-DES=472
-DESCRIPTION=473
-DESX=474
-DHCP=475
-DIALOG=476
-DIRECTORY_NAME=477
-DISABLE=478
-DISABLE_BROKER=479
-DISABLED=480
-DISK_DRIVE=481
-DOCUMENT=482
-DYNAMIC=483
-ELEMENTS=484
-EMERGENCY=485
-EMPTY=486
-ENABLE=487
-ENABLE_BROKER=488
-ENCRYPTED_VALUE=489
-ENCRYPTION=490
-ENDPOINT_URL=491
-ERROR_BROKER_CONVERSATIONS=492
-EXCLUSIVE=493
-EXECUTABLE=494
-EXIST=495
-EXPAND=496
-EXPIRY_DATE=497
-EXPLICIT=498
-FAIL_OPERATION=499
-FAILOVER_MODE=500
-FAILURE=501
-FAILURE_CONDITION_LEVEL=502
-FAST=503
-FAST_FORWARD=504
-FILEGROUP=505
-FILEGROWTH=506
-FILEPATH=507
-FILESTREAM=508
-FILTER=509
-FIRST=510
-FIRST_VALUE=511
-FOLLOWING=512
-FORCE=513
-FORCE_FAILOVER_ALLOW_DATA_LOSS=514
-FORCED=515
-FORMAT=516
-FORWARD_ONLY=517
-FULLSCAN=518
-FULLTEXT=519
-GB=520
-GETDATE=521
-GETUTCDATE=522
-GLOBAL=523
-GO=524
-GROUP_MAX_REQUESTS=525
-GROUPING=526
-GROUPING_ID=527
-HADR=528
-HASH=529
-HEALTH_CHECK_TIMEOUT=530
-HIGH=531
-HONOR_BROKER_PRIORITY=532
-HOURS=533
-IDENTITY_VALUE=534
-IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX=535
-IMMEDIATE=536
-IMPERSONATE=537
-IMPORTANCE=538
-INCLUDE_NULL_VALUES=539
-INCREMENTAL=540
-INITIATOR=541
-INPUT=542
-INSENSITIVE=543
-INSERTED=544
-INT=545
-IP=546
-ISOLATION=547
-JOB=548
-JSON=549
-KB=550
-KEEP=551
-KEEPFIXED=552
-KEY_SOURCE=553
-KEYS=554
-KEYSET=555
-LAG=556
-LAST=557
-LAST_VALUE=558
-LEAD=559
-LEVEL=560
-LIST=561
-LISTENER=562
-LISTENER_URL=563
-LOB_COMPACTION=564
-LOCAL=565
-LOCATION=566
-LOCK=567
-LOCK_ESCALATION=568
-LOGIN=569
-LOOP=570
-LOW=571
-MANUAL=572
-MARK=573
-MATERIALIZED=574
-MAX=575
-MAX_CPU_PERCENT=576
-MAX_DOP=577
-MAX_FILES=578
-MAX_IOPS_PER_VOLUME=579
-MAX_MEMORY_PERCENT=580
-MAX_PROCESSES=581
-MAX_QUEUE_READERS=582
-MAX_ROLLOVER_FILES=583
-MAXDOP=584
-MAXRECURSION=585
-MAXSIZE=586
-MB=587
-MEDIUM=588
-MEMORY_OPTIMIZED_DATA=589
-MESSAGE=590
-MIN=591
-MIN_ACTIVE_ROWVERSION=592
-MIN_CPU_PERCENT=593
-MIN_IOPS_PER_VOLUME=594
-MIN_MEMORY_PERCENT=595
-MINUTES=596
-MIRROR_ADDRESS=597
-MIXED_PAGE_ALLOCATION=598
-MODE=599
-MODIFY=600
-MOVE=601
-MULTI_USER=602
-NAME=603
-NESTED_TRIGGERS=604
-NEW_ACCOUNT=605
-NEW_BROKER=606
-NEW_PASSWORD=607
-NEXT=608
-NO=609
-NO_TRUNCATE=610
-NO_WAIT=611
-NOCOUNT=612
-NODES=613
-NOEXPAND=614
-NON_TRANSACTED_ACCESS=615
-NORECOMPUTE=616
-NORECOVERY=617
-NOWAIT=618
-NTILE=619
-NUMANODE=620
-NUMBER=621
-NUMERIC_ROUNDABORT=622
-OBJECT=623
-OFFLINE=624
-OFFSET=625
-OLD_ACCOUNT=626
-ONLINE=627
-ONLY=628
-OPEN_EXISTING=629
-OPTIMISTIC=630
-OPTIMIZE=631
-OUT=632
-OUTPUT=633
-OVERRIDE=634
-OWNER=635
-PAGE_VERIFY=636
-PARAMETERIZATION=637
-PARTITION=638
-PARTITIONS=639
-PARTNER=640
-PATH=641
-POISON_MESSAGE_HANDLING=642
-POOL=643
-PORT=644
-PRECEDING=645
-PRIMARY_ROLE=646
-PRIOR=647
-PRIORITY=648
-PRIORITY_LEVEL=649
-PRIVATE=650
-PRIVATE_KEY=651
-PRIVILEGES=652
-PROCEDURE_NAME=653
-PROPERTY=654
-PROVIDER=655
-PROVIDER_KEY_NAME=656
-QUERY=657
-QUEUE=658
-QUEUE_DELAY=659
-QUOTED_IDENTIFIER=660
-RANGE=661
-RANK=662
-RC2=663
-RC4=664
-RC4_128=665
-READ_COMMITTED_SNAPSHOT=666
-READ_ONLY=667
-READ_ONLY_ROUTING_LIST=668
-READ_WRITE=669
-READONLY=670
-REBUILD=671
-RECEIVE=672
-RECOMPILE=673
-RECOVERY=674
-RECURSIVE_TRIGGERS=675
-RELATIVE=676
-REMOTE=677
-REMOTE_SERVICE_NAME=678
-REMOVE=679
-REORGANIZE=680
-REPEATABLE=681
-REPLICA=682
-REQUEST_MAX_CPU_TIME_SEC=683
-REQUEST_MAX_MEMORY_GRANT_PERCENT=684
-REQUEST_MEMORY_GRANT_TIMEOUT_SEC=685
-REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT=686
-RESERVE_DISK_SPACE=687
-RESOURCE=688
-RESOURCE_MANAGER_LOCATION=689
-RESTRICTED_USER=690
-RETENTION=691
-ROBUST=692
-ROOT=693
-ROUTE=694
-ROW=695
-ROW_NUMBER=696
-ROWGUID=697
-ROWS=698
-SAMPLE=699
-SCHEMABINDING=700
-SCOPED=701
-SCROLL=702
-SCROLL_LOCKS=703
-SEARCH=704
-SECONDARY=705
-SECONDARY_ONLY=706
-SECONDARY_ROLE=707
-SECONDS=708
-SECRET=709
-SECURITY=710
-SECURITY_LOG=711
-SEEDING_MODE=712
-SELF=713
-SEMI_SENSITIVE=714
-SEND=715
-SENT=716
-SEQUENCE=717
-SERIALIZABLE=718
-SESSION_TIMEOUT=719
-SETERROR=720
-SHARE=721
-SHOWPLAN=722
-SIGNATURE=723
-SIMPLE=724
-SINGLE_USER=725
-SIZE=726
-SMALLINT=727
-SNAPSHOT=728
-SPATIAL_WINDOW_MAX_CELLS=729
-STANDBY=730
-START_DATE=731
-STATIC=732
-STATS_STREAM=733
-STATUS=734
-STATUSONLY=735
-STDEV=736
-STDEVP=737
-STOPLIST=738
-STRING_AGG=739
-STUFF=740
-SUBJECT=741
-SUBSCRIPTION=742
-SUM=743
-SUSPEND=744
-SYMMETRIC=745
-SYNCHRONOUS_COMMIT=746
-SYNONYM=747
-SYSTEM=748
-TAKE=749
-TARGET_RECOVERY_TIME=750
-TB=751
-TEXTIMAGE_ON=752
-THROW=753
-TIES=754
-TIME=755
-TIMEOUT=756
-TIMER=757
-TINYINT=758
-TORN_PAGE_DETECTION=759
-TRANSFORM_NOISE_WORDS=760
-TRIPLE_DES=761
-TRIPLE_DES_3KEY=762
-TRUSTWORTHY=763
-TRY=764
-TSQL=765
-TWO_DIGIT_YEAR_CUTOFF=766
-TYPE=767
-TYPE_WARNING=768
-UNBOUNDED=769
-UNCOMMITTED=770
-UNKNOWN=771
-UNLIMITED=772
-UOW=773
-USING=774
-VALID_XML=775
-VALIDATION=776
-VALUE=777
-VAR=778
-VARP=779
-VIEW_METADATA=780
-VIEWS=781
-WAIT=782
-WELL_FORMED_XML=783
-WITHOUT_ARRAY_WRAPPER=784
-WORK=785
-WORKLOAD=786
-XML=787
-XMLDATA=788
-XMLNAMESPACES=789
-XMLSCHEMA=790
-XSINIL=791
-DOLLAR_ACTION=792
-SPACE=793
-COMMENT=794
-LINE_COMMENT=795
-DOUBLE_QUOTE_ID=796
-SINGLE_QUOTE=797
-SQUARE_BRACKET_ID=798
-LOCAL_ID=799
-DECIMAL=800
-ID=801
-QUOTED_URL=802
-QUOTED_HOST_AND_PORT=803
-STRING=804
-BINARY=805
-FLOAT=806
-REAL=807
-EQUAL=808
-GREATER=809
-LESS=810
-EXCLAMATION=811
-PLUS_ASSIGN=812
-MINUS_ASSIGN=813
-MULT_ASSIGN=814
-DIV_ASSIGN=815
-MOD_ASSIGN=816
-AND_ASSIGN=817
-XOR_ASSIGN=818
-OR_ASSIGN=819
-DOUBLE_BAR=820
-DOT=821
-UNDERLINE=822
-AT=823
-SHARP=824
-DOLLAR=825
-LR_BRACKET=826
-RR_BRACKET=827
-COMMA=828
-SEMI=829
-COLON=830
-STAR=831
-DIVIDE=832
-MODULE=833
-PLUS=834
-MINUS=835
-BIT_NOT=836
-BIT_OR=837
-BIT_AND=838
-BIT_XOR=839
-IPV4_OCTECT=840
-'ABSENT'=1
-'ADD'=2
-'AES'=3
-'ALL'=4
-'ALLOW_CONNECTIONS'=5
-'ALLOW_MULTIPLE_EVENT_LOSS'=6
-'ALLOW_SINGLE_EVENT_LOSS'=7
-'ALTER'=8
-'AND'=9
-'ANONYMOUS'=10
-'ANY'=11
-'APPEND'=12
-'APPLICATION'=13
-'AS'=14
-'ASC'=15
-'ASYMMETRIC'=16
-'ASYNCHRONOUS_COMMIT'=17
-'AUTHORIZATION'=18
-'AUTHENTICATION'=19
-'AUTOMATED_BACKUP_PREFERENCE'=20
-'AUTOMATIC'=21
-'AVAILABILITY_MODE'=22
-'\\'=23
-'BACKUP'=24
-'BEFORE'=25
-'BEGIN'=26
-'BETWEEN'=27
-'BLOCK'=28
-'BLOCKSIZE'=29
-'BLOCKING_HIERARCHY'=30
-'BREAK'=31
-'BROWSE'=32
-'BUFFER'=33
-'BUFFERCOUNT'=34
-'BULK'=35
-'BY'=36
-'CACHE'=37
-'CALLED'=38
-'CASCADE'=39
-'CASE'=40
-'CERTIFICATE'=41
-'CHANGETABLE'=42
-'CHANGES'=43
-'CHECK'=44
-'CHECKPOINT'=45
-'CHECK_POLICY'=46
-'CHECK_EXPIRATION'=47
-'CLASSIFIER_FUNCTION'=48
-'CLOSE'=49
-'CLUSTER'=50
-'CLUSTERED'=51
-'COALESCE'=52
-'COLLATE'=53
-'COLUMN'=54
-'COMPRESSION'=55
-'COMMIT'=56
-'COMPUTE'=57
-'CONFIGURATION'=58
-'CONSTRAINT'=59
-'CONTAINMENT'=60
-'CONTAINS'=61
-'CONTAINSTABLE'=62
-'CONTEXT'=63
-'CONTINUE'=64
-'CONTINUE_AFTER_ERROR'=65
-'CONTRACT'=66
-'CONTRACT_NAME'=67
-'CONVERSATION'=68
-'COPY_ONLY'=70
-'CREATE'=71
-'CROSS'=72
-'CURRENT'=73
-'CURRENT_DATE'=74
-'CURRENT_TIME'=75
-'CURRENT_TIMESTAMP'=76
-'CURRENT_USER'=77
-'CURSOR'=78
-'CYCLE'=79
-'DATA_COMPRESSION'=80
-'DATA_SOURCE'=81
-'DATABASE'=82
-'DATABASE_MIRRORING'=83
-'DBCC'=84
-'DEALLOCATE'=85
-'DECLARE'=86
-'DEFAULT'=87
-'DEFAULT_DATABASE'=88
-'DEFAULT_SCHEMA'=89
-'DELETE'=90
-'DENY'=91
-'DESC'=92
-'DIAGNOSTICS'=93
-'DIFFERENTIAL'=94
-'DISK'=95
-'DISTINCT'=96
-'DISTRIBUTED'=97
-'DOUBLE'=98
-'\\\\'=99
-'//'=100
-'DROP'=101
-'DTC_SUPPORT'=102
-'DUMP'=103
-'ELSE'=104
-'ENABLED'=105
-'END'=106
-'ENDPOINT'=107
-'ERRLVL'=108
-'ESCAPE'=109
-'ERROR'=110
-'EVENT'=111
-'EVENT_RETENTION_MODE'=113
-'EXCEPT'=114
-'EXECUTABLE_FILE'=115
-'EXISTS'=117
-'EXPIREDATE'=118
-'EXIT'=119
-'EXTENSION'=120
-'EXTERNAL'=121
-'EXTERNAL_ACCESS'=122
-'FAILOVER'=123
-'FAILURECONDITIONLEVEL'=124
-'FAN_IN'=125
-'FETCH'=126
-'FILE'=127
-'FILENAME'=128
-'FILLFACTOR'=129
-'FILE_SNAPSHOT'=130
-'FOR'=131
-'FORCESEEK'=132
-'FORCE_SERVICE_ALLOW_DATA_LOSS'=133
-'FOREIGN'=134
-'FREETEXT'=135
-'FREETEXTTABLE'=136
-'FROM'=137
-'FULL'=138
-'FUNCTION'=139
-'GET'=140
-'GOTO'=141
-'GOVERNOR'=142
-'GRANT'=143
-'GROUP'=144
-'HAVING'=145
-'HASHED'=146
-'HEALTHCHECKTIMEOUT'=147
-'IDENTITY'=148
-'IDENTITYCOL'=149
-'IDENTITY_INSERT'=150
-'IF'=151
-'IIF'=152
-'IN'=153
-'INCLUDE'=154
-'INCREMENT'=155
-'INDEX'=156
-'INFINITE'=157
-'INIT'=158
-'INNER'=159
-'INSERT'=160
-'INSTEAD'=161
-'INTERSECT'=162
-'INTO'=163
-'IS'=166
-'ISNULL'=167
-'JOIN'=168
-'KERBEROS'=169
-'KEY'=170
-'KEY_PATH'=171
-'KEY_STORE_PROVIDER_NAME'=172
-'KILL'=173
-'LANGUAGE'=174
-'LEFT'=175
-'LIBRARY'=176
-'LIFETIME'=177
-'LIKE'=178
-'LINENO'=179
-'LINUX'=180
-'LISTENER_IP'=181
-'LISTENER_PORT'=182
-'LOAD'=183
-'LOCAL_SERVICE_NAME'=184
-'LOG'=185
-'MATCHED'=186
-'MASTER'=187
-'MAX_MEMORY'=188
-'MAXTRANSFER'=189
-'MAXVALUE'=190
-'MAX_DISPATCH_LATENCY'=191
-'MAX_EVENT_SIZE'=192
-'MAX_SIZE'=193
-'MAX_OUTSTANDING_IO_PER_VOLUME'=194
-'MEDIADESCRIPTION'=195
-'MEDIANAME'=196
-'MEMBER'=197
-'MEMORY_PARTITION_MODE'=198
-'MERGE'=199
-'MESSAGE_FORWARDING'=200
-'MESSAGE_FORWARD_SIZE'=201
-'MINVALUE'=202
-'MIRROR'=203
-'MUST_CHANGE'=204
-'NATIONAL'=205
-'NEGOTIATE'=206
-'NOCHECK'=207
-'NOFORMAT'=208
-'NOINIT'=209
-'NONCLUSTERED'=210
-'NONE'=211
-'NOREWIND'=212
-'NOSKIP'=213
-'NOUNLOAD'=214
-'NO_CHECKSUM'=215
-'NO_COMPRESSION'=216
-'NO_EVENT_LOSS'=217
-'NOT'=218
-'NOTIFICATION'=219
-'NTLM'=220
-'NULL'=221
-'NULLIF'=222
-'OF'=223
-'OFF'=224
-'OFFSETS'=225
-'OLD_PASSWORD'=226
-'ON'=227
-'ON_FAILURE'=228
-'OPEN'=229
-'OPENDATASOURCE'=230
-'OPENQUERY'=231
-'OPENROWSET'=232
-'OPENXML'=233
-'OPTION'=234
-'OR'=235
-'ORDER'=236
-'OUTER'=237
-'OVER'=238
-'PAGE'=239
-'PARAM_NODE'=240
-'PARTIAL'=241
-'PASSWORD'=242
-'PERCENT'=243
-'PERMISSION_SET'=244
-'PER_CPU'=245
-'PER_DB'=246
-'PER_NODE'=247
-'PIVOT'=248
-'PLAN'=249
-'PLATFORM'=250
-'POLICY'=251
-'PRECISION'=252
-'PREDICATE'=253
-'PRIMARY'=254
-'PRINT'=255
-'PROC'=256
-'PROCEDURE'=257
-'PROCESS'=258
-'PUBLIC'=259
-'PYTHON'=260
-'R'=261
-'RAISERROR'=262
-'RAW'=263
-'READ'=264
-'READTEXT'=265
-'READ_WRITE_FILEGROUPS'=266
-'RECONFIGURE'=267
-'REFERENCES'=268
-'REGENERATE'=269
-'RELATED_CONVERSATION'=270
-'RELATED_CONVERSATION_GROUP'=271
-'REPLICATION'=272
-'REQUIRED'=273
-'RESET'=274
-'RESTART'=275
-'RESTORE'=276
-'RESTRICT'=277
-'RESUME'=278
-'RETAINDAYS'=279
-'RETURN'=280
-'RETURNS'=281
-'REVERT'=282
-'REVOKE'=283
-'REWIND'=284
-'RIGHT'=285
-'ROLLBACK'=286
-'ROLE'=287
-'ROWCOUNT'=288
-'ROWGUIDCOL'=289
-'RSA_512'=290
-'RSA_1024'=291
-'RSA_2048'=292
-'RSA_3072'=293
-'RSA_4096'=294
-'SAFETY'=295
-'RULE'=296
-'SAFE'=297
-'SAVE'=298
-'SCHEDULER'=299
-'SCHEMA'=300
-'SCHEME'=301
-'SECURITYAUDIT'=302
-'SELECT'=303
-'SEMANTICKEYPHRASETABLE'=304
-'SEMANTICSIMILARITYDETAILSTABLE'=305
-'SEMANTICSIMILARITYTABLE'=306
-'SERVER'=307
-'SERVICE'=308
-'SERVICE_BROKER'=309
-'SERVICE_NAME'=310
-'SESSION'=311
-'SESSION_USER'=312
-'SET'=313
-'SETUSER'=314
-'SHUTDOWN'=315
-'SID'=316
-'SKIP'=317
-'SOFTNUMA'=318
-'SOME'=319
-'SOURCE'=320
-'SPECIFICATION'=321
-'SPLIT'=322
-'SQLDUMPERFLAGS'=323
-'SQLDUMPERPATH'=324
-'SQLDUMPERTIMEOUTS'=325
-'STATISTICS'=326
-'STATE'=327
-'STATS'=328
-'START'=329
-'STARTED'=330
-'STARTUP_STATE'=331
-'STOP'=332
-'STOPPED'=333
-'STOP_ON_ERROR'=334
-'SUPPORTED'=335
-'SYSTEM_USER'=336
-'TABLE'=337
-'TABLESAMPLE'=338
-'TAPE'=339
-'TARGET'=340
-'TCP'=341
-'TEXTSIZE'=342
-'THEN'=343
-'TO'=344
-'TOP'=345
-'TRACK_CAUSALITY'=346
-'TRAN'=347
-'TRANSACTION'=348
-'TRANSFER'=349
-'TRIGGER'=350
-'TRUNCATE'=351
-'TSEQUAL'=352
-'UNCHECKED'=353
-'UNION'=354
-'UNIQUE'=355
-'UNLOCK'=356
-'UNPIVOT'=357
-'UNSAFE'=358
-'UPDATE'=359
-'UPDATETEXT'=360
-'URL'=361
-'USE'=362
-'USED'=363
-'USER'=364
-'VALUES'=365
-'VARYING'=366
-'VERBOSELOGGING'=367
-'VIEW'=368
-'VISIBILITY'=369
-'WAITFOR'=370
-'WHEN'=371
-'WHERE'=372
-'WHILE'=373
-'WINDOWS'=374
-'WITH'=375
-'WITHIN'=376
-'WITHOUT'=377
-'WITNESS'=378
-'WRITETEXT'=379
-'ABSOLUTE'=380
-'ACCENT_SENSITIVITY'=381
-'ACTION'=382
-'ACTIVATION'=383
-'ACTIVE'=384
-'ADDRESS'=385
-'AES_128'=386
-'AES_192'=387
-'AES_256'=388
-'AFFINITY'=389
-'AFTER'=390
-'AGGREGATE'=391
-'ALGORITHM'=392
-'ALLOW_ENCRYPTED_VALUE_MODIFICATIONS'=393
-'ALLOW_SNAPSHOT_ISOLATION'=394
-'ALLOWED'=395
-'ANSI_NULL_DEFAULT'=396
-'ANSI_NULLS'=397
-'ANSI_PADDING'=398
-'ANSI_WARNINGS'=399
-'APPLICATION_LOG'=400
-'APPLY'=401
-'ARITHABORT'=402
-'ASSEMBLY'=403
-'AUDIT'=404
-'AUDIT_GUID'=405
-'AUTO'=406
-'AUTO_CLEANUP'=407
-'AUTO_CLOSE'=408
-'AUTO_CREATE_STATISTICS'=409
-'AUTO_SHRINK'=410
-'AUTO_UPDATE_STATISTICS'=411
-'AUTO_UPDATE_STATISTICS_ASYNC'=412
-'AVAILABILITY'=413
-'AVG'=414
-'BACKUP_PRIORITY'=415
-'BEGIN_DIALOG'=416
-'BIGINT'=417
-'BINARY BASE64'=418
-'BINARY_CHECKSUM'=419
-'BINDING'=420
-'BLOB_STORAGE'=421
-'BROKER'=422
-'BROKER_INSTANCE'=423
-'BULK_LOGGED'=424
-'CALLER'=425
-'CAP_CPU_PERCENT'=426
-'CATALOG'=428
-'CATCH'=429
-'CHANGE_RETENTION'=430
-'CHANGE_TRACKING'=431
-'CHECKSUM'=432
-'CHECKSUM_AGG'=433
-'CLEANUP'=434
-'COLLECTION'=435
-'COLUMN_MASTER_KEY'=436
-'COMMITTED'=437
-'COMPATIBILITY_LEVEL'=438
-'CONCAT'=439
-'CONCAT_NULL_YIELDS_NULL'=440
-'CONTENT'=441
-'CONTROL'=442
-'COOKIE'=443
-'COUNT'=444
-'COUNT_BIG'=445
-'COUNTER'=446
-'CPU'=447
-'CREATE_NEW'=448
-'CREATION_DISPOSITION'=449
-'CREDENTIAL'=450
-'CRYPTOGRAPHIC'=451
-'CURSOR_CLOSE_ON_COMMIT'=452
-'CURSOR_DEFAULT'=453
-'DATA'=454
-'DATE_CORRELATION_OPTIMIZATION'=455
-'DATEADD'=456
-'DATEDIFF'=457
-'DATENAME'=458
-'DATEPART'=459
-'DAYS'=460
-'DB_CHAINING'=461
-'DB_FAILOVER'=462
-'DECRYPTION'=463
-'DEFAULT_FULLTEXT_LANGUAGE'=465
-'DEFAULT_LANGUAGE'=466
-'DELAY'=467
-'DELAYED_DURABILITY'=468
-'DELETED'=469
-'DENSE_RANK'=470
-'DEPENDENTS'=471
-'DES'=472
-'DESCRIPTION'=473
-'DESX'=474
-'DHCP'=475
-'DIALOG'=476
-'DIRECTORY_NAME'=477
-'DISABLE'=478
-'DISABLE_BROKER'=479
-'DISABLED'=480
-'DOCUMENT'=482
-'DYNAMIC'=483
-'ELEMENTS'=484
-'EMERGENCY'=485
-'EMPTY'=486
-'ENABLE'=487
-'ENABLE_BROKER'=488
-'ENCRYPTED_VALUE'=489
-'ENCRYPTION'=490
-'ENDPOINT_URL'=491
-'ERROR_BROKER_CONVERSATIONS'=492
-'EXCLUSIVE'=493
-'EXECUTABLE'=494
-'EXIST'=495
-'EXPAND'=496
-'EXPIRY_DATE'=497
-'EXPLICIT'=498
-'FAIL_OPERATION'=499
-'FAILOVER_MODE'=500
-'FAILURE'=501
-'FAILURE_CONDITION_LEVEL'=502
-'FAST'=503
-'FAST_FORWARD'=504
-'FILEGROUP'=505
-'FILEGROWTH'=506
-'FILEPATH'=507
-'FILESTREAM'=508
-'FILTER'=509
-'FIRST'=510
-'FIRST_VALUE'=511
-'FOLLOWING'=512
-'FORCE'=513
-'FORCE_FAILOVER_ALLOW_DATA_LOSS'=514
-'FORCED'=515
-'FORMAT'=516
-'FORWARD_ONLY'=517
-'FULLSCAN'=518
-'FULLTEXT'=519
-'GB'=520
-'GETDATE'=521
-'GETUTCDATE'=522
-'GLOBAL'=523
-'GO'=524
-'GROUP_MAX_REQUESTS'=525
-'GROUPING'=526
-'GROUPING_ID'=527
-'HADR'=528
-'HASH'=529
-'HEALTH_CHECK_TIMEOUT'=530
-'HIGH'=531
-'HONOR_BROKER_PRIORITY'=532
-'HOURS'=533
-'IDENTITY_VALUE'=534
-'IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX'=535
-'IMMEDIATE'=536
-'IMPERSONATE'=537
-'IMPORTANCE'=538
-'INCLUDE_NULL_VALUES'=539
-'INCREMENTAL'=540
-'INITIATOR'=541
-'INPUT'=542
-'INSENSITIVE'=543
-'INSERTED'=544
-'INT'=545
-'IP'=546
-'ISOLATION'=547
-'JOB'=548
-'JSON'=549
-'KB'=550
-'KEEP'=551
-'KEEPFIXED'=552
-'KEY_SOURCE'=553
-'KEYS'=554
-'KEYSET'=555
-'LAG'=556
-'LAST'=557
-'LAST_VALUE'=558
-'LEAD'=559
-'LEVEL'=560
-'LIST'=561
-'LISTENER'=562
-'LISTENER_URL'=563
-'LOB_COMPACTION'=564
-'LOCAL'=565
-'LOCATION'=566
-'LOCK'=567
-'LOCK_ESCALATION'=568
-'LOGIN'=569
-'LOOP'=570
-'LOW'=571
-'MANUAL'=572
-'MARK'=573
-'MATERIALIZED'=574
-'MAX'=575
-'MAX_CPU_PERCENT'=576
-'MAX_DOP'=577
-'MAX_FILES'=578
-'MAX_IOPS_PER_VOLUME'=579
-'MAX_MEMORY_PERCENT'=580
-'MAX_PROCESSES'=581
-'MAX_QUEUE_READERS'=582
-'MAX_ROLLOVER_FILES'=583
-'MAXDOP'=584
-'MAXRECURSION'=585
-'MAXSIZE'=586
-'MB'=587
-'MEDIUM'=588
-'MEMORY_OPTIMIZED_DATA'=589
-'MESSAGE'=590
-'MIN'=591
-'MIN_ACTIVE_ROWVERSION'=592
-'MIN_CPU_PERCENT'=593
-'MIN_IOPS_PER_VOLUME'=594
-'MIN_MEMORY_PERCENT'=595
-'MINUTES'=596
-'MIRROR_ADDRESS'=597
-'MIXED_PAGE_ALLOCATION'=598
-'MODE'=599
-'MODIFY'=600
-'MOVE'=601
-'MULTI_USER'=602
-'NAME'=603
-'NESTED_TRIGGERS'=604
-'NEW_ACCOUNT'=605
-'NEW_BROKER'=606
-'NEW_PASSWORD'=607
-'NEXT'=608
-'NO'=609
-'NO_TRUNCATE'=610
-'NO_WAIT'=611
-'NOCOUNT'=612
-'NODES'=613
-'NOEXPAND'=614
-'NON_TRANSACTED_ACCESS'=615
-'NORECOMPUTE'=616
-'NORECOVERY'=617
-'NOWAIT'=618
-'NTILE'=619
-'NUMANODE'=620
-'NUMBER'=621
-'NUMERIC_ROUNDABORT'=622
-'OBJECT'=623
-'OFFLINE'=624
-'OFFSET'=625
-'OLD_ACCOUNT'=626
-'ONLINE'=627
-'ONLY'=628
-'OPEN_EXISTING'=629
-'OPTIMISTIC'=630
-'OPTIMIZE'=631
-'OUT'=632
-'OUTPUT'=633
-'OVERRIDE'=634
-'OWNER'=635
-'PAGE_VERIFY'=636
-'PARAMETERIZATION'=637
-'PARTITION'=638
-'PARTITIONS'=639
-'PARTNER'=640
-'PATH'=641
-'POISON_MESSAGE_HANDLING'=642
-'POOL'=643
-'PORT'=644
-'PRECEDING'=645
-'PRIMARY_ROLE'=646
-'PRIOR'=647
-'PRIORITY'=648
-'PRIORITY_LEVEL'=649
-'PRIVATE'=650
-'PRIVATE_KEY'=651
-'PRIVILEGES'=652
-'PROCEDURE_NAME'=653
-'PROPERTY'=654
-'PROVIDER'=655
-'PROVIDER_KEY_NAME'=656
-'QUERY'=657
-'QUEUE'=658
-'QUEUE_DELAY'=659
-'QUOTED_IDENTIFIER'=660
-'RANGE'=661
-'RANK'=662
-'RC2'=663
-'RC4'=664
-'RC4_128'=665
-'READ_COMMITTED_SNAPSHOT'=666
-'READ_ONLY'=667
-'READ_ONLY_ROUTING_LIST'=668
-'READ_WRITE'=669
-'READONLY'=670
-'REBUILD'=671
-'RECEIVE'=672
-'RECOMPILE'=673
-'RECOVERY'=674
-'RECURSIVE_TRIGGERS'=675
-'RELATIVE'=676
-'REMOTE'=677
-'REMOTE_SERVICE_NAME'=678
-'REMOVE'=679
-'REORGANIZE'=680
-'REPEATABLE'=681
-'REPLICA'=682
-'REQUEST_MAX_CPU_TIME_SEC'=683
-'REQUEST_MAX_MEMORY_GRANT_PERCENT'=684
-'REQUEST_MEMORY_GRANT_TIMEOUT_SEC'=685
-'REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT'=686
-'RESERVE_DISK_SPACE'=687
-'RESOURCE'=688
-'RESOURCE_MANAGER_LOCATION'=689
-'RESTRICTED_USER'=690
-'RETENTION'=691
-'ROBUST'=692
-'ROOT'=693
-'ROUTE'=694
-'ROW'=695
-'ROW_NUMBER'=696
-'ROWGUID'=697
-'ROWS'=698
-'SAMPLE'=699
-'SCHEMABINDING'=700
-'SCOPED'=701
-'SCROLL'=702
-'SCROLL_LOCKS'=703
-'SEARCH'=704
-'SECONDARY'=705
-'SECONDARY_ONLY'=706
-'SECONDARY_ROLE'=707
-'SECONDS'=708
-'SECRET'=709
-'SECURITY'=710
-'SECURITY_LOG'=711
-'SEEDING_MODE'=712
-'SELF'=713
-'SEMI_SENSITIVE'=714
-'SEND'=715
-'SENT'=716
-'SEQUENCE'=717
-'SERIALIZABLE'=718
-'SESSION_TIMEOUT'=719
-'SETERROR'=720
-'SHARE'=721
-'SHOWPLAN'=722
-'SIGNATURE'=723
-'SIMPLE'=724
-'SINGLE_USER'=725
-'SIZE'=726
-'SMALLINT'=727
-'SNAPSHOT'=728
-'SPATIAL_WINDOW_MAX_CELLS'=729
-'STANDBY'=730
-'START_DATE'=731
-'STATIC'=732
-'STATS_STREAM'=733
-'STATUS'=734
-'STATUSONLY'=735
-'STDEV'=736
-'STDEVP'=737
-'STOPLIST'=738
-'STRING_AGG'=739
-'STUFF'=740
-'SUBJECT'=741
-'SUBSCRIPTION'=742
-'SUM'=743
-'SUSPEND'=744
-'SYMMETRIC'=745
-'SYNCHRONOUS_COMMIT'=746
-'SYNONYM'=747
-'SYSTEM'=748
-'TAKE'=749
-'TARGET_RECOVERY_TIME'=750
-'TB'=751
-'TEXTIMAGE_ON'=752
-'THROW'=753
-'TIES'=754
-'TIME'=755
-'TIMEOUT'=756
-'TIMER'=757
-'TINYINT'=758
-'TORN_PAGE_DETECTION'=759
-'TRANSFORM_NOISE_WORDS'=760
-'TRIPLE_DES'=761
-'TRIPLE_DES_3KEY'=762
-'TRUSTWORTHY'=763
-'TRY'=764
-'TSQL'=765
-'TWO_DIGIT_YEAR_CUTOFF'=766
-'TYPE'=767
-'TYPE_WARNING'=768
-'UNBOUNDED'=769
-'UNCOMMITTED'=770
-'UNKNOWN'=771
-'UNLIMITED'=772
-'UOW'=773
-'USING'=774
-'VALID_XML'=775
-'VALIDATION'=776
-'VALUE'=777
-'VAR'=778
-'VARP'=779
-'VIEW_METADATA'=780
-'VIEWS'=781
-'WAIT'=782
-'WELL_FORMED_XML'=783
-'WITHOUT_ARRAY_WRAPPER'=784
-'WORK'=785
-'WORKLOAD'=786
-'XML'=787
-'XMLDATA'=788
-'XMLNAMESPACES'=789
-'XMLSCHEMA'=790
-'XSINIL'=791
-'$ACTION'=792
-'\''=797
-'='=808
-'>'=809
-'<'=810
-'!'=811
-'+='=812
-'-='=813
-'*='=814
-'/='=815
-'%='=816
-'&='=817
-'^='=818
-'|='=819
-'||'=820
-'.'=821
-'_'=822
-'@'=823
-'#'=824
-'$'=825
-'('=826
-')'=827
-','=828
-';'=829
-':'=830
-'*'=831
-'/'=832
-'%'=833
-'+'=834
-'-'=835
-'~'=836
-'|'=837
-'&'=838
-'^'=839
diff --git a/src/grammar/tsql/parser/TSqlParser.js b/src/grammar/tsql/parser/TSqlParser.js
deleted file mode 100644
index 78a5a88..0000000
--- a/src/grammar/tsql/parser/TSqlParser.js
+++ /dev/null
@@ -1,126333 +0,0 @@
-// Generated from /Users/ziv/Workspace/dt-sql-parser/src/grammar/tsql/TSqlParser.g4 by ANTLR 4.8
-// jshint ignore: start
-var antlr4 = require('antlr4/index');
-var TSqlParserListener = require('./TSqlParserListener').TSqlParserListener;
-var TSqlParserVisitor = require('./TSqlParserVisitor').TSqlParserVisitor;
-
-var grammarFileName = "TSqlParser.g4";
-
-
-var serializedATN = ["\u0003\u608b\ua72a\u8133\ub9ed\u417c\u3be7\u7786\u5964",
- "\u0003\u034a\u2a08\u0004\u0002\t\u0002\u0004\u0003\t\u0003\u0004\u0004",
- "\t\u0004\u0004\u0005\t\u0005\u0004\u0006\t\u0006\u0004\u0007\t\u0007",
- "\u0004\b\t\b\u0004\t\t\t\u0004\n\t\n\u0004\u000b\t\u000b\u0004\f\t\f",
- "\u0004\r\t\r\u0004\u000e\t\u000e\u0004\u000f\t\u000f\u0004\u0010\t\u0010",
- "\u0004\u0011\t\u0011\u0004\u0012\t\u0012\u0004\u0013\t\u0013\u0004\u0014",
- "\t\u0014\u0004\u0015\t\u0015\u0004\u0016\t\u0016\u0004\u0017\t\u0017",
- "\u0004\u0018\t\u0018\u0004\u0019\t\u0019\u0004\u001a\t\u001a\u0004\u001b",
- "\t\u001b\u0004\u001c\t\u001c\u0004\u001d\t\u001d\u0004\u001e\t\u001e",
- "\u0004\u001f\t\u001f\u0004 \t \u0004!\t!\u0004\"\t\"\u0004#\t#\u0004",
- "$\t$\u0004%\t%\u0004&\t&\u0004\'\t\'\u0004(\t(\u0004)\t)\u0004*\t*\u0004",
- "+\t+\u0004,\t,\u0004-\t-\u0004.\t.\u0004/\t/\u00040\t0\u00041\t1\u0004",
- "2\t2\u00043\t3\u00044\t4\u00045\t5\u00046\t6\u00047\t7\u00048\t8\u0004",
- "9\t9\u0004:\t:\u0004;\t;\u0004<\t<\u0004=\t=\u0004>\t>\u0004?\t?\u0004",
- "@\t@\u0004A\tA\u0004B\tB\u0004C\tC\u0004D\tD\u0004E\tE\u0004F\tF\u0004",
- "G\tG\u0004H\tH\u0004I\tI\u0004J\tJ\u0004K\tK\u0004L\tL\u0004M\tM\u0004",
- "N\tN\u0004O\tO\u0004P\tP\u0004Q\tQ\u0004R\tR\u0004S\tS\u0004T\tT\u0004",
- "U\tU\u0004V\tV\u0004W\tW\u0004X\tX\u0004Y\tY\u0004Z\tZ\u0004[\t[\u0004",
- "\\\t\\\u0004]\t]\u0004^\t^\u0004_\t_\u0004`\t`\u0004a\ta\u0004b\tb\u0004",
- "c\tc\u0004d\td\u0004e\te\u0004f\tf\u0004g\tg\u0004h\th\u0004i\ti\u0004",
- "j\tj\u0004k\tk\u0004l\tl\u0004m\tm\u0004n\tn\u0004o\to\u0004p\tp\u0004",
- "q\tq\u0004r\tr\u0004s\ts\u0004t\tt\u0004u\tu\u0004v\tv\u0004w\tw\u0004",
- "x\tx\u0004y\ty\u0004z\tz\u0004{\t{\u0004|\t|\u0004}\t}\u0004~\t~\u0004",
- "\u007f\t\u007f\u0004\u0080\t\u0080\u0004\u0081\t\u0081\u0004\u0082\t",
- "\u0082\u0004\u0083\t\u0083\u0004\u0084\t\u0084\u0004\u0085\t\u0085\u0004",
- "\u0086\t\u0086\u0004\u0087\t\u0087\u0004\u0088\t\u0088\u0004\u0089\t",
- "\u0089\u0004\u008a\t\u008a\u0004\u008b\t\u008b\u0004\u008c\t\u008c\u0004",
- "\u008d\t\u008d\u0004\u008e\t\u008e\u0004\u008f\t\u008f\u0004\u0090\t",
- "\u0090\u0004\u0091\t\u0091\u0004\u0092\t\u0092\u0004\u0093\t\u0093\u0004",
- "\u0094\t\u0094\u0004\u0095\t\u0095\u0004\u0096\t\u0096\u0004\u0097\t",
- "\u0097\u0004\u0098\t\u0098\u0004\u0099\t\u0099\u0004\u009a\t\u009a\u0004",
- "\u009b\t\u009b\u0004\u009c\t\u009c\u0004\u009d\t\u009d\u0004\u009e\t",
- "\u009e\u0004\u009f\t\u009f\u0004\u00a0\t\u00a0\u0004\u00a1\t\u00a1\u0004",
- "\u00a2\t\u00a2\u0004\u00a3\t\u00a3\u0004\u00a4\t\u00a4\u0004\u00a5\t",
- "\u00a5\u0004\u00a6\t\u00a6\u0004\u00a7\t\u00a7\u0004\u00a8\t\u00a8\u0004",
- "\u00a9\t\u00a9\u0004\u00aa\t\u00aa\u0004\u00ab\t\u00ab\u0004\u00ac\t",
- "\u00ac\u0004\u00ad\t\u00ad\u0004\u00ae\t\u00ae\u0004\u00af\t\u00af\u0004",
- "\u00b0\t\u00b0\u0004\u00b1\t\u00b1\u0004\u00b2\t\u00b2\u0004\u00b3\t",
- "\u00b3\u0004\u00b4\t\u00b4\u0004\u00b5\t\u00b5\u0004\u00b6\t\u00b6\u0004",
- "\u00b7\t\u00b7\u0004\u00b8\t\u00b8\u0004\u00b9\t\u00b9\u0004\u00ba\t",
- "\u00ba\u0004\u00bb\t\u00bb\u0004\u00bc\t\u00bc\u0004\u00bd\t\u00bd\u0004",
- "\u00be\t\u00be\u0004\u00bf\t\u00bf\u0004\u00c0\t\u00c0\u0004\u00c1\t",
- "\u00c1\u0004\u00c2\t\u00c2\u0004\u00c3\t\u00c3\u0004\u00c4\t\u00c4\u0004",
- "\u00c5\t\u00c5\u0004\u00c6\t\u00c6\u0004\u00c7\t\u00c7\u0004\u00c8\t",
- "\u00c8\u0004\u00c9\t\u00c9\u0004\u00ca\t\u00ca\u0004\u00cb\t\u00cb\u0004",
- "\u00cc\t\u00cc\u0004\u00cd\t\u00cd\u0004\u00ce\t\u00ce\u0004\u00cf\t",
- "\u00cf\u0004\u00d0\t\u00d0\u0004\u00d1\t\u00d1\u0004\u00d2\t\u00d2\u0004",
- "\u00d3\t\u00d3\u0004\u00d4\t\u00d4\u0004\u00d5\t\u00d5\u0004\u00d6\t",
- "\u00d6\u0004\u00d7\t\u00d7\u0004\u00d8\t\u00d8\u0004\u00d9\t\u00d9\u0004",
- "\u00da\t\u00da\u0004\u00db\t\u00db\u0004\u00dc\t\u00dc\u0004\u00dd\t",
- "\u00dd\u0004\u00de\t\u00de\u0004\u00df\t\u00df\u0004\u00e0\t\u00e0\u0004",
- "\u00e1\t\u00e1\u0004\u00e2\t\u00e2\u0004\u00e3\t\u00e3\u0004\u00e4\t",
- "\u00e4\u0004\u00e5\t\u00e5\u0004\u00e6\t\u00e6\u0004\u00e7\t\u00e7\u0004",
- "\u00e8\t\u00e8\u0004\u00e9\t\u00e9\u0004\u00ea\t\u00ea\u0004\u00eb\t",
- "\u00eb\u0004\u00ec\t\u00ec\u0004\u00ed\t\u00ed\u0004\u00ee\t\u00ee\u0004",
- "\u00ef\t\u00ef\u0004\u00f0\t\u00f0\u0004\u00f1\t\u00f1\u0004\u00f2\t",
- "\u00f2\u0004\u00f3\t\u00f3\u0004\u00f4\t\u00f4\u0004\u00f5\t\u00f5\u0004",
- "\u00f6\t\u00f6\u0004\u00f7\t\u00f7\u0004\u00f8\t\u00f8\u0004\u00f9\t",
- "\u00f9\u0004\u00fa\t\u00fa\u0004\u00fb\t\u00fb\u0004\u00fc\t\u00fc\u0004",
- "\u00fd\t\u00fd\u0004\u00fe\t\u00fe\u0004\u00ff\t\u00ff\u0004\u0100\t",
- "\u0100\u0004\u0101\t\u0101\u0004\u0102\t\u0102\u0004\u0103\t\u0103\u0004",
- "\u0104\t\u0104\u0004\u0105\t\u0105\u0004\u0106\t\u0106\u0004\u0107\t",
- "\u0107\u0004\u0108\t\u0108\u0004\u0109\t\u0109\u0004\u010a\t\u010a\u0004",
- "\u010b\t\u010b\u0004\u010c\t\u010c\u0004\u010d\t\u010d\u0004\u010e\t",
- "\u010e\u0004\u010f\t\u010f\u0004\u0110\t\u0110\u0004\u0111\t\u0111\u0004",
- "\u0112\t\u0112\u0004\u0113\t\u0113\u0004\u0114\t\u0114\u0004\u0115\t",
- "\u0115\u0004\u0116\t\u0116\u0004\u0117\t\u0117\u0004\u0118\t\u0118\u0004",
- "\u0119\t\u0119\u0004\u011a\t\u011a\u0004\u011b\t\u011b\u0004\u011c\t",
- "\u011c\u0004\u011d\t\u011d\u0004\u011e\t\u011e\u0004\u011f\t\u011f\u0004",
- "\u0120\t\u0120\u0004\u0121\t\u0121\u0004\u0122\t\u0122\u0004\u0123\t",
- "\u0123\u0004\u0124\t\u0124\u0004\u0125\t\u0125\u0004\u0126\t\u0126\u0004",
- "\u0127\t\u0127\u0004\u0128\t\u0128\u0004\u0129\t\u0129\u0004\u012a\t",
- "\u012a\u0004\u012b\t\u012b\u0004\u012c\t\u012c\u0004\u012d\t\u012d\u0004",
- "\u012e\t\u012e\u0004\u012f\t\u012f\u0004\u0130\t\u0130\u0004\u0131\t",
- "\u0131\u0004\u0132\t\u0132\u0004\u0133\t\u0133\u0004\u0134\t\u0134\u0004",
- "\u0135\t\u0135\u0004\u0136\t\u0136\u0004\u0137\t\u0137\u0004\u0138\t",
- "\u0138\u0004\u0139\t\u0139\u0004\u013a\t\u013a\u0004\u013b\t\u013b\u0004",
- "\u013c\t\u013c\u0004\u013d\t\u013d\u0004\u013e\t\u013e\u0004\u013f\t",
- "\u013f\u0004\u0140\t\u0140\u0004\u0141\t\u0141\u0004\u0142\t\u0142\u0004",
- "\u0143\t\u0143\u0004\u0144\t\u0144\u0004\u0145\t\u0145\u0004\u0146\t",
- "\u0146\u0004\u0147\t\u0147\u0004\u0148\t\u0148\u0004\u0149\t\u0149\u0004",
- "\u014a\t\u014a\u0004\u014b\t\u014b\u0004\u014c\t\u014c\u0004\u014d\t",
- "\u014d\u0004\u014e\t\u014e\u0004\u014f\t\u014f\u0004\u0150\t\u0150\u0004",
- "\u0151\t\u0151\u0004\u0152\t\u0152\u0004\u0153\t\u0153\u0004\u0154\t",
- "\u0154\u0004\u0155\t\u0155\u0004\u0156\t\u0156\u0004\u0157\t\u0157\u0004",
- "\u0158\t\u0158\u0004\u0159\t\u0159\u0004\u015a\t\u015a\u0004\u015b\t",
- "\u015b\u0004\u015c\t\u015c\u0004\u015d\t\u015d\u0004\u015e\t\u015e\u0004",
- "\u015f\t\u015f\u0004\u0160\t\u0160\u0004\u0161\t\u0161\u0004\u0162\t",
- "\u0162\u0004\u0163\t\u0163\u0004\u0164\t\u0164\u0004\u0165\t\u0165\u0004",
- "\u0166\t\u0166\u0004\u0167\t\u0167\u0004\u0168\t\u0168\u0004\u0169\t",
- "\u0169\u0004\u016a\t\u016a\u0004\u016b\t\u016b\u0004\u016c\t\u016c\u0004",
- "\u016d\t\u016d\u0004\u016e\t\u016e\u0004\u016f\t\u016f\u0004\u0170\t",
- "\u0170\u0004\u0171\t\u0171\u0004\u0172\t\u0172\u0004\u0173\t\u0173\u0004",
- "\u0174\t\u0174\u0004\u0175\t\u0175\u0004\u0176\t\u0176\u0004\u0177\t",
- "\u0177\u0004\u0178\t\u0178\u0004\u0179\t\u0179\u0004\u017a\t\u017a\u0004",
- "\u017b\t\u017b\u0004\u017c\t\u017c\u0004\u017d\t\u017d\u0004\u017e\t",
- "\u017e\u0004\u017f\t\u017f\u0004\u0180\t\u0180\u0004\u0181\t\u0181\u0004",
- "\u0182\t\u0182\u0004\u0183\t\u0183\u0004\u0184\t\u0184\u0004\u0185\t",
- "\u0185\u0004\u0186\t\u0186\u0004\u0187\t\u0187\u0004\u0188\t\u0188\u0004",
- "\u0189\t\u0189\u0004\u018a\t\u018a\u0004\u018b\t\u018b\u0004\u018c\t",
- "\u018c\u0004\u018d\t\u018d\u0004\u018e\t\u018e\u0004\u018f\t\u018f\u0004",
- "\u0190\t\u0190\u0004\u0191\t\u0191\u0004\u0192\t\u0192\u0004\u0193\t",
- "\u0193\u0004\u0194\t\u0194\u0004\u0195\t\u0195\u0004\u0196\t\u0196\u0004",
- "\u0197\t\u0197\u0004\u0198\t\u0198\u0004\u0199\t\u0199\u0004\u019a\t",
- "\u019a\u0004\u019b\t\u019b\u0004\u019c\t\u019c\u0004\u019d\t\u019d\u0004",
- "\u019e\t\u019e\u0004\u019f\t\u019f\u0004\u01a0\t\u01a0\u0004\u01a1\t",
- "\u01a1\u0004\u01a2\t\u01a2\u0004\u01a3\t\u01a3\u0004\u01a4\t\u01a4\u0004",
- "\u01a5\t\u01a5\u0004\u01a6\t\u01a6\u0004\u01a7\t\u01a7\u0004\u01a8\t",
- "\u01a8\u0004\u01a9\t\u01a9\u0004\u01aa\t\u01aa\u0004\u01ab\t\u01ab\u0004",
- "\u01ac\t\u01ac\u0004\u01ad\t\u01ad\u0004\u01ae\t\u01ae\u0004\u01af\t",
- "\u01af\u0004\u01b0\t\u01b0\u0004\u01b1\t\u01b1\u0004\u01b2\t\u01b2\u0004",
- "\u01b3\t\u01b3\u0004\u01b4\t\u01b4\u0004\u01b5\t\u01b5\u0004\u01b6\t",
- "\u01b6\u0004\u01b7\t\u01b7\u0004\u01b8\t\u01b8\u0004\u01b9\t\u01b9\u0004",
- "\u01ba\t\u01ba\u0004\u01bb\t\u01bb\u0004\u01bc\t\u01bc\u0004\u01bd\t",
- "\u01bd\u0004\u01be\t\u01be\u0004\u01bf\t\u01bf\u0004\u01c0\t\u01c0\u0004",
- "\u01c1\t\u01c1\u0004\u01c2\t\u01c2\u0004\u01c3\t\u01c3\u0004\u01c4\t",
- "\u01c4\u0004\u01c5\t\u01c5\u0004\u01c6\t\u01c6\u0004\u01c7\t\u01c7\u0004",
- "\u01c8\t\u01c8\u0004\u01c9\t\u01c9\u0004\u01ca\t\u01ca\u0004\u01cb\t",
- "\u01cb\u0004\u01cc\t\u01cc\u0004\u01cd\t\u01cd\u0004\u01ce\t\u01ce\u0004",
- "\u01cf\t\u01cf\u0004\u01d0\t\u01d0\u0004\u01d1\t\u01d1\u0004\u01d2\t",
- "\u01d2\u0004\u01d3\t\u01d3\u0004\u01d4\t\u01d4\u0004\u01d5\t\u01d5\u0004",
- "\u01d6\t\u01d6\u0004\u01d7\t\u01d7\u0004\u01d8\t\u01d8\u0004\u01d9\t",
- "\u01d9\u0004\u01da\t\u01da\u0004\u01db\t\u01db\u0004\u01dc\t\u01dc\u0004",
- "\u01dd\t\u01dd\u0004\u01de\t\u01de\u0004\u01df\t\u01df\u0004\u01e0\t",
- "\u01e0\u0004\u01e1\t\u01e1\u0004\u01e2\t\u01e2\u0004\u01e3\t\u01e3\u0004",
- "\u01e4\t\u01e4\u0004\u01e5\t\u01e5\u0004\u01e6\t\u01e6\u0004\u01e7\t",
- "\u01e7\u0004\u01e8\t\u01e8\u0003\u0002\u0007\u0002\u03d2\n\u0002\f\u0002",
- "\u000e\u0002\u03d5\u000b\u0002\u0003\u0002\u0003\u0002\u0003\u0003\u0003",
- "\u0003\u0007\u0003\u03db\n\u0003\f\u0003\u000e\u0003\u03de\u000b\u0003",
- "\u0003\u0003\u0005\u0003\u03e1\n\u0003\u0003\u0003\u0003\u0003\u0007",
- "\u0003\u03e5\n\u0003\f\u0003\u000e\u0003\u03e8\u000b\u0003\u0005\u0003",
- "\u03ea\n\u0003\u0003\u0004\u0003\u0004\u0005\u0004\u03ee\n\u0004\u0006",
- "\u0004\u03f0\n\u0004\r\u0004\u000e\u0004\u03f1\u0003\u0005\u0003\u0005",
- "\u0003\u0005\u0003\u0005\u0003\u0005\u0003\u0005\u0003\u0005\u0005\u0005",
- "\u03fb\n\u0005\u0003\u0006\u0003\u0006\u0003\u0006\u0003\u0006\u0003",
- "\u0006\u0005\u0006\u0402\n\u0006\u0003\u0007\u0003\u0007\u0003\u0007",
- "\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007",
- "\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007",
- "\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007",
- "\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007",
- "\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007",
- "\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007",
- "\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007",
- "\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007",
- "\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007",
- "\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007",
- "\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007",
- "\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007",
- "\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007",
- "\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007",
- "\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007",
- "\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007",
- "\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007",
- "\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007",
- "\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007",
- "\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007",
- "\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007",
- "\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007",
- "\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007",
- "\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007",
- "\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007",
- "\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007",
- "\u0005\u0007\u04a3\n\u0007\u0003\b\u0003\b\u0003\b\u0003\b\u0003\b\u0005",
- "\b\u04aa\n\b\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t",
- "\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0005\t\u04b8\n\t\u0003\n\u0003",
- "\n\u0005\n\u04bc\n\n\u0003\n\u0005\n\u04bf\n\n\u0003\n\u0003\n\u0005",
- "\n\u04c3\n\n\u0003\u000b\u0003\u000b\u0005\u000b\u04c7\n\u000b\u0003",
- "\f\u0003\f\u0005\f\u04cb\n\f\u0003\r\u0003\r\u0003\r\u0005\r\u04d0\n",
- "\r\u0003\r\u0003\r\u0003\r\u0005\r\u04d5\n\r\u0005\r\u04d7\n\r\u0003",
- "\u000e\u0003\u000e\u0005\u000e\u04db\n\u000e\u0003\u000e\u0005\u000e",
- "\u04de\n\u000e\u0003\u000f\u0003\u000f\u0003\u000f\u0003\u000f\u0003",
- "\u000f\u0005\u000f\u04e5\n\u000f\u0003\u000f\u0005\u000f\u04e8\n\u000f",
- "\u0003\u0010\u0003\u0010\u0003\u0010\u0003\u0010\u0003\u0010\u0003\u0010",
- "\u0003\u0010\u0005\u0010\u04f1\n\u0010\u0003\u0010\u0005\u0010\u04f4",
- "\n\u0010\u0003\u0011\u0003\u0011\u0003\u0012\u0003\u0012\u0003\u0013",
- "\u0003\u0013\u0003\u0014\u0003\u0014\u0003\u0014\u0005\u0014\u04ff\n",
- "\u0014\u0003\u0014\u0005\u0014\u0502\n\u0014\u0003\u0014\u0003\u0014",
- "\u0003\u0014\u0005\u0014\u0507\n\u0014\u0003\u0014\u0003\u0014\u0003",
- "\u0014\u0005\u0014\u050c\n\u0014\u0003\u0014\u0005\u0014\u050f\n\u0014",
- "\u0003\u0014\u0003\u0014\u0003\u0014\u0005\u0014\u0514\n\u0014\u0003",
- "\u0015\u0003\u0015\u0005\u0015\u0518\n\u0015\u0003\u0015\u0005\u0015",
- "\u051b\n\u0015\u0003\u0015\u0003\u0015\u0005\u0015\u051f\n\u0015\u0003",
- "\u0015\u0005\u0015\u0522\n\u0015\u0003\u0015\u0005\u0015\u0525\n\u0015",
- "\u0003\u0016\u0003\u0016\u0003\u0016\u0003\u0016\u0003\u0016\u0005\u0016",
- "\u052c\n\u0016\u0003\u0016\u0003\u0016\u0005\u0016\u0530\n\u0016\u0005",
- "\u0016\u0532\n\u0016\u0003\u0017\u0003\u0017\u0003\u0017\u0005\u0017",
- "\u0537\n\u0017\u0003\u0017\u0003\u0017\u0007\u0017\u053b\n\u0017\f\u0017",
- "\u000e\u0017\u053e\u000b\u0017\u0003\u0017\u0005\u0017\u0541\n\u0017",
- "\u0003\u0018\u0003\u0018\u0003\u0018\u0003\u0018\u0003\u0018\u0003\u0018",
- "\u0003\u0018\u0003\u0018\u0003\u0018\u0007\u0018\u054c\n\u0018\f\u0018",
- "\u000e\u0018\u054f\u000b\u0018\u0003\u0018\u0003\u0018\u0003\u0018\u0005",
- "\u0018\u0554\n\u0018\u0003\u0018\u0005\u0018\u0557\n\u0018\u0003\u0018",
- "\u0003\u0018\u0003\u0018\u0003\u0018\u0003\u0018\u0007\u0018\u055e\n",
- "\u0018\f\u0018\u000e\u0018\u0561\u000b\u0018\u0005\u0018\u0563\n\u0018",
- "\u0003\u0019\u0003\u0019\u0003\u001a\u0003\u001a\u0003\u001a\u0003\u001a",
- "\u0003\u001a\u0003\u001a\u0003\u001a\u0003\u001a\u0003\u001a\u0003\u001a",
- "\u0003\u001a\u0003\u001a\u0003\u001a\u0003\u001a\u0003\u001a\u0003\u001a",
- "\u0005\u001a\u0577\n\u001a\u0003\u001b\u0003\u001b\u0003\u001b\u0003",
- "\u001b\u0003\u001b\u0003\u001b\u0005\u001b\u057f\n\u001b\u0003\u001b",
- "\u0003\u001b\u0003\u001b\u0005\u001b\u0584\n\u001b\u0003\u001b\u0005",
- "\u001b\u0587\n\u001b\u0003\u001b\u0003\u001b\u0003\u001b\u0005\u001b",
- "\u058c\n\u001b\u0003\u001b\u0005\u001b\u058f\n\u001b\u0003\u001b\u0003",
- "\u001b\u0003\u001b\u0005\u001b\u0594\n\u001b\u0003\u001c\u0003\u001c",
- "\u0003\u001c\u0003\u001c\u0003\u001c\u0003\u001c\u0005\u001c\u059c\n",
- "\u001c\u0003\u001c\u0003\u001c\u0003\u001c\u0005\u001c\u05a1\n\u001c",
- "\u0003\u001c\u0005\u001c\u05a4\n\u001c\u0003\u001c\u0003\u001c\u0003",
- "\u001c\u0005\u001c\u05a9\n\u001c\u0003\u001d\u0003\u001d\u0003\u001d",
- "\u0003\u001d\u0005\u001d\u05af\n\u001d\u0003\u001d\u0003\u001d\u0003",
- "\u001d\u0005\u001d\u05b4\n\u001d\u0003\u001d\u0003\u001d\u0003\u001e",
- "\u0003\u001e\u0003\u001e\u0003\u001e\u0003\u001e\u0003\u001f\u0003\u001f",
- "\u0003\u001f\u0003\u001f\u0003 \u0003 \u0003 \u0003!\u0005!\u05c5\n",
- "!\u0003!\u0005!\u05c8\n!\u0003!\u0005!\u05cb\n!\u0003!\u0005!\u05ce",
- "\n!\u0003\"\u0003\"\u0003\"\u0005\"\u05d3\n\"\u0003#\u0003#\u0003$\u0003",
- "$\u0003$\u0003%\u0003%\u0005%\u05dc\n%\u0003&\u0003&\u0003\'\u0003\'",
- "\u0003\'\u0003(\u0003(\u0003(\u0003(\u0003)\u0003)\u0003)\u0003)\u0005",
- ")\u05eb\n)\u0003*\u0003*\u0003+\u0003+\u0003+\u0003,\u0003,\u0003-\u0003",
- "-\u0003-\u0003.\u0003.\u0003/\u0003/\u0003/\u0005/\u05fc\n/\u00030\u0003",
- "0\u00030\u00030\u00030\u00030\u00030\u00030\u00030\u00050\u0607\n0\u0003",
- "0\u00030\u00070\u060b\n0\f0\u000e0\u060e\u000b0\u00031\u00031\u0003",
- "1\u00031\u00032\u00032\u00033\u00033\u00034\u00034\u00034\u00034\u0005",
- "4\u061c\n4\u00035\u00035\u00036\u00036\u00036\u00037\u00037\u00038\u0003",
- "8\u00038\u00038\u00038\u00038\u00058\u062b\n8\u00039\u00039\u0003:\u0003",
- ":\u0003:\u0003:\u0003:\u0005:\u0634\n:\u0003:\u0003:\u0005:\u0638\n",
- ":\u0003:\u0006:\u063b\n:\r:\u000e:\u063c\u0003:\u0003:\u0003:\u0003",
- ":\u0005:\u0643\n:\u0003;\u0003;\u0003;\u0003;\u0005;\u0649\n;\u0003",
- ";\u0005;\u064c\n;\u0003;\u0006;\u064f\n;\r;\u000e;\u0650\u0003;\u0003",
- ";\u0003;\u0005;\u0656\n;\u0003<\u0003<\u0003<\u0003<\u0003<\u0003<\u0005",
- "<\u065e\n<\u0003=\u0003=\u0003=\u0003=\u0003>\u0003>\u0003>\u0003>\u0005",
- ">\u0668\n>\u0003>\u0003>\u0003?\u0003?\u0003?\u0003?\u0003?\u0003@\u0003",
- "@\u0003@\u0003@\u0003@\u0003@\u0003@\u0003@\u0003@\u0003@\u0005@\u067b",
- "\n@\u0003A\u0003A\u0003A\u0003A\u0003A\u0003A\u0005A\u0683\nA\u0003",
- "A\u0003A\u0003A\u0003A\u0003A\u0003A\u0003A\u0003A\u0003A\u0003A\u0003",
- "A\u0005A\u0690\nA\u0005A\u0692\nA\u0003A\u0003A\u0003A\u0003A\u0003",
- "A\u0003A\u0003A\u0003A\u0003A\u0003A\u0005A\u069e\nA\u0005A\u06a0\n",
- "A\u0003A\u0003A\u0003A\u0003A\u0003A\u0005A\u06a7\nA\u0003B\u0003B\u0003",
- "B\u0003B\u0003B\u0003B\u0003B\u0005B\u06b0\nB\u0003C\u0003C\u0003C\u0003",
- "C\u0005C\u06b6\nC\u0003C\u0003C\u0003C\u0003C\u0003D\u0003D\u0003D\u0005",
- "D\u06bf\nD\u0003E\u0003E\u0003F\u0003F\u0003F\u0003G\u0003G\u0003G\u0003",
- "G\u0003H\u0003H\u0003H\u0003H\u0005H\u06ce\nH\u0003H\u0003H\u0003H\u0003",
- "H\u0003I\u0003I\u0003I\u0003I\u0005I\u06d8\nI\u0003I\u0003I\u0003I\u0003",
- "I\u0003J\u0003J\u0003J\u0003J\u0005J\u06e2\nJ\u0003J\u0003J\u0003J\u0003",
- "J\u0003K\u0003K\u0003K\u0003K\u0003K\u0003K\u0003K\u0003K\u0003K\u0003",
- "K\u0003K\u0003K\u0003K\u0003K\u0003K\u0003K\u0003K\u0003K\u0003K\u0003",
- "K\u0003K\u0003K\u0003K\u0003K\u0003K\u0003K\u0003K\u0003K\u0003K\u0003",
- "K\u0003K\u0003K\u0003K\u0003K\u0005K\u070a\nK\u0003L\u0003L\u0003L\u0003",
- "L\u0003L\u0003L\u0003L\u0003L\u0003L\u0003L\u0003L\u0003L\u0003L\u0003",
- "L\u0003L\u0003L\u0003L\u0003L\u0003L\u0003L\u0003L\u0005L\u0721\nL\u0003",
- "M\u0003M\u0003N\u0003N\u0003O\u0003O\u0003O\u0003O\u0003O\u0003P\u0003",
- "P\u0003P\u0003Q\u0003Q\u0003Q\u0003Q\u0003Q\u0003R\u0003R\u0003R\u0003",
- "R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003",
- "R\u0003R\u0003R\u0003R\u0005R\u0745\nR\u0003R\u0003R\u0003R\u0003R\u0003",
- "R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003",
- "R\u0003R\u0005R\u0757\nR\u0003R\u0005R\u075a\nR\u0003R\u0003R\u0003",
- "R\u0005R\u075f\nR\u0003R\u0005R\u0762\nR\u0003R\u0003R\u0003R\u0005",
- "R\u0767\nR\u0003R\u0005R\u076a\nR\u0003R\u0003R\u0003R\u0005R\u076f",
- "\nR\u0003R\u0005R\u0772\nR\u0003R\u0003R\u0003R\u0005R\u0777\nR\u0003",
- "R\u0005R\u077a\nR\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0005R\u0782",
- "\nR\u0003R\u0005R\u0785\nR\u0003R\u0003R\u0003R\u0003R\u0003R\u0003",
- "R\u0005R\u078d\nR\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003",
- "R\u0003R\u0003R\u0003R\u0005R\u079a\nR\u0003R\u0003R\u0003R\u0003R\u0003",
- "R\u0003R\u0003R\u0003R\u0003R\u0005R\u07a5\nR\u0003R\u0007R\u07a8\n",
- "R\fR\u000eR\u07ab\u000bR\u0003R\u0005R\u07ae\nR\u0003R\u0003R\u0003",
- "R\u0003R\u0005R\u07b4\nR\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003",
- "R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003",
- "R\u0003R\u0003R\u0003R\u0003R\u0005R\u07cb\nR\u0003R\u0003R\u0003R\u0003",
- "R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0005R\u07d7\nR\u0003R\u0003",
- "R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0005R\u07e2\nR\u0003",
- "R\u0007R\u07e5\nR\fR\u000eR\u07e8\u000bR\u0003R\u0005R\u07eb\nR\u0003",
- "R\u0003R\u0003R\u0003R\u0005R\u07f1\nR\u0005R\u07f3\nR\u0003R\u0003",
- "R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0005",
- "R\u0800\nR\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003",
- "R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003",
- "R\u0006R\u0815\nR\rR\u000eR\u0816\u0003R\u0003R\u0003R\u0003R\u0003",
- "R\u0005R\u081e\nR\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0005",
- "R\u0827\nR\u0003R\u0003R\u0003R\u0005R\u082c\nR\u0003R\u0005R\u082f",
- "\nR\u0003R\u0003R\u0003R\u0005R\u0834\nR\u0003R\u0005R\u0837\nR\u0003",
- "R\u0003R\u0003R\u0005R\u083c\nR\u0003R\u0006R\u083f\nR\rR\u000eR\u0840",
- "\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003",
- "R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003",
- "R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0005R\u085d\nR\u0003R\u0003",
- "R\u0003R\u0003R\u0003R\u0005R\u0864\nR\u0003R\u0006R\u0867\nR\rR\u000e",
- "R\u0868\u0003R\u0003R\u0003R\u0003R\u0003R\u0005R\u0870\nR\u0005R\u0872",
- "\nR\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0005",
- "R\u087d\nR\u0003R\u0003R\u0003R\u0003R\u0005R\u0883\nR\u0003R\u0003",
- "R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003",
- "R\u0003R\u0005R\u0892\nR\u0003S\u0003S\u0003S\u0003S\u0003S\u0003S\u0003",
- "S\u0003S\u0003S\u0003S\u0003S\u0003S\u0005S\u08a0\nS\u0003S\u0005S\u08a3",
- "\nS\u0005S\u08a5\nS\u0003S\u0003S\u0003S\u0005S\u08aa\nS\u0003S\u0003",
- "S\u0005S\u08ae\nS\u0003S\u0005S\u08b1\nS\u0005S\u08b3\nS\u0003S\u0003",
- "S\u0003S\u0003S\u0005S\u08b9\nS\u0003S\u0005S\u08bc\nS\u0005S\u08be",
- "\nS\u0003S\u0003S\u0003S\u0003S\u0005S\u08c4\nS\u0005S\u08c6\nS\u0003",
- "S\u0003S\u0003T\u0003T\u0003T\u0003T\u0003T\u0003U\u0003U\u0003U\u0003",
- "U\u0003U\u0003U\u0003U\u0003U\u0003U\u0003U\u0003U\u0003U\u0003U\u0005",
- "U\u08dc\nU\u0003U\u0003U\u0003U\u0003U\u0003U\u0003U\u0005U\u08e4\n",
- "U\u0003U\u0003U\u0003U\u0003U\u0003U\u0003U\u0005U\u08ec\nU\u0006U\u08ee",
- "\nU\rU\u000eU\u08ef\u0003U\u0003U\u0003U\u0003U\u0003U\u0003U\u0003",
- "U\u0005U\u08f9\nU\u0003V\u0003V\u0003V\u0003V\u0003V\u0003V\u0003V\u0003",
- "V\u0003V\u0003V\u0003V\u0003V\u0003V\u0003V\u0003V\u0003V\u0003V\u0003",
- "V\u0003V\u0005V\u090e\nV\u0003V\u0003V\u0003W\u0003W\u0003W\u0003W\u0003",
- "W\u0003W\u0003W\u0003W\u0003W\u0005W\u091b\nW\u0003W\u0003W\u0003W\u0003",
- "W\u0003W\u0003W\u0003W\u0003W\u0003W\u0003W\u0003W\u0003W\u0003W\u0005",
- "W\u092a\nW\u0006W\u092c\nW\rW\u000eW\u092d\u0003X\u0003X\u0003X\u0003",
- "X\u0003Y\u0003Y\u0003Y\u0003Y\u0003Y\u0003Y\u0003Z\u0003Z\u0003Z\u0003",
- "Z\u0003Z\u0003Z\u0003[\u0003[\u0003[\u0003[\u0003\\\u0003\\\u0003\\",
- "\u0003\\\u0003]\u0003]\u0003]\u0003]\u0003]\u0003^\u0003^\u0003^\u0003",
- "^\u0005^\u0951\n^\u0003^\u0005^\u0954\n^\u0003^\u0006^\u0957\n^\r^\u000e",
- "^\u0958\u0003_\u0003_\u0003_\u0003_\u0003_\u0003_\u0003`\u0003`\u0003",
- "`\u0003`\u0003`\u0003`\u0003a\u0003a\u0003a\u0003a\u0005a\u096b\na\u0003",
- "a\u0005a\u096e\na\u0003a\u0003a\u0003a\u0005a\u0973\na\u0003a\u0003",
- "a\u0003b\u0003b\u0003b\u0003b\u0003c\u0003c\u0003c\u0003c\u0003c\u0003",
- "c\u0003d\u0003d\u0003d\u0003d\u0003d\u0003d\u0003e\u0003e\u0003e\u0003",
- "e\u0003e\u0003e\u0005e\u098d\ne\u0003f\u0003f\u0003f\u0003f\u0003f\u0003",
- "f\u0003g\u0003g\u0003g\u0003g\u0003g\u0003g\u0005g\u099b\ng\u0003g\u0003",
- "g\u0003g\u0005g\u09a0\ng\u0003g\u0003g\u0003h\u0003h\u0003h\u0003h\u0005",
- "h\u09a8\nh\u0003h\u0006h\u09ab\nh\rh\u000eh\u09ac\u0003h\u0003h\u0003",
- "h\u0003h\u0003h\u0005h\u09b4\nh\u0003i\u0003i\u0003i\u0003i\u0003i\u0003",
- "i\u0003i\u0003j\u0003j\u0003j\u0003j\u0003j\u0003k\u0003k\u0003k\u0003",
- "k\u0003k\u0003k\u0003k\u0005k\u09c9\nk\u0003k\u0003k\u0003l\u0003l\u0003",
- "l\u0003l\u0003l\u0003m\u0003m\u0003m\u0003m\u0003n\u0003n\u0003n\u0003",
- "n\u0003o\u0003o\u0003o\u0003o\u0003o\u0003p\u0003p\u0003p\u0003p\u0003",
- "p\u0003q\u0003q\u0003q\u0003q\u0003q\u0003r\u0003r\u0003r\u0003r\u0003",
- "r\u0005r\u09ee\nr\u0003r\u0003r\u0003r\u0005r\u09f3\nr\u0003r\u0003",
- "r\u0003s\u0003s\u0003s\u0003s\u0003s\u0003s\u0003t\u0003t\u0003t\u0003",
- "t\u0003t\u0003u\u0003u\u0003u\u0003u\u0005u\u0a06\nu\u0003u\u0003u\u0003",
- "v\u0003v\u0003v\u0003v\u0003w\u0003w\u0003w\u0003w\u0005w\u0a12\nw\u0003",
- "w\u0005w\u0a15\nw\u0003w\u0003w\u0003w\u0005w\u0a1a\nw\u0003w\u0005",
- "w\u0a1d\nw\u0003x\u0003x\u0003x\u0003x\u0005x\u0a23\nx\u0003x\u0003",
- "x\u0003y\u0003y\u0003y\u0003y\u0003y\u0003y\u0003z\u0003z\u0003z\u0003",
- "z\u0003z\u0005z\u0a32\nz\u0003z\u0003z\u0003z\u0005z\u0a37\nz\u0003",
- "z\u0003z\u0003{\u0003{\u0003{\u0003{\u0005{\u0a3f\n{\u0003{\u0005{\u0a42",
- "\n{\u0003{\u0003{\u0003{\u0005{\u0a47\n{\u0003{\u0003{\u0003{\u0005",
- "{\u0a4c\n{\u0003{\u0005{\u0a4f\n{\u0003|\u0003|\u0003|\u0003|\u0003",
- "|\u0003}\u0003}\u0003}\u0003}\u0003}\u0003}\u0003~\u0003~\u0003~\u0003",
- "~\u0003~\u0003\u007f\u0003\u007f\u0003\u007f\u0003\u007f\u0003\u0080",
- "\u0003\u0080\u0005\u0080\u0a67\n\u0080\u0003\u0080\u0003\u0080\u0003",
- "\u0080\u0003\u0080\u0003\u0080\u0005\u0080\u0a6e\n\u0080\u0003\u0080",
- "\u0003\u0080\u0003\u0080\u0005\u0080\u0a73\n\u0080\u0003\u0080\u0003",
- "\u0080\u0003\u0080\u0005\u0080\u0a78\n\u0080\u0003\u0080\u0003\u0080",
- "\u0003\u0080\u0006\u0080\u0a7d\n\u0080\r\u0080\u000e\u0080\u0a7e\u0003",
- "\u0081\u0003\u0081\u0003\u0081\u0003\u0081\u0003\u0081\u0005\u0081\u0a86",
- "\n\u0081\u0003\u0081\u0003\u0081\u0003\u0081\u0003\u0081\u0003\u0082",
- "\u0003\u0082\u0003\u0082\u0003\u0082\u0003\u0082\u0003\u0082\u0003\u0082",
- "\u0005\u0082\u0a93\n\u0082\u0003\u0083\u0003\u0083\u0003\u0083\u0003",
- "\u0083\u0005\u0083\u0a99\n\u0083\u0003\u0083\u0003\u0083\u0003\u0083",
- "\u0005\u0083\u0a9e\n\u0083\u0003\u0083\u0003\u0083\u0003\u0084\u0003",
- "\u0084\u0003\u0084\u0003\u0084\u0005\u0084\u0aa6\n\u0084\u0003\u0084",
- "\u0003\u0084\u0003\u0085\u0003\u0085\u0003\u0085\u0003\u0085\u0003\u0085",
- "\u0003\u0086\u0003\u0086\u0003\u0086\u0003\u0086\u0003\u0086\u0003\u0086",
- "\u0003\u0086\u0005\u0086\u0ab6\n\u0086\u0003\u0086\u0003\u0086\u0003",
- "\u0087\u0003\u0087\u0003\u0087\u0005\u0087\u0abd\n\u0087\u0003\u0087",
- "\u0003\u0087\u0003\u0087\u0005\u0087\u0ac2\n\u0087\u0003\u0087\u0006",
- "\u0087\u0ac5\n\u0087\r\u0087\u000e\u0087\u0ac6\u0003\u0087\u0005\u0087",
- "\u0aca\n\u0087\u0003\u0087\u0003\u0087\u0003\u0087\u0003\u0087\u0005",
- "\u0087\u0ad0\n\u0087\u0003\u0087\u0003\u0087\u0003\u0087\u0003\u0087",
- "\u0005\u0087\u0ad6\n\u0087\u0003\u0088\u0003\u0088\u0003\u0088\u0005",
- "\u0088\u0adb\n\u0088\u0003\u0088\u0003\u0088\u0003\u0088\u0005\u0088",
- "\u0ae0\n\u0088\u0003\u0088\u0006\u0088\u0ae3\n\u0088\r\u0088\u000e\u0088",
- "\u0ae4\u0003\u0088\u0005\u0088\u0ae8\n\u0088\u0003\u0088\u0003\u0088",
- "\u0003\u0088\u0003\u0088\u0005\u0088\u0aee\n\u0088\u0003\u0088\u0003",
- "\u0088\u0003\u0088\u0003\u0088\u0005\u0088\u0af4\n\u0088\u0003\u0089",
- "\u0003\u0089\u0003\u0089\u0003\u0089\u0003\u0089\u0003\u0089\u0003\u0089",
- "\u0003\u0089\u0003\u0089\u0005\u0089\u0aff\n\u0089\u0003\u0089\u0005",
- "\u0089\u0b02\n\u0089\u0003\u008a\u0003\u008a\u0003\u008a\u0003\u008a",
- "\u0003\u008a\u0003\u008a\u0003\u008a\u0003\u008a\u0005\u008a\u0b0c\n",
- "\u008a\u0003\u008a\u0003\u008a\u0003\u008a\u0003\u008a\u0005\u008a\u0b12",
- "\n\u008a\u0006\u008a\u0b14\n\u008a\r\u008a\u000e\u008a\u0b15\u0003\u008a",
- "\u0003\u008a\u0005\u008a\u0b1a\n\u008a\u0003\u008b\u0003\u008b\u0003",
- "\u008b\u0003\u008b\u0003\u008b\u0003\u008b\u0003\u008b\u0003\u008b\u0003",
- "\u008b\u0003\u008b\u0003\u008b\u0003\u008b\u0003\u008b\u0003\u008b\u0003",
- "\u008b\u0003\u008b\u0003\u008c\u0003\u008c\u0003\u008c\u0003\u008c\u0003",
- "\u008c\u0003\u008c\u0003\u008c\u0003\u008c\u0003\u008c\u0003\u008c\u0003",
- "\u008c\u0005\u008c\u0b37\n\u008c\u0003\u008d\u0003\u008d\u0003\u008d",
- "\u0003\u008d\u0003\u008d\u0003\u008d\u0003\u008d\u0003\u008d\u0003\u008d",
- "\u0003\u008d\u0003\u008d\u0005\u008d\u0b44\n\u008d\u0003\u008d\u0003",
- "\u008d\u0003\u008d\u0003\u008d\u0005\u008d\u0b4a\n\u008d\u0003\u008e",
- "\u0003\u008e\u0003\u008e\u0003\u008e\u0003\u008e\u0003\u008e\u0003\u008e",
- "\u0003\u008e\u0005\u008e\u0b54\n\u008e\u0003\u008e\u0005\u008e\u0b57",
- "\n\u008e\u0003\u008f\u0003\u008f\u0003\u008f\u0003\u008f\u0003\u008f",
- "\u0003\u008f\u0003\u008f\u0003\u008f\u0003\u008f\u0003\u0090\u0003\u0090",
- "\u0003\u0090\u0003\u0090\u0003\u0090\u0003\u0090\u0003\u0090\u0003\u0090",
- "\u0003\u0090\u0005\u0090\u0b6b\n\u0090\u0003\u0090\u0003\u0090\u0005",
- "\u0090\u0b6f\n\u0090\u0003\u0090\u0003\u0090\u0005\u0090\u0b73\n\u0090",
- "\u0003\u0090\u0006\u0090\u0b76\n\u0090\r\u0090\u000e\u0090\u0b77\u0003",
- "\u0090\u0003\u0090\u0003\u0090\u0003\u0090\u0003\u0090\u0003\u0090\u0003",
- "\u0091\u0003\u0091\u0003\u0091\u0003\u0091\u0003\u0091\u0003\u0091\u0003",
- "\u0091\u0005\u0091\u0b87\n\u0091\u0003\u0091\u0003\u0091\u0003\u0091",
- "\u0003\u0091\u0003\u0091\u0005\u0091\u0b8e\n\u0091\u0003\u0091\u0003",
- "\u0091\u0003\u0091\u0003\u0091\u0003\u0091\u0003\u0091\u0003\u0091\u0005",
- "\u0091\u0b97\n\u0091\u0003\u0091\u0003\u0091\u0003\u0091\u0003\u0091",
- "\u0007\u0091\u0b9d\n\u0091\f\u0091\u000e\u0091\u0ba0\u000b\u0091\u0005",
- "\u0091\u0ba2\n\u0091\u0003\u0091\u0003\u0091\u0003\u0091\u0005\u0091",
- "\u0ba7\n\u0091\u0003\u0091\u0003\u0091\u0003\u0091\u0005\u0091\u0bac",
- "\n\u0091\u0003\u0091\u0003\u0091\u0003\u0091\u0003\u0091\u0006\u0091",
- "\u0bb2\n\u0091\r\u0091\u000e\u0091\u0bb3\u0003\u0091\u0003\u0091\u0006",
- "\u0091\u0bb8\n\u0091\r\u0091\u000e\u0091\u0bb9\u0003\u0091\u0003\u0091",
- "\u0005\u0091\u0bbe\n\u0091\u0003\u0091\u0003\u0091\u0007\u0091\u0bc2",
- "\n\u0091\f\u0091\u000e\u0091\u0bc5\u000b\u0091\u0007\u0091\u0bc7\n\u0091",
- "\f\u0091\u000e\u0091\u0bca\u000b\u0091\u0003\u0091\u0005\u0091\u0bcd",
- "\n\u0091\u0003\u0091\u0003\u0091\u0003\u0091\u0003\u0091\u0003\u0091",
- "\u0005\u0091\u0bd4\n\u0091\u0003\u0091\u0003\u0091\u0003\u0091\u0003",
- "\u0091\u0007\u0091\u0bda\n\u0091\f\u0091\u000e\u0091\u0bdd\u000b\u0091",
- "\u0003\u0091\u0003\u0091\u0003\u0091\u0003\u0091\u0003\u0091\u0005\u0091",
- "\u0be4\n\u0091\u0003\u0091\u0003\u0091\u0003\u0091\u0003\u0091\u0003",
- "\u0091\u0003\u0091\u0003\u0091\u0005\u0091\u0bed\n\u0091\u0003\u0091",
- "\u0003\u0091\u0003\u0091\u0005\u0091\u0bf2\n\u0091\u0003\u0091\u0003",
- "\u0091\u0005\u0091\u0bf6\n\u0091\u0003\u0091\u0005\u0091\u0bf9\n\u0091",
- "\u0006\u0091\u0bfb\n\u0091\r\u0091\u000e\u0091\u0bfc\u0003\u0091\u0003",
- "\u0091\u0007\u0091\u0c01\n\u0091\f\u0091\u000e\u0091\u0c04\u000b\u0091",
- "\u0007\u0091\u0c06\n\u0091\f\u0091\u000e\u0091\u0c09\u000b\u0091\u0003",
- "\u0091\u0003\u0091\u0003\u0091\u0003\u0091\u0003\u0091\u0005\u0091\u0c10",
- "\n\u0091\u0003\u0091\u0003\u0091\u0003\u0091\u0003\u0091\u0007\u0091",
- "\u0c16\n\u0091\f\u0091\u000e\u0091\u0c19\u000b\u0091\u0003\u0091\u0003",
- "\u0091\u0003\u0091\u0005\u0091\u0c1e\n\u0091\u0003\u0091\u0003\u0091",
- "\u0003\u0091\u0003\u0091\u0005\u0091\u0c24\n\u0091\u0003\u0091\u0005",
- "\u0091\u0c27\n\u0091\u0003\u0091\u0003\u0091\u0003\u0091\u0005\u0091",
- "\u0c2c\n\u0091\u0003\u0091\u0005\u0091\u0c2f\n\u0091\u0003\u0091\u0003",
- "\u0091\u0003\u0091\u0003\u0091\u0003\u0091\u0005\u0091\u0c36\n\u0091",
- "\u0005\u0091\u0c38\n\u0091\u0003\u0091\u0005\u0091\u0c3b\n\u0091\u0003",
- "\u0091\u0003\u0091\u0003\u0091\u0003\u0091\u0005\u0091\u0c41\n\u0091",
- "\u0003\u0091\u0005\u0091\u0c44\n\u0091\u0003\u0091\u0003\u0091\u0003",
- "\u0091\u0005\u0091\u0c49\n\u0091\u0003\u0091\u0005\u0091\u0c4c\n\u0091",
- "\u0003\u0091\u0003\u0091\u0003\u0091\u0005\u0091\u0c51\n\u0091\u0003",
- "\u0091\u0005\u0091\u0c54\n\u0091\u0003\u0091\u0003\u0091\u0003\u0091",
- "\u0005\u0091\u0c59\n\u0091\u0003\u0091\u0005\u0091\u0c5c\n\u0091\u0003",
- "\u0091\u0003\u0091\u0003\u0091\u0005\u0091\u0c61\n\u0091\u0003\u0092",
- "\u0005\u0092\u0c64\n\u0092\u0003\u0092\u0005\u0092\u0c67\n\u0092\u0003",
- "\u0092\u0005\u0092\u0c6a\n\u0092\u0003\u0092\u0003\u0092\u0003\u0092",
- "\u0003\u0092\u0003\u0092\u0005\u0092\u0c71\n\u0092\u0006\u0092\u0c73",
- "\n\u0092\r\u0092\u000e\u0092\u0c74\u0003\u0093\u0003\u0093\u0003\u0093",
- "\u0003\u0093\u0003\u0093\u0005\u0093\u0c7c\n\u0093\u0003\u0094\u0003",
- "\u0094\u0003\u0094\u0003\u0094\u0003\u0094\u0005\u0094\u0c83\n\u0094",
- "\u0003\u0094\u0003\u0094\u0003\u0094\u0003\u0094\u0005\u0094\u0c89\n",
- "\u0094\u0003\u0094\u0003\u0094\u0003\u0094\u0003\u0094\u0003\u0094\u0003",
- "\u0094\u0003\u0094\u0003\u0094\u0003\u0094\u0003\u0094\u0003\u0094\u0005",
- "\u0094\u0c96\n\u0094\u0003\u0094\u0003\u0094\u0005\u0094\u0c9a\n\u0094",
- "\u0003\u0094\u0003\u0094\u0003\u0094\u0005\u0094\u0c9f\n\u0094\u0003",
- "\u0094\u0003\u0094\u0003\u0094\u0003\u0094\u0003\u0094\u0003\u0094\u0003",
- "\u0094\u0003\u0094\u0005\u0094\u0ca9\n\u0094\u0003\u0094\u0003\u0094",
- "\u0003\u0094\u0003\u0094\u0003\u0094\u0003\u0094\u0003\u0094\u0005\u0094",
- "\u0cb2\n\u0094\u0003\u0094\u0003\u0094\u0005\u0094\u0cb6\n\u0094\u0003",
- "\u0095\u0003\u0095\u0003\u0095\u0003\u0095\u0003\u0095\u0003\u0095\u0003",
- "\u0095\u0003\u0095\u0003\u0095\u0003\u0095\u0005\u0095\u0cc2\n\u0095",
- "\u0003\u0095\u0003\u0095\u0003\u0095\u0003\u0095\u0005\u0095\u0cc8\n",
- "\u0095\u0003\u0095\u0003\u0095\u0003\u0095\u0006\u0095\u0ccd\n\u0095",
- "\r\u0095\u000e\u0095\u0cce\u0003\u0095\u0003\u0095\u0003\u0095\u0003",
- "\u0095\u0003\u0095\u0003\u0095\u0003\u0095\u0003\u0095\u0003\u0095\u0003",
- "\u0095\u0003\u0095\u0003\u0095\u0003\u0095\u0003\u0095\u0003\u0095\u0003",
- "\u0095\u0003\u0095\u0003\u0095\u0005\u0095\u0ce3\n\u0095\u0003\u0095",
- "\u0003\u0095\u0005\u0095\u0ce7\n\u0095\u0003\u0096\u0003\u0096\u0003",
- "\u0096\u0003\u0096\u0003\u0096\u0003\u0096\u0005\u0096\u0cef\n\u0096",
- "\u0003\u0096\u0003\u0096\u0003\u0096\u0003\u0096\u0003\u0096\u0003\u0096",
- "\u0003\u0096\u0005\u0096\u0cf8\n\u0096\u0003\u0096\u0003\u0096\u0003",
- "\u0096\u0003\u0096\u0005\u0096\u0cfe\n\u0096\u0003\u0096\u0003\u0096",
- "\u0003\u0096\u0003\u0096\u0005\u0096\u0d04\n\u0096\u0003\u0096\u0003",
- "\u0096\u0003\u0096\u0003\u0096\u0003\u0096\u0003\u0096\u0006\u0096\u0d0c",
- "\n\u0096\r\u0096\u000e\u0096\u0d0d\u0003\u0096\u0003\u0096\u0003\u0097",
- "\u0003\u0097\u0003\u0097\u0003\u0097\u0003\u0097\u0003\u0097\u0005\u0097",
- "\u0d18\n\u0097\u0003\u0097\u0003\u0097\u0005\u0097\u0d1c\n\u0097\u0003",
- "\u0097\u0005\u0097\u0d1f\n\u0097\u0003\u0097\u0003\u0097\u0005\u0097",
- "\u0d23\n\u0097\u0003\u0097\u0003\u0097\u0003\u0097\u0005\u0097\u0d28",
- "\n\u0097\u0003\u0097\u0003\u0097\u0003\u0097\u0003\u0097\u0005\u0097",
- "\u0d2e\n\u0097\u0003\u0097\u0005\u0097\u0d31\n\u0097\u0003\u0097\u0003",
- "\u0097\u0005\u0097\u0d35\n\u0097\u0003\u0097\u0003\u0097\u0003\u0097",
- "\u0003\u0097\u0003\u0097\u0003\u0097\u0006\u0097\u0d3d\n\u0097\r\u0097",
- "\u000e\u0097\u0d3e\u0003\u0097\u0005\u0097\u0d42\n\u0097\u0003\u0098",
- "\u0003\u0098\u0003\u0098\u0003\u0098\u0003\u0098\u0003\u0098\u0005\u0098",
- "\u0d4a\n\u0098\u0003\u0098\u0003\u0098\u0003\u0098\u0003\u0098\u0003",
- "\u0098\u0003\u0098\u0005\u0098\u0d52\n\u0098\u0003\u0098\u0003\u0098",
- "\u0003\u0098\u0003\u0098\u0003\u0098\u0005\u0098\u0d59\n\u0098\u0003",
- "\u0098\u0003\u0098\u0003\u0098\u0003\u0098\u0003\u0098\u0006\u0098\u0d60",
- "\n\u0098\r\u0098\u000e\u0098\u0d61\u0005\u0098\u0d64\n\u0098\u0003\u0098",
- "\u0003\u0098\u0003\u0098\u0005\u0098\u0d69\n\u0098\u0003\u0098\u0003",
- "\u0098\u0003\u0098\u0003\u0098\u0005\u0098\u0d6f\n\u0098\u0003\u0098",
- "\u0006\u0098\u0d72\n\u0098\r\u0098\u000e\u0098\u0d73\u0005\u0098\u0d76",
- "\n\u0098\u0003\u0098\u0005\u0098\u0d79\n\u0098\u0003\u0098\u0003\u0098",
- "\u0003\u0098\u0005\u0098\u0d7e\n\u0098\u0003\u0098\u0005\u0098\u0d81",
- "\n\u0098\u0003\u0098\u0003\u0098\u0003\u0098\u0005\u0098\u0d86\n\u0098",
- "\u0003\u0098\u0003\u0098\u0003\u0099\u0003\u0099\u0003\u0099\u0003\u0099",
- "\u0003\u0099\u0003\u0099\u0003\u0099\u0003\u0099\u0003\u0099\u0003\u0099",
- "\u0003\u0099\u0005\u0099\u0d95\n\u0099\u0003\u0099\u0003\u0099\u0003",
- "\u0099\u0003\u0099\u0003\u0099\u0005\u0099\u0d9c\n\u0099\u0003\u0099",
- "\u0003\u0099\u0003\u0099\u0003\u0099\u0003\u0099\u0006\u0099\u0da3\n",
- "\u0099\r\u0099\u000e\u0099\u0da4\u0005\u0099\u0da7\n\u0099\u0003\u0099",
- "\u0003\u0099\u0003\u0099\u0005\u0099\u0dac\n\u0099\u0003\u0099\u0003",
- "\u0099\u0003\u0099\u0003\u0099\u0005\u0099\u0db2\n\u0099\u0003\u0099",
- "\u0006\u0099\u0db5\n\u0099\r\u0099\u000e\u0099\u0db6\u0005\u0099\u0db9",
- "\n\u0099\u0003\u0099\u0005\u0099\u0dbc\n\u0099\u0003\u0099\u0003\u0099",
- "\u0003\u0099\u0005\u0099\u0dc1\n\u0099\u0003\u0099\u0005\u0099\u0dc4",
- "\n\u0099\u0003\u0099\u0003\u0099\u0003\u0099\u0005\u0099\u0dc9\n\u0099",
- "\u0003\u0099\u0003\u0099\u0003\u009a\u0003\u009a\u0003\u009a\u0003\u009a",
- "\u0003\u009a\u0003\u009a\u0003\u009a\u0003\u009a\u0003\u009a\u0005\u009a",
- "\u0dd6\n\u009a\u0003\u009a\u0003\u009a\u0003\u009a\u0005\u009a\u0ddb",
- "\n\u009a\u0003\u009b\u0003\u009b\u0003\u009b\u0003\u009b\u0003\u009b",
- "\u0003\u009b\u0003\u009b\u0005\u009b\u0de4\n\u009b\u0003\u009b\u0003",
- "\u009b\u0003\u009b\u0005\u009b\u0de9\n\u009b\u0003\u009b\u0003\u009b",
- "\u0003\u009b\u0003\u009b\u0005\u009b\u0def\n\u009b\u0003\u009b\u0003",
- "\u009b\u0005\u009b\u0df3\n\u009b\u0003\u009b\u0003\u009b\u0005\u009b",
- "\u0df7\n\u009b\u0003\u009c\u0003\u009c\u0003\u009c\u0003\u009c\u0003",
- "\u009c\u0003\u009c\u0003\u009c\u0003\u009c\u0003\u009c\u0003\u009c\u0003",
- "\u009c\u0003\u009c\u0003\u009c\u0003\u009c\u0003\u009c\u0005\u009c\u0e08",
- "\n\u009c\u0005\u009c\u0e0a\n\u009c\u0003\u009d\u0003\u009d\u0003\u009d",
- "\u0003\u009d\u0003\u009d\u0003\u009d\u0003\u009d\u0003\u009d\u0005\u009d",
- "\u0e14\n\u009d\u0003\u009d\u0003\u009d\u0003\u009d\u0005\u009d\u0e19",
- "\n\u009d\u0005\u009d\u0e1b\n\u009d\u0003\u009d\u0003\u009d\u0005\u009d",
- "\u0e1f\n\u009d\u0003\u009e\u0003\u009e\u0003\u009e\u0003\u009e\u0005",
- "\u009e\u0e25\n\u009e\u0003\u009e\u0003\u009e\u0003\u009e\u0003\u009e",
- "\u0003\u009e\u0003\u009e\u0005\u009e\u0e2d\n\u009e\u0003\u009e\u0007",
- "\u009e\u0e30\n\u009e\f\u009e\u000e\u009e\u0e33\u000b\u009e\u0005\u009e",
- "\u0e35\n\u009e\u0003\u009e\u0003\u009e\u0003\u009e\u0003\u009e\u0007",
- "\u009e\u0e3b\n\u009e\f\u009e\u000e\u009e\u0e3e\u000b\u009e\u0005\u009e",
- "\u0e40\n\u009e\u0003\u009e\u0003\u009e\u0003\u009e\u0005\u009e\u0e45",
- "\n\u009e\u0003\u009e\u0003\u009e\u0003\u009e\u0005\u009e\u0e4a\n\u009e",
- "\u0003\u009e\u0003\u009e\u0003\u009e\u0005\u009e\u0e4f\n\u009e\u0003",
- "\u009e\u0003\u009e\u0003\u009e\u0005\u009e\u0e54\n\u009e\u0003\u009e",
- "\u0003\u009e\u0003\u009e\u0005\u009e\u0e59\n\u009e\u0003\u009e\u0003",
- "\u009e\u0003\u009e\u0005\u009e\u0e5e\n\u009e\u0003\u009e\u0003\u009e",
- "\u0005\u009e\u0e62\n\u009e\u0003\u009e\u0003\u009e\u0003\u009e\u0005",
- "\u009e\u0e67\n\u009e\u0003\u009f\u0003\u009f\u0003\u009f\u0003\u009f",
- "\u0003\u009f\u0003\u009f\u0003\u009f\u0003\u009f\u0003\u009f\u0005\u009f",
- "\u0e72\n\u009f\u0003\u009f\u0007\u009f\u0e75\n\u009f\f\u009f\u000e\u009f",
- "\u0e78\u000b\u009f\u0005\u009f\u0e7a\n\u009f\u0003\u009f\u0005\u009f",
- "\u0e7d\n\u009f\u0003\u009f\u0003\u009f\u0003\u009f\u0005\u009f\u0e82",
- "\n\u009f\u0003\u009f\u0005\u009f\u0e85\n\u009f\u0003\u009f\u0003\u009f",
- "\u0003\u009f\u0005\u009f\u0e8a\n\u009f\u0003\u009f\u0005\u009f\u0e8d",
- "\n\u009f\u0003\u009f\u0003\u009f\u0003\u009f\u0005\u009f\u0e92\n\u009f",
- "\u0003\u009f\u0005\u009f\u0e95\n\u009f\u0003\u009f\u0003\u009f\u0003",
- "\u009f\u0005\u009f\u0e9a\n\u009f\u0003\u009f\u0005\u009f\u0e9d\n\u009f",
- "\u0003\u009f\u0003\u009f\u0003\u009f\u0005\u009f\u0ea2\n\u009f\u0003",
- "\u009f\u0005\u009f\u0ea5\n\u009f\u0003\u009f\u0003\u009f\u0003\u009f",
- "\u0005\u009f\u0eaa\n\u009f\u0003\u009f\u0003\u009f\u0003\u009f\u0003",
- "\u009f\u0005\u009f\u0eb0\n\u009f\u0003\u009f\u0003\u009f\u0003\u009f",
- "\u0005\u009f\u0eb5\n\u009f\u0003\u009f\u0005\u009f\u0eb8\n\u009f\u0003",
- "\u009f\u0003\u009f\u0003\u009f\u0005\u009f\u0ebd\n\u009f\u0003\u009f",
- "\u0003\u009f\u0003\u009f\u0003\u009f\u0003\u009f\u0005\u009f\u0ec4\n",
- "\u009f\u0005\u009f\u0ec6\n\u009f\u0003\u00a0\u0003\u00a0\u0003\u00a0",
- "\u0003\u00a0\u0005\u00a0\u0ecc\n\u00a0\u0003\u00a0\u0003\u00a0\u0003",
- "\u00a0\u0003\u00a0\u0003\u00a0\u0003\u00a0\u0003\u00a0\u0005\u00a0\u0ed5",
- "\n\u00a0\u0003\u00a0\u0003\u00a0\u0003\u00a0\u0005\u00a0\u0eda\n\u00a0",
- "\u0005\u00a0\u0edc\n\u00a0\u0003\u00a1\u0003\u00a1\u0003\u00a1\u0003",
- "\u00a1\u0003\u00a1\u0003\u00a1\u0003\u00a1\u0003\u00a1\u0003\u00a1\u0003",
- "\u00a1\u0005\u00a1\u0ee8\n\u00a1\u0003\u00a2\u0003\u00a2\u0003\u00a2",
- "\u0003\u00a2\u0005\u00a2\u0eee\n\u00a2\u0003\u00a2\u0003\u00a2\u0003",
- "\u00a2\u0003\u00a2\u0003\u00a2\u0003\u00a2\u0003\u00a2\u0003\u00a2\u0007",
- "\u00a2\u0ef8\n\u00a2\f\u00a2\u000e\u00a2\u0efb\u000b\u00a2\u0005\u00a2",
- "\u0efd\n\u00a2\u0003\u00a2\u0003\u00a2\u0003\u00a2\u0005\u00a2\u0f02",
- "\n\u00a2\u0005\u00a2\u0f04\n\u00a2\u0003\u00a3\u0003\u00a3\u0003\u00a3",
- "\u0003\u00a3\u0003\u00a3\u0003\u00a3\u0003\u00a3\u0003\u00a3\u0005\u00a3",
- "\u0f0e\n\u00a3\u0003\u00a3\u0003\u00a3\u0003\u00a3\u0005\u00a3\u0f13",
- "\n\u00a3\u0005\u00a3\u0f15\n\u00a3\u0003\u00a3\u0003\u00a3\u0005\u00a3",
- "\u0f19\n\u00a3\u0003\u00a4\u0003\u00a4\u0003\u00a4\u0003\u00a4\u0005",
- "\u00a4\u0f1f\n\u00a4\u0003\u00a4\u0003\u00a4\u0003\u00a4\u0003\u00a4",
- "\u0003\u00a4\u0003\u00a4\u0003\u00a4\u0003\u00a4\u0003\u00a4\u0003\u00a4",
- "\u0003\u00a4\u0003\u00a4\u0003\u00a4\u0003\u00a4\u0003\u00a4\u0003\u00a4",
- "\u0005\u00a4\u0f31\n\u00a4\u0005\u00a4\u0f33\n\u00a4\u0003\u00a5\u0003",
- "\u00a5\u0003\u00a5\u0003\u00a5\u0003\u00a5\u0003\u00a5\u0003\u00a5\u0003",
- "\u00a5\u0003\u00a5\u0003\u00a6\u0003\u00a6\u0003\u00a6\u0003\u00a6\u0005",
- "\u00a6\u0f42\n\u00a6\u0003\u00a6\u0003\u00a6\u0003\u00a6\u0003\u00a6",
- "\u0003\u00a6\u0003\u00a6\u0003\u00a6\u0003\u00a6\u0003\u00a6\u0003\u00a6",
- "\u0003\u00a6\u0003\u00a6\u0003\u00a6\u0003\u00a6\u0003\u00a6\u0003\u00a6",
- "\u0005\u00a6\u0f54\n\u00a6\u0003\u00a6\u0003\u00a6\u0003\u00a6\u0003",
- "\u00a6\u0003\u00a6\u0003\u00a6\u0005\u00a6\u0f5c\n\u00a6\u0003\u00a7",
- "\u0003\u00a7\u0003\u00a7\u0003\u00a7\u0003\u00a7\u0003\u00a7\u0003\u00a7",
- "\u0003\u00a7\u0005\u00a7\u0f66\n\u00a7\u0003\u00a8\u0003\u00a8\u0003",
- "\u00a8\u0003\u00a8\u0003\u00a8\u0003\u00a8\u0003\u00a8\u0003\u00a8\u0003",
- "\u00a8\u0003\u00a8\u0003\u00a8\u0003\u00a8\u0003\u00a8\u0003\u00a8\u0005",
- "\u00a8\u0f76\n\u00a8\u0003\u00a9\u0003\u00a9\u0003\u00a9\u0003\u00a9",
- "\u0003\u00a9\u0003\u00a9\u0003\u00a9\u0003\u00a9\u0003\u00a9\u0003\u00a9",
- "\u0003\u00a9\u0003\u00a9\u0003\u00aa\u0003\u00aa\u0003\u00aa\u0003\u00aa",
- "\u0003\u00aa\u0003\u00aa\u0003\u00aa\u0005\u00aa\u0f8b\n\u00aa\u0003",
- "\u00ab\u0003\u00ab\u0003\u00ab\u0003\u00ab\u0003\u00ab\u0003\u00ab\u0003",
- "\u00ab\u0003\u00ab\u0003\u00ab\u0005\u00ab\u0f96\n\u00ab\u0003\u00ab",
- "\u0003\u00ab\u0003\u00ab\u0003\u00ab\u0005\u00ab\u0f9c\n\u00ab\u0003",
- "\u00ac\u0003\u00ac\u0003\u00ac\u0003\u00ac\u0003\u00ac\u0003\u00ac\u0003",
- "\u00ac\u0005\u00ac\u0fa5\n\u00ac\u0003\u00ac\u0003\u00ac\u0003\u00ac",
- "\u0003\u00ac\u0003\u00ac\u0003\u00ac\u0003\u00ac\u0005\u00ac\u0fae\n",
- "\u00ac\u0003\u00ac\u0003\u00ac\u0003\u00ac\u0003\u00ac\u0005\u00ac\u0fb4",
- "\n\u00ac\u0003\u00ad\u0003\u00ad\u0003\u00ad\u0003\u00ad\u0003\u00ad",
- "\u0003\u00ad\u0003\u00ad\u0005\u00ad\u0fbd\n\u00ad\u0003\u00ad\u0003",
- "\u00ad\u0003\u00ad\u0005\u00ad\u0fc2\n\u00ad\u0003\u00ad\u0005\u00ad",
- "\u0fc5\n\u00ad\u0003\u00ad\u0003\u00ad\u0003\u00ad\u0005\u00ad\u0fca",
- "\n\u00ad\u0003\u00ad\u0005\u00ad\u0fcd\n\u00ad\u0003\u00ad\u0003\u00ad",
- "\u0003\u00ad\u0005\u00ad\u0fd2\n\u00ad\u0003\u00ad\u0005\u00ad\u0fd5",
- "\n\u00ad\u0003\u00ad\u0003\u00ad\u0003\u00ad\u0003\u00ad\u0003\u00ad",
- "\u0003\u00ad\u0005\u00ad\u0fdd\n\u00ad\u0003\u00ad\u0003\u00ad\u0003",
- "\u00ad\u0003\u00ad\u0005\u00ad\u0fe3\n\u00ad\u0006\u00ad\u0fe5\n\u00ad",
- "\r\u00ad\u000e\u00ad\u0fe6\u0003\u00ad\u0003\u00ad\u0003\u00ad\u0003",
- "\u00ad\u0003\u00ad\u0005\u00ad\u0fee\n\u00ad\u0003\u00ad\u0003\u00ad",
- "\u0003\u00ad\u0003\u00ad\u0005\u00ad\u0ff4\n\u00ad\u0006\u00ad\u0ff6",
- "\n\u00ad\r\u00ad\u000e\u00ad\u0ff7\u0003\u00ad\u0005\u00ad\u0ffb\n\u00ad",
- "\u0005\u00ad\u0ffd\n\u00ad\u0003\u00ad\u0005\u00ad\u1000\n\u00ad\u0003",
- "\u00ad\u0003\u00ad\u0003\u00ad\u0005\u00ad\u1005\n\u00ad\u0003\u00ad",
- "\u0005\u00ad\u1008\n\u00ad\u0003\u00ad\u0003\u00ad\u0003\u00ad\u0005",
- "\u00ad\u100d\n\u00ad\u0003\u00ad\u0005\u00ad\u1010\n\u00ad\u0003\u00ad",
- "\u0003\u00ad\u0003\u00ad\u0005\u00ad\u1015\n\u00ad\u0003\u00ad\u0005",
- "\u00ad\u1018\n\u00ad\u0003\u00ad\u0003\u00ad\u0003\u00ad\u0005\u00ad",
- "\u101d\n\u00ad\u0003\u00ad\u0005\u00ad\u1020\n\u00ad\u0003\u00ae\u0003",
- "\u00ae\u0003\u00ae\u0003\u00ae\u0003\u00ae\u0003\u00ae\u0003\u00ae\u0003",
- "\u00ae\u0003\u00ae\u0003\u00ae\u0003\u00ae\u0003\u00ae\u0003\u00ae\u0005",
- "\u00ae\u102f\n\u00ae\u0003\u00ae\u0003\u00ae\u0003\u00ae\u0003\u00ae",
- "\u0003\u00ae\u0003\u00ae\u0003\u00ae\u0003\u00ae\u0003\u00ae\u0005\u00ae",
- "\u103a\n\u00ae\u0003\u00af\u0003\u00af\u0003\u00af\u0003\u00af\u0003",
- "\u00af\u0003\u00af\u0003\u00af\u0003\u00af\u0003\u00af\u0003\u00af\u0005",
- "\u00af\u1046\n\u00af\u0003\u00b0\u0003\u00b0\u0003\u00b0\u0003\u00b0",
- "\u0003\u00b0\u0005\u00b0\u104d\n\u00b0\u0003\u00b1\u0003\u00b1\u0003",
- "\u00b1\u0003\u00b1\u0003\u00b1\u0005\u00b1\u1054\n\u00b1\u0003\u00b1",
- "\u0003\u00b1\u0005\u00b1\u1058\n\u00b1\u0003\u00b1\u0003\u00b1\u0003",
- "\u00b1\u0005\u00b1\u105d\n\u00b1\u0003\u00b1\u0005\u00b1\u1060\n\u00b1",
- "\u0003\u00b1\u0003\u00b1\u0003\u00b1\u0005\u00b1\u1065\n\u00b1\u0003",
- "\u00b1\u0005\u00b1\u1068\n\u00b1\u0003\u00b1\u0003\u00b1\u0003\u00b1",
- "\u0005\u00b1\u106d\n\u00b1\u0003\u00b1\u0005\u00b1\u1070\n\u00b1\u0003",
- "\u00b1\u0003\u00b1\u0003\u00b1\u0003\u00b1\u0003\u00b1\u0003\u00b1\u0003",
- "\u00b1\u0005\u00b1\u1079\n\u00b1\u0003\u00b2\u0003\u00b2\u0003\u00b2",
- "\u0003\u00b2\u0003\u00b2\u0005\u00b2\u1080\n\u00b2\u0003\u00b2\u0003",
- "\u00b2\u0003\u00b2\u0003\u00b2\u0003\u00b3\u0003\u00b3\u0003\u00b3\u0003",
- "\u00b3\u0003\u00b3\u0003\u00b3\u0003\u00b3\u0003\u00b3\u0003\u00b3\u0005",
- "\u00b3\u108f\n\u00b3\u0003\u00b3\u0003\u00b3\u0005\u00b3\u1093\n\u00b3",
- "\u0003\u00b3\u0003\u00b3\u0003\u00b3\u0005\u00b3\u1098\n\u00b3\u0003",
- "\u00b4\u0003\u00b4\u0003\u00b4\u0003\u00b4\u0003\u00b4\u0003\u00b4\u0003",
- "\u00b4\u0003\u00b4\u0003\u00b4\u0005\u00b4\u10a3\n\u00b4\u0003\u00b4",
- "\u0003\u00b4\u0003\u00b4\u0003\u00b4\u0003\u00b4\u0003\u00b4\u0003\u00b4",
- "\u0003\u00b4\u0005\u00b4\u10ad\n\u00b4\u0003\u00b4\u0003\u00b4\u0003",
- "\u00b4\u0003\u00b4\u0003\u00b4\u0003\u00b4\u0003\u00b4\u0003\u00b4\u0003",
- "\u00b4\u0003\u00b4\u0005\u00b4\u10b9\n\u00b4\u0003\u00b4\u0003\u00b4",
- "\u0003\u00b4\u0003\u00b4\u0007\u00b4\u10bf\n\u00b4\f\u00b4\u000e\u00b4",
- "\u10c2\u000b\u00b4\u0003\u00b5\u0003\u00b5\u0003\u00b5\u0003\u00b5\u0003",
- "\u00b5\u0005\u00b5\u10c9\n\u00b5\u0003\u00b6\u0003\u00b6\u0003\u00b6",
- "\u0003\u00b6\u0003\u00b6\u0003\u00b6\u0003\u00b6\u0005\u00b6\u10d2\n",
- "\u00b6\u0003\u00b6\u0003\u00b6\u0003\u00b6\u0005\u00b6\u10d7\n\u00b6",
- "\u0003\u00b7\u0003\u00b7\u0003\u00b7\u0003\u00b7\u0003\u00b7\u0003\u00b7",
- "\u0003\u00b7\u0003\u00b7\u0003\u00b7\u0005\u00b7\u10e2\n\u00b7\u0003",
- "\u00b7\u0005\u00b7\u10e5\n\u00b7\u0003\u00b7\u0003\u00b7\u0005\u00b7",
- "\u10e9\n\u00b7\u0003\u00b8\u0003\u00b8\u0003\u00b8\u0003\u00b8\u0003",
- "\u00b8\u0003\u00b8\u0005\u00b8\u10f1\n\u00b8\u0003\u00b8\u0003\u00b8",
- "\u0005\u00b8\u10f5\n\u00b8\u0003\u00b8\u0003\u00b8\u0005\u00b8\u10f9",
- "\n\u00b8\u0003\u00b8\u0003\u00b8\u0003\u00b8\u0003\u00b8\u0003\u00b8",
- "\u0003\u00b8\u0005\u00b8\u1101\n\u00b8\u0003\u00b8\u0006\u00b8\u1104",
- "\n\u00b8\r\u00b8\u000e\u00b8\u1105\u0003\u00b8\u0003\u00b8\u0003\u00b8",
- "\u0003\u00b8\u0003\u00b8\u0003\u00b8\u0005\u00b8\u110e\n\u00b8\u0003",
- "\u00b8\u0003\u00b8\u0003\u00b8\u0005\u00b8\u1113\n\u00b8\u0003\u00b8",
- "\u0003\u00b8\u0007\u00b8\u1117\n\u00b8\f\u00b8\u000e\u00b8\u111a\u000b",
- "\u00b8\u0006\u00b8\u111c\n\u00b8\r\u00b8\u000e\u00b8\u111d\u0003\u00b8",
- "\u0003\u00b8\u0003\u00b8\u0003\u00b8\u0003\u00b8\u0003\u00b8\u0003\u00b8",
- "\u0005\u00b8\u1127\n\u00b8\u0003\u00b8\u0005\u00b8\u112a\n\u00b8\u0003",
- "\u00b8\u0003\u00b8\u0003\u00b8\u0005\u00b8\u112f\n\u00b8\u0003\u00b9",
- "\u0003\u00b9\u0003\u00b9\u0003\u00b9\u0003\u00b9\u0005\u00b9\u1136\n",
- "\u00b9\u0003\u00b9\u0003\u00b9\u0003\u00b9\u0003\u00b9\u0005\u00b9\u113c",
- "\n\u00b9\u0005\u00b9\u113e\n\u00b9\u0003\u00b9\u0003\u00b9\u0003\u00b9",
- "\u0005\u00b9\u1143\n\u00b9\u0003\u00b9\u0003\u00b9\u0003\u00b9\u0003",
- "\u00b9\u0005\u00b9\u1149\n\u00b9\u0003\u00b9\u0003\u00b9\u0003\u00b9",
- "\u0003\u00b9\u0005\u00b9\u114f\n\u00b9\u0003\u00b9\u0003\u00b9\u0003",
- "\u00b9\u0005\u00b9\u1154\n\u00b9\u0003\u00b9\u0003\u00b9\u0003\u00b9",
- "\u0003\u00b9\u0005\u00b9\u115a\n\u00b9\u0003\u00ba\u0003\u00ba\u0003",
- "\u00ba\u0003\u00ba\u0003\u00ba\u0005\u00ba\u1161\n\u00ba\u0003\u00ba",
- "\u0003\u00ba\u0003\u00ba\u0005\u00ba\u1166\n\u00ba\u0003\u00ba\u0003",
- "\u00ba\u0003\u00ba\u0005\u00ba\u116b\n\u00ba\u0003\u00ba\u0003\u00ba",
- "\u0003\u00ba\u0005\u00ba\u1170\n\u00ba\u0003\u00ba\u0005\u00ba\u1173",
- "\n\u00ba\u0003\u00ba\u0003\u00ba\u0005\u00ba\u1177\n\u00ba\u0003\u00ba",
- "\u0003\u00ba\u0005\u00ba\u117b\n\u00ba\u0003\u00ba\u0003\u00ba\u0005",
- "\u00ba\u117f\n\u00ba\u0003\u00ba\u0003\u00ba\u0005\u00ba\u1183\n\u00ba",
- "\u0003\u00ba\u0003\u00ba\u0003\u00ba\u0005\u00ba\u1188\n\u00ba\u0003",
- "\u00ba\u0003\u00ba\u0005\u00ba\u118c\n\u00ba\u0003\u00ba\u0003\u00ba",
- "\u0005\u00ba\u1190\n\u00ba\u0003\u00bb\u0003\u00bb\u0003\u00bb\u0003",
- "\u00bb\u0003\u00bb\u0003\u00bb\u0003\u00bb\u0003\u00bb\u0005\u00bb\u119a",
- "\n\u00bb\u0003\u00bb\u0003\u00bb\u0003\u00bb\u0003\u00bb\u0005\u00bb",
- "\u11a0\n\u00bb\u0003\u00bb\u0003\u00bb\u0003\u00bb\u0003\u00bb\u0003",
- "\u00bb\u0005\u00bb\u11a7\n\u00bb\u0003\u00bb\u0005\u00bb\u11aa\n\u00bb",
- "\u0003\u00bb\u0003\u00bb\u0003\u00bb\u0003\u00bb\u0005\u00bb\u11b0\n",
- "\u00bb\u0003\u00bb\u0003\u00bb\u0003\u00bb\u0003\u00bb\u0005\u00bb\u11b6",
- "\n\u00bb\u0003\u00bb\u0003\u00bb\u0003\u00bb\u0007\u00bb\u11bb\n\u00bb",
- "\f\u00bb\u000e\u00bb\u11be\u000b\u00bb\u0003\u00bb\u0003\u00bb\u0003",
- "\u00bb\u0005\u00bb\u11c3\n\u00bb\u0005\u00bb\u11c5\n\u00bb\u0003\u00bb",
- "\u0003\u00bb\u0003\u00bb\u0005\u00bb\u11ca\n\u00bb\u0003\u00bb\u0003",
- "\u00bb\u0003\u00bb\u0003\u00bb\u0005\u00bb\u11d0\n\u00bb\u0003\u00bb",
- "\u0003\u00bb\u0003\u00bb\u0003\u00bb\u0005\u00bb\u11d6\n\u00bb\u0003",
- "\u00bb\u0003\u00bb\u0003\u00bb\u0007\u00bb\u11db\n\u00bb\f\u00bb\u000e",
- "\u00bb\u11de\u000b\u00bb\u0003\u00bb\u0005\u00bb\u11e1\n\u00bb\u0003",
- "\u00bb\u0003\u00bb\u0005\u00bb\u11e5\n\u00bb\u0003\u00bb\u0005\u00bb",
- "\u11e8\n\u00bb\u0003\u00bb\u0003\u00bb\u0003\u00bb\u0003\u00bb\u0003",
- "\u00bb\u0003\u00bb\u0003\u00bb\u0003\u00bb\u0003\u00bb\u0003\u00bb\u0003",
- "\u00bb\u0003\u00bb\u0005\u00bb\u11f6\n\u00bb\u0003\u00bb\u0003\u00bb",
- "\u0003\u00bb\u0005\u00bb\u11fb\n\u00bb\u0003\u00bb\u0003\u00bb\u0005",
- "\u00bb\u11ff\n\u00bb\u0003\u00bb\u0003\u00bb\u0003\u00bb\u0003\u00bb",
- "\u0003\u00bb\u0003\u00bb\u0003\u00bb\u0003\u00bb\u0003\u00bb\u0003\u00bb",
- "\u0003\u00bb\u0005\u00bb\u120c\n\u00bb\u0003\u00bb\u0005\u00bb\u120f",
- "\n\u00bb\u0005\u00bb\u1211\n\u00bb\u0003\u00bb\u0003\u00bb\u0003\u00bb",
- "\u0003\u00bb\u0003\u00bb\u0003\u00bb\u0005\u00bb\u1219\n\u00bb\u0003",
- "\u00bc\u0003\u00bc\u0003\u00bc\u0003\u00bc\u0003\u00bc\u0003\u00bc\u0003",
- "\u00bc\u0003\u00bc\u0005\u00bc\u1223\n\u00bc\u0003\u00bc\u0003\u00bc",
- "\u0003\u00bc\u0003\u00bc\u0005\u00bc\u1229\n\u00bc\u0003\u00bc\u0003",
- "\u00bc\u0003\u00bc\u0003\u00bc\u0003\u00bc\u0005\u00bc\u1230\n\u00bc",
- "\u0003\u00bc\u0005\u00bc\u1233\n\u00bc\u0003\u00bc\u0003\u00bc\u0003",
- "\u00bc\u0003\u00bc\u0005\u00bc\u1239\n\u00bc\u0003\u00bc\u0003\u00bc",
- "\u0003\u00bc\u0003\u00bc\u0005\u00bc\u123f\n\u00bc\u0003\u00bc\u0003",
- "\u00bc\u0003\u00bc\u0007\u00bc\u1244\n\u00bc\f\u00bc\u000e\u00bc\u1247",
- "\u000b\u00bc\u0003\u00bc\u0003\u00bc\u0003\u00bc\u0005\u00bc\u124c\n",
- "\u00bc\u0005\u00bc\u124e\n\u00bc\u0003\u00bc\u0003\u00bc\u0003\u00bc",
- "\u0005\u00bc\u1253\n\u00bc\u0003\u00bc\u0003\u00bc\u0003\u00bc\u0003",
- "\u00bc\u0005\u00bc\u1259\n\u00bc\u0003\u00bc\u0003\u00bc\u0003\u00bc",
- "\u0003\u00bc\u0005\u00bc\u125f\n\u00bc\u0003\u00bc\u0003\u00bc\u0003",
- "\u00bc\u0003\u00bc\u0005\u00bc\u1265\n\u00bc\u0003\u00bc\u0003\u00bc",
- "\u0003\u00bc\u0007\u00bc\u126a\n\u00bc\f\u00bc\u000e\u00bc\u126d\u000b",
- "\u00bc\u0003\u00bc\u0005\u00bc\u1270\n\u00bc\u0003\u00bc\u0003\u00bc",
- "\u0005\u00bc\u1274\n\u00bc\u0003\u00bc\u0005\u00bc\u1277\n\u00bc\u0003",
- "\u00bc\u0003\u00bc\u0003\u00bc\u0003\u00bc\u0003\u00bc\u0003\u00bc\u0003",
- "\u00bc\u0003\u00bc\u0003\u00bc\u0003\u00bc\u0003\u00bc\u0003\u00bc\u0005",
- "\u00bc\u1285\n\u00bc\u0003\u00bc\u0003\u00bc\u0003\u00bc\u0005\u00bc",
- "\u128a\n\u00bc\u0003\u00bc\u0003\u00bc\u0005\u00bc\u128e\n\u00bc\u0003",
- "\u00bc\u0003\u00bc\u0003\u00bc\u0003\u00bc\u0003\u00bc\u0003\u00bc\u0003",
- "\u00bc\u0003\u00bc\u0003\u00bc\u0003\u00bc\u0003\u00bc\u0005\u00bc\u129b",
- "\n\u00bc\u0003\u00bc\u0005\u00bc\u129e\n\u00bc\u0005\u00bc\u12a0\n\u00bc",
- "\u0003\u00bc\u0003\u00bc\u0003\u00bc\u0003\u00bc\u0003\u00bc\u0003\u00bc",
- "\u0005\u00bc\u12a8\n\u00bc\u0003\u00bd\u0003\u00bd\u0003\u00bd\u0003",
- "\u00bd\u0003\u00bd\u0003\u00bd\u0003\u00bd\u0003\u00bd\u0003\u00bd\u0005",
- "\u00bd\u12b3\n\u00bd\u0003\u00bd\u0003\u00bd\u0003\u00bd\u0003\u00bd",
- "\u0003\u00bd\u0007\u00bd\u12ba\n\u00bd\f\u00bd\u000e\u00bd\u12bd\u000b",
- "\u00bd\u0003\u00bd\u0003\u00bd\u0003\u00bd\u0003\u00bd\u0003\u00bd\u0003",
- "\u00bd\u0005\u00bd\u12c5\n\u00bd\u0003\u00be\u0003\u00be\u0003\u00be",
- "\u0003\u00be\u0003\u00be\u0003\u00be\u0003\u00be\u0003\u00be\u0003\u00be",
- "\u0005\u00be\u12d0\n\u00be\u0003\u00be\u0003\u00be\u0003\u00be\u0003",
- "\u00be\u0003\u00be\u0007\u00be\u12d7\n\u00be\f\u00be\u000e\u00be\u12da",
- "\u000b\u00be\u0003\u00be\u0003\u00be\u0003\u00be\u0003\u00be\u0003\u00be",
- "\u0003\u00be\u0005\u00be\u12e2\n\u00be\u0003\u00bf\u0003\u00bf\u0003",
- "\u00bf\u0003\u00bf\u0003\u00bf\u0003\u00bf\u0003\u00bf\u0003\u00bf\u0003",
- "\u00bf\u0003\u00bf\u0005\u00bf\u12ee\n\u00bf\u0003\u00bf\u0003\u00bf",
- "\u0005\u00bf\u12f2\n\u00bf\u0003\u00bf\u0003\u00bf\u0003\u00bf\u0006",
- "\u00bf\u12f7\n\u00bf\r\u00bf\u000e\u00bf\u12f8\u0005\u00bf\u12fb\n\u00bf",
- "\u0003\u00bf\u0003\u00bf\u0003\u00bf\u0005\u00bf\u1300\n\u00bf\u0003",
- "\u00bf\u0003\u00bf\u0005\u00bf\u1304\n\u00bf\u0003\u00bf\u0003\u00bf",
- "\u0003\u00bf\u0006\u00bf\u1309\n\u00bf\r\u00bf\u000e\u00bf\u130a\u0005",
- "\u00bf\u130d\n\u00bf\u0003\u00bf\u0003\u00bf\u0003\u00bf\u0003\u00bf",
- "\u0003\u00bf\u0003\u00bf\u0003\u00bf\u0003\u00bf\u0003\u00bf\u0003\u00bf",
- "\u0003\u00bf\u0003\u00bf\u0005\u00bf\u131b\n\u00bf\u0003\u00bf\u0003",
- "\u00bf\u0003\u00bf\u0005\u00bf\u1320\n\u00bf\u0003\u00bf\u0003\u00bf",
- "\u0003\u00bf\u0003\u00bf\u0003\u00bf\u0003\u00bf\u0003\u00bf\u0003\u00bf",
- "\u0003\u00bf\u0003\u00bf\u0003\u00bf\u0003\u00bf\u0003\u00bf\u0003\u00bf",
- "\u0003\u00bf\u0003\u00bf\u0003\u00bf\u0003\u00bf\u0003\u00bf\u0003\u00bf",
- "\u0005\u00bf\u1336\n\u00bf\u0003\u00bf\u0003\u00bf\u0003\u00bf\u0003",
- "\u00bf\u0003\u00bf\u0003\u00bf\u0003\u00bf\u0003\u00bf\u0003\u00bf\u0003",
- "\u00bf\u0003\u00bf\u0003\u00bf\u0003\u00bf\u0003\u00bf\u0003\u00bf\u0003",
- "\u00bf\u0003\u00bf\u0003\u00bf\u0003\u00bf\u0003\u00bf\u0005\u00bf\u134c",
- "\n\u00bf\u0003\u00bf\u0003\u00bf\u0003\u00bf\u0005\u00bf\u1351\n\u00bf",
- "\u0003\u00c0\u0003\u00c0\u0003\u00c0\u0003\u00c0\u0003\u00c0\u0003\u00c0",
- "\u0003\u00c0\u0003\u00c0\u0003\u00c0\u0003\u00c0\u0003\u00c0\u0005\u00c0",
- "\u135e\n\u00c0\u0003\u00c1\u0003\u00c1\u0003\u00c1\u0003\u00c1\u0003",
- "\u00c1\u0003\u00c1\u0005\u00c1\u1366\n\u00c1\u0003\u00c2\u0003\u00c2",
- "\u0003\u00c2\u0003\u00c2\u0003\u00c2\u0003\u00c2\u0003\u00c2\u0003\u00c2",
- "\u0003\u00c3\u0003\u00c3\u0003\u00c3\u0003\u00c3\u0003\u00c3\u0003\u00c3",
- "\u0003\u00c3\u0003\u00c3\u0003\u00c3\u0003\u00c3\u0005\u00c3\u137a\n",
- "\u00c3\u0003\u00c3\u0005\u00c3\u137d\n\u00c3\u0003\u00c3\u0003\u00c3",
- "\u0007\u00c3\u1381\n\u00c3\f\u00c3\u000e\u00c3\u1384\u000b\u00c3\u0003",
- "\u00c4\u0003\u00c4\u0003\u00c4\u0003\u00c4\u0003\u00c4\u0005\u00c4\u138b",
- "\n\u00c4\u0003\u00c4\u0003\u00c4\u0003\u00c4\u0003\u00c4\u0003\u00c4",
- "\u0005\u00c4\u1392\n\u00c4\u0003\u00c4\u0003\u00c4\u0003\u00c4\u0005",
- "\u00c4\u1397\n\u00c4\u0003\u00c4\u0003\u00c4\u0005\u00c4\u139b\n\u00c4",
- "\u0006\u00c4\u139d\n\u00c4\r\u00c4\u000e\u00c4\u139e\u0003\u00c4\u0005",
- "\u00c4\u13a2\n\u00c4\u0003\u00c5\u0003\u00c5\u0003\u00c5\u0003\u00c5",
- "\u0003\u00c5\u0005\u00c5\u13a9\n\u00c5\u0003\u00c5\u0003\u00c5\u0003",
- "\u00c5\u0003\u00c5\u0003\u00c5\u0003\u00c5\u0003\u00c5\u0003\u00c5\u0003",
- "\u00c5\u0003\u00c5\u0003\u00c5\u0003\u00c5\u0003\u00c5\u0003\u00c5\u0003",
- "\u00c5\u0003\u00c5\u0005\u00c5\u13bb\n\u00c5\u0005\u00c5\u13bd\n\u00c5",
- "\u0003\u00c6\u0003\u00c6\u0003\u00c6\u0003\u00c6\u0003\u00c6\u0003\u00c6",
- "\u0003\u00c6\u0003\u00c6\u0003\u00c6\u0003\u00c6\u0003\u00c6\u0003\u00c6",
- "\u0003\u00c6\u0003\u00c6\u0003\u00c6\u0003\u00c6\u0003\u00c6\u0003\u00c6",
- "\u0005\u00c6\u13d1\n\u00c6\u0003\u00c7\u0003\u00c7\u0003\u00c7\u0003",
- "\u00c7\u0003\u00c7\u0003\u00c7\u0005\u00c7\u13d9\n\u00c7\u0003\u00c7",
- "\u0003\u00c7\u0003\u00c7\u0005\u00c7\u13de\n\u00c7\u0003\u00c7\u0003",
- "\u00c7\u0003\u00c7\u0003\u00c7\u0003\u00c7\u0003\u00c7\u0003\u00c7\u0003",
- "\u00c7\u0003\u00c7\u0003\u00c7\u0003\u00c7\u0003\u00c7\u0003\u00c7\u0003",
- "\u00c7\u0003\u00c7\u0003\u00c7\u0005\u00c7\u13f0\n\u00c7\u0003\u00c7",
- "\u0003\u00c7\u0003\u00c7\u0003\u00c7\u0003\u00c7\u0003\u00c7\u0003\u00c7",
- "\u0003\u00c7\u0003\u00c7\u0003\u00c7\u0003\u00c7\u0003\u00c7\u0003\u00c7",
- "\u0005\u00c7\u13ff\n\u00c7\u0005\u00c7\u1401\n\u00c7\u0003\u00c8\u0003",
- "\u00c8\u0003\u00c8\u0003\u00c8\u0003\u00c8\u0005\u00c8\u1408\n\u00c8",
- "\u0003\u00c8\u0003\u00c8\u0003\u00c8\u0003\u00c8\u0003\u00c8\u0005\u00c8",
- "\u140f\n\u00c8\u0003\u00c8\u0003\u00c8\u0003\u00c8\u0005\u00c8\u1414",
- "\n\u00c8\u0003\u00c8\u0003\u00c8\u0003\u00c8\u0005\u00c8\u1419\n\u00c8",
- "\u0003\u00c8\u0003\u00c8\u0003\u00c8\u0003\u00c8\u0005\u00c8\u141f\n",
- "\u00c8\u0003\u00c8\u0003\u00c8\u0003\u00c8\u0005\u00c8\u1424\n\u00c8",
- "\u0005\u00c8\u1426\n\u00c8\u0003\u00c9\u0003\u00c9\u0003\u00c9\u0003",
- "\u00c9\u0003\u00c9\u0005\u00c9\u142d\n\u00c9\u0003\u00c9\u0003\u00c9",
- "\u0003\u00c9\u0003\u00c9\u0005\u00c9\u1433\n\u00c9\u0003\u00c9\u0003",
- "\u00c9\u0003\u00c9\u0003\u00c9\u0005\u00c9\u1439\n\u00c9\u0003\u00c9",
- "\u0005\u00c9\u143c\n\u00c9\u0003\u00c9\u0003\u00c9\u0003\u00c9\u0003",
- "\u00c9\u0005\u00c9\u1442\n\u00c9\u0003\u00c9\u0003\u00c9\u0003\u00c9",
- "\u0003\u00c9\u0003\u00c9\u0003\u00c9\u0006\u00c9\u144a\n\u00c9\r\u00c9",
- "\u000e\u00c9\u144b\u0003\u00c9\u0005\u00c9\u144f\n\u00c9\u0003\u00c9",
- "\u0003\u00c9\u0003\u00c9\u0003\u00c9\u0003\u00c9\u0005\u00c9\u1456\n",
- "\u00c9\u0003\u00c9\u0005\u00c9\u1459\n\u00c9\u0003\u00c9\u0003\u00c9",
- "\u0003\u00c9\u0006\u00c9\u145e\n\u00c9\r\u00c9\u000e\u00c9\u145f\u0003",
- "\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0005",
- "\u00ca\u1468\n\u00ca\u0003\u00ca\u0003\u00ca\u0005\u00ca\u146c\n\u00ca",
- "\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0005\u00ca\u1472\n",
- "\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0007\u00ca\u1477\n\u00ca",
- "\f\u00ca\u000e\u00ca\u147a\u000b\u00ca\u0005\u00ca\u147c\n\u00ca\u0003",
- "\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0005\u00ca\u1483",
- "\n\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0005\u00ca",
- "\u1489\n\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0003",
- "\u00ca\u0005\u00ca\u1490\n\u00ca\u0003\u00ca\u0005\u00ca\u1493\n\u00ca",
- "\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0005\u00ca\u1499\n",
- "\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0007\u00ca\u149e\n\u00ca",
- "\f\u00ca\u000e\u00ca\u14a1\u000b\u00ca\u0005\u00ca\u14a3\n\u00ca\u0003",
- "\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0005",
- "\u00ca\u14ab\n\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca",
- "\u0005\u00ca\u14b1\n\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0003",
- "\u00ca\u0003\u00ca\u0005\u00ca\u14b8\n\u00ca\u0003\u00ca\u0005\u00ca",
- "\u14bb\n\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0005",
- "\u00ca\u14c1\n\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0007\u00ca",
- "\u14c6\n\u00ca\f\u00ca\u000e\u00ca\u14c9\u000b\u00ca\u0003\u00ca\u0003",
- "\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0005\u00ca\u14d0\n\u00ca",
- "\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca",
- "\u0005\u00ca\u14d8\n\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0003",
- "\u00ca\u0005\u00ca\u14de\n\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca",
- "\u0007\u00ca\u14e3\n\u00ca\f\u00ca\u000e\u00ca\u14e6\u000b\u00ca\u0003",
- "\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0003",
- "\u00ca\u0005\u00ca\u14ef\n\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca",
- "\u0005\u00ca\u14f4\n\u00ca\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0003",
- "\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0005\u00cb\u14fe",
- "\n\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0005\u00cb",
- "\u1504\n\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0003",
- "\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0005",
- "\u00cb\u1510\n\u00cb\u0005\u00cb\u1512\n\u00cb\u0003\u00cc\u0003\u00cc",
- "\u0003\u00cc\u0003\u00cc\u0003\u00cc\u0005\u00cc\u1519\n\u00cc\u0003",
- "\u00cc\u0003\u00cc\u0003\u00cc\u0003\u00cc\u0005\u00cc\u151f\n\u00cc",
- "\u0003\u00cc\u0003\u00cc\u0003\u00cc\u0003\u00cc\u0005\u00cc\u1525\n",
- "\u00cc\u0003\u00cc\u0003\u00cc\u0003\u00cc\u0003\u00cc\u0005\u00cc\u152b",
- "\n\u00cc\u0003\u00cc\u0003\u00cc\u0003\u00cc\u0006\u00cc\u1530\n\u00cc",
- "\r\u00cc\u000e\u00cc\u1531\u0003\u00cd\u0003\u00cd\u0003\u00cd\u0003",
- "\u00cd\u0003\u00cd\u0005\u00cd\u1539\n\u00cd\u0003\u00cd\u0003\u00cd",
- "\u0003\u00cd\u0003\u00cd\u0003\u00cd\u0003\u00cd\u0005\u00cd\u1541\n",
- "\u00cd\u0003\u00cd\u0003\u00cd\u0003\u00cd\u0003\u00cd\u0005\u00cd\u1547",
- "\n\u00cd\u0003\u00cd\u0003\u00cd\u0003\u00cd\u0003\u00cd\u0003\u00cd",
- "\u0003\u00cd\u0003\u00cd\u0003\u00cd\u0003\u00cd\u0003\u00cd\u0003\u00cd",
- "\u0003\u00cd\u0006\u00cd\u1555\n\u00cd\r\u00cd\u000e\u00cd\u1556\u0003",
- "\u00cd\u0005\u00cd\u155a\n\u00cd\u0003\u00cd\u0003\u00cd\u0003\u00cd",
- "\u0005\u00cd\u155f\n\u00cd\u0005\u00cd\u1561\n\u00cd\u0003\u00ce\u0003",
- "\u00ce\u0003\u00ce\u0003\u00ce\u0003\u00ce\u0003\u00ce\u0003\u00ce\u0003",
- "\u00ce\u0003\u00ce\u0003\u00ce\u0005\u00ce\u156d\n\u00ce\u0003\u00ce",
- "\u0003\u00ce\u0003\u00ce\u0003\u00ce\u0005\u00ce\u1573\n\u00ce\u0003",
- "\u00ce\u0003\u00ce\u0003\u00ce\u0003\u00ce\u0003\u00ce\u0003\u00ce\u0003",
- "\u00ce\u0003\u00ce\u0003\u00ce\u0003\u00ce\u0003\u00ce\u0003\u00ce\u0006",
- "\u00ce\u1581\n\u00ce\r\u00ce\u000e\u00ce\u1582\u0003\u00ce\u0005\u00ce",
- "\u1586\n\u00ce\u0003\u00ce\u0003\u00ce\u0003\u00ce\u0005\u00ce\u158b",
- "\n\u00ce\u0003\u00ce\u0005\u00ce\u158e\n\u00ce\u0003\u00ce\u0003\u00ce",
- "\u0003\u00ce\u0005\u00ce\u1593\n\u00ce\u0005\u00ce\u1595\n\u00ce\u0003",
- "\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003",
- "\u00cf\u0005\u00cf\u159e\n\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf",
- "\u0003\u00cf\u0003\u00cf\u0005\u00cf\u15a5\n\u00cf\u0003\u00d0\u0003",
- "\u00d0\u0003\u00d0\u0003\u00d0\u0005\u00d0\u15ab\n\u00d0\u0003\u00d0",
- "\u0005\u00d0\u15ae\n\u00d0\u0003\u00d0\u0003\u00d0\u0003\u00d0\u0005",
- "\u00d0\u15b3\n\u00d0\u0003\u00d1\u0003\u00d1\u0003\u00d1\u0003\u00d1",
- "\u0003\u00d1\u0005\u00d1\u15ba\n\u00d1\u0005\u00d1\u15bc\n\u00d1\u0003",
- "\u00d1\u0003\u00d1\u0003\u00d1\u0003\u00d1\u0005\u00d1\u15c2\n\u00d1",
- "\u0005\u00d1\u15c4\n\u00d1\u0003\u00d1\u0003\u00d1\u0003\u00d1\u0003",
- "\u00d1\u0003\u00d1\u0003\u00d1\u0005\u00d1\u15cc\n\u00d1\u0005\u00d1",
- "\u15ce\n\u00d1\u0003\u00d1\u0003\u00d1\u0003\u00d1\u0003\u00d1\u0005",
- "\u00d1\u15d4\n\u00d1\u0005\u00d1\u15d6\n\u00d1\u0003\u00d1\u0003\u00d1",
- "\u0003\u00d1\u0003\u00d1\u0005\u00d1\u15dc\n\u00d1\u0005\u00d1\u15de",
- "\n\u00d1\u0003\u00d1\u0003\u00d1\u0003\u00d1\u0003\u00d1\u0003\u00d1",
- "\u0005\u00d1\u15e5\n\u00d1\u0003\u00d1\u0005\u00d1\u15e8\n\u00d1\u0005",
- "\u00d1\u15ea\n\u00d1\u0003\u00d1\u0005\u00d1\u15ed\n\u00d1\u0003\u00d1",
- "\u0003\u00d1\u0005\u00d1\u15f1\n\u00d1\u0005\u00d1\u15f3\n\u00d1\u0003",
- "\u00d1\u0003\u00d1\u0003\u00d1\u0003\u00d1\u0003\u00d1\u0003\u00d1\u0003",
- "\u00d1\u0005\u00d1\u15fc\n\u00d1\u0003\u00d2\u0003\u00d2\u0003\u00d2",
- "\u0003\u00d2\u0005\u00d2\u1602\n\u00d2\u0003\u00d2\u0003\u00d2\u0005",
- "\u00d2\u1606\n\u00d2\u0003\u00d3\u0003\u00d3\u0003\u00d3\u0003\u00d3",
- "\u0003\u00d3\u0003\u00d3\u0005\u00d3\u160e\n\u00d3\u0003\u00d3\u0003",
- "\u00d3\u0003\u00d3\u0003\u00d3\u0003\u00d3\u0005\u00d3\u1615\n\u00d3",
- "\u0003\u00d3\u0003\u00d3\u0003\u00d3\u0003\u00d3\u0005\u00d3\u161b\n",
- "\u00d3\u0005\u00d3\u161d\n\u00d3\u0003\u00d4\u0003\u00d4\u0003\u00d4",
- "\u0003\u00d4\u0003\u00d5\u0003\u00d5\u0003\u00d5\u0003\u00d5\u0003\u00d5",
- "\u0005\u00d5\u1628\n\u00d5\u0003\u00d5\u0003\u00d5\u0003\u00d5\u0005",
- "\u00d5\u162d\n\u00d5\u0003\u00d5\u0003\u00d5\u0003\u00d5\u0003\u00d5",
- "\u0005\u00d5\u1633\n\u00d5\u0006\u00d5\u1635\n\u00d5\r\u00d5\u000e\u00d5",
- "\u1636\u0003\u00d5\u0003\u00d5\u0003\u00d6\u0003\u00d6\u0003\u00d6\u0003",
- "\u00d6\u0003\u00d6\u0003\u00d6\u0005\u00d6\u1641\n\u00d6\u0003\u00d7",
- "\u0003\u00d7\u0003\u00d7\u0003\u00d7\u0003\u00d7\u0003\u00d7\u0005\u00d7",
- "\u1649\n\u00d7\u0003\u00d7\u0003\u00d7\u0003\u00d7\u0003\u00d7\u0003",
- "\u00d7\u0003\u00d7\u0003\u00d7\u0003\u00d7\u0003\u00d7\u0003\u00d7\u0005",
- "\u00d7\u1655\n\u00d7\u0003\u00d8\u0005\u00d8\u1658\n\u00d8\u0003\u00d8",
- "\u0003\u00d8\u0003\u00d8\u0003\u00d8\u0003\u00d8\u0003\u00d8\u0005\u00d8",
- "\u1660\n\u00d8\u0005\u00d8\u1662\n\u00d8\u0003\u00d8\u0005\u00d8\u1665",
- "\n\u00d8\u0003\u00d8\u0003\u00d8\u0005\u00d8\u1669\n\u00d8\u0003\u00d8",
- "\u0005\u00d8\u166c\n\u00d8\u0003\u00d8\u0003\u00d8\u0003\u00d8\u0003",
- "\u00d8\u0003\u00d8\u0003\u00d8\u0003\u00d8\u0003\u00d8\u0005\u00d8\u1676",
- "\n\u00d8\u0003\u00d8\u0003\u00d8\u0007\u00d8\u167a\n\u00d8\f\u00d8\u000e",
- "\u00d8\u167d\u000b\u00d8\u0003\u00d8\u0003\u00d8\u0003\u00d8\u0003\u00d8",
- "\u0003\u00d8\u0005\u00d8\u1684\n\u00d8\u0003\u00d8\u0003\u00d8\u0005",
- "\u00d8\u1688\n\u00d8\u0003\u00d8\u0003\u00d8\u0005\u00d8\u168c\n\u00d8",
- "\u0003\u00d8\u0003\u00d8\u0003\u00d8\u0003\u00d8\u0003\u00d8\u0003\u00d8",
- "\u0003\u00d8\u0005\u00d8\u1695\n\u00d8\u0003\u00d8\u0003\u00d8\u0007",
- "\u00d8\u1699\n\u00d8\f\u00d8\u000e\u00d8\u169c\u000b\u00d8\u0003\u00d8",
- "\u0005\u00d8\u169f\n\u00d8\u0003\u00d8\u0005\u00d8\u16a2\n\u00d8\u0003",
- "\u00d8\u0003\u00d8\u0003\u00d9\u0003\u00d9\u0003\u00d9\u0003\u00d9\u0003",
- "\u00d9\u0007\u00d9\u16ab\n\u00d9\f\u00d9\u000e\u00d9\u16ae\u000b\u00d9",
- "\u0003\u00d9\u0005\u00d9\u16b1\n\u00d9\u0003\u00da\u0003\u00da\u0003",
- "\u00da\u0003\u00da\u0003\u00da\u0005\u00da\u16b8\n\u00da\u0003\u00da",
- "\u0003\u00da\u0003\u00da\u0005\u00da\u16bd\n\u00da\u0003\u00db\u0005",
- "\u00db\u16c0\n\u00db\u0003\u00db\u0003\u00db\u0003\u00db\u0003\u00db",
- "\u0003\u00db\u0003\u00db\u0005\u00db\u16c8\n\u00db\u0003\u00db\u0003",
- "\u00db\u0005\u00db\u16cc\n\u00db\u0003\u00db\u0005\u00db\u16cf\n\u00db",
- "\u0003\u00db\u0003\u00db\u0005\u00db\u16d3\n\u00db\u0003\u00db\u0005",
- "\u00db\u16d6\n\u00db\u0003\u00db\u0003\u00db\u0005\u00db\u16da\n\u00db",
- "\u0003\u00db\u0003\u00db\u0003\u00db\u0003\u00db\u0003\u00db\u0005\u00db",
- "\u16e1\n\u00db\u0003\u00db\u0003\u00db\u0005\u00db\u16e5\n\u00db\u0005",
- "\u00db\u16e7\n\u00db\u0005\u00db\u16e9\n\u00db\u0003\u00db\u0005\u00db",
- "\u16ec\n\u00db\u0003\u00db\u0005\u00db\u16ef\n\u00db\u0003\u00db\u0005",
- "\u00db\u16f2\n\u00db\u0003\u00dc\u0003\u00dc\u0003\u00dc\u0003\u00dc",
- "\u0005\u00dc\u16f8\n\u00dc\u0003\u00dd\u0005\u00dd\u16fb\n\u00dd\u0003",
- "\u00dd\u0003\u00dd\u0003\u00dd\u0003\u00dd\u0003\u00dd\u0003\u00dd\u0005",
- "\u00dd\u1703\n\u00dd\u0005\u00dd\u1705\n\u00dd\u0003\u00dd\u0005\u00dd",
- "\u1708\n\u00dd\u0003\u00dd\u0003\u00dd\u0005\u00dd\u170c\n\u00dd\u0003",
- "\u00dd\u0005\u00dd\u170f\n\u00dd\u0003\u00dd\u0003\u00dd\u0003\u00dd",
- "\u0003\u00dd\u0005\u00dd\u1715\n\u00dd\u0003\u00dd\u0005\u00dd\u1718",
- "\n\u00dd\u0003\u00dd\u0003\u00dd\u0005\u00dd\u171c\n\u00dd\u0003\u00dd",
- "\u0005\u00dd\u171f\n\u00dd\u0003\u00dd\u0005\u00dd\u1722\n\u00dd\u0003",
- "\u00de\u0003\u00de\u0003\u00de\u0003\u00de\u0003\u00de\u0005\u00de\u1729",
- "\n\u00de\u0003\u00df\u0005\u00df\u172c\n\u00df\u0003\u00df\u0003\u00df",
- "\u0003\u00df\u0003\u00df\u0003\u00df\u0005\u00df\u1733\n\u00df\u0003",
- "\u00df\u0003\u00df\u0003\u00df\u0003\u00df\u0005\u00df\u1739\n\u00df",
- "\u0007\u00df\u173b\n\u00df\f\u00df\u000e\u00df\u173e\u000b\u00df\u0003",
- "\u00df\u0003\u00df\u0003\u00df\u0003\u00df\u0003\u00df\u0003\u00df\u0003",
- "\u00df\u0005\u00df\u1747\n\u00df\u0003\u00df\u0005\u00df\u174a\n\u00df",
- "\u0003\u00e0\u0005\u00e0\u174d\n\u00e0\u0003\u00e0\u0003\u00e0\u0005",
- "\u00e0\u1751\n\u00e0\u0003\u00e0\u0005\u00e0\u1754\n\u00e0\u0003\u00e0",
- "\u0005\u00e0\u1757\n\u00e0\u0003\u00e0\u0005\u00e0\u175a\n\u00e0\u0003",
- "\u00e1\u0003\u00e1\u0005\u00e1\u175e\n\u00e1\u0003\u00e2\u0005\u00e2",
- "\u1761\n\u00e2\u0003\u00e2\u0003\u00e2\u0003\u00e2\u0003\u00e2\u0003",
- "\u00e2\u0003\u00e2\u0005\u00e2\u1769\n\u00e2\u0005\u00e2\u176b\n\u00e2",
- "\u0003\u00e2\u0003\u00e2\u0005\u00e2\u176f\n\u00e2\u0003\u00e2\u0005",
- "\u00e2\u1772\n\u00e2\u0003\u00e2\u0003\u00e2\u0003\u00e2\u0003\u00e2",
- "\u0007\u00e2\u1778\n\u00e2\f\u00e2\u000e\u00e2\u177b\u000b\u00e2\u0003",
- "\u00e2\u0005\u00e2\u177e\n\u00e2\u0003\u00e2\u0003\u00e2\u0005\u00e2",
- "\u1782\n\u00e2\u0003\u00e2\u0003\u00e2\u0003\u00e2\u0003\u00e2\u0003",
- "\u00e2\u0005\u00e2\u1789\n\u00e2\u0003\u00e2\u0003\u00e2\u0005\u00e2",
- "\u178d\n\u00e2\u0005\u00e2\u178f\n\u00e2\u0005\u00e2\u1791\n\u00e2\u0003",
- "\u00e2\u0005\u00e2\u1794\n\u00e2\u0003\u00e2\u0005\u00e2\u1797\n\u00e2",
- "\u0003\u00e2\u0005\u00e2\u179a\n\u00e2\u0003\u00e3\u0003\u00e3\u0003",
- "\u00e3\u0003\u00e3\u0007\u00e3\u17a0\n\u00e3\f\u00e3\u000e\u00e3\u17a3",
- "\u000b\u00e3\u0003\u00e3\u0003\u00e3\u0003\u00e3\u0005\u00e3\u17a8\n",
- "\u00e3\u0003\u00e3\u0003\u00e3\u0003\u00e3\u0003\u00e3\u0005\u00e3\u17ae",
- "\n\u00e3\u0005\u00e3\u17b0\n\u00e3\u0003\u00e4\u0003\u00e4\u0005\u00e4",
- "\u17b4\n\u00e4\u0003\u00e4\u0005\u00e4\u17b7\n\u00e4\u0003\u00e5\u0003",
- "\u00e5\u0003\u00e5\u0005\u00e5\u17bc\n\u00e5\u0003\u00e5\u0003\u00e5",
- "\u0003\u00e5\u0005\u00e5\u17c1\n\u00e5\u0003\u00e5\u0005\u00e5\u17c4",
- "\n\u00e5\u0003\u00e6\u0003\u00e6\u0003\u00e6\u0003\u00e6\u0003\u00e6",
- "\u0003\u00e6\u0005\u00e6\u17cc\n\u00e6\u0003\u00e6\u0003\u00e6\u0005",
- "\u00e6\u17d0\n\u00e6\u0003\u00e6\u0003\u00e6\u0003\u00e6\u0007\u00e6",
- "\u17d5\n\u00e6\f\u00e6\u000e\u00e6\u17d8\u000b\u00e6\u0005\u00e6\u17da",
- "\n\u00e6\u0003\u00e6\u0003\u00e6\u0003\u00e6\u0003\u00e6\u0003\u00e6",
- "\u0007\u00e6\u17e1\n\u00e6\f\u00e6\u000e\u00e6\u17e4\u000b\u00e6\u0005",
- "\u00e6\u17e6\n\u00e6\u0003\u00e6\u0003\u00e6\u0005\u00e6\u17ea\n\u00e6",
- "\u0003\u00e6\u0003\u00e6\u0003\u00e6\u0003\u00e6\u0007\u00e6\u17f0\n",
- "\u00e6\f\u00e6\u000e\u00e6\u17f3\u000b\u00e6\u0005\u00e6\u17f5\n\u00e6",
- "\u0003\u00e7\u0003\u00e7\u0005\u00e7\u17f9\n\u00e7\u0003\u00e7\u0005",
- "\u00e7\u17fc\n\u00e7\u0003\u00e7\u0003\u00e7\u0003\u00e7\u0003\u00e7",
- "\u0003\u00e7\u0003\u00e7\u0003\u00e7\u0003\u00e7\u0003\u00e7\u0003\u00e7",
- "\u0003\u00e7\u0003\u00e7\u0005\u00e7\u180a\n\u00e7\u0003\u00e7\u0003",
- "\u00e7\u0005\u00e7\u180e\n\u00e7\u0003\u00e7\u0005\u00e7\u1811\n\u00e7",
- "\u0003\u00e7\u0003\u00e7\u0005\u00e7\u1815\n\u00e7\u0003\u00e7\u0005",
- "\u00e7\u1818\n\u00e7\u0003\u00e8\u0003\u00e8\u0003\u00e8\u0005\u00e8",
- "\u181d\n\u00e8\u0003\u00e8\u0005\u00e8\u1820\n\u00e8\u0003\u00e8\u0003",
- "\u00e8\u0003\u00e8\u0003\u00e8\u0005\u00e8\u1826\n\u00e8\u0003\u00e8",
- "\u0005\u00e8\u1829\n\u00e8\u0003\u00e8\u0003\u00e8\u0003\u00e8\u0007",
- "\u00e8\u182e\n\u00e8\f\u00e8\u000e\u00e8\u1831\u000b\u00e8\u0003\u00e8",
- "\u0005\u00e8\u1834\n\u00e8\u0005\u00e8\u1836\n\u00e8\u0003\u00e8\u0003",
- "\u00e8\u0003\u00e8\u0003\u00e8\u0007\u00e8\u183c\n\u00e8\f\u00e8\u000e",
- "\u00e8\u183f\u000b\u00e8\u0005\u00e8\u1841\n\u00e8\u0003\u00e8\u0003",
- "\u00e8\u0005\u00e8\u1845\n\u00e8\u0003\u00e8\u0003\u00e8\u0003\u00e8",
- "\u0003\u00e9\u0003\u00e9\u0005\u00e9\u184c\n\u00e9\u0003\u00ea\u0003",
- "\u00ea\u0003\u00ea\u0005\u00ea\u1851\n\u00ea\u0003\u00ea\u0005\u00ea",
- "\u1854\n\u00ea\u0003\u00ea\u0003\u00ea\u0003\u00ea\u0003\u00ea\u0003",
- "\u00ea\u0003\u00ea\u0003\u00ea\u0003\u00ea\u0007\u00ea\u185e\n\u00ea",
- "\f\u00ea\u000e\u00ea\u1861\u000b\u00ea\u0005\u00ea\u1863\n\u00ea\u0003",
- "\u00ea\u0003\u00ea\u0003\u00ea\u0003\u00ea\u0005\u00ea\u1869\n\u00ea",
- "\u0003\u00ea\u0003\u00ea\u0003\u00ea\u0007\u00ea\u186e\n\u00ea\f\u00ea",
- "\u000e\u00ea\u1871\u000b\u00ea\u0003\u00ea\u0003\u00ea\u0005\u00ea\u1875",
- "\n\u00ea\u0003\u00ea\u0003\u00ea\u0003\u00ea\u0005\u00ea\u187a\n\u00ea",
- "\u0003\u00ea\u0003\u00ea\u0003\u00ea\u0003\u00eb\u0003\u00eb\u0005\u00eb",
- "\u1881\n\u00eb\u0003\u00ec\u0003\u00ec\u0003\u00ed\u0003\u00ed\u0003",
- "\u00ed\u0005\u00ed\u1888\n\u00ed\u0003\u00ed\u0005\u00ed\u188b\n\u00ed",
- "\u0003\u00ed\u0003\u00ed\u0003\u00ed\u0003\u00ed\u0003\u00ed\u0003\u00ed",
- "\u0005\u00ed\u1893\n\u00ed\u0003\u00ed\u0003\u00ed\u0003\u00ed\u0003",
- "\u00ed\u0007\u00ed\u1899\n\u00ed\f\u00ed\u000e\u00ed\u189c\u000b\u00ed",
- "\u0005\u00ed\u189e\n\u00ed\u0003\u00ed\u0003\u00ed\u0003\u00ed\u0003",
- "\u00ed\u0007\u00ed\u18a4\n\u00ed\f\u00ed\u000e\u00ed\u18a7\u000b\u00ed",
- "\u0003\u00ed\u0003\u00ed\u0003\u00ed\u0003\u00ee\u0003\u00ee\u0003\u00ef",
- "\u0003\u00ef\u0003\u00ef\u0005\u00ef\u18b1\n\u00ef\u0003\u00ef\u0005",
- "\u00ef\u18b4\n\u00ef\u0003\u00ef\u0003\u00ef\u0003\u00ef\u0003\u00ef",
- "\u0003\u00ef\u0003\u00ef\u0007\u00ef\u18bc\n\u00ef\f\u00ef\u000e\u00ef",
- "\u18bf\u000b\u00ef\u0003\u00ef\u0003\u00ef\u0003\u00ef\u0003\u00ef\u0005",
- "\u00ef\u18c5\n\u00ef\u0003\u00ef\u0003\u00ef\u0003\u00ef\u0005\u00ef",
- "\u18ca\n\u00ef\u0003\u00ef\u0005\u00ef\u18cd\n\u00ef\u0003\u00f0\u0003",
- "\u00f0\u0003\u00f0\u0003\u00f0\u0003\u00f0\u0003\u00f0\u0007\u00f0\u18d5",
- "\n\u00f0\f\u00f0\u000e\u00f0\u18d8\u000b\u00f0\u0005\u00f0\u18da\n\u00f0",
- "\u0003\u00f0\u0005\u00f0\u18dd\n\u00f0\u0003\u00f0\u0003\u00f0\u0003",
- "\u00f0\u0003\u00f0\u0003\u00f0\u0003\u00f0\u0005\u00f0\u18e5\n\u00f0",
- "\u0003\u00f1\u0003\u00f1\u0003\u00f1\u0003\u00f1\u0003\u00f1\u0003\u00f1",
- "\u0003\u00f1\u0007\u00f1\u18ee\n\u00f1\f\u00f1\u000e\u00f1\u18f1\u000b",
- "\u00f1\u0005\u00f1\u18f3\n\u00f1\u0003\u00f1\u0005\u00f1\u18f6\n\u00f1",
- "\u0003\u00f1\u0003\u00f1\u0007\u00f1\u18fa\n\u00f1\f\u00f1\u000e\u00f1",
- "\u18fd\u000b\u00f1\u0003\u00f1\u0003\u00f1\u0005\u00f1\u1901\n\u00f1",
- "\u0003\u00f1\u0003\u00f1\u0005\u00f1\u1905\n\u00f1\u0003\u00f2\u0003",
- "\u00f2\u0003\u00f2\u0003\u00f2\u0003\u00f2\u0003\u00f2\u0007\u00f2\u190d",
- "\n\u00f2\f\u00f2\u000e\u00f2\u1910\u000b\u00f2\u0005\u00f2\u1912\n\u00f2",
- "\u0003\u00f2\u0005\u00f2\u1915\n\u00f2\u0003\u00f2\u0003\u00f2\u0007",
- "\u00f2\u1919\n\u00f2\f\u00f2\u000e\u00f2\u191c\u000b\u00f2\u0003\u00f2",
- "\u0003\u00f2\u0003\u00f2\u0005\u00f2\u1921\n\u00f2\u0003\u00f2\u0003",
- "\u00f2\u0003\u00f3\u0003\u00f3\u0003\u00f3\u0003\u00f3\u0005\u00f3\u1929",
- "\n\u00f3\u0003\u00f3\u0005\u00f3\u192c\n\u00f3\u0003\u00f3\u0003\u00f3",
- "\u0005\u00f3\u1930\n\u00f3\u0003\u00f3\u0003\u00f3\u0005\u00f3\u1934",
- "\n\u00f3\u0003\u00f3\u0005\u00f3\u1937\n\u00f3\u0003\u00f4\u0003\u00f4",
- "\u0003\u00f4\u0005\u00f4\u193c\n\u00f4\u0003\u00f5\u0003\u00f5\u0003",
- "\u00f5\u0003\u00f5\u0003\u00f5\u0003\u00f5\u0003\u00f5\u0003\u00f5\u0003",
- "\u00f5\u0003\u00f5\u0003\u00f5\u0003\u00f5\u0005\u00f5\u194a\n\u00f5",
- "\u0003\u00f6\u0003\u00f6\u0003\u00f6\u0003\u00f6\u0003\u00f6\u0003\u00f6",
- "\u0003\u00f6\u0003\u00f6\u0003\u00f6\u0003\u00f6\u0003\u00f6\u0003\u00f6",
- "\u0003\u00f6\u0003\u00f6\u0005\u00f6\u195a\n\u00f6\u0003\u00f6\u0003",
- "\u00f6\u0005\u00f6\u195e\n\u00f6\u0003\u00f6\u0003\u00f6\u0003\u00f6",
- "\u0003\u00f6\u0005\u00f6\u1964\n\u00f6\u0005\u00f6\u1966\n\u00f6\u0003",
- "\u00f6\u0005\u00f6\u1969\n\u00f6\u0003\u00f7\u0003\u00f7\u0005\u00f7",
- "\u196d\n\u00f7\u0003\u00f7\u0003\u00f7\u0003\u00f7\u0005\u00f7\u1972",
- "\n\u00f7\u0003\u00f7\u0003\u00f7\u0003\u00f7\u0005\u00f7\u1977\n\u00f7",
- "\u0003\u00f8\u0003\u00f8\u0003\u00f8\u0003\u00f8\u0003\u00f8\u0003\u00f8",
- "\u0005\u00f8\u197f\n\u00f8\u0003\u00f8\u0003\u00f8\u0003\u00f8\u0005",
- "\u00f8\u1984\n\u00f8\u0003\u00f8\u0007\u00f8\u1987\n\u00f8\f\u00f8\u000e",
- "\u00f8\u198a\u000b\u00f8\u0003\u00f8\u0003\u00f8\u0003\u00f8\u0005\u00f8",
- "\u198f\n\u00f8\u0003\u00f8\u0003\u00f8\u0003\u00f8\u0005\u00f8\u1994",
- "\n\u00f8\u0003\u00f8\u0005\u00f8\u1997\n\u00f8\u0003\u00f9\u0003\u00f9",
- "\u0003\u00f9\u0003\u00f9\u0003\u00f9\u0007\u00f9\u199e\n\u00f9\f\u00f9",
- "\u000e\u00f9\u19a1\u000b\u00f9\u0003\u00f9\u0003\u00f9\u0003\u00f9\u0003",
- "\u00f9\u0003\u00f9\u0007\u00f9\u19a8\n\u00f9\f\u00f9\u000e\u00f9\u19ab",
- "\u000b\u00f9\u0005\u00f9\u19ad\n\u00f9\u0003\u00fa\u0003\u00fa\u0003",
- "\u00fa\u0003\u00fa\u0003\u00fa\u0003\u00fa\u0003\u00fa\u0005\u00fa\u19b6",
- "\n\u00fa\u0003\u00fa\u0003\u00fa\u0003\u00fa\u0003\u00fa\u0007\u00fa",
- "\u19bc\n\u00fa\f\u00fa\u000e\u00fa\u19bf\u000b\u00fa\u0005\u00fa\u19c1",
- "\n\u00fa\u0003\u00fa\u0003\u00fa\u0003\u00fa\u0003\u00fa\u0003\u00fa",
- "\u0005\u00fa\u19c8\n\u00fa\u0003\u00fa\u0005\u00fa\u19cb\n\u00fa\u0003",
- "\u00fb\u0003\u00fb\u0003\u00fc\u0003\u00fc\u0003\u00fc\u0003\u00fc\u0003",
- "\u00fc\u0003\u00fc\u0003\u00fc\u0003\u00fc\u0003\u00fc\u0003\u00fc\u0003",
- "\u00fc\u0003\u00fc\u0003\u00fc\u0003\u00fc\u0003\u00fc\u0003\u00fc\u0003",
- "\u00fc\u0003\u00fc\u0003\u00fc\u0003\u00fc\u0003\u00fc\u0003\u00fc\u0003",
- "\u00fc\u0003\u00fc\u0003\u00fc\u0003\u00fc\u0003\u00fc\u0003\u00fc\u0003",
- "\u00fc\u0003\u00fc\u0003\u00fc\u0003\u00fc\u0003\u00fc\u0003\u00fc\u0003",
- "\u00fc\u0003\u00fc\u0003\u00fc\u0003\u00fc\u0003\u00fc\u0003\u00fc\u0003",
- "\u00fc\u0003\u00fc\u0005\u00fc\u19f9\n\u00fc\u0003\u00fc\u0003\u00fc",
- "\u0005\u00fc\u19fd\n\u00fc\u0003\u00fc\u0005\u00fc\u1a00\n\u00fc\u0003",
- "\u00fd\u0003\u00fd\u0003\u00fd\u0003\u00fd\u0005\u00fd\u1a06\n\u00fd",
- "\u0003\u00fd\u0003\u00fd\u0003\u00fd\u0003\u00fd\u0003\u00fd\u0003\u00fd",
- "\u0003\u00fd\u0003\u00fd\u0003\u00fd\u0003\u00fd\u0005\u00fd\u1a12\n",
- "\u00fd\u0005\u00fd\u1a14\n\u00fd\u0003\u00fd\u0005\u00fd\u1a17\n\u00fd",
- "\u0003\u00fe\u0003\u00fe\u0003\u00fe\u0003\u00fe\u0003\u00fe\u0003\u00fe",
- "\u0003\u00fe\u0003\u00fe\u0003\u00fe\u0003\u00fe\u0003\u00fe\u0003\u00fe",
- "\u0003\u00fe\u0003\u00fe\u0003\u00fe\u0003\u00fe\u0003\u00fe\u0003\u00fe",
- "\u0003\u00fe\u0003\u00fe\u0003\u00fe\u0003\u00fe\u0003\u00fe\u0005\u00fe",
- "\u1a30\n\u00fe\u0003\u00ff\u0003\u00ff\u0003\u00ff\u0003\u00ff\u0003",
- "\u00ff\u0003\u00ff\u0003\u00ff\u0003\u00ff\u0003\u00ff\u0005\u00ff\u1a3b",
- "\n\u00ff\u0003\u00ff\u0003\u00ff\u0003\u00ff\u0003\u00ff\u0003\u00ff",
- "\u0003\u00ff\u0005\u00ff\u1a43\n\u00ff\u0003\u0100\u0003\u0100\u0003",
- "\u0100\u0003\u0100\u0003\u0100\u0003\u0100\u0003\u0100\u0007\u0100\u1a4c",
- "\n\u0100\f\u0100\u000e\u0100\u1a4f\u000b\u0100\u0007\u0100\u1a51\n\u0100",
- "\f\u0100\u000e\u0100\u1a54\u000b\u0100\u0005\u0100\u1a56\n\u0100\u0003",
- "\u0101\u0003\u0101\u0003\u0101\u0003\u0101\u0003\u0101\u0003\u0101\u0005",
- "\u0101\u1a5e\n\u0101\u0003\u0102\u0003\u0102\u0003\u0102\u0003\u0102",
- "\u0003\u0103\u0003\u0103\u0003\u0103\u0003\u0103\u0005\u0103\u1a68\n",
- "\u0103\u0003\u0104\u0003\u0104\u0003\u0104\u0003\u0104\u0003\u0104\u0005",
- "\u0104\u1a6f\n\u0104\u0003\u0104\u0003\u0104\u0003\u0104\u0003\u0104",
- "\u0003\u0104\u0005\u0104\u1a76\n\u0104\u0005\u0104\u1a78\n\u0104\u0003",
- "\u0104\u0003\u0104\u0003\u0104\u0003\u0104\u0003\u0104\u0003\u0104\u0003",
- "\u0104\u0003\u0104\u0003\u0104\u0003\u0104\u0005\u0104\u1a84\n\u0104",
- "\u0003\u0104\u0003\u0104\u0003\u0104\u0003\u0104\u0003\u0104\u0003\u0104",
- "\u0003\u0104\u0003\u0104\u0003\u0104\u0005\u0104\u1a8f\n\u0104\u0003",
- "\u0104\u0003\u0104\u0005\u0104\u1a93\n\u0104\u0003\u0104\u0003\u0104",
- "\u0003\u0104\u0005\u0104\u1a98\n\u0104\u0003\u0104\u0005\u0104\u1a9b",
- "\n\u0104\u0005\u0104\u1a9d\n\u0104\u0003\u0104\u0005\u0104\u1aa0\n\u0104",
- "\u0003\u0104\u0003\u0104\u0003\u0104\u0003\u0104\u0003\u0104\u0003\u0104",
- "\u0003\u0104\u0003\u0104\u0003\u0104\u0003\u0104\u0005\u0104\u1aac\n",
- "\u0104\u0005\u0104\u1aae\n\u0104\u0005\u0104\u1ab0\n\u0104\u0003\u0104",
- "\u0005\u0104\u1ab3\n\u0104\u0003\u0104\u0003\u0104\u0003\u0104\u0005",
- "\u0104\u1ab8\n\u0104\u0003\u0104\u0005\u0104\u1abb\n\u0104\u0003\u0104",
- "\u0003\u0104\u0003\u0104\u0005\u0104\u1ac0\n\u0104\u0003\u0104\u0003",
- "\u0104\u0003\u0104\u0003\u0104\u0003\u0104\u0003\u0104\u0003\u0104\u0003",
- "\u0104\u0005\u0104\u1aca\n\u0104\u0003\u0104\u0003\u0104\u0005\u0104",
- "\u1ace\n\u0104\u0003\u0104\u0003\u0104\u0003\u0104\u0005\u0104\u1ad3",
- "\n\u0104\u0003\u0104\u0005\u0104\u1ad6\n\u0104\u0005\u0104\u1ad8\n\u0104",
- "\u0003\u0104\u0005\u0104\u1adb\n\u0104\u0003\u0104\u0003\u0104\u0003",
- "\u0104\u0003\u0104\u0003\u0104\u0003\u0104\u0003\u0104\u0003\u0104\u0003",
- "\u0104\u0003\u0104\u0005\u0104\u1ae7\n\u0104\u0005\u0104\u1ae9\n\u0104",
- "\u0005\u0104\u1aeb\n\u0104\u0003\u0104\u0005\u0104\u1aee\n\u0104\u0003",
- "\u0104\u0003\u0104\u0003\u0104\u0003\u0104\u0005\u0104\u1af4\n\u0104",
- "\u0003\u0105\u0003\u0105\u0003\u0106\u0003\u0106\u0003\u0106\u0003\u0106",
- "\u0003\u0106\u0003\u0106\u0005\u0106\u1afe\n\u0106\u0003\u0107\u0003",
- "\u0107\u0003\u0108\u0003\u0108\u0003\u0109\u0003\u0109\u0003\u010a\u0003",
- "\u010a\u0003\u010a\u0003\u010a\u0003\u010a\u0003\u010a\u0003\u010a\u0003",
- "\u010a\u0003\u010a\u0003\u010a\u0003\u010a\u0003\u010a\u0005\u010a\u1b12",
- "\n\u010a\u0003\u010b\u0003\u010b\u0003\u010b\u0003\u010b\u0005\u010b",
- "\u1b18\n\u010b\u0003\u010c\u0003\u010c\u0003\u010d\u0003\u010d\u0003",
- "\u010d\u0003\u010d\u0003\u010d\u0003\u010e\u0003\u010e\u0003\u010f\u0003",
- "\u010f\u0003\u010f\u0003\u010f\u0003\u0110\u0003\u0110\u0003\u0111\u0003",
- "\u0111\u0003\u0111\u0003\u0111\u0003\u0111\u0003\u0111\u0003\u0111\u0003",
- "\u0111\u0005\u0111\u1b31\n\u0111\u0005\u0111\u1b33\n\u0111\u0003\u0112",
- "\u0003\u0112\u0003\u0112\u0003\u0113\u0003\u0113\u0003\u0113\u0003\u0114",
- "\u0003\u0114\u0003\u0115\u0003\u0115\u0003\u0116\u0003\u0116\u0003\u0117",
- "\u0003\u0117\u0003\u0117\u0003\u0117\u0003\u0118\u0003\u0118\u0003\u0118",
- "\u0003\u0118\u0003\u0118\u0003\u0118\u0003\u0118\u0003\u0118\u0005\u0118",
- "\u1b4d\n\u0118\u0003\u0118\u0003\u0118\u0003\u0118\u0003\u0118\u0005",
- "\u0118\u1b53\n\u0118\u0003\u0118\u0003\u0118\u0003\u0118\u0003\u0118",
- "\u0003\u0118\u0003\u0118\u0003\u0118\u0003\u0118\u0003\u0118\u0005\u0118",
- "\u1b5e\n\u0118\u0003\u0119\u0003\u0119\u0003\u0119\u0003\u0119\u0003",
- "\u0119\u0003\u0119\u0005\u0119\u1b66\n\u0119\u0003\u0119\u0005\u0119",
- "\u1b69\n\u0119\u0003\u011a\u0003\u011a\u0003\u011a\u0003\u011b\u0003",
- "\u011b\u0003\u011b\u0003\u011c\u0003\u011c\u0003\u011c\u0003\u011c\u0003",
- "\u011c\u0003\u011c\u0005\u011c\u1b77\n\u011c\u0003\u011d\u0003\u011d",
- "\u0003\u011d\u0003\u011d\u0003\u011d\u0003\u011d\u0005\u011d\u1b7f\n",
- "\u011d\u0003\u011e\u0003\u011e\u0003\u011e\u0003\u011e\u0003\u011e\u0005",
- "\u011e\u1b86\n\u011e\u0003\u011f\u0003\u011f\u0003\u011f\u0003\u011f",
- "\u0003\u011f\u0003\u011f\u0003\u011f\u0003\u011f\u0003\u011f\u0003\u011f",
- "\u0003\u011f\u0003\u011f\u0003\u011f\u0003\u011f\u0003\u011f\u0003\u011f",
- "\u0003\u011f\u0003\u011f\u0003\u011f\u0003\u011f\u0003\u011f\u0005\u011f",
- "\u1b9d\n\u011f\u0003\u0120\u0003\u0120\u0003\u0120\u0003\u0120\u0003",
- "\u0120\u0003\u0121\u0003\u0121\u0003\u0121\u0003\u0121\u0003\u0121\u0003",
- "\u0121\u0005\u0121\u1baa\n\u0121\u0003\u0122\u0003\u0122\u0003\u0122",
- "\u0003\u0122\u0005\u0122\u1bb0\n\u0122\u0003\u0122\u0003\u0122\u0003",
- "\u0122\u0007\u0122\u1bb5\n\u0122\f\u0122\u000e\u0122\u1bb8\u000b\u0122",
- "\u0003\u0122\u0003\u0122\u0003\u0122\u0007\u0122\u1bbd\n\u0122\f\u0122",
- "\u000e\u0122\u1bc0\u000b\u0122\u0005\u0122\u1bc2\n\u0122\u0003\u0122",
- "\u0005\u0122\u1bc5\n\u0122\u0003\u0123\u0003\u0123\u0003\u0123\u0003",
- "\u0123\u0003\u0124\u0003\u0124\u0003\u0124\u0005\u0124\u1bce\n\u0124",
- "\u0003\u0124\u0003\u0124\u0003\u0124\u0003\u0124\u0003\u0125\u0003\u0125",
- "\u0003\u0125\u0003\u0125\u0005\u0125\u1bd8\n\u0125\u0003\u0125\u0003",
- "\u0125\u0003\u0125\u0007\u0125\u1bdd\n\u0125\f\u0125\u000e\u0125\u1be0",
- "\u000b\u0125\u0003\u0125\u0005\u0125\u1be3\n\u0125\u0003\u0126\u0003",
- "\u0126\u0005\u0126\u1be7\n\u0126\u0003\u0127\u0003\u0127\u0003\u0127",
- "\u0003\u0127\u0005\u0127\u1bed\n\u0127\u0003\u0127\u0003\u0127\u0003",
- "\u0127\u0007\u0127\u1bf2\n\u0127\f\u0127\u000e\u0127\u1bf5\u000b\u0127",
- "\u0003\u0127\u0005\u0127\u1bf8\n\u0127\u0003\u0128\u0003\u0128\u0003",
- "\u0128\u0003\u0128\u0005\u0128\u1bfe\n\u0128\u0003\u0128\u0003\u0128",
- "\u0003\u0128\u0007\u0128\u1c03\n\u0128\f\u0128\u000e\u0128\u1c06\u000b",
- "\u0128\u0003\u0128\u0003\u0128\u0003\u0128\u0003\u0128\u0005\u0128\u1c0c",
- "\n\u0128\u0003\u0128\u0005\u0128\u1c0f\n\u0128\u0003\u0129\u0003\u0129",
- "\u0003\u0129\u0003\u0129\u0005\u0129\u1c15\n\u0129\u0003\u0129\u0003",
- "\u0129\u0003\u0129\u0007\u0129\u1c1a\n\u0129\f\u0129\u000e\u0129\u1c1d",
- "\u000b\u0129\u0003\u0129\u0005\u0129\u1c20\n\u0129\u0003\u012a\u0003",
- "\u012a\u0003\u012a\u0005\u012a\u1c25\n\u012a\u0003\u012a\u0003\u012a",
- "\u0003\u012a\u0005\u012a\u1c2a\n\u012a\u0003\u012a\u0006\u012a\u1c2d",
- "\n\u012a\r\u012a\u000e\u012a\u1c2e\u0003\u012a\u0003\u012a\u0003\u012b",
- "\u0003\u012b\u0003\u012b\u0003\u012b\u0005\u012b\u1c37\n\u012b\u0003",
- "\u012b\u0003\u012b\u0005\u012b\u1c3b\n\u012b\u0003\u012c\u0003\u012c",
- "\u0003\u012c\u0003\u012c\u0005\u012c\u1c41\n\u012c\u0003\u012c\u0003",
- "\u012c\u0003\u012c\u0007\u012c\u1c46\n\u012c\f\u012c\u000e\u012c\u1c49",
- "\u000b\u012c\u0003\u012c\u0005\u012c\u1c4c\n\u012c\u0003\u012d\u0003",
- "\u012d\u0003\u012d\u0003\u012d\u0003\u012d\u0003\u012d\u0003\u012d\u0005",
- "\u012d\u1c55\n\u012d\u0003\u012d\u0003\u012d\u0003\u012d\u0003\u012d",
- "\u0003\u012d\u0003\u012d\u0005\u012d\u1c5d\n\u012d\u0003\u012e\u0003",
- "\u012e\u0003\u012e\u0003\u012e\u0005\u012e\u1c63\n\u012e\u0003\u012e",
- "\u0003\u012e\u0003\u012f\u0003\u012f\u0005\u012f\u1c69\n\u012f\u0003",
- "\u0130\u0003\u0130\u0003\u0130\u0003\u0130\u0003\u0130\u0003\u0130\u0003",
- "\u0130\u0003\u0131\u0003\u0131\u0003\u0131\u0003\u0131\u0003\u0131\u0003",
- "\u0131\u0003\u0131\u0003\u0131\u0005\u0131\u1c7a\n\u0131\u0003\u0131",
- "\u0003\u0131\u0005\u0131\u1c7e\n\u0131\u0003\u0131\u0003\u0131\u0003",
- "\u0131\u0003\u0132\u0003\u0132\u0003\u0132\u0005\u0132\u1c86\n\u0132",
- "\u0003\u0132\u0003\u0132\u0005\u0132\u1c8a\n\u0132\u0003\u0132\u0003",
- "\u0132\u0003\u0132\u0003\u0132\u0007\u0132\u1c90\n\u0132\f\u0132\u000e",
- "\u0132\u1c93\u000b\u0132\u0003\u0132\u0005\u0132\u1c96\n\u0132\u0003",
- "\u0132\u0003\u0132\u0003\u0132\u0005\u0132\u1c9b\n\u0132\u0003\u0132",
- "\u0003\u0132\u0005\u0132\u1c9f\n\u0132\u0003\u0132\u0003\u0132\u0003",
- "\u0132\u0003\u0132\u0003\u0132\u0005\u0132\u1ca6\n\u0132\u0003\u0132",
- "\u0003\u0132\u0003\u0132\u0003\u0132\u0005\u0132\u1cac\n\u0132\u0005",
- "\u0132\u1cae\n\u0132\u0003\u0133\u0003\u0133\u0005\u0133\u1cb2\n\u0133",
- "\u0003\u0133\u0003\u0133\u0005\u0133\u1cb6\n\u0133\u0003\u0133\u0003",
- "\u0133\u0005\u0133\u1cba\n\u0133\u0003\u0133\u0005\u0133\u1cbd\n\u0133",
- "\u0003\u0133\u0003\u0133\u0005\u0133\u1cc1\n\u0133\u0003\u0133\u0003",
- "\u0133\u0003\u0133\u0003\u0133\u0005\u0133\u1cc7\n\u0133\u0003\u0133",
- "\u0003\u0133\u0005\u0133\u1ccb\n\u0133\u0005\u0133\u1ccd\n\u0133\u0003",
- "\u0134\u0003\u0134\u0003\u0134\u0003\u0134\u0003\u0134\u0005\u0134\u1cd4",
- "\n\u0134\u0003\u0134\u0003\u0134\u0003\u0134\u0007\u0134\u1cd9\n\u0134",
- "\f\u0134\u000e\u0134\u1cdc\u000b\u0134\u0005\u0134\u1cde\n\u0134\u0003",
- "\u0134\u0005\u0134\u1ce1\n\u0134\u0003\u0134\u0003\u0134\u0003\u0134",
- "\u0007\u0134\u1ce6\n\u0134\f\u0134\u000e\u0134\u1ce9\u000b\u0134\u0003",
- "\u0134\u0003\u0134\u0005\u0134\u1ced\n\u0134\u0003\u0134\u0006\u0134",
- "\u1cf0\n\u0134\r\u0134\u000e\u0134\u1cf1\u0003\u0134\u0003\u0134\u0005",
- "\u0134\u1cf6\n\u0134\u0003\u0134\u0003\u0134\u0003\u0134\u0003\u0134",
- "\u0005\u0134\u1cfc\n\u0134\u0006\u0134\u1cfe\n\u0134\r\u0134\u000e\u0134",
- "\u1cff\u0005\u0134\u1d02\n\u0134\u0003\u0134\u0003\u0134\u0003\u0134",
- "\u0005\u0134\u1d07\n\u0134\u0003\u0134\u0006\u0134\u1d0a\n\u0134\r\u0134",
- "\u000e\u0134\u1d0b\u0006\u0134\u1d0e\n\u0134\r\u0134\u000e\u0134\u1d0f",
- "\u0003\u0134\u0003\u0134\u0003\u0134\u0005\u0134\u1d15\n\u0134\u0003",
- "\u0134\u0003\u0134\u0003\u0134\u0003\u0134\u0005\u0134\u1d1b\n\u0134",
- "\u0006\u0134\u1d1d\n\u0134\r\u0134\u000e\u0134\u1d1e\u0006\u0134\u1d21",
- "\n\u0134\r\u0134\u000e\u0134\u1d22\u0005\u0134\u1d25\n\u0134\u0003\u0134",
- "\u0003\u0134\u0005\u0134\u1d29\n\u0134\u0003\u0134\u0003\u0134\u0005",
- "\u0134\u1d2d\n\u0134\u0003\u0134\u0003\u0134\u0005\u0134\u1d31\n\u0134",
- "\u0003\u0134\u0003\u0134\u0005\u0134\u1d35\n\u0134\u0003\u0134\u0003",
- "\u0134\u0003\u0134\u0003\u0134\u0005\u0134\u1d3b\n\u0134\u0003\u0134",
- "\u0005\u0134\u1d3e\n\u0134\u0003\u0134\u0003\u0134\u0003\u0134\u0003",
- "\u0134\u0005\u0134\u1d44\n\u0134\u0003\u0134\u0003\u0134\u0005\u0134",
- "\u1d48\n\u0134\u0003\u0134\u0003\u0134\u0005\u0134\u1d4c\n\u0134\u0003",
- "\u0134\u0003\u0134\u0003\u0134\u0003\u0134\u0005\u0134\u1d52\n\u0134",
- "\u0003\u0134\u0003\u0134\u0003\u0134\u0003\u0134\u0005\u0134\u1d58\n",
- "\u0134\u0005\u0134\u1d5a\n\u0134\u0003\u0134\u0005\u0134\u1d5d\n\u0134",
- "\u0003\u0134\u0003\u0134\u0005\u0134\u1d61\n\u0134\u0003\u0134\u0003",
- "\u0134\u0005\u0134\u1d65\n\u0134\u0003\u0134\u0003\u0134\u0005\u0134",
- "\u1d69\n\u0134\u0003\u0134\u0003\u0134\u0003\u0134\u0003\u0134\u0005",
- "\u0134\u1d6f\n\u0134\u0003\u0134\u0005\u0134\u1d72\n\u0134\u0003\u0134",
- "\u0003\u0134\u0003\u0134\u0003\u0134\u0005\u0134\u1d78\n\u0134\u0003",
- "\u0134\u0003\u0134\u0003\u0134\u0003\u0134\u0005\u0134\u1d7e\n\u0134",
- "\u0003\u0134\u0005\u0134\u1d81\n\u0134\u0003\u0134\u0003\u0134\u0003",
- "\u0134\u0003\u0134\u0005\u0134\u1d87\n\u0134\u0003\u0134\u0005\u0134",
- "\u1d8a\n\u0134\u0003\u0134\u0003\u0134\u0003\u0134\u0003\u0134\u0005",
- "\u0134\u1d90\n\u0134\u0003\u0134\u0005\u0134\u1d93\n\u0134\u0003\u0134",
- "\u0003\u0134\u0005\u0134\u1d97\n\u0134\u0003\u0134\u0003\u0134\u0005",
- "\u0134\u1d9b\n\u0134\u0003\u0134\u0003\u0134\u0005\u0134\u1d9f\n\u0134",
- "\u0003\u0134\u0003\u0134\u0003\u0134\u0005\u0134\u1da4\n\u0134\u0003",
- "\u0134\u0005\u0134\u1da7\n\u0134\u0003\u0134\u0003\u0134\u0005\u0134",
- "\u1dab\n\u0134\u0003\u0134\u0003\u0134\u0005\u0134\u1daf\n\u0134\u0003",
- "\u0134\u0003\u0134\u0003\u0134\u0003\u0134\u0003\u0134\u0003\u0134\u0003",
- "\u0134\u0003\u0134\u0003\u0134\u0003\u0134\u0003\u0134\u0003\u0134\u0003",
- "\u0134\u0003\u0134\u0003\u0134\u0005\u0134\u1dc0\n\u0134\u0007\u0134",
- "\u1dc2\n\u0134\f\u0134\u000e\u0134\u1dc5\u000b\u0134\u0005\u0134\u1dc7",
- "\n\u0134\u0003\u0135\u0003\u0135\u0003\u0135\u0003\u0135\u0003\u0135",
- "\u0005\u0135\u1dce\n\u0135\u0003\u0135\u0006\u0135\u1dd1\n\u0135\r\u0135",
- "\u000e\u0135\u1dd2\u0003\u0135\u0003\u0135\u0005\u0135\u1dd7\n\u0135",
- "\u0003\u0135\u0003\u0135\u0003\u0135\u0003\u0135\u0005\u0135\u1ddd\n",
- "\u0135\u0006\u0135\u1ddf\n\u0135\r\u0135\u000e\u0135\u1de0\u0005\u0135",
- "\u1de3\n\u0135\u0003\u0135\u0003\u0135\u0003\u0135\u0005\u0135\u1de8",
- "\n\u0135\u0003\u0135\u0006\u0135\u1deb\n\u0135\r\u0135\u000e\u0135\u1dec",
- "\u0006\u0135\u1def\n\u0135\r\u0135\u000e\u0135\u1df0\u0003\u0135\u0003",
- "\u0135\u0003\u0135\u0005\u0135\u1df6\n\u0135\u0003\u0135\u0003\u0135",
- "\u0003\u0135\u0003\u0135\u0005\u0135\u1dfc\n\u0135\u0006\u0135\u1dfe",
- "\n\u0135\r\u0135\u000e\u0135\u1dff\u0006\u0135\u1e02\n\u0135\r\u0135",
- "\u000e\u0135\u1e03\u0005\u0135\u1e06\n\u0135\u0003\u0135\u0003\u0135",
- "\u0005\u0135\u1e0a\n\u0135\u0003\u0135\u0003\u0135\u0005\u0135\u1e0e",
- "\n\u0135\u0003\u0135\u0003\u0135\u0005\u0135\u1e12\n\u0135\u0003\u0135",
- "\u0003\u0135\u0005\u0135\u1e16\n\u0135\u0003\u0135\u0003\u0135\u0003",
- "\u0135\u0003\u0135\u0005\u0135\u1e1c\n\u0135\u0003\u0135\u0005\u0135",
- "\u1e1f\n\u0135\u0003\u0135\u0003\u0135\u0003\u0135\u0003\u0135\u0005",
- "\u0135\u1e25\n\u0135\u0003\u0135\u0003\u0135\u0005\u0135\u1e29\n\u0135",
- "\u0003\u0135\u0003\u0135\u0005\u0135\u1e2d\n\u0135\u0003\u0135\u0003",
- "\u0135\u0003\u0135\u0003\u0135\u0005\u0135\u1e33\n\u0135\u0003\u0135",
- "\u0003\u0135\u0003\u0135\u0003\u0135\u0005\u0135\u1e39\n\u0135\u0005",
- "\u0135\u1e3b\n\u0135\u0003\u0135\u0005\u0135\u1e3e\n\u0135\u0003\u0135",
- "\u0003\u0135\u0005\u0135\u1e42\n\u0135\u0003\u0135\u0003\u0135\u0005",
- "\u0135\u1e46\n\u0135\u0003\u0135\u0003\u0135\u0005\u0135\u1e4a\n\u0135",
- "\u0003\u0135\u0003\u0135\u0003\u0135\u0003\u0135\u0005\u0135\u1e50\n",
- "\u0135\u0003\u0135\u0005\u0135\u1e53\n\u0135\u0003\u0135\u0003\u0135",
- "\u0003\u0135\u0003\u0135\u0005\u0135\u1e59\n\u0135\u0003\u0135\u0003",
- "\u0135\u0003\u0135\u0003\u0135\u0005\u0135\u1e5f\n\u0135\u0003\u0135",
- "\u0005\u0135\u1e62\n\u0135\u0003\u0135\u0003\u0135\u0003\u0135\u0003",
- "\u0135\u0005\u0135\u1e68\n\u0135\u0003\u0135\u0005\u0135\u1e6b\n\u0135",
- "\u0003\u0135\u0003\u0135\u0003\u0135\u0003\u0135\u0005\u0135\u1e71\n",
- "\u0135\u0003\u0135\u0005\u0135\u1e74\n\u0135\u0003\u0135\u0003\u0135",
- "\u0005\u0135\u1e78\n\u0135\u0003\u0135\u0003\u0135\u0005\u0135\u1e7c",
- "\n\u0135\u0003\u0135\u0003\u0135\u0005\u0135\u1e80\n\u0135\u0003\u0135",
- "\u0003\u0135\u0003\u0135\u0005\u0135\u1e85\n\u0135\u0003\u0135\u0005",
- "\u0135\u1e88\n\u0135\u0003\u0135\u0003\u0135\u0005\u0135\u1e8c\n\u0135",
- "\u0003\u0135\u0003\u0135\u0005\u0135\u1e90\n\u0135\u0003\u0135\u0003",
- "\u0135\u0003\u0135\u0003\u0135\u0005\u0135\u1e96\n\u0135\u0003\u0135",
- "\u0005\u0135\u1e99\n\u0135\u0003\u0135\u0003\u0135\u0005\u0135\u1e9d",
- "\n\u0135\u0003\u0135\u0003\u0135\u0003\u0135\u0003\u0135\u0003\u0135",
- "\u0003\u0135\u0003\u0135\u0003\u0135\u0003\u0135\u0003\u0135\u0003\u0135",
- "\u0003\u0135\u0003\u0135\u0003\u0135\u0003\u0135\u0005\u0135\u1eae\n",
- "\u0135\u0007\u0135\u1eb0\n\u0135\f\u0135\u000e\u0135\u1eb3\u000b\u0135",
- "\u0005\u0135\u1eb5\n\u0135\u0003\u0136\u0003\u0136\u0003\u0136\u0003",
- "\u0136\u0003\u0136\u0003\u0136\u0003\u0136\u0003\u0136\u0003\u0136\u0003",
- "\u0136\u0003\u0136\u0003\u0136\u0005\u0136\u1ec3\n\u0136\u0003\u0136",
- "\u0003\u0136\u0003\u0136\u0003\u0136\u0005\u0136\u1ec9\n\u0136\u0003",
- "\u0136\u0003\u0136\u0003\u0136\u0003\u0136\u0003\u0136\u0003\u0136\u0005",
- "\u0136\u1ed1\n\u0136\u0003\u0136\u0003\u0136\u0003\u0136\u0003\u0136",
- "\u0003\u0136\u0006\u0136\u1ed8\n\u0136\r\u0136\u000e\u0136\u1ed9\u0003",
- "\u0136\u0005\u0136\u1edd\n\u0136\u0003\u0137\u0003\u0137\u0003\u0137",
- "\u0003\u0137\u0003\u0137\u0003\u0137\u0003\u0137\u0003\u0137\u0003\u0137",
- "\u0003\u0137\u0003\u0137\u0003\u0137\u0003\u0137\u0003\u0138\u0003\u0138",
- "\u0003\u0138\u0003\u0138\u0003\u0138\u0003\u0138\u0003\u0138\u0003\u0138",
- "\u0003\u0138\u0003\u0138\u0003\u0138\u0003\u0138\u0003\u0138\u0003\u0138",
- "\u0003\u0139\u0003\u0139\u0003\u0139\u0003\u0139\u0005\u0139\u1efe\n",
- "\u0139\u0003\u013a\u0003\u013a\u0005\u013a\u1f02\n\u013a\u0003\u013a",
- "\u0003\u013a\u0005\u013a\u1f06\n\u013a\u0003\u013b\u0003\u013b\u0003",
- "\u013b\u0003\u013b\u0003\u013b\u0005\u013b\u1f0d\n\u013b\u0003\u013c",
- "\u0003\u013c\u0003\u013c\u0003\u013c\u0003\u013d\u0003\u013d\u0003\u013d",
- "\u0003\u013e\u0003\u013e\u0005\u013e\u1f18\n\u013e\u0003\u013e\u0003",
- "\u013e\u0005\u013e\u1f1c\n\u013e\u0003\u013e\u0003\u013e\u0003\u013e",
- "\u0007\u013e\u1f21\n\u013e\f\u013e\u000e\u013e\u1f24\u000b\u013e\u0005",
- "\u013e\u1f26\n\u013e\u0003\u013e\u0005\u013e\u1f29\n\u013e\u0003\u013e",
- "\u0003\u013e\u0003\u013e\u0003\u013e\u0007\u013e\u1f2f\n\u013e\f\u013e",
- "\u000e\u013e\u1f32\u000b\u013e\u0003\u013e\u0003\u013e\u0005\u013e\u1f36",
- "\n\u013e\u0003\u013e\u0003\u013e\u0003\u013e\u0005\u013e\u1f3b\n\u013e",
- "\u0003\u013e\u0005\u013e\u1f3e\n\u013e\u0005\u013e\u1f40\n\u013e\u0003",
- "\u013f\u0003\u013f\u0005\u013f\u1f44\n\u013f\u0003\u013f\u0003\u013f",
- "\u0005\u013f\u1f48\n\u013f\u0003\u013f\u0005\u013f\u1f4b\n\u013f\u0003",
- "\u013f\u0003\u013f\u0005\u013f\u1f4f\n\u013f\u0003\u0140\u0003\u0140",
- "\u0003\u0141\u0003\u0141\u0005\u0141\u1f55\n\u0141\u0003\u0141\u0003",
- "\u0141\u0003\u0141\u0005\u0141\u1f5a\n\u0141\u0003\u0141\u0003\u0141",
- "\u0003\u0141\u0003\u0141\u0003\u0141\u0005\u0141\u1f61\n\u0141\u0005",
- "\u0141\u1f63\n\u0141\u0003\u0141\u0003\u0141\u0005\u0141\u1f67\n\u0141",
- "\u0003\u0141\u0003\u0141\u0003\u0141\u0003\u0141\u0007\u0141\u1f6d\n",
- "\u0141\f\u0141\u000e\u0141\u1f70\u000b\u0141\u0003\u0141\u0003\u0141",
- "\u0003\u0141\u0005\u0141\u1f75\n\u0141\u0003\u0141\u0003\u0141\u0005",
- "\u0141\u1f79\n\u0141\u0003\u0141\u0005\u0141\u1f7c\n\u0141\u0003\u0141",
- "\u0003\u0141\u0003\u0141\u0003\u0141\u0003\u0141\u0003\u0141\u0003\u0141",
- "\u0005\u0141\u1f85\n\u0141\u0003\u0141\u0005\u0141\u1f88\n\u0141\u0003",
- "\u0141\u0003\u0141\u0003\u0141\u0003\u0141\u0005\u0141\u1f8e\n\u0141",
- "\u0003\u0142\u0003\u0142\u0003\u0142\u0003\u0142\u0003\u0142\u0005\u0142",
- "\u1f95\n\u0142\u0003\u0142\u0003\u0142\u0003\u0142\u0005\u0142\u1f9a",
- "\n\u0142\u0003\u0142\u0003\u0142\u0003\u0142\u0003\u0142\u0003\u0142",
- "\u0003\u0142\u0005\u0142\u1fa2\n\u0142\u0003\u0143\u0003\u0143\u0003",
- "\u0143\u0005\u0143\u1fa7\n\u0143\u0003\u0143\u0003\u0143\u0003\u0143",
- "\u0003\u0143\u0003\u0143\u0003\u0143\u0003\u0143\u0003\u0143\u0003\u0143",
- "\u0003\u0143\u0005\u0143\u1fb3\n\u0143\u0005\u0143\u1fb5\n\u0143\u0003",
- "\u0144\u0003\u0144\u0003\u0144\u0003\u0144\u0003\u0144\u0003\u0144\u0003",
- "\u0144\u0003\u0144\u0003\u0144\u0005\u0144\u1fc0\n\u0144\u0003\u0145",
- "\u0003\u0145\u0003\u0145\u0003\u0145\u0003\u0145\u0005\u0145\u1fc7\n",
- "\u0145\u0003\u0145\u0003\u0145\u0003\u0145\u0003\u0145\u0003\u0145\u0003",
- "\u0145\u0007\u0145\u1fcf\n\u0145\f\u0145\u000e\u0145\u1fd2\u000b\u0145",
- "\u0003\u0146\u0003\u0146\u0003\u0146\u0003\u0146\u0003\u0147\u0003\u0147",
- "\u0003\u0147\u0003\u0147\u0003\u0147\u0003\u0147\u0003\u0147\u0003\u0147",
- "\u0003\u0147\u0003\u0147\u0003\u0147\u0003\u0147\u0003\u0147\u0003\u0147",
- "\u0003\u0147\u0003\u0147\u0005\u0147\u1fe8\n\u0147\u0003\u0148\u0003",
- "\u0148\u0003\u0148\u0003\u0148\u0003\u0148\u0003\u0148\u0003\u0148\u0003",
- "\u0148\u0003\u0148\u0003\u0148\u0003\u0148\u0005\u0148\u1ff5\n\u0148",
- "\u0003\u0149\u0003\u0149\u0003\u0149\u0003\u0149\u0003\u0149\u0003\u0149",
- "\u0003\u0149\u0003\u0149\u0003\u0149\u0003\u0149\u0003\u0149\u0003\u0149",
- "\u0003\u0149\u0003\u0149\u0005\u0149\u2005\n\u0149\u0003\u0149\u0003",
- "\u0149\u0003\u0149\u0005\u0149\u200a\n\u0149\u0003\u0149\u0003\u0149",
- "\u0003\u0149\u0003\u0149\u0003\u0149\u0005\u0149\u2011\n\u0149\u0003",
- "\u0149\u0005\u0149\u2014\n\u0149\u0006\u0149\u2016\n\u0149\r\u0149\u000e",
- "\u0149\u2017\u0005\u0149\u201a\n\u0149\u0003\u014a\u0003\u014a\u0003",
- "\u014a\u0003\u014a\u0003\u014a\u0003\u014a\u0003\u014a\u0003\u014a\u0003",
- "\u014a\u0003\u014a\u0003\u014a\u0003\u014a\u0003\u014a\u0003\u014a\u0003",
- "\u014a\u0005\u014a\u202b\n\u014a\u0003\u014b\u0003\u014b\u0003\u014c",
- "\u0003\u014c\u0003\u014c\u0003\u014c\u0003\u014c\u0003\u014c\u0003\u014c",
- "\u0003\u014c\u0003\u014c\u0003\u014c\u0003\u014c\u0005\u014c\u203a\n",
- "\u014c\u0003\u014d\u0003\u014d\u0003\u014d\u0003\u014d\u0003\u014d\u0003",
- "\u014d\u0005\u014d\u2042\n\u014d\u0003\u014d\u0003\u014d\u0003\u014d",
- "\u0003\u014d\u0003\u014d\u0003\u014d\u0003\u014d\u0005\u014d\u204b\n",
- "\u014d\u0003\u014d\u0003\u014d\u0003\u014d\u0003\u014d\u0003\u014d\u0003",
- "\u014d\u0005\u014d\u2053\n\u014d\u0003\u014e\u0003\u014e\u0003\u014e",
- "\u0003\u014e\u0003\u014e\u0003\u014e\u0003\u014e\u0005\u014e\u205c\n",
- "\u014e\u0003\u014e\u0003\u014e\u0003\u014e\u0003\u014e\u0003\u014e\u0003",
- "\u014e\u0003\u014e\u0003\u014e\u0003\u014e\u0005\u014e\u2067\n\u014e",
- "\u0003\u014e\u0003\u014e\u0005\u014e\u206b\n\u014e\u0005\u014e\u206d",
- "\n\u014e\u0005\u014e\u206f\n\u014e\u0003\u014f\u0003\u014f\u0003\u014f",
- "\u0003\u014f\u0005\u014f\u2075\n\u014f\u0003\u014f\u0003\u014f\u0003",
- "\u014f\u0005\u014f\u207a\n\u014f\u0003\u014f\u0003\u014f\u0003\u014f",
- "\u0003\u014f\u0003\u014f\u0005\u014f\u2081\n\u014f\u0003\u014f\u0003",
- "\u014f\u0003\u014f\u0003\u014f\u0003\u014f\u0003\u014f\u0003\u014f\u0003",
- "\u014f\u0003\u014f\u0003\u014f\u0003\u014f\u0005\u014f\u208e\n\u014f",
- "\u0005\u014f\u2090\n\u014f\u0005\u014f\u2092\n\u014f\u0003\u014f\u0005",
- "\u014f\u2095\n\u014f\u0003\u014f\u0005\u014f\u2098\n\u014f\u0003\u0150",
- "\u0003\u0150\u0003\u0150\u0003\u0150\u0003\u0150\u0005\u0150\u209f\n",
- "\u0150\u0003\u0150\u0005\u0150\u20a2\n\u0150\u0003\u0150\u0003\u0150",
- "\u0003\u0150\u0003\u0150\u0005\u0150\u20a8\n\u0150\u0003\u0150\u0003",
- "\u0150\u0003\u0150\u0005\u0150\u20ad\n\u0150\u0005\u0150\u20af\n\u0150",
- "\u0003\u0150\u0005\u0150\u20b2\n\u0150\u0003\u0150\u0003\u0150\u0003",
- "\u0150\u0003\u0150\u0005\u0150\u20b8\n\u0150\u0003\u0150\u0003\u0150",
- "\u0003\u0150\u0003\u0150\u0003\u0150\u0003\u0150\u0005\u0150\u20c0\n",
- "\u0150\u0005\u0150\u20c2\n\u0150\u0003\u0150\u0005\u0150\u20c5\n\u0150",
- "\u0003\u0150\u0003\u0150\u0005\u0150\u20c9\n\u0150\u0003\u0150\u0005",
- "\u0150\u20cc\n\u0150\u0003\u0150\u0003\u0150\u0003\u0150\u0003\u0150",
- "\u0003\u0150\u0003\u0150\u0003\u0150\u0003\u0150\u0005\u0150\u20d6\n",
- "\u0150\u0003\u0150\u0005\u0150\u20d9\n\u0150\u0003\u0150\u0003\u0150",
- "\u0005\u0150\u20dd\n\u0150\u0003\u0150\u0005\u0150\u20e0\n\u0150\u0003",
- "\u0150\u0003\u0150\u0003\u0150\u0003\u0150\u0005\u0150\u20e6\n\u0150",
- "\u0003\u0150\u0005\u0150\u20e9\n\u0150\u0005\u0150\u20eb\n\u0150\u0003",
- "\u0151\u0003\u0151\u0005\u0151\u20ef\n\u0151\u0003\u0152\u0003\u0152",
- "\u0003\u0152\u0005\u0152\u20f4\n\u0152\u0003\u0153\u0003\u0153\u0005",
- "\u0153\u20f8\n\u0153\u0003\u0154\u0003\u0154\u0003\u0154\u0005\u0154",
- "\u20fd\n\u0154\u0003\u0155\u0003\u0155\u0003\u0155\u0005\u0155\u2102",
- "\n\u0155\u0003\u0156\u0003\u0156\u0003\u0156\u0003\u0156\u0003\u0156",
- "\u0003\u0156\u0005\u0156\u210a\n\u0156\u0003\u0156\u0003\u0156\u0005",
- "\u0156\u210e\n\u0156\u0003\u0156\u0005\u0156\u2111\n\u0156\u0003\u0157",
- "\u0003\u0157\u0003\u0157\u0005\u0157\u2116\n\u0157\u0003\u0158\u0003",
- "\u0158\u0003\u0158\u0003\u0158\u0003\u0159\u0003\u0159\u0005\u0159\u211e",
- "\n\u0159\u0003\u0159\u0003\u0159\u0003\u0159\u0005\u0159\u2123\n\u0159",
- "\u0003\u015a\u0003\u015a\u0003\u015a\u0003\u015a\u0003\u015a\u0003\u015b",
- "\u0003\u015b\u0003\u015b\u0005\u015b\u212d\n\u015b\u0003\u015b\u0003",
- "\u015b\u0003\u015b\u0003\u015c\u0003\u015c\u0003\u015c\u0003\u015c\u0003",
- "\u015d\u0003\u015d\u0005\u015d\u2138\n\u015d\u0003\u015d\u0007\u015d",
- "\u213b\n\u015d\f\u015d\u000e\u015d\u213e\u000b\u015d\u0003\u015e\u0003",
- "\u015e\u0003\u015e\u0005\u015e\u2143\n\u015e\u0003\u015f\u0003\u015f",
- "\u0003\u015f\u0003\u015f\u0005\u015f\u2149\n\u015f\u0003\u015f\u0003",
- "\u015f\u0005\u015f\u214d\n\u015f\u0003\u015f\u0005\u015f\u2150\n\u015f",
- "\u0003\u015f\u0003\u015f\u0005\u015f\u2154\n\u015f\u0003\u015f\u0003",
- "\u015f\u0005\u015f\u2158\n\u015f\u0003\u015f\u0003\u015f\u0003\u015f",
- "\u0003\u015f\u0003\u015f\u0003\u015f\u0005\u015f\u2160\n\u015f\u0003",
- "\u015f\u0003\u015f\u0003\u015f\u0005\u015f\u2165\n\u015f\u0005\u015f",
- "\u2167\n\u015f\u0003\u015f\u0005\u015f\u216a\n\u015f\u0003\u015f\u0007",
- "\u015f\u216d\n\u015f\f\u015f\u000e\u015f\u2170\u000b\u015f\u0003\u0160",
- "\u0003\u0160\u0003\u0160\u0003\u0160\u0003\u0160\u0003\u0160\u0005\u0160",
- "\u2178\n\u0160\u0003\u0161\u0003\u0161\u0005\u0161\u217c\n\u0161\u0003",
- "\u0161\u0003\u0161\u0003\u0161\u0005\u0161\u2181\n\u0161\u0003\u0161",
- "\u0005\u0161\u2184\n\u0161\u0003\u0161\u0005\u0161\u2187\n\u0161\u0003",
- "\u0161\u0003\u0161\u0003\u0161\u0003\u0161\u0005\u0161\u218d\n\u0161",
- "\u0003\u0161\u0003\u0161\u0003\u0161\u0003\u0161\u0003\u0161\u0003\u0161",
- "\u0005\u0161\u2195\n\u0161\u0003\u0161\u0003\u0161\u0003\u0161\u0003",
- "\u0161\u0003\u0161\u0003\u0161\u0005\u0161\u219d\n\u0161\u0003\u0161",
- "\u0005\u0161\u21a0\n\u0161\u0003\u0161\u0005\u0161\u21a3\n\u0161\u0003",
- "\u0162\u0003\u0162\u0005\u0162\u21a7\n\u0162\u0003\u0162\u0003\u0162",
- "\u0003\u0162\u0005\u0162\u21ac\n\u0162\u0003\u0162\u0005\u0162\u21af",
- "\n\u0162\u0003\u0162\u0003\u0162\u0003\u0162\u0003\u0162\u0005\u0162",
- "\u21b5\n\u0162\u0003\u0162\u0003\u0162\u0005\u0162\u21b9\n\u0162\u0003",
- "\u0162\u0003\u0162\u0003\u0162\u0003\u0162\u0005\u0162\u21bf\n\u0162",
- "\u0003\u0162\u0003\u0162\u0003\u0162\u0003\u0162\u0003\u0162\u0003\u0162",
- "\u0005\u0162\u21c7\n\u0162\u0003\u0162\u0003\u0162\u0003\u0162\u0003",
- "\u0162\u0006\u0162\u21cd\n\u0162\r\u0162\u000e\u0162\u21ce\u0003\u0162",
- "\u0005\u0162\u21d2\n\u0162\u0003\u0162\u0003\u0162\u0003\u0162\u0003",
- "\u0162\u0003\u0162\u0003\u0162\u0003\u0162\u0003\u0162\u0003\u0162\u0003",
- "\u0162\u0003\u0162\u0003\u0162\u0003\u0162\u0005\u0162\u21e1\n\u0162",
- "\u0003\u0162\u0005\u0162\u21e4\n\u0162\u0003\u0162\u0005\u0162\u21e7",
- "\n\u0162\u0005\u0162\u21e9\n\u0162\u0003\u0163\u0003\u0163\u0003\u0163",
- "\u0003\u0163\u0003\u0163\u0003\u0163\u0003\u0163\u0003\u0163\u0003\u0163",
- "\u0005\u0163\u21f4\n\u0163\u0003\u0164\u0003\u0164\u0003\u0164\u0003",
- "\u0164\u0003\u0164\u0003\u0164\u0003\u0164\u0003\u0164\u0003\u0164\u0005",
- "\u0164\u21ff\n\u0164\u0003\u0165\u0003\u0165\u0003\u0165\u0003\u0165",
- "\u0003\u0165\u0007\u0165\u2206\n\u0165\f\u0165\u000e\u0165\u2209\u000b",
- "\u0165\u0003\u0165\u0003\u0165\u0003\u0166\u0003\u0166\u0003\u0166\u0003",
- "\u0166\u0003\u0166\u0005\u0166\u2212\n\u0166\u0003\u0167\u0003\u0167",
- "\u0003\u0167\u0003\u0167\u0003\u0167\u0003\u0167\u0003\u0167\u0003\u0167",
- "\u0005\u0167\u221c\n\u0167\u0005\u0167\u221e\n\u0167\u0005\u0167\u2220",
- "\n\u0167\u0003\u0167\u0005\u0167\u2223\n\u0167\u0003\u0167\u0005\u0167",
- "\u2226\n\u0167\u0003\u0167\u0003\u0167\u0003\u0167\u0003\u0167\u0003",
- "\u0167\u0003\u0167\u0003\u0167\u0003\u0167\u0003\u0167\u0005\u0167\u2231",
- "\n\u0167\u0005\u0167\u2233\n\u0167\u0005\u0167\u2235\n\u0167\u0003\u0167",
- "\u0005\u0167\u2238\n\u0167\u0003\u0168\u0007\u0168\u223b\n\u0168\f\u0168",
- "\u000e\u0168\u223e\u000b\u0168\u0003\u0168\u0003\u0168\u0003\u0168\u0003",
- "\u0169\u0003\u0169\u0003\u0169\u0003\u0169\u0003\u0169\u0005\u0169\u2248",
- "\n\u0169\u0003\u016a\u0003\u016a\u0003\u016a\u0003\u016a\u0003\u016a",
- "\u0003\u016a\u0003\u016a\u0005\u016a\u2251\n\u016a\u0003\u016a\u0005",
- "\u016a\u2254\n\u016a\u0003\u016a\u0005\u016a\u2257\n\u016a\u0003\u016a",
- "\u0003\u016a\u0003\u016a\u0003\u016a\u0003\u016a\u0007\u016a\u225e\n",
- "\u016a\f\u016a\u000e\u016a\u2261\u000b\u016a\u0005\u016a\u2263\n\u016a",
- "\u0003\u016a\u0005\u016a\u2266\n\u016a\u0003\u016b\u0003\u016b\u0003",
- "\u016b\u0003\u016b\u0003\u016b\u0005\u016b\u226d\n\u016b\u0003\u016b",
- "\u0005\u016b\u2270\n\u016b\u0003\u016b\u0003\u016b\u0003\u016b\u0003",
- "\u016b\u0003\u016b\u0003\u016b\u0003\u016b\u0003\u016b\u0003\u016b\u0003",
- "\u016b\u0003\u016b\u0003\u016b\u0003\u016b\u0005\u016b\u227f\n\u016b",
- "\u0003\u016b\u0005\u016b\u2282\n\u016b\u0003\u016b\u0003\u016b\u0003",
- "\u016b\u0003\u016b\u0003\u016b\u0005\u016b\u2289\n\u016b\u0003\u016b",
- "\u0003\u016b\u0003\u016b\u0003\u016b\u0003\u016b\u0003\u016b\u0003\u016b",
- "\u0003\u016b\u0003\u016b\u0003\u016b\u0003\u016b\u0003\u016b\u0003\u016b",
- "\u0003\u016b\u0005\u016b\u2299\n\u016b\u0003\u016c\u0003\u016c\u0005",
- "\u016c\u229d\n\u016c\u0003\u016d\u0003\u016d\u0003\u016d\u0003\u016d",
- "\u0003\u016d\u0003\u016d\u0003\u016d\u0003\u016d\u0005\u016d\u22a7\n",
- "\u016d\u0003\u016d\u0003\u016d\u0003\u016d\u0003\u016d\u0003\u016d\u0003",
- "\u016d\u0003\u016d\u0003\u016d\u0003\u016d\u0003\u016d\u0003\u016d\u0003",
- "\u016d\u0003\u016d\u0003\u016d\u0003\u016d\u0003\u016d\u0003\u016d\u0007",
- "\u016d\u22ba\n\u016d\f\u016d\u000e\u016d\u22bd\u000b\u016d\u0003\u016e",
- "\u0003\u016e\u0003\u016e\u0003\u016e\u0005\u016e\u22c3\n\u016e\u0003",
- "\u016f\u0003\u016f\u0003\u016f\u0006\u016f\u22c8\n\u016f\r\u016f\u000e",
- "\u016f\u22c9\u0003\u016f\u0003\u016f\u0005\u016f\u22ce\n\u016f\u0003",
- "\u016f\u0003\u016f\u0003\u016f\u0003\u016f\u0006\u016f\u22d4\n\u016f",
- "\r\u016f\u000e\u016f\u22d5\u0003\u016f\u0003\u016f\u0005\u016f\u22da",
- "\n\u016f\u0003\u016f\u0003\u016f\u0005\u016f\u22de\n\u016f\u0003\u0170",
- "\u0003\u0170\u0003\u0170\u0003\u0170\u0005\u0170\u22e4\n\u0170\u0003",
- "\u0171\u0003\u0171\u0003\u0171\u0003\u0171\u0003\u0171\u0003\u0171\u0003",
- "\u0171\u0003\u0171\u0005\u0171\u22ee\n\u0171\u0003\u0172\u0003\u0172",
- "\u0003\u0172\u0003\u0172\u0003\u0172\u0003\u0172\u0003\u0172\u0003\u0172",
- "\u0005\u0172\u22f8\n\u0172\u0003\u0173\u0003\u0173\u0003\u0174\u0003",
- "\u0174\u0003\u0174\u0005\u0174\u22ff\n\u0174\u0003\u0174\u0003\u0174",
- "\u0003\u0174\u0007\u0174\u2304\n\u0174\f\u0174\u000e\u0174\u2307\u000b",
- "\u0174\u0003\u0174\u0003\u0174\u0003\u0174\u0003\u0174\u0003\u0174\u0003",
- "\u0174\u0005\u0174\u230f\n\u0174\u0003\u0174\u0003\u0174\u0003\u0174",
- "\u0003\u0174\u0003\u0174\u0005\u0174\u2316\n\u0174\u0003\u0175\u0003",
- "\u0175\u0003\u0175\u0003\u0175\u0003\u0175\u0005\u0175\u231d\n\u0175",
- "\u0003\u0175\u0003\u0175\u0003\u0175\u0003\u0175\u0003\u0175\u0003\u0176",
- "\u0003\u0176\u0005\u0176\u2326\n\u0176\u0003\u0176\u0003\u0176\u0005",
- "\u0176\u232a\n\u0176\u0003\u0176\u0003\u0176\u0003\u0176\u0003\u0176",
- "\u0003\u0176\u0003\u0176\u0003\u0176\u0003\u0176\u0005\u0176\u2334\n",
- "\u0176\u0003\u0177\u0003\u0177\u0003\u0177\u0007\u0177\u2339\n\u0177",
- "\f\u0177\u000e\u0177\u233c\u000b\u0177\u0003\u0178\u0003\u0178\u0003",
- "\u0178\u0007\u0178\u2341\n\u0178\f\u0178\u000e\u0178\u2344\u000b\u0178",
- "\u0003\u0179\u0003\u0179\u0003\u0179\u0007\u0179\u2349\n\u0179\f\u0179",
- "\u000e\u0179\u234c\u000b\u0179\u0003\u017a\u0005\u017a\u234f\n\u017a",
- "\u0003\u017a\u0003\u017a\u0003\u017b\u0003\u017b\u0003\u017b\u0003\u017b",
- "\u0003\u017b\u0003\u017b\u0003\u017b\u0003\u017b\u0003\u017b\u0003\u017b",
- "\u0003\u017b\u0003\u017b\u0003\u017b\u0003\u017b\u0003\u017b\u0003\u017b",
- "\u0003\u017b\u0003\u017b\u0005\u017b\u2365\n\u017b\u0003\u017b\u0003",
- "\u017b\u0003\u017b\u0003\u017b\u0003\u017b\u0003\u017b\u0003\u017b\u0005",
- "\u017b\u236e\n\u017b\u0003\u017b\u0003\u017b\u0003\u017b\u0003\u017b",
- "\u0005\u017b\u2374\n\u017b\u0003\u017b\u0003\u017b\u0003\u017b\u0003",
- "\u017b\u0005\u017b\u237a\n\u017b\u0003\u017b\u0003\u017b\u0003\u017b",
- "\u0003\u017b\u0005\u017b\u2380\n\u017b\u0003\u017b\u0003\u017b\u0003",
- "\u017b\u0003\u017b\u0003\u017b\u0003\u017b\u0003\u017b\u0003\u017b\u0005",
- "\u017b\u238a\n\u017b\u0003\u017c\u0003\u017c\u0003\u017c\u0003\u017c",
- "\u0003\u017c\u0005\u017c\u2391\n\u017c\u0003\u017c\u0007\u017c\u2394",
- "\n\u017c\f\u017c\u000e\u017c\u2397\u000b\u017c\u0003\u017d\u0003\u017d",
- "\u0005\u017d\u239b\n\u017d\u0003\u017d\u0003\u017d\u0005\u017d\u239f",
- "\n\u017d\u0003\u017d\u0003\u017d\u0003\u017d\u0003\u017d\u0003\u017d",
- "\u0005\u017d\u23a6\n\u017d\u0003\u017e\u0003\u017e\u0005\u017e\u23aa",
- "\n\u017e\u0003\u017e\u0005\u017e\u23ad\n\u017e\u0003\u017e\u0003\u017e",
- "\u0003\u017e\u0005\u017e\u23b2\n\u017e\u0003\u017e\u0003\u017e\u0005",
- "\u017e\u23b6\n\u017e\u0003\u017e\u0003\u017e\u0005\u017e\u23ba\n\u017e",
- "\u0003\u017e\u0003\u017e\u0003\u017e\u0005\u017e\u23bf\n\u017e\u0003",
- "\u017e\u0003\u017e\u0003\u017e\u0007\u017e\u23c4\n\u017e\f\u017e\u000e",
- "\u017e\u23c7\u000b\u017e\u0005\u017e\u23c9\n\u017e\u0003\u017e\u0003",
- "\u017e\u0005\u017e\u23cd\n\u017e\u0003\u017f\u0003\u017f\u0003\u017f",
- "\u0005\u017f\u23d2\n\u017f\u0003\u017f\u0003\u017f\u0005\u017f\u23d6",
- "\n\u017f\u0003\u0180\u0003\u0180\u0003\u0180\u0003\u0180\u0003\u0180",
- "\u0003\u0180\u0003\u0180\u0005\u0180\u23df\n\u0180\u0003\u0181\u0003",
- "\u0181\u0003\u0181\u0003\u0181\u0003\u0181\u0005\u0181\u23e6\n\u0181",
- "\u0003\u0182\u0003\u0182\u0003\u0182\u0003\u0182\u0003\u0182\u0007\u0182",
- "\u23ed\n\u0182\f\u0182\u000e\u0182\u23f0\u000b\u0182\u0003\u0182\u0003",
- "\u0182\u0003\u0182\u0003\u0182\u0003\u0182\u0003\u0182\u0003\u0182\u0003",
- "\u0182\u0003\u0182\u0005\u0182\u23fb\n\u0182\u0005\u0182\u23fd\n\u0182",
- "\u0003\u0183\u0003\u0183\u0003\u0183\u0003\u0183\u0003\u0183\u0003\u0183",
- "\u0003\u0183\u0003\u0183\u0005\u0183\u2407\n\u0183\u0003\u0183\u0005",
- "\u0183\u240a\n\u0183\u0003\u0183\u0007\u0183\u240d\n\u0183\f\u0183\u000e",
- "\u0183\u2410\u000b\u0183\u0003\u0183\u0003\u0183\u0003\u0183\u0003\u0183",
- "\u0003\u0183\u0003\u0183\u0005\u0183\u2418\n\u0183\u0005\u0183\u241a",
- "\n\u0183\u0005\u0183\u241c\n\u0183\u0003\u0183\u0003\u0183\u0003\u0183",
- "\u0005\u0183\u2421\n\u0183\u0003\u0183\u0003\u0183\u0003\u0183\u0003",
- "\u0183\u0007\u0183\u2427\n\u0183\f\u0183\u000e\u0183\u242a\u000b\u0183",
- "\u0003\u0183\u0003\u0183\u0005\u0183\u242e\n\u0183\u0003\u0183\u0003",
- "\u0183\u0003\u0183\u0003\u0183\u0003\u0183\u0003\u0183\u0005\u0183\u2436",
- "\n\u0183\u0003\u0183\u0007\u0183\u2439\n\u0183\f\u0183\u000e\u0183\u243c",
- "\u000b\u0183\u0003\u0183\u0003\u0183\u0003\u0183\u0005\u0183\u2441\n",
- "\u0183\u0003\u0183\u0003\u0183\u0003\u0183\u0003\u0183\u0003\u0183\u0003",
- "\u0183\u0003\u0183\u0003\u0183\u0005\u0183\u244b\n\u0183\u0005\u0183",
- "\u244d\n\u0183\u0003\u0183\u0003\u0183\u0005\u0183\u2451\n\u0183\u0003",
- "\u0183\u0003\u0183\u0005\u0183\u2455\n\u0183\u0005\u0183\u2457\n\u0183",
- "\u0003\u0184\u0003\u0184\u0003\u0184\u0003\u0184\u0003\u0184\u0003\u0184",
- "\u0003\u0184\u0005\u0184\u2460\n\u0184\u0005\u0184\u2462\n\u0184\u0003",
- "\u0185\u0003\u0185\u0005\u0185\u2466\n\u0185\u0003\u0186\u0003\u0186",
- "\u0003\u0187\u0003\u0187\u0003\u0187\u0003\u0187\u0003\u0187\u0007\u0187",
- "\u246f\n\u0187\f\u0187\u000e\u0187\u2472\u000b\u0187\u0003\u0187\u0003",
- "\u0187\u0003\u0188\u0003\u0188\u0003\u0188\u0003\u0188\u0003\u0188\u0003",
- "\u0188\u0003\u0188\u0003\u0188\u0003\u0188\u0003\u0188\u0003\u0188\u0003",
- "\u0188\u0003\u0188\u0003\u0188\u0003\u0188\u0003\u0188\u0003\u0188\u0003",
- "\u0188\u0003\u0188\u0003\u0188\u0003\u0188\u0003\u0188\u0003\u0188\u0003",
- "\u0188\u0003\u0188\u0003\u0188\u0003\u0188\u0007\u0188\u2491\n\u0188",
- "\f\u0188\u000e\u0188\u2494\u000b\u0188\u0003\u0188\u0003\u0188\u0003",
- "\u0188\u0003\u0188\u0003\u0188\u0003\u0188\u0003\u0188\u0003\u0188\u0003",
- "\u0188\u0003\u0188\u0003\u0188\u0003\u0188\u0003\u0188\u0005\u0188\u24a3",
- "\n\u0188\u0003\u0189\u0003\u0189\u0003\u0189\u0003\u0189\u0003\u0189",
- "\u0005\u0189\u24aa\n\u0189\u0005\u0189\u24ac\n\u0189\u0003\u018a\u0003",
- "\u018a\u0003\u018a\u0007\u018a\u24b1\n\u018a\f\u018a\u000e\u018a\u24b4",
- "\u000b\u018a\u0003\u018b\u0003\u018b\u0003\u018b\u0003\u018b\u0007\u018b",
- "\u24ba\n\u018b\f\u018b\u000e\u018b\u24bd\u000b\u018b\u0003\u018b\u0003",
- "\u018b\u0003\u018c\u0003\u018c\u0003\u018c\u0005\u018c\u24c4\n\u018c",
- "\u0003\u018c\u0003\u018c\u0003\u018d\u0003\u018d\u0003\u018d\u0005\u018d",
- "\u24cb\n\u018d\u0003\u018d\u0003\u018d\u0003\u018d\u0003\u018d\u0003",
- "\u018d\u0005\u018d\u24d2\n\u018d\u0003\u018d\u0005\u018d\u24d5\n\u018d",
- "\u0003\u018d\u0005\u018d\u24d8\n\u018d\u0003\u018e\u0003\u018e\u0003",
- "\u018e\u0003\u018e\u0003\u018e\u0005\u018e\u24df\n\u018e\u0003\u018e",
- "\u0003\u018e\u0003\u018e\u0003\u018e\u0003\u018e\u0005\u018e\u24e6\n",
- "\u018e\u0003\u018e\u0005\u018e\u24e9\n\u018e\u0005\u018e\u24eb\n\u018e",
- "\u0003\u018f\u0003\u018f\u0003\u018f\u0003\u018f\u0003\u018f\u0003\u018f",
- "\u0005\u018f\u24f3\n\u018f\u0005\u018f\u24f5\n\u018f\u0003\u0190\u0003",
- "\u0190\u0003\u0190\u0003\u0190\u0005\u0190\u24fb\n\u0190\u0003\u0191",
- "\u0003\u0191\u0003\u0191\u0007\u0191\u2500\n\u0191\f\u0191\u000e\u0191",
- "\u2503\u000b\u0191\u0003\u0192\u0003\u0192\u0003\u0192\u0003\u0192\u0003",
- "\u0192\u0005\u0192\u250a\n\u0192\u0003\u0193\u0003\u0193\u0007\u0193",
- "\u250e\n\u0193\f\u0193\u000e\u0193\u2511\u000b\u0193\u0003\u0194\u0003",
- "\u0194\u0005\u0194\u2515\n\u0194\u0003\u0194\u0003\u0194\u0005\u0194",
- "\u2519\n\u0194\u0003\u0194\u0003\u0194\u0005\u0194\u251d\n\u0194\u0003",
- "\u0194\u0003\u0194\u0003\u0194\u0005\u0194\u2522\n\u0194\u0005\u0194",
- "\u2524\n\u0194\u0003\u0194\u0003\u0194\u0003\u0194\u0003\u0194\u0003",
- "\u0194\u0003\u0194\u0005\u0194\u252c\n\u0194\u0005\u0194\u252e\n\u0194",
- "\u0003\u0194\u0003\u0194\u0005\u0194\u2532\n\u0194\u0003\u0194\u0003",
- "\u0194\u0003\u0194\u0003\u0194\u0003\u0194\u0005\u0194\u2539\n\u0194",
- "\u0005\u0194\u253b\n\u0194\u0003\u0194\u0003\u0194\u0003\u0194\u0003",
- "\u0194\u0003\u0194\u0005\u0194\u2542\n\u0194\u0005\u0194\u2544\n\u0194",
- "\u0003\u0195\u0003\u0195\u0003\u0195\u0003\u0195\u0003\u0195\u0003\u0195",
- "\u0003\u0195\u0005\u0195\u254d\n\u0195\u0003\u0195\u0003\u0195\u0003",
- "\u0195\u0003\u0195\u0003\u0195\u0003\u0195\u0005\u0195\u2555\n\u0195",
- "\u0003\u0196\u0003\u0196\u0003\u0196\u0007\u0196\u255a\n\u0196\f\u0196",
- "\u000e\u0196\u255d\u000b\u0196\u0003\u0197\u0003\u0197\u0003\u0197\u0005",
- "\u0197\u2562\n\u0197\u0003\u0198\u0003\u0198\u0003\u0198\u0003\u0198",
- "\u0003\u0198\u0003\u0198\u0003\u0198\u0003\u0198\u0003\u0199\u0005\u0199",
- "\u256d\n\u0199\u0003\u0199\u0003\u0199\u0005\u0199\u2571\n\u0199\u0005",
- "\u0199\u2573\n\u0199\u0003\u0199\u0005\u0199\u2576\n\u0199\u0003\u0199",
- "\u0003\u0199\u0003\u0199\u0003\u0199\u0003\u0199\u0003\u0199\u0003\u0199",
- "\u0003\u0199\u0003\u0199\u0003\u0199\u0003\u0199\u0003\u0199\u0003\u0199",
- "\u0003\u0199\u0003\u0199\u0003\u0199\u0003\u0199\u0003\u0199\u0003\u0199",
- "\u0003\u0199\u0003\u0199\u0003\u0199\u0005\u0199\u258e\n\u0199\u0003",
- "\u019a\u0003\u019a\u0003\u019a\u0003\u019a\u0003\u019a\u0003\u019a\u0003",
- "\u019a\u0003\u019a\u0003\u019b\u0003\u019b\u0003\u019b\u0003\u019b\u0003",
- "\u019b\u0003\u019b\u0003\u019b\u0003\u019b\u0003\u019b\u0003\u019b\u0003",
- "\u019c\u0003\u019c\u0003\u019c\u0007\u019c\u25a5\n\u019c\f\u019c\u000e",
- "\u019c\u25a8\u000b\u019c\u0003\u019d\u0003\u019d\u0005\u019d\u25ac\n",
- "\u019d\u0003\u019e\u0003\u019e\u0003\u019e\u0003\u019e\u0003\u019e\u0003",
- "\u019e\u0003\u019e\u0003\u019e\u0003\u019e\u0003\u019e\u0003\u019e\u0003",
- "\u019e\u0003\u019e\u0003\u019e\u0003\u019e\u0003\u019e\u0007\u019e\u25be",
- "\n\u019e\f\u019e\u000e\u019e\u25c1\u000b\u019e\u0003\u019e\u0005\u019e",
- "\u25c4\n\u019e\u0003\u019e\u0003\u019e\u0005\u019e\u25c8\n\u019e\u0003",
- "\u019f\u0003\u019f\u0003\u019f\u0003\u019f\u0003\u01a0\u0003\u01a0\u0003",
- "\u01a0\u0003\u01a0\u0003\u01a0\u0003\u01a0\u0003\u01a0\u0003\u01a0\u0003",
- "\u01a0\u0003\u01a0\u0005\u01a0\u25d8\n\u01a0\u0003\u01a1\u0003\u01a1",
- "\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1",
- "\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1",
- "\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0005\u01a1\u25ec\n",
- "\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003",
- "\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003",
- "\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003",
- "\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003",
- "\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003",
- "\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003",
- "\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003",
- "\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003",
- "\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003",
- "\u01a1\u0003\u01a1\u0003\u01a1\u0005\u01a1\u2626\n\u01a1\u0003\u01a1",
- "\u0003\u01a1\u0005\u01a1\u262a\n\u01a1\u0003\u01a1\u0003\u01a1\u0003",
- "\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003",
- "\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003",
- "\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003",
- "\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003",
- "\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003",
- "\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003",
- "\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003",
- "\u01a1\u0003\u01a1\u0005\u01a1\u265a\n\u01a1\u0003\u01a1\u0003\u01a1",
- "\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1",
- "\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1",
- "\u0005\u01a1\u266a\n\u01a1\u0005\u01a1\u266c\n\u01a1\u0003\u01a2\u0003",
- "\u01a2\u0003\u01a2\u0003\u01a2\u0003\u01a2\u0005\u01a2\u2673\n\u01a2",
- "\u0003\u01a3\u0003\u01a3\u0003\u01a3\u0003\u01a3\u0005\u01a3\u2679\n",
- "\u01a3\u0003\u01a3\u0003\u01a3\u0003\u01a3\u0003\u01a3\u0003\u01a3\u0003",
- "\u01a3\u0003\u01a3\u0003\u01a3\u0003\u01a3\u0003\u01a3\u0003\u01a3\u0005",
- "\u01a3\u2686\n\u01a3\u0003\u01a3\u0003\u01a3\u0003\u01a3\u0003\u01a3",
- "\u0003\u01a3\u0003\u01a3\u0003\u01a3\u0003\u01a3\u0003\u01a3\u0003\u01a3",
- "\u0003\u01a3\u0003\u01a3\u0003\u01a3\u0005\u01a3\u2695\n\u01a3\u0003",
- "\u01a3\u0003\u01a3\u0003\u01a3\u0003\u01a3\u0003\u01a3\u0003\u01a3\u0003",
- "\u01a3\u0003\u01a3\u0003\u01a3\u0005\u01a3\u26a0\n\u01a3\u0003\u01a4",
- "\u0003\u01a4\u0003\u01a4\u0005\u01a4\u26a5\n\u01a4\u0003\u01a4\u0003",
- "\u01a4\u0003\u01a4\u0003\u01a4\u0003\u01a4\u0003\u01a4\u0003\u01a4\u0003",
- "\u01a4\u0005\u01a4\u26af\n\u01a4\u0003\u01a4\u0003\u01a4\u0003\u01a4",
- "\u0003\u01a4\u0003\u01a4\u0003\u01a4\u0003\u01a4\u0005\u01a4\u26b8\n",
- "\u01a4\u0003\u01a5\u0003\u01a5\u0003\u01a5\u0003\u01a5\u0003\u01a5\u0003",
- "\u01a5\u0003\u01a5\u0003\u01a6\u0003\u01a6\u0003\u01a6\u0003\u01a6\u0003",
- "\u01a6\u0003\u01a6\u0003\u01a6\u0003\u01a7\u0003\u01a7\u0003\u01a7\u0003",
- "\u01a7\u0003\u01a7\u0003\u01a7\u0003\u01a7\u0003\u01a8\u0003\u01a8\u0003",
- "\u01a8\u0003\u01a8\u0003\u01a8\u0003\u01a9\u0003\u01a9\u0003\u01a9\u0003",
- "\u01a9\u0003\u01a9\u0003\u01aa\u0005\u01aa\u26da\n\u01aa\u0003\u01aa",
- "\u0003\u01aa\u0003\u01ab\u0005\u01ab\u26df\n\u01ab\u0003\u01ab\u0003",
- "\u01ab\u0003\u01ac\u0003\u01ac\u0005\u01ac\u26e5\n\u01ac\u0003\u01ad",
- "\u0005\u01ad\u26e8\n\u01ad\u0003\u01ad\u0003\u01ad\u0003\u01ad\u0005",
- "\u01ad\u26ed\n\u01ad\u0003\u01ad\u0007\u01ad\u26f0\n\u01ad\f\u01ad\u000e",
- "\u01ad\u26f3\u000b\u01ad\u0003\u01ad\u0003\u01ad\u0003\u01ae\u0003\u01ae",
- "\u0003\u01ae\u0003\u01ae\u0005\u01ae\u26fb\n\u01ae\u0003\u01ae\u0007",
- "\u01ae\u26fe\n\u01ae\f\u01ae\u000e\u01ae\u2701\u000b\u01ae\u0003\u01ae",
- "\u0003\u01ae\u0003\u01af\u0005\u01af\u2706\n\u01af\u0003\u01af\u0003",
- "\u01af\u0003\u01af\u0003\u01af\u0003\u01af\u0007\u01af\u270d\n\u01af",
- "\f\u01af\u000e\u01af\u2710\u000b\u01af\u0003\u01af\u0003\u01af\u0003",
- "\u01af\u0003\u01af\u0003\u01af\u0007\u01af\u2717\n\u01af\f\u01af\u000e",
- "\u01af\u271a\u000b\u01af\u0005\u01af\u271c\n\u01af\u0003\u01af\u0003",
- "\u01af\u0003\u01af\u0003\u01af\u0003\u01af\u0003\u01af\u0003\u01af\u0003",
- "\u01af\u0003\u01af\u0003\u01af\u0007\u01af\u2728\n\u01af\f\u01af\u000e",
- "\u01af\u272b\u000b\u01af\u0003\u01af\u0003\u01af\u0003\u01af\u0005\u01af",
- "\u2730\n\u01af\u0003\u01af\u0003\u01af\u0003\u01af\u0003\u01af\u0003",
- "\u01af\u0003\u01af\u0005\u01af\u2738\n\u01af\u0003\u01b0\u0003\u01b0",
- "\u0005\u01b0\u273c\n\u01b0\u0003\u01b1\u0003\u01b1\u0003\u01b1\u0003",
- "\u01b1\u0007\u01b1\u2742\n\u01b1\f\u01b1\u000e\u01b1\u2745\u000b\u01b1",
- "\u0003\u01b1\u0003\u01b1\u0003\u01b2\u0003\u01b2\u0005\u01b2\u274b\n",
- "\u01b2\u0003\u01b3\u0003\u01b3\u0003\u01b3\u0003\u01b3\u0003\u01b3\u0003",
- "\u01b3\u0003\u01b3\u0003\u01b3\u0003\u01b3\u0007\u01b3\u2756\n\u01b3",
- "\f\u01b3\u000e\u01b3\u2759\u000b\u01b3\u0003\u01b4\u0003\u01b4\u0003",
- "\u01b4\u0007\u01b4\u275e\n\u01b4\f\u01b4\u000e\u01b4\u2761\u000b\u01b4",
- "\u0003\u01b5\u0003\u01b5\u0003\u01b5\u0003\u01b5\u0003\u01b5\u0003\u01b5",
- "\u0003\u01b5\u0003\u01b5\u0003\u01b5\u0003\u01b5\u0005\u01b5\u276d\n",
- "\u01b5\u0003\u01b6\u0003\u01b6\u0003\u01b6\u0003\u01b6\u0003\u01b6\u0005",
- "\u01b6\u2774\n\u01b6\u0003\u01b6\u0003\u01b6\u0003\u01b6\u0003\u01b6",
- "\u0005\u01b6\u277a\n\u01b6\u0003\u01b6\u0003\u01b6\u0005\u01b6\u277e",
- "\n\u01b6\u0003\u01b6\u0003\u01b6\u0003\u01b6\u0003\u01b6\u0003\u01b6",
- "\u0003\u01b6\u0003\u01b6\u0003\u01b6\u0003\u01b6\u0003\u01b6\u0003\u01b6",
- "\u0003\u01b6\u0003\u01b6\u0003\u01b6\u0003\u01b6\u0005\u01b6\u278f\n",
- "\u01b6\u0003\u01b7\u0003\u01b7\u0003\u01b7\u0003\u01b7\u0003\u01b7\u0003",
- "\u01b7\u0003\u01b7\u0003\u01b7\u0003\u01b7\u0003\u01b7\u0003\u01b7\u0003",
- "\u01b7\u0003\u01b7\u0005\u01b7\u279e\n\u01b7\u0005\u01b7\u27a0\n\u01b7",
- "\u0003\u01b7\u0003\u01b7\u0003\u01b7\u0005\u01b7\u27a5\n\u01b7\u0003",
- "\u01b8\u0005\u01b8\u27a8\n\u01b8\u0003\u01b8\u0003\u01b8\u0003\u01b9",
- "\u0003\u01b9\u0003\u01b9\u0003\u01b9\u0003\u01b9\u0005\u01b9\u27b1\n",
- "\u01b9\u0003\u01b9\u0005\u01b9\u27b4\n\u01b9\u0003\u01b9\u0005\u01b9",
- "\u27b7\n\u01b9\u0003\u01b9\u0003\u01b9\u0003\u01ba\u0003\u01ba\u0003",
- "\u01ba\u0003\u01bb\u0003\u01bb\u0003\u01bb\u0003\u01bb\u0003\u01bb\u0003",
- "\u01bb\u0005\u01bb\u27c4\n\u01bb\u0003\u01bc\u0003\u01bc\u0005\u01bc",
- "\u27c8\n\u01bc\u0003\u01bd\u0003\u01bd\u0003\u01bd\u0003\u01bd\u0003",
- "\u01bd\u0003\u01bd\u0005\u01bd\u27d0\n\u01bd\u0003\u01be\u0003\u01be",
- "\u0003\u01be\u0003\u01be\u0005\u01be\u27d6\n\u01be\u0003\u01bf\u0003",
- "\u01bf\u0003\u01bf\u0003\u01bf\u0007\u01bf\u27dc\n\u01bf\f\u01bf\u000e",
- "\u01bf\u27df\u000b\u01bf\u0003\u01bf\u0003\u01bf\u0003\u01bf\u0003\u01bf",
- "\u0005\u01bf\u27e5\n\u01bf\u0003\u01bf\u0003\u01bf\u0003\u01bf\u0003",
- "\u01bf\u0005\u01bf\u27eb\n\u01bf\u0003\u01bf\u0003\u01bf\u0003\u01bf",
- "\u0003\u01bf\u0003\u01bf\u0003\u01bf\u0003\u01bf\u0003\u01bf\u0003\u01bf",
- "\u0003\u01bf\u0003\u01bf\u0003\u01bf\u0003\u01bf\u0005\u01bf\u27fa\n",
- "\u01bf\u0003\u01c0\u0003\u01c0\u0003\u01c0\u0003\u01c0\u0003\u01c0\u0003",
- "\u01c0\u0003\u01c0\u0005\u01c0\u2803\n\u01c0\u0003\u01c0\u0003\u01c0",
- "\u0003\u01c1\u0003\u01c1\u0005\u01c1\u2809\n\u01c1\u0003\u01c2\u0003",
- "\u01c2\u0003\u01c2\u0003\u01c2\u0005\u01c2\u280f\n\u01c2\u0003\u01c2",
- "\u0005\u01c2\u2812\n\u01c2\u0003\u01c2\u0003\u01c2\u0005\u01c2\u2816",
- "\n\u01c2\u0003\u01c2\u0003\u01c2\u0003\u01c2\u0007\u01c2\u281b\n\u01c2",
- "\f\u01c2\u000e\u01c2\u281e\u000b\u01c2\u0003\u01c3\u0003\u01c3\u0003",
- "\u01c3\u0003\u01c3\u0003\u01c3\u0005\u01c3\u2825\n\u01c3\u0003\u01c3",
- "\u0005\u01c3\u2828\n\u01c3\u0003\u01c3\u0003\u01c3\u0003\u01c3\u0003",
- "\u01c3\u0005\u01c3\u282e\n\u01c3\u0003\u01c3\u0003\u01c3\u0003\u01c3",
- "\u0003\u01c3\u0005\u01c3\u2834\n\u01c3\u0005\u01c3\u2836\n\u01c3\u0003",
- "\u01c3\u0003\u01c3\u0003\u01c3\u0003\u01c3\u0005\u01c3\u283c\n\u01c3",
- "\u0003\u01c3\u0005\u01c3\u283f\n\u01c3\u0005\u01c3\u2841\n\u01c3\u0003",
- "\u01c3\u0003\u01c3\u0003\u01c3\u0003\u01c3\u0005\u01c3\u2847\n\u01c3",
- "\u0005\u01c3\u2849\n\u01c3\u0003\u01c3\u0003\u01c3\u0003\u01c4\u0003",
- "\u01c4\u0003\u01c4\u0003\u01c4\u0003\u01c4\u0003\u01c4\u0003\u01c4\u0003",
- "\u01c4\u0003\u01c4\u0003\u01c4\u0005\u01c4\u2857\n\u01c4\u0003\u01c4",
- "\u0003\u01c4\u0003\u01c4\u0003\u01c4\u0003\u01c4\u0005\u01c4\u285e\n",
- "\u01c4\u0003\u01c4\u0003\u01c4\u0003\u01c5\u0003\u01c5\u0003\u01c5\u0003",
- "\u01c5\u0003\u01c5\u0005\u01c5\u2867\n\u01c5\u0003\u01c6\u0003\u01c6",
- "\u0003\u01c6\u0003\u01c6\u0003\u01c6\u0005\u01c6\u286e\n\u01c6\u0003",
- "\u01c7\u0003\u01c7\u0003\u01c7\u0003\u01c7\u0003\u01c7\u0003\u01c7\u0003",
- "\u01c7\u0003\u01c7\u0003\u01c7\u0003\u01c7\u0005\u01c7\u287a\n\u01c7",
- "\u0003\u01c7\u0003\u01c7\u0003\u01c7\u0003\u01c7\u0003\u01c7\u0005\u01c7",
- "\u2881\n\u01c7\u0003\u01c7\u0003\u01c7\u0003\u01c8\u0003\u01c8\u0003",
- "\u01c8\u0005\u01c8\u2888\n\u01c8\u0003\u01c8\u0003\u01c8\u0003\u01c8",
- "\u0003\u01c8\u0003\u01c8\u0005\u01c8\u288f\n\u01c8\u0003\u01c8\u0003",
- "\u01c8\u0003\u01c8\u0003\u01c8\u0005\u01c8\u2895\n\u01c8\u0003\u01c8",
- "\u0003\u01c8\u0003\u01c8\u0003\u01c8\u0003\u01c8\u0005\u01c8\u289c\n",
- "\u01c8\u0003\u01c8\u0005\u01c8\u289f\n\u01c8\u0003\u01c9\u0003\u01c9",
- "\u0003\u01c9\u0005\u01c9\u28a4\n\u01c9\u0003\u01c9\u0003\u01c9\u0003",
- "\u01ca\u0003\u01ca\u0003\u01ca\u0005\u01ca\u28ab\n\u01ca\u0003\u01ca",
- "\u0003\u01ca\u0003\u01cb\u0003\u01cb\u0003\u01cb\u0003\u01cb\u0005\u01cb",
- "\u28b3\n\u01cb\u0003\u01cb\u0003\u01cb\u0005\u01cb\u28b7\n\u01cb\u0003",
- "\u01cb\u0005\u01cb\u28ba\n\u01cb\u0003\u01cc\u0003\u01cc\u0003\u01cc",
- "\u0003\u01cc\u0003\u01cc\u0003\u01cc\u0005\u01cc\u28c2\n\u01cc\u0003",
- "\u01cc\u0003\u01cc\u0005\u01cc\u28c6\n\u01cc\u0003\u01cc\u0005\u01cc",
- "\u28c9\n\u01cc\u0003\u01cd\u0003\u01cd\u0005\u01cd\u28cd\n\u01cd\u0003",
- "\u01ce\u0003\u01ce\u0003\u01ce\u0005\u01ce\u28d2\n\u01ce\u0003\u01ce",
- "\u0003\u01ce\u0003\u01ce\u0003\u01ce\u0005\u01ce\u28d8\n\u01ce\u0003",
- "\u01ce\u0003\u01ce\u0003\u01ce\u0003\u01ce\u0005\u01ce\u28de\n\u01ce",
- "\u0003\u01ce\u0003\u01ce\u0003\u01ce\u0003\u01ce\u0005\u01ce\u28e4\n",
- "\u01ce\u0003\u01ce\u0003\u01ce\u0003\u01ce\u0003\u01ce\u0005\u01ce\u28ea",
- "\n\u01ce\u0003\u01ce\u0003\u01ce\u0003\u01ce\u0003\u01ce\u0005\u01ce",
- "\u28f0\n\u01ce\u0003\u01ce\u0003\u01ce\u0003\u01ce\u0003\u01ce\u0005",
- "\u01ce\u28f6\n\u01ce\u0003\u01ce\u0003\u01ce\u0003\u01ce\u0003\u01ce",
- "\u0005\u01ce\u28fc\n\u01ce\u0003\u01ce\u0005\u01ce\u28ff\n\u01ce\u0003",
- "\u01cf\u0003\u01cf\u0005\u01cf\u2903\n\u01cf\u0003\u01cf\u0003\u01cf",
- "\u0003\u01cf\u0005\u01cf\u2908\n\u01cf\u0007\u01cf\u290a\n\u01cf\f\u01cf",
- "\u000e\u01cf\u290d\u000b\u01cf\u0003\u01d0\u0003\u01d0\u0003\u01d0\u0007",
- "\u01d0\u2912\n\u01d0\f\u01d0\u000e\u01d0\u2915\u000b\u01d0\u0003\u01d1",
- "\u0003\u01d1\u0005\u01d1\u2919\n\u01d1\u0003\u01d2\u0003\u01d2\u0003",
- "\u01d3\u0003\u01d3\u0003\u01d4\u0005\u01d4\u2920\n\u01d4\u0003\u01d4",
- "\u0003\u01d4\u0003\u01d5\u0003\u01d5\u0003\u01d5\u0003\u01d5\u0003\u01d5",
- "\u0005\u01d5\u2929\n\u01d5\u0005\u01d5\u292b\n\u01d5\u0003\u01d6\u0003",
- "\u01d6\u0003\u01d6\u0003\u01d6\u0003\u01d6\u0005\u01d6\u2932\n\u01d6",
- "\u0003\u01d7\u0003\u01d7\u0003\u01d7\u0003\u01d7\u0003\u01d7\u0003\u01d7",
- "\u0003\u01d7\u0003\u01d7\u0003\u01d7\u0003\u01d7\u0005\u01d7\u293e\n",
- "\u01d7\u0003\u01d8\u0003\u01d8\u0003\u01d8\u0005\u01d8\u2943\n\u01d8",
- "\u0003\u01d8\u0003\u01d8\u0003\u01d8\u0003\u01d8\u0003\u01d8\u0003\u01d8",
- "\u0003\u01d8\u0003\u01d8\u0003\u01d8\u0005\u01d8\u294e\n\u01d8\u0003",
- "\u01d8\u0003\u01d8\u0003\u01d8\u0003\u01d8\u0003\u01d8\u0003\u01d8\u0003",
- "\u01d8\u0003\u01d8\u0005\u01d8\u2958\n\u01d8\u0005\u01d8\u295a\n\u01d8",
- "\u0003\u01d8\u0003\u01d8\u0003\u01d8\u0003\u01d8\u0005\u01d8\u2960\n",
- "\u01d8\u0005\u01d8\u2962\n\u01d8\u0003\u01d8\u0003\u01d8\u0003\u01d8",
- "\u0005\u01d8\u2967\n\u01d8\u0005\u01d8\u2969\n\u01d8\u0003\u01d8\u0005",
- "\u01d8\u296c\n\u01d8\u0003\u01d9\u0003\u01d9\u0005\u01d9\u2970\n\u01d9",
- "\u0003\u01da\u0003\u01da\u0005\u01da\u2974\n\u01da\u0003\u01db\u0003",
- "\u01db\u0003\u01db\u0003\u01db\u0005\u01db\u297a\n\u01db\u0003\u01db",
- "\u0003\u01db\u0003\u01db\u0003\u01db\u0003\u01db\u0003\u01db\u0003\u01db",
- "\u0005\u01db\u2983\n\u01db\u0003\u01db\u0005\u01db\u2986\n\u01db\u0005",
- "\u01db\u2988\n\u01db\u0003\u01dc\u0005\u01dc\u298b\n\u01dc\u0003\u01dc",
- "\u0003\u01dc\u0003\u01dc\u0003\u01dc\u0005\u01dc\u2991\n\u01dc\u0003",
- "\u01dc\u0003\u01dc\u0005\u01dc\u2995\n\u01dc\u0003\u01dc\u0005\u01dc",
- "\u2998\n\u01dc\u0003\u01dd\u0003\u01dd\u0003\u01dd\u0003\u01dd\u0003",
- "\u01dd\u0003\u01dd\u0003\u01dd\u0005\u01dd\u29a1\n\u01dd\u0003\u01de",
- "\u0003\u01de\u0003\u01de\u0003\u01de\u0003\u01de\u0003\u01de\u0003\u01de",
- "\u0005\u01de\u29aa\n\u01de\u0003\u01df\u0003\u01df\u0003\u01df\u0003",
- "\u01df\u0003\u01df\u0003\u01df\u0003\u01df\u0003\u01df\u0003\u01df\u0003",
- "\u01df\u0005\u01df\u29b6\n\u01df\u0003\u01df\u0005\u01df\u29b9\n\u01df",
- "\u0003\u01e0\u0003\u01e0\u0005\u01e0\u29bd\n\u01e0\u0003\u01e0\u0003",
- "\u01e0\u0003\u01e0\u0003\u01e0\u0005\u01e0\u29c3\n\u01e0\u0003\u01e0",
- "\u0005\u01e0\u29c6\n\u01e0\u0003\u01e0\u0003\u01e0\u0005\u01e0\u29ca",
- "\n\u01e0\u0003\u01e0\u0003\u01e0\u0003\u01e0\u0003\u01e0\u0005\u01e0",
- "\u29d0\n\u01e0\u0003\u01e1\u0003\u01e1\u0003\u01e1\u0005\u01e1\u29d5",
- "\n\u01e1\u0003\u01e2\u0003\u01e2\u0003\u01e2\u0005\u01e2\u29da\n\u01e2",
- "\u0003\u01e2\u0003\u01e2\u0005\u01e2\u29de\n\u01e2\u0003\u01e2\u0003",
- "\u01e2\u0005\u01e2\u29e2\n\u01e2\u0003\u01e2\u0003\u01e2\u0005\u01e2",
- "\u29e6\n\u01e2\u0003\u01e3\u0003\u01e3\u0003\u01e4\u0003\u01e4\u0003",
- "\u01e4\u0005\u01e4\u29ed\n\u01e4\u0003\u01e5\u0003\u01e5\u0003\u01e6",
- "\u0003\u01e6\u0003\u01e6\u0003\u01e6\u0003\u01e6\u0003\u01e6\u0003\u01e6",
- "\u0003\u01e6\u0003\u01e6\u0003\u01e6\u0003\u01e6\u0003\u01e6\u0003\u01e6",
- "\u0003\u01e6\u0003\u01e6\u0005\u01e6\u2a00\n\u01e6\u0003\u01e7\u0003",
- "\u01e7\u0003\u01e8\u0003\u01e8\u0005\u01e8\u2a06\n\u01e8\u0003\u01e8",
- "\u0002\u0004^\u02d8\u01e9\u0002\u0004\u0006\b\n\f\u000e\u0010\u0012",
- "\u0014\u0016\u0018\u001a\u001c\u001e \"$&(*,.02468:<>@BDFHJLNPRTVXZ",
- "\\^`bdfhjlnprtvxz|~\u0080\u0082\u0084\u0086\u0088\u008a\u008c\u008e",
- "\u0090\u0092\u0094\u0096\u0098\u009a\u009c\u009e\u00a0\u00a2\u00a4\u00a6",
- "\u00a8\u00aa\u00ac\u00ae\u00b0\u00b2\u00b4\u00b6\u00b8\u00ba\u00bc\u00be",
- "\u00c0\u00c2\u00c4\u00c6\u00c8\u00ca\u00cc\u00ce\u00d0\u00d2\u00d4\u00d6",
- "\u00d8\u00da\u00dc\u00de\u00e0\u00e2\u00e4\u00e6\u00e8\u00ea\u00ec\u00ee",
- "\u00f0\u00f2\u00f4\u00f6\u00f8\u00fa\u00fc\u00fe\u0100\u0102\u0104\u0106",
- "\u0108\u010a\u010c\u010e\u0110\u0112\u0114\u0116\u0118\u011a\u011c\u011e",
- "\u0120\u0122\u0124\u0126\u0128\u012a\u012c\u012e\u0130\u0132\u0134\u0136",
- "\u0138\u013a\u013c\u013e\u0140\u0142\u0144\u0146\u0148\u014a\u014c\u014e",
- "\u0150\u0152\u0154\u0156\u0158\u015a\u015c\u015e\u0160\u0162\u0164\u0166",
- "\u0168\u016a\u016c\u016e\u0170\u0172\u0174\u0176\u0178\u017a\u017c\u017e",
- "\u0180\u0182\u0184\u0186\u0188\u018a\u018c\u018e\u0190\u0192\u0194\u0196",
- "\u0198\u019a\u019c\u019e\u01a0\u01a2\u01a4\u01a6\u01a8\u01aa\u01ac\u01ae",
- "\u01b0\u01b2\u01b4\u01b6\u01b8\u01ba\u01bc\u01be\u01c0\u01c2\u01c4\u01c6",
- "\u01c8\u01ca\u01cc\u01ce\u01d0\u01d2\u01d4\u01d6\u01d8\u01da\u01dc\u01de",
- "\u01e0\u01e2\u01e4\u01e6\u01e8\u01ea\u01ec\u01ee\u01f0\u01f2\u01f4\u01f6",
- "\u01f8\u01fa\u01fc\u01fe\u0200\u0202\u0204\u0206\u0208\u020a\u020c\u020e",
- "\u0210\u0212\u0214\u0216\u0218\u021a\u021c\u021e\u0220\u0222\u0224\u0226",
- "\u0228\u022a\u022c\u022e\u0230\u0232\u0234\u0236\u0238\u023a\u023c\u023e",
- "\u0240\u0242\u0244\u0246\u0248\u024a\u024c\u024e\u0250\u0252\u0254\u0256",
- "\u0258\u025a\u025c\u025e\u0260\u0262\u0264\u0266\u0268\u026a\u026c\u026e",
- "\u0270\u0272\u0274\u0276\u0278\u027a\u027c\u027e\u0280\u0282\u0284\u0286",
- "\u0288\u028a\u028c\u028e\u0290\u0292\u0294\u0296\u0298\u029a\u029c\u029e",
- "\u02a0\u02a2\u02a4\u02a6\u02a8\u02aa\u02ac\u02ae\u02b0\u02b2\u02b4\u02b6",
- "\u02b8\u02ba\u02bc\u02be\u02c0\u02c2\u02c4\u02c6\u02c8\u02ca\u02cc\u02ce",
- "\u02d0\u02d2\u02d4\u02d6\u02d8\u02da\u02dc\u02de\u02e0\u02e2\u02e4\u02e6",
- "\u02e8\u02ea\u02ec\u02ee\u02f0\u02f2\u02f4\u02f6\u02f8\u02fa\u02fc\u02fe",
- "\u0300\u0302\u0304\u0306\u0308\u030a\u030c\u030e\u0310\u0312\u0314\u0316",
- "\u0318\u031a\u031c\u031e\u0320\u0322\u0324\u0326\u0328\u032a\u032c\u032e",
- "\u0330\u0332\u0334\u0336\u0338\u033a\u033c\u033e\u0340\u0342\u0344\u0346",
- "\u0348\u034a\u034c\u034e\u0350\u0352\u0354\u0356\u0358\u035a\u035c\u035e",
- "\u0360\u0362\u0364\u0366\u0368\u036a\u036c\u036e\u0370\u0372\u0374\u0376",
- "\u0378\u037a\u037c\u037e\u0380\u0382\u0384\u0386\u0388\u038a\u038c\u038e",
- "\u0390\u0392\u0394\u0396\u0398\u039a\u039c\u039e\u03a0\u03a2\u03a4\u03a6",
- "\u03a8\u03aa\u03ac\u03ae\u03b0\u03b2\u03b4\u03b6\u03b8\u03ba\u03bc\u03be",
- "\u03c0\u03c2\u03c4\u03c6\u03c8\u03ca\u03cc\u03ce\u0002\u008b\u0003\u0002",
- "\u0321\u0322\u0004\u0002\u0321\u0321\u0326\u0326\u0004\u0002\u01d5\u01d5",
- "\u02f5\u02f6\u0004\u0002\u0321\u0322\u0326\u0326\u0004\u0002\u00bb\u00bb",
- "\u02d2\u02d2\u0005\u0002\u031e\u031e\u0321\u0321\u0326\u0326\u0005\u0002",
- "||\u012b\u012b\u0168\u0168\u0004\u0002\u00e2\u00e2\u00e5\u00e5\u0003",
- "\u0002\u0326\u0327\u0003\u0002\u0124\u0128\u0004\u0002\u01c2\u01c2\u0277",
- "\u0277\u0004\u0002\u012e\u012e\u0271\u0271\u0005\u0002TT\u012e\u012e",
- "\u0271\u0271\u0005\u0002\u00d5\u00d5\u0100\u0100\u02c3\u02c4\u0004\u0002",
- "\u0013\u0013\u02ec\u02ec\u0004\u0002\u0017\u0017\u023e\u023e\u0004\u0002",
- "\u0006\u0006\u029f\u029f\u0005\u0002\u0006\u0006\u0263\u0263\u029d\u029d",
- "\u0004\u0002\n\nII\u0004\u0002\u0004\u0004gg\u0004\u0002\u01ef\u01ef",
- "\u02d3\u02d3\u0004\u0002\u01e0\u01e0\u01e9\u01e9\u0004\u0002\u0322\u0322",
- "\u0326\u0326\u0004\u0002\u0228\u0228\u024d\u024d\u0004\u0002\b\t\u00db",
- "\u00db\u0005\u0002\u00d5\u00d5\u00f7\u00f7\u00f9\u00f9\u0004\u0002\u014b",
- "\u014b\u014e\u014e\u0004\u0002\u000b\u000b\u00ed\u00ed\u0003\u0002\u0324",
- "\u0325\u0004\u0002\u0004\u0004\u013b\u013b\u0004\u0002\u00b6\u00b6\u0178",
- "\u0178\u0003\u0002\u0106\u0107\u0004\u0002\u0322\u0322\u0326\u0327\u0004",
- "\u0002\u00ce\u00ce\u0166\u0166\u0004\u0002\u00c9\u00c9\u0144\u0144\u0004",
- "\u0002\u010d\u010d\u01e0\u01e0\u0004\u0002\u0324\u0324\u0326\u0326\u0004",
- "\u0002]]\u0091\u0091\u0006\u0002\\\\\u00a2\u00a2\u0131\u0131\u0169\u0169",
- "\u0004\u0002\u001e\u001e\u01ff\u01ff\u0004\u0002\u00a2\u00a2\u0169\u0169",
- "\u0004\u0002\\\\\u0169\u0169\u0005\u0002\u020a\u020a\u024d\u024d\u02f1",
- "\u02f1\u0004\u0002\u0306\u0306\u0322\u0322\u0005\u0002BB\u013d\u013d",
- "\u01f5\u01f5\u0004\u0002YY\u0326\u0326\u0004\u0002YY\u0322\u0322\u0004",
- "\u0002\u0237\u0237\u0326\u0326\u0005\u0002\u020a\u020a\u0228\u0228\u024d",
- "\u024d\u0007\u0002\u0184\u0186\u01da\u01da\u01dc\u01dc\u0299\u029b\u02fb",
- "\u02fc\u0004\u0002\u0085\u0085\u008b\u008b\u0005\u0002\u0215\u0215\u023d",
- "\u023d\u024e\u024e\u0005\u0002\r\r\u0156\u0156\u021f\u021f\u0004\u0002",
- "\u00d5\u00d5\u00f3\u00f3\u0003\u0002\u0102\u0103\u0005\u0002\\\\\u00a2",
- "\u00a2\u0169\u0169\u0004\u0002\u0085\u0085\u0188\u0188\u0004\u0002\u027a",
- "\u027b\u02a0\u02a0\u0004\u0002\u00f5\u00f5\u02bc\u02bc\u0004\u0002\u0006",
- "\u0006\u009e\u009e\u0005\u0002\u01ec\u01ec\u02be\u02be\u030e\u030e\u0005",
- "\u0002\u0153\u0153\u0198\u0198\u01e0\u01e0\u0005\u0002\u01ce\u01ce\u0217",
- "\u0217\u0256\u0256\u0004\u0002\u020d\u020d\u0237\u0237\u0004\u0002\u0006",
- "\u0006\u00a6\u00a7\u0005\u0002\u00ab\u00ab\u00d0\u00d0\u00de\u00de\u0005",
- "\u0002\u0113\u0113\u0151\u0151\u01e2\u01e2\u0004\u0002kk\u01e2\u01e2",
- "\u0005\u0002\u0006\u0006\u017c\u017c\u0282\u0282\u0004\u0002\u008c\u008c",
- "\u00e2\u00e2\u0005\u0002\u01e7\u01e7\u0272\u0272\u0275\u0275\u0004\u0002",
- "\u029d\u029d\u029f\u029f\u0005\u0002\u025c\u025c\u02b4\u02b4\u02d7\u02d7",
- "\u0005\u0002\u018d\u018d\u01e2\u01e2\u0205\u0205\u0004\u0002\u0118\u0118",
- "\u02ea\u02ea\u0004\u0002\u0205\u0205\u02d6\u02d6\u0005\u0002\u008c\u008c",
- "\u01aa\u01aa\u02d6\u02d6\u0005\u0002\u00d5\u00d5\u01b2\u01b2\u02f9\u02f9",
- "\u0004\u0002\u0256\u0256\u02c6\u02c6\u0004\u0002\u0081\u0081\u01fb\u01fb",
- "\u0005\u0002aa\u0155\u0155\u016b\u016b\u0004\u000299\u00da\u00da\u0004",
- "\u0002\u00a0\u00a0\u00d3\u00d3\u0004\u0002\u00d7\u00d7\u013f\u013f\u0004",
- "\u0002\u00d2\u00d2\u0206\u0206\u0004\u0002\u00d9\u00d9\u01b2\u01b2\u0004",
- "\u0002CC\u0150\u0150\u0004\u0002\u00d6\u00d6\u011e\u011e\u0004\u0002",
- "\u00b9\u00b9\u00d8\u00d8\u0004\u0002\u0184\u0186\u02fc\u02fc\u0004\u0002",
- "\u016e\u016e\u023b\u023b\u0003\u0002\u027a\u027b\u0004\u0002\u0081\u0081",
- "\u0327\u0327\u0004\u0002\u01d1\u01d1\u01ec\u01ec\u0004\u0002\u01f3\u01f3",
- "\u02dd\u02dd\u0004\u0002\u0153\u0153\u0172\u0172\u0003\u0002\u015d\u015e",
- "\u0006\u0002\u01ab\u01ab\u027d\u027d\u02cb\u02cb\u0326\u0326\u0004\u0002",
- "\u01bb\u01bb\u01e4\u01e4\u0004\u0002\u0010\u0010;;\u0004\u0002\u0221",
- "\u0221\u02cc\u02cc\u0004\u0002\u0207\u0207\u02c0\u02c0\u0006\u0002\u01e5",
- "\u01e5\u01fa\u01fa\u022d\u022d\u02de\u02de\u0005\u0002\u0278\u0278\u029d",
- "\u029d\u02c1\u02c1\u0004\u0002\u017e\u017e\u02a6\u02a6\u0003\u0002\u0341",
- "\u0343\u0005\u0002\u0336\u0336\u0344\u0345\u0347\u0349\u0003\u0002\u0344",
- "\u0345\u0005\u0002\u0006\u0006\r\r\u0141\u0141\u0004\u0002\u0006\u0006",
- "bb\u0003\u0002\u0328\u0329\u0004\u0002\u02b9\u02b9\u02bc\u02bc\u0004",
- "\u0002\u0200\u0200\u0262\u0262\u0004\u0002\u0003\u0003\u0319\u0319\u0004",
- "\u0002\u0198\u0198\u0283\u0283\u0004\u0002\u0011\u0011^^\u0004\u0002",
- "\u00ee\u00ee\u0213\u0213\u0005\u0002\u00c9\u00c9\u01b9\u01b9\u0213\u0213",
- "\u0005\u0002\u00c9\u00c9\u0213\u0213\u023c\u023c\u0004\u0002\u00df\u00df",
- "\u0321\u0322\u0005\u0002\u008c\u008c\u00b1\u00b1\u011f\u011f\u0006\u0002",
- "\u00c9\u00c9\u0213\u0213\u023c\u023c\u02a7\u02a7\u0004\u0002\u0321\u0321",
- "\u0323\u0323\u0005\u0002\u01d8\u01d8\u0298\u0298\u02ba\u02ba\b\u0002",
- "\u01a0\u01a0\u0241\u0241\u0251\u0251\u02e2\u02e3\u02e9\u02e9\u030c\u030d",
- "\u0003\u0002\u01be\u01bf\u0004\u0002\u0201\u0201\u0230\u0230\u0004\u0002",
- "\u022e\u022e\u0231\u0231\u0004\u0002\u0297\u0297\u02bc\u02bc\u0005\u0002",
- "\u008c\u008c\u00e2\u00e2\u029d\u029d\u0004\u000255\u00d4\u00d4\u0003",
- "\u0002\u0110\u0111\u0004\u0002\u0241\u0241\u0322\u0322\u0004\u0002\u0322",
- "\u0322\u0328\u0328$\u0002((RRrr\u0082\u0083\u0086\u0086\u00a0\u00a0",
- "\u00ac\u00ac\u00bd\u00be\u00e3\u00e3\u00f1\u00f1\u0105\u0105\u0107\u0107",
- "\u0109\u0109\u011a\u011b\u0122\u0122\u0129\u0129\u0135\u0135\u013e\u013e",
- "\u0142\u0142\u0144\u0144\u0149\u0149\u014b\u014b\u0156\u0156\u017e\u01e5",
- "\u01e7\u021c\u021e\u0225\u0228\u027b\u027d\u02e0\u02e2\u02e7\u02e9\u0306",
- "\u0308\u0311\u0313\u0315\u0317\u0317\u0323\u0323\u0003\u0002\u032e\u0335",
- "\u0007\u0002\u020a\u020a\u0228\u0228\u024d\u024d\u02f1\u02f1\u0343\u0343",
- "\u0002\u30e6\u0002\u03d3\u0003\u0002\u0002\u0002\u0004\u03e9\u0003\u0002",
- "\u0002\u0002\u0006\u03ef\u0003\u0002\u0002\u0002\b\u03fa\u0003\u0002",
- "\u0002\u0002\n\u0401\u0003\u0002\u0002\u0002\f\u04a2\u0003\u0002\u0002",
- "\u0002\u000e\u04a9\u0003\u0002\u0002\u0002\u0010\u04b7\u0003\u0002\u0002",
- "\u0002\u0012\u04b9\u0003\u0002\u0002\u0002\u0014\u04c4\u0003\u0002\u0002",
- "\u0002\u0016\u04c8\u0003\u0002\u0002\u0002\u0018\u04d6\u0003\u0002\u0002",
- "\u0002\u001a\u04d8\u0003\u0002\u0002\u0002\u001c\u04df\u0003\u0002\u0002",
- "\u0002\u001e\u04e9\u0003\u0002\u0002\u0002 \u04f5\u0003\u0002\u0002",
- "\u0002\"\u04f7\u0003\u0002\u0002\u0002$\u04f9\u0003\u0002\u0002\u0002",
- "&\u04fb\u0003\u0002\u0002\u0002(\u0515\u0003\u0002\u0002\u0002*\u0526",
- "\u0003\u0002\u0002\u0002,\u0533\u0003\u0002\u0002\u0002.\u0562\u0003",
- "\u0002\u0002\u00020\u0564\u0003\u0002\u0002\u00022\u0576\u0003\u0002",
- "\u0002\u00024\u0578\u0003\u0002\u0002\u00026\u0595\u0003\u0002\u0002",
- "\u00028\u05aa\u0003\u0002\u0002\u0002:\u05b7\u0003\u0002\u0002\u0002",
- "<\u05bc\u0003\u0002\u0002\u0002>\u05c0\u0003\u0002\u0002\u0002@\u05c4",
- "\u0003\u0002\u0002\u0002B\u05cf\u0003\u0002\u0002\u0002D\u05d4\u0003",
- "\u0002\u0002\u0002F\u05d6\u0003\u0002\u0002\u0002H\u05db\u0003\u0002",
- "\u0002\u0002J\u05dd\u0003\u0002\u0002\u0002L\u05df\u0003\u0002\u0002",
- "\u0002N\u05e2\u0003\u0002\u0002\u0002P\u05e6\u0003\u0002\u0002\u0002",
- "R\u05ec\u0003\u0002\u0002\u0002T\u05ee\u0003\u0002\u0002\u0002V\u05f1",
- "\u0003\u0002\u0002\u0002X\u05f3\u0003\u0002\u0002\u0002Z\u05f6\u0003",
- "\u0002\u0002\u0002\\\u05fb\u0003\u0002\u0002\u0002^\u0606\u0003\u0002",
- "\u0002\u0002`\u060f\u0003\u0002\u0002\u0002b\u0613\u0003\u0002\u0002",
- "\u0002d\u0615\u0003\u0002\u0002\u0002f\u061b\u0003\u0002\u0002\u0002",
- "h\u061d\u0003\u0002\u0002\u0002j\u061f\u0003\u0002\u0002\u0002l\u0622",
- "\u0003\u0002\u0002\u0002n\u062a\u0003\u0002\u0002\u0002p\u062c\u0003",
- "\u0002\u0002\u0002r\u062e\u0003\u0002\u0002\u0002t\u0644\u0003\u0002",
- "\u0002\u0002v\u0657\u0003\u0002\u0002\u0002x\u065f\u0003\u0002\u0002",
- "\u0002z\u0663\u0003\u0002\u0002\u0002|\u066b\u0003\u0002\u0002\u0002",
- "~\u067a\u0003\u0002\u0002\u0002\u0080\u067c\u0003\u0002\u0002\u0002",
- "\u0082\u06a8\u0003\u0002\u0002\u0002\u0084\u06b1\u0003\u0002\u0002\u0002",
- "\u0086\u06be\u0003\u0002\u0002\u0002\u0088\u06c0\u0003\u0002\u0002\u0002",
- "\u008a\u06c2\u0003\u0002\u0002\u0002\u008c\u06c5\u0003\u0002\u0002\u0002",
- "\u008e\u06c9\u0003\u0002\u0002\u0002\u0090\u06d3\u0003\u0002\u0002\u0002",
- "\u0092\u06dd\u0003\u0002\u0002\u0002\u0094\u0709\u0003\u0002\u0002\u0002",
- "\u0096\u0720\u0003\u0002\u0002\u0002\u0098\u0722\u0003\u0002\u0002\u0002",
- "\u009a\u0724\u0003\u0002\u0002\u0002\u009c\u0726\u0003\u0002\u0002\u0002",
- "\u009e\u072b\u0003\u0002\u0002\u0002\u00a0\u072e\u0003\u0002\u0002\u0002",
- "\u00a2\u0891\u0003\u0002\u0002\u0002\u00a4\u0893\u0003\u0002\u0002\u0002",
- "\u00a6\u08c9\u0003\u0002\u0002\u0002\u00a8\u08ce\u0003\u0002\u0002\u0002",
- "\u00aa\u08fa\u0003\u0002\u0002\u0002\u00ac\u0911\u0003\u0002\u0002\u0002",
- "\u00ae\u092f\u0003\u0002\u0002\u0002\u00b0\u0933\u0003\u0002\u0002\u0002",
- "\u00b2\u0939\u0003\u0002\u0002\u0002\u00b4\u093f\u0003\u0002\u0002\u0002",
- "\u00b6\u0943\u0003\u0002\u0002\u0002\u00b8\u0947\u0003\u0002\u0002\u0002",
- "\u00ba\u094c\u0003\u0002\u0002\u0002\u00bc\u095a\u0003\u0002\u0002\u0002",
- "\u00be\u0960\u0003\u0002\u0002\u0002\u00c0\u0966\u0003\u0002\u0002\u0002",
- "\u00c2\u0976\u0003\u0002\u0002\u0002\u00c4\u097a\u0003\u0002\u0002\u0002",
- "\u00c6\u0980\u0003\u0002\u0002\u0002\u00c8\u0986\u0003\u0002\u0002\u0002",
- "\u00ca\u098e\u0003\u0002\u0002\u0002\u00cc\u0994\u0003\u0002\u0002\u0002",
- "\u00ce\u09a3\u0003\u0002\u0002\u0002\u00d0\u09b5\u0003\u0002\u0002\u0002",
- "\u00d2\u09bc\u0003\u0002\u0002\u0002\u00d4\u09c1\u0003\u0002\u0002\u0002",
- "\u00d6\u09cc\u0003\u0002\u0002\u0002\u00d8\u09d1\u0003\u0002\u0002\u0002",
- "\u00da\u09d5\u0003\u0002\u0002\u0002\u00dc\u09d9\u0003\u0002\u0002\u0002",
- "\u00de\u09de\u0003\u0002\u0002\u0002\u00e0\u09e3\u0003\u0002\u0002\u0002",
- "\u00e2\u09e8\u0003\u0002\u0002\u0002\u00e4\u09f6\u0003\u0002\u0002\u0002",
- "\u00e6\u09fc\u0003\u0002\u0002\u0002\u00e8\u0a01\u0003\u0002\u0002\u0002",
- "\u00ea\u0a09\u0003\u0002\u0002\u0002\u00ec\u0a0d\u0003\u0002\u0002\u0002",
- "\u00ee\u0a1e\u0003\u0002\u0002\u0002\u00f0\u0a26\u0003\u0002\u0002\u0002",
- "\u00f2\u0a2c\u0003\u0002\u0002\u0002\u00f4\u0a3a\u0003\u0002\u0002\u0002",
- "\u00f6\u0a50\u0003\u0002\u0002\u0002\u00f8\u0a55\u0003\u0002\u0002\u0002",
- "\u00fa\u0a5b\u0003\u0002\u0002\u0002\u00fc\u0a60\u0003\u0002\u0002\u0002",
- "\u00fe\u0a64\u0003\u0002\u0002\u0002\u0100\u0a80\u0003\u0002\u0002\u0002",
- "\u0102\u0a8b\u0003\u0002\u0002\u0002\u0104\u0a94\u0003\u0002\u0002\u0002",
- "\u0106\u0aa1\u0003\u0002\u0002\u0002\u0108\u0aa9\u0003\u0002\u0002\u0002",
- "\u010a\u0aae\u0003\u0002\u0002\u0002\u010c\u0ab9\u0003\u0002\u0002\u0002",
- "\u010e\u0ad7\u0003\u0002\u0002\u0002\u0110\u0af5\u0003\u0002\u0002\u0002",
- "\u0112\u0b03\u0003\u0002\u0002\u0002\u0114\u0b1b\u0003\u0002\u0002\u0002",
- "\u0116\u0b2b\u0003\u0002\u0002\u0002\u0118\u0b38\u0003\u0002\u0002\u0002",
- "\u011a\u0b4b\u0003\u0002\u0002\u0002\u011c\u0b58\u0003\u0002\u0002\u0002",
- "\u011e\u0b61\u0003\u0002\u0002\u0002\u0120\u0b7f\u0003\u0002\u0002\u0002",
- "\u0122\u0c72\u0003\u0002\u0002\u0002\u0124\u0c7b\u0003\u0002\u0002\u0002",
- "\u0126\u0cb5\u0003\u0002\u0002\u0002\u0128\u0ce6\u0003\u0002\u0002\u0002",
- "\u012a\u0ce8\u0003\u0002\u0002\u0002\u012c\u0d11\u0003\u0002\u0002\u0002",
- "\u012e\u0d43\u0003\u0002\u0002\u0002\u0130\u0d89\u0003\u0002\u0002\u0002",
- "\u0132\u0dcc\u0003\u0002\u0002\u0002\u0134\u0ddc\u0003\u0002\u0002\u0002",
- "\u0136\u0df8\u0003\u0002\u0002\u0002\u0138\u0e0b\u0003\u0002\u0002\u0002",
- "\u013a\u0e20\u0003\u0002\u0002\u0002\u013c\u0e68\u0003\u0002\u0002\u0002",
- "\u013e\u0ec7\u0003\u0002\u0002\u0002\u0140\u0edd\u0003\u0002\u0002\u0002",
- "\u0142\u0ee9\u0003\u0002\u0002\u0002\u0144\u0f05\u0003\u0002\u0002\u0002",
- "\u0146\u0f1a\u0003\u0002\u0002\u0002\u0148\u0f34\u0003\u0002\u0002\u0002",
- "\u014a\u0f3d\u0003\u0002\u0002\u0002\u014c\u0f5d\u0003\u0002\u0002\u0002",
- "\u014e\u0f67\u0003\u0002\u0002\u0002\u0150\u0f77\u0003\u0002\u0002\u0002",
- "\u0152\u0f83\u0003\u0002\u0002\u0002\u0154\u0f8c\u0003\u0002\u0002\u0002",
- "\u0156\u0f9d\u0003\u0002\u0002\u0002\u0158\u0fb5\u0003\u0002\u0002\u0002",
- "\u015a\u1021\u0003\u0002\u0002\u0002\u015c\u103b\u0003\u0002\u0002\u0002",
- "\u015e\u1047\u0003\u0002\u0002\u0002\u0160\u104e\u0003\u0002\u0002\u0002",
- "\u0162\u107a\u0003\u0002\u0002\u0002\u0164\u1085\u0003\u0002\u0002\u0002",
- "\u0166\u1099\u0003\u0002\u0002\u0002\u0168\u10c3\u0003\u0002\u0002\u0002",
- "\u016a\u10ca\u0003\u0002\u0002\u0002\u016c\u10d8\u0003\u0002\u0002\u0002",
- "\u016e\u10ea\u0003\u0002\u0002\u0002\u0170\u1130\u0003\u0002\u0002\u0002",
- "\u0172\u115b\u0003\u0002\u0002\u0002\u0174\u1191\u0003\u0002\u0002\u0002",
- "\u0176\u121a\u0003\u0002\u0002\u0002\u0178\u12a9\u0003\u0002\u0002\u0002",
- "\u017a\u12c6\u0003\u0002\u0002\u0002\u017c\u12e3\u0003\u0002\u0002\u0002",
- "\u017e\u1352\u0003\u0002\u0002\u0002\u0180\u135f\u0003\u0002\u0002\u0002",
- "\u0182\u1367\u0003\u0002\u0002\u0002\u0184\u136f\u0003\u0002\u0002\u0002",
- "\u0186\u1385\u0003\u0002\u0002\u0002\u0188\u13a3\u0003\u0002\u0002\u0002",
- "\u018a\u13be\u0003\u0002\u0002\u0002\u018c\u13d2\u0003\u0002\u0002\u0002",
- "\u018e\u1402\u0003\u0002\u0002\u0002\u0190\u1427\u0003\u0002\u0002\u0002",
- "\u0192\u14f3\u0003\u0002\u0002\u0002\u0194\u1511\u0003\u0002\u0002\u0002",
- "\u0196\u1513\u0003\u0002\u0002\u0002\u0198\u1533\u0003\u0002\u0002\u0002",
- "\u019a\u1562\u0003\u0002\u0002\u0002\u019c\u1596\u0003\u0002\u0002\u0002",
- "\u019e\u15a6\u0003\u0002\u0002\u0002\u01a0\u15b4\u0003\u0002\u0002\u0002",
- "\u01a2\u15fd\u0003\u0002\u0002\u0002\u01a4\u161c\u0003\u0002\u0002\u0002",
- "\u01a6\u161e\u0003\u0002\u0002\u0002\u01a8\u1622\u0003\u0002\u0002\u0002",
- "\u01aa\u1640\u0003\u0002\u0002\u0002\u01ac\u1642\u0003\u0002\u0002\u0002",
- "\u01ae\u1657\u0003\u0002\u0002\u0002\u01b0\u16b0\u0003\u0002\u0002\u0002",
- "\u01b2\u16b2\u0003\u0002\u0002\u0002\u01b4\u16bf\u0003\u0002\u0002\u0002",
- "\u01b6\u16f7\u0003\u0002\u0002\u0002\u01b8\u16fa\u0003\u0002\u0002\u0002",
- "\u01ba\u1728\u0003\u0002\u0002\u0002\u01bc\u172b\u0003\u0002\u0002\u0002",
- "\u01be\u174c\u0003\u0002\u0002\u0002\u01c0\u175d\u0003\u0002\u0002\u0002",
- "\u01c2\u1760\u0003\u0002\u0002\u0002\u01c4\u179b\u0003\u0002\u0002\u0002",
- "\u01c6\u17b3\u0003\u0002\u0002\u0002\u01c8\u17c3\u0003\u0002\u0002\u0002",
- "\u01ca\u17c5\u0003\u0002\u0002\u0002\u01cc\u17f6\u0003\u0002\u0002\u0002",
- "\u01ce\u181f\u0003\u0002\u0002\u0002\u01d0\u184b\u0003\u0002\u0002\u0002",
- "\u01d2\u1853\u0003\u0002\u0002\u0002\u01d4\u1880\u0003\u0002\u0002\u0002",
- "\u01d6\u1882\u0003\u0002\u0002\u0002\u01d8\u188a\u0003\u0002\u0002\u0002",
- "\u01da\u18ab\u0003\u0002\u0002\u0002\u01dc\u18b3\u0003\u0002\u0002\u0002",
- "\u01de\u18ce\u0003\u0002\u0002\u0002\u01e0\u18e6\u0003\u0002\u0002\u0002",
- "\u01e2\u1906\u0003\u0002\u0002\u0002\u01e4\u1924\u0003\u0002\u0002\u0002",
- "\u01e6\u193b\u0003\u0002\u0002\u0002\u01e8\u1949\u0003\u0002\u0002\u0002",
- "\u01ea\u194b\u0003\u0002\u0002\u0002\u01ec\u196a\u0003\u0002\u0002\u0002",
- "\u01ee\u1978\u0003\u0002\u0002\u0002\u01f0\u1998\u0003\u0002\u0002\u0002",
- "\u01f2\u19ae\u0003\u0002\u0002\u0002\u01f4\u19cc\u0003\u0002\u0002\u0002",
- "\u01f6\u19ce\u0003\u0002\u0002\u0002\u01f8\u1a01\u0003\u0002\u0002\u0002",
- "\u01fa\u1a2f\u0003\u0002\u0002\u0002\u01fc\u1a42\u0003\u0002\u0002\u0002",
- "\u01fe\u1a44\u0003\u0002\u0002\u0002\u0200\u1a5d\u0003\u0002\u0002\u0002",
- "\u0202\u1a5f\u0003\u0002\u0002\u0002\u0204\u1a67\u0003\u0002\u0002\u0002",
- "\u0206\u1a69\u0003\u0002\u0002\u0002\u0208\u1af5\u0003\u0002\u0002\u0002",
- "\u020a\u1afd\u0003\u0002\u0002\u0002\u020c\u1aff\u0003\u0002\u0002\u0002",
- "\u020e\u1b01\u0003\u0002\u0002\u0002\u0210\u1b03\u0003\u0002\u0002\u0002",
- "\u0212\u1b11\u0003\u0002\u0002\u0002\u0214\u1b17\u0003\u0002\u0002\u0002",
- "\u0216\u1b19\u0003\u0002\u0002\u0002\u0218\u1b1b\u0003\u0002\u0002\u0002",
- "\u021a\u1b20\u0003\u0002\u0002\u0002\u021c\u1b22\u0003\u0002\u0002\u0002",
- "\u021e\u1b26\u0003\u0002\u0002\u0002\u0220\u1b32\u0003\u0002\u0002\u0002",
- "\u0222\u1b34\u0003\u0002\u0002\u0002\u0224\u1b37\u0003\u0002\u0002\u0002",
- "\u0226\u1b3a\u0003\u0002\u0002\u0002\u0228\u1b3c\u0003\u0002\u0002\u0002",
- "\u022a\u1b3e\u0003\u0002\u0002\u0002\u022c\u1b40\u0003\u0002\u0002\u0002",
- "\u022e\u1b5d\u0003\u0002\u0002\u0002\u0230\u1b5f\u0003\u0002\u0002\u0002",
- "\u0232\u1b6a\u0003\u0002\u0002\u0002\u0234\u1b6d\u0003\u0002\u0002\u0002",
- "\u0236\u1b76\u0003\u0002\u0002\u0002\u0238\u1b7e\u0003\u0002\u0002\u0002",
- "\u023a\u1b85\u0003\u0002\u0002\u0002\u023c\u1b9c\u0003\u0002\u0002\u0002",
- "\u023e\u1b9e\u0003\u0002\u0002\u0002\u0240\u1ba9\u0003\u0002\u0002\u0002",
- "\u0242\u1bab\u0003\u0002\u0002\u0002\u0244\u1bc6\u0003\u0002\u0002\u0002",
- "\u0246\u1bcd\u0003\u0002\u0002\u0002\u0248\u1bd3\u0003\u0002\u0002\u0002",
- "\u024a\u1be6\u0003\u0002\u0002\u0002\u024c\u1be8\u0003\u0002\u0002\u0002",
- "\u024e\u1bf9\u0003\u0002\u0002\u0002\u0250\u1c10\u0003\u0002\u0002\u0002",
- "\u0252\u1c21\u0003\u0002\u0002\u0002\u0254\u1c32\u0003\u0002\u0002\u0002",
- "\u0256\u1c3c\u0003\u0002\u0002\u0002\u0258\u1c4d\u0003\u0002\u0002\u0002",
- "\u025a\u1c5e\u0003\u0002\u0002\u0002\u025c\u1c68\u0003\u0002\u0002\u0002",
- "\u025e\u1c6a\u0003\u0002\u0002\u0002\u0260\u1c71\u0003\u0002\u0002\u0002",
- "\u0262\u1cad\u0003\u0002\u0002\u0002\u0264\u1ccc\u0003\u0002\u0002\u0002",
- "\u0266\u1cce\u0003\u0002\u0002\u0002\u0268\u1dc8\u0003\u0002\u0002\u0002",
- "\u026a\u1eb6\u0003\u0002\u0002\u0002\u026c\u1ede\u0003\u0002\u0002\u0002",
- "\u026e\u1eeb\u0003\u0002\u0002\u0002\u0270\u1ef9\u0003\u0002\u0002\u0002",
- "\u0272\u1f01\u0003\u0002\u0002\u0002\u0274\u1f07\u0003\u0002\u0002\u0002",
- "\u0276\u1f0e\u0003\u0002\u0002\u0002\u0278\u1f12\u0003\u0002\u0002\u0002",
- "\u027a\u1f3f\u0003\u0002\u0002\u0002\u027c\u1f43\u0003\u0002\u0002\u0002",
- "\u027e\u1f50\u0003\u0002\u0002\u0002\u0280\u1f8d\u0003\u0002\u0002\u0002",
- "\u0282\u1f8f\u0003\u0002\u0002\u0002\u0284\u1fb4\u0003\u0002\u0002\u0002",
- "\u0286\u1fb6\u0003\u0002\u0002\u0002\u0288\u1fc6\u0003\u0002\u0002\u0002",
- "\u028a\u1fd3\u0003\u0002\u0002\u0002\u028c\u1fe7\u0003\u0002\u0002\u0002",
- "\u028e\u1ff4\u0003\u0002\u0002\u0002\u0290\u2019\u0003\u0002\u0002\u0002",
- "\u0292\u202a\u0003\u0002\u0002\u0002\u0294\u202c\u0003\u0002\u0002\u0002",
- "\u0296\u2039\u0003\u0002\u0002\u0002\u0298\u2052\u0003\u0002\u0002\u0002",
- "\u029a\u206e\u0003\u0002\u0002\u0002\u029c\u2097\u0003\u0002\u0002\u0002",
- "\u029e\u20ea\u0003\u0002\u0002\u0002\u02a0\u20ec\u0003\u0002\u0002\u0002",
- "\u02a2\u20f0\u0003\u0002\u0002\u0002\u02a4\u20f5\u0003\u0002\u0002\u0002",
- "\u02a6\u20f9\u0003\u0002\u0002\u0002\u02a8\u20fe\u0003\u0002\u0002\u0002",
- "\u02aa\u2103\u0003\u0002\u0002\u0002\u02ac\u2112\u0003\u0002\u0002\u0002",
- "\u02ae\u2117\u0003\u0002\u0002\u0002\u02b0\u211b\u0003\u0002\u0002\u0002",
- "\u02b2\u2124\u0003\u0002\u0002\u0002\u02b4\u2129\u0003\u0002\u0002\u0002",
- "\u02b6\u2131\u0003\u0002\u0002\u0002\u02b8\u2135\u0003\u0002\u0002\u0002",
- "\u02ba\u2142\u0003\u0002\u0002\u0002\u02bc\u2144\u0003\u0002\u0002\u0002",
- "\u02be\u2171\u0003\u0002\u0002\u0002\u02c0\u217b\u0003\u0002\u0002\u0002",
- "\u02c2\u21a6\u0003\u0002\u0002\u0002\u02c4\u21ea\u0003\u0002\u0002\u0002",
- "\u02c6\u21f5\u0003\u0002\u0002\u0002\u02c8\u2200\u0003\u0002\u0002\u0002",
- "\u02ca\u220c\u0003\u0002\u0002\u0002\u02cc\u2213\u0003\u0002\u0002\u0002",
- "\u02ce\u223c\u0003\u0002\u0002\u0002\u02d0\u2247\u0003\u0002\u0002\u0002",
- "\u02d2\u2249\u0003\u0002\u0002\u0002\u02d4\u2298\u0003\u0002\u0002\u0002",
- "\u02d6\u229c\u0003\u0002\u0002\u0002\u02d8\u22a6\u0003\u0002\u0002\u0002",
- "\u02da\u22c2\u0003\u0002\u0002\u0002\u02dc\u22dd\u0003\u0002\u0002\u0002",
- "\u02de\u22e3\u0003\u0002\u0002\u0002\u02e0\u22ed\u0003\u0002\u0002\u0002",
- "\u02e2\u22f7\u0003\u0002\u0002\u0002\u02e4\u22f9\u0003\u0002\u0002\u0002",
- "\u02e6\u2315\u0003\u0002\u0002\u0002\u02e8\u2317\u0003\u0002\u0002\u0002",
- "\u02ea\u2333\u0003\u0002\u0002\u0002\u02ec\u2335\u0003\u0002\u0002\u0002",
- "\u02ee\u233d\u0003\u0002\u0002\u0002\u02f0\u2345\u0003\u0002\u0002\u0002",
- "\u02f2\u234e\u0003\u0002\u0002\u0002\u02f4\u2389\u0003\u0002\u0002\u0002",
- "\u02f6\u2390\u0003\u0002\u0002\u0002\u02f8\u239e\u0003\u0002\u0002\u0002",
- "\u02fa\u23a7\u0003\u0002\u0002\u0002\u02fc\u23ce\u0003\u0002\u0002\u0002",
- "\u02fe\u23de\u0003\u0002\u0002\u0002\u0300\u23e5\u0003\u0002\u0002\u0002",
- "\u0302\u23e7\u0003\u0002\u0002\u0002\u0304\u2456\u0003\u0002\u0002\u0002",
- "\u0306\u2458\u0003\u0002\u0002\u0002\u0308\u2463\u0003\u0002\u0002\u0002",
- "\u030a\u2467\u0003\u0002\u0002\u0002\u030c\u2469\u0003\u0002\u0002\u0002",
- "\u030e\u24a2\u0003\u0002\u0002\u0002\u0310\u24a4\u0003\u0002\u0002\u0002",
- "\u0312\u24ad\u0003\u0002\u0002\u0002\u0314\u24b5\u0003\u0002\u0002\u0002",
- "\u0316\u24c3\u0003\u0002\u0002\u0002\u0318\u24d4\u0003\u0002\u0002\u0002",
- "\u031a\u24ea\u0003\u0002\u0002\u0002\u031c\u24f4\u0003\u0002\u0002\u0002",
- "\u031e\u24fa\u0003\u0002\u0002\u0002\u0320\u24fc\u0003\u0002\u0002\u0002",
- "\u0322\u2509\u0003\u0002\u0002\u0002\u0324\u250b\u0003\u0002\u0002\u0002",
- "\u0326\u2543\u0003\u0002\u0002\u0002\u0328\u2545\u0003\u0002\u0002\u0002",
- "\u032a\u2556\u0003\u0002\u0002\u0002\u032c\u255e\u0003\u0002\u0002\u0002",
- "\u032e\u2563\u0003\u0002\u0002\u0002\u0330\u258d\u0003\u0002\u0002\u0002",
- "\u0332\u258f\u0003\u0002\u0002\u0002\u0334\u2597\u0003\u0002\u0002\u0002",
- "\u0336\u25a1\u0003\u0002\u0002\u0002\u0338\u25a9\u0003\u0002\u0002\u0002",
- "\u033a\u25c7\u0003\u0002\u0002\u0002\u033c\u25c9\u0003\u0002\u0002\u0002",
- "\u033e\u25d7\u0003\u0002\u0002\u0002\u0340\u266b\u0003\u0002\u0002\u0002",
- "\u0342\u2672\u0003\u0002\u0002\u0002\u0344\u269f\u0003\u0002\u0002\u0002",
- "\u0346\u26b7\u0003\u0002\u0002\u0002\u0348\u26b9\u0003\u0002\u0002\u0002",
- "\u034a\u26c0\u0003\u0002\u0002\u0002\u034c\u26c7\u0003\u0002\u0002\u0002",
- "\u034e\u26ce\u0003\u0002\u0002\u0002\u0350\u26d3\u0003\u0002\u0002\u0002",
- "\u0352\u26d9\u0003\u0002\u0002\u0002\u0354\u26de\u0003\u0002\u0002\u0002",
- "\u0356\u26e2\u0003\u0002\u0002\u0002\u0358\u26e7\u0003\u0002\u0002\u0002",
- "\u035a\u26f6\u0003\u0002\u0002\u0002\u035c\u2705\u0003\u0002\u0002\u0002",
- "\u035e\u273b\u0003\u0002\u0002\u0002\u0360\u273d\u0003\u0002\u0002\u0002",
- "\u0362\u274a\u0003\u0002\u0002\u0002\u0364\u274c\u0003\u0002\u0002\u0002",
- "\u0366\u275a\u0003\u0002\u0002\u0002\u0368\u276c\u0003\u0002\u0002\u0002",
- "\u036a\u278e\u0003\u0002\u0002\u0002\u036c\u27a4\u0003\u0002\u0002\u0002",
- "\u036e\u27a7\u0003\u0002\u0002\u0002\u0370\u27ab\u0003\u0002\u0002\u0002",
- "\u0372\u27ba\u0003\u0002\u0002\u0002\u0374\u27c3\u0003\u0002\u0002\u0002",
- "\u0376\u27c7\u0003\u0002\u0002\u0002\u0378\u27cf\u0003\u0002\u0002\u0002",
- "\u037a\u27d5\u0003\u0002\u0002\u0002\u037c\u27f9\u0003\u0002\u0002\u0002",
- "\u037e\u27fb\u0003\u0002\u0002\u0002\u0380\u2808\u0003\u0002\u0002\u0002",
- "\u0382\u280a\u0003\u0002\u0002\u0002\u0384\u281f\u0003\u0002\u0002\u0002",
- "\u0386\u285d\u0003\u0002\u0002\u0002\u0388\u2866\u0003\u0002\u0002\u0002",
- "\u038a\u286d\u0003\u0002\u0002\u0002\u038c\u2880\u0003\u0002\u0002\u0002",
- "\u038e\u289e\u0003\u0002\u0002\u0002\u0390\u28a3\u0003\u0002\u0002\u0002",
- "\u0392\u28aa\u0003\u0002\u0002\u0002\u0394\u28b9\u0003\u0002\u0002\u0002",
- "\u0396\u28c8\u0003\u0002\u0002\u0002\u0398\u28cc\u0003\u0002\u0002\u0002",
- "\u039a\u28fe\u0003\u0002\u0002\u0002\u039c\u2900\u0003\u0002\u0002\u0002",
- "\u039e\u290e\u0003\u0002\u0002\u0002\u03a0\u2918\u0003\u0002\u0002\u0002",
- "\u03a2\u291a\u0003\u0002\u0002\u0002\u03a4\u291c\u0003\u0002\u0002\u0002",
- "\u03a6\u291f\u0003\u0002\u0002\u0002\u03a8\u292a\u0003\u0002\u0002\u0002",
- "\u03aa\u2931\u0003\u0002\u0002\u0002\u03ac\u2933\u0003\u0002\u0002\u0002",
- "\u03ae\u293f\u0003\u0002\u0002\u0002\u03b0\u296f\u0003\u0002\u0002\u0002",
- "\u03b2\u2973\u0003\u0002\u0002\u0002\u03b4\u2975\u0003\u0002\u0002\u0002",
- "\u03b6\u298a\u0003\u0002\u0002\u0002\u03b8\u2999\u0003\u0002\u0002\u0002",
- "\u03ba\u29a9\u0003\u0002\u0002\u0002\u03bc\u29ab\u0003\u0002\u0002\u0002",
- "\u03be\u29cf\u0003\u0002\u0002\u0002\u03c0\u29d4\u0003\u0002\u0002\u0002",
- "\u03c2\u29e5\u0003\u0002\u0002\u0002\u03c4\u29e7\u0003\u0002\u0002\u0002",
- "\u03c6\u29ec\u0003\u0002\u0002\u0002\u03c8\u29ee\u0003\u0002\u0002\u0002",
- "\u03ca\u29ff\u0003\u0002\u0002\u0002\u03cc\u2a01\u0003\u0002\u0002\u0002",
- "\u03ce\u2a03\u0003\u0002\u0002\u0002\u03d0\u03d2\u0005\u0004\u0003\u0002",
- "\u03d1\u03d0\u0003\u0002\u0002\u0002\u03d2\u03d5\u0003\u0002\u0002\u0002",
- "\u03d3\u03d1\u0003\u0002\u0002\u0002\u03d3\u03d4\u0003\u0002\u0002\u0002",
- "\u03d4\u03d6\u0003\u0002\u0002\u0002\u03d5\u03d3\u0003\u0002\u0002\u0002",
- "\u03d6\u03d7\u0007\u0002\u0002\u0003\u03d7\u0003\u0003\u0002\u0002\u0002",
- "\u03d8\u03dc\u0005\u027a\u013e\u0002\u03d9\u03db\u0005\u02a0\u0151\u0002",
- "\u03da\u03d9\u0003\u0002\u0002\u0002\u03db\u03de\u0003\u0002\u0002\u0002",
- "\u03dc\u03da\u0003\u0002\u0002\u0002\u03dc\u03dd\u0003\u0002\u0002\u0002",
- "\u03dd\u03ea\u0003\u0002\u0002\u0002\u03de\u03dc\u0003\u0002\u0002\u0002",
- "\u03df\u03e1\u0005\u027a\u013e\u0002\u03e0\u03df\u0003\u0002\u0002\u0002",
- "\u03e0\u03e1\u0003\u0002\u0002\u0002\u03e1\u03e2\u0003\u0002\u0002\u0002",
- "\u03e2\u03e6\u0005\u0006\u0004\u0002\u03e3\u03e5\u0005\u02a0\u0151\u0002",
- "\u03e4\u03e3\u0003\u0002\u0002\u0002\u03e5\u03e8\u0003\u0002\u0002\u0002",
- "\u03e6\u03e4\u0003\u0002\u0002\u0002\u03e6\u03e7\u0003\u0002\u0002\u0002",
- "\u03e7\u03ea\u0003\u0002\u0002\u0002\u03e8\u03e6\u0003\u0002\u0002\u0002",
- "\u03e9\u03d8\u0003\u0002\u0002\u0002\u03e9\u03e0\u0003\u0002\u0002\u0002",
- "\u03ea\u0005\u0003\u0002\u0002\u0002\u03eb\u03ed\u0005\b\u0005\u0002",
- "\u03ec\u03ee\u0007\u033f\u0002\u0002\u03ed\u03ec\u0003\u0002\u0002\u0002",
- "\u03ed\u03ee\u0003\u0002\u0002\u0002\u03ee\u03f0\u0003\u0002\u0002\u0002",
- "\u03ef\u03eb\u0003\u0002\u0002\u0002\u03f0\u03f1\u0003\u0002\u0002\u0002",
- "\u03f1\u03ef\u0003\u0002\u0002\u0002\u03f1\u03f2\u0003\u0002\u0002\u0002",
- "\u03f2\u0007\u0003\u0002\u0002\u0002\u03f3\u03fb\u0005\n\u0006\u0002",
- "\u03f4\u03fb\u0005\f\u0007\u0002\u03f5\u03fb\u0005\u0010\t\u0002\u03f6",
- "\u03fb\u0005\u02aa\u0156\u0002\u03f7\u03fb\u00050\u0019\u0002\u03f8",
- "\u03fb\u00052\u001a\u0002\u03f9\u03fb\u0005\u000e\b\u0002\u03fa\u03f3",
- "\u0003\u0002\u0002\u0002\u03fa\u03f4\u0003\u0002\u0002\u0002\u03fa\u03f5",
- "\u0003\u0002\u0002\u0002\u03fa\u03f6\u0003\u0002\u0002\u0002\u03fa\u03f7",
- "\u0003\u0002\u0002\u0002\u03fa\u03f8\u0003\u0002\u0002\u0002\u03fa\u03f9",
- "\u0003\u0002\u0002\u0002\u03fb\t\u0003\u0002\u0002\u0002\u03fc\u0402",
- "\u0005\u01ae\u00d8\u0002\u03fd\u0402\u0005\u01b4\u00db\u0002\u03fe\u0402",
- "\u0005\u01b8\u00dd\u0002\u03ff\u0402\u0005\u01be\u00e0\u0002\u0400\u0402",
- "\u0005\u01c2\u00e2\u0002\u0401\u03fc\u0003\u0002\u0002\u0002\u0401\u03fd",
- "\u0003\u0002\u0002\u0002\u0401\u03fe\u0003\u0002\u0002\u0002\u0401\u03ff",
- "\u0003\u0002\u0002\u0002\u0401\u0400\u0003\u0002\u0002\u0002\u0402\u000b",
- "\u0003\u0002\u0002\u0002\u0403\u04a3\u00054\u001b\u0002\u0404\u04a3",
- "\u0005<\u001f\u0002\u0405\u04a3\u0005v<\u0002\u0406\u04a3\u0005\u0084",
- "C\u0002\u0407\u04a3\u0005\u0090I\u0002\u0408\u04a3\u0005\u0092J\u0002",
- "\u0409\u04a3\u0005\u008eH\u0002\u040a\u04a3\u0005\u009eP\u0002\u040b",
- "\u04a3\u0005\u00a8U\u0002\u040c\u04a3\u0005\u00aaV\u0002\u040d\u04a3",
- "\u0005\u0116\u008c\u0002\u040e\u04a3\u0005\u011a\u008e\u0002\u040f\u04a3",
- "\u0005\u01f8\u00fd\u0002\u0410\u04a3\u0005\u015c\u00af\u0002\u0411\u04a3",
- "\u0005\u0206\u0104\u0002\u0412\u04a3\u0005\u0120\u0091\u0002\u0413\u04a3",
- "\u0005\u0128\u0095\u0002\u0414\u04a3\u0005\u012a\u0096\u0002\u0415\u04a3",
- "\u0005\u012e\u0098\u0002\u0416\u04a3\u0005\u0132\u009a\u0002\u0417\u04a3",
- "\u0005\u0136\u009c\u0002\u0418\u04a3\u0005\u013e\u00a0\u0002\u0419\u04a3",
- "\u0005\u0142\u00a2\u0002\u041a\u04a3\u0005\u013a\u009e\u0002\u041b\u04a3",
- "\u0005\u014a\u00a6\u0002\u041c\u04a3\u0005\u0146\u00a4\u0002\u041d\u04a3",
- "\u0005\u014e\u00a8\u0002\u041e\u04a3\u0005\u0150\u00a9\u0002\u041f\u04a3",
- "\u0005\u0152\u00aa\u0002\u0420\u04a3\u0005\u0154\u00ab\u0002\u0421\u04a3",
- "\u0005\u015a\u00ae\u0002\u0422\u04a3\u0005\u016a\u00b6\u0002\u0423\u04a3",
- "\u0005\u0164\u00b3\u0002\u0424\u04a3\u0005\u0170\u00b9\u0002\u0425\u04a3",
- "\u0005\u0174\u00bb\u0002\u0426\u04a3\u0005\u0178\u00bd\u0002\u0427\u04a3",
- "\u0005\u017c\u00bf\u0002\u0428\u04a3\u0005\u017e\u00c0\u0002\u0429\u04a3",
- "\u0005\u0182\u00c2\u0002\u042a\u04a3\u0005\u0184\u00c3\u0002\u042b\u04a3",
- "\u0005\u0188\u00c5\u0002\u042c\u04a3\u0005\u018a\u00c6\u0002\u042d\u04a3",
- "\u0005\u01f6\u00fc\u0002\u042e\u04a3\u0005\u0190\u00c9\u0002\u042f\u04a3",
- "\u0005\u0196\u00cc\u0002\u0430\u04a3\u0005\u0198\u00cd\u0002\u0431\u04a3",
- "\u00056\u001c\u0002\u0432\u04a3\u0005r:\u0002\u0433\u04a3\u0005\u0080",
- "A\u0002\u0434\u04a3\u0005\u00acW\u0002\u0435\u04a3\u0005\u0114\u008b",
- "\u0002\u0436\u04a3\u0005\u0118\u008d\u0002\u0437\u04a3\u0005\u011c\u008f",
- "\u0002\u0438\u04a3\u0005\u01ca\u00e6\u0002\u0439\u04a3\u0005\u015e\u00b0",
- "\u0002\u043a\u04a3\u0005\u011e\u0090\u0002\u043b\u04a3\u0005\u012c\u0097",
- "\u0002\u043c\u04a3\u0005\u0130\u0099\u0002\u043d\u04a3\u0005\u0134\u009b",
- "\u0002\u043e\u04a3\u0005\u0138\u009d\u0002\u043f\u04a3\u0005\u01cc\u00e7",
- "\u0002\u0440\u04a3\u0005\u0140\u00a1\u0002\u0441\u04a3\u0005\u0144\u00a3",
- "\u0002\u0442\u04a3\u0005\u013c\u009f\u0002\u0443\u04a3\u0005\u014c\u00a7",
- "\u0002\u0444\u04a3\u0005\u0148\u00a5\u0002\u0445\u04a3\u0005\u00a4S",
- "\u0002\u0446\u04a3\u0005\u01dc\u00ef\u0002\u0447\u04a3\u0005\u01ce\u00e8",
- "\u0002\u0448\u04a3\u0005\u01d0\u00e9\u0002\u0449\u04a3\u0005\u0156\u00ac",
- "\u0002\u044a\u04a3\u0005\u0158\u00ad\u0002\u044b\u04a3\u0005\u0160\u00b1",
- "\u0002\u044c\u04a3\u0005\u0162\u00b2\u0002\u044d\u04a3\u0005\u0166\u00b4",
- "\u0002\u044e\u04a3\u0005\u0168\u00b5\u0002\u044f\u04a3\u0005\u016c\u00b7",
- "\u0002\u0450\u04a3\u0005\u016e\u00b8\u0002\u0451\u04a3\u0005\u0172\u00ba",
- "\u0002\u0452\u04a3\u0005\u0176\u00bc\u0002\u0453\u04a3\u0005\u017a\u00be",
- "\u0002\u0454\u04a3\u0005\u0180\u00c1\u0002\u0455\u04a3\u0005\u0186\u00c4",
- "\u0002\u0456\u04a3\u0005\u01ea\u00f6\u0002\u0457\u04a3\u0005\u018c\u00c7",
- "\u0002\u0458\u04a3\u0005\u018e\u00c8\u0002\u0459\u04a3\u0005\u01ee\u00f8",
- "\u0002\u045a\u04a3\u0005\u0258\u012d\u0002\u045b\u04a3\u0005\u0192\u00ca",
- "\u0002\u045c\u04a3\u0005\u0194\u00cb\u0002\u045d\u04a3\u0005\u01f2\u00fa",
- "\u0002\u045e\u04a3\u0005\u019a\u00ce\u0002\u045f\u04a3\u0005\u019c\u00cf",
- "\u0002\u0460\u04a3\u00058\u001d\u0002\u0461\u04a3\u0005:\u001e\u0002",
- "\u0462\u04a3\u0005t;\u0002\u0463\u04a3\u0005\u0082B\u0002\u0464\u04a3",
- "\u0005\u009cO\u0002\u0465\u04a3\u0005\u00a6T\u0002\u0466\u04a3\u0005",
- "\u00aeX\u0002\u0467\u04a3\u0005\u00b0Y\u0002\u0468\u04a3\u0005\u00b2",
- "Z\u0002\u0469\u04a3\u0005\u00b4[\u0002\u046a\u04a3\u0005\u00b6\\\u0002",
- "\u046b\u04a3\u0005\u00b8]\u0002\u046c\u04a3\u0005\u00ba^\u0002\u046d",
- "\u04a3\u0005\u00bc_\u0002\u046e\u04a3\u0005\u00be`\u0002\u046f\u04a3",
- "\u0005\u00e8u\u0002\u0470\u04a3\u0005\u00c0a\u0002\u0471\u04a3\u0005",
- "\u00c2b\u0002\u0472\u04a3\u0005\u00ceh\u0002\u0473\u04a3\u0005\u00d0",
- "i\u0002\u0474\u04a3\u0005\u00c4c\u0002\u0475\u04a3\u0005\u00c6d\u0002",
- "\u0476\u04a3\u0005\u00c8e\u0002\u0477\u04a3\u0005\u00caf\u0002\u0478",
- "\u04a3\u0005\u00ccg\u0002\u0479\u04a3\u0005\u00d2j\u0002\u047a\u04a3",
- "\u0005\u00d4k\u0002\u047b\u04a3\u0005\u00d6l\u0002\u047c\u04a3\u0005",
- "\u0250\u0129\u0002\u047d\u04a3\u0005\u0242\u0122\u0002\u047e\u04a3\u0005",
- "\u00d8m\u0002\u047f\u04a3\u0005\u00dan\u0002\u0480\u04a3\u0005\u00dc",
- "o\u0002\u0481\u04a3\u0005\u00dep\u0002\u0482\u04a3\u0005\u00e0q\u0002",
- "\u0483\u04a3\u0005\u0248\u0125\u0002\u0484\u04a3\u0005\u00e2r\u0002",
- "\u0485\u04a3\u0005\u00e4s\u0002\u0486\u04a3\u0005\u00e6t\u0002\u0487",
- "\u04a3\u0005\u00eav\u0002\u0488\u04a3\u0005\u00ecw\u0002\u0489\u04a3",
- "\u0005\u00eex\u0002\u048a\u04a3\u0005\u00f0y\u0002\u048b\u04a3\u0005",
- "\u00f2z\u0002\u048c\u04a3\u0005\u00f4{\u0002\u048d\u04a3\u0005\u00f6",
- "|\u0002\u048e\u04a3\u0005\u00f8}\u0002\u048f\u04a3\u0005\u00fa~\u0002",
- "\u0490\u04a3\u0005\u00fc\u007f\u0002\u0491\u04a3\u0005\u00fe\u0080\u0002",
- "\u0492\u04a3\u0005\u0252\u012a\u0002\u0493\u04a3\u0005\u0100\u0081\u0002",
- "\u0494\u04a3\u0005\u0102\u0082\u0002\u0495\u04a3\u0005\u0104\u0083\u0002",
- "\u0496\u04a3\u0005\u0254\u012b\u0002\u0497\u04a3\u0005\u024a\u0126\u0002",
- "\u0498\u04a3\u0005\u025a\u012e\u0002\u0499\u04a3\u0005\u0106\u0084\u0002",
- "\u049a\u04a3\u0005\u0256\u012c\u0002\u049b\u04a3\u0005\u0108\u0085\u0002",
- "\u049c\u04a3\u0005\u010a\u0086\u0002\u049d\u04a3\u0005\u010c\u0087\u0002",
- "\u049e\u04a3\u0005\u010e\u0088\u0002\u049f\u04a3\u0005\u0110\u0089\u0002",
- "\u04a0\u04a3\u0005\u0112\u008a\u0002\u04a1\u04a3\u0005\u01ec\u00f7\u0002",
- "\u04a2\u0403\u0003\u0002\u0002\u0002\u04a2\u0404\u0003\u0002\u0002\u0002",
- "\u04a2\u0405\u0003\u0002\u0002\u0002\u04a2\u0406\u0003\u0002\u0002\u0002",
- "\u04a2\u0407\u0003\u0002\u0002\u0002\u04a2\u0408\u0003\u0002\u0002\u0002",
- "\u04a2\u0409\u0003\u0002\u0002\u0002\u04a2\u040a\u0003\u0002\u0002\u0002",
- "\u04a2\u040b\u0003\u0002\u0002\u0002\u04a2\u040c\u0003\u0002\u0002\u0002",
- "\u04a2\u040d\u0003\u0002\u0002\u0002\u04a2\u040e\u0003\u0002\u0002\u0002",
- "\u04a2\u040f\u0003\u0002\u0002\u0002\u04a2\u0410\u0003\u0002\u0002\u0002",
- "\u04a2\u0411\u0003\u0002\u0002\u0002\u04a2\u0412\u0003\u0002\u0002\u0002",
- "\u04a2\u0413\u0003\u0002\u0002\u0002\u04a2\u0414\u0003\u0002\u0002\u0002",
- "\u04a2\u0415\u0003\u0002\u0002\u0002\u04a2\u0416\u0003\u0002\u0002\u0002",
- "\u04a2\u0417\u0003\u0002\u0002\u0002\u04a2\u0418\u0003\u0002\u0002\u0002",
- "\u04a2\u0419\u0003\u0002\u0002\u0002\u04a2\u041a\u0003\u0002\u0002\u0002",
- "\u04a2\u041b\u0003\u0002\u0002\u0002\u04a2\u041c\u0003\u0002\u0002\u0002",
- "\u04a2\u041d\u0003\u0002\u0002\u0002\u04a2\u041e\u0003\u0002\u0002\u0002",
- "\u04a2\u041f\u0003\u0002\u0002\u0002\u04a2\u0420\u0003\u0002\u0002\u0002",
- "\u04a2\u0421\u0003\u0002\u0002\u0002\u04a2\u0422\u0003\u0002\u0002\u0002",
- "\u04a2\u0423\u0003\u0002\u0002\u0002\u04a2\u0424\u0003\u0002\u0002\u0002",
- "\u04a2\u0425\u0003\u0002\u0002\u0002\u04a2\u0426\u0003\u0002\u0002\u0002",
- "\u04a2\u0427\u0003\u0002\u0002\u0002\u04a2\u0428\u0003\u0002\u0002\u0002",
- "\u04a2\u0429\u0003\u0002\u0002\u0002\u04a2\u042a\u0003\u0002\u0002\u0002",
- "\u04a2\u042b\u0003\u0002\u0002\u0002\u04a2\u042c\u0003\u0002\u0002\u0002",
- "\u04a2\u042d\u0003\u0002\u0002\u0002\u04a2\u042e\u0003\u0002\u0002\u0002",
- "\u04a2\u042f\u0003\u0002\u0002\u0002\u04a2\u0430\u0003\u0002\u0002\u0002",
- "\u04a2\u0431\u0003\u0002\u0002\u0002\u04a2\u0432\u0003\u0002\u0002\u0002",
- "\u04a2\u0433\u0003\u0002\u0002\u0002\u04a2\u0434\u0003\u0002\u0002\u0002",
- "\u04a2\u0435\u0003\u0002\u0002\u0002\u04a2\u0436\u0003\u0002\u0002\u0002",
- "\u04a2\u0437\u0003\u0002\u0002\u0002\u04a2\u0438\u0003\u0002\u0002\u0002",
- "\u04a2\u0439\u0003\u0002\u0002\u0002\u04a2\u043a\u0003\u0002\u0002\u0002",
- "\u04a2\u043b\u0003\u0002\u0002\u0002\u04a2\u043c\u0003\u0002\u0002\u0002",
- "\u04a2\u043d\u0003\u0002\u0002\u0002\u04a2\u043e\u0003\u0002\u0002\u0002",
- "\u04a2\u043f\u0003\u0002\u0002\u0002\u04a2\u0440\u0003\u0002\u0002\u0002",
- "\u04a2\u0441\u0003\u0002\u0002\u0002\u04a2\u0442\u0003\u0002\u0002\u0002",
- "\u04a2\u0443\u0003\u0002\u0002\u0002\u04a2\u0444\u0003\u0002\u0002\u0002",
- "\u04a2\u0445\u0003\u0002\u0002\u0002\u04a2\u0446\u0003\u0002\u0002\u0002",
- "\u04a2\u0447\u0003\u0002\u0002\u0002\u04a2\u0448\u0003\u0002\u0002\u0002",
- "\u04a2\u0449\u0003\u0002\u0002\u0002\u04a2\u044a\u0003\u0002\u0002\u0002",
- "\u04a2\u044b\u0003\u0002\u0002\u0002\u04a2\u044c\u0003\u0002\u0002\u0002",
- "\u04a2\u044d\u0003\u0002\u0002\u0002\u04a2\u044e\u0003\u0002\u0002\u0002",
- "\u04a2\u044f\u0003\u0002\u0002\u0002\u04a2\u0450\u0003\u0002\u0002\u0002",
- "\u04a2\u0451\u0003\u0002\u0002\u0002\u04a2\u0452\u0003\u0002\u0002\u0002",
- "\u04a2\u0453\u0003\u0002\u0002\u0002\u04a2\u0454\u0003\u0002\u0002\u0002",
- "\u04a2\u0455\u0003\u0002\u0002\u0002\u04a2\u0456\u0003\u0002\u0002\u0002",
- "\u04a2\u0457\u0003\u0002\u0002\u0002\u04a2\u0458\u0003\u0002\u0002\u0002",
- "\u04a2\u0459\u0003\u0002\u0002\u0002\u04a2\u045a\u0003\u0002\u0002\u0002",
- "\u04a2\u045b\u0003\u0002\u0002\u0002\u04a2\u045c\u0003\u0002\u0002\u0002",
- "\u04a2\u045d\u0003\u0002\u0002\u0002\u04a2\u045e\u0003\u0002\u0002\u0002",
- "\u04a2\u045f\u0003\u0002\u0002\u0002\u04a2\u0460\u0003\u0002\u0002\u0002",
- "\u04a2\u0461\u0003\u0002\u0002\u0002\u04a2\u0462\u0003\u0002\u0002\u0002",
- "\u04a2\u0463\u0003\u0002\u0002\u0002\u04a2\u0464\u0003\u0002\u0002\u0002",
- "\u04a2\u0465\u0003\u0002\u0002\u0002\u04a2\u0466\u0003\u0002\u0002\u0002",
- "\u04a2\u0467\u0003\u0002\u0002\u0002\u04a2\u0468\u0003\u0002\u0002\u0002",
- "\u04a2\u0469\u0003\u0002\u0002\u0002\u04a2\u046a\u0003\u0002\u0002\u0002",
- "\u04a2\u046b\u0003\u0002\u0002\u0002\u04a2\u046c\u0003\u0002\u0002\u0002",
- "\u04a2\u046d\u0003\u0002\u0002\u0002\u04a2\u046e\u0003\u0002\u0002\u0002",
- "\u04a2\u046f\u0003\u0002\u0002\u0002\u04a2\u0470\u0003\u0002\u0002\u0002",
- "\u04a2\u0471\u0003\u0002\u0002\u0002\u04a2\u0472\u0003\u0002\u0002\u0002",
- "\u04a2\u0473\u0003\u0002\u0002\u0002\u04a2\u0474\u0003\u0002\u0002\u0002",
- "\u04a2\u0475\u0003\u0002\u0002\u0002\u04a2\u0476\u0003\u0002\u0002\u0002",
- "\u04a2\u0477\u0003\u0002\u0002\u0002\u04a2\u0478\u0003\u0002\u0002\u0002",
- "\u04a2\u0479\u0003\u0002\u0002\u0002\u04a2\u047a\u0003\u0002\u0002\u0002",
- "\u04a2\u047b\u0003\u0002\u0002\u0002\u04a2\u047c\u0003\u0002\u0002\u0002",
- "\u04a2\u047d\u0003\u0002\u0002\u0002\u04a2\u047e\u0003\u0002\u0002\u0002",
- "\u04a2\u047f\u0003\u0002\u0002\u0002\u04a2\u0480\u0003\u0002\u0002\u0002",
- "\u04a2\u0481\u0003\u0002\u0002\u0002\u04a2\u0482\u0003\u0002\u0002\u0002",
- "\u04a2\u0483\u0003\u0002\u0002\u0002\u04a2\u0484\u0003\u0002\u0002\u0002",
- "\u04a2\u0485\u0003\u0002\u0002\u0002\u04a2\u0486\u0003\u0002\u0002\u0002",
- "\u04a2\u0487\u0003\u0002\u0002\u0002\u04a2\u0488\u0003\u0002\u0002\u0002",
- "\u04a2\u0489\u0003\u0002\u0002\u0002\u04a2\u048a\u0003\u0002\u0002\u0002",
- "\u04a2\u048b\u0003\u0002\u0002\u0002\u04a2\u048c\u0003\u0002\u0002\u0002",
- "\u04a2\u048d\u0003\u0002\u0002\u0002\u04a2\u048e\u0003\u0002\u0002\u0002",
- "\u04a2\u048f\u0003\u0002\u0002\u0002\u04a2\u0490\u0003\u0002\u0002\u0002",
- "\u04a2\u0491\u0003\u0002\u0002\u0002\u04a2\u0492\u0003\u0002\u0002\u0002",
- "\u04a2\u0493\u0003\u0002\u0002\u0002\u04a2\u0494\u0003\u0002\u0002\u0002",
- "\u04a2\u0495\u0003\u0002\u0002\u0002\u04a2\u0496\u0003\u0002\u0002\u0002",
- "\u04a2\u0497\u0003\u0002\u0002\u0002\u04a2\u0498\u0003\u0002\u0002\u0002",
- "\u04a2\u0499\u0003\u0002\u0002\u0002\u04a2\u049a\u0003\u0002\u0002\u0002",
- "\u04a2\u049b\u0003\u0002\u0002\u0002\u04a2\u049c\u0003\u0002\u0002\u0002",
- "\u04a2\u049d\u0003\u0002\u0002\u0002\u04a2\u049e\u0003\u0002\u0002\u0002",
- "\u04a2\u049f\u0003\u0002\u0002\u0002\u04a2\u04a0\u0003\u0002\u0002\u0002",
- "\u04a2\u04a1\u0003\u0002\u0002\u0002\u04a3\r\u0003\u0002\u0002\u0002",
- "\u04a4\u04aa\u0005\u0266\u0134\u0002\u04a5\u04aa\u0005\u0268\u0135\u0002",
- "\u04a6\u04aa\u0005\u026a\u0136\u0002\u04a7\u04aa\u0005\u026c\u0137\u0002",
- "\u04a8\u04aa\u0005\u026e\u0138\u0002\u04a9\u04a4\u0003\u0002\u0002\u0002",
- "\u04a9\u04a5\u0003\u0002\u0002\u0002\u04a9\u04a6\u0003\u0002\u0002\u0002",
- "\u04a9\u04a7\u0003\u0002\u0002\u0002\u04a9\u04a8\u0003\u0002\u0002\u0002",
- "\u04aa\u000f\u0003\u0002\u0002\u0002\u04ab\u04b8\u0005\u0012\n\u0002",
- "\u04ac\u04b8\u0005\u0014\u000b\u0002\u04ad\u04b8\u0005\u0016\f\u0002",
- "\u04ae\u04b8\u0005\u0018\r\u0002\u04af\u04b8\u0005\u001c\u000f\u0002",
- "\u04b0\u04b8\u0005\u001a\u000e\u0002\u04b1\u04b8\u0005\u001e\u0010\u0002",
- "\u04b2\u04b8\u0005&\u0014\u0002\u04b3\u04b8\u0005(\u0015\u0002\u04b4",
- "\u04b8\u0005*\u0016\u0002\u04b5\u04b8\u0005,\u0017\u0002\u04b6\u04b8",
- "\u0005.\u0018\u0002\u04b7\u04ab\u0003\u0002\u0002\u0002\u04b7\u04ac",
- "\u0003\u0002\u0002\u0002\u04b7\u04ad\u0003\u0002\u0002\u0002\u04b7\u04ae",
- "\u0003\u0002\u0002\u0002\u04b7\u04af\u0003\u0002\u0002\u0002\u04b7\u04b0",
- "\u0003\u0002\u0002\u0002\u04b7\u04b1\u0003\u0002\u0002\u0002\u04b7\u04b2",
- "\u0003\u0002\u0002\u0002\u04b7\u04b3\u0003\u0002\u0002\u0002\u04b7\u04b4",
- "\u0003\u0002\u0002\u0002\u04b7\u04b5\u0003\u0002\u0002\u0002\u04b7\u04b6",
- "\u0003\u0002\u0002\u0002\u04b8\u0011\u0003\u0002\u0002\u0002\u04b9\u04bb",
- "\u0007\u001c\u0002\u0002\u04ba\u04bc\u0007\u033f\u0002\u0002\u04bb\u04ba",
- "\u0003\u0002\u0002\u0002\u04bb\u04bc\u0003\u0002\u0002\u0002\u04bc\u04be",
- "\u0003\u0002\u0002\u0002\u04bd\u04bf\u0005\u0006\u0004\u0002\u04be\u04bd",
- "\u0003\u0002\u0002\u0002\u04be\u04bf\u0003\u0002\u0002\u0002\u04bf\u04c0",
- "\u0003\u0002\u0002\u0002\u04c0\u04c2\u0007l\u0002\u0002\u04c1\u04c3",
- "\u0007\u033f\u0002\u0002\u04c2\u04c1\u0003\u0002\u0002\u0002\u04c2\u04c3",
- "\u0003\u0002\u0002\u0002\u04c3\u0013\u0003\u0002\u0002\u0002\u04c4\u04c6",
- "\u0007!\u0002\u0002\u04c5\u04c7\u0007\u033f\u0002\u0002\u04c6\u04c5",
- "\u0003\u0002\u0002\u0002\u04c6\u04c7\u0003\u0002\u0002\u0002\u04c7\u0015",
- "\u0003\u0002\u0002\u0002\u04c8\u04ca\u0007B\u0002\u0002\u04c9\u04cb",
- "\u0007\u033f\u0002\u0002\u04ca\u04c9\u0003\u0002\u0002\u0002\u04ca\u04cb",
- "\u0003\u0002\u0002\u0002\u04cb\u0017\u0003\u0002\u0002\u0002\u04cc\u04cd",
- "\u0007\u008f\u0002\u0002\u04cd\u04cf\u0005\u03c6\u01e4\u0002\u04ce\u04d0",
- "\u0007\u033f\u0002\u0002\u04cf\u04ce\u0003\u0002\u0002\u0002\u04cf\u04d0",
- "\u0003\u0002\u0002\u0002\u04d0\u04d7\u0003\u0002\u0002\u0002\u04d1\u04d2",
- "\u0005\u03c6\u01e4\u0002\u04d2\u04d4\u0007\u0340\u0002\u0002\u04d3\u04d5",
- "\u0007\u033f\u0002\u0002\u04d4\u04d3\u0003\u0002\u0002\u0002\u04d4\u04d5",
- "\u0003\u0002\u0002\u0002\u04d5\u04d7\u0003\u0002\u0002\u0002\u04d6\u04cc",
- "\u0003\u0002\u0002\u0002\u04d6\u04d1\u0003\u0002\u0002\u0002\u04d7\u0019",
- "\u0003\u0002\u0002\u0002\u04d8\u04da\u0007\u011a\u0002\u0002\u04d9\u04db",
- "\u0005\u02d8\u016d\u0002\u04da\u04d9\u0003\u0002\u0002\u0002\u04da\u04db",
- "\u0003\u0002\u0002\u0002\u04db\u04dd\u0003\u0002\u0002\u0002\u04dc\u04de",
- "\u0007\u033f\u0002\u0002\u04dd\u04dc\u0003\u0002\u0002\u0002\u04dd\u04de",
- "\u0003\u0002\u0002\u0002\u04de\u001b\u0003\u0002\u0002\u0002\u04df\u04e0",
- "\u0007\u0099\u0002\u0002\u04e0\u04e1\u0005\u02ee\u0178\u0002\u04e1\u04e4",
- "\u0005\b\u0005\u0002\u04e2\u04e3\u0007j\u0002\u0002\u04e3\u04e5\u0005",
- "\b\u0005\u0002\u04e4\u04e2\u0003\u0002\u0002\u0002\u04e4\u04e5\u0003",
- "\u0002\u0002\u0002\u04e5\u04e7\u0003\u0002\u0002\u0002\u04e6\u04e8\u0007",
- "\u033f\u0002\u0002\u04e7\u04e6\u0003\u0002\u0002\u0002\u04e7\u04e8\u0003",
- "\u0002\u0002\u0002\u04e8\u001d\u0003\u0002\u0002\u0002\u04e9\u04f0\u0007",
- "\u02f3\u0002\u0002\u04ea\u04eb\u0005 \u0011\u0002\u04eb\u04ec\u0007",
- "\u033e\u0002\u0002\u04ec\u04ed\u0005\"\u0012\u0002\u04ed\u04ee\u0007",
- "\u033e\u0002\u0002\u04ee\u04ef\u0005$\u0013\u0002\u04ef\u04f1\u0003",
- "\u0002\u0002\u0002\u04f0\u04ea\u0003\u0002\u0002\u0002\u04f0\u04f1\u0003",
- "\u0002\u0002\u0002\u04f1\u04f3\u0003\u0002\u0002\u0002\u04f2\u04f4\u0007",
- "\u033f\u0002\u0002\u04f3\u04f2\u0003\u0002\u0002\u0002\u04f3\u04f4\u0003",
- "\u0002\u0002\u0002\u04f4\u001f\u0003\u0002\u0002\u0002\u04f5\u04f6\t",
- "\u0002\u0002\u0002\u04f6!\u0003\u0002\u0002\u0002\u04f7\u04f8\t\u0003",
- "\u0002\u0002\u04f8#\u0003\u0002\u0002\u0002\u04f9\u04fa\t\u0002\u0002",
- "\u0002\u04fa%\u0003\u0002\u0002\u0002\u04fb\u04fc\u0007\u001c\u0002",
- "\u0002\u04fc\u04fe\u0007\u02fe\u0002\u0002\u04fd\u04ff\u0007\u033f\u0002",
- "\u0002\u04fe\u04fd\u0003\u0002\u0002\u0002\u04fe\u04ff\u0003\u0002\u0002",
- "\u0002\u04ff\u0501\u0003\u0002\u0002\u0002\u0500\u0502\u0005\u0006\u0004",
- "\u0002\u0501\u0500\u0003\u0002\u0002\u0002\u0501\u0502\u0003\u0002\u0002",
- "\u0002\u0502\u0503\u0003\u0002\u0002\u0002\u0503\u0504\u0007l\u0002",
- "\u0002\u0504\u0506\u0007\u02fe\u0002\u0002\u0505\u0507\u0007\u033f\u0002",
- "\u0002\u0506\u0505\u0003\u0002\u0002\u0002\u0506\u0507\u0003\u0002\u0002",
- "\u0002\u0507\u0508\u0003\u0002\u0002\u0002\u0508\u0509\u0007\u001c\u0002",
- "\u0002\u0509\u050b\u0007\u01af\u0002\u0002\u050a\u050c\u0007\u033f\u0002",
- "\u0002\u050b\u050a\u0003\u0002\u0002\u0002\u050b\u050c\u0003\u0002\u0002",
- "\u0002\u050c\u050e\u0003\u0002\u0002\u0002\u050d\u050f\u0005\u0006\u0004",
- "\u0002\u050e\u050d\u0003\u0002\u0002\u0002\u050e\u050f\u0003\u0002\u0002",
- "\u0002\u050f\u0510\u0003\u0002\u0002\u0002\u0510\u0511\u0007l\u0002",
- "\u0002\u0511\u0513\u0007\u01af\u0002\u0002\u0512\u0514\u0007\u033f\u0002",
- "\u0002\u0513\u0512\u0003\u0002\u0002\u0002\u0513\u0514\u0003\u0002\u0002",
- "\u0002\u0514\'\u0003\u0002\u0002\u0002\u0515\u0517\u0007\u0174\u0002",
- "\u0002\u0516\u0518\u0005\u01bc\u00df\u0002\u0517\u0516\u0003\u0002\u0002",
- "\u0002\u0517\u0518\u0003\u0002\u0002\u0002\u0518\u051a\u0003\u0002\u0002",
- "\u0002\u0519\u051b\u0007\u033e\u0002\u0002\u051a\u0519\u0003\u0002\u0002",
- "\u0002\u051a\u051b\u0003\u0002\u0002\u0002\u051b\u051e\u0003\u0002\u0002",
- "\u0002\u051c\u051d\t\u0004\u0002\u0002\u051d\u051f\u0005\u01c0\u00e1",
- "\u0002\u051e\u051c\u0003\u0002\u0002\u0002\u051e\u051f\u0003\u0002\u0002",
- "\u0002\u051f\u0521\u0003\u0002\u0002\u0002\u0520\u0522\u0005\u02d8\u016d",
- "\u0002\u0521\u0520\u0003\u0002\u0002\u0002\u0521\u0522\u0003\u0002\u0002",
- "\u0002\u0522\u0524\u0003\u0002\u0002\u0002\u0523\u0525\u0007\u033f\u0002",
- "\u0002\u0524\u0523\u0003\u0002\u0002\u0002\u0524\u0525\u0003\u0002\u0002",
- "\u0002\u0525)\u0003\u0002\u0002\u0002\u0526\u0527\u0007\u0177\u0002",
- "\u0002\u0527\u0531\u0005\u02ee\u0178\u0002\u0528\u0532\u0005\b\u0005",
- "\u0002\u0529\u052b\u0007!\u0002\u0002\u052a\u052c\u0007\u033f\u0002",
- "\u0002\u052b\u052a\u0003\u0002\u0002\u0002\u052b\u052c\u0003\u0002\u0002",
- "\u0002\u052c\u0532\u0003\u0002\u0002\u0002\u052d\u052f\u0007B\u0002",
- "\u0002\u052e\u0530\u0007\u033f\u0002\u0002\u052f\u052e\u0003\u0002\u0002",
- "\u0002\u052f\u0530\u0003\u0002\u0002\u0002\u0530\u0532\u0003\u0002\u0002",
- "\u0002\u0531\u0528\u0003\u0002\u0002\u0002\u0531\u0529\u0003\u0002\u0002",
- "\u0002\u0531\u052d\u0003\u0002\u0002\u0002\u0532+\u0003\u0002\u0002",
- "\u0002\u0533\u0536\u0007\u0101\u0002\u0002\u0534\u0537\u0005\u02d8\u016d",
- "\u0002\u0535\u0537\u0007\u031e\u0002\u0002\u0536\u0534\u0003\u0002\u0002",
- "\u0002\u0536\u0535\u0003\u0002\u0002\u0002\u0537\u053c\u0003\u0002\u0002",
- "\u0002\u0538\u0539\u0007\u033e\u0002\u0002\u0539\u053b\u0007\u0321\u0002",
- "\u0002\u053a\u0538\u0003\u0002\u0002\u0002\u053b\u053e\u0003\u0002\u0002",
- "\u0002\u053c\u053a\u0003\u0002\u0002\u0002\u053c\u053d\u0003\u0002\u0002",
- "\u0002\u053d\u0540\u0003\u0002\u0002\u0002\u053e\u053c\u0003\u0002\u0002",
- "\u0002\u053f\u0541\u0007\u033f\u0002\u0002\u0540\u053f\u0003\u0002\u0002",
- "\u0002\u0540\u0541\u0003\u0002\u0002\u0002\u0541-\u0003\u0002\u0002",
- "\u0002\u0542\u0543\u0007\u0108\u0002\u0002\u0543\u0544\u0007\u033c\u0002",
- "\u0002\u0544\u0545\t\u0005\u0002\u0002\u0545\u0546\u0007\u033e\u0002",
- "\u0002\u0546\u0547\u0005\u02d6\u016c\u0002\u0547\u0548\u0007\u033e\u0002",
- "\u0002\u0548\u054d\u0005\u02d6\u016c\u0002\u0549\u054a\u0007\u033e\u0002",
- "\u0002\u054a\u054c\u0005\u02d6\u016c\u0002\u054b\u0549\u0003\u0002\u0002",
- "\u0002\u054c\u054f\u0003\u0002\u0002\u0002\u054d\u054b\u0003\u0002\u0002",
- "\u0002\u054d\u054e\u0003\u0002\u0002\u0002\u054e\u0550\u0003\u0002\u0002",
- "\u0002\u054f\u054d\u0003\u0002\u0002\u0002\u0550\u0553\u0007\u033d\u0002",
- "\u0002\u0551\u0552\u0007\u0179\u0002\u0002\u0552\u0554\t\u0006\u0002",
- "\u0002\u0553\u0551\u0003\u0002\u0002\u0002\u0553\u0554\u0003\u0002\u0002",
- "\u0002\u0554\u0556\u0003\u0002\u0002\u0002\u0555\u0557\u0007\u033f\u0002",
- "\u0002\u0556\u0555\u0003\u0002\u0002\u0002\u0556\u0557\u0003\u0002\u0002",
- "\u0002\u0557\u0563\u0003\u0002\u0002\u0002\u0558\u0559\u0007\u0108\u0002",
- "\u0002\u0559\u055a\u0007\u0322\u0002\u0002\u055a\u055f\t\u0007\u0002",
- "\u0002\u055b\u055c\u0007\u033e\u0002\u0002\u055c\u055e\t\u0005\u0002",
- "\u0002\u055d\u055b\u0003\u0002\u0002\u0002\u055e\u0561\u0003\u0002\u0002",
- "\u0002\u055f\u055d\u0003\u0002\u0002\u0002\u055f\u0560\u0003\u0002\u0002",
- "\u0002\u0560\u0563\u0003\u0002\u0002\u0002\u0561\u055f\u0003\u0002\u0002",
- "\u0002\u0562\u0542\u0003\u0002\u0002\u0002\u0562\u0558\u0003\u0002\u0002",
- "\u0002\u0563/\u0003\u0002\u0002\u0002\u0564\u0565\u0007\u033f\u0002",
- "\u0002\u05651\u0003\u0002\u0002\u0002\u0566\u0577\u0005\u0262\u0132",
- "\u0002\u0567\u0577\u0005\u0264\u0133\u0002\u0568\u0577\u0005\u01aa\u00d6",
- "\u0002\u0569\u0577\u0005\u01a8\u00d5\u0002\u056a\u0577\u0005\u019e\u00d0",
- "\u0002\u056b\u0577\u0005\u01a2\u00d2\u0002\u056c\u0577\u0005\u0278\u013d",
- "\u0002\u056d\u0577\u0005\u0270\u0139\u0002\u056e\u0577\u0005\u01ac\u00d7",
- "\u0002\u056f\u0577\u0005\u0280\u0141\u0002\u0570\u0577\u0005\u029c\u014f",
- "\u0002\u0571\u0577\u0005\u029e\u0150\u0002\u0572\u0577\u0005\u02a2\u0152",
- "\u0002\u0573\u0577\u0005\u02a4\u0153\u0002\u0574\u0577\u0005\u02a6\u0154",
- "\u0002\u0575\u0577\u0005\u02a8\u0155\u0002\u0576\u0566\u0003\u0002\u0002",
- "\u0002\u0576\u0567\u0003\u0002\u0002\u0002\u0576\u0568\u0003\u0002\u0002",
- "\u0002\u0576\u0569\u0003\u0002\u0002\u0002\u0576\u056a\u0003\u0002\u0002",
- "\u0002\u0576\u056b\u0003\u0002\u0002\u0002\u0576\u056c\u0003\u0002\u0002",
- "\u0002\u0576\u056d\u0003\u0002\u0002\u0002\u0576\u056e\u0003\u0002\u0002",
- "\u0002\u0576\u056f\u0003\u0002\u0002\u0002\u0576\u0570\u0003\u0002\u0002",
- "\u0002\u0576\u0571\u0003\u0002\u0002\u0002\u0576\u0572\u0003\u0002\u0002",
- "\u0002\u0576\u0573\u0003\u0002\u0002\u0002\u0576\u0574\u0003\u0002\u0002",
- "\u0002\u0576\u0575\u0003\u0002\u0002\u0002\u05773\u0003\u0002\u0002",
- "\u0002\u0578\u0579\u0007\n\u0002\u0002\u0579\u057a\u0007\u000f\u0002",
- "\u0002\u057a\u057b\u0007\u0121\u0002\u0002\u057b\u057c\u0005\u03c6\u01e4",
- "\u0002\u057c\u0583\u0007\u0179\u0002\u0002\u057d\u057f\u0007\u033e\u0002",
- "\u0002\u057e\u057d\u0003\u0002\u0002\u0002\u057e\u057f\u0003\u0002\u0002",
- "\u0002\u057f\u0580\u0003\u0002\u0002\u0002\u0580\u0581\u0007\u025d\u0002",
- "\u0002\u0581\u0582\u0007\u032a\u0002\u0002\u0582\u0584\u0005\u03c6\u01e4",
- "\u0002\u0583\u057e\u0003\u0002\u0002\u0002\u0583\u0584\u0003\u0002\u0002",
- "\u0002\u0584\u058b\u0003\u0002\u0002\u0002\u0585\u0587\u0007\u033e\u0002",
- "\u0002\u0586\u0585\u0003\u0002\u0002\u0002\u0586\u0587\u0003\u0002\u0002",
- "\u0002\u0587\u0588\u0003\u0002\u0002\u0002\u0588\u0589\u0007\u00f4\u0002",
- "\u0002\u0589\u058a\u0007\u032a\u0002\u0002\u058a\u058c\u0007\u0326\u0002",
- "\u0002\u058b\u0586\u0003\u0002\u0002\u0002\u058b\u058c\u0003\u0002\u0002",
- "\u0002\u058c\u0593\u0003\u0002\u0002\u0002\u058d\u058f\u0007\u033e\u0002",
- "\u0002\u058e\u058d\u0003\u0002\u0002\u0002\u058e\u058f\u0003\u0002\u0002",
- "\u0002\u058f\u0590\u0003\u0002\u0002\u0002\u0590\u0591\u0007[\u0002",
- "\u0002\u0591\u0592\u0007\u032a\u0002\u0002\u0592\u0594\u0005\u03c6\u01e4",
- "\u0002\u0593\u058e\u0003\u0002\u0002\u0002\u0593\u0594\u0003\u0002\u0002",
- "\u0002\u05945\u0003\u0002\u0002\u0002\u0595\u0596\u0007I\u0002\u0002",
- "\u0596\u0597\u0007\u000f\u0002\u0002\u0597\u0598\u0007\u0121\u0002\u0002",
- "\u0598\u0599\u0005\u03c6\u01e4\u0002\u0599\u05a0\u0007\u0179\u0002\u0002",
- "\u059a\u059c\u0007\u033e\u0002\u0002\u059b\u059a\u0003\u0002\u0002\u0002",
- "\u059b\u059c\u0003\u0002\u0002\u0002\u059c\u059d\u0003\u0002\u0002\u0002",
- "\u059d\u059e\u0007\u00f4\u0002\u0002\u059e\u059f\u0007\u032a\u0002\u0002",
- "\u059f\u05a1\u0007\u0326\u0002\u0002\u05a0\u059b\u0003\u0002\u0002\u0002",
- "\u05a0\u05a1\u0003\u0002\u0002\u0002\u05a1\u05a8\u0003\u0002\u0002\u0002",
- "\u05a2\u05a4\u0007\u033e\u0002\u0002\u05a3\u05a2\u0003\u0002\u0002\u0002",
- "\u05a3\u05a4\u0003\u0002\u0002\u0002\u05a4\u05a5\u0003\u0002\u0002\u0002",
- "\u05a5\u05a6\u0007[\u0002\u0002\u05a6\u05a7\u0007\u032a\u0002\u0002",
- "\u05a7\u05a9\u0005\u03c6\u01e4\u0002\u05a8\u05a3\u0003\u0002\u0002\u0002",
- "\u05a8\u05a9\u0003\u0002\u0002\u0002\u05a97\u0003\u0002\u0002\u0002",
- "\u05aa\u05ab\u0007g\u0002\u0002\u05ab\u05ae\u0007\u0189\u0002\u0002",
- "\u05ac\u05ad\u0007\u0099\u0002\u0002\u05ad\u05af\u0007w\u0002\u0002",
- "\u05ae\u05ac\u0003\u0002\u0002\u0002\u05ae\u05af\u0003\u0002\u0002\u0002",
- "\u05af\u05b3\u0003\u0002\u0002\u0002\u05b0\u05b1\u0005\u03c6\u01e4\u0002",
- "\u05b1\u05b2\u0007\u0337\u0002\u0002\u05b2\u05b4\u0003\u0002\u0002\u0002",
- "\u05b3\u05b0\u0003\u0002\u0002\u0002\u05b3\u05b4\u0003\u0002\u0002\u0002",
- "\u05b4\u05b5\u0003\u0002\u0002\u0002\u05b5\u05b6\u0005\u03c6\u01e4\u0002",
- "\u05b69\u0003\u0002\u0002\u0002\u05b7\u05b8\u0007g\u0002\u0002\u05b8",
- "\u05b9\u0007\u000f\u0002\u0002\u05b9\u05ba\u0007\u0121\u0002\u0002\u05ba",
- "\u05bb\u0005\u03c6\u01e4\u0002\u05bb;\u0003\u0002\u0002\u0002\u05bc",
- "\u05bd\u0005> \u0002\u05bd\u05be\u0005\u03c6\u01e4\u0002\u05be\u05bf",
- "\u0005@!\u0002\u05bf=\u0003\u0002\u0002\u0002\u05c0\u05c1\u0007\n\u0002",
- "\u0002\u05c1\u05c2\u0007\u0195\u0002\u0002\u05c2?\u0003\u0002\u0002",
- "\u0002\u05c3\u05c5\u0005B\"\u0002\u05c4\u05c3\u0003\u0002\u0002\u0002",
- "\u05c4\u05c5\u0003\u0002\u0002\u0002\u05c5\u05c7\u0003\u0002\u0002\u0002",
- "\u05c6\u05c8\u0005X-\u0002\u05c7\u05c6\u0003\u0002\u0002\u0002\u05c7",
- "\u05c8\u0003\u0002\u0002\u0002\u05c8\u05ca\u0003\u0002\u0002\u0002\u05c9",
- "\u05cb\u0005F$\u0002\u05ca\u05c9\u0003\u0002\u0002\u0002\u05ca\u05cb",
- "\u0003\u0002\u0002\u0002\u05cb\u05cd\u0003\u0002\u0002\u0002\u05cc\u05ce",
- "\u0005L\'\u0002\u05cd\u05cc\u0003\u0002\u0002\u0002\u05cd\u05ce\u0003",
- "\u0002\u0002\u0002\u05ceA\u0003\u0002\u0002\u0002\u05cf\u05d2\u0005",
- "D#\u0002\u05d0\u05d3\u0005\\/\u0002\u05d1\u05d3\u0005T+\u0002\u05d2",
- "\u05d0\u0003\u0002\u0002\u0002\u05d2\u05d1\u0003\u0002\u0002\u0002\u05d3",
- "C\u0003\u0002\u0002\u0002\u05d4\u05d5\u0007\u008b\u0002\u0002\u05d5",
- "E\u0003\u0002\u0002\u0002\u05d6\u05d7\u0005J&\u0002\u05d7\u05d8\u0005",
- "H%\u0002\u05d8G\u0003\u0002\u0002\u0002\u05d9\u05dc\u0007\u0006\u0002",
- "\u0002\u05da\u05dc\u0005n8\u0002\u05db\u05d9\u0003\u0002\u0002\u0002",
- "\u05db\u05da\u0003\u0002\u0002\u0002\u05dcI\u0003\u0002\u0002\u0002",
- "\u05dd\u05de\u0007g\u0002\u0002\u05deK\u0003\u0002\u0002\u0002\u05df",
- "\u05e0\u0005N(\u0002\u05e0\u05e1\u0005P)\u0002\u05e1M\u0003\u0002\u0002",
- "\u0002\u05e2\u05e3\u0007\u0004\u0002\u0002\u05e3\u05e4\u0007\u0081\u0002",
- "\u0002\u05e4\u05e5\u0007\u008b\u0002\u0002\u05e5O\u0003\u0002\u0002",
- "\u0002\u05e6\u05ea\u0005R*\u0002\u05e7\u05e8\u0005V,\u0002\u05e8\u05e9",
- "\u0005\u03c6\u01e4\u0002\u05e9\u05eb\u0003\u0002\u0002\u0002\u05ea\u05e7",
- "\u0003\u0002\u0002\u0002\u05ea\u05eb\u0003\u0002\u0002\u0002\u05ebQ",
- "\u0003\u0002\u0002\u0002\u05ec\u05ed\u0007\u0326\u0002\u0002\u05edS",
- "\u0003\u0002\u0002\u0002\u05ee\u05ef\u0005V,\u0002\u05ef\u05f0\u0005",
- "\u03c6\u01e4\u0002\u05f0U\u0003\u0002\u0002\u0002\u05f1\u05f2\u0007",
- "\u0010\u0002\u0002\u05f2W\u0003\u0002\u0002\u0002\u05f3\u05f4\u0005",
- "Z.\u0002\u05f4\u05f5\u0005^0\u0002\u05f5Y\u0003\u0002\u0002\u0002\u05f6",
- "\u05f7\u0007\u0179\u0002\u0002\u05f7[\u0003\u0002\u0002\u0002\u05f8",
- "\u05fc\u0005`1\u0002\u05f9\u05fc\u0005j6\u0002\u05fa\u05fc\u0007\u0326",
- "\u0002\u0002\u05fb\u05f8\u0003\u0002\u0002\u0002\u05fb\u05f9\u0003\u0002",
- "\u0002\u0002\u05fb\u05fa\u0003\u0002\u0002\u0002\u05fc]\u0003\u0002",
- "\u0002\u0002\u05fd\u05fe\b0\u0001\u0002\u05fe\u05ff\u0007\u00f6\u0002",
- "\u0002\u05ff\u0600\u0007\u032a\u0002\u0002\u0600\u0607\t\b\u0002\u0002",
- "\u0601\u0602\u0007\u0173\u0002\u0002\u0602\u0603\u0007\u032a\u0002\u0002",
- "\u0603\u0607\t\t\u0002\u0002\u0604\u0605\u0007\u0163\u0002\u0002\u0605",
- "\u0607\u0007\u01c8\u0002\u0002\u0606\u05fd\u0003\u0002\u0002\u0002\u0606",
- "\u0601\u0003\u0002\u0002\u0002\u0606\u0604\u0003\u0002\u0002\u0002\u0607",
- "\u060c\u0003\u0002\u0002\u0002\u0608\u0609\f\u0003\u0002\u0002\u0609",
- "\u060b\u0007\u033e\u0002\u0002\u060a\u0608\u0003\u0002\u0002\u0002\u060b",
- "\u060e\u0003\u0002\u0002\u0002\u060c\u060a\u0003\u0002\u0002\u0002\u060c",
- "\u060d\u0003\u0002\u0002\u0002\u060d_\u0003\u0002\u0002\u0002\u060e",
- "\u060c\u0003\u0002\u0002\u0002\u060f\u0610\u0005d3\u0002\u0610\u0611",
- "\u0005b2\u0002\u0611\u0612\u0005f4\u0002\u0612a\u0003\u0002\u0002\u0002",
- "\u0613\u0614\u0005\u03c6\u01e4\u0002\u0614c\u0003\u0002\u0002\u0002",
- "\u0615\u0616\u0007e\u0002\u0002\u0616e\u0003\u0002\u0002\u0002\u0617",
- "\u0618\u0005h5\u0002\u0618\u0619\u0005f4\u0002\u0619\u061c\u0003\u0002",
- "\u0002\u0002\u061a\u061c\u0005\u03c6\u01e4\u0002\u061b\u0617\u0003\u0002",
- "\u0002\u0002\u061b\u061a\u0003\u0002\u0002\u0002\u061cg\u0003\u0002",
- "\u0002\u0002\u061d\u061e\u0007\u0019\u0002\u0002\u061ei\u0003\u0002",
- "\u0002\u0002\u061f\u0620\u0005l7\u0002\u0620\u0621\u0005f4\u0002\u0621",
- "k\u0003\u0002\u0002\u0002\u0622\u0623\u0007\u01e3\u0002\u0002\u0623",
- "m\u0003\u0002\u0002\u0002\u0624\u0625\u0005p9\u0002\u0625\u0626\u0005",
- "j6\u0002\u0626\u0627\u0007\u031f\u0002\u0002\u0627\u0628\u0007\u033e",
- "\u0002\u0002\u0628\u062b\u0003\u0002\u0002\u0002\u0629\u062b\u0005j",
- "6\u0002\u062a\u0624\u0003\u0002\u0002\u0002\u062a\u0629\u0003\u0002",
- "\u0002\u0002\u062bo\u0003\u0002\u0002\u0002\u062c\u062d\u0007\u031f",
- "\u0002\u0002\u062dq\u0003\u0002\u0002\u0002\u062e\u062f\u0007I\u0002",
- "\u0002\u062f\u0630\u0007\u0195\u0002\u0002\u0630\u0633\u0005\u03c6\u01e4",
- "\u0002\u0631\u0632\u0007\u0014\u0002\u0002\u0632\u0634\u0005\u03c6\u01e4",
- "\u0002\u0633\u0631\u0003\u0002\u0002\u0002\u0633\u0634\u0003\u0002\u0002",
- "\u0002\u0634\u0635\u0003\u0002\u0002\u0002\u0635\u063a\u0007\u008b\u0002",
- "\u0002\u0636\u0638\u0007\u033e\u0002\u0002\u0637\u0636\u0003\u0002\u0002",
- "\u0002\u0637\u0638\u0003\u0002\u0002\u0002\u0638\u0639\u0003\u0002\u0002",
- "\u0002\u0639\u063b\t\n\u0002\u0002\u063a\u0637\u0003\u0002\u0002\u0002",
- "\u063b\u063c\u0003\u0002\u0002\u0002\u063c\u063a\u0003\u0002\u0002\u0002",
- "\u063c\u063d\u0003\u0002\u0002\u0002\u063d\u0642\u0003\u0002\u0002\u0002",
- "\u063e\u063f\u0007\u0179\u0002\u0002\u063f\u0640\u0007\u00f6\u0002\u0002",
- "\u0640\u0641\u0007\u032a\u0002\u0002\u0641\u0643\t\b\u0002\u0002\u0642",
- "\u063e\u0003\u0002\u0002\u0002\u0642\u0643\u0003\u0002\u0002\u0002\u0643",
- "s\u0003\u0002\u0002\u0002\u0644\u0645\u0007g\u0002\u0002\u0645\u0648",
- "\u0007\u0195\u0002\u0002\u0646\u0647\u0007\u0099\u0002\u0002\u0647\u0649",
- "\u0007w\u0002\u0002\u0648\u0646\u0003\u0002\u0002\u0002\u0648\u0649",
- "\u0003\u0002\u0002\u0002\u0649\u064e\u0003\u0002\u0002\u0002\u064a\u064c",
- "\u0007\u033e\u0002\u0002\u064b\u064a\u0003\u0002\u0002\u0002\u064b\u064c",
- "\u0003\u0002\u0002\u0002\u064c\u064d\u0003\u0002\u0002\u0002\u064d\u064f",
- "\u0005\u03c6\u01e4\u0002\u064e\u064b\u0003\u0002\u0002\u0002\u064f\u0650",
- "\u0003\u0002\u0002\u0002\u0650\u064e\u0003\u0002\u0002\u0002\u0650\u0651",
- "\u0003\u0002\u0002\u0002\u0651\u0655\u0003\u0002\u0002\u0002\u0652\u0653",
- "\u0007\u0179\u0002\u0002\u0653\u0654\u0007\u0263\u0002\u0002\u0654\u0656",
- "\u0007\u01d9\u0002\u0002\u0655\u0652\u0003\u0002\u0002\u0002\u0655\u0656",
- "\u0003\u0002\u0002\u0002\u0656u\u0003\u0002\u0002\u0002\u0657\u0658",
- "\u0005x=\u0002\u0658\u065d\u0005\u03c6\u01e4\u0002\u0659\u065e\u0005",
- "z>\u0002\u065a\u065b\u0007\u02a9\u0002\u0002\u065b\u065c\u0007\u028c",
- "\u0002\u0002\u065c\u065e\u0007\u00ac\u0002\u0002\u065d\u0659\u0003\u0002",
- "\u0002\u0002\u065d\u065a\u0003\u0002\u0002\u0002\u065ew\u0003\u0002",
- "\u0002\u0002\u065f\u0660\u0007\n\u0002\u0002\u0660\u0661\u0007\u0012",
- "\u0002\u0002\u0661\u0662\u0007\u00ac\u0002\u0002\u0662y\u0003\u0002",
- "\u0002\u0002\u0663\u0664\u0005|?\u0002\u0664\u0667\u0005~@\u0002\u0665",
- "\u0666\u0007\u033e\u0002\u0002\u0666\u0668\u0005~@\u0002\u0667\u0665",
- "\u0003\u0002\u0002\u0002\u0667\u0668\u0003\u0002\u0002\u0002\u0668\u0669",
- "\u0003\u0002\u0002\u0002\u0669\u066a\u0007\u033d\u0002\u0002\u066a{",
- "\u0003\u0002\u0002\u0002\u066b\u066c\u0007\u0179\u0002\u0002\u066c\u066d",
- "\u0007\u028c\u0002\u0002\u066d\u066e\u0007\u00ac\u0002\u0002\u066e\u066f",
- "\u0007\u033c\u0002\u0002\u066f}\u0003\u0002\u0002\u0002\u0670\u0671",
- "\u0007\u01d1\u0002\u0002\u0671\u0672\u0007&\u0002\u0002\u0672\u0673",
- "\u0007\u00f4\u0002\u0002\u0673\u0674\u0007\u032a\u0002\u0002\u0674\u067b",
- "\u0007\u0326\u0002\u0002\u0675\u0676\u0007\u01ec\u0002\u0002\u0676\u0677",
- "\u0007&\u0002\u0002\u0677\u0678\u0007\u00f4\u0002\u0002\u0678\u0679",
- "\u0007\u032a\u0002\u0002\u0679\u067b\u0007\u0326\u0002\u0002\u067a\u0670",
- "\u0003\u0002\u0002\u0002\u067a\u0675\u0003\u0002\u0002\u0002\u067b\u007f",
- "\u0003\u0002\u0002\u0002\u067c\u067d\u0007I\u0002\u0002\u067d\u067e",
- "\u0007\u0012\u0002\u0002\u067e\u067f\u0007\u00ac\u0002\u0002\u067f\u0682",
- "\u0005\u03c6\u01e4\u0002\u0680\u0681\u0007\u0014\u0002\u0002\u0681\u0683",
- "\u0005\u03c6\u01e4\u0002\u0682\u0680\u0003\u0002\u0002\u0002\u0682\u0683",
- "\u0003\u0002\u0002\u0002\u0683\u0691\u0003\u0002\u0002\u0002\u0684\u068f",
- "\u0007\u008b\u0002\u0002\u0685\u0686\u0007\u0081\u0002\u0002\u0686\u0687",
- "\u0007\u032a\u0002\u0002\u0687\u0690\u0007\u0326\u0002\u0002\u0688\u0689",
- "\u0007u\u0002\u0002\u0689\u068a\u0007\u032a\u0002\u0002\u068a\u0690",
- "\u0007\u0326\u0002\u0002\u068b\u068c\u0007\u0195\u0002\u0002\u068c\u0690",
- "\u0005\u03c6\u01e4\u0002\u068d\u068e\u0007\u0291\u0002\u0002\u068e\u0690",
- "\u0005\u03c6\u01e4\u0002\u068f\u0685\u0003\u0002\u0002\u0002\u068f\u0688",
- "\u0003\u0002\u0002\u0002\u068f\u068b\u0003\u0002\u0002\u0002\u068f\u068d",
- "\u0003\u0002\u0002\u0002\u0690\u0692\u0003\u0002\u0002\u0002\u0691\u0684",
- "\u0003\u0002\u0002\u0002\u0691\u0692\u0003\u0002\u0002\u0002\u0692\u069f",
- "\u0003\u0002\u0002\u0002\u0693\u069d\u0007\u0179\u0002\u0002\u0694\u0695",
- "\u0007\u018a\u0002\u0002\u0695\u0696\u0007\u032a\u0002\u0002\u0696\u069e",
- "\t\u000b\u0002\u0002\u0697\u0698\u0007\u0292\u0002\u0002\u0698\u0699",
- "\u0007\u032a\u0002\u0002\u0699\u069e\u0007\u0326\u0002\u0002\u069a\u069b",
- "\u0007\u01c3\u0002\u0002\u069b\u069c\u0007\u032a\u0002\u0002\u069c\u069e",
- "\t\f\u0002\u0002\u069d\u0694\u0003\u0002\u0002\u0002\u069d\u0697\u0003",
- "\u0002\u0002\u0002\u069d\u069a\u0003\u0002\u0002\u0002\u069e\u06a0\u0003",
- "\u0002\u0002\u0002\u069f\u0693\u0003\u0002\u0002\u0002\u069f\u06a0\u0003",
- "\u0002\u0002\u0002\u06a0\u06a6\u0003\u0002\u0002\u0002\u06a1\u06a2\u0007",
- "\u01ec\u0002\u0002\u06a2\u06a3\u0007&\u0002\u0002\u06a3\u06a4\u0007",
- "\u00f4\u0002\u0002\u06a4\u06a5\u0007\u032a\u0002\u0002\u06a5\u06a7\u0007",
- "\u0326\u0002\u0002\u06a6\u06a1\u0003\u0002\u0002\u0002\u06a6\u06a7\u0003",
- "\u0002\u0002\u0002\u06a7\u0081\u0003\u0002\u0002\u0002\u06a8\u06a9\u0007",
- "g\u0002\u0002\u06a9\u06aa\u0007\u0012\u0002\u0002\u06aa\u06ab\u0007",
- "\u00ac\u0002\u0002\u06ab\u06af\u0005\u03c6\u01e4\u0002\u06ac\u06ad\u0007",
- "\u02a9\u0002\u0002\u06ad\u06ae\u0007\u0291\u0002\u0002\u06ae\u06b0\u0007",
- "\u00ac\u0002\u0002\u06af\u06ac\u0003\u0002\u0002\u0002\u06af\u06b0\u0003",
- "\u0002\u0002\u0002\u06b0\u0083\u0003\u0002\u0002\u0002\u06b1\u06b5\u0005",
- "\u008cG\u0002\u06b2\u06b3\u0005\u0094K\u0002\u06b3\u06b4\u0005\u008a",
- "F\u0002\u06b4\u06b6\u0003\u0002\u0002\u0002\u06b5\u06b2\u0003\u0002",
- "\u0002\u0002\u06b5\u06b6\u0003\u0002\u0002\u0002\u06b6\u06b7\u0003\u0002",
- "\u0002\u0002\u06b7\u06b8\u0005\u0386\u01c4\u0002\u06b8\u06b9\u0005\u0088",
- "E\u0002\u06b9\u06ba\u0005\u0086D\u0002\u06ba\u0085\u0003\u0002\u0002",
- "\u0002\u06bb\u06bf\u0005\u03c6\u01e4\u0002\u06bc\u06bd\u0007\u012e\u0002",
- "\u0002\u06bd\u06bf\u0007\u027d\u0002\u0002\u06be\u06bb\u0003\u0002\u0002",
- "\u0002\u06be\u06bc\u0003\u0002\u0002\u0002\u06bf\u0087\u0003\u0002\u0002",
- "\u0002\u06c0\u06c1\u0007\u015a\u0002\u0002\u06c1\u0089\u0003\u0002\u0002",
- "\u0002\u06c2\u06c3\u0007\u0340\u0002\u0002\u06c3\u06c4\u0007\u0340\u0002",
- "\u0002\u06c4\u008b\u0003\u0002\u0002\u0002\u06c5\u06c6\u0007\n\u0002",
- "\u0002\u06c6\u06c7\u0007\u0014\u0002\u0002\u06c7\u06c8\u0007\u00e5\u0002",
- "\u0002\u06c8\u008d\u0003\u0002\u0002\u0002\u06c9\u06cd\u0005\u008cG",
- "\u0002\u06ca\u06cb\u0005\u0096L\u0002\u06cb\u06cc\u0005\u008aF\u0002",
- "\u06cc\u06ce\u0003\u0002\u0002\u0002\u06cd\u06ca\u0003\u0002\u0002\u0002",
- "\u06cd\u06ce\u0003\u0002\u0002\u0002\u06ce\u06cf\u0003\u0002\u0002\u0002",
- "\u06cf\u06d0\u0005\u0386\u01c4\u0002\u06d0\u06d1\u0005\u0088E\u0002",
- "\u06d1\u06d2\u0005\u0086D\u0002\u06d2\u008f\u0003\u0002\u0002\u0002",
- "\u06d3\u06d7\u0005\u008cG\u0002\u06d4\u06d5\u0005\u0098M\u0002\u06d5",
- "\u06d6\u0005\u008aF\u0002\u06d6\u06d8\u0003\u0002\u0002\u0002\u06d7",
- "\u06d4\u0003\u0002\u0002\u0002\u06d7\u06d8\u0003\u0002\u0002\u0002\u06d8",
- "\u06d9\u0003\u0002\u0002\u0002\u06d9\u06da\u0005\u0388\u01c5\u0002\u06da",
- "\u06db\u0005\u0088E\u0002\u06db\u06dc\u0005\u0086D\u0002\u06dc\u0091",
- "\u0003\u0002\u0002\u0002\u06dd\u06e1\u0005\u008cG\u0002\u06de\u06df",
- "\u0005\u009aN\u0002\u06df\u06e0\u0005\u008aF\u0002\u06e0\u06e2\u0003",
- "\u0002\u0002\u0002\u06e1\u06de\u0003\u0002\u0002\u0002\u06e1\u06e2\u0003",
- "\u0002\u0002\u0002\u06e2\u06e3\u0003\u0002\u0002\u0002\u06e3\u06e4\u0005",
- "\u038a\u01c6\u0002\u06e4\u06e5\u0005\u0088E\u0002\u06e5\u06e6\u0005",
- "\u0086D\u0002\u06e6\u0093\u0003\u0002\u0002\u0002\u06e7\u070a\u0007",
- "\u0271\u0002\u0002\u06e8\u070a\u0007\u0195\u0002\u0002\u06e9\u06ea\u0007",
- "\u0012\u0002\u0002\u06ea\u070a\u0007\u00ac\u0002\u0002\u06eb\u06ec\u0007",
- "\u019f\u0002\u0002\u06ec\u070a\u0007\u0092\u0002\u0002\u06ed\u070a\u0007",
- "+\u0002\u0002\u06ee\u070a\u0007D\u0002\u0002\u06ef\u070a\u0007\u0301",
- "\u0002\u0002\u06f0\u070a\u0007T\u0002\u0002\u06f1\u070a\u0007m\u0002",
- "\u0002\u06f2\u06f3\u0007\u0209\u0002\u0002\u06f3\u070a\u0007\u01ae\u0002",
- "\u0002\u06f4\u06f5\u0007\u0209\u0002\u0002\u06f5\u070a\u0007\u02e4\u0002",
- "\u0002\u06f6\u06f7\u0007\u0250\u0002\u0002\u06f7\u070a\u0007\u0301\u0002",
- "\u0002\u06f8\u06f9\u0007\u02a7\u0002\u0002\u06f9\u06fa\u0007\u0136\u0002",
- "\u0002\u06fa\u070a\u0007\u01a6\u0002\u0002\u06fb\u070a\u0007\u0121\u0002",
- "\u0002\u06fc\u070a\u0007\u02b8\u0002\u0002\u06fd\u070a\u0007\u012e\u0002",
- "\u0002\u06fe\u06ff\u0007\u02c2\u0002\u0002\u06ff\u0700\u0007\u0290\u0002",
- "\u0002\u0700\u070a\u0007\u0233\u0002\u0002\u0701\u0702\u0007\u0135\u0002",
- "\u0002\u0702\u070a\u0007\u0121\u0002\u0002\u0703\u070a\u0007\u0136\u0002",
- "\u0002\u0704\u0705\u0007\u02eb\u0002\u0002\u0705\u070a\u0007\u00ac\u0002",
- "\u0002\u0706\u0707\u0007\u0315\u0002\u0002\u0707\u0708\u0007\u012e\u0002",
- "\u0002\u0708\u070a\u0007\u01b5\u0002\u0002\u0709\u06e7\u0003\u0002\u0002",
- "\u0002\u0709\u06e8\u0003\u0002\u0002\u0002\u0709\u06e9\u0003\u0002\u0002",
- "\u0002\u0709\u06eb\u0003\u0002\u0002\u0002\u0709\u06ed\u0003\u0002\u0002",
- "\u0002\u0709\u06ee\u0003\u0002\u0002\u0002\u0709\u06ef\u0003\u0002\u0002",
- "\u0002\u0709\u06f0\u0003\u0002\u0002\u0002\u0709\u06f1\u0003\u0002\u0002",
- "\u0002\u0709\u06f2\u0003\u0002\u0002\u0002\u0709\u06f4\u0003\u0002\u0002",
- "\u0002\u0709\u06f6\u0003\u0002\u0002\u0002\u0709\u06f8\u0003\u0002\u0002",
- "\u0002\u0709\u06fb\u0003\u0002\u0002\u0002\u0709\u06fc\u0003\u0002\u0002",
- "\u0002\u0709\u06fd\u0003\u0002\u0002\u0002\u0709\u06fe\u0003\u0002\u0002",
- "\u0002\u0709\u0701\u0003\u0002\u0002\u0002\u0709\u0703\u0003\u0002\u0002",
- "\u0002\u0709\u0704\u0003\u0002\u0002\u0002\u0709\u0706\u0003\u0002\u0002",
- "\u0002\u070a\u0095\u0003\u0002\u0002\u0002\u070b\u0721\u0007\u0271\u0002",
- "\u0002\u070c\u0721\u0007\u0195\u0002\u0002\u070d\u070e\u0007\u0012\u0002",
- "\u0002\u070e\u0721\u0007\u00ac\u0002\u0002\u070f\u0721\u0007+\u0002",
- "\u0002\u0710\u0721\u0007\u0301\u0002\u0002\u0711\u0721\u0007T\u0002",
- "\u0002\u0712\u0713\u0007\u0209\u0002\u0002\u0713\u0721\u0007\u01ae\u0002",
- "\u0002\u0714\u0715\u0007\u0209\u0002\u0002\u0715\u0721\u0007\u02e4\u0002",
- "\u0002\u0716\u0721\u0007\u0121\u0002\u0002\u0717\u0721\u0007\u012e\u0002",
- "\u0002\u0718\u0719\u0007\u02c2\u0002\u0002\u0719\u071a\u0007\u0290\u0002",
- "\u0002\u071a\u0721\u0007\u0233\u0002\u0002\u071b\u071c\u0007\u02eb\u0002",
- "\u0002\u071c\u0721\u0007\u00ac\u0002\u0002\u071d\u071e\u0007\u0315\u0002",
- "\u0002\u071e\u071f\u0007\u012e\u0002\u0002\u071f\u0721\u0007\u01b5\u0002",
- "\u0002\u0720\u070b\u0003\u0002\u0002\u0002\u0720\u070c\u0003\u0002\u0002",
- "\u0002\u0720\u070d\u0003\u0002\u0002\u0002\u0720\u070f\u0003\u0002\u0002",
- "\u0002\u0720\u0710\u0003\u0002\u0002\u0002\u0720\u0711\u0003\u0002\u0002",
- "\u0002\u0720\u0712\u0003\u0002\u0002\u0002\u0720\u0714\u0003\u0002\u0002",
- "\u0002\u0720\u0716\u0003\u0002\u0002\u0002\u0720\u0717\u0003\u0002\u0002",
- "\u0002\u0720\u0718\u0003\u0002\u0002\u0002\u0720\u071b\u0003\u0002\u0002",
- "\u0002\u0720\u071d\u0003\u0002\u0002\u0002\u0721\u0097\u0003\u0002\u0002",
- "\u0002\u0722\u0723\t\r\u0002\u0002\u0723\u0099\u0003\u0002\u0002\u0002",
- "\u0724\u0725\t\u000e\u0002\u0002\u0725\u009b\u0003\u0002\u0002\u0002",
- "\u0726\u0727\u0007g\u0002\u0002\u0727\u0728\u0007\u019f\u0002\u0002",
- "\u0728\u0729\u0007\u0092\u0002\u0002\u0729\u072a\u0005\u03c6\u01e4\u0002",
- "\u072a\u009d\u0003\u0002\u0002\u0002\u072b\u072c\u0005\u00a0Q\u0002",
- "\u072c\u072d\u0005\u00a2R\u0002\u072d\u009f\u0003\u0002\u0002\u0002",
- "\u072e\u072f\u0007\n\u0002\u0002\u072f\u0730\u0007\u019f\u0002\u0002",
- "\u0730\u0731\u0007\u0092\u0002\u0002\u0731\u0732\u0005\u03c6\u01e4\u0002",
- "\u0732\u00a1\u0003\u0002\u0002\u0002\u0733\u0734\u0007\u013b\u0002\u0002",
- "\u0734\u0744\u0007\u033c\u0002\u0002\u0735\u0736\u0007\u0016\u0002\u0002",
- "\u0736\u0737\u0007\u032a\u0002\u0002\u0737\u0745\t\u000f\u0002\u0002",
- "\u0738\u0739\u0007\u01f8\u0002\u0002\u0739\u073a\u0007\u032a\u0002\u0002",
- "\u073a\u0745\u0007\u0322\u0002\u0002\u073b\u073c\u0007\u0214\u0002\u0002",
- "\u073c\u073d\u0007\u032a\u0002\u0002\u073d\u0745\u0007\u0322\u0002\u0002",
- "\u073e\u073f\u0007\u01d0\u0002\u0002\u073f\u0740\u0007\u032a\u0002\u0002",
- "\u0740\u0745\t\t\u0002\u0002\u0741\u0742\u0007\u02b0\u0002\u0002\u0742",
- "\u0743\u0007\u032a\u0002\u0002\u0743\u0745\u0007\u0322\u0002\u0002\u0744",
- "\u0735\u0003\u0002\u0002\u0002\u0744\u0738\u0003\u0002\u0002\u0002\u0744",
- "\u073b\u0003\u0002\u0002\u0002\u0744\u073e\u0003\u0002\u0002\u0002\u0744",
- "\u0741\u0003\u0002\u0002\u0002\u0745\u0746\u0003\u0002\u0002\u0002\u0746",
- "\u0892\u0007\u033d\u0002\u0002\u0747\u0748\u0007\u0004\u0002\u0002\u0748",
- "\u0749\u0007T\u0002\u0002\u0749\u0892\u0005\u03c6\u01e4\u0002\u074a",
- "\u074b\u0007\u02a9\u0002\u0002\u074b\u074c\u0007T\u0002\u0002\u074c",
- "\u0892\u0005\u03c6\u01e4\u0002\u074d\u074e\u0007\u0004\u0002\u0002\u074e",
- "\u074f\u0007\u02ac\u0002\u0002\u074f\u0750\u0007\u00e5\u0002\u0002\u0750",
- "\u0751\u0007\u0326\u0002\u0002\u0751\u0752\u0007\u0179\u0002\u0002\u0752",
- "\u0756\u0007\u033c\u0002\u0002\u0753\u0754\u0007\u01ed\u0002\u0002\u0754",
- "\u0755\u0007\u032a\u0002\u0002\u0755\u0757\u0007\u0326\u0002\u0002\u0756",
- "\u0753\u0003\u0002\u0002\u0002\u0756\u0757\u0003\u0002\u0002\u0002\u0757",
- "\u075e\u0003\u0002\u0002\u0002\u0758\u075a\u0007\u033e\u0002\u0002\u0759",
- "\u0758\u0003\u0002\u0002\u0002\u0759\u075a\u0003\u0002\u0002\u0002\u075a",
- "\u075b\u0003\u0002\u0002\u0002\u075b\u075c\u0007\u0018\u0002\u0002\u075c",
- "\u075d\u0007\u032a\u0002\u0002\u075d\u075f\t\u0010\u0002\u0002\u075e",
- "\u0759\u0003\u0002\u0002\u0002\u075e\u075f\u0003\u0002\u0002\u0002\u075f",
- "\u0766\u0003\u0002\u0002\u0002\u0760\u0762\u0007\u033e\u0002\u0002\u0761",
- "\u0760\u0003\u0002\u0002\u0002\u0761\u0762\u0003\u0002\u0002\u0002\u0762",
- "\u0763\u0003\u0002\u0002\u0002\u0763\u0764\u0007\u01f6\u0002\u0002\u0764",
- "\u0765\u0007\u032a\u0002\u0002\u0765\u0767\t\u0011\u0002\u0002\u0766",
- "\u0761\u0003\u0002\u0002\u0002\u0766\u0767\u0003\u0002\u0002\u0002\u0767",
- "\u076e\u0003\u0002\u0002\u0002\u0768\u076a\u0007\u033e\u0002\u0002\u0769",
- "\u0768\u0003\u0002\u0002\u0002\u0769\u076a\u0003\u0002\u0002\u0002\u076a",
- "\u076b\u0003\u0002\u0002\u0002\u076b\u076c\u0007\u02ca\u0002\u0002\u076c",
- "\u076d\u0007\u032a\u0002\u0002\u076d\u076f\t\u0011\u0002\u0002\u076e",
- "\u0769\u0003\u0002\u0002\u0002\u076e\u076f\u0003\u0002\u0002\u0002\u076f",
- "\u0776\u0003\u0002\u0002\u0002\u0770\u0772\u0007\u033e\u0002\u0002\u0771",
- "\u0770\u0003\u0002\u0002\u0002\u0771\u0772\u0003\u0002\u0002\u0002\u0772",
- "\u0773\u0003\u0002\u0002\u0002\u0773\u0774\u0007\u01a1\u0002\u0002\u0774",
- "\u0775\u0007\u032a\u0002\u0002\u0775\u0777\u0007\u0322\u0002\u0002\u0776",
- "\u0771\u0003\u0002\u0002\u0002\u0776\u0777\u0003\u0002\u0002\u0002\u0777",
- "\u0781\u0003\u0002\u0002\u0002\u0778\u077a\u0007\u033e\u0002\u0002\u0779",
- "\u0778\u0003\u0002\u0002\u0002\u0779\u077a\u0003\u0002\u0002\u0002\u077a",
- "\u077b\u0003\u0002\u0002\u0002\u077b\u077c\u0007\u0288\u0002\u0002\u077c",
- "\u077d\u0007\u033c\u0002\u0002\u077d\u077e\u0007\u0007\u0002\u0002\u077e",
- "\u077f\u0007\u032a\u0002\u0002\u077f\u0780\t\u0012\u0002\u0002\u0780",
- "\u0782\u0007\u033d\u0002\u0002\u0781\u0779\u0003\u0002\u0002\u0002\u0781",
- "\u0782\u0003\u0002\u0002\u0002\u0782\u078c\u0003\u0002\u0002\u0002\u0783",
- "\u0785\u0007\u033e\u0002\u0002\u0784\u0783\u0003\u0002\u0002\u0002\u0784",
- "\u0785\u0003\u0002\u0002\u0002\u0785\u0786\u0003\u0002\u0002\u0002\u0786",
- "\u0787\u0007\u02c5\u0002\u0002\u0787\u0788\u0007\u033c\u0002\u0002\u0788",
- "\u0789\u0007\u0007\u0002\u0002\u0789\u078a\u0007\u032a\u0002\u0002\u078a",
- "\u078b\u0007\u029d\u0002\u0002\u078b\u078d\u0007\u033d\u0002\u0002\u078c",
- "\u0784\u0003\u0002\u0002\u0002\u078c\u078d\u0003\u0002\u0002\u0002\u078d",
- "\u078e\u0003\u0002\u0002\u0002\u078e\u0892\u0007\u033d\u0002\u0002\u078f",
- "\u0790\u0007\u02c5\u0002\u0002\u0790\u0799\u0007\u033c\u0002\u0002\u0791",
- "\u0792\u0007\u0007\u0002\u0002\u0792\u0793\u0007\u032a\u0002\u0002\u0793",
- "\u079a\t\u0013\u0002\u0002\u0794\u0795\u0007\u029e\u0002\u0002\u0795",
- "\u0796\u0007\u032a\u0002\u0002\u0796\u0797\u0007\u033c\u0002\u0002\u0797",
- "\u0798\u0007\u0326\u0002\u0002\u0798\u079a\u0007\u033d\u0002\u0002\u0799",
- "\u0791\u0003\u0002\u0002\u0002\u0799\u0794\u0003\u0002\u0002\u0002\u079a",
- "\u0892\u0003\u0002\u0002\u0002\u079b\u079c\u0007\u0288\u0002\u0002\u079c",
- "\u07b3\u0007\u033c\u0002\u0002\u079d\u079e\u0007\u0007\u0002\u0002\u079e",
- "\u079f\u0007\u032a\u0002\u0002\u079f\u07b4\t\u0013\u0002\u0002\u07a0",
- "\u07a1\u0007\u029e\u0002\u0002\u07a1\u07a2\u0007\u032a\u0002\u0002\u07a2",
- "\u07ad\u0007\u033c\u0002\u0002\u07a3\u07a5\u0007\u033e\u0002\u0002\u07a4",
- "\u07a3\u0003\u0002\u0002\u0002\u07a4\u07a5\u0003\u0002\u0002\u0002\u07a5",
- "\u07a6\u0003\u0002\u0002\u0002\u07a6\u07a8\u0007\u0326\u0002\u0002\u07a7",
- "\u07a4\u0003\u0002\u0002\u0002\u07a8\u07ab\u0003\u0002\u0002\u0002\u07a9",
- "\u07a7\u0003\u0002\u0002\u0002\u07a9\u07aa\u0003\u0002\u0002\u0002\u07aa",
- "\u07ae\u0003\u0002\u0002\u0002\u07ab\u07a9\u0003\u0002\u0002\u0002\u07ac",
- "\u07ae\u0007\u00d5\u0002\u0002\u07ad\u07a9\u0003\u0002\u0002\u0002\u07ad",
- "\u07ac\u0003\u0002\u0002\u0002\u07ae\u07af\u0003\u0002\u0002\u0002\u07af",
- "\u07b4\u0007\u033d\u0002\u0002\u07b0\u07b1\u0007\u02d1\u0002\u0002\u07b1",
- "\u07b2\u0007\u032a\u0002\u0002\u07b2\u07b4\u0007\u0322\u0002\u0002\u07b3",
- "\u079d\u0003\u0002\u0002\u0002\u07b3\u07a0\u0003\u0002\u0002\u0002\u07b3",
- "\u07b0\u0003\u0002\u0002\u0002\u07b4\u0892\u0003\u0002\u0002\u0002\u07b5",
- "\u07b6\u0007\u025a\u0002\u0002\u07b6\u07b7\u0007\u02ac\u0002\u0002\u07b7",
- "\u07b8\u0007\u00e5\u0002\u0002\u07b8\u07f2\u0007\u0326\u0002\u0002\u07b9",
- "\u07ba\u0007\u0179\u0002\u0002\u07ba\u07ca\u0007\u033c\u0002\u0002\u07bb",
- "\u07bc\u0007\u01ed\u0002\u0002\u07bc\u07bd\u0007\u032a\u0002\u0002\u07bd",
- "\u07cb\u0007\u0326\u0002\u0002\u07be\u07bf\u0007\u0018\u0002\u0002\u07bf",
- "\u07c0\u0007\u032a\u0002\u0002\u07c0\u07cb\t\u0010\u0002\u0002\u07c1",
- "\u07c2\u0007\u01f6\u0002\u0002\u07c2\u07c3\u0007\u032a\u0002\u0002\u07c3",
- "\u07cb\t\u0011\u0002\u0002\u07c4\u07c5\u0007\u02ca\u0002\u0002\u07c5",
- "\u07c6\u0007\u032a\u0002\u0002\u07c6\u07cb\t\u0011\u0002\u0002\u07c7",
- "\u07c8\u0007\u01a1\u0002\u0002\u07c8\u07c9\u0007\u032a\u0002\u0002\u07c9",
- "\u07cb\u0007\u0322\u0002\u0002\u07ca\u07bb\u0003\u0002\u0002\u0002\u07ca",
- "\u07be\u0003\u0002\u0002\u0002\u07ca\u07c1\u0003\u0002\u0002\u0002\u07ca",
- "\u07c4\u0003\u0002\u0002\u0002\u07ca\u07c7\u0003\u0002\u0002\u0002\u07cb",
- "\u07f3\u0003\u0002\u0002\u0002\u07cc\u07cd\u0007\u02c5\u0002\u0002\u07cd",
- "\u07d6\u0007\u033c\u0002\u0002\u07ce\u07cf\u0007\u0007\u0002\u0002\u07cf",
- "\u07d0\u0007\u032a\u0002\u0002\u07d0\u07d7\t\u0013\u0002\u0002\u07d1",
- "\u07d2\u0007\u029e\u0002\u0002\u07d2\u07d3\u0007\u032a\u0002\u0002\u07d3",
- "\u07d4\u0007\u033c\u0002\u0002\u07d4\u07d5\u0007\u0326\u0002\u0002\u07d5",
- "\u07d7\u0007\u033d\u0002\u0002\u07d6\u07ce\u0003\u0002\u0002\u0002\u07d6",
- "\u07d1\u0003\u0002\u0002\u0002\u07d7\u07f3\u0003\u0002\u0002\u0002\u07d8",
- "\u07d9\u0007\u0288\u0002\u0002\u07d9\u07f0\u0007\u033c\u0002\u0002\u07da",
- "\u07db\u0007\u0007\u0002\u0002\u07db\u07dc\u0007\u032a\u0002\u0002\u07dc",
- "\u07f1\t\u0013\u0002\u0002\u07dd\u07de\u0007\u029e\u0002\u0002\u07de",
- "\u07df\u0007\u032a\u0002\u0002\u07df\u07ea\u0007\u033c\u0002\u0002\u07e0",
- "\u07e2\u0007\u033e\u0002\u0002\u07e1\u07e0\u0003\u0002\u0002\u0002\u07e1",
- "\u07e2\u0003\u0002\u0002\u0002\u07e2\u07e3\u0003\u0002\u0002\u0002\u07e3",
- "\u07e5\u0007\u0326\u0002\u0002\u07e4\u07e1\u0003\u0002\u0002\u0002\u07e5",
- "\u07e8\u0003\u0002\u0002\u0002\u07e6\u07e4\u0003\u0002\u0002\u0002\u07e6",
- "\u07e7\u0003\u0002\u0002\u0002\u07e7\u07eb\u0003\u0002\u0002\u0002\u07e8",
- "\u07e6\u0003\u0002\u0002\u0002\u07e9\u07eb\u0007\u00d5\u0002\u0002\u07ea",
- "\u07e6\u0003\u0002\u0002\u0002\u07ea\u07e9\u0003\u0002\u0002\u0002\u07eb",
- "\u07ec\u0003\u0002\u0002\u0002\u07ec\u07f1\u0007\u033d\u0002\u0002\u07ed",
- "\u07ee\u0007\u02d1\u0002\u0002\u07ee\u07ef\u0007\u032a\u0002\u0002\u07ef",
- "\u07f1\u0007\u0322\u0002\u0002\u07f0\u07da\u0003\u0002\u0002\u0002\u07f0",
- "\u07dd\u0003\u0002\u0002\u0002\u07f0\u07ed\u0003\u0002\u0002\u0002\u07f1",
- "\u07f3\u0003\u0002\u0002\u0002\u07f2\u07b9\u0003\u0002\u0002\u0002\u07f2",
- "\u07cc\u0003\u0002\u0002\u0002\u07f2\u07d8\u0003\u0002\u0002\u0002\u07f3",
- "\u07f4\u0003\u0002\u0002\u0002\u07f4\u0892\u0007\u033d\u0002\u0002\u07f5",
- "\u07f6\u0007\u02a9\u0002\u0002\u07f6\u07f7\u0007\u02ac\u0002\u0002\u07f7",
- "\u07f8\u0007\u00e5\u0002\u0002\u07f8\u0892\u0007\u0326\u0002\u0002\u07f9",
- "\u0892\u0007\u00aa\u0002\u0002\u07fa\u07fb\u0007\u00aa\u0002\u0002\u07fb",
- "\u07fc\u0007\u019f\u0002\u0002\u07fc\u07fd\u0007\u0092\u0002\u0002\u07fd",
- "\u0814\u0007\u00e5\u0002\u0002\u07fe\u0800\u0007\u033e\u0002\u0002\u07ff",
- "\u07fe\u0003\u0002\u0002\u0002\u07ff\u0800\u0003\u0002\u0002\u0002\u0800",
- "\u0801\u0003\u0002\u0002\u0002\u0801\u0802\u0007\u0326\u0002\u0002\u0802",
- "\u0803\u0007\u0179\u0002\u0002\u0803\u0804\u0007\u033c\u0002\u0002\u0804",
- "\u0805\u0007\u0235\u0002\u0002\u0805\u0806\u0007\u032a\u0002\u0002\u0806",
- "\u0807\u0007\u0326\u0002\u0002\u0807\u0808\u0007\u033e\u0002\u0002\u0808",
- "\u0809\u0007\u0018\u0002\u0002\u0809\u080a\u0007\u032a\u0002\u0002\u080a",
- "\u080b\t\u0010\u0002\u0002\u080b\u080c\u0007\u033e\u0002\u0002\u080c",
- "\u080d\u0007\u01f6\u0002\u0002\u080d\u080e\u0007\u032a\u0002\u0002\u080e",
- "\u080f\u0007\u023e\u0002\u0002\u080f\u0810\u0007\u033e\u0002\u0002\u0810",
- "\u0811\u0007\u02ca\u0002\u0002\u0811\u0812\u0007\u032a\u0002\u0002\u0812",
- "\u0813\t\u0011\u0002\u0002\u0813\u0815\u0007\u033d\u0002\u0002\u0814",
- "\u07ff\u0003\u0002\u0002\u0002\u0815\u0816\u0003\u0002\u0002\u0002\u0816",
- "\u0814\u0003\u0002\u0002\u0002\u0816\u0817\u0003\u0002\u0002\u0002\u0817",
- "\u0892\u0003\u0002\u0002\u0002\u0818\u0819\u0007\u025a\u0002\u0002\u0819",
- "\u081a\u0007\u019f\u0002\u0002\u081a\u081b\u0007\u0092\u0002\u0002\u081b",
- "\u083e\u0007\u00e5\u0002\u0002\u081c\u081e\u0007\u033e\u0002\u0002\u081d",
- "\u081c\u0003\u0002\u0002\u0002\u081d\u081e\u0003\u0002\u0002\u0002\u081e",
- "\u081f\u0003\u0002\u0002\u0002\u081f\u0820\u0007\u0326\u0002\u0002\u0820",
- "\u0821\u0007\u0179\u0002\u0002\u0821\u0822\u0007\u033c\u0002\u0002\u0822",
- "\u0823\u0007\u0235\u0002\u0002\u0823\u0824\u0007\u032a\u0002\u0002\u0824",
- "\u082b\u0007\u0326\u0002\u0002\u0825\u0827\u0007\u033e\u0002\u0002\u0826",
- "\u0825\u0003\u0002\u0002\u0002\u0826\u0827\u0003\u0002\u0002\u0002\u0827",
- "\u0828\u0003\u0002\u0002\u0002\u0828\u0829\u0007\u0018\u0002\u0002\u0829",
- "\u082a\u0007\u032a\u0002\u0002\u082a\u082c\t\u0010\u0002\u0002\u082b",
- "\u0826\u0003\u0002\u0002\u0002\u082b\u082c\u0003\u0002\u0002\u0002\u082c",
- "\u0833\u0003\u0002\u0002\u0002\u082d\u082f\u0007\u033e\u0002\u0002\u082e",
- "\u082d\u0003\u0002\u0002\u0002\u082e\u082f\u0003\u0002\u0002\u0002\u082f",
- "\u0830\u0003\u0002\u0002\u0002\u0830\u0831\u0007\u01f6\u0002\u0002\u0831",
- "\u0832\u0007\u032a\u0002\u0002\u0832\u0834\u0007\u023e\u0002\u0002\u0833",
- "\u082e\u0003\u0002\u0002\u0002\u0833\u0834\u0003\u0002\u0002\u0002\u0834",
- "\u083b\u0003\u0002\u0002\u0002\u0835\u0837\u0007\u033e\u0002\u0002\u0836",
- "\u0835\u0003\u0002\u0002\u0002\u0836\u0837\u0003\u0002\u0002\u0002\u0837",
- "\u0838\u0003\u0002\u0002\u0002\u0838\u0839\u0007\u02ca\u0002\u0002\u0839",
- "\u083a\u0007\u032a\u0002\u0002\u083a\u083c\t\u0011\u0002\u0002\u083b",
- "\u0836\u0003\u0002\u0002\u0002\u083b\u083c\u0003\u0002\u0002\u0002\u083c",
- "\u083d\u0003\u0002\u0002\u0002\u083d\u083f\u0007\u033d\u0002\u0002\u083e",
- "\u081d\u0003\u0002\u0002\u0002\u083f\u0840\u0003\u0002\u0002\u0002\u0840",
- "\u083e\u0003\u0002\u0002\u0002\u0840\u0841\u0003\u0002\u0002\u0002\u0841",
- "\u0892\u0003\u0002\u0002\u0002\u0842\u0843\u0007\u0091\u0002\u0002\u0843",
- "\u0844\u0007I\u0002\u0002\u0844\u0845\u0007\r\u0002\u0002\u0845\u0892",
- "\u0007T\u0002\u0002\u0846\u0847\u0007]\u0002\u0002\u0847\u0848\u0007",
- "I\u0002\u0002\u0848\u0849\u0007\r\u0002\u0002\u0849\u0892\u0007T\u0002",
- "\u0002\u084a\u0892\u0007}\u0002\u0002\u084b\u0892\u0007\u0204\u0002",
- "\u0002\u084c\u084d\u0007\u0004\u0002\u0002\u084d\u084e\u0007\u0234\u0002",
- "\u0002\u084e\u084f\u0007\u0326\u0002\u0002\u084f\u0871\u0007\u033c\u0002",
- "\u0002\u0850\u0851\u0007\u0179\u0002\u0002\u0851\u0852\u0007\u01dd\u0002",
- "\u0002\u0852\u0853\u0007\u00e5\u0002\u0002\u0853\u0854\u0007\u033c\u0002",
- "\u0002\u0854\u0855\u0007\u00a6\u0002\u0002\u0855\u0856\u0007\u00a6\u0002",
- "\u0002\u0856\u0857\u0003\u0002\u0002\u0002\u0857\u0872\u0007\u033d\u0002",
- "\u0002\u0858\u0859\u0007\u0179\u0002\u0002\u0859\u085a\u0007\u0224\u0002",
- "\u0002\u085a\u0866\u0007\u033c\u0002\u0002\u085b\u085d\u0007\u033e\u0002",
- "\u0002\u085c\u085b\u0003\u0002\u0002\u0002\u085c\u085d\u0003\u0002\u0002",
- "\u0002\u085d\u085e\u0003\u0002\u0002\u0002\u085e\u0863\u0007\u033c\u0002",
- "\u0002\u085f\u0860\u0007\u00a6\u0002\u0002\u0860\u0861\u0007\u033e\u0002",
- "\u0002\u0861\u0864\u0007\u00a6\u0002\u0002\u0862\u0864\u0007\u00a7\u0002",
- "\u0002\u0863\u085f\u0003\u0002\u0002\u0002\u0863\u0862\u0003\u0002\u0002",
- "\u0002\u0864\u0865\u0003\u0002\u0002\u0002\u0865\u0867\u0007\u033d\u0002",
- "\u0002\u0866\u085c\u0003\u0002\u0002\u0002\u0867\u0868\u0003\u0002\u0002",
- "\u0002\u0868\u0866\u0003\u0002\u0002\u0002\u0868\u0869\u0003\u0002\u0002",
- "\u0002\u0869\u086a\u0003\u0002\u0002\u0002\u086a\u086f\u0007\u033d\u0002",
- "\u0002\u086b\u086c\u0007\u033e\u0002\u0002\u086c\u086d\u0007\u0286\u0002",
- "\u0002\u086d\u086e\u0007\u032a\u0002\u0002\u086e\u0870\u0007\u0322\u0002",
- "\u0002\u086f\u086b\u0003\u0002\u0002\u0002\u086f\u0870\u0003\u0002\u0002",
- "\u0002\u0870\u0872\u0003\u0002\u0002\u0002\u0871\u0850\u0003\u0002\u0002",
- "\u0002\u0871\u0858\u0003\u0002\u0002\u0002\u0872\u0873\u0003\u0002\u0002",
- "\u0002\u0873\u0892\u0007\u033d\u0002\u0002\u0874\u0875\u0007\u025a\u0002",
- "\u0002\u0875\u0882\u0007\u0234\u0002\u0002\u0876\u0877\u0007\u0004\u0002",
- "\u0002\u0877\u0878\u0007\u0224\u0002\u0002\u0878\u087c\u0007\u033c\u0002",
- "\u0002\u0879\u087a\u0007\u00a6\u0002\u0002\u087a\u087d\u0007\u00a6\u0002",
- "\u0002\u087b\u087d\u0007\u00a7\u0002\u0002\u087c\u0879\u0003\u0002\u0002",
- "\u0002\u087c\u087b\u0003\u0002\u0002\u0002\u087d\u087e\u0003\u0002\u0002",
- "\u0002\u087e\u0883\u0007\u033d\u0002\u0002\u087f\u0880\u0007\u0286\u0002",
- "\u0002\u0880\u0881\u0007\u032a\u0002\u0002\u0881\u0883\u0007\u0322\u0002",
- "\u0002\u0882\u0876\u0003\u0002\u0002\u0002\u0882\u087f\u0003\u0002\u0002",
- "\u0002\u0883\u0892\u0003\u0002\u0002\u0002\u0884\u0885\u0007\u0115\u0002",
- "\u0002\u0885\u0886\u0007\u0234\u0002\u0002\u0886\u0892\u0007\u0326\u0002",
- "\u0002\u0887\u0888\u0007\u02a9\u0002\u0002\u0888\u0889\u0007\u0234\u0002",
- "\u0002\u0889\u0892\u0007\u0326\u0002\u0002\u088a\u0892\u0007\u0272\u0002",
- "\u0002\u088b\u088c\u0007\u0179\u0002\u0002\u088c\u088d\u0007\u033c\u0002",
- "\u0002\u088d\u088e\u0007h\u0002\u0002\u088e\u088f\u0007\u032a\u0002",
- "\u0002\u088f\u0890\u0007\u00f8\u0002\u0002\u0890\u0892\u0007\u033d\u0002",
- "\u0002\u0891\u0733\u0003\u0002\u0002\u0002\u0891\u0747\u0003\u0002\u0002",
- "\u0002\u0891\u074a\u0003\u0002\u0002\u0002\u0891\u074d\u0003\u0002\u0002",
- "\u0002\u0891\u078f\u0003\u0002\u0002\u0002\u0891\u079b\u0003\u0002\u0002",
- "\u0002\u0891\u07b5\u0003\u0002\u0002\u0002\u0891\u07f5\u0003\u0002\u0002",
- "\u0002\u0891\u07f9\u0003\u0002\u0002\u0002\u0891\u07fa\u0003\u0002\u0002",
- "\u0002\u0891\u0818\u0003\u0002\u0002\u0002\u0891\u0842\u0003\u0002\u0002",
- "\u0002\u0891\u0846\u0003\u0002\u0002\u0002\u0891\u084a\u0003\u0002\u0002",
- "\u0002\u0891\u084b\u0003\u0002\u0002\u0002\u0891\u084c\u0003\u0002\u0002",
- "\u0002\u0891\u0874\u0003\u0002\u0002\u0002\u0891\u0884\u0003\u0002\u0002",
- "\u0002\u0891\u0887\u0003\u0002\u0002\u0002\u0891\u088a\u0003\u0002\u0002",
- "\u0002\u0891\u088b\u0003\u0002\u0002\u0002\u0892\u00a3\u0003\u0002\u0002",
- "\u0002\u0893\u0894\t\u0014\u0002\u0002\u0894\u0895\u0007\u01a8\u0002",
- "\u0002\u0895\u0896\u0007\u028a\u0002\u0002\u0896\u0897\u0005\u03c6\u01e4",
- "\u0002\u0897\u0898\u0007\u0085\u0002\u0002\u0898\u0899\u0007F\u0002",
- "\u0002\u0899\u089a\u0007\u013b\u0002\u0002\u089a\u08a4\u0007\u033c\u0002",
- "\u0002\u089b\u089c\u0007E\u0002\u0002\u089c\u089f\u0007\u032a\u0002",
- "\u0002\u089d\u08a0\u0005\u03c6\u01e4\u0002\u089e\u08a0\u0007\r\u0002",
- "\u0002\u089f\u089d\u0003\u0002\u0002\u0002\u089f\u089e\u0003\u0002\u0002",
- "\u0002\u08a0\u08a2\u0003\u0002\u0002\u0002\u08a1\u08a3\u0007\u033e\u0002",
- "\u0002\u08a2\u08a1\u0003\u0002\u0002\u0002\u08a2\u08a3\u0003\u0002\u0002",
- "\u0002\u08a3\u08a5\u0003\u0002\u0002\u0002\u08a4\u089b\u0003\u0002\u0002",
- "\u0002\u08a4\u08a5\u0003\u0002\u0002\u0002\u08a5\u08b2\u0003\u0002\u0002",
- "\u0002\u08a6\u08a7\u0007\u00ba\u0002\u0002\u08a7\u08ad\u0007\u032a\u0002",
- "\u0002\u08a8\u08aa\u0007f\u0002\u0002\u08a9\u08a8\u0003\u0002\u0002",
- "\u0002\u08a9\u08aa\u0003\u0002\u0002\u0002\u08aa\u08ab\u0003\u0002\u0002",
- "\u0002\u08ab\u08ae\u0005\u03c6\u01e4\u0002\u08ac\u08ae\u0007\r\u0002",
- "\u0002\u08ad\u08a9\u0003\u0002\u0002\u0002\u08ad\u08ac\u0003\u0002\u0002",
- "\u0002\u08ae\u08b0\u0003\u0002\u0002\u0002\u08af\u08b1\u0007\u033e\u0002",
- "\u0002\u08b0\u08af\u0003\u0002\u0002\u0002\u08b0\u08b1\u0003\u0002\u0002",
- "\u0002\u08b1\u08b3\u0003\u0002\u0002\u0002\u08b2\u08a6\u0003\u0002\u0002",
- "\u0002\u08b2\u08b3\u0003\u0002\u0002\u0002\u08b3\u08bd\u0003\u0002\u0002",
- "\u0002\u08b4\u08b5\u0007\u02a8\u0002\u0002\u08b5\u08b8\u0007\u032a\u0002",
- "\u0002\u08b6\u08b9\u0007\u0326\u0002\u0002\u08b7\u08b9\u0007\r\u0002",
- "\u0002\u08b8\u08b6\u0003\u0002\u0002\u0002\u08b8\u08b7\u0003\u0002\u0002",
- "\u0002\u08b9\u08bb\u0003\u0002\u0002\u0002\u08ba\u08bc\u0007\u033e\u0002",
- "\u0002\u08bb\u08ba\u0003\u0002\u0002\u0002\u08bb\u08bc\u0003\u0002\u0002",
- "\u0002\u08bc\u08be\u0003\u0002\u0002\u0002\u08bd\u08b4\u0003\u0002\u0002",
- "\u0002\u08bd\u08be\u0003\u0002\u0002\u0002\u08be\u08c5\u0003\u0002\u0002",
- "\u0002\u08bf\u08c0\u0007\u028b\u0002\u0002\u08c0\u08c3\u0007\u032a\u0002",
- "\u0002\u08c1\u08c4\u0007\u0322\u0002\u0002\u08c2\u08c4\u0007Y\u0002",
- "\u0002\u08c3\u08c1\u0003\u0002\u0002\u0002\u08c3\u08c2\u0003\u0002\u0002",
- "\u0002\u08c4\u08c6\u0003\u0002\u0002\u0002\u08c5\u08bf\u0003\u0002\u0002",
- "\u0002\u08c5\u08c6\u0003\u0002\u0002\u0002\u08c6\u08c7\u0003\u0002\u0002",
- "\u0002\u08c7\u08c8\u0007\u033d\u0002\u0002\u08c8\u00a5\u0003\u0002\u0002",
- "\u0002\u08c9\u08ca\u0007g\u0002\u0002\u08ca\u08cb\u0007\u01a8\u0002",
- "\u0002\u08cb\u08cc\u0007\u028a\u0002\u0002\u08cc\u08cd\u0005\u03c6\u01e4",
- "\u0002\u08cd\u00a7\u0003\u0002\u0002\u0002\u08ce\u08cf\u0007\n\u0002",
- "\u0002\u08cf\u08d0\u0007+\u0002\u0002\u08d0\u08f8\u0005\u03c6\u01e4",
- "\u0002\u08d1\u08d2\u0007\u02a9\u0002\u0002\u08d2\u08f9\u0007\u028d\u0002",
- "\u0002\u08d3\u08d4\u0007\u0179\u0002\u0002\u08d4\u08d5\u0007\u028c\u0002",
- "\u0002\u08d5\u08d6\u0007\u00ac\u0002\u0002\u08d6\u08ed\u0007\u033c\u0002",
- "\u0002\u08d7\u08d8\u0007\u0081\u0002\u0002\u08d8\u08d9\u0007\u032a\u0002",
- "\u0002\u08d9\u08db\u0007\u0326\u0002\u0002\u08da\u08dc\u0007\u033e\u0002",
- "\u0002\u08db\u08da\u0003\u0002\u0002\u0002\u08db\u08dc\u0003\u0002\u0002",
- "\u0002\u08dc\u08ee\u0003\u0002\u0002\u0002\u08dd\u08de\u0007\u01d1\u0002",
- "\u0002\u08de\u08df\u0007&\u0002\u0002\u08df\u08e0\u0007\u00f4\u0002",
- "\u0002\u08e0\u08e1\u0007\u032a\u0002\u0002\u08e1\u08e3\u0007\u0326\u0002",
- "\u0002\u08e2\u08e4\u0007\u033e\u0002\u0002\u08e3\u08e2\u0003\u0002\u0002",
- "\u0002\u08e3\u08e4\u0003\u0002\u0002\u0002\u08e4\u08ee\u0003\u0002\u0002",
- "\u0002\u08e5\u08e6\u0007\u01ec\u0002\u0002\u08e6\u08e7\u0007&\u0002",
- "\u0002\u08e7\u08e8\u0007\u00f4\u0002\u0002\u08e8\u08e9\u0007\u032a\u0002",
- "\u0002\u08e9\u08eb\u0007\u0326\u0002\u0002\u08ea\u08ec\u0007\u033e\u0002",
- "\u0002\u08eb\u08ea\u0003\u0002\u0002\u0002\u08eb\u08ec\u0003\u0002\u0002",
- "\u0002\u08ec\u08ee\u0003\u0002\u0002\u0002\u08ed\u08d7\u0003\u0002\u0002",
- "\u0002\u08ed\u08dd\u0003\u0002\u0002\u0002\u08ed\u08e5\u0003\u0002\u0002",
- "\u0002\u08ee\u08ef\u0003\u0002\u0002\u0002\u08ef\u08ed\u0003\u0002\u0002",
- "\u0002\u08ef\u08f0\u0003\u0002\u0002\u0002\u08f0\u08f1\u0003\u0002\u0002",
- "\u0002\u08f1\u08f9\u0007\u033d\u0002\u0002\u08f2\u08f3\u0007\u0179\u0002",
- "\u0002\u08f3\u08f4\u0007\u0182\u0002\u0002\u08f4\u08f5\u0007\u0085\u0002",
- "\u0002\u08f5\u08f6\u0007\u01a2\u0002\u0002\u08f6\u08f7\u0007\u032a\u0002",
- "\u0002\u08f7\u08f9\t\t\u0002\u0002\u08f8\u08d1\u0003\u0002\u0002\u0002",
- "\u08f8\u08d3\u0003\u0002\u0002\u0002\u08f8\u08f2\u0003\u0002\u0002\u0002",
- "\u08f9\u00a9\u0003\u0002\u0002\u0002\u08fa\u08fb\u0007\n\u0002\u0002",
- "\u08fb\u08fc\u00078\u0002\u0002\u08fc\u08fd\u0007\u01ec\u0002\u0002",
- "\u08fd\u08fe\u0007\u00ac\u0002\u0002\u08fe\u08ff\u0005\u03c6\u01e4\u0002",
- "\u08ff\u0900\t\u0015\u0002\u0002\u0900\u0901\u0007\u030b\u0002\u0002",
- "\u0901\u0902\u0007\u033c\u0002\u0002\u0902\u0903\u0007\u01b6\u0002\u0002",
- "\u0903\u0904\u0007\u032a\u0002\u0002\u0904\u090d\u0005\u03c6\u01e4\u0002",
- "\u0905\u0906\u0007\u033e\u0002\u0002\u0906\u0907\u0007\u018a\u0002\u0002",
- "\u0907\u0908\u0007\u032a\u0002\u0002\u0908\u0909\u0007\u0326\u0002\u0002",
- "\u0909\u090a\u0007\u033e\u0002\u0002\u090a\u090b\u0007\u01eb\u0002\u0002",
- "\u090b\u090c\u0007\u032a\u0002\u0002\u090c\u090e\u0007\u0327\u0002\u0002",
- "\u090d\u0905\u0003\u0002\u0002\u0002\u090d\u090e\u0003\u0002\u0002\u0002",
- "\u090e\u090f\u0003\u0002\u0002\u0002\u090f\u0910\u0007\u033d\u0002\u0002",
- "\u0910\u00ab\u0003\u0002\u0002\u0002\u0911\u0912\u0007I\u0002\u0002",
- "\u0912\u0913\u00078\u0002\u0002\u0913\u0914\u0007\u01ec\u0002\u0002",
- "\u0914\u0915\u0007\u00ac\u0002\u0002\u0915\u0916\u0005\u03c6\u01e4\u0002",
- "\u0916\u0917\u0007\u0179\u0002\u0002\u0917\u092b\u0007\u016f\u0002\u0002",
- "\u0918\u091a\u0007\u033c\u0002\u0002\u0919\u091b\u0007\u033e\u0002\u0002",
- "\u091a\u0919\u0003\u0002\u0002\u0002\u091a\u091b\u0003\u0002\u0002\u0002",
- "\u091b\u091c\u0003\u0002\u0002\u0002\u091c\u091d\u0007\u01b6\u0002\u0002",
- "\u091d\u091e\u0007\u032a\u0002\u0002\u091e\u091f\u0005\u03c6\u01e4\u0002",
- "\u091f\u0920\u0007\u033e\u0002\u0002\u0920\u0921\u0007\u018a\u0002\u0002",
- "\u0921\u0922\u0007\u032a\u0002\u0002\u0922\u0923\u0007\u0326\u0002\u0002",
- "\u0923\u0924\u0007\u033e\u0002\u0002\u0924\u0925\u0007\u01eb\u0002\u0002",
- "\u0925\u0926\u0007\u032a\u0002\u0002\u0926\u0927\u0007\u0327\u0002\u0002",
- "\u0927\u0929\u0007\u033d\u0002\u0002\u0928\u092a\u0007\u033e\u0002\u0002",
- "\u0929\u0928\u0003\u0002\u0002\u0002\u0929\u092a\u0003\u0002\u0002\u0002",
- "\u092a\u092c\u0003\u0002\u0002\u0002\u092b\u0918\u0003\u0002\u0002\u0002",
- "\u092c\u092d\u0003\u0002\u0002\u0002\u092d\u092b\u0003\u0002\u0002\u0002",
- "\u092d\u092e\u0003\u0002\u0002\u0002\u092e\u00ad\u0003\u0002\u0002\u0002",
- "\u092f\u0930\u0007g\u0002\u0002\u0930\u0931\u0007+\u0002\u0002\u0931",
- "\u0932\u0005\u03c6\u01e4\u0002\u0932\u00af\u0003\u0002\u0002\u0002\u0933",
- "\u0934\u0007g\u0002\u0002\u0934\u0935\u00078\u0002\u0002\u0935\u0936",
- "\u0007\u01ec\u0002\u0002\u0936\u0937\u0007\u00ac\u0002\u0002\u0937\u0938",
- "\u0005\u03c6\u01e4\u0002\u0938\u00b1\u0003\u0002\u0002\u0002\u0939\u093a",
- "\u0007g\u0002\u0002\u093a\u093b\u00078\u0002\u0002\u093b\u093c\u0007",
- "\u00bd\u0002\u0002\u093c\u093d\u0007\u00ac\u0002\u0002\u093d\u093e\u0005",
- "\u03c6\u01e4\u0002\u093e\u00b3\u0003\u0002\u0002\u0002\u093f\u0940\u0007",
- "g\u0002\u0002\u0940\u0941\u0007D\u0002\u0002\u0941\u0942\u0005\u03c6",
- "\u01e4\u0002\u0942\u00b5\u0003\u0002\u0002\u0002\u0943\u0944\u0007g",
- "\u0002\u0002\u0944\u0945\u0007\u01c4\u0002\u0002\u0945\u0946\u0005\u03c6",
- "\u01e4\u0002\u0946\u00b7\u0003\u0002\u0002\u0002\u0947\u0948\u0007g",
- "\u0002\u0002\u0948\u0949\u0007\u01c5\u0002\u0002\u0949\u094a\u0007\u0291",
- "\u0002\u0002\u094a\u094b\u0005\u03c6\u01e4\u0002\u094b\u00b9\u0003\u0002",
- "\u0002\u0002\u094c\u094d\u0007g\u0002\u0002\u094d\u0950\u0007T\u0002",
- "\u0002\u094e\u094f\u0007\u0099\u0002\u0002\u094f\u0951\u0007w\u0002",
- "\u0002\u0950\u094e\u0003\u0002\u0002\u0002\u0950\u0951\u0003\u0002\u0002",
- "\u0002\u0951\u0956\u0003\u0002\u0002\u0002\u0952\u0954\u0007\u033e\u0002",
- "\u0002\u0953\u0952\u0003\u0002\u0002\u0002\u0953\u0954\u0003\u0002\u0002",
- "\u0002\u0954\u0955\u0003\u0002\u0002\u0002\u0955\u0957\u0005\u03c6\u01e4",
- "\u0002\u0956\u0953\u0003\u0002\u0002\u0002\u0957\u0958\u0003\u0002\u0002",
- "\u0002\u0958\u0956\u0003\u0002\u0002\u0002\u0958\u0959\u0003\u0002\u0002",
- "\u0002\u0959\u00bb\u0003\u0002\u0002\u0002\u095a\u095b\u0007g\u0002",
- "\u0002\u095b\u095c\u0007T\u0002\u0002\u095c\u095d\u0007\u0196\u0002",
- "\u0002\u095d\u095e\u0007\u0143\u0002\u0002\u095e\u095f\u0005\u03c6\u01e4",
- "\u0002\u095f\u00bd\u0003\u0002\u0002\u0002\u0960\u0961\u0007g\u0002",
- "\u0002\u0961\u0962\u0007T\u0002\u0002\u0962\u0963\u0007\u02bf\u0002",
- "\u0002\u0963\u0964\u0007\u01c4\u0002\u0002\u0964\u0965\u0005\u03c6\u01e4",
- "\u0002\u0965\u00bf\u0003\u0002\u0002\u0002\u0966\u0967\u0007g\u0002",
- "\u0002\u0967\u096a\u0007Y\u0002\u0002\u0968\u0969\u0007\u0099\u0002",
- "\u0002\u0969\u096b\u0007w\u0002\u0002\u096a\u0968\u0003\u0002\u0002",
- "\u0002\u096a\u096b\u0003\u0002\u0002\u0002\u096b\u096d\u0003\u0002\u0002",
- "\u0002\u096c\u096e\u0007\u033e\u0002\u0002\u096d\u096c\u0003\u0002\u0002",
- "\u0002\u096d\u096e\u0003\u0002\u0002\u0002\u096e\u0972\u0003\u0002\u0002",
- "\u0002\u096f\u0970\u0005\u03c6\u01e4\u0002\u0970\u0971\u0007\u0337\u0002",
- "\u0002\u0971\u0973\u0003\u0002\u0002\u0002\u0972\u096f\u0003\u0002\u0002",
- "\u0002\u0972\u0973\u0003\u0002\u0002\u0002\u0973\u0974\u0003\u0002\u0002",
- "\u0002\u0974\u0975\u0005\u03c6\u01e4\u0002\u0975\u00c1\u0003\u0002\u0002",
- "\u0002\u0976\u0977\u0007g\u0002\u0002\u0977\u0978\u0007m\u0002\u0002",
- "\u0978\u0979\u0005\u03c6\u01e4\u0002\u0979\u00c3\u0003\u0002\u0002\u0002",
- "\u097a\u097b\u0007g\u0002\u0002\u097b\u097c\u0007{\u0002\u0002\u097c",
- "\u097d\u0007\u01c8\u0002\u0002\u097d\u097e\u0007\u0142\u0002\u0002\u097e",
- "\u097f\u0005\u03c6\u01e4\u0002\u097f\u00c5\u0003\u0002\u0002\u0002\u0980",
- "\u0981\u0007g\u0002\u0002\u0981\u0982\u0007{\u0002\u0002\u0982\u0983",
- "\u0007\u0081\u0002\u0002\u0983\u0984\u0007\u0206\u0002\u0002\u0984\u0985",
- "\u0005\u03c6\u01e4\u0002\u0985\u00c7\u0003\u0002\u0002\u0002\u0986\u0987",
- "\u0007g\u0002\u0002\u0987\u0988\u0007{\u0002\u0002\u0988\u0989\u0007",
- "\u00b2\u0002\u0002\u0989\u098c\u0005\u03c6\u01e4\u0002\u098a\u098b\u0007",
- "\u0014\u0002\u0002\u098b\u098d\u0005\u03c6\u01e4\u0002\u098c\u098a\u0003",
- "\u0002\u0002\u0002\u098c\u098d\u0003\u0002\u0002\u0002\u098d\u00c9\u0003",
- "\u0002\u0002\u0002\u098e\u098f\u0007g\u0002\u0002\u098f\u0990\u0007",
- "{\u0002\u0002\u0990\u0991\u0007\u02b2\u0002\u0002\u0991\u0992\u0007",
- "\u0285\u0002\u0002\u0992\u0993\u0005\u03c6\u01e4\u0002\u0993\u00cb\u0003",
- "\u0002\u0002\u0002\u0994\u0995\u0007g\u0002\u0002\u0995\u0996\u0007",
- "{\u0002\u0002\u0996\u099a\u0007\u0153\u0002\u0002\u0997\u0998\u0005",
- "\u03c6\u01e4\u0002\u0998\u0999\u0007\u0337\u0002\u0002\u0999\u099b\u0003",
- "\u0002\u0002\u0002\u099a\u0997\u0003\u0002\u0002\u0002\u099a\u099b\u0003",
- "\u0002\u0002\u0002\u099b\u099f\u0003\u0002\u0002\u0002\u099c\u099d\u0005",
- "\u03c6\u01e4\u0002\u099d\u099e\u0007\u0337\u0002\u0002\u099e\u09a0\u0003",
- "\u0002\u0002\u0002\u099f\u099c\u0003\u0002\u0002\u0002\u099f\u09a0\u0003",
- "\u0002\u0002\u0002\u09a0\u09a1\u0003\u0002\u0002\u0002\u09a1\u09a2\u0005",
- "\u03c6\u01e4\u0002\u09a2\u00cd\u0003\u0002\u0002\u0002\u09a3\u09a4\u0007",
- "g\u0002\u0002\u09a4\u09a5\u0007q\u0002\u0002\u09a5\u09aa\u0007\u00dd",
- "\u0002\u0002\u09a6\u09a8\u0007\u033e\u0002\u0002\u09a7\u09a6\u0003\u0002",
- "\u0002\u0002\u09a7\u09a8\u0003\u0002\u0002\u0002\u09a8\u09a9\u0003\u0002",
- "\u0002\u0002\u09a9\u09ab\u0005\u03c6\u01e4\u0002\u09aa\u09a7\u0003\u0002",
- "\u0002\u0002\u09ab\u09ac\u0003\u0002\u0002\u0002\u09ac\u09aa\u0003\u0002",
- "\u0002\u0002\u09ac\u09ad\u0003\u0002\u0002\u0002\u09ad\u09ae\u0003\u0002",
- "\u0002\u0002\u09ae\u09b3\u0007\u00e5\u0002\u0002\u09af\u09b4\u0007\u0135",
- "\u0002\u0002\u09b0\u09b4\u0007T\u0002\u0002\u09b1\u09b2\u0007\u0294",
- "\u0002\u0002\u09b2\u09b4\u0005\u03c6\u01e4\u0002\u09b3\u09af\u0003\u0002",
- "\u0002\u0002\u09b3\u09b0\u0003\u0002\u0002\u0002\u09b3\u09b1\u0003\u0002",
- "\u0002\u0002\u09b4\u00cf\u0003\u0002\u0002\u0002\u09b5\u09b6\u0007g",
- "\u0002\u0002\u09b6\u09b7\u0007q\u0002\u0002\u09b7\u09b8\u0007\u0139",
- "\u0002\u0002\u09b8\u09b9\u0005\u03c6\u01e4\u0002\u09b9\u09ba\u0007\u00e5",
- "\u0002\u0002\u09ba\u09bb\u0007\u0135\u0002\u0002\u09bb\u00d1\u0003\u0002",
- "\u0002\u0002\u09bc\u09bd\u0007g\u0002\u0002\u09bd\u09be\u0007\u0209",
- "\u0002\u0002\u09be\u09bf\u0007\u01ae\u0002\u0002\u09bf\u09c0\u0005\u03c6",
- "\u01e4\u0002\u09c0\u00d3\u0003\u0002\u0002\u0002\u09c1\u09c2\u0007g",
- "\u0002\u0002\u09c2\u09c3\u0007\u0209\u0002\u0002\u09c3\u09c4\u0007\u009e",
- "\u0002\u0002\u09c4\u09c8\u0007\u00e5\u0002\u0002\u09c5\u09c6\u0005\u03c6",
- "\u01e4\u0002\u09c6\u09c7\u0007\u0337\u0002\u0002\u09c7\u09c9\u0003\u0002",
- "\u0002\u0002\u09c8\u09c5\u0003\u0002\u0002\u0002\u09c8\u09c9\u0003\u0002",
- "\u0002\u0002\u09c9\u09ca\u0003\u0002\u0002\u0002\u09ca\u09cb\u0005\u03c6",
- "\u01e4\u0002\u09cb\u00d5\u0003\u0002\u0002\u0002\u09cc\u09cd\u0007g",
- "\u0002\u0002\u09cd\u09ce\u0007\u0209\u0002\u0002\u09ce\u09cf\u0007\u02e4",
- "\u0002\u0002\u09cf\u09d0\u0005\u03c6\u01e4\u0002\u09d0\u00d7\u0003\u0002",
- "\u0002\u0002\u09d1\u09d2\u0007g\u0002\u0002\u09d2\u09d3\u0007\u023b",
- "\u0002\u0002\u09d3\u09d4\u0005\u03c6\u01e4\u0002\u09d4\u00d9\u0003\u0002",
- "\u0002\u0002\u09d5\u09d6\u0007g\u0002\u0002\u09d6\u09d7\u0007\u00bd",
- "\u0002\u0002\u09d7\u09d8\u0007\u00ac\u0002\u0002\u09d8\u00db\u0003\u0002",
- "\u0002\u0002\u09d9\u09da\u0007g\u0002\u0002\u09da\u09db\u0007\u0250",
- "\u0002\u0002\u09db\u09dc\u0007\u0301\u0002\u0002\u09dc\u09dd\u0005\u03c6",
- "\u01e4\u0002\u09dd\u00dd\u0003\u0002\u0002\u0002\u09de\u09df\u0007g",
- "\u0002\u0002\u09df\u09e0\u0007\u0280\u0002\u0002\u09e0\u09e1\u0007\u008d",
- "\u0002\u0002\u09e1\u09e2\u0005\u03c6\u01e4\u0002\u09e2\u00df\u0003\u0002",
- "\u0002\u0002\u09e3\u09e4\u0007g\u0002\u0002\u09e4\u09e5\u0007\u0280",
- "\u0002\u0002\u09e5\u09e6\u0007\u012f\u0002\u0002\u09e6\u09e7\u0005\u03c6",
- "\u01e4\u0002\u09e7\u00e1\u0003\u0002\u0002\u0002\u09e8\u09e9\u0007g",
- "\u0002\u0002\u09e9\u09ed\u0007\u0294\u0002\u0002\u09ea\u09eb\u0005\u03c6",
- "\u01e4\u0002\u09eb\u09ec\u0007\u0337\u0002\u0002\u09ec\u09ee\u0003\u0002",
- "\u0002\u0002\u09ed\u09ea\u0003\u0002\u0002\u0002\u09ed\u09ee\u0003\u0002",
- "\u0002\u0002\u09ee\u09f2\u0003\u0002\u0002\u0002\u09ef\u09f0\u0005\u03c6",
- "\u01e4\u0002\u09f0\u09f1\u0007\u0337\u0002\u0002\u09f1\u09f3\u0003\u0002",
- "\u0002\u0002\u09f2\u09ef\u0003\u0002\u0002\u0002\u09f2\u09f3\u0003\u0002",
- "\u0002\u0002\u09f3\u09f4\u0003\u0002\u0002\u0002\u09f4\u09f5\u0005\u03c6",
- "\u01e4\u0002\u09f5\u00e3\u0003\u0002\u0002\u0002\u09f6\u09f7\u0007g",
- "\u0002\u0002\u09f7\u09f8\u0007\u02a7\u0002\u0002\u09f8\u09f9\u0007\u0136",
- "\u0002\u0002\u09f9\u09fa\u0007\u01a6\u0002\u0002\u09fa\u09fb\u0005\u03c6",
- "\u01e4\u0002\u09fb\u00e5\u0003\u0002\u0002\u0002\u09fc\u09fd\u0007g",
- "\u0002\u0002\u09fd\u09fe\u0007\u02b2\u0002\u0002\u09fe\u09ff\u0007\u0285",
- "\u0002\u0002\u09ff\u0a00\u0005\u03c6\u01e4\u0002\u0a00\u00e7\u0003\u0002",
- "\u0002\u0002\u0a01\u0a02\u0007g\u0002\u0002\u0a02\u0a05\u0007\u0121",
- "\u0002\u0002\u0a03\u0a04\u0007\u0099\u0002\u0002\u0a04\u0a06\u0007w",
- "\u0002\u0002\u0a05\u0a03\u0003\u0002\u0002\u0002\u0a05\u0a06\u0003\u0002",
- "\u0002\u0002\u0a06\u0a07\u0003\u0002\u0002\u0002\u0a07\u0a08\u0005\u03c6",
- "\u01e4\u0002\u0a08\u00e9\u0003\u0002\u0002\u0002\u0a09\u0a0a\u0007g",
- "\u0002\u0002\u0a0a\u0a0b\u0007\u02b8\u0002\u0002\u0a0b\u0a0c\u0005\u03c6",
- "\u01e4\u0002\u0a0c\u00eb\u0003\u0002\u0002\u0002\u0a0d\u0a0e\u0007g",
- "\u0002\u0002\u0a0e\u0a11\u0007\u012a\u0002\u0002\u0a0f\u0a10\u0007\u0099",
- "\u0002\u0002\u0a10\u0a12\u0007w\u0002\u0002\u0a11\u0a0f\u0003\u0002",
- "\u0002\u0002\u0a11\u0a12\u0003\u0002\u0002\u0002\u0a12\u0a1c\u0003\u0002",
- "\u0002\u0002\u0a13\u0a15\u0007\u033e\u0002\u0002\u0a14\u0a13\u0003\u0002",
- "\u0002\u0002\u0a14\u0a15\u0003\u0002\u0002\u0002\u0a15\u0a19\u0003\u0002",
- "\u0002\u0002\u0a16\u0a17\u0005\u03c6\u01e4\u0002\u0a17\u0a18\u0007\u0337",
- "\u0002\u0002\u0a18\u0a1a\u0003\u0002\u0002\u0002\u0a19\u0a16\u0003\u0002",
- "\u0002\u0002\u0a19\u0a1a\u0003\u0002\u0002\u0002\u0a1a\u0a1b\u0003\u0002",
- "\u0002\u0002\u0a1b\u0a1d\u0005\u03c6\u01e4\u0002\u0a1c\u0a14\u0003\u0002",
- "\u0002\u0002\u0a1c\u0a1d\u0003\u0002\u0002\u0002\u0a1d\u00ed\u0003\u0002",
- "\u0002\u0002\u0a1e\u0a1f\u0007g\u0002\u0002\u0a1f\u0a22\u0007\u012e",
- "\u0002\u0002\u0a20\u0a21\u0007\u0099\u0002\u0002\u0a21\u0a23\u0007w",
- "\u0002\u0002\u0a22\u0a20\u0003\u0002\u0002\u0002\u0a22\u0a23\u0003\u0002",
- "\u0002\u0002\u0a23\u0a24\u0003\u0002\u0002\u0002\u0a24\u0a25\u0005\u03c6",
- "\u01e4\u0002\u0a25\u00ef\u0003\u0002\u0002\u0002\u0a26\u0a27\u0007g",
- "\u0002\u0002\u0a27\u0a28\u0007\u02c2\u0002\u0002\u0a28\u0a29\u0007\u0290",
- "\u0002\u0002\u0a29\u0a2a\u0007\u0233\u0002\u0002\u0a2a\u0a2b\u0005\u03c6",
- "\u01e4\u0002\u0a2b\u00f1\u0003\u0002\u0002\u0002\u0a2c\u0a2d\u0007g",
- "\u0002\u0002\u0a2d\u0a2e\u0007\u02c8\u0002\u0002\u0a2e\u0a31\u0007\u00fd",
- "\u0002\u0002\u0a2f\u0a30\u0007\u0099\u0002\u0002\u0a30\u0a32\u0007w",
- "\u0002\u0002\u0a31\u0a2f\u0003\u0002\u0002\u0002\u0a31\u0a32\u0003\u0002",
- "\u0002\u0002\u0a32\u0a36\u0003\u0002\u0002\u0002\u0a33\u0a34\u0005\u03c6",
- "\u01e4\u0002\u0a34\u0a35\u0007\u0337\u0002\u0002\u0a35\u0a37\u0003\u0002",
- "\u0002\u0002\u0a36\u0a33\u0003\u0002\u0002\u0002\u0a36\u0a37\u0003\u0002",
- "\u0002\u0002\u0a37\u0a38\u0003\u0002\u0002\u0002\u0a38\u0a39\u0005\u03c6",
- "\u01e4\u0002\u0a39\u00f3\u0003\u0002\u0002\u0002\u0a3a\u0a3b\u0007g",
- "\u0002\u0002\u0a3b\u0a3e\u0007\u02cf\u0002\u0002\u0a3c\u0a3d\u0007\u0099",
- "\u0002\u0002\u0a3d\u0a3f\u0007w\u0002\u0002\u0a3e\u0a3c\u0003\u0002",
- "\u0002\u0002\u0a3e\u0a3f\u0003\u0002\u0002\u0002\u0a3f\u0a4e\u0003\u0002",
- "\u0002\u0002\u0a40\u0a42\u0007\u033e\u0002\u0002\u0a41\u0a40\u0003\u0002",
- "\u0002\u0002\u0a41\u0a42\u0003\u0002\u0002\u0002\u0a42\u0a46\u0003\u0002",
- "\u0002\u0002\u0a43\u0a44\u0005\u03c6\u01e4\u0002\u0a44\u0a45\u0007\u0337",
- "\u0002\u0002\u0a45\u0a47\u0003\u0002\u0002\u0002\u0a46\u0a43\u0003\u0002",
- "\u0002\u0002\u0a46\u0a47\u0003\u0002\u0002\u0002\u0a47\u0a4b\u0003\u0002",
- "\u0002\u0002\u0a48\u0a49\u0005\u03c6\u01e4\u0002\u0a49\u0a4a\u0007\u0337",
- "\u0002\u0002\u0a4a\u0a4c\u0003\u0002\u0002\u0002\u0a4b\u0a48\u0003\u0002",
- "\u0002\u0002\u0a4b\u0a4c\u0003\u0002\u0002\u0002\u0a4c\u0a4d\u0003\u0002",
- "\u0002\u0002\u0a4d\u0a4f\u0005\u03c6\u01e4\u0002\u0a4e\u0a41\u0003\u0002",
- "\u0002\u0002\u0a4e\u0a4f\u0003\u0002\u0002\u0002\u0a4f\u00f5\u0003\u0002",
- "\u0002\u0002\u0a50\u0a51\u0007g\u0002\u0002\u0a51\u0a52\u0007\u0135",
- "\u0002\u0002\u0a52\u0a53\u0007\u0196\u0002\u0002\u0a53\u0a54\u0005\u03c6",
- "\u01e4\u0002\u0a54\u00f7\u0003\u0002\u0002\u0002\u0a55\u0a56\u0007g",
- "\u0002\u0002\u0a56\u0a57\u0007\u0135\u0002\u0002\u0a57\u0a58\u0007\u0196",
- "\u0002\u0002\u0a58\u0a59\u0007\u0143\u0002\u0002\u0a59\u0a5a\u0005\u03c6",
- "\u01e4\u0002\u0a5a\u00f9\u0003\u0002\u0002\u0002\u0a5b\u0a5c\u0007g",
- "\u0002\u0002\u0a5c\u0a5d\u0007\u0135\u0002\u0002\u0a5d\u0a5e\u0007\u0121",
- "\u0002\u0002\u0a5e\u0a5f\u0005\u03c6\u01e4\u0002\u0a5f\u00fb\u0003\u0002",
- "\u0002\u0002\u0a60\u0a61\u0007g\u0002\u0002\u0a61\u0a62\u0007\u0136",
- "\u0002\u0002\u0a62\u0a63\u0005\u03c6\u01e4\u0002\u0a63\u00fd\u0003\u0002",
- "\u0002\u0002\u0a64\u0a66\u0007g\u0002\u0002\u0a65\u0a67\u0007\u01c0",
- "\u0002\u0002\u0a66\u0a65\u0003\u0002\u0002\u0002\u0a66\u0a67\u0003\u0002",
- "\u0002\u0002\u0a67\u0a68\u0003\u0002\u0002\u0002\u0a68\u0a69\u0007\u02d5",
- "\u0002\u0002\u0a69\u0a6d\u0007\u008b\u0002\u0002\u0a6a\u0a6b\u0005\u03c6",
- "\u01e4\u0002\u0a6b\u0a6c\u0007\u0337\u0002\u0002\u0a6c\u0a6e\u0003\u0002",
- "\u0002\u0002\u0a6d\u0a6a\u0003\u0002\u0002\u0002\u0a6d\u0a6e\u0003\u0002",
- "\u0002\u0002\u0a6e\u0a6f\u0003\u0002\u0002\u0002\u0a6f\u0a70\u0005\u03c6",
- "\u01e4\u0002\u0a70\u0a7c\u0007&\u0002\u0002\u0a71\u0a73\u0007\u033e",
- "\u0002\u0002\u0a72\u0a71\u0003\u0002\u0002\u0002\u0a72\u0a73\u0003\u0002",
- "\u0002\u0002\u0a73\u0a74\u0003\u0002\u0002\u0002\u0a74\u0a75\u0007+",
- "\u0002\u0002\u0a75\u0a7d\u0005\u03c6\u01e4\u0002\u0a76\u0a78\u0007\u033e",
- "\u0002\u0002\u0a77\u0a76\u0003\u0002\u0002\u0002\u0a77\u0a78\u0003\u0002",
- "\u0002\u0002\u0a78\u0a79\u0003\u0002\u0002\u0002\u0a79\u0a7a\u0007\u0012",
- "\u0002\u0002\u0a7a\u0a7b\u0007\u00ac\u0002\u0002\u0a7b\u0a7d\u0005\u03c6",
- "\u01e4\u0002\u0a7c\u0a72\u0003\u0002\u0002\u0002\u0a7c\u0a77\u0003\u0002",
- "\u0002\u0002\u0a7d\u0a7e\u0003\u0002\u0002\u0002\u0a7e\u0a7c\u0003\u0002",
- "\u0002\u0002\u0a7e\u0a7f\u0003\u0002\u0002\u0002\u0a7f\u00ff\u0003\u0002",
- "\u0002\u0002\u0a80\u0a81\u0007g\u0002\u0002\u0a81\u0a85\u0007\u0148",
- "\u0002\u0002\u0a82\u0a83\u0005\u03c6\u01e4\u0002\u0a83\u0a84\u0007\u0337",
- "\u0002\u0002\u0a84\u0a86\u0003\u0002\u0002\u0002\u0a85\u0a82\u0003\u0002",
- "\u0002\u0002\u0a85\u0a86\u0003\u0002\u0002\u0002\u0a86\u0a87\u0003\u0002",
- "\u0002\u0002\u0a87\u0a88\u0005\u03c6\u01e4\u0002\u0a88\u0a89\u0007\u0337",
- "\u0002\u0002\u0a89\u0a8a\u0005\u03c6\u01e4\u0002\u0a8a\u0101\u0003\u0002",
- "\u0002\u0002\u0a8b\u0a8c\u0007g\u0002\u0002\u0a8c\u0a8d\u0007\u02eb",
- "\u0002\u0002\u0a8d\u0a8e\u0007\u00ac\u0002\u0002\u0a8e\u0a92\u0005\u03c6",
- "\u01e4\u0002\u0a8f\u0a90\u0007\u02a9\u0002\u0002\u0a90\u0a91\u0007\u0291",
- "\u0002\u0002\u0a91\u0a93\u0007\u00ac\u0002\u0002\u0a92\u0a8f\u0003\u0002",
- "\u0002\u0002\u0a92\u0a93\u0003\u0002\u0002\u0002\u0a93\u0103\u0003\u0002",
- "\u0002\u0002\u0a94\u0a95\u0007g\u0002\u0002\u0a95\u0a98\u0007\u02ed",
- "\u0002\u0002\u0a96\u0a97\u0007\u0099\u0002\u0002\u0a97\u0a99\u0007w",
- "\u0002\u0002\u0a98\u0a96\u0003\u0002\u0002\u0002\u0a98\u0a99\u0003\u0002",
- "\u0002\u0002\u0a99\u0a9d\u0003\u0002\u0002\u0002\u0a9a\u0a9b\u0005\u03c6",
- "\u01e4\u0002\u0a9b\u0a9c\u0007\u0337\u0002\u0002\u0a9c\u0a9e\u0003\u0002",
- "\u0002\u0002\u0a9d\u0a9a\u0003\u0002\u0002\u0002\u0a9d\u0a9e\u0003\u0002",
- "\u0002\u0002\u0a9e\u0a9f\u0003\u0002\u0002\u0002\u0a9f\u0aa0\u0005\u03c6",
- "\u01e4\u0002\u0aa0\u0105\u0003\u0002\u0002\u0002\u0aa1\u0aa2\u0007g",
- "\u0002\u0002\u0aa2\u0aa5\u0007\u016e\u0002\u0002\u0aa3\u0aa4\u0007\u0099",
- "\u0002\u0002\u0aa4\u0aa6\u0007w\u0002\u0002\u0aa5\u0aa3\u0003\u0002",
- "\u0002\u0002\u0aa5\u0aa6\u0003\u0002\u0002\u0002\u0aa6\u0aa7\u0003\u0002",
- "\u0002\u0002\u0aa7\u0aa8\u0005\u03c6\u01e4\u0002\u0aa8\u0107\u0003\u0002",
- "\u0002\u0002\u0aa9\u0aaa\u0007g\u0002\u0002\u0aaa\u0aab\u0007\u0314",
- "\u0002\u0002\u0aab\u0aac\u0007\u0092\u0002\u0002\u0aac\u0aad\u0005\u03c6",
- "\u01e4\u0002\u0aad\u0109\u0003\u0002\u0002\u0002\u0aae\u0aaf\u0007g",
- "\u0002\u0002\u0aaf\u0ab0\u0007\u0315\u0002\u0002\u0ab0\u0ab1\u0007\u012e",
- "\u0002\u0002\u0ab1\u0ab5\u0007\u01b5\u0002\u0002\u0ab2\u0ab3\u0005\u03c6",
- "\u01e4\u0002\u0ab3\u0ab4\u0007\u0337\u0002\u0002\u0ab4\u0ab6\u0003\u0002",
- "\u0002\u0002\u0ab5\u0ab2\u0003\u0002\u0002\u0002\u0ab5\u0ab6\u0003\u0002",
- "\u0002\u0002\u0ab6\u0ab7\u0003\u0002\u0002\u0002\u0ab7\u0ab8\u0005\u03c6",
- "\u01e4\u0002\u0ab8\u010b\u0003\u0002\u0002\u0002\u0ab9\u0aba\u0007\u01e0",
- "\u0002\u0002\u0aba\u0ac9\u0007\u0160\u0002\u0002\u0abb\u0abd\u0007\u033e",
- "\u0002\u0002\u0abc\u0abb\u0003\u0002\u0002\u0002\u0abc\u0abd\u0003\u0002",
- "\u0002\u0002\u0abd\u0ac1\u0003\u0002\u0002\u0002\u0abe\u0abf\u0005\u03c6",
- "\u01e4\u0002\u0abf\u0ac0\u0007\u0337\u0002\u0002\u0ac0\u0ac2\u0003\u0002",
- "\u0002\u0002\u0ac1\u0abe\u0003\u0002\u0002\u0002\u0ac1\u0ac2\u0003\u0002",
- "\u0002\u0002\u0ac2\u0ac3\u0003\u0002\u0002\u0002\u0ac3\u0ac5\u0005\u03c6",
- "\u01e4\u0002\u0ac4\u0abc\u0003\u0002\u0002\u0002\u0ac5\u0ac6\u0003\u0002",
- "\u0002\u0002\u0ac6\u0ac4\u0003\u0002\u0002\u0002\u0ac6\u0ac7\u0003\u0002",
- "\u0002\u0002\u0ac7\u0aca\u0003\u0002\u0002\u0002\u0ac8\u0aca\u0007\u0006",
- "\u0002\u0002\u0ac9\u0ac4\u0003\u0002\u0002\u0002\u0ac9\u0ac8\u0003\u0002",
- "\u0002\u0002\u0aca\u0acb\u0003\u0002\u0002\u0002\u0acb\u0ad5\u0007\u00e5",
- "\u0002\u0002\u0acc\u0acd\u0005\u03c6\u01e4\u0002\u0acd\u0ace\u0007\u0337",
- "\u0002\u0002\u0ace\u0ad0\u0003\u0002\u0002\u0002\u0acf\u0acc\u0003\u0002",
- "\u0002\u0002\u0acf\u0ad0\u0003\u0002\u0002\u0002\u0ad0\u0ad1\u0003\u0002",
- "\u0002\u0002\u0ad1\u0ad6\u0005\u03c6\u01e4\u0002\u0ad2\u0ad6\u0007T",
- "\u0002\u0002\u0ad3\u0ad4\u0007\u0006\u0002\u0002\u0ad4\u0ad6\u0007\u0135",
- "\u0002\u0002\u0ad5\u0acf\u0003\u0002\u0002\u0002\u0ad5\u0ad2\u0003\u0002",
- "\u0002\u0002\u0ad5\u0ad3\u0003\u0002\u0002\u0002\u0ad6\u010d\u0003\u0002",
- "\u0002\u0002\u0ad7\u0ad8\u0007\u01e9\u0002\u0002\u0ad8\u0ae7\u0007\u0160",
- "\u0002\u0002\u0ad9\u0adb\u0007\u033e\u0002\u0002\u0ada\u0ad9\u0003\u0002",
- "\u0002\u0002\u0ada\u0adb\u0003\u0002\u0002\u0002\u0adb\u0adf\u0003\u0002",
- "\u0002\u0002\u0adc\u0add\u0005\u03c6\u01e4\u0002\u0add\u0ade\u0007\u0337",
- "\u0002\u0002\u0ade\u0ae0\u0003\u0002\u0002\u0002\u0adf\u0adc\u0003\u0002",
- "\u0002\u0002\u0adf\u0ae0\u0003\u0002\u0002\u0002\u0ae0\u0ae1\u0003\u0002",
- "\u0002\u0002\u0ae1\u0ae3\u0005\u03c6\u01e4\u0002\u0ae2\u0ada\u0003\u0002",
- "\u0002\u0002\u0ae3\u0ae4\u0003\u0002\u0002\u0002\u0ae4\u0ae2\u0003\u0002",
- "\u0002\u0002\u0ae4\u0ae5\u0003\u0002\u0002\u0002\u0ae5\u0ae8\u0003\u0002",
- "\u0002\u0002\u0ae6\u0ae8\u0007\u0006\u0002\u0002\u0ae7\u0ae2\u0003\u0002",
- "\u0002\u0002\u0ae7\u0ae6\u0003\u0002\u0002\u0002\u0ae8\u0ae9\u0003\u0002",
- "\u0002\u0002\u0ae9\u0af3\u0007\u00e5\u0002\u0002\u0aea\u0aeb\u0005\u03c6",
- "\u01e4\u0002\u0aeb\u0aec\u0007\u0337\u0002\u0002\u0aec\u0aee\u0003\u0002",
- "\u0002\u0002\u0aed\u0aea\u0003\u0002\u0002\u0002\u0aed\u0aee\u0003\u0002",
- "\u0002\u0002\u0aee\u0aef\u0003\u0002\u0002\u0002\u0aef\u0af4\u0005\u03c6",
- "\u01e4\u0002\u0af0\u0af4\u0007T\u0002\u0002\u0af1\u0af2\u0007\u0006",
- "\u0002\u0002\u0af2\u0af4\u0007\u0135\u0002\u0002\u0af3\u0aed\u0003\u0002",
- "\u0002\u0002\u0af3\u0af0\u0003\u0002\u0002\u0002\u0af3\u0af1\u0003\u0002",
- "\u0002\u0002\u0af4\u010f\u0003\u0002\u0002\u0002\u0af5\u0af6\u0007\u0239",
- "\u0002\u0002\u0af6\u0af7\u0007\u0153\u0002\u0002\u0af7\u0af8\u0005\u038e",
- "\u01c8\u0002\u0af8\u0af9\u0007\u009b\u0002\u0002\u0af9\u0afa\t\u0016",
- "\u0002\u0002\u0afa\u0afe\u0007\u0259\u0002\u0002\u0afb\u0afc\u0007\u0310",
- "\u0002\u0002\u0afc\u0aff\u0007\u0322\u0002\u0002\u0afd\u0aff\u0007\u026c",
- "\u0002\u0002\u0afe\u0afb\u0003\u0002\u0002\u0002\u0afe\u0afd\u0003\u0002",
- "\u0002\u0002\u0afe\u0aff\u0003\u0002\u0002\u0002\u0aff\u0b01\u0003\u0002",
- "\u0002\u0002\u0b00\u0b02\u0007\u033f\u0002\u0002\u0b01\u0b00\u0003\u0002",
- "\u0002\u0002\u0b01\u0b02\u0003\u0002\u0002\u0002\u0b02\u0111\u0003\u0002",
- "\u0002\u0002\u0b03\u0b04\u0007\u0161\u0002\u0002\u0b04\u0b05\u0007\u0153",
- "\u0002\u0002\u0b05\u0b19\u0005\u038e\u01c8\u0002\u0b06\u0b07\u0007\u0179",
- "\u0002\u0002\u0b07\u0b08\u0007\u033c\u0002\u0002\u0b08\u0b09\u0007\u0281",
- "\u0002\u0002\u0b09\u0b13\u0007\u033c\u0002\u0002\u0b0a\u0b0c\u0007\u033e",
- "\u0002\u0002\u0b0b\u0b0a\u0003\u0002\u0002\u0002\u0b0b\u0b0c\u0003\u0002",
- "\u0002\u0002\u0b0c\u0b11\u0003\u0002\u0002\u0002\u0b0d\u0b12\u0007\u0322",
- "\u0002\u0002\u0b0e\u0b0f\u0007\u0322\u0002\u0002\u0b0f\u0b10\u0007\u015a",
- "\u0002\u0002\u0b10\u0b12\u0007\u0322\u0002\u0002\u0b11\u0b0d\u0003\u0002",
- "\u0002\u0002\u0b11\u0b0e\u0003\u0002\u0002\u0002\u0b12\u0b14\u0003\u0002",
- "\u0002\u0002\u0b13\u0b0b\u0003\u0002\u0002\u0002\u0b14\u0b15\u0003\u0002",
- "\u0002\u0002\u0b15\u0b13\u0003\u0002\u0002\u0002\u0b15\u0b16\u0003\u0002",
- "\u0002\u0002\u0b16\u0b17\u0003\u0002\u0002\u0002\u0b17\u0b18\u0007\u033d",
- "\u0002\u0002\u0b18\u0b1a\u0007\u033d\u0002\u0002\u0b19\u0b06\u0003\u0002",
- "\u0002\u0002\u0b19\u0b1a\u0003\u0002\u0002\u0002\u0b1a\u0113\u0003\u0002",
- "\u0002\u0002\u0b1b\u0b1c\u0007I\u0002\u0002\u0b1c\u0b1d\u00078\u0002",
- "\u0002\u0b1d\u0b1e\u0007\u00bd\u0002\u0002\u0b1e\u0b1f\u0007\u00ac\u0002",
- "\u0002\u0b1f\u0b20\u0005\u03c6\u01e4\u0002\u0b20\u0b21\u0007\u0179\u0002",
- "\u0002\u0b21\u0b22\u0007\u033c\u0002\u0002\u0b22\u0b23\u0007\u00ae\u0002",
- "\u0002\u0b23\u0b24\u0007\u032a\u0002\u0002\u0b24\u0b25\u0007\u0326\u0002",
- "\u0002\u0b25\u0b26\u0007\u033e\u0002\u0002\u0b26\u0b27\u0007\u00ad\u0002",
- "\u0002\u0b27\u0b28\u0007\u032a\u0002\u0002\u0b28\u0b29\u0007\u0326\u0002",
- "\u0002\u0b29\u0b2a\u0007\u033d\u0002\u0002\u0b2a\u0115\u0003\u0002\u0002",
- "\u0002\u0b2b\u0b2c\u0007\n\u0002\u0002\u0b2c\u0b2d\u0007\u01c4\u0002",
- "\u0002\u0b2d\u0b2e\u0005\u03c6\u01e4\u0002\u0b2e\u0b2f\u0007\u0179\u0002",
- "\u0002\u0b2f\u0b30\u0007\u0096\u0002\u0002\u0b30\u0b31\u0007\u032a\u0002",
- "\u0002\u0b31\u0b36\u0007\u0326\u0002\u0002\u0b32\u0b33\u0007\u033e\u0002",
- "\u0002\u0b33\u0b34\u0007\u02c7\u0002\u0002\u0b34\u0b35\u0007\u032a\u0002",
- "\u0002\u0b35\u0b37\u0007\u0326\u0002\u0002\u0b36\u0b32\u0003\u0002\u0002",
- "\u0002\u0b36\u0b37\u0003\u0002\u0002\u0002\u0b37\u0117\u0003\u0002\u0002",
- "\u0002\u0b38\u0b39\u0007I\u0002\u0002\u0b39\u0b3a\u0007\u01c4\u0002",
- "\u0002\u0b3a\u0b3b\u0005\u03c6\u01e4\u0002\u0b3b\u0b3c\u0007\u0179\u0002",
- "\u0002\u0b3c\u0b3d\u0007\u0096\u0002\u0002\u0b3d\u0b3e\u0007\u032a\u0002",
- "\u0002\u0b3e\u0b43\u0007\u0326\u0002\u0002\u0b3f\u0b40\u0007\u033e\u0002",
- "\u0002\u0b40\u0b41\u0007\u02c7\u0002\u0002\u0b41\u0b42\u0007\u032a\u0002",
- "\u0002\u0b42\u0b44\u0007\u0326\u0002\u0002\u0b43\u0b3f\u0003\u0002\u0002",
- "\u0002\u0b43\u0b44\u0003\u0002\u0002\u0002\u0b44\u0b49\u0003\u0002\u0002",
- "\u0002\u0b45\u0b46\u0007\u0085\u0002\u0002\u0b46\u0b47\u0007\u01c5\u0002",
- "\u0002\u0b47\u0b48\u0007\u0291\u0002\u0002\u0b48\u0b4a\u0005\u03c6\u01e4",
- "\u0002\u0b49\u0b45\u0003\u0002\u0002\u0002\u0b49\u0b4a\u0003\u0002\u0002",
- "\u0002\u0b4a\u0119\u0003\u0002\u0002\u0002\u0b4b\u0b4c\u0007\n\u0002",
- "\u0002\u0b4c\u0b4d\u0007\u01c5\u0002\u0002\u0b4d\u0b4e\u0007\u0291\u0002",
- "\u0002\u0b4e\u0b53\u0005\u03c6\u01e4\u0002\u0b4f\u0b50\u0007\u008b\u0002",
- "\u0002\u0b50\u0b51\u0007\u0081\u0002\u0002\u0b51\u0b52\u0007\u032a\u0002",
- "\u0002\u0b52\u0b54\u0007\u0326\u0002\u0002\u0b53\u0b4f\u0003\u0002\u0002",
- "\u0002\u0b53\u0b54\u0003\u0002\u0002\u0002\u0b54\u0b56\u0003\u0002\u0002",
- "\u0002\u0b55\u0b57\t\u0017\u0002\u0002\u0b56\u0b55\u0003\u0002\u0002",
- "\u0002\u0b56\u0b57\u0003\u0002\u0002\u0002\u0b57\u011b\u0003\u0002\u0002",
- "\u0002\u0b58\u0b59\u0007I\u0002\u0002\u0b59\u0b5a\u0007\u01c5\u0002",
- "\u0002\u0b5a\u0b5b\u0007\u0291\u0002\u0002\u0b5b\u0b5c\u0005\u03c6\u01e4",
- "\u0002\u0b5c\u0b5d\u0007\u008b\u0002\u0002\u0b5d\u0b5e\u0007\u0081\u0002",
- "\u0002\u0b5e\u0b5f\u0007\u032a\u0002\u0002\u0b5f\u0b60\u0007\u0326\u0002",
- "\u0002\u0b60\u011d\u0003\u0002\u0002\u0002\u0b61\u0b62\u0007I\u0002",
- "\u0002\u0b62\u0b63\u0007q\u0002\u0002\u0b63\u0b64\u0007\u00dd\u0002",
- "\u0002\u0b64\u0b65\u0005\u03c6\u01e4\u0002\u0b65\u0b6a\u0007\u00e5\u0002",
- "\u0002\u0b66\u0b6b\u0007\u0135\u0002\u0002\u0b67\u0b6b\u0007T\u0002",
- "\u0002\u0b68\u0b69\u0007\u0294\u0002\u0002\u0b69\u0b6b\u0005\u03c6\u01e4",
- "\u0002\u0b6a\u0b66\u0003\u0002\u0002\u0002\u0b6a\u0b67\u0003\u0002\u0002",
- "\u0002\u0b6a\u0b68\u0003\u0002\u0002\u0002\u0b6b\u0b6e\u0003\u0002\u0002",
- "\u0002\u0b6c\u0b6d\u0007\u0179\u0002\u0002\u0b6d\u0b6f\u0007\u007f\u0002",
- "\u0002\u0b6e\u0b6c\u0003\u0002\u0002\u0002\u0b6e\u0b6f\u0003\u0002\u0002",
- "\u0002\u0b6f\u0b70\u0003\u0002\u0002\u0002\u0b70\u0b75\u0007\u0085\u0002",
- "\u0002\u0b71\u0b73\u0007\u033e\u0002\u0002\u0b72\u0b71\u0003\u0002\u0002",
- "\u0002\u0b72\u0b73\u0003\u0002\u0002\u0002\u0b73\u0b74\u0003\u0002\u0002",
- "\u0002\u0b74\u0b76\u0005\u03c6\u01e4\u0002\u0b75\u0b72\u0003\u0002\u0002",
- "\u0002\u0b76\u0b77\u0003\u0002\u0002\u0002\u0b77\u0b75\u0003\u0002\u0002",
- "\u0002\u0b77\u0b78\u0003\u0002\u0002\u0002\u0b78\u0b79\u0003\u0002\u0002",
- "\u0002\u0b79\u0b7a\u0007\u015a\u0002\u0002\u0b7a\u0b7b\u0007\u0136\u0002",
- "\u0002\u0b7b\u0b7c\u0007\u0326\u0002\u0002\u0b7c\u0b7d\u0007\u033e\u0002",
- "\u0002\u0b7d\u0b7e\u0007\u0326\u0002\u0002\u0b7e\u011f\u0003\u0002\u0002",
- "\u0002\u0b7f\u0b80\t\u0014\u0002\u0002\u0b80\u0b81\u0007q\u0002\u0002",
- "\u0b81\u0b82\u0007\u0139\u0002\u0002\u0b82\u0b83\u0005\u03c6\u01e4\u0002",
- "\u0b83\u0b84\u0007\u00e5\u0002\u0002\u0b84\u0bc8\u0007\u0135\u0002\u0002",
- "\u0b85\u0b87\u0007\u033e\u0002\u0002\u0b86\u0b85\u0003\u0002\u0002\u0002",
- "\u0b86\u0b87\u0003\u0002\u0002\u0002\u0b87\u0b88\u0003\u0002\u0002\u0002",
- "\u0b88\u0b89\u0007\u0004\u0002\u0002\u0b89\u0b8d\u0007q\u0002\u0002",
- "\u0b8a\u0b8b\u0005\u03c6\u01e4\u0002\u0b8b\u0b8c\u0007\u0337\u0002\u0002",
- "\u0b8c\u0b8e\u0003\u0002\u0002\u0002\u0b8d\u0b8a\u0003\u0002\u0002\u0002",
- "\u0b8d\u0b8e\u0003\u0002\u0002\u0002\u0b8e\u0b8f\u0003\u0002\u0002\u0002",
- "\u0b8f\u0b90\u0005\u03c6\u01e4\u0002\u0b90\u0b91\u0007\u0337\u0002\u0002",
- "\u0b91\u0b92\u0005\u03c6\u01e4\u0002\u0b92\u0bc3\u0003\u0002\u0002\u0002",
- "\u0b93\u0ba1\u0007\u033c\u0002\u0002\u0b94\u0b9e\u0007\u013b\u0002\u0002",
- "\u0b95\u0b97\u0007\u033e\u0002\u0002\u0b96\u0b95\u0003\u0002\u0002\u0002",
- "\u0b96\u0b97\u0003\u0002\u0002\u0002\u0b97\u0b98\u0003\u0002\u0002\u0002",
- "\u0b98\u0b99\u0005\u03c6\u01e4\u0002\u0b99\u0b9a\u0007\u032a\u0002\u0002",
- "\u0b9a\u0b9b\t\u0018\u0002\u0002\u0b9b\u0b9d\u0003\u0002\u0002\u0002",
- "\u0b9c\u0b96\u0003\u0002\u0002\u0002\u0b9d\u0ba0\u0003\u0002\u0002\u0002",
- "\u0b9e\u0b9c\u0003\u0002\u0002\u0002\u0b9e\u0b9f\u0003\u0002\u0002\u0002",
- "\u0b9f\u0ba2\u0003\u0002\u0002\u0002\u0ba0\u0b9e\u0003\u0002\u0002\u0002",
- "\u0ba1\u0b94\u0003\u0002\u0002\u0002\u0ba1\u0ba2\u0003\u0002\u0002\u0002",
- "\u0ba2\u0bb7\u0003\u0002\u0002\u0002\u0ba3\u0ba4\u0007\u0180\u0002\u0002",
- "\u0ba4\u0bb1\u0007\u033c\u0002\u0002\u0ba5\u0ba7\u0007\u033e\u0002\u0002",
- "\u0ba6\u0ba5\u0003\u0002\u0002\u0002\u0ba6\u0ba7\u0003\u0002\u0002\u0002",
- "\u0ba7\u0bab\u0003\u0002\u0002\u0002\u0ba8\u0ba9\u0005\u03c6\u01e4\u0002",
- "\u0ba9\u0baa\u0007\u0337\u0002\u0002\u0baa\u0bac\u0003\u0002\u0002\u0002",
- "\u0bab\u0ba8\u0003\u0002\u0002\u0002\u0bab\u0bac\u0003\u0002\u0002\u0002",
- "\u0bac\u0bad\u0003\u0002\u0002\u0002\u0bad\u0bae\u0005\u03c6\u01e4\u0002",
- "\u0bae\u0baf\u0007\u0337\u0002\u0002\u0baf\u0bb0\u0005\u03c6\u01e4\u0002",
- "\u0bb0\u0bb2\u0003\u0002\u0002\u0002\u0bb1\u0ba6\u0003\u0002\u0002\u0002",
- "\u0bb2\u0bb3\u0003\u0002\u0002\u0002\u0bb3\u0bb1\u0003\u0002\u0002\u0002",
- "\u0bb3\u0bb4\u0003\u0002\u0002\u0002\u0bb4\u0bb5\u0003\u0002\u0002\u0002",
- "\u0bb5\u0bb6\u0007\u033d\u0002\u0002\u0bb6\u0bb8\u0003\u0002\u0002\u0002",
- "\u0bb7\u0ba3\u0003\u0002\u0002\u0002\u0bb8\u0bb9\u0003\u0002\u0002\u0002",
- "\u0bb9\u0bb7\u0003\u0002\u0002\u0002\u0bb9\u0bba\u0003\u0002\u0002\u0002",
- "\u0bba\u0bbd\u0003\u0002\u0002\u0002\u0bbb\u0bbc\u0007\u0176\u0002\u0002",
- "\u0bbc\u0bbe\u0005\u0122\u0092\u0002\u0bbd\u0bbb\u0003\u0002\u0002\u0002",
- "\u0bbd\u0bbe\u0003\u0002\u0002\u0002\u0bbe\u0bbf\u0003\u0002\u0002\u0002",
- "\u0bbf\u0bc0\u0007\u033d\u0002\u0002\u0bc0\u0bc2\u0003\u0002\u0002\u0002",
- "\u0bc1\u0b93\u0003\u0002\u0002\u0002\u0bc2\u0bc5\u0003\u0002\u0002\u0002",
- "\u0bc3\u0bc1\u0003\u0002\u0002\u0002\u0bc3\u0bc4\u0003\u0002\u0002\u0002",
- "\u0bc4\u0bc7\u0003\u0002\u0002\u0002\u0bc5\u0bc3\u0003\u0002\u0002\u0002",
- "\u0bc6\u0b86\u0003\u0002\u0002\u0002\u0bc7\u0bca\u0003\u0002\u0002\u0002",
- "\u0bc8\u0bc6\u0003\u0002\u0002\u0002\u0bc8\u0bc9\u0003\u0002\u0002\u0002",
- "\u0bc9\u0bdb\u0003\u0002\u0002\u0002\u0bca\u0bc8\u0003\u0002\u0002\u0002",
- "\u0bcb\u0bcd\u0007\u033e\u0002\u0002\u0bcc\u0bcb\u0003\u0002\u0002\u0002",
- "\u0bcc\u0bcd\u0003\u0002\u0002\u0002\u0bcd\u0bce\u0003\u0002\u0002\u0002",
- "\u0bce\u0bcf\u0007g\u0002\u0002\u0bcf\u0bd3\u0007q\u0002\u0002\u0bd0",
- "\u0bd1\u0005\u03c6\u01e4\u0002\u0bd1\u0bd2\u0007\u0337\u0002\u0002\u0bd2",
- "\u0bd4\u0003\u0002\u0002\u0002\u0bd3\u0bd0\u0003\u0002\u0002\u0002\u0bd3",
- "\u0bd4\u0003\u0002\u0002\u0002\u0bd4\u0bd5\u0003\u0002\u0002\u0002\u0bd5",
- "\u0bd6\u0005\u03c6\u01e4\u0002\u0bd6\u0bd7\u0007\u0337\u0002\u0002\u0bd7",
- "\u0bd8\u0005\u03c6\u01e4\u0002\u0bd8\u0bda\u0003\u0002\u0002\u0002\u0bd9",
- "\u0bcc\u0003\u0002\u0002\u0002\u0bda\u0bdd\u0003\u0002\u0002\u0002\u0bdb",
- "\u0bd9\u0003\u0002\u0002\u0002\u0bdb\u0bdc\u0003\u0002\u0002\u0002\u0bdc",
- "\u0c07\u0003\u0002\u0002\u0002\u0bdd\u0bdb\u0003\u0002\u0002\u0002\u0bde",
- "\u0bdf\u0007\u0004\u0002\u0002\u0bdf\u0be3\u0007\u0156\u0002\u0002\u0be0",
- "\u0be1\u0005\u03c6\u01e4\u0002\u0be1\u0be2\u0007\u0337\u0002\u0002\u0be2",
- "\u0be4\u0003\u0002\u0002\u0002\u0be3\u0be0\u0003\u0002\u0002\u0002\u0be3",
- "\u0be4\u0003\u0002\u0002\u0002\u0be4\u0be5\u0003\u0002\u0002\u0002\u0be5",
- "\u0be6\u0005\u03c6\u01e4\u0002\u0be6\u0be7\u0007\u0337\u0002\u0002\u0be7",
- "\u0be8\u0005\u03c6\u01e4\u0002\u0be8\u0c02\u0003\u0002\u0002\u0002\u0be9",
- "\u0bea\u0007\u033c\u0002\u0002\u0bea\u0bfa\u0007\u013b\u0002\u0002\u0beb",
- "\u0bed\u0007\u033e\u0002\u0002\u0bec\u0beb\u0003\u0002\u0002\u0002\u0bec",
- "\u0bed\u0003\u0002\u0002\u0002\u0bed\u0bee\u0003\u0002\u0002\u0002\u0bee",
- "\u0bef\u0005\u03c6\u01e4\u0002\u0bef\u0bf8\u0007\u032a\u0002\u0002\u0bf0",
- "\u0bf2\u0007\u033c\u0002\u0002\u0bf1\u0bf0\u0003\u0002\u0002\u0002\u0bf1",
- "\u0bf2\u0003\u0002\u0002\u0002\u0bf2\u0bf3\u0003\u0002\u0002\u0002\u0bf3",
- "\u0bf5\u0007\u0322\u0002\u0002\u0bf4\u0bf6\u0007\u033d\u0002\u0002\u0bf5",
- "\u0bf4\u0003\u0002\u0002\u0002\u0bf5\u0bf6\u0003\u0002\u0002\u0002\u0bf6",
- "\u0bf9\u0003\u0002\u0002\u0002\u0bf7\u0bf9\u0007\u0326\u0002\u0002\u0bf8",
- "\u0bf1\u0003\u0002\u0002\u0002\u0bf8\u0bf7\u0003\u0002\u0002\u0002\u0bf9",
- "\u0bfb\u0003\u0002\u0002\u0002\u0bfa\u0bec\u0003\u0002\u0002\u0002\u0bfb",
- "\u0bfc\u0003\u0002\u0002\u0002\u0bfc\u0bfa\u0003\u0002\u0002\u0002\u0bfc",
- "\u0bfd\u0003\u0002\u0002\u0002\u0bfd\u0bfe\u0003\u0002\u0002\u0002\u0bfe",
- "\u0bff\u0007\u033d\u0002\u0002\u0bff\u0c01\u0003\u0002\u0002\u0002\u0c00",
- "\u0be9\u0003\u0002\u0002\u0002\u0c01\u0c04\u0003\u0002\u0002\u0002\u0c02",
- "\u0c00\u0003\u0002\u0002\u0002\u0c02\u0c03\u0003\u0002\u0002\u0002\u0c03",
- "\u0c06\u0003\u0002\u0002\u0002\u0c04\u0c02\u0003\u0002\u0002\u0002\u0c05",
- "\u0bde\u0003\u0002\u0002\u0002\u0c06\u0c09\u0003\u0002\u0002\u0002\u0c07",
- "\u0c05\u0003\u0002\u0002\u0002\u0c07\u0c08\u0003\u0002\u0002\u0002\u0c08",
- "\u0c17\u0003\u0002\u0002\u0002\u0c09\u0c07\u0003\u0002\u0002\u0002\u0c0a",
- "\u0c0b\u0007g\u0002\u0002\u0c0b\u0c0f\u0007\u0156\u0002\u0002\u0c0c",
- "\u0c0d\u0005\u03c6\u01e4\u0002\u0c0d\u0c0e\u0007\u0337\u0002\u0002\u0c0e",
- "\u0c10\u0003\u0002\u0002\u0002\u0c0f\u0c0c\u0003\u0002\u0002\u0002\u0c0f",
- "\u0c10\u0003\u0002\u0002\u0002\u0c10\u0c11\u0003\u0002\u0002\u0002\u0c11",
- "\u0c12\u0005\u03c6\u01e4\u0002\u0c12\u0c13\u0007\u0337\u0002\u0002\u0c13",
- "\u0c14\u0005\u03c6\u01e4\u0002\u0c14\u0c16\u0003\u0002\u0002\u0002\u0c15",
- "\u0c0a\u0003\u0002\u0002\u0002\u0c16\u0c19\u0003\u0002\u0002\u0002\u0c17",
- "\u0c15\u0003\u0002\u0002\u0002\u0c17\u0c18\u0003\u0002\u0002\u0002\u0c18",
- "\u0c5b\u0003\u0002\u0002\u0002\u0c19\u0c17\u0003\u0002\u0002\u0002\u0c1a",
- "\u0c1b\u0007\u0179\u0002\u0002\u0c1b\u0c23\u0007\u033c\u0002\u0002\u0c1c",
- "\u0c1e\u0007\u033e\u0002\u0002\u0c1d\u0c1c\u0003\u0002\u0002\u0002\u0c1d",
- "\u0c1e\u0003\u0002\u0002\u0002\u0c1e\u0c1f\u0003\u0002\u0002\u0002\u0c1f",
- "\u0c20\u0007\u00be\u0002\u0002\u0c20\u0c21\u0007\u032a\u0002\u0002\u0c21",
- "\u0c22\u0007\u0322\u0002\u0002\u0c22\u0c24\t\u0019\u0002\u0002\u0c23",
- "\u0c1d\u0003\u0002\u0002\u0002\u0c23\u0c24\u0003\u0002\u0002\u0002\u0c24",
- "\u0c2b\u0003\u0002\u0002\u0002\u0c25\u0c27\u0007\u033e\u0002\u0002\u0c26",
- "\u0c25\u0003\u0002\u0002\u0002\u0c26\u0c27\u0003\u0002\u0002\u0002\u0c27",
- "\u0c28\u0003\u0002\u0002\u0002\u0c28\u0c29\u0007s\u0002\u0002\u0c29",
- "\u0c2a\u0007\u032a\u0002\u0002\u0c2a\u0c2c\t\u001a\u0002\u0002\u0c2b",
- "\u0c26\u0003\u0002\u0002\u0002\u0c2b\u0c2c\u0003\u0002\u0002\u0002\u0c2c",
- "\u0c37\u0003\u0002\u0002\u0002\u0c2d\u0c2f\u0007\u033e\u0002\u0002\u0c2e",
- "\u0c2d\u0003\u0002\u0002\u0002\u0c2e\u0c2f\u0003\u0002\u0002\u0002\u0c2f",
- "\u0c30\u0003\u0002\u0002\u0002\u0c30\u0c31\u0007\u00c1\u0002\u0002\u0c31",
- "\u0c35\u0007\u032a\u0002\u0002\u0c32\u0c33\u0007\u0322\u0002\u0002\u0c33",
- "\u0c36\u0007\u02c6\u0002\u0002\u0c34\u0c36\u0007\u009f\u0002\u0002\u0c35",
- "\u0c32\u0003\u0002\u0002\u0002\u0c35\u0c34\u0003\u0002\u0002\u0002\u0c36",
- "\u0c38\u0003\u0002\u0002\u0002\u0c37\u0c2e\u0003\u0002\u0002\u0002\u0c37",
- "\u0c38\u0003\u0002\u0002\u0002\u0c38\u0c40\u0003\u0002\u0002\u0002\u0c39",
- "\u0c3b\u0007\u033e\u0002\u0002\u0c3a\u0c39\u0003\u0002\u0002\u0002\u0c3a",
- "\u0c3b\u0003\u0002\u0002\u0002\u0c3b\u0c3c\u0003\u0002\u0002\u0002\u0c3c",
- "\u0c3d\u0007\u00c2\u0002\u0002\u0c3d\u0c3e\u0007\u032a\u0002\u0002\u0c3e",
- "\u0c3f\u0007\u0322\u0002\u0002\u0c3f\u0c41\t\u0019\u0002\u0002\u0c40",
- "\u0c3a\u0003\u0002\u0002\u0002\u0c40\u0c41\u0003\u0002\u0002\u0002\u0c41",
- "\u0c48\u0003\u0002\u0002\u0002\u0c42\u0c44\u0007\u033e\u0002\u0002\u0c43",
- "\u0c42\u0003\u0002\u0002\u0002\u0c43\u0c44\u0003\u0002\u0002\u0002\u0c44",
- "\u0c45\u0003\u0002\u0002\u0002\u0c45\u0c46\u0007\u00c8\u0002\u0002\u0c46",
- "\u0c47\u0007\u032a\u0002\u0002\u0c47\u0c49\t\u001b\u0002\u0002\u0c48",
- "\u0c43\u0003\u0002\u0002\u0002\u0c48\u0c49\u0003\u0002\u0002\u0002\u0c49",
- "\u0c50\u0003\u0002\u0002\u0002\u0c4a\u0c4c\u0007\u033e\u0002\u0002\u0c4b",
- "\u0c4a\u0003\u0002\u0002\u0002\u0c4b\u0c4c\u0003\u0002\u0002\u0002\u0c4c",
- "\u0c4d\u0003\u0002\u0002\u0002\u0c4d\u0c4e\u0007\u015c\u0002\u0002\u0c4e",
- "\u0c4f\u0007\u032a\u0002\u0002\u0c4f\u0c51\t\t\u0002\u0002\u0c50\u0c4b",
- "\u0003\u0002\u0002\u0002\u0c50\u0c51\u0003\u0002\u0002\u0002\u0c51\u0c58",
- "\u0003\u0002\u0002\u0002\u0c52\u0c54\u0007\u033e\u0002\u0002\u0c53\u0c52",
- "\u0003\u0002\u0002\u0002\u0c53\u0c54\u0003\u0002\u0002\u0002\u0c54\u0c55",
- "\u0003\u0002\u0002\u0002\u0c55\u0c56\u0007\u014d\u0002\u0002\u0c56\u0c57",
- "\u0007\u032a\u0002\u0002\u0c57\u0c59\t\t\u0002\u0002\u0c58\u0c53\u0003",
- "\u0002\u0002\u0002\u0c58\u0c59\u0003\u0002\u0002\u0002\u0c59\u0c5a\u0003",
- "\u0002\u0002\u0002\u0c5a\u0c5c\u0007\u033d\u0002\u0002\u0c5b\u0c1a\u0003",
- "\u0002\u0002\u0002\u0c5b\u0c5c\u0003\u0002\u0002\u0002\u0c5c\u0c60\u0003",
- "\u0002\u0002\u0002\u0c5d\u0c5e\u0007\u0149\u0002\u0002\u0c5e\u0c5f\u0007",
- "\u032a\u0002\u0002\u0c5f\u0c61\t\u001c\u0002\u0002\u0c60\u0c5d\u0003",
- "\u0002\u0002\u0002\u0c60\u0c61\u0003\u0002\u0002\u0002\u0c61\u0121\u0003",
- "\u0002\u0002\u0002\u0c62\u0c64\u0007\u033e\u0002\u0002\u0c63\u0c62\u0003",
- "\u0002\u0002\u0002\u0c63\u0c64\u0003\u0002\u0002\u0002\u0c64\u0c66\u0003",
- "\u0002\u0002\u0002\u0c65\u0c67\t\u001d\u0002\u0002\u0c66\u0c65\u0003",
- "\u0002\u0002\u0002\u0c66\u0c67\u0003\u0002\u0002\u0002\u0c67\u0c69\u0003",
- "\u0002\u0002\u0002\u0c68\u0c6a\u0007\u00dc\u0002\u0002\u0c69\u0c68\u0003",
- "\u0002\u0002\u0002\u0c69\u0c6a\u0003\u0002\u0002\u0002\u0c6a\u0c70\u0003",
- "\u0002\u0002\u0002\u0c6b\u0c71\u0005\u0124\u0093\u0002\u0c6c\u0c6d\u0007",
- "\u033c\u0002\u0002\u0c6d\u0c6e\u0005\u0122\u0092\u0002\u0c6e\u0c6f\u0007",
- "\u033d\u0002\u0002\u0c6f\u0c71\u0003\u0002\u0002\u0002\u0c70\u0c6b\u0003",
- "\u0002\u0002\u0002\u0c70\u0c6c\u0003\u0002\u0002\u0002\u0c71\u0c73\u0003",
- "\u0002\u0002\u0002\u0c72\u0c63\u0003\u0002\u0002\u0002\u0c73\u0c74\u0003",
- "\u0002\u0002\u0002\u0c74\u0c72\u0003\u0002\u0002\u0002\u0c74\u0c75\u0003",
- "\u0002\u0002\u0002\u0c75\u0123\u0003\u0002\u0002\u0002\u0c76\u0c7c\u0005",
- "\u0126\u0094\u0002\u0c77\u0c78\u0007\u033c\u0002\u0002\u0c78\u0c79\u0005",
- "\u0122\u0092\u0002\u0c79\u0c7a\u0007\u033d\u0002\u0002\u0c7a\u0c7c\u0003",
- "\u0002\u0002\u0002\u0c7b\u0c76\u0003\u0002\u0002\u0002\u0c7b\u0c77\u0003",
- "\u0002\u0002\u0002\u0c7c\u0125\u0003\u0002\u0002\u0002\u0c7d\u0c9a\u0005",
- "\u03c6\u01e4\u0002\u0c7e\u0c89\u0005\u03c6\u01e4\u0002\u0c7f\u0c80\u0005",
- "\u03c6\u01e4\u0002\u0c80\u0c81\u0007\u0337\u0002\u0002\u0c81\u0c83\u0003",
- "\u0002\u0002\u0002\u0c82\u0c7f\u0003\u0002\u0002\u0002\u0c82\u0c83\u0003",
- "\u0002\u0002\u0002\u0c83\u0c84\u0003\u0002\u0002\u0002\u0c84\u0c85\u0005",
- "\u03c6\u01e4\u0002\u0c85\u0c86\u0007\u0337\u0002\u0002\u0c86\u0c87\u0005",
- "\u03c6\u01e4\u0002\u0c87\u0c89\u0003\u0002\u0002\u0002\u0c88\u0c7e\u0003",
- "\u0002\u0002\u0002\u0c88\u0c82\u0003\u0002\u0002\u0002\u0c89\u0c95\u0003",
- "\u0002\u0002\u0002\u0c8a\u0c96\u0007\u032a\u0002\u0002\u0c8b\u0c8c\u0007",
- "\u032c\u0002\u0002\u0c8c\u0c96\u0007\u032b\u0002\u0002\u0c8d\u0c8e\u0007",
- "\u032d\u0002\u0002\u0c8e\u0c96\u0007\u032a\u0002\u0002\u0c8f\u0c96\u0007",
- "\u032b\u0002\u0002\u0c90\u0c91\u0007\u032b\u0002\u0002\u0c91\u0c96\u0007",
- "\u032a\u0002\u0002\u0c92\u0c96\u0007\u032c\u0002\u0002\u0c93\u0c94\u0007",
- "\u032c\u0002\u0002\u0c94\u0c96\u0007\u032a\u0002\u0002\u0c95\u0c8a\u0003",
- "\u0002\u0002\u0002\u0c95\u0c8b\u0003\u0002\u0002\u0002\u0c95\u0c8d\u0003",
- "\u0002\u0002\u0002\u0c95\u0c8f\u0003\u0002\u0002\u0002\u0c95\u0c90\u0003",
- "\u0002\u0002\u0002\u0c95\u0c92\u0003\u0002\u0002\u0002\u0c95\u0c93\u0003",
- "\u0002\u0002\u0002\u0c96\u0c97\u0003\u0002\u0002\u0002\u0c97\u0c98\t",
- "\u0018\u0002\u0002\u0c98\u0c9a\u0003\u0002\u0002\u0002\u0c99\u0c7d\u0003",
- "\u0002\u0002\u0002\u0c99\u0c88\u0003\u0002\u0002\u0002\u0c9a\u0cb6\u0003",
- "\u0002\u0002\u0002\u0c9b\u0c9c\u0005\u03c6\u01e4\u0002\u0c9c\u0c9d\u0007",
- "\u0337\u0002\u0002\u0c9d\u0c9f\u0003\u0002\u0002\u0002\u0c9e\u0c9b\u0003",
- "\u0002\u0002\u0002\u0c9e\u0c9f\u0003\u0002\u0002\u0002\u0c9f\u0ca0\u0003",
- "\u0002\u0002\u0002\u0ca0\u0ca1\u0005\u03c6\u01e4\u0002\u0ca1\u0ca2\u0007",
- "\u0337\u0002\u0002\u0ca2\u0ca3\u0005\u03c6\u01e4\u0002\u0ca3\u0cb1\u0007",
- "\u033c\u0002\u0002\u0ca4\u0cb2\u0005\u03c6\u01e4\u0002\u0ca5\u0ca6\u0005",
- "\u03c6\u01e4\u0002\u0ca6\u0ca7\u0007\u0337\u0002\u0002\u0ca7\u0ca9\u0003",
- "\u0002\u0002\u0002\u0ca8\u0ca5\u0003\u0002\u0002\u0002\u0ca8\u0ca9\u0003",
- "\u0002\u0002\u0002\u0ca9\u0caa\u0003\u0002\u0002\u0002\u0caa\u0cab\u0005",
- "\u03c6\u01e4\u0002\u0cab\u0cac\u0007\u0337\u0002\u0002\u0cac\u0cad\u0005",
- "\u03c6\u01e4\u0002\u0cad\u0cae\u0003\u0002\u0002\u0002\u0cae\u0caf\u0007",
- "\u033e\u0002\u0002\u0caf\u0cb0\t\u0018\u0002\u0002\u0cb0\u0cb2\u0003",
- "\u0002\u0002\u0002\u0cb1\u0ca4\u0003\u0002\u0002\u0002\u0cb1\u0ca8\u0003",
- "\u0002\u0002\u0002\u0cb2\u0cb3\u0003\u0002\u0002\u0002\u0cb3\u0cb4\u0007",
- "\u033d\u0002\u0002\u0cb4\u0cb6\u0003\u0002\u0002\u0002\u0cb5\u0c99\u0003",
- "\u0002\u0002\u0002\u0cb5\u0c9e\u0003\u0002\u0002\u0002\u0cb6\u0127\u0003",
- "\u0002\u0002\u0002\u0cb7\u0cb8\u0007\n\u0002\u0002\u0cb8\u0cb9\u0007",
- "{\u0002\u0002\u0cb9\u0cba\u0007\u01c8\u0002\u0002\u0cba\u0cbb\u0007",
- "\u0142\u0002\u0002\u0cbb\u0cbc\u0005\u03c6\u01e4\u0002\u0cbc\u0ccc\u0007",
- "\u013b\u0002\u0002\u0cbd\u0cbe\u0007\u0238\u0002\u0002\u0cbe\u0cbf\u0007",
- "\u032a\u0002\u0002\u0cbf\u0cc1\t\u001e\u0002\u0002\u0cc0\u0cc2\u0007",
- "\u033e\u0002\u0002\u0cc1\u0cc0\u0003\u0002\u0002\u0002\u0cc1\u0cc2\u0003",
- "\u0002\u0002\u0002\u0cc2\u0ccd\u0003\u0002\u0002\u0002\u0cc3\u0cc4\u0007",
- "\u02b3\u0002\u0002\u0cc4\u0cc5\u0007\u032a\u0002\u0002\u0cc5\u0cc7\t",
- "\u001e\u0002\u0002\u0cc6\u0cc8\u0007\u033e\u0002\u0002\u0cc7\u0cc6\u0003",
- "\u0002\u0002\u0002\u0cc7\u0cc8\u0003\u0002\u0002\u0002\u0cc8\u0ccd\u0003",
- "\u0002\u0002\u0002\u0cc9\u0cca\u0007\u01c4\u0002\u0002\u0cca\u0ccb\u0007",
- "\u032a\u0002\u0002\u0ccb\u0ccd\u0005\u03c6\u01e4\u0002\u0ccc\u0cbd\u0003",
- "\u0002\u0002\u0002\u0ccc\u0cc3\u0003\u0002\u0002\u0002\u0ccc\u0cc9\u0003",
- "\u0002\u0002\u0002\u0ccd\u0cce\u0003\u0002\u0002\u0002\u0cce\u0ccc\u0003",
- "\u0002\u0002\u0002\u0cce\u0ccf\u0003\u0002\u0002\u0002\u0ccf\u0ce7\u0003",
- "\u0002\u0002\u0002\u0cd0\u0cd1\u0007\n\u0002\u0002\u0cd1\u0cd2\u0007",
- "{\u0002\u0002\u0cd2\u0cd3\u0007\u01c8\u0002\u0002\u0cd3\u0cd4\u0007",
- "\u0142\u0002\u0002\u0cd4\u0cd5\u0005\u03c6\u01e4\u0002\u0cd5\u0cd6\u0007",
- "\u0179\u0002\u0002\u0cd6\u0cd7\u0007\u033c\u0002\u0002\u0cd7\u0cd8\u0007",
- "\u0301\u0002\u0002\u0cd8\u0cd9\u0007\u032a\u0002\u0002\u0cd9\u0cda\u0007",
- "\u01a7\u0002\u0002\u0cda\u0cdb\u0007\u033e\u0002\u0002\u0cdb\u0cdc\u0007",
- "\u0238\u0002\u0002\u0cdc\u0cdd\u0007\u032a\u0002\u0002\u0cdd\u0ce2\u0007",
- "\u0326\u0002\u0002\u0cde\u0cdf\u0007\u033e\u0002\u0002\u0cdf\u0ce0\u0007",
- "\u01c4\u0002\u0002\u0ce0\u0ce1\u0007\u032a\u0002\u0002\u0ce1\u0ce3\u0005",
- "\u03c6\u01e4\u0002\u0ce2\u0cde\u0003\u0002\u0002\u0002\u0ce2\u0ce3\u0003",
- "\u0002\u0002\u0002\u0ce3\u0ce4\u0003\u0002\u0002\u0002\u0ce4\u0ce5\u0007",
- "\u033d\u0002\u0002\u0ce5\u0ce7\u0003\u0002\u0002\u0002\u0ce6\u0cb7\u0003",
- "\u0002\u0002\u0002\u0ce6\u0cd0\u0003\u0002\u0002\u0002\u0ce7\u0129\u0003",
- "\u0002\u0002\u0002\u0ce8\u0ce9\u0007\n\u0002\u0002\u0ce9\u0cea\u0007",
- "{\u0002\u0002\u0cea\u0ceb\u0007\u00b2\u0002\u0002\u0ceb\u0cee\u0005",
- "\u03c6\u01e4\u0002\u0cec\u0ced\u0007\u0014\u0002\u0002\u0ced\u0cef\u0005",
- "\u03c6\u01e4\u0002\u0cee\u0cec\u0003\u0002\u0002\u0002\u0cee\u0cef\u0003",
- "\u0002\u0002\u0002\u0cef\u0cf0\u0003\u0002\u0002\u0002\u0cf0\u0cf1\t",
- "\u001f\u0002\u0002\u0cf1\u0cf2\u0007\u033c\u0002\u0002\u0cf2\u0cf3\u0007",
- "\u01bb\u0002\u0002\u0cf3\u0cf7\u0007\u032a\u0002\u0002\u0cf4\u0cf8\u0007",
- "\u0326\u0002\u0002\u0cf5\u0cf8\u0007\u0327\u0002\u0002\u0cf6\u0cf8\u0007",
- "\u00d5\u0002\u0002\u0cf7\u0cf4\u0003\u0002\u0002\u0002\u0cf7\u0cf5\u0003",
- "\u0002\u0002\u0002\u0cf7\u0cf6\u0003\u0002\u0002\u0002\u0cf8\u0cf9\u0003",
- "\u0002\u0002\u0002\u0cf9\u0cfa\u0007\u033e\u0002\u0002\u0cfa\u0cfb\u0007",
- "\u00fc\u0002\u0002\u0cfb\u0cfd\u0007\u032a\u0002\u0002\u0cfc\u0cfe\t",
- " \u0002\u0002\u0cfd\u0cfc\u0003\u0002\u0002\u0002\u0cfd\u0cfe\u0003",
- "\u0002\u0002\u0002\u0cfe\u0cff\u0003\u0002\u0002\u0002\u0cff\u0d00\u0007",
- "\u033d\u0002\u0002\u0d00\u0d01\u0003\u0002\u0002\u0002\u0d01\u0d0b\u0007",
- "\u0179\u0002\u0002\u0d02\u0d04\u0007\u033e\u0002\u0002\u0d03\u0d02\u0003",
- "\u0002\u0002\u0002\u0d03\u0d04\u0003\u0002\u0002\u0002\u0d04\u0d05\u0003",
- "\u0002\u0002\u0002\u0d05\u0d06\u0007\u00b0\u0002\u0002\u0d06\u0d07\u0007",
- "\u032a\u0002\u0002\u0d07\u0d0c\t!\u0002\u0002\u0d08\u0d09\u0007S\u0002",
- "\u0002\u0d09\u0d0a\u0007\u032a\u0002\u0002\u0d0a\u0d0c\u0005\u03c6\u01e4",
- "\u0002\u0d0b\u0d03\u0003\u0002\u0002\u0002\u0d0b\u0d08\u0003\u0002\u0002",
- "\u0002\u0d0c\u0d0d\u0003\u0002\u0002\u0002\u0d0d\u0d0b\u0003\u0002\u0002",
- "\u0002\u0d0d\u0d0e\u0003\u0002\u0002\u0002\u0d0e\u0d0f\u0003\u0002\u0002",
- "\u0002\u0d0f\u0d10\u0007\u033d\u0002\u0002\u0d10\u012b\u0003\u0002\u0002",
- "\u0002\u0d11\u0d12\u0007I\u0002\u0002\u0d12\u0d13\u0007{\u0002\u0002",
- "\u0d13\u0d14\u0007\u00b2\u0002\u0002\u0d14\u0d17\u0005\u03c6\u01e4\u0002",
- "\u0d15\u0d16\u0007\u0014\u0002\u0002\u0d16\u0d18\u0005\u03c6\u01e4\u0002",
- "\u0d17\u0d15\u0003\u0002\u0002\u0002\u0d17\u0d18\u0003\u0002\u0002\u0002",
- "\u0d18\u0d19\u0003\u0002\u0002\u0002\u0d19\u0d1b\u0007\u008b\u0002\u0002",
- "\u0d1a\u0d1c\u0007\u033e\u0002\u0002\u0d1b\u0d1a\u0003\u0002\u0002\u0002",
- "\u0d1b\u0d1c\u0003\u0002\u0002\u0002\u0d1c\u0d1e\u0003\u0002\u0002\u0002",
- "\u0d1d\u0d1f\u0007\u033c\u0002\u0002\u0d1e\u0d1d\u0003\u0002\u0002\u0002",
- "\u0d1e\u0d1f\u0003\u0002\u0002\u0002\u0d1f\u0d22\u0003\u0002\u0002\u0002",
- "\u0d20\u0d21\u0007\u01bb\u0002\u0002\u0d21\u0d23\u0007\u032a\u0002\u0002",
- "\u0d22\u0d20\u0003\u0002\u0002\u0002\u0d22\u0d23\u0003\u0002\u0002\u0002",
- "\u0d23\u0d27\u0003\u0002\u0002\u0002\u0d24\u0d28\u0007\u0326\u0002\u0002",
- "\u0d25\u0d28\u0007\u0327\u0002\u0002\u0d26\u0d28\u0007\u00d5\u0002\u0002",
- "\u0d27\u0d24\u0003\u0002\u0002\u0002\u0d27\u0d25\u0003\u0002\u0002\u0002",
- "\u0d27\u0d26\u0003\u0002\u0002\u0002\u0d28\u0d30\u0003\u0002\u0002\u0002",
- "\u0d29\u0d2a\u0007\u033e\u0002\u0002\u0d2a\u0d2b\u0007\u00fc\u0002\u0002",
- "\u0d2b\u0d2d\u0007\u032a\u0002\u0002\u0d2c\u0d2e\t \u0002\u0002\u0d2d",
- "\u0d2c\u0003\u0002\u0002\u0002\u0d2d\u0d2e\u0003\u0002\u0002\u0002\u0d2e",
- "\u0d2f\u0003\u0002\u0002\u0002\u0d2f\u0d31\u0007\u033d\u0002\u0002\u0d30",
- "\u0d29\u0003\u0002\u0002\u0002\u0d30\u0d31\u0003\u0002\u0002\u0002\u0d31",
- "\u0d41\u0003\u0002\u0002\u0002\u0d32\u0d3c\u0007\u0179\u0002\u0002\u0d33",
- "\u0d35\u0007\u033e\u0002\u0002\u0d34\u0d33\u0003\u0002\u0002\u0002\u0d34",
- "\u0d35\u0003\u0002\u0002\u0002\u0d35\u0d36\u0003\u0002\u0002\u0002\u0d36",
- "\u0d37\u0007\u00b0\u0002\u0002\u0d37\u0d38\u0007\u032a\u0002\u0002\u0d38",
- "\u0d3d\t!\u0002\u0002\u0d39\u0d3a\u0007S\u0002\u0002\u0d3a\u0d3b\u0007",
- "\u032a\u0002\u0002\u0d3b\u0d3d\u0005\u03c6\u01e4\u0002\u0d3c\u0d34\u0003",
- "\u0002\u0002\u0002\u0d3c\u0d39\u0003\u0002\u0002\u0002\u0d3d\u0d3e\u0003",
- "\u0002\u0002\u0002\u0d3e\u0d3c\u0003\u0002\u0002\u0002\u0d3e\u0d3f\u0003",
- "\u0002\u0002\u0002\u0d3f\u0d40\u0003\u0002\u0002\u0002\u0d40\u0d42\u0007",
- "\u033d\u0002\u0002\u0d41\u0d32\u0003\u0002\u0002\u0002\u0d41\u0d42\u0003",
- "\u0002\u0002\u0002\u0d42\u012d\u0003\u0002\u0002\u0002\u0d43\u0d44\u0007",
- "\n\u0002\u0002\u0d44\u0d45\u0007{\u0002\u0002\u0d45\u0d46\u0007\u02b2",
- "\u0002\u0002\u0d46\u0d49\u0007\u0285\u0002\u0002\u0d47\u0d4a\u0005\u03c6",
- "\u01e4\u0002\u0d48\u0d4a\u0007\u01d2\u0002\u0002\u0d49\u0d47\u0003\u0002",
- "\u0002\u0002\u0d49\u0d48\u0003\u0002\u0002\u0002\u0d4a\u0d4b\u0003\u0002",
- "\u0002\u0002\u0d4b\u0d4c\u0007\u0179\u0002\u0002\u0d4c\u0d4d\u0007\u033c",
- "\u0002\u0002\u0d4d\u0d4e\u0007\u0242\u0002\u0002\u0d4e\u0d4f\u0007\u032a",
- "\u0002\u0002\u0d4f\u0d75\u0007\u0322\u0002\u0002\u0d50\u0d52\u0007\u033e",
- "\u0002\u0002\u0d51\u0d50\u0003\u0002\u0002\u0002\u0d51\u0d52\u0003\u0002",
- "\u0002\u0002\u0d52\u0d53\u0003\u0002\u0002\u0002\u0d53\u0d54\u0007\u0187",
- "\u0002\u0002\u0d54\u0d55\u0007\u01c1\u0002\u0002\u0d55\u0d63\u0007\u032a",
- "\u0002\u0002\u0d56\u0d64\u0007\u0198\u0002\u0002\u0d57\u0d59\u0007\u033e",
- "\u0002\u0002\u0d58\u0d57\u0003\u0002\u0002\u0002\u0d58\u0d59\u0003\u0002",
- "\u0002\u0002\u0d59\u0d5a\u0003\u0002\u0002\u0002\u0d5a\u0d5b\u0007\u0322",
- "\u0002\u0002\u0d5b\u0d5c\u0007\u015a\u0002\u0002\u0d5c\u0d60\u0007\u0322",
- "\u0002\u0002\u0d5d\u0d5e\u0007\u033e\u0002\u0002\u0d5e\u0d60\u0007\u0322",
- "\u0002\u0002\u0d5f\u0d58\u0003\u0002\u0002\u0002\u0d5f\u0d5d\u0003\u0002",
- "\u0002\u0002\u0d60\u0d61\u0003\u0002\u0002\u0002\u0d61\u0d5f\u0003\u0002",
- "\u0002\u0002\u0d61\u0d62\u0003\u0002\u0002\u0002\u0d62\u0d64\u0003\u0002",
- "\u0002\u0002\u0d63\u0d56\u0003\u0002\u0002\u0002\u0d63\u0d5f\u0003\u0002",
- "\u0002\u0002\u0d64\u0d76\u0003\u0002\u0002\u0002\u0d65\u0d66\u0007\u026e",
- "\u0002\u0002\u0d66\u0d71\u0007\u032a\u0002\u0002\u0d67\u0d69\u0007\u033e",
- "\u0002\u0002\u0d68\u0d67\u0003\u0002\u0002\u0002\u0d68\u0d69\u0003\u0002",
- "\u0002\u0002\u0d69\u0d6a\u0003\u0002\u0002\u0002\u0d6a\u0d6b\u0007\u0322",
- "\u0002\u0002\u0d6b\u0d6c\u0007\u015a\u0002\u0002\u0d6c\u0d72\u0007\u0322",
- "\u0002\u0002\u0d6d\u0d6f\u0007\u033e\u0002\u0002\u0d6e\u0d6d\u0003\u0002",
- "\u0002\u0002\u0d6e\u0d6f\u0003\u0002\u0002\u0002\u0d6f\u0d70\u0003\u0002",
- "\u0002\u0002\u0d70\u0d72\u0007\u0322\u0002\u0002\u0d71\u0d68\u0003\u0002",
- "\u0002\u0002\u0d71\u0d6e\u0003\u0002\u0002\u0002\u0d72\u0d73\u0003\u0002",
- "\u0002\u0002\u0d73\u0d71\u0003\u0002\u0002\u0002\u0d73\u0d74\u0003\u0002",
- "\u0002\u0002\u0d74\u0d76\u0003\u0002\u0002\u0002\u0d75\u0d51\u0003\u0002",
- "\u0002\u0002\u0d75\u0d65\u0003\u0002\u0002\u0002\u0d76\u0d7d\u0003\u0002",
- "\u0002\u0002\u0d77\u0d79\u0007\u033e\u0002\u0002\u0d78\u0d77\u0003\u0002",
- "\u0002\u0002\u0d78\u0d79\u0003\u0002\u0002\u0002\u0d79\u0d7a\u0003\u0002",
- "\u0002\u0002\u0d7a\u0d7b\u0007\u0246\u0002\u0002\u0d7b\u0d7c\u0007\u032a",
- "\u0002\u0002\u0d7c\u0d7e\u0007\u0322\u0002\u0002\u0d7d\u0d78\u0003\u0002",
- "\u0002\u0002\u0d7d\u0d7e\u0003\u0002\u0002\u0002\u0d7e\u0d85\u0003\u0002",
- "\u0002\u0002\u0d7f\u0d81\u0007\u033e\u0002\u0002\u0d80\u0d7f\u0003\u0002",
- "\u0002\u0002\u0d80\u0d81\u0003\u0002\u0002\u0002\u0d81\u0d82\u0003\u0002",
- "\u0002\u0002\u0d82\u0d83\u0007\u0247\u0002\u0002\u0d83\u0d84\u0007\u032a",
- "\u0002\u0002\u0d84\u0d86\u0007\u0322\u0002\u0002\u0d85\u0d80\u0003\u0002",
- "\u0002\u0002\u0d85\u0d86\u0003\u0002\u0002\u0002\u0d86\u0d87\u0003\u0002",
- "\u0002\u0002\u0d87\u0d88\u0007\u033d\u0002\u0002\u0d88\u012f\u0003\u0002",
- "\u0002\u0002\u0d89\u0d8a\u0007I\u0002\u0002\u0d8a\u0d8b\u0007{\u0002",
- "\u0002\u0d8b\u0d8c\u0007\u02b2\u0002\u0002\u0d8c\u0d8d\u0007\u0285\u0002",
- "\u0002\u0d8d\u0d8e\u0005\u03c6\u01e4\u0002\u0d8e\u0d8f\u0007\u0179\u0002",
- "\u0002\u0d8f\u0d90\u0007\u033c\u0002\u0002\u0d90\u0d91\u0007\u0242\u0002",
- "\u0002\u0d91\u0d92\u0007\u032a\u0002\u0002\u0d92\u0db8\u0007\u0322\u0002",
- "\u0002\u0d93\u0d95\u0007\u033e\u0002\u0002\u0d94\u0d93\u0003\u0002\u0002",
- "\u0002\u0d94\u0d95\u0003\u0002\u0002\u0002\u0d95\u0d96\u0003\u0002\u0002",
- "\u0002\u0d96\u0d97\u0007\u0187\u0002\u0002\u0d97\u0d98\u0007\u01c1\u0002",
- "\u0002\u0d98\u0da6\u0007\u032a\u0002\u0002\u0d99\u0da7\u0007\u0198\u0002",
- "\u0002\u0d9a\u0d9c\u0007\u033e\u0002\u0002\u0d9b\u0d9a\u0003\u0002\u0002",
- "\u0002\u0d9b\u0d9c\u0003\u0002\u0002\u0002\u0d9c\u0d9d\u0003\u0002\u0002",
- "\u0002\u0d9d\u0d9e\u0007\u0322\u0002\u0002\u0d9e\u0d9f\u0007\u015a\u0002",
- "\u0002\u0d9f\u0da3\u0007\u0322\u0002\u0002\u0da0\u0da1\u0007\u033e\u0002",
- "\u0002\u0da1\u0da3\u0007\u0322\u0002\u0002\u0da2\u0d9b\u0003\u0002\u0002",
- "\u0002\u0da2\u0da0\u0003\u0002\u0002\u0002\u0da3\u0da4\u0003\u0002\u0002",
- "\u0002\u0da4\u0da2\u0003\u0002\u0002\u0002\u0da4\u0da5\u0003\u0002\u0002",
- "\u0002\u0da5\u0da7\u0003\u0002\u0002\u0002\u0da6\u0d99\u0003\u0002\u0002",
- "\u0002\u0da6\u0da2\u0003\u0002\u0002\u0002\u0da7\u0db9\u0003\u0002\u0002",
- "\u0002\u0da8\u0da9\u0007\u026e\u0002\u0002\u0da9\u0db4\u0007\u032a\u0002",
- "\u0002\u0daa\u0dac\u0007\u033e\u0002\u0002\u0dab\u0daa\u0003\u0002\u0002",
- "\u0002\u0dab\u0dac\u0003\u0002\u0002\u0002\u0dac\u0dad\u0003\u0002\u0002",
- "\u0002\u0dad\u0dae\u0007\u0322\u0002\u0002\u0dae\u0daf\u0007\u015a\u0002",
- "\u0002\u0daf\u0db5\u0007\u0322\u0002\u0002\u0db0\u0db2\u0007\u033e\u0002",
- "\u0002\u0db1\u0db0\u0003\u0002\u0002\u0002\u0db1\u0db2\u0003\u0002\u0002",
- "\u0002\u0db2\u0db3\u0003\u0002\u0002\u0002\u0db3\u0db5\u0007\u0322\u0002",
- "\u0002\u0db4\u0dab\u0003\u0002\u0002\u0002\u0db4\u0db1\u0003\u0002\u0002",
- "\u0002\u0db5\u0db6\u0003\u0002\u0002\u0002\u0db6\u0db4\u0003\u0002\u0002",
- "\u0002\u0db6\u0db7\u0003\u0002\u0002\u0002\u0db7\u0db9\u0003\u0002\u0002",
- "\u0002\u0db8\u0d94\u0003\u0002\u0002\u0002\u0db8\u0da8\u0003\u0002\u0002",
- "\u0002\u0db9\u0dc0\u0003\u0002\u0002\u0002\u0dba\u0dbc\u0007\u033e\u0002",
- "\u0002\u0dbb\u0dba\u0003\u0002\u0002\u0002\u0dbb\u0dbc\u0003\u0002\u0002",
- "\u0002\u0dbc\u0dbd\u0003\u0002\u0002\u0002\u0dbd\u0dbe\u0007\u0246\u0002",
- "\u0002\u0dbe\u0dbf\u0007\u032a\u0002\u0002\u0dbf\u0dc1\u0007\u0322\u0002",
- "\u0002\u0dc0\u0dbb\u0003\u0002\u0002\u0002\u0dc0\u0dc1\u0003\u0002\u0002",
- "\u0002\u0dc1\u0dc8\u0003\u0002\u0002\u0002\u0dc2\u0dc4\u0007\u033e\u0002",
- "\u0002\u0dc3\u0dc2\u0003\u0002\u0002\u0002\u0dc3\u0dc4\u0003\u0002\u0002",
- "\u0002\u0dc4\u0dc5\u0003\u0002\u0002\u0002\u0dc5\u0dc6\u0007\u0247\u0002",
- "\u0002\u0dc6\u0dc7\u0007\u032a\u0002\u0002\u0dc7\u0dc9\u0007\u0322\u0002",
- "\u0002\u0dc8\u0dc3\u0003\u0002\u0002\u0002\u0dc8\u0dc9\u0003\u0002\u0002",
- "\u0002\u0dc9\u0dca\u0003\u0002\u0002\u0002\u0dca\u0dcb\u0007\u033d\u0002",
- "\u0002\u0dcb\u0131\u0003\u0002\u0002\u0002\u0dcc\u0dcd\u0007\n\u0002",
- "\u0002\u0dcd\u0dce\u0007\u0209\u0002\u0002\u0dce\u0dcf\u0007\u01ae\u0002",
- "\u0002\u0dcf\u0dda\u0005\u03c6\u01e4\u0002\u0dd0\u0dd5\u0007\u02a1\u0002",
- "\u0002\u0dd1\u0dd2\u0007\u0179\u0002\u0002\u0dd2\u0dd3\u0007\u017f\u0002",
- "\u0002\u0dd3\u0dd4\u0007\u032a\u0002\u0002\u0dd4\u0dd6\t\t\u0002\u0002",
- "\u0dd5\u0dd1\u0003\u0002\u0002\u0002\u0dd5\u0dd6\u0003\u0002\u0002\u0002",
- "\u0dd6\u0ddb\u0003\u0002\u0002\u0002\u0dd7\u0ddb\u0007\u02aa\u0002\u0002",
- "\u0dd8\u0dd9\u0007\u0010\u0002\u0002\u0dd9\u0ddb\u0007Y\u0002\u0002",
- "\u0dda\u0dd0\u0003\u0002\u0002\u0002\u0dda\u0dd7\u0003\u0002\u0002\u0002",
- "\u0dda\u0dd8\u0003\u0002\u0002\u0002\u0ddb\u0133\u0003\u0002\u0002\u0002",
- "\u0ddc\u0ddd\u0007I\u0002\u0002\u0ddd\u0dde\u0007\u0209\u0002\u0002",
- "\u0dde\u0ddf\u0007\u01ae\u0002\u0002\u0ddf\u0de3\u0005\u03c6\u01e4\u0002",
- "\u0de0\u0de1\u0007\u00e5\u0002\u0002\u0de1\u0de2\u0007\u01fb\u0002\u0002",
- "\u0de2\u0de4\u0005\u03c6\u01e4\u0002\u0de3\u0de0\u0003\u0002\u0002\u0002",
- "\u0de3\u0de4\u0003\u0002\u0002\u0002\u0de4\u0de8\u0003\u0002\u0002\u0002",
- "\u0de5\u0de6\u0007\u009b\u0002\u0002\u0de6\u0de7\u0007\u0283\u0002\u0002",
- "\u0de7\u0de9\u0007\u0326\u0002\u0002\u0de8\u0de5\u0003\u0002\u0002\u0002",
- "\u0de8\u0de9\u0003\u0002\u0002\u0002\u0de9\u0dee\u0003\u0002\u0002\u0002",
- "\u0dea\u0deb\u0007\u0179\u0002\u0002\u0deb\u0dec\u0007\u017f\u0002\u0002",
- "\u0dec\u0ded\u0007\u032a\u0002\u0002\u0ded\u0def\t\t\u0002\u0002\u0dee",
- "\u0dea\u0003\u0002\u0002\u0002\u0dee\u0def\u0003\u0002\u0002\u0002\u0def",
- "\u0df2\u0003\u0002\u0002\u0002\u0df0\u0df1\u0007\u0010\u0002\u0002\u0df1",
- "\u0df3\u0007Y\u0002\u0002\u0df2\u0df0\u0003\u0002\u0002\u0002\u0df2",
- "\u0df3\u0003\u0002\u0002\u0002\u0df3\u0df6\u0003\u0002\u0002\u0002\u0df4",
- "\u0df5\u0007\u0014\u0002\u0002\u0df5\u0df7\u0005\u03c6\u01e4\u0002\u0df6",
- "\u0df4\u0003\u0002\u0002\u0002\u0df6\u0df7\u0003\u0002\u0002\u0002\u0df7",
- "\u0135\u0003\u0002\u0002\u0002\u0df8\u0df9\u0007\n\u0002\u0002\u0df9",
- "\u0dfa\u0007\u0209\u0002\u0002\u0dfa\u0dfb\u0007\u02e4\u0002\u0002\u0dfb",
- "\u0e09\u0005\u03c6\u01e4\u0002\u0dfc\u0dfd\u0007\u0004\u0002\u0002\u0dfd",
- "\u0dfe\u0007\u0326\u0002\u0002\u0dfe\u0dff\u0007\u00b0\u0002\u0002\u0dff",
- "\u0e0a\t\"\u0002\u0002\u0e00\u0e07\u0007g\u0002\u0002\u0e01\u0e02\u0007",
- "\u0326\u0002\u0002\u0e02\u0e03\u0007\u00b0\u0002\u0002\u0e03\u0e08\t",
- "\"\u0002\u0002\u0e04\u0e05\u0007\u0006\u0002\u0002\u0e05\u0e08\t\"\u0002",
- "\u0002\u0e06\u0e08\u0007\u0006\u0002\u0002\u0e07\u0e01\u0003\u0002\u0002",
- "\u0002\u0e07\u0e04\u0003\u0002\u0002\u0002\u0e07\u0e06\u0003\u0002\u0002",
- "\u0002\u0e08\u0e0a\u0003\u0002\u0002\u0002\u0e09\u0dfc\u0003\u0002\u0002",
- "\u0002\u0e09\u0e00\u0003\u0002\u0002\u0002\u0e0a\u0137\u0003\u0002\u0002",
- "\u0002\u0e0b\u0e0c\u0007I\u0002\u0002\u0e0c\u0e0d\u0007\u0209\u0002",
- "\u0002\u0e0d\u0e0e\u0007\u02e4\u0002\u0002\u0e0e\u0e1a\u0005\u03c6\u01e4",
- "\u0002\u0e0f\u0e18\u0007\u008b\u0002\u0002\u0e10\u0e11\u0005\u03c6\u01e4",
- "\u0002\u0e11\u0e12\u0007\u0337\u0002\u0002\u0e12\u0e14\u0003\u0002\u0002",
- "\u0002\u0e13\u0e10\u0003\u0002\u0002\u0002\u0e13\u0e14\u0003\u0002\u0002",
- "\u0002\u0e14\u0e15\u0003\u0002\u0002\u0002\u0e15\u0e19\u0005\u03c6\u01e4",
- "\u0002\u0e16\u0e17\u0007\u02ee\u0002\u0002\u0e17\u0e19\u0007\u02e4\u0002",
- "\u0002\u0e18\u0e13\u0003\u0002\u0002\u0002\u0e18\u0e16\u0003\u0002\u0002",
- "\u0002\u0e19\u0e1b\u0003\u0002\u0002\u0002\u0e1a\u0e0f\u0003\u0002\u0002",
- "\u0002\u0e1a\u0e1b\u0003\u0002\u0002\u0002\u0e1b\u0e1e\u0003\u0002\u0002",
- "\u0002\u0e1c\u0e1d\u0007\u0014\u0002\u0002\u0e1d\u0e1f\u0005\u03c6\u01e4",
- "\u0002\u0e1e\u0e1c\u0003\u0002\u0002\u0002\u0e1e\u0e1f\u0003\u0002\u0002",
- "\u0002\u0e1f\u0139\u0003\u0002\u0002\u0002\u0e20\u0e21\u0007\n\u0002",
- "\u0002\u0e21\u0e22\u0007\u023b\u0002\u0002\u0e22\u0e66\u0005\u03c6\u01e4",
- "\u0002\u0e23\u0e25\t\u0017\u0002\u0002\u0e24\u0e23\u0003\u0002\u0002",
- "\u0002\u0e24\u0e25\u0003\u0002\u0002\u0002\u0e25\u0e67\u0003\u0002\u0002",
- "\u0002\u0e26\u0e34\u0007\u0179\u0002\u0002\u0e27\u0e28\u0007\u00f4\u0002",
- "\u0002\u0e28\u0e2c\u0007\u032a\u0002\u0002\u0e29\u0e2d\u0007\u0326\u0002",
- "\u0002\u0e2a\u0e2b\u0007\u0327\u0002\u0002\u0e2b\u0e2d\u0007\u0094\u0002",
- "\u0002\u0e2c\u0e29\u0003\u0002\u0002\u0002\u0e2c\u0e2a\u0003\u0002\u0002",
- "\u0002\u0e2d\u0e31\u0003\u0002\u0002\u0002\u0e2e\u0e30\t#\u0002\u0002",
- "\u0e2f\u0e2e\u0003\u0002\u0002\u0002\u0e30\u0e33\u0003\u0002\u0002\u0002",
- "\u0e31\u0e2f\u0003\u0002\u0002\u0002\u0e31\u0e32\u0003\u0002\u0002\u0002",
- "\u0e32\u0e35\u0003\u0002\u0002\u0002\u0e33\u0e31\u0003\u0002\u0002\u0002",
- "\u0e34\u0e27\u0003\u0002\u0002\u0002\u0e34\u0e35\u0003\u0002\u0002\u0002",
- "\u0e35\u0e3f\u0003\u0002\u0002\u0002\u0e36\u0e37\u0007\u00e4\u0002\u0002",
- "\u0e37\u0e38\u0007\u032a\u0002\u0002\u0e38\u0e3c\u0007\u0326\u0002\u0002",
- "\u0e39\u0e3b\t#\u0002\u0002\u0e3a\u0e39\u0003\u0002\u0002\u0002\u0e3b",
- "\u0e3e\u0003\u0002\u0002\u0002\u0e3c\u0e3a\u0003\u0002\u0002\u0002\u0e3c",
- "\u0e3d\u0003\u0002\u0002\u0002\u0e3d\u0e40\u0003\u0002\u0002\u0002\u0e3e",
- "\u0e3c\u0003\u0002\u0002\u0002\u0e3f\u0e36\u0003\u0002\u0002\u0002\u0e3f",
- "\u0e40\u0003\u0002\u0002\u0002\u0e40\u0e44\u0003\u0002\u0002\u0002\u0e41",
- "\u0e42\u0007Z\u0002\u0002\u0e42\u0e43\u0007\u032a\u0002\u0002\u0e43",
- "\u0e45\u0005\u03c6\u01e4\u0002\u0e44\u0e41\u0003\u0002\u0002\u0002\u0e44",
- "\u0e45\u0003\u0002\u0002\u0002\u0e45\u0e49\u0003\u0002\u0002\u0002\u0e46",
- "\u0e47\u0007\u01d4\u0002\u0002\u0e47\u0e48\u0007\u032a\u0002\u0002\u0e48",
- "\u0e4a\u0005\u03c6\u01e4\u0002\u0e49\u0e46\u0003\u0002\u0002\u0002\u0e49",
- "\u0e4a\u0003\u0002\u0002\u0002\u0e4a\u0e4e\u0003\u0002\u0002\u0002\u0e4b",
- "\u0e4c\u0007\u025d\u0002\u0002\u0e4c\u0e4d\u0007\u032a\u0002\u0002\u0e4d",
- "\u0e4f\u0005\u03c6\u01e4\u0002\u0e4e\u0e4b\u0003\u0002\u0002\u0002\u0e4e",
- "\u0e4f\u0003\u0002\u0002\u0002\u0e4f\u0e53\u0003\u0002\u0002\u0002\u0e50",
- "\u0e51\u00070\u0002\u0002\u0e51\u0e52\u0007\u032a\u0002\u0002\u0e52",
- "\u0e54\t\t\u0002\u0002\u0e53\u0e50\u0003\u0002\u0002\u0002\u0e53\u0e54",
- "\u0003\u0002\u0002\u0002\u0e54\u0e58\u0003\u0002\u0002\u0002\u0e55\u0e56",
- "\u00071\u0002\u0002\u0e56\u0e57\u0007\u032a\u0002\u0002\u0e57\u0e59",
- "\t\t\u0002\u0002\u0e58\u0e55\u0003\u0002\u0002\u0002\u0e58\u0e59\u0003",
- "\u0002\u0002\u0002\u0e59\u0e5d\u0003\u0002\u0002\u0002\u0e5a\u0e5b\u0007",
- "\u01c4\u0002\u0002\u0e5b\u0e5c\u0007\u032a\u0002\u0002\u0e5c\u0e5e\u0005",
- "\u03c6\u01e4\u0002\u0e5d\u0e5a\u0003\u0002\u0002\u0002\u0e5d\u0e5e\u0003",
- "\u0002\u0002\u0002\u0e5e\u0e61\u0003\u0002\u0002\u0002\u0e5f\u0e60\u0007",
- "\u0263\u0002\u0002\u0e60\u0e62\u0007\u01c4\u0002\u0002\u0e61\u0e5f\u0003",
- "\u0002\u0002\u0002\u0e61\u0e62\u0003\u0002\u0002\u0002\u0e62\u0e67\u0003",
- "\u0002\u0002\u0002\u0e63\u0e64\t\u0015\u0002\u0002\u0e64\u0e65\u0007",
- "\u01c4\u0002\u0002\u0e65\u0e67\u0005\u03c6\u01e4\u0002\u0e66\u0e24\u0003",
- "\u0002\u0002\u0002\u0e66\u0e26\u0003\u0002\u0002\u0002\u0e66\u0e63\u0003",
- "\u0002\u0002\u0002\u0e67\u013b\u0003\u0002\u0002\u0002\u0e68\u0e69\u0007",
- "I\u0002\u0002\u0e69\u0e6a\u0007\u023b\u0002\u0002\u0e6a\u0ec5\u0005",
- "\u03c6\u01e4\u0002\u0e6b\u0e79\u0007\u0179\u0002\u0002\u0e6c\u0e6d\u0007",
- "\u00f4\u0002\u0002\u0e6d\u0e71\u0007\u032a\u0002\u0002\u0e6e\u0e72\u0007",
- "\u0326\u0002\u0002\u0e6f\u0e70\u0007\u0327\u0002\u0002\u0e70\u0e72\u0007",
- "\u0094\u0002\u0002\u0e71\u0e6e\u0003\u0002\u0002\u0002\u0e71\u0e6f\u0003",
- "\u0002\u0002\u0002\u0e72\u0e76\u0003\u0002\u0002\u0002\u0e73\u0e75\t",
- "#\u0002\u0002\u0e74\u0e73\u0003\u0002\u0002\u0002\u0e75\u0e78\u0003",
- "\u0002\u0002\u0002\u0e76\u0e74\u0003\u0002\u0002\u0002\u0e76\u0e77\u0003",
- "\u0002\u0002\u0002\u0e77\u0e7a\u0003\u0002\u0002\u0002\u0e78\u0e76\u0003",
- "\u0002\u0002\u0002\u0e79\u0e6c\u0003\u0002\u0002\u0002\u0e79\u0e7a\u0003",
- "\u0002\u0002\u0002\u0e7a\u0e81\u0003\u0002\u0002\u0002\u0e7b\u0e7d\u0007",
- "\u033e\u0002\u0002\u0e7c\u0e7b\u0003\u0002\u0002\u0002\u0e7c\u0e7d\u0003",
- "\u0002\u0002\u0002\u0e7d\u0e7e\u0003\u0002\u0002\u0002\u0e7e\u0e7f\u0007",
- "\u013e\u0002\u0002\u0e7f\u0e80\u0007\u032a\u0002\u0002\u0e80\u0e82\u0007",
- "\u0327\u0002\u0002\u0e81\u0e7c\u0003\u0002\u0002\u0002\u0e81\u0e82\u0003",
- "\u0002\u0002\u0002\u0e82\u0e89\u0003\u0002\u0002\u0002\u0e83\u0e85\u0007",
- "\u033e\u0002\u0002\u0e84\u0e83\u0003\u0002\u0002\u0002\u0e84\u0e85\u0003",
- "\u0002\u0002\u0002\u0e85\u0e86\u0003\u0002\u0002\u0002\u0e86\u0e87\u0007",
- "Z\u0002\u0002\u0e87\u0e88\u0007\u032a\u0002\u0002\u0e88\u0e8a\u0005",
- "\u03c6\u01e4\u0002\u0e89\u0e84\u0003\u0002\u0002\u0002\u0e89\u0e8a\u0003",
- "\u0002\u0002\u0002\u0e8a\u0e91\u0003\u0002\u0002\u0002\u0e8b\u0e8d\u0007",
- "\u033e\u0002\u0002\u0e8c\u0e8b\u0003\u0002\u0002\u0002\u0e8c\u0e8d\u0003",
- "\u0002\u0002\u0002\u0e8d\u0e8e\u0003\u0002\u0002\u0002\u0e8e\u0e8f\u0007",
- "\u01d4\u0002\u0002\u0e8f\u0e90\u0007\u032a\u0002\u0002\u0e90\u0e92\u0005",
- "\u03c6\u01e4\u0002\u0e91\u0e8c\u0003\u0002\u0002\u0002\u0e91\u0e92\u0003",
- "\u0002\u0002\u0002\u0e92\u0e99\u0003\u0002\u0002\u0002\u0e93\u0e95\u0007",
- "\u033e\u0002\u0002\u0e94\u0e93\u0003\u0002\u0002\u0002\u0e94\u0e95\u0003",
- "\u0002\u0002\u0002\u0e95\u0e96\u0003\u0002\u0002\u0002\u0e96\u0e97\u0007",
- "1\u0002\u0002\u0e97\u0e98\u0007\u032a\u0002\u0002\u0e98\u0e9a\t\t\u0002",
- "\u0002\u0e99\u0e94\u0003\u0002\u0002\u0002\u0e99\u0e9a\u0003\u0002\u0002",
- "\u0002\u0e9a\u0ea1\u0003\u0002\u0002\u0002\u0e9b\u0e9d\u0007\u033e\u0002",
- "\u0002\u0e9c\u0e9b\u0003\u0002\u0002\u0002\u0e9c\u0e9d\u0003\u0002\u0002",
- "\u0002\u0e9d\u0e9e\u0003\u0002\u0002\u0002\u0e9e\u0e9f\u00070\u0002",
- "\u0002\u0e9f\u0ea0\u0007\u032a\u0002\u0002\u0ea0\u0ea2\t\t\u0002\u0002",
- "\u0ea1\u0e9c\u0003\u0002\u0002\u0002\u0ea1\u0ea2\u0003\u0002\u0002\u0002",
- "\u0ea2\u0ea9\u0003\u0002\u0002\u0002\u0ea3\u0ea5\u0007\u033e\u0002\u0002",
- "\u0ea4\u0ea3\u0003\u0002\u0002\u0002\u0ea4\u0ea5\u0003\u0002\u0002\u0002",
- "\u0ea5\u0ea6\u0003\u0002\u0002\u0002\u0ea6\u0ea7\u0007\u01c4\u0002\u0002",
- "\u0ea7\u0ea8\u0007\u032a\u0002\u0002\u0ea8\u0eaa\u0005\u03c6\u01e4\u0002",
- "\u0ea9\u0ea4\u0003\u0002\u0002\u0002\u0ea9\u0eaa\u0003\u0002\u0002\u0002",
- "\u0eaa\u0ec6\u0003\u0002\u0002\u0002\u0eab\u0ec3\u0007\u008b\u0002\u0002",
- "\u0eac\u0ead\u0007\u0178\u0002\u0002\u0ead\u0eb4\u0007\u0179\u0002\u0002",
- "\u0eae\u0eb0\u0007\u033e\u0002\u0002\u0eaf\u0eae\u0003\u0002\u0002\u0002",
- "\u0eaf\u0eb0\u0003\u0002\u0002\u0002\u0eb0\u0eb1\u0003\u0002\u0002\u0002",
- "\u0eb1\u0eb2\u0007Z\u0002\u0002\u0eb2\u0eb3\u0007\u032a\u0002\u0002",
- "\u0eb3\u0eb5\u0005\u03c6\u01e4\u0002\u0eb4\u0eaf\u0003\u0002\u0002\u0002",
- "\u0eb4\u0eb5\u0003\u0002\u0002\u0002\u0eb5\u0ebc\u0003\u0002\u0002\u0002",
- "\u0eb6\u0eb8\u0007\u033e\u0002\u0002\u0eb7\u0eb6\u0003\u0002\u0002\u0002",
- "\u0eb7\u0eb8\u0003\u0002\u0002\u0002\u0eb8\u0eb9\u0003\u0002\u0002\u0002",
- "\u0eb9\u0eba\u0007\u01d4\u0002\u0002\u0eba\u0ebb\u0007\u032a\u0002\u0002",
- "\u0ebb\u0ebd\u0007\u0326\u0002\u0002\u0ebc\u0eb7\u0003\u0002\u0002\u0002",
- "\u0ebc\u0ebd\u0003\u0002\u0002\u0002\u0ebd\u0ec4\u0003\u0002\u0002\u0002",
- "\u0ebe\u0ebf\u0007+\u0002\u0002\u0ebf\u0ec4\u0005\u03c6\u01e4\u0002",
- "\u0ec0\u0ec1\u0007\u0012\u0002\u0002\u0ec1\u0ec2\u0007\u00ac\u0002\u0002",
- "\u0ec2\u0ec4\u0005\u03c6\u01e4\u0002\u0ec3\u0eac\u0003\u0002\u0002\u0002",
- "\u0ec3\u0ebe\u0003\u0002\u0002\u0002\u0ec3\u0ec0\u0003\u0002\u0002\u0002",
- "\u0ec4\u0ec6\u0003\u0002\u0002\u0002\u0ec5\u0e6b\u0003\u0002\u0002\u0002",
- "\u0ec5\u0eab\u0003\u0002\u0002\u0002\u0ec6\u013d\u0003\u0002\u0002\u0002",
- "\u0ec7\u0ec8\u0007\n\u0002\u0002\u0ec8\u0ec9\u0007\u023b\u0002\u0002",
- "\u0ec9\u0edb\u0005\u03c6\u01e4\u0002\u0eca\u0ecc\t\u0017\u0002\u0002",
- "\u0ecb\u0eca\u0003\u0002\u0002\u0002\u0ecb\u0ecc\u0003\u0002\u0002\u0002",
- "\u0ecc\u0edc\u0003\u0002\u0002\u0002\u0ecd\u0ed9\u0007\u0179\u0002\u0002",
- "\u0ece\u0ecf\u0007\u00f4\u0002\u0002\u0ecf\u0ed0\u0007\u032a\u0002\u0002",
- "\u0ed0\u0ed4\u0007\u0326\u0002\u0002\u0ed1\u0ed2\u0007\u00e4\u0002\u0002",
- "\u0ed2\u0ed3\u0007\u032a\u0002\u0002\u0ed3\u0ed5\u0007\u0326\u0002\u0002",
- "\u0ed4\u0ed1\u0003\u0002\u0002\u0002\u0ed4\u0ed5\u0003\u0002\u0002\u0002",
- "\u0ed5\u0eda\u0003\u0002\u0002\u0002\u0ed6\u0ed7\u0007\u025d\u0002\u0002",
- "\u0ed7\u0ed8\u0007\u032a\u0002\u0002\u0ed8\u0eda\u0005\u03c6\u01e4\u0002",
- "\u0ed9\u0ece\u0003\u0002\u0002\u0002\u0ed9\u0ed6\u0003\u0002\u0002\u0002",
- "\u0eda\u0edc\u0003\u0002\u0002\u0002\u0edb\u0ecb\u0003\u0002\u0002\u0002",
- "\u0edb\u0ecd\u0003\u0002\u0002\u0002\u0edc\u013f\u0003\u0002\u0002\u0002",
- "\u0edd\u0ede\u0007I\u0002\u0002\u0ede\u0edf\u0007\u023b\u0002\u0002",
- "\u0edf\u0ee0\u0005\u03c6\u01e4\u0002\u0ee0\u0ee1\u0007\u0179\u0002\u0002",
- "\u0ee1\u0ee2\u0007\u00f4\u0002\u0002\u0ee2\u0ee3\u0007\u032a\u0002\u0002",
- "\u0ee3\u0ee7\u0007\u0326\u0002\u0002\u0ee4\u0ee5\u0007\u013e\u0002\u0002",
- "\u0ee5\u0ee6\u0007\u032a\u0002\u0002\u0ee6\u0ee8\u0007\u0327\u0002\u0002",
- "\u0ee7\u0ee4\u0003\u0002\u0002\u0002\u0ee7\u0ee8\u0003\u0002\u0002\u0002",
- "\u0ee8\u0141\u0003\u0002\u0002\u0002\u0ee9\u0eea\u0007\n\u0002\u0002",
- "\u0eea\u0eeb\u0007\u023b\u0002\u0002\u0eeb\u0f03\u0005\u03c6\u01e4\u0002",
- "\u0eec\u0eee\t\u0017\u0002\u0002\u0eed\u0eec\u0003\u0002\u0002\u0002",
- "\u0eed\u0eee\u0003\u0002\u0002\u0002\u0eee\u0f04\u0003\u0002\u0002\u0002",
- "\u0eef\u0f01\u0007\u0179\u0002\u0002\u0ef0\u0ef1\u0007\u00f4\u0002\u0002",
- "\u0ef1\u0ef2\u0007\u032a\u0002\u0002\u0ef2\u0efc\u0007\u0326\u0002\u0002",
- "\u0ef3\u0ef4\u0007\u00e4\u0002\u0002\u0ef4\u0ef5\u0007\u032a\u0002\u0002",
- "\u0ef5\u0ef9\u0007\u0326\u0002\u0002\u0ef6\u0ef8\t#\u0002\u0002\u0ef7",
- "\u0ef6\u0003\u0002\u0002\u0002\u0ef8\u0efb\u0003\u0002\u0002\u0002\u0ef9",
- "\u0ef7\u0003\u0002\u0002\u0002\u0ef9\u0efa\u0003\u0002\u0002\u0002\u0efa",
- "\u0efd\u0003\u0002\u0002\u0002\u0efb\u0ef9\u0003\u0002\u0002\u0002\u0efc",
- "\u0ef3\u0003\u0002\u0002\u0002\u0efc\u0efd\u0003\u0002\u0002\u0002\u0efd",
- "\u0f02\u0003\u0002\u0002\u0002\u0efe\u0eff\u0007\u025d\u0002\u0002\u0eff",
- "\u0f00\u0007\u032a\u0002\u0002\u0f00\u0f02\u0005\u03c6\u01e4\u0002\u0f01",
- "\u0ef0\u0003\u0002\u0002\u0002\u0f01\u0efe\u0003\u0002\u0002\u0002\u0f02",
- "\u0f04\u0003\u0002\u0002\u0002\u0f03\u0eed\u0003\u0002\u0002\u0002\u0f03",
- "\u0eef\u0003\u0002\u0002\u0002\u0f04\u0143\u0003\u0002\u0002\u0002\u0f05",
- "\u0f06\u0007I\u0002\u0002\u0f06\u0f07\u0007\u023b\u0002\u0002\u0f07",
- "\u0f18\u0005\u03c6\u01e4\u0002\u0f08\u0f09\u0007\u0179\u0002\u0002\u0f09",
- "\u0f0a\u0007\u00f4\u0002\u0002\u0f0a\u0f0b\u0007\u032a\u0002\u0002\u0f0b",
- "\u0f0d\u0007\u0326\u0002\u0002\u0f0c\u0f0e\u0007\u00ce\u0002\u0002\u0f0d",
- "\u0f0c\u0003\u0002\u0002\u0002\u0f0d\u0f0e\u0003\u0002\u0002\u0002\u0f0e",
- "\u0f14\u0003\u0002\u0002\u0002\u0f0f\u0f10\u00070\u0002\u0002\u0f10",
- "\u0f12\u0007\u032a\u0002\u0002\u0f11\u0f13\t\t\u0002\u0002\u0f12\u0f11",
- "\u0003\u0002\u0002\u0002\u0f12\u0f13\u0003\u0002\u0002\u0002\u0f13\u0f15",
- "\u0003\u0002\u0002\u0002\u0f14\u0f0f\u0003\u0002\u0002\u0002\u0f14\u0f15",
- "\u0003\u0002\u0002\u0002\u0f15\u0f19\u0003\u0002\u0002\u0002\u0f16\u0f17",
- "\u0007\u008b\u0002\u0002\u0f17\u0f19\u0007\u0178\u0002\u0002\u0f18\u0f08",
- "\u0003\u0002\u0002\u0002\u0f18\u0f16\u0003\u0002\u0002\u0002\u0f19\u0145",
- "\u0003\u0002\u0002\u0002\u0f1a\u0f1b\u0007\n\u0002\u0002\u0f1b\u0f1c",
- "\u0007\u00bd\u0002\u0002\u0f1c\u0f32\u0007\u00ac\u0002\u0002\u0f1d\u0f1f",
- "\u0007\u0203\u0002\u0002\u0f1e\u0f1d\u0003\u0002\u0002\u0002\u0f1e\u0f1f",
- "\u0003\u0002\u0002\u0002\u0f1f\u0f20\u0003\u0002\u0002\u0002\u0f20\u0f21",
- "\u0007\u010f\u0002\u0002\u0f21\u0f22\u0007\u0179\u0002\u0002\u0f22\u0f23",
- "\u0007\u01ec\u0002\u0002\u0f23\u0f24\u0007&\u0002\u0002\u0f24\u0f25",
- "\u0007\u00f4\u0002\u0002\u0f25\u0f26\u0007\u032a\u0002\u0002\u0f26\u0f33",
- "\u0007\u0326\u0002\u0002\u0f27\u0f28\t\u0015\u0002\u0002\u0f28\u0f29",
- "\u0007\u01ec\u0002\u0002\u0f29\u0f30\u0007&\u0002\u0002\u0f2a\u0f2b",
- "\u0007\u0136\u0002\u0002\u0f2b\u0f2c\u0007\u00bd\u0002\u0002\u0f2c\u0f31",
- "\u0007\u00ac\u0002\u0002\u0f2d\u0f2e\u0007\u00f4\u0002\u0002\u0f2e\u0f2f",
- "\u0007\u032a\u0002\u0002\u0f2f\u0f31\u0007\u0326\u0002\u0002\u0f30\u0f2a",
- "\u0003\u0002\u0002\u0002\u0f30\u0f2d\u0003\u0002\u0002\u0002\u0f31\u0f33",
- "\u0003\u0002\u0002\u0002\u0f32\u0f1e\u0003\u0002\u0002\u0002\u0f32\u0f27",
- "\u0003\u0002\u0002\u0002\u0f33\u0147\u0003\u0002\u0002\u0002\u0f34\u0f35",
- "\u0007I\u0002\u0002\u0f35\u0f36\u0007\u00bd\u0002\u0002\u0f36\u0f37",
- "\u0007\u00ac\u0002\u0002\u0f37\u0f38\u0007\u01ec\u0002\u0002\u0f38\u0f39",
- "\u0007&\u0002\u0002\u0f39\u0f3a\u0007\u00f4\u0002\u0002\u0f3a\u0f3b",
- "\u0007\u032a\u0002\u0002\u0f3b\u0f3c\u0007\u0326\u0002\u0002\u0f3c\u0149",
- "\u0003\u0002\u0002\u0002\u0f3d\u0f3e\u0007\n\u0002\u0002\u0f3e\u0f3f",
- "\u0007\u00bd\u0002\u0002\u0f3f\u0f5b\u0007\u00ac\u0002\u0002\u0f40\u0f42",
- "\u0007\u0203\u0002\u0002\u0f41\u0f40\u0003\u0002\u0002\u0002\u0f41\u0f42",
- "\u0003\u0002\u0002\u0002\u0f42\u0f43\u0003\u0002\u0002\u0002\u0f43\u0f44",
- "\u0007\u010f\u0002\u0002\u0f44\u0f45\u0007\u0179\u0002\u0002\u0f45\u0f46",
- "\u0007\u01ec\u0002\u0002\u0f46\u0f47\u0007&\u0002\u0002\u0f47\u0f48",
- "\u0007\u00f4\u0002\u0002\u0f48\u0f49\u0007\u032a\u0002\u0002\u0f49\u0f5c",
- "\u0007\u0326\u0002\u0002\u0f4a\u0f4b\u0007\u0004\u0002\u0002\u0f4b\u0f4c",
- "\u0007\u01ec\u0002\u0002\u0f4c\u0f53\u0007&\u0002\u0002\u0f4d\u0f4e",
- "\u0007\u0136\u0002\u0002\u0f4e\u0f4f\u0007\u00bd\u0002\u0002\u0f4f\u0f54",
- "\u0007\u00ac\u0002\u0002\u0f50\u0f51\u0007\u00f4\u0002\u0002\u0f51\u0f52",
- "\u0007\u032a\u0002\u0002\u0f52\u0f54\u0007\u0326\u0002\u0002\u0f53\u0f4d",
- "\u0003\u0002\u0002\u0002\u0f53\u0f50\u0003\u0002\u0002\u0002\u0f54\u0f5c",
- "\u0003\u0002\u0002\u0002\u0f55\u0f56\u0007g\u0002\u0002\u0f56\u0f57",
- "\u0007\u01ec\u0002\u0002\u0f57\u0f58\u0007&\u0002\u0002\u0f58\u0f59",
- "\u0007\u00f4\u0002\u0002\u0f59\u0f5a\u0007\u032a\u0002\u0002\u0f5a\u0f5c",
- "\u0007\u0326\u0002\u0002\u0f5b\u0f41\u0003\u0002\u0002\u0002\u0f5b\u0f4a",
- "\u0003\u0002\u0002\u0002\u0f5b\u0f55\u0003\u0002\u0002\u0002\u0f5c\u014b",
- "\u0003\u0002\u0002\u0002\u0f5d\u0f5e\u0007I\u0002\u0002\u0f5e\u0f5f",
- "\u0007\u00bd\u0002\u0002\u0f5f\u0f65\u0007\u00ac\u0002\u0002\u0f60\u0f61",
- "\u0007\u01ec\u0002\u0002\u0f61\u0f62\u0007&\u0002\u0002\u0f62\u0f63",
- "\u0007\u00f4\u0002\u0002\u0f63\u0f64\u0007\u032a\u0002\u0002\u0f64\u0f66",
- "\u0007\u0326\u0002\u0002\u0f65\u0f60\u0003\u0002\u0002\u0002\u0f65\u0f66",
- "\u0003\u0002\u0002\u0002\u0f66\u014d\u0003\u0002\u0002\u0002\u0f67\u0f68",
- "\u0007\n\u0002\u0002\u0f68\u0f69\u0007\u0250\u0002\u0002\u0f69\u0f6a",
- "\u0007\u0301\u0002\u0002\u0f6a\u0f6b\u0005\u03c6\u01e4\u0002\u0f6b\u0f6c",
- "\u0007\u030a\u0002\u0002\u0f6c\u0f75\u0007\u032a\u0002\u0002\u0f6d\u0f76",
- "\u0007\u00d5\u0002\u0002\u0f6e\u0f76\u0007\u01e8\u0002\u0002\u0f6f\u0f76",
- "\u0007\u0311\u0002\u0002\u0f70\u0f71\u0007\u0309\u0002\u0002\u0f71\u0f72",
- "\u0007\u0179\u0002\u0002\u0f72\u0f73\u0007\u012e\u0002\u0002\u0f73\u0f74",
- "\u0007\u01b5\u0002\u0002\u0f74\u0f76\u0005\u03c6\u01e4\u0002\u0f75\u0f6d",
- "\u0003\u0002\u0002\u0002\u0f75\u0f6e\u0003\u0002\u0002\u0002\u0f75\u0f6f",
- "\u0003\u0002\u0002\u0002\u0f75\u0f70\u0003\u0002\u0002\u0002\u0f76\u014f",
- "\u0003\u0002\u0002\u0002\u0f77\u0f78\u0007\n\u0002\u0002\u0f78\u0f79",
- "\u0007\u0280\u0002\u0002\u0f79\u0f7a\u0007\u008d\u0002\u0002\u0f7a\u0f7b",
- "\u0005\u03c6\u01e4\u0002\u0f7b\u0f7c\u0007\u033c\u0002\u0002\u0f7c\u0f7d",
- "\u0007\u033d\u0002\u0002\u0f7d\u0f7e\t$\u0002\u0002\u0f7e\u0f7f\u0007",
- "\u0297\u0002\u0002\u0f7f\u0f80\u0007\u033c\u0002\u0002\u0f80\u0f81\u0007",
- "\u0322\u0002\u0002\u0f81\u0f82\u0007\u033d\u0002\u0002\u0f82\u0151\u0003",
- "\u0002\u0002\u0002\u0f83\u0f84\u0007\n\u0002\u0002\u0f84\u0f85\u0007",
- "\u0280\u0002\u0002\u0f85\u0f86\u0007\u012f\u0002\u0002\u0f86\u0f87\u0005",
- "\u03c6\u01e4\u0002\u0f87\u0f88\u0007\u0262\u0002\u0002\u0f88\u0f8a\u0007",
- "\u016d\u0002\u0002\u0f89\u0f8b\u0005\u03c6\u01e4\u0002\u0f8a\u0f89\u0003",
- "\u0002\u0002\u0002\u0f8a\u0f8b\u0003\u0002\u0002\u0002\u0f8b\u0153\u0003",
- "\u0002\u0002\u0002\u0f8c\u0f8d\u0007\n\u0002\u0002\u0f8d\u0f8e\u0007",
- "\u02a7\u0002\u0002\u0f8e\u0f8f\u0007\u0136\u0002\u0002\u0f8f\u0f90\u0007",
- "\u01a6\u0002\u0002\u0f90\u0f91\u0005\u03c6\u01e4\u0002\u0f91\u0f95\u0007",
- "\u0179\u0002\u0002\u0f92\u0f93\u0007\u016e\u0002\u0002\u0f93\u0f94\u0007",
- "\u032a\u0002\u0002\u0f94\u0f96\u0005\u03c6\u01e4\u0002\u0f95\u0f92\u0003",
- "\u0002\u0002\u0002\u0f95\u0f96\u0003\u0002\u0002\u0002\u0f96\u0f9b\u0003",
- "\u0002\u0002\u0002\u0f97\u0f98\u0007\u033e\u0002\u0002\u0f98\u0f99\u0007",
- "\f\u0002\u0002\u0f99\u0f9a\u0007\u032a\u0002\u0002\u0f9a\u0f9c\t\t\u0002",
- "\u0002\u0f9b\u0f97\u0003\u0002\u0002\u0002\u0f9b\u0f9c\u0003\u0002\u0002",
- "\u0002\u0f9c\u0155\u0003\u0002\u0002\u0002\u0f9d\u0f9e\u0007I\u0002",
- "\u0002\u0f9e\u0f9f\u0007\u02a7\u0002\u0002\u0f9f\u0fa0\u0007\u0136\u0002",
- "\u0002\u0fa0\u0fa1\u0007\u01a6\u0002\u0002\u0fa1\u0fa4\u0005\u03c6\u01e4",
- "\u0002\u0fa2\u0fa3\u0007\u0014\u0002\u0002\u0fa3\u0fa5\u0005\u03c6\u01e4",
- "\u0002\u0fa4\u0fa2\u0003\u0002\u0002\u0002\u0fa4\u0fa5\u0003\u0002\u0002",
- "\u0002\u0fa5\u0fa6\u0003\u0002\u0002\u0002\u0fa6\u0fa7\u0007\u015a\u0002",
- "\u0002\u0fa7\u0fa8\u0007\u0136\u0002\u0002\u0fa8\u0fa9\u0007\u0326\u0002",
- "\u0002\u0fa9\u0fad\u0007\u0179\u0002\u0002\u0faa\u0fab\u0007\u016e\u0002",
- "\u0002\u0fab\u0fac\u0007\u032a\u0002\u0002\u0fac\u0fae\u0005\u03c6\u01e4",
- "\u0002\u0fad\u0faa\u0003\u0002\u0002\u0002\u0fad\u0fae\u0003\u0002\u0002",
- "\u0002\u0fae\u0fb3\u0003\u0002\u0002\u0002\u0faf\u0fb0\u0007\u033e\u0002",
- "\u0002\u0fb0\u0fb1\u0007\f\u0002\u0002\u0fb1\u0fb2\u0007\u032a\u0002",
- "\u0002\u0fb2\u0fb4\t\t\u0002\u0002\u0fb3\u0faf\u0003\u0002\u0002\u0002",
- "\u0fb3\u0fb4\u0003\u0002\u0002\u0002\u0fb4\u0157\u0003\u0002\u0002\u0002",
- "\u0fb5\u0fb6\u0007I\u0002\u0002\u0fb6\u0fb7\u0007\u02b2\u0002\u0002",
- "\u0fb7\u0fb8\u0007\u0285\u0002\u0002\u0fb8\u101f\u0005\u03c6\u01e4\u0002",
- "\u0fb9\u0fba\u0007\u0179\u0002\u0002\u0fba\u0fc1\u0007\u033c\u0002\u0002",
- "\u0fbb\u0fbd\u0007\u033e\u0002\u0002\u0fbc\u0fbb\u0003\u0002\u0002\u0002",
- "\u0fbc\u0fbd\u0003\u0002\u0002\u0002\u0fbd\u0fbe\u0003\u0002\u0002\u0002",
- "\u0fbe\u0fbf\u0007\u0253\u0002\u0002\u0fbf\u0fc0\u0007\u032a\u0002\u0002",
- "\u0fc0\u0fc2\u0007\u0322\u0002\u0002\u0fc1\u0fbc\u0003\u0002\u0002\u0002",
- "\u0fc1\u0fc2\u0003\u0002\u0002\u0002\u0fc2\u0fc9\u0003\u0002\u0002\u0002",
- "\u0fc3\u0fc5\u0007\u033e\u0002\u0002\u0fc4\u0fc3\u0003\u0002\u0002\u0002",
- "\u0fc4\u0fc5\u0003\u0002\u0002\u0002\u0fc5\u0fc6\u0003\u0002\u0002\u0002",
- "\u0fc6\u0fc7\u0007\u0242\u0002\u0002\u0fc7\u0fc8\u0007\u032a\u0002\u0002",
- "\u0fc8\u0fca\u0007\u0322\u0002\u0002\u0fc9\u0fc4\u0003\u0002\u0002\u0002",
- "\u0fc9\u0fca\u0003\u0002\u0002\u0002\u0fca\u0fd1\u0003\u0002\u0002\u0002",
- "\u0fcb\u0fcd\u0007\u033e\u0002\u0002\u0fcc\u0fcb\u0003\u0002\u0002\u0002",
- "\u0fcc\u0fcd\u0003\u0002\u0002\u0002\u0fcd\u0fce\u0003\u0002\u0002\u0002",
- "\u0fce\u0fcf\u0007\u01ac\u0002\u0002\u0fcf\u0fd0\u0007\u032a\u0002\u0002",
- "\u0fd0\u0fd2\u0007\u0322\u0002\u0002\u0fd1\u0fcc\u0003\u0002\u0002\u0002",
- "\u0fd1\u0fd2\u0003\u0002\u0002\u0002\u0fd2\u0ffc\u0003\u0002\u0002\u0002",
- "\u0fd3\u0fd5\u0007\u033e\u0002\u0002\u0fd4\u0fd3\u0003\u0002\u0002\u0002",
- "\u0fd4\u0fd5\u0003\u0002\u0002\u0002\u0fd5\u0fd6\u0003\u0002\u0002\u0002",
- "\u0fd6\u0fd7\u0007\u0187\u0002\u0002\u0fd7\u0fd8\u0007\u012d\u0002\u0002",
- "\u0fd8\u0ffa\u0007\u032a\u0002\u0002\u0fd9\u0ffb\u0007\u0198\u0002\u0002",
- "\u0fda\u0fe4\u0007\u033c\u0002\u0002\u0fdb\u0fdd\u0007\u033e\u0002\u0002",
- "\u0fdc\u0fdb\u0003\u0002\u0002\u0002\u0fdc\u0fdd\u0003\u0002\u0002\u0002",
- "\u0fdd\u0fe2\u0003\u0002\u0002\u0002\u0fde\u0fe3\u0007\u0322\u0002\u0002",
- "\u0fdf\u0fe0\u0007\u0322\u0002\u0002\u0fe0\u0fe1\u0007\u015a\u0002\u0002",
- "\u0fe1\u0fe3\u0007\u0322\u0002\u0002\u0fe2\u0fde\u0003\u0002\u0002\u0002",
- "\u0fe2\u0fdf\u0003\u0002\u0002\u0002\u0fe3\u0fe5\u0003\u0002\u0002\u0002",
- "\u0fe4\u0fdc\u0003\u0002\u0002\u0002\u0fe5\u0fe6\u0003\u0002\u0002\u0002",
- "\u0fe6\u0fe4\u0003\u0002\u0002\u0002\u0fe6\u0fe7\u0003\u0002\u0002\u0002",
- "\u0fe7\u0fe8\u0003\u0002\u0002\u0002\u0fe8\u0ffb\u0007\u033d\u0002\u0002",
- "\u0fe9\u0fea\u0007\u026e\u0002\u0002\u0fea\u0feb\u0007\u032a\u0002\u0002",
- "\u0feb\u0ff5\u0007\u033c\u0002\u0002\u0fec\u0fee\u0007\u033e\u0002\u0002",
- "\u0fed\u0fec\u0003\u0002\u0002\u0002\u0fed\u0fee\u0003\u0002\u0002\u0002",
- "\u0fee\u0ff3\u0003\u0002\u0002\u0002\u0fef\u0ff4\u0007\u0322\u0002\u0002",
- "\u0ff0\u0ff1\u0007\u0322\u0002\u0002\u0ff1\u0ff2\u0007\u015a\u0002\u0002",
- "\u0ff2\u0ff4\u0007\u0322\u0002\u0002\u0ff3\u0fef\u0003\u0002\u0002\u0002",
- "\u0ff3\u0ff0\u0003\u0002\u0002\u0002\u0ff4\u0ff6\u0003\u0002\u0002\u0002",
- "\u0ff5\u0fed\u0003\u0002\u0002\u0002\u0ff6\u0ff7\u0003\u0002\u0002\u0002",
- "\u0ff7\u0ff5\u0003\u0002\u0002\u0002\u0ff7\u0ff8\u0003\u0002\u0002\u0002",
- "\u0ff8\u0ff9\u0003\u0002\u0002\u0002\u0ff9\u0ffb\u0007\u033d\u0002\u0002",
- "\u0ffa\u0fd9\u0003\u0002\u0002\u0002\u0ffa\u0fda\u0003\u0002\u0002\u0002",
- "\u0ffa\u0fe9\u0003\u0002\u0002\u0002\u0ffb\u0ffd\u0003\u0002\u0002\u0002",
- "\u0ffc\u0fd4\u0003\u0002\u0002\u0002\u0ffc\u0ffd\u0003\u0002\u0002\u0002",
- "\u0ffd\u1004\u0003\u0002\u0002\u0002\u0ffe\u1000\u0007\u033e\u0002\u0002",
- "\u0fff\u0ffe\u0003\u0002\u0002\u0002\u0fff\u1000\u0003\u0002\u0002\u0002",
- "\u1000\u1001\u0003\u0002\u0002\u0002\u1001\u1002\u0007\u0255\u0002\u0002",
- "\u1002\u1003\u0007\u032a\u0002\u0002\u1003\u1005\u0007\u0322\u0002\u0002",
- "\u1004\u0fff\u0003\u0002\u0002\u0002\u1004\u1005\u0003\u0002\u0002\u0002",
- "\u1005\u100c\u0003\u0002\u0002\u0002\u1006\u1008\u0007\u033e\u0002\u0002",
- "\u1007\u1006\u0003\u0002\u0002\u0002\u1007\u1008\u0003\u0002\u0002\u0002",
- "\u1008\u1009\u0003\u0002\u0002\u0002\u1009\u100a\u0007\u0246\u0002\u0002",
- "\u100a\u100b\u0007\u032a\u0002\u0002\u100b\u100d\u0007\u0322\u0002\u0002",
- "\u100c\u1007\u0003\u0002\u0002\u0002\u100c\u100d\u0003\u0002\u0002\u0002",
- "\u100d\u1014\u0003\u0002\u0002\u0002\u100e\u1010\u0007\u033e\u0002\u0002",
- "\u100f\u100e\u0003\u0002\u0002\u0002\u100f\u1010\u0003\u0002\u0002\u0002",
- "\u1010\u1011\u0003\u0002\u0002\u0002\u1011\u1012\u0007\u0254\u0002\u0002",
- "\u1012\u1013\u0007\u032a\u0002\u0002\u1013\u1015\u0007\u0322\u0002\u0002",
- "\u1014\u100f\u0003\u0002\u0002\u0002\u1014\u1015\u0003\u0002\u0002\u0002",
- "\u1015\u101c\u0003\u0002\u0002\u0002\u1016\u1018\u0007\u033e\u0002\u0002",
- "\u1017\u1016\u0003\u0002\u0002\u0002\u1017\u1018\u0003\u0002\u0002\u0002",
- "\u1018\u1019\u0003\u0002\u0002\u0002\u1019\u101a\u0007\u0245\u0002\u0002",
- "\u101a\u101b\u0007\u032a\u0002\u0002\u101b\u101d\u0007\u0322\u0002\u0002",
- "\u101c\u1017\u0003\u0002\u0002\u0002\u101c\u101d\u0003\u0002\u0002\u0002",
- "\u101d\u101e\u0003\u0002\u0002\u0002\u101e\u1020\u0007\u033d\u0002\u0002",
- "\u101f\u0fb9\u0003\u0002\u0002\u0002\u101f\u1020\u0003\u0002\u0002\u0002",
- "\u1020\u0159\u0003\u0002\u0002\u0002\u1021\u1022\u0007\n\u0002\u0002",
- "\u1022\u1023\u0007\u02b2\u0002\u0002\u1023\u1039\u0007\u0090\u0002\u0002",
- "\u1024\u103a\t%\u0002\u0002\u1025\u1026\u0007\u0179\u0002\u0002\u1026",
- "\u1027\u0007\u033c\u0002\u0002\u1027\u1028\u00072\u0002\u0002\u1028",
- "\u102e\u0007\u032a\u0002\u0002\u1029\u102a\u0005\u03c6\u01e4\u0002\u102a",
- "\u102b\u0007\u0337\u0002\u0002\u102b\u102c\u0005\u03c6\u01e4\u0002\u102c",
- "\u102f\u0003\u0002\u0002\u0002\u102d\u102f\u0007\u00df\u0002\u0002\u102e",
- "\u1029\u0003\u0002\u0002\u0002\u102e\u102d\u0003\u0002\u0002\u0002\u102f",
- "\u1030\u0003\u0002\u0002\u0002\u1030\u103a\u0007\u033d\u0002\u0002\u1031",
- "\u1032\u0007\u0114\u0002\u0002\u1032\u103a\u0007\u0148\u0002\u0002\u1033",
- "\u1034\u0007\u0179\u0002\u0002\u1034\u1035\u0007\u033c\u0002\u0002\u1035",
- "\u1036\u0007\u00c4\u0002\u0002\u1036\u1037\u0007\u032a\u0002\u0002\u1037",
- "\u1038\u0007\u0322\u0002\u0002\u1038\u103a\u0007\u033d\u0002\u0002\u1039",
- "\u1024\u0003\u0002\u0002\u0002\u1039\u1025\u0003\u0002\u0002\u0002\u1039",
- "\u1031\u0003\u0002\u0002\u0002\u1039\u1033\u0003\u0002\u0002\u0002\u103a",
- "\u015b\u0003\u0002\u0002\u0002\u103b\u103c\u0007\n\u0002\u0002\u103c",
- "\u103d\u0007\u0121\u0002\u0002\u103d\u1045\u0005\u03c6\u01e4\u0002\u103e",
- "\u103f\t\u0015\u0002\u0002\u103f\u1040\u0007\u00c7\u0002\u0002\u1040",
- "\u1046\u0005\u03c6\u01e4\u0002\u1041\u1042\u0007\u0179\u0002\u0002\u1042",
- "\u1043\u0007\u025d\u0002\u0002\u1043\u1044\u0007\u032a\u0002\u0002\u1044",
- "\u1046\u0005\u03c6\u01e4\u0002\u1045\u103e\u0003\u0002\u0002\u0002\u1045",
- "\u1041\u0003\u0002\u0002\u0002\u1046\u015d\u0003\u0002\u0002\u0002\u1047",
- "\u1048\u0007I\u0002\u0002\u1048\u1049\u0007\u0121\u0002\u0002\u1049",
- "\u104c\u0005\u03c6\u01e4\u0002\u104a\u104b\u0007\u0014\u0002\u0002\u104b",
- "\u104d\u0005\u03c6\u01e4\u0002\u104c\u104a\u0003\u0002\u0002\u0002\u104c",
- "\u104d\u0003\u0002\u0002\u0002\u104d\u015f\u0003\u0002\u0002\u0002\u104e",
- "\u104f\u0007I\u0002\u0002\u104f\u1050\u0007\u02b8\u0002\u0002\u1050",
- "\u1053\u0005\u03c6\u01e4\u0002\u1051\u1052\u0007\u0014\u0002\u0002\u1052",
- "\u1054\u0005\u03c6\u01e4\u0002\u1053\u1051\u0003\u0002\u0002\u0002\u1053",
- "\u1054\u0003\u0002\u0002\u0002\u1054\u1055\u0003\u0002\u0002\u0002\u1055",
- "\u105c\u0007\u0179\u0002\u0002\u1056\u1058\u0007\u033e\u0002\u0002\u1057",
- "\u1056\u0003\u0002\u0002\u0002\u1057\u1058\u0003\u0002\u0002\u0002\u1058",
- "\u1059\u0003\u0002\u0002\u0002\u1059\u105a\u0007\u0138\u0002\u0002\u105a",
- "\u105b\u0007\u032a\u0002\u0002\u105b\u105d\u0007\u0326\u0002\u0002\u105c",
- "\u1057\u0003\u0002\u0002\u0002\u105c\u105d\u0003\u0002\u0002\u0002\u105d",
- "\u1064\u0003\u0002\u0002\u0002\u105e\u1060\u0007\u033e\u0002\u0002\u105f",
- "\u105e\u0003\u0002\u0002\u0002\u105f\u1060\u0003\u0002\u0002\u0002\u1060",
- "\u1061\u0003\u0002\u0002\u0002\u1061\u1062\u0007\u01a9\u0002\u0002\u1062",
- "\u1063\u0007\u032a\u0002\u0002\u1063\u1065\u0007\u0326\u0002\u0002\u1064",
- "\u105f\u0003\u0002\u0002\u0002\u1064\u1065\u0003\u0002\u0002\u0002\u1065",
- "\u106c\u0003\u0002\u0002\u0002\u1066\u1068\u0007\u033e\u0002\u0002\u1067",
- "\u1066\u0003\u0002\u0002\u0002\u1067\u1068\u0003\u0002\u0002\u0002\u1068",
- "\u1069\u0003\u0002\u0002\u0002\u1069\u106a\u0007\u00b3\u0002\u0002\u106a",
- "\u106b\u0007\u032a\u0002\u0002\u106b\u106d\u0007\u0322\u0002\u0002\u106c",
- "\u1067\u0003\u0002\u0002\u0002\u106c\u106d\u0003\u0002\u0002\u0002\u106d",
- "\u106f\u0003\u0002\u0002\u0002\u106e\u1070\u0007\u033e\u0002\u0002\u106f",
- "\u106e\u0003\u0002\u0002\u0002\u106f\u1070\u0003\u0002\u0002\u0002\u1070",
- "\u1071\u0003\u0002\u0002\u0002\u1071\u1072\u0007\u0183\u0002\u0002\u1072",
- "\u1073\u0007\u032a\u0002\u0002\u1073\u1078\t&\u0002\u0002\u1074\u1075",
- "\u0007\u033e\u0002\u0002\u1075\u1076\u0007\u0257\u0002\u0002\u1076\u1077",
- "\u0007\u032a\u0002\u0002\u1077\u1079\t&\u0002\u0002\u1078\u1074\u0003",
- "\u0002\u0002\u0002\u1078\u1079\u0003\u0002\u0002\u0002\u1079\u0161\u0003",
- "\u0002\u0002\u0002\u107a\u107b\u0007I\u0002\u0002\u107b\u107f\u0007",
- "\u012a\u0002\u0002\u107c\u107d\u0005\u03c6\u01e4\u0002\u107d\u107e\u0007",
- "\u0337\u0002\u0002\u107e\u1080\u0003\u0002\u0002\u0002\u107f\u107c\u0003",
- "\u0002\u0002\u0002\u107f\u1080\u0003\u0002\u0002\u0002\u1080\u1081\u0003",
- "\u0002\u0002\u0002\u1081\u1082\u0005\u03c6\u01e4\u0002\u1082\u1083\u0007",
- "\u0010\u0002\u0002\u1083\u1084\u0005\u02ee\u0178\u0002\u1084\u0163\u0003",
- "\u0002\u0002\u0002\u1085\u1086\u0007\n\u0002\u0002\u1086\u1087\u0007",
- "\u012e\u0002\u0002\u1087\u1088\u0005\u03c6\u01e4\u0002\u1088\u1092\u0007",
- "\u015f\u0002\u0002\u1089\u108f\u0007\u0271\u0002\u0002\u108a\u108f\u0007",
- "\u0301\u0002\u0002\u108b\u108c\u0007\u0315\u0002\u0002\u108c\u108d\u0007",
- "\u012e\u0002\u0002\u108d\u108f\u0007\u01b5\u0002\u0002\u108e\u1089\u0003",
- "\u0002\u0002\u0002\u108e\u108a\u0003\u0002\u0002\u0002\u108e\u108b\u0003",
- "\u0002\u0002\u0002\u108f\u1090\u0003\u0002\u0002\u0002\u1090\u1091\u0007",
- "\u0340\u0002\u0002\u1091\u1093\u0007\u0340\u0002\u0002\u1092\u108e\u0003",
- "\u0002\u0002\u0002\u1092\u1093\u0003\u0002\u0002\u0002\u1093\u1094\u0003",
- "\u0002\u0002\u0002\u1094\u1097\u0005\u03c6\u01e4\u0002\u1095\u1096\u0007",
- "\u0337\u0002\u0002\u1096\u1098\u0005\u03c6\u01e4\u0002\u1097\u1095\u0003",
- "\u0002\u0002\u0002\u1097\u1098\u0003\u0002\u0002\u0002\u1098\u0165\u0003",
- "\u0002\u0002\u0002\u1099\u109a\u0007I\u0002\u0002\u109a\u10a2\u0007",
- "\u012e\u0002\u0002\u109b\u10a3\u0005\u03c6\u01e4\u0002\u109c\u109d\u0007",
- "\u0014\u0002\u0002\u109d\u10a3\u0005\u03c6\u01e4\u0002\u109e\u109f\u0005",
- "\u03c6\u01e4\u0002\u109f\u10a0\u0007\u0014\u0002\u0002\u10a0\u10a1\u0005",
- "\u03c6\u01e4\u0002\u10a1\u10a3\u0003\u0002\u0002\u0002\u10a2\u109b\u0003",
- "\u0002\u0002\u0002\u10a2\u109c\u0003\u0002\u0002\u0002\u10a2\u109e\u0003",
- "\u0002\u0002\u0002\u10a3\u10c0\u0003\u0002\u0002\u0002\u10a4\u10bf\u0005",
- "\u01ee\u00f8\u0002\u10a5\u10bf\u0005\u01f2\u00fa\u0002\u10a6\u10a7\t",
- "\'\u0002\u0002\u10a7\u10a8\t(\u0002\u0002\u10a8\u10ac\u0007\u00e5\u0002",
- "\u0002\u10a9\u10aa\u0007\u012e\u0002\u0002\u10aa\u10ab\u0007\u0340\u0002",
- "\u0002\u10ab\u10ad\u0007\u0340\u0002\u0002\u10ac\u10a9\u0003\u0002\u0002",
- "\u0002\u10ac\u10ad\u0003\u0002\u0002\u0002\u10ad\u10ae\u0003\u0002\u0002",
- "\u0002\u10ae\u10af\u0005\u03c6\u01e4\u0002\u10af\u10b0\u0007\u015a\u0002",
- "\u0002\u10b0\u10b1\u0005\u03c6\u01e4\u0002\u10b1\u10bf\u0003\u0002\u0002",
- "\u0002\u10b2\u10b3\u0007\u011d\u0002\u0002\u10b3\u10b4\t(\u0002\u0002",
- "\u10b4\u10b8\u0007\u00e5\u0002\u0002\u10b5\u10b6\u0007\u012e\u0002\u0002",
- "\u10b6\u10b7\u0007\u0340\u0002\u0002\u10b7\u10b9\u0007\u0340\u0002\u0002",
- "\u10b8\u10b5\u0003\u0002\u0002\u0002\u10b8\u10b9\u0003\u0002\u0002\u0002",
- "\u10b9\u10ba\u0003\u0002\u0002\u0002\u10ba\u10bb\u0005\u03c6\u01e4\u0002",
- "\u10bb\u10bc\u0007\u008b\u0002\u0002\u10bc\u10bd\u0005\u03c6\u01e4\u0002",
- "\u10bd\u10bf\u0003\u0002\u0002\u0002\u10be\u10a4\u0003\u0002\u0002\u0002",
- "\u10be\u10a5\u0003\u0002\u0002\u0002\u10be\u10a6\u0003\u0002\u0002\u0002",
- "\u10be\u10b2\u0003\u0002\u0002\u0002\u10bf\u10c2\u0003\u0002\u0002\u0002",
- "\u10c0\u10be\u0003\u0002\u0002\u0002\u10c0\u10c1\u0003\u0002\u0002\u0002",
- "\u10c1\u0167\u0003\u0002\u0002\u0002\u10c2\u10c0\u0003\u0002\u0002\u0002",
- "\u10c3\u10c4\u0007I\u0002\u0002\u10c4\u10c5\u0007\u012e\u0002\u0002",
- "\u10c5\u10c8\u0005\u03c6\u01e4\u0002\u10c6\u10c7\u0007\u0014\u0002\u0002",
- "\u10c7\u10c9\u0005\u03c6\u01e4\u0002\u10c8\u10c6\u0003\u0002\u0002\u0002",
- "\u10c8\u10c9\u0003\u0002\u0002\u0002\u10c9\u0169\u0003\u0002\u0002\u0002",
- "\u10ca\u10cb\u0007\n\u0002\u0002\u10cb\u10cc\u0007\u012e\u0002\u0002",
- "\u10cc\u10cd\u0005\u03c6\u01e4\u0002\u10cd\u10d1\u0007\u015f\u0002\u0002",
- "\u10ce\u10cf\u0007\u0271\u0002\u0002\u10cf\u10d0\u0007\u0340\u0002\u0002",
- "\u10d0\u10d2\u0007\u0340\u0002\u0002\u10d1\u10ce\u0003\u0002\u0002\u0002",
- "\u10d1\u10d2\u0003\u0002\u0002\u0002\u10d2\u10d3\u0003\u0002\u0002\u0002",
- "\u10d3\u10d6\u0005\u03c6\u01e4\u0002\u10d4\u10d5\u0007\u0337\u0002\u0002",
- "\u10d5\u10d7\u0007\u0323\u0002\u0002\u10d6\u10d4\u0003\u0002\u0002\u0002",
- "\u10d6\u10d7\u0003\u0002\u0002\u0002\u10d7\u016b\u0003\u0002\u0002\u0002",
- "\u10d8\u10d9\u0007I\u0002\u0002\u10d9\u10da\u0007\u02c2\u0002\u0002",
- "\u10da\u10db\u0007\u0290\u0002\u0002\u10db\u10dc\u0007\u0233\u0002\u0002",
- "\u10dc\u10e4\u0005\u03c6\u01e4\u0002\u10dd\u10e1\u0007\u008b\u0002\u0002",
- "\u10de\u10df\u0005\u03c6\u01e4\u0002\u10df\u10e0\u0007\u0337\u0002\u0002",
- "\u10e0\u10e2\u0003\u0002\u0002\u0002\u10e1\u10de\u0003\u0002\u0002\u0002",
- "\u10e1\u10e2\u0003\u0002\u0002\u0002\u10e2\u10e3\u0003\u0002\u0002\u0002",
- "\u10e3\u10e5\u0005\u03c6\u01e4\u0002\u10e4\u10dd\u0003\u0002\u0002\u0002",
- "\u10e4\u10e5\u0003\u0002\u0002\u0002\u10e5\u10e8\u0003\u0002\u0002\u0002",
- "\u10e6\u10e7\u0007\u0014\u0002\u0002\u10e7\u10e9\u0005\u03c6\u01e4\u0002",
- "\u10e8\u10e6\u0003\u0002\u0002\u0002\u10e8\u10e9\u0003\u0002\u0002\u0002",
- "\u10e9\u016d\u0003\u0002\u0002\u0002\u10ea\u10eb\u0007I\u0002\u0002",
- "\u10eb\u10ec\u0007\u02c8\u0002\u0002\u10ec\u10f0\u0007\u00fd\u0002\u0002",
- "\u10ed\u10ee\u0005\u03c6\u01e4\u0002\u10ee\u10ef\u0007\u0337\u0002\u0002",
- "\u10ef\u10f1\u0003\u0002\u0002\u0002\u10f0\u10ed\u0003\u0002\u0002\u0002",
- "\u10f0\u10f1\u0003\u0002\u0002\u0002\u10f1\u10f2\u0003\u0002\u0002\u0002",
- "\u10f2\u111b\u0005\u03c6\u01e4\u0002\u10f3\u10f5\u0007\u033e\u0002\u0002",
- "\u10f4\u10f3\u0003\u0002\u0002\u0002\u10f4\u10f5\u0003\u0002\u0002\u0002",
- "\u10f5\u10f6\u0003\u0002\u0002\u0002\u10f6\u10f8\u0007\u0004\u0002\u0002",
- "\u10f7\u10f9\t)\u0002\u0002\u10f8\u10f7\u0003\u0002\u0002\u0002\u10f8",
- "\u10f9\u0003\u0002\u0002\u0002\u10f9\u10fa\u0003\u0002\u0002\u0002\u10fa",
- "\u10fb\u0007\u00ff\u0002\u0002\u10fb\u10fc\u0005\u03c6\u01e4\u0002\u10fc",
- "\u10fd\u0007\u0337\u0002\u0002\u10fd\u10fe\u0005\u03c6\u01e4\u0002\u10fe",
- "\u1103\u0007\u033c\u0002\u0002\u10ff\u1101\u0007\u033e\u0002\u0002\u1100",
- "\u10ff\u0003\u0002\u0002\u0002\u1100\u1101\u0003\u0002\u0002\u0002\u1101",
- "\u1102\u0003\u0002\u0002\u0002\u1102\u1104\u0005\u03c6\u01e4\u0002\u1103",
- "\u1100\u0003\u0002\u0002\u0002\u1104\u1105\u0003\u0002\u0002\u0002\u1105",
- "\u1103\u0003\u0002\u0002\u0002\u1105\u1106\u0003\u0002\u0002\u0002\u1106",
- "\u1107\u0003\u0002\u0002\u0002\u1107\u1108\u0007\u033d\u0002\u0002\u1108",
- "\u1109\u0007\u00e5\u0002\u0002\u1109\u110a\u0005\u03c6\u01e4\u0002\u110a",
- "\u110b\u0007\u0337\u0002\u0002\u110b\u1118\u0005\u03c6\u01e4\u0002\u110c",
- "\u110e\u0007\u033e\u0002\u0002\u110d\u110c\u0003\u0002\u0002\u0002\u110d",
- "\u110e\u0003\u0002\u0002\u0002\u110e\u110f\u0003\u0002\u0002\u0002\u110f",
- "\u1110\u0007\u0188\u0002\u0002\u1110\u1117\t*\u0002\u0002\u1111\u1113",
- "\u0007\u033e\u0002\u0002\u1112\u1111\u0003\u0002\u0002\u0002\u1112\u1113",
- "\u0003\u0002\u0002\u0002\u1113\u1114\u0003\u0002\u0002\u0002\u1114\u1115",
- "\u0007\u001b\u0002\u0002\u1115\u1117\t+\u0002\u0002\u1116\u110d\u0003",
- "\u0002\u0002\u0002\u1116\u1112\u0003\u0002\u0002\u0002\u1117\u111a\u0003",
- "\u0002\u0002\u0002\u1118\u1116\u0003\u0002\u0002\u0002\u1118\u1119\u0003",
- "\u0002\u0002\u0002\u1119\u111c\u0003\u0002\u0002\u0002\u111a\u1118\u0003",
- "\u0002\u0002\u0002\u111b\u10f4\u0003\u0002\u0002\u0002\u111c\u111d\u0003",
- "\u0002\u0002\u0002\u111d\u111b\u0003\u0002\u0002\u0002\u111d\u111e\u0003",
- "\u0002\u0002\u0002\u111e\u1129\u0003\u0002\u0002\u0002\u111f\u1120\u0007",
- "\u0179\u0002\u0002\u1120\u1121\u0007\u033c\u0002\u0002\u1121\u1122\u0007",
- "\u0149\u0002\u0002\u1122\u1123\u0007\u032a\u0002\u0002\u1123\u1126\t",
- "\t\u0002\u0002\u1124\u1125\u0007\u02be\u0002\u0002\u1125\u1127\t\t\u0002",
- "\u0002\u1126\u1124\u0003\u0002\u0002\u0002\u1126\u1127\u0003\u0002\u0002",
- "\u0002\u1127\u1128\u0003\u0002\u0002\u0002\u1128\u112a\u0007\u033d\u0002",
- "\u0002\u1129\u111f\u0003\u0002\u0002\u0002\u1129\u112a\u0003\u0002\u0002",
- "\u0002\u112a\u112e\u0003\u0002\u0002\u0002\u112b\u112c\u0007\u00dc\u0002",
- "\u0002\u112c\u112d\u0007\u0085\u0002\u0002\u112d\u112f\u0007\u0112\u0002",
- "\u0002\u112e\u112b\u0003\u0002\u0002\u0002\u112e\u112f\u0003\u0002\u0002",
- "\u0002\u112f\u016f\u0003\u0002\u0002\u0002\u1130\u1131\u0007\n\u0002",
- "\u0002\u1131\u1135\u0007\u02cf\u0002\u0002\u1132\u1133\u0005\u03c6\u01e4",
- "\u0002\u1133\u1134\u0007\u0337\u0002\u0002\u1134\u1136\u0003\u0002\u0002",
- "\u0002\u1135\u1132\u0003\u0002\u0002\u0002\u1135\u1136\u0003\u0002\u0002",
- "\u0002\u1136\u1137\u0003\u0002\u0002\u0002\u1137\u113d\u0005\u03c6\u01e4",
- "\u0002\u1138\u113b\u0007\u0115\u0002\u0002\u1139\u113a\u0007\u0179\u0002",
- "\u0002\u113a\u113c\u0007\u0322\u0002\u0002\u113b\u1139\u0003\u0002\u0002",
- "\u0002\u113b\u113c\u0003\u0002\u0002\u0002\u113c\u113e\u0003\u0002\u0002",
- "\u0002\u113d\u1138\u0003\u0002\u0002\u0002\u113d\u113e\u0003\u0002\u0002",
- "\u0002\u113e\u1142\u0003\u0002\u0002\u0002\u113f\u1140\u0007\u009d\u0002",
- "\u0002\u1140\u1141\u0007&\u0002\u0002\u1141\u1143\u0007\u0322\u0002",
- "\u0002\u1142\u113f\u0003\u0002\u0002\u0002\u1142\u1143\u0003\u0002\u0002",
- "\u0002\u1143\u1148\u0003\u0002\u0002\u0002\u1144\u1145\u0007\u00cc\u0002",
- "\u0002\u1145\u1149\u0007\u0322\u0002\u0002\u1146\u1147\u0007\u0263\u0002",
- "\u0002\u1147\u1149\u0007\u00cc\u0002\u0002\u1148\u1144\u0003\u0002\u0002",
- "\u0002\u1148\u1146\u0003\u0002\u0002\u0002\u1148\u1149\u0003\u0002\u0002",
- "\u0002\u1149\u114e\u0003\u0002\u0002\u0002\u114a\u114b\u0007\u00c0\u0002",
- "\u0002\u114b\u114f\u0007\u0322\u0002\u0002\u114c\u114d\u0007\u0263\u0002",
- "\u0002\u114d\u114f\u0007\u00c0\u0002\u0002\u114e\u114a\u0003\u0002\u0002",
- "\u0002\u114e\u114c\u0003\u0002\u0002\u0002\u114e\u114f\u0003\u0002\u0002",
- "\u0002\u114f\u1153\u0003\u0002\u0002\u0002\u1150\u1154\u0007Q\u0002",
- "\u0002\u1151\u1152\u0007\u0263\u0002\u0002\u1152\u1154\u0007Q\u0002",
- "\u0002\u1153\u1150\u0003\u0002\u0002\u0002\u1153\u1151\u0003\u0002\u0002",
- "\u0002\u1153\u1154\u0003\u0002\u0002\u0002\u1154\u1159\u0003\u0002\u0002",
- "\u0002\u1155\u1156\u0007\'\u0002\u0002\u1156\u115a\u0007\u0322\u0002",
- "\u0002\u1157\u1158\u0007\u0263\u0002\u0002\u1158\u115a\u0007\'\u0002",
- "\u0002\u1159\u1155\u0003\u0002\u0002\u0002\u1159\u1157\u0003\u0002\u0002",
- "\u0002\u1159\u115a\u0003\u0002\u0002\u0002\u115a\u0171\u0003\u0002\u0002",
- "\u0002\u115b\u115c\u0007I\u0002\u0002\u115c\u1160\u0007\u02cf\u0002",
- "\u0002\u115d\u115e\u0005\u03c6\u01e4\u0002\u115e\u115f\u0007\u0337\u0002",
- "\u0002\u115f\u1161\u0003\u0002\u0002\u0002\u1160\u115d\u0003\u0002\u0002",
- "\u0002\u1160\u1161\u0003\u0002\u0002\u0002\u1161\u1162\u0003\u0002\u0002",
- "\u0002\u1162\u1165\u0005\u03c6\u01e4\u0002\u1163\u1164\u0007\u0010\u0002",
- "\u0002\u1164\u1166\u0005\u03be\u01e0\u0002\u1165\u1163\u0003\u0002\u0002",
- "\u0002\u1165\u1166\u0003\u0002\u0002\u0002\u1166\u116a\u0003\u0002\u0002",
- "\u0002\u1167\u1168\u0007\u014b\u0002\u0002\u1168\u1169\u0007\u0179\u0002",
- "\u0002\u1169\u116b\u0007\u0322\u0002\u0002\u116a\u1167\u0003\u0002\u0002",
- "\u0002\u116a\u116b\u0003\u0002\u0002\u0002\u116b\u1172\u0003\u0002\u0002",
- "\u0002\u116c\u116d\u0007\u009d\u0002\u0002\u116d\u116f\u0007&\u0002",
- "\u0002\u116e\u1170\u0007\u0345\u0002\u0002\u116f\u116e\u0003\u0002\u0002",
- "\u0002\u116f\u1170\u0003\u0002\u0002\u0002\u1170\u1171\u0003\u0002\u0002",
- "\u0002\u1171\u1173\u0007\u0322\u0002\u0002\u1172\u116c\u0003\u0002\u0002",
- "\u0002\u1172\u1173\u0003\u0002\u0002\u0002\u1173\u117a\u0003\u0002\u0002",
- "\u0002\u1174\u1176\u0007\u00cc\u0002\u0002\u1175\u1177\u0007\u0322\u0002",
- "\u0002\u1176\u1175\u0003\u0002\u0002\u0002\u1176\u1177\u0003\u0002\u0002",
- "\u0002\u1177\u117b\u0003\u0002\u0002\u0002\u1178\u1179\u0007\u0263\u0002",
- "\u0002\u1179\u117b\u0007\u00cc\u0002\u0002\u117a\u1174\u0003\u0002\u0002",
- "\u0002\u117a\u1178\u0003\u0002\u0002\u0002\u117a\u117b\u0003\u0002\u0002",
- "\u0002\u117b\u1182\u0003\u0002\u0002\u0002\u117c\u117e\u0007\u00c0\u0002",
- "\u0002\u117d\u117f\u0007\u0322\u0002\u0002\u117e\u117d\u0003\u0002\u0002",
- "\u0002\u117e\u117f\u0003\u0002\u0002\u0002\u117f\u1183\u0003\u0002\u0002",
- "\u0002\u1180\u1181\u0007\u0263\u0002\u0002\u1181\u1183\u0007\u00c0\u0002",
- "\u0002\u1182\u117c\u0003\u0002\u0002\u0002\u1182\u1180\u0003\u0002\u0002",
- "\u0002\u1182\u1183\u0003\u0002\u0002\u0002\u1183\u1187\u0003\u0002\u0002",
- "\u0002\u1184\u1188\u0007Q\u0002\u0002\u1185\u1186\u0007\u0263\u0002",
- "\u0002\u1186\u1188\u0007Q\u0002\u0002\u1187\u1184\u0003\u0002\u0002",
- "\u0002\u1187\u1185\u0003\u0002\u0002\u0002\u1187\u1188\u0003\u0002\u0002",
- "\u0002\u1188\u118f\u0003\u0002\u0002\u0002\u1189\u118b\u0007\'\u0002",
- "\u0002\u118a\u118c\u0007\u0322\u0002\u0002\u118b\u118a\u0003\u0002\u0002",
- "\u0002\u118b\u118c\u0003\u0002\u0002\u0002\u118c\u1190\u0003\u0002\u0002",
- "\u0002\u118d\u118e\u0007\u0263\u0002\u0002\u118e\u1190\u0007\'\u0002",
- "\u0002\u118f\u1189\u0003\u0002\u0002\u0002\u118f\u118d\u0003\u0002\u0002",
- "\u0002\u118f\u1190\u0003\u0002\u0002\u0002\u1190\u0173\u0003\u0002\u0002",
- "\u0002\u1191\u1192\u0007\n\u0002\u0002\u1192\u1193\u0007\u0135\u0002",
- "\u0002\u1193\u1194\u0007\u0196\u0002\u0002\u1194\u1218\u0005\u03c6\u01e4",
- "\u0002\u1195\u11c2\u0007\u015a\u0002\u0002\u1196\u1197\u0007\u0081\u0002",
- "\u0002\u1197\u11bc\u0007\u033c\u0002\u0002\u1198\u119a\u0007\u033e\u0002",
- "\u0002\u1199\u1198\u0003\u0002\u0002\u0002\u1199\u119a\u0003\u0002\u0002",
- "\u0002\u119a\u119b\u0003\u0002\u0002\u0002\u119b\u119c\u0007\u01fd\u0002",
- "\u0002\u119c\u119d\u0007\u032a\u0002\u0002\u119d\u11bb\u0007\u0326\u0002",
- "\u0002\u119e\u11a0\u0007\u033e\u0002\u0002\u119f\u119e\u0003\u0002\u0002",
- "\u0002\u119f\u11a0\u0003\u0002\u0002\u0002\u11a0\u11a1\u0003\u0002\u0002",
- "\u0002\u11a1\u11a2\u0007\u024c\u0002\u0002\u11a2\u11a6\u0007\u032a\u0002",
- "\u0002\u11a3\u11a4\u0007\u0322\u0002\u0002\u11a4\u11a7\t,\u0002\u0002",
- "\u11a5\u11a7\u0007\u0306\u0002\u0002\u11a6\u11a3\u0003\u0002\u0002\u0002",
- "\u11a6\u11a5\u0003\u0002\u0002\u0002\u11a7\u11bb\u0003\u0002\u0002\u0002",
- "\u11a8\u11aa\u0007\u033e\u0002\u0002\u11a9\u11a8\u0003\u0002\u0002\u0002",
- "\u11a9\u11aa\u0003\u0002\u0002\u0002\u11aa\u11ab\u0003\u0002\u0002\u0002",
- "\u11ab\u11ac\u0007\u0249\u0002\u0002\u11ac\u11ad\u0007\u032a\u0002\u0002",
- "\u11ad\u11bb\t-\u0002\u0002\u11ae\u11b0\u0007\u033e\u0002\u0002\u11af",
- "\u11ae\u0003\u0002\u0002\u0002\u11af\u11b0\u0003\u0002\u0002\u0002\u11b0",
- "\u11b1\u0003\u0002\u0002\u0002\u11b1\u11b2\u0007\u0244\u0002\u0002\u11b2",
- "\u11b3\u0007\u032a\u0002\u0002\u11b3\u11bb\u0007\u0322\u0002\u0002\u11b4",
- "\u11b6\u0007\u033e\u0002\u0002\u11b5\u11b4\u0003\u0002\u0002\u0002\u11b5",
- "\u11b6\u0003\u0002\u0002\u0002\u11b6\u11b7\u0003\u0002\u0002\u0002\u11b7",
- "\u11b8\u0007\u02b1\u0002\u0002\u11b8\u11b9\u0007\u032a\u0002\u0002\u11b9",
- "\u11bb\t\t\u0002\u0002\u11ba\u1199\u0003\u0002\u0002\u0002\u11ba\u119f",
- "\u0003\u0002\u0002\u0002\u11ba\u11a9\u0003\u0002\u0002\u0002\u11ba\u11af",
- "\u0003\u0002\u0002\u0002\u11ba\u11b5\u0003\u0002\u0002\u0002\u11bb\u11be",
- "\u0003\u0002\u0002\u0002\u11bc\u11ba\u0003\u0002\u0002\u0002\u11bc\u11bd",
- "\u0003\u0002\u0002\u0002\u11bd\u11bf\u0003\u0002\u0002\u0002\u11be\u11bc",
- "\u0003\u0002\u0002\u0002\u11bf\u11c3\u0007\u033d\u0002\u0002\u11c0\u11c3",
- "\u0007\u0192\u0002\u0002\u11c1\u11c3\u0007\u02c9\u0002\u0002\u11c2\u1196",
- "\u0003\u0002\u0002\u0002\u11c2\u11c0\u0003\u0002\u0002\u0002\u11c2\u11c1",
- "\u0003\u0002\u0002\u0002\u11c3\u11c5\u0003\u0002\u0002\u0002\u11c4\u1195",
- "\u0003\u0002\u0002\u0002\u11c4\u11c5\u0003\u0002\u0002\u0002\u11c5\u11e0",
- "\u0003\u0002\u0002\u0002\u11c6\u11c7\u0007\u0179\u0002\u0002\u11c7\u11dc",
- "\u0007\u033c\u0002\u0002\u11c8\u11ca\u0007\u033e\u0002\u0002\u11c9\u11c8",
- "\u0003\u0002\u0002\u0002\u11c9\u11ca\u0003\u0002\u0002\u0002\u11ca\u11cb",
- "\u0003\u0002\u0002\u0002\u11cb\u11cc\u0007\u0295\u0002\u0002\u11cc\u11cd",
- "\u0007\u032a\u0002\u0002\u11cd\u11db\u0007\u0322\u0002\u0002\u11ce\u11d0",
- "\u0007\u033e\u0002\u0002\u11cf\u11ce\u0003\u0002\u0002\u0002\u11cf\u11d0",
- "\u0003\u0002\u0002\u0002\u11d0\u11d1\u0003\u0002\u0002\u0002\u11d1\u11d2",
- "\u0007\u00e6\u0002\u0002\u11d2\u11d3\u0007\u032a\u0002\u0002\u11d3\u11db",
- "\t.\u0002\u0002\u11d4\u11d6\u0007\u033e\u0002\u0002\u11d5\u11d4\u0003",
- "\u0002\u0002\u0002\u11d5\u11d6\u0003\u0002\u0002\u0002\u11d6\u11d7\u0003",
- "\u0002\u0002\u0002\u11d7\u11d8\u0007\u0149\u0002\u0002\u11d8\u11d9\u0007",
- "\u032a\u0002\u0002\u11d9\u11db\t\t\u0002\u0002\u11da\u11c9\u0003\u0002",
- "\u0002\u0002\u11da\u11cf\u0003\u0002\u0002\u0002\u11da\u11d5\u0003\u0002",
- "\u0002\u0002\u11db\u11de\u0003\u0002\u0002\u0002\u11dc\u11da\u0003\u0002",
- "\u0002\u0002\u11dc\u11dd\u0003\u0002\u0002\u0002\u11dd\u11df\u0003\u0002",
- "\u0002\u0002\u11de\u11dc\u0003\u0002\u0002\u0002\u11df\u11e1\u0007\u033d",
- "\u0002\u0002\u11e0\u11c6\u0003\u0002\u0002\u0002\u11e0\u11e1\u0003\u0002",
- "\u0002\u0002\u11e1\u1210\u0003\u0002\u0002\u0002\u11e2\u120e\u0007\u0176",
- "\u0002\u0002\u11e3\u11e5\u0007\u033e\u0002\u0002\u11e4\u11e3\u0003\u0002",
- "\u0002\u0002\u11e4\u11e5\u0003\u0002\u0002\u0002\u11e5\u11e7\u0003\u0002",
- "\u0002\u0002\u11e6\u11e8\u0007\u00dc\u0002\u0002\u11e7\u11e6\u0003\u0002",
- "\u0002\u0002\u11e7\u11e8\u0003\u0002\u0002\u0002\u11e8\u11e9\u0003\u0002",
- "\u0002\u0002\u11e9\u11f5\u0005\u03c6\u01e4\u0002\u11ea\u11f6\u0007\u032a",
- "\u0002\u0002\u11eb\u11ec\u0007\u032c\u0002\u0002\u11ec\u11f6\u0007\u032b",
- "\u0002\u0002\u11ed\u11ee\u0007\u032d\u0002\u0002\u11ee\u11f6\u0007\u032a",
- "\u0002\u0002\u11ef\u11f6\u0007\u032b\u0002\u0002\u11f0\u11f1\u0007\u032b",
- "\u0002\u0002\u11f1\u11f6\u0007\u032a\u0002\u0002\u11f2\u11f6\u0007\u032c",
- "\u0002\u0002\u11f3\u11f4\u0007\u032c\u0002\u0002\u11f4\u11f6\u0007\u032a",
- "\u0002\u0002\u11f5\u11ea\u0003\u0002\u0002\u0002\u11f5\u11eb\u0003\u0002",
- "\u0002\u0002\u11f5\u11ed\u0003\u0002\u0002\u0002\u11f5\u11ef\u0003\u0002",
- "\u0002\u0002\u11f5\u11f0\u0003\u0002\u0002\u0002\u11f5\u11f2\u0003\u0002",
- "\u0002\u0002\u11f5\u11f3\u0003\u0002\u0002\u0002\u11f6\u11f7\u0003\u0002",
- "\u0002\u0002\u11f7\u11f8\t\u0018\u0002\u0002\u11f8\u120f\u0003\u0002",
- "\u0002\u0002\u11f9\u11fb\u0007\u033e\u0002\u0002\u11fa\u11f9\u0003\u0002",
- "\u0002\u0002\u11fa\u11fb\u0003\u0002\u0002\u0002\u11fb\u11fc\u0003\u0002",
- "\u0002\u0002\u11fc\u11fe\t\u001d\u0002\u0002\u11fd\u11ff\u0007\u00dc",
- "\u0002\u0002\u11fe\u11fd\u0003\u0002\u0002\u0002\u11fe\u11ff\u0003\u0002",
- "\u0002\u0002\u11ff\u120b\u0003\u0002\u0002\u0002\u1200\u120c\u0007\u032a",
- "\u0002\u0002\u1201\u1202\u0007\u032c\u0002\u0002\u1202\u120c\u0007\u032b",
- "\u0002\u0002\u1203\u1204\u0007\u032d\u0002\u0002\u1204\u120c\u0007\u032a",
- "\u0002\u0002\u1205\u120c\u0007\u032b\u0002\u0002\u1206\u1207\u0007\u032b",
- "\u0002\u0002\u1207\u120c\u0007\u032a\u0002\u0002\u1208\u120c\u0007\u032c",
- "\u0002\u0002\u1209\u120a\u0007\u032c\u0002\u0002\u120a\u120c\u0007\u032a",
- "\u0002\u0002\u120b\u1200\u0003\u0002\u0002\u0002\u120b\u1201\u0003\u0002",
- "\u0002\u0002\u120b\u1203\u0003\u0002\u0002\u0002\u120b\u1205\u0003\u0002",
- "\u0002\u0002\u120b\u1206\u0003\u0002\u0002\u0002\u120b\u1208\u0003\u0002",
- "\u0002\u0002\u120b\u1209\u0003\u0002\u0002\u0002\u120c\u120d\u0003\u0002",
- "\u0002\u0002\u120d\u120f\t\u0018\u0002\u0002\u120e\u11e4\u0003\u0002",
- "\u0002\u0002\u120e\u11fa\u0003\u0002\u0002\u0002\u120f\u1211\u0003\u0002",
- "\u0002\u0002\u1210\u11e2\u0003\u0002\u0002\u0002\u1210\u1211\u0003\u0002",
- "\u0002\u0002\u1211\u1219\u0003\u0002\u0002\u0002\u1212\u1213\u0007\u02a9",
- "\u0002\u0002\u1213\u1219\u0007\u0176\u0002\u0002\u1214\u1215\u0007\u025a",
- "\u0002\u0002\u1215\u1216\u0007\u025d\u0002\u0002\u1216\u1217\u0007\u032a",
- "\u0002\u0002\u1217\u1219\u0005\u03c6\u01e4\u0002\u1218\u11c4\u0003\u0002",
- "\u0002\u0002\u1218\u1212\u0003\u0002\u0002\u0002\u1218\u1214\u0003\u0002",
- "\u0002\u0002\u1219\u0175\u0003\u0002\u0002\u0002\u121a\u121b\u0007I",
- "\u0002\u0002\u121b\u121c\u0007\u0135\u0002\u0002\u121c\u121d\u0007\u0196",
- "\u0002\u0002\u121d\u12a7\u0005\u03c6\u01e4\u0002\u121e\u124b\u0007\u015a",
- "\u0002\u0002\u121f\u1220\u0007\u0081\u0002\u0002\u1220\u1245\u0007\u033c",
- "\u0002\u0002\u1221\u1223\u0007\u033e\u0002\u0002\u1222\u1221\u0003\u0002",
- "\u0002\u0002\u1222\u1223\u0003\u0002\u0002\u0002\u1223\u1224\u0003\u0002",
- "\u0002\u0002\u1224\u1225\u0007\u01fd\u0002\u0002\u1225\u1226\u0007\u032a",
- "\u0002\u0002\u1226\u1244\u0007\u0326\u0002\u0002\u1227\u1229\u0007\u033e",
- "\u0002\u0002\u1228\u1227\u0003\u0002\u0002\u0002\u1228\u1229\u0003\u0002",
- "\u0002\u0002\u1229\u122a\u0003\u0002\u0002\u0002\u122a\u122b\u0007\u024c",
- "\u0002\u0002\u122b\u122f\u0007\u032a\u0002\u0002\u122c\u122d\u0007\u0322",
- "\u0002\u0002\u122d\u1230\t,\u0002\u0002\u122e\u1230\u0007\u0306\u0002",
- "\u0002\u122f\u122c\u0003\u0002\u0002\u0002\u122f\u122e\u0003\u0002\u0002",
- "\u0002\u1230\u1244\u0003\u0002\u0002\u0002\u1231\u1233\u0007\u033e\u0002",
- "\u0002\u1232\u1231\u0003\u0002\u0002\u0002\u1232\u1233\u0003\u0002\u0002",
- "\u0002\u1233\u1234\u0003\u0002\u0002\u0002\u1234\u1235\u0007\u0249\u0002",
- "\u0002\u1235\u1236\u0007\u032a\u0002\u0002\u1236\u1244\t-\u0002\u0002",
- "\u1237\u1239\u0007\u033e\u0002\u0002\u1238\u1237\u0003\u0002\u0002\u0002",
- "\u1238\u1239\u0003\u0002\u0002\u0002\u1239\u123a\u0003\u0002\u0002\u0002",
- "\u123a\u123b\u0007\u0244\u0002\u0002\u123b\u123c\u0007\u032a\u0002\u0002",
- "\u123c\u1244\u0007\u0322\u0002\u0002\u123d\u123f\u0007\u033e\u0002\u0002",
- "\u123e\u123d\u0003\u0002\u0002\u0002\u123e\u123f\u0003\u0002\u0002\u0002",
- "\u123f\u1240\u0003\u0002\u0002\u0002\u1240\u1241\u0007\u02b1\u0002\u0002",
- "\u1241\u1242\u0007\u032a\u0002\u0002\u1242\u1244\t\t\u0002\u0002\u1243",
- "\u1222\u0003\u0002\u0002\u0002\u1243\u1228\u0003\u0002\u0002\u0002\u1243",
- "\u1232\u0003\u0002\u0002\u0002\u1243\u1238\u0003\u0002\u0002\u0002\u1243",
- "\u123e\u0003\u0002\u0002\u0002\u1244\u1247\u0003\u0002\u0002\u0002\u1245",
- "\u1243\u0003\u0002\u0002\u0002\u1245\u1246\u0003\u0002\u0002\u0002\u1246",
- "\u1248\u0003\u0002\u0002\u0002\u1247\u1245\u0003\u0002\u0002\u0002\u1248",
- "\u124c\u0007\u033d\u0002\u0002\u1249\u124c\u0007\u0192\u0002\u0002\u124a",
- "\u124c\u0007\u02c9\u0002\u0002\u124b\u121f\u0003\u0002\u0002\u0002\u124b",
- "\u1249\u0003\u0002\u0002\u0002\u124b\u124a\u0003\u0002\u0002\u0002\u124c",
- "\u124e\u0003\u0002\u0002\u0002\u124d\u121e\u0003\u0002\u0002\u0002\u124d",
- "\u124e\u0003\u0002\u0002\u0002\u124e\u126f\u0003\u0002\u0002\u0002\u124f",
- "\u1250\u0007\u0179\u0002\u0002\u1250\u126b\u0007\u033c\u0002\u0002\u1251",
- "\u1253\u0007\u033e\u0002\u0002\u1252\u1251\u0003\u0002\u0002\u0002\u1252",
- "\u1253\u0003\u0002\u0002\u0002\u1253\u1254\u0003\u0002\u0002\u0002\u1254",
- "\u1255\u0007\u0295\u0002\u0002\u1255\u1256\u0007\u032a\u0002\u0002\u1256",
- "\u126a\u0007\u0322\u0002\u0002\u1257\u1259\u0007\u033e\u0002\u0002\u1258",
- "\u1257\u0003\u0002\u0002\u0002\u1258\u1259\u0003\u0002\u0002\u0002\u1259",
- "\u125a\u0003\u0002\u0002\u0002\u125a\u125b\u0007\u00e6\u0002\u0002\u125b",
- "\u125c\u0007\u032a\u0002\u0002\u125c\u126a\t.\u0002\u0002\u125d\u125f",
- "\u0007\u033e\u0002\u0002\u125e\u125d\u0003\u0002\u0002\u0002\u125e\u125f",
- "\u0003\u0002\u0002\u0002\u125f\u1260\u0003\u0002\u0002\u0002\u1260\u1261",
- "\u0007\u0149\u0002\u0002\u1261\u1262\u0007\u032a\u0002\u0002\u1262\u126a",
- "\t\t\u0002\u0002\u1263\u1265\u0007\u033e\u0002\u0002\u1264\u1263\u0003",
- "\u0002\u0002\u0002\u1264\u1265\u0003\u0002\u0002\u0002\u1265\u1266\u0003",
- "\u0002\u0002\u0002\u1266\u1267\u0007\u0197\u0002\u0002\u1267\u1268\u0007",
- "\u032a\u0002\u0002\u1268\u126a\u0005\u03c6\u01e4\u0002\u1269\u1252\u0003",
- "\u0002\u0002\u0002\u1269\u1258\u0003\u0002\u0002\u0002\u1269\u125e\u0003",
- "\u0002\u0002\u0002\u1269\u1264\u0003\u0002\u0002\u0002\u126a\u126d\u0003",
- "\u0002\u0002\u0002\u126b\u1269\u0003\u0002\u0002\u0002\u126b\u126c\u0003",
- "\u0002\u0002\u0002\u126c\u126e\u0003\u0002\u0002\u0002\u126d\u126b\u0003",
- "\u0002\u0002\u0002\u126e\u1270\u0007\u033d\u0002\u0002\u126f\u124f\u0003",
- "\u0002\u0002\u0002\u126f\u1270\u0003\u0002\u0002\u0002\u1270\u129f\u0003",
- "\u0002\u0002\u0002\u1271\u129d\u0007\u0176\u0002\u0002\u1272\u1274\u0007",
- "\u033e\u0002\u0002\u1273\u1272\u0003\u0002\u0002\u0002\u1273\u1274\u0003",
- "\u0002\u0002\u0002\u1274\u1276\u0003\u0002\u0002\u0002\u1275\u1277\u0007",
- "\u00dc\u0002\u0002\u1276\u1275\u0003\u0002\u0002\u0002\u1276\u1277\u0003",
- "\u0002\u0002\u0002\u1277\u1278\u0003\u0002\u0002\u0002\u1278\u1284\u0005",
- "\u03c6\u01e4\u0002\u1279\u1285\u0007\u032a\u0002\u0002\u127a\u127b\u0007",
- "\u032c\u0002\u0002\u127b\u1285\u0007\u032b\u0002\u0002\u127c\u127d\u0007",
- "\u032d\u0002\u0002\u127d\u1285\u0007\u032a\u0002\u0002\u127e\u1285\u0007",
- "\u032b\u0002\u0002\u127f\u1280\u0007\u032b\u0002\u0002\u1280\u1285\u0007",
- "\u032a\u0002\u0002\u1281\u1285\u0007\u032c\u0002\u0002\u1282\u1283\u0007",
- "\u032c\u0002\u0002\u1283\u1285\u0007\u032a\u0002\u0002\u1284\u1279\u0003",
- "\u0002\u0002\u0002\u1284\u127a\u0003\u0002\u0002\u0002\u1284\u127c\u0003",
- "\u0002\u0002\u0002\u1284\u127e\u0003\u0002\u0002\u0002\u1284\u127f\u0003",
- "\u0002\u0002\u0002\u1284\u1281\u0003\u0002\u0002\u0002\u1284\u1282\u0003",
- "\u0002\u0002\u0002\u1285\u1286\u0003\u0002\u0002\u0002\u1286\u1287\t",
- "\u0018\u0002\u0002\u1287\u129e\u0003\u0002\u0002\u0002\u1288\u128a\u0007",
- "\u033e\u0002\u0002\u1289\u1288\u0003\u0002\u0002\u0002\u1289\u128a\u0003",
- "\u0002\u0002\u0002\u128a\u128b\u0003\u0002\u0002\u0002\u128b\u128d\t",
- "\u001d\u0002\u0002\u128c\u128e\u0007\u00dc\u0002\u0002\u128d\u128c\u0003",
- "\u0002\u0002\u0002\u128d\u128e\u0003\u0002\u0002\u0002\u128e\u129a\u0003",
- "\u0002\u0002\u0002\u128f\u129b\u0007\u032a\u0002\u0002\u1290\u1291\u0007",
- "\u032c\u0002\u0002\u1291\u129b\u0007\u032b\u0002\u0002\u1292\u1293\u0007",
- "\u032d\u0002\u0002\u1293\u129b\u0007\u032a\u0002\u0002\u1294\u129b\u0007",
- "\u032b\u0002\u0002\u1295\u1296\u0007\u032b\u0002\u0002\u1296\u129b\u0007",
- "\u032a\u0002\u0002\u1297\u129b\u0007\u032c\u0002\u0002\u1298\u1299\u0007",
- "\u032c\u0002\u0002\u1299\u129b\u0007\u032a\u0002\u0002\u129a\u128f\u0003",
- "\u0002\u0002\u0002\u129a\u1290\u0003\u0002\u0002\u0002\u129a\u1292\u0003",
- "\u0002\u0002\u0002\u129a\u1294\u0003\u0002\u0002\u0002\u129a\u1295\u0003",
- "\u0002\u0002\u0002\u129a\u1297\u0003\u0002\u0002\u0002\u129a\u1298\u0003",
- "\u0002\u0002\u0002\u129b\u129c\u0003\u0002\u0002\u0002\u129c\u129e\t",
- "\u0018\u0002\u0002\u129d\u1273\u0003\u0002\u0002\u0002\u129d\u1289\u0003",
- "\u0002\u0002\u0002\u129e\u12a0\u0003\u0002\u0002\u0002\u129f\u1271\u0003",
- "\u0002\u0002\u0002\u129f\u12a0\u0003\u0002\u0002\u0002\u12a0\u12a8\u0003",
- "\u0002\u0002\u0002\u12a1\u12a2\u0007\u02a9\u0002\u0002\u12a2\u12a8\u0007",
- "\u0176\u0002\u0002\u12a3\u12a4\u0007\u025a\u0002\u0002\u12a4\u12a5\u0007",
- "\u025d\u0002\u0002\u12a5\u12a6\u0007\u032a\u0002\u0002\u12a6\u12a8\u0005",
- "\u03c6\u01e4\u0002\u12a7\u124d\u0003\u0002\u0002\u0002\u12a7\u12a1\u0003",
- "\u0002\u0002\u0002\u12a7\u12a3\u0003\u0002\u0002\u0002\u12a8\u0177\u0003",
- "\u0002\u0002\u0002\u12a9\u12aa\u0007\n\u0002\u0002\u12aa\u12ab\u0007",
- "\u0135\u0002\u0002\u12ab\u12ac\u0007\u0196\u0002\u0002\u12ac\u12ad\u0007",
- "\u0143\u0002\u0002\u12ad\u12b2\u0005\u03c6\u01e4\u0002\u12ae\u12af\u0007",
- "\u0085\u0002\u0002\u12af\u12b0\u0007\u0135\u0002\u0002\u12b0\u12b1\u0007",
- "\u0196\u0002\u0002\u12b1\u12b3\u0005\u03c6\u01e4\u0002\u12b2\u12ae\u0003",
- "\u0002\u0002\u0002\u12b2\u12b3\u0003\u0002\u0002\u0002\u12b3\u12bb\u0003",
- "\u0002\u0002\u0002\u12b4\u12b5\t\u0015\u0002\u0002\u12b5\u12b6\u0007",
- "\u033c\u0002\u0002\u12b6\u12b7\u0005\u03c6\u01e4\u0002\u12b7\u12b8\u0007",
- "\u033d\u0002\u0002\u12b8\u12ba\u0003\u0002\u0002\u0002\u12b9\u12b4\u0003",
- "\u0002\u0002\u0002\u12ba\u12bd\u0003\u0002\u0002\u0002\u12bb\u12b9\u0003",
- "\u0002\u0002\u0002\u12bb\u12bc\u0003\u0002\u0002\u0002\u12bc\u12c4\u0003",
- "\u0002\u0002\u0002\u12bd\u12bb\u0003\u0002\u0002\u0002\u12be\u12bf\u0007",
- "\u0179\u0002\u0002\u12bf\u12c0\u0007\u033c\u0002\u0002\u12c0\u12c1\u0007",
- "\u0149\u0002\u0002\u12c1\u12c2\u0007\u032a\u0002\u0002\u12c2\u12c3\t",
- "\t\u0002\u0002\u12c3\u12c5\u0007\u033d\u0002\u0002\u12c4\u12be\u0003",
- "\u0002\u0002\u0002\u12c4\u12c5\u0003\u0002\u0002\u0002\u12c5\u0179\u0003",
- "\u0002\u0002\u0002\u12c6\u12c7\u0007I\u0002\u0002\u12c7\u12c8\u0007",
- "\u0135\u0002\u0002\u12c8\u12c9\u0007\u0196\u0002\u0002\u12c9\u12ca\u0007",
- "\u0143\u0002\u0002\u12ca\u12cf\u0005\u03c6\u01e4\u0002\u12cb\u12cc\u0007",
- "\u0085\u0002\u0002\u12cc\u12cd\u0007\u0135\u0002\u0002\u12cd\u12ce\u0007",
- "\u0196\u0002\u0002\u12ce\u12d0\u0005\u03c6\u01e4\u0002\u12cf\u12cb\u0003",
- "\u0002\u0002\u0002\u12cf\u12d0\u0003\u0002\u0002\u0002\u12d0\u12d8\u0003",
- "\u0002\u0002\u0002\u12d1\u12d2\u0007\u0004\u0002\u0002\u12d2\u12d3\u0007",
- "\u033c\u0002\u0002\u12d3\u12d4\u0005\u03c6\u01e4\u0002\u12d4\u12d5\u0007",
- "\u033d\u0002\u0002\u12d5\u12d7\u0003\u0002\u0002\u0002\u12d6\u12d1\u0003",
- "\u0002\u0002\u0002\u12d7\u12da\u0003\u0002\u0002\u0002\u12d8\u12d6\u0003",
- "\u0002\u0002\u0002\u12d8\u12d9\u0003\u0002\u0002\u0002\u12d9\u12e1\u0003",
- "\u0002\u0002\u0002\u12da\u12d8\u0003\u0002\u0002\u0002\u12db\u12dc\u0007",
- "\u0179\u0002\u0002\u12dc\u12dd\u0007\u033c\u0002\u0002\u12dd\u12de\u0007",
- "\u0149\u0002\u0002\u12de\u12df\u0007\u032a\u0002\u0002\u12df\u12e0\t",
- "\t\u0002\u0002\u12e0\u12e2\u0007\u033d\u0002\u0002\u12e1\u12db\u0003",
- "\u0002\u0002\u0002\u12e1\u12e2\u0003\u0002\u0002\u0002\u12e2\u017b\u0003",
- "\u0002\u0002\u0002\u12e3\u12e4\u0007\n\u0002\u0002\u12e4\u12e5\u0007",
- "\u0135\u0002\u0002\u12e5\u12e6\u0007<\u0002\u0002\u12e6\u1350\u0007",
- "\u013b\u0002\u0002\u12e7\u12e8\u0007\u0104\u0002\u0002\u12e8\u130c\u0007",
- "\u0187\u0002\u0002\u12e9\u12ea\u0007\u01c1\u0002\u0002\u12ea\u12fa\u0007",
- "\u032a\u0002\u0002\u12eb\u12fb\u0007\u0198\u0002\u0002\u12ec\u12ee\u0007",
- "\u033e\u0002\u0002\u12ed\u12ec\u0003\u0002\u0002\u0002\u12ed\u12ee\u0003",
- "\u0002\u0002\u0002\u12ee\u12ef\u0003\u0002\u0002\u0002\u12ef\u12f7\u0007",
- "\u0322\u0002\u0002\u12f0\u12f2\u0007\u033e\u0002\u0002\u12f1\u12f0\u0003",
- "\u0002\u0002\u0002\u12f1\u12f2\u0003\u0002\u0002\u0002\u12f2\u12f3\u0003",
- "\u0002\u0002\u0002\u12f3\u12f4\u0007\u0322\u0002\u0002\u12f4\u12f5\u0007",
- "\u015a\u0002\u0002\u12f5\u12f7\u0007\u0322\u0002\u0002\u12f6\u12ed\u0003",
- "\u0002\u0002\u0002\u12f6\u12f1\u0003\u0002\u0002\u0002\u12f7\u12f8\u0003",
- "\u0002\u0002\u0002\u12f8\u12f6\u0003\u0002\u0002\u0002\u12f8\u12f9\u0003",
- "\u0002\u0002\u0002\u12f9\u12fb\u0003\u0002\u0002\u0002\u12fa\u12eb\u0003",
- "\u0002\u0002\u0002\u12fa\u12f6\u0003\u0002\u0002\u0002\u12fb\u130d\u0003",
- "\u0002\u0002\u0002\u12fc\u12fd\u0007\u026e\u0002\u0002\u12fd\u1308\u0007",
- "\u032a\u0002\u0002\u12fe\u1300\u0007\u033e\u0002\u0002\u12ff\u12fe\u0003",
- "\u0002\u0002\u0002\u12ff\u1300\u0003\u0002\u0002\u0002\u1300\u1301\u0003",
- "\u0002\u0002\u0002\u1301\u1309\u0007\u0322\u0002\u0002\u1302\u1304\u0007",
- "\u033e\u0002\u0002\u1303\u1302\u0003\u0002\u0002\u0002\u1303\u1304\u0003",
- "\u0002\u0002\u0002\u1304\u1305\u0003\u0002\u0002\u0002\u1305\u1306\u0007",
- "\u0322\u0002\u0002\u1306\u1307\u0007\u015a\u0002\u0002\u1307\u1309\u0007",
- "\u0322\u0002\u0002\u1308\u12ff\u0003\u0002\u0002\u0002\u1308\u1303\u0003",
- "\u0002\u0002\u0002\u1309\u130a\u0003\u0002\u0002\u0002\u130a\u1308\u0003",
- "\u0002\u0002\u0002\u130a\u130b\u0003\u0002\u0002\u0002\u130b\u130d\u0003",
- "\u0002\u0002\u0002\u130c\u12e9\u0003\u0002\u0002\u0002\u130c\u12fc\u0003",
- "\u0002\u0002\u0002\u130d\u1351\u0003\u0002\u0002\u0002\u130e\u130f\u0007",
- "_\u0002\u0002\u130f\u131f\u0007\u00bb\u0002\u0002\u1310\u1320\u0007",
- "\u00e5\u0002\u0002\u1311\u1320\u0007\u00e2\u0002\u0002\u1312\u1313\u0007",
- "\u0283\u0002\u0002\u1313\u1314\u0007\u032a\u0002\u0002\u1314\u1320\t",
- "/\u0002\u0002\u1315\u1316\u0007\u00c3\u0002\u0002\u1316\u131a\u0007",
- "\u032a\u0002\u0002\u1317\u1318\u0007\u0322\u0002\u0002\u1318\u131b\u0007",
- "\u024d\u0002\u0002\u1319\u131b\u0007Y\u0002\u0002\u131a\u1317\u0003",
- "\u0002\u0002\u0002\u131a\u1319\u0003\u0002\u0002\u0002\u131b\u1320\u0003",
- "\u0002\u0002\u0002\u131c\u131d\u0007\u0244\u0002\u0002\u131d\u131e\u0007",
- "\u032a\u0002\u0002\u131e\u1320\t0\u0002\u0002\u131f\u1310\u0003\u0002",
- "\u0002\u0002\u131f\u1311\u0003\u0002\u0002\u0002\u131f\u1312\u0003\u0002",
- "\u0002\u0002\u131f\u1315\u0003\u0002\u0002\u0002\u131f\u131c\u0003\u0002",
- "\u0002\u0002\u1320\u1351\u0003\u0002\u0002\u0002\u1321\u1322\u0007}",
- "\u0002\u0002\u1322\u1323\u00074\u0002\u0002\u1323\u1335\u0007\u0290",
- "\u0002\u0002\u1324\u1325\u0007\u0171\u0002\u0002\u1325\u1326\u0007\u032a",
- "\u0002\u0002\u1326\u1336\t/\u0002\u0002\u1327\u1328\u0007\u0145\u0002",
- "\u0002\u1328\u1329\u0007\u032a\u0002\u0002\u1329\u1336\t/\u0002\u0002",
- "\u132a\u132b\u0007\u0146\u0002\u0002\u132b\u132c\u0007\u032a\u0002\u0002",
- "\u132c\u1336\t/\u0002\u0002\u132d\u132e\u0007\u0147\u0002\u0002\u132e",
- "\u1336\t/\u0002\u0002\u132f\u1330\u0007~\u0002\u0002\u1330\u1331\u0007",
- "\u032a\u0002\u0002\u1331\u1336\t/\u0002\u0002\u1332\u1333\u0007\u0095",
- "\u0002\u0002\u1333\u1334\u0007\u032a\u0002\u0002\u1334\u1336\t0\u0002",
- "\u0002\u1335\u1324\u0003\u0002\u0002\u0002\u1335\u1327\u0003\u0002\u0002",
- "\u0002\u1335\u132a\u0003\u0002\u0002\u0002\u1335\u132d\u0003\u0002\u0002",
- "\u0002\u1335\u132f\u0003\u0002\u0002\u0002\u1335\u1332\u0003\u0002\u0002",
- "\u0002\u1336\u1351\u0003\u0002\u0002\u0002\u1337\u1338\u0007\u0212\u0002",
- "\u0002\u1338\u1339\u00074\u0002\u0002\u1339\u133a\u0007A\u0002\u0002",
- "\u133a\u133b\u0007\u032a\u0002\u0002\u133b\u1351\t1\u0002\u0002\u133c",
- "\u133d\u0007#\u0002\u0002\u133d\u133e\u0007\u0285\u0002\u0002\u133e",
- "\u134b\u0007z\u0002\u0002\u133f\u1340\u0007\u00e5\u0002\u0002\u1340",
- "\u1341\u0007\u033c\u0002\u0002\u1341\u1342\u0007\u0082\u0002\u0002\u1342",
- "\u1343\u0007\u032a\u0002\u0002\u1343\u1344\u0007\u0326\u0002\u0002\u1344",
- "\u1345\u0007\u033e\u0002\u0002\u1345\u1346\u0007\u02d8\u0002\u0002\u1346",
- "\u1347\u0007\u032a\u0002\u0002\u1347\u1348\u0007\u0322\u0002\u0002\u1348",
- "\u1349\t2\u0002\u0002\u1349\u134c\u0007\u033d\u0002\u0002\u134a\u134c",
- "\u0007\u00e2\u0002\u0002\u134b\u133f\u0003\u0002\u0002\u0002\u134b\u134a",
- "\u0003\u0002\u0002\u0002\u134c\u1351\u0003\u0002\u0002\u0002\u134d\u134e",
- "\u0007\u013b\u0002\u0002\u134e\u134f\u0007\u0140\u0002\u0002\u134f\u1351",
- "\t\t\u0002\u0002\u1350\u12e7\u0003\u0002\u0002\u0002\u1350\u130e\u0003",
- "\u0002\u0002\u0002\u1350\u1321\u0003\u0002\u0002\u0002\u1350\u1337\u0003",
- "\u0002\u0002\u0002\u1350\u133c\u0003\u0002\u0002\u0002\u1350\u134d\u0003",
- "\u0002\u0002\u0002\u1351\u017d\u0003\u0002\u0002\u0002\u1352\u1353\u0007",
- "\n\u0002\u0002\u1353\u1354\u0007\u0135\u0002\u0002\u1354\u1355\u0007",
- "\u0121\u0002\u0002\u1355\u135d\u0005\u03c6\u01e4\u0002\u1356\u1357\t",
- "\u0015\u0002\u0002\u1357\u1358\u0007\u00c7\u0002\u0002\u1358\u135e\u0005",
- "\u03c6\u01e4\u0002\u1359\u135a\u0007\u0179\u0002\u0002\u135a\u135b\u0007",
- "\u025d\u0002\u0002\u135b\u135c\u0007\u032a\u0002\u0002\u135c\u135e\u0005",
- "\u03c6\u01e4\u0002\u135d\u1356\u0003\u0002\u0002\u0002\u135d\u1359\u0003",
- "\u0002\u0002\u0002\u135e\u017f\u0003\u0002\u0002\u0002\u135f\u1360\u0007",
- "I\u0002\u0002\u1360\u1361\u0007\u0135\u0002\u0002\u1361\u1362\u0007",
- "\u0121\u0002\u0002\u1362\u1365\u0005\u03c6\u01e4\u0002\u1363\u1364\u0007",
- "\u0014\u0002\u0002\u1364\u1366\u0005\u03c6\u01e4\u0002\u1365\u1363\u0003",
- "\u0002\u0002\u0002\u1365\u1366\u0003\u0002\u0002\u0002\u1366\u0181\u0003",
- "\u0002\u0002\u0002\u1367\u1368\u0007\n\u0002\u0002\u1368\u1369\u0007",
- "\u0135\u0002\u0002\u1369\u136a\u0007\u0121\u0002\u0002\u136a\u136b\u0005",
- "\u03c6\u01e4\u0002\u136b\u136c\t\u0015\u0002\u0002\u136c\u136d\u0007",
- "\u00c7\u0002\u0002\u136d\u136e\u0005\u03c6\u01e4\u0002\u136e\u0183\u0003",
- "\u0002\u0002\u0002\u136f\u1370\u0007\n\u0002\u0002\u1370\u1371\u0007",
- "\u0136\u0002\u0002\u1371\u1379\u0005\u03c6\u01e4\u0002\u1372\u1373\u0007",
- "\u00e5\u0002\u0002\u1373\u1374\u0007\u0294\u0002\u0002\u1374\u1375\u0005",
- "\u03c6\u01e4\u0002\u1375\u1376\u0007\u0337\u0002\u0002\u1376\u1377\u0003",
- "\u0002\u0002\u0002\u1377\u1378\u0005\u03c6\u01e4\u0002\u1378\u137a\u0003",
- "\u0002\u0002\u0002\u1379\u1372\u0003\u0002\u0002\u0002\u1379\u137a\u0003",
- "\u0002\u0002\u0002\u137a\u1382\u0003\u0002\u0002\u0002\u137b\u137d\u0007",
- "\u033e\u0002\u0002\u137c\u137b\u0003\u0002\u0002\u0002\u137c\u137d\u0003",
- "\u0002\u0002\u0002\u137d\u137e\u0003\u0002\u0002\u0002\u137e\u137f\t",
- "\u0015\u0002\u0002\u137f\u1381\u0005\u03c6\u01e4\u0002\u1380\u137c\u0003",
- "\u0002\u0002\u0002\u1381\u1384\u0003\u0002\u0002\u0002\u1382\u1380\u0003",
- "\u0002\u0002\u0002\u1382\u1383\u0003\u0002\u0002\u0002\u1383\u0185\u0003",
- "\u0002\u0002\u0002\u1384\u1382\u0003\u0002\u0002\u0002\u1385\u1386\u0007",
- "I\u0002\u0002\u1386\u1387\u0007\u0136\u0002\u0002\u1387\u138a\u0005",
- "\u03c6\u01e4\u0002\u1388\u1389\u0007\u0014\u0002\u0002\u1389\u138b\u0005",
- "\u03c6\u01e4\u0002\u138a\u1388\u0003\u0002\u0002\u0002\u138a\u138b\u0003",
- "\u0002\u0002\u0002\u138b\u138c\u0003\u0002\u0002\u0002\u138c\u138d\u0007",
- "\u00e5\u0002\u0002\u138d\u1391\u0007\u0294\u0002\u0002\u138e\u138f\u0005",
- "\u03c6\u01e4\u0002\u138f\u1390\u0007\u0337\u0002\u0002\u1390\u1392\u0003",
- "\u0002\u0002\u0002\u1391\u138e\u0003\u0002\u0002\u0002\u1391\u1392\u0003",
- "\u0002\u0002\u0002\u1392\u1393\u0003\u0002\u0002\u0002\u1393\u13a1\u0005",
- "\u03c6\u01e4\u0002\u1394\u139c\u0007\u033c\u0002\u0002\u1395\u1397\u0007",
- "\u033e\u0002\u0002\u1396\u1395\u0003\u0002\u0002\u0002\u1396\u1397\u0003",
- "\u0002\u0002\u0002\u1397\u139a\u0003\u0002\u0002\u0002\u1398\u139b\u0005",
- "\u03c6\u01e4\u0002\u1399\u139b\u0007Y\u0002\u0002\u139a\u1398\u0003",
- "\u0002\u0002\u0002\u139a\u1399\u0003\u0002\u0002\u0002\u139b\u139d\u0003",
- "\u0002\u0002\u0002\u139c\u1396\u0003\u0002\u0002\u0002\u139d\u139e\u0003",
- "\u0002\u0002\u0002\u139e\u139c\u0003\u0002\u0002\u0002\u139e\u139f\u0003",
- "\u0002\u0002\u0002\u139f\u13a0\u0003\u0002\u0002\u0002\u13a0\u13a2\u0007",
- "\u033d\u0002\u0002\u13a1\u1394\u0003\u0002\u0002\u0002\u13a1\u13a2\u0003",
- "\u0002\u0002\u0002\u13a2\u0187\u0003\u0002\u0002\u0002\u13a3\u13a4\u0007",
- "\n\u0002\u0002\u13a4\u13a5\u0007\u0136\u0002\u0002\u13a5\u13a6\u0007",
- "\u00bd\u0002\u0002\u13a6\u13bc\u0007\u00ac\u0002\u0002\u13a7\u13a9\u0007",
- "\u0203\u0002\u0002\u13a8\u13a7\u0003\u0002\u0002\u0002\u13a8\u13a9\u0003",
- "\u0002\u0002\u0002\u13a9\u13aa\u0003\u0002\u0002\u0002\u13aa\u13bd\u0007",
- "\u010f\u0002\u0002\u13ab\u13ba\u0007\u0179\u0002\u0002\u13ac\u13ad\u0007",
- "\u0274\u0002\u0002\u13ad\u13ae\u0007\u032a\u0002\u0002\u13ae\u13af\u0007",
- "\u0326\u0002\u0002\u13af\u13b0\u0007\u033e\u0002\u0002\u13b0\u13b1\u0007",
- "\u00e4\u0002\u0002\u13b1\u13b2\u0007\u032a\u0002\u0002\u13b2\u13bb\u0007",
- "\u0326\u0002\u0002\u13b3\u13b4\u0007\u025f\u0002\u0002\u13b4\u13b5\u0007",
- "\u032a\u0002\u0002\u13b5\u13b6\u0007\u0326\u0002\u0002\u13b6\u13b7\u0007",
- "\u033e\u0002\u0002\u13b7\u13b8\u0007\u0261\u0002\u0002\u13b8\u13b9\u0007",
- "\u032a\u0002\u0002\u13b9\u13bb\u0007\u0326\u0002\u0002\u13ba\u13ac\u0003",
- "\u0002\u0002\u0002\u13ba\u13b3\u0003\u0002\u0002\u0002\u13ba\u13bb\u0003",
- "\u0002\u0002\u0002\u13bb\u13bd\u0003\u0002\u0002\u0002\u13bc\u13a8\u0003",
- "\u0002\u0002\u0002\u13bc\u13ab\u0003\u0002\u0002\u0002\u13bd\u0189\u0003",
- "\u0002\u0002\u0002\u13be\u13bf\u0007\n\u0002\u0002\u13bf\u13c0\u0007",
- "\u02eb\u0002\u0002\u13c0\u13c1\u0007\u00ac\u0002\u0002\u13c1\u13c2\u0005",
- "\u03c6\u01e4\u0002\u13c2\u13c3\t\u0015\u0002\u0002\u13c3\u13c4\u0007",
- "\u01ec\u0002\u0002\u13c4\u13d0\u0007&\u0002\u0002\u13c5\u13c6\u0007",
- "+\u0002\u0002\u13c6\u13d1\u0005\u03c6\u01e4\u0002\u13c7\u13c8\u0007",
- "\u00f4\u0002\u0002\u13c8\u13c9\u0007\u032a\u0002\u0002\u13c9\u13d1\u0007",
- "\u0326\u0002\u0002\u13ca\u13cb\u0007\u02eb\u0002\u0002\u13cb\u13cc\u0007",
- "\u00ac\u0002\u0002\u13cc\u13d1\u0005\u03c6\u01e4\u0002\u13cd\u13ce\u0007",
- "\u0012\u0002\u0002\u13ce\u13cf\u0007\u00ac\u0002\u0002\u13cf\u13d1\u0005",
- "\u03c6\u01e4\u0002\u13d0\u13c5\u0003\u0002\u0002\u0002\u13d0\u13c7\u0003",
- "\u0002\u0002\u0002\u13d0\u13ca\u0003\u0002\u0002\u0002\u13d0\u13cd\u0003",
- "\u0002\u0002\u0002\u13d1\u018b\u0003\u0002\u0002\u0002\u13d2\u13d3\u0007",
- "\n\u0002\u0002\u13d3\u13d4\u0007\u02eb\u0002\u0002\u13d4\u13d5\u0007",
- "\u00ac\u0002\u0002\u13d5\u13d8\u0005\u03c6\u01e4\u0002\u13d6\u13d7\u0007",
- "\u0014\u0002\u0002\u13d7\u13d9\u0005\u03c6\u01e4\u0002\u13d8\u13d6\u0003",
- "\u0002\u0002\u0002\u13d8\u13d9\u0003\u0002\u0002\u0002\u13d9\u13dd\u0003",
- "\u0002\u0002\u0002\u13da\u13db\u0007\u008b\u0002\u0002\u13db\u13dc\u0007",
- "\u0291\u0002\u0002\u13dc\u13de\u0005\u03c6\u01e4\u0002\u13dd\u13da\u0003",
- "\u0002\u0002\u0002\u13dd\u13de\u0003\u0002\u0002\u0002\u13de\u13df\u0003",
- "\u0002\u0002\u0002\u13df\u1400\u0007\u0179\u0002\u0002\u13e0\u13e1\u0007",
- "\u022b\u0002\u0002\u13e1\u13e2\u0007\u032a\u0002\u0002\u13e2\u13f0\u0007",
- "\u0326\u0002\u0002\u13e3\u13e4\u0007\u018a\u0002\u0002\u13e4\u13e5\u0007",
- "\u032a\u0002\u0002\u13e5\u13f0\t3\u0002\u0002\u13e6\u13e7\u0007\u0218",
- "\u0002\u0002\u13e7\u13e8\u0007\u032a\u0002\u0002\u13e8\u13f0\u0007\u0326",
- "\u0002\u0002\u13e9\u13ea\u0007\u0292\u0002\u0002\u13ea\u13eb\u0007\u032a",
- "\u0002\u0002\u13eb\u13f0\u0007\u0326\u0002\u0002\u13ec\u13ed\u0007\u01c3",
- "\u0002\u0002\u13ed\u13ee\u0007\u032a\u0002\u0002\u13ee\u13f0\t\f\u0002",
- "\u0002\u13ef\u13e0\u0003\u0002\u0002\u0002\u13ef\u13e3\u0003\u0002\u0002",
- "\u0002\u13ef\u13e6\u0003\u0002\u0002\u0002\u13ef\u13e9\u0003\u0002\u0002",
- "\u0002\u13ef\u13ec\u0003\u0002\u0002\u0002\u13f0\u1401\u0003\u0002\u0002",
- "\u0002\u13f1\u13f2\u0007\u01ec\u0002\u0002\u13f2\u13fe\u0007&\u0002",
- "\u0002\u13f3\u13f4\u0007+\u0002\u0002\u13f4\u13ff\u0005\u03c6\u01e4",
- "\u0002\u13f5\u13f6\u0007\u00f4\u0002\u0002\u13f6\u13f7\u0007\u032a\u0002",
- "\u0002\u13f7\u13ff\u0007\u0326\u0002\u0002\u13f8\u13f9\u0007\u02eb\u0002",
- "\u0002\u13f9\u13fa\u0007\u00ac\u0002\u0002\u13fa\u13ff\u0005\u03c6\u01e4",
- "\u0002\u13fb\u13fc\u0007\u0012\u0002\u0002\u13fc\u13fd\u0007\u00ac\u0002",
- "\u0002\u13fd\u13ff\u0005\u03c6\u01e4\u0002\u13fe\u13f3\u0003\u0002\u0002",
- "\u0002\u13fe\u13f5\u0003\u0002\u0002\u0002\u13fe\u13f8\u0003\u0002\u0002",
- "\u0002\u13fe\u13fb\u0003\u0002\u0002\u0002\u13ff\u1401\u0003\u0002\u0002",
- "\u0002\u1400\u13ef\u0003\u0002\u0002\u0002\u1400\u13f1\u0003\u0002\u0002",
- "\u0002\u1401\u018d\u0003\u0002\u0002\u0002\u1402\u1403\u0007I\u0002",
- "\u0002\u1403\u1407\u0007\u02ed\u0002\u0002\u1404\u1405\u0005\u03c6\u01e4",
- "\u0002\u1405\u1406\u0007\u0337\u0002\u0002\u1406\u1408\u0003\u0002\u0002",
- "\u0002\u1407\u1404\u0003\u0002\u0002\u0002\u1407\u1408\u0003\u0002\u0002",
- "\u0002\u1408\u1409\u0003\u0002\u0002\u0002\u1409\u140a\u0005\u03c6\u01e4",
- "\u0002\u140a\u1425\u0007\u0085\u0002\u0002\u140b\u140c\u0005\u03c6\u01e4",
- "\u0002\u140c\u140d\u0007\u0337\u0002\u0002\u140d\u140f\u0003\u0002\u0002",
- "\u0002\u140e\u140b\u0003\u0002\u0002\u0002\u140e\u140f\u0003\u0002\u0002",
- "\u0002\u140f\u1413\u0003\u0002\u0002\u0002\u1410\u1411\u0005\u03c6\u01e4",
- "\u0002\u1411\u1412\u0007\u0337\u0002\u0002\u1412\u1414\u0003\u0002\u0002",
- "\u0002\u1413\u1410\u0003\u0002\u0002\u0002\u1413\u1414\u0003\u0002\u0002",
- "\u0002\u1414\u1418\u0003\u0002\u0002\u0002\u1415\u1416\u0005\u03c6\u01e4",
- "\u0002\u1416\u1417\u0007\u0337\u0002\u0002\u1417\u1419\u0003\u0002\u0002",
- "\u0002\u1418\u1415\u0003\u0002\u0002\u0002\u1418\u1419\u0003\u0002\u0002",
- "\u0002\u1419\u141a\u0003\u0002\u0002\u0002\u141a\u1426\u0005\u03c6\u01e4",
- "\u0002\u141b\u141c\u0005\u03c6\u01e4\u0002\u141c\u141d\u0007\u0337\u0002",
- "\u0002\u141d\u141f\u0003\u0002\u0002\u0002\u141e\u141b\u0003\u0002\u0002",
- "\u0002\u141e\u141f\u0003\u0002\u0002\u0002\u141f\u1423\u0003\u0002\u0002",
- "\u0002\u1420\u1421\u0005\u03c6\u01e4\u0002\u1421\u1422\u0007\u0337\u0002",
- "\u0002\u1422\u1424\u0003\u0002\u0002\u0002\u1423\u1420\u0003\u0002\u0002",
- "\u0002\u1423\u1424\u0003\u0002\u0002\u0002\u1424\u1426\u0003\u0002\u0002",
- "\u0002\u1425\u140e\u0003\u0002\u0002\u0002\u1425\u141e\u0003\u0002\u0002",
- "\u0002\u1426\u018f\u0003\u0002\u0002\u0002\u1427\u1428\u0007\n\u0002",
- "\u0002\u1428\u1429\u0007\u016e\u0002\u0002\u1429\u142a\u0005\u03c6\u01e4",
- "\u0002\u142a\u145d\u0007\u0179\u0002\u0002\u142b\u142d\u0007\u033e\u0002",
- "\u0002\u142c\u142b\u0003\u0002\u0002\u0002\u142c\u142d\u0003\u0002\u0002",
- "\u0002\u142d\u142e\u0003\u0002\u0002\u0002\u142e\u142f\u0007\u025d\u0002",
- "\u0002\u142f\u1430\u0007\u032a\u0002\u0002\u1430\u145e\u0005\u03c6\u01e4",
- "\u0002\u1431\u1433\u0007\u033e\u0002\u0002\u1432\u1431\u0003\u0002\u0002",
- "\u0002\u1432\u1433\u0003\u0002\u0002\u0002\u1433\u1434\u0003\u0002\u0002",
- "\u0002\u1434\u1435\u0007[\u0002\u0002\u1435\u1438\u0007\u032a\u0002",
- "\u0002\u1436\u1439\u0005\u03c6\u01e4\u0002\u1437\u1439\u0007\u00df\u0002",
- "\u0002\u1438\u1436\u0003\u0002\u0002\u0002\u1438\u1437\u0003\u0002\u0002",
- "\u0002\u1439\u145e\u0003\u0002\u0002\u0002\u143a\u143c\u0007\u033e\u0002",
- "\u0002\u143b\u143a\u0003\u0002\u0002\u0002\u143b\u143c\u0003\u0002\u0002",
- "\u0002\u143c\u143d\u0003\u0002\u0002\u0002\u143d\u143e\u0007\u023b\u0002",
- "\u0002\u143e\u143f\u0007\u032a\u0002\u0002\u143f\u145e\u0005\u03c6\u01e4",
- "\u0002\u1440\u1442\u0007\u033e\u0002\u0002\u1441\u1440\u0003\u0002\u0002",
- "\u0002\u1441\u1442\u0003\u0002\u0002\u0002\u1442\u1443\u0003\u0002\u0002",
- "\u0002\u1443\u1444\u0007\u00f4\u0002\u0002\u1444\u1445\u0007\u032a\u0002",
- "\u0002\u1445\u1449\u0007\u0326\u0002\u0002\u1446\u1447\u0007\u00e4\u0002",
- "\u0002\u1447\u1448\u0007\u032a\u0002\u0002\u1448\u144a\u0007\u0326\u0002",
- "\u0002\u1449\u1446\u0003\u0002\u0002\u0002\u144a\u144b\u0003\u0002\u0002",
- "\u0002\u144b\u1449\u0003\u0002\u0002\u0002\u144b\u144c\u0003\u0002\u0002",
- "\u0002\u144c\u145e\u0003\u0002\u0002\u0002\u144d\u144f\u0007\u033e\u0002",
- "\u0002\u144e\u144d\u0003\u0002\u0002\u0002\u144e\u144f\u0003\u0002\u0002",
- "\u0002\u144f\u1450\u0003\u0002\u0002\u0002\u1450\u1451\u0007\u01d4\u0002",
- "\u0002\u1451\u1455\u0007\u032a\u0002\u0002\u1452\u1456\u0007\u00d5\u0002",
- "\u0002\u1453\u1456\u0007\u0322\u0002\u0002\u1454\u1456\u0005\u03c6\u01e4",
- "\u0002\u1455\u1452\u0003\u0002\u0002\u0002\u1455\u1453\u0003\u0002\u0002",
- "\u0002\u1455\u1454\u0003\u0002\u0002\u0002\u1456\u145e\u0003\u0002\u0002",
- "\u0002\u1457\u1459\u0007\u033e\u0002\u0002\u1458\u1457\u0003\u0002\u0002",
- "\u0002\u1458\u1459\u0003\u0002\u0002\u0002\u1459\u145a\u0003\u0002\u0002",
- "\u0002\u145a\u145b\u0007\u018b\u0002\u0002\u145b\u145c\u0007\u032a\u0002",
- "\u0002\u145c\u145e\t\t\u0002\u0002\u145d\u142c\u0003\u0002\u0002\u0002",
- "\u145d\u1432\u0003\u0002\u0002\u0002\u145d\u143b\u0003\u0002\u0002\u0002",
- "\u145d\u1441\u0003\u0002\u0002\u0002\u145d\u144e\u0003\u0002\u0002\u0002",
- "\u145d\u1458\u0003\u0002\u0002\u0002\u145e\u145f\u0003\u0002\u0002\u0002",
- "\u145f\u145d\u0003\u0002\u0002\u0002\u145f\u1460\u0003\u0002\u0002\u0002",
- "\u1460\u0191\u0003\u0002\u0002\u0002\u1461\u1462\u0007I\u0002\u0002",
- "\u1462\u1463\u0007\u016e\u0002\u0002\u1463\u1467\u0005\u03c6\u01e4\u0002",
- "\u1464\u1465\t4\u0002\u0002\u1465\u1466\u0007\u023b\u0002\u0002\u1466",
- "\u1468\u0005\u03c6\u01e4\u0002\u1467\u1464\u0003\u0002\u0002\u0002\u1467",
- "\u1468\u0003\u0002\u0002\u0002\u1468\u147b\u0003\u0002\u0002\u0002\u1469",
- "\u1478\u0007\u0179\u0002\u0002\u146a\u146c\u0007\u033e\u0002\u0002\u146b",
- "\u146a\u0003\u0002\u0002\u0002\u146b\u146c\u0003\u0002\u0002\u0002\u146c",
- "\u146d\u0003\u0002\u0002\u0002\u146d\u146e\u0007[\u0002\u0002\u146e",
- "\u146f\u0007\u032a\u0002\u0002\u146f\u1477\u0005\u03c6\u01e4\u0002\u1470",
- "\u1472\u0007\u033e\u0002\u0002\u1471\u1470\u0003\u0002\u0002\u0002\u1471",
- "\u1472\u0003\u0002\u0002\u0002\u1472\u1473\u0003\u0002\u0002\u0002\u1473",
- "\u1474\u0007\u018b\u0002\u0002\u1474\u1475\u0007\u032a\u0002\u0002\u1475",
- "\u1477\t\t\u0002\u0002\u1476\u146b\u0003\u0002\u0002\u0002\u1476\u1471",
- "\u0003\u0002\u0002\u0002\u1477\u147a\u0003\u0002\u0002\u0002\u1478\u1476",
- "\u0003\u0002\u0002\u0002\u1478\u1479\u0003\u0002\u0002\u0002\u1479\u147c",
- "\u0003\u0002\u0002\u0002\u147a\u1478\u0003\u0002\u0002\u0002\u147b\u1469",
- "\u0003\u0002\u0002\u0002\u147b\u147c\u0003\u0002\u0002\u0002\u147c\u14f4",
- "\u0003\u0002\u0002\u0002\u147d\u147e\u0007I\u0002\u0002\u147e\u14cf",
- "\u0007\u016e\u0002\u0002\u147f\u14a2\u0005\u03c6\u01e4\u0002\u1480\u149f",
- "\u0007\u0179\u0002\u0002\u1481\u1483\u0007\u033e\u0002\u0002\u1482\u1481",
- "\u0003\u0002\u0002\u0002\u1482\u1483\u0003\u0002\u0002\u0002\u1483\u1484",
- "\u0003\u0002\u0002\u0002\u1484\u1485\u0007[\u0002\u0002\u1485\u1486",
- "\u0007\u032a\u0002\u0002\u1486\u149e\u0005\u03c6\u01e4\u0002\u1487\u1489",
- "\u0007\u033e\u0002\u0002\u1488\u1487\u0003\u0002\u0002\u0002\u1488\u1489",
- "\u0003\u0002\u0002\u0002\u1489\u148a\u0003\u0002\u0002\u0002\u148a\u148b",
- "\u0007\u01d4\u0002\u0002\u148b\u148f\u0007\u032a\u0002\u0002\u148c\u1490",
- "\u0007\u00d5\u0002\u0002\u148d\u1490\u0007\u0322\u0002\u0002\u148e\u1490",
- "\u0005\u03c6\u01e4\u0002\u148f\u148c\u0003\u0002\u0002\u0002\u148f\u148d",
- "\u0003\u0002\u0002\u0002\u148f\u148e\u0003\u0002\u0002\u0002\u1490\u149e",
- "\u0003\u0002\u0002\u0002\u1491\u1493\u0007\u033e\u0002\u0002\u1492\u1491",
- "\u0003\u0002\u0002\u0002\u1492\u1493\u0003\u0002\u0002\u0002\u1493\u1494",
- "\u0003\u0002\u0002\u0002\u1494\u1495\u0007\u013e\u0002\u0002\u1495\u1496",
- "\u0007\u032a\u0002\u0002\u1496\u149e\u0007\u0327\u0002\u0002\u1497\u1499",
- "\u0007\u033e\u0002\u0002\u1498\u1497\u0003\u0002\u0002\u0002\u1498\u1499",
- "\u0003\u0002\u0002\u0002\u1499\u149a\u0003\u0002\u0002\u0002\u149a\u149b",
- "\u0007\u018b\u0002\u0002\u149b\u149c\u0007\u032a\u0002\u0002\u149c\u149e",
- "\t\t\u0002\u0002\u149d\u1482\u0003\u0002\u0002\u0002\u149d\u1488\u0003",
- "\u0002\u0002\u0002\u149d\u1492\u0003\u0002\u0002\u0002\u149d\u1498\u0003",
- "\u0002\u0002\u0002\u149e\u14a1\u0003\u0002\u0002\u0002\u149f\u149d\u0003",
- "\u0002\u0002\u0002\u149f\u14a0\u0003\u0002\u0002\u0002\u14a0\u14a3\u0003",
- "\u0002\u0002\u0002\u14a1\u149f\u0003\u0002\u0002\u0002\u14a2\u1480\u0003",
- "\u0002\u0002\u0002\u14a2\u14a3\u0003\u0002\u0002\u0002\u14a3\u14d0\u0003",
- "\u0002\u0002\u0002\u14a4\u14a5\u0005\u03c6\u01e4\u0002\u14a5\u14a6\u0007",
- "\u0179\u0002\u0002\u14a6\u14a7\u0007\u00f4\u0002\u0002\u14a7\u14a8\u0007",
- "\u032a\u0002\u0002\u14a8\u14c7\u0007\u0326\u0002\u0002\u14a9\u14ab\u0007",
- "\u033e\u0002\u0002\u14aa\u14a9\u0003\u0002\u0002\u0002\u14aa\u14ab\u0003",
- "\u0002\u0002\u0002\u14ab\u14ac\u0003\u0002\u0002\u0002\u14ac\u14ad\u0007",
- "[\u0002\u0002\u14ad\u14ae\u0007\u032a\u0002\u0002\u14ae\u14c6\u0005",
- "\u03c6\u01e4\u0002\u14af\u14b1\u0007\u033e\u0002\u0002\u14b0\u14af\u0003",
- "\u0002\u0002\u0002\u14b0\u14b1\u0003\u0002\u0002\u0002\u14b1\u14b2\u0003",
- "\u0002\u0002\u0002\u14b2\u14b3\u0007\u01d4\u0002\u0002\u14b3\u14b7\u0007",
- "\u032a\u0002\u0002\u14b4\u14b8\u0007\u00d5\u0002\u0002\u14b5\u14b8\u0007",
- "\u0322\u0002\u0002\u14b6\u14b8\u0005\u03c6\u01e4\u0002\u14b7\u14b4\u0003",
- "\u0002\u0002\u0002\u14b7\u14b5\u0003\u0002\u0002\u0002\u14b7\u14b6\u0003",
- "\u0002\u0002\u0002\u14b8\u14c6\u0003\u0002\u0002\u0002\u14b9\u14bb\u0007",
- "\u033e\u0002\u0002\u14ba\u14b9\u0003\u0002\u0002\u0002\u14ba\u14bb\u0003",
- "\u0002\u0002\u0002\u14bb\u14bc\u0003\u0002\u0002\u0002\u14bc\u14bd\u0007",
- "\u013e\u0002\u0002\u14bd\u14be\u0007\u032a\u0002\u0002\u14be\u14c6\u0007",
- "\u0327\u0002\u0002\u14bf\u14c1\u0007\u033e\u0002\u0002\u14c0\u14bf\u0003",
- "\u0002\u0002\u0002\u14c0\u14c1\u0003\u0002\u0002\u0002\u14c1\u14c2\u0003",
- "\u0002\u0002\u0002\u14c2\u14c3\u0007\u018b\u0002\u0002\u14c3\u14c4\u0007",
- "\u032a\u0002\u0002\u14c4\u14c6\t\t\u0002\u0002\u14c5\u14aa\u0003\u0002",
- "\u0002\u0002\u14c5\u14b0\u0003\u0002\u0002\u0002\u14c5\u14ba\u0003\u0002",
- "\u0002\u0002\u14c5\u14c0\u0003\u0002\u0002\u0002\u14c6\u14c9\u0003\u0002",
- "\u0002\u0002\u14c7\u14c5\u0003\u0002\u0002\u0002\u14c7\u14c8\u0003\u0002",
- "\u0002\u0002\u14c8\u14d0\u0003\u0002\u0002\u0002\u14c9\u14c7\u0003\u0002",
- "\u0002\u0002\u14ca\u14cb\u0005\u03c6\u01e4\u0002\u14cb\u14cc\u0007\u008b",
- "\u0002\u0002\u14cc\u14cd\u0007{\u0002\u0002\u14cd\u14ce\u0007\u0291",
- "\u0002\u0002\u14ce\u14d0\u0003\u0002\u0002\u0002\u14cf\u147f\u0003\u0002",
- "\u0002\u0002\u14cf\u14a4\u0003\u0002\u0002\u0002\u14cf\u14ca\u0003\u0002",
- "\u0002\u0002\u14d0\u14f4\u0003\u0002\u0002\u0002\u14d1\u14d2\u0007I",
- "\u0002\u0002\u14d2\u14d3\u0007\u016e\u0002\u0002\u14d3\u14ee\u0005\u03c6",
- "\u01e4\u0002\u14d4\u14d5\u0007\u017b\u0002\u0002\u14d5\u14e4\u0007\u023b",
- "\u0002\u0002\u14d6\u14d8\u0007\u033e\u0002\u0002\u14d7\u14d6\u0003\u0002",
- "\u0002\u0002\u14d7\u14d8\u0003\u0002\u0002\u0002\u14d8\u14d9\u0003\u0002",
- "\u0002\u0002\u14d9\u14da\u0007[\u0002\u0002\u14da\u14db\u0007\u032a",
- "\u0002\u0002\u14db\u14e3\u0005\u03c6\u01e4\u0002\u14dc\u14de\u0007\u033e",
- "\u0002\u0002\u14dd\u14dc\u0003\u0002\u0002\u0002\u14dd\u14de\u0003\u0002",
- "\u0002\u0002\u14de\u14df\u0003\u0002\u0002\u0002\u14df\u14e0\u0007\u018b",
- "\u0002\u0002\u14e0\u14e1\u0007\u032a\u0002\u0002\u14e1\u14e3\t\t\u0002",
- "\u0002\u14e2\u14d7\u0003\u0002\u0002\u0002\u14e2\u14dd\u0003\u0002\u0002",
- "\u0002\u14e3\u14e6\u0003\u0002\u0002\u0002\u14e4\u14e2\u0003\u0002\u0002",
- "\u0002\u14e4\u14e5\u0003\u0002\u0002\u0002\u14e5\u14ef\u0003\u0002\u0002",
- "\u0002\u14e6\u14e4\u0003\u0002\u0002\u0002\u14e7\u14e8\t4\u0002\u0002",
- "\u14e8\u14e9\u0007+\u0002\u0002\u14e9\u14ef\u0005\u03c6\u01e4\u0002",
- "\u14ea\u14eb\t4\u0002\u0002\u14eb\u14ec\u0007\u0012\u0002\u0002\u14ec",
- "\u14ed\u0007\u00ac\u0002\u0002\u14ed\u14ef\u0005\u03c6\u01e4\u0002\u14ee",
- "\u14d4\u0003\u0002\u0002\u0002\u14ee\u14e7\u0003\u0002\u0002\u0002\u14ee",
- "\u14ea\u0003\u0002\u0002\u0002\u14ef\u14f4\u0003\u0002\u0002\u0002\u14f0",
- "\u14f1\u0007I\u0002\u0002\u14f1\u14f2\u0007\u016e\u0002\u0002\u14f2",
- "\u14f4\u0005\u03c6\u01e4\u0002\u14f3\u1461\u0003\u0002\u0002\u0002\u14f3",
- "\u147d\u0003\u0002\u0002\u0002\u14f3\u14d1\u0003\u0002\u0002\u0002\u14f3",
- "\u14f0\u0003\u0002\u0002\u0002\u14f4\u0193\u0003\u0002\u0002\u0002\u14f5",
- "\u14f6\u0007I\u0002\u0002\u14f6\u14f7\u0007\u016e\u0002\u0002\u14f7",
- "\u14fd\u0005\u03c6\u01e4\u0002\u14f8\u14f9\t4\u0002\u0002\u14f9\u14fa",
- "\u0007\u023b\u0002\u0002\u14fa\u14fe\u0005\u03c6\u01e4\u0002\u14fb\u14fc",
- "\u0007\u017b\u0002\u0002\u14fc\u14fe\u0007\u023b\u0002\u0002\u14fd\u14f8",
- "\u0003\u0002\u0002\u0002\u14fd\u14fb\u0003\u0002\u0002\u0002\u14fd\u14fe",
- "\u0003\u0002\u0002\u0002\u14fe\u1503\u0003\u0002\u0002\u0002\u14ff\u1500",
- "\u0007\u0179\u0002\u0002\u1500\u1501\u0007[\u0002\u0002\u1501\u1502",
- "\u0007\u032a\u0002\u0002\u1502\u1504\u0005\u03c6\u01e4\u0002\u1503\u14ff",
- "\u0003\u0002\u0002\u0002\u1503\u1504\u0003\u0002\u0002\u0002\u1504\u1512",
- "\u0003\u0002\u0002\u0002\u1505\u1506\u0007I\u0002\u0002\u1506\u1507",
- "\u0007\u016e\u0002\u0002\u1507\u1508\u0005\u03c6\u01e4\u0002\u1508\u1509",
- "\u0007\u008b\u0002\u0002\u1509\u150a\u0007{\u0002\u0002\u150a\u150f",
- "\u0007\u0291\u0002\u0002\u150b\u150c\u0007\u0179\u0002\u0002\u150c\u150d",
- "\u0007[\u0002\u0002\u150d\u150e\u0007\u032a\u0002\u0002\u150e\u1510",
- "\u0005\u03c6\u01e4\u0002\u150f\u150b\u0003\u0002\u0002\u0002\u150f\u1510",
- "\u0003\u0002\u0002\u0002\u1510\u1512\u0003\u0002\u0002\u0002\u1511\u14f5",
- "\u0003\u0002\u0002\u0002\u1511\u1505\u0003\u0002\u0002\u0002\u1512\u0195",
- "\u0003\u0002\u0002\u0002\u1513\u1514\u0007\n\u0002\u0002\u1514\u1515",
- "\u0007\u016e\u0002\u0002\u1515\u1516\u0005\u03c6\u01e4\u0002\u1516\u152f",
- "\u0007\u0179\u0002\u0002\u1517\u1519\u0007\u033e\u0002\u0002\u1518\u1517",
- "\u0003\u0002\u0002\u0002\u1518\u1519\u0003\u0002\u0002\u0002\u1519\u151a",
- "\u0003\u0002\u0002\u0002\u151a\u151b\u0007\u025d\u0002\u0002\u151b\u151c",
- "\u0007\u032a\u0002\u0002\u151c\u1530\u0005\u03c6\u01e4\u0002\u151d\u151f",
- "\u0007\u033e\u0002\u0002\u151e\u151d\u0003\u0002\u0002\u0002\u151e\u151f",
- "\u0003\u0002\u0002\u0002\u151f\u1520\u0003\u0002\u0002\u0002\u1520\u1521",
- "\u0007[\u0002\u0002\u1521\u1522\u0007\u032a\u0002\u0002\u1522\u1530",
- "\u0005\u03c6\u01e4\u0002\u1523\u1525\u0007\u033e\u0002\u0002\u1524\u1523",
- "\u0003\u0002\u0002\u0002\u1524\u1525\u0003\u0002\u0002\u0002\u1525\u1526",
- "\u0003\u0002\u0002\u0002\u1526\u1527\u0007\u023b\u0002\u0002\u1527\u1528",
- "\u0007\u032a\u0002\u0002\u1528\u1530\u0005\u03c6\u01e4\u0002\u1529\u152b",
- "\u0007\u033e\u0002\u0002\u152a\u1529\u0003\u0002\u0002\u0002\u152a\u152b",
- "\u0003\u0002\u0002\u0002\u152b\u152c\u0003\u0002\u0002\u0002\u152c\u152d",
- "\u0007\u018b\u0002\u0002\u152d\u152e\u0007\u032a\u0002\u0002\u152e\u1530",
- "\t\t\u0002\u0002\u152f\u1518\u0003\u0002\u0002\u0002\u152f\u151e\u0003",
- "\u0002\u0002\u0002\u152f\u1524\u0003\u0002\u0002\u0002\u152f\u152a\u0003",
- "\u0002\u0002\u0002\u1530\u1531\u0003\u0002\u0002\u0002\u1531\u152f\u0003",
- "\u0002\u0002\u0002\u1531\u1532\u0003\u0002\u0002\u0002\u1532\u0197\u0003",
- "\u0002\u0002\u0002\u1533\u1534\u0007\n\u0002\u0002\u1534\u1535\u0007",
- "\u0314\u0002\u0002\u1535\u1538\u0007\u0092\u0002\u0002\u1536\u1539\u0005",
- "\u03c6\u01e4\u0002\u1537\u1539\u0007\u01d2\u0002\u0002\u1538\u1536\u0003",
- "\u0002\u0002\u0002\u1538\u1537\u0003\u0002\u0002\u0002\u1539\u1559\u0003",
- "\u0002\u0002\u0002\u153a\u153b\u0007\u0179\u0002\u0002\u153b\u1554\u0007",
- "\u033c\u0002\u0002\u153c\u153d\u0007\u021c\u0002\u0002\u153d\u153e\u0007",
- "\u032a\u0002\u0002\u153e\u1555\t5\u0002\u0002\u153f\u1541\u0007\u033e",
- "\u0002\u0002\u1540\u153f\u0003\u0002\u0002\u0002\u1540\u1541\u0003\u0002",
- "\u0002\u0002\u1541\u1542\u0003\u0002\u0002\u0002\u1542\u1543\u0007\u02ae",
- "\u0002\u0002\u1543\u1544\u0007\u032a\u0002\u0002\u1544\u1555\u0007\u0322",
- "\u0002\u0002\u1545\u1547\u0007\u033e\u0002\u0002\u1546\u1545\u0003\u0002",
- "\u0002\u0002\u1546\u1547\u0003\u0002\u0002\u0002\u1547\u1548\u0003\u0002",
- "\u0002\u0002\u1548\u1549\u0007\u02ad\u0002\u0002\u1549\u154a\u0007\u032a",
- "\u0002\u0002\u154a\u1555\u0007\u0322\u0002\u0002\u154b\u154c\u0007\u02af",
- "\u0002\u0002\u154c\u154d\u0007\u032a\u0002\u0002\u154d\u1555\u0007\u0322",
- "\u0002\u0002\u154e\u154f\u0007\u0243\u0002\u0002\u154f\u1550\u0007\u032a",
- "\u0002\u0002\u1550\u1555\u0007\u0322\u0002\u0002\u1551\u1552\u0007\u020f",
- "\u0002\u0002\u1552\u1553\u0007\u032a\u0002\u0002\u1553\u1555\u0007\u0322",
- "\u0002\u0002\u1554\u153c\u0003\u0002\u0002\u0002\u1554\u1540\u0003\u0002",
- "\u0002\u0002\u1554\u1546\u0003\u0002\u0002\u0002\u1554\u154b\u0003\u0002",
- "\u0002\u0002\u1554\u154e\u0003\u0002\u0002\u0002\u1554\u1551\u0003\u0002",
- "\u0002\u0002\u1555\u1556\u0003\u0002\u0002\u0002\u1556\u1554\u0003\u0002",
- "\u0002\u0002\u1556\u1557\u0003\u0002\u0002\u0002\u1557\u1558\u0003\u0002",
- "\u0002\u0002\u1558\u155a\u0007\u033d\u0002\u0002\u1559\u153a\u0003\u0002",
- "\u0002\u0002\u1559\u155a\u0003\u0002\u0002\u0002\u155a\u1560\u0003\u0002",
- "\u0002\u0002\u155b\u155e\u0007\u0308\u0002\u0002\u155c\u155f\u0005\u03c6",
- "\u01e4\u0002\u155d\u155f\u0007\u01d2\u0002\u0002\u155e\u155c\u0003\u0002",
- "\u0002\u0002\u155e\u155d\u0003\u0002\u0002\u0002\u155f\u1561\u0003\u0002",
- "\u0002\u0002\u1560\u155b\u0003\u0002\u0002\u0002\u1560\u1561\u0003\u0002",
- "\u0002\u0002\u1561\u0199\u0003\u0002\u0002\u0002\u1562\u1563\u0007I",
- "\u0002\u0002\u1563\u1564\u0007\u0314\u0002\u0002\u1564\u1565\u0007\u0092",
- "\u0002\u0002\u1565\u1585\u0005\u03c6\u01e4\u0002\u1566\u1567\u0007\u0179",
- "\u0002\u0002\u1567\u1580\u0007\u033c\u0002\u0002\u1568\u1569\u0007\u021c",
- "\u0002\u0002\u1569\u156a\u0007\u032a\u0002\u0002\u156a\u1581\t5\u0002",
- "\u0002\u156b\u156d\u0007\u033e\u0002\u0002\u156c\u156b\u0003\u0002\u0002",
- "\u0002\u156c\u156d\u0003\u0002\u0002\u0002\u156d\u156e\u0003\u0002\u0002",
- "\u0002\u156e\u156f\u0007\u02ae\u0002\u0002\u156f\u1570\u0007\u032a\u0002",
- "\u0002\u1570\u1581\u0007\u0322\u0002\u0002\u1571\u1573\u0007\u033e\u0002",
- "\u0002\u1572\u1571\u0003\u0002\u0002\u0002\u1572\u1573\u0003\u0002\u0002",
- "\u0002\u1573\u1574\u0003\u0002\u0002\u0002\u1574\u1575\u0007\u02ad\u0002",
- "\u0002\u1575\u1576\u0007\u032a\u0002\u0002\u1576\u1581\u0007\u0322\u0002",
- "\u0002\u1577\u1578\u0007\u02af\u0002\u0002\u1578\u1579\u0007\u032a\u0002",
- "\u0002\u1579\u1581\u0007\u0322\u0002\u0002\u157a\u157b\u0007\u0243\u0002",
- "\u0002\u157b\u157c\u0007\u032a\u0002\u0002\u157c\u1581\u0007\u0322\u0002",
- "\u0002\u157d\u157e\u0007\u020f\u0002\u0002\u157e\u157f\u0007\u032a\u0002",
- "\u0002\u157f\u1581\u0007\u0322\u0002\u0002\u1580\u1568\u0003\u0002\u0002",
- "\u0002\u1580\u156c\u0003\u0002\u0002\u0002\u1580\u1572\u0003\u0002\u0002",
- "\u0002\u1580\u1577\u0003\u0002\u0002\u0002\u1580\u157a\u0003\u0002\u0002",
- "\u0002\u1580\u157d\u0003\u0002\u0002\u0002\u1581\u1582\u0003\u0002\u0002",
- "\u0002\u1582\u1580\u0003\u0002\u0002\u0002\u1582\u1583\u0003\u0002\u0002",
- "\u0002\u1583\u1584\u0003\u0002\u0002\u0002\u1584\u1586\u0007\u033d\u0002",
- "\u0002\u1585\u1566\u0003\u0002\u0002\u0002\u1585\u1586\u0003\u0002\u0002",
- "\u0002\u1586\u1594\u0003\u0002\u0002\u0002\u1587\u158a\u0007\u0308\u0002",
- "\u0002\u1588\u158b\u0005\u03c6\u01e4\u0002\u1589\u158b\u0007\u01d2\u0002",
- "\u0002\u158a\u1588\u0003\u0002\u0002\u0002\u158a\u1589\u0003\u0002\u0002",
- "\u0002\u158a\u158b\u0003\u0002\u0002\u0002\u158b\u1592\u0003\u0002\u0002",
- "\u0002\u158c\u158e\u0007\u033e\u0002\u0002\u158d\u158c\u0003\u0002\u0002",
- "\u0002\u158d\u158e\u0003\u0002\u0002\u0002\u158e\u158f\u0003\u0002\u0002",
- "\u0002\u158f\u1590\u0007{\u0002\u0002\u1590\u1593\u0005\u03c6\u01e4",
- "\u0002\u1591\u1593\u0007\u01d2\u0002\u0002\u1592\u158d\u0003\u0002\u0002",
- "\u0002\u1592\u1591\u0003\u0002\u0002\u0002\u1592\u1593\u0003\u0002\u0002",
- "\u0002\u1593\u1595\u0003\u0002\u0002\u0002\u1594\u1587\u0003\u0002\u0002",
- "\u0002\u1594\u1595\u0003\u0002\u0002\u0002\u1595\u019b\u0003\u0002\u0002",
- "\u0002\u1596\u1597\u0007I\u0002\u0002\u1597\u1598\u0007\u0315\u0002",
- "\u0002\u1598\u1599\u0007\u012e\u0002\u0002\u1599\u159d\u0007\u01b5\u0002",
- "\u0002\u159a\u159b\u0005\u03c6\u01e4\u0002\u159b\u159c\u0007\u0337\u0002",
- "\u0002\u159c\u159e\u0003\u0002\u0002\u0002\u159d\u159a\u0003\u0002\u0002",
- "\u0002\u159d\u159e\u0003\u0002\u0002\u0002\u159e\u159f\u0003\u0002\u0002",
- "\u0002\u159f\u15a0\u0005\u03c6\u01e4\u0002\u15a0\u15a4\u0007\u0010\u0002",
- "\u0002\u15a1\u15a5\u0007\u0326\u0002\u0002\u15a2\u15a5\u0005\u03c6\u01e4",
- "\u0002\u15a3\u15a5\u0007\u0321\u0002\u0002\u15a4\u15a1\u0003\u0002\u0002",
- "\u0002\u15a4\u15a2\u0003\u0002\u0002\u0002\u15a4\u15a3\u0003\u0002\u0002",
- "\u0002\u15a5\u019d\u0003\u0002\u0002\u0002\u15a6\u15a7\u0007I\u0002",
- "\u0002\u15a7\u15aa\u0007\u0294\u0002\u0002\u15a8\u15ab\u0005\u038c\u01c7",
- "\u0002\u15a9\u15ab\u0005\u03c6\u01e4\u0002\u15aa\u15a8\u0003\u0002\u0002",
- "\u0002\u15aa\u15a9\u0003\u0002\u0002\u0002\u15ab\u15ad\u0003\u0002\u0002",
- "\u0002\u15ac\u15ae\u0005\u01a0\u00d1\u0002\u15ad\u15ac\u0003\u0002\u0002",
- "\u0002\u15ad\u15ae\u0003\u0002\u0002\u0002\u15ae\u15b2\u0003\u0002\u0002",
- "\u0002\u15af\u15b0\u0007\u00e5\u0002\u0002\u15b0\u15b3\u0005\u03c6\u01e4",
- "\u0002\u15b1\u15b3\u0007Y\u0002\u0002\u15b2\u15af\u0003\u0002\u0002",
- "\u0002\u15b2\u15b1\u0003\u0002\u0002\u0002\u15b2\u15b3\u0003\u0002\u0002",
- "\u0002\u15b3\u019f\u0003\u0002\u0002\u0002\u15b4\u15bb\u0007\u0179\u0002",
- "\u0002\u15b5\u15b6\u0007\u02e0\u0002\u0002\u15b6\u15b7\u0007\u032a\u0002",
- "\u0002\u15b7\u15b9\t\t\u0002\u0002\u15b8\u15ba\u0007\u033e\u0002\u0002",
- "\u15b9\u15b8\u0003\u0002\u0002\u0002\u15b9\u15ba\u0003\u0002\u0002\u0002",
- "\u15ba\u15bc\u0003\u0002\u0002\u0002\u15bb\u15b5\u0003\u0002\u0002\u0002",
- "\u15bb\u15bc\u0003\u0002\u0002\u0002\u15bc\u15c3\u0003\u0002\u0002\u0002",
- "\u15bd\u15be\u0007\u02b5\u0002\u0002\u15be\u15bf\u0007\u032a\u0002\u0002",
- "\u15bf\u15c1\t\t\u0002\u0002\u15c0\u15c2\u0007\u033e\u0002\u0002\u15c1",
- "\u15c0\u0003\u0002\u0002\u0002\u15c1\u15c2\u0003\u0002\u0002\u0002\u15c2",
- "\u15c4\u0003\u0002\u0002\u0002\u15c3\u15bd\u0003\u0002\u0002\u0002\u15c3",
- "\u15c4\u0003\u0002\u0002\u0002\u15c4\u15f2\u0003\u0002\u0002\u0002\u15c5",
- "\u15c6\u0007\u0181\u0002\u0002\u15c6\u15ec\u0007\u033c\u0002\u0002\u15c7",
- "\u15c8\u0007\u02e0\u0002\u0002\u15c8\u15c9\u0007\u032a\u0002\u0002\u15c9",
- "\u15cb\t\t\u0002\u0002\u15ca\u15cc\u0007\u033e\u0002\u0002\u15cb\u15ca",
- "\u0003\u0002\u0002\u0002\u15cb\u15cc\u0003\u0002\u0002\u0002\u15cc\u15ce",
- "\u0003\u0002\u0002\u0002\u15cd\u15c7\u0003\u0002\u0002\u0002\u15cd\u15ce",
- "\u0003\u0002\u0002\u0002\u15ce\u15d5\u0003\u0002\u0002\u0002\u15cf\u15d0",
- "\u0007\u028f\u0002\u0002\u15d0\u15d1\u0007\u032a\u0002\u0002\u15d1\u15d3",
- "\u0005\u0394\u01cb\u0002\u15d2\u15d4\u0007\u033e\u0002\u0002\u15d3\u15d2",
- "\u0003\u0002\u0002\u0002\u15d3\u15d4\u0003\u0002\u0002\u0002\u15d4\u15d6",
- "\u0003\u0002\u0002\u0002\u15d5\u15cf\u0003\u0002\u0002\u0002\u15d5\u15d6",
- "\u0003\u0002\u0002\u0002\u15d6\u15dd\u0003\u0002\u0002\u0002\u15d7\u15d8",
- "\u0007\u0248\u0002\u0002\u15d8\u15d9\u0007\u032a\u0002\u0002\u15d9\u15db",
- "\u0007\u0322\u0002\u0002\u15da\u15dc\u0007\u033e\u0002\u0002\u15db\u15da",
- "\u0003\u0002\u0002\u0002\u15db\u15dc\u0003\u0002\u0002\u0002\u15dc\u15de",
- "\u0003\u0002\u0002\u0002\u15dd\u15d7\u0003\u0002\u0002\u0002\u15dd\u15de",
- "\u0003\u0002\u0002\u0002\u15de\u15e9\u0003\u0002\u0002\u0002\u15df\u15e0",
- "\u0007v\u0002\u0002\u15e0\u15e4\u0007\u0010\u0002\u0002\u15e1\u15e5",
- "\u0007\u02cb\u0002\u0002\u15e2\u15e5\u0007\u0326\u0002\u0002\u15e3\u15e5",
- "\u0007\u027d\u0002\u0002\u15e4\u15e1\u0003\u0002\u0002\u0002\u15e4\u15e2",
- "\u0003\u0002\u0002\u0002\u15e4\u15e3\u0003\u0002\u0002\u0002\u15e5\u15e7",
- "\u0003\u0002\u0002\u0002\u15e6\u15e8\u0007\u033e\u0002\u0002\u15e7\u15e6",
- "\u0003\u0002\u0002\u0002\u15e7\u15e8\u0003\u0002\u0002\u0002\u15e8\u15ea",
- "\u0003\u0002\u0002\u0002\u15e9\u15df\u0003\u0002\u0002\u0002\u15e9\u15ea",
- "\u0003\u0002\u0002\u0002\u15ea\u15ed\u0003\u0002\u0002\u0002\u15eb\u15ed",
- "\u0007g\u0002\u0002\u15ec\u15cd\u0003\u0002\u0002\u0002\u15ec\u15eb",
- "\u0003\u0002\u0002\u0002\u15ed\u15ee\u0003\u0002\u0002\u0002\u15ee\u15f0",
- "\u0007\u033d\u0002\u0002\u15ef\u15f1\u0007\u033e\u0002\u0002\u15f0\u15ef",
- "\u0003\u0002\u0002\u0002\u15f0\u15f1\u0003\u0002\u0002\u0002\u15f1\u15f3",
- "\u0003\u0002\u0002\u0002\u15f2\u15c5\u0003\u0002\u0002\u0002\u15f2\u15f3",
- "\u0003\u0002\u0002\u0002\u15f3\u15fb\u0003\u0002\u0002\u0002\u15f4\u15f5",
- "\u0007\u0284\u0002\u0002\u15f5\u15f6\u0007\u033c\u0002\u0002\u15f6\u15f7",
- "\u0007\u02e0\u0002\u0002\u15f7\u15f8\u0007\u032a\u0002\u0002\u15f8\u15f9",
- "\t\t\u0002\u0002\u15f9\u15fa\u0003\u0002\u0002\u0002\u15fa\u15fc\u0007",
- "\u033d\u0002\u0002\u15fb\u15f4\u0003\u0002\u0002\u0002\u15fb\u15fc\u0003",
- "\u0002\u0002\u0002\u15fc\u01a1\u0003\u0002\u0002\u0002\u15fd\u15fe\u0007",
- "\n\u0002\u0002\u15fe\u1601\u0007\u0294\u0002\u0002\u15ff\u1602\u0005",
- "\u038c\u01c7\u0002\u1600\u1602\u0005\u03c6\u01e4\u0002\u1601\u15ff\u0003",
- "\u0002\u0002\u0002\u1601\u1600\u0003\u0002\u0002\u0002\u1602\u1605\u0003",
- "\u0002\u0002\u0002\u1603\u1606\u0005\u01a0\u00d1\u0002\u1604\u1606\u0005",
- "\u01a4\u00d3\u0002\u1605\u1603\u0003\u0002\u0002\u0002\u1605\u1604\u0003",
- "\u0002\u0002\u0002\u1606\u01a3\u0003\u0002\u0002\u0002\u1607\u160d\u0007",
- "\u02a1\u0002\u0002\u1608\u1609\u0007\u0179\u0002\u0002\u1609\u160a\u0007",
- "\u033c\u0002\u0002\u160a\u160b\u0005\u01a6\u00d4\u0002\u160b\u160c\u0007",
- "\u033d\u0002\u0002\u160c\u160e\u0003\u0002\u0002\u0002\u160d\u1608\u0003",
- "\u0002\u0002\u0002\u160d\u160e\u0003\u0002\u0002\u0002\u160e\u161d\u0003",
- "\u0002\u0002\u0002\u160f\u1614\u0007\u02aa\u0002\u0002\u1610\u1611\u0007",
- "\u0179\u0002\u0002\u1611\u1612\u0007\u0236\u0002\u0002\u1612\u1613\u0007",
- "\u032a\u0002\u0002\u1613\u1615\t\t\u0002\u0002\u1614\u1610\u0003\u0002",
- "\u0002\u0002\u1614\u1615\u0003\u0002\u0002\u0002\u1615\u161d\u0003\u0002",
- "\u0002\u0002\u1616\u1617\u0007\u025b\u0002\u0002\u1617\u161a\u0007\u015a",
- "\u0002\u0002\u1618\u161b\u0005\u03c6\u01e4\u0002\u1619\u161b\u0007Y",
- "\u0002\u0002\u161a\u1618\u0003\u0002\u0002\u0002\u161a\u1619\u0003\u0002",
- "\u0002\u0002\u161b\u161d\u0003\u0002\u0002\u0002\u161c\u1607\u0003\u0002",
- "\u0002\u0002\u161c\u160f\u0003\u0002\u0002\u0002\u161c\u1616\u0003\u0002",
- "\u0002\u0002\u161d\u01a5\u0003\u0002\u0002\u0002\u161e\u161f\u0007\u024a",
- "\u0002\u0002\u161f\u1620\u0007\u032a\u0002\u0002\u1620\u1621\u0007\u0322",
- "\u0002\u0002\u1621\u01a7\u0003\u0002\u0002\u0002\u1622\u1623\u0007I",
- "\u0002\u0002\u1623\u1624\u0007D\u0002\u0002\u1624\u1627\u0005\u03b0",
- "\u01d9\u0002\u1625\u1626\u0007\u0014\u0002\u0002\u1626\u1628\u0005\u03c6",
- "\u01e4\u0002\u1627\u1625\u0003\u0002\u0002\u0002\u1627\u1628\u0003\u0002",
- "\u0002\u0002\u1628\u1629\u0003\u0002\u0002\u0002\u1629\u1634\u0007\u033c",
- "\u0002\u0002\u162a\u162d\u0005\u03c6\u01e4\u0002\u162b\u162d\u0007Y",
- "\u0002\u0002\u162c\u162a\u0003\u0002\u0002\u0002\u162c\u162b\u0003\u0002",
- "\u0002\u0002\u162d\u162e\u0003\u0002\u0002\u0002\u162e\u162f\u0007\u02ce",
- "\u0002\u0002\u162f\u1630\u0007&\u0002\u0002\u1630\u1632\t6\u0002\u0002",
- "\u1631\u1633\u0007\u033e\u0002\u0002\u1632\u1631\u0003\u0002\u0002\u0002",
- "\u1632\u1633\u0003\u0002\u0002\u0002\u1633\u1635\u0003\u0002\u0002\u0002",
- "\u1634\u162c\u0003\u0002\u0002\u0002\u1635\u1636\u0003\u0002\u0002\u0002",
- "\u1636\u1634\u0003\u0002\u0002\u0002\u1636\u1637\u0003\u0002\u0002\u0002",
- "\u1637\u1638\u0003\u0002\u0002\u0002\u1638\u1639\u0007\u033d\u0002\u0002",
- "\u1639\u01a9\u0003\u0002\u0002\u0002\u163a\u1641\u0005\u03ac\u01d7\u0002",
- "\u163b\u1641\u0005\u03ae\u01d8\u0002\u163c\u1641\u0005\u03b4\u01db\u0002",
- "\u163d\u1641\u0005\u03b8\u01dd\u0002\u163e\u1641\u0005\u03bc\u01df\u0002",
- "\u163f\u1641\u0005\u03b6\u01dc\u0002\u1640\u163a\u0003\u0002\u0002\u0002",
- "\u1640\u163b\u0003\u0002\u0002\u0002\u1640\u163c\u0003\u0002\u0002\u0002",
- "\u1640\u163d\u0003\u0002\u0002\u0002\u1640\u163e\u0003\u0002\u0002\u0002",
- "\u1640\u163f\u0003\u0002\u0002\u0002\u1641\u01ab\u0003\u0002\u0002\u0002",
- "\u1642\u1643\u0007I\u0002\u0002\u1643\u1644\u0007\u0250\u0002\u0002",
- "\u1644\u1645\u0007\u0301\u0002\u0002\u1645\u1648\u0005\u03c6\u01e4\u0002",
- "\u1646\u1647\u0007\u0014\u0002\u0002\u1647\u1649\u0005\u03c6\u01e4\u0002",
- "\u1648\u1646\u0003\u0002\u0002\u0002\u1648\u1649\u0003\u0002\u0002\u0002",
- "\u1649\u164a\u0003\u0002\u0002\u0002\u164a\u164b\u0007\u030a\u0002\u0002",
- "\u164b\u1654\u0007\u032a\u0002\u0002\u164c\u1655\u0007\u00d5\u0002\u0002",
- "\u164d\u1655\u0007\u01e8\u0002\u0002\u164e\u1655\u0007\u0311\u0002\u0002",
- "\u164f\u1650\u0007\u0309\u0002\u0002\u1650\u1651\u0007\u0179\u0002\u0002",
- "\u1651\u1652\u0007\u012e\u0002\u0002\u1652\u1653\u0007\u01b5\u0002\u0002",
- "\u1653\u1655\u0005\u03c6\u01e4\u0002\u1654\u164c\u0003\u0002\u0002\u0002",
- "\u1654\u164d\u0003\u0002\u0002\u0002\u1654\u164e\u0003\u0002\u0002\u0002",
- "\u1654\u164f\u0003\u0002\u0002\u0002\u1655\u01ad\u0003\u0002\u0002\u0002",
- "\u1656\u1658\u0005\u02e6\u0174\u0002\u1657\u1656\u0003\u0002\u0002\u0002",
- "\u1657\u1658\u0003\u0002\u0002\u0002\u1658\u1659\u0003\u0002\u0002\u0002",
- "\u1659\u1661\u0007\u00c9\u0002\u0002\u165a\u165b\u0007\u015b\u0002\u0002",
- "\u165b\u165c\u0007\u033c\u0002\u0002\u165c\u165d\u0005\u02d8\u016d\u0002",
- "\u165d\u165f\u0007\u033d\u0002\u0002\u165e\u1660\u0007\u00f5\u0002\u0002",
- "\u165f\u165e\u0003\u0002\u0002\u0002\u165f\u1660\u0003\u0002\u0002\u0002",
- "\u1660\u1662\u0003\u0002\u0002\u0002\u1661\u165a\u0003\u0002\u0002\u0002",
- "\u1661\u1662\u0003\u0002\u0002\u0002\u1662\u1664\u0003\u0002\u0002\u0002",
- "\u1663\u1665\u0007\u00a5\u0002\u0002\u1664\u1663\u0003\u0002\u0002\u0002",
- "\u1664\u1665\u0003\u0002\u0002\u0002\u1665\u1666\u0003\u0002\u0002\u0002",
- "\u1666\u1668\u0005\u0398\u01cd\u0002\u1667\u1669\u0005\u035a\u01ae\u0002",
- "\u1668\u1667\u0003\u0002\u0002\u0002\u1668\u1669\u0003\u0002\u0002\u0002",
- "\u1669\u166b\u0003\u0002\u0002\u0002\u166a\u166c\u0005\u0354\u01ab\u0002",
- "\u166b\u166a\u0003\u0002\u0002\u0002\u166b\u166c\u0003\u0002\u0002\u0002",
- "\u166c\u166d\u0003\u0002\u0002\u0002\u166d\u166e\u0007\u0308\u0002\u0002",
- "\u166e\u166f\u0005\u0320\u0191\u0002\u166f\u1670\u0007\u00e5\u0002\u0002",
- "\u1670\u167b\u0005\u02ee\u0178\u0002\u1671\u1672\u0007\u0175\u0002\u0002",
- "\u1672\u1675\u0007\u00bc\u0002\u0002\u1673\u1674\u0007\u000b\u0002\u0002",
- "\u1674\u1676\u0005\u02ee\u0178\u0002\u1675\u1673\u0003\u0002\u0002\u0002",
- "\u1675\u1676\u0003\u0002\u0002\u0002\u1676\u1677\u0003\u0002\u0002\u0002",
- "\u1677\u1678\u0007\u0159\u0002\u0002\u1678\u167a\u0005\u01b0\u00d9\u0002",
- "\u1679\u1671\u0003\u0002\u0002\u0002\u167a\u167d\u0003\u0002\u0002\u0002",
- "\u167b\u1679\u0003\u0002\u0002\u0002\u167b\u167c\u0003\u0002\u0002\u0002",
- "\u167c\u168b\u0003\u0002\u0002\u0002\u167d\u167b\u0003\u0002\u0002\u0002",
- "\u167e\u167f\u0007\u0175\u0002\u0002\u167f\u1680\u0007\u00dc\u0002\u0002",
- "\u1680\u1683\u0007\u00bc\u0002\u0002\u1681\u1682\u0007&\u0002\u0002",
- "\u1682\u1684\u0007\u0156\u0002\u0002\u1683\u1681\u0003\u0002\u0002\u0002",
- "\u1683\u1684\u0003\u0002\u0002\u0002\u1684\u1687\u0003\u0002\u0002\u0002",
- "\u1685\u1686\u0007\u000b\u0002\u0002\u1686\u1688\u0005\u02ee\u0178\u0002",
- "\u1687\u1685\u0003\u0002\u0002\u0002\u1687\u1688\u0003\u0002\u0002\u0002",
- "\u1688\u1689\u0003\u0002\u0002\u0002\u1689\u168a\u0007\u0159\u0002\u0002",
- "\u168a\u168c\u0005\u01b2\u00da\u0002\u168b\u167e\u0003\u0002\u0002\u0002",
- "\u168b\u168c\u0003\u0002\u0002\u0002\u168c\u169a\u0003\u0002\u0002\u0002",
- "\u168d\u168e\u0007\u0175\u0002\u0002\u168e\u168f\u0007\u00dc\u0002\u0002",
- "\u168f\u1690\u0007\u00bc\u0002\u0002\u1690\u1691\u0007&\u0002\u0002",
- "\u1691\u1694\u0007\u0142\u0002\u0002\u1692\u1693\u0007\u000b\u0002\u0002",
- "\u1693\u1695\u0005\u02ee\u0178\u0002\u1694\u1692\u0003\u0002\u0002\u0002",
- "\u1694\u1695\u0003\u0002\u0002\u0002\u1695\u1696\u0003\u0002\u0002\u0002",
- "\u1696\u1697\u0007\u0159\u0002\u0002\u1697\u1699\u0005\u01b0\u00d9\u0002",
- "\u1698\u168d\u0003\u0002\u0002\u0002\u1699\u169c\u0003\u0002\u0002\u0002",
- "\u169a\u1698\u0003\u0002\u0002\u0002\u169a\u169b\u0003\u0002\u0002\u0002",
- "\u169b\u169e\u0003\u0002\u0002\u0002\u169c\u169a\u0003\u0002\u0002\u0002",
- "\u169d\u169f\u0005\u01c4\u00e3\u0002\u169e\u169d\u0003\u0002\u0002\u0002",
- "\u169e\u169f\u0003\u0002\u0002\u0002\u169f\u16a1\u0003\u0002\u0002\u0002",
- "\u16a0\u16a2\u0005\u030c\u0187\u0002\u16a1\u16a0\u0003\u0002\u0002\u0002",
- "\u16a1\u16a2\u0003\u0002\u0002\u0002\u16a2\u16a3\u0003\u0002\u0002\u0002",
- "\u16a3\u16a4\u0007\u033f\u0002\u0002\u16a4\u01af\u0003\u0002\u0002\u0002",
- "\u16a5\u16a6\u0007\u0169\u0002\u0002\u16a6\u16a7\u0007\u013b\u0002\u0002",
- "\u16a7\u16ac\u0005\u02ea\u0176\u0002\u16a8\u16a9\u0007\u033e\u0002\u0002",
- "\u16a9\u16ab\u0005\u02ea\u0176\u0002\u16aa\u16a8\u0003\u0002\u0002\u0002",
- "\u16ab\u16ae\u0003\u0002\u0002\u0002\u16ac\u16aa\u0003\u0002\u0002\u0002",
- "\u16ac\u16ad\u0003\u0002\u0002\u0002\u16ad\u16b1\u0003\u0002\u0002\u0002",
- "\u16ae\u16ac\u0003\u0002\u0002\u0002\u16af\u16b1\u0007\\\u0002\u0002",
- "\u16b0\u16a5\u0003\u0002\u0002\u0002\u16b0\u16af\u0003\u0002\u0002\u0002",
- "\u16b1\u01b1\u0003\u0002\u0002\u0002\u16b2\u16b7\u0007\u00a2\u0002\u0002",
- "\u16b3\u16b4\u0007\u033c\u0002\u0002\u16b4\u16b5\u0005\u039e\u01d0\u0002",
- "\u16b5\u16b6\u0007\u033d\u0002\u0002\u16b6\u16b8\u0003\u0002\u0002\u0002",
- "\u16b7\u16b3\u0003\u0002\u0002\u0002\u16b7\u16b8\u0003\u0002\u0002\u0002",
- "\u16b8\u16bc\u0003\u0002\u0002\u0002\u16b9\u16bd\u0005\u0364\u01b3\u0002",
- "\u16ba\u16bb\u0007Y\u0002\u0002\u16bb\u16bd\u0007\u016f\u0002\u0002",
- "\u16bc\u16b9\u0003\u0002\u0002\u0002\u16bc\u16ba\u0003\u0002\u0002\u0002",
- "\u16bd\u01b3\u0003\u0002\u0002\u0002\u16be\u16c0\u0005\u02e6\u0174\u0002",
- "\u16bf\u16be\u0003\u0002\u0002\u0002\u16bf\u16c0\u0003\u0002\u0002\u0002",
- "\u16c0\u16c1\u0003\u0002\u0002\u0002\u16c1\u16cb\u0007\\\u0002\u0002",
- "\u16c2\u16c3\u0007\u015b\u0002\u0002\u16c3\u16c4\u0007\u033c\u0002\u0002",
- "\u16c4\u16c5\u0005\u02d8\u016d\u0002\u16c5\u16c7\u0007\u033d\u0002\u0002",
- "\u16c6\u16c8\u0007\u00f5\u0002\u0002\u16c7\u16c6\u0003\u0002\u0002\u0002",
- "\u16c7\u16c8\u0003\u0002\u0002\u0002\u16c8\u16cc\u0003\u0002\u0002\u0002",
- "\u16c9\u16ca\u0007\u015b\u0002\u0002\u16ca\u16cc\u0007\u0322\u0002\u0002",
- "\u16cb\u16c2\u0003\u0002\u0002\u0002\u16cb\u16c9\u0003\u0002\u0002\u0002",
- "\u16cb\u16cc\u0003\u0002\u0002\u0002\u16cc\u16ce\u0003\u0002\u0002\u0002",
- "\u16cd\u16cf\u0007\u008b\u0002\u0002\u16ce\u16cd\u0003\u0002\u0002\u0002",
- "\u16ce\u16cf\u0003\u0002\u0002\u0002\u16cf\u16d0\u0003\u0002\u0002\u0002",
- "\u16d0\u16d2\u0005\u01b6\u00dc\u0002\u16d1\u16d3\u0005\u035a\u01ae\u0002",
- "\u16d2\u16d1\u0003\u0002\u0002\u0002\u16d2\u16d3\u0003\u0002\u0002\u0002",
- "\u16d3\u16d5\u0003\u0002\u0002\u0002\u16d4\u16d6\u0005\u01c4\u00e3\u0002",
- "\u16d5\u16d4\u0003\u0002\u0002\u0002\u16d5\u16d6\u0003\u0002\u0002\u0002",
- "\u16d6\u16d9\u0003\u0002\u0002\u0002\u16d7\u16d8\u0007\u008b\u0002\u0002",
- "\u16d8\u16da\u0005\u0320\u0191\u0002\u16d9\u16d7\u0003\u0002\u0002\u0002",
- "\u16d9\u16da\u0003\u0002\u0002\u0002\u16da\u16e8\u0003\u0002\u0002\u0002",
- "\u16db\u16e6\u0007\u0176\u0002\u0002\u16dc\u16e7\u0005\u02ee\u0178\u0002",
- "\u16dd\u16de\u0007K\u0002\u0002\u16de\u16e4\u0007\u00e1\u0002\u0002",
- "\u16df\u16e1\u0007\u020d\u0002\u0002\u16e0\u16df\u0003\u0002\u0002\u0002",
- "\u16e0\u16e1\u0003\u0002\u0002\u0002\u16e1\u16e2\u0003\u0002\u0002\u0002",
- "\u16e2\u16e5\u0005\u03a0\u01d1\u0002\u16e3\u16e5\u0007\u0321\u0002\u0002",
- "\u16e4\u16e0\u0003\u0002\u0002\u0002\u16e4\u16e3\u0003\u0002\u0002\u0002",
- "\u16e5\u16e7\u0003\u0002\u0002\u0002\u16e6\u16dc\u0003\u0002\u0002\u0002",
- "\u16e6\u16dd\u0003\u0002\u0002\u0002\u16e7\u16e9\u0003\u0002\u0002\u0002",
- "\u16e8\u16db\u0003\u0002\u0002\u0002\u16e8\u16e9\u0003\u0002\u0002\u0002",
- "\u16e9\u16eb\u0003\u0002\u0002\u0002\u16ea\u16ec\u0005\u0304\u0183\u0002",
- "\u16eb\u16ea\u0003\u0002\u0002\u0002\u16eb\u16ec\u0003\u0002\u0002\u0002",
- "\u16ec\u16ee\u0003\u0002\u0002\u0002\u16ed\u16ef\u0005\u030c\u0187\u0002",
- "\u16ee\u16ed\u0003\u0002\u0002\u0002\u16ee\u16ef\u0003\u0002\u0002\u0002",
- "\u16ef\u16f1\u0003\u0002\u0002\u0002\u16f0\u16f2\u0007\u033f\u0002\u0002",
- "\u16f1\u16f0\u0003\u0002\u0002\u0002\u16f1\u16f2\u0003\u0002\u0002\u0002",
- "\u16f2\u01b5\u0003\u0002\u0002\u0002\u16f3\u16f8\u0005\u0398\u01cd\u0002",
- "\u16f4\u16f8\u0005\u0356\u01ac\u0002\u16f5\u16f8\u0005\u025c\u012f\u0002",
- "\u16f6\u16f8\u0007\u0321\u0002\u0002\u16f7\u16f3\u0003\u0002\u0002\u0002",
- "\u16f7\u16f4\u0003\u0002\u0002\u0002\u16f7\u16f5\u0003\u0002\u0002\u0002",
- "\u16f7\u16f6\u0003\u0002\u0002\u0002\u16f8\u01b7\u0003\u0002\u0002\u0002",
- "\u16f9\u16fb\u0005\u02e6\u0174\u0002\u16fa\u16f9\u0003\u0002\u0002\u0002",
- "\u16fa\u16fb\u0003\u0002\u0002\u0002\u16fb\u16fc\u0003\u0002\u0002\u0002",
- "\u16fc\u1704\u0007\u00a2\u0002\u0002\u16fd\u16fe\u0007\u015b\u0002\u0002",
- "\u16fe\u16ff\u0007\u033c\u0002\u0002\u16ff\u1700\u0005\u02d8\u016d\u0002",
- "\u1700\u1702\u0007\u033d\u0002\u0002\u1701\u1703\u0007\u00f5\u0002\u0002",
- "\u1702\u1701\u0003\u0002\u0002\u0002\u1702\u1703\u0003\u0002\u0002\u0002",
- "\u1703\u1705\u0003\u0002\u0002\u0002\u1704\u16fd\u0003\u0002\u0002\u0002",
- "\u1704\u1705\u0003\u0002\u0002\u0002\u1705\u1707\u0003\u0002\u0002\u0002",
- "\u1706\u1708\u0007\u00a5\u0002\u0002\u1707\u1706\u0003\u0002\u0002\u0002",
- "\u1707\u1708\u0003\u0002\u0002\u0002\u1708\u170b\u0003\u0002\u0002\u0002",
- "\u1709\u170c\u0005\u0398\u01cd\u0002\u170a\u170c\u0005\u025c\u012f\u0002",
- "\u170b\u1709\u0003\u0002\u0002\u0002\u170b\u170a\u0003\u0002\u0002\u0002",
- "\u170c\u170e\u0003\u0002\u0002\u0002\u170d\u170f\u0005\u035a\u01ae\u0002",
- "\u170e\u170d\u0003\u0002\u0002\u0002\u170e\u170f\u0003\u0002\u0002\u0002",
- "\u170f\u1714\u0003\u0002\u0002\u0002\u1710\u1711\u0007\u033c\u0002\u0002",
- "\u1711\u1712\u0005\u039e\u01d0\u0002\u1712\u1713\u0007\u033d\u0002\u0002",
- "\u1713\u1715\u0003\u0002\u0002\u0002\u1714\u1710\u0003\u0002\u0002\u0002",
- "\u1714\u1715\u0003\u0002\u0002\u0002\u1715\u1717\u0003\u0002\u0002\u0002",
- "\u1716\u1718\u0005\u01c4\u00e3\u0002\u1717\u1716\u0003\u0002\u0002\u0002",
- "\u1717\u1718\u0003\u0002\u0002\u0002\u1718\u1719\u0003\u0002\u0002\u0002",
- "\u1719\u171b\u0005\u01ba\u00de\u0002\u171a\u171c\u0005\u0304\u0183\u0002",
- "\u171b\u171a\u0003\u0002\u0002\u0002\u171b\u171c\u0003\u0002\u0002\u0002",
- "\u171c\u171e\u0003\u0002\u0002\u0002\u171d\u171f\u0005\u030c\u0187\u0002",
- "\u171e\u171d\u0003\u0002\u0002\u0002\u171e\u171f\u0003\u0002\u0002\u0002",
- "\u171f\u1721\u0003\u0002\u0002\u0002\u1720\u1722\u0007\u033f\u0002\u0002",
- "\u1721\u1720\u0003\u0002\u0002\u0002\u1721\u1722\u0003\u0002\u0002\u0002",
- "\u1722\u01b9\u0003\u0002\u0002\u0002\u1723\u1729\u0005\u0364\u01b3\u0002",
- "\u1724\u1729\u0005\u033e\u01a0\u0002\u1725\u1729\u0005\u0278\u013d\u0002",
- "\u1726\u1727\u0007Y\u0002\u0002\u1727\u1729\u0007\u016f\u0002\u0002",
- "\u1728\u1723\u0003\u0002\u0002\u0002\u1728\u1724\u0003\u0002\u0002\u0002",
- "\u1728\u1725\u0003\u0002\u0002\u0002\u1728\u1726\u0003\u0002\u0002\u0002",
- "\u1729\u01bb\u0003\u0002\u0002\u0002\u172a\u172c\u0007\u033c\u0002\u0002",
- "\u172b\u172a\u0003\u0002\u0002\u0002\u172b\u172c\u0003\u0002\u0002\u0002",
- "\u172c\u172d\u0003\u0002\u0002\u0002\u172d\u1732\u0007\u02a2\u0002\u0002",
- "\u172e\u1733\u0007\u0006\u0002\u0002\u172f\u1733\u0007b\u0002\u0002",
- "\u1730\u1733\u0005\u02fc\u017f\u0002\u1731\u1733\u0007\u0341\u0002\u0002",
- "\u1732\u172e\u0003\u0002\u0002\u0002\u1732\u172f\u0003\u0002\u0002\u0002",
- "\u1732\u1730\u0003\u0002\u0002\u0002\u1732\u1731\u0003\u0002\u0002\u0002",
- "\u1733\u173c\u0003\u0002\u0002\u0002\u1734\u1735\u0007\u0321\u0002\u0002",
- "\u1735\u1736\u0007\u032a\u0002\u0002\u1736\u1738\u0005\u02d8\u016d\u0002",
- "\u1737\u1739\u0007\u033e\u0002\u0002\u1738\u1737\u0003\u0002\u0002\u0002",
- "\u1738\u1739\u0003\u0002\u0002\u0002\u1739\u173b\u0003\u0002\u0002\u0002",
- "\u173a\u1734\u0003\u0002\u0002\u0002\u173b\u173e\u0003\u0002\u0002\u0002",
- "\u173c\u173a\u0003\u0002\u0002\u0002\u173c\u173d\u0003\u0002\u0002\u0002",
- "\u173d\u173f\u0003\u0002\u0002\u0002\u173e\u173c\u0003\u0002\u0002\u0002",
- "\u173f\u1740\u0007\u008b\u0002\u0002\u1740\u1746\u0005\u038c\u01c7\u0002",
- "\u1741\u1742\u0007\u00a5\u0002\u0002\u1742\u1743\u0005\u03c6\u01e4\u0002",
- "\u1743\u1744\u0007\u0176\u0002\u0002\u1744\u1745\u0005\u02ee\u0178\u0002",
- "\u1745\u1747\u0003\u0002\u0002\u0002\u1746\u1741\u0003\u0002\u0002\u0002",
- "\u1746\u1747\u0003\u0002\u0002\u0002\u1747\u1749\u0003\u0002\u0002\u0002",
- "\u1748\u174a\u0007\u033d\u0002\u0002\u1749\u1748\u0003\u0002\u0002\u0002",
- "\u1749\u174a\u0003\u0002\u0002\u0002\u174a\u01bd\u0003\u0002\u0002\u0002",
- "\u174b\u174d\u0005\u02e6\u0174\u0002\u174c\u174b\u0003\u0002\u0002\u0002",
- "\u174c\u174d\u0003\u0002\u0002\u0002\u174d\u174e\u0003\u0002\u0002\u0002",
- "\u174e\u1750\u0005\u02f6\u017c\u0002\u174f\u1751\u0005\u0302\u0182\u0002",
- "\u1750\u174f\u0003\u0002\u0002\u0002\u1750\u1751\u0003\u0002\u0002\u0002",
- "\u1751\u1753\u0003\u0002\u0002\u0002\u1752\u1754\u0005\u0304\u0183\u0002",
- "\u1753\u1752\u0003\u0002\u0002\u0002\u1753\u1754\u0003\u0002\u0002\u0002",
- "\u1754\u1756\u0003\u0002\u0002\u0002\u1755\u1757\u0005\u030c\u0187\u0002",
- "\u1756\u1755\u0003\u0002\u0002\u0002\u1756\u1757\u0003\u0002\u0002\u0002",
- "\u1757\u1759\u0003\u0002\u0002\u0002\u1758\u175a\u0007\u033f\u0002\u0002",
- "\u1759\u1758\u0003\u0002\u0002\u0002\u1759\u175a\u0003\u0002\u0002\u0002",
- "\u175a\u01bf\u0003\u0002\u0002\u0002\u175b\u175e\u0007\u0321\u0002\u0002",
- "\u175c\u175e\u0005\u03c2\u01e2\u0002\u175d\u175b\u0003\u0002\u0002\u0002",
- "\u175d\u175c\u0003\u0002\u0002\u0002\u175e\u01c1\u0003\u0002\u0002\u0002",
- "\u175f\u1761\u0005\u02e6\u0174\u0002\u1760\u175f\u0003\u0002\u0002\u0002",
- "\u1760\u1761\u0003\u0002\u0002\u0002\u1761\u1762\u0003\u0002\u0002\u0002",
- "\u1762\u176a\u0007\u0169\u0002\u0002\u1763\u1764\u0007\u015b\u0002\u0002",
- "\u1764\u1765\u0007\u033c\u0002\u0002\u1765\u1766\u0005\u02d8\u016d\u0002",
- "\u1766\u1768\u0007\u033d\u0002\u0002\u1767\u1769\u0007\u00f5\u0002\u0002",
- "\u1768\u1767\u0003\u0002\u0002\u0002\u1768\u1769\u0003\u0002\u0002\u0002",
- "\u1769\u176b\u0003\u0002\u0002\u0002\u176a\u1763\u0003\u0002\u0002\u0002",
- "\u176a\u176b\u0003\u0002\u0002\u0002\u176b\u176e\u0003\u0002\u0002\u0002",
- "\u176c\u176f\u0005\u0398\u01cd\u0002\u176d\u176f\u0005\u025c\u012f\u0002",
- "\u176e\u176c\u0003\u0002\u0002\u0002\u176e\u176d\u0003\u0002\u0002\u0002",
- "\u176f\u1771\u0003\u0002\u0002\u0002\u1770\u1772\u0005\u0358\u01ad\u0002",
- "\u1771\u1770\u0003\u0002\u0002\u0002\u1771\u1772\u0003\u0002\u0002\u0002",
- "\u1772\u1773\u0003\u0002\u0002\u0002\u1773\u1774\u0007\u013b\u0002\u0002",
- "\u1774\u1779\u0005\u02ea\u0176\u0002\u1775\u1776\u0007\u033e\u0002\u0002",
- "\u1776\u1778\u0005\u02ea\u0176\u0002\u1777\u1775\u0003\u0002\u0002\u0002",
- "\u1778\u177b\u0003\u0002\u0002\u0002\u1779\u1777\u0003\u0002\u0002\u0002",
- "\u1779\u177a\u0003\u0002\u0002\u0002\u177a\u177d\u0003\u0002\u0002\u0002",
- "\u177b\u1779\u0003\u0002\u0002\u0002\u177c\u177e\u0005\u01c4\u00e3\u0002",
- "\u177d\u177c\u0003\u0002\u0002\u0002\u177d\u177e\u0003\u0002\u0002\u0002",
- "\u177e\u1781\u0003\u0002\u0002\u0002\u177f\u1780\u0007\u008b\u0002\u0002",
- "\u1780\u1782\u0005\u0320\u0191\u0002\u1781\u177f\u0003\u0002\u0002\u0002",
- "\u1781\u1782\u0003\u0002\u0002\u0002\u1782\u1790\u0003\u0002\u0002\u0002",
- "\u1783\u178e\u0007\u0176\u0002\u0002\u1784\u178f\u0005\u02ec\u0177\u0002",
- "\u1785\u1786\u0007K\u0002\u0002\u1786\u178c\u0007\u00e1\u0002\u0002",
- "\u1787\u1789\u0007\u020d\u0002\u0002\u1788\u1787\u0003\u0002\u0002\u0002",
- "\u1788\u1789\u0003\u0002\u0002\u0002\u1789\u178a\u0003\u0002\u0002\u0002",
- "\u178a\u178d\u0005\u03a0\u01d1\u0002\u178b\u178d\u0007\u0321\u0002\u0002",
- "\u178c\u1788\u0003\u0002\u0002\u0002\u178c\u178b\u0003\u0002\u0002\u0002",
- "\u178d\u178f\u0003\u0002\u0002\u0002\u178e\u1784\u0003\u0002\u0002\u0002",
- "\u178e\u1785\u0003\u0002\u0002\u0002\u178f\u1791\u0003\u0002\u0002\u0002",
- "\u1790\u1783\u0003\u0002\u0002\u0002\u1790\u1791\u0003\u0002\u0002\u0002",
- "\u1791\u1793\u0003\u0002\u0002\u0002\u1792\u1794\u0005\u0304\u0183\u0002",
- "\u1793\u1792\u0003\u0002\u0002\u0002\u1793\u1794\u0003\u0002\u0002\u0002",
- "\u1794\u1796\u0003\u0002\u0002\u0002\u1795\u1797\u0005\u030c\u0187\u0002",
- "\u1796\u1795\u0003\u0002\u0002\u0002\u1796\u1797\u0003\u0002\u0002\u0002",
- "\u1797\u1799\u0003\u0002\u0002\u0002\u1798\u179a\u0007\u033f\u0002\u0002",
- "\u1799\u1798\u0003\u0002\u0002\u0002\u1799\u179a\u0003\u0002\u0002\u0002",
- "\u179a\u01c3\u0003\u0002\u0002\u0002\u179b\u179c\u0007\u027b\u0002\u0002",
- "\u179c\u17a1\u0005\u01c6\u00e4\u0002\u179d\u179e\u0007\u033e\u0002\u0002",
- "\u179e\u17a0\u0005\u01c6\u00e4\u0002\u179f\u179d\u0003\u0002\u0002\u0002",
- "\u17a0\u17a3\u0003\u0002\u0002\u0002\u17a1\u179f\u0003\u0002\u0002\u0002",
- "\u17a1\u17a2\u0003\u0002\u0002\u0002\u17a2\u17af\u0003\u0002\u0002\u0002",
- "\u17a3\u17a1\u0003\u0002\u0002\u0002\u17a4\u17a7\u0007\u00a5\u0002\u0002",
- "\u17a5\u17a8\u0007\u0321\u0002\u0002\u17a6\u17a8\u0005\u038e\u01c8\u0002",
- "\u17a7\u17a5\u0003\u0002\u0002\u0002\u17a7\u17a6\u0003\u0002\u0002\u0002",
- "\u17a8\u17ad\u0003\u0002\u0002\u0002\u17a9\u17aa\u0007\u033c\u0002\u0002",
- "\u17aa\u17ab\u0005\u039e\u01d0\u0002\u17ab\u17ac\u0007\u033d\u0002\u0002",
- "\u17ac\u17ae\u0003\u0002\u0002\u0002\u17ad\u17a9\u0003\u0002\u0002\u0002",
- "\u17ad\u17ae\u0003\u0002\u0002\u0002\u17ae\u17b0\u0003\u0002\u0002\u0002",
- "\u17af\u17a4\u0003\u0002\u0002\u0002\u17af\u17b0\u0003\u0002\u0002\u0002",
- "\u17b0\u01c5\u0003\u0002\u0002\u0002\u17b1\u17b4\u0005\u01c8\u00e5\u0002",
- "\u17b2\u17b4\u0005\u02d8\u016d\u0002\u17b3\u17b1\u0003\u0002\u0002\u0002",
- "\u17b3\u17b2\u0003\u0002\u0002\u0002\u17b4\u17b6\u0003\u0002\u0002\u0002",
- "\u17b5\u17b7\u0005\u0352\u01aa\u0002\u17b6\u17b5\u0003\u0002\u0002\u0002",
- "\u17b6\u17b7\u0003\u0002\u0002\u0002\u17b7\u01c7\u0003\u0002\u0002\u0002",
- "\u17b8\u17bc\u0007\u01d7\u0002\u0002\u17b9\u17bc\u0007\u0222\u0002\u0002",
- "\u17ba\u17bc\u0005\u038e\u01c8\u0002\u17bb\u17b8\u0003\u0002\u0002\u0002",
- "\u17bb\u17b9\u0003\u0002\u0002\u0002\u17bb\u17ba\u0003\u0002\u0002\u0002",
- "\u17bc\u17bd\u0003\u0002\u0002\u0002\u17bd\u17c0\u0007\u0337\u0002\u0002",
- "\u17be\u17c1\u0007\u0341\u0002\u0002\u17bf\u17c1\u0005\u03c6\u01e4\u0002",
- "\u17c0\u17be\u0003\u0002\u0002\u0002\u17c0\u17bf\u0003\u0002\u0002\u0002",
- "\u17c1\u17c4\u0003\u0002\u0002\u0002\u17c2\u17c4\u0007\u031a\u0002\u0002",
- "\u17c3\u17bb\u0003\u0002\u0002\u0002\u17c3\u17c2\u0003\u0002\u0002\u0002",
- "\u17c4\u01c9\u0003\u0002\u0002\u0002\u17c5\u17c6\u0007I\u0002\u0002",
- "\u17c6\u17c7\u0007T\u0002\u0002\u17c7\u17cb\u0005\u03c6\u01e4\u0002",
- "\u17c8\u17c9\u0007>\u0002\u0002\u17c9\u17ca\u0007\u032a\u0002\u0002",
- "\u17ca\u17cc\t7\u0002\u0002\u17cb\u17c8\u0003\u0002\u0002\u0002\u17cb",
- "\u17cc\u0003\u0002\u0002\u0002\u17cc\u17d9\u0003\u0002\u0002\u0002\u17cd",
- "\u17cf\u0007\u00e5\u0002\u0002\u17ce\u17d0\u0007\u0100\u0002\u0002\u17cf",
- "\u17ce\u0003\u0002\u0002\u0002\u17cf\u17d0\u0003\u0002\u0002\u0002\u17d0",
- "\u17d1\u0003\u0002\u0002\u0002\u17d1\u17d6\u0005\u0380\u01c1\u0002\u17d2",
- "\u17d3\u0007\u033e\u0002\u0002\u17d3\u17d5\u0005\u0380\u01c1\u0002\u17d4",
- "\u17d2\u0003\u0002\u0002\u0002\u17d5\u17d8\u0003\u0002\u0002\u0002\u17d6",
- "\u17d4\u0003\u0002\u0002\u0002\u17d6\u17d7\u0003\u0002\u0002\u0002\u17d7",
- "\u17da\u0003\u0002\u0002\u0002\u17d8\u17d6\u0003\u0002\u0002\u0002\u17d9",
- "\u17cd\u0003\u0002\u0002\u0002\u17d9\u17da\u0003\u0002\u0002\u0002\u17da",
- "\u17e5\u0003\u0002\u0002\u0002\u17db\u17dc\u0007\u00bb\u0002\u0002\u17dc",
- "\u17dd\u0007\u00e5\u0002\u0002\u17dd\u17e2\u0005\u0380\u01c1\u0002\u17de",
- "\u17df\u0007\u033e\u0002\u0002\u17df\u17e1\u0005\u0380\u01c1\u0002\u17e0",
- "\u17de\u0003\u0002\u0002\u0002\u17e1\u17e4\u0003\u0002\u0002\u0002\u17e2",
- "\u17e0\u0003\u0002\u0002\u0002\u17e2\u17e3\u0003\u0002\u0002\u0002\u17e3",
- "\u17e6\u0003\u0002\u0002\u0002\u17e4\u17e2\u0003\u0002\u0002\u0002\u17e5",
- "\u17db\u0003\u0002\u0002\u0002\u17e5\u17e6\u0003\u0002\u0002\u0002\u17e6",
- "\u17e9\u0003\u0002\u0002\u0002\u17e7\u17e8\u00077\u0002\u0002\u17e8",
- "\u17ea\u0005\u03c6\u01e4\u0002\u17e9\u17e7\u0003\u0002\u0002\u0002\u17e9",
- "\u17ea\u0003\u0002\u0002\u0002\u17ea\u17f4\u0003\u0002\u0002\u0002\u17eb",
- "\u17ec\u0007\u0179\u0002\u0002\u17ec\u17f1\u0005\u037c\u01bf\u0002\u17ed",
- "\u17ee\u0007\u033e\u0002\u0002\u17ee\u17f0\u0005\u037c\u01bf\u0002\u17ef",
- "\u17ed\u0003\u0002\u0002\u0002\u17f0\u17f3\u0003\u0002\u0002\u0002\u17f1",
- "\u17ef\u0003\u0002\u0002\u0002\u17f1\u17f2\u0003\u0002\u0002\u0002\u17f2",
- "\u17f5\u0003\u0002\u0002\u0002\u17f3\u17f1\u0003\u0002\u0002\u0002\u17f4",
- "\u17eb\u0003\u0002\u0002\u0002\u17f4\u17f5\u0003\u0002\u0002\u0002\u17f5",
- "\u01cb\u0003\u0002\u0002\u0002\u17f6\u17f8\u0007I\u0002\u0002\u17f7",
- "\u17f9\u0007\u0165\u0002\u0002\u17f8\u17f7\u0003\u0002\u0002\u0002\u17f8",
- "\u17f9\u0003\u0002\u0002\u0002\u17f9\u17fb\u0003\u0002\u0002\u0002\u17fa",
- "\u17fc\u0005\u03a4\u01d3\u0002\u17fb\u17fa\u0003\u0002\u0002\u0002\u17fb",
- "\u17fc\u0003\u0002\u0002\u0002\u17fc\u17fd\u0003\u0002\u0002\u0002\u17fd",
- "\u17fe\u0007\u009e\u0002\u0002\u17fe\u17ff\u0005\u03c6\u01e4\u0002\u17ff",
- "\u1800\u0007\u00e5\u0002\u0002\u1800\u1801\u0005\u0338\u019d\u0002\u1801",
- "\u1802\u0007\u033c\u0002\u0002\u1802\u1803\u0005\u039c\u01cf\u0002\u1803",
- "\u1809\u0007\u033d\u0002\u0002\u1804\u1805\u0007\u009c\u0002\u0002\u1805",
- "\u1806\u0007\u033c\u0002\u0002\u1806\u1807\u0005\u039e\u01d0\u0002\u1807",
- "\u1808\u0007\u033d\u0002\u0002\u1808\u180a\u0003\u0002\u0002\u0002\u1809",
- "\u1804\u0003\u0002\u0002\u0002\u1809\u180a\u0003\u0002\u0002\u0002\u180a",
- "\u180d\u0003\u0002\u0002\u0002\u180b\u180c\u0007\u0176\u0002\u0002\u180c",
- "\u180e\u0005\u02ee\u0178\u0002\u180d\u180b\u0003\u0002\u0002\u0002\u180d",
- "\u180e\u0003\u0002\u0002\u0002\u180e\u1810\u0003\u0002\u0002\u0002\u180f",
- "\u1811\u0005\u02c8\u0165\u0002\u1810\u180f\u0003\u0002\u0002\u0002\u1810",
- "\u1811\u0003\u0002\u0002\u0002\u1811\u1814\u0003\u0002\u0002\u0002\u1812",
- "\u1813\u0007\u00e5\u0002\u0002\u1813\u1815\u0005\u03c6\u01e4\u0002\u1814",
- "\u1812\u0003\u0002\u0002\u0002\u1814\u1815\u0003\u0002\u0002\u0002\u1815",
- "\u1817\u0003\u0002\u0002\u0002\u1816\u1818\u0007\u033f\u0002\u0002\u1817",
- "\u1816\u0003\u0002\u0002\u0002\u1817\u1818\u0003\u0002\u0002\u0002\u1818",
- "\u01cd\u0003\u0002\u0002\u0002\u1819\u181c\u0007I\u0002\u0002\u181a",
- "\u181b\u0007\u00ed\u0002\u0002\u181b\u181d\u0007\n\u0002\u0002\u181c",
- "\u181a\u0003\u0002\u0002\u0002\u181c\u181d\u0003\u0002\u0002\u0002\u181d",
- "\u1820\u0003\u0002\u0002\u0002\u181e\u1820\u0007\n\u0002\u0002\u181f",
- "\u1819\u0003\u0002\u0002\u0002\u181f\u181e\u0003\u0002\u0002\u0002\u1820",
- "\u1821\u0003\u0002\u0002\u0002\u1821\u1822\t8\u0002\u0002\u1822\u1825",
- "\u0005\u0392\u01ca\u0002\u1823\u1824\u0007\u033f\u0002\u0002\u1824\u1826",
- "\u0007\u0322\u0002\u0002\u1825\u1823\u0003\u0002\u0002\u0002\u1825\u1826",
- "\u0003\u0002\u0002\u0002\u1826\u1835\u0003\u0002\u0002\u0002\u1827\u1829",
- "\u0007\u033c\u0002\u0002\u1828\u1827\u0003\u0002\u0002\u0002\u1828\u1829",
- "\u0003\u0002\u0002\u0002\u1829\u182a\u0003\u0002\u0002\u0002\u182a\u182f",
- "\u0005\u01e4\u00f3\u0002\u182b\u182c\u0007\u033e\u0002\u0002\u182c\u182e",
- "\u0005\u01e4\u00f3\u0002\u182d\u182b\u0003\u0002\u0002\u0002\u182e\u1831",
- "\u0003\u0002\u0002\u0002\u182f\u182d\u0003\u0002\u0002\u0002\u182f\u1830",
- "\u0003\u0002\u0002\u0002\u1830\u1833\u0003\u0002\u0002\u0002\u1831\u182f",
- "\u0003\u0002\u0002\u0002\u1832\u1834\u0007\u033d\u0002\u0002\u1833\u1832",
- "\u0003\u0002\u0002\u0002\u1833\u1834\u0003\u0002\u0002\u0002\u1834\u1836",
- "\u0003\u0002\u0002\u0002\u1835\u1828\u0003\u0002\u0002\u0002\u1835\u1836",
- "\u0003\u0002\u0002\u0002\u1836\u1840\u0003\u0002\u0002\u0002\u1837\u1838",
- "\u0007\u0179\u0002\u0002\u1838\u183d\u0005\u01e6\u00f4\u0002\u1839\u183a",
- "\u0007\u033e\u0002\u0002\u183a\u183c\u0005\u01e6\u00f4\u0002\u183b\u1839",
- "\u0003\u0002\u0002\u0002\u183c\u183f\u0003\u0002\u0002\u0002\u183d\u183b",
- "\u0003\u0002\u0002\u0002\u183d\u183e\u0003\u0002\u0002\u0002\u183e\u1841",
- "\u0003\u0002\u0002\u0002\u183f\u183d\u0003\u0002\u0002\u0002\u1840\u1837",
- "\u0003\u0002\u0002\u0002\u1840\u1841\u0003\u0002\u0002\u0002\u1841\u1844",
- "\u0003\u0002\u0002\u0002\u1842\u1843\u0007\u0085\u0002\u0002\u1843\u1845",
- "\u0007\u0112\u0002\u0002\u1844\u1842\u0003\u0002\u0002\u0002\u1844\u1845",
- "\u0003\u0002\u0002\u0002\u1845\u1846\u0003\u0002\u0002\u0002\u1846\u1847",
- "\u0007\u0010\u0002\u0002\u1847\u1848\u0005\u0006\u0004\u0002\u1848\u01cf",
- "\u0003\u0002\u0002\u0002\u1849\u184c\u0005\u01d2\u00ea\u0002\u184a\u184c",
- "\u0005\u01d8\u00ed\u0002\u184b\u1849\u0003\u0002\u0002\u0002\u184b\u184a",
- "\u0003\u0002\u0002\u0002\u184c\u01d1\u0003\u0002\u0002\u0002\u184d\u1850",
- "\u0007I\u0002\u0002\u184e\u184f\u0007\u00ed\u0002\u0002\u184f\u1851",
- "\u0007\n\u0002\u0002\u1850\u184e\u0003\u0002\u0002\u0002\u1850\u1851",
- "\u0003\u0002\u0002\u0002\u1851\u1854\u0003\u0002\u0002\u0002\u1852\u1854",
- "\u0007\n\u0002\u0002\u1853\u184d\u0003\u0002\u0002\u0002\u1853\u1852",
- "\u0003\u0002\u0002\u0002\u1854\u1855\u0003\u0002\u0002\u0002\u1855\u1856",
- "\u0007\u0160\u0002\u0002\u1856\u1857\u0005\u0390\u01c9\u0002\u1857\u1858",
- "\u0007\u00e5\u0002\u0002\u1858\u1862\u0005\u038e\u01c8\u0002\u1859\u185a",
- "\u0007\u0179\u0002\u0002\u185a\u185f\u0005\u01d4\u00eb\u0002\u185b\u185c",
- "\u0007\u033e\u0002\u0002\u185c\u185e\u0005\u01d4\u00eb\u0002\u185d\u185b",
- "\u0003\u0002\u0002\u0002\u185e\u1861\u0003\u0002\u0002\u0002\u185f\u185d",
- "\u0003\u0002\u0002\u0002\u185f\u1860\u0003\u0002\u0002\u0002\u1860\u1863",
- "\u0003\u0002\u0002\u0002\u1861\u185f\u0003\u0002\u0002\u0002\u1862\u1859",
- "\u0003\u0002\u0002\u0002\u1862\u1863\u0003\u0002\u0002\u0002\u1863\u1868",
- "\u0003\u0002\u0002\u0002\u1864\u1869\u0007\u0085\u0002\u0002\u1865\u1869",
- "\u0007\u0188\u0002\u0002\u1866\u1867\u0007\u00a3\u0002\u0002\u1867\u1869",
- "\u0007\u00e1\u0002\u0002\u1868\u1864\u0003\u0002\u0002\u0002\u1868\u1865",
- "\u0003\u0002\u0002\u0002\u1868\u1866\u0003\u0002\u0002\u0002\u1869\u186a",
- "\u0003\u0002\u0002\u0002\u186a\u186f\u0005\u01d6\u00ec\u0002\u186b\u186c",
- "\u0007\u033e\u0002\u0002\u186c\u186e\u0005\u01d6\u00ec\u0002\u186d\u186b",
- "\u0003\u0002\u0002\u0002\u186e\u1871\u0003\u0002\u0002\u0002\u186f\u186d",
- "\u0003\u0002\u0002\u0002\u186f\u1870\u0003\u0002\u0002\u0002\u1870\u1874",
- "\u0003\u0002\u0002\u0002\u1871\u186f\u0003\u0002\u0002\u0002\u1872\u1873",
- "\u0007\u0179\u0002\u0002\u1873\u1875\u0007\u000e\u0002\u0002\u1874\u1872",
- "\u0003\u0002\u0002\u0002\u1874\u1875\u0003\u0002\u0002\u0002\u1875\u1879",
- "\u0003\u0002\u0002\u0002\u1876\u1877\u0007\u00dc\u0002\u0002\u1877\u1878",
- "\u0007\u0085\u0002\u0002\u1878\u187a\u0007\u0112\u0002\u0002\u1879\u1876",
- "\u0003\u0002\u0002\u0002\u1879\u187a\u0003\u0002\u0002\u0002\u187a\u187b",
- "\u0003\u0002\u0002\u0002\u187b\u187c\u0007\u0010\u0002\u0002\u187c\u187d",
- "\u0005\u0006\u0004\u0002\u187d\u01d3\u0003\u0002\u0002\u0002\u187e\u1881",
- "\u0007\u01ec\u0002\u0002\u187f\u1881\u0005\u02ae\u0158\u0002\u1880\u187e",
- "\u0003\u0002\u0002\u0002\u1880\u187f\u0003\u0002\u0002\u0002\u1881\u01d5",
- "\u0003\u0002\u0002\u0002\u1882\u1883\t9\u0002\u0002\u1883\u01d7\u0003",
- "\u0002\u0002\u0002\u1884\u1887\u0007I\u0002\u0002\u1885\u1886\u0007",
- "\u00ed\u0002\u0002\u1886\u1888\u0007\n\u0002\u0002\u1887\u1885\u0003",
- "\u0002\u0002\u0002\u1887\u1888\u0003\u0002\u0002\u0002\u1888\u188b\u0003",
- "\u0002\u0002\u0002\u1889\u188b\u0007\n\u0002\u0002\u188a\u1884\u0003",
- "\u0002\u0002\u0002\u188a\u1889\u0003\u0002\u0002\u0002\u188b\u188c\u0003",
- "\u0002\u0002\u0002\u188c\u188d\u0007\u0160\u0002\u0002\u188d\u188e\u0005",
- "\u03c8\u01e5\u0002\u188e\u1892\u0007\u00e5\u0002\u0002\u188f\u1890\u0007",
- "\u0006\u0002\u0002\u1890\u1893\u0007\u0135\u0002\u0002\u1891\u1893\u0007",
- "T\u0002\u0002\u1892\u188f\u0003\u0002\u0002\u0002\u1892\u1891\u0003",
- "\u0002\u0002\u0002\u1893\u189d\u0003\u0002\u0002\u0002\u1894\u1895\u0007",
- "\u0179\u0002\u0002\u1895\u189a\u0005\u01d4\u00eb\u0002\u1896\u1897\u0007",
- "\u033e\u0002\u0002\u1897\u1899\u0005\u01d4\u00eb\u0002\u1898\u1896\u0003",
- "\u0002\u0002\u0002\u1899\u189c\u0003\u0002\u0002\u0002\u189a\u1898\u0003",
- "\u0002\u0002\u0002\u189a\u189b\u0003\u0002\u0002\u0002\u189b\u189e\u0003",
- "\u0002\u0002\u0002\u189c\u189a\u0003\u0002\u0002\u0002\u189d\u1894\u0003",
- "\u0002\u0002\u0002\u189d\u189e\u0003\u0002\u0002\u0002\u189e\u189f\u0003",
- "\u0002\u0002\u0002\u189f\u18a0\t:\u0002\u0002\u18a0\u18a5\u0005\u01da",
- "\u00ee\u0002\u18a1\u18a2\u0007\u033e\u0002\u0002\u18a2\u18a4\u0005\u01d6",
- "\u00ec\u0002\u18a3\u18a1\u0003\u0002\u0002\u0002\u18a4\u18a7\u0003\u0002",
- "\u0002\u0002\u18a5\u18a3\u0003\u0002\u0002\u0002\u18a5\u18a6\u0003\u0002",
- "\u0002\u0002\u18a6\u18a8\u0003\u0002\u0002\u0002\u18a7\u18a5\u0003\u0002",
- "\u0002\u0002\u18a8\u18a9\u0007\u0010\u0002\u0002\u18a9\u18aa\u0005\u0006",
- "\u0004\u0002\u18aa\u01d9\u0003\u0002\u0002\u0002\u18ab\u18ac\u0005\u03c8",
- "\u01e5\u0002\u18ac\u01db\u0003\u0002\u0002\u0002\u18ad\u18b0\u0007I",
- "\u0002\u0002\u18ae\u18af\u0007\u00ed\u0002\u0002\u18af\u18b1\u0007\n",
- "\u0002\u0002\u18b0\u18ae\u0003\u0002\u0002\u0002\u18b0\u18b1\u0003\u0002",
- "\u0002\u0002\u18b1\u18b4\u0003\u0002\u0002\u0002\u18b2\u18b4\u0007\n",
- "\u0002\u0002\u18b3\u18ad\u0003\u0002\u0002\u0002\u18b3\u18b2\u0003\u0002",
- "\u0002\u0002\u18b4\u18b5\u0003\u0002\u0002\u0002\u18b5\u18b6\u0007\u008d",
- "\u0002\u0002\u18b6\u18c4\u0005\u0392\u01ca\u0002\u18b7\u18b8\u0007\u033c",
- "\u0002\u0002\u18b8\u18bd\u0005\u01e4\u00f3\u0002\u18b9\u18ba\u0007\u033e",
- "\u0002\u0002\u18ba\u18bc\u0005\u01e4\u00f3\u0002\u18bb\u18b9\u0003\u0002",
- "\u0002\u0002\u18bc\u18bf\u0003\u0002\u0002\u0002\u18bd\u18bb\u0003\u0002",
- "\u0002\u0002\u18bd\u18be\u0003\u0002\u0002\u0002\u18be\u18c0\u0003\u0002",
- "\u0002\u0002\u18bf\u18bd\u0003\u0002\u0002\u0002\u18c0\u18c1\u0007\u033d",
- "\u0002\u0002\u18c1\u18c5\u0003\u0002\u0002\u0002\u18c2\u18c3\u0007\u033c",
- "\u0002\u0002\u18c3\u18c5\u0007\u033d\u0002\u0002\u18c4\u18b7\u0003\u0002",
- "\u0002\u0002\u18c4\u18c2\u0003\u0002\u0002\u0002\u18c5\u18c9\u0003\u0002",
- "\u0002\u0002\u18c6\u18ca\u0005\u01de\u00f0\u0002\u18c7\u18ca\u0005\u01e0",
- "\u00f1\u0002\u18c8\u18ca\u0005\u01e2\u00f2\u0002\u18c9\u18c6\u0003\u0002",
- "\u0002\u0002\u18c9\u18c7\u0003\u0002\u0002\u0002\u18c9\u18c8\u0003\u0002",
- "\u0002\u0002\u18ca\u18cc\u0003\u0002\u0002\u0002\u18cb\u18cd\u0007\u033f",
- "\u0002\u0002\u18cc\u18cb\u0003\u0002\u0002\u0002\u18cc\u18cd\u0003\u0002",
- "\u0002\u0002\u18cd\u01dd\u0003\u0002\u0002\u0002\u18ce\u18cf\u0007\u011b",
- "\u0002\u0002\u18cf\u18d9\u0007\u0153\u0002\u0002\u18d0\u18d1\u0007\u0179",
- "\u0002\u0002\u18d1\u18d6\u0005\u01e8\u00f5\u0002\u18d2\u18d3\u0007\u033e",
- "\u0002\u0002\u18d3\u18d5\u0005\u01e8\u00f5\u0002\u18d4\u18d2\u0003\u0002",
- "\u0002\u0002\u18d5\u18d8\u0003\u0002\u0002\u0002\u18d6\u18d4\u0003\u0002",
- "\u0002\u0002\u18d6\u18d7\u0003\u0002\u0002\u0002\u18d7\u18da\u0003\u0002",
- "\u0002\u0002\u18d8\u18d6\u0003\u0002\u0002\u0002\u18d9\u18d0\u0003\u0002",
- "\u0002\u0002\u18d9\u18da\u0003\u0002\u0002\u0002\u18da\u18dc\u0003\u0002",
- "\u0002\u0002\u18db\u18dd\u0007\u0010\u0002\u0002\u18dc\u18db\u0003\u0002",
- "\u0002\u0002\u18dc\u18dd\u0003\u0002\u0002\u0002\u18dd\u18de\u0003\u0002",
- "\u0002\u0002\u18de\u18e4\u0007\u011a\u0002\u0002\u18df\u18e0\u0007\u033c",
- "\u0002\u0002\u18e0\u18e1\u0005\u01be\u00e0\u0002\u18e1\u18e2\u0007\u033d",
- "\u0002\u0002\u18e2\u18e5\u0003\u0002\u0002\u0002\u18e3\u18e5\u0005\u01be",
- "\u00e0\u0002\u18e4\u18df\u0003\u0002\u0002\u0002\u18e4\u18e3\u0003\u0002",
- "\u0002\u0002\u18e5\u01df\u0003\u0002\u0002\u0002\u18e6\u18e7\u0007\u011b",
- "\u0002\u0002\u18e7\u18e8\u0007\u0321\u0002\u0002\u18e8\u18f2\u0005\u02b2",
- "\u015a\u0002\u18e9\u18ea\u0007\u0179\u0002\u0002\u18ea\u18ef\u0005\u01e8",
- "\u00f5\u0002\u18eb\u18ec\u0007\u033e\u0002\u0002\u18ec\u18ee\u0005\u01e8",
- "\u00f5\u0002\u18ed\u18eb\u0003\u0002\u0002\u0002\u18ee\u18f1\u0003\u0002",
- "\u0002\u0002\u18ef\u18ed\u0003\u0002\u0002\u0002\u18ef\u18f0\u0003\u0002",
- "\u0002\u0002\u18f0\u18f3\u0003\u0002\u0002\u0002\u18f1\u18ef\u0003\u0002",
- "\u0002\u0002\u18f2\u18e9\u0003\u0002\u0002\u0002\u18f2\u18f3\u0003\u0002",
- "\u0002\u0002\u18f3\u18f5\u0003\u0002\u0002\u0002\u18f4\u18f6\u0007\u0010",
- "\u0002\u0002\u18f5\u18f4\u0003\u0002\u0002\u0002\u18f5\u18f6\u0003\u0002",
- "\u0002\u0002\u18f6\u18f7\u0003\u0002\u0002\u0002\u18f7\u18fb\u0007\u001c",
- "\u0002\u0002\u18f8\u18fa\u0005\b\u0005\u0002\u18f9\u18f8\u0003\u0002",
- "\u0002\u0002\u18fa\u18fd\u0003\u0002\u0002\u0002\u18fb\u18f9\u0003\u0002",
- "\u0002\u0002\u18fb\u18fc\u0003\u0002\u0002\u0002\u18fc\u18fe\u0003\u0002",
- "\u0002\u0002\u18fd\u18fb\u0003\u0002\u0002\u0002\u18fe\u1900\u0007\u011a",
- "\u0002\u0002\u18ff\u1901\u0007\u033f\u0002\u0002\u1900\u18ff\u0003\u0002",
- "\u0002\u0002\u1900\u1901\u0003\u0002\u0002\u0002\u1901\u1902\u0003\u0002",
- "\u0002\u0002\u1902\u1904\u0007l\u0002\u0002\u1903\u1905\u0007\u033f",
- "\u0002\u0002\u1904\u1903\u0003\u0002\u0002\u0002\u1904\u1905\u0003\u0002",
- "\u0002\u0002\u1905\u01e1\u0003\u0002\u0002\u0002\u1906\u1907\u0007\u011b",
- "\u0002\u0002\u1907\u1911\u0005\u03be\u01e0\u0002\u1908\u1909\u0007\u0179",
- "\u0002\u0002\u1909\u190e\u0005\u01e8\u00f5\u0002\u190a\u190b\u0007\u033e",
- "\u0002\u0002\u190b\u190d\u0005\u01e8\u00f5\u0002\u190c\u190a\u0003\u0002",
- "\u0002\u0002\u190d\u1910\u0003\u0002\u0002\u0002\u190e\u190c\u0003\u0002",
- "\u0002\u0002\u190e\u190f\u0003\u0002\u0002\u0002\u190f\u1912\u0003\u0002",
- "\u0002\u0002\u1910\u190e\u0003\u0002\u0002\u0002\u1911\u1908\u0003\u0002",
- "\u0002\u0002\u1911\u1912\u0003\u0002\u0002\u0002\u1912\u1914\u0003\u0002",
- "\u0002\u0002\u1913\u1915\u0007\u0010\u0002\u0002\u1914\u1913\u0003\u0002",
- "\u0002\u0002\u1914\u1915\u0003\u0002\u0002\u0002\u1915\u1916\u0003\u0002",
- "\u0002\u0002\u1916\u191a\u0007\u001c\u0002\u0002\u1917\u1919\u0005\b",
- "\u0005\u0002\u1918\u1917\u0003\u0002\u0002\u0002\u1919\u191c\u0003\u0002",
- "\u0002\u0002\u191a\u1918\u0003\u0002\u0002\u0002\u191a\u191b\u0003\u0002",
- "\u0002\u0002\u191b\u191d\u0003\u0002\u0002\u0002\u191c\u191a\u0003\u0002",
- "\u0002\u0002\u191d\u191e\u0007\u011a\u0002\u0002\u191e\u1920\u0005\u02d8",
- "\u016d\u0002\u191f\u1921\u0007\u033f\u0002\u0002\u1920\u191f\u0003\u0002",
- "\u0002\u0002\u1920\u1921\u0003\u0002\u0002\u0002\u1921\u1922\u0003\u0002",
- "\u0002\u0002\u1922\u1923\u0007l\u0002\u0002\u1923\u01e3\u0003\u0002",
- "\u0002\u0002\u1924\u1928\u0007\u0321\u0002\u0002\u1925\u1926\u0005\u03c6",
- "\u01e4\u0002\u1926\u1927\u0007\u0337\u0002\u0002\u1927\u1929\u0003\u0002",
- "\u0002\u0002\u1928\u1925\u0003\u0002\u0002\u0002\u1928\u1929\u0003\u0002",
- "\u0002\u0002\u1929\u192b\u0003\u0002\u0002\u0002\u192a\u192c\u0007\u0010",
- "\u0002\u0002\u192b\u192a\u0003\u0002\u0002\u0002\u192b\u192c\u0003\u0002",
- "\u0002\u0002\u192c\u192d\u0003\u0002\u0002\u0002\u192d\u192f\u0005\u03be",
- "\u01e0\u0002\u192e\u1930\u0007\u0170\u0002\u0002\u192f\u192e\u0003\u0002",
- "\u0002\u0002\u192f\u1930\u0003\u0002\u0002\u0002\u1930\u1933\u0003\u0002",
- "\u0002\u0002\u1931\u1932\u0007\u032a\u0002\u0002\u1932\u1934\u0005\u03c0",
- "\u01e1\u0002\u1933\u1931\u0003\u0002\u0002\u0002\u1933\u1934\u0003\u0002",
- "\u0002\u0002\u1934\u1936\u0003\u0002\u0002\u0002\u1935\u1937\t;\u0002",
- "\u0002\u1936\u1935\u0003\u0002\u0002\u0002\u1936\u1937\u0003\u0002\u0002",
- "\u0002\u1937\u01e5\u0003\u0002\u0002\u0002\u1938\u193c\u0007\u01ec\u0002",
- "\u0002\u1939\u193c\u0007\u02a3\u0002\u0002\u193a\u193c\u0005\u02ae\u0158",
- "\u0002\u193b\u1938\u0003\u0002\u0002\u0002\u193b\u1939\u0003\u0002\u0002",
- "\u0002\u193b\u193a\u0003\u0002\u0002\u0002\u193c\u01e7\u0003\u0002\u0002",
- "\u0002\u193d\u194a\u0007\u01ec\u0002\u0002\u193e\u194a\u0007\u02be\u0002",
- "\u0002\u193f\u1940\u0007\u011b\u0002\u0002\u1940\u1941\u0007\u00df\u0002",
- "\u0002\u1941\u1942\u0007\u00e5\u0002\u0002\u1942\u1943\u0007\u00df\u0002",
- "\u0002\u1943\u194a\u0007\u0220\u0002\u0002\u1944\u1945\u0007(\u0002",
- "\u0002\u1945\u1946\u0007\u00e5\u0002\u0002\u1946\u1947\u0007\u00df\u0002",
- "\u0002\u1947\u194a\u0007\u0220\u0002\u0002\u1948\u194a\u0005\u02ae\u0158",
- "\u0002\u1949\u193d\u0003\u0002\u0002\u0002\u1949\u193e\u0003\u0002\u0002",
- "\u0002\u1949\u193f\u0003\u0002\u0002\u0002\u1949\u1944\u0003\u0002\u0002",
- "\u0002\u1949\u1948\u0003\u0002\u0002\u0002\u194a\u01e9\u0003\u0002\u0002",
- "\u0002\u194b\u194c\u0007I\u0002\u0002\u194c\u194d\u0007\u0148\u0002",
- "\u0002\u194d\u194e\u0005\u03c6\u01e4\u0002\u194e\u194f\u0007\u00e5\u0002",
- "\u0002\u194f\u1950\u0005\u0338\u019d\u0002\u1950\u1951\u0007\u033c\u0002",
- "\u0002\u1951\u1952\u0005\u039e\u01d0\u0002\u1952\u1965\u0007\u033d\u0002",
- "\u0002\u1953\u1959\u0007\u0179\u0002\u0002\u1954\u195a\u0007\u0208\u0002",
- "\u0002\u1955\u1956\u0007\u02bd\u0002\u0002\u1956\u1957\u0007\u0322\u0002",
- "\u0002\u1957\u195a\t<\u0002\u0002\u1958\u195a\u0007\u02df\u0002\u0002",
- "\u1959\u1954\u0003\u0002\u0002\u0002\u1959\u1955\u0003\u0002\u0002\u0002",
- "\u1959\u1958\u0003\u0002\u0002\u0002\u195a\u195d\u0003\u0002\u0002\u0002",
- "\u195b\u195c\u0007\u033e\u0002\u0002\u195c\u195e\u0007\u026a\u0002\u0002",
- "\u195d\u195b\u0003\u0002\u0002\u0002\u195d\u195e\u0003\u0002\u0002\u0002",
- "\u195e\u1963\u0003\u0002\u0002\u0002\u195f\u1960\u0007\u033e\u0002\u0002",
- "\u1960\u1961\u0007\u021e\u0002\u0002\u1961\u1962\u0007\u032a\u0002\u0002",
- "\u1962\u1964\u0005\u03a2\u01d2\u0002\u1963\u195f\u0003\u0002\u0002\u0002",
- "\u1963\u1964\u0003\u0002\u0002\u0002\u1964\u1966\u0003\u0002\u0002\u0002",
- "\u1965\u1953\u0003\u0002\u0002\u0002\u1965\u1966\u0003\u0002\u0002\u0002",
- "\u1966\u1968\u0003\u0002\u0002\u0002\u1967\u1969\u0007\u033f\u0002\u0002",
- "\u1968\u1967\u0003\u0002\u0002\u0002\u1968\u1969\u0003\u0002\u0002\u0002",
- "\u1969\u01eb\u0003\u0002\u0002\u0002\u196a\u196c\u0007\u0169\u0002\u0002",
- "\u196b\u196d\t=\u0002\u0002\u196c\u196b\u0003\u0002\u0002\u0002\u196c",
- "\u196d\u0003\u0002\u0002\u0002\u196d\u196e\u0003\u0002\u0002\u0002\u196e",
- "\u196f\u0007\u0148\u0002\u0002\u196f\u1971\u0005\u038c\u01c7\u0002\u1970",
- "\u1972\u0005\u03c6\u01e4\u0002\u1971\u1970\u0003\u0002\u0002\u0002\u1971",
- "\u1972\u0003\u0002\u0002\u0002\u1972\u1976\u0003\u0002\u0002\u0002\u1973",
- "\u1974\u0007\u0308\u0002\u0002\u1974\u1975\u0007\u0322\u0002\u0002\u1975",
- "\u1977\u0007\u016f\u0002\u0002\u1976\u1973\u0003\u0002\u0002\u0002\u1976",
- "\u1977\u0003\u0002\u0002\u0002\u1977\u01ed\u0003\u0002\u0002\u0002\u1978",
- "\u1979\u0007I\u0002\u0002\u1979\u197a\u0007\u0153\u0002\u0002\u197a",
- "\u197b\u0005\u038e\u01c8\u0002\u197b\u197c\u0007\u033c\u0002\u0002\u197c",
- "\u197e\u0005\u02b8\u015d\u0002\u197d\u197f\u0007\u033e\u0002\u0002\u197e",
- "\u197d\u0003\u0002\u0002\u0002\u197e\u197f\u0003\u0002\u0002\u0002\u197f",
- "\u1980\u0003\u0002\u0002\u0002\u1980\u1983\u0007\u033d\u0002\u0002\u1981",
- "\u1982\u0007\u0239\u0002\u0002\u1982\u1984\u0005\u03c8\u01e5\u0002\u1983",
- "\u1981\u0003\u0002\u0002\u0002\u1983\u1984\u0003\u0002\u0002\u0002\u1984",
- "\u1988\u0003\u0002\u0002\u0002\u1985\u1987\u0005\u01f0\u00f9\u0002\u1986",
- "\u1985\u0003\u0002\u0002\u0002\u1987\u198a\u0003\u0002\u0002\u0002\u1988",
- "\u1986\u0003\u0002\u0002\u0002\u1988\u1989\u0003\u0002\u0002\u0002\u1989",
- "\u198e\u0003\u0002\u0002\u0002\u198a\u1988\u0003\u0002\u0002\u0002\u198b",
- "\u198c\u0007\u00e5\u0002\u0002\u198c\u198f\u0005\u03c6\u01e4\u0002\u198d",
- "\u198f\u0007Y\u0002\u0002\u198e\u198b\u0003\u0002\u0002\u0002\u198e",
- "\u198d\u0003\u0002\u0002\u0002\u198e\u198f\u0003\u0002\u0002\u0002\u198f",
- "\u1993\u0003\u0002\u0002\u0002\u1990\u1991\u0007\u02f2\u0002\u0002\u1991",
- "\u1994\u0005\u03c6\u01e4\u0002\u1992\u1994\u0007Y\u0002\u0002\u1993",
- "\u1990\u0003\u0002\u0002\u0002\u1993\u1992\u0003\u0002\u0002\u0002\u1993",
- "\u1994\u0003\u0002\u0002\u0002\u1994\u1996\u0003\u0002\u0002\u0002\u1995",
- "\u1997\u0007\u033f\u0002\u0002\u1996\u1995\u0003\u0002\u0002\u0002\u1996",
- "\u1997\u0003\u0002\u0002\u0002\u1997\u01ef\u0003\u0002\u0002\u0002\u1998",
- "\u19ac\u0007\u0179\u0002\u0002\u1999\u199a\u0007\u033c\u0002\u0002\u199a",
- "\u199f\u0005\u02ca\u0166\u0002\u199b\u199c\u0007\u033e\u0002\u0002\u199c",
- "\u199e\u0005\u02ca\u0166\u0002\u199d\u199b\u0003\u0002\u0002\u0002\u199e",
- "\u19a1\u0003\u0002\u0002\u0002\u199f\u199d\u0003\u0002\u0002\u0002\u199f",
- "\u19a0\u0003\u0002\u0002\u0002\u19a0\u19a2\u0003\u0002\u0002\u0002\u19a1",
- "\u199f\u0003\u0002\u0002\u0002\u19a2\u19a3\u0007\u033d\u0002\u0002\u19a3",
- "\u19ad\u0003\u0002\u0002\u0002\u19a4\u19a9\u0005\u02ca\u0166\u0002\u19a5",
- "\u19a6\u0007\u033e\u0002\u0002\u19a6\u19a8\u0005\u02ca\u0166\u0002\u19a7",
- "\u19a5\u0003\u0002\u0002\u0002\u19a8\u19ab\u0003\u0002\u0002\u0002\u19a9",
- "\u19a7\u0003\u0002\u0002\u0002\u19a9\u19aa\u0003\u0002\u0002\u0002\u19aa",
- "\u19ad\u0003\u0002\u0002\u0002\u19ab\u19a9\u0003\u0002\u0002\u0002\u19ac",
- "\u1999\u0003\u0002\u0002\u0002\u19ac\u19a4\u0003\u0002\u0002\u0002\u19ad",
- "\u01f1\u0003\u0002\u0002\u0002\u19ae\u19af\u0007I\u0002\u0002\u19af",
- "\u19b0\u0007\u0172\u0002\u0002\u19b0\u19b5\u0005\u0390\u01c9\u0002\u19b1",
- "\u19b2\u0007\u033c\u0002\u0002\u19b2\u19b3\u0005\u039e\u01d0\u0002\u19b3",
- "\u19b4\u0007\u033d\u0002\u0002\u19b4\u19b6\u0003\u0002\u0002\u0002\u19b5",
- "\u19b1\u0003\u0002\u0002\u0002\u19b5\u19b6\u0003\u0002\u0002\u0002\u19b6",
- "\u19c0\u0003\u0002\u0002\u0002\u19b7\u19b8\u0007\u0179\u0002\u0002\u19b8",
- "\u19bd\u0005\u01f4\u00fb\u0002\u19b9\u19ba\u0007\u033e\u0002\u0002\u19ba",
- "\u19bc\u0005\u01f4\u00fb\u0002\u19bb\u19b9\u0003\u0002\u0002\u0002\u19bc",
- "\u19bf\u0003\u0002\u0002\u0002\u19bd\u19bb\u0003\u0002\u0002\u0002\u19bd",
- "\u19be\u0003\u0002\u0002\u0002\u19be\u19c1\u0003\u0002\u0002\u0002\u19bf",
- "\u19bd\u0003\u0002\u0002\u0002\u19c0\u19b7\u0003\u0002\u0002\u0002\u19c0",
- "\u19c1\u0003\u0002\u0002\u0002\u19c1\u19c2\u0003\u0002\u0002\u0002\u19c2",
- "\u19c3\u0007\u0010\u0002\u0002\u19c3\u19c7\u0005\u01be\u00e0\u0002\u19c4",
- "\u19c5\u0007\u0179\u0002\u0002\u19c5\u19c6\u0007.\u0002\u0002\u19c6",
- "\u19c8\u0007\u00ec\u0002\u0002\u19c7\u19c4\u0003\u0002\u0002\u0002\u19c7",
- "\u19c8\u0003\u0002\u0002\u0002\u19c8\u19ca\u0003\u0002\u0002\u0002\u19c9",
- "\u19cb\u0007\u033f\u0002\u0002\u19ca\u19c9\u0003\u0002\u0002\u0002\u19ca",
- "\u19cb\u0003\u0002\u0002\u0002\u19cb\u01f3\u0003\u0002\u0002\u0002\u19cc",
- "\u19cd\t>\u0002\u0002\u19cd\u01f5\u0003\u0002\u0002\u0002\u19ce\u19cf",
- "\u0007\n\u0002\u0002\u19cf\u19d0\u0007\u0153\u0002\u0002\u19d0\u19fc",
- "\u0005\u038e\u01c8\u0002\u19d1\u19d2\u0007\u013b\u0002\u0002\u19d2\u19d3",
- "\u0007\u033c\u0002\u0002\u19d3\u19d4\u0007\u023a\u0002\u0002\u19d4\u19d5",
- "\u0007\u032a\u0002\u0002\u19d5\u19d6\t?\u0002\u0002\u19d6\u19fd\u0007",
- "\u033d\u0002\u0002\u19d7\u19d8\u0007\u0004\u0002\u0002\u19d8\u19fd\u0005",
- "\u02ba\u015e\u0002\u19d9\u19da\u0007\n\u0002\u0002\u19da\u19db\u0007",
- "8\u0002\u0002\u19db\u19fd\u0005\u02bc\u015f\u0002\u19dc\u19dd\u0007",
- "g\u0002\u0002\u19dd\u19de\u00078\u0002\u0002\u19de\u19fd\u0005\u03c6",
- "\u01e4\u0002\u19df\u19e0\u0007g\u0002\u0002\u19e0\u19e1\u0007=\u0002",
- "\u0002\u19e1\u19fd\u0005\u03c6\u01e4\u0002\u19e2\u19e3\u0007\u0179\u0002",
- "\u0002\u19e3\u19e4\u0007.\u0002\u0002\u19e4\u19e5\u0007\u0004\u0002",
- "\u0002\u19e5\u19e6\u0007=\u0002\u0002\u19e6\u19e7\u0005\u03c6\u01e4",
- "\u0002\u19e7\u19e8\u0007\u0088\u0002\u0002\u19e8\u19e9\u0007\u00ac\u0002",
- "\u0002\u19e9\u19ea\u0007\u033c\u0002\u0002\u19ea\u19eb\u0005\u039e\u01d0",
- "\u0002\u19eb\u19ec\u0007\u033d\u0002\u0002\u19ec\u19ed\u0007\u010e\u0002",
- "\u0002\u19ed\u19ee\u0005\u038e\u01c8\u0002\u19ee\u19ef\u0007\u033c\u0002",
- "\u0002\u19ef\u19f0\u0005\u039e\u01d0\u0002\u19f0\u19f1\u0007\u033d\u0002",
- "\u0002\u19f1\u19fd\u0003\u0002\u0002\u0002\u19f2\u19f3\u0007.\u0002",
- "\u0002\u19f3\u19f4\u0007=\u0002\u0002\u19f4\u19fd\u0005\u03c6\u01e4",
- "\u0002\u19f5\u19f6\t\u0017\u0002\u0002\u19f6\u19f8\u0007\u0160\u0002",
- "\u0002\u19f7\u19f9\u0005\u03c6\u01e4\u0002\u19f8\u19f7\u0003\u0002\u0002",
- "\u0002\u19f8\u19f9\u0003\u0002\u0002\u0002\u19f9\u19fd\u0003\u0002\u0002",
- "\u0002\u19fa\u19fb\u0007\u02a1\u0002\u0002\u19fb\u19fd\u0005\u01f0\u00f9",
- "\u0002\u19fc\u19d1\u0003\u0002\u0002\u0002\u19fc\u19d7\u0003\u0002\u0002",
- "\u0002\u19fc\u19d9\u0003\u0002\u0002\u0002\u19fc\u19dc\u0003\u0002\u0002",
- "\u0002\u19fc\u19df\u0003\u0002\u0002\u0002\u19fc\u19e2\u0003\u0002\u0002",
- "\u0002\u19fc\u19f2\u0003\u0002\u0002\u0002\u19fc\u19f5\u0003\u0002\u0002",
- "\u0002\u19fc\u19fa\u0003\u0002\u0002\u0002\u19fd\u19ff\u0003\u0002\u0002",
- "\u0002\u19fe\u1a00\u0007\u033f\u0002\u0002\u19ff\u19fe\u0003\u0002\u0002",
- "\u0002\u19ff\u1a00\u0003\u0002\u0002\u0002\u1a00\u01f7\u0003\u0002\u0002",
- "\u0002\u1a01\u1a02\u0007\n\u0002\u0002\u1a02\u1a05\u0007T\u0002\u0002",
- "\u1a03\u1a06\u0005\u03c6\u01e4\u0002\u1a04\u1a06\u0007K\u0002\u0002",
- "\u1a05\u1a03\u0003\u0002\u0002\u0002\u1a05\u1a04\u0003\u0002\u0002\u0002",
- "\u1a06\u1a13\u0003\u0002\u0002\u0002\u1a07\u1a08\u0007\u025a\u0002\u0002",
- "\u1a08\u1a09\u0007\u025d\u0002\u0002\u1a09\u1a0a\u0007\u032a\u0002\u0002",
- "\u1a0a\u1a14\u0005\u03c6\u01e4\u0002\u1a0b\u1a0c\u00077\u0002\u0002",
- "\u1a0c\u1a14\u0005\u03c6\u01e4\u0002\u1a0d\u1a0e\u0007\u013b\u0002\u0002",
- "\u1a0e\u1a11\u0005\u01fa\u00fe\u0002\u1a0f\u1a10\u0007\u0179\u0002\u0002",
- "\u1a10\u1a12\u0005\u0240\u0121\u0002\u1a11\u1a0f\u0003\u0002\u0002\u0002",
- "\u1a11\u1a12\u0003\u0002\u0002\u0002\u1a12\u1a14\u0003\u0002\u0002\u0002",
- "\u1a13\u1a07\u0003\u0002\u0002\u0002\u1a13\u1a0b\u0003\u0002\u0002\u0002",
- "\u1a13\u1a0d\u0003\u0002\u0002\u0002\u1a14\u1a16\u0003\u0002\u0002\u0002",
- "\u1a15\u1a17\u0007\u033f\u0002\u0002\u1a16\u1a15\u0003\u0002\u0002\u0002",
- "\u1a16\u1a17\u0003\u0002\u0002\u0002\u1a17\u01f9\u0003\u0002\u0002\u0002",
- "\u1a18\u1a30\u0005\u01fc\u00ff\u0002\u1a19\u1a30\u0005\u01fe\u0100\u0002",
- "\u1a1a\u1a30\u0005\u0202\u0102\u0002\u1a1b\u1a30\u0005\u0204\u0103\u0002",
- "\u1a1c\u1a30\u0005\u0208\u0105\u0002\u1a1d\u1a30\u0005\u0222\u0112\u0002",
- "\u1a1e\u1a30\u0005\u0224\u0113\u0002\u1a1f\u1a30\u0005\u0226\u0114\u0002",
- "\u1a20\u1a30\u0005\u0228\u0115\u0002\u1a21\u1a30\u0005\u022a\u0116\u0002",
- "\u1a22\u1a30\u0005\u022c\u0117\u0002\u1a23\u1a30\u0005\u022e\u0118\u0002",
- "\u1a24\u1a25\u0007\u01fe\u0002\u0002\u1a25\u1a30\u0005\u037e\u01c0\u0002",
- "\u1a26\u1a30\u0005\u0230\u0119\u0002\u1a27\u1a30\u0005\u0232\u011a\u0002",
- "\u1a28\u1a30\u0005\u0234\u011b\u0002\u1a29\u1a30\u0005\u0236\u011c\u0002",
- "\u1a2a\u1a30\u0005\u0238\u011d\u0002\u1a2b\u1a30\u0005\u023a\u011e\u0002",
- "\u1a2c\u1a30\u0005\u023c\u011f\u0002\u1a2d\u1a30\u0005\u023e\u0120\u0002",
- "\u1a2e\u1a30\u0005\u0240\u0121\u0002\u1a2f\u1a18\u0003\u0002\u0002\u0002",
- "\u1a2f\u1a19\u0003\u0002\u0002\u0002\u1a2f\u1a1a\u0003\u0002\u0002\u0002",
- "\u1a2f\u1a1b\u0003\u0002\u0002\u0002\u1a2f\u1a1c\u0003\u0002\u0002\u0002",
- "\u1a2f\u1a1d\u0003\u0002\u0002\u0002\u1a2f\u1a1e\u0003\u0002\u0002\u0002",
- "\u1a2f\u1a1f\u0003\u0002\u0002\u0002\u1a2f\u1a20\u0003\u0002\u0002\u0002",
- "\u1a2f\u1a21\u0003\u0002\u0002\u0002\u1a2f\u1a22\u0003\u0002\u0002\u0002",
- "\u1a2f\u1a23\u0003\u0002\u0002\u0002\u1a2f\u1a24\u0003\u0002\u0002\u0002",
- "\u1a2f\u1a26\u0003\u0002\u0002\u0002\u1a2f\u1a27\u0003\u0002\u0002\u0002",
- "\u1a2f\u1a28\u0003\u0002\u0002\u0002\u1a2f\u1a29\u0003\u0002\u0002\u0002",
- "\u1a2f\u1a2a\u0003\u0002\u0002\u0002\u1a2f\u1a2b\u0003\u0002\u0002\u0002",
- "\u1a2f\u1a2c\u0003\u0002\u0002\u0002\u1a2f\u1a2d\u0003\u0002\u0002\u0002",
- "\u1a2f\u1a2e\u0003\u0002\u0002\u0002\u1a30\u01fb\u0003\u0002\u0002\u0002",
- "\u1a31\u1a32\u0007\u019a\u0002\u0002\u1a32\u1a43\u0005\u03a2\u01d2\u0002",
- "\u1a33\u1a34\u0007\u019b\u0002\u0002\u1a34\u1a43\u0007\u00e2\u0002\u0002",
- "\u1a35\u1a3a\u0007\u00e5\u0002\u0002\u1a36\u1a37\u0007\u021e\u0002\u0002",
- "\u1a37\u1a38\u0007\u032a\u0002\u0002\u1a38\u1a3b\u0007\u00e5\u0002\u0002",
- "\u1a39\u1a3b\u0007\u00e2\u0002\u0002\u1a3a\u1a36\u0003\u0002\u0002\u0002",
- "\u1a3a\u1a39\u0003\u0002\u0002\u0002\u1a3b\u1a43\u0003\u0002\u0002\u0002",
- "\u1a3c\u1a3d\u0007\u019c\u0002\u0002\u1a3d\u1a43\u0005\u03a2\u01d2\u0002",
- "\u1a3e\u1a3f\u0007\u019d\u0002\u0002\u1a3f\u1a43\u0005\u03a2\u01d2\u0002",
- "\u1a40\u1a41\u0007\u019e\u0002\u0002\u1a41\u1a43\t\t\u0002\u0002\u1a42",
- "\u1a31\u0003\u0002\u0002\u0002\u1a42\u1a33\u0003\u0002\u0002\u0002\u1a42",
- "\u1a35\u0003\u0002\u0002\u0002\u1a42\u1a3c\u0003\u0002\u0002\u0002\u1a42",
- "\u1a3e\u0003\u0002\u0002\u0002\u1a42\u1a40\u0003\u0002\u0002\u0002\u1a43",
- "\u01fd\u0003\u0002\u0002\u0002\u1a44\u1a45\u0007\u01b1\u0002\u0002\u1a45",
- "\u1a55\u0007\u032a\u0002\u0002\u1a46\u1a56\u0007\u00e2\u0002\u0002\u1a47",
- "\u1a52\u0007\u00e5\u0002\u0002\u1a48\u1a4d\u0005\u0200\u0101\u0002\u1a49",
- "\u1a4a\u0007\u033e\u0002\u0002\u1a4a\u1a4c\u0005\u0200\u0101\u0002\u1a4b",
- "\u1a49\u0003\u0002\u0002\u0002\u1a4c\u1a4f\u0003\u0002\u0002\u0002\u1a4d",
- "\u1a4b\u0003\u0002\u0002\u0002\u1a4d\u1a4e\u0003\u0002\u0002\u0002\u1a4e",
- "\u1a51\u0003\u0002\u0002\u0002\u1a4f\u1a4d\u0003\u0002\u0002\u0002\u1a50",
- "\u1a48\u0003\u0002\u0002\u0002\u1a51\u1a54\u0003\u0002\u0002\u0002\u1a52",
- "\u1a50\u0003\u0002\u0002\u0002\u1a52\u1a53\u0003\u0002\u0002\u0002\u1a53",
- "\u1a56\u0003\u0002\u0002\u0002\u1a54\u1a52\u0003\u0002\u0002\u0002\u1a55",
- "\u1a46\u0003\u0002\u0002\u0002\u1a55\u1a47\u0003\u0002\u0002\u0002\u1a56",
- "\u01ff\u0003\u0002\u0002\u0002\u1a57\u1a58\u0007\u0199\u0002\u0002\u1a58",
- "\u1a59\u0007\u032a\u0002\u0002\u1a59\u1a5e\u0005\u03a2\u01d2\u0002\u1a5a",
- "\u1a5b\u0007\u01b0\u0002\u0002\u1a5b\u1a5c\u0007\u032a\u0002\u0002\u1a5c",
- "\u1a5e\t@\u0002\u0002\u1a5d\u1a57\u0003\u0002\u0002\u0002\u1a5d\u1a5a",
- "\u0003\u0002\u0002\u0002\u1a5e\u0201\u0003\u0002\u0002\u0002\u1a5f\u1a60",
- "\u0007>\u0002\u0002\u1a60\u1a61\u0007\u032a\u0002\u0002\u1a61\u1a62",
- "\t7\u0002\u0002\u1a62\u0203\u0003\u0002\u0002\u0002\u1a63\u1a64\u0007",
- "\u01c6\u0002\u0002\u1a64\u1a68\u0005\u03a2\u01d2\u0002\u1a65\u1a66\u0007",
- "\u01c7\u0002\u0002\u1a66\u1a68\tA\u0002\u0002\u1a67\u1a63\u0003\u0002",
- "\u0002\u0002\u1a67\u1a65\u0003\u0002\u0002\u0002\u1a68\u0205\u0003\u0002",
- "\u0002\u0002\u1a69\u1a6a\u0007\n\u0002\u0002\u1a6a\u1a6b\u0007m\u0002",
- "\u0002\u1a6b\u1a6e\u0005\u03c6\u01e4\u0002\u1a6c\u1a6d\u0007\u0014\u0002",
- "\u0002\u1a6d\u1a6f\u0005\u03c6\u01e4\u0002\u1a6e\u1a6c\u0003\u0002\u0002",
- "\u0002\u1a6e\u1a6f\u0003\u0002\u0002\u0002\u1a6f\u1a77\u0003\u0002\u0002",
- "\u0002\u1a70\u1a71\u0007\u0149\u0002\u0002\u1a71\u1a75\u0007\u032a\u0002",
- "\u0002\u1a72\u1a76\u0007\u014c\u0002\u0002\u1a73\u1a76\u0007\u014f\u0002",
- "\u0002\u1a74\u1a76\u0007\u01e2\u0002\u0002\u1a75\u1a72\u0003\u0002\u0002",
- "\u0002\u1a75\u1a73\u0003\u0002\u0002\u0002\u1a75\u1a74\u0003\u0002\u0002",
- "\u0002\u1a76\u1a78\u0003\u0002\u0002\u0002\u1a77\u1a70\u0003\u0002\u0002",
- "\u0002\u1a77\u1a78\u0003\u0002\u0002\u0002\u1a78\u1a79\u0003\u0002\u0002",
- "\u0002\u1a79\u1a7a\u0007\u0010\u0002\u0002\u1a7a\u1a7b\u0007\u0157\u0002",
- "\u0002\u1a7b\u1a7c\u0007\u033c\u0002\u0002\u1a7c\u1a7d\u0007\u00b8\u0002",
- "\u0002\u1a7d\u1a7e\u0007\u032a\u0002\u0002\u1a7e\u1a83\u0007\u0322\u0002",
- "\u0002\u1a7f\u1a80\u0007\u033e\u0002\u0002\u1a80\u1a81\u0007\u00b7\u0002",
- "\u0002\u1a81\u1a82\u0007\u032a\u0002\u0002\u1a82\u1a84\tB\u0002\u0002",
- "\u1a83\u1a7f\u0003\u0002\u0002\u0002\u1a83\u1a84\u0003\u0002\u0002\u0002",
- "\u1a84\u1a85\u0003\u0002\u0002\u0002\u1a85\u1af3\u0007\u033d\u0002\u0002",
- "\u1a86\u1af4\u0007\u02ff\u0002\u0002\u1a87\u1a88\u0007\u0085\u0002\u0002",
- "\u1a88\u1a89\u0007\u0137\u0002\u0002\u1a89\u1a8a\u0007\u033c\u0002\u0002",
- "\u1a8a\u1a8b\u0007\u0015\u0002\u0002\u1a8b\u1a9c\u0007\u032a\u0002\u0002",
- "\u1a8c\u1a8e\u0007\u0178\u0002\u0002\u1a8d\u1a8f\tC\u0002\u0002\u1a8e",
- "\u1a8d\u0003\u0002\u0002\u0002\u1a8e\u1a8f\u0003\u0002\u0002\u0002\u1a8f",
- "\u1a92\u0003\u0002\u0002\u0002\u1a90\u1a91\u0007+\u0002\u0002\u1a91",
- "\u1a93\u0005\u03c6\u01e4\u0002\u1a92\u1a90\u0003\u0002\u0002\u0002\u1a92",
- "\u1a93\u0003\u0002\u0002\u0002\u1a93\u1a9d\u0003\u0002\u0002\u0002\u1a94",
- "\u1a95\u0007+\u0002\u0002\u1a95\u1a97\u0005\u03c6\u01e4\u0002\u1a96",
- "\u1a98\u0007\u0178\u0002\u0002\u1a97\u1a96\u0003\u0002\u0002\u0002\u1a97",
- "\u1a98\u0003\u0002\u0002\u0002\u1a98\u1a9a\u0003\u0002\u0002\u0002\u1a99",
- "\u1a9b\tC\u0002\u0002\u1a9a\u1a99\u0003\u0002\u0002\u0002\u1a9a\u1a9b",
- "\u0003\u0002\u0002\u0002\u1a9b\u1a9d\u0003\u0002\u0002\u0002\u1a9c\u1a8c",
- "\u0003\u0002\u0002\u0002\u1a9c\u1a94\u0003\u0002\u0002\u0002\u1a9d\u1aaf",
- "\u0003\u0002\u0002\u0002\u1a9e\u1aa0\u0007\u033e\u0002\u0002\u1a9f\u1a9e",
- "\u0003\u0002\u0002\u0002\u1a9f\u1aa0\u0003\u0002\u0002\u0002\u1aa0\u1aa1",
- "\u0003\u0002\u0002\u0002\u1aa1\u1aa2\u0007\u01ec\u0002\u0002\u1aa2\u1aa3",
- "\u0007\u032a\u0002\u0002\u1aa3\u1aad\tD\u0002\u0002\u1aa4\u1aab\u0007",
- "\u018a\u0002\u0002\u1aa5\u1aac\u0007\u0005\u0002\u0002\u1aa6\u1aac\u0007",
- "\u029a\u0002\u0002\u1aa7\u1aa8\u0007\u0005\u0002\u0002\u1aa8\u1aac\u0007",
- "\u029a\u0002\u0002\u1aa9\u1aaa\u0007\u029a\u0002\u0002\u1aaa\u1aac\u0007",
- "\u0005\u0002\u0002\u1aab\u1aa5\u0003\u0002\u0002\u0002\u1aab\u1aa6\u0003",
- "\u0002\u0002\u0002\u1aab\u1aa7\u0003\u0002\u0002\u0002\u1aab\u1aa9\u0003",
- "\u0002\u0002\u0002\u1aac\u1aae\u0003\u0002\u0002\u0002\u1aad\u1aa4\u0003",
- "\u0002\u0002\u0002\u1aad\u1aae\u0003\u0002\u0002\u0002\u1aae\u1ab0\u0003",
- "\u0002\u0002\u0002\u1aaf\u1a9f\u0003\u0002\u0002\u0002\u1aaf\u1ab0\u0003",
- "\u0002\u0002\u0002\u1ab0\u1ab7\u0003\u0002\u0002\u0002\u1ab1\u1ab3\u0007",
- "\u033e\u0002\u0002\u1ab2\u1ab1\u0003\u0002\u0002\u0002\u1ab2\u1ab3\u0003",
- "\u0002\u0002\u0002\u1ab3\u1ab4\u0003\u0002\u0002\u0002\u1ab4\u1ab5\u0007",
- "\u00ca\u0002\u0002\u1ab5\u1ab6\u0007\u032a\u0002\u0002\u1ab6\u1ab8\t",
- "E\u0002\u0002\u1ab7\u1ab2\u0003\u0002\u0002\u0002\u1ab7\u1ab8\u0003",
- "\u0002\u0002\u0002\u1ab8\u1abf\u0003\u0002\u0002\u0002\u1ab9\u1abb\u0007",
- "\u033e\u0002\u0002\u1aba\u1ab9\u0003\u0002\u0002\u0002\u1aba\u1abb\u0003",
- "\u0002\u0002\u0002\u1abb\u1abc\u0003\u0002\u0002\u0002\u1abc\u1abd\u0007",
- "\u00cb\u0002\u0002\u1abd\u1abe\u0007\u032a\u0002\u0002\u1abe\u1ac0\u0007",
- "\u0322\u0002\u0002\u1abf\u1aba\u0003\u0002\u0002\u0002\u1abf\u1ac0\u0003",
- "\u0002\u0002\u0002\u1ac0\u1ac1\u0003\u0002\u0002\u0002\u1ac1\u1af4\u0007",
- "\u033d\u0002\u0002\u1ac2\u1ac3\u0007\u0085\u0002\u0002\u1ac3\u1ac4\u0007",
- "U\u0002\u0002\u1ac4\u1ac5\u0007\u033c\u0002\u0002\u1ac5\u1ac6\u0007",
- "\u0015\u0002\u0002\u1ac6\u1ad7\u0007\u032a\u0002\u0002\u1ac7\u1ac9\u0007",
- "\u0178\u0002\u0002\u1ac8\u1aca\tC\u0002\u0002\u1ac9\u1ac8\u0003\u0002",
- "\u0002\u0002\u1ac9\u1aca\u0003\u0002\u0002\u0002\u1aca\u1acd\u0003\u0002",
- "\u0002\u0002\u1acb\u1acc\u0007+\u0002\u0002\u1acc\u1ace\u0005\u03c6",
- "\u01e4\u0002\u1acd\u1acb\u0003\u0002\u0002\u0002\u1acd\u1ace\u0003\u0002",
- "\u0002\u0002\u1ace\u1ad8\u0003\u0002\u0002\u0002\u1acf\u1ad0\u0007+",
- "\u0002\u0002\u1ad0\u1ad2\u0005\u03c6\u01e4\u0002\u1ad1\u1ad3\u0007\u0178",
- "\u0002\u0002\u1ad2\u1ad1\u0003\u0002\u0002\u0002\u1ad2\u1ad3\u0003\u0002",
- "\u0002\u0002\u1ad3\u1ad5\u0003\u0002\u0002\u0002\u1ad4\u1ad6\tC\u0002",
- "\u0002\u1ad5\u1ad4\u0003\u0002\u0002\u0002\u1ad5\u1ad6\u0003\u0002\u0002",
- "\u0002\u1ad6\u1ad8\u0003\u0002\u0002\u0002\u1ad7\u1ac7\u0003\u0002\u0002",
- "\u0002\u1ad7\u1acf\u0003\u0002\u0002\u0002\u1ad8\u1aea\u0003\u0002\u0002",
- "\u0002\u1ad9\u1adb\u0007\u033e\u0002\u0002\u1ada\u1ad9\u0003\u0002\u0002",
- "\u0002\u1ada\u1adb\u0003\u0002\u0002\u0002\u1adb\u1adc\u0003\u0002\u0002",
- "\u0002\u1adc\u1add\u0007\u01ec\u0002\u0002\u1add\u1ade\u0007\u032a\u0002",
- "\u0002\u1ade\u1ae8\tD\u0002\u0002\u1adf\u1ae6\u0007\u018a\u0002\u0002",
- "\u1ae0\u1ae7\u0007\u0005\u0002\u0002\u1ae1\u1ae7\u0007\u029a\u0002\u0002",
- "\u1ae2\u1ae3\u0007\u0005\u0002\u0002\u1ae3\u1ae7\u0007\u029a\u0002\u0002",
- "\u1ae4\u1ae5\u0007\u029a\u0002\u0002\u1ae5\u1ae7\u0007\u0005\u0002\u0002",
- "\u1ae6\u1ae0\u0003\u0002\u0002\u0002\u1ae6\u1ae1\u0003\u0002\u0002\u0002",
- "\u1ae6\u1ae2\u0003\u0002\u0002\u0002\u1ae6\u1ae4\u0003\u0002\u0002\u0002",
- "\u1ae7\u1ae9\u0003\u0002\u0002\u0002\u1ae8\u1adf\u0003\u0002\u0002\u0002",
- "\u1ae8\u1ae9\u0003\u0002\u0002\u0002\u1ae9\u1aeb\u0003\u0002\u0002\u0002",
- "\u1aea\u1ada\u0003\u0002\u0002\u0002\u1aea\u1aeb\u0003\u0002\u0002\u0002",
- "\u1aeb\u1aed\u0003\u0002\u0002\u0002\u1aec\u1aee\u0007\u033e\u0002\u0002",
- "\u1aed\u1aec\u0003\u0002\u0002\u0002\u1aed\u1aee\u0003\u0002\u0002\u0002",
- "\u1aee\u1aef\u0003\u0002\u0002\u0002\u1aef\u1af0\u0007\u0121\u0002\u0002",
- "\u1af0\u1af1\u0007\u032a\u0002\u0002\u1af1\u1af2\tF\u0002\u0002\u1af2",
- "\u1af4\u0007\u033d\u0002\u0002\u1af3\u1a86\u0003\u0002\u0002\u0002\u1af3",
- "\u1a87\u0003\u0002\u0002\u0002\u1af3\u1ac2\u0003\u0002\u0002\u0002\u1af4",
- "\u0207\u0003\u0002\u0002\u0002\u1af5\u1af6\u0005\u020a\u0106\u0002\u1af6",
- "\u0209\u0003\u0002\u0002\u0002\u1af7\u1af8\u0005\u020c\u0107\u0002\u1af8",
- "\u1af9\u0005\u0212\u010a\u0002\u1af9\u1afe\u0003\u0002\u0002\u0002\u1afa",
- "\u1afb\u0005\u020e\u0108\u0002\u1afb\u1afc\u0005\u0214\u010b\u0002\u1afc",
- "\u1afe\u0003\u0002\u0002\u0002\u1afd\u1af7\u0003\u0002\u0002\u0002\u1afd",
- "\u1afa\u0003\u0002\u0002\u0002\u1afe\u020b\u0003\u0002\u0002\u0002\u1aff",
- "\u1b00\u0007\u0282\u0002\u0002\u1b00\u020d\u0003\u0002\u0002\u0002\u1b01",
- "\u1b02\u0007\u017c\u0002\u0002\u1b02\u020f\u0003\u0002\u0002\u0002\u1b03",
- "\u1b04\u0007\u032a\u0002\u0002\u1b04\u0211\u0003\u0002\u0002\u0002\u1b05",
- "\u1b06\u0005\u0210\u0109\u0002\u1b06\u1b07\u0005\u0218\u010d\u0002\u1b07",
- "\u1b12\u0003\u0002\u0002\u0002\u1b08\u1b12\u0007}\u0002\u0002\u1b09",
- "\u1b12\u0007\u0087\u0002\u0002\u1b0a\u1b12\u0007\u00e2\u0002\u0002\u1b0b",
- "\u1b12\u0007\u0118\u0002\u0002\u1b0c\u1b0d\u0007\u0129\u0002\u0002\u1b0d",
- "\u1b12\tG\u0002\u0002\u1b0e\u1b12\u0007\u02ea\u0002\u0002\u1b0f\u1b10",
- "\u0007\u02f6\u0002\u0002\u1b10\u1b12\u0007\u0322\u0002\u0002\u1b11\u1b05",
- "\u0003\u0002\u0002\u0002\u1b11\u1b08\u0003\u0002\u0002\u0002\u1b11\u1b09",
- "\u0003\u0002\u0002\u0002\u1b11\u1b0a\u0003\u0002\u0002\u0002\u1b11\u1b0b",
- "\u0003\u0002\u0002\u0002\u1b11\u1b0c\u0003\u0002\u0002\u0002\u1b11\u1b0e",
- "\u0003\u0002\u0002\u0002\u1b11\u1b0f\u0003\u0002\u0002\u0002\u1b12\u0213",
- "\u0003\u0002\u0002\u0002\u1b13\u1b14\u0005\u0210\u0109\u0002\u1b14\u1b15",
- "\u0005\u0216\u010c\u0002\u1b15\u1b18\u0003\u0002\u0002\u0002\u1b16\u1b18",
- "\u0007\u00e2\u0002\u0002\u1b17\u1b13\u0003\u0002\u0002\u0002\u1b17\u1b16",
- "\u0003\u0002\u0002\u0002\u1b18\u0215\u0003\u0002\u0002\u0002\u1b19\u1b1a",
- "\u0005\u0218\u010d\u0002\u1b1a\u0217\u0003\u0002\u0002\u0002\u1b1b\u1b1c",
- "\u0005\u021c\u010f\u0002\u1b1c\u1b1d\u0005\u0220\u0111\u0002\u1b1d\u1b1e",
- "\u0005\u021a\u010e\u0002\u1b1e\u1b1f\u0005\u021e\u0110\u0002\u1b1f\u0219",
- "\u0003\u0002\u0002\u0002\u1b20\u1b21\u0007\u0340\u0002\u0002\u1b21\u021b",
- "\u0003\u0002\u0002\u0002\u1b22\u1b23\u0007\u0157\u0002\u0002\u1b23\u1b24",
- "\u0007\u0340\u0002\u0002\u1b24\u1b25\u0007f\u0002\u0002\u1b25\u021d",
- "\u0003\u0002\u0002\u0002\u1b26\u1b27\u0007\u0322\u0002\u0002\u1b27\u021f",
- "\u0003\u0002\u0002\u0002\u1b28\u1b29\u0005\u03c6\u01e4\u0002\u1b29\u1b2a",
- "\u0007\u0337\u0002\u0002\u1b2a\u1b2b\u0005\u0220\u0111\u0002\u1b2b\u1b33",
- "\u0003\u0002\u0002\u0002\u1b2c\u1b2d\u0005\u03c6\u01e4\u0002\u1b2d\u1b2e",
- "\u0007\u0337\u0002\u0002\u1b2e\u1b31\u0003\u0002\u0002\u0002\u1b2f\u1b31",
- "\u0005\u03c6\u01e4\u0002\u1b30\u1b2c\u0003\u0002\u0002\u0002\u1b30\u1b2f",
- "\u0003\u0002\u0002\u0002\u1b31\u1b33\u0003\u0002\u0002\u0002\u1b32\u1b28",
- "\u0003\u0002\u0002\u0002\u1b32\u1b30\u0003\u0002\u0002\u0002\u1b33\u0221",
- "\u0003\u0002\u0002\u0002\u1b34\u1b35\u0007\u01c9\u0002\u0002\u1b35\u1b36",
- "\u0005\u03a2\u01d2\u0002\u1b36\u0223\u0003\u0002\u0002\u0002\u1b37\u1b38",
- "\u0007\u01ec\u0002\u0002\u1b38\u1b39\u0005\u03a2\u01d2\u0002\u1b39\u0225",
- "\u0003\u0002\u0002\u0002\u1b3a\u1b3b\tH\u0002\u0002\u1b3b\u0227\u0003",
- "\u0002\u0002\u0002\u1b3c\u1b3d\tI\u0002\u0002\u1b3d\u0229\u0003\u0002",
- "\u0002\u0002\u1b3e\u1b3f\tJ\u0002\u0002\u1b3f\u022b\u0003\u0002\u0002",
- "\u0002\u1b40\u1b41\u0007\u01d6\u0002\u0002\u1b41\u1b42\u0007\u032a\u0002",
- "\u0002\u1b42\u1b43\tK\u0002\u0002\u1b43\u022d\u0003\u0002\u0002\u0002",
- "\u1b44\u1b45\u0007\u01cf\u0002\u0002\u1b45\u1b5e\u0005\u03a2\u01d2\u0002",
- "\u1b46\u1b47\u0007\u02fd\u0002\u0002\u1b47\u1b5e\u0005\u03a2\u01d2\u0002",
- "\u1b48\u1b49\u0007\u01d4\u0002\u0002\u1b49\u1b4c\u0007\u032a\u0002\u0002",
- "\u1b4a\u1b4d\u0005\u03c6\u01e4\u0002\u1b4b\u1b4d\u0007\u0326\u0002\u0002",
- "\u1b4c\u1b4a\u0003\u0002\u0002\u0002\u1b4c\u1b4b\u0003\u0002\u0002\u0002",
- "\u1b4d\u1b5e\u0003\u0002\u0002\u0002\u1b4e\u1b4f\u0007\u01d3\u0002\u0002",
- "\u1b4f\u1b52\u0007\u032a\u0002\u0002\u1b50\u1b53\u0005\u03c6\u01e4\u0002",
- "\u1b51\u1b53\u0007\u0326\u0002\u0002\u1b52\u1b50\u0003\u0002\u0002\u0002",
- "\u1b52\u1b51\u0003\u0002\u0002\u0002\u1b53\u1b5e\u0003\u0002\u0002\u0002",
- "\u1b54\u1b55\u0007\u025e\u0002\u0002\u1b55\u1b56\u0007\u032a\u0002\u0002",
- "\u1b56\u1b5e\t\t\u0002\u0002\u1b57\u1b58\u0007\u02fa\u0002\u0002\u1b58",
- "\u1b59\u0007\u032a\u0002\u0002\u1b59\u1b5e\t\t\u0002\u0002\u1b5a\u1b5b",
- "\u0007\u0300\u0002\u0002\u1b5b\u1b5c\u0007\u032a\u0002\u0002\u1b5c\u1b5e",
- "\u0007\u0322\u0002\u0002\u1b5d\u1b44\u0003\u0002\u0002\u0002\u1b5d\u1b46",
- "\u0003\u0002\u0002\u0002\u1b5d\u1b48\u0003\u0002\u0002\u0002\u1b5d\u1b4e",
- "\u0003\u0002\u0002\u0002\u1b5d\u1b54\u0003\u0002\u0002\u0002\u1b5d\u1b57",
- "\u0003\u0002\u0002\u0002\u1b5d\u1b5a\u0003\u0002\u0002\u0002\u1b5e\u022f",
- "\u0003\u0002\u0002\u0002\u1b5f\u1b68\u0007\u0212\u0002\u0002\u1b60\u1b61",
- "\u0007\u019f\u0002\u0002\u1b61\u1b62\u0007\u0092\u0002\u0002\u1b62\u1b63",
- "\u0007\u032a\u0002\u0002\u1b63\u1b66\u0005\u03c6\u01e4\u0002\u1b64\u1b66",
- "\u0007\u00e2\u0002\u0002\u1b65\u1b60\u0003\u0002\u0002\u0002\u1b65\u1b64",
- "\u0003\u0002\u0002\u0002\u1b66\u1b69\u0003\u0002\u0002\u0002\u1b67\u1b69",
- "\tL\u0002\u0002\u1b68\u1b65\u0003\u0002\u0002\u0002\u1b68\u1b67\u0003",
- "\u0002\u0002\u0002\u1b69\u0231\u0003\u0002\u0002\u0002\u1b6a\u1b6b\u0007",
- "\u0258\u0002\u0002\u1b6b\u1b6c\t\t\u0002\u0002\u1b6c\u0233\u0003\u0002",
- "\u0002\u0002\u1b6d\u1b6e\u0007\u027f\u0002\u0002\u1b6e\u1b6f\tM\u0002",
- "\u0002\u1b6f\u0235\u0003\u0002\u0002\u0002\u1b70\u1b71\u0007\u02a4\u0002",
- "\u0002\u1b71\u1b77\tN\u0002\u0002\u1b72\u1b73\u0007\u02f9\u0002\u0002",
- "\u1b73\u1b77\u0005\u03a2\u01d2\u0002\u1b74\u1b75\u0007\u027e\u0002\u0002",
- "\u1b75\u1b77\tO\u0002\u0002\u1b76\u1b70\u0003\u0002\u0002\u0002\u1b76",
- "\u1b72\u0003\u0002\u0002\u0002\u1b76\u1b74\u0003\u0002\u0002\u0002\u1b77",
- "\u0237\u0003\u0002\u0002\u0002\u1b78\u1b7f\u0007\u01ea\u0002\u0002\u1b79",
- "\u1b7f\u0007\u01e1\u0002\u0002\u1b7a\u1b7f\u0007\u0260\u0002\u0002\u1b7b",
- "\u1b7f\u0007\u01ee\u0002\u0002\u1b7c\u1b7d\u0007\u0216\u0002\u0002\u1b7d",
- "\u1b7f\u0005\u03a2\u01d2\u0002\u1b7e\u1b78\u0003\u0002\u0002\u0002\u1b7e",
- "\u1b79\u0003\u0002\u0002\u0002\u1b7e\u1b7a\u0003\u0002\u0002\u0002\u1b7e",
- "\u1b7b\u0003\u0002\u0002\u0002\u1b7e\u1b7c\u0003\u0002\u0002\u0002\u1b7f",
- "\u0239\u0003\u0002\u0002\u0002\u1b80\u1b81\u0007\u018c\u0002\u0002\u1b81",
- "\u1b86\u0005\u03a2\u01d2\u0002\u1b82\u1b83\u0007\u029c\u0002\u0002\u1b83",
- "\u1b86\t\t\u0002\u0002\u1b84\u1b86\t\t\u0002\u0002\u1b85\u1b80\u0003",
- "\u0002\u0002\u0002\u1b85\u1b82\u0003\u0002\u0002\u0002\u1b85\u1b84\u0003",
- "\u0002\u0002\u0002\u1b86\u023b\u0003\u0002\u0002\u0002\u1b87\u1b88\u0007",
- "\u018e\u0002\u0002\u1b88\u1b9d\u0005\u03a2\u01d2\u0002\u1b89\u1b8a\u0007",
- "\u018f\u0002\u0002\u1b8a\u1b9d\u0005\u03a2\u01d2\u0002\u1b8b\u1b8c\u0007",
- "\u0190\u0002\u0002\u1b8c\u1b9d\u0005\u03a2\u01d2\u0002\u1b8d\u1b8e\u0007",
- "\u0191\u0002\u0002\u1b8e\u1b9d\u0005\u03a2\u01d2\u0002\u1b8f\u1b90\u0007",
- "\u0194\u0002\u0002\u1b90\u1b9d\u0005\u03a2\u01d2\u0002\u1b91\u1b92\u0007",
- "\u01b8\u0002\u0002\u1b92\u1b93\u0007\u032a\u0002\u0002\u1b93\u1b9d\u0007",
- "\u0322\u0002\u0002\u1b94\u1b95\u0007\u01ba\u0002\u0002\u1b95\u1b9d\u0005",
- "\u03a2\u01d2\u0002\u1b96\u1b97\u0007\u0270\u0002\u0002\u1b97\u1b9d\u0005",
- "\u03a2\u01d2\u0002\u1b98\u1b99\u0007\u0296\u0002\u0002\u1b99\u1b9d\u0005",
- "\u03a2\u01d2\u0002\u1b9a\u1b9b\u0007\u02a5\u0002\u0002\u1b9b\u1b9d\u0005",
- "\u03a2\u01d2\u0002\u1b9c\u1b87\u0003\u0002\u0002\u0002\u1b9c\u1b89\u0003",
- "\u0002\u0002\u0002\u1b9c\u1b8b\u0003\u0002\u0002\u0002\u1b9c\u1b8d\u0003",
- "\u0002\u0002\u0002\u1b9c\u1b8f\u0003\u0002\u0002\u0002\u1b9c\u1b91\u0003",
- "\u0002\u0002\u0002\u1b9c\u1b94\u0003\u0002\u0002\u0002\u1b9c\u1b96\u0003",
- "\u0002\u0002\u0002\u1b9c\u1b98\u0003\u0002\u0002\u0002\u1b9c\u1b9a\u0003",
- "\u0002\u0002\u0002\u1b9d\u023d\u0003\u0002\u0002\u0002\u1b9e\u1b9f\u0007",
- "\u02f0\u0002\u0002\u1b9f\u1ba0\u0007\u032a\u0002\u0002\u1ba0\u1ba1\u0007",
- "\u0322\u0002\u0002\u1ba1\u1ba2\tP\u0002\u0002\u1ba2\u023f\u0003\u0002",
- "\u0002\u0002\u1ba3\u1ba4\u0007\u0120\u0002\u0002\u1ba4\u1ba5\u0007\u0188",
- "\u0002\u0002\u1ba5\u1baa\u0007\u0322\u0002\u0002\u1ba6\u1ba7\u0007\u0120",
- "\u0002\u0002\u1ba7\u1baa\u0007\u021a\u0002\u0002\u1ba8\u1baa\u0007\u0265",
- "\u0002\u0002\u1ba9\u1ba3\u0003\u0002\u0002\u0002\u1ba9\u1ba6\u0003\u0002",
- "\u0002\u0002\u1ba9\u1ba8\u0003\u0002\u0002\u0002\u1baa\u0241\u0003\u0002",
- "\u0002\u0002\u1bab\u1bac\u0007g\u0002\u0002\u1bac\u1baf\u0007\u009e",
- "\u0002\u0002\u1bad\u1bae\u0007\u0099\u0002\u0002\u1bae\u1bb0\u0007w",
- "\u0002\u0002\u1baf\u1bad\u0003\u0002\u0002\u0002\u1baf\u1bb0\u0003\u0002",
- "\u0002\u0002\u1bb0\u1bc1\u0003\u0002\u0002\u0002\u1bb1\u1bb6\u0005\u0244",
- "\u0123\u0002\u1bb2\u1bb3\u0007\u033e\u0002\u0002\u1bb3\u1bb5\u0005\u0244",
- "\u0123\u0002\u1bb4\u1bb2\u0003\u0002\u0002\u0002\u1bb5\u1bb8\u0003\u0002",
- "\u0002\u0002\u1bb6\u1bb4\u0003\u0002\u0002\u0002\u1bb6\u1bb7\u0003\u0002",
- "\u0002\u0002\u1bb7\u1bc2\u0003\u0002\u0002\u0002\u1bb8\u1bb6\u0003\u0002",
- "\u0002\u0002\u1bb9\u1bbe\u0005\u0246\u0124\u0002\u1bba\u1bbb\u0007\u033e",
- "\u0002\u0002\u1bbb\u1bbd\u0005\u0246\u0124\u0002\u1bbc\u1bba\u0003\u0002",
- "\u0002\u0002\u1bbd\u1bc0\u0003\u0002\u0002\u0002\u1bbe\u1bbc\u0003\u0002",
- "\u0002\u0002\u1bbe\u1bbf\u0003\u0002\u0002\u0002\u1bbf\u1bc2\u0003\u0002",
- "\u0002\u0002\u1bc0\u1bbe\u0003\u0002\u0002\u0002\u1bc1\u1bb1\u0003\u0002",
- "\u0002\u0002\u1bc1\u1bb9\u0003\u0002\u0002\u0002\u1bc2\u1bc4\u0003\u0002",
- "\u0002\u0002\u1bc3\u1bc5\u0007\u033f\u0002\u0002\u1bc4\u1bc3\u0003\u0002",
- "\u0002\u0002\u1bc4\u1bc5\u0003\u0002\u0002\u0002\u1bc5\u0243\u0003\u0002",
- "\u0002\u0002\u1bc6\u1bc7\u0005\u03c6\u01e4\u0002\u1bc7\u1bc8\u0007\u00e5",
- "\u0002\u0002\u1bc8\u1bc9\u0005\u038c\u01c7\u0002\u1bc9\u0245\u0003\u0002",
- "\u0002\u0002\u1bca\u1bcb\u0005\u03c6\u01e4\u0002\u1bcb\u1bcc\u0007\u0337",
- "\u0002\u0002\u1bcc\u1bce\u0003\u0002\u0002\u0002\u1bcd\u1bca\u0003\u0002",
- "\u0002\u0002\u1bcd\u1bce\u0003\u0002\u0002\u0002\u1bce\u1bcf\u0003\u0002",
- "\u0002\u0002\u1bcf\u1bd0\u0005\u03c6\u01e4\u0002\u1bd0\u1bd1\u0007\u0337",
- "\u0002\u0002\u1bd1\u1bd2\u0005\u03c6\u01e4\u0002\u1bd2\u0247\u0003\u0002",
- "\u0002\u0002\u1bd3\u1bd4\u0007g\u0002\u0002\u1bd4\u1bd7\t8\u0002\u0002",
- "\u1bd5\u1bd6\u0007\u0099\u0002\u0002\u1bd6\u1bd8\u0007w\u0002\u0002",
- "\u1bd7\u1bd5\u0003\u0002\u0002\u0002\u1bd7\u1bd8\u0003\u0002\u0002\u0002",
- "\u1bd8\u1bd9\u0003\u0002\u0002\u0002\u1bd9\u1bde\u0005\u0392\u01ca\u0002",
- "\u1bda\u1bdb\u0007\u033e\u0002\u0002\u1bdb\u1bdd\u0005\u0392\u01ca\u0002",
- "\u1bdc\u1bda\u0003\u0002\u0002\u0002\u1bdd\u1be0\u0003\u0002\u0002\u0002",
- "\u1bde\u1bdc\u0003\u0002\u0002\u0002\u1bde\u1bdf\u0003\u0002\u0002\u0002",
- "\u1bdf\u1be2\u0003\u0002\u0002\u0002\u1be0\u1bde\u0003\u0002\u0002\u0002",
- "\u1be1\u1be3\u0007\u033f\u0002\u0002\u1be2\u1be1\u0003\u0002\u0002\u0002",
- "\u1be2\u1be3\u0003\u0002\u0002\u0002\u1be3\u0249\u0003\u0002\u0002\u0002",
- "\u1be4\u1be7\u0005\u024c\u0127\u0002\u1be5\u1be7\u0005\u024e\u0128\u0002",
- "\u1be6\u1be4\u0003\u0002\u0002\u0002\u1be6\u1be5\u0003\u0002\u0002\u0002",
- "\u1be7\u024b\u0003\u0002\u0002\u0002\u1be8\u1be9\u0007g\u0002\u0002",
- "\u1be9\u1bec\u0007\u0160\u0002\u0002\u1bea\u1beb\u0007\u0099\u0002\u0002",
- "\u1beb\u1bed\u0007w\u0002\u0002\u1bec\u1bea\u0003\u0002\u0002\u0002",
- "\u1bec\u1bed\u0003\u0002\u0002\u0002\u1bed\u1bee\u0003\u0002\u0002\u0002",
- "\u1bee\u1bf3\u0005\u0390\u01c9\u0002\u1bef\u1bf0\u0007\u033e\u0002\u0002",
- "\u1bf0\u1bf2\u0005\u0390\u01c9\u0002\u1bf1\u1bef\u0003\u0002\u0002\u0002",
- "\u1bf2\u1bf5\u0003\u0002\u0002\u0002\u1bf3\u1bf1\u0003\u0002\u0002\u0002",
- "\u1bf3\u1bf4\u0003\u0002\u0002\u0002\u1bf4\u1bf7\u0003\u0002\u0002\u0002",
- "\u1bf5\u1bf3\u0003\u0002\u0002\u0002\u1bf6\u1bf8\u0007\u033f\u0002\u0002",
- "\u1bf7\u1bf6\u0003\u0002\u0002\u0002\u1bf7\u1bf8\u0003\u0002\u0002\u0002",
- "\u1bf8\u024d\u0003\u0002\u0002\u0002\u1bf9\u1bfa\u0007g\u0002\u0002",
- "\u1bfa\u1bfd\u0007\u0160\u0002\u0002\u1bfb\u1bfc\u0007\u0099\u0002\u0002",
- "\u1bfc\u1bfe\u0007w\u0002\u0002\u1bfd\u1bfb\u0003\u0002\u0002\u0002",
- "\u1bfd\u1bfe\u0003\u0002\u0002\u0002\u1bfe\u1bff\u0003\u0002\u0002\u0002",
- "\u1bff\u1c04\u0005\u0390\u01c9\u0002\u1c00\u1c01\u0007\u033e\u0002\u0002",
- "\u1c01\u1c03\u0005\u0390\u01c9\u0002\u1c02\u1c00\u0003\u0002\u0002\u0002",
- "\u1c03\u1c06\u0003\u0002\u0002\u0002\u1c04\u1c02\u0003\u0002\u0002\u0002",
- "\u1c04\u1c05\u0003\u0002\u0002\u0002\u1c05\u1c07\u0003\u0002\u0002\u0002",
- "\u1c06\u1c04\u0003\u0002\u0002\u0002\u1c07\u1c0b\u0007\u00e5\u0002\u0002",
- "\u1c08\u1c0c\u0007T\u0002\u0002\u1c09\u1c0a\u0007\u0006\u0002\u0002",
- "\u1c0a\u1c0c\u0007\u0135\u0002\u0002\u1c0b\u1c08\u0003\u0002\u0002\u0002",
- "\u1c0b\u1c09\u0003\u0002\u0002\u0002\u1c0c\u1c0e\u0003\u0002\u0002\u0002",
- "\u1c0d\u1c0f\u0007\u033f\u0002\u0002\u1c0e\u1c0d\u0003\u0002\u0002\u0002",
- "\u1c0e\u1c0f\u0003\u0002\u0002\u0002\u1c0f\u024f\u0003\u0002\u0002\u0002",
- "\u1c10\u1c11\u0007g\u0002\u0002\u1c11\u1c14\u0007\u008d\u0002\u0002",
- "\u1c12\u1c13\u0007\u0099\u0002\u0002\u1c13\u1c15\u0007w\u0002\u0002",
- "\u1c14\u1c12\u0003\u0002\u0002\u0002\u1c14\u1c15\u0003\u0002\u0002\u0002",
- "\u1c15\u1c16\u0003\u0002\u0002\u0002\u1c16\u1c1b\u0005\u0392\u01ca\u0002",
- "\u1c17\u1c18\u0007\u033e\u0002\u0002\u1c18\u1c1a\u0005\u0392\u01ca\u0002",
- "\u1c19\u1c17\u0003\u0002\u0002\u0002\u1c1a\u1c1d\u0003\u0002\u0002\u0002",
- "\u1c1b\u1c19\u0003\u0002\u0002\u0002\u1c1b\u1c1c\u0003\u0002\u0002\u0002",
- "\u1c1c\u1c1f\u0003\u0002\u0002\u0002\u1c1d\u1c1b\u0003\u0002\u0002\u0002",
- "\u1c1e\u1c20\u0007\u033f\u0002\u0002\u1c1f\u1c1e\u0003\u0002\u0002\u0002",
- "\u1c1f\u1c20\u0003\u0002\u0002\u0002\u1c20\u0251\u0003\u0002\u0002\u0002",
- "\u1c21\u1c22\u0007g\u0002\u0002\u1c22\u1c2c\u0007\u0148\u0002\u0002",
- "\u1c23\u1c25\u0007\u033e\u0002\u0002\u1c24\u1c23\u0003\u0002\u0002\u0002",
- "\u1c24\u1c25\u0003\u0002\u0002\u0002\u1c25\u1c29\u0003\u0002\u0002\u0002",
- "\u1c26\u1c27\u0005\u038e\u01c8\u0002\u1c27\u1c28\u0007\u0337\u0002\u0002",
- "\u1c28\u1c2a\u0003\u0002\u0002\u0002\u1c29\u1c26\u0003\u0002\u0002\u0002",
- "\u1c29\u1c2a\u0003\u0002\u0002\u0002\u1c2a\u1c2b\u0003\u0002\u0002\u0002",
- "\u1c2b\u1c2d\u0005\u03c6\u01e4\u0002\u1c2c\u1c24\u0003\u0002\u0002\u0002",
- "\u1c2d\u1c2e\u0003\u0002\u0002\u0002\u1c2e\u1c2c\u0003\u0002\u0002\u0002",
- "\u1c2e\u1c2f\u0003\u0002\u0002\u0002\u1c2f\u1c30\u0003\u0002\u0002\u0002",
- "\u1c30\u1c31\u0007\u033f\u0002\u0002\u1c31\u0253\u0003\u0002\u0002\u0002",
- "\u1c32\u1c33\u0007g\u0002\u0002\u1c33\u1c36\u0007\u0153\u0002\u0002",
- "\u1c34\u1c35\u0007\u0099\u0002\u0002\u1c35\u1c37\u0007w\u0002\u0002",
- "\u1c36\u1c34\u0003\u0002\u0002\u0002\u1c36\u1c37\u0003\u0002\u0002\u0002",
- "\u1c37\u1c38\u0003\u0002\u0002\u0002\u1c38\u1c3a\u0005\u038e\u01c8\u0002",
- "\u1c39\u1c3b\u0007\u033f\u0002\u0002\u1c3a\u1c39\u0003\u0002\u0002\u0002",
- "\u1c3a\u1c3b\u0003\u0002\u0002\u0002\u1c3b\u0255\u0003\u0002\u0002\u0002",
- "\u1c3c\u1c3d\u0007g\u0002\u0002\u1c3d\u1c40\u0007\u0172\u0002\u0002",
- "\u1c3e\u1c3f\u0007\u0099\u0002\u0002\u1c3f\u1c41\u0007w\u0002\u0002",
- "\u1c40\u1c3e\u0003\u0002\u0002\u0002\u1c40\u1c41\u0003\u0002\u0002\u0002",
- "\u1c41\u1c42\u0003\u0002\u0002\u0002\u1c42\u1c47\u0005\u0390\u01c9\u0002",
- "\u1c43\u1c44\u0007\u033e\u0002\u0002\u1c44\u1c46\u0005\u0390\u01c9\u0002",
- "\u1c45\u1c43\u0003\u0002\u0002\u0002\u1c46\u1c49\u0003\u0002\u0002\u0002",
- "\u1c47\u1c45\u0003\u0002\u0002\u0002\u1c47\u1c48\u0003\u0002\u0002\u0002",
- "\u1c48\u1c4b\u0003\u0002\u0002\u0002\u1c49\u1c47\u0003\u0002\u0002\u0002",
- "\u1c4a\u1c4c\u0007\u033f\u0002\u0002\u1c4b\u1c4a\u0003\u0002\u0002\u0002",
- "\u1c4b\u1c4c\u0003\u0002\u0002\u0002\u1c4c\u0257\u0003\u0002\u0002\u0002",
- "\u1c4d\u1c4e\u0007I\u0002\u0002\u1c4e\u1c4f\u0007\u0301\u0002\u0002",
- "\u1c4f\u1c54\u0005\u0390\u01c9\u0002\u1c50\u1c51\u0007\u008b\u0002\u0002",
- "\u1c51\u1c52\u0005\u03be\u01e0\u0002\u1c52\u1c53\u0005\u03c0\u01e1\u0002",
- "\u1c53\u1c55\u0003\u0002\u0002\u0002\u1c54\u1c50\u0003\u0002\u0002\u0002",
- "\u1c54\u1c55\u0003\u0002\u0002\u0002\u1c55\u1c5c\u0003\u0002\u0002\u0002",
- "\u1c56\u1c57\u0007\u0010\u0002\u0002\u1c57\u1c58\u0007\u0153\u0002\u0002",
- "\u1c58\u1c59\u0007\u033c\u0002\u0002\u1c59\u1c5a\u0005\u02b8\u015d\u0002",
- "\u1c5a\u1c5b\u0007\u033d\u0002\u0002\u1c5b\u1c5d\u0003\u0002\u0002\u0002",
- "\u1c5c\u1c56\u0003\u0002\u0002\u0002\u1c5c\u1c5d\u0003\u0002\u0002\u0002",
- "\u1c5d\u0259\u0003\u0002\u0002\u0002\u1c5e\u1c5f\u0007g\u0002\u0002",
- "\u1c5f\u1c62\u0007\u0301\u0002\u0002\u1c60\u1c61\u0007\u0099\u0002\u0002",
- "\u1c61\u1c63\u0007w\u0002\u0002\u1c62\u1c60\u0003\u0002\u0002\u0002",
- "\u1c62\u1c63\u0003\u0002\u0002\u0002\u1c63\u1c64\u0003\u0002\u0002\u0002",
- "\u1c64\u1c65\u0005\u0390\u01c9\u0002\u1c65\u025b\u0003\u0002\u0002\u0002",
- "\u1c66\u1c69\u0005\u025e\u0130\u0002\u1c67\u1c69\u0005\u0260\u0131\u0002",
- "\u1c68\u1c66\u0003\u0002\u0002\u0002\u1c68\u1c67\u0003\u0002\u0002\u0002",
- "\u1c69\u025d\u0003\u0002\u0002\u0002\u1c6a\u1c6b\u0007\u00e9\u0002\u0002",
- "\u1c6b\u1c6c\u0007\u033c\u0002\u0002\u1c6c\u1c6d\u0005\u03c6\u01e4\u0002",
- "\u1c6d\u1c6e\u0007\u033e\u0002\u0002\u1c6e\u1c6f\u0007\u0326\u0002\u0002",
- "\u1c6f\u1c70\u0007\u033d\u0002\u0002\u1c70\u025f\u0003\u0002\u0002\u0002",
- "\u1c71\u1c72\u0007\u00e8\u0002\u0002\u1c72\u1c73\u0007\u033c\u0002\u0002",
- "\u1c73\u1c74\u0007\u0326\u0002\u0002\u1c74\u1c75\u0007\u033e\u0002\u0002",
- "\u1c75\u1c76\u0007\u0326\u0002\u0002\u1c76\u1c77\u0007\u033d\u0002\u0002",
- "\u1c77\u1c79\u0007\u0337\u0002\u0002\u1c78\u1c7a\u0005\u03c6\u01e4\u0002",
- "\u1c79\u1c78\u0003\u0002\u0002\u0002\u1c79\u1c7a\u0003\u0002\u0002\u0002",
- "\u1c7a\u1c7b\u0003\u0002\u0002\u0002\u1c7b\u1c7d\u0007\u0337\u0002\u0002",
- "\u1c7c\u1c7e\u0005\u03c6\u01e4\u0002\u1c7d\u1c7c\u0003\u0002\u0002\u0002",
- "\u1c7d\u1c7e\u0003\u0002\u0002\u0002\u1c7e\u1c7f\u0003\u0002\u0002\u0002",
- "\u1c7f\u1c80\u0007\u0337\u0002\u0002\u1c80\u1c81\u0005\u03c6\u01e4\u0002",
- "\u1c81\u0261\u0003\u0002\u0002\u0002\u1c82\u1c83\u0007X\u0002\u0002",
- "\u1c83\u1c85\u0007\u0321\u0002\u0002\u1c84\u1c86\u0007\u0010\u0002\u0002",
- "\u1c85\u1c84\u0003\u0002\u0002\u0002\u1c85\u1c86\u0003\u0002\u0002\u0002",
- "\u1c86\u1c87\u0003\u0002\u0002\u0002\u1c87\u1c89\u0005\u02b2\u015a\u0002",
- "\u1c88\u1c8a\u0007\u033f\u0002\u0002\u1c89\u1c88\u0003\u0002\u0002\u0002",
- "\u1c89\u1c8a\u0003\u0002\u0002\u0002\u1c8a\u1cae\u0003\u0002\u0002\u0002",
- "\u1c8b\u1c8c\u0007X\u0002\u0002\u1c8c\u1c91\u0005\u02b0\u0159\u0002",
- "\u1c8d\u1c8e\u0007\u033e\u0002\u0002\u1c8e\u1c90\u0005\u02b0\u0159\u0002",
- "\u1c8f\u1c8d\u0003\u0002\u0002\u0002\u1c90\u1c93\u0003\u0002\u0002\u0002",
- "\u1c91\u1c8f\u0003\u0002\u0002\u0002\u1c91\u1c92\u0003\u0002\u0002\u0002",
- "\u1c92\u1c95\u0003\u0002\u0002\u0002\u1c93\u1c91\u0003\u0002\u0002\u0002",
- "\u1c94\u1c96\u0007\u033f\u0002\u0002\u1c95\u1c94\u0003\u0002\u0002\u0002",
- "\u1c95\u1c96\u0003\u0002\u0002\u0002\u1c96\u1cae\u0003\u0002\u0002\u0002",
- "\u1c97\u1c98\u0007X\u0002\u0002\u1c98\u1c9a\u0007\u0321\u0002\u0002",
- "\u1c99\u1c9b\u0007\u0010\u0002\u0002\u1c9a\u1c99\u0003\u0002\u0002\u0002",
- "\u1c9a\u1c9b\u0003\u0002\u0002\u0002\u1c9b\u1c9c\u0003\u0002\u0002\u0002",
- "\u1c9c\u1c9e\u0005\u02b4\u015b\u0002\u1c9d\u1c9f\u0007\u033f\u0002\u0002",
- "\u1c9e\u1c9d\u0003\u0002\u0002\u0002\u1c9e\u1c9f\u0003\u0002\u0002\u0002",
- "\u1c9f\u1cae\u0003\u0002\u0002\u0002\u1ca0\u1ca1\u0007\u0179\u0002\u0002",
- "\u1ca1\u1ca2\u0007\u0317\u0002\u0002\u1ca2\u1ca3\u0007\u033c\u0002\u0002",
- "\u1ca3\u1ca5\u0007\u0326\u0002\u0002\u1ca4\u1ca6\u0007\u033e\u0002\u0002",
- "\u1ca5\u1ca4\u0003\u0002\u0002\u0002\u1ca5\u1ca6\u0003\u0002\u0002\u0002",
- "\u1ca6\u1ca7\u0003\u0002\u0002\u0002\u1ca7\u1ca8\u0007\u0010\u0002\u0002",
- "\u1ca8\u1ca9\u0005\u03c6\u01e4\u0002\u1ca9\u1cab\u0007\u033d\u0002\u0002",
- "\u1caa\u1cac\u0007\u033f\u0002\u0002\u1cab\u1caa\u0003\u0002\u0002\u0002",
- "\u1cab\u1cac\u0003\u0002\u0002\u0002\u1cac\u1cae\u0003\u0002\u0002\u0002",
- "\u1cad\u1c82\u0003\u0002\u0002\u0002\u1cad\u1c8b\u0003\u0002\u0002\u0002",
- "\u1cad\u1c97\u0003\u0002\u0002\u0002\u1cad\u1ca0\u0003\u0002\u0002\u0002",
- "\u1cae\u0263\u0003\u0002\u0002\u0002\u1caf\u1cb1\u00073\u0002\u0002",
- "\u1cb0\u1cb2\u0007\u020d\u0002\u0002\u1cb1\u1cb0\u0003\u0002\u0002\u0002",
- "\u1cb1\u1cb2\u0003\u0002\u0002\u0002\u1cb2\u1cb3\u0003\u0002\u0002\u0002",
- "\u1cb3\u1cb5\u0005\u03a0\u01d1\u0002\u1cb4\u1cb6\u0007\u033f\u0002\u0002",
- "\u1cb5\u1cb4\u0003\u0002\u0002\u0002\u1cb5\u1cb6\u0003\u0002\u0002\u0002",
- "\u1cb6\u1ccd\u0003\u0002\u0002\u0002\u1cb7\u1cb9\u0007W\u0002\u0002",
- "\u1cb8\u1cba\u0007\u020d\u0002\u0002\u1cb9\u1cb8\u0003\u0002\u0002\u0002",
- "\u1cb9\u1cba\u0003\u0002\u0002\u0002\u1cba\u1cbc\u0003\u0002\u0002\u0002",
- "\u1cbb\u1cbd\u0007P\u0002\u0002\u1cbc\u1cbb\u0003\u0002\u0002\u0002",
- "\u1cbc\u1cbd\u0003\u0002\u0002\u0002\u1cbd\u1cbe\u0003\u0002\u0002\u0002",
- "\u1cbe\u1cc0\u0005\u03a0\u01d1\u0002\u1cbf\u1cc1\u0007\u033f\u0002\u0002",
- "\u1cc0\u1cbf\u0003\u0002\u0002\u0002\u1cc0\u1cc1\u0003\u0002\u0002\u0002",
- "\u1cc1\u1ccd\u0003\u0002\u0002\u0002\u1cc2\u1ccd\u0005\u02cc\u0167\u0002",
- "\u1cc3\u1ccd\u0005\u02d2\u016a\u0002\u1cc4\u1cc6\u0007\u00e7\u0002\u0002",
- "\u1cc5\u1cc7\u0007\u020d\u0002\u0002\u1cc6\u1cc5\u0003\u0002\u0002\u0002",
- "\u1cc6\u1cc7\u0003\u0002\u0002\u0002\u1cc7\u1cc8\u0003\u0002\u0002\u0002",
- "\u1cc8\u1cca\u0005\u03a0\u01d1\u0002\u1cc9\u1ccb\u0007\u033f\u0002\u0002",
- "\u1cca\u1cc9\u0003\u0002\u0002\u0002\u1cca\u1ccb\u0003\u0002\u0002\u0002",
- "\u1ccb\u1ccd\u0003\u0002\u0002\u0002\u1ccc\u1caf\u0003\u0002\u0002\u0002",
- "\u1ccc\u1cb7\u0003\u0002\u0002\u0002\u1ccc\u1cc2\u0003\u0002\u0002\u0002",
- "\u1ccc\u1cc3\u0003\u0002\u0002\u0002\u1ccc\u1cc4\u0003\u0002\u0002\u0002",
- "\u1ccd\u0265\u0003\u0002\u0002\u0002\u1cce\u1ccf\u0007\u001a\u0002\u0002",
- "\u1ccf\u1cd0\u0007T\u0002\u0002\u1cd0\u1cdd\u0005\u03c6\u01e4\u0002",
- "\u1cd1\u1cda\u0007\u010c\u0002\u0002\u1cd2\u1cd4\u0007\u033e\u0002\u0002",
- "\u1cd3\u1cd2\u0003\u0002\u0002\u0002\u1cd3\u1cd4\u0003\u0002\u0002\u0002",
- "\u1cd4\u1cd5\u0003\u0002\u0002\u0002\u1cd5\u1cd6\tQ\u0002\u0002\u1cd6",
- "\u1cd7\u0007\u032a\u0002\u0002\u1cd7\u1cd9\u0007\u0326\u0002\u0002\u1cd8",
- "\u1cd3\u0003\u0002\u0002\u0002\u1cd9\u1cdc\u0003\u0002\u0002\u0002\u1cda",
- "\u1cd8\u0003\u0002\u0002\u0002\u1cda\u1cdb\u0003\u0002\u0002\u0002\u1cdb",
- "\u1cde\u0003\u0002\u0002\u0002\u1cdc\u1cda\u0003\u0002\u0002\u0002\u1cdd",
- "\u1cd1\u0003\u0002\u0002\u0002\u1cdd\u1cde\u0003\u0002\u0002\u0002\u1cde",
- "\u1ce7\u0003\u0002\u0002\u0002\u1cdf\u1ce1\u0007\u033e\u0002\u0002\u1ce0",
- "\u1cdf\u0003\u0002\u0002\u0002\u1ce0\u1ce1\u0003\u0002\u0002\u0002\u1ce1",
- "\u1ce2\u0003\u0002\u0002\u0002\u1ce2\u1ce3\tQ\u0002\u0002\u1ce3\u1ce4",
- "\u0007\u032a\u0002\u0002\u1ce4\u1ce6\u0007\u0326\u0002\u0002\u1ce5\u1ce0",
- "\u0003\u0002\u0002\u0002\u1ce6\u1ce9\u0003\u0002\u0002\u0002\u1ce7\u1ce5",
- "\u0003\u0002\u0002\u0002\u1ce7\u1ce8\u0003\u0002\u0002\u0002\u1ce8\u1d01",
- "\u0003\u0002\u0002\u0002\u1ce9\u1ce7\u0003\u0002\u0002\u0002\u1cea\u1cef",
- "\u0007\u015a\u0002\u0002\u1ceb\u1ced\u0007\u033e\u0002\u0002\u1cec\u1ceb",
- "\u0003\u0002\u0002\u0002\u1cec\u1ced\u0003\u0002\u0002\u0002\u1ced\u1cee",
- "\u0003\u0002\u0002\u0002\u1cee\u1cf0\u0005\u03c6\u01e4\u0002\u1cef\u1cec",
- "\u0003\u0002\u0002\u0002\u1cf0\u1cf1\u0003\u0002\u0002\u0002\u1cf1\u1cef",
- "\u0003\u0002\u0002\u0002\u1cf1\u1cf2\u0003\u0002\u0002\u0002\u1cf2\u1d02",
- "\u0003\u0002\u0002\u0002\u1cf3\u1cfd\u0007\u015a\u0002\u0002\u1cf4\u1cf6",
- "\u0007\u033e\u0002\u0002\u1cf5\u1cf4\u0003\u0002\u0002\u0002\u1cf5\u1cf6",
- "\u0003\u0002\u0002\u0002\u1cf6\u1cf7\u0003\u0002\u0002\u0002\u1cf7\u1cf8",
- "\tR\u0002\u0002\u1cf8\u1cfb\u0007\u032a\u0002\u0002\u1cf9\u1cfc\u0007",
- "\u0326\u0002\u0002\u1cfa\u1cfc\u0005\u03c6\u01e4\u0002\u1cfb\u1cf9\u0003",
- "\u0002\u0002\u0002\u1cfb\u1cfa\u0003\u0002\u0002\u0002\u1cfc\u1cfe\u0003",
- "\u0002\u0002\u0002\u1cfd\u1cf5\u0003\u0002\u0002\u0002\u1cfe\u1cff\u0003",
- "\u0002\u0002\u0002\u1cff\u1cfd\u0003\u0002\u0002\u0002\u1cff\u1d00\u0003",
- "\u0002\u0002\u0002\u1d00\u1d02\u0003\u0002\u0002\u0002\u1d01\u1cea\u0003",
- "\u0002\u0002\u0002\u1d01\u1cf3\u0003\u0002\u0002\u0002\u1d02\u1d24\u0003",
- "\u0002\u0002\u0002\u1d03\u1d04\u0007\u00cd\u0002\u0002\u1d04\u1d09\u0007",
- "\u015a\u0002\u0002\u1d05\u1d07\u0007\u033e\u0002\u0002\u1d06\u1d05\u0003",
- "\u0002\u0002\u0002\u1d06\u1d07\u0003\u0002\u0002\u0002\u1d07\u1d08\u0003",
- "\u0002\u0002\u0002\u1d08\u1d0a\u0005\u03c6\u01e4\u0002\u1d09\u1d06\u0003",
- "\u0002\u0002\u0002\u1d0a\u1d0b\u0003\u0002\u0002\u0002\u1d0b\u1d09\u0003",
- "\u0002\u0002\u0002\u1d0b\u1d0c\u0003\u0002\u0002\u0002\u1d0c\u1d0e\u0003",
- "\u0002\u0002\u0002\u1d0d\u1d03\u0003\u0002\u0002\u0002\u1d0e\u1d0f\u0003",
- "\u0002\u0002\u0002\u1d0f\u1d0d\u0003\u0002\u0002\u0002\u1d0f\u1d10\u0003",
- "\u0002\u0002\u0002\u1d10\u1d25\u0003\u0002\u0002\u0002\u1d11\u1d12\u0007",
- "\u00cd\u0002\u0002\u1d12\u1d1c\u0007\u015a\u0002\u0002\u1d13\u1d15\u0007",
- "\u033e\u0002\u0002\u1d14\u1d13\u0003\u0002\u0002\u0002\u1d14\u1d15\u0003",
- "\u0002\u0002\u0002\u1d15\u1d16\u0003\u0002\u0002\u0002\u1d16\u1d17\t",
- "R\u0002\u0002\u1d17\u1d1a\u0007\u032a\u0002\u0002\u1d18\u1d1b\u0007",
- "\u0326\u0002\u0002\u1d19\u1d1b\u0005\u03c6\u01e4\u0002\u1d1a\u1d18\u0003",
- "\u0002\u0002\u0002\u1d1a\u1d19\u0003\u0002\u0002\u0002\u1d1b\u1d1d\u0003",
- "\u0002\u0002\u0002\u1d1c\u1d14\u0003\u0002\u0002\u0002\u1d1d\u1d1e\u0003",
- "\u0002\u0002\u0002\u1d1e\u1d1c\u0003\u0002\u0002\u0002\u1d1e\u1d1f\u0003",
- "\u0002\u0002\u0002\u1d1f\u1d21\u0003\u0002\u0002\u0002\u1d20\u1d11\u0003",
- "\u0002\u0002\u0002\u1d21\u1d22\u0003\u0002\u0002\u0002\u1d22\u1d20\u0003",
- "\u0002\u0002\u0002\u1d22\u1d23\u0003\u0002\u0002\u0002\u1d23\u1d25\u0003",
- "\u0002\u0002\u0002\u1d24\u1d0d\u0003\u0002\u0002\u0002\u1d24\u1d20\u0003",
- "\u0002\u0002\u0002\u1d24\u1d25\u0003\u0002\u0002\u0002\u1d25\u1dc6\u0003",
- "\u0002\u0002\u0002\u1d26\u1dc3\u0007\u0179\u0002\u0002\u1d27\u1d29\u0007",
- "\u033e\u0002\u0002\u1d28\u1d27\u0003\u0002\u0002\u0002\u1d28\u1d29\u0003",
- "\u0002\u0002\u0002\u1d29\u1d2a\u0003\u0002\u0002\u0002\u1d2a\u1dc2\u0007",
- "`\u0002\u0002\u1d2b\u1d2d\u0007\u033e\u0002\u0002\u1d2c\u1d2b\u0003",
- "\u0002\u0002\u0002\u1d2c\u1d2d\u0003\u0002\u0002\u0002\u1d2d\u1d2e\u0003",
- "\u0002\u0002\u0002\u1d2e\u1dc2\u0007H\u0002\u0002\u1d2f\u1d31\u0007",
- "\u033e\u0002\u0002\u1d30\u1d2f\u0003\u0002\u0002\u0002\u1d30\u1d31\u0003",
- "\u0002\u0002\u0002\u1d31\u1d32\u0003\u0002\u0002\u0002\u1d32\u1dc2\t",
- "S\u0002\u0002\u1d33\u1d35\u0007\u033e\u0002\u0002\u1d34\u1d33\u0003",
- "\u0002\u0002\u0002\u1d34\u1d35\u0003\u0002\u0002\u0002\u1d35\u1d36\u0003",
- "\u0002\u0002\u0002\u1d36\u1d37\u0007\u01db\u0002\u0002\u1d37\u1d3a\u0007",
- "\u032a\u0002\u0002\u1d38\u1d3b\u0007\u0326\u0002\u0002\u1d39\u1d3b\u0005",
- "\u03c6\u01e4\u0002\u1d3a\u1d38\u0003\u0002\u0002\u0002\u1d3a\u1d39\u0003",
- "\u0002\u0002\u0002\u1d3b\u1dc2\u0003\u0002\u0002\u0002\u1d3c\u1d3e\u0007",
- "\u033e\u0002\u0002\u1d3d\u1d3c\u0003\u0002\u0002\u0002\u1d3d\u1d3e\u0003",
- "\u0002\u0002\u0002\u1d3e\u1d3f\u0003\u0002\u0002\u0002\u1d3f\u1d40\u0007",
- "\u025d\u0002\u0002\u1d40\u1d41\u0007\u032a\u0002\u0002\u1d41\u1dc2\u0005",
- "\u03c6\u01e4\u0002\u1d42\u1d44\u0007\u033e\u0002\u0002\u1d43\u1d42\u0003",
- "\u0002\u0002\u0002\u1d43\u1d44\u0003\u0002\u0002\u0002\u1d44\u1d45\u0003",
- "\u0002\u0002\u0002\u1d45\u1dc2\u0007\u01c4\u0002\u0002\u1d46\u1d48\u0007",
- "\u033e\u0002\u0002\u1d47\u1d46\u0003\u0002\u0002\u0002\u1d47\u1d48\u0003",
- "\u0002\u0002\u0002\u1d48\u1d49\u0003\u0002\u0002\u0002\u1d49\u1dc2\u0007",
- "\u0084\u0002\u0002\u1d4a\u1d4c\u0007\u033e\u0002\u0002\u1d4b\u1d4a\u0003",
- "\u0002\u0002\u0002\u1d4b\u1d4c\u0003\u0002\u0002\u0002\u1d4c\u1d59\u0003",
- "\u0002\u0002\u0002\u1d4d\u1d4e\u0007x\u0002\u0002\u1d4e\u1d51\u0007",
- "\u032a\u0002\u0002\u1d4f\u1d52\u0007\u0326\u0002\u0002\u1d50\u1d52\u0005",
- "\u03c6\u01e4\u0002\u1d51\u1d4f\u0003\u0002\u0002\u0002\u1d51\u1d50\u0003",
- "\u0002\u0002\u0002\u1d52\u1d5a\u0003\u0002\u0002\u0002\u1d53\u1d54\u0007",
- "\u0119\u0002\u0002\u1d54\u1d57\u0007\u032a\u0002\u0002\u1d55\u1d58\u0007",
- "\u0322\u0002\u0002\u1d56\u1d58\u0005\u03c6\u01e4\u0002\u1d57\u1d55\u0003",
- "\u0002\u0002\u0002\u1d57\u1d56\u0003\u0002\u0002\u0002\u1d58\u1d5a\u0003",
- "\u0002\u0002\u0002\u1d59\u1d4d\u0003\u0002\u0002\u0002\u1d59\u1d53\u0003",
- "\u0002\u0002\u0002\u1d5a\u1dc2\u0003\u0002\u0002\u0002\u1d5b\u1d5d\u0007",
- "\u033e\u0002\u0002\u1d5c\u1d5b\u0003\u0002\u0002\u0002\u1d5c\u1d5d\u0003",
- "\u0002\u0002\u0002\u1d5d\u1d5e\u0003\u0002\u0002\u0002\u1d5e\u1dc2\t",
- "T\u0002\u0002\u1d5f\u1d61\u0007\u033e\u0002\u0002\u1d60\u1d5f\u0003",
- "\u0002\u0002\u0002\u1d60\u1d61\u0003\u0002\u0002\u0002\u1d61\u1d62\u0003",
- "\u0002\u0002\u0002\u1d62\u1dc2\tU\u0002\u0002\u1d63\u1d65\u0007\u033e",
- "\u0002\u0002\u1d64\u1d63\u0003\u0002\u0002\u0002\u1d64\u1d65\u0003\u0002",
- "\u0002\u0002\u1d65\u1d66\u0003\u0002\u0002\u0002\u1d66\u1dc2\tV\u0002",
- "\u0002\u1d67\u1d69\u0007\u033e\u0002\u0002\u1d68\u1d67\u0003\u0002\u0002",
- "\u0002\u1d68\u1d69\u0003\u0002\u0002\u0002\u1d69\u1d6a\u0003\u0002\u0002",
- "\u0002\u1d6a\u1d6b\u0007\u00c5\u0002\u0002\u1d6b\u1d6e\u0007\u032a\u0002",
- "\u0002\u1d6c\u1d6f\u0007\u0326\u0002\u0002\u1d6d\u1d6f\u0005\u03c6\u01e4",
- "\u0002\u1d6e\u1d6c\u0003\u0002\u0002\u0002\u1d6e\u1d6d\u0003\u0002\u0002",
- "\u0002\u1d6f\u1dc2\u0003\u0002\u0002\u0002\u1d70\u1d72\u0007\u033e\u0002",
- "\u0002\u1d71\u1d70\u0003\u0002\u0002\u0002\u1d71\u1d72\u0003\u0002\u0002",
- "\u0002\u1d72\u1d73\u0003\u0002\u0002\u0002\u1d73\u1d74\u0007\u00c6\u0002",
- "\u0002\u1d74\u1d75\u0007\u032a\u0002\u0002\u1d75\u1dc2\u0007\u0326\u0002",
- "\u0002\u1d76\u1d78\u0007\u033e\u0002\u0002\u1d77\u1d76\u0003\u0002\u0002",
- "\u0002\u1d77\u1d78\u0003\u0002\u0002\u0002\u1d78\u1d79\u0003\u0002\u0002",
- "\u0002\u1d79\u1d7a\u0007\u001f\u0002\u0002\u1d7a\u1d7d\u0007\u032a\u0002",
- "\u0002\u1d7b\u1d7e\u0007\u0322\u0002\u0002\u1d7c\u1d7e\u0005\u03c6\u01e4",
- "\u0002\u1d7d\u1d7b\u0003\u0002\u0002\u0002\u1d7d\u1d7c\u0003\u0002\u0002",
- "\u0002\u1d7e\u1dc2\u0003\u0002\u0002\u0002\u1d7f\u1d81\u0007\u033e\u0002",
- "\u0002\u1d80\u1d7f\u0003\u0002\u0002\u0002\u1d80\u1d81\u0003\u0002\u0002",
- "\u0002\u1d81\u1d82\u0003\u0002\u0002\u0002\u1d82\u1d83\u0007$\u0002",
- "\u0002\u1d83\u1d86\u0007\u032a\u0002\u0002\u1d84\u1d87\u0007\u0322\u0002",
- "\u0002\u1d85\u1d87\u0005\u03c6\u01e4\u0002\u1d86\u1d84\u0003\u0002\u0002",
- "\u0002\u1d86\u1d85\u0003\u0002\u0002\u0002\u1d87\u1dc2\u0003\u0002\u0002",
- "\u0002\u1d88\u1d8a\u0007\u033e\u0002\u0002\u1d89\u1d88\u0003\u0002\u0002",
- "\u0002\u1d89\u1d8a\u0003\u0002\u0002\u0002\u1d8a\u1d8b\u0003\u0002\u0002",
- "\u0002\u1d8b\u1d8c\u0007\u00bf\u0002\u0002\u1d8c\u1d8f\u0007\u032a\u0002",
- "\u0002\u1d8d\u1d90\u0007\u0322\u0002\u0002\u1d8e\u1d90\u0005\u03c6\u01e4",
- "\u0002\u1d8f\u1d8d\u0003\u0002\u0002\u0002\u1d8f\u1d8e\u0003\u0002\u0002",
- "\u0002\u1d90\u1dc2\u0003\u0002\u0002\u0002\u1d91\u1d93\u0007\u033e\u0002",
- "\u0002\u1d92\u1d91\u0003\u0002\u0002\u0002\u1d92\u1d93\u0003\u0002\u0002",
- "\u0002\u1d93\u1d94\u0003\u0002\u0002\u0002\u1d94\u1dc2\tW\u0002\u0002",
- "\u1d95\u1d97\u0007\u033e\u0002\u0002\u1d96\u1d95\u0003\u0002\u0002\u0002",
- "\u1d96\u1d97\u0003\u0002\u0002\u0002\u1d97\u1d98\u0003\u0002\u0002\u0002",
- "\u1d98\u1dc2\tX\u0002\u0002\u1d99\u1d9b\u0007\u033e\u0002\u0002\u1d9a",
- "\u1d99\u0003\u0002\u0002\u0002\u1d9a\u1d9b\u0003\u0002\u0002\u0002\u1d9b",
- "\u1d9c\u0003\u0002\u0002\u0002\u1d9c\u1dc2\u0007\u0115\u0002\u0002\u1d9d",
- "\u1d9f\u0007\u033e\u0002\u0002\u1d9e\u1d9d\u0003\u0002\u0002\u0002\u1d9e",
- "\u1d9f\u0003\u0002\u0002\u0002\u1d9f\u1da0\u0003\u0002\u0002\u0002\u1da0",
- "\u1da3\u0007\u014a\u0002\u0002\u1da1\u1da2\u0007\u032a\u0002\u0002\u1da2",
- "\u1da4\u0007\u0322\u0002\u0002\u1da3\u1da1\u0003\u0002\u0002\u0002\u1da3",
- "\u1da4\u0003\u0002\u0002\u0002\u1da4\u1dc2\u0003\u0002\u0002\u0002\u1da5",
- "\u1da7\u0007\u033e\u0002\u0002\u1da6\u1da5\u0003\u0002\u0002\u0002\u1da6",
- "\u1da7\u0003\u0002\u0002\u0002\u1da7\u1da8\u0003\u0002\u0002\u0002\u1da8",
- "\u1dc2\tY\u0002\u0002\u1da9\u1dab\u0007\u033e\u0002\u0002\u1daa\u1da9",
- "\u0003\u0002\u0002\u0002\u1daa\u1dab\u0003\u0002\u0002\u0002\u1dab\u1dac",
- "\u0003\u0002\u0002\u0002\u1dac\u1dc2\tZ\u0002\u0002\u1dad\u1daf\u0007",
- "\u033e\u0002\u0002\u1dae\u1dad\u0003\u0002\u0002\u0002\u1dae\u1daf\u0003",
- "\u0002\u0002\u0002\u1daf\u1db0\u0003\u0002\u0002\u0002\u1db0\u1db1\u0007",
- "\u01ec\u0002\u0002\u1db1\u1db2\u0007\u033c\u0002\u0002\u1db2\u1db3\u0007",
- "\u018a\u0002\u0002\u1db3\u1db4\u0007\u032a\u0002\u0002\u1db4\u1db5\t",
- "[\u0002\u0002\u1db5\u1db6\u0007\u033e\u0002\u0002\u1db6\u1db7\u0007",
- "\u0135\u0002\u0002\u1db7\u1db8\u0007+\u0002\u0002\u1db8\u1dbf\u0007",
- "\u032a\u0002\u0002\u1db9\u1dc0\u0005\u03c6\u01e4\u0002\u1dba\u1dbb\u0007",
- "\u0135\u0002\u0002\u1dbb\u1dbc\u0007\u0012\u0002\u0002\u1dbc\u1dbd\u0007",
- "\u00ac\u0002\u0002\u1dbd\u1dbe\u0007\u032a\u0002\u0002\u1dbe\u1dc0\u0005",
- "\u03c6\u01e4\u0002\u1dbf\u1db9\u0003\u0002\u0002\u0002\u1dbf\u1dba\u0003",
- "\u0002\u0002\u0002\u1dc0\u1dc2\u0003\u0002\u0002\u0002\u1dc1\u1d28\u0003",
- "\u0002\u0002\u0002\u1dc1\u1d2c\u0003\u0002\u0002\u0002\u1dc1\u1d30\u0003",
- "\u0002\u0002\u0002\u1dc1\u1d34\u0003\u0002\u0002\u0002\u1dc1\u1d3d\u0003",
- "\u0002\u0002\u0002\u1dc1\u1d43\u0003\u0002\u0002\u0002\u1dc1\u1d47\u0003",
- "\u0002\u0002\u0002\u1dc1\u1d4b\u0003\u0002\u0002\u0002\u1dc1\u1d5c\u0003",
- "\u0002\u0002\u0002\u1dc1\u1d60\u0003\u0002\u0002\u0002\u1dc1\u1d64\u0003",
- "\u0002\u0002\u0002\u1dc1\u1d68\u0003\u0002\u0002\u0002\u1dc1\u1d71\u0003",
- "\u0002\u0002\u0002\u1dc1\u1d77\u0003\u0002\u0002\u0002\u1dc1\u1d80\u0003",
- "\u0002\u0002\u0002\u1dc1\u1d89\u0003\u0002\u0002\u0002\u1dc1\u1d92\u0003",
- "\u0002\u0002\u0002\u1dc1\u1d96\u0003\u0002\u0002\u0002\u1dc1\u1d9a\u0003",
- "\u0002\u0002\u0002\u1dc1\u1d9e\u0003\u0002\u0002\u0002\u1dc1\u1da6\u0003",
- "\u0002\u0002\u0002\u1dc1\u1daa\u0003\u0002\u0002\u0002\u1dc1\u1dae\u0003",
- "\u0002\u0002\u0002\u1dc2\u1dc5\u0003\u0002\u0002\u0002\u1dc3\u1dc1\u0003",
- "\u0002\u0002\u0002\u1dc3\u1dc4\u0003\u0002\u0002\u0002\u1dc4\u1dc7\u0003",
- "\u0002\u0002\u0002\u1dc5\u1dc3\u0003\u0002\u0002\u0002\u1dc6\u1d26\u0003",
- "\u0002\u0002\u0002\u1dc6\u1dc7\u0003\u0002\u0002\u0002\u1dc7\u0267\u0003",
- "\u0002\u0002\u0002\u1dc8\u1dc9\u0007\u001a\u0002\u0002\u1dc9\u1dca\u0007",
- "\u00bb\u0002\u0002\u1dca\u1de2\u0005\u03c6\u01e4\u0002\u1dcb\u1dd0\u0007",
- "\u015a\u0002\u0002\u1dcc\u1dce\u0007\u033e\u0002\u0002\u1dcd\u1dcc\u0003",
- "\u0002\u0002\u0002\u1dcd\u1dce\u0003\u0002\u0002\u0002\u1dce\u1dcf\u0003",
- "\u0002\u0002\u0002\u1dcf\u1dd1\u0005\u03c6\u01e4\u0002\u1dd0\u1dcd\u0003",
- "\u0002\u0002\u0002\u1dd1\u1dd2\u0003\u0002\u0002\u0002\u1dd2\u1dd0\u0003",
- "\u0002\u0002\u0002\u1dd2\u1dd3\u0003\u0002\u0002\u0002\u1dd3\u1de3\u0003",
- "\u0002\u0002\u0002\u1dd4\u1dde\u0007\u015a\u0002\u0002\u1dd5\u1dd7\u0007",
- "\u033e\u0002\u0002\u1dd6\u1dd5\u0003\u0002\u0002\u0002\u1dd6\u1dd7\u0003",
- "\u0002\u0002\u0002\u1dd7\u1dd8\u0003\u0002\u0002\u0002\u1dd8\u1dd9\t",
- "R\u0002\u0002\u1dd9\u1ddc\u0007\u032a\u0002\u0002\u1dda\u1ddd\u0007",
- "\u0326\u0002\u0002\u1ddb\u1ddd\u0005\u03c6\u01e4\u0002\u1ddc\u1dda\u0003",
- "\u0002\u0002\u0002\u1ddc\u1ddb\u0003\u0002\u0002\u0002\u1ddd\u1ddf\u0003",
- "\u0002\u0002\u0002\u1dde\u1dd6\u0003\u0002\u0002\u0002\u1ddf\u1de0\u0003",
- "\u0002\u0002\u0002\u1de0\u1dde\u0003\u0002\u0002\u0002\u1de0\u1de1\u0003",
- "\u0002\u0002\u0002\u1de1\u1de3\u0003\u0002\u0002\u0002\u1de2\u1dcb\u0003",
- "\u0002\u0002\u0002\u1de2\u1dd4\u0003\u0002\u0002\u0002\u1de3\u1e05\u0003",
- "\u0002\u0002\u0002\u1de4\u1de5\u0007\u00cd\u0002\u0002\u1de5\u1dea\u0007",
- "\u015a\u0002\u0002\u1de6\u1de8\u0007\u033e\u0002\u0002\u1de7\u1de6\u0003",
- "\u0002\u0002\u0002\u1de7\u1de8\u0003\u0002\u0002\u0002\u1de8\u1de9\u0003",
- "\u0002\u0002\u0002\u1de9\u1deb\u0005\u03c6\u01e4\u0002\u1dea\u1de7\u0003",
- "\u0002\u0002\u0002\u1deb\u1dec\u0003\u0002\u0002\u0002\u1dec\u1dea\u0003",
- "\u0002\u0002\u0002\u1dec\u1ded\u0003\u0002\u0002\u0002\u1ded\u1def\u0003",
- "\u0002\u0002\u0002\u1dee\u1de4\u0003\u0002\u0002\u0002\u1def\u1df0\u0003",
- "\u0002\u0002\u0002\u1df0\u1dee\u0003\u0002\u0002\u0002\u1df0\u1df1\u0003",
- "\u0002\u0002\u0002\u1df1\u1e06\u0003\u0002\u0002\u0002\u1df2\u1df3\u0007",
- "\u00cd\u0002\u0002\u1df3\u1dfd\u0007\u015a\u0002\u0002\u1df4\u1df6\u0007",
- "\u033e\u0002\u0002\u1df5\u1df4\u0003\u0002\u0002\u0002\u1df5\u1df6\u0003",
- "\u0002\u0002\u0002\u1df6\u1df7\u0003\u0002\u0002\u0002\u1df7\u1df8\t",
- "R\u0002\u0002\u1df8\u1dfb\u0007\u032a\u0002\u0002\u1df9\u1dfc\u0007",
- "\u0326\u0002\u0002\u1dfa\u1dfc\u0005\u03c6\u01e4\u0002\u1dfb\u1df9\u0003",
- "\u0002\u0002\u0002\u1dfb\u1dfa\u0003\u0002\u0002\u0002\u1dfc\u1dfe\u0003",
- "\u0002\u0002\u0002\u1dfd\u1df5\u0003\u0002\u0002\u0002\u1dfe\u1dff\u0003",
- "\u0002\u0002\u0002\u1dff\u1dfd\u0003\u0002\u0002\u0002\u1dff\u1e00\u0003",
- "\u0002\u0002\u0002\u1e00\u1e02\u0003\u0002\u0002\u0002\u1e01\u1df2\u0003",
- "\u0002\u0002\u0002\u1e02\u1e03\u0003\u0002\u0002\u0002\u1e03\u1e01\u0003",
- "\u0002\u0002\u0002\u1e03\u1e04\u0003\u0002\u0002\u0002\u1e04\u1e06\u0003",
- "\u0002\u0002\u0002\u1e05\u1dee\u0003\u0002\u0002\u0002\u1e05\u1e01\u0003",
- "\u0002\u0002\u0002\u1e05\u1e06\u0003\u0002\u0002\u0002\u1e06\u1eb4\u0003",
- "\u0002\u0002\u0002\u1e07\u1eb1\u0007\u0179\u0002\u0002\u1e08\u1e0a\u0007",
- "\u033e\u0002\u0002\u1e09\u1e08\u0003\u0002\u0002\u0002\u1e09\u1e0a\u0003",
- "\u0002\u0002\u0002\u1e0a\u1e0b\u0003\u0002\u0002\u0002\u1e0b\u1eb0\u0007",
- "`\u0002\u0002\u1e0c\u1e0e\u0007\u033e\u0002\u0002\u1e0d\u1e0c\u0003",
- "\u0002\u0002\u0002\u1e0d\u1e0e\u0003\u0002\u0002\u0002\u1e0e\u1e0f\u0003",
- "\u0002\u0002\u0002\u1e0f\u1eb0\u0007H\u0002\u0002\u1e10\u1e12\u0007",
- "\u033e\u0002\u0002\u1e11\u1e10\u0003\u0002\u0002\u0002\u1e11\u1e12\u0003",
- "\u0002\u0002\u0002\u1e12\u1e13\u0003\u0002\u0002\u0002\u1e13\u1eb0\t",
- "S\u0002\u0002\u1e14\u1e16\u0007\u033e\u0002\u0002\u1e15\u1e14\u0003",
- "\u0002\u0002\u0002\u1e15\u1e16\u0003\u0002\u0002\u0002\u1e16\u1e17\u0003",
- "\u0002\u0002\u0002\u1e17\u1e18\u0007\u01db\u0002\u0002\u1e18\u1e1b\u0007",
- "\u032a\u0002\u0002\u1e19\u1e1c\u0007\u0326\u0002\u0002\u1e1a\u1e1c\u0005",
- "\u03c6\u01e4\u0002\u1e1b\u1e19\u0003\u0002\u0002\u0002\u1e1b\u1e1a\u0003",
- "\u0002\u0002\u0002\u1e1c\u1eb0\u0003\u0002\u0002\u0002\u1e1d\u1e1f\u0007",
- "\u033e\u0002\u0002\u1e1e\u1e1d\u0003\u0002\u0002\u0002\u1e1e\u1e1f\u0003",
- "\u0002\u0002\u0002\u1e1f\u1e20\u0003\u0002\u0002\u0002\u1e20\u1e21\u0007",
- "\u025d\u0002\u0002\u1e21\u1e22\u0007\u032a\u0002\u0002\u1e22\u1eb0\u0005",
- "\u03c6\u01e4\u0002\u1e23\u1e25\u0007\u033e\u0002\u0002\u1e24\u1e23\u0003",
- "\u0002\u0002\u0002\u1e24\u1e25\u0003\u0002\u0002\u0002\u1e25\u1e26\u0003",
- "\u0002\u0002\u0002\u1e26\u1eb0\u0007\u01c4\u0002\u0002\u1e27\u1e29\u0007",
- "\u033e\u0002\u0002\u1e28\u1e27\u0003\u0002\u0002\u0002\u1e28\u1e29\u0003",
- "\u0002\u0002\u0002\u1e29\u1e2a\u0003\u0002\u0002\u0002\u1e2a\u1eb0\u0007",
- "\u0084\u0002\u0002\u1e2b\u1e2d\u0007\u033e\u0002\u0002\u1e2c\u1e2b\u0003",
- "\u0002\u0002\u0002\u1e2c\u1e2d\u0003\u0002\u0002\u0002\u1e2d\u1e3a\u0003",
- "\u0002\u0002\u0002\u1e2e\u1e2f\u0007x\u0002\u0002\u1e2f\u1e32\u0007",
- "\u032a\u0002\u0002\u1e30\u1e33\u0007\u0326\u0002\u0002\u1e31\u1e33\u0005",
- "\u03c6\u01e4\u0002\u1e32\u1e30\u0003\u0002\u0002\u0002\u1e32\u1e31\u0003",
- "\u0002\u0002\u0002\u1e33\u1e3b\u0003\u0002\u0002\u0002\u1e34\u1e35\u0007",
- "\u0119\u0002\u0002\u1e35\u1e38\u0007\u032a\u0002\u0002\u1e36\u1e39\u0007",
- "\u0322\u0002\u0002\u1e37\u1e39\u0005\u03c6\u01e4\u0002\u1e38\u1e36\u0003",
- "\u0002\u0002\u0002\u1e38\u1e37\u0003\u0002\u0002\u0002\u1e39\u1e3b\u0003",
- "\u0002\u0002\u0002\u1e3a\u1e2e\u0003\u0002\u0002\u0002\u1e3a\u1e34\u0003",
- "\u0002\u0002\u0002\u1e3b\u1eb0\u0003\u0002\u0002\u0002\u1e3c\u1e3e\u0007",
- "\u033e\u0002\u0002\u1e3d\u1e3c\u0003\u0002\u0002\u0002\u1e3d\u1e3e\u0003",
- "\u0002\u0002\u0002\u1e3e\u1e3f\u0003\u0002\u0002\u0002\u1e3f\u1eb0\t",
- "T\u0002\u0002\u1e40\u1e42\u0007\u033e\u0002\u0002\u1e41\u1e40\u0003",
- "\u0002\u0002\u0002\u1e41\u1e42\u0003\u0002\u0002\u0002\u1e42\u1e43\u0003",
- "\u0002\u0002\u0002\u1e43\u1eb0\tU\u0002\u0002\u1e44\u1e46\u0007\u033e",
- "\u0002\u0002\u1e45\u1e44\u0003\u0002\u0002\u0002\u1e45\u1e46\u0003\u0002",
- "\u0002\u0002\u1e46\u1e47\u0003\u0002\u0002\u0002\u1e47\u1eb0\tV\u0002",
- "\u0002\u1e48\u1e4a\u0007\u033e\u0002\u0002\u1e49\u1e48\u0003\u0002\u0002",
- "\u0002\u1e49\u1e4a\u0003\u0002\u0002\u0002\u1e4a\u1e4b\u0003\u0002\u0002",
- "\u0002\u1e4b\u1e4c\u0007\u00c5\u0002\u0002\u1e4c\u1e4f\u0007\u032a\u0002",
- "\u0002\u1e4d\u1e50\u0007\u0326\u0002\u0002\u1e4e\u1e50\u0005\u03c6\u01e4",
- "\u0002\u1e4f\u1e4d\u0003\u0002\u0002\u0002\u1e4f\u1e4e\u0003\u0002\u0002",
- "\u0002\u1e50\u1eb0\u0003\u0002\u0002\u0002\u1e51\u1e53\u0007\u033e\u0002",
- "\u0002\u1e52\u1e51\u0003\u0002\u0002\u0002\u1e52\u1e53\u0003\u0002\u0002",
- "\u0002\u1e53\u1e54\u0003\u0002\u0002\u0002\u1e54\u1e55\u0007\u00c6\u0002",
- "\u0002\u1e55\u1e56\u0007\u032a\u0002\u0002\u1e56\u1eb0\u0007\u0326\u0002",
- "\u0002\u1e57\u1e59\u0007\u033e\u0002\u0002\u1e58\u1e57\u0003\u0002\u0002",
- "\u0002\u1e58\u1e59\u0003\u0002\u0002\u0002\u1e59\u1e5a\u0003\u0002\u0002",
- "\u0002\u1e5a\u1e5b\u0007\u001f\u0002\u0002\u1e5b\u1e5e\u0007\u032a\u0002",
- "\u0002\u1e5c\u1e5f\u0007\u0322\u0002\u0002\u1e5d\u1e5f\u0005\u03c6\u01e4",
- "\u0002\u1e5e\u1e5c\u0003\u0002\u0002\u0002\u1e5e\u1e5d\u0003\u0002\u0002",
- "\u0002\u1e5f\u1eb0\u0003\u0002\u0002\u0002\u1e60\u1e62\u0007\u033e\u0002",
- "\u0002\u1e61\u1e60\u0003\u0002\u0002\u0002\u1e61\u1e62\u0003\u0002\u0002",
- "\u0002\u1e62\u1e63\u0003\u0002\u0002\u0002\u1e63\u1e64\u0007$\u0002",
- "\u0002\u1e64\u1e67\u0007\u032a\u0002\u0002\u1e65\u1e68\u0007\u0322\u0002",
- "\u0002\u1e66\u1e68\u0005\u03c6\u01e4\u0002\u1e67\u1e65\u0003\u0002\u0002",
- "\u0002\u1e67\u1e66\u0003\u0002\u0002\u0002\u1e68\u1eb0\u0003\u0002\u0002",
- "\u0002\u1e69\u1e6b\u0007\u033e\u0002\u0002\u1e6a\u1e69\u0003\u0002\u0002",
- "\u0002\u1e6a\u1e6b\u0003\u0002\u0002\u0002\u1e6b\u1e6c\u0003\u0002\u0002",
- "\u0002\u1e6c\u1e6d\u0007\u00bf\u0002\u0002\u1e6d\u1e70\u0007\u032a\u0002",
- "\u0002\u1e6e\u1e71\u0007\u0322\u0002\u0002\u1e6f\u1e71\u0005\u03c6\u01e4",
- "\u0002\u1e70\u1e6e\u0003\u0002\u0002\u0002\u1e70\u1e6f\u0003\u0002\u0002",
- "\u0002\u1e71\u1eb0\u0003\u0002\u0002\u0002\u1e72\u1e74\u0007\u033e\u0002",
- "\u0002\u1e73\u1e72\u0003\u0002\u0002\u0002\u1e73\u1e74\u0003\u0002\u0002",
- "\u0002\u1e74\u1e75\u0003\u0002\u0002\u0002\u1e75\u1eb0\tW\u0002\u0002",
- "\u1e76\u1e78\u0007\u033e\u0002\u0002\u1e77\u1e76\u0003\u0002\u0002\u0002",
- "\u1e77\u1e78\u0003\u0002\u0002\u0002\u1e78\u1e79\u0003\u0002\u0002\u0002",
- "\u1e79\u1eb0\tX\u0002\u0002\u1e7a\u1e7c\u0007\u033e\u0002\u0002\u1e7b",
- "\u1e7a\u0003\u0002\u0002\u0002\u1e7b\u1e7c\u0003\u0002\u0002\u0002\u1e7c",
- "\u1e7d\u0003\u0002\u0002\u0002\u1e7d\u1eb0\u0007\u0115\u0002\u0002\u1e7e",
- "\u1e80\u0007\u033e\u0002\u0002\u1e7f\u1e7e\u0003\u0002\u0002\u0002\u1e7f",
- "\u1e80\u0003\u0002\u0002\u0002\u1e80\u1e81\u0003\u0002\u0002\u0002\u1e81",
- "\u1e84\u0007\u014a\u0002\u0002\u1e82\u1e83\u0007\u032a\u0002\u0002\u1e83",
- "\u1e85\u0007\u0322\u0002\u0002\u1e84\u1e82\u0003\u0002\u0002\u0002\u1e84",
- "\u1e85\u0003\u0002\u0002\u0002\u1e85\u1eb0\u0003\u0002\u0002\u0002\u1e86",
- "\u1e88\u0007\u033e\u0002\u0002\u1e87\u1e86\u0003\u0002\u0002\u0002\u1e87",
- "\u1e88\u0003\u0002\u0002\u0002\u1e88\u1e89\u0003\u0002\u0002\u0002\u1e89",
- "\u1eb0\tY\u0002\u0002\u1e8a\u1e8c\u0007\u033e\u0002\u0002\u1e8b\u1e8a",
- "\u0003\u0002\u0002\u0002\u1e8b\u1e8c\u0003\u0002\u0002\u0002\u1e8c\u1e8d",
- "\u0003\u0002\u0002\u0002\u1e8d\u1eb0\tZ\u0002\u0002\u1e8e\u1e90\u0007",
- "\u033e\u0002\u0002\u1e8f\u1e8e\u0003\u0002\u0002\u0002\u1e8f\u1e90\u0003",
- "\u0002\u0002\u0002\u1e90\u1e95\u0003\u0002\u0002\u0002\u1e91\u1e96\u0007",
- "\u026b\u0002\u0002\u1e92\u1e93\u0007\u02dc\u0002\u0002\u1e93\u1e94\u0007",
- "\u032a\u0002\u0002\u1e94\u1e96\u0007\u0326\u0002\u0002\u1e95\u1e91\u0003",
- "\u0002\u0002\u0002\u1e95\u1e92\u0003\u0002\u0002\u0002\u1e96\u1eb0\u0003",
- "\u0002\u0002\u0002\u1e97\u1e99\u0007\u033e\u0002\u0002\u1e98\u1e97\u0003",
- "\u0002\u0002\u0002\u1e98\u1e99\u0003\u0002\u0002\u0002\u1e99\u1e9a\u0003",
- "\u0002\u0002\u0002\u1e9a\u1eb0\u0007\u0264\u0002\u0002\u1e9b\u1e9d\u0007",
- "\u033e\u0002\u0002\u1e9c\u1e9b\u0003\u0002\u0002\u0002\u1e9c\u1e9d\u0003",
- "\u0002\u0002\u0002\u1e9d\u1e9e\u0003\u0002\u0002\u0002\u1e9e\u1e9f\u0007",
- "\u01ec\u0002\u0002\u1e9f\u1ea0\u0007\u033c\u0002\u0002\u1ea0\u1ea1\u0007",
- "\u018a\u0002\u0002\u1ea1\u1ea2\u0007\u032a\u0002\u0002\u1ea2\u1ea3\t",
- "[\u0002\u0002\u1ea3\u1ea4\u0007\u033e\u0002\u0002\u1ea4\u1ea5\u0007",
- "\u0135\u0002\u0002\u1ea5\u1ea6\u0007+\u0002\u0002\u1ea6\u1ead\u0007",
- "\u032a\u0002\u0002\u1ea7\u1eae\u0005\u03c6\u01e4\u0002\u1ea8\u1ea9\u0007",
- "\u0135\u0002\u0002\u1ea9\u1eaa\u0007\u0012\u0002\u0002\u1eaa\u1eab\u0007",
- "\u00ac\u0002\u0002\u1eab\u1eac\u0007\u032a\u0002\u0002\u1eac\u1eae\u0005",
- "\u03c6\u01e4\u0002\u1ead\u1ea7\u0003\u0002\u0002\u0002\u1ead\u1ea8\u0003",
- "\u0002\u0002\u0002\u1eae\u1eb0\u0003\u0002\u0002\u0002\u1eaf\u1e09\u0003",
- "\u0002\u0002\u0002\u1eaf\u1e0d\u0003\u0002\u0002\u0002\u1eaf\u1e11\u0003",
- "\u0002\u0002\u0002\u1eaf\u1e15\u0003\u0002\u0002\u0002\u1eaf\u1e1e\u0003",
- "\u0002\u0002\u0002\u1eaf\u1e24\u0003\u0002\u0002\u0002\u1eaf\u1e28\u0003",
- "\u0002\u0002\u0002\u1eaf\u1e2c\u0003\u0002\u0002\u0002\u1eaf\u1e3d\u0003",
- "\u0002\u0002\u0002\u1eaf\u1e41\u0003\u0002\u0002\u0002\u1eaf\u1e45\u0003",
- "\u0002\u0002\u0002\u1eaf\u1e49\u0003\u0002\u0002\u0002\u1eaf\u1e52\u0003",
- "\u0002\u0002\u0002\u1eaf\u1e58\u0003\u0002\u0002\u0002\u1eaf\u1e61\u0003",
- "\u0002\u0002\u0002\u1eaf\u1e6a\u0003\u0002\u0002\u0002\u1eaf\u1e73\u0003",
- "\u0002\u0002\u0002\u1eaf\u1e77\u0003\u0002\u0002\u0002\u1eaf\u1e7b\u0003",
- "\u0002\u0002\u0002\u1eaf\u1e7f\u0003\u0002\u0002\u0002\u1eaf\u1e87\u0003",
- "\u0002\u0002\u0002\u1eaf\u1e8b\u0003\u0002\u0002\u0002\u1eaf\u1e8f\u0003",
- "\u0002\u0002\u0002\u1eaf\u1e98\u0003\u0002\u0002\u0002\u1eaf\u1e9c\u0003",
- "\u0002\u0002\u0002\u1eb0\u1eb3\u0003\u0002\u0002\u0002\u1eb1\u1eaf\u0003",
- "\u0002\u0002\u0002\u1eb1\u1eb2\u0003\u0002\u0002\u0002\u1eb2\u1eb5\u0003",
- "\u0002\u0002\u0002\u1eb3\u1eb1\u0003\u0002\u0002\u0002\u1eb4\u1e07\u0003",
- "\u0002\u0002\u0002\u1eb4\u1eb5\u0003\u0002\u0002\u0002\u1eb5\u0269\u0003",
- "\u0002\u0002\u0002\u1eb6\u1eb7\u0007\u001a\u0002\u0002\u1eb7\u1eb8\u0007",
- "+\u0002\u0002\u1eb8\u1eb9\u0005\u03c6\u01e4\u0002\u1eb9\u1eba\u0007",
- "\u015a\u0002\u0002\u1eba\u1ebb\u0007\u0081\u0002\u0002\u1ebb\u1ebc\u0007",
- "\u032a\u0002\u0002\u1ebc\u1edc\u0007\u0326\u0002\u0002\u1ebd\u1ebe\u0007",
- "\u0179\u0002\u0002\u1ebe\u1ebf\u0007\u028c\u0002\u0002\u1ebf\u1ec0\u0007",
- "\u00ac\u0002\u0002\u1ec0\u1ed7\u0007\u033c\u0002\u0002\u1ec1\u1ec3\u0007",
- "\u033e\u0002\u0002\u1ec2\u1ec1\u0003\u0002\u0002\u0002\u1ec2\u1ec3\u0003",
- "\u0002\u0002\u0002\u1ec3\u1ec4\u0003\u0002\u0002\u0002\u1ec4\u1ec5\u0007",
- "\u0081\u0002\u0002\u1ec5\u1ec6\u0007\u032a\u0002\u0002\u1ec6\u1ed8\u0007",
- "\u0326\u0002\u0002\u1ec7\u1ec9\u0007\u033e\u0002\u0002\u1ec8\u1ec7\u0003",
- "\u0002\u0002\u0002\u1ec8\u1ec9\u0003\u0002\u0002\u0002\u1ec9\u1eca\u0003",
- "\u0002\u0002\u0002\u1eca\u1ecb\u0007\u01ec\u0002\u0002\u1ecb\u1ecc\u0007",
- "&\u0002\u0002\u1ecc\u1ecd\u0007\u00f4\u0002\u0002\u1ecd\u1ece\u0007",
- "\u032a\u0002\u0002\u1ece\u1ed8\u0007\u0326\u0002\u0002\u1ecf\u1ed1\u0007",
- "\u033e\u0002\u0002\u1ed0\u1ecf\u0003\u0002\u0002\u0002\u1ed0\u1ed1\u0003",
- "\u0002\u0002\u0002\u1ed1\u1ed2\u0003\u0002\u0002\u0002\u1ed2\u1ed3\u0007",
- "\u01d1\u0002\u0002\u1ed3\u1ed4\u0007&\u0002\u0002\u1ed4\u1ed5\u0007",
- "\u00f4\u0002\u0002\u1ed5\u1ed6\u0007\u032a\u0002\u0002\u1ed6\u1ed8\u0007",
- "\u0326\u0002\u0002\u1ed7\u1ec2\u0003\u0002\u0002\u0002\u1ed7\u1ec8\u0003",
- "\u0002\u0002\u0002\u1ed7\u1ed0\u0003\u0002\u0002\u0002\u1ed8\u1ed9\u0003",
- "\u0002\u0002\u0002\u1ed9\u1ed7\u0003\u0002\u0002\u0002\u1ed9\u1eda\u0003",
- "\u0002\u0002\u0002\u1eda\u1edb\u0003\u0002\u0002\u0002\u1edb\u1edd\u0007",
- "\u033d\u0002\u0002\u1edc\u1ebd\u0003\u0002\u0002\u0002\u1edc\u1edd\u0003",
- "\u0002\u0002\u0002\u1edd\u026b\u0003\u0002\u0002\u0002\u1ede\u1edf\u0007",
- "\u001a\u0002\u0002\u1edf\u1ee0\u0007\u00bd\u0002\u0002\u1ee0\u1ee1\u0007",
- "\u00ac\u0002\u0002\u1ee1\u1ee2\u0007\u015a\u0002\u0002\u1ee2\u1ee3\u0007",
- "\u0081\u0002\u0002\u1ee3\u1ee4\u0007\u032a\u0002\u0002\u1ee4\u1ee5\u0007",
- "\u0326\u0002\u0002\u1ee5\u1ee6\u0007\u01ec\u0002\u0002\u1ee6\u1ee7\u0007",
- "&\u0002\u0002\u1ee7\u1ee8\u0007\u00f4\u0002\u0002\u1ee8\u1ee9\u0007",
- "\u032a\u0002\u0002\u1ee9\u1eea\u0007\u0326\u0002\u0002\u1eea\u026d\u0003",
- "\u0002\u0002\u0002\u1eeb\u1eec\u0007\u001a\u0002\u0002\u1eec\u1eed\u0007",
- "\u0136\u0002\u0002\u1eed\u1eee\u0007\u00bd\u0002\u0002\u1eee\u1eef\u0007",
- "\u00ac\u0002\u0002\u1eef\u1ef0\u0007\u015a\u0002\u0002\u1ef0\u1ef1\u0007",
- "\u0081\u0002\u0002\u1ef1\u1ef2\u0007\u032a\u0002\u0002\u1ef2\u1ef3\u0007",
- "\u0326\u0002\u0002\u1ef3\u1ef4\u0007\u01ec\u0002\u0002\u1ef4\u1ef5\u0007",
- "&\u0002\u0002\u1ef5\u1ef6\u0007\u00f4\u0002\u0002\u1ef6\u1ef7\u0007",
- "\u032a\u0002\u0002\u1ef7\u1ef8\u0007\u0326\u0002\u0002\u1ef8\u026f\u0003",
- "\u0002\u0002\u0002\u1ef9\u1efd\u0007\u00af\u0002\u0002\u1efa\u1efe\u0005",
- "\u0272\u013a\u0002\u1efb\u1efe\u0005\u0274\u013b\u0002\u1efc\u1efe\u0005",
- "\u0276\u013c\u0002\u1efd\u1efa\u0003\u0002\u0002\u0002\u1efd\u1efb\u0003",
- "\u0002\u0002\u0002\u1efd\u1efc\u0003\u0002\u0002\u0002\u1efe\u0271\u0003",
- "\u0002\u0002\u0002\u1eff\u1f02\t\u0018\u0002\u0002\u1f00\u1f02\u0007",
- "\u0307\u0002\u0002\u1f01\u1eff\u0003\u0002\u0002\u0002\u1f01\u1f00\u0003",
- "\u0002\u0002\u0002\u1f02\u1f05\u0003\u0002\u0002\u0002\u1f03\u1f04\u0007",
- "\u0179\u0002\u0002\u1f04\u1f06\u0007\u02e1\u0002\u0002\u1f05\u1f03\u0003",
- "\u0002\u0002\u0002\u1f05\u1f06\u0003\u0002\u0002\u0002\u1f06\u0273\u0003",
- "\u0002\u0002\u0002\u1f07\u1f08\u0007\u0293\u0002\u0002\u1f08\u1f09\u0007",
- "\u00dd\u0002\u0002\u1f09\u1f0c\u0007\u02e8\u0002\u0002\u1f0a\u1f0d\u0007",
- "\u0006\u0002\u0002\u1f0b\u1f0d\u0007\u0322\u0002\u0002\u1f0c\u1f0a\u0003",
- "\u0002\u0002\u0002\u1f0c\u1f0b\u0003\u0002\u0002\u0002\u1f0d\u0275\u0003",
- "\u0002\u0002\u0002\u1f0e\u1f0f\u0007\u014a\u0002\u0002\u1f0f\u1f10\u0007",
- "\u0226\u0002\u0002\u1f10\u1f11\u0007\u0322\u0002\u0002\u1f11\u0277\u0003",
- "\u0002\u0002\u0002\u1f12\u1f13\u0007v\u0002\u0002\u1f13\u1f14\u0005",
- "\u027a\u013e\u0002\u1f14\u0279\u0003\u0002\u0002\u0002\u1f15\u1f16\u0007",
- "\u0321\u0002\u0002\u1f16\u1f18\u0007\u032a\u0002\u0002\u1f17\u1f15\u0003",
- "\u0002\u0002\u0002\u1f17\u1f18\u0003\u0002\u0002\u0002\u1f18\u1f1b\u0003",
- "\u0002\u0002\u0002\u1f19\u1f1c\u0005\u0396\u01cc\u0002\u1f1a\u1f1c\u0005",
- "\u02d8\u016d\u0002\u1f1b\u1f19\u0003\u0002\u0002\u0002\u1f1b\u1f1a\u0003",
- "\u0002\u0002\u0002\u1f1c\u1f25\u0003\u0002\u0002\u0002\u1f1d\u1f22\u0005",
- "\u027c\u013f\u0002\u1f1e\u1f1f\u0007\u033e\u0002\u0002\u1f1f\u1f21\u0005",
- "\u027c\u013f\u0002\u1f20\u1f1e\u0003\u0002\u0002\u0002\u1f21\u1f24\u0003",
- "\u0002\u0002\u0002\u1f22\u1f20\u0003\u0002\u0002\u0002\u1f22\u1f23\u0003",
- "\u0002\u0002\u0002\u1f23\u1f26\u0003\u0002\u0002\u0002\u1f24\u1f22\u0003",
- "\u0002\u0002\u0002\u1f25\u1f1d\u0003\u0002\u0002\u0002\u1f25\u1f26\u0003",
- "\u0002\u0002\u0002\u1f26\u1f28\u0003\u0002\u0002\u0002\u1f27\u1f29\u0007",
- "\u033f\u0002\u0002\u1f28\u1f27\u0003\u0002\u0002\u0002\u1f28\u1f29\u0003",
- "\u0002\u0002\u0002\u1f29\u1f40\u0003\u0002\u0002\u0002\u1f2a\u1f2b\u0007",
- "\u033c\u0002\u0002\u1f2b\u1f30\u0005\u027e\u0140\u0002\u1f2c\u1f2d\u0007",
- "\u0344\u0002\u0002\u1f2d\u1f2f\u0005\u027e\u0140\u0002\u1f2e\u1f2c\u0003",
- "\u0002\u0002\u0002\u1f2f\u1f32\u0003\u0002\u0002\u0002\u1f30\u1f2e\u0003",
- "\u0002\u0002\u0002\u1f30\u1f31\u0003\u0002\u0002\u0002\u1f31\u1f33\u0003",
- "\u0002\u0002\u0002\u1f32\u1f30\u0003\u0002\u0002\u0002\u1f33\u1f3a\u0007",
- "\u033d\u0002\u0002\u1f34\u1f36\u0007\u0010\u0002\u0002\u1f35\u1f34\u0003",
- "\u0002\u0002\u0002\u1f35\u1f36\u0003\u0002\u0002\u0002\u1f36\u1f37\u0003",
- "\u0002\u0002\u0002\u1f37\u1f38\t\\\u0002\u0002\u1f38\u1f39\u0007\u032a",
- "\u0002\u0002\u1f39\u1f3b\u0007\u0326\u0002\u0002\u1f3a\u1f35\u0003\u0002",
- "\u0002\u0002\u1f3a\u1f3b\u0003\u0002\u0002\u0002\u1f3b\u1f3d\u0003\u0002",
- "\u0002\u0002\u1f3c\u1f3e\u0007\u033f\u0002\u0002\u1f3d\u1f3c\u0003\u0002",
- "\u0002\u0002\u1f3d\u1f3e\u0003\u0002\u0002\u0002\u1f3e\u1f40\u0003\u0002",
- "\u0002\u0002\u1f3f\u1f17\u0003\u0002\u0002\u0002\u1f3f\u1f2a\u0003\u0002",
- "\u0002\u0002\u1f40\u027b\u0003\u0002\u0002\u0002\u1f41\u1f42\u0007\u0321",
- "\u0002\u0002\u1f42\u1f44\u0007\u032a\u0002\u0002\u1f43\u1f41\u0003\u0002",
- "\u0002\u0002\u1f43\u1f44\u0003\u0002\u0002\u0002\u1f44\u1f4e\u0003\u0002",
- "\u0002\u0002\u1f45\u1f48\u0005\u02d6\u016c\u0002\u1f46\u1f48\u0005\u03c6",
- "\u01e4\u0002\u1f47\u1f45\u0003\u0002\u0002\u0002\u1f47\u1f46\u0003\u0002",
- "\u0002\u0002\u1f48\u1f4a\u0003\u0002\u0002\u0002\u1f49\u1f4b\t]\u0002",
- "\u0002\u1f4a\u1f49\u0003\u0002\u0002\u0002\u1f4a\u1f4b\u0003\u0002\u0002",
- "\u0002\u1f4b\u1f4f\u0003\u0002\u0002\u0002\u1f4c\u1f4f\u0007Y\u0002",
- "\u0002\u1f4d\u1f4f\u0007\u00df\u0002\u0002\u1f4e\u1f47\u0003\u0002\u0002",
- "\u0002\u1f4e\u1f4c\u0003\u0002\u0002\u0002\u1f4e\u1f4d\u0003\u0002\u0002",
- "\u0002\u1f4f\u027d\u0003\u0002\u0002\u0002\u1f50\u1f51\t\u0003\u0002",
- "\u0002\u1f51\u027f\u0003\u0002\u0002\u0002\u1f52\u1f54\u0005\u02ae\u0158",
- "\u0002\u1f53\u1f55\u0007\u033f\u0002\u0002\u1f54\u1f53\u0003\u0002\u0002",
- "\u0002\u1f54\u1f55\u0003\u0002\u0002\u0002\u1f55\u1f8e\u0003\u0002\u0002",
- "\u0002\u1f56\u1f62\u0007\u0091\u0002\u0002\u1f57\u1f59\u0007\u0006\u0002",
- "\u0002\u1f58\u1f5a\u0007\u028e\u0002\u0002\u1f59\u1f58\u0003\u0002\u0002",
- "\u0002\u1f59\u1f5a\u0003\u0002\u0002\u0002\u1f5a\u1f63\u0003\u0002\u0002",
- "\u0002\u1f5b\u1f60\u0005\u029a\u014e\u0002\u1f5c\u1f5d\u0007\u033c\u0002",
- "\u0002\u1f5d\u1f5e\u0005\u039e\u01d0\u0002\u1f5e\u1f5f\u0007\u033d\u0002",
- "\u0002\u1f5f\u1f61\u0003\u0002\u0002\u0002\u1f60\u1f5c\u0003\u0002\u0002",
- "\u0002\u1f60\u1f61\u0003\u0002\u0002\u0002\u1f61\u1f63\u0003\u0002\u0002",
- "\u0002\u1f62\u1f57\u0003\u0002\u0002\u0002\u1f62\u1f5b\u0003\u0002\u0002",
- "\u0002\u1f63\u1f66\u0003\u0002\u0002\u0002\u1f64\u1f65\u0007\u00e5\u0002",
- "\u0002\u1f65\u1f67\u0005\u038e\u01c8\u0002\u1f66\u1f64\u0003\u0002\u0002",
- "\u0002\u1f66\u1f67\u0003\u0002\u0002\u0002\u1f67\u1f68\u0003\u0002\u0002",
- "\u0002\u1f68\u1f69\u0007\u015a\u0002\u0002\u1f69\u1f6e\u0005\u03c6\u01e4",
- "\u0002\u1f6a\u1f6b\u0007\u033e\u0002\u0002\u1f6b\u1f6d\u0005\u03c6\u01e4",
- "\u0002\u1f6c\u1f6a\u0003\u0002\u0002\u0002\u1f6d\u1f70\u0003\u0002\u0002",
- "\u0002\u1f6e\u1f6c\u0003\u0002\u0002\u0002\u1f6e\u1f6f\u0003\u0002\u0002",
- "\u0002\u1f6f\u1f74\u0003\u0002\u0002\u0002\u1f70\u1f6e\u0003\u0002\u0002",
- "\u0002\u1f71\u1f72\u0007\u0179\u0002\u0002\u1f72\u1f73\u0007\u0091\u0002",
- "\u0002\u1f73\u1f75\u0007\u00ec\u0002\u0002\u1f74\u1f71\u0003\u0002\u0002",
- "\u0002\u1f74\u1f75\u0003\u0002\u0002\u0002\u1f75\u1f78\u0003\u0002\u0002",
- "\u0002\u1f76\u1f77\u0007\u0010\u0002\u0002\u1f77\u1f79\u0005\u03c6\u01e4",
- "\u0002\u1f78\u1f76\u0003\u0002\u0002\u0002\u1f78\u1f79\u0003\u0002\u0002",
- "\u0002\u1f79\u1f7b\u0003\u0002\u0002\u0002\u1f7a\u1f7c\u0007\u033f\u0002",
- "\u0002\u1f7b\u1f7a\u0003\u0002\u0002\u0002\u1f7b\u1f7c\u0003\u0002\u0002",
- "\u0002\u1f7c\u1f8e\u0003\u0002\u0002\u0002\u1f7d\u1f84\u0007\u011c\u0002",
- "\u0002\u1f7e\u1f7f\u0007\u033c\u0002\u0002\u1f7f\u1f80\u0007\u0179\u0002",
- "\u0002\u1f80\u1f81\u0007\u01bd\u0002\u0002\u1f81\u1f82\u0007\u032a\u0002",
- "\u0002\u1f82\u1f83\u0007\u0321\u0002\u0002\u1f83\u1f85\u0007\u033d\u0002",
- "\u0002\u1f84\u1f7e\u0003\u0002\u0002\u0002\u1f84\u1f85\u0003\u0002\u0002",
- "\u0002\u1f85\u1f87\u0003\u0002\u0002\u0002\u1f86\u1f88\u0007\u033f\u0002",
- "\u0002\u1f87\u1f86\u0003\u0002\u0002\u0002\u1f87\u1f88\u0003\u0002\u0002",
- "\u0002\u1f88\u1f8e\u0003\u0002\u0002\u0002\u1f89\u1f8e\u0005\u028c\u0147",
- "\u0002\u1f8a\u1f8e\u0005\u028e\u0148\u0002\u1f8b\u1f8e\u0005\u0290\u0149",
- "\u0002\u1f8c\u1f8e\u0005\u0282\u0142\u0002\u1f8d\u1f52\u0003\u0002\u0002",
- "\u0002\u1f8d\u1f56\u0003\u0002\u0002\u0002\u1f8d\u1f7d\u0003\u0002\u0002",
- "\u0002\u1f8d\u1f89\u0003\u0002\u0002\u0002\u1f8d\u1f8a\u0003\u0002\u0002",
- "\u0002\u1f8d\u1f8b\u0003\u0002\u0002\u0002\u1f8d\u1f8c\u0003\u0002\u0002",
- "\u0002\u1f8e\u0281\u0003\u0002\u0002\u0002\u1f8f\u1f90\u0007I\u0002",
- "\u0002\u1f90\u1f91\u0007+\u0002\u0002\u1f91\u1f94\u0005\u03c6\u01e4",
- "\u0002\u1f92\u1f93\u0007\u0014\u0002\u0002\u1f93\u1f95\u0005\u03c6\u01e4",
- "\u0002\u1f94\u1f92\u0003\u0002\u0002\u0002\u1f94\u1f95\u0003\u0002\u0002",
- "\u0002\u1f95\u1f99\u0003\u0002\u0002\u0002\u1f96\u1f97\u0007\u008b\u0002",
- "\u0002\u1f97\u1f9a\u0005\u0284\u0143\u0002\u1f98\u1f9a\u0005\u0288\u0145",
- "\u0002\u1f99\u1f96\u0003\u0002\u0002\u0002\u1f99\u1f98\u0003\u0002\u0002",
- "\u0002\u1f9a\u1fa1\u0003\u0002\u0002\u0002\u1f9b\u1f9c\u0007\u0182\u0002",
- "\u0002\u1f9c\u1f9d\u0007\u0085\u0002\u0002\u1f9d\u1f9e\u0007\u001c\u0002",
- "\u0002\u1f9e\u1f9f\u0007\u01de\u0002\u0002\u1f9f\u1fa0\u0007\u032a\u0002",
- "\u0002\u1fa0\u1fa2\t\t\u0002\u0002\u1fa1\u1f9b\u0003\u0002\u0002\u0002",
- "\u1fa1\u1fa2\u0003\u0002\u0002\u0002\u1fa2\u0283\u0003\u0002\u0002\u0002",
- "\u1fa3\u1fa4\u0007\u0195\u0002\u0002\u1fa4\u1fb5\u0005\u03c6\u01e4\u0002",
- "\u1fa5\u1fa7\u0007\u01f0\u0002\u0002\u1fa6\u1fa5\u0003\u0002\u0002\u0002",
- "\u1fa6\u1fa7\u0003\u0002\u0002\u0002\u1fa7\u1fa8\u0003\u0002\u0002\u0002",
- "\u1fa8\u1fa9\u0007\u0081\u0002\u0002\u1fa9\u1faa\u0007\u032a\u0002\u0002",
- "\u1faa\u1fb2\u0007\u0326\u0002\u0002\u1fab\u1fac\u0007\u0179\u0002\u0002",
- "\u1fac\u1fad\u0007\u028c\u0002\u0002\u1fad\u1fae\u0007\u00ac\u0002\u0002",
- "\u1fae\u1faf\u0007\u033c\u0002\u0002\u1faf\u1fb0\u0005\u0286\u0144\u0002",
- "\u1fb0\u1fb1\u0007\u033d\u0002\u0002\u1fb1\u1fb3\u0003\u0002\u0002\u0002",
- "\u1fb2\u1fab\u0003\u0002\u0002\u0002\u1fb2\u1fb3\u0003\u0002\u0002\u0002",
- "\u1fb3\u1fb5\u0003\u0002\u0002\u0002\u1fb4\u1fa3\u0003\u0002\u0002\u0002",
- "\u1fb4\u1fa6\u0003\u0002\u0002\u0002\u1fb5\u0285\u0003\u0002\u0002\u0002",
- "\u1fb6\u1fb7\t^\u0002\u0002\u1fb7\u1fb8\u0007\u032a\u0002\u0002\u1fb8",
- "\u1fbf\u0007\u0326\u0002\u0002\u1fb9\u1fba\u0007\u033e\u0002\u0002\u1fba",
- "\u1fbb\t_\u0002\u0002\u1fbb\u1fbc\u0007&\u0002\u0002\u1fbc\u1fbd\u0007",
- "\u00f4\u0002\u0002\u1fbd\u1fbe\u0007\u032a\u0002\u0002\u1fbe\u1fc0\u0007",
- "\u0326\u0002\u0002\u1fbf\u1fb9\u0003\u0002\u0002\u0002\u1fbf\u1fc0\u0003",
- "\u0002\u0002\u0002\u1fc0\u0287\u0003\u0002\u0002\u0002\u1fc1\u1fc2\u0007",
- "\u01ec\u0002\u0002\u1fc2\u1fc3\u0007&\u0002\u0002\u1fc3\u1fc4\u0007",
- "\u00f4\u0002\u0002\u1fc4\u1fc5\u0007\u032a\u0002\u0002\u1fc5\u1fc7\u0007",
- "\u0326\u0002\u0002\u1fc6\u1fc1\u0003\u0002\u0002\u0002\u1fc6\u1fc7\u0003",
- "\u0002\u0002\u0002\u1fc7\u1fc8\u0003\u0002\u0002\u0002\u1fc8\u1fc9\u0007",
- "\u0179\u0002\u0002\u1fc9\u1fca\u0007\u02e7\u0002\u0002\u1fca\u1fcb\u0007",
- "\u032a\u0002\u0002\u1fcb\u1fd0\u0007\u0326\u0002\u0002\u1fcc\u1fcd\u0007",
- "\u033e\u0002\u0002\u1fcd\u1fcf\u0005\u028a\u0146\u0002\u1fce\u1fcc\u0003",
- "\u0002\u0002\u0002\u1fcf\u1fd2\u0003\u0002\u0002\u0002\u1fd0\u1fce\u0003",
- "\u0002\u0002\u0002\u1fd0\u1fd1\u0003\u0002\u0002\u0002\u1fd1\u0289\u0003",
- "\u0002\u0002\u0002\u1fd2\u1fd0\u0003\u0002\u0002\u0002\u1fd3\u1fd4\t",
- "`\u0002\u0002\u1fd4\u1fd5\u0007\u032a\u0002\u0002\u1fd5\u1fd6\u0007",
- "\u0326\u0002\u0002\u1fd6\u028b\u0003\u0002\u0002\u0002\u1fd7\u1fd8\u0007",
- "\u00e7\u0002\u0002\u1fd8\u1fd9\u0007\u02eb\u0002\u0002\u1fd9\u1fda\u0007",
- "\u00ac\u0002\u0002\u1fda\u1fdb\u0005\u03c6\u01e4\u0002\u1fdb\u1fdc\u0007",
- "\u01d1\u0002\u0002\u1fdc\u1fdd\u0007&\u0002\u0002\u1fdd\u1fde\u0005",
- "\u0298\u014d\u0002\u1fde\u1fe8\u0003\u0002\u0002\u0002\u1fdf\u1fe0\u0007",
- "\u00e7\u0002\u0002\u1fe0\u1fe1\u0007\u00bd\u0002\u0002\u1fe1\u1fe2\u0007",
- "\u00ac\u0002\u0002\u1fe2\u1fe3\u0007\u01d1\u0002\u0002\u1fe3\u1fe4\u0007",
- "&\u0002\u0002\u1fe4\u1fe5\u0007\u00f4\u0002\u0002\u1fe5\u1fe6\u0007",
- "\u032a\u0002\u0002\u1fe6\u1fe8\u0007\u0326\u0002\u0002\u1fe7\u1fd7\u0003",
- "\u0002\u0002\u0002\u1fe7\u1fdf\u0003\u0002\u0002\u0002\u1fe8\u028d\u0003",
- "\u0002\u0002\u0002\u1fe9\u1fea\u00073\u0002\u0002\u1fea\u1feb\u0007",
- "\u02eb\u0002\u0002\u1feb\u1fec\u0007\u00ac\u0002\u0002\u1fec\u1ff5\u0005",
- "\u03c6\u01e4\u0002\u1fed\u1fee\u00073\u0002\u0002\u1fee\u1fef\u0007",
- "\u0006\u0002\u0002\u1fef\u1ff0\u0007\u02eb\u0002\u0002\u1ff0\u1ff5\u0007",
- "\u022c\u0002\u0002\u1ff1\u1ff2\u00073\u0002\u0002\u1ff2\u1ff3\u0007",
- "\u00bd\u0002\u0002\u1ff3\u1ff5\u0007\u00ac\u0002\u0002\u1ff4\u1fe9\u0003",
- "\u0002\u0002\u0002\u1ff4\u1fed\u0003\u0002\u0002\u0002\u1ff4\u1ff1\u0003",
- "\u0002\u0002\u0002\u1ff5\u028f\u0003\u0002\u0002\u0002\u1ff6\u1ff7\u0007",
- "I\u0002\u0002\u1ff7\u1ff8\u0007\u00bd\u0002\u0002\u1ff8\u1ff9\u0007",
- "\u00ac\u0002\u0002\u1ff9\u1ffa\u0007\u01ec\u0002\u0002\u1ffa\u1ffb\u0007",
- "&\u0002\u0002\u1ffb\u1ffc\u0007\u00f4\u0002\u0002\u1ffc\u1ffd\u0007",
- "\u032a\u0002\u0002\u1ffd\u201a\u0007\u0326\u0002\u0002\u1ffe\u1fff\u0007",
- "I\u0002\u0002\u1fff\u2000\u0007\u02eb\u0002\u0002\u2000\u2001\u0007",
- "\u00ac\u0002\u0002\u2001\u2004\u0005\u03c6\u01e4\u0002\u2002\u2003\u0007",
- "\u0014\u0002\u0002\u2003\u2005\u0005\u03c6\u01e4\u0002\u2004\u2002\u0003",
- "\u0002\u0002\u0002\u2004\u2005\u0003\u0002\u0002\u0002\u2005\u2009\u0003",
- "\u0002\u0002\u0002\u2006\u2007\u0007\u008b\u0002\u0002\u2007\u2008\u0007",
- "\u0291\u0002\u0002\u2008\u200a\u0005\u03c6\u01e4\u0002\u2009\u2006\u0003",
- "\u0002\u0002\u0002\u2009\u200a\u0003\u0002\u0002\u0002\u200a\u200b\u0003",
- "\u0002\u0002\u0002\u200b\u2015\u0007\u0179\u0002\u0002\u200c\u2011\u0005",
- "\u0292\u014a\u0002\u200d\u200e\u0007\u01ec\u0002\u0002\u200e\u200f\u0007",
- "&\u0002\u0002\u200f\u2011\u0005\u0296\u014c\u0002\u2010\u200c\u0003",
- "\u0002\u0002\u0002\u2010\u200d\u0003\u0002\u0002\u0002\u2011\u2013\u0003",
- "\u0002\u0002\u0002\u2012\u2014\u0007\u033e\u0002\u0002\u2013\u2012\u0003",
- "\u0002\u0002\u0002\u2013\u2014\u0003\u0002\u0002\u0002\u2014\u2016\u0003",
- "\u0002\u0002\u0002\u2015\u2010\u0003\u0002\u0002\u0002\u2016\u2017\u0003",
- "\u0002\u0002\u0002\u2017\u2015\u0003\u0002\u0002\u0002\u2017\u2018\u0003",
- "\u0002\u0002\u0002\u2018\u201a\u0003\u0002\u0002\u0002\u2019\u1ff6\u0003",
- "\u0002\u0002\u0002\u2019\u1ffe\u0003\u0002\u0002\u0002\u201a\u0291\u0003",
- "\u0002\u0002\u0002\u201b\u201c\u0007\u022b\u0002\u0002\u201c\u201d\u0007",
- "\u032a\u0002\u0002\u201d\u202b\u0007\u0326\u0002\u0002\u201e\u201f\u0007",
- "\u018a\u0002\u0002\u201f\u2020\u0007\u032a\u0002\u0002\u2020\u202b\u0005",
- "\u0294\u014b\u0002\u2021\u2022\u0007\u0218\u0002\u0002\u2022\u2023\u0007",
- "\u032a\u0002\u0002\u2023\u202b\u0007\u0326\u0002\u0002\u2024\u2025\u0007",
- "\u0292\u0002\u0002\u2025\u2026\u0007\u032a\u0002\u0002\u2026\u202b\u0007",
- "\u0326\u0002\u0002\u2027\u2028\u0007\u01c3\u0002\u0002\u2028\u2029\u0007",
- "\u032a\u0002\u0002\u2029\u202b\t\f\u0002\u0002\u202a\u201b\u0003\u0002",
- "\u0002\u0002\u202a\u201e\u0003\u0002\u0002\u0002\u202a\u2021\u0003\u0002",
- "\u0002\u0002\u202a\u2024\u0003\u0002\u0002\u0002\u202a\u2027\u0003\u0002",
- "\u0002\u0002\u202b\u0293\u0003\u0002\u0002\u0002\u202c\u202d\t3\u0002",
- "\u0002\u202d\u0295\u0003\u0002\u0002\u0002\u202e\u202f\u0007+\u0002",
- "\u0002\u202f\u203a\u0005\u03c6\u01e4\u0002\u2030\u2031\u0007\u0012\u0002",
- "\u0002\u2031\u2032\u0007\u00ac\u0002\u0002\u2032\u203a\u0005\u03c6\u01e4",
- "\u0002\u2033\u2034\u0007\u02eb\u0002\u0002\u2034\u2035\u0007\u00ac\u0002",
- "\u0002\u2035\u203a\u0005\u03c6\u01e4\u0002\u2036\u2037\u0007\u00f4\u0002",
- "\u0002\u2037\u2038\u0007\u032a\u0002\u0002\u2038\u203a\u0007\u0326\u0002",
- "\u0002\u2039\u202e\u0003\u0002\u0002\u0002\u2039\u2030\u0003\u0002\u0002",
- "\u0002\u2039\u2033\u0003\u0002\u0002\u0002\u2039\u2036\u0003\u0002\u0002",
- "\u0002\u203a\u0297\u0003\u0002\u0002\u0002\u203b\u203c\u0007+\u0002",
- "\u0002\u203c\u2041\u0005\u03c6\u01e4\u0002\u203d\u203e\u0007\u0179\u0002",
- "\u0002\u203e\u203f\u0007\u00f4\u0002\u0002\u203f\u2040\u0007\u032a\u0002",
- "\u0002\u2040\u2042\u0007\u0326\u0002\u0002\u2041\u203d\u0003\u0002\u0002",
- "\u0002\u2041\u2042\u0003\u0002\u0002\u0002\u2042\u2053\u0003\u0002\u0002",
- "\u0002\u2043\u2044\u0007\u0012\u0002\u0002\u2044\u2045\u0007\u00ac\u0002",
- "\u0002\u2045\u204a\u0005\u03c6\u01e4\u0002\u2046\u2047\u0007\u0179\u0002",
- "\u0002\u2047\u2048\u0007\u00f4\u0002\u0002\u2048\u2049\u0007\u032a\u0002",
- "\u0002\u2049\u204b\u0007\u0326\u0002\u0002\u204a\u2046\u0003\u0002\u0002",
- "\u0002\u204a\u204b\u0003\u0002\u0002\u0002\u204b\u2053\u0003\u0002\u0002",
- "\u0002\u204c\u204d\u0007\u02eb\u0002\u0002\u204d\u204e\u0007\u00ac\u0002",
- "\u0002\u204e\u2053\u0005\u03c6\u01e4\u0002\u204f\u2050\u0007\u00f4\u0002",
- "\u0002\u2050\u2051\u0007\u032a\u0002\u0002\u2051\u2053\u0007\u0326\u0002",
- "\u0002\u2052\u203b\u0003\u0002\u0002\u0002\u2052\u2043\u0003\u0002\u0002",
- "\u0002\u2052\u204c\u0003\u0002\u0002\u0002\u2052\u204f\u0003\u0002\u0002",
- "\u0002\u2053\u0299\u0003\u0002\u0002\u0002\u2054\u206f\u0007v\u0002",
- "\u0002\u2055\u2056\u0007\u0172\u0002\u0002\u2056\u206f\u0005\u03c6\u01e4",
- "\u0002\u2057\u2058\u0007\u02ef\u0002\u0002\u2058\u206f\u0005\u03c6\u01e4",
- "\u0002\u2059\u205b\u0007\u01bc\u0002\u0002\u205a\u205c\u0005\u03c6\u01e4",
- "\u0002\u205b\u205a\u0003\u0002\u0002\u0002\u205b\u205c\u0003\u0002\u0002",
- "\u0002\u205c\u206f\u0003\u0002\u0002\u0002\u205d\u205e\u0007I\u0002",
- "\u0002\u205e\u206f\ta\u0002\u0002\u205f\u206f\u0007\u02d4\u0002\u0002",
- "\u2060\u206f\u0007\u021b\u0002\u0002\u2061\u206f\u0007\u0131\u0002\u0002",
- "\u2062\u206f\u0007\u010e\u0002\u0002\u2063\u206f\u0007\u00a2\u0002\u0002",
- "\u2064\u206c\u0007\n\u0002\u0002\u2065\u2067\u0007\r\u0002\u0002\u2066",
- "\u2065\u0003\u0002\u0002\u0002\u2066\u2067\u0003\u0002\u0002\u0002\u2067",
- "\u206a\u0003\u0002\u0002\u0002\u2068\u206b\u0005\u03c6\u01e4\u0002\u2069",
- "\u206b\u0007T\u0002\u0002\u206a\u2068\u0003\u0002\u0002\u0002\u206a",
- "\u2069\u0003\u0002\u0002\u0002\u206b\u206d\u0003\u0002\u0002\u0002\u206c",
- "\u2066\u0003\u0002\u0002\u0002\u206c\u206d\u0003\u0002\u0002\u0002\u206d",
- "\u206f\u0003\u0002\u0002\u0002\u206e\u2054\u0003\u0002\u0002\u0002\u206e",
- "\u2055\u0003\u0002\u0002\u0002\u206e\u2057\u0003\u0002\u0002\u0002\u206e",
- "\u2059\u0003\u0002\u0002\u0002\u206e\u205d\u0003\u0002\u0002\u0002\u206e",
- "\u205f\u0003\u0002\u0002\u0002\u206e\u2060\u0003\u0002\u0002\u0002\u206e",
- "\u2061\u0003\u0002\u0002\u0002\u206e\u2062\u0003\u0002\u0002\u0002\u206e",
- "\u2063\u0003\u0002\u0002\u0002\u206e\u2064\u0003\u0002\u0002\u0002\u206f",
- "\u029b\u0003\u0002\u0002\u0002\u2070\u2071\u0007\u013b\u0002\u0002\u2071",
- "\u2074\u0007\u0321\u0002\u0002\u2072\u2073\u0007\u0337\u0002\u0002\u2073",
- "\u2075\u0005\u03c6\u01e4\u0002\u2074\u2072\u0003\u0002\u0002\u0002\u2074",
- "\u2075\u0003\u0002\u0002\u0002\u2075\u2076\u0003\u0002\u0002\u0002\u2076",
- "\u2077\u0007\u032a\u0002\u0002\u2077\u2079\u0005\u02d8\u016d\u0002\u2078",
- "\u207a\u0007\u033f\u0002\u0002\u2079\u2078\u0003\u0002\u0002\u0002\u2079",
- "\u207a\u0003\u0002\u0002\u0002\u207a\u2098\u0003\u0002\u0002\u0002\u207b",
- "\u207c\u0007\u013b\u0002\u0002\u207c\u207d\u0007\u0321\u0002\u0002\u207d",
- "\u207e\u0005\u03cc\u01e7\u0002\u207e\u2080\u0005\u02d8\u016d\u0002\u207f",
- "\u2081\u0007\u033f\u0002\u0002\u2080\u207f\u0003\u0002\u0002\u0002\u2080",
- "\u2081\u0003\u0002\u0002\u0002\u2081\u2098\u0003\u0002\u0002\u0002\u2082",
- "\u2083\u0007\u013b\u0002\u0002\u2083\u2084\u0007\u0321\u0002\u0002\u2084",
- "\u2085\u0007\u032a\u0002\u0002\u2085\u2086\u0007P\u0002\u0002\u2086",
- "\u2091\u0005\u02ce\u0168\u0002\u2087\u208f\u0007\u0085\u0002\u0002\u2088",
- "\u2089\u0007\u010a\u0002\u0002\u2089\u2090\u0007\u0276\u0002\u0002\u208a",
- "\u208d\u0007\u0169\u0002\u0002\u208b\u208c\u0007\u00e1\u0002\u0002\u208c",
- "\u208e\u0005\u039e\u01d0\u0002\u208d\u208b\u0003\u0002\u0002\u0002\u208d",
- "\u208e\u0003\u0002\u0002\u0002\u208e\u2090\u0003\u0002\u0002\u0002\u208f",
- "\u2088\u0003\u0002\u0002\u0002\u208f\u208a\u0003\u0002\u0002\u0002\u2090",
- "\u2092\u0003\u0002\u0002\u0002\u2091\u2087\u0003\u0002\u0002\u0002\u2091",
- "\u2092\u0003\u0002\u0002\u0002\u2092\u2094\u0003\u0002\u0002\u0002\u2093",
- "\u2095\u0007\u033f\u0002\u0002\u2094\u2093\u0003\u0002\u0002\u0002\u2094",
- "\u2095\u0003\u0002\u0002\u0002\u2095\u2098\u0003\u0002\u0002\u0002\u2096",
- "\u2098\u0005\u02d4\u016b\u0002\u2097\u2070\u0003\u0002\u0002\u0002\u2097",
- "\u207b\u0003\u0002\u0002\u0002\u2097\u2082\u0003\u0002\u0002\u0002\u2097",
- "\u2096\u0003\u0002\u0002\u0002\u2098\u029d\u0003\u0002\u0002\u0002\u2099",
- "\u209a\u0007\u001c\u0002\u0002\u209a\u209b\u0007c\u0002\u0002\u209b",
- "\u209e\tb\u0002\u0002\u209c\u209f\u0005\u03c6\u01e4\u0002\u209d\u209f",
- "\u0007\u0321\u0002\u0002\u209e\u209c\u0003\u0002\u0002\u0002\u209e\u209d",
- "\u0003\u0002\u0002\u0002\u209e\u209f\u0003\u0002\u0002\u0002\u209f\u20a1",
- "\u0003\u0002\u0002\u0002\u20a0\u20a2\u0007\u033f\u0002\u0002\u20a1\u20a0",
- "\u0003\u0002\u0002\u0002\u20a1\u20a2\u0003\u0002\u0002\u0002\u20a2\u20eb",
- "\u0003\u0002\u0002\u0002\u20a3\u20a4\u0007\u001c\u0002\u0002\u20a4\u20ae",
- "\tb\u0002\u0002\u20a5\u20a8\u0005\u03c6\u01e4\u0002\u20a6\u20a8\u0007",
- "\u0321\u0002\u0002\u20a7\u20a5\u0003\u0002\u0002\u0002\u20a7\u20a6\u0003",
- "\u0002\u0002\u0002\u20a8\u20ac\u0003\u0002\u0002\u0002\u20a9\u20aa\u0007",
- "\u0179\u0002\u0002\u20aa\u20ab\u0007\u023f\u0002\u0002\u20ab\u20ad\u0007",
- "\u0326\u0002\u0002\u20ac\u20a9\u0003\u0002\u0002\u0002\u20ac\u20ad\u0003",
- "\u0002\u0002\u0002\u20ad\u20af\u0003\u0002\u0002\u0002\u20ae\u20a7\u0003",
- "\u0002\u0002\u0002\u20ae\u20af\u0003\u0002\u0002\u0002\u20af\u20b1\u0003",
- "\u0002\u0002\u0002\u20b0\u20b2\u0007\u033f\u0002\u0002\u20b1\u20b0\u0003",
- "\u0002\u0002\u0002\u20b1\u20b2\u0003\u0002\u0002\u0002\u20b2\u20eb\u0003",
- "\u0002\u0002\u0002\u20b3\u20b4\u0007:\u0002\u0002\u20b4\u20c1\tb\u0002",
- "\u0002\u20b5\u20b8\u0005\u03c6\u01e4\u0002\u20b6\u20b8\u0007\u0321\u0002",
- "\u0002\u20b7\u20b5\u0003\u0002\u0002\u0002\u20b7\u20b6\u0003\u0002\u0002",
- "\u0002\u20b8\u20bf\u0003\u0002\u0002\u0002\u20b9\u20ba\u0007\u0179\u0002",
- "\u0002\u20ba\u20bb\u0007\u033c\u0002\u0002\u20bb\u20bc\u0007\u01d6\u0002",
- "\u0002\u20bc\u20bd\u0007\u032a\u0002\u0002\u20bd\u20be\t\t\u0002\u0002",
- "\u20be\u20c0\u0007\u033d\u0002\u0002\u20bf\u20b9\u0003\u0002\u0002\u0002",
- "\u20bf\u20c0\u0003\u0002\u0002\u0002\u20c0\u20c2\u0003\u0002\u0002\u0002",
- "\u20c1\u20b7\u0003\u0002\u0002\u0002\u20c1\u20c2\u0003\u0002\u0002\u0002",
- "\u20c2\u20c4\u0003\u0002\u0002\u0002\u20c3\u20c5\u0007\u033f\u0002\u0002",
- "\u20c4\u20c3\u0003\u0002\u0002\u0002\u20c4\u20c5\u0003\u0002\u0002\u0002",
- "\u20c5\u20eb\u0003\u0002\u0002\u0002\u20c6\u20c8\u0007:\u0002\u0002",
- "\u20c7\u20c9\u0007\u0313\u0002\u0002\u20c8\u20c7\u0003\u0002\u0002\u0002",
- "\u20c8\u20c9\u0003\u0002\u0002\u0002\u20c9\u20cb\u0003\u0002\u0002\u0002",
- "\u20ca\u20cc\u0007\u033f\u0002\u0002\u20cb\u20ca\u0003\u0002\u0002\u0002",
- "\u20cb\u20cc\u0003\u0002\u0002\u0002\u20cc\u20eb\u0003\u0002\u0002\u0002",
- "\u20cd\u20ce\u0007:\u0002\u0002\u20ce\u20eb\u0005\u03c6\u01e4\u0002",
- "\u20cf\u20d0\u0007\u0120\u0002\u0002\u20d0\u20eb\u0005\u03c6\u01e4\u0002",
- "\u20d1\u20d2\u0007\u0120\u0002\u0002\u20d2\u20d5\tb\u0002\u0002\u20d3",
- "\u20d6\u0005\u03c6\u01e4\u0002\u20d4\u20d6\u0007\u0321\u0002\u0002\u20d5",
- "\u20d3\u0003\u0002\u0002\u0002\u20d5\u20d4\u0003\u0002\u0002\u0002\u20d5",
- "\u20d6\u0003\u0002\u0002\u0002\u20d6\u20d8\u0003\u0002\u0002\u0002\u20d7",
- "\u20d9\u0007\u033f\u0002\u0002\u20d8\u20d7\u0003\u0002\u0002\u0002\u20d8",
- "\u20d9\u0003\u0002\u0002\u0002\u20d9\u20eb\u0003\u0002\u0002\u0002\u20da",
- "\u20dc\u0007\u0120\u0002\u0002\u20db\u20dd\u0007\u0313\u0002\u0002\u20dc",
- "\u20db\u0003\u0002\u0002\u0002\u20dc\u20dd\u0003\u0002\u0002\u0002\u20dd",
- "\u20df\u0003\u0002\u0002\u0002\u20de\u20e0\u0007\u033f\u0002\u0002\u20df",
- "\u20de\u0003\u0002\u0002\u0002\u20df\u20e0\u0003\u0002\u0002\u0002\u20e0",
- "\u20eb\u0003\u0002\u0002\u0002\u20e1\u20e2\u0007\u012c\u0002\u0002\u20e2",
- "\u20e5\tb\u0002\u0002\u20e3\u20e6\u0005\u03c6\u01e4\u0002\u20e4\u20e6",
- "\u0007\u0321\u0002\u0002\u20e5\u20e3\u0003\u0002\u0002\u0002\u20e5\u20e4",
- "\u0003\u0002\u0002\u0002\u20e5\u20e6\u0003\u0002\u0002\u0002\u20e6\u20e8",
- "\u0003\u0002\u0002\u0002\u20e7\u20e9\u0007\u033f\u0002\u0002\u20e8\u20e7",
- "\u0003\u0002\u0002\u0002\u20e8\u20e9\u0003\u0002\u0002\u0002\u20e9\u20eb",
- "\u0003\u0002\u0002\u0002\u20ea\u2099\u0003\u0002\u0002\u0002\u20ea\u20a3",
- "\u0003\u0002\u0002\u0002\u20ea\u20b3\u0003\u0002\u0002\u0002\u20ea\u20c6",
- "\u0003\u0002\u0002\u0002\u20ea\u20cd\u0003\u0002\u0002\u0002\u20ea\u20cf",
- "\u0003\u0002\u0002\u0002\u20ea\u20d1\u0003\u0002\u0002\u0002\u20ea\u20da",
- "\u0003\u0002\u0002\u0002\u20ea\u20e1\u0003\u0002\u0002\u0002\u20eb\u029f",
- "\u0003\u0002\u0002\u0002\u20ec\u20ee\u0007\u020e\u0002\u0002\u20ed\u20ef",
- "\u0007\u0322\u0002\u0002\u20ee\u20ed\u0003\u0002\u0002\u0002\u20ee\u20ef",
- "\u0003\u0002\u0002\u0002\u20ef\u02a1\u0003\u0002\u0002\u0002\u20f0\u20f1",
- "\u0007\u016c\u0002\u0002\u20f1\u20f3\u0005\u03c6\u01e4\u0002\u20f2\u20f4",
- "\u0007\u033f\u0002\u0002\u20f3\u20f2\u0003\u0002\u0002\u0002\u20f3\u20f4",
- "\u0003\u0002\u0002\u0002\u20f4\u02a3\u0003\u0002\u0002\u0002\u20f5\u20f7",
- "\u0007\u013c\u0002\u0002\u20f6\u20f8\u0007\u0326\u0002\u0002\u20f7\u20f6",
- "\u0003\u0002\u0002\u0002\u20f7\u20f8\u0003\u0002\u0002\u0002\u20f8\u02a5",
- "\u0003\u0002\u0002\u0002\u20f9\u20fc\u0007\u010d\u0002\u0002\u20fa\u20fb",
- "\u0007\u0179\u0002\u0002\u20fb\u20fd\u0007\u027c\u0002\u0002\u20fc\u20fa",
- "\u0003\u0002\u0002\u0002\u20fc\u20fd\u0003\u0002\u0002\u0002\u20fd\u02a7",
- "\u0003\u0002\u0002\u0002\u20fe\u2101\u0007\u013d\u0002\u0002\u20ff\u2100",
- "\u0007\u0179\u0002\u0002\u2100\u2102\u0007\u026c\u0002\u0002\u2101\u20ff",
- "\u0003\u0002\u0002\u0002\u2101\u2102\u0003\u0002\u0002\u0002\u2102\u02a9",
- "\u0003\u0002\u0002\u0002\u2103\u2104\u0007V\u0002\u0002\u2104\u2109",
- "\u0005\u03c8\u01e5\u0002\u2105\u2106\u0007\u033c\u0002\u0002\u2106\u2107",
- "\u0005\u0366\u01b4\u0002\u2107\u2108\u0007\u033d\u0002\u0002\u2108\u210a",
- "\u0003\u0002\u0002\u0002\u2109\u2105\u0003\u0002\u0002\u0002\u2109\u210a",
- "\u0003\u0002\u0002\u0002\u210a\u210d\u0003\u0002\u0002\u0002\u210b\u210c",
- "\u0007\u0179\u0002\u0002\u210c\u210e\u0005\u02ac\u0157\u0002\u210d\u210b",
- "\u0003\u0002\u0002\u0002\u210d\u210e\u0003\u0002\u0002\u0002\u210e\u2110",
- "\u0003\u0002\u0002\u0002\u210f\u2111\u0007\u033f\u0002\u0002\u2110\u210f",
- "\u0003\u0002\u0002\u0002\u2110\u2111\u0003\u0002\u0002\u0002\u2111\u02ab",
- "\u0003\u0002\u0002\u0002\u2112\u2115\u0005\u03c8\u01e5\u0002\u2113\u2114",
- "\u0007\u033e\u0002\u0002\u2114\u2116\u0005\u03c8\u01e5\u0002\u2115\u2113",
- "\u0003\u0002\u0002\u0002\u2115\u2116\u0003\u0002\u0002\u0002\u2116\u02ad",
- "\u0003\u0002\u0002\u0002\u2117\u2118\u0007v\u0002\u0002\u2118\u2119",
- "\u0007\u0010\u0002\u0002\u2119\u211a\tc\u0002\u0002\u211a\u02af\u0003",
- "\u0002\u0002\u0002\u211b\u211d\u0007\u0321\u0002\u0002\u211c\u211e\u0007",
- "\u0010\u0002\u0002\u211d\u211c\u0003\u0002\u0002\u0002\u211d\u211e\u0003",
- "\u0002\u0002\u0002\u211e\u211f\u0003\u0002\u0002\u0002\u211f\u2122\u0005",
- "\u03be\u01e0\u0002\u2120\u2121\u0007\u032a\u0002\u0002\u2121\u2123\u0005",
- "\u02d8\u016d\u0002\u2122\u2120\u0003\u0002\u0002\u0002\u2122\u2123\u0003",
- "\u0002\u0002\u0002\u2123\u02b1\u0003\u0002\u0002\u0002\u2124\u2125\u0007",
- "\u0153\u0002\u0002\u2125\u2126\u0007\u033c\u0002\u0002\u2126\u2127\u0005",
- "\u02b8\u015d\u0002\u2127\u2128\u0007\u033d\u0002\u0002\u2128\u02b3\u0003",
- "\u0002\u0002\u0002\u2129\u212a\u0007\u0315\u0002\u0002\u212a\u212c\u0007",
- "\u033c\u0002\u0002\u212b\u212d\td\u0002\u0002\u212c\u212b\u0003\u0002",
- "\u0002\u0002\u212c\u212d\u0003\u0002\u0002\u0002\u212d\u212e\u0003\u0002",
- "\u0002\u0002\u212e\u212f\u0005\u02b6\u015c\u0002\u212f\u2130\u0007\u033d",
- "\u0002\u0002\u2130\u02b5\u0003\u0002\u0002\u0002\u2131\u2132\u0007\u0323",
- "\u0002\u0002\u2132\u2133\u0007\u0337\u0002\u0002\u2133\u2134\u0007\u0323",
- "\u0002\u0002\u2134\u02b7\u0003\u0002\u0002\u0002\u2135\u213c\u0005\u02ba",
- "\u015e\u0002\u2136\u2138\u0007\u033e\u0002\u0002\u2137\u2136\u0003\u0002",
- "\u0002\u0002\u2137\u2138\u0003\u0002\u0002\u0002\u2138\u2139\u0003\u0002",
- "\u0002\u0002\u2139\u213b\u0005\u02ba\u015e\u0002\u213a\u2137\u0003\u0002",
- "\u0002\u0002\u213b\u213e\u0003\u0002\u0002\u0002\u213c\u213a\u0003\u0002",
- "\u0002\u0002\u213c\u213d\u0003\u0002\u0002\u0002\u213d\u02b9\u0003\u0002",
- "\u0002\u0002\u213e\u213c\u0003\u0002\u0002\u0002\u213f\u2143\u0005\u02bc",
- "\u015f\u0002\u2140\u2143\u0005\u02be\u0160\u0002\u2141\u2143\u0005\u02c2",
- "\u0162\u0002\u2142\u213f\u0003\u0002\u0002\u0002\u2142\u2140\u0003\u0002",
- "\u0002\u0002\u2142\u2141\u0003\u0002\u0002\u0002\u2143\u02bb\u0003\u0002",
- "\u0002\u0002\u2144\u2148\u0005\u03c6\u01e4\u0002\u2145\u2149\u0005\u03be",
- "\u01e0\u0002\u2146\u2147\u0007\u0010\u0002\u0002\u2147\u2149\u0005\u02d8",
- "\u016d\u0002\u2148\u2145\u0003\u0002\u0002\u0002\u2148\u2146\u0003\u0002",
- "\u0002\u0002\u2149\u214c\u0003\u0002\u0002\u0002\u214a\u214b\u00077",
- "\u0002\u0002\u214b\u214d\u0005\u03c6\u01e4\u0002\u214c\u214a\u0003\u0002",
- "\u0002\u0002\u214c\u214d\u0003\u0002\u0002\u0002\u214d\u214f\u0003\u0002",
- "\u0002\u0002\u214e\u2150\u0005\u03a6\u01d4\u0002\u214f\u214e\u0003\u0002",
- "\u0002\u0002\u214f\u2150\u0003\u0002\u0002\u0002\u2150\u2166\u0003\u0002",
- "\u0002\u0002\u2151\u2152\u0007=\u0002\u0002\u2152\u2154\u0005\u03c6",
- "\u01e4\u0002\u2153\u2151\u0003\u0002\u0002\u0002\u2153\u2154\u0003\u0002",
- "\u0002\u0002\u2154\u2155\u0003\u0002\u0002\u0002\u2155\u2157\u0005\u03a8",
- "\u01d5\u0002\u2156\u2158\u0005\u03a8\u01d5\u0002\u2157\u2156\u0003\u0002",
- "\u0002\u0002\u2157\u2158\u0003\u0002\u0002\u0002\u2158\u2167\u0003\u0002",
- "\u0002\u0002\u2159\u215f\u0007\u0096\u0002\u0002\u215a\u215b\u0007\u033c",
- "\u0002\u0002\u215b\u215c\u0007\u0322\u0002\u0002\u215c\u215d\u0007\u033e",
- "\u0002\u0002\u215d\u215e\u0007\u0322\u0002\u0002\u215e\u2160\u0007\u033d",
- "\u0002\u0002\u215f\u215a\u0003\u0002\u0002\u0002\u215f\u2160\u0003\u0002",
- "\u0002\u0002\u2160\u2164\u0003\u0002\u0002\u0002\u2161\u2162\u0007\u00dc",
- "\u0002\u0002\u2162\u2163\u0007\u0085\u0002\u0002\u2163\u2165\u0007\u0112",
- "\u0002\u0002\u2164\u2161\u0003\u0002\u0002\u0002\u2164\u2165\u0003\u0002",
- "\u0002\u0002\u2165\u2167\u0003\u0002\u0002\u0002\u2166\u2153\u0003\u0002",
- "\u0002\u0002\u2166\u2159\u0003\u0002\u0002\u0002\u2166\u2167\u0003\u0002",
- "\u0002\u0002\u2167\u2169\u0003\u0002\u0002\u0002\u2168\u216a\u0007\u0123",
- "\u0002\u0002\u2169\u2168\u0003\u0002\u0002\u0002\u2169\u216a\u0003\u0002",
- "\u0002\u0002\u216a\u216e\u0003\u0002\u0002\u0002\u216b\u216d\u0005\u02c0",
- "\u0161\u0002\u216c\u216b\u0003\u0002\u0002\u0002\u216d\u2170\u0003\u0002",
- "\u0002\u0002\u216e\u216c\u0003\u0002\u0002\u0002\u216e\u216f\u0003\u0002",
- "\u0002\u0002\u216f\u02bd\u0003\u0002\u0002\u0002\u2170\u216e\u0003\u0002",
- "\u0002\u0002\u2171\u2172\u0005\u03c6\u01e4\u0002\u2172\u2173\te\u0002",
- "\u0002\u2173\u2177\u0005\u02d8\u016d\u0002\u2174\u2178\u0007\u0240\u0002",
- "\u0002\u2175\u2176\u0007\u00dc\u0002\u0002\u2176\u2178\u0007\u0240\u0002",
- "\u0002\u2177\u2174\u0003\u0002\u0002\u0002\u2177\u2175\u0003\u0002\u0002",
- "\u0002\u2177\u2178\u0003\u0002\u0002\u0002\u2178\u02bf\u0003\u0002\u0002",
- "\u0002\u2179\u217a\u0007=\u0002\u0002\u217a\u217c\u0005\u03c6\u01e4",
- "\u0002\u217b\u2179\u0003\u0002\u0002\u0002\u217b\u217c\u0003\u0002\u0002",
- "\u0002\u217c\u21a2\u0003\u0002\u0002\u0002\u217d\u217e\u0007\u0100\u0002",
- "\u0002\u217e\u2181\u0007\u00ac\u0002\u0002\u217f\u2181\u0007\u0165\u0002",
- "\u0002\u2180\u217d\u0003\u0002\u0002\u0002\u2180\u217f\u0003\u0002\u0002",
- "\u0002\u2181\u2183\u0003\u0002\u0002\u0002\u2182\u2184\u0005\u03a4\u01d3",
- "\u0002\u2183\u2182\u0003\u0002\u0002\u0002\u2183\u2184\u0003\u0002\u0002",
- "\u0002\u2184\u2186\u0003\u0002\u0002\u0002\u2185\u2187\u0005\u02c8\u0165",
- "\u0002\u2186\u2185\u0003\u0002\u0002\u0002\u2186\u2187\u0003\u0002\u0002",
- "\u0002\u2187\u21a3\u0003\u0002\u0002\u0002\u2188\u218c\u0007.\u0002",
- "\u0002\u2189\u218a\u0007\u00dc\u0002\u0002\u218a\u218b\u0007\u0085\u0002",
- "\u0002\u218b\u218d\u0007\u0112\u0002\u0002\u218c\u2189\u0003\u0002\u0002",
- "\u0002\u218c\u218d\u0003\u0002\u0002\u0002\u218d\u218e\u0003\u0002\u0002",
- "\u0002\u218e\u218f\u0007\u033c\u0002\u0002\u218f\u2190\u0005\u02ee\u0178",
- "\u0002\u2190\u2191\u0007\u033d\u0002\u0002\u2191\u21a3\u0003\u0002\u0002",
- "\u0002\u2192\u2193\u0007\u0088\u0002\u0002\u2193\u2195\u0007\u00ac\u0002",
- "\u0002\u2194\u2192\u0003\u0002\u0002\u0002\u2194\u2195\u0003\u0002\u0002",
- "\u0002\u2195\u2196\u0003\u0002\u0002\u0002\u2196\u2197\u0007\u010e\u0002",
- "\u0002\u2197\u2198\u0005\u038e\u01c8\u0002\u2198\u2199\u0007\u033c\u0002",
- "\u0002\u2199\u219a\u0005\u039e\u01d0\u0002\u219a\u219c\u0007\u033d\u0002",
- "\u0002\u219b\u219d\u0005\u02c4\u0163\u0002\u219c\u219b\u0003\u0002\u0002",
- "\u0002\u219c\u219d\u0003\u0002\u0002\u0002\u219d\u219f\u0003\u0002\u0002",
- "\u0002\u219e\u21a0\u0005\u02c6\u0164\u0002\u219f\u219e\u0003\u0002\u0002",
- "\u0002\u219f\u21a0\u0003\u0002\u0002\u0002\u21a0\u21a3\u0003\u0002\u0002",
- "\u0002\u21a1\u21a3\u0005\u03a6\u01d4\u0002\u21a2\u2180\u0003\u0002\u0002",
- "\u0002\u21a2\u2188\u0003\u0002\u0002\u0002\u21a2\u2194\u0003\u0002\u0002",
- "\u0002\u21a2\u21a1\u0003\u0002\u0002\u0002\u21a3\u02c1\u0003\u0002\u0002",
- "\u0002\u21a4\u21a5\u0007=\u0002\u0002\u21a5\u21a7\u0005\u03c6\u01e4",
- "\u0002\u21a6\u21a4\u0003\u0002\u0002\u0002\u21a6\u21a7\u0003\u0002\u0002",
- "\u0002\u21a7\u21e8\u0003\u0002\u0002\u0002\u21a8\u21a9\u0007\u0100\u0002",
- "\u0002\u21a9\u21ac\u0007\u00ac\u0002\u0002\u21aa\u21ac\u0007\u0165\u0002",
- "\u0002\u21ab\u21a8\u0003\u0002\u0002\u0002\u21ab\u21aa\u0003\u0002\u0002",
- "\u0002\u21ac\u21ae\u0003\u0002\u0002\u0002\u21ad\u21af\u0005\u03a4\u01d3",
- "\u0002\u21ae\u21ad\u0003\u0002\u0002\u0002\u21ae\u21af\u0003\u0002\u0002",
- "\u0002\u21af\u21b0\u0003\u0002\u0002\u0002\u21b0\u21b1\u0007\u033c\u0002",
- "\u0002\u21b1\u21b2\u0005\u039c\u01cf\u0002\u21b2\u21b4\u0007\u033d\u0002",
- "\u0002\u21b3\u21b5\u0005\u02c8\u0165\u0002\u21b4\u21b3\u0003\u0002\u0002",
- "\u0002\u21b4\u21b5\u0003\u0002\u0002\u0002\u21b5\u21b8\u0003\u0002\u0002",
- "\u0002\u21b6\u21b7\u0007\u00e5\u0002\u0002\u21b7\u21b9\u0005\u03c6\u01e4",
- "\u0002\u21b8\u21b6\u0003\u0002\u0002\u0002\u21b8\u21b9\u0003\u0002\u0002",
- "\u0002\u21b9\u21e9\u0003\u0002\u0002\u0002\u21ba\u21be\u0007.\u0002",
- "\u0002\u21bb\u21bc\u0007\u00dc\u0002\u0002\u21bc\u21bd\u0007\u0085\u0002",
- "\u0002\u21bd\u21bf\u0007\u0112\u0002\u0002\u21be\u21bb\u0003\u0002\u0002",
- "\u0002\u21be\u21bf\u0003\u0002\u0002\u0002\u21bf\u21c0\u0003\u0002\u0002",
- "\u0002\u21c0\u21c1\u0007\u033c\u0002\u0002\u21c1\u21c2\u0005\u02ee\u0178",
- "\u0002\u21c2\u21c3\u0007\u033d\u0002\u0002\u21c3\u21e9\u0003\u0002\u0002",
- "\u0002\u21c4\u21c6\u0007Y\u0002\u0002\u21c5\u21c7\u0007\u033c\u0002",
- "\u0002\u21c6\u21c5\u0003\u0002\u0002\u0002\u21c6\u21c7\u0003\u0002\u0002",
- "\u0002\u21c7\u21cc\u0003\u0002\u0002\u0002\u21c8\u21cd\u0007\u0326\u0002",
- "\u0002\u21c9\u21cd\u0007\u0344\u0002\u0002\u21ca\u21cd\u0005\u0340\u01a1",
- "\u0002\u21cb\u21cd\u0007\u0322\u0002\u0002\u21cc\u21c8\u0003\u0002\u0002",
- "\u0002\u21cc\u21c9\u0003\u0002\u0002\u0002\u21cc\u21ca\u0003\u0002\u0002",
- "\u0002\u21cc\u21cb\u0003\u0002\u0002\u0002\u21cd\u21ce\u0003\u0002\u0002",
- "\u0002\u21ce\u21cc\u0003\u0002\u0002\u0002\u21ce\u21cf\u0003\u0002\u0002",
- "\u0002\u21cf\u21d1\u0003\u0002\u0002\u0002\u21d0\u21d2\u0007\u033d\u0002",
- "\u0002\u21d1\u21d0\u0003\u0002\u0002\u0002\u21d1\u21d2\u0003\u0002\u0002",
- "\u0002\u21d2\u21d3\u0003\u0002\u0002\u0002\u21d3\u21d4\u0007\u0085\u0002",
- "\u0002\u21d4\u21e9\u0005\u03c6\u01e4\u0002\u21d5\u21d6\u0007\u0088\u0002",
- "\u0002\u21d6\u21d7\u0007\u00ac\u0002\u0002\u21d7\u21d8\u0007\u033c\u0002",
- "\u0002\u21d8\u21d9\u0005\u039e\u01d0\u0002\u21d9\u21da\u0007\u033d\u0002",
- "\u0002\u21da\u21db\u0007\u010e\u0002\u0002\u21db\u21e0\u0005\u038e\u01c8",
- "\u0002\u21dc\u21dd\u0007\u033c\u0002\u0002\u21dd\u21de\u0005\u039e\u01d0",
- "\u0002\u21de\u21df\u0007\u033d\u0002\u0002\u21df\u21e1\u0003\u0002\u0002",
- "\u0002\u21e0\u21dc\u0003\u0002\u0002\u0002\u21e0\u21e1\u0003\u0002\u0002",
- "\u0002\u21e1\u21e3\u0003\u0002\u0002\u0002\u21e2\u21e4\u0005\u02c4\u0163",
- "\u0002\u21e3\u21e2\u0003\u0002\u0002\u0002\u21e3\u21e4\u0003\u0002\u0002",
- "\u0002\u21e4\u21e6\u0003\u0002\u0002\u0002\u21e5\u21e7\u0005\u02c6\u0164",
- "\u0002\u21e6\u21e5\u0003\u0002\u0002\u0002\u21e6\u21e7\u0003\u0002\u0002",
- "\u0002\u21e7\u21e9\u0003\u0002\u0002\u0002\u21e8\u21ab\u0003\u0002\u0002",
- "\u0002\u21e8\u21ba\u0003\u0002\u0002\u0002\u21e8\u21c4\u0003\u0002\u0002",
- "\u0002\u21e8\u21d5\u0003\u0002\u0002\u0002\u21e9\u02c3\u0003\u0002\u0002",
- "\u0002\u21ea\u21eb\u0007\u00e5\u0002\u0002\u21eb\u21f3\u0007\\\u0002",
- "\u0002\u21ec\u21ed\u0007\u0263\u0002\u0002\u21ed\u21f4\u0007\u0180\u0002",
- "\u0002\u21ee\u21f4\u0007)\u0002\u0002\u21ef\u21f0\u0007\u013b\u0002",
- "\u0002\u21f0\u21f4\u0007\u00df\u0002\u0002\u21f1\u21f2\u0007\u013b\u0002",
- "\u0002\u21f2\u21f4\u0007Y\u0002\u0002\u21f3\u21ec\u0003\u0002\u0002",
- "\u0002\u21f3\u21ee\u0003\u0002\u0002\u0002\u21f3\u21ef\u0003\u0002\u0002",
- "\u0002\u21f3\u21f1\u0003\u0002\u0002\u0002\u21f4\u02c5\u0003\u0002\u0002",
- "\u0002\u21f5\u21f6\u0007\u00e5\u0002\u0002\u21f6\u21fe\u0007\u0169\u0002",
- "\u0002\u21f7\u21f8\u0007\u0263\u0002\u0002\u21f8\u21ff\u0007\u0180\u0002",
- "\u0002\u21f9\u21ff\u0007)\u0002\u0002\u21fa\u21fb\u0007\u013b\u0002",
- "\u0002\u21fb\u21ff\u0007\u00df\u0002\u0002\u21fc\u21fd\u0007\u013b\u0002",
- "\u0002\u21fd\u21ff\u0007Y\u0002\u0002\u21fe\u21f7\u0003\u0002\u0002",
- "\u0002\u21fe\u21f9\u0003\u0002\u0002\u0002\u21fe\u21fa\u0003\u0002\u0002",
- "\u0002\u21fe\u21fc\u0003\u0002\u0002\u0002\u21ff\u02c7\u0003\u0002\u0002",
- "\u0002\u2200\u2201\u0007\u0179\u0002\u0002\u2201\u2202\u0007\u033c\u0002",
- "\u0002\u2202\u2207\u0005\u02ca\u0166\u0002\u2203\u2204\u0007\u033e\u0002",
- "\u0002\u2204\u2206\u0005\u02ca\u0166\u0002\u2205\u2203\u0003\u0002\u0002",
- "\u0002\u2206\u2209\u0003\u0002\u0002\u0002\u2207\u2205\u0003\u0002\u0002",
- "\u0002\u2207\u2208\u0003\u0002\u0002\u0002\u2208\u220a\u0003\u0002\u0002",
- "\u0002\u2209\u2207\u0003\u0002\u0002\u0002\u220a\u220b\u0007\u033d\u0002",
- "\u0002\u220b\u02c9\u0003\u0002\u0002\u0002\u220c\u220d\u0005\u03c8\u01e5",
- "\u0002\u220d\u2211\u0007\u032a\u0002\u0002\u220e\u2212\u0005\u03c8\u01e5",
- "\u0002\u220f\u2212\u0005\u03a2\u01d2\u0002\u2210\u2212\u0007\u0322\u0002",
- "\u0002\u2211\u220e\u0003\u0002\u0002\u0002\u2211\u220f\u0003\u0002\u0002",
- "\u0002\u2211\u2210\u0003\u0002\u0002\u0002\u2212\u02cb\u0003\u0002\u0002",
- "\u0002\u2213\u2214\u0007X\u0002\u0002\u2214\u2234\u0005\u03a0\u01d1",
- "\u0002\u2215\u221f\u0007P\u0002\u0002\u2216\u221d\u0005\u02ce\u0168",
- "\u0002\u2217\u2218\u0007\u0085\u0002\u0002\u2218\u221b\u0007\u0169\u0002",
- "\u0002\u2219\u221a\u0007\u00e1\u0002\u0002\u221a\u221c\u0005\u039e\u01d0",
- "\u0002\u221b\u2219\u0003\u0002\u0002\u0002\u221b\u221c\u0003\u0002\u0002",
- "\u0002\u221c\u221e\u0003\u0002\u0002\u0002\u221d\u2217\u0003\u0002\u0002",
- "\u0002\u221d\u221e\u0003\u0002\u0002\u0002\u221e\u2220\u0003\u0002\u0002",
- "\u0002\u221f\u2216\u0003\u0002\u0002\u0002\u221f\u2220\u0003\u0002\u0002",
- "\u0002\u2220\u2235\u0003\u0002\u0002\u0002\u2221\u2223\tf\u0002\u0002",
- "\u2222\u2221\u0003\u0002\u0002\u0002\u2222\u2223\u0003\u0002\u0002\u0002",
- "\u2223\u2225\u0003\u0002\u0002\u0002\u2224\u2226\u0007\u02c0\u0002\u0002",
- "\u2225\u2224\u0003\u0002\u0002\u0002\u2225\u2226\u0003\u0002\u0002\u0002",
- "\u2226\u2227\u0003\u0002\u0002\u0002\u2227\u2228\u0007P\u0002\u0002",
- "\u2228\u2229\u0007\u0085\u0002\u0002\u2229\u2232\u0005\u01be\u00e0\u0002",
- "\u222a\u2230\u0007\u0085\u0002\u0002\u222b\u222c\u0007\u010a\u0002\u0002",
- "\u222c\u2231\u0007\u0276\u0002\u0002\u222d\u2231\u0007\u0169\u0002\u0002",
- "\u222e\u222f\u0007\u00e1\u0002\u0002\u222f\u2231\u0005\u039e\u01d0\u0002",
- "\u2230\u222b\u0003\u0002\u0002\u0002\u2230\u222d\u0003\u0002\u0002\u0002",
- "\u2230\u222e\u0003\u0002\u0002\u0002\u2231\u2233\u0003\u0002\u0002\u0002",
- "\u2232\u222a\u0003\u0002\u0002\u0002\u2232\u2233\u0003\u0002\u0002\u0002",
- "\u2233\u2235\u0003\u0002\u0002\u0002\u2234\u2215\u0003\u0002\u0002\u0002",
- "\u2234\u2222\u0003\u0002\u0002\u0002\u2235\u2237\u0003\u0002\u0002\u0002",
- "\u2236\u2238\u0007\u033f\u0002\u0002\u2237\u2236\u0003\u0002\u0002\u0002",
- "\u2237\u2238\u0003\u0002\u0002\u0002\u2238\u02cd\u0003\u0002\u0002\u0002",
- "\u2239\u223b\u0005\u02d0\u0169\u0002\u223a\u2239\u0003\u0002\u0002\u0002",
- "\u223b\u223e\u0003\u0002\u0002\u0002\u223c\u223a\u0003\u0002\u0002\u0002",
- "\u223c\u223d\u0003\u0002\u0002\u0002\u223d\u223f\u0003\u0002\u0002\u0002",
- "\u223e\u223c\u0003\u0002\u0002\u0002\u223f\u2240\u0007\u0085\u0002\u0002",
- "\u2240\u2241\u0005\u01be\u00e0\u0002\u2241\u02cf\u0003\u0002\u0002\u0002",
- "\u2242\u2248\tA\u0002\u0002\u2243\u2248\tg\u0002\u0002\u2244\u2248\t",
- "h\u0002\u0002\u2245\u2248\ti\u0002\u0002\u2246\u2248\u0007\u0302\u0002",
- "\u0002\u2247\u2242\u0003\u0002\u0002\u0002\u2247\u2243\u0003\u0002\u0002",
- "\u0002\u2247\u2244\u0003\u0002\u0002\u0002\u2247\u2245\u0003\u0002\u0002",
- "\u0002\u2247\u2246\u0003\u0002\u0002\u0002\u2248\u02d1\u0003\u0002\u0002",
- "\u0002\u2249\u2253\u0007\u0080\u0002\u0002\u224a\u2251\u0007\u0262\u0002",
- "\u0002\u224b\u2251\u0007\u0289\u0002\u0002\u224c\u2251\u0007\u0200\u0002",
- "\u0002\u224d\u2251\u0007\u022f\u0002\u0002\u224e\u224f\tj\u0002\u0002",
- "\u224f\u2251\u0005\u02d8\u016d\u0002\u2250\u224a\u0003\u0002\u0002\u0002",
- "\u2250\u224b\u0003\u0002\u0002\u0002\u2250\u224c\u0003\u0002\u0002\u0002",
- "\u2250\u224d\u0003\u0002\u0002\u0002\u2250\u224e\u0003\u0002\u0002\u0002",
- "\u2250\u2251\u0003\u0002\u0002\u0002\u2251\u2252\u0003\u0002\u0002\u0002",
- "\u2252\u2254\u0007\u008b\u0002\u0002\u2253\u2250\u0003\u0002\u0002\u0002",
- "\u2253\u2254\u0003\u0002\u0002\u0002\u2254\u2256\u0003\u0002\u0002\u0002",
- "\u2255\u2257\u0007\u020d\u0002\u0002\u2256\u2255\u0003\u0002\u0002\u0002",
- "\u2256\u2257\u0003\u0002\u0002\u0002\u2257\u2258\u0003\u0002\u0002\u0002",
- "\u2258\u2262\u0005\u03a0\u01d1\u0002\u2259\u225a\u0007\u00a5\u0002\u0002",
- "\u225a\u225f\u0007\u0321\u0002\u0002\u225b\u225c\u0007\u033e\u0002\u0002",
- "\u225c\u225e\u0007\u0321\u0002\u0002\u225d\u225b\u0003\u0002\u0002\u0002",
- "\u225e\u2261\u0003\u0002\u0002\u0002\u225f\u225d\u0003\u0002\u0002\u0002",
- "\u225f\u2260\u0003\u0002\u0002\u0002\u2260\u2263\u0003\u0002\u0002\u0002",
- "\u2261\u225f\u0003\u0002\u0002\u0002\u2262\u2259\u0003\u0002\u0002\u0002",
- "\u2262\u2263\u0003\u0002\u0002\u0002\u2263\u2265\u0003\u0002\u0002\u0002",
- "\u2264\u2266\u0007\u033f\u0002\u0002\u2265\u2264\u0003\u0002\u0002\u0002",
- "\u2265\u2266\u0003\u0002\u0002\u0002\u2266\u02d3\u0003\u0002\u0002\u0002",
- "\u2267\u2268\u0007\u013b\u0002\u0002\u2268\u226c\u0005\u03c6\u01e4\u0002",
- "\u2269\u226d\u0005\u03c6\u01e4\u0002\u226a\u226d\u0005\u02d6\u016c\u0002",
- "\u226b\u226d\u0005\u03a2\u01d2\u0002\u226c\u2269\u0003\u0002\u0002\u0002",
- "\u226c\u226a\u0003\u0002\u0002\u0002\u226c\u226b\u0003\u0002\u0002\u0002",
- "\u226d\u226f\u0003\u0002\u0002\u0002\u226e\u2270\u0007\u033f\u0002\u0002",
- "\u226f\u226e\u0003\u0002\u0002\u0002\u226f\u2270\u0003\u0002\u0002\u0002",
- "\u2270\u2299\u0003\u0002\u0002\u0002\u2271\u2272\u0007\u013b\u0002\u0002",
- "\u2272\u2273\u0007\u015e\u0002\u0002\u2273\u2274\u0007\u0225\u0002\u0002",
- "\u2274\u227e\u0007\u0232\u0002\u0002\u2275\u2276\u0007\u010a\u0002\u0002",
- "\u2276\u227f\u0007\u0304\u0002\u0002\u2277\u2278\u0007\u010a\u0002\u0002",
- "\u2278\u227f\u0007\u01b7\u0002\u0002\u2279\u227a\u0007\u02ab\u0002\u0002",
- "\u227a\u227f\u0007\u010a\u0002\u0002\u227b\u227f\u0007\u02da\u0002\u0002",
- "\u227c\u227f\u0007\u02d0\u0002\u0002\u227d\u227f\u0007\u0322\u0002\u0002",
- "\u227e\u2275\u0003\u0002\u0002\u0002\u227e\u2277\u0003\u0002\u0002\u0002",
- "\u227e\u2279\u0003\u0002\u0002\u0002\u227e\u227b\u0003\u0002\u0002\u0002",
- "\u227e\u227c\u0003\u0002\u0002\u0002\u227e\u227d\u0003\u0002\u0002\u0002",
- "\u227f\u2281\u0003\u0002\u0002\u0002\u2280\u2282\u0007\u033f\u0002\u0002",
- "\u2281\u2280\u0003\u0002\u0002\u0002\u2281\u2282\u0003\u0002\u0002\u0002",
- "\u2282\u2299\u0003\u0002\u0002\u0002\u2283\u2284\u0007\u013b\u0002\u0002",
- "\u2284\u2285\u0007\u0098\u0002\u0002\u2285\u2286\u0005\u038e\u01c8\u0002",
- "\u2286\u2288\u0005\u03a2\u01d2\u0002\u2287\u2289\u0007\u033f\u0002\u0002",
- "\u2288\u2287\u0003\u0002\u0002\u0002\u2288\u2289\u0003\u0002\u0002\u0002",
- "\u2289\u2299\u0003\u0002\u0002\u0002\u228a\u228b\u0007\u013b\u0002\u0002",
- "\u228b\u228c\u0007\u018f\u0002\u0002\u228c\u2299\u0005\u03a2\u01d2\u0002",
- "\u228d\u228e\u0007\u013b\u0002\u0002\u228e\u228f\u0007\u0296\u0002\u0002",
- "\u228f\u2299\u0005\u03a2\u01d2\u0002\u2290\u2291\u0007\u013b\u0002\u0002",
- "\u2291\u2292\u0007\u0190\u0002\u0002\u2292\u2299\u0005\u03a2\u01d2\u0002",
- "\u2293\u2294\u0007\u013b\u0002\u0002\u2294\u2295\u0007\u0191\u0002\u0002",
- "\u2295\u2299\u0005\u03a2\u01d2\u0002\u2296\u2297\u0007\u013b\u0002\u0002",
- "\u2297\u2299\u0005\u034a\u01a6\u0002\u2298\u2267\u0003\u0002\u0002\u0002",
- "\u2298\u2271\u0003\u0002\u0002\u0002\u2298\u2283\u0003\u0002\u0002\u0002",
- "\u2298\u228a\u0003\u0002\u0002\u0002\u2298\u228d\u0003\u0002\u0002\u0002",
- "\u2298\u2290\u0003\u0002\u0002\u0002\u2298\u2293\u0003\u0002\u0002\u0002",
- "\u2298\u2296\u0003\u0002\u0002\u0002\u2299\u02d5\u0003\u0002\u0002\u0002",
- "\u229a\u229d\u0005\u03c2\u01e2\u0002\u229b\u229d\u0007\u0321\u0002\u0002",
- "\u229c\u229a\u0003\u0002\u0002\u0002\u229c\u229b\u0003\u0002\u0002\u0002",
- "\u229d\u02d7\u0003\u0002\u0002\u0002\u229e\u229f\b\u016d\u0001\u0002",
- "\u229f\u22a7\u0005\u02da\u016e\u0002\u22a0\u22a7\u0005\u0340\u01a1\u0002",
- "\u22a1\u22a7\u0005\u02dc\u016f\u0002\u22a2\u22a7\u0005\u039a\u01ce\u0002",
- "\u22a3\u22a7\u0005\u02e0\u0171\u0002\u22a4\u22a7\u0005\u02de\u0170\u0002",
- "\u22a5\u22a7\u0005\u0370\u01b9\u0002\u22a6\u229e\u0003\u0002\u0002\u0002",
- "\u22a6\u22a0\u0003\u0002\u0002\u0002\u22a6\u22a1\u0003\u0002\u0002\u0002",
- "\u22a6\u22a2\u0003\u0002\u0002\u0002\u22a6\u22a3\u0003\u0002\u0002\u0002",
- "\u22a6\u22a4\u0003\u0002\u0002\u0002\u22a6\u22a5\u0003\u0002\u0002\u0002",
- "\u22a7\u22bb\u0003\u0002\u0002\u0002\u22a8\u22a9\f\u0007\u0002\u0002",
- "\u22a9\u22aa\tk\u0002\u0002\u22aa\u22ba\u0005\u02d8\u016d\b\u22ab\u22ac",
- "\f\u0006\u0002\u0002\u22ac\u22ad\tl\u0002\u0002\u22ad\u22ba\u0005\u02d8",
- "\u016d\u0007\u22ae\u22af\f\u0005\u0002\u0002\u22af\u22b0\u0005\u03ca",
- "\u01e6\u0002\u22b0\u22b1\u0005\u02d8\u016d\u0006\u22b1\u22ba\u0003\u0002",
- "\u0002\u0002\u22b2\u22b3\f\u0004\u0002\u0002\u22b3\u22b4\u0005\u03cc",
- "\u01e7\u0002\u22b4\u22b5\u0005\u02d8\u016d\u0005\u22b5\u22ba\u0003\u0002",
- "\u0002\u0002\u22b6\u22b7\f\f\u0002\u0002\u22b7\u22b8\u00077\u0002\u0002",
- "\u22b8\u22ba\u0005\u03c6\u01e4\u0002\u22b9\u22a8\u0003\u0002\u0002\u0002",
- "\u22b9\u22ab\u0003\u0002\u0002\u0002\u22b9\u22ae\u0003\u0002\u0002\u0002",
- "\u22b9\u22b2\u0003\u0002\u0002\u0002\u22b9\u22b6\u0003\u0002\u0002\u0002",
- "\u22ba\u22bd\u0003\u0002\u0002\u0002\u22bb\u22b9\u0003\u0002\u0002\u0002",
- "\u22bb\u22bc\u0003\u0002\u0002\u0002\u22bc\u02d9\u0003\u0002\u0002\u0002",
- "\u22bd\u22bb\u0003\u0002\u0002\u0002\u22be\u22c3\u0007Y\u0002\u0002",
- "\u22bf\u22c3\u0007\u00df\u0002\u0002\u22c0\u22c3\u0007\u0321\u0002\u0002",
- "\u22c1\u22c3\u0005\u03c2\u01e2\u0002\u22c2\u22be\u0003\u0002\u0002\u0002",
- "\u22c2\u22bf\u0003\u0002\u0002\u0002\u22c2\u22c0\u0003\u0002\u0002\u0002",
- "\u22c2\u22c1\u0003\u0002\u0002\u0002\u22c3\u02db\u0003\u0002\u0002\u0002",
- "\u22c4\u22c5\u0007*\u0002\u0002\u22c5\u22c7\u0005\u02d8\u016d\u0002",
- "\u22c6\u22c8\u0005\u034e\u01a8\u0002\u22c7\u22c6\u0003\u0002\u0002\u0002",
- "\u22c8\u22c9\u0003\u0002\u0002\u0002\u22c9\u22c7\u0003\u0002\u0002\u0002",
- "\u22c9\u22ca\u0003\u0002\u0002\u0002\u22ca\u22cd\u0003\u0002\u0002\u0002",
- "\u22cb\u22cc\u0007j\u0002\u0002\u22cc\u22ce\u0005\u02d8\u016d\u0002",
- "\u22cd\u22cb\u0003\u0002\u0002\u0002\u22cd\u22ce\u0003\u0002\u0002\u0002",
- "\u22ce\u22cf\u0003\u0002\u0002\u0002\u22cf\u22d0\u0007l\u0002\u0002",
- "\u22d0\u22de\u0003\u0002\u0002\u0002\u22d1\u22d3\u0007*\u0002\u0002",
- "\u22d2\u22d4\u0005\u0350\u01a9\u0002\u22d3\u22d2\u0003\u0002\u0002\u0002",
- "\u22d4\u22d5\u0003\u0002\u0002\u0002\u22d5\u22d3\u0003\u0002\u0002\u0002",
- "\u22d5\u22d6\u0003\u0002\u0002\u0002\u22d6\u22d9\u0003\u0002\u0002\u0002",
- "\u22d7\u22d8\u0007j\u0002\u0002\u22d8\u22da\u0005\u02d8\u016d\u0002",
- "\u22d9\u22d7\u0003\u0002\u0002\u0002\u22d9\u22da\u0003\u0002\u0002\u0002",
- "\u22da\u22db\u0003\u0002\u0002\u0002\u22db\u22dc\u0007l\u0002\u0002",
- "\u22dc\u22de\u0003\u0002\u0002\u0002\u22dd\u22c4\u0003\u0002\u0002\u0002",
- "\u22dd\u22d1\u0003\u0002\u0002\u0002\u22de\u02dd\u0003\u0002\u0002\u0002",
- "\u22df\u22e0\u0007\u0346\u0002\u0002\u22e0\u22e4\u0005\u02d8\u016d\u0002",
- "\u22e1\u22e2\tm\u0002\u0002\u22e2\u22e4\u0005\u02d8\u016d\u0002\u22e3",
- "\u22df\u0003\u0002\u0002\u0002\u22e3\u22e1\u0003\u0002\u0002\u0002\u22e4",
- "\u02df\u0003\u0002\u0002\u0002\u22e5\u22e6\u0007\u033c\u0002\u0002\u22e6",
- "\u22e7\u0005\u02d8\u016d\u0002\u22e7\u22e8\u0007\u033d\u0002\u0002\u22e8",
- "\u22ee\u0003\u0002\u0002\u0002\u22e9\u22ea\u0007\u033c\u0002\u0002\u22ea",
- "\u22eb\u0005\u02e4\u0173\u0002\u22eb\u22ec\u0007\u033d\u0002\u0002\u22ec",
- "\u22ee\u0003\u0002\u0002\u0002\u22ed\u22e5\u0003\u0002\u0002\u0002\u22ed",
- "\u22e9\u0003\u0002\u0002\u0002\u22ee\u02e1\u0003\u0002\u0002\u0002\u22ef",
- "\u22f8\u0007\u00df\u0002\u0002\u22f0\u22f8\u0005\u03c2\u01e2\u0002\u22f1",
- "\u22f8\u0005\u0340\u01a1\u0002\u22f2\u22f8\u0007\u0321\u0002\u0002\u22f3",
- "\u22f4\u0007\u033c\u0002\u0002\u22f4\u22f5\u0005\u02e2\u0172\u0002\u22f5",
- "\u22f6\u0007\u033d\u0002\u0002\u22f6\u22f8\u0003\u0002\u0002\u0002\u22f7",
- "\u22ef\u0003\u0002\u0002\u0002\u22f7\u22f0\u0003\u0002\u0002\u0002\u22f7",
- "\u22f1\u0003\u0002\u0002\u0002\u22f7\u22f2\u0003\u0002\u0002\u0002\u22f7",
- "\u22f3\u0003\u0002\u0002\u0002\u22f8\u02e3\u0003\u0002\u0002\u0002\u22f9",
- "\u22fa\u0005\u01be\u00e0\u0002\u22fa\u02e5\u0003\u0002\u0002\u0002\u22fb",
- "\u22fe\u0007\u0179\u0002\u0002\u22fc\u22fd\u0007\u0317\u0002\u0002\u22fd",
- "\u22ff\u0007\u033e\u0002\u0002\u22fe\u22fc\u0003\u0002\u0002\u0002\u22fe",
- "\u22ff\u0003\u0002\u0002\u0002\u22ff\u2300\u0003\u0002\u0002\u0002\u2300",
- "\u2305\u0005\u02e8\u0175\u0002\u2301\u2302\u0007\u033e\u0002\u0002\u2302",
- "\u2304\u0005\u02e8\u0175\u0002\u2303\u2301\u0003\u0002\u0002\u0002\u2304",
- "\u2307\u0003\u0002\u0002\u0002\u2305\u2303\u0003\u0002\u0002\u0002\u2305",
- "\u2306\u0003\u0002\u0002\u0002\u2306\u2316\u0003\u0002\u0002\u0002\u2307",
- "\u2305\u0003\u0002\u0002\u0002\u2308\u2309\u0007\u0179\u0002\u0002\u2309",
- "\u230e\u0007 \u0002\u0002\u230a\u230b\u0007\u033c\u0002\u0002\u230b",
- "\u230c\u0005\u0336\u019c\u0002\u230c\u230d\u0007\u033d\u0002\u0002\u230d",
- "\u230f\u0003\u0002\u0002\u0002\u230e\u230a\u0003\u0002\u0002\u0002\u230e",
- "\u230f\u0003\u0002\u0002\u0002\u230f\u2310\u0003\u0002\u0002\u0002\u2310",
- "\u2311\u0007\u0010\u0002\u0002\u2311\u2312\u0007\u033c\u0002\u0002\u2312",
- "\u2313\u0005\u01be\u00e0\u0002\u2313\u2314\u0007\u033d\u0002\u0002\u2314",
- "\u2316\u0003\u0002\u0002\u0002\u2315\u22fb\u0003\u0002\u0002\u0002\u2315",
- "\u2308\u0003\u0002\u0002\u0002\u2316\u02e7\u0003\u0002\u0002\u0002\u2317",
- "\u231c\u0005\u03c6\u01e4\u0002\u2318\u2319\u0007\u033c\u0002\u0002\u2319",
- "\u231a\u0005\u039e\u01d0\u0002\u231a\u231b\u0007\u033d\u0002\u0002\u231b",
- "\u231d\u0003\u0002\u0002\u0002\u231c\u2318\u0003\u0002\u0002\u0002\u231c",
- "\u231d\u0003\u0002\u0002\u0002\u231d\u231e\u0003\u0002\u0002\u0002\u231e",
- "\u231f\u0007\u0010\u0002\u0002\u231f\u2320\u0007\u033c\u0002\u0002\u2320",
- "\u2321\u0005\u01be\u00e0\u0002\u2321\u2322\u0007\u033d\u0002\u0002\u2322",
- "\u02e9\u0003\u0002\u0002\u0002\u2323\u2326\u0005\u039a\u01ce\u0002\u2324",
- "\u2326\u0007\u0321\u0002\u0002\u2325\u2323\u0003\u0002\u0002\u0002\u2325",
- "\u2324\u0003\u0002\u0002\u0002\u2326\u2329\u0003\u0002\u0002\u0002\u2327",
- "\u232a\u0007\u032a\u0002\u0002\u2328\u232a\u0005\u03cc\u01e7\u0002\u2329",
- "\u2327\u0003\u0002\u0002\u0002\u2329\u2328\u0003\u0002\u0002\u0002\u232a",
- "\u232b\u0003\u0002\u0002\u0002\u232b\u2334\u0005\u02d8\u016d\u0002\u232c",
- "\u232d\u0005\u03c6\u01e4\u0002\u232d\u232e\u0007\u0337\u0002\u0002\u232e",
- "\u232f\u0005\u03c6\u01e4\u0002\u232f\u2330\u0007\u033c\u0002\u0002\u2330",
- "\u2331\u0005\u0366\u01b4\u0002\u2331\u2332\u0007\u033d\u0002\u0002\u2332",
- "\u2334\u0003\u0002\u0002\u0002\u2333\u2325\u0003\u0002\u0002\u0002\u2333",
- "\u232c\u0003\u0002\u0002\u0002\u2334\u02eb\u0003\u0002\u0002\u0002\u2335",
- "\u233a\u0005\u02ee\u0178\u0002\u2336\u2337\u0007\u033e\u0002\u0002\u2337",
- "\u2339\u0005\u02ee\u0178\u0002\u2338\u2336\u0003\u0002\u0002\u0002\u2339",
- "\u233c\u0003\u0002\u0002\u0002\u233a\u2338\u0003\u0002\u0002\u0002\u233a",
- "\u233b\u0003\u0002\u0002\u0002\u233b\u02ed\u0003\u0002\u0002\u0002\u233c",
- "\u233a\u0003\u0002\u0002\u0002\u233d\u2342\u0005\u02f0\u0179\u0002\u233e",
- "\u233f\u0007\u00ed\u0002\u0002\u233f\u2341\u0005\u02f0\u0179\u0002\u2340",
- "\u233e\u0003\u0002\u0002\u0002\u2341\u2344\u0003\u0002\u0002\u0002\u2342",
- "\u2340\u0003\u0002\u0002\u0002\u2342\u2343\u0003\u0002\u0002\u0002\u2343",
- "\u02ef\u0003\u0002\u0002\u0002\u2344\u2342\u0003\u0002\u0002\u0002\u2345",
- "\u234a\u0005\u02f2\u017a\u0002\u2346\u2347\u0007\u000b\u0002\u0002\u2347",
- "\u2349\u0005\u02f2\u017a\u0002\u2348\u2346\u0003\u0002\u0002\u0002\u2349",
- "\u234c\u0003\u0002\u0002\u0002\u234a\u2348\u0003\u0002\u0002\u0002\u234a",
- "\u234b\u0003\u0002\u0002\u0002\u234b\u02f1\u0003\u0002\u0002\u0002\u234c",
- "\u234a\u0003\u0002\u0002\u0002\u234d\u234f\u0007\u00dc\u0002\u0002\u234e",
- "\u234d\u0003\u0002\u0002\u0002\u234e\u234f\u0003\u0002\u0002\u0002\u234f",
- "\u2350\u0003\u0002\u0002\u0002\u2350\u2351\u0005\u02f4\u017b\u0002\u2351",
- "\u02f3\u0003\u0002\u0002\u0002\u2352\u2353\u0007w\u0002\u0002\u2353",
- "\u2354\u0007\u033c\u0002\u0002\u2354\u2355\u0005\u02e4\u0173\u0002\u2355",
- "\u2356\u0007\u033d\u0002\u0002\u2356\u238a\u0003\u0002\u0002\u0002\u2357",
- "\u2358\u0005\u02d8\u016d\u0002\u2358\u2359\u0005\u03ca\u01e6\u0002\u2359",
- "\u235a\u0005\u02d8\u016d\u0002\u235a\u238a\u0003\u0002\u0002\u0002\u235b",
- "\u235c\u0005\u02d8\u016d\u0002\u235c\u235d\u0005\u03ca\u01e6\u0002\u235d",
- "\u235e\tn\u0002\u0002\u235e\u235f\u0007\u033c\u0002\u0002\u235f\u2360",
- "\u0005\u02e4\u0173\u0002\u2360\u2361\u0007\u033d\u0002\u0002\u2361\u238a",
- "\u0003\u0002\u0002\u0002\u2362\u2364\u0005\u02d8\u016d\u0002\u2363\u2365",
- "\u0007\u00dc\u0002\u0002\u2364\u2363\u0003\u0002\u0002\u0002\u2364\u2365",
- "\u0003\u0002\u0002\u0002\u2365\u2366\u0003\u0002\u0002\u0002\u2366\u2367",
- "\u0007\u001d\u0002\u0002\u2367\u2368\u0005\u02d8\u016d\u0002\u2368\u2369",
- "\u0007\u000b\u0002\u0002\u2369\u236a\u0005\u02d8\u016d\u0002\u236a\u238a",
- "\u0003\u0002\u0002\u0002\u236b\u236d\u0005\u02d8\u016d\u0002\u236c\u236e",
- "\u0007\u00dc\u0002\u0002\u236d\u236c\u0003\u0002\u0002\u0002\u236d\u236e",
- "\u0003\u0002\u0002\u0002\u236e\u236f\u0003\u0002\u0002\u0002\u236f\u2370",
- "\u0007\u009b\u0002\u0002\u2370\u2373\u0007\u033c\u0002\u0002\u2371\u2374",
- "\u0005\u02e4\u0173\u0002\u2372\u2374\u0005\u0366\u01b4\u0002\u2373\u2371",
- "\u0003\u0002\u0002\u0002\u2373\u2372\u0003\u0002\u0002\u0002\u2374\u2375",
- "\u0003\u0002\u0002\u0002\u2375\u2376\u0007\u033d\u0002\u0002\u2376\u238a",
- "\u0003\u0002\u0002\u0002\u2377\u2379\u0005\u02d8\u016d\u0002\u2378\u237a",
- "\u0007\u00dc\u0002\u0002\u2379\u2378\u0003\u0002\u0002\u0002\u2379\u237a",
- "\u0003\u0002\u0002\u0002\u237a\u237b\u0003\u0002\u0002\u0002\u237b\u237c",
- "\u0007\u00b4\u0002\u0002\u237c\u237f\u0005\u02d8\u016d\u0002\u237d\u237e",
- "\u0007o\u0002\u0002\u237e\u2380\u0005\u02d8\u016d\u0002\u237f\u237d",
- "\u0003\u0002\u0002\u0002\u237f\u2380\u0003\u0002\u0002\u0002\u2380\u238a",
- "\u0003\u0002\u0002\u0002\u2381\u2382\u0005\u02d8\u016d\u0002\u2382\u2383",
- "\u0007\u00a8\u0002\u0002\u2383\u2384\u0005\u03a6\u01d4\u0002\u2384\u238a",
- "\u0003\u0002\u0002\u0002\u2385\u2386\u0007\u033c\u0002\u0002\u2386\u2387",
- "\u0005\u02ee\u0178\u0002\u2387\u2388\u0007\u033d\u0002\u0002\u2388\u238a",
- "\u0003\u0002\u0002\u0002\u2389\u2352\u0003\u0002\u0002\u0002\u2389\u2357",
- "\u0003\u0002\u0002\u0002\u2389\u235b\u0003\u0002\u0002\u0002\u2389\u2362",
- "\u0003\u0002\u0002\u0002\u2389\u236b\u0003\u0002\u0002\u0002\u2389\u2377",
- "\u0003\u0002\u0002\u0002\u2389\u2381\u0003\u0002\u0002\u0002\u2389\u2385",
- "\u0003\u0002\u0002\u0002\u238a\u02f5\u0003\u0002\u0002\u0002\u238b\u2391",
- "\u0005\u02fa\u017e\u0002\u238c\u238d\u0007\u033c\u0002\u0002\u238d\u238e",
- "\u0005\u02f6\u017c\u0002\u238e\u238f\u0007\u033d\u0002\u0002\u238f\u2391",
- "\u0003\u0002\u0002\u0002\u2390\u238b\u0003\u0002\u0002\u0002\u2390\u238c",
- "\u0003\u0002\u0002\u0002\u2391\u2395\u0003\u0002\u0002\u0002\u2392\u2394",
- "\u0005\u02f8\u017d\u0002\u2393\u2392\u0003\u0002\u0002\u0002\u2394\u2397",
- "\u0003\u0002\u0002\u0002\u2395\u2393\u0003\u0002\u0002\u0002\u2395\u2396",
- "\u0003\u0002\u0002\u0002\u2396\u02f7\u0003\u0002\u0002\u0002\u2397\u2395",
- "\u0003\u0002\u0002\u0002\u2398\u239a\u0007\u0164\u0002\u0002\u2399\u239b",
- "\u0007\u0006\u0002\u0002\u239a\u2399\u0003\u0002\u0002\u0002\u239a\u239b",
- "\u0003\u0002\u0002\u0002\u239b\u239f\u0003\u0002\u0002\u0002\u239c\u239f",
- "\u0007t\u0002\u0002\u239d\u239f\u0007\u00a4\u0002\u0002\u239e\u2398",
- "\u0003\u0002\u0002\u0002\u239e\u239c\u0003\u0002\u0002\u0002\u239e\u239d",
- "\u0003\u0002\u0002\u0002\u239f\u23a5\u0003\u0002\u0002\u0002\u23a0\u23a6",
- "\u0005\u02fa\u017e\u0002\u23a1\u23a2\u0007\u033c\u0002\u0002\u23a2\u23a3",
- "\u0005\u02f6\u017c\u0002\u23a3\u23a4\u0007\u033d\u0002\u0002\u23a4\u23a6",
- "\u0003\u0002\u0002\u0002\u23a5\u23a0\u0003\u0002\u0002\u0002\u23a5\u23a1",
- "\u0003\u0002\u0002\u0002\u23a6\u02f9\u0003\u0002\u0002\u0002\u23a7\u23a9",
- "\u0007\u0131\u0002\u0002\u23a8\u23aa\to\u0002\u0002\u23a9\u23a8\u0003",
- "\u0002\u0002\u0002\u23a9\u23aa\u0003\u0002\u0002\u0002\u23aa\u23ac\u0003",
- "\u0002\u0002\u0002\u23ab\u23ad\u0005\u02fc\u017f\u0002\u23ac\u23ab\u0003",
- "\u0002\u0002\u0002\u23ac\u23ad\u0003\u0002\u0002\u0002\u23ad\u23ae\u0003",
- "\u0002\u0002\u0002\u23ae\u23b1\u0005\u0312\u018a\u0002\u23af\u23b0\u0007",
- "\u00a5\u0002\u0002\u23b0\u23b2\u0005\u038e\u01c8\u0002\u23b1\u23af\u0003",
- "\u0002\u0002\u0002\u23b1\u23b2\u0003\u0002\u0002\u0002\u23b2\u23b5\u0003",
- "\u0002\u0002\u0002\u23b3\u23b4\u0007\u008b\u0002\u0002\u23b4\u23b6\u0005",
- "\u0320\u0191\u0002\u23b5\u23b3\u0003\u0002\u0002\u0002\u23b5\u23b6\u0003",
- "\u0002\u0002\u0002\u23b6\u23b9\u0003\u0002\u0002\u0002\u23b7\u23b8\u0007",
- "\u0176\u0002\u0002\u23b8\u23ba\u0005\u02ee\u0178\u0002\u23b9\u23b7\u0003",
- "\u0002\u0002\u0002\u23b9\u23ba\u0003\u0002\u0002\u0002\u23ba\u23c8\u0003",
- "\u0002\u0002\u0002\u23bb\u23bc\u0007\u0092\u0002\u0002\u23bc\u23be\u0007",
- "&\u0002\u0002\u23bd\u23bf\u0007\u0006\u0002\u0002\u23be\u23bd\u0003",
- "\u0002\u0002\u0002\u23be\u23bf\u0003\u0002\u0002\u0002\u23bf\u23c0\u0003",
- "\u0002\u0002\u0002\u23c0\u23c5\u0005\u030a\u0186\u0002\u23c1\u23c2\u0007",
- "\u033e\u0002\u0002\u23c2\u23c4\u0005\u030a\u0186\u0002\u23c3\u23c1\u0003",
- "\u0002\u0002\u0002\u23c4\u23c7\u0003\u0002\u0002\u0002\u23c5\u23c3\u0003",
- "\u0002\u0002\u0002\u23c5\u23c6\u0003\u0002\u0002\u0002\u23c6\u23c9\u0003",
- "\u0002\u0002\u0002\u23c7\u23c5\u0003\u0002\u0002\u0002\u23c8\u23bb\u0003",
- "\u0002\u0002\u0002\u23c8\u23c9\u0003\u0002\u0002\u0002\u23c9\u23cc\u0003",
- "\u0002\u0002\u0002\u23ca\u23cb\u0007\u0093\u0002\u0002\u23cb\u23cd\u0005",
- "\u02ee\u0178\u0002\u23cc\u23ca\u0003\u0002\u0002\u0002\u23cc\u23cd\u0003",
- "\u0002\u0002\u0002\u23cd\u02fb\u0003\u0002\u0002\u0002\u23ce\u23d1\u0007",
- "\u015b\u0002\u0002\u23cf\u23d2\u0005\u02fe\u0180\u0002\u23d0\u23d2\u0005",
- "\u0300\u0181\u0002\u23d1\u23cf\u0003\u0002\u0002\u0002\u23d1\u23d0\u0003",
- "\u0002\u0002\u0002\u23d2\u23d5\u0003\u0002\u0002\u0002\u23d3\u23d4\u0007",
- "\u0179\u0002\u0002\u23d4\u23d6\u0007\u02f4\u0002\u0002\u23d5\u23d3\u0003",
- "\u0002\u0002\u0002\u23d5\u23d6\u0003\u0002\u0002\u0002\u23d6\u02fd\u0003",
- "\u0002\u0002\u0002\u23d7\u23d8\tp\u0002\u0002\u23d8\u23df\u0007\u00f5",
- "\u0002\u0002\u23d9\u23da\u0007\u033c\u0002\u0002\u23da\u23db\u0005\u02d8",
- "\u016d\u0002\u23db\u23dc\u0007\u033d\u0002\u0002\u23dc\u23dd\u0007\u00f5",
- "\u0002\u0002\u23dd\u23df\u0003\u0002\u0002\u0002\u23de\u23d7\u0003\u0002",
- "\u0002\u0002\u23de\u23d9\u0003\u0002\u0002\u0002\u23df\u02ff\u0003\u0002",
- "\u0002\u0002\u23e0\u23e6\u0007\u0322\u0002\u0002\u23e1\u23e2\u0007\u033c",
- "\u0002\u0002\u23e2\u23e3\u0005\u02d8\u016d\u0002\u23e3\u23e4\u0007\u033d",
- "\u0002\u0002\u23e4\u23e6\u0003\u0002\u0002\u0002\u23e5\u23e0\u0003\u0002",
- "\u0002\u0002\u23e5\u23e1\u0003\u0002\u0002\u0002\u23e6\u0301\u0003\u0002",
- "\u0002\u0002\u23e7\u23e8\u0007\u00ee\u0002\u0002\u23e8\u23e9\u0007&",
- "\u0002\u0002\u23e9\u23ee\u0005\u0308\u0185\u0002\u23ea\u23eb\u0007\u033e",
- "\u0002\u0002\u23eb\u23ed\u0005\u0308\u0185\u0002\u23ec\u23ea\u0003\u0002",
- "\u0002\u0002\u23ed\u23f0\u0003\u0002\u0002\u0002\u23ee\u23ec\u0003\u0002",
- "\u0002\u0002\u23ee\u23ef\u0003\u0002\u0002\u0002\u23ef\u23fc\u0003\u0002",
- "\u0002\u0002\u23f0\u23ee\u0003\u0002\u0002\u0002\u23f1\u23f2\u0007\u0273",
- "\u0002\u0002\u23f2\u23f3\u0005\u02d8\u016d\u0002\u23f3\u23fa\tq\u0002",
- "\u0002\u23f4\u23f5\u0007\u0080\u0002\u0002\u23f5\u23f6\tr\u0002\u0002",
- "\u23f6\u23f7\u0005\u02d8\u016d\u0002\u23f7\u23f8\tq\u0002\u0002\u23f8",
- "\u23f9\u0007\u0276\u0002\u0002\u23f9\u23fb\u0003\u0002\u0002\u0002\u23fa",
- "\u23f4\u0003\u0002\u0002\u0002\u23fa\u23fb\u0003\u0002\u0002\u0002\u23fb",
- "\u23fd\u0003\u0002\u0002\u0002\u23fc\u23f1\u0003\u0002\u0002\u0002\u23fc",
- "\u23fd\u0003\u0002\u0002\u0002\u23fd\u0303\u0003\u0002\u0002\u0002\u23fe",
- "\u23ff\u0007\u0085\u0002\u0002\u23ff\u2457\u0007\"\u0002\u0002\u2400",
- "\u2401\u0007\u0085\u0002\u0002\u2401\u2409\u0007\u0315\u0002\u0002\u2402",
- "\u2406\u0007\u0109\u0002\u0002\u2403\u2404\u0007\u033c\u0002\u0002\u2404",
- "\u2405\u0007\u0326\u0002\u0002\u2405\u2407\u0007\u033d\u0002\u0002\u2406",
- "\u2403\u0003\u0002\u0002\u0002\u2406\u2407\u0003\u0002\u0002\u0002\u2407",
- "\u240a\u0003\u0002\u0002\u0002\u2408\u240a\u0007\u0198\u0002\u0002\u2409",
- "\u2402\u0003\u0002\u0002\u0002\u2409\u2408\u0003\u0002\u0002\u0002\u240a",
- "\u240e\u0003\u0002\u0002\u0002\u240b\u240d\u0005\u0306\u0184\u0002\u240c",
- "\u240b\u0003\u0002\u0002\u0002\u240d\u2410\u0003\u0002\u0002\u0002\u240e",
- "\u240c\u0003\u0002\u0002\u0002\u240e\u240f\u0003\u0002\u0002\u0002\u240f",
- "\u241b\u0003\u0002\u0002\u0002\u2410\u240e\u0003\u0002\u0002\u0002\u2411",
- "\u2419\u0007\u033e\u0002\u0002\u2412\u241a\u0007\u0316\u0002\u0002\u2413",
- "\u2417\u0007\u0318\u0002\u0002\u2414\u2415\u0007\u033c\u0002\u0002\u2415",
- "\u2416\u0007\u0326\u0002\u0002\u2416\u2418\u0007\u033d\u0002\u0002\u2417",
- "\u2414\u0003\u0002\u0002\u0002\u2417\u2418\u0003\u0002\u0002\u0002\u2418",
- "\u241a\u0003\u0002\u0002\u0002\u2419\u2412\u0003\u0002\u0002\u0002\u2419",
- "\u2413\u0003\u0002\u0002\u0002\u241a\u241c\u0003\u0002\u0002\u0002\u241b",
- "\u2411\u0003\u0002\u0002\u0002\u241b\u241c\u0003\u0002\u0002\u0002\u241c",
- "\u2420\u0003\u0002\u0002\u0002\u241d\u241e\u0007\u033e\u0002\u0002\u241e",
- "\u241f\u0007\u01e6\u0002\u0002\u241f\u2421\ts\u0002\u0002\u2420\u241d",
- "\u0003\u0002\u0002\u0002\u2420\u2421\u0003\u0002\u0002\u0002\u2421\u2457",
- "\u0003\u0002\u0002\u0002\u2422\u2423\u0007\u0085\u0002\u0002\u2423\u2424",
- "\u0007\u0315\u0002\u0002\u2424\u2428\u0007\u01f4\u0002\u0002\u2425\u2427",
- "\u0005\u0306\u0184\u0002\u2426\u2425\u0003\u0002\u0002\u0002\u2427\u242a",
- "\u0003\u0002\u0002\u0002\u2428\u2426\u0003\u0002\u0002\u0002\u2428\u2429",
- "\u0003\u0002\u0002\u0002\u2429\u242d\u0003\u0002\u0002\u0002\u242a\u2428",
- "\u0003\u0002\u0002\u0002\u242b\u242c\u0007\u033e\u0002\u0002\u242c\u242e",
- "\u0007\u0316\u0002\u0002\u242d\u242b\u0003\u0002\u0002\u0002\u242d\u242e",
- "\u0003\u0002\u0002\u0002\u242e\u2457\u0003\u0002\u0002\u0002\u242f\u2430",
- "\u0007\u0085\u0002\u0002\u2430\u2431\u0007\u0315\u0002\u0002\u2431\u2435",
- "\u0007\u0283\u0002\u0002\u2432\u2433\u0007\u033c\u0002\u0002\u2433\u2434",
- "\u0007\u0326\u0002\u0002\u2434\u2436\u0007\u033d\u0002\u0002\u2435\u2432",
- "\u0003\u0002\u0002\u0002\u2435\u2436\u0003\u0002\u0002\u0002\u2436\u243a",
- "\u0003\u0002\u0002\u0002\u2437\u2439\u0005\u0306\u0184\u0002\u2438\u2437",
- "\u0003\u0002\u0002\u0002\u2439\u243c\u0003\u0002\u0002\u0002\u243a\u2438",
- "\u0003\u0002\u0002\u0002\u243a\u243b\u0003\u0002\u0002\u0002\u243b\u2440",
- "\u0003\u0002\u0002\u0002\u243c\u243a\u0003\u0002\u0002\u0002\u243d\u243e",
- "\u0007\u033e\u0002\u0002\u243e\u243f\u0007\u01e6\u0002\u0002\u243f\u2441",
- "\ts\u0002\u0002\u2440\u243d\u0003\u0002\u0002\u0002\u2440\u2441\u0003",
- "\u0002\u0002\u0002\u2441\u2457\u0003\u0002\u0002\u0002\u2442\u2443\u0007",
- "\u0085\u0002\u0002\u2443\u2444\u0007\u0227\u0002\u0002\u2444\u244c\t",
- "t\u0002\u0002\u2445\u2446\u0007\u033e\u0002\u0002\u2446\u244a\u0007",
- "\u02b7\u0002\u0002\u2447\u2448\u0007\u033c\u0002\u0002\u2448\u2449\u0007",
- "\u0326\u0002\u0002\u2449\u244b\u0007\u033d\u0002\u0002\u244a\u2447\u0003",
- "\u0002\u0002\u0002\u244a\u244b\u0003\u0002\u0002\u0002\u244b\u244d\u0003",
- "\u0002\u0002\u0002\u244c\u2445\u0003\u0002\u0002\u0002\u244c\u244d\u0003",
- "\u0002\u0002\u0002\u244d\u2450\u0003\u0002\u0002\u0002\u244e\u244f\u0007",
- "\u033e\u0002\u0002\u244f\u2451\u0007\u021d\u0002\u0002\u2450\u244e\u0003",
- "\u0002\u0002\u0002\u2450\u2451\u0003\u0002\u0002\u0002\u2451\u2454\u0003",
- "\u0002\u0002\u0002\u2452\u2453\u0007\u033e\u0002\u0002\u2453\u2455\u0007",
- "\u0312\u0002\u0002\u2454\u2452\u0003\u0002\u0002\u0002\u2454\u2455\u0003",
- "\u0002\u0002\u0002\u2455\u2457\u0003\u0002\u0002\u0002\u2456\u23fe\u0003",
- "\u0002\u0002\u0002\u2456\u2400\u0003\u0002\u0002\u0002\u2456\u2422\u0003",
- "\u0002\u0002\u0002\u2456\u242f\u0003\u0002\u0002\u0002\u2456\u2442\u0003",
- "\u0002\u0002\u0002\u2457\u0305\u0003\u0002\u0002\u0002\u2458\u2461\u0007",
- "\u033e\u0002\u0002\u2459\u2462\u0007\u01a4\u0002\u0002\u245a\u2462\u0007",
- "\u0301\u0002\u0002\u245b\u245f\u0007\u02b7\u0002\u0002\u245c\u245d\u0007",
- "\u033c\u0002\u0002\u245d\u245e\u0007\u0326\u0002\u0002\u245e\u2460\u0007",
- "\u033d\u0002\u0002\u245f\u245c\u0003\u0002\u0002\u0002\u245f\u2460\u0003",
- "\u0002\u0002\u0002\u2460\u2462\u0003\u0002\u0002\u0002\u2461\u2459\u0003",
- "\u0002\u0002\u0002\u2461\u245a\u0003\u0002\u0002\u0002\u2461\u245b\u0003",
- "\u0002\u0002\u0002\u2462\u0307\u0003\u0002\u0002\u0002\u2463\u2465\u0005",
- "\u02d8\u016d\u0002\u2464\u2466\tu\u0002\u0002\u2465\u2464\u0003\u0002",
- "\u0002\u0002\u2465\u2466\u0003\u0002\u0002\u0002\u2466\u0309\u0003\u0002",
- "\u0002\u0002\u2467\u2468\u0005\u02d8\u016d\u0002\u2468\u030b\u0003\u0002",
- "\u0002\u0002\u2469\u246a\u0007\u00ec\u0002\u0002\u246a\u246b\u0007\u033c",
- "\u0002\u0002\u246b\u2470\u0005\u030e\u0188\u0002\u246c\u246d\u0007\u033e",
- "\u0002\u0002\u246d\u246f\u0005\u030e\u0188\u0002\u246e\u246c\u0003\u0002",
- "\u0002\u0002\u246f\u2472\u0003\u0002\u0002\u0002\u2470\u246e\u0003\u0002",
- "\u0002\u0002\u2470\u2471\u0003\u0002\u0002\u0002\u2471\u2473\u0003\u0002",
- "\u0002\u0002\u2472\u2470\u0003\u0002\u0002\u0002\u2473\u2474\u0007\u033d",
- "\u0002\u0002\u2474\u030d\u0003\u0002\u0002\u0002\u2475\u2476\u0007\u01f9",
- "\u0002\u0002\u2476\u24a3\u0007\u0322\u0002\u0002\u2477\u2478\tv\u0002",
- "\u0002\u2478\u24a3\u0007\u0092\u0002\u0002\u2479\u247a\tw\u0002\u0002",
- "\u247a\u24a3\u0007\u0164\u0002\u0002\u247b\u247c\tx\u0002\u0002\u247c",
- "\u24a3\u0007\u00aa\u0002\u0002\u247d\u247e\u0007\u01f2\u0002\u0002\u247e",
- "\u24a3\u0007\u030f\u0002\u0002\u247f\u2480\u0007\u0203\u0002\u0002\u2480",
- "\u24a3\u0007\u00ee\u0002\u0002\u2481\u24a3\u0007\u0219\u0002\u0002\u2482",
- "\u2483\u0007\u0229\u0002\u0002\u2483\u24a3\u0007\u00fb\u0002\u0002\u2484",
- "\u2485\u0007\u022a\u0002\u0002\u2485\u24a3\u0007\u00fb\u0002\u0002\u2486",
- "\u2487\u0007\u024a\u0002\u0002\u2487\u24a3\u0007\u0322\u0002\u0002\u2488",
- "\u2489\u0007\u024b\u0002\u0002\u2489\u24a3\u0007\u0322\u0002\u0002\u248a",
- "\u248b\u0007\u0279\u0002\u0002\u248b\u248c\u0007\u0085\u0002\u0002\u248c",
- "\u248d\u0007\u033c\u0002\u0002\u248d\u2492\u0005\u0310\u0189\u0002\u248e",
- "\u248f\u0007\u033e\u0002\u0002\u248f\u2491\u0005\u0310\u0189\u0002\u2490",
- "\u248e\u0003\u0002\u0002\u0002\u2491\u2494\u0003\u0002\u0002\u0002\u2492",
- "\u2490\u0003\u0002\u0002\u0002\u2492\u2493\u0003\u0002\u0002\u0002\u2493",
- "\u2495\u0003\u0002\u0002\u0002\u2494\u2492\u0003\u0002\u0002\u0002\u2495",
- "\u2496\u0007\u033d\u0002\u0002\u2496\u24a3\u0003\u0002\u0002\u0002\u2497",
- "\u2498\u0007\u0279\u0002\u0002\u2498\u2499\u0007\u0085\u0002\u0002\u2499",
- "\u24a3\u0007\u0305\u0002\u0002\u249a\u249b\u0007\u027f\u0002\u0002\u249b",
- "\u24a3\tM\u0002\u0002\u249c\u24a3\u0007\u02a3\u0002\u0002\u249d\u249e",
- "\u0007\u02b6\u0002\u0002\u249e\u24a3\u0007\u00fb\u0002\u0002\u249f\u24a0",
- "\u0007\u016c\u0002\u0002\u24a0\u24a1\u0007\u00fb\u0002\u0002\u24a1\u24a3",
- "\u0007\u0326\u0002\u0002\u24a2\u2475\u0003\u0002\u0002\u0002\u24a2\u2477",
- "\u0003\u0002\u0002\u0002\u24a2\u2479\u0003\u0002\u0002\u0002\u24a2\u247b",
- "\u0003\u0002\u0002\u0002\u24a2\u247d\u0003\u0002\u0002\u0002\u24a2\u247f",
- "\u0003\u0002\u0002\u0002\u24a2\u2481\u0003\u0002\u0002\u0002\u24a2\u2482",
- "\u0003\u0002\u0002\u0002\u24a2\u2484\u0003\u0002\u0002\u0002\u24a2\u2486",
- "\u0003\u0002\u0002\u0002\u24a2\u2488\u0003\u0002\u0002\u0002\u24a2\u248a",
- "\u0003\u0002\u0002\u0002\u24a2\u2497\u0003\u0002\u0002\u0002\u24a2\u249a",
- "\u0003\u0002\u0002\u0002\u24a2\u249c\u0003\u0002\u0002\u0002\u24a2\u249d",
- "\u0003\u0002\u0002\u0002\u24a2\u249f\u0003\u0002\u0002\u0002\u24a3\u030f",
- "\u0003\u0002\u0002\u0002\u24a4\u24ab\u0007\u0321\u0002\u0002\u24a5\u24ac",
- "\u0007\u0305\u0002\u0002\u24a6\u24a9\u0007\u032a\u0002\u0002\u24a7\u24aa",
- "\u0005\u03c2\u01e2\u0002\u24a8\u24aa\u0007\u00df\u0002\u0002\u24a9\u24a7",
- "\u0003\u0002\u0002\u0002\u24a9\u24a8\u0003\u0002\u0002\u0002\u24aa\u24ac",
- "\u0003\u0002\u0002\u0002\u24ab\u24a5\u0003\u0002\u0002\u0002\u24ab\u24a6",
- "\u0003\u0002\u0002\u0002\u24ac\u0311\u0003\u0002\u0002\u0002\u24ad\u24b2",
- "\u0005\u031e\u0190\u0002\u24ae\u24af\u0007\u033e\u0002\u0002\u24af\u24b1",
- "\u0005\u031e\u0190\u0002\u24b0\u24ae\u0003\u0002\u0002\u0002\u24b1\u24b4",
- "\u0003\u0002\u0002\u0002\u24b2\u24b0\u0003\u0002\u0002\u0002\u24b2\u24b3",
- "\u0003\u0002\u0002\u0002\u24b3\u0313\u0003\u0002\u0002\u0002\u24b4\u24b2",
- "\u0003\u0002\u0002\u0002\u24b5\u24b6\u0007\u033c\u0002\u0002\u24b6\u24bb",
- "\u0005\u027e\u0140\u0002\u24b7\u24b8\u0007\u033e\u0002\u0002\u24b8\u24ba",
- "\u0005\u027e\u0140\u0002\u24b9\u24b7\u0003\u0002\u0002\u0002\u24ba\u24bd",
- "\u0003\u0002\u0002\u0002\u24bb\u24b9\u0003\u0002\u0002\u0002\u24bb\u24bc",
- "\u0003\u0002\u0002\u0002\u24bc\u24be\u0003\u0002\u0002\u0002\u24bd\u24bb",
- "\u0003\u0002\u0002\u0002\u24be\u24bf\u0007\u033d\u0002\u0002\u24bf\u0315",
- "\u0003\u0002\u0002\u0002\u24c0\u24c1\u0005\u038e\u01c8\u0002\u24c1\u24c2",
- "\u0007\u0337\u0002\u0002\u24c2\u24c4\u0003\u0002\u0002\u0002\u24c3\u24c0",
- "\u0003\u0002\u0002\u0002\u24c3\u24c4\u0003\u0002\u0002\u0002\u24c4\u24c5",
- "\u0003\u0002\u0002\u0002\u24c5\u24c6\u0007\u0341\u0002\u0002\u24c6\u0317",
- "\u0003\u0002\u0002\u0002\u24c7\u24c8\u0005\u038e\u01c8\u0002\u24c8\u24c9",
- "\u0007\u0337\u0002\u0002\u24c9\u24cb\u0003\u0002\u0002\u0002\u24ca\u24c7",
- "\u0003\u0002\u0002\u0002\u24ca\u24cb\u0003\u0002\u0002\u0002\u24cb\u24d1",
- "\u0003\u0002\u0002\u0002\u24cc\u24d2\u0005\u03c6\u01e4\u0002\u24cd\u24ce",
- "\u0007\u033b\u0002\u0002\u24ce\u24d2\u0007\u0096\u0002\u0002\u24cf\u24d0",
- "\u0007\u033b\u0002\u0002\u24d0\u24d2\u0007\u02bb\u0002\u0002\u24d1\u24cc",
- "\u0003\u0002\u0002\u0002\u24d1\u24cd\u0003\u0002\u0002\u0002\u24d1\u24cf",
- "\u0003\u0002\u0002\u0002\u24d2\u24d5\u0003\u0002\u0002\u0002\u24d3\u24d5",
- "\u0007\u00df\u0002\u0002\u24d4\u24ca\u0003\u0002\u0002\u0002\u24d4\u24d3",
- "\u0003\u0002\u0002\u0002\u24d5\u24d7\u0003\u0002\u0002\u0002\u24d6\u24d8",
- "\u0005\u0352\u01aa\u0002\u24d7\u24d6\u0003\u0002\u0002\u0002\u24d7\u24d8",
- "\u0003\u0002\u0002\u0002\u24d8\u0319\u0003\u0002\u0002\u0002\u24d9\u24da",
- "\u0005\u03c6\u01e4\u0002\u24da\u24db\u0007\u0337\u0002\u0002\u24db\u24dc",
- "\u0005\u03c6\u01e4\u0002\u24dc\u24de\u0005\u0314\u018b\u0002\u24dd\u24df",
- "\u0005\u0352\u01aa\u0002\u24de\u24dd\u0003\u0002\u0002\u0002\u24de\u24df",
- "\u0003\u0002\u0002\u0002\u24df\u24eb\u0003\u0002\u0002\u0002\u24e0\u24e1",
- "\u0005\u03c6\u01e4\u0002\u24e1\u24e2\u0007\u0340\u0002\u0002\u24e2\u24e3",
- "\u0007\u0340\u0002\u0002\u24e3\u24e5\u0005\u03c6\u01e4\u0002\u24e4\u24e6",
- "\u0005\u0314\u018b\u0002\u24e5\u24e4\u0003\u0002\u0002\u0002\u24e5\u24e6",
- "\u0003\u0002\u0002\u0002\u24e6\u24e8\u0003\u0002\u0002\u0002\u24e7\u24e9",
- "\u0005\u0352\u01aa\u0002\u24e8\u24e7\u0003\u0002\u0002\u0002\u24e8\u24e9",
- "\u0003\u0002\u0002\u0002\u24e9\u24eb\u0003\u0002\u0002\u0002\u24ea\u24d9",
- "\u0003\u0002\u0002\u0002\u24ea\u24e0\u0003\u0002\u0002\u0002\u24eb\u031b",
- "\u0003\u0002\u0002\u0002\u24ec\u24ed\u0005\u0362\u01b2\u0002\u24ed\u24ee",
- "\u0007\u032a\u0002\u0002\u24ee\u24ef\u0005\u02d8\u016d\u0002\u24ef\u24f5",
- "\u0003\u0002\u0002\u0002\u24f0\u24f2\u0005\u02d8\u016d\u0002\u24f1\u24f3",
- "\u0005\u0352\u01aa\u0002\u24f2\u24f1\u0003\u0002\u0002\u0002\u24f2\u24f3",
- "\u0003\u0002\u0002\u0002\u24f3\u24f5\u0003\u0002\u0002\u0002\u24f4\u24ec",
- "\u0003\u0002\u0002\u0002\u24f4\u24f0\u0003\u0002\u0002\u0002\u24f5\u031d",
- "\u0003\u0002\u0002\u0002\u24f6\u24fb\u0005\u0316\u018c\u0002\u24f7\u24fb",
- "\u0005\u0318\u018d\u0002\u24f8\u24fb\u0005\u031a\u018e\u0002\u24f9\u24fb",
- "\u0005\u031c\u018f\u0002\u24fa\u24f6\u0003\u0002\u0002\u0002\u24fa\u24f7",
- "\u0003\u0002\u0002\u0002\u24fa\u24f8\u0003\u0002\u0002\u0002\u24fa\u24f9",
- "\u0003\u0002\u0002\u0002\u24fb\u031f\u0003\u0002\u0002\u0002\u24fc\u2501",
- "\u0005\u0322\u0192\u0002\u24fd\u24fe\u0007\u033e\u0002\u0002\u24fe\u2500",
- "\u0005\u0322\u0192\u0002\u24ff\u24fd\u0003\u0002\u0002\u0002\u2500\u2503",
- "\u0003\u0002\u0002\u0002\u2501\u24ff\u0003\u0002\u0002\u0002\u2501\u2502",
- "\u0003\u0002\u0002\u0002\u2502\u0321\u0003\u0002\u0002\u0002\u2503\u2501",
- "\u0003\u0002\u0002\u0002\u2504\u250a\u0005\u0324\u0193\u0002\u2505\u2506",
- "\u0007\u033c\u0002\u0002\u2506\u2507\u0005\u0324\u0193\u0002\u2507\u2508",
- "\u0007\u033d\u0002\u0002\u2508\u250a\u0003\u0002\u0002\u0002\u2509\u2504",
- "\u0003\u0002\u0002\u0002\u2509\u2505\u0003\u0002\u0002\u0002\u250a\u0323",
- "\u0003\u0002\u0002\u0002\u250b\u250f\u0005\u0326\u0194\u0002\u250c\u250e",
- "\u0005\u0330\u0199\u0002\u250d\u250c\u0003\u0002\u0002\u0002\u250e\u2511",
- "\u0003\u0002\u0002\u0002\u250f\u250d\u0003\u0002\u0002\u0002\u250f\u2510",
- "\u0003\u0002\u0002\u0002\u2510\u0325\u0003\u0002\u0002\u0002\u2511\u250f",
- "\u0003\u0002\u0002\u0002\u2512\u2514\u0005\u0338\u019d\u0002\u2513\u2515",
- "\u0005\u0354\u01ab\u0002\u2514\u2513\u0003\u0002\u0002\u0002\u2514\u2515",
- "\u0003\u0002\u0002\u0002\u2515\u2544\u0003\u0002\u0002\u0002\u2516\u2518",
- "\u0005\u038c\u01c7\u0002\u2517\u2519\u0005\u0354\u01ab\u0002\u2518\u2517",
- "\u0003\u0002\u0002\u0002\u2518\u2519\u0003\u0002\u0002\u0002\u2519\u2544",
- "\u0003\u0002\u0002\u0002\u251a\u251c\u0005\u033a\u019e\u0002\u251b\u251d",
- "\u0005\u0354\u01ab\u0002\u251c\u251b\u0003\u0002\u0002\u0002\u251c\u251d",
- "\u0003\u0002\u0002\u0002\u251d\u2544\u0003\u0002\u0002\u0002\u251e\u2523",
- "\u0005\u033e\u01a0\u0002\u251f\u2521\u0005\u0354\u01ab\u0002\u2520\u2522",
- "\u0005\u0360\u01b1\u0002\u2521\u2520\u0003\u0002\u0002\u0002\u2521\u2522",
- "\u0003\u0002\u0002\u0002\u2522\u2524\u0003\u0002\u0002\u0002\u2523\u251f",
- "\u0003\u0002\u0002\u0002\u2523\u2524\u0003\u0002\u0002\u0002\u2524\u2544",
- "\u0003\u0002\u0002\u0002\u2525\u2526\u0005\u032e\u0198\u0002\u2526\u2527",
- "\u0005\u0354\u01ab\u0002\u2527\u2544\u0003\u0002\u0002\u0002\u2528\u252d",
- "\u0005\u0340\u01a1\u0002\u2529\u252b\u0005\u0354\u01ab\u0002\u252a\u252c",
- "\u0005\u0360\u01b1\u0002\u252b\u252a\u0003\u0002\u0002\u0002\u252b\u252c",
- "\u0003\u0002\u0002\u0002\u252c\u252e\u0003\u0002\u0002\u0002\u252d\u2529",
- "\u0003\u0002\u0002\u0002\u252d\u252e\u0003\u0002\u0002\u0002\u252e\u2544",
- "\u0003\u0002\u0002\u0002\u252f\u2531\u0007\u0321\u0002\u0002\u2530\u2532",
- "\u0005\u0354\u01ab\u0002\u2531\u2530\u0003\u0002\u0002\u0002\u2531\u2532",
- "\u0003\u0002\u0002\u0002\u2532\u2544\u0003\u0002\u0002\u0002\u2533\u2534",
- "\u0007\u0321\u0002\u0002\u2534\u2535\u0007\u0337\u0002\u0002\u2535\u253a",
- "\u0005\u0340\u01a1\u0002\u2536\u2538\u0005\u0354\u01ab\u0002\u2537\u2539",
- "\u0005\u0360\u01b1\u0002\u2538\u2537\u0003\u0002\u0002\u0002\u2538\u2539",
- "\u0003\u0002\u0002\u0002\u2539\u253b\u0003\u0002\u0002\u0002\u253a\u2536",
- "\u0003\u0002\u0002\u0002\u253a\u253b\u0003\u0002\u0002\u0002\u253b\u2544",
- "\u0003\u0002\u0002\u0002\u253c\u2544\u0005\u0328\u0195\u0002\u253d\u253e",
- "\u0007\u0340\u0002\u0002\u253e\u253f\u0007\u0340\u0002\u0002\u253f\u2541",
- "\u0005\u0340\u01a1\u0002\u2540\u2542\u0005\u0354\u01ab\u0002\u2541\u2540",
- "\u0003\u0002\u0002\u0002\u2541\u2542\u0003\u0002\u0002\u0002\u2542\u2544",
- "\u0003\u0002\u0002\u0002\u2543\u2512\u0003\u0002\u0002\u0002\u2543\u2516",
- "\u0003\u0002\u0002\u0002\u2543\u251a\u0003\u0002\u0002\u0002\u2543\u251e",
- "\u0003\u0002\u0002\u0002\u2543\u2525\u0003\u0002\u0002\u0002\u2543\u2528",
- "\u0003\u0002\u0002\u0002\u2543\u252f\u0003\u0002\u0002\u0002\u2543\u2533",
- "\u0003\u0002\u0002\u0002\u2543\u253c\u0003\u0002\u0002\u0002\u2543\u253d",
- "\u0003\u0002\u0002\u0002\u2544\u0327\u0003\u0002\u0002\u0002\u2545\u2546",
- "\u0007\u00eb\u0002\u0002\u2546\u2547\u0007\u033c\u0002\u0002\u2547\u2548",
- "\u0005\u02d8\u016d\u0002\u2548\u2549\u0007\u033e\u0002\u0002\u2549\u254c",
- "\u0005\u02d8\u016d\u0002\u254a\u254b\u0007\u033e\u0002\u0002\u254b\u254d",
- "\u0005\u02d8\u016d\u0002\u254c\u254a\u0003\u0002\u0002\u0002\u254c\u254d",
- "\u0003\u0002\u0002\u0002\u254d\u254e\u0003\u0002\u0002\u0002\u254e\u2554",
- "\u0007\u033d\u0002\u0002\u254f\u2550\u0007\u0179\u0002\u0002\u2550\u2551",
- "\u0007\u033c\u0002\u0002\u2551\u2552\u0005\u032a\u0196\u0002\u2552\u2553",
- "\u0007\u033d\u0002\u0002\u2553\u2555\u0003\u0002\u0002\u0002\u2554\u254f",
- "\u0003\u0002\u0002\u0002\u2554\u2555\u0003\u0002\u0002\u0002\u2555\u0329",
- "\u0003\u0002\u0002\u0002\u2556\u255b\u0005\u032c\u0197\u0002\u2557\u2558",
- "\u0007\u033e\u0002\u0002\u2558\u255a\u0005\u032c\u0197\u0002\u2559\u2557",
- "\u0003\u0002\u0002\u0002\u255a\u255d\u0003\u0002\u0002\u0002\u255b\u2559",
- "\u0003\u0002\u0002\u0002\u255b\u255c\u0003\u0002\u0002\u0002\u255c\u032b",
- "\u0003\u0002\u0002\u0002\u255d\u255b\u0003\u0002\u0002\u0002\u255e\u255f",
- "\u0007\u0323\u0002\u0002\u255f\u2561\u0005\u03be\u01e0\u0002\u2560\u2562",
- "\u0007\u0326\u0002\u0002\u2561\u2560\u0003\u0002\u0002\u0002\u2561\u2562",
- "\u0003\u0002\u0002\u0002\u2562\u032d\u0003\u0002\u0002\u0002\u2563\u2564",
- "\u0007,\u0002\u0002\u2564\u2565\u0007\u033c\u0002\u0002\u2565\u2566",
- "\u0007-\u0002\u0002\u2566\u2567\u0005\u038e\u01c8\u0002\u2567\u2568",
- "\u0007\u033e\u0002\u0002\u2568\u2569\ty\u0002\u0002\u2569\u256a\u0007",
- "\u033d\u0002\u0002\u256a\u032f\u0003\u0002\u0002\u0002\u256b\u256d\u0007",
- "\u00a1\u0002\u0002\u256c\u256b\u0003\u0002\u0002\u0002\u256c\u256d\u0003",
- "\u0002\u0002\u0002\u256d\u2573\u0003\u0002\u0002\u0002\u256e\u2570\t",
- "z\u0002\u0002\u256f\u2571\u0007\u00ef\u0002\u0002\u2570\u256f\u0003",
- "\u0002\u0002\u0002\u2570\u2571\u0003\u0002\u0002\u0002\u2571\u2573\u0003",
- "\u0002\u0002\u0002\u2572\u256c\u0003\u0002\u0002\u0002\u2572\u256e\u0003",
- "\u0002\u0002\u0002\u2573\u2575\u0003\u0002\u0002\u0002\u2574\u2576\t",
- "{\u0002\u0002\u2575\u2574\u0003\u0002\u0002\u0002\u2575\u2576\u0003",
- "\u0002\u0002\u0002\u2576\u2577\u0003\u0002\u0002\u0002\u2577\u2578\u0007",
- "\u00aa\u0002\u0002\u2578\u2579\u0005\u0322\u0192\u0002\u2579\u257a\u0007",
- "\u00e5\u0002\u0002\u257a\u257b\u0005\u02ee\u0178\u0002\u257b\u258e\u0003",
- "\u0002\u0002\u0002\u257c\u257d\u0007J\u0002\u0002\u257d\u257e\u0007",
- "\u00aa\u0002\u0002\u257e\u258e\u0005\u0322\u0192\u0002\u257f\u2580\u0007",
- "J\u0002\u0002\u2580\u2581\u0007\u0193\u0002\u0002\u2581\u258e\u0005",
- "\u0322\u0192\u0002\u2582\u2583\u0007\u00ef\u0002\u0002\u2583\u2584\u0007",
- "\u0193\u0002\u0002\u2584\u258e\u0005\u0322\u0192\u0002\u2585\u2586\u0007",
- "\u00fa\u0002\u0002\u2586\u2587\u0005\u0332\u019a\u0002\u2587\u2588\u0005",
- "\u0354\u01ab\u0002\u2588\u258e\u0003\u0002\u0002\u0002\u2589\u258a\u0007",
- "\u0167\u0002\u0002\u258a\u258b\u0005\u0334\u019b\u0002\u258b\u258c\u0005",
- "\u0354\u01ab\u0002\u258c\u258e\u0003\u0002\u0002\u0002\u258d\u2572\u0003",
- "\u0002\u0002\u0002\u258d\u257c\u0003\u0002\u0002\u0002\u258d\u257f\u0003",
- "\u0002\u0002\u0002\u258d\u2582\u0003\u0002\u0002\u0002\u258d\u2585\u0003",
- "\u0002\u0002\u0002\u258d\u2589\u0003\u0002\u0002\u0002\u258e\u0331\u0003",
- "\u0002\u0002\u0002\u258f\u2590\u0007\u033c\u0002\u0002\u2590\u2591\u0005",
- "\u036a\u01b6\u0002\u2591\u2592\u0007\u0085\u0002\u0002\u2592\u2593\u0005",
- "\u039a\u01ce\u0002\u2593\u2594\u0007\u009b\u0002\u0002\u2594\u2595\u0005",
- "\u0360\u01b1\u0002\u2595\u2596\u0007\u033d\u0002\u0002\u2596\u0333\u0003",
- "\u0002\u0002\u0002\u2597\u2598\u0007\u033c\u0002\u0002\u2598\u2599\u0005",
- "\u02d8\u016d\u0002\u2599\u259a\u0007\u0085\u0002\u0002\u259a\u259b\u0005",
- "\u039a\u01ce\u0002\u259b\u259c\u0007\u009b\u0002\u0002\u259c\u259d\u0007",
- "\u033c\u0002\u0002\u259d\u259e\u0005\u0336\u019c\u0002\u259e\u259f\u0007",
- "\u033d\u0002\u0002\u259f\u25a0\u0007\u033d\u0002\u0002\u25a0\u0335\u0003",
- "\u0002\u0002\u0002\u25a1\u25a6\u0005\u039a\u01ce\u0002\u25a2\u25a3\u0007",
- "\u033e\u0002\u0002\u25a3\u25a5\u0005\u039a\u01ce\u0002\u25a4\u25a2\u0003",
- "\u0002\u0002\u0002\u25a5\u25a8\u0003\u0002\u0002\u0002\u25a6\u25a4\u0003",
- "\u0002\u0002\u0002\u25a6\u25a7\u0003\u0002\u0002\u0002\u25a7\u0337\u0003",
- "\u0002\u0002\u0002\u25a8\u25a6\u0003\u0002\u0002\u0002\u25a9\u25ab\u0005",
- "\u038e\u01c8\u0002\u25aa\u25ac\u0005\u0358\u01ad\u0002\u25ab\u25aa\u0003",
- "\u0002\u0002\u0002\u25ab\u25ac\u0003\u0002\u0002\u0002\u25ac\u0339\u0003",
- "\u0002\u0002\u0002\u25ad\u25ae\u0007\u00ea\u0002\u0002\u25ae\u25af\u0007",
- "\u033c\u0002\u0002\u25af\u25b0\u0007\u0326\u0002\u0002\u25b0\u25b1\u0007",
- "\u033e\u0002\u0002\u25b1\u25b2\u0007\u0326\u0002\u0002\u25b2\u25b3\u0007",
- "\u033e\u0002\u0002\u25b3\u25b4\u0007\u0326\u0002\u0002\u25b4\u25c8\u0007",
- "\u033d\u0002\u0002\u25b5\u25b6\u0007\u00ea\u0002\u0002\u25b6\u25b7\u0007",
- "\u033c\u0002\u0002\u25b7\u25b8\u0007%\u0002\u0002\u25b8\u25b9\u0007",
- "\u0326\u0002\u0002\u25b9\u25c3\u0007\u033e\u0002\u0002\u25ba\u25bf\u0005",
- "\u033c\u019f\u0002\u25bb\u25bc\u0007\u033e\u0002\u0002\u25bc\u25be\u0005",
- "\u033c\u019f\u0002\u25bd\u25bb\u0003\u0002\u0002\u0002\u25be\u25c1\u0003",
- "\u0002\u0002\u0002\u25bf\u25bd\u0003\u0002\u0002\u0002\u25bf\u25c0\u0003",
- "\u0002\u0002\u0002\u25c0\u25c4\u0003\u0002\u0002\u0002\u25c1\u25bf\u0003",
- "\u0002\u0002\u0002\u25c2\u25c4\u0005\u03c6\u01e4\u0002\u25c3\u25ba\u0003",
- "\u0002\u0002\u0002\u25c3\u25c2\u0003\u0002\u0002\u0002\u25c4\u25c5\u0003",
- "\u0002\u0002\u0002\u25c5\u25c6\u0007\u033d\u0002\u0002\u25c6\u25c8\u0003",
- "\u0002\u0002\u0002\u25c7\u25ad\u0003\u0002\u0002\u0002\u25c7\u25b5\u0003",
- "\u0002\u0002\u0002\u25c8\u033b\u0003\u0002\u0002\u0002\u25c9\u25ca\u0005",
- "\u03c6\u01e4\u0002\u25ca\u25cb\u0007\u032a\u0002\u0002\u25cb\u25cc\t",
- "\u0018\u0002\u0002\u25cc\u033d\u0003\u0002\u0002\u0002\u25cd\u25d8\u0005",
- "\u02e4\u0173\u0002\u25ce\u25cf\u0007\u033c\u0002\u0002\u25cf\u25d0\u0005",
- "\u02e4\u0173\u0002\u25d0\u25d1\u0007\u033d\u0002\u0002\u25d1\u25d8\u0003",
- "\u0002\u0002\u0002\u25d2\u25d8\u0005\u0364\u01b3\u0002\u25d3\u25d4\u0007",
- "\u033c\u0002\u0002\u25d4\u25d5\u0005\u0364\u01b3\u0002\u25d5\u25d6\u0007",
- "\u033d\u0002\u0002\u25d6\u25d8\u0003\u0002\u0002\u0002\u25d7\u25cd\u0003",
- "\u0002\u0002\u0002\u25d7\u25ce\u0003\u0002\u0002\u0002\u25d7\u25d2\u0003",
- "\u0002\u0002\u0002\u25d7\u25d3\u0003\u0002\u0002\u0002\u25d8\u033f\u0003",
- "\u0002\u0002\u0002\u25d9\u25da\u0007\u01a5\u0002\u0002\u25da\u25db\u0007",
- "\u033c\u0002\u0002\u25db\u25dc\u0007\u0341\u0002\u0002\u25dc\u266c\u0007",
- "\u033d\u0002\u0002\u25dd\u25de\u0007\u01ad\u0002\u0002\u25de\u25df\u0007",
- "\u033c\u0002\u0002\u25df\u25e0\u0005\u02d8\u016d\u0002\u25e0\u25e1\u0007",
- "\u0010\u0002\u0002\u25e1\u25e2\u0005\u03be\u01e0\u0002\u25e2\u25e3\u0007",
- "\u033d\u0002\u0002\u25e3\u266c\u0003\u0002\u0002\u0002\u25e4\u25e5\u0007",
- "G\u0002\u0002\u25e5\u25e6\u0007\u033c\u0002\u0002\u25e6\u25e7\u0005",
- "\u03be\u01e0\u0002\u25e7\u25e8\u0007\u033e\u0002\u0002\u25e8\u25eb\u0005",
- "\u02d8\u016d\u0002\u25e9\u25ea\u0007\u033e\u0002\u0002\u25ea\u25ec\u0005",
- "\u02d8\u016d\u0002\u25eb\u25e9\u0003\u0002\u0002\u0002\u25eb\u25ec\u0003",
- "\u0002\u0002\u0002\u25ec\u25ed\u0003\u0002\u0002\u0002\u25ed\u25ee\u0007",
- "\u033d\u0002\u0002\u25ee\u266c\u0003\u0002\u0002\u0002\u25ef\u25f0\u0007",
- "\u01b2\u0002\u0002\u25f0\u25f1\u0007\u033c\u0002\u0002\u25f1\u25f2\u0007",
- "\u0341\u0002\u0002\u25f2\u266c\u0007\u033d\u0002\u0002\u25f3\u25f4\u0007",
- "6\u0002\u0002\u25f4\u25f5\u0007\u033c\u0002\u0002\u25f5\u25f6\u0005",
- "\u0366\u01b4\u0002\u25f6\u25f7\u0007\u033d\u0002\u0002\u25f7\u266c\u0003",
- "\u0002\u0002\u0002\u25f8\u266c\u0007N\u0002\u0002\u25f9\u266c\u0007",
- "O\u0002\u0002\u25fa\u25fb\u0007\u01ca\u0002\u0002\u25fb\u25fc\u0007",
- "\u033c\u0002\u0002\u25fc\u25fd\u0007\u0323\u0002\u0002\u25fd\u25fe\u0007",
- "\u033e\u0002\u0002\u25fe\u25ff\u0005\u02d8\u016d\u0002\u25ff\u2600\u0007",
- "\u033e\u0002\u0002\u2600\u2601\u0005\u02d8\u016d\u0002\u2601\u2602\u0007",
- "\u033d\u0002\u0002\u2602\u266c\u0003\u0002\u0002\u0002\u2603\u2604\u0007",
- "\u01cb\u0002\u0002\u2604\u2605\u0007\u033c\u0002\u0002\u2605\u2606\u0007",
- "\u0323\u0002\u0002\u2606\u2607\u0007\u033e\u0002\u0002\u2607\u2608\u0005",
- "\u02d8\u016d\u0002\u2608\u2609\u0007\u033e\u0002\u0002\u2609\u260a\u0005",
- "\u02d8\u016d\u0002\u260a\u260b\u0007\u033d\u0002\u0002\u260b\u266c\u0003",
- "\u0002\u0002\u0002\u260c\u260d\u0007\u01cc\u0002\u0002\u260d\u260e\u0007",
- "\u033c\u0002\u0002\u260e\u260f\u0007\u0323\u0002\u0002\u260f\u2610\u0007",
- "\u033e\u0002\u0002\u2610\u2611\u0005\u02d8\u016d\u0002\u2611\u2612\u0007",
- "\u033d\u0002\u0002\u2612\u266c\u0003\u0002\u0002\u0002\u2613\u2614\u0007",
- "\u01cd\u0002\u0002\u2614\u2615\u0007\u033c\u0002\u0002\u2615\u2616\u0007",
- "\u0323\u0002\u0002\u2616\u2617\u0007\u033e\u0002\u0002\u2617\u2618\u0005",
- "\u02d8\u016d\u0002\u2618\u2619\u0007\u033d\u0002\u0002\u2619\u266c\u0003",
- "\u0002\u0002\u0002\u261a\u261b\u0007\u020b\u0002\u0002\u261b\u261c\u0007",
- "\u033c\u0002\u0002\u261c\u266c\u0007\u033d\u0002\u0002\u261d\u261e\u0007",
- "\u020c\u0002\u0002\u261e\u261f\u0007\u033c\u0002\u0002\u261f\u266c\u0007",
- "\u033d\u0002\u0002\u2620\u2621\u0007\u0096\u0002\u0002\u2621\u2622\u0007",
- "\u033c\u0002\u0002\u2622\u2625\u0005\u03be\u01e0\u0002\u2623\u2624\u0007",
- "\u033e\u0002\u0002\u2624\u2626\u0007\u0322\u0002\u0002\u2625\u2623\u0003",
- "\u0002\u0002\u0002\u2625\u2626\u0003\u0002\u0002\u0002\u2626\u2629\u0003",
- "\u0002\u0002\u0002\u2627\u2628\u0007\u033e\u0002\u0002\u2628\u262a\u0007",
- "\u0322\u0002\u0002\u2629\u2627\u0003\u0002\u0002\u0002\u2629\u262a\u0003",
- "\u0002\u0002\u0002\u262a\u262b\u0003\u0002\u0002\u0002\u262b\u262c\u0007",
- "\u033d\u0002\u0002\u262c\u266c\u0003\u0002\u0002\u0002\u262d\u266c\u0007",
- "\u0252\u0002\u0002\u262e\u262f\u0007\u00e0\u0002\u0002\u262f\u2630\u0007",
- "\u033c\u0002\u0002\u2630\u2631\u0005\u02d8\u016d\u0002\u2631\u2632\u0007",
- "\u033e\u0002\u0002\u2632\u2633\u0005\u02d8\u016d\u0002\u2633\u2634\u0007",
- "\u033d\u0002\u0002\u2634\u266c\u0003\u0002\u0002\u0002\u2635\u2636\u0007",
- "\u02e6\u0002\u0002\u2636\u2637\u0007\u033c\u0002\u0002\u2637\u2638\u0005",
- "\u02d8\u016d\u0002\u2638\u2639\u0007\u033e\u0002\u0002\u2639\u263a\u0007",
- "\u0322\u0002\u0002\u263a\u263b\u0007\u033e\u0002\u0002\u263b\u263c\u0007",
- "\u0322\u0002\u0002\u263c\u263d\u0007\u033e\u0002\u0002\u263d\u263e\u0005",
- "\u02d8\u016d\u0002\u263e\u263f\u0007\u033d\u0002\u0002\u263f\u266c\u0003",
- "\u0002\u0002\u0002\u2640\u266c\u0007\u013a\u0002\u0002\u2641\u266c\u0007",
- "\u0152\u0002\u0002\u2642\u2643\u0007\u00a9\u0002\u0002\u2643\u2644\u0007",
- "\u033c\u0002\u0002\u2644\u2645\u0005\u02d8\u016d\u0002\u2645\u2646\u0007",
- "\u033e\u0002\u0002\u2646\u2647\u0005\u02d8\u016d\u0002\u2647\u2648\u0007",
- "\u033d\u0002\u0002\u2648\u266c\u0003\u0002\u0002\u0002\u2649\u266c\u0005",
- "\u0342\u01a2\u0002\u264a\u264b\u0007\u009a\u0002\u0002\u264b\u264c\u0007",
- "\u033c\u0002\u0002\u264c\u264d\u0005\u02ee\u0178\u0002\u264d\u264e\u0007",
- "\u033e\u0002\u0002\u264e\u264f\u0005\u02d8\u016d\u0002\u264f\u2650\u0007",
- "\u033e\u0002\u0002\u2650\u2651\u0005\u02d8\u016d\u0002\u2651\u2652\u0007",
- "\u033d\u0002\u0002\u2652\u266c\u0003\u0002\u0002\u0002\u2653\u266c\u0005",
- "\u0368\u01b5\u0002\u2654\u266c\u0005\u036a\u01b6\u0002\u2655\u266c\u0005",
- "\u036c\u01b7\u0002\u2656\u2657\u0005\u03aa\u01d6\u0002\u2657\u2659\u0007",
- "\u033c\u0002\u0002\u2658\u265a\u0005\u0366\u01b4\u0002\u2659\u2658\u0003",
- "\u0002\u0002\u0002\u2659\u265a\u0003\u0002\u0002\u0002\u265a\u265b\u0003",
- "\u0002\u0002\u0002\u265b\u265c\u0007\u033d\u0002\u0002\u265c\u266c\u0003",
- "\u0002\u0002\u0002\u265d\u265e\u0007\u02e5\u0002\u0002\u265e\u265f\u0007",
- "\u033c\u0002\u0002\u265f\u2660\u0005\u02d8\u016d\u0002\u2660\u2661\u0007",
- "\u033e\u0002\u0002\u2661\u2662\u0005\u02d8\u016d\u0002\u2662\u2669\u0007",
- "\u033d\u0002\u0002\u2663\u2664\u0007\u017a\u0002\u0002\u2664\u2665\u0007",
- "\u0092\u0002\u0002\u2665\u2666\u0007\u033c\u0002\u0002\u2666\u2667\u0005",
- "\u0302\u0182\u0002\u2667\u2668\u0007\u033d\u0002\u0002\u2668\u266a\u0003",
- "\u0002\u0002\u0002\u2669\u2663\u0003\u0002\u0002\u0002\u2669\u266a\u0003",
- "\u0002\u0002\u0002\u266a\u266c\u0003\u0002\u0002\u0002\u266b\u25d9\u0003",
- "\u0002\u0002\u0002\u266b\u25dd\u0003\u0002\u0002\u0002\u266b\u25e4\u0003",
- "\u0002\u0002\u0002\u266b\u25ef\u0003\u0002\u0002\u0002\u266b\u25f3\u0003",
- "\u0002\u0002\u0002\u266b\u25f8\u0003\u0002\u0002\u0002\u266b\u25f9\u0003",
- "\u0002\u0002\u0002\u266b\u25fa\u0003\u0002\u0002\u0002\u266b\u2603\u0003",
- "\u0002\u0002\u0002\u266b\u260c\u0003\u0002\u0002\u0002\u266b\u2613\u0003",
- "\u0002\u0002\u0002\u266b\u261a\u0003\u0002\u0002\u0002\u266b\u261d\u0003",
- "\u0002\u0002\u0002\u266b\u2620\u0003\u0002\u0002\u0002\u266b\u262d\u0003",
- "\u0002\u0002\u0002\u266b\u262e\u0003\u0002\u0002\u0002\u266b\u2635\u0003",
- "\u0002\u0002\u0002\u266b\u2640\u0003\u0002\u0002\u0002\u266b\u2641\u0003",
- "\u0002\u0002\u0002\u266b\u2642\u0003\u0002\u0002\u0002\u266b\u2649\u0003",
- "\u0002\u0002\u0002\u266b\u264a\u0003\u0002\u0002\u0002\u266b\u2653\u0003",
- "\u0002\u0002\u0002\u266b\u2654\u0003\u0002\u0002\u0002\u266b\u2655\u0003",
- "\u0002\u0002\u0002\u266b\u2656\u0003\u0002\u0002\u0002\u266b\u265d\u0003",
- "\u0002\u0002\u0002\u266c\u0341\u0003\u0002\u0002\u0002\u266d\u2673\u0005",
- "\u0344\u01a3\u0002\u266e\u2673\u0005\u0346\u01a4\u0002\u266f\u2673\u0005",
- "\u0348\u01a5\u0002\u2670\u2673\u0005\u034a\u01a6\u0002\u2671\u2673\u0005",
- "\u034c\u01a7\u0002\u2672\u266d\u0003\u0002\u0002\u0002\u2672\u266e\u0003",
- "\u0002\u0002\u0002\u2672\u266f\u0003\u0002\u0002\u0002\u2672\u2670\u0003",
- "\u0002\u0002\u0002\u2672\u2671\u0003\u0002\u0002\u0002\u2673\u0343\u0003",
- "\u0002\u0002\u0002\u2674\u2679\u0007\u0321\u0002\u0002\u2675\u2679\u0007",
- "\u0323\u0002\u0002\u2676\u2679\u0007r\u0002\u0002\u2677\u2679\u0005",
- "\u0346\u01a4\u0002\u2678\u2674\u0003\u0002\u0002\u0002\u2678\u2675\u0003",
- "\u0002\u0002\u0002\u2678\u2676\u0003\u0002\u0002\u0002\u2678\u2677\u0003",
- "\u0002\u0002\u0002\u2679\u267a\u0003\u0002\u0002\u0002\u267a\u267b\u0007",
- "\u0337\u0002\u0002\u267b\u267c\u0007\u030b\u0002\u0002\u267c\u267d\u0007",
- "\u033c\u0002\u0002\u267d\u267e\u0007\u0326\u0002\u0002\u267e\u267f\u0007",
- "\u033e\u0002\u0002\u267f\u2680\u0007\u0326\u0002\u0002\u2680\u26a0\u0007",
- "\u033d\u0002\u0002\u2681\u2686\u0007\u0321\u0002\u0002\u2682\u2686\u0007",
- "\u0323\u0002\u0002\u2683\u2686\u0007r\u0002\u0002\u2684\u2686\u0005",
- "\u0346\u01a4\u0002\u2685\u2681\u0003\u0002\u0002\u0002\u2685\u2682\u0003",
- "\u0002\u0002\u0002\u2685\u2683\u0003\u0002\u0002\u0002\u2685\u2684\u0003",
- "\u0002\u0002\u0002\u2686\u2687\u0003\u0002\u0002\u0002\u2687\u2688\u0007",
- "\u0337\u0002\u0002\u2688\u2689\u0007\u02b9\u0002\u0002\u2689\u268a\u0007",
- "\u0337\u0002\u0002\u268a\u268b\u0007\u030b\u0002\u0002\u268b\u268c\u0007",
- "\u033c\u0002\u0002\u268c\u268d\u0007\u0326\u0002\u0002\u268d\u268e\u0007",
- "\u033e\u0002\u0002\u268e\u268f\u0007\u0326\u0002\u0002\u268f\u26a0\u0007",
- "\u033d\u0002\u0002\u2690\u2695\u0007\u0321\u0002\u0002\u2691\u2695\u0007",
- "\u0323\u0002\u0002\u2692\u2695\u0007r\u0002\u0002\u2693\u2695\u0005",
- "\u0346\u01a4\u0002\u2694\u2690\u0003\u0002\u0002\u0002\u2694\u2691\u0003",
- "\u0002\u0002\u0002\u2694\u2692\u0003\u0002\u0002\u0002\u2694\u2693\u0003",
- "\u0002\u0002\u0002\u2695\u2696\u0003\u0002\u0002\u0002\u2696\u2697\u0007",
- "\u0337\u0002\u0002\u2697\u2698\u0007\u00f2\u0002\u0002\u2698\u2699\u0007",
- "\u0337\u0002\u0002\u2699\u269a\u0007\u030b\u0002\u0002\u269a\u269b\u0007",
- "\u033c\u0002\u0002\u269b\u269c\u0007\u0326\u0002\u0002\u269c\u269d\u0007",
- "\u033e\u0002\u0002\u269d\u269e\u0007\u0326\u0002\u0002\u269e\u26a0\u0007",
- "\u033d\u0002\u0002\u269f\u2678\u0003\u0002\u0002\u0002\u269f\u2685\u0003",
- "\u0002\u0002\u0002\u269f\u2694\u0003\u0002\u0002\u0002\u26a0\u0345\u0003",
- "\u0002\u0002\u0002\u26a1\u26a5\u0007\u0321\u0002\u0002\u26a2\u26a5\u0007",
- "\u0323\u0002\u0002\u26a3\u26a5\u0005\u038c\u01c7\u0002\u26a4\u26a1\u0003",
- "\u0002\u0002\u0002\u26a4\u26a2\u0003\u0002\u0002\u0002\u26a4\u26a3\u0003",
- "\u0002\u0002\u0002\u26a5\u26a6\u0003\u0002\u0002\u0002\u26a6\u26a7\u0007",
- "\u0337\u0002\u0002\u26a7\u26a8\u0007\u0293\u0002\u0002\u26a8\u26a9\u0007",
- "\u033c\u0002\u0002\u26a9\u26aa\u0007\u0326\u0002\u0002\u26aa\u26b8\u0007",
- "\u033d\u0002\u0002\u26ab\u26af\u0007\u0321\u0002\u0002\u26ac\u26af\u0007",
- "\u0323\u0002\u0002\u26ad\u26af\u0005\u038c\u01c7\u0002\u26ae\u26ab\u0003",
- "\u0002\u0002\u0002\u26ae\u26ac\u0003\u0002\u0002\u0002\u26ae\u26ad\u0003",
- "\u0002\u0002\u0002\u26af\u26b0\u0003\u0002\u0002\u0002\u26b0\u26b1\u0007",
- "\u0337\u0002\u0002\u26b1\u26b2\u0007\u02b9\u0002\u0002\u26b2\u26b3\u0007",
- "\u0337\u0002\u0002\u26b3\u26b4\u0007\u0293\u0002\u0002\u26b4\u26b5\u0007",
- "\u033c\u0002\u0002\u26b5\u26b6\u0007\u0326\u0002\u0002\u26b6\u26b8\u0007",
- "\u033d\u0002\u0002\u26b7\u26a4\u0003\u0002\u0002\u0002\u26b7\u26ae\u0003",
- "\u0002\u0002\u0002\u26b8\u0347\u0003\u0002\u0002\u0002\u26b9\u26ba\t",
- "|\u0002\u0002\u26ba\u26bb\u0007\u0337\u0002\u0002\u26bb\u26bc\u0007",
- "\u01f1\u0002\u0002\u26bc\u26bd\u0007\u033c\u0002\u0002\u26bd\u26be\u0007",
- "\u0326\u0002\u0002\u26be\u26bf\u0007\u033d\u0002\u0002\u26bf\u0349\u0003",
- "\u0002\u0002\u0002\u26c0\u26c1\t|\u0002\u0002\u26c1\u26c2\u0007\u0337",
- "\u0002\u0002\u26c2\u26c3\u0007\u025a\u0002\u0002\u26c3\u26c4\u0007\u033c",
- "\u0002\u0002\u26c4\u26c5\u0007\u0326\u0002\u0002\u26c5\u26c6\u0007\u033d",
- "\u0002\u0002\u26c6\u034b\u0003\u0002\u0002\u0002\u26c7\u26c8\t|\u0002",
- "\u0002\u26c8\u26c9\u0007\u0337\u0002\u0002\u26c9\u26ca\u0007\u0267\u0002",
- "\u0002\u26ca\u26cb\u0007\u033c\u0002\u0002\u26cb\u26cc\u0007\u0326\u0002",
- "\u0002\u26cc\u26cd\u0007\u033d\u0002\u0002\u26cd\u034d\u0003\u0002\u0002",
- "\u0002\u26ce\u26cf\u0007\u0175\u0002\u0002\u26cf\u26d0\u0005\u02d8\u016d",
- "\u0002\u26d0\u26d1\u0007\u0159\u0002\u0002\u26d1\u26d2\u0005\u02d8\u016d",
- "\u0002\u26d2\u034f\u0003\u0002\u0002\u0002\u26d3\u26d4\u0007\u0175\u0002",
- "\u0002\u26d4\u26d5\u0005\u02ee\u0178\u0002\u26d5\u26d6\u0007\u0159\u0002",
- "\u0002\u26d6\u26d7\u0005\u02d8\u016d\u0002\u26d7\u0351\u0003\u0002\u0002",
- "\u0002\u26d8\u26da\u0007\u0010\u0002\u0002\u26d9\u26d8\u0003\u0002\u0002",
- "\u0002\u26d9\u26da\u0003\u0002\u0002\u0002\u26da\u26db\u0003\u0002\u0002",
- "\u0002\u26db\u26dc\u0005\u0362\u01b2\u0002\u26dc\u0353\u0003\u0002\u0002",
- "\u0002\u26dd\u26df\u0007\u0010\u0002\u0002\u26de\u26dd\u0003\u0002\u0002",
- "\u0002\u26de\u26df\u0003\u0002\u0002\u0002\u26df\u26e0\u0003\u0002\u0002",
- "\u0002\u26e0\u26e1\u0005\u0356\u01ac\u0002\u26e1\u0355\u0003\u0002\u0002",
- "\u0002\u26e2\u26e4\u0005\u03c6\u01e4\u0002\u26e3\u26e5\u0005\u0358\u01ad",
- "\u0002\u26e4\u26e3\u0003\u0002\u0002\u0002\u26e4\u26e5\u0003\u0002\u0002",
- "\u0002\u26e5\u0357\u0003\u0002\u0002\u0002\u26e6\u26e8\u0007\u0179\u0002",
- "\u0002\u26e7\u26e6\u0003\u0002\u0002\u0002\u26e7\u26e8\u0003\u0002\u0002",
- "\u0002\u26e8\u26e9\u0003\u0002\u0002\u0002\u26e9\u26ea\u0007\u033c\u0002",
- "\u0002\u26ea\u26f1\u0005\u035c\u01af\u0002\u26eb\u26ed\u0007\u033e\u0002",
- "\u0002\u26ec\u26eb\u0003\u0002\u0002\u0002\u26ec\u26ed\u0003\u0002\u0002",
- "\u0002\u26ed\u26ee\u0003\u0002\u0002\u0002\u26ee\u26f0\u0005\u035c\u01af",
- "\u0002\u26ef\u26ec\u0003\u0002\u0002\u0002\u26f0\u26f3\u0003\u0002\u0002",
- "\u0002\u26f1\u26ef\u0003\u0002\u0002\u0002\u26f1\u26f2\u0003\u0002\u0002",
- "\u0002\u26f2\u26f4\u0003\u0002\u0002\u0002\u26f3\u26f1\u0003\u0002\u0002",
- "\u0002\u26f4\u26f5\u0007\u033d\u0002\u0002\u26f5\u0359\u0003\u0002\u0002",
- "\u0002\u26f6\u26f7\u0007\u0179\u0002\u0002\u26f7\u26f8\u0007\u033c\u0002",
- "\u0002\u26f8\u26ff\u0005\u035c\u01af\u0002\u26f9\u26fb\u0007\u033e\u0002",
- "\u0002\u26fa\u26f9\u0003\u0002\u0002\u0002\u26fa\u26fb\u0003\u0002\u0002",
- "\u0002\u26fb\u26fc\u0003\u0002\u0002\u0002\u26fc\u26fe\u0005\u035c\u01af",
- "\u0002\u26fd\u26fa\u0003\u0002\u0002\u0002\u26fe\u2701\u0003\u0002\u0002",
- "\u0002\u26ff\u26fd\u0003\u0002\u0002\u0002\u26ff\u2700\u0003\u0002\u0002",
- "\u0002\u2700\u2702\u0003\u0002\u0002\u0002\u2701\u26ff\u0003\u0002\u0002",
- "\u0002\u2702\u2703\u0007\u033d\u0002\u0002\u2703\u035b\u0003\u0002\u0002",
- "\u0002\u2704\u2706\u0007\u0268\u0002\u0002\u2705\u2704\u0003\u0002\u0002",
- "\u0002\u2705\u2706\u0003\u0002\u0002\u0002\u2706\u2737\u0003\u0002\u0002",
- "\u0002\u2707\u271b\u0007\u009e\u0002\u0002\u2708\u2709\u0007\u033c\u0002",
- "\u0002\u2709\u270e\u0005\u035e\u01b0\u0002\u270a\u270b\u0007\u033e\u0002",
- "\u0002\u270b\u270d\u0005\u035e\u01b0\u0002\u270c\u270a\u0003\u0002\u0002",
- "\u0002\u270d\u2710\u0003\u0002\u0002\u0002\u270e\u270c\u0003\u0002\u0002",
- "\u0002\u270e\u270f\u0003\u0002\u0002\u0002\u270f\u2711\u0003\u0002\u0002",
- "\u0002\u2710\u270e\u0003\u0002\u0002\u0002\u2711\u2712\u0007\u033d\u0002",
- "\u0002\u2712\u271c\u0003\u0002\u0002\u0002\u2713\u2718\u0005\u035e\u01b0",
- "\u0002\u2714\u2715\u0007\u033e\u0002\u0002\u2715\u2717\u0005\u035e\u01b0",
- "\u0002\u2716\u2714\u0003\u0002\u0002\u0002\u2717\u271a\u0003\u0002\u0002",
- "\u0002\u2718\u2716\u0003\u0002\u0002\u0002\u2718\u2719\u0003\u0002\u0002",
- "\u0002\u2719\u271c\u0003\u0002\u0002\u0002\u271a\u2718\u0003\u0002\u0002",
- "\u0002\u271b\u2708\u0003\u0002\u0002\u0002\u271b\u2713\u0003\u0002\u0002",
- "\u0002\u271c\u2738\u0003\u0002\u0002\u0002\u271d\u271e\u0007\u009e\u0002",
- "\u0002\u271e\u271f\u0007\u032a\u0002\u0002\u271f\u2738\u0005\u035e\u01b0",
- "\u0002\u2720\u272f\u0007\u0086\u0002\u0002\u2721\u2722\u0007\u033c\u0002",
- "\u0002\u2722\u2723\u0005\u035e\u01b0\u0002\u2723\u2724\u0007\u033c\u0002",
- "\u0002\u2724\u2729\u0007\u0323\u0002\u0002\u2725\u2726\u0007\u033e\u0002",
- "\u0002\u2726\u2728\u0007\u0323\u0002\u0002\u2727\u2725\u0003\u0002\u0002",
- "\u0002\u2728\u272b\u0003\u0002\u0002\u0002\u2729\u2727\u0003\u0002\u0002",
- "\u0002\u2729\u272a\u0003\u0002\u0002\u0002\u272a\u272c\u0003\u0002\u0002",
- "\u0002\u272b\u2729\u0003\u0002\u0002\u0002\u272c\u272d\u0007\u033d\u0002",
- "\u0002\u272d\u272e\u0007\u033d\u0002\u0002\u272e\u2730\u0003\u0002\u0002",
- "\u0002\u272f\u2721\u0003\u0002\u0002\u0002\u272f\u2730\u0003\u0002\u0002",
- "\u0002\u2730\u2738\u0003\u0002\u0002\u0002\u2731\u2738\u0007\u02d0\u0002",
- "\u0002\u2732\u2738\u0007\u02da\u0002\u0002\u2733\u2734\u0007\u02db\u0002",
- "\u0002\u2734\u2735\u0007\u032a\u0002\u0002\u2735\u2738\u0007\u0322\u0002",
- "\u0002\u2736\u2738\u0007\u0323\u0002\u0002\u2737\u2707\u0003\u0002\u0002",
- "\u0002\u2737\u271d\u0003\u0002\u0002\u0002\u2737\u2720\u0003\u0002\u0002",
- "\u0002\u2737\u2731\u0003\u0002\u0002\u0002\u2737\u2732\u0003\u0002\u0002",
- "\u0002\u2737\u2733\u0003\u0002\u0002\u0002\u2737\u2736\u0003\u0002\u0002",
- "\u0002\u2738\u035d\u0003\u0002\u0002\u0002\u2739\u273c\u0005\u03c6\u01e4",
- "\u0002\u273a\u273c\u0007\u0322\u0002\u0002\u273b\u2739\u0003\u0002\u0002",
- "\u0002\u273b\u273a\u0003\u0002\u0002\u0002\u273c\u035f\u0003\u0002\u0002",
- "\u0002\u273d\u273e\u0007\u033c\u0002\u0002\u273e\u2743\u0005\u0362\u01b2",
- "\u0002\u273f\u2740\u0007\u033e\u0002\u0002\u2740\u2742\u0005\u0362\u01b2",
- "\u0002\u2741\u273f\u0003\u0002\u0002\u0002\u2742\u2745\u0003\u0002\u0002",
- "\u0002\u2743\u2741\u0003\u0002\u0002\u0002\u2743\u2744\u0003\u0002\u0002",
- "\u0002\u2744\u2746\u0003\u0002\u0002\u0002\u2745\u2743\u0003\u0002\u0002",
- "\u0002\u2746\u2747\u0007\u033d\u0002\u0002\u2747\u0361\u0003\u0002\u0002",
- "\u0002\u2748\u274b\u0005\u03c6\u01e4\u0002\u2749\u274b\u0007\u0326\u0002",
- "\u0002\u274a\u2748\u0003\u0002\u0002\u0002\u274a\u2749\u0003\u0002\u0002",
- "\u0002\u274b\u0363\u0003\u0002\u0002\u0002\u274c\u274d\u0007\u016f\u0002",
- "\u0002\u274d\u274e\u0007\u033c\u0002\u0002\u274e\u274f\u0005\u0366\u01b4",
- "\u0002\u274f\u2757\u0007\u033d\u0002\u0002\u2750\u2751\u0007\u033e\u0002",
- "\u0002\u2751\u2752\u0007\u033c\u0002\u0002\u2752\u2753\u0005\u0366\u01b4",
- "\u0002\u2753\u2754\u0007\u033d\u0002\u0002\u2754\u2756\u0003\u0002\u0002",
- "\u0002\u2755\u2750\u0003\u0002\u0002\u0002\u2756\u2759\u0003\u0002\u0002",
- "\u0002\u2757\u2755\u0003\u0002\u0002\u0002\u2757\u2758\u0003\u0002\u0002",
- "\u0002\u2758\u0365\u0003\u0002\u0002\u0002\u2759\u2757\u0003\u0002\u0002",
- "\u0002\u275a\u275f\u0005\u02d8\u016d\u0002\u275b\u275c\u0007\u033e\u0002",
- "\u0002\u275c\u275e\u0005\u02d8\u016d\u0002\u275d\u275b\u0003\u0002\u0002",
- "\u0002\u275e\u2761\u0003\u0002\u0002\u0002\u275f\u275d\u0003\u0002\u0002",
- "\u0002\u275f\u2760\u0003\u0002\u0002\u0002\u2760\u0367\u0003\u0002\u0002",
- "\u0002\u2761\u275f\u0003\u0002\u0002\u0002\u2762\u2763\t}\u0002\u0002",
- "\u2763\u2764\u0007\u033c\u0002\u0002\u2764\u2765\u0007\u033d\u0002\u0002",
- "\u2765\u276d\u0005\u0370\u01b9\u0002\u2766\u2767\u0007\u026d\u0002\u0002",
- "\u2767\u2768\u0007\u033c\u0002\u0002\u2768\u2769\u0005\u02d8\u016d\u0002",
- "\u2769\u276a\u0007\u033d\u0002\u0002\u276a\u276b\u0005\u0370\u01b9\u0002",
- "\u276b\u276d\u0003\u0002\u0002\u0002\u276c\u2762\u0003\u0002\u0002\u0002",
- "\u276c\u2766\u0003\u0002\u0002\u0002\u276d\u0369\u0003\u0002\u0002\u0002",
- "\u276e\u276f\t~\u0002\u0002\u276f\u2770\u0007\u033c\u0002\u0002\u2770",
- "\u2771\u0005\u036e\u01b8\u0002\u2771\u2773\u0007\u033d\u0002\u0002\u2772",
- "\u2774\u0005\u0370\u01b9\u0002\u2773\u2772\u0003\u0002\u0002\u0002\u2773",
- "\u2774\u0003\u0002\u0002\u0002\u2774\u278f\u0003\u0002\u0002\u0002\u2775",
- "\u2776\t\u007f\u0002\u0002\u2776\u2779\u0007\u033c\u0002\u0002\u2777",
- "\u277a\u0007\u0341\u0002\u0002\u2778\u277a\u0005\u036e\u01b8\u0002\u2779",
- "\u2777\u0003\u0002\u0002\u0002\u2779\u2778\u0003\u0002\u0002\u0002\u277a",
- "\u277b\u0003\u0002\u0002\u0002\u277b\u277d\u0007\u033d\u0002\u0002\u277c",
- "\u277e\u0005\u0370\u01b9\u0002\u277d\u277c\u0003\u0002\u0002\u0002\u277d",
- "\u277e\u0003\u0002\u0002\u0002\u277e\u278f\u0003\u0002\u0002\u0002\u277f",
- "\u2780\u0007\u01b3\u0002\u0002\u2780\u2781\u0007\u033c\u0002\u0002\u2781",
- "\u2782\u0005\u036e\u01b8\u0002\u2782\u2783\u0007\u033d\u0002\u0002\u2783",
- "\u278f\u0003\u0002\u0002\u0002\u2784\u2785\u0007\u0210\u0002\u0002\u2785",
- "\u2786\u0007\u033c\u0002\u0002\u2786\u2787\u0005\u02d8\u016d\u0002\u2787",
- "\u2788\u0007\u033d\u0002\u0002\u2788\u278f\u0003\u0002\u0002\u0002\u2789",
- "\u278a\u0007\u0211\u0002\u0002\u278a\u278b\u0007\u033c\u0002\u0002\u278b",
- "\u278c\u0005\u0366\u01b4\u0002\u278c\u278d\u0007\u033d\u0002\u0002\u278d",
- "\u278f\u0003\u0002\u0002\u0002\u278e\u276e\u0003\u0002\u0002\u0002\u278e",
- "\u2775\u0003\u0002\u0002\u0002\u278e\u277f\u0003\u0002\u0002\u0002\u278e",
- "\u2784\u0003\u0002\u0002\u0002\u278e\u2789\u0003\u0002\u0002\u0002\u278f",
- "\u036b\u0003\u0002\u0002\u0002\u2790\u2791\t\u0080\u0002\u0002\u2791",
- "\u2792\u0007\u033c\u0002\u0002\u2792\u2793\u0005\u02d8\u016d\u0002\u2793",
- "\u2794\u0007\u033d\u0002\u0002\u2794\u2795\u0005\u0370\u01b9\u0002\u2795",
- "\u27a5\u0003\u0002\u0002\u0002\u2796\u2797\t\u0081\u0002\u0002\u2797",
- "\u2798\u0007\u033c\u0002\u0002\u2798\u279f\u0005\u02d8\u016d\u0002\u2799",
- "\u279a\u0007\u033e\u0002\u0002\u279a\u279d\u0005\u02d8\u016d\u0002\u279b",
- "\u279c\u0007\u033e\u0002\u0002\u279c\u279e\u0005\u02d8\u016d\u0002\u279d",
- "\u279b\u0003\u0002\u0002\u0002\u279d\u279e\u0003\u0002\u0002\u0002\u279e",
- "\u27a0\u0003\u0002\u0002\u0002\u279f\u2799\u0003\u0002\u0002\u0002\u279f",
- "\u27a0\u0003\u0002\u0002\u0002\u27a0\u27a1\u0003\u0002\u0002\u0002\u27a1",
- "\u27a2\u0007\u033d\u0002\u0002\u27a2\u27a3\u0005\u0370\u01b9\u0002\u27a3",
- "\u27a5\u0003\u0002\u0002\u0002\u27a4\u2790\u0003\u0002\u0002\u0002\u27a4",
- "\u2796\u0003\u0002\u0002\u0002\u27a5\u036d\u0003\u0002\u0002\u0002\u27a6",
- "\u27a8\to\u0002\u0002\u27a7\u27a6\u0003\u0002\u0002\u0002\u27a7\u27a8",
- "\u0003\u0002\u0002\u0002\u27a8\u27a9\u0003\u0002\u0002\u0002\u27a9\u27aa",
- "\u0005\u02d8\u016d\u0002\u27aa\u036f\u0003\u0002\u0002\u0002\u27ab\u27ac",
- "\u0007\u00f0\u0002\u0002\u27ac\u27b0\u0007\u033c\u0002\u0002\u27ad\u27ae",
- "\u0007\u0280\u0002\u0002\u27ae\u27af\u0007&\u0002\u0002\u27af\u27b1",
- "\u0005\u0366\u01b4\u0002\u27b0\u27ad\u0003\u0002\u0002\u0002\u27b0\u27b1",
- "\u0003\u0002\u0002\u0002\u27b1\u27b3\u0003\u0002\u0002\u0002\u27b2\u27b4",
- "\u0005\u0302\u0182\u0002\u27b3\u27b2\u0003\u0002\u0002\u0002\u27b3\u27b4",
- "\u0003\u0002\u0002\u0002\u27b4\u27b6\u0003\u0002\u0002\u0002\u27b5\u27b7",
- "\u0005\u0372\u01ba\u0002\u27b6\u27b5\u0003\u0002\u0002\u0002\u27b6\u27b7",
- "\u0003\u0002\u0002\u0002\u27b7\u27b8\u0003\u0002\u0002\u0002\u27b8\u27b9",
- "\u0007\u033d\u0002\u0002\u27b9\u0371\u0003\u0002\u0002\u0002\u27ba\u27bb",
- "\t\u0082\u0002\u0002\u27bb\u27bc\u0005\u0374\u01bb\u0002\u27bc\u0373",
- "\u0003\u0002\u0002\u0002\u27bd\u27c4\u0005\u0378\u01bd\u0002\u27be\u27bf",
- "\u0007\u001d\u0002\u0002\u27bf\u27c0\u0005\u0376\u01bc\u0002\u27c0\u27c1",
- "\u0007\u000b\u0002\u0002\u27c1\u27c2\u0005\u0376\u01bc\u0002\u27c2\u27c4",
- "\u0003\u0002\u0002\u0002\u27c3\u27bd\u0003\u0002\u0002\u0002\u27c3\u27be",
- "\u0003\u0002\u0002\u0002\u27c4\u0375\u0003\u0002\u0002\u0002\u27c5\u27c8",
- "\u0005\u0378\u01bd\u0002\u27c6\u27c8\u0005\u037a\u01be\u0002\u27c7\u27c5",
- "\u0003\u0002\u0002\u0002\u27c7\u27c6\u0003\u0002\u0002\u0002\u27c8\u0377",
- "\u0003\u0002\u0002\u0002\u27c9\u27ca\u0007\u0303\u0002\u0002\u27ca\u27d0",
- "\u0007\u0287\u0002\u0002\u27cb\u27cc\u0007\u0322\u0002\u0002\u27cc\u27d0",
- "\u0007\u0287\u0002\u0002\u27cd\u27ce\u0007K\u0002\u0002\u27ce\u27d0",
- "\u0007\u02b9\u0002\u0002\u27cf\u27c9\u0003\u0002\u0002\u0002\u27cf\u27cb",
- "\u0003\u0002\u0002\u0002\u27cf\u27cd\u0003\u0002\u0002\u0002\u27d0\u0379",
- "\u0003\u0002\u0002\u0002\u27d1\u27d2\u0007\u0303\u0002\u0002\u27d2\u27d6",
- "\u0007\u0202\u0002\u0002\u27d3\u27d4\u0007\u0322\u0002\u0002\u27d4\u27d6",
- "\u0007\u0202\u0002\u0002\u27d5\u27d1\u0003\u0002\u0002\u0002\u27d5\u27d3",
- "\u0003\u0002\u0002\u0002\u27d6\u037b\u0003\u0002\u0002\u0002\u27d7\u27d8",
- "\u0007\u01fe\u0002\u0002\u27d8\u27dd\u0005\u037e\u01c0\u0002\u27d9\u27da",
- "\u0007\u033e\u0002\u0002\u27da\u27dc\u0005\u037e\u01c0\u0002\u27db\u27d9",
- "\u0003\u0002\u0002\u0002\u27dc\u27df\u0003\u0002\u0002\u0002\u27dd\u27db",
- "\u0003\u0002\u0002\u0002\u27dd\u27de\u0003\u0002\u0002\u0002\u27de\u27fa",
- "\u0003\u0002\u0002\u0002\u27df\u27dd\u0003\u0002\u0002\u0002\u27e0\u27e1",
- "\u0007\u01d4\u0002\u0002\u27e1\u27e4\u0007\u032a\u0002\u0002\u27e2\u27e5",
- "\u0005\u03c6\u01e4\u0002\u27e3\u27e5\u0007\u0326\u0002\u0002\u27e4\u27e2",
- "\u0003\u0002\u0002\u0002\u27e4\u27e3\u0003\u0002\u0002\u0002\u27e5\u27fa",
- "\u0003\u0002\u0002\u0002\u27e6\u27e7\u0007\u01d3\u0002\u0002\u27e7\u27ea",
- "\u0007\u032a\u0002\u0002\u27e8\u27eb\u0005\u03c6\u01e4\u0002\u27e9\u27eb",
- "\u0007\u0326\u0002\u0002\u27ea\u27e8\u0003\u0002\u0002\u0002\u27ea\u27e9",
- "\u0003\u0002\u0002\u0002\u27eb\u27fa\u0003\u0002\u0002\u0002\u27ec\u27ed",
- "\u0007\u025e\u0002\u0002\u27ed\u27ee\u0007\u032a\u0002\u0002\u27ee\u27fa",
- "\t\t\u0002\u0002\u27ef\u27f0\u0007\u02fa\u0002\u0002\u27f0\u27f1\u0007",
- "\u032a\u0002\u0002\u27f1\u27fa\t\t\u0002\u0002\u27f2\u27f3\u0007\u0300",
- "\u0002\u0002\u27f3\u27f4\u0007\u032a\u0002\u0002\u27f4\u27fa\u0007\u0322",
- "\u0002\u0002\u27f5\u27f6\u0007\u01cf\u0002\u0002\u27f6\u27fa\t\t\u0002",
- "\u0002\u27f7\u27f8\u0007\u02fd\u0002\u0002\u27f8\u27fa\t\t\u0002\u0002",
- "\u27f9\u27d7\u0003\u0002\u0002\u0002\u27f9\u27e0\u0003\u0002\u0002\u0002",
- "\u27f9\u27e6\u0003\u0002\u0002\u0002\u27f9\u27ec\u0003\u0002\u0002\u0002",
- "\u27f9\u27ef\u0003\u0002\u0002\u0002\u27f9\u27f2\u0003\u0002\u0002\u0002",
- "\u27f9\u27f5\u0003\u0002\u0002\u0002\u27f9\u27f7\u0003\u0002\u0002\u0002",
- "\u27fa\u037d\u0003\u0002\u0002\u0002\u27fb\u2802\u0007\u033c\u0002\u0002",
- "\u27fc\u27fd\u0007\u0269\u0002\u0002\u27fd\u27fe\u0007\u032a\u0002\u0002",
- "\u27fe\u2803\t\u0083\u0002\u0002\u27ff\u2800\u0007\u01df\u0002\u0002",
- "\u2800\u2801\u0007\u032a\u0002\u0002\u2801\u2803\u0007\u0326\u0002\u0002",
- "\u2802\u27fc\u0003\u0002\u0002\u0002\u2802\u27ff\u0003\u0002\u0002\u0002",
- "\u2803\u2804\u0003\u0002\u0002\u0002\u2804\u2805\u0007\u033d\u0002\u0002",
- "\u2805\u037f\u0003\u0002\u0002\u0002\u2806\u2809\u0005\u0382\u01c2\u0002",
- "\u2807\u2809\u0005\u0384\u01c3\u0002\u2808\u2806\u0003\u0002\u0002\u0002",
- "\u2808\u2807\u0003\u0002\u0002\u0002\u2809\u0381\u0003\u0002\u0002\u0002",
- "\u280a\u280b\u0007\u01fb\u0002\u0002\u280b\u280e\u0005\u03c6\u01e4\u0002",
- "\u280c\u280d\u0007?\u0002\u0002\u280d\u280f\u0007\u01fe\u0002\u0002",
- "\u280e\u280c\u0003\u0002\u0002\u0002\u280e\u280f\u0003\u0002\u0002\u0002",
- "\u280f\u2811\u0003\u0002\u0002\u0002\u2810\u2812\u0007Y\u0002\u0002",
- "\u2811\u2810\u0003\u0002\u0002\u0002\u2811\u2812\u0003\u0002\u0002\u0002",
- "\u2812\u2815\u0003\u0002\u0002\u0002\u2813\u2814\u0007?\u0002\u0002",
- "\u2814\u2816\u0007\u024f\u0002\u0002\u2815\u2813\u0003\u0002\u0002\u0002",
- "\u2815\u2816\u0003\u0002\u0002\u0002\u2816\u2817\u0003\u0002\u0002\u0002",
- "\u2817\u281c\u0005\u0384\u01c3\u0002\u2818\u2819\u0007\u033e\u0002\u0002",
- "\u2819\u281b\u0005\u0384\u01c3\u0002\u281a\u2818\u0003\u0002\u0002\u0002",
- "\u281b\u281e\u0003\u0002\u0002\u0002\u281c\u281a\u0003\u0002\u0002\u0002",
- "\u281c\u281d\u0003\u0002\u0002\u0002\u281d\u0383\u0003\u0002\u0002\u0002",
- "\u281e\u281c\u0003\u0002\u0002\u0002\u281f\u2820\u0007\u033c\u0002\u0002",
- "\u2820\u2821\u0007\u025d\u0002\u0002\u2821\u2824\u0007\u032a\u0002\u0002",
- "\u2822\u2825\u0005\u03c6\u01e4\u0002\u2823\u2825\u0007\u0326\u0002\u0002",
- "\u2824\u2822\u0003\u0002\u0002\u0002\u2824\u2823\u0003\u0002\u0002\u0002",
- "\u2825\u2827\u0003\u0002\u0002\u0002\u2826\u2828\u0007\u033e\u0002\u0002",
- "\u2827\u2826\u0003\u0002\u0002\u0002\u2827\u2828\u0003\u0002\u0002\u0002",
- "\u2828\u2829\u0003\u0002\u0002\u0002\u2829\u282a\u0007\u0082\u0002\u0002",
- "\u282a\u282b\u0007\u032a\u0002\u0002\u282b\u282d\u0007\u0326\u0002\u0002",
- "\u282c\u282e\u0007\u033e\u0002\u0002\u282d\u282c\u0003\u0002\u0002\u0002",
- "\u282d\u282e\u0003\u0002\u0002\u0002\u282e\u2835\u0003\u0002\u0002\u0002",
- "\u282f\u2830\u0007\u02d8\u0002\u0002\u2830\u2831\u0007\u032a\u0002\u0002",
- "\u2831\u2833\u0005\u03ce\u01e8\u0002\u2832\u2834\u0007\u033e\u0002\u0002",
- "\u2833\u2832\u0003\u0002\u0002\u0002\u2833\u2834\u0003\u0002\u0002\u0002",
- "\u2834\u2836\u0003\u0002\u0002\u0002\u2835\u282f\u0003\u0002\u0002\u0002",
- "\u2835\u2836\u0003\u0002\u0002\u0002\u2836\u2840\u0003\u0002\u0002\u0002",
- "\u2837\u2838\u0007\u024c\u0002\u0002\u2838\u283b\u0007\u032a\u0002\u0002",
- "\u2839\u283c\u0005\u03ce\u01e8\u0002\u283a\u283c\u0007\u0306\u0002\u0002",
- "\u283b\u2839\u0003\u0002\u0002\u0002\u283b\u283a\u0003\u0002\u0002\u0002",
- "\u283c\u283e\u0003\u0002\u0002\u0002\u283d\u283f\u0007\u033e\u0002\u0002",
- "\u283e\u283d\u0003\u0002\u0002\u0002\u283e\u283f\u0003\u0002\u0002\u0002",
- "\u283f\u2841\u0003\u0002\u0002\u0002\u2840\u2837\u0003\u0002\u0002\u0002",
- "\u2840\u2841\u0003\u0002\u0002\u0002\u2841\u2848\u0003\u0002\u0002\u0002",
- "\u2842\u2843\u0007\u01fc\u0002\u0002\u2843\u2844\u0007\u032a\u0002\u0002",
- "\u2844\u2846\u0005\u03ce\u01e8\u0002\u2845\u2847\u0007\u033e\u0002\u0002",
- "\u2846\u2845\u0003\u0002\u0002\u0002\u2846\u2847\u0003\u0002\u0002\u0002",
- "\u2847\u2849\u0003\u0002\u0002\u0002\u2848\u2842\u0003\u0002\u0002\u0002",
- "\u2848\u2849\u0003\u0002\u0002\u0002\u2849\u284a\u0003\u0002\u0002\u0002",
- "\u284a\u284b\u0007\u033d\u0002\u0002\u284b\u0385\u0003\u0002\u0002\u0002",
- "\u284c\u284d\u0005\u03c6\u01e4\u0002\u284d\u284e\u0007\u0337\u0002\u0002",
- "\u284e\u284f\u0005\u03c6\u01e4\u0002\u284f\u2850\u0007\u0337\u0002\u0002",
- "\u2850\u2851\u0005\u03c6\u01e4\u0002\u2851\u2852\u0007\u0337\u0002\u0002",
- "\u2852\u285e\u0003\u0002\u0002\u0002\u2853\u2854\u0005\u03c6\u01e4\u0002",
- "\u2854\u2856\u0007\u0337\u0002\u0002\u2855\u2857\u0005\u03c6\u01e4\u0002",
- "\u2856\u2855\u0003\u0002\u0002\u0002\u2856\u2857\u0003\u0002\u0002\u0002",
- "\u2857\u2858\u0003\u0002\u0002\u0002\u2858\u2859\u0007\u0337\u0002\u0002",
- "\u2859\u285e\u0003\u0002\u0002\u0002\u285a\u285b\u0005\u03c6\u01e4\u0002",
- "\u285b\u285c\u0007\u0337\u0002\u0002\u285c\u285e\u0003\u0002\u0002\u0002",
- "\u285d\u284c\u0003\u0002\u0002\u0002\u285d\u2853\u0003\u0002\u0002\u0002",
- "\u285d\u285a\u0003\u0002\u0002\u0002\u285d\u285e\u0003\u0002\u0002\u0002",
- "\u285e\u285f\u0003\u0002\u0002\u0002\u285f\u2860\u0005\u03c6\u01e4\u0002",
- "\u2860\u0387\u0003\u0002\u0002\u0002\u2861\u2867\u0005\u03c6\u01e4\u0002",
- "\u2862\u2863\u0005\u03c6\u01e4\u0002\u2863\u2864\u0007\u0337\u0002\u0002",
- "\u2864\u2865\u0005\u03c6\u01e4\u0002\u2865\u2867\u0003\u0002\u0002\u0002",
- "\u2866\u2861\u0003\u0002\u0002\u0002\u2866\u2862\u0003\u0002\u0002\u0002",
- "\u2867\u0389\u0003\u0002\u0002\u0002\u2868\u286e\u0005\u03c6\u01e4\u0002",
- "\u2869\u286a\u0005\u03c6\u01e4\u0002\u286a\u286b\u0007\u0337\u0002\u0002",
- "\u286b\u286c\u0005\u03c6\u01e4\u0002\u286c\u286e\u0003\u0002\u0002\u0002",
- "\u286d\u2868\u0003\u0002\u0002\u0002\u286d\u2869\u0003\u0002\u0002\u0002",
- "\u286e\u038b\u0003\u0002\u0002\u0002\u286f\u2870\u0005\u03c6\u01e4\u0002",
- "\u2870\u2871\u0007\u0337\u0002\u0002\u2871\u2872\u0005\u03c6\u01e4\u0002",
- "\u2872\u2873\u0007\u0337\u0002\u0002\u2873\u2874\u0005\u03c6\u01e4\u0002",
- "\u2874\u2875\u0007\u0337\u0002\u0002\u2875\u2881\u0003\u0002\u0002\u0002",
- "\u2876\u2877\u0005\u03c6\u01e4\u0002\u2877\u2879\u0007\u0337\u0002\u0002",
- "\u2878\u287a\u0005\u03c6\u01e4\u0002\u2879\u2878\u0003\u0002\u0002\u0002",
- "\u2879\u287a\u0003\u0002\u0002\u0002\u287a\u287b\u0003\u0002\u0002\u0002",
- "\u287b\u287c\u0007\u0337\u0002\u0002\u287c\u2881\u0003\u0002\u0002\u0002",
- "\u287d\u287e\u0005\u03c6\u01e4\u0002\u287e\u287f\u0007\u0337\u0002\u0002",
- "\u287f\u2881\u0003\u0002\u0002\u0002\u2880\u286f\u0003\u0002\u0002\u0002",
- "\u2880\u2876\u0003\u0002\u0002\u0002\u2880\u287d\u0003\u0002\u0002\u0002",
- "\u2880\u2881\u0003\u0002\u0002\u0002\u2881\u2882\u0003\u0002\u0002\u0002",
- "\u2882\u2883\u0005\u03c6\u01e4\u0002\u2883\u038d\u0003\u0002\u0002\u0002",
- "\u2884\u2885\u0005\u03c6\u01e4\u0002\u2885\u2887\u0007\u0337\u0002\u0002",
- "\u2886\u2888\u0005\u03c6\u01e4\u0002\u2887\u2886\u0003\u0002\u0002\u0002",
- "\u2887\u2888\u0003\u0002\u0002\u0002\u2888\u2889\u0003\u0002\u0002\u0002",
- "\u2889\u288a\u0007\u0337\u0002\u0002\u288a\u288f\u0003\u0002\u0002\u0002",
- "\u288b\u288c\u0005\u03c6\u01e4\u0002\u288c\u288d\u0007\u0337\u0002\u0002",
- "\u288d\u288f\u0003\u0002\u0002\u0002\u288e\u2884\u0003\u0002\u0002\u0002",
- "\u288e\u288b\u0003\u0002\u0002\u0002\u288e\u288f\u0003\u0002\u0002\u0002",
- "\u288f\u2890\u0003\u0002\u0002\u0002\u2890\u289f\u0005\u03c6\u01e4\u0002",
- "\u2891\u2892\u0005\u03c6\u01e4\u0002\u2892\u2894\u0007\u0337\u0002\u0002",
- "\u2893\u2895\u0005\u03c6\u01e4\u0002\u2894\u2893\u0003\u0002\u0002\u0002",
- "\u2894\u2895\u0003\u0002\u0002\u0002\u2895\u2896\u0003\u0002\u0002\u0002",
- "\u2896\u2897\u0007\u0337\u0002\u0002\u2897\u289c\u0003\u0002\u0002\u0002",
- "\u2898\u2899\u0005\u03c6\u01e4\u0002\u2899\u289a\u0007\u0337\u0002\u0002",
- "\u289a\u289c\u0003\u0002\u0002\u0002\u289b\u2891\u0003\u0002\u0002\u0002",
- "\u289b\u2898\u0003\u0002\u0002\u0002\u289b\u289c\u0003\u0002\u0002\u0002",
- "\u289c\u289d\u0003\u0002\u0002\u0002\u289d\u289f\u0007 \u0002\u0002",
- "\u289e\u288e\u0003\u0002\u0002\u0002\u289e\u289b\u0003\u0002\u0002\u0002",
- "\u289f\u038f\u0003\u0002\u0002\u0002\u28a0\u28a1\u0005\u03c6\u01e4\u0002",
- "\u28a1\u28a2\u0007\u0337\u0002\u0002\u28a2\u28a4\u0003\u0002\u0002\u0002",
- "\u28a3\u28a0\u0003\u0002\u0002\u0002\u28a3\u28a4\u0003\u0002\u0002\u0002",
- "\u28a4\u28a5\u0003\u0002\u0002\u0002\u28a5\u28a6\u0005\u03c6\u01e4\u0002",
- "\u28a6\u0391\u0003\u0002\u0002\u0002\u28a7\u28a8\u0005\u03c6\u01e4\u0002",
- "\u28a8\u28a9\u0007\u0337\u0002\u0002\u28a9\u28ab\u0003\u0002\u0002\u0002",
- "\u28aa\u28a7\u0003\u0002\u0002\u0002\u28aa\u28ab\u0003\u0002\u0002\u0002",
- "\u28ab\u28ac\u0003\u0002\u0002\u0002\u28ac\u28ad\u0005\u03c6\u01e4\u0002",
- "\u28ad\u0393\u0003\u0002\u0002\u0002\u28ae\u28ba\u0005\u0392\u01ca\u0002",
- "\u28af\u28b0\u0005\u03c6\u01e4\u0002\u28b0\u28b2\u0007\u0337\u0002\u0002",
- "\u28b1\u28b3\u0005\u03c6\u01e4\u0002\u28b2\u28b1\u0003\u0002\u0002\u0002",
- "\u28b2\u28b3\u0003\u0002\u0002\u0002\u28b3\u28b4\u0003\u0002\u0002\u0002",
- "\u28b4\u28b5\u0007\u0337\u0002\u0002\u28b5\u28b7\u0003\u0002\u0002\u0002",
- "\u28b6\u28af\u0003\u0002\u0002\u0002\u28b6\u28b7\u0003\u0002\u0002\u0002",
- "\u28b7\u28b8\u0003\u0002\u0002\u0002\u28b8\u28ba\u0005\u03c6\u01e4\u0002",
- "\u28b9\u28ae\u0003\u0002\u0002\u0002\u28b9\u28b6\u0003\u0002\u0002\u0002",
- "\u28ba\u0395\u0003\u0002\u0002\u0002\u28bb\u28c9\u0005\u0394\u01cb\u0002",
- "\u28bc\u28bd\u0005\u03c6\u01e4\u0002\u28bd\u28be\u0007\u0337\u0002\u0002",
- "\u28be\u28bf\u0005\u03c6\u01e4\u0002\u28bf\u28c1\u0007\u0337\u0002\u0002",
- "\u28c0\u28c2\u0005\u03c6\u01e4\u0002\u28c1\u28c0\u0003\u0002\u0002\u0002",
- "\u28c1\u28c2\u0003\u0002\u0002\u0002\u28c2\u28c3\u0003\u0002\u0002\u0002",
- "\u28c3\u28c4\u0007\u0337\u0002\u0002\u28c4\u28c6\u0003\u0002\u0002\u0002",
- "\u28c5\u28bc\u0003\u0002\u0002\u0002\u28c5\u28c6\u0003\u0002\u0002\u0002",
- "\u28c6\u28c7\u0003\u0002\u0002\u0002\u28c7\u28c9\u0005\u03c6\u01e4\u0002",
- "\u28c8\u28bb\u0003\u0002\u0002\u0002\u28c8\u28c5\u0003\u0002\u0002\u0002",
- "\u28c9\u0397\u0003\u0002\u0002\u0002\u28ca\u28cd\u0005\u038c\u01c7\u0002",
- "\u28cb\u28cd\u0007\u0321\u0002\u0002\u28cc\u28ca\u0003\u0002\u0002\u0002",
- "\u28cc\u28cb\u0003\u0002\u0002\u0002\u28cd\u0399\u0003\u0002\u0002\u0002",
- "\u28ce\u28cf\u0005\u038e\u01c8\u0002\u28cf\u28d0\u0007\u0337\u0002\u0002",
- "\u28d0\u28d2\u0003\u0002\u0002\u0002\u28d1\u28ce\u0003\u0002\u0002\u0002",
- "\u28d1\u28d2\u0003\u0002\u0002\u0002\u28d2\u28d3\u0003\u0002\u0002\u0002",
- "\u28d3\u28ff\u0005\u03c6\u01e4\u0002\u28d4\u28d5\u0005\u038e\u01c8\u0002",
- "\u28d5\u28d6\u0007\u0337\u0002\u0002\u28d6\u28d8\u0003\u0002\u0002\u0002",
- "\u28d7\u28d4\u0003\u0002\u0002\u0002\u28d7\u28d8\u0003\u0002\u0002\u0002",
- "\u28d8\u28d9\u0003\u0002\u0002\u0002\u28d9\u28ff\u0007\u01b8\u0002\u0002",
- "\u28da\u28db\u0005\u038e\u01c8\u0002\u28db\u28dc\u0007\u0337\u0002\u0002",
- "\u28dc\u28de\u0003\u0002\u0002\u0002\u28dd\u28da\u0003\u0002\u0002\u0002",
- "\u28dd\u28de\u0003\u0002\u0002\u0002\u28de\u28df\u0003\u0002\u0002\u0002",
- "\u28df\u28ff\u0007\u02e0\u0002\u0002\u28e0\u28e1\u0005\u038e\u01c8\u0002",
- "\u28e1\u28e2\u0007\u0337\u0002\u0002\u28e2\u28e4\u0003\u0002\u0002\u0002",
- "\u28e3\u28e0\u0003\u0002\u0002\u0002\u28e3\u28e4\u0003\u0002\u0002\u0002",
- "\u28e4\u28e5\u0003\u0002\u0002\u0002\u28e5\u28ff\u0007\u0296\u0002\u0002",
- "\u28e6\u28e7\u0005\u038e\u01c8\u0002\u28e7\u28e8\u0007\u0337\u0002\u0002",
- "\u28e8\u28ea\u0003\u0002\u0002\u0002\u28e9\u28e6\u0003\u0002\u0002\u0002",
- "\u28e9\u28ea\u0003\u0002\u0002\u0002\u28ea\u28eb\u0003\u0002\u0002\u0002",
- "\u28eb\u28ff\u0007\u0194\u0002\u0002\u28ec\u28ed\u0005\u038e\u01c8\u0002",
- "\u28ed\u28ee\u0007\u0337\u0002\u0002\u28ee\u28f0\u0003\u0002\u0002\u0002",
- "\u28ef\u28ec\u0003\u0002\u0002\u0002\u28ef\u28f0\u0003\u0002\u0002\u0002",
- "\u28f0\u28f1\u0003\u0002\u0002\u0002\u28f1\u28ff\u0007\u0191\u0002\u0002",
- "\u28f2\u28f3\u0005\u038e\u01c8\u0002\u28f3\u28f4\u0007\u0337\u0002\u0002",
- "\u28f4\u28f6\u0003\u0002\u0002\u0002\u28f5\u28f2\u0003\u0002\u0002\u0002",
- "\u28f5\u28f6\u0003\u0002\u0002\u0002\u28f6\u28f7\u0003\u0002\u0002\u0002",
- "\u28f7\u28ff\u0007\u0190\u0002\u0002\u28f8\u28f9\u0005\u038e\u01c8\u0002",
- "\u28f9\u28fa\u0007\u0337\u0002\u0002\u28fa\u28fc\u0003\u0002\u0002\u0002",
- "\u28fb\u28f8\u0003\u0002\u0002\u0002\u28fb\u28fc\u0003\u0002\u0002\u0002",
- "\u28fc\u28fd\u0003\u0002\u0002\u0002\u28fd\u28ff\u0007\u018f\u0002\u0002",
- "\u28fe\u28d1\u0003\u0002\u0002\u0002\u28fe\u28d7\u0003\u0002\u0002\u0002",
- "\u28fe\u28dd\u0003\u0002\u0002\u0002\u28fe\u28e3\u0003\u0002\u0002\u0002",
- "\u28fe\u28e9\u0003\u0002\u0002\u0002\u28fe\u28ef\u0003\u0002\u0002\u0002",
- "\u28fe\u28f5\u0003\u0002\u0002\u0002\u28fe\u28fb\u0003\u0002\u0002\u0002",
- "\u28ff\u039b\u0003\u0002\u0002\u0002\u2900\u2902\u0005\u03c6\u01e4\u0002",
- "\u2901\u2903\tu\u0002\u0002\u2902\u2901\u0003\u0002\u0002\u0002\u2902",
- "\u2903\u0003\u0002\u0002\u0002\u2903\u290b\u0003\u0002\u0002\u0002\u2904",
- "\u2905\u0007\u033e\u0002\u0002\u2905\u2907\u0005\u03c6\u01e4\u0002\u2906",
- "\u2908\tu\u0002\u0002\u2907\u2906\u0003\u0002\u0002\u0002\u2907\u2908",
- "\u0003\u0002\u0002\u0002\u2908\u290a\u0003\u0002\u0002\u0002\u2909\u2904",
- "\u0003\u0002\u0002\u0002\u290a\u290d\u0003\u0002\u0002\u0002\u290b\u2909",
- "\u0003\u0002\u0002\u0002\u290b\u290c\u0003\u0002\u0002\u0002\u290c\u039d",
- "\u0003\u0002\u0002\u0002\u290d\u290b\u0003\u0002\u0002\u0002\u290e\u2913",
- "\u0005\u03c6\u01e4\u0002\u290f\u2910\u0007\u033e\u0002\u0002\u2910\u2912",
- "\u0005\u03c6\u01e4\u0002\u2911\u290f\u0003\u0002\u0002\u0002\u2912\u2915",
- "\u0003\u0002\u0002\u0002\u2913\u2911\u0003\u0002\u0002\u0002\u2913\u2914",
- "\u0003\u0002\u0002\u0002\u2914\u039f\u0003\u0002\u0002\u0002\u2915\u2913",
- "\u0003\u0002\u0002\u0002\u2916\u2919\u0005\u03c6\u01e4\u0002\u2917\u2919",
- "\u0007\u0321\u0002\u0002\u2918\u2916\u0003\u0002\u0002\u0002\u2918\u2917",
- "\u0003\u0002\u0002\u0002\u2919\u03a1\u0003\u0002\u0002\u0002\u291a\u291b",
- "\t\t\u0002\u0002\u291b\u03a3\u0003\u0002\u0002\u0002\u291c\u291d\t\u0084",
- "\u0002\u0002\u291d\u03a5\u0003\u0002\u0002\u0002\u291e\u2920\u0007\u00dc",
- "\u0002\u0002\u291f\u291e\u0003\u0002\u0002\u0002\u291f\u2920\u0003\u0002",
- "\u0002\u0002\u2920\u2921\u0003\u0002\u0002\u0002\u2921\u2922\u0007\u00df",
- "\u0002\u0002\u2922\u03a7\u0003\u0002\u0002\u0002\u2923\u292b\u0005\u03a6",
- "\u01d4\u0002\u2924\u2925\u0007Y\u0002\u0002\u2925\u2928\u0005\u02e2",
- "\u0172\u0002\u2926\u2927\u0007\u0179\u0002\u0002\u2927\u2929\u0007\u016f",
- "\u0002\u0002\u2928\u2926\u0003\u0002\u0002\u0002\u2928\u2929\u0003\u0002",
- "\u0002\u0002\u2929\u292b\u0003\u0002\u0002\u0002\u292a\u2923\u0003\u0002",
- "\u0002\u0002\u292a\u2924\u0003\u0002\u0002\u0002\u292b\u03a9\u0003\u0002",
- "\u0002\u0002\u292c\u2932\u0005\u0396\u01cc\u0002\u292d\u2932\u0007\u011f",
- "\u0002\u0002\u292e\u2932\u0007\u00b1\u0002\u0002\u292f\u2932\u0007\u01a5",
- "\u0002\u0002\u2930\u2932\u0007\u01b2\u0002\u0002\u2931\u292c\u0003\u0002",
- "\u0002\u0002\u2931\u292d\u0003\u0002\u0002\u0002\u2931\u292e\u0003\u0002",
- "\u0002\u0002\u2931\u292f\u0003\u0002\u0002\u0002\u2931\u2930\u0003\u0002",
- "\u0002\u0002\u2932\u03ab\u0003\u0002\u0002\u0002\u2933\u2934\u0007\u001c",
- "\u0002\u0002\u2934\u2935\u0007F\u0002\u0002\u2935\u2936\u0007\u02f7",
- "\u0002\u0002\u2936\u2937\u0007\u033c\u0002\u0002\u2937\u2938\u0007\u0321",
- "\u0002\u0002\u2938\u2939\u0007\u033d\u0002\u0002\u2939\u293a\u0007\u02f6",
- "\u0002\u0002\u293a\u293b\u0007\u032a\u0002\u0002\u293b\u293d\u0005\u01c0",
- "\u00e1\u0002\u293c\u293e\u0007\u033f\u0002\u0002\u293d\u293c\u0003\u0002",
- "\u0002\u0002\u293d\u293e\u0003\u0002\u0002\u0002\u293e\u03ad\u0003\u0002",
- "\u0002\u0002\u293f\u2940\u0007\u001c\u0002\u0002\u2940\u2942\u0007\u01de",
- "\u0002\u0002\u2941\u2943\u0007F\u0002\u0002\u2942\u2941\u0003\u0002",
- "\u0002\u0002\u2942\u2943\u0003\u0002\u0002\u0002\u2943\u2944\u0003\u0002",
- "\u0002\u0002\u2944\u2945\u0007\u0321\u0002\u0002\u2945\u2946\u0007\u008b",
- "\u0002\u0002\u2946\u2947\u0007\u0136\u0002\u0002\u2947\u2948\u0005\u03b2",
- "\u01da\u0002\u2948\u2949\u0007\u015a\u0002\u0002\u2949\u294a\u0007\u0136",
- "\u0002\u0002\u294a\u294d\u0005\u03b2\u01da\u0002\u294b\u294c\u0007\u033e",
- "\u0002\u0002\u294c\u294e\u0007\u0326\u0002\u0002\u294d\u294b\u0003\u0002",
- "\u0002\u0002\u294d\u294e\u0003\u0002\u0002\u0002\u294e\u294f\u0003\u0002",
- "\u0002\u0002\u294f\u2950\u0007\u00e5\u0002\u0002\u2950\u2951\u0007D",
- "\u0002\u0002\u2951\u2968\u0005\u03b0\u01d9\u0002\u2952\u2959\u0007\u0179",
- "\u0002\u0002\u2953\u2954\t\u0085\u0002\u0002\u2954\u2955\u0007\u032a",
- "\u0002\u0002\u2955\u2957\u0007\u0321\u0002\u0002\u2956\u2958\u0007\u033e",
- "\u0002\u0002\u2957\u2956\u0003\u0002\u0002\u0002\u2957\u2958\u0003\u0002",
- "\u0002\u0002\u2958\u295a\u0003\u0002\u0002\u0002\u2959\u2953\u0003\u0002",
- "\u0002\u0002\u2959\u295a\u0003\u0002\u0002\u0002\u295a\u2961\u0003\u0002",
- "\u0002\u0002\u295b\u295c\u0007\u00b3\u0002\u0002\u295c\u295d\u0007\u032a",
- "\u0002\u0002\u295d\u295f\t\u0002\u0002\u0002\u295e\u2960\u0007\u033e",
- "\u0002\u0002\u295f\u295e\u0003\u0002\u0002\u0002\u295f\u2960\u0003\u0002",
- "\u0002\u0002\u2960\u2962\u0003\u0002\u0002\u0002\u2961\u295b\u0003\u0002",
- "\u0002\u0002\u2961\u2962\u0003\u0002\u0002\u0002\u2962\u2966\u0003\u0002",
- "\u0002\u0002\u2963\u2964\u0007\u01ec\u0002\u0002\u2964\u2965\u0007\u032a",
- "\u0002\u0002\u2965\u2967\t\t\u0002\u0002\u2966\u2963\u0003\u0002\u0002",
- "\u0002\u2966\u2967\u0003\u0002\u0002\u0002\u2967\u2969\u0003\u0002\u0002",
- "\u0002\u2968\u2952\u0003\u0002\u0002\u0002\u2968\u2969\u0003\u0002\u0002",
- "\u0002\u2969\u296b\u0003\u0002\u0002\u0002\u296a\u296c\u0007\u033f\u0002",
- "\u0002\u296b\u296a\u0003\u0002\u0002\u0002\u296b\u296c\u0003\u0002\u0002",
- "\u0002\u296c\u03af\u0003\u0002\u0002\u0002\u296d\u2970\u0005\u03c6\u01e4",
- "\u0002\u296e\u2970\u0005\u02d8\u016d\u0002\u296f\u296d\u0003\u0002\u0002",
- "\u0002\u296f\u296e\u0003\u0002\u0002\u0002\u2970\u03b1\u0003\u0002\u0002",
- "\u0002\u2971\u2974\u0005\u03c6\u01e4\u0002\u2972\u2974\u0005\u02d8\u016d",
- "\u0002\u2973\u2971\u0003\u0002\u0002\u0002\u2973\u2972\u0003\u0002\u0002",
- "\u0002\u2974\u03b3\u0003\u0002\u0002\u0002\u2975\u2976\u0007l\u0002",
- "\u0002\u2976\u2977\u0007F\u0002\u0002\u2977\u2979\u0007\u0321\u0002",
- "\u0002\u2978\u297a\u0007\u033f\u0002\u0002\u2979\u2978\u0003\u0002\u0002",
- "\u0002\u2979\u297a\u0003\u0002\u0002\u0002\u297a\u2987\u0003\u0002\u0002",
- "\u0002\u297b\u2982\u0007\u0179\u0002\u0002\u297c\u297d\u0007p\u0002",
- "\u0002\u297d\u297e\u0007\u032a\u0002\u0002\u297e\u297f\t\u0003\u0002",
- "\u0002\u297f\u2980\u0007\u01db\u0002\u0002\u2980\u2981\u0007\u032a\u0002",
- "\u0002\u2981\u2983\t\u0003\u0002\u0002\u2982\u297c\u0003\u0002\u0002",
- "\u0002\u2982\u2983\u0003\u0002\u0002\u0002\u2983\u2985\u0003\u0002\u0002",
- "\u0002\u2984\u2986\u0007\u01b4\u0002\u0002\u2985\u2984\u0003\u0002\u0002",
- "\u0002\u2985\u2986\u0003\u0002\u0002\u0002\u2986\u2988\u0003\u0002\u0002",
- "\u0002\u2987\u297b\u0003\u0002\u0002\u0002\u2987\u2988\u0003\u0002\u0002",
- "\u0002\u2988\u03b5\u0003\u0002\u0002\u0002\u2989\u298b\u0007\u0174\u0002",
- "\u0002\u298a\u2989\u0003\u0002\u0002\u0002\u298a\u298b\u0003\u0002\u0002",
- "\u0002\u298b\u298c\u0003\u0002\u0002\u0002\u298c\u298d\u0007\u033c\u0002",
- "\u0002\u298d\u298e\u0005\u03b8\u01dd\u0002\u298e\u2994\u0007\u033d\u0002",
- "\u0002\u298f\u2991\u0007\u033e\u0002\u0002\u2990\u298f\u0003\u0002\u0002",
- "\u0002\u2990\u2991\u0003\u0002\u0002\u0002\u2991\u2992\u0003\u0002\u0002",
- "\u0002\u2992\u2993\u0007\u02f6\u0002\u0002\u2993\u2995\u0005\u01c0\u00e1",
- "\u0002\u2994\u2990\u0003\u0002\u0002\u0002\u2994\u2995\u0003\u0002\u0002",
- "\u0002\u2995\u2997\u0003\u0002\u0002\u0002\u2996\u2998\u0007\u033f\u0002",
- "\u0002\u2997\u2996\u0003\u0002\u0002\u0002\u2997\u2998\u0003\u0002\u0002",
- "\u0002\u2998\u03b7\u0003\u0002\u0002\u0002\u2999\u299a\u0007\u008e\u0002",
- "\u0002\u299a\u299b\u0007F\u0002\u0002\u299b\u299c\u0007\u0092\u0002",
- "\u0002\u299c\u299d\t\u0003\u0002\u0002\u299d\u299e\u0007\u008b\u0002",
- "\u0002\u299e\u29a0\u0005\u03ba\u01de\u0002\u299f\u29a1\u0007\u033f\u0002",
- "\u0002\u29a0\u299f\u0003\u0002\u0002\u0002\u29a0\u29a1\u0003\u0002\u0002",
- "\u0002\u29a1\u03b9\u0003\u0002\u0002\u0002\u29a2\u29a3\u0005\u03c6\u01e4",
- "\u0002\u29a3\u29a4\u0007\u0337\u0002\u0002\u29a4\u29a5\u0005\u03c6\u01e4",
- "\u0002\u29a5\u29a6\u0007\u0337\u0002\u0002\u29a6\u29a7\u0005\u03c6\u01e4",
- "\u0002\u29a7\u29aa\u0003\u0002\u0002\u0002\u29a8\u29aa\u0005\u03c6\u01e4",
- "\u0002\u29a9\u29a2\u0003\u0002\u0002\u0002\u29a9\u29a8\u0003\u0002\u0002",
- "\u0002\u29aa\u03bb\u0003\u0002\u0002\u0002\u29ab\u29ac\u0007\u02cd\u0002",
- "\u0002\u29ac\u29ad\u0007\u00e5\u0002\u0002\u29ad\u29ae\u0007F\u0002",
- "\u0002\u29ae\u29af\t\u0003\u0002\u0002\u29af\u29b0\u0007\u0250\u0002",
- "\u0002\u29b0\u29b1\u0007\u0301\u0002\u0002\u29b1\u29b5\u0005\u02d8\u016d",
- "\u0002\u29b2\u29b3\u0007\u033c\u0002\u0002\u29b3\u29b4\t\u0003\u0002",
- "\u0002\u29b4\u29b6\u0007\u033d\u0002\u0002\u29b5\u29b2\u0003\u0002\u0002",
- "\u0002\u29b5\u29b6\u0003\u0002\u0002\u0002\u29b6\u29b8\u0003\u0002\u0002",
- "\u0002\u29b7\u29b9\u0007\u033f\u0002\u0002\u29b8\u29b7\u0003\u0002\u0002",
- "\u0002\u29b8\u29b9\u0003\u0002\u0002\u0002\u29b9\u03bd\u0003\u0002\u0002",
- "\u0002\u29ba\u29bc\u0005\u03c6\u01e4\u0002\u29bb\u29bd\u0007\u0096\u0002",
- "\u0002\u29bc\u29bb\u0003\u0002\u0002\u0002\u29bc\u29bd\u0003\u0002\u0002",
- "\u0002\u29bd\u29c5\u0003\u0002\u0002\u0002\u29be\u29bf\u0007\u033c\u0002",
- "\u0002\u29bf\u29c2\t\u0086\u0002\u0002\u29c0\u29c1\u0007\u033e\u0002",
- "\u0002\u29c1\u29c3\u0007\u0322\u0002\u0002\u29c2\u29c0\u0003\u0002\u0002",
- "\u0002\u29c2\u29c3\u0003\u0002\u0002\u0002\u29c3\u29c4\u0003\u0002\u0002",
- "\u0002\u29c4\u29c6\u0007\u033d\u0002\u0002\u29c5\u29be\u0003\u0002\u0002",
- "\u0002\u29c5\u29c6\u0003\u0002\u0002\u0002\u29c6\u29d0\u0003\u0002\u0002",
- "\u0002\u29c7\u29c9\u0007d\u0002\u0002\u29c8\u29ca\u0007\u00fe\u0002",
- "\u0002\u29c9\u29c8\u0003\u0002\u0002\u0002\u29c9\u29ca\u0003\u0002\u0002",
- "\u0002\u29ca\u29d0\u0003\u0002\u0002\u0002\u29cb\u29d0\u0007\u0223\u0002",
- "\u0002\u29cc\u29d0\u0007\u02f8\u0002\u0002\u29cd\u29d0\u0007\u02d9\u0002",
- "\u0002\u29ce\u29d0\u0007\u01a3\u0002\u0002\u29cf\u29ba\u0003\u0002\u0002",
- "\u0002\u29cf\u29c7\u0003\u0002\u0002\u0002\u29cf\u29cb\u0003\u0002\u0002",
- "\u0002\u29cf\u29cc\u0003\u0002\u0002\u0002\u29cf\u29cd\u0003\u0002\u0002",
- "\u0002\u29cf\u29ce\u0003\u0002\u0002\u0002\u29d0\u03bf\u0003\u0002\u0002",
- "\u0002\u29d1\u29d5\u0007\u00df\u0002\u0002\u29d2\u29d5\u0007Y\u0002",
- "\u0002\u29d3\u29d5\u0005\u03c2\u01e2\u0002\u29d4\u29d1\u0003\u0002\u0002",
- "\u0002\u29d4\u29d2\u0003\u0002\u0002\u0002\u29d4\u29d3\u0003\u0002\u0002",
- "\u0002\u29d5\u03c1\u0003\u0002\u0002\u0002\u29d6\u29e6\u0007\u0326\u0002",
- "\u0002\u29d7\u29e6\u0007\u0327\u0002\u0002\u29d8\u29da\u0005\u03c4\u01e3",
- "\u0002\u29d9\u29d8\u0003\u0002\u0002\u0002\u29d9\u29da\u0003\u0002\u0002",
- "\u0002\u29da\u29db\u0003\u0002\u0002\u0002\u29db\u29e6\u0007\u0322\u0002",
- "\u0002\u29dc\u29de\u0005\u03c4\u01e3\u0002\u29dd\u29dc\u0003\u0002\u0002",
- "\u0002\u29dd\u29de\u0003\u0002\u0002\u0002\u29de\u29df\u0003\u0002\u0002",
- "\u0002\u29df\u29e6\tp\u0002\u0002\u29e0\u29e2\u0005\u03c4\u01e3\u0002",
- "\u29e1\u29e0\u0003\u0002\u0002\u0002\u29e1\u29e2\u0003\u0002\u0002\u0002",
- "\u29e2\u29e3\u0003\u0002\u0002\u0002\u29e3\u29e4\u0007\u033b\u0002\u0002",
- "\u29e4\u29e6\t\u0087\u0002\u0002\u29e5\u29d6\u0003\u0002\u0002\u0002",
- "\u29e5\u29d7\u0003\u0002\u0002\u0002\u29e5\u29d9\u0003\u0002\u0002\u0002",
- "\u29e5\u29dd\u0003\u0002\u0002\u0002\u29e5\u29e1\u0003\u0002\u0002\u0002",
- "\u29e6\u03c3\u0003\u0002\u0002\u0002\u29e7\u29e8\tm\u0002\u0002\u29e8",
- "\u03c5\u0003\u0002\u0002\u0002\u29e9\u29ed\u0005\u03c8\u01e5\u0002\u29ea",
- "\u29ed\u0007\u031e\u0002\u0002\u29eb\u29ed\u0007\u0320\u0002\u0002\u29ec",
- "\u29e9\u0003\u0002\u0002\u0002\u29ec\u29ea\u0003\u0002\u0002\u0002\u29ec",
- "\u29eb\u0003\u0002\u0002\u0002\u29ed\u03c7\u0003\u0002\u0002\u0002\u29ee",
- "\u29ef\t\u0088\u0002\u0002\u29ef\u03c9\u0003\u0002\u0002\u0002\u29f0",
- "\u2a00\u0007\u032a\u0002\u0002\u29f1\u2a00\u0007\u032b\u0002\u0002\u29f2",
- "\u2a00\u0007\u032c\u0002\u0002\u29f3\u29f4\u0007\u032c\u0002\u0002\u29f4",
- "\u2a00\u0007\u032a\u0002\u0002\u29f5\u29f6\u0007\u032b\u0002\u0002\u29f6",
- "\u2a00\u0007\u032a\u0002\u0002\u29f7\u29f8\u0007\u032c\u0002\u0002\u29f8",
- "\u2a00\u0007\u032b\u0002\u0002\u29f9\u29fa\u0007\u032d\u0002\u0002\u29fa",
- "\u2a00\u0007\u032a\u0002\u0002\u29fb\u29fc\u0007\u032d\u0002\u0002\u29fc",
- "\u2a00\u0007\u032b\u0002\u0002\u29fd\u29fe\u0007\u032d\u0002\u0002\u29fe",
- "\u2a00\u0007\u032c\u0002\u0002\u29ff\u29f0\u0003\u0002\u0002\u0002\u29ff",
- "\u29f1\u0003\u0002\u0002\u0002\u29ff\u29f2\u0003\u0002\u0002\u0002\u29ff",
- "\u29f3\u0003\u0002\u0002\u0002\u29ff\u29f5\u0003\u0002\u0002\u0002\u29ff",
- "\u29f7\u0003\u0002\u0002\u0002\u29ff\u29f9\u0003\u0002\u0002\u0002\u29ff",
- "\u29fb\u0003\u0002\u0002\u0002\u29ff\u29fd\u0003\u0002\u0002\u0002\u2a00",
- "\u03cb\u0003\u0002\u0002\u0002\u2a01\u2a02\t\u0089\u0002\u0002\u2a02",
- "\u03cd\u0003\u0002\u0002\u0002\u2a03\u2a05\u0007\u0322\u0002\u0002\u2a04",
- "\u2a06\t\u008a\u0002\u0002\u2a05\u2a04\u0003\u0002\u0002\u0002\u2a05",
- "\u2a06\u0003\u0002\u0002\u0002\u2a06\u03cf\u0003\u0002\u0002\u0002\u05f5",
- "\u03d3\u03dc\u03e0\u03e6\u03e9\u03ed\u03f1\u03fa\u0401\u04a2\u04a9\u04b7",
- "\u04bb\u04be\u04c2\u04c6\u04ca\u04cf\u04d4\u04d6\u04da\u04dd\u04e4\u04e7",
- "\u04f0\u04f3\u04fe\u0501\u0506\u050b\u050e\u0513\u0517\u051a\u051e\u0521",
- "\u0524\u052b\u052f\u0531\u0536\u053c\u0540\u054d\u0553\u0556\u055f\u0562",
- "\u0576\u057e\u0583\u0586\u058b\u058e\u0593\u059b\u05a0\u05a3\u05a8\u05ae",
- "\u05b3\u05c4\u05c7\u05ca\u05cd\u05d2\u05db\u05ea\u05fb\u0606\u060c\u061b",
- "\u062a\u0633\u0637\u063c\u0642\u0648\u064b\u0650\u0655\u065d\u0667\u067a",
- "\u0682\u068f\u0691\u069d\u069f\u06a6\u06af\u06b5\u06be\u06cd\u06d7\u06e1",
- "\u0709\u0720\u0744\u0756\u0759\u075e\u0761\u0766\u0769\u076e\u0771\u0776",
- "\u0779\u0781\u0784\u078c\u0799\u07a4\u07a9\u07ad\u07b3\u07ca\u07d6\u07e1",
- "\u07e6\u07ea\u07f0\u07f2\u07ff\u0816\u081d\u0826\u082b\u082e\u0833\u0836",
- "\u083b\u0840\u085c\u0863\u0868\u086f\u0871\u087c\u0882\u0891\u089f\u08a2",
- "\u08a4\u08a9\u08ad\u08b0\u08b2\u08b8\u08bb\u08bd\u08c3\u08c5\u08db\u08e3",
- "\u08eb\u08ed\u08ef\u08f8\u090d\u091a\u0929\u092d\u0950\u0953\u0958\u096a",
- "\u096d\u0972\u098c\u099a\u099f\u09a7\u09ac\u09b3\u09c8\u09ed\u09f2\u0a05",
- "\u0a11\u0a14\u0a19\u0a1c\u0a22\u0a31\u0a36\u0a3e\u0a41\u0a46\u0a4b\u0a4e",
- "\u0a66\u0a6d\u0a72\u0a77\u0a7c\u0a7e\u0a85\u0a92\u0a98\u0a9d\u0aa5\u0ab5",
- "\u0abc\u0ac1\u0ac6\u0ac9\u0acf\u0ad5\u0ada\u0adf\u0ae4\u0ae7\u0aed\u0af3",
- "\u0afe\u0b01\u0b0b\u0b11\u0b15\u0b19\u0b36\u0b43\u0b49\u0b53\u0b56\u0b6a",
- "\u0b6e\u0b72\u0b77\u0b86\u0b8d\u0b96\u0b9e\u0ba1\u0ba6\u0bab\u0bb3\u0bb9",
- "\u0bbd\u0bc3\u0bc8\u0bcc\u0bd3\u0bdb\u0be3\u0bec\u0bf1\u0bf5\u0bf8\u0bfc",
- "\u0c02\u0c07\u0c0f\u0c17\u0c1d\u0c23\u0c26\u0c2b\u0c2e\u0c35\u0c37\u0c3a",
- "\u0c40\u0c43\u0c48\u0c4b\u0c50\u0c53\u0c58\u0c5b\u0c60\u0c63\u0c66\u0c69",
- "\u0c70\u0c74\u0c7b\u0c82\u0c88\u0c95\u0c99\u0c9e\u0ca8\u0cb1\u0cb5\u0cc1",
- "\u0cc7\u0ccc\u0cce\u0ce2\u0ce6\u0cee\u0cf7\u0cfd\u0d03\u0d0b\u0d0d\u0d17",
- "\u0d1b\u0d1e\u0d22\u0d27\u0d2d\u0d30\u0d34\u0d3c\u0d3e\u0d41\u0d49\u0d51",
- "\u0d58\u0d5f\u0d61\u0d63\u0d68\u0d6e\u0d71\u0d73\u0d75\u0d78\u0d7d\u0d80",
- "\u0d85\u0d94\u0d9b\u0da2\u0da4\u0da6\u0dab\u0db1\u0db4\u0db6\u0db8\u0dbb",
- "\u0dc0\u0dc3\u0dc8\u0dd5\u0dda\u0de3\u0de8\u0dee\u0df2\u0df6\u0e07\u0e09",
- "\u0e13\u0e18\u0e1a\u0e1e\u0e24\u0e2c\u0e31\u0e34\u0e3c\u0e3f\u0e44\u0e49",
- "\u0e4e\u0e53\u0e58\u0e5d\u0e61\u0e66\u0e71\u0e76\u0e79\u0e7c\u0e81\u0e84",
- "\u0e89\u0e8c\u0e91\u0e94\u0e99\u0e9c\u0ea1\u0ea4\u0ea9\u0eaf\u0eb4\u0eb7",
- "\u0ebc\u0ec3\u0ec5\u0ecb\u0ed4\u0ed9\u0edb\u0ee7\u0eed\u0ef9\u0efc\u0f01",
- "\u0f03\u0f0d\u0f12\u0f14\u0f18\u0f1e\u0f30\u0f32\u0f41\u0f53\u0f5b\u0f65",
- "\u0f75\u0f8a\u0f95\u0f9b\u0fa4\u0fad\u0fb3\u0fbc\u0fc1\u0fc4\u0fc9\u0fcc",
- "\u0fd1\u0fd4\u0fdc\u0fe2\u0fe6\u0fed\u0ff3\u0ff7\u0ffa\u0ffc\u0fff\u1004",
- "\u1007\u100c\u100f\u1014\u1017\u101c\u101f\u102e\u1039\u1045\u104c\u1053",
- "\u1057\u105c\u105f\u1064\u1067\u106c\u106f\u1078\u107f\u108e\u1092\u1097",
- "\u10a2\u10ac\u10b8\u10be\u10c0\u10c8\u10d1\u10d6\u10e1\u10e4\u10e8\u10f0",
- "\u10f4\u10f8\u1100\u1105\u110d\u1112\u1116\u1118\u111d\u1126\u1129\u112e",
- "\u1135\u113b\u113d\u1142\u1148\u114e\u1153\u1159\u1160\u1165\u116a\u116f",
- "\u1172\u1176\u117a\u117e\u1182\u1187\u118b\u118f\u1199\u119f\u11a6\u11a9",
- "\u11af\u11b5\u11ba\u11bc\u11c2\u11c4\u11c9\u11cf\u11d5\u11da\u11dc\u11e0",
- "\u11e4\u11e7\u11f5\u11fa\u11fe\u120b\u120e\u1210\u1218\u1222\u1228\u122f",
- "\u1232\u1238\u123e\u1243\u1245\u124b\u124d\u1252\u1258\u125e\u1264\u1269",
- "\u126b\u126f\u1273\u1276\u1284\u1289\u128d\u129a\u129d\u129f\u12a7\u12b2",
- "\u12bb\u12c4\u12cf\u12d8\u12e1\u12ed\u12f1\u12f6\u12f8\u12fa\u12ff\u1303",
- "\u1308\u130a\u130c\u131a\u131f\u1335\u134b\u1350\u135d\u1365\u1379\u137c",
- "\u1382\u138a\u1391\u1396\u139a\u139e\u13a1\u13a8\u13ba\u13bc\u13d0\u13d8",
- "\u13dd\u13ef\u13fe\u1400\u1407\u140e\u1413\u1418\u141e\u1423\u1425\u142c",
- "\u1432\u1438\u143b\u1441\u144b\u144e\u1455\u1458\u145d\u145f\u1467\u146b",
- "\u1471\u1476\u1478\u147b\u1482\u1488\u148f\u1492\u1498\u149d\u149f\u14a2",
- "\u14aa\u14b0\u14b7\u14ba\u14c0\u14c5\u14c7\u14cf\u14d7\u14dd\u14e2\u14e4",
- "\u14ee\u14f3\u14fd\u1503\u150f\u1511\u1518\u151e\u1524\u152a\u152f\u1531",
- "\u1538\u1540\u1546\u1554\u1556\u1559\u155e\u1560\u156c\u1572\u1580\u1582",
- "\u1585\u158a\u158d\u1592\u1594\u159d\u15a4\u15aa\u15ad\u15b2\u15b9\u15bb",
- "\u15c1\u15c3\u15cb\u15cd\u15d3\u15d5\u15db\u15dd\u15e4\u15e7\u15e9\u15ec",
- "\u15f0\u15f2\u15fb\u1601\u1605\u160d\u1614\u161a\u161c\u1627\u162c\u1632",
- "\u1636\u1640\u1648\u1654\u1657\u165f\u1661\u1664\u1668\u166b\u1675\u167b",
- "\u1683\u1687\u168b\u1694\u169a\u169e\u16a1\u16ac\u16b0\u16b7\u16bc\u16bf",
- "\u16c7\u16cb\u16ce\u16d2\u16d5\u16d9\u16e0\u16e4\u16e6\u16e8\u16eb\u16ee",
- "\u16f1\u16f7\u16fa\u1702\u1704\u1707\u170b\u170e\u1714\u1717\u171b\u171e",
- "\u1721\u1728\u172b\u1732\u1738\u173c\u1746\u1749\u174c\u1750\u1753\u1756",
- "\u1759\u175d\u1760\u1768\u176a\u176e\u1771\u1779\u177d\u1781\u1788\u178c",
- "\u178e\u1790\u1793\u1796\u1799\u17a1\u17a7\u17ad\u17af\u17b3\u17b6\u17bb",
- "\u17c0\u17c3\u17cb\u17cf\u17d6\u17d9\u17e2\u17e5\u17e9\u17f1\u17f4\u17f8",
- "\u17fb\u1809\u180d\u1810\u1814\u1817\u181c\u181f\u1825\u1828\u182f\u1833",
- "\u1835\u183d\u1840\u1844\u184b\u1850\u1853\u185f\u1862\u1868\u186f\u1874",
- "\u1879\u1880\u1887\u188a\u1892\u189a\u189d\u18a5\u18b0\u18b3\u18bd\u18c4",
- "\u18c9\u18cc\u18d6\u18d9\u18dc\u18e4\u18ef\u18f2\u18f5\u18fb\u1900\u1904",
- "\u190e\u1911\u1914\u191a\u1920\u1928\u192b\u192f\u1933\u1936\u193b\u1949",
- "\u1959\u195d\u1963\u1965\u1968\u196c\u1971\u1976\u197e\u1983\u1988\u198e",
- "\u1993\u1996\u199f\u19a9\u19ac\u19b5\u19bd\u19c0\u19c7\u19ca\u19f8\u19fc",
- "\u19ff\u1a05\u1a11\u1a13\u1a16\u1a2f\u1a3a\u1a42\u1a4d\u1a52\u1a55\u1a5d",
- "\u1a67\u1a6e\u1a75\u1a77\u1a83\u1a8e\u1a92\u1a97\u1a9a\u1a9c\u1a9f\u1aab",
- "\u1aad\u1aaf\u1ab2\u1ab7\u1aba\u1abf\u1ac9\u1acd\u1ad2\u1ad5\u1ad7\u1ada",
- "\u1ae6\u1ae8\u1aea\u1aed\u1af3\u1afd\u1b11\u1b17\u1b30\u1b32\u1b4c\u1b52",
- "\u1b5d\u1b65\u1b68\u1b76\u1b7e\u1b85\u1b9c\u1ba9\u1baf\u1bb6\u1bbe\u1bc1",
- "\u1bc4\u1bcd\u1bd7\u1bde\u1be2\u1be6\u1bec\u1bf3\u1bf7\u1bfd\u1c04\u1c0b",
- "\u1c0e\u1c14\u1c1b\u1c1f\u1c24\u1c29\u1c2e\u1c36\u1c3a\u1c40\u1c47\u1c4b",
- "\u1c54\u1c5c\u1c62\u1c68\u1c79\u1c7d\u1c85\u1c89\u1c91\u1c95\u1c9a\u1c9e",
- "\u1ca5\u1cab\u1cad\u1cb1\u1cb5\u1cb9\u1cbc\u1cc0\u1cc6\u1cca\u1ccc\u1cd3",
- "\u1cda\u1cdd\u1ce0\u1ce7\u1cec\u1cf1\u1cf5\u1cfb\u1cff\u1d01\u1d06\u1d0b",
- "\u1d0f\u1d14\u1d1a\u1d1e\u1d22\u1d24\u1d28\u1d2c\u1d30\u1d34\u1d3a\u1d3d",
- "\u1d43\u1d47\u1d4b\u1d51\u1d57\u1d59\u1d5c\u1d60\u1d64\u1d68\u1d6e\u1d71",
- "\u1d77\u1d7d\u1d80\u1d86\u1d89\u1d8f\u1d92\u1d96\u1d9a\u1d9e\u1da3\u1da6",
- "\u1daa\u1dae\u1dbf\u1dc1\u1dc3\u1dc6\u1dcd\u1dd2\u1dd6\u1ddc\u1de0\u1de2",
- "\u1de7\u1dec\u1df0\u1df5\u1dfb\u1dff\u1e03\u1e05\u1e09\u1e0d\u1e11\u1e15",
- "\u1e1b\u1e1e\u1e24\u1e28\u1e2c\u1e32\u1e38\u1e3a\u1e3d\u1e41\u1e45\u1e49",
- "\u1e4f\u1e52\u1e58\u1e5e\u1e61\u1e67\u1e6a\u1e70\u1e73\u1e77\u1e7b\u1e7f",
- "\u1e84\u1e87\u1e8b\u1e8f\u1e95\u1e98\u1e9c\u1ead\u1eaf\u1eb1\u1eb4\u1ec2",
- "\u1ec8\u1ed0\u1ed7\u1ed9\u1edc\u1efd\u1f01\u1f05\u1f0c\u1f17\u1f1b\u1f22",
- "\u1f25\u1f28\u1f30\u1f35\u1f3a\u1f3d\u1f3f\u1f43\u1f47\u1f4a\u1f4e\u1f54",
- "\u1f59\u1f60\u1f62\u1f66\u1f6e\u1f74\u1f78\u1f7b\u1f84\u1f87\u1f8d\u1f94",
- "\u1f99\u1fa1\u1fa6\u1fb2\u1fb4\u1fbf\u1fc6\u1fd0\u1fe7\u1ff4\u2004\u2009",
- "\u2010\u2013\u2017\u2019\u202a\u2039\u2041\u204a\u2052\u205b\u2066\u206a",
- "\u206c\u206e\u2074\u2079\u2080\u208d\u208f\u2091\u2094\u2097\u209e\u20a1",
- "\u20a7\u20ac\u20ae\u20b1\u20b7\u20bf\u20c1\u20c4\u20c8\u20cb\u20d5\u20d8",
- "\u20dc\u20df\u20e5\u20e8\u20ea\u20ee\u20f3\u20f7\u20fc\u2101\u2109\u210d",
- "\u2110\u2115\u211d\u2122\u212c\u2137\u213c\u2142\u2148\u214c\u214f\u2153",
- "\u2157\u215f\u2164\u2166\u2169\u216e\u2177\u217b\u2180\u2183\u2186\u218c",
- "\u2194\u219c\u219f\u21a2\u21a6\u21ab\u21ae\u21b4\u21b8\u21be\u21c6\u21cc",
- "\u21ce\u21d1\u21e0\u21e3\u21e6\u21e8\u21f3\u21fe\u2207\u2211\u221b\u221d",
- "\u221f\u2222\u2225\u2230\u2232\u2234\u2237\u223c\u2247\u2250\u2253\u2256",
- "\u225f\u2262\u2265\u226c\u226f\u227e\u2281\u2288\u2298\u229c\u22a6\u22b9",
- "\u22bb\u22c2\u22c9\u22cd\u22d5\u22d9\u22dd\u22e3\u22ed\u22f7\u22fe\u2305",
- "\u230e\u2315\u231c\u2325\u2329\u2333\u233a\u2342\u234a\u234e\u2364\u236d",
- "\u2373\u2379\u237f\u2389\u2390\u2395\u239a\u239e\u23a5\u23a9\u23ac\u23b1",
- "\u23b5\u23b9\u23be\u23c5\u23c8\u23cc\u23d1\u23d5\u23de\u23e5\u23ee\u23fa",
- "\u23fc\u2406\u2409\u240e\u2417\u2419\u241b\u2420\u2428\u242d\u2435\u243a",
- "\u2440\u244a\u244c\u2450\u2454\u2456\u245f\u2461\u2465\u2470\u2492\u24a2",
- "\u24a9\u24ab\u24b2\u24bb\u24c3\u24ca\u24d1\u24d4\u24d7\u24de\u24e5\u24e8",
- "\u24ea\u24f2\u24f4\u24fa\u2501\u2509\u250f\u2514\u2518\u251c\u2521\u2523",
- "\u252b\u252d\u2531\u2538\u253a\u2541\u2543\u254c\u2554\u255b\u2561\u256c",
- "\u2570\u2572\u2575\u258d\u25a6\u25ab\u25bf\u25c3\u25c7\u25d7\u25eb\u2625",
- "\u2629\u2659\u2669\u266b\u2672\u2678\u2685\u2694\u269f\u26a4\u26ae\u26b7",
- "\u26d9\u26de\u26e4\u26e7\u26ec\u26f1\u26fa\u26ff\u2705\u270e\u2718\u271b",
- "\u2729\u272f\u2737\u273b\u2743\u274a\u2757\u275f\u276c\u2773\u2779\u277d",
- "\u278e\u279d\u279f\u27a4\u27a7\u27b0\u27b3\u27b6\u27c3\u27c7\u27cf\u27d5",
- "\u27dd\u27e4\u27ea\u27f9\u2802\u2808\u280e\u2811\u2815\u281c\u2824\u2827",
- "\u282d\u2833\u2835\u283b\u283e\u2840\u2846\u2848\u2856\u285d\u2866\u286d",
- "\u2879\u2880\u2887\u288e\u2894\u289b\u289e\u28a3\u28aa\u28b2\u28b6\u28b9",
- "\u28c1\u28c5\u28c8\u28cc\u28d1\u28d7\u28dd\u28e3\u28e9\u28ef\u28f5\u28fb",
- "\u28fe\u2902\u2907\u290b\u2913\u2918\u291f\u2928\u292a\u2931\u293d\u2942",
- "\u294d\u2957\u2959\u295f\u2961\u2966\u2968\u296b\u296f\u2973\u2979\u2982",
- "\u2985\u2987\u298a\u2990\u2994\u2997\u29a0\u29a9\u29b5\u29b8\u29bc\u29c2",
- "\u29c5\u29c9\u29cf\u29d4\u29d9\u29dd\u29e1\u29e5\u29ec\u29ff\u2a05"].join("");
-
-
-var atn = new antlr4.atn.ATNDeserializer().deserialize(serializedATN);
-
-var decisionsToDFA = atn.decisionToState.map( function(ds, index) { return new antlr4.dfa.DFA(ds, index); });
-
-var sharedContextCache = new antlr4.PredictionContextCache();
-
-var literalNames = [ null, "'ABSENT'", "'ADD'", "'AES'", "'ALL'", "'ALLOW_CONNECTIONS'",
- "'ALLOW_MULTIPLE_EVENT_LOSS'", "'ALLOW_SINGLE_EVENT_LOSS'",
- "'ALTER'", "'AND'", "'ANONYMOUS'", "'ANY'", "'APPEND'",
- "'APPLICATION'", "'AS'", "'ASC'", "'ASYMMETRIC'", "'ASYNCHRONOUS_COMMIT'",
- "'AUTHORIZATION'", "'AUTHENTICATION'", "'AUTOMATED_BACKUP_PREFERENCE'",
- "'AUTOMATIC'", "'AVAILABILITY_MODE'", "'\\'", "'BACKUP'",
- "'BEFORE'", "'BEGIN'", "'BETWEEN'", "'BLOCK'", "'BLOCKSIZE'",
- "'BLOCKING_HIERARCHY'", "'BREAK'", "'BROWSE'", "'BUFFER'",
- "'BUFFERCOUNT'", "'BULK'", "'BY'", "'CACHE'", "'CALLED'",
- "'CASCADE'", "'CASE'", "'CERTIFICATE'", "'CHANGETABLE'",
- "'CHANGES'", "'CHECK'", "'CHECKPOINT'", "'CHECK_POLICY'",
- "'CHECK_EXPIRATION'", "'CLASSIFIER_FUNCTION'", "'CLOSE'",
- "'CLUSTER'", "'CLUSTERED'", "'COALESCE'", "'COLLATE'",
- "'COLUMN'", "'COMPRESSION'", "'COMMIT'", "'COMPUTE'",
- "'CONFIGURATION'", "'CONSTRAINT'", "'CONTAINMENT'",
- "'CONTAINS'", "'CONTAINSTABLE'", "'CONTEXT'", "'CONTINUE'",
- "'CONTINUE_AFTER_ERROR'", "'CONTRACT'", "'CONTRACT_NAME'",
- "'CONVERSATION'", null, "'COPY_ONLY'", "'CREATE'",
- "'CROSS'", "'CURRENT'", "'CURRENT_DATE'", "'CURRENT_TIME'",
- "'CURRENT_TIMESTAMP'", "'CURRENT_USER'", "'CURSOR'",
- "'CYCLE'", "'DATA_COMPRESSION'", "'DATA_SOURCE'", "'DATABASE'",
- "'DATABASE_MIRRORING'", "'DBCC'", "'DEALLOCATE'", "'DECLARE'",
- "'DEFAULT'", "'DEFAULT_DATABASE'", "'DEFAULT_SCHEMA'",
- "'DELETE'", "'DENY'", "'DESC'", "'DIAGNOSTICS'", "'DIFFERENTIAL'",
- "'DISK'", "'DISTINCT'", "'DISTRIBUTED'", "'DOUBLE'",
- "'\\\\'", "'//'", "'DROP'", "'DTC_SUPPORT'", "'DUMP'",
- "'ELSE'", "'ENABLED'", "'END'", "'ENDPOINT'", "'ERRLVL'",
- "'ESCAPE'", "'ERROR'", "'EVENT'", null, "'EVENT_RETENTION_MODE'",
- "'EXCEPT'", "'EXECUTABLE_FILE'", null, "'EXISTS'",
- "'EXPIREDATE'", "'EXIT'", "'EXTENSION'", "'EXTERNAL'",
- "'EXTERNAL_ACCESS'", "'FAILOVER'", "'FAILURECONDITIONLEVEL'",
- "'FAN_IN'", "'FETCH'", "'FILE'", "'FILENAME'", "'FILLFACTOR'",
- "'FILE_SNAPSHOT'", "'FOR'", "'FORCESEEK'", "'FORCE_SERVICE_ALLOW_DATA_LOSS'",
- "'FOREIGN'", "'FREETEXT'", "'FREETEXTTABLE'", "'FROM'",
- "'FULL'", "'FUNCTION'", "'GET'", "'GOTO'", "'GOVERNOR'",
- "'GRANT'", "'GROUP'", "'HAVING'", "'HASHED'", "'HEALTHCHECKTIMEOUT'",
- "'IDENTITY'", "'IDENTITYCOL'", "'IDENTITY_INSERT'",
- "'IF'", "'IIF'", "'IN'", "'INCLUDE'", "'INCREMENT'",
- "'INDEX'", "'INFINITE'", "'INIT'", "'INNER'", "'INSERT'",
- "'INSTEAD'", "'INTERSECT'", "'INTO'", null, null, "'IS'",
- "'ISNULL'", "'JOIN'", "'KERBEROS'", "'KEY'", "'KEY_PATH'",
- "'KEY_STORE_PROVIDER_NAME'", "'KILL'", "'LANGUAGE'",
- "'LEFT'", "'LIBRARY'", "'LIFETIME'", "'LIKE'", "'LINENO'",
- "'LINUX'", "'LISTENER_IP'", "'LISTENER_PORT'", "'LOAD'",
- "'LOCAL_SERVICE_NAME'", "'LOG'", "'MATCHED'", "'MASTER'",
- "'MAX_MEMORY'", "'MAXTRANSFER'", "'MAXVALUE'", "'MAX_DISPATCH_LATENCY'",
- "'MAX_EVENT_SIZE'", "'MAX_SIZE'", "'MAX_OUTSTANDING_IO_PER_VOLUME'",
- "'MEDIADESCRIPTION'", "'MEDIANAME'", "'MEMBER'", "'MEMORY_PARTITION_MODE'",
- "'MERGE'", "'MESSAGE_FORWARDING'", "'MESSAGE_FORWARD_SIZE'",
- "'MINVALUE'", "'MIRROR'", "'MUST_CHANGE'", "'NATIONAL'",
- "'NEGOTIATE'", "'NOCHECK'", "'NOFORMAT'", "'NOINIT'",
- "'NONCLUSTERED'", "'NONE'", "'NOREWIND'", "'NOSKIP'",
- "'NOUNLOAD'", "'NO_CHECKSUM'", "'NO_COMPRESSION'",
- "'NO_EVENT_LOSS'", "'NOT'", "'NOTIFICATION'", "'NTLM'",
- "'NULL'", "'NULLIF'", "'OF'", "'OFF'", "'OFFSETS'",
- "'OLD_PASSWORD'", "'ON'", "'ON_FAILURE'", "'OPEN'",
- "'OPENDATASOURCE'", "'OPENQUERY'", "'OPENROWSET'",
- "'OPENXML'", "'OPTION'", "'OR'", "'ORDER'", "'OUTER'",
- "'OVER'", "'PAGE'", "'PARAM_NODE'", "'PARTIAL'", "'PASSWORD'",
- "'PERCENT'", "'PERMISSION_SET'", "'PER_CPU'", "'PER_DB'",
- "'PER_NODE'", "'PIVOT'", "'PLAN'", "'PLATFORM'", "'POLICY'",
- "'PRECISION'", "'PREDICATE'", "'PRIMARY'", "'PRINT'",
- "'PROC'", "'PROCEDURE'", "'PROCESS'", "'PUBLIC'", "'PYTHON'",
- "'R'", "'RAISERROR'", "'RAW'", "'READ'", "'READTEXT'",
- "'READ_WRITE_FILEGROUPS'", "'RECONFIGURE'", "'REFERENCES'",
- "'REGENERATE'", "'RELATED_CONVERSATION'", "'RELATED_CONVERSATION_GROUP'",
- "'REPLICATION'", "'REQUIRED'", "'RESET'", "'RESTART'",
- "'RESTORE'", "'RESTRICT'", "'RESUME'", "'RETAINDAYS'",
- "'RETURN'", "'RETURNS'", "'REVERT'", "'REVOKE'", "'REWIND'",
- "'RIGHT'", "'ROLLBACK'", "'ROLE'", "'ROWCOUNT'", "'ROWGUIDCOL'",
- "'RSA_512'", "'RSA_1024'", "'RSA_2048'", "'RSA_3072'",
- "'RSA_4096'", "'SAFETY'", "'RULE'", "'SAFE'", "'SAVE'",
- "'SCHEDULER'", "'SCHEMA'", "'SCHEME'", "'SECURITYAUDIT'",
- "'SELECT'", "'SEMANTICKEYPHRASETABLE'", "'SEMANTICSIMILARITYDETAILSTABLE'",
- "'SEMANTICSIMILARITYTABLE'", "'SERVER'", "'SERVICE'",
- "'SERVICE_BROKER'", "'SERVICE_NAME'", "'SESSION'",
- "'SESSION_USER'", "'SET'", "'SETUSER'", "'SHUTDOWN'",
- "'SID'", "'SKIP'", "'SOFTNUMA'", "'SOME'", "'SOURCE'",
- "'SPECIFICATION'", "'SPLIT'", "'SQLDUMPERFLAGS'", "'SQLDUMPERPATH'",
- "'SQLDUMPERTIMEOUTS'", "'STATISTICS'", "'STATE'", "'STATS'",
- "'START'", "'STARTED'", "'STARTUP_STATE'", "'STOP'",
- "'STOPPED'", "'STOP_ON_ERROR'", "'SUPPORTED'", "'SYSTEM_USER'",
- "'TABLE'", "'TABLESAMPLE'", "'TAPE'", "'TARGET'", "'TCP'",
- "'TEXTSIZE'", "'THEN'", "'TO'", "'TOP'", "'TRACK_CAUSALITY'",
- "'TRAN'", "'TRANSACTION'", "'TRANSFER'", "'TRIGGER'",
- "'TRUNCATE'", "'TSEQUAL'", "'UNCHECKED'", "'UNION'",
- "'UNIQUE'", "'UNLOCK'", "'UNPIVOT'", "'UNSAFE'", "'UPDATE'",
- "'UPDATETEXT'", "'URL'", "'USE'", "'USED'", "'USER'",
- "'VALUES'", "'VARYING'", "'VERBOSELOGGING'", "'VIEW'",
- "'VISIBILITY'", "'WAITFOR'", "'WHEN'", "'WHERE'", "'WHILE'",
- "'WINDOWS'", "'WITH'", "'WITHIN'", "'WITHOUT'", "'WITNESS'",
- "'WRITETEXT'", "'ABSOLUTE'", "'ACCENT_SENSITIVITY'",
- "'ACTION'", "'ACTIVATION'", "'ACTIVE'", "'ADDRESS'",
- "'AES_128'", "'AES_192'", "'AES_256'", "'AFFINITY'",
- "'AFTER'", "'AGGREGATE'", "'ALGORITHM'", "'ALLOW_ENCRYPTED_VALUE_MODIFICATIONS'",
- "'ALLOW_SNAPSHOT_ISOLATION'", "'ALLOWED'", "'ANSI_NULL_DEFAULT'",
- "'ANSI_NULLS'", "'ANSI_PADDING'", "'ANSI_WARNINGS'",
- "'APPLICATION_LOG'", "'APPLY'", "'ARITHABORT'", "'ASSEMBLY'",
- "'AUDIT'", "'AUDIT_GUID'", "'AUTO'", "'AUTO_CLEANUP'",
- "'AUTO_CLOSE'", "'AUTO_CREATE_STATISTICS'", "'AUTO_SHRINK'",
- "'AUTO_UPDATE_STATISTICS'", "'AUTO_UPDATE_STATISTICS_ASYNC'",
- "'AVAILABILITY'", "'AVG'", "'BACKUP_PRIORITY'", "'BEGIN_DIALOG'",
- "'BIGINT'", "'BINARY BASE64'", "'BINARY_CHECKSUM'",
- "'BINDING'", "'BLOB_STORAGE'", "'BROKER'", "'BROKER_INSTANCE'",
- "'BULK_LOGGED'", "'CALLER'", "'CAP_CPU_PERCENT'", null,
- "'CATALOG'", "'CATCH'", "'CHANGE_RETENTION'", "'CHANGE_TRACKING'",
- "'CHECKSUM'", "'CHECKSUM_AGG'", "'CLEANUP'", "'COLLECTION'",
- "'COLUMN_MASTER_KEY'", "'COMMITTED'", "'COMPATIBILITY_LEVEL'",
- "'CONCAT'", "'CONCAT_NULL_YIELDS_NULL'", "'CONTENT'",
- "'CONTROL'", "'COOKIE'", "'COUNT'", "'COUNT_BIG'",
- "'COUNTER'", "'CPU'", "'CREATE_NEW'", "'CREATION_DISPOSITION'",
- "'CREDENTIAL'", "'CRYPTOGRAPHIC'", "'CURSOR_CLOSE_ON_COMMIT'",
- "'CURSOR_DEFAULT'", "'DATA'", "'DATE_CORRELATION_OPTIMIZATION'",
- "'DATEADD'", "'DATEDIFF'", "'DATENAME'", "'DATEPART'",
- "'DAYS'", "'DB_CHAINING'", "'DB_FAILOVER'", "'DECRYPTION'",
- null, "'DEFAULT_FULLTEXT_LANGUAGE'", "'DEFAULT_LANGUAGE'",
- "'DELAY'", "'DELAYED_DURABILITY'", "'DELETED'", "'DENSE_RANK'",
- "'DEPENDENTS'", "'DES'", "'DESCRIPTION'", "'DESX'",
- "'DHCP'", "'DIALOG'", "'DIRECTORY_NAME'", "'DISABLE'",
- "'DISABLE_BROKER'", "'DISABLED'", null, "'DOCUMENT'",
- "'DYNAMIC'", "'ELEMENTS'", "'EMERGENCY'", "'EMPTY'",
- "'ENABLE'", "'ENABLE_BROKER'", "'ENCRYPTED_VALUE'",
- "'ENCRYPTION'", "'ENDPOINT_URL'", "'ERROR_BROKER_CONVERSATIONS'",
- "'EXCLUSIVE'", "'EXECUTABLE'", "'EXIST'", "'EXPAND'",
- "'EXPIRY_DATE'", "'EXPLICIT'", "'FAIL_OPERATION'",
- "'FAILOVER_MODE'", "'FAILURE'", "'FAILURE_CONDITION_LEVEL'",
- "'FAST'", "'FAST_FORWARD'", "'FILEGROUP'", "'FILEGROWTH'",
- "'FILEPATH'", "'FILESTREAM'", "'FILTER'", "'FIRST'",
- "'FIRST_VALUE'", "'FOLLOWING'", "'FORCE'", "'FORCE_FAILOVER_ALLOW_DATA_LOSS'",
- "'FORCED'", "'FORMAT'", "'FORWARD_ONLY'", "'FULLSCAN'",
- "'FULLTEXT'", "'GB'", "'GETDATE'", "'GETUTCDATE'",
- "'GLOBAL'", "'GO'", "'GROUP_MAX_REQUESTS'", "'GROUPING'",
- "'GROUPING_ID'", "'HADR'", "'HASH'", "'HEALTH_CHECK_TIMEOUT'",
- "'HIGH'", "'HONOR_BROKER_PRIORITY'", "'HOURS'", "'IDENTITY_VALUE'",
- "'IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX'", "'IMMEDIATE'",
- "'IMPERSONATE'", "'IMPORTANCE'", "'INCLUDE_NULL_VALUES'",
- "'INCREMENTAL'", "'INITIATOR'", "'INPUT'", "'INSENSITIVE'",
- "'INSERTED'", "'INT'", "'IP'", "'ISOLATION'", "'JOB'",
- "'JSON'", "'KB'", "'KEEP'", "'KEEPFIXED'", "'KEY_SOURCE'",
- "'KEYS'", "'KEYSET'", "'LAG'", "'LAST'", "'LAST_VALUE'",
- "'LEAD'", "'LEVEL'", "'LIST'", "'LISTENER'", "'LISTENER_URL'",
- "'LOB_COMPACTION'", "'LOCAL'", "'LOCATION'", "'LOCK'",
- "'LOCK_ESCALATION'", "'LOGIN'", "'LOOP'", "'LOW'",
- "'MANUAL'", "'MARK'", "'MATERIALIZED'", "'MAX'", "'MAX_CPU_PERCENT'",
- "'MAX_DOP'", "'MAX_FILES'", "'MAX_IOPS_PER_VOLUME'",
- "'MAX_MEMORY_PERCENT'", "'MAX_PROCESSES'", "'MAX_QUEUE_READERS'",
- "'MAX_ROLLOVER_FILES'", "'MAXDOP'", "'MAXRECURSION'",
- "'MAXSIZE'", "'MB'", "'MEDIUM'", "'MEMORY_OPTIMIZED_DATA'",
- "'MESSAGE'", "'MIN'", "'MIN_ACTIVE_ROWVERSION'", "'MIN_CPU_PERCENT'",
- "'MIN_IOPS_PER_VOLUME'", "'MIN_MEMORY_PERCENT'", "'MINUTES'",
- "'MIRROR_ADDRESS'", "'MIXED_PAGE_ALLOCATION'", "'MODE'",
- "'MODIFY'", "'MOVE'", "'MULTI_USER'", "'NAME'", "'NESTED_TRIGGERS'",
- "'NEW_ACCOUNT'", "'NEW_BROKER'", "'NEW_PASSWORD'",
- "'NEXT'", "'NO'", "'NO_TRUNCATE'", "'NO_WAIT'", "'NOCOUNT'",
- "'NODES'", "'NOEXPAND'", "'NON_TRANSACTED_ACCESS'",
- "'NORECOMPUTE'", "'NORECOVERY'", "'NOWAIT'", "'NTILE'",
- "'NUMANODE'", "'NUMBER'", "'NUMERIC_ROUNDABORT'", "'OBJECT'",
- "'OFFLINE'", "'OFFSET'", "'OLD_ACCOUNT'", "'ONLINE'",
- "'ONLY'", "'OPEN_EXISTING'", "'OPTIMISTIC'", "'OPTIMIZE'",
- "'OUT'", "'OUTPUT'", "'OVERRIDE'", "'OWNER'", "'PAGE_VERIFY'",
- "'PARAMETERIZATION'", "'PARTITION'", "'PARTITIONS'",
- "'PARTNER'", "'PATH'", "'POISON_MESSAGE_HANDLING'",
- "'POOL'", "'PORT'", "'PRECEDING'", "'PRIMARY_ROLE'",
- "'PRIOR'", "'PRIORITY'", "'PRIORITY_LEVEL'", "'PRIVATE'",
- "'PRIVATE_KEY'", "'PRIVILEGES'", "'PROCEDURE_NAME'",
- "'PROPERTY'", "'PROVIDER'", "'PROVIDER_KEY_NAME'",
- "'QUERY'", "'QUEUE'", "'QUEUE_DELAY'", "'QUOTED_IDENTIFIER'",
- "'RANGE'", "'RANK'", "'RC2'", "'RC4'", "'RC4_128'",
- "'READ_COMMITTED_SNAPSHOT'", "'READ_ONLY'", "'READ_ONLY_ROUTING_LIST'",
- "'READ_WRITE'", "'READONLY'", "'REBUILD'", "'RECEIVE'",
- "'RECOMPILE'", "'RECOVERY'", "'RECURSIVE_TRIGGERS'",
- "'RELATIVE'", "'REMOTE'", "'REMOTE_SERVICE_NAME'",
- "'REMOVE'", "'REORGANIZE'", "'REPEATABLE'", "'REPLICA'",
- "'REQUEST_MAX_CPU_TIME_SEC'", "'REQUEST_MAX_MEMORY_GRANT_PERCENT'",
- "'REQUEST_MEMORY_GRANT_TIMEOUT_SEC'", "'REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT'",
- "'RESERVE_DISK_SPACE'", "'RESOURCE'", "'RESOURCE_MANAGER_LOCATION'",
- "'RESTRICTED_USER'", "'RETENTION'", "'ROBUST'", "'ROOT'",
- "'ROUTE'", "'ROW'", "'ROW_NUMBER'", "'ROWGUID'", "'ROWS'",
- "'SAMPLE'", "'SCHEMABINDING'", "'SCOPED'", "'SCROLL'",
- "'SCROLL_LOCKS'", "'SEARCH'", "'SECONDARY'", "'SECONDARY_ONLY'",
- "'SECONDARY_ROLE'", "'SECONDS'", "'SECRET'", "'SECURITY'",
- "'SECURITY_LOG'", "'SEEDING_MODE'", "'SELF'", "'SEMI_SENSITIVE'",
- "'SEND'", "'SENT'", "'SEQUENCE'", "'SERIALIZABLE'",
- "'SESSION_TIMEOUT'", "'SETERROR'", "'SHARE'", "'SHOWPLAN'",
- "'SIGNATURE'", "'SIMPLE'", "'SINGLE_USER'", "'SIZE'",
- "'SMALLINT'", "'SNAPSHOT'", "'SPATIAL_WINDOW_MAX_CELLS'",
- "'STANDBY'", "'START_DATE'", "'STATIC'", "'STATS_STREAM'",
- "'STATUS'", "'STATUSONLY'", "'STDEV'", "'STDEVP'",
- "'STOPLIST'", "'STRING_AGG'", "'STUFF'", "'SUBJECT'",
- "'SUBSCRIPTION'", "'SUM'", "'SUSPEND'", "'SYMMETRIC'",
- "'SYNCHRONOUS_COMMIT'", "'SYNONYM'", "'SYSTEM'", "'TAKE'",
- "'TARGET_RECOVERY_TIME'", "'TB'", "'TEXTIMAGE_ON'",
- "'THROW'", "'TIES'", "'TIME'", "'TIMEOUT'", "'TIMER'",
- "'TINYINT'", "'TORN_PAGE_DETECTION'", "'TRANSFORM_NOISE_WORDS'",
- "'TRIPLE_DES'", "'TRIPLE_DES_3KEY'", "'TRUSTWORTHY'",
- "'TRY'", "'TSQL'", "'TWO_DIGIT_YEAR_CUTOFF'", "'TYPE'",
- "'TYPE_WARNING'", "'UNBOUNDED'", "'UNCOMMITTED'", "'UNKNOWN'",
- "'UNLIMITED'", "'UOW'", "'USING'", "'VALID_XML'", "'VALIDATION'",
- "'VALUE'", "'VAR'", "'VARP'", "'VIEW_METADATA'", "'VIEWS'",
- "'WAIT'", "'WELL_FORMED_XML'", "'WITHOUT_ARRAY_WRAPPER'",
- "'WORK'", "'WORKLOAD'", "'XML'", "'XMLDATA'", "'XMLNAMESPACES'",
- "'XMLSCHEMA'", "'XSINIL'", "'$ACTION'", null, null,
- null, null, "'''", null, null, null, null, null, null,
- null, null, null, null, "'='", "'>'", "'<'", "'!'",
- "'+='", "'-='", "'*='", "'/='", "'%='", "'&='", "'^='",
- "'|='", "'||'", "'.'", "'_'", "'@'", "'#'", "'$'",
- "'('", "')'", "','", "';'", "':'", "'*'", "'/'", "'%'",
- "'+'", "'-'", "'~'", "'|'", "'&'", "'^'" ];
-
-var symbolicNames = [ null, "ABSENT", "ADD", "AES", "ALL", "ALLOW_CONNECTIONS",
- "ALLOW_MULTIPLE_EVENT_LOSS", "ALLOW_SINGLE_EVENT_LOSS",
- "ALTER", "AND", "ANONYMOUS", "ANY", "APPEND", "APPLICATION",
- "AS", "ASC", "ASYMMETRIC", "ASYNCHRONOUS_COMMIT",
- "AUTHORIZATION", "AUTHENTICATION", "AUTOMATED_BACKUP_PREFERENCE",
- "AUTOMATIC", "AVAILABILITY_MODE", "BACKSLASH", "BACKUP",
- "BEFORE", "BEGIN", "BETWEEN", "BLOCK", "BLOCKSIZE",
- "BLOCKING_HIERARCHY", "BREAK", "BROWSE", "BUFFER",
- "BUFFERCOUNT", "BULK", "BY", "CACHE", "CALLED", "CASCADE",
- "CASE", "CERTIFICATE", "CHANGETABLE", "CHANGES", "CHECK",
- "CHECKPOINT", "CHECK_POLICY", "CHECK_EXPIRATION",
- "CLASSIFIER_FUNCTION", "CLOSE", "CLUSTER", "CLUSTERED",
- "COALESCE", "COLLATE", "COLUMN", "COMPRESSION", "COMMIT",
- "COMPUTE", "CONFIGURATION", "CONSTRAINT", "CONTAINMENT",
- "CONTAINS", "CONTAINSTABLE", "CONTEXT", "CONTINUE",
- "CONTINUE_AFTER_ERROR", "CONTRACT", "CONTRACT_NAME",
- "CONVERSATION", "CONVERT", "COPY_ONLY", "CREATE",
- "CROSS", "CURRENT", "CURRENT_DATE", "CURRENT_TIME",
- "CURRENT_TIMESTAMP", "CURRENT_USER", "CURSOR", "CYCLE",
- "DATA_COMPRESSION", "DATA_SOURCE", "DATABASE", "DATABASE_MIRRORING",
- "DBCC", "DEALLOCATE", "DECLARE", "DEFAULT", "DEFAULT_DATABASE",
- "DEFAULT_SCHEMA", "DELETE", "DENY", "DESC", "DIAGNOSTICS",
- "DIFFERENTIAL", "DISK", "DISTINCT", "DISTRIBUTED",
- "DOUBLE", "DOUBLE_BACK_SLASH", "DOUBLE_FORWARD_SLASH",
- "DROP", "DTC_SUPPORT", "DUMP", "ELSE", "ENABLED",
- "END", "ENDPOINT", "ERRLVL", "ESCAPE", "ERROR", "EVENT",
- "EVENTDATA", "EVENT_RETENTION_MODE", "EXCEPT", "EXECUTABLE_FILE",
- "EXECUTE", "EXISTS", "EXPIREDATE", "EXIT", "EXTENSION",
- "EXTERNAL", "EXTERNAL_ACCESS", "FAILOVER", "FAILURECONDITIONLEVEL",
- "FAN_IN", "FETCH", "FILE", "FILENAME", "FILLFACTOR",
- "FILE_SNAPSHOT", "FOR", "FORCESEEK", "FORCE_SERVICE_ALLOW_DATA_LOSS",
- "FOREIGN", "FREETEXT", "FREETEXTTABLE", "FROM", "FULL",
- "FUNCTION", "GET", "GOTO", "GOVERNOR", "GRANT", "GROUP",
- "HAVING", "HASHED", "HEALTHCHECKTIMEOUT", "IDENTITY",
- "IDENTITYCOL", "IDENTITY_INSERT", "IF", "IIF", "IN",
- "INCLUDE", "INCREMENT", "INDEX", "INFINITE", "INIT",
- "INNER", "INSERT", "INSTEAD", "INTERSECT", "INTO",
- "IPV4_ADDR", "IPV6_ADDR", "IS", "ISNULL", "JOIN",
- "KERBEROS", "KEY", "KEY_PATH", "KEY_STORE_PROVIDER_NAME",
- "KILL", "LANGUAGE", "LEFT", "LIBRARY", "LIFETIME",
- "LIKE", "LINENO", "LINUX", "LISTENER_IP", "LISTENER_PORT",
- "LOAD", "LOCAL_SERVICE_NAME", "LOG", "MATCHED", "MASTER",
- "MAX_MEMORY", "MAXTRANSFER", "MAXVALUE", "MAX_DISPATCH_LATENCY",
- "MAX_EVENT_SIZE", "MAX_SIZE", "MAX_OUTSTANDING_IO_PER_VOLUME",
- "MEDIADESCRIPTION", "MEDIANAME", "MEMBER", "MEMORY_PARTITION_MODE",
- "MERGE", "MESSAGE_FORWARDING", "MESSAGE_FORWARD_SIZE",
- "MINVALUE", "MIRROR", "MUST_CHANGE", "NATIONAL", "NEGOTIATE",
- "NOCHECK", "NOFORMAT", "NOINIT", "NONCLUSTERED", "NONE",
- "NOREWIND", "NOSKIP", "NOUNLOAD", "NO_CHECKSUM", "NO_COMPRESSION",
- "NO_EVENT_LOSS", "NOT", "NOTIFICATION", "NTLM", "NULL",
- "NULLIF", "OF", "OFF", "OFFSETS", "OLD_PASSWORD",
- "ON", "ON_FAILURE", "OPEN", "OPENDATASOURCE", "OPENQUERY",
- "OPENROWSET", "OPENXML", "OPTION", "OR", "ORDER",
- "OUTER", "OVER", "PAGE", "PARAM_NODE", "PARTIAL",
- "PASSWORD", "PERCENT", "PERMISSION_SET", "PER_CPU",
- "PER_DB", "PER_NODE", "PIVOT", "PLAN", "PLATFORM",
- "POLICY", "PRECISION", "PREDICATE", "PRIMARY", "PRINT",
- "PROC", "PROCEDURE", "PROCESS", "PUBLIC", "PYTHON",
- "R", "RAISERROR", "RAW", "READ", "READTEXT", "READ_WRITE_FILEGROUPS",
- "RECONFIGURE", "REFERENCES", "REGENERATE", "RELATED_CONVERSATION",
- "RELATED_CONVERSATION_GROUP", "REPLICATION", "REQUIRED",
- "RESET", "RESTART", "RESTORE", "RESTRICT", "RESUME",
- "RETAINDAYS", "RETURN", "RETURNS", "REVERT", "REVOKE",
- "REWIND", "RIGHT", "ROLLBACK", "ROLE", "ROWCOUNT",
- "ROWGUIDCOL", "RSA_512", "RSA_1024", "RSA_2048", "RSA_3072",
- "RSA_4096", "SAFETY", "RULE", "SAFE", "SAVE", "SCHEDULER",
- "SCHEMA", "SCHEME", "SECURITYAUDIT", "SELECT", "SEMANTICKEYPHRASETABLE",
- "SEMANTICSIMILARITYDETAILSTABLE", "SEMANTICSIMILARITYTABLE",
- "SERVER", "SERVICE", "SERVICE_BROKER", "SERVICE_NAME",
- "SESSION", "SESSION_USER", "SET", "SETUSER", "SHUTDOWN",
- "SID", "SKIP_KEYWORD", "SOFTNUMA", "SOME", "SOURCE",
- "SPECIFICATION", "SPLIT", "SQLDUMPERFLAGS", "SQLDUMPERPATH",
- "SQLDUMPERTIMEOUT", "STATISTICS", "STATE", "STATS",
- "START", "STARTED", "STARTUP_STATE", "STOP", "STOPPED",
- "STOP_ON_ERROR", "SUPPORTED", "SYSTEM_USER", "TABLE",
- "TABLESAMPLE", "TAPE", "TARGET", "TCP", "TEXTSIZE",
- "THEN", "TO", "TOP", "TRACK_CAUSALITY", "TRAN", "TRANSACTION",
- "TRANSFER", "TRIGGER", "TRUNCATE", "TSEQUAL", "UNCHECKED",
- "UNION", "UNIQUE", "UNLOCK", "UNPIVOT", "UNSAFE",
- "UPDATE", "UPDATETEXT", "URL", "USE", "USED", "USER",
- "VALUES", "VARYING", "VERBOSELOGGING", "VIEW", "VISIBILITY",
- "WAITFOR", "WHEN", "WHERE", "WHILE", "WINDOWS", "WITH",
- "WITHIN", "WITHOUT", "WITNESS", "WRITETEXT", "ABSOLUTE",
- "ACCENT_SENSITIVITY", "ACTION", "ACTIVATION", "ACTIVE",
- "ADDRESS", "AES_128", "AES_192", "AES_256", "AFFINITY",
- "AFTER", "AGGREGATE", "ALGORITHM", "ALLOW_ENCRYPTED_VALUE_MODIFICATIONS",
- "ALLOW_SNAPSHOT_ISOLATION", "ALLOWED", "ANSI_NULL_DEFAULT",
- "ANSI_NULLS", "ANSI_PADDING", "ANSI_WARNINGS", "APPLICATION_LOG",
- "APPLY", "ARITHABORT", "ASSEMBLY", "AUDIT", "AUDIT_GUID",
- "AUTO", "AUTO_CLEANUP", "AUTO_CLOSE", "AUTO_CREATE_STATISTICS",
- "AUTO_SHRINK", "AUTO_UPDATE_STATISTICS", "AUTO_UPDATE_STATISTICS_ASYNC",
- "AVAILABILITY", "AVG", "BACKUP_PRIORITY", "BEGIN_DIALOG",
- "BIGINT", "BINARY_BASE64", "BINARY_CHECKSUM", "BINDING",
- "BLOB_STORAGE", "BROKER", "BROKER_INSTANCE", "BULK_LOGGED",
- "CALLER", "CAP_CPU_PERCENT", "CAST", "CATALOG", "CATCH",
- "CHANGE_RETENTION", "CHANGE_TRACKING", "CHECKSUM",
- "CHECKSUM_AGG", "CLEANUP", "COLLECTION", "COLUMN_MASTER_KEY",
- "COMMITTED", "COMPATIBILITY_LEVEL", "CONCAT", "CONCAT_NULL_YIELDS_NULL",
- "CONTENT", "CONTROL", "COOKIE", "COUNT", "COUNT_BIG",
- "COUNTER", "CPU", "CREATE_NEW", "CREATION_DISPOSITION",
- "CREDENTIAL", "CRYPTOGRAPHIC", "CURSOR_CLOSE_ON_COMMIT",
- "CURSOR_DEFAULT", "DATA", "DATE_CORRELATION_OPTIMIZATION",
- "DATEADD", "DATEDIFF", "DATENAME", "DATEPART", "DAYS",
- "DB_CHAINING", "DB_FAILOVER", "DECRYPTION", "DEFAULT_DOUBLE_QUOTE",
- "DEFAULT_FULLTEXT_LANGUAGE", "DEFAULT_LANGUAGE", "DELAY",
- "DELAYED_DURABILITY", "DELETED", "DENSE_RANK", "DEPENDENTS",
- "DES", "DESCRIPTION", "DESX", "DHCP", "DIALOG", "DIRECTORY_NAME",
- "DISABLE", "DISABLE_BROKER", "DISABLED", "DISK_DRIVE",
- "DOCUMENT", "DYNAMIC", "ELEMENTS", "EMERGENCY", "EMPTY",
- "ENABLE", "ENABLE_BROKER", "ENCRYPTED_VALUE", "ENCRYPTION",
- "ENDPOINT_URL", "ERROR_BROKER_CONVERSATIONS", "EXCLUSIVE",
- "EXECUTABLE", "EXIST", "EXPAND", "EXPIRY_DATE", "EXPLICIT",
- "FAIL_OPERATION", "FAILOVER_MODE", "FAILURE", "FAILURE_CONDITION_LEVEL",
- "FAST", "FAST_FORWARD", "FILEGROUP", "FILEGROWTH",
- "FILEPATH", "FILESTREAM", "FILTER", "FIRST", "FIRST_VALUE",
- "FOLLOWING", "FORCE", "FORCE_FAILOVER_ALLOW_DATA_LOSS",
- "FORCED", "FORMAT", "FORWARD_ONLY", "FULLSCAN", "FULLTEXT",
- "GB", "GETDATE", "GETUTCDATE", "GLOBAL", "GO", "GROUP_MAX_REQUESTS",
- "GROUPING", "GROUPING_ID", "HADR", "HASH", "HEALTH_CHECK_TIMEOUT",
- "HIGH", "HONOR_BROKER_PRIORITY", "HOURS", "IDENTITY_VALUE",
- "IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX", "IMMEDIATE",
- "IMPERSONATE", "IMPORTANCE", "INCLUDE_NULL_VALUES",
- "INCREMENTAL", "INITIATOR", "INPUT", "INSENSITIVE",
- "INSERTED", "INT", "IP", "ISOLATION", "JOB", "JSON",
- "KB", "KEEP", "KEEPFIXED", "KEY_SOURCE", "KEYS", "KEYSET",
- "LAG", "LAST", "LAST_VALUE", "LEAD", "LEVEL", "LIST",
- "LISTENER", "LISTENER_URL", "LOB_COMPACTION", "LOCAL",
- "LOCATION", "LOCK", "LOCK_ESCALATION", "LOGIN", "LOOP",
- "LOW", "MANUAL", "MARK", "MATERIALIZED", "MAX", "MAX_CPU_PERCENT",
- "MAX_DOP", "MAX_FILES", "MAX_IOPS_PER_VOLUME", "MAX_MEMORY_PERCENT",
- "MAX_PROCESSES", "MAX_QUEUE_READERS", "MAX_ROLLOVER_FILES",
- "MAXDOP", "MAXRECURSION", "MAXSIZE", "MB", "MEDIUM",
- "MEMORY_OPTIMIZED_DATA", "MESSAGE", "MIN", "MIN_ACTIVE_ROWVERSION",
- "MIN_CPU_PERCENT", "MIN_IOPS_PER_VOLUME", "MIN_MEMORY_PERCENT",
- "MINUTES", "MIRROR_ADDRESS", "MIXED_PAGE_ALLOCATION",
- "MODE", "MODIFY", "MOVE", "MULTI_USER", "NAME", "NESTED_TRIGGERS",
- "NEW_ACCOUNT", "NEW_BROKER", "NEW_PASSWORD", "NEXT",
- "NO", "NO_TRUNCATE", "NO_WAIT", "NOCOUNT", "NODES",
- "NOEXPAND", "NON_TRANSACTED_ACCESS", "NORECOMPUTE",
- "NORECOVERY", "NOWAIT", "NTILE", "NUMANODE", "NUMBER",
- "NUMERIC_ROUNDABORT", "OBJECT", "OFFLINE", "OFFSET",
- "OLD_ACCOUNT", "ONLINE", "ONLY", "OPEN_EXISTING",
- "OPTIMISTIC", "OPTIMIZE", "OUT", "OUTPUT", "OVERRIDE",
- "OWNER", "PAGE_VERIFY", "PARAMETERIZATION", "PARTITION",
- "PARTITIONS", "PARTNER", "PATH", "POISON_MESSAGE_HANDLING",
- "POOL", "PORT", "PRECEDING", "PRIMARY_ROLE", "PRIOR",
- "PRIORITY", "PRIORITY_LEVEL", "PRIVATE", "PRIVATE_KEY",
- "PRIVILEGES", "PROCEDURE_NAME", "PROPERTY", "PROVIDER",
- "PROVIDER_KEY_NAME", "QUERY", "QUEUE", "QUEUE_DELAY",
- "QUOTED_IDENTIFIER", "RANGE", "RANK", "RC2", "RC4",
- "RC4_128", "READ_COMMITTED_SNAPSHOT", "READ_ONLY",
- "READ_ONLY_ROUTING_LIST", "READ_WRITE", "READONLY",
- "REBUILD", "RECEIVE", "RECOMPILE", "RECOVERY", "RECURSIVE_TRIGGERS",
- "RELATIVE", "REMOTE", "REMOTE_SERVICE_NAME", "REMOVE",
- "REORGANIZE", "REPEATABLE", "REPLICA", "REQUEST_MAX_CPU_TIME_SEC",
- "REQUEST_MAX_MEMORY_GRANT_PERCENT", "REQUEST_MEMORY_GRANT_TIMEOUT_SEC",
- "REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT", "RESERVE_DISK_SPACE",
- "RESOURCE", "RESOURCE_MANAGER_LOCATION", "RESTRICTED_USER",
- "RETENTION", "ROBUST", "ROOT", "ROUTE", "ROW", "ROW_NUMBER",
- "ROWGUID", "ROWS", "SAMPLE", "SCHEMABINDING", "SCOPED",
- "SCROLL", "SCROLL_LOCKS", "SEARCH", "SECONDARY", "SECONDARY_ONLY",
- "SECONDARY_ROLE", "SECONDS", "SECRET", "SECURITY",
- "SECURITY_LOG", "SEEDING_MODE", "SELF", "SEMI_SENSITIVE",
- "SEND", "SENT", "SEQUENCE", "SERIALIZABLE", "SESSION_TIMEOUT",
- "SETERROR", "SHARE", "SHOWPLAN", "SIGNATURE", "SIMPLE",
- "SINGLE_USER", "SIZE", "SMALLINT", "SNAPSHOT", "SPATIAL_WINDOW_MAX_CELLS",
- "STANDBY", "START_DATE", "STATIC", "STATS_STREAM",
- "STATUS", "STATUSONLY", "STDEV", "STDEVP", "STOPLIST",
- "STRING_AGG", "STUFF", "SUBJECT", "SUBSCRIPTION",
- "SUM", "SUSPEND", "SYMMETRIC", "SYNCHRONOUS_COMMIT",
- "SYNONYM", "SYSTEM", "TAKE", "TARGET_RECOVERY_TIME",
- "TB", "TEXTIMAGE_ON", "THROW", "TIES", "TIME", "TIMEOUT",
- "TIMER", "TINYINT", "TORN_PAGE_DETECTION", "TRANSFORM_NOISE_WORDS",
- "TRIPLE_DES", "TRIPLE_DES_3KEY", "TRUSTWORTHY", "TRY",
- "TSQL", "TWO_DIGIT_YEAR_CUTOFF", "TYPE", "TYPE_WARNING",
- "UNBOUNDED", "UNCOMMITTED", "UNKNOWN", "UNLIMITED",
- "UOW", "USING", "VALID_XML", "VALIDATION", "VALUE",
- "VAR", "VARP", "VIEW_METADATA", "VIEWS", "WAIT", "WELL_FORMED_XML",
- "WITHOUT_ARRAY_WRAPPER", "WORK", "WORKLOAD", "XML",
- "XMLDATA", "XMLNAMESPACES", "XMLSCHEMA", "XSINIL",
- "DOLLAR_ACTION", "SPACE", "COMMENT", "LINE_COMMENT",
- "DOUBLE_QUOTE_ID", "SINGLE_QUOTE", "SQUARE_BRACKET_ID",
- "LOCAL_ID", "DECIMAL", "ID", "QUOTED_URL", "QUOTED_HOST_AND_PORT",
- "STRING", "BINARY", "FLOAT", "REAL", "EQUAL", "GREATER",
- "LESS", "EXCLAMATION", "PLUS_ASSIGN", "MINUS_ASSIGN",
- "MULT_ASSIGN", "DIV_ASSIGN", "MOD_ASSIGN", "AND_ASSIGN",
- "XOR_ASSIGN", "OR_ASSIGN", "DOUBLE_BAR", "DOT", "UNDERLINE",
- "AT", "SHARP", "DOLLAR", "LR_BRACKET", "RR_BRACKET",
- "COMMA", "SEMI", "COLON", "STAR", "DIVIDE", "MODULE",
- "PLUS", "MINUS", "BIT_NOT", "BIT_OR", "BIT_AND", "BIT_XOR",
- "IPV4_OCTECT" ];
-
-var ruleNames = [ "tsql_file", "batch", "sql_clauses", "sql_clause", "dml_clause",
- "ddl_clause", "backup_statement", "cfl_statement", "block_statement",
- "break_statement", "continue_statement", "goto_statement",
- "return_statement", "if_statement", "throw_statement",
- "throw_error_number", "throw_message", "throw_state",
- "try_catch_statement", "waitfor_statement", "while_statement",
- "print_statement", "raiseerror_statement", "empty_statement",
- "another_statement", "alter_application_role", "create_application_role",
- "drop_aggregate", "drop_application_role", "alter_assembly",
- "alter_assembly_start", "alter_assembly_clause", "alter_assembly_from_clause",
- "alter_assembly_from_clause_start", "alter_assembly_drop_clause",
- "alter_assembly_drop_multiple_files", "alter_assembly_drop",
- "alter_assembly_add_clause", "alter_asssembly_add_clause_start",
- "alter_assembly_client_file_clause", "alter_assembly_file_name",
- "alter_assembly_file_bits", "alter_assembly_as", "alter_assembly_with_clause",
- "alter_assembly_with", "client_assembly_specifier", "assembly_option",
- "network_file_share", "network_computer", "network_file_start",
- "file_path", "file_directory_path_separator", "local_file",
- "local_drive", "multiple_local_files", "multiple_local_file_start",
- "create_assembly", "drop_assembly", "alter_asymmetric_key",
- "alter_asymmetric_key_start", "asymmetric_key_option",
- "asymmetric_key_option_start", "asymmetric_key_password_change_option",
- "create_asymmetric_key", "drop_asymmetric_key", "alter_authorization",
- "authorization_grantee", "entity_to", "colon_colon",
- "alter_authorization_start", "alter_authorization_for_sql_database",
- "alter_authorization_for_azure_dw", "alter_authorization_for_parallel_dw",
- "class_type", "class_type_for_sql_database", "class_type_for_azure_dw",
- "class_type_for_parallel_dw", "drop_availability_group",
- "alter_availability_group", "alter_availability_group_start",
- "alter_availability_group_options", "create_or_alter_broker_priority",
- "drop_broker_priority", "alter_certificate", "alter_column_encryption_key",
- "create_column_encryption_key", "drop_certificate", "drop_column_encryption_key",
- "drop_column_master_key", "drop_contract", "drop_credential",
- "drop_cryptograhic_provider", "drop_database", "drop_database_audit_specification",
- "drop_database_scoped_credential", "drop_default", "drop_endpoint",
- "drop_external_data_source", "drop_external_file_format",
- "drop_external_library", "drop_external_resource_pool",
- "drop_external_table", "drop_event_notifications", "drop_event_session",
- "drop_fulltext_catalog", "drop_fulltext_index", "drop_fulltext_stoplist",
- "drop_login", "drop_master_key", "drop_message_type",
- "drop_partition_function", "drop_partition_scheme", "drop_queue",
- "drop_remote_service_binding", "drop_resource_pool",
- "drop_db_role", "drop_route", "drop_rule", "drop_schema",
- "drop_search_property_list", "drop_security_policy",
- "drop_sequence", "drop_server_audit", "drop_server_audit_specification",
- "drop_server_role", "drop_service", "drop_signature",
- "drop_statistics_name_azure_dw_and_pdw", "drop_symmetric_key",
- "drop_synonym", "drop_user", "drop_workload_group", "drop_xml_schema_collection",
- "disable_trigger", "enable_trigger", "lock_table", "truncate_table",
- "create_column_master_key", "alter_credential", "create_credential",
- "alter_cryptographic_provider", "create_cryptographic_provider",
- "create_event_notification", "create_or_alter_event_session",
- "event_session_predicate_expression", "event_session_predicate_factor",
- "event_session_predicate_leaf", "alter_external_data_source",
- "alter_external_library", "create_external_library",
- "alter_external_resource_pool", "create_external_resource_pool",
- "alter_fulltext_catalog", "create_fulltext_catalog",
- "alter_fulltext_stoplist", "create_fulltext_stoplist",
- "alter_login_sql_server", "create_login_sql_server",
- "alter_login_azure_sql", "create_login_azure_sql", "alter_login_azure_sql_dw_and_pdw",
- "create_login_pdw", "alter_master_key_sql_server", "create_master_key_sql_server",
- "alter_master_key_azure_sql", "create_master_key_azure_sql",
- "alter_message_type", "alter_partition_function", "alter_partition_scheme",
- "alter_remote_service_binding", "create_remote_service_binding",
- "create_resource_pool", "alter_resource_governor", "alter_db_role",
- "create_db_role", "create_route", "create_rule", "alter_schema_sql",
- "create_schema", "create_schema_azure_sql_dw_and_pdw",
- "alter_schema_azure_sql_dw_and_pdw", "create_search_property_list",
- "create_security_policy", "alter_sequence", "create_sequence",
- "alter_server_audit", "create_server_audit", "alter_server_audit_specification",
- "create_server_audit_specification", "alter_server_configuration",
- "alter_server_role", "create_server_role", "alter_server_role_pdw",
- "alter_service", "create_service", "alter_service_master_key",
- "alter_symmetric_key", "create_symmetric_key", "create_synonym",
- "alter_user", "create_user", "create_user_azure_sql_dw",
- "alter_user_azure_sql", "alter_workload_group", "create_workload_group",
- "create_xml_schema_collection", "create_queue", "queue_settings",
- "alter_queue", "queue_action", "queue_rebuild_options",
- "create_contract", "conversation_statement", "message_statement",
- "merge_statement", "merge_matched", "merge_not_matched",
- "delete_statement", "delete_statement_from", "insert_statement",
- "insert_statement_value", "receive_statement", "select_statement",
- "time", "update_statement", "output_clause", "output_dml_list_elem",
- "output_column_name", "create_database", "create_index",
- "create_or_alter_procedure", "create_or_alter_trigger",
- "create_or_alter_dml_trigger", "dml_trigger_option",
- "dml_trigger_operation", "create_or_alter_ddl_trigger",
- "ddl_trigger_operation", "create_or_alter_function",
- "func_body_returns_select", "func_body_returns_table",
- "func_body_returns_scalar", "procedure_param", "procedure_option",
- "function_option", "create_statistics", "update_statistics",
- "create_table", "table_options", "create_view", "view_attribute",
- "alter_table", "alter_database", "database_optionspec",
- "auto_option", "change_tracking_option", "change_tracking_option_list",
- "containment_option", "cursor_option", "alter_endpoint",
- "database_mirroring_option", "mirroring_set_option",
- "mirroring_partner", "mirroring_witness", "witness_partner_equal",
- "partner_option", "witness_option", "witness_server",
- "partner_server", "mirroring_host_port_seperator", "partner_server_tcp_prefix",
- "port_number", "host", "date_correlation_optimization_option",
- "db_encryption_option", "db_state_option", "db_update_option",
- "db_user_access_option", "delayed_durability_option",
- "external_access_option", "hadr_options", "mixed_page_allocation_option",
- "parameterization_option", "recovery_option", "service_broker_option",
- "snapshot_option", "sql_option", "target_recovery_time_option",
- "termination", "drop_index", "drop_relational_or_xml_or_spatial_index",
- "drop_backward_compatible_index", "drop_procedure", "drop_trigger",
- "drop_dml_trigger", "drop_ddl_trigger", "drop_function",
- "drop_statistics", "drop_table", "drop_view", "create_type",
- "drop_type", "rowset_function_limited", "openquery",
- "opendatasource", "declare_statement", "cursor_statement",
- "backup_database", "backup_log", "backup_certificate",
- "backup_master_key", "backup_service_master_key", "kill_statement",
- "kill_process", "kill_query_notification", "kill_stats_job",
- "execute_statement", "execute_body", "execute_statement_arg",
- "execute_var_string", "security_statement", "create_certificate",
- "existing_keys", "private_key_options", "generate_new_keys",
- "date_options", "open_key", "close_key", "create_key",
- "key_options", "algorithm", "encryption_mechanism", "decryption_mechanism",
- "grant_permission", "set_statement", "transaction_statement",
- "go_statement", "use_statement", "setuser_statement",
- "reconfigure_statement", "shutdown_statement", "dbcc_clause",
- "dbcc_options", "execute_clause", "declare_local", "table_type_definition",
- "xml_type_definition", "xml_schema_collection", "column_def_table_constraints",
- "column_def_table_constraint", "column_definition", "materialized_column_definition",
- "column_constraint", "table_constraint", "on_delete",
- "on_update", "index_options", "index_option", "declare_cursor",
- "declare_set_cursor_common", "declare_set_cursor_common_partial",
- "fetch_cursor", "set_special", "constant_LOCAL_ID", "expression",
- "primitive_expression", "case_expression", "unary_operator_expression",
- "bracket_expression", "constant_expression", "subquery",
- "with_expression", "common_table_expression", "update_elem",
- "search_condition_list", "search_condition", "search_condition_and",
- "search_condition_not", "predicate", "query_expression",
- "sql_union", "query_specification", "top_clause", "top_percent",
- "top_count", "order_by_clause", "for_clause", "xml_common_directives",
- "order_by_expression", "group_by_item", "option_clause",
- "option", "optimize_for_arg", "select_list", "udt_method_arguments",
- "asterisk", "column_elem", "udt_elem", "expression_elem",
- "select_list_elem", "table_sources", "table_source",
- "table_source_item_joined", "table_source_item", "open_xml",
- "schema_declaration", "column_declaration", "change_table",
- "join_part", "pivot_clause", "unpivot_clause", "full_column_name_list",
- "table_name_with_hint", "rowset_function", "bulk_option",
- "derived_table", "function_call", "xml_data_type_methods",
- "value_method", "query_method", "exist_method", "modify_method",
- "nodes_method", "switch_section", "switch_search_condition_section",
- "as_column_alias", "as_table_alias", "table_alias", "with_table_hints",
- "insert_with_table_hints", "table_hint", "index_value",
- "column_alias_list", "column_alias", "table_value_constructor",
- "expression_list", "ranking_windowed_function", "aggregate_windowed_function",
- "analytic_windowed_function", "all_distinct_expression",
- "over_clause", "row_or_range_clause", "window_frame_extent",
- "window_frame_bound", "window_frame_preceding", "window_frame_following",
- "create_database_option", "database_filestream_option",
- "database_file_spec", "file_group", "file_spec", "entity_name",
- "entity_name_for_azure_dw", "entity_name_for_parallel_dw",
- "full_table_name", "table_name", "simple_name", "func_proc_name_schema",
- "func_proc_name_database_schema", "func_proc_name_server_database_schema",
- "ddl_object", "full_column_name", "column_name_list_with_order",
- "column_name_list", "cursor_name", "on_off", "clustered",
- "null_notnull", "null_or_default", "scalar_function_name",
- "begin_conversation_timer", "begin_conversation_dialog",
- "contract_name", "service_name", "end_conversation",
- "waitfor_conversation", "get_conversation", "queue_id",
- "send_conversation", "data_type", "default_value", "constant",
- "sign", "id", "simple_id", "comparison_operator", "assignment_operator",
- "file_size" ];
-
-function TSqlParser (input) {
- antlr4.Parser.call(this, input);
- this._interp = new antlr4.atn.ParserATNSimulator(this, atn, decisionsToDFA, sharedContextCache);
- this.ruleNames = ruleNames;
- this.literalNames = literalNames;
- this.symbolicNames = symbolicNames;
- return this;
-}
-
-TSqlParser.prototype = Object.create(antlr4.Parser.prototype);
-TSqlParser.prototype.constructor = TSqlParser;
-
-Object.defineProperty(TSqlParser.prototype, "atn", {
- get : function() {
- return atn;
- }
-});
-
-TSqlParser.EOF = antlr4.Token.EOF;
-TSqlParser.ABSENT = 1;
-TSqlParser.ADD = 2;
-TSqlParser.AES = 3;
-TSqlParser.ALL = 4;
-TSqlParser.ALLOW_CONNECTIONS = 5;
-TSqlParser.ALLOW_MULTIPLE_EVENT_LOSS = 6;
-TSqlParser.ALLOW_SINGLE_EVENT_LOSS = 7;
-TSqlParser.ALTER = 8;
-TSqlParser.AND = 9;
-TSqlParser.ANONYMOUS = 10;
-TSqlParser.ANY = 11;
-TSqlParser.APPEND = 12;
-TSqlParser.APPLICATION = 13;
-TSqlParser.AS = 14;
-TSqlParser.ASC = 15;
-TSqlParser.ASYMMETRIC = 16;
-TSqlParser.ASYNCHRONOUS_COMMIT = 17;
-TSqlParser.AUTHORIZATION = 18;
-TSqlParser.AUTHENTICATION = 19;
-TSqlParser.AUTOMATED_BACKUP_PREFERENCE = 20;
-TSqlParser.AUTOMATIC = 21;
-TSqlParser.AVAILABILITY_MODE = 22;
-TSqlParser.BACKSLASH = 23;
-TSqlParser.BACKUP = 24;
-TSqlParser.BEFORE = 25;
-TSqlParser.BEGIN = 26;
-TSqlParser.BETWEEN = 27;
-TSqlParser.BLOCK = 28;
-TSqlParser.BLOCKSIZE = 29;
-TSqlParser.BLOCKING_HIERARCHY = 30;
-TSqlParser.BREAK = 31;
-TSqlParser.BROWSE = 32;
-TSqlParser.BUFFER = 33;
-TSqlParser.BUFFERCOUNT = 34;
-TSqlParser.BULK = 35;
-TSqlParser.BY = 36;
-TSqlParser.CACHE = 37;
-TSqlParser.CALLED = 38;
-TSqlParser.CASCADE = 39;
-TSqlParser.CASE = 40;
-TSqlParser.CERTIFICATE = 41;
-TSqlParser.CHANGETABLE = 42;
-TSqlParser.CHANGES = 43;
-TSqlParser.CHECK = 44;
-TSqlParser.CHECKPOINT = 45;
-TSqlParser.CHECK_POLICY = 46;
-TSqlParser.CHECK_EXPIRATION = 47;
-TSqlParser.CLASSIFIER_FUNCTION = 48;
-TSqlParser.CLOSE = 49;
-TSqlParser.CLUSTER = 50;
-TSqlParser.CLUSTERED = 51;
-TSqlParser.COALESCE = 52;
-TSqlParser.COLLATE = 53;
-TSqlParser.COLUMN = 54;
-TSqlParser.COMPRESSION = 55;
-TSqlParser.COMMIT = 56;
-TSqlParser.COMPUTE = 57;
-TSqlParser.CONFIGURATION = 58;
-TSqlParser.CONSTRAINT = 59;
-TSqlParser.CONTAINMENT = 60;
-TSqlParser.CONTAINS = 61;
-TSqlParser.CONTAINSTABLE = 62;
-TSqlParser.CONTEXT = 63;
-TSqlParser.CONTINUE = 64;
-TSqlParser.CONTINUE_AFTER_ERROR = 65;
-TSqlParser.CONTRACT = 66;
-TSqlParser.CONTRACT_NAME = 67;
-TSqlParser.CONVERSATION = 68;
-TSqlParser.CONVERT = 69;
-TSqlParser.COPY_ONLY = 70;
-TSqlParser.CREATE = 71;
-TSqlParser.CROSS = 72;
-TSqlParser.CURRENT = 73;
-TSqlParser.CURRENT_DATE = 74;
-TSqlParser.CURRENT_TIME = 75;
-TSqlParser.CURRENT_TIMESTAMP = 76;
-TSqlParser.CURRENT_USER = 77;
-TSqlParser.CURSOR = 78;
-TSqlParser.CYCLE = 79;
-TSqlParser.DATA_COMPRESSION = 80;
-TSqlParser.DATA_SOURCE = 81;
-TSqlParser.DATABASE = 82;
-TSqlParser.DATABASE_MIRRORING = 83;
-TSqlParser.DBCC = 84;
-TSqlParser.DEALLOCATE = 85;
-TSqlParser.DECLARE = 86;
-TSqlParser.DEFAULT = 87;
-TSqlParser.DEFAULT_DATABASE = 88;
-TSqlParser.DEFAULT_SCHEMA = 89;
-TSqlParser.DELETE = 90;
-TSqlParser.DENY = 91;
-TSqlParser.DESC = 92;
-TSqlParser.DIAGNOSTICS = 93;
-TSqlParser.DIFFERENTIAL = 94;
-TSqlParser.DISK = 95;
-TSqlParser.DISTINCT = 96;
-TSqlParser.DISTRIBUTED = 97;
-TSqlParser.DOUBLE = 98;
-TSqlParser.DOUBLE_BACK_SLASH = 99;
-TSqlParser.DOUBLE_FORWARD_SLASH = 100;
-TSqlParser.DROP = 101;
-TSqlParser.DTC_SUPPORT = 102;
-TSqlParser.DUMP = 103;
-TSqlParser.ELSE = 104;
-TSqlParser.ENABLED = 105;
-TSqlParser.END = 106;
-TSqlParser.ENDPOINT = 107;
-TSqlParser.ERRLVL = 108;
-TSqlParser.ESCAPE = 109;
-TSqlParser.ERROR = 110;
-TSqlParser.EVENT = 111;
-TSqlParser.EVENTDATA = 112;
-TSqlParser.EVENT_RETENTION_MODE = 113;
-TSqlParser.EXCEPT = 114;
-TSqlParser.EXECUTABLE_FILE = 115;
-TSqlParser.EXECUTE = 116;
-TSqlParser.EXISTS = 117;
-TSqlParser.EXPIREDATE = 118;
-TSqlParser.EXIT = 119;
-TSqlParser.EXTENSION = 120;
-TSqlParser.EXTERNAL = 121;
-TSqlParser.EXTERNAL_ACCESS = 122;
-TSqlParser.FAILOVER = 123;
-TSqlParser.FAILURECONDITIONLEVEL = 124;
-TSqlParser.FAN_IN = 125;
-TSqlParser.FETCH = 126;
-TSqlParser.FILE = 127;
-TSqlParser.FILENAME = 128;
-TSqlParser.FILLFACTOR = 129;
-TSqlParser.FILE_SNAPSHOT = 130;
-TSqlParser.FOR = 131;
-TSqlParser.FORCESEEK = 132;
-TSqlParser.FORCE_SERVICE_ALLOW_DATA_LOSS = 133;
-TSqlParser.FOREIGN = 134;
-TSqlParser.FREETEXT = 135;
-TSqlParser.FREETEXTTABLE = 136;
-TSqlParser.FROM = 137;
-TSqlParser.FULL = 138;
-TSqlParser.FUNCTION = 139;
-TSqlParser.GET = 140;
-TSqlParser.GOTO = 141;
-TSqlParser.GOVERNOR = 142;
-TSqlParser.GRANT = 143;
-TSqlParser.GROUP = 144;
-TSqlParser.HAVING = 145;
-TSqlParser.HASHED = 146;
-TSqlParser.HEALTHCHECKTIMEOUT = 147;
-TSqlParser.IDENTITY = 148;
-TSqlParser.IDENTITYCOL = 149;
-TSqlParser.IDENTITY_INSERT = 150;
-TSqlParser.IF = 151;
-TSqlParser.IIF = 152;
-TSqlParser.IN = 153;
-TSqlParser.INCLUDE = 154;
-TSqlParser.INCREMENT = 155;
-TSqlParser.INDEX = 156;
-TSqlParser.INFINITE = 157;
-TSqlParser.INIT = 158;
-TSqlParser.INNER = 159;
-TSqlParser.INSERT = 160;
-TSqlParser.INSTEAD = 161;
-TSqlParser.INTERSECT = 162;
-TSqlParser.INTO = 163;
-TSqlParser.IPV4_ADDR = 164;
-TSqlParser.IPV6_ADDR = 165;
-TSqlParser.IS = 166;
-TSqlParser.ISNULL = 167;
-TSqlParser.JOIN = 168;
-TSqlParser.KERBEROS = 169;
-TSqlParser.KEY = 170;
-TSqlParser.KEY_PATH = 171;
-TSqlParser.KEY_STORE_PROVIDER_NAME = 172;
-TSqlParser.KILL = 173;
-TSqlParser.LANGUAGE = 174;
-TSqlParser.LEFT = 175;
-TSqlParser.LIBRARY = 176;
-TSqlParser.LIFETIME = 177;
-TSqlParser.LIKE = 178;
-TSqlParser.LINENO = 179;
-TSqlParser.LINUX = 180;
-TSqlParser.LISTENER_IP = 181;
-TSqlParser.LISTENER_PORT = 182;
-TSqlParser.LOAD = 183;
-TSqlParser.LOCAL_SERVICE_NAME = 184;
-TSqlParser.LOG = 185;
-TSqlParser.MATCHED = 186;
-TSqlParser.MASTER = 187;
-TSqlParser.MAX_MEMORY = 188;
-TSqlParser.MAXTRANSFER = 189;
-TSqlParser.MAXVALUE = 190;
-TSqlParser.MAX_DISPATCH_LATENCY = 191;
-TSqlParser.MAX_EVENT_SIZE = 192;
-TSqlParser.MAX_SIZE = 193;
-TSqlParser.MAX_OUTSTANDING_IO_PER_VOLUME = 194;
-TSqlParser.MEDIADESCRIPTION = 195;
-TSqlParser.MEDIANAME = 196;
-TSqlParser.MEMBER = 197;
-TSqlParser.MEMORY_PARTITION_MODE = 198;
-TSqlParser.MERGE = 199;
-TSqlParser.MESSAGE_FORWARDING = 200;
-TSqlParser.MESSAGE_FORWARD_SIZE = 201;
-TSqlParser.MINVALUE = 202;
-TSqlParser.MIRROR = 203;
-TSqlParser.MUST_CHANGE = 204;
-TSqlParser.NATIONAL = 205;
-TSqlParser.NEGOTIATE = 206;
-TSqlParser.NOCHECK = 207;
-TSqlParser.NOFORMAT = 208;
-TSqlParser.NOINIT = 209;
-TSqlParser.NONCLUSTERED = 210;
-TSqlParser.NONE = 211;
-TSqlParser.NOREWIND = 212;
-TSqlParser.NOSKIP = 213;
-TSqlParser.NOUNLOAD = 214;
-TSqlParser.NO_CHECKSUM = 215;
-TSqlParser.NO_COMPRESSION = 216;
-TSqlParser.NO_EVENT_LOSS = 217;
-TSqlParser.NOT = 218;
-TSqlParser.NOTIFICATION = 219;
-TSqlParser.NTLM = 220;
-TSqlParser.NULL = 221;
-TSqlParser.NULLIF = 222;
-TSqlParser.OF = 223;
-TSqlParser.OFF = 224;
-TSqlParser.OFFSETS = 225;
-TSqlParser.OLD_PASSWORD = 226;
-TSqlParser.ON = 227;
-TSqlParser.ON_FAILURE = 228;
-TSqlParser.OPEN = 229;
-TSqlParser.OPENDATASOURCE = 230;
-TSqlParser.OPENQUERY = 231;
-TSqlParser.OPENROWSET = 232;
-TSqlParser.OPENXML = 233;
-TSqlParser.OPTION = 234;
-TSqlParser.OR = 235;
-TSqlParser.ORDER = 236;
-TSqlParser.OUTER = 237;
-TSqlParser.OVER = 238;
-TSqlParser.PAGE = 239;
-TSqlParser.PARAM_NODE = 240;
-TSqlParser.PARTIAL = 241;
-TSqlParser.PASSWORD = 242;
-TSqlParser.PERCENT = 243;
-TSqlParser.PERMISSION_SET = 244;
-TSqlParser.PER_CPU = 245;
-TSqlParser.PER_DB = 246;
-TSqlParser.PER_NODE = 247;
-TSqlParser.PIVOT = 248;
-TSqlParser.PLAN = 249;
-TSqlParser.PLATFORM = 250;
-TSqlParser.POLICY = 251;
-TSqlParser.PRECISION = 252;
-TSqlParser.PREDICATE = 253;
-TSqlParser.PRIMARY = 254;
-TSqlParser.PRINT = 255;
-TSqlParser.PROC = 256;
-TSqlParser.PROCEDURE = 257;
-TSqlParser.PROCESS = 258;
-TSqlParser.PUBLIC = 259;
-TSqlParser.PYTHON = 260;
-TSqlParser.R = 261;
-TSqlParser.RAISERROR = 262;
-TSqlParser.RAW = 263;
-TSqlParser.READ = 264;
-TSqlParser.READTEXT = 265;
-TSqlParser.READ_WRITE_FILEGROUPS = 266;
-TSqlParser.RECONFIGURE = 267;
-TSqlParser.REFERENCES = 268;
-TSqlParser.REGENERATE = 269;
-TSqlParser.RELATED_CONVERSATION = 270;
-TSqlParser.RELATED_CONVERSATION_GROUP = 271;
-TSqlParser.REPLICATION = 272;
-TSqlParser.REQUIRED = 273;
-TSqlParser.RESET = 274;
-TSqlParser.RESTART = 275;
-TSqlParser.RESTORE = 276;
-TSqlParser.RESTRICT = 277;
-TSqlParser.RESUME = 278;
-TSqlParser.RETAINDAYS = 279;
-TSqlParser.RETURN = 280;
-TSqlParser.RETURNS = 281;
-TSqlParser.REVERT = 282;
-TSqlParser.REVOKE = 283;
-TSqlParser.REWIND = 284;
-TSqlParser.RIGHT = 285;
-TSqlParser.ROLLBACK = 286;
-TSqlParser.ROLE = 287;
-TSqlParser.ROWCOUNT = 288;
-TSqlParser.ROWGUIDCOL = 289;
-TSqlParser.RSA_512 = 290;
-TSqlParser.RSA_1024 = 291;
-TSqlParser.RSA_2048 = 292;
-TSqlParser.RSA_3072 = 293;
-TSqlParser.RSA_4096 = 294;
-TSqlParser.SAFETY = 295;
-TSqlParser.RULE = 296;
-TSqlParser.SAFE = 297;
-TSqlParser.SAVE = 298;
-TSqlParser.SCHEDULER = 299;
-TSqlParser.SCHEMA = 300;
-TSqlParser.SCHEME = 301;
-TSqlParser.SECURITYAUDIT = 302;
-TSqlParser.SELECT = 303;
-TSqlParser.SEMANTICKEYPHRASETABLE = 304;
-TSqlParser.SEMANTICSIMILARITYDETAILSTABLE = 305;
-TSqlParser.SEMANTICSIMILARITYTABLE = 306;
-TSqlParser.SERVER = 307;
-TSqlParser.SERVICE = 308;
-TSqlParser.SERVICE_BROKER = 309;
-TSqlParser.SERVICE_NAME = 310;
-TSqlParser.SESSION = 311;
-TSqlParser.SESSION_USER = 312;
-TSqlParser.SET = 313;
-TSqlParser.SETUSER = 314;
-TSqlParser.SHUTDOWN = 315;
-TSqlParser.SID = 316;
-TSqlParser.SKIP_KEYWORD = 317;
-TSqlParser.SOFTNUMA = 318;
-TSqlParser.SOME = 319;
-TSqlParser.SOURCE = 320;
-TSqlParser.SPECIFICATION = 321;
-TSqlParser.SPLIT = 322;
-TSqlParser.SQLDUMPERFLAGS = 323;
-TSqlParser.SQLDUMPERPATH = 324;
-TSqlParser.SQLDUMPERTIMEOUT = 325;
-TSqlParser.STATISTICS = 326;
-TSqlParser.STATE = 327;
-TSqlParser.STATS = 328;
-TSqlParser.START = 329;
-TSqlParser.STARTED = 330;
-TSqlParser.STARTUP_STATE = 331;
-TSqlParser.STOP = 332;
-TSqlParser.STOPPED = 333;
-TSqlParser.STOP_ON_ERROR = 334;
-TSqlParser.SUPPORTED = 335;
-TSqlParser.SYSTEM_USER = 336;
-TSqlParser.TABLE = 337;
-TSqlParser.TABLESAMPLE = 338;
-TSqlParser.TAPE = 339;
-TSqlParser.TARGET = 340;
-TSqlParser.TCP = 341;
-TSqlParser.TEXTSIZE = 342;
-TSqlParser.THEN = 343;
-TSqlParser.TO = 344;
-TSqlParser.TOP = 345;
-TSqlParser.TRACK_CAUSALITY = 346;
-TSqlParser.TRAN = 347;
-TSqlParser.TRANSACTION = 348;
-TSqlParser.TRANSFER = 349;
-TSqlParser.TRIGGER = 350;
-TSqlParser.TRUNCATE = 351;
-TSqlParser.TSEQUAL = 352;
-TSqlParser.UNCHECKED = 353;
-TSqlParser.UNION = 354;
-TSqlParser.UNIQUE = 355;
-TSqlParser.UNLOCK = 356;
-TSqlParser.UNPIVOT = 357;
-TSqlParser.UNSAFE = 358;
-TSqlParser.UPDATE = 359;
-TSqlParser.UPDATETEXT = 360;
-TSqlParser.URL = 361;
-TSqlParser.USE = 362;
-TSqlParser.USED = 363;
-TSqlParser.USER = 364;
-TSqlParser.VALUES = 365;
-TSqlParser.VARYING = 366;
-TSqlParser.VERBOSELOGGING = 367;
-TSqlParser.VIEW = 368;
-TSqlParser.VISIBILITY = 369;
-TSqlParser.WAITFOR = 370;
-TSqlParser.WHEN = 371;
-TSqlParser.WHERE = 372;
-TSqlParser.WHILE = 373;
-TSqlParser.WINDOWS = 374;
-TSqlParser.WITH = 375;
-TSqlParser.WITHIN = 376;
-TSqlParser.WITHOUT = 377;
-TSqlParser.WITNESS = 378;
-TSqlParser.WRITETEXT = 379;
-TSqlParser.ABSOLUTE = 380;
-TSqlParser.ACCENT_SENSITIVITY = 381;
-TSqlParser.ACTION = 382;
-TSqlParser.ACTIVATION = 383;
-TSqlParser.ACTIVE = 384;
-TSqlParser.ADDRESS = 385;
-TSqlParser.AES_128 = 386;
-TSqlParser.AES_192 = 387;
-TSqlParser.AES_256 = 388;
-TSqlParser.AFFINITY = 389;
-TSqlParser.AFTER = 390;
-TSqlParser.AGGREGATE = 391;
-TSqlParser.ALGORITHM = 392;
-TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS = 393;
-TSqlParser.ALLOW_SNAPSHOT_ISOLATION = 394;
-TSqlParser.ALLOWED = 395;
-TSqlParser.ANSI_NULL_DEFAULT = 396;
-TSqlParser.ANSI_NULLS = 397;
-TSqlParser.ANSI_PADDING = 398;
-TSqlParser.ANSI_WARNINGS = 399;
-TSqlParser.APPLICATION_LOG = 400;
-TSqlParser.APPLY = 401;
-TSqlParser.ARITHABORT = 402;
-TSqlParser.ASSEMBLY = 403;
-TSqlParser.AUDIT = 404;
-TSqlParser.AUDIT_GUID = 405;
-TSqlParser.AUTO = 406;
-TSqlParser.AUTO_CLEANUP = 407;
-TSqlParser.AUTO_CLOSE = 408;
-TSqlParser.AUTO_CREATE_STATISTICS = 409;
-TSqlParser.AUTO_SHRINK = 410;
-TSqlParser.AUTO_UPDATE_STATISTICS = 411;
-TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC = 412;
-TSqlParser.AVAILABILITY = 413;
-TSqlParser.AVG = 414;
-TSqlParser.BACKUP_PRIORITY = 415;
-TSqlParser.BEGIN_DIALOG = 416;
-TSqlParser.BIGINT = 417;
-TSqlParser.BINARY_BASE64 = 418;
-TSqlParser.BINARY_CHECKSUM = 419;
-TSqlParser.BINDING = 420;
-TSqlParser.BLOB_STORAGE = 421;
-TSqlParser.BROKER = 422;
-TSqlParser.BROKER_INSTANCE = 423;
-TSqlParser.BULK_LOGGED = 424;
-TSqlParser.CALLER = 425;
-TSqlParser.CAP_CPU_PERCENT = 426;
-TSqlParser.CAST = 427;
-TSqlParser.CATALOG = 428;
-TSqlParser.CATCH = 429;
-TSqlParser.CHANGE_RETENTION = 430;
-TSqlParser.CHANGE_TRACKING = 431;
-TSqlParser.CHECKSUM = 432;
-TSqlParser.CHECKSUM_AGG = 433;
-TSqlParser.CLEANUP = 434;
-TSqlParser.COLLECTION = 435;
-TSqlParser.COLUMN_MASTER_KEY = 436;
-TSqlParser.COMMITTED = 437;
-TSqlParser.COMPATIBILITY_LEVEL = 438;
-TSqlParser.CONCAT = 439;
-TSqlParser.CONCAT_NULL_YIELDS_NULL = 440;
-TSqlParser.CONTENT = 441;
-TSqlParser.CONTROL = 442;
-TSqlParser.COOKIE = 443;
-TSqlParser.COUNT = 444;
-TSqlParser.COUNT_BIG = 445;
-TSqlParser.COUNTER = 446;
-TSqlParser.CPU = 447;
-TSqlParser.CREATE_NEW = 448;
-TSqlParser.CREATION_DISPOSITION = 449;
-TSqlParser.CREDENTIAL = 450;
-TSqlParser.CRYPTOGRAPHIC = 451;
-TSqlParser.CURSOR_CLOSE_ON_COMMIT = 452;
-TSqlParser.CURSOR_DEFAULT = 453;
-TSqlParser.DATA = 454;
-TSqlParser.DATE_CORRELATION_OPTIMIZATION = 455;
-TSqlParser.DATEADD = 456;
-TSqlParser.DATEDIFF = 457;
-TSqlParser.DATENAME = 458;
-TSqlParser.DATEPART = 459;
-TSqlParser.DAYS = 460;
-TSqlParser.DB_CHAINING = 461;
-TSqlParser.DB_FAILOVER = 462;
-TSqlParser.DECRYPTION = 463;
-TSqlParser.DEFAULT_DOUBLE_QUOTE = 464;
-TSqlParser.DEFAULT_FULLTEXT_LANGUAGE = 465;
-TSqlParser.DEFAULT_LANGUAGE = 466;
-TSqlParser.DELAY = 467;
-TSqlParser.DELAYED_DURABILITY = 468;
-TSqlParser.DELETED = 469;
-TSqlParser.DENSE_RANK = 470;
-TSqlParser.DEPENDENTS = 471;
-TSqlParser.DES = 472;
-TSqlParser.DESCRIPTION = 473;
-TSqlParser.DESX = 474;
-TSqlParser.DHCP = 475;
-TSqlParser.DIALOG = 476;
-TSqlParser.DIRECTORY_NAME = 477;
-TSqlParser.DISABLE = 478;
-TSqlParser.DISABLE_BROKER = 479;
-TSqlParser.DISABLED = 480;
-TSqlParser.DISK_DRIVE = 481;
-TSqlParser.DOCUMENT = 482;
-TSqlParser.DYNAMIC = 483;
-TSqlParser.ELEMENTS = 484;
-TSqlParser.EMERGENCY = 485;
-TSqlParser.EMPTY = 486;
-TSqlParser.ENABLE = 487;
-TSqlParser.ENABLE_BROKER = 488;
-TSqlParser.ENCRYPTED_VALUE = 489;
-TSqlParser.ENCRYPTION = 490;
-TSqlParser.ENDPOINT_URL = 491;
-TSqlParser.ERROR_BROKER_CONVERSATIONS = 492;
-TSqlParser.EXCLUSIVE = 493;
-TSqlParser.EXECUTABLE = 494;
-TSqlParser.EXIST = 495;
-TSqlParser.EXPAND = 496;
-TSqlParser.EXPIRY_DATE = 497;
-TSqlParser.EXPLICIT = 498;
-TSqlParser.FAIL_OPERATION = 499;
-TSqlParser.FAILOVER_MODE = 500;
-TSqlParser.FAILURE = 501;
-TSqlParser.FAILURE_CONDITION_LEVEL = 502;
-TSqlParser.FAST = 503;
-TSqlParser.FAST_FORWARD = 504;
-TSqlParser.FILEGROUP = 505;
-TSqlParser.FILEGROWTH = 506;
-TSqlParser.FILEPATH = 507;
-TSqlParser.FILESTREAM = 508;
-TSqlParser.FILTER = 509;
-TSqlParser.FIRST = 510;
-TSqlParser.FIRST_VALUE = 511;
-TSqlParser.FOLLOWING = 512;
-TSqlParser.FORCE = 513;
-TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS = 514;
-TSqlParser.FORCED = 515;
-TSqlParser.FORMAT = 516;
-TSqlParser.FORWARD_ONLY = 517;
-TSqlParser.FULLSCAN = 518;
-TSqlParser.FULLTEXT = 519;
-TSqlParser.GB = 520;
-TSqlParser.GETDATE = 521;
-TSqlParser.GETUTCDATE = 522;
-TSqlParser.GLOBAL = 523;
-TSqlParser.GO = 524;
-TSqlParser.GROUP_MAX_REQUESTS = 525;
-TSqlParser.GROUPING = 526;
-TSqlParser.GROUPING_ID = 527;
-TSqlParser.HADR = 528;
-TSqlParser.HASH = 529;
-TSqlParser.HEALTH_CHECK_TIMEOUT = 530;
-TSqlParser.HIGH = 531;
-TSqlParser.HONOR_BROKER_PRIORITY = 532;
-TSqlParser.HOURS = 533;
-TSqlParser.IDENTITY_VALUE = 534;
-TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX = 535;
-TSqlParser.IMMEDIATE = 536;
-TSqlParser.IMPERSONATE = 537;
-TSqlParser.IMPORTANCE = 538;
-TSqlParser.INCLUDE_NULL_VALUES = 539;
-TSqlParser.INCREMENTAL = 540;
-TSqlParser.INITIATOR = 541;
-TSqlParser.INPUT = 542;
-TSqlParser.INSENSITIVE = 543;
-TSqlParser.INSERTED = 544;
-TSqlParser.INT = 545;
-TSqlParser.IP = 546;
-TSqlParser.ISOLATION = 547;
-TSqlParser.JOB = 548;
-TSqlParser.JSON = 549;
-TSqlParser.KB = 550;
-TSqlParser.KEEP = 551;
-TSqlParser.KEEPFIXED = 552;
-TSqlParser.KEY_SOURCE = 553;
-TSqlParser.KEYS = 554;
-TSqlParser.KEYSET = 555;
-TSqlParser.LAG = 556;
-TSqlParser.LAST = 557;
-TSqlParser.LAST_VALUE = 558;
-TSqlParser.LEAD = 559;
-TSqlParser.LEVEL = 560;
-TSqlParser.LIST = 561;
-TSqlParser.LISTENER = 562;
-TSqlParser.LISTENER_URL = 563;
-TSqlParser.LOB_COMPACTION = 564;
-TSqlParser.LOCAL = 565;
-TSqlParser.LOCATION = 566;
-TSqlParser.LOCK = 567;
-TSqlParser.LOCK_ESCALATION = 568;
-TSqlParser.LOGIN = 569;
-TSqlParser.LOOP = 570;
-TSqlParser.LOW = 571;
-TSqlParser.MANUAL = 572;
-TSqlParser.MARK = 573;
-TSqlParser.MATERIALIZED = 574;
-TSqlParser.MAX = 575;
-TSqlParser.MAX_CPU_PERCENT = 576;
-TSqlParser.MAX_DOP = 577;
-TSqlParser.MAX_FILES = 578;
-TSqlParser.MAX_IOPS_PER_VOLUME = 579;
-TSqlParser.MAX_MEMORY_PERCENT = 580;
-TSqlParser.MAX_PROCESSES = 581;
-TSqlParser.MAX_QUEUE_READERS = 582;
-TSqlParser.MAX_ROLLOVER_FILES = 583;
-TSqlParser.MAXDOP = 584;
-TSqlParser.MAXRECURSION = 585;
-TSqlParser.MAXSIZE = 586;
-TSqlParser.MB = 587;
-TSqlParser.MEDIUM = 588;
-TSqlParser.MEMORY_OPTIMIZED_DATA = 589;
-TSqlParser.MESSAGE = 590;
-TSqlParser.MIN = 591;
-TSqlParser.MIN_ACTIVE_ROWVERSION = 592;
-TSqlParser.MIN_CPU_PERCENT = 593;
-TSqlParser.MIN_IOPS_PER_VOLUME = 594;
-TSqlParser.MIN_MEMORY_PERCENT = 595;
-TSqlParser.MINUTES = 596;
-TSqlParser.MIRROR_ADDRESS = 597;
-TSqlParser.MIXED_PAGE_ALLOCATION = 598;
-TSqlParser.MODE = 599;
-TSqlParser.MODIFY = 600;
-TSqlParser.MOVE = 601;
-TSqlParser.MULTI_USER = 602;
-TSqlParser.NAME = 603;
-TSqlParser.NESTED_TRIGGERS = 604;
-TSqlParser.NEW_ACCOUNT = 605;
-TSqlParser.NEW_BROKER = 606;
-TSqlParser.NEW_PASSWORD = 607;
-TSqlParser.NEXT = 608;
-TSqlParser.NO = 609;
-TSqlParser.NO_TRUNCATE = 610;
-TSqlParser.NO_WAIT = 611;
-TSqlParser.NOCOUNT = 612;
-TSqlParser.NODES = 613;
-TSqlParser.NOEXPAND = 614;
-TSqlParser.NON_TRANSACTED_ACCESS = 615;
-TSqlParser.NORECOMPUTE = 616;
-TSqlParser.NORECOVERY = 617;
-TSqlParser.NOWAIT = 618;
-TSqlParser.NTILE = 619;
-TSqlParser.NUMANODE = 620;
-TSqlParser.NUMBER = 621;
-TSqlParser.NUMERIC_ROUNDABORT = 622;
-TSqlParser.OBJECT = 623;
-TSqlParser.OFFLINE = 624;
-TSqlParser.OFFSET = 625;
-TSqlParser.OLD_ACCOUNT = 626;
-TSqlParser.ONLINE = 627;
-TSqlParser.ONLY = 628;
-TSqlParser.OPEN_EXISTING = 629;
-TSqlParser.OPTIMISTIC = 630;
-TSqlParser.OPTIMIZE = 631;
-TSqlParser.OUT = 632;
-TSqlParser.OUTPUT = 633;
-TSqlParser.OVERRIDE = 634;
-TSqlParser.OWNER = 635;
-TSqlParser.PAGE_VERIFY = 636;
-TSqlParser.PARAMETERIZATION = 637;
-TSqlParser.PARTITION = 638;
-TSqlParser.PARTITIONS = 639;
-TSqlParser.PARTNER = 640;
-TSqlParser.PATH = 641;
-TSqlParser.POISON_MESSAGE_HANDLING = 642;
-TSqlParser.POOL = 643;
-TSqlParser.PORT = 644;
-TSqlParser.PRECEDING = 645;
-TSqlParser.PRIMARY_ROLE = 646;
-TSqlParser.PRIOR = 647;
-TSqlParser.PRIORITY = 648;
-TSqlParser.PRIORITY_LEVEL = 649;
-TSqlParser.PRIVATE = 650;
-TSqlParser.PRIVATE_KEY = 651;
-TSqlParser.PRIVILEGES = 652;
-TSqlParser.PROCEDURE_NAME = 653;
-TSqlParser.PROPERTY = 654;
-TSqlParser.PROVIDER = 655;
-TSqlParser.PROVIDER_KEY_NAME = 656;
-TSqlParser.QUERY = 657;
-TSqlParser.QUEUE = 658;
-TSqlParser.QUEUE_DELAY = 659;
-TSqlParser.QUOTED_IDENTIFIER = 660;
-TSqlParser.RANGE = 661;
-TSqlParser.RANK = 662;
-TSqlParser.RC2 = 663;
-TSqlParser.RC4 = 664;
-TSqlParser.RC4_128 = 665;
-TSqlParser.READ_COMMITTED_SNAPSHOT = 666;
-TSqlParser.READ_ONLY = 667;
-TSqlParser.READ_ONLY_ROUTING_LIST = 668;
-TSqlParser.READ_WRITE = 669;
-TSqlParser.READONLY = 670;
-TSqlParser.REBUILD = 671;
-TSqlParser.RECEIVE = 672;
-TSqlParser.RECOMPILE = 673;
-TSqlParser.RECOVERY = 674;
-TSqlParser.RECURSIVE_TRIGGERS = 675;
-TSqlParser.RELATIVE = 676;
-TSqlParser.REMOTE = 677;
-TSqlParser.REMOTE_SERVICE_NAME = 678;
-TSqlParser.REMOVE = 679;
-TSqlParser.REORGANIZE = 680;
-TSqlParser.REPEATABLE = 681;
-TSqlParser.REPLICA = 682;
-TSqlParser.REQUEST_MAX_CPU_TIME_SEC = 683;
-TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT = 684;
-TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC = 685;
-TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT = 686;
-TSqlParser.RESERVE_DISK_SPACE = 687;
-TSqlParser.RESOURCE = 688;
-TSqlParser.RESOURCE_MANAGER_LOCATION = 689;
-TSqlParser.RESTRICTED_USER = 690;
-TSqlParser.RETENTION = 691;
-TSqlParser.ROBUST = 692;
-TSqlParser.ROOT = 693;
-TSqlParser.ROUTE = 694;
-TSqlParser.ROW = 695;
-TSqlParser.ROW_NUMBER = 696;
-TSqlParser.ROWGUID = 697;
-TSqlParser.ROWS = 698;
-TSqlParser.SAMPLE = 699;
-TSqlParser.SCHEMABINDING = 700;
-TSqlParser.SCOPED = 701;
-TSqlParser.SCROLL = 702;
-TSqlParser.SCROLL_LOCKS = 703;
-TSqlParser.SEARCH = 704;
-TSqlParser.SECONDARY = 705;
-TSqlParser.SECONDARY_ONLY = 706;
-TSqlParser.SECONDARY_ROLE = 707;
-TSqlParser.SECONDS = 708;
-TSqlParser.SECRET = 709;
-TSqlParser.SECURITY = 710;
-TSqlParser.SECURITY_LOG = 711;
-TSqlParser.SEEDING_MODE = 712;
-TSqlParser.SELF = 713;
-TSqlParser.SEMI_SENSITIVE = 714;
-TSqlParser.SEND = 715;
-TSqlParser.SENT = 716;
-TSqlParser.SEQUENCE = 717;
-TSqlParser.SERIALIZABLE = 718;
-TSqlParser.SESSION_TIMEOUT = 719;
-TSqlParser.SETERROR = 720;
-TSqlParser.SHARE = 721;
-TSqlParser.SHOWPLAN = 722;
-TSqlParser.SIGNATURE = 723;
-TSqlParser.SIMPLE = 724;
-TSqlParser.SINGLE_USER = 725;
-TSqlParser.SIZE = 726;
-TSqlParser.SMALLINT = 727;
-TSqlParser.SNAPSHOT = 728;
-TSqlParser.SPATIAL_WINDOW_MAX_CELLS = 729;
-TSqlParser.STANDBY = 730;
-TSqlParser.START_DATE = 731;
-TSqlParser.STATIC = 732;
-TSqlParser.STATS_STREAM = 733;
-TSqlParser.STATUS = 734;
-TSqlParser.STATUSONLY = 735;
-TSqlParser.STDEV = 736;
-TSqlParser.STDEVP = 737;
-TSqlParser.STOPLIST = 738;
-TSqlParser.STRING_AGG = 739;
-TSqlParser.STUFF = 740;
-TSqlParser.SUBJECT = 741;
-TSqlParser.SUBSCRIPTION = 742;
-TSqlParser.SUM = 743;
-TSqlParser.SUSPEND = 744;
-TSqlParser.SYMMETRIC = 745;
-TSqlParser.SYNCHRONOUS_COMMIT = 746;
-TSqlParser.SYNONYM = 747;
-TSqlParser.SYSTEM = 748;
-TSqlParser.TAKE = 749;
-TSqlParser.TARGET_RECOVERY_TIME = 750;
-TSqlParser.TB = 751;
-TSqlParser.TEXTIMAGE_ON = 752;
-TSqlParser.THROW = 753;
-TSqlParser.TIES = 754;
-TSqlParser.TIME = 755;
-TSqlParser.TIMEOUT = 756;
-TSqlParser.TIMER = 757;
-TSqlParser.TINYINT = 758;
-TSqlParser.TORN_PAGE_DETECTION = 759;
-TSqlParser.TRANSFORM_NOISE_WORDS = 760;
-TSqlParser.TRIPLE_DES = 761;
-TSqlParser.TRIPLE_DES_3KEY = 762;
-TSqlParser.TRUSTWORTHY = 763;
-TSqlParser.TRY = 764;
-TSqlParser.TSQL = 765;
-TSqlParser.TWO_DIGIT_YEAR_CUTOFF = 766;
-TSqlParser.TYPE = 767;
-TSqlParser.TYPE_WARNING = 768;
-TSqlParser.UNBOUNDED = 769;
-TSqlParser.UNCOMMITTED = 770;
-TSqlParser.UNKNOWN = 771;
-TSqlParser.UNLIMITED = 772;
-TSqlParser.UOW = 773;
-TSqlParser.USING = 774;
-TSqlParser.VALID_XML = 775;
-TSqlParser.VALIDATION = 776;
-TSqlParser.VALUE = 777;
-TSqlParser.VAR = 778;
-TSqlParser.VARP = 779;
-TSqlParser.VIEW_METADATA = 780;
-TSqlParser.VIEWS = 781;
-TSqlParser.WAIT = 782;
-TSqlParser.WELL_FORMED_XML = 783;
-TSqlParser.WITHOUT_ARRAY_WRAPPER = 784;
-TSqlParser.WORK = 785;
-TSqlParser.WORKLOAD = 786;
-TSqlParser.XML = 787;
-TSqlParser.XMLDATA = 788;
-TSqlParser.XMLNAMESPACES = 789;
-TSqlParser.XMLSCHEMA = 790;
-TSqlParser.XSINIL = 791;
-TSqlParser.DOLLAR_ACTION = 792;
-TSqlParser.SPACE = 793;
-TSqlParser.COMMENT = 794;
-TSqlParser.LINE_COMMENT = 795;
-TSqlParser.DOUBLE_QUOTE_ID = 796;
-TSqlParser.SINGLE_QUOTE = 797;
-TSqlParser.SQUARE_BRACKET_ID = 798;
-TSqlParser.LOCAL_ID = 799;
-TSqlParser.DECIMAL = 800;
-TSqlParser.ID = 801;
-TSqlParser.QUOTED_URL = 802;
-TSqlParser.QUOTED_HOST_AND_PORT = 803;
-TSqlParser.STRING = 804;
-TSqlParser.BINARY = 805;
-TSqlParser.FLOAT = 806;
-TSqlParser.REAL = 807;
-TSqlParser.EQUAL = 808;
-TSqlParser.GREATER = 809;
-TSqlParser.LESS = 810;
-TSqlParser.EXCLAMATION = 811;
-TSqlParser.PLUS_ASSIGN = 812;
-TSqlParser.MINUS_ASSIGN = 813;
-TSqlParser.MULT_ASSIGN = 814;
-TSqlParser.DIV_ASSIGN = 815;
-TSqlParser.MOD_ASSIGN = 816;
-TSqlParser.AND_ASSIGN = 817;
-TSqlParser.XOR_ASSIGN = 818;
-TSqlParser.OR_ASSIGN = 819;
-TSqlParser.DOUBLE_BAR = 820;
-TSqlParser.DOT = 821;
-TSqlParser.UNDERLINE = 822;
-TSqlParser.AT = 823;
-TSqlParser.SHARP = 824;
-TSqlParser.DOLLAR = 825;
-TSqlParser.LR_BRACKET = 826;
-TSqlParser.RR_BRACKET = 827;
-TSqlParser.COMMA = 828;
-TSqlParser.SEMI = 829;
-TSqlParser.COLON = 830;
-TSqlParser.STAR = 831;
-TSqlParser.DIVIDE = 832;
-TSqlParser.MODULE = 833;
-TSqlParser.PLUS = 834;
-TSqlParser.MINUS = 835;
-TSqlParser.BIT_NOT = 836;
-TSqlParser.BIT_OR = 837;
-TSqlParser.BIT_AND = 838;
-TSqlParser.BIT_XOR = 839;
-TSqlParser.IPV4_OCTECT = 840;
-
-TSqlParser.RULE_tsql_file = 0;
-TSqlParser.RULE_batch = 1;
-TSqlParser.RULE_sql_clauses = 2;
-TSqlParser.RULE_sql_clause = 3;
-TSqlParser.RULE_dml_clause = 4;
-TSqlParser.RULE_ddl_clause = 5;
-TSqlParser.RULE_backup_statement = 6;
-TSqlParser.RULE_cfl_statement = 7;
-TSqlParser.RULE_block_statement = 8;
-TSqlParser.RULE_break_statement = 9;
-TSqlParser.RULE_continue_statement = 10;
-TSqlParser.RULE_goto_statement = 11;
-TSqlParser.RULE_return_statement = 12;
-TSqlParser.RULE_if_statement = 13;
-TSqlParser.RULE_throw_statement = 14;
-TSqlParser.RULE_throw_error_number = 15;
-TSqlParser.RULE_throw_message = 16;
-TSqlParser.RULE_throw_state = 17;
-TSqlParser.RULE_try_catch_statement = 18;
-TSqlParser.RULE_waitfor_statement = 19;
-TSqlParser.RULE_while_statement = 20;
-TSqlParser.RULE_print_statement = 21;
-TSqlParser.RULE_raiseerror_statement = 22;
-TSqlParser.RULE_empty_statement = 23;
-TSqlParser.RULE_another_statement = 24;
-TSqlParser.RULE_alter_application_role = 25;
-TSqlParser.RULE_create_application_role = 26;
-TSqlParser.RULE_drop_aggregate = 27;
-TSqlParser.RULE_drop_application_role = 28;
-TSqlParser.RULE_alter_assembly = 29;
-TSqlParser.RULE_alter_assembly_start = 30;
-TSqlParser.RULE_alter_assembly_clause = 31;
-TSqlParser.RULE_alter_assembly_from_clause = 32;
-TSqlParser.RULE_alter_assembly_from_clause_start = 33;
-TSqlParser.RULE_alter_assembly_drop_clause = 34;
-TSqlParser.RULE_alter_assembly_drop_multiple_files = 35;
-TSqlParser.RULE_alter_assembly_drop = 36;
-TSqlParser.RULE_alter_assembly_add_clause = 37;
-TSqlParser.RULE_alter_asssembly_add_clause_start = 38;
-TSqlParser.RULE_alter_assembly_client_file_clause = 39;
-TSqlParser.RULE_alter_assembly_file_name = 40;
-TSqlParser.RULE_alter_assembly_file_bits = 41;
-TSqlParser.RULE_alter_assembly_as = 42;
-TSqlParser.RULE_alter_assembly_with_clause = 43;
-TSqlParser.RULE_alter_assembly_with = 44;
-TSqlParser.RULE_client_assembly_specifier = 45;
-TSqlParser.RULE_assembly_option = 46;
-TSqlParser.RULE_network_file_share = 47;
-TSqlParser.RULE_network_computer = 48;
-TSqlParser.RULE_network_file_start = 49;
-TSqlParser.RULE_file_path = 50;
-TSqlParser.RULE_file_directory_path_separator = 51;
-TSqlParser.RULE_local_file = 52;
-TSqlParser.RULE_local_drive = 53;
-TSqlParser.RULE_multiple_local_files = 54;
-TSqlParser.RULE_multiple_local_file_start = 55;
-TSqlParser.RULE_create_assembly = 56;
-TSqlParser.RULE_drop_assembly = 57;
-TSqlParser.RULE_alter_asymmetric_key = 58;
-TSqlParser.RULE_alter_asymmetric_key_start = 59;
-TSqlParser.RULE_asymmetric_key_option = 60;
-TSqlParser.RULE_asymmetric_key_option_start = 61;
-TSqlParser.RULE_asymmetric_key_password_change_option = 62;
-TSqlParser.RULE_create_asymmetric_key = 63;
-TSqlParser.RULE_drop_asymmetric_key = 64;
-TSqlParser.RULE_alter_authorization = 65;
-TSqlParser.RULE_authorization_grantee = 66;
-TSqlParser.RULE_entity_to = 67;
-TSqlParser.RULE_colon_colon = 68;
-TSqlParser.RULE_alter_authorization_start = 69;
-TSqlParser.RULE_alter_authorization_for_sql_database = 70;
-TSqlParser.RULE_alter_authorization_for_azure_dw = 71;
-TSqlParser.RULE_alter_authorization_for_parallel_dw = 72;
-TSqlParser.RULE_class_type = 73;
-TSqlParser.RULE_class_type_for_sql_database = 74;
-TSqlParser.RULE_class_type_for_azure_dw = 75;
-TSqlParser.RULE_class_type_for_parallel_dw = 76;
-TSqlParser.RULE_drop_availability_group = 77;
-TSqlParser.RULE_alter_availability_group = 78;
-TSqlParser.RULE_alter_availability_group_start = 79;
-TSqlParser.RULE_alter_availability_group_options = 80;
-TSqlParser.RULE_create_or_alter_broker_priority = 81;
-TSqlParser.RULE_drop_broker_priority = 82;
-TSqlParser.RULE_alter_certificate = 83;
-TSqlParser.RULE_alter_column_encryption_key = 84;
-TSqlParser.RULE_create_column_encryption_key = 85;
-TSqlParser.RULE_drop_certificate = 86;
-TSqlParser.RULE_drop_column_encryption_key = 87;
-TSqlParser.RULE_drop_column_master_key = 88;
-TSqlParser.RULE_drop_contract = 89;
-TSqlParser.RULE_drop_credential = 90;
-TSqlParser.RULE_drop_cryptograhic_provider = 91;
-TSqlParser.RULE_drop_database = 92;
-TSqlParser.RULE_drop_database_audit_specification = 93;
-TSqlParser.RULE_drop_database_scoped_credential = 94;
-TSqlParser.RULE_drop_default = 95;
-TSqlParser.RULE_drop_endpoint = 96;
-TSqlParser.RULE_drop_external_data_source = 97;
-TSqlParser.RULE_drop_external_file_format = 98;
-TSqlParser.RULE_drop_external_library = 99;
-TSqlParser.RULE_drop_external_resource_pool = 100;
-TSqlParser.RULE_drop_external_table = 101;
-TSqlParser.RULE_drop_event_notifications = 102;
-TSqlParser.RULE_drop_event_session = 103;
-TSqlParser.RULE_drop_fulltext_catalog = 104;
-TSqlParser.RULE_drop_fulltext_index = 105;
-TSqlParser.RULE_drop_fulltext_stoplist = 106;
-TSqlParser.RULE_drop_login = 107;
-TSqlParser.RULE_drop_master_key = 108;
-TSqlParser.RULE_drop_message_type = 109;
-TSqlParser.RULE_drop_partition_function = 110;
-TSqlParser.RULE_drop_partition_scheme = 111;
-TSqlParser.RULE_drop_queue = 112;
-TSqlParser.RULE_drop_remote_service_binding = 113;
-TSqlParser.RULE_drop_resource_pool = 114;
-TSqlParser.RULE_drop_db_role = 115;
-TSqlParser.RULE_drop_route = 116;
-TSqlParser.RULE_drop_rule = 117;
-TSqlParser.RULE_drop_schema = 118;
-TSqlParser.RULE_drop_search_property_list = 119;
-TSqlParser.RULE_drop_security_policy = 120;
-TSqlParser.RULE_drop_sequence = 121;
-TSqlParser.RULE_drop_server_audit = 122;
-TSqlParser.RULE_drop_server_audit_specification = 123;
-TSqlParser.RULE_drop_server_role = 124;
-TSqlParser.RULE_drop_service = 125;
-TSqlParser.RULE_drop_signature = 126;
-TSqlParser.RULE_drop_statistics_name_azure_dw_and_pdw = 127;
-TSqlParser.RULE_drop_symmetric_key = 128;
-TSqlParser.RULE_drop_synonym = 129;
-TSqlParser.RULE_drop_user = 130;
-TSqlParser.RULE_drop_workload_group = 131;
-TSqlParser.RULE_drop_xml_schema_collection = 132;
-TSqlParser.RULE_disable_trigger = 133;
-TSqlParser.RULE_enable_trigger = 134;
-TSqlParser.RULE_lock_table = 135;
-TSqlParser.RULE_truncate_table = 136;
-TSqlParser.RULE_create_column_master_key = 137;
-TSqlParser.RULE_alter_credential = 138;
-TSqlParser.RULE_create_credential = 139;
-TSqlParser.RULE_alter_cryptographic_provider = 140;
-TSqlParser.RULE_create_cryptographic_provider = 141;
-TSqlParser.RULE_create_event_notification = 142;
-TSqlParser.RULE_create_or_alter_event_session = 143;
-TSqlParser.RULE_event_session_predicate_expression = 144;
-TSqlParser.RULE_event_session_predicate_factor = 145;
-TSqlParser.RULE_event_session_predicate_leaf = 146;
-TSqlParser.RULE_alter_external_data_source = 147;
-TSqlParser.RULE_alter_external_library = 148;
-TSqlParser.RULE_create_external_library = 149;
-TSqlParser.RULE_alter_external_resource_pool = 150;
-TSqlParser.RULE_create_external_resource_pool = 151;
-TSqlParser.RULE_alter_fulltext_catalog = 152;
-TSqlParser.RULE_create_fulltext_catalog = 153;
-TSqlParser.RULE_alter_fulltext_stoplist = 154;
-TSqlParser.RULE_create_fulltext_stoplist = 155;
-TSqlParser.RULE_alter_login_sql_server = 156;
-TSqlParser.RULE_create_login_sql_server = 157;
-TSqlParser.RULE_alter_login_azure_sql = 158;
-TSqlParser.RULE_create_login_azure_sql = 159;
-TSqlParser.RULE_alter_login_azure_sql_dw_and_pdw = 160;
-TSqlParser.RULE_create_login_pdw = 161;
-TSqlParser.RULE_alter_master_key_sql_server = 162;
-TSqlParser.RULE_create_master_key_sql_server = 163;
-TSqlParser.RULE_alter_master_key_azure_sql = 164;
-TSqlParser.RULE_create_master_key_azure_sql = 165;
-TSqlParser.RULE_alter_message_type = 166;
-TSqlParser.RULE_alter_partition_function = 167;
-TSqlParser.RULE_alter_partition_scheme = 168;
-TSqlParser.RULE_alter_remote_service_binding = 169;
-TSqlParser.RULE_create_remote_service_binding = 170;
-TSqlParser.RULE_create_resource_pool = 171;
-TSqlParser.RULE_alter_resource_governor = 172;
-TSqlParser.RULE_alter_db_role = 173;
-TSqlParser.RULE_create_db_role = 174;
-TSqlParser.RULE_create_route = 175;
-TSqlParser.RULE_create_rule = 176;
-TSqlParser.RULE_alter_schema_sql = 177;
-TSqlParser.RULE_create_schema = 178;
-TSqlParser.RULE_create_schema_azure_sql_dw_and_pdw = 179;
-TSqlParser.RULE_alter_schema_azure_sql_dw_and_pdw = 180;
-TSqlParser.RULE_create_search_property_list = 181;
-TSqlParser.RULE_create_security_policy = 182;
-TSqlParser.RULE_alter_sequence = 183;
-TSqlParser.RULE_create_sequence = 184;
-TSqlParser.RULE_alter_server_audit = 185;
-TSqlParser.RULE_create_server_audit = 186;
-TSqlParser.RULE_alter_server_audit_specification = 187;
-TSqlParser.RULE_create_server_audit_specification = 188;
-TSqlParser.RULE_alter_server_configuration = 189;
-TSqlParser.RULE_alter_server_role = 190;
-TSqlParser.RULE_create_server_role = 191;
-TSqlParser.RULE_alter_server_role_pdw = 192;
-TSqlParser.RULE_alter_service = 193;
-TSqlParser.RULE_create_service = 194;
-TSqlParser.RULE_alter_service_master_key = 195;
-TSqlParser.RULE_alter_symmetric_key = 196;
-TSqlParser.RULE_create_symmetric_key = 197;
-TSqlParser.RULE_create_synonym = 198;
-TSqlParser.RULE_alter_user = 199;
-TSqlParser.RULE_create_user = 200;
-TSqlParser.RULE_create_user_azure_sql_dw = 201;
-TSqlParser.RULE_alter_user_azure_sql = 202;
-TSqlParser.RULE_alter_workload_group = 203;
-TSqlParser.RULE_create_workload_group = 204;
-TSqlParser.RULE_create_xml_schema_collection = 205;
-TSqlParser.RULE_create_queue = 206;
-TSqlParser.RULE_queue_settings = 207;
-TSqlParser.RULE_alter_queue = 208;
-TSqlParser.RULE_queue_action = 209;
-TSqlParser.RULE_queue_rebuild_options = 210;
-TSqlParser.RULE_create_contract = 211;
-TSqlParser.RULE_conversation_statement = 212;
-TSqlParser.RULE_message_statement = 213;
-TSqlParser.RULE_merge_statement = 214;
-TSqlParser.RULE_merge_matched = 215;
-TSqlParser.RULE_merge_not_matched = 216;
-TSqlParser.RULE_delete_statement = 217;
-TSqlParser.RULE_delete_statement_from = 218;
-TSqlParser.RULE_insert_statement = 219;
-TSqlParser.RULE_insert_statement_value = 220;
-TSqlParser.RULE_receive_statement = 221;
-TSqlParser.RULE_select_statement = 222;
-TSqlParser.RULE_time = 223;
-TSqlParser.RULE_update_statement = 224;
-TSqlParser.RULE_output_clause = 225;
-TSqlParser.RULE_output_dml_list_elem = 226;
-TSqlParser.RULE_output_column_name = 227;
-TSqlParser.RULE_create_database = 228;
-TSqlParser.RULE_create_index = 229;
-TSqlParser.RULE_create_or_alter_procedure = 230;
-TSqlParser.RULE_create_or_alter_trigger = 231;
-TSqlParser.RULE_create_or_alter_dml_trigger = 232;
-TSqlParser.RULE_dml_trigger_option = 233;
-TSqlParser.RULE_dml_trigger_operation = 234;
-TSqlParser.RULE_create_or_alter_ddl_trigger = 235;
-TSqlParser.RULE_ddl_trigger_operation = 236;
-TSqlParser.RULE_create_or_alter_function = 237;
-TSqlParser.RULE_func_body_returns_select = 238;
-TSqlParser.RULE_func_body_returns_table = 239;
-TSqlParser.RULE_func_body_returns_scalar = 240;
-TSqlParser.RULE_procedure_param = 241;
-TSqlParser.RULE_procedure_option = 242;
-TSqlParser.RULE_function_option = 243;
-TSqlParser.RULE_create_statistics = 244;
-TSqlParser.RULE_update_statistics = 245;
-TSqlParser.RULE_create_table = 246;
-TSqlParser.RULE_table_options = 247;
-TSqlParser.RULE_create_view = 248;
-TSqlParser.RULE_view_attribute = 249;
-TSqlParser.RULE_alter_table = 250;
-TSqlParser.RULE_alter_database = 251;
-TSqlParser.RULE_database_optionspec = 252;
-TSqlParser.RULE_auto_option = 253;
-TSqlParser.RULE_change_tracking_option = 254;
-TSqlParser.RULE_change_tracking_option_list = 255;
-TSqlParser.RULE_containment_option = 256;
-TSqlParser.RULE_cursor_option = 257;
-TSqlParser.RULE_alter_endpoint = 258;
-TSqlParser.RULE_database_mirroring_option = 259;
-TSqlParser.RULE_mirroring_set_option = 260;
-TSqlParser.RULE_mirroring_partner = 261;
-TSqlParser.RULE_mirroring_witness = 262;
-TSqlParser.RULE_witness_partner_equal = 263;
-TSqlParser.RULE_partner_option = 264;
-TSqlParser.RULE_witness_option = 265;
-TSqlParser.RULE_witness_server = 266;
-TSqlParser.RULE_partner_server = 267;
-TSqlParser.RULE_mirroring_host_port_seperator = 268;
-TSqlParser.RULE_partner_server_tcp_prefix = 269;
-TSqlParser.RULE_port_number = 270;
-TSqlParser.RULE_host = 271;
-TSqlParser.RULE_date_correlation_optimization_option = 272;
-TSqlParser.RULE_db_encryption_option = 273;
-TSqlParser.RULE_db_state_option = 274;
-TSqlParser.RULE_db_update_option = 275;
-TSqlParser.RULE_db_user_access_option = 276;
-TSqlParser.RULE_delayed_durability_option = 277;
-TSqlParser.RULE_external_access_option = 278;
-TSqlParser.RULE_hadr_options = 279;
-TSqlParser.RULE_mixed_page_allocation_option = 280;
-TSqlParser.RULE_parameterization_option = 281;
-TSqlParser.RULE_recovery_option = 282;
-TSqlParser.RULE_service_broker_option = 283;
-TSqlParser.RULE_snapshot_option = 284;
-TSqlParser.RULE_sql_option = 285;
-TSqlParser.RULE_target_recovery_time_option = 286;
-TSqlParser.RULE_termination = 287;
-TSqlParser.RULE_drop_index = 288;
-TSqlParser.RULE_drop_relational_or_xml_or_spatial_index = 289;
-TSqlParser.RULE_drop_backward_compatible_index = 290;
-TSqlParser.RULE_drop_procedure = 291;
-TSqlParser.RULE_drop_trigger = 292;
-TSqlParser.RULE_drop_dml_trigger = 293;
-TSqlParser.RULE_drop_ddl_trigger = 294;
-TSqlParser.RULE_drop_function = 295;
-TSqlParser.RULE_drop_statistics = 296;
-TSqlParser.RULE_drop_table = 297;
-TSqlParser.RULE_drop_view = 298;
-TSqlParser.RULE_create_type = 299;
-TSqlParser.RULE_drop_type = 300;
-TSqlParser.RULE_rowset_function_limited = 301;
-TSqlParser.RULE_openquery = 302;
-TSqlParser.RULE_opendatasource = 303;
-TSqlParser.RULE_declare_statement = 304;
-TSqlParser.RULE_cursor_statement = 305;
-TSqlParser.RULE_backup_database = 306;
-TSqlParser.RULE_backup_log = 307;
-TSqlParser.RULE_backup_certificate = 308;
-TSqlParser.RULE_backup_master_key = 309;
-TSqlParser.RULE_backup_service_master_key = 310;
-TSqlParser.RULE_kill_statement = 311;
-TSqlParser.RULE_kill_process = 312;
-TSqlParser.RULE_kill_query_notification = 313;
-TSqlParser.RULE_kill_stats_job = 314;
-TSqlParser.RULE_execute_statement = 315;
-TSqlParser.RULE_execute_body = 316;
-TSqlParser.RULE_execute_statement_arg = 317;
-TSqlParser.RULE_execute_var_string = 318;
-TSqlParser.RULE_security_statement = 319;
-TSqlParser.RULE_create_certificate = 320;
-TSqlParser.RULE_existing_keys = 321;
-TSqlParser.RULE_private_key_options = 322;
-TSqlParser.RULE_generate_new_keys = 323;
-TSqlParser.RULE_date_options = 324;
-TSqlParser.RULE_open_key = 325;
-TSqlParser.RULE_close_key = 326;
-TSqlParser.RULE_create_key = 327;
-TSqlParser.RULE_key_options = 328;
-TSqlParser.RULE_algorithm = 329;
-TSqlParser.RULE_encryption_mechanism = 330;
-TSqlParser.RULE_decryption_mechanism = 331;
-TSqlParser.RULE_grant_permission = 332;
-TSqlParser.RULE_set_statement = 333;
-TSqlParser.RULE_transaction_statement = 334;
-TSqlParser.RULE_go_statement = 335;
-TSqlParser.RULE_use_statement = 336;
-TSqlParser.RULE_setuser_statement = 337;
-TSqlParser.RULE_reconfigure_statement = 338;
-TSqlParser.RULE_shutdown_statement = 339;
-TSqlParser.RULE_dbcc_clause = 340;
-TSqlParser.RULE_dbcc_options = 341;
-TSqlParser.RULE_execute_clause = 342;
-TSqlParser.RULE_declare_local = 343;
-TSqlParser.RULE_table_type_definition = 344;
-TSqlParser.RULE_xml_type_definition = 345;
-TSqlParser.RULE_xml_schema_collection = 346;
-TSqlParser.RULE_column_def_table_constraints = 347;
-TSqlParser.RULE_column_def_table_constraint = 348;
-TSqlParser.RULE_column_definition = 349;
-TSqlParser.RULE_materialized_column_definition = 350;
-TSqlParser.RULE_column_constraint = 351;
-TSqlParser.RULE_table_constraint = 352;
-TSqlParser.RULE_on_delete = 353;
-TSqlParser.RULE_on_update = 354;
-TSqlParser.RULE_index_options = 355;
-TSqlParser.RULE_index_option = 356;
-TSqlParser.RULE_declare_cursor = 357;
-TSqlParser.RULE_declare_set_cursor_common = 358;
-TSqlParser.RULE_declare_set_cursor_common_partial = 359;
-TSqlParser.RULE_fetch_cursor = 360;
-TSqlParser.RULE_set_special = 361;
-TSqlParser.RULE_constant_LOCAL_ID = 362;
-TSqlParser.RULE_expression = 363;
-TSqlParser.RULE_primitive_expression = 364;
-TSqlParser.RULE_case_expression = 365;
-TSqlParser.RULE_unary_operator_expression = 366;
-TSqlParser.RULE_bracket_expression = 367;
-TSqlParser.RULE_constant_expression = 368;
-TSqlParser.RULE_subquery = 369;
-TSqlParser.RULE_with_expression = 370;
-TSqlParser.RULE_common_table_expression = 371;
-TSqlParser.RULE_update_elem = 372;
-TSqlParser.RULE_search_condition_list = 373;
-TSqlParser.RULE_search_condition = 374;
-TSqlParser.RULE_search_condition_and = 375;
-TSqlParser.RULE_search_condition_not = 376;
-TSqlParser.RULE_predicate = 377;
-TSqlParser.RULE_query_expression = 378;
-TSqlParser.RULE_sql_union = 379;
-TSqlParser.RULE_query_specification = 380;
-TSqlParser.RULE_top_clause = 381;
-TSqlParser.RULE_top_percent = 382;
-TSqlParser.RULE_top_count = 383;
-TSqlParser.RULE_order_by_clause = 384;
-TSqlParser.RULE_for_clause = 385;
-TSqlParser.RULE_xml_common_directives = 386;
-TSqlParser.RULE_order_by_expression = 387;
-TSqlParser.RULE_group_by_item = 388;
-TSqlParser.RULE_option_clause = 389;
-TSqlParser.RULE_option = 390;
-TSqlParser.RULE_optimize_for_arg = 391;
-TSqlParser.RULE_select_list = 392;
-TSqlParser.RULE_udt_method_arguments = 393;
-TSqlParser.RULE_asterisk = 394;
-TSqlParser.RULE_column_elem = 395;
-TSqlParser.RULE_udt_elem = 396;
-TSqlParser.RULE_expression_elem = 397;
-TSqlParser.RULE_select_list_elem = 398;
-TSqlParser.RULE_table_sources = 399;
-TSqlParser.RULE_table_source = 400;
-TSqlParser.RULE_table_source_item_joined = 401;
-TSqlParser.RULE_table_source_item = 402;
-TSqlParser.RULE_open_xml = 403;
-TSqlParser.RULE_schema_declaration = 404;
-TSqlParser.RULE_column_declaration = 405;
-TSqlParser.RULE_change_table = 406;
-TSqlParser.RULE_join_part = 407;
-TSqlParser.RULE_pivot_clause = 408;
-TSqlParser.RULE_unpivot_clause = 409;
-TSqlParser.RULE_full_column_name_list = 410;
-TSqlParser.RULE_table_name_with_hint = 411;
-TSqlParser.RULE_rowset_function = 412;
-TSqlParser.RULE_bulk_option = 413;
-TSqlParser.RULE_derived_table = 414;
-TSqlParser.RULE_function_call = 415;
-TSqlParser.RULE_xml_data_type_methods = 416;
-TSqlParser.RULE_value_method = 417;
-TSqlParser.RULE_query_method = 418;
-TSqlParser.RULE_exist_method = 419;
-TSqlParser.RULE_modify_method = 420;
-TSqlParser.RULE_nodes_method = 421;
-TSqlParser.RULE_switch_section = 422;
-TSqlParser.RULE_switch_search_condition_section = 423;
-TSqlParser.RULE_as_column_alias = 424;
-TSqlParser.RULE_as_table_alias = 425;
-TSqlParser.RULE_table_alias = 426;
-TSqlParser.RULE_with_table_hints = 427;
-TSqlParser.RULE_insert_with_table_hints = 428;
-TSqlParser.RULE_table_hint = 429;
-TSqlParser.RULE_index_value = 430;
-TSqlParser.RULE_column_alias_list = 431;
-TSqlParser.RULE_column_alias = 432;
-TSqlParser.RULE_table_value_constructor = 433;
-TSqlParser.RULE_expression_list = 434;
-TSqlParser.RULE_ranking_windowed_function = 435;
-TSqlParser.RULE_aggregate_windowed_function = 436;
-TSqlParser.RULE_analytic_windowed_function = 437;
-TSqlParser.RULE_all_distinct_expression = 438;
-TSqlParser.RULE_over_clause = 439;
-TSqlParser.RULE_row_or_range_clause = 440;
-TSqlParser.RULE_window_frame_extent = 441;
-TSqlParser.RULE_window_frame_bound = 442;
-TSqlParser.RULE_window_frame_preceding = 443;
-TSqlParser.RULE_window_frame_following = 444;
-TSqlParser.RULE_create_database_option = 445;
-TSqlParser.RULE_database_filestream_option = 446;
-TSqlParser.RULE_database_file_spec = 447;
-TSqlParser.RULE_file_group = 448;
-TSqlParser.RULE_file_spec = 449;
-TSqlParser.RULE_entity_name = 450;
-TSqlParser.RULE_entity_name_for_azure_dw = 451;
-TSqlParser.RULE_entity_name_for_parallel_dw = 452;
-TSqlParser.RULE_full_table_name = 453;
-TSqlParser.RULE_table_name = 454;
-TSqlParser.RULE_simple_name = 455;
-TSqlParser.RULE_func_proc_name_schema = 456;
-TSqlParser.RULE_func_proc_name_database_schema = 457;
-TSqlParser.RULE_func_proc_name_server_database_schema = 458;
-TSqlParser.RULE_ddl_object = 459;
-TSqlParser.RULE_full_column_name = 460;
-TSqlParser.RULE_column_name_list_with_order = 461;
-TSqlParser.RULE_column_name_list = 462;
-TSqlParser.RULE_cursor_name = 463;
-TSqlParser.RULE_on_off = 464;
-TSqlParser.RULE_clustered = 465;
-TSqlParser.RULE_null_notnull = 466;
-TSqlParser.RULE_null_or_default = 467;
-TSqlParser.RULE_scalar_function_name = 468;
-TSqlParser.RULE_begin_conversation_timer = 469;
-TSqlParser.RULE_begin_conversation_dialog = 470;
-TSqlParser.RULE_contract_name = 471;
-TSqlParser.RULE_service_name = 472;
-TSqlParser.RULE_end_conversation = 473;
-TSqlParser.RULE_waitfor_conversation = 474;
-TSqlParser.RULE_get_conversation = 475;
-TSqlParser.RULE_queue_id = 476;
-TSqlParser.RULE_send_conversation = 477;
-TSqlParser.RULE_data_type = 478;
-TSqlParser.RULE_default_value = 479;
-TSqlParser.RULE_constant = 480;
-TSqlParser.RULE_sign = 481;
-TSqlParser.RULE_id = 482;
-TSqlParser.RULE_simple_id = 483;
-TSqlParser.RULE_comparison_operator = 484;
-TSqlParser.RULE_assignment_operator = 485;
-TSqlParser.RULE_file_size = 486;
-
-
-function Tsql_fileContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_tsql_file;
- return this;
-}
-
-Tsql_fileContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Tsql_fileContext.prototype.constructor = Tsql_fileContext;
-
-Tsql_fileContext.prototype.EOF = function() {
- return this.getToken(TSqlParser.EOF, 0);
-};
-
-Tsql_fileContext.prototype.batch = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(BatchContext);
- } else {
- return this.getTypedRuleContext(BatchContext,i);
- }
-};
-
-Tsql_fileContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterTsql_file(this);
- }
-};
-
-Tsql_fileContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitTsql_file(this);
- }
-};
-
-Tsql_fileContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitTsql_file(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Tsql_fileContext = Tsql_fileContext;
-
-TSqlParser.prototype.tsql_file = function() {
-
- var localctx = new Tsql_fileContext(this, this._ctx, this.state);
- this.enterRule(localctx, 0, TSqlParser.RULE_tsql_file);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 977;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while((((_la) & ~0x1f) == 0 && ((1 << _la) & ((1 << TSqlParser.ALTER) | (1 << TSqlParser.BACKUP) | (1 << TSqlParser.BEGIN) | (1 << TSqlParser.BLOCKING_HIERARCHY) | (1 << TSqlParser.BREAK))) !== 0) || ((((_la - 38)) & ~0x1f) == 0 && ((1 << (_la - 38)) & ((1 << (TSqlParser.CALLED - 38)) | (1 << (TSqlParser.CASE - 38)) | (1 << (TSqlParser.CLOSE - 38)) | (1 << (TSqlParser.COALESCE - 38)) | (1 << (TSqlParser.COMMIT - 38)) | (1 << (TSqlParser.CONTINUE - 38)) | (1 << (TSqlParser.CONVERT - 38)))) !== 0) || ((((_la - 71)) & ~0x1f) == 0 && ((1 << (_la - 71)) & ((1 << (TSqlParser.CREATE - 71)) | (1 << (TSqlParser.CURRENT_TIMESTAMP - 71)) | (1 << (TSqlParser.CURRENT_USER - 71)) | (1 << (TSqlParser.DATA_COMPRESSION - 71)) | (1 << (TSqlParser.DBCC - 71)) | (1 << (TSqlParser.DEALLOCATE - 71)) | (1 << (TSqlParser.DECLARE - 71)) | (1 << (TSqlParser.DEFAULT - 71)) | (1 << (TSqlParser.DELETE - 71)) | (1 << (TSqlParser.DROP - 71)))) !== 0) || ((((_la - 106)) & ~0x1f) == 0 && ((1 << (_la - 106)) & ((1 << (TSqlParser.END - 106)) | (1 << (TSqlParser.EVENTDATA - 106)) | (1 << (TSqlParser.EXECUTE - 106)) | (1 << (TSqlParser.FETCH - 106)) | (1 << (TSqlParser.FILENAME - 106)) | (1 << (TSqlParser.FILLFACTOR - 106)) | (1 << (TSqlParser.FORCESEEK - 106)))) !== 0) || ((((_la - 140)) & ~0x1f) == 0 && ((1 << (_la - 140)) & ((1 << (TSqlParser.GET - 140)) | (1 << (TSqlParser.GOTO - 140)) | (1 << (TSqlParser.GRANT - 140)) | (1 << (TSqlParser.IDENTITY - 140)) | (1 << (TSqlParser.IF - 140)) | (1 << (TSqlParser.IIF - 140)) | (1 << (TSqlParser.INIT - 140)) | (1 << (TSqlParser.INSERT - 140)) | (1 << (TSqlParser.ISNULL - 140)) | (1 << (TSqlParser.KEY - 140)))) !== 0) || ((((_la - 173)) & ~0x1f) == 0 && ((1 << (_la - 173)) & ((1 << (TSqlParser.KILL - 173)) | (1 << (TSqlParser.LEFT - 173)) | (1 << (TSqlParser.MASTER - 173)) | (1 << (TSqlParser.MAX_MEMORY - 173)) | (1 << (TSqlParser.MERGE - 173)))) !== 0) || ((((_la - 221)) & ~0x1f) == 0 && ((1 << (_la - 221)) & ((1 << (TSqlParser.NULL - 221)) | (1 << (TSqlParser.NULLIF - 221)) | (1 << (TSqlParser.OFFSETS - 221)) | (1 << (TSqlParser.OPEN - 221)) | (1 << (TSqlParser.OVER - 221)) | (1 << (TSqlParser.PAGE - 221)))) !== 0) || ((((_la - 255)) & ~0x1f) == 0 && ((1 << (_la - 255)) & ((1 << (TSqlParser.PRINT - 255)) | (1 << (TSqlParser.PUBLIC - 255)) | (1 << (TSqlParser.R - 255)) | (1 << (TSqlParser.RAISERROR - 255)) | (1 << (TSqlParser.RAW - 255)) | (1 << (TSqlParser.RECONFIGURE - 255)) | (1 << (TSqlParser.RETURN - 255)) | (1 << (TSqlParser.RETURNS - 255)) | (1 << (TSqlParser.REVERT - 255)) | (1 << (TSqlParser.RIGHT - 255)) | (1 << (TSqlParser.ROLLBACK - 255)))) !== 0) || ((((_la - 288)) & ~0x1f) == 0 && ((1 << (_la - 288)) & ((1 << (TSqlParser.ROWCOUNT - 288)) | (1 << (TSqlParser.SAFETY - 288)) | (1 << (TSqlParser.SAVE - 288)) | (1 << (TSqlParser.SELECT - 288)) | (1 << (TSqlParser.SERVER - 288)) | (1 << (TSqlParser.SESSION_USER - 288)) | (1 << (TSqlParser.SET - 288)) | (1 << (TSqlParser.SETUSER - 288)) | (1 << (TSqlParser.SHUTDOWN - 288)) | (1 << (TSqlParser.SID - 288)))) !== 0) || ((((_la - 320)) & ~0x1f) == 0 && ((1 << (_la - 320)) & ((1 << (TSqlParser.SOURCE - 320)) | (1 << (TSqlParser.SPLIT - 320)) | (1 << (TSqlParser.STATE - 320)) | (1 << (TSqlParser.START - 320)) | (1 << (TSqlParser.SYSTEM_USER - 320)) | (1 << (TSqlParser.TARGET - 320)) | (1 << (TSqlParser.TRUNCATE - 320)))) !== 0) || ((((_la - 359)) & ~0x1f) == 0 && ((1 << (_la - 359)) & ((1 << (TSqlParser.UPDATE - 359)) | (1 << (TSqlParser.USE - 359)) | (1 << (TSqlParser.WAITFOR - 359)) | (1 << (TSqlParser.WHILE - 359)) | (1 << (TSqlParser.WITH - 359)) | (1 << (TSqlParser.ABSOLUTE - 359)) | (1 << (TSqlParser.ACCENT_SENSITIVITY - 359)) | (1 << (TSqlParser.ACTION - 359)) | (1 << (TSqlParser.ACTIVATION - 359)) | (1 << (TSqlParser.ACTIVE - 359)) | (1 << (TSqlParser.ADDRESS - 359)) | (1 << (TSqlParser.AES_128 - 359)) | (1 << (TSqlParser.AES_192 - 359)) | (1 << (TSqlParser.AES_256 - 359)) | (1 << (TSqlParser.AFFINITY - 359)) | (1 << (TSqlParser.AFTER - 359)))) !== 0) || ((((_la - 391)) & ~0x1f) == 0 && ((1 << (_la - 391)) & ((1 << (TSqlParser.AGGREGATE - 391)) | (1 << (TSqlParser.ALGORITHM - 391)) | (1 << (TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS - 391)) | (1 << (TSqlParser.ALLOW_SNAPSHOT_ISOLATION - 391)) | (1 << (TSqlParser.ALLOWED - 391)) | (1 << (TSqlParser.ANSI_NULL_DEFAULT - 391)) | (1 << (TSqlParser.ANSI_NULLS - 391)) | (1 << (TSqlParser.ANSI_PADDING - 391)) | (1 << (TSqlParser.ANSI_WARNINGS - 391)) | (1 << (TSqlParser.APPLICATION_LOG - 391)) | (1 << (TSqlParser.APPLY - 391)) | (1 << (TSqlParser.ARITHABORT - 391)) | (1 << (TSqlParser.ASSEMBLY - 391)) | (1 << (TSqlParser.AUDIT - 391)) | (1 << (TSqlParser.AUDIT_GUID - 391)) | (1 << (TSqlParser.AUTO - 391)) | (1 << (TSqlParser.AUTO_CLEANUP - 391)) | (1 << (TSqlParser.AUTO_CLOSE - 391)) | (1 << (TSqlParser.AUTO_CREATE_STATISTICS - 391)) | (1 << (TSqlParser.AUTO_SHRINK - 391)) | (1 << (TSqlParser.AUTO_UPDATE_STATISTICS - 391)) | (1 << (TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC - 391)) | (1 << (TSqlParser.AVAILABILITY - 391)) | (1 << (TSqlParser.AVG - 391)) | (1 << (TSqlParser.BACKUP_PRIORITY - 391)) | (1 << (TSqlParser.BEGIN_DIALOG - 391)) | (1 << (TSqlParser.BIGINT - 391)) | (1 << (TSqlParser.BINARY_BASE64 - 391)) | (1 << (TSqlParser.BINARY_CHECKSUM - 391)) | (1 << (TSqlParser.BINDING - 391)) | (1 << (TSqlParser.BLOB_STORAGE - 391)) | (1 << (TSqlParser.BROKER - 391)))) !== 0) || ((((_la - 423)) & ~0x1f) == 0 && ((1 << (_la - 423)) & ((1 << (TSqlParser.BROKER_INSTANCE - 423)) | (1 << (TSqlParser.BULK_LOGGED - 423)) | (1 << (TSqlParser.CALLER - 423)) | (1 << (TSqlParser.CAP_CPU_PERCENT - 423)) | (1 << (TSqlParser.CAST - 423)) | (1 << (TSqlParser.CATALOG - 423)) | (1 << (TSqlParser.CATCH - 423)) | (1 << (TSqlParser.CHANGE_RETENTION - 423)) | (1 << (TSqlParser.CHANGE_TRACKING - 423)) | (1 << (TSqlParser.CHECKSUM - 423)) | (1 << (TSqlParser.CHECKSUM_AGG - 423)) | (1 << (TSqlParser.CLEANUP - 423)) | (1 << (TSqlParser.COLLECTION - 423)) | (1 << (TSqlParser.COLUMN_MASTER_KEY - 423)) | (1 << (TSqlParser.COMMITTED - 423)) | (1 << (TSqlParser.COMPATIBILITY_LEVEL - 423)) | (1 << (TSqlParser.CONCAT - 423)) | (1 << (TSqlParser.CONCAT_NULL_YIELDS_NULL - 423)) | (1 << (TSqlParser.CONTENT - 423)) | (1 << (TSqlParser.CONTROL - 423)) | (1 << (TSqlParser.COOKIE - 423)) | (1 << (TSqlParser.COUNT - 423)) | (1 << (TSqlParser.COUNT_BIG - 423)) | (1 << (TSqlParser.COUNTER - 423)) | (1 << (TSqlParser.CPU - 423)) | (1 << (TSqlParser.CREATE_NEW - 423)) | (1 << (TSqlParser.CREATION_DISPOSITION - 423)) | (1 << (TSqlParser.CREDENTIAL - 423)) | (1 << (TSqlParser.CRYPTOGRAPHIC - 423)) | (1 << (TSqlParser.CURSOR_CLOSE_ON_COMMIT - 423)) | (1 << (TSqlParser.CURSOR_DEFAULT - 423)) | (1 << (TSqlParser.DATA - 423)))) !== 0) || ((((_la - 455)) & ~0x1f) == 0 && ((1 << (_la - 455)) & ((1 << (TSqlParser.DATE_CORRELATION_OPTIMIZATION - 455)) | (1 << (TSqlParser.DATEADD - 455)) | (1 << (TSqlParser.DATEDIFF - 455)) | (1 << (TSqlParser.DATENAME - 455)) | (1 << (TSqlParser.DATEPART - 455)) | (1 << (TSqlParser.DAYS - 455)) | (1 << (TSqlParser.DB_CHAINING - 455)) | (1 << (TSqlParser.DB_FAILOVER - 455)) | (1 << (TSqlParser.DECRYPTION - 455)) | (1 << (TSqlParser.DEFAULT_DOUBLE_QUOTE - 455)) | (1 << (TSqlParser.DEFAULT_FULLTEXT_LANGUAGE - 455)) | (1 << (TSqlParser.DEFAULT_LANGUAGE - 455)) | (1 << (TSqlParser.DELAY - 455)) | (1 << (TSqlParser.DELAYED_DURABILITY - 455)) | (1 << (TSqlParser.DELETED - 455)) | (1 << (TSqlParser.DENSE_RANK - 455)) | (1 << (TSqlParser.DEPENDENTS - 455)) | (1 << (TSqlParser.DES - 455)) | (1 << (TSqlParser.DESCRIPTION - 455)) | (1 << (TSqlParser.DESX - 455)) | (1 << (TSqlParser.DHCP - 455)) | (1 << (TSqlParser.DIALOG - 455)) | (1 << (TSqlParser.DIRECTORY_NAME - 455)) | (1 << (TSqlParser.DISABLE - 455)) | (1 << (TSqlParser.DISABLE_BROKER - 455)) | (1 << (TSqlParser.DISABLED - 455)) | (1 << (TSqlParser.DISK_DRIVE - 455)) | (1 << (TSqlParser.DOCUMENT - 455)) | (1 << (TSqlParser.DYNAMIC - 455)) | (1 << (TSqlParser.EMERGENCY - 455)) | (1 << (TSqlParser.EMPTY - 455)))) !== 0) || ((((_la - 487)) & ~0x1f) == 0 && ((1 << (_la - 487)) & ((1 << (TSqlParser.ENABLE - 487)) | (1 << (TSqlParser.ENABLE_BROKER - 487)) | (1 << (TSqlParser.ENCRYPTED_VALUE - 487)) | (1 << (TSqlParser.ENCRYPTION - 487)) | (1 << (TSqlParser.ENDPOINT_URL - 487)) | (1 << (TSqlParser.ERROR_BROKER_CONVERSATIONS - 487)) | (1 << (TSqlParser.EXCLUSIVE - 487)) | (1 << (TSqlParser.EXECUTABLE - 487)) | (1 << (TSqlParser.EXIST - 487)) | (1 << (TSqlParser.EXPAND - 487)) | (1 << (TSqlParser.EXPIRY_DATE - 487)) | (1 << (TSqlParser.EXPLICIT - 487)) | (1 << (TSqlParser.FAIL_OPERATION - 487)) | (1 << (TSqlParser.FAILOVER_MODE - 487)) | (1 << (TSqlParser.FAILURE - 487)) | (1 << (TSqlParser.FAILURE_CONDITION_LEVEL - 487)) | (1 << (TSqlParser.FAST - 487)) | (1 << (TSqlParser.FAST_FORWARD - 487)) | (1 << (TSqlParser.FILEGROUP - 487)) | (1 << (TSqlParser.FILEGROWTH - 487)) | (1 << (TSqlParser.FILEPATH - 487)) | (1 << (TSqlParser.FILESTREAM - 487)) | (1 << (TSqlParser.FILTER - 487)) | (1 << (TSqlParser.FIRST - 487)) | (1 << (TSqlParser.FIRST_VALUE - 487)) | (1 << (TSqlParser.FOLLOWING - 487)) | (1 << (TSqlParser.FORCE - 487)) | (1 << (TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS - 487)) | (1 << (TSqlParser.FORCED - 487)) | (1 << (TSqlParser.FORMAT - 487)) | (1 << (TSqlParser.FORWARD_ONLY - 487)) | (1 << (TSqlParser.FULLSCAN - 487)))) !== 0) || ((((_la - 519)) & ~0x1f) == 0 && ((1 << (_la - 519)) & ((1 << (TSqlParser.FULLTEXT - 519)) | (1 << (TSqlParser.GB - 519)) | (1 << (TSqlParser.GETDATE - 519)) | (1 << (TSqlParser.GETUTCDATE - 519)) | (1 << (TSqlParser.GLOBAL - 519)) | (1 << (TSqlParser.GO - 519)) | (1 << (TSqlParser.GROUP_MAX_REQUESTS - 519)) | (1 << (TSqlParser.GROUPING - 519)) | (1 << (TSqlParser.GROUPING_ID - 519)) | (1 << (TSqlParser.HADR - 519)) | (1 << (TSqlParser.HASH - 519)) | (1 << (TSqlParser.HEALTH_CHECK_TIMEOUT - 519)) | (1 << (TSqlParser.HIGH - 519)) | (1 << (TSqlParser.HONOR_BROKER_PRIORITY - 519)) | (1 << (TSqlParser.HOURS - 519)) | (1 << (TSqlParser.IDENTITY_VALUE - 519)) | (1 << (TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX - 519)) | (1 << (TSqlParser.IMMEDIATE - 519)) | (1 << (TSqlParser.IMPERSONATE - 519)) | (1 << (TSqlParser.IMPORTANCE - 519)) | (1 << (TSqlParser.INCREMENTAL - 519)) | (1 << (TSqlParser.INITIATOR - 519)) | (1 << (TSqlParser.INPUT - 519)) | (1 << (TSqlParser.INSENSITIVE - 519)) | (1 << (TSqlParser.INSERTED - 519)) | (1 << (TSqlParser.INT - 519)) | (1 << (TSqlParser.IP - 519)) | (1 << (TSqlParser.ISOLATION - 519)) | (1 << (TSqlParser.KB - 519)))) !== 0) || ((((_la - 551)) & ~0x1f) == 0 && ((1 << (_la - 551)) & ((1 << (TSqlParser.KEEP - 551)) | (1 << (TSqlParser.KEEPFIXED - 551)) | (1 << (TSqlParser.KEY_SOURCE - 551)) | (1 << (TSqlParser.KEYS - 551)) | (1 << (TSqlParser.KEYSET - 551)) | (1 << (TSqlParser.LAG - 551)) | (1 << (TSqlParser.LAST - 551)) | (1 << (TSqlParser.LAST_VALUE - 551)) | (1 << (TSqlParser.LEAD - 551)) | (1 << (TSqlParser.LEVEL - 551)) | (1 << (TSqlParser.LIST - 551)) | (1 << (TSqlParser.LISTENER - 551)) | (1 << (TSqlParser.LISTENER_URL - 551)) | (1 << (TSqlParser.LOB_COMPACTION - 551)) | (1 << (TSqlParser.LOCAL - 551)) | (1 << (TSqlParser.LOCATION - 551)) | (1 << (TSqlParser.LOCK - 551)) | (1 << (TSqlParser.LOCK_ESCALATION - 551)) | (1 << (TSqlParser.LOGIN - 551)) | (1 << (TSqlParser.LOOP - 551)) | (1 << (TSqlParser.LOW - 551)) | (1 << (TSqlParser.MANUAL - 551)) | (1 << (TSqlParser.MARK - 551)) | (1 << (TSqlParser.MATERIALIZED - 551)) | (1 << (TSqlParser.MAX - 551)) | (1 << (TSqlParser.MAX_CPU_PERCENT - 551)) | (1 << (TSqlParser.MAX_DOP - 551)) | (1 << (TSqlParser.MAX_FILES - 551)) | (1 << (TSqlParser.MAX_IOPS_PER_VOLUME - 551)) | (1 << (TSqlParser.MAX_MEMORY_PERCENT - 551)) | (1 << (TSqlParser.MAX_PROCESSES - 551)) | (1 << (TSqlParser.MAX_QUEUE_READERS - 551)))) !== 0) || ((((_la - 583)) & ~0x1f) == 0 && ((1 << (_la - 583)) & ((1 << (TSqlParser.MAX_ROLLOVER_FILES - 583)) | (1 << (TSqlParser.MAXDOP - 583)) | (1 << (TSqlParser.MAXRECURSION - 583)) | (1 << (TSqlParser.MAXSIZE - 583)) | (1 << (TSqlParser.MB - 583)) | (1 << (TSqlParser.MEDIUM - 583)) | (1 << (TSqlParser.MEMORY_OPTIMIZED_DATA - 583)) | (1 << (TSqlParser.MESSAGE - 583)) | (1 << (TSqlParser.MIN - 583)) | (1 << (TSqlParser.MIN_ACTIVE_ROWVERSION - 583)) | (1 << (TSqlParser.MIN_CPU_PERCENT - 583)) | (1 << (TSqlParser.MIN_IOPS_PER_VOLUME - 583)) | (1 << (TSqlParser.MIN_MEMORY_PERCENT - 583)) | (1 << (TSqlParser.MINUTES - 583)) | (1 << (TSqlParser.MIRROR_ADDRESS - 583)) | (1 << (TSqlParser.MIXED_PAGE_ALLOCATION - 583)) | (1 << (TSqlParser.MODE - 583)) | (1 << (TSqlParser.MODIFY - 583)) | (1 << (TSqlParser.MOVE - 583)) | (1 << (TSqlParser.MULTI_USER - 583)) | (1 << (TSqlParser.NAME - 583)) | (1 << (TSqlParser.NESTED_TRIGGERS - 583)) | (1 << (TSqlParser.NEW_ACCOUNT - 583)) | (1 << (TSqlParser.NEW_BROKER - 583)) | (1 << (TSqlParser.NEW_PASSWORD - 583)) | (1 << (TSqlParser.NEXT - 583)) | (1 << (TSqlParser.NO - 583)) | (1 << (TSqlParser.NO_TRUNCATE - 583)) | (1 << (TSqlParser.NO_WAIT - 583)) | (1 << (TSqlParser.NOCOUNT - 583)) | (1 << (TSqlParser.NODES - 583)) | (1 << (TSqlParser.NOEXPAND - 583)))) !== 0) || ((((_la - 615)) & ~0x1f) == 0 && ((1 << (_la - 615)) & ((1 << (TSqlParser.NON_TRANSACTED_ACCESS - 615)) | (1 << (TSqlParser.NORECOMPUTE - 615)) | (1 << (TSqlParser.NORECOVERY - 615)) | (1 << (TSqlParser.NOWAIT - 615)) | (1 << (TSqlParser.NTILE - 615)) | (1 << (TSqlParser.NUMANODE - 615)) | (1 << (TSqlParser.NUMBER - 615)) | (1 << (TSqlParser.NUMERIC_ROUNDABORT - 615)) | (1 << (TSqlParser.OBJECT - 615)) | (1 << (TSqlParser.OFFLINE - 615)) | (1 << (TSqlParser.OFFSET - 615)) | (1 << (TSqlParser.OLD_ACCOUNT - 615)) | (1 << (TSqlParser.ONLINE - 615)) | (1 << (TSqlParser.ONLY - 615)) | (1 << (TSqlParser.OPEN_EXISTING - 615)) | (1 << (TSqlParser.OPTIMISTIC - 615)) | (1 << (TSqlParser.OPTIMIZE - 615)) | (1 << (TSqlParser.OUT - 615)) | (1 << (TSqlParser.OUTPUT - 615)) | (1 << (TSqlParser.OWNER - 615)) | (1 << (TSqlParser.PAGE_VERIFY - 615)) | (1 << (TSqlParser.PARAMETERIZATION - 615)) | (1 << (TSqlParser.PARTITION - 615)) | (1 << (TSqlParser.PARTITIONS - 615)) | (1 << (TSqlParser.PARTNER - 615)) | (1 << (TSqlParser.PATH - 615)) | (1 << (TSqlParser.POISON_MESSAGE_HANDLING - 615)) | (1 << (TSqlParser.POOL - 615)) | (1 << (TSqlParser.PORT - 615)) | (1 << (TSqlParser.PRECEDING - 615)) | (1 << (TSqlParser.PRIMARY_ROLE - 615)))) !== 0) || ((((_la - 647)) & ~0x1f) == 0 && ((1 << (_la - 647)) & ((1 << (TSqlParser.PRIOR - 647)) | (1 << (TSqlParser.PRIORITY - 647)) | (1 << (TSqlParser.PRIORITY_LEVEL - 647)) | (1 << (TSqlParser.PRIVATE - 647)) | (1 << (TSqlParser.PRIVATE_KEY - 647)) | (1 << (TSqlParser.PRIVILEGES - 647)) | (1 << (TSqlParser.PROCEDURE_NAME - 647)) | (1 << (TSqlParser.PROPERTY - 647)) | (1 << (TSqlParser.PROVIDER - 647)) | (1 << (TSqlParser.PROVIDER_KEY_NAME - 647)) | (1 << (TSqlParser.QUERY - 647)) | (1 << (TSqlParser.QUEUE - 647)) | (1 << (TSqlParser.QUEUE_DELAY - 647)) | (1 << (TSqlParser.QUOTED_IDENTIFIER - 647)) | (1 << (TSqlParser.RANGE - 647)) | (1 << (TSqlParser.RANK - 647)) | (1 << (TSqlParser.RC2 - 647)) | (1 << (TSqlParser.RC4 - 647)) | (1 << (TSqlParser.RC4_128 - 647)) | (1 << (TSqlParser.READ_COMMITTED_SNAPSHOT - 647)) | (1 << (TSqlParser.READ_ONLY - 647)) | (1 << (TSqlParser.READ_ONLY_ROUTING_LIST - 647)) | (1 << (TSqlParser.READ_WRITE - 647)) | (1 << (TSqlParser.READONLY - 647)) | (1 << (TSqlParser.REBUILD - 647)) | (1 << (TSqlParser.RECEIVE - 647)) | (1 << (TSqlParser.RECOMPILE - 647)) | (1 << (TSqlParser.RECOVERY - 647)) | (1 << (TSqlParser.RECURSIVE_TRIGGERS - 647)) | (1 << (TSqlParser.RELATIVE - 647)) | (1 << (TSqlParser.REMOTE - 647)) | (1 << (TSqlParser.REMOTE_SERVICE_NAME - 647)))) !== 0) || ((((_la - 679)) & ~0x1f) == 0 && ((1 << (_la - 679)) & ((1 << (TSqlParser.REMOVE - 679)) | (1 << (TSqlParser.REORGANIZE - 679)) | (1 << (TSqlParser.REPEATABLE - 679)) | (1 << (TSqlParser.REPLICA - 679)) | (1 << (TSqlParser.REQUEST_MAX_CPU_TIME_SEC - 679)) | (1 << (TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT - 679)) | (1 << (TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC - 679)) | (1 << (TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT - 679)) | (1 << (TSqlParser.RESERVE_DISK_SPACE - 679)) | (1 << (TSqlParser.RESOURCE - 679)) | (1 << (TSqlParser.RESOURCE_MANAGER_LOCATION - 679)) | (1 << (TSqlParser.RESTRICTED_USER - 679)) | (1 << (TSqlParser.RETENTION - 679)) | (1 << (TSqlParser.ROBUST - 679)) | (1 << (TSqlParser.ROOT - 679)) | (1 << (TSqlParser.ROUTE - 679)) | (1 << (TSqlParser.ROW - 679)) | (1 << (TSqlParser.ROW_NUMBER - 679)) | (1 << (TSqlParser.ROWGUID - 679)) | (1 << (TSqlParser.ROWS - 679)) | (1 << (TSqlParser.SAMPLE - 679)) | (1 << (TSqlParser.SCHEMABINDING - 679)) | (1 << (TSqlParser.SCOPED - 679)) | (1 << (TSqlParser.SCROLL - 679)) | (1 << (TSqlParser.SCROLL_LOCKS - 679)) | (1 << (TSqlParser.SEARCH - 679)) | (1 << (TSqlParser.SECONDARY - 679)) | (1 << (TSqlParser.SECONDARY_ONLY - 679)) | (1 << (TSqlParser.SECONDARY_ROLE - 679)) | (1 << (TSqlParser.SECONDS - 679)) | (1 << (TSqlParser.SECRET - 679)) | (1 << (TSqlParser.SECURITY - 679)))) !== 0) || ((((_la - 711)) & ~0x1f) == 0 && ((1 << (_la - 711)) & ((1 << (TSqlParser.SECURITY_LOG - 711)) | (1 << (TSqlParser.SEEDING_MODE - 711)) | (1 << (TSqlParser.SELF - 711)) | (1 << (TSqlParser.SEMI_SENSITIVE - 711)) | (1 << (TSqlParser.SEND - 711)) | (1 << (TSqlParser.SENT - 711)) | (1 << (TSqlParser.SEQUENCE - 711)) | (1 << (TSqlParser.SERIALIZABLE - 711)) | (1 << (TSqlParser.SESSION_TIMEOUT - 711)) | (1 << (TSqlParser.SETERROR - 711)) | (1 << (TSqlParser.SHARE - 711)) | (1 << (TSqlParser.SHOWPLAN - 711)) | (1 << (TSqlParser.SIGNATURE - 711)) | (1 << (TSqlParser.SIMPLE - 711)) | (1 << (TSqlParser.SINGLE_USER - 711)) | (1 << (TSqlParser.SIZE - 711)) | (1 << (TSqlParser.SMALLINT - 711)) | (1 << (TSqlParser.SNAPSHOT - 711)) | (1 << (TSqlParser.SPATIAL_WINDOW_MAX_CELLS - 711)) | (1 << (TSqlParser.STANDBY - 711)) | (1 << (TSqlParser.START_DATE - 711)) | (1 << (TSqlParser.STATIC - 711)) | (1 << (TSqlParser.STATS_STREAM - 711)) | (1 << (TSqlParser.STATUS - 711)) | (1 << (TSqlParser.STDEV - 711)) | (1 << (TSqlParser.STDEVP - 711)) | (1 << (TSqlParser.STOPLIST - 711)) | (1 << (TSqlParser.STRING_AGG - 711)) | (1 << (TSqlParser.STUFF - 711)) | (1 << (TSqlParser.SUBJECT - 711)))) !== 0) || ((((_la - 743)) & ~0x1f) == 0 && ((1 << (_la - 743)) & ((1 << (TSqlParser.SUM - 743)) | (1 << (TSqlParser.SUSPEND - 743)) | (1 << (TSqlParser.SYMMETRIC - 743)) | (1 << (TSqlParser.SYNCHRONOUS_COMMIT - 743)) | (1 << (TSqlParser.SYNONYM - 743)) | (1 << (TSqlParser.SYSTEM - 743)) | (1 << (TSqlParser.TAKE - 743)) | (1 << (TSqlParser.TARGET_RECOVERY_TIME - 743)) | (1 << (TSqlParser.TB - 743)) | (1 << (TSqlParser.TEXTIMAGE_ON - 743)) | (1 << (TSqlParser.THROW - 743)) | (1 << (TSqlParser.TIES - 743)) | (1 << (TSqlParser.TIME - 743)) | (1 << (TSqlParser.TIMEOUT - 743)) | (1 << (TSqlParser.TIMER - 743)) | (1 << (TSqlParser.TINYINT - 743)) | (1 << (TSqlParser.TORN_PAGE_DETECTION - 743)) | (1 << (TSqlParser.TRANSFORM_NOISE_WORDS - 743)) | (1 << (TSqlParser.TRIPLE_DES - 743)) | (1 << (TSqlParser.TRIPLE_DES_3KEY - 743)) | (1 << (TSqlParser.TRUSTWORTHY - 743)) | (1 << (TSqlParser.TRY - 743)) | (1 << (TSqlParser.TSQL - 743)) | (1 << (TSqlParser.TWO_DIGIT_YEAR_CUTOFF - 743)) | (1 << (TSqlParser.TYPE - 743)) | (1 << (TSqlParser.TYPE_WARNING - 743)) | (1 << (TSqlParser.UNBOUNDED - 743)) | (1 << (TSqlParser.UNCOMMITTED - 743)) | (1 << (TSqlParser.UNKNOWN - 743)) | (1 << (TSqlParser.UNLIMITED - 743)) | (1 << (TSqlParser.USING - 743)))) !== 0) || ((((_la - 775)) & ~0x1f) == 0 && ((1 << (_la - 775)) & ((1 << (TSqlParser.VALID_XML - 775)) | (1 << (TSqlParser.VALIDATION - 775)) | (1 << (TSqlParser.VALUE - 775)) | (1 << (TSqlParser.VAR - 775)) | (1 << (TSqlParser.VARP - 775)) | (1 << (TSqlParser.VIEW_METADATA - 775)) | (1 << (TSqlParser.VIEWS - 775)) | (1 << (TSqlParser.WAIT - 775)) | (1 << (TSqlParser.WELL_FORMED_XML - 775)) | (1 << (TSqlParser.WORK - 775)) | (1 << (TSqlParser.WORKLOAD - 775)) | (1 << (TSqlParser.XML - 775)) | (1 << (TSqlParser.XMLNAMESPACES - 775)) | (1 << (TSqlParser.DOUBLE_QUOTE_ID - 775)) | (1 << (TSqlParser.SQUARE_BRACKET_ID - 775)) | (1 << (TSqlParser.LOCAL_ID - 775)) | (1 << (TSqlParser.DECIMAL - 775)) | (1 << (TSqlParser.ID - 775)) | (1 << (TSqlParser.STRING - 775)) | (1 << (TSqlParser.BINARY - 775)) | (1 << (TSqlParser.FLOAT - 775)))) !== 0) || ((((_la - 807)) & ~0x1f) == 0 && ((1 << (_la - 807)) & ((1 << (TSqlParser.REAL - 807)) | (1 << (TSqlParser.DOLLAR - 807)) | (1 << (TSqlParser.LR_BRACKET - 807)) | (1 << (TSqlParser.SEMI - 807)) | (1 << (TSqlParser.PLUS - 807)) | (1 << (TSqlParser.MINUS - 807)) | (1 << (TSqlParser.BIT_NOT - 807)))) !== 0)) {
- this.state = 974;
- this.batch();
- this.state = 979;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- this.state = 980;
- this.match(TSqlParser.EOF);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function BatchContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_batch;
- return this;
-}
-
-BatchContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-BatchContext.prototype.constructor = BatchContext;
-
-BatchContext.prototype.execute_body = function() {
- return this.getTypedRuleContext(Execute_bodyContext,0);
-};
-
-BatchContext.prototype.go_statement = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Go_statementContext);
- } else {
- return this.getTypedRuleContext(Go_statementContext,i);
- }
-};
-
-BatchContext.prototype.sql_clauses = function() {
- return this.getTypedRuleContext(Sql_clausesContext,0);
-};
-
-BatchContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterBatch(this);
- }
-};
-
-BatchContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitBatch(this);
- }
-};
-
-BatchContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitBatch(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.BatchContext = BatchContext;
-
-TSqlParser.prototype.batch = function() {
-
- var localctx = new BatchContext(this, this._ctx, this.state);
- this.enterRule(localctx, 2, TSqlParser.RULE_batch);
- try {
- this.state = 999;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,4,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 982;
- this.execute_body();
- this.state = 986;
- this._errHandler.sync(this);
- var _alt = this._interp.adaptivePredict(this._input,1,this._ctx)
- while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
- if(_alt===1) {
- this.state = 983;
- this.go_statement();
- }
- this.state = 988;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,1,this._ctx);
- }
-
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 990;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,2,this._ctx);
- if(la_===1) {
- this.state = 989;
- this.execute_body();
-
- }
- this.state = 992;
- this.sql_clauses();
- this.state = 996;
- this._errHandler.sync(this);
- var _alt = this._interp.adaptivePredict(this._input,3,this._ctx)
- while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
- if(_alt===1) {
- this.state = 993;
- this.go_statement();
- }
- this.state = 998;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,3,this._ctx);
- }
-
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Sql_clausesContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_sql_clauses;
- return this;
-}
-
-Sql_clausesContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Sql_clausesContext.prototype.constructor = Sql_clausesContext;
-
-Sql_clausesContext.prototype.sql_clause = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Sql_clauseContext);
- } else {
- return this.getTypedRuleContext(Sql_clauseContext,i);
- }
-};
-
-Sql_clausesContext.prototype.SEMI = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.SEMI);
- } else {
- return this.getToken(TSqlParser.SEMI, i);
- }
-};
-
-
-Sql_clausesContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterSql_clauses(this);
- }
-};
-
-Sql_clausesContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitSql_clauses(this);
- }
-};
-
-Sql_clausesContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitSql_clauses(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Sql_clausesContext = Sql_clausesContext;
-
-TSqlParser.prototype.sql_clauses = function() {
-
- var localctx = new Sql_clausesContext(this, this._ctx, this.state);
- this.enterRule(localctx, 4, TSqlParser.RULE_sql_clauses);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1005;
- this._errHandler.sync(this);
- var _alt = 1;
- do {
- switch (_alt) {
- case 1:
- this.state = 1001;
- this.sql_clause();
- this.state = 1003;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,5,this._ctx);
- if(la_===1) {
- this.state = 1002;
- this.match(TSqlParser.SEMI);
-
- }
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 1007;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,6, this._ctx);
- } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Sql_clauseContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_sql_clause;
- return this;
-}
-
-Sql_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Sql_clauseContext.prototype.constructor = Sql_clauseContext;
-
-Sql_clauseContext.prototype.dml_clause = function() {
- return this.getTypedRuleContext(Dml_clauseContext,0);
-};
-
-Sql_clauseContext.prototype.ddl_clause = function() {
- return this.getTypedRuleContext(Ddl_clauseContext,0);
-};
-
-Sql_clauseContext.prototype.cfl_statement = function() {
- return this.getTypedRuleContext(Cfl_statementContext,0);
-};
-
-Sql_clauseContext.prototype.dbcc_clause = function() {
- return this.getTypedRuleContext(Dbcc_clauseContext,0);
-};
-
-Sql_clauseContext.prototype.empty_statement = function() {
- return this.getTypedRuleContext(Empty_statementContext,0);
-};
-
-Sql_clauseContext.prototype.another_statement = function() {
- return this.getTypedRuleContext(Another_statementContext,0);
-};
-
-Sql_clauseContext.prototype.backup_statement = function() {
- return this.getTypedRuleContext(Backup_statementContext,0);
-};
-
-Sql_clauseContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterSql_clause(this);
- }
-};
-
-Sql_clauseContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitSql_clause(this);
- }
-};
-
-Sql_clauseContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitSql_clause(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Sql_clauseContext = Sql_clauseContext;
-
-TSqlParser.prototype.sql_clause = function() {
-
- var localctx = new Sql_clauseContext(this, this._ctx, this.state);
- this.enterRule(localctx, 6, TSqlParser.RULE_sql_clause);
- try {
- this.state = 1016;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,7,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 1009;
- this.dml_clause();
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 1010;
- this.ddl_clause();
- break;
-
- case 3:
- this.enterOuterAlt(localctx, 3);
- this.state = 1011;
- this.cfl_statement();
- break;
-
- case 4:
- this.enterOuterAlt(localctx, 4);
- this.state = 1012;
- this.dbcc_clause();
- break;
-
- case 5:
- this.enterOuterAlt(localctx, 5);
- this.state = 1013;
- this.empty_statement();
- break;
-
- case 6:
- this.enterOuterAlt(localctx, 6);
- this.state = 1014;
- this.another_statement();
- break;
-
- case 7:
- this.enterOuterAlt(localctx, 7);
- this.state = 1015;
- this.backup_statement();
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Dml_clauseContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_dml_clause;
- return this;
-}
-
-Dml_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Dml_clauseContext.prototype.constructor = Dml_clauseContext;
-
-Dml_clauseContext.prototype.merge_statement = function() {
- return this.getTypedRuleContext(Merge_statementContext,0);
-};
-
-Dml_clauseContext.prototype.delete_statement = function() {
- return this.getTypedRuleContext(Delete_statementContext,0);
-};
-
-Dml_clauseContext.prototype.insert_statement = function() {
- return this.getTypedRuleContext(Insert_statementContext,0);
-};
-
-Dml_clauseContext.prototype.select_statement = function() {
- return this.getTypedRuleContext(Select_statementContext,0);
-};
-
-Dml_clauseContext.prototype.update_statement = function() {
- return this.getTypedRuleContext(Update_statementContext,0);
-};
-
-Dml_clauseContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDml_clause(this);
- }
-};
-
-Dml_clauseContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDml_clause(this);
- }
-};
-
-Dml_clauseContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDml_clause(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Dml_clauseContext = Dml_clauseContext;
-
-TSqlParser.prototype.dml_clause = function() {
-
- var localctx = new Dml_clauseContext(this, this._ctx, this.state);
- this.enterRule(localctx, 8, TSqlParser.RULE_dml_clause);
- try {
- this.state = 1023;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,8,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 1018;
- this.merge_statement();
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 1019;
- this.delete_statement();
- break;
-
- case 3:
- this.enterOuterAlt(localctx, 3);
- this.state = 1020;
- this.insert_statement();
- break;
-
- case 4:
- this.enterOuterAlt(localctx, 4);
- this.state = 1021;
- this.select_statement();
- break;
-
- case 5:
- this.enterOuterAlt(localctx, 5);
- this.state = 1022;
- this.update_statement();
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Ddl_clauseContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_ddl_clause;
- return this;
-}
-
-Ddl_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Ddl_clauseContext.prototype.constructor = Ddl_clauseContext;
-
-Ddl_clauseContext.prototype.alter_application_role = function() {
- return this.getTypedRuleContext(Alter_application_roleContext,0);
-};
-
-Ddl_clauseContext.prototype.alter_assembly = function() {
- return this.getTypedRuleContext(Alter_assemblyContext,0);
-};
-
-Ddl_clauseContext.prototype.alter_asymmetric_key = function() {
- return this.getTypedRuleContext(Alter_asymmetric_keyContext,0);
-};
-
-Ddl_clauseContext.prototype.alter_authorization = function() {
- return this.getTypedRuleContext(Alter_authorizationContext,0);
-};
-
-Ddl_clauseContext.prototype.alter_authorization_for_azure_dw = function() {
- return this.getTypedRuleContext(Alter_authorization_for_azure_dwContext,0);
-};
-
-Ddl_clauseContext.prototype.alter_authorization_for_parallel_dw = function() {
- return this.getTypedRuleContext(Alter_authorization_for_parallel_dwContext,0);
-};
-
-Ddl_clauseContext.prototype.alter_authorization_for_sql_database = function() {
- return this.getTypedRuleContext(Alter_authorization_for_sql_databaseContext,0);
-};
-
-Ddl_clauseContext.prototype.alter_availability_group = function() {
- return this.getTypedRuleContext(Alter_availability_groupContext,0);
-};
-
-Ddl_clauseContext.prototype.alter_certificate = function() {
- return this.getTypedRuleContext(Alter_certificateContext,0);
-};
-
-Ddl_clauseContext.prototype.alter_column_encryption_key = function() {
- return this.getTypedRuleContext(Alter_column_encryption_keyContext,0);
-};
-
-Ddl_clauseContext.prototype.alter_credential = function() {
- return this.getTypedRuleContext(Alter_credentialContext,0);
-};
-
-Ddl_clauseContext.prototype.alter_cryptographic_provider = function() {
- return this.getTypedRuleContext(Alter_cryptographic_providerContext,0);
-};
-
-Ddl_clauseContext.prototype.alter_database = function() {
- return this.getTypedRuleContext(Alter_databaseContext,0);
-};
-
-Ddl_clauseContext.prototype.alter_db_role = function() {
- return this.getTypedRuleContext(Alter_db_roleContext,0);
-};
-
-Ddl_clauseContext.prototype.alter_endpoint = function() {
- return this.getTypedRuleContext(Alter_endpointContext,0);
-};
-
-Ddl_clauseContext.prototype.create_or_alter_event_session = function() {
- return this.getTypedRuleContext(Create_or_alter_event_sessionContext,0);
-};
-
-Ddl_clauseContext.prototype.alter_external_data_source = function() {
- return this.getTypedRuleContext(Alter_external_data_sourceContext,0);
-};
-
-Ddl_clauseContext.prototype.alter_external_library = function() {
- return this.getTypedRuleContext(Alter_external_libraryContext,0);
-};
-
-Ddl_clauseContext.prototype.alter_external_resource_pool = function() {
- return this.getTypedRuleContext(Alter_external_resource_poolContext,0);
-};
-
-Ddl_clauseContext.prototype.alter_fulltext_catalog = function() {
- return this.getTypedRuleContext(Alter_fulltext_catalogContext,0);
-};
-
-Ddl_clauseContext.prototype.alter_fulltext_stoplist = function() {
- return this.getTypedRuleContext(Alter_fulltext_stoplistContext,0);
-};
-
-Ddl_clauseContext.prototype.alter_login_azure_sql = function() {
- return this.getTypedRuleContext(Alter_login_azure_sqlContext,0);
-};
-
-Ddl_clauseContext.prototype.alter_login_azure_sql_dw_and_pdw = function() {
- return this.getTypedRuleContext(Alter_login_azure_sql_dw_and_pdwContext,0);
-};
-
-Ddl_clauseContext.prototype.alter_login_sql_server = function() {
- return this.getTypedRuleContext(Alter_login_sql_serverContext,0);
-};
-
-Ddl_clauseContext.prototype.alter_master_key_azure_sql = function() {
- return this.getTypedRuleContext(Alter_master_key_azure_sqlContext,0);
-};
-
-Ddl_clauseContext.prototype.alter_master_key_sql_server = function() {
- return this.getTypedRuleContext(Alter_master_key_sql_serverContext,0);
-};
-
-Ddl_clauseContext.prototype.alter_message_type = function() {
- return this.getTypedRuleContext(Alter_message_typeContext,0);
-};
-
-Ddl_clauseContext.prototype.alter_partition_function = function() {
- return this.getTypedRuleContext(Alter_partition_functionContext,0);
-};
-
-Ddl_clauseContext.prototype.alter_partition_scheme = function() {
- return this.getTypedRuleContext(Alter_partition_schemeContext,0);
-};
-
-Ddl_clauseContext.prototype.alter_remote_service_binding = function() {
- return this.getTypedRuleContext(Alter_remote_service_bindingContext,0);
-};
-
-Ddl_clauseContext.prototype.alter_resource_governor = function() {
- return this.getTypedRuleContext(Alter_resource_governorContext,0);
-};
-
-Ddl_clauseContext.prototype.alter_schema_azure_sql_dw_and_pdw = function() {
- return this.getTypedRuleContext(Alter_schema_azure_sql_dw_and_pdwContext,0);
-};
-
-Ddl_clauseContext.prototype.alter_schema_sql = function() {
- return this.getTypedRuleContext(Alter_schema_sqlContext,0);
-};
-
-Ddl_clauseContext.prototype.alter_sequence = function() {
- return this.getTypedRuleContext(Alter_sequenceContext,0);
-};
-
-Ddl_clauseContext.prototype.alter_server_audit = function() {
- return this.getTypedRuleContext(Alter_server_auditContext,0);
-};
-
-Ddl_clauseContext.prototype.alter_server_audit_specification = function() {
- return this.getTypedRuleContext(Alter_server_audit_specificationContext,0);
-};
-
-Ddl_clauseContext.prototype.alter_server_configuration = function() {
- return this.getTypedRuleContext(Alter_server_configurationContext,0);
-};
-
-Ddl_clauseContext.prototype.alter_server_role = function() {
- return this.getTypedRuleContext(Alter_server_roleContext,0);
-};
-
-Ddl_clauseContext.prototype.alter_server_role_pdw = function() {
- return this.getTypedRuleContext(Alter_server_role_pdwContext,0);
-};
-
-Ddl_clauseContext.prototype.alter_service = function() {
- return this.getTypedRuleContext(Alter_serviceContext,0);
-};
-
-Ddl_clauseContext.prototype.alter_service_master_key = function() {
- return this.getTypedRuleContext(Alter_service_master_keyContext,0);
-};
-
-Ddl_clauseContext.prototype.alter_symmetric_key = function() {
- return this.getTypedRuleContext(Alter_symmetric_keyContext,0);
-};
-
-Ddl_clauseContext.prototype.alter_table = function() {
- return this.getTypedRuleContext(Alter_tableContext,0);
-};
-
-Ddl_clauseContext.prototype.alter_user = function() {
- return this.getTypedRuleContext(Alter_userContext,0);
-};
-
-Ddl_clauseContext.prototype.alter_user_azure_sql = function() {
- return this.getTypedRuleContext(Alter_user_azure_sqlContext,0);
-};
-
-Ddl_clauseContext.prototype.alter_workload_group = function() {
- return this.getTypedRuleContext(Alter_workload_groupContext,0);
-};
-
-Ddl_clauseContext.prototype.create_application_role = function() {
- return this.getTypedRuleContext(Create_application_roleContext,0);
-};
-
-Ddl_clauseContext.prototype.create_assembly = function() {
- return this.getTypedRuleContext(Create_assemblyContext,0);
-};
-
-Ddl_clauseContext.prototype.create_asymmetric_key = function() {
- return this.getTypedRuleContext(Create_asymmetric_keyContext,0);
-};
-
-Ddl_clauseContext.prototype.create_column_encryption_key = function() {
- return this.getTypedRuleContext(Create_column_encryption_keyContext,0);
-};
-
-Ddl_clauseContext.prototype.create_column_master_key = function() {
- return this.getTypedRuleContext(Create_column_master_keyContext,0);
-};
-
-Ddl_clauseContext.prototype.create_credential = function() {
- return this.getTypedRuleContext(Create_credentialContext,0);
-};
-
-Ddl_clauseContext.prototype.create_cryptographic_provider = function() {
- return this.getTypedRuleContext(Create_cryptographic_providerContext,0);
-};
-
-Ddl_clauseContext.prototype.create_database = function() {
- return this.getTypedRuleContext(Create_databaseContext,0);
-};
-
-Ddl_clauseContext.prototype.create_db_role = function() {
- return this.getTypedRuleContext(Create_db_roleContext,0);
-};
-
-Ddl_clauseContext.prototype.create_event_notification = function() {
- return this.getTypedRuleContext(Create_event_notificationContext,0);
-};
-
-Ddl_clauseContext.prototype.create_external_library = function() {
- return this.getTypedRuleContext(Create_external_libraryContext,0);
-};
-
-Ddl_clauseContext.prototype.create_external_resource_pool = function() {
- return this.getTypedRuleContext(Create_external_resource_poolContext,0);
-};
-
-Ddl_clauseContext.prototype.create_fulltext_catalog = function() {
- return this.getTypedRuleContext(Create_fulltext_catalogContext,0);
-};
-
-Ddl_clauseContext.prototype.create_fulltext_stoplist = function() {
- return this.getTypedRuleContext(Create_fulltext_stoplistContext,0);
-};
-
-Ddl_clauseContext.prototype.create_index = function() {
- return this.getTypedRuleContext(Create_indexContext,0);
-};
-
-Ddl_clauseContext.prototype.create_login_azure_sql = function() {
- return this.getTypedRuleContext(Create_login_azure_sqlContext,0);
-};
-
-Ddl_clauseContext.prototype.create_login_pdw = function() {
- return this.getTypedRuleContext(Create_login_pdwContext,0);
-};
-
-Ddl_clauseContext.prototype.create_login_sql_server = function() {
- return this.getTypedRuleContext(Create_login_sql_serverContext,0);
-};
-
-Ddl_clauseContext.prototype.create_master_key_azure_sql = function() {
- return this.getTypedRuleContext(Create_master_key_azure_sqlContext,0);
-};
-
-Ddl_clauseContext.prototype.create_master_key_sql_server = function() {
- return this.getTypedRuleContext(Create_master_key_sql_serverContext,0);
-};
-
-Ddl_clauseContext.prototype.create_or_alter_broker_priority = function() {
- return this.getTypedRuleContext(Create_or_alter_broker_priorityContext,0);
-};
-
-Ddl_clauseContext.prototype.create_or_alter_function = function() {
- return this.getTypedRuleContext(Create_or_alter_functionContext,0);
-};
-
-Ddl_clauseContext.prototype.create_or_alter_procedure = function() {
- return this.getTypedRuleContext(Create_or_alter_procedureContext,0);
-};
-
-Ddl_clauseContext.prototype.create_or_alter_trigger = function() {
- return this.getTypedRuleContext(Create_or_alter_triggerContext,0);
-};
-
-Ddl_clauseContext.prototype.create_remote_service_binding = function() {
- return this.getTypedRuleContext(Create_remote_service_bindingContext,0);
-};
-
-Ddl_clauseContext.prototype.create_resource_pool = function() {
- return this.getTypedRuleContext(Create_resource_poolContext,0);
-};
-
-Ddl_clauseContext.prototype.create_route = function() {
- return this.getTypedRuleContext(Create_routeContext,0);
-};
-
-Ddl_clauseContext.prototype.create_rule = function() {
- return this.getTypedRuleContext(Create_ruleContext,0);
-};
-
-Ddl_clauseContext.prototype.create_schema = function() {
- return this.getTypedRuleContext(Create_schemaContext,0);
-};
-
-Ddl_clauseContext.prototype.create_schema_azure_sql_dw_and_pdw = function() {
- return this.getTypedRuleContext(Create_schema_azure_sql_dw_and_pdwContext,0);
-};
-
-Ddl_clauseContext.prototype.create_search_property_list = function() {
- return this.getTypedRuleContext(Create_search_property_listContext,0);
-};
-
-Ddl_clauseContext.prototype.create_security_policy = function() {
- return this.getTypedRuleContext(Create_security_policyContext,0);
-};
-
-Ddl_clauseContext.prototype.create_sequence = function() {
- return this.getTypedRuleContext(Create_sequenceContext,0);
-};
-
-Ddl_clauseContext.prototype.create_server_audit = function() {
- return this.getTypedRuleContext(Create_server_auditContext,0);
-};
-
-Ddl_clauseContext.prototype.create_server_audit_specification = function() {
- return this.getTypedRuleContext(Create_server_audit_specificationContext,0);
-};
-
-Ddl_clauseContext.prototype.create_server_role = function() {
- return this.getTypedRuleContext(Create_server_roleContext,0);
-};
-
-Ddl_clauseContext.prototype.create_service = function() {
- return this.getTypedRuleContext(Create_serviceContext,0);
-};
-
-Ddl_clauseContext.prototype.create_statistics = function() {
- return this.getTypedRuleContext(Create_statisticsContext,0);
-};
-
-Ddl_clauseContext.prototype.create_symmetric_key = function() {
- return this.getTypedRuleContext(Create_symmetric_keyContext,0);
-};
-
-Ddl_clauseContext.prototype.create_synonym = function() {
- return this.getTypedRuleContext(Create_synonymContext,0);
-};
-
-Ddl_clauseContext.prototype.create_table = function() {
- return this.getTypedRuleContext(Create_tableContext,0);
-};
-
-Ddl_clauseContext.prototype.create_type = function() {
- return this.getTypedRuleContext(Create_typeContext,0);
-};
-
-Ddl_clauseContext.prototype.create_user = function() {
- return this.getTypedRuleContext(Create_userContext,0);
-};
-
-Ddl_clauseContext.prototype.create_user_azure_sql_dw = function() {
- return this.getTypedRuleContext(Create_user_azure_sql_dwContext,0);
-};
-
-Ddl_clauseContext.prototype.create_view = function() {
- return this.getTypedRuleContext(Create_viewContext,0);
-};
-
-Ddl_clauseContext.prototype.create_workload_group = function() {
- return this.getTypedRuleContext(Create_workload_groupContext,0);
-};
-
-Ddl_clauseContext.prototype.create_xml_schema_collection = function() {
- return this.getTypedRuleContext(Create_xml_schema_collectionContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_aggregate = function() {
- return this.getTypedRuleContext(Drop_aggregateContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_application_role = function() {
- return this.getTypedRuleContext(Drop_application_roleContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_assembly = function() {
- return this.getTypedRuleContext(Drop_assemblyContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_asymmetric_key = function() {
- return this.getTypedRuleContext(Drop_asymmetric_keyContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_availability_group = function() {
- return this.getTypedRuleContext(Drop_availability_groupContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_broker_priority = function() {
- return this.getTypedRuleContext(Drop_broker_priorityContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_certificate = function() {
- return this.getTypedRuleContext(Drop_certificateContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_column_encryption_key = function() {
- return this.getTypedRuleContext(Drop_column_encryption_keyContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_column_master_key = function() {
- return this.getTypedRuleContext(Drop_column_master_keyContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_contract = function() {
- return this.getTypedRuleContext(Drop_contractContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_credential = function() {
- return this.getTypedRuleContext(Drop_credentialContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_cryptograhic_provider = function() {
- return this.getTypedRuleContext(Drop_cryptograhic_providerContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_database = function() {
- return this.getTypedRuleContext(Drop_databaseContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_database_audit_specification = function() {
- return this.getTypedRuleContext(Drop_database_audit_specificationContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_database_scoped_credential = function() {
- return this.getTypedRuleContext(Drop_database_scoped_credentialContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_db_role = function() {
- return this.getTypedRuleContext(Drop_db_roleContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_default = function() {
- return this.getTypedRuleContext(Drop_defaultContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_endpoint = function() {
- return this.getTypedRuleContext(Drop_endpointContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_event_notifications = function() {
- return this.getTypedRuleContext(Drop_event_notificationsContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_event_session = function() {
- return this.getTypedRuleContext(Drop_event_sessionContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_external_data_source = function() {
- return this.getTypedRuleContext(Drop_external_data_sourceContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_external_file_format = function() {
- return this.getTypedRuleContext(Drop_external_file_formatContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_external_library = function() {
- return this.getTypedRuleContext(Drop_external_libraryContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_external_resource_pool = function() {
- return this.getTypedRuleContext(Drop_external_resource_poolContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_external_table = function() {
- return this.getTypedRuleContext(Drop_external_tableContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_fulltext_catalog = function() {
- return this.getTypedRuleContext(Drop_fulltext_catalogContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_fulltext_index = function() {
- return this.getTypedRuleContext(Drop_fulltext_indexContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_fulltext_stoplist = function() {
- return this.getTypedRuleContext(Drop_fulltext_stoplistContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_function = function() {
- return this.getTypedRuleContext(Drop_functionContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_index = function() {
- return this.getTypedRuleContext(Drop_indexContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_login = function() {
- return this.getTypedRuleContext(Drop_loginContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_master_key = function() {
- return this.getTypedRuleContext(Drop_master_keyContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_message_type = function() {
- return this.getTypedRuleContext(Drop_message_typeContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_partition_function = function() {
- return this.getTypedRuleContext(Drop_partition_functionContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_partition_scheme = function() {
- return this.getTypedRuleContext(Drop_partition_schemeContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_procedure = function() {
- return this.getTypedRuleContext(Drop_procedureContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_queue = function() {
- return this.getTypedRuleContext(Drop_queueContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_remote_service_binding = function() {
- return this.getTypedRuleContext(Drop_remote_service_bindingContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_resource_pool = function() {
- return this.getTypedRuleContext(Drop_resource_poolContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_route = function() {
- return this.getTypedRuleContext(Drop_routeContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_rule = function() {
- return this.getTypedRuleContext(Drop_ruleContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_schema = function() {
- return this.getTypedRuleContext(Drop_schemaContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_search_property_list = function() {
- return this.getTypedRuleContext(Drop_search_property_listContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_security_policy = function() {
- return this.getTypedRuleContext(Drop_security_policyContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_sequence = function() {
- return this.getTypedRuleContext(Drop_sequenceContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_server_audit = function() {
- return this.getTypedRuleContext(Drop_server_auditContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_server_audit_specification = function() {
- return this.getTypedRuleContext(Drop_server_audit_specificationContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_server_role = function() {
- return this.getTypedRuleContext(Drop_server_roleContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_service = function() {
- return this.getTypedRuleContext(Drop_serviceContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_signature = function() {
- return this.getTypedRuleContext(Drop_signatureContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_statistics = function() {
- return this.getTypedRuleContext(Drop_statisticsContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_statistics_name_azure_dw_and_pdw = function() {
- return this.getTypedRuleContext(Drop_statistics_name_azure_dw_and_pdwContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_symmetric_key = function() {
- return this.getTypedRuleContext(Drop_symmetric_keyContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_synonym = function() {
- return this.getTypedRuleContext(Drop_synonymContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_table = function() {
- return this.getTypedRuleContext(Drop_tableContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_trigger = function() {
- return this.getTypedRuleContext(Drop_triggerContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_type = function() {
- return this.getTypedRuleContext(Drop_typeContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_user = function() {
- return this.getTypedRuleContext(Drop_userContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_view = function() {
- return this.getTypedRuleContext(Drop_viewContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_workload_group = function() {
- return this.getTypedRuleContext(Drop_workload_groupContext,0);
-};
-
-Ddl_clauseContext.prototype.drop_xml_schema_collection = function() {
- return this.getTypedRuleContext(Drop_xml_schema_collectionContext,0);
-};
-
-Ddl_clauseContext.prototype.disable_trigger = function() {
- return this.getTypedRuleContext(Disable_triggerContext,0);
-};
-
-Ddl_clauseContext.prototype.enable_trigger = function() {
- return this.getTypedRuleContext(Enable_triggerContext,0);
-};
-
-Ddl_clauseContext.prototype.lock_table = function() {
- return this.getTypedRuleContext(Lock_tableContext,0);
-};
-
-Ddl_clauseContext.prototype.truncate_table = function() {
- return this.getTypedRuleContext(Truncate_tableContext,0);
-};
-
-Ddl_clauseContext.prototype.update_statistics = function() {
- return this.getTypedRuleContext(Update_statisticsContext,0);
-};
-
-Ddl_clauseContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDdl_clause(this);
- }
-};
-
-Ddl_clauseContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDdl_clause(this);
- }
-};
-
-Ddl_clauseContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDdl_clause(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Ddl_clauseContext = Ddl_clauseContext;
-
-TSqlParser.prototype.ddl_clause = function() {
-
- var localctx = new Ddl_clauseContext(this, this._ctx, this.state);
- this.enterRule(localctx, 10, TSqlParser.RULE_ddl_clause);
- try {
- this.state = 1184;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,9,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 1025;
- this.alter_application_role();
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 1026;
- this.alter_assembly();
- break;
-
- case 3:
- this.enterOuterAlt(localctx, 3);
- this.state = 1027;
- this.alter_asymmetric_key();
- break;
-
- case 4:
- this.enterOuterAlt(localctx, 4);
- this.state = 1028;
- this.alter_authorization();
- break;
-
- case 5:
- this.enterOuterAlt(localctx, 5);
- this.state = 1029;
- this.alter_authorization_for_azure_dw();
- break;
-
- case 6:
- this.enterOuterAlt(localctx, 6);
- this.state = 1030;
- this.alter_authorization_for_parallel_dw();
- break;
-
- case 7:
- this.enterOuterAlt(localctx, 7);
- this.state = 1031;
- this.alter_authorization_for_sql_database();
- break;
-
- case 8:
- this.enterOuterAlt(localctx, 8);
- this.state = 1032;
- this.alter_availability_group();
- break;
-
- case 9:
- this.enterOuterAlt(localctx, 9);
- this.state = 1033;
- this.alter_certificate();
- break;
-
- case 10:
- this.enterOuterAlt(localctx, 10);
- this.state = 1034;
- this.alter_column_encryption_key();
- break;
-
- case 11:
- this.enterOuterAlt(localctx, 11);
- this.state = 1035;
- this.alter_credential();
- break;
-
- case 12:
- this.enterOuterAlt(localctx, 12);
- this.state = 1036;
- this.alter_cryptographic_provider();
- break;
-
- case 13:
- this.enterOuterAlt(localctx, 13);
- this.state = 1037;
- this.alter_database();
- break;
-
- case 14:
- this.enterOuterAlt(localctx, 14);
- this.state = 1038;
- this.alter_db_role();
- break;
-
- case 15:
- this.enterOuterAlt(localctx, 15);
- this.state = 1039;
- this.alter_endpoint();
- break;
-
- case 16:
- this.enterOuterAlt(localctx, 16);
- this.state = 1040;
- this.create_or_alter_event_session();
- break;
-
- case 17:
- this.enterOuterAlt(localctx, 17);
- this.state = 1041;
- this.alter_external_data_source();
- break;
-
- case 18:
- this.enterOuterAlt(localctx, 18);
- this.state = 1042;
- this.alter_external_library();
- break;
-
- case 19:
- this.enterOuterAlt(localctx, 19);
- this.state = 1043;
- this.alter_external_resource_pool();
- break;
-
- case 20:
- this.enterOuterAlt(localctx, 20);
- this.state = 1044;
- this.alter_fulltext_catalog();
- break;
-
- case 21:
- this.enterOuterAlt(localctx, 21);
- this.state = 1045;
- this.alter_fulltext_stoplist();
- break;
-
- case 22:
- this.enterOuterAlt(localctx, 22);
- this.state = 1046;
- this.alter_login_azure_sql();
- break;
-
- case 23:
- this.enterOuterAlt(localctx, 23);
- this.state = 1047;
- this.alter_login_azure_sql_dw_and_pdw();
- break;
-
- case 24:
- this.enterOuterAlt(localctx, 24);
- this.state = 1048;
- this.alter_login_sql_server();
- break;
-
- case 25:
- this.enterOuterAlt(localctx, 25);
- this.state = 1049;
- this.alter_master_key_azure_sql();
- break;
-
- case 26:
- this.enterOuterAlt(localctx, 26);
- this.state = 1050;
- this.alter_master_key_sql_server();
- break;
-
- case 27:
- this.enterOuterAlt(localctx, 27);
- this.state = 1051;
- this.alter_message_type();
- break;
-
- case 28:
- this.enterOuterAlt(localctx, 28);
- this.state = 1052;
- this.alter_partition_function();
- break;
-
- case 29:
- this.enterOuterAlt(localctx, 29);
- this.state = 1053;
- this.alter_partition_scheme();
- break;
-
- case 30:
- this.enterOuterAlt(localctx, 30);
- this.state = 1054;
- this.alter_remote_service_binding();
- break;
-
- case 31:
- this.enterOuterAlt(localctx, 31);
- this.state = 1055;
- this.alter_resource_governor();
- break;
-
- case 32:
- this.enterOuterAlt(localctx, 32);
- this.state = 1056;
- this.alter_schema_azure_sql_dw_and_pdw();
- break;
-
- case 33:
- this.enterOuterAlt(localctx, 33);
- this.state = 1057;
- this.alter_schema_sql();
- break;
-
- case 34:
- this.enterOuterAlt(localctx, 34);
- this.state = 1058;
- this.alter_sequence();
- break;
-
- case 35:
- this.enterOuterAlt(localctx, 35);
- this.state = 1059;
- this.alter_server_audit();
- break;
-
- case 36:
- this.enterOuterAlt(localctx, 36);
- this.state = 1060;
- this.alter_server_audit_specification();
- break;
-
- case 37:
- this.enterOuterAlt(localctx, 37);
- this.state = 1061;
- this.alter_server_configuration();
- break;
-
- case 38:
- this.enterOuterAlt(localctx, 38);
- this.state = 1062;
- this.alter_server_role();
- break;
-
- case 39:
- this.enterOuterAlt(localctx, 39);
- this.state = 1063;
- this.alter_server_role_pdw();
- break;
-
- case 40:
- this.enterOuterAlt(localctx, 40);
- this.state = 1064;
- this.alter_service();
- break;
-
- case 41:
- this.enterOuterAlt(localctx, 41);
- this.state = 1065;
- this.alter_service_master_key();
- break;
-
- case 42:
- this.enterOuterAlt(localctx, 42);
- this.state = 1066;
- this.alter_symmetric_key();
- break;
-
- case 43:
- this.enterOuterAlt(localctx, 43);
- this.state = 1067;
- this.alter_table();
- break;
-
- case 44:
- this.enterOuterAlt(localctx, 44);
- this.state = 1068;
- this.alter_user();
- break;
-
- case 45:
- this.enterOuterAlt(localctx, 45);
- this.state = 1069;
- this.alter_user_azure_sql();
- break;
-
- case 46:
- this.enterOuterAlt(localctx, 46);
- this.state = 1070;
- this.alter_workload_group();
- break;
-
- case 47:
- this.enterOuterAlt(localctx, 47);
- this.state = 1071;
- this.create_application_role();
- break;
-
- case 48:
- this.enterOuterAlt(localctx, 48);
- this.state = 1072;
- this.create_assembly();
- break;
-
- case 49:
- this.enterOuterAlt(localctx, 49);
- this.state = 1073;
- this.create_asymmetric_key();
- break;
-
- case 50:
- this.enterOuterAlt(localctx, 50);
- this.state = 1074;
- this.create_column_encryption_key();
- break;
-
- case 51:
- this.enterOuterAlt(localctx, 51);
- this.state = 1075;
- this.create_column_master_key();
- break;
-
- case 52:
- this.enterOuterAlt(localctx, 52);
- this.state = 1076;
- this.create_credential();
- break;
-
- case 53:
- this.enterOuterAlt(localctx, 53);
- this.state = 1077;
- this.create_cryptographic_provider();
- break;
-
- case 54:
- this.enterOuterAlt(localctx, 54);
- this.state = 1078;
- this.create_database();
- break;
-
- case 55:
- this.enterOuterAlt(localctx, 55);
- this.state = 1079;
- this.create_db_role();
- break;
-
- case 56:
- this.enterOuterAlt(localctx, 56);
- this.state = 1080;
- this.create_event_notification();
- break;
-
- case 57:
- this.enterOuterAlt(localctx, 57);
- this.state = 1081;
- this.create_external_library();
- break;
-
- case 58:
- this.enterOuterAlt(localctx, 58);
- this.state = 1082;
- this.create_external_resource_pool();
- break;
-
- case 59:
- this.enterOuterAlt(localctx, 59);
- this.state = 1083;
- this.create_fulltext_catalog();
- break;
-
- case 60:
- this.enterOuterAlt(localctx, 60);
- this.state = 1084;
- this.create_fulltext_stoplist();
- break;
-
- case 61:
- this.enterOuterAlt(localctx, 61);
- this.state = 1085;
- this.create_index();
- break;
-
- case 62:
- this.enterOuterAlt(localctx, 62);
- this.state = 1086;
- this.create_login_azure_sql();
- break;
-
- case 63:
- this.enterOuterAlt(localctx, 63);
- this.state = 1087;
- this.create_login_pdw();
- break;
-
- case 64:
- this.enterOuterAlt(localctx, 64);
- this.state = 1088;
- this.create_login_sql_server();
- break;
-
- case 65:
- this.enterOuterAlt(localctx, 65);
- this.state = 1089;
- this.create_master_key_azure_sql();
- break;
-
- case 66:
- this.enterOuterAlt(localctx, 66);
- this.state = 1090;
- this.create_master_key_sql_server();
- break;
-
- case 67:
- this.enterOuterAlt(localctx, 67);
- this.state = 1091;
- this.create_or_alter_broker_priority();
- break;
-
- case 68:
- this.enterOuterAlt(localctx, 68);
- this.state = 1092;
- this.create_or_alter_function();
- break;
-
- case 69:
- this.enterOuterAlt(localctx, 69);
- this.state = 1093;
- this.create_or_alter_procedure();
- break;
-
- case 70:
- this.enterOuterAlt(localctx, 70);
- this.state = 1094;
- this.create_or_alter_trigger();
- break;
-
- case 71:
- this.enterOuterAlt(localctx, 71);
- this.state = 1095;
- this.create_remote_service_binding();
- break;
-
- case 72:
- this.enterOuterAlt(localctx, 72);
- this.state = 1096;
- this.create_resource_pool();
- break;
-
- case 73:
- this.enterOuterAlt(localctx, 73);
- this.state = 1097;
- this.create_route();
- break;
-
- case 74:
- this.enterOuterAlt(localctx, 74);
- this.state = 1098;
- this.create_rule();
- break;
-
- case 75:
- this.enterOuterAlt(localctx, 75);
- this.state = 1099;
- this.create_schema();
- break;
-
- case 76:
- this.enterOuterAlt(localctx, 76);
- this.state = 1100;
- this.create_schema_azure_sql_dw_and_pdw();
- break;
-
- case 77:
- this.enterOuterAlt(localctx, 77);
- this.state = 1101;
- this.create_search_property_list();
- break;
-
- case 78:
- this.enterOuterAlt(localctx, 78);
- this.state = 1102;
- this.create_security_policy();
- break;
-
- case 79:
- this.enterOuterAlt(localctx, 79);
- this.state = 1103;
- this.create_sequence();
- break;
-
- case 80:
- this.enterOuterAlt(localctx, 80);
- this.state = 1104;
- this.create_server_audit();
- break;
-
- case 81:
- this.enterOuterAlt(localctx, 81);
- this.state = 1105;
- this.create_server_audit_specification();
- break;
-
- case 82:
- this.enterOuterAlt(localctx, 82);
- this.state = 1106;
- this.create_server_role();
- break;
-
- case 83:
- this.enterOuterAlt(localctx, 83);
- this.state = 1107;
- this.create_service();
- break;
-
- case 84:
- this.enterOuterAlt(localctx, 84);
- this.state = 1108;
- this.create_statistics();
- break;
-
- case 85:
- this.enterOuterAlt(localctx, 85);
- this.state = 1109;
- this.create_symmetric_key();
- break;
-
- case 86:
- this.enterOuterAlt(localctx, 86);
- this.state = 1110;
- this.create_synonym();
- break;
-
- case 87:
- this.enterOuterAlt(localctx, 87);
- this.state = 1111;
- this.create_table();
- break;
-
- case 88:
- this.enterOuterAlt(localctx, 88);
- this.state = 1112;
- this.create_type();
- break;
-
- case 89:
- this.enterOuterAlt(localctx, 89);
- this.state = 1113;
- this.create_user();
- break;
-
- case 90:
- this.enterOuterAlt(localctx, 90);
- this.state = 1114;
- this.create_user_azure_sql_dw();
- break;
-
- case 91:
- this.enterOuterAlt(localctx, 91);
- this.state = 1115;
- this.create_view();
- break;
-
- case 92:
- this.enterOuterAlt(localctx, 92);
- this.state = 1116;
- this.create_workload_group();
- break;
-
- case 93:
- this.enterOuterAlt(localctx, 93);
- this.state = 1117;
- this.create_xml_schema_collection();
- break;
-
- case 94:
- this.enterOuterAlt(localctx, 94);
- this.state = 1118;
- this.drop_aggregate();
- break;
-
- case 95:
- this.enterOuterAlt(localctx, 95);
- this.state = 1119;
- this.drop_application_role();
- break;
-
- case 96:
- this.enterOuterAlt(localctx, 96);
- this.state = 1120;
- this.drop_assembly();
- break;
-
- case 97:
- this.enterOuterAlt(localctx, 97);
- this.state = 1121;
- this.drop_asymmetric_key();
- break;
-
- case 98:
- this.enterOuterAlt(localctx, 98);
- this.state = 1122;
- this.drop_availability_group();
- break;
-
- case 99:
- this.enterOuterAlt(localctx, 99);
- this.state = 1123;
- this.drop_broker_priority();
- break;
-
- case 100:
- this.enterOuterAlt(localctx, 100);
- this.state = 1124;
- this.drop_certificate();
- break;
-
- case 101:
- this.enterOuterAlt(localctx, 101);
- this.state = 1125;
- this.drop_column_encryption_key();
- break;
-
- case 102:
- this.enterOuterAlt(localctx, 102);
- this.state = 1126;
- this.drop_column_master_key();
- break;
-
- case 103:
- this.enterOuterAlt(localctx, 103);
- this.state = 1127;
- this.drop_contract();
- break;
-
- case 104:
- this.enterOuterAlt(localctx, 104);
- this.state = 1128;
- this.drop_credential();
- break;
-
- case 105:
- this.enterOuterAlt(localctx, 105);
- this.state = 1129;
- this.drop_cryptograhic_provider();
- break;
-
- case 106:
- this.enterOuterAlt(localctx, 106);
- this.state = 1130;
- this.drop_database();
- break;
-
- case 107:
- this.enterOuterAlt(localctx, 107);
- this.state = 1131;
- this.drop_database_audit_specification();
- break;
-
- case 108:
- this.enterOuterAlt(localctx, 108);
- this.state = 1132;
- this.drop_database_scoped_credential();
- break;
-
- case 109:
- this.enterOuterAlt(localctx, 109);
- this.state = 1133;
- this.drop_db_role();
- break;
-
- case 110:
- this.enterOuterAlt(localctx, 110);
- this.state = 1134;
- this.drop_default();
- break;
-
- case 111:
- this.enterOuterAlt(localctx, 111);
- this.state = 1135;
- this.drop_endpoint();
- break;
-
- case 112:
- this.enterOuterAlt(localctx, 112);
- this.state = 1136;
- this.drop_event_notifications();
- break;
-
- case 113:
- this.enterOuterAlt(localctx, 113);
- this.state = 1137;
- this.drop_event_session();
- break;
-
- case 114:
- this.enterOuterAlt(localctx, 114);
- this.state = 1138;
- this.drop_external_data_source();
- break;
-
- case 115:
- this.enterOuterAlt(localctx, 115);
- this.state = 1139;
- this.drop_external_file_format();
- break;
-
- case 116:
- this.enterOuterAlt(localctx, 116);
- this.state = 1140;
- this.drop_external_library();
- break;
-
- case 117:
- this.enterOuterAlt(localctx, 117);
- this.state = 1141;
- this.drop_external_resource_pool();
- break;
-
- case 118:
- this.enterOuterAlt(localctx, 118);
- this.state = 1142;
- this.drop_external_table();
- break;
-
- case 119:
- this.enterOuterAlt(localctx, 119);
- this.state = 1143;
- this.drop_fulltext_catalog();
- break;
-
- case 120:
- this.enterOuterAlt(localctx, 120);
- this.state = 1144;
- this.drop_fulltext_index();
- break;
-
- case 121:
- this.enterOuterAlt(localctx, 121);
- this.state = 1145;
- this.drop_fulltext_stoplist();
- break;
-
- case 122:
- this.enterOuterAlt(localctx, 122);
- this.state = 1146;
- this.drop_function();
- break;
-
- case 123:
- this.enterOuterAlt(localctx, 123);
- this.state = 1147;
- this.drop_index();
- break;
-
- case 124:
- this.enterOuterAlt(localctx, 124);
- this.state = 1148;
- this.drop_login();
- break;
-
- case 125:
- this.enterOuterAlt(localctx, 125);
- this.state = 1149;
- this.drop_master_key();
- break;
-
- case 126:
- this.enterOuterAlt(localctx, 126);
- this.state = 1150;
- this.drop_message_type();
- break;
-
- case 127:
- this.enterOuterAlt(localctx, 127);
- this.state = 1151;
- this.drop_partition_function();
- break;
-
- case 128:
- this.enterOuterAlt(localctx, 128);
- this.state = 1152;
- this.drop_partition_scheme();
- break;
-
- case 129:
- this.enterOuterAlt(localctx, 129);
- this.state = 1153;
- this.drop_procedure();
- break;
-
- case 130:
- this.enterOuterAlt(localctx, 130);
- this.state = 1154;
- this.drop_queue();
- break;
-
- case 131:
- this.enterOuterAlt(localctx, 131);
- this.state = 1155;
- this.drop_remote_service_binding();
- break;
-
- case 132:
- this.enterOuterAlt(localctx, 132);
- this.state = 1156;
- this.drop_resource_pool();
- break;
-
- case 133:
- this.enterOuterAlt(localctx, 133);
- this.state = 1157;
- this.drop_route();
- break;
-
- case 134:
- this.enterOuterAlt(localctx, 134);
- this.state = 1158;
- this.drop_rule();
- break;
-
- case 135:
- this.enterOuterAlt(localctx, 135);
- this.state = 1159;
- this.drop_schema();
- break;
-
- case 136:
- this.enterOuterAlt(localctx, 136);
- this.state = 1160;
- this.drop_search_property_list();
- break;
-
- case 137:
- this.enterOuterAlt(localctx, 137);
- this.state = 1161;
- this.drop_security_policy();
- break;
-
- case 138:
- this.enterOuterAlt(localctx, 138);
- this.state = 1162;
- this.drop_sequence();
- break;
-
- case 139:
- this.enterOuterAlt(localctx, 139);
- this.state = 1163;
- this.drop_server_audit();
- break;
-
- case 140:
- this.enterOuterAlt(localctx, 140);
- this.state = 1164;
- this.drop_server_audit_specification();
- break;
-
- case 141:
- this.enterOuterAlt(localctx, 141);
- this.state = 1165;
- this.drop_server_role();
- break;
-
- case 142:
- this.enterOuterAlt(localctx, 142);
- this.state = 1166;
- this.drop_service();
- break;
-
- case 143:
- this.enterOuterAlt(localctx, 143);
- this.state = 1167;
- this.drop_signature();
- break;
-
- case 144:
- this.enterOuterAlt(localctx, 144);
- this.state = 1168;
- this.drop_statistics();
- break;
-
- case 145:
- this.enterOuterAlt(localctx, 145);
- this.state = 1169;
- this.drop_statistics_name_azure_dw_and_pdw();
- break;
-
- case 146:
- this.enterOuterAlt(localctx, 146);
- this.state = 1170;
- this.drop_symmetric_key();
- break;
-
- case 147:
- this.enterOuterAlt(localctx, 147);
- this.state = 1171;
- this.drop_synonym();
- break;
-
- case 148:
- this.enterOuterAlt(localctx, 148);
- this.state = 1172;
- this.drop_table();
- break;
-
- case 149:
- this.enterOuterAlt(localctx, 149);
- this.state = 1173;
- this.drop_trigger();
- break;
-
- case 150:
- this.enterOuterAlt(localctx, 150);
- this.state = 1174;
- this.drop_type();
- break;
-
- case 151:
- this.enterOuterAlt(localctx, 151);
- this.state = 1175;
- this.drop_user();
- break;
-
- case 152:
- this.enterOuterAlt(localctx, 152);
- this.state = 1176;
- this.drop_view();
- break;
-
- case 153:
- this.enterOuterAlt(localctx, 153);
- this.state = 1177;
- this.drop_workload_group();
- break;
-
- case 154:
- this.enterOuterAlt(localctx, 154);
- this.state = 1178;
- this.drop_xml_schema_collection();
- break;
-
- case 155:
- this.enterOuterAlt(localctx, 155);
- this.state = 1179;
- this.disable_trigger();
- break;
-
- case 156:
- this.enterOuterAlt(localctx, 156);
- this.state = 1180;
- this.enable_trigger();
- break;
-
- case 157:
- this.enterOuterAlt(localctx, 157);
- this.state = 1181;
- this.lock_table();
- break;
-
- case 158:
- this.enterOuterAlt(localctx, 158);
- this.state = 1182;
- this.truncate_table();
- break;
-
- case 159:
- this.enterOuterAlt(localctx, 159);
- this.state = 1183;
- this.update_statistics();
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Backup_statementContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_backup_statement;
- return this;
-}
-
-Backup_statementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Backup_statementContext.prototype.constructor = Backup_statementContext;
-
-Backup_statementContext.prototype.backup_database = function() {
- return this.getTypedRuleContext(Backup_databaseContext,0);
-};
-
-Backup_statementContext.prototype.backup_log = function() {
- return this.getTypedRuleContext(Backup_logContext,0);
-};
-
-Backup_statementContext.prototype.backup_certificate = function() {
- return this.getTypedRuleContext(Backup_certificateContext,0);
-};
-
-Backup_statementContext.prototype.backup_master_key = function() {
- return this.getTypedRuleContext(Backup_master_keyContext,0);
-};
-
-Backup_statementContext.prototype.backup_service_master_key = function() {
- return this.getTypedRuleContext(Backup_service_master_keyContext,0);
-};
-
-Backup_statementContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterBackup_statement(this);
- }
-};
-
-Backup_statementContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitBackup_statement(this);
- }
-};
-
-Backup_statementContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitBackup_statement(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Backup_statementContext = Backup_statementContext;
-
-TSqlParser.prototype.backup_statement = function() {
-
- var localctx = new Backup_statementContext(this, this._ctx, this.state);
- this.enterRule(localctx, 12, TSqlParser.RULE_backup_statement);
- try {
- this.state = 1191;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,10,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 1186;
- this.backup_database();
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 1187;
- this.backup_log();
- break;
-
- case 3:
- this.enterOuterAlt(localctx, 3);
- this.state = 1188;
- this.backup_certificate();
- break;
-
- case 4:
- this.enterOuterAlt(localctx, 4);
- this.state = 1189;
- this.backup_master_key();
- break;
-
- case 5:
- this.enterOuterAlt(localctx, 5);
- this.state = 1190;
- this.backup_service_master_key();
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Cfl_statementContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_cfl_statement;
- return this;
-}
-
-Cfl_statementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Cfl_statementContext.prototype.constructor = Cfl_statementContext;
-
-Cfl_statementContext.prototype.block_statement = function() {
- return this.getTypedRuleContext(Block_statementContext,0);
-};
-
-Cfl_statementContext.prototype.break_statement = function() {
- return this.getTypedRuleContext(Break_statementContext,0);
-};
-
-Cfl_statementContext.prototype.continue_statement = function() {
- return this.getTypedRuleContext(Continue_statementContext,0);
-};
-
-Cfl_statementContext.prototype.goto_statement = function() {
- return this.getTypedRuleContext(Goto_statementContext,0);
-};
-
-Cfl_statementContext.prototype.if_statement = function() {
- return this.getTypedRuleContext(If_statementContext,0);
-};
-
-Cfl_statementContext.prototype.return_statement = function() {
- return this.getTypedRuleContext(Return_statementContext,0);
-};
-
-Cfl_statementContext.prototype.throw_statement = function() {
- return this.getTypedRuleContext(Throw_statementContext,0);
-};
-
-Cfl_statementContext.prototype.try_catch_statement = function() {
- return this.getTypedRuleContext(Try_catch_statementContext,0);
-};
-
-Cfl_statementContext.prototype.waitfor_statement = function() {
- return this.getTypedRuleContext(Waitfor_statementContext,0);
-};
-
-Cfl_statementContext.prototype.while_statement = function() {
- return this.getTypedRuleContext(While_statementContext,0);
-};
-
-Cfl_statementContext.prototype.print_statement = function() {
- return this.getTypedRuleContext(Print_statementContext,0);
-};
-
-Cfl_statementContext.prototype.raiseerror_statement = function() {
- return this.getTypedRuleContext(Raiseerror_statementContext,0);
-};
-
-Cfl_statementContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCfl_statement(this);
- }
-};
-
-Cfl_statementContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCfl_statement(this);
- }
-};
-
-Cfl_statementContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCfl_statement(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Cfl_statementContext = Cfl_statementContext;
-
-TSqlParser.prototype.cfl_statement = function() {
-
- var localctx = new Cfl_statementContext(this, this._ctx, this.state);
- this.enterRule(localctx, 14, TSqlParser.RULE_cfl_statement);
- try {
- this.state = 1205;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,11,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 1193;
- this.block_statement();
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 1194;
- this.break_statement();
- break;
-
- case 3:
- this.enterOuterAlt(localctx, 3);
- this.state = 1195;
- this.continue_statement();
- break;
-
- case 4:
- this.enterOuterAlt(localctx, 4);
- this.state = 1196;
- this.goto_statement();
- break;
-
- case 5:
- this.enterOuterAlt(localctx, 5);
- this.state = 1197;
- this.if_statement();
- break;
-
- case 6:
- this.enterOuterAlt(localctx, 6);
- this.state = 1198;
- this.return_statement();
- break;
-
- case 7:
- this.enterOuterAlt(localctx, 7);
- this.state = 1199;
- this.throw_statement();
- break;
-
- case 8:
- this.enterOuterAlt(localctx, 8);
- this.state = 1200;
- this.try_catch_statement();
- break;
-
- case 9:
- this.enterOuterAlt(localctx, 9);
- this.state = 1201;
- this.waitfor_statement();
- break;
-
- case 10:
- this.enterOuterAlt(localctx, 10);
- this.state = 1202;
- this.while_statement();
- break;
-
- case 11:
- this.enterOuterAlt(localctx, 11);
- this.state = 1203;
- this.print_statement();
- break;
-
- case 12:
- this.enterOuterAlt(localctx, 12);
- this.state = 1204;
- this.raiseerror_statement();
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Block_statementContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_block_statement;
- return this;
-}
-
-Block_statementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Block_statementContext.prototype.constructor = Block_statementContext;
-
-Block_statementContext.prototype.BEGIN = function() {
- return this.getToken(TSqlParser.BEGIN, 0);
-};
-
-Block_statementContext.prototype.END = function() {
- return this.getToken(TSqlParser.END, 0);
-};
-
-Block_statementContext.prototype.SEMI = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.SEMI);
- } else {
- return this.getToken(TSqlParser.SEMI, i);
- }
-};
-
-
-Block_statementContext.prototype.sql_clauses = function() {
- return this.getTypedRuleContext(Sql_clausesContext,0);
-};
-
-Block_statementContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterBlock_statement(this);
- }
-};
-
-Block_statementContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitBlock_statement(this);
- }
-};
-
-Block_statementContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitBlock_statement(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Block_statementContext = Block_statementContext;
-
-TSqlParser.prototype.block_statement = function() {
-
- var localctx = new Block_statementContext(this, this._ctx, this.state);
- this.enterRule(localctx, 16, TSqlParser.RULE_block_statement);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1207;
- this.match(TSqlParser.BEGIN);
- this.state = 1209;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,12,this._ctx);
- if(la_===1) {
- this.state = 1208;
- this.match(TSqlParser.SEMI);
-
- }
- this.state = 1212;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,13,this._ctx);
- if(la_===1) {
- this.state = 1211;
- this.sql_clauses();
-
- }
- this.state = 1214;
- this.match(TSqlParser.END);
- this.state = 1216;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,14,this._ctx);
- if(la_===1) {
- this.state = 1215;
- this.match(TSqlParser.SEMI);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Break_statementContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_break_statement;
- return this;
-}
-
-Break_statementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Break_statementContext.prototype.constructor = Break_statementContext;
-
-Break_statementContext.prototype.BREAK = function() {
- return this.getToken(TSqlParser.BREAK, 0);
-};
-
-Break_statementContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Break_statementContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterBreak_statement(this);
- }
-};
-
-Break_statementContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitBreak_statement(this);
- }
-};
-
-Break_statementContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitBreak_statement(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Break_statementContext = Break_statementContext;
-
-TSqlParser.prototype.break_statement = function() {
-
- var localctx = new Break_statementContext(this, this._ctx, this.state);
- this.enterRule(localctx, 18, TSqlParser.RULE_break_statement);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1218;
- this.match(TSqlParser.BREAK);
- this.state = 1220;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,15,this._ctx);
- if(la_===1) {
- this.state = 1219;
- this.match(TSqlParser.SEMI);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Continue_statementContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_continue_statement;
- return this;
-}
-
-Continue_statementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Continue_statementContext.prototype.constructor = Continue_statementContext;
-
-Continue_statementContext.prototype.CONTINUE = function() {
- return this.getToken(TSqlParser.CONTINUE, 0);
-};
-
-Continue_statementContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Continue_statementContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterContinue_statement(this);
- }
-};
-
-Continue_statementContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitContinue_statement(this);
- }
-};
-
-Continue_statementContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitContinue_statement(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Continue_statementContext = Continue_statementContext;
-
-TSqlParser.prototype.continue_statement = function() {
-
- var localctx = new Continue_statementContext(this, this._ctx, this.state);
- this.enterRule(localctx, 20, TSqlParser.RULE_continue_statement);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1222;
- this.match(TSqlParser.CONTINUE);
- this.state = 1224;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,16,this._ctx);
- if(la_===1) {
- this.state = 1223;
- this.match(TSqlParser.SEMI);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Goto_statementContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_goto_statement;
- return this;
-}
-
-Goto_statementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Goto_statementContext.prototype.constructor = Goto_statementContext;
-
-Goto_statementContext.prototype.GOTO = function() {
- return this.getToken(TSqlParser.GOTO, 0);
-};
-
-Goto_statementContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Goto_statementContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Goto_statementContext.prototype.COLON = function() {
- return this.getToken(TSqlParser.COLON, 0);
-};
-
-Goto_statementContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterGoto_statement(this);
- }
-};
-
-Goto_statementContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitGoto_statement(this);
- }
-};
-
-Goto_statementContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitGoto_statement(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Goto_statementContext = Goto_statementContext;
-
-TSqlParser.prototype.goto_statement = function() {
-
- var localctx = new Goto_statementContext(this, this._ctx, this.state);
- this.enterRule(localctx, 22, TSqlParser.RULE_goto_statement);
- try {
- this.state = 1236;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.GOTO:
- this.enterOuterAlt(localctx, 1);
- this.state = 1226;
- this.match(TSqlParser.GOTO);
- this.state = 1227;
- this.id();
- this.state = 1229;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,17,this._ctx);
- if(la_===1) {
- this.state = 1228;
- this.match(TSqlParser.SEMI);
-
- }
- break;
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.enterOuterAlt(localctx, 2);
- this.state = 1231;
- this.id();
- this.state = 1232;
- this.match(TSqlParser.COLON);
- this.state = 1234;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,18,this._ctx);
- if(la_===1) {
- this.state = 1233;
- this.match(TSqlParser.SEMI);
-
- }
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Return_statementContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_return_statement;
- return this;
-}
-
-Return_statementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Return_statementContext.prototype.constructor = Return_statementContext;
-
-Return_statementContext.prototype.RETURN = function() {
- return this.getToken(TSqlParser.RETURN, 0);
-};
-
-Return_statementContext.prototype.expression = function() {
- return this.getTypedRuleContext(ExpressionContext,0);
-};
-
-Return_statementContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Return_statementContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterReturn_statement(this);
- }
-};
-
-Return_statementContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitReturn_statement(this);
- }
-};
-
-Return_statementContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitReturn_statement(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Return_statementContext = Return_statementContext;
-
-TSqlParser.prototype.return_statement = function() {
-
- var localctx = new Return_statementContext(this, this._ctx, this.state);
- this.enterRule(localctx, 24, TSqlParser.RULE_return_statement);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1238;
- this.match(TSqlParser.RETURN);
- this.state = 1240;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,20,this._ctx);
- if(la_===1) {
- this.state = 1239;
- this.expression(0);
-
- }
- this.state = 1243;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,21,this._ctx);
- if(la_===1) {
- this.state = 1242;
- this.match(TSqlParser.SEMI);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function If_statementContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_if_statement;
- return this;
-}
-
-If_statementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-If_statementContext.prototype.constructor = If_statementContext;
-
-If_statementContext.prototype.IF = function() {
- return this.getToken(TSqlParser.IF, 0);
-};
-
-If_statementContext.prototype.search_condition = function() {
- return this.getTypedRuleContext(Search_conditionContext,0);
-};
-
-If_statementContext.prototype.sql_clause = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Sql_clauseContext);
- } else {
- return this.getTypedRuleContext(Sql_clauseContext,i);
- }
-};
-
-If_statementContext.prototype.ELSE = function() {
- return this.getToken(TSqlParser.ELSE, 0);
-};
-
-If_statementContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-If_statementContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterIf_statement(this);
- }
-};
-
-If_statementContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitIf_statement(this);
- }
-};
-
-If_statementContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitIf_statement(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.If_statementContext = If_statementContext;
-
-TSqlParser.prototype.if_statement = function() {
-
- var localctx = new If_statementContext(this, this._ctx, this.state);
- this.enterRule(localctx, 26, TSqlParser.RULE_if_statement);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1245;
- this.match(TSqlParser.IF);
- this.state = 1246;
- this.search_condition();
- this.state = 1247;
- this.sql_clause();
- this.state = 1250;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,22,this._ctx);
- if(la_===1) {
- this.state = 1248;
- this.match(TSqlParser.ELSE);
- this.state = 1249;
- this.sql_clause();
-
- }
- this.state = 1253;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,23,this._ctx);
- if(la_===1) {
- this.state = 1252;
- this.match(TSqlParser.SEMI);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Throw_statementContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_throw_statement;
- return this;
-}
-
-Throw_statementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Throw_statementContext.prototype.constructor = Throw_statementContext;
-
-Throw_statementContext.prototype.THROW = function() {
- return this.getToken(TSqlParser.THROW, 0);
-};
-
-Throw_statementContext.prototype.throw_error_number = function() {
- return this.getTypedRuleContext(Throw_error_numberContext,0);
-};
-
-Throw_statementContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Throw_statementContext.prototype.throw_message = function() {
- return this.getTypedRuleContext(Throw_messageContext,0);
-};
-
-Throw_statementContext.prototype.throw_state = function() {
- return this.getTypedRuleContext(Throw_stateContext,0);
-};
-
-Throw_statementContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Throw_statementContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterThrow_statement(this);
- }
-};
-
-Throw_statementContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitThrow_statement(this);
- }
-};
-
-Throw_statementContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitThrow_statement(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Throw_statementContext = Throw_statementContext;
-
-TSqlParser.prototype.throw_statement = function() {
-
- var localctx = new Throw_statementContext(this, this._ctx, this.state);
- this.enterRule(localctx, 28, TSqlParser.RULE_throw_statement);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1255;
- this.match(TSqlParser.THROW);
- this.state = 1262;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,24,this._ctx);
- if(la_===1) {
- this.state = 1256;
- this.throw_error_number();
- this.state = 1257;
- this.match(TSqlParser.COMMA);
- this.state = 1258;
- this.throw_message();
- this.state = 1259;
- this.match(TSqlParser.COMMA);
- this.state = 1260;
- this.throw_state();
-
- }
- this.state = 1265;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,25,this._ctx);
- if(la_===1) {
- this.state = 1264;
- this.match(TSqlParser.SEMI);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Throw_error_numberContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_throw_error_number;
- return this;
-}
-
-Throw_error_numberContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Throw_error_numberContext.prototype.constructor = Throw_error_numberContext;
-
-Throw_error_numberContext.prototype.DECIMAL = function() {
- return this.getToken(TSqlParser.DECIMAL, 0);
-};
-
-Throw_error_numberContext.prototype.LOCAL_ID = function() {
- return this.getToken(TSqlParser.LOCAL_ID, 0);
-};
-
-Throw_error_numberContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterThrow_error_number(this);
- }
-};
-
-Throw_error_numberContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitThrow_error_number(this);
- }
-};
-
-Throw_error_numberContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitThrow_error_number(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Throw_error_numberContext = Throw_error_numberContext;
-
-TSqlParser.prototype.throw_error_number = function() {
-
- var localctx = new Throw_error_numberContext(this, this._ctx, this.state);
- this.enterRule(localctx, 30, TSqlParser.RULE_throw_error_number);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1267;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.LOCAL_ID || _la===TSqlParser.DECIMAL)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Throw_messageContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_throw_message;
- return this;
-}
-
-Throw_messageContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Throw_messageContext.prototype.constructor = Throw_messageContext;
-
-Throw_messageContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Throw_messageContext.prototype.LOCAL_ID = function() {
- return this.getToken(TSqlParser.LOCAL_ID, 0);
-};
-
-Throw_messageContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterThrow_message(this);
- }
-};
-
-Throw_messageContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitThrow_message(this);
- }
-};
-
-Throw_messageContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitThrow_message(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Throw_messageContext = Throw_messageContext;
-
-TSqlParser.prototype.throw_message = function() {
-
- var localctx = new Throw_messageContext(this, this._ctx, this.state);
- this.enterRule(localctx, 32, TSqlParser.RULE_throw_message);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1269;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.LOCAL_ID || _la===TSqlParser.STRING)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Throw_stateContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_throw_state;
- return this;
-}
-
-Throw_stateContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Throw_stateContext.prototype.constructor = Throw_stateContext;
-
-Throw_stateContext.prototype.DECIMAL = function() {
- return this.getToken(TSqlParser.DECIMAL, 0);
-};
-
-Throw_stateContext.prototype.LOCAL_ID = function() {
- return this.getToken(TSqlParser.LOCAL_ID, 0);
-};
-
-Throw_stateContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterThrow_state(this);
- }
-};
-
-Throw_stateContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitThrow_state(this);
- }
-};
-
-Throw_stateContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitThrow_state(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Throw_stateContext = Throw_stateContext;
-
-TSqlParser.prototype.throw_state = function() {
-
- var localctx = new Throw_stateContext(this, this._ctx, this.state);
- this.enterRule(localctx, 34, TSqlParser.RULE_throw_state);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1271;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.LOCAL_ID || _la===TSqlParser.DECIMAL)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Try_catch_statementContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_try_catch_statement;
- this.try_clauses = null; // Sql_clausesContext
- this.catch_clauses = null; // Sql_clausesContext
- return this;
-}
-
-Try_catch_statementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Try_catch_statementContext.prototype.constructor = Try_catch_statementContext;
-
-Try_catch_statementContext.prototype.BEGIN = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.BEGIN);
- } else {
- return this.getToken(TSqlParser.BEGIN, i);
- }
-};
-
-
-Try_catch_statementContext.prototype.TRY = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.TRY);
- } else {
- return this.getToken(TSqlParser.TRY, i);
- }
-};
-
-
-Try_catch_statementContext.prototype.END = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.END);
- } else {
- return this.getToken(TSqlParser.END, i);
- }
-};
-
-
-Try_catch_statementContext.prototype.CATCH = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.CATCH);
- } else {
- return this.getToken(TSqlParser.CATCH, i);
- }
-};
-
-
-Try_catch_statementContext.prototype.SEMI = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.SEMI);
- } else {
- return this.getToken(TSqlParser.SEMI, i);
- }
-};
-
-
-Try_catch_statementContext.prototype.sql_clauses = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Sql_clausesContext);
- } else {
- return this.getTypedRuleContext(Sql_clausesContext,i);
- }
-};
-
-Try_catch_statementContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterTry_catch_statement(this);
- }
-};
-
-Try_catch_statementContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitTry_catch_statement(this);
- }
-};
-
-Try_catch_statementContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitTry_catch_statement(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Try_catch_statementContext = Try_catch_statementContext;
-
-TSqlParser.prototype.try_catch_statement = function() {
-
- var localctx = new Try_catch_statementContext(this, this._ctx, this.state);
- this.enterRule(localctx, 36, TSqlParser.RULE_try_catch_statement);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1273;
- this.match(TSqlParser.BEGIN);
- this.state = 1274;
- this.match(TSqlParser.TRY);
- this.state = 1276;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,26,this._ctx);
- if(la_===1) {
- this.state = 1275;
- this.match(TSqlParser.SEMI);
-
- }
- this.state = 1279;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,27,this._ctx);
- if(la_===1) {
- this.state = 1278;
- localctx.try_clauses = this.sql_clauses();
-
- }
- this.state = 1281;
- this.match(TSqlParser.END);
- this.state = 1282;
- this.match(TSqlParser.TRY);
- this.state = 1284;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.SEMI) {
- this.state = 1283;
- this.match(TSqlParser.SEMI);
- }
-
- this.state = 1286;
- this.match(TSqlParser.BEGIN);
- this.state = 1287;
- this.match(TSqlParser.CATCH);
- this.state = 1289;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,29,this._ctx);
- if(la_===1) {
- this.state = 1288;
- this.match(TSqlParser.SEMI);
-
- }
- this.state = 1292;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,30,this._ctx);
- if(la_===1) {
- this.state = 1291;
- localctx.catch_clauses = this.sql_clauses();
-
- }
- this.state = 1294;
- this.match(TSqlParser.END);
- this.state = 1295;
- this.match(TSqlParser.CATCH);
- this.state = 1297;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,31,this._ctx);
- if(la_===1) {
- this.state = 1296;
- this.match(TSqlParser.SEMI);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Waitfor_statementContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_waitfor_statement;
- return this;
-}
-
-Waitfor_statementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Waitfor_statementContext.prototype.constructor = Waitfor_statementContext;
-
-Waitfor_statementContext.prototype.WAITFOR = function() {
- return this.getToken(TSqlParser.WAITFOR, 0);
-};
-
-Waitfor_statementContext.prototype.receive_statement = function() {
- return this.getTypedRuleContext(Receive_statementContext,0);
-};
-
-Waitfor_statementContext.prototype.COMMA = function() {
- return this.getToken(TSqlParser.COMMA, 0);
-};
-
-Waitfor_statementContext.prototype.time = function() {
- return this.getTypedRuleContext(TimeContext,0);
-};
-
-Waitfor_statementContext.prototype.expression = function() {
- return this.getTypedRuleContext(ExpressionContext,0);
-};
-
-Waitfor_statementContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Waitfor_statementContext.prototype.DELAY = function() {
- return this.getToken(TSqlParser.DELAY, 0);
-};
-
-Waitfor_statementContext.prototype.TIME = function() {
- return this.getToken(TSqlParser.TIME, 0);
-};
-
-Waitfor_statementContext.prototype.TIMEOUT = function() {
- return this.getToken(TSqlParser.TIMEOUT, 0);
-};
-
-Waitfor_statementContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterWaitfor_statement(this);
- }
-};
-
-Waitfor_statementContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitWaitfor_statement(this);
- }
-};
-
-Waitfor_statementContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitWaitfor_statement(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Waitfor_statementContext = Waitfor_statementContext;
-
-TSqlParser.prototype.waitfor_statement = function() {
-
- var localctx = new Waitfor_statementContext(this, this._ctx, this.state);
- this.enterRule(localctx, 38, TSqlParser.RULE_waitfor_statement);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1299;
- this.match(TSqlParser.WAITFOR);
- this.state = 1301;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,32,this._ctx);
- if(la_===1) {
- this.state = 1300;
- this.receive_statement();
-
- }
- this.state = 1304;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 1303;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 1308;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,34,this._ctx);
- if(la_===1) {
- this.state = 1306;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.DELAY || _la===TSqlParser.TIME || _la===TSqlParser.TIMEOUT)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 1307;
- this.time();
-
- }
- this.state = 1311;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,35,this._ctx);
- if(la_===1) {
- this.state = 1310;
- this.expression(0);
-
- }
- this.state = 1314;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,36,this._ctx);
- if(la_===1) {
- this.state = 1313;
- this.match(TSqlParser.SEMI);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function While_statementContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_while_statement;
- return this;
-}
-
-While_statementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-While_statementContext.prototype.constructor = While_statementContext;
-
-While_statementContext.prototype.WHILE = function() {
- return this.getToken(TSqlParser.WHILE, 0);
-};
-
-While_statementContext.prototype.search_condition = function() {
- return this.getTypedRuleContext(Search_conditionContext,0);
-};
-
-While_statementContext.prototype.sql_clause = function() {
- return this.getTypedRuleContext(Sql_clauseContext,0);
-};
-
-While_statementContext.prototype.BREAK = function() {
- return this.getToken(TSqlParser.BREAK, 0);
-};
-
-While_statementContext.prototype.CONTINUE = function() {
- return this.getToken(TSqlParser.CONTINUE, 0);
-};
-
-While_statementContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-While_statementContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterWhile_statement(this);
- }
-};
-
-While_statementContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitWhile_statement(this);
- }
-};
-
-While_statementContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitWhile_statement(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.While_statementContext = While_statementContext;
-
-TSqlParser.prototype.while_statement = function() {
-
- var localctx = new While_statementContext(this, this._ctx, this.state);
- this.enterRule(localctx, 40, TSqlParser.RULE_while_statement);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1316;
- this.match(TSqlParser.WHILE);
- this.state = 1317;
- this.search_condition();
- this.state = 1327;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,39,this._ctx);
- switch(la_) {
- case 1:
- this.state = 1318;
- this.sql_clause();
- break;
-
- case 2:
- this.state = 1319;
- this.match(TSqlParser.BREAK);
- this.state = 1321;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,37,this._ctx);
- if(la_===1) {
- this.state = 1320;
- this.match(TSqlParser.SEMI);
-
- }
- break;
-
- case 3:
- this.state = 1323;
- this.match(TSqlParser.CONTINUE);
- this.state = 1325;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,38,this._ctx);
- if(la_===1) {
- this.state = 1324;
- this.match(TSqlParser.SEMI);
-
- }
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Print_statementContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_print_statement;
- return this;
-}
-
-Print_statementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Print_statementContext.prototype.constructor = Print_statementContext;
-
-Print_statementContext.prototype.PRINT = function() {
- return this.getToken(TSqlParser.PRINT, 0);
-};
-
-Print_statementContext.prototype.expression = function() {
- return this.getTypedRuleContext(ExpressionContext,0);
-};
-
-Print_statementContext.prototype.DOUBLE_QUOTE_ID = function() {
- return this.getToken(TSqlParser.DOUBLE_QUOTE_ID, 0);
-};
-
-Print_statementContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Print_statementContext.prototype.LOCAL_ID = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.LOCAL_ID);
- } else {
- return this.getToken(TSqlParser.LOCAL_ID, i);
- }
-};
-
-
-Print_statementContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Print_statementContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterPrint_statement(this);
- }
-};
-
-Print_statementContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitPrint_statement(this);
- }
-};
-
-Print_statementContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitPrint_statement(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Print_statementContext = Print_statementContext;
-
-TSqlParser.prototype.print_statement = function() {
-
- var localctx = new Print_statementContext(this, this._ctx, this.state);
- this.enterRule(localctx, 42, TSqlParser.RULE_print_statement);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1329;
- this.match(TSqlParser.PRINT);
- this.state = 1332;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,40,this._ctx);
- switch(la_) {
- case 1:
- this.state = 1330;
- this.expression(0);
- break;
-
- case 2:
- this.state = 1331;
- this.match(TSqlParser.DOUBLE_QUOTE_ID);
- break;
-
- }
- this.state = 1338;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 1334;
- this.match(TSqlParser.COMMA);
- this.state = 1335;
- this.match(TSqlParser.LOCAL_ID);
- this.state = 1340;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- this.state = 1342;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,42,this._ctx);
- if(la_===1) {
- this.state = 1341;
- this.match(TSqlParser.SEMI);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Raiseerror_statementContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_raiseerror_statement;
- this.msg = null; // Token
- this.severity = null; // Constant_LOCAL_IDContext
- this.state = null; // Constant_LOCAL_IDContext
- this.formatstring = null; // Token
- this.argument = null; // Token
- return this;
-}
-
-Raiseerror_statementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Raiseerror_statementContext.prototype.constructor = Raiseerror_statementContext;
-
-Raiseerror_statementContext.prototype.RAISERROR = function() {
- return this.getToken(TSqlParser.RAISERROR, 0);
-};
-
-Raiseerror_statementContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Raiseerror_statementContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Raiseerror_statementContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Raiseerror_statementContext.prototype.constant_LOCAL_ID = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Constant_LOCAL_IDContext);
- } else {
- return this.getTypedRuleContext(Constant_LOCAL_IDContext,i);
- }
-};
-
-Raiseerror_statementContext.prototype.DECIMAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DECIMAL);
- } else {
- return this.getToken(TSqlParser.DECIMAL, i);
- }
-};
-
-
-Raiseerror_statementContext.prototype.STRING = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.STRING);
- } else {
- return this.getToken(TSqlParser.STRING, i);
- }
-};
-
-
-Raiseerror_statementContext.prototype.LOCAL_ID = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.LOCAL_ID);
- } else {
- return this.getToken(TSqlParser.LOCAL_ID, i);
- }
-};
-
-
-Raiseerror_statementContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Raiseerror_statementContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Raiseerror_statementContext.prototype.LOG = function() {
- return this.getToken(TSqlParser.LOG, 0);
-};
-
-Raiseerror_statementContext.prototype.SETERROR = function() {
- return this.getToken(TSqlParser.SETERROR, 0);
-};
-
-Raiseerror_statementContext.prototype.DOUBLE_QUOTE_ID = function() {
- return this.getToken(TSqlParser.DOUBLE_QUOTE_ID, 0);
-};
-
-Raiseerror_statementContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterRaiseerror_statement(this);
- }
-};
-
-Raiseerror_statementContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitRaiseerror_statement(this);
- }
-};
-
-Raiseerror_statementContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitRaiseerror_statement(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Raiseerror_statementContext = Raiseerror_statementContext;
-
-TSqlParser.prototype.raiseerror_statement = function() {
-
- var localctx = new Raiseerror_statementContext(this, this._ctx, this.state);
- this.enterRule(localctx, 44, TSqlParser.RULE_raiseerror_statement);
- var _la = 0; // Token type
- try {
- this.state = 1376;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,47,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 1344;
- this.match(TSqlParser.RAISERROR);
- this.state = 1345;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 1346;
- localctx.msg = this._input.LT(1);
- _la = this._input.LA(1);
- if(!(((((_la - 799)) & ~0x1f) == 0 && ((1 << (_la - 799)) & ((1 << (TSqlParser.LOCAL_ID - 799)) | (1 << (TSqlParser.DECIMAL - 799)) | (1 << (TSqlParser.STRING - 799)))) !== 0))) {
- localctx.msg = this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 1347;
- this.match(TSqlParser.COMMA);
- this.state = 1348;
- localctx.severity = this.constant_LOCAL_ID();
- this.state = 1349;
- this.match(TSqlParser.COMMA);
- this.state = 1350;
- localctx.state = this.constant_LOCAL_ID();
- this.state = 1355;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 1351;
- this.match(TSqlParser.COMMA);
- this.state = 1352;
- this.constant_LOCAL_ID();
- this.state = 1357;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- this.state = 1358;
- this.match(TSqlParser.RR_BRACKET);
- this.state = 1361;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,44,this._ctx);
- if(la_===1) {
- this.state = 1359;
- this.match(TSqlParser.WITH);
- this.state = 1360;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.LOG || _la===TSqlParser.SETERROR)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
-
- }
- this.state = 1364;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,45,this._ctx);
- if(la_===1) {
- this.state = 1363;
- this.match(TSqlParser.SEMI);
-
- }
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 1366;
- this.match(TSqlParser.RAISERROR);
- this.state = 1367;
- this.match(TSqlParser.DECIMAL);
- this.state = 1368;
- localctx.formatstring = this._input.LT(1);
- _la = this._input.LA(1);
- if(!(((((_la - 796)) & ~0x1f) == 0 && ((1 << (_la - 796)) & ((1 << (TSqlParser.DOUBLE_QUOTE_ID - 796)) | (1 << (TSqlParser.LOCAL_ID - 796)) | (1 << (TSqlParser.STRING - 796)))) !== 0))) {
- localctx.formatstring = this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 1373;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 1369;
- this.match(TSqlParser.COMMA);
- this.state = 1370;
- localctx.argument = this._input.LT(1);
- _la = this._input.LA(1);
- if(!(((((_la - 799)) & ~0x1f) == 0 && ((1 << (_la - 799)) & ((1 << (TSqlParser.LOCAL_ID - 799)) | (1 << (TSqlParser.DECIMAL - 799)) | (1 << (TSqlParser.STRING - 799)))) !== 0))) {
- localctx.argument = this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 1375;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Empty_statementContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_empty_statement;
- return this;
-}
-
-Empty_statementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Empty_statementContext.prototype.constructor = Empty_statementContext;
-
-Empty_statementContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Empty_statementContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterEmpty_statement(this);
- }
-};
-
-Empty_statementContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitEmpty_statement(this);
- }
-};
-
-Empty_statementContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitEmpty_statement(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Empty_statementContext = Empty_statementContext;
-
-TSqlParser.prototype.empty_statement = function() {
-
- var localctx = new Empty_statementContext(this, this._ctx, this.state);
- this.enterRule(localctx, 46, TSqlParser.RULE_empty_statement);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1378;
- this.match(TSqlParser.SEMI);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Another_statementContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_another_statement;
- return this;
-}
-
-Another_statementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Another_statementContext.prototype.constructor = Another_statementContext;
-
-Another_statementContext.prototype.declare_statement = function() {
- return this.getTypedRuleContext(Declare_statementContext,0);
-};
-
-Another_statementContext.prototype.cursor_statement = function() {
- return this.getTypedRuleContext(Cursor_statementContext,0);
-};
-
-Another_statementContext.prototype.conversation_statement = function() {
- return this.getTypedRuleContext(Conversation_statementContext,0);
-};
-
-Another_statementContext.prototype.create_contract = function() {
- return this.getTypedRuleContext(Create_contractContext,0);
-};
-
-Another_statementContext.prototype.create_queue = function() {
- return this.getTypedRuleContext(Create_queueContext,0);
-};
-
-Another_statementContext.prototype.alter_queue = function() {
- return this.getTypedRuleContext(Alter_queueContext,0);
-};
-
-Another_statementContext.prototype.execute_statement = function() {
- return this.getTypedRuleContext(Execute_statementContext,0);
-};
-
-Another_statementContext.prototype.kill_statement = function() {
- return this.getTypedRuleContext(Kill_statementContext,0);
-};
-
-Another_statementContext.prototype.message_statement = function() {
- return this.getTypedRuleContext(Message_statementContext,0);
-};
-
-Another_statementContext.prototype.security_statement = function() {
- return this.getTypedRuleContext(Security_statementContext,0);
-};
-
-Another_statementContext.prototype.set_statement = function() {
- return this.getTypedRuleContext(Set_statementContext,0);
-};
-
-Another_statementContext.prototype.transaction_statement = function() {
- return this.getTypedRuleContext(Transaction_statementContext,0);
-};
-
-Another_statementContext.prototype.use_statement = function() {
- return this.getTypedRuleContext(Use_statementContext,0);
-};
-
-Another_statementContext.prototype.setuser_statement = function() {
- return this.getTypedRuleContext(Setuser_statementContext,0);
-};
-
-Another_statementContext.prototype.reconfigure_statement = function() {
- return this.getTypedRuleContext(Reconfigure_statementContext,0);
-};
-
-Another_statementContext.prototype.shutdown_statement = function() {
- return this.getTypedRuleContext(Shutdown_statementContext,0);
-};
-
-Another_statementContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAnother_statement(this);
- }
-};
-
-Another_statementContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAnother_statement(this);
- }
-};
-
-Another_statementContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAnother_statement(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Another_statementContext = Another_statementContext;
-
-TSqlParser.prototype.another_statement = function() {
-
- var localctx = new Another_statementContext(this, this._ctx, this.state);
- this.enterRule(localctx, 48, TSqlParser.RULE_another_statement);
- try {
- this.state = 1396;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,48,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 1380;
- this.declare_statement();
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 1381;
- this.cursor_statement();
- break;
-
- case 3:
- this.enterOuterAlt(localctx, 3);
- this.state = 1382;
- this.conversation_statement();
- break;
-
- case 4:
- this.enterOuterAlt(localctx, 4);
- this.state = 1383;
- this.create_contract();
- break;
-
- case 5:
- this.enterOuterAlt(localctx, 5);
- this.state = 1384;
- this.create_queue();
- break;
-
- case 6:
- this.enterOuterAlt(localctx, 6);
- this.state = 1385;
- this.alter_queue();
- break;
-
- case 7:
- this.enterOuterAlt(localctx, 7);
- this.state = 1386;
- this.execute_statement();
- break;
-
- case 8:
- this.enterOuterAlt(localctx, 8);
- this.state = 1387;
- this.kill_statement();
- break;
-
- case 9:
- this.enterOuterAlt(localctx, 9);
- this.state = 1388;
- this.message_statement();
- break;
-
- case 10:
- this.enterOuterAlt(localctx, 10);
- this.state = 1389;
- this.security_statement();
- break;
-
- case 11:
- this.enterOuterAlt(localctx, 11);
- this.state = 1390;
- this.set_statement();
- break;
-
- case 12:
- this.enterOuterAlt(localctx, 12);
- this.state = 1391;
- this.transaction_statement();
- break;
-
- case 13:
- this.enterOuterAlt(localctx, 13);
- this.state = 1392;
- this.use_statement();
- break;
-
- case 14:
- this.enterOuterAlt(localctx, 14);
- this.state = 1393;
- this.setuser_statement();
- break;
-
- case 15:
- this.enterOuterAlt(localctx, 15);
- this.state = 1394;
- this.reconfigure_statement();
- break;
-
- case 16:
- this.enterOuterAlt(localctx, 16);
- this.state = 1395;
- this.shutdown_statement();
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_application_roleContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_application_role;
- this.appliction_role = null; // IdContext
- this.new_application_role_name = null; // IdContext
- this.application_role_password = null; // Token
- this.app_role_default_schema = null; // IdContext
- return this;
-}
-
-Alter_application_roleContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_application_roleContext.prototype.constructor = Alter_application_roleContext;
-
-Alter_application_roleContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Alter_application_roleContext.prototype.APPLICATION = function() {
- return this.getToken(TSqlParser.APPLICATION, 0);
-};
-
-Alter_application_roleContext.prototype.ROLE = function() {
- return this.getToken(TSqlParser.ROLE, 0);
-};
-
-Alter_application_roleContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Alter_application_roleContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Alter_application_roleContext.prototype.NAME = function() {
- return this.getToken(TSqlParser.NAME, 0);
-};
-
-Alter_application_roleContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-Alter_application_roleContext.prototype.PASSWORD = function() {
- return this.getToken(TSqlParser.PASSWORD, 0);
-};
-
-Alter_application_roleContext.prototype.DEFAULT_SCHEMA = function() {
- return this.getToken(TSqlParser.DEFAULT_SCHEMA, 0);
-};
-
-Alter_application_roleContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Alter_application_roleContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Alter_application_roleContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_application_role(this);
- }
-};
-
-Alter_application_roleContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_application_role(this);
- }
-};
-
-Alter_application_roleContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_application_role(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_application_roleContext = Alter_application_roleContext;
-
-TSqlParser.prototype.alter_application_role = function() {
-
- var localctx = new Alter_application_roleContext(this, this._ctx, this.state);
- this.enterRule(localctx, 50, TSqlParser.RULE_alter_application_role);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1398;
- this.match(TSqlParser.ALTER);
- this.state = 1399;
- this.match(TSqlParser.APPLICATION);
- this.state = 1400;
- this.match(TSqlParser.ROLE);
- this.state = 1401;
- localctx.appliction_role = this.id();
- this.state = 1402;
- this.match(TSqlParser.WITH);
- this.state = 1409;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,50,this._ctx);
- if(la_===1) {
- this.state = 1404;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 1403;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 1406;
- this.match(TSqlParser.NAME);
- this.state = 1407;
- this.match(TSqlParser.EQUAL);
- this.state = 1408;
- localctx.new_application_role_name = this.id();
-
- }
- this.state = 1417;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,52,this._ctx);
- if(la_===1) {
- this.state = 1412;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 1411;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 1414;
- this.match(TSqlParser.PASSWORD);
- this.state = 1415;
- this.match(TSqlParser.EQUAL);
- this.state = 1416;
- localctx.application_role_password = this.match(TSqlParser.STRING);
-
- }
- this.state = 1425;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.DEFAULT_SCHEMA || _la===TSqlParser.COMMA) {
- this.state = 1420;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 1419;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 1422;
- this.match(TSqlParser.DEFAULT_SCHEMA);
- this.state = 1423;
- this.match(TSqlParser.EQUAL);
- this.state = 1424;
- localctx.app_role_default_schema = this.id();
- }
-
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_application_roleContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_application_role;
- this.appliction_role = null; // IdContext
- this.application_role_password = null; // Token
- this.app_role_default_schema = null; // IdContext
- return this;
-}
-
-Create_application_roleContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_application_roleContext.prototype.constructor = Create_application_roleContext;
-
-Create_application_roleContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_application_roleContext.prototype.APPLICATION = function() {
- return this.getToken(TSqlParser.APPLICATION, 0);
-};
-
-Create_application_roleContext.prototype.ROLE = function() {
- return this.getToken(TSqlParser.ROLE, 0);
-};
-
-Create_application_roleContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Create_application_roleContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Create_application_roleContext.prototype.PASSWORD = function() {
- return this.getToken(TSqlParser.PASSWORD, 0);
-};
-
-Create_application_roleContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-Create_application_roleContext.prototype.DEFAULT_SCHEMA = function() {
- return this.getToken(TSqlParser.DEFAULT_SCHEMA, 0);
-};
-
-Create_application_roleContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Create_application_roleContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Create_application_roleContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_application_role(this);
- }
-};
-
-Create_application_roleContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_application_role(this);
- }
-};
-
-Create_application_roleContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_application_role(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_application_roleContext = Create_application_roleContext;
-
-TSqlParser.prototype.create_application_role = function() {
-
- var localctx = new Create_application_roleContext(this, this._ctx, this.state);
- this.enterRule(localctx, 52, TSqlParser.RULE_create_application_role);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1427;
- this.match(TSqlParser.CREATE);
- this.state = 1428;
- this.match(TSqlParser.APPLICATION);
- this.state = 1429;
- this.match(TSqlParser.ROLE);
- this.state = 1430;
- localctx.appliction_role = this.id();
- this.state = 1431;
- this.match(TSqlParser.WITH);
- this.state = 1438;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,56,this._ctx);
- if(la_===1) {
- this.state = 1433;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 1432;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 1435;
- this.match(TSqlParser.PASSWORD);
- this.state = 1436;
- this.match(TSqlParser.EQUAL);
- this.state = 1437;
- localctx.application_role_password = this.match(TSqlParser.STRING);
-
- }
- this.state = 1446;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.DEFAULT_SCHEMA || _la===TSqlParser.COMMA) {
- this.state = 1441;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 1440;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 1443;
- this.match(TSqlParser.DEFAULT_SCHEMA);
- this.state = 1444;
- this.match(TSqlParser.EQUAL);
- this.state = 1445;
- localctx.app_role_default_schema = this.id();
- }
-
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_aggregateContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_aggregate;
- this.schema_name = null; // IdContext
- this.aggregate_name = null; // IdContext
- return this;
-}
-
-Drop_aggregateContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_aggregateContext.prototype.constructor = Drop_aggregateContext;
-
-Drop_aggregateContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_aggregateContext.prototype.AGGREGATE = function() {
- return this.getToken(TSqlParser.AGGREGATE, 0);
-};
-
-Drop_aggregateContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Drop_aggregateContext.prototype.IF = function() {
- return this.getToken(TSqlParser.IF, 0);
-};
-
-Drop_aggregateContext.prototype.EXISTS = function() {
- return this.getToken(TSqlParser.EXISTS, 0);
-};
-
-Drop_aggregateContext.prototype.DOT = function() {
- return this.getToken(TSqlParser.DOT, 0);
-};
-
-Drop_aggregateContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_aggregate(this);
- }
-};
-
-Drop_aggregateContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_aggregate(this);
- }
-};
-
-Drop_aggregateContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_aggregate(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_aggregateContext = Drop_aggregateContext;
-
-TSqlParser.prototype.drop_aggregate = function() {
-
- var localctx = new Drop_aggregateContext(this, this._ctx, this.state);
- this.enterRule(localctx, 54, TSqlParser.RULE_drop_aggregate);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1448;
- this.match(TSqlParser.DROP);
- this.state = 1449;
- this.match(TSqlParser.AGGREGATE);
- this.state = 1452;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.IF) {
- this.state = 1450;
- this.match(TSqlParser.IF);
- this.state = 1451;
- this.match(TSqlParser.EXISTS);
- }
-
- this.state = 1457;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,60,this._ctx);
- if(la_===1) {
- this.state = 1454;
- localctx.schema_name = this.id();
- this.state = 1455;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 1459;
- localctx.aggregate_name = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_application_roleContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_application_role;
- this.rolename = null; // IdContext
- return this;
-}
-
-Drop_application_roleContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_application_roleContext.prototype.constructor = Drop_application_roleContext;
-
-Drop_application_roleContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_application_roleContext.prototype.APPLICATION = function() {
- return this.getToken(TSqlParser.APPLICATION, 0);
-};
-
-Drop_application_roleContext.prototype.ROLE = function() {
- return this.getToken(TSqlParser.ROLE, 0);
-};
-
-Drop_application_roleContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Drop_application_roleContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_application_role(this);
- }
-};
-
-Drop_application_roleContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_application_role(this);
- }
-};
-
-Drop_application_roleContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_application_role(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_application_roleContext = Drop_application_roleContext;
-
-TSqlParser.prototype.drop_application_role = function() {
-
- var localctx = new Drop_application_roleContext(this, this._ctx, this.state);
- this.enterRule(localctx, 56, TSqlParser.RULE_drop_application_role);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1461;
- this.match(TSqlParser.DROP);
- this.state = 1462;
- this.match(TSqlParser.APPLICATION);
- this.state = 1463;
- this.match(TSqlParser.ROLE);
- this.state = 1464;
- localctx.rolename = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_assemblyContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_assembly;
- this.assembly_name = null; // IdContext
- return this;
-}
-
-Alter_assemblyContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_assemblyContext.prototype.constructor = Alter_assemblyContext;
-
-Alter_assemblyContext.prototype.alter_assembly_start = function() {
- return this.getTypedRuleContext(Alter_assembly_startContext,0);
-};
-
-Alter_assemblyContext.prototype.alter_assembly_clause = function() {
- return this.getTypedRuleContext(Alter_assembly_clauseContext,0);
-};
-
-Alter_assemblyContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Alter_assemblyContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_assembly(this);
- }
-};
-
-Alter_assemblyContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_assembly(this);
- }
-};
-
-Alter_assemblyContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_assembly(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_assemblyContext = Alter_assemblyContext;
-
-TSqlParser.prototype.alter_assembly = function() {
-
- var localctx = new Alter_assemblyContext(this, this._ctx, this.state);
- this.enterRule(localctx, 58, TSqlParser.RULE_alter_assembly);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1466;
- this.alter_assembly_start();
- this.state = 1467;
- localctx.assembly_name = this.id();
- this.state = 1468;
- this.alter_assembly_clause();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_assembly_startContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_assembly_start;
- return this;
-}
-
-Alter_assembly_startContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_assembly_startContext.prototype.constructor = Alter_assembly_startContext;
-
-Alter_assembly_startContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Alter_assembly_startContext.prototype.ASSEMBLY = function() {
- return this.getToken(TSqlParser.ASSEMBLY, 0);
-};
-
-Alter_assembly_startContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_assembly_start(this);
- }
-};
-
-Alter_assembly_startContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_assembly_start(this);
- }
-};
-
-Alter_assembly_startContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_assembly_start(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_assembly_startContext = Alter_assembly_startContext;
-
-TSqlParser.prototype.alter_assembly_start = function() {
-
- var localctx = new Alter_assembly_startContext(this, this._ctx, this.state);
- this.enterRule(localctx, 60, TSqlParser.RULE_alter_assembly_start);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1470;
- this.match(TSqlParser.ALTER);
- this.state = 1471;
- this.match(TSqlParser.ASSEMBLY);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_assembly_clauseContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_assembly_clause;
- return this;
-}
-
-Alter_assembly_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_assembly_clauseContext.prototype.constructor = Alter_assembly_clauseContext;
-
-Alter_assembly_clauseContext.prototype.alter_assembly_from_clause = function() {
- return this.getTypedRuleContext(Alter_assembly_from_clauseContext,0);
-};
-
-Alter_assembly_clauseContext.prototype.alter_assembly_with_clause = function() {
- return this.getTypedRuleContext(Alter_assembly_with_clauseContext,0);
-};
-
-Alter_assembly_clauseContext.prototype.alter_assembly_drop_clause = function() {
- return this.getTypedRuleContext(Alter_assembly_drop_clauseContext,0);
-};
-
-Alter_assembly_clauseContext.prototype.alter_assembly_add_clause = function() {
- return this.getTypedRuleContext(Alter_assembly_add_clauseContext,0);
-};
-
-Alter_assembly_clauseContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_assembly_clause(this);
- }
-};
-
-Alter_assembly_clauseContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_assembly_clause(this);
- }
-};
-
-Alter_assembly_clauseContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_assembly_clause(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_assembly_clauseContext = Alter_assembly_clauseContext;
-
-TSqlParser.prototype.alter_assembly_clause = function() {
-
- var localctx = new Alter_assembly_clauseContext(this, this._ctx, this.state);
- this.enterRule(localctx, 62, TSqlParser.RULE_alter_assembly_clause);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1474;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.FROM) {
- this.state = 1473;
- this.alter_assembly_from_clause();
- }
-
- this.state = 1477;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,62,this._ctx);
- if(la_===1) {
- this.state = 1476;
- this.alter_assembly_with_clause();
-
- }
- this.state = 1480;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,63,this._ctx);
- if(la_===1) {
- this.state = 1479;
- this.alter_assembly_drop_clause();
-
- }
- this.state = 1483;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.ADD) {
- this.state = 1482;
- this.alter_assembly_add_clause();
- }
-
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_assembly_from_clauseContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_assembly_from_clause;
- return this;
-}
-
-Alter_assembly_from_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_assembly_from_clauseContext.prototype.constructor = Alter_assembly_from_clauseContext;
-
-Alter_assembly_from_clauseContext.prototype.alter_assembly_from_clause_start = function() {
- return this.getTypedRuleContext(Alter_assembly_from_clause_startContext,0);
-};
-
-Alter_assembly_from_clauseContext.prototype.client_assembly_specifier = function() {
- return this.getTypedRuleContext(Client_assembly_specifierContext,0);
-};
-
-Alter_assembly_from_clauseContext.prototype.alter_assembly_file_bits = function() {
- return this.getTypedRuleContext(Alter_assembly_file_bitsContext,0);
-};
-
-Alter_assembly_from_clauseContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_assembly_from_clause(this);
- }
-};
-
-Alter_assembly_from_clauseContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_assembly_from_clause(this);
- }
-};
-
-Alter_assembly_from_clauseContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_assembly_from_clause(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_assembly_from_clauseContext = Alter_assembly_from_clauseContext;
-
-TSqlParser.prototype.alter_assembly_from_clause = function() {
-
- var localctx = new Alter_assembly_from_clauseContext(this, this._ctx, this.state);
- this.enterRule(localctx, 64, TSqlParser.RULE_alter_assembly_from_clause);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1485;
- this.alter_assembly_from_clause_start();
- this.state = 1488;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.DOUBLE_BACK_SLASH:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.STRING:
- this.state = 1486;
- this.client_assembly_specifier();
- break;
- case TSqlParser.AS:
- this.state = 1487;
- this.alter_assembly_file_bits();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_assembly_from_clause_startContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_assembly_from_clause_start;
- return this;
-}
-
-Alter_assembly_from_clause_startContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_assembly_from_clause_startContext.prototype.constructor = Alter_assembly_from_clause_startContext;
-
-Alter_assembly_from_clause_startContext.prototype.FROM = function() {
- return this.getToken(TSqlParser.FROM, 0);
-};
-
-Alter_assembly_from_clause_startContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_assembly_from_clause_start(this);
- }
-};
-
-Alter_assembly_from_clause_startContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_assembly_from_clause_start(this);
- }
-};
-
-Alter_assembly_from_clause_startContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_assembly_from_clause_start(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_assembly_from_clause_startContext = Alter_assembly_from_clause_startContext;
-
-TSqlParser.prototype.alter_assembly_from_clause_start = function() {
-
- var localctx = new Alter_assembly_from_clause_startContext(this, this._ctx, this.state);
- this.enterRule(localctx, 66, TSqlParser.RULE_alter_assembly_from_clause_start);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1490;
- this.match(TSqlParser.FROM);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_assembly_drop_clauseContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_assembly_drop_clause;
- return this;
-}
-
-Alter_assembly_drop_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_assembly_drop_clauseContext.prototype.constructor = Alter_assembly_drop_clauseContext;
-
-Alter_assembly_drop_clauseContext.prototype.alter_assembly_drop = function() {
- return this.getTypedRuleContext(Alter_assembly_dropContext,0);
-};
-
-Alter_assembly_drop_clauseContext.prototype.alter_assembly_drop_multiple_files = function() {
- return this.getTypedRuleContext(Alter_assembly_drop_multiple_filesContext,0);
-};
-
-Alter_assembly_drop_clauseContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_assembly_drop_clause(this);
- }
-};
-
-Alter_assembly_drop_clauseContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_assembly_drop_clause(this);
- }
-};
-
-Alter_assembly_drop_clauseContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_assembly_drop_clause(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_assembly_drop_clauseContext = Alter_assembly_drop_clauseContext;
-
-TSqlParser.prototype.alter_assembly_drop_clause = function() {
-
- var localctx = new Alter_assembly_drop_clauseContext(this, this._ctx, this.state);
- this.enterRule(localctx, 68, TSqlParser.RULE_alter_assembly_drop_clause);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1492;
- this.alter_assembly_drop();
- this.state = 1493;
- this.alter_assembly_drop_multiple_files();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_assembly_drop_multiple_filesContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_assembly_drop_multiple_files;
- return this;
-}
-
-Alter_assembly_drop_multiple_filesContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_assembly_drop_multiple_filesContext.prototype.constructor = Alter_assembly_drop_multiple_filesContext;
-
-Alter_assembly_drop_multiple_filesContext.prototype.ALL = function() {
- return this.getToken(TSqlParser.ALL, 0);
-};
-
-Alter_assembly_drop_multiple_filesContext.prototype.multiple_local_files = function() {
- return this.getTypedRuleContext(Multiple_local_filesContext,0);
-};
-
-Alter_assembly_drop_multiple_filesContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_assembly_drop_multiple_files(this);
- }
-};
-
-Alter_assembly_drop_multiple_filesContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_assembly_drop_multiple_files(this);
- }
-};
-
-Alter_assembly_drop_multiple_filesContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_assembly_drop_multiple_files(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_assembly_drop_multiple_filesContext = Alter_assembly_drop_multiple_filesContext;
-
-TSqlParser.prototype.alter_assembly_drop_multiple_files = function() {
-
- var localctx = new Alter_assembly_drop_multiple_filesContext(this, this._ctx, this.state);
- this.enterRule(localctx, 70, TSqlParser.RULE_alter_assembly_drop_multiple_files);
- try {
- this.state = 1497;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.ALL:
- this.enterOuterAlt(localctx, 1);
- this.state = 1495;
- this.match(TSqlParser.ALL);
- break;
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.SINGLE_QUOTE:
- this.enterOuterAlt(localctx, 2);
- this.state = 1496;
- this.multiple_local_files();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_assembly_dropContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_assembly_drop;
- return this;
-}
-
-Alter_assembly_dropContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_assembly_dropContext.prototype.constructor = Alter_assembly_dropContext;
-
-Alter_assembly_dropContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Alter_assembly_dropContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_assembly_drop(this);
- }
-};
-
-Alter_assembly_dropContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_assembly_drop(this);
- }
-};
-
-Alter_assembly_dropContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_assembly_drop(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_assembly_dropContext = Alter_assembly_dropContext;
-
-TSqlParser.prototype.alter_assembly_drop = function() {
-
- var localctx = new Alter_assembly_dropContext(this, this._ctx, this.state);
- this.enterRule(localctx, 72, TSqlParser.RULE_alter_assembly_drop);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1499;
- this.match(TSqlParser.DROP);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_assembly_add_clauseContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_assembly_add_clause;
- return this;
-}
-
-Alter_assembly_add_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_assembly_add_clauseContext.prototype.constructor = Alter_assembly_add_clauseContext;
-
-Alter_assembly_add_clauseContext.prototype.alter_asssembly_add_clause_start = function() {
- return this.getTypedRuleContext(Alter_asssembly_add_clause_startContext,0);
-};
-
-Alter_assembly_add_clauseContext.prototype.alter_assembly_client_file_clause = function() {
- return this.getTypedRuleContext(Alter_assembly_client_file_clauseContext,0);
-};
-
-Alter_assembly_add_clauseContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_assembly_add_clause(this);
- }
-};
-
-Alter_assembly_add_clauseContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_assembly_add_clause(this);
- }
-};
-
-Alter_assembly_add_clauseContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_assembly_add_clause(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_assembly_add_clauseContext = Alter_assembly_add_clauseContext;
-
-TSqlParser.prototype.alter_assembly_add_clause = function() {
-
- var localctx = new Alter_assembly_add_clauseContext(this, this._ctx, this.state);
- this.enterRule(localctx, 74, TSqlParser.RULE_alter_assembly_add_clause);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1501;
- this.alter_asssembly_add_clause_start();
- this.state = 1502;
- this.alter_assembly_client_file_clause();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_asssembly_add_clause_startContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_asssembly_add_clause_start;
- return this;
-}
-
-Alter_asssembly_add_clause_startContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_asssembly_add_clause_startContext.prototype.constructor = Alter_asssembly_add_clause_startContext;
-
-Alter_asssembly_add_clause_startContext.prototype.ADD = function() {
- return this.getToken(TSqlParser.ADD, 0);
-};
-
-Alter_asssembly_add_clause_startContext.prototype.FILE = function() {
- return this.getToken(TSqlParser.FILE, 0);
-};
-
-Alter_asssembly_add_clause_startContext.prototype.FROM = function() {
- return this.getToken(TSqlParser.FROM, 0);
-};
-
-Alter_asssembly_add_clause_startContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_asssembly_add_clause_start(this);
- }
-};
-
-Alter_asssembly_add_clause_startContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_asssembly_add_clause_start(this);
- }
-};
-
-Alter_asssembly_add_clause_startContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_asssembly_add_clause_start(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_asssembly_add_clause_startContext = Alter_asssembly_add_clause_startContext;
-
-TSqlParser.prototype.alter_asssembly_add_clause_start = function() {
-
- var localctx = new Alter_asssembly_add_clause_startContext(this, this._ctx, this.state);
- this.enterRule(localctx, 76, TSqlParser.RULE_alter_asssembly_add_clause_start);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1504;
- this.match(TSqlParser.ADD);
- this.state = 1505;
- this.match(TSqlParser.FILE);
- this.state = 1506;
- this.match(TSqlParser.FROM);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_assembly_client_file_clauseContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_assembly_client_file_clause;
- return this;
-}
-
-Alter_assembly_client_file_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_assembly_client_file_clauseContext.prototype.constructor = Alter_assembly_client_file_clauseContext;
-
-Alter_assembly_client_file_clauseContext.prototype.alter_assembly_file_name = function() {
- return this.getTypedRuleContext(Alter_assembly_file_nameContext,0);
-};
-
-Alter_assembly_client_file_clauseContext.prototype.alter_assembly_as = function() {
- return this.getTypedRuleContext(Alter_assembly_asContext,0);
-};
-
-Alter_assembly_client_file_clauseContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Alter_assembly_client_file_clauseContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_assembly_client_file_clause(this);
- }
-};
-
-Alter_assembly_client_file_clauseContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_assembly_client_file_clause(this);
- }
-};
-
-Alter_assembly_client_file_clauseContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_assembly_client_file_clause(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_assembly_client_file_clauseContext = Alter_assembly_client_file_clauseContext;
-
-TSqlParser.prototype.alter_assembly_client_file_clause = function() {
-
- var localctx = new Alter_assembly_client_file_clauseContext(this, this._ctx, this.state);
- this.enterRule(localctx, 78, TSqlParser.RULE_alter_assembly_client_file_clause);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1508;
- this.alter_assembly_file_name();
- this.state = 1512;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.AS) {
- this.state = 1509;
- this.alter_assembly_as();
- this.state = 1510;
- this.id();
- }
-
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_assembly_file_nameContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_assembly_file_name;
- return this;
-}
-
-Alter_assembly_file_nameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_assembly_file_nameContext.prototype.constructor = Alter_assembly_file_nameContext;
-
-Alter_assembly_file_nameContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Alter_assembly_file_nameContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_assembly_file_name(this);
- }
-};
-
-Alter_assembly_file_nameContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_assembly_file_name(this);
- }
-};
-
-Alter_assembly_file_nameContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_assembly_file_name(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_assembly_file_nameContext = Alter_assembly_file_nameContext;
-
-TSqlParser.prototype.alter_assembly_file_name = function() {
-
- var localctx = new Alter_assembly_file_nameContext(this, this._ctx, this.state);
- this.enterRule(localctx, 80, TSqlParser.RULE_alter_assembly_file_name);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1514;
- this.match(TSqlParser.STRING);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_assembly_file_bitsContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_assembly_file_bits;
- return this;
-}
-
-Alter_assembly_file_bitsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_assembly_file_bitsContext.prototype.constructor = Alter_assembly_file_bitsContext;
-
-Alter_assembly_file_bitsContext.prototype.alter_assembly_as = function() {
- return this.getTypedRuleContext(Alter_assembly_asContext,0);
-};
-
-Alter_assembly_file_bitsContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Alter_assembly_file_bitsContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_assembly_file_bits(this);
- }
-};
-
-Alter_assembly_file_bitsContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_assembly_file_bits(this);
- }
-};
-
-Alter_assembly_file_bitsContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_assembly_file_bits(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_assembly_file_bitsContext = Alter_assembly_file_bitsContext;
-
-TSqlParser.prototype.alter_assembly_file_bits = function() {
-
- var localctx = new Alter_assembly_file_bitsContext(this, this._ctx, this.state);
- this.enterRule(localctx, 82, TSqlParser.RULE_alter_assembly_file_bits);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1516;
- this.alter_assembly_as();
- this.state = 1517;
- this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_assembly_asContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_assembly_as;
- return this;
-}
-
-Alter_assembly_asContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_assembly_asContext.prototype.constructor = Alter_assembly_asContext;
-
-Alter_assembly_asContext.prototype.AS = function() {
- return this.getToken(TSqlParser.AS, 0);
-};
-
-Alter_assembly_asContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_assembly_as(this);
- }
-};
-
-Alter_assembly_asContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_assembly_as(this);
- }
-};
-
-Alter_assembly_asContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_assembly_as(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_assembly_asContext = Alter_assembly_asContext;
-
-TSqlParser.prototype.alter_assembly_as = function() {
-
- var localctx = new Alter_assembly_asContext(this, this._ctx, this.state);
- this.enterRule(localctx, 84, TSqlParser.RULE_alter_assembly_as);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1519;
- this.match(TSqlParser.AS);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_assembly_with_clauseContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_assembly_with_clause;
- return this;
-}
-
-Alter_assembly_with_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_assembly_with_clauseContext.prototype.constructor = Alter_assembly_with_clauseContext;
-
-Alter_assembly_with_clauseContext.prototype.alter_assembly_with = function() {
- return this.getTypedRuleContext(Alter_assembly_withContext,0);
-};
-
-Alter_assembly_with_clauseContext.prototype.assembly_option = function() {
- return this.getTypedRuleContext(Assembly_optionContext,0);
-};
-
-Alter_assembly_with_clauseContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_assembly_with_clause(this);
- }
-};
-
-Alter_assembly_with_clauseContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_assembly_with_clause(this);
- }
-};
-
-Alter_assembly_with_clauseContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_assembly_with_clause(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_assembly_with_clauseContext = Alter_assembly_with_clauseContext;
-
-TSqlParser.prototype.alter_assembly_with_clause = function() {
-
- var localctx = new Alter_assembly_with_clauseContext(this, this._ctx, this.state);
- this.enterRule(localctx, 86, TSqlParser.RULE_alter_assembly_with_clause);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1521;
- this.alter_assembly_with();
- this.state = 1522;
- this.assembly_option(0);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_assembly_withContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_assembly_with;
- return this;
-}
-
-Alter_assembly_withContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_assembly_withContext.prototype.constructor = Alter_assembly_withContext;
-
-Alter_assembly_withContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Alter_assembly_withContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_assembly_with(this);
- }
-};
-
-Alter_assembly_withContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_assembly_with(this);
- }
-};
-
-Alter_assembly_withContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_assembly_with(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_assembly_withContext = Alter_assembly_withContext;
-
-TSqlParser.prototype.alter_assembly_with = function() {
-
- var localctx = new Alter_assembly_withContext(this, this._ctx, this.state);
- this.enterRule(localctx, 88, TSqlParser.RULE_alter_assembly_with);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1524;
- this.match(TSqlParser.WITH);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Client_assembly_specifierContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_client_assembly_specifier;
- return this;
-}
-
-Client_assembly_specifierContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Client_assembly_specifierContext.prototype.constructor = Client_assembly_specifierContext;
-
-Client_assembly_specifierContext.prototype.network_file_share = function() {
- return this.getTypedRuleContext(Network_file_shareContext,0);
-};
-
-Client_assembly_specifierContext.prototype.local_file = function() {
- return this.getTypedRuleContext(Local_fileContext,0);
-};
-
-Client_assembly_specifierContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Client_assembly_specifierContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterClient_assembly_specifier(this);
- }
-};
-
-Client_assembly_specifierContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitClient_assembly_specifier(this);
- }
-};
-
-Client_assembly_specifierContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitClient_assembly_specifier(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Client_assembly_specifierContext = Client_assembly_specifierContext;
-
-TSqlParser.prototype.client_assembly_specifier = function() {
-
- var localctx = new Client_assembly_specifierContext(this, this._ctx, this.state);
- this.enterRule(localctx, 90, TSqlParser.RULE_client_assembly_specifier);
- try {
- this.state = 1529;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.DOUBLE_BACK_SLASH:
- this.enterOuterAlt(localctx, 1);
- this.state = 1526;
- this.network_file_share();
- break;
- case TSqlParser.DISK_DRIVE:
- this.enterOuterAlt(localctx, 2);
- this.state = 1527;
- this.local_file();
- break;
- case TSqlParser.STRING:
- this.enterOuterAlt(localctx, 3);
- this.state = 1528;
- this.match(TSqlParser.STRING);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Assembly_optionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_assembly_option;
- return this;
-}
-
-Assembly_optionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Assembly_optionContext.prototype.constructor = Assembly_optionContext;
-
-Assembly_optionContext.prototype.PERMISSION_SET = function() {
- return this.getToken(TSqlParser.PERMISSION_SET, 0);
-};
-
-Assembly_optionContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Assembly_optionContext.prototype.SAFE = function() {
- return this.getToken(TSqlParser.SAFE, 0);
-};
-
-Assembly_optionContext.prototype.EXTERNAL_ACCESS = function() {
- return this.getToken(TSqlParser.EXTERNAL_ACCESS, 0);
-};
-
-Assembly_optionContext.prototype.UNSAFE = function() {
- return this.getToken(TSqlParser.UNSAFE, 0);
-};
-
-Assembly_optionContext.prototype.VISIBILITY = function() {
- return this.getToken(TSqlParser.VISIBILITY, 0);
-};
-
-Assembly_optionContext.prototype.ON = function() {
- return this.getToken(TSqlParser.ON, 0);
-};
-
-Assembly_optionContext.prototype.OFF = function() {
- return this.getToken(TSqlParser.OFF, 0);
-};
-
-Assembly_optionContext.prototype.UNCHECKED = function() {
- return this.getToken(TSqlParser.UNCHECKED, 0);
-};
-
-Assembly_optionContext.prototype.DATA = function() {
- return this.getToken(TSqlParser.DATA, 0);
-};
-
-Assembly_optionContext.prototype.assembly_option = function() {
- return this.getTypedRuleContext(Assembly_optionContext,0);
-};
-
-Assembly_optionContext.prototype.COMMA = function() {
- return this.getToken(TSqlParser.COMMA, 0);
-};
-
-Assembly_optionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAssembly_option(this);
- }
-};
-
-Assembly_optionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAssembly_option(this);
- }
-};
-
-Assembly_optionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAssembly_option(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-TSqlParser.prototype.assembly_option = function(_p) {
- if(_p===undefined) {
- _p = 0;
- }
- var _parentctx = this._ctx;
- var _parentState = this.state;
- var localctx = new Assembly_optionContext(this, this._ctx, _parentState);
- var _prevctx = localctx;
- var _startState = 92;
- this.enterRecursionRule(localctx, 92, TSqlParser.RULE_assembly_option, _p);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1540;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.PERMISSION_SET:
- this.state = 1532;
- this.match(TSqlParser.PERMISSION_SET);
- this.state = 1533;
- this.match(TSqlParser.EQUAL);
- this.state = 1534;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.EXTERNAL_ACCESS || _la===TSqlParser.SAFE || _la===TSqlParser.UNSAFE)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- case TSqlParser.VISIBILITY:
- this.state = 1535;
- this.match(TSqlParser.VISIBILITY);
- this.state = 1536;
- this.match(TSqlParser.EQUAL);
- this.state = 1537;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- case TSqlParser.UNCHECKED:
- this.state = 1538;
- this.match(TSqlParser.UNCHECKED);
- this.state = 1539;
- this.match(TSqlParser.DATA);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this._ctx.stop = this._input.LT(-1);
- this.state = 1546;
- this._errHandler.sync(this);
- var _alt = this._interp.adaptivePredict(this._input,70,this._ctx)
- while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
- if(_alt===1) {
- if(this._parseListeners!==null) {
- this.triggerExitRuleEvent();
- }
- _prevctx = localctx;
- localctx = new Assembly_optionContext(this, _parentctx, _parentState);
- this.pushNewRecursionContext(localctx, _startState, TSqlParser.RULE_assembly_option);
- this.state = 1542;
- if (!( this.precpred(this._ctx, 1))) {
- throw new antlr4.error.FailedPredicateException(this, "this.precpred(this._ctx, 1)");
- }
- this.state = 1543;
- this.match(TSqlParser.COMMA);
- }
- this.state = 1548;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,70,this._ctx);
- }
-
- } catch( error) {
- if(error instanceof antlr4.error.RecognitionException) {
- localctx.exception = error;
- this._errHandler.reportError(this, error);
- this._errHandler.recover(this, error);
- } else {
- throw error;
- }
- } finally {
- this.unrollRecursionContexts(_parentctx)
- }
- return localctx;
-};
-
-
-function Network_file_shareContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_network_file_share;
- return this;
-}
-
-Network_file_shareContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Network_file_shareContext.prototype.constructor = Network_file_shareContext;
-
-Network_file_shareContext.prototype.network_file_start = function() {
- return this.getTypedRuleContext(Network_file_startContext,0);
-};
-
-Network_file_shareContext.prototype.network_computer = function() {
- return this.getTypedRuleContext(Network_computerContext,0);
-};
-
-Network_file_shareContext.prototype.file_path = function() {
- return this.getTypedRuleContext(File_pathContext,0);
-};
-
-Network_file_shareContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterNetwork_file_share(this);
- }
-};
-
-Network_file_shareContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitNetwork_file_share(this);
- }
-};
-
-Network_file_shareContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitNetwork_file_share(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Network_file_shareContext = Network_file_shareContext;
-
-TSqlParser.prototype.network_file_share = function() {
-
- var localctx = new Network_file_shareContext(this, this._ctx, this.state);
- this.enterRule(localctx, 94, TSqlParser.RULE_network_file_share);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1549;
- this.network_file_start();
- this.state = 1550;
- this.network_computer();
- this.state = 1551;
- this.file_path();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Network_computerContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_network_computer;
- this.computer_name = null; // IdContext
- return this;
-}
-
-Network_computerContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Network_computerContext.prototype.constructor = Network_computerContext;
-
-Network_computerContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Network_computerContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterNetwork_computer(this);
- }
-};
-
-Network_computerContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitNetwork_computer(this);
- }
-};
-
-Network_computerContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitNetwork_computer(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Network_computerContext = Network_computerContext;
-
-TSqlParser.prototype.network_computer = function() {
-
- var localctx = new Network_computerContext(this, this._ctx, this.state);
- this.enterRule(localctx, 96, TSqlParser.RULE_network_computer);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1553;
- localctx.computer_name = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Network_file_startContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_network_file_start;
- return this;
-}
-
-Network_file_startContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Network_file_startContext.prototype.constructor = Network_file_startContext;
-
-Network_file_startContext.prototype.DOUBLE_BACK_SLASH = function() {
- return this.getToken(TSqlParser.DOUBLE_BACK_SLASH, 0);
-};
-
-Network_file_startContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterNetwork_file_start(this);
- }
-};
-
-Network_file_startContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitNetwork_file_start(this);
- }
-};
-
-Network_file_startContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitNetwork_file_start(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Network_file_startContext = Network_file_startContext;
-
-TSqlParser.prototype.network_file_start = function() {
-
- var localctx = new Network_file_startContext(this, this._ctx, this.state);
- this.enterRule(localctx, 98, TSqlParser.RULE_network_file_start);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1555;
- this.match(TSqlParser.DOUBLE_BACK_SLASH);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function File_pathContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_file_path;
- return this;
-}
-
-File_pathContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-File_pathContext.prototype.constructor = File_pathContext;
-
-File_pathContext.prototype.file_directory_path_separator = function() {
- return this.getTypedRuleContext(File_directory_path_separatorContext,0);
-};
-
-File_pathContext.prototype.file_path = function() {
- return this.getTypedRuleContext(File_pathContext,0);
-};
-
-File_pathContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-File_pathContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterFile_path(this);
- }
-};
-
-File_pathContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitFile_path(this);
- }
-};
-
-File_pathContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitFile_path(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.File_pathContext = File_pathContext;
-
-TSqlParser.prototype.file_path = function() {
-
- var localctx = new File_pathContext(this, this._ctx, this.state);
- this.enterRule(localctx, 100, TSqlParser.RULE_file_path);
- try {
- this.state = 1561;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.BACKSLASH:
- this.enterOuterAlt(localctx, 1);
- this.state = 1557;
- this.file_directory_path_separator();
- this.state = 1558;
- this.file_path();
- break;
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.enterOuterAlt(localctx, 2);
- this.state = 1560;
- this.id();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function File_directory_path_separatorContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_file_directory_path_separator;
- return this;
-}
-
-File_directory_path_separatorContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-File_directory_path_separatorContext.prototype.constructor = File_directory_path_separatorContext;
-
-File_directory_path_separatorContext.prototype.BACKSLASH = function() {
- return this.getToken(TSqlParser.BACKSLASH, 0);
-};
-
-File_directory_path_separatorContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterFile_directory_path_separator(this);
- }
-};
-
-File_directory_path_separatorContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitFile_directory_path_separator(this);
- }
-};
-
-File_directory_path_separatorContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitFile_directory_path_separator(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.File_directory_path_separatorContext = File_directory_path_separatorContext;
-
-TSqlParser.prototype.file_directory_path_separator = function() {
-
- var localctx = new File_directory_path_separatorContext(this, this._ctx, this.state);
- this.enterRule(localctx, 102, TSqlParser.RULE_file_directory_path_separator);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1563;
- this.match(TSqlParser.BACKSLASH);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Local_fileContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_local_file;
- return this;
-}
-
-Local_fileContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Local_fileContext.prototype.constructor = Local_fileContext;
-
-Local_fileContext.prototype.local_drive = function() {
- return this.getTypedRuleContext(Local_driveContext,0);
-};
-
-Local_fileContext.prototype.file_path = function() {
- return this.getTypedRuleContext(File_pathContext,0);
-};
-
-Local_fileContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterLocal_file(this);
- }
-};
-
-Local_fileContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitLocal_file(this);
- }
-};
-
-Local_fileContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitLocal_file(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Local_fileContext = Local_fileContext;
-
-TSqlParser.prototype.local_file = function() {
-
- var localctx = new Local_fileContext(this, this._ctx, this.state);
- this.enterRule(localctx, 104, TSqlParser.RULE_local_file);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1565;
- this.local_drive();
- this.state = 1566;
- this.file_path();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Local_driveContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_local_drive;
- return this;
-}
-
-Local_driveContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Local_driveContext.prototype.constructor = Local_driveContext;
-
-Local_driveContext.prototype.DISK_DRIVE = function() {
- return this.getToken(TSqlParser.DISK_DRIVE, 0);
-};
-
-Local_driveContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterLocal_drive(this);
- }
-};
-
-Local_driveContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitLocal_drive(this);
- }
-};
-
-Local_driveContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitLocal_drive(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Local_driveContext = Local_driveContext;
-
-TSqlParser.prototype.local_drive = function() {
-
- var localctx = new Local_driveContext(this, this._ctx, this.state);
- this.enterRule(localctx, 106, TSqlParser.RULE_local_drive);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1568;
- this.match(TSqlParser.DISK_DRIVE);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Multiple_local_filesContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_multiple_local_files;
- return this;
-}
-
-Multiple_local_filesContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Multiple_local_filesContext.prototype.constructor = Multiple_local_filesContext;
-
-Multiple_local_filesContext.prototype.multiple_local_file_start = function() {
- return this.getTypedRuleContext(Multiple_local_file_startContext,0);
-};
-
-Multiple_local_filesContext.prototype.local_file = function() {
- return this.getTypedRuleContext(Local_fileContext,0);
-};
-
-Multiple_local_filesContext.prototype.SINGLE_QUOTE = function() {
- return this.getToken(TSqlParser.SINGLE_QUOTE, 0);
-};
-
-Multiple_local_filesContext.prototype.COMMA = function() {
- return this.getToken(TSqlParser.COMMA, 0);
-};
-
-Multiple_local_filesContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterMultiple_local_files(this);
- }
-};
-
-Multiple_local_filesContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitMultiple_local_files(this);
- }
-};
-
-Multiple_local_filesContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitMultiple_local_files(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Multiple_local_filesContext = Multiple_local_filesContext;
-
-TSqlParser.prototype.multiple_local_files = function() {
-
- var localctx = new Multiple_local_filesContext(this, this._ctx, this.state);
- this.enterRule(localctx, 108, TSqlParser.RULE_multiple_local_files);
- try {
- this.state = 1576;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.SINGLE_QUOTE:
- this.enterOuterAlt(localctx, 1);
- this.state = 1570;
- this.multiple_local_file_start();
- this.state = 1571;
- this.local_file();
- this.state = 1572;
- this.match(TSqlParser.SINGLE_QUOTE);
- this.state = 1573;
- this.match(TSqlParser.COMMA);
- break;
- case TSqlParser.DISK_DRIVE:
- this.enterOuterAlt(localctx, 2);
- this.state = 1575;
- this.local_file();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Multiple_local_file_startContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_multiple_local_file_start;
- return this;
-}
-
-Multiple_local_file_startContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Multiple_local_file_startContext.prototype.constructor = Multiple_local_file_startContext;
-
-Multiple_local_file_startContext.prototype.SINGLE_QUOTE = function() {
- return this.getToken(TSqlParser.SINGLE_QUOTE, 0);
-};
-
-Multiple_local_file_startContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterMultiple_local_file_start(this);
- }
-};
-
-Multiple_local_file_startContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitMultiple_local_file_start(this);
- }
-};
-
-Multiple_local_file_startContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitMultiple_local_file_start(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Multiple_local_file_startContext = Multiple_local_file_startContext;
-
-TSqlParser.prototype.multiple_local_file_start = function() {
-
- var localctx = new Multiple_local_file_startContext(this, this._ctx, this.state);
- this.enterRule(localctx, 110, TSqlParser.RULE_multiple_local_file_start);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1578;
- this.match(TSqlParser.SINGLE_QUOTE);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_assemblyContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_assembly;
- this.assembly_name = null; // IdContext
- this.owner_name = null; // IdContext
- return this;
-}
-
-Create_assemblyContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_assemblyContext.prototype.constructor = Create_assemblyContext;
-
-Create_assemblyContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_assemblyContext.prototype.ASSEMBLY = function() {
- return this.getToken(TSqlParser.ASSEMBLY, 0);
-};
-
-Create_assemblyContext.prototype.FROM = function() {
- return this.getToken(TSqlParser.FROM, 0);
-};
-
-Create_assemblyContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Create_assemblyContext.prototype.AUTHORIZATION = function() {
- return this.getToken(TSqlParser.AUTHORIZATION, 0);
-};
-
-Create_assemblyContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Create_assemblyContext.prototype.PERMISSION_SET = function() {
- return this.getToken(TSqlParser.PERMISSION_SET, 0);
-};
-
-Create_assemblyContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Create_assemblyContext.prototype.STRING = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.STRING);
- } else {
- return this.getToken(TSqlParser.STRING, i);
- }
-};
-
-
-Create_assemblyContext.prototype.BINARY = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.BINARY);
- } else {
- return this.getToken(TSqlParser.BINARY, i);
- }
-};
-
-
-Create_assemblyContext.prototype.SAFE = function() {
- return this.getToken(TSqlParser.SAFE, 0);
-};
-
-Create_assemblyContext.prototype.EXTERNAL_ACCESS = function() {
- return this.getToken(TSqlParser.EXTERNAL_ACCESS, 0);
-};
-
-Create_assemblyContext.prototype.UNSAFE = function() {
- return this.getToken(TSqlParser.UNSAFE, 0);
-};
-
-Create_assemblyContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Create_assemblyContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_assembly(this);
- }
-};
-
-Create_assemblyContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_assembly(this);
- }
-};
-
-Create_assemblyContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_assembly(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_assemblyContext = Create_assemblyContext;
-
-TSqlParser.prototype.create_assembly = function() {
-
- var localctx = new Create_assemblyContext(this, this._ctx, this.state);
- this.enterRule(localctx, 112, TSqlParser.RULE_create_assembly);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1580;
- this.match(TSqlParser.CREATE);
- this.state = 1581;
- this.match(TSqlParser.ASSEMBLY);
- this.state = 1582;
- localctx.assembly_name = this.id();
- this.state = 1585;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.AUTHORIZATION) {
- this.state = 1583;
- this.match(TSqlParser.AUTHORIZATION);
- this.state = 1584;
- localctx.owner_name = this.id();
- }
-
- this.state = 1587;
- this.match(TSqlParser.FROM);
- this.state = 1592;
- this._errHandler.sync(this);
- var _alt = 1;
- do {
- switch (_alt) {
- case 1:
- this.state = 1589;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 1588;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 1591;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.STRING || _la===TSqlParser.BINARY)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 1594;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,75, this._ctx);
- } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
- this.state = 1600;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,76,this._ctx);
- if(la_===1) {
- this.state = 1596;
- this.match(TSqlParser.WITH);
- this.state = 1597;
- this.match(TSqlParser.PERMISSION_SET);
- this.state = 1598;
- this.match(TSqlParser.EQUAL);
- this.state = 1599;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.EXTERNAL_ACCESS || _la===TSqlParser.SAFE || _la===TSqlParser.UNSAFE)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_assemblyContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_assembly;
- this.assembly_name = null; // IdContext
- return this;
-}
-
-Drop_assemblyContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_assemblyContext.prototype.constructor = Drop_assemblyContext;
-
-Drop_assemblyContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_assemblyContext.prototype.ASSEMBLY = function() {
- return this.getToken(TSqlParser.ASSEMBLY, 0);
-};
-
-Drop_assemblyContext.prototype.IF = function() {
- return this.getToken(TSqlParser.IF, 0);
-};
-
-Drop_assemblyContext.prototype.EXISTS = function() {
- return this.getToken(TSqlParser.EXISTS, 0);
-};
-
-Drop_assemblyContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Drop_assemblyContext.prototype.NO = function() {
- return this.getToken(TSqlParser.NO, 0);
-};
-
-Drop_assemblyContext.prototype.DEPENDENTS = function() {
- return this.getToken(TSqlParser.DEPENDENTS, 0);
-};
-
-Drop_assemblyContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Drop_assemblyContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Drop_assemblyContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_assembly(this);
- }
-};
-
-Drop_assemblyContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_assembly(this);
- }
-};
-
-Drop_assemblyContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_assembly(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_assemblyContext = Drop_assemblyContext;
-
-TSqlParser.prototype.drop_assembly = function() {
-
- var localctx = new Drop_assemblyContext(this, this._ctx, this.state);
- this.enterRule(localctx, 114, TSqlParser.RULE_drop_assembly);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1602;
- this.match(TSqlParser.DROP);
- this.state = 1603;
- this.match(TSqlParser.ASSEMBLY);
- this.state = 1606;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.IF) {
- this.state = 1604;
- this.match(TSqlParser.IF);
- this.state = 1605;
- this.match(TSqlParser.EXISTS);
- }
-
- this.state = 1612;
- this._errHandler.sync(this);
- var _alt = 1;
- do {
- switch (_alt) {
- case 1:
- this.state = 1609;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 1608;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 1611;
- localctx.assembly_name = this.id();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 1614;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,79, this._ctx);
- } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
- this.state = 1619;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,80,this._ctx);
- if(la_===1) {
- this.state = 1616;
- this.match(TSqlParser.WITH);
- this.state = 1617;
- this.match(TSqlParser.NO);
- this.state = 1618;
- this.match(TSqlParser.DEPENDENTS);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_asymmetric_keyContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_asymmetric_key;
- this.Asym_Key_Name = null; // IdContext
- return this;
-}
-
-Alter_asymmetric_keyContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_asymmetric_keyContext.prototype.constructor = Alter_asymmetric_keyContext;
-
-Alter_asymmetric_keyContext.prototype.alter_asymmetric_key_start = function() {
- return this.getTypedRuleContext(Alter_asymmetric_key_startContext,0);
-};
-
-Alter_asymmetric_keyContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Alter_asymmetric_keyContext.prototype.asymmetric_key_option = function() {
- return this.getTypedRuleContext(Asymmetric_key_optionContext,0);
-};
-
-Alter_asymmetric_keyContext.prototype.REMOVE = function() {
- return this.getToken(TSqlParser.REMOVE, 0);
-};
-
-Alter_asymmetric_keyContext.prototype.PRIVATE = function() {
- return this.getToken(TSqlParser.PRIVATE, 0);
-};
-
-Alter_asymmetric_keyContext.prototype.KEY = function() {
- return this.getToken(TSqlParser.KEY, 0);
-};
-
-Alter_asymmetric_keyContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_asymmetric_key(this);
- }
-};
-
-Alter_asymmetric_keyContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_asymmetric_key(this);
- }
-};
-
-Alter_asymmetric_keyContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_asymmetric_key(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_asymmetric_keyContext = Alter_asymmetric_keyContext;
-
-TSqlParser.prototype.alter_asymmetric_key = function() {
-
- var localctx = new Alter_asymmetric_keyContext(this, this._ctx, this.state);
- this.enterRule(localctx, 116, TSqlParser.RULE_alter_asymmetric_key);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1621;
- this.alter_asymmetric_key_start();
- this.state = 1622;
- localctx.Asym_Key_Name = this.id();
- this.state = 1627;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.WITH:
- this.state = 1623;
- this.asymmetric_key_option();
- break;
- case TSqlParser.REMOVE:
- this.state = 1624;
- this.match(TSqlParser.REMOVE);
- this.state = 1625;
- this.match(TSqlParser.PRIVATE);
- this.state = 1626;
- this.match(TSqlParser.KEY);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_asymmetric_key_startContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_asymmetric_key_start;
- return this;
-}
-
-Alter_asymmetric_key_startContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_asymmetric_key_startContext.prototype.constructor = Alter_asymmetric_key_startContext;
-
-Alter_asymmetric_key_startContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Alter_asymmetric_key_startContext.prototype.ASYMMETRIC = function() {
- return this.getToken(TSqlParser.ASYMMETRIC, 0);
-};
-
-Alter_asymmetric_key_startContext.prototype.KEY = function() {
- return this.getToken(TSqlParser.KEY, 0);
-};
-
-Alter_asymmetric_key_startContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_asymmetric_key_start(this);
- }
-};
-
-Alter_asymmetric_key_startContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_asymmetric_key_start(this);
- }
-};
-
-Alter_asymmetric_key_startContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_asymmetric_key_start(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_asymmetric_key_startContext = Alter_asymmetric_key_startContext;
-
-TSqlParser.prototype.alter_asymmetric_key_start = function() {
-
- var localctx = new Alter_asymmetric_key_startContext(this, this._ctx, this.state);
- this.enterRule(localctx, 118, TSqlParser.RULE_alter_asymmetric_key_start);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1629;
- this.match(TSqlParser.ALTER);
- this.state = 1630;
- this.match(TSqlParser.ASYMMETRIC);
- this.state = 1631;
- this.match(TSqlParser.KEY);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Asymmetric_key_optionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_asymmetric_key_option;
- return this;
-}
-
-Asymmetric_key_optionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Asymmetric_key_optionContext.prototype.constructor = Asymmetric_key_optionContext;
-
-Asymmetric_key_optionContext.prototype.asymmetric_key_option_start = function() {
- return this.getTypedRuleContext(Asymmetric_key_option_startContext,0);
-};
-
-Asymmetric_key_optionContext.prototype.asymmetric_key_password_change_option = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Asymmetric_key_password_change_optionContext);
- } else {
- return this.getTypedRuleContext(Asymmetric_key_password_change_optionContext,i);
- }
-};
-
-Asymmetric_key_optionContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Asymmetric_key_optionContext.prototype.COMMA = function() {
- return this.getToken(TSqlParser.COMMA, 0);
-};
-
-Asymmetric_key_optionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAsymmetric_key_option(this);
- }
-};
-
-Asymmetric_key_optionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAsymmetric_key_option(this);
- }
-};
-
-Asymmetric_key_optionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAsymmetric_key_option(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Asymmetric_key_optionContext = Asymmetric_key_optionContext;
-
-TSqlParser.prototype.asymmetric_key_option = function() {
-
- var localctx = new Asymmetric_key_optionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 120, TSqlParser.RULE_asymmetric_key_option);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1633;
- this.asymmetric_key_option_start();
- this.state = 1634;
- this.asymmetric_key_password_change_option();
- this.state = 1637;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 1635;
- this.match(TSqlParser.COMMA);
- this.state = 1636;
- this.asymmetric_key_password_change_option();
- }
-
- this.state = 1639;
- this.match(TSqlParser.RR_BRACKET);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Asymmetric_key_option_startContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_asymmetric_key_option_start;
- return this;
-}
-
-Asymmetric_key_option_startContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Asymmetric_key_option_startContext.prototype.constructor = Asymmetric_key_option_startContext;
-
-Asymmetric_key_option_startContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Asymmetric_key_option_startContext.prototype.PRIVATE = function() {
- return this.getToken(TSqlParser.PRIVATE, 0);
-};
-
-Asymmetric_key_option_startContext.prototype.KEY = function() {
- return this.getToken(TSqlParser.KEY, 0);
-};
-
-Asymmetric_key_option_startContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Asymmetric_key_option_startContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAsymmetric_key_option_start(this);
- }
-};
-
-Asymmetric_key_option_startContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAsymmetric_key_option_start(this);
- }
-};
-
-Asymmetric_key_option_startContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAsymmetric_key_option_start(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Asymmetric_key_option_startContext = Asymmetric_key_option_startContext;
-
-TSqlParser.prototype.asymmetric_key_option_start = function() {
-
- var localctx = new Asymmetric_key_option_startContext(this, this._ctx, this.state);
- this.enterRule(localctx, 122, TSqlParser.RULE_asymmetric_key_option_start);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1641;
- this.match(TSqlParser.WITH);
- this.state = 1642;
- this.match(TSqlParser.PRIVATE);
- this.state = 1643;
- this.match(TSqlParser.KEY);
- this.state = 1644;
- this.match(TSqlParser.LR_BRACKET);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Asymmetric_key_password_change_optionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_asymmetric_key_password_change_option;
- return this;
-}
-
-Asymmetric_key_password_change_optionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Asymmetric_key_password_change_optionContext.prototype.constructor = Asymmetric_key_password_change_optionContext;
-
-Asymmetric_key_password_change_optionContext.prototype.DECRYPTION = function() {
- return this.getToken(TSqlParser.DECRYPTION, 0);
-};
-
-Asymmetric_key_password_change_optionContext.prototype.BY = function() {
- return this.getToken(TSqlParser.BY, 0);
-};
-
-Asymmetric_key_password_change_optionContext.prototype.PASSWORD = function() {
- return this.getToken(TSqlParser.PASSWORD, 0);
-};
-
-Asymmetric_key_password_change_optionContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Asymmetric_key_password_change_optionContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Asymmetric_key_password_change_optionContext.prototype.ENCRYPTION = function() {
- return this.getToken(TSqlParser.ENCRYPTION, 0);
-};
-
-Asymmetric_key_password_change_optionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAsymmetric_key_password_change_option(this);
- }
-};
-
-Asymmetric_key_password_change_optionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAsymmetric_key_password_change_option(this);
- }
-};
-
-Asymmetric_key_password_change_optionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAsymmetric_key_password_change_option(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Asymmetric_key_password_change_optionContext = Asymmetric_key_password_change_optionContext;
-
-TSqlParser.prototype.asymmetric_key_password_change_option = function() {
-
- var localctx = new Asymmetric_key_password_change_optionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 124, TSqlParser.RULE_asymmetric_key_password_change_option);
- try {
- this.state = 1656;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.DECRYPTION:
- this.enterOuterAlt(localctx, 1);
- this.state = 1646;
- this.match(TSqlParser.DECRYPTION);
- this.state = 1647;
- this.match(TSqlParser.BY);
- this.state = 1648;
- this.match(TSqlParser.PASSWORD);
- this.state = 1649;
- this.match(TSqlParser.EQUAL);
- this.state = 1650;
- this.match(TSqlParser.STRING);
- break;
- case TSqlParser.ENCRYPTION:
- this.enterOuterAlt(localctx, 2);
- this.state = 1651;
- this.match(TSqlParser.ENCRYPTION);
- this.state = 1652;
- this.match(TSqlParser.BY);
- this.state = 1653;
- this.match(TSqlParser.PASSWORD);
- this.state = 1654;
- this.match(TSqlParser.EQUAL);
- this.state = 1655;
- this.match(TSqlParser.STRING);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_asymmetric_keyContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_asymmetric_key;
- this.Asym_Key_Nam = null; // IdContext
- this.database_principal_name = null; // IdContext
- this.Assembly_Name = null; // IdContext
- this.Provider_Name = null; // IdContext
- this.provider_key_name = null; // Token
- this.asymmetric_key_password = null; // Token
- return this;
-}
-
-Create_asymmetric_keyContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_asymmetric_keyContext.prototype.constructor = Create_asymmetric_keyContext;
-
-Create_asymmetric_keyContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_asymmetric_keyContext.prototype.ASYMMETRIC = function() {
- return this.getToken(TSqlParser.ASYMMETRIC, 0);
-};
-
-Create_asymmetric_keyContext.prototype.KEY = function() {
- return this.getToken(TSqlParser.KEY, 0);
-};
-
-Create_asymmetric_keyContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Create_asymmetric_keyContext.prototype.AUTHORIZATION = function() {
- return this.getToken(TSqlParser.AUTHORIZATION, 0);
-};
-
-Create_asymmetric_keyContext.prototype.FROM = function() {
- return this.getToken(TSqlParser.FROM, 0);
-};
-
-Create_asymmetric_keyContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Create_asymmetric_keyContext.prototype.ENCRYPTION = function() {
- return this.getToken(TSqlParser.ENCRYPTION, 0);
-};
-
-Create_asymmetric_keyContext.prototype.BY = function() {
- return this.getToken(TSqlParser.BY, 0);
-};
-
-Create_asymmetric_keyContext.prototype.PASSWORD = function() {
- return this.getToken(TSqlParser.PASSWORD, 0);
-};
-
-Create_asymmetric_keyContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-Create_asymmetric_keyContext.prototype.STRING = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.STRING);
- } else {
- return this.getToken(TSqlParser.STRING, i);
- }
-};
-
-
-Create_asymmetric_keyContext.prototype.FILE = function() {
- return this.getToken(TSqlParser.FILE, 0);
-};
-
-Create_asymmetric_keyContext.prototype.EXECUTABLE_FILE = function() {
- return this.getToken(TSqlParser.EXECUTABLE_FILE, 0);
-};
-
-Create_asymmetric_keyContext.prototype.ASSEMBLY = function() {
- return this.getToken(TSqlParser.ASSEMBLY, 0);
-};
-
-Create_asymmetric_keyContext.prototype.PROVIDER = function() {
- return this.getToken(TSqlParser.PROVIDER, 0);
-};
-
-Create_asymmetric_keyContext.prototype.ALGORITHM = function() {
- return this.getToken(TSqlParser.ALGORITHM, 0);
-};
-
-Create_asymmetric_keyContext.prototype.PROVIDER_KEY_NAME = function() {
- return this.getToken(TSqlParser.PROVIDER_KEY_NAME, 0);
-};
-
-Create_asymmetric_keyContext.prototype.CREATION_DISPOSITION = function() {
- return this.getToken(TSqlParser.CREATION_DISPOSITION, 0);
-};
-
-Create_asymmetric_keyContext.prototype.RSA_4096 = function() {
- return this.getToken(TSqlParser.RSA_4096, 0);
-};
-
-Create_asymmetric_keyContext.prototype.RSA_3072 = function() {
- return this.getToken(TSqlParser.RSA_3072, 0);
-};
-
-Create_asymmetric_keyContext.prototype.RSA_2048 = function() {
- return this.getToken(TSqlParser.RSA_2048, 0);
-};
-
-Create_asymmetric_keyContext.prototype.RSA_1024 = function() {
- return this.getToken(TSqlParser.RSA_1024, 0);
-};
-
-Create_asymmetric_keyContext.prototype.RSA_512 = function() {
- return this.getToken(TSqlParser.RSA_512, 0);
-};
-
-Create_asymmetric_keyContext.prototype.CREATE_NEW = function() {
- return this.getToken(TSqlParser.CREATE_NEW, 0);
-};
-
-Create_asymmetric_keyContext.prototype.OPEN_EXISTING = function() {
- return this.getToken(TSqlParser.OPEN_EXISTING, 0);
-};
-
-Create_asymmetric_keyContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_asymmetric_key(this);
- }
-};
-
-Create_asymmetric_keyContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_asymmetric_key(this);
- }
-};
-
-Create_asymmetric_keyContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_asymmetric_key(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_asymmetric_keyContext = Create_asymmetric_keyContext;
-
-TSqlParser.prototype.create_asymmetric_key = function() {
-
- var localctx = new Create_asymmetric_keyContext(this, this._ctx, this.state);
- this.enterRule(localctx, 126, TSqlParser.RULE_create_asymmetric_key);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1658;
- this.match(TSqlParser.CREATE);
- this.state = 1659;
- this.match(TSqlParser.ASYMMETRIC);
- this.state = 1660;
- this.match(TSqlParser.KEY);
- this.state = 1661;
- localctx.Asym_Key_Nam = this.id();
- this.state = 1664;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.AUTHORIZATION) {
- this.state = 1662;
- this.match(TSqlParser.AUTHORIZATION);
- this.state = 1663;
- localctx.database_principal_name = this.id();
- }
-
- this.state = 1679;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.FROM) {
- this.state = 1666;
- this.match(TSqlParser.FROM);
- this.state = 1677;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.FILE:
- this.state = 1667;
- this.match(TSqlParser.FILE);
- this.state = 1668;
- this.match(TSqlParser.EQUAL);
- this.state = 1669;
- this.match(TSqlParser.STRING);
- break;
- case TSqlParser.EXECUTABLE_FILE:
- this.state = 1670;
- this.match(TSqlParser.EXECUTABLE_FILE);
- this.state = 1671;
- this.match(TSqlParser.EQUAL);
- this.state = 1672;
- this.match(TSqlParser.STRING);
- break;
- case TSqlParser.ASSEMBLY:
- this.state = 1673;
- this.match(TSqlParser.ASSEMBLY);
- this.state = 1674;
- localctx.Assembly_Name = this.id();
- break;
- case TSqlParser.PROVIDER:
- this.state = 1675;
- this.match(TSqlParser.PROVIDER);
- this.state = 1676;
- localctx.Provider_Name = this.id();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- }
-
- this.state = 1693;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,88,this._ctx);
- if(la_===1) {
- this.state = 1681;
- this.match(TSqlParser.WITH);
- this.state = 1691;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.ALGORITHM:
- this.state = 1682;
- this.match(TSqlParser.ALGORITHM);
- this.state = 1683;
- this.match(TSqlParser.EQUAL);
- this.state = 1684;
- _la = this._input.LA(1);
- if(!(((((_la - 290)) & ~0x1f) == 0 && ((1 << (_la - 290)) & ((1 << (TSqlParser.RSA_512 - 290)) | (1 << (TSqlParser.RSA_1024 - 290)) | (1 << (TSqlParser.RSA_2048 - 290)) | (1 << (TSqlParser.RSA_3072 - 290)) | (1 << (TSqlParser.RSA_4096 - 290)))) !== 0))) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- case TSqlParser.PROVIDER_KEY_NAME:
- this.state = 1685;
- this.match(TSqlParser.PROVIDER_KEY_NAME);
- this.state = 1686;
- this.match(TSqlParser.EQUAL);
- this.state = 1687;
- localctx.provider_key_name = this.match(TSqlParser.STRING);
- break;
- case TSqlParser.CREATION_DISPOSITION:
- this.state = 1688;
- this.match(TSqlParser.CREATION_DISPOSITION);
- this.state = 1689;
- this.match(TSqlParser.EQUAL);
- this.state = 1690;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.CREATE_NEW || _la===TSqlParser.OPEN_EXISTING)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
-
- }
- this.state = 1700;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,89,this._ctx);
- if(la_===1) {
- this.state = 1695;
- this.match(TSqlParser.ENCRYPTION);
- this.state = 1696;
- this.match(TSqlParser.BY);
- this.state = 1697;
- this.match(TSqlParser.PASSWORD);
- this.state = 1698;
- this.match(TSqlParser.EQUAL);
- this.state = 1699;
- localctx.asymmetric_key_password = this.match(TSqlParser.STRING);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_asymmetric_keyContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_asymmetric_key;
- this.key_name = null; // IdContext
- return this;
-}
-
-Drop_asymmetric_keyContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_asymmetric_keyContext.prototype.constructor = Drop_asymmetric_keyContext;
-
-Drop_asymmetric_keyContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_asymmetric_keyContext.prototype.ASYMMETRIC = function() {
- return this.getToken(TSqlParser.ASYMMETRIC, 0);
-};
-
-Drop_asymmetric_keyContext.prototype.KEY = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.KEY);
- } else {
- return this.getToken(TSqlParser.KEY, i);
- }
-};
-
-
-Drop_asymmetric_keyContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Drop_asymmetric_keyContext.prototype.REMOVE = function() {
- return this.getToken(TSqlParser.REMOVE, 0);
-};
-
-Drop_asymmetric_keyContext.prototype.PROVIDER = function() {
- return this.getToken(TSqlParser.PROVIDER, 0);
-};
-
-Drop_asymmetric_keyContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_asymmetric_key(this);
- }
-};
-
-Drop_asymmetric_keyContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_asymmetric_key(this);
- }
-};
-
-Drop_asymmetric_keyContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_asymmetric_key(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_asymmetric_keyContext = Drop_asymmetric_keyContext;
-
-TSqlParser.prototype.drop_asymmetric_key = function() {
-
- var localctx = new Drop_asymmetric_keyContext(this, this._ctx, this.state);
- this.enterRule(localctx, 128, TSqlParser.RULE_drop_asymmetric_key);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1702;
- this.match(TSqlParser.DROP);
- this.state = 1703;
- this.match(TSqlParser.ASYMMETRIC);
- this.state = 1704;
- this.match(TSqlParser.KEY);
- this.state = 1705;
- localctx.key_name = this.id();
- this.state = 1709;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,90,this._ctx);
- if(la_===1) {
- this.state = 1706;
- this.match(TSqlParser.REMOVE);
- this.state = 1707;
- this.match(TSqlParser.PROVIDER);
- this.state = 1708;
- this.match(TSqlParser.KEY);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_authorizationContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_authorization;
- this.entity = null; // Entity_nameContext
- return this;
-}
-
-Alter_authorizationContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_authorizationContext.prototype.constructor = Alter_authorizationContext;
-
-Alter_authorizationContext.prototype.alter_authorization_start = function() {
- return this.getTypedRuleContext(Alter_authorization_startContext,0);
-};
-
-Alter_authorizationContext.prototype.entity_to = function() {
- return this.getTypedRuleContext(Entity_toContext,0);
-};
-
-Alter_authorizationContext.prototype.authorization_grantee = function() {
- return this.getTypedRuleContext(Authorization_granteeContext,0);
-};
-
-Alter_authorizationContext.prototype.entity_name = function() {
- return this.getTypedRuleContext(Entity_nameContext,0);
-};
-
-Alter_authorizationContext.prototype.class_type = function() {
- return this.getTypedRuleContext(Class_typeContext,0);
-};
-
-Alter_authorizationContext.prototype.colon_colon = function() {
- return this.getTypedRuleContext(Colon_colonContext,0);
-};
-
-Alter_authorizationContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_authorization(this);
- }
-};
-
-Alter_authorizationContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_authorization(this);
- }
-};
-
-Alter_authorizationContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_authorization(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_authorizationContext = Alter_authorizationContext;
-
-TSqlParser.prototype.alter_authorization = function() {
-
- var localctx = new Alter_authorizationContext(this, this._ctx, this.state);
- this.enterRule(localctx, 130, TSqlParser.RULE_alter_authorization);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1711;
- this.alter_authorization_start();
- this.state = 1715;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,91,this._ctx);
- if(la_===1) {
- this.state = 1712;
- this.class_type();
- this.state = 1713;
- this.colon_colon();
-
- }
- this.state = 1717;
- localctx.entity = this.entity_name();
- this.state = 1718;
- this.entity_to();
- this.state = 1719;
- this.authorization_grantee();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Authorization_granteeContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_authorization_grantee;
- this.principal_name = null; // IdContext
- return this;
-}
-
-Authorization_granteeContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Authorization_granteeContext.prototype.constructor = Authorization_granteeContext;
-
-Authorization_granteeContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Authorization_granteeContext.prototype.SCHEMA = function() {
- return this.getToken(TSqlParser.SCHEMA, 0);
-};
-
-Authorization_granteeContext.prototype.OWNER = function() {
- return this.getToken(TSqlParser.OWNER, 0);
-};
-
-Authorization_granteeContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAuthorization_grantee(this);
- }
-};
-
-Authorization_granteeContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAuthorization_grantee(this);
- }
-};
-
-Authorization_granteeContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAuthorization_grantee(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Authorization_granteeContext = Authorization_granteeContext;
-
-TSqlParser.prototype.authorization_grantee = function() {
-
- var localctx = new Authorization_granteeContext(this, this._ctx, this.state);
- this.enterRule(localctx, 132, TSqlParser.RULE_authorization_grantee);
- try {
- this.state = 1724;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.enterOuterAlt(localctx, 1);
- this.state = 1721;
- localctx.principal_name = this.id();
- break;
- case TSqlParser.SCHEMA:
- this.enterOuterAlt(localctx, 2);
- this.state = 1722;
- this.match(TSqlParser.SCHEMA);
- this.state = 1723;
- this.match(TSqlParser.OWNER);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Entity_toContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_entity_to;
- return this;
-}
-
-Entity_toContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Entity_toContext.prototype.constructor = Entity_toContext;
-
-Entity_toContext.prototype.TO = function() {
- return this.getToken(TSqlParser.TO, 0);
-};
-
-Entity_toContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterEntity_to(this);
- }
-};
-
-Entity_toContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitEntity_to(this);
- }
-};
-
-Entity_toContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitEntity_to(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Entity_toContext = Entity_toContext;
-
-TSqlParser.prototype.entity_to = function() {
-
- var localctx = new Entity_toContext(this, this._ctx, this.state);
- this.enterRule(localctx, 134, TSqlParser.RULE_entity_to);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1726;
- this.match(TSqlParser.TO);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Colon_colonContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_colon_colon;
- return this;
-}
-
-Colon_colonContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Colon_colonContext.prototype.constructor = Colon_colonContext;
-
-Colon_colonContext.prototype.COLON = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COLON);
- } else {
- return this.getToken(TSqlParser.COLON, i);
- }
-};
-
-
-Colon_colonContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterColon_colon(this);
- }
-};
-
-Colon_colonContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitColon_colon(this);
- }
-};
-
-Colon_colonContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitColon_colon(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Colon_colonContext = Colon_colonContext;
-
-TSqlParser.prototype.colon_colon = function() {
-
- var localctx = new Colon_colonContext(this, this._ctx, this.state);
- this.enterRule(localctx, 136, TSqlParser.RULE_colon_colon);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1728;
- this.match(TSqlParser.COLON);
- this.state = 1729;
- this.match(TSqlParser.COLON);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_authorization_startContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_authorization_start;
- return this;
-}
-
-Alter_authorization_startContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_authorization_startContext.prototype.constructor = Alter_authorization_startContext;
-
-Alter_authorization_startContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Alter_authorization_startContext.prototype.AUTHORIZATION = function() {
- return this.getToken(TSqlParser.AUTHORIZATION, 0);
-};
-
-Alter_authorization_startContext.prototype.ON = function() {
- return this.getToken(TSqlParser.ON, 0);
-};
-
-Alter_authorization_startContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_authorization_start(this);
- }
-};
-
-Alter_authorization_startContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_authorization_start(this);
- }
-};
-
-Alter_authorization_startContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_authorization_start(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_authorization_startContext = Alter_authorization_startContext;
-
-TSqlParser.prototype.alter_authorization_start = function() {
-
- var localctx = new Alter_authorization_startContext(this, this._ctx, this.state);
- this.enterRule(localctx, 138, TSqlParser.RULE_alter_authorization_start);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1731;
- this.match(TSqlParser.ALTER);
- this.state = 1732;
- this.match(TSqlParser.AUTHORIZATION);
- this.state = 1733;
- this.match(TSqlParser.ON);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_authorization_for_sql_databaseContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_authorization_for_sql_database;
- this.entity = null; // Entity_nameContext
- return this;
-}
-
-Alter_authorization_for_sql_databaseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_authorization_for_sql_databaseContext.prototype.constructor = Alter_authorization_for_sql_databaseContext;
-
-Alter_authorization_for_sql_databaseContext.prototype.alter_authorization_start = function() {
- return this.getTypedRuleContext(Alter_authorization_startContext,0);
-};
-
-Alter_authorization_for_sql_databaseContext.prototype.entity_to = function() {
- return this.getTypedRuleContext(Entity_toContext,0);
-};
-
-Alter_authorization_for_sql_databaseContext.prototype.authorization_grantee = function() {
- return this.getTypedRuleContext(Authorization_granteeContext,0);
-};
-
-Alter_authorization_for_sql_databaseContext.prototype.entity_name = function() {
- return this.getTypedRuleContext(Entity_nameContext,0);
-};
-
-Alter_authorization_for_sql_databaseContext.prototype.class_type_for_sql_database = function() {
- return this.getTypedRuleContext(Class_type_for_sql_databaseContext,0);
-};
-
-Alter_authorization_for_sql_databaseContext.prototype.colon_colon = function() {
- return this.getTypedRuleContext(Colon_colonContext,0);
-};
-
-Alter_authorization_for_sql_databaseContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_authorization_for_sql_database(this);
- }
-};
-
-Alter_authorization_for_sql_databaseContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_authorization_for_sql_database(this);
- }
-};
-
-Alter_authorization_for_sql_databaseContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_authorization_for_sql_database(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_authorization_for_sql_databaseContext = Alter_authorization_for_sql_databaseContext;
-
-TSqlParser.prototype.alter_authorization_for_sql_database = function() {
-
- var localctx = new Alter_authorization_for_sql_databaseContext(this, this._ctx, this.state);
- this.enterRule(localctx, 140, TSqlParser.RULE_alter_authorization_for_sql_database);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1735;
- this.alter_authorization_start();
- this.state = 1739;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,93,this._ctx);
- if(la_===1) {
- this.state = 1736;
- this.class_type_for_sql_database();
- this.state = 1737;
- this.colon_colon();
-
- }
- this.state = 1741;
- localctx.entity = this.entity_name();
- this.state = 1742;
- this.entity_to();
- this.state = 1743;
- this.authorization_grantee();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_authorization_for_azure_dwContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_authorization_for_azure_dw;
- this.entity = null; // Entity_name_for_azure_dwContext
- return this;
-}
-
-Alter_authorization_for_azure_dwContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_authorization_for_azure_dwContext.prototype.constructor = Alter_authorization_for_azure_dwContext;
-
-Alter_authorization_for_azure_dwContext.prototype.alter_authorization_start = function() {
- return this.getTypedRuleContext(Alter_authorization_startContext,0);
-};
-
-Alter_authorization_for_azure_dwContext.prototype.entity_to = function() {
- return this.getTypedRuleContext(Entity_toContext,0);
-};
-
-Alter_authorization_for_azure_dwContext.prototype.authorization_grantee = function() {
- return this.getTypedRuleContext(Authorization_granteeContext,0);
-};
-
-Alter_authorization_for_azure_dwContext.prototype.entity_name_for_azure_dw = function() {
- return this.getTypedRuleContext(Entity_name_for_azure_dwContext,0);
-};
-
-Alter_authorization_for_azure_dwContext.prototype.class_type_for_azure_dw = function() {
- return this.getTypedRuleContext(Class_type_for_azure_dwContext,0);
-};
-
-Alter_authorization_for_azure_dwContext.prototype.colon_colon = function() {
- return this.getTypedRuleContext(Colon_colonContext,0);
-};
-
-Alter_authorization_for_azure_dwContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_authorization_for_azure_dw(this);
- }
-};
-
-Alter_authorization_for_azure_dwContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_authorization_for_azure_dw(this);
- }
-};
-
-Alter_authorization_for_azure_dwContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_authorization_for_azure_dw(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_authorization_for_azure_dwContext = Alter_authorization_for_azure_dwContext;
-
-TSqlParser.prototype.alter_authorization_for_azure_dw = function() {
-
- var localctx = new Alter_authorization_for_azure_dwContext(this, this._ctx, this.state);
- this.enterRule(localctx, 142, TSqlParser.RULE_alter_authorization_for_azure_dw);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1745;
- this.alter_authorization_start();
- this.state = 1749;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,94,this._ctx);
- if(la_===1) {
- this.state = 1746;
- this.class_type_for_azure_dw();
- this.state = 1747;
- this.colon_colon();
-
- }
- this.state = 1751;
- localctx.entity = this.entity_name_for_azure_dw();
- this.state = 1752;
- this.entity_to();
- this.state = 1753;
- this.authorization_grantee();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_authorization_for_parallel_dwContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_authorization_for_parallel_dw;
- this.entity = null; // Entity_name_for_parallel_dwContext
- return this;
-}
-
-Alter_authorization_for_parallel_dwContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_authorization_for_parallel_dwContext.prototype.constructor = Alter_authorization_for_parallel_dwContext;
-
-Alter_authorization_for_parallel_dwContext.prototype.alter_authorization_start = function() {
- return this.getTypedRuleContext(Alter_authorization_startContext,0);
-};
-
-Alter_authorization_for_parallel_dwContext.prototype.entity_to = function() {
- return this.getTypedRuleContext(Entity_toContext,0);
-};
-
-Alter_authorization_for_parallel_dwContext.prototype.authorization_grantee = function() {
- return this.getTypedRuleContext(Authorization_granteeContext,0);
-};
-
-Alter_authorization_for_parallel_dwContext.prototype.entity_name_for_parallel_dw = function() {
- return this.getTypedRuleContext(Entity_name_for_parallel_dwContext,0);
-};
-
-Alter_authorization_for_parallel_dwContext.prototype.class_type_for_parallel_dw = function() {
- return this.getTypedRuleContext(Class_type_for_parallel_dwContext,0);
-};
-
-Alter_authorization_for_parallel_dwContext.prototype.colon_colon = function() {
- return this.getTypedRuleContext(Colon_colonContext,0);
-};
-
-Alter_authorization_for_parallel_dwContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_authorization_for_parallel_dw(this);
- }
-};
-
-Alter_authorization_for_parallel_dwContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_authorization_for_parallel_dw(this);
- }
-};
-
-Alter_authorization_for_parallel_dwContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_authorization_for_parallel_dw(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_authorization_for_parallel_dwContext = Alter_authorization_for_parallel_dwContext;
-
-TSqlParser.prototype.alter_authorization_for_parallel_dw = function() {
-
- var localctx = new Alter_authorization_for_parallel_dwContext(this, this._ctx, this.state);
- this.enterRule(localctx, 144, TSqlParser.RULE_alter_authorization_for_parallel_dw);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1755;
- this.alter_authorization_start();
- this.state = 1759;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,95,this._ctx);
- if(la_===1) {
- this.state = 1756;
- this.class_type_for_parallel_dw();
- this.state = 1757;
- this.colon_colon();
-
- }
- this.state = 1761;
- localctx.entity = this.entity_name_for_parallel_dw();
- this.state = 1762;
- this.entity_to();
- this.state = 1763;
- this.authorization_grantee();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Class_typeContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_class_type;
- return this;
-}
-
-Class_typeContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Class_typeContext.prototype.constructor = Class_typeContext;
-
-Class_typeContext.prototype.OBJECT = function() {
- return this.getToken(TSqlParser.OBJECT, 0);
-};
-
-Class_typeContext.prototype.ASSEMBLY = function() {
- return this.getToken(TSqlParser.ASSEMBLY, 0);
-};
-
-Class_typeContext.prototype.ASYMMETRIC = function() {
- return this.getToken(TSqlParser.ASYMMETRIC, 0);
-};
-
-Class_typeContext.prototype.KEY = function() {
- return this.getToken(TSqlParser.KEY, 0);
-};
-
-Class_typeContext.prototype.AVAILABILITY = function() {
- return this.getToken(TSqlParser.AVAILABILITY, 0);
-};
-
-Class_typeContext.prototype.GROUP = function() {
- return this.getToken(TSqlParser.GROUP, 0);
-};
-
-Class_typeContext.prototype.CERTIFICATE = function() {
- return this.getToken(TSqlParser.CERTIFICATE, 0);
-};
-
-Class_typeContext.prototype.CONTRACT = function() {
- return this.getToken(TSqlParser.CONTRACT, 0);
-};
-
-Class_typeContext.prototype.TYPE = function() {
- return this.getToken(TSqlParser.TYPE, 0);
-};
-
-Class_typeContext.prototype.DATABASE = function() {
- return this.getToken(TSqlParser.DATABASE, 0);
-};
-
-Class_typeContext.prototype.ENDPOINT = function() {
- return this.getToken(TSqlParser.ENDPOINT, 0);
-};
-
-Class_typeContext.prototype.FULLTEXT = function() {
- return this.getToken(TSqlParser.FULLTEXT, 0);
-};
-
-Class_typeContext.prototype.CATALOG = function() {
- return this.getToken(TSqlParser.CATALOG, 0);
-};
-
-Class_typeContext.prototype.STOPLIST = function() {
- return this.getToken(TSqlParser.STOPLIST, 0);
-};
-
-Class_typeContext.prototype.MESSAGE = function() {
- return this.getToken(TSqlParser.MESSAGE, 0);
-};
-
-Class_typeContext.prototype.REMOTE = function() {
- return this.getToken(TSqlParser.REMOTE, 0);
-};
-
-Class_typeContext.prototype.SERVICE = function() {
- return this.getToken(TSqlParser.SERVICE, 0);
-};
-
-Class_typeContext.prototype.BINDING = function() {
- return this.getToken(TSqlParser.BINDING, 0);
-};
-
-Class_typeContext.prototype.ROLE = function() {
- return this.getToken(TSqlParser.ROLE, 0);
-};
-
-Class_typeContext.prototype.ROUTE = function() {
- return this.getToken(TSqlParser.ROUTE, 0);
-};
-
-Class_typeContext.prototype.SCHEMA = function() {
- return this.getToken(TSqlParser.SCHEMA, 0);
-};
-
-Class_typeContext.prototype.SEARCH = function() {
- return this.getToken(TSqlParser.SEARCH, 0);
-};
-
-Class_typeContext.prototype.PROPERTY = function() {
- return this.getToken(TSqlParser.PROPERTY, 0);
-};
-
-Class_typeContext.prototype.LIST = function() {
- return this.getToken(TSqlParser.LIST, 0);
-};
-
-Class_typeContext.prototype.SERVER = function() {
- return this.getToken(TSqlParser.SERVER, 0);
-};
-
-Class_typeContext.prototype.SYMMETRIC = function() {
- return this.getToken(TSqlParser.SYMMETRIC, 0);
-};
-
-Class_typeContext.prototype.XML = function() {
- return this.getToken(TSqlParser.XML, 0);
-};
-
-Class_typeContext.prototype.COLLECTION = function() {
- return this.getToken(TSqlParser.COLLECTION, 0);
-};
-
-Class_typeContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterClass_type(this);
- }
-};
-
-Class_typeContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitClass_type(this);
- }
-};
-
-Class_typeContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitClass_type(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Class_typeContext = Class_typeContext;
-
-TSqlParser.prototype.class_type = function() {
-
- var localctx = new Class_typeContext(this, this._ctx, this.state);
- this.enterRule(localctx, 146, TSqlParser.RULE_class_type);
- try {
- this.state = 1799;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,96,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 1765;
- this.match(TSqlParser.OBJECT);
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 1766;
- this.match(TSqlParser.ASSEMBLY);
- break;
-
- case 3:
- this.enterOuterAlt(localctx, 3);
- this.state = 1767;
- this.match(TSqlParser.ASYMMETRIC);
- this.state = 1768;
- this.match(TSqlParser.KEY);
- break;
-
- case 4:
- this.enterOuterAlt(localctx, 4);
- this.state = 1769;
- this.match(TSqlParser.AVAILABILITY);
- this.state = 1770;
- this.match(TSqlParser.GROUP);
- break;
-
- case 5:
- this.enterOuterAlt(localctx, 5);
- this.state = 1771;
- this.match(TSqlParser.CERTIFICATE);
- break;
-
- case 6:
- this.enterOuterAlt(localctx, 6);
- this.state = 1772;
- this.match(TSqlParser.CONTRACT);
- break;
-
- case 7:
- this.enterOuterAlt(localctx, 7);
- this.state = 1773;
- this.match(TSqlParser.TYPE);
- break;
-
- case 8:
- this.enterOuterAlt(localctx, 8);
- this.state = 1774;
- this.match(TSqlParser.DATABASE);
- break;
-
- case 9:
- this.enterOuterAlt(localctx, 9);
- this.state = 1775;
- this.match(TSqlParser.ENDPOINT);
- break;
-
- case 10:
- this.enterOuterAlt(localctx, 10);
- this.state = 1776;
- this.match(TSqlParser.FULLTEXT);
- this.state = 1777;
- this.match(TSqlParser.CATALOG);
- break;
-
- case 11:
- this.enterOuterAlt(localctx, 11);
- this.state = 1778;
- this.match(TSqlParser.FULLTEXT);
- this.state = 1779;
- this.match(TSqlParser.STOPLIST);
- break;
-
- case 12:
- this.enterOuterAlt(localctx, 12);
- this.state = 1780;
- this.match(TSqlParser.MESSAGE);
- this.state = 1781;
- this.match(TSqlParser.TYPE);
- break;
-
- case 13:
- this.enterOuterAlt(localctx, 13);
- this.state = 1782;
- this.match(TSqlParser.REMOTE);
- this.state = 1783;
- this.match(TSqlParser.SERVICE);
- this.state = 1784;
- this.match(TSqlParser.BINDING);
- break;
-
- case 14:
- this.enterOuterAlt(localctx, 14);
- this.state = 1785;
- this.match(TSqlParser.ROLE);
- break;
-
- case 15:
- this.enterOuterAlt(localctx, 15);
- this.state = 1786;
- this.match(TSqlParser.ROUTE);
- break;
-
- case 16:
- this.enterOuterAlt(localctx, 16);
- this.state = 1787;
- this.match(TSqlParser.SCHEMA);
- break;
-
- case 17:
- this.enterOuterAlt(localctx, 17);
- this.state = 1788;
- this.match(TSqlParser.SEARCH);
- this.state = 1789;
- this.match(TSqlParser.PROPERTY);
- this.state = 1790;
- this.match(TSqlParser.LIST);
- break;
-
- case 18:
- this.enterOuterAlt(localctx, 18);
- this.state = 1791;
- this.match(TSqlParser.SERVER);
- this.state = 1792;
- this.match(TSqlParser.ROLE);
- break;
-
- case 19:
- this.enterOuterAlt(localctx, 19);
- this.state = 1793;
- this.match(TSqlParser.SERVICE);
- break;
-
- case 20:
- this.enterOuterAlt(localctx, 20);
- this.state = 1794;
- this.match(TSqlParser.SYMMETRIC);
- this.state = 1795;
- this.match(TSqlParser.KEY);
- break;
-
- case 21:
- this.enterOuterAlt(localctx, 21);
- this.state = 1796;
- this.match(TSqlParser.XML);
- this.state = 1797;
- this.match(TSqlParser.SCHEMA);
- this.state = 1798;
- this.match(TSqlParser.COLLECTION);
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Class_type_for_sql_databaseContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_class_type_for_sql_database;
- return this;
-}
-
-Class_type_for_sql_databaseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Class_type_for_sql_databaseContext.prototype.constructor = Class_type_for_sql_databaseContext;
-
-Class_type_for_sql_databaseContext.prototype.OBJECT = function() {
- return this.getToken(TSqlParser.OBJECT, 0);
-};
-
-Class_type_for_sql_databaseContext.prototype.ASSEMBLY = function() {
- return this.getToken(TSqlParser.ASSEMBLY, 0);
-};
-
-Class_type_for_sql_databaseContext.prototype.ASYMMETRIC = function() {
- return this.getToken(TSqlParser.ASYMMETRIC, 0);
-};
-
-Class_type_for_sql_databaseContext.prototype.KEY = function() {
- return this.getToken(TSqlParser.KEY, 0);
-};
-
-Class_type_for_sql_databaseContext.prototype.CERTIFICATE = function() {
- return this.getToken(TSqlParser.CERTIFICATE, 0);
-};
-
-Class_type_for_sql_databaseContext.prototype.TYPE = function() {
- return this.getToken(TSqlParser.TYPE, 0);
-};
-
-Class_type_for_sql_databaseContext.prototype.DATABASE = function() {
- return this.getToken(TSqlParser.DATABASE, 0);
-};
-
-Class_type_for_sql_databaseContext.prototype.FULLTEXT = function() {
- return this.getToken(TSqlParser.FULLTEXT, 0);
-};
-
-Class_type_for_sql_databaseContext.prototype.CATALOG = function() {
- return this.getToken(TSqlParser.CATALOG, 0);
-};
-
-Class_type_for_sql_databaseContext.prototype.STOPLIST = function() {
- return this.getToken(TSqlParser.STOPLIST, 0);
-};
-
-Class_type_for_sql_databaseContext.prototype.ROLE = function() {
- return this.getToken(TSqlParser.ROLE, 0);
-};
-
-Class_type_for_sql_databaseContext.prototype.SCHEMA = function() {
- return this.getToken(TSqlParser.SCHEMA, 0);
-};
-
-Class_type_for_sql_databaseContext.prototype.SEARCH = function() {
- return this.getToken(TSqlParser.SEARCH, 0);
-};
-
-Class_type_for_sql_databaseContext.prototype.PROPERTY = function() {
- return this.getToken(TSqlParser.PROPERTY, 0);
-};
-
-Class_type_for_sql_databaseContext.prototype.LIST = function() {
- return this.getToken(TSqlParser.LIST, 0);
-};
-
-Class_type_for_sql_databaseContext.prototype.SYMMETRIC = function() {
- return this.getToken(TSqlParser.SYMMETRIC, 0);
-};
-
-Class_type_for_sql_databaseContext.prototype.XML = function() {
- return this.getToken(TSqlParser.XML, 0);
-};
-
-Class_type_for_sql_databaseContext.prototype.COLLECTION = function() {
- return this.getToken(TSqlParser.COLLECTION, 0);
-};
-
-Class_type_for_sql_databaseContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterClass_type_for_sql_database(this);
- }
-};
-
-Class_type_for_sql_databaseContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitClass_type_for_sql_database(this);
- }
-};
-
-Class_type_for_sql_databaseContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitClass_type_for_sql_database(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Class_type_for_sql_databaseContext = Class_type_for_sql_databaseContext;
-
-TSqlParser.prototype.class_type_for_sql_database = function() {
-
- var localctx = new Class_type_for_sql_databaseContext(this, this._ctx, this.state);
- this.enterRule(localctx, 148, TSqlParser.RULE_class_type_for_sql_database);
- try {
- this.state = 1822;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,97,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 1801;
- this.match(TSqlParser.OBJECT);
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 1802;
- this.match(TSqlParser.ASSEMBLY);
- break;
-
- case 3:
- this.enterOuterAlt(localctx, 3);
- this.state = 1803;
- this.match(TSqlParser.ASYMMETRIC);
- this.state = 1804;
- this.match(TSqlParser.KEY);
- break;
-
- case 4:
- this.enterOuterAlt(localctx, 4);
- this.state = 1805;
- this.match(TSqlParser.CERTIFICATE);
- break;
-
- case 5:
- this.enterOuterAlt(localctx, 5);
- this.state = 1806;
- this.match(TSqlParser.TYPE);
- break;
-
- case 6:
- this.enterOuterAlt(localctx, 6);
- this.state = 1807;
- this.match(TSqlParser.DATABASE);
- break;
-
- case 7:
- this.enterOuterAlt(localctx, 7);
- this.state = 1808;
- this.match(TSqlParser.FULLTEXT);
- this.state = 1809;
- this.match(TSqlParser.CATALOG);
- break;
-
- case 8:
- this.enterOuterAlt(localctx, 8);
- this.state = 1810;
- this.match(TSqlParser.FULLTEXT);
- this.state = 1811;
- this.match(TSqlParser.STOPLIST);
- break;
-
- case 9:
- this.enterOuterAlt(localctx, 9);
- this.state = 1812;
- this.match(TSqlParser.ROLE);
- break;
-
- case 10:
- this.enterOuterAlt(localctx, 10);
- this.state = 1813;
- this.match(TSqlParser.SCHEMA);
- break;
-
- case 11:
- this.enterOuterAlt(localctx, 11);
- this.state = 1814;
- this.match(TSqlParser.SEARCH);
- this.state = 1815;
- this.match(TSqlParser.PROPERTY);
- this.state = 1816;
- this.match(TSqlParser.LIST);
- break;
-
- case 12:
- this.enterOuterAlt(localctx, 12);
- this.state = 1817;
- this.match(TSqlParser.SYMMETRIC);
- this.state = 1818;
- this.match(TSqlParser.KEY);
- break;
-
- case 13:
- this.enterOuterAlt(localctx, 13);
- this.state = 1819;
- this.match(TSqlParser.XML);
- this.state = 1820;
- this.match(TSqlParser.SCHEMA);
- this.state = 1821;
- this.match(TSqlParser.COLLECTION);
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Class_type_for_azure_dwContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_class_type_for_azure_dw;
- return this;
-}
-
-Class_type_for_azure_dwContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Class_type_for_azure_dwContext.prototype.constructor = Class_type_for_azure_dwContext;
-
-Class_type_for_azure_dwContext.prototype.SCHEMA = function() {
- return this.getToken(TSqlParser.SCHEMA, 0);
-};
-
-Class_type_for_azure_dwContext.prototype.OBJECT = function() {
- return this.getToken(TSqlParser.OBJECT, 0);
-};
-
-Class_type_for_azure_dwContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterClass_type_for_azure_dw(this);
- }
-};
-
-Class_type_for_azure_dwContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitClass_type_for_azure_dw(this);
- }
-};
-
-Class_type_for_azure_dwContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitClass_type_for_azure_dw(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Class_type_for_azure_dwContext = Class_type_for_azure_dwContext;
-
-TSqlParser.prototype.class_type_for_azure_dw = function() {
-
- var localctx = new Class_type_for_azure_dwContext(this, this._ctx, this.state);
- this.enterRule(localctx, 150, TSqlParser.RULE_class_type_for_azure_dw);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1824;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.SCHEMA || _la===TSqlParser.OBJECT)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Class_type_for_parallel_dwContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_class_type_for_parallel_dw;
- return this;
-}
-
-Class_type_for_parallel_dwContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Class_type_for_parallel_dwContext.prototype.constructor = Class_type_for_parallel_dwContext;
-
-Class_type_for_parallel_dwContext.prototype.DATABASE = function() {
- return this.getToken(TSqlParser.DATABASE, 0);
-};
-
-Class_type_for_parallel_dwContext.prototype.SCHEMA = function() {
- return this.getToken(TSqlParser.SCHEMA, 0);
-};
-
-Class_type_for_parallel_dwContext.prototype.OBJECT = function() {
- return this.getToken(TSqlParser.OBJECT, 0);
-};
-
-Class_type_for_parallel_dwContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterClass_type_for_parallel_dw(this);
- }
-};
-
-Class_type_for_parallel_dwContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitClass_type_for_parallel_dw(this);
- }
-};
-
-Class_type_for_parallel_dwContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitClass_type_for_parallel_dw(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Class_type_for_parallel_dwContext = Class_type_for_parallel_dwContext;
-
-TSqlParser.prototype.class_type_for_parallel_dw = function() {
-
- var localctx = new Class_type_for_parallel_dwContext(this, this._ctx, this.state);
- this.enterRule(localctx, 152, TSqlParser.RULE_class_type_for_parallel_dw);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1826;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.DATABASE || _la===TSqlParser.SCHEMA || _la===TSqlParser.OBJECT)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_availability_groupContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_availability_group;
- this.group_name = null; // IdContext
- return this;
-}
-
-Drop_availability_groupContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_availability_groupContext.prototype.constructor = Drop_availability_groupContext;
-
-Drop_availability_groupContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_availability_groupContext.prototype.AVAILABILITY = function() {
- return this.getToken(TSqlParser.AVAILABILITY, 0);
-};
-
-Drop_availability_groupContext.prototype.GROUP = function() {
- return this.getToken(TSqlParser.GROUP, 0);
-};
-
-Drop_availability_groupContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Drop_availability_groupContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_availability_group(this);
- }
-};
-
-Drop_availability_groupContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_availability_group(this);
- }
-};
-
-Drop_availability_groupContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_availability_group(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_availability_groupContext = Drop_availability_groupContext;
-
-TSqlParser.prototype.drop_availability_group = function() {
-
- var localctx = new Drop_availability_groupContext(this, this._ctx, this.state);
- this.enterRule(localctx, 154, TSqlParser.RULE_drop_availability_group);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1828;
- this.match(TSqlParser.DROP);
- this.state = 1829;
- this.match(TSqlParser.AVAILABILITY);
- this.state = 1830;
- this.match(TSqlParser.GROUP);
- this.state = 1831;
- localctx.group_name = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_availability_groupContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_availability_group;
- return this;
-}
-
-Alter_availability_groupContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_availability_groupContext.prototype.constructor = Alter_availability_groupContext;
-
-Alter_availability_groupContext.prototype.alter_availability_group_start = function() {
- return this.getTypedRuleContext(Alter_availability_group_startContext,0);
-};
-
-Alter_availability_groupContext.prototype.alter_availability_group_options = function() {
- return this.getTypedRuleContext(Alter_availability_group_optionsContext,0);
-};
-
-Alter_availability_groupContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_availability_group(this);
- }
-};
-
-Alter_availability_groupContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_availability_group(this);
- }
-};
-
-Alter_availability_groupContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_availability_group(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_availability_groupContext = Alter_availability_groupContext;
-
-TSqlParser.prototype.alter_availability_group = function() {
-
- var localctx = new Alter_availability_groupContext(this, this._ctx, this.state);
- this.enterRule(localctx, 156, TSqlParser.RULE_alter_availability_group);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1833;
- this.alter_availability_group_start();
- this.state = 1834;
- this.alter_availability_group_options();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_availability_group_startContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_availability_group_start;
- this.group_name = null; // IdContext
- return this;
-}
-
-Alter_availability_group_startContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_availability_group_startContext.prototype.constructor = Alter_availability_group_startContext;
-
-Alter_availability_group_startContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Alter_availability_group_startContext.prototype.AVAILABILITY = function() {
- return this.getToken(TSqlParser.AVAILABILITY, 0);
-};
-
-Alter_availability_group_startContext.prototype.GROUP = function() {
- return this.getToken(TSqlParser.GROUP, 0);
-};
-
-Alter_availability_group_startContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Alter_availability_group_startContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_availability_group_start(this);
- }
-};
-
-Alter_availability_group_startContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_availability_group_start(this);
- }
-};
-
-Alter_availability_group_startContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_availability_group_start(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_availability_group_startContext = Alter_availability_group_startContext;
-
-TSqlParser.prototype.alter_availability_group_start = function() {
-
- var localctx = new Alter_availability_group_startContext(this, this._ctx, this.state);
- this.enterRule(localctx, 158, TSqlParser.RULE_alter_availability_group_start);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 1836;
- this.match(TSqlParser.ALTER);
- this.state = 1837;
- this.match(TSqlParser.AVAILABILITY);
- this.state = 1838;
- this.match(TSqlParser.GROUP);
- this.state = 1839;
- localctx.group_name = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_availability_group_optionsContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_availability_group_options;
- this.milliseconds = null; // Token
- this.database_name = null; // IdContext
- this.server_instance = null; // Token
- this.session_timeout = null; // Token
- this.ag_name = null; // Token
- this.ag_name_modified = null; // Token
- this.listener_name = null; // Token
- return this;
-}
-
-Alter_availability_group_optionsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_availability_group_optionsContext.prototype.constructor = Alter_availability_group_optionsContext;
-
-Alter_availability_group_optionsContext.prototype.SET = function() {
- return this.getToken(TSqlParser.SET, 0);
-};
-
-Alter_availability_group_optionsContext.prototype.LR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.LR_BRACKET);
- } else {
- return this.getToken(TSqlParser.LR_BRACKET, i);
- }
-};
-
-
-Alter_availability_group_optionsContext.prototype.RR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.RR_BRACKET);
- } else {
- return this.getToken(TSqlParser.RR_BRACKET, i);
- }
-};
-
-
-Alter_availability_group_optionsContext.prototype.AUTOMATED_BACKUP_PREFERENCE = function() {
- return this.getToken(TSqlParser.AUTOMATED_BACKUP_PREFERENCE, 0);
-};
-
-Alter_availability_group_optionsContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-Alter_availability_group_optionsContext.prototype.FAILURE_CONDITION_LEVEL = function() {
- return this.getToken(TSqlParser.FAILURE_CONDITION_LEVEL, 0);
-};
-
-Alter_availability_group_optionsContext.prototype.DECIMAL = function() {
- return this.getToken(TSqlParser.DECIMAL, 0);
-};
-
-Alter_availability_group_optionsContext.prototype.HEALTH_CHECK_TIMEOUT = function() {
- return this.getToken(TSqlParser.HEALTH_CHECK_TIMEOUT, 0);
-};
-
-Alter_availability_group_optionsContext.prototype.DB_FAILOVER = function() {
- return this.getToken(TSqlParser.DB_FAILOVER, 0);
-};
-
-Alter_availability_group_optionsContext.prototype.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT = function() {
- return this.getToken(TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT, 0);
-};
-
-Alter_availability_group_optionsContext.prototype.PRIMARY = function() {
- return this.getToken(TSqlParser.PRIMARY, 0);
-};
-
-Alter_availability_group_optionsContext.prototype.SECONDARY_ONLY = function() {
- return this.getToken(TSqlParser.SECONDARY_ONLY, 0);
-};
-
-Alter_availability_group_optionsContext.prototype.SECONDARY = function() {
- return this.getToken(TSqlParser.SECONDARY, 0);
-};
-
-Alter_availability_group_optionsContext.prototype.NONE = function() {
- return this.getToken(TSqlParser.NONE, 0);
-};
-
-Alter_availability_group_optionsContext.prototype.ON = function() {
- return this.getToken(TSqlParser.ON, 0);
-};
-
-Alter_availability_group_optionsContext.prototype.OFF = function() {
- return this.getToken(TSqlParser.OFF, 0);
-};
-
-Alter_availability_group_optionsContext.prototype.ADD = function() {
- return this.getToken(TSqlParser.ADD, 0);
-};
-
-Alter_availability_group_optionsContext.prototype.DATABASE = function() {
- return this.getToken(TSqlParser.DATABASE, 0);
-};
-
-Alter_availability_group_optionsContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Alter_availability_group_optionsContext.prototype.REMOVE = function() {
- return this.getToken(TSqlParser.REMOVE, 0);
-};
-
-Alter_availability_group_optionsContext.prototype.REPLICA = function() {
- return this.getToken(TSqlParser.REPLICA, 0);
-};
-
-Alter_availability_group_optionsContext.prototype.STRING = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.STRING);
- } else {
- return this.getToken(TSqlParser.STRING, i);
- }
-};
-
-
-Alter_availability_group_optionsContext.prototype.WITH = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.WITH);
- } else {
- return this.getToken(TSqlParser.WITH, i);
- }
-};
-
-
-Alter_availability_group_optionsContext.prototype.ENDPOINT_URL = function() {
- return this.getToken(TSqlParser.ENDPOINT_URL, 0);
-};
-
-Alter_availability_group_optionsContext.prototype.AVAILABILITY_MODE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.AVAILABILITY_MODE);
- } else {
- return this.getToken(TSqlParser.AVAILABILITY_MODE, i);
- }
-};
-
-
-Alter_availability_group_optionsContext.prototype.FAILOVER_MODE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.FAILOVER_MODE);
- } else {
- return this.getToken(TSqlParser.FAILOVER_MODE, i);
- }
-};
-
-
-Alter_availability_group_optionsContext.prototype.SEEDING_MODE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.SEEDING_MODE);
- } else {
- return this.getToken(TSqlParser.SEEDING_MODE, i);
- }
-};
-
-
-Alter_availability_group_optionsContext.prototype.BACKUP_PRIORITY = function() {
- return this.getToken(TSqlParser.BACKUP_PRIORITY, 0);
-};
-
-Alter_availability_group_optionsContext.prototype.PRIMARY_ROLE = function() {
- return this.getToken(TSqlParser.PRIMARY_ROLE, 0);
-};
-
-Alter_availability_group_optionsContext.prototype.ALLOW_CONNECTIONS = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ALLOW_CONNECTIONS);
- } else {
- return this.getToken(TSqlParser.ALLOW_CONNECTIONS, i);
- }
-};
-
-
-Alter_availability_group_optionsContext.prototype.SECONDARY_ROLE = function() {
- return this.getToken(TSqlParser.SECONDARY_ROLE, 0);
-};
-
-Alter_availability_group_optionsContext.prototype.SYNCHRONOUS_COMMIT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.SYNCHRONOUS_COMMIT);
- } else {
- return this.getToken(TSqlParser.SYNCHRONOUS_COMMIT, i);
- }
-};
-
-
-Alter_availability_group_optionsContext.prototype.ASYNCHRONOUS_COMMIT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ASYNCHRONOUS_COMMIT);
- } else {
- return this.getToken(TSqlParser.ASYNCHRONOUS_COMMIT, i);
- }
-};
-
-
-Alter_availability_group_optionsContext.prototype.AUTOMATIC = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.AUTOMATIC);
- } else {
- return this.getToken(TSqlParser.AUTOMATIC, i);
- }
-};
-
-
-Alter_availability_group_optionsContext.prototype.MANUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.MANUAL);
- } else {
- return this.getToken(TSqlParser.MANUAL, i);
- }
-};
-
-
-Alter_availability_group_optionsContext.prototype.READ_WRITE = function() {
- return this.getToken(TSqlParser.READ_WRITE, 0);
-};
-
-Alter_availability_group_optionsContext.prototype.ALL = function() {
- return this.getToken(TSqlParser.ALL, 0);
-};
-
-Alter_availability_group_optionsContext.prototype.READ_ONLY = function() {
- return this.getToken(TSqlParser.READ_ONLY, 0);
-};
-
-Alter_availability_group_optionsContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Alter_availability_group_optionsContext.prototype.READ_ONLY_ROUTING_LIST = function() {
- return this.getToken(TSqlParser.READ_ONLY_ROUTING_LIST, 0);
-};
-
-Alter_availability_group_optionsContext.prototype.NO = function() {
- return this.getToken(TSqlParser.NO, 0);
-};
-
-Alter_availability_group_optionsContext.prototype.SESSION_TIMEOUT = function() {
- return this.getToken(TSqlParser.SESSION_TIMEOUT, 0);
-};
-
-Alter_availability_group_optionsContext.prototype.MODIFY = function() {
- return this.getToken(TSqlParser.MODIFY, 0);
-};
-
-Alter_availability_group_optionsContext.prototype.JOIN = function() {
- return this.getToken(TSqlParser.JOIN, 0);
-};
-
-Alter_availability_group_optionsContext.prototype.AVAILABILITY = function() {
- return this.getToken(TSqlParser.AVAILABILITY, 0);
-};
-
-Alter_availability_group_optionsContext.prototype.GROUP = function() {
- return this.getToken(TSqlParser.GROUP, 0);
-};
-
-Alter_availability_group_optionsContext.prototype.LISTENER_URL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.LISTENER_URL);
- } else {
- return this.getToken(TSqlParser.LISTENER_URL, i);
- }
-};
-
-
-Alter_availability_group_optionsContext.prototype.GRANT = function() {
- return this.getToken(TSqlParser.GRANT, 0);
-};
-
-Alter_availability_group_optionsContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Alter_availability_group_optionsContext.prototype.ANY = function() {
- return this.getToken(TSqlParser.ANY, 0);
-};
-
-Alter_availability_group_optionsContext.prototype.DENY = function() {
- return this.getToken(TSqlParser.DENY, 0);
-};
-
-Alter_availability_group_optionsContext.prototype.FAILOVER = function() {
- return this.getToken(TSqlParser.FAILOVER, 0);
-};
-
-Alter_availability_group_optionsContext.prototype.FORCE_FAILOVER_ALLOW_DATA_LOSS = function() {
- return this.getToken(TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS, 0);
-};
-
-Alter_availability_group_optionsContext.prototype.LISTENER = function() {
- return this.getToken(TSqlParser.LISTENER, 0);
-};
-
-Alter_availability_group_optionsContext.prototype.DHCP = function() {
- return this.getToken(TSqlParser.DHCP, 0);
-};
-
-Alter_availability_group_optionsContext.prototype.IP = function() {
- return this.getToken(TSqlParser.IP, 0);
-};
-
-Alter_availability_group_optionsContext.prototype.IPV4_ADDR = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.IPV4_ADDR);
- } else {
- return this.getToken(TSqlParser.IPV4_ADDR, i);
- }
-};
-
-
-Alter_availability_group_optionsContext.prototype.PORT = function() {
- return this.getToken(TSqlParser.PORT, 0);
-};
-
-Alter_availability_group_optionsContext.prototype.IPV6_ADDR = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.IPV6_ADDR);
- } else {
- return this.getToken(TSqlParser.IPV6_ADDR, i);
- }
-};
-
-
-Alter_availability_group_optionsContext.prototype.RESTART = function() {
- return this.getToken(TSqlParser.RESTART, 0);
-};
-
-Alter_availability_group_optionsContext.prototype.OFFLINE = function() {
- return this.getToken(TSqlParser.OFFLINE, 0);
-};
-
-Alter_availability_group_optionsContext.prototype.DTC_SUPPORT = function() {
- return this.getToken(TSqlParser.DTC_SUPPORT, 0);
-};
-
-Alter_availability_group_optionsContext.prototype.PER_DB = function() {
- return this.getToken(TSqlParser.PER_DB, 0);
-};
-
-Alter_availability_group_optionsContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_availability_group_options(this);
- }
-};
-
-Alter_availability_group_optionsContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_availability_group_options(this);
- }
-};
-
-Alter_availability_group_optionsContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_availability_group_options(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_availability_group_optionsContext = Alter_availability_group_optionsContext;
-
-TSqlParser.prototype.alter_availability_group_options = function() {
-
- var localctx = new Alter_availability_group_optionsContext(this, this._ctx, this.state);
- this.enterRule(localctx, 160, TSqlParser.RULE_alter_availability_group_options);
- var _la = 0; // Token type
- try {
- this.state = 2191;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,141,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 1841;
- this.match(TSqlParser.SET);
- this.state = 1842;
- this.match(TSqlParser.LR_BRACKET);
-
- this.state = 1858;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.AUTOMATED_BACKUP_PREFERENCE:
- this.state = 1843;
- this.match(TSqlParser.AUTOMATED_BACKUP_PREFERENCE);
- this.state = 1844;
- this.match(TSqlParser.EQUAL);
- this.state = 1845;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.NONE || _la===TSqlParser.PRIMARY || _la===TSqlParser.SECONDARY || _la===TSqlParser.SECONDARY_ONLY)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- this.state = 1846;
- this.match(TSqlParser.FAILURE_CONDITION_LEVEL);
- this.state = 1847;
- this.match(TSqlParser.EQUAL);
- this.state = 1848;
- this.match(TSqlParser.DECIMAL);
- break;
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- this.state = 1849;
- this.match(TSqlParser.HEALTH_CHECK_TIMEOUT);
- this.state = 1850;
- this.match(TSqlParser.EQUAL);
- this.state = 1851;
- localctx.milliseconds = this.match(TSqlParser.DECIMAL);
- break;
- case TSqlParser.DB_FAILOVER:
- this.state = 1852;
- this.match(TSqlParser.DB_FAILOVER);
- this.state = 1853;
- this.match(TSqlParser.EQUAL);
- this.state = 1854;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- this.state = 1855;
- this.match(TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT);
- this.state = 1856;
- this.match(TSqlParser.EQUAL);
- this.state = 1857;
- this.match(TSqlParser.DECIMAL);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 1860;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 1861;
- this.match(TSqlParser.ADD);
- this.state = 1862;
- this.match(TSqlParser.DATABASE);
- this.state = 1863;
- localctx.database_name = this.id();
- break;
-
- case 3:
- this.enterOuterAlt(localctx, 3);
- this.state = 1864;
- this.match(TSqlParser.REMOVE);
- this.state = 1865;
- this.match(TSqlParser.DATABASE);
- this.state = 1866;
- localctx.database_name = this.id();
- break;
-
- case 4:
- this.enterOuterAlt(localctx, 4);
- this.state = 1867;
- this.match(TSqlParser.ADD);
- this.state = 1868;
- this.match(TSqlParser.REPLICA);
- this.state = 1869;
- this.match(TSqlParser.ON);
- this.state = 1870;
- localctx.server_instance = this.match(TSqlParser.STRING);
-
- this.state = 1871;
- this.match(TSqlParser.WITH);
- this.state = 1872;
- this.match(TSqlParser.LR_BRACKET);
-
- this.state = 1876;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.ENDPOINT_URL) {
- this.state = 1873;
- this.match(TSqlParser.ENDPOINT_URL);
- this.state = 1874;
- this.match(TSqlParser.EQUAL);
- this.state = 1875;
- this.match(TSqlParser.STRING);
- }
-
- this.state = 1884;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,101,this._ctx);
- if(la_===1) {
- this.state = 1879;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 1878;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 1881;
- this.match(TSqlParser.AVAILABILITY_MODE);
- this.state = 1882;
- this.match(TSqlParser.EQUAL);
- this.state = 1883;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.ASYNCHRONOUS_COMMIT || _la===TSqlParser.SYNCHRONOUS_COMMIT)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
-
- }
- this.state = 1892;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,103,this._ctx);
- if(la_===1) {
- this.state = 1887;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 1886;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 1889;
- this.match(TSqlParser.FAILOVER_MODE);
- this.state = 1890;
- this.match(TSqlParser.EQUAL);
- this.state = 1891;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.AUTOMATIC || _la===TSqlParser.MANUAL)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
-
- }
- this.state = 1900;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,105,this._ctx);
- if(la_===1) {
- this.state = 1895;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 1894;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 1897;
- this.match(TSqlParser.SEEDING_MODE);
- this.state = 1898;
- this.match(TSqlParser.EQUAL);
- this.state = 1899;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.AUTOMATIC || _la===TSqlParser.MANUAL)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
-
- }
- this.state = 1908;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,107,this._ctx);
- if(la_===1) {
- this.state = 1903;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 1902;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 1905;
- this.match(TSqlParser.BACKUP_PRIORITY);
- this.state = 1906;
- this.match(TSqlParser.EQUAL);
- this.state = 1907;
- this.match(TSqlParser.DECIMAL);
-
- }
- this.state = 1919;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,109,this._ctx);
- if(la_===1) {
- this.state = 1911;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 1910;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 1913;
- this.match(TSqlParser.PRIMARY_ROLE);
- this.state = 1914;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 1915;
- this.match(TSqlParser.ALLOW_CONNECTIONS);
- this.state = 1916;
- this.match(TSqlParser.EQUAL);
- this.state = 1917;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.ALL || _la===TSqlParser.READ_WRITE)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 1918;
- this.match(TSqlParser.RR_BRACKET);
-
- }
- this.state = 1930;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.SECONDARY_ROLE || _la===TSqlParser.COMMA) {
- this.state = 1922;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 1921;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 1924;
- this.match(TSqlParser.SECONDARY_ROLE);
- this.state = 1925;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 1926;
- this.match(TSqlParser.ALLOW_CONNECTIONS);
- this.state = 1927;
- this.match(TSqlParser.EQUAL);
-
- this.state = 1928;
- this.match(TSqlParser.READ_ONLY);
- this.state = 1929;
- this.match(TSqlParser.RR_BRACKET);
- }
-
- this.state = 1932;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- case 5:
- this.enterOuterAlt(localctx, 5);
- this.state = 1933;
- this.match(TSqlParser.SECONDARY_ROLE);
- this.state = 1934;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 1943;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.ALLOW_CONNECTIONS:
- this.state = 1935;
- this.match(TSqlParser.ALLOW_CONNECTIONS);
- this.state = 1936;
- this.match(TSqlParser.EQUAL);
- this.state = 1937;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.ALL || _la===TSqlParser.NO || _la===TSqlParser.READ_ONLY)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- this.state = 1938;
- this.match(TSqlParser.READ_ONLY_ROUTING_LIST);
- this.state = 1939;
- this.match(TSqlParser.EQUAL);
-
- this.state = 1940;
- this.match(TSqlParser.LR_BRACKET);
-
- this.state = 1941;
- this.match(TSqlParser.STRING);
- this.state = 1942;
- this.match(TSqlParser.RR_BRACKET);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
-
- case 6:
- this.enterOuterAlt(localctx, 6);
- this.state = 1945;
- this.match(TSqlParser.PRIMARY_ROLE);
- this.state = 1946;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 1969;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.ALLOW_CONNECTIONS:
- this.state = 1947;
- this.match(TSqlParser.ALLOW_CONNECTIONS);
- this.state = 1948;
- this.match(TSqlParser.EQUAL);
- this.state = 1949;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.ALL || _la===TSqlParser.NO || _la===TSqlParser.READ_ONLY)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- this.state = 1950;
- this.match(TSqlParser.READ_ONLY_ROUTING_LIST);
- this.state = 1951;
- this.match(TSqlParser.EQUAL);
-
- this.state = 1952;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 1963;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.STRING:
- case TSqlParser.RR_BRACKET:
- case TSqlParser.COMMA:
- this.state = 1959;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.STRING || _la===TSqlParser.COMMA) {
- this.state = 1954;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 1953;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 1956;
- this.match(TSqlParser.STRING);
- this.state = 1961;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- break;
- case TSqlParser.NONE:
- this.state = 1962;
- this.match(TSqlParser.NONE);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 1965;
- this.match(TSqlParser.RR_BRACKET);
- break;
- case TSqlParser.SESSION_TIMEOUT:
- this.state = 1966;
- this.match(TSqlParser.SESSION_TIMEOUT);
- this.state = 1967;
- this.match(TSqlParser.EQUAL);
- this.state = 1968;
- localctx.session_timeout = this.match(TSqlParser.DECIMAL);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
-
- case 7:
- this.enterOuterAlt(localctx, 7);
- this.state = 1971;
- this.match(TSqlParser.MODIFY);
- this.state = 1972;
- this.match(TSqlParser.REPLICA);
- this.state = 1973;
- this.match(TSqlParser.ON);
- this.state = 1974;
- localctx.server_instance = this.match(TSqlParser.STRING);
- this.state = 2032;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.WITH:
- this.state = 1975;
- this.match(TSqlParser.WITH);
- this.state = 1976;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 1992;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.ENDPOINT_URL:
- this.state = 1977;
- this.match(TSqlParser.ENDPOINT_URL);
- this.state = 1978;
- this.match(TSqlParser.EQUAL);
- this.state = 1979;
- this.match(TSqlParser.STRING);
- break;
- case TSqlParser.AVAILABILITY_MODE:
- this.state = 1980;
- this.match(TSqlParser.AVAILABILITY_MODE);
- this.state = 1981;
- this.match(TSqlParser.EQUAL);
- this.state = 1982;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.ASYNCHRONOUS_COMMIT || _la===TSqlParser.SYNCHRONOUS_COMMIT)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- case TSqlParser.FAILOVER_MODE:
- this.state = 1983;
- this.match(TSqlParser.FAILOVER_MODE);
- this.state = 1984;
- this.match(TSqlParser.EQUAL);
- this.state = 1985;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.AUTOMATIC || _la===TSqlParser.MANUAL)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- case TSqlParser.SEEDING_MODE:
- this.state = 1986;
- this.match(TSqlParser.SEEDING_MODE);
- this.state = 1987;
- this.match(TSqlParser.EQUAL);
- this.state = 1988;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.AUTOMATIC || _la===TSqlParser.MANUAL)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- case TSqlParser.BACKUP_PRIORITY:
- this.state = 1989;
- this.match(TSqlParser.BACKUP_PRIORITY);
- this.state = 1990;
- this.match(TSqlParser.EQUAL);
- this.state = 1991;
- this.match(TSqlParser.DECIMAL);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
- case TSqlParser.SECONDARY_ROLE:
- this.state = 1994;
- this.match(TSqlParser.SECONDARY_ROLE);
- this.state = 1995;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 2004;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.ALLOW_CONNECTIONS:
- this.state = 1996;
- this.match(TSqlParser.ALLOW_CONNECTIONS);
- this.state = 1997;
- this.match(TSqlParser.EQUAL);
- this.state = 1998;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.ALL || _la===TSqlParser.NO || _la===TSqlParser.READ_ONLY)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- this.state = 1999;
- this.match(TSqlParser.READ_ONLY_ROUTING_LIST);
- this.state = 2000;
- this.match(TSqlParser.EQUAL);
-
- this.state = 2001;
- this.match(TSqlParser.LR_BRACKET);
-
- this.state = 2002;
- this.match(TSqlParser.STRING);
- this.state = 2003;
- this.match(TSqlParser.RR_BRACKET);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
- case TSqlParser.PRIMARY_ROLE:
- this.state = 2006;
- this.match(TSqlParser.PRIMARY_ROLE);
- this.state = 2007;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 2030;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.ALLOW_CONNECTIONS:
- this.state = 2008;
- this.match(TSqlParser.ALLOW_CONNECTIONS);
- this.state = 2009;
- this.match(TSqlParser.EQUAL);
- this.state = 2010;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.ALL || _la===TSqlParser.NO || _la===TSqlParser.READ_ONLY)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- this.state = 2011;
- this.match(TSqlParser.READ_ONLY_ROUTING_LIST);
- this.state = 2012;
- this.match(TSqlParser.EQUAL);
-
- this.state = 2013;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 2024;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.STRING:
- case TSqlParser.RR_BRACKET:
- case TSqlParser.COMMA:
- this.state = 2020;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.STRING || _la===TSqlParser.COMMA) {
- this.state = 2015;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 2014;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 2017;
- this.match(TSqlParser.STRING);
- this.state = 2022;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- break;
- case TSqlParser.NONE:
- this.state = 2023;
- this.match(TSqlParser.NONE);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 2026;
- this.match(TSqlParser.RR_BRACKET);
- break;
- case TSqlParser.SESSION_TIMEOUT:
- this.state = 2027;
- this.match(TSqlParser.SESSION_TIMEOUT);
- this.state = 2028;
- this.match(TSqlParser.EQUAL);
- this.state = 2029;
- localctx.session_timeout = this.match(TSqlParser.DECIMAL);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 2034;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- case 8:
- this.enterOuterAlt(localctx, 8);
- this.state = 2035;
- this.match(TSqlParser.REMOVE);
- this.state = 2036;
- this.match(TSqlParser.REPLICA);
- this.state = 2037;
- this.match(TSqlParser.ON);
- this.state = 2038;
- this.match(TSqlParser.STRING);
- break;
-
- case 9:
- this.enterOuterAlt(localctx, 9);
- this.state = 2039;
- this.match(TSqlParser.JOIN);
- break;
-
- case 10:
- this.enterOuterAlt(localctx, 10);
- this.state = 2040;
- this.match(TSqlParser.JOIN);
- this.state = 2041;
- this.match(TSqlParser.AVAILABILITY);
- this.state = 2042;
- this.match(TSqlParser.GROUP);
- this.state = 2043;
- this.match(TSqlParser.ON);
- this.state = 2066;
- this._errHandler.sync(this);
- var _alt = 1;
- do {
- switch (_alt) {
- case 1:
- this.state = 2045;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 2044;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 2047;
- localctx.ag_name = this.match(TSqlParser.STRING);
- this.state = 2048;
- this.match(TSqlParser.WITH);
- this.state = 2049;
- this.match(TSqlParser.LR_BRACKET);
-
- this.state = 2050;
- this.match(TSqlParser.LISTENER_URL);
- this.state = 2051;
- this.match(TSqlParser.EQUAL);
- this.state = 2052;
- this.match(TSqlParser.STRING);
- this.state = 2053;
- this.match(TSqlParser.COMMA);
- this.state = 2054;
- this.match(TSqlParser.AVAILABILITY_MODE);
- this.state = 2055;
- this.match(TSqlParser.EQUAL);
- this.state = 2056;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.ASYNCHRONOUS_COMMIT || _la===TSqlParser.SYNCHRONOUS_COMMIT)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 2057;
- this.match(TSqlParser.COMMA);
- this.state = 2058;
- this.match(TSqlParser.FAILOVER_MODE);
- this.state = 2059;
- this.match(TSqlParser.EQUAL);
- this.state = 2060;
- this.match(TSqlParser.MANUAL);
- this.state = 2061;
- this.match(TSqlParser.COMMA);
- this.state = 2062;
- this.match(TSqlParser.SEEDING_MODE);
- this.state = 2063;
- this.match(TSqlParser.EQUAL);
- this.state = 2064;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.AUTOMATIC || _la===TSqlParser.MANUAL)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 2065;
- this.match(TSqlParser.RR_BRACKET);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 2068;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,125, this._ctx);
- } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
- break;
-
- case 11:
- this.enterOuterAlt(localctx, 11);
- this.state = 2070;
- this.match(TSqlParser.MODIFY);
- this.state = 2071;
- this.match(TSqlParser.AVAILABILITY);
- this.state = 2072;
- this.match(TSqlParser.GROUP);
- this.state = 2073;
- this.match(TSqlParser.ON);
- this.state = 2108;
- this._errHandler.sync(this);
- var _alt = 1;
- do {
- switch (_alt) {
- case 1:
- this.state = 2075;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 2074;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 2077;
- localctx.ag_name_modified = this.match(TSqlParser.STRING);
- this.state = 2078;
- this.match(TSqlParser.WITH);
- this.state = 2079;
- this.match(TSqlParser.LR_BRACKET);
-
- this.state = 2080;
- this.match(TSqlParser.LISTENER_URL);
- this.state = 2081;
- this.match(TSqlParser.EQUAL);
- this.state = 2082;
- this.match(TSqlParser.STRING);
- this.state = 2089;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,128,this._ctx);
- if(la_===1) {
- this.state = 2084;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 2083;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 2086;
- this.match(TSqlParser.AVAILABILITY_MODE);
- this.state = 2087;
- this.match(TSqlParser.EQUAL);
- this.state = 2088;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.ASYNCHRONOUS_COMMIT || _la===TSqlParser.SYNCHRONOUS_COMMIT)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
-
- }
- this.state = 2097;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,130,this._ctx);
- if(la_===1) {
- this.state = 2092;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 2091;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 2094;
- this.match(TSqlParser.FAILOVER_MODE);
- this.state = 2095;
- this.match(TSqlParser.EQUAL);
- this.state = 2096;
- this.match(TSqlParser.MANUAL);
-
- }
- this.state = 2105;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.SEEDING_MODE || _la===TSqlParser.COMMA) {
- this.state = 2100;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 2099;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 2102;
- this.match(TSqlParser.SEEDING_MODE);
- this.state = 2103;
- this.match(TSqlParser.EQUAL);
- this.state = 2104;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.AUTOMATIC || _la===TSqlParser.MANUAL)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- }
-
- this.state = 2107;
- this.match(TSqlParser.RR_BRACKET);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 2110;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,133, this._ctx);
- } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
- break;
-
- case 12:
- this.enterOuterAlt(localctx, 12);
- this.state = 2112;
- this.match(TSqlParser.GRANT);
- this.state = 2113;
- this.match(TSqlParser.CREATE);
- this.state = 2114;
- this.match(TSqlParser.ANY);
- this.state = 2115;
- this.match(TSqlParser.DATABASE);
- break;
-
- case 13:
- this.enterOuterAlt(localctx, 13);
- this.state = 2116;
- this.match(TSqlParser.DENY);
- this.state = 2117;
- this.match(TSqlParser.CREATE);
- this.state = 2118;
- this.match(TSqlParser.ANY);
- this.state = 2119;
- this.match(TSqlParser.DATABASE);
- break;
-
- case 14:
- this.enterOuterAlt(localctx, 14);
- this.state = 2120;
- this.match(TSqlParser.FAILOVER);
- break;
-
- case 15:
- this.enterOuterAlt(localctx, 15);
- this.state = 2121;
- this.match(TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS);
- break;
-
- case 16:
- this.enterOuterAlt(localctx, 16);
- this.state = 2122;
- this.match(TSqlParser.ADD);
- this.state = 2123;
- this.match(TSqlParser.LISTENER);
- this.state = 2124;
- localctx.listener_name = this.match(TSqlParser.STRING);
- this.state = 2125;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 2159;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,138,this._ctx);
- switch(la_) {
- case 1:
- this.state = 2126;
- this.match(TSqlParser.WITH);
- this.state = 2127;
- this.match(TSqlParser.DHCP);
-
- this.state = 2128;
- this.match(TSqlParser.ON);
- this.state = 2129;
- this.match(TSqlParser.LR_BRACKET);
-
- this.state = 2130;
- this.match(TSqlParser.IPV4_ADDR);
- this.state = 2131;
- this.match(TSqlParser.IPV4_ADDR);
- this.state = 2133;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- case 2:
- this.state = 2134;
- this.match(TSqlParser.WITH);
- this.state = 2135;
- this.match(TSqlParser.IP);
- this.state = 2136;
- this.match(TSqlParser.LR_BRACKET);
-
- this.state = 2148;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- do {
- this.state = 2138;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 2137;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 2140;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 2145;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.IPV4_ADDR:
- this.state = 2141;
- this.match(TSqlParser.IPV4_ADDR);
- this.state = 2142;
- this.match(TSqlParser.COMMA);
- this.state = 2143;
- this.match(TSqlParser.IPV4_ADDR);
- break;
- case TSqlParser.IPV6_ADDR:
- this.state = 2144;
- this.match(TSqlParser.IPV6_ADDR);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 2147;
- this.match(TSqlParser.RR_BRACKET);
- this.state = 2150;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- } while(_la===TSqlParser.LR_BRACKET || _la===TSqlParser.COMMA);
- this.state = 2152;
- this.match(TSqlParser.RR_BRACKET);
- this.state = 2157;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 2153;
- this.match(TSqlParser.COMMA);
- this.state = 2154;
- this.match(TSqlParser.PORT);
- this.state = 2155;
- this.match(TSqlParser.EQUAL);
- this.state = 2156;
- this.match(TSqlParser.DECIMAL);
- }
-
- break;
-
- }
- this.state = 2161;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- case 17:
- this.enterOuterAlt(localctx, 17);
- this.state = 2162;
- this.match(TSqlParser.MODIFY);
- this.state = 2163;
- this.match(TSqlParser.LISTENER);
- this.state = 2176;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.ADD:
- this.state = 2164;
- this.match(TSqlParser.ADD);
- this.state = 2165;
- this.match(TSqlParser.IP);
- this.state = 2166;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 2170;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.IPV4_ADDR:
- this.state = 2167;
- this.match(TSqlParser.IPV4_ADDR);
- this.state = 2168;
- this.match(TSqlParser.IPV4_ADDR);
- break;
- case TSqlParser.IPV6_ADDR:
- this.state = 2169;
- this.match(TSqlParser.IPV6_ADDR);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 2172;
- this.match(TSqlParser.RR_BRACKET);
- break;
- case TSqlParser.PORT:
- this.state = 2173;
- this.match(TSqlParser.PORT);
- this.state = 2174;
- this.match(TSqlParser.EQUAL);
- this.state = 2175;
- this.match(TSqlParser.DECIMAL);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
-
- case 18:
- this.enterOuterAlt(localctx, 18);
- this.state = 2178;
- this.match(TSqlParser.RESTART);
- this.state = 2179;
- this.match(TSqlParser.LISTENER);
- this.state = 2180;
- this.match(TSqlParser.STRING);
- break;
-
- case 19:
- this.enterOuterAlt(localctx, 19);
- this.state = 2181;
- this.match(TSqlParser.REMOVE);
- this.state = 2182;
- this.match(TSqlParser.LISTENER);
- this.state = 2183;
- this.match(TSqlParser.STRING);
- break;
-
- case 20:
- this.enterOuterAlt(localctx, 20);
- this.state = 2184;
- this.match(TSqlParser.OFFLINE);
- break;
-
- case 21:
- this.enterOuterAlt(localctx, 21);
- this.state = 2185;
- this.match(TSqlParser.WITH);
- this.state = 2186;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 2187;
- this.match(TSqlParser.DTC_SUPPORT);
- this.state = 2188;
- this.match(TSqlParser.EQUAL);
- this.state = 2189;
- this.match(TSqlParser.PER_DB);
- this.state = 2190;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_or_alter_broker_priorityContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_or_alter_broker_priority;
- this.ConversationPriorityName = null; // IdContext
- this.RemoteServiceName = null; // Token
- this.PriorityValue = null; // Token
- return this;
-}
-
-Create_or_alter_broker_priorityContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_or_alter_broker_priorityContext.prototype.constructor = Create_or_alter_broker_priorityContext;
-
-Create_or_alter_broker_priorityContext.prototype.BROKER = function() {
- return this.getToken(TSqlParser.BROKER, 0);
-};
-
-Create_or_alter_broker_priorityContext.prototype.PRIORITY = function() {
- return this.getToken(TSqlParser.PRIORITY, 0);
-};
-
-Create_or_alter_broker_priorityContext.prototype.FOR = function() {
- return this.getToken(TSqlParser.FOR, 0);
-};
-
-Create_or_alter_broker_priorityContext.prototype.CONVERSATION = function() {
- return this.getToken(TSqlParser.CONVERSATION, 0);
-};
-
-Create_or_alter_broker_priorityContext.prototype.SET = function() {
- return this.getToken(TSqlParser.SET, 0);
-};
-
-Create_or_alter_broker_priorityContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Create_or_alter_broker_priorityContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Create_or_alter_broker_priorityContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_or_alter_broker_priorityContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Create_or_alter_broker_priorityContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Create_or_alter_broker_priorityContext.prototype.CONTRACT_NAME = function() {
- return this.getToken(TSqlParser.CONTRACT_NAME, 0);
-};
-
-Create_or_alter_broker_priorityContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-Create_or_alter_broker_priorityContext.prototype.LOCAL_SERVICE_NAME = function() {
- return this.getToken(TSqlParser.LOCAL_SERVICE_NAME, 0);
-};
-
-Create_or_alter_broker_priorityContext.prototype.REMOTE_SERVICE_NAME = function() {
- return this.getToken(TSqlParser.REMOTE_SERVICE_NAME, 0);
-};
-
-Create_or_alter_broker_priorityContext.prototype.PRIORITY_LEVEL = function() {
- return this.getToken(TSqlParser.PRIORITY_LEVEL, 0);
-};
-
-Create_or_alter_broker_priorityContext.prototype.ANY = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ANY);
- } else {
- return this.getToken(TSqlParser.ANY, i);
- }
-};
-
-
-Create_or_alter_broker_priorityContext.prototype.DEFAULT = function() {
- return this.getToken(TSqlParser.DEFAULT, 0);
-};
-
-Create_or_alter_broker_priorityContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Create_or_alter_broker_priorityContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Create_or_alter_broker_priorityContext.prototype.DECIMAL = function() {
- return this.getToken(TSqlParser.DECIMAL, 0);
-};
-
-Create_or_alter_broker_priorityContext.prototype.DOUBLE_FORWARD_SLASH = function() {
- return this.getToken(TSqlParser.DOUBLE_FORWARD_SLASH, 0);
-};
-
-Create_or_alter_broker_priorityContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_or_alter_broker_priority(this);
- }
-};
-
-Create_or_alter_broker_priorityContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_or_alter_broker_priority(this);
- }
-};
-
-Create_or_alter_broker_priorityContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_or_alter_broker_priority(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_or_alter_broker_priorityContext = Create_or_alter_broker_priorityContext;
-
-TSqlParser.prototype.create_or_alter_broker_priority = function() {
-
- var localctx = new Create_or_alter_broker_priorityContext(this, this._ctx, this.state);
- this.enterRule(localctx, 162, TSqlParser.RULE_create_or_alter_broker_priority);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2193;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.ALTER || _la===TSqlParser.CREATE)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 2194;
- this.match(TSqlParser.BROKER);
- this.state = 2195;
- this.match(TSqlParser.PRIORITY);
- this.state = 2196;
- localctx.ConversationPriorityName = this.id();
- this.state = 2197;
- this.match(TSqlParser.FOR);
- this.state = 2198;
- this.match(TSqlParser.CONVERSATION);
- this.state = 2199;
- this.match(TSqlParser.SET);
- this.state = 2200;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 2210;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.CONTRACT_NAME) {
- this.state = 2201;
- this.match(TSqlParser.CONTRACT_NAME);
- this.state = 2202;
- this.match(TSqlParser.EQUAL);
- this.state = 2205;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.state = 2203;
- this.id();
- break;
- case TSqlParser.ANY:
- this.state = 2204;
- this.match(TSqlParser.ANY);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 2208;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 2207;
- this.match(TSqlParser.COMMA);
- }
-
- }
-
- this.state = 2224;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.LOCAL_SERVICE_NAME) {
- this.state = 2212;
- this.match(TSqlParser.LOCAL_SERVICE_NAME);
- this.state = 2213;
- this.match(TSqlParser.EQUAL);
- this.state = 2219;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.DOUBLE_FORWARD_SLASH:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.state = 2215;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.DOUBLE_FORWARD_SLASH) {
- this.state = 2214;
- this.match(TSqlParser.DOUBLE_FORWARD_SLASH);
- }
-
- this.state = 2217;
- this.id();
- break;
- case TSqlParser.ANY:
- this.state = 2218;
- this.match(TSqlParser.ANY);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 2222;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 2221;
- this.match(TSqlParser.COMMA);
- }
-
- }
-
- this.state = 2235;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.REMOTE_SERVICE_NAME) {
- this.state = 2226;
- this.match(TSqlParser.REMOTE_SERVICE_NAME);
- this.state = 2227;
- this.match(TSqlParser.EQUAL);
- this.state = 2230;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.STRING:
- this.state = 2228;
- localctx.RemoteServiceName = this.match(TSqlParser.STRING);
- break;
- case TSqlParser.ANY:
- this.state = 2229;
- this.match(TSqlParser.ANY);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 2233;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 2232;
- this.match(TSqlParser.COMMA);
- }
-
- }
-
- this.state = 2243;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.PRIORITY_LEVEL) {
- this.state = 2237;
- this.match(TSqlParser.PRIORITY_LEVEL);
- this.state = 2238;
- this.match(TSqlParser.EQUAL);
- this.state = 2241;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.DECIMAL:
- this.state = 2239;
- localctx.PriorityValue = this.match(TSqlParser.DECIMAL);
- break;
- case TSqlParser.DEFAULT:
- this.state = 2240;
- this.match(TSqlParser.DEFAULT);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- }
-
- this.state = 2245;
- this.match(TSqlParser.RR_BRACKET);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_broker_priorityContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_broker_priority;
- this.ConversationPriorityName = null; // IdContext
- return this;
-}
-
-Drop_broker_priorityContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_broker_priorityContext.prototype.constructor = Drop_broker_priorityContext;
-
-Drop_broker_priorityContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_broker_priorityContext.prototype.BROKER = function() {
- return this.getToken(TSqlParser.BROKER, 0);
-};
-
-Drop_broker_priorityContext.prototype.PRIORITY = function() {
- return this.getToken(TSqlParser.PRIORITY, 0);
-};
-
-Drop_broker_priorityContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Drop_broker_priorityContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_broker_priority(this);
- }
-};
-
-Drop_broker_priorityContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_broker_priority(this);
- }
-};
-
-Drop_broker_priorityContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_broker_priority(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_broker_priorityContext = Drop_broker_priorityContext;
-
-TSqlParser.prototype.drop_broker_priority = function() {
-
- var localctx = new Drop_broker_priorityContext(this, this._ctx, this.state);
- this.enterRule(localctx, 164, TSqlParser.RULE_drop_broker_priority);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2247;
- this.match(TSqlParser.DROP);
- this.state = 2248;
- this.match(TSqlParser.BROKER);
- this.state = 2249;
- this.match(TSqlParser.PRIORITY);
- this.state = 2250;
- localctx.ConversationPriorityName = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_certificateContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_certificate;
- this.certificate_name = null; // IdContext
- return this;
-}
-
-Alter_certificateContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_certificateContext.prototype.constructor = Alter_certificateContext;
-
-Alter_certificateContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Alter_certificateContext.prototype.CERTIFICATE = function() {
- return this.getToken(TSqlParser.CERTIFICATE, 0);
-};
-
-Alter_certificateContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Alter_certificateContext.prototype.REMOVE = function() {
- return this.getToken(TSqlParser.REMOVE, 0);
-};
-
-Alter_certificateContext.prototype.PRIVATE_KEY = function() {
- return this.getToken(TSqlParser.PRIVATE_KEY, 0);
-};
-
-Alter_certificateContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Alter_certificateContext.prototype.PRIVATE = function() {
- return this.getToken(TSqlParser.PRIVATE, 0);
-};
-
-Alter_certificateContext.prototype.KEY = function() {
- return this.getToken(TSqlParser.KEY, 0);
-};
-
-Alter_certificateContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Alter_certificateContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Alter_certificateContext.prototype.ACTIVE = function() {
- return this.getToken(TSqlParser.ACTIVE, 0);
-};
-
-Alter_certificateContext.prototype.FOR = function() {
- return this.getToken(TSqlParser.FOR, 0);
-};
-
-Alter_certificateContext.prototype.BEGIN_DIALOG = function() {
- return this.getToken(TSqlParser.BEGIN_DIALOG, 0);
-};
-
-Alter_certificateContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-Alter_certificateContext.prototype.ON = function() {
- return this.getToken(TSqlParser.ON, 0);
-};
-
-Alter_certificateContext.prototype.OFF = function() {
- return this.getToken(TSqlParser.OFF, 0);
-};
-
-Alter_certificateContext.prototype.FILE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.FILE);
- } else {
- return this.getToken(TSqlParser.FILE, i);
- }
-};
-
-
-Alter_certificateContext.prototype.STRING = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.STRING);
- } else {
- return this.getToken(TSqlParser.STRING, i);
- }
-};
-
-
-Alter_certificateContext.prototype.DECRYPTION = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DECRYPTION);
- } else {
- return this.getToken(TSqlParser.DECRYPTION, i);
- }
-};
-
-
-Alter_certificateContext.prototype.BY = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.BY);
- } else {
- return this.getToken(TSqlParser.BY, i);
- }
-};
-
-
-Alter_certificateContext.prototype.PASSWORD = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.PASSWORD);
- } else {
- return this.getToken(TSqlParser.PASSWORD, i);
- }
-};
-
-
-Alter_certificateContext.prototype.ENCRYPTION = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ENCRYPTION);
- } else {
- return this.getToken(TSqlParser.ENCRYPTION, i);
- }
-};
-
-
-Alter_certificateContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Alter_certificateContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_certificate(this);
- }
-};
-
-Alter_certificateContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_certificate(this);
- }
-};
-
-Alter_certificateContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_certificate(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_certificateContext = Alter_certificateContext;
-
-TSqlParser.prototype.alter_certificate = function() {
-
- var localctx = new Alter_certificateContext(this, this._ctx, this.state);
- this.enterRule(localctx, 166, TSqlParser.RULE_alter_certificate);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2252;
- this.match(TSqlParser.ALTER);
- this.state = 2253;
- this.match(TSqlParser.CERTIFICATE);
- this.state = 2254;
- localctx.certificate_name = this.id();
- this.state = 2294;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,159,this._ctx);
- switch(la_) {
- case 1:
- this.state = 2255;
- this.match(TSqlParser.REMOVE);
- this.state = 2256;
- this.match(TSqlParser.PRIVATE_KEY);
- break;
-
- case 2:
- this.state = 2257;
- this.match(TSqlParser.WITH);
- this.state = 2258;
- this.match(TSqlParser.PRIVATE);
- this.state = 2259;
- this.match(TSqlParser.KEY);
- this.state = 2260;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 2283;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- do {
- this.state = 2283;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.FILE:
- this.state = 2261;
- this.match(TSqlParser.FILE);
- this.state = 2262;
- this.match(TSqlParser.EQUAL);
- this.state = 2263;
- this.match(TSqlParser.STRING);
- this.state = 2265;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 2264;
- this.match(TSqlParser.COMMA);
- }
-
- break;
- case TSqlParser.DECRYPTION:
- this.state = 2267;
- this.match(TSqlParser.DECRYPTION);
- this.state = 2268;
- this.match(TSqlParser.BY);
- this.state = 2269;
- this.match(TSqlParser.PASSWORD);
- this.state = 2270;
- this.match(TSqlParser.EQUAL);
- this.state = 2271;
- this.match(TSqlParser.STRING);
- this.state = 2273;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 2272;
- this.match(TSqlParser.COMMA);
- }
-
- break;
- case TSqlParser.ENCRYPTION:
- this.state = 2275;
- this.match(TSqlParser.ENCRYPTION);
- this.state = 2276;
- this.match(TSqlParser.BY);
- this.state = 2277;
- this.match(TSqlParser.PASSWORD);
- this.state = 2278;
- this.match(TSqlParser.EQUAL);
- this.state = 2279;
- this.match(TSqlParser.STRING);
- this.state = 2281;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 2280;
- this.match(TSqlParser.COMMA);
- }
-
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 2285;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- } while(_la===TSqlParser.FILE || _la===TSqlParser.DECRYPTION || _la===TSqlParser.ENCRYPTION);
- this.state = 2287;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- case 3:
- this.state = 2288;
- this.match(TSqlParser.WITH);
- this.state = 2289;
- this.match(TSqlParser.ACTIVE);
- this.state = 2290;
- this.match(TSqlParser.FOR);
- this.state = 2291;
- this.match(TSqlParser.BEGIN_DIALOG);
- this.state = 2292;
- this.match(TSqlParser.EQUAL);
- this.state = 2293;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_column_encryption_keyContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_column_encryption_key;
- this.column_encryption_key = null; // IdContext
- this.column_master_key_name = null; // IdContext
- this.algorithm_name = null; // Token
- return this;
-}
-
-Alter_column_encryption_keyContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_column_encryption_keyContext.prototype.constructor = Alter_column_encryption_keyContext;
-
-Alter_column_encryption_keyContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Alter_column_encryption_keyContext.prototype.COLUMN = function() {
- return this.getToken(TSqlParser.COLUMN, 0);
-};
-
-Alter_column_encryption_keyContext.prototype.ENCRYPTION = function() {
- return this.getToken(TSqlParser.ENCRYPTION, 0);
-};
-
-Alter_column_encryption_keyContext.prototype.KEY = function() {
- return this.getToken(TSqlParser.KEY, 0);
-};
-
-Alter_column_encryption_keyContext.prototype.VALUE = function() {
- return this.getToken(TSqlParser.VALUE, 0);
-};
-
-Alter_column_encryption_keyContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Alter_column_encryption_keyContext.prototype.COLUMN_MASTER_KEY = function() {
- return this.getToken(TSqlParser.COLUMN_MASTER_KEY, 0);
-};
-
-Alter_column_encryption_keyContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-Alter_column_encryption_keyContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Alter_column_encryption_keyContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Alter_column_encryption_keyContext.prototype.ADD = function() {
- return this.getToken(TSqlParser.ADD, 0);
-};
-
-Alter_column_encryption_keyContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Alter_column_encryption_keyContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Alter_column_encryption_keyContext.prototype.ALGORITHM = function() {
- return this.getToken(TSqlParser.ALGORITHM, 0);
-};
-
-Alter_column_encryption_keyContext.prototype.ENCRYPTED_VALUE = function() {
- return this.getToken(TSqlParser.ENCRYPTED_VALUE, 0);
-};
-
-Alter_column_encryption_keyContext.prototype.BINARY = function() {
- return this.getToken(TSqlParser.BINARY, 0);
-};
-
-Alter_column_encryption_keyContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Alter_column_encryption_keyContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_column_encryption_key(this);
- }
-};
-
-Alter_column_encryption_keyContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_column_encryption_key(this);
- }
-};
-
-Alter_column_encryption_keyContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_column_encryption_key(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_column_encryption_keyContext = Alter_column_encryption_keyContext;
-
-TSqlParser.prototype.alter_column_encryption_key = function() {
-
- var localctx = new Alter_column_encryption_keyContext(this, this._ctx, this.state);
- this.enterRule(localctx, 168, TSqlParser.RULE_alter_column_encryption_key);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2296;
- this.match(TSqlParser.ALTER);
- this.state = 2297;
- this.match(TSqlParser.COLUMN);
- this.state = 2298;
- this.match(TSqlParser.ENCRYPTION);
- this.state = 2299;
- this.match(TSqlParser.KEY);
- this.state = 2300;
- localctx.column_encryption_key = this.id();
- this.state = 2301;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.ADD || _la===TSqlParser.DROP)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 2302;
- this.match(TSqlParser.VALUE);
- this.state = 2303;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 2304;
- this.match(TSqlParser.COLUMN_MASTER_KEY);
- this.state = 2305;
- this.match(TSqlParser.EQUAL);
- this.state = 2306;
- localctx.column_master_key_name = this.id();
- this.state = 2315;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 2307;
- this.match(TSqlParser.COMMA);
- this.state = 2308;
- this.match(TSqlParser.ALGORITHM);
- this.state = 2309;
- this.match(TSqlParser.EQUAL);
- this.state = 2310;
- localctx.algorithm_name = this.match(TSqlParser.STRING);
- this.state = 2311;
- this.match(TSqlParser.COMMA);
- this.state = 2312;
- this.match(TSqlParser.ENCRYPTED_VALUE);
- this.state = 2313;
- this.match(TSqlParser.EQUAL);
- this.state = 2314;
- this.match(TSqlParser.BINARY);
- }
-
- this.state = 2317;
- this.match(TSqlParser.RR_BRACKET);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_column_encryption_keyContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_column_encryption_key;
- this.column_encryption_key = null; // IdContext
- this.column_master_key_name = null; // IdContext
- this.algorithm_name = null; // Token
- this.encrypted_value = null; // Token
- return this;
-}
-
-Create_column_encryption_keyContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_column_encryption_keyContext.prototype.constructor = Create_column_encryption_keyContext;
-
-Create_column_encryption_keyContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_column_encryption_keyContext.prototype.COLUMN = function() {
- return this.getToken(TSqlParser.COLUMN, 0);
-};
-
-Create_column_encryption_keyContext.prototype.ENCRYPTION = function() {
- return this.getToken(TSqlParser.ENCRYPTION, 0);
-};
-
-Create_column_encryption_keyContext.prototype.KEY = function() {
- return this.getToken(TSqlParser.KEY, 0);
-};
-
-Create_column_encryption_keyContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Create_column_encryption_keyContext.prototype.VALUES = function() {
- return this.getToken(TSqlParser.VALUES, 0);
-};
-
-Create_column_encryption_keyContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Create_column_encryption_keyContext.prototype.LR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.LR_BRACKET);
- } else {
- return this.getToken(TSqlParser.LR_BRACKET, i);
- }
-};
-
-
-Create_column_encryption_keyContext.prototype.COLUMN_MASTER_KEY = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COLUMN_MASTER_KEY);
- } else {
- return this.getToken(TSqlParser.COLUMN_MASTER_KEY, i);
- }
-};
-
-
-Create_column_encryption_keyContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-Create_column_encryption_keyContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Create_column_encryption_keyContext.prototype.ALGORITHM = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ALGORITHM);
- } else {
- return this.getToken(TSqlParser.ALGORITHM, i);
- }
-};
-
-
-Create_column_encryption_keyContext.prototype.ENCRYPTED_VALUE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ENCRYPTED_VALUE);
- } else {
- return this.getToken(TSqlParser.ENCRYPTED_VALUE, i);
- }
-};
-
-
-Create_column_encryption_keyContext.prototype.RR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.RR_BRACKET);
- } else {
- return this.getToken(TSqlParser.RR_BRACKET, i);
- }
-};
-
-
-Create_column_encryption_keyContext.prototype.STRING = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.STRING);
- } else {
- return this.getToken(TSqlParser.STRING, i);
- }
-};
-
-
-Create_column_encryption_keyContext.prototype.BINARY = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.BINARY);
- } else {
- return this.getToken(TSqlParser.BINARY, i);
- }
-};
-
-
-Create_column_encryption_keyContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_column_encryption_key(this);
- }
-};
-
-Create_column_encryption_keyContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_column_encryption_key(this);
- }
-};
-
-Create_column_encryption_keyContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_column_encryption_key(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_column_encryption_keyContext = Create_column_encryption_keyContext;
-
-TSqlParser.prototype.create_column_encryption_key = function() {
-
- var localctx = new Create_column_encryption_keyContext(this, this._ctx, this.state);
- this.enterRule(localctx, 170, TSqlParser.RULE_create_column_encryption_key);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2319;
- this.match(TSqlParser.CREATE);
- this.state = 2320;
- this.match(TSqlParser.COLUMN);
- this.state = 2321;
- this.match(TSqlParser.ENCRYPTION);
- this.state = 2322;
- this.match(TSqlParser.KEY);
- this.state = 2323;
- localctx.column_encryption_key = this.id();
- this.state = 2324;
- this.match(TSqlParser.WITH);
- this.state = 2325;
- this.match(TSqlParser.VALUES);
- this.state = 2345;
- this._errHandler.sync(this);
- var _alt = 1;
- do {
- switch (_alt) {
- case 1:
- this.state = 2326;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 2328;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 2327;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 2330;
- this.match(TSqlParser.COLUMN_MASTER_KEY);
- this.state = 2331;
- this.match(TSqlParser.EQUAL);
- this.state = 2332;
- localctx.column_master_key_name = this.id();
- this.state = 2333;
- this.match(TSqlParser.COMMA);
- this.state = 2334;
- this.match(TSqlParser.ALGORITHM);
- this.state = 2335;
- this.match(TSqlParser.EQUAL);
- this.state = 2336;
- localctx.algorithm_name = this.match(TSqlParser.STRING);
- this.state = 2337;
- this.match(TSqlParser.COMMA);
- this.state = 2338;
- this.match(TSqlParser.ENCRYPTED_VALUE);
- this.state = 2339;
- this.match(TSqlParser.EQUAL);
- this.state = 2340;
- localctx.encrypted_value = this.match(TSqlParser.BINARY);
- this.state = 2341;
- this.match(TSqlParser.RR_BRACKET);
- this.state = 2343;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 2342;
- this.match(TSqlParser.COMMA);
- }
-
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 2347;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,163, this._ctx);
- } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_certificateContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_certificate;
- this.certificate_name = null; // IdContext
- return this;
-}
-
-Drop_certificateContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_certificateContext.prototype.constructor = Drop_certificateContext;
-
-Drop_certificateContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_certificateContext.prototype.CERTIFICATE = function() {
- return this.getToken(TSqlParser.CERTIFICATE, 0);
-};
-
-Drop_certificateContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Drop_certificateContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_certificate(this);
- }
-};
-
-Drop_certificateContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_certificate(this);
- }
-};
-
-Drop_certificateContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_certificate(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_certificateContext = Drop_certificateContext;
-
-TSqlParser.prototype.drop_certificate = function() {
-
- var localctx = new Drop_certificateContext(this, this._ctx, this.state);
- this.enterRule(localctx, 172, TSqlParser.RULE_drop_certificate);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2349;
- this.match(TSqlParser.DROP);
- this.state = 2350;
- this.match(TSqlParser.CERTIFICATE);
- this.state = 2351;
- localctx.certificate_name = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_column_encryption_keyContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_column_encryption_key;
- this.key_name = null; // IdContext
- return this;
-}
-
-Drop_column_encryption_keyContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_column_encryption_keyContext.prototype.constructor = Drop_column_encryption_keyContext;
-
-Drop_column_encryption_keyContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_column_encryption_keyContext.prototype.COLUMN = function() {
- return this.getToken(TSqlParser.COLUMN, 0);
-};
-
-Drop_column_encryption_keyContext.prototype.ENCRYPTION = function() {
- return this.getToken(TSqlParser.ENCRYPTION, 0);
-};
-
-Drop_column_encryption_keyContext.prototype.KEY = function() {
- return this.getToken(TSqlParser.KEY, 0);
-};
-
-Drop_column_encryption_keyContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Drop_column_encryption_keyContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_column_encryption_key(this);
- }
-};
-
-Drop_column_encryption_keyContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_column_encryption_key(this);
- }
-};
-
-Drop_column_encryption_keyContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_column_encryption_key(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_column_encryption_keyContext = Drop_column_encryption_keyContext;
-
-TSqlParser.prototype.drop_column_encryption_key = function() {
-
- var localctx = new Drop_column_encryption_keyContext(this, this._ctx, this.state);
- this.enterRule(localctx, 174, TSqlParser.RULE_drop_column_encryption_key);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2353;
- this.match(TSqlParser.DROP);
- this.state = 2354;
- this.match(TSqlParser.COLUMN);
- this.state = 2355;
- this.match(TSqlParser.ENCRYPTION);
- this.state = 2356;
- this.match(TSqlParser.KEY);
- this.state = 2357;
- localctx.key_name = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_column_master_keyContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_column_master_key;
- this.key_name = null; // IdContext
- return this;
-}
-
-Drop_column_master_keyContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_column_master_keyContext.prototype.constructor = Drop_column_master_keyContext;
-
-Drop_column_master_keyContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_column_master_keyContext.prototype.COLUMN = function() {
- return this.getToken(TSqlParser.COLUMN, 0);
-};
-
-Drop_column_master_keyContext.prototype.MASTER = function() {
- return this.getToken(TSqlParser.MASTER, 0);
-};
-
-Drop_column_master_keyContext.prototype.KEY = function() {
- return this.getToken(TSqlParser.KEY, 0);
-};
-
-Drop_column_master_keyContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Drop_column_master_keyContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_column_master_key(this);
- }
-};
-
-Drop_column_master_keyContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_column_master_key(this);
- }
-};
-
-Drop_column_master_keyContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_column_master_key(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_column_master_keyContext = Drop_column_master_keyContext;
-
-TSqlParser.prototype.drop_column_master_key = function() {
-
- var localctx = new Drop_column_master_keyContext(this, this._ctx, this.state);
- this.enterRule(localctx, 176, TSqlParser.RULE_drop_column_master_key);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2359;
- this.match(TSqlParser.DROP);
- this.state = 2360;
- this.match(TSqlParser.COLUMN);
- this.state = 2361;
- this.match(TSqlParser.MASTER);
- this.state = 2362;
- this.match(TSqlParser.KEY);
- this.state = 2363;
- localctx.key_name = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_contractContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_contract;
- this.dropped_contract_name = null; // IdContext
- return this;
-}
-
-Drop_contractContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_contractContext.prototype.constructor = Drop_contractContext;
-
-Drop_contractContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_contractContext.prototype.CONTRACT = function() {
- return this.getToken(TSqlParser.CONTRACT, 0);
-};
-
-Drop_contractContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Drop_contractContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_contract(this);
- }
-};
-
-Drop_contractContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_contract(this);
- }
-};
-
-Drop_contractContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_contract(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_contractContext = Drop_contractContext;
-
-TSqlParser.prototype.drop_contract = function() {
-
- var localctx = new Drop_contractContext(this, this._ctx, this.state);
- this.enterRule(localctx, 178, TSqlParser.RULE_drop_contract);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2365;
- this.match(TSqlParser.DROP);
- this.state = 2366;
- this.match(TSqlParser.CONTRACT);
- this.state = 2367;
- localctx.dropped_contract_name = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_credentialContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_credential;
- this.credential_name = null; // IdContext
- return this;
-}
-
-Drop_credentialContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_credentialContext.prototype.constructor = Drop_credentialContext;
-
-Drop_credentialContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_credentialContext.prototype.CREDENTIAL = function() {
- return this.getToken(TSqlParser.CREDENTIAL, 0);
-};
-
-Drop_credentialContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Drop_credentialContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_credential(this);
- }
-};
-
-Drop_credentialContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_credential(this);
- }
-};
-
-Drop_credentialContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_credential(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_credentialContext = Drop_credentialContext;
-
-TSqlParser.prototype.drop_credential = function() {
-
- var localctx = new Drop_credentialContext(this, this._ctx, this.state);
- this.enterRule(localctx, 180, TSqlParser.RULE_drop_credential);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2369;
- this.match(TSqlParser.DROP);
- this.state = 2370;
- this.match(TSqlParser.CREDENTIAL);
- this.state = 2371;
- localctx.credential_name = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_cryptograhic_providerContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_cryptograhic_provider;
- this.provider_name = null; // IdContext
- return this;
-}
-
-Drop_cryptograhic_providerContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_cryptograhic_providerContext.prototype.constructor = Drop_cryptograhic_providerContext;
-
-Drop_cryptograhic_providerContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_cryptograhic_providerContext.prototype.CRYPTOGRAPHIC = function() {
- return this.getToken(TSqlParser.CRYPTOGRAPHIC, 0);
-};
-
-Drop_cryptograhic_providerContext.prototype.PROVIDER = function() {
- return this.getToken(TSqlParser.PROVIDER, 0);
-};
-
-Drop_cryptograhic_providerContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Drop_cryptograhic_providerContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_cryptograhic_provider(this);
- }
-};
-
-Drop_cryptograhic_providerContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_cryptograhic_provider(this);
- }
-};
-
-Drop_cryptograhic_providerContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_cryptograhic_provider(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_cryptograhic_providerContext = Drop_cryptograhic_providerContext;
-
-TSqlParser.prototype.drop_cryptograhic_provider = function() {
-
- var localctx = new Drop_cryptograhic_providerContext(this, this._ctx, this.state);
- this.enterRule(localctx, 182, TSqlParser.RULE_drop_cryptograhic_provider);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2373;
- this.match(TSqlParser.DROP);
- this.state = 2374;
- this.match(TSqlParser.CRYPTOGRAPHIC);
- this.state = 2375;
- this.match(TSqlParser.PROVIDER);
- this.state = 2376;
- localctx.provider_name = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_databaseContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_database;
- this.database_name_or_database_snapshot_name = null; // IdContext
- return this;
-}
-
-Drop_databaseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_databaseContext.prototype.constructor = Drop_databaseContext;
-
-Drop_databaseContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_databaseContext.prototype.DATABASE = function() {
- return this.getToken(TSqlParser.DATABASE, 0);
-};
-
-Drop_databaseContext.prototype.IF = function() {
- return this.getToken(TSqlParser.IF, 0);
-};
-
-Drop_databaseContext.prototype.EXISTS = function() {
- return this.getToken(TSqlParser.EXISTS, 0);
-};
-
-Drop_databaseContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Drop_databaseContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Drop_databaseContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_database(this);
- }
-};
-
-Drop_databaseContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_database(this);
- }
-};
-
-Drop_databaseContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_database(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_databaseContext = Drop_databaseContext;
-
-TSqlParser.prototype.drop_database = function() {
-
- var localctx = new Drop_databaseContext(this, this._ctx, this.state);
- this.enterRule(localctx, 184, TSqlParser.RULE_drop_database);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2378;
- this.match(TSqlParser.DROP);
- this.state = 2379;
- this.match(TSqlParser.DATABASE);
- this.state = 2382;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.IF) {
- this.state = 2380;
- this.match(TSqlParser.IF);
- this.state = 2381;
- this.match(TSqlParser.EXISTS);
- }
-
- this.state = 2388;
- this._errHandler.sync(this);
- var _alt = 1;
- do {
- switch (_alt) {
- case 1:
- this.state = 2385;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 2384;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 2387;
- localctx.database_name_or_database_snapshot_name = this.id();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 2390;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,166, this._ctx);
- } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_database_audit_specificationContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_database_audit_specification;
- this.audit_specification_name = null; // IdContext
- return this;
-}
-
-Drop_database_audit_specificationContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_database_audit_specificationContext.prototype.constructor = Drop_database_audit_specificationContext;
-
-Drop_database_audit_specificationContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_database_audit_specificationContext.prototype.DATABASE = function() {
- return this.getToken(TSqlParser.DATABASE, 0);
-};
-
-Drop_database_audit_specificationContext.prototype.AUDIT = function() {
- return this.getToken(TSqlParser.AUDIT, 0);
-};
-
-Drop_database_audit_specificationContext.prototype.SPECIFICATION = function() {
- return this.getToken(TSqlParser.SPECIFICATION, 0);
-};
-
-Drop_database_audit_specificationContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Drop_database_audit_specificationContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_database_audit_specification(this);
- }
-};
-
-Drop_database_audit_specificationContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_database_audit_specification(this);
- }
-};
-
-Drop_database_audit_specificationContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_database_audit_specification(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_database_audit_specificationContext = Drop_database_audit_specificationContext;
-
-TSqlParser.prototype.drop_database_audit_specification = function() {
-
- var localctx = new Drop_database_audit_specificationContext(this, this._ctx, this.state);
- this.enterRule(localctx, 186, TSqlParser.RULE_drop_database_audit_specification);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2392;
- this.match(TSqlParser.DROP);
- this.state = 2393;
- this.match(TSqlParser.DATABASE);
- this.state = 2394;
- this.match(TSqlParser.AUDIT);
- this.state = 2395;
- this.match(TSqlParser.SPECIFICATION);
- this.state = 2396;
- localctx.audit_specification_name = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_database_scoped_credentialContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_database_scoped_credential;
- this.credential_name = null; // IdContext
- return this;
-}
-
-Drop_database_scoped_credentialContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_database_scoped_credentialContext.prototype.constructor = Drop_database_scoped_credentialContext;
-
-Drop_database_scoped_credentialContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_database_scoped_credentialContext.prototype.DATABASE = function() {
- return this.getToken(TSqlParser.DATABASE, 0);
-};
-
-Drop_database_scoped_credentialContext.prototype.SCOPED = function() {
- return this.getToken(TSqlParser.SCOPED, 0);
-};
-
-Drop_database_scoped_credentialContext.prototype.CREDENTIAL = function() {
- return this.getToken(TSqlParser.CREDENTIAL, 0);
-};
-
-Drop_database_scoped_credentialContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Drop_database_scoped_credentialContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_database_scoped_credential(this);
- }
-};
-
-Drop_database_scoped_credentialContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_database_scoped_credential(this);
- }
-};
-
-Drop_database_scoped_credentialContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_database_scoped_credential(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_database_scoped_credentialContext = Drop_database_scoped_credentialContext;
-
-TSqlParser.prototype.drop_database_scoped_credential = function() {
-
- var localctx = new Drop_database_scoped_credentialContext(this, this._ctx, this.state);
- this.enterRule(localctx, 188, TSqlParser.RULE_drop_database_scoped_credential);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2398;
- this.match(TSqlParser.DROP);
- this.state = 2399;
- this.match(TSqlParser.DATABASE);
- this.state = 2400;
- this.match(TSqlParser.SCOPED);
- this.state = 2401;
- this.match(TSqlParser.CREDENTIAL);
- this.state = 2402;
- localctx.credential_name = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_defaultContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_default;
- this.schema_name = null; // IdContext
- this.default_name = null; // IdContext
- return this;
-}
-
-Drop_defaultContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_defaultContext.prototype.constructor = Drop_defaultContext;
-
-Drop_defaultContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_defaultContext.prototype.DEFAULT = function() {
- return this.getToken(TSqlParser.DEFAULT, 0);
-};
-
-Drop_defaultContext.prototype.IF = function() {
- return this.getToken(TSqlParser.IF, 0);
-};
-
-Drop_defaultContext.prototype.EXISTS = function() {
- return this.getToken(TSqlParser.EXISTS, 0);
-};
-
-Drop_defaultContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Drop_defaultContext.prototype.COMMA = function() {
- return this.getToken(TSqlParser.COMMA, 0);
-};
-
-Drop_defaultContext.prototype.DOT = function() {
- return this.getToken(TSqlParser.DOT, 0);
-};
-
-Drop_defaultContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_default(this);
- }
-};
-
-Drop_defaultContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_default(this);
- }
-};
-
-Drop_defaultContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_default(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_defaultContext = Drop_defaultContext;
-
-TSqlParser.prototype.drop_default = function() {
-
- var localctx = new Drop_defaultContext(this, this._ctx, this.state);
- this.enterRule(localctx, 190, TSqlParser.RULE_drop_default);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2404;
- this.match(TSqlParser.DROP);
- this.state = 2405;
- this.match(TSqlParser.DEFAULT);
- this.state = 2408;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.IF) {
- this.state = 2406;
- this.match(TSqlParser.IF);
- this.state = 2407;
- this.match(TSqlParser.EXISTS);
- }
-
- this.state = 2411;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 2410;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 2416;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,169,this._ctx);
- if(la_===1) {
- this.state = 2413;
- localctx.schema_name = this.id();
- this.state = 2414;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 2418;
- localctx.default_name = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_endpointContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_endpoint;
- this.endPointName = null; // IdContext
- return this;
-}
-
-Drop_endpointContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_endpointContext.prototype.constructor = Drop_endpointContext;
-
-Drop_endpointContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_endpointContext.prototype.ENDPOINT = function() {
- return this.getToken(TSqlParser.ENDPOINT, 0);
-};
-
-Drop_endpointContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Drop_endpointContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_endpoint(this);
- }
-};
-
-Drop_endpointContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_endpoint(this);
- }
-};
-
-Drop_endpointContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_endpoint(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_endpointContext = Drop_endpointContext;
-
-TSqlParser.prototype.drop_endpoint = function() {
-
- var localctx = new Drop_endpointContext(this, this._ctx, this.state);
- this.enterRule(localctx, 192, TSqlParser.RULE_drop_endpoint);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2420;
- this.match(TSqlParser.DROP);
- this.state = 2421;
- this.match(TSqlParser.ENDPOINT);
- this.state = 2422;
- localctx.endPointName = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_external_data_sourceContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_external_data_source;
- this.external_data_source_name = null; // IdContext
- return this;
-}
-
-Drop_external_data_sourceContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_external_data_sourceContext.prototype.constructor = Drop_external_data_sourceContext;
-
-Drop_external_data_sourceContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_external_data_sourceContext.prototype.EXTERNAL = function() {
- return this.getToken(TSqlParser.EXTERNAL, 0);
-};
-
-Drop_external_data_sourceContext.prototype.DATA = function() {
- return this.getToken(TSqlParser.DATA, 0);
-};
-
-Drop_external_data_sourceContext.prototype.SOURCE = function() {
- return this.getToken(TSqlParser.SOURCE, 0);
-};
-
-Drop_external_data_sourceContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Drop_external_data_sourceContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_external_data_source(this);
- }
-};
-
-Drop_external_data_sourceContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_external_data_source(this);
- }
-};
-
-Drop_external_data_sourceContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_external_data_source(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_external_data_sourceContext = Drop_external_data_sourceContext;
-
-TSqlParser.prototype.drop_external_data_source = function() {
-
- var localctx = new Drop_external_data_sourceContext(this, this._ctx, this.state);
- this.enterRule(localctx, 194, TSqlParser.RULE_drop_external_data_source);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2424;
- this.match(TSqlParser.DROP);
- this.state = 2425;
- this.match(TSqlParser.EXTERNAL);
- this.state = 2426;
- this.match(TSqlParser.DATA);
- this.state = 2427;
- this.match(TSqlParser.SOURCE);
- this.state = 2428;
- localctx.external_data_source_name = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_external_file_formatContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_external_file_format;
- this.external_file_format_name = null; // IdContext
- return this;
-}
-
-Drop_external_file_formatContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_external_file_formatContext.prototype.constructor = Drop_external_file_formatContext;
-
-Drop_external_file_formatContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_external_file_formatContext.prototype.EXTERNAL = function() {
- return this.getToken(TSqlParser.EXTERNAL, 0);
-};
-
-Drop_external_file_formatContext.prototype.FILE = function() {
- return this.getToken(TSqlParser.FILE, 0);
-};
-
-Drop_external_file_formatContext.prototype.FORMAT = function() {
- return this.getToken(TSqlParser.FORMAT, 0);
-};
-
-Drop_external_file_formatContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Drop_external_file_formatContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_external_file_format(this);
- }
-};
-
-Drop_external_file_formatContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_external_file_format(this);
- }
-};
-
-Drop_external_file_formatContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_external_file_format(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_external_file_formatContext = Drop_external_file_formatContext;
-
-TSqlParser.prototype.drop_external_file_format = function() {
-
- var localctx = new Drop_external_file_formatContext(this, this._ctx, this.state);
- this.enterRule(localctx, 196, TSqlParser.RULE_drop_external_file_format);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2430;
- this.match(TSqlParser.DROP);
- this.state = 2431;
- this.match(TSqlParser.EXTERNAL);
- this.state = 2432;
- this.match(TSqlParser.FILE);
- this.state = 2433;
- this.match(TSqlParser.FORMAT);
- this.state = 2434;
- localctx.external_file_format_name = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_external_libraryContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_external_library;
- this.library_name = null; // IdContext
- this.owner_name = null; // IdContext
- return this;
-}
-
-Drop_external_libraryContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_external_libraryContext.prototype.constructor = Drop_external_libraryContext;
-
-Drop_external_libraryContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_external_libraryContext.prototype.EXTERNAL = function() {
- return this.getToken(TSqlParser.EXTERNAL, 0);
-};
-
-Drop_external_libraryContext.prototype.LIBRARY = function() {
- return this.getToken(TSqlParser.LIBRARY, 0);
-};
-
-Drop_external_libraryContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Drop_external_libraryContext.prototype.AUTHORIZATION = function() {
- return this.getToken(TSqlParser.AUTHORIZATION, 0);
-};
-
-Drop_external_libraryContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_external_library(this);
- }
-};
-
-Drop_external_libraryContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_external_library(this);
- }
-};
-
-Drop_external_libraryContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_external_library(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_external_libraryContext = Drop_external_libraryContext;
-
-TSqlParser.prototype.drop_external_library = function() {
-
- var localctx = new Drop_external_libraryContext(this, this._ctx, this.state);
- this.enterRule(localctx, 198, TSqlParser.RULE_drop_external_library);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2436;
- this.match(TSqlParser.DROP);
- this.state = 2437;
- this.match(TSqlParser.EXTERNAL);
- this.state = 2438;
- this.match(TSqlParser.LIBRARY);
- this.state = 2439;
- localctx.library_name = this.id();
- this.state = 2442;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.AUTHORIZATION) {
- this.state = 2440;
- this.match(TSqlParser.AUTHORIZATION);
- this.state = 2441;
- localctx.owner_name = this.id();
- }
-
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_external_resource_poolContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_external_resource_pool;
- this.pool_name = null; // IdContext
- return this;
-}
-
-Drop_external_resource_poolContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_external_resource_poolContext.prototype.constructor = Drop_external_resource_poolContext;
-
-Drop_external_resource_poolContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_external_resource_poolContext.prototype.EXTERNAL = function() {
- return this.getToken(TSqlParser.EXTERNAL, 0);
-};
-
-Drop_external_resource_poolContext.prototype.RESOURCE = function() {
- return this.getToken(TSqlParser.RESOURCE, 0);
-};
-
-Drop_external_resource_poolContext.prototype.POOL = function() {
- return this.getToken(TSqlParser.POOL, 0);
-};
-
-Drop_external_resource_poolContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Drop_external_resource_poolContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_external_resource_pool(this);
- }
-};
-
-Drop_external_resource_poolContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_external_resource_pool(this);
- }
-};
-
-Drop_external_resource_poolContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_external_resource_pool(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_external_resource_poolContext = Drop_external_resource_poolContext;
-
-TSqlParser.prototype.drop_external_resource_pool = function() {
-
- var localctx = new Drop_external_resource_poolContext(this, this._ctx, this.state);
- this.enterRule(localctx, 200, TSqlParser.RULE_drop_external_resource_pool);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2444;
- this.match(TSqlParser.DROP);
- this.state = 2445;
- this.match(TSqlParser.EXTERNAL);
- this.state = 2446;
- this.match(TSqlParser.RESOURCE);
- this.state = 2447;
- this.match(TSqlParser.POOL);
- this.state = 2448;
- localctx.pool_name = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_external_tableContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_external_table;
- this.database_name = null; // IdContext
- this.schema_name = null; // IdContext
- this.table = null; // IdContext
- return this;
-}
-
-Drop_external_tableContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_external_tableContext.prototype.constructor = Drop_external_tableContext;
-
-Drop_external_tableContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_external_tableContext.prototype.EXTERNAL = function() {
- return this.getToken(TSqlParser.EXTERNAL, 0);
-};
-
-Drop_external_tableContext.prototype.TABLE = function() {
- return this.getToken(TSqlParser.TABLE, 0);
-};
-
-Drop_external_tableContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Drop_external_tableContext.prototype.DOT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DOT);
- } else {
- return this.getToken(TSqlParser.DOT, i);
- }
-};
-
-
-Drop_external_tableContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_external_table(this);
- }
-};
-
-Drop_external_tableContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_external_table(this);
- }
-};
-
-Drop_external_tableContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_external_table(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_external_tableContext = Drop_external_tableContext;
-
-TSqlParser.prototype.drop_external_table = function() {
-
- var localctx = new Drop_external_tableContext(this, this._ctx, this.state);
- this.enterRule(localctx, 202, TSqlParser.RULE_drop_external_table);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2450;
- this.match(TSqlParser.DROP);
- this.state = 2451;
- this.match(TSqlParser.EXTERNAL);
- this.state = 2452;
- this.match(TSqlParser.TABLE);
- this.state = 2456;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,171,this._ctx);
- if(la_===1) {
- this.state = 2453;
- localctx.database_name = this.id();
- this.state = 2454;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 2461;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,172,this._ctx);
- if(la_===1) {
- this.state = 2458;
- localctx.schema_name = this.id();
- this.state = 2459;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 2463;
- localctx.table = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_event_notificationsContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_event_notifications;
- this.notification_name = null; // IdContext
- this.queue_name = null; // IdContext
- return this;
-}
-
-Drop_event_notificationsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_event_notificationsContext.prototype.constructor = Drop_event_notificationsContext;
-
-Drop_event_notificationsContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_event_notificationsContext.prototype.EVENT = function() {
- return this.getToken(TSqlParser.EVENT, 0);
-};
-
-Drop_event_notificationsContext.prototype.NOTIFICATION = function() {
- return this.getToken(TSqlParser.NOTIFICATION, 0);
-};
-
-Drop_event_notificationsContext.prototype.ON = function() {
- return this.getToken(TSqlParser.ON, 0);
-};
-
-Drop_event_notificationsContext.prototype.SERVER = function() {
- return this.getToken(TSqlParser.SERVER, 0);
-};
-
-Drop_event_notificationsContext.prototype.DATABASE = function() {
- return this.getToken(TSqlParser.DATABASE, 0);
-};
-
-Drop_event_notificationsContext.prototype.QUEUE = function() {
- return this.getToken(TSqlParser.QUEUE, 0);
-};
-
-Drop_event_notificationsContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Drop_event_notificationsContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Drop_event_notificationsContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_event_notifications(this);
- }
-};
-
-Drop_event_notificationsContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_event_notifications(this);
- }
-};
-
-Drop_event_notificationsContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_event_notifications(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_event_notificationsContext = Drop_event_notificationsContext;
-
-TSqlParser.prototype.drop_event_notifications = function() {
-
- var localctx = new Drop_event_notificationsContext(this, this._ctx, this.state);
- this.enterRule(localctx, 204, TSqlParser.RULE_drop_event_notifications);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2465;
- this.match(TSqlParser.DROP);
- this.state = 2466;
- this.match(TSqlParser.EVENT);
- this.state = 2467;
- this.match(TSqlParser.NOTIFICATION);
- this.state = 2472;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- do {
- this.state = 2469;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 2468;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 2471;
- localctx.notification_name = this.id();
- this.state = 2474;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- } while(_la===TSqlParser.CALLED || _la===TSqlParser.DATA_COMPRESSION || ((((_la - 112)) & ~0x1f) == 0 && ((1 << (_la - 112)) & ((1 << (TSqlParser.EVENTDATA - 112)) | (1 << (TSqlParser.FILENAME - 112)) | (1 << (TSqlParser.FILLFACTOR - 112)) | (1 << (TSqlParser.FORCESEEK - 112)))) !== 0) || ((((_la - 158)) & ~0x1f) == 0 && ((1 << (_la - 158)) & ((1 << (TSqlParser.INIT - 158)) | (1 << (TSqlParser.KEY - 158)) | (1 << (TSqlParser.MASTER - 158)) | (1 << (TSqlParser.MAX_MEMORY - 158)))) !== 0) || _la===TSqlParser.OFFSETS || _la===TSqlParser.PAGE || ((((_la - 259)) & ~0x1f) == 0 && ((1 << (_la - 259)) & ((1 << (TSqlParser.PUBLIC - 259)) | (1 << (TSqlParser.R - 259)) | (1 << (TSqlParser.RAW - 259)) | (1 << (TSqlParser.RETURN - 259)) | (1 << (TSqlParser.RETURNS - 259)) | (1 << (TSqlParser.ROWCOUNT - 259)))) !== 0) || ((((_la - 295)) & ~0x1f) == 0 && ((1 << (_la - 295)) & ((1 << (TSqlParser.SAFETY - 295)) | (1 << (TSqlParser.SERVER - 295)) | (1 << (TSqlParser.SID - 295)) | (1 << (TSqlParser.SOURCE - 295)) | (1 << (TSqlParser.SPLIT - 295)))) !== 0) || ((((_la - 327)) & ~0x1f) == 0 && ((1 << (_la - 327)) & ((1 << (TSqlParser.STATE - 327)) | (1 << (TSqlParser.START - 327)) | (1 << (TSqlParser.TARGET - 327)))) !== 0) || ((((_la - 380)) & ~0x1f) == 0 && ((1 << (_la - 380)) & ((1 << (TSqlParser.ABSOLUTE - 380)) | (1 << (TSqlParser.ACCENT_SENSITIVITY - 380)) | (1 << (TSqlParser.ACTION - 380)) | (1 << (TSqlParser.ACTIVATION - 380)) | (1 << (TSqlParser.ACTIVE - 380)) | (1 << (TSqlParser.ADDRESS - 380)) | (1 << (TSqlParser.AES_128 - 380)) | (1 << (TSqlParser.AES_192 - 380)) | (1 << (TSqlParser.AES_256 - 380)) | (1 << (TSqlParser.AFFINITY - 380)) | (1 << (TSqlParser.AFTER - 380)) | (1 << (TSqlParser.AGGREGATE - 380)) | (1 << (TSqlParser.ALGORITHM - 380)) | (1 << (TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS - 380)) | (1 << (TSqlParser.ALLOW_SNAPSHOT_ISOLATION - 380)) | (1 << (TSqlParser.ALLOWED - 380)) | (1 << (TSqlParser.ANSI_NULL_DEFAULT - 380)) | (1 << (TSqlParser.ANSI_NULLS - 380)) | (1 << (TSqlParser.ANSI_PADDING - 380)) | (1 << (TSqlParser.ANSI_WARNINGS - 380)) | (1 << (TSqlParser.APPLICATION_LOG - 380)) | (1 << (TSqlParser.APPLY - 380)) | (1 << (TSqlParser.ARITHABORT - 380)) | (1 << (TSqlParser.ASSEMBLY - 380)) | (1 << (TSqlParser.AUDIT - 380)) | (1 << (TSqlParser.AUDIT_GUID - 380)) | (1 << (TSqlParser.AUTO - 380)) | (1 << (TSqlParser.AUTO_CLEANUP - 380)) | (1 << (TSqlParser.AUTO_CLOSE - 380)) | (1 << (TSqlParser.AUTO_CREATE_STATISTICS - 380)) | (1 << (TSqlParser.AUTO_SHRINK - 380)) | (1 << (TSqlParser.AUTO_UPDATE_STATISTICS - 380)))) !== 0) || ((((_la - 412)) & ~0x1f) == 0 && ((1 << (_la - 412)) & ((1 << (TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC - 412)) | (1 << (TSqlParser.AVAILABILITY - 412)) | (1 << (TSqlParser.AVG - 412)) | (1 << (TSqlParser.BACKUP_PRIORITY - 412)) | (1 << (TSqlParser.BEGIN_DIALOG - 412)) | (1 << (TSqlParser.BIGINT - 412)) | (1 << (TSqlParser.BINARY_BASE64 - 412)) | (1 << (TSqlParser.BINARY_CHECKSUM - 412)) | (1 << (TSqlParser.BINDING - 412)) | (1 << (TSqlParser.BLOB_STORAGE - 412)) | (1 << (TSqlParser.BROKER - 412)) | (1 << (TSqlParser.BROKER_INSTANCE - 412)) | (1 << (TSqlParser.BULK_LOGGED - 412)) | (1 << (TSqlParser.CALLER - 412)) | (1 << (TSqlParser.CAP_CPU_PERCENT - 412)) | (1 << (TSqlParser.CAST - 412)) | (1 << (TSqlParser.CATALOG - 412)) | (1 << (TSqlParser.CATCH - 412)) | (1 << (TSqlParser.CHANGE_RETENTION - 412)) | (1 << (TSqlParser.CHANGE_TRACKING - 412)) | (1 << (TSqlParser.CHECKSUM - 412)) | (1 << (TSqlParser.CHECKSUM_AGG - 412)) | (1 << (TSqlParser.CLEANUP - 412)) | (1 << (TSqlParser.COLLECTION - 412)) | (1 << (TSqlParser.COLUMN_MASTER_KEY - 412)) | (1 << (TSqlParser.COMMITTED - 412)) | (1 << (TSqlParser.COMPATIBILITY_LEVEL - 412)) | (1 << (TSqlParser.CONCAT - 412)) | (1 << (TSqlParser.CONCAT_NULL_YIELDS_NULL - 412)) | (1 << (TSqlParser.CONTENT - 412)) | (1 << (TSqlParser.CONTROL - 412)) | (1 << (TSqlParser.COOKIE - 412)))) !== 0) || ((((_la - 444)) & ~0x1f) == 0 && ((1 << (_la - 444)) & ((1 << (TSqlParser.COUNT - 444)) | (1 << (TSqlParser.COUNT_BIG - 444)) | (1 << (TSqlParser.COUNTER - 444)) | (1 << (TSqlParser.CPU - 444)) | (1 << (TSqlParser.CREATE_NEW - 444)) | (1 << (TSqlParser.CREATION_DISPOSITION - 444)) | (1 << (TSqlParser.CREDENTIAL - 444)) | (1 << (TSqlParser.CRYPTOGRAPHIC - 444)) | (1 << (TSqlParser.CURSOR_CLOSE_ON_COMMIT - 444)) | (1 << (TSqlParser.CURSOR_DEFAULT - 444)) | (1 << (TSqlParser.DATA - 444)) | (1 << (TSqlParser.DATE_CORRELATION_OPTIMIZATION - 444)) | (1 << (TSqlParser.DATEADD - 444)) | (1 << (TSqlParser.DATEDIFF - 444)) | (1 << (TSqlParser.DATENAME - 444)) | (1 << (TSqlParser.DATEPART - 444)) | (1 << (TSqlParser.DAYS - 444)) | (1 << (TSqlParser.DB_CHAINING - 444)) | (1 << (TSqlParser.DB_FAILOVER - 444)) | (1 << (TSqlParser.DECRYPTION - 444)) | (1 << (TSqlParser.DEFAULT_DOUBLE_QUOTE - 444)) | (1 << (TSqlParser.DEFAULT_FULLTEXT_LANGUAGE - 444)) | (1 << (TSqlParser.DEFAULT_LANGUAGE - 444)) | (1 << (TSqlParser.DELAY - 444)) | (1 << (TSqlParser.DELAYED_DURABILITY - 444)) | (1 << (TSqlParser.DELETED - 444)) | (1 << (TSqlParser.DENSE_RANK - 444)) | (1 << (TSqlParser.DEPENDENTS - 444)) | (1 << (TSqlParser.DES - 444)) | (1 << (TSqlParser.DESCRIPTION - 444)) | (1 << (TSqlParser.DESX - 444)) | (1 << (TSqlParser.DHCP - 444)))) !== 0) || ((((_la - 476)) & ~0x1f) == 0 && ((1 << (_la - 476)) & ((1 << (TSqlParser.DIALOG - 476)) | (1 << (TSqlParser.DIRECTORY_NAME - 476)) | (1 << (TSqlParser.DISABLE - 476)) | (1 << (TSqlParser.DISABLE_BROKER - 476)) | (1 << (TSqlParser.DISABLED - 476)) | (1 << (TSqlParser.DISK_DRIVE - 476)) | (1 << (TSqlParser.DOCUMENT - 476)) | (1 << (TSqlParser.DYNAMIC - 476)) | (1 << (TSqlParser.EMERGENCY - 476)) | (1 << (TSqlParser.EMPTY - 476)) | (1 << (TSqlParser.ENABLE - 476)) | (1 << (TSqlParser.ENABLE_BROKER - 476)) | (1 << (TSqlParser.ENCRYPTED_VALUE - 476)) | (1 << (TSqlParser.ENCRYPTION - 476)) | (1 << (TSqlParser.ENDPOINT_URL - 476)) | (1 << (TSqlParser.ERROR_BROKER_CONVERSATIONS - 476)) | (1 << (TSqlParser.EXCLUSIVE - 476)) | (1 << (TSqlParser.EXECUTABLE - 476)) | (1 << (TSqlParser.EXIST - 476)) | (1 << (TSqlParser.EXPAND - 476)) | (1 << (TSqlParser.EXPIRY_DATE - 476)) | (1 << (TSqlParser.EXPLICIT - 476)) | (1 << (TSqlParser.FAIL_OPERATION - 476)) | (1 << (TSqlParser.FAILOVER_MODE - 476)) | (1 << (TSqlParser.FAILURE - 476)) | (1 << (TSqlParser.FAILURE_CONDITION_LEVEL - 476)) | (1 << (TSqlParser.FAST - 476)) | (1 << (TSqlParser.FAST_FORWARD - 476)) | (1 << (TSqlParser.FILEGROUP - 476)) | (1 << (TSqlParser.FILEGROWTH - 476)) | (1 << (TSqlParser.FILEPATH - 476)))) !== 0) || ((((_la - 508)) & ~0x1f) == 0 && ((1 << (_la - 508)) & ((1 << (TSqlParser.FILESTREAM - 508)) | (1 << (TSqlParser.FILTER - 508)) | (1 << (TSqlParser.FIRST - 508)) | (1 << (TSqlParser.FIRST_VALUE - 508)) | (1 << (TSqlParser.FOLLOWING - 508)) | (1 << (TSqlParser.FORCE - 508)) | (1 << (TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS - 508)) | (1 << (TSqlParser.FORCED - 508)) | (1 << (TSqlParser.FORMAT - 508)) | (1 << (TSqlParser.FORWARD_ONLY - 508)) | (1 << (TSqlParser.FULLSCAN - 508)) | (1 << (TSqlParser.FULLTEXT - 508)) | (1 << (TSqlParser.GB - 508)) | (1 << (TSqlParser.GETDATE - 508)) | (1 << (TSqlParser.GETUTCDATE - 508)) | (1 << (TSqlParser.GLOBAL - 508)) | (1 << (TSqlParser.GO - 508)) | (1 << (TSqlParser.GROUP_MAX_REQUESTS - 508)) | (1 << (TSqlParser.GROUPING - 508)) | (1 << (TSqlParser.GROUPING_ID - 508)) | (1 << (TSqlParser.HADR - 508)) | (1 << (TSqlParser.HASH - 508)) | (1 << (TSqlParser.HEALTH_CHECK_TIMEOUT - 508)) | (1 << (TSqlParser.HIGH - 508)) | (1 << (TSqlParser.HONOR_BROKER_PRIORITY - 508)) | (1 << (TSqlParser.HOURS - 508)) | (1 << (TSqlParser.IDENTITY_VALUE - 508)) | (1 << (TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX - 508)) | (1 << (TSqlParser.IMMEDIATE - 508)) | (1 << (TSqlParser.IMPERSONATE - 508)) | (1 << (TSqlParser.IMPORTANCE - 508)))) !== 0) || ((((_la - 540)) & ~0x1f) == 0 && ((1 << (_la - 540)) & ((1 << (TSqlParser.INCREMENTAL - 540)) | (1 << (TSqlParser.INITIATOR - 540)) | (1 << (TSqlParser.INPUT - 540)) | (1 << (TSqlParser.INSENSITIVE - 540)) | (1 << (TSqlParser.INSERTED - 540)) | (1 << (TSqlParser.INT - 540)) | (1 << (TSqlParser.IP - 540)) | (1 << (TSqlParser.ISOLATION - 540)) | (1 << (TSqlParser.KB - 540)) | (1 << (TSqlParser.KEEP - 540)) | (1 << (TSqlParser.KEEPFIXED - 540)) | (1 << (TSqlParser.KEY_SOURCE - 540)) | (1 << (TSqlParser.KEYS - 540)) | (1 << (TSqlParser.KEYSET - 540)) | (1 << (TSqlParser.LAG - 540)) | (1 << (TSqlParser.LAST - 540)) | (1 << (TSqlParser.LAST_VALUE - 540)) | (1 << (TSqlParser.LEAD - 540)) | (1 << (TSqlParser.LEVEL - 540)) | (1 << (TSqlParser.LIST - 540)) | (1 << (TSqlParser.LISTENER - 540)) | (1 << (TSqlParser.LISTENER_URL - 540)) | (1 << (TSqlParser.LOB_COMPACTION - 540)) | (1 << (TSqlParser.LOCAL - 540)) | (1 << (TSqlParser.LOCATION - 540)) | (1 << (TSqlParser.LOCK - 540)) | (1 << (TSqlParser.LOCK_ESCALATION - 540)) | (1 << (TSqlParser.LOGIN - 540)) | (1 << (TSqlParser.LOOP - 540)) | (1 << (TSqlParser.LOW - 540)))) !== 0) || ((((_la - 572)) & ~0x1f) == 0 && ((1 << (_la - 572)) & ((1 << (TSqlParser.MANUAL - 572)) | (1 << (TSqlParser.MARK - 572)) | (1 << (TSqlParser.MATERIALIZED - 572)) | (1 << (TSqlParser.MAX - 572)) | (1 << (TSqlParser.MAX_CPU_PERCENT - 572)) | (1 << (TSqlParser.MAX_DOP - 572)) | (1 << (TSqlParser.MAX_FILES - 572)) | (1 << (TSqlParser.MAX_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MAX_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MAX_PROCESSES - 572)) | (1 << (TSqlParser.MAX_QUEUE_READERS - 572)) | (1 << (TSqlParser.MAX_ROLLOVER_FILES - 572)) | (1 << (TSqlParser.MAXDOP - 572)) | (1 << (TSqlParser.MAXRECURSION - 572)) | (1 << (TSqlParser.MAXSIZE - 572)) | (1 << (TSqlParser.MB - 572)) | (1 << (TSqlParser.MEDIUM - 572)) | (1 << (TSqlParser.MEMORY_OPTIMIZED_DATA - 572)) | (1 << (TSqlParser.MESSAGE - 572)) | (1 << (TSqlParser.MIN - 572)) | (1 << (TSqlParser.MIN_ACTIVE_ROWVERSION - 572)) | (1 << (TSqlParser.MIN_CPU_PERCENT - 572)) | (1 << (TSqlParser.MIN_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MIN_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MINUTES - 572)) | (1 << (TSqlParser.MIRROR_ADDRESS - 572)) | (1 << (TSqlParser.MIXED_PAGE_ALLOCATION - 572)) | (1 << (TSqlParser.MODE - 572)) | (1 << (TSqlParser.MODIFY - 572)) | (1 << (TSqlParser.MOVE - 572)) | (1 << (TSqlParser.MULTI_USER - 572)) | (1 << (TSqlParser.NAME - 572)))) !== 0) || ((((_la - 604)) & ~0x1f) == 0 && ((1 << (_la - 604)) & ((1 << (TSqlParser.NESTED_TRIGGERS - 604)) | (1 << (TSqlParser.NEW_ACCOUNT - 604)) | (1 << (TSqlParser.NEW_BROKER - 604)) | (1 << (TSqlParser.NEW_PASSWORD - 604)) | (1 << (TSqlParser.NEXT - 604)) | (1 << (TSqlParser.NO - 604)) | (1 << (TSqlParser.NO_TRUNCATE - 604)) | (1 << (TSqlParser.NO_WAIT - 604)) | (1 << (TSqlParser.NOCOUNT - 604)) | (1 << (TSqlParser.NODES - 604)) | (1 << (TSqlParser.NOEXPAND - 604)) | (1 << (TSqlParser.NON_TRANSACTED_ACCESS - 604)) | (1 << (TSqlParser.NORECOMPUTE - 604)) | (1 << (TSqlParser.NORECOVERY - 604)) | (1 << (TSqlParser.NOWAIT - 604)) | (1 << (TSqlParser.NTILE - 604)) | (1 << (TSqlParser.NUMANODE - 604)) | (1 << (TSqlParser.NUMBER - 604)) | (1 << (TSqlParser.NUMERIC_ROUNDABORT - 604)) | (1 << (TSqlParser.OBJECT - 604)) | (1 << (TSqlParser.OFFLINE - 604)) | (1 << (TSqlParser.OFFSET - 604)) | (1 << (TSqlParser.OLD_ACCOUNT - 604)) | (1 << (TSqlParser.ONLINE - 604)) | (1 << (TSqlParser.ONLY - 604)) | (1 << (TSqlParser.OPEN_EXISTING - 604)) | (1 << (TSqlParser.OPTIMISTIC - 604)) | (1 << (TSqlParser.OPTIMIZE - 604)) | (1 << (TSqlParser.OUT - 604)) | (1 << (TSqlParser.OUTPUT - 604)) | (1 << (TSqlParser.OWNER - 604)))) !== 0) || ((((_la - 636)) & ~0x1f) == 0 && ((1 << (_la - 636)) & ((1 << (TSqlParser.PAGE_VERIFY - 636)) | (1 << (TSqlParser.PARAMETERIZATION - 636)) | (1 << (TSqlParser.PARTITION - 636)) | (1 << (TSqlParser.PARTITIONS - 636)) | (1 << (TSqlParser.PARTNER - 636)) | (1 << (TSqlParser.PATH - 636)) | (1 << (TSqlParser.POISON_MESSAGE_HANDLING - 636)) | (1 << (TSqlParser.POOL - 636)) | (1 << (TSqlParser.PORT - 636)) | (1 << (TSqlParser.PRECEDING - 636)) | (1 << (TSqlParser.PRIMARY_ROLE - 636)) | (1 << (TSqlParser.PRIOR - 636)) | (1 << (TSqlParser.PRIORITY - 636)) | (1 << (TSqlParser.PRIORITY_LEVEL - 636)) | (1 << (TSqlParser.PRIVATE - 636)) | (1 << (TSqlParser.PRIVATE_KEY - 636)) | (1 << (TSqlParser.PRIVILEGES - 636)) | (1 << (TSqlParser.PROCEDURE_NAME - 636)) | (1 << (TSqlParser.PROPERTY - 636)) | (1 << (TSqlParser.PROVIDER - 636)) | (1 << (TSqlParser.PROVIDER_KEY_NAME - 636)) | (1 << (TSqlParser.QUERY - 636)) | (1 << (TSqlParser.QUEUE - 636)) | (1 << (TSqlParser.QUEUE_DELAY - 636)) | (1 << (TSqlParser.QUOTED_IDENTIFIER - 636)) | (1 << (TSqlParser.RANGE - 636)) | (1 << (TSqlParser.RANK - 636)) | (1 << (TSqlParser.RC2 - 636)) | (1 << (TSqlParser.RC4 - 636)) | (1 << (TSqlParser.RC4_128 - 636)) | (1 << (TSqlParser.READ_COMMITTED_SNAPSHOT - 636)) | (1 << (TSqlParser.READ_ONLY - 636)))) !== 0) || ((((_la - 668)) & ~0x1f) == 0 && ((1 << (_la - 668)) & ((1 << (TSqlParser.READ_ONLY_ROUTING_LIST - 668)) | (1 << (TSqlParser.READ_WRITE - 668)) | (1 << (TSqlParser.READONLY - 668)) | (1 << (TSqlParser.REBUILD - 668)) | (1 << (TSqlParser.RECEIVE - 668)) | (1 << (TSqlParser.RECOMPILE - 668)) | (1 << (TSqlParser.RECOVERY - 668)) | (1 << (TSqlParser.RECURSIVE_TRIGGERS - 668)) | (1 << (TSqlParser.RELATIVE - 668)) | (1 << (TSqlParser.REMOTE - 668)) | (1 << (TSqlParser.REMOTE_SERVICE_NAME - 668)) | (1 << (TSqlParser.REMOVE - 668)) | (1 << (TSqlParser.REORGANIZE - 668)) | (1 << (TSqlParser.REPEATABLE - 668)) | (1 << (TSqlParser.REPLICA - 668)) | (1 << (TSqlParser.REQUEST_MAX_CPU_TIME_SEC - 668)) | (1 << (TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT - 668)) | (1 << (TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC - 668)) | (1 << (TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT - 668)) | (1 << (TSqlParser.RESERVE_DISK_SPACE - 668)) | (1 << (TSqlParser.RESOURCE - 668)) | (1 << (TSqlParser.RESOURCE_MANAGER_LOCATION - 668)) | (1 << (TSqlParser.RESTRICTED_USER - 668)) | (1 << (TSqlParser.RETENTION - 668)) | (1 << (TSqlParser.ROBUST - 668)) | (1 << (TSqlParser.ROOT - 668)) | (1 << (TSqlParser.ROUTE - 668)) | (1 << (TSqlParser.ROW - 668)) | (1 << (TSqlParser.ROW_NUMBER - 668)) | (1 << (TSqlParser.ROWGUID - 668)) | (1 << (TSqlParser.ROWS - 668)) | (1 << (TSqlParser.SAMPLE - 668)))) !== 0) || ((((_la - 700)) & ~0x1f) == 0 && ((1 << (_la - 700)) & ((1 << (TSqlParser.SCHEMABINDING - 700)) | (1 << (TSqlParser.SCOPED - 700)) | (1 << (TSqlParser.SCROLL - 700)) | (1 << (TSqlParser.SCROLL_LOCKS - 700)) | (1 << (TSqlParser.SEARCH - 700)) | (1 << (TSqlParser.SECONDARY - 700)) | (1 << (TSqlParser.SECONDARY_ONLY - 700)) | (1 << (TSqlParser.SECONDARY_ROLE - 700)) | (1 << (TSqlParser.SECONDS - 700)) | (1 << (TSqlParser.SECRET - 700)) | (1 << (TSqlParser.SECURITY - 700)) | (1 << (TSqlParser.SECURITY_LOG - 700)) | (1 << (TSqlParser.SEEDING_MODE - 700)) | (1 << (TSqlParser.SELF - 700)) | (1 << (TSqlParser.SEMI_SENSITIVE - 700)) | (1 << (TSqlParser.SEND - 700)) | (1 << (TSqlParser.SENT - 700)) | (1 << (TSqlParser.SEQUENCE - 700)) | (1 << (TSqlParser.SERIALIZABLE - 700)) | (1 << (TSqlParser.SESSION_TIMEOUT - 700)) | (1 << (TSqlParser.SETERROR - 700)) | (1 << (TSqlParser.SHARE - 700)) | (1 << (TSqlParser.SHOWPLAN - 700)) | (1 << (TSqlParser.SIGNATURE - 700)) | (1 << (TSqlParser.SIMPLE - 700)) | (1 << (TSqlParser.SINGLE_USER - 700)) | (1 << (TSqlParser.SIZE - 700)) | (1 << (TSqlParser.SMALLINT - 700)) | (1 << (TSqlParser.SNAPSHOT - 700)) | (1 << (TSqlParser.SPATIAL_WINDOW_MAX_CELLS - 700)) | (1 << (TSqlParser.STANDBY - 700)) | (1 << (TSqlParser.START_DATE - 700)))) !== 0) || ((((_la - 732)) & ~0x1f) == 0 && ((1 << (_la - 732)) & ((1 << (TSqlParser.STATIC - 732)) | (1 << (TSqlParser.STATS_STREAM - 732)) | (1 << (TSqlParser.STATUS - 732)) | (1 << (TSqlParser.STDEV - 732)) | (1 << (TSqlParser.STDEVP - 732)) | (1 << (TSqlParser.STOPLIST - 732)) | (1 << (TSqlParser.STRING_AGG - 732)) | (1 << (TSqlParser.STUFF - 732)) | (1 << (TSqlParser.SUBJECT - 732)) | (1 << (TSqlParser.SUM - 732)) | (1 << (TSqlParser.SUSPEND - 732)) | (1 << (TSqlParser.SYMMETRIC - 732)) | (1 << (TSqlParser.SYNCHRONOUS_COMMIT - 732)) | (1 << (TSqlParser.SYNONYM - 732)) | (1 << (TSqlParser.SYSTEM - 732)) | (1 << (TSqlParser.TAKE - 732)) | (1 << (TSqlParser.TARGET_RECOVERY_TIME - 732)) | (1 << (TSqlParser.TB - 732)) | (1 << (TSqlParser.TEXTIMAGE_ON - 732)) | (1 << (TSqlParser.THROW - 732)) | (1 << (TSqlParser.TIES - 732)) | (1 << (TSqlParser.TIME - 732)) | (1 << (TSqlParser.TIMEOUT - 732)) | (1 << (TSqlParser.TIMER - 732)) | (1 << (TSqlParser.TINYINT - 732)) | (1 << (TSqlParser.TORN_PAGE_DETECTION - 732)) | (1 << (TSqlParser.TRANSFORM_NOISE_WORDS - 732)) | (1 << (TSqlParser.TRIPLE_DES - 732)) | (1 << (TSqlParser.TRIPLE_DES_3KEY - 732)) | (1 << (TSqlParser.TRUSTWORTHY - 732)))) !== 0) || ((((_la - 764)) & ~0x1f) == 0 && ((1 << (_la - 764)) & ((1 << (TSqlParser.TRY - 764)) | (1 << (TSqlParser.TSQL - 764)) | (1 << (TSqlParser.TWO_DIGIT_YEAR_CUTOFF - 764)) | (1 << (TSqlParser.TYPE - 764)) | (1 << (TSqlParser.TYPE_WARNING - 764)) | (1 << (TSqlParser.UNBOUNDED - 764)) | (1 << (TSqlParser.UNCOMMITTED - 764)) | (1 << (TSqlParser.UNKNOWN - 764)) | (1 << (TSqlParser.UNLIMITED - 764)) | (1 << (TSqlParser.USING - 764)) | (1 << (TSqlParser.VALID_XML - 764)) | (1 << (TSqlParser.VALIDATION - 764)) | (1 << (TSqlParser.VALUE - 764)) | (1 << (TSqlParser.VAR - 764)) | (1 << (TSqlParser.VARP - 764)) | (1 << (TSqlParser.VIEW_METADATA - 764)) | (1 << (TSqlParser.VIEWS - 764)) | (1 << (TSqlParser.WAIT - 764)) | (1 << (TSqlParser.WELL_FORMED_XML - 764)) | (1 << (TSqlParser.WORK - 764)) | (1 << (TSqlParser.WORKLOAD - 764)) | (1 << (TSqlParser.XML - 764)) | (1 << (TSqlParser.XMLNAMESPACES - 764)))) !== 0) || ((((_la - 796)) & ~0x1f) == 0 && ((1 << (_la - 796)) & ((1 << (TSqlParser.DOUBLE_QUOTE_ID - 796)) | (1 << (TSqlParser.SQUARE_BRACKET_ID - 796)) | (1 << (TSqlParser.ID - 796)))) !== 0) || _la===TSqlParser.COMMA);
- this.state = 2476;
- this.match(TSqlParser.ON);
- this.state = 2481;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.SERVER:
- this.state = 2477;
- this.match(TSqlParser.SERVER);
- break;
- case TSqlParser.DATABASE:
- this.state = 2478;
- this.match(TSqlParser.DATABASE);
- break;
- case TSqlParser.QUEUE:
- this.state = 2479;
- this.match(TSqlParser.QUEUE);
- this.state = 2480;
- localctx.queue_name = this.id();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_event_sessionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_event_session;
- this.event_session_name = null; // IdContext
- return this;
-}
-
-Drop_event_sessionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_event_sessionContext.prototype.constructor = Drop_event_sessionContext;
-
-Drop_event_sessionContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_event_sessionContext.prototype.EVENT = function() {
- return this.getToken(TSqlParser.EVENT, 0);
-};
-
-Drop_event_sessionContext.prototype.SESSION = function() {
- return this.getToken(TSqlParser.SESSION, 0);
-};
-
-Drop_event_sessionContext.prototype.ON = function() {
- return this.getToken(TSqlParser.ON, 0);
-};
-
-Drop_event_sessionContext.prototype.SERVER = function() {
- return this.getToken(TSqlParser.SERVER, 0);
-};
-
-Drop_event_sessionContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Drop_event_sessionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_event_session(this);
- }
-};
-
-Drop_event_sessionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_event_session(this);
- }
-};
-
-Drop_event_sessionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_event_session(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_event_sessionContext = Drop_event_sessionContext;
-
-TSqlParser.prototype.drop_event_session = function() {
-
- var localctx = new Drop_event_sessionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 206, TSqlParser.RULE_drop_event_session);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2483;
- this.match(TSqlParser.DROP);
- this.state = 2484;
- this.match(TSqlParser.EVENT);
- this.state = 2485;
- this.match(TSqlParser.SESSION);
- this.state = 2486;
- localctx.event_session_name = this.id();
- this.state = 2487;
- this.match(TSqlParser.ON);
- this.state = 2488;
- this.match(TSqlParser.SERVER);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_fulltext_catalogContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_fulltext_catalog;
- this.catalog_name = null; // IdContext
- return this;
-}
-
-Drop_fulltext_catalogContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_fulltext_catalogContext.prototype.constructor = Drop_fulltext_catalogContext;
-
-Drop_fulltext_catalogContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_fulltext_catalogContext.prototype.FULLTEXT = function() {
- return this.getToken(TSqlParser.FULLTEXT, 0);
-};
-
-Drop_fulltext_catalogContext.prototype.CATALOG = function() {
- return this.getToken(TSqlParser.CATALOG, 0);
-};
-
-Drop_fulltext_catalogContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Drop_fulltext_catalogContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_fulltext_catalog(this);
- }
-};
-
-Drop_fulltext_catalogContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_fulltext_catalog(this);
- }
-};
-
-Drop_fulltext_catalogContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_fulltext_catalog(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_fulltext_catalogContext = Drop_fulltext_catalogContext;
-
-TSqlParser.prototype.drop_fulltext_catalog = function() {
-
- var localctx = new Drop_fulltext_catalogContext(this, this._ctx, this.state);
- this.enterRule(localctx, 208, TSqlParser.RULE_drop_fulltext_catalog);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2490;
- this.match(TSqlParser.DROP);
- this.state = 2491;
- this.match(TSqlParser.FULLTEXT);
- this.state = 2492;
- this.match(TSqlParser.CATALOG);
- this.state = 2493;
- localctx.catalog_name = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_fulltext_indexContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_fulltext_index;
- this.schema = null; // IdContext
- this.table = null; // IdContext
- return this;
-}
-
-Drop_fulltext_indexContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_fulltext_indexContext.prototype.constructor = Drop_fulltext_indexContext;
-
-Drop_fulltext_indexContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_fulltext_indexContext.prototype.FULLTEXT = function() {
- return this.getToken(TSqlParser.FULLTEXT, 0);
-};
-
-Drop_fulltext_indexContext.prototype.INDEX = function() {
- return this.getToken(TSqlParser.INDEX, 0);
-};
-
-Drop_fulltext_indexContext.prototype.ON = function() {
- return this.getToken(TSqlParser.ON, 0);
-};
-
-Drop_fulltext_indexContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Drop_fulltext_indexContext.prototype.DOT = function() {
- return this.getToken(TSqlParser.DOT, 0);
-};
-
-Drop_fulltext_indexContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_fulltext_index(this);
- }
-};
-
-Drop_fulltext_indexContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_fulltext_index(this);
- }
-};
-
-Drop_fulltext_indexContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_fulltext_index(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_fulltext_indexContext = Drop_fulltext_indexContext;
-
-TSqlParser.prototype.drop_fulltext_index = function() {
-
- var localctx = new Drop_fulltext_indexContext(this, this._ctx, this.state);
- this.enterRule(localctx, 210, TSqlParser.RULE_drop_fulltext_index);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2495;
- this.match(TSqlParser.DROP);
- this.state = 2496;
- this.match(TSqlParser.FULLTEXT);
- this.state = 2497;
- this.match(TSqlParser.INDEX);
- this.state = 2498;
- this.match(TSqlParser.ON);
- this.state = 2502;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,176,this._ctx);
- if(la_===1) {
- this.state = 2499;
- localctx.schema = this.id();
- this.state = 2500;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 2504;
- localctx.table = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_fulltext_stoplistContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_fulltext_stoplist;
- this.stoplist_name = null; // IdContext
- return this;
-}
-
-Drop_fulltext_stoplistContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_fulltext_stoplistContext.prototype.constructor = Drop_fulltext_stoplistContext;
-
-Drop_fulltext_stoplistContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_fulltext_stoplistContext.prototype.FULLTEXT = function() {
- return this.getToken(TSqlParser.FULLTEXT, 0);
-};
-
-Drop_fulltext_stoplistContext.prototype.STOPLIST = function() {
- return this.getToken(TSqlParser.STOPLIST, 0);
-};
-
-Drop_fulltext_stoplistContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Drop_fulltext_stoplistContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_fulltext_stoplist(this);
- }
-};
-
-Drop_fulltext_stoplistContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_fulltext_stoplist(this);
- }
-};
-
-Drop_fulltext_stoplistContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_fulltext_stoplist(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_fulltext_stoplistContext = Drop_fulltext_stoplistContext;
-
-TSqlParser.prototype.drop_fulltext_stoplist = function() {
-
- var localctx = new Drop_fulltext_stoplistContext(this, this._ctx, this.state);
- this.enterRule(localctx, 212, TSqlParser.RULE_drop_fulltext_stoplist);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2506;
- this.match(TSqlParser.DROP);
- this.state = 2507;
- this.match(TSqlParser.FULLTEXT);
- this.state = 2508;
- this.match(TSqlParser.STOPLIST);
- this.state = 2509;
- localctx.stoplist_name = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_loginContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_login;
- this.login_name = null; // IdContext
- return this;
-}
-
-Drop_loginContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_loginContext.prototype.constructor = Drop_loginContext;
-
-Drop_loginContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_loginContext.prototype.LOGIN = function() {
- return this.getToken(TSqlParser.LOGIN, 0);
-};
-
-Drop_loginContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Drop_loginContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_login(this);
- }
-};
-
-Drop_loginContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_login(this);
- }
-};
-
-Drop_loginContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_login(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_loginContext = Drop_loginContext;
-
-TSqlParser.prototype.drop_login = function() {
-
- var localctx = new Drop_loginContext(this, this._ctx, this.state);
- this.enterRule(localctx, 214, TSqlParser.RULE_drop_login);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2511;
- this.match(TSqlParser.DROP);
- this.state = 2512;
- this.match(TSqlParser.LOGIN);
- this.state = 2513;
- localctx.login_name = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_master_keyContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_master_key;
- return this;
-}
-
-Drop_master_keyContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_master_keyContext.prototype.constructor = Drop_master_keyContext;
-
-Drop_master_keyContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_master_keyContext.prototype.MASTER = function() {
- return this.getToken(TSqlParser.MASTER, 0);
-};
-
-Drop_master_keyContext.prototype.KEY = function() {
- return this.getToken(TSqlParser.KEY, 0);
-};
-
-Drop_master_keyContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_master_key(this);
- }
-};
-
-Drop_master_keyContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_master_key(this);
- }
-};
-
-Drop_master_keyContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_master_key(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_master_keyContext = Drop_master_keyContext;
-
-TSqlParser.prototype.drop_master_key = function() {
-
- var localctx = new Drop_master_keyContext(this, this._ctx, this.state);
- this.enterRule(localctx, 216, TSqlParser.RULE_drop_master_key);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2515;
- this.match(TSqlParser.DROP);
- this.state = 2516;
- this.match(TSqlParser.MASTER);
- this.state = 2517;
- this.match(TSqlParser.KEY);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_message_typeContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_message_type;
- this.message_type_name = null; // IdContext
- return this;
-}
-
-Drop_message_typeContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_message_typeContext.prototype.constructor = Drop_message_typeContext;
-
-Drop_message_typeContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_message_typeContext.prototype.MESSAGE = function() {
- return this.getToken(TSqlParser.MESSAGE, 0);
-};
-
-Drop_message_typeContext.prototype.TYPE = function() {
- return this.getToken(TSqlParser.TYPE, 0);
-};
-
-Drop_message_typeContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Drop_message_typeContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_message_type(this);
- }
-};
-
-Drop_message_typeContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_message_type(this);
- }
-};
-
-Drop_message_typeContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_message_type(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_message_typeContext = Drop_message_typeContext;
-
-TSqlParser.prototype.drop_message_type = function() {
-
- var localctx = new Drop_message_typeContext(this, this._ctx, this.state);
- this.enterRule(localctx, 218, TSqlParser.RULE_drop_message_type);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2519;
- this.match(TSqlParser.DROP);
- this.state = 2520;
- this.match(TSqlParser.MESSAGE);
- this.state = 2521;
- this.match(TSqlParser.TYPE);
- this.state = 2522;
- localctx.message_type_name = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_partition_functionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_partition_function;
- this.partition_function_name = null; // IdContext
- return this;
-}
-
-Drop_partition_functionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_partition_functionContext.prototype.constructor = Drop_partition_functionContext;
-
-Drop_partition_functionContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_partition_functionContext.prototype.PARTITION = function() {
- return this.getToken(TSqlParser.PARTITION, 0);
-};
-
-Drop_partition_functionContext.prototype.FUNCTION = function() {
- return this.getToken(TSqlParser.FUNCTION, 0);
-};
-
-Drop_partition_functionContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Drop_partition_functionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_partition_function(this);
- }
-};
-
-Drop_partition_functionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_partition_function(this);
- }
-};
-
-Drop_partition_functionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_partition_function(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_partition_functionContext = Drop_partition_functionContext;
-
-TSqlParser.prototype.drop_partition_function = function() {
-
- var localctx = new Drop_partition_functionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 220, TSqlParser.RULE_drop_partition_function);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2524;
- this.match(TSqlParser.DROP);
- this.state = 2525;
- this.match(TSqlParser.PARTITION);
- this.state = 2526;
- this.match(TSqlParser.FUNCTION);
- this.state = 2527;
- localctx.partition_function_name = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_partition_schemeContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_partition_scheme;
- this.partition_scheme_name = null; // IdContext
- return this;
-}
-
-Drop_partition_schemeContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_partition_schemeContext.prototype.constructor = Drop_partition_schemeContext;
-
-Drop_partition_schemeContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_partition_schemeContext.prototype.PARTITION = function() {
- return this.getToken(TSqlParser.PARTITION, 0);
-};
-
-Drop_partition_schemeContext.prototype.SCHEME = function() {
- return this.getToken(TSqlParser.SCHEME, 0);
-};
-
-Drop_partition_schemeContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Drop_partition_schemeContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_partition_scheme(this);
- }
-};
-
-Drop_partition_schemeContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_partition_scheme(this);
- }
-};
-
-Drop_partition_schemeContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_partition_scheme(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_partition_schemeContext = Drop_partition_schemeContext;
-
-TSqlParser.prototype.drop_partition_scheme = function() {
-
- var localctx = new Drop_partition_schemeContext(this, this._ctx, this.state);
- this.enterRule(localctx, 222, TSqlParser.RULE_drop_partition_scheme);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2529;
- this.match(TSqlParser.DROP);
- this.state = 2530;
- this.match(TSqlParser.PARTITION);
- this.state = 2531;
- this.match(TSqlParser.SCHEME);
- this.state = 2532;
- localctx.partition_scheme_name = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_queueContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_queue;
- this.database_name = null; // IdContext
- this.schema_name = null; // IdContext
- this.queue_name = null; // IdContext
- return this;
-}
-
-Drop_queueContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_queueContext.prototype.constructor = Drop_queueContext;
-
-Drop_queueContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_queueContext.prototype.QUEUE = function() {
- return this.getToken(TSqlParser.QUEUE, 0);
-};
-
-Drop_queueContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Drop_queueContext.prototype.DOT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DOT);
- } else {
- return this.getToken(TSqlParser.DOT, i);
- }
-};
-
-
-Drop_queueContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_queue(this);
- }
-};
-
-Drop_queueContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_queue(this);
- }
-};
-
-Drop_queueContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_queue(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_queueContext = Drop_queueContext;
-
-TSqlParser.prototype.drop_queue = function() {
-
- var localctx = new Drop_queueContext(this, this._ctx, this.state);
- this.enterRule(localctx, 224, TSqlParser.RULE_drop_queue);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2534;
- this.match(TSqlParser.DROP);
- this.state = 2535;
- this.match(TSqlParser.QUEUE);
- this.state = 2539;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,177,this._ctx);
- if(la_===1) {
- this.state = 2536;
- localctx.database_name = this.id();
- this.state = 2537;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 2544;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,178,this._ctx);
- if(la_===1) {
- this.state = 2541;
- localctx.schema_name = this.id();
- this.state = 2542;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 2546;
- localctx.queue_name = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_remote_service_bindingContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_remote_service_binding;
- this.binding_name = null; // IdContext
- return this;
-}
-
-Drop_remote_service_bindingContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_remote_service_bindingContext.prototype.constructor = Drop_remote_service_bindingContext;
-
-Drop_remote_service_bindingContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_remote_service_bindingContext.prototype.REMOTE = function() {
- return this.getToken(TSqlParser.REMOTE, 0);
-};
-
-Drop_remote_service_bindingContext.prototype.SERVICE = function() {
- return this.getToken(TSqlParser.SERVICE, 0);
-};
-
-Drop_remote_service_bindingContext.prototype.BINDING = function() {
- return this.getToken(TSqlParser.BINDING, 0);
-};
-
-Drop_remote_service_bindingContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Drop_remote_service_bindingContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_remote_service_binding(this);
- }
-};
-
-Drop_remote_service_bindingContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_remote_service_binding(this);
- }
-};
-
-Drop_remote_service_bindingContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_remote_service_binding(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_remote_service_bindingContext = Drop_remote_service_bindingContext;
-
-TSqlParser.prototype.drop_remote_service_binding = function() {
-
- var localctx = new Drop_remote_service_bindingContext(this, this._ctx, this.state);
- this.enterRule(localctx, 226, TSqlParser.RULE_drop_remote_service_binding);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2548;
- this.match(TSqlParser.DROP);
- this.state = 2549;
- this.match(TSqlParser.REMOTE);
- this.state = 2550;
- this.match(TSqlParser.SERVICE);
- this.state = 2551;
- this.match(TSqlParser.BINDING);
- this.state = 2552;
- localctx.binding_name = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_resource_poolContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_resource_pool;
- this.pool_name = null; // IdContext
- return this;
-}
-
-Drop_resource_poolContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_resource_poolContext.prototype.constructor = Drop_resource_poolContext;
-
-Drop_resource_poolContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_resource_poolContext.prototype.RESOURCE = function() {
- return this.getToken(TSqlParser.RESOURCE, 0);
-};
-
-Drop_resource_poolContext.prototype.POOL = function() {
- return this.getToken(TSqlParser.POOL, 0);
-};
-
-Drop_resource_poolContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Drop_resource_poolContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_resource_pool(this);
- }
-};
-
-Drop_resource_poolContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_resource_pool(this);
- }
-};
-
-Drop_resource_poolContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_resource_pool(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_resource_poolContext = Drop_resource_poolContext;
-
-TSqlParser.prototype.drop_resource_pool = function() {
-
- var localctx = new Drop_resource_poolContext(this, this._ctx, this.state);
- this.enterRule(localctx, 228, TSqlParser.RULE_drop_resource_pool);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2554;
- this.match(TSqlParser.DROP);
- this.state = 2555;
- this.match(TSqlParser.RESOURCE);
- this.state = 2556;
- this.match(TSqlParser.POOL);
- this.state = 2557;
- localctx.pool_name = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_db_roleContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_db_role;
- this.role_name = null; // IdContext
- return this;
-}
-
-Drop_db_roleContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_db_roleContext.prototype.constructor = Drop_db_roleContext;
-
-Drop_db_roleContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_db_roleContext.prototype.ROLE = function() {
- return this.getToken(TSqlParser.ROLE, 0);
-};
-
-Drop_db_roleContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Drop_db_roleContext.prototype.IF = function() {
- return this.getToken(TSqlParser.IF, 0);
-};
-
-Drop_db_roleContext.prototype.EXISTS = function() {
- return this.getToken(TSqlParser.EXISTS, 0);
-};
-
-Drop_db_roleContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_db_role(this);
- }
-};
-
-Drop_db_roleContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_db_role(this);
- }
-};
-
-Drop_db_roleContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_db_role(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_db_roleContext = Drop_db_roleContext;
-
-TSqlParser.prototype.drop_db_role = function() {
-
- var localctx = new Drop_db_roleContext(this, this._ctx, this.state);
- this.enterRule(localctx, 230, TSqlParser.RULE_drop_db_role);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2559;
- this.match(TSqlParser.DROP);
- this.state = 2560;
- this.match(TSqlParser.ROLE);
- this.state = 2563;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.IF) {
- this.state = 2561;
- this.match(TSqlParser.IF);
- this.state = 2562;
- this.match(TSqlParser.EXISTS);
- }
-
- this.state = 2565;
- localctx.role_name = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_routeContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_route;
- this.route_name = null; // IdContext
- return this;
-}
-
-Drop_routeContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_routeContext.prototype.constructor = Drop_routeContext;
-
-Drop_routeContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_routeContext.prototype.ROUTE = function() {
- return this.getToken(TSqlParser.ROUTE, 0);
-};
-
-Drop_routeContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Drop_routeContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_route(this);
- }
-};
-
-Drop_routeContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_route(this);
- }
-};
-
-Drop_routeContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_route(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_routeContext = Drop_routeContext;
-
-TSqlParser.prototype.drop_route = function() {
-
- var localctx = new Drop_routeContext(this, this._ctx, this.state);
- this.enterRule(localctx, 232, TSqlParser.RULE_drop_route);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2567;
- this.match(TSqlParser.DROP);
- this.state = 2568;
- this.match(TSqlParser.ROUTE);
- this.state = 2569;
- localctx.route_name = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_ruleContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_rule;
- this.schema_name = null; // IdContext
- this.rule_name = null; // IdContext
- return this;
-}
-
-Drop_ruleContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_ruleContext.prototype.constructor = Drop_ruleContext;
-
-Drop_ruleContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_ruleContext.prototype.RULE = function() {
- return this.getToken(TSqlParser.RULE, 0);
-};
-
-Drop_ruleContext.prototype.IF = function() {
- return this.getToken(TSqlParser.IF, 0);
-};
-
-Drop_ruleContext.prototype.EXISTS = function() {
- return this.getToken(TSqlParser.EXISTS, 0);
-};
-
-Drop_ruleContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Drop_ruleContext.prototype.COMMA = function() {
- return this.getToken(TSqlParser.COMMA, 0);
-};
-
-Drop_ruleContext.prototype.DOT = function() {
- return this.getToken(TSqlParser.DOT, 0);
-};
-
-Drop_ruleContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_rule(this);
- }
-};
-
-Drop_ruleContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_rule(this);
- }
-};
-
-Drop_ruleContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_rule(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_ruleContext = Drop_ruleContext;
-
-TSqlParser.prototype.drop_rule = function() {
-
- var localctx = new Drop_ruleContext(this, this._ctx, this.state);
- this.enterRule(localctx, 234, TSqlParser.RULE_drop_rule);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2571;
- this.match(TSqlParser.DROP);
- this.state = 2572;
- this.match(TSqlParser.RULE);
- this.state = 2575;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,180,this._ctx);
- if(la_===1) {
- this.state = 2573;
- this.match(TSqlParser.IF);
- this.state = 2574;
- this.match(TSqlParser.EXISTS);
-
- }
- this.state = 2586;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,183,this._ctx);
- if(la_===1) {
- this.state = 2578;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 2577;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 2583;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,182,this._ctx);
- if(la_===1) {
- this.state = 2580;
- localctx.schema_name = this.id();
- this.state = 2581;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 2585;
- localctx.rule_name = this.id();
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_schemaContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_schema;
- this.schema_name = null; // IdContext
- return this;
-}
-
-Drop_schemaContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_schemaContext.prototype.constructor = Drop_schemaContext;
-
-Drop_schemaContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_schemaContext.prototype.SCHEMA = function() {
- return this.getToken(TSqlParser.SCHEMA, 0);
-};
-
-Drop_schemaContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Drop_schemaContext.prototype.IF = function() {
- return this.getToken(TSqlParser.IF, 0);
-};
-
-Drop_schemaContext.prototype.EXISTS = function() {
- return this.getToken(TSqlParser.EXISTS, 0);
-};
-
-Drop_schemaContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_schema(this);
- }
-};
-
-Drop_schemaContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_schema(this);
- }
-};
-
-Drop_schemaContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_schema(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_schemaContext = Drop_schemaContext;
-
-TSqlParser.prototype.drop_schema = function() {
-
- var localctx = new Drop_schemaContext(this, this._ctx, this.state);
- this.enterRule(localctx, 236, TSqlParser.RULE_drop_schema);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2588;
- this.match(TSqlParser.DROP);
- this.state = 2589;
- this.match(TSqlParser.SCHEMA);
- this.state = 2592;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.IF) {
- this.state = 2590;
- this.match(TSqlParser.IF);
- this.state = 2591;
- this.match(TSqlParser.EXISTS);
- }
-
- this.state = 2594;
- localctx.schema_name = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_search_property_listContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_search_property_list;
- this.property_list_name = null; // IdContext
- return this;
-}
-
-Drop_search_property_listContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_search_property_listContext.prototype.constructor = Drop_search_property_listContext;
-
-Drop_search_property_listContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_search_property_listContext.prototype.SEARCH = function() {
- return this.getToken(TSqlParser.SEARCH, 0);
-};
-
-Drop_search_property_listContext.prototype.PROPERTY = function() {
- return this.getToken(TSqlParser.PROPERTY, 0);
-};
-
-Drop_search_property_listContext.prototype.LIST = function() {
- return this.getToken(TSqlParser.LIST, 0);
-};
-
-Drop_search_property_listContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Drop_search_property_listContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_search_property_list(this);
- }
-};
-
-Drop_search_property_listContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_search_property_list(this);
- }
-};
-
-Drop_search_property_listContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_search_property_list(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_search_property_listContext = Drop_search_property_listContext;
-
-TSqlParser.prototype.drop_search_property_list = function() {
-
- var localctx = new Drop_search_property_listContext(this, this._ctx, this.state);
- this.enterRule(localctx, 238, TSqlParser.RULE_drop_search_property_list);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2596;
- this.match(TSqlParser.DROP);
- this.state = 2597;
- this.match(TSqlParser.SEARCH);
- this.state = 2598;
- this.match(TSqlParser.PROPERTY);
- this.state = 2599;
- this.match(TSqlParser.LIST);
- this.state = 2600;
- localctx.property_list_name = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_security_policyContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_security_policy;
- this.schema_name = null; // IdContext
- this.security_policy_name = null; // IdContext
- return this;
-}
-
-Drop_security_policyContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_security_policyContext.prototype.constructor = Drop_security_policyContext;
-
-Drop_security_policyContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_security_policyContext.prototype.SECURITY = function() {
- return this.getToken(TSqlParser.SECURITY, 0);
-};
-
-Drop_security_policyContext.prototype.POLICY = function() {
- return this.getToken(TSqlParser.POLICY, 0);
-};
-
-Drop_security_policyContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Drop_security_policyContext.prototype.IF = function() {
- return this.getToken(TSqlParser.IF, 0);
-};
-
-Drop_security_policyContext.prototype.EXISTS = function() {
- return this.getToken(TSqlParser.EXISTS, 0);
-};
-
-Drop_security_policyContext.prototype.DOT = function() {
- return this.getToken(TSqlParser.DOT, 0);
-};
-
-Drop_security_policyContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_security_policy(this);
- }
-};
-
-Drop_security_policyContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_security_policy(this);
- }
-};
-
-Drop_security_policyContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_security_policy(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_security_policyContext = Drop_security_policyContext;
-
-TSqlParser.prototype.drop_security_policy = function() {
-
- var localctx = new Drop_security_policyContext(this, this._ctx, this.state);
- this.enterRule(localctx, 240, TSqlParser.RULE_drop_security_policy);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2602;
- this.match(TSqlParser.DROP);
- this.state = 2603;
- this.match(TSqlParser.SECURITY);
- this.state = 2604;
- this.match(TSqlParser.POLICY);
- this.state = 2607;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.IF) {
- this.state = 2605;
- this.match(TSqlParser.IF);
- this.state = 2606;
- this.match(TSqlParser.EXISTS);
- }
-
- this.state = 2612;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,186,this._ctx);
- if(la_===1) {
- this.state = 2609;
- localctx.schema_name = this.id();
- this.state = 2610;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 2614;
- localctx.security_policy_name = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_sequenceContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_sequence;
- this.database_name = null; // IdContext
- this.schema_name = null; // IdContext
- this.sequence_name = null; // IdContext
- return this;
-}
-
-Drop_sequenceContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_sequenceContext.prototype.constructor = Drop_sequenceContext;
-
-Drop_sequenceContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_sequenceContext.prototype.SEQUENCE = function() {
- return this.getToken(TSqlParser.SEQUENCE, 0);
-};
-
-Drop_sequenceContext.prototype.IF = function() {
- return this.getToken(TSqlParser.IF, 0);
-};
-
-Drop_sequenceContext.prototype.EXISTS = function() {
- return this.getToken(TSqlParser.EXISTS, 0);
-};
-
-Drop_sequenceContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Drop_sequenceContext.prototype.COMMA = function() {
- return this.getToken(TSqlParser.COMMA, 0);
-};
-
-Drop_sequenceContext.prototype.DOT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DOT);
- } else {
- return this.getToken(TSqlParser.DOT, i);
- }
-};
-
-
-Drop_sequenceContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_sequence(this);
- }
-};
-
-Drop_sequenceContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_sequence(this);
- }
-};
-
-Drop_sequenceContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_sequence(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_sequenceContext = Drop_sequenceContext;
-
-TSqlParser.prototype.drop_sequence = function() {
-
- var localctx = new Drop_sequenceContext(this, this._ctx, this.state);
- this.enterRule(localctx, 242, TSqlParser.RULE_drop_sequence);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2616;
- this.match(TSqlParser.DROP);
- this.state = 2617;
- this.match(TSqlParser.SEQUENCE);
- this.state = 2620;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,187,this._ctx);
- if(la_===1) {
- this.state = 2618;
- this.match(TSqlParser.IF);
- this.state = 2619;
- this.match(TSqlParser.EXISTS);
-
- }
- this.state = 2636;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,191,this._ctx);
- if(la_===1) {
- this.state = 2623;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 2622;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 2628;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,189,this._ctx);
- if(la_===1) {
- this.state = 2625;
- localctx.database_name = this.id();
- this.state = 2626;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 2633;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,190,this._ctx);
- if(la_===1) {
- this.state = 2630;
- localctx.schema_name = this.id();
- this.state = 2631;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 2635;
- localctx.sequence_name = this.id();
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_server_auditContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_server_audit;
- this.audit_name = null; // IdContext
- return this;
-}
-
-Drop_server_auditContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_server_auditContext.prototype.constructor = Drop_server_auditContext;
-
-Drop_server_auditContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_server_auditContext.prototype.SERVER = function() {
- return this.getToken(TSqlParser.SERVER, 0);
-};
-
-Drop_server_auditContext.prototype.AUDIT = function() {
- return this.getToken(TSqlParser.AUDIT, 0);
-};
-
-Drop_server_auditContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Drop_server_auditContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_server_audit(this);
- }
-};
-
-Drop_server_auditContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_server_audit(this);
- }
-};
-
-Drop_server_auditContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_server_audit(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_server_auditContext = Drop_server_auditContext;
-
-TSqlParser.prototype.drop_server_audit = function() {
-
- var localctx = new Drop_server_auditContext(this, this._ctx, this.state);
- this.enterRule(localctx, 244, TSqlParser.RULE_drop_server_audit);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2638;
- this.match(TSqlParser.DROP);
- this.state = 2639;
- this.match(TSqlParser.SERVER);
- this.state = 2640;
- this.match(TSqlParser.AUDIT);
- this.state = 2641;
- localctx.audit_name = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_server_audit_specificationContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_server_audit_specification;
- this.audit_specification_name = null; // IdContext
- return this;
-}
-
-Drop_server_audit_specificationContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_server_audit_specificationContext.prototype.constructor = Drop_server_audit_specificationContext;
-
-Drop_server_audit_specificationContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_server_audit_specificationContext.prototype.SERVER = function() {
- return this.getToken(TSqlParser.SERVER, 0);
-};
-
-Drop_server_audit_specificationContext.prototype.AUDIT = function() {
- return this.getToken(TSqlParser.AUDIT, 0);
-};
-
-Drop_server_audit_specificationContext.prototype.SPECIFICATION = function() {
- return this.getToken(TSqlParser.SPECIFICATION, 0);
-};
-
-Drop_server_audit_specificationContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Drop_server_audit_specificationContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_server_audit_specification(this);
- }
-};
-
-Drop_server_audit_specificationContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_server_audit_specification(this);
- }
-};
-
-Drop_server_audit_specificationContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_server_audit_specification(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_server_audit_specificationContext = Drop_server_audit_specificationContext;
-
-TSqlParser.prototype.drop_server_audit_specification = function() {
-
- var localctx = new Drop_server_audit_specificationContext(this, this._ctx, this.state);
- this.enterRule(localctx, 246, TSqlParser.RULE_drop_server_audit_specification);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2643;
- this.match(TSqlParser.DROP);
- this.state = 2644;
- this.match(TSqlParser.SERVER);
- this.state = 2645;
- this.match(TSqlParser.AUDIT);
- this.state = 2646;
- this.match(TSqlParser.SPECIFICATION);
- this.state = 2647;
- localctx.audit_specification_name = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_server_roleContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_server_role;
- this.role_name = null; // IdContext
- return this;
-}
-
-Drop_server_roleContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_server_roleContext.prototype.constructor = Drop_server_roleContext;
-
-Drop_server_roleContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_server_roleContext.prototype.SERVER = function() {
- return this.getToken(TSqlParser.SERVER, 0);
-};
-
-Drop_server_roleContext.prototype.ROLE = function() {
- return this.getToken(TSqlParser.ROLE, 0);
-};
-
-Drop_server_roleContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Drop_server_roleContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_server_role(this);
- }
-};
-
-Drop_server_roleContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_server_role(this);
- }
-};
-
-Drop_server_roleContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_server_role(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_server_roleContext = Drop_server_roleContext;
-
-TSqlParser.prototype.drop_server_role = function() {
-
- var localctx = new Drop_server_roleContext(this, this._ctx, this.state);
- this.enterRule(localctx, 248, TSqlParser.RULE_drop_server_role);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2649;
- this.match(TSqlParser.DROP);
- this.state = 2650;
- this.match(TSqlParser.SERVER);
- this.state = 2651;
- this.match(TSqlParser.ROLE);
- this.state = 2652;
- localctx.role_name = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_serviceContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_service;
- this.dropped_service_name = null; // IdContext
- return this;
-}
-
-Drop_serviceContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_serviceContext.prototype.constructor = Drop_serviceContext;
-
-Drop_serviceContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_serviceContext.prototype.SERVICE = function() {
- return this.getToken(TSqlParser.SERVICE, 0);
-};
-
-Drop_serviceContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Drop_serviceContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_service(this);
- }
-};
-
-Drop_serviceContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_service(this);
- }
-};
-
-Drop_serviceContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_service(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_serviceContext = Drop_serviceContext;
-
-TSqlParser.prototype.drop_service = function() {
-
- var localctx = new Drop_serviceContext(this, this._ctx, this.state);
- this.enterRule(localctx, 250, TSqlParser.RULE_drop_service);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2654;
- this.match(TSqlParser.DROP);
- this.state = 2655;
- this.match(TSqlParser.SERVICE);
- this.state = 2656;
- localctx.dropped_service_name = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_signatureContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_signature;
- this.schema_name = null; // IdContext
- this.module_name = null; // IdContext
- this.cert_name = null; // IdContext
- this.Asym_key_name = null; // IdContext
- return this;
-}
-
-Drop_signatureContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_signatureContext.prototype.constructor = Drop_signatureContext;
-
-Drop_signatureContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_signatureContext.prototype.SIGNATURE = function() {
- return this.getToken(TSqlParser.SIGNATURE, 0);
-};
-
-Drop_signatureContext.prototype.FROM = function() {
- return this.getToken(TSqlParser.FROM, 0);
-};
-
-Drop_signatureContext.prototype.BY = function() {
- return this.getToken(TSqlParser.BY, 0);
-};
-
-Drop_signatureContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Drop_signatureContext.prototype.COUNTER = function() {
- return this.getToken(TSqlParser.COUNTER, 0);
-};
-
-Drop_signatureContext.prototype.DOT = function() {
- return this.getToken(TSqlParser.DOT, 0);
-};
-
-Drop_signatureContext.prototype.CERTIFICATE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.CERTIFICATE);
- } else {
- return this.getToken(TSqlParser.CERTIFICATE, i);
- }
-};
-
-
-Drop_signatureContext.prototype.ASYMMETRIC = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ASYMMETRIC);
- } else {
- return this.getToken(TSqlParser.ASYMMETRIC, i);
- }
-};
-
-
-Drop_signatureContext.prototype.KEY = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.KEY);
- } else {
- return this.getToken(TSqlParser.KEY, i);
- }
-};
-
-
-Drop_signatureContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Drop_signatureContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_signature(this);
- }
-};
-
-Drop_signatureContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_signature(this);
- }
-};
-
-Drop_signatureContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_signature(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_signatureContext = Drop_signatureContext;
-
-TSqlParser.prototype.drop_signature = function() {
-
- var localctx = new Drop_signatureContext(this, this._ctx, this.state);
- this.enterRule(localctx, 252, TSqlParser.RULE_drop_signature);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2658;
- this.match(TSqlParser.DROP);
- this.state = 2660;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COUNTER) {
- this.state = 2659;
- this.match(TSqlParser.COUNTER);
- }
-
- this.state = 2662;
- this.match(TSqlParser.SIGNATURE);
- this.state = 2663;
- this.match(TSqlParser.FROM);
- this.state = 2667;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,193,this._ctx);
- if(la_===1) {
- this.state = 2664;
- localctx.schema_name = this.id();
- this.state = 2665;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 2669;
- localctx.module_name = this.id();
- this.state = 2670;
- this.match(TSqlParser.BY);
- this.state = 2682;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- do {
- this.state = 2682;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,196,this._ctx);
- switch(la_) {
- case 1:
- this.state = 2672;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 2671;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 2674;
- this.match(TSqlParser.CERTIFICATE);
- this.state = 2675;
- localctx.cert_name = this.id();
- break;
-
- case 2:
- this.state = 2677;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 2676;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 2679;
- this.match(TSqlParser.ASYMMETRIC);
- this.state = 2680;
- this.match(TSqlParser.KEY);
- this.state = 2681;
- localctx.Asym_key_name = this.id();
- break;
-
- }
- this.state = 2684;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- } while(_la===TSqlParser.ASYMMETRIC || _la===TSqlParser.CERTIFICATE || _la===TSqlParser.COMMA);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_statistics_name_azure_dw_and_pdwContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_statistics_name_azure_dw_and_pdw;
- this.schema_name = null; // IdContext
- this.object_name = null; // IdContext
- this.statistics_name = null; // IdContext
- return this;
-}
-
-Drop_statistics_name_azure_dw_and_pdwContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_statistics_name_azure_dw_and_pdwContext.prototype.constructor = Drop_statistics_name_azure_dw_and_pdwContext;
-
-Drop_statistics_name_azure_dw_and_pdwContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_statistics_name_azure_dw_and_pdwContext.prototype.STATISTICS = function() {
- return this.getToken(TSqlParser.STATISTICS, 0);
-};
-
-Drop_statistics_name_azure_dw_and_pdwContext.prototype.DOT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DOT);
- } else {
- return this.getToken(TSqlParser.DOT, i);
- }
-};
-
-
-Drop_statistics_name_azure_dw_and_pdwContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Drop_statistics_name_azure_dw_and_pdwContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_statistics_name_azure_dw_and_pdw(this);
- }
-};
-
-Drop_statistics_name_azure_dw_and_pdwContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_statistics_name_azure_dw_and_pdw(this);
- }
-};
-
-Drop_statistics_name_azure_dw_and_pdwContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_statistics_name_azure_dw_and_pdw(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_statistics_name_azure_dw_and_pdwContext = Drop_statistics_name_azure_dw_and_pdwContext;
-
-TSqlParser.prototype.drop_statistics_name_azure_dw_and_pdw = function() {
-
- var localctx = new Drop_statistics_name_azure_dw_and_pdwContext(this, this._ctx, this.state);
- this.enterRule(localctx, 254, TSqlParser.RULE_drop_statistics_name_azure_dw_and_pdw);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2686;
- this.match(TSqlParser.DROP);
- this.state = 2687;
- this.match(TSqlParser.STATISTICS);
- this.state = 2691;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,198,this._ctx);
- if(la_===1) {
- this.state = 2688;
- localctx.schema_name = this.id();
- this.state = 2689;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 2693;
- localctx.object_name = this.id();
- this.state = 2694;
- this.match(TSqlParser.DOT);
- this.state = 2695;
- localctx.statistics_name = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_symmetric_keyContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_symmetric_key;
- this.symmetric_key_name = null; // IdContext
- return this;
-}
-
-Drop_symmetric_keyContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_symmetric_keyContext.prototype.constructor = Drop_symmetric_keyContext;
-
-Drop_symmetric_keyContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_symmetric_keyContext.prototype.SYMMETRIC = function() {
- return this.getToken(TSqlParser.SYMMETRIC, 0);
-};
-
-Drop_symmetric_keyContext.prototype.KEY = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.KEY);
- } else {
- return this.getToken(TSqlParser.KEY, i);
- }
-};
-
-
-Drop_symmetric_keyContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Drop_symmetric_keyContext.prototype.REMOVE = function() {
- return this.getToken(TSqlParser.REMOVE, 0);
-};
-
-Drop_symmetric_keyContext.prototype.PROVIDER = function() {
- return this.getToken(TSqlParser.PROVIDER, 0);
-};
-
-Drop_symmetric_keyContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_symmetric_key(this);
- }
-};
-
-Drop_symmetric_keyContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_symmetric_key(this);
- }
-};
-
-Drop_symmetric_keyContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_symmetric_key(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_symmetric_keyContext = Drop_symmetric_keyContext;
-
-TSqlParser.prototype.drop_symmetric_key = function() {
-
- var localctx = new Drop_symmetric_keyContext(this, this._ctx, this.state);
- this.enterRule(localctx, 256, TSqlParser.RULE_drop_symmetric_key);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2697;
- this.match(TSqlParser.DROP);
- this.state = 2698;
- this.match(TSqlParser.SYMMETRIC);
- this.state = 2699;
- this.match(TSqlParser.KEY);
- this.state = 2700;
- localctx.symmetric_key_name = this.id();
- this.state = 2704;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,199,this._ctx);
- if(la_===1) {
- this.state = 2701;
- this.match(TSqlParser.REMOVE);
- this.state = 2702;
- this.match(TSqlParser.PROVIDER);
- this.state = 2703;
- this.match(TSqlParser.KEY);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_synonymContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_synonym;
- this.schema = null; // IdContext
- this.synonym_name = null; // IdContext
- return this;
-}
-
-Drop_synonymContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_synonymContext.prototype.constructor = Drop_synonymContext;
-
-Drop_synonymContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_synonymContext.prototype.SYNONYM = function() {
- return this.getToken(TSqlParser.SYNONYM, 0);
-};
-
-Drop_synonymContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Drop_synonymContext.prototype.IF = function() {
- return this.getToken(TSqlParser.IF, 0);
-};
-
-Drop_synonymContext.prototype.EXISTS = function() {
- return this.getToken(TSqlParser.EXISTS, 0);
-};
-
-Drop_synonymContext.prototype.DOT = function() {
- return this.getToken(TSqlParser.DOT, 0);
-};
-
-Drop_synonymContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_synonym(this);
- }
-};
-
-Drop_synonymContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_synonym(this);
- }
-};
-
-Drop_synonymContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_synonym(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_synonymContext = Drop_synonymContext;
-
-TSqlParser.prototype.drop_synonym = function() {
-
- var localctx = new Drop_synonymContext(this, this._ctx, this.state);
- this.enterRule(localctx, 258, TSqlParser.RULE_drop_synonym);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2706;
- this.match(TSqlParser.DROP);
- this.state = 2707;
- this.match(TSqlParser.SYNONYM);
- this.state = 2710;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.IF) {
- this.state = 2708;
- this.match(TSqlParser.IF);
- this.state = 2709;
- this.match(TSqlParser.EXISTS);
- }
-
- this.state = 2715;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,201,this._ctx);
- if(la_===1) {
- this.state = 2712;
- localctx.schema = this.id();
- this.state = 2713;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 2717;
- localctx.synonym_name = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_userContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_user;
- this.user_name = null; // IdContext
- return this;
-}
-
-Drop_userContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_userContext.prototype.constructor = Drop_userContext;
-
-Drop_userContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_userContext.prototype.USER = function() {
- return this.getToken(TSqlParser.USER, 0);
-};
-
-Drop_userContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Drop_userContext.prototype.IF = function() {
- return this.getToken(TSqlParser.IF, 0);
-};
-
-Drop_userContext.prototype.EXISTS = function() {
- return this.getToken(TSqlParser.EXISTS, 0);
-};
-
-Drop_userContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_user(this);
- }
-};
-
-Drop_userContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_user(this);
- }
-};
-
-Drop_userContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_user(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_userContext = Drop_userContext;
-
-TSqlParser.prototype.drop_user = function() {
-
- var localctx = new Drop_userContext(this, this._ctx, this.state);
- this.enterRule(localctx, 260, TSqlParser.RULE_drop_user);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2719;
- this.match(TSqlParser.DROP);
- this.state = 2720;
- this.match(TSqlParser.USER);
- this.state = 2723;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.IF) {
- this.state = 2721;
- this.match(TSqlParser.IF);
- this.state = 2722;
- this.match(TSqlParser.EXISTS);
- }
-
- this.state = 2725;
- localctx.user_name = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_workload_groupContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_workload_group;
- this.group_name = null; // IdContext
- return this;
-}
-
-Drop_workload_groupContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_workload_groupContext.prototype.constructor = Drop_workload_groupContext;
-
-Drop_workload_groupContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_workload_groupContext.prototype.WORKLOAD = function() {
- return this.getToken(TSqlParser.WORKLOAD, 0);
-};
-
-Drop_workload_groupContext.prototype.GROUP = function() {
- return this.getToken(TSqlParser.GROUP, 0);
-};
-
-Drop_workload_groupContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Drop_workload_groupContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_workload_group(this);
- }
-};
-
-Drop_workload_groupContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_workload_group(this);
- }
-};
-
-Drop_workload_groupContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_workload_group(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_workload_groupContext = Drop_workload_groupContext;
-
-TSqlParser.prototype.drop_workload_group = function() {
-
- var localctx = new Drop_workload_groupContext(this, this._ctx, this.state);
- this.enterRule(localctx, 262, TSqlParser.RULE_drop_workload_group);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2727;
- this.match(TSqlParser.DROP);
- this.state = 2728;
- this.match(TSqlParser.WORKLOAD);
- this.state = 2729;
- this.match(TSqlParser.GROUP);
- this.state = 2730;
- localctx.group_name = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_xml_schema_collectionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_xml_schema_collection;
- this.relational_schema = null; // IdContext
- this.sql_identifier = null; // IdContext
- return this;
-}
-
-Drop_xml_schema_collectionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_xml_schema_collectionContext.prototype.constructor = Drop_xml_schema_collectionContext;
-
-Drop_xml_schema_collectionContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_xml_schema_collectionContext.prototype.XML = function() {
- return this.getToken(TSqlParser.XML, 0);
-};
-
-Drop_xml_schema_collectionContext.prototype.SCHEMA = function() {
- return this.getToken(TSqlParser.SCHEMA, 0);
-};
-
-Drop_xml_schema_collectionContext.prototype.COLLECTION = function() {
- return this.getToken(TSqlParser.COLLECTION, 0);
-};
-
-Drop_xml_schema_collectionContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Drop_xml_schema_collectionContext.prototype.DOT = function() {
- return this.getToken(TSqlParser.DOT, 0);
-};
-
-Drop_xml_schema_collectionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_xml_schema_collection(this);
- }
-};
-
-Drop_xml_schema_collectionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_xml_schema_collection(this);
- }
-};
-
-Drop_xml_schema_collectionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_xml_schema_collection(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_xml_schema_collectionContext = Drop_xml_schema_collectionContext;
-
-TSqlParser.prototype.drop_xml_schema_collection = function() {
-
- var localctx = new Drop_xml_schema_collectionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 264, TSqlParser.RULE_drop_xml_schema_collection);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2732;
- this.match(TSqlParser.DROP);
- this.state = 2733;
- this.match(TSqlParser.XML);
- this.state = 2734;
- this.match(TSqlParser.SCHEMA);
- this.state = 2735;
- this.match(TSqlParser.COLLECTION);
- this.state = 2739;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,203,this._ctx);
- if(la_===1) {
- this.state = 2736;
- localctx.relational_schema = this.id();
- this.state = 2737;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 2741;
- localctx.sql_identifier = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Disable_triggerContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_disable_trigger;
- this.schema_name = null; // IdContext
- this.trigger_name = null; // IdContext
- this.schema_id = null; // IdContext
- this.object_name = null; // IdContext
- return this;
-}
-
-Disable_triggerContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Disable_triggerContext.prototype.constructor = Disable_triggerContext;
-
-Disable_triggerContext.prototype.DISABLE = function() {
- return this.getToken(TSqlParser.DISABLE, 0);
-};
-
-Disable_triggerContext.prototype.TRIGGER = function() {
- return this.getToken(TSqlParser.TRIGGER, 0);
-};
-
-Disable_triggerContext.prototype.ON = function() {
- return this.getToken(TSqlParser.ON, 0);
-};
-
-Disable_triggerContext.prototype.ALL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ALL);
- } else {
- return this.getToken(TSqlParser.ALL, i);
- }
-};
-
-
-Disable_triggerContext.prototype.DATABASE = function() {
- return this.getToken(TSqlParser.DATABASE, 0);
-};
-
-Disable_triggerContext.prototype.SERVER = function() {
- return this.getToken(TSqlParser.SERVER, 0);
-};
-
-Disable_triggerContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Disable_triggerContext.prototype.DOT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DOT);
- } else {
- return this.getToken(TSqlParser.DOT, i);
- }
-};
-
-
-Disable_triggerContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Disable_triggerContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDisable_trigger(this);
- }
-};
-
-Disable_triggerContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDisable_trigger(this);
- }
-};
-
-Disable_triggerContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDisable_trigger(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Disable_triggerContext = Disable_triggerContext;
-
-TSqlParser.prototype.disable_trigger = function() {
-
- var localctx = new Disable_triggerContext(this, this._ctx, this.state);
- this.enterRule(localctx, 266, TSqlParser.RULE_disable_trigger);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2743;
- this.match(TSqlParser.DISABLE);
- this.state = 2744;
- this.match(TSqlParser.TRIGGER);
- this.state = 2759;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- case TSqlParser.COMMA:
- this.state = 2754;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- do {
- this.state = 2746;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 2745;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 2751;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,205,this._ctx);
- if(la_===1) {
- this.state = 2748;
- localctx.schema_name = this.id();
- this.state = 2749;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 2753;
- localctx.trigger_name = this.id();
- this.state = 2756;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- } while(_la===TSqlParser.CALLED || _la===TSqlParser.DATA_COMPRESSION || ((((_la - 112)) & ~0x1f) == 0 && ((1 << (_la - 112)) & ((1 << (TSqlParser.EVENTDATA - 112)) | (1 << (TSqlParser.FILENAME - 112)) | (1 << (TSqlParser.FILLFACTOR - 112)) | (1 << (TSqlParser.FORCESEEK - 112)))) !== 0) || ((((_la - 158)) & ~0x1f) == 0 && ((1 << (_la - 158)) & ((1 << (TSqlParser.INIT - 158)) | (1 << (TSqlParser.KEY - 158)) | (1 << (TSqlParser.MASTER - 158)) | (1 << (TSqlParser.MAX_MEMORY - 158)))) !== 0) || _la===TSqlParser.OFFSETS || _la===TSqlParser.PAGE || ((((_la - 259)) & ~0x1f) == 0 && ((1 << (_la - 259)) & ((1 << (TSqlParser.PUBLIC - 259)) | (1 << (TSqlParser.R - 259)) | (1 << (TSqlParser.RAW - 259)) | (1 << (TSqlParser.RETURN - 259)) | (1 << (TSqlParser.RETURNS - 259)) | (1 << (TSqlParser.ROWCOUNT - 259)))) !== 0) || ((((_la - 295)) & ~0x1f) == 0 && ((1 << (_la - 295)) & ((1 << (TSqlParser.SAFETY - 295)) | (1 << (TSqlParser.SERVER - 295)) | (1 << (TSqlParser.SID - 295)) | (1 << (TSqlParser.SOURCE - 295)) | (1 << (TSqlParser.SPLIT - 295)))) !== 0) || ((((_la - 327)) & ~0x1f) == 0 && ((1 << (_la - 327)) & ((1 << (TSqlParser.STATE - 327)) | (1 << (TSqlParser.START - 327)) | (1 << (TSqlParser.TARGET - 327)))) !== 0) || ((((_la - 380)) & ~0x1f) == 0 && ((1 << (_la - 380)) & ((1 << (TSqlParser.ABSOLUTE - 380)) | (1 << (TSqlParser.ACCENT_SENSITIVITY - 380)) | (1 << (TSqlParser.ACTION - 380)) | (1 << (TSqlParser.ACTIVATION - 380)) | (1 << (TSqlParser.ACTIVE - 380)) | (1 << (TSqlParser.ADDRESS - 380)) | (1 << (TSqlParser.AES_128 - 380)) | (1 << (TSqlParser.AES_192 - 380)) | (1 << (TSqlParser.AES_256 - 380)) | (1 << (TSqlParser.AFFINITY - 380)) | (1 << (TSqlParser.AFTER - 380)) | (1 << (TSqlParser.AGGREGATE - 380)) | (1 << (TSqlParser.ALGORITHM - 380)) | (1 << (TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS - 380)) | (1 << (TSqlParser.ALLOW_SNAPSHOT_ISOLATION - 380)) | (1 << (TSqlParser.ALLOWED - 380)) | (1 << (TSqlParser.ANSI_NULL_DEFAULT - 380)) | (1 << (TSqlParser.ANSI_NULLS - 380)) | (1 << (TSqlParser.ANSI_PADDING - 380)) | (1 << (TSqlParser.ANSI_WARNINGS - 380)) | (1 << (TSqlParser.APPLICATION_LOG - 380)) | (1 << (TSqlParser.APPLY - 380)) | (1 << (TSqlParser.ARITHABORT - 380)) | (1 << (TSqlParser.ASSEMBLY - 380)) | (1 << (TSqlParser.AUDIT - 380)) | (1 << (TSqlParser.AUDIT_GUID - 380)) | (1 << (TSqlParser.AUTO - 380)) | (1 << (TSqlParser.AUTO_CLEANUP - 380)) | (1 << (TSqlParser.AUTO_CLOSE - 380)) | (1 << (TSqlParser.AUTO_CREATE_STATISTICS - 380)) | (1 << (TSqlParser.AUTO_SHRINK - 380)) | (1 << (TSqlParser.AUTO_UPDATE_STATISTICS - 380)))) !== 0) || ((((_la - 412)) & ~0x1f) == 0 && ((1 << (_la - 412)) & ((1 << (TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC - 412)) | (1 << (TSqlParser.AVAILABILITY - 412)) | (1 << (TSqlParser.AVG - 412)) | (1 << (TSqlParser.BACKUP_PRIORITY - 412)) | (1 << (TSqlParser.BEGIN_DIALOG - 412)) | (1 << (TSqlParser.BIGINT - 412)) | (1 << (TSqlParser.BINARY_BASE64 - 412)) | (1 << (TSqlParser.BINARY_CHECKSUM - 412)) | (1 << (TSqlParser.BINDING - 412)) | (1 << (TSqlParser.BLOB_STORAGE - 412)) | (1 << (TSqlParser.BROKER - 412)) | (1 << (TSqlParser.BROKER_INSTANCE - 412)) | (1 << (TSqlParser.BULK_LOGGED - 412)) | (1 << (TSqlParser.CALLER - 412)) | (1 << (TSqlParser.CAP_CPU_PERCENT - 412)) | (1 << (TSqlParser.CAST - 412)) | (1 << (TSqlParser.CATALOG - 412)) | (1 << (TSqlParser.CATCH - 412)) | (1 << (TSqlParser.CHANGE_RETENTION - 412)) | (1 << (TSqlParser.CHANGE_TRACKING - 412)) | (1 << (TSqlParser.CHECKSUM - 412)) | (1 << (TSqlParser.CHECKSUM_AGG - 412)) | (1 << (TSqlParser.CLEANUP - 412)) | (1 << (TSqlParser.COLLECTION - 412)) | (1 << (TSqlParser.COLUMN_MASTER_KEY - 412)) | (1 << (TSqlParser.COMMITTED - 412)) | (1 << (TSqlParser.COMPATIBILITY_LEVEL - 412)) | (1 << (TSqlParser.CONCAT - 412)) | (1 << (TSqlParser.CONCAT_NULL_YIELDS_NULL - 412)) | (1 << (TSqlParser.CONTENT - 412)) | (1 << (TSqlParser.CONTROL - 412)) | (1 << (TSqlParser.COOKIE - 412)))) !== 0) || ((((_la - 444)) & ~0x1f) == 0 && ((1 << (_la - 444)) & ((1 << (TSqlParser.COUNT - 444)) | (1 << (TSqlParser.COUNT_BIG - 444)) | (1 << (TSqlParser.COUNTER - 444)) | (1 << (TSqlParser.CPU - 444)) | (1 << (TSqlParser.CREATE_NEW - 444)) | (1 << (TSqlParser.CREATION_DISPOSITION - 444)) | (1 << (TSqlParser.CREDENTIAL - 444)) | (1 << (TSqlParser.CRYPTOGRAPHIC - 444)) | (1 << (TSqlParser.CURSOR_CLOSE_ON_COMMIT - 444)) | (1 << (TSqlParser.CURSOR_DEFAULT - 444)) | (1 << (TSqlParser.DATA - 444)) | (1 << (TSqlParser.DATE_CORRELATION_OPTIMIZATION - 444)) | (1 << (TSqlParser.DATEADD - 444)) | (1 << (TSqlParser.DATEDIFF - 444)) | (1 << (TSqlParser.DATENAME - 444)) | (1 << (TSqlParser.DATEPART - 444)) | (1 << (TSqlParser.DAYS - 444)) | (1 << (TSqlParser.DB_CHAINING - 444)) | (1 << (TSqlParser.DB_FAILOVER - 444)) | (1 << (TSqlParser.DECRYPTION - 444)) | (1 << (TSqlParser.DEFAULT_DOUBLE_QUOTE - 444)) | (1 << (TSqlParser.DEFAULT_FULLTEXT_LANGUAGE - 444)) | (1 << (TSqlParser.DEFAULT_LANGUAGE - 444)) | (1 << (TSqlParser.DELAY - 444)) | (1 << (TSqlParser.DELAYED_DURABILITY - 444)) | (1 << (TSqlParser.DELETED - 444)) | (1 << (TSqlParser.DENSE_RANK - 444)) | (1 << (TSqlParser.DEPENDENTS - 444)) | (1 << (TSqlParser.DES - 444)) | (1 << (TSqlParser.DESCRIPTION - 444)) | (1 << (TSqlParser.DESX - 444)) | (1 << (TSqlParser.DHCP - 444)))) !== 0) || ((((_la - 476)) & ~0x1f) == 0 && ((1 << (_la - 476)) & ((1 << (TSqlParser.DIALOG - 476)) | (1 << (TSqlParser.DIRECTORY_NAME - 476)) | (1 << (TSqlParser.DISABLE - 476)) | (1 << (TSqlParser.DISABLE_BROKER - 476)) | (1 << (TSqlParser.DISABLED - 476)) | (1 << (TSqlParser.DISK_DRIVE - 476)) | (1 << (TSqlParser.DOCUMENT - 476)) | (1 << (TSqlParser.DYNAMIC - 476)) | (1 << (TSqlParser.EMERGENCY - 476)) | (1 << (TSqlParser.EMPTY - 476)) | (1 << (TSqlParser.ENABLE - 476)) | (1 << (TSqlParser.ENABLE_BROKER - 476)) | (1 << (TSqlParser.ENCRYPTED_VALUE - 476)) | (1 << (TSqlParser.ENCRYPTION - 476)) | (1 << (TSqlParser.ENDPOINT_URL - 476)) | (1 << (TSqlParser.ERROR_BROKER_CONVERSATIONS - 476)) | (1 << (TSqlParser.EXCLUSIVE - 476)) | (1 << (TSqlParser.EXECUTABLE - 476)) | (1 << (TSqlParser.EXIST - 476)) | (1 << (TSqlParser.EXPAND - 476)) | (1 << (TSqlParser.EXPIRY_DATE - 476)) | (1 << (TSqlParser.EXPLICIT - 476)) | (1 << (TSqlParser.FAIL_OPERATION - 476)) | (1 << (TSqlParser.FAILOVER_MODE - 476)) | (1 << (TSqlParser.FAILURE - 476)) | (1 << (TSqlParser.FAILURE_CONDITION_LEVEL - 476)) | (1 << (TSqlParser.FAST - 476)) | (1 << (TSqlParser.FAST_FORWARD - 476)) | (1 << (TSqlParser.FILEGROUP - 476)) | (1 << (TSqlParser.FILEGROWTH - 476)) | (1 << (TSqlParser.FILEPATH - 476)))) !== 0) || ((((_la - 508)) & ~0x1f) == 0 && ((1 << (_la - 508)) & ((1 << (TSqlParser.FILESTREAM - 508)) | (1 << (TSqlParser.FILTER - 508)) | (1 << (TSqlParser.FIRST - 508)) | (1 << (TSqlParser.FIRST_VALUE - 508)) | (1 << (TSqlParser.FOLLOWING - 508)) | (1 << (TSqlParser.FORCE - 508)) | (1 << (TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS - 508)) | (1 << (TSqlParser.FORCED - 508)) | (1 << (TSqlParser.FORMAT - 508)) | (1 << (TSqlParser.FORWARD_ONLY - 508)) | (1 << (TSqlParser.FULLSCAN - 508)) | (1 << (TSqlParser.FULLTEXT - 508)) | (1 << (TSqlParser.GB - 508)) | (1 << (TSqlParser.GETDATE - 508)) | (1 << (TSqlParser.GETUTCDATE - 508)) | (1 << (TSqlParser.GLOBAL - 508)) | (1 << (TSqlParser.GO - 508)) | (1 << (TSqlParser.GROUP_MAX_REQUESTS - 508)) | (1 << (TSqlParser.GROUPING - 508)) | (1 << (TSqlParser.GROUPING_ID - 508)) | (1 << (TSqlParser.HADR - 508)) | (1 << (TSqlParser.HASH - 508)) | (1 << (TSqlParser.HEALTH_CHECK_TIMEOUT - 508)) | (1 << (TSqlParser.HIGH - 508)) | (1 << (TSqlParser.HONOR_BROKER_PRIORITY - 508)) | (1 << (TSqlParser.HOURS - 508)) | (1 << (TSqlParser.IDENTITY_VALUE - 508)) | (1 << (TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX - 508)) | (1 << (TSqlParser.IMMEDIATE - 508)) | (1 << (TSqlParser.IMPERSONATE - 508)) | (1 << (TSqlParser.IMPORTANCE - 508)))) !== 0) || ((((_la - 540)) & ~0x1f) == 0 && ((1 << (_la - 540)) & ((1 << (TSqlParser.INCREMENTAL - 540)) | (1 << (TSqlParser.INITIATOR - 540)) | (1 << (TSqlParser.INPUT - 540)) | (1 << (TSqlParser.INSENSITIVE - 540)) | (1 << (TSqlParser.INSERTED - 540)) | (1 << (TSqlParser.INT - 540)) | (1 << (TSqlParser.IP - 540)) | (1 << (TSqlParser.ISOLATION - 540)) | (1 << (TSqlParser.KB - 540)) | (1 << (TSqlParser.KEEP - 540)) | (1 << (TSqlParser.KEEPFIXED - 540)) | (1 << (TSqlParser.KEY_SOURCE - 540)) | (1 << (TSqlParser.KEYS - 540)) | (1 << (TSqlParser.KEYSET - 540)) | (1 << (TSqlParser.LAG - 540)) | (1 << (TSqlParser.LAST - 540)) | (1 << (TSqlParser.LAST_VALUE - 540)) | (1 << (TSqlParser.LEAD - 540)) | (1 << (TSqlParser.LEVEL - 540)) | (1 << (TSqlParser.LIST - 540)) | (1 << (TSqlParser.LISTENER - 540)) | (1 << (TSqlParser.LISTENER_URL - 540)) | (1 << (TSqlParser.LOB_COMPACTION - 540)) | (1 << (TSqlParser.LOCAL - 540)) | (1 << (TSqlParser.LOCATION - 540)) | (1 << (TSqlParser.LOCK - 540)) | (1 << (TSqlParser.LOCK_ESCALATION - 540)) | (1 << (TSqlParser.LOGIN - 540)) | (1 << (TSqlParser.LOOP - 540)) | (1 << (TSqlParser.LOW - 540)))) !== 0) || ((((_la - 572)) & ~0x1f) == 0 && ((1 << (_la - 572)) & ((1 << (TSqlParser.MANUAL - 572)) | (1 << (TSqlParser.MARK - 572)) | (1 << (TSqlParser.MATERIALIZED - 572)) | (1 << (TSqlParser.MAX - 572)) | (1 << (TSqlParser.MAX_CPU_PERCENT - 572)) | (1 << (TSqlParser.MAX_DOP - 572)) | (1 << (TSqlParser.MAX_FILES - 572)) | (1 << (TSqlParser.MAX_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MAX_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MAX_PROCESSES - 572)) | (1 << (TSqlParser.MAX_QUEUE_READERS - 572)) | (1 << (TSqlParser.MAX_ROLLOVER_FILES - 572)) | (1 << (TSqlParser.MAXDOP - 572)) | (1 << (TSqlParser.MAXRECURSION - 572)) | (1 << (TSqlParser.MAXSIZE - 572)) | (1 << (TSqlParser.MB - 572)) | (1 << (TSqlParser.MEDIUM - 572)) | (1 << (TSqlParser.MEMORY_OPTIMIZED_DATA - 572)) | (1 << (TSqlParser.MESSAGE - 572)) | (1 << (TSqlParser.MIN - 572)) | (1 << (TSqlParser.MIN_ACTIVE_ROWVERSION - 572)) | (1 << (TSqlParser.MIN_CPU_PERCENT - 572)) | (1 << (TSqlParser.MIN_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MIN_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MINUTES - 572)) | (1 << (TSqlParser.MIRROR_ADDRESS - 572)) | (1 << (TSqlParser.MIXED_PAGE_ALLOCATION - 572)) | (1 << (TSqlParser.MODE - 572)) | (1 << (TSqlParser.MODIFY - 572)) | (1 << (TSqlParser.MOVE - 572)) | (1 << (TSqlParser.MULTI_USER - 572)) | (1 << (TSqlParser.NAME - 572)))) !== 0) || ((((_la - 604)) & ~0x1f) == 0 && ((1 << (_la - 604)) & ((1 << (TSqlParser.NESTED_TRIGGERS - 604)) | (1 << (TSqlParser.NEW_ACCOUNT - 604)) | (1 << (TSqlParser.NEW_BROKER - 604)) | (1 << (TSqlParser.NEW_PASSWORD - 604)) | (1 << (TSqlParser.NEXT - 604)) | (1 << (TSqlParser.NO - 604)) | (1 << (TSqlParser.NO_TRUNCATE - 604)) | (1 << (TSqlParser.NO_WAIT - 604)) | (1 << (TSqlParser.NOCOUNT - 604)) | (1 << (TSqlParser.NODES - 604)) | (1 << (TSqlParser.NOEXPAND - 604)) | (1 << (TSqlParser.NON_TRANSACTED_ACCESS - 604)) | (1 << (TSqlParser.NORECOMPUTE - 604)) | (1 << (TSqlParser.NORECOVERY - 604)) | (1 << (TSqlParser.NOWAIT - 604)) | (1 << (TSqlParser.NTILE - 604)) | (1 << (TSqlParser.NUMANODE - 604)) | (1 << (TSqlParser.NUMBER - 604)) | (1 << (TSqlParser.NUMERIC_ROUNDABORT - 604)) | (1 << (TSqlParser.OBJECT - 604)) | (1 << (TSqlParser.OFFLINE - 604)) | (1 << (TSqlParser.OFFSET - 604)) | (1 << (TSqlParser.OLD_ACCOUNT - 604)) | (1 << (TSqlParser.ONLINE - 604)) | (1 << (TSqlParser.ONLY - 604)) | (1 << (TSqlParser.OPEN_EXISTING - 604)) | (1 << (TSqlParser.OPTIMISTIC - 604)) | (1 << (TSqlParser.OPTIMIZE - 604)) | (1 << (TSqlParser.OUT - 604)) | (1 << (TSqlParser.OUTPUT - 604)) | (1 << (TSqlParser.OWNER - 604)))) !== 0) || ((((_la - 636)) & ~0x1f) == 0 && ((1 << (_la - 636)) & ((1 << (TSqlParser.PAGE_VERIFY - 636)) | (1 << (TSqlParser.PARAMETERIZATION - 636)) | (1 << (TSqlParser.PARTITION - 636)) | (1 << (TSqlParser.PARTITIONS - 636)) | (1 << (TSqlParser.PARTNER - 636)) | (1 << (TSqlParser.PATH - 636)) | (1 << (TSqlParser.POISON_MESSAGE_HANDLING - 636)) | (1 << (TSqlParser.POOL - 636)) | (1 << (TSqlParser.PORT - 636)) | (1 << (TSqlParser.PRECEDING - 636)) | (1 << (TSqlParser.PRIMARY_ROLE - 636)) | (1 << (TSqlParser.PRIOR - 636)) | (1 << (TSqlParser.PRIORITY - 636)) | (1 << (TSqlParser.PRIORITY_LEVEL - 636)) | (1 << (TSqlParser.PRIVATE - 636)) | (1 << (TSqlParser.PRIVATE_KEY - 636)) | (1 << (TSqlParser.PRIVILEGES - 636)) | (1 << (TSqlParser.PROCEDURE_NAME - 636)) | (1 << (TSqlParser.PROPERTY - 636)) | (1 << (TSqlParser.PROVIDER - 636)) | (1 << (TSqlParser.PROVIDER_KEY_NAME - 636)) | (1 << (TSqlParser.QUERY - 636)) | (1 << (TSqlParser.QUEUE - 636)) | (1 << (TSqlParser.QUEUE_DELAY - 636)) | (1 << (TSqlParser.QUOTED_IDENTIFIER - 636)) | (1 << (TSqlParser.RANGE - 636)) | (1 << (TSqlParser.RANK - 636)) | (1 << (TSqlParser.RC2 - 636)) | (1 << (TSqlParser.RC4 - 636)) | (1 << (TSqlParser.RC4_128 - 636)) | (1 << (TSqlParser.READ_COMMITTED_SNAPSHOT - 636)) | (1 << (TSqlParser.READ_ONLY - 636)))) !== 0) || ((((_la - 668)) & ~0x1f) == 0 && ((1 << (_la - 668)) & ((1 << (TSqlParser.READ_ONLY_ROUTING_LIST - 668)) | (1 << (TSqlParser.READ_WRITE - 668)) | (1 << (TSqlParser.READONLY - 668)) | (1 << (TSqlParser.REBUILD - 668)) | (1 << (TSqlParser.RECEIVE - 668)) | (1 << (TSqlParser.RECOMPILE - 668)) | (1 << (TSqlParser.RECOVERY - 668)) | (1 << (TSqlParser.RECURSIVE_TRIGGERS - 668)) | (1 << (TSqlParser.RELATIVE - 668)) | (1 << (TSqlParser.REMOTE - 668)) | (1 << (TSqlParser.REMOTE_SERVICE_NAME - 668)) | (1 << (TSqlParser.REMOVE - 668)) | (1 << (TSqlParser.REORGANIZE - 668)) | (1 << (TSqlParser.REPEATABLE - 668)) | (1 << (TSqlParser.REPLICA - 668)) | (1 << (TSqlParser.REQUEST_MAX_CPU_TIME_SEC - 668)) | (1 << (TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT - 668)) | (1 << (TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC - 668)) | (1 << (TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT - 668)) | (1 << (TSqlParser.RESERVE_DISK_SPACE - 668)) | (1 << (TSqlParser.RESOURCE - 668)) | (1 << (TSqlParser.RESOURCE_MANAGER_LOCATION - 668)) | (1 << (TSqlParser.RESTRICTED_USER - 668)) | (1 << (TSqlParser.RETENTION - 668)) | (1 << (TSqlParser.ROBUST - 668)) | (1 << (TSqlParser.ROOT - 668)) | (1 << (TSqlParser.ROUTE - 668)) | (1 << (TSqlParser.ROW - 668)) | (1 << (TSqlParser.ROW_NUMBER - 668)) | (1 << (TSqlParser.ROWGUID - 668)) | (1 << (TSqlParser.ROWS - 668)) | (1 << (TSqlParser.SAMPLE - 668)))) !== 0) || ((((_la - 700)) & ~0x1f) == 0 && ((1 << (_la - 700)) & ((1 << (TSqlParser.SCHEMABINDING - 700)) | (1 << (TSqlParser.SCOPED - 700)) | (1 << (TSqlParser.SCROLL - 700)) | (1 << (TSqlParser.SCROLL_LOCKS - 700)) | (1 << (TSqlParser.SEARCH - 700)) | (1 << (TSqlParser.SECONDARY - 700)) | (1 << (TSqlParser.SECONDARY_ONLY - 700)) | (1 << (TSqlParser.SECONDARY_ROLE - 700)) | (1 << (TSqlParser.SECONDS - 700)) | (1 << (TSqlParser.SECRET - 700)) | (1 << (TSqlParser.SECURITY - 700)) | (1 << (TSqlParser.SECURITY_LOG - 700)) | (1 << (TSqlParser.SEEDING_MODE - 700)) | (1 << (TSqlParser.SELF - 700)) | (1 << (TSqlParser.SEMI_SENSITIVE - 700)) | (1 << (TSqlParser.SEND - 700)) | (1 << (TSqlParser.SENT - 700)) | (1 << (TSqlParser.SEQUENCE - 700)) | (1 << (TSqlParser.SERIALIZABLE - 700)) | (1 << (TSqlParser.SESSION_TIMEOUT - 700)) | (1 << (TSqlParser.SETERROR - 700)) | (1 << (TSqlParser.SHARE - 700)) | (1 << (TSqlParser.SHOWPLAN - 700)) | (1 << (TSqlParser.SIGNATURE - 700)) | (1 << (TSqlParser.SIMPLE - 700)) | (1 << (TSqlParser.SINGLE_USER - 700)) | (1 << (TSqlParser.SIZE - 700)) | (1 << (TSqlParser.SMALLINT - 700)) | (1 << (TSqlParser.SNAPSHOT - 700)) | (1 << (TSqlParser.SPATIAL_WINDOW_MAX_CELLS - 700)) | (1 << (TSqlParser.STANDBY - 700)) | (1 << (TSqlParser.START_DATE - 700)))) !== 0) || ((((_la - 732)) & ~0x1f) == 0 && ((1 << (_la - 732)) & ((1 << (TSqlParser.STATIC - 732)) | (1 << (TSqlParser.STATS_STREAM - 732)) | (1 << (TSqlParser.STATUS - 732)) | (1 << (TSqlParser.STDEV - 732)) | (1 << (TSqlParser.STDEVP - 732)) | (1 << (TSqlParser.STOPLIST - 732)) | (1 << (TSqlParser.STRING_AGG - 732)) | (1 << (TSqlParser.STUFF - 732)) | (1 << (TSqlParser.SUBJECT - 732)) | (1 << (TSqlParser.SUM - 732)) | (1 << (TSqlParser.SUSPEND - 732)) | (1 << (TSqlParser.SYMMETRIC - 732)) | (1 << (TSqlParser.SYNCHRONOUS_COMMIT - 732)) | (1 << (TSqlParser.SYNONYM - 732)) | (1 << (TSqlParser.SYSTEM - 732)) | (1 << (TSqlParser.TAKE - 732)) | (1 << (TSqlParser.TARGET_RECOVERY_TIME - 732)) | (1 << (TSqlParser.TB - 732)) | (1 << (TSqlParser.TEXTIMAGE_ON - 732)) | (1 << (TSqlParser.THROW - 732)) | (1 << (TSqlParser.TIES - 732)) | (1 << (TSqlParser.TIME - 732)) | (1 << (TSqlParser.TIMEOUT - 732)) | (1 << (TSqlParser.TIMER - 732)) | (1 << (TSqlParser.TINYINT - 732)) | (1 << (TSqlParser.TORN_PAGE_DETECTION - 732)) | (1 << (TSqlParser.TRANSFORM_NOISE_WORDS - 732)) | (1 << (TSqlParser.TRIPLE_DES - 732)) | (1 << (TSqlParser.TRIPLE_DES_3KEY - 732)) | (1 << (TSqlParser.TRUSTWORTHY - 732)))) !== 0) || ((((_la - 764)) & ~0x1f) == 0 && ((1 << (_la - 764)) & ((1 << (TSqlParser.TRY - 764)) | (1 << (TSqlParser.TSQL - 764)) | (1 << (TSqlParser.TWO_DIGIT_YEAR_CUTOFF - 764)) | (1 << (TSqlParser.TYPE - 764)) | (1 << (TSqlParser.TYPE_WARNING - 764)) | (1 << (TSqlParser.UNBOUNDED - 764)) | (1 << (TSqlParser.UNCOMMITTED - 764)) | (1 << (TSqlParser.UNKNOWN - 764)) | (1 << (TSqlParser.UNLIMITED - 764)) | (1 << (TSqlParser.USING - 764)) | (1 << (TSqlParser.VALID_XML - 764)) | (1 << (TSqlParser.VALIDATION - 764)) | (1 << (TSqlParser.VALUE - 764)) | (1 << (TSqlParser.VAR - 764)) | (1 << (TSqlParser.VARP - 764)) | (1 << (TSqlParser.VIEW_METADATA - 764)) | (1 << (TSqlParser.VIEWS - 764)) | (1 << (TSqlParser.WAIT - 764)) | (1 << (TSqlParser.WELL_FORMED_XML - 764)) | (1 << (TSqlParser.WORK - 764)) | (1 << (TSqlParser.WORKLOAD - 764)) | (1 << (TSqlParser.XML - 764)) | (1 << (TSqlParser.XMLNAMESPACES - 764)))) !== 0) || ((((_la - 796)) & ~0x1f) == 0 && ((1 << (_la - 796)) & ((1 << (TSqlParser.DOUBLE_QUOTE_ID - 796)) | (1 << (TSqlParser.SQUARE_BRACKET_ID - 796)) | (1 << (TSqlParser.ID - 796)))) !== 0) || _la===TSqlParser.COMMA);
- break;
- case TSqlParser.ALL:
- this.state = 2758;
- this.match(TSqlParser.ALL);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 2761;
- this.match(TSqlParser.ON);
- this.state = 2771;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.state = 2765;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,208,this._ctx);
- if(la_===1) {
- this.state = 2762;
- localctx.schema_id = this.id();
- this.state = 2763;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 2767;
- localctx.object_name = this.id();
- break;
- case TSqlParser.DATABASE:
- this.state = 2768;
- this.match(TSqlParser.DATABASE);
- break;
- case TSqlParser.ALL:
- this.state = 2769;
- this.match(TSqlParser.ALL);
- this.state = 2770;
- this.match(TSqlParser.SERVER);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Enable_triggerContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_enable_trigger;
- this.schema_name = null; // IdContext
- this.trigger_name = null; // IdContext
- this.schema_id = null; // IdContext
- this.object_name = null; // IdContext
- return this;
-}
-
-Enable_triggerContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Enable_triggerContext.prototype.constructor = Enable_triggerContext;
-
-Enable_triggerContext.prototype.ENABLE = function() {
- return this.getToken(TSqlParser.ENABLE, 0);
-};
-
-Enable_triggerContext.prototype.TRIGGER = function() {
- return this.getToken(TSqlParser.TRIGGER, 0);
-};
-
-Enable_triggerContext.prototype.ON = function() {
- return this.getToken(TSqlParser.ON, 0);
-};
-
-Enable_triggerContext.prototype.ALL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ALL);
- } else {
- return this.getToken(TSqlParser.ALL, i);
- }
-};
-
-
-Enable_triggerContext.prototype.DATABASE = function() {
- return this.getToken(TSqlParser.DATABASE, 0);
-};
-
-Enable_triggerContext.prototype.SERVER = function() {
- return this.getToken(TSqlParser.SERVER, 0);
-};
-
-Enable_triggerContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Enable_triggerContext.prototype.DOT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DOT);
- } else {
- return this.getToken(TSqlParser.DOT, i);
- }
-};
-
-
-Enable_triggerContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Enable_triggerContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterEnable_trigger(this);
- }
-};
-
-Enable_triggerContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitEnable_trigger(this);
- }
-};
-
-Enable_triggerContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitEnable_trigger(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Enable_triggerContext = Enable_triggerContext;
-
-TSqlParser.prototype.enable_trigger = function() {
-
- var localctx = new Enable_triggerContext(this, this._ctx, this.state);
- this.enterRule(localctx, 268, TSqlParser.RULE_enable_trigger);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2773;
- this.match(TSqlParser.ENABLE);
- this.state = 2774;
- this.match(TSqlParser.TRIGGER);
- this.state = 2789;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- case TSqlParser.COMMA:
- this.state = 2784;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- do {
- this.state = 2776;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 2775;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 2781;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,211,this._ctx);
- if(la_===1) {
- this.state = 2778;
- localctx.schema_name = this.id();
- this.state = 2779;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 2783;
- localctx.trigger_name = this.id();
- this.state = 2786;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- } while(_la===TSqlParser.CALLED || _la===TSqlParser.DATA_COMPRESSION || ((((_la - 112)) & ~0x1f) == 0 && ((1 << (_la - 112)) & ((1 << (TSqlParser.EVENTDATA - 112)) | (1 << (TSqlParser.FILENAME - 112)) | (1 << (TSqlParser.FILLFACTOR - 112)) | (1 << (TSqlParser.FORCESEEK - 112)))) !== 0) || ((((_la - 158)) & ~0x1f) == 0 && ((1 << (_la - 158)) & ((1 << (TSqlParser.INIT - 158)) | (1 << (TSqlParser.KEY - 158)) | (1 << (TSqlParser.MASTER - 158)) | (1 << (TSqlParser.MAX_MEMORY - 158)))) !== 0) || _la===TSqlParser.OFFSETS || _la===TSqlParser.PAGE || ((((_la - 259)) & ~0x1f) == 0 && ((1 << (_la - 259)) & ((1 << (TSqlParser.PUBLIC - 259)) | (1 << (TSqlParser.R - 259)) | (1 << (TSqlParser.RAW - 259)) | (1 << (TSqlParser.RETURN - 259)) | (1 << (TSqlParser.RETURNS - 259)) | (1 << (TSqlParser.ROWCOUNT - 259)))) !== 0) || ((((_la - 295)) & ~0x1f) == 0 && ((1 << (_la - 295)) & ((1 << (TSqlParser.SAFETY - 295)) | (1 << (TSqlParser.SERVER - 295)) | (1 << (TSqlParser.SID - 295)) | (1 << (TSqlParser.SOURCE - 295)) | (1 << (TSqlParser.SPLIT - 295)))) !== 0) || ((((_la - 327)) & ~0x1f) == 0 && ((1 << (_la - 327)) & ((1 << (TSqlParser.STATE - 327)) | (1 << (TSqlParser.START - 327)) | (1 << (TSqlParser.TARGET - 327)))) !== 0) || ((((_la - 380)) & ~0x1f) == 0 && ((1 << (_la - 380)) & ((1 << (TSqlParser.ABSOLUTE - 380)) | (1 << (TSqlParser.ACCENT_SENSITIVITY - 380)) | (1 << (TSqlParser.ACTION - 380)) | (1 << (TSqlParser.ACTIVATION - 380)) | (1 << (TSqlParser.ACTIVE - 380)) | (1 << (TSqlParser.ADDRESS - 380)) | (1 << (TSqlParser.AES_128 - 380)) | (1 << (TSqlParser.AES_192 - 380)) | (1 << (TSqlParser.AES_256 - 380)) | (1 << (TSqlParser.AFFINITY - 380)) | (1 << (TSqlParser.AFTER - 380)) | (1 << (TSqlParser.AGGREGATE - 380)) | (1 << (TSqlParser.ALGORITHM - 380)) | (1 << (TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS - 380)) | (1 << (TSqlParser.ALLOW_SNAPSHOT_ISOLATION - 380)) | (1 << (TSqlParser.ALLOWED - 380)) | (1 << (TSqlParser.ANSI_NULL_DEFAULT - 380)) | (1 << (TSqlParser.ANSI_NULLS - 380)) | (1 << (TSqlParser.ANSI_PADDING - 380)) | (1 << (TSqlParser.ANSI_WARNINGS - 380)) | (1 << (TSqlParser.APPLICATION_LOG - 380)) | (1 << (TSqlParser.APPLY - 380)) | (1 << (TSqlParser.ARITHABORT - 380)) | (1 << (TSqlParser.ASSEMBLY - 380)) | (1 << (TSqlParser.AUDIT - 380)) | (1 << (TSqlParser.AUDIT_GUID - 380)) | (1 << (TSqlParser.AUTO - 380)) | (1 << (TSqlParser.AUTO_CLEANUP - 380)) | (1 << (TSqlParser.AUTO_CLOSE - 380)) | (1 << (TSqlParser.AUTO_CREATE_STATISTICS - 380)) | (1 << (TSqlParser.AUTO_SHRINK - 380)) | (1 << (TSqlParser.AUTO_UPDATE_STATISTICS - 380)))) !== 0) || ((((_la - 412)) & ~0x1f) == 0 && ((1 << (_la - 412)) & ((1 << (TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC - 412)) | (1 << (TSqlParser.AVAILABILITY - 412)) | (1 << (TSqlParser.AVG - 412)) | (1 << (TSqlParser.BACKUP_PRIORITY - 412)) | (1 << (TSqlParser.BEGIN_DIALOG - 412)) | (1 << (TSqlParser.BIGINT - 412)) | (1 << (TSqlParser.BINARY_BASE64 - 412)) | (1 << (TSqlParser.BINARY_CHECKSUM - 412)) | (1 << (TSqlParser.BINDING - 412)) | (1 << (TSqlParser.BLOB_STORAGE - 412)) | (1 << (TSqlParser.BROKER - 412)) | (1 << (TSqlParser.BROKER_INSTANCE - 412)) | (1 << (TSqlParser.BULK_LOGGED - 412)) | (1 << (TSqlParser.CALLER - 412)) | (1 << (TSqlParser.CAP_CPU_PERCENT - 412)) | (1 << (TSqlParser.CAST - 412)) | (1 << (TSqlParser.CATALOG - 412)) | (1 << (TSqlParser.CATCH - 412)) | (1 << (TSqlParser.CHANGE_RETENTION - 412)) | (1 << (TSqlParser.CHANGE_TRACKING - 412)) | (1 << (TSqlParser.CHECKSUM - 412)) | (1 << (TSqlParser.CHECKSUM_AGG - 412)) | (1 << (TSqlParser.CLEANUP - 412)) | (1 << (TSqlParser.COLLECTION - 412)) | (1 << (TSqlParser.COLUMN_MASTER_KEY - 412)) | (1 << (TSqlParser.COMMITTED - 412)) | (1 << (TSqlParser.COMPATIBILITY_LEVEL - 412)) | (1 << (TSqlParser.CONCAT - 412)) | (1 << (TSqlParser.CONCAT_NULL_YIELDS_NULL - 412)) | (1 << (TSqlParser.CONTENT - 412)) | (1 << (TSqlParser.CONTROL - 412)) | (1 << (TSqlParser.COOKIE - 412)))) !== 0) || ((((_la - 444)) & ~0x1f) == 0 && ((1 << (_la - 444)) & ((1 << (TSqlParser.COUNT - 444)) | (1 << (TSqlParser.COUNT_BIG - 444)) | (1 << (TSqlParser.COUNTER - 444)) | (1 << (TSqlParser.CPU - 444)) | (1 << (TSqlParser.CREATE_NEW - 444)) | (1 << (TSqlParser.CREATION_DISPOSITION - 444)) | (1 << (TSqlParser.CREDENTIAL - 444)) | (1 << (TSqlParser.CRYPTOGRAPHIC - 444)) | (1 << (TSqlParser.CURSOR_CLOSE_ON_COMMIT - 444)) | (1 << (TSqlParser.CURSOR_DEFAULT - 444)) | (1 << (TSqlParser.DATA - 444)) | (1 << (TSqlParser.DATE_CORRELATION_OPTIMIZATION - 444)) | (1 << (TSqlParser.DATEADD - 444)) | (1 << (TSqlParser.DATEDIFF - 444)) | (1 << (TSqlParser.DATENAME - 444)) | (1 << (TSqlParser.DATEPART - 444)) | (1 << (TSqlParser.DAYS - 444)) | (1 << (TSqlParser.DB_CHAINING - 444)) | (1 << (TSqlParser.DB_FAILOVER - 444)) | (1 << (TSqlParser.DECRYPTION - 444)) | (1 << (TSqlParser.DEFAULT_DOUBLE_QUOTE - 444)) | (1 << (TSqlParser.DEFAULT_FULLTEXT_LANGUAGE - 444)) | (1 << (TSqlParser.DEFAULT_LANGUAGE - 444)) | (1 << (TSqlParser.DELAY - 444)) | (1 << (TSqlParser.DELAYED_DURABILITY - 444)) | (1 << (TSqlParser.DELETED - 444)) | (1 << (TSqlParser.DENSE_RANK - 444)) | (1 << (TSqlParser.DEPENDENTS - 444)) | (1 << (TSqlParser.DES - 444)) | (1 << (TSqlParser.DESCRIPTION - 444)) | (1 << (TSqlParser.DESX - 444)) | (1 << (TSqlParser.DHCP - 444)))) !== 0) || ((((_la - 476)) & ~0x1f) == 0 && ((1 << (_la - 476)) & ((1 << (TSqlParser.DIALOG - 476)) | (1 << (TSqlParser.DIRECTORY_NAME - 476)) | (1 << (TSqlParser.DISABLE - 476)) | (1 << (TSqlParser.DISABLE_BROKER - 476)) | (1 << (TSqlParser.DISABLED - 476)) | (1 << (TSqlParser.DISK_DRIVE - 476)) | (1 << (TSqlParser.DOCUMENT - 476)) | (1 << (TSqlParser.DYNAMIC - 476)) | (1 << (TSqlParser.EMERGENCY - 476)) | (1 << (TSqlParser.EMPTY - 476)) | (1 << (TSqlParser.ENABLE - 476)) | (1 << (TSqlParser.ENABLE_BROKER - 476)) | (1 << (TSqlParser.ENCRYPTED_VALUE - 476)) | (1 << (TSqlParser.ENCRYPTION - 476)) | (1 << (TSqlParser.ENDPOINT_URL - 476)) | (1 << (TSqlParser.ERROR_BROKER_CONVERSATIONS - 476)) | (1 << (TSqlParser.EXCLUSIVE - 476)) | (1 << (TSqlParser.EXECUTABLE - 476)) | (1 << (TSqlParser.EXIST - 476)) | (1 << (TSqlParser.EXPAND - 476)) | (1 << (TSqlParser.EXPIRY_DATE - 476)) | (1 << (TSqlParser.EXPLICIT - 476)) | (1 << (TSqlParser.FAIL_OPERATION - 476)) | (1 << (TSqlParser.FAILOVER_MODE - 476)) | (1 << (TSqlParser.FAILURE - 476)) | (1 << (TSqlParser.FAILURE_CONDITION_LEVEL - 476)) | (1 << (TSqlParser.FAST - 476)) | (1 << (TSqlParser.FAST_FORWARD - 476)) | (1 << (TSqlParser.FILEGROUP - 476)) | (1 << (TSqlParser.FILEGROWTH - 476)) | (1 << (TSqlParser.FILEPATH - 476)))) !== 0) || ((((_la - 508)) & ~0x1f) == 0 && ((1 << (_la - 508)) & ((1 << (TSqlParser.FILESTREAM - 508)) | (1 << (TSqlParser.FILTER - 508)) | (1 << (TSqlParser.FIRST - 508)) | (1 << (TSqlParser.FIRST_VALUE - 508)) | (1 << (TSqlParser.FOLLOWING - 508)) | (1 << (TSqlParser.FORCE - 508)) | (1 << (TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS - 508)) | (1 << (TSqlParser.FORCED - 508)) | (1 << (TSqlParser.FORMAT - 508)) | (1 << (TSqlParser.FORWARD_ONLY - 508)) | (1 << (TSqlParser.FULLSCAN - 508)) | (1 << (TSqlParser.FULLTEXT - 508)) | (1 << (TSqlParser.GB - 508)) | (1 << (TSqlParser.GETDATE - 508)) | (1 << (TSqlParser.GETUTCDATE - 508)) | (1 << (TSqlParser.GLOBAL - 508)) | (1 << (TSqlParser.GO - 508)) | (1 << (TSqlParser.GROUP_MAX_REQUESTS - 508)) | (1 << (TSqlParser.GROUPING - 508)) | (1 << (TSqlParser.GROUPING_ID - 508)) | (1 << (TSqlParser.HADR - 508)) | (1 << (TSqlParser.HASH - 508)) | (1 << (TSqlParser.HEALTH_CHECK_TIMEOUT - 508)) | (1 << (TSqlParser.HIGH - 508)) | (1 << (TSqlParser.HONOR_BROKER_PRIORITY - 508)) | (1 << (TSqlParser.HOURS - 508)) | (1 << (TSqlParser.IDENTITY_VALUE - 508)) | (1 << (TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX - 508)) | (1 << (TSqlParser.IMMEDIATE - 508)) | (1 << (TSqlParser.IMPERSONATE - 508)) | (1 << (TSqlParser.IMPORTANCE - 508)))) !== 0) || ((((_la - 540)) & ~0x1f) == 0 && ((1 << (_la - 540)) & ((1 << (TSqlParser.INCREMENTAL - 540)) | (1 << (TSqlParser.INITIATOR - 540)) | (1 << (TSqlParser.INPUT - 540)) | (1 << (TSqlParser.INSENSITIVE - 540)) | (1 << (TSqlParser.INSERTED - 540)) | (1 << (TSqlParser.INT - 540)) | (1 << (TSqlParser.IP - 540)) | (1 << (TSqlParser.ISOLATION - 540)) | (1 << (TSqlParser.KB - 540)) | (1 << (TSqlParser.KEEP - 540)) | (1 << (TSqlParser.KEEPFIXED - 540)) | (1 << (TSqlParser.KEY_SOURCE - 540)) | (1 << (TSqlParser.KEYS - 540)) | (1 << (TSqlParser.KEYSET - 540)) | (1 << (TSqlParser.LAG - 540)) | (1 << (TSqlParser.LAST - 540)) | (1 << (TSqlParser.LAST_VALUE - 540)) | (1 << (TSqlParser.LEAD - 540)) | (1 << (TSqlParser.LEVEL - 540)) | (1 << (TSqlParser.LIST - 540)) | (1 << (TSqlParser.LISTENER - 540)) | (1 << (TSqlParser.LISTENER_URL - 540)) | (1 << (TSqlParser.LOB_COMPACTION - 540)) | (1 << (TSqlParser.LOCAL - 540)) | (1 << (TSqlParser.LOCATION - 540)) | (1 << (TSqlParser.LOCK - 540)) | (1 << (TSqlParser.LOCK_ESCALATION - 540)) | (1 << (TSqlParser.LOGIN - 540)) | (1 << (TSqlParser.LOOP - 540)) | (1 << (TSqlParser.LOW - 540)))) !== 0) || ((((_la - 572)) & ~0x1f) == 0 && ((1 << (_la - 572)) & ((1 << (TSqlParser.MANUAL - 572)) | (1 << (TSqlParser.MARK - 572)) | (1 << (TSqlParser.MATERIALIZED - 572)) | (1 << (TSqlParser.MAX - 572)) | (1 << (TSqlParser.MAX_CPU_PERCENT - 572)) | (1 << (TSqlParser.MAX_DOP - 572)) | (1 << (TSqlParser.MAX_FILES - 572)) | (1 << (TSqlParser.MAX_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MAX_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MAX_PROCESSES - 572)) | (1 << (TSqlParser.MAX_QUEUE_READERS - 572)) | (1 << (TSqlParser.MAX_ROLLOVER_FILES - 572)) | (1 << (TSqlParser.MAXDOP - 572)) | (1 << (TSqlParser.MAXRECURSION - 572)) | (1 << (TSqlParser.MAXSIZE - 572)) | (1 << (TSqlParser.MB - 572)) | (1 << (TSqlParser.MEDIUM - 572)) | (1 << (TSqlParser.MEMORY_OPTIMIZED_DATA - 572)) | (1 << (TSqlParser.MESSAGE - 572)) | (1 << (TSqlParser.MIN - 572)) | (1 << (TSqlParser.MIN_ACTIVE_ROWVERSION - 572)) | (1 << (TSqlParser.MIN_CPU_PERCENT - 572)) | (1 << (TSqlParser.MIN_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MIN_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MINUTES - 572)) | (1 << (TSqlParser.MIRROR_ADDRESS - 572)) | (1 << (TSqlParser.MIXED_PAGE_ALLOCATION - 572)) | (1 << (TSqlParser.MODE - 572)) | (1 << (TSqlParser.MODIFY - 572)) | (1 << (TSqlParser.MOVE - 572)) | (1 << (TSqlParser.MULTI_USER - 572)) | (1 << (TSqlParser.NAME - 572)))) !== 0) || ((((_la - 604)) & ~0x1f) == 0 && ((1 << (_la - 604)) & ((1 << (TSqlParser.NESTED_TRIGGERS - 604)) | (1 << (TSqlParser.NEW_ACCOUNT - 604)) | (1 << (TSqlParser.NEW_BROKER - 604)) | (1 << (TSqlParser.NEW_PASSWORD - 604)) | (1 << (TSqlParser.NEXT - 604)) | (1 << (TSqlParser.NO - 604)) | (1 << (TSqlParser.NO_TRUNCATE - 604)) | (1 << (TSqlParser.NO_WAIT - 604)) | (1 << (TSqlParser.NOCOUNT - 604)) | (1 << (TSqlParser.NODES - 604)) | (1 << (TSqlParser.NOEXPAND - 604)) | (1 << (TSqlParser.NON_TRANSACTED_ACCESS - 604)) | (1 << (TSqlParser.NORECOMPUTE - 604)) | (1 << (TSqlParser.NORECOVERY - 604)) | (1 << (TSqlParser.NOWAIT - 604)) | (1 << (TSqlParser.NTILE - 604)) | (1 << (TSqlParser.NUMANODE - 604)) | (1 << (TSqlParser.NUMBER - 604)) | (1 << (TSqlParser.NUMERIC_ROUNDABORT - 604)) | (1 << (TSqlParser.OBJECT - 604)) | (1 << (TSqlParser.OFFLINE - 604)) | (1 << (TSqlParser.OFFSET - 604)) | (1 << (TSqlParser.OLD_ACCOUNT - 604)) | (1 << (TSqlParser.ONLINE - 604)) | (1 << (TSqlParser.ONLY - 604)) | (1 << (TSqlParser.OPEN_EXISTING - 604)) | (1 << (TSqlParser.OPTIMISTIC - 604)) | (1 << (TSqlParser.OPTIMIZE - 604)) | (1 << (TSqlParser.OUT - 604)) | (1 << (TSqlParser.OUTPUT - 604)) | (1 << (TSqlParser.OWNER - 604)))) !== 0) || ((((_la - 636)) & ~0x1f) == 0 && ((1 << (_la - 636)) & ((1 << (TSqlParser.PAGE_VERIFY - 636)) | (1 << (TSqlParser.PARAMETERIZATION - 636)) | (1 << (TSqlParser.PARTITION - 636)) | (1 << (TSqlParser.PARTITIONS - 636)) | (1 << (TSqlParser.PARTNER - 636)) | (1 << (TSqlParser.PATH - 636)) | (1 << (TSqlParser.POISON_MESSAGE_HANDLING - 636)) | (1 << (TSqlParser.POOL - 636)) | (1 << (TSqlParser.PORT - 636)) | (1 << (TSqlParser.PRECEDING - 636)) | (1 << (TSqlParser.PRIMARY_ROLE - 636)) | (1 << (TSqlParser.PRIOR - 636)) | (1 << (TSqlParser.PRIORITY - 636)) | (1 << (TSqlParser.PRIORITY_LEVEL - 636)) | (1 << (TSqlParser.PRIVATE - 636)) | (1 << (TSqlParser.PRIVATE_KEY - 636)) | (1 << (TSqlParser.PRIVILEGES - 636)) | (1 << (TSqlParser.PROCEDURE_NAME - 636)) | (1 << (TSqlParser.PROPERTY - 636)) | (1 << (TSqlParser.PROVIDER - 636)) | (1 << (TSqlParser.PROVIDER_KEY_NAME - 636)) | (1 << (TSqlParser.QUERY - 636)) | (1 << (TSqlParser.QUEUE - 636)) | (1 << (TSqlParser.QUEUE_DELAY - 636)) | (1 << (TSqlParser.QUOTED_IDENTIFIER - 636)) | (1 << (TSqlParser.RANGE - 636)) | (1 << (TSqlParser.RANK - 636)) | (1 << (TSqlParser.RC2 - 636)) | (1 << (TSqlParser.RC4 - 636)) | (1 << (TSqlParser.RC4_128 - 636)) | (1 << (TSqlParser.READ_COMMITTED_SNAPSHOT - 636)) | (1 << (TSqlParser.READ_ONLY - 636)))) !== 0) || ((((_la - 668)) & ~0x1f) == 0 && ((1 << (_la - 668)) & ((1 << (TSqlParser.READ_ONLY_ROUTING_LIST - 668)) | (1 << (TSqlParser.READ_WRITE - 668)) | (1 << (TSqlParser.READONLY - 668)) | (1 << (TSqlParser.REBUILD - 668)) | (1 << (TSqlParser.RECEIVE - 668)) | (1 << (TSqlParser.RECOMPILE - 668)) | (1 << (TSqlParser.RECOVERY - 668)) | (1 << (TSqlParser.RECURSIVE_TRIGGERS - 668)) | (1 << (TSqlParser.RELATIVE - 668)) | (1 << (TSqlParser.REMOTE - 668)) | (1 << (TSqlParser.REMOTE_SERVICE_NAME - 668)) | (1 << (TSqlParser.REMOVE - 668)) | (1 << (TSqlParser.REORGANIZE - 668)) | (1 << (TSqlParser.REPEATABLE - 668)) | (1 << (TSqlParser.REPLICA - 668)) | (1 << (TSqlParser.REQUEST_MAX_CPU_TIME_SEC - 668)) | (1 << (TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT - 668)) | (1 << (TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC - 668)) | (1 << (TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT - 668)) | (1 << (TSqlParser.RESERVE_DISK_SPACE - 668)) | (1 << (TSqlParser.RESOURCE - 668)) | (1 << (TSqlParser.RESOURCE_MANAGER_LOCATION - 668)) | (1 << (TSqlParser.RESTRICTED_USER - 668)) | (1 << (TSqlParser.RETENTION - 668)) | (1 << (TSqlParser.ROBUST - 668)) | (1 << (TSqlParser.ROOT - 668)) | (1 << (TSqlParser.ROUTE - 668)) | (1 << (TSqlParser.ROW - 668)) | (1 << (TSqlParser.ROW_NUMBER - 668)) | (1 << (TSqlParser.ROWGUID - 668)) | (1 << (TSqlParser.ROWS - 668)) | (1 << (TSqlParser.SAMPLE - 668)))) !== 0) || ((((_la - 700)) & ~0x1f) == 0 && ((1 << (_la - 700)) & ((1 << (TSqlParser.SCHEMABINDING - 700)) | (1 << (TSqlParser.SCOPED - 700)) | (1 << (TSqlParser.SCROLL - 700)) | (1 << (TSqlParser.SCROLL_LOCKS - 700)) | (1 << (TSqlParser.SEARCH - 700)) | (1 << (TSqlParser.SECONDARY - 700)) | (1 << (TSqlParser.SECONDARY_ONLY - 700)) | (1 << (TSqlParser.SECONDARY_ROLE - 700)) | (1 << (TSqlParser.SECONDS - 700)) | (1 << (TSqlParser.SECRET - 700)) | (1 << (TSqlParser.SECURITY - 700)) | (1 << (TSqlParser.SECURITY_LOG - 700)) | (1 << (TSqlParser.SEEDING_MODE - 700)) | (1 << (TSqlParser.SELF - 700)) | (1 << (TSqlParser.SEMI_SENSITIVE - 700)) | (1 << (TSqlParser.SEND - 700)) | (1 << (TSqlParser.SENT - 700)) | (1 << (TSqlParser.SEQUENCE - 700)) | (1 << (TSqlParser.SERIALIZABLE - 700)) | (1 << (TSqlParser.SESSION_TIMEOUT - 700)) | (1 << (TSqlParser.SETERROR - 700)) | (1 << (TSqlParser.SHARE - 700)) | (1 << (TSqlParser.SHOWPLAN - 700)) | (1 << (TSqlParser.SIGNATURE - 700)) | (1 << (TSqlParser.SIMPLE - 700)) | (1 << (TSqlParser.SINGLE_USER - 700)) | (1 << (TSqlParser.SIZE - 700)) | (1 << (TSqlParser.SMALLINT - 700)) | (1 << (TSqlParser.SNAPSHOT - 700)) | (1 << (TSqlParser.SPATIAL_WINDOW_MAX_CELLS - 700)) | (1 << (TSqlParser.STANDBY - 700)) | (1 << (TSqlParser.START_DATE - 700)))) !== 0) || ((((_la - 732)) & ~0x1f) == 0 && ((1 << (_la - 732)) & ((1 << (TSqlParser.STATIC - 732)) | (1 << (TSqlParser.STATS_STREAM - 732)) | (1 << (TSqlParser.STATUS - 732)) | (1 << (TSqlParser.STDEV - 732)) | (1 << (TSqlParser.STDEVP - 732)) | (1 << (TSqlParser.STOPLIST - 732)) | (1 << (TSqlParser.STRING_AGG - 732)) | (1 << (TSqlParser.STUFF - 732)) | (1 << (TSqlParser.SUBJECT - 732)) | (1 << (TSqlParser.SUM - 732)) | (1 << (TSqlParser.SUSPEND - 732)) | (1 << (TSqlParser.SYMMETRIC - 732)) | (1 << (TSqlParser.SYNCHRONOUS_COMMIT - 732)) | (1 << (TSqlParser.SYNONYM - 732)) | (1 << (TSqlParser.SYSTEM - 732)) | (1 << (TSqlParser.TAKE - 732)) | (1 << (TSqlParser.TARGET_RECOVERY_TIME - 732)) | (1 << (TSqlParser.TB - 732)) | (1 << (TSqlParser.TEXTIMAGE_ON - 732)) | (1 << (TSqlParser.THROW - 732)) | (1 << (TSqlParser.TIES - 732)) | (1 << (TSqlParser.TIME - 732)) | (1 << (TSqlParser.TIMEOUT - 732)) | (1 << (TSqlParser.TIMER - 732)) | (1 << (TSqlParser.TINYINT - 732)) | (1 << (TSqlParser.TORN_PAGE_DETECTION - 732)) | (1 << (TSqlParser.TRANSFORM_NOISE_WORDS - 732)) | (1 << (TSqlParser.TRIPLE_DES - 732)) | (1 << (TSqlParser.TRIPLE_DES_3KEY - 732)) | (1 << (TSqlParser.TRUSTWORTHY - 732)))) !== 0) || ((((_la - 764)) & ~0x1f) == 0 && ((1 << (_la - 764)) & ((1 << (TSqlParser.TRY - 764)) | (1 << (TSqlParser.TSQL - 764)) | (1 << (TSqlParser.TWO_DIGIT_YEAR_CUTOFF - 764)) | (1 << (TSqlParser.TYPE - 764)) | (1 << (TSqlParser.TYPE_WARNING - 764)) | (1 << (TSqlParser.UNBOUNDED - 764)) | (1 << (TSqlParser.UNCOMMITTED - 764)) | (1 << (TSqlParser.UNKNOWN - 764)) | (1 << (TSqlParser.UNLIMITED - 764)) | (1 << (TSqlParser.USING - 764)) | (1 << (TSqlParser.VALID_XML - 764)) | (1 << (TSqlParser.VALIDATION - 764)) | (1 << (TSqlParser.VALUE - 764)) | (1 << (TSqlParser.VAR - 764)) | (1 << (TSqlParser.VARP - 764)) | (1 << (TSqlParser.VIEW_METADATA - 764)) | (1 << (TSqlParser.VIEWS - 764)) | (1 << (TSqlParser.WAIT - 764)) | (1 << (TSqlParser.WELL_FORMED_XML - 764)) | (1 << (TSqlParser.WORK - 764)) | (1 << (TSqlParser.WORKLOAD - 764)) | (1 << (TSqlParser.XML - 764)) | (1 << (TSqlParser.XMLNAMESPACES - 764)))) !== 0) || ((((_la - 796)) & ~0x1f) == 0 && ((1 << (_la - 796)) & ((1 << (TSqlParser.DOUBLE_QUOTE_ID - 796)) | (1 << (TSqlParser.SQUARE_BRACKET_ID - 796)) | (1 << (TSqlParser.ID - 796)))) !== 0) || _la===TSqlParser.COMMA);
- break;
- case TSqlParser.ALL:
- this.state = 2788;
- this.match(TSqlParser.ALL);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 2791;
- this.match(TSqlParser.ON);
- this.state = 2801;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.state = 2795;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,214,this._ctx);
- if(la_===1) {
- this.state = 2792;
- localctx.schema_id = this.id();
- this.state = 2793;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 2797;
- localctx.object_name = this.id();
- break;
- case TSqlParser.DATABASE:
- this.state = 2798;
- this.match(TSqlParser.DATABASE);
- break;
- case TSqlParser.ALL:
- this.state = 2799;
- this.match(TSqlParser.ALL);
- this.state = 2800;
- this.match(TSqlParser.SERVER);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Lock_tableContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_lock_table;
- this.seconds = null; // Token
- return this;
-}
-
-Lock_tableContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Lock_tableContext.prototype.constructor = Lock_tableContext;
-
-Lock_tableContext.prototype.LOCK = function() {
- return this.getToken(TSqlParser.LOCK, 0);
-};
-
-Lock_tableContext.prototype.TABLE = function() {
- return this.getToken(TSqlParser.TABLE, 0);
-};
-
-Lock_tableContext.prototype.table_name = function() {
- return this.getTypedRuleContext(Table_nameContext,0);
-};
-
-Lock_tableContext.prototype.IN = function() {
- return this.getToken(TSqlParser.IN, 0);
-};
-
-Lock_tableContext.prototype.MODE = function() {
- return this.getToken(TSqlParser.MODE, 0);
-};
-
-Lock_tableContext.prototype.SHARE = function() {
- return this.getToken(TSqlParser.SHARE, 0);
-};
-
-Lock_tableContext.prototype.EXCLUSIVE = function() {
- return this.getToken(TSqlParser.EXCLUSIVE, 0);
-};
-
-Lock_tableContext.prototype.WAIT = function() {
- return this.getToken(TSqlParser.WAIT, 0);
-};
-
-Lock_tableContext.prototype.NOWAIT = function() {
- return this.getToken(TSqlParser.NOWAIT, 0);
-};
-
-Lock_tableContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Lock_tableContext.prototype.DECIMAL = function() {
- return this.getToken(TSqlParser.DECIMAL, 0);
-};
-
-Lock_tableContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterLock_table(this);
- }
-};
-
-Lock_tableContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitLock_table(this);
- }
-};
-
-Lock_tableContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitLock_table(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Lock_tableContext = Lock_tableContext;
-
-TSqlParser.prototype.lock_table = function() {
-
- var localctx = new Lock_tableContext(this, this._ctx, this.state);
- this.enterRule(localctx, 270, TSqlParser.RULE_lock_table);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2803;
- this.match(TSqlParser.LOCK);
- this.state = 2804;
- this.match(TSqlParser.TABLE);
- this.state = 2805;
- this.table_name();
- this.state = 2806;
- this.match(TSqlParser.IN);
- this.state = 2807;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.EXCLUSIVE || _la===TSqlParser.SHARE)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 2808;
- this.match(TSqlParser.MODE);
- this.state = 2812;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,216,this._ctx);
- if(la_===1) {
- this.state = 2809;
- this.match(TSqlParser.WAIT);
- this.state = 2810;
- localctx.seconds = this.match(TSqlParser.DECIMAL);
-
- } else if(la_===2) {
- this.state = 2811;
- this.match(TSqlParser.NOWAIT);
-
- }
- this.state = 2815;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,217,this._ctx);
- if(la_===1) {
- this.state = 2814;
- this.match(TSqlParser.SEMI);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Truncate_tableContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_truncate_table;
- return this;
-}
-
-Truncate_tableContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Truncate_tableContext.prototype.constructor = Truncate_tableContext;
-
-Truncate_tableContext.prototype.TRUNCATE = function() {
- return this.getToken(TSqlParser.TRUNCATE, 0);
-};
-
-Truncate_tableContext.prototype.TABLE = function() {
- return this.getToken(TSqlParser.TABLE, 0);
-};
-
-Truncate_tableContext.prototype.table_name = function() {
- return this.getTypedRuleContext(Table_nameContext,0);
-};
-
-Truncate_tableContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Truncate_tableContext.prototype.LR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.LR_BRACKET);
- } else {
- return this.getToken(TSqlParser.LR_BRACKET, i);
- }
-};
-
-
-Truncate_tableContext.prototype.PARTITIONS = function() {
- return this.getToken(TSqlParser.PARTITIONS, 0);
-};
-
-Truncate_tableContext.prototype.RR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.RR_BRACKET);
- } else {
- return this.getToken(TSqlParser.RR_BRACKET, i);
- }
-};
-
-
-Truncate_tableContext.prototype.DECIMAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DECIMAL);
- } else {
- return this.getToken(TSqlParser.DECIMAL, i);
- }
-};
-
-
-Truncate_tableContext.prototype.TO = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.TO);
- } else {
- return this.getToken(TSqlParser.TO, i);
- }
-};
-
-
-Truncate_tableContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Truncate_tableContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterTruncate_table(this);
- }
-};
-
-Truncate_tableContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitTruncate_table(this);
- }
-};
-
-Truncate_tableContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitTruncate_table(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Truncate_tableContext = Truncate_tableContext;
-
-TSqlParser.prototype.truncate_table = function() {
-
- var localctx = new Truncate_tableContext(this, this._ctx, this.state);
- this.enterRule(localctx, 272, TSqlParser.RULE_truncate_table);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2817;
- this.match(TSqlParser.TRUNCATE);
- this.state = 2818;
- this.match(TSqlParser.TABLE);
- this.state = 2819;
- this.table_name();
- this.state = 2839;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,221,this._ctx);
- if(la_===1) {
- this.state = 2820;
- this.match(TSqlParser.WITH);
- this.state = 2821;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 2822;
- this.match(TSqlParser.PARTITIONS);
- this.state = 2823;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 2833;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- do {
- this.state = 2825;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 2824;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 2831;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,219,this._ctx);
- switch(la_) {
- case 1:
- this.state = 2827;
- this.match(TSqlParser.DECIMAL);
- break;
-
- case 2:
- this.state = 2828;
- this.match(TSqlParser.DECIMAL);
- this.state = 2829;
- this.match(TSqlParser.TO);
- this.state = 2830;
- this.match(TSqlParser.DECIMAL);
- break;
-
- }
- this.state = 2835;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- } while(_la===TSqlParser.DECIMAL || _la===TSqlParser.COMMA);
- this.state = 2837;
- this.match(TSqlParser.RR_BRACKET);
- this.state = 2838;
- this.match(TSqlParser.RR_BRACKET);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_column_master_keyContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_column_master_key;
- this.key_name = null; // IdContext
- this.key_store_provider_name = null; // Token
- this.key_path = null; // Token
- return this;
-}
-
-Create_column_master_keyContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_column_master_keyContext.prototype.constructor = Create_column_master_keyContext;
-
-Create_column_master_keyContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_column_master_keyContext.prototype.COLUMN = function() {
- return this.getToken(TSqlParser.COLUMN, 0);
-};
-
-Create_column_master_keyContext.prototype.MASTER = function() {
- return this.getToken(TSqlParser.MASTER, 0);
-};
-
-Create_column_master_keyContext.prototype.KEY = function() {
- return this.getToken(TSqlParser.KEY, 0);
-};
-
-Create_column_master_keyContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Create_column_master_keyContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Create_column_master_keyContext.prototype.KEY_STORE_PROVIDER_NAME = function() {
- return this.getToken(TSqlParser.KEY_STORE_PROVIDER_NAME, 0);
-};
-
-Create_column_master_keyContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-Create_column_master_keyContext.prototype.COMMA = function() {
- return this.getToken(TSqlParser.COMMA, 0);
-};
-
-Create_column_master_keyContext.prototype.KEY_PATH = function() {
- return this.getToken(TSqlParser.KEY_PATH, 0);
-};
-
-Create_column_master_keyContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Create_column_master_keyContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Create_column_master_keyContext.prototype.STRING = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.STRING);
- } else {
- return this.getToken(TSqlParser.STRING, i);
- }
-};
-
-
-Create_column_master_keyContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_column_master_key(this);
- }
-};
-
-Create_column_master_keyContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_column_master_key(this);
- }
-};
-
-Create_column_master_keyContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_column_master_key(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_column_master_keyContext = Create_column_master_keyContext;
-
-TSqlParser.prototype.create_column_master_key = function() {
-
- var localctx = new Create_column_master_keyContext(this, this._ctx, this.state);
- this.enterRule(localctx, 274, TSqlParser.RULE_create_column_master_key);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2841;
- this.match(TSqlParser.CREATE);
- this.state = 2842;
- this.match(TSqlParser.COLUMN);
- this.state = 2843;
- this.match(TSqlParser.MASTER);
- this.state = 2844;
- this.match(TSqlParser.KEY);
- this.state = 2845;
- localctx.key_name = this.id();
- this.state = 2846;
- this.match(TSqlParser.WITH);
- this.state = 2847;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 2848;
- this.match(TSqlParser.KEY_STORE_PROVIDER_NAME);
- this.state = 2849;
- this.match(TSqlParser.EQUAL);
- this.state = 2850;
- localctx.key_store_provider_name = this.match(TSqlParser.STRING);
- this.state = 2851;
- this.match(TSqlParser.COMMA);
- this.state = 2852;
- this.match(TSqlParser.KEY_PATH);
- this.state = 2853;
- this.match(TSqlParser.EQUAL);
- this.state = 2854;
- localctx.key_path = this.match(TSqlParser.STRING);
- this.state = 2855;
- this.match(TSqlParser.RR_BRACKET);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_credentialContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_credential;
- this.credential_name = null; // IdContext
- this.identity_name = null; // Token
- this.secret = null; // Token
- return this;
-}
-
-Alter_credentialContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_credentialContext.prototype.constructor = Alter_credentialContext;
-
-Alter_credentialContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Alter_credentialContext.prototype.CREDENTIAL = function() {
- return this.getToken(TSqlParser.CREDENTIAL, 0);
-};
-
-Alter_credentialContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Alter_credentialContext.prototype.IDENTITY = function() {
- return this.getToken(TSqlParser.IDENTITY, 0);
-};
-
-Alter_credentialContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-Alter_credentialContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Alter_credentialContext.prototype.STRING = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.STRING);
- } else {
- return this.getToken(TSqlParser.STRING, i);
- }
-};
-
-
-Alter_credentialContext.prototype.COMMA = function() {
- return this.getToken(TSqlParser.COMMA, 0);
-};
-
-Alter_credentialContext.prototype.SECRET = function() {
- return this.getToken(TSqlParser.SECRET, 0);
-};
-
-Alter_credentialContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_credential(this);
- }
-};
-
-Alter_credentialContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_credential(this);
- }
-};
-
-Alter_credentialContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_credential(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_credentialContext = Alter_credentialContext;
-
-TSqlParser.prototype.alter_credential = function() {
-
- var localctx = new Alter_credentialContext(this, this._ctx, this.state);
- this.enterRule(localctx, 276, TSqlParser.RULE_alter_credential);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2857;
- this.match(TSqlParser.ALTER);
- this.state = 2858;
- this.match(TSqlParser.CREDENTIAL);
- this.state = 2859;
- localctx.credential_name = this.id();
- this.state = 2860;
- this.match(TSqlParser.WITH);
- this.state = 2861;
- this.match(TSqlParser.IDENTITY);
- this.state = 2862;
- this.match(TSqlParser.EQUAL);
- this.state = 2863;
- localctx.identity_name = this.match(TSqlParser.STRING);
- this.state = 2868;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 2864;
- this.match(TSqlParser.COMMA);
- this.state = 2865;
- this.match(TSqlParser.SECRET);
- this.state = 2866;
- this.match(TSqlParser.EQUAL);
- this.state = 2867;
- localctx.secret = this.match(TSqlParser.STRING);
- }
-
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_credentialContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_credential;
- this.credential_name = null; // IdContext
- this.identity_name = null; // Token
- this.secret = null; // Token
- this.cryptographic_provider_name = null; // IdContext
- return this;
-}
-
-Create_credentialContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_credentialContext.prototype.constructor = Create_credentialContext;
-
-Create_credentialContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_credentialContext.prototype.CREDENTIAL = function() {
- return this.getToken(TSqlParser.CREDENTIAL, 0);
-};
-
-Create_credentialContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Create_credentialContext.prototype.IDENTITY = function() {
- return this.getToken(TSqlParser.IDENTITY, 0);
-};
-
-Create_credentialContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-Create_credentialContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Create_credentialContext.prototype.STRING = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.STRING);
- } else {
- return this.getToken(TSqlParser.STRING, i);
- }
-};
-
-
-Create_credentialContext.prototype.COMMA = function() {
- return this.getToken(TSqlParser.COMMA, 0);
-};
-
-Create_credentialContext.prototype.SECRET = function() {
- return this.getToken(TSqlParser.SECRET, 0);
-};
-
-Create_credentialContext.prototype.FOR = function() {
- return this.getToken(TSqlParser.FOR, 0);
-};
-
-Create_credentialContext.prototype.CRYPTOGRAPHIC = function() {
- return this.getToken(TSqlParser.CRYPTOGRAPHIC, 0);
-};
-
-Create_credentialContext.prototype.PROVIDER = function() {
- return this.getToken(TSqlParser.PROVIDER, 0);
-};
-
-Create_credentialContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_credential(this);
- }
-};
-
-Create_credentialContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_credential(this);
- }
-};
-
-Create_credentialContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_credential(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_credentialContext = Create_credentialContext;
-
-TSqlParser.prototype.create_credential = function() {
-
- var localctx = new Create_credentialContext(this, this._ctx, this.state);
- this.enterRule(localctx, 278, TSqlParser.RULE_create_credential);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2870;
- this.match(TSqlParser.CREATE);
- this.state = 2871;
- this.match(TSqlParser.CREDENTIAL);
- this.state = 2872;
- localctx.credential_name = this.id();
- this.state = 2873;
- this.match(TSqlParser.WITH);
- this.state = 2874;
- this.match(TSqlParser.IDENTITY);
- this.state = 2875;
- this.match(TSqlParser.EQUAL);
- this.state = 2876;
- localctx.identity_name = this.match(TSqlParser.STRING);
- this.state = 2881;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 2877;
- this.match(TSqlParser.COMMA);
- this.state = 2878;
- this.match(TSqlParser.SECRET);
- this.state = 2879;
- this.match(TSqlParser.EQUAL);
- this.state = 2880;
- localctx.secret = this.match(TSqlParser.STRING);
- }
-
- this.state = 2887;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.FOR) {
- this.state = 2883;
- this.match(TSqlParser.FOR);
- this.state = 2884;
- this.match(TSqlParser.CRYPTOGRAPHIC);
- this.state = 2885;
- this.match(TSqlParser.PROVIDER);
- this.state = 2886;
- localctx.cryptographic_provider_name = this.id();
- }
-
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_cryptographic_providerContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_cryptographic_provider;
- this.provider_name = null; // IdContext
- this.crypto_provider_ddl_file = null; // Token
- return this;
-}
-
-Alter_cryptographic_providerContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_cryptographic_providerContext.prototype.constructor = Alter_cryptographic_providerContext;
-
-Alter_cryptographic_providerContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Alter_cryptographic_providerContext.prototype.CRYPTOGRAPHIC = function() {
- return this.getToken(TSqlParser.CRYPTOGRAPHIC, 0);
-};
-
-Alter_cryptographic_providerContext.prototype.PROVIDER = function() {
- return this.getToken(TSqlParser.PROVIDER, 0);
-};
-
-Alter_cryptographic_providerContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Alter_cryptographic_providerContext.prototype.FROM = function() {
- return this.getToken(TSqlParser.FROM, 0);
-};
-
-Alter_cryptographic_providerContext.prototype.FILE = function() {
- return this.getToken(TSqlParser.FILE, 0);
-};
-
-Alter_cryptographic_providerContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Alter_cryptographic_providerContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Alter_cryptographic_providerContext.prototype.ENABLE = function() {
- return this.getToken(TSqlParser.ENABLE, 0);
-};
-
-Alter_cryptographic_providerContext.prototype.DISABLE = function() {
- return this.getToken(TSqlParser.DISABLE, 0);
-};
-
-Alter_cryptographic_providerContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_cryptographic_provider(this);
- }
-};
-
-Alter_cryptographic_providerContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_cryptographic_provider(this);
- }
-};
-
-Alter_cryptographic_providerContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_cryptographic_provider(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_cryptographic_providerContext = Alter_cryptographic_providerContext;
-
-TSqlParser.prototype.alter_cryptographic_provider = function() {
-
- var localctx = new Alter_cryptographic_providerContext(this, this._ctx, this.state);
- this.enterRule(localctx, 280, TSqlParser.RULE_alter_cryptographic_provider);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2889;
- this.match(TSqlParser.ALTER);
- this.state = 2890;
- this.match(TSqlParser.CRYPTOGRAPHIC);
- this.state = 2891;
- this.match(TSqlParser.PROVIDER);
- this.state = 2892;
- localctx.provider_name = this.id();
- this.state = 2897;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.FROM) {
- this.state = 2893;
- this.match(TSqlParser.FROM);
- this.state = 2894;
- this.match(TSqlParser.FILE);
- this.state = 2895;
- this.match(TSqlParser.EQUAL);
- this.state = 2896;
- localctx.crypto_provider_ddl_file = this.match(TSqlParser.STRING);
- }
-
- this.state = 2900;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,226,this._ctx);
- if(la_===1) {
- this.state = 2899;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.DISABLE || _la===TSqlParser.ENABLE)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_cryptographic_providerContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_cryptographic_provider;
- this.provider_name = null; // IdContext
- this.path_of_DLL = null; // Token
- return this;
-}
-
-Create_cryptographic_providerContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_cryptographic_providerContext.prototype.constructor = Create_cryptographic_providerContext;
-
-Create_cryptographic_providerContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_cryptographic_providerContext.prototype.CRYPTOGRAPHIC = function() {
- return this.getToken(TSqlParser.CRYPTOGRAPHIC, 0);
-};
-
-Create_cryptographic_providerContext.prototype.PROVIDER = function() {
- return this.getToken(TSqlParser.PROVIDER, 0);
-};
-
-Create_cryptographic_providerContext.prototype.FROM = function() {
- return this.getToken(TSqlParser.FROM, 0);
-};
-
-Create_cryptographic_providerContext.prototype.FILE = function() {
- return this.getToken(TSqlParser.FILE, 0);
-};
-
-Create_cryptographic_providerContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Create_cryptographic_providerContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Create_cryptographic_providerContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Create_cryptographic_providerContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_cryptographic_provider(this);
- }
-};
-
-Create_cryptographic_providerContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_cryptographic_provider(this);
- }
-};
-
-Create_cryptographic_providerContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_cryptographic_provider(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_cryptographic_providerContext = Create_cryptographic_providerContext;
-
-TSqlParser.prototype.create_cryptographic_provider = function() {
-
- var localctx = new Create_cryptographic_providerContext(this, this._ctx, this.state);
- this.enterRule(localctx, 282, TSqlParser.RULE_create_cryptographic_provider);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2902;
- this.match(TSqlParser.CREATE);
- this.state = 2903;
- this.match(TSqlParser.CRYPTOGRAPHIC);
- this.state = 2904;
- this.match(TSqlParser.PROVIDER);
- this.state = 2905;
- localctx.provider_name = this.id();
- this.state = 2906;
- this.match(TSqlParser.FROM);
- this.state = 2907;
- this.match(TSqlParser.FILE);
- this.state = 2908;
- this.match(TSqlParser.EQUAL);
- this.state = 2909;
- localctx.path_of_DLL = this.match(TSqlParser.STRING);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_event_notificationContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_event_notification;
- this.event_notification_name = null; // IdContext
- this.queue_name = null; // IdContext
- this.event_type_or_group = null; // IdContext
- this.broker_service = null; // Token
- this.broker_service_specifier_or_current_database = null; // Token
- return this;
-}
-
-Create_event_notificationContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_event_notificationContext.prototype.constructor = Create_event_notificationContext;
-
-Create_event_notificationContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_event_notificationContext.prototype.EVENT = function() {
- return this.getToken(TSqlParser.EVENT, 0);
-};
-
-Create_event_notificationContext.prototype.NOTIFICATION = function() {
- return this.getToken(TSqlParser.NOTIFICATION, 0);
-};
-
-Create_event_notificationContext.prototype.ON = function() {
- return this.getToken(TSqlParser.ON, 0);
-};
-
-Create_event_notificationContext.prototype.FOR = function() {
- return this.getToken(TSqlParser.FOR, 0);
-};
-
-Create_event_notificationContext.prototype.TO = function() {
- return this.getToken(TSqlParser.TO, 0);
-};
-
-Create_event_notificationContext.prototype.SERVICE = function() {
- return this.getToken(TSqlParser.SERVICE, 0);
-};
-
-Create_event_notificationContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Create_event_notificationContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Create_event_notificationContext.prototype.STRING = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.STRING);
- } else {
- return this.getToken(TSqlParser.STRING, i);
- }
-};
-
-
-Create_event_notificationContext.prototype.SERVER = function() {
- return this.getToken(TSqlParser.SERVER, 0);
-};
-
-Create_event_notificationContext.prototype.DATABASE = function() {
- return this.getToken(TSqlParser.DATABASE, 0);
-};
-
-Create_event_notificationContext.prototype.QUEUE = function() {
- return this.getToken(TSqlParser.QUEUE, 0);
-};
-
-Create_event_notificationContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Create_event_notificationContext.prototype.FAN_IN = function() {
- return this.getToken(TSqlParser.FAN_IN, 0);
-};
-
-Create_event_notificationContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_event_notification(this);
- }
-};
-
-Create_event_notificationContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_event_notification(this);
- }
-};
-
-Create_event_notificationContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_event_notification(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_event_notificationContext = Create_event_notificationContext;
-
-TSqlParser.prototype.create_event_notification = function() {
-
- var localctx = new Create_event_notificationContext(this, this._ctx, this.state);
- this.enterRule(localctx, 284, TSqlParser.RULE_create_event_notification);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2911;
- this.match(TSqlParser.CREATE);
- this.state = 2912;
- this.match(TSqlParser.EVENT);
- this.state = 2913;
- this.match(TSqlParser.NOTIFICATION);
- this.state = 2914;
- localctx.event_notification_name = this.id();
- this.state = 2915;
- this.match(TSqlParser.ON);
- this.state = 2920;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.SERVER:
- this.state = 2916;
- this.match(TSqlParser.SERVER);
- break;
- case TSqlParser.DATABASE:
- this.state = 2917;
- this.match(TSqlParser.DATABASE);
- break;
- case TSqlParser.QUEUE:
- this.state = 2918;
- this.match(TSqlParser.QUEUE);
- this.state = 2919;
- localctx.queue_name = this.id();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 2924;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.WITH) {
- this.state = 2922;
- this.match(TSqlParser.WITH);
- this.state = 2923;
- this.match(TSqlParser.FAN_IN);
- }
-
- this.state = 2926;
- this.match(TSqlParser.FOR);
- this.state = 2931;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- do {
- this.state = 2928;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 2927;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 2930;
- localctx.event_type_or_group = this.id();
- this.state = 2933;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- } while(_la===TSqlParser.CALLED || _la===TSqlParser.DATA_COMPRESSION || ((((_la - 112)) & ~0x1f) == 0 && ((1 << (_la - 112)) & ((1 << (TSqlParser.EVENTDATA - 112)) | (1 << (TSqlParser.FILENAME - 112)) | (1 << (TSqlParser.FILLFACTOR - 112)) | (1 << (TSqlParser.FORCESEEK - 112)))) !== 0) || ((((_la - 158)) & ~0x1f) == 0 && ((1 << (_la - 158)) & ((1 << (TSqlParser.INIT - 158)) | (1 << (TSqlParser.KEY - 158)) | (1 << (TSqlParser.MASTER - 158)) | (1 << (TSqlParser.MAX_MEMORY - 158)))) !== 0) || _la===TSqlParser.OFFSETS || _la===TSqlParser.PAGE || ((((_la - 259)) & ~0x1f) == 0 && ((1 << (_la - 259)) & ((1 << (TSqlParser.PUBLIC - 259)) | (1 << (TSqlParser.R - 259)) | (1 << (TSqlParser.RAW - 259)) | (1 << (TSqlParser.RETURN - 259)) | (1 << (TSqlParser.RETURNS - 259)) | (1 << (TSqlParser.ROWCOUNT - 259)))) !== 0) || ((((_la - 295)) & ~0x1f) == 0 && ((1 << (_la - 295)) & ((1 << (TSqlParser.SAFETY - 295)) | (1 << (TSqlParser.SERVER - 295)) | (1 << (TSqlParser.SID - 295)) | (1 << (TSqlParser.SOURCE - 295)) | (1 << (TSqlParser.SPLIT - 295)))) !== 0) || ((((_la - 327)) & ~0x1f) == 0 && ((1 << (_la - 327)) & ((1 << (TSqlParser.STATE - 327)) | (1 << (TSqlParser.START - 327)) | (1 << (TSqlParser.TARGET - 327)))) !== 0) || ((((_la - 380)) & ~0x1f) == 0 && ((1 << (_la - 380)) & ((1 << (TSqlParser.ABSOLUTE - 380)) | (1 << (TSqlParser.ACCENT_SENSITIVITY - 380)) | (1 << (TSqlParser.ACTION - 380)) | (1 << (TSqlParser.ACTIVATION - 380)) | (1 << (TSqlParser.ACTIVE - 380)) | (1 << (TSqlParser.ADDRESS - 380)) | (1 << (TSqlParser.AES_128 - 380)) | (1 << (TSqlParser.AES_192 - 380)) | (1 << (TSqlParser.AES_256 - 380)) | (1 << (TSqlParser.AFFINITY - 380)) | (1 << (TSqlParser.AFTER - 380)) | (1 << (TSqlParser.AGGREGATE - 380)) | (1 << (TSqlParser.ALGORITHM - 380)) | (1 << (TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS - 380)) | (1 << (TSqlParser.ALLOW_SNAPSHOT_ISOLATION - 380)) | (1 << (TSqlParser.ALLOWED - 380)) | (1 << (TSqlParser.ANSI_NULL_DEFAULT - 380)) | (1 << (TSqlParser.ANSI_NULLS - 380)) | (1 << (TSqlParser.ANSI_PADDING - 380)) | (1 << (TSqlParser.ANSI_WARNINGS - 380)) | (1 << (TSqlParser.APPLICATION_LOG - 380)) | (1 << (TSqlParser.APPLY - 380)) | (1 << (TSqlParser.ARITHABORT - 380)) | (1 << (TSqlParser.ASSEMBLY - 380)) | (1 << (TSqlParser.AUDIT - 380)) | (1 << (TSqlParser.AUDIT_GUID - 380)) | (1 << (TSqlParser.AUTO - 380)) | (1 << (TSqlParser.AUTO_CLEANUP - 380)) | (1 << (TSqlParser.AUTO_CLOSE - 380)) | (1 << (TSqlParser.AUTO_CREATE_STATISTICS - 380)) | (1 << (TSqlParser.AUTO_SHRINK - 380)) | (1 << (TSqlParser.AUTO_UPDATE_STATISTICS - 380)))) !== 0) || ((((_la - 412)) & ~0x1f) == 0 && ((1 << (_la - 412)) & ((1 << (TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC - 412)) | (1 << (TSqlParser.AVAILABILITY - 412)) | (1 << (TSqlParser.AVG - 412)) | (1 << (TSqlParser.BACKUP_PRIORITY - 412)) | (1 << (TSqlParser.BEGIN_DIALOG - 412)) | (1 << (TSqlParser.BIGINT - 412)) | (1 << (TSqlParser.BINARY_BASE64 - 412)) | (1 << (TSqlParser.BINARY_CHECKSUM - 412)) | (1 << (TSqlParser.BINDING - 412)) | (1 << (TSqlParser.BLOB_STORAGE - 412)) | (1 << (TSqlParser.BROKER - 412)) | (1 << (TSqlParser.BROKER_INSTANCE - 412)) | (1 << (TSqlParser.BULK_LOGGED - 412)) | (1 << (TSqlParser.CALLER - 412)) | (1 << (TSqlParser.CAP_CPU_PERCENT - 412)) | (1 << (TSqlParser.CAST - 412)) | (1 << (TSqlParser.CATALOG - 412)) | (1 << (TSqlParser.CATCH - 412)) | (1 << (TSqlParser.CHANGE_RETENTION - 412)) | (1 << (TSqlParser.CHANGE_TRACKING - 412)) | (1 << (TSqlParser.CHECKSUM - 412)) | (1 << (TSqlParser.CHECKSUM_AGG - 412)) | (1 << (TSqlParser.CLEANUP - 412)) | (1 << (TSqlParser.COLLECTION - 412)) | (1 << (TSqlParser.COLUMN_MASTER_KEY - 412)) | (1 << (TSqlParser.COMMITTED - 412)) | (1 << (TSqlParser.COMPATIBILITY_LEVEL - 412)) | (1 << (TSqlParser.CONCAT - 412)) | (1 << (TSqlParser.CONCAT_NULL_YIELDS_NULL - 412)) | (1 << (TSqlParser.CONTENT - 412)) | (1 << (TSqlParser.CONTROL - 412)) | (1 << (TSqlParser.COOKIE - 412)))) !== 0) || ((((_la - 444)) & ~0x1f) == 0 && ((1 << (_la - 444)) & ((1 << (TSqlParser.COUNT - 444)) | (1 << (TSqlParser.COUNT_BIG - 444)) | (1 << (TSqlParser.COUNTER - 444)) | (1 << (TSqlParser.CPU - 444)) | (1 << (TSqlParser.CREATE_NEW - 444)) | (1 << (TSqlParser.CREATION_DISPOSITION - 444)) | (1 << (TSqlParser.CREDENTIAL - 444)) | (1 << (TSqlParser.CRYPTOGRAPHIC - 444)) | (1 << (TSqlParser.CURSOR_CLOSE_ON_COMMIT - 444)) | (1 << (TSqlParser.CURSOR_DEFAULT - 444)) | (1 << (TSqlParser.DATA - 444)) | (1 << (TSqlParser.DATE_CORRELATION_OPTIMIZATION - 444)) | (1 << (TSqlParser.DATEADD - 444)) | (1 << (TSqlParser.DATEDIFF - 444)) | (1 << (TSqlParser.DATENAME - 444)) | (1 << (TSqlParser.DATEPART - 444)) | (1 << (TSqlParser.DAYS - 444)) | (1 << (TSqlParser.DB_CHAINING - 444)) | (1 << (TSqlParser.DB_FAILOVER - 444)) | (1 << (TSqlParser.DECRYPTION - 444)) | (1 << (TSqlParser.DEFAULT_DOUBLE_QUOTE - 444)) | (1 << (TSqlParser.DEFAULT_FULLTEXT_LANGUAGE - 444)) | (1 << (TSqlParser.DEFAULT_LANGUAGE - 444)) | (1 << (TSqlParser.DELAY - 444)) | (1 << (TSqlParser.DELAYED_DURABILITY - 444)) | (1 << (TSqlParser.DELETED - 444)) | (1 << (TSqlParser.DENSE_RANK - 444)) | (1 << (TSqlParser.DEPENDENTS - 444)) | (1 << (TSqlParser.DES - 444)) | (1 << (TSqlParser.DESCRIPTION - 444)) | (1 << (TSqlParser.DESX - 444)) | (1 << (TSqlParser.DHCP - 444)))) !== 0) || ((((_la - 476)) & ~0x1f) == 0 && ((1 << (_la - 476)) & ((1 << (TSqlParser.DIALOG - 476)) | (1 << (TSqlParser.DIRECTORY_NAME - 476)) | (1 << (TSqlParser.DISABLE - 476)) | (1 << (TSqlParser.DISABLE_BROKER - 476)) | (1 << (TSqlParser.DISABLED - 476)) | (1 << (TSqlParser.DISK_DRIVE - 476)) | (1 << (TSqlParser.DOCUMENT - 476)) | (1 << (TSqlParser.DYNAMIC - 476)) | (1 << (TSqlParser.EMERGENCY - 476)) | (1 << (TSqlParser.EMPTY - 476)) | (1 << (TSqlParser.ENABLE - 476)) | (1 << (TSqlParser.ENABLE_BROKER - 476)) | (1 << (TSqlParser.ENCRYPTED_VALUE - 476)) | (1 << (TSqlParser.ENCRYPTION - 476)) | (1 << (TSqlParser.ENDPOINT_URL - 476)) | (1 << (TSqlParser.ERROR_BROKER_CONVERSATIONS - 476)) | (1 << (TSqlParser.EXCLUSIVE - 476)) | (1 << (TSqlParser.EXECUTABLE - 476)) | (1 << (TSqlParser.EXIST - 476)) | (1 << (TSqlParser.EXPAND - 476)) | (1 << (TSqlParser.EXPIRY_DATE - 476)) | (1 << (TSqlParser.EXPLICIT - 476)) | (1 << (TSqlParser.FAIL_OPERATION - 476)) | (1 << (TSqlParser.FAILOVER_MODE - 476)) | (1 << (TSqlParser.FAILURE - 476)) | (1 << (TSqlParser.FAILURE_CONDITION_LEVEL - 476)) | (1 << (TSqlParser.FAST - 476)) | (1 << (TSqlParser.FAST_FORWARD - 476)) | (1 << (TSqlParser.FILEGROUP - 476)) | (1 << (TSqlParser.FILEGROWTH - 476)) | (1 << (TSqlParser.FILEPATH - 476)))) !== 0) || ((((_la - 508)) & ~0x1f) == 0 && ((1 << (_la - 508)) & ((1 << (TSqlParser.FILESTREAM - 508)) | (1 << (TSqlParser.FILTER - 508)) | (1 << (TSqlParser.FIRST - 508)) | (1 << (TSqlParser.FIRST_VALUE - 508)) | (1 << (TSqlParser.FOLLOWING - 508)) | (1 << (TSqlParser.FORCE - 508)) | (1 << (TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS - 508)) | (1 << (TSqlParser.FORCED - 508)) | (1 << (TSqlParser.FORMAT - 508)) | (1 << (TSqlParser.FORWARD_ONLY - 508)) | (1 << (TSqlParser.FULLSCAN - 508)) | (1 << (TSqlParser.FULLTEXT - 508)) | (1 << (TSqlParser.GB - 508)) | (1 << (TSqlParser.GETDATE - 508)) | (1 << (TSqlParser.GETUTCDATE - 508)) | (1 << (TSqlParser.GLOBAL - 508)) | (1 << (TSqlParser.GO - 508)) | (1 << (TSqlParser.GROUP_MAX_REQUESTS - 508)) | (1 << (TSqlParser.GROUPING - 508)) | (1 << (TSqlParser.GROUPING_ID - 508)) | (1 << (TSqlParser.HADR - 508)) | (1 << (TSqlParser.HASH - 508)) | (1 << (TSqlParser.HEALTH_CHECK_TIMEOUT - 508)) | (1 << (TSqlParser.HIGH - 508)) | (1 << (TSqlParser.HONOR_BROKER_PRIORITY - 508)) | (1 << (TSqlParser.HOURS - 508)) | (1 << (TSqlParser.IDENTITY_VALUE - 508)) | (1 << (TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX - 508)) | (1 << (TSqlParser.IMMEDIATE - 508)) | (1 << (TSqlParser.IMPERSONATE - 508)) | (1 << (TSqlParser.IMPORTANCE - 508)))) !== 0) || ((((_la - 540)) & ~0x1f) == 0 && ((1 << (_la - 540)) & ((1 << (TSqlParser.INCREMENTAL - 540)) | (1 << (TSqlParser.INITIATOR - 540)) | (1 << (TSqlParser.INPUT - 540)) | (1 << (TSqlParser.INSENSITIVE - 540)) | (1 << (TSqlParser.INSERTED - 540)) | (1 << (TSqlParser.INT - 540)) | (1 << (TSqlParser.IP - 540)) | (1 << (TSqlParser.ISOLATION - 540)) | (1 << (TSqlParser.KB - 540)) | (1 << (TSqlParser.KEEP - 540)) | (1 << (TSqlParser.KEEPFIXED - 540)) | (1 << (TSqlParser.KEY_SOURCE - 540)) | (1 << (TSqlParser.KEYS - 540)) | (1 << (TSqlParser.KEYSET - 540)) | (1 << (TSqlParser.LAG - 540)) | (1 << (TSqlParser.LAST - 540)) | (1 << (TSqlParser.LAST_VALUE - 540)) | (1 << (TSqlParser.LEAD - 540)) | (1 << (TSqlParser.LEVEL - 540)) | (1 << (TSqlParser.LIST - 540)) | (1 << (TSqlParser.LISTENER - 540)) | (1 << (TSqlParser.LISTENER_URL - 540)) | (1 << (TSqlParser.LOB_COMPACTION - 540)) | (1 << (TSqlParser.LOCAL - 540)) | (1 << (TSqlParser.LOCATION - 540)) | (1 << (TSqlParser.LOCK - 540)) | (1 << (TSqlParser.LOCK_ESCALATION - 540)) | (1 << (TSqlParser.LOGIN - 540)) | (1 << (TSqlParser.LOOP - 540)) | (1 << (TSqlParser.LOW - 540)))) !== 0) || ((((_la - 572)) & ~0x1f) == 0 && ((1 << (_la - 572)) & ((1 << (TSqlParser.MANUAL - 572)) | (1 << (TSqlParser.MARK - 572)) | (1 << (TSqlParser.MATERIALIZED - 572)) | (1 << (TSqlParser.MAX - 572)) | (1 << (TSqlParser.MAX_CPU_PERCENT - 572)) | (1 << (TSqlParser.MAX_DOP - 572)) | (1 << (TSqlParser.MAX_FILES - 572)) | (1 << (TSqlParser.MAX_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MAX_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MAX_PROCESSES - 572)) | (1 << (TSqlParser.MAX_QUEUE_READERS - 572)) | (1 << (TSqlParser.MAX_ROLLOVER_FILES - 572)) | (1 << (TSqlParser.MAXDOP - 572)) | (1 << (TSqlParser.MAXRECURSION - 572)) | (1 << (TSqlParser.MAXSIZE - 572)) | (1 << (TSqlParser.MB - 572)) | (1 << (TSqlParser.MEDIUM - 572)) | (1 << (TSqlParser.MEMORY_OPTIMIZED_DATA - 572)) | (1 << (TSqlParser.MESSAGE - 572)) | (1 << (TSqlParser.MIN - 572)) | (1 << (TSqlParser.MIN_ACTIVE_ROWVERSION - 572)) | (1 << (TSqlParser.MIN_CPU_PERCENT - 572)) | (1 << (TSqlParser.MIN_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MIN_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MINUTES - 572)) | (1 << (TSqlParser.MIRROR_ADDRESS - 572)) | (1 << (TSqlParser.MIXED_PAGE_ALLOCATION - 572)) | (1 << (TSqlParser.MODE - 572)) | (1 << (TSqlParser.MODIFY - 572)) | (1 << (TSqlParser.MOVE - 572)) | (1 << (TSqlParser.MULTI_USER - 572)) | (1 << (TSqlParser.NAME - 572)))) !== 0) || ((((_la - 604)) & ~0x1f) == 0 && ((1 << (_la - 604)) & ((1 << (TSqlParser.NESTED_TRIGGERS - 604)) | (1 << (TSqlParser.NEW_ACCOUNT - 604)) | (1 << (TSqlParser.NEW_BROKER - 604)) | (1 << (TSqlParser.NEW_PASSWORD - 604)) | (1 << (TSqlParser.NEXT - 604)) | (1 << (TSqlParser.NO - 604)) | (1 << (TSqlParser.NO_TRUNCATE - 604)) | (1 << (TSqlParser.NO_WAIT - 604)) | (1 << (TSqlParser.NOCOUNT - 604)) | (1 << (TSqlParser.NODES - 604)) | (1 << (TSqlParser.NOEXPAND - 604)) | (1 << (TSqlParser.NON_TRANSACTED_ACCESS - 604)) | (1 << (TSqlParser.NORECOMPUTE - 604)) | (1 << (TSqlParser.NORECOVERY - 604)) | (1 << (TSqlParser.NOWAIT - 604)) | (1 << (TSqlParser.NTILE - 604)) | (1 << (TSqlParser.NUMANODE - 604)) | (1 << (TSqlParser.NUMBER - 604)) | (1 << (TSqlParser.NUMERIC_ROUNDABORT - 604)) | (1 << (TSqlParser.OBJECT - 604)) | (1 << (TSqlParser.OFFLINE - 604)) | (1 << (TSqlParser.OFFSET - 604)) | (1 << (TSqlParser.OLD_ACCOUNT - 604)) | (1 << (TSqlParser.ONLINE - 604)) | (1 << (TSqlParser.ONLY - 604)) | (1 << (TSqlParser.OPEN_EXISTING - 604)) | (1 << (TSqlParser.OPTIMISTIC - 604)) | (1 << (TSqlParser.OPTIMIZE - 604)) | (1 << (TSqlParser.OUT - 604)) | (1 << (TSqlParser.OUTPUT - 604)) | (1 << (TSqlParser.OWNER - 604)))) !== 0) || ((((_la - 636)) & ~0x1f) == 0 && ((1 << (_la - 636)) & ((1 << (TSqlParser.PAGE_VERIFY - 636)) | (1 << (TSqlParser.PARAMETERIZATION - 636)) | (1 << (TSqlParser.PARTITION - 636)) | (1 << (TSqlParser.PARTITIONS - 636)) | (1 << (TSqlParser.PARTNER - 636)) | (1 << (TSqlParser.PATH - 636)) | (1 << (TSqlParser.POISON_MESSAGE_HANDLING - 636)) | (1 << (TSqlParser.POOL - 636)) | (1 << (TSqlParser.PORT - 636)) | (1 << (TSqlParser.PRECEDING - 636)) | (1 << (TSqlParser.PRIMARY_ROLE - 636)) | (1 << (TSqlParser.PRIOR - 636)) | (1 << (TSqlParser.PRIORITY - 636)) | (1 << (TSqlParser.PRIORITY_LEVEL - 636)) | (1 << (TSqlParser.PRIVATE - 636)) | (1 << (TSqlParser.PRIVATE_KEY - 636)) | (1 << (TSqlParser.PRIVILEGES - 636)) | (1 << (TSqlParser.PROCEDURE_NAME - 636)) | (1 << (TSqlParser.PROPERTY - 636)) | (1 << (TSqlParser.PROVIDER - 636)) | (1 << (TSqlParser.PROVIDER_KEY_NAME - 636)) | (1 << (TSqlParser.QUERY - 636)) | (1 << (TSqlParser.QUEUE - 636)) | (1 << (TSqlParser.QUEUE_DELAY - 636)) | (1 << (TSqlParser.QUOTED_IDENTIFIER - 636)) | (1 << (TSqlParser.RANGE - 636)) | (1 << (TSqlParser.RANK - 636)) | (1 << (TSqlParser.RC2 - 636)) | (1 << (TSqlParser.RC4 - 636)) | (1 << (TSqlParser.RC4_128 - 636)) | (1 << (TSqlParser.READ_COMMITTED_SNAPSHOT - 636)) | (1 << (TSqlParser.READ_ONLY - 636)))) !== 0) || ((((_la - 668)) & ~0x1f) == 0 && ((1 << (_la - 668)) & ((1 << (TSqlParser.READ_ONLY_ROUTING_LIST - 668)) | (1 << (TSqlParser.READ_WRITE - 668)) | (1 << (TSqlParser.READONLY - 668)) | (1 << (TSqlParser.REBUILD - 668)) | (1 << (TSqlParser.RECEIVE - 668)) | (1 << (TSqlParser.RECOMPILE - 668)) | (1 << (TSqlParser.RECOVERY - 668)) | (1 << (TSqlParser.RECURSIVE_TRIGGERS - 668)) | (1 << (TSqlParser.RELATIVE - 668)) | (1 << (TSqlParser.REMOTE - 668)) | (1 << (TSqlParser.REMOTE_SERVICE_NAME - 668)) | (1 << (TSqlParser.REMOVE - 668)) | (1 << (TSqlParser.REORGANIZE - 668)) | (1 << (TSqlParser.REPEATABLE - 668)) | (1 << (TSqlParser.REPLICA - 668)) | (1 << (TSqlParser.REQUEST_MAX_CPU_TIME_SEC - 668)) | (1 << (TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT - 668)) | (1 << (TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC - 668)) | (1 << (TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT - 668)) | (1 << (TSqlParser.RESERVE_DISK_SPACE - 668)) | (1 << (TSqlParser.RESOURCE - 668)) | (1 << (TSqlParser.RESOURCE_MANAGER_LOCATION - 668)) | (1 << (TSqlParser.RESTRICTED_USER - 668)) | (1 << (TSqlParser.RETENTION - 668)) | (1 << (TSqlParser.ROBUST - 668)) | (1 << (TSqlParser.ROOT - 668)) | (1 << (TSqlParser.ROUTE - 668)) | (1 << (TSqlParser.ROW - 668)) | (1 << (TSqlParser.ROW_NUMBER - 668)) | (1 << (TSqlParser.ROWGUID - 668)) | (1 << (TSqlParser.ROWS - 668)) | (1 << (TSqlParser.SAMPLE - 668)))) !== 0) || ((((_la - 700)) & ~0x1f) == 0 && ((1 << (_la - 700)) & ((1 << (TSqlParser.SCHEMABINDING - 700)) | (1 << (TSqlParser.SCOPED - 700)) | (1 << (TSqlParser.SCROLL - 700)) | (1 << (TSqlParser.SCROLL_LOCKS - 700)) | (1 << (TSqlParser.SEARCH - 700)) | (1 << (TSqlParser.SECONDARY - 700)) | (1 << (TSqlParser.SECONDARY_ONLY - 700)) | (1 << (TSqlParser.SECONDARY_ROLE - 700)) | (1 << (TSqlParser.SECONDS - 700)) | (1 << (TSqlParser.SECRET - 700)) | (1 << (TSqlParser.SECURITY - 700)) | (1 << (TSqlParser.SECURITY_LOG - 700)) | (1 << (TSqlParser.SEEDING_MODE - 700)) | (1 << (TSqlParser.SELF - 700)) | (1 << (TSqlParser.SEMI_SENSITIVE - 700)) | (1 << (TSqlParser.SEND - 700)) | (1 << (TSqlParser.SENT - 700)) | (1 << (TSqlParser.SEQUENCE - 700)) | (1 << (TSqlParser.SERIALIZABLE - 700)) | (1 << (TSqlParser.SESSION_TIMEOUT - 700)) | (1 << (TSqlParser.SETERROR - 700)) | (1 << (TSqlParser.SHARE - 700)) | (1 << (TSqlParser.SHOWPLAN - 700)) | (1 << (TSqlParser.SIGNATURE - 700)) | (1 << (TSqlParser.SIMPLE - 700)) | (1 << (TSqlParser.SINGLE_USER - 700)) | (1 << (TSqlParser.SIZE - 700)) | (1 << (TSqlParser.SMALLINT - 700)) | (1 << (TSqlParser.SNAPSHOT - 700)) | (1 << (TSqlParser.SPATIAL_WINDOW_MAX_CELLS - 700)) | (1 << (TSqlParser.STANDBY - 700)) | (1 << (TSqlParser.START_DATE - 700)))) !== 0) || ((((_la - 732)) & ~0x1f) == 0 && ((1 << (_la - 732)) & ((1 << (TSqlParser.STATIC - 732)) | (1 << (TSqlParser.STATS_STREAM - 732)) | (1 << (TSqlParser.STATUS - 732)) | (1 << (TSqlParser.STDEV - 732)) | (1 << (TSqlParser.STDEVP - 732)) | (1 << (TSqlParser.STOPLIST - 732)) | (1 << (TSqlParser.STRING_AGG - 732)) | (1 << (TSqlParser.STUFF - 732)) | (1 << (TSqlParser.SUBJECT - 732)) | (1 << (TSqlParser.SUM - 732)) | (1 << (TSqlParser.SUSPEND - 732)) | (1 << (TSqlParser.SYMMETRIC - 732)) | (1 << (TSqlParser.SYNCHRONOUS_COMMIT - 732)) | (1 << (TSqlParser.SYNONYM - 732)) | (1 << (TSqlParser.SYSTEM - 732)) | (1 << (TSqlParser.TAKE - 732)) | (1 << (TSqlParser.TARGET_RECOVERY_TIME - 732)) | (1 << (TSqlParser.TB - 732)) | (1 << (TSqlParser.TEXTIMAGE_ON - 732)) | (1 << (TSqlParser.THROW - 732)) | (1 << (TSqlParser.TIES - 732)) | (1 << (TSqlParser.TIME - 732)) | (1 << (TSqlParser.TIMEOUT - 732)) | (1 << (TSqlParser.TIMER - 732)) | (1 << (TSqlParser.TINYINT - 732)) | (1 << (TSqlParser.TORN_PAGE_DETECTION - 732)) | (1 << (TSqlParser.TRANSFORM_NOISE_WORDS - 732)) | (1 << (TSqlParser.TRIPLE_DES - 732)) | (1 << (TSqlParser.TRIPLE_DES_3KEY - 732)) | (1 << (TSqlParser.TRUSTWORTHY - 732)))) !== 0) || ((((_la - 764)) & ~0x1f) == 0 && ((1 << (_la - 764)) & ((1 << (TSqlParser.TRY - 764)) | (1 << (TSqlParser.TSQL - 764)) | (1 << (TSqlParser.TWO_DIGIT_YEAR_CUTOFF - 764)) | (1 << (TSqlParser.TYPE - 764)) | (1 << (TSqlParser.TYPE_WARNING - 764)) | (1 << (TSqlParser.UNBOUNDED - 764)) | (1 << (TSqlParser.UNCOMMITTED - 764)) | (1 << (TSqlParser.UNKNOWN - 764)) | (1 << (TSqlParser.UNLIMITED - 764)) | (1 << (TSqlParser.USING - 764)) | (1 << (TSqlParser.VALID_XML - 764)) | (1 << (TSqlParser.VALIDATION - 764)) | (1 << (TSqlParser.VALUE - 764)) | (1 << (TSqlParser.VAR - 764)) | (1 << (TSqlParser.VARP - 764)) | (1 << (TSqlParser.VIEW_METADATA - 764)) | (1 << (TSqlParser.VIEWS - 764)) | (1 << (TSqlParser.WAIT - 764)) | (1 << (TSqlParser.WELL_FORMED_XML - 764)) | (1 << (TSqlParser.WORK - 764)) | (1 << (TSqlParser.WORKLOAD - 764)) | (1 << (TSqlParser.XML - 764)) | (1 << (TSqlParser.XMLNAMESPACES - 764)))) !== 0) || ((((_la - 796)) & ~0x1f) == 0 && ((1 << (_la - 796)) & ((1 << (TSqlParser.DOUBLE_QUOTE_ID - 796)) | (1 << (TSqlParser.SQUARE_BRACKET_ID - 796)) | (1 << (TSqlParser.ID - 796)))) !== 0) || _la===TSqlParser.COMMA);
- this.state = 2935;
- this.match(TSqlParser.TO);
- this.state = 2936;
- this.match(TSqlParser.SERVICE);
- this.state = 2937;
- localctx.broker_service = this.match(TSqlParser.STRING);
- this.state = 2938;
- this.match(TSqlParser.COMMA);
- this.state = 2939;
- localctx.broker_service_specifier_or_current_database = this.match(TSqlParser.STRING);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_or_alter_event_sessionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_or_alter_event_session;
- this.event_session_name = null; // IdContext
- this.event_module_guid = null; // IdContext
- this.event_package_name = null; // IdContext
- this.event_name = null; // IdContext
- this.event_customizable_attributue = null; // IdContext
- this.action_name = null; // IdContext
- this.target_name = null; // IdContext
- this.target_parameter_name = null; // IdContext
- this.max_memory = null; // Token
- this.max_dispatch_latency_seconds = null; // Token
- this.max_event_size = null; // Token
- return this;
-}
-
-Create_or_alter_event_sessionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_or_alter_event_sessionContext.prototype.constructor = Create_or_alter_event_sessionContext;
-
-Create_or_alter_event_sessionContext.prototype.EVENT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EVENT);
- } else {
- return this.getToken(TSqlParser.EVENT, i);
- }
-};
-
-
-Create_or_alter_event_sessionContext.prototype.SESSION = function() {
- return this.getToken(TSqlParser.SESSION, 0);
-};
-
-Create_or_alter_event_sessionContext.prototype.ON = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ON);
- } else {
- return this.getToken(TSqlParser.ON, i);
- }
-};
-
-
-Create_or_alter_event_sessionContext.prototype.SERVER = function() {
- return this.getToken(TSqlParser.SERVER, 0);
-};
-
-Create_or_alter_event_sessionContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_or_alter_event_sessionContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Create_or_alter_event_sessionContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Create_or_alter_event_sessionContext.prototype.ADD = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ADD);
- } else {
- return this.getToken(TSqlParser.ADD, i);
- }
-};
-
-
-Create_or_alter_event_sessionContext.prototype.DROP = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DROP);
- } else {
- return this.getToken(TSqlParser.DROP, i);
- }
-};
-
-
-Create_or_alter_event_sessionContext.prototype.DOT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DOT);
- } else {
- return this.getToken(TSqlParser.DOT, i);
- }
-};
-
-
-Create_or_alter_event_sessionContext.prototype.TARGET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.TARGET);
- } else {
- return this.getToken(TSqlParser.TARGET, i);
- }
-};
-
-
-Create_or_alter_event_sessionContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Create_or_alter_event_sessionContext.prototype.LR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.LR_BRACKET);
- } else {
- return this.getToken(TSqlParser.LR_BRACKET, i);
- }
-};
-
-
-Create_or_alter_event_sessionContext.prototype.RR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.RR_BRACKET);
- } else {
- return this.getToken(TSqlParser.RR_BRACKET, i);
- }
-};
-
-
-Create_or_alter_event_sessionContext.prototype.STATE = function() {
- return this.getToken(TSqlParser.STATE, 0);
-};
-
-Create_or_alter_event_sessionContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-Create_or_alter_event_sessionContext.prototype.START = function() {
- return this.getToken(TSqlParser.START, 0);
-};
-
-Create_or_alter_event_sessionContext.prototype.STOP = function() {
- return this.getToken(TSqlParser.STOP, 0);
-};
-
-Create_or_alter_event_sessionContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Create_or_alter_event_sessionContext.prototype.SET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.SET);
- } else {
- return this.getToken(TSqlParser.SET, i);
- }
-};
-
-
-Create_or_alter_event_sessionContext.prototype.MAX_MEMORY = function() {
- return this.getToken(TSqlParser.MAX_MEMORY, 0);
-};
-
-Create_or_alter_event_sessionContext.prototype.EVENT_RETENTION_MODE = function() {
- return this.getToken(TSqlParser.EVENT_RETENTION_MODE, 0);
-};
-
-Create_or_alter_event_sessionContext.prototype.MAX_DISPATCH_LATENCY = function() {
- return this.getToken(TSqlParser.MAX_DISPATCH_LATENCY, 0);
-};
-
-Create_or_alter_event_sessionContext.prototype.MAX_EVENT_SIZE = function() {
- return this.getToken(TSqlParser.MAX_EVENT_SIZE, 0);
-};
-
-Create_or_alter_event_sessionContext.prototype.MEMORY_PARTITION_MODE = function() {
- return this.getToken(TSqlParser.MEMORY_PARTITION_MODE, 0);
-};
-
-Create_or_alter_event_sessionContext.prototype.TRACK_CAUSALITY = function() {
- return this.getToken(TSqlParser.TRACK_CAUSALITY, 0);
-};
-
-Create_or_alter_event_sessionContext.prototype.STARTUP_STATE = function() {
- return this.getToken(TSqlParser.STARTUP_STATE, 0);
-};
-
-Create_or_alter_event_sessionContext.prototype.DECIMAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DECIMAL);
- } else {
- return this.getToken(TSqlParser.DECIMAL, i);
- }
-};
-
-
-Create_or_alter_event_sessionContext.prototype.KB = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.KB);
- } else {
- return this.getToken(TSqlParser.KB, i);
- }
-};
-
-
-Create_or_alter_event_sessionContext.prototype.MB = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.MB);
- } else {
- return this.getToken(TSqlParser.MB, i);
- }
-};
-
-
-Create_or_alter_event_sessionContext.prototype.ALLOW_SINGLE_EVENT_LOSS = function() {
- return this.getToken(TSqlParser.ALLOW_SINGLE_EVENT_LOSS, 0);
-};
-
-Create_or_alter_event_sessionContext.prototype.ALLOW_MULTIPLE_EVENT_LOSS = function() {
- return this.getToken(TSqlParser.ALLOW_MULTIPLE_EVENT_LOSS, 0);
-};
-
-Create_or_alter_event_sessionContext.prototype.NO_EVENT_LOSS = function() {
- return this.getToken(TSqlParser.NO_EVENT_LOSS, 0);
-};
-
-Create_or_alter_event_sessionContext.prototype.NONE = function() {
- return this.getToken(TSqlParser.NONE, 0);
-};
-
-Create_or_alter_event_sessionContext.prototype.PER_NODE = function() {
- return this.getToken(TSqlParser.PER_NODE, 0);
-};
-
-Create_or_alter_event_sessionContext.prototype.PER_CPU = function() {
- return this.getToken(TSqlParser.PER_CPU, 0);
-};
-
-Create_or_alter_event_sessionContext.prototype.OFF = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.OFF);
- } else {
- return this.getToken(TSqlParser.OFF, i);
- }
-};
-
-
-Create_or_alter_event_sessionContext.prototype.SECONDS = function() {
- return this.getToken(TSqlParser.SECONDS, 0);
-};
-
-Create_or_alter_event_sessionContext.prototype.INFINITE = function() {
- return this.getToken(TSqlParser.INFINITE, 0);
-};
-
-Create_or_alter_event_sessionContext.prototype.ACTION = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ACTION);
- } else {
- return this.getToken(TSqlParser.ACTION, i);
- }
-};
-
-
-Create_or_alter_event_sessionContext.prototype.WHERE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.WHERE);
- } else {
- return this.getToken(TSqlParser.WHERE, i);
- }
-};
-
-
-Create_or_alter_event_sessionContext.prototype.event_session_predicate_expression = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Event_session_predicate_expressionContext);
- } else {
- return this.getTypedRuleContext(Event_session_predicate_expressionContext,i);
- }
-};
-
-Create_or_alter_event_sessionContext.prototype.STRING = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.STRING);
- } else {
- return this.getToken(TSqlParser.STRING, i);
- }
-};
-
-
-Create_or_alter_event_sessionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_or_alter_event_session(this);
- }
-};
-
-Create_or_alter_event_sessionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_or_alter_event_session(this);
- }
-};
-
-Create_or_alter_event_sessionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_or_alter_event_session(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_or_alter_event_sessionContext = Create_or_alter_event_sessionContext;
-
-TSqlParser.prototype.create_or_alter_event_session = function() {
-
- var localctx = new Create_or_alter_event_sessionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 286, TSqlParser.RULE_create_or_alter_event_session);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 2941;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.ALTER || _la===TSqlParser.CREATE)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 2942;
- this.match(TSqlParser.EVENT);
- this.state = 2943;
- this.match(TSqlParser.SESSION);
- this.state = 2944;
- localctx.event_session_name = this.id();
- this.state = 2945;
- this.match(TSqlParser.ON);
- this.state = 2946;
- this.match(TSqlParser.SERVER);
- this.state = 3014;
- this._errHandler.sync(this);
- var _alt = this._interp.adaptivePredict(this._input,242,this._ctx)
- while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
- if(_alt===1) {
- this.state = 2948;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 2947;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 2950;
- this.match(TSqlParser.ADD);
- this.state = 2951;
- this.match(TSqlParser.EVENT);
-
- this.state = 2955;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,232,this._ctx);
- if(la_===1) {
- this.state = 2952;
- localctx.event_module_guid = this.id();
- this.state = 2953;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 2957;
- localctx.event_package_name = this.id();
- this.state = 2958;
- this.match(TSqlParser.DOT);
- this.state = 2959;
- localctx.event_name = this.id();
- this.state = 3009;
- this._errHandler.sync(this);
- var _alt = this._interp.adaptivePredict(this._input,241,this._ctx)
- while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
- if(_alt===1) {
- this.state = 2961;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 2975;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.SET) {
- this.state = 2962;
- this.match(TSqlParser.SET);
- this.state = 2972;
- this._errHandler.sync(this);
- var _alt = this._interp.adaptivePredict(this._input,234,this._ctx)
- while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
- if(_alt===1) {
- this.state = 2964;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 2963;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 2966;
- localctx.event_customizable_attributue = this.id();
- this.state = 2967;
- this.match(TSqlParser.EQUAL);
- this.state = 2968;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.DECIMAL || _la===TSqlParser.STRING)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- }
- this.state = 2974;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,234,this._ctx);
- }
-
- }
-
- this.state = 2997;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- do {
- this.state = 2977;
- this.match(TSqlParser.ACTION);
- this.state = 2978;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 2991;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- do {
- this.state = 2980;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 2979;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 2985;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,237,this._ctx);
- if(la_===1) {
- this.state = 2982;
- localctx.event_module_guid = this.id();
- this.state = 2983;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 2987;
- localctx.event_package_name = this.id();
- this.state = 2988;
- this.match(TSqlParser.DOT);
- this.state = 2989;
- localctx.action_name = this.id();
- this.state = 2993;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- } while(_la===TSqlParser.CALLED || _la===TSqlParser.DATA_COMPRESSION || ((((_la - 112)) & ~0x1f) == 0 && ((1 << (_la - 112)) & ((1 << (TSqlParser.EVENTDATA - 112)) | (1 << (TSqlParser.FILENAME - 112)) | (1 << (TSqlParser.FILLFACTOR - 112)) | (1 << (TSqlParser.FORCESEEK - 112)))) !== 0) || ((((_la - 158)) & ~0x1f) == 0 && ((1 << (_la - 158)) & ((1 << (TSqlParser.INIT - 158)) | (1 << (TSqlParser.KEY - 158)) | (1 << (TSqlParser.MASTER - 158)) | (1 << (TSqlParser.MAX_MEMORY - 158)))) !== 0) || _la===TSqlParser.OFFSETS || _la===TSqlParser.PAGE || ((((_la - 259)) & ~0x1f) == 0 && ((1 << (_la - 259)) & ((1 << (TSqlParser.PUBLIC - 259)) | (1 << (TSqlParser.R - 259)) | (1 << (TSqlParser.RAW - 259)) | (1 << (TSqlParser.RETURN - 259)) | (1 << (TSqlParser.RETURNS - 259)) | (1 << (TSqlParser.ROWCOUNT - 259)))) !== 0) || ((((_la - 295)) & ~0x1f) == 0 && ((1 << (_la - 295)) & ((1 << (TSqlParser.SAFETY - 295)) | (1 << (TSqlParser.SERVER - 295)) | (1 << (TSqlParser.SID - 295)) | (1 << (TSqlParser.SOURCE - 295)) | (1 << (TSqlParser.SPLIT - 295)))) !== 0) || ((((_la - 327)) & ~0x1f) == 0 && ((1 << (_la - 327)) & ((1 << (TSqlParser.STATE - 327)) | (1 << (TSqlParser.START - 327)) | (1 << (TSqlParser.TARGET - 327)))) !== 0) || ((((_la - 380)) & ~0x1f) == 0 && ((1 << (_la - 380)) & ((1 << (TSqlParser.ABSOLUTE - 380)) | (1 << (TSqlParser.ACCENT_SENSITIVITY - 380)) | (1 << (TSqlParser.ACTION - 380)) | (1 << (TSqlParser.ACTIVATION - 380)) | (1 << (TSqlParser.ACTIVE - 380)) | (1 << (TSqlParser.ADDRESS - 380)) | (1 << (TSqlParser.AES_128 - 380)) | (1 << (TSqlParser.AES_192 - 380)) | (1 << (TSqlParser.AES_256 - 380)) | (1 << (TSqlParser.AFFINITY - 380)) | (1 << (TSqlParser.AFTER - 380)) | (1 << (TSqlParser.AGGREGATE - 380)) | (1 << (TSqlParser.ALGORITHM - 380)) | (1 << (TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS - 380)) | (1 << (TSqlParser.ALLOW_SNAPSHOT_ISOLATION - 380)) | (1 << (TSqlParser.ALLOWED - 380)) | (1 << (TSqlParser.ANSI_NULL_DEFAULT - 380)) | (1 << (TSqlParser.ANSI_NULLS - 380)) | (1 << (TSqlParser.ANSI_PADDING - 380)) | (1 << (TSqlParser.ANSI_WARNINGS - 380)) | (1 << (TSqlParser.APPLICATION_LOG - 380)) | (1 << (TSqlParser.APPLY - 380)) | (1 << (TSqlParser.ARITHABORT - 380)) | (1 << (TSqlParser.ASSEMBLY - 380)) | (1 << (TSqlParser.AUDIT - 380)) | (1 << (TSqlParser.AUDIT_GUID - 380)) | (1 << (TSqlParser.AUTO - 380)) | (1 << (TSqlParser.AUTO_CLEANUP - 380)) | (1 << (TSqlParser.AUTO_CLOSE - 380)) | (1 << (TSqlParser.AUTO_CREATE_STATISTICS - 380)) | (1 << (TSqlParser.AUTO_SHRINK - 380)) | (1 << (TSqlParser.AUTO_UPDATE_STATISTICS - 380)))) !== 0) || ((((_la - 412)) & ~0x1f) == 0 && ((1 << (_la - 412)) & ((1 << (TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC - 412)) | (1 << (TSqlParser.AVAILABILITY - 412)) | (1 << (TSqlParser.AVG - 412)) | (1 << (TSqlParser.BACKUP_PRIORITY - 412)) | (1 << (TSqlParser.BEGIN_DIALOG - 412)) | (1 << (TSqlParser.BIGINT - 412)) | (1 << (TSqlParser.BINARY_BASE64 - 412)) | (1 << (TSqlParser.BINARY_CHECKSUM - 412)) | (1 << (TSqlParser.BINDING - 412)) | (1 << (TSqlParser.BLOB_STORAGE - 412)) | (1 << (TSqlParser.BROKER - 412)) | (1 << (TSqlParser.BROKER_INSTANCE - 412)) | (1 << (TSqlParser.BULK_LOGGED - 412)) | (1 << (TSqlParser.CALLER - 412)) | (1 << (TSqlParser.CAP_CPU_PERCENT - 412)) | (1 << (TSqlParser.CAST - 412)) | (1 << (TSqlParser.CATALOG - 412)) | (1 << (TSqlParser.CATCH - 412)) | (1 << (TSqlParser.CHANGE_RETENTION - 412)) | (1 << (TSqlParser.CHANGE_TRACKING - 412)) | (1 << (TSqlParser.CHECKSUM - 412)) | (1 << (TSqlParser.CHECKSUM_AGG - 412)) | (1 << (TSqlParser.CLEANUP - 412)) | (1 << (TSqlParser.COLLECTION - 412)) | (1 << (TSqlParser.COLUMN_MASTER_KEY - 412)) | (1 << (TSqlParser.COMMITTED - 412)) | (1 << (TSqlParser.COMPATIBILITY_LEVEL - 412)) | (1 << (TSqlParser.CONCAT - 412)) | (1 << (TSqlParser.CONCAT_NULL_YIELDS_NULL - 412)) | (1 << (TSqlParser.CONTENT - 412)) | (1 << (TSqlParser.CONTROL - 412)) | (1 << (TSqlParser.COOKIE - 412)))) !== 0) || ((((_la - 444)) & ~0x1f) == 0 && ((1 << (_la - 444)) & ((1 << (TSqlParser.COUNT - 444)) | (1 << (TSqlParser.COUNT_BIG - 444)) | (1 << (TSqlParser.COUNTER - 444)) | (1 << (TSqlParser.CPU - 444)) | (1 << (TSqlParser.CREATE_NEW - 444)) | (1 << (TSqlParser.CREATION_DISPOSITION - 444)) | (1 << (TSqlParser.CREDENTIAL - 444)) | (1 << (TSqlParser.CRYPTOGRAPHIC - 444)) | (1 << (TSqlParser.CURSOR_CLOSE_ON_COMMIT - 444)) | (1 << (TSqlParser.CURSOR_DEFAULT - 444)) | (1 << (TSqlParser.DATA - 444)) | (1 << (TSqlParser.DATE_CORRELATION_OPTIMIZATION - 444)) | (1 << (TSqlParser.DATEADD - 444)) | (1 << (TSqlParser.DATEDIFF - 444)) | (1 << (TSqlParser.DATENAME - 444)) | (1 << (TSqlParser.DATEPART - 444)) | (1 << (TSqlParser.DAYS - 444)) | (1 << (TSqlParser.DB_CHAINING - 444)) | (1 << (TSqlParser.DB_FAILOVER - 444)) | (1 << (TSqlParser.DECRYPTION - 444)) | (1 << (TSqlParser.DEFAULT_DOUBLE_QUOTE - 444)) | (1 << (TSqlParser.DEFAULT_FULLTEXT_LANGUAGE - 444)) | (1 << (TSqlParser.DEFAULT_LANGUAGE - 444)) | (1 << (TSqlParser.DELAY - 444)) | (1 << (TSqlParser.DELAYED_DURABILITY - 444)) | (1 << (TSqlParser.DELETED - 444)) | (1 << (TSqlParser.DENSE_RANK - 444)) | (1 << (TSqlParser.DEPENDENTS - 444)) | (1 << (TSqlParser.DES - 444)) | (1 << (TSqlParser.DESCRIPTION - 444)) | (1 << (TSqlParser.DESX - 444)) | (1 << (TSqlParser.DHCP - 444)))) !== 0) || ((((_la - 476)) & ~0x1f) == 0 && ((1 << (_la - 476)) & ((1 << (TSqlParser.DIALOG - 476)) | (1 << (TSqlParser.DIRECTORY_NAME - 476)) | (1 << (TSqlParser.DISABLE - 476)) | (1 << (TSqlParser.DISABLE_BROKER - 476)) | (1 << (TSqlParser.DISABLED - 476)) | (1 << (TSqlParser.DISK_DRIVE - 476)) | (1 << (TSqlParser.DOCUMENT - 476)) | (1 << (TSqlParser.DYNAMIC - 476)) | (1 << (TSqlParser.EMERGENCY - 476)) | (1 << (TSqlParser.EMPTY - 476)) | (1 << (TSqlParser.ENABLE - 476)) | (1 << (TSqlParser.ENABLE_BROKER - 476)) | (1 << (TSqlParser.ENCRYPTED_VALUE - 476)) | (1 << (TSqlParser.ENCRYPTION - 476)) | (1 << (TSqlParser.ENDPOINT_URL - 476)) | (1 << (TSqlParser.ERROR_BROKER_CONVERSATIONS - 476)) | (1 << (TSqlParser.EXCLUSIVE - 476)) | (1 << (TSqlParser.EXECUTABLE - 476)) | (1 << (TSqlParser.EXIST - 476)) | (1 << (TSqlParser.EXPAND - 476)) | (1 << (TSqlParser.EXPIRY_DATE - 476)) | (1 << (TSqlParser.EXPLICIT - 476)) | (1 << (TSqlParser.FAIL_OPERATION - 476)) | (1 << (TSqlParser.FAILOVER_MODE - 476)) | (1 << (TSqlParser.FAILURE - 476)) | (1 << (TSqlParser.FAILURE_CONDITION_LEVEL - 476)) | (1 << (TSqlParser.FAST - 476)) | (1 << (TSqlParser.FAST_FORWARD - 476)) | (1 << (TSqlParser.FILEGROUP - 476)) | (1 << (TSqlParser.FILEGROWTH - 476)) | (1 << (TSqlParser.FILEPATH - 476)))) !== 0) || ((((_la - 508)) & ~0x1f) == 0 && ((1 << (_la - 508)) & ((1 << (TSqlParser.FILESTREAM - 508)) | (1 << (TSqlParser.FILTER - 508)) | (1 << (TSqlParser.FIRST - 508)) | (1 << (TSqlParser.FIRST_VALUE - 508)) | (1 << (TSqlParser.FOLLOWING - 508)) | (1 << (TSqlParser.FORCE - 508)) | (1 << (TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS - 508)) | (1 << (TSqlParser.FORCED - 508)) | (1 << (TSqlParser.FORMAT - 508)) | (1 << (TSqlParser.FORWARD_ONLY - 508)) | (1 << (TSqlParser.FULLSCAN - 508)) | (1 << (TSqlParser.FULLTEXT - 508)) | (1 << (TSqlParser.GB - 508)) | (1 << (TSqlParser.GETDATE - 508)) | (1 << (TSqlParser.GETUTCDATE - 508)) | (1 << (TSqlParser.GLOBAL - 508)) | (1 << (TSqlParser.GO - 508)) | (1 << (TSqlParser.GROUP_MAX_REQUESTS - 508)) | (1 << (TSqlParser.GROUPING - 508)) | (1 << (TSqlParser.GROUPING_ID - 508)) | (1 << (TSqlParser.HADR - 508)) | (1 << (TSqlParser.HASH - 508)) | (1 << (TSqlParser.HEALTH_CHECK_TIMEOUT - 508)) | (1 << (TSqlParser.HIGH - 508)) | (1 << (TSqlParser.HONOR_BROKER_PRIORITY - 508)) | (1 << (TSqlParser.HOURS - 508)) | (1 << (TSqlParser.IDENTITY_VALUE - 508)) | (1 << (TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX - 508)) | (1 << (TSqlParser.IMMEDIATE - 508)) | (1 << (TSqlParser.IMPERSONATE - 508)) | (1 << (TSqlParser.IMPORTANCE - 508)))) !== 0) || ((((_la - 540)) & ~0x1f) == 0 && ((1 << (_la - 540)) & ((1 << (TSqlParser.INCREMENTAL - 540)) | (1 << (TSqlParser.INITIATOR - 540)) | (1 << (TSqlParser.INPUT - 540)) | (1 << (TSqlParser.INSENSITIVE - 540)) | (1 << (TSqlParser.INSERTED - 540)) | (1 << (TSqlParser.INT - 540)) | (1 << (TSqlParser.IP - 540)) | (1 << (TSqlParser.ISOLATION - 540)) | (1 << (TSqlParser.KB - 540)) | (1 << (TSqlParser.KEEP - 540)) | (1 << (TSqlParser.KEEPFIXED - 540)) | (1 << (TSqlParser.KEY_SOURCE - 540)) | (1 << (TSqlParser.KEYS - 540)) | (1 << (TSqlParser.KEYSET - 540)) | (1 << (TSqlParser.LAG - 540)) | (1 << (TSqlParser.LAST - 540)) | (1 << (TSqlParser.LAST_VALUE - 540)) | (1 << (TSqlParser.LEAD - 540)) | (1 << (TSqlParser.LEVEL - 540)) | (1 << (TSqlParser.LIST - 540)) | (1 << (TSqlParser.LISTENER - 540)) | (1 << (TSqlParser.LISTENER_URL - 540)) | (1 << (TSqlParser.LOB_COMPACTION - 540)) | (1 << (TSqlParser.LOCAL - 540)) | (1 << (TSqlParser.LOCATION - 540)) | (1 << (TSqlParser.LOCK - 540)) | (1 << (TSqlParser.LOCK_ESCALATION - 540)) | (1 << (TSqlParser.LOGIN - 540)) | (1 << (TSqlParser.LOOP - 540)) | (1 << (TSqlParser.LOW - 540)))) !== 0) || ((((_la - 572)) & ~0x1f) == 0 && ((1 << (_la - 572)) & ((1 << (TSqlParser.MANUAL - 572)) | (1 << (TSqlParser.MARK - 572)) | (1 << (TSqlParser.MATERIALIZED - 572)) | (1 << (TSqlParser.MAX - 572)) | (1 << (TSqlParser.MAX_CPU_PERCENT - 572)) | (1 << (TSqlParser.MAX_DOP - 572)) | (1 << (TSqlParser.MAX_FILES - 572)) | (1 << (TSqlParser.MAX_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MAX_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MAX_PROCESSES - 572)) | (1 << (TSqlParser.MAX_QUEUE_READERS - 572)) | (1 << (TSqlParser.MAX_ROLLOVER_FILES - 572)) | (1 << (TSqlParser.MAXDOP - 572)) | (1 << (TSqlParser.MAXRECURSION - 572)) | (1 << (TSqlParser.MAXSIZE - 572)) | (1 << (TSqlParser.MB - 572)) | (1 << (TSqlParser.MEDIUM - 572)) | (1 << (TSqlParser.MEMORY_OPTIMIZED_DATA - 572)) | (1 << (TSqlParser.MESSAGE - 572)) | (1 << (TSqlParser.MIN - 572)) | (1 << (TSqlParser.MIN_ACTIVE_ROWVERSION - 572)) | (1 << (TSqlParser.MIN_CPU_PERCENT - 572)) | (1 << (TSqlParser.MIN_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MIN_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MINUTES - 572)) | (1 << (TSqlParser.MIRROR_ADDRESS - 572)) | (1 << (TSqlParser.MIXED_PAGE_ALLOCATION - 572)) | (1 << (TSqlParser.MODE - 572)) | (1 << (TSqlParser.MODIFY - 572)) | (1 << (TSqlParser.MOVE - 572)) | (1 << (TSqlParser.MULTI_USER - 572)) | (1 << (TSqlParser.NAME - 572)))) !== 0) || ((((_la - 604)) & ~0x1f) == 0 && ((1 << (_la - 604)) & ((1 << (TSqlParser.NESTED_TRIGGERS - 604)) | (1 << (TSqlParser.NEW_ACCOUNT - 604)) | (1 << (TSqlParser.NEW_BROKER - 604)) | (1 << (TSqlParser.NEW_PASSWORD - 604)) | (1 << (TSqlParser.NEXT - 604)) | (1 << (TSqlParser.NO - 604)) | (1 << (TSqlParser.NO_TRUNCATE - 604)) | (1 << (TSqlParser.NO_WAIT - 604)) | (1 << (TSqlParser.NOCOUNT - 604)) | (1 << (TSqlParser.NODES - 604)) | (1 << (TSqlParser.NOEXPAND - 604)) | (1 << (TSqlParser.NON_TRANSACTED_ACCESS - 604)) | (1 << (TSqlParser.NORECOMPUTE - 604)) | (1 << (TSqlParser.NORECOVERY - 604)) | (1 << (TSqlParser.NOWAIT - 604)) | (1 << (TSqlParser.NTILE - 604)) | (1 << (TSqlParser.NUMANODE - 604)) | (1 << (TSqlParser.NUMBER - 604)) | (1 << (TSqlParser.NUMERIC_ROUNDABORT - 604)) | (1 << (TSqlParser.OBJECT - 604)) | (1 << (TSqlParser.OFFLINE - 604)) | (1 << (TSqlParser.OFFSET - 604)) | (1 << (TSqlParser.OLD_ACCOUNT - 604)) | (1 << (TSqlParser.ONLINE - 604)) | (1 << (TSqlParser.ONLY - 604)) | (1 << (TSqlParser.OPEN_EXISTING - 604)) | (1 << (TSqlParser.OPTIMISTIC - 604)) | (1 << (TSqlParser.OPTIMIZE - 604)) | (1 << (TSqlParser.OUT - 604)) | (1 << (TSqlParser.OUTPUT - 604)) | (1 << (TSqlParser.OWNER - 604)))) !== 0) || ((((_la - 636)) & ~0x1f) == 0 && ((1 << (_la - 636)) & ((1 << (TSqlParser.PAGE_VERIFY - 636)) | (1 << (TSqlParser.PARAMETERIZATION - 636)) | (1 << (TSqlParser.PARTITION - 636)) | (1 << (TSqlParser.PARTITIONS - 636)) | (1 << (TSqlParser.PARTNER - 636)) | (1 << (TSqlParser.PATH - 636)) | (1 << (TSqlParser.POISON_MESSAGE_HANDLING - 636)) | (1 << (TSqlParser.POOL - 636)) | (1 << (TSqlParser.PORT - 636)) | (1 << (TSqlParser.PRECEDING - 636)) | (1 << (TSqlParser.PRIMARY_ROLE - 636)) | (1 << (TSqlParser.PRIOR - 636)) | (1 << (TSqlParser.PRIORITY - 636)) | (1 << (TSqlParser.PRIORITY_LEVEL - 636)) | (1 << (TSqlParser.PRIVATE - 636)) | (1 << (TSqlParser.PRIVATE_KEY - 636)) | (1 << (TSqlParser.PRIVILEGES - 636)) | (1 << (TSqlParser.PROCEDURE_NAME - 636)) | (1 << (TSqlParser.PROPERTY - 636)) | (1 << (TSqlParser.PROVIDER - 636)) | (1 << (TSqlParser.PROVIDER_KEY_NAME - 636)) | (1 << (TSqlParser.QUERY - 636)) | (1 << (TSqlParser.QUEUE - 636)) | (1 << (TSqlParser.QUEUE_DELAY - 636)) | (1 << (TSqlParser.QUOTED_IDENTIFIER - 636)) | (1 << (TSqlParser.RANGE - 636)) | (1 << (TSqlParser.RANK - 636)) | (1 << (TSqlParser.RC2 - 636)) | (1 << (TSqlParser.RC4 - 636)) | (1 << (TSqlParser.RC4_128 - 636)) | (1 << (TSqlParser.READ_COMMITTED_SNAPSHOT - 636)) | (1 << (TSqlParser.READ_ONLY - 636)))) !== 0) || ((((_la - 668)) & ~0x1f) == 0 && ((1 << (_la - 668)) & ((1 << (TSqlParser.READ_ONLY_ROUTING_LIST - 668)) | (1 << (TSqlParser.READ_WRITE - 668)) | (1 << (TSqlParser.READONLY - 668)) | (1 << (TSqlParser.REBUILD - 668)) | (1 << (TSqlParser.RECEIVE - 668)) | (1 << (TSqlParser.RECOMPILE - 668)) | (1 << (TSqlParser.RECOVERY - 668)) | (1 << (TSqlParser.RECURSIVE_TRIGGERS - 668)) | (1 << (TSqlParser.RELATIVE - 668)) | (1 << (TSqlParser.REMOTE - 668)) | (1 << (TSqlParser.REMOTE_SERVICE_NAME - 668)) | (1 << (TSqlParser.REMOVE - 668)) | (1 << (TSqlParser.REORGANIZE - 668)) | (1 << (TSqlParser.REPEATABLE - 668)) | (1 << (TSqlParser.REPLICA - 668)) | (1 << (TSqlParser.REQUEST_MAX_CPU_TIME_SEC - 668)) | (1 << (TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT - 668)) | (1 << (TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC - 668)) | (1 << (TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT - 668)) | (1 << (TSqlParser.RESERVE_DISK_SPACE - 668)) | (1 << (TSqlParser.RESOURCE - 668)) | (1 << (TSqlParser.RESOURCE_MANAGER_LOCATION - 668)) | (1 << (TSqlParser.RESTRICTED_USER - 668)) | (1 << (TSqlParser.RETENTION - 668)) | (1 << (TSqlParser.ROBUST - 668)) | (1 << (TSqlParser.ROOT - 668)) | (1 << (TSqlParser.ROUTE - 668)) | (1 << (TSqlParser.ROW - 668)) | (1 << (TSqlParser.ROW_NUMBER - 668)) | (1 << (TSqlParser.ROWGUID - 668)) | (1 << (TSqlParser.ROWS - 668)) | (1 << (TSqlParser.SAMPLE - 668)))) !== 0) || ((((_la - 700)) & ~0x1f) == 0 && ((1 << (_la - 700)) & ((1 << (TSqlParser.SCHEMABINDING - 700)) | (1 << (TSqlParser.SCOPED - 700)) | (1 << (TSqlParser.SCROLL - 700)) | (1 << (TSqlParser.SCROLL_LOCKS - 700)) | (1 << (TSqlParser.SEARCH - 700)) | (1 << (TSqlParser.SECONDARY - 700)) | (1 << (TSqlParser.SECONDARY_ONLY - 700)) | (1 << (TSqlParser.SECONDARY_ROLE - 700)) | (1 << (TSqlParser.SECONDS - 700)) | (1 << (TSqlParser.SECRET - 700)) | (1 << (TSqlParser.SECURITY - 700)) | (1 << (TSqlParser.SECURITY_LOG - 700)) | (1 << (TSqlParser.SEEDING_MODE - 700)) | (1 << (TSqlParser.SELF - 700)) | (1 << (TSqlParser.SEMI_SENSITIVE - 700)) | (1 << (TSqlParser.SEND - 700)) | (1 << (TSqlParser.SENT - 700)) | (1 << (TSqlParser.SEQUENCE - 700)) | (1 << (TSqlParser.SERIALIZABLE - 700)) | (1 << (TSqlParser.SESSION_TIMEOUT - 700)) | (1 << (TSqlParser.SETERROR - 700)) | (1 << (TSqlParser.SHARE - 700)) | (1 << (TSqlParser.SHOWPLAN - 700)) | (1 << (TSqlParser.SIGNATURE - 700)) | (1 << (TSqlParser.SIMPLE - 700)) | (1 << (TSqlParser.SINGLE_USER - 700)) | (1 << (TSqlParser.SIZE - 700)) | (1 << (TSqlParser.SMALLINT - 700)) | (1 << (TSqlParser.SNAPSHOT - 700)) | (1 << (TSqlParser.SPATIAL_WINDOW_MAX_CELLS - 700)) | (1 << (TSqlParser.STANDBY - 700)) | (1 << (TSqlParser.START_DATE - 700)))) !== 0) || ((((_la - 732)) & ~0x1f) == 0 && ((1 << (_la - 732)) & ((1 << (TSqlParser.STATIC - 732)) | (1 << (TSqlParser.STATS_STREAM - 732)) | (1 << (TSqlParser.STATUS - 732)) | (1 << (TSqlParser.STDEV - 732)) | (1 << (TSqlParser.STDEVP - 732)) | (1 << (TSqlParser.STOPLIST - 732)) | (1 << (TSqlParser.STRING_AGG - 732)) | (1 << (TSqlParser.STUFF - 732)) | (1 << (TSqlParser.SUBJECT - 732)) | (1 << (TSqlParser.SUM - 732)) | (1 << (TSqlParser.SUSPEND - 732)) | (1 << (TSqlParser.SYMMETRIC - 732)) | (1 << (TSqlParser.SYNCHRONOUS_COMMIT - 732)) | (1 << (TSqlParser.SYNONYM - 732)) | (1 << (TSqlParser.SYSTEM - 732)) | (1 << (TSqlParser.TAKE - 732)) | (1 << (TSqlParser.TARGET_RECOVERY_TIME - 732)) | (1 << (TSqlParser.TB - 732)) | (1 << (TSqlParser.TEXTIMAGE_ON - 732)) | (1 << (TSqlParser.THROW - 732)) | (1 << (TSqlParser.TIES - 732)) | (1 << (TSqlParser.TIME - 732)) | (1 << (TSqlParser.TIMEOUT - 732)) | (1 << (TSqlParser.TIMER - 732)) | (1 << (TSqlParser.TINYINT - 732)) | (1 << (TSqlParser.TORN_PAGE_DETECTION - 732)) | (1 << (TSqlParser.TRANSFORM_NOISE_WORDS - 732)) | (1 << (TSqlParser.TRIPLE_DES - 732)) | (1 << (TSqlParser.TRIPLE_DES_3KEY - 732)) | (1 << (TSqlParser.TRUSTWORTHY - 732)))) !== 0) || ((((_la - 764)) & ~0x1f) == 0 && ((1 << (_la - 764)) & ((1 << (TSqlParser.TRY - 764)) | (1 << (TSqlParser.TSQL - 764)) | (1 << (TSqlParser.TWO_DIGIT_YEAR_CUTOFF - 764)) | (1 << (TSqlParser.TYPE - 764)) | (1 << (TSqlParser.TYPE_WARNING - 764)) | (1 << (TSqlParser.UNBOUNDED - 764)) | (1 << (TSqlParser.UNCOMMITTED - 764)) | (1 << (TSqlParser.UNKNOWN - 764)) | (1 << (TSqlParser.UNLIMITED - 764)) | (1 << (TSqlParser.USING - 764)) | (1 << (TSqlParser.VALID_XML - 764)) | (1 << (TSqlParser.VALIDATION - 764)) | (1 << (TSqlParser.VALUE - 764)) | (1 << (TSqlParser.VAR - 764)) | (1 << (TSqlParser.VARP - 764)) | (1 << (TSqlParser.VIEW_METADATA - 764)) | (1 << (TSqlParser.VIEWS - 764)) | (1 << (TSqlParser.WAIT - 764)) | (1 << (TSqlParser.WELL_FORMED_XML - 764)) | (1 << (TSqlParser.WORK - 764)) | (1 << (TSqlParser.WORKLOAD - 764)) | (1 << (TSqlParser.XML - 764)) | (1 << (TSqlParser.XMLNAMESPACES - 764)))) !== 0) || ((((_la - 796)) & ~0x1f) == 0 && ((1 << (_la - 796)) & ((1 << (TSqlParser.DOUBLE_QUOTE_ID - 796)) | (1 << (TSqlParser.SQUARE_BRACKET_ID - 796)) | (1 << (TSqlParser.ID - 796)))) !== 0) || _la===TSqlParser.COMMA);
- this.state = 2995;
- this.match(TSqlParser.RR_BRACKET);
- this.state = 2999;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- } while(_la===TSqlParser.ACTION);
- this.state = 3003;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.WHERE) {
- this.state = 3001;
- this.match(TSqlParser.WHERE);
- this.state = 3002;
- this.event_session_predicate_expression();
- }
-
- this.state = 3005;
- this.match(TSqlParser.RR_BRACKET);
- }
- this.state = 3011;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,241,this._ctx);
- }
-
- }
- this.state = 3016;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,242,this._ctx);
- }
-
- this.state = 3033;
- this._errHandler.sync(this);
- var _alt = this._interp.adaptivePredict(this._input,245,this._ctx)
- while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
- if(_alt===1) {
- this.state = 3018;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 3017;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 3020;
- this.match(TSqlParser.DROP);
- this.state = 3021;
- this.match(TSqlParser.EVENT);
- this.state = 3025;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,244,this._ctx);
- if(la_===1) {
- this.state = 3022;
- localctx.event_module_guid = this.id();
- this.state = 3023;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 3027;
- localctx.event_package_name = this.id();
- this.state = 3028;
- this.match(TSqlParser.DOT);
- this.state = 3029;
- localctx.event_name = this.id();
- }
- this.state = 3035;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,245,this._ctx);
- }
-
- this.state = 3077;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.ADD) {
- this.state = 3036;
- this.match(TSqlParser.ADD);
- this.state = 3037;
- this.match(TSqlParser.TARGET);
- this.state = 3041;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,246,this._ctx);
- if(la_===1) {
- this.state = 3038;
- localctx.event_module_guid = this.id();
- this.state = 3039;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 3043;
- localctx.event_package_name = this.id();
- this.state = 3044;
- this.match(TSqlParser.DOT);
- this.state = 3045;
- localctx.target_name = this.id();
- this.state = 3072;
- this._errHandler.sync(this);
- var _alt = this._interp.adaptivePredict(this._input,252,this._ctx)
- while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
- if(_alt===1) {
- this.state = 3047;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 3048;
- this.match(TSqlParser.SET);
- this.state = 3064;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- do {
- this.state = 3050;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 3049;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 3052;
- localctx.target_parameter_name = this.id();
- this.state = 3053;
- this.match(TSqlParser.EQUAL);
- this.state = 3062;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.DECIMAL:
- case TSqlParser.LR_BRACKET:
- this.state = 3055;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.LR_BRACKET) {
- this.state = 3054;
- this.match(TSqlParser.LR_BRACKET);
- }
-
- this.state = 3057;
- this.match(TSqlParser.DECIMAL);
- this.state = 3059;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,249,this._ctx);
- if(la_===1) {
- this.state = 3058;
- this.match(TSqlParser.RR_BRACKET);
-
- }
- break;
- case TSqlParser.STRING:
- this.state = 3061;
- this.match(TSqlParser.STRING);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 3066;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- } while(_la===TSqlParser.CALLED || _la===TSqlParser.DATA_COMPRESSION || ((((_la - 112)) & ~0x1f) == 0 && ((1 << (_la - 112)) & ((1 << (TSqlParser.EVENTDATA - 112)) | (1 << (TSqlParser.FILENAME - 112)) | (1 << (TSqlParser.FILLFACTOR - 112)) | (1 << (TSqlParser.FORCESEEK - 112)))) !== 0) || ((((_la - 158)) & ~0x1f) == 0 && ((1 << (_la - 158)) & ((1 << (TSqlParser.INIT - 158)) | (1 << (TSqlParser.KEY - 158)) | (1 << (TSqlParser.MASTER - 158)) | (1 << (TSqlParser.MAX_MEMORY - 158)))) !== 0) || _la===TSqlParser.OFFSETS || _la===TSqlParser.PAGE || ((((_la - 259)) & ~0x1f) == 0 && ((1 << (_la - 259)) & ((1 << (TSqlParser.PUBLIC - 259)) | (1 << (TSqlParser.R - 259)) | (1 << (TSqlParser.RAW - 259)) | (1 << (TSqlParser.RETURN - 259)) | (1 << (TSqlParser.RETURNS - 259)) | (1 << (TSqlParser.ROWCOUNT - 259)))) !== 0) || ((((_la - 295)) & ~0x1f) == 0 && ((1 << (_la - 295)) & ((1 << (TSqlParser.SAFETY - 295)) | (1 << (TSqlParser.SERVER - 295)) | (1 << (TSqlParser.SID - 295)) | (1 << (TSqlParser.SOURCE - 295)) | (1 << (TSqlParser.SPLIT - 295)))) !== 0) || ((((_la - 327)) & ~0x1f) == 0 && ((1 << (_la - 327)) & ((1 << (TSqlParser.STATE - 327)) | (1 << (TSqlParser.START - 327)) | (1 << (TSqlParser.TARGET - 327)))) !== 0) || ((((_la - 380)) & ~0x1f) == 0 && ((1 << (_la - 380)) & ((1 << (TSqlParser.ABSOLUTE - 380)) | (1 << (TSqlParser.ACCENT_SENSITIVITY - 380)) | (1 << (TSqlParser.ACTION - 380)) | (1 << (TSqlParser.ACTIVATION - 380)) | (1 << (TSqlParser.ACTIVE - 380)) | (1 << (TSqlParser.ADDRESS - 380)) | (1 << (TSqlParser.AES_128 - 380)) | (1 << (TSqlParser.AES_192 - 380)) | (1 << (TSqlParser.AES_256 - 380)) | (1 << (TSqlParser.AFFINITY - 380)) | (1 << (TSqlParser.AFTER - 380)) | (1 << (TSqlParser.AGGREGATE - 380)) | (1 << (TSqlParser.ALGORITHM - 380)) | (1 << (TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS - 380)) | (1 << (TSqlParser.ALLOW_SNAPSHOT_ISOLATION - 380)) | (1 << (TSqlParser.ALLOWED - 380)) | (1 << (TSqlParser.ANSI_NULL_DEFAULT - 380)) | (1 << (TSqlParser.ANSI_NULLS - 380)) | (1 << (TSqlParser.ANSI_PADDING - 380)) | (1 << (TSqlParser.ANSI_WARNINGS - 380)) | (1 << (TSqlParser.APPLICATION_LOG - 380)) | (1 << (TSqlParser.APPLY - 380)) | (1 << (TSqlParser.ARITHABORT - 380)) | (1 << (TSqlParser.ASSEMBLY - 380)) | (1 << (TSqlParser.AUDIT - 380)) | (1 << (TSqlParser.AUDIT_GUID - 380)) | (1 << (TSqlParser.AUTO - 380)) | (1 << (TSqlParser.AUTO_CLEANUP - 380)) | (1 << (TSqlParser.AUTO_CLOSE - 380)) | (1 << (TSqlParser.AUTO_CREATE_STATISTICS - 380)) | (1 << (TSqlParser.AUTO_SHRINK - 380)) | (1 << (TSqlParser.AUTO_UPDATE_STATISTICS - 380)))) !== 0) || ((((_la - 412)) & ~0x1f) == 0 && ((1 << (_la - 412)) & ((1 << (TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC - 412)) | (1 << (TSqlParser.AVAILABILITY - 412)) | (1 << (TSqlParser.AVG - 412)) | (1 << (TSqlParser.BACKUP_PRIORITY - 412)) | (1 << (TSqlParser.BEGIN_DIALOG - 412)) | (1 << (TSqlParser.BIGINT - 412)) | (1 << (TSqlParser.BINARY_BASE64 - 412)) | (1 << (TSqlParser.BINARY_CHECKSUM - 412)) | (1 << (TSqlParser.BINDING - 412)) | (1 << (TSqlParser.BLOB_STORAGE - 412)) | (1 << (TSqlParser.BROKER - 412)) | (1 << (TSqlParser.BROKER_INSTANCE - 412)) | (1 << (TSqlParser.BULK_LOGGED - 412)) | (1 << (TSqlParser.CALLER - 412)) | (1 << (TSqlParser.CAP_CPU_PERCENT - 412)) | (1 << (TSqlParser.CAST - 412)) | (1 << (TSqlParser.CATALOG - 412)) | (1 << (TSqlParser.CATCH - 412)) | (1 << (TSqlParser.CHANGE_RETENTION - 412)) | (1 << (TSqlParser.CHANGE_TRACKING - 412)) | (1 << (TSqlParser.CHECKSUM - 412)) | (1 << (TSqlParser.CHECKSUM_AGG - 412)) | (1 << (TSqlParser.CLEANUP - 412)) | (1 << (TSqlParser.COLLECTION - 412)) | (1 << (TSqlParser.COLUMN_MASTER_KEY - 412)) | (1 << (TSqlParser.COMMITTED - 412)) | (1 << (TSqlParser.COMPATIBILITY_LEVEL - 412)) | (1 << (TSqlParser.CONCAT - 412)) | (1 << (TSqlParser.CONCAT_NULL_YIELDS_NULL - 412)) | (1 << (TSqlParser.CONTENT - 412)) | (1 << (TSqlParser.CONTROL - 412)) | (1 << (TSqlParser.COOKIE - 412)))) !== 0) || ((((_la - 444)) & ~0x1f) == 0 && ((1 << (_la - 444)) & ((1 << (TSqlParser.COUNT - 444)) | (1 << (TSqlParser.COUNT_BIG - 444)) | (1 << (TSqlParser.COUNTER - 444)) | (1 << (TSqlParser.CPU - 444)) | (1 << (TSqlParser.CREATE_NEW - 444)) | (1 << (TSqlParser.CREATION_DISPOSITION - 444)) | (1 << (TSqlParser.CREDENTIAL - 444)) | (1 << (TSqlParser.CRYPTOGRAPHIC - 444)) | (1 << (TSqlParser.CURSOR_CLOSE_ON_COMMIT - 444)) | (1 << (TSqlParser.CURSOR_DEFAULT - 444)) | (1 << (TSqlParser.DATA - 444)) | (1 << (TSqlParser.DATE_CORRELATION_OPTIMIZATION - 444)) | (1 << (TSqlParser.DATEADD - 444)) | (1 << (TSqlParser.DATEDIFF - 444)) | (1 << (TSqlParser.DATENAME - 444)) | (1 << (TSqlParser.DATEPART - 444)) | (1 << (TSqlParser.DAYS - 444)) | (1 << (TSqlParser.DB_CHAINING - 444)) | (1 << (TSqlParser.DB_FAILOVER - 444)) | (1 << (TSqlParser.DECRYPTION - 444)) | (1 << (TSqlParser.DEFAULT_DOUBLE_QUOTE - 444)) | (1 << (TSqlParser.DEFAULT_FULLTEXT_LANGUAGE - 444)) | (1 << (TSqlParser.DEFAULT_LANGUAGE - 444)) | (1 << (TSqlParser.DELAY - 444)) | (1 << (TSqlParser.DELAYED_DURABILITY - 444)) | (1 << (TSqlParser.DELETED - 444)) | (1 << (TSqlParser.DENSE_RANK - 444)) | (1 << (TSqlParser.DEPENDENTS - 444)) | (1 << (TSqlParser.DES - 444)) | (1 << (TSqlParser.DESCRIPTION - 444)) | (1 << (TSqlParser.DESX - 444)) | (1 << (TSqlParser.DHCP - 444)))) !== 0) || ((((_la - 476)) & ~0x1f) == 0 && ((1 << (_la - 476)) & ((1 << (TSqlParser.DIALOG - 476)) | (1 << (TSqlParser.DIRECTORY_NAME - 476)) | (1 << (TSqlParser.DISABLE - 476)) | (1 << (TSqlParser.DISABLE_BROKER - 476)) | (1 << (TSqlParser.DISABLED - 476)) | (1 << (TSqlParser.DISK_DRIVE - 476)) | (1 << (TSqlParser.DOCUMENT - 476)) | (1 << (TSqlParser.DYNAMIC - 476)) | (1 << (TSqlParser.EMERGENCY - 476)) | (1 << (TSqlParser.EMPTY - 476)) | (1 << (TSqlParser.ENABLE - 476)) | (1 << (TSqlParser.ENABLE_BROKER - 476)) | (1 << (TSqlParser.ENCRYPTED_VALUE - 476)) | (1 << (TSqlParser.ENCRYPTION - 476)) | (1 << (TSqlParser.ENDPOINT_URL - 476)) | (1 << (TSqlParser.ERROR_BROKER_CONVERSATIONS - 476)) | (1 << (TSqlParser.EXCLUSIVE - 476)) | (1 << (TSqlParser.EXECUTABLE - 476)) | (1 << (TSqlParser.EXIST - 476)) | (1 << (TSqlParser.EXPAND - 476)) | (1 << (TSqlParser.EXPIRY_DATE - 476)) | (1 << (TSqlParser.EXPLICIT - 476)) | (1 << (TSqlParser.FAIL_OPERATION - 476)) | (1 << (TSqlParser.FAILOVER_MODE - 476)) | (1 << (TSqlParser.FAILURE - 476)) | (1 << (TSqlParser.FAILURE_CONDITION_LEVEL - 476)) | (1 << (TSqlParser.FAST - 476)) | (1 << (TSqlParser.FAST_FORWARD - 476)) | (1 << (TSqlParser.FILEGROUP - 476)) | (1 << (TSqlParser.FILEGROWTH - 476)) | (1 << (TSqlParser.FILEPATH - 476)))) !== 0) || ((((_la - 508)) & ~0x1f) == 0 && ((1 << (_la - 508)) & ((1 << (TSqlParser.FILESTREAM - 508)) | (1 << (TSqlParser.FILTER - 508)) | (1 << (TSqlParser.FIRST - 508)) | (1 << (TSqlParser.FIRST_VALUE - 508)) | (1 << (TSqlParser.FOLLOWING - 508)) | (1 << (TSqlParser.FORCE - 508)) | (1 << (TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS - 508)) | (1 << (TSqlParser.FORCED - 508)) | (1 << (TSqlParser.FORMAT - 508)) | (1 << (TSqlParser.FORWARD_ONLY - 508)) | (1 << (TSqlParser.FULLSCAN - 508)) | (1 << (TSqlParser.FULLTEXT - 508)) | (1 << (TSqlParser.GB - 508)) | (1 << (TSqlParser.GETDATE - 508)) | (1 << (TSqlParser.GETUTCDATE - 508)) | (1 << (TSqlParser.GLOBAL - 508)) | (1 << (TSqlParser.GO - 508)) | (1 << (TSqlParser.GROUP_MAX_REQUESTS - 508)) | (1 << (TSqlParser.GROUPING - 508)) | (1 << (TSqlParser.GROUPING_ID - 508)) | (1 << (TSqlParser.HADR - 508)) | (1 << (TSqlParser.HASH - 508)) | (1 << (TSqlParser.HEALTH_CHECK_TIMEOUT - 508)) | (1 << (TSqlParser.HIGH - 508)) | (1 << (TSqlParser.HONOR_BROKER_PRIORITY - 508)) | (1 << (TSqlParser.HOURS - 508)) | (1 << (TSqlParser.IDENTITY_VALUE - 508)) | (1 << (TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX - 508)) | (1 << (TSqlParser.IMMEDIATE - 508)) | (1 << (TSqlParser.IMPERSONATE - 508)) | (1 << (TSqlParser.IMPORTANCE - 508)))) !== 0) || ((((_la - 540)) & ~0x1f) == 0 && ((1 << (_la - 540)) & ((1 << (TSqlParser.INCREMENTAL - 540)) | (1 << (TSqlParser.INITIATOR - 540)) | (1 << (TSqlParser.INPUT - 540)) | (1 << (TSqlParser.INSENSITIVE - 540)) | (1 << (TSqlParser.INSERTED - 540)) | (1 << (TSqlParser.INT - 540)) | (1 << (TSqlParser.IP - 540)) | (1 << (TSqlParser.ISOLATION - 540)) | (1 << (TSqlParser.KB - 540)) | (1 << (TSqlParser.KEEP - 540)) | (1 << (TSqlParser.KEEPFIXED - 540)) | (1 << (TSqlParser.KEY_SOURCE - 540)) | (1 << (TSqlParser.KEYS - 540)) | (1 << (TSqlParser.KEYSET - 540)) | (1 << (TSqlParser.LAG - 540)) | (1 << (TSqlParser.LAST - 540)) | (1 << (TSqlParser.LAST_VALUE - 540)) | (1 << (TSqlParser.LEAD - 540)) | (1 << (TSqlParser.LEVEL - 540)) | (1 << (TSqlParser.LIST - 540)) | (1 << (TSqlParser.LISTENER - 540)) | (1 << (TSqlParser.LISTENER_URL - 540)) | (1 << (TSqlParser.LOB_COMPACTION - 540)) | (1 << (TSqlParser.LOCAL - 540)) | (1 << (TSqlParser.LOCATION - 540)) | (1 << (TSqlParser.LOCK - 540)) | (1 << (TSqlParser.LOCK_ESCALATION - 540)) | (1 << (TSqlParser.LOGIN - 540)) | (1 << (TSqlParser.LOOP - 540)) | (1 << (TSqlParser.LOW - 540)))) !== 0) || ((((_la - 572)) & ~0x1f) == 0 && ((1 << (_la - 572)) & ((1 << (TSqlParser.MANUAL - 572)) | (1 << (TSqlParser.MARK - 572)) | (1 << (TSqlParser.MATERIALIZED - 572)) | (1 << (TSqlParser.MAX - 572)) | (1 << (TSqlParser.MAX_CPU_PERCENT - 572)) | (1 << (TSqlParser.MAX_DOP - 572)) | (1 << (TSqlParser.MAX_FILES - 572)) | (1 << (TSqlParser.MAX_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MAX_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MAX_PROCESSES - 572)) | (1 << (TSqlParser.MAX_QUEUE_READERS - 572)) | (1 << (TSqlParser.MAX_ROLLOVER_FILES - 572)) | (1 << (TSqlParser.MAXDOP - 572)) | (1 << (TSqlParser.MAXRECURSION - 572)) | (1 << (TSqlParser.MAXSIZE - 572)) | (1 << (TSqlParser.MB - 572)) | (1 << (TSqlParser.MEDIUM - 572)) | (1 << (TSqlParser.MEMORY_OPTIMIZED_DATA - 572)) | (1 << (TSqlParser.MESSAGE - 572)) | (1 << (TSqlParser.MIN - 572)) | (1 << (TSqlParser.MIN_ACTIVE_ROWVERSION - 572)) | (1 << (TSqlParser.MIN_CPU_PERCENT - 572)) | (1 << (TSqlParser.MIN_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MIN_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MINUTES - 572)) | (1 << (TSqlParser.MIRROR_ADDRESS - 572)) | (1 << (TSqlParser.MIXED_PAGE_ALLOCATION - 572)) | (1 << (TSqlParser.MODE - 572)) | (1 << (TSqlParser.MODIFY - 572)) | (1 << (TSqlParser.MOVE - 572)) | (1 << (TSqlParser.MULTI_USER - 572)) | (1 << (TSqlParser.NAME - 572)))) !== 0) || ((((_la - 604)) & ~0x1f) == 0 && ((1 << (_la - 604)) & ((1 << (TSqlParser.NESTED_TRIGGERS - 604)) | (1 << (TSqlParser.NEW_ACCOUNT - 604)) | (1 << (TSqlParser.NEW_BROKER - 604)) | (1 << (TSqlParser.NEW_PASSWORD - 604)) | (1 << (TSqlParser.NEXT - 604)) | (1 << (TSqlParser.NO - 604)) | (1 << (TSqlParser.NO_TRUNCATE - 604)) | (1 << (TSqlParser.NO_WAIT - 604)) | (1 << (TSqlParser.NOCOUNT - 604)) | (1 << (TSqlParser.NODES - 604)) | (1 << (TSqlParser.NOEXPAND - 604)) | (1 << (TSqlParser.NON_TRANSACTED_ACCESS - 604)) | (1 << (TSqlParser.NORECOMPUTE - 604)) | (1 << (TSqlParser.NORECOVERY - 604)) | (1 << (TSqlParser.NOWAIT - 604)) | (1 << (TSqlParser.NTILE - 604)) | (1 << (TSqlParser.NUMANODE - 604)) | (1 << (TSqlParser.NUMBER - 604)) | (1 << (TSqlParser.NUMERIC_ROUNDABORT - 604)) | (1 << (TSqlParser.OBJECT - 604)) | (1 << (TSqlParser.OFFLINE - 604)) | (1 << (TSqlParser.OFFSET - 604)) | (1 << (TSqlParser.OLD_ACCOUNT - 604)) | (1 << (TSqlParser.ONLINE - 604)) | (1 << (TSqlParser.ONLY - 604)) | (1 << (TSqlParser.OPEN_EXISTING - 604)) | (1 << (TSqlParser.OPTIMISTIC - 604)) | (1 << (TSqlParser.OPTIMIZE - 604)) | (1 << (TSqlParser.OUT - 604)) | (1 << (TSqlParser.OUTPUT - 604)) | (1 << (TSqlParser.OWNER - 604)))) !== 0) || ((((_la - 636)) & ~0x1f) == 0 && ((1 << (_la - 636)) & ((1 << (TSqlParser.PAGE_VERIFY - 636)) | (1 << (TSqlParser.PARAMETERIZATION - 636)) | (1 << (TSqlParser.PARTITION - 636)) | (1 << (TSqlParser.PARTITIONS - 636)) | (1 << (TSqlParser.PARTNER - 636)) | (1 << (TSqlParser.PATH - 636)) | (1 << (TSqlParser.POISON_MESSAGE_HANDLING - 636)) | (1 << (TSqlParser.POOL - 636)) | (1 << (TSqlParser.PORT - 636)) | (1 << (TSqlParser.PRECEDING - 636)) | (1 << (TSqlParser.PRIMARY_ROLE - 636)) | (1 << (TSqlParser.PRIOR - 636)) | (1 << (TSqlParser.PRIORITY - 636)) | (1 << (TSqlParser.PRIORITY_LEVEL - 636)) | (1 << (TSqlParser.PRIVATE - 636)) | (1 << (TSqlParser.PRIVATE_KEY - 636)) | (1 << (TSqlParser.PRIVILEGES - 636)) | (1 << (TSqlParser.PROCEDURE_NAME - 636)) | (1 << (TSqlParser.PROPERTY - 636)) | (1 << (TSqlParser.PROVIDER - 636)) | (1 << (TSqlParser.PROVIDER_KEY_NAME - 636)) | (1 << (TSqlParser.QUERY - 636)) | (1 << (TSqlParser.QUEUE - 636)) | (1 << (TSqlParser.QUEUE_DELAY - 636)) | (1 << (TSqlParser.QUOTED_IDENTIFIER - 636)) | (1 << (TSqlParser.RANGE - 636)) | (1 << (TSqlParser.RANK - 636)) | (1 << (TSqlParser.RC2 - 636)) | (1 << (TSqlParser.RC4 - 636)) | (1 << (TSqlParser.RC4_128 - 636)) | (1 << (TSqlParser.READ_COMMITTED_SNAPSHOT - 636)) | (1 << (TSqlParser.READ_ONLY - 636)))) !== 0) || ((((_la - 668)) & ~0x1f) == 0 && ((1 << (_la - 668)) & ((1 << (TSqlParser.READ_ONLY_ROUTING_LIST - 668)) | (1 << (TSqlParser.READ_WRITE - 668)) | (1 << (TSqlParser.READONLY - 668)) | (1 << (TSqlParser.REBUILD - 668)) | (1 << (TSqlParser.RECEIVE - 668)) | (1 << (TSqlParser.RECOMPILE - 668)) | (1 << (TSqlParser.RECOVERY - 668)) | (1 << (TSqlParser.RECURSIVE_TRIGGERS - 668)) | (1 << (TSqlParser.RELATIVE - 668)) | (1 << (TSqlParser.REMOTE - 668)) | (1 << (TSqlParser.REMOTE_SERVICE_NAME - 668)) | (1 << (TSqlParser.REMOVE - 668)) | (1 << (TSqlParser.REORGANIZE - 668)) | (1 << (TSqlParser.REPEATABLE - 668)) | (1 << (TSqlParser.REPLICA - 668)) | (1 << (TSqlParser.REQUEST_MAX_CPU_TIME_SEC - 668)) | (1 << (TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT - 668)) | (1 << (TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC - 668)) | (1 << (TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT - 668)) | (1 << (TSqlParser.RESERVE_DISK_SPACE - 668)) | (1 << (TSqlParser.RESOURCE - 668)) | (1 << (TSqlParser.RESOURCE_MANAGER_LOCATION - 668)) | (1 << (TSqlParser.RESTRICTED_USER - 668)) | (1 << (TSqlParser.RETENTION - 668)) | (1 << (TSqlParser.ROBUST - 668)) | (1 << (TSqlParser.ROOT - 668)) | (1 << (TSqlParser.ROUTE - 668)) | (1 << (TSqlParser.ROW - 668)) | (1 << (TSqlParser.ROW_NUMBER - 668)) | (1 << (TSqlParser.ROWGUID - 668)) | (1 << (TSqlParser.ROWS - 668)) | (1 << (TSqlParser.SAMPLE - 668)))) !== 0) || ((((_la - 700)) & ~0x1f) == 0 && ((1 << (_la - 700)) & ((1 << (TSqlParser.SCHEMABINDING - 700)) | (1 << (TSqlParser.SCOPED - 700)) | (1 << (TSqlParser.SCROLL - 700)) | (1 << (TSqlParser.SCROLL_LOCKS - 700)) | (1 << (TSqlParser.SEARCH - 700)) | (1 << (TSqlParser.SECONDARY - 700)) | (1 << (TSqlParser.SECONDARY_ONLY - 700)) | (1 << (TSqlParser.SECONDARY_ROLE - 700)) | (1 << (TSqlParser.SECONDS - 700)) | (1 << (TSqlParser.SECRET - 700)) | (1 << (TSqlParser.SECURITY - 700)) | (1 << (TSqlParser.SECURITY_LOG - 700)) | (1 << (TSqlParser.SEEDING_MODE - 700)) | (1 << (TSqlParser.SELF - 700)) | (1 << (TSqlParser.SEMI_SENSITIVE - 700)) | (1 << (TSqlParser.SEND - 700)) | (1 << (TSqlParser.SENT - 700)) | (1 << (TSqlParser.SEQUENCE - 700)) | (1 << (TSqlParser.SERIALIZABLE - 700)) | (1 << (TSqlParser.SESSION_TIMEOUT - 700)) | (1 << (TSqlParser.SETERROR - 700)) | (1 << (TSqlParser.SHARE - 700)) | (1 << (TSqlParser.SHOWPLAN - 700)) | (1 << (TSqlParser.SIGNATURE - 700)) | (1 << (TSqlParser.SIMPLE - 700)) | (1 << (TSqlParser.SINGLE_USER - 700)) | (1 << (TSqlParser.SIZE - 700)) | (1 << (TSqlParser.SMALLINT - 700)) | (1 << (TSqlParser.SNAPSHOT - 700)) | (1 << (TSqlParser.SPATIAL_WINDOW_MAX_CELLS - 700)) | (1 << (TSqlParser.STANDBY - 700)) | (1 << (TSqlParser.START_DATE - 700)))) !== 0) || ((((_la - 732)) & ~0x1f) == 0 && ((1 << (_la - 732)) & ((1 << (TSqlParser.STATIC - 732)) | (1 << (TSqlParser.STATS_STREAM - 732)) | (1 << (TSqlParser.STATUS - 732)) | (1 << (TSqlParser.STDEV - 732)) | (1 << (TSqlParser.STDEVP - 732)) | (1 << (TSqlParser.STOPLIST - 732)) | (1 << (TSqlParser.STRING_AGG - 732)) | (1 << (TSqlParser.STUFF - 732)) | (1 << (TSqlParser.SUBJECT - 732)) | (1 << (TSqlParser.SUM - 732)) | (1 << (TSqlParser.SUSPEND - 732)) | (1 << (TSqlParser.SYMMETRIC - 732)) | (1 << (TSqlParser.SYNCHRONOUS_COMMIT - 732)) | (1 << (TSqlParser.SYNONYM - 732)) | (1 << (TSqlParser.SYSTEM - 732)) | (1 << (TSqlParser.TAKE - 732)) | (1 << (TSqlParser.TARGET_RECOVERY_TIME - 732)) | (1 << (TSqlParser.TB - 732)) | (1 << (TSqlParser.TEXTIMAGE_ON - 732)) | (1 << (TSqlParser.THROW - 732)) | (1 << (TSqlParser.TIES - 732)) | (1 << (TSqlParser.TIME - 732)) | (1 << (TSqlParser.TIMEOUT - 732)) | (1 << (TSqlParser.TIMER - 732)) | (1 << (TSqlParser.TINYINT - 732)) | (1 << (TSqlParser.TORN_PAGE_DETECTION - 732)) | (1 << (TSqlParser.TRANSFORM_NOISE_WORDS - 732)) | (1 << (TSqlParser.TRIPLE_DES - 732)) | (1 << (TSqlParser.TRIPLE_DES_3KEY - 732)) | (1 << (TSqlParser.TRUSTWORTHY - 732)))) !== 0) || ((((_la - 764)) & ~0x1f) == 0 && ((1 << (_la - 764)) & ((1 << (TSqlParser.TRY - 764)) | (1 << (TSqlParser.TSQL - 764)) | (1 << (TSqlParser.TWO_DIGIT_YEAR_CUTOFF - 764)) | (1 << (TSqlParser.TYPE - 764)) | (1 << (TSqlParser.TYPE_WARNING - 764)) | (1 << (TSqlParser.UNBOUNDED - 764)) | (1 << (TSqlParser.UNCOMMITTED - 764)) | (1 << (TSqlParser.UNKNOWN - 764)) | (1 << (TSqlParser.UNLIMITED - 764)) | (1 << (TSqlParser.USING - 764)) | (1 << (TSqlParser.VALID_XML - 764)) | (1 << (TSqlParser.VALIDATION - 764)) | (1 << (TSqlParser.VALUE - 764)) | (1 << (TSqlParser.VAR - 764)) | (1 << (TSqlParser.VARP - 764)) | (1 << (TSqlParser.VIEW_METADATA - 764)) | (1 << (TSqlParser.VIEWS - 764)) | (1 << (TSqlParser.WAIT - 764)) | (1 << (TSqlParser.WELL_FORMED_XML - 764)) | (1 << (TSqlParser.WORK - 764)) | (1 << (TSqlParser.WORKLOAD - 764)) | (1 << (TSqlParser.XML - 764)) | (1 << (TSqlParser.XMLNAMESPACES - 764)))) !== 0) || ((((_la - 796)) & ~0x1f) == 0 && ((1 << (_la - 796)) & ((1 << (TSqlParser.DOUBLE_QUOTE_ID - 796)) | (1 << (TSqlParser.SQUARE_BRACKET_ID - 796)) | (1 << (TSqlParser.ID - 796)))) !== 0) || _la===TSqlParser.COMMA);
- this.state = 3068;
- this.match(TSqlParser.RR_BRACKET);
- }
- this.state = 3074;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,252,this._ctx);
- }
-
- this.state = 3079;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- this.state = 3093;
- this._errHandler.sync(this);
- var _alt = this._interp.adaptivePredict(this._input,255,this._ctx)
- while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
- if(_alt===1) {
- this.state = 3080;
- this.match(TSqlParser.DROP);
- this.state = 3081;
- this.match(TSqlParser.TARGET);
- this.state = 3085;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,254,this._ctx);
- if(la_===1) {
- this.state = 3082;
- localctx.event_module_guid = this.id();
- this.state = 3083;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 3087;
- localctx.event_package_name = this.id();
- this.state = 3088;
- this.match(TSqlParser.DOT);
- this.state = 3089;
- localctx.target_name = this.id();
- }
- this.state = 3095;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,255,this._ctx);
- }
-
- this.state = 3161;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,271,this._ctx);
- if(la_===1) {
- this.state = 3096;
- this.match(TSqlParser.WITH);
- this.state = 3097;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 3105;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,257,this._ctx);
- if(la_===1) {
- this.state = 3099;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 3098;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 3101;
- this.match(TSqlParser.MAX_MEMORY);
- this.state = 3102;
- this.match(TSqlParser.EQUAL);
- this.state = 3103;
- localctx.max_memory = this.match(TSqlParser.DECIMAL);
- this.state = 3104;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.KB || _la===TSqlParser.MB)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
-
- }
- this.state = 3113;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,259,this._ctx);
- if(la_===1) {
- this.state = 3108;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 3107;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 3110;
- this.match(TSqlParser.EVENT_RETENTION_MODE);
- this.state = 3111;
- this.match(TSqlParser.EQUAL);
- this.state = 3112;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.ALLOW_MULTIPLE_EVENT_LOSS || _la===TSqlParser.ALLOW_SINGLE_EVENT_LOSS || _la===TSqlParser.NO_EVENT_LOSS)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
-
- }
- this.state = 3125;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,262,this._ctx);
- if(la_===1) {
- this.state = 3116;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 3115;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 3118;
- this.match(TSqlParser.MAX_DISPATCH_LATENCY);
- this.state = 3119;
- this.match(TSqlParser.EQUAL);
- this.state = 3123;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.DECIMAL:
- this.state = 3120;
- localctx.max_dispatch_latency_seconds = this.match(TSqlParser.DECIMAL);
- this.state = 3121;
- this.match(TSqlParser.SECONDS);
- break;
- case TSqlParser.INFINITE:
- this.state = 3122;
- this.match(TSqlParser.INFINITE);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
-
- }
- this.state = 3134;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,264,this._ctx);
- if(la_===1) {
- this.state = 3128;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 3127;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 3130;
- this.match(TSqlParser.MAX_EVENT_SIZE);
- this.state = 3131;
- this.match(TSqlParser.EQUAL);
- this.state = 3132;
- localctx.max_event_size = this.match(TSqlParser.DECIMAL);
- this.state = 3133;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.KB || _la===TSqlParser.MB)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
-
- }
- this.state = 3142;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,266,this._ctx);
- if(la_===1) {
- this.state = 3137;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 3136;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 3139;
- this.match(TSqlParser.MEMORY_PARTITION_MODE);
- this.state = 3140;
- this.match(TSqlParser.EQUAL);
- this.state = 3141;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.NONE || _la===TSqlParser.PER_CPU || _la===TSqlParser.PER_NODE)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
-
- }
- this.state = 3150;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,268,this._ctx);
- if(la_===1) {
- this.state = 3145;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 3144;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 3147;
- this.match(TSqlParser.TRACK_CAUSALITY);
- this.state = 3148;
- this.match(TSqlParser.EQUAL);
- this.state = 3149;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
-
- }
- this.state = 3158;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.STARTUP_STATE || _la===TSqlParser.COMMA) {
- this.state = 3153;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 3152;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 3155;
- this.match(TSqlParser.STARTUP_STATE);
- this.state = 3156;
- this.match(TSqlParser.EQUAL);
- this.state = 3157;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- }
-
- this.state = 3160;
- this.match(TSqlParser.RR_BRACKET);
-
- }
- this.state = 3166;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,272,this._ctx);
- if(la_===1) {
- this.state = 3163;
- this.match(TSqlParser.STATE);
- this.state = 3164;
- this.match(TSqlParser.EQUAL);
- this.state = 3165;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.START || _la===TSqlParser.STOP)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Event_session_predicate_expressionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_event_session_predicate_expression;
- return this;
-}
-
-Event_session_predicate_expressionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Event_session_predicate_expressionContext.prototype.constructor = Event_session_predicate_expressionContext;
-
-Event_session_predicate_expressionContext.prototype.event_session_predicate_factor = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Event_session_predicate_factorContext);
- } else {
- return this.getTypedRuleContext(Event_session_predicate_factorContext,i);
- }
-};
-
-Event_session_predicate_expressionContext.prototype.LR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.LR_BRACKET);
- } else {
- return this.getToken(TSqlParser.LR_BRACKET, i);
- }
-};
-
-
-Event_session_predicate_expressionContext.prototype.event_session_predicate_expression = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Event_session_predicate_expressionContext);
- } else {
- return this.getTypedRuleContext(Event_session_predicate_expressionContext,i);
- }
-};
-
-Event_session_predicate_expressionContext.prototype.RR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.RR_BRACKET);
- } else {
- return this.getToken(TSqlParser.RR_BRACKET, i);
- }
-};
-
-
-Event_session_predicate_expressionContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Event_session_predicate_expressionContext.prototype.NOT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.NOT);
- } else {
- return this.getToken(TSqlParser.NOT, i);
- }
-};
-
-
-Event_session_predicate_expressionContext.prototype.AND = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.AND);
- } else {
- return this.getToken(TSqlParser.AND, i);
- }
-};
-
-
-Event_session_predicate_expressionContext.prototype.OR = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.OR);
- } else {
- return this.getToken(TSqlParser.OR, i);
- }
-};
-
-
-Event_session_predicate_expressionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterEvent_session_predicate_expression(this);
- }
-};
-
-Event_session_predicate_expressionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitEvent_session_predicate_expression(this);
- }
-};
-
-Event_session_predicate_expressionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitEvent_session_predicate_expression(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Event_session_predicate_expressionContext = Event_session_predicate_expressionContext;
-
-TSqlParser.prototype.event_session_predicate_expression = function() {
-
- var localctx = new Event_session_predicate_expressionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 288, TSqlParser.RULE_event_session_predicate_expression);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 3184;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- do {
- this.state = 3169;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 3168;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 3172;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.AND || _la===TSqlParser.OR) {
- this.state = 3171;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.AND || _la===TSqlParser.OR)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- }
-
- this.state = 3175;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.NOT) {
- this.state = 3174;
- this.match(TSqlParser.NOT);
- }
-
- this.state = 3182;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,276,this._ctx);
- switch(la_) {
- case 1:
- this.state = 3177;
- this.event_session_predicate_factor();
- break;
-
- case 2:
- this.state = 3178;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 3179;
- this.event_session_predicate_expression();
- this.state = 3180;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- }
- this.state = 3186;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- } while(_la===TSqlParser.AND || _la===TSqlParser.CALLED || _la===TSqlParser.DATA_COMPRESSION || ((((_la - 112)) & ~0x1f) == 0 && ((1 << (_la - 112)) & ((1 << (TSqlParser.EVENTDATA - 112)) | (1 << (TSqlParser.FILENAME - 112)) | (1 << (TSqlParser.FILLFACTOR - 112)) | (1 << (TSqlParser.FORCESEEK - 112)))) !== 0) || ((((_la - 158)) & ~0x1f) == 0 && ((1 << (_la - 158)) & ((1 << (TSqlParser.INIT - 158)) | (1 << (TSqlParser.KEY - 158)) | (1 << (TSqlParser.MASTER - 158)) | (1 << (TSqlParser.MAX_MEMORY - 158)))) !== 0) || ((((_la - 218)) & ~0x1f) == 0 && ((1 << (_la - 218)) & ((1 << (TSqlParser.NOT - 218)) | (1 << (TSqlParser.OFFSETS - 218)) | (1 << (TSqlParser.OR - 218)) | (1 << (TSqlParser.PAGE - 218)))) !== 0) || ((((_la - 259)) & ~0x1f) == 0 && ((1 << (_la - 259)) & ((1 << (TSqlParser.PUBLIC - 259)) | (1 << (TSqlParser.R - 259)) | (1 << (TSqlParser.RAW - 259)) | (1 << (TSqlParser.RETURN - 259)) | (1 << (TSqlParser.RETURNS - 259)) | (1 << (TSqlParser.ROWCOUNT - 259)))) !== 0) || ((((_la - 295)) & ~0x1f) == 0 && ((1 << (_la - 295)) & ((1 << (TSqlParser.SAFETY - 295)) | (1 << (TSqlParser.SERVER - 295)) | (1 << (TSqlParser.SID - 295)) | (1 << (TSqlParser.SOURCE - 295)) | (1 << (TSqlParser.SPLIT - 295)))) !== 0) || ((((_la - 327)) & ~0x1f) == 0 && ((1 << (_la - 327)) & ((1 << (TSqlParser.STATE - 327)) | (1 << (TSqlParser.START - 327)) | (1 << (TSqlParser.TARGET - 327)))) !== 0) || ((((_la - 380)) & ~0x1f) == 0 && ((1 << (_la - 380)) & ((1 << (TSqlParser.ABSOLUTE - 380)) | (1 << (TSqlParser.ACCENT_SENSITIVITY - 380)) | (1 << (TSqlParser.ACTION - 380)) | (1 << (TSqlParser.ACTIVATION - 380)) | (1 << (TSqlParser.ACTIVE - 380)) | (1 << (TSqlParser.ADDRESS - 380)) | (1 << (TSqlParser.AES_128 - 380)) | (1 << (TSqlParser.AES_192 - 380)) | (1 << (TSqlParser.AES_256 - 380)) | (1 << (TSqlParser.AFFINITY - 380)) | (1 << (TSqlParser.AFTER - 380)) | (1 << (TSqlParser.AGGREGATE - 380)) | (1 << (TSqlParser.ALGORITHM - 380)) | (1 << (TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS - 380)) | (1 << (TSqlParser.ALLOW_SNAPSHOT_ISOLATION - 380)) | (1 << (TSqlParser.ALLOWED - 380)) | (1 << (TSqlParser.ANSI_NULL_DEFAULT - 380)) | (1 << (TSqlParser.ANSI_NULLS - 380)) | (1 << (TSqlParser.ANSI_PADDING - 380)) | (1 << (TSqlParser.ANSI_WARNINGS - 380)) | (1 << (TSqlParser.APPLICATION_LOG - 380)) | (1 << (TSqlParser.APPLY - 380)) | (1 << (TSqlParser.ARITHABORT - 380)) | (1 << (TSqlParser.ASSEMBLY - 380)) | (1 << (TSqlParser.AUDIT - 380)) | (1 << (TSqlParser.AUDIT_GUID - 380)) | (1 << (TSqlParser.AUTO - 380)) | (1 << (TSqlParser.AUTO_CLEANUP - 380)) | (1 << (TSqlParser.AUTO_CLOSE - 380)) | (1 << (TSqlParser.AUTO_CREATE_STATISTICS - 380)) | (1 << (TSqlParser.AUTO_SHRINK - 380)) | (1 << (TSqlParser.AUTO_UPDATE_STATISTICS - 380)))) !== 0) || ((((_la - 412)) & ~0x1f) == 0 && ((1 << (_la - 412)) & ((1 << (TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC - 412)) | (1 << (TSqlParser.AVAILABILITY - 412)) | (1 << (TSqlParser.AVG - 412)) | (1 << (TSqlParser.BACKUP_PRIORITY - 412)) | (1 << (TSqlParser.BEGIN_DIALOG - 412)) | (1 << (TSqlParser.BIGINT - 412)) | (1 << (TSqlParser.BINARY_BASE64 - 412)) | (1 << (TSqlParser.BINARY_CHECKSUM - 412)) | (1 << (TSqlParser.BINDING - 412)) | (1 << (TSqlParser.BLOB_STORAGE - 412)) | (1 << (TSqlParser.BROKER - 412)) | (1 << (TSqlParser.BROKER_INSTANCE - 412)) | (1 << (TSqlParser.BULK_LOGGED - 412)) | (1 << (TSqlParser.CALLER - 412)) | (1 << (TSqlParser.CAP_CPU_PERCENT - 412)) | (1 << (TSqlParser.CAST - 412)) | (1 << (TSqlParser.CATALOG - 412)) | (1 << (TSqlParser.CATCH - 412)) | (1 << (TSqlParser.CHANGE_RETENTION - 412)) | (1 << (TSqlParser.CHANGE_TRACKING - 412)) | (1 << (TSqlParser.CHECKSUM - 412)) | (1 << (TSqlParser.CHECKSUM_AGG - 412)) | (1 << (TSqlParser.CLEANUP - 412)) | (1 << (TSqlParser.COLLECTION - 412)) | (1 << (TSqlParser.COLUMN_MASTER_KEY - 412)) | (1 << (TSqlParser.COMMITTED - 412)) | (1 << (TSqlParser.COMPATIBILITY_LEVEL - 412)) | (1 << (TSqlParser.CONCAT - 412)) | (1 << (TSqlParser.CONCAT_NULL_YIELDS_NULL - 412)) | (1 << (TSqlParser.CONTENT - 412)) | (1 << (TSqlParser.CONTROL - 412)) | (1 << (TSqlParser.COOKIE - 412)))) !== 0) || ((((_la - 444)) & ~0x1f) == 0 && ((1 << (_la - 444)) & ((1 << (TSqlParser.COUNT - 444)) | (1 << (TSqlParser.COUNT_BIG - 444)) | (1 << (TSqlParser.COUNTER - 444)) | (1 << (TSqlParser.CPU - 444)) | (1 << (TSqlParser.CREATE_NEW - 444)) | (1 << (TSqlParser.CREATION_DISPOSITION - 444)) | (1 << (TSqlParser.CREDENTIAL - 444)) | (1 << (TSqlParser.CRYPTOGRAPHIC - 444)) | (1 << (TSqlParser.CURSOR_CLOSE_ON_COMMIT - 444)) | (1 << (TSqlParser.CURSOR_DEFAULT - 444)) | (1 << (TSqlParser.DATA - 444)) | (1 << (TSqlParser.DATE_CORRELATION_OPTIMIZATION - 444)) | (1 << (TSqlParser.DATEADD - 444)) | (1 << (TSqlParser.DATEDIFF - 444)) | (1 << (TSqlParser.DATENAME - 444)) | (1 << (TSqlParser.DATEPART - 444)) | (1 << (TSqlParser.DAYS - 444)) | (1 << (TSqlParser.DB_CHAINING - 444)) | (1 << (TSqlParser.DB_FAILOVER - 444)) | (1 << (TSqlParser.DECRYPTION - 444)) | (1 << (TSqlParser.DEFAULT_DOUBLE_QUOTE - 444)) | (1 << (TSqlParser.DEFAULT_FULLTEXT_LANGUAGE - 444)) | (1 << (TSqlParser.DEFAULT_LANGUAGE - 444)) | (1 << (TSqlParser.DELAY - 444)) | (1 << (TSqlParser.DELAYED_DURABILITY - 444)) | (1 << (TSqlParser.DELETED - 444)) | (1 << (TSqlParser.DENSE_RANK - 444)) | (1 << (TSqlParser.DEPENDENTS - 444)) | (1 << (TSqlParser.DES - 444)) | (1 << (TSqlParser.DESCRIPTION - 444)) | (1 << (TSqlParser.DESX - 444)) | (1 << (TSqlParser.DHCP - 444)))) !== 0) || ((((_la - 476)) & ~0x1f) == 0 && ((1 << (_la - 476)) & ((1 << (TSqlParser.DIALOG - 476)) | (1 << (TSqlParser.DIRECTORY_NAME - 476)) | (1 << (TSqlParser.DISABLE - 476)) | (1 << (TSqlParser.DISABLE_BROKER - 476)) | (1 << (TSqlParser.DISABLED - 476)) | (1 << (TSqlParser.DISK_DRIVE - 476)) | (1 << (TSqlParser.DOCUMENT - 476)) | (1 << (TSqlParser.DYNAMIC - 476)) | (1 << (TSqlParser.EMERGENCY - 476)) | (1 << (TSqlParser.EMPTY - 476)) | (1 << (TSqlParser.ENABLE - 476)) | (1 << (TSqlParser.ENABLE_BROKER - 476)) | (1 << (TSqlParser.ENCRYPTED_VALUE - 476)) | (1 << (TSqlParser.ENCRYPTION - 476)) | (1 << (TSqlParser.ENDPOINT_URL - 476)) | (1 << (TSqlParser.ERROR_BROKER_CONVERSATIONS - 476)) | (1 << (TSqlParser.EXCLUSIVE - 476)) | (1 << (TSqlParser.EXECUTABLE - 476)) | (1 << (TSqlParser.EXIST - 476)) | (1 << (TSqlParser.EXPAND - 476)) | (1 << (TSqlParser.EXPIRY_DATE - 476)) | (1 << (TSqlParser.EXPLICIT - 476)) | (1 << (TSqlParser.FAIL_OPERATION - 476)) | (1 << (TSqlParser.FAILOVER_MODE - 476)) | (1 << (TSqlParser.FAILURE - 476)) | (1 << (TSqlParser.FAILURE_CONDITION_LEVEL - 476)) | (1 << (TSqlParser.FAST - 476)) | (1 << (TSqlParser.FAST_FORWARD - 476)) | (1 << (TSqlParser.FILEGROUP - 476)) | (1 << (TSqlParser.FILEGROWTH - 476)) | (1 << (TSqlParser.FILEPATH - 476)))) !== 0) || ((((_la - 508)) & ~0x1f) == 0 && ((1 << (_la - 508)) & ((1 << (TSqlParser.FILESTREAM - 508)) | (1 << (TSqlParser.FILTER - 508)) | (1 << (TSqlParser.FIRST - 508)) | (1 << (TSqlParser.FIRST_VALUE - 508)) | (1 << (TSqlParser.FOLLOWING - 508)) | (1 << (TSqlParser.FORCE - 508)) | (1 << (TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS - 508)) | (1 << (TSqlParser.FORCED - 508)) | (1 << (TSqlParser.FORMAT - 508)) | (1 << (TSqlParser.FORWARD_ONLY - 508)) | (1 << (TSqlParser.FULLSCAN - 508)) | (1 << (TSqlParser.FULLTEXT - 508)) | (1 << (TSqlParser.GB - 508)) | (1 << (TSqlParser.GETDATE - 508)) | (1 << (TSqlParser.GETUTCDATE - 508)) | (1 << (TSqlParser.GLOBAL - 508)) | (1 << (TSqlParser.GO - 508)) | (1 << (TSqlParser.GROUP_MAX_REQUESTS - 508)) | (1 << (TSqlParser.GROUPING - 508)) | (1 << (TSqlParser.GROUPING_ID - 508)) | (1 << (TSqlParser.HADR - 508)) | (1 << (TSqlParser.HASH - 508)) | (1 << (TSqlParser.HEALTH_CHECK_TIMEOUT - 508)) | (1 << (TSqlParser.HIGH - 508)) | (1 << (TSqlParser.HONOR_BROKER_PRIORITY - 508)) | (1 << (TSqlParser.HOURS - 508)) | (1 << (TSqlParser.IDENTITY_VALUE - 508)) | (1 << (TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX - 508)) | (1 << (TSqlParser.IMMEDIATE - 508)) | (1 << (TSqlParser.IMPERSONATE - 508)) | (1 << (TSqlParser.IMPORTANCE - 508)))) !== 0) || ((((_la - 540)) & ~0x1f) == 0 && ((1 << (_la - 540)) & ((1 << (TSqlParser.INCREMENTAL - 540)) | (1 << (TSqlParser.INITIATOR - 540)) | (1 << (TSqlParser.INPUT - 540)) | (1 << (TSqlParser.INSENSITIVE - 540)) | (1 << (TSqlParser.INSERTED - 540)) | (1 << (TSqlParser.INT - 540)) | (1 << (TSqlParser.IP - 540)) | (1 << (TSqlParser.ISOLATION - 540)) | (1 << (TSqlParser.KB - 540)) | (1 << (TSqlParser.KEEP - 540)) | (1 << (TSqlParser.KEEPFIXED - 540)) | (1 << (TSqlParser.KEY_SOURCE - 540)) | (1 << (TSqlParser.KEYS - 540)) | (1 << (TSqlParser.KEYSET - 540)) | (1 << (TSqlParser.LAG - 540)) | (1 << (TSqlParser.LAST - 540)) | (1 << (TSqlParser.LAST_VALUE - 540)) | (1 << (TSqlParser.LEAD - 540)) | (1 << (TSqlParser.LEVEL - 540)) | (1 << (TSqlParser.LIST - 540)) | (1 << (TSqlParser.LISTENER - 540)) | (1 << (TSqlParser.LISTENER_URL - 540)) | (1 << (TSqlParser.LOB_COMPACTION - 540)) | (1 << (TSqlParser.LOCAL - 540)) | (1 << (TSqlParser.LOCATION - 540)) | (1 << (TSqlParser.LOCK - 540)) | (1 << (TSqlParser.LOCK_ESCALATION - 540)) | (1 << (TSqlParser.LOGIN - 540)) | (1 << (TSqlParser.LOOP - 540)) | (1 << (TSqlParser.LOW - 540)))) !== 0) || ((((_la - 572)) & ~0x1f) == 0 && ((1 << (_la - 572)) & ((1 << (TSqlParser.MANUAL - 572)) | (1 << (TSqlParser.MARK - 572)) | (1 << (TSqlParser.MATERIALIZED - 572)) | (1 << (TSqlParser.MAX - 572)) | (1 << (TSqlParser.MAX_CPU_PERCENT - 572)) | (1 << (TSqlParser.MAX_DOP - 572)) | (1 << (TSqlParser.MAX_FILES - 572)) | (1 << (TSqlParser.MAX_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MAX_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MAX_PROCESSES - 572)) | (1 << (TSqlParser.MAX_QUEUE_READERS - 572)) | (1 << (TSqlParser.MAX_ROLLOVER_FILES - 572)) | (1 << (TSqlParser.MAXDOP - 572)) | (1 << (TSqlParser.MAXRECURSION - 572)) | (1 << (TSqlParser.MAXSIZE - 572)) | (1 << (TSqlParser.MB - 572)) | (1 << (TSqlParser.MEDIUM - 572)) | (1 << (TSqlParser.MEMORY_OPTIMIZED_DATA - 572)) | (1 << (TSqlParser.MESSAGE - 572)) | (1 << (TSqlParser.MIN - 572)) | (1 << (TSqlParser.MIN_ACTIVE_ROWVERSION - 572)) | (1 << (TSqlParser.MIN_CPU_PERCENT - 572)) | (1 << (TSqlParser.MIN_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MIN_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MINUTES - 572)) | (1 << (TSqlParser.MIRROR_ADDRESS - 572)) | (1 << (TSqlParser.MIXED_PAGE_ALLOCATION - 572)) | (1 << (TSqlParser.MODE - 572)) | (1 << (TSqlParser.MODIFY - 572)) | (1 << (TSqlParser.MOVE - 572)) | (1 << (TSqlParser.MULTI_USER - 572)) | (1 << (TSqlParser.NAME - 572)))) !== 0) || ((((_la - 604)) & ~0x1f) == 0 && ((1 << (_la - 604)) & ((1 << (TSqlParser.NESTED_TRIGGERS - 604)) | (1 << (TSqlParser.NEW_ACCOUNT - 604)) | (1 << (TSqlParser.NEW_BROKER - 604)) | (1 << (TSqlParser.NEW_PASSWORD - 604)) | (1 << (TSqlParser.NEXT - 604)) | (1 << (TSqlParser.NO - 604)) | (1 << (TSqlParser.NO_TRUNCATE - 604)) | (1 << (TSqlParser.NO_WAIT - 604)) | (1 << (TSqlParser.NOCOUNT - 604)) | (1 << (TSqlParser.NODES - 604)) | (1 << (TSqlParser.NOEXPAND - 604)) | (1 << (TSqlParser.NON_TRANSACTED_ACCESS - 604)) | (1 << (TSqlParser.NORECOMPUTE - 604)) | (1 << (TSqlParser.NORECOVERY - 604)) | (1 << (TSqlParser.NOWAIT - 604)) | (1 << (TSqlParser.NTILE - 604)) | (1 << (TSqlParser.NUMANODE - 604)) | (1 << (TSqlParser.NUMBER - 604)) | (1 << (TSqlParser.NUMERIC_ROUNDABORT - 604)) | (1 << (TSqlParser.OBJECT - 604)) | (1 << (TSqlParser.OFFLINE - 604)) | (1 << (TSqlParser.OFFSET - 604)) | (1 << (TSqlParser.OLD_ACCOUNT - 604)) | (1 << (TSqlParser.ONLINE - 604)) | (1 << (TSqlParser.ONLY - 604)) | (1 << (TSqlParser.OPEN_EXISTING - 604)) | (1 << (TSqlParser.OPTIMISTIC - 604)) | (1 << (TSqlParser.OPTIMIZE - 604)) | (1 << (TSqlParser.OUT - 604)) | (1 << (TSqlParser.OUTPUT - 604)) | (1 << (TSqlParser.OWNER - 604)))) !== 0) || ((((_la - 636)) & ~0x1f) == 0 && ((1 << (_la - 636)) & ((1 << (TSqlParser.PAGE_VERIFY - 636)) | (1 << (TSqlParser.PARAMETERIZATION - 636)) | (1 << (TSqlParser.PARTITION - 636)) | (1 << (TSqlParser.PARTITIONS - 636)) | (1 << (TSqlParser.PARTNER - 636)) | (1 << (TSqlParser.PATH - 636)) | (1 << (TSqlParser.POISON_MESSAGE_HANDLING - 636)) | (1 << (TSqlParser.POOL - 636)) | (1 << (TSqlParser.PORT - 636)) | (1 << (TSqlParser.PRECEDING - 636)) | (1 << (TSqlParser.PRIMARY_ROLE - 636)) | (1 << (TSqlParser.PRIOR - 636)) | (1 << (TSqlParser.PRIORITY - 636)) | (1 << (TSqlParser.PRIORITY_LEVEL - 636)) | (1 << (TSqlParser.PRIVATE - 636)) | (1 << (TSqlParser.PRIVATE_KEY - 636)) | (1 << (TSqlParser.PRIVILEGES - 636)) | (1 << (TSqlParser.PROCEDURE_NAME - 636)) | (1 << (TSqlParser.PROPERTY - 636)) | (1 << (TSqlParser.PROVIDER - 636)) | (1 << (TSqlParser.PROVIDER_KEY_NAME - 636)) | (1 << (TSqlParser.QUERY - 636)) | (1 << (TSqlParser.QUEUE - 636)) | (1 << (TSqlParser.QUEUE_DELAY - 636)) | (1 << (TSqlParser.QUOTED_IDENTIFIER - 636)) | (1 << (TSqlParser.RANGE - 636)) | (1 << (TSqlParser.RANK - 636)) | (1 << (TSqlParser.RC2 - 636)) | (1 << (TSqlParser.RC4 - 636)) | (1 << (TSqlParser.RC4_128 - 636)) | (1 << (TSqlParser.READ_COMMITTED_SNAPSHOT - 636)) | (1 << (TSqlParser.READ_ONLY - 636)))) !== 0) || ((((_la - 668)) & ~0x1f) == 0 && ((1 << (_la - 668)) & ((1 << (TSqlParser.READ_ONLY_ROUTING_LIST - 668)) | (1 << (TSqlParser.READ_WRITE - 668)) | (1 << (TSqlParser.READONLY - 668)) | (1 << (TSqlParser.REBUILD - 668)) | (1 << (TSqlParser.RECEIVE - 668)) | (1 << (TSqlParser.RECOMPILE - 668)) | (1 << (TSqlParser.RECOVERY - 668)) | (1 << (TSqlParser.RECURSIVE_TRIGGERS - 668)) | (1 << (TSqlParser.RELATIVE - 668)) | (1 << (TSqlParser.REMOTE - 668)) | (1 << (TSqlParser.REMOTE_SERVICE_NAME - 668)) | (1 << (TSqlParser.REMOVE - 668)) | (1 << (TSqlParser.REORGANIZE - 668)) | (1 << (TSqlParser.REPEATABLE - 668)) | (1 << (TSqlParser.REPLICA - 668)) | (1 << (TSqlParser.REQUEST_MAX_CPU_TIME_SEC - 668)) | (1 << (TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT - 668)) | (1 << (TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC - 668)) | (1 << (TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT - 668)) | (1 << (TSqlParser.RESERVE_DISK_SPACE - 668)) | (1 << (TSqlParser.RESOURCE - 668)) | (1 << (TSqlParser.RESOURCE_MANAGER_LOCATION - 668)) | (1 << (TSqlParser.RESTRICTED_USER - 668)) | (1 << (TSqlParser.RETENTION - 668)) | (1 << (TSqlParser.ROBUST - 668)) | (1 << (TSqlParser.ROOT - 668)) | (1 << (TSqlParser.ROUTE - 668)) | (1 << (TSqlParser.ROW - 668)) | (1 << (TSqlParser.ROW_NUMBER - 668)) | (1 << (TSqlParser.ROWGUID - 668)) | (1 << (TSqlParser.ROWS - 668)) | (1 << (TSqlParser.SAMPLE - 668)))) !== 0) || ((((_la - 700)) & ~0x1f) == 0 && ((1 << (_la - 700)) & ((1 << (TSqlParser.SCHEMABINDING - 700)) | (1 << (TSqlParser.SCOPED - 700)) | (1 << (TSqlParser.SCROLL - 700)) | (1 << (TSqlParser.SCROLL_LOCKS - 700)) | (1 << (TSqlParser.SEARCH - 700)) | (1 << (TSqlParser.SECONDARY - 700)) | (1 << (TSqlParser.SECONDARY_ONLY - 700)) | (1 << (TSqlParser.SECONDARY_ROLE - 700)) | (1 << (TSqlParser.SECONDS - 700)) | (1 << (TSqlParser.SECRET - 700)) | (1 << (TSqlParser.SECURITY - 700)) | (1 << (TSqlParser.SECURITY_LOG - 700)) | (1 << (TSqlParser.SEEDING_MODE - 700)) | (1 << (TSqlParser.SELF - 700)) | (1 << (TSqlParser.SEMI_SENSITIVE - 700)) | (1 << (TSqlParser.SEND - 700)) | (1 << (TSqlParser.SENT - 700)) | (1 << (TSqlParser.SEQUENCE - 700)) | (1 << (TSqlParser.SERIALIZABLE - 700)) | (1 << (TSqlParser.SESSION_TIMEOUT - 700)) | (1 << (TSqlParser.SETERROR - 700)) | (1 << (TSqlParser.SHARE - 700)) | (1 << (TSqlParser.SHOWPLAN - 700)) | (1 << (TSqlParser.SIGNATURE - 700)) | (1 << (TSqlParser.SIMPLE - 700)) | (1 << (TSqlParser.SINGLE_USER - 700)) | (1 << (TSqlParser.SIZE - 700)) | (1 << (TSqlParser.SMALLINT - 700)) | (1 << (TSqlParser.SNAPSHOT - 700)) | (1 << (TSqlParser.SPATIAL_WINDOW_MAX_CELLS - 700)) | (1 << (TSqlParser.STANDBY - 700)) | (1 << (TSqlParser.START_DATE - 700)))) !== 0) || ((((_la - 732)) & ~0x1f) == 0 && ((1 << (_la - 732)) & ((1 << (TSqlParser.STATIC - 732)) | (1 << (TSqlParser.STATS_STREAM - 732)) | (1 << (TSqlParser.STATUS - 732)) | (1 << (TSqlParser.STDEV - 732)) | (1 << (TSqlParser.STDEVP - 732)) | (1 << (TSqlParser.STOPLIST - 732)) | (1 << (TSqlParser.STRING_AGG - 732)) | (1 << (TSqlParser.STUFF - 732)) | (1 << (TSqlParser.SUBJECT - 732)) | (1 << (TSqlParser.SUM - 732)) | (1 << (TSqlParser.SUSPEND - 732)) | (1 << (TSqlParser.SYMMETRIC - 732)) | (1 << (TSqlParser.SYNCHRONOUS_COMMIT - 732)) | (1 << (TSqlParser.SYNONYM - 732)) | (1 << (TSqlParser.SYSTEM - 732)) | (1 << (TSqlParser.TAKE - 732)) | (1 << (TSqlParser.TARGET_RECOVERY_TIME - 732)) | (1 << (TSqlParser.TB - 732)) | (1 << (TSqlParser.TEXTIMAGE_ON - 732)) | (1 << (TSqlParser.THROW - 732)) | (1 << (TSqlParser.TIES - 732)) | (1 << (TSqlParser.TIME - 732)) | (1 << (TSqlParser.TIMEOUT - 732)) | (1 << (TSqlParser.TIMER - 732)) | (1 << (TSqlParser.TINYINT - 732)) | (1 << (TSqlParser.TORN_PAGE_DETECTION - 732)) | (1 << (TSqlParser.TRANSFORM_NOISE_WORDS - 732)) | (1 << (TSqlParser.TRIPLE_DES - 732)) | (1 << (TSqlParser.TRIPLE_DES_3KEY - 732)) | (1 << (TSqlParser.TRUSTWORTHY - 732)))) !== 0) || ((((_la - 764)) & ~0x1f) == 0 && ((1 << (_la - 764)) & ((1 << (TSqlParser.TRY - 764)) | (1 << (TSqlParser.TSQL - 764)) | (1 << (TSqlParser.TWO_DIGIT_YEAR_CUTOFF - 764)) | (1 << (TSqlParser.TYPE - 764)) | (1 << (TSqlParser.TYPE_WARNING - 764)) | (1 << (TSqlParser.UNBOUNDED - 764)) | (1 << (TSqlParser.UNCOMMITTED - 764)) | (1 << (TSqlParser.UNKNOWN - 764)) | (1 << (TSqlParser.UNLIMITED - 764)) | (1 << (TSqlParser.USING - 764)) | (1 << (TSqlParser.VALID_XML - 764)) | (1 << (TSqlParser.VALIDATION - 764)) | (1 << (TSqlParser.VALUE - 764)) | (1 << (TSqlParser.VAR - 764)) | (1 << (TSqlParser.VARP - 764)) | (1 << (TSqlParser.VIEW_METADATA - 764)) | (1 << (TSqlParser.VIEWS - 764)) | (1 << (TSqlParser.WAIT - 764)) | (1 << (TSqlParser.WELL_FORMED_XML - 764)) | (1 << (TSqlParser.WORK - 764)) | (1 << (TSqlParser.WORKLOAD - 764)) | (1 << (TSqlParser.XML - 764)) | (1 << (TSqlParser.XMLNAMESPACES - 764)))) !== 0) || ((((_la - 796)) & ~0x1f) == 0 && ((1 << (_la - 796)) & ((1 << (TSqlParser.DOUBLE_QUOTE_ID - 796)) | (1 << (TSqlParser.SQUARE_BRACKET_ID - 796)) | (1 << (TSqlParser.ID - 796)) | (1 << (TSqlParser.LR_BRACKET - 796)))) !== 0) || _la===TSqlParser.COMMA);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Event_session_predicate_factorContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_event_session_predicate_factor;
- return this;
-}
-
-Event_session_predicate_factorContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Event_session_predicate_factorContext.prototype.constructor = Event_session_predicate_factorContext;
-
-Event_session_predicate_factorContext.prototype.event_session_predicate_leaf = function() {
- return this.getTypedRuleContext(Event_session_predicate_leafContext,0);
-};
-
-Event_session_predicate_factorContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Event_session_predicate_factorContext.prototype.event_session_predicate_expression = function() {
- return this.getTypedRuleContext(Event_session_predicate_expressionContext,0);
-};
-
-Event_session_predicate_factorContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Event_session_predicate_factorContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterEvent_session_predicate_factor(this);
- }
-};
-
-Event_session_predicate_factorContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitEvent_session_predicate_factor(this);
- }
-};
-
-Event_session_predicate_factorContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitEvent_session_predicate_factor(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Event_session_predicate_factorContext = Event_session_predicate_factorContext;
-
-TSqlParser.prototype.event_session_predicate_factor = function() {
-
- var localctx = new Event_session_predicate_factorContext(this, this._ctx, this.state);
- this.enterRule(localctx, 290, TSqlParser.RULE_event_session_predicate_factor);
- try {
- this.state = 3193;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.enterOuterAlt(localctx, 1);
- this.state = 3188;
- this.event_session_predicate_leaf();
- break;
- case TSqlParser.LR_BRACKET:
- this.enterOuterAlt(localctx, 2);
- this.state = 3189;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 3190;
- this.event_session_predicate_expression();
- this.state = 3191;
- this.match(TSqlParser.RR_BRACKET);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Event_session_predicate_leafContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_event_session_predicate_leaf;
- this.event_field_name = null; // IdContext
- this.event_module_guid = null; // IdContext
- this.event_package_name = null; // IdContext
- this.predicate_source_name = null; // IdContext
- this.predicate_compare_name = null; // IdContext
- return this;
-}
-
-Event_session_predicate_leafContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Event_session_predicate_leafContext.prototype.constructor = Event_session_predicate_leafContext;
-
-Event_session_predicate_leafContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Event_session_predicate_leafContext.prototype.DECIMAL = function() {
- return this.getToken(TSqlParser.DECIMAL, 0);
-};
-
-Event_session_predicate_leafContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Event_session_predicate_leafContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Event_session_predicate_leafContext.prototype.GREATER = function() {
- return this.getToken(TSqlParser.GREATER, 0);
-};
-
-Event_session_predicate_leafContext.prototype.LESS = function() {
- return this.getToken(TSqlParser.LESS, 0);
-};
-
-Event_session_predicate_leafContext.prototype.DOT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DOT);
- } else {
- return this.getToken(TSqlParser.DOT, i);
- }
-};
-
-
-Event_session_predicate_leafContext.prototype.EXCLAMATION = function() {
- return this.getToken(TSqlParser.EXCLAMATION, 0);
-};
-
-Event_session_predicate_leafContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Event_session_predicate_leafContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Event_session_predicate_leafContext.prototype.COMMA = function() {
- return this.getToken(TSqlParser.COMMA, 0);
-};
-
-Event_session_predicate_leafContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterEvent_session_predicate_leaf(this);
- }
-};
-
-Event_session_predicate_leafContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitEvent_session_predicate_leaf(this);
- }
-};
-
-Event_session_predicate_leafContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitEvent_session_predicate_leaf(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Event_session_predicate_leafContext = Event_session_predicate_leafContext;
-
-TSqlParser.prototype.event_session_predicate_leaf = function() {
-
- var localctx = new Event_session_predicate_leafContext(this, this._ctx, this.state);
- this.enterRule(localctx, 292, TSqlParser.RULE_event_session_predicate_leaf);
- var _la = 0; // Token type
- try {
- this.state = 3251;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,286,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 3223;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,282,this._ctx);
- switch(la_) {
- case 1:
- this.state = 3195;
- localctx.event_field_name = this.id();
- break;
-
- case 2:
- this.state = 3206;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,280,this._ctx);
- switch(la_) {
- case 1:
- this.state = 3196;
- localctx.event_field_name = this.id();
- break;
-
- case 2:
- this.state = 3200;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,279,this._ctx);
- if(la_===1) {
- this.state = 3197;
- localctx.event_module_guid = this.id();
- this.state = 3198;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 3202;
- localctx.event_package_name = this.id();
- this.state = 3203;
- this.match(TSqlParser.DOT);
- this.state = 3204;
- localctx.predicate_source_name = this.id();
- break;
-
- }
- this.state = 3219;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,281,this._ctx);
- switch(la_) {
- case 1:
- this.state = 3208;
- this.match(TSqlParser.EQUAL);
- break;
-
- case 2:
- this.state = 3209;
- this.match(TSqlParser.LESS);
- this.state = 3210;
- this.match(TSqlParser.GREATER);
- break;
-
- case 3:
- this.state = 3211;
- this.match(TSqlParser.EXCLAMATION);
- this.state = 3212;
- this.match(TSqlParser.EQUAL);
- break;
-
- case 4:
- this.state = 3213;
- this.match(TSqlParser.GREATER);
- break;
-
- case 5:
- this.state = 3214;
- this.match(TSqlParser.GREATER);
- this.state = 3215;
- this.match(TSqlParser.EQUAL);
- break;
-
- case 6:
- this.state = 3216;
- this.match(TSqlParser.LESS);
- break;
-
- case 7:
- this.state = 3217;
- this.match(TSqlParser.LESS);
- this.state = 3218;
- this.match(TSqlParser.EQUAL);
- break;
-
- }
- this.state = 3221;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.DECIMAL || _la===TSqlParser.STRING)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
-
- }
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 3228;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,283,this._ctx);
- if(la_===1) {
- this.state = 3225;
- localctx.event_module_guid = this.id();
- this.state = 3226;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 3230;
- localctx.event_package_name = this.id();
- this.state = 3231;
- this.match(TSqlParser.DOT);
- this.state = 3232;
- localctx.predicate_compare_name = this.id();
- this.state = 3233;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 3247;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,285,this._ctx);
- switch(la_) {
- case 1:
- this.state = 3234;
- localctx.event_field_name = this.id();
- break;
-
- case 2:
- this.state = 3238;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,284,this._ctx);
- if(la_===1) {
- this.state = 3235;
- localctx.event_module_guid = this.id();
- this.state = 3236;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 3240;
- localctx.event_package_name = this.id();
- this.state = 3241;
- this.match(TSqlParser.DOT);
- this.state = 3242;
- localctx.predicate_source_name = this.id();
- this.state = 3244;
- this.match(TSqlParser.COMMA);
- this.state = 3245;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.DECIMAL || _la===TSqlParser.STRING)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
-
- }
- this.state = 3249;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_external_data_sourceContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_external_data_source;
- this.data_source_name = null; // IdContext
- this.location = null; // Token
- this.resource_manager_location = null; // Token
- this.credential_name = null; // IdContext
- return this;
-}
-
-Alter_external_data_sourceContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_external_data_sourceContext.prototype.constructor = Alter_external_data_sourceContext;
-
-Alter_external_data_sourceContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Alter_external_data_sourceContext.prototype.EXTERNAL = function() {
- return this.getToken(TSqlParser.EXTERNAL, 0);
-};
-
-Alter_external_data_sourceContext.prototype.DATA = function() {
- return this.getToken(TSqlParser.DATA, 0);
-};
-
-Alter_external_data_sourceContext.prototype.SOURCE = function() {
- return this.getToken(TSqlParser.SOURCE, 0);
-};
-
-Alter_external_data_sourceContext.prototype.SET = function() {
- return this.getToken(TSqlParser.SET, 0);
-};
-
-Alter_external_data_sourceContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Alter_external_data_sourceContext.prototype.LOCATION = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.LOCATION);
- } else {
- return this.getToken(TSqlParser.LOCATION, i);
- }
-};
-
-
-Alter_external_data_sourceContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-Alter_external_data_sourceContext.prototype.RESOURCE_MANAGER_LOCATION = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.RESOURCE_MANAGER_LOCATION);
- } else {
- return this.getToken(TSqlParser.RESOURCE_MANAGER_LOCATION, i);
- }
-};
-
-
-Alter_external_data_sourceContext.prototype.CREDENTIAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.CREDENTIAL);
- } else {
- return this.getToken(TSqlParser.CREDENTIAL, i);
- }
-};
-
-
-Alter_external_data_sourceContext.prototype.QUOTED_URL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.QUOTED_URL);
- } else {
- return this.getToken(TSqlParser.QUOTED_URL, i);
- }
-};
-
-
-Alter_external_data_sourceContext.prototype.QUOTED_HOST_AND_PORT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.QUOTED_HOST_AND_PORT);
- } else {
- return this.getToken(TSqlParser.QUOTED_HOST_AND_PORT, i);
- }
-};
-
-
-Alter_external_data_sourceContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Alter_external_data_sourceContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Alter_external_data_sourceContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Alter_external_data_sourceContext.prototype.TYPE = function() {
- return this.getToken(TSqlParser.TYPE, 0);
-};
-
-Alter_external_data_sourceContext.prototype.BLOB_STORAGE = function() {
- return this.getToken(TSqlParser.BLOB_STORAGE, 0);
-};
-
-Alter_external_data_sourceContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Alter_external_data_sourceContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Alter_external_data_sourceContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_external_data_source(this);
- }
-};
-
-Alter_external_data_sourceContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_external_data_source(this);
- }
-};
-
-Alter_external_data_sourceContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_external_data_source(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_external_data_sourceContext = Alter_external_data_sourceContext;
-
-TSqlParser.prototype.alter_external_data_source = function() {
-
- var localctx = new Alter_external_data_sourceContext(this, this._ctx, this.state);
- this.enterRule(localctx, 294, TSqlParser.RULE_alter_external_data_source);
- var _la = 0; // Token type
- try {
- this.state = 3300;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,292,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 3253;
- this.match(TSqlParser.ALTER);
- this.state = 3254;
- this.match(TSqlParser.EXTERNAL);
- this.state = 3255;
- this.match(TSqlParser.DATA);
- this.state = 3256;
- this.match(TSqlParser.SOURCE);
- this.state = 3257;
- localctx.data_source_name = this.id();
- this.state = 3258;
- this.match(TSqlParser.SET);
- this.state = 3274;
- this._errHandler.sync(this);
- var _alt = 1;
- do {
- switch (_alt) {
- case 1:
- this.state = 3274;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.LOCATION:
- this.state = 3259;
- this.match(TSqlParser.LOCATION);
- this.state = 3260;
- this.match(TSqlParser.EQUAL);
- this.state = 3261;
- localctx.location = this._input.LT(1);
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.QUOTED_URL || _la===TSqlParser.QUOTED_HOST_AND_PORT)) {
- localctx.location = this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 3263;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 3262;
- this.match(TSqlParser.COMMA);
- }
-
- break;
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- this.state = 3265;
- this.match(TSqlParser.RESOURCE_MANAGER_LOCATION);
- this.state = 3266;
- this.match(TSqlParser.EQUAL);
- this.state = 3267;
- localctx.resource_manager_location = this._input.LT(1);
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.QUOTED_URL || _la===TSqlParser.QUOTED_HOST_AND_PORT)) {
- localctx.resource_manager_location = this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 3269;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 3268;
- this.match(TSqlParser.COMMA);
- }
-
- break;
- case TSqlParser.CREDENTIAL:
- this.state = 3271;
- this.match(TSqlParser.CREDENTIAL);
- this.state = 3272;
- this.match(TSqlParser.EQUAL);
- this.state = 3273;
- localctx.credential_name = this.id();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 3276;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,290, this._ctx);
- } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 3278;
- this.match(TSqlParser.ALTER);
- this.state = 3279;
- this.match(TSqlParser.EXTERNAL);
- this.state = 3280;
- this.match(TSqlParser.DATA);
- this.state = 3281;
- this.match(TSqlParser.SOURCE);
- this.state = 3282;
- localctx.data_source_name = this.id();
- this.state = 3283;
- this.match(TSqlParser.WITH);
- this.state = 3284;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 3285;
- this.match(TSqlParser.TYPE);
- this.state = 3286;
- this.match(TSqlParser.EQUAL);
- this.state = 3287;
- this.match(TSqlParser.BLOB_STORAGE);
- this.state = 3288;
- this.match(TSqlParser.COMMA);
- this.state = 3289;
- this.match(TSqlParser.LOCATION);
- this.state = 3290;
- this.match(TSqlParser.EQUAL);
- this.state = 3291;
- localctx.location = this.match(TSqlParser.STRING);
- this.state = 3296;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 3292;
- this.match(TSqlParser.COMMA);
- this.state = 3293;
- this.match(TSqlParser.CREDENTIAL);
- this.state = 3294;
- this.match(TSqlParser.EQUAL);
- this.state = 3295;
- localctx.credential_name = this.id();
- }
-
- this.state = 3298;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_external_libraryContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_external_library;
- this.library_name = null; // IdContext
- this.owner_name = null; // IdContext
- this.client_library = null; // Token
- this.external_data_source_name = null; // IdContext
- return this;
-}
-
-Alter_external_libraryContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_external_libraryContext.prototype.constructor = Alter_external_libraryContext;
-
-Alter_external_libraryContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Alter_external_libraryContext.prototype.EXTERNAL = function() {
- return this.getToken(TSqlParser.EXTERNAL, 0);
-};
-
-Alter_external_libraryContext.prototype.LIBRARY = function() {
- return this.getToken(TSqlParser.LIBRARY, 0);
-};
-
-Alter_external_libraryContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Alter_external_libraryContext.prototype.SET = function() {
- return this.getToken(TSqlParser.SET, 0);
-};
-
-Alter_external_libraryContext.prototype.ADD = function() {
- return this.getToken(TSqlParser.ADD, 0);
-};
-
-Alter_external_libraryContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Alter_external_libraryContext.prototype.CONTENT = function() {
- return this.getToken(TSqlParser.CONTENT, 0);
-};
-
-Alter_external_libraryContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-Alter_external_libraryContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Alter_external_libraryContext.prototype.RR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.RR_BRACKET);
- } else {
- return this.getToken(TSqlParser.RR_BRACKET, i);
- }
-};
-
-
-Alter_external_libraryContext.prototype.AUTHORIZATION = function() {
- return this.getToken(TSqlParser.AUTHORIZATION, 0);
-};
-
-Alter_external_libraryContext.prototype.BINARY = function() {
- return this.getToken(TSqlParser.BINARY, 0);
-};
-
-Alter_external_libraryContext.prototype.NONE = function() {
- return this.getToken(TSqlParser.NONE, 0);
-};
-
-Alter_external_libraryContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Alter_external_libraryContext.prototype.PLATFORM = function() {
- return this.getToken(TSqlParser.PLATFORM, 0);
-};
-
-Alter_external_libraryContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Alter_external_libraryContext.prototype.LANGUAGE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.LANGUAGE);
- } else {
- return this.getToken(TSqlParser.LANGUAGE, i);
- }
-};
-
-
-Alter_external_libraryContext.prototype.DATA_SOURCE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DATA_SOURCE);
- } else {
- return this.getToken(TSqlParser.DATA_SOURCE, i);
- }
-};
-
-
-Alter_external_libraryContext.prototype.R = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.R);
- } else {
- return this.getToken(TSqlParser.R, i);
- }
-};
-
-
-Alter_external_libraryContext.prototype.PYTHON = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.PYTHON);
- } else {
- return this.getToken(TSqlParser.PYTHON, i);
- }
-};
-
-
-Alter_external_libraryContext.prototype.WINDOWS = function() {
- return this.getToken(TSqlParser.WINDOWS, 0);
-};
-
-Alter_external_libraryContext.prototype.LINUX = function() {
- return this.getToken(TSqlParser.LINUX, 0);
-};
-
-Alter_external_libraryContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_external_library(this);
- }
-};
-
-Alter_external_libraryContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_external_library(this);
- }
-};
-
-Alter_external_libraryContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_external_library(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_external_libraryContext = Alter_external_libraryContext;
-
-TSqlParser.prototype.alter_external_library = function() {
-
- var localctx = new Alter_external_libraryContext(this, this._ctx, this.state);
- this.enterRule(localctx, 296, TSqlParser.RULE_alter_external_library);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 3302;
- this.match(TSqlParser.ALTER);
- this.state = 3303;
- this.match(TSqlParser.EXTERNAL);
- this.state = 3304;
- this.match(TSqlParser.LIBRARY);
- this.state = 3305;
- localctx.library_name = this.id();
- this.state = 3308;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.AUTHORIZATION) {
- this.state = 3306;
- this.match(TSqlParser.AUTHORIZATION);
- this.state = 3307;
- localctx.owner_name = this.id();
- }
-
- this.state = 3310;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.ADD || _la===TSqlParser.SET)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
-
- this.state = 3311;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 3312;
- this.match(TSqlParser.CONTENT);
- this.state = 3313;
- this.match(TSqlParser.EQUAL);
- this.state = 3317;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.STRING:
- this.state = 3314;
- localctx.client_library = this.match(TSqlParser.STRING);
- break;
- case TSqlParser.BINARY:
- this.state = 3315;
- this.match(TSqlParser.BINARY);
- break;
- case TSqlParser.NONE:
- this.state = 3316;
- this.match(TSqlParser.NONE);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
-
- this.state = 3319;
- this.match(TSqlParser.COMMA);
- this.state = 3320;
- this.match(TSqlParser.PLATFORM);
- this.state = 3321;
- this.match(TSqlParser.EQUAL);
- this.state = 3323;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.LINUX || _la===TSqlParser.WINDOWS) {
- this.state = 3322;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.LINUX || _la===TSqlParser.WINDOWS)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- }
-
- this.state = 3325;
- this.match(TSqlParser.RR_BRACKET);
- this.state = 3327;
- this.match(TSqlParser.WITH);
- this.state = 3337;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- do {
- this.state = 3337;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.LANGUAGE:
- case TSqlParser.COMMA:
- this.state = 3329;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 3328;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 3331;
- this.match(TSqlParser.LANGUAGE);
- this.state = 3332;
- this.match(TSqlParser.EQUAL);
- this.state = 3333;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.PYTHON || _la===TSqlParser.R)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- case TSqlParser.DATA_SOURCE:
- this.state = 3334;
- this.match(TSqlParser.DATA_SOURCE);
- this.state = 3335;
- this.match(TSqlParser.EQUAL);
- this.state = 3336;
- localctx.external_data_source_name = this.id();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 3339;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- } while(_la===TSqlParser.DATA_SOURCE || _la===TSqlParser.LANGUAGE || _la===TSqlParser.COMMA);
- this.state = 3341;
- this.match(TSqlParser.RR_BRACKET);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_external_libraryContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_external_library;
- this.library_name = null; // IdContext
- this.owner_name = null; // IdContext
- this.client_library = null; // Token
- this.external_data_source_name = null; // IdContext
- return this;
-}
-
-Create_external_libraryContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_external_libraryContext.prototype.constructor = Create_external_libraryContext;
-
-Create_external_libraryContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_external_libraryContext.prototype.EXTERNAL = function() {
- return this.getToken(TSqlParser.EXTERNAL, 0);
-};
-
-Create_external_libraryContext.prototype.LIBRARY = function() {
- return this.getToken(TSqlParser.LIBRARY, 0);
-};
-
-Create_external_libraryContext.prototype.FROM = function() {
- return this.getToken(TSqlParser.FROM, 0);
-};
-
-Create_external_libraryContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Create_external_libraryContext.prototype.AUTHORIZATION = function() {
- return this.getToken(TSqlParser.AUTHORIZATION, 0);
-};
-
-Create_external_libraryContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Create_external_libraryContext.prototype.RR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.RR_BRACKET);
- } else {
- return this.getToken(TSqlParser.RR_BRACKET, i);
- }
-};
-
-
-Create_external_libraryContext.prototype.BINARY = function() {
- return this.getToken(TSqlParser.BINARY, 0);
-};
-
-Create_external_libraryContext.prototype.NONE = function() {
- return this.getToken(TSqlParser.NONE, 0);
-};
-
-Create_external_libraryContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Create_external_libraryContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Create_external_libraryContext.prototype.CONTENT = function() {
- return this.getToken(TSqlParser.CONTENT, 0);
-};
-
-Create_external_libraryContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-Create_external_libraryContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Create_external_libraryContext.prototype.PLATFORM = function() {
- return this.getToken(TSqlParser.PLATFORM, 0);
-};
-
-Create_external_libraryContext.prototype.LANGUAGE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.LANGUAGE);
- } else {
- return this.getToken(TSqlParser.LANGUAGE, i);
- }
-};
-
-
-Create_external_libraryContext.prototype.DATA_SOURCE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DATA_SOURCE);
- } else {
- return this.getToken(TSqlParser.DATA_SOURCE, i);
- }
-};
-
-
-Create_external_libraryContext.prototype.R = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.R);
- } else {
- return this.getToken(TSqlParser.R, i);
- }
-};
-
-
-Create_external_libraryContext.prototype.PYTHON = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.PYTHON);
- } else {
- return this.getToken(TSqlParser.PYTHON, i);
- }
-};
-
-
-Create_external_libraryContext.prototype.WINDOWS = function() {
- return this.getToken(TSqlParser.WINDOWS, 0);
-};
-
-Create_external_libraryContext.prototype.LINUX = function() {
- return this.getToken(TSqlParser.LINUX, 0);
-};
-
-Create_external_libraryContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_external_library(this);
- }
-};
-
-Create_external_libraryContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_external_library(this);
- }
-};
-
-Create_external_libraryContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_external_library(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_external_libraryContext = Create_external_libraryContext;
-
-TSqlParser.prototype.create_external_library = function() {
-
- var localctx = new Create_external_libraryContext(this, this._ctx, this.state);
- this.enterRule(localctx, 298, TSqlParser.RULE_create_external_library);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 3343;
- this.match(TSqlParser.CREATE);
- this.state = 3344;
- this.match(TSqlParser.EXTERNAL);
- this.state = 3345;
- this.match(TSqlParser.LIBRARY);
- this.state = 3346;
- localctx.library_name = this.id();
- this.state = 3349;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.AUTHORIZATION) {
- this.state = 3347;
- this.match(TSqlParser.AUTHORIZATION);
- this.state = 3348;
- localctx.owner_name = this.id();
- }
-
- this.state = 3351;
- this.match(TSqlParser.FROM);
-
- this.state = 3353;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 3352;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 3356;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.LR_BRACKET) {
- this.state = 3355;
- this.match(TSqlParser.LR_BRACKET);
- }
-
- this.state = 3360;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.CONTENT) {
- this.state = 3358;
- this.match(TSqlParser.CONTENT);
- this.state = 3359;
- this.match(TSqlParser.EQUAL);
- }
-
- this.state = 3365;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.STRING:
- this.state = 3362;
- localctx.client_library = this.match(TSqlParser.STRING);
- break;
- case TSqlParser.BINARY:
- this.state = 3363;
- this.match(TSqlParser.BINARY);
- break;
- case TSqlParser.NONE:
- this.state = 3364;
- this.match(TSqlParser.NONE);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 3374;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 3367;
- this.match(TSqlParser.COMMA);
- this.state = 3368;
- this.match(TSqlParser.PLATFORM);
- this.state = 3369;
- this.match(TSqlParser.EQUAL);
- this.state = 3371;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.LINUX || _la===TSqlParser.WINDOWS) {
- this.state = 3370;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.LINUX || _la===TSqlParser.WINDOWS)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- }
-
- this.state = 3373;
- this.match(TSqlParser.RR_BRACKET);
- }
-
- this.state = 3391;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,309,this._ctx);
- if(la_===1) {
- this.state = 3376;
- this.match(TSqlParser.WITH);
- this.state = 3386;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- do {
- this.state = 3386;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.LANGUAGE:
- case TSqlParser.COMMA:
- this.state = 3378;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 3377;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 3380;
- this.match(TSqlParser.LANGUAGE);
- this.state = 3381;
- this.match(TSqlParser.EQUAL);
- this.state = 3382;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.PYTHON || _la===TSqlParser.R)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- case TSqlParser.DATA_SOURCE:
- this.state = 3383;
- this.match(TSqlParser.DATA_SOURCE);
- this.state = 3384;
- this.match(TSqlParser.EQUAL);
- this.state = 3385;
- localctx.external_data_source_name = this.id();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 3388;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- } while(_la===TSqlParser.DATA_SOURCE || _la===TSqlParser.LANGUAGE || _la===TSqlParser.COMMA);
- this.state = 3390;
- this.match(TSqlParser.RR_BRACKET);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_external_resource_poolContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_external_resource_pool;
- this.pool_name = null; // IdContext
- this.max_cpu_percent = null; // Token
- this.max_memory_percent = null; // Token
- this.max_processes = null; // Token
- return this;
-}
-
-Alter_external_resource_poolContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_external_resource_poolContext.prototype.constructor = Alter_external_resource_poolContext;
-
-Alter_external_resource_poolContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Alter_external_resource_poolContext.prototype.EXTERNAL = function() {
- return this.getToken(TSqlParser.EXTERNAL, 0);
-};
-
-Alter_external_resource_poolContext.prototype.RESOURCE = function() {
- return this.getToken(TSqlParser.RESOURCE, 0);
-};
-
-Alter_external_resource_poolContext.prototype.POOL = function() {
- return this.getToken(TSqlParser.POOL, 0);
-};
-
-Alter_external_resource_poolContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Alter_external_resource_poolContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Alter_external_resource_poolContext.prototype.MAX_CPU_PERCENT = function() {
- return this.getToken(TSqlParser.MAX_CPU_PERCENT, 0);
-};
-
-Alter_external_resource_poolContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-Alter_external_resource_poolContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Alter_external_resource_poolContext.prototype.DECIMAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DECIMAL);
- } else {
- return this.getToken(TSqlParser.DECIMAL, i);
- }
-};
-
-
-Alter_external_resource_poolContext.prototype.DEFAULT_DOUBLE_QUOTE = function() {
- return this.getToken(TSqlParser.DEFAULT_DOUBLE_QUOTE, 0);
-};
-
-Alter_external_resource_poolContext.prototype.AFFINITY = function() {
- return this.getToken(TSqlParser.AFFINITY, 0);
-};
-
-Alter_external_resource_poolContext.prototype.CPU = function() {
- return this.getToken(TSqlParser.CPU, 0);
-};
-
-Alter_external_resource_poolContext.prototype.NUMANODE = function() {
- return this.getToken(TSqlParser.NUMANODE, 0);
-};
-
-Alter_external_resource_poolContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Alter_external_resource_poolContext.prototype.MAX_MEMORY_PERCENT = function() {
- return this.getToken(TSqlParser.MAX_MEMORY_PERCENT, 0);
-};
-
-Alter_external_resource_poolContext.prototype.MAX_PROCESSES = function() {
- return this.getToken(TSqlParser.MAX_PROCESSES, 0);
-};
-
-Alter_external_resource_poolContext.prototype.AUTO = function() {
- return this.getToken(TSqlParser.AUTO, 0);
-};
-
-Alter_external_resource_poolContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Alter_external_resource_poolContext.prototype.TO = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.TO);
- } else {
- return this.getToken(TSqlParser.TO, i);
- }
-};
-
-
-Alter_external_resource_poolContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_external_resource_pool(this);
- }
-};
-
-Alter_external_resource_poolContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_external_resource_pool(this);
- }
-};
-
-Alter_external_resource_poolContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_external_resource_pool(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_external_resource_poolContext = Alter_external_resource_poolContext;
-
-TSqlParser.prototype.alter_external_resource_pool = function() {
-
- var localctx = new Alter_external_resource_poolContext(this, this._ctx, this.state);
- this.enterRule(localctx, 300, TSqlParser.RULE_alter_external_resource_pool);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 3393;
- this.match(TSqlParser.ALTER);
- this.state = 3394;
- this.match(TSqlParser.EXTERNAL);
- this.state = 3395;
- this.match(TSqlParser.RESOURCE);
- this.state = 3396;
- this.match(TSqlParser.POOL);
- this.state = 3399;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,310,this._ctx);
- switch(la_) {
- case 1:
- this.state = 3397;
- localctx.pool_name = this.id();
- break;
-
- case 2:
- this.state = 3398;
- this.match(TSqlParser.DEFAULT_DOUBLE_QUOTE);
- break;
-
- }
- this.state = 3401;
- this.match(TSqlParser.WITH);
- this.state = 3402;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 3403;
- this.match(TSqlParser.MAX_CPU_PERCENT);
- this.state = 3404;
- this.match(TSqlParser.EQUAL);
- this.state = 3405;
- localctx.max_cpu_percent = this.match(TSqlParser.DECIMAL);
- this.state = 3443;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.AFFINITY:
- case TSqlParser.COMMA:
- this.state = 3407;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 3406;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 3409;
- this.match(TSqlParser.AFFINITY);
- this.state = 3410;
- this.match(TSqlParser.CPU);
- this.state = 3411;
- this.match(TSqlParser.EQUAL);
- this.state = 3425;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.AUTO:
- this.state = 3412;
- this.match(TSqlParser.AUTO);
- break;
- case TSqlParser.DECIMAL:
- case TSqlParser.COMMA:
- this.state = 3421;
- this._errHandler.sync(this);
- var _alt = 1;
- do {
- switch (_alt) {
- case 1:
- this.state = 3421;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,313,this._ctx);
- switch(la_) {
- case 1:
- this.state = 3414;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 3413;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 3416;
- this.match(TSqlParser.DECIMAL);
- this.state = 3417;
- this.match(TSqlParser.TO);
- this.state = 3418;
- this.match(TSqlParser.DECIMAL);
- break;
-
- case 2:
- this.state = 3419;
- this.match(TSqlParser.COMMA);
- this.state = 3420;
- this.match(TSqlParser.DECIMAL);
- break;
-
- }
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 3423;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,314, this._ctx);
- } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
- case TSqlParser.NUMANODE:
- this.state = 3427;
- this.match(TSqlParser.NUMANODE);
- this.state = 3428;
- this.match(TSqlParser.EQUAL);
- this.state = 3439;
- this._errHandler.sync(this);
- var _alt = 1;
- do {
- switch (_alt) {
- case 1:
- this.state = 3439;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,318,this._ctx);
- switch(la_) {
- case 1:
- this.state = 3430;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 3429;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 3432;
- this.match(TSqlParser.DECIMAL);
- this.state = 3433;
- this.match(TSqlParser.TO);
- this.state = 3434;
- this.match(TSqlParser.DECIMAL);
- break;
-
- case 2:
- this.state = 3436;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 3435;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 3438;
- this.match(TSqlParser.DECIMAL);
- break;
-
- }
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 3441;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,319, this._ctx);
- } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 3451;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,322,this._ctx);
- if(la_===1) {
- this.state = 3446;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 3445;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 3448;
- this.match(TSqlParser.MAX_MEMORY_PERCENT);
- this.state = 3449;
- this.match(TSqlParser.EQUAL);
- this.state = 3450;
- localctx.max_memory_percent = this.match(TSqlParser.DECIMAL);
-
- }
- this.state = 3459;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.MAX_PROCESSES || _la===TSqlParser.COMMA) {
- this.state = 3454;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 3453;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 3456;
- this.match(TSqlParser.MAX_PROCESSES);
- this.state = 3457;
- this.match(TSqlParser.EQUAL);
- this.state = 3458;
- localctx.max_processes = this.match(TSqlParser.DECIMAL);
- }
-
- this.state = 3461;
- this.match(TSqlParser.RR_BRACKET);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_external_resource_poolContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_external_resource_pool;
- this.pool_name = null; // IdContext
- this.max_cpu_percent = null; // Token
- this.max_memory_percent = null; // Token
- this.max_processes = null; // Token
- return this;
-}
-
-Create_external_resource_poolContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_external_resource_poolContext.prototype.constructor = Create_external_resource_poolContext;
-
-Create_external_resource_poolContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_external_resource_poolContext.prototype.EXTERNAL = function() {
- return this.getToken(TSqlParser.EXTERNAL, 0);
-};
-
-Create_external_resource_poolContext.prototype.RESOURCE = function() {
- return this.getToken(TSqlParser.RESOURCE, 0);
-};
-
-Create_external_resource_poolContext.prototype.POOL = function() {
- return this.getToken(TSqlParser.POOL, 0);
-};
-
-Create_external_resource_poolContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Create_external_resource_poolContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Create_external_resource_poolContext.prototype.MAX_CPU_PERCENT = function() {
- return this.getToken(TSqlParser.MAX_CPU_PERCENT, 0);
-};
-
-Create_external_resource_poolContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-Create_external_resource_poolContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Create_external_resource_poolContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Create_external_resource_poolContext.prototype.DECIMAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DECIMAL);
- } else {
- return this.getToken(TSqlParser.DECIMAL, i);
- }
-};
-
-
-Create_external_resource_poolContext.prototype.AFFINITY = function() {
- return this.getToken(TSqlParser.AFFINITY, 0);
-};
-
-Create_external_resource_poolContext.prototype.CPU = function() {
- return this.getToken(TSqlParser.CPU, 0);
-};
-
-Create_external_resource_poolContext.prototype.NUMANODE = function() {
- return this.getToken(TSqlParser.NUMANODE, 0);
-};
-
-Create_external_resource_poolContext.prototype.MAX_MEMORY_PERCENT = function() {
- return this.getToken(TSqlParser.MAX_MEMORY_PERCENT, 0);
-};
-
-Create_external_resource_poolContext.prototype.MAX_PROCESSES = function() {
- return this.getToken(TSqlParser.MAX_PROCESSES, 0);
-};
-
-Create_external_resource_poolContext.prototype.AUTO = function() {
- return this.getToken(TSqlParser.AUTO, 0);
-};
-
-Create_external_resource_poolContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Create_external_resource_poolContext.prototype.TO = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.TO);
- } else {
- return this.getToken(TSqlParser.TO, i);
- }
-};
-
-
-Create_external_resource_poolContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_external_resource_pool(this);
- }
-};
-
-Create_external_resource_poolContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_external_resource_pool(this);
- }
-};
-
-Create_external_resource_poolContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_external_resource_pool(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_external_resource_poolContext = Create_external_resource_poolContext;
-
-TSqlParser.prototype.create_external_resource_pool = function() {
-
- var localctx = new Create_external_resource_poolContext(this, this._ctx, this.state);
- this.enterRule(localctx, 302, TSqlParser.RULE_create_external_resource_pool);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 3463;
- this.match(TSqlParser.CREATE);
- this.state = 3464;
- this.match(TSqlParser.EXTERNAL);
- this.state = 3465;
- this.match(TSqlParser.RESOURCE);
- this.state = 3466;
- this.match(TSqlParser.POOL);
- this.state = 3467;
- localctx.pool_name = this.id();
- this.state = 3468;
- this.match(TSqlParser.WITH);
- this.state = 3469;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 3470;
- this.match(TSqlParser.MAX_CPU_PERCENT);
- this.state = 3471;
- this.match(TSqlParser.EQUAL);
- this.state = 3472;
- localctx.max_cpu_percent = this.match(TSqlParser.DECIMAL);
- this.state = 3510;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.AFFINITY:
- case TSqlParser.COMMA:
- this.state = 3474;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 3473;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 3476;
- this.match(TSqlParser.AFFINITY);
- this.state = 3477;
- this.match(TSqlParser.CPU);
- this.state = 3478;
- this.match(TSqlParser.EQUAL);
- this.state = 3492;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.AUTO:
- this.state = 3479;
- this.match(TSqlParser.AUTO);
- break;
- case TSqlParser.DECIMAL:
- case TSqlParser.COMMA:
- this.state = 3488;
- this._errHandler.sync(this);
- var _alt = 1;
- do {
- switch (_alt) {
- case 1:
- this.state = 3488;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,327,this._ctx);
- switch(la_) {
- case 1:
- this.state = 3481;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 3480;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 3483;
- this.match(TSqlParser.DECIMAL);
- this.state = 3484;
- this.match(TSqlParser.TO);
- this.state = 3485;
- this.match(TSqlParser.DECIMAL);
- break;
-
- case 2:
- this.state = 3486;
- this.match(TSqlParser.COMMA);
- this.state = 3487;
- this.match(TSqlParser.DECIMAL);
- break;
-
- }
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 3490;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,328, this._ctx);
- } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
- case TSqlParser.NUMANODE:
- this.state = 3494;
- this.match(TSqlParser.NUMANODE);
- this.state = 3495;
- this.match(TSqlParser.EQUAL);
- this.state = 3506;
- this._errHandler.sync(this);
- var _alt = 1;
- do {
- switch (_alt) {
- case 1:
- this.state = 3506;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,332,this._ctx);
- switch(la_) {
- case 1:
- this.state = 3497;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 3496;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 3499;
- this.match(TSqlParser.DECIMAL);
- this.state = 3500;
- this.match(TSqlParser.TO);
- this.state = 3501;
- this.match(TSqlParser.DECIMAL);
- break;
-
- case 2:
- this.state = 3503;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 3502;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 3505;
- this.match(TSqlParser.DECIMAL);
- break;
-
- }
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 3508;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,333, this._ctx);
- } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 3518;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,336,this._ctx);
- if(la_===1) {
- this.state = 3513;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 3512;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 3515;
- this.match(TSqlParser.MAX_MEMORY_PERCENT);
- this.state = 3516;
- this.match(TSqlParser.EQUAL);
- this.state = 3517;
- localctx.max_memory_percent = this.match(TSqlParser.DECIMAL);
-
- }
- this.state = 3526;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.MAX_PROCESSES || _la===TSqlParser.COMMA) {
- this.state = 3521;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 3520;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 3523;
- this.match(TSqlParser.MAX_PROCESSES);
- this.state = 3524;
- this.match(TSqlParser.EQUAL);
- this.state = 3525;
- localctx.max_processes = this.match(TSqlParser.DECIMAL);
- }
-
- this.state = 3528;
- this.match(TSqlParser.RR_BRACKET);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_fulltext_catalogContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_fulltext_catalog;
- this.catalog_name = null; // IdContext
- return this;
-}
-
-Alter_fulltext_catalogContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_fulltext_catalogContext.prototype.constructor = Alter_fulltext_catalogContext;
-
-Alter_fulltext_catalogContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Alter_fulltext_catalogContext.prototype.FULLTEXT = function() {
- return this.getToken(TSqlParser.FULLTEXT, 0);
-};
-
-Alter_fulltext_catalogContext.prototype.CATALOG = function() {
- return this.getToken(TSqlParser.CATALOG, 0);
-};
-
-Alter_fulltext_catalogContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Alter_fulltext_catalogContext.prototype.REBUILD = function() {
- return this.getToken(TSqlParser.REBUILD, 0);
-};
-
-Alter_fulltext_catalogContext.prototype.REORGANIZE = function() {
- return this.getToken(TSqlParser.REORGANIZE, 0);
-};
-
-Alter_fulltext_catalogContext.prototype.AS = function() {
- return this.getToken(TSqlParser.AS, 0);
-};
-
-Alter_fulltext_catalogContext.prototype.DEFAULT = function() {
- return this.getToken(TSqlParser.DEFAULT, 0);
-};
-
-Alter_fulltext_catalogContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Alter_fulltext_catalogContext.prototype.ACCENT_SENSITIVITY = function() {
- return this.getToken(TSqlParser.ACCENT_SENSITIVITY, 0);
-};
-
-Alter_fulltext_catalogContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Alter_fulltext_catalogContext.prototype.ON = function() {
- return this.getToken(TSqlParser.ON, 0);
-};
-
-Alter_fulltext_catalogContext.prototype.OFF = function() {
- return this.getToken(TSqlParser.OFF, 0);
-};
-
-Alter_fulltext_catalogContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_fulltext_catalog(this);
- }
-};
-
-Alter_fulltext_catalogContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_fulltext_catalog(this);
- }
-};
-
-Alter_fulltext_catalogContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_fulltext_catalog(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_fulltext_catalogContext = Alter_fulltext_catalogContext;
-
-TSqlParser.prototype.alter_fulltext_catalog = function() {
-
- var localctx = new Alter_fulltext_catalogContext(this, this._ctx, this.state);
- this.enterRule(localctx, 304, TSqlParser.RULE_alter_fulltext_catalog);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 3530;
- this.match(TSqlParser.ALTER);
- this.state = 3531;
- this.match(TSqlParser.FULLTEXT);
- this.state = 3532;
- this.match(TSqlParser.CATALOG);
- this.state = 3533;
- localctx.catalog_name = this.id();
- this.state = 3544;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.REBUILD:
- this.state = 3534;
- this.match(TSqlParser.REBUILD);
- this.state = 3539;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,339,this._ctx);
- if(la_===1) {
- this.state = 3535;
- this.match(TSqlParser.WITH);
- this.state = 3536;
- this.match(TSqlParser.ACCENT_SENSITIVITY);
- this.state = 3537;
- this.match(TSqlParser.EQUAL);
- this.state = 3538;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
-
- }
- break;
- case TSqlParser.REORGANIZE:
- this.state = 3541;
- this.match(TSqlParser.REORGANIZE);
- break;
- case TSqlParser.AS:
- this.state = 3542;
- this.match(TSqlParser.AS);
- this.state = 3543;
- this.match(TSqlParser.DEFAULT);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_fulltext_catalogContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_fulltext_catalog;
- this.catalog_name = null; // IdContext
- this.filegroup = null; // IdContext
- this.rootpath = null; // Token
- this.owner_name = null; // IdContext
- return this;
-}
-
-Create_fulltext_catalogContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_fulltext_catalogContext.prototype.constructor = Create_fulltext_catalogContext;
-
-Create_fulltext_catalogContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_fulltext_catalogContext.prototype.FULLTEXT = function() {
- return this.getToken(TSqlParser.FULLTEXT, 0);
-};
-
-Create_fulltext_catalogContext.prototype.CATALOG = function() {
- return this.getToken(TSqlParser.CATALOG, 0);
-};
-
-Create_fulltext_catalogContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Create_fulltext_catalogContext.prototype.ON = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ON);
- } else {
- return this.getToken(TSqlParser.ON, i);
- }
-};
-
-
-Create_fulltext_catalogContext.prototype.FILEGROUP = function() {
- return this.getToken(TSqlParser.FILEGROUP, 0);
-};
-
-Create_fulltext_catalogContext.prototype.IN = function() {
- return this.getToken(TSqlParser.IN, 0);
-};
-
-Create_fulltext_catalogContext.prototype.PATH = function() {
- return this.getToken(TSqlParser.PATH, 0);
-};
-
-Create_fulltext_catalogContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Create_fulltext_catalogContext.prototype.ACCENT_SENSITIVITY = function() {
- return this.getToken(TSqlParser.ACCENT_SENSITIVITY, 0);
-};
-
-Create_fulltext_catalogContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Create_fulltext_catalogContext.prototype.AS = function() {
- return this.getToken(TSqlParser.AS, 0);
-};
-
-Create_fulltext_catalogContext.prototype.DEFAULT = function() {
- return this.getToken(TSqlParser.DEFAULT, 0);
-};
-
-Create_fulltext_catalogContext.prototype.AUTHORIZATION = function() {
- return this.getToken(TSqlParser.AUTHORIZATION, 0);
-};
-
-Create_fulltext_catalogContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Create_fulltext_catalogContext.prototype.OFF = function() {
- return this.getToken(TSqlParser.OFF, 0);
-};
-
-Create_fulltext_catalogContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_fulltext_catalog(this);
- }
-};
-
-Create_fulltext_catalogContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_fulltext_catalog(this);
- }
-};
-
-Create_fulltext_catalogContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_fulltext_catalog(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_fulltext_catalogContext = Create_fulltext_catalogContext;
-
-TSqlParser.prototype.create_fulltext_catalog = function() {
-
- var localctx = new Create_fulltext_catalogContext(this, this._ctx, this.state);
- this.enterRule(localctx, 306, TSqlParser.RULE_create_fulltext_catalog);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 3546;
- this.match(TSqlParser.CREATE);
- this.state = 3547;
- this.match(TSqlParser.FULLTEXT);
- this.state = 3548;
- this.match(TSqlParser.CATALOG);
- this.state = 3549;
- localctx.catalog_name = this.id();
- this.state = 3553;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.ON) {
- this.state = 3550;
- this.match(TSqlParser.ON);
- this.state = 3551;
- this.match(TSqlParser.FILEGROUP);
- this.state = 3552;
- localctx.filegroup = this.id();
- }
-
- this.state = 3558;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.IN) {
- this.state = 3555;
- this.match(TSqlParser.IN);
- this.state = 3556;
- this.match(TSqlParser.PATH);
- this.state = 3557;
- localctx.rootpath = this.match(TSqlParser.STRING);
- }
-
- this.state = 3564;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,343,this._ctx);
- if(la_===1) {
- this.state = 3560;
- this.match(TSqlParser.WITH);
- this.state = 3561;
- this.match(TSqlParser.ACCENT_SENSITIVITY);
- this.state = 3562;
- this.match(TSqlParser.EQUAL);
- this.state = 3563;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
-
- }
- this.state = 3568;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.AS) {
- this.state = 3566;
- this.match(TSqlParser.AS);
- this.state = 3567;
- this.match(TSqlParser.DEFAULT);
- }
-
- this.state = 3572;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.AUTHORIZATION) {
- this.state = 3570;
- this.match(TSqlParser.AUTHORIZATION);
- this.state = 3571;
- localctx.owner_name = this.id();
- }
-
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_fulltext_stoplistContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_fulltext_stoplist;
- this.stoplist_name = null; // IdContext
- this.stopword = null; // Token
- return this;
-}
-
-Alter_fulltext_stoplistContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_fulltext_stoplistContext.prototype.constructor = Alter_fulltext_stoplistContext;
-
-Alter_fulltext_stoplistContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Alter_fulltext_stoplistContext.prototype.FULLTEXT = function() {
- return this.getToken(TSqlParser.FULLTEXT, 0);
-};
-
-Alter_fulltext_stoplistContext.prototype.STOPLIST = function() {
- return this.getToken(TSqlParser.STOPLIST, 0);
-};
-
-Alter_fulltext_stoplistContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Alter_fulltext_stoplistContext.prototype.ADD = function() {
- return this.getToken(TSqlParser.ADD, 0);
-};
-
-Alter_fulltext_stoplistContext.prototype.LANGUAGE = function() {
- return this.getToken(TSqlParser.LANGUAGE, 0);
-};
-
-Alter_fulltext_stoplistContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Alter_fulltext_stoplistContext.prototype.STRING = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.STRING);
- } else {
- return this.getToken(TSqlParser.STRING, i);
- }
-};
-
-
-Alter_fulltext_stoplistContext.prototype.DECIMAL = function() {
- return this.getToken(TSqlParser.DECIMAL, 0);
-};
-
-Alter_fulltext_stoplistContext.prototype.BINARY = function() {
- return this.getToken(TSqlParser.BINARY, 0);
-};
-
-Alter_fulltext_stoplistContext.prototype.ALL = function() {
- return this.getToken(TSqlParser.ALL, 0);
-};
-
-Alter_fulltext_stoplistContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_fulltext_stoplist(this);
- }
-};
-
-Alter_fulltext_stoplistContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_fulltext_stoplist(this);
- }
-};
-
-Alter_fulltext_stoplistContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_fulltext_stoplist(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_fulltext_stoplistContext = Alter_fulltext_stoplistContext;
-
-TSqlParser.prototype.alter_fulltext_stoplist = function() {
-
- var localctx = new Alter_fulltext_stoplistContext(this, this._ctx, this.state);
- this.enterRule(localctx, 308, TSqlParser.RULE_alter_fulltext_stoplist);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 3574;
- this.match(TSqlParser.ALTER);
- this.state = 3575;
- this.match(TSqlParser.FULLTEXT);
- this.state = 3576;
- this.match(TSqlParser.STOPLIST);
- this.state = 3577;
- localctx.stoplist_name = this.id();
- this.state = 3591;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.ADD:
- this.state = 3578;
- this.match(TSqlParser.ADD);
- this.state = 3579;
- localctx.stopword = this.match(TSqlParser.STRING);
- this.state = 3580;
- this.match(TSqlParser.LANGUAGE);
- this.state = 3581;
- _la = this._input.LA(1);
- if(!(((((_la - 800)) & ~0x1f) == 0 && ((1 << (_la - 800)) & ((1 << (TSqlParser.DECIMAL - 800)) | (1 << (TSqlParser.STRING - 800)) | (1 << (TSqlParser.BINARY - 800)))) !== 0))) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- case TSqlParser.DROP:
- this.state = 3582;
- this.match(TSqlParser.DROP);
- this.state = 3589;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,346,this._ctx);
- switch(la_) {
- case 1:
- this.state = 3583;
- localctx.stopword = this.match(TSqlParser.STRING);
- this.state = 3584;
- this.match(TSqlParser.LANGUAGE);
- this.state = 3585;
- _la = this._input.LA(1);
- if(!(((((_la - 800)) & ~0x1f) == 0 && ((1 << (_la - 800)) & ((1 << (TSqlParser.DECIMAL - 800)) | (1 << (TSqlParser.STRING - 800)) | (1 << (TSqlParser.BINARY - 800)))) !== 0))) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
-
- case 2:
- this.state = 3586;
- this.match(TSqlParser.ALL);
- this.state = 3587;
- _la = this._input.LA(1);
- if(!(((((_la - 800)) & ~0x1f) == 0 && ((1 << (_la - 800)) & ((1 << (TSqlParser.DECIMAL - 800)) | (1 << (TSqlParser.STRING - 800)) | (1 << (TSqlParser.BINARY - 800)))) !== 0))) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
-
- case 3:
- this.state = 3588;
- this.match(TSqlParser.ALL);
- break;
-
- }
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_fulltext_stoplistContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_fulltext_stoplist;
- this.stoplist_name = null; // IdContext
- this.database_name = null; // IdContext
- this.source_stoplist_name = null; // IdContext
- this.owner_name = null; // IdContext
- return this;
-}
-
-Create_fulltext_stoplistContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_fulltext_stoplistContext.prototype.constructor = Create_fulltext_stoplistContext;
-
-Create_fulltext_stoplistContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_fulltext_stoplistContext.prototype.FULLTEXT = function() {
- return this.getToken(TSqlParser.FULLTEXT, 0);
-};
-
-Create_fulltext_stoplistContext.prototype.STOPLIST = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.STOPLIST);
- } else {
- return this.getToken(TSqlParser.STOPLIST, i);
- }
-};
-
-
-Create_fulltext_stoplistContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Create_fulltext_stoplistContext.prototype.FROM = function() {
- return this.getToken(TSqlParser.FROM, 0);
-};
-
-Create_fulltext_stoplistContext.prototype.AUTHORIZATION = function() {
- return this.getToken(TSqlParser.AUTHORIZATION, 0);
-};
-
-Create_fulltext_stoplistContext.prototype.SYSTEM = function() {
- return this.getToken(TSqlParser.SYSTEM, 0);
-};
-
-Create_fulltext_stoplistContext.prototype.DOT = function() {
- return this.getToken(TSqlParser.DOT, 0);
-};
-
-Create_fulltext_stoplistContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_fulltext_stoplist(this);
- }
-};
-
-Create_fulltext_stoplistContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_fulltext_stoplist(this);
- }
-};
-
-Create_fulltext_stoplistContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_fulltext_stoplist(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_fulltext_stoplistContext = Create_fulltext_stoplistContext;
-
-TSqlParser.prototype.create_fulltext_stoplist = function() {
-
- var localctx = new Create_fulltext_stoplistContext(this, this._ctx, this.state);
- this.enterRule(localctx, 310, TSqlParser.RULE_create_fulltext_stoplist);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 3593;
- this.match(TSqlParser.CREATE);
- this.state = 3594;
- this.match(TSqlParser.FULLTEXT);
- this.state = 3595;
- this.match(TSqlParser.STOPLIST);
- this.state = 3596;
- localctx.stoplist_name = this.id();
- this.state = 3608;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.FROM) {
- this.state = 3597;
- this.match(TSqlParser.FROM);
- this.state = 3606;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,349,this._ctx);
- switch(la_) {
- case 1:
- this.state = 3601;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,348,this._ctx);
- if(la_===1) {
- this.state = 3598;
- localctx.database_name = this.id();
- this.state = 3599;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 3603;
- localctx.source_stoplist_name = this.id();
- break;
-
- case 2:
- this.state = 3604;
- this.match(TSqlParser.SYSTEM);
- this.state = 3605;
- this.match(TSqlParser.STOPLIST);
- break;
-
- }
- }
-
- this.state = 3612;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.AUTHORIZATION) {
- this.state = 3610;
- this.match(TSqlParser.AUTHORIZATION);
- this.state = 3611;
- localctx.owner_name = this.id();
- }
-
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_login_sql_serverContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_login_sql_server;
- this.login_name = null; // IdContext
- this.password = null; // Token
- this.password_hash = null; // Token
- this.old_password = null; // Token
- this.default_database = null; // IdContext
- this.default_laguage = null; // IdContext
- this.credential_name = null; // IdContext
- return this;
-}
-
-Alter_login_sql_serverContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_login_sql_serverContext.prototype.constructor = Alter_login_sql_serverContext;
-
-Alter_login_sql_serverContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Alter_login_sql_serverContext.prototype.LOGIN = function() {
- return this.getToken(TSqlParser.LOGIN, 0);
-};
-
-Alter_login_sql_serverContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Alter_login_sql_serverContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Alter_login_sql_serverContext.prototype.CREDENTIAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.CREDENTIAL);
- } else {
- return this.getToken(TSqlParser.CREDENTIAL, i);
- }
-};
-
-
-Alter_login_sql_serverContext.prototype.ADD = function() {
- return this.getToken(TSqlParser.ADD, 0);
-};
-
-Alter_login_sql_serverContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Alter_login_sql_serverContext.prototype.OLD_PASSWORD = function() {
- return this.getToken(TSqlParser.OLD_PASSWORD, 0);
-};
-
-Alter_login_sql_serverContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-Alter_login_sql_serverContext.prototype.DEFAULT_DATABASE = function() {
- return this.getToken(TSqlParser.DEFAULT_DATABASE, 0);
-};
-
-Alter_login_sql_serverContext.prototype.DEFAULT_LANGUAGE = function() {
- return this.getToken(TSqlParser.DEFAULT_LANGUAGE, 0);
-};
-
-Alter_login_sql_serverContext.prototype.NAME = function() {
- return this.getToken(TSqlParser.NAME, 0);
-};
-
-Alter_login_sql_serverContext.prototype.CHECK_POLICY = function() {
- return this.getToken(TSqlParser.CHECK_POLICY, 0);
-};
-
-Alter_login_sql_serverContext.prototype.CHECK_EXPIRATION = function() {
- return this.getToken(TSqlParser.CHECK_EXPIRATION, 0);
-};
-
-Alter_login_sql_serverContext.prototype.NO = function() {
- return this.getToken(TSqlParser.NO, 0);
-};
-
-Alter_login_sql_serverContext.prototype.ENABLE = function() {
- return this.getToken(TSqlParser.ENABLE, 0);
-};
-
-Alter_login_sql_serverContext.prototype.DISABLE = function() {
- return this.getToken(TSqlParser.DISABLE, 0);
-};
-
-Alter_login_sql_serverContext.prototype.STRING = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.STRING);
- } else {
- return this.getToken(TSqlParser.STRING, i);
- }
-};
-
-
-Alter_login_sql_serverContext.prototype.ON = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ON);
- } else {
- return this.getToken(TSqlParser.ON, i);
- }
-};
-
-
-Alter_login_sql_serverContext.prototype.OFF = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.OFF);
- } else {
- return this.getToken(TSqlParser.OFF, i);
- }
-};
-
-
-Alter_login_sql_serverContext.prototype.PASSWORD = function() {
- return this.getToken(TSqlParser.PASSWORD, 0);
-};
-
-Alter_login_sql_serverContext.prototype.HASHED = function() {
- return this.getToken(TSqlParser.HASHED, 0);
-};
-
-Alter_login_sql_serverContext.prototype.MUST_CHANGE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.MUST_CHANGE);
- } else {
- return this.getToken(TSqlParser.MUST_CHANGE, i);
- }
-};
-
-
-Alter_login_sql_serverContext.prototype.UNLOCK = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.UNLOCK);
- } else {
- return this.getToken(TSqlParser.UNLOCK, i);
- }
-};
-
-
-Alter_login_sql_serverContext.prototype.BINARY = function() {
- return this.getToken(TSqlParser.BINARY, 0);
-};
-
-Alter_login_sql_serverContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_login_sql_server(this);
- }
-};
-
-Alter_login_sql_serverContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_login_sql_server(this);
- }
-};
-
-Alter_login_sql_serverContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_login_sql_server(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_login_sql_serverContext = Alter_login_sql_serverContext;
-
-TSqlParser.prototype.alter_login_sql_server = function() {
-
- var localctx = new Alter_login_sql_serverContext(this, this._ctx, this.state);
- this.enterRule(localctx, 312, TSqlParser.RULE_alter_login_sql_server);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 3614;
- this.match(TSqlParser.ALTER);
- this.state = 3615;
- this.match(TSqlParser.LOGIN);
- this.state = 3616;
- localctx.login_name = this.id();
- this.state = 3684;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,365,this._ctx);
- switch(la_) {
- case 1:
- this.state = 3618;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,352,this._ctx);
- if(la_===1) {
- this.state = 3617;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.DISABLE || _la===TSqlParser.ENABLE)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
-
- }
- break;
-
- case 2:
- this.state = 3620;
- this.match(TSqlParser.WITH);
- this.state = 3634;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.PASSWORD) {
- this.state = 3621;
- this.match(TSqlParser.PASSWORD);
- this.state = 3622;
- this.match(TSqlParser.EQUAL);
- this.state = 3626;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.STRING:
- this.state = 3623;
- localctx.password = this.match(TSqlParser.STRING);
- break;
- case TSqlParser.BINARY:
- this.state = 3624;
- localctx.password_hash = this.match(TSqlParser.BINARY);
- this.state = 3625;
- this.match(TSqlParser.HASHED);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 3631;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.MUST_CHANGE || _la===TSqlParser.UNLOCK) {
- this.state = 3628;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.MUST_CHANGE || _la===TSqlParser.UNLOCK)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 3633;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- }
-
- this.state = 3645;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.OLD_PASSWORD) {
- this.state = 3636;
- this.match(TSqlParser.OLD_PASSWORD);
- this.state = 3637;
- this.match(TSqlParser.EQUAL);
- this.state = 3638;
- localctx.old_password = this.match(TSqlParser.STRING);
- this.state = 3642;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.MUST_CHANGE || _la===TSqlParser.UNLOCK) {
- this.state = 3639;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.MUST_CHANGE || _la===TSqlParser.UNLOCK)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 3644;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- }
-
- this.state = 3650;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.DEFAULT_DATABASE) {
- this.state = 3647;
- this.match(TSqlParser.DEFAULT_DATABASE);
- this.state = 3648;
- this.match(TSqlParser.EQUAL);
- this.state = 3649;
- localctx.default_database = this.id();
- }
-
- this.state = 3655;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,359,this._ctx);
- if(la_===1) {
- this.state = 3652;
- this.match(TSqlParser.DEFAULT_LANGUAGE);
- this.state = 3653;
- this.match(TSqlParser.EQUAL);
- this.state = 3654;
- localctx.default_laguage = this.id();
-
- }
- this.state = 3660;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,360,this._ctx);
- if(la_===1) {
- this.state = 3657;
- this.match(TSqlParser.NAME);
- this.state = 3658;
- this.match(TSqlParser.EQUAL);
- this.state = 3659;
- localctx.login_name = this.id();
-
- }
- this.state = 3665;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.CHECK_POLICY) {
- this.state = 3662;
- this.match(TSqlParser.CHECK_POLICY);
- this.state = 3663;
- this.match(TSqlParser.EQUAL);
- this.state = 3664;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- }
-
- this.state = 3670;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.CHECK_EXPIRATION) {
- this.state = 3667;
- this.match(TSqlParser.CHECK_EXPIRATION);
- this.state = 3668;
- this.match(TSqlParser.EQUAL);
- this.state = 3669;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- }
-
- this.state = 3675;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,363,this._ctx);
- if(la_===1) {
- this.state = 3672;
- this.match(TSqlParser.CREDENTIAL);
- this.state = 3673;
- this.match(TSqlParser.EQUAL);
- this.state = 3674;
- localctx.credential_name = this.id();
-
- }
- this.state = 3679;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,364,this._ctx);
- if(la_===1) {
- this.state = 3677;
- this.match(TSqlParser.NO);
- this.state = 3678;
- this.match(TSqlParser.CREDENTIAL);
-
- }
- break;
-
- case 3:
- this.state = 3681;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.ADD || _la===TSqlParser.DROP)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 3682;
- this.match(TSqlParser.CREDENTIAL);
- this.state = 3683;
- localctx.credential_name = this.id();
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_login_sql_serverContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_login_sql_server;
- this.login_name = null; // IdContext
- this.password = null; // Token
- this.password_hash = null; // Token
- this.sid = null; // Token
- this.default_database = null; // IdContext
- this.default_laguage = null; // IdContext
- this.credential_name = null; // IdContext
- this.default_language = null; // Token
- this.certname = null; // IdContext
- this.asym_key_name = null; // IdContext
- return this;
-}
-
-Create_login_sql_serverContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_login_sql_serverContext.prototype.constructor = Create_login_sql_serverContext;
-
-Create_login_sql_serverContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_login_sql_serverContext.prototype.LOGIN = function() {
- return this.getToken(TSqlParser.LOGIN, 0);
-};
-
-Create_login_sql_serverContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Create_login_sql_serverContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Create_login_sql_serverContext.prototype.FROM = function() {
- return this.getToken(TSqlParser.FROM, 0);
-};
-
-Create_login_sql_serverContext.prototype.SID = function() {
- return this.getToken(TSqlParser.SID, 0);
-};
-
-Create_login_sql_serverContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-Create_login_sql_serverContext.prototype.DEFAULT_DATABASE = function() {
- return this.getToken(TSqlParser.DEFAULT_DATABASE, 0);
-};
-
-Create_login_sql_serverContext.prototype.DEFAULT_LANGUAGE = function() {
- return this.getToken(TSqlParser.DEFAULT_LANGUAGE, 0);
-};
-
-Create_login_sql_serverContext.prototype.CHECK_EXPIRATION = function() {
- return this.getToken(TSqlParser.CHECK_EXPIRATION, 0);
-};
-
-Create_login_sql_serverContext.prototype.CHECK_POLICY = function() {
- return this.getToken(TSqlParser.CHECK_POLICY, 0);
-};
-
-Create_login_sql_serverContext.prototype.CREDENTIAL = function() {
- return this.getToken(TSqlParser.CREDENTIAL, 0);
-};
-
-Create_login_sql_serverContext.prototype.BINARY = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.BINARY);
- } else {
- return this.getToken(TSqlParser.BINARY, i);
- }
-};
-
-
-Create_login_sql_serverContext.prototype.ON = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ON);
- } else {
- return this.getToken(TSqlParser.ON, i);
- }
-};
-
-
-Create_login_sql_serverContext.prototype.OFF = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.OFF);
- } else {
- return this.getToken(TSqlParser.OFF, i);
- }
-};
-
-
-Create_login_sql_serverContext.prototype.WINDOWS = function() {
- return this.getToken(TSqlParser.WINDOWS, 0);
-};
-
-Create_login_sql_serverContext.prototype.CERTIFICATE = function() {
- return this.getToken(TSqlParser.CERTIFICATE, 0);
-};
-
-Create_login_sql_serverContext.prototype.ASYMMETRIC = function() {
- return this.getToken(TSqlParser.ASYMMETRIC, 0);
-};
-
-Create_login_sql_serverContext.prototype.KEY = function() {
- return this.getToken(TSqlParser.KEY, 0);
-};
-
-Create_login_sql_serverContext.prototype.PASSWORD = function() {
- return this.getToken(TSqlParser.PASSWORD, 0);
-};
-
-Create_login_sql_serverContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Create_login_sql_serverContext.prototype.HASHED = function() {
- return this.getToken(TSqlParser.HASHED, 0);
-};
-
-Create_login_sql_serverContext.prototype.MUST_CHANGE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.MUST_CHANGE);
- } else {
- return this.getToken(TSqlParser.MUST_CHANGE, i);
- }
-};
-
-
-Create_login_sql_serverContext.prototype.UNLOCK = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.UNLOCK);
- } else {
- return this.getToken(TSqlParser.UNLOCK, i);
- }
-};
-
-
-Create_login_sql_serverContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Create_login_sql_serverContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_login_sql_server(this);
- }
-};
-
-Create_login_sql_serverContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_login_sql_server(this);
- }
-};
-
-Create_login_sql_serverContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_login_sql_server(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_login_sql_serverContext = Create_login_sql_serverContext;
-
-TSqlParser.prototype.create_login_sql_server = function() {
-
- var localctx = new Create_login_sql_serverContext(this, this._ctx, this.state);
- this.enterRule(localctx, 314, TSqlParser.RULE_create_login_sql_server);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 3686;
- this.match(TSqlParser.CREATE);
- this.state = 3687;
- this.match(TSqlParser.LOGIN);
- this.state = 3688;
- localctx.login_name = this.id();
- this.state = 3779;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.WITH:
- this.state = 3689;
- this.match(TSqlParser.WITH);
- this.state = 3703;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.PASSWORD) {
- this.state = 3690;
- this.match(TSqlParser.PASSWORD);
- this.state = 3691;
- this.match(TSqlParser.EQUAL);
- this.state = 3695;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.STRING:
- this.state = 3692;
- localctx.password = this.match(TSqlParser.STRING);
- break;
- case TSqlParser.BINARY:
- this.state = 3693;
- localctx.password_hash = this.match(TSqlParser.BINARY);
- this.state = 3694;
- this.match(TSqlParser.HASHED);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 3700;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.MUST_CHANGE || _la===TSqlParser.UNLOCK) {
- this.state = 3697;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.MUST_CHANGE || _la===TSqlParser.UNLOCK)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 3702;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- }
-
- this.state = 3711;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,370,this._ctx);
- if(la_===1) {
- this.state = 3706;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 3705;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 3708;
- this.match(TSqlParser.SID);
- this.state = 3709;
- this.match(TSqlParser.EQUAL);
- this.state = 3710;
- localctx.sid = this.match(TSqlParser.BINARY);
-
- }
- this.state = 3719;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,372,this._ctx);
- if(la_===1) {
- this.state = 3714;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 3713;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 3716;
- this.match(TSqlParser.DEFAULT_DATABASE);
- this.state = 3717;
- this.match(TSqlParser.EQUAL);
- this.state = 3718;
- localctx.default_database = this.id();
-
- }
- this.state = 3727;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,374,this._ctx);
- if(la_===1) {
- this.state = 3722;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 3721;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 3724;
- this.match(TSqlParser.DEFAULT_LANGUAGE);
- this.state = 3725;
- this.match(TSqlParser.EQUAL);
- this.state = 3726;
- localctx.default_laguage = this.id();
-
- }
- this.state = 3735;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,376,this._ctx);
- if(la_===1) {
- this.state = 3730;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 3729;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 3732;
- this.match(TSqlParser.CHECK_EXPIRATION);
- this.state = 3733;
- this.match(TSqlParser.EQUAL);
- this.state = 3734;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
-
- }
- this.state = 3743;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,378,this._ctx);
- if(la_===1) {
- this.state = 3738;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 3737;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 3740;
- this.match(TSqlParser.CHECK_POLICY);
- this.state = 3741;
- this.match(TSqlParser.EQUAL);
- this.state = 3742;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
-
- }
- this.state = 3751;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,380,this._ctx);
- if(la_===1) {
- this.state = 3746;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 3745;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 3748;
- this.match(TSqlParser.CREDENTIAL);
- this.state = 3749;
- this.match(TSqlParser.EQUAL);
- this.state = 3750;
- localctx.credential_name = this.id();
-
- }
- break;
- case TSqlParser.FROM:
- this.state = 3753;
- this.match(TSqlParser.FROM);
- this.state = 3777;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.WINDOWS:
- this.state = 3754;
- this.match(TSqlParser.WINDOWS);
-
- this.state = 3755;
- this.match(TSqlParser.WITH);
- this.state = 3762;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,382,this._ctx);
- if(la_===1) {
- this.state = 3757;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 3756;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 3759;
- this.match(TSqlParser.DEFAULT_DATABASE);
- this.state = 3760;
- this.match(TSqlParser.EQUAL);
- this.state = 3761;
- localctx.default_database = this.id();
-
- }
- this.state = 3770;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,384,this._ctx);
- if(la_===1) {
- this.state = 3765;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 3764;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 3767;
- this.match(TSqlParser.DEFAULT_LANGUAGE);
- this.state = 3768;
- this.match(TSqlParser.EQUAL);
- this.state = 3769;
- localctx.default_language = this.match(TSqlParser.STRING);
-
- }
- break;
- case TSqlParser.CERTIFICATE:
- this.state = 3772;
- this.match(TSqlParser.CERTIFICATE);
- this.state = 3773;
- localctx.certname = this.id();
- break;
- case TSqlParser.ASYMMETRIC:
- this.state = 3774;
- this.match(TSqlParser.ASYMMETRIC);
- this.state = 3775;
- this.match(TSqlParser.KEY);
- this.state = 3776;
- localctx.asym_key_name = this.id();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_login_azure_sqlContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_login_azure_sql;
- this.login_name = null; // IdContext
- this.password = null; // Token
- this.old_password = null; // Token
- return this;
-}
-
-Alter_login_azure_sqlContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_login_azure_sqlContext.prototype.constructor = Alter_login_azure_sqlContext;
-
-Alter_login_azure_sqlContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Alter_login_azure_sqlContext.prototype.LOGIN = function() {
- return this.getToken(TSqlParser.LOGIN, 0);
-};
-
-Alter_login_azure_sqlContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Alter_login_azure_sqlContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Alter_login_azure_sqlContext.prototype.PASSWORD = function() {
- return this.getToken(TSqlParser.PASSWORD, 0);
-};
-
-Alter_login_azure_sqlContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-Alter_login_azure_sqlContext.prototype.NAME = function() {
- return this.getToken(TSqlParser.NAME, 0);
-};
-
-Alter_login_azure_sqlContext.prototype.STRING = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.STRING);
- } else {
- return this.getToken(TSqlParser.STRING, i);
- }
-};
-
-
-Alter_login_azure_sqlContext.prototype.ENABLE = function() {
- return this.getToken(TSqlParser.ENABLE, 0);
-};
-
-Alter_login_azure_sqlContext.prototype.DISABLE = function() {
- return this.getToken(TSqlParser.DISABLE, 0);
-};
-
-Alter_login_azure_sqlContext.prototype.OLD_PASSWORD = function() {
- return this.getToken(TSqlParser.OLD_PASSWORD, 0);
-};
-
-Alter_login_azure_sqlContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_login_azure_sql(this);
- }
-};
-
-Alter_login_azure_sqlContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_login_azure_sql(this);
- }
-};
-
-Alter_login_azure_sqlContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_login_azure_sql(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_login_azure_sqlContext = Alter_login_azure_sqlContext;
-
-TSqlParser.prototype.alter_login_azure_sql = function() {
-
- var localctx = new Alter_login_azure_sqlContext(this, this._ctx, this.state);
- this.enterRule(localctx, 316, TSqlParser.RULE_alter_login_azure_sql);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 3781;
- this.match(TSqlParser.ALTER);
- this.state = 3782;
- this.match(TSqlParser.LOGIN);
- this.state = 3783;
- localctx.login_name = this.id();
- this.state = 3801;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,390,this._ctx);
- switch(la_) {
- case 1:
- this.state = 3785;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,387,this._ctx);
- if(la_===1) {
- this.state = 3784;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.DISABLE || _la===TSqlParser.ENABLE)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
-
- }
- break;
-
- case 2:
- this.state = 3787;
- this.match(TSqlParser.WITH);
- this.state = 3799;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.PASSWORD:
- this.state = 3788;
- this.match(TSqlParser.PASSWORD);
- this.state = 3789;
- this.match(TSqlParser.EQUAL);
- this.state = 3790;
- localctx.password = this.match(TSqlParser.STRING);
- this.state = 3794;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.OLD_PASSWORD) {
- this.state = 3791;
- this.match(TSqlParser.OLD_PASSWORD);
- this.state = 3792;
- this.match(TSqlParser.EQUAL);
- this.state = 3793;
- localctx.old_password = this.match(TSqlParser.STRING);
- }
-
- break;
- case TSqlParser.NAME:
- this.state = 3796;
- this.match(TSqlParser.NAME);
- this.state = 3797;
- this.match(TSqlParser.EQUAL);
- this.state = 3798;
- localctx.login_name = this.id();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_login_azure_sqlContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_login_azure_sql;
- this.login_name = null; // IdContext
- this.sid = null; // Token
- return this;
-}
-
-Create_login_azure_sqlContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_login_azure_sqlContext.prototype.constructor = Create_login_azure_sqlContext;
-
-Create_login_azure_sqlContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_login_azure_sqlContext.prototype.LOGIN = function() {
- return this.getToken(TSqlParser.LOGIN, 0);
-};
-
-Create_login_azure_sqlContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Create_login_azure_sqlContext.prototype.PASSWORD = function() {
- return this.getToken(TSqlParser.PASSWORD, 0);
-};
-
-Create_login_azure_sqlContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-Create_login_azure_sqlContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Create_login_azure_sqlContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Create_login_azure_sqlContext.prototype.SID = function() {
- return this.getToken(TSqlParser.SID, 0);
-};
-
-Create_login_azure_sqlContext.prototype.BINARY = function() {
- return this.getToken(TSqlParser.BINARY, 0);
-};
-
-Create_login_azure_sqlContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_login_azure_sql(this);
- }
-};
-
-Create_login_azure_sqlContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_login_azure_sql(this);
- }
-};
-
-Create_login_azure_sqlContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_login_azure_sql(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_login_azure_sqlContext = Create_login_azure_sqlContext;
-
-TSqlParser.prototype.create_login_azure_sql = function() {
-
- var localctx = new Create_login_azure_sqlContext(this, this._ctx, this.state);
- this.enterRule(localctx, 318, TSqlParser.RULE_create_login_azure_sql);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 3803;
- this.match(TSqlParser.CREATE);
- this.state = 3804;
- this.match(TSqlParser.LOGIN);
- this.state = 3805;
- localctx.login_name = this.id();
- this.state = 3806;
- this.match(TSqlParser.WITH);
- this.state = 3807;
- this.match(TSqlParser.PASSWORD);
- this.state = 3808;
- this.match(TSqlParser.EQUAL);
- this.state = 3809;
- this.match(TSqlParser.STRING);
- this.state = 3813;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,391,this._ctx);
- if(la_===1) {
- this.state = 3810;
- this.match(TSqlParser.SID);
- this.state = 3811;
- this.match(TSqlParser.EQUAL);
- this.state = 3812;
- localctx.sid = this.match(TSqlParser.BINARY);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_login_azure_sql_dw_and_pdwContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_login_azure_sql_dw_and_pdw;
- this.login_name = null; // IdContext
- this.password = null; // Token
- this.old_password = null; // Token
- return this;
-}
-
-Alter_login_azure_sql_dw_and_pdwContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_login_azure_sql_dw_and_pdwContext.prototype.constructor = Alter_login_azure_sql_dw_and_pdwContext;
-
-Alter_login_azure_sql_dw_and_pdwContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Alter_login_azure_sql_dw_and_pdwContext.prototype.LOGIN = function() {
- return this.getToken(TSqlParser.LOGIN, 0);
-};
-
-Alter_login_azure_sql_dw_and_pdwContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Alter_login_azure_sql_dw_and_pdwContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Alter_login_azure_sql_dw_and_pdwContext.prototype.PASSWORD = function() {
- return this.getToken(TSqlParser.PASSWORD, 0);
-};
-
-Alter_login_azure_sql_dw_and_pdwContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-Alter_login_azure_sql_dw_and_pdwContext.prototype.NAME = function() {
- return this.getToken(TSqlParser.NAME, 0);
-};
-
-Alter_login_azure_sql_dw_and_pdwContext.prototype.STRING = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.STRING);
- } else {
- return this.getToken(TSqlParser.STRING, i);
- }
-};
-
-
-Alter_login_azure_sql_dw_and_pdwContext.prototype.ENABLE = function() {
- return this.getToken(TSqlParser.ENABLE, 0);
-};
-
-Alter_login_azure_sql_dw_and_pdwContext.prototype.DISABLE = function() {
- return this.getToken(TSqlParser.DISABLE, 0);
-};
-
-Alter_login_azure_sql_dw_and_pdwContext.prototype.OLD_PASSWORD = function() {
- return this.getToken(TSqlParser.OLD_PASSWORD, 0);
-};
-
-Alter_login_azure_sql_dw_and_pdwContext.prototype.MUST_CHANGE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.MUST_CHANGE);
- } else {
- return this.getToken(TSqlParser.MUST_CHANGE, i);
- }
-};
-
-
-Alter_login_azure_sql_dw_and_pdwContext.prototype.UNLOCK = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.UNLOCK);
- } else {
- return this.getToken(TSqlParser.UNLOCK, i);
- }
-};
-
-
-Alter_login_azure_sql_dw_and_pdwContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_login_azure_sql_dw_and_pdw(this);
- }
-};
-
-Alter_login_azure_sql_dw_and_pdwContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_login_azure_sql_dw_and_pdw(this);
- }
-};
-
-Alter_login_azure_sql_dw_and_pdwContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_login_azure_sql_dw_and_pdw(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_login_azure_sql_dw_and_pdwContext = Alter_login_azure_sql_dw_and_pdwContext;
-
-TSqlParser.prototype.alter_login_azure_sql_dw_and_pdw = function() {
-
- var localctx = new Alter_login_azure_sql_dw_and_pdwContext(this, this._ctx, this.state);
- this.enterRule(localctx, 320, TSqlParser.RULE_alter_login_azure_sql_dw_and_pdw);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 3815;
- this.match(TSqlParser.ALTER);
- this.state = 3816;
- this.match(TSqlParser.LOGIN);
- this.state = 3817;
- localctx.login_name = this.id();
- this.state = 3841;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,396,this._ctx);
- switch(la_) {
- case 1:
- this.state = 3819;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,392,this._ctx);
- if(la_===1) {
- this.state = 3818;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.DISABLE || _la===TSqlParser.ENABLE)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
-
- }
- break;
-
- case 2:
- this.state = 3821;
- this.match(TSqlParser.WITH);
- this.state = 3839;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.PASSWORD:
- this.state = 3822;
- this.match(TSqlParser.PASSWORD);
- this.state = 3823;
- this.match(TSqlParser.EQUAL);
- this.state = 3824;
- localctx.password = this.match(TSqlParser.STRING);
- this.state = 3834;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.OLD_PASSWORD) {
- this.state = 3825;
- this.match(TSqlParser.OLD_PASSWORD);
- this.state = 3826;
- this.match(TSqlParser.EQUAL);
- this.state = 3827;
- localctx.old_password = this.match(TSqlParser.STRING);
- this.state = 3831;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.MUST_CHANGE || _la===TSqlParser.UNLOCK) {
- this.state = 3828;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.MUST_CHANGE || _la===TSqlParser.UNLOCK)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 3833;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- }
-
- break;
- case TSqlParser.NAME:
- this.state = 3836;
- this.match(TSqlParser.NAME);
- this.state = 3837;
- this.match(TSqlParser.EQUAL);
- this.state = 3838;
- localctx.login_name = this.id();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_login_pdwContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_login_pdw;
- this.loginName = null; // IdContext
- this.password = null; // Token
- return this;
-}
-
-Create_login_pdwContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_login_pdwContext.prototype.constructor = Create_login_pdwContext;
-
-Create_login_pdwContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_login_pdwContext.prototype.LOGIN = function() {
- return this.getToken(TSqlParser.LOGIN, 0);
-};
-
-Create_login_pdwContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Create_login_pdwContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Create_login_pdwContext.prototype.FROM = function() {
- return this.getToken(TSqlParser.FROM, 0);
-};
-
-Create_login_pdwContext.prototype.WINDOWS = function() {
- return this.getToken(TSqlParser.WINDOWS, 0);
-};
-
-Create_login_pdwContext.prototype.PASSWORD = function() {
- return this.getToken(TSqlParser.PASSWORD, 0);
-};
-
-Create_login_pdwContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-Create_login_pdwContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Create_login_pdwContext.prototype.MUST_CHANGE = function() {
- return this.getToken(TSqlParser.MUST_CHANGE, 0);
-};
-
-Create_login_pdwContext.prototype.CHECK_POLICY = function() {
- return this.getToken(TSqlParser.CHECK_POLICY, 0);
-};
-
-Create_login_pdwContext.prototype.ON = function() {
- return this.getToken(TSqlParser.ON, 0);
-};
-
-Create_login_pdwContext.prototype.OFF = function() {
- return this.getToken(TSqlParser.OFF, 0);
-};
-
-Create_login_pdwContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_login_pdw(this);
- }
-};
-
-Create_login_pdwContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_login_pdw(this);
- }
-};
-
-Create_login_pdwContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_login_pdw(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_login_pdwContext = Create_login_pdwContext;
-
-TSqlParser.prototype.create_login_pdw = function() {
-
- var localctx = new Create_login_pdwContext(this, this._ctx, this.state);
- this.enterRule(localctx, 322, TSqlParser.RULE_create_login_pdw);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 3843;
- this.match(TSqlParser.CREATE);
- this.state = 3844;
- this.match(TSqlParser.LOGIN);
- this.state = 3845;
- localctx.loginName = this.id();
- this.state = 3862;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.WITH:
- this.state = 3846;
- this.match(TSqlParser.WITH);
-
- this.state = 3847;
- this.match(TSqlParser.PASSWORD);
- this.state = 3848;
- this.match(TSqlParser.EQUAL);
- this.state = 3849;
- localctx.password = this.match(TSqlParser.STRING);
- this.state = 3851;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.MUST_CHANGE) {
- this.state = 3850;
- this.match(TSqlParser.MUST_CHANGE);
- }
-
- this.state = 3858;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.CHECK_POLICY) {
- this.state = 3853;
- this.match(TSqlParser.CHECK_POLICY);
- this.state = 3854;
- this.match(TSqlParser.EQUAL);
- this.state = 3856;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.OFF || _la===TSqlParser.ON) {
- this.state = 3855;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- }
-
- }
-
- break;
- case TSqlParser.FROM:
- this.state = 3860;
- this.match(TSqlParser.FROM);
- this.state = 3861;
- this.match(TSqlParser.WINDOWS);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_master_key_sql_serverContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_master_key_sql_server;
- this.password = null; // Token
- this.encryption_password = null; // Token
- return this;
-}
-
-Alter_master_key_sql_serverContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_master_key_sql_serverContext.prototype.constructor = Alter_master_key_sql_serverContext;
-
-Alter_master_key_sql_serverContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Alter_master_key_sql_serverContext.prototype.MASTER = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.MASTER);
- } else {
- return this.getToken(TSqlParser.MASTER, i);
- }
-};
-
-
-Alter_master_key_sql_serverContext.prototype.KEY = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.KEY);
- } else {
- return this.getToken(TSqlParser.KEY, i);
- }
-};
-
-
-Alter_master_key_sql_serverContext.prototype.REGENERATE = function() {
- return this.getToken(TSqlParser.REGENERATE, 0);
-};
-
-Alter_master_key_sql_serverContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Alter_master_key_sql_serverContext.prototype.ENCRYPTION = function() {
- return this.getToken(TSqlParser.ENCRYPTION, 0);
-};
-
-Alter_master_key_sql_serverContext.prototype.BY = function() {
- return this.getToken(TSqlParser.BY, 0);
-};
-
-Alter_master_key_sql_serverContext.prototype.PASSWORD = function() {
- return this.getToken(TSqlParser.PASSWORD, 0);
-};
-
-Alter_master_key_sql_serverContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Alter_master_key_sql_serverContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Alter_master_key_sql_serverContext.prototype.ADD = function() {
- return this.getToken(TSqlParser.ADD, 0);
-};
-
-Alter_master_key_sql_serverContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Alter_master_key_sql_serverContext.prototype.SERVICE = function() {
- return this.getToken(TSqlParser.SERVICE, 0);
-};
-
-Alter_master_key_sql_serverContext.prototype.FORCE = function() {
- return this.getToken(TSqlParser.FORCE, 0);
-};
-
-Alter_master_key_sql_serverContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_master_key_sql_server(this);
- }
-};
-
-Alter_master_key_sql_serverContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_master_key_sql_server(this);
- }
-};
-
-Alter_master_key_sql_serverContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_master_key_sql_server(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_master_key_sql_serverContext = Alter_master_key_sql_serverContext;
-
-TSqlParser.prototype.alter_master_key_sql_server = function() {
-
- var localctx = new Alter_master_key_sql_serverContext(this, this._ctx, this.state);
- this.enterRule(localctx, 324, TSqlParser.RULE_alter_master_key_sql_server);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 3864;
- this.match(TSqlParser.ALTER);
- this.state = 3865;
- this.match(TSqlParser.MASTER);
- this.state = 3866;
- this.match(TSqlParser.KEY);
- this.state = 3888;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.REGENERATE:
- case TSqlParser.FORCE:
- this.state = 3868;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.FORCE) {
- this.state = 3867;
- this.match(TSqlParser.FORCE);
- }
-
- this.state = 3870;
- this.match(TSqlParser.REGENERATE);
- this.state = 3871;
- this.match(TSqlParser.WITH);
- this.state = 3872;
- this.match(TSqlParser.ENCRYPTION);
- this.state = 3873;
- this.match(TSqlParser.BY);
- this.state = 3874;
- this.match(TSqlParser.PASSWORD);
- this.state = 3875;
- this.match(TSqlParser.EQUAL);
- this.state = 3876;
- localctx.password = this.match(TSqlParser.STRING);
- break;
- case TSqlParser.ADD:
- case TSqlParser.DROP:
- this.state = 3877;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.ADD || _la===TSqlParser.DROP)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 3878;
- this.match(TSqlParser.ENCRYPTION);
- this.state = 3879;
- this.match(TSqlParser.BY);
- this.state = 3886;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.SERVICE:
- this.state = 3880;
- this.match(TSqlParser.SERVICE);
- this.state = 3881;
- this.match(TSqlParser.MASTER);
- this.state = 3882;
- this.match(TSqlParser.KEY);
- break;
- case TSqlParser.PASSWORD:
- this.state = 3883;
- this.match(TSqlParser.PASSWORD);
- this.state = 3884;
- this.match(TSqlParser.EQUAL);
- this.state = 3885;
- localctx.encryption_password = this.match(TSqlParser.STRING);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_master_key_sql_serverContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_master_key_sql_server;
- this.password = null; // Token
- return this;
-}
-
-Create_master_key_sql_serverContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_master_key_sql_serverContext.prototype.constructor = Create_master_key_sql_serverContext;
-
-Create_master_key_sql_serverContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_master_key_sql_serverContext.prototype.MASTER = function() {
- return this.getToken(TSqlParser.MASTER, 0);
-};
-
-Create_master_key_sql_serverContext.prototype.KEY = function() {
- return this.getToken(TSqlParser.KEY, 0);
-};
-
-Create_master_key_sql_serverContext.prototype.ENCRYPTION = function() {
- return this.getToken(TSqlParser.ENCRYPTION, 0);
-};
-
-Create_master_key_sql_serverContext.prototype.BY = function() {
- return this.getToken(TSqlParser.BY, 0);
-};
-
-Create_master_key_sql_serverContext.prototype.PASSWORD = function() {
- return this.getToken(TSqlParser.PASSWORD, 0);
-};
-
-Create_master_key_sql_serverContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Create_master_key_sql_serverContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Create_master_key_sql_serverContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_master_key_sql_server(this);
- }
-};
-
-Create_master_key_sql_serverContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_master_key_sql_server(this);
- }
-};
-
-Create_master_key_sql_serverContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_master_key_sql_server(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_master_key_sql_serverContext = Create_master_key_sql_serverContext;
-
-TSqlParser.prototype.create_master_key_sql_server = function() {
-
- var localctx = new Create_master_key_sql_serverContext(this, this._ctx, this.state);
- this.enterRule(localctx, 326, TSqlParser.RULE_create_master_key_sql_server);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 3890;
- this.match(TSqlParser.CREATE);
- this.state = 3891;
- this.match(TSqlParser.MASTER);
- this.state = 3892;
- this.match(TSqlParser.KEY);
- this.state = 3893;
- this.match(TSqlParser.ENCRYPTION);
- this.state = 3894;
- this.match(TSqlParser.BY);
- this.state = 3895;
- this.match(TSqlParser.PASSWORD);
- this.state = 3896;
- this.match(TSqlParser.EQUAL);
- this.state = 3897;
- localctx.password = this.match(TSqlParser.STRING);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_master_key_azure_sqlContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_master_key_azure_sql;
- this.password = null; // Token
- this.encryption_password = null; // Token
- return this;
-}
-
-Alter_master_key_azure_sqlContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_master_key_azure_sqlContext.prototype.constructor = Alter_master_key_azure_sqlContext;
-
-Alter_master_key_azure_sqlContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Alter_master_key_azure_sqlContext.prototype.MASTER = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.MASTER);
- } else {
- return this.getToken(TSqlParser.MASTER, i);
- }
-};
-
-
-Alter_master_key_azure_sqlContext.prototype.KEY = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.KEY);
- } else {
- return this.getToken(TSqlParser.KEY, i);
- }
-};
-
-
-Alter_master_key_azure_sqlContext.prototype.REGENERATE = function() {
- return this.getToken(TSqlParser.REGENERATE, 0);
-};
-
-Alter_master_key_azure_sqlContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Alter_master_key_azure_sqlContext.prototype.ENCRYPTION = function() {
- return this.getToken(TSqlParser.ENCRYPTION, 0);
-};
-
-Alter_master_key_azure_sqlContext.prototype.BY = function() {
- return this.getToken(TSqlParser.BY, 0);
-};
-
-Alter_master_key_azure_sqlContext.prototype.PASSWORD = function() {
- return this.getToken(TSqlParser.PASSWORD, 0);
-};
-
-Alter_master_key_azure_sqlContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Alter_master_key_azure_sqlContext.prototype.ADD = function() {
- return this.getToken(TSqlParser.ADD, 0);
-};
-
-Alter_master_key_azure_sqlContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Alter_master_key_azure_sqlContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Alter_master_key_azure_sqlContext.prototype.SERVICE = function() {
- return this.getToken(TSqlParser.SERVICE, 0);
-};
-
-Alter_master_key_azure_sqlContext.prototype.FORCE = function() {
- return this.getToken(TSqlParser.FORCE, 0);
-};
-
-Alter_master_key_azure_sqlContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_master_key_azure_sql(this);
- }
-};
-
-Alter_master_key_azure_sqlContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_master_key_azure_sql(this);
- }
-};
-
-Alter_master_key_azure_sqlContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_master_key_azure_sql(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_master_key_azure_sqlContext = Alter_master_key_azure_sqlContext;
-
-TSqlParser.prototype.alter_master_key_azure_sql = function() {
-
- var localctx = new Alter_master_key_azure_sqlContext(this, this._ctx, this.state);
- this.enterRule(localctx, 328, TSqlParser.RULE_alter_master_key_azure_sql);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 3899;
- this.match(TSqlParser.ALTER);
- this.state = 3900;
- this.match(TSqlParser.MASTER);
- this.state = 3901;
- this.match(TSqlParser.KEY);
- this.state = 3929;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.REGENERATE:
- case TSqlParser.FORCE:
- this.state = 3903;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.FORCE) {
- this.state = 3902;
- this.match(TSqlParser.FORCE);
- }
-
- this.state = 3905;
- this.match(TSqlParser.REGENERATE);
- this.state = 3906;
- this.match(TSqlParser.WITH);
- this.state = 3907;
- this.match(TSqlParser.ENCRYPTION);
- this.state = 3908;
- this.match(TSqlParser.BY);
- this.state = 3909;
- this.match(TSqlParser.PASSWORD);
- this.state = 3910;
- this.match(TSqlParser.EQUAL);
- this.state = 3911;
- localctx.password = this.match(TSqlParser.STRING);
- break;
- case TSqlParser.ADD:
- this.state = 3912;
- this.match(TSqlParser.ADD);
- this.state = 3913;
- this.match(TSqlParser.ENCRYPTION);
- this.state = 3914;
- this.match(TSqlParser.BY);
- this.state = 3921;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.SERVICE:
- this.state = 3915;
- this.match(TSqlParser.SERVICE);
- this.state = 3916;
- this.match(TSqlParser.MASTER);
- this.state = 3917;
- this.match(TSqlParser.KEY);
- break;
- case TSqlParser.PASSWORD:
- this.state = 3918;
- this.match(TSqlParser.PASSWORD);
- this.state = 3919;
- this.match(TSqlParser.EQUAL);
- this.state = 3920;
- localctx.encryption_password = this.match(TSqlParser.STRING);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
- case TSqlParser.DROP:
- this.state = 3923;
- this.match(TSqlParser.DROP);
- this.state = 3924;
- this.match(TSqlParser.ENCRYPTION);
- this.state = 3925;
- this.match(TSqlParser.BY);
- this.state = 3926;
- this.match(TSqlParser.PASSWORD);
- this.state = 3927;
- this.match(TSqlParser.EQUAL);
- this.state = 3928;
- localctx.encryption_password = this.match(TSqlParser.STRING);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_master_key_azure_sqlContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_master_key_azure_sql;
- this.password = null; // Token
- return this;
-}
-
-Create_master_key_azure_sqlContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_master_key_azure_sqlContext.prototype.constructor = Create_master_key_azure_sqlContext;
-
-Create_master_key_azure_sqlContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_master_key_azure_sqlContext.prototype.MASTER = function() {
- return this.getToken(TSqlParser.MASTER, 0);
-};
-
-Create_master_key_azure_sqlContext.prototype.KEY = function() {
- return this.getToken(TSqlParser.KEY, 0);
-};
-
-Create_master_key_azure_sqlContext.prototype.ENCRYPTION = function() {
- return this.getToken(TSqlParser.ENCRYPTION, 0);
-};
-
-Create_master_key_azure_sqlContext.prototype.BY = function() {
- return this.getToken(TSqlParser.BY, 0);
-};
-
-Create_master_key_azure_sqlContext.prototype.PASSWORD = function() {
- return this.getToken(TSqlParser.PASSWORD, 0);
-};
-
-Create_master_key_azure_sqlContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Create_master_key_azure_sqlContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Create_master_key_azure_sqlContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_master_key_azure_sql(this);
- }
-};
-
-Create_master_key_azure_sqlContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_master_key_azure_sql(this);
- }
-};
-
-Create_master_key_azure_sqlContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_master_key_azure_sql(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_master_key_azure_sqlContext = Create_master_key_azure_sqlContext;
-
-TSqlParser.prototype.create_master_key_azure_sql = function() {
-
- var localctx = new Create_master_key_azure_sqlContext(this, this._ctx, this.state);
- this.enterRule(localctx, 330, TSqlParser.RULE_create_master_key_azure_sql);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 3931;
- this.match(TSqlParser.CREATE);
- this.state = 3932;
- this.match(TSqlParser.MASTER);
- this.state = 3933;
- this.match(TSqlParser.KEY);
- this.state = 3939;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,407,this._ctx);
- if(la_===1) {
- this.state = 3934;
- this.match(TSqlParser.ENCRYPTION);
- this.state = 3935;
- this.match(TSqlParser.BY);
- this.state = 3936;
- this.match(TSqlParser.PASSWORD);
- this.state = 3937;
- this.match(TSqlParser.EQUAL);
- this.state = 3938;
- localctx.password = this.match(TSqlParser.STRING);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_message_typeContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_message_type;
- this.message_type_name = null; // IdContext
- this.schema_collection_name = null; // IdContext
- return this;
-}
-
-Alter_message_typeContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_message_typeContext.prototype.constructor = Alter_message_typeContext;
-
-Alter_message_typeContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Alter_message_typeContext.prototype.MESSAGE = function() {
- return this.getToken(TSqlParser.MESSAGE, 0);
-};
-
-Alter_message_typeContext.prototype.TYPE = function() {
- return this.getToken(TSqlParser.TYPE, 0);
-};
-
-Alter_message_typeContext.prototype.VALIDATION = function() {
- return this.getToken(TSqlParser.VALIDATION, 0);
-};
-
-Alter_message_typeContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Alter_message_typeContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Alter_message_typeContext.prototype.NONE = function() {
- return this.getToken(TSqlParser.NONE, 0);
-};
-
-Alter_message_typeContext.prototype.EMPTY = function() {
- return this.getToken(TSqlParser.EMPTY, 0);
-};
-
-Alter_message_typeContext.prototype.WELL_FORMED_XML = function() {
- return this.getToken(TSqlParser.WELL_FORMED_XML, 0);
-};
-
-Alter_message_typeContext.prototype.VALID_XML = function() {
- return this.getToken(TSqlParser.VALID_XML, 0);
-};
-
-Alter_message_typeContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Alter_message_typeContext.prototype.SCHEMA = function() {
- return this.getToken(TSqlParser.SCHEMA, 0);
-};
-
-Alter_message_typeContext.prototype.COLLECTION = function() {
- return this.getToken(TSqlParser.COLLECTION, 0);
-};
-
-Alter_message_typeContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_message_type(this);
- }
-};
-
-Alter_message_typeContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_message_type(this);
- }
-};
-
-Alter_message_typeContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_message_type(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_message_typeContext = Alter_message_typeContext;
-
-TSqlParser.prototype.alter_message_type = function() {
-
- var localctx = new Alter_message_typeContext(this, this._ctx, this.state);
- this.enterRule(localctx, 332, TSqlParser.RULE_alter_message_type);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 3941;
- this.match(TSqlParser.ALTER);
- this.state = 3942;
- this.match(TSqlParser.MESSAGE);
- this.state = 3943;
- this.match(TSqlParser.TYPE);
- this.state = 3944;
- localctx.message_type_name = this.id();
- this.state = 3945;
- this.match(TSqlParser.VALIDATION);
- this.state = 3946;
- this.match(TSqlParser.EQUAL);
- this.state = 3955;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.NONE:
- this.state = 3947;
- this.match(TSqlParser.NONE);
- break;
- case TSqlParser.EMPTY:
- this.state = 3948;
- this.match(TSqlParser.EMPTY);
- break;
- case TSqlParser.WELL_FORMED_XML:
- this.state = 3949;
- this.match(TSqlParser.WELL_FORMED_XML);
- break;
- case TSqlParser.VALID_XML:
- this.state = 3950;
- this.match(TSqlParser.VALID_XML);
- this.state = 3951;
- this.match(TSqlParser.WITH);
- this.state = 3952;
- this.match(TSqlParser.SCHEMA);
- this.state = 3953;
- this.match(TSqlParser.COLLECTION);
- this.state = 3954;
- localctx.schema_collection_name = this.id();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_partition_functionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_partition_function;
- this.partition_function_name = null; // IdContext
- return this;
-}
-
-Alter_partition_functionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_partition_functionContext.prototype.constructor = Alter_partition_functionContext;
-
-Alter_partition_functionContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Alter_partition_functionContext.prototype.PARTITION = function() {
- return this.getToken(TSqlParser.PARTITION, 0);
-};
-
-Alter_partition_functionContext.prototype.FUNCTION = function() {
- return this.getToken(TSqlParser.FUNCTION, 0);
-};
-
-Alter_partition_functionContext.prototype.LR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.LR_BRACKET);
- } else {
- return this.getToken(TSqlParser.LR_BRACKET, i);
- }
-};
-
-
-Alter_partition_functionContext.prototype.RR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.RR_BRACKET);
- } else {
- return this.getToken(TSqlParser.RR_BRACKET, i);
- }
-};
-
-
-Alter_partition_functionContext.prototype.RANGE = function() {
- return this.getToken(TSqlParser.RANGE, 0);
-};
-
-Alter_partition_functionContext.prototype.DECIMAL = function() {
- return this.getToken(TSqlParser.DECIMAL, 0);
-};
-
-Alter_partition_functionContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Alter_partition_functionContext.prototype.SPLIT = function() {
- return this.getToken(TSqlParser.SPLIT, 0);
-};
-
-Alter_partition_functionContext.prototype.MERGE = function() {
- return this.getToken(TSqlParser.MERGE, 0);
-};
-
-Alter_partition_functionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_partition_function(this);
- }
-};
-
-Alter_partition_functionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_partition_function(this);
- }
-};
-
-Alter_partition_functionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_partition_function(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_partition_functionContext = Alter_partition_functionContext;
-
-TSqlParser.prototype.alter_partition_function = function() {
-
- var localctx = new Alter_partition_functionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 334, TSqlParser.RULE_alter_partition_function);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 3957;
- this.match(TSqlParser.ALTER);
- this.state = 3958;
- this.match(TSqlParser.PARTITION);
- this.state = 3959;
- this.match(TSqlParser.FUNCTION);
- this.state = 3960;
- localctx.partition_function_name = this.id();
- this.state = 3961;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 3962;
- this.match(TSqlParser.RR_BRACKET);
- this.state = 3963;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.MERGE || _la===TSqlParser.SPLIT)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 3964;
- this.match(TSqlParser.RANGE);
- this.state = 3965;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 3966;
- this.match(TSqlParser.DECIMAL);
- this.state = 3967;
- this.match(TSqlParser.RR_BRACKET);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_partition_schemeContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_partition_scheme;
- this.partition_scheme_name = null; // IdContext
- this.file_group_name = null; // IdContext
- return this;
-}
-
-Alter_partition_schemeContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_partition_schemeContext.prototype.constructor = Alter_partition_schemeContext;
-
-Alter_partition_schemeContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Alter_partition_schemeContext.prototype.PARTITION = function() {
- return this.getToken(TSqlParser.PARTITION, 0);
-};
-
-Alter_partition_schemeContext.prototype.SCHEME = function() {
- return this.getToken(TSqlParser.SCHEME, 0);
-};
-
-Alter_partition_schemeContext.prototype.NEXT = function() {
- return this.getToken(TSqlParser.NEXT, 0);
-};
-
-Alter_partition_schemeContext.prototype.USED = function() {
- return this.getToken(TSqlParser.USED, 0);
-};
-
-Alter_partition_schemeContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Alter_partition_schemeContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_partition_scheme(this);
- }
-};
-
-Alter_partition_schemeContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_partition_scheme(this);
- }
-};
-
-Alter_partition_schemeContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_partition_scheme(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_partition_schemeContext = Alter_partition_schemeContext;
-
-TSqlParser.prototype.alter_partition_scheme = function() {
-
- var localctx = new Alter_partition_schemeContext(this, this._ctx, this.state);
- this.enterRule(localctx, 336, TSqlParser.RULE_alter_partition_scheme);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 3969;
- this.match(TSqlParser.ALTER);
- this.state = 3970;
- this.match(TSqlParser.PARTITION);
- this.state = 3971;
- this.match(TSqlParser.SCHEME);
- this.state = 3972;
- localctx.partition_scheme_name = this.id();
- this.state = 3973;
- this.match(TSqlParser.NEXT);
- this.state = 3974;
- this.match(TSqlParser.USED);
- this.state = 3976;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,409,this._ctx);
- if(la_===1) {
- this.state = 3975;
- localctx.file_group_name = this.id();
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_remote_service_bindingContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_remote_service_binding;
- this.binding_name = null; // IdContext
- this.user_name = null; // IdContext
- return this;
-}
-
-Alter_remote_service_bindingContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_remote_service_bindingContext.prototype.constructor = Alter_remote_service_bindingContext;
-
-Alter_remote_service_bindingContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Alter_remote_service_bindingContext.prototype.REMOTE = function() {
- return this.getToken(TSqlParser.REMOTE, 0);
-};
-
-Alter_remote_service_bindingContext.prototype.SERVICE = function() {
- return this.getToken(TSqlParser.SERVICE, 0);
-};
-
-Alter_remote_service_bindingContext.prototype.BINDING = function() {
- return this.getToken(TSqlParser.BINDING, 0);
-};
-
-Alter_remote_service_bindingContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Alter_remote_service_bindingContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Alter_remote_service_bindingContext.prototype.USER = function() {
- return this.getToken(TSqlParser.USER, 0);
-};
-
-Alter_remote_service_bindingContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-Alter_remote_service_bindingContext.prototype.COMMA = function() {
- return this.getToken(TSqlParser.COMMA, 0);
-};
-
-Alter_remote_service_bindingContext.prototype.ANONYMOUS = function() {
- return this.getToken(TSqlParser.ANONYMOUS, 0);
-};
-
-Alter_remote_service_bindingContext.prototype.ON = function() {
- return this.getToken(TSqlParser.ON, 0);
-};
-
-Alter_remote_service_bindingContext.prototype.OFF = function() {
- return this.getToken(TSqlParser.OFF, 0);
-};
-
-Alter_remote_service_bindingContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_remote_service_binding(this);
- }
-};
-
-Alter_remote_service_bindingContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_remote_service_binding(this);
- }
-};
-
-Alter_remote_service_bindingContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_remote_service_binding(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_remote_service_bindingContext = Alter_remote_service_bindingContext;
-
-TSqlParser.prototype.alter_remote_service_binding = function() {
-
- var localctx = new Alter_remote_service_bindingContext(this, this._ctx, this.state);
- this.enterRule(localctx, 338, TSqlParser.RULE_alter_remote_service_binding);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 3978;
- this.match(TSqlParser.ALTER);
- this.state = 3979;
- this.match(TSqlParser.REMOTE);
- this.state = 3980;
- this.match(TSqlParser.SERVICE);
- this.state = 3981;
- this.match(TSqlParser.BINDING);
- this.state = 3982;
- localctx.binding_name = this.id();
- this.state = 3983;
- this.match(TSqlParser.WITH);
- this.state = 3987;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.USER) {
- this.state = 3984;
- this.match(TSqlParser.USER);
- this.state = 3985;
- this.match(TSqlParser.EQUAL);
- this.state = 3986;
- localctx.user_name = this.id();
- }
-
- this.state = 3993;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 3989;
- this.match(TSqlParser.COMMA);
- this.state = 3990;
- this.match(TSqlParser.ANONYMOUS);
- this.state = 3991;
- this.match(TSqlParser.EQUAL);
- this.state = 3992;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- }
-
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_remote_service_bindingContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_remote_service_binding;
- this.binding_name = null; // IdContext
- this.owner_name = null; // IdContext
- this.remote_service_name = null; // Token
- this.user_name = null; // IdContext
- return this;
-}
-
-Create_remote_service_bindingContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_remote_service_bindingContext.prototype.constructor = Create_remote_service_bindingContext;
-
-Create_remote_service_bindingContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_remote_service_bindingContext.prototype.REMOTE = function() {
- return this.getToken(TSqlParser.REMOTE, 0);
-};
-
-Create_remote_service_bindingContext.prototype.SERVICE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.SERVICE);
- } else {
- return this.getToken(TSqlParser.SERVICE, i);
- }
-};
-
-
-Create_remote_service_bindingContext.prototype.BINDING = function() {
- return this.getToken(TSqlParser.BINDING, 0);
-};
-
-Create_remote_service_bindingContext.prototype.TO = function() {
- return this.getToken(TSqlParser.TO, 0);
-};
-
-Create_remote_service_bindingContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Create_remote_service_bindingContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Create_remote_service_bindingContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Create_remote_service_bindingContext.prototype.AUTHORIZATION = function() {
- return this.getToken(TSqlParser.AUTHORIZATION, 0);
-};
-
-Create_remote_service_bindingContext.prototype.USER = function() {
- return this.getToken(TSqlParser.USER, 0);
-};
-
-Create_remote_service_bindingContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-Create_remote_service_bindingContext.prototype.COMMA = function() {
- return this.getToken(TSqlParser.COMMA, 0);
-};
-
-Create_remote_service_bindingContext.prototype.ANONYMOUS = function() {
- return this.getToken(TSqlParser.ANONYMOUS, 0);
-};
-
-Create_remote_service_bindingContext.prototype.ON = function() {
- return this.getToken(TSqlParser.ON, 0);
-};
-
-Create_remote_service_bindingContext.prototype.OFF = function() {
- return this.getToken(TSqlParser.OFF, 0);
-};
-
-Create_remote_service_bindingContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_remote_service_binding(this);
- }
-};
-
-Create_remote_service_bindingContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_remote_service_binding(this);
- }
-};
-
-Create_remote_service_bindingContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_remote_service_binding(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_remote_service_bindingContext = Create_remote_service_bindingContext;
-
-TSqlParser.prototype.create_remote_service_binding = function() {
-
- var localctx = new Create_remote_service_bindingContext(this, this._ctx, this.state);
- this.enterRule(localctx, 340, TSqlParser.RULE_create_remote_service_binding);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 3995;
- this.match(TSqlParser.CREATE);
- this.state = 3996;
- this.match(TSqlParser.REMOTE);
- this.state = 3997;
- this.match(TSqlParser.SERVICE);
- this.state = 3998;
- this.match(TSqlParser.BINDING);
- this.state = 3999;
- localctx.binding_name = this.id();
- this.state = 4002;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.AUTHORIZATION) {
- this.state = 4000;
- this.match(TSqlParser.AUTHORIZATION);
- this.state = 4001;
- localctx.owner_name = this.id();
- }
-
- this.state = 4004;
- this.match(TSqlParser.TO);
- this.state = 4005;
- this.match(TSqlParser.SERVICE);
- this.state = 4006;
- localctx.remote_service_name = this.match(TSqlParser.STRING);
- this.state = 4007;
- this.match(TSqlParser.WITH);
- this.state = 4011;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.USER) {
- this.state = 4008;
- this.match(TSqlParser.USER);
- this.state = 4009;
- this.match(TSqlParser.EQUAL);
- this.state = 4010;
- localctx.user_name = this.id();
- }
-
- this.state = 4017;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 4013;
- this.match(TSqlParser.COMMA);
- this.state = 4014;
- this.match(TSqlParser.ANONYMOUS);
- this.state = 4015;
- this.match(TSqlParser.EQUAL);
- this.state = 4016;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- }
-
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_resource_poolContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_resource_pool;
- this.pool_name = null; // IdContext
- return this;
-}
-
-Create_resource_poolContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_resource_poolContext.prototype.constructor = Create_resource_poolContext;
-
-Create_resource_poolContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_resource_poolContext.prototype.RESOURCE = function() {
- return this.getToken(TSqlParser.RESOURCE, 0);
-};
-
-Create_resource_poolContext.prototype.POOL = function() {
- return this.getToken(TSqlParser.POOL, 0);
-};
-
-Create_resource_poolContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Create_resource_poolContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Create_resource_poolContext.prototype.LR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.LR_BRACKET);
- } else {
- return this.getToken(TSqlParser.LR_BRACKET, i);
- }
-};
-
-
-Create_resource_poolContext.prototype.RR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.RR_BRACKET);
- } else {
- return this.getToken(TSqlParser.RR_BRACKET, i);
- }
-};
-
-
-Create_resource_poolContext.prototype.MIN_CPU_PERCENT = function() {
- return this.getToken(TSqlParser.MIN_CPU_PERCENT, 0);
-};
-
-Create_resource_poolContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-Create_resource_poolContext.prototype.DECIMAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DECIMAL);
- } else {
- return this.getToken(TSqlParser.DECIMAL, i);
- }
-};
-
-
-Create_resource_poolContext.prototype.MAX_CPU_PERCENT = function() {
- return this.getToken(TSqlParser.MAX_CPU_PERCENT, 0);
-};
-
-Create_resource_poolContext.prototype.CAP_CPU_PERCENT = function() {
- return this.getToken(TSqlParser.CAP_CPU_PERCENT, 0);
-};
-
-Create_resource_poolContext.prototype.AFFINITY = function() {
- return this.getToken(TSqlParser.AFFINITY, 0);
-};
-
-Create_resource_poolContext.prototype.SCHEDULER = function() {
- return this.getToken(TSqlParser.SCHEDULER, 0);
-};
-
-Create_resource_poolContext.prototype.MIN_MEMORY_PERCENT = function() {
- return this.getToken(TSqlParser.MIN_MEMORY_PERCENT, 0);
-};
-
-Create_resource_poolContext.prototype.MAX_MEMORY_PERCENT = function() {
- return this.getToken(TSqlParser.MAX_MEMORY_PERCENT, 0);
-};
-
-Create_resource_poolContext.prototype.MIN_IOPS_PER_VOLUME = function() {
- return this.getToken(TSqlParser.MIN_IOPS_PER_VOLUME, 0);
-};
-
-Create_resource_poolContext.prototype.MAX_IOPS_PER_VOLUME = function() {
- return this.getToken(TSqlParser.MAX_IOPS_PER_VOLUME, 0);
-};
-
-Create_resource_poolContext.prototype.AUTO = function() {
- return this.getToken(TSqlParser.AUTO, 0);
-};
-
-Create_resource_poolContext.prototype.NUMANODE = function() {
- return this.getToken(TSqlParser.NUMANODE, 0);
-};
-
-Create_resource_poolContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Create_resource_poolContext.prototype.TO = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.TO);
- } else {
- return this.getToken(TSqlParser.TO, i);
- }
-};
-
-
-Create_resource_poolContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_resource_pool(this);
- }
-};
-
-Create_resource_poolContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_resource_pool(this);
- }
-};
-
-Create_resource_poolContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_resource_pool(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_resource_poolContext = Create_resource_poolContext;
-
-TSqlParser.prototype.create_resource_pool = function() {
-
- var localctx = new Create_resource_poolContext(this, this._ctx, this.state);
- this.enterRule(localctx, 342, TSqlParser.RULE_create_resource_pool);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 4019;
- this.match(TSqlParser.CREATE);
- this.state = 4020;
- this.match(TSqlParser.RESOURCE);
- this.state = 4021;
- this.match(TSqlParser.POOL);
- this.state = 4022;
- localctx.pool_name = this.id();
- this.state = 4125;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,438,this._ctx);
- if(la_===1) {
- this.state = 4023;
- this.match(TSqlParser.WITH);
- this.state = 4024;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 4031;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,416,this._ctx);
- if(la_===1) {
- this.state = 4026;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 4025;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 4028;
- this.match(TSqlParser.MIN_CPU_PERCENT);
- this.state = 4029;
- this.match(TSqlParser.EQUAL);
- this.state = 4030;
- this.match(TSqlParser.DECIMAL);
-
- }
- this.state = 4039;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,418,this._ctx);
- if(la_===1) {
- this.state = 4034;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 4033;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 4036;
- this.match(TSqlParser.MAX_CPU_PERCENT);
- this.state = 4037;
- this.match(TSqlParser.EQUAL);
- this.state = 4038;
- this.match(TSqlParser.DECIMAL);
-
- }
- this.state = 4047;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,420,this._ctx);
- if(la_===1) {
- this.state = 4042;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 4041;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 4044;
- this.match(TSqlParser.CAP_CPU_PERCENT);
- this.state = 4045;
- this.match(TSqlParser.EQUAL);
- this.state = 4046;
- this.match(TSqlParser.DECIMAL);
-
- }
- this.state = 4090;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,429,this._ctx);
- if(la_===1) {
- this.state = 4050;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 4049;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 4052;
- this.match(TSqlParser.AFFINITY);
- this.state = 4053;
- this.match(TSqlParser.SCHEDULER);
- this.state = 4054;
- this.match(TSqlParser.EQUAL);
- this.state = 4088;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.AUTO:
- this.state = 4055;
- this.match(TSqlParser.AUTO);
- break;
- case TSqlParser.LR_BRACKET:
- this.state = 4056;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 4066;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- do {
- this.state = 4058;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 4057;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 4064;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,423,this._ctx);
- switch(la_) {
- case 1:
- this.state = 4060;
- this.match(TSqlParser.DECIMAL);
- break;
-
- case 2:
- this.state = 4061;
- this.match(TSqlParser.DECIMAL);
- this.state = 4062;
- this.match(TSqlParser.TO);
- this.state = 4063;
- this.match(TSqlParser.DECIMAL);
- break;
-
- }
- this.state = 4068;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- } while(_la===TSqlParser.DECIMAL || _la===TSqlParser.COMMA);
- this.state = 4070;
- this.match(TSqlParser.RR_BRACKET);
- break;
- case TSqlParser.NUMANODE:
- this.state = 4071;
- this.match(TSqlParser.NUMANODE);
- this.state = 4072;
- this.match(TSqlParser.EQUAL);
- this.state = 4073;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 4083;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- do {
- this.state = 4075;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 4074;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 4081;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,426,this._ctx);
- switch(la_) {
- case 1:
- this.state = 4077;
- this.match(TSqlParser.DECIMAL);
- break;
-
- case 2:
- this.state = 4078;
- this.match(TSqlParser.DECIMAL);
- this.state = 4079;
- this.match(TSqlParser.TO);
- this.state = 4080;
- this.match(TSqlParser.DECIMAL);
- break;
-
- }
- this.state = 4085;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- } while(_la===TSqlParser.DECIMAL || _la===TSqlParser.COMMA);
- this.state = 4087;
- this.match(TSqlParser.RR_BRACKET);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
-
- }
- this.state = 4098;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,431,this._ctx);
- if(la_===1) {
- this.state = 4093;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 4092;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 4095;
- this.match(TSqlParser.MIN_MEMORY_PERCENT);
- this.state = 4096;
- this.match(TSqlParser.EQUAL);
- this.state = 4097;
- this.match(TSqlParser.DECIMAL);
-
- }
- this.state = 4106;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,433,this._ctx);
- if(la_===1) {
- this.state = 4101;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 4100;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 4103;
- this.match(TSqlParser.MAX_MEMORY_PERCENT);
- this.state = 4104;
- this.match(TSqlParser.EQUAL);
- this.state = 4105;
- this.match(TSqlParser.DECIMAL);
-
- }
- this.state = 4114;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,435,this._ctx);
- if(la_===1) {
- this.state = 4109;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 4108;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 4111;
- this.match(TSqlParser.MIN_IOPS_PER_VOLUME);
- this.state = 4112;
- this.match(TSqlParser.EQUAL);
- this.state = 4113;
- this.match(TSqlParser.DECIMAL);
-
- }
- this.state = 4122;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.MAX_IOPS_PER_VOLUME || _la===TSqlParser.COMMA) {
- this.state = 4117;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 4116;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 4119;
- this.match(TSqlParser.MAX_IOPS_PER_VOLUME);
- this.state = 4120;
- this.match(TSqlParser.EQUAL);
- this.state = 4121;
- this.match(TSqlParser.DECIMAL);
- }
-
- this.state = 4124;
- this.match(TSqlParser.RR_BRACKET);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_resource_governorContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_resource_governor;
- this.schema_name = null; // IdContext
- this.function_name = null; // IdContext
- this.max_outstanding_io_per_volume = null; // Token
- return this;
-}
-
-Alter_resource_governorContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_resource_governorContext.prototype.constructor = Alter_resource_governorContext;
-
-Alter_resource_governorContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Alter_resource_governorContext.prototype.RESOURCE = function() {
- return this.getToken(TSqlParser.RESOURCE, 0);
-};
-
-Alter_resource_governorContext.prototype.GOVERNOR = function() {
- return this.getToken(TSqlParser.GOVERNOR, 0);
-};
-
-Alter_resource_governorContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Alter_resource_governorContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Alter_resource_governorContext.prototype.CLASSIFIER_FUNCTION = function() {
- return this.getToken(TSqlParser.CLASSIFIER_FUNCTION, 0);
-};
-
-Alter_resource_governorContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Alter_resource_governorContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Alter_resource_governorContext.prototype.RESET = function() {
- return this.getToken(TSqlParser.RESET, 0);
-};
-
-Alter_resource_governorContext.prototype.STATISTICS = function() {
- return this.getToken(TSqlParser.STATISTICS, 0);
-};
-
-Alter_resource_governorContext.prototype.MAX_OUTSTANDING_IO_PER_VOLUME = function() {
- return this.getToken(TSqlParser.MAX_OUTSTANDING_IO_PER_VOLUME, 0);
-};
-
-Alter_resource_governorContext.prototype.DISABLE = function() {
- return this.getToken(TSqlParser.DISABLE, 0);
-};
-
-Alter_resource_governorContext.prototype.RECONFIGURE = function() {
- return this.getToken(TSqlParser.RECONFIGURE, 0);
-};
-
-Alter_resource_governorContext.prototype.DECIMAL = function() {
- return this.getToken(TSqlParser.DECIMAL, 0);
-};
-
-Alter_resource_governorContext.prototype.DOT = function() {
- return this.getToken(TSqlParser.DOT, 0);
-};
-
-Alter_resource_governorContext.prototype.NULL = function() {
- return this.getToken(TSqlParser.NULL, 0);
-};
-
-Alter_resource_governorContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Alter_resource_governorContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_resource_governor(this);
- }
-};
-
-Alter_resource_governorContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_resource_governor(this);
- }
-};
-
-Alter_resource_governorContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_resource_governor(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_resource_governorContext = Alter_resource_governorContext;
-
-TSqlParser.prototype.alter_resource_governor = function() {
-
- var localctx = new Alter_resource_governorContext(this, this._ctx, this.state);
- this.enterRule(localctx, 344, TSqlParser.RULE_alter_resource_governor);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 4127;
- this.match(TSqlParser.ALTER);
- this.state = 4128;
- this.match(TSqlParser.RESOURCE);
- this.state = 4129;
- this.match(TSqlParser.GOVERNOR);
- this.state = 4151;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,440,this._ctx);
- switch(la_) {
- case 1:
- this.state = 4130;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.RECONFIGURE || _la===TSqlParser.DISABLE)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
-
- case 2:
- this.state = 4131;
- this.match(TSqlParser.WITH);
- this.state = 4132;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 4133;
- this.match(TSqlParser.CLASSIFIER_FUNCTION);
- this.state = 4134;
- this.match(TSqlParser.EQUAL);
- this.state = 4140;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.state = 4135;
- localctx.schema_name = this.id();
- this.state = 4136;
- this.match(TSqlParser.DOT);
- this.state = 4137;
- localctx.function_name = this.id();
- break;
- case TSqlParser.NULL:
- this.state = 4139;
- this.match(TSqlParser.NULL);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 4142;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- case 3:
- this.state = 4143;
- this.match(TSqlParser.RESET);
- this.state = 4144;
- this.match(TSqlParser.STATISTICS);
- break;
-
- case 4:
- this.state = 4145;
- this.match(TSqlParser.WITH);
- this.state = 4146;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 4147;
- this.match(TSqlParser.MAX_OUTSTANDING_IO_PER_VOLUME);
- this.state = 4148;
- this.match(TSqlParser.EQUAL);
- this.state = 4149;
- localctx.max_outstanding_io_per_volume = this.match(TSqlParser.DECIMAL);
- this.state = 4150;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_db_roleContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_db_role;
- this.role_name = null; // IdContext
- this.database_principal = null; // IdContext
- this.new_role_name = null; // IdContext
- return this;
-}
-
-Alter_db_roleContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_db_roleContext.prototype.constructor = Alter_db_roleContext;
-
-Alter_db_roleContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Alter_db_roleContext.prototype.ROLE = function() {
- return this.getToken(TSqlParser.ROLE, 0);
-};
-
-Alter_db_roleContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Alter_db_roleContext.prototype.MEMBER = function() {
- return this.getToken(TSqlParser.MEMBER, 0);
-};
-
-Alter_db_roleContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Alter_db_roleContext.prototype.NAME = function() {
- return this.getToken(TSqlParser.NAME, 0);
-};
-
-Alter_db_roleContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Alter_db_roleContext.prototype.ADD = function() {
- return this.getToken(TSqlParser.ADD, 0);
-};
-
-Alter_db_roleContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Alter_db_roleContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_db_role(this);
- }
-};
-
-Alter_db_roleContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_db_role(this);
- }
-};
-
-Alter_db_roleContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_db_role(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_db_roleContext = Alter_db_roleContext;
-
-TSqlParser.prototype.alter_db_role = function() {
-
- var localctx = new Alter_db_roleContext(this, this._ctx, this.state);
- this.enterRule(localctx, 346, TSqlParser.RULE_alter_db_role);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 4153;
- this.match(TSqlParser.ALTER);
- this.state = 4154;
- this.match(TSqlParser.ROLE);
- this.state = 4155;
- localctx.role_name = this.id();
- this.state = 4163;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.ADD:
- case TSqlParser.DROP:
- this.state = 4156;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.ADD || _la===TSqlParser.DROP)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 4157;
- this.match(TSqlParser.MEMBER);
- this.state = 4158;
- localctx.database_principal = this.id();
- break;
- case TSqlParser.WITH:
- this.state = 4159;
- this.match(TSqlParser.WITH);
- this.state = 4160;
- this.match(TSqlParser.NAME);
- this.state = 4161;
- this.match(TSqlParser.EQUAL);
- this.state = 4162;
- localctx.new_role_name = this.id();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_db_roleContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_db_role;
- this.role_name = null; // IdContext
- this.owner_name = null; // IdContext
- return this;
-}
-
-Create_db_roleContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_db_roleContext.prototype.constructor = Create_db_roleContext;
-
-Create_db_roleContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_db_roleContext.prototype.ROLE = function() {
- return this.getToken(TSqlParser.ROLE, 0);
-};
-
-Create_db_roleContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Create_db_roleContext.prototype.AUTHORIZATION = function() {
- return this.getToken(TSqlParser.AUTHORIZATION, 0);
-};
-
-Create_db_roleContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_db_role(this);
- }
-};
-
-Create_db_roleContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_db_role(this);
- }
-};
-
-Create_db_roleContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_db_role(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_db_roleContext = Create_db_roleContext;
-
-TSqlParser.prototype.create_db_role = function() {
-
- var localctx = new Create_db_roleContext(this, this._ctx, this.state);
- this.enterRule(localctx, 348, TSqlParser.RULE_create_db_role);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 4165;
- this.match(TSqlParser.CREATE);
- this.state = 4166;
- this.match(TSqlParser.ROLE);
- this.state = 4167;
- localctx.role_name = this.id();
- this.state = 4170;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.AUTHORIZATION) {
- this.state = 4168;
- this.match(TSqlParser.AUTHORIZATION);
- this.state = 4169;
- localctx.owner_name = this.id();
- }
-
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_routeContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_route;
- this.route_name = null; // IdContext
- this.owner_name = null; // IdContext
- this.route_service_name = null; // Token
- this.broker_instance_identifier = null; // Token
- return this;
-}
-
-Create_routeContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_routeContext.prototype.constructor = Create_routeContext;
-
-Create_routeContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_routeContext.prototype.ROUTE = function() {
- return this.getToken(TSqlParser.ROUTE, 0);
-};
-
-Create_routeContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Create_routeContext.prototype.ADDRESS = function() {
- return this.getToken(TSqlParser.ADDRESS, 0);
-};
-
-Create_routeContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-Create_routeContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Create_routeContext.prototype.STRING = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.STRING);
- } else {
- return this.getToken(TSqlParser.STRING, i);
- }
-};
-
-
-Create_routeContext.prototype.QUOTED_URL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.QUOTED_URL);
- } else {
- return this.getToken(TSqlParser.QUOTED_URL, i);
- }
-};
-
-
-Create_routeContext.prototype.AUTHORIZATION = function() {
- return this.getToken(TSqlParser.AUTHORIZATION, 0);
-};
-
-Create_routeContext.prototype.SERVICE_NAME = function() {
- return this.getToken(TSqlParser.SERVICE_NAME, 0);
-};
-
-Create_routeContext.prototype.BROKER_INSTANCE = function() {
- return this.getToken(TSqlParser.BROKER_INSTANCE, 0);
-};
-
-Create_routeContext.prototype.LIFETIME = function() {
- return this.getToken(TSqlParser.LIFETIME, 0);
-};
-
-Create_routeContext.prototype.DECIMAL = function() {
- return this.getToken(TSqlParser.DECIMAL, 0);
-};
-
-Create_routeContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Create_routeContext.prototype.MIRROR_ADDRESS = function() {
- return this.getToken(TSqlParser.MIRROR_ADDRESS, 0);
-};
-
-Create_routeContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_route(this);
- }
-};
-
-Create_routeContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_route(this);
- }
-};
-
-Create_routeContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_route(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_routeContext = Create_routeContext;
-
-TSqlParser.prototype.create_route = function() {
-
- var localctx = new Create_routeContext(this, this._ctx, this.state);
- this.enterRule(localctx, 350, TSqlParser.RULE_create_route);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 4172;
- this.match(TSqlParser.CREATE);
- this.state = 4173;
- this.match(TSqlParser.ROUTE);
- this.state = 4174;
- localctx.route_name = this.id();
- this.state = 4177;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.AUTHORIZATION) {
- this.state = 4175;
- this.match(TSqlParser.AUTHORIZATION);
- this.state = 4176;
- localctx.owner_name = this.id();
- }
-
- this.state = 4179;
- this.match(TSqlParser.WITH);
- this.state = 4186;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,445,this._ctx);
- if(la_===1) {
- this.state = 4181;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 4180;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 4183;
- this.match(TSqlParser.SERVICE_NAME);
- this.state = 4184;
- this.match(TSqlParser.EQUAL);
- this.state = 4185;
- localctx.route_service_name = this.match(TSqlParser.STRING);
-
- }
- this.state = 4194;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,447,this._ctx);
- if(la_===1) {
- this.state = 4189;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 4188;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 4191;
- this.match(TSqlParser.BROKER_INSTANCE);
- this.state = 4192;
- this.match(TSqlParser.EQUAL);
- this.state = 4193;
- localctx.broker_instance_identifier = this.match(TSqlParser.STRING);
-
- }
- this.state = 4202;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,449,this._ctx);
- if(la_===1) {
- this.state = 4197;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 4196;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 4199;
- this.match(TSqlParser.LIFETIME);
- this.state = 4200;
- this.match(TSqlParser.EQUAL);
- this.state = 4201;
- this.match(TSqlParser.DECIMAL);
-
- }
- this.state = 4205;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 4204;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 4207;
- this.match(TSqlParser.ADDRESS);
- this.state = 4208;
- this.match(TSqlParser.EQUAL);
- this.state = 4209;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.QUOTED_URL || _la===TSqlParser.STRING)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 4214;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 4210;
- this.match(TSqlParser.COMMA);
- this.state = 4211;
- this.match(TSqlParser.MIRROR_ADDRESS);
- this.state = 4212;
- this.match(TSqlParser.EQUAL);
- this.state = 4213;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.QUOTED_URL || _la===TSqlParser.STRING)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- }
-
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_ruleContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_rule;
- this.schema_name = null; // IdContext
- this.rule_name = null; // IdContext
- return this;
-}
-
-Create_ruleContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_ruleContext.prototype.constructor = Create_ruleContext;
-
-Create_ruleContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_ruleContext.prototype.RULE = function() {
- return this.getToken(TSqlParser.RULE, 0);
-};
-
-Create_ruleContext.prototype.AS = function() {
- return this.getToken(TSqlParser.AS, 0);
-};
-
-Create_ruleContext.prototype.search_condition = function() {
- return this.getTypedRuleContext(Search_conditionContext,0);
-};
-
-Create_ruleContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Create_ruleContext.prototype.DOT = function() {
- return this.getToken(TSqlParser.DOT, 0);
-};
-
-Create_ruleContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_rule(this);
- }
-};
-
-Create_ruleContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_rule(this);
- }
-};
-
-Create_ruleContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_rule(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_ruleContext = Create_ruleContext;
-
-TSqlParser.prototype.create_rule = function() {
-
- var localctx = new Create_ruleContext(this, this._ctx, this.state);
- this.enterRule(localctx, 352, TSqlParser.RULE_create_rule);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 4216;
- this.match(TSqlParser.CREATE);
- this.state = 4217;
- this.match(TSqlParser.RULE);
- this.state = 4221;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,452,this._ctx);
- if(la_===1) {
- this.state = 4218;
- localctx.schema_name = this.id();
- this.state = 4219;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 4223;
- localctx.rule_name = this.id();
- this.state = 4224;
- this.match(TSqlParser.AS);
- this.state = 4225;
- this.search_condition();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_schema_sqlContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_schema_sql;
- this.schema_name = null; // IdContext
- return this;
-}
-
-Alter_schema_sqlContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_schema_sqlContext.prototype.constructor = Alter_schema_sqlContext;
-
-Alter_schema_sqlContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Alter_schema_sqlContext.prototype.SCHEMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.SCHEMA);
- } else {
- return this.getToken(TSqlParser.SCHEMA, i);
- }
-};
-
-
-Alter_schema_sqlContext.prototype.TRANSFER = function() {
- return this.getToken(TSqlParser.TRANSFER, 0);
-};
-
-Alter_schema_sqlContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Alter_schema_sqlContext.prototype.COLON = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COLON);
- } else {
- return this.getToken(TSqlParser.COLON, i);
- }
-};
-
-
-Alter_schema_sqlContext.prototype.DOT = function() {
- return this.getToken(TSqlParser.DOT, 0);
-};
-
-Alter_schema_sqlContext.prototype.OBJECT = function() {
- return this.getToken(TSqlParser.OBJECT, 0);
-};
-
-Alter_schema_sqlContext.prototype.TYPE = function() {
- return this.getToken(TSqlParser.TYPE, 0);
-};
-
-Alter_schema_sqlContext.prototype.XML = function() {
- return this.getToken(TSqlParser.XML, 0);
-};
-
-Alter_schema_sqlContext.prototype.COLLECTION = function() {
- return this.getToken(TSqlParser.COLLECTION, 0);
-};
-
-Alter_schema_sqlContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_schema_sql(this);
- }
-};
-
-Alter_schema_sqlContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_schema_sql(this);
- }
-};
-
-Alter_schema_sqlContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_schema_sql(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_schema_sqlContext = Alter_schema_sqlContext;
-
-TSqlParser.prototype.alter_schema_sql = function() {
-
- var localctx = new Alter_schema_sqlContext(this, this._ctx, this.state);
- this.enterRule(localctx, 354, TSqlParser.RULE_alter_schema_sql);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 4227;
- this.match(TSqlParser.ALTER);
- this.state = 4228;
- this.match(TSqlParser.SCHEMA);
- this.state = 4229;
- localctx.schema_name = this.id();
- this.state = 4230;
- this.match(TSqlParser.TRANSFER);
- this.state = 4240;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,454,this._ctx);
- if(la_===1) {
- this.state = 4236;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.OBJECT:
- this.state = 4231;
- this.match(TSqlParser.OBJECT);
- break;
- case TSqlParser.TYPE:
- this.state = 4232;
- this.match(TSqlParser.TYPE);
- break;
- case TSqlParser.XML:
- this.state = 4233;
- this.match(TSqlParser.XML);
- this.state = 4234;
- this.match(TSqlParser.SCHEMA);
- this.state = 4235;
- this.match(TSqlParser.COLLECTION);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 4238;
- this.match(TSqlParser.COLON);
- this.state = 4239;
- this.match(TSqlParser.COLON);
-
- }
- this.state = 4242;
- this.id();
- this.state = 4245;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.DOT) {
- this.state = 4243;
- this.match(TSqlParser.DOT);
- this.state = 4244;
- this.id();
- }
-
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_schemaContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_schema;
- this.schema_name = null; // IdContext
- this.owner_name = null; // IdContext
- this.object_name = null; // IdContext
- return this;
-}
-
-Create_schemaContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_schemaContext.prototype.constructor = Create_schemaContext;
-
-Create_schemaContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_schemaContext.prototype.SCHEMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.SCHEMA);
- } else {
- return this.getToken(TSqlParser.SCHEMA, i);
- }
-};
-
-
-Create_schemaContext.prototype.AUTHORIZATION = function() {
- return this.getToken(TSqlParser.AUTHORIZATION, 0);
-};
-
-Create_schemaContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Create_schemaContext.prototype.create_table = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Create_tableContext);
- } else {
- return this.getTypedRuleContext(Create_tableContext,i);
- }
-};
-
-Create_schemaContext.prototype.create_view = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Create_viewContext);
- } else {
- return this.getTypedRuleContext(Create_viewContext,i);
- }
-};
-
-Create_schemaContext.prototype.ON = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ON);
- } else {
- return this.getToken(TSqlParser.ON, i);
- }
-};
-
-
-Create_schemaContext.prototype.TO = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.TO);
- } else {
- return this.getToken(TSqlParser.TO, i);
- }
-};
-
-
-Create_schemaContext.prototype.REVOKE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.REVOKE);
- } else {
- return this.getToken(TSqlParser.REVOKE, i);
- }
-};
-
-
-Create_schemaContext.prototype.FROM = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.FROM);
- } else {
- return this.getToken(TSqlParser.FROM, i);
- }
-};
-
-
-Create_schemaContext.prototype.GRANT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.GRANT);
- } else {
- return this.getToken(TSqlParser.GRANT, i);
- }
-};
-
-
-Create_schemaContext.prototype.DENY = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DENY);
- } else {
- return this.getToken(TSqlParser.DENY, i);
- }
-};
-
-
-Create_schemaContext.prototype.SELECT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.SELECT);
- } else {
- return this.getToken(TSqlParser.SELECT, i);
- }
-};
-
-
-Create_schemaContext.prototype.INSERT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.INSERT);
- } else {
- return this.getToken(TSqlParser.INSERT, i);
- }
-};
-
-
-Create_schemaContext.prototype.DELETE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DELETE);
- } else {
- return this.getToken(TSqlParser.DELETE, i);
- }
-};
-
-
-Create_schemaContext.prototype.UPDATE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.UPDATE);
- } else {
- return this.getToken(TSqlParser.UPDATE, i);
- }
-};
-
-
-Create_schemaContext.prototype.COLON = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COLON);
- } else {
- return this.getToken(TSqlParser.COLON, i);
- }
-};
-
-
-Create_schemaContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_schema(this);
- }
-};
-
-Create_schemaContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_schema(this);
- }
-};
-
-Create_schemaContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_schema(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_schemaContext = Create_schemaContext;
-
-TSqlParser.prototype.create_schema = function() {
-
- var localctx = new Create_schemaContext(this, this._ctx, this.state);
- this.enterRule(localctx, 356, TSqlParser.RULE_create_schema);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 4247;
- this.match(TSqlParser.CREATE);
- this.state = 4248;
- this.match(TSqlParser.SCHEMA);
- this.state = 4256;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,456,this._ctx);
- switch(la_) {
- case 1:
- this.state = 4249;
- localctx.schema_name = this.id();
- break;
-
- case 2:
- this.state = 4250;
- this.match(TSqlParser.AUTHORIZATION);
- this.state = 4251;
- localctx.owner_name = this.id();
- break;
-
- case 3:
- this.state = 4252;
- localctx.schema_name = this.id();
- this.state = 4253;
- this.match(TSqlParser.AUTHORIZATION);
- this.state = 4254;
- localctx.owner_name = this.id();
- break;
-
- }
- this.state = 4286;
- this._errHandler.sync(this);
- var _alt = this._interp.adaptivePredict(this._input,460,this._ctx)
- while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
- if(_alt===1) {
- this.state = 4284;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,459,this._ctx);
- switch(la_) {
- case 1:
- this.state = 4258;
- this.create_table();
- break;
-
- case 2:
- this.state = 4259;
- this.create_view();
- break;
-
- case 3:
- this.state = 4260;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.DENY || _la===TSqlParser.GRANT)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 4261;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.DELETE || _la===TSqlParser.INSERT || _la===TSqlParser.SELECT || _la===TSqlParser.UPDATE)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 4262;
- this.match(TSqlParser.ON);
- this.state = 4266;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.SCHEMA) {
- this.state = 4263;
- this.match(TSqlParser.SCHEMA);
- this.state = 4264;
- this.match(TSqlParser.COLON);
- this.state = 4265;
- this.match(TSqlParser.COLON);
- }
-
- this.state = 4268;
- localctx.object_name = this.id();
- this.state = 4269;
- this.match(TSqlParser.TO);
- this.state = 4270;
- localctx.owner_name = this.id();
- break;
-
- case 4:
- this.state = 4272;
- this.match(TSqlParser.REVOKE);
- this.state = 4273;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.DELETE || _la===TSqlParser.INSERT || _la===TSqlParser.SELECT || _la===TSqlParser.UPDATE)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 4274;
- this.match(TSqlParser.ON);
- this.state = 4278;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.SCHEMA) {
- this.state = 4275;
- this.match(TSqlParser.SCHEMA);
- this.state = 4276;
- this.match(TSqlParser.COLON);
- this.state = 4277;
- this.match(TSqlParser.COLON);
- }
-
- this.state = 4280;
- localctx.object_name = this.id();
- this.state = 4281;
- this.match(TSqlParser.FROM);
- this.state = 4282;
- localctx.owner_name = this.id();
- break;
-
- }
- }
- this.state = 4288;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,460,this._ctx);
- }
-
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_schema_azure_sql_dw_and_pdwContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_schema_azure_sql_dw_and_pdw;
- this.schema_name = null; // IdContext
- this.owner_name = null; // IdContext
- return this;
-}
-
-Create_schema_azure_sql_dw_and_pdwContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_schema_azure_sql_dw_and_pdwContext.prototype.constructor = Create_schema_azure_sql_dw_and_pdwContext;
-
-Create_schema_azure_sql_dw_and_pdwContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_schema_azure_sql_dw_and_pdwContext.prototype.SCHEMA = function() {
- return this.getToken(TSqlParser.SCHEMA, 0);
-};
-
-Create_schema_azure_sql_dw_and_pdwContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Create_schema_azure_sql_dw_and_pdwContext.prototype.AUTHORIZATION = function() {
- return this.getToken(TSqlParser.AUTHORIZATION, 0);
-};
-
-Create_schema_azure_sql_dw_and_pdwContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_schema_azure_sql_dw_and_pdw(this);
- }
-};
-
-Create_schema_azure_sql_dw_and_pdwContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_schema_azure_sql_dw_and_pdw(this);
- }
-};
-
-Create_schema_azure_sql_dw_and_pdwContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_schema_azure_sql_dw_and_pdw(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_schema_azure_sql_dw_and_pdwContext = Create_schema_azure_sql_dw_and_pdwContext;
-
-TSqlParser.prototype.create_schema_azure_sql_dw_and_pdw = function() {
-
- var localctx = new Create_schema_azure_sql_dw_and_pdwContext(this, this._ctx, this.state);
- this.enterRule(localctx, 358, TSqlParser.RULE_create_schema_azure_sql_dw_and_pdw);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 4289;
- this.match(TSqlParser.CREATE);
- this.state = 4290;
- this.match(TSqlParser.SCHEMA);
- this.state = 4291;
- localctx.schema_name = this.id();
- this.state = 4294;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.AUTHORIZATION) {
- this.state = 4292;
- this.match(TSqlParser.AUTHORIZATION);
- this.state = 4293;
- localctx.owner_name = this.id();
- }
-
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_schema_azure_sql_dw_and_pdwContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_schema_azure_sql_dw_and_pdw;
- this.schema_name = null; // IdContext
- return this;
-}
-
-Alter_schema_azure_sql_dw_and_pdwContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_schema_azure_sql_dw_and_pdwContext.prototype.constructor = Alter_schema_azure_sql_dw_and_pdwContext;
-
-Alter_schema_azure_sql_dw_and_pdwContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Alter_schema_azure_sql_dw_and_pdwContext.prototype.SCHEMA = function() {
- return this.getToken(TSqlParser.SCHEMA, 0);
-};
-
-Alter_schema_azure_sql_dw_and_pdwContext.prototype.TRANSFER = function() {
- return this.getToken(TSqlParser.TRANSFER, 0);
-};
-
-Alter_schema_azure_sql_dw_and_pdwContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Alter_schema_azure_sql_dw_and_pdwContext.prototype.OBJECT = function() {
- return this.getToken(TSqlParser.OBJECT, 0);
-};
-
-Alter_schema_azure_sql_dw_and_pdwContext.prototype.COLON = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COLON);
- } else {
- return this.getToken(TSqlParser.COLON, i);
- }
-};
-
-
-Alter_schema_azure_sql_dw_and_pdwContext.prototype.DOT = function() {
- return this.getToken(TSqlParser.DOT, 0);
-};
-
-Alter_schema_azure_sql_dw_and_pdwContext.prototype.ID = function() {
- return this.getToken(TSqlParser.ID, 0);
-};
-
-Alter_schema_azure_sql_dw_and_pdwContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_schema_azure_sql_dw_and_pdw(this);
- }
-};
-
-Alter_schema_azure_sql_dw_and_pdwContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_schema_azure_sql_dw_and_pdw(this);
- }
-};
-
-Alter_schema_azure_sql_dw_and_pdwContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_schema_azure_sql_dw_and_pdw(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_schema_azure_sql_dw_and_pdwContext = Alter_schema_azure_sql_dw_and_pdwContext;
-
-TSqlParser.prototype.alter_schema_azure_sql_dw_and_pdw = function() {
-
- var localctx = new Alter_schema_azure_sql_dw_and_pdwContext(this, this._ctx, this.state);
- this.enterRule(localctx, 360, TSqlParser.RULE_alter_schema_azure_sql_dw_and_pdw);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 4296;
- this.match(TSqlParser.ALTER);
- this.state = 4297;
- this.match(TSqlParser.SCHEMA);
- this.state = 4298;
- localctx.schema_name = this.id();
- this.state = 4299;
- this.match(TSqlParser.TRANSFER);
- this.state = 4303;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,462,this._ctx);
- if(la_===1) {
- this.state = 4300;
- this.match(TSqlParser.OBJECT);
- this.state = 4301;
- this.match(TSqlParser.COLON);
- this.state = 4302;
- this.match(TSqlParser.COLON);
-
- }
- this.state = 4305;
- this.id();
- this.state = 4308;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.DOT) {
- this.state = 4306;
- this.match(TSqlParser.DOT);
- this.state = 4307;
- this.match(TSqlParser.ID);
- }
-
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_search_property_listContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_search_property_list;
- this.new_list_name = null; // IdContext
- this.database_name = null; // IdContext
- this.source_list_name = null; // IdContext
- this.owner_name = null; // IdContext
- return this;
-}
-
-Create_search_property_listContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_search_property_listContext.prototype.constructor = Create_search_property_listContext;
-
-Create_search_property_listContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_search_property_listContext.prototype.SEARCH = function() {
- return this.getToken(TSqlParser.SEARCH, 0);
-};
-
-Create_search_property_listContext.prototype.PROPERTY = function() {
- return this.getToken(TSqlParser.PROPERTY, 0);
-};
-
-Create_search_property_listContext.prototype.LIST = function() {
- return this.getToken(TSqlParser.LIST, 0);
-};
-
-Create_search_property_listContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Create_search_property_listContext.prototype.FROM = function() {
- return this.getToken(TSqlParser.FROM, 0);
-};
-
-Create_search_property_listContext.prototype.AUTHORIZATION = function() {
- return this.getToken(TSqlParser.AUTHORIZATION, 0);
-};
-
-Create_search_property_listContext.prototype.DOT = function() {
- return this.getToken(TSqlParser.DOT, 0);
-};
-
-Create_search_property_listContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_search_property_list(this);
- }
-};
-
-Create_search_property_listContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_search_property_list(this);
- }
-};
-
-Create_search_property_listContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_search_property_list(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_search_property_listContext = Create_search_property_listContext;
-
-TSqlParser.prototype.create_search_property_list = function() {
-
- var localctx = new Create_search_property_listContext(this, this._ctx, this.state);
- this.enterRule(localctx, 362, TSqlParser.RULE_create_search_property_list);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 4310;
- this.match(TSqlParser.CREATE);
- this.state = 4311;
- this.match(TSqlParser.SEARCH);
- this.state = 4312;
- this.match(TSqlParser.PROPERTY);
- this.state = 4313;
- this.match(TSqlParser.LIST);
- this.state = 4314;
- localctx.new_list_name = this.id();
- this.state = 4322;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.FROM) {
- this.state = 4315;
- this.match(TSqlParser.FROM);
- this.state = 4319;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,464,this._ctx);
- if(la_===1) {
- this.state = 4316;
- localctx.database_name = this.id();
- this.state = 4317;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 4321;
- localctx.source_list_name = this.id();
- }
-
- this.state = 4326;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.AUTHORIZATION) {
- this.state = 4324;
- this.match(TSqlParser.AUTHORIZATION);
- this.state = 4325;
- localctx.owner_name = this.id();
- }
-
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_security_policyContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_security_policy;
- this.schema_name = null; // IdContext
- this.security_policy_name = null; // IdContext
- this.tvf_schema_name = null; // IdContext
- this.security_predicate_function_name = null; // IdContext
- this.column_name_or_arguments = null; // IdContext
- this.table_schema_name = null; // IdContext
- this.name = null; // IdContext
- return this;
-}
-
-Create_security_policyContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_security_policyContext.prototype.constructor = Create_security_policyContext;
-
-Create_security_policyContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_security_policyContext.prototype.SECURITY = function() {
- return this.getToken(TSqlParser.SECURITY, 0);
-};
-
-Create_security_policyContext.prototype.POLICY = function() {
- return this.getToken(TSqlParser.POLICY, 0);
-};
-
-Create_security_policyContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Create_security_policyContext.prototype.DOT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DOT);
- } else {
- return this.getToken(TSqlParser.DOT, i);
- }
-};
-
-
-Create_security_policyContext.prototype.ADD = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ADD);
- } else {
- return this.getToken(TSqlParser.ADD, i);
- }
-};
-
-
-Create_security_policyContext.prototype.PREDICATE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.PREDICATE);
- } else {
- return this.getToken(TSqlParser.PREDICATE, i);
- }
-};
-
-
-Create_security_policyContext.prototype.LR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.LR_BRACKET);
- } else {
- return this.getToken(TSqlParser.LR_BRACKET, i);
- }
-};
-
-
-Create_security_policyContext.prototype.RR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.RR_BRACKET);
- } else {
- return this.getToken(TSqlParser.RR_BRACKET, i);
- }
-};
-
-
-Create_security_policyContext.prototype.ON = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ON);
- } else {
- return this.getToken(TSqlParser.ON, i);
- }
-};
-
-
-Create_security_policyContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Create_security_policyContext.prototype.STATE = function() {
- return this.getToken(TSqlParser.STATE, 0);
-};
-
-Create_security_policyContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Create_security_policyContext.prototype.NOT = function() {
- return this.getToken(TSqlParser.NOT, 0);
-};
-
-Create_security_policyContext.prototype.FOR = function() {
- return this.getToken(TSqlParser.FOR, 0);
-};
-
-Create_security_policyContext.prototype.REPLICATION = function() {
- return this.getToken(TSqlParser.REPLICATION, 0);
-};
-
-Create_security_policyContext.prototype.OFF = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.OFF);
- } else {
- return this.getToken(TSqlParser.OFF, i);
- }
-};
-
-
-Create_security_policyContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Create_security_policyContext.prototype.AFTER = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.AFTER);
- } else {
- return this.getToken(TSqlParser.AFTER, i);
- }
-};
-
-
-Create_security_policyContext.prototype.BEFORE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.BEFORE);
- } else {
- return this.getToken(TSqlParser.BEFORE, i);
- }
-};
-
-
-Create_security_policyContext.prototype.SCHEMABINDING = function() {
- return this.getToken(TSqlParser.SCHEMABINDING, 0);
-};
-
-Create_security_policyContext.prototype.FILTER = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.FILTER);
- } else {
- return this.getToken(TSqlParser.FILTER, i);
- }
-};
-
-
-Create_security_policyContext.prototype.BLOCK = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.BLOCK);
- } else {
- return this.getToken(TSqlParser.BLOCK, i);
- }
-};
-
-
-Create_security_policyContext.prototype.INSERT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.INSERT);
- } else {
- return this.getToken(TSqlParser.INSERT, i);
- }
-};
-
-
-Create_security_policyContext.prototype.UPDATE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.UPDATE);
- } else {
- return this.getToken(TSqlParser.UPDATE, i);
- }
-};
-
-
-Create_security_policyContext.prototype.DELETE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DELETE);
- } else {
- return this.getToken(TSqlParser.DELETE, i);
- }
-};
-
-
-Create_security_policyContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_security_policy(this);
- }
-};
-
-Create_security_policyContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_security_policy(this);
- }
-};
-
-Create_security_policyContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_security_policy(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_security_policyContext = Create_security_policyContext;
-
-TSqlParser.prototype.create_security_policy = function() {
-
- var localctx = new Create_security_policyContext(this, this._ctx, this.state);
- this.enterRule(localctx, 364, TSqlParser.RULE_create_security_policy);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 4328;
- this.match(TSqlParser.CREATE);
- this.state = 4329;
- this.match(TSqlParser.SECURITY);
- this.state = 4330;
- this.match(TSqlParser.POLICY);
- this.state = 4334;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,467,this._ctx);
- if(la_===1) {
- this.state = 4331;
- localctx.schema_name = this.id();
- this.state = 4332;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 4336;
- localctx.security_policy_name = this.id();
- this.state = 4377;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- do {
- this.state = 4338;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 4337;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 4340;
- this.match(TSqlParser.ADD);
- this.state = 4342;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.BLOCK || _la===TSqlParser.FILTER) {
- this.state = 4341;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.BLOCK || _la===TSqlParser.FILTER)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- }
-
- this.state = 4344;
- this.match(TSqlParser.PREDICATE);
- this.state = 4345;
- localctx.tvf_schema_name = this.id();
- this.state = 4346;
- this.match(TSqlParser.DOT);
- this.state = 4347;
- localctx.security_predicate_function_name = this.id();
- this.state = 4348;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 4353;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- do {
- this.state = 4350;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 4349;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 4352;
- localctx.column_name_or_arguments = this.id();
- this.state = 4355;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- } while(_la===TSqlParser.CALLED || _la===TSqlParser.DATA_COMPRESSION || ((((_la - 112)) & ~0x1f) == 0 && ((1 << (_la - 112)) & ((1 << (TSqlParser.EVENTDATA - 112)) | (1 << (TSqlParser.FILENAME - 112)) | (1 << (TSqlParser.FILLFACTOR - 112)) | (1 << (TSqlParser.FORCESEEK - 112)))) !== 0) || ((((_la - 158)) & ~0x1f) == 0 && ((1 << (_la - 158)) & ((1 << (TSqlParser.INIT - 158)) | (1 << (TSqlParser.KEY - 158)) | (1 << (TSqlParser.MASTER - 158)) | (1 << (TSqlParser.MAX_MEMORY - 158)))) !== 0) || _la===TSqlParser.OFFSETS || _la===TSqlParser.PAGE || ((((_la - 259)) & ~0x1f) == 0 && ((1 << (_la - 259)) & ((1 << (TSqlParser.PUBLIC - 259)) | (1 << (TSqlParser.R - 259)) | (1 << (TSqlParser.RAW - 259)) | (1 << (TSqlParser.RETURN - 259)) | (1 << (TSqlParser.RETURNS - 259)) | (1 << (TSqlParser.ROWCOUNT - 259)))) !== 0) || ((((_la - 295)) & ~0x1f) == 0 && ((1 << (_la - 295)) & ((1 << (TSqlParser.SAFETY - 295)) | (1 << (TSqlParser.SERVER - 295)) | (1 << (TSqlParser.SID - 295)) | (1 << (TSqlParser.SOURCE - 295)) | (1 << (TSqlParser.SPLIT - 295)))) !== 0) || ((((_la - 327)) & ~0x1f) == 0 && ((1 << (_la - 327)) & ((1 << (TSqlParser.STATE - 327)) | (1 << (TSqlParser.START - 327)) | (1 << (TSqlParser.TARGET - 327)))) !== 0) || ((((_la - 380)) & ~0x1f) == 0 && ((1 << (_la - 380)) & ((1 << (TSqlParser.ABSOLUTE - 380)) | (1 << (TSqlParser.ACCENT_SENSITIVITY - 380)) | (1 << (TSqlParser.ACTION - 380)) | (1 << (TSqlParser.ACTIVATION - 380)) | (1 << (TSqlParser.ACTIVE - 380)) | (1 << (TSqlParser.ADDRESS - 380)) | (1 << (TSqlParser.AES_128 - 380)) | (1 << (TSqlParser.AES_192 - 380)) | (1 << (TSqlParser.AES_256 - 380)) | (1 << (TSqlParser.AFFINITY - 380)) | (1 << (TSqlParser.AFTER - 380)) | (1 << (TSqlParser.AGGREGATE - 380)) | (1 << (TSqlParser.ALGORITHM - 380)) | (1 << (TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS - 380)) | (1 << (TSqlParser.ALLOW_SNAPSHOT_ISOLATION - 380)) | (1 << (TSqlParser.ALLOWED - 380)) | (1 << (TSqlParser.ANSI_NULL_DEFAULT - 380)) | (1 << (TSqlParser.ANSI_NULLS - 380)) | (1 << (TSqlParser.ANSI_PADDING - 380)) | (1 << (TSqlParser.ANSI_WARNINGS - 380)) | (1 << (TSqlParser.APPLICATION_LOG - 380)) | (1 << (TSqlParser.APPLY - 380)) | (1 << (TSqlParser.ARITHABORT - 380)) | (1 << (TSqlParser.ASSEMBLY - 380)) | (1 << (TSqlParser.AUDIT - 380)) | (1 << (TSqlParser.AUDIT_GUID - 380)) | (1 << (TSqlParser.AUTO - 380)) | (1 << (TSqlParser.AUTO_CLEANUP - 380)) | (1 << (TSqlParser.AUTO_CLOSE - 380)) | (1 << (TSqlParser.AUTO_CREATE_STATISTICS - 380)) | (1 << (TSqlParser.AUTO_SHRINK - 380)) | (1 << (TSqlParser.AUTO_UPDATE_STATISTICS - 380)))) !== 0) || ((((_la - 412)) & ~0x1f) == 0 && ((1 << (_la - 412)) & ((1 << (TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC - 412)) | (1 << (TSqlParser.AVAILABILITY - 412)) | (1 << (TSqlParser.AVG - 412)) | (1 << (TSqlParser.BACKUP_PRIORITY - 412)) | (1 << (TSqlParser.BEGIN_DIALOG - 412)) | (1 << (TSqlParser.BIGINT - 412)) | (1 << (TSqlParser.BINARY_BASE64 - 412)) | (1 << (TSqlParser.BINARY_CHECKSUM - 412)) | (1 << (TSqlParser.BINDING - 412)) | (1 << (TSqlParser.BLOB_STORAGE - 412)) | (1 << (TSqlParser.BROKER - 412)) | (1 << (TSqlParser.BROKER_INSTANCE - 412)) | (1 << (TSqlParser.BULK_LOGGED - 412)) | (1 << (TSqlParser.CALLER - 412)) | (1 << (TSqlParser.CAP_CPU_PERCENT - 412)) | (1 << (TSqlParser.CAST - 412)) | (1 << (TSqlParser.CATALOG - 412)) | (1 << (TSqlParser.CATCH - 412)) | (1 << (TSqlParser.CHANGE_RETENTION - 412)) | (1 << (TSqlParser.CHANGE_TRACKING - 412)) | (1 << (TSqlParser.CHECKSUM - 412)) | (1 << (TSqlParser.CHECKSUM_AGG - 412)) | (1 << (TSqlParser.CLEANUP - 412)) | (1 << (TSqlParser.COLLECTION - 412)) | (1 << (TSqlParser.COLUMN_MASTER_KEY - 412)) | (1 << (TSqlParser.COMMITTED - 412)) | (1 << (TSqlParser.COMPATIBILITY_LEVEL - 412)) | (1 << (TSqlParser.CONCAT - 412)) | (1 << (TSqlParser.CONCAT_NULL_YIELDS_NULL - 412)) | (1 << (TSqlParser.CONTENT - 412)) | (1 << (TSqlParser.CONTROL - 412)) | (1 << (TSqlParser.COOKIE - 412)))) !== 0) || ((((_la - 444)) & ~0x1f) == 0 && ((1 << (_la - 444)) & ((1 << (TSqlParser.COUNT - 444)) | (1 << (TSqlParser.COUNT_BIG - 444)) | (1 << (TSqlParser.COUNTER - 444)) | (1 << (TSqlParser.CPU - 444)) | (1 << (TSqlParser.CREATE_NEW - 444)) | (1 << (TSqlParser.CREATION_DISPOSITION - 444)) | (1 << (TSqlParser.CREDENTIAL - 444)) | (1 << (TSqlParser.CRYPTOGRAPHIC - 444)) | (1 << (TSqlParser.CURSOR_CLOSE_ON_COMMIT - 444)) | (1 << (TSqlParser.CURSOR_DEFAULT - 444)) | (1 << (TSqlParser.DATA - 444)) | (1 << (TSqlParser.DATE_CORRELATION_OPTIMIZATION - 444)) | (1 << (TSqlParser.DATEADD - 444)) | (1 << (TSqlParser.DATEDIFF - 444)) | (1 << (TSqlParser.DATENAME - 444)) | (1 << (TSqlParser.DATEPART - 444)) | (1 << (TSqlParser.DAYS - 444)) | (1 << (TSqlParser.DB_CHAINING - 444)) | (1 << (TSqlParser.DB_FAILOVER - 444)) | (1 << (TSqlParser.DECRYPTION - 444)) | (1 << (TSqlParser.DEFAULT_DOUBLE_QUOTE - 444)) | (1 << (TSqlParser.DEFAULT_FULLTEXT_LANGUAGE - 444)) | (1 << (TSqlParser.DEFAULT_LANGUAGE - 444)) | (1 << (TSqlParser.DELAY - 444)) | (1 << (TSqlParser.DELAYED_DURABILITY - 444)) | (1 << (TSqlParser.DELETED - 444)) | (1 << (TSqlParser.DENSE_RANK - 444)) | (1 << (TSqlParser.DEPENDENTS - 444)) | (1 << (TSqlParser.DES - 444)) | (1 << (TSqlParser.DESCRIPTION - 444)) | (1 << (TSqlParser.DESX - 444)) | (1 << (TSqlParser.DHCP - 444)))) !== 0) || ((((_la - 476)) & ~0x1f) == 0 && ((1 << (_la - 476)) & ((1 << (TSqlParser.DIALOG - 476)) | (1 << (TSqlParser.DIRECTORY_NAME - 476)) | (1 << (TSqlParser.DISABLE - 476)) | (1 << (TSqlParser.DISABLE_BROKER - 476)) | (1 << (TSqlParser.DISABLED - 476)) | (1 << (TSqlParser.DISK_DRIVE - 476)) | (1 << (TSqlParser.DOCUMENT - 476)) | (1 << (TSqlParser.DYNAMIC - 476)) | (1 << (TSqlParser.EMERGENCY - 476)) | (1 << (TSqlParser.EMPTY - 476)) | (1 << (TSqlParser.ENABLE - 476)) | (1 << (TSqlParser.ENABLE_BROKER - 476)) | (1 << (TSqlParser.ENCRYPTED_VALUE - 476)) | (1 << (TSqlParser.ENCRYPTION - 476)) | (1 << (TSqlParser.ENDPOINT_URL - 476)) | (1 << (TSqlParser.ERROR_BROKER_CONVERSATIONS - 476)) | (1 << (TSqlParser.EXCLUSIVE - 476)) | (1 << (TSqlParser.EXECUTABLE - 476)) | (1 << (TSqlParser.EXIST - 476)) | (1 << (TSqlParser.EXPAND - 476)) | (1 << (TSqlParser.EXPIRY_DATE - 476)) | (1 << (TSqlParser.EXPLICIT - 476)) | (1 << (TSqlParser.FAIL_OPERATION - 476)) | (1 << (TSqlParser.FAILOVER_MODE - 476)) | (1 << (TSqlParser.FAILURE - 476)) | (1 << (TSqlParser.FAILURE_CONDITION_LEVEL - 476)) | (1 << (TSqlParser.FAST - 476)) | (1 << (TSqlParser.FAST_FORWARD - 476)) | (1 << (TSqlParser.FILEGROUP - 476)) | (1 << (TSqlParser.FILEGROWTH - 476)) | (1 << (TSqlParser.FILEPATH - 476)))) !== 0) || ((((_la - 508)) & ~0x1f) == 0 && ((1 << (_la - 508)) & ((1 << (TSqlParser.FILESTREAM - 508)) | (1 << (TSqlParser.FILTER - 508)) | (1 << (TSqlParser.FIRST - 508)) | (1 << (TSqlParser.FIRST_VALUE - 508)) | (1 << (TSqlParser.FOLLOWING - 508)) | (1 << (TSqlParser.FORCE - 508)) | (1 << (TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS - 508)) | (1 << (TSqlParser.FORCED - 508)) | (1 << (TSqlParser.FORMAT - 508)) | (1 << (TSqlParser.FORWARD_ONLY - 508)) | (1 << (TSqlParser.FULLSCAN - 508)) | (1 << (TSqlParser.FULLTEXT - 508)) | (1 << (TSqlParser.GB - 508)) | (1 << (TSqlParser.GETDATE - 508)) | (1 << (TSqlParser.GETUTCDATE - 508)) | (1 << (TSqlParser.GLOBAL - 508)) | (1 << (TSqlParser.GO - 508)) | (1 << (TSqlParser.GROUP_MAX_REQUESTS - 508)) | (1 << (TSqlParser.GROUPING - 508)) | (1 << (TSqlParser.GROUPING_ID - 508)) | (1 << (TSqlParser.HADR - 508)) | (1 << (TSqlParser.HASH - 508)) | (1 << (TSqlParser.HEALTH_CHECK_TIMEOUT - 508)) | (1 << (TSqlParser.HIGH - 508)) | (1 << (TSqlParser.HONOR_BROKER_PRIORITY - 508)) | (1 << (TSqlParser.HOURS - 508)) | (1 << (TSqlParser.IDENTITY_VALUE - 508)) | (1 << (TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX - 508)) | (1 << (TSqlParser.IMMEDIATE - 508)) | (1 << (TSqlParser.IMPERSONATE - 508)) | (1 << (TSqlParser.IMPORTANCE - 508)))) !== 0) || ((((_la - 540)) & ~0x1f) == 0 && ((1 << (_la - 540)) & ((1 << (TSqlParser.INCREMENTAL - 540)) | (1 << (TSqlParser.INITIATOR - 540)) | (1 << (TSqlParser.INPUT - 540)) | (1 << (TSqlParser.INSENSITIVE - 540)) | (1 << (TSqlParser.INSERTED - 540)) | (1 << (TSqlParser.INT - 540)) | (1 << (TSqlParser.IP - 540)) | (1 << (TSqlParser.ISOLATION - 540)) | (1 << (TSqlParser.KB - 540)) | (1 << (TSqlParser.KEEP - 540)) | (1 << (TSqlParser.KEEPFIXED - 540)) | (1 << (TSqlParser.KEY_SOURCE - 540)) | (1 << (TSqlParser.KEYS - 540)) | (1 << (TSqlParser.KEYSET - 540)) | (1 << (TSqlParser.LAG - 540)) | (1 << (TSqlParser.LAST - 540)) | (1 << (TSqlParser.LAST_VALUE - 540)) | (1 << (TSqlParser.LEAD - 540)) | (1 << (TSqlParser.LEVEL - 540)) | (1 << (TSqlParser.LIST - 540)) | (1 << (TSqlParser.LISTENER - 540)) | (1 << (TSqlParser.LISTENER_URL - 540)) | (1 << (TSqlParser.LOB_COMPACTION - 540)) | (1 << (TSqlParser.LOCAL - 540)) | (1 << (TSqlParser.LOCATION - 540)) | (1 << (TSqlParser.LOCK - 540)) | (1 << (TSqlParser.LOCK_ESCALATION - 540)) | (1 << (TSqlParser.LOGIN - 540)) | (1 << (TSqlParser.LOOP - 540)) | (1 << (TSqlParser.LOW - 540)))) !== 0) || ((((_la - 572)) & ~0x1f) == 0 && ((1 << (_la - 572)) & ((1 << (TSqlParser.MANUAL - 572)) | (1 << (TSqlParser.MARK - 572)) | (1 << (TSqlParser.MATERIALIZED - 572)) | (1 << (TSqlParser.MAX - 572)) | (1 << (TSqlParser.MAX_CPU_PERCENT - 572)) | (1 << (TSqlParser.MAX_DOP - 572)) | (1 << (TSqlParser.MAX_FILES - 572)) | (1 << (TSqlParser.MAX_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MAX_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MAX_PROCESSES - 572)) | (1 << (TSqlParser.MAX_QUEUE_READERS - 572)) | (1 << (TSqlParser.MAX_ROLLOVER_FILES - 572)) | (1 << (TSqlParser.MAXDOP - 572)) | (1 << (TSqlParser.MAXRECURSION - 572)) | (1 << (TSqlParser.MAXSIZE - 572)) | (1 << (TSqlParser.MB - 572)) | (1 << (TSqlParser.MEDIUM - 572)) | (1 << (TSqlParser.MEMORY_OPTIMIZED_DATA - 572)) | (1 << (TSqlParser.MESSAGE - 572)) | (1 << (TSqlParser.MIN - 572)) | (1 << (TSqlParser.MIN_ACTIVE_ROWVERSION - 572)) | (1 << (TSqlParser.MIN_CPU_PERCENT - 572)) | (1 << (TSqlParser.MIN_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MIN_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MINUTES - 572)) | (1 << (TSqlParser.MIRROR_ADDRESS - 572)) | (1 << (TSqlParser.MIXED_PAGE_ALLOCATION - 572)) | (1 << (TSqlParser.MODE - 572)) | (1 << (TSqlParser.MODIFY - 572)) | (1 << (TSqlParser.MOVE - 572)) | (1 << (TSqlParser.MULTI_USER - 572)) | (1 << (TSqlParser.NAME - 572)))) !== 0) || ((((_la - 604)) & ~0x1f) == 0 && ((1 << (_la - 604)) & ((1 << (TSqlParser.NESTED_TRIGGERS - 604)) | (1 << (TSqlParser.NEW_ACCOUNT - 604)) | (1 << (TSqlParser.NEW_BROKER - 604)) | (1 << (TSqlParser.NEW_PASSWORD - 604)) | (1 << (TSqlParser.NEXT - 604)) | (1 << (TSqlParser.NO - 604)) | (1 << (TSqlParser.NO_TRUNCATE - 604)) | (1 << (TSqlParser.NO_WAIT - 604)) | (1 << (TSqlParser.NOCOUNT - 604)) | (1 << (TSqlParser.NODES - 604)) | (1 << (TSqlParser.NOEXPAND - 604)) | (1 << (TSqlParser.NON_TRANSACTED_ACCESS - 604)) | (1 << (TSqlParser.NORECOMPUTE - 604)) | (1 << (TSqlParser.NORECOVERY - 604)) | (1 << (TSqlParser.NOWAIT - 604)) | (1 << (TSqlParser.NTILE - 604)) | (1 << (TSqlParser.NUMANODE - 604)) | (1 << (TSqlParser.NUMBER - 604)) | (1 << (TSqlParser.NUMERIC_ROUNDABORT - 604)) | (1 << (TSqlParser.OBJECT - 604)) | (1 << (TSqlParser.OFFLINE - 604)) | (1 << (TSqlParser.OFFSET - 604)) | (1 << (TSqlParser.OLD_ACCOUNT - 604)) | (1 << (TSqlParser.ONLINE - 604)) | (1 << (TSqlParser.ONLY - 604)) | (1 << (TSqlParser.OPEN_EXISTING - 604)) | (1 << (TSqlParser.OPTIMISTIC - 604)) | (1 << (TSqlParser.OPTIMIZE - 604)) | (1 << (TSqlParser.OUT - 604)) | (1 << (TSqlParser.OUTPUT - 604)) | (1 << (TSqlParser.OWNER - 604)))) !== 0) || ((((_la - 636)) & ~0x1f) == 0 && ((1 << (_la - 636)) & ((1 << (TSqlParser.PAGE_VERIFY - 636)) | (1 << (TSqlParser.PARAMETERIZATION - 636)) | (1 << (TSqlParser.PARTITION - 636)) | (1 << (TSqlParser.PARTITIONS - 636)) | (1 << (TSqlParser.PARTNER - 636)) | (1 << (TSqlParser.PATH - 636)) | (1 << (TSqlParser.POISON_MESSAGE_HANDLING - 636)) | (1 << (TSqlParser.POOL - 636)) | (1 << (TSqlParser.PORT - 636)) | (1 << (TSqlParser.PRECEDING - 636)) | (1 << (TSqlParser.PRIMARY_ROLE - 636)) | (1 << (TSqlParser.PRIOR - 636)) | (1 << (TSqlParser.PRIORITY - 636)) | (1 << (TSqlParser.PRIORITY_LEVEL - 636)) | (1 << (TSqlParser.PRIVATE - 636)) | (1 << (TSqlParser.PRIVATE_KEY - 636)) | (1 << (TSqlParser.PRIVILEGES - 636)) | (1 << (TSqlParser.PROCEDURE_NAME - 636)) | (1 << (TSqlParser.PROPERTY - 636)) | (1 << (TSqlParser.PROVIDER - 636)) | (1 << (TSqlParser.PROVIDER_KEY_NAME - 636)) | (1 << (TSqlParser.QUERY - 636)) | (1 << (TSqlParser.QUEUE - 636)) | (1 << (TSqlParser.QUEUE_DELAY - 636)) | (1 << (TSqlParser.QUOTED_IDENTIFIER - 636)) | (1 << (TSqlParser.RANGE - 636)) | (1 << (TSqlParser.RANK - 636)) | (1 << (TSqlParser.RC2 - 636)) | (1 << (TSqlParser.RC4 - 636)) | (1 << (TSqlParser.RC4_128 - 636)) | (1 << (TSqlParser.READ_COMMITTED_SNAPSHOT - 636)) | (1 << (TSqlParser.READ_ONLY - 636)))) !== 0) || ((((_la - 668)) & ~0x1f) == 0 && ((1 << (_la - 668)) & ((1 << (TSqlParser.READ_ONLY_ROUTING_LIST - 668)) | (1 << (TSqlParser.READ_WRITE - 668)) | (1 << (TSqlParser.READONLY - 668)) | (1 << (TSqlParser.REBUILD - 668)) | (1 << (TSqlParser.RECEIVE - 668)) | (1 << (TSqlParser.RECOMPILE - 668)) | (1 << (TSqlParser.RECOVERY - 668)) | (1 << (TSqlParser.RECURSIVE_TRIGGERS - 668)) | (1 << (TSqlParser.RELATIVE - 668)) | (1 << (TSqlParser.REMOTE - 668)) | (1 << (TSqlParser.REMOTE_SERVICE_NAME - 668)) | (1 << (TSqlParser.REMOVE - 668)) | (1 << (TSqlParser.REORGANIZE - 668)) | (1 << (TSqlParser.REPEATABLE - 668)) | (1 << (TSqlParser.REPLICA - 668)) | (1 << (TSqlParser.REQUEST_MAX_CPU_TIME_SEC - 668)) | (1 << (TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT - 668)) | (1 << (TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC - 668)) | (1 << (TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT - 668)) | (1 << (TSqlParser.RESERVE_DISK_SPACE - 668)) | (1 << (TSqlParser.RESOURCE - 668)) | (1 << (TSqlParser.RESOURCE_MANAGER_LOCATION - 668)) | (1 << (TSqlParser.RESTRICTED_USER - 668)) | (1 << (TSqlParser.RETENTION - 668)) | (1 << (TSqlParser.ROBUST - 668)) | (1 << (TSqlParser.ROOT - 668)) | (1 << (TSqlParser.ROUTE - 668)) | (1 << (TSqlParser.ROW - 668)) | (1 << (TSqlParser.ROW_NUMBER - 668)) | (1 << (TSqlParser.ROWGUID - 668)) | (1 << (TSqlParser.ROWS - 668)) | (1 << (TSqlParser.SAMPLE - 668)))) !== 0) || ((((_la - 700)) & ~0x1f) == 0 && ((1 << (_la - 700)) & ((1 << (TSqlParser.SCHEMABINDING - 700)) | (1 << (TSqlParser.SCOPED - 700)) | (1 << (TSqlParser.SCROLL - 700)) | (1 << (TSqlParser.SCROLL_LOCKS - 700)) | (1 << (TSqlParser.SEARCH - 700)) | (1 << (TSqlParser.SECONDARY - 700)) | (1 << (TSqlParser.SECONDARY_ONLY - 700)) | (1 << (TSqlParser.SECONDARY_ROLE - 700)) | (1 << (TSqlParser.SECONDS - 700)) | (1 << (TSqlParser.SECRET - 700)) | (1 << (TSqlParser.SECURITY - 700)) | (1 << (TSqlParser.SECURITY_LOG - 700)) | (1 << (TSqlParser.SEEDING_MODE - 700)) | (1 << (TSqlParser.SELF - 700)) | (1 << (TSqlParser.SEMI_SENSITIVE - 700)) | (1 << (TSqlParser.SEND - 700)) | (1 << (TSqlParser.SENT - 700)) | (1 << (TSqlParser.SEQUENCE - 700)) | (1 << (TSqlParser.SERIALIZABLE - 700)) | (1 << (TSqlParser.SESSION_TIMEOUT - 700)) | (1 << (TSqlParser.SETERROR - 700)) | (1 << (TSqlParser.SHARE - 700)) | (1 << (TSqlParser.SHOWPLAN - 700)) | (1 << (TSqlParser.SIGNATURE - 700)) | (1 << (TSqlParser.SIMPLE - 700)) | (1 << (TSqlParser.SINGLE_USER - 700)) | (1 << (TSqlParser.SIZE - 700)) | (1 << (TSqlParser.SMALLINT - 700)) | (1 << (TSqlParser.SNAPSHOT - 700)) | (1 << (TSqlParser.SPATIAL_WINDOW_MAX_CELLS - 700)) | (1 << (TSqlParser.STANDBY - 700)) | (1 << (TSqlParser.START_DATE - 700)))) !== 0) || ((((_la - 732)) & ~0x1f) == 0 && ((1 << (_la - 732)) & ((1 << (TSqlParser.STATIC - 732)) | (1 << (TSqlParser.STATS_STREAM - 732)) | (1 << (TSqlParser.STATUS - 732)) | (1 << (TSqlParser.STDEV - 732)) | (1 << (TSqlParser.STDEVP - 732)) | (1 << (TSqlParser.STOPLIST - 732)) | (1 << (TSqlParser.STRING_AGG - 732)) | (1 << (TSqlParser.STUFF - 732)) | (1 << (TSqlParser.SUBJECT - 732)) | (1 << (TSqlParser.SUM - 732)) | (1 << (TSqlParser.SUSPEND - 732)) | (1 << (TSqlParser.SYMMETRIC - 732)) | (1 << (TSqlParser.SYNCHRONOUS_COMMIT - 732)) | (1 << (TSqlParser.SYNONYM - 732)) | (1 << (TSqlParser.SYSTEM - 732)) | (1 << (TSqlParser.TAKE - 732)) | (1 << (TSqlParser.TARGET_RECOVERY_TIME - 732)) | (1 << (TSqlParser.TB - 732)) | (1 << (TSqlParser.TEXTIMAGE_ON - 732)) | (1 << (TSqlParser.THROW - 732)) | (1 << (TSqlParser.TIES - 732)) | (1 << (TSqlParser.TIME - 732)) | (1 << (TSqlParser.TIMEOUT - 732)) | (1 << (TSqlParser.TIMER - 732)) | (1 << (TSqlParser.TINYINT - 732)) | (1 << (TSqlParser.TORN_PAGE_DETECTION - 732)) | (1 << (TSqlParser.TRANSFORM_NOISE_WORDS - 732)) | (1 << (TSqlParser.TRIPLE_DES - 732)) | (1 << (TSqlParser.TRIPLE_DES_3KEY - 732)) | (1 << (TSqlParser.TRUSTWORTHY - 732)))) !== 0) || ((((_la - 764)) & ~0x1f) == 0 && ((1 << (_la - 764)) & ((1 << (TSqlParser.TRY - 764)) | (1 << (TSqlParser.TSQL - 764)) | (1 << (TSqlParser.TWO_DIGIT_YEAR_CUTOFF - 764)) | (1 << (TSqlParser.TYPE - 764)) | (1 << (TSqlParser.TYPE_WARNING - 764)) | (1 << (TSqlParser.UNBOUNDED - 764)) | (1 << (TSqlParser.UNCOMMITTED - 764)) | (1 << (TSqlParser.UNKNOWN - 764)) | (1 << (TSqlParser.UNLIMITED - 764)) | (1 << (TSqlParser.USING - 764)) | (1 << (TSqlParser.VALID_XML - 764)) | (1 << (TSqlParser.VALIDATION - 764)) | (1 << (TSqlParser.VALUE - 764)) | (1 << (TSqlParser.VAR - 764)) | (1 << (TSqlParser.VARP - 764)) | (1 << (TSqlParser.VIEW_METADATA - 764)) | (1 << (TSqlParser.VIEWS - 764)) | (1 << (TSqlParser.WAIT - 764)) | (1 << (TSqlParser.WELL_FORMED_XML - 764)) | (1 << (TSqlParser.WORK - 764)) | (1 << (TSqlParser.WORKLOAD - 764)) | (1 << (TSqlParser.XML - 764)) | (1 << (TSqlParser.XMLNAMESPACES - 764)))) !== 0) || ((((_la - 796)) & ~0x1f) == 0 && ((1 << (_la - 796)) & ((1 << (TSqlParser.DOUBLE_QUOTE_ID - 796)) | (1 << (TSqlParser.SQUARE_BRACKET_ID - 796)) | (1 << (TSqlParser.ID - 796)))) !== 0) || _la===TSqlParser.COMMA);
- this.state = 4357;
- this.match(TSqlParser.RR_BRACKET);
- this.state = 4358;
- this.match(TSqlParser.ON);
- this.state = 4359;
- localctx.table_schema_name = this.id();
- this.state = 4360;
- this.match(TSqlParser.DOT);
- this.state = 4361;
- localctx.name = this.id();
- this.state = 4374;
- this._errHandler.sync(this);
- var _alt = this._interp.adaptivePredict(this._input,475,this._ctx)
- while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
- if(_alt===1) {
- this.state = 4372;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,474,this._ctx);
- switch(la_) {
- case 1:
- this.state = 4363;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 4362;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 4365;
- this.match(TSqlParser.AFTER);
- this.state = 4366;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.INSERT || _la===TSqlParser.UPDATE)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
-
- case 2:
- this.state = 4368;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 4367;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 4370;
- this.match(TSqlParser.BEFORE);
- this.state = 4371;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.DELETE || _la===TSqlParser.UPDATE)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
-
- }
- }
- this.state = 4376;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,475,this._ctx);
- }
-
- this.state = 4379;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- } while(_la===TSqlParser.ADD || _la===TSqlParser.COMMA);
- this.state = 4391;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,478,this._ctx);
- if(la_===1) {
- this.state = 4381;
- this.match(TSqlParser.WITH);
- this.state = 4382;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 4383;
- this.match(TSqlParser.STATE);
- this.state = 4384;
- this.match(TSqlParser.EQUAL);
- this.state = 4385;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 4388;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.SCHEMABINDING) {
- this.state = 4386;
- this.match(TSqlParser.SCHEMABINDING);
- this.state = 4387;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- }
-
- this.state = 4390;
- this.match(TSqlParser.RR_BRACKET);
-
- }
- this.state = 4396;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.NOT) {
- this.state = 4393;
- this.match(TSqlParser.NOT);
- this.state = 4394;
- this.match(TSqlParser.FOR);
- this.state = 4395;
- this.match(TSqlParser.REPLICATION);
- }
-
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_sequenceContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_sequence;
- this.schema_name = null; // IdContext
- this.sequence_name = null; // IdContext
- this.sequnce_increment = null; // Token
- return this;
-}
-
-Alter_sequenceContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_sequenceContext.prototype.constructor = Alter_sequenceContext;
-
-Alter_sequenceContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Alter_sequenceContext.prototype.SEQUENCE = function() {
- return this.getToken(TSqlParser.SEQUENCE, 0);
-};
-
-Alter_sequenceContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Alter_sequenceContext.prototype.DOT = function() {
- return this.getToken(TSqlParser.DOT, 0);
-};
-
-Alter_sequenceContext.prototype.RESTART = function() {
- return this.getToken(TSqlParser.RESTART, 0);
-};
-
-Alter_sequenceContext.prototype.INCREMENT = function() {
- return this.getToken(TSqlParser.INCREMENT, 0);
-};
-
-Alter_sequenceContext.prototype.BY = function() {
- return this.getToken(TSqlParser.BY, 0);
-};
-
-Alter_sequenceContext.prototype.MINVALUE = function() {
- return this.getToken(TSqlParser.MINVALUE, 0);
-};
-
-Alter_sequenceContext.prototype.DECIMAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DECIMAL);
- } else {
- return this.getToken(TSqlParser.DECIMAL, i);
- }
-};
-
-
-Alter_sequenceContext.prototype.NO = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.NO);
- } else {
- return this.getToken(TSqlParser.NO, i);
- }
-};
-
-
-Alter_sequenceContext.prototype.MAXVALUE = function() {
- return this.getToken(TSqlParser.MAXVALUE, 0);
-};
-
-Alter_sequenceContext.prototype.CYCLE = function() {
- return this.getToken(TSqlParser.CYCLE, 0);
-};
-
-Alter_sequenceContext.prototype.CACHE = function() {
- return this.getToken(TSqlParser.CACHE, 0);
-};
-
-Alter_sequenceContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Alter_sequenceContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_sequence(this);
- }
-};
-
-Alter_sequenceContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_sequence(this);
- }
-};
-
-Alter_sequenceContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_sequence(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_sequenceContext = Alter_sequenceContext;
-
-TSqlParser.prototype.alter_sequence = function() {
-
- var localctx = new Alter_sequenceContext(this, this._ctx, this.state);
- this.enterRule(localctx, 366, TSqlParser.RULE_alter_sequence);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 4398;
- this.match(TSqlParser.ALTER);
- this.state = 4399;
- this.match(TSqlParser.SEQUENCE);
- this.state = 4403;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,480,this._ctx);
- if(la_===1) {
- this.state = 4400;
- localctx.schema_name = this.id();
- this.state = 4401;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 4405;
- localctx.sequence_name = this.id();
- this.state = 4411;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.RESTART) {
- this.state = 4406;
- this.match(TSqlParser.RESTART);
- this.state = 4409;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,481,this._ctx);
- if(la_===1) {
- this.state = 4407;
- this.match(TSqlParser.WITH);
- this.state = 4408;
- this.match(TSqlParser.DECIMAL);
-
- }
- }
-
- this.state = 4416;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.INCREMENT) {
- this.state = 4413;
- this.match(TSqlParser.INCREMENT);
- this.state = 4414;
- this.match(TSqlParser.BY);
- this.state = 4415;
- localctx.sequnce_increment = this.match(TSqlParser.DECIMAL);
- }
-
- this.state = 4422;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,484,this._ctx);
- if(la_===1) {
- this.state = 4418;
- this.match(TSqlParser.MINVALUE);
- this.state = 4419;
- this.match(TSqlParser.DECIMAL);
-
- } else if(la_===2) {
- this.state = 4420;
- this.match(TSqlParser.NO);
- this.state = 4421;
- this.match(TSqlParser.MINVALUE);
-
- }
- this.state = 4428;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,485,this._ctx);
- if(la_===1) {
- this.state = 4424;
- this.match(TSqlParser.MAXVALUE);
- this.state = 4425;
- this.match(TSqlParser.DECIMAL);
-
- } else if(la_===2) {
- this.state = 4426;
- this.match(TSqlParser.NO);
- this.state = 4427;
- this.match(TSqlParser.MAXVALUE);
-
- }
- this.state = 4433;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,486,this._ctx);
- if(la_===1) {
- this.state = 4430;
- this.match(TSqlParser.CYCLE);
-
- } else if(la_===2) {
- this.state = 4431;
- this.match(TSqlParser.NO);
- this.state = 4432;
- this.match(TSqlParser.CYCLE);
-
- }
- this.state = 4439;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,487,this._ctx);
- if(la_===1) {
- this.state = 4435;
- this.match(TSqlParser.CACHE);
- this.state = 4436;
- this.match(TSqlParser.DECIMAL);
-
- } else if(la_===2) {
- this.state = 4437;
- this.match(TSqlParser.NO);
- this.state = 4438;
- this.match(TSqlParser.CACHE);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_sequenceContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_sequence;
- this.schema_name = null; // IdContext
- this.sequence_name = null; // IdContext
- return this;
-}
-
-Create_sequenceContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_sequenceContext.prototype.constructor = Create_sequenceContext;
-
-Create_sequenceContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_sequenceContext.prototype.SEQUENCE = function() {
- return this.getToken(TSqlParser.SEQUENCE, 0);
-};
-
-Create_sequenceContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Create_sequenceContext.prototype.DOT = function() {
- return this.getToken(TSqlParser.DOT, 0);
-};
-
-Create_sequenceContext.prototype.AS = function() {
- return this.getToken(TSqlParser.AS, 0);
-};
-
-Create_sequenceContext.prototype.data_type = function() {
- return this.getTypedRuleContext(Data_typeContext,0);
-};
-
-Create_sequenceContext.prototype.START = function() {
- return this.getToken(TSqlParser.START, 0);
-};
-
-Create_sequenceContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Create_sequenceContext.prototype.DECIMAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DECIMAL);
- } else {
- return this.getToken(TSqlParser.DECIMAL, i);
- }
-};
-
-
-Create_sequenceContext.prototype.INCREMENT = function() {
- return this.getToken(TSqlParser.INCREMENT, 0);
-};
-
-Create_sequenceContext.prototype.BY = function() {
- return this.getToken(TSqlParser.BY, 0);
-};
-
-Create_sequenceContext.prototype.MINVALUE = function() {
- return this.getToken(TSqlParser.MINVALUE, 0);
-};
-
-Create_sequenceContext.prototype.NO = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.NO);
- } else {
- return this.getToken(TSqlParser.NO, i);
- }
-};
-
-
-Create_sequenceContext.prototype.MAXVALUE = function() {
- return this.getToken(TSqlParser.MAXVALUE, 0);
-};
-
-Create_sequenceContext.prototype.CYCLE = function() {
- return this.getToken(TSqlParser.CYCLE, 0);
-};
-
-Create_sequenceContext.prototype.CACHE = function() {
- return this.getToken(TSqlParser.CACHE, 0);
-};
-
-Create_sequenceContext.prototype.MINUS = function() {
- return this.getToken(TSqlParser.MINUS, 0);
-};
-
-Create_sequenceContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_sequence(this);
- }
-};
-
-Create_sequenceContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_sequence(this);
- }
-};
-
-Create_sequenceContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_sequence(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_sequenceContext = Create_sequenceContext;
-
-TSqlParser.prototype.create_sequence = function() {
-
- var localctx = new Create_sequenceContext(this, this._ctx, this.state);
- this.enterRule(localctx, 368, TSqlParser.RULE_create_sequence);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 4441;
- this.match(TSqlParser.CREATE);
- this.state = 4442;
- this.match(TSqlParser.SEQUENCE);
- this.state = 4446;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,488,this._ctx);
- if(la_===1) {
- this.state = 4443;
- localctx.schema_name = this.id();
- this.state = 4444;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 4448;
- localctx.sequence_name = this.id();
- this.state = 4451;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.AS) {
- this.state = 4449;
- this.match(TSqlParser.AS);
- this.state = 4450;
- this.data_type();
- }
-
- this.state = 4456;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,490,this._ctx);
- if(la_===1) {
- this.state = 4453;
- this.match(TSqlParser.START);
- this.state = 4454;
- this.match(TSqlParser.WITH);
- this.state = 4455;
- this.match(TSqlParser.DECIMAL);
-
- }
- this.state = 4464;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.INCREMENT) {
- this.state = 4458;
- this.match(TSqlParser.INCREMENT);
- this.state = 4459;
- this.match(TSqlParser.BY);
- this.state = 4461;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.MINUS) {
- this.state = 4460;
- this.match(TSqlParser.MINUS);
- }
-
- this.state = 4463;
- this.match(TSqlParser.DECIMAL);
- }
-
- this.state = 4472;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,494,this._ctx);
- if(la_===1) {
- this.state = 4466;
- this.match(TSqlParser.MINVALUE);
- this.state = 4468;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,493,this._ctx);
- if(la_===1) {
- this.state = 4467;
- this.match(TSqlParser.DECIMAL);
-
- }
-
- } else if(la_===2) {
- this.state = 4470;
- this.match(TSqlParser.NO);
- this.state = 4471;
- this.match(TSqlParser.MINVALUE);
-
- }
- this.state = 4480;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,496,this._ctx);
- if(la_===1) {
- this.state = 4474;
- this.match(TSqlParser.MAXVALUE);
- this.state = 4476;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,495,this._ctx);
- if(la_===1) {
- this.state = 4475;
- this.match(TSqlParser.DECIMAL);
-
- }
-
- } else if(la_===2) {
- this.state = 4478;
- this.match(TSqlParser.NO);
- this.state = 4479;
- this.match(TSqlParser.MAXVALUE);
-
- }
- this.state = 4485;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,497,this._ctx);
- if(la_===1) {
- this.state = 4482;
- this.match(TSqlParser.CYCLE);
-
- } else if(la_===2) {
- this.state = 4483;
- this.match(TSqlParser.NO);
- this.state = 4484;
- this.match(TSqlParser.CYCLE);
-
- }
- this.state = 4493;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,499,this._ctx);
- if(la_===1) {
- this.state = 4487;
- this.match(TSqlParser.CACHE);
- this.state = 4489;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,498,this._ctx);
- if(la_===1) {
- this.state = 4488;
- this.match(TSqlParser.DECIMAL);
-
- }
-
- } else if(la_===2) {
- this.state = 4491;
- this.match(TSqlParser.NO);
- this.state = 4492;
- this.match(TSqlParser.CACHE);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_server_auditContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_server_audit;
- this.audit_name = null; // IdContext
- this.filepath = null; // Token
- this.max_rollover_files = null; // Token
- this.max_files = null; // Token
- this.queue_delay = null; // Token
- this.event_field_name = null; // IdContext
- this.new_audit_name = null; // IdContext
- return this;
-}
-
-Alter_server_auditContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_server_auditContext.prototype.constructor = Alter_server_auditContext;
-
-Alter_server_auditContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Alter_server_auditContext.prototype.SERVER = function() {
- return this.getToken(TSqlParser.SERVER, 0);
-};
-
-Alter_server_auditContext.prototype.AUDIT = function() {
- return this.getToken(TSqlParser.AUDIT, 0);
-};
-
-Alter_server_auditContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Alter_server_auditContext.prototype.REMOVE = function() {
- return this.getToken(TSqlParser.REMOVE, 0);
-};
-
-Alter_server_auditContext.prototype.WHERE = function() {
- return this.getToken(TSqlParser.WHERE, 0);
-};
-
-Alter_server_auditContext.prototype.MODIFY = function() {
- return this.getToken(TSqlParser.MODIFY, 0);
-};
-
-Alter_server_auditContext.prototype.NAME = function() {
- return this.getToken(TSqlParser.NAME, 0);
-};
-
-Alter_server_auditContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-Alter_server_auditContext.prototype.TO = function() {
- return this.getToken(TSqlParser.TO, 0);
-};
-
-Alter_server_auditContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Alter_server_auditContext.prototype.LR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.LR_BRACKET);
- } else {
- return this.getToken(TSqlParser.LR_BRACKET, i);
- }
-};
-
-
-Alter_server_auditContext.prototype.RR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.RR_BRACKET);
- } else {
- return this.getToken(TSqlParser.RR_BRACKET, i);
- }
-};
-
-
-Alter_server_auditContext.prototype.FILE = function() {
- return this.getToken(TSqlParser.FILE, 0);
-};
-
-Alter_server_auditContext.prototype.APPLICATION_LOG = function() {
- return this.getToken(TSqlParser.APPLICATION_LOG, 0);
-};
-
-Alter_server_auditContext.prototype.SECURITY_LOG = function() {
- return this.getToken(TSqlParser.SECURITY_LOG, 0);
-};
-
-Alter_server_auditContext.prototype.QUEUE_DELAY = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.QUEUE_DELAY);
- } else {
- return this.getToken(TSqlParser.QUEUE_DELAY, i);
- }
-};
-
-
-Alter_server_auditContext.prototype.ON_FAILURE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ON_FAILURE);
- } else {
- return this.getToken(TSqlParser.ON_FAILURE, i);
- }
-};
-
-
-Alter_server_auditContext.prototype.STATE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.STATE);
- } else {
- return this.getToken(TSqlParser.STATE, i);
- }
-};
-
-
-Alter_server_auditContext.prototype.DECIMAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DECIMAL);
- } else {
- return this.getToken(TSqlParser.DECIMAL, i);
- }
-};
-
-
-Alter_server_auditContext.prototype.STRING = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.STRING);
- } else {
- return this.getToken(TSqlParser.STRING, i);
- }
-};
-
-
-Alter_server_auditContext.prototype.AND = function() {
- return this.getToken(TSqlParser.AND, 0);
-};
-
-Alter_server_auditContext.prototype.OR = function() {
- return this.getToken(TSqlParser.OR, 0);
-};
-
-Alter_server_auditContext.prototype.CONTINUE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.CONTINUE);
- } else {
- return this.getToken(TSqlParser.CONTINUE, i);
- }
-};
-
-
-Alter_server_auditContext.prototype.SHUTDOWN = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.SHUTDOWN);
- } else {
- return this.getToken(TSqlParser.SHUTDOWN, i);
- }
-};
-
-
-Alter_server_auditContext.prototype.FAIL_OPERATION = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.FAIL_OPERATION);
- } else {
- return this.getToken(TSqlParser.FAIL_OPERATION, i);
- }
-};
-
-
-Alter_server_auditContext.prototype.ON = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ON);
- } else {
- return this.getToken(TSqlParser.ON, i);
- }
-};
-
-
-Alter_server_auditContext.prototype.OFF = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.OFF);
- } else {
- return this.getToken(TSqlParser.OFF, i);
- }
-};
-
-
-Alter_server_auditContext.prototype.GREATER = function() {
- return this.getToken(TSqlParser.GREATER, 0);
-};
-
-Alter_server_auditContext.prototype.LESS = function() {
- return this.getToken(TSqlParser.LESS, 0);
-};
-
-Alter_server_auditContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Alter_server_auditContext.prototype.NOT = function() {
- return this.getToken(TSqlParser.NOT, 0);
-};
-
-Alter_server_auditContext.prototype.EXCLAMATION = function() {
- return this.getToken(TSqlParser.EXCLAMATION, 0);
-};
-
-Alter_server_auditContext.prototype.FILEPATH = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.FILEPATH);
- } else {
- return this.getToken(TSqlParser.FILEPATH, i);
- }
-};
-
-
-Alter_server_auditContext.prototype.MAXSIZE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.MAXSIZE);
- } else {
- return this.getToken(TSqlParser.MAXSIZE, i);
- }
-};
-
-
-Alter_server_auditContext.prototype.MAX_ROLLOVER_FILES = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.MAX_ROLLOVER_FILES);
- } else {
- return this.getToken(TSqlParser.MAX_ROLLOVER_FILES, i);
- }
-};
-
-
-Alter_server_auditContext.prototype.MAX_FILES = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.MAX_FILES);
- } else {
- return this.getToken(TSqlParser.MAX_FILES, i);
- }
-};
-
-
-Alter_server_auditContext.prototype.RESERVE_DISK_SPACE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.RESERVE_DISK_SPACE);
- } else {
- return this.getToken(TSqlParser.RESERVE_DISK_SPACE, i);
- }
-};
-
-
-Alter_server_auditContext.prototype.UNLIMITED = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.UNLIMITED);
- } else {
- return this.getToken(TSqlParser.UNLIMITED, i);
- }
-};
-
-
-Alter_server_auditContext.prototype.MB = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.MB);
- } else {
- return this.getToken(TSqlParser.MB, i);
- }
-};
-
-
-Alter_server_auditContext.prototype.GB = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.GB);
- } else {
- return this.getToken(TSqlParser.GB, i);
- }
-};
-
-
-Alter_server_auditContext.prototype.TB = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.TB);
- } else {
- return this.getToken(TSqlParser.TB, i);
- }
-};
-
-
-Alter_server_auditContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_server_audit(this);
- }
-};
-
-Alter_server_auditContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_server_audit(this);
- }
-};
-
-Alter_server_auditContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_server_audit(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_server_auditContext = Alter_server_auditContext;
-
-TSqlParser.prototype.alter_server_audit = function() {
-
- var localctx = new Alter_server_auditContext(this, this._ctx, this.state);
- this.enterRule(localctx, 370, TSqlParser.RULE_alter_server_audit);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 4495;
- this.match(TSqlParser.ALTER);
- this.state = 4496;
- this.match(TSqlParser.SERVER);
- this.state = 4497;
- this.match(TSqlParser.AUDIT);
- this.state = 4498;
- localctx.audit_name = this.id();
- this.state = 4630;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,524,this._ctx);
- switch(la_) {
- case 1:
- this.state = 4546;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.TO) {
- this.state = 4499;
- this.match(TSqlParser.TO);
- this.state = 4544;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.FILE:
- this.state = 4500;
- this.match(TSqlParser.FILE);
-
- this.state = 4501;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 4538;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.FILEPATH || ((((_la - 578)) & ~0x1f) == 0 && ((1 << (_la - 578)) & ((1 << (TSqlParser.MAX_FILES - 578)) | (1 << (TSqlParser.MAX_ROLLOVER_FILES - 578)) | (1 << (TSqlParser.MAXSIZE - 578)))) !== 0) || _la===TSqlParser.RESERVE_DISK_SPACE || _la===TSqlParser.COMMA) {
- this.state = 4536;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,506,this._ctx);
- switch(la_) {
- case 1:
- this.state = 4503;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 4502;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 4505;
- this.match(TSqlParser.FILEPATH);
- this.state = 4506;
- this.match(TSqlParser.EQUAL);
- this.state = 4507;
- localctx.filepath = this.match(TSqlParser.STRING);
- break;
-
- case 2:
- this.state = 4509;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 4508;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 4511;
- this.match(TSqlParser.MAXSIZE);
- this.state = 4512;
- this.match(TSqlParser.EQUAL);
- this.state = 4516;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.DECIMAL:
- this.state = 4513;
- this.match(TSqlParser.DECIMAL);
- this.state = 4514;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.GB || _la===TSqlParser.MB || _la===TSqlParser.TB)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- case TSqlParser.UNLIMITED:
- this.state = 4515;
- this.match(TSqlParser.UNLIMITED);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
-
- case 3:
- this.state = 4519;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 4518;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 4521;
- this.match(TSqlParser.MAX_ROLLOVER_FILES);
- this.state = 4522;
- this.match(TSqlParser.EQUAL);
- this.state = 4523;
- localctx.max_rollover_files = this._input.LT(1);
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.UNLIMITED || _la===TSqlParser.DECIMAL)) {
- localctx.max_rollover_files = this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
-
- case 4:
- this.state = 4525;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 4524;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 4527;
- this.match(TSqlParser.MAX_FILES);
- this.state = 4528;
- this.match(TSqlParser.EQUAL);
- this.state = 4529;
- localctx.max_files = this.match(TSqlParser.DECIMAL);
- break;
-
- case 5:
- this.state = 4531;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 4530;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 4533;
- this.match(TSqlParser.RESERVE_DISK_SPACE);
- this.state = 4534;
- this.match(TSqlParser.EQUAL);
- this.state = 4535;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
-
- }
- this.state = 4540;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- this.state = 4541;
- this.match(TSqlParser.RR_BRACKET);
- break;
- case TSqlParser.APPLICATION_LOG:
- this.state = 4542;
- this.match(TSqlParser.APPLICATION_LOG);
- break;
- case TSqlParser.SECURITY_LOG:
- this.state = 4543;
- this.match(TSqlParser.SECURITY_LOG);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- }
-
- this.state = 4574;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,515,this._ctx);
- if(la_===1) {
- this.state = 4548;
- this.match(TSqlParser.WITH);
- this.state = 4549;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 4570;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.ON_FAILURE || _la===TSqlParser.STATE || _la===TSqlParser.QUEUE_DELAY || _la===TSqlParser.COMMA) {
- this.state = 4568;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,513,this._ctx);
- switch(la_) {
- case 1:
- this.state = 4551;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 4550;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 4553;
- this.match(TSqlParser.QUEUE_DELAY);
- this.state = 4554;
- this.match(TSqlParser.EQUAL);
- this.state = 4555;
- localctx.queue_delay = this.match(TSqlParser.DECIMAL);
- break;
-
- case 2:
- this.state = 4557;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 4556;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 4559;
- this.match(TSqlParser.ON_FAILURE);
- this.state = 4560;
- this.match(TSqlParser.EQUAL);
- this.state = 4561;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.CONTINUE || _la===TSqlParser.SHUTDOWN || _la===TSqlParser.FAIL_OPERATION)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
-
- case 3:
- this.state = 4563;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 4562;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 4565;
- this.match(TSqlParser.STATE);
- this.state = 4566;
- this.match(TSqlParser.EQUAL);
- this.state = 4567;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
-
- }
- this.state = 4572;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- this.state = 4573;
- this.match(TSqlParser.RR_BRACKET);
-
- }
- this.state = 4622;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.WHERE) {
- this.state = 4576;
- this.match(TSqlParser.WHERE);
- this.state = 4620;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,522,this._ctx);
- switch(la_) {
- case 1:
- this.state = 4578;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 4577;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 4581;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.NOT) {
- this.state = 4580;
- this.match(TSqlParser.NOT);
- }
-
- this.state = 4583;
- localctx.event_field_name = this.id();
- this.state = 4595;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,518,this._ctx);
- switch(la_) {
- case 1:
- this.state = 4584;
- this.match(TSqlParser.EQUAL);
- break;
-
- case 2:
- this.state = 4585;
- this.match(TSqlParser.LESS);
- this.state = 4586;
- this.match(TSqlParser.GREATER);
- break;
-
- case 3:
- this.state = 4587;
- this.match(TSqlParser.EXCLAMATION);
- this.state = 4588;
- this.match(TSqlParser.EQUAL);
- break;
-
- case 4:
- this.state = 4589;
- this.match(TSqlParser.GREATER);
- break;
-
- case 5:
- this.state = 4590;
- this.match(TSqlParser.GREATER);
- this.state = 4591;
- this.match(TSqlParser.EQUAL);
- break;
-
- case 6:
- this.state = 4592;
- this.match(TSqlParser.LESS);
- break;
-
- case 7:
- this.state = 4593;
- this.match(TSqlParser.LESS);
- this.state = 4594;
- this.match(TSqlParser.EQUAL);
- break;
-
- }
- this.state = 4597;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.DECIMAL || _la===TSqlParser.STRING)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
-
- case 2:
- this.state = 4600;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 4599;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 4602;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.AND || _la===TSqlParser.OR)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 4604;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.NOT) {
- this.state = 4603;
- this.match(TSqlParser.NOT);
- }
-
- this.state = 4617;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,521,this._ctx);
- switch(la_) {
- case 1:
- this.state = 4606;
- this.match(TSqlParser.EQUAL);
- break;
-
- case 2:
- this.state = 4607;
- this.match(TSqlParser.LESS);
- this.state = 4608;
- this.match(TSqlParser.GREATER);
- break;
-
- case 3:
- this.state = 4609;
- this.match(TSqlParser.EXCLAMATION);
- this.state = 4610;
- this.match(TSqlParser.EQUAL);
- break;
-
- case 4:
- this.state = 4611;
- this.match(TSqlParser.GREATER);
- break;
-
- case 5:
- this.state = 4612;
- this.match(TSqlParser.GREATER);
- this.state = 4613;
- this.match(TSqlParser.EQUAL);
- break;
-
- case 6:
- this.state = 4614;
- this.match(TSqlParser.LESS);
- break;
-
- case 7:
- this.state = 4615;
- this.match(TSqlParser.LESS);
- this.state = 4616;
- this.match(TSqlParser.EQUAL);
- break;
-
- }
- this.state = 4619;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.DECIMAL || _la===TSqlParser.STRING)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
-
- }
- }
-
- break;
-
- case 2:
- this.state = 4624;
- this.match(TSqlParser.REMOVE);
- this.state = 4625;
- this.match(TSqlParser.WHERE);
- break;
-
- case 3:
- this.state = 4626;
- this.match(TSqlParser.MODIFY);
- this.state = 4627;
- this.match(TSqlParser.NAME);
- this.state = 4628;
- this.match(TSqlParser.EQUAL);
- this.state = 4629;
- localctx.new_audit_name = this.id();
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_server_auditContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_server_audit;
- this.audit_name = null; // IdContext
- this.filepath = null; // Token
- this.max_rollover_files = null; // Token
- this.max_files = null; // Token
- this.queue_delay = null; // Token
- this.audit_guid = null; // IdContext
- this.event_field_name = null; // IdContext
- this.new_audit_name = null; // IdContext
- return this;
-}
-
-Create_server_auditContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_server_auditContext.prototype.constructor = Create_server_auditContext;
-
-Create_server_auditContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_server_auditContext.prototype.SERVER = function() {
- return this.getToken(TSqlParser.SERVER, 0);
-};
-
-Create_server_auditContext.prototype.AUDIT = function() {
- return this.getToken(TSqlParser.AUDIT, 0);
-};
-
-Create_server_auditContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Create_server_auditContext.prototype.REMOVE = function() {
- return this.getToken(TSqlParser.REMOVE, 0);
-};
-
-Create_server_auditContext.prototype.WHERE = function() {
- return this.getToken(TSqlParser.WHERE, 0);
-};
-
-Create_server_auditContext.prototype.MODIFY = function() {
- return this.getToken(TSqlParser.MODIFY, 0);
-};
-
-Create_server_auditContext.prototype.NAME = function() {
- return this.getToken(TSqlParser.NAME, 0);
-};
-
-Create_server_auditContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-Create_server_auditContext.prototype.TO = function() {
- return this.getToken(TSqlParser.TO, 0);
-};
-
-Create_server_auditContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Create_server_auditContext.prototype.LR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.LR_BRACKET);
- } else {
- return this.getToken(TSqlParser.LR_BRACKET, i);
- }
-};
-
-
-Create_server_auditContext.prototype.RR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.RR_BRACKET);
- } else {
- return this.getToken(TSqlParser.RR_BRACKET, i);
- }
-};
-
-
-Create_server_auditContext.prototype.FILE = function() {
- return this.getToken(TSqlParser.FILE, 0);
-};
-
-Create_server_auditContext.prototype.APPLICATION_LOG = function() {
- return this.getToken(TSqlParser.APPLICATION_LOG, 0);
-};
-
-Create_server_auditContext.prototype.SECURITY_LOG = function() {
- return this.getToken(TSqlParser.SECURITY_LOG, 0);
-};
-
-Create_server_auditContext.prototype.QUEUE_DELAY = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.QUEUE_DELAY);
- } else {
- return this.getToken(TSqlParser.QUEUE_DELAY, i);
- }
-};
-
-
-Create_server_auditContext.prototype.ON_FAILURE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ON_FAILURE);
- } else {
- return this.getToken(TSqlParser.ON_FAILURE, i);
- }
-};
-
-
-Create_server_auditContext.prototype.STATE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.STATE);
- } else {
- return this.getToken(TSqlParser.STATE, i);
- }
-};
-
-
-Create_server_auditContext.prototype.AUDIT_GUID = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.AUDIT_GUID);
- } else {
- return this.getToken(TSqlParser.AUDIT_GUID, i);
- }
-};
-
-
-Create_server_auditContext.prototype.DECIMAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DECIMAL);
- } else {
- return this.getToken(TSqlParser.DECIMAL, i);
- }
-};
-
-
-Create_server_auditContext.prototype.STRING = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.STRING);
- } else {
- return this.getToken(TSqlParser.STRING, i);
- }
-};
-
-
-Create_server_auditContext.prototype.AND = function() {
- return this.getToken(TSqlParser.AND, 0);
-};
-
-Create_server_auditContext.prototype.OR = function() {
- return this.getToken(TSqlParser.OR, 0);
-};
-
-Create_server_auditContext.prototype.CONTINUE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.CONTINUE);
- } else {
- return this.getToken(TSqlParser.CONTINUE, i);
- }
-};
-
-
-Create_server_auditContext.prototype.SHUTDOWN = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.SHUTDOWN);
- } else {
- return this.getToken(TSqlParser.SHUTDOWN, i);
- }
-};
-
-
-Create_server_auditContext.prototype.FAIL_OPERATION = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.FAIL_OPERATION);
- } else {
- return this.getToken(TSqlParser.FAIL_OPERATION, i);
- }
-};
-
-
-Create_server_auditContext.prototype.ON = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ON);
- } else {
- return this.getToken(TSqlParser.ON, i);
- }
-};
-
-
-Create_server_auditContext.prototype.OFF = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.OFF);
- } else {
- return this.getToken(TSqlParser.OFF, i);
- }
-};
-
-
-Create_server_auditContext.prototype.GREATER = function() {
- return this.getToken(TSqlParser.GREATER, 0);
-};
-
-Create_server_auditContext.prototype.LESS = function() {
- return this.getToken(TSqlParser.LESS, 0);
-};
-
-Create_server_auditContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Create_server_auditContext.prototype.NOT = function() {
- return this.getToken(TSqlParser.NOT, 0);
-};
-
-Create_server_auditContext.prototype.EXCLAMATION = function() {
- return this.getToken(TSqlParser.EXCLAMATION, 0);
-};
-
-Create_server_auditContext.prototype.FILEPATH = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.FILEPATH);
- } else {
- return this.getToken(TSqlParser.FILEPATH, i);
- }
-};
-
-
-Create_server_auditContext.prototype.MAXSIZE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.MAXSIZE);
- } else {
- return this.getToken(TSqlParser.MAXSIZE, i);
- }
-};
-
-
-Create_server_auditContext.prototype.MAX_ROLLOVER_FILES = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.MAX_ROLLOVER_FILES);
- } else {
- return this.getToken(TSqlParser.MAX_ROLLOVER_FILES, i);
- }
-};
-
-
-Create_server_auditContext.prototype.MAX_FILES = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.MAX_FILES);
- } else {
- return this.getToken(TSqlParser.MAX_FILES, i);
- }
-};
-
-
-Create_server_auditContext.prototype.RESERVE_DISK_SPACE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.RESERVE_DISK_SPACE);
- } else {
- return this.getToken(TSqlParser.RESERVE_DISK_SPACE, i);
- }
-};
-
-
-Create_server_auditContext.prototype.UNLIMITED = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.UNLIMITED);
- } else {
- return this.getToken(TSqlParser.UNLIMITED, i);
- }
-};
-
-
-Create_server_auditContext.prototype.MB = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.MB);
- } else {
- return this.getToken(TSqlParser.MB, i);
- }
-};
-
-
-Create_server_auditContext.prototype.GB = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.GB);
- } else {
- return this.getToken(TSqlParser.GB, i);
- }
-};
-
-
-Create_server_auditContext.prototype.TB = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.TB);
- } else {
- return this.getToken(TSqlParser.TB, i);
- }
-};
-
-
-Create_server_auditContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_server_audit(this);
- }
-};
-
-Create_server_auditContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_server_audit(this);
- }
-};
-
-Create_server_auditContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_server_audit(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_server_auditContext = Create_server_auditContext;
-
-TSqlParser.prototype.create_server_audit = function() {
-
- var localctx = new Create_server_auditContext(this, this._ctx, this.state);
- this.enterRule(localctx, 372, TSqlParser.RULE_create_server_audit);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 4632;
- this.match(TSqlParser.CREATE);
- this.state = 4633;
- this.match(TSqlParser.SERVER);
- this.state = 4634;
- this.match(TSqlParser.AUDIT);
- this.state = 4635;
- localctx.audit_name = this.id();
- this.state = 4773;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,550,this._ctx);
- switch(la_) {
- case 1:
- this.state = 4683;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.TO) {
- this.state = 4636;
- this.match(TSqlParser.TO);
- this.state = 4681;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.FILE:
- this.state = 4637;
- this.match(TSqlParser.FILE);
-
- this.state = 4638;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 4675;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.FILEPATH || ((((_la - 578)) & ~0x1f) == 0 && ((1 << (_la - 578)) & ((1 << (TSqlParser.MAX_FILES - 578)) | (1 << (TSqlParser.MAX_ROLLOVER_FILES - 578)) | (1 << (TSqlParser.MAXSIZE - 578)))) !== 0) || _la===TSqlParser.RESERVE_DISK_SPACE || _la===TSqlParser.COMMA) {
- this.state = 4673;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,531,this._ctx);
- switch(la_) {
- case 1:
- this.state = 4640;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 4639;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 4642;
- this.match(TSqlParser.FILEPATH);
- this.state = 4643;
- this.match(TSqlParser.EQUAL);
- this.state = 4644;
- localctx.filepath = this.match(TSqlParser.STRING);
- break;
-
- case 2:
- this.state = 4646;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 4645;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 4648;
- this.match(TSqlParser.MAXSIZE);
- this.state = 4649;
- this.match(TSqlParser.EQUAL);
- this.state = 4653;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.DECIMAL:
- this.state = 4650;
- this.match(TSqlParser.DECIMAL);
- this.state = 4651;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.GB || _la===TSqlParser.MB || _la===TSqlParser.TB)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- case TSqlParser.UNLIMITED:
- this.state = 4652;
- this.match(TSqlParser.UNLIMITED);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
-
- case 3:
- this.state = 4656;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 4655;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 4658;
- this.match(TSqlParser.MAX_ROLLOVER_FILES);
- this.state = 4659;
- this.match(TSqlParser.EQUAL);
- this.state = 4660;
- localctx.max_rollover_files = this._input.LT(1);
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.UNLIMITED || _la===TSqlParser.DECIMAL)) {
- localctx.max_rollover_files = this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
-
- case 4:
- this.state = 4662;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 4661;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 4664;
- this.match(TSqlParser.MAX_FILES);
- this.state = 4665;
- this.match(TSqlParser.EQUAL);
- this.state = 4666;
- localctx.max_files = this.match(TSqlParser.DECIMAL);
- break;
-
- case 5:
- this.state = 4668;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 4667;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 4670;
- this.match(TSqlParser.RESERVE_DISK_SPACE);
- this.state = 4671;
- this.match(TSqlParser.EQUAL);
- this.state = 4672;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
-
- }
- this.state = 4677;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- this.state = 4678;
- this.match(TSqlParser.RR_BRACKET);
- break;
- case TSqlParser.APPLICATION_LOG:
- this.state = 4679;
- this.match(TSqlParser.APPLICATION_LOG);
- break;
- case TSqlParser.SECURITY_LOG:
- this.state = 4680;
- this.match(TSqlParser.SECURITY_LOG);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- }
-
- this.state = 4717;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,541,this._ctx);
- if(la_===1) {
- this.state = 4685;
- this.match(TSqlParser.WITH);
- this.state = 4686;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 4713;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.ON_FAILURE || _la===TSqlParser.STATE || _la===TSqlParser.AUDIT_GUID || _la===TSqlParser.QUEUE_DELAY || _la===TSqlParser.COMMA) {
- this.state = 4711;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,539,this._ctx);
- switch(la_) {
- case 1:
- this.state = 4688;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 4687;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 4690;
- this.match(TSqlParser.QUEUE_DELAY);
- this.state = 4691;
- this.match(TSqlParser.EQUAL);
- this.state = 4692;
- localctx.queue_delay = this.match(TSqlParser.DECIMAL);
- break;
-
- case 2:
- this.state = 4694;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 4693;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 4696;
- this.match(TSqlParser.ON_FAILURE);
- this.state = 4697;
- this.match(TSqlParser.EQUAL);
- this.state = 4698;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.CONTINUE || _la===TSqlParser.SHUTDOWN || _la===TSqlParser.FAIL_OPERATION)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
-
- case 3:
- this.state = 4700;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 4699;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 4702;
- this.match(TSqlParser.STATE);
- this.state = 4703;
- this.match(TSqlParser.EQUAL);
- this.state = 4704;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
-
- case 4:
- this.state = 4706;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 4705;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 4708;
- this.match(TSqlParser.AUDIT_GUID);
- this.state = 4709;
- this.match(TSqlParser.EQUAL);
- this.state = 4710;
- localctx.audit_guid = this.id();
- break;
-
- }
- this.state = 4715;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- this.state = 4716;
- this.match(TSqlParser.RR_BRACKET);
-
- }
- this.state = 4765;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.WHERE) {
- this.state = 4719;
- this.match(TSqlParser.WHERE);
- this.state = 4763;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,548,this._ctx);
- switch(la_) {
- case 1:
- this.state = 4721;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 4720;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 4724;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.NOT) {
- this.state = 4723;
- this.match(TSqlParser.NOT);
- }
-
- this.state = 4726;
- localctx.event_field_name = this.id();
- this.state = 4738;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,544,this._ctx);
- switch(la_) {
- case 1:
- this.state = 4727;
- this.match(TSqlParser.EQUAL);
- break;
-
- case 2:
- this.state = 4728;
- this.match(TSqlParser.LESS);
- this.state = 4729;
- this.match(TSqlParser.GREATER);
- break;
-
- case 3:
- this.state = 4730;
- this.match(TSqlParser.EXCLAMATION);
- this.state = 4731;
- this.match(TSqlParser.EQUAL);
- break;
-
- case 4:
- this.state = 4732;
- this.match(TSqlParser.GREATER);
- break;
-
- case 5:
- this.state = 4733;
- this.match(TSqlParser.GREATER);
- this.state = 4734;
- this.match(TSqlParser.EQUAL);
- break;
-
- case 6:
- this.state = 4735;
- this.match(TSqlParser.LESS);
- break;
-
- case 7:
- this.state = 4736;
- this.match(TSqlParser.LESS);
- this.state = 4737;
- this.match(TSqlParser.EQUAL);
- break;
-
- }
- this.state = 4740;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.DECIMAL || _la===TSqlParser.STRING)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
-
- case 2:
- this.state = 4743;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 4742;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 4745;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.AND || _la===TSqlParser.OR)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 4747;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.NOT) {
- this.state = 4746;
- this.match(TSqlParser.NOT);
- }
-
- this.state = 4760;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,547,this._ctx);
- switch(la_) {
- case 1:
- this.state = 4749;
- this.match(TSqlParser.EQUAL);
- break;
-
- case 2:
- this.state = 4750;
- this.match(TSqlParser.LESS);
- this.state = 4751;
- this.match(TSqlParser.GREATER);
- break;
-
- case 3:
- this.state = 4752;
- this.match(TSqlParser.EXCLAMATION);
- this.state = 4753;
- this.match(TSqlParser.EQUAL);
- break;
-
- case 4:
- this.state = 4754;
- this.match(TSqlParser.GREATER);
- break;
-
- case 5:
- this.state = 4755;
- this.match(TSqlParser.GREATER);
- this.state = 4756;
- this.match(TSqlParser.EQUAL);
- break;
-
- case 6:
- this.state = 4757;
- this.match(TSqlParser.LESS);
- break;
-
- case 7:
- this.state = 4758;
- this.match(TSqlParser.LESS);
- this.state = 4759;
- this.match(TSqlParser.EQUAL);
- break;
-
- }
- this.state = 4762;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.DECIMAL || _la===TSqlParser.STRING)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
-
- }
- }
-
- break;
-
- case 2:
- this.state = 4767;
- this.match(TSqlParser.REMOVE);
- this.state = 4768;
- this.match(TSqlParser.WHERE);
- break;
-
- case 3:
- this.state = 4769;
- this.match(TSqlParser.MODIFY);
- this.state = 4770;
- this.match(TSqlParser.NAME);
- this.state = 4771;
- this.match(TSqlParser.EQUAL);
- this.state = 4772;
- localctx.new_audit_name = this.id();
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_server_audit_specificationContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_server_audit_specification;
- this.audit_specification_name = null; // IdContext
- this.audit_name = null; // IdContext
- this.audit_action_group_name = null; // IdContext
- return this;
-}
-
-Alter_server_audit_specificationContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_server_audit_specificationContext.prototype.constructor = Alter_server_audit_specificationContext;
-
-Alter_server_audit_specificationContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Alter_server_audit_specificationContext.prototype.SERVER = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.SERVER);
- } else {
- return this.getToken(TSqlParser.SERVER, i);
- }
-};
-
-
-Alter_server_audit_specificationContext.prototype.AUDIT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.AUDIT);
- } else {
- return this.getToken(TSqlParser.AUDIT, i);
- }
-};
-
-
-Alter_server_audit_specificationContext.prototype.SPECIFICATION = function() {
- return this.getToken(TSqlParser.SPECIFICATION, 0);
-};
-
-Alter_server_audit_specificationContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Alter_server_audit_specificationContext.prototype.FOR = function() {
- return this.getToken(TSqlParser.FOR, 0);
-};
-
-Alter_server_audit_specificationContext.prototype.LR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.LR_BRACKET);
- } else {
- return this.getToken(TSqlParser.LR_BRACKET, i);
- }
-};
-
-
-Alter_server_audit_specificationContext.prototype.RR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.RR_BRACKET);
- } else {
- return this.getToken(TSqlParser.RR_BRACKET, i);
- }
-};
-
-
-Alter_server_audit_specificationContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Alter_server_audit_specificationContext.prototype.STATE = function() {
- return this.getToken(TSqlParser.STATE, 0);
-};
-
-Alter_server_audit_specificationContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Alter_server_audit_specificationContext.prototype.ADD = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ADD);
- } else {
- return this.getToken(TSqlParser.ADD, i);
- }
-};
-
-
-Alter_server_audit_specificationContext.prototype.DROP = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DROP);
- } else {
- return this.getToken(TSqlParser.DROP, i);
- }
-};
-
-
-Alter_server_audit_specificationContext.prototype.ON = function() {
- return this.getToken(TSqlParser.ON, 0);
-};
-
-Alter_server_audit_specificationContext.prototype.OFF = function() {
- return this.getToken(TSqlParser.OFF, 0);
-};
-
-Alter_server_audit_specificationContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_server_audit_specification(this);
- }
-};
-
-Alter_server_audit_specificationContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_server_audit_specification(this);
- }
-};
-
-Alter_server_audit_specificationContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_server_audit_specification(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_server_audit_specificationContext = Alter_server_audit_specificationContext;
-
-TSqlParser.prototype.alter_server_audit_specification = function() {
-
- var localctx = new Alter_server_audit_specificationContext(this, this._ctx, this.state);
- this.enterRule(localctx, 374, TSqlParser.RULE_alter_server_audit_specification);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 4775;
- this.match(TSqlParser.ALTER);
- this.state = 4776;
- this.match(TSqlParser.SERVER);
- this.state = 4777;
- this.match(TSqlParser.AUDIT);
- this.state = 4778;
- this.match(TSqlParser.SPECIFICATION);
- this.state = 4779;
- localctx.audit_specification_name = this.id();
- this.state = 4784;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.FOR) {
- this.state = 4780;
- this.match(TSqlParser.FOR);
- this.state = 4781;
- this.match(TSqlParser.SERVER);
- this.state = 4782;
- this.match(TSqlParser.AUDIT);
- this.state = 4783;
- localctx.audit_name = this.id();
- }
-
- this.state = 4793;
- this._errHandler.sync(this);
- var _alt = this._interp.adaptivePredict(this._input,552,this._ctx)
- while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
- if(_alt===1) {
- this.state = 4786;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.ADD || _la===TSqlParser.DROP)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 4787;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 4788;
- localctx.audit_action_group_name = this.id();
- this.state = 4789;
- this.match(TSqlParser.RR_BRACKET);
- }
- this.state = 4795;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,552,this._ctx);
- }
-
- this.state = 4802;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,553,this._ctx);
- if(la_===1) {
- this.state = 4796;
- this.match(TSqlParser.WITH);
- this.state = 4797;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 4798;
- this.match(TSqlParser.STATE);
- this.state = 4799;
- this.match(TSqlParser.EQUAL);
- this.state = 4800;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 4801;
- this.match(TSqlParser.RR_BRACKET);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_server_audit_specificationContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_server_audit_specification;
- this.audit_specification_name = null; // IdContext
- this.audit_name = null; // IdContext
- this.audit_action_group_name = null; // IdContext
- return this;
-}
-
-Create_server_audit_specificationContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_server_audit_specificationContext.prototype.constructor = Create_server_audit_specificationContext;
-
-Create_server_audit_specificationContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_server_audit_specificationContext.prototype.SERVER = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.SERVER);
- } else {
- return this.getToken(TSqlParser.SERVER, i);
- }
-};
-
-
-Create_server_audit_specificationContext.prototype.AUDIT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.AUDIT);
- } else {
- return this.getToken(TSqlParser.AUDIT, i);
- }
-};
-
-
-Create_server_audit_specificationContext.prototype.SPECIFICATION = function() {
- return this.getToken(TSqlParser.SPECIFICATION, 0);
-};
-
-Create_server_audit_specificationContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Create_server_audit_specificationContext.prototype.FOR = function() {
- return this.getToken(TSqlParser.FOR, 0);
-};
-
-Create_server_audit_specificationContext.prototype.ADD = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ADD);
- } else {
- return this.getToken(TSqlParser.ADD, i);
- }
-};
-
-
-Create_server_audit_specificationContext.prototype.LR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.LR_BRACKET);
- } else {
- return this.getToken(TSqlParser.LR_BRACKET, i);
- }
-};
-
-
-Create_server_audit_specificationContext.prototype.RR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.RR_BRACKET);
- } else {
- return this.getToken(TSqlParser.RR_BRACKET, i);
- }
-};
-
-
-Create_server_audit_specificationContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Create_server_audit_specificationContext.prototype.STATE = function() {
- return this.getToken(TSqlParser.STATE, 0);
-};
-
-Create_server_audit_specificationContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Create_server_audit_specificationContext.prototype.ON = function() {
- return this.getToken(TSqlParser.ON, 0);
-};
-
-Create_server_audit_specificationContext.prototype.OFF = function() {
- return this.getToken(TSqlParser.OFF, 0);
-};
-
-Create_server_audit_specificationContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_server_audit_specification(this);
- }
-};
-
-Create_server_audit_specificationContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_server_audit_specification(this);
- }
-};
-
-Create_server_audit_specificationContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_server_audit_specification(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_server_audit_specificationContext = Create_server_audit_specificationContext;
-
-TSqlParser.prototype.create_server_audit_specification = function() {
-
- var localctx = new Create_server_audit_specificationContext(this, this._ctx, this.state);
- this.enterRule(localctx, 376, TSqlParser.RULE_create_server_audit_specification);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 4804;
- this.match(TSqlParser.CREATE);
- this.state = 4805;
- this.match(TSqlParser.SERVER);
- this.state = 4806;
- this.match(TSqlParser.AUDIT);
- this.state = 4807;
- this.match(TSqlParser.SPECIFICATION);
- this.state = 4808;
- localctx.audit_specification_name = this.id();
- this.state = 4813;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.FOR) {
- this.state = 4809;
- this.match(TSqlParser.FOR);
- this.state = 4810;
- this.match(TSqlParser.SERVER);
- this.state = 4811;
- this.match(TSqlParser.AUDIT);
- this.state = 4812;
- localctx.audit_name = this.id();
- }
-
- this.state = 4822;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.ADD) {
- this.state = 4815;
- this.match(TSqlParser.ADD);
- this.state = 4816;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 4817;
- localctx.audit_action_group_name = this.id();
- this.state = 4818;
- this.match(TSqlParser.RR_BRACKET);
- this.state = 4824;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- this.state = 4831;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,556,this._ctx);
- if(la_===1) {
- this.state = 4825;
- this.match(TSqlParser.WITH);
- this.state = 4826;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 4827;
- this.match(TSqlParser.STATE);
- this.state = 4828;
- this.match(TSqlParser.EQUAL);
- this.state = 4829;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 4830;
- this.match(TSqlParser.RR_BRACKET);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_server_configurationContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_server_configuration;
- return this;
-}
-
-Alter_server_configurationContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_server_configurationContext.prototype.constructor = Alter_server_configurationContext;
-
-Alter_server_configurationContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Alter_server_configurationContext.prototype.SERVER = function() {
- return this.getToken(TSqlParser.SERVER, 0);
-};
-
-Alter_server_configurationContext.prototype.CONFIGURATION = function() {
- return this.getToken(TSqlParser.CONFIGURATION, 0);
-};
-
-Alter_server_configurationContext.prototype.SET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.SET);
- } else {
- return this.getToken(TSqlParser.SET, i);
- }
-};
-
-
-Alter_server_configurationContext.prototype.PROCESS = function() {
- return this.getToken(TSqlParser.PROCESS, 0);
-};
-
-Alter_server_configurationContext.prototype.AFFINITY = function() {
- return this.getToken(TSqlParser.AFFINITY, 0);
-};
-
-Alter_server_configurationContext.prototype.DIAGNOSTICS = function() {
- return this.getToken(TSqlParser.DIAGNOSTICS, 0);
-};
-
-Alter_server_configurationContext.prototype.LOG = function() {
- return this.getToken(TSqlParser.LOG, 0);
-};
-
-Alter_server_configurationContext.prototype.FAILOVER = function() {
- return this.getToken(TSqlParser.FAILOVER, 0);
-};
-
-Alter_server_configurationContext.prototype.CLUSTER = function() {
- return this.getToken(TSqlParser.CLUSTER, 0);
-};
-
-Alter_server_configurationContext.prototype.PROPERTY = function() {
- return this.getToken(TSqlParser.PROPERTY, 0);
-};
-
-Alter_server_configurationContext.prototype.HADR = function() {
- return this.getToken(TSqlParser.HADR, 0);
-};
-
-Alter_server_configurationContext.prototype.CONTEXT = function() {
- return this.getToken(TSqlParser.CONTEXT, 0);
-};
-
-Alter_server_configurationContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-Alter_server_configurationContext.prototype.BUFFER = function() {
- return this.getToken(TSqlParser.BUFFER, 0);
-};
-
-Alter_server_configurationContext.prototype.POOL = function() {
- return this.getToken(TSqlParser.POOL, 0);
-};
-
-Alter_server_configurationContext.prototype.EXTENSION = function() {
- return this.getToken(TSqlParser.EXTENSION, 0);
-};
-
-Alter_server_configurationContext.prototype.SOFTNUMA = function() {
- return this.getToken(TSqlParser.SOFTNUMA, 0);
-};
-
-Alter_server_configurationContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Alter_server_configurationContext.prototype.LOCAL = function() {
- return this.getToken(TSqlParser.LOCAL, 0);
-};
-
-Alter_server_configurationContext.prototype.ON = function() {
- return this.getToken(TSqlParser.ON, 0);
-};
-
-Alter_server_configurationContext.prototype.OFF = function() {
- return this.getToken(TSqlParser.OFF, 0);
-};
-
-Alter_server_configurationContext.prototype.CPU = function() {
- return this.getToken(TSqlParser.CPU, 0);
-};
-
-Alter_server_configurationContext.prototype.NUMANODE = function() {
- return this.getToken(TSqlParser.NUMANODE, 0);
-};
-
-Alter_server_configurationContext.prototype.PATH = function() {
- return this.getToken(TSqlParser.PATH, 0);
-};
-
-Alter_server_configurationContext.prototype.MAX_SIZE = function() {
- return this.getToken(TSqlParser.MAX_SIZE, 0);
-};
-
-Alter_server_configurationContext.prototype.MAX_FILES = function() {
- return this.getToken(TSqlParser.MAX_FILES, 0);
-};
-
-Alter_server_configurationContext.prototype.VERBOSELOGGING = function() {
- return this.getToken(TSqlParser.VERBOSELOGGING, 0);
-};
-
-Alter_server_configurationContext.prototype.SQLDUMPERFLAGS = function() {
- return this.getToken(TSqlParser.SQLDUMPERFLAGS, 0);
-};
-
-Alter_server_configurationContext.prototype.SQLDUMPERPATH = function() {
- return this.getToken(TSqlParser.SQLDUMPERPATH, 0);
-};
-
-Alter_server_configurationContext.prototype.SQLDUMPERTIMEOUT = function() {
- return this.getToken(TSqlParser.SQLDUMPERTIMEOUT, 0);
-};
-
-Alter_server_configurationContext.prototype.FAILURECONDITIONLEVEL = function() {
- return this.getToken(TSqlParser.FAILURECONDITIONLEVEL, 0);
-};
-
-Alter_server_configurationContext.prototype.HEALTHCHECKTIMEOUT = function() {
- return this.getToken(TSqlParser.HEALTHCHECKTIMEOUT, 0);
-};
-
-Alter_server_configurationContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Alter_server_configurationContext.prototype.FILENAME = function() {
- return this.getToken(TSqlParser.FILENAME, 0);
-};
-
-Alter_server_configurationContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Alter_server_configurationContext.prototype.SIZE = function() {
- return this.getToken(TSqlParser.SIZE, 0);
-};
-
-Alter_server_configurationContext.prototype.DECIMAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DECIMAL);
- } else {
- return this.getToken(TSqlParser.DECIMAL, i);
- }
-};
-
-
-Alter_server_configurationContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Alter_server_configurationContext.prototype.DEFAULT = function() {
- return this.getToken(TSqlParser.DEFAULT, 0);
-};
-
-Alter_server_configurationContext.prototype.KB = function() {
- return this.getToken(TSqlParser.KB, 0);
-};
-
-Alter_server_configurationContext.prototype.MB = function() {
- return this.getToken(TSqlParser.MB, 0);
-};
-
-Alter_server_configurationContext.prototype.GB = function() {
- return this.getToken(TSqlParser.GB, 0);
-};
-
-Alter_server_configurationContext.prototype.AUTO = function() {
- return this.getToken(TSqlParser.AUTO, 0);
-};
-
-Alter_server_configurationContext.prototype.TO = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.TO);
- } else {
- return this.getToken(TSqlParser.TO, i);
- }
-};
-
-
-Alter_server_configurationContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_server_configuration(this);
- }
-};
-
-Alter_server_configurationContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_server_configuration(this);
- }
-};
-
-Alter_server_configurationContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_server_configuration(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_server_configurationContext = Alter_server_configurationContext;
-
-TSqlParser.prototype.alter_server_configuration = function() {
-
- var localctx = new Alter_server_configurationContext(this, this._ctx, this.state);
- this.enterRule(localctx, 378, TSqlParser.RULE_alter_server_configuration);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 4833;
- this.match(TSqlParser.ALTER);
- this.state = 4834;
- this.match(TSqlParser.SERVER);
- this.state = 4835;
- this.match(TSqlParser.CONFIGURATION);
- this.state = 4836;
- this.match(TSqlParser.SET);
-
- this.state = 4942;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.PROCESS:
- this.state = 4837;
- this.match(TSqlParser.PROCESS);
- this.state = 4838;
- this.match(TSqlParser.AFFINITY);
- this.state = 4874;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.CPU:
- this.state = 4839;
- this.match(TSqlParser.CPU);
- this.state = 4840;
- this.match(TSqlParser.EQUAL);
- this.state = 4856;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.AUTO:
- this.state = 4841;
- this.match(TSqlParser.AUTO);
- break;
- case TSqlParser.DECIMAL:
- case TSqlParser.COMMA:
- this.state = 4852;
- this._errHandler.sync(this);
- var _alt = 1;
- do {
- switch (_alt) {
- case 1:
- this.state = 4852;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,559,this._ctx);
- switch(la_) {
- case 1:
- this.state = 4843;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 4842;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 4845;
- this.match(TSqlParser.DECIMAL);
- break;
-
- case 2:
- this.state = 4847;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 4846;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 4849;
- this.match(TSqlParser.DECIMAL);
- this.state = 4850;
- this.match(TSqlParser.TO);
- this.state = 4851;
- this.match(TSqlParser.DECIMAL);
- break;
-
- }
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 4854;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,560, this._ctx);
- } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
- case TSqlParser.NUMANODE:
- this.state = 4858;
- this.match(TSqlParser.NUMANODE);
- this.state = 4859;
- this.match(TSqlParser.EQUAL);
- this.state = 4870;
- this._errHandler.sync(this);
- var _alt = 1;
- do {
- switch (_alt) {
- case 1:
- this.state = 4870;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,564,this._ctx);
- switch(la_) {
- case 1:
- this.state = 4861;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 4860;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 4863;
- this.match(TSqlParser.DECIMAL);
- break;
-
- case 2:
- this.state = 4865;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 4864;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 4867;
- this.match(TSqlParser.DECIMAL);
- this.state = 4868;
- this.match(TSqlParser.TO);
- this.state = 4869;
- this.match(TSqlParser.DECIMAL);
- break;
-
- }
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 4872;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,565, this._ctx);
- } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
- case TSqlParser.DIAGNOSTICS:
- this.state = 4876;
- this.match(TSqlParser.DIAGNOSTICS);
- this.state = 4877;
- this.match(TSqlParser.LOG);
- this.state = 4893;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.ON:
- this.state = 4878;
- this.match(TSqlParser.ON);
- break;
- case TSqlParser.OFF:
- this.state = 4879;
- this.match(TSqlParser.OFF);
- break;
- case TSqlParser.PATH:
- this.state = 4880;
- this.match(TSqlParser.PATH);
- this.state = 4881;
- this.match(TSqlParser.EQUAL);
- this.state = 4882;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.DEFAULT || _la===TSqlParser.STRING)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- case TSqlParser.MAX_SIZE:
- this.state = 4883;
- this.match(TSqlParser.MAX_SIZE);
- this.state = 4884;
- this.match(TSqlParser.EQUAL);
- this.state = 4888;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.DECIMAL:
- this.state = 4885;
- this.match(TSqlParser.DECIMAL);
- this.state = 4886;
- this.match(TSqlParser.MB);
- break;
- case TSqlParser.DEFAULT:
- this.state = 4887;
- this.match(TSqlParser.DEFAULT);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
- case TSqlParser.MAX_FILES:
- this.state = 4890;
- this.match(TSqlParser.MAX_FILES);
- this.state = 4891;
- this.match(TSqlParser.EQUAL);
- this.state = 4892;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.DEFAULT || _la===TSqlParser.DECIMAL)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
- case TSqlParser.FAILOVER:
- this.state = 4895;
- this.match(TSqlParser.FAILOVER);
- this.state = 4896;
- this.match(TSqlParser.CLUSTER);
- this.state = 4897;
- this.match(TSqlParser.PROPERTY);
- this.state = 4915;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.VERBOSELOGGING:
- this.state = 4898;
- this.match(TSqlParser.VERBOSELOGGING);
- this.state = 4899;
- this.match(TSqlParser.EQUAL);
- this.state = 4900;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.DEFAULT || _la===TSqlParser.STRING)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- case TSqlParser.SQLDUMPERFLAGS:
- this.state = 4901;
- this.match(TSqlParser.SQLDUMPERFLAGS);
- this.state = 4902;
- this.match(TSqlParser.EQUAL);
- this.state = 4903;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.DEFAULT || _la===TSqlParser.STRING)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- case TSqlParser.SQLDUMPERPATH:
- this.state = 4904;
- this.match(TSqlParser.SQLDUMPERPATH);
- this.state = 4905;
- this.match(TSqlParser.EQUAL);
- this.state = 4906;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.DEFAULT || _la===TSqlParser.STRING)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- case TSqlParser.SQLDUMPERTIMEOUT:
- this.state = 4907;
- this.match(TSqlParser.SQLDUMPERTIMEOUT);
- this.state = 4908;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.DEFAULT || _la===TSqlParser.STRING)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- case TSqlParser.FAILURECONDITIONLEVEL:
- this.state = 4909;
- this.match(TSqlParser.FAILURECONDITIONLEVEL);
- this.state = 4910;
- this.match(TSqlParser.EQUAL);
- this.state = 4911;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.DEFAULT || _la===TSqlParser.STRING)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- case TSqlParser.HEALTHCHECKTIMEOUT:
- this.state = 4912;
- this.match(TSqlParser.HEALTHCHECKTIMEOUT);
- this.state = 4913;
- this.match(TSqlParser.EQUAL);
- this.state = 4914;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.DEFAULT || _la===TSqlParser.DECIMAL)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
- case TSqlParser.HADR:
- this.state = 4917;
- this.match(TSqlParser.HADR);
- this.state = 4918;
- this.match(TSqlParser.CLUSTER);
- this.state = 4919;
- this.match(TSqlParser.CONTEXT);
- this.state = 4920;
- this.match(TSqlParser.EQUAL);
- this.state = 4921;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.LOCAL || _la===TSqlParser.STRING)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- case TSqlParser.BUFFER:
- this.state = 4922;
- this.match(TSqlParser.BUFFER);
- this.state = 4923;
- this.match(TSqlParser.POOL);
- this.state = 4924;
- this.match(TSqlParser.EXTENSION);
- this.state = 4937;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.ON:
- this.state = 4925;
- this.match(TSqlParser.ON);
- this.state = 4926;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 4927;
- this.match(TSqlParser.FILENAME);
- this.state = 4928;
- this.match(TSqlParser.EQUAL);
- this.state = 4929;
- this.match(TSqlParser.STRING);
- this.state = 4930;
- this.match(TSqlParser.COMMA);
- this.state = 4931;
- this.match(TSqlParser.SIZE);
- this.state = 4932;
- this.match(TSqlParser.EQUAL);
- this.state = 4933;
- this.match(TSqlParser.DECIMAL);
- this.state = 4934;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.GB || _la===TSqlParser.KB || _la===TSqlParser.MB)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 4935;
- this.match(TSqlParser.RR_BRACKET);
- break;
- case TSqlParser.OFF:
- this.state = 4936;
- this.match(TSqlParser.OFF);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
- case TSqlParser.SET:
- this.state = 4939;
- this.match(TSqlParser.SET);
- this.state = 4940;
- this.match(TSqlParser.SOFTNUMA);
- this.state = 4941;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_server_roleContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_server_role;
- this.server_role_name = null; // IdContext
- this.server_principal = null; // IdContext
- this.new_server_role_name = null; // IdContext
- return this;
-}
-
-Alter_server_roleContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_server_roleContext.prototype.constructor = Alter_server_roleContext;
-
-Alter_server_roleContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Alter_server_roleContext.prototype.SERVER = function() {
- return this.getToken(TSqlParser.SERVER, 0);
-};
-
-Alter_server_roleContext.prototype.ROLE = function() {
- return this.getToken(TSqlParser.ROLE, 0);
-};
-
-Alter_server_roleContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Alter_server_roleContext.prototype.MEMBER = function() {
- return this.getToken(TSqlParser.MEMBER, 0);
-};
-
-Alter_server_roleContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Alter_server_roleContext.prototype.NAME = function() {
- return this.getToken(TSqlParser.NAME, 0);
-};
-
-Alter_server_roleContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Alter_server_roleContext.prototype.ADD = function() {
- return this.getToken(TSqlParser.ADD, 0);
-};
-
-Alter_server_roleContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Alter_server_roleContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_server_role(this);
- }
-};
-
-Alter_server_roleContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_server_role(this);
- }
-};
-
-Alter_server_roleContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_server_role(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_server_roleContext = Alter_server_roleContext;
-
-TSqlParser.prototype.alter_server_role = function() {
-
- var localctx = new Alter_server_roleContext(this, this._ctx, this.state);
- this.enterRule(localctx, 380, TSqlParser.RULE_alter_server_role);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 4944;
- this.match(TSqlParser.ALTER);
- this.state = 4945;
- this.match(TSqlParser.SERVER);
- this.state = 4946;
- this.match(TSqlParser.ROLE);
- this.state = 4947;
- localctx.server_role_name = this.id();
- this.state = 4955;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.ADD:
- case TSqlParser.DROP:
- this.state = 4948;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.ADD || _la===TSqlParser.DROP)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 4949;
- this.match(TSqlParser.MEMBER);
- this.state = 4950;
- localctx.server_principal = this.id();
- break;
- case TSqlParser.WITH:
- this.state = 4951;
- this.match(TSqlParser.WITH);
- this.state = 4952;
- this.match(TSqlParser.NAME);
- this.state = 4953;
- this.match(TSqlParser.EQUAL);
- this.state = 4954;
- localctx.new_server_role_name = this.id();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_server_roleContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_server_role;
- this.server_role = null; // IdContext
- this.server_principal = null; // IdContext
- return this;
-}
-
-Create_server_roleContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_server_roleContext.prototype.constructor = Create_server_roleContext;
-
-Create_server_roleContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_server_roleContext.prototype.SERVER = function() {
- return this.getToken(TSqlParser.SERVER, 0);
-};
-
-Create_server_roleContext.prototype.ROLE = function() {
- return this.getToken(TSqlParser.ROLE, 0);
-};
-
-Create_server_roleContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Create_server_roleContext.prototype.AUTHORIZATION = function() {
- return this.getToken(TSqlParser.AUTHORIZATION, 0);
-};
-
-Create_server_roleContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_server_role(this);
- }
-};
-
-Create_server_roleContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_server_role(this);
- }
-};
-
-Create_server_roleContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_server_role(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_server_roleContext = Create_server_roleContext;
-
-TSqlParser.prototype.create_server_role = function() {
-
- var localctx = new Create_server_roleContext(this, this._ctx, this.state);
- this.enterRule(localctx, 382, TSqlParser.RULE_create_server_role);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 4957;
- this.match(TSqlParser.CREATE);
- this.state = 4958;
- this.match(TSqlParser.SERVER);
- this.state = 4959;
- this.match(TSqlParser.ROLE);
- this.state = 4960;
- localctx.server_role = this.id();
- this.state = 4963;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.AUTHORIZATION) {
- this.state = 4961;
- this.match(TSqlParser.AUTHORIZATION);
- this.state = 4962;
- localctx.server_principal = this.id();
- }
-
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_server_role_pdwContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_server_role_pdw;
- this.server_role_name = null; // IdContext
- this.login = null; // IdContext
- return this;
-}
-
-Alter_server_role_pdwContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_server_role_pdwContext.prototype.constructor = Alter_server_role_pdwContext;
-
-Alter_server_role_pdwContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Alter_server_role_pdwContext.prototype.SERVER = function() {
- return this.getToken(TSqlParser.SERVER, 0);
-};
-
-Alter_server_role_pdwContext.prototype.ROLE = function() {
- return this.getToken(TSqlParser.ROLE, 0);
-};
-
-Alter_server_role_pdwContext.prototype.MEMBER = function() {
- return this.getToken(TSqlParser.MEMBER, 0);
-};
-
-Alter_server_role_pdwContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Alter_server_role_pdwContext.prototype.ADD = function() {
- return this.getToken(TSqlParser.ADD, 0);
-};
-
-Alter_server_role_pdwContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Alter_server_role_pdwContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_server_role_pdw(this);
- }
-};
-
-Alter_server_role_pdwContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_server_role_pdw(this);
- }
-};
-
-Alter_server_role_pdwContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_server_role_pdw(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_server_role_pdwContext = Alter_server_role_pdwContext;
-
-TSqlParser.prototype.alter_server_role_pdw = function() {
-
- var localctx = new Alter_server_role_pdwContext(this, this._ctx, this.state);
- this.enterRule(localctx, 384, TSqlParser.RULE_alter_server_role_pdw);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 4965;
- this.match(TSqlParser.ALTER);
- this.state = 4966;
- this.match(TSqlParser.SERVER);
- this.state = 4967;
- this.match(TSqlParser.ROLE);
- this.state = 4968;
- localctx.server_role_name = this.id();
- this.state = 4969;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.ADD || _la===TSqlParser.DROP)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 4970;
- this.match(TSqlParser.MEMBER);
- this.state = 4971;
- localctx.login = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_serviceContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_service;
- this.modified_service_name = null; // IdContext
- this.schema_name = null; // IdContext
- this.queue_name = null; // IdContext
- this.modified_contract_name = null; // IdContext
- return this;
-}
-
-Alter_serviceContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_serviceContext.prototype.constructor = Alter_serviceContext;
-
-Alter_serviceContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Alter_serviceContext.prototype.SERVICE = function() {
- return this.getToken(TSqlParser.SERVICE, 0);
-};
-
-Alter_serviceContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Alter_serviceContext.prototype.ON = function() {
- return this.getToken(TSqlParser.ON, 0);
-};
-
-Alter_serviceContext.prototype.QUEUE = function() {
- return this.getToken(TSqlParser.QUEUE, 0);
-};
-
-Alter_serviceContext.prototype.ADD = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ADD);
- } else {
- return this.getToken(TSqlParser.ADD, i);
- }
-};
-
-
-Alter_serviceContext.prototype.DROP = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DROP);
- } else {
- return this.getToken(TSqlParser.DROP, i);
- }
-};
-
-
-Alter_serviceContext.prototype.DOT = function() {
- return this.getToken(TSqlParser.DOT, 0);
-};
-
-Alter_serviceContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Alter_serviceContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_service(this);
- }
-};
-
-Alter_serviceContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_service(this);
- }
-};
-
-Alter_serviceContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_service(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_serviceContext = Alter_serviceContext;
-
-TSqlParser.prototype.alter_service = function() {
-
- var localctx = new Alter_serviceContext(this, this._ctx, this.state);
- this.enterRule(localctx, 386, TSqlParser.RULE_alter_service);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 4973;
- this.match(TSqlParser.ALTER);
- this.state = 4974;
- this.match(TSqlParser.SERVICE);
- this.state = 4975;
- localctx.modified_service_name = this.id();
- this.state = 4983;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.ON) {
- this.state = 4976;
- this.match(TSqlParser.ON);
- this.state = 4977;
- this.match(TSqlParser.QUEUE);
-
- this.state = 4978;
- localctx.schema_name = this.id();
- this.state = 4979;
- this.match(TSqlParser.DOT);
- this.state = 4981;
- localctx.queue_name = this.id();
- }
-
- this.state = 4992;
- this._errHandler.sync(this);
- var _alt = this._interp.adaptivePredict(this._input,576,this._ctx)
- while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
- if(_alt===1) {
- this.state = 4986;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 4985;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 4988;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.ADD || _la===TSqlParser.DROP)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 4989;
- localctx.modified_contract_name = this.id();
- }
- this.state = 4994;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,576,this._ctx);
- }
-
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_serviceContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_service;
- this.create_service_name = null; // IdContext
- this.owner_name = null; // IdContext
- this.schema_name = null; // IdContext
- this.queue_name = null; // IdContext
- return this;
-}
-
-Create_serviceContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_serviceContext.prototype.constructor = Create_serviceContext;
-
-Create_serviceContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_serviceContext.prototype.SERVICE = function() {
- return this.getToken(TSqlParser.SERVICE, 0);
-};
-
-Create_serviceContext.prototype.ON = function() {
- return this.getToken(TSqlParser.ON, 0);
-};
-
-Create_serviceContext.prototype.QUEUE = function() {
- return this.getToken(TSqlParser.QUEUE, 0);
-};
-
-Create_serviceContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Create_serviceContext.prototype.AUTHORIZATION = function() {
- return this.getToken(TSqlParser.AUTHORIZATION, 0);
-};
-
-Create_serviceContext.prototype.DOT = function() {
- return this.getToken(TSqlParser.DOT, 0);
-};
-
-Create_serviceContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Create_serviceContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Create_serviceContext.prototype.DEFAULT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DEFAULT);
- } else {
- return this.getToken(TSqlParser.DEFAULT, i);
- }
-};
-
-
-Create_serviceContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Create_serviceContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_service(this);
- }
-};
-
-Create_serviceContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_service(this);
- }
-};
-
-Create_serviceContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_service(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_serviceContext = Create_serviceContext;
-
-TSqlParser.prototype.create_service = function() {
-
- var localctx = new Create_serviceContext(this, this._ctx, this.state);
- this.enterRule(localctx, 388, TSqlParser.RULE_create_service);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 4995;
- this.match(TSqlParser.CREATE);
- this.state = 4996;
- this.match(TSqlParser.SERVICE);
- this.state = 4997;
- localctx.create_service_name = this.id();
- this.state = 5000;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.AUTHORIZATION) {
- this.state = 4998;
- this.match(TSqlParser.AUTHORIZATION);
- this.state = 4999;
- localctx.owner_name = this.id();
- }
-
- this.state = 5002;
- this.match(TSqlParser.ON);
- this.state = 5003;
- this.match(TSqlParser.QUEUE);
- this.state = 5007;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,578,this._ctx);
- if(la_===1) {
- this.state = 5004;
- localctx.schema_name = this.id();
- this.state = 5005;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 5009;
- localctx.queue_name = this.id();
- this.state = 5023;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,582,this._ctx);
- if(la_===1) {
- this.state = 5010;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 5018;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- do {
- this.state = 5012;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 5011;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 5016;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.state = 5014;
- this.id();
- break;
- case TSqlParser.DEFAULT:
- this.state = 5015;
- this.match(TSqlParser.DEFAULT);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 5020;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- } while(_la===TSqlParser.CALLED || _la===TSqlParser.DATA_COMPRESSION || _la===TSqlParser.DEFAULT || ((((_la - 112)) & ~0x1f) == 0 && ((1 << (_la - 112)) & ((1 << (TSqlParser.EVENTDATA - 112)) | (1 << (TSqlParser.FILENAME - 112)) | (1 << (TSqlParser.FILLFACTOR - 112)) | (1 << (TSqlParser.FORCESEEK - 112)))) !== 0) || ((((_la - 158)) & ~0x1f) == 0 && ((1 << (_la - 158)) & ((1 << (TSqlParser.INIT - 158)) | (1 << (TSqlParser.KEY - 158)) | (1 << (TSqlParser.MASTER - 158)) | (1 << (TSqlParser.MAX_MEMORY - 158)))) !== 0) || _la===TSqlParser.OFFSETS || _la===TSqlParser.PAGE || ((((_la - 259)) & ~0x1f) == 0 && ((1 << (_la - 259)) & ((1 << (TSqlParser.PUBLIC - 259)) | (1 << (TSqlParser.R - 259)) | (1 << (TSqlParser.RAW - 259)) | (1 << (TSqlParser.RETURN - 259)) | (1 << (TSqlParser.RETURNS - 259)) | (1 << (TSqlParser.ROWCOUNT - 259)))) !== 0) || ((((_la - 295)) & ~0x1f) == 0 && ((1 << (_la - 295)) & ((1 << (TSqlParser.SAFETY - 295)) | (1 << (TSqlParser.SERVER - 295)) | (1 << (TSqlParser.SID - 295)) | (1 << (TSqlParser.SOURCE - 295)) | (1 << (TSqlParser.SPLIT - 295)))) !== 0) || ((((_la - 327)) & ~0x1f) == 0 && ((1 << (_la - 327)) & ((1 << (TSqlParser.STATE - 327)) | (1 << (TSqlParser.START - 327)) | (1 << (TSqlParser.TARGET - 327)))) !== 0) || ((((_la - 380)) & ~0x1f) == 0 && ((1 << (_la - 380)) & ((1 << (TSqlParser.ABSOLUTE - 380)) | (1 << (TSqlParser.ACCENT_SENSITIVITY - 380)) | (1 << (TSqlParser.ACTION - 380)) | (1 << (TSqlParser.ACTIVATION - 380)) | (1 << (TSqlParser.ACTIVE - 380)) | (1 << (TSqlParser.ADDRESS - 380)) | (1 << (TSqlParser.AES_128 - 380)) | (1 << (TSqlParser.AES_192 - 380)) | (1 << (TSqlParser.AES_256 - 380)) | (1 << (TSqlParser.AFFINITY - 380)) | (1 << (TSqlParser.AFTER - 380)) | (1 << (TSqlParser.AGGREGATE - 380)) | (1 << (TSqlParser.ALGORITHM - 380)) | (1 << (TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS - 380)) | (1 << (TSqlParser.ALLOW_SNAPSHOT_ISOLATION - 380)) | (1 << (TSqlParser.ALLOWED - 380)) | (1 << (TSqlParser.ANSI_NULL_DEFAULT - 380)) | (1 << (TSqlParser.ANSI_NULLS - 380)) | (1 << (TSqlParser.ANSI_PADDING - 380)) | (1 << (TSqlParser.ANSI_WARNINGS - 380)) | (1 << (TSqlParser.APPLICATION_LOG - 380)) | (1 << (TSqlParser.APPLY - 380)) | (1 << (TSqlParser.ARITHABORT - 380)) | (1 << (TSqlParser.ASSEMBLY - 380)) | (1 << (TSqlParser.AUDIT - 380)) | (1 << (TSqlParser.AUDIT_GUID - 380)) | (1 << (TSqlParser.AUTO - 380)) | (1 << (TSqlParser.AUTO_CLEANUP - 380)) | (1 << (TSqlParser.AUTO_CLOSE - 380)) | (1 << (TSqlParser.AUTO_CREATE_STATISTICS - 380)) | (1 << (TSqlParser.AUTO_SHRINK - 380)) | (1 << (TSqlParser.AUTO_UPDATE_STATISTICS - 380)))) !== 0) || ((((_la - 412)) & ~0x1f) == 0 && ((1 << (_la - 412)) & ((1 << (TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC - 412)) | (1 << (TSqlParser.AVAILABILITY - 412)) | (1 << (TSqlParser.AVG - 412)) | (1 << (TSqlParser.BACKUP_PRIORITY - 412)) | (1 << (TSqlParser.BEGIN_DIALOG - 412)) | (1 << (TSqlParser.BIGINT - 412)) | (1 << (TSqlParser.BINARY_BASE64 - 412)) | (1 << (TSqlParser.BINARY_CHECKSUM - 412)) | (1 << (TSqlParser.BINDING - 412)) | (1 << (TSqlParser.BLOB_STORAGE - 412)) | (1 << (TSqlParser.BROKER - 412)) | (1 << (TSqlParser.BROKER_INSTANCE - 412)) | (1 << (TSqlParser.BULK_LOGGED - 412)) | (1 << (TSqlParser.CALLER - 412)) | (1 << (TSqlParser.CAP_CPU_PERCENT - 412)) | (1 << (TSqlParser.CAST - 412)) | (1 << (TSqlParser.CATALOG - 412)) | (1 << (TSqlParser.CATCH - 412)) | (1 << (TSqlParser.CHANGE_RETENTION - 412)) | (1 << (TSqlParser.CHANGE_TRACKING - 412)) | (1 << (TSqlParser.CHECKSUM - 412)) | (1 << (TSqlParser.CHECKSUM_AGG - 412)) | (1 << (TSqlParser.CLEANUP - 412)) | (1 << (TSqlParser.COLLECTION - 412)) | (1 << (TSqlParser.COLUMN_MASTER_KEY - 412)) | (1 << (TSqlParser.COMMITTED - 412)) | (1 << (TSqlParser.COMPATIBILITY_LEVEL - 412)) | (1 << (TSqlParser.CONCAT - 412)) | (1 << (TSqlParser.CONCAT_NULL_YIELDS_NULL - 412)) | (1 << (TSqlParser.CONTENT - 412)) | (1 << (TSqlParser.CONTROL - 412)) | (1 << (TSqlParser.COOKIE - 412)))) !== 0) || ((((_la - 444)) & ~0x1f) == 0 && ((1 << (_la - 444)) & ((1 << (TSqlParser.COUNT - 444)) | (1 << (TSqlParser.COUNT_BIG - 444)) | (1 << (TSqlParser.COUNTER - 444)) | (1 << (TSqlParser.CPU - 444)) | (1 << (TSqlParser.CREATE_NEW - 444)) | (1 << (TSqlParser.CREATION_DISPOSITION - 444)) | (1 << (TSqlParser.CREDENTIAL - 444)) | (1 << (TSqlParser.CRYPTOGRAPHIC - 444)) | (1 << (TSqlParser.CURSOR_CLOSE_ON_COMMIT - 444)) | (1 << (TSqlParser.CURSOR_DEFAULT - 444)) | (1 << (TSqlParser.DATA - 444)) | (1 << (TSqlParser.DATE_CORRELATION_OPTIMIZATION - 444)) | (1 << (TSqlParser.DATEADD - 444)) | (1 << (TSqlParser.DATEDIFF - 444)) | (1 << (TSqlParser.DATENAME - 444)) | (1 << (TSqlParser.DATEPART - 444)) | (1 << (TSqlParser.DAYS - 444)) | (1 << (TSqlParser.DB_CHAINING - 444)) | (1 << (TSqlParser.DB_FAILOVER - 444)) | (1 << (TSqlParser.DECRYPTION - 444)) | (1 << (TSqlParser.DEFAULT_DOUBLE_QUOTE - 444)) | (1 << (TSqlParser.DEFAULT_FULLTEXT_LANGUAGE - 444)) | (1 << (TSqlParser.DEFAULT_LANGUAGE - 444)) | (1 << (TSqlParser.DELAY - 444)) | (1 << (TSqlParser.DELAYED_DURABILITY - 444)) | (1 << (TSqlParser.DELETED - 444)) | (1 << (TSqlParser.DENSE_RANK - 444)) | (1 << (TSqlParser.DEPENDENTS - 444)) | (1 << (TSqlParser.DES - 444)) | (1 << (TSqlParser.DESCRIPTION - 444)) | (1 << (TSqlParser.DESX - 444)) | (1 << (TSqlParser.DHCP - 444)))) !== 0) || ((((_la - 476)) & ~0x1f) == 0 && ((1 << (_la - 476)) & ((1 << (TSqlParser.DIALOG - 476)) | (1 << (TSqlParser.DIRECTORY_NAME - 476)) | (1 << (TSqlParser.DISABLE - 476)) | (1 << (TSqlParser.DISABLE_BROKER - 476)) | (1 << (TSqlParser.DISABLED - 476)) | (1 << (TSqlParser.DISK_DRIVE - 476)) | (1 << (TSqlParser.DOCUMENT - 476)) | (1 << (TSqlParser.DYNAMIC - 476)) | (1 << (TSqlParser.EMERGENCY - 476)) | (1 << (TSqlParser.EMPTY - 476)) | (1 << (TSqlParser.ENABLE - 476)) | (1 << (TSqlParser.ENABLE_BROKER - 476)) | (1 << (TSqlParser.ENCRYPTED_VALUE - 476)) | (1 << (TSqlParser.ENCRYPTION - 476)) | (1 << (TSqlParser.ENDPOINT_URL - 476)) | (1 << (TSqlParser.ERROR_BROKER_CONVERSATIONS - 476)) | (1 << (TSqlParser.EXCLUSIVE - 476)) | (1 << (TSqlParser.EXECUTABLE - 476)) | (1 << (TSqlParser.EXIST - 476)) | (1 << (TSqlParser.EXPAND - 476)) | (1 << (TSqlParser.EXPIRY_DATE - 476)) | (1 << (TSqlParser.EXPLICIT - 476)) | (1 << (TSqlParser.FAIL_OPERATION - 476)) | (1 << (TSqlParser.FAILOVER_MODE - 476)) | (1 << (TSqlParser.FAILURE - 476)) | (1 << (TSqlParser.FAILURE_CONDITION_LEVEL - 476)) | (1 << (TSqlParser.FAST - 476)) | (1 << (TSqlParser.FAST_FORWARD - 476)) | (1 << (TSqlParser.FILEGROUP - 476)) | (1 << (TSqlParser.FILEGROWTH - 476)) | (1 << (TSqlParser.FILEPATH - 476)))) !== 0) || ((((_la - 508)) & ~0x1f) == 0 && ((1 << (_la - 508)) & ((1 << (TSqlParser.FILESTREAM - 508)) | (1 << (TSqlParser.FILTER - 508)) | (1 << (TSqlParser.FIRST - 508)) | (1 << (TSqlParser.FIRST_VALUE - 508)) | (1 << (TSqlParser.FOLLOWING - 508)) | (1 << (TSqlParser.FORCE - 508)) | (1 << (TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS - 508)) | (1 << (TSqlParser.FORCED - 508)) | (1 << (TSqlParser.FORMAT - 508)) | (1 << (TSqlParser.FORWARD_ONLY - 508)) | (1 << (TSqlParser.FULLSCAN - 508)) | (1 << (TSqlParser.FULLTEXT - 508)) | (1 << (TSqlParser.GB - 508)) | (1 << (TSqlParser.GETDATE - 508)) | (1 << (TSqlParser.GETUTCDATE - 508)) | (1 << (TSqlParser.GLOBAL - 508)) | (1 << (TSqlParser.GO - 508)) | (1 << (TSqlParser.GROUP_MAX_REQUESTS - 508)) | (1 << (TSqlParser.GROUPING - 508)) | (1 << (TSqlParser.GROUPING_ID - 508)) | (1 << (TSqlParser.HADR - 508)) | (1 << (TSqlParser.HASH - 508)) | (1 << (TSqlParser.HEALTH_CHECK_TIMEOUT - 508)) | (1 << (TSqlParser.HIGH - 508)) | (1 << (TSqlParser.HONOR_BROKER_PRIORITY - 508)) | (1 << (TSqlParser.HOURS - 508)) | (1 << (TSqlParser.IDENTITY_VALUE - 508)) | (1 << (TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX - 508)) | (1 << (TSqlParser.IMMEDIATE - 508)) | (1 << (TSqlParser.IMPERSONATE - 508)) | (1 << (TSqlParser.IMPORTANCE - 508)))) !== 0) || ((((_la - 540)) & ~0x1f) == 0 && ((1 << (_la - 540)) & ((1 << (TSqlParser.INCREMENTAL - 540)) | (1 << (TSqlParser.INITIATOR - 540)) | (1 << (TSqlParser.INPUT - 540)) | (1 << (TSqlParser.INSENSITIVE - 540)) | (1 << (TSqlParser.INSERTED - 540)) | (1 << (TSqlParser.INT - 540)) | (1 << (TSqlParser.IP - 540)) | (1 << (TSqlParser.ISOLATION - 540)) | (1 << (TSqlParser.KB - 540)) | (1 << (TSqlParser.KEEP - 540)) | (1 << (TSqlParser.KEEPFIXED - 540)) | (1 << (TSqlParser.KEY_SOURCE - 540)) | (1 << (TSqlParser.KEYS - 540)) | (1 << (TSqlParser.KEYSET - 540)) | (1 << (TSqlParser.LAG - 540)) | (1 << (TSqlParser.LAST - 540)) | (1 << (TSqlParser.LAST_VALUE - 540)) | (1 << (TSqlParser.LEAD - 540)) | (1 << (TSqlParser.LEVEL - 540)) | (1 << (TSqlParser.LIST - 540)) | (1 << (TSqlParser.LISTENER - 540)) | (1 << (TSqlParser.LISTENER_URL - 540)) | (1 << (TSqlParser.LOB_COMPACTION - 540)) | (1 << (TSqlParser.LOCAL - 540)) | (1 << (TSqlParser.LOCATION - 540)) | (1 << (TSqlParser.LOCK - 540)) | (1 << (TSqlParser.LOCK_ESCALATION - 540)) | (1 << (TSqlParser.LOGIN - 540)) | (1 << (TSqlParser.LOOP - 540)) | (1 << (TSqlParser.LOW - 540)))) !== 0) || ((((_la - 572)) & ~0x1f) == 0 && ((1 << (_la - 572)) & ((1 << (TSqlParser.MANUAL - 572)) | (1 << (TSqlParser.MARK - 572)) | (1 << (TSqlParser.MATERIALIZED - 572)) | (1 << (TSqlParser.MAX - 572)) | (1 << (TSqlParser.MAX_CPU_PERCENT - 572)) | (1 << (TSqlParser.MAX_DOP - 572)) | (1 << (TSqlParser.MAX_FILES - 572)) | (1 << (TSqlParser.MAX_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MAX_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MAX_PROCESSES - 572)) | (1 << (TSqlParser.MAX_QUEUE_READERS - 572)) | (1 << (TSqlParser.MAX_ROLLOVER_FILES - 572)) | (1 << (TSqlParser.MAXDOP - 572)) | (1 << (TSqlParser.MAXRECURSION - 572)) | (1 << (TSqlParser.MAXSIZE - 572)) | (1 << (TSqlParser.MB - 572)) | (1 << (TSqlParser.MEDIUM - 572)) | (1 << (TSqlParser.MEMORY_OPTIMIZED_DATA - 572)) | (1 << (TSqlParser.MESSAGE - 572)) | (1 << (TSqlParser.MIN - 572)) | (1 << (TSqlParser.MIN_ACTIVE_ROWVERSION - 572)) | (1 << (TSqlParser.MIN_CPU_PERCENT - 572)) | (1 << (TSqlParser.MIN_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MIN_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MINUTES - 572)) | (1 << (TSqlParser.MIRROR_ADDRESS - 572)) | (1 << (TSqlParser.MIXED_PAGE_ALLOCATION - 572)) | (1 << (TSqlParser.MODE - 572)) | (1 << (TSqlParser.MODIFY - 572)) | (1 << (TSqlParser.MOVE - 572)) | (1 << (TSqlParser.MULTI_USER - 572)) | (1 << (TSqlParser.NAME - 572)))) !== 0) || ((((_la - 604)) & ~0x1f) == 0 && ((1 << (_la - 604)) & ((1 << (TSqlParser.NESTED_TRIGGERS - 604)) | (1 << (TSqlParser.NEW_ACCOUNT - 604)) | (1 << (TSqlParser.NEW_BROKER - 604)) | (1 << (TSqlParser.NEW_PASSWORD - 604)) | (1 << (TSqlParser.NEXT - 604)) | (1 << (TSqlParser.NO - 604)) | (1 << (TSqlParser.NO_TRUNCATE - 604)) | (1 << (TSqlParser.NO_WAIT - 604)) | (1 << (TSqlParser.NOCOUNT - 604)) | (1 << (TSqlParser.NODES - 604)) | (1 << (TSqlParser.NOEXPAND - 604)) | (1 << (TSqlParser.NON_TRANSACTED_ACCESS - 604)) | (1 << (TSqlParser.NORECOMPUTE - 604)) | (1 << (TSqlParser.NORECOVERY - 604)) | (1 << (TSqlParser.NOWAIT - 604)) | (1 << (TSqlParser.NTILE - 604)) | (1 << (TSqlParser.NUMANODE - 604)) | (1 << (TSqlParser.NUMBER - 604)) | (1 << (TSqlParser.NUMERIC_ROUNDABORT - 604)) | (1 << (TSqlParser.OBJECT - 604)) | (1 << (TSqlParser.OFFLINE - 604)) | (1 << (TSqlParser.OFFSET - 604)) | (1 << (TSqlParser.OLD_ACCOUNT - 604)) | (1 << (TSqlParser.ONLINE - 604)) | (1 << (TSqlParser.ONLY - 604)) | (1 << (TSqlParser.OPEN_EXISTING - 604)) | (1 << (TSqlParser.OPTIMISTIC - 604)) | (1 << (TSqlParser.OPTIMIZE - 604)) | (1 << (TSqlParser.OUT - 604)) | (1 << (TSqlParser.OUTPUT - 604)) | (1 << (TSqlParser.OWNER - 604)))) !== 0) || ((((_la - 636)) & ~0x1f) == 0 && ((1 << (_la - 636)) & ((1 << (TSqlParser.PAGE_VERIFY - 636)) | (1 << (TSqlParser.PARAMETERIZATION - 636)) | (1 << (TSqlParser.PARTITION - 636)) | (1 << (TSqlParser.PARTITIONS - 636)) | (1 << (TSqlParser.PARTNER - 636)) | (1 << (TSqlParser.PATH - 636)) | (1 << (TSqlParser.POISON_MESSAGE_HANDLING - 636)) | (1 << (TSqlParser.POOL - 636)) | (1 << (TSqlParser.PORT - 636)) | (1 << (TSqlParser.PRECEDING - 636)) | (1 << (TSqlParser.PRIMARY_ROLE - 636)) | (1 << (TSqlParser.PRIOR - 636)) | (1 << (TSqlParser.PRIORITY - 636)) | (1 << (TSqlParser.PRIORITY_LEVEL - 636)) | (1 << (TSqlParser.PRIVATE - 636)) | (1 << (TSqlParser.PRIVATE_KEY - 636)) | (1 << (TSqlParser.PRIVILEGES - 636)) | (1 << (TSqlParser.PROCEDURE_NAME - 636)) | (1 << (TSqlParser.PROPERTY - 636)) | (1 << (TSqlParser.PROVIDER - 636)) | (1 << (TSqlParser.PROVIDER_KEY_NAME - 636)) | (1 << (TSqlParser.QUERY - 636)) | (1 << (TSqlParser.QUEUE - 636)) | (1 << (TSqlParser.QUEUE_DELAY - 636)) | (1 << (TSqlParser.QUOTED_IDENTIFIER - 636)) | (1 << (TSqlParser.RANGE - 636)) | (1 << (TSqlParser.RANK - 636)) | (1 << (TSqlParser.RC2 - 636)) | (1 << (TSqlParser.RC4 - 636)) | (1 << (TSqlParser.RC4_128 - 636)) | (1 << (TSqlParser.READ_COMMITTED_SNAPSHOT - 636)) | (1 << (TSqlParser.READ_ONLY - 636)))) !== 0) || ((((_la - 668)) & ~0x1f) == 0 && ((1 << (_la - 668)) & ((1 << (TSqlParser.READ_ONLY_ROUTING_LIST - 668)) | (1 << (TSqlParser.READ_WRITE - 668)) | (1 << (TSqlParser.READONLY - 668)) | (1 << (TSqlParser.REBUILD - 668)) | (1 << (TSqlParser.RECEIVE - 668)) | (1 << (TSqlParser.RECOMPILE - 668)) | (1 << (TSqlParser.RECOVERY - 668)) | (1 << (TSqlParser.RECURSIVE_TRIGGERS - 668)) | (1 << (TSqlParser.RELATIVE - 668)) | (1 << (TSqlParser.REMOTE - 668)) | (1 << (TSqlParser.REMOTE_SERVICE_NAME - 668)) | (1 << (TSqlParser.REMOVE - 668)) | (1 << (TSqlParser.REORGANIZE - 668)) | (1 << (TSqlParser.REPEATABLE - 668)) | (1 << (TSqlParser.REPLICA - 668)) | (1 << (TSqlParser.REQUEST_MAX_CPU_TIME_SEC - 668)) | (1 << (TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT - 668)) | (1 << (TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC - 668)) | (1 << (TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT - 668)) | (1 << (TSqlParser.RESERVE_DISK_SPACE - 668)) | (1 << (TSqlParser.RESOURCE - 668)) | (1 << (TSqlParser.RESOURCE_MANAGER_LOCATION - 668)) | (1 << (TSqlParser.RESTRICTED_USER - 668)) | (1 << (TSqlParser.RETENTION - 668)) | (1 << (TSqlParser.ROBUST - 668)) | (1 << (TSqlParser.ROOT - 668)) | (1 << (TSqlParser.ROUTE - 668)) | (1 << (TSqlParser.ROW - 668)) | (1 << (TSqlParser.ROW_NUMBER - 668)) | (1 << (TSqlParser.ROWGUID - 668)) | (1 << (TSqlParser.ROWS - 668)) | (1 << (TSqlParser.SAMPLE - 668)))) !== 0) || ((((_la - 700)) & ~0x1f) == 0 && ((1 << (_la - 700)) & ((1 << (TSqlParser.SCHEMABINDING - 700)) | (1 << (TSqlParser.SCOPED - 700)) | (1 << (TSqlParser.SCROLL - 700)) | (1 << (TSqlParser.SCROLL_LOCKS - 700)) | (1 << (TSqlParser.SEARCH - 700)) | (1 << (TSqlParser.SECONDARY - 700)) | (1 << (TSqlParser.SECONDARY_ONLY - 700)) | (1 << (TSqlParser.SECONDARY_ROLE - 700)) | (1 << (TSqlParser.SECONDS - 700)) | (1 << (TSqlParser.SECRET - 700)) | (1 << (TSqlParser.SECURITY - 700)) | (1 << (TSqlParser.SECURITY_LOG - 700)) | (1 << (TSqlParser.SEEDING_MODE - 700)) | (1 << (TSqlParser.SELF - 700)) | (1 << (TSqlParser.SEMI_SENSITIVE - 700)) | (1 << (TSqlParser.SEND - 700)) | (1 << (TSqlParser.SENT - 700)) | (1 << (TSqlParser.SEQUENCE - 700)) | (1 << (TSqlParser.SERIALIZABLE - 700)) | (1 << (TSqlParser.SESSION_TIMEOUT - 700)) | (1 << (TSqlParser.SETERROR - 700)) | (1 << (TSqlParser.SHARE - 700)) | (1 << (TSqlParser.SHOWPLAN - 700)) | (1 << (TSqlParser.SIGNATURE - 700)) | (1 << (TSqlParser.SIMPLE - 700)) | (1 << (TSqlParser.SINGLE_USER - 700)) | (1 << (TSqlParser.SIZE - 700)) | (1 << (TSqlParser.SMALLINT - 700)) | (1 << (TSqlParser.SNAPSHOT - 700)) | (1 << (TSqlParser.SPATIAL_WINDOW_MAX_CELLS - 700)) | (1 << (TSqlParser.STANDBY - 700)) | (1 << (TSqlParser.START_DATE - 700)))) !== 0) || ((((_la - 732)) & ~0x1f) == 0 && ((1 << (_la - 732)) & ((1 << (TSqlParser.STATIC - 732)) | (1 << (TSqlParser.STATS_STREAM - 732)) | (1 << (TSqlParser.STATUS - 732)) | (1 << (TSqlParser.STDEV - 732)) | (1 << (TSqlParser.STDEVP - 732)) | (1 << (TSqlParser.STOPLIST - 732)) | (1 << (TSqlParser.STRING_AGG - 732)) | (1 << (TSqlParser.STUFF - 732)) | (1 << (TSqlParser.SUBJECT - 732)) | (1 << (TSqlParser.SUM - 732)) | (1 << (TSqlParser.SUSPEND - 732)) | (1 << (TSqlParser.SYMMETRIC - 732)) | (1 << (TSqlParser.SYNCHRONOUS_COMMIT - 732)) | (1 << (TSqlParser.SYNONYM - 732)) | (1 << (TSqlParser.SYSTEM - 732)) | (1 << (TSqlParser.TAKE - 732)) | (1 << (TSqlParser.TARGET_RECOVERY_TIME - 732)) | (1 << (TSqlParser.TB - 732)) | (1 << (TSqlParser.TEXTIMAGE_ON - 732)) | (1 << (TSqlParser.THROW - 732)) | (1 << (TSqlParser.TIES - 732)) | (1 << (TSqlParser.TIME - 732)) | (1 << (TSqlParser.TIMEOUT - 732)) | (1 << (TSqlParser.TIMER - 732)) | (1 << (TSqlParser.TINYINT - 732)) | (1 << (TSqlParser.TORN_PAGE_DETECTION - 732)) | (1 << (TSqlParser.TRANSFORM_NOISE_WORDS - 732)) | (1 << (TSqlParser.TRIPLE_DES - 732)) | (1 << (TSqlParser.TRIPLE_DES_3KEY - 732)) | (1 << (TSqlParser.TRUSTWORTHY - 732)))) !== 0) || ((((_la - 764)) & ~0x1f) == 0 && ((1 << (_la - 764)) & ((1 << (TSqlParser.TRY - 764)) | (1 << (TSqlParser.TSQL - 764)) | (1 << (TSqlParser.TWO_DIGIT_YEAR_CUTOFF - 764)) | (1 << (TSqlParser.TYPE - 764)) | (1 << (TSqlParser.TYPE_WARNING - 764)) | (1 << (TSqlParser.UNBOUNDED - 764)) | (1 << (TSqlParser.UNCOMMITTED - 764)) | (1 << (TSqlParser.UNKNOWN - 764)) | (1 << (TSqlParser.UNLIMITED - 764)) | (1 << (TSqlParser.USING - 764)) | (1 << (TSqlParser.VALID_XML - 764)) | (1 << (TSqlParser.VALIDATION - 764)) | (1 << (TSqlParser.VALUE - 764)) | (1 << (TSqlParser.VAR - 764)) | (1 << (TSqlParser.VARP - 764)) | (1 << (TSqlParser.VIEW_METADATA - 764)) | (1 << (TSqlParser.VIEWS - 764)) | (1 << (TSqlParser.WAIT - 764)) | (1 << (TSqlParser.WELL_FORMED_XML - 764)) | (1 << (TSqlParser.WORK - 764)) | (1 << (TSqlParser.WORKLOAD - 764)) | (1 << (TSqlParser.XML - 764)) | (1 << (TSqlParser.XMLNAMESPACES - 764)))) !== 0) || ((((_la - 796)) & ~0x1f) == 0 && ((1 << (_la - 796)) & ((1 << (TSqlParser.DOUBLE_QUOTE_ID - 796)) | (1 << (TSqlParser.SQUARE_BRACKET_ID - 796)) | (1 << (TSqlParser.ID - 796)))) !== 0) || _la===TSqlParser.COMMA);
- this.state = 5022;
- this.match(TSqlParser.RR_BRACKET);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_service_master_keyContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_service_master_key;
- this.acold_account_name = null; // Token
- this.old_password = null; // Token
- this.new_account_name = null; // Token
- this.new_password = null; // Token
- return this;
-}
-
-Alter_service_master_keyContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_service_master_keyContext.prototype.constructor = Alter_service_master_keyContext;
-
-Alter_service_master_keyContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Alter_service_master_keyContext.prototype.SERVICE = function() {
- return this.getToken(TSqlParser.SERVICE, 0);
-};
-
-Alter_service_master_keyContext.prototype.MASTER = function() {
- return this.getToken(TSqlParser.MASTER, 0);
-};
-
-Alter_service_master_keyContext.prototype.KEY = function() {
- return this.getToken(TSqlParser.KEY, 0);
-};
-
-Alter_service_master_keyContext.prototype.REGENERATE = function() {
- return this.getToken(TSqlParser.REGENERATE, 0);
-};
-
-Alter_service_master_keyContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Alter_service_master_keyContext.prototype.FORCE = function() {
- return this.getToken(TSqlParser.FORCE, 0);
-};
-
-Alter_service_master_keyContext.prototype.OLD_ACCOUNT = function() {
- return this.getToken(TSqlParser.OLD_ACCOUNT, 0);
-};
-
-Alter_service_master_keyContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-Alter_service_master_keyContext.prototype.COMMA = function() {
- return this.getToken(TSqlParser.COMMA, 0);
-};
-
-Alter_service_master_keyContext.prototype.OLD_PASSWORD = function() {
- return this.getToken(TSqlParser.OLD_PASSWORD, 0);
-};
-
-Alter_service_master_keyContext.prototype.NEW_ACCOUNT = function() {
- return this.getToken(TSqlParser.NEW_ACCOUNT, 0);
-};
-
-Alter_service_master_keyContext.prototype.NEW_PASSWORD = function() {
- return this.getToken(TSqlParser.NEW_PASSWORD, 0);
-};
-
-Alter_service_master_keyContext.prototype.STRING = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.STRING);
- } else {
- return this.getToken(TSqlParser.STRING, i);
- }
-};
-
-
-Alter_service_master_keyContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_service_master_key(this);
- }
-};
-
-Alter_service_master_keyContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_service_master_key(this);
- }
-};
-
-Alter_service_master_keyContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_service_master_key(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_service_master_keyContext = Alter_service_master_keyContext;
-
-TSqlParser.prototype.alter_service_master_key = function() {
-
- var localctx = new Alter_service_master_keyContext(this, this._ctx, this.state);
- this.enterRule(localctx, 390, TSqlParser.RULE_alter_service_master_key);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 5025;
- this.match(TSqlParser.ALTER);
- this.state = 5026;
- this.match(TSqlParser.SERVICE);
- this.state = 5027;
- this.match(TSqlParser.MASTER);
- this.state = 5028;
- this.match(TSqlParser.KEY);
- this.state = 5050;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.REGENERATE:
- case TSqlParser.FORCE:
- this.state = 5030;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.FORCE) {
- this.state = 5029;
- this.match(TSqlParser.FORCE);
- }
-
- this.state = 5032;
- this.match(TSqlParser.REGENERATE);
- break;
- case TSqlParser.WITH:
- this.state = 5033;
- this.match(TSqlParser.WITH);
- this.state = 5048;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,584,this._ctx);
- if(la_===1) {
- this.state = 5034;
- this.match(TSqlParser.OLD_ACCOUNT);
- this.state = 5035;
- this.match(TSqlParser.EQUAL);
- this.state = 5036;
- localctx.acold_account_name = this.match(TSqlParser.STRING);
- this.state = 5037;
- this.match(TSqlParser.COMMA);
- this.state = 5038;
- this.match(TSqlParser.OLD_PASSWORD);
- this.state = 5039;
- this.match(TSqlParser.EQUAL);
- this.state = 5040;
- localctx.old_password = this.match(TSqlParser.STRING);
-
- } else if(la_===2) {
- this.state = 5041;
- this.match(TSqlParser.NEW_ACCOUNT);
- this.state = 5042;
- this.match(TSqlParser.EQUAL);
- this.state = 5043;
- localctx.new_account_name = this.match(TSqlParser.STRING);
- this.state = 5044;
- this.match(TSqlParser.COMMA);
- this.state = 5045;
- this.match(TSqlParser.NEW_PASSWORD);
- this.state = 5046;
- this.match(TSqlParser.EQUAL);
- this.state = 5047;
- localctx.new_password = this.match(TSqlParser.STRING);
-
- }
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_symmetric_keyContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_symmetric_key;
- this.key_name = null; // IdContext
- this.certificate_name = null; // IdContext
- this.password = null; // Token
- this.symmetric_key_name = null; // IdContext
- this.Asym_key_name = null; // IdContext
- return this;
-}
-
-Alter_symmetric_keyContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_symmetric_keyContext.prototype.constructor = Alter_symmetric_keyContext;
-
-Alter_symmetric_keyContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Alter_symmetric_keyContext.prototype.SYMMETRIC = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.SYMMETRIC);
- } else {
- return this.getToken(TSqlParser.SYMMETRIC, i);
- }
-};
-
-
-Alter_symmetric_keyContext.prototype.KEY = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.KEY);
- } else {
- return this.getToken(TSqlParser.KEY, i);
- }
-};
-
-
-Alter_symmetric_keyContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Alter_symmetric_keyContext.prototype.ENCRYPTION = function() {
- return this.getToken(TSqlParser.ENCRYPTION, 0);
-};
-
-Alter_symmetric_keyContext.prototype.BY = function() {
- return this.getToken(TSqlParser.BY, 0);
-};
-
-Alter_symmetric_keyContext.prototype.ADD = function() {
- return this.getToken(TSqlParser.ADD, 0);
-};
-
-Alter_symmetric_keyContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Alter_symmetric_keyContext.prototype.CERTIFICATE = function() {
- return this.getToken(TSqlParser.CERTIFICATE, 0);
-};
-
-Alter_symmetric_keyContext.prototype.PASSWORD = function() {
- return this.getToken(TSqlParser.PASSWORD, 0);
-};
-
-Alter_symmetric_keyContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Alter_symmetric_keyContext.prototype.ASYMMETRIC = function() {
- return this.getToken(TSqlParser.ASYMMETRIC, 0);
-};
-
-Alter_symmetric_keyContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Alter_symmetric_keyContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_symmetric_key(this);
- }
-};
-
-Alter_symmetric_keyContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_symmetric_key(this);
- }
-};
-
-Alter_symmetric_keyContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_symmetric_key(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_symmetric_keyContext = Alter_symmetric_keyContext;
-
-TSqlParser.prototype.alter_symmetric_key = function() {
-
- var localctx = new Alter_symmetric_keyContext(this, this._ctx, this.state);
- this.enterRule(localctx, 392, TSqlParser.RULE_alter_symmetric_key);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 5052;
- this.match(TSqlParser.ALTER);
- this.state = 5053;
- this.match(TSqlParser.SYMMETRIC);
- this.state = 5054;
- this.match(TSqlParser.KEY);
- this.state = 5055;
- localctx.key_name = this.id();
-
- this.state = 5056;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.ADD || _la===TSqlParser.DROP)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 5057;
- this.match(TSqlParser.ENCRYPTION);
- this.state = 5058;
- this.match(TSqlParser.BY);
- this.state = 5070;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.CERTIFICATE:
- this.state = 5059;
- this.match(TSqlParser.CERTIFICATE);
- this.state = 5060;
- localctx.certificate_name = this.id();
- break;
- case TSqlParser.PASSWORD:
- this.state = 5061;
- this.match(TSqlParser.PASSWORD);
- this.state = 5062;
- this.match(TSqlParser.EQUAL);
- this.state = 5063;
- localctx.password = this.match(TSqlParser.STRING);
- break;
- case TSqlParser.SYMMETRIC:
- this.state = 5064;
- this.match(TSqlParser.SYMMETRIC);
- this.state = 5065;
- this.match(TSqlParser.KEY);
- this.state = 5066;
- localctx.symmetric_key_name = this.id();
- break;
- case TSqlParser.ASYMMETRIC:
- this.state = 5067;
- this.match(TSqlParser.ASYMMETRIC);
- this.state = 5068;
- this.match(TSqlParser.KEY);
- this.state = 5069;
- localctx.Asym_key_name = this.id();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_symmetric_keyContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_symmetric_key;
- this.key_name = null; // IdContext
- this.owner_name = null; // IdContext
- this.provider_name = null; // IdContext
- this.key_pass_phrase = null; // Token
- this.identity_phrase = null; // Token
- this.provider_key_name = null; // Token
- this.certificate_name = null; // IdContext
- this.password = null; // Token
- this.symmetric_key_name = null; // IdContext
- this.asym_key_name = null; // IdContext
- return this;
-}
-
-Create_symmetric_keyContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_symmetric_keyContext.prototype.constructor = Create_symmetric_keyContext;
-
-Create_symmetric_keyContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Create_symmetric_keyContext.prototype.SYMMETRIC = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.SYMMETRIC);
- } else {
- return this.getToken(TSqlParser.SYMMETRIC, i);
- }
-};
-
-
-Create_symmetric_keyContext.prototype.KEY = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.KEY);
- } else {
- return this.getToken(TSqlParser.KEY, i);
- }
-};
-
-
-Create_symmetric_keyContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Create_symmetric_keyContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Create_symmetric_keyContext.prototype.AUTHORIZATION = function() {
- return this.getToken(TSqlParser.AUTHORIZATION, 0);
-};
-
-Create_symmetric_keyContext.prototype.FROM = function() {
- return this.getToken(TSqlParser.FROM, 0);
-};
-
-Create_symmetric_keyContext.prototype.PROVIDER = function() {
- return this.getToken(TSqlParser.PROVIDER, 0);
-};
-
-Create_symmetric_keyContext.prototype.ENCRYPTION = function() {
- return this.getToken(TSqlParser.ENCRYPTION, 0);
-};
-
-Create_symmetric_keyContext.prototype.BY = function() {
- return this.getToken(TSqlParser.BY, 0);
-};
-
-Create_symmetric_keyContext.prototype.KEY_SOURCE = function() {
- return this.getToken(TSqlParser.KEY_SOURCE, 0);
-};
-
-Create_symmetric_keyContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Create_symmetric_keyContext.prototype.ALGORITHM = function() {
- return this.getToken(TSqlParser.ALGORITHM, 0);
-};
-
-Create_symmetric_keyContext.prototype.IDENTITY_VALUE = function() {
- return this.getToken(TSqlParser.IDENTITY_VALUE, 0);
-};
-
-Create_symmetric_keyContext.prototype.PROVIDER_KEY_NAME = function() {
- return this.getToken(TSqlParser.PROVIDER_KEY_NAME, 0);
-};
-
-Create_symmetric_keyContext.prototype.CREATION_DISPOSITION = function() {
- return this.getToken(TSqlParser.CREATION_DISPOSITION, 0);
-};
-
-Create_symmetric_keyContext.prototype.CERTIFICATE = function() {
- return this.getToken(TSqlParser.CERTIFICATE, 0);
-};
-
-Create_symmetric_keyContext.prototype.PASSWORD = function() {
- return this.getToken(TSqlParser.PASSWORD, 0);
-};
-
-Create_symmetric_keyContext.prototype.ASYMMETRIC = function() {
- return this.getToken(TSqlParser.ASYMMETRIC, 0);
-};
-
-Create_symmetric_keyContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Create_symmetric_keyContext.prototype.DES = function() {
- return this.getToken(TSqlParser.DES, 0);
-};
-
-Create_symmetric_keyContext.prototype.TRIPLE_DES = function() {
- return this.getToken(TSqlParser.TRIPLE_DES, 0);
-};
-
-Create_symmetric_keyContext.prototype.TRIPLE_DES_3KEY = function() {
- return this.getToken(TSqlParser.TRIPLE_DES_3KEY, 0);
-};
-
-Create_symmetric_keyContext.prototype.RC2 = function() {
- return this.getToken(TSqlParser.RC2, 0);
-};
-
-Create_symmetric_keyContext.prototype.RC4 = function() {
- return this.getToken(TSqlParser.RC4, 0);
-};
-
-Create_symmetric_keyContext.prototype.RC4_128 = function() {
- return this.getToken(TSqlParser.RC4_128, 0);
-};
-
-Create_symmetric_keyContext.prototype.DESX = function() {
- return this.getToken(TSqlParser.DESX, 0);
-};
-
-Create_symmetric_keyContext.prototype.AES_128 = function() {
- return this.getToken(TSqlParser.AES_128, 0);
-};
-
-Create_symmetric_keyContext.prototype.AES_192 = function() {
- return this.getToken(TSqlParser.AES_192, 0);
-};
-
-Create_symmetric_keyContext.prototype.AES_256 = function() {
- return this.getToken(TSqlParser.AES_256, 0);
-};
-
-Create_symmetric_keyContext.prototype.CREATE_NEW = function() {
- return this.getToken(TSqlParser.CREATE_NEW, 0);
-};
-
-Create_symmetric_keyContext.prototype.OPEN_EXISTING = function() {
- return this.getToken(TSqlParser.OPEN_EXISTING, 0);
-};
-
-Create_symmetric_keyContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_symmetric_key(this);
- }
-};
-
-Create_symmetric_keyContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_symmetric_key(this);
- }
-};
-
-Create_symmetric_keyContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_symmetric_key(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_symmetric_keyContext = Create_symmetric_keyContext;
-
-TSqlParser.prototype.create_symmetric_key = function() {
-
- var localctx = new Create_symmetric_keyContext(this, this._ctx, this.state);
- this.enterRule(localctx, 394, TSqlParser.RULE_create_symmetric_key);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 5072;
- this.match(TSqlParser.ALTER);
- this.state = 5073;
- this.match(TSqlParser.SYMMETRIC);
- this.state = 5074;
- this.match(TSqlParser.KEY);
- this.state = 5075;
- localctx.key_name = this.id();
- this.state = 5078;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.AUTHORIZATION) {
- this.state = 5076;
- this.match(TSqlParser.AUTHORIZATION);
- this.state = 5077;
- localctx.owner_name = this.id();
- }
-
- this.state = 5083;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.FROM) {
- this.state = 5080;
- this.match(TSqlParser.FROM);
- this.state = 5081;
- this.match(TSqlParser.PROVIDER);
- this.state = 5082;
- localctx.provider_name = this.id();
- }
-
- this.state = 5085;
- this.match(TSqlParser.WITH);
- this.state = 5118;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.ALGORITHM:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.PROVIDER_KEY_NAME:
- this.state = 5101;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.KEY_SOURCE:
- this.state = 5086;
- this.match(TSqlParser.KEY_SOURCE);
- this.state = 5087;
- this.match(TSqlParser.EQUAL);
- this.state = 5088;
- localctx.key_pass_phrase = this.match(TSqlParser.STRING);
- break;
- case TSqlParser.ALGORITHM:
- this.state = 5089;
- this.match(TSqlParser.ALGORITHM);
- this.state = 5090;
- this.match(TSqlParser.EQUAL);
- this.state = 5091;
- _la = this._input.LA(1);
- if(!(((((_la - 386)) & ~0x1f) == 0 && ((1 << (_la - 386)) & ((1 << (TSqlParser.AES_128 - 386)) | (1 << (TSqlParser.AES_192 - 386)) | (1 << (TSqlParser.AES_256 - 386)))) !== 0) || _la===TSqlParser.DES || _la===TSqlParser.DESX || ((((_la - 663)) & ~0x1f) == 0 && ((1 << (_la - 663)) & ((1 << (TSqlParser.RC2 - 663)) | (1 << (TSqlParser.RC4 - 663)) | (1 << (TSqlParser.RC4_128 - 663)))) !== 0) || _la===TSqlParser.TRIPLE_DES || _la===TSqlParser.TRIPLE_DES_3KEY)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- case TSqlParser.IDENTITY_VALUE:
- this.state = 5092;
- this.match(TSqlParser.IDENTITY_VALUE);
- this.state = 5093;
- this.match(TSqlParser.EQUAL);
- this.state = 5094;
- localctx.identity_phrase = this.match(TSqlParser.STRING);
- break;
- case TSqlParser.PROVIDER_KEY_NAME:
- this.state = 5095;
- this.match(TSqlParser.PROVIDER_KEY_NAME);
- this.state = 5096;
- this.match(TSqlParser.EQUAL);
- this.state = 5097;
- localctx.provider_key_name = this.match(TSqlParser.STRING);
- break;
- case TSqlParser.CREATION_DISPOSITION:
- this.state = 5098;
- this.match(TSqlParser.CREATION_DISPOSITION);
- this.state = 5099;
- this.match(TSqlParser.EQUAL);
- this.state = 5100;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.CREATE_NEW || _la===TSqlParser.OPEN_EXISTING)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
- case TSqlParser.ENCRYPTION:
- this.state = 5103;
- this.match(TSqlParser.ENCRYPTION);
- this.state = 5104;
- this.match(TSqlParser.BY);
- this.state = 5116;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.CERTIFICATE:
- this.state = 5105;
- this.match(TSqlParser.CERTIFICATE);
- this.state = 5106;
- localctx.certificate_name = this.id();
- break;
- case TSqlParser.PASSWORD:
- this.state = 5107;
- this.match(TSqlParser.PASSWORD);
- this.state = 5108;
- this.match(TSqlParser.EQUAL);
- this.state = 5109;
- localctx.password = this.match(TSqlParser.STRING);
- break;
- case TSqlParser.SYMMETRIC:
- this.state = 5110;
- this.match(TSqlParser.SYMMETRIC);
- this.state = 5111;
- this.match(TSqlParser.KEY);
- this.state = 5112;
- localctx.symmetric_key_name = this.id();
- break;
- case TSqlParser.ASYMMETRIC:
- this.state = 5113;
- this.match(TSqlParser.ASYMMETRIC);
- this.state = 5114;
- this.match(TSqlParser.KEY);
- this.state = 5115;
- localctx.asym_key_name = this.id();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_synonymContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_synonym;
- this.schema_name_1 = null; // IdContext
- this.synonym_name = null; // IdContext
- this.server_name = null; // IdContext
- this.database_name = null; // IdContext
- this.schema_name_2 = null; // IdContext
- this.object_name = null; // IdContext
- this.database_or_schema2 = null; // IdContext
- this.schema_id_2_or_object_name = null; // IdContext
- return this;
-}
-
-Create_synonymContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_synonymContext.prototype.constructor = Create_synonymContext;
-
-Create_synonymContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_synonymContext.prototype.SYNONYM = function() {
- return this.getToken(TSqlParser.SYNONYM, 0);
-};
-
-Create_synonymContext.prototype.FOR = function() {
- return this.getToken(TSqlParser.FOR, 0);
-};
-
-Create_synonymContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Create_synonymContext.prototype.DOT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DOT);
- } else {
- return this.getToken(TSqlParser.DOT, i);
- }
-};
-
-
-Create_synonymContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_synonym(this);
- }
-};
-
-Create_synonymContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_synonym(this);
- }
-};
-
-Create_synonymContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_synonym(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_synonymContext = Create_synonymContext;
-
-TSqlParser.prototype.create_synonym = function() {
-
- var localctx = new Create_synonymContext(this, this._ctx, this.state);
- this.enterRule(localctx, 396, TSqlParser.RULE_create_synonym);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 5120;
- this.match(TSqlParser.CREATE);
- this.state = 5121;
- this.match(TSqlParser.SYNONYM);
- this.state = 5125;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,592,this._ctx);
- if(la_===1) {
- this.state = 5122;
- localctx.schema_name_1 = this.id();
- this.state = 5123;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 5127;
- localctx.synonym_name = this.id();
- this.state = 5128;
- this.match(TSqlParser.FOR);
- this.state = 5155;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,598,this._ctx);
- switch(la_) {
- case 1:
- this.state = 5132;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,593,this._ctx);
- if(la_===1) {
- this.state = 5129;
- localctx.server_name = this.id();
- this.state = 5130;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 5137;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,594,this._ctx);
- if(la_===1) {
- this.state = 5134;
- localctx.database_name = this.id();
- this.state = 5135;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 5142;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,595,this._ctx);
- if(la_===1) {
- this.state = 5139;
- localctx.schema_name_2 = this.id();
- this.state = 5140;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 5144;
- localctx.object_name = this.id();
- break;
-
- case 2:
- this.state = 5148;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,596,this._ctx);
- if(la_===1) {
- this.state = 5145;
- localctx.database_or_schema2 = this.id();
- this.state = 5146;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 5153;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,597,this._ctx);
- if(la_===1) {
- this.state = 5150;
- localctx.schema_id_2_or_object_name = this.id();
- this.state = 5151;
- this.match(TSqlParser.DOT);
-
- }
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_userContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_user;
- this.username = null; // IdContext
- this.newusername = null; // IdContext
- this.schema_name = null; // IdContext
- this.loginame = null; // IdContext
- this.lcid = null; // Token
- this.language_name_or_alias = null; // IdContext
- return this;
-}
-
-Alter_userContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_userContext.prototype.constructor = Alter_userContext;
-
-Alter_userContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Alter_userContext.prototype.USER = function() {
- return this.getToken(TSqlParser.USER, 0);
-};
-
-Alter_userContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Alter_userContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Alter_userContext.prototype.NAME = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.NAME);
- } else {
- return this.getToken(TSqlParser.NAME, i);
- }
-};
-
-
-Alter_userContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-Alter_userContext.prototype.DEFAULT_SCHEMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DEFAULT_SCHEMA);
- } else {
- return this.getToken(TSqlParser.DEFAULT_SCHEMA, i);
- }
-};
-
-
-Alter_userContext.prototype.LOGIN = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.LOGIN);
- } else {
- return this.getToken(TSqlParser.LOGIN, i);
- }
-};
-
-
-Alter_userContext.prototype.PASSWORD = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.PASSWORD);
- } else {
- return this.getToken(TSqlParser.PASSWORD, i);
- }
-};
-
-
-Alter_userContext.prototype.STRING = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.STRING);
- } else {
- return this.getToken(TSqlParser.STRING, i);
- }
-};
-
-
-Alter_userContext.prototype.DEFAULT_LANGUAGE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DEFAULT_LANGUAGE);
- } else {
- return this.getToken(TSqlParser.DEFAULT_LANGUAGE, i);
- }
-};
-
-
-Alter_userContext.prototype.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS);
- } else {
- return this.getToken(TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS, i);
- }
-};
-
-
-Alter_userContext.prototype.ON = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ON);
- } else {
- return this.getToken(TSqlParser.ON, i);
- }
-};
-
-
-Alter_userContext.prototype.OFF = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.OFF);
- } else {
- return this.getToken(TSqlParser.OFF, i);
- }
-};
-
-
-Alter_userContext.prototype.NULL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.NULL);
- } else {
- return this.getToken(TSqlParser.NULL, i);
- }
-};
-
-
-Alter_userContext.prototype.NONE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.NONE);
- } else {
- return this.getToken(TSqlParser.NONE, i);
- }
-};
-
-
-Alter_userContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Alter_userContext.prototype.OLD_PASSWORD = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.OLD_PASSWORD);
- } else {
- return this.getToken(TSqlParser.OLD_PASSWORD, i);
- }
-};
-
-
-Alter_userContext.prototype.DECIMAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DECIMAL);
- } else {
- return this.getToken(TSqlParser.DECIMAL, i);
- }
-};
-
-
-Alter_userContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_user(this);
- }
-};
-
-Alter_userContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_user(this);
- }
-};
-
-Alter_userContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_user(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_userContext = Alter_userContext;
-
-TSqlParser.prototype.alter_user = function() {
-
- var localctx = new Alter_userContext(this, this._ctx, this.state);
- this.enterRule(localctx, 398, TSqlParser.RULE_alter_user);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 5157;
- this.match(TSqlParser.ALTER);
- this.state = 5158;
- this.match(TSqlParser.USER);
- this.state = 5159;
- localctx.username = this.id();
- this.state = 5160;
- this.match(TSqlParser.WITH);
- this.state = 5211;
- this._errHandler.sync(this);
- var _alt = 1;
- do {
- switch (_alt) {
- case 1:
- this.state = 5211;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,608,this._ctx);
- switch(la_) {
- case 1:
- this.state = 5162;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 5161;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 5164;
- this.match(TSqlParser.NAME);
- this.state = 5165;
- this.match(TSqlParser.EQUAL);
- this.state = 5166;
- localctx.newusername = this.id();
- break;
-
- case 2:
- this.state = 5168;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 5167;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 5170;
- this.match(TSqlParser.DEFAULT_SCHEMA);
- this.state = 5171;
- this.match(TSqlParser.EQUAL);
- this.state = 5174;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.state = 5172;
- localctx.schema_name = this.id();
- break;
- case TSqlParser.NULL:
- this.state = 5173;
- this.match(TSqlParser.NULL);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
-
- case 3:
- this.state = 5177;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 5176;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 5179;
- this.match(TSqlParser.LOGIN);
- this.state = 5180;
- this.match(TSqlParser.EQUAL);
- this.state = 5181;
- localctx.loginame = this.id();
- break;
-
- case 4:
- this.state = 5183;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 5182;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 5185;
- this.match(TSqlParser.PASSWORD);
- this.state = 5186;
- this.match(TSqlParser.EQUAL);
- this.state = 5187;
- this.match(TSqlParser.STRING);
- this.state = 5191;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- do {
- this.state = 5188;
- this.match(TSqlParser.OLD_PASSWORD);
- this.state = 5189;
- this.match(TSqlParser.EQUAL);
- this.state = 5190;
- this.match(TSqlParser.STRING);
- this.state = 5193;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- } while(_la===TSqlParser.OLD_PASSWORD);
- break;
-
- case 5:
- this.state = 5196;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 5195;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 5198;
- this.match(TSqlParser.DEFAULT_LANGUAGE);
- this.state = 5199;
- this.match(TSqlParser.EQUAL);
- this.state = 5203;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.NONE:
- this.state = 5200;
- this.match(TSqlParser.NONE);
- break;
- case TSqlParser.DECIMAL:
- this.state = 5201;
- localctx.lcid = this.match(TSqlParser.DECIMAL);
- break;
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.state = 5202;
- localctx.language_name_or_alias = this.id();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
-
- case 6:
- this.state = 5206;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 5205;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 5208;
- this.match(TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS);
- this.state = 5209;
- this.match(TSqlParser.EQUAL);
- this.state = 5210;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
-
- }
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 5213;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,609, this._ctx);
- } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_userContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_user;
- this.user_name = null; // IdContext
- this.login_name = null; // IdContext
- this.schema_name = null; // IdContext
- this.windows_principal = null; // IdContext
- this.language_name_or_alias = null; // IdContext
- this.password = null; // Token
- this.Azure_Active_Directory_principal = null; // IdContext
- this.cert_name = null; // IdContext
- this.asym_key_name = null; // IdContext
- return this;
-}
-
-Create_userContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_userContext.prototype.constructor = Create_userContext;
-
-Create_userContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_userContext.prototype.USER = function() {
- return this.getToken(TSqlParser.USER, 0);
-};
-
-Create_userContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Create_userContext.prototype.LOGIN = function() {
- return this.getToken(TSqlParser.LOGIN, 0);
-};
-
-Create_userContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Create_userContext.prototype.FOR = function() {
- return this.getToken(TSqlParser.FOR, 0);
-};
-
-Create_userContext.prototype.FROM = function() {
- return this.getToken(TSqlParser.FROM, 0);
-};
-
-Create_userContext.prototype.DEFAULT_SCHEMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DEFAULT_SCHEMA);
- } else {
- return this.getToken(TSqlParser.DEFAULT_SCHEMA, i);
- }
-};
-
-
-Create_userContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-Create_userContext.prototype.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS);
- } else {
- return this.getToken(TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS, i);
- }
-};
-
-
-Create_userContext.prototype.ON = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ON);
- } else {
- return this.getToken(TSqlParser.ON, i);
- }
-};
-
-
-Create_userContext.prototype.OFF = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.OFF);
- } else {
- return this.getToken(TSqlParser.OFF, i);
- }
-};
-
-
-Create_userContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Create_userContext.prototype.PASSWORD = function() {
- return this.getToken(TSqlParser.PASSWORD, 0);
-};
-
-Create_userContext.prototype.EXTERNAL = function() {
- return this.getToken(TSqlParser.EXTERNAL, 0);
-};
-
-Create_userContext.prototype.PROVIDER = function() {
- return this.getToken(TSqlParser.PROVIDER, 0);
-};
-
-Create_userContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Create_userContext.prototype.DEFAULT_LANGUAGE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DEFAULT_LANGUAGE);
- } else {
- return this.getToken(TSqlParser.DEFAULT_LANGUAGE, i);
- }
-};
-
-
-Create_userContext.prototype.SID = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.SID);
- } else {
- return this.getToken(TSqlParser.SID, i);
- }
-};
-
-
-Create_userContext.prototype.BINARY = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.BINARY);
- } else {
- return this.getToken(TSqlParser.BINARY, i);
- }
-};
-
-
-Create_userContext.prototype.NONE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.NONE);
- } else {
- return this.getToken(TSqlParser.NONE, i);
- }
-};
-
-
-Create_userContext.prototype.DECIMAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DECIMAL);
- } else {
- return this.getToken(TSqlParser.DECIMAL, i);
- }
-};
-
-
-Create_userContext.prototype.WITHOUT = function() {
- return this.getToken(TSqlParser.WITHOUT, 0);
-};
-
-Create_userContext.prototype.CERTIFICATE = function() {
- return this.getToken(TSqlParser.CERTIFICATE, 0);
-};
-
-Create_userContext.prototype.ASYMMETRIC = function() {
- return this.getToken(TSqlParser.ASYMMETRIC, 0);
-};
-
-Create_userContext.prototype.KEY = function() {
- return this.getToken(TSqlParser.KEY, 0);
-};
-
-Create_userContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_user(this);
- }
-};
-
-Create_userContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_user(this);
- }
-};
-
-Create_userContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_user(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_userContext = Create_userContext;
-
-TSqlParser.prototype.create_user = function() {
-
- var localctx = new Create_userContext(this, this._ctx, this.state);
- this.enterRule(localctx, 400, TSqlParser.RULE_create_user);
- var _la = 0; // Token type
- try {
- this.state = 5361;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,637,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 5215;
- this.match(TSqlParser.CREATE);
- this.state = 5216;
- this.match(TSqlParser.USER);
- this.state = 5217;
- localctx.user_name = this.id();
- this.state = 5221;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.FOR || _la===TSqlParser.FROM) {
- this.state = 5218;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.FOR || _la===TSqlParser.FROM)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 5219;
- this.match(TSqlParser.LOGIN);
- this.state = 5220;
- localctx.login_name = this.id();
- }
-
- this.state = 5241;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,615,this._ctx);
- if(la_===1) {
- this.state = 5223;
- this.match(TSqlParser.WITH);
- this.state = 5238;
- this._errHandler.sync(this);
- var _alt = this._interp.adaptivePredict(this._input,614,this._ctx)
- while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
- if(_alt===1) {
- this.state = 5236;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,613,this._ctx);
- switch(la_) {
- case 1:
- this.state = 5225;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 5224;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 5227;
- this.match(TSqlParser.DEFAULT_SCHEMA);
- this.state = 5228;
- this.match(TSqlParser.EQUAL);
- this.state = 5229;
- localctx.schema_name = this.id();
- break;
-
- case 2:
- this.state = 5231;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 5230;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 5233;
- this.match(TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS);
- this.state = 5234;
- this.match(TSqlParser.EQUAL);
- this.state = 5235;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
-
- }
- }
- this.state = 5240;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,614,this._ctx);
- }
-
-
- }
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 5243;
- this.match(TSqlParser.CREATE);
- this.state = 5244;
- this.match(TSqlParser.USER);
- this.state = 5325;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,631,this._ctx);
- switch(la_) {
- case 1:
- this.state = 5245;
- localctx.windows_principal = this.id();
- this.state = 5280;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,623,this._ctx);
- if(la_===1) {
- this.state = 5246;
- this.match(TSqlParser.WITH);
- this.state = 5277;
- this._errHandler.sync(this);
- var _alt = this._interp.adaptivePredict(this._input,622,this._ctx)
- while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
- if(_alt===1) {
- this.state = 5275;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,621,this._ctx);
- switch(la_) {
- case 1:
- this.state = 5248;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 5247;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 5250;
- this.match(TSqlParser.DEFAULT_SCHEMA);
- this.state = 5251;
- this.match(TSqlParser.EQUAL);
- this.state = 5252;
- localctx.schema_name = this.id();
- break;
-
- case 2:
- this.state = 5254;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 5253;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 5256;
- this.match(TSqlParser.DEFAULT_LANGUAGE);
- this.state = 5257;
- this.match(TSqlParser.EQUAL);
- this.state = 5261;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.NONE:
- this.state = 5258;
- this.match(TSqlParser.NONE);
- break;
- case TSqlParser.DECIMAL:
- this.state = 5259;
- this.match(TSqlParser.DECIMAL);
- break;
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.state = 5260;
- localctx.language_name_or_alias = this.id();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
-
- case 3:
- this.state = 5264;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 5263;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 5266;
- this.match(TSqlParser.SID);
- this.state = 5267;
- this.match(TSqlParser.EQUAL);
- this.state = 5268;
- this.match(TSqlParser.BINARY);
- break;
-
- case 4:
- this.state = 5270;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 5269;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 5272;
- this.match(TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS);
- this.state = 5273;
- this.match(TSqlParser.EQUAL);
- this.state = 5274;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
-
- }
- }
- this.state = 5279;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,622,this._ctx);
- }
-
-
- }
- break;
-
- case 2:
- this.state = 5282;
- localctx.user_name = this.id();
- this.state = 5283;
- this.match(TSqlParser.WITH);
- this.state = 5284;
- this.match(TSqlParser.PASSWORD);
- this.state = 5285;
- this.match(TSqlParser.EQUAL);
- this.state = 5286;
- localctx.password = this.match(TSqlParser.STRING);
- this.state = 5317;
- this._errHandler.sync(this);
- var _alt = this._interp.adaptivePredict(this._input,630,this._ctx)
- while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
- if(_alt===1) {
- this.state = 5315;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,629,this._ctx);
- switch(la_) {
- case 1:
- this.state = 5288;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 5287;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 5290;
- this.match(TSqlParser.DEFAULT_SCHEMA);
- this.state = 5291;
- this.match(TSqlParser.EQUAL);
- this.state = 5292;
- localctx.schema_name = this.id();
- break;
-
- case 2:
- this.state = 5294;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 5293;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 5296;
- this.match(TSqlParser.DEFAULT_LANGUAGE);
- this.state = 5297;
- this.match(TSqlParser.EQUAL);
- this.state = 5301;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.NONE:
- this.state = 5298;
- this.match(TSqlParser.NONE);
- break;
- case TSqlParser.DECIMAL:
- this.state = 5299;
- this.match(TSqlParser.DECIMAL);
- break;
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.state = 5300;
- localctx.language_name_or_alias = this.id();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
-
- case 3:
- this.state = 5304;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 5303;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 5306;
- this.match(TSqlParser.SID);
- this.state = 5307;
- this.match(TSqlParser.EQUAL);
- this.state = 5308;
- this.match(TSqlParser.BINARY);
- break;
-
- case 4:
- this.state = 5310;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 5309;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 5312;
- this.match(TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS);
- this.state = 5313;
- this.match(TSqlParser.EQUAL);
- this.state = 5314;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
-
- }
- }
- this.state = 5319;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,630,this._ctx);
- }
-
- break;
-
- case 3:
- this.state = 5320;
- localctx.Azure_Active_Directory_principal = this.id();
- this.state = 5321;
- this.match(TSqlParser.FROM);
- this.state = 5322;
- this.match(TSqlParser.EXTERNAL);
- this.state = 5323;
- this.match(TSqlParser.PROVIDER);
- break;
-
- }
- break;
-
- case 3:
- this.enterOuterAlt(localctx, 3);
- this.state = 5327;
- this.match(TSqlParser.CREATE);
- this.state = 5328;
- this.match(TSqlParser.USER);
- this.state = 5329;
- localctx.user_name = this.id();
- this.state = 5356;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,636,this._ctx);
- switch(la_) {
- case 1:
- this.state = 5330;
- this.match(TSqlParser.WITHOUT);
- this.state = 5331;
- this.match(TSqlParser.LOGIN);
- this.state = 5346;
- this._errHandler.sync(this);
- var _alt = this._interp.adaptivePredict(this._input,635,this._ctx)
- while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
- if(_alt===1) {
- this.state = 5344;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,634,this._ctx);
- switch(la_) {
- case 1:
- this.state = 5333;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 5332;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 5335;
- this.match(TSqlParser.DEFAULT_SCHEMA);
- this.state = 5336;
- this.match(TSqlParser.EQUAL);
- this.state = 5337;
- localctx.schema_name = this.id();
- break;
-
- case 2:
- this.state = 5339;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 5338;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 5341;
- this.match(TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS);
- this.state = 5342;
- this.match(TSqlParser.EQUAL);
- this.state = 5343;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
-
- }
- }
- this.state = 5348;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,635,this._ctx);
- }
-
- break;
-
- case 2:
- this.state = 5349;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.FOR || _la===TSqlParser.FROM)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 5350;
- this.match(TSqlParser.CERTIFICATE);
- this.state = 5351;
- localctx.cert_name = this.id();
- break;
-
- case 3:
- this.state = 5352;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.FOR || _la===TSqlParser.FROM)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 5353;
- this.match(TSqlParser.ASYMMETRIC);
- this.state = 5354;
- this.match(TSqlParser.KEY);
- this.state = 5355;
- localctx.asym_key_name = this.id();
- break;
-
- }
- break;
-
- case 4:
- this.enterOuterAlt(localctx, 4);
- this.state = 5358;
- this.match(TSqlParser.CREATE);
- this.state = 5359;
- this.match(TSqlParser.USER);
- this.state = 5360;
- localctx.user_name = this.id();
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_user_azure_sql_dwContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_user_azure_sql_dw;
- this.user_name = null; // IdContext
- this.login_name = null; // IdContext
- this.schema_name = null; // IdContext
- this.Azure_Active_Directory_principal = null; // IdContext
- return this;
-}
-
-Create_user_azure_sql_dwContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_user_azure_sql_dwContext.prototype.constructor = Create_user_azure_sql_dwContext;
-
-Create_user_azure_sql_dwContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_user_azure_sql_dwContext.prototype.USER = function() {
- return this.getToken(TSqlParser.USER, 0);
-};
-
-Create_user_azure_sql_dwContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Create_user_azure_sql_dwContext.prototype.LOGIN = function() {
- return this.getToken(TSqlParser.LOGIN, 0);
-};
-
-Create_user_azure_sql_dwContext.prototype.WITHOUT = function() {
- return this.getToken(TSqlParser.WITHOUT, 0);
-};
-
-Create_user_azure_sql_dwContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Create_user_azure_sql_dwContext.prototype.DEFAULT_SCHEMA = function() {
- return this.getToken(TSqlParser.DEFAULT_SCHEMA, 0);
-};
-
-Create_user_azure_sql_dwContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Create_user_azure_sql_dwContext.prototype.FOR = function() {
- return this.getToken(TSqlParser.FOR, 0);
-};
-
-Create_user_azure_sql_dwContext.prototype.FROM = function() {
- return this.getToken(TSqlParser.FROM, 0);
-};
-
-Create_user_azure_sql_dwContext.prototype.EXTERNAL = function() {
- return this.getToken(TSqlParser.EXTERNAL, 0);
-};
-
-Create_user_azure_sql_dwContext.prototype.PROVIDER = function() {
- return this.getToken(TSqlParser.PROVIDER, 0);
-};
-
-Create_user_azure_sql_dwContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_user_azure_sql_dw(this);
- }
-};
-
-Create_user_azure_sql_dwContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_user_azure_sql_dw(this);
- }
-};
-
-Create_user_azure_sql_dwContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_user_azure_sql_dw(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_user_azure_sql_dwContext = Create_user_azure_sql_dwContext;
-
-TSqlParser.prototype.create_user_azure_sql_dw = function() {
-
- var localctx = new Create_user_azure_sql_dwContext(this, this._ctx, this.state);
- this.enterRule(localctx, 402, TSqlParser.RULE_create_user_azure_sql_dw);
- var _la = 0; // Token type
- try {
- this.state = 5391;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,641,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 5363;
- this.match(TSqlParser.CREATE);
- this.state = 5364;
- this.match(TSqlParser.USER);
- this.state = 5365;
- localctx.user_name = this.id();
- this.state = 5371;
- this._errHandler.sync(this);
- switch (this._input.LA(1)) {
- case TSqlParser.FOR:
- case TSqlParser.FROM:
- this.state = 5366;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.FOR || _la===TSqlParser.FROM)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 5367;
- this.match(TSqlParser.LOGIN);
- this.state = 5368;
- localctx.login_name = this.id();
- break;
- case TSqlParser.WITHOUT:
- this.state = 5369;
- this.match(TSqlParser.WITHOUT);
- this.state = 5370;
- this.match(TSqlParser.LOGIN);
- break;
- case TSqlParser.EOF:
- case TSqlParser.ALTER:
- case TSqlParser.BACKUP:
- case TSqlParser.BEGIN:
- case TSqlParser.BLOCKING_HIERARCHY:
- case TSqlParser.BREAK:
- case TSqlParser.CALLED:
- case TSqlParser.CASE:
- case TSqlParser.CLOSE:
- case TSqlParser.COALESCE:
- case TSqlParser.COMMIT:
- case TSqlParser.CONTINUE:
- case TSqlParser.CONVERT:
- case TSqlParser.CREATE:
- case TSqlParser.CURRENT_TIMESTAMP:
- case TSqlParser.CURRENT_USER:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.DBCC:
- case TSqlParser.DEALLOCATE:
- case TSqlParser.DECLARE:
- case TSqlParser.DEFAULT:
- case TSqlParser.DELETE:
- case TSqlParser.DROP:
- case TSqlParser.ELSE:
- case TSqlParser.END:
- case TSqlParser.EVENTDATA:
- case TSqlParser.EXECUTE:
- case TSqlParser.FETCH:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.GET:
- case TSqlParser.GOTO:
- case TSqlParser.GRANT:
- case TSqlParser.IDENTITY:
- case TSqlParser.IF:
- case TSqlParser.IIF:
- case TSqlParser.INIT:
- case TSqlParser.INSERT:
- case TSqlParser.ISNULL:
- case TSqlParser.KEY:
- case TSqlParser.KILL:
- case TSqlParser.LEFT:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.MERGE:
- case TSqlParser.NULL:
- case TSqlParser.NULLIF:
- case TSqlParser.OFFSETS:
- case TSqlParser.OPEN:
- case TSqlParser.OVER:
- case TSqlParser.PAGE:
- case TSqlParser.PRINT:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAISERROR:
- case TSqlParser.RAW:
- case TSqlParser.RECONFIGURE:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.REVERT:
- case TSqlParser.RIGHT:
- case TSqlParser.ROLLBACK:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SAVE:
- case TSqlParser.SELECT:
- case TSqlParser.SERVER:
- case TSqlParser.SESSION_USER:
- case TSqlParser.SET:
- case TSqlParser.SETUSER:
- case TSqlParser.SHUTDOWN:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.SYSTEM_USER:
- case TSqlParser.TARGET:
- case TSqlParser.TRUNCATE:
- case TSqlParser.UPDATE:
- case TSqlParser.USE:
- case TSqlParser.WAITFOR:
- case TSqlParser.WHILE:
- case TSqlParser.WITH:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.LOCAL_ID:
- case TSqlParser.DECIMAL:
- case TSqlParser.ID:
- case TSqlParser.STRING:
- case TSqlParser.BINARY:
- case TSqlParser.FLOAT:
- case TSqlParser.REAL:
- case TSqlParser.DOLLAR:
- case TSqlParser.LR_BRACKET:
- case TSqlParser.SEMI:
- case TSqlParser.PLUS:
- case TSqlParser.MINUS:
- case TSqlParser.BIT_NOT:
- break;
- default:
- break;
- }
- this.state = 5377;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,639,this._ctx);
- if(la_===1) {
- this.state = 5373;
- this.match(TSqlParser.WITH);
- this.state = 5374;
- this.match(TSqlParser.DEFAULT_SCHEMA);
- this.state = 5375;
- this.match(TSqlParser.EQUAL);
- this.state = 5376;
- localctx.schema_name = this.id();
-
- }
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 5379;
- this.match(TSqlParser.CREATE);
- this.state = 5380;
- this.match(TSqlParser.USER);
- this.state = 5381;
- localctx.Azure_Active_Directory_principal = this.id();
- this.state = 5382;
- this.match(TSqlParser.FROM);
- this.state = 5383;
- this.match(TSqlParser.EXTERNAL);
- this.state = 5384;
- this.match(TSqlParser.PROVIDER);
- this.state = 5389;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,640,this._ctx);
- if(la_===1) {
- this.state = 5385;
- this.match(TSqlParser.WITH);
- this.state = 5386;
- this.match(TSqlParser.DEFAULT_SCHEMA);
- this.state = 5387;
- this.match(TSqlParser.EQUAL);
- this.state = 5388;
- localctx.schema_name = this.id();
-
- }
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_user_azure_sqlContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_user_azure_sql;
- this.username = null; // IdContext
- this.newusername = null; // IdContext
- this.schema_name = null; // IdContext
- this.loginame = null; // IdContext
- return this;
-}
-
-Alter_user_azure_sqlContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_user_azure_sqlContext.prototype.constructor = Alter_user_azure_sqlContext;
-
-Alter_user_azure_sqlContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Alter_user_azure_sqlContext.prototype.USER = function() {
- return this.getToken(TSqlParser.USER, 0);
-};
-
-Alter_user_azure_sqlContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Alter_user_azure_sqlContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Alter_user_azure_sqlContext.prototype.NAME = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.NAME);
- } else {
- return this.getToken(TSqlParser.NAME, i);
- }
-};
-
-
-Alter_user_azure_sqlContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-Alter_user_azure_sqlContext.prototype.DEFAULT_SCHEMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DEFAULT_SCHEMA);
- } else {
- return this.getToken(TSqlParser.DEFAULT_SCHEMA, i);
- }
-};
-
-
-Alter_user_azure_sqlContext.prototype.LOGIN = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.LOGIN);
- } else {
- return this.getToken(TSqlParser.LOGIN, i);
- }
-};
-
-
-Alter_user_azure_sqlContext.prototype.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS);
- } else {
- return this.getToken(TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS, i);
- }
-};
-
-
-Alter_user_azure_sqlContext.prototype.ON = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ON);
- } else {
- return this.getToken(TSqlParser.ON, i);
- }
-};
-
-
-Alter_user_azure_sqlContext.prototype.OFF = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.OFF);
- } else {
- return this.getToken(TSqlParser.OFF, i);
- }
-};
-
-
-Alter_user_azure_sqlContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Alter_user_azure_sqlContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_user_azure_sql(this);
- }
-};
-
-Alter_user_azure_sqlContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_user_azure_sql(this);
- }
-};
-
-Alter_user_azure_sqlContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_user_azure_sql(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_user_azure_sqlContext = Alter_user_azure_sqlContext;
-
-TSqlParser.prototype.alter_user_azure_sql = function() {
-
- var localctx = new Alter_user_azure_sqlContext(this, this._ctx, this.state);
- this.enterRule(localctx, 404, TSqlParser.RULE_alter_user_azure_sql);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 5393;
- this.match(TSqlParser.ALTER);
- this.state = 5394;
- this.match(TSqlParser.USER);
- this.state = 5395;
- localctx.username = this.id();
- this.state = 5396;
- this.match(TSqlParser.WITH);
- this.state = 5421;
- this._errHandler.sync(this);
- var _alt = 1;
- do {
- switch (_alt) {
- case 1:
- this.state = 5421;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,646,this._ctx);
- switch(la_) {
- case 1:
- this.state = 5398;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 5397;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 5400;
- this.match(TSqlParser.NAME);
- this.state = 5401;
- this.match(TSqlParser.EQUAL);
- this.state = 5402;
- localctx.newusername = this.id();
- break;
-
- case 2:
- this.state = 5404;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 5403;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 5406;
- this.match(TSqlParser.DEFAULT_SCHEMA);
- this.state = 5407;
- this.match(TSqlParser.EQUAL);
- this.state = 5408;
- localctx.schema_name = this.id();
- break;
-
- case 3:
- this.state = 5410;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 5409;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 5412;
- this.match(TSqlParser.LOGIN);
- this.state = 5413;
- this.match(TSqlParser.EQUAL);
- this.state = 5414;
- localctx.loginame = this.id();
- break;
-
- case 4:
- this.state = 5416;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 5415;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 5418;
- this.match(TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS);
- this.state = 5419;
- this.match(TSqlParser.EQUAL);
- this.state = 5420;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
-
- }
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 5423;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,647, this._ctx);
- } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_workload_groupContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_workload_group;
- this.workload_group_group_name = null; // IdContext
- this.request_max_memory_grant = null; // Token
- this.request_max_cpu_time_sec = null; // Token
- this.request_memory_grant_timeout_sec = null; // Token
- this.max_dop = null; // Token
- this.group_max_requests = null; // Token
- this.workload_group_pool_name = null; // IdContext
- return this;
-}
-
-Alter_workload_groupContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_workload_groupContext.prototype.constructor = Alter_workload_groupContext;
-
-Alter_workload_groupContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Alter_workload_groupContext.prototype.WORKLOAD = function() {
- return this.getToken(TSqlParser.WORKLOAD, 0);
-};
-
-Alter_workload_groupContext.prototype.GROUP = function() {
- return this.getToken(TSqlParser.GROUP, 0);
-};
-
-Alter_workload_groupContext.prototype.DEFAULT_DOUBLE_QUOTE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DEFAULT_DOUBLE_QUOTE);
- } else {
- return this.getToken(TSqlParser.DEFAULT_DOUBLE_QUOTE, i);
- }
-};
-
-
-Alter_workload_groupContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Alter_workload_groupContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Alter_workload_groupContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Alter_workload_groupContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Alter_workload_groupContext.prototype.USING = function() {
- return this.getToken(TSqlParser.USING, 0);
-};
-
-Alter_workload_groupContext.prototype.IMPORTANCE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.IMPORTANCE);
- } else {
- return this.getToken(TSqlParser.IMPORTANCE, i);
- }
-};
-
-
-Alter_workload_groupContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-Alter_workload_groupContext.prototype.REQUEST_MAX_MEMORY_GRANT_PERCENT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT);
- } else {
- return this.getToken(TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT, i);
- }
-};
-
-
-Alter_workload_groupContext.prototype.REQUEST_MAX_CPU_TIME_SEC = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.REQUEST_MAX_CPU_TIME_SEC);
- } else {
- return this.getToken(TSqlParser.REQUEST_MAX_CPU_TIME_SEC, i);
- }
-};
-
-
-Alter_workload_groupContext.prototype.REQUEST_MEMORY_GRANT_TIMEOUT_SEC = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC);
- } else {
- return this.getToken(TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC, i);
- }
-};
-
-
-Alter_workload_groupContext.prototype.MAX_DOP = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.MAX_DOP);
- } else {
- return this.getToken(TSqlParser.MAX_DOP, i);
- }
-};
-
-
-Alter_workload_groupContext.prototype.GROUP_MAX_REQUESTS = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.GROUP_MAX_REQUESTS);
- } else {
- return this.getToken(TSqlParser.GROUP_MAX_REQUESTS, i);
- }
-};
-
-
-Alter_workload_groupContext.prototype.LOW = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.LOW);
- } else {
- return this.getToken(TSqlParser.LOW, i);
- }
-};
-
-
-Alter_workload_groupContext.prototype.MEDIUM = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.MEDIUM);
- } else {
- return this.getToken(TSqlParser.MEDIUM, i);
- }
-};
-
-
-Alter_workload_groupContext.prototype.HIGH = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.HIGH);
- } else {
- return this.getToken(TSqlParser.HIGH, i);
- }
-};
-
-
-Alter_workload_groupContext.prototype.DECIMAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DECIMAL);
- } else {
- return this.getToken(TSqlParser.DECIMAL, i);
- }
-};
-
-
-Alter_workload_groupContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Alter_workload_groupContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_workload_group(this);
- }
-};
-
-Alter_workload_groupContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_workload_group(this);
- }
-};
-
-Alter_workload_groupContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_workload_group(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_workload_groupContext = Alter_workload_groupContext;
-
-TSqlParser.prototype.alter_workload_group = function() {
-
- var localctx = new Alter_workload_groupContext(this, this._ctx, this.state);
- this.enterRule(localctx, 406, TSqlParser.RULE_alter_workload_group);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 5425;
- this.match(TSqlParser.ALTER);
- this.state = 5426;
- this.match(TSqlParser.WORKLOAD);
- this.state = 5427;
- this.match(TSqlParser.GROUP);
- this.state = 5430;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,648,this._ctx);
- switch(la_) {
- case 1:
- this.state = 5428;
- localctx.workload_group_group_name = this.id();
- break;
-
- case 2:
- this.state = 5429;
- this.match(TSqlParser.DEFAULT_DOUBLE_QUOTE);
- break;
-
- }
- this.state = 5463;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,653,this._ctx);
- if(la_===1) {
- this.state = 5432;
- this.match(TSqlParser.WITH);
- this.state = 5433;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 5458;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- do {
- this.state = 5458;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,651,this._ctx);
- switch(la_) {
- case 1:
- this.state = 5434;
- this.match(TSqlParser.IMPORTANCE);
- this.state = 5435;
- this.match(TSqlParser.EQUAL);
- this.state = 5436;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.HIGH || _la===TSqlParser.LOW || _la===TSqlParser.MEDIUM)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
-
- case 2:
- this.state = 5438;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 5437;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 5440;
- this.match(TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT);
- this.state = 5441;
- this.match(TSqlParser.EQUAL);
- this.state = 5442;
- localctx.request_max_memory_grant = this.match(TSqlParser.DECIMAL);
- break;
-
- case 3:
- this.state = 5444;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 5443;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 5446;
- this.match(TSqlParser.REQUEST_MAX_CPU_TIME_SEC);
- this.state = 5447;
- this.match(TSqlParser.EQUAL);
- this.state = 5448;
- localctx.request_max_cpu_time_sec = this.match(TSqlParser.DECIMAL);
- break;
-
- case 4:
- this.state = 5449;
- this.match(TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC);
- this.state = 5450;
- this.match(TSqlParser.EQUAL);
- this.state = 5451;
- localctx.request_memory_grant_timeout_sec = this.match(TSqlParser.DECIMAL);
- break;
-
- case 5:
- this.state = 5452;
- this.match(TSqlParser.MAX_DOP);
- this.state = 5453;
- this.match(TSqlParser.EQUAL);
- this.state = 5454;
- localctx.max_dop = this.match(TSqlParser.DECIMAL);
- break;
-
- case 6:
- this.state = 5455;
- this.match(TSqlParser.GROUP_MAX_REQUESTS);
- this.state = 5456;
- this.match(TSqlParser.EQUAL);
- this.state = 5457;
- localctx.group_max_requests = this.match(TSqlParser.DECIMAL);
- break;
-
- }
- this.state = 5460;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- } while(_la===TSqlParser.GROUP_MAX_REQUESTS || _la===TSqlParser.IMPORTANCE || _la===TSqlParser.MAX_DOP || ((((_la - 683)) & ~0x1f) == 0 && ((1 << (_la - 683)) & ((1 << (TSqlParser.REQUEST_MAX_CPU_TIME_SEC - 683)) | (1 << (TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT - 683)) | (1 << (TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC - 683)))) !== 0) || _la===TSqlParser.COMMA);
- this.state = 5462;
- this.match(TSqlParser.RR_BRACKET);
-
- }
- this.state = 5470;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,655,this._ctx);
- if(la_===1) {
- this.state = 5465;
- this.match(TSqlParser.USING);
- this.state = 5468;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,654,this._ctx);
- switch(la_) {
- case 1:
- this.state = 5466;
- localctx.workload_group_pool_name = this.id();
- break;
-
- case 2:
- this.state = 5467;
- this.match(TSqlParser.DEFAULT_DOUBLE_QUOTE);
- break;
-
- }
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_workload_groupContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_workload_group;
- this.workload_group_group_name = null; // IdContext
- this.request_max_memory_grant = null; // Token
- this.request_max_cpu_time_sec = null; // Token
- this.request_memory_grant_timeout_sec = null; // Token
- this.max_dop = null; // Token
- this.group_max_requests = null; // Token
- this.workload_group_pool_name = null; // IdContext
- this.external_pool_name = null; // IdContext
- return this;
-}
-
-Create_workload_groupContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_workload_groupContext.prototype.constructor = Create_workload_groupContext;
-
-Create_workload_groupContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_workload_groupContext.prototype.WORKLOAD = function() {
- return this.getToken(TSqlParser.WORKLOAD, 0);
-};
-
-Create_workload_groupContext.prototype.GROUP = function() {
- return this.getToken(TSqlParser.GROUP, 0);
-};
-
-Create_workload_groupContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Create_workload_groupContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Create_workload_groupContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Create_workload_groupContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Create_workload_groupContext.prototype.USING = function() {
- return this.getToken(TSqlParser.USING, 0);
-};
-
-Create_workload_groupContext.prototype.IMPORTANCE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.IMPORTANCE);
- } else {
- return this.getToken(TSqlParser.IMPORTANCE, i);
- }
-};
-
-
-Create_workload_groupContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-Create_workload_groupContext.prototype.REQUEST_MAX_MEMORY_GRANT_PERCENT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT);
- } else {
- return this.getToken(TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT, i);
- }
-};
-
-
-Create_workload_groupContext.prototype.REQUEST_MAX_CPU_TIME_SEC = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.REQUEST_MAX_CPU_TIME_SEC);
- } else {
- return this.getToken(TSqlParser.REQUEST_MAX_CPU_TIME_SEC, i);
- }
-};
-
-
-Create_workload_groupContext.prototype.REQUEST_MEMORY_GRANT_TIMEOUT_SEC = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC);
- } else {
- return this.getToken(TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC, i);
- }
-};
-
-
-Create_workload_groupContext.prototype.MAX_DOP = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.MAX_DOP);
- } else {
- return this.getToken(TSqlParser.MAX_DOP, i);
- }
-};
-
-
-Create_workload_groupContext.prototype.GROUP_MAX_REQUESTS = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.GROUP_MAX_REQUESTS);
- } else {
- return this.getToken(TSqlParser.GROUP_MAX_REQUESTS, i);
- }
-};
-
-
-Create_workload_groupContext.prototype.DEFAULT_DOUBLE_QUOTE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DEFAULT_DOUBLE_QUOTE);
- } else {
- return this.getToken(TSqlParser.DEFAULT_DOUBLE_QUOTE, i);
- }
-};
-
-
-Create_workload_groupContext.prototype.EXTERNAL = function() {
- return this.getToken(TSqlParser.EXTERNAL, 0);
-};
-
-Create_workload_groupContext.prototype.LOW = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.LOW);
- } else {
- return this.getToken(TSqlParser.LOW, i);
- }
-};
-
-
-Create_workload_groupContext.prototype.MEDIUM = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.MEDIUM);
- } else {
- return this.getToken(TSqlParser.MEDIUM, i);
- }
-};
-
-
-Create_workload_groupContext.prototype.HIGH = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.HIGH);
- } else {
- return this.getToken(TSqlParser.HIGH, i);
- }
-};
-
-
-Create_workload_groupContext.prototype.DECIMAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DECIMAL);
- } else {
- return this.getToken(TSqlParser.DECIMAL, i);
- }
-};
-
-
-Create_workload_groupContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Create_workload_groupContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_workload_group(this);
- }
-};
-
-Create_workload_groupContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_workload_group(this);
- }
-};
-
-Create_workload_groupContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_workload_group(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_workload_groupContext = Create_workload_groupContext;
-
-TSqlParser.prototype.create_workload_group = function() {
-
- var localctx = new Create_workload_groupContext(this, this._ctx, this.state);
- this.enterRule(localctx, 408, TSqlParser.RULE_create_workload_group);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 5472;
- this.match(TSqlParser.CREATE);
- this.state = 5473;
- this.match(TSqlParser.WORKLOAD);
- this.state = 5474;
- this.match(TSqlParser.GROUP);
- this.state = 5475;
- localctx.workload_group_group_name = this.id();
- this.state = 5507;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,660,this._ctx);
- if(la_===1) {
- this.state = 5476;
- this.match(TSqlParser.WITH);
- this.state = 5477;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 5502;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- do {
- this.state = 5502;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,658,this._ctx);
- switch(la_) {
- case 1:
- this.state = 5478;
- this.match(TSqlParser.IMPORTANCE);
- this.state = 5479;
- this.match(TSqlParser.EQUAL);
- this.state = 5480;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.HIGH || _la===TSqlParser.LOW || _la===TSqlParser.MEDIUM)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
-
- case 2:
- this.state = 5482;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 5481;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 5484;
- this.match(TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT);
- this.state = 5485;
- this.match(TSqlParser.EQUAL);
- this.state = 5486;
- localctx.request_max_memory_grant = this.match(TSqlParser.DECIMAL);
- break;
-
- case 3:
- this.state = 5488;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 5487;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 5490;
- this.match(TSqlParser.REQUEST_MAX_CPU_TIME_SEC);
- this.state = 5491;
- this.match(TSqlParser.EQUAL);
- this.state = 5492;
- localctx.request_max_cpu_time_sec = this.match(TSqlParser.DECIMAL);
- break;
-
- case 4:
- this.state = 5493;
- this.match(TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC);
- this.state = 5494;
- this.match(TSqlParser.EQUAL);
- this.state = 5495;
- localctx.request_memory_grant_timeout_sec = this.match(TSqlParser.DECIMAL);
- break;
-
- case 5:
- this.state = 5496;
- this.match(TSqlParser.MAX_DOP);
- this.state = 5497;
- this.match(TSqlParser.EQUAL);
- this.state = 5498;
- localctx.max_dop = this.match(TSqlParser.DECIMAL);
- break;
-
- case 6:
- this.state = 5499;
- this.match(TSqlParser.GROUP_MAX_REQUESTS);
- this.state = 5500;
- this.match(TSqlParser.EQUAL);
- this.state = 5501;
- localctx.group_max_requests = this.match(TSqlParser.DECIMAL);
- break;
-
- }
- this.state = 5504;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- } while(_la===TSqlParser.GROUP_MAX_REQUESTS || _la===TSqlParser.IMPORTANCE || _la===TSqlParser.MAX_DOP || ((((_la - 683)) & ~0x1f) == 0 && ((1 << (_la - 683)) & ((1 << (TSqlParser.REQUEST_MAX_CPU_TIME_SEC - 683)) | (1 << (TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT - 683)) | (1 << (TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC - 683)))) !== 0) || _la===TSqlParser.COMMA);
- this.state = 5506;
- this.match(TSqlParser.RR_BRACKET);
-
- }
- this.state = 5522;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,664,this._ctx);
- if(la_===1) {
- this.state = 5509;
- this.match(TSqlParser.USING);
- this.state = 5512;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,661,this._ctx);
- if(la_===1) {
- this.state = 5510;
- localctx.workload_group_pool_name = this.id();
-
- } else if(la_===2) {
- this.state = 5511;
- this.match(TSqlParser.DEFAULT_DOUBLE_QUOTE);
-
- }
- this.state = 5520;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,663,this._ctx);
- if(la_===1) {
- this.state = 5515;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 5514;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 5517;
- this.match(TSqlParser.EXTERNAL);
- this.state = 5518;
- localctx.external_pool_name = this.id();
-
- } else if(la_===2) {
- this.state = 5519;
- this.match(TSqlParser.DEFAULT_DOUBLE_QUOTE);
-
- }
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_xml_schema_collectionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_xml_schema_collection;
- this.relational_schema = null; // IdContext
- this.sql_identifier = null; // IdContext
- return this;
-}
-
-Create_xml_schema_collectionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_xml_schema_collectionContext.prototype.constructor = Create_xml_schema_collectionContext;
-
-Create_xml_schema_collectionContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_xml_schema_collectionContext.prototype.XML = function() {
- return this.getToken(TSqlParser.XML, 0);
-};
-
-Create_xml_schema_collectionContext.prototype.SCHEMA = function() {
- return this.getToken(TSqlParser.SCHEMA, 0);
-};
-
-Create_xml_schema_collectionContext.prototype.COLLECTION = function() {
- return this.getToken(TSqlParser.COLLECTION, 0);
-};
-
-Create_xml_schema_collectionContext.prototype.AS = function() {
- return this.getToken(TSqlParser.AS, 0);
-};
-
-Create_xml_schema_collectionContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Create_xml_schema_collectionContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Create_xml_schema_collectionContext.prototype.LOCAL_ID = function() {
- return this.getToken(TSqlParser.LOCAL_ID, 0);
-};
-
-Create_xml_schema_collectionContext.prototype.DOT = function() {
- return this.getToken(TSqlParser.DOT, 0);
-};
-
-Create_xml_schema_collectionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_xml_schema_collection(this);
- }
-};
-
-Create_xml_schema_collectionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_xml_schema_collection(this);
- }
-};
-
-Create_xml_schema_collectionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_xml_schema_collection(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_xml_schema_collectionContext = Create_xml_schema_collectionContext;
-
-TSqlParser.prototype.create_xml_schema_collection = function() {
-
- var localctx = new Create_xml_schema_collectionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 410, TSqlParser.RULE_create_xml_schema_collection);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 5524;
- this.match(TSqlParser.CREATE);
- this.state = 5525;
- this.match(TSqlParser.XML);
- this.state = 5526;
- this.match(TSqlParser.SCHEMA);
- this.state = 5527;
- this.match(TSqlParser.COLLECTION);
- this.state = 5531;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,665,this._ctx);
- if(la_===1) {
- this.state = 5528;
- localctx.relational_schema = this.id();
- this.state = 5529;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 5533;
- localctx.sql_identifier = this.id();
- this.state = 5534;
- this.match(TSqlParser.AS);
- this.state = 5538;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.STRING:
- this.state = 5535;
- this.match(TSqlParser.STRING);
- break;
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.state = 5536;
- this.id();
- break;
- case TSqlParser.LOCAL_ID:
- this.state = 5537;
- this.match(TSqlParser.LOCAL_ID);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_queueContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_queue;
- this.queue_name = null; // IdContext
- this.filegroup = null; // IdContext
- return this;
-}
-
-Create_queueContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_queueContext.prototype.constructor = Create_queueContext;
-
-Create_queueContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_queueContext.prototype.QUEUE = function() {
- return this.getToken(TSqlParser.QUEUE, 0);
-};
-
-Create_queueContext.prototype.full_table_name = function() {
- return this.getTypedRuleContext(Full_table_nameContext,0);
-};
-
-Create_queueContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Create_queueContext.prototype.queue_settings = function() {
- return this.getTypedRuleContext(Queue_settingsContext,0);
-};
-
-Create_queueContext.prototype.ON = function() {
- return this.getToken(TSqlParser.ON, 0);
-};
-
-Create_queueContext.prototype.DEFAULT = function() {
- return this.getToken(TSqlParser.DEFAULT, 0);
-};
-
-Create_queueContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_queue(this);
- }
-};
-
-Create_queueContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_queue(this);
- }
-};
-
-Create_queueContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_queue(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_queueContext = Create_queueContext;
-
-TSqlParser.prototype.create_queue = function() {
-
- var localctx = new Create_queueContext(this, this._ctx, this.state);
- this.enterRule(localctx, 412, TSqlParser.RULE_create_queue);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 5540;
- this.match(TSqlParser.CREATE);
- this.state = 5541;
- this.match(TSqlParser.QUEUE);
- this.state = 5544;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,667,this._ctx);
- switch(la_) {
- case 1:
- this.state = 5542;
- this.full_table_name();
- break;
-
- case 2:
- this.state = 5543;
- localctx.queue_name = this.id();
- break;
-
- }
- this.state = 5547;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,668,this._ctx);
- if(la_===1) {
- this.state = 5546;
- this.queue_settings();
-
- }
- this.state = 5552;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,669,this._ctx);
- if(la_===1) {
- this.state = 5549;
- this.match(TSqlParser.ON);
- this.state = 5550;
- localctx.filegroup = this.id();
-
- } else if(la_===2) {
- this.state = 5551;
- this.match(TSqlParser.DEFAULT);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Queue_settingsContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_queue_settings;
- this.max_readers = null; // Token
- this.user_name = null; // Token
- return this;
-}
-
-Queue_settingsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Queue_settingsContext.prototype.constructor = Queue_settingsContext;
-
-Queue_settingsContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Queue_settingsContext.prototype.STATUS = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.STATUS);
- } else {
- return this.getToken(TSqlParser.STATUS, i);
- }
-};
-
-
-Queue_settingsContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-Queue_settingsContext.prototype.RETENTION = function() {
- return this.getToken(TSqlParser.RETENTION, 0);
-};
-
-Queue_settingsContext.prototype.ACTIVATION = function() {
- return this.getToken(TSqlParser.ACTIVATION, 0);
-};
-
-Queue_settingsContext.prototype.LR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.LR_BRACKET);
- } else {
- return this.getToken(TSqlParser.LR_BRACKET, i);
- }
-};
-
-
-Queue_settingsContext.prototype.RR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.RR_BRACKET);
- } else {
- return this.getToken(TSqlParser.RR_BRACKET, i);
- }
-};
-
-
-Queue_settingsContext.prototype.POISON_MESSAGE_HANDLING = function() {
- return this.getToken(TSqlParser.POISON_MESSAGE_HANDLING, 0);
-};
-
-Queue_settingsContext.prototype.ON = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ON);
- } else {
- return this.getToken(TSqlParser.ON, i);
- }
-};
-
-
-Queue_settingsContext.prototype.OFF = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.OFF);
- } else {
- return this.getToken(TSqlParser.OFF, i);
- }
-};
-
-
-Queue_settingsContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Queue_settingsContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Queue_settingsContext.prototype.PROCEDURE_NAME = function() {
- return this.getToken(TSqlParser.PROCEDURE_NAME, 0);
-};
-
-Queue_settingsContext.prototype.func_proc_name_database_schema = function() {
- return this.getTypedRuleContext(Func_proc_name_database_schemaContext,0);
-};
-
-Queue_settingsContext.prototype.MAX_QUEUE_READERS = function() {
- return this.getToken(TSqlParser.MAX_QUEUE_READERS, 0);
-};
-
-Queue_settingsContext.prototype.EXECUTE = function() {
- return this.getToken(TSqlParser.EXECUTE, 0);
-};
-
-Queue_settingsContext.prototype.AS = function() {
- return this.getToken(TSqlParser.AS, 0);
-};
-
-Queue_settingsContext.prototype.DECIMAL = function() {
- return this.getToken(TSqlParser.DECIMAL, 0);
-};
-
-Queue_settingsContext.prototype.SELF = function() {
- return this.getToken(TSqlParser.SELF, 0);
-};
-
-Queue_settingsContext.prototype.OWNER = function() {
- return this.getToken(TSqlParser.OWNER, 0);
-};
-
-Queue_settingsContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Queue_settingsContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterQueue_settings(this);
- }
-};
-
-Queue_settingsContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitQueue_settings(this);
- }
-};
-
-Queue_settingsContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitQueue_settings(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Queue_settingsContext = Queue_settingsContext;
-
-TSqlParser.prototype.queue_settings = function() {
-
- var localctx = new Queue_settingsContext(this, this._ctx, this.state);
- this.enterRule(localctx, 414, TSqlParser.RULE_queue_settings);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 5554;
- this.match(TSqlParser.WITH);
- this.state = 5561;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,671,this._ctx);
- if(la_===1) {
- this.state = 5555;
- this.match(TSqlParser.STATUS);
- this.state = 5556;
- this.match(TSqlParser.EQUAL);
- this.state = 5557;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 5559;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 5558;
- this.match(TSqlParser.COMMA);
- }
-
-
- }
- this.state = 5569;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,673,this._ctx);
- if(la_===1) {
- this.state = 5563;
- this.match(TSqlParser.RETENTION);
- this.state = 5564;
- this.match(TSqlParser.EQUAL);
- this.state = 5565;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 5567;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 5566;
- this.match(TSqlParser.COMMA);
- }
-
-
- }
- this.state = 5616;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,685,this._ctx);
- if(la_===1) {
- this.state = 5571;
- this.match(TSqlParser.ACTIVATION);
- this.state = 5572;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 5610;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.EXECUTE:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.STATUS:
- case TSqlParser.RR_BRACKET:
- this.state = 5579;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.STATUS) {
- this.state = 5573;
- this.match(TSqlParser.STATUS);
- this.state = 5574;
- this.match(TSqlParser.EQUAL);
- this.state = 5575;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 5577;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 5576;
- this.match(TSqlParser.COMMA);
- }
-
- }
-
- this.state = 5587;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.PROCEDURE_NAME) {
- this.state = 5581;
- this.match(TSqlParser.PROCEDURE_NAME);
- this.state = 5582;
- this.match(TSqlParser.EQUAL);
- this.state = 5583;
- this.func_proc_name_database_schema();
- this.state = 5585;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 5584;
- this.match(TSqlParser.COMMA);
- }
-
- }
-
- this.state = 5595;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.MAX_QUEUE_READERS) {
- this.state = 5589;
- this.match(TSqlParser.MAX_QUEUE_READERS);
- this.state = 5590;
- this.match(TSqlParser.EQUAL);
- this.state = 5591;
- localctx.max_readers = this.match(TSqlParser.DECIMAL);
- this.state = 5593;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 5592;
- this.match(TSqlParser.COMMA);
- }
-
- }
-
- this.state = 5607;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.EXECUTE) {
- this.state = 5597;
- this.match(TSqlParser.EXECUTE);
- this.state = 5598;
- this.match(TSqlParser.AS);
- this.state = 5602;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.SELF:
- this.state = 5599;
- this.match(TSqlParser.SELF);
- break;
- case TSqlParser.STRING:
- this.state = 5600;
- localctx.user_name = this.match(TSqlParser.STRING);
- break;
- case TSqlParser.OWNER:
- this.state = 5601;
- this.match(TSqlParser.OWNER);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 5605;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 5604;
- this.match(TSqlParser.COMMA);
- }
-
- }
-
- break;
- case TSqlParser.DROP:
- this.state = 5609;
- this.match(TSqlParser.DROP);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 5612;
- this.match(TSqlParser.RR_BRACKET);
- this.state = 5614;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 5613;
- this.match(TSqlParser.COMMA);
- }
-
-
- }
- this.state = 5625;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,686,this._ctx);
- if(la_===1) {
- this.state = 5618;
- this.match(TSqlParser.POISON_MESSAGE_HANDLING);
- this.state = 5619;
- this.match(TSqlParser.LR_BRACKET);
-
- this.state = 5620;
- this.match(TSqlParser.STATUS);
- this.state = 5621;
- this.match(TSqlParser.EQUAL);
- this.state = 5622;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 5624;
- this.match(TSqlParser.RR_BRACKET);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_queueContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_queue;
- this.queue_name = null; // IdContext
- return this;
-}
-
-Alter_queueContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_queueContext.prototype.constructor = Alter_queueContext;
-
-Alter_queueContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Alter_queueContext.prototype.QUEUE = function() {
- return this.getToken(TSqlParser.QUEUE, 0);
-};
-
-Alter_queueContext.prototype.full_table_name = function() {
- return this.getTypedRuleContext(Full_table_nameContext,0);
-};
-
-Alter_queueContext.prototype.queue_settings = function() {
- return this.getTypedRuleContext(Queue_settingsContext,0);
-};
-
-Alter_queueContext.prototype.queue_action = function() {
- return this.getTypedRuleContext(Queue_actionContext,0);
-};
-
-Alter_queueContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Alter_queueContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_queue(this);
- }
-};
-
-Alter_queueContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_queue(this);
- }
-};
-
-Alter_queueContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_queue(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_queueContext = Alter_queueContext;
-
-TSqlParser.prototype.alter_queue = function() {
-
- var localctx = new Alter_queueContext(this, this._ctx, this.state);
- this.enterRule(localctx, 416, TSqlParser.RULE_alter_queue);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 5627;
- this.match(TSqlParser.ALTER);
- this.state = 5628;
- this.match(TSqlParser.QUEUE);
- this.state = 5631;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,687,this._ctx);
- switch(la_) {
- case 1:
- this.state = 5629;
- this.full_table_name();
- break;
-
- case 2:
- this.state = 5630;
- localctx.queue_name = this.id();
- break;
-
- }
- this.state = 5635;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.WITH:
- this.state = 5633;
- this.queue_settings();
- break;
- case TSqlParser.MOVE:
- case TSqlParser.REBUILD:
- case TSqlParser.REORGANIZE:
- this.state = 5634;
- this.queue_action();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Queue_actionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_queue_action;
- return this;
-}
-
-Queue_actionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Queue_actionContext.prototype.constructor = Queue_actionContext;
-
-Queue_actionContext.prototype.REBUILD = function() {
- return this.getToken(TSqlParser.REBUILD, 0);
-};
-
-Queue_actionContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Queue_actionContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Queue_actionContext.prototype.queue_rebuild_options = function() {
- return this.getTypedRuleContext(Queue_rebuild_optionsContext,0);
-};
-
-Queue_actionContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Queue_actionContext.prototype.REORGANIZE = function() {
- return this.getToken(TSqlParser.REORGANIZE, 0);
-};
-
-Queue_actionContext.prototype.LOB_COMPACTION = function() {
- return this.getToken(TSqlParser.LOB_COMPACTION, 0);
-};
-
-Queue_actionContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Queue_actionContext.prototype.ON = function() {
- return this.getToken(TSqlParser.ON, 0);
-};
-
-Queue_actionContext.prototype.OFF = function() {
- return this.getToken(TSqlParser.OFF, 0);
-};
-
-Queue_actionContext.prototype.MOVE = function() {
- return this.getToken(TSqlParser.MOVE, 0);
-};
-
-Queue_actionContext.prototype.TO = function() {
- return this.getToken(TSqlParser.TO, 0);
-};
-
-Queue_actionContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Queue_actionContext.prototype.DEFAULT = function() {
- return this.getToken(TSqlParser.DEFAULT, 0);
-};
-
-Queue_actionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterQueue_action(this);
- }
-};
-
-Queue_actionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitQueue_action(this);
- }
-};
-
-Queue_actionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitQueue_action(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Queue_actionContext = Queue_actionContext;
-
-TSqlParser.prototype.queue_action = function() {
-
- var localctx = new Queue_actionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 418, TSqlParser.RULE_queue_action);
- var _la = 0; // Token type
- try {
- this.state = 5658;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.REBUILD:
- this.enterOuterAlt(localctx, 1);
- this.state = 5637;
- this.match(TSqlParser.REBUILD);
- this.state = 5643;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,689,this._ctx);
- if(la_===1) {
- this.state = 5638;
- this.match(TSqlParser.WITH);
- this.state = 5639;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 5640;
- this.queue_rebuild_options();
- this.state = 5641;
- this.match(TSqlParser.RR_BRACKET);
-
- }
- break;
- case TSqlParser.REORGANIZE:
- this.enterOuterAlt(localctx, 2);
- this.state = 5645;
- this.match(TSqlParser.REORGANIZE);
- this.state = 5650;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,690,this._ctx);
- if(la_===1) {
- this.state = 5646;
- this.match(TSqlParser.WITH);
- this.state = 5647;
- this.match(TSqlParser.LOB_COMPACTION);
- this.state = 5648;
- this.match(TSqlParser.EQUAL);
- this.state = 5649;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
-
- }
- break;
- case TSqlParser.MOVE:
- this.enterOuterAlt(localctx, 3);
- this.state = 5652;
- this.match(TSqlParser.MOVE);
- this.state = 5653;
- this.match(TSqlParser.TO);
- this.state = 5656;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.state = 5654;
- this.id();
- break;
- case TSqlParser.DEFAULT:
- this.state = 5655;
- this.match(TSqlParser.DEFAULT);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Queue_rebuild_optionsContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_queue_rebuild_options;
- return this;
-}
-
-Queue_rebuild_optionsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Queue_rebuild_optionsContext.prototype.constructor = Queue_rebuild_optionsContext;
-
-Queue_rebuild_optionsContext.prototype.MAXDOP = function() {
- return this.getToken(TSqlParser.MAXDOP, 0);
-};
-
-Queue_rebuild_optionsContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Queue_rebuild_optionsContext.prototype.DECIMAL = function() {
- return this.getToken(TSqlParser.DECIMAL, 0);
-};
-
-Queue_rebuild_optionsContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterQueue_rebuild_options(this);
- }
-};
-
-Queue_rebuild_optionsContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitQueue_rebuild_options(this);
- }
-};
-
-Queue_rebuild_optionsContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitQueue_rebuild_options(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Queue_rebuild_optionsContext = Queue_rebuild_optionsContext;
-
-TSqlParser.prototype.queue_rebuild_options = function() {
-
- var localctx = new Queue_rebuild_optionsContext(this, this._ctx, this.state);
- this.enterRule(localctx, 420, TSqlParser.RULE_queue_rebuild_options);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 5660;
- this.match(TSqlParser.MAXDOP);
- this.state = 5661;
- this.match(TSqlParser.EQUAL);
- this.state = 5662;
- this.match(TSqlParser.DECIMAL);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_contractContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_contract;
- this.owner_name = null; // IdContext
- this.message_type_name = null; // IdContext
- return this;
-}
-
-Create_contractContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_contractContext.prototype.constructor = Create_contractContext;
-
-Create_contractContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_contractContext.prototype.CONTRACT = function() {
- return this.getToken(TSqlParser.CONTRACT, 0);
-};
-
-Create_contractContext.prototype.contract_name = function() {
- return this.getTypedRuleContext(Contract_nameContext,0);
-};
-
-Create_contractContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Create_contractContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Create_contractContext.prototype.AUTHORIZATION = function() {
- return this.getToken(TSqlParser.AUTHORIZATION, 0);
-};
-
-Create_contractContext.prototype.SENT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.SENT);
- } else {
- return this.getToken(TSqlParser.SENT, i);
- }
-};
-
-
-Create_contractContext.prototype.BY = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.BY);
- } else {
- return this.getToken(TSqlParser.BY, i);
- }
-};
-
-
-Create_contractContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Create_contractContext.prototype.INITIATOR = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.INITIATOR);
- } else {
- return this.getToken(TSqlParser.INITIATOR, i);
- }
-};
-
-
-Create_contractContext.prototype.TARGET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.TARGET);
- } else {
- return this.getToken(TSqlParser.TARGET, i);
- }
-};
-
-
-Create_contractContext.prototype.ANY = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ANY);
- } else {
- return this.getToken(TSqlParser.ANY, i);
- }
-};
-
-
-Create_contractContext.prototype.DEFAULT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DEFAULT);
- } else {
- return this.getToken(TSqlParser.DEFAULT, i);
- }
-};
-
-
-Create_contractContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Create_contractContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_contract(this);
- }
-};
-
-Create_contractContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_contract(this);
- }
-};
-
-Create_contractContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_contract(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_contractContext = Create_contractContext;
-
-TSqlParser.prototype.create_contract = function() {
-
- var localctx = new Create_contractContext(this, this._ctx, this.state);
- this.enterRule(localctx, 422, TSqlParser.RULE_create_contract);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 5664;
- this.match(TSqlParser.CREATE);
- this.state = 5665;
- this.match(TSqlParser.CONTRACT);
- this.state = 5666;
- this.contract_name();
- this.state = 5669;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.AUTHORIZATION) {
- this.state = 5667;
- this.match(TSqlParser.AUTHORIZATION);
- this.state = 5668;
- localctx.owner_name = this.id();
- }
-
- this.state = 5671;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 5682;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- do {
- this.state = 5674;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.state = 5672;
- localctx.message_type_name = this.id();
- break;
- case TSqlParser.DEFAULT:
- this.state = 5673;
- this.match(TSqlParser.DEFAULT);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 5676;
- this.match(TSqlParser.SENT);
- this.state = 5677;
- this.match(TSqlParser.BY);
- this.state = 5678;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.ANY || _la===TSqlParser.TARGET || _la===TSqlParser.INITIATOR)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 5680;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 5679;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 5684;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- } while(_la===TSqlParser.CALLED || _la===TSqlParser.DATA_COMPRESSION || _la===TSqlParser.DEFAULT || ((((_la - 112)) & ~0x1f) == 0 && ((1 << (_la - 112)) & ((1 << (TSqlParser.EVENTDATA - 112)) | (1 << (TSqlParser.FILENAME - 112)) | (1 << (TSqlParser.FILLFACTOR - 112)) | (1 << (TSqlParser.FORCESEEK - 112)))) !== 0) || ((((_la - 158)) & ~0x1f) == 0 && ((1 << (_la - 158)) & ((1 << (TSqlParser.INIT - 158)) | (1 << (TSqlParser.KEY - 158)) | (1 << (TSqlParser.MASTER - 158)) | (1 << (TSqlParser.MAX_MEMORY - 158)))) !== 0) || _la===TSqlParser.OFFSETS || _la===TSqlParser.PAGE || ((((_la - 259)) & ~0x1f) == 0 && ((1 << (_la - 259)) & ((1 << (TSqlParser.PUBLIC - 259)) | (1 << (TSqlParser.R - 259)) | (1 << (TSqlParser.RAW - 259)) | (1 << (TSqlParser.RETURN - 259)) | (1 << (TSqlParser.RETURNS - 259)) | (1 << (TSqlParser.ROWCOUNT - 259)))) !== 0) || ((((_la - 295)) & ~0x1f) == 0 && ((1 << (_la - 295)) & ((1 << (TSqlParser.SAFETY - 295)) | (1 << (TSqlParser.SERVER - 295)) | (1 << (TSqlParser.SID - 295)) | (1 << (TSqlParser.SOURCE - 295)) | (1 << (TSqlParser.SPLIT - 295)))) !== 0) || ((((_la - 327)) & ~0x1f) == 0 && ((1 << (_la - 327)) & ((1 << (TSqlParser.STATE - 327)) | (1 << (TSqlParser.START - 327)) | (1 << (TSqlParser.TARGET - 327)))) !== 0) || ((((_la - 380)) & ~0x1f) == 0 && ((1 << (_la - 380)) & ((1 << (TSqlParser.ABSOLUTE - 380)) | (1 << (TSqlParser.ACCENT_SENSITIVITY - 380)) | (1 << (TSqlParser.ACTION - 380)) | (1 << (TSqlParser.ACTIVATION - 380)) | (1 << (TSqlParser.ACTIVE - 380)) | (1 << (TSqlParser.ADDRESS - 380)) | (1 << (TSqlParser.AES_128 - 380)) | (1 << (TSqlParser.AES_192 - 380)) | (1 << (TSqlParser.AES_256 - 380)) | (1 << (TSqlParser.AFFINITY - 380)) | (1 << (TSqlParser.AFTER - 380)) | (1 << (TSqlParser.AGGREGATE - 380)) | (1 << (TSqlParser.ALGORITHM - 380)) | (1 << (TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS - 380)) | (1 << (TSqlParser.ALLOW_SNAPSHOT_ISOLATION - 380)) | (1 << (TSqlParser.ALLOWED - 380)) | (1 << (TSqlParser.ANSI_NULL_DEFAULT - 380)) | (1 << (TSqlParser.ANSI_NULLS - 380)) | (1 << (TSqlParser.ANSI_PADDING - 380)) | (1 << (TSqlParser.ANSI_WARNINGS - 380)) | (1 << (TSqlParser.APPLICATION_LOG - 380)) | (1 << (TSqlParser.APPLY - 380)) | (1 << (TSqlParser.ARITHABORT - 380)) | (1 << (TSqlParser.ASSEMBLY - 380)) | (1 << (TSqlParser.AUDIT - 380)) | (1 << (TSqlParser.AUDIT_GUID - 380)) | (1 << (TSqlParser.AUTO - 380)) | (1 << (TSqlParser.AUTO_CLEANUP - 380)) | (1 << (TSqlParser.AUTO_CLOSE - 380)) | (1 << (TSqlParser.AUTO_CREATE_STATISTICS - 380)) | (1 << (TSqlParser.AUTO_SHRINK - 380)) | (1 << (TSqlParser.AUTO_UPDATE_STATISTICS - 380)))) !== 0) || ((((_la - 412)) & ~0x1f) == 0 && ((1 << (_la - 412)) & ((1 << (TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC - 412)) | (1 << (TSqlParser.AVAILABILITY - 412)) | (1 << (TSqlParser.AVG - 412)) | (1 << (TSqlParser.BACKUP_PRIORITY - 412)) | (1 << (TSqlParser.BEGIN_DIALOG - 412)) | (1 << (TSqlParser.BIGINT - 412)) | (1 << (TSqlParser.BINARY_BASE64 - 412)) | (1 << (TSqlParser.BINARY_CHECKSUM - 412)) | (1 << (TSqlParser.BINDING - 412)) | (1 << (TSqlParser.BLOB_STORAGE - 412)) | (1 << (TSqlParser.BROKER - 412)) | (1 << (TSqlParser.BROKER_INSTANCE - 412)) | (1 << (TSqlParser.BULK_LOGGED - 412)) | (1 << (TSqlParser.CALLER - 412)) | (1 << (TSqlParser.CAP_CPU_PERCENT - 412)) | (1 << (TSqlParser.CAST - 412)) | (1 << (TSqlParser.CATALOG - 412)) | (1 << (TSqlParser.CATCH - 412)) | (1 << (TSqlParser.CHANGE_RETENTION - 412)) | (1 << (TSqlParser.CHANGE_TRACKING - 412)) | (1 << (TSqlParser.CHECKSUM - 412)) | (1 << (TSqlParser.CHECKSUM_AGG - 412)) | (1 << (TSqlParser.CLEANUP - 412)) | (1 << (TSqlParser.COLLECTION - 412)) | (1 << (TSqlParser.COLUMN_MASTER_KEY - 412)) | (1 << (TSqlParser.COMMITTED - 412)) | (1 << (TSqlParser.COMPATIBILITY_LEVEL - 412)) | (1 << (TSqlParser.CONCAT - 412)) | (1 << (TSqlParser.CONCAT_NULL_YIELDS_NULL - 412)) | (1 << (TSqlParser.CONTENT - 412)) | (1 << (TSqlParser.CONTROL - 412)) | (1 << (TSqlParser.COOKIE - 412)))) !== 0) || ((((_la - 444)) & ~0x1f) == 0 && ((1 << (_la - 444)) & ((1 << (TSqlParser.COUNT - 444)) | (1 << (TSqlParser.COUNT_BIG - 444)) | (1 << (TSqlParser.COUNTER - 444)) | (1 << (TSqlParser.CPU - 444)) | (1 << (TSqlParser.CREATE_NEW - 444)) | (1 << (TSqlParser.CREATION_DISPOSITION - 444)) | (1 << (TSqlParser.CREDENTIAL - 444)) | (1 << (TSqlParser.CRYPTOGRAPHIC - 444)) | (1 << (TSqlParser.CURSOR_CLOSE_ON_COMMIT - 444)) | (1 << (TSqlParser.CURSOR_DEFAULT - 444)) | (1 << (TSqlParser.DATA - 444)) | (1 << (TSqlParser.DATE_CORRELATION_OPTIMIZATION - 444)) | (1 << (TSqlParser.DATEADD - 444)) | (1 << (TSqlParser.DATEDIFF - 444)) | (1 << (TSqlParser.DATENAME - 444)) | (1 << (TSqlParser.DATEPART - 444)) | (1 << (TSqlParser.DAYS - 444)) | (1 << (TSqlParser.DB_CHAINING - 444)) | (1 << (TSqlParser.DB_FAILOVER - 444)) | (1 << (TSqlParser.DECRYPTION - 444)) | (1 << (TSqlParser.DEFAULT_DOUBLE_QUOTE - 444)) | (1 << (TSqlParser.DEFAULT_FULLTEXT_LANGUAGE - 444)) | (1 << (TSqlParser.DEFAULT_LANGUAGE - 444)) | (1 << (TSqlParser.DELAY - 444)) | (1 << (TSqlParser.DELAYED_DURABILITY - 444)) | (1 << (TSqlParser.DELETED - 444)) | (1 << (TSqlParser.DENSE_RANK - 444)) | (1 << (TSqlParser.DEPENDENTS - 444)) | (1 << (TSqlParser.DES - 444)) | (1 << (TSqlParser.DESCRIPTION - 444)) | (1 << (TSqlParser.DESX - 444)) | (1 << (TSqlParser.DHCP - 444)))) !== 0) || ((((_la - 476)) & ~0x1f) == 0 && ((1 << (_la - 476)) & ((1 << (TSqlParser.DIALOG - 476)) | (1 << (TSqlParser.DIRECTORY_NAME - 476)) | (1 << (TSqlParser.DISABLE - 476)) | (1 << (TSqlParser.DISABLE_BROKER - 476)) | (1 << (TSqlParser.DISABLED - 476)) | (1 << (TSqlParser.DISK_DRIVE - 476)) | (1 << (TSqlParser.DOCUMENT - 476)) | (1 << (TSqlParser.DYNAMIC - 476)) | (1 << (TSqlParser.EMERGENCY - 476)) | (1 << (TSqlParser.EMPTY - 476)) | (1 << (TSqlParser.ENABLE - 476)) | (1 << (TSqlParser.ENABLE_BROKER - 476)) | (1 << (TSqlParser.ENCRYPTED_VALUE - 476)) | (1 << (TSqlParser.ENCRYPTION - 476)) | (1 << (TSqlParser.ENDPOINT_URL - 476)) | (1 << (TSqlParser.ERROR_BROKER_CONVERSATIONS - 476)) | (1 << (TSqlParser.EXCLUSIVE - 476)) | (1 << (TSqlParser.EXECUTABLE - 476)) | (1 << (TSqlParser.EXIST - 476)) | (1 << (TSqlParser.EXPAND - 476)) | (1 << (TSqlParser.EXPIRY_DATE - 476)) | (1 << (TSqlParser.EXPLICIT - 476)) | (1 << (TSqlParser.FAIL_OPERATION - 476)) | (1 << (TSqlParser.FAILOVER_MODE - 476)) | (1 << (TSqlParser.FAILURE - 476)) | (1 << (TSqlParser.FAILURE_CONDITION_LEVEL - 476)) | (1 << (TSqlParser.FAST - 476)) | (1 << (TSqlParser.FAST_FORWARD - 476)) | (1 << (TSqlParser.FILEGROUP - 476)) | (1 << (TSqlParser.FILEGROWTH - 476)) | (1 << (TSqlParser.FILEPATH - 476)))) !== 0) || ((((_la - 508)) & ~0x1f) == 0 && ((1 << (_la - 508)) & ((1 << (TSqlParser.FILESTREAM - 508)) | (1 << (TSqlParser.FILTER - 508)) | (1 << (TSqlParser.FIRST - 508)) | (1 << (TSqlParser.FIRST_VALUE - 508)) | (1 << (TSqlParser.FOLLOWING - 508)) | (1 << (TSqlParser.FORCE - 508)) | (1 << (TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS - 508)) | (1 << (TSqlParser.FORCED - 508)) | (1 << (TSqlParser.FORMAT - 508)) | (1 << (TSqlParser.FORWARD_ONLY - 508)) | (1 << (TSqlParser.FULLSCAN - 508)) | (1 << (TSqlParser.FULLTEXT - 508)) | (1 << (TSqlParser.GB - 508)) | (1 << (TSqlParser.GETDATE - 508)) | (1 << (TSqlParser.GETUTCDATE - 508)) | (1 << (TSqlParser.GLOBAL - 508)) | (1 << (TSqlParser.GO - 508)) | (1 << (TSqlParser.GROUP_MAX_REQUESTS - 508)) | (1 << (TSqlParser.GROUPING - 508)) | (1 << (TSqlParser.GROUPING_ID - 508)) | (1 << (TSqlParser.HADR - 508)) | (1 << (TSqlParser.HASH - 508)) | (1 << (TSqlParser.HEALTH_CHECK_TIMEOUT - 508)) | (1 << (TSqlParser.HIGH - 508)) | (1 << (TSqlParser.HONOR_BROKER_PRIORITY - 508)) | (1 << (TSqlParser.HOURS - 508)) | (1 << (TSqlParser.IDENTITY_VALUE - 508)) | (1 << (TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX - 508)) | (1 << (TSqlParser.IMMEDIATE - 508)) | (1 << (TSqlParser.IMPERSONATE - 508)) | (1 << (TSqlParser.IMPORTANCE - 508)))) !== 0) || ((((_la - 540)) & ~0x1f) == 0 && ((1 << (_la - 540)) & ((1 << (TSqlParser.INCREMENTAL - 540)) | (1 << (TSqlParser.INITIATOR - 540)) | (1 << (TSqlParser.INPUT - 540)) | (1 << (TSqlParser.INSENSITIVE - 540)) | (1 << (TSqlParser.INSERTED - 540)) | (1 << (TSqlParser.INT - 540)) | (1 << (TSqlParser.IP - 540)) | (1 << (TSqlParser.ISOLATION - 540)) | (1 << (TSqlParser.KB - 540)) | (1 << (TSqlParser.KEEP - 540)) | (1 << (TSqlParser.KEEPFIXED - 540)) | (1 << (TSqlParser.KEY_SOURCE - 540)) | (1 << (TSqlParser.KEYS - 540)) | (1 << (TSqlParser.KEYSET - 540)) | (1 << (TSqlParser.LAG - 540)) | (1 << (TSqlParser.LAST - 540)) | (1 << (TSqlParser.LAST_VALUE - 540)) | (1 << (TSqlParser.LEAD - 540)) | (1 << (TSqlParser.LEVEL - 540)) | (1 << (TSqlParser.LIST - 540)) | (1 << (TSqlParser.LISTENER - 540)) | (1 << (TSqlParser.LISTENER_URL - 540)) | (1 << (TSqlParser.LOB_COMPACTION - 540)) | (1 << (TSqlParser.LOCAL - 540)) | (1 << (TSqlParser.LOCATION - 540)) | (1 << (TSqlParser.LOCK - 540)) | (1 << (TSqlParser.LOCK_ESCALATION - 540)) | (1 << (TSqlParser.LOGIN - 540)) | (1 << (TSqlParser.LOOP - 540)) | (1 << (TSqlParser.LOW - 540)))) !== 0) || ((((_la - 572)) & ~0x1f) == 0 && ((1 << (_la - 572)) & ((1 << (TSqlParser.MANUAL - 572)) | (1 << (TSqlParser.MARK - 572)) | (1 << (TSqlParser.MATERIALIZED - 572)) | (1 << (TSqlParser.MAX - 572)) | (1 << (TSqlParser.MAX_CPU_PERCENT - 572)) | (1 << (TSqlParser.MAX_DOP - 572)) | (1 << (TSqlParser.MAX_FILES - 572)) | (1 << (TSqlParser.MAX_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MAX_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MAX_PROCESSES - 572)) | (1 << (TSqlParser.MAX_QUEUE_READERS - 572)) | (1 << (TSqlParser.MAX_ROLLOVER_FILES - 572)) | (1 << (TSqlParser.MAXDOP - 572)) | (1 << (TSqlParser.MAXRECURSION - 572)) | (1 << (TSqlParser.MAXSIZE - 572)) | (1 << (TSqlParser.MB - 572)) | (1 << (TSqlParser.MEDIUM - 572)) | (1 << (TSqlParser.MEMORY_OPTIMIZED_DATA - 572)) | (1 << (TSqlParser.MESSAGE - 572)) | (1 << (TSqlParser.MIN - 572)) | (1 << (TSqlParser.MIN_ACTIVE_ROWVERSION - 572)) | (1 << (TSqlParser.MIN_CPU_PERCENT - 572)) | (1 << (TSqlParser.MIN_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MIN_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MINUTES - 572)) | (1 << (TSqlParser.MIRROR_ADDRESS - 572)) | (1 << (TSqlParser.MIXED_PAGE_ALLOCATION - 572)) | (1 << (TSqlParser.MODE - 572)) | (1 << (TSqlParser.MODIFY - 572)) | (1 << (TSqlParser.MOVE - 572)) | (1 << (TSqlParser.MULTI_USER - 572)) | (1 << (TSqlParser.NAME - 572)))) !== 0) || ((((_la - 604)) & ~0x1f) == 0 && ((1 << (_la - 604)) & ((1 << (TSqlParser.NESTED_TRIGGERS - 604)) | (1 << (TSqlParser.NEW_ACCOUNT - 604)) | (1 << (TSqlParser.NEW_BROKER - 604)) | (1 << (TSqlParser.NEW_PASSWORD - 604)) | (1 << (TSqlParser.NEXT - 604)) | (1 << (TSqlParser.NO - 604)) | (1 << (TSqlParser.NO_TRUNCATE - 604)) | (1 << (TSqlParser.NO_WAIT - 604)) | (1 << (TSqlParser.NOCOUNT - 604)) | (1 << (TSqlParser.NODES - 604)) | (1 << (TSqlParser.NOEXPAND - 604)) | (1 << (TSqlParser.NON_TRANSACTED_ACCESS - 604)) | (1 << (TSqlParser.NORECOMPUTE - 604)) | (1 << (TSqlParser.NORECOVERY - 604)) | (1 << (TSqlParser.NOWAIT - 604)) | (1 << (TSqlParser.NTILE - 604)) | (1 << (TSqlParser.NUMANODE - 604)) | (1 << (TSqlParser.NUMBER - 604)) | (1 << (TSqlParser.NUMERIC_ROUNDABORT - 604)) | (1 << (TSqlParser.OBJECT - 604)) | (1 << (TSqlParser.OFFLINE - 604)) | (1 << (TSqlParser.OFFSET - 604)) | (1 << (TSqlParser.OLD_ACCOUNT - 604)) | (1 << (TSqlParser.ONLINE - 604)) | (1 << (TSqlParser.ONLY - 604)) | (1 << (TSqlParser.OPEN_EXISTING - 604)) | (1 << (TSqlParser.OPTIMISTIC - 604)) | (1 << (TSqlParser.OPTIMIZE - 604)) | (1 << (TSqlParser.OUT - 604)) | (1 << (TSqlParser.OUTPUT - 604)) | (1 << (TSqlParser.OWNER - 604)))) !== 0) || ((((_la - 636)) & ~0x1f) == 0 && ((1 << (_la - 636)) & ((1 << (TSqlParser.PAGE_VERIFY - 636)) | (1 << (TSqlParser.PARAMETERIZATION - 636)) | (1 << (TSqlParser.PARTITION - 636)) | (1 << (TSqlParser.PARTITIONS - 636)) | (1 << (TSqlParser.PARTNER - 636)) | (1 << (TSqlParser.PATH - 636)) | (1 << (TSqlParser.POISON_MESSAGE_HANDLING - 636)) | (1 << (TSqlParser.POOL - 636)) | (1 << (TSqlParser.PORT - 636)) | (1 << (TSqlParser.PRECEDING - 636)) | (1 << (TSqlParser.PRIMARY_ROLE - 636)) | (1 << (TSqlParser.PRIOR - 636)) | (1 << (TSqlParser.PRIORITY - 636)) | (1 << (TSqlParser.PRIORITY_LEVEL - 636)) | (1 << (TSqlParser.PRIVATE - 636)) | (1 << (TSqlParser.PRIVATE_KEY - 636)) | (1 << (TSqlParser.PRIVILEGES - 636)) | (1 << (TSqlParser.PROCEDURE_NAME - 636)) | (1 << (TSqlParser.PROPERTY - 636)) | (1 << (TSqlParser.PROVIDER - 636)) | (1 << (TSqlParser.PROVIDER_KEY_NAME - 636)) | (1 << (TSqlParser.QUERY - 636)) | (1 << (TSqlParser.QUEUE - 636)) | (1 << (TSqlParser.QUEUE_DELAY - 636)) | (1 << (TSqlParser.QUOTED_IDENTIFIER - 636)) | (1 << (TSqlParser.RANGE - 636)) | (1 << (TSqlParser.RANK - 636)) | (1 << (TSqlParser.RC2 - 636)) | (1 << (TSqlParser.RC4 - 636)) | (1 << (TSqlParser.RC4_128 - 636)) | (1 << (TSqlParser.READ_COMMITTED_SNAPSHOT - 636)) | (1 << (TSqlParser.READ_ONLY - 636)))) !== 0) || ((((_la - 668)) & ~0x1f) == 0 && ((1 << (_la - 668)) & ((1 << (TSqlParser.READ_ONLY_ROUTING_LIST - 668)) | (1 << (TSqlParser.READ_WRITE - 668)) | (1 << (TSqlParser.READONLY - 668)) | (1 << (TSqlParser.REBUILD - 668)) | (1 << (TSqlParser.RECEIVE - 668)) | (1 << (TSqlParser.RECOMPILE - 668)) | (1 << (TSqlParser.RECOVERY - 668)) | (1 << (TSqlParser.RECURSIVE_TRIGGERS - 668)) | (1 << (TSqlParser.RELATIVE - 668)) | (1 << (TSqlParser.REMOTE - 668)) | (1 << (TSqlParser.REMOTE_SERVICE_NAME - 668)) | (1 << (TSqlParser.REMOVE - 668)) | (1 << (TSqlParser.REORGANIZE - 668)) | (1 << (TSqlParser.REPEATABLE - 668)) | (1 << (TSqlParser.REPLICA - 668)) | (1 << (TSqlParser.REQUEST_MAX_CPU_TIME_SEC - 668)) | (1 << (TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT - 668)) | (1 << (TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC - 668)) | (1 << (TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT - 668)) | (1 << (TSqlParser.RESERVE_DISK_SPACE - 668)) | (1 << (TSqlParser.RESOURCE - 668)) | (1 << (TSqlParser.RESOURCE_MANAGER_LOCATION - 668)) | (1 << (TSqlParser.RESTRICTED_USER - 668)) | (1 << (TSqlParser.RETENTION - 668)) | (1 << (TSqlParser.ROBUST - 668)) | (1 << (TSqlParser.ROOT - 668)) | (1 << (TSqlParser.ROUTE - 668)) | (1 << (TSqlParser.ROW - 668)) | (1 << (TSqlParser.ROW_NUMBER - 668)) | (1 << (TSqlParser.ROWGUID - 668)) | (1 << (TSqlParser.ROWS - 668)) | (1 << (TSqlParser.SAMPLE - 668)))) !== 0) || ((((_la - 700)) & ~0x1f) == 0 && ((1 << (_la - 700)) & ((1 << (TSqlParser.SCHEMABINDING - 700)) | (1 << (TSqlParser.SCOPED - 700)) | (1 << (TSqlParser.SCROLL - 700)) | (1 << (TSqlParser.SCROLL_LOCKS - 700)) | (1 << (TSqlParser.SEARCH - 700)) | (1 << (TSqlParser.SECONDARY - 700)) | (1 << (TSqlParser.SECONDARY_ONLY - 700)) | (1 << (TSqlParser.SECONDARY_ROLE - 700)) | (1 << (TSqlParser.SECONDS - 700)) | (1 << (TSqlParser.SECRET - 700)) | (1 << (TSqlParser.SECURITY - 700)) | (1 << (TSqlParser.SECURITY_LOG - 700)) | (1 << (TSqlParser.SEEDING_MODE - 700)) | (1 << (TSqlParser.SELF - 700)) | (1 << (TSqlParser.SEMI_SENSITIVE - 700)) | (1 << (TSqlParser.SEND - 700)) | (1 << (TSqlParser.SENT - 700)) | (1 << (TSqlParser.SEQUENCE - 700)) | (1 << (TSqlParser.SERIALIZABLE - 700)) | (1 << (TSqlParser.SESSION_TIMEOUT - 700)) | (1 << (TSqlParser.SETERROR - 700)) | (1 << (TSqlParser.SHARE - 700)) | (1 << (TSqlParser.SHOWPLAN - 700)) | (1 << (TSqlParser.SIGNATURE - 700)) | (1 << (TSqlParser.SIMPLE - 700)) | (1 << (TSqlParser.SINGLE_USER - 700)) | (1 << (TSqlParser.SIZE - 700)) | (1 << (TSqlParser.SMALLINT - 700)) | (1 << (TSqlParser.SNAPSHOT - 700)) | (1 << (TSqlParser.SPATIAL_WINDOW_MAX_CELLS - 700)) | (1 << (TSqlParser.STANDBY - 700)) | (1 << (TSqlParser.START_DATE - 700)))) !== 0) || ((((_la - 732)) & ~0x1f) == 0 && ((1 << (_la - 732)) & ((1 << (TSqlParser.STATIC - 732)) | (1 << (TSqlParser.STATS_STREAM - 732)) | (1 << (TSqlParser.STATUS - 732)) | (1 << (TSqlParser.STDEV - 732)) | (1 << (TSqlParser.STDEVP - 732)) | (1 << (TSqlParser.STOPLIST - 732)) | (1 << (TSqlParser.STRING_AGG - 732)) | (1 << (TSqlParser.STUFF - 732)) | (1 << (TSqlParser.SUBJECT - 732)) | (1 << (TSqlParser.SUM - 732)) | (1 << (TSqlParser.SUSPEND - 732)) | (1 << (TSqlParser.SYMMETRIC - 732)) | (1 << (TSqlParser.SYNCHRONOUS_COMMIT - 732)) | (1 << (TSqlParser.SYNONYM - 732)) | (1 << (TSqlParser.SYSTEM - 732)) | (1 << (TSqlParser.TAKE - 732)) | (1 << (TSqlParser.TARGET_RECOVERY_TIME - 732)) | (1 << (TSqlParser.TB - 732)) | (1 << (TSqlParser.TEXTIMAGE_ON - 732)) | (1 << (TSqlParser.THROW - 732)) | (1 << (TSqlParser.TIES - 732)) | (1 << (TSqlParser.TIME - 732)) | (1 << (TSqlParser.TIMEOUT - 732)) | (1 << (TSqlParser.TIMER - 732)) | (1 << (TSqlParser.TINYINT - 732)) | (1 << (TSqlParser.TORN_PAGE_DETECTION - 732)) | (1 << (TSqlParser.TRANSFORM_NOISE_WORDS - 732)) | (1 << (TSqlParser.TRIPLE_DES - 732)) | (1 << (TSqlParser.TRIPLE_DES_3KEY - 732)) | (1 << (TSqlParser.TRUSTWORTHY - 732)))) !== 0) || ((((_la - 764)) & ~0x1f) == 0 && ((1 << (_la - 764)) & ((1 << (TSqlParser.TRY - 764)) | (1 << (TSqlParser.TSQL - 764)) | (1 << (TSqlParser.TWO_DIGIT_YEAR_CUTOFF - 764)) | (1 << (TSqlParser.TYPE - 764)) | (1 << (TSqlParser.TYPE_WARNING - 764)) | (1 << (TSqlParser.UNBOUNDED - 764)) | (1 << (TSqlParser.UNCOMMITTED - 764)) | (1 << (TSqlParser.UNKNOWN - 764)) | (1 << (TSqlParser.UNLIMITED - 764)) | (1 << (TSqlParser.USING - 764)) | (1 << (TSqlParser.VALID_XML - 764)) | (1 << (TSqlParser.VALIDATION - 764)) | (1 << (TSqlParser.VALUE - 764)) | (1 << (TSqlParser.VAR - 764)) | (1 << (TSqlParser.VARP - 764)) | (1 << (TSqlParser.VIEW_METADATA - 764)) | (1 << (TSqlParser.VIEWS - 764)) | (1 << (TSqlParser.WAIT - 764)) | (1 << (TSqlParser.WELL_FORMED_XML - 764)) | (1 << (TSqlParser.WORK - 764)) | (1 << (TSqlParser.WORKLOAD - 764)) | (1 << (TSqlParser.XML - 764)) | (1 << (TSqlParser.XMLNAMESPACES - 764)))) !== 0) || ((((_la - 796)) & ~0x1f) == 0 && ((1 << (_la - 796)) & ((1 << (TSqlParser.DOUBLE_QUOTE_ID - 796)) | (1 << (TSqlParser.SQUARE_BRACKET_ID - 796)) | (1 << (TSqlParser.ID - 796)))) !== 0));
- this.state = 5686;
- this.match(TSqlParser.RR_BRACKET);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Conversation_statementContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_conversation_statement;
- return this;
-}
-
-Conversation_statementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Conversation_statementContext.prototype.constructor = Conversation_statementContext;
-
-Conversation_statementContext.prototype.begin_conversation_timer = function() {
- return this.getTypedRuleContext(Begin_conversation_timerContext,0);
-};
-
-Conversation_statementContext.prototype.begin_conversation_dialog = function() {
- return this.getTypedRuleContext(Begin_conversation_dialogContext,0);
-};
-
-Conversation_statementContext.prototype.end_conversation = function() {
- return this.getTypedRuleContext(End_conversationContext,0);
-};
-
-Conversation_statementContext.prototype.get_conversation = function() {
- return this.getTypedRuleContext(Get_conversationContext,0);
-};
-
-Conversation_statementContext.prototype.send_conversation = function() {
- return this.getTypedRuleContext(Send_conversationContext,0);
-};
-
-Conversation_statementContext.prototype.waitfor_conversation = function() {
- return this.getTypedRuleContext(Waitfor_conversationContext,0);
-};
-
-Conversation_statementContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterConversation_statement(this);
- }
-};
-
-Conversation_statementContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitConversation_statement(this);
- }
-};
-
-Conversation_statementContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitConversation_statement(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Conversation_statementContext = Conversation_statementContext;
-
-TSqlParser.prototype.conversation_statement = function() {
-
- var localctx = new Conversation_statementContext(this, this._ctx, this.state);
- this.enterRule(localctx, 424, TSqlParser.RULE_conversation_statement);
- try {
- this.state = 5694;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,697,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 5688;
- this.begin_conversation_timer();
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 5689;
- this.begin_conversation_dialog();
- break;
-
- case 3:
- this.enterOuterAlt(localctx, 3);
- this.state = 5690;
- this.end_conversation();
- break;
-
- case 4:
- this.enterOuterAlt(localctx, 4);
- this.state = 5691;
- this.get_conversation();
- break;
-
- case 5:
- this.enterOuterAlt(localctx, 5);
- this.state = 5692;
- this.send_conversation();
- break;
-
- case 6:
- this.enterOuterAlt(localctx, 6);
- this.state = 5693;
- this.waitfor_conversation();
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Message_statementContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_message_statement;
- this.message_type_name = null; // IdContext
- this.owner_name = null; // IdContext
- this.schema_collection_name = null; // IdContext
- return this;
-}
-
-Message_statementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Message_statementContext.prototype.constructor = Message_statementContext;
-
-Message_statementContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Message_statementContext.prototype.MESSAGE = function() {
- return this.getToken(TSqlParser.MESSAGE, 0);
-};
-
-Message_statementContext.prototype.TYPE = function() {
- return this.getToken(TSqlParser.TYPE, 0);
-};
-
-Message_statementContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Message_statementContext.prototype.VALIDATION = function() {
- return this.getToken(TSqlParser.VALIDATION, 0);
-};
-
-Message_statementContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Message_statementContext.prototype.AUTHORIZATION = function() {
- return this.getToken(TSqlParser.AUTHORIZATION, 0);
-};
-
-Message_statementContext.prototype.NONE = function() {
- return this.getToken(TSqlParser.NONE, 0);
-};
-
-Message_statementContext.prototype.EMPTY = function() {
- return this.getToken(TSqlParser.EMPTY, 0);
-};
-
-Message_statementContext.prototype.WELL_FORMED_XML = function() {
- return this.getToken(TSqlParser.WELL_FORMED_XML, 0);
-};
-
-Message_statementContext.prototype.VALID_XML = function() {
- return this.getToken(TSqlParser.VALID_XML, 0);
-};
-
-Message_statementContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Message_statementContext.prototype.SCHEMA = function() {
- return this.getToken(TSqlParser.SCHEMA, 0);
-};
-
-Message_statementContext.prototype.COLLECTION = function() {
- return this.getToken(TSqlParser.COLLECTION, 0);
-};
-
-Message_statementContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterMessage_statement(this);
- }
-};
-
-Message_statementContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitMessage_statement(this);
- }
-};
-
-Message_statementContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitMessage_statement(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Message_statementContext = Message_statementContext;
-
-TSqlParser.prototype.message_statement = function() {
-
- var localctx = new Message_statementContext(this, this._ctx, this.state);
- this.enterRule(localctx, 426, TSqlParser.RULE_message_statement);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 5696;
- this.match(TSqlParser.CREATE);
- this.state = 5697;
- this.match(TSqlParser.MESSAGE);
- this.state = 5698;
- this.match(TSqlParser.TYPE);
- this.state = 5699;
- localctx.message_type_name = this.id();
- this.state = 5702;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.AUTHORIZATION) {
- this.state = 5700;
- this.match(TSqlParser.AUTHORIZATION);
- this.state = 5701;
- localctx.owner_name = this.id();
- }
-
- this.state = 5704;
- this.match(TSqlParser.VALIDATION);
- this.state = 5705;
- this.match(TSqlParser.EQUAL);
- this.state = 5714;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.NONE:
- this.state = 5706;
- this.match(TSqlParser.NONE);
- break;
- case TSqlParser.EMPTY:
- this.state = 5707;
- this.match(TSqlParser.EMPTY);
- break;
- case TSqlParser.WELL_FORMED_XML:
- this.state = 5708;
- this.match(TSqlParser.WELL_FORMED_XML);
- break;
- case TSqlParser.VALID_XML:
- this.state = 5709;
- this.match(TSqlParser.VALID_XML);
- this.state = 5710;
- this.match(TSqlParser.WITH);
- this.state = 5711;
- this.match(TSqlParser.SCHEMA);
- this.state = 5712;
- this.match(TSqlParser.COLLECTION);
- this.state = 5713;
- localctx.schema_collection_name = this.id();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Merge_statementContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_merge_statement;
- return this;
-}
-
-Merge_statementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Merge_statementContext.prototype.constructor = Merge_statementContext;
-
-Merge_statementContext.prototype.MERGE = function() {
- return this.getToken(TSqlParser.MERGE, 0);
-};
-
-Merge_statementContext.prototype.ddl_object = function() {
- return this.getTypedRuleContext(Ddl_objectContext,0);
-};
-
-Merge_statementContext.prototype.USING = function() {
- return this.getToken(TSqlParser.USING, 0);
-};
-
-Merge_statementContext.prototype.table_sources = function() {
- return this.getTypedRuleContext(Table_sourcesContext,0);
-};
-
-Merge_statementContext.prototype.ON = function() {
- return this.getToken(TSqlParser.ON, 0);
-};
-
-Merge_statementContext.prototype.search_condition = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Search_conditionContext);
- } else {
- return this.getTypedRuleContext(Search_conditionContext,i);
- }
-};
-
-Merge_statementContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Merge_statementContext.prototype.with_expression = function() {
- return this.getTypedRuleContext(With_expressionContext,0);
-};
-
-Merge_statementContext.prototype.TOP = function() {
- return this.getToken(TSqlParser.TOP, 0);
-};
-
-Merge_statementContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Merge_statementContext.prototype.expression = function() {
- return this.getTypedRuleContext(ExpressionContext,0);
-};
-
-Merge_statementContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Merge_statementContext.prototype.INTO = function() {
- return this.getToken(TSqlParser.INTO, 0);
-};
-
-Merge_statementContext.prototype.insert_with_table_hints = function() {
- return this.getTypedRuleContext(Insert_with_table_hintsContext,0);
-};
-
-Merge_statementContext.prototype.as_table_alias = function() {
- return this.getTypedRuleContext(As_table_aliasContext,0);
-};
-
-Merge_statementContext.prototype.WHEN = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.WHEN);
- } else {
- return this.getToken(TSqlParser.WHEN, i);
- }
-};
-
-
-Merge_statementContext.prototype.MATCHED = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.MATCHED);
- } else {
- return this.getToken(TSqlParser.MATCHED, i);
- }
-};
-
-
-Merge_statementContext.prototype.THEN = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.THEN);
- } else {
- return this.getToken(TSqlParser.THEN, i);
- }
-};
-
-
-Merge_statementContext.prototype.merge_matched = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Merge_matchedContext);
- } else {
- return this.getTypedRuleContext(Merge_matchedContext,i);
- }
-};
-
-Merge_statementContext.prototype.NOT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.NOT);
- } else {
- return this.getToken(TSqlParser.NOT, i);
- }
-};
-
-
-Merge_statementContext.prototype.merge_not_matched = function() {
- return this.getTypedRuleContext(Merge_not_matchedContext,0);
-};
-
-Merge_statementContext.prototype.BY = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.BY);
- } else {
- return this.getToken(TSqlParser.BY, i);
- }
-};
-
-
-Merge_statementContext.prototype.SOURCE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.SOURCE);
- } else {
- return this.getToken(TSqlParser.SOURCE, i);
- }
-};
-
-
-Merge_statementContext.prototype.output_clause = function() {
- return this.getTypedRuleContext(Output_clauseContext,0);
-};
-
-Merge_statementContext.prototype.option_clause = function() {
- return this.getTypedRuleContext(Option_clauseContext,0);
-};
-
-Merge_statementContext.prototype.PERCENT = function() {
- return this.getToken(TSqlParser.PERCENT, 0);
-};
-
-Merge_statementContext.prototype.AND = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.AND);
- } else {
- return this.getToken(TSqlParser.AND, i);
- }
-};
-
-
-Merge_statementContext.prototype.TARGET = function() {
- return this.getToken(TSqlParser.TARGET, 0);
-};
-
-Merge_statementContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterMerge_statement(this);
- }
-};
-
-Merge_statementContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitMerge_statement(this);
- }
-};
-
-Merge_statementContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitMerge_statement(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Merge_statementContext = Merge_statementContext;
-
-TSqlParser.prototype.merge_statement = function() {
-
- var localctx = new Merge_statementContext(this, this._ctx, this.state);
- this.enterRule(localctx, 428, TSqlParser.RULE_merge_statement);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 5717;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.WITH) {
- this.state = 5716;
- this.with_expression();
- }
-
- this.state = 5719;
- this.match(TSqlParser.MERGE);
- this.state = 5727;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.TOP) {
- this.state = 5720;
- this.match(TSqlParser.TOP);
- this.state = 5721;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 5722;
- this.expression(0);
- this.state = 5723;
- this.match(TSqlParser.RR_BRACKET);
- this.state = 5725;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.PERCENT) {
- this.state = 5724;
- this.match(TSqlParser.PERCENT);
- }
-
- }
-
- this.state = 5730;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.INTO) {
- this.state = 5729;
- this.match(TSqlParser.INTO);
- }
-
- this.state = 5732;
- this.ddl_object();
- this.state = 5734;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.WITH) {
- this.state = 5733;
- this.insert_with_table_hints();
- }
-
- this.state = 5737;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,705,this._ctx);
- if(la_===1) {
- this.state = 5736;
- this.as_table_alias();
-
- }
- this.state = 5739;
- this.match(TSqlParser.USING);
- this.state = 5740;
- this.table_sources();
- this.state = 5741;
- this.match(TSqlParser.ON);
- this.state = 5742;
- this.search_condition();
- this.state = 5753;
- this._errHandler.sync(this);
- var _alt = this._interp.adaptivePredict(this._input,707,this._ctx)
- while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
- if(_alt===1) {
- this.state = 5743;
- this.match(TSqlParser.WHEN);
- this.state = 5744;
- this.match(TSqlParser.MATCHED);
- this.state = 5747;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.AND) {
- this.state = 5745;
- this.match(TSqlParser.AND);
- this.state = 5746;
- this.search_condition();
- }
-
- this.state = 5749;
- this.match(TSqlParser.THEN);
- this.state = 5750;
- this.merge_matched();
- }
- this.state = 5755;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,707,this._ctx);
- }
-
- this.state = 5769;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,710,this._ctx);
- if(la_===1) {
- this.state = 5756;
- this.match(TSqlParser.WHEN);
- this.state = 5757;
- this.match(TSqlParser.NOT);
- this.state = 5758;
- this.match(TSqlParser.MATCHED);
- this.state = 5761;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.BY) {
- this.state = 5759;
- this.match(TSqlParser.BY);
- this.state = 5760;
- this.match(TSqlParser.TARGET);
- }
-
- this.state = 5765;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.AND) {
- this.state = 5763;
- this.match(TSqlParser.AND);
- this.state = 5764;
- this.search_condition();
- }
-
- this.state = 5767;
- this.match(TSqlParser.THEN);
- this.state = 5768;
- this.merge_not_matched();
-
- }
- this.state = 5784;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.WHEN) {
- this.state = 5771;
- this.match(TSqlParser.WHEN);
- this.state = 5772;
- this.match(TSqlParser.NOT);
- this.state = 5773;
- this.match(TSqlParser.MATCHED);
- this.state = 5774;
- this.match(TSqlParser.BY);
- this.state = 5775;
- this.match(TSqlParser.SOURCE);
- this.state = 5778;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.AND) {
- this.state = 5776;
- this.match(TSqlParser.AND);
- this.state = 5777;
- this.search_condition();
- }
-
- this.state = 5780;
- this.match(TSqlParser.THEN);
- this.state = 5781;
- this.merge_matched();
- this.state = 5786;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- this.state = 5788;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.OUTPUT) {
- this.state = 5787;
- this.output_clause();
- }
-
- this.state = 5791;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.OPTION) {
- this.state = 5790;
- this.option_clause();
- }
-
- this.state = 5793;
- this.match(TSqlParser.SEMI);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Merge_matchedContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_merge_matched;
- return this;
-}
-
-Merge_matchedContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Merge_matchedContext.prototype.constructor = Merge_matchedContext;
-
-Merge_matchedContext.prototype.UPDATE = function() {
- return this.getToken(TSqlParser.UPDATE, 0);
-};
-
-Merge_matchedContext.prototype.SET = function() {
- return this.getToken(TSqlParser.SET, 0);
-};
-
-Merge_matchedContext.prototype.update_elem = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Update_elemContext);
- } else {
- return this.getTypedRuleContext(Update_elemContext,i);
- }
-};
-
-Merge_matchedContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Merge_matchedContext.prototype.DELETE = function() {
- return this.getToken(TSqlParser.DELETE, 0);
-};
-
-Merge_matchedContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterMerge_matched(this);
- }
-};
-
-Merge_matchedContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitMerge_matched(this);
- }
-};
-
-Merge_matchedContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitMerge_matched(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Merge_matchedContext = Merge_matchedContext;
-
-TSqlParser.prototype.merge_matched = function() {
-
- var localctx = new Merge_matchedContext(this, this._ctx, this.state);
- this.enterRule(localctx, 430, TSqlParser.RULE_merge_matched);
- var _la = 0; // Token type
- try {
- this.state = 5806;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.UPDATE:
- this.enterOuterAlt(localctx, 1);
- this.state = 5795;
- this.match(TSqlParser.UPDATE);
- this.state = 5796;
- this.match(TSqlParser.SET);
- this.state = 5797;
- this.update_elem();
- this.state = 5802;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 5798;
- this.match(TSqlParser.COMMA);
- this.state = 5799;
- this.update_elem();
- this.state = 5804;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- break;
- case TSqlParser.DELETE:
- this.enterOuterAlt(localctx, 2);
- this.state = 5805;
- this.match(TSqlParser.DELETE);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Merge_not_matchedContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_merge_not_matched;
- return this;
-}
-
-Merge_not_matchedContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Merge_not_matchedContext.prototype.constructor = Merge_not_matchedContext;
-
-Merge_not_matchedContext.prototype.INSERT = function() {
- return this.getToken(TSqlParser.INSERT, 0);
-};
-
-Merge_not_matchedContext.prototype.table_value_constructor = function() {
- return this.getTypedRuleContext(Table_value_constructorContext,0);
-};
-
-Merge_not_matchedContext.prototype.DEFAULT = function() {
- return this.getToken(TSqlParser.DEFAULT, 0);
-};
-
-Merge_not_matchedContext.prototype.VALUES = function() {
- return this.getToken(TSqlParser.VALUES, 0);
-};
-
-Merge_not_matchedContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Merge_not_matchedContext.prototype.column_name_list = function() {
- return this.getTypedRuleContext(Column_name_listContext,0);
-};
-
-Merge_not_matchedContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Merge_not_matchedContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterMerge_not_matched(this);
- }
-};
-
-Merge_not_matchedContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitMerge_not_matched(this);
- }
-};
-
-Merge_not_matchedContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitMerge_not_matched(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Merge_not_matchedContext = Merge_not_matchedContext;
-
-TSqlParser.prototype.merge_not_matched = function() {
-
- var localctx = new Merge_not_matchedContext(this, this._ctx, this.state);
- this.enterRule(localctx, 432, TSqlParser.RULE_merge_not_matched);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 5808;
- this.match(TSqlParser.INSERT);
- this.state = 5813;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.LR_BRACKET) {
- this.state = 5809;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 5810;
- this.column_name_list();
- this.state = 5811;
- this.match(TSqlParser.RR_BRACKET);
- }
-
- this.state = 5818;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.VALUES:
- this.state = 5815;
- this.table_value_constructor();
- break;
- case TSqlParser.DEFAULT:
- this.state = 5816;
- this.match(TSqlParser.DEFAULT);
- this.state = 5817;
- this.match(TSqlParser.VALUES);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Delete_statementContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_delete_statement;
- this.cursor_var = null; // Token
- return this;
-}
-
-Delete_statementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Delete_statementContext.prototype.constructor = Delete_statementContext;
-
-Delete_statementContext.prototype.DELETE = function() {
- return this.getToken(TSqlParser.DELETE, 0);
-};
-
-Delete_statementContext.prototype.delete_statement_from = function() {
- return this.getTypedRuleContext(Delete_statement_fromContext,0);
-};
-
-Delete_statementContext.prototype.with_expression = function() {
- return this.getTypedRuleContext(With_expressionContext,0);
-};
-
-Delete_statementContext.prototype.TOP = function() {
- return this.getToken(TSqlParser.TOP, 0);
-};
-
-Delete_statementContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Delete_statementContext.prototype.expression = function() {
- return this.getTypedRuleContext(ExpressionContext,0);
-};
-
-Delete_statementContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Delete_statementContext.prototype.DECIMAL = function() {
- return this.getToken(TSqlParser.DECIMAL, 0);
-};
-
-Delete_statementContext.prototype.FROM = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.FROM);
- } else {
- return this.getToken(TSqlParser.FROM, i);
- }
-};
-
-
-Delete_statementContext.prototype.insert_with_table_hints = function() {
- return this.getTypedRuleContext(Insert_with_table_hintsContext,0);
-};
-
-Delete_statementContext.prototype.output_clause = function() {
- return this.getTypedRuleContext(Output_clauseContext,0);
-};
-
-Delete_statementContext.prototype.table_sources = function() {
- return this.getTypedRuleContext(Table_sourcesContext,0);
-};
-
-Delete_statementContext.prototype.WHERE = function() {
- return this.getToken(TSqlParser.WHERE, 0);
-};
-
-Delete_statementContext.prototype.for_clause = function() {
- return this.getTypedRuleContext(For_clauseContext,0);
-};
-
-Delete_statementContext.prototype.option_clause = function() {
- return this.getTypedRuleContext(Option_clauseContext,0);
-};
-
-Delete_statementContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Delete_statementContext.prototype.search_condition = function() {
- return this.getTypedRuleContext(Search_conditionContext,0);
-};
-
-Delete_statementContext.prototype.CURRENT = function() {
- return this.getToken(TSqlParser.CURRENT, 0);
-};
-
-Delete_statementContext.prototype.OF = function() {
- return this.getToken(TSqlParser.OF, 0);
-};
-
-Delete_statementContext.prototype.PERCENT = function() {
- return this.getToken(TSqlParser.PERCENT, 0);
-};
-
-Delete_statementContext.prototype.cursor_name = function() {
- return this.getTypedRuleContext(Cursor_nameContext,0);
-};
-
-Delete_statementContext.prototype.LOCAL_ID = function() {
- return this.getToken(TSqlParser.LOCAL_ID, 0);
-};
-
-Delete_statementContext.prototype.GLOBAL = function() {
- return this.getToken(TSqlParser.GLOBAL, 0);
-};
-
-Delete_statementContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDelete_statement(this);
- }
-};
-
-Delete_statementContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDelete_statement(this);
- }
-};
-
-Delete_statementContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDelete_statement(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Delete_statementContext = Delete_statementContext;
-
-TSqlParser.prototype.delete_statement = function() {
-
- var localctx = new Delete_statementContext(this, this._ctx, this.state);
- this.enterRule(localctx, 434, TSqlParser.RULE_delete_statement);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 5821;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.WITH) {
- this.state = 5820;
- this.with_expression();
- }
-
- this.state = 5823;
- this.match(TSqlParser.DELETE);
- this.state = 5833;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,721,this._ctx);
- if(la_===1) {
- this.state = 5824;
- this.match(TSqlParser.TOP);
- this.state = 5825;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 5826;
- this.expression(0);
- this.state = 5827;
- this.match(TSqlParser.RR_BRACKET);
- this.state = 5829;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.PERCENT) {
- this.state = 5828;
- this.match(TSqlParser.PERCENT);
- }
-
-
- } else if(la_===2) {
- this.state = 5831;
- this.match(TSqlParser.TOP);
- this.state = 5832;
- this.match(TSqlParser.DECIMAL);
-
- }
- this.state = 5836;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.FROM) {
- this.state = 5835;
- this.match(TSqlParser.FROM);
- }
-
- this.state = 5838;
- this.delete_statement_from();
- this.state = 5840;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,723,this._ctx);
- if(la_===1) {
- this.state = 5839;
- this.insert_with_table_hints();
-
- }
- this.state = 5843;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,724,this._ctx);
- if(la_===1) {
- this.state = 5842;
- this.output_clause();
-
- }
- this.state = 5847;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.FROM) {
- this.state = 5845;
- this.match(TSqlParser.FROM);
- this.state = 5846;
- this.table_sources();
- }
-
- this.state = 5862;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.WHERE) {
- this.state = 5849;
- this.match(TSqlParser.WHERE);
- this.state = 5860;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.BLOCKING_HIERARCHY:
- case TSqlParser.CALLED:
- case TSqlParser.CASE:
- case TSqlParser.COALESCE:
- case TSqlParser.CONVERT:
- case TSqlParser.CURRENT_TIMESTAMP:
- case TSqlParser.CURRENT_USER:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.DEFAULT:
- case TSqlParser.EVENTDATA:
- case TSqlParser.EXISTS:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.IDENTITY:
- case TSqlParser.IIF:
- case TSqlParser.INIT:
- case TSqlParser.ISNULL:
- case TSqlParser.KEY:
- case TSqlParser.LEFT:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.NOT:
- case TSqlParser.NULL:
- case TSqlParser.NULLIF:
- case TSqlParser.OFFSETS:
- case TSqlParser.OVER:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.RIGHT:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SESSION_USER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.SYSTEM_USER:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.LOCAL_ID:
- case TSqlParser.DECIMAL:
- case TSqlParser.ID:
- case TSqlParser.STRING:
- case TSqlParser.BINARY:
- case TSqlParser.FLOAT:
- case TSqlParser.REAL:
- case TSqlParser.DOLLAR:
- case TSqlParser.LR_BRACKET:
- case TSqlParser.PLUS:
- case TSqlParser.MINUS:
- case TSqlParser.BIT_NOT:
- this.state = 5850;
- this.search_condition();
- break;
- case TSqlParser.CURRENT:
- this.state = 5851;
- this.match(TSqlParser.CURRENT);
- this.state = 5852;
- this.match(TSqlParser.OF);
- this.state = 5858;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,727,this._ctx);
- switch(la_) {
- case 1:
- this.state = 5854;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,726,this._ctx);
- if(la_===1) {
- this.state = 5853;
- this.match(TSqlParser.GLOBAL);
-
- }
- this.state = 5856;
- this.cursor_name();
- break;
-
- case 2:
- this.state = 5857;
- localctx.cursor_var = this.match(TSqlParser.LOCAL_ID);
- break;
-
- }
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- }
-
- this.state = 5865;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.FOR) {
- this.state = 5864;
- this.for_clause();
- }
-
- this.state = 5868;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.OPTION) {
- this.state = 5867;
- this.option_clause();
- }
-
- this.state = 5871;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,732,this._ctx);
- if(la_===1) {
- this.state = 5870;
- this.match(TSqlParser.SEMI);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Delete_statement_fromContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_delete_statement_from;
- this.table_var = null; // Token
- return this;
-}
-
-Delete_statement_fromContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Delete_statement_fromContext.prototype.constructor = Delete_statement_fromContext;
-
-Delete_statement_fromContext.prototype.ddl_object = function() {
- return this.getTypedRuleContext(Ddl_objectContext,0);
-};
-
-Delete_statement_fromContext.prototype.table_alias = function() {
- return this.getTypedRuleContext(Table_aliasContext,0);
-};
-
-Delete_statement_fromContext.prototype.rowset_function_limited = function() {
- return this.getTypedRuleContext(Rowset_function_limitedContext,0);
-};
-
-Delete_statement_fromContext.prototype.LOCAL_ID = function() {
- return this.getToken(TSqlParser.LOCAL_ID, 0);
-};
-
-Delete_statement_fromContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDelete_statement_from(this);
- }
-};
-
-Delete_statement_fromContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDelete_statement_from(this);
- }
-};
-
-Delete_statement_fromContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDelete_statement_from(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Delete_statement_fromContext = Delete_statement_fromContext;
-
-TSqlParser.prototype.delete_statement_from = function() {
-
- var localctx = new Delete_statement_fromContext(this, this._ctx, this.state);
- this.enterRule(localctx, 436, TSqlParser.RULE_delete_statement_from);
- try {
- this.state = 5877;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,733,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 5873;
- this.ddl_object();
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 5874;
- this.table_alias();
- break;
-
- case 3:
- this.enterOuterAlt(localctx, 3);
- this.state = 5875;
- this.rowset_function_limited();
- break;
-
- case 4:
- this.enterOuterAlt(localctx, 4);
- this.state = 5876;
- localctx.table_var = this.match(TSqlParser.LOCAL_ID);
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Insert_statementContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_insert_statement;
- return this;
-}
-
-Insert_statementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Insert_statementContext.prototype.constructor = Insert_statementContext;
-
-Insert_statementContext.prototype.INSERT = function() {
- return this.getToken(TSqlParser.INSERT, 0);
-};
-
-Insert_statementContext.prototype.insert_statement_value = function() {
- return this.getTypedRuleContext(Insert_statement_valueContext,0);
-};
-
-Insert_statementContext.prototype.ddl_object = function() {
- return this.getTypedRuleContext(Ddl_objectContext,0);
-};
-
-Insert_statementContext.prototype.rowset_function_limited = function() {
- return this.getTypedRuleContext(Rowset_function_limitedContext,0);
-};
-
-Insert_statementContext.prototype.with_expression = function() {
- return this.getTypedRuleContext(With_expressionContext,0);
-};
-
-Insert_statementContext.prototype.TOP = function() {
- return this.getToken(TSqlParser.TOP, 0);
-};
-
-Insert_statementContext.prototype.LR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.LR_BRACKET);
- } else {
- return this.getToken(TSqlParser.LR_BRACKET, i);
- }
-};
-
-
-Insert_statementContext.prototype.expression = function() {
- return this.getTypedRuleContext(ExpressionContext,0);
-};
-
-Insert_statementContext.prototype.RR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.RR_BRACKET);
- } else {
- return this.getToken(TSqlParser.RR_BRACKET, i);
- }
-};
-
-
-Insert_statementContext.prototype.INTO = function() {
- return this.getToken(TSqlParser.INTO, 0);
-};
-
-Insert_statementContext.prototype.insert_with_table_hints = function() {
- return this.getTypedRuleContext(Insert_with_table_hintsContext,0);
-};
-
-Insert_statementContext.prototype.column_name_list = function() {
- return this.getTypedRuleContext(Column_name_listContext,0);
-};
-
-Insert_statementContext.prototype.output_clause = function() {
- return this.getTypedRuleContext(Output_clauseContext,0);
-};
-
-Insert_statementContext.prototype.for_clause = function() {
- return this.getTypedRuleContext(For_clauseContext,0);
-};
-
-Insert_statementContext.prototype.option_clause = function() {
- return this.getTypedRuleContext(Option_clauseContext,0);
-};
-
-Insert_statementContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Insert_statementContext.prototype.PERCENT = function() {
- return this.getToken(TSqlParser.PERCENT, 0);
-};
-
-Insert_statementContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterInsert_statement(this);
- }
-};
-
-Insert_statementContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitInsert_statement(this);
- }
-};
-
-Insert_statementContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitInsert_statement(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Insert_statementContext = Insert_statementContext;
-
-TSqlParser.prototype.insert_statement = function() {
-
- var localctx = new Insert_statementContext(this, this._ctx, this.state);
- this.enterRule(localctx, 438, TSqlParser.RULE_insert_statement);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 5880;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.WITH) {
- this.state = 5879;
- this.with_expression();
- }
-
- this.state = 5882;
- this.match(TSqlParser.INSERT);
- this.state = 5890;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.TOP) {
- this.state = 5883;
- this.match(TSqlParser.TOP);
- this.state = 5884;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 5885;
- this.expression(0);
- this.state = 5886;
- this.match(TSqlParser.RR_BRACKET);
- this.state = 5888;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.PERCENT) {
- this.state = 5887;
- this.match(TSqlParser.PERCENT);
- }
-
- }
-
- this.state = 5893;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.INTO) {
- this.state = 5892;
- this.match(TSqlParser.INTO);
- }
-
- this.state = 5897;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.LOCAL_ID:
- case TSqlParser.ID:
- this.state = 5895;
- this.ddl_object();
- break;
- case TSqlParser.OPENDATASOURCE:
- case TSqlParser.OPENQUERY:
- this.state = 5896;
- this.rowset_function_limited();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 5900;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,739,this._ctx);
- if(la_===1) {
- this.state = 5899;
- this.insert_with_table_hints();
-
- }
- this.state = 5906;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,740,this._ctx);
- if(la_===1) {
- this.state = 5902;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 5903;
- this.column_name_list();
- this.state = 5904;
- this.match(TSqlParser.RR_BRACKET);
-
- }
- this.state = 5909;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.OUTPUT) {
- this.state = 5908;
- this.output_clause();
- }
-
- this.state = 5911;
- this.insert_statement_value();
- this.state = 5913;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.FOR) {
- this.state = 5912;
- this.for_clause();
- }
-
- this.state = 5916;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.OPTION) {
- this.state = 5915;
- this.option_clause();
- }
-
- this.state = 5919;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,744,this._ctx);
- if(la_===1) {
- this.state = 5918;
- this.match(TSqlParser.SEMI);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Insert_statement_valueContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_insert_statement_value;
- return this;
-}
-
-Insert_statement_valueContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Insert_statement_valueContext.prototype.constructor = Insert_statement_valueContext;
-
-Insert_statement_valueContext.prototype.table_value_constructor = function() {
- return this.getTypedRuleContext(Table_value_constructorContext,0);
-};
-
-Insert_statement_valueContext.prototype.derived_table = function() {
- return this.getTypedRuleContext(Derived_tableContext,0);
-};
-
-Insert_statement_valueContext.prototype.execute_statement = function() {
- return this.getTypedRuleContext(Execute_statementContext,0);
-};
-
-Insert_statement_valueContext.prototype.DEFAULT = function() {
- return this.getToken(TSqlParser.DEFAULT, 0);
-};
-
-Insert_statement_valueContext.prototype.VALUES = function() {
- return this.getToken(TSqlParser.VALUES, 0);
-};
-
-Insert_statement_valueContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterInsert_statement_value(this);
- }
-};
-
-Insert_statement_valueContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitInsert_statement_value(this);
- }
-};
-
-Insert_statement_valueContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitInsert_statement_value(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Insert_statement_valueContext = Insert_statement_valueContext;
-
-TSqlParser.prototype.insert_statement_value = function() {
-
- var localctx = new Insert_statement_valueContext(this, this._ctx, this.state);
- this.enterRule(localctx, 440, TSqlParser.RULE_insert_statement_value);
- try {
- this.state = 5926;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,745,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 5921;
- this.table_value_constructor();
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 5922;
- this.derived_table();
- break;
-
- case 3:
- this.enterOuterAlt(localctx, 3);
- this.state = 5923;
- this.execute_statement();
- break;
-
- case 4:
- this.enterOuterAlt(localctx, 4);
- this.state = 5924;
- this.match(TSqlParser.DEFAULT);
- this.state = 5925;
- this.match(TSqlParser.VALUES);
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Receive_statementContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_receive_statement;
- this.table_variable = null; // IdContext
- this.where = null; // Search_conditionContext
- return this;
-}
-
-Receive_statementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Receive_statementContext.prototype.constructor = Receive_statementContext;
-
-Receive_statementContext.prototype.RECEIVE = function() {
- return this.getToken(TSqlParser.RECEIVE, 0);
-};
-
-Receive_statementContext.prototype.FROM = function() {
- return this.getToken(TSqlParser.FROM, 0);
-};
-
-Receive_statementContext.prototype.full_table_name = function() {
- return this.getTypedRuleContext(Full_table_nameContext,0);
-};
-
-Receive_statementContext.prototype.ALL = function() {
- return this.getToken(TSqlParser.ALL, 0);
-};
-
-Receive_statementContext.prototype.DISTINCT = function() {
- return this.getToken(TSqlParser.DISTINCT, 0);
-};
-
-Receive_statementContext.prototype.top_clause = function() {
- return this.getTypedRuleContext(Top_clauseContext,0);
-};
-
-Receive_statementContext.prototype.STAR = function() {
- return this.getToken(TSqlParser.STAR, 0);
-};
-
-Receive_statementContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Receive_statementContext.prototype.LOCAL_ID = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.LOCAL_ID);
- } else {
- return this.getToken(TSqlParser.LOCAL_ID, i);
- }
-};
-
-
-Receive_statementContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-Receive_statementContext.prototype.expression = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(ExpressionContext);
- } else {
- return this.getTypedRuleContext(ExpressionContext,i);
- }
-};
-
-Receive_statementContext.prototype.INTO = function() {
- return this.getToken(TSqlParser.INTO, 0);
-};
-
-Receive_statementContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Receive_statementContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Receive_statementContext.prototype.WHERE = function() {
- return this.getToken(TSqlParser.WHERE, 0);
-};
-
-Receive_statementContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Receive_statementContext.prototype.search_condition = function() {
- return this.getTypedRuleContext(Search_conditionContext,0);
-};
-
-Receive_statementContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterReceive_statement(this);
- }
-};
-
-Receive_statementContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitReceive_statement(this);
- }
-};
-
-Receive_statementContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitReceive_statement(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Receive_statementContext = Receive_statementContext;
-
-TSqlParser.prototype.receive_statement = function() {
-
- var localctx = new Receive_statementContext(this, this._ctx, this.state);
- this.enterRule(localctx, 442, TSqlParser.RULE_receive_statement);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 5929;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.LR_BRACKET) {
- this.state = 5928;
- this.match(TSqlParser.LR_BRACKET);
- }
-
- this.state = 5931;
- this.match(TSqlParser.RECEIVE);
- this.state = 5936;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.ALL:
- this.state = 5932;
- this.match(TSqlParser.ALL);
- break;
- case TSqlParser.DISTINCT:
- this.state = 5933;
- this.match(TSqlParser.DISTINCT);
- break;
- case TSqlParser.TOP:
- this.state = 5934;
- this.top_clause();
- break;
- case TSqlParser.STAR:
- this.state = 5935;
- this.match(TSqlParser.STAR);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 5946;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.LOCAL_ID) {
- this.state = 5938;
- this.match(TSqlParser.LOCAL_ID);
- this.state = 5939;
- this.match(TSqlParser.EQUAL);
- this.state = 5940;
- this.expression(0);
- this.state = 5942;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 5941;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 5948;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- this.state = 5949;
- this.match(TSqlParser.FROM);
- this.state = 5950;
- this.full_table_name();
- this.state = 5956;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.INTO) {
- this.state = 5951;
- this.match(TSqlParser.INTO);
- this.state = 5952;
- localctx.table_variable = this.id();
-
- this.state = 5953;
- this.match(TSqlParser.WHERE);
- this.state = 5954;
- localctx.where = this.search_condition();
- }
-
- this.state = 5959;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.RR_BRACKET) {
- this.state = 5958;
- this.match(TSqlParser.RR_BRACKET);
- }
-
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Select_statementContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_select_statement;
- return this;
-}
-
-Select_statementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Select_statementContext.prototype.constructor = Select_statementContext;
-
-Select_statementContext.prototype.query_expression = function() {
- return this.getTypedRuleContext(Query_expressionContext,0);
-};
-
-Select_statementContext.prototype.with_expression = function() {
- return this.getTypedRuleContext(With_expressionContext,0);
-};
-
-Select_statementContext.prototype.order_by_clause = function() {
- return this.getTypedRuleContext(Order_by_clauseContext,0);
-};
-
-Select_statementContext.prototype.for_clause = function() {
- return this.getTypedRuleContext(For_clauseContext,0);
-};
-
-Select_statementContext.prototype.option_clause = function() {
- return this.getTypedRuleContext(Option_clauseContext,0);
-};
-
-Select_statementContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Select_statementContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterSelect_statement(this);
- }
-};
-
-Select_statementContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitSelect_statement(this);
- }
-};
-
-Select_statementContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitSelect_statement(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Select_statementContext = Select_statementContext;
-
-TSqlParser.prototype.select_statement = function() {
-
- var localctx = new Select_statementContext(this, this._ctx, this.state);
- this.enterRule(localctx, 444, TSqlParser.RULE_select_statement);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 5962;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.WITH) {
- this.state = 5961;
- this.with_expression();
- }
-
- this.state = 5964;
- this.query_expression();
- this.state = 5966;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,753,this._ctx);
- if(la_===1) {
- this.state = 5965;
- this.order_by_clause();
-
- }
- this.state = 5969;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,754,this._ctx);
- if(la_===1) {
- this.state = 5968;
- this.for_clause();
-
- }
- this.state = 5972;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,755,this._ctx);
- if(la_===1) {
- this.state = 5971;
- this.option_clause();
-
- }
- this.state = 5975;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,756,this._ctx);
- if(la_===1) {
- this.state = 5974;
- this.match(TSqlParser.SEMI);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function TimeContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_time;
- return this;
-}
-
-TimeContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-TimeContext.prototype.constructor = TimeContext;
-
-TimeContext.prototype.LOCAL_ID = function() {
- return this.getToken(TSqlParser.LOCAL_ID, 0);
-};
-
-TimeContext.prototype.constant = function() {
- return this.getTypedRuleContext(ConstantContext,0);
-};
-
-TimeContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterTime(this);
- }
-};
-
-TimeContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitTime(this);
- }
-};
-
-TimeContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitTime(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.TimeContext = TimeContext;
-
-TSqlParser.prototype.time = function() {
-
- var localctx = new TimeContext(this, this._ctx, this.state);
- this.enterRule(localctx, 446, TSqlParser.RULE_time);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 5979;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.LOCAL_ID:
- this.state = 5977;
- this.match(TSqlParser.LOCAL_ID);
- break;
- case TSqlParser.DECIMAL:
- case TSqlParser.STRING:
- case TSqlParser.BINARY:
- case TSqlParser.FLOAT:
- case TSqlParser.REAL:
- case TSqlParser.DOLLAR:
- case TSqlParser.PLUS:
- case TSqlParser.MINUS:
- this.state = 5978;
- this.constant();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Update_statementContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_update_statement;
- this.cursor_var = null; // Token
- return this;
-}
-
-Update_statementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Update_statementContext.prototype.constructor = Update_statementContext;
-
-Update_statementContext.prototype.UPDATE = function() {
- return this.getToken(TSqlParser.UPDATE, 0);
-};
-
-Update_statementContext.prototype.SET = function() {
- return this.getToken(TSqlParser.SET, 0);
-};
-
-Update_statementContext.prototype.update_elem = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Update_elemContext);
- } else {
- return this.getTypedRuleContext(Update_elemContext,i);
- }
-};
-
-Update_statementContext.prototype.ddl_object = function() {
- return this.getTypedRuleContext(Ddl_objectContext,0);
-};
-
-Update_statementContext.prototype.rowset_function_limited = function() {
- return this.getTypedRuleContext(Rowset_function_limitedContext,0);
-};
-
-Update_statementContext.prototype.with_expression = function() {
- return this.getTypedRuleContext(With_expressionContext,0);
-};
-
-Update_statementContext.prototype.TOP = function() {
- return this.getToken(TSqlParser.TOP, 0);
-};
-
-Update_statementContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Update_statementContext.prototype.expression = function() {
- return this.getTypedRuleContext(ExpressionContext,0);
-};
-
-Update_statementContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Update_statementContext.prototype.with_table_hints = function() {
- return this.getTypedRuleContext(With_table_hintsContext,0);
-};
-
-Update_statementContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Update_statementContext.prototype.output_clause = function() {
- return this.getTypedRuleContext(Output_clauseContext,0);
-};
-
-Update_statementContext.prototype.FROM = function() {
- return this.getToken(TSqlParser.FROM, 0);
-};
-
-Update_statementContext.prototype.table_sources = function() {
- return this.getTypedRuleContext(Table_sourcesContext,0);
-};
-
-Update_statementContext.prototype.WHERE = function() {
- return this.getToken(TSqlParser.WHERE, 0);
-};
-
-Update_statementContext.prototype.for_clause = function() {
- return this.getTypedRuleContext(For_clauseContext,0);
-};
-
-Update_statementContext.prototype.option_clause = function() {
- return this.getTypedRuleContext(Option_clauseContext,0);
-};
-
-Update_statementContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Update_statementContext.prototype.search_condition_list = function() {
- return this.getTypedRuleContext(Search_condition_listContext,0);
-};
-
-Update_statementContext.prototype.CURRENT = function() {
- return this.getToken(TSqlParser.CURRENT, 0);
-};
-
-Update_statementContext.prototype.OF = function() {
- return this.getToken(TSqlParser.OF, 0);
-};
-
-Update_statementContext.prototype.PERCENT = function() {
- return this.getToken(TSqlParser.PERCENT, 0);
-};
-
-Update_statementContext.prototype.cursor_name = function() {
- return this.getTypedRuleContext(Cursor_nameContext,0);
-};
-
-Update_statementContext.prototype.LOCAL_ID = function() {
- return this.getToken(TSqlParser.LOCAL_ID, 0);
-};
-
-Update_statementContext.prototype.GLOBAL = function() {
- return this.getToken(TSqlParser.GLOBAL, 0);
-};
-
-Update_statementContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterUpdate_statement(this);
- }
-};
-
-Update_statementContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitUpdate_statement(this);
- }
-};
-
-Update_statementContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitUpdate_statement(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Update_statementContext = Update_statementContext;
-
-TSqlParser.prototype.update_statement = function() {
-
- var localctx = new Update_statementContext(this, this._ctx, this.state);
- this.enterRule(localctx, 448, TSqlParser.RULE_update_statement);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 5982;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.WITH) {
- this.state = 5981;
- this.with_expression();
- }
-
- this.state = 5984;
- this.match(TSqlParser.UPDATE);
- this.state = 5992;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.TOP) {
- this.state = 5985;
- this.match(TSqlParser.TOP);
- this.state = 5986;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 5987;
- this.expression(0);
- this.state = 5988;
- this.match(TSqlParser.RR_BRACKET);
- this.state = 5990;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.PERCENT) {
- this.state = 5989;
- this.match(TSqlParser.PERCENT);
- }
-
- }
-
- this.state = 5996;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.LOCAL_ID:
- case TSqlParser.ID:
- this.state = 5994;
- this.ddl_object();
- break;
- case TSqlParser.OPENDATASOURCE:
- case TSqlParser.OPENQUERY:
- this.state = 5995;
- this.rowset_function_limited();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 5999;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.WITH || _la===TSqlParser.LR_BRACKET) {
- this.state = 5998;
- this.with_table_hints();
- }
-
- this.state = 6001;
- this.match(TSqlParser.SET);
- this.state = 6002;
- this.update_elem();
- this.state = 6007;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 6003;
- this.match(TSqlParser.COMMA);
- this.state = 6004;
- this.update_elem();
- this.state = 6009;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- this.state = 6011;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,764,this._ctx);
- if(la_===1) {
- this.state = 6010;
- this.output_clause();
-
- }
- this.state = 6015;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.FROM) {
- this.state = 6013;
- this.match(TSqlParser.FROM);
- this.state = 6014;
- this.table_sources();
- }
-
- this.state = 6030;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.WHERE) {
- this.state = 6017;
- this.match(TSqlParser.WHERE);
- this.state = 6028;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.BLOCKING_HIERARCHY:
- case TSqlParser.CALLED:
- case TSqlParser.CASE:
- case TSqlParser.COALESCE:
- case TSqlParser.CONVERT:
- case TSqlParser.CURRENT_TIMESTAMP:
- case TSqlParser.CURRENT_USER:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.DEFAULT:
- case TSqlParser.EVENTDATA:
- case TSqlParser.EXISTS:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.IDENTITY:
- case TSqlParser.IIF:
- case TSqlParser.INIT:
- case TSqlParser.ISNULL:
- case TSqlParser.KEY:
- case TSqlParser.LEFT:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.NOT:
- case TSqlParser.NULL:
- case TSqlParser.NULLIF:
- case TSqlParser.OFFSETS:
- case TSqlParser.OVER:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.RIGHT:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SESSION_USER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.SYSTEM_USER:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.LOCAL_ID:
- case TSqlParser.DECIMAL:
- case TSqlParser.ID:
- case TSqlParser.STRING:
- case TSqlParser.BINARY:
- case TSqlParser.FLOAT:
- case TSqlParser.REAL:
- case TSqlParser.DOLLAR:
- case TSqlParser.LR_BRACKET:
- case TSqlParser.PLUS:
- case TSqlParser.MINUS:
- case TSqlParser.BIT_NOT:
- this.state = 6018;
- this.search_condition_list();
- break;
- case TSqlParser.CURRENT:
- this.state = 6019;
- this.match(TSqlParser.CURRENT);
- this.state = 6020;
- this.match(TSqlParser.OF);
- this.state = 6026;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,767,this._ctx);
- switch(la_) {
- case 1:
- this.state = 6022;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,766,this._ctx);
- if(la_===1) {
- this.state = 6021;
- this.match(TSqlParser.GLOBAL);
-
- }
- this.state = 6024;
- this.cursor_name();
- break;
-
- case 2:
- this.state = 6025;
- localctx.cursor_var = this.match(TSqlParser.LOCAL_ID);
- break;
-
- }
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- }
-
- this.state = 6033;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.FOR) {
- this.state = 6032;
- this.for_clause();
- }
-
- this.state = 6036;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.OPTION) {
- this.state = 6035;
- this.option_clause();
- }
-
- this.state = 6039;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,772,this._ctx);
- if(la_===1) {
- this.state = 6038;
- this.match(TSqlParser.SEMI);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Output_clauseContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_output_clause;
- return this;
-}
-
-Output_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Output_clauseContext.prototype.constructor = Output_clauseContext;
-
-Output_clauseContext.prototype.OUTPUT = function() {
- return this.getToken(TSqlParser.OUTPUT, 0);
-};
-
-Output_clauseContext.prototype.output_dml_list_elem = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Output_dml_list_elemContext);
- } else {
- return this.getTypedRuleContext(Output_dml_list_elemContext,i);
- }
-};
-
-Output_clauseContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Output_clauseContext.prototype.INTO = function() {
- return this.getToken(TSqlParser.INTO, 0);
-};
-
-Output_clauseContext.prototype.LOCAL_ID = function() {
- return this.getToken(TSqlParser.LOCAL_ID, 0);
-};
-
-Output_clauseContext.prototype.table_name = function() {
- return this.getTypedRuleContext(Table_nameContext,0);
-};
-
-Output_clauseContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Output_clauseContext.prototype.column_name_list = function() {
- return this.getTypedRuleContext(Column_name_listContext,0);
-};
-
-Output_clauseContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Output_clauseContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterOutput_clause(this);
- }
-};
-
-Output_clauseContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitOutput_clause(this);
- }
-};
-
-Output_clauseContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitOutput_clause(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Output_clauseContext = Output_clauseContext;
-
-TSqlParser.prototype.output_clause = function() {
-
- var localctx = new Output_clauseContext(this, this._ctx, this.state);
- this.enterRule(localctx, 450, TSqlParser.RULE_output_clause);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 6041;
- this.match(TSqlParser.OUTPUT);
- this.state = 6042;
- this.output_dml_list_elem();
- this.state = 6047;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 6043;
- this.match(TSqlParser.COMMA);
- this.state = 6044;
- this.output_dml_list_elem();
- this.state = 6049;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- this.state = 6061;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.INTO) {
- this.state = 6050;
- this.match(TSqlParser.INTO);
- this.state = 6053;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.LOCAL_ID:
- this.state = 6051;
- this.match(TSqlParser.LOCAL_ID);
- break;
- case TSqlParser.BLOCKING_HIERARCHY:
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.state = 6052;
- this.table_name();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 6059;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,775,this._ctx);
- if(la_===1) {
- this.state = 6055;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 6056;
- this.column_name_list();
- this.state = 6057;
- this.match(TSqlParser.RR_BRACKET);
-
- }
- }
-
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Output_dml_list_elemContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_output_dml_list_elem;
- return this;
-}
-
-Output_dml_list_elemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Output_dml_list_elemContext.prototype.constructor = Output_dml_list_elemContext;
-
-Output_dml_list_elemContext.prototype.output_column_name = function() {
- return this.getTypedRuleContext(Output_column_nameContext,0);
-};
-
-Output_dml_list_elemContext.prototype.expression = function() {
- return this.getTypedRuleContext(ExpressionContext,0);
-};
-
-Output_dml_list_elemContext.prototype.as_column_alias = function() {
- return this.getTypedRuleContext(As_column_aliasContext,0);
-};
-
-Output_dml_list_elemContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterOutput_dml_list_elem(this);
- }
-};
-
-Output_dml_list_elemContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitOutput_dml_list_elem(this);
- }
-};
-
-Output_dml_list_elemContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitOutput_dml_list_elem(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Output_dml_list_elemContext = Output_dml_list_elemContext;
-
-TSqlParser.prototype.output_dml_list_elem = function() {
-
- var localctx = new Output_dml_list_elemContext(this, this._ctx, this.state);
- this.enterRule(localctx, 452, TSqlParser.RULE_output_dml_list_elem);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 6065;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,777,this._ctx);
- switch(la_) {
- case 1:
- this.state = 6063;
- this.output_column_name();
- break;
-
- case 2:
- this.state = 6064;
- this.expression(0);
- break;
-
- }
- this.state = 6068;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,778,this._ctx);
- if(la_===1) {
- this.state = 6067;
- this.as_column_alias();
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Output_column_nameContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_output_column_name;
- return this;
-}
-
-Output_column_nameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Output_column_nameContext.prototype.constructor = Output_column_nameContext;
-
-Output_column_nameContext.prototype.DOT = function() {
- return this.getToken(TSqlParser.DOT, 0);
-};
-
-Output_column_nameContext.prototype.DELETED = function() {
- return this.getToken(TSqlParser.DELETED, 0);
-};
-
-Output_column_nameContext.prototype.INSERTED = function() {
- return this.getToken(TSqlParser.INSERTED, 0);
-};
-
-Output_column_nameContext.prototype.table_name = function() {
- return this.getTypedRuleContext(Table_nameContext,0);
-};
-
-Output_column_nameContext.prototype.STAR = function() {
- return this.getToken(TSqlParser.STAR, 0);
-};
-
-Output_column_nameContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Output_column_nameContext.prototype.DOLLAR_ACTION = function() {
- return this.getToken(TSqlParser.DOLLAR_ACTION, 0);
-};
-
-Output_column_nameContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterOutput_column_name(this);
- }
-};
-
-Output_column_nameContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitOutput_column_name(this);
- }
-};
-
-Output_column_nameContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitOutput_column_name(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Output_column_nameContext = Output_column_nameContext;
-
-TSqlParser.prototype.output_column_name = function() {
-
- var localctx = new Output_column_nameContext(this, this._ctx, this.state);
- this.enterRule(localctx, 454, TSqlParser.RULE_output_column_name);
- try {
- this.state = 6081;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.BLOCKING_HIERARCHY:
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.enterOuterAlt(localctx, 1);
- this.state = 6073;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,779,this._ctx);
- switch(la_) {
- case 1:
- this.state = 6070;
- this.match(TSqlParser.DELETED);
- break;
-
- case 2:
- this.state = 6071;
- this.match(TSqlParser.INSERTED);
- break;
-
- case 3:
- this.state = 6072;
- this.table_name();
- break;
-
- }
- this.state = 6075;
- this.match(TSqlParser.DOT);
- this.state = 6078;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.STAR:
- this.state = 6076;
- this.match(TSqlParser.STAR);
- break;
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.state = 6077;
- this.id();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
- case TSqlParser.DOLLAR_ACTION:
- this.enterOuterAlt(localctx, 2);
- this.state = 6080;
- this.match(TSqlParser.DOLLAR_ACTION);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_databaseContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_database;
- this.database = null; // IdContext
- this.collation_name = null; // IdContext
- return this;
-}
-
-Create_databaseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_databaseContext.prototype.constructor = Create_databaseContext;
-
-Create_databaseContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_databaseContext.prototype.DATABASE = function() {
- return this.getToken(TSqlParser.DATABASE, 0);
-};
-
-Create_databaseContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Create_databaseContext.prototype.CONTAINMENT = function() {
- return this.getToken(TSqlParser.CONTAINMENT, 0);
-};
-
-Create_databaseContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Create_databaseContext.prototype.ON = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ON);
- } else {
- return this.getToken(TSqlParser.ON, i);
- }
-};
-
-
-Create_databaseContext.prototype.database_file_spec = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Database_file_specContext);
- } else {
- return this.getTypedRuleContext(Database_file_specContext,i);
- }
-};
-
-Create_databaseContext.prototype.LOG = function() {
- return this.getToken(TSqlParser.LOG, 0);
-};
-
-Create_databaseContext.prototype.COLLATE = function() {
- return this.getToken(TSqlParser.COLLATE, 0);
-};
-
-Create_databaseContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Create_databaseContext.prototype.create_database_option = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Create_database_optionContext);
- } else {
- return this.getTypedRuleContext(Create_database_optionContext,i);
- }
-};
-
-Create_databaseContext.prototype.NONE = function() {
- return this.getToken(TSqlParser.NONE, 0);
-};
-
-Create_databaseContext.prototype.PARTIAL = function() {
- return this.getToken(TSqlParser.PARTIAL, 0);
-};
-
-Create_databaseContext.prototype.PRIMARY = function() {
- return this.getToken(TSqlParser.PRIMARY, 0);
-};
-
-Create_databaseContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Create_databaseContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_database(this);
- }
-};
-
-Create_databaseContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_database(this);
- }
-};
-
-Create_databaseContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_database(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_databaseContext = Create_databaseContext;
-
-TSqlParser.prototype.create_database = function() {
-
- var localctx = new Create_databaseContext(this, this._ctx, this.state);
- this.enterRule(localctx, 456, TSqlParser.RULE_create_database);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 6083;
- this.match(TSqlParser.CREATE);
- this.state = 6084;
- this.match(TSqlParser.DATABASE);
-
- this.state = 6085;
- localctx.database = this.id();
- this.state = 6089;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.CONTAINMENT) {
- this.state = 6086;
- this.match(TSqlParser.CONTAINMENT);
- this.state = 6087;
- this.match(TSqlParser.EQUAL);
- this.state = 6088;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.NONE || _la===TSqlParser.PARTIAL)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- }
-
- this.state = 6103;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.ON) {
- this.state = 6091;
- this.match(TSqlParser.ON);
- this.state = 6093;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.PRIMARY) {
- this.state = 6092;
- this.match(TSqlParser.PRIMARY);
- }
-
- this.state = 6095;
- this.database_file_spec();
- this.state = 6100;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 6096;
- this.match(TSqlParser.COMMA);
- this.state = 6097;
- this.database_file_spec();
- this.state = 6102;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- }
-
- this.state = 6115;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.LOG) {
- this.state = 6105;
- this.match(TSqlParser.LOG);
- this.state = 6106;
- this.match(TSqlParser.ON);
- this.state = 6107;
- this.database_file_spec();
- this.state = 6112;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 6108;
- this.match(TSqlParser.COMMA);
- this.state = 6109;
- this.database_file_spec();
- this.state = 6114;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- }
-
- this.state = 6119;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COLLATE) {
- this.state = 6117;
- this.match(TSqlParser.COLLATE);
- this.state = 6118;
- localctx.collation_name = this.id();
- }
-
- this.state = 6130;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,790,this._ctx);
- if(la_===1) {
- this.state = 6121;
- this.match(TSqlParser.WITH);
- this.state = 6122;
- this.create_database_option();
- this.state = 6127;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 6123;
- this.match(TSqlParser.COMMA);
- this.state = 6124;
- this.create_database_option();
- this.state = 6129;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_indexContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_index;
- this.where = null; // Search_conditionContext
- return this;
-}
-
-Create_indexContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_indexContext.prototype.constructor = Create_indexContext;
-
-Create_indexContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_indexContext.prototype.INDEX = function() {
- return this.getToken(TSqlParser.INDEX, 0);
-};
-
-Create_indexContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Create_indexContext.prototype.ON = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ON);
- } else {
- return this.getToken(TSqlParser.ON, i);
- }
-};
-
-
-Create_indexContext.prototype.table_name_with_hint = function() {
- return this.getTypedRuleContext(Table_name_with_hintContext,0);
-};
-
-Create_indexContext.prototype.LR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.LR_BRACKET);
- } else {
- return this.getToken(TSqlParser.LR_BRACKET, i);
- }
-};
-
-
-Create_indexContext.prototype.column_name_list_with_order = function() {
- return this.getTypedRuleContext(Column_name_list_with_orderContext,0);
-};
-
-Create_indexContext.prototype.RR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.RR_BRACKET);
- } else {
- return this.getToken(TSqlParser.RR_BRACKET, i);
- }
-};
-
-
-Create_indexContext.prototype.UNIQUE = function() {
- return this.getToken(TSqlParser.UNIQUE, 0);
-};
-
-Create_indexContext.prototype.clustered = function() {
- return this.getTypedRuleContext(ClusteredContext,0);
-};
-
-Create_indexContext.prototype.INCLUDE = function() {
- return this.getToken(TSqlParser.INCLUDE, 0);
-};
-
-Create_indexContext.prototype.column_name_list = function() {
- return this.getTypedRuleContext(Column_name_listContext,0);
-};
-
-Create_indexContext.prototype.WHERE = function() {
- return this.getToken(TSqlParser.WHERE, 0);
-};
-
-Create_indexContext.prototype.index_options = function() {
- return this.getTypedRuleContext(Index_optionsContext,0);
-};
-
-Create_indexContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Create_indexContext.prototype.search_condition = function() {
- return this.getTypedRuleContext(Search_conditionContext,0);
-};
-
-Create_indexContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_index(this);
- }
-};
-
-Create_indexContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_index(this);
- }
-};
-
-Create_indexContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_index(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_indexContext = Create_indexContext;
-
-TSqlParser.prototype.create_index = function() {
-
- var localctx = new Create_indexContext(this, this._ctx, this.state);
- this.enterRule(localctx, 458, TSqlParser.RULE_create_index);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 6132;
- this.match(TSqlParser.CREATE);
- this.state = 6134;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.UNIQUE) {
- this.state = 6133;
- this.match(TSqlParser.UNIQUE);
- }
-
- this.state = 6137;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.CLUSTERED || _la===TSqlParser.NONCLUSTERED) {
- this.state = 6136;
- this.clustered();
- }
-
- this.state = 6139;
- this.match(TSqlParser.INDEX);
- this.state = 6140;
- this.id();
- this.state = 6141;
- this.match(TSqlParser.ON);
- this.state = 6142;
- this.table_name_with_hint();
- this.state = 6143;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 6144;
- this.column_name_list_with_order();
- this.state = 6145;
- this.match(TSqlParser.RR_BRACKET);
- this.state = 6151;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.INCLUDE) {
- this.state = 6146;
- this.match(TSqlParser.INCLUDE);
- this.state = 6147;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 6148;
- this.column_name_list();
- this.state = 6149;
- this.match(TSqlParser.RR_BRACKET);
- }
-
- this.state = 6155;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.WHERE) {
- this.state = 6153;
- this.match(TSqlParser.WHERE);
- this.state = 6154;
- localctx.where = this.search_condition();
- }
-
- this.state = 6158;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,795,this._ctx);
- if(la_===1) {
- this.state = 6157;
- this.index_options();
-
- }
- this.state = 6162;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.ON) {
- this.state = 6160;
- this.match(TSqlParser.ON);
- this.state = 6161;
- this.id();
- }
-
- this.state = 6165;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,797,this._ctx);
- if(la_===1) {
- this.state = 6164;
- this.match(TSqlParser.SEMI);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_or_alter_procedureContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_or_alter_procedure;
- this.proc = null; // Token
- return this;
-}
-
-Create_or_alter_procedureContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_or_alter_procedureContext.prototype.constructor = Create_or_alter_procedureContext;
-
-Create_or_alter_procedureContext.prototype.func_proc_name_schema = function() {
- return this.getTypedRuleContext(Func_proc_name_schemaContext,0);
-};
-
-Create_or_alter_procedureContext.prototype.AS = function() {
- return this.getToken(TSqlParser.AS, 0);
-};
-
-Create_or_alter_procedureContext.prototype.sql_clauses = function() {
- return this.getTypedRuleContext(Sql_clausesContext,0);
-};
-
-Create_or_alter_procedureContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Create_or_alter_procedureContext.prototype.PROC = function() {
- return this.getToken(TSqlParser.PROC, 0);
-};
-
-Create_or_alter_procedureContext.prototype.PROCEDURE = function() {
- return this.getToken(TSqlParser.PROCEDURE, 0);
-};
-
-Create_or_alter_procedureContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Create_or_alter_procedureContext.prototype.DECIMAL = function() {
- return this.getToken(TSqlParser.DECIMAL, 0);
-};
-
-Create_or_alter_procedureContext.prototype.procedure_param = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Procedure_paramContext);
- } else {
- return this.getTypedRuleContext(Procedure_paramContext,i);
- }
-};
-
-Create_or_alter_procedureContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Create_or_alter_procedureContext.prototype.procedure_option = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Procedure_optionContext);
- } else {
- return this.getTypedRuleContext(Procedure_optionContext,i);
- }
-};
-
-Create_or_alter_procedureContext.prototype.FOR = function() {
- return this.getToken(TSqlParser.FOR, 0);
-};
-
-Create_or_alter_procedureContext.prototype.REPLICATION = function() {
- return this.getToken(TSqlParser.REPLICATION, 0);
-};
-
-Create_or_alter_procedureContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_or_alter_procedureContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Create_or_alter_procedureContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Create_or_alter_procedureContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Create_or_alter_procedureContext.prototype.OR = function() {
- return this.getToken(TSqlParser.OR, 0);
-};
-
-Create_or_alter_procedureContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_or_alter_procedure(this);
- }
-};
-
-Create_or_alter_procedureContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_or_alter_procedure(this);
- }
-};
-
-Create_or_alter_procedureContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_or_alter_procedure(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_or_alter_procedureContext = Create_or_alter_procedureContext;
-
-TSqlParser.prototype.create_or_alter_procedure = function() {
-
- var localctx = new Create_or_alter_procedureContext(this, this._ctx, this.state);
- this.enterRule(localctx, 460, TSqlParser.RULE_create_or_alter_procedure);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 6173;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.CREATE:
- this.state = 6167;
- this.match(TSqlParser.CREATE);
- this.state = 6170;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.OR) {
- this.state = 6168;
- this.match(TSqlParser.OR);
- this.state = 6169;
- this.match(TSqlParser.ALTER);
- }
-
- break;
- case TSqlParser.ALTER:
- this.state = 6172;
- this.match(TSqlParser.ALTER);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 6175;
- localctx.proc = this._input.LT(1);
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.PROC || _la===TSqlParser.PROCEDURE)) {
- localctx.proc = this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 6176;
- this.func_proc_name_schema();
- this.state = 6179;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.SEMI) {
- this.state = 6177;
- this.match(TSqlParser.SEMI);
- this.state = 6178;
- this.match(TSqlParser.DECIMAL);
- }
-
- this.state = 6195;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.LOCAL_ID || _la===TSqlParser.LR_BRACKET) {
- this.state = 6182;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.LR_BRACKET) {
- this.state = 6181;
- this.match(TSqlParser.LR_BRACKET);
- }
-
- this.state = 6184;
- this.procedure_param();
- this.state = 6189;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 6185;
- this.match(TSqlParser.COMMA);
- this.state = 6186;
- this.procedure_param();
- this.state = 6191;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- this.state = 6193;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.RR_BRACKET) {
- this.state = 6192;
- this.match(TSqlParser.RR_BRACKET);
- }
-
- }
-
- this.state = 6206;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.WITH) {
- this.state = 6197;
- this.match(TSqlParser.WITH);
- this.state = 6198;
- this.procedure_option();
- this.state = 6203;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 6199;
- this.match(TSqlParser.COMMA);
- this.state = 6200;
- this.procedure_option();
- this.state = 6205;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- }
-
- this.state = 6210;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.FOR) {
- this.state = 6208;
- this.match(TSqlParser.FOR);
- this.state = 6209;
- this.match(TSqlParser.REPLICATION);
- }
-
- this.state = 6212;
- this.match(TSqlParser.AS);
- this.state = 6213;
- this.sql_clauses();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_or_alter_triggerContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_or_alter_trigger;
- return this;
-}
-
-Create_or_alter_triggerContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_or_alter_triggerContext.prototype.constructor = Create_or_alter_triggerContext;
-
-Create_or_alter_triggerContext.prototype.create_or_alter_dml_trigger = function() {
- return this.getTypedRuleContext(Create_or_alter_dml_triggerContext,0);
-};
-
-Create_or_alter_triggerContext.prototype.create_or_alter_ddl_trigger = function() {
- return this.getTypedRuleContext(Create_or_alter_ddl_triggerContext,0);
-};
-
-Create_or_alter_triggerContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_or_alter_trigger(this);
- }
-};
-
-Create_or_alter_triggerContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_or_alter_trigger(this);
- }
-};
-
-Create_or_alter_triggerContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_or_alter_trigger(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_or_alter_triggerContext = Create_or_alter_triggerContext;
-
-TSqlParser.prototype.create_or_alter_trigger = function() {
-
- var localctx = new Create_or_alter_triggerContext(this, this._ctx, this.state);
- this.enterRule(localctx, 462, TSqlParser.RULE_create_or_alter_trigger);
- try {
- this.state = 6217;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,808,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 6215;
- this.create_or_alter_dml_trigger();
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 6216;
- this.create_or_alter_ddl_trigger();
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_or_alter_dml_triggerContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_or_alter_dml_trigger;
- return this;
-}
-
-Create_or_alter_dml_triggerContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_or_alter_dml_triggerContext.prototype.constructor = Create_or_alter_dml_triggerContext;
-
-Create_or_alter_dml_triggerContext.prototype.TRIGGER = function() {
- return this.getToken(TSqlParser.TRIGGER, 0);
-};
-
-Create_or_alter_dml_triggerContext.prototype.simple_name = function() {
- return this.getTypedRuleContext(Simple_nameContext,0);
-};
-
-Create_or_alter_dml_triggerContext.prototype.ON = function() {
- return this.getToken(TSqlParser.ON, 0);
-};
-
-Create_or_alter_dml_triggerContext.prototype.table_name = function() {
- return this.getTypedRuleContext(Table_nameContext,0);
-};
-
-Create_or_alter_dml_triggerContext.prototype.dml_trigger_operation = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Dml_trigger_operationContext);
- } else {
- return this.getTypedRuleContext(Dml_trigger_operationContext,i);
- }
-};
-
-Create_or_alter_dml_triggerContext.prototype.AS = function() {
- return this.getToken(TSqlParser.AS, 0);
-};
-
-Create_or_alter_dml_triggerContext.prototype.sql_clauses = function() {
- return this.getTypedRuleContext(Sql_clausesContext,0);
-};
-
-Create_or_alter_dml_triggerContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Create_or_alter_dml_triggerContext.prototype.FOR = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.FOR);
- } else {
- return this.getToken(TSqlParser.FOR, i);
- }
-};
-
-
-Create_or_alter_dml_triggerContext.prototype.AFTER = function() {
- return this.getToken(TSqlParser.AFTER, 0);
-};
-
-Create_or_alter_dml_triggerContext.prototype.INSTEAD = function() {
- return this.getToken(TSqlParser.INSTEAD, 0);
-};
-
-Create_or_alter_dml_triggerContext.prototype.OF = function() {
- return this.getToken(TSqlParser.OF, 0);
-};
-
-Create_or_alter_dml_triggerContext.prototype.WITH = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.WITH);
- } else {
- return this.getToken(TSqlParser.WITH, i);
- }
-};
-
-
-Create_or_alter_dml_triggerContext.prototype.dml_trigger_option = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Dml_trigger_optionContext);
- } else {
- return this.getTypedRuleContext(Dml_trigger_optionContext,i);
- }
-};
-
-Create_or_alter_dml_triggerContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Create_or_alter_dml_triggerContext.prototype.APPEND = function() {
- return this.getToken(TSqlParser.APPEND, 0);
-};
-
-Create_or_alter_dml_triggerContext.prototype.NOT = function() {
- return this.getToken(TSqlParser.NOT, 0);
-};
-
-Create_or_alter_dml_triggerContext.prototype.REPLICATION = function() {
- return this.getToken(TSqlParser.REPLICATION, 0);
-};
-
-Create_or_alter_dml_triggerContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_or_alter_dml_triggerContext.prototype.OR = function() {
- return this.getToken(TSqlParser.OR, 0);
-};
-
-Create_or_alter_dml_triggerContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_or_alter_dml_trigger(this);
- }
-};
-
-Create_or_alter_dml_triggerContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_or_alter_dml_trigger(this);
- }
-};
-
-Create_or_alter_dml_triggerContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_or_alter_dml_trigger(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_or_alter_dml_triggerContext = Create_or_alter_dml_triggerContext;
-
-TSqlParser.prototype.create_or_alter_dml_trigger = function() {
-
- var localctx = new Create_or_alter_dml_triggerContext(this, this._ctx, this.state);
- this.enterRule(localctx, 464, TSqlParser.RULE_create_or_alter_dml_trigger);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 6225;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.CREATE:
- this.state = 6219;
- this.match(TSqlParser.CREATE);
- this.state = 6222;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.OR) {
- this.state = 6220;
- this.match(TSqlParser.OR);
- this.state = 6221;
- this.match(TSqlParser.ALTER);
- }
-
- break;
- case TSqlParser.ALTER:
- this.state = 6224;
- this.match(TSqlParser.ALTER);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 6227;
- this.match(TSqlParser.TRIGGER);
- this.state = 6228;
- this.simple_name();
- this.state = 6229;
- this.match(TSqlParser.ON);
- this.state = 6230;
- this.table_name();
- this.state = 6240;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.WITH) {
- this.state = 6231;
- this.match(TSqlParser.WITH);
- this.state = 6232;
- this.dml_trigger_option();
- this.state = 6237;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 6233;
- this.match(TSqlParser.COMMA);
- this.state = 6234;
- this.dml_trigger_option();
- this.state = 6239;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- }
-
- this.state = 6246;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.FOR:
- this.state = 6242;
- this.match(TSqlParser.FOR);
- break;
- case TSqlParser.AFTER:
- this.state = 6243;
- this.match(TSqlParser.AFTER);
- break;
- case TSqlParser.INSTEAD:
- this.state = 6244;
- this.match(TSqlParser.INSTEAD);
- this.state = 6245;
- this.match(TSqlParser.OF);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 6248;
- this.dml_trigger_operation();
- this.state = 6253;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 6249;
- this.match(TSqlParser.COMMA);
- this.state = 6250;
- this.dml_trigger_operation();
- this.state = 6255;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- this.state = 6258;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.WITH) {
- this.state = 6256;
- this.match(TSqlParser.WITH);
- this.state = 6257;
- this.match(TSqlParser.APPEND);
- }
-
- this.state = 6263;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.NOT) {
- this.state = 6260;
- this.match(TSqlParser.NOT);
- this.state = 6261;
- this.match(TSqlParser.FOR);
- this.state = 6262;
- this.match(TSqlParser.REPLICATION);
- }
-
- this.state = 6265;
- this.match(TSqlParser.AS);
- this.state = 6266;
- this.sql_clauses();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Dml_trigger_optionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_dml_trigger_option;
- return this;
-}
-
-Dml_trigger_optionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Dml_trigger_optionContext.prototype.constructor = Dml_trigger_optionContext;
-
-Dml_trigger_optionContext.prototype.ENCRYPTION = function() {
- return this.getToken(TSqlParser.ENCRYPTION, 0);
-};
-
-Dml_trigger_optionContext.prototype.execute_clause = function() {
- return this.getTypedRuleContext(Execute_clauseContext,0);
-};
-
-Dml_trigger_optionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDml_trigger_option(this);
- }
-};
-
-Dml_trigger_optionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDml_trigger_option(this);
- }
-};
-
-Dml_trigger_optionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDml_trigger_option(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Dml_trigger_optionContext = Dml_trigger_optionContext;
-
-TSqlParser.prototype.dml_trigger_option = function() {
-
- var localctx = new Dml_trigger_optionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 466, TSqlParser.RULE_dml_trigger_option);
- try {
- this.state = 6270;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.ENCRYPTION:
- this.enterOuterAlt(localctx, 1);
- this.state = 6268;
- this.match(TSqlParser.ENCRYPTION);
- break;
- case TSqlParser.EXECUTE:
- this.enterOuterAlt(localctx, 2);
- this.state = 6269;
- this.execute_clause();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Dml_trigger_operationContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_dml_trigger_operation;
- return this;
-}
-
-Dml_trigger_operationContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Dml_trigger_operationContext.prototype.constructor = Dml_trigger_operationContext;
-
-Dml_trigger_operationContext.prototype.INSERT = function() {
- return this.getToken(TSqlParser.INSERT, 0);
-};
-
-Dml_trigger_operationContext.prototype.UPDATE = function() {
- return this.getToken(TSqlParser.UPDATE, 0);
-};
-
-Dml_trigger_operationContext.prototype.DELETE = function() {
- return this.getToken(TSqlParser.DELETE, 0);
-};
-
-Dml_trigger_operationContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDml_trigger_operation(this);
- }
-};
-
-Dml_trigger_operationContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDml_trigger_operation(this);
- }
-};
-
-Dml_trigger_operationContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDml_trigger_operation(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Dml_trigger_operationContext = Dml_trigger_operationContext;
-
-TSqlParser.prototype.dml_trigger_operation = function() {
-
- var localctx = new Dml_trigger_operationContext(this, this._ctx, this.state);
- this.enterRule(localctx, 468, TSqlParser.RULE_dml_trigger_operation);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 6272;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.DELETE || _la===TSqlParser.INSERT || _la===TSqlParser.UPDATE)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_or_alter_ddl_triggerContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_or_alter_ddl_trigger;
- return this;
-}
-
-Create_or_alter_ddl_triggerContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_or_alter_ddl_triggerContext.prototype.constructor = Create_or_alter_ddl_triggerContext;
-
-Create_or_alter_ddl_triggerContext.prototype.TRIGGER = function() {
- return this.getToken(TSqlParser.TRIGGER, 0);
-};
-
-Create_or_alter_ddl_triggerContext.prototype.simple_id = function() {
- return this.getTypedRuleContext(Simple_idContext,0);
-};
-
-Create_or_alter_ddl_triggerContext.prototype.ON = function() {
- return this.getToken(TSqlParser.ON, 0);
-};
-
-Create_or_alter_ddl_triggerContext.prototype.ddl_trigger_operation = function() {
- return this.getTypedRuleContext(Ddl_trigger_operationContext,0);
-};
-
-Create_or_alter_ddl_triggerContext.prototype.AS = function() {
- return this.getToken(TSqlParser.AS, 0);
-};
-
-Create_or_alter_ddl_triggerContext.prototype.sql_clauses = function() {
- return this.getTypedRuleContext(Sql_clausesContext,0);
-};
-
-Create_or_alter_ddl_triggerContext.prototype.FOR = function() {
- return this.getToken(TSqlParser.FOR, 0);
-};
-
-Create_or_alter_ddl_triggerContext.prototype.AFTER = function() {
- return this.getToken(TSqlParser.AFTER, 0);
-};
-
-Create_or_alter_ddl_triggerContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Create_or_alter_ddl_triggerContext.prototype.ALL = function() {
- return this.getToken(TSqlParser.ALL, 0);
-};
-
-Create_or_alter_ddl_triggerContext.prototype.SERVER = function() {
- return this.getToken(TSqlParser.SERVER, 0);
-};
-
-Create_or_alter_ddl_triggerContext.prototype.DATABASE = function() {
- return this.getToken(TSqlParser.DATABASE, 0);
-};
-
-Create_or_alter_ddl_triggerContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Create_or_alter_ddl_triggerContext.prototype.dml_trigger_option = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Dml_trigger_optionContext);
- } else {
- return this.getTypedRuleContext(Dml_trigger_optionContext,i);
- }
-};
-
-Create_or_alter_ddl_triggerContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Create_or_alter_ddl_triggerContext.prototype.dml_trigger_operation = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Dml_trigger_operationContext);
- } else {
- return this.getTypedRuleContext(Dml_trigger_operationContext,i);
- }
-};
-
-Create_or_alter_ddl_triggerContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_or_alter_ddl_triggerContext.prototype.OR = function() {
- return this.getToken(TSqlParser.OR, 0);
-};
-
-Create_or_alter_ddl_triggerContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_or_alter_ddl_trigger(this);
- }
-};
-
-Create_or_alter_ddl_triggerContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_or_alter_ddl_trigger(this);
- }
-};
-
-Create_or_alter_ddl_triggerContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_or_alter_ddl_trigger(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_or_alter_ddl_triggerContext = Create_or_alter_ddl_triggerContext;
-
-TSqlParser.prototype.create_or_alter_ddl_trigger = function() {
-
- var localctx = new Create_or_alter_ddl_triggerContext(this, this._ctx, this.state);
- this.enterRule(localctx, 470, TSqlParser.RULE_create_or_alter_ddl_trigger);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 6280;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.CREATE:
- this.state = 6274;
- this.match(TSqlParser.CREATE);
- this.state = 6277;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.OR) {
- this.state = 6275;
- this.match(TSqlParser.OR);
- this.state = 6276;
- this.match(TSqlParser.ALTER);
- }
-
- break;
- case TSqlParser.ALTER:
- this.state = 6279;
- this.match(TSqlParser.ALTER);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 6282;
- this.match(TSqlParser.TRIGGER);
- this.state = 6283;
- this.simple_id();
- this.state = 6284;
- this.match(TSqlParser.ON);
- this.state = 6288;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.ALL:
- this.state = 6285;
- this.match(TSqlParser.ALL);
- this.state = 6286;
- this.match(TSqlParser.SERVER);
- break;
- case TSqlParser.DATABASE:
- this.state = 6287;
- this.match(TSqlParser.DATABASE);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 6299;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.WITH) {
- this.state = 6290;
- this.match(TSqlParser.WITH);
- this.state = 6291;
- this.dml_trigger_option();
- this.state = 6296;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 6292;
- this.match(TSqlParser.COMMA);
- this.state = 6293;
- this.dml_trigger_option();
- this.state = 6298;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- }
-
- this.state = 6301;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.FOR || _la===TSqlParser.AFTER)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 6302;
- this.ddl_trigger_operation();
- this.state = 6307;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 6303;
- this.match(TSqlParser.COMMA);
- this.state = 6304;
- this.dml_trigger_operation();
- this.state = 6309;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- this.state = 6310;
- this.match(TSqlParser.AS);
- this.state = 6311;
- this.sql_clauses();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Ddl_trigger_operationContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_ddl_trigger_operation;
- return this;
-}
-
-Ddl_trigger_operationContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Ddl_trigger_operationContext.prototype.constructor = Ddl_trigger_operationContext;
-
-Ddl_trigger_operationContext.prototype.simple_id = function() {
- return this.getTypedRuleContext(Simple_idContext,0);
-};
-
-Ddl_trigger_operationContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDdl_trigger_operation(this);
- }
-};
-
-Ddl_trigger_operationContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDdl_trigger_operation(this);
- }
-};
-
-Ddl_trigger_operationContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDdl_trigger_operation(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Ddl_trigger_operationContext = Ddl_trigger_operationContext;
-
-TSqlParser.prototype.ddl_trigger_operation = function() {
-
- var localctx = new Ddl_trigger_operationContext(this, this._ctx, this.state);
- this.enterRule(localctx, 472, TSqlParser.RULE_ddl_trigger_operation);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 6313;
- this.simple_id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_or_alter_functionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_or_alter_function;
- return this;
-}
-
-Create_or_alter_functionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_or_alter_functionContext.prototype.constructor = Create_or_alter_functionContext;
-
-Create_or_alter_functionContext.prototype.FUNCTION = function() {
- return this.getToken(TSqlParser.FUNCTION, 0);
-};
-
-Create_or_alter_functionContext.prototype.func_proc_name_schema = function() {
- return this.getTypedRuleContext(Func_proc_name_schemaContext,0);
-};
-
-Create_or_alter_functionContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Create_or_alter_functionContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Create_or_alter_functionContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Create_or_alter_functionContext.prototype.func_body_returns_select = function() {
- return this.getTypedRuleContext(Func_body_returns_selectContext,0);
-};
-
-Create_or_alter_functionContext.prototype.func_body_returns_table = function() {
- return this.getTypedRuleContext(Func_body_returns_tableContext,0);
-};
-
-Create_or_alter_functionContext.prototype.func_body_returns_scalar = function() {
- return this.getTypedRuleContext(Func_body_returns_scalarContext,0);
-};
-
-Create_or_alter_functionContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Create_or_alter_functionContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_or_alter_functionContext.prototype.procedure_param = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Procedure_paramContext);
- } else {
- return this.getTypedRuleContext(Procedure_paramContext,i);
- }
-};
-
-Create_or_alter_functionContext.prototype.OR = function() {
- return this.getToken(TSqlParser.OR, 0);
-};
-
-Create_or_alter_functionContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Create_or_alter_functionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_or_alter_function(this);
- }
-};
-
-Create_or_alter_functionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_or_alter_function(this);
- }
-};
-
-Create_or_alter_functionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_or_alter_function(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_or_alter_functionContext = Create_or_alter_functionContext;
-
-TSqlParser.prototype.create_or_alter_function = function() {
-
- var localctx = new Create_or_alter_functionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 474, TSqlParser.RULE_create_or_alter_function);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 6321;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.CREATE:
- this.state = 6315;
- this.match(TSqlParser.CREATE);
- this.state = 6318;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.OR) {
- this.state = 6316;
- this.match(TSqlParser.OR);
- this.state = 6317;
- this.match(TSqlParser.ALTER);
- }
-
- break;
- case TSqlParser.ALTER:
- this.state = 6320;
- this.match(TSqlParser.ALTER);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 6323;
- this.match(TSqlParser.FUNCTION);
- this.state = 6324;
- this.func_proc_name_schema();
- this.state = 6338;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,827,this._ctx);
- switch(la_) {
- case 1:
- this.state = 6325;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 6326;
- this.procedure_param();
- this.state = 6331;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 6327;
- this.match(TSqlParser.COMMA);
- this.state = 6328;
- this.procedure_param();
- this.state = 6333;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- this.state = 6334;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- case 2:
- this.state = 6336;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 6337;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- }
- this.state = 6343;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,828,this._ctx);
- switch(la_) {
- case 1:
- this.state = 6340;
- this.func_body_returns_select();
- break;
-
- case 2:
- this.state = 6341;
- this.func_body_returns_table();
- break;
-
- case 3:
- this.state = 6342;
- this.func_body_returns_scalar();
- break;
-
- }
- this.state = 6346;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,829,this._ctx);
- if(la_===1) {
- this.state = 6345;
- this.match(TSqlParser.SEMI);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Func_body_returns_selectContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_func_body_returns_select;
- return this;
-}
-
-Func_body_returns_selectContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Func_body_returns_selectContext.prototype.constructor = Func_body_returns_selectContext;
-
-Func_body_returns_selectContext.prototype.RETURNS = function() {
- return this.getToken(TSqlParser.RETURNS, 0);
-};
-
-Func_body_returns_selectContext.prototype.TABLE = function() {
- return this.getToken(TSqlParser.TABLE, 0);
-};
-
-Func_body_returns_selectContext.prototype.RETURN = function() {
- return this.getToken(TSqlParser.RETURN, 0);
-};
-
-Func_body_returns_selectContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Func_body_returns_selectContext.prototype.select_statement = function() {
- return this.getTypedRuleContext(Select_statementContext,0);
-};
-
-Func_body_returns_selectContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Func_body_returns_selectContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Func_body_returns_selectContext.prototype.function_option = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Function_optionContext);
- } else {
- return this.getTypedRuleContext(Function_optionContext,i);
- }
-};
-
-Func_body_returns_selectContext.prototype.AS = function() {
- return this.getToken(TSqlParser.AS, 0);
-};
-
-Func_body_returns_selectContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Func_body_returns_selectContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterFunc_body_returns_select(this);
- }
-};
-
-Func_body_returns_selectContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitFunc_body_returns_select(this);
- }
-};
-
-Func_body_returns_selectContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitFunc_body_returns_select(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Func_body_returns_selectContext = Func_body_returns_selectContext;
-
-TSqlParser.prototype.func_body_returns_select = function() {
-
- var localctx = new Func_body_returns_selectContext(this, this._ctx, this.state);
- this.enterRule(localctx, 476, TSqlParser.RULE_func_body_returns_select);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 6348;
- this.match(TSqlParser.RETURNS);
- this.state = 6349;
- this.match(TSqlParser.TABLE);
- this.state = 6359;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.WITH) {
- this.state = 6350;
- this.match(TSqlParser.WITH);
- this.state = 6351;
- this.function_option();
- this.state = 6356;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 6352;
- this.match(TSqlParser.COMMA);
- this.state = 6353;
- this.function_option();
- this.state = 6358;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- }
-
- this.state = 6362;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.AS) {
- this.state = 6361;
- this.match(TSqlParser.AS);
- }
-
- this.state = 6364;
- this.match(TSqlParser.RETURN);
- this.state = 6370;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,833,this._ctx);
- switch(la_) {
- case 1:
- this.state = 6365;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 6366;
- this.select_statement();
- this.state = 6367;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- case 2:
- this.state = 6369;
- this.select_statement();
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Func_body_returns_tableContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_func_body_returns_table;
- return this;
-}
-
-Func_body_returns_tableContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Func_body_returns_tableContext.prototype.constructor = Func_body_returns_tableContext;
-
-Func_body_returns_tableContext.prototype.RETURNS = function() {
- return this.getToken(TSqlParser.RETURNS, 0);
-};
-
-Func_body_returns_tableContext.prototype.LOCAL_ID = function() {
- return this.getToken(TSqlParser.LOCAL_ID, 0);
-};
-
-Func_body_returns_tableContext.prototype.table_type_definition = function() {
- return this.getTypedRuleContext(Table_type_definitionContext,0);
-};
-
-Func_body_returns_tableContext.prototype.BEGIN = function() {
- return this.getToken(TSqlParser.BEGIN, 0);
-};
-
-Func_body_returns_tableContext.prototype.RETURN = function() {
- return this.getToken(TSqlParser.RETURN, 0);
-};
-
-Func_body_returns_tableContext.prototype.END = function() {
- return this.getToken(TSqlParser.END, 0);
-};
-
-Func_body_returns_tableContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Func_body_returns_tableContext.prototype.function_option = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Function_optionContext);
- } else {
- return this.getTypedRuleContext(Function_optionContext,i);
- }
-};
-
-Func_body_returns_tableContext.prototype.AS = function() {
- return this.getToken(TSqlParser.AS, 0);
-};
-
-Func_body_returns_tableContext.prototype.sql_clause = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Sql_clauseContext);
- } else {
- return this.getTypedRuleContext(Sql_clauseContext,i);
- }
-};
-
-Func_body_returns_tableContext.prototype.SEMI = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.SEMI);
- } else {
- return this.getToken(TSqlParser.SEMI, i);
- }
-};
-
-
-Func_body_returns_tableContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Func_body_returns_tableContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterFunc_body_returns_table(this);
- }
-};
-
-Func_body_returns_tableContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitFunc_body_returns_table(this);
- }
-};
-
-Func_body_returns_tableContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitFunc_body_returns_table(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Func_body_returns_tableContext = Func_body_returns_tableContext;
-
-TSqlParser.prototype.func_body_returns_table = function() {
-
- var localctx = new Func_body_returns_tableContext(this, this._ctx, this.state);
- this.enterRule(localctx, 478, TSqlParser.RULE_func_body_returns_table);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 6372;
- this.match(TSqlParser.RETURNS);
- this.state = 6373;
- this.match(TSqlParser.LOCAL_ID);
- this.state = 6374;
- this.table_type_definition();
- this.state = 6384;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.WITH) {
- this.state = 6375;
- this.match(TSqlParser.WITH);
- this.state = 6376;
- this.function_option();
- this.state = 6381;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 6377;
- this.match(TSqlParser.COMMA);
- this.state = 6378;
- this.function_option();
- this.state = 6383;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- }
-
- this.state = 6387;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.AS) {
- this.state = 6386;
- this.match(TSqlParser.AS);
- }
-
- this.state = 6389;
- this.match(TSqlParser.BEGIN);
- this.state = 6393;
- this._errHandler.sync(this);
- var _alt = this._interp.adaptivePredict(this._input,837,this._ctx)
- while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
- if(_alt===1) {
- this.state = 6390;
- this.sql_clause();
- }
- this.state = 6395;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,837,this._ctx);
- }
-
- this.state = 6396;
- this.match(TSqlParser.RETURN);
- this.state = 6398;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.SEMI) {
- this.state = 6397;
- this.match(TSqlParser.SEMI);
- }
-
- this.state = 6400;
- this.match(TSqlParser.END);
- this.state = 6402;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,839,this._ctx);
- if(la_===1) {
- this.state = 6401;
- this.match(TSqlParser.SEMI);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Func_body_returns_scalarContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_func_body_returns_scalar;
- this.ret = null; // ExpressionContext
- return this;
-}
-
-Func_body_returns_scalarContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Func_body_returns_scalarContext.prototype.constructor = Func_body_returns_scalarContext;
-
-Func_body_returns_scalarContext.prototype.RETURNS = function() {
- return this.getToken(TSqlParser.RETURNS, 0);
-};
-
-Func_body_returns_scalarContext.prototype.data_type = function() {
- return this.getTypedRuleContext(Data_typeContext,0);
-};
-
-Func_body_returns_scalarContext.prototype.BEGIN = function() {
- return this.getToken(TSqlParser.BEGIN, 0);
-};
-
-Func_body_returns_scalarContext.prototype.RETURN = function() {
- return this.getToken(TSqlParser.RETURN, 0);
-};
-
-Func_body_returns_scalarContext.prototype.END = function() {
- return this.getToken(TSqlParser.END, 0);
-};
-
-Func_body_returns_scalarContext.prototype.expression = function() {
- return this.getTypedRuleContext(ExpressionContext,0);
-};
-
-Func_body_returns_scalarContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Func_body_returns_scalarContext.prototype.function_option = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Function_optionContext);
- } else {
- return this.getTypedRuleContext(Function_optionContext,i);
- }
-};
-
-Func_body_returns_scalarContext.prototype.AS = function() {
- return this.getToken(TSqlParser.AS, 0);
-};
-
-Func_body_returns_scalarContext.prototype.sql_clause = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Sql_clauseContext);
- } else {
- return this.getTypedRuleContext(Sql_clauseContext,i);
- }
-};
-
-Func_body_returns_scalarContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Func_body_returns_scalarContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Func_body_returns_scalarContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterFunc_body_returns_scalar(this);
- }
-};
-
-Func_body_returns_scalarContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitFunc_body_returns_scalar(this);
- }
-};
-
-Func_body_returns_scalarContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitFunc_body_returns_scalar(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Func_body_returns_scalarContext = Func_body_returns_scalarContext;
-
-TSqlParser.prototype.func_body_returns_scalar = function() {
-
- var localctx = new Func_body_returns_scalarContext(this, this._ctx, this.state);
- this.enterRule(localctx, 480, TSqlParser.RULE_func_body_returns_scalar);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 6404;
- this.match(TSqlParser.RETURNS);
- this.state = 6405;
- this.data_type();
- this.state = 6415;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.WITH) {
- this.state = 6406;
- this.match(TSqlParser.WITH);
- this.state = 6407;
- this.function_option();
- this.state = 6412;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 6408;
- this.match(TSqlParser.COMMA);
- this.state = 6409;
- this.function_option();
- this.state = 6414;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- }
-
- this.state = 6418;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.AS) {
- this.state = 6417;
- this.match(TSqlParser.AS);
- }
-
- this.state = 6420;
- this.match(TSqlParser.BEGIN);
- this.state = 6424;
- this._errHandler.sync(this);
- var _alt = this._interp.adaptivePredict(this._input,843,this._ctx)
- while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
- if(_alt===1) {
- this.state = 6421;
- this.sql_clause();
- }
- this.state = 6426;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,843,this._ctx);
- }
-
- this.state = 6427;
- this.match(TSqlParser.RETURN);
- this.state = 6428;
- localctx.ret = this.expression(0);
- this.state = 6430;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.SEMI) {
- this.state = 6429;
- this.match(TSqlParser.SEMI);
- }
-
- this.state = 6432;
- this.match(TSqlParser.END);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Procedure_paramContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_procedure_param;
- this.default_val = null; // Default_valueContext
- return this;
-}
-
-Procedure_paramContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Procedure_paramContext.prototype.constructor = Procedure_paramContext;
-
-Procedure_paramContext.prototype.LOCAL_ID = function() {
- return this.getToken(TSqlParser.LOCAL_ID, 0);
-};
-
-Procedure_paramContext.prototype.data_type = function() {
- return this.getTypedRuleContext(Data_typeContext,0);
-};
-
-Procedure_paramContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Procedure_paramContext.prototype.DOT = function() {
- return this.getToken(TSqlParser.DOT, 0);
-};
-
-Procedure_paramContext.prototype.AS = function() {
- return this.getToken(TSqlParser.AS, 0);
-};
-
-Procedure_paramContext.prototype.VARYING = function() {
- return this.getToken(TSqlParser.VARYING, 0);
-};
-
-Procedure_paramContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Procedure_paramContext.prototype.default_value = function() {
- return this.getTypedRuleContext(Default_valueContext,0);
-};
-
-Procedure_paramContext.prototype.OUT = function() {
- return this.getToken(TSqlParser.OUT, 0);
-};
-
-Procedure_paramContext.prototype.OUTPUT = function() {
- return this.getToken(TSqlParser.OUTPUT, 0);
-};
-
-Procedure_paramContext.prototype.READONLY = function() {
- return this.getToken(TSqlParser.READONLY, 0);
-};
-
-Procedure_paramContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterProcedure_param(this);
- }
-};
-
-Procedure_paramContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitProcedure_param(this);
- }
-};
-
-Procedure_paramContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitProcedure_param(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Procedure_paramContext = Procedure_paramContext;
-
-TSqlParser.prototype.procedure_param = function() {
-
- var localctx = new Procedure_paramContext(this, this._ctx, this.state);
- this.enterRule(localctx, 482, TSqlParser.RULE_procedure_param);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 6434;
- this.match(TSqlParser.LOCAL_ID);
- this.state = 6438;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,845,this._ctx);
- if(la_===1) {
- this.state = 6435;
- this.id();
- this.state = 6436;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 6441;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.AS) {
- this.state = 6440;
- this.match(TSqlParser.AS);
- }
-
- this.state = 6443;
- this.data_type();
- this.state = 6445;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.VARYING) {
- this.state = 6444;
- this.match(TSqlParser.VARYING);
- }
-
- this.state = 6449;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.EQUAL) {
- this.state = 6447;
- this.match(TSqlParser.EQUAL);
- this.state = 6448;
- localctx.default_val = this.default_value();
- }
-
- this.state = 6452;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.OUT || _la===TSqlParser.OUTPUT || _la===TSqlParser.READONLY) {
- this.state = 6451;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OUT || _la===TSqlParser.OUTPUT || _la===TSqlParser.READONLY)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- }
-
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Procedure_optionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_procedure_option;
- return this;
-}
-
-Procedure_optionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Procedure_optionContext.prototype.constructor = Procedure_optionContext;
-
-Procedure_optionContext.prototype.ENCRYPTION = function() {
- return this.getToken(TSqlParser.ENCRYPTION, 0);
-};
-
-Procedure_optionContext.prototype.RECOMPILE = function() {
- return this.getToken(TSqlParser.RECOMPILE, 0);
-};
-
-Procedure_optionContext.prototype.execute_clause = function() {
- return this.getTypedRuleContext(Execute_clauseContext,0);
-};
-
-Procedure_optionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterProcedure_option(this);
- }
-};
-
-Procedure_optionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitProcedure_option(this);
- }
-};
-
-Procedure_optionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitProcedure_option(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Procedure_optionContext = Procedure_optionContext;
-
-TSqlParser.prototype.procedure_option = function() {
-
- var localctx = new Procedure_optionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 484, TSqlParser.RULE_procedure_option);
- try {
- this.state = 6457;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.ENCRYPTION:
- this.enterOuterAlt(localctx, 1);
- this.state = 6454;
- this.match(TSqlParser.ENCRYPTION);
- break;
- case TSqlParser.RECOMPILE:
- this.enterOuterAlt(localctx, 2);
- this.state = 6455;
- this.match(TSqlParser.RECOMPILE);
- break;
- case TSqlParser.EXECUTE:
- this.enterOuterAlt(localctx, 3);
- this.state = 6456;
- this.execute_clause();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Function_optionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_function_option;
- return this;
-}
-
-Function_optionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Function_optionContext.prototype.constructor = Function_optionContext;
-
-Function_optionContext.prototype.ENCRYPTION = function() {
- return this.getToken(TSqlParser.ENCRYPTION, 0);
-};
-
-Function_optionContext.prototype.SCHEMABINDING = function() {
- return this.getToken(TSqlParser.SCHEMABINDING, 0);
-};
-
-Function_optionContext.prototype.RETURNS = function() {
- return this.getToken(TSqlParser.RETURNS, 0);
-};
-
-Function_optionContext.prototype.NULL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.NULL);
- } else {
- return this.getToken(TSqlParser.NULL, i);
- }
-};
-
-
-Function_optionContext.prototype.ON = function() {
- return this.getToken(TSqlParser.ON, 0);
-};
-
-Function_optionContext.prototype.INPUT = function() {
- return this.getToken(TSqlParser.INPUT, 0);
-};
-
-Function_optionContext.prototype.CALLED = function() {
- return this.getToken(TSqlParser.CALLED, 0);
-};
-
-Function_optionContext.prototype.execute_clause = function() {
- return this.getTypedRuleContext(Execute_clauseContext,0);
-};
-
-Function_optionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterFunction_option(this);
- }
-};
-
-Function_optionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitFunction_option(this);
- }
-};
-
-Function_optionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitFunction_option(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Function_optionContext = Function_optionContext;
-
-TSqlParser.prototype.function_option = function() {
-
- var localctx = new Function_optionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 486, TSqlParser.RULE_function_option);
- try {
- this.state = 6471;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.ENCRYPTION:
- this.enterOuterAlt(localctx, 1);
- this.state = 6459;
- this.match(TSqlParser.ENCRYPTION);
- break;
- case TSqlParser.SCHEMABINDING:
- this.enterOuterAlt(localctx, 2);
- this.state = 6460;
- this.match(TSqlParser.SCHEMABINDING);
- break;
- case TSqlParser.RETURNS:
- this.enterOuterAlt(localctx, 3);
- this.state = 6461;
- this.match(TSqlParser.RETURNS);
- this.state = 6462;
- this.match(TSqlParser.NULL);
- this.state = 6463;
- this.match(TSqlParser.ON);
- this.state = 6464;
- this.match(TSqlParser.NULL);
- this.state = 6465;
- this.match(TSqlParser.INPUT);
- break;
- case TSqlParser.CALLED:
- this.enterOuterAlt(localctx, 4);
- this.state = 6466;
- this.match(TSqlParser.CALLED);
- this.state = 6467;
- this.match(TSqlParser.ON);
- this.state = 6468;
- this.match(TSqlParser.NULL);
- this.state = 6469;
- this.match(TSqlParser.INPUT);
- break;
- case TSqlParser.EXECUTE:
- this.enterOuterAlt(localctx, 5);
- this.state = 6470;
- this.execute_clause();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_statisticsContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_statistics;
- return this;
-}
-
-Create_statisticsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_statisticsContext.prototype.constructor = Create_statisticsContext;
-
-Create_statisticsContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_statisticsContext.prototype.STATISTICS = function() {
- return this.getToken(TSqlParser.STATISTICS, 0);
-};
-
-Create_statisticsContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Create_statisticsContext.prototype.ON = function() {
- return this.getToken(TSqlParser.ON, 0);
-};
-
-Create_statisticsContext.prototype.table_name_with_hint = function() {
- return this.getTypedRuleContext(Table_name_with_hintContext,0);
-};
-
-Create_statisticsContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Create_statisticsContext.prototype.column_name_list = function() {
- return this.getTypedRuleContext(Column_name_listContext,0);
-};
-
-Create_statisticsContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Create_statisticsContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Create_statisticsContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Create_statisticsContext.prototype.FULLSCAN = function() {
- return this.getToken(TSqlParser.FULLSCAN, 0);
-};
-
-Create_statisticsContext.prototype.SAMPLE = function() {
- return this.getToken(TSqlParser.SAMPLE, 0);
-};
-
-Create_statisticsContext.prototype.DECIMAL = function() {
- return this.getToken(TSqlParser.DECIMAL, 0);
-};
-
-Create_statisticsContext.prototype.STATS_STREAM = function() {
- return this.getToken(TSqlParser.STATS_STREAM, 0);
-};
-
-Create_statisticsContext.prototype.PERCENT = function() {
- return this.getToken(TSqlParser.PERCENT, 0);
-};
-
-Create_statisticsContext.prototype.ROWS = function() {
- return this.getToken(TSqlParser.ROWS, 0);
-};
-
-Create_statisticsContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Create_statisticsContext.prototype.NORECOMPUTE = function() {
- return this.getToken(TSqlParser.NORECOMPUTE, 0);
-};
-
-Create_statisticsContext.prototype.INCREMENTAL = function() {
- return this.getToken(TSqlParser.INCREMENTAL, 0);
-};
-
-Create_statisticsContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Create_statisticsContext.prototype.on_off = function() {
- return this.getTypedRuleContext(On_offContext,0);
-};
-
-Create_statisticsContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_statistics(this);
- }
-};
-
-Create_statisticsContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_statistics(this);
- }
-};
-
-Create_statisticsContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_statistics(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_statisticsContext = Create_statisticsContext;
-
-TSqlParser.prototype.create_statistics = function() {
-
- var localctx = new Create_statisticsContext(this, this._ctx, this.state);
- this.enterRule(localctx, 488, TSqlParser.RULE_create_statistics);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 6473;
- this.match(TSqlParser.CREATE);
- this.state = 6474;
- this.match(TSqlParser.STATISTICS);
- this.state = 6475;
- this.id();
- this.state = 6476;
- this.match(TSqlParser.ON);
- this.state = 6477;
- this.table_name_with_hint();
- this.state = 6478;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 6479;
- this.column_name_list();
- this.state = 6480;
- this.match(TSqlParser.RR_BRACKET);
- this.state = 6499;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,855,this._ctx);
- if(la_===1) {
- this.state = 6481;
- this.match(TSqlParser.WITH);
- this.state = 6487;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.FULLSCAN:
- this.state = 6482;
- this.match(TSqlParser.FULLSCAN);
- break;
- case TSqlParser.SAMPLE:
- this.state = 6483;
- this.match(TSqlParser.SAMPLE);
- this.state = 6484;
- this.match(TSqlParser.DECIMAL);
- this.state = 6485;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.PERCENT || _la===TSqlParser.ROWS)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- case TSqlParser.STATS_STREAM:
- this.state = 6486;
- this.match(TSqlParser.STATS_STREAM);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 6491;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,853,this._ctx);
- if(la_===1) {
- this.state = 6489;
- this.match(TSqlParser.COMMA);
- this.state = 6490;
- this.match(TSqlParser.NORECOMPUTE);
-
- }
- this.state = 6497;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 6493;
- this.match(TSqlParser.COMMA);
- this.state = 6494;
- this.match(TSqlParser.INCREMENTAL);
- this.state = 6495;
- this.match(TSqlParser.EQUAL);
- this.state = 6496;
- this.on_off();
- }
-
-
- }
- this.state = 6502;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,856,this._ctx);
- if(la_===1) {
- this.state = 6501;
- this.match(TSqlParser.SEMI);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Update_statisticsContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_update_statistics;
- return this;
-}
-
-Update_statisticsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Update_statisticsContext.prototype.constructor = Update_statisticsContext;
-
-Update_statisticsContext.prototype.UPDATE = function() {
- return this.getToken(TSqlParser.UPDATE, 0);
-};
-
-Update_statisticsContext.prototype.STATISTICS = function() {
- return this.getToken(TSqlParser.STATISTICS, 0);
-};
-
-Update_statisticsContext.prototype.full_table_name = function() {
- return this.getTypedRuleContext(Full_table_nameContext,0);
-};
-
-Update_statisticsContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Update_statisticsContext.prototype.USING = function() {
- return this.getToken(TSqlParser.USING, 0);
-};
-
-Update_statisticsContext.prototype.DECIMAL = function() {
- return this.getToken(TSqlParser.DECIMAL, 0);
-};
-
-Update_statisticsContext.prototype.VALUES = function() {
- return this.getToken(TSqlParser.VALUES, 0);
-};
-
-Update_statisticsContext.prototype.INDEX = function() {
- return this.getToken(TSqlParser.INDEX, 0);
-};
-
-Update_statisticsContext.prototype.ALL = function() {
- return this.getToken(TSqlParser.ALL, 0);
-};
-
-Update_statisticsContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterUpdate_statistics(this);
- }
-};
-
-Update_statisticsContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitUpdate_statistics(this);
- }
-};
-
-Update_statisticsContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitUpdate_statistics(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Update_statisticsContext = Update_statisticsContext;
-
-TSqlParser.prototype.update_statistics = function() {
-
- var localctx = new Update_statisticsContext(this, this._ctx, this.state);
- this.enterRule(localctx, 490, TSqlParser.RULE_update_statistics);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 6504;
- this.match(TSqlParser.UPDATE);
- this.state = 6506;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.ALL || _la===TSqlParser.INDEX) {
- this.state = 6505;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.ALL || _la===TSqlParser.INDEX)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- }
-
- this.state = 6508;
- this.match(TSqlParser.STATISTICS);
- this.state = 6509;
- this.full_table_name();
- this.state = 6511;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,858,this._ctx);
- if(la_===1) {
- this.state = 6510;
- this.id();
-
- }
- this.state = 6516;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,859,this._ctx);
- if(la_===1) {
- this.state = 6513;
- this.match(TSqlParser.USING);
- this.state = 6514;
- this.match(TSqlParser.DECIMAL);
- this.state = 6515;
- this.match(TSqlParser.VALUES);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_tableContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_table;
- return this;
-}
-
-Create_tableContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_tableContext.prototype.constructor = Create_tableContext;
-
-Create_tableContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_tableContext.prototype.TABLE = function() {
- return this.getToken(TSqlParser.TABLE, 0);
-};
-
-Create_tableContext.prototype.table_name = function() {
- return this.getTypedRuleContext(Table_nameContext,0);
-};
-
-Create_tableContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Create_tableContext.prototype.column_def_table_constraints = function() {
- return this.getTypedRuleContext(Column_def_table_constraintsContext,0);
-};
-
-Create_tableContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Create_tableContext.prototype.COMMA = function() {
- return this.getToken(TSqlParser.COMMA, 0);
-};
-
-Create_tableContext.prototype.LOCK = function() {
- return this.getToken(TSqlParser.LOCK, 0);
-};
-
-Create_tableContext.prototype.simple_id = function() {
- return this.getTypedRuleContext(Simple_idContext,0);
-};
-
-Create_tableContext.prototype.table_options = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Table_optionsContext);
- } else {
- return this.getTypedRuleContext(Table_optionsContext,i);
- }
-};
-
-Create_tableContext.prototype.ON = function() {
- return this.getToken(TSqlParser.ON, 0);
-};
-
-Create_tableContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Create_tableContext.prototype.DEFAULT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DEFAULT);
- } else {
- return this.getToken(TSqlParser.DEFAULT, i);
- }
-};
-
-
-Create_tableContext.prototype.TEXTIMAGE_ON = function() {
- return this.getToken(TSqlParser.TEXTIMAGE_ON, 0);
-};
-
-Create_tableContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Create_tableContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_table(this);
- }
-};
-
-Create_tableContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_table(this);
- }
-};
-
-Create_tableContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_table(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_tableContext = Create_tableContext;
-
-TSqlParser.prototype.create_table = function() {
-
- var localctx = new Create_tableContext(this, this._ctx, this.state);
- this.enterRule(localctx, 492, TSqlParser.RULE_create_table);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 6518;
- this.match(TSqlParser.CREATE);
- this.state = 6519;
- this.match(TSqlParser.TABLE);
- this.state = 6520;
- this.table_name();
- this.state = 6521;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 6522;
- this.column_def_table_constraints();
- this.state = 6524;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 6523;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 6526;
- this.match(TSqlParser.RR_BRACKET);
- this.state = 6529;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,861,this._ctx);
- if(la_===1) {
- this.state = 6527;
- this.match(TSqlParser.LOCK);
- this.state = 6528;
- this.simple_id();
-
- }
- this.state = 6534;
- this._errHandler.sync(this);
- var _alt = this._interp.adaptivePredict(this._input,862,this._ctx)
- while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
- if(_alt===1) {
- this.state = 6531;
- this.table_options();
- }
- this.state = 6536;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,862,this._ctx);
- }
-
- this.state = 6540;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,863,this._ctx);
- if(la_===1) {
- this.state = 6537;
- this.match(TSqlParser.ON);
- this.state = 6538;
- this.id();
-
- } else if(la_===2) {
- this.state = 6539;
- this.match(TSqlParser.DEFAULT);
-
- }
- this.state = 6545;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,864,this._ctx);
- if(la_===1) {
- this.state = 6542;
- this.match(TSqlParser.TEXTIMAGE_ON);
- this.state = 6543;
- this.id();
-
- } else if(la_===2) {
- this.state = 6544;
- this.match(TSqlParser.DEFAULT);
-
- }
- this.state = 6548;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,865,this._ctx);
- if(la_===1) {
- this.state = 6547;
- this.match(TSqlParser.SEMI);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Table_optionsContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_table_options;
- return this;
-}
-
-Table_optionsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Table_optionsContext.prototype.constructor = Table_optionsContext;
-
-Table_optionsContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Table_optionsContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Table_optionsContext.prototype.index_option = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Index_optionContext);
- } else {
- return this.getTypedRuleContext(Index_optionContext,i);
- }
-};
-
-Table_optionsContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Table_optionsContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Table_optionsContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterTable_options(this);
- }
-};
-
-Table_optionsContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitTable_options(this);
- }
-};
-
-Table_optionsContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitTable_options(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Table_optionsContext = Table_optionsContext;
-
-TSqlParser.prototype.table_options = function() {
-
- var localctx = new Table_optionsContext(this, this._ctx, this.state);
- this.enterRule(localctx, 494, TSqlParser.RULE_table_options);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 6550;
- this.match(TSqlParser.WITH);
- this.state = 6570;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.LR_BRACKET:
- this.state = 6551;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 6552;
- this.index_option();
- this.state = 6557;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 6553;
- this.match(TSqlParser.COMMA);
- this.state = 6554;
- this.index_option();
- this.state = 6559;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- this.state = 6560;
- this.match(TSqlParser.RR_BRACKET);
- break;
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.ID:
- this.state = 6562;
- this.index_option();
- this.state = 6567;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 6563;
- this.match(TSqlParser.COMMA);
- this.state = 6564;
- this.index_option();
- this.state = 6569;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_viewContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_view;
- return this;
-}
-
-Create_viewContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_viewContext.prototype.constructor = Create_viewContext;
-
-Create_viewContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_viewContext.prototype.VIEW = function() {
- return this.getToken(TSqlParser.VIEW, 0);
-};
-
-Create_viewContext.prototype.simple_name = function() {
- return this.getTypedRuleContext(Simple_nameContext,0);
-};
-
-Create_viewContext.prototype.AS = function() {
- return this.getToken(TSqlParser.AS, 0);
-};
-
-Create_viewContext.prototype.select_statement = function() {
- return this.getTypedRuleContext(Select_statementContext,0);
-};
-
-Create_viewContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Create_viewContext.prototype.column_name_list = function() {
- return this.getTypedRuleContext(Column_name_listContext,0);
-};
-
-Create_viewContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Create_viewContext.prototype.WITH = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.WITH);
- } else {
- return this.getToken(TSqlParser.WITH, i);
- }
-};
-
-
-Create_viewContext.prototype.view_attribute = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(View_attributeContext);
- } else {
- return this.getTypedRuleContext(View_attributeContext,i);
- }
-};
-
-Create_viewContext.prototype.CHECK = function() {
- return this.getToken(TSqlParser.CHECK, 0);
-};
-
-Create_viewContext.prototype.OPTION = function() {
- return this.getToken(TSqlParser.OPTION, 0);
-};
-
-Create_viewContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Create_viewContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Create_viewContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_view(this);
- }
-};
-
-Create_viewContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_view(this);
- }
-};
-
-Create_viewContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_view(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_viewContext = Create_viewContext;
-
-TSqlParser.prototype.create_view = function() {
-
- var localctx = new Create_viewContext(this, this._ctx, this.state);
- this.enterRule(localctx, 496, TSqlParser.RULE_create_view);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 6572;
- this.match(TSqlParser.CREATE);
- this.state = 6573;
- this.match(TSqlParser.VIEW);
- this.state = 6574;
- this.simple_name();
- this.state = 6579;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.LR_BRACKET) {
- this.state = 6575;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 6576;
- this.column_name_list();
- this.state = 6577;
- this.match(TSqlParser.RR_BRACKET);
- }
-
- this.state = 6590;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.WITH) {
- this.state = 6581;
- this.match(TSqlParser.WITH);
- this.state = 6582;
- this.view_attribute();
- this.state = 6587;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 6583;
- this.match(TSqlParser.COMMA);
- this.state = 6584;
- this.view_attribute();
- this.state = 6589;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- }
-
- this.state = 6592;
- this.match(TSqlParser.AS);
- this.state = 6593;
- this.select_statement();
- this.state = 6597;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,872,this._ctx);
- if(la_===1) {
- this.state = 6594;
- this.match(TSqlParser.WITH);
- this.state = 6595;
- this.match(TSqlParser.CHECK);
- this.state = 6596;
- this.match(TSqlParser.OPTION);
-
- }
- this.state = 6600;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,873,this._ctx);
- if(la_===1) {
- this.state = 6599;
- this.match(TSqlParser.SEMI);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function View_attributeContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_view_attribute;
- return this;
-}
-
-View_attributeContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-View_attributeContext.prototype.constructor = View_attributeContext;
-
-View_attributeContext.prototype.ENCRYPTION = function() {
- return this.getToken(TSqlParser.ENCRYPTION, 0);
-};
-
-View_attributeContext.prototype.SCHEMABINDING = function() {
- return this.getToken(TSqlParser.SCHEMABINDING, 0);
-};
-
-View_attributeContext.prototype.VIEW_METADATA = function() {
- return this.getToken(TSqlParser.VIEW_METADATA, 0);
-};
-
-View_attributeContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterView_attribute(this);
- }
-};
-
-View_attributeContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitView_attribute(this);
- }
-};
-
-View_attributeContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitView_attribute(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.View_attributeContext = View_attributeContext;
-
-TSqlParser.prototype.view_attribute = function() {
-
- var localctx = new View_attributeContext(this, this._ctx, this.state);
- this.enterRule(localctx, 498, TSqlParser.RULE_view_attribute);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 6602;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.ENCRYPTION || _la===TSqlParser.SCHEMABINDING || _la===TSqlParser.VIEW_METADATA)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_tableContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_table;
- this.constraint = null; // IdContext
- this.fk = null; // Column_name_listContext
- this.pk = null; // Column_name_listContext
- return this;
-}
-
-Alter_tableContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_tableContext.prototype.constructor = Alter_tableContext;
-
-Alter_tableContext.prototype.ALTER = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ALTER);
- } else {
- return this.getToken(TSqlParser.ALTER, i);
- }
-};
-
-
-Alter_tableContext.prototype.TABLE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.TABLE);
- } else {
- return this.getToken(TSqlParser.TABLE, i);
- }
-};
-
-
-Alter_tableContext.prototype.table_name = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Table_nameContext);
- } else {
- return this.getTypedRuleContext(Table_nameContext,i);
- }
-};
-
-Alter_tableContext.prototype.SET = function() {
- return this.getToken(TSqlParser.SET, 0);
-};
-
-Alter_tableContext.prototype.LR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.LR_BRACKET);
- } else {
- return this.getToken(TSqlParser.LR_BRACKET, i);
- }
-};
-
-
-Alter_tableContext.prototype.LOCK_ESCALATION = function() {
- return this.getToken(TSqlParser.LOCK_ESCALATION, 0);
-};
-
-Alter_tableContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Alter_tableContext.prototype.RR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.RR_BRACKET);
- } else {
- return this.getToken(TSqlParser.RR_BRACKET, i);
- }
-};
-
-
-Alter_tableContext.prototype.ADD = function() {
- return this.getToken(TSqlParser.ADD, 0);
-};
-
-Alter_tableContext.prototype.column_def_table_constraint = function() {
- return this.getTypedRuleContext(Column_def_table_constraintContext,0);
-};
-
-Alter_tableContext.prototype.COLUMN = function() {
- return this.getToken(TSqlParser.COLUMN, 0);
-};
-
-Alter_tableContext.prototype.column_definition = function() {
- return this.getTypedRuleContext(Column_definitionContext,0);
-};
-
-Alter_tableContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Alter_tableContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Alter_tableContext.prototype.CONSTRAINT = function() {
- return this.getToken(TSqlParser.CONSTRAINT, 0);
-};
-
-Alter_tableContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Alter_tableContext.prototype.CHECK = function() {
- return this.getToken(TSqlParser.CHECK, 0);
-};
-
-Alter_tableContext.prototype.FOREIGN = function() {
- return this.getToken(TSqlParser.FOREIGN, 0);
-};
-
-Alter_tableContext.prototype.KEY = function() {
- return this.getToken(TSqlParser.KEY, 0);
-};
-
-Alter_tableContext.prototype.REFERENCES = function() {
- return this.getToken(TSqlParser.REFERENCES, 0);
-};
-
-Alter_tableContext.prototype.TRIGGER = function() {
- return this.getToken(TSqlParser.TRIGGER, 0);
-};
-
-Alter_tableContext.prototype.REBUILD = function() {
- return this.getToken(TSqlParser.REBUILD, 0);
-};
-
-Alter_tableContext.prototype.table_options = function() {
- return this.getTypedRuleContext(Table_optionsContext,0);
-};
-
-Alter_tableContext.prototype.AUTO = function() {
- return this.getToken(TSqlParser.AUTO, 0);
-};
-
-Alter_tableContext.prototype.DISABLE = function() {
- return this.getToken(TSqlParser.DISABLE, 0);
-};
-
-Alter_tableContext.prototype.column_name_list = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Column_name_listContext);
- } else {
- return this.getTypedRuleContext(Column_name_listContext,i);
- }
-};
-
-Alter_tableContext.prototype.ENABLE = function() {
- return this.getToken(TSqlParser.ENABLE, 0);
-};
-
-Alter_tableContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Alter_tableContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_table(this);
- }
-};
-
-Alter_tableContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_table(this);
- }
-};
-
-Alter_tableContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_table(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_tableContext = Alter_tableContext;
-
-TSqlParser.prototype.alter_table = function() {
-
- var localctx = new Alter_tableContext(this, this._ctx, this.state);
- this.enterRule(localctx, 500, TSqlParser.RULE_alter_table);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 6604;
- this.match(TSqlParser.ALTER);
- this.state = 6605;
- this.match(TSqlParser.TABLE);
- this.state = 6606;
- this.table_name();
- this.state = 6650;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,875,this._ctx);
- switch(la_) {
- case 1:
- this.state = 6607;
- this.match(TSqlParser.SET);
- this.state = 6608;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 6609;
- this.match(TSqlParser.LOCK_ESCALATION);
- this.state = 6610;
- this.match(TSqlParser.EQUAL);
- this.state = 6611;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.TABLE || _la===TSqlParser.AUTO || _la===TSqlParser.DISABLE)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 6612;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- case 2:
- this.state = 6613;
- this.match(TSqlParser.ADD);
- this.state = 6614;
- this.column_def_table_constraint();
- break;
-
- case 3:
- this.state = 6615;
- this.match(TSqlParser.ALTER);
- this.state = 6616;
- this.match(TSqlParser.COLUMN);
- this.state = 6617;
- this.column_definition();
- break;
-
- case 4:
- this.state = 6618;
- this.match(TSqlParser.DROP);
- this.state = 6619;
- this.match(TSqlParser.COLUMN);
- this.state = 6620;
- this.id();
- break;
-
- case 5:
- this.state = 6621;
- this.match(TSqlParser.DROP);
- this.state = 6622;
- this.match(TSqlParser.CONSTRAINT);
- this.state = 6623;
- localctx.constraint = this.id();
- break;
-
- case 6:
- this.state = 6624;
- this.match(TSqlParser.WITH);
- this.state = 6625;
- this.match(TSqlParser.CHECK);
- this.state = 6626;
- this.match(TSqlParser.ADD);
- this.state = 6627;
- this.match(TSqlParser.CONSTRAINT);
- this.state = 6628;
- localctx.constraint = this.id();
- this.state = 6629;
- this.match(TSqlParser.FOREIGN);
- this.state = 6630;
- this.match(TSqlParser.KEY);
- this.state = 6631;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 6632;
- localctx.fk = this.column_name_list();
- this.state = 6633;
- this.match(TSqlParser.RR_BRACKET);
- this.state = 6634;
- this.match(TSqlParser.REFERENCES);
- this.state = 6635;
- this.table_name();
- this.state = 6636;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 6637;
- localctx.pk = this.column_name_list();
- this.state = 6638;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- case 7:
- this.state = 6640;
- this.match(TSqlParser.CHECK);
- this.state = 6641;
- this.match(TSqlParser.CONSTRAINT);
- this.state = 6642;
- localctx.constraint = this.id();
- break;
-
- case 8:
- this.state = 6643;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.DISABLE || _la===TSqlParser.ENABLE)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 6644;
- this.match(TSqlParser.TRIGGER);
- this.state = 6646;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,874,this._ctx);
- if(la_===1) {
- this.state = 6645;
- this.id();
-
- }
- break;
-
- case 9:
- this.state = 6648;
- this.match(TSqlParser.REBUILD);
- this.state = 6649;
- this.table_options();
- break;
-
- }
- this.state = 6653;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,876,this._ctx);
- if(la_===1) {
- this.state = 6652;
- this.match(TSqlParser.SEMI);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_databaseContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_database;
- this.database = null; // IdContext
- this.new_name = null; // IdContext
- this.collation = null; // IdContext
- return this;
-}
-
-Alter_databaseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_databaseContext.prototype.constructor = Alter_databaseContext;
-
-Alter_databaseContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Alter_databaseContext.prototype.DATABASE = function() {
- return this.getToken(TSqlParser.DATABASE, 0);
-};
-
-Alter_databaseContext.prototype.CURRENT = function() {
- return this.getToken(TSqlParser.CURRENT, 0);
-};
-
-Alter_databaseContext.prototype.MODIFY = function() {
- return this.getToken(TSqlParser.MODIFY, 0);
-};
-
-Alter_databaseContext.prototype.NAME = function() {
- return this.getToken(TSqlParser.NAME, 0);
-};
-
-Alter_databaseContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Alter_databaseContext.prototype.COLLATE = function() {
- return this.getToken(TSqlParser.COLLATE, 0);
-};
-
-Alter_databaseContext.prototype.SET = function() {
- return this.getToken(TSqlParser.SET, 0);
-};
-
-Alter_databaseContext.prototype.database_optionspec = function() {
- return this.getTypedRuleContext(Database_optionspecContext,0);
-};
-
-Alter_databaseContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Alter_databaseContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Alter_databaseContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Alter_databaseContext.prototype.termination = function() {
- return this.getTypedRuleContext(TerminationContext,0);
-};
-
-Alter_databaseContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_database(this);
- }
-};
-
-Alter_databaseContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_database(this);
- }
-};
-
-Alter_databaseContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_database(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_databaseContext = Alter_databaseContext;
-
-TSqlParser.prototype.alter_database = function() {
-
- var localctx = new Alter_databaseContext(this, this._ctx, this.state);
- this.enterRule(localctx, 502, TSqlParser.RULE_alter_database);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 6655;
- this.match(TSqlParser.ALTER);
- this.state = 6656;
- this.match(TSqlParser.DATABASE);
- this.state = 6659;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.state = 6657;
- localctx.database = this.id();
- break;
- case TSqlParser.CURRENT:
- this.state = 6658;
- this.match(TSqlParser.CURRENT);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 6673;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.MODIFY:
- this.state = 6661;
- this.match(TSqlParser.MODIFY);
- this.state = 6662;
- this.match(TSqlParser.NAME);
- this.state = 6663;
- this.match(TSqlParser.EQUAL);
- this.state = 6664;
- localctx.new_name = this.id();
- break;
- case TSqlParser.COLLATE:
- this.state = 6665;
- this.match(TSqlParser.COLLATE);
- this.state = 6666;
- localctx.collation = this.id();
- break;
- case TSqlParser.SET:
- this.state = 6667;
- this.match(TSqlParser.SET);
- this.state = 6668;
- this.database_optionspec();
- this.state = 6671;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,878,this._ctx);
- if(la_===1) {
- this.state = 6669;
- this.match(TSqlParser.WITH);
- this.state = 6670;
- this.termination();
-
- }
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 6676;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,880,this._ctx);
- if(la_===1) {
- this.state = 6675;
- this.match(TSqlParser.SEMI);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Database_optionspecContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_database_optionspec;
- return this;
-}
-
-Database_optionspecContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Database_optionspecContext.prototype.constructor = Database_optionspecContext;
-
-Database_optionspecContext.prototype.auto_option = function() {
- return this.getTypedRuleContext(Auto_optionContext,0);
-};
-
-Database_optionspecContext.prototype.change_tracking_option = function() {
- return this.getTypedRuleContext(Change_tracking_optionContext,0);
-};
-
-Database_optionspecContext.prototype.containment_option = function() {
- return this.getTypedRuleContext(Containment_optionContext,0);
-};
-
-Database_optionspecContext.prototype.cursor_option = function() {
- return this.getTypedRuleContext(Cursor_optionContext,0);
-};
-
-Database_optionspecContext.prototype.database_mirroring_option = function() {
- return this.getTypedRuleContext(Database_mirroring_optionContext,0);
-};
-
-Database_optionspecContext.prototype.date_correlation_optimization_option = function() {
- return this.getTypedRuleContext(Date_correlation_optimization_optionContext,0);
-};
-
-Database_optionspecContext.prototype.db_encryption_option = function() {
- return this.getTypedRuleContext(Db_encryption_optionContext,0);
-};
-
-Database_optionspecContext.prototype.db_state_option = function() {
- return this.getTypedRuleContext(Db_state_optionContext,0);
-};
-
-Database_optionspecContext.prototype.db_update_option = function() {
- return this.getTypedRuleContext(Db_update_optionContext,0);
-};
-
-Database_optionspecContext.prototype.db_user_access_option = function() {
- return this.getTypedRuleContext(Db_user_access_optionContext,0);
-};
-
-Database_optionspecContext.prototype.delayed_durability_option = function() {
- return this.getTypedRuleContext(Delayed_durability_optionContext,0);
-};
-
-Database_optionspecContext.prototype.external_access_option = function() {
- return this.getTypedRuleContext(External_access_optionContext,0);
-};
-
-Database_optionspecContext.prototype.FILESTREAM = function() {
- return this.getToken(TSqlParser.FILESTREAM, 0);
-};
-
-Database_optionspecContext.prototype.database_filestream_option = function() {
- return this.getTypedRuleContext(Database_filestream_optionContext,0);
-};
-
-Database_optionspecContext.prototype.hadr_options = function() {
- return this.getTypedRuleContext(Hadr_optionsContext,0);
-};
-
-Database_optionspecContext.prototype.mixed_page_allocation_option = function() {
- return this.getTypedRuleContext(Mixed_page_allocation_optionContext,0);
-};
-
-Database_optionspecContext.prototype.parameterization_option = function() {
- return this.getTypedRuleContext(Parameterization_optionContext,0);
-};
-
-Database_optionspecContext.prototype.recovery_option = function() {
- return this.getTypedRuleContext(Recovery_optionContext,0);
-};
-
-Database_optionspecContext.prototype.service_broker_option = function() {
- return this.getTypedRuleContext(Service_broker_optionContext,0);
-};
-
-Database_optionspecContext.prototype.snapshot_option = function() {
- return this.getTypedRuleContext(Snapshot_optionContext,0);
-};
-
-Database_optionspecContext.prototype.sql_option = function() {
- return this.getTypedRuleContext(Sql_optionContext,0);
-};
-
-Database_optionspecContext.prototype.target_recovery_time_option = function() {
- return this.getTypedRuleContext(Target_recovery_time_optionContext,0);
-};
-
-Database_optionspecContext.prototype.termination = function() {
- return this.getTypedRuleContext(TerminationContext,0);
-};
-
-Database_optionspecContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDatabase_optionspec(this);
- }
-};
-
-Database_optionspecContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDatabase_optionspec(this);
- }
-};
-
-Database_optionspecContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDatabase_optionspec(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Database_optionspecContext = Database_optionspecContext;
-
-TSqlParser.prototype.database_optionspec = function() {
-
- var localctx = new Database_optionspecContext(this, this._ctx, this.state);
- this.enterRule(localctx, 504, TSqlParser.RULE_database_optionspec);
- try {
- this.state = 6701;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,881,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 6678;
- this.auto_option();
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 6679;
- this.change_tracking_option();
- break;
-
- case 3:
- this.enterOuterAlt(localctx, 3);
- this.state = 6680;
- this.containment_option();
- break;
-
- case 4:
- this.enterOuterAlt(localctx, 4);
- this.state = 6681;
- this.cursor_option();
- break;
-
- case 5:
- this.enterOuterAlt(localctx, 5);
- this.state = 6682;
- this.database_mirroring_option();
- break;
-
- case 6:
- this.enterOuterAlt(localctx, 6);
- this.state = 6683;
- this.date_correlation_optimization_option();
- break;
-
- case 7:
- this.enterOuterAlt(localctx, 7);
- this.state = 6684;
- this.db_encryption_option();
- break;
-
- case 8:
- this.enterOuterAlt(localctx, 8);
- this.state = 6685;
- this.db_state_option();
- break;
-
- case 9:
- this.enterOuterAlt(localctx, 9);
- this.state = 6686;
- this.db_update_option();
- break;
-
- case 10:
- this.enterOuterAlt(localctx, 10);
- this.state = 6687;
- this.db_user_access_option();
- break;
-
- case 11:
- this.enterOuterAlt(localctx, 11);
- this.state = 6688;
- this.delayed_durability_option();
- break;
-
- case 12:
- this.enterOuterAlt(localctx, 12);
- this.state = 6689;
- this.external_access_option();
- break;
-
- case 13:
- this.enterOuterAlt(localctx, 13);
- this.state = 6690;
- this.match(TSqlParser.FILESTREAM);
- this.state = 6691;
- this.database_filestream_option();
- break;
-
- case 14:
- this.enterOuterAlt(localctx, 14);
- this.state = 6692;
- this.hadr_options();
- break;
-
- case 15:
- this.enterOuterAlt(localctx, 15);
- this.state = 6693;
- this.mixed_page_allocation_option();
- break;
-
- case 16:
- this.enterOuterAlt(localctx, 16);
- this.state = 6694;
- this.parameterization_option();
- break;
-
- case 17:
- this.enterOuterAlt(localctx, 17);
- this.state = 6695;
- this.recovery_option();
- break;
-
- case 18:
- this.enterOuterAlt(localctx, 18);
- this.state = 6696;
- this.service_broker_option();
- break;
-
- case 19:
- this.enterOuterAlt(localctx, 19);
- this.state = 6697;
- this.snapshot_option();
- break;
-
- case 20:
- this.enterOuterAlt(localctx, 20);
- this.state = 6698;
- this.sql_option();
- break;
-
- case 21:
- this.enterOuterAlt(localctx, 21);
- this.state = 6699;
- this.target_recovery_time_option();
- break;
-
- case 22:
- this.enterOuterAlt(localctx, 22);
- this.state = 6700;
- this.termination();
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Auto_optionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_auto_option;
- return this;
-}
-
-Auto_optionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Auto_optionContext.prototype.constructor = Auto_optionContext;
-
-Auto_optionContext.prototype.AUTO_CLOSE = function() {
- return this.getToken(TSqlParser.AUTO_CLOSE, 0);
-};
-
-Auto_optionContext.prototype.on_off = function() {
- return this.getTypedRuleContext(On_offContext,0);
-};
-
-Auto_optionContext.prototype.AUTO_CREATE_STATISTICS = function() {
- return this.getToken(TSqlParser.AUTO_CREATE_STATISTICS, 0);
-};
-
-Auto_optionContext.prototype.OFF = function() {
- return this.getToken(TSqlParser.OFF, 0);
-};
-
-Auto_optionContext.prototype.ON = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ON);
- } else {
- return this.getToken(TSqlParser.ON, i);
- }
-};
-
-
-Auto_optionContext.prototype.INCREMENTAL = function() {
- return this.getToken(TSqlParser.INCREMENTAL, 0);
-};
-
-Auto_optionContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Auto_optionContext.prototype.AUTO_SHRINK = function() {
- return this.getToken(TSqlParser.AUTO_SHRINK, 0);
-};
-
-Auto_optionContext.prototype.AUTO_UPDATE_STATISTICS = function() {
- return this.getToken(TSqlParser.AUTO_UPDATE_STATISTICS, 0);
-};
-
-Auto_optionContext.prototype.AUTO_UPDATE_STATISTICS_ASYNC = function() {
- return this.getToken(TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC, 0);
-};
-
-Auto_optionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAuto_option(this);
- }
-};
-
-Auto_optionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAuto_option(this);
- }
-};
-
-Auto_optionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAuto_option(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Auto_optionContext = Auto_optionContext;
-
-TSqlParser.prototype.auto_option = function() {
-
- var localctx = new Auto_optionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 506, TSqlParser.RULE_auto_option);
- var _la = 0; // Token type
- try {
- this.state = 6720;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.AUTO_CLOSE:
- this.enterOuterAlt(localctx, 1);
- this.state = 6703;
- this.match(TSqlParser.AUTO_CLOSE);
- this.state = 6704;
- this.on_off();
- break;
- case TSqlParser.AUTO_CREATE_STATISTICS:
- this.enterOuterAlt(localctx, 2);
- this.state = 6705;
- this.match(TSqlParser.AUTO_CREATE_STATISTICS);
- this.state = 6706;
- this.match(TSqlParser.OFF);
- break;
- case TSqlParser.ON:
- this.enterOuterAlt(localctx, 3);
- this.state = 6707;
- this.match(TSqlParser.ON);
- this.state = 6712;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.INCREMENTAL:
- this.state = 6708;
- this.match(TSqlParser.INCREMENTAL);
- this.state = 6709;
- this.match(TSqlParser.EQUAL);
- this.state = 6710;
- this.match(TSqlParser.ON);
- break;
- case TSqlParser.OFF:
- this.state = 6711;
- this.match(TSqlParser.OFF);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
- case TSqlParser.AUTO_SHRINK:
- this.enterOuterAlt(localctx, 4);
- this.state = 6714;
- this.match(TSqlParser.AUTO_SHRINK);
- this.state = 6715;
- this.on_off();
- break;
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- this.enterOuterAlt(localctx, 5);
- this.state = 6716;
- this.match(TSqlParser.AUTO_UPDATE_STATISTICS);
- this.state = 6717;
- this.on_off();
- break;
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- this.enterOuterAlt(localctx, 6);
- this.state = 6718;
- this.match(TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC);
- this.state = 6719;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Change_tracking_optionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_change_tracking_option;
- return this;
-}
-
-Change_tracking_optionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Change_tracking_optionContext.prototype.constructor = Change_tracking_optionContext;
-
-Change_tracking_optionContext.prototype.CHANGE_TRACKING = function() {
- return this.getToken(TSqlParser.CHANGE_TRACKING, 0);
-};
-
-Change_tracking_optionContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Change_tracking_optionContext.prototype.OFF = function() {
- return this.getToken(TSqlParser.OFF, 0);
-};
-
-Change_tracking_optionContext.prototype.ON = function() {
- return this.getToken(TSqlParser.ON, 0);
-};
-
-Change_tracking_optionContext.prototype.change_tracking_option_list = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Change_tracking_option_listContext);
- } else {
- return this.getTypedRuleContext(Change_tracking_option_listContext,i);
- }
-};
-
-Change_tracking_optionContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Change_tracking_optionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterChange_tracking_option(this);
- }
-};
-
-Change_tracking_optionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitChange_tracking_option(this);
- }
-};
-
-Change_tracking_optionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitChange_tracking_option(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Change_tracking_optionContext = Change_tracking_optionContext;
-
-TSqlParser.prototype.change_tracking_option = function() {
-
- var localctx = new Change_tracking_optionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 508, TSqlParser.RULE_change_tracking_option);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 6722;
- this.match(TSqlParser.CHANGE_TRACKING);
- this.state = 6723;
- this.match(TSqlParser.EQUAL);
- this.state = 6739;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.OFF:
- this.state = 6724;
- this.match(TSqlParser.OFF);
- break;
- case TSqlParser.ON:
- this.state = 6725;
- this.match(TSqlParser.ON);
- this.state = 6736;
- this._errHandler.sync(this);
- var _alt = this._interp.adaptivePredict(this._input,885,this._ctx)
- while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
- if(_alt===1) {
- this.state = 6726;
- this.change_tracking_option_list();
- this.state = 6731;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 6727;
- this.match(TSqlParser.COMMA);
- this.state = 6728;
- this.change_tracking_option_list();
- this.state = 6733;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- }
- this.state = 6738;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,885,this._ctx);
- }
-
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Change_tracking_option_listContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_change_tracking_option_list;
- return this;
-}
-
-Change_tracking_option_listContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Change_tracking_option_listContext.prototype.constructor = Change_tracking_option_listContext;
-
-Change_tracking_option_listContext.prototype.AUTO_CLEANUP = function() {
- return this.getToken(TSqlParser.AUTO_CLEANUP, 0);
-};
-
-Change_tracking_option_listContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Change_tracking_option_listContext.prototype.on_off = function() {
- return this.getTypedRuleContext(On_offContext,0);
-};
-
-Change_tracking_option_listContext.prototype.CHANGE_RETENTION = function() {
- return this.getToken(TSqlParser.CHANGE_RETENTION, 0);
-};
-
-Change_tracking_option_listContext.prototype.DAYS = function() {
- return this.getToken(TSqlParser.DAYS, 0);
-};
-
-Change_tracking_option_listContext.prototype.HOURS = function() {
- return this.getToken(TSqlParser.HOURS, 0);
-};
-
-Change_tracking_option_listContext.prototype.MINUTES = function() {
- return this.getToken(TSqlParser.MINUTES, 0);
-};
-
-Change_tracking_option_listContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterChange_tracking_option_list(this);
- }
-};
-
-Change_tracking_option_listContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitChange_tracking_option_list(this);
- }
-};
-
-Change_tracking_option_listContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitChange_tracking_option_list(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Change_tracking_option_listContext = Change_tracking_option_listContext;
-
-TSqlParser.prototype.change_tracking_option_list = function() {
-
- var localctx = new Change_tracking_option_listContext(this, this._ctx, this.state);
- this.enterRule(localctx, 510, TSqlParser.RULE_change_tracking_option_list);
- var _la = 0; // Token type
- try {
- this.state = 6747;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.AUTO_CLEANUP:
- this.enterOuterAlt(localctx, 1);
- this.state = 6741;
- this.match(TSqlParser.AUTO_CLEANUP);
- this.state = 6742;
- this.match(TSqlParser.EQUAL);
- this.state = 6743;
- this.on_off();
- break;
- case TSqlParser.CHANGE_RETENTION:
- this.enterOuterAlt(localctx, 2);
- this.state = 6744;
- this.match(TSqlParser.CHANGE_RETENTION);
- this.state = 6745;
- this.match(TSqlParser.EQUAL);
- this.state = 6746;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.DAYS || _la===TSqlParser.HOURS || _la===TSqlParser.MINUTES)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Containment_optionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_containment_option;
- return this;
-}
-
-Containment_optionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Containment_optionContext.prototype.constructor = Containment_optionContext;
-
-Containment_optionContext.prototype.CONTAINMENT = function() {
- return this.getToken(TSqlParser.CONTAINMENT, 0);
-};
-
-Containment_optionContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Containment_optionContext.prototype.NONE = function() {
- return this.getToken(TSqlParser.NONE, 0);
-};
-
-Containment_optionContext.prototype.PARTIAL = function() {
- return this.getToken(TSqlParser.PARTIAL, 0);
-};
-
-Containment_optionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterContainment_option(this);
- }
-};
-
-Containment_optionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitContainment_option(this);
- }
-};
-
-Containment_optionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitContainment_option(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Containment_optionContext = Containment_optionContext;
-
-TSqlParser.prototype.containment_option = function() {
-
- var localctx = new Containment_optionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 512, TSqlParser.RULE_containment_option);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 6749;
- this.match(TSqlParser.CONTAINMENT);
- this.state = 6750;
- this.match(TSqlParser.EQUAL);
- this.state = 6751;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.NONE || _la===TSqlParser.PARTIAL)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Cursor_optionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_cursor_option;
- return this;
-}
-
-Cursor_optionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Cursor_optionContext.prototype.constructor = Cursor_optionContext;
-
-Cursor_optionContext.prototype.CURSOR_CLOSE_ON_COMMIT = function() {
- return this.getToken(TSqlParser.CURSOR_CLOSE_ON_COMMIT, 0);
-};
-
-Cursor_optionContext.prototype.on_off = function() {
- return this.getTypedRuleContext(On_offContext,0);
-};
-
-Cursor_optionContext.prototype.CURSOR_DEFAULT = function() {
- return this.getToken(TSqlParser.CURSOR_DEFAULT, 0);
-};
-
-Cursor_optionContext.prototype.LOCAL = function() {
- return this.getToken(TSqlParser.LOCAL, 0);
-};
-
-Cursor_optionContext.prototype.GLOBAL = function() {
- return this.getToken(TSqlParser.GLOBAL, 0);
-};
-
-Cursor_optionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCursor_option(this);
- }
-};
-
-Cursor_optionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCursor_option(this);
- }
-};
-
-Cursor_optionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCursor_option(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Cursor_optionContext = Cursor_optionContext;
-
-TSqlParser.prototype.cursor_option = function() {
-
- var localctx = new Cursor_optionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 514, TSqlParser.RULE_cursor_option);
- var _la = 0; // Token type
- try {
- this.state = 6757;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- this.enterOuterAlt(localctx, 1);
- this.state = 6753;
- this.match(TSqlParser.CURSOR_CLOSE_ON_COMMIT);
- this.state = 6754;
- this.on_off();
- break;
- case TSqlParser.CURSOR_DEFAULT:
- this.enterOuterAlt(localctx, 2);
- this.state = 6755;
- this.match(TSqlParser.CURSOR_DEFAULT);
- this.state = 6756;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.GLOBAL || _la===TSqlParser.LOCAL)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Alter_endpointContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_alter_endpoint;
- this.endpointname = null; // IdContext
- this.login = null; // IdContext
- this.state = null; // Token
- this.port = null; // Token
- this.cert_name = null; // IdContext
- return this;
-}
-
-Alter_endpointContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Alter_endpointContext.prototype.constructor = Alter_endpointContext;
-
-Alter_endpointContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Alter_endpointContext.prototype.ENDPOINT = function() {
- return this.getToken(TSqlParser.ENDPOINT, 0);
-};
-
-Alter_endpointContext.prototype.AS = function() {
- return this.getToken(TSqlParser.AS, 0);
-};
-
-Alter_endpointContext.prototype.TCP = function() {
- return this.getToken(TSqlParser.TCP, 0);
-};
-
-Alter_endpointContext.prototype.LR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.LR_BRACKET);
- } else {
- return this.getToken(TSqlParser.LR_BRACKET, i);
- }
-};
-
-
-Alter_endpointContext.prototype.LISTENER_PORT = function() {
- return this.getToken(TSqlParser.LISTENER_PORT, 0);
-};
-
-Alter_endpointContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-Alter_endpointContext.prototype.RR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.RR_BRACKET);
- } else {
- return this.getToken(TSqlParser.RR_BRACKET, i);
- }
-};
-
-
-Alter_endpointContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Alter_endpointContext.prototype.DECIMAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DECIMAL);
- } else {
- return this.getToken(TSqlParser.DECIMAL, i);
- }
-};
-
-
-Alter_endpointContext.prototype.TSQL = function() {
- return this.getToken(TSqlParser.TSQL, 0);
-};
-
-Alter_endpointContext.prototype.FOR = function() {
- return this.getToken(TSqlParser.FOR, 0);
-};
-
-Alter_endpointContext.prototype.SERVICE_BROKER = function() {
- return this.getToken(TSqlParser.SERVICE_BROKER, 0);
-};
-
-Alter_endpointContext.prototype.AUTHENTICATION = function() {
- return this.getToken(TSqlParser.AUTHENTICATION, 0);
-};
-
-Alter_endpointContext.prototype.DATABASE_MIRRORING = function() {
- return this.getToken(TSqlParser.DATABASE_MIRRORING, 0);
-};
-
-Alter_endpointContext.prototype.ROLE = function() {
- return this.getToken(TSqlParser.ROLE, 0);
-};
-
-Alter_endpointContext.prototype.AUTHORIZATION = function() {
- return this.getToken(TSqlParser.AUTHORIZATION, 0);
-};
-
-Alter_endpointContext.prototype.STATE = function() {
- return this.getToken(TSqlParser.STATE, 0);
-};
-
-Alter_endpointContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Alter_endpointContext.prototype.LISTENER_IP = function() {
- return this.getToken(TSqlParser.LISTENER_IP, 0);
-};
-
-Alter_endpointContext.prototype.WITNESS = function() {
- return this.getToken(TSqlParser.WITNESS, 0);
-};
-
-Alter_endpointContext.prototype.PARTNER = function() {
- return this.getToken(TSqlParser.PARTNER, 0);
-};
-
-Alter_endpointContext.prototype.ALL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ALL);
- } else {
- return this.getToken(TSqlParser.ALL, i);
- }
-};
-
-
-Alter_endpointContext.prototype.IPV4_ADDR = function() {
- return this.getToken(TSqlParser.IPV4_ADDR, 0);
-};
-
-Alter_endpointContext.prototype.IPV6_ADDR = function() {
- return this.getToken(TSqlParser.IPV6_ADDR, 0);
-};
-
-Alter_endpointContext.prototype.WINDOWS = function() {
- return this.getToken(TSqlParser.WINDOWS, 0);
-};
-
-Alter_endpointContext.prototype.CERTIFICATE = function() {
- return this.getToken(TSqlParser.CERTIFICATE, 0);
-};
-
-Alter_endpointContext.prototype.ENCRYPTION = function() {
- return this.getToken(TSqlParser.ENCRYPTION, 0);
-};
-
-Alter_endpointContext.prototype.MESSAGE_FORWARDING = function() {
- return this.getToken(TSqlParser.MESSAGE_FORWARDING, 0);
-};
-
-Alter_endpointContext.prototype.MESSAGE_FORWARD_SIZE = function() {
- return this.getToken(TSqlParser.MESSAGE_FORWARD_SIZE, 0);
-};
-
-Alter_endpointContext.prototype.STARTED = function() {
- return this.getToken(TSqlParser.STARTED, 0);
-};
-
-Alter_endpointContext.prototype.STOPPED = function() {
- return this.getToken(TSqlParser.STOPPED, 0);
-};
-
-Alter_endpointContext.prototype.DISABLED = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DISABLED);
- } else {
- return this.getToken(TSqlParser.DISABLED, i);
- }
-};
-
-
-Alter_endpointContext.prototype.SUPPORTED = function() {
- return this.getToken(TSqlParser.SUPPORTED, 0);
-};
-
-Alter_endpointContext.prototype.REQUIRED = function() {
- return this.getToken(TSqlParser.REQUIRED, 0);
-};
-
-Alter_endpointContext.prototype.ENABLED = function() {
- return this.getToken(TSqlParser.ENABLED, 0);
-};
-
-Alter_endpointContext.prototype.NTLM = function() {
- return this.getToken(TSqlParser.NTLM, 0);
-};
-
-Alter_endpointContext.prototype.KERBEROS = function() {
- return this.getToken(TSqlParser.KERBEROS, 0);
-};
-
-Alter_endpointContext.prototype.NEGOTIATE = function() {
- return this.getToken(TSqlParser.NEGOTIATE, 0);
-};
-
-Alter_endpointContext.prototype.ALGORITHM = function() {
- return this.getToken(TSqlParser.ALGORITHM, 0);
-};
-
-Alter_endpointContext.prototype.AES = function() {
- return this.getToken(TSqlParser.AES, 0);
-};
-
-Alter_endpointContext.prototype.RC4 = function() {
- return this.getToken(TSqlParser.RC4, 0);
-};
-
-Alter_endpointContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlter_endpoint(this);
- }
-};
-
-Alter_endpointContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlter_endpoint(this);
- }
-};
-
-Alter_endpointContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlter_endpoint(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Alter_endpointContext = Alter_endpointContext;
-
-TSqlParser.prototype.alter_endpoint = function() {
-
- var localctx = new Alter_endpointContext(this, this._ctx, this.state);
- this.enterRule(localctx, 516, TSqlParser.RULE_alter_endpoint);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 6759;
- this.match(TSqlParser.ALTER);
- this.state = 6760;
- this.match(TSqlParser.ENDPOINT);
- this.state = 6761;
- localctx.endpointname = this.id();
- this.state = 6764;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.AUTHORIZATION) {
- this.state = 6762;
- this.match(TSqlParser.AUTHORIZATION);
- this.state = 6763;
- localctx.login = this.id();
- }
-
- this.state = 6773;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.STATE) {
- this.state = 6766;
- this.match(TSqlParser.STATE);
- this.state = 6767;
- this.match(TSqlParser.EQUAL);
- this.state = 6771;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.STARTED:
- this.state = 6768;
- localctx.state = this.match(TSqlParser.STARTED);
- break;
- case TSqlParser.STOPPED:
- this.state = 6769;
- localctx.state = this.match(TSqlParser.STOPPED);
- break;
- case TSqlParser.DISABLED:
- this.state = 6770;
- localctx.state = this.match(TSqlParser.DISABLED);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- }
-
- this.state = 6775;
- this.match(TSqlParser.AS);
- this.state = 6776;
- this.match(TSqlParser.TCP);
- this.state = 6777;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 6778;
- this.match(TSqlParser.LISTENER_PORT);
- this.state = 6779;
- this.match(TSqlParser.EQUAL);
- this.state = 6780;
- localctx.port = this.match(TSqlParser.DECIMAL);
- this.state = 6785;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 6781;
- this.match(TSqlParser.COMMA);
- this.state = 6782;
- this.match(TSqlParser.LISTENER_IP);
- this.state = 6783;
- this.match(TSqlParser.EQUAL);
- this.state = 6784;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.ALL || _la===TSqlParser.IPV4_ADDR || _la===TSqlParser.IPV6_ADDR)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- }
-
- this.state = 6787;
- this.match(TSqlParser.RR_BRACKET);
- this.state = 6897;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,916,this._ctx);
- switch(la_) {
- case 1:
- this.state = 6788;
- this.match(TSqlParser.TSQL);
- break;
-
- case 2:
- this.state = 6789;
- this.match(TSqlParser.FOR);
- this.state = 6790;
- this.match(TSqlParser.SERVICE_BROKER);
- this.state = 6791;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 6792;
- this.match(TSqlParser.AUTHENTICATION);
- this.state = 6793;
- this.match(TSqlParser.EQUAL);
- this.state = 6810;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.WINDOWS:
- this.state = 6794;
- this.match(TSqlParser.WINDOWS);
- this.state = 6796;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.KERBEROS || _la===TSqlParser.NEGOTIATE || _la===TSqlParser.NTLM) {
- this.state = 6795;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.KERBEROS || _la===TSqlParser.NEGOTIATE || _la===TSqlParser.NTLM)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- }
-
- this.state = 6800;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.CERTIFICATE) {
- this.state = 6798;
- this.match(TSqlParser.CERTIFICATE);
- this.state = 6799;
- localctx.cert_name = this.id();
- }
-
- break;
- case TSqlParser.CERTIFICATE:
- this.state = 6802;
- this.match(TSqlParser.CERTIFICATE);
- this.state = 6803;
- localctx.cert_name = this.id();
- this.state = 6805;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.WINDOWS) {
- this.state = 6804;
- this.match(TSqlParser.WINDOWS);
- }
-
- this.state = 6808;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.KERBEROS || _la===TSqlParser.NEGOTIATE || _la===TSqlParser.NTLM) {
- this.state = 6807;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.KERBEROS || _la===TSqlParser.NEGOTIATE || _la===TSqlParser.NTLM)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- }
-
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 6829;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,901,this._ctx);
- if(la_===1) {
- this.state = 6813;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 6812;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 6815;
- this.match(TSqlParser.ENCRYPTION);
- this.state = 6816;
- this.match(TSqlParser.EQUAL);
- this.state = 6817;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.REQUIRED || _la===TSqlParser.SUPPORTED || _la===TSqlParser.DISABLED)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 6827;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.ALGORITHM) {
- this.state = 6818;
- this.match(TSqlParser.ALGORITHM);
- this.state = 6825;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,899,this._ctx);
- switch(la_) {
- case 1:
- this.state = 6819;
- this.match(TSqlParser.AES);
- break;
-
- case 2:
- this.state = 6820;
- this.match(TSqlParser.RC4);
- break;
-
- case 3:
- this.state = 6821;
- this.match(TSqlParser.AES);
- this.state = 6822;
- this.match(TSqlParser.RC4);
- break;
-
- case 4:
- this.state = 6823;
- this.match(TSqlParser.RC4);
- this.state = 6824;
- this.match(TSqlParser.AES);
- break;
-
- }
- }
-
-
- }
- this.state = 6837;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,903,this._ctx);
- if(la_===1) {
- this.state = 6832;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 6831;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 6834;
- this.match(TSqlParser.MESSAGE_FORWARDING);
- this.state = 6835;
- this.match(TSqlParser.EQUAL);
- this.state = 6836;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.ENABLED || _la===TSqlParser.DISABLED)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
-
- }
- this.state = 6845;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.MESSAGE_FORWARD_SIZE || _la===TSqlParser.COMMA) {
- this.state = 6840;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 6839;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 6842;
- this.match(TSqlParser.MESSAGE_FORWARD_SIZE);
- this.state = 6843;
- this.match(TSqlParser.EQUAL);
- this.state = 6844;
- this.match(TSqlParser.DECIMAL);
- }
-
- this.state = 6847;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- case 3:
- this.state = 6848;
- this.match(TSqlParser.FOR);
- this.state = 6849;
- this.match(TSqlParser.DATABASE_MIRRORING);
- this.state = 6850;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 6851;
- this.match(TSqlParser.AUTHENTICATION);
- this.state = 6852;
- this.match(TSqlParser.EQUAL);
- this.state = 6869;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.WINDOWS:
- this.state = 6853;
- this.match(TSqlParser.WINDOWS);
- this.state = 6855;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.KERBEROS || _la===TSqlParser.NEGOTIATE || _la===TSqlParser.NTLM) {
- this.state = 6854;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.KERBEROS || _la===TSqlParser.NEGOTIATE || _la===TSqlParser.NTLM)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- }
-
- this.state = 6859;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.CERTIFICATE) {
- this.state = 6857;
- this.match(TSqlParser.CERTIFICATE);
- this.state = 6858;
- localctx.cert_name = this.id();
- }
-
- break;
- case TSqlParser.CERTIFICATE:
- this.state = 6861;
- this.match(TSqlParser.CERTIFICATE);
- this.state = 6862;
- localctx.cert_name = this.id();
- this.state = 6864;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.WINDOWS) {
- this.state = 6863;
- this.match(TSqlParser.WINDOWS);
- }
-
- this.state = 6867;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.KERBEROS || _la===TSqlParser.NEGOTIATE || _la===TSqlParser.NTLM) {
- this.state = 6866;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.KERBEROS || _la===TSqlParser.NEGOTIATE || _la===TSqlParser.NTLM)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- }
-
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 6888;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,914,this._ctx);
- if(la_===1) {
- this.state = 6872;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 6871;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 6874;
- this.match(TSqlParser.ENCRYPTION);
- this.state = 6875;
- this.match(TSqlParser.EQUAL);
- this.state = 6876;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.REQUIRED || _la===TSqlParser.SUPPORTED || _la===TSqlParser.DISABLED)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 6886;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.ALGORITHM) {
- this.state = 6877;
- this.match(TSqlParser.ALGORITHM);
- this.state = 6884;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,912,this._ctx);
- switch(la_) {
- case 1:
- this.state = 6878;
- this.match(TSqlParser.AES);
- break;
-
- case 2:
- this.state = 6879;
- this.match(TSqlParser.RC4);
- break;
-
- case 3:
- this.state = 6880;
- this.match(TSqlParser.AES);
- this.state = 6881;
- this.match(TSqlParser.RC4);
- break;
-
- case 4:
- this.state = 6882;
- this.match(TSqlParser.RC4);
- this.state = 6883;
- this.match(TSqlParser.AES);
- break;
-
- }
- }
-
-
- }
- this.state = 6891;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 6890;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 6893;
- this.match(TSqlParser.ROLE);
- this.state = 6894;
- this.match(TSqlParser.EQUAL);
- this.state = 6895;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.ALL || _la===TSqlParser.WITNESS || _la===TSqlParser.PARTNER)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 6896;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Database_mirroring_optionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_database_mirroring_option;
- return this;
-}
-
-Database_mirroring_optionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Database_mirroring_optionContext.prototype.constructor = Database_mirroring_optionContext;
-
-Database_mirroring_optionContext.prototype.mirroring_set_option = function() {
- return this.getTypedRuleContext(Mirroring_set_optionContext,0);
-};
-
-Database_mirroring_optionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDatabase_mirroring_option(this);
- }
-};
-
-Database_mirroring_optionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDatabase_mirroring_option(this);
- }
-};
-
-Database_mirroring_optionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDatabase_mirroring_option(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Database_mirroring_optionContext = Database_mirroring_optionContext;
-
-TSqlParser.prototype.database_mirroring_option = function() {
-
- var localctx = new Database_mirroring_optionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 518, TSqlParser.RULE_database_mirroring_option);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 6899;
- this.mirroring_set_option();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Mirroring_set_optionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_mirroring_set_option;
- return this;
-}
-
-Mirroring_set_optionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Mirroring_set_optionContext.prototype.constructor = Mirroring_set_optionContext;
-
-Mirroring_set_optionContext.prototype.mirroring_partner = function() {
- return this.getTypedRuleContext(Mirroring_partnerContext,0);
-};
-
-Mirroring_set_optionContext.prototype.partner_option = function() {
- return this.getTypedRuleContext(Partner_optionContext,0);
-};
-
-Mirroring_set_optionContext.prototype.mirroring_witness = function() {
- return this.getTypedRuleContext(Mirroring_witnessContext,0);
-};
-
-Mirroring_set_optionContext.prototype.witness_option = function() {
- return this.getTypedRuleContext(Witness_optionContext,0);
-};
-
-Mirroring_set_optionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterMirroring_set_option(this);
- }
-};
-
-Mirroring_set_optionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitMirroring_set_option(this);
- }
-};
-
-Mirroring_set_optionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitMirroring_set_option(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Mirroring_set_optionContext = Mirroring_set_optionContext;
-
-TSqlParser.prototype.mirroring_set_option = function() {
-
- var localctx = new Mirroring_set_optionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 520, TSqlParser.RULE_mirroring_set_option);
- try {
- this.state = 6907;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.PARTNER:
- this.enterOuterAlt(localctx, 1);
- this.state = 6901;
- this.mirroring_partner();
- this.state = 6902;
- this.partner_option();
- break;
- case TSqlParser.WITNESS:
- this.enterOuterAlt(localctx, 2);
- this.state = 6904;
- this.mirroring_witness();
- this.state = 6905;
- this.witness_option();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Mirroring_partnerContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_mirroring_partner;
- return this;
-}
-
-Mirroring_partnerContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Mirroring_partnerContext.prototype.constructor = Mirroring_partnerContext;
-
-Mirroring_partnerContext.prototype.PARTNER = function() {
- return this.getToken(TSqlParser.PARTNER, 0);
-};
-
-Mirroring_partnerContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterMirroring_partner(this);
- }
-};
-
-Mirroring_partnerContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitMirroring_partner(this);
- }
-};
-
-Mirroring_partnerContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitMirroring_partner(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Mirroring_partnerContext = Mirroring_partnerContext;
-
-TSqlParser.prototype.mirroring_partner = function() {
-
- var localctx = new Mirroring_partnerContext(this, this._ctx, this.state);
- this.enterRule(localctx, 522, TSqlParser.RULE_mirroring_partner);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 6909;
- this.match(TSqlParser.PARTNER);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Mirroring_witnessContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_mirroring_witness;
- return this;
-}
-
-Mirroring_witnessContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Mirroring_witnessContext.prototype.constructor = Mirroring_witnessContext;
-
-Mirroring_witnessContext.prototype.WITNESS = function() {
- return this.getToken(TSqlParser.WITNESS, 0);
-};
-
-Mirroring_witnessContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterMirroring_witness(this);
- }
-};
-
-Mirroring_witnessContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitMirroring_witness(this);
- }
-};
-
-Mirroring_witnessContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitMirroring_witness(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Mirroring_witnessContext = Mirroring_witnessContext;
-
-TSqlParser.prototype.mirroring_witness = function() {
-
- var localctx = new Mirroring_witnessContext(this, this._ctx, this.state);
- this.enterRule(localctx, 524, TSqlParser.RULE_mirroring_witness);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 6911;
- this.match(TSqlParser.WITNESS);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Witness_partner_equalContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_witness_partner_equal;
- return this;
-}
-
-Witness_partner_equalContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Witness_partner_equalContext.prototype.constructor = Witness_partner_equalContext;
-
-Witness_partner_equalContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Witness_partner_equalContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterWitness_partner_equal(this);
- }
-};
-
-Witness_partner_equalContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitWitness_partner_equal(this);
- }
-};
-
-Witness_partner_equalContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitWitness_partner_equal(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Witness_partner_equalContext = Witness_partner_equalContext;
-
-TSqlParser.prototype.witness_partner_equal = function() {
-
- var localctx = new Witness_partner_equalContext(this, this._ctx, this.state);
- this.enterRule(localctx, 526, TSqlParser.RULE_witness_partner_equal);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 6913;
- this.match(TSqlParser.EQUAL);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Partner_optionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_partner_option;
- return this;
-}
-
-Partner_optionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Partner_optionContext.prototype.constructor = Partner_optionContext;
-
-Partner_optionContext.prototype.witness_partner_equal = function() {
- return this.getTypedRuleContext(Witness_partner_equalContext,0);
-};
-
-Partner_optionContext.prototype.partner_server = function() {
- return this.getTypedRuleContext(Partner_serverContext,0);
-};
-
-Partner_optionContext.prototype.FAILOVER = function() {
- return this.getToken(TSqlParser.FAILOVER, 0);
-};
-
-Partner_optionContext.prototype.FORCE_SERVICE_ALLOW_DATA_LOSS = function() {
- return this.getToken(TSqlParser.FORCE_SERVICE_ALLOW_DATA_LOSS, 0);
-};
-
-Partner_optionContext.prototype.OFF = function() {
- return this.getToken(TSqlParser.OFF, 0);
-};
-
-Partner_optionContext.prototype.RESUME = function() {
- return this.getToken(TSqlParser.RESUME, 0);
-};
-
-Partner_optionContext.prototype.SAFETY = function() {
- return this.getToken(TSqlParser.SAFETY, 0);
-};
-
-Partner_optionContext.prototype.FULL = function() {
- return this.getToken(TSqlParser.FULL, 0);
-};
-
-Partner_optionContext.prototype.SUSPEND = function() {
- return this.getToken(TSqlParser.SUSPEND, 0);
-};
-
-Partner_optionContext.prototype.TIMEOUT = function() {
- return this.getToken(TSqlParser.TIMEOUT, 0);
-};
-
-Partner_optionContext.prototype.DECIMAL = function() {
- return this.getToken(TSqlParser.DECIMAL, 0);
-};
-
-Partner_optionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterPartner_option(this);
- }
-};
-
-Partner_optionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitPartner_option(this);
- }
-};
-
-Partner_optionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitPartner_option(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Partner_optionContext = Partner_optionContext;
-
-TSqlParser.prototype.partner_option = function() {
-
- var localctx = new Partner_optionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 528, TSqlParser.RULE_partner_option);
- var _la = 0; // Token type
- try {
- this.state = 6927;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.EQUAL:
- this.enterOuterAlt(localctx, 1);
- this.state = 6915;
- this.witness_partner_equal();
- this.state = 6916;
- this.partner_server();
- break;
- case TSqlParser.FAILOVER:
- this.enterOuterAlt(localctx, 2);
- this.state = 6918;
- this.match(TSqlParser.FAILOVER);
- break;
- case TSqlParser.FORCE_SERVICE_ALLOW_DATA_LOSS:
- this.enterOuterAlt(localctx, 3);
- this.state = 6919;
- this.match(TSqlParser.FORCE_SERVICE_ALLOW_DATA_LOSS);
- break;
- case TSqlParser.OFF:
- this.enterOuterAlt(localctx, 4);
- this.state = 6920;
- this.match(TSqlParser.OFF);
- break;
- case TSqlParser.RESUME:
- this.enterOuterAlt(localctx, 5);
- this.state = 6921;
- this.match(TSqlParser.RESUME);
- break;
- case TSqlParser.SAFETY:
- this.enterOuterAlt(localctx, 6);
- this.state = 6922;
- this.match(TSqlParser.SAFETY);
- this.state = 6923;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.FULL || _la===TSqlParser.OFF)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- case TSqlParser.SUSPEND:
- this.enterOuterAlt(localctx, 7);
- this.state = 6924;
- this.match(TSqlParser.SUSPEND);
- break;
- case TSqlParser.TIMEOUT:
- this.enterOuterAlt(localctx, 8);
- this.state = 6925;
- this.match(TSqlParser.TIMEOUT);
- this.state = 6926;
- this.match(TSqlParser.DECIMAL);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Witness_optionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_witness_option;
- return this;
-}
-
-Witness_optionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Witness_optionContext.prototype.constructor = Witness_optionContext;
-
-Witness_optionContext.prototype.witness_partner_equal = function() {
- return this.getTypedRuleContext(Witness_partner_equalContext,0);
-};
-
-Witness_optionContext.prototype.witness_server = function() {
- return this.getTypedRuleContext(Witness_serverContext,0);
-};
-
-Witness_optionContext.prototype.OFF = function() {
- return this.getToken(TSqlParser.OFF, 0);
-};
-
-Witness_optionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterWitness_option(this);
- }
-};
-
-Witness_optionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitWitness_option(this);
- }
-};
-
-Witness_optionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitWitness_option(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Witness_optionContext = Witness_optionContext;
-
-TSqlParser.prototype.witness_option = function() {
-
- var localctx = new Witness_optionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 530, TSqlParser.RULE_witness_option);
- try {
- this.state = 6933;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.EQUAL:
- this.enterOuterAlt(localctx, 1);
- this.state = 6929;
- this.witness_partner_equal();
- this.state = 6930;
- this.witness_server();
- break;
- case TSqlParser.OFF:
- this.enterOuterAlt(localctx, 2);
- this.state = 6932;
- this.match(TSqlParser.OFF);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Witness_serverContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_witness_server;
- return this;
-}
-
-Witness_serverContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Witness_serverContext.prototype.constructor = Witness_serverContext;
-
-Witness_serverContext.prototype.partner_server = function() {
- return this.getTypedRuleContext(Partner_serverContext,0);
-};
-
-Witness_serverContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterWitness_server(this);
- }
-};
-
-Witness_serverContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitWitness_server(this);
- }
-};
-
-Witness_serverContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitWitness_server(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Witness_serverContext = Witness_serverContext;
-
-TSqlParser.prototype.witness_server = function() {
-
- var localctx = new Witness_serverContext(this, this._ctx, this.state);
- this.enterRule(localctx, 532, TSqlParser.RULE_witness_server);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 6935;
- this.partner_server();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Partner_serverContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_partner_server;
- return this;
-}
-
-Partner_serverContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Partner_serverContext.prototype.constructor = Partner_serverContext;
-
-Partner_serverContext.prototype.partner_server_tcp_prefix = function() {
- return this.getTypedRuleContext(Partner_server_tcp_prefixContext,0);
-};
-
-Partner_serverContext.prototype.host = function() {
- return this.getTypedRuleContext(HostContext,0);
-};
-
-Partner_serverContext.prototype.mirroring_host_port_seperator = function() {
- return this.getTypedRuleContext(Mirroring_host_port_seperatorContext,0);
-};
-
-Partner_serverContext.prototype.port_number = function() {
- return this.getTypedRuleContext(Port_numberContext,0);
-};
-
-Partner_serverContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterPartner_server(this);
- }
-};
-
-Partner_serverContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitPartner_server(this);
- }
-};
-
-Partner_serverContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitPartner_server(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Partner_serverContext = Partner_serverContext;
-
-TSqlParser.prototype.partner_server = function() {
-
- var localctx = new Partner_serverContext(this, this._ctx, this.state);
- this.enterRule(localctx, 534, TSqlParser.RULE_partner_server);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 6937;
- this.partner_server_tcp_prefix();
- this.state = 6938;
- this.host();
- this.state = 6939;
- this.mirroring_host_port_seperator();
- this.state = 6940;
- this.port_number();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Mirroring_host_port_seperatorContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_mirroring_host_port_seperator;
- return this;
-}
-
-Mirroring_host_port_seperatorContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Mirroring_host_port_seperatorContext.prototype.constructor = Mirroring_host_port_seperatorContext;
-
-Mirroring_host_port_seperatorContext.prototype.COLON = function() {
- return this.getToken(TSqlParser.COLON, 0);
-};
-
-Mirroring_host_port_seperatorContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterMirroring_host_port_seperator(this);
- }
-};
-
-Mirroring_host_port_seperatorContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitMirroring_host_port_seperator(this);
- }
-};
-
-Mirroring_host_port_seperatorContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitMirroring_host_port_seperator(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Mirroring_host_port_seperatorContext = Mirroring_host_port_seperatorContext;
-
-TSqlParser.prototype.mirroring_host_port_seperator = function() {
-
- var localctx = new Mirroring_host_port_seperatorContext(this, this._ctx, this.state);
- this.enterRule(localctx, 536, TSqlParser.RULE_mirroring_host_port_seperator);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 6942;
- this.match(TSqlParser.COLON);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Partner_server_tcp_prefixContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_partner_server_tcp_prefix;
- return this;
-}
-
-Partner_server_tcp_prefixContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Partner_server_tcp_prefixContext.prototype.constructor = Partner_server_tcp_prefixContext;
-
-Partner_server_tcp_prefixContext.prototype.TCP = function() {
- return this.getToken(TSqlParser.TCP, 0);
-};
-
-Partner_server_tcp_prefixContext.prototype.COLON = function() {
- return this.getToken(TSqlParser.COLON, 0);
-};
-
-Partner_server_tcp_prefixContext.prototype.DOUBLE_FORWARD_SLASH = function() {
- return this.getToken(TSqlParser.DOUBLE_FORWARD_SLASH, 0);
-};
-
-Partner_server_tcp_prefixContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterPartner_server_tcp_prefix(this);
- }
-};
-
-Partner_server_tcp_prefixContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitPartner_server_tcp_prefix(this);
- }
-};
-
-Partner_server_tcp_prefixContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitPartner_server_tcp_prefix(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Partner_server_tcp_prefixContext = Partner_server_tcp_prefixContext;
-
-TSqlParser.prototype.partner_server_tcp_prefix = function() {
-
- var localctx = new Partner_server_tcp_prefixContext(this, this._ctx, this.state);
- this.enterRule(localctx, 538, TSqlParser.RULE_partner_server_tcp_prefix);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 6944;
- this.match(TSqlParser.TCP);
- this.state = 6945;
- this.match(TSqlParser.COLON);
- this.state = 6946;
- this.match(TSqlParser.DOUBLE_FORWARD_SLASH);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Port_numberContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_port_number;
- this.port = null; // Token
- return this;
-}
-
-Port_numberContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Port_numberContext.prototype.constructor = Port_numberContext;
-
-Port_numberContext.prototype.DECIMAL = function() {
- return this.getToken(TSqlParser.DECIMAL, 0);
-};
-
-Port_numberContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterPort_number(this);
- }
-};
-
-Port_numberContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitPort_number(this);
- }
-};
-
-Port_numberContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitPort_number(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Port_numberContext = Port_numberContext;
-
-TSqlParser.prototype.port_number = function() {
-
- var localctx = new Port_numberContext(this, this._ctx, this.state);
- this.enterRule(localctx, 540, TSqlParser.RULE_port_number);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 6948;
- localctx.port = this.match(TSqlParser.DECIMAL);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function HostContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_host;
- return this;
-}
-
-HostContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-HostContext.prototype.constructor = HostContext;
-
-HostContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-HostContext.prototype.DOT = function() {
- return this.getToken(TSqlParser.DOT, 0);
-};
-
-HostContext.prototype.host = function() {
- return this.getTypedRuleContext(HostContext,0);
-};
-
-HostContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterHost(this);
- }
-};
-
-HostContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitHost(this);
- }
-};
-
-HostContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitHost(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.HostContext = HostContext;
-
-TSqlParser.prototype.host = function() {
-
- var localctx = new HostContext(this, this._ctx, this.state);
- this.enterRule(localctx, 542, TSqlParser.RULE_host);
- try {
- this.state = 6960;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,921,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 6950;
- this.id();
- this.state = 6951;
- this.match(TSqlParser.DOT);
- this.state = 6952;
- this.host();
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 6958;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,920,this._ctx);
- switch(la_) {
- case 1:
- this.state = 6954;
- this.id();
- this.state = 6955;
- this.match(TSqlParser.DOT);
- break;
-
- case 2:
- this.state = 6957;
- this.id();
- break;
-
- }
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Date_correlation_optimization_optionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_date_correlation_optimization_option;
- return this;
-}
-
-Date_correlation_optimization_optionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Date_correlation_optimization_optionContext.prototype.constructor = Date_correlation_optimization_optionContext;
-
-Date_correlation_optimization_optionContext.prototype.DATE_CORRELATION_OPTIMIZATION = function() {
- return this.getToken(TSqlParser.DATE_CORRELATION_OPTIMIZATION, 0);
-};
-
-Date_correlation_optimization_optionContext.prototype.on_off = function() {
- return this.getTypedRuleContext(On_offContext,0);
-};
-
-Date_correlation_optimization_optionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDate_correlation_optimization_option(this);
- }
-};
-
-Date_correlation_optimization_optionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDate_correlation_optimization_option(this);
- }
-};
-
-Date_correlation_optimization_optionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDate_correlation_optimization_option(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Date_correlation_optimization_optionContext = Date_correlation_optimization_optionContext;
-
-TSqlParser.prototype.date_correlation_optimization_option = function() {
-
- var localctx = new Date_correlation_optimization_optionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 544, TSqlParser.RULE_date_correlation_optimization_option);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 6962;
- this.match(TSqlParser.DATE_CORRELATION_OPTIMIZATION);
- this.state = 6963;
- this.on_off();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Db_encryption_optionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_db_encryption_option;
- return this;
-}
-
-Db_encryption_optionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Db_encryption_optionContext.prototype.constructor = Db_encryption_optionContext;
-
-Db_encryption_optionContext.prototype.ENCRYPTION = function() {
- return this.getToken(TSqlParser.ENCRYPTION, 0);
-};
-
-Db_encryption_optionContext.prototype.on_off = function() {
- return this.getTypedRuleContext(On_offContext,0);
-};
-
-Db_encryption_optionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDb_encryption_option(this);
- }
-};
-
-Db_encryption_optionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDb_encryption_option(this);
- }
-};
-
-Db_encryption_optionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDb_encryption_option(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Db_encryption_optionContext = Db_encryption_optionContext;
-
-TSqlParser.prototype.db_encryption_option = function() {
-
- var localctx = new Db_encryption_optionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 546, TSqlParser.RULE_db_encryption_option);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 6965;
- this.match(TSqlParser.ENCRYPTION);
- this.state = 6966;
- this.on_off();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Db_state_optionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_db_state_option;
- return this;
-}
-
-Db_state_optionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Db_state_optionContext.prototype.constructor = Db_state_optionContext;
-
-Db_state_optionContext.prototype.ONLINE = function() {
- return this.getToken(TSqlParser.ONLINE, 0);
-};
-
-Db_state_optionContext.prototype.OFFLINE = function() {
- return this.getToken(TSqlParser.OFFLINE, 0);
-};
-
-Db_state_optionContext.prototype.EMERGENCY = function() {
- return this.getToken(TSqlParser.EMERGENCY, 0);
-};
-
-Db_state_optionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDb_state_option(this);
- }
-};
-
-Db_state_optionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDb_state_option(this);
- }
-};
-
-Db_state_optionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDb_state_option(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Db_state_optionContext = Db_state_optionContext;
-
-TSqlParser.prototype.db_state_option = function() {
-
- var localctx = new Db_state_optionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 548, TSqlParser.RULE_db_state_option);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 6968;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.EMERGENCY || _la===TSqlParser.OFFLINE || _la===TSqlParser.ONLINE)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Db_update_optionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_db_update_option;
- return this;
-}
-
-Db_update_optionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Db_update_optionContext.prototype.constructor = Db_update_optionContext;
-
-Db_update_optionContext.prototype.READ_ONLY = function() {
- return this.getToken(TSqlParser.READ_ONLY, 0);
-};
-
-Db_update_optionContext.prototype.READ_WRITE = function() {
- return this.getToken(TSqlParser.READ_WRITE, 0);
-};
-
-Db_update_optionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDb_update_option(this);
- }
-};
-
-Db_update_optionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDb_update_option(this);
- }
-};
-
-Db_update_optionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDb_update_option(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Db_update_optionContext = Db_update_optionContext;
-
-TSqlParser.prototype.db_update_option = function() {
-
- var localctx = new Db_update_optionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 550, TSqlParser.RULE_db_update_option);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 6970;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.READ_ONLY || _la===TSqlParser.READ_WRITE)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Db_user_access_optionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_db_user_access_option;
- return this;
-}
-
-Db_user_access_optionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Db_user_access_optionContext.prototype.constructor = Db_user_access_optionContext;
-
-Db_user_access_optionContext.prototype.SINGLE_USER = function() {
- return this.getToken(TSqlParser.SINGLE_USER, 0);
-};
-
-Db_user_access_optionContext.prototype.RESTRICTED_USER = function() {
- return this.getToken(TSqlParser.RESTRICTED_USER, 0);
-};
-
-Db_user_access_optionContext.prototype.MULTI_USER = function() {
- return this.getToken(TSqlParser.MULTI_USER, 0);
-};
-
-Db_user_access_optionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDb_user_access_option(this);
- }
-};
-
-Db_user_access_optionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDb_user_access_option(this);
- }
-};
-
-Db_user_access_optionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDb_user_access_option(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Db_user_access_optionContext = Db_user_access_optionContext;
-
-TSqlParser.prototype.db_user_access_option = function() {
-
- var localctx = new Db_user_access_optionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 552, TSqlParser.RULE_db_user_access_option);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 6972;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.MULTI_USER || _la===TSqlParser.RESTRICTED_USER || _la===TSqlParser.SINGLE_USER)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Delayed_durability_optionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_delayed_durability_option;
- return this;
-}
-
-Delayed_durability_optionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Delayed_durability_optionContext.prototype.constructor = Delayed_durability_optionContext;
-
-Delayed_durability_optionContext.prototype.DELAYED_DURABILITY = function() {
- return this.getToken(TSqlParser.DELAYED_DURABILITY, 0);
-};
-
-Delayed_durability_optionContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Delayed_durability_optionContext.prototype.DISABLED = function() {
- return this.getToken(TSqlParser.DISABLED, 0);
-};
-
-Delayed_durability_optionContext.prototype.ALLOWED = function() {
- return this.getToken(TSqlParser.ALLOWED, 0);
-};
-
-Delayed_durability_optionContext.prototype.FORCED = function() {
- return this.getToken(TSqlParser.FORCED, 0);
-};
-
-Delayed_durability_optionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDelayed_durability_option(this);
- }
-};
-
-Delayed_durability_optionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDelayed_durability_option(this);
- }
-};
-
-Delayed_durability_optionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDelayed_durability_option(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Delayed_durability_optionContext = Delayed_durability_optionContext;
-
-TSqlParser.prototype.delayed_durability_option = function() {
-
- var localctx = new Delayed_durability_optionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 554, TSqlParser.RULE_delayed_durability_option);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 6974;
- this.match(TSqlParser.DELAYED_DURABILITY);
- this.state = 6975;
- this.match(TSqlParser.EQUAL);
- this.state = 6976;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.ALLOWED || _la===TSqlParser.DISABLED || _la===TSqlParser.FORCED)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function External_access_optionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_external_access_option;
- return this;
-}
-
-External_access_optionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-External_access_optionContext.prototype.constructor = External_access_optionContext;
-
-External_access_optionContext.prototype.DB_CHAINING = function() {
- return this.getToken(TSqlParser.DB_CHAINING, 0);
-};
-
-External_access_optionContext.prototype.on_off = function() {
- return this.getTypedRuleContext(On_offContext,0);
-};
-
-External_access_optionContext.prototype.TRUSTWORTHY = function() {
- return this.getToken(TSqlParser.TRUSTWORTHY, 0);
-};
-
-External_access_optionContext.prototype.DEFAULT_LANGUAGE = function() {
- return this.getToken(TSqlParser.DEFAULT_LANGUAGE, 0);
-};
-
-External_access_optionContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-External_access_optionContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-External_access_optionContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-External_access_optionContext.prototype.DEFAULT_FULLTEXT_LANGUAGE = function() {
- return this.getToken(TSqlParser.DEFAULT_FULLTEXT_LANGUAGE, 0);
-};
-
-External_access_optionContext.prototype.NESTED_TRIGGERS = function() {
- return this.getToken(TSqlParser.NESTED_TRIGGERS, 0);
-};
-
-External_access_optionContext.prototype.OFF = function() {
- return this.getToken(TSqlParser.OFF, 0);
-};
-
-External_access_optionContext.prototype.ON = function() {
- return this.getToken(TSqlParser.ON, 0);
-};
-
-External_access_optionContext.prototype.TRANSFORM_NOISE_WORDS = function() {
- return this.getToken(TSqlParser.TRANSFORM_NOISE_WORDS, 0);
-};
-
-External_access_optionContext.prototype.TWO_DIGIT_YEAR_CUTOFF = function() {
- return this.getToken(TSqlParser.TWO_DIGIT_YEAR_CUTOFF, 0);
-};
-
-External_access_optionContext.prototype.DECIMAL = function() {
- return this.getToken(TSqlParser.DECIMAL, 0);
-};
-
-External_access_optionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterExternal_access_option(this);
- }
-};
-
-External_access_optionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitExternal_access_option(this);
- }
-};
-
-External_access_optionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitExternal_access_option(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.External_access_optionContext = External_access_optionContext;
-
-TSqlParser.prototype.external_access_option = function() {
-
- var localctx = new External_access_optionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 556, TSqlParser.RULE_external_access_option);
- var _la = 0; // Token type
- try {
- this.state = 7003;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.DB_CHAINING:
- this.enterOuterAlt(localctx, 1);
- this.state = 6978;
- this.match(TSqlParser.DB_CHAINING);
- this.state = 6979;
- this.on_off();
- break;
- case TSqlParser.TRUSTWORTHY:
- this.enterOuterAlt(localctx, 2);
- this.state = 6980;
- this.match(TSqlParser.TRUSTWORTHY);
- this.state = 6981;
- this.on_off();
- break;
- case TSqlParser.DEFAULT_LANGUAGE:
- this.enterOuterAlt(localctx, 3);
- this.state = 6982;
- this.match(TSqlParser.DEFAULT_LANGUAGE);
- this.state = 6983;
- this.match(TSqlParser.EQUAL);
- this.state = 6986;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.state = 6984;
- this.id();
- break;
- case TSqlParser.STRING:
- this.state = 6985;
- this.match(TSqlParser.STRING);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- this.enterOuterAlt(localctx, 4);
- this.state = 6988;
- this.match(TSqlParser.DEFAULT_FULLTEXT_LANGUAGE);
- this.state = 6989;
- this.match(TSqlParser.EQUAL);
- this.state = 6992;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.state = 6990;
- this.id();
- break;
- case TSqlParser.STRING:
- this.state = 6991;
- this.match(TSqlParser.STRING);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
- case TSqlParser.NESTED_TRIGGERS:
- this.enterOuterAlt(localctx, 5);
- this.state = 6994;
- this.match(TSqlParser.NESTED_TRIGGERS);
- this.state = 6995;
- this.match(TSqlParser.EQUAL);
- this.state = 6996;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- this.enterOuterAlt(localctx, 6);
- this.state = 6997;
- this.match(TSqlParser.TRANSFORM_NOISE_WORDS);
- this.state = 6998;
- this.match(TSqlParser.EQUAL);
- this.state = 6999;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- this.enterOuterAlt(localctx, 7);
- this.state = 7000;
- this.match(TSqlParser.TWO_DIGIT_YEAR_CUTOFF);
- this.state = 7001;
- this.match(TSqlParser.EQUAL);
- this.state = 7002;
- this.match(TSqlParser.DECIMAL);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Hadr_optionsContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_hadr_options;
- this.availability_group_name = null; // IdContext
- return this;
-}
-
-Hadr_optionsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Hadr_optionsContext.prototype.constructor = Hadr_optionsContext;
-
-Hadr_optionsContext.prototype.HADR = function() {
- return this.getToken(TSqlParser.HADR, 0);
-};
-
-Hadr_optionsContext.prototype.SUSPEND = function() {
- return this.getToken(TSqlParser.SUSPEND, 0);
-};
-
-Hadr_optionsContext.prototype.RESUME = function() {
- return this.getToken(TSqlParser.RESUME, 0);
-};
-
-Hadr_optionsContext.prototype.AVAILABILITY = function() {
- return this.getToken(TSqlParser.AVAILABILITY, 0);
-};
-
-Hadr_optionsContext.prototype.GROUP = function() {
- return this.getToken(TSqlParser.GROUP, 0);
-};
-
-Hadr_optionsContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Hadr_optionsContext.prototype.OFF = function() {
- return this.getToken(TSqlParser.OFF, 0);
-};
-
-Hadr_optionsContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Hadr_optionsContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterHadr_options(this);
- }
-};
-
-Hadr_optionsContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitHadr_options(this);
- }
-};
-
-Hadr_optionsContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitHadr_options(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Hadr_optionsContext = Hadr_optionsContext;
-
-TSqlParser.prototype.hadr_options = function() {
-
- var localctx = new Hadr_optionsContext(this, this._ctx, this.state);
- this.enterRule(localctx, 558, TSqlParser.RULE_hadr_options);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 7005;
- this.match(TSqlParser.HADR);
- this.state = 7014;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.OFF:
- case TSqlParser.AVAILABILITY:
- this.state = 7011;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.AVAILABILITY:
- this.state = 7006;
- this.match(TSqlParser.AVAILABILITY);
- this.state = 7007;
- this.match(TSqlParser.GROUP);
- this.state = 7008;
- this.match(TSqlParser.EQUAL);
- this.state = 7009;
- localctx.availability_group_name = this.id();
- break;
- case TSqlParser.OFF:
- this.state = 7010;
- this.match(TSqlParser.OFF);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
- case TSqlParser.RESUME:
- case TSqlParser.SUSPEND:
- this.state = 7013;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.RESUME || _la===TSqlParser.SUSPEND)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Mixed_page_allocation_optionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_mixed_page_allocation_option;
- return this;
-}
-
-Mixed_page_allocation_optionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Mixed_page_allocation_optionContext.prototype.constructor = Mixed_page_allocation_optionContext;
-
-Mixed_page_allocation_optionContext.prototype.MIXED_PAGE_ALLOCATION = function() {
- return this.getToken(TSqlParser.MIXED_PAGE_ALLOCATION, 0);
-};
-
-Mixed_page_allocation_optionContext.prototype.OFF = function() {
- return this.getToken(TSqlParser.OFF, 0);
-};
-
-Mixed_page_allocation_optionContext.prototype.ON = function() {
- return this.getToken(TSqlParser.ON, 0);
-};
-
-Mixed_page_allocation_optionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterMixed_page_allocation_option(this);
- }
-};
-
-Mixed_page_allocation_optionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitMixed_page_allocation_option(this);
- }
-};
-
-Mixed_page_allocation_optionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitMixed_page_allocation_option(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Mixed_page_allocation_optionContext = Mixed_page_allocation_optionContext;
-
-TSqlParser.prototype.mixed_page_allocation_option = function() {
-
- var localctx = new Mixed_page_allocation_optionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 560, TSqlParser.RULE_mixed_page_allocation_option);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 7016;
- this.match(TSqlParser.MIXED_PAGE_ALLOCATION);
- this.state = 7017;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Parameterization_optionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_parameterization_option;
- return this;
-}
-
-Parameterization_optionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Parameterization_optionContext.prototype.constructor = Parameterization_optionContext;
-
-Parameterization_optionContext.prototype.PARAMETERIZATION = function() {
- return this.getToken(TSqlParser.PARAMETERIZATION, 0);
-};
-
-Parameterization_optionContext.prototype.SIMPLE = function() {
- return this.getToken(TSqlParser.SIMPLE, 0);
-};
-
-Parameterization_optionContext.prototype.FORCED = function() {
- return this.getToken(TSqlParser.FORCED, 0);
-};
-
-Parameterization_optionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterParameterization_option(this);
- }
-};
-
-Parameterization_optionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitParameterization_option(this);
- }
-};
-
-Parameterization_optionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitParameterization_option(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Parameterization_optionContext = Parameterization_optionContext;
-
-TSqlParser.prototype.parameterization_option = function() {
-
- var localctx = new Parameterization_optionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 562, TSqlParser.RULE_parameterization_option);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 7019;
- this.match(TSqlParser.PARAMETERIZATION);
- this.state = 7020;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.FORCED || _la===TSqlParser.SIMPLE)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Recovery_optionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_recovery_option;
- return this;
-}
-
-Recovery_optionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Recovery_optionContext.prototype.constructor = Recovery_optionContext;
-
-Recovery_optionContext.prototype.RECOVERY = function() {
- return this.getToken(TSqlParser.RECOVERY, 0);
-};
-
-Recovery_optionContext.prototype.FULL = function() {
- return this.getToken(TSqlParser.FULL, 0);
-};
-
-Recovery_optionContext.prototype.BULK_LOGGED = function() {
- return this.getToken(TSqlParser.BULK_LOGGED, 0);
-};
-
-Recovery_optionContext.prototype.SIMPLE = function() {
- return this.getToken(TSqlParser.SIMPLE, 0);
-};
-
-Recovery_optionContext.prototype.TORN_PAGE_DETECTION = function() {
- return this.getToken(TSqlParser.TORN_PAGE_DETECTION, 0);
-};
-
-Recovery_optionContext.prototype.on_off = function() {
- return this.getTypedRuleContext(On_offContext,0);
-};
-
-Recovery_optionContext.prototype.PAGE_VERIFY = function() {
- return this.getToken(TSqlParser.PAGE_VERIFY, 0);
-};
-
-Recovery_optionContext.prototype.CHECKSUM = function() {
- return this.getToken(TSqlParser.CHECKSUM, 0);
-};
-
-Recovery_optionContext.prototype.NONE = function() {
- return this.getToken(TSqlParser.NONE, 0);
-};
-
-Recovery_optionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterRecovery_option(this);
- }
-};
-
-Recovery_optionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitRecovery_option(this);
- }
-};
-
-Recovery_optionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitRecovery_option(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Recovery_optionContext = Recovery_optionContext;
-
-TSqlParser.prototype.recovery_option = function() {
-
- var localctx = new Recovery_optionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 564, TSqlParser.RULE_recovery_option);
- var _la = 0; // Token type
- try {
- this.state = 7028;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.RECOVERY:
- this.enterOuterAlt(localctx, 1);
- this.state = 7022;
- this.match(TSqlParser.RECOVERY);
- this.state = 7023;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.FULL || _la===TSqlParser.BULK_LOGGED || _la===TSqlParser.SIMPLE)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- case TSqlParser.TORN_PAGE_DETECTION:
- this.enterOuterAlt(localctx, 2);
- this.state = 7024;
- this.match(TSqlParser.TORN_PAGE_DETECTION);
- this.state = 7025;
- this.on_off();
- break;
- case TSqlParser.PAGE_VERIFY:
- this.enterOuterAlt(localctx, 3);
- this.state = 7026;
- this.match(TSqlParser.PAGE_VERIFY);
- this.state = 7027;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.NONE || _la===TSqlParser.CHECKSUM || _la===TSqlParser.TORN_PAGE_DETECTION)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Service_broker_optionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_service_broker_option;
- return this;
-}
-
-Service_broker_optionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Service_broker_optionContext.prototype.constructor = Service_broker_optionContext;
-
-Service_broker_optionContext.prototype.ENABLE_BROKER = function() {
- return this.getToken(TSqlParser.ENABLE_BROKER, 0);
-};
-
-Service_broker_optionContext.prototype.DISABLE_BROKER = function() {
- return this.getToken(TSqlParser.DISABLE_BROKER, 0);
-};
-
-Service_broker_optionContext.prototype.NEW_BROKER = function() {
- return this.getToken(TSqlParser.NEW_BROKER, 0);
-};
-
-Service_broker_optionContext.prototype.ERROR_BROKER_CONVERSATIONS = function() {
- return this.getToken(TSqlParser.ERROR_BROKER_CONVERSATIONS, 0);
-};
-
-Service_broker_optionContext.prototype.HONOR_BROKER_PRIORITY = function() {
- return this.getToken(TSqlParser.HONOR_BROKER_PRIORITY, 0);
-};
-
-Service_broker_optionContext.prototype.on_off = function() {
- return this.getTypedRuleContext(On_offContext,0);
-};
-
-Service_broker_optionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterService_broker_option(this);
- }
-};
-
-Service_broker_optionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitService_broker_option(this);
- }
-};
-
-Service_broker_optionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitService_broker_option(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Service_broker_optionContext = Service_broker_optionContext;
-
-TSqlParser.prototype.service_broker_option = function() {
-
- var localctx = new Service_broker_optionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 566, TSqlParser.RULE_service_broker_option);
- try {
- this.state = 7036;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.ENABLE_BROKER:
- this.enterOuterAlt(localctx, 1);
- this.state = 7030;
- this.match(TSqlParser.ENABLE_BROKER);
- break;
- case TSqlParser.DISABLE_BROKER:
- this.enterOuterAlt(localctx, 2);
- this.state = 7031;
- this.match(TSqlParser.DISABLE_BROKER);
- break;
- case TSqlParser.NEW_BROKER:
- this.enterOuterAlt(localctx, 3);
- this.state = 7032;
- this.match(TSqlParser.NEW_BROKER);
- break;
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- this.enterOuterAlt(localctx, 4);
- this.state = 7033;
- this.match(TSqlParser.ERROR_BROKER_CONVERSATIONS);
- break;
- case TSqlParser.HONOR_BROKER_PRIORITY:
- this.enterOuterAlt(localctx, 5);
- this.state = 7034;
- this.match(TSqlParser.HONOR_BROKER_PRIORITY);
- this.state = 7035;
- this.on_off();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Snapshot_optionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_snapshot_option;
- this.MEMORY_OPTIMIZED_ELEVATE_TO_SNAPSHOT = null; // Token
- return this;
-}
-
-Snapshot_optionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Snapshot_optionContext.prototype.constructor = Snapshot_optionContext;
-
-Snapshot_optionContext.prototype.ALLOW_SNAPSHOT_ISOLATION = function() {
- return this.getToken(TSqlParser.ALLOW_SNAPSHOT_ISOLATION, 0);
-};
-
-Snapshot_optionContext.prototype.on_off = function() {
- return this.getTypedRuleContext(On_offContext,0);
-};
-
-Snapshot_optionContext.prototype.READ_COMMITTED_SNAPSHOT = function() {
- return this.getToken(TSqlParser.READ_COMMITTED_SNAPSHOT, 0);
-};
-
-Snapshot_optionContext.prototype.ON = function() {
- return this.getToken(TSqlParser.ON, 0);
-};
-
-Snapshot_optionContext.prototype.OFF = function() {
- return this.getToken(TSqlParser.OFF, 0);
-};
-
-Snapshot_optionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterSnapshot_option(this);
- }
-};
-
-Snapshot_optionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitSnapshot_option(this);
- }
-};
-
-Snapshot_optionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitSnapshot_option(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Snapshot_optionContext = Snapshot_optionContext;
-
-TSqlParser.prototype.snapshot_option = function() {
-
- var localctx = new Snapshot_optionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 568, TSqlParser.RULE_snapshot_option);
- var _la = 0; // Token type
- try {
- this.state = 7043;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- this.enterOuterAlt(localctx, 1);
- this.state = 7038;
- this.match(TSqlParser.ALLOW_SNAPSHOT_ISOLATION);
- this.state = 7039;
- this.on_off();
- break;
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- this.enterOuterAlt(localctx, 2);
- this.state = 7040;
- this.match(TSqlParser.READ_COMMITTED_SNAPSHOT);
- this.state = 7041;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- case TSqlParser.OFF:
- case TSqlParser.ON:
- this.enterOuterAlt(localctx, 3);
- this.state = 7042;
- localctx.MEMORY_OPTIMIZED_ELEVATE_TO_SNAPSHOT = this._input.LT(1);
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- localctx.MEMORY_OPTIMIZED_ELEVATE_TO_SNAPSHOT = this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Sql_optionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_sql_option;
- return this;
-}
-
-Sql_optionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Sql_optionContext.prototype.constructor = Sql_optionContext;
-
-Sql_optionContext.prototype.ANSI_NULL_DEFAULT = function() {
- return this.getToken(TSqlParser.ANSI_NULL_DEFAULT, 0);
-};
-
-Sql_optionContext.prototype.on_off = function() {
- return this.getTypedRuleContext(On_offContext,0);
-};
-
-Sql_optionContext.prototype.ANSI_NULLS = function() {
- return this.getToken(TSqlParser.ANSI_NULLS, 0);
-};
-
-Sql_optionContext.prototype.ANSI_PADDING = function() {
- return this.getToken(TSqlParser.ANSI_PADDING, 0);
-};
-
-Sql_optionContext.prototype.ANSI_WARNINGS = function() {
- return this.getToken(TSqlParser.ANSI_WARNINGS, 0);
-};
-
-Sql_optionContext.prototype.ARITHABORT = function() {
- return this.getToken(TSqlParser.ARITHABORT, 0);
-};
-
-Sql_optionContext.prototype.COMPATIBILITY_LEVEL = function() {
- return this.getToken(TSqlParser.COMPATIBILITY_LEVEL, 0);
-};
-
-Sql_optionContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Sql_optionContext.prototype.DECIMAL = function() {
- return this.getToken(TSqlParser.DECIMAL, 0);
-};
-
-Sql_optionContext.prototype.CONCAT_NULL_YIELDS_NULL = function() {
- return this.getToken(TSqlParser.CONCAT_NULL_YIELDS_NULL, 0);
-};
-
-Sql_optionContext.prototype.NUMERIC_ROUNDABORT = function() {
- return this.getToken(TSqlParser.NUMERIC_ROUNDABORT, 0);
-};
-
-Sql_optionContext.prototype.QUOTED_IDENTIFIER = function() {
- return this.getToken(TSqlParser.QUOTED_IDENTIFIER, 0);
-};
-
-Sql_optionContext.prototype.RECURSIVE_TRIGGERS = function() {
- return this.getToken(TSqlParser.RECURSIVE_TRIGGERS, 0);
-};
-
-Sql_optionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterSql_option(this);
- }
-};
-
-Sql_optionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitSql_option(this);
- }
-};
-
-Sql_optionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitSql_option(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Sql_optionContext = Sql_optionContext;
-
-TSqlParser.prototype.sql_option = function() {
-
- var localctx = new Sql_optionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 570, TSqlParser.RULE_sql_option);
- try {
- this.state = 7066;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.ANSI_NULL_DEFAULT:
- this.enterOuterAlt(localctx, 1);
- this.state = 7045;
- this.match(TSqlParser.ANSI_NULL_DEFAULT);
- this.state = 7046;
- this.on_off();
- break;
- case TSqlParser.ANSI_NULLS:
- this.enterOuterAlt(localctx, 2);
- this.state = 7047;
- this.match(TSqlParser.ANSI_NULLS);
- this.state = 7048;
- this.on_off();
- break;
- case TSqlParser.ANSI_PADDING:
- this.enterOuterAlt(localctx, 3);
- this.state = 7049;
- this.match(TSqlParser.ANSI_PADDING);
- this.state = 7050;
- this.on_off();
- break;
- case TSqlParser.ANSI_WARNINGS:
- this.enterOuterAlt(localctx, 4);
- this.state = 7051;
- this.match(TSqlParser.ANSI_WARNINGS);
- this.state = 7052;
- this.on_off();
- break;
- case TSqlParser.ARITHABORT:
- this.enterOuterAlt(localctx, 5);
- this.state = 7053;
- this.match(TSqlParser.ARITHABORT);
- this.state = 7054;
- this.on_off();
- break;
- case TSqlParser.COMPATIBILITY_LEVEL:
- this.enterOuterAlt(localctx, 6);
- this.state = 7055;
- this.match(TSqlParser.COMPATIBILITY_LEVEL);
- this.state = 7056;
- this.match(TSqlParser.EQUAL);
- this.state = 7057;
- this.match(TSqlParser.DECIMAL);
- break;
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- this.enterOuterAlt(localctx, 7);
- this.state = 7058;
- this.match(TSqlParser.CONCAT_NULL_YIELDS_NULL);
- this.state = 7059;
- this.on_off();
- break;
- case TSqlParser.NUMERIC_ROUNDABORT:
- this.enterOuterAlt(localctx, 8);
- this.state = 7060;
- this.match(TSqlParser.NUMERIC_ROUNDABORT);
- this.state = 7061;
- this.on_off();
- break;
- case TSqlParser.QUOTED_IDENTIFIER:
- this.enterOuterAlt(localctx, 9);
- this.state = 7062;
- this.match(TSqlParser.QUOTED_IDENTIFIER);
- this.state = 7063;
- this.on_off();
- break;
- case TSqlParser.RECURSIVE_TRIGGERS:
- this.enterOuterAlt(localctx, 10);
- this.state = 7064;
- this.match(TSqlParser.RECURSIVE_TRIGGERS);
- this.state = 7065;
- this.on_off();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Target_recovery_time_optionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_target_recovery_time_option;
- return this;
-}
-
-Target_recovery_time_optionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Target_recovery_time_optionContext.prototype.constructor = Target_recovery_time_optionContext;
-
-Target_recovery_time_optionContext.prototype.TARGET_RECOVERY_TIME = function() {
- return this.getToken(TSqlParser.TARGET_RECOVERY_TIME, 0);
-};
-
-Target_recovery_time_optionContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Target_recovery_time_optionContext.prototype.DECIMAL = function() {
- return this.getToken(TSqlParser.DECIMAL, 0);
-};
-
-Target_recovery_time_optionContext.prototype.SECONDS = function() {
- return this.getToken(TSqlParser.SECONDS, 0);
-};
-
-Target_recovery_time_optionContext.prototype.MINUTES = function() {
- return this.getToken(TSqlParser.MINUTES, 0);
-};
-
-Target_recovery_time_optionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterTarget_recovery_time_option(this);
- }
-};
-
-Target_recovery_time_optionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitTarget_recovery_time_option(this);
- }
-};
-
-Target_recovery_time_optionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitTarget_recovery_time_option(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Target_recovery_time_optionContext = Target_recovery_time_optionContext;
-
-TSqlParser.prototype.target_recovery_time_option = function() {
-
- var localctx = new Target_recovery_time_optionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 572, TSqlParser.RULE_target_recovery_time_option);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 7068;
- this.match(TSqlParser.TARGET_RECOVERY_TIME);
- this.state = 7069;
- this.match(TSqlParser.EQUAL);
- this.state = 7070;
- this.match(TSqlParser.DECIMAL);
- this.state = 7071;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.MINUTES || _la===TSqlParser.SECONDS)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function TerminationContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_termination;
- this.seconds = null; // Token
- return this;
-}
-
-TerminationContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-TerminationContext.prototype.constructor = TerminationContext;
-
-TerminationContext.prototype.ROLLBACK = function() {
- return this.getToken(TSqlParser.ROLLBACK, 0);
-};
-
-TerminationContext.prototype.AFTER = function() {
- return this.getToken(TSqlParser.AFTER, 0);
-};
-
-TerminationContext.prototype.DECIMAL = function() {
- return this.getToken(TSqlParser.DECIMAL, 0);
-};
-
-TerminationContext.prototype.IMMEDIATE = function() {
- return this.getToken(TSqlParser.IMMEDIATE, 0);
-};
-
-TerminationContext.prototype.NO_WAIT = function() {
- return this.getToken(TSqlParser.NO_WAIT, 0);
-};
-
-TerminationContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterTermination(this);
- }
-};
-
-TerminationContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitTermination(this);
- }
-};
-
-TerminationContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitTermination(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.TerminationContext = TerminationContext;
-
-TSqlParser.prototype.termination = function() {
-
- var localctx = new TerminationContext(this, this._ctx, this.state);
- this.enterRule(localctx, 574, TSqlParser.RULE_termination);
- try {
- this.state = 7079;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,931,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 7073;
- this.match(TSqlParser.ROLLBACK);
- this.state = 7074;
- this.match(TSqlParser.AFTER);
- this.state = 7075;
- localctx.seconds = this.match(TSqlParser.DECIMAL);
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 7076;
- this.match(TSqlParser.ROLLBACK);
- this.state = 7077;
- this.match(TSqlParser.IMMEDIATE);
- break;
-
- case 3:
- this.enterOuterAlt(localctx, 3);
- this.state = 7078;
- this.match(TSqlParser.NO_WAIT);
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_indexContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_index;
- return this;
-}
-
-Drop_indexContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_indexContext.prototype.constructor = Drop_indexContext;
-
-Drop_indexContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_indexContext.prototype.INDEX = function() {
- return this.getToken(TSqlParser.INDEX, 0);
-};
-
-Drop_indexContext.prototype.drop_relational_or_xml_or_spatial_index = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Drop_relational_or_xml_or_spatial_indexContext);
- } else {
- return this.getTypedRuleContext(Drop_relational_or_xml_or_spatial_indexContext,i);
- }
-};
-
-Drop_indexContext.prototype.drop_backward_compatible_index = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Drop_backward_compatible_indexContext);
- } else {
- return this.getTypedRuleContext(Drop_backward_compatible_indexContext,i);
- }
-};
-
-Drop_indexContext.prototype.IF = function() {
- return this.getToken(TSqlParser.IF, 0);
-};
-
-Drop_indexContext.prototype.EXISTS = function() {
- return this.getToken(TSqlParser.EXISTS, 0);
-};
-
-Drop_indexContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Drop_indexContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Drop_indexContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_index(this);
- }
-};
-
-Drop_indexContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_index(this);
- }
-};
-
-Drop_indexContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_index(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_indexContext = Drop_indexContext;
-
-TSqlParser.prototype.drop_index = function() {
-
- var localctx = new Drop_indexContext(this, this._ctx, this.state);
- this.enterRule(localctx, 576, TSqlParser.RULE_drop_index);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 7081;
- this.match(TSqlParser.DROP);
- this.state = 7082;
- this.match(TSqlParser.INDEX);
- this.state = 7085;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.IF) {
- this.state = 7083;
- this.match(TSqlParser.IF);
- this.state = 7084;
- this.match(TSqlParser.EXISTS);
- }
-
- this.state = 7103;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,935,this._ctx);
- switch(la_) {
- case 1:
- this.state = 7087;
- this.drop_relational_or_xml_or_spatial_index();
- this.state = 7092;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 7088;
- this.match(TSqlParser.COMMA);
- this.state = 7089;
- this.drop_relational_or_xml_or_spatial_index();
- this.state = 7094;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- break;
-
- case 2:
- this.state = 7095;
- this.drop_backward_compatible_index();
- this.state = 7100;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 7096;
- this.match(TSqlParser.COMMA);
- this.state = 7097;
- this.drop_backward_compatible_index();
- this.state = 7102;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- break;
-
- }
- this.state = 7106;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,936,this._ctx);
- if(la_===1) {
- this.state = 7105;
- this.match(TSqlParser.SEMI);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_relational_or_xml_or_spatial_indexContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_relational_or_xml_or_spatial_index;
- this.index_name = null; // IdContext
- return this;
-}
-
-Drop_relational_or_xml_or_spatial_indexContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_relational_or_xml_or_spatial_indexContext.prototype.constructor = Drop_relational_or_xml_or_spatial_indexContext;
-
-Drop_relational_or_xml_or_spatial_indexContext.prototype.ON = function() {
- return this.getToken(TSqlParser.ON, 0);
-};
-
-Drop_relational_or_xml_or_spatial_indexContext.prototype.full_table_name = function() {
- return this.getTypedRuleContext(Full_table_nameContext,0);
-};
-
-Drop_relational_or_xml_or_spatial_indexContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Drop_relational_or_xml_or_spatial_indexContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_relational_or_xml_or_spatial_index(this);
- }
-};
-
-Drop_relational_or_xml_or_spatial_indexContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_relational_or_xml_or_spatial_index(this);
- }
-};
-
-Drop_relational_or_xml_or_spatial_indexContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_relational_or_xml_or_spatial_index(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_relational_or_xml_or_spatial_indexContext = Drop_relational_or_xml_or_spatial_indexContext;
-
-TSqlParser.prototype.drop_relational_or_xml_or_spatial_index = function() {
-
- var localctx = new Drop_relational_or_xml_or_spatial_indexContext(this, this._ctx, this.state);
- this.enterRule(localctx, 578, TSqlParser.RULE_drop_relational_or_xml_or_spatial_index);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 7108;
- localctx.index_name = this.id();
- this.state = 7109;
- this.match(TSqlParser.ON);
- this.state = 7110;
- this.full_table_name();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_backward_compatible_indexContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_backward_compatible_index;
- this.owner_name = null; // IdContext
- this.table_or_view_name = null; // IdContext
- this.index_name = null; // IdContext
- return this;
-}
-
-Drop_backward_compatible_indexContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_backward_compatible_indexContext.prototype.constructor = Drop_backward_compatible_indexContext;
-
-Drop_backward_compatible_indexContext.prototype.DOT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DOT);
- } else {
- return this.getToken(TSqlParser.DOT, i);
- }
-};
-
-
-Drop_backward_compatible_indexContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Drop_backward_compatible_indexContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_backward_compatible_index(this);
- }
-};
-
-Drop_backward_compatible_indexContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_backward_compatible_index(this);
- }
-};
-
-Drop_backward_compatible_indexContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_backward_compatible_index(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_backward_compatible_indexContext = Drop_backward_compatible_indexContext;
-
-TSqlParser.prototype.drop_backward_compatible_index = function() {
-
- var localctx = new Drop_backward_compatible_indexContext(this, this._ctx, this.state);
- this.enterRule(localctx, 580, TSqlParser.RULE_drop_backward_compatible_index);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 7115;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,937,this._ctx);
- if(la_===1) {
- this.state = 7112;
- localctx.owner_name = this.id();
- this.state = 7113;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 7117;
- localctx.table_or_view_name = this.id();
- this.state = 7118;
- this.match(TSqlParser.DOT);
- this.state = 7119;
- localctx.index_name = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_procedureContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_procedure;
- this.proc = null; // Token
- return this;
-}
-
-Drop_procedureContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_procedureContext.prototype.constructor = Drop_procedureContext;
-
-Drop_procedureContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_procedureContext.prototype.func_proc_name_schema = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Func_proc_name_schemaContext);
- } else {
- return this.getTypedRuleContext(Func_proc_name_schemaContext,i);
- }
-};
-
-Drop_procedureContext.prototype.PROC = function() {
- return this.getToken(TSqlParser.PROC, 0);
-};
-
-Drop_procedureContext.prototype.PROCEDURE = function() {
- return this.getToken(TSqlParser.PROCEDURE, 0);
-};
-
-Drop_procedureContext.prototype.IF = function() {
- return this.getToken(TSqlParser.IF, 0);
-};
-
-Drop_procedureContext.prototype.EXISTS = function() {
- return this.getToken(TSqlParser.EXISTS, 0);
-};
-
-Drop_procedureContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Drop_procedureContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Drop_procedureContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_procedure(this);
- }
-};
-
-Drop_procedureContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_procedure(this);
- }
-};
-
-Drop_procedureContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_procedure(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_procedureContext = Drop_procedureContext;
-
-TSqlParser.prototype.drop_procedure = function() {
-
- var localctx = new Drop_procedureContext(this, this._ctx, this.state);
- this.enterRule(localctx, 582, TSqlParser.RULE_drop_procedure);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 7121;
- this.match(TSqlParser.DROP);
- this.state = 7122;
- localctx.proc = this._input.LT(1);
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.PROC || _la===TSqlParser.PROCEDURE)) {
- localctx.proc = this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 7125;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.IF) {
- this.state = 7123;
- this.match(TSqlParser.IF);
- this.state = 7124;
- this.match(TSqlParser.EXISTS);
- }
-
- this.state = 7127;
- this.func_proc_name_schema();
- this.state = 7132;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 7128;
- this.match(TSqlParser.COMMA);
- this.state = 7129;
- this.func_proc_name_schema();
- this.state = 7134;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- this.state = 7136;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,940,this._ctx);
- if(la_===1) {
- this.state = 7135;
- this.match(TSqlParser.SEMI);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_triggerContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_trigger;
- return this;
-}
-
-Drop_triggerContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_triggerContext.prototype.constructor = Drop_triggerContext;
-
-Drop_triggerContext.prototype.drop_dml_trigger = function() {
- return this.getTypedRuleContext(Drop_dml_triggerContext,0);
-};
-
-Drop_triggerContext.prototype.drop_ddl_trigger = function() {
- return this.getTypedRuleContext(Drop_ddl_triggerContext,0);
-};
-
-Drop_triggerContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_trigger(this);
- }
-};
-
-Drop_triggerContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_trigger(this);
- }
-};
-
-Drop_triggerContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_trigger(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_triggerContext = Drop_triggerContext;
-
-TSqlParser.prototype.drop_trigger = function() {
-
- var localctx = new Drop_triggerContext(this, this._ctx, this.state);
- this.enterRule(localctx, 584, TSqlParser.RULE_drop_trigger);
- try {
- this.state = 7140;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,941,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 7138;
- this.drop_dml_trigger();
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 7139;
- this.drop_ddl_trigger();
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_dml_triggerContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_dml_trigger;
- return this;
-}
-
-Drop_dml_triggerContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_dml_triggerContext.prototype.constructor = Drop_dml_triggerContext;
-
-Drop_dml_triggerContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_dml_triggerContext.prototype.TRIGGER = function() {
- return this.getToken(TSqlParser.TRIGGER, 0);
-};
-
-Drop_dml_triggerContext.prototype.simple_name = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Simple_nameContext);
- } else {
- return this.getTypedRuleContext(Simple_nameContext,i);
- }
-};
-
-Drop_dml_triggerContext.prototype.IF = function() {
- return this.getToken(TSqlParser.IF, 0);
-};
-
-Drop_dml_triggerContext.prototype.EXISTS = function() {
- return this.getToken(TSqlParser.EXISTS, 0);
-};
-
-Drop_dml_triggerContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Drop_dml_triggerContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Drop_dml_triggerContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_dml_trigger(this);
- }
-};
-
-Drop_dml_triggerContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_dml_trigger(this);
- }
-};
-
-Drop_dml_triggerContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_dml_trigger(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_dml_triggerContext = Drop_dml_triggerContext;
-
-TSqlParser.prototype.drop_dml_trigger = function() {
-
- var localctx = new Drop_dml_triggerContext(this, this._ctx, this.state);
- this.enterRule(localctx, 586, TSqlParser.RULE_drop_dml_trigger);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 7142;
- this.match(TSqlParser.DROP);
- this.state = 7143;
- this.match(TSqlParser.TRIGGER);
- this.state = 7146;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.IF) {
- this.state = 7144;
- this.match(TSqlParser.IF);
- this.state = 7145;
- this.match(TSqlParser.EXISTS);
- }
-
- this.state = 7148;
- this.simple_name();
- this.state = 7153;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 7149;
- this.match(TSqlParser.COMMA);
- this.state = 7150;
- this.simple_name();
- this.state = 7155;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- this.state = 7157;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,944,this._ctx);
- if(la_===1) {
- this.state = 7156;
- this.match(TSqlParser.SEMI);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_ddl_triggerContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_ddl_trigger;
- return this;
-}
-
-Drop_ddl_triggerContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_ddl_triggerContext.prototype.constructor = Drop_ddl_triggerContext;
-
-Drop_ddl_triggerContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_ddl_triggerContext.prototype.TRIGGER = function() {
- return this.getToken(TSqlParser.TRIGGER, 0);
-};
-
-Drop_ddl_triggerContext.prototype.simple_name = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Simple_nameContext);
- } else {
- return this.getTypedRuleContext(Simple_nameContext,i);
- }
-};
-
-Drop_ddl_triggerContext.prototype.ON = function() {
- return this.getToken(TSqlParser.ON, 0);
-};
-
-Drop_ddl_triggerContext.prototype.DATABASE = function() {
- return this.getToken(TSqlParser.DATABASE, 0);
-};
-
-Drop_ddl_triggerContext.prototype.ALL = function() {
- return this.getToken(TSqlParser.ALL, 0);
-};
-
-Drop_ddl_triggerContext.prototype.SERVER = function() {
- return this.getToken(TSqlParser.SERVER, 0);
-};
-
-Drop_ddl_triggerContext.prototype.IF = function() {
- return this.getToken(TSqlParser.IF, 0);
-};
-
-Drop_ddl_triggerContext.prototype.EXISTS = function() {
- return this.getToken(TSqlParser.EXISTS, 0);
-};
-
-Drop_ddl_triggerContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Drop_ddl_triggerContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Drop_ddl_triggerContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_ddl_trigger(this);
- }
-};
-
-Drop_ddl_triggerContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_ddl_trigger(this);
- }
-};
-
-Drop_ddl_triggerContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_ddl_trigger(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_ddl_triggerContext = Drop_ddl_triggerContext;
-
-TSqlParser.prototype.drop_ddl_trigger = function() {
-
- var localctx = new Drop_ddl_triggerContext(this, this._ctx, this.state);
- this.enterRule(localctx, 588, TSqlParser.RULE_drop_ddl_trigger);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 7159;
- this.match(TSqlParser.DROP);
- this.state = 7160;
- this.match(TSqlParser.TRIGGER);
- this.state = 7163;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.IF) {
- this.state = 7161;
- this.match(TSqlParser.IF);
- this.state = 7162;
- this.match(TSqlParser.EXISTS);
- }
-
- this.state = 7165;
- this.simple_name();
- this.state = 7170;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 7166;
- this.match(TSqlParser.COMMA);
- this.state = 7167;
- this.simple_name();
- this.state = 7172;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- this.state = 7173;
- this.match(TSqlParser.ON);
- this.state = 7177;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.DATABASE:
- this.state = 7174;
- this.match(TSqlParser.DATABASE);
- break;
- case TSqlParser.ALL:
- this.state = 7175;
- this.match(TSqlParser.ALL);
- this.state = 7176;
- this.match(TSqlParser.SERVER);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 7180;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,948,this._ctx);
- if(la_===1) {
- this.state = 7179;
- this.match(TSqlParser.SEMI);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_functionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_function;
- return this;
-}
-
-Drop_functionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_functionContext.prototype.constructor = Drop_functionContext;
-
-Drop_functionContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_functionContext.prototype.FUNCTION = function() {
- return this.getToken(TSqlParser.FUNCTION, 0);
-};
-
-Drop_functionContext.prototype.func_proc_name_schema = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Func_proc_name_schemaContext);
- } else {
- return this.getTypedRuleContext(Func_proc_name_schemaContext,i);
- }
-};
-
-Drop_functionContext.prototype.IF = function() {
- return this.getToken(TSqlParser.IF, 0);
-};
-
-Drop_functionContext.prototype.EXISTS = function() {
- return this.getToken(TSqlParser.EXISTS, 0);
-};
-
-Drop_functionContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Drop_functionContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Drop_functionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_function(this);
- }
-};
-
-Drop_functionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_function(this);
- }
-};
-
-Drop_functionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_function(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_functionContext = Drop_functionContext;
-
-TSqlParser.prototype.drop_function = function() {
-
- var localctx = new Drop_functionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 590, TSqlParser.RULE_drop_function);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 7182;
- this.match(TSqlParser.DROP);
- this.state = 7183;
- this.match(TSqlParser.FUNCTION);
- this.state = 7186;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.IF) {
- this.state = 7184;
- this.match(TSqlParser.IF);
- this.state = 7185;
- this.match(TSqlParser.EXISTS);
- }
-
- this.state = 7188;
- this.func_proc_name_schema();
- this.state = 7193;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 7189;
- this.match(TSqlParser.COMMA);
- this.state = 7190;
- this.func_proc_name_schema();
- this.state = 7195;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- this.state = 7197;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,951,this._ctx);
- if(la_===1) {
- this.state = 7196;
- this.match(TSqlParser.SEMI);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_statisticsContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_statistics;
- this.name = null; // IdContext
- return this;
-}
-
-Drop_statisticsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_statisticsContext.prototype.constructor = Drop_statisticsContext;
-
-Drop_statisticsContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_statisticsContext.prototype.STATISTICS = function() {
- return this.getToken(TSqlParser.STATISTICS, 0);
-};
-
-Drop_statisticsContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Drop_statisticsContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Drop_statisticsContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Drop_statisticsContext.prototype.table_name = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Table_nameContext);
- } else {
- return this.getTypedRuleContext(Table_nameContext,i);
- }
-};
-
-Drop_statisticsContext.prototype.DOT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DOT);
- } else {
- return this.getToken(TSqlParser.DOT, i);
- }
-};
-
-
-Drop_statisticsContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_statistics(this);
- }
-};
-
-Drop_statisticsContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_statistics(this);
- }
-};
-
-Drop_statisticsContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_statistics(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_statisticsContext = Drop_statisticsContext;
-
-TSqlParser.prototype.drop_statistics = function() {
-
- var localctx = new Drop_statisticsContext(this, this._ctx, this.state);
- this.enterRule(localctx, 592, TSqlParser.RULE_drop_statistics);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 7199;
- this.match(TSqlParser.DROP);
- this.state = 7200;
- this.match(TSqlParser.STATISTICS);
- this.state = 7210;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- do {
- this.state = 7202;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7201;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7207;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,953,this._ctx);
- if(la_===1) {
- this.state = 7204;
- this.table_name();
- this.state = 7205;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 7209;
- localctx.name = this.id();
- this.state = 7212;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- } while(_la===TSqlParser.BLOCKING_HIERARCHY || _la===TSqlParser.CALLED || _la===TSqlParser.DATA_COMPRESSION || ((((_la - 112)) & ~0x1f) == 0 && ((1 << (_la - 112)) & ((1 << (TSqlParser.EVENTDATA - 112)) | (1 << (TSqlParser.FILENAME - 112)) | (1 << (TSqlParser.FILLFACTOR - 112)) | (1 << (TSqlParser.FORCESEEK - 112)))) !== 0) || ((((_la - 158)) & ~0x1f) == 0 && ((1 << (_la - 158)) & ((1 << (TSqlParser.INIT - 158)) | (1 << (TSqlParser.KEY - 158)) | (1 << (TSqlParser.MASTER - 158)) | (1 << (TSqlParser.MAX_MEMORY - 158)))) !== 0) || _la===TSqlParser.OFFSETS || _la===TSqlParser.PAGE || ((((_la - 259)) & ~0x1f) == 0 && ((1 << (_la - 259)) & ((1 << (TSqlParser.PUBLIC - 259)) | (1 << (TSqlParser.R - 259)) | (1 << (TSqlParser.RAW - 259)) | (1 << (TSqlParser.RETURN - 259)) | (1 << (TSqlParser.RETURNS - 259)) | (1 << (TSqlParser.ROWCOUNT - 259)))) !== 0) || ((((_la - 295)) & ~0x1f) == 0 && ((1 << (_la - 295)) & ((1 << (TSqlParser.SAFETY - 295)) | (1 << (TSqlParser.SERVER - 295)) | (1 << (TSqlParser.SID - 295)) | (1 << (TSqlParser.SOURCE - 295)) | (1 << (TSqlParser.SPLIT - 295)))) !== 0) || ((((_la - 327)) & ~0x1f) == 0 && ((1 << (_la - 327)) & ((1 << (TSqlParser.STATE - 327)) | (1 << (TSqlParser.START - 327)) | (1 << (TSqlParser.TARGET - 327)))) !== 0) || ((((_la - 380)) & ~0x1f) == 0 && ((1 << (_la - 380)) & ((1 << (TSqlParser.ABSOLUTE - 380)) | (1 << (TSqlParser.ACCENT_SENSITIVITY - 380)) | (1 << (TSqlParser.ACTION - 380)) | (1 << (TSqlParser.ACTIVATION - 380)) | (1 << (TSqlParser.ACTIVE - 380)) | (1 << (TSqlParser.ADDRESS - 380)) | (1 << (TSqlParser.AES_128 - 380)) | (1 << (TSqlParser.AES_192 - 380)) | (1 << (TSqlParser.AES_256 - 380)) | (1 << (TSqlParser.AFFINITY - 380)) | (1 << (TSqlParser.AFTER - 380)) | (1 << (TSqlParser.AGGREGATE - 380)) | (1 << (TSqlParser.ALGORITHM - 380)) | (1 << (TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS - 380)) | (1 << (TSqlParser.ALLOW_SNAPSHOT_ISOLATION - 380)) | (1 << (TSqlParser.ALLOWED - 380)) | (1 << (TSqlParser.ANSI_NULL_DEFAULT - 380)) | (1 << (TSqlParser.ANSI_NULLS - 380)) | (1 << (TSqlParser.ANSI_PADDING - 380)) | (1 << (TSqlParser.ANSI_WARNINGS - 380)) | (1 << (TSqlParser.APPLICATION_LOG - 380)) | (1 << (TSqlParser.APPLY - 380)) | (1 << (TSqlParser.ARITHABORT - 380)) | (1 << (TSqlParser.ASSEMBLY - 380)) | (1 << (TSqlParser.AUDIT - 380)) | (1 << (TSqlParser.AUDIT_GUID - 380)) | (1 << (TSqlParser.AUTO - 380)) | (1 << (TSqlParser.AUTO_CLEANUP - 380)) | (1 << (TSqlParser.AUTO_CLOSE - 380)) | (1 << (TSqlParser.AUTO_CREATE_STATISTICS - 380)) | (1 << (TSqlParser.AUTO_SHRINK - 380)) | (1 << (TSqlParser.AUTO_UPDATE_STATISTICS - 380)))) !== 0) || ((((_la - 412)) & ~0x1f) == 0 && ((1 << (_la - 412)) & ((1 << (TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC - 412)) | (1 << (TSqlParser.AVAILABILITY - 412)) | (1 << (TSqlParser.AVG - 412)) | (1 << (TSqlParser.BACKUP_PRIORITY - 412)) | (1 << (TSqlParser.BEGIN_DIALOG - 412)) | (1 << (TSqlParser.BIGINT - 412)) | (1 << (TSqlParser.BINARY_BASE64 - 412)) | (1 << (TSqlParser.BINARY_CHECKSUM - 412)) | (1 << (TSqlParser.BINDING - 412)) | (1 << (TSqlParser.BLOB_STORAGE - 412)) | (1 << (TSqlParser.BROKER - 412)) | (1 << (TSqlParser.BROKER_INSTANCE - 412)) | (1 << (TSqlParser.BULK_LOGGED - 412)) | (1 << (TSqlParser.CALLER - 412)) | (1 << (TSqlParser.CAP_CPU_PERCENT - 412)) | (1 << (TSqlParser.CAST - 412)) | (1 << (TSqlParser.CATALOG - 412)) | (1 << (TSqlParser.CATCH - 412)) | (1 << (TSqlParser.CHANGE_RETENTION - 412)) | (1 << (TSqlParser.CHANGE_TRACKING - 412)) | (1 << (TSqlParser.CHECKSUM - 412)) | (1 << (TSqlParser.CHECKSUM_AGG - 412)) | (1 << (TSqlParser.CLEANUP - 412)) | (1 << (TSqlParser.COLLECTION - 412)) | (1 << (TSqlParser.COLUMN_MASTER_KEY - 412)) | (1 << (TSqlParser.COMMITTED - 412)) | (1 << (TSqlParser.COMPATIBILITY_LEVEL - 412)) | (1 << (TSqlParser.CONCAT - 412)) | (1 << (TSqlParser.CONCAT_NULL_YIELDS_NULL - 412)) | (1 << (TSqlParser.CONTENT - 412)) | (1 << (TSqlParser.CONTROL - 412)) | (1 << (TSqlParser.COOKIE - 412)))) !== 0) || ((((_la - 444)) & ~0x1f) == 0 && ((1 << (_la - 444)) & ((1 << (TSqlParser.COUNT - 444)) | (1 << (TSqlParser.COUNT_BIG - 444)) | (1 << (TSqlParser.COUNTER - 444)) | (1 << (TSqlParser.CPU - 444)) | (1 << (TSqlParser.CREATE_NEW - 444)) | (1 << (TSqlParser.CREATION_DISPOSITION - 444)) | (1 << (TSqlParser.CREDENTIAL - 444)) | (1 << (TSqlParser.CRYPTOGRAPHIC - 444)) | (1 << (TSqlParser.CURSOR_CLOSE_ON_COMMIT - 444)) | (1 << (TSqlParser.CURSOR_DEFAULT - 444)) | (1 << (TSqlParser.DATA - 444)) | (1 << (TSqlParser.DATE_CORRELATION_OPTIMIZATION - 444)) | (1 << (TSqlParser.DATEADD - 444)) | (1 << (TSqlParser.DATEDIFF - 444)) | (1 << (TSqlParser.DATENAME - 444)) | (1 << (TSqlParser.DATEPART - 444)) | (1 << (TSqlParser.DAYS - 444)) | (1 << (TSqlParser.DB_CHAINING - 444)) | (1 << (TSqlParser.DB_FAILOVER - 444)) | (1 << (TSqlParser.DECRYPTION - 444)) | (1 << (TSqlParser.DEFAULT_DOUBLE_QUOTE - 444)) | (1 << (TSqlParser.DEFAULT_FULLTEXT_LANGUAGE - 444)) | (1 << (TSqlParser.DEFAULT_LANGUAGE - 444)) | (1 << (TSqlParser.DELAY - 444)) | (1 << (TSqlParser.DELAYED_DURABILITY - 444)) | (1 << (TSqlParser.DELETED - 444)) | (1 << (TSqlParser.DENSE_RANK - 444)) | (1 << (TSqlParser.DEPENDENTS - 444)) | (1 << (TSqlParser.DES - 444)) | (1 << (TSqlParser.DESCRIPTION - 444)) | (1 << (TSqlParser.DESX - 444)) | (1 << (TSqlParser.DHCP - 444)))) !== 0) || ((((_la - 476)) & ~0x1f) == 0 && ((1 << (_la - 476)) & ((1 << (TSqlParser.DIALOG - 476)) | (1 << (TSqlParser.DIRECTORY_NAME - 476)) | (1 << (TSqlParser.DISABLE - 476)) | (1 << (TSqlParser.DISABLE_BROKER - 476)) | (1 << (TSqlParser.DISABLED - 476)) | (1 << (TSqlParser.DISK_DRIVE - 476)) | (1 << (TSqlParser.DOCUMENT - 476)) | (1 << (TSqlParser.DYNAMIC - 476)) | (1 << (TSqlParser.EMERGENCY - 476)) | (1 << (TSqlParser.EMPTY - 476)) | (1 << (TSqlParser.ENABLE - 476)) | (1 << (TSqlParser.ENABLE_BROKER - 476)) | (1 << (TSqlParser.ENCRYPTED_VALUE - 476)) | (1 << (TSqlParser.ENCRYPTION - 476)) | (1 << (TSqlParser.ENDPOINT_URL - 476)) | (1 << (TSqlParser.ERROR_BROKER_CONVERSATIONS - 476)) | (1 << (TSqlParser.EXCLUSIVE - 476)) | (1 << (TSqlParser.EXECUTABLE - 476)) | (1 << (TSqlParser.EXIST - 476)) | (1 << (TSqlParser.EXPAND - 476)) | (1 << (TSqlParser.EXPIRY_DATE - 476)) | (1 << (TSqlParser.EXPLICIT - 476)) | (1 << (TSqlParser.FAIL_OPERATION - 476)) | (1 << (TSqlParser.FAILOVER_MODE - 476)) | (1 << (TSqlParser.FAILURE - 476)) | (1 << (TSqlParser.FAILURE_CONDITION_LEVEL - 476)) | (1 << (TSqlParser.FAST - 476)) | (1 << (TSqlParser.FAST_FORWARD - 476)) | (1 << (TSqlParser.FILEGROUP - 476)) | (1 << (TSqlParser.FILEGROWTH - 476)) | (1 << (TSqlParser.FILEPATH - 476)))) !== 0) || ((((_la - 508)) & ~0x1f) == 0 && ((1 << (_la - 508)) & ((1 << (TSqlParser.FILESTREAM - 508)) | (1 << (TSqlParser.FILTER - 508)) | (1 << (TSqlParser.FIRST - 508)) | (1 << (TSqlParser.FIRST_VALUE - 508)) | (1 << (TSqlParser.FOLLOWING - 508)) | (1 << (TSqlParser.FORCE - 508)) | (1 << (TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS - 508)) | (1 << (TSqlParser.FORCED - 508)) | (1 << (TSqlParser.FORMAT - 508)) | (1 << (TSqlParser.FORWARD_ONLY - 508)) | (1 << (TSqlParser.FULLSCAN - 508)) | (1 << (TSqlParser.FULLTEXT - 508)) | (1 << (TSqlParser.GB - 508)) | (1 << (TSqlParser.GETDATE - 508)) | (1 << (TSqlParser.GETUTCDATE - 508)) | (1 << (TSqlParser.GLOBAL - 508)) | (1 << (TSqlParser.GO - 508)) | (1 << (TSqlParser.GROUP_MAX_REQUESTS - 508)) | (1 << (TSqlParser.GROUPING - 508)) | (1 << (TSqlParser.GROUPING_ID - 508)) | (1 << (TSqlParser.HADR - 508)) | (1 << (TSqlParser.HASH - 508)) | (1 << (TSqlParser.HEALTH_CHECK_TIMEOUT - 508)) | (1 << (TSqlParser.HIGH - 508)) | (1 << (TSqlParser.HONOR_BROKER_PRIORITY - 508)) | (1 << (TSqlParser.HOURS - 508)) | (1 << (TSqlParser.IDENTITY_VALUE - 508)) | (1 << (TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX - 508)) | (1 << (TSqlParser.IMMEDIATE - 508)) | (1 << (TSqlParser.IMPERSONATE - 508)) | (1 << (TSqlParser.IMPORTANCE - 508)))) !== 0) || ((((_la - 540)) & ~0x1f) == 0 && ((1 << (_la - 540)) & ((1 << (TSqlParser.INCREMENTAL - 540)) | (1 << (TSqlParser.INITIATOR - 540)) | (1 << (TSqlParser.INPUT - 540)) | (1 << (TSqlParser.INSENSITIVE - 540)) | (1 << (TSqlParser.INSERTED - 540)) | (1 << (TSqlParser.INT - 540)) | (1 << (TSqlParser.IP - 540)) | (1 << (TSqlParser.ISOLATION - 540)) | (1 << (TSqlParser.KB - 540)) | (1 << (TSqlParser.KEEP - 540)) | (1 << (TSqlParser.KEEPFIXED - 540)) | (1 << (TSqlParser.KEY_SOURCE - 540)) | (1 << (TSqlParser.KEYS - 540)) | (1 << (TSqlParser.KEYSET - 540)) | (1 << (TSqlParser.LAG - 540)) | (1 << (TSqlParser.LAST - 540)) | (1 << (TSqlParser.LAST_VALUE - 540)) | (1 << (TSqlParser.LEAD - 540)) | (1 << (TSqlParser.LEVEL - 540)) | (1 << (TSqlParser.LIST - 540)) | (1 << (TSqlParser.LISTENER - 540)) | (1 << (TSqlParser.LISTENER_URL - 540)) | (1 << (TSqlParser.LOB_COMPACTION - 540)) | (1 << (TSqlParser.LOCAL - 540)) | (1 << (TSqlParser.LOCATION - 540)) | (1 << (TSqlParser.LOCK - 540)) | (1 << (TSqlParser.LOCK_ESCALATION - 540)) | (1 << (TSqlParser.LOGIN - 540)) | (1 << (TSqlParser.LOOP - 540)) | (1 << (TSqlParser.LOW - 540)))) !== 0) || ((((_la - 572)) & ~0x1f) == 0 && ((1 << (_la - 572)) & ((1 << (TSqlParser.MANUAL - 572)) | (1 << (TSqlParser.MARK - 572)) | (1 << (TSqlParser.MATERIALIZED - 572)) | (1 << (TSqlParser.MAX - 572)) | (1 << (TSqlParser.MAX_CPU_PERCENT - 572)) | (1 << (TSqlParser.MAX_DOP - 572)) | (1 << (TSqlParser.MAX_FILES - 572)) | (1 << (TSqlParser.MAX_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MAX_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MAX_PROCESSES - 572)) | (1 << (TSqlParser.MAX_QUEUE_READERS - 572)) | (1 << (TSqlParser.MAX_ROLLOVER_FILES - 572)) | (1 << (TSqlParser.MAXDOP - 572)) | (1 << (TSqlParser.MAXRECURSION - 572)) | (1 << (TSqlParser.MAXSIZE - 572)) | (1 << (TSqlParser.MB - 572)) | (1 << (TSqlParser.MEDIUM - 572)) | (1 << (TSqlParser.MEMORY_OPTIMIZED_DATA - 572)) | (1 << (TSqlParser.MESSAGE - 572)) | (1 << (TSqlParser.MIN - 572)) | (1 << (TSqlParser.MIN_ACTIVE_ROWVERSION - 572)) | (1 << (TSqlParser.MIN_CPU_PERCENT - 572)) | (1 << (TSqlParser.MIN_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MIN_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MINUTES - 572)) | (1 << (TSqlParser.MIRROR_ADDRESS - 572)) | (1 << (TSqlParser.MIXED_PAGE_ALLOCATION - 572)) | (1 << (TSqlParser.MODE - 572)) | (1 << (TSqlParser.MODIFY - 572)) | (1 << (TSqlParser.MOVE - 572)) | (1 << (TSqlParser.MULTI_USER - 572)) | (1 << (TSqlParser.NAME - 572)))) !== 0) || ((((_la - 604)) & ~0x1f) == 0 && ((1 << (_la - 604)) & ((1 << (TSqlParser.NESTED_TRIGGERS - 604)) | (1 << (TSqlParser.NEW_ACCOUNT - 604)) | (1 << (TSqlParser.NEW_BROKER - 604)) | (1 << (TSqlParser.NEW_PASSWORD - 604)) | (1 << (TSqlParser.NEXT - 604)) | (1 << (TSqlParser.NO - 604)) | (1 << (TSqlParser.NO_TRUNCATE - 604)) | (1 << (TSqlParser.NO_WAIT - 604)) | (1 << (TSqlParser.NOCOUNT - 604)) | (1 << (TSqlParser.NODES - 604)) | (1 << (TSqlParser.NOEXPAND - 604)) | (1 << (TSqlParser.NON_TRANSACTED_ACCESS - 604)) | (1 << (TSqlParser.NORECOMPUTE - 604)) | (1 << (TSqlParser.NORECOVERY - 604)) | (1 << (TSqlParser.NOWAIT - 604)) | (1 << (TSqlParser.NTILE - 604)) | (1 << (TSqlParser.NUMANODE - 604)) | (1 << (TSqlParser.NUMBER - 604)) | (1 << (TSqlParser.NUMERIC_ROUNDABORT - 604)) | (1 << (TSqlParser.OBJECT - 604)) | (1 << (TSqlParser.OFFLINE - 604)) | (1 << (TSqlParser.OFFSET - 604)) | (1 << (TSqlParser.OLD_ACCOUNT - 604)) | (1 << (TSqlParser.ONLINE - 604)) | (1 << (TSqlParser.ONLY - 604)) | (1 << (TSqlParser.OPEN_EXISTING - 604)) | (1 << (TSqlParser.OPTIMISTIC - 604)) | (1 << (TSqlParser.OPTIMIZE - 604)) | (1 << (TSqlParser.OUT - 604)) | (1 << (TSqlParser.OUTPUT - 604)) | (1 << (TSqlParser.OWNER - 604)))) !== 0) || ((((_la - 636)) & ~0x1f) == 0 && ((1 << (_la - 636)) & ((1 << (TSqlParser.PAGE_VERIFY - 636)) | (1 << (TSqlParser.PARAMETERIZATION - 636)) | (1 << (TSqlParser.PARTITION - 636)) | (1 << (TSqlParser.PARTITIONS - 636)) | (1 << (TSqlParser.PARTNER - 636)) | (1 << (TSqlParser.PATH - 636)) | (1 << (TSqlParser.POISON_MESSAGE_HANDLING - 636)) | (1 << (TSqlParser.POOL - 636)) | (1 << (TSqlParser.PORT - 636)) | (1 << (TSqlParser.PRECEDING - 636)) | (1 << (TSqlParser.PRIMARY_ROLE - 636)) | (1 << (TSqlParser.PRIOR - 636)) | (1 << (TSqlParser.PRIORITY - 636)) | (1 << (TSqlParser.PRIORITY_LEVEL - 636)) | (1 << (TSqlParser.PRIVATE - 636)) | (1 << (TSqlParser.PRIVATE_KEY - 636)) | (1 << (TSqlParser.PRIVILEGES - 636)) | (1 << (TSqlParser.PROCEDURE_NAME - 636)) | (1 << (TSqlParser.PROPERTY - 636)) | (1 << (TSqlParser.PROVIDER - 636)) | (1 << (TSqlParser.PROVIDER_KEY_NAME - 636)) | (1 << (TSqlParser.QUERY - 636)) | (1 << (TSqlParser.QUEUE - 636)) | (1 << (TSqlParser.QUEUE_DELAY - 636)) | (1 << (TSqlParser.QUOTED_IDENTIFIER - 636)) | (1 << (TSqlParser.RANGE - 636)) | (1 << (TSqlParser.RANK - 636)) | (1 << (TSqlParser.RC2 - 636)) | (1 << (TSqlParser.RC4 - 636)) | (1 << (TSqlParser.RC4_128 - 636)) | (1 << (TSqlParser.READ_COMMITTED_SNAPSHOT - 636)) | (1 << (TSqlParser.READ_ONLY - 636)))) !== 0) || ((((_la - 668)) & ~0x1f) == 0 && ((1 << (_la - 668)) & ((1 << (TSqlParser.READ_ONLY_ROUTING_LIST - 668)) | (1 << (TSqlParser.READ_WRITE - 668)) | (1 << (TSqlParser.READONLY - 668)) | (1 << (TSqlParser.REBUILD - 668)) | (1 << (TSqlParser.RECEIVE - 668)) | (1 << (TSqlParser.RECOMPILE - 668)) | (1 << (TSqlParser.RECOVERY - 668)) | (1 << (TSqlParser.RECURSIVE_TRIGGERS - 668)) | (1 << (TSqlParser.RELATIVE - 668)) | (1 << (TSqlParser.REMOTE - 668)) | (1 << (TSqlParser.REMOTE_SERVICE_NAME - 668)) | (1 << (TSqlParser.REMOVE - 668)) | (1 << (TSqlParser.REORGANIZE - 668)) | (1 << (TSqlParser.REPEATABLE - 668)) | (1 << (TSqlParser.REPLICA - 668)) | (1 << (TSqlParser.REQUEST_MAX_CPU_TIME_SEC - 668)) | (1 << (TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT - 668)) | (1 << (TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC - 668)) | (1 << (TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT - 668)) | (1 << (TSqlParser.RESERVE_DISK_SPACE - 668)) | (1 << (TSqlParser.RESOURCE - 668)) | (1 << (TSqlParser.RESOURCE_MANAGER_LOCATION - 668)) | (1 << (TSqlParser.RESTRICTED_USER - 668)) | (1 << (TSqlParser.RETENTION - 668)) | (1 << (TSqlParser.ROBUST - 668)) | (1 << (TSqlParser.ROOT - 668)) | (1 << (TSqlParser.ROUTE - 668)) | (1 << (TSqlParser.ROW - 668)) | (1 << (TSqlParser.ROW_NUMBER - 668)) | (1 << (TSqlParser.ROWGUID - 668)) | (1 << (TSqlParser.ROWS - 668)) | (1 << (TSqlParser.SAMPLE - 668)))) !== 0) || ((((_la - 700)) & ~0x1f) == 0 && ((1 << (_la - 700)) & ((1 << (TSqlParser.SCHEMABINDING - 700)) | (1 << (TSqlParser.SCOPED - 700)) | (1 << (TSqlParser.SCROLL - 700)) | (1 << (TSqlParser.SCROLL_LOCKS - 700)) | (1 << (TSqlParser.SEARCH - 700)) | (1 << (TSqlParser.SECONDARY - 700)) | (1 << (TSqlParser.SECONDARY_ONLY - 700)) | (1 << (TSqlParser.SECONDARY_ROLE - 700)) | (1 << (TSqlParser.SECONDS - 700)) | (1 << (TSqlParser.SECRET - 700)) | (1 << (TSqlParser.SECURITY - 700)) | (1 << (TSqlParser.SECURITY_LOG - 700)) | (1 << (TSqlParser.SEEDING_MODE - 700)) | (1 << (TSqlParser.SELF - 700)) | (1 << (TSqlParser.SEMI_SENSITIVE - 700)) | (1 << (TSqlParser.SEND - 700)) | (1 << (TSqlParser.SENT - 700)) | (1 << (TSqlParser.SEQUENCE - 700)) | (1 << (TSqlParser.SERIALIZABLE - 700)) | (1 << (TSqlParser.SESSION_TIMEOUT - 700)) | (1 << (TSqlParser.SETERROR - 700)) | (1 << (TSqlParser.SHARE - 700)) | (1 << (TSqlParser.SHOWPLAN - 700)) | (1 << (TSqlParser.SIGNATURE - 700)) | (1 << (TSqlParser.SIMPLE - 700)) | (1 << (TSqlParser.SINGLE_USER - 700)) | (1 << (TSqlParser.SIZE - 700)) | (1 << (TSqlParser.SMALLINT - 700)) | (1 << (TSqlParser.SNAPSHOT - 700)) | (1 << (TSqlParser.SPATIAL_WINDOW_MAX_CELLS - 700)) | (1 << (TSqlParser.STANDBY - 700)) | (1 << (TSqlParser.START_DATE - 700)))) !== 0) || ((((_la - 732)) & ~0x1f) == 0 && ((1 << (_la - 732)) & ((1 << (TSqlParser.STATIC - 732)) | (1 << (TSqlParser.STATS_STREAM - 732)) | (1 << (TSqlParser.STATUS - 732)) | (1 << (TSqlParser.STDEV - 732)) | (1 << (TSqlParser.STDEVP - 732)) | (1 << (TSqlParser.STOPLIST - 732)) | (1 << (TSqlParser.STRING_AGG - 732)) | (1 << (TSqlParser.STUFF - 732)) | (1 << (TSqlParser.SUBJECT - 732)) | (1 << (TSqlParser.SUM - 732)) | (1 << (TSqlParser.SUSPEND - 732)) | (1 << (TSqlParser.SYMMETRIC - 732)) | (1 << (TSqlParser.SYNCHRONOUS_COMMIT - 732)) | (1 << (TSqlParser.SYNONYM - 732)) | (1 << (TSqlParser.SYSTEM - 732)) | (1 << (TSqlParser.TAKE - 732)) | (1 << (TSqlParser.TARGET_RECOVERY_TIME - 732)) | (1 << (TSqlParser.TB - 732)) | (1 << (TSqlParser.TEXTIMAGE_ON - 732)) | (1 << (TSqlParser.THROW - 732)) | (1 << (TSqlParser.TIES - 732)) | (1 << (TSqlParser.TIME - 732)) | (1 << (TSqlParser.TIMEOUT - 732)) | (1 << (TSqlParser.TIMER - 732)) | (1 << (TSqlParser.TINYINT - 732)) | (1 << (TSqlParser.TORN_PAGE_DETECTION - 732)) | (1 << (TSqlParser.TRANSFORM_NOISE_WORDS - 732)) | (1 << (TSqlParser.TRIPLE_DES - 732)) | (1 << (TSqlParser.TRIPLE_DES_3KEY - 732)) | (1 << (TSqlParser.TRUSTWORTHY - 732)))) !== 0) || ((((_la - 764)) & ~0x1f) == 0 && ((1 << (_la - 764)) & ((1 << (TSqlParser.TRY - 764)) | (1 << (TSqlParser.TSQL - 764)) | (1 << (TSqlParser.TWO_DIGIT_YEAR_CUTOFF - 764)) | (1 << (TSqlParser.TYPE - 764)) | (1 << (TSqlParser.TYPE_WARNING - 764)) | (1 << (TSqlParser.UNBOUNDED - 764)) | (1 << (TSqlParser.UNCOMMITTED - 764)) | (1 << (TSqlParser.UNKNOWN - 764)) | (1 << (TSqlParser.UNLIMITED - 764)) | (1 << (TSqlParser.USING - 764)) | (1 << (TSqlParser.VALID_XML - 764)) | (1 << (TSqlParser.VALIDATION - 764)) | (1 << (TSqlParser.VALUE - 764)) | (1 << (TSqlParser.VAR - 764)) | (1 << (TSqlParser.VARP - 764)) | (1 << (TSqlParser.VIEW_METADATA - 764)) | (1 << (TSqlParser.VIEWS - 764)) | (1 << (TSqlParser.WAIT - 764)) | (1 << (TSqlParser.WELL_FORMED_XML - 764)) | (1 << (TSqlParser.WORK - 764)) | (1 << (TSqlParser.WORKLOAD - 764)) | (1 << (TSqlParser.XML - 764)) | (1 << (TSqlParser.XMLNAMESPACES - 764)))) !== 0) || ((((_la - 796)) & ~0x1f) == 0 && ((1 << (_la - 796)) & ((1 << (TSqlParser.DOUBLE_QUOTE_ID - 796)) | (1 << (TSqlParser.SQUARE_BRACKET_ID - 796)) | (1 << (TSqlParser.ID - 796)))) !== 0) || _la===TSqlParser.COMMA);
- this.state = 7214;
- this.match(TSqlParser.SEMI);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_tableContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_table;
- return this;
-}
-
-Drop_tableContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_tableContext.prototype.constructor = Drop_tableContext;
-
-Drop_tableContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_tableContext.prototype.TABLE = function() {
- return this.getToken(TSqlParser.TABLE, 0);
-};
-
-Drop_tableContext.prototype.table_name = function() {
- return this.getTypedRuleContext(Table_nameContext,0);
-};
-
-Drop_tableContext.prototype.IF = function() {
- return this.getToken(TSqlParser.IF, 0);
-};
-
-Drop_tableContext.prototype.EXISTS = function() {
- return this.getToken(TSqlParser.EXISTS, 0);
-};
-
-Drop_tableContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Drop_tableContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_table(this);
- }
-};
-
-Drop_tableContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_table(this);
- }
-};
-
-Drop_tableContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_table(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_tableContext = Drop_tableContext;
-
-TSqlParser.prototype.drop_table = function() {
-
- var localctx = new Drop_tableContext(this, this._ctx, this.state);
- this.enterRule(localctx, 594, TSqlParser.RULE_drop_table);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 7216;
- this.match(TSqlParser.DROP);
- this.state = 7217;
- this.match(TSqlParser.TABLE);
- this.state = 7220;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.IF) {
- this.state = 7218;
- this.match(TSqlParser.IF);
- this.state = 7219;
- this.match(TSqlParser.EXISTS);
- }
-
- this.state = 7222;
- this.table_name();
- this.state = 7224;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,956,this._ctx);
- if(la_===1) {
- this.state = 7223;
- this.match(TSqlParser.SEMI);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_viewContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_view;
- return this;
-}
-
-Drop_viewContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_viewContext.prototype.constructor = Drop_viewContext;
-
-Drop_viewContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_viewContext.prototype.VIEW = function() {
- return this.getToken(TSqlParser.VIEW, 0);
-};
-
-Drop_viewContext.prototype.simple_name = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Simple_nameContext);
- } else {
- return this.getTypedRuleContext(Simple_nameContext,i);
- }
-};
-
-Drop_viewContext.prototype.IF = function() {
- return this.getToken(TSqlParser.IF, 0);
-};
-
-Drop_viewContext.prototype.EXISTS = function() {
- return this.getToken(TSqlParser.EXISTS, 0);
-};
-
-Drop_viewContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Drop_viewContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Drop_viewContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_view(this);
- }
-};
-
-Drop_viewContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_view(this);
- }
-};
-
-Drop_viewContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_view(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_viewContext = Drop_viewContext;
-
-TSqlParser.prototype.drop_view = function() {
-
- var localctx = new Drop_viewContext(this, this._ctx, this.state);
- this.enterRule(localctx, 596, TSqlParser.RULE_drop_view);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 7226;
- this.match(TSqlParser.DROP);
- this.state = 7227;
- this.match(TSqlParser.VIEW);
- this.state = 7230;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.IF) {
- this.state = 7228;
- this.match(TSqlParser.IF);
- this.state = 7229;
- this.match(TSqlParser.EXISTS);
- }
-
- this.state = 7232;
- this.simple_name();
- this.state = 7237;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 7233;
- this.match(TSqlParser.COMMA);
- this.state = 7234;
- this.simple_name();
- this.state = 7239;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- this.state = 7241;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,959,this._ctx);
- if(la_===1) {
- this.state = 7240;
- this.match(TSqlParser.SEMI);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_typeContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_type;
- this.name = null; // Simple_nameContext
- return this;
-}
-
-Create_typeContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_typeContext.prototype.constructor = Create_typeContext;
-
-Create_typeContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_typeContext.prototype.TYPE = function() {
- return this.getToken(TSqlParser.TYPE, 0);
-};
-
-Create_typeContext.prototype.simple_name = function() {
- return this.getTypedRuleContext(Simple_nameContext,0);
-};
-
-Create_typeContext.prototype.FROM = function() {
- return this.getToken(TSqlParser.FROM, 0);
-};
-
-Create_typeContext.prototype.data_type = function() {
- return this.getTypedRuleContext(Data_typeContext,0);
-};
-
-Create_typeContext.prototype.default_value = function() {
- return this.getTypedRuleContext(Default_valueContext,0);
-};
-
-Create_typeContext.prototype.AS = function() {
- return this.getToken(TSqlParser.AS, 0);
-};
-
-Create_typeContext.prototype.TABLE = function() {
- return this.getToken(TSqlParser.TABLE, 0);
-};
-
-Create_typeContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Create_typeContext.prototype.column_def_table_constraints = function() {
- return this.getTypedRuleContext(Column_def_table_constraintsContext,0);
-};
-
-Create_typeContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Create_typeContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_type(this);
- }
-};
-
-Create_typeContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_type(this);
- }
-};
-
-Create_typeContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_type(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_typeContext = Create_typeContext;
-
-TSqlParser.prototype.create_type = function() {
-
- var localctx = new Create_typeContext(this, this._ctx, this.state);
- this.enterRule(localctx, 598, TSqlParser.RULE_create_type);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 7243;
- this.match(TSqlParser.CREATE);
- this.state = 7244;
- this.match(TSqlParser.TYPE);
- this.state = 7245;
- localctx.name = this.simple_name();
- this.state = 7250;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.FROM) {
- this.state = 7246;
- this.match(TSqlParser.FROM);
- this.state = 7247;
- this.data_type();
- this.state = 7248;
- this.default_value();
- }
-
- this.state = 7258;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.AS) {
- this.state = 7252;
- this.match(TSqlParser.AS);
- this.state = 7253;
- this.match(TSqlParser.TABLE);
- this.state = 7254;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 7255;
- this.column_def_table_constraints();
- this.state = 7256;
- this.match(TSqlParser.RR_BRACKET);
- }
-
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Drop_typeContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_drop_type;
- this.name = null; // Simple_nameContext
- return this;
-}
-
-Drop_typeContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Drop_typeContext.prototype.constructor = Drop_typeContext;
-
-Drop_typeContext.prototype.DROP = function() {
- return this.getToken(TSqlParser.DROP, 0);
-};
-
-Drop_typeContext.prototype.TYPE = function() {
- return this.getToken(TSqlParser.TYPE, 0);
-};
-
-Drop_typeContext.prototype.simple_name = function() {
- return this.getTypedRuleContext(Simple_nameContext,0);
-};
-
-Drop_typeContext.prototype.IF = function() {
- return this.getToken(TSqlParser.IF, 0);
-};
-
-Drop_typeContext.prototype.EXISTS = function() {
- return this.getToken(TSqlParser.EXISTS, 0);
-};
-
-Drop_typeContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDrop_type(this);
- }
-};
-
-Drop_typeContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDrop_type(this);
- }
-};
-
-Drop_typeContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDrop_type(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Drop_typeContext = Drop_typeContext;
-
-TSqlParser.prototype.drop_type = function() {
-
- var localctx = new Drop_typeContext(this, this._ctx, this.state);
- this.enterRule(localctx, 600, TSqlParser.RULE_drop_type);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 7260;
- this.match(TSqlParser.DROP);
- this.state = 7261;
- this.match(TSqlParser.TYPE);
- this.state = 7264;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.IF) {
- this.state = 7262;
- this.match(TSqlParser.IF);
- this.state = 7263;
- this.match(TSqlParser.EXISTS);
- }
-
- this.state = 7266;
- localctx.name = this.simple_name();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Rowset_function_limitedContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_rowset_function_limited;
- return this;
-}
-
-Rowset_function_limitedContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Rowset_function_limitedContext.prototype.constructor = Rowset_function_limitedContext;
-
-Rowset_function_limitedContext.prototype.openquery = function() {
- return this.getTypedRuleContext(OpenqueryContext,0);
-};
-
-Rowset_function_limitedContext.prototype.opendatasource = function() {
- return this.getTypedRuleContext(OpendatasourceContext,0);
-};
-
-Rowset_function_limitedContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterRowset_function_limited(this);
- }
-};
-
-Rowset_function_limitedContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitRowset_function_limited(this);
- }
-};
-
-Rowset_function_limitedContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitRowset_function_limited(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Rowset_function_limitedContext = Rowset_function_limitedContext;
-
-TSqlParser.prototype.rowset_function_limited = function() {
-
- var localctx = new Rowset_function_limitedContext(this, this._ctx, this.state);
- this.enterRule(localctx, 602, TSqlParser.RULE_rowset_function_limited);
- try {
- this.state = 7270;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.OPENQUERY:
- this.enterOuterAlt(localctx, 1);
- this.state = 7268;
- this.openquery();
- break;
- case TSqlParser.OPENDATASOURCE:
- this.enterOuterAlt(localctx, 2);
- this.state = 7269;
- this.opendatasource();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function OpenqueryContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_openquery;
- this.linked_server = null; // IdContext
- this.query = null; // Token
- return this;
-}
-
-OpenqueryContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-OpenqueryContext.prototype.constructor = OpenqueryContext;
-
-OpenqueryContext.prototype.OPENQUERY = function() {
- return this.getToken(TSqlParser.OPENQUERY, 0);
-};
-
-OpenqueryContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-OpenqueryContext.prototype.COMMA = function() {
- return this.getToken(TSqlParser.COMMA, 0);
-};
-
-OpenqueryContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-OpenqueryContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-OpenqueryContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-OpenqueryContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterOpenquery(this);
- }
-};
-
-OpenqueryContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitOpenquery(this);
- }
-};
-
-OpenqueryContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitOpenquery(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.OpenqueryContext = OpenqueryContext;
-
-TSqlParser.prototype.openquery = function() {
-
- var localctx = new OpenqueryContext(this, this._ctx, this.state);
- this.enterRule(localctx, 604, TSqlParser.RULE_openquery);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 7272;
- this.match(TSqlParser.OPENQUERY);
- this.state = 7273;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 7274;
- localctx.linked_server = this.id();
- this.state = 7275;
- this.match(TSqlParser.COMMA);
- this.state = 7276;
- localctx.query = this.match(TSqlParser.STRING);
- this.state = 7277;
- this.match(TSqlParser.RR_BRACKET);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function OpendatasourceContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_opendatasource;
- this.provider = null; // Token
- this.init = null; // Token
- this.database = null; // IdContext
- this.scheme = null; // IdContext
- this.table = null; // IdContext
- return this;
-}
-
-OpendatasourceContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-OpendatasourceContext.prototype.constructor = OpendatasourceContext;
-
-OpendatasourceContext.prototype.OPENDATASOURCE = function() {
- return this.getToken(TSqlParser.OPENDATASOURCE, 0);
-};
-
-OpendatasourceContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-OpendatasourceContext.prototype.COMMA = function() {
- return this.getToken(TSqlParser.COMMA, 0);
-};
-
-OpendatasourceContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-OpendatasourceContext.prototype.DOT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DOT);
- } else {
- return this.getToken(TSqlParser.DOT, i);
- }
-};
-
-
-OpendatasourceContext.prototype.STRING = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.STRING);
- } else {
- return this.getToken(TSqlParser.STRING, i);
- }
-};
-
-
-OpendatasourceContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-OpendatasourceContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterOpendatasource(this);
- }
-};
-
-OpendatasourceContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitOpendatasource(this);
- }
-};
-
-OpendatasourceContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitOpendatasource(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.OpendatasourceContext = OpendatasourceContext;
-
-TSqlParser.prototype.opendatasource = function() {
-
- var localctx = new OpendatasourceContext(this, this._ctx, this.state);
- this.enterRule(localctx, 606, TSqlParser.RULE_opendatasource);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 7279;
- this.match(TSqlParser.OPENDATASOURCE);
- this.state = 7280;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 7281;
- localctx.provider = this.match(TSqlParser.STRING);
- this.state = 7282;
- this.match(TSqlParser.COMMA);
- this.state = 7283;
- localctx.init = this.match(TSqlParser.STRING);
- this.state = 7284;
- this.match(TSqlParser.RR_BRACKET);
- this.state = 7285;
- this.match(TSqlParser.DOT);
- this.state = 7287;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.CALLED || _la===TSqlParser.DATA_COMPRESSION || ((((_la - 112)) & ~0x1f) == 0 && ((1 << (_la - 112)) & ((1 << (TSqlParser.EVENTDATA - 112)) | (1 << (TSqlParser.FILENAME - 112)) | (1 << (TSqlParser.FILLFACTOR - 112)) | (1 << (TSqlParser.FORCESEEK - 112)))) !== 0) || ((((_la - 158)) & ~0x1f) == 0 && ((1 << (_la - 158)) & ((1 << (TSqlParser.INIT - 158)) | (1 << (TSqlParser.KEY - 158)) | (1 << (TSqlParser.MASTER - 158)) | (1 << (TSqlParser.MAX_MEMORY - 158)))) !== 0) || _la===TSqlParser.OFFSETS || _la===TSqlParser.PAGE || ((((_la - 259)) & ~0x1f) == 0 && ((1 << (_la - 259)) & ((1 << (TSqlParser.PUBLIC - 259)) | (1 << (TSqlParser.R - 259)) | (1 << (TSqlParser.RAW - 259)) | (1 << (TSqlParser.RETURN - 259)) | (1 << (TSqlParser.RETURNS - 259)) | (1 << (TSqlParser.ROWCOUNT - 259)))) !== 0) || ((((_la - 295)) & ~0x1f) == 0 && ((1 << (_la - 295)) & ((1 << (TSqlParser.SAFETY - 295)) | (1 << (TSqlParser.SERVER - 295)) | (1 << (TSqlParser.SID - 295)) | (1 << (TSqlParser.SOURCE - 295)) | (1 << (TSqlParser.SPLIT - 295)))) !== 0) || ((((_la - 327)) & ~0x1f) == 0 && ((1 << (_la - 327)) & ((1 << (TSqlParser.STATE - 327)) | (1 << (TSqlParser.START - 327)) | (1 << (TSqlParser.TARGET - 327)))) !== 0) || ((((_la - 380)) & ~0x1f) == 0 && ((1 << (_la - 380)) & ((1 << (TSqlParser.ABSOLUTE - 380)) | (1 << (TSqlParser.ACCENT_SENSITIVITY - 380)) | (1 << (TSqlParser.ACTION - 380)) | (1 << (TSqlParser.ACTIVATION - 380)) | (1 << (TSqlParser.ACTIVE - 380)) | (1 << (TSqlParser.ADDRESS - 380)) | (1 << (TSqlParser.AES_128 - 380)) | (1 << (TSqlParser.AES_192 - 380)) | (1 << (TSqlParser.AES_256 - 380)) | (1 << (TSqlParser.AFFINITY - 380)) | (1 << (TSqlParser.AFTER - 380)) | (1 << (TSqlParser.AGGREGATE - 380)) | (1 << (TSqlParser.ALGORITHM - 380)) | (1 << (TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS - 380)) | (1 << (TSqlParser.ALLOW_SNAPSHOT_ISOLATION - 380)) | (1 << (TSqlParser.ALLOWED - 380)) | (1 << (TSqlParser.ANSI_NULL_DEFAULT - 380)) | (1 << (TSqlParser.ANSI_NULLS - 380)) | (1 << (TSqlParser.ANSI_PADDING - 380)) | (1 << (TSqlParser.ANSI_WARNINGS - 380)) | (1 << (TSqlParser.APPLICATION_LOG - 380)) | (1 << (TSqlParser.APPLY - 380)) | (1 << (TSqlParser.ARITHABORT - 380)) | (1 << (TSqlParser.ASSEMBLY - 380)) | (1 << (TSqlParser.AUDIT - 380)) | (1 << (TSqlParser.AUDIT_GUID - 380)) | (1 << (TSqlParser.AUTO - 380)) | (1 << (TSqlParser.AUTO_CLEANUP - 380)) | (1 << (TSqlParser.AUTO_CLOSE - 380)) | (1 << (TSqlParser.AUTO_CREATE_STATISTICS - 380)) | (1 << (TSqlParser.AUTO_SHRINK - 380)) | (1 << (TSqlParser.AUTO_UPDATE_STATISTICS - 380)))) !== 0) || ((((_la - 412)) & ~0x1f) == 0 && ((1 << (_la - 412)) & ((1 << (TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC - 412)) | (1 << (TSqlParser.AVAILABILITY - 412)) | (1 << (TSqlParser.AVG - 412)) | (1 << (TSqlParser.BACKUP_PRIORITY - 412)) | (1 << (TSqlParser.BEGIN_DIALOG - 412)) | (1 << (TSqlParser.BIGINT - 412)) | (1 << (TSqlParser.BINARY_BASE64 - 412)) | (1 << (TSqlParser.BINARY_CHECKSUM - 412)) | (1 << (TSqlParser.BINDING - 412)) | (1 << (TSqlParser.BLOB_STORAGE - 412)) | (1 << (TSqlParser.BROKER - 412)) | (1 << (TSqlParser.BROKER_INSTANCE - 412)) | (1 << (TSqlParser.BULK_LOGGED - 412)) | (1 << (TSqlParser.CALLER - 412)) | (1 << (TSqlParser.CAP_CPU_PERCENT - 412)) | (1 << (TSqlParser.CAST - 412)) | (1 << (TSqlParser.CATALOG - 412)) | (1 << (TSqlParser.CATCH - 412)) | (1 << (TSqlParser.CHANGE_RETENTION - 412)) | (1 << (TSqlParser.CHANGE_TRACKING - 412)) | (1 << (TSqlParser.CHECKSUM - 412)) | (1 << (TSqlParser.CHECKSUM_AGG - 412)) | (1 << (TSqlParser.CLEANUP - 412)) | (1 << (TSqlParser.COLLECTION - 412)) | (1 << (TSqlParser.COLUMN_MASTER_KEY - 412)) | (1 << (TSqlParser.COMMITTED - 412)) | (1 << (TSqlParser.COMPATIBILITY_LEVEL - 412)) | (1 << (TSqlParser.CONCAT - 412)) | (1 << (TSqlParser.CONCAT_NULL_YIELDS_NULL - 412)) | (1 << (TSqlParser.CONTENT - 412)) | (1 << (TSqlParser.CONTROL - 412)) | (1 << (TSqlParser.COOKIE - 412)))) !== 0) || ((((_la - 444)) & ~0x1f) == 0 && ((1 << (_la - 444)) & ((1 << (TSqlParser.COUNT - 444)) | (1 << (TSqlParser.COUNT_BIG - 444)) | (1 << (TSqlParser.COUNTER - 444)) | (1 << (TSqlParser.CPU - 444)) | (1 << (TSqlParser.CREATE_NEW - 444)) | (1 << (TSqlParser.CREATION_DISPOSITION - 444)) | (1 << (TSqlParser.CREDENTIAL - 444)) | (1 << (TSqlParser.CRYPTOGRAPHIC - 444)) | (1 << (TSqlParser.CURSOR_CLOSE_ON_COMMIT - 444)) | (1 << (TSqlParser.CURSOR_DEFAULT - 444)) | (1 << (TSqlParser.DATA - 444)) | (1 << (TSqlParser.DATE_CORRELATION_OPTIMIZATION - 444)) | (1 << (TSqlParser.DATEADD - 444)) | (1 << (TSqlParser.DATEDIFF - 444)) | (1 << (TSqlParser.DATENAME - 444)) | (1 << (TSqlParser.DATEPART - 444)) | (1 << (TSqlParser.DAYS - 444)) | (1 << (TSqlParser.DB_CHAINING - 444)) | (1 << (TSqlParser.DB_FAILOVER - 444)) | (1 << (TSqlParser.DECRYPTION - 444)) | (1 << (TSqlParser.DEFAULT_DOUBLE_QUOTE - 444)) | (1 << (TSqlParser.DEFAULT_FULLTEXT_LANGUAGE - 444)) | (1 << (TSqlParser.DEFAULT_LANGUAGE - 444)) | (1 << (TSqlParser.DELAY - 444)) | (1 << (TSqlParser.DELAYED_DURABILITY - 444)) | (1 << (TSqlParser.DELETED - 444)) | (1 << (TSqlParser.DENSE_RANK - 444)) | (1 << (TSqlParser.DEPENDENTS - 444)) | (1 << (TSqlParser.DES - 444)) | (1 << (TSqlParser.DESCRIPTION - 444)) | (1 << (TSqlParser.DESX - 444)) | (1 << (TSqlParser.DHCP - 444)))) !== 0) || ((((_la - 476)) & ~0x1f) == 0 && ((1 << (_la - 476)) & ((1 << (TSqlParser.DIALOG - 476)) | (1 << (TSqlParser.DIRECTORY_NAME - 476)) | (1 << (TSqlParser.DISABLE - 476)) | (1 << (TSqlParser.DISABLE_BROKER - 476)) | (1 << (TSqlParser.DISABLED - 476)) | (1 << (TSqlParser.DISK_DRIVE - 476)) | (1 << (TSqlParser.DOCUMENT - 476)) | (1 << (TSqlParser.DYNAMIC - 476)) | (1 << (TSqlParser.EMERGENCY - 476)) | (1 << (TSqlParser.EMPTY - 476)) | (1 << (TSqlParser.ENABLE - 476)) | (1 << (TSqlParser.ENABLE_BROKER - 476)) | (1 << (TSqlParser.ENCRYPTED_VALUE - 476)) | (1 << (TSqlParser.ENCRYPTION - 476)) | (1 << (TSqlParser.ENDPOINT_URL - 476)) | (1 << (TSqlParser.ERROR_BROKER_CONVERSATIONS - 476)) | (1 << (TSqlParser.EXCLUSIVE - 476)) | (1 << (TSqlParser.EXECUTABLE - 476)) | (1 << (TSqlParser.EXIST - 476)) | (1 << (TSqlParser.EXPAND - 476)) | (1 << (TSqlParser.EXPIRY_DATE - 476)) | (1 << (TSqlParser.EXPLICIT - 476)) | (1 << (TSqlParser.FAIL_OPERATION - 476)) | (1 << (TSqlParser.FAILOVER_MODE - 476)) | (1 << (TSqlParser.FAILURE - 476)) | (1 << (TSqlParser.FAILURE_CONDITION_LEVEL - 476)) | (1 << (TSqlParser.FAST - 476)) | (1 << (TSqlParser.FAST_FORWARD - 476)) | (1 << (TSqlParser.FILEGROUP - 476)) | (1 << (TSqlParser.FILEGROWTH - 476)) | (1 << (TSqlParser.FILEPATH - 476)))) !== 0) || ((((_la - 508)) & ~0x1f) == 0 && ((1 << (_la - 508)) & ((1 << (TSqlParser.FILESTREAM - 508)) | (1 << (TSqlParser.FILTER - 508)) | (1 << (TSqlParser.FIRST - 508)) | (1 << (TSqlParser.FIRST_VALUE - 508)) | (1 << (TSqlParser.FOLLOWING - 508)) | (1 << (TSqlParser.FORCE - 508)) | (1 << (TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS - 508)) | (1 << (TSqlParser.FORCED - 508)) | (1 << (TSqlParser.FORMAT - 508)) | (1 << (TSqlParser.FORWARD_ONLY - 508)) | (1 << (TSqlParser.FULLSCAN - 508)) | (1 << (TSqlParser.FULLTEXT - 508)) | (1 << (TSqlParser.GB - 508)) | (1 << (TSqlParser.GETDATE - 508)) | (1 << (TSqlParser.GETUTCDATE - 508)) | (1 << (TSqlParser.GLOBAL - 508)) | (1 << (TSqlParser.GO - 508)) | (1 << (TSqlParser.GROUP_MAX_REQUESTS - 508)) | (1 << (TSqlParser.GROUPING - 508)) | (1 << (TSqlParser.GROUPING_ID - 508)) | (1 << (TSqlParser.HADR - 508)) | (1 << (TSqlParser.HASH - 508)) | (1 << (TSqlParser.HEALTH_CHECK_TIMEOUT - 508)) | (1 << (TSqlParser.HIGH - 508)) | (1 << (TSqlParser.HONOR_BROKER_PRIORITY - 508)) | (1 << (TSqlParser.HOURS - 508)) | (1 << (TSqlParser.IDENTITY_VALUE - 508)) | (1 << (TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX - 508)) | (1 << (TSqlParser.IMMEDIATE - 508)) | (1 << (TSqlParser.IMPERSONATE - 508)) | (1 << (TSqlParser.IMPORTANCE - 508)))) !== 0) || ((((_la - 540)) & ~0x1f) == 0 && ((1 << (_la - 540)) & ((1 << (TSqlParser.INCREMENTAL - 540)) | (1 << (TSqlParser.INITIATOR - 540)) | (1 << (TSqlParser.INPUT - 540)) | (1 << (TSqlParser.INSENSITIVE - 540)) | (1 << (TSqlParser.INSERTED - 540)) | (1 << (TSqlParser.INT - 540)) | (1 << (TSqlParser.IP - 540)) | (1 << (TSqlParser.ISOLATION - 540)) | (1 << (TSqlParser.KB - 540)) | (1 << (TSqlParser.KEEP - 540)) | (1 << (TSqlParser.KEEPFIXED - 540)) | (1 << (TSqlParser.KEY_SOURCE - 540)) | (1 << (TSqlParser.KEYS - 540)) | (1 << (TSqlParser.KEYSET - 540)) | (1 << (TSqlParser.LAG - 540)) | (1 << (TSqlParser.LAST - 540)) | (1 << (TSqlParser.LAST_VALUE - 540)) | (1 << (TSqlParser.LEAD - 540)) | (1 << (TSqlParser.LEVEL - 540)) | (1 << (TSqlParser.LIST - 540)) | (1 << (TSqlParser.LISTENER - 540)) | (1 << (TSqlParser.LISTENER_URL - 540)) | (1 << (TSqlParser.LOB_COMPACTION - 540)) | (1 << (TSqlParser.LOCAL - 540)) | (1 << (TSqlParser.LOCATION - 540)) | (1 << (TSqlParser.LOCK - 540)) | (1 << (TSqlParser.LOCK_ESCALATION - 540)) | (1 << (TSqlParser.LOGIN - 540)) | (1 << (TSqlParser.LOOP - 540)) | (1 << (TSqlParser.LOW - 540)))) !== 0) || ((((_la - 572)) & ~0x1f) == 0 && ((1 << (_la - 572)) & ((1 << (TSqlParser.MANUAL - 572)) | (1 << (TSqlParser.MARK - 572)) | (1 << (TSqlParser.MATERIALIZED - 572)) | (1 << (TSqlParser.MAX - 572)) | (1 << (TSqlParser.MAX_CPU_PERCENT - 572)) | (1 << (TSqlParser.MAX_DOP - 572)) | (1 << (TSqlParser.MAX_FILES - 572)) | (1 << (TSqlParser.MAX_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MAX_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MAX_PROCESSES - 572)) | (1 << (TSqlParser.MAX_QUEUE_READERS - 572)) | (1 << (TSqlParser.MAX_ROLLOVER_FILES - 572)) | (1 << (TSqlParser.MAXDOP - 572)) | (1 << (TSqlParser.MAXRECURSION - 572)) | (1 << (TSqlParser.MAXSIZE - 572)) | (1 << (TSqlParser.MB - 572)) | (1 << (TSqlParser.MEDIUM - 572)) | (1 << (TSqlParser.MEMORY_OPTIMIZED_DATA - 572)) | (1 << (TSqlParser.MESSAGE - 572)) | (1 << (TSqlParser.MIN - 572)) | (1 << (TSqlParser.MIN_ACTIVE_ROWVERSION - 572)) | (1 << (TSqlParser.MIN_CPU_PERCENT - 572)) | (1 << (TSqlParser.MIN_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MIN_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MINUTES - 572)) | (1 << (TSqlParser.MIRROR_ADDRESS - 572)) | (1 << (TSqlParser.MIXED_PAGE_ALLOCATION - 572)) | (1 << (TSqlParser.MODE - 572)) | (1 << (TSqlParser.MODIFY - 572)) | (1 << (TSqlParser.MOVE - 572)) | (1 << (TSqlParser.MULTI_USER - 572)) | (1 << (TSqlParser.NAME - 572)))) !== 0) || ((((_la - 604)) & ~0x1f) == 0 && ((1 << (_la - 604)) & ((1 << (TSqlParser.NESTED_TRIGGERS - 604)) | (1 << (TSqlParser.NEW_ACCOUNT - 604)) | (1 << (TSqlParser.NEW_BROKER - 604)) | (1 << (TSqlParser.NEW_PASSWORD - 604)) | (1 << (TSqlParser.NEXT - 604)) | (1 << (TSqlParser.NO - 604)) | (1 << (TSqlParser.NO_TRUNCATE - 604)) | (1 << (TSqlParser.NO_WAIT - 604)) | (1 << (TSqlParser.NOCOUNT - 604)) | (1 << (TSqlParser.NODES - 604)) | (1 << (TSqlParser.NOEXPAND - 604)) | (1 << (TSqlParser.NON_TRANSACTED_ACCESS - 604)) | (1 << (TSqlParser.NORECOMPUTE - 604)) | (1 << (TSqlParser.NORECOVERY - 604)) | (1 << (TSqlParser.NOWAIT - 604)) | (1 << (TSqlParser.NTILE - 604)) | (1 << (TSqlParser.NUMANODE - 604)) | (1 << (TSqlParser.NUMBER - 604)) | (1 << (TSqlParser.NUMERIC_ROUNDABORT - 604)) | (1 << (TSqlParser.OBJECT - 604)) | (1 << (TSqlParser.OFFLINE - 604)) | (1 << (TSqlParser.OFFSET - 604)) | (1 << (TSqlParser.OLD_ACCOUNT - 604)) | (1 << (TSqlParser.ONLINE - 604)) | (1 << (TSqlParser.ONLY - 604)) | (1 << (TSqlParser.OPEN_EXISTING - 604)) | (1 << (TSqlParser.OPTIMISTIC - 604)) | (1 << (TSqlParser.OPTIMIZE - 604)) | (1 << (TSqlParser.OUT - 604)) | (1 << (TSqlParser.OUTPUT - 604)) | (1 << (TSqlParser.OWNER - 604)))) !== 0) || ((((_la - 636)) & ~0x1f) == 0 && ((1 << (_la - 636)) & ((1 << (TSqlParser.PAGE_VERIFY - 636)) | (1 << (TSqlParser.PARAMETERIZATION - 636)) | (1 << (TSqlParser.PARTITION - 636)) | (1 << (TSqlParser.PARTITIONS - 636)) | (1 << (TSqlParser.PARTNER - 636)) | (1 << (TSqlParser.PATH - 636)) | (1 << (TSqlParser.POISON_MESSAGE_HANDLING - 636)) | (1 << (TSqlParser.POOL - 636)) | (1 << (TSqlParser.PORT - 636)) | (1 << (TSqlParser.PRECEDING - 636)) | (1 << (TSqlParser.PRIMARY_ROLE - 636)) | (1 << (TSqlParser.PRIOR - 636)) | (1 << (TSqlParser.PRIORITY - 636)) | (1 << (TSqlParser.PRIORITY_LEVEL - 636)) | (1 << (TSqlParser.PRIVATE - 636)) | (1 << (TSqlParser.PRIVATE_KEY - 636)) | (1 << (TSqlParser.PRIVILEGES - 636)) | (1 << (TSqlParser.PROCEDURE_NAME - 636)) | (1 << (TSqlParser.PROPERTY - 636)) | (1 << (TSqlParser.PROVIDER - 636)) | (1 << (TSqlParser.PROVIDER_KEY_NAME - 636)) | (1 << (TSqlParser.QUERY - 636)) | (1 << (TSqlParser.QUEUE - 636)) | (1 << (TSqlParser.QUEUE_DELAY - 636)) | (1 << (TSqlParser.QUOTED_IDENTIFIER - 636)) | (1 << (TSqlParser.RANGE - 636)) | (1 << (TSqlParser.RANK - 636)) | (1 << (TSqlParser.RC2 - 636)) | (1 << (TSqlParser.RC4 - 636)) | (1 << (TSqlParser.RC4_128 - 636)) | (1 << (TSqlParser.READ_COMMITTED_SNAPSHOT - 636)) | (1 << (TSqlParser.READ_ONLY - 636)))) !== 0) || ((((_la - 668)) & ~0x1f) == 0 && ((1 << (_la - 668)) & ((1 << (TSqlParser.READ_ONLY_ROUTING_LIST - 668)) | (1 << (TSqlParser.READ_WRITE - 668)) | (1 << (TSqlParser.READONLY - 668)) | (1 << (TSqlParser.REBUILD - 668)) | (1 << (TSqlParser.RECEIVE - 668)) | (1 << (TSqlParser.RECOMPILE - 668)) | (1 << (TSqlParser.RECOVERY - 668)) | (1 << (TSqlParser.RECURSIVE_TRIGGERS - 668)) | (1 << (TSqlParser.RELATIVE - 668)) | (1 << (TSqlParser.REMOTE - 668)) | (1 << (TSqlParser.REMOTE_SERVICE_NAME - 668)) | (1 << (TSqlParser.REMOVE - 668)) | (1 << (TSqlParser.REORGANIZE - 668)) | (1 << (TSqlParser.REPEATABLE - 668)) | (1 << (TSqlParser.REPLICA - 668)) | (1 << (TSqlParser.REQUEST_MAX_CPU_TIME_SEC - 668)) | (1 << (TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT - 668)) | (1 << (TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC - 668)) | (1 << (TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT - 668)) | (1 << (TSqlParser.RESERVE_DISK_SPACE - 668)) | (1 << (TSqlParser.RESOURCE - 668)) | (1 << (TSqlParser.RESOURCE_MANAGER_LOCATION - 668)) | (1 << (TSqlParser.RESTRICTED_USER - 668)) | (1 << (TSqlParser.RETENTION - 668)) | (1 << (TSqlParser.ROBUST - 668)) | (1 << (TSqlParser.ROOT - 668)) | (1 << (TSqlParser.ROUTE - 668)) | (1 << (TSqlParser.ROW - 668)) | (1 << (TSqlParser.ROW_NUMBER - 668)) | (1 << (TSqlParser.ROWGUID - 668)) | (1 << (TSqlParser.ROWS - 668)) | (1 << (TSqlParser.SAMPLE - 668)))) !== 0) || ((((_la - 700)) & ~0x1f) == 0 && ((1 << (_la - 700)) & ((1 << (TSqlParser.SCHEMABINDING - 700)) | (1 << (TSqlParser.SCOPED - 700)) | (1 << (TSqlParser.SCROLL - 700)) | (1 << (TSqlParser.SCROLL_LOCKS - 700)) | (1 << (TSqlParser.SEARCH - 700)) | (1 << (TSqlParser.SECONDARY - 700)) | (1 << (TSqlParser.SECONDARY_ONLY - 700)) | (1 << (TSqlParser.SECONDARY_ROLE - 700)) | (1 << (TSqlParser.SECONDS - 700)) | (1 << (TSqlParser.SECRET - 700)) | (1 << (TSqlParser.SECURITY - 700)) | (1 << (TSqlParser.SECURITY_LOG - 700)) | (1 << (TSqlParser.SEEDING_MODE - 700)) | (1 << (TSqlParser.SELF - 700)) | (1 << (TSqlParser.SEMI_SENSITIVE - 700)) | (1 << (TSqlParser.SEND - 700)) | (1 << (TSqlParser.SENT - 700)) | (1 << (TSqlParser.SEQUENCE - 700)) | (1 << (TSqlParser.SERIALIZABLE - 700)) | (1 << (TSqlParser.SESSION_TIMEOUT - 700)) | (1 << (TSqlParser.SETERROR - 700)) | (1 << (TSqlParser.SHARE - 700)) | (1 << (TSqlParser.SHOWPLAN - 700)) | (1 << (TSqlParser.SIGNATURE - 700)) | (1 << (TSqlParser.SIMPLE - 700)) | (1 << (TSqlParser.SINGLE_USER - 700)) | (1 << (TSqlParser.SIZE - 700)) | (1 << (TSqlParser.SMALLINT - 700)) | (1 << (TSqlParser.SNAPSHOT - 700)) | (1 << (TSqlParser.SPATIAL_WINDOW_MAX_CELLS - 700)) | (1 << (TSqlParser.STANDBY - 700)) | (1 << (TSqlParser.START_DATE - 700)))) !== 0) || ((((_la - 732)) & ~0x1f) == 0 && ((1 << (_la - 732)) & ((1 << (TSqlParser.STATIC - 732)) | (1 << (TSqlParser.STATS_STREAM - 732)) | (1 << (TSqlParser.STATUS - 732)) | (1 << (TSqlParser.STDEV - 732)) | (1 << (TSqlParser.STDEVP - 732)) | (1 << (TSqlParser.STOPLIST - 732)) | (1 << (TSqlParser.STRING_AGG - 732)) | (1 << (TSqlParser.STUFF - 732)) | (1 << (TSqlParser.SUBJECT - 732)) | (1 << (TSqlParser.SUM - 732)) | (1 << (TSqlParser.SUSPEND - 732)) | (1 << (TSqlParser.SYMMETRIC - 732)) | (1 << (TSqlParser.SYNCHRONOUS_COMMIT - 732)) | (1 << (TSqlParser.SYNONYM - 732)) | (1 << (TSqlParser.SYSTEM - 732)) | (1 << (TSqlParser.TAKE - 732)) | (1 << (TSqlParser.TARGET_RECOVERY_TIME - 732)) | (1 << (TSqlParser.TB - 732)) | (1 << (TSqlParser.TEXTIMAGE_ON - 732)) | (1 << (TSqlParser.THROW - 732)) | (1 << (TSqlParser.TIES - 732)) | (1 << (TSqlParser.TIME - 732)) | (1 << (TSqlParser.TIMEOUT - 732)) | (1 << (TSqlParser.TIMER - 732)) | (1 << (TSqlParser.TINYINT - 732)) | (1 << (TSqlParser.TORN_PAGE_DETECTION - 732)) | (1 << (TSqlParser.TRANSFORM_NOISE_WORDS - 732)) | (1 << (TSqlParser.TRIPLE_DES - 732)) | (1 << (TSqlParser.TRIPLE_DES_3KEY - 732)) | (1 << (TSqlParser.TRUSTWORTHY - 732)))) !== 0) || ((((_la - 764)) & ~0x1f) == 0 && ((1 << (_la - 764)) & ((1 << (TSqlParser.TRY - 764)) | (1 << (TSqlParser.TSQL - 764)) | (1 << (TSqlParser.TWO_DIGIT_YEAR_CUTOFF - 764)) | (1 << (TSqlParser.TYPE - 764)) | (1 << (TSqlParser.TYPE_WARNING - 764)) | (1 << (TSqlParser.UNBOUNDED - 764)) | (1 << (TSqlParser.UNCOMMITTED - 764)) | (1 << (TSqlParser.UNKNOWN - 764)) | (1 << (TSqlParser.UNLIMITED - 764)) | (1 << (TSqlParser.USING - 764)) | (1 << (TSqlParser.VALID_XML - 764)) | (1 << (TSqlParser.VALIDATION - 764)) | (1 << (TSqlParser.VALUE - 764)) | (1 << (TSqlParser.VAR - 764)) | (1 << (TSqlParser.VARP - 764)) | (1 << (TSqlParser.VIEW_METADATA - 764)) | (1 << (TSqlParser.VIEWS - 764)) | (1 << (TSqlParser.WAIT - 764)) | (1 << (TSqlParser.WELL_FORMED_XML - 764)) | (1 << (TSqlParser.WORK - 764)) | (1 << (TSqlParser.WORKLOAD - 764)) | (1 << (TSqlParser.XML - 764)) | (1 << (TSqlParser.XMLNAMESPACES - 764)))) !== 0) || ((((_la - 796)) & ~0x1f) == 0 && ((1 << (_la - 796)) & ((1 << (TSqlParser.DOUBLE_QUOTE_ID - 796)) | (1 << (TSqlParser.SQUARE_BRACKET_ID - 796)) | (1 << (TSqlParser.ID - 796)))) !== 0)) {
- this.state = 7286;
- localctx.database = this.id();
- }
-
- this.state = 7289;
- this.match(TSqlParser.DOT);
- this.state = 7291;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.CALLED || _la===TSqlParser.DATA_COMPRESSION || ((((_la - 112)) & ~0x1f) == 0 && ((1 << (_la - 112)) & ((1 << (TSqlParser.EVENTDATA - 112)) | (1 << (TSqlParser.FILENAME - 112)) | (1 << (TSqlParser.FILLFACTOR - 112)) | (1 << (TSqlParser.FORCESEEK - 112)))) !== 0) || ((((_la - 158)) & ~0x1f) == 0 && ((1 << (_la - 158)) & ((1 << (TSqlParser.INIT - 158)) | (1 << (TSqlParser.KEY - 158)) | (1 << (TSqlParser.MASTER - 158)) | (1 << (TSqlParser.MAX_MEMORY - 158)))) !== 0) || _la===TSqlParser.OFFSETS || _la===TSqlParser.PAGE || ((((_la - 259)) & ~0x1f) == 0 && ((1 << (_la - 259)) & ((1 << (TSqlParser.PUBLIC - 259)) | (1 << (TSqlParser.R - 259)) | (1 << (TSqlParser.RAW - 259)) | (1 << (TSqlParser.RETURN - 259)) | (1 << (TSqlParser.RETURNS - 259)) | (1 << (TSqlParser.ROWCOUNT - 259)))) !== 0) || ((((_la - 295)) & ~0x1f) == 0 && ((1 << (_la - 295)) & ((1 << (TSqlParser.SAFETY - 295)) | (1 << (TSqlParser.SERVER - 295)) | (1 << (TSqlParser.SID - 295)) | (1 << (TSqlParser.SOURCE - 295)) | (1 << (TSqlParser.SPLIT - 295)))) !== 0) || ((((_la - 327)) & ~0x1f) == 0 && ((1 << (_la - 327)) & ((1 << (TSqlParser.STATE - 327)) | (1 << (TSqlParser.START - 327)) | (1 << (TSqlParser.TARGET - 327)))) !== 0) || ((((_la - 380)) & ~0x1f) == 0 && ((1 << (_la - 380)) & ((1 << (TSqlParser.ABSOLUTE - 380)) | (1 << (TSqlParser.ACCENT_SENSITIVITY - 380)) | (1 << (TSqlParser.ACTION - 380)) | (1 << (TSqlParser.ACTIVATION - 380)) | (1 << (TSqlParser.ACTIVE - 380)) | (1 << (TSqlParser.ADDRESS - 380)) | (1 << (TSqlParser.AES_128 - 380)) | (1 << (TSqlParser.AES_192 - 380)) | (1 << (TSqlParser.AES_256 - 380)) | (1 << (TSqlParser.AFFINITY - 380)) | (1 << (TSqlParser.AFTER - 380)) | (1 << (TSqlParser.AGGREGATE - 380)) | (1 << (TSqlParser.ALGORITHM - 380)) | (1 << (TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS - 380)) | (1 << (TSqlParser.ALLOW_SNAPSHOT_ISOLATION - 380)) | (1 << (TSqlParser.ALLOWED - 380)) | (1 << (TSqlParser.ANSI_NULL_DEFAULT - 380)) | (1 << (TSqlParser.ANSI_NULLS - 380)) | (1 << (TSqlParser.ANSI_PADDING - 380)) | (1 << (TSqlParser.ANSI_WARNINGS - 380)) | (1 << (TSqlParser.APPLICATION_LOG - 380)) | (1 << (TSqlParser.APPLY - 380)) | (1 << (TSqlParser.ARITHABORT - 380)) | (1 << (TSqlParser.ASSEMBLY - 380)) | (1 << (TSqlParser.AUDIT - 380)) | (1 << (TSqlParser.AUDIT_GUID - 380)) | (1 << (TSqlParser.AUTO - 380)) | (1 << (TSqlParser.AUTO_CLEANUP - 380)) | (1 << (TSqlParser.AUTO_CLOSE - 380)) | (1 << (TSqlParser.AUTO_CREATE_STATISTICS - 380)) | (1 << (TSqlParser.AUTO_SHRINK - 380)) | (1 << (TSqlParser.AUTO_UPDATE_STATISTICS - 380)))) !== 0) || ((((_la - 412)) & ~0x1f) == 0 && ((1 << (_la - 412)) & ((1 << (TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC - 412)) | (1 << (TSqlParser.AVAILABILITY - 412)) | (1 << (TSqlParser.AVG - 412)) | (1 << (TSqlParser.BACKUP_PRIORITY - 412)) | (1 << (TSqlParser.BEGIN_DIALOG - 412)) | (1 << (TSqlParser.BIGINT - 412)) | (1 << (TSqlParser.BINARY_BASE64 - 412)) | (1 << (TSqlParser.BINARY_CHECKSUM - 412)) | (1 << (TSqlParser.BINDING - 412)) | (1 << (TSqlParser.BLOB_STORAGE - 412)) | (1 << (TSqlParser.BROKER - 412)) | (1 << (TSqlParser.BROKER_INSTANCE - 412)) | (1 << (TSqlParser.BULK_LOGGED - 412)) | (1 << (TSqlParser.CALLER - 412)) | (1 << (TSqlParser.CAP_CPU_PERCENT - 412)) | (1 << (TSqlParser.CAST - 412)) | (1 << (TSqlParser.CATALOG - 412)) | (1 << (TSqlParser.CATCH - 412)) | (1 << (TSqlParser.CHANGE_RETENTION - 412)) | (1 << (TSqlParser.CHANGE_TRACKING - 412)) | (1 << (TSqlParser.CHECKSUM - 412)) | (1 << (TSqlParser.CHECKSUM_AGG - 412)) | (1 << (TSqlParser.CLEANUP - 412)) | (1 << (TSqlParser.COLLECTION - 412)) | (1 << (TSqlParser.COLUMN_MASTER_KEY - 412)) | (1 << (TSqlParser.COMMITTED - 412)) | (1 << (TSqlParser.COMPATIBILITY_LEVEL - 412)) | (1 << (TSqlParser.CONCAT - 412)) | (1 << (TSqlParser.CONCAT_NULL_YIELDS_NULL - 412)) | (1 << (TSqlParser.CONTENT - 412)) | (1 << (TSqlParser.CONTROL - 412)) | (1 << (TSqlParser.COOKIE - 412)))) !== 0) || ((((_la - 444)) & ~0x1f) == 0 && ((1 << (_la - 444)) & ((1 << (TSqlParser.COUNT - 444)) | (1 << (TSqlParser.COUNT_BIG - 444)) | (1 << (TSqlParser.COUNTER - 444)) | (1 << (TSqlParser.CPU - 444)) | (1 << (TSqlParser.CREATE_NEW - 444)) | (1 << (TSqlParser.CREATION_DISPOSITION - 444)) | (1 << (TSqlParser.CREDENTIAL - 444)) | (1 << (TSqlParser.CRYPTOGRAPHIC - 444)) | (1 << (TSqlParser.CURSOR_CLOSE_ON_COMMIT - 444)) | (1 << (TSqlParser.CURSOR_DEFAULT - 444)) | (1 << (TSqlParser.DATA - 444)) | (1 << (TSqlParser.DATE_CORRELATION_OPTIMIZATION - 444)) | (1 << (TSqlParser.DATEADD - 444)) | (1 << (TSqlParser.DATEDIFF - 444)) | (1 << (TSqlParser.DATENAME - 444)) | (1 << (TSqlParser.DATEPART - 444)) | (1 << (TSqlParser.DAYS - 444)) | (1 << (TSqlParser.DB_CHAINING - 444)) | (1 << (TSqlParser.DB_FAILOVER - 444)) | (1 << (TSqlParser.DECRYPTION - 444)) | (1 << (TSqlParser.DEFAULT_DOUBLE_QUOTE - 444)) | (1 << (TSqlParser.DEFAULT_FULLTEXT_LANGUAGE - 444)) | (1 << (TSqlParser.DEFAULT_LANGUAGE - 444)) | (1 << (TSqlParser.DELAY - 444)) | (1 << (TSqlParser.DELAYED_DURABILITY - 444)) | (1 << (TSqlParser.DELETED - 444)) | (1 << (TSqlParser.DENSE_RANK - 444)) | (1 << (TSqlParser.DEPENDENTS - 444)) | (1 << (TSqlParser.DES - 444)) | (1 << (TSqlParser.DESCRIPTION - 444)) | (1 << (TSqlParser.DESX - 444)) | (1 << (TSqlParser.DHCP - 444)))) !== 0) || ((((_la - 476)) & ~0x1f) == 0 && ((1 << (_la - 476)) & ((1 << (TSqlParser.DIALOG - 476)) | (1 << (TSqlParser.DIRECTORY_NAME - 476)) | (1 << (TSqlParser.DISABLE - 476)) | (1 << (TSqlParser.DISABLE_BROKER - 476)) | (1 << (TSqlParser.DISABLED - 476)) | (1 << (TSqlParser.DISK_DRIVE - 476)) | (1 << (TSqlParser.DOCUMENT - 476)) | (1 << (TSqlParser.DYNAMIC - 476)) | (1 << (TSqlParser.EMERGENCY - 476)) | (1 << (TSqlParser.EMPTY - 476)) | (1 << (TSqlParser.ENABLE - 476)) | (1 << (TSqlParser.ENABLE_BROKER - 476)) | (1 << (TSqlParser.ENCRYPTED_VALUE - 476)) | (1 << (TSqlParser.ENCRYPTION - 476)) | (1 << (TSqlParser.ENDPOINT_URL - 476)) | (1 << (TSqlParser.ERROR_BROKER_CONVERSATIONS - 476)) | (1 << (TSqlParser.EXCLUSIVE - 476)) | (1 << (TSqlParser.EXECUTABLE - 476)) | (1 << (TSqlParser.EXIST - 476)) | (1 << (TSqlParser.EXPAND - 476)) | (1 << (TSqlParser.EXPIRY_DATE - 476)) | (1 << (TSqlParser.EXPLICIT - 476)) | (1 << (TSqlParser.FAIL_OPERATION - 476)) | (1 << (TSqlParser.FAILOVER_MODE - 476)) | (1 << (TSqlParser.FAILURE - 476)) | (1 << (TSqlParser.FAILURE_CONDITION_LEVEL - 476)) | (1 << (TSqlParser.FAST - 476)) | (1 << (TSqlParser.FAST_FORWARD - 476)) | (1 << (TSqlParser.FILEGROUP - 476)) | (1 << (TSqlParser.FILEGROWTH - 476)) | (1 << (TSqlParser.FILEPATH - 476)))) !== 0) || ((((_la - 508)) & ~0x1f) == 0 && ((1 << (_la - 508)) & ((1 << (TSqlParser.FILESTREAM - 508)) | (1 << (TSqlParser.FILTER - 508)) | (1 << (TSqlParser.FIRST - 508)) | (1 << (TSqlParser.FIRST_VALUE - 508)) | (1 << (TSqlParser.FOLLOWING - 508)) | (1 << (TSqlParser.FORCE - 508)) | (1 << (TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS - 508)) | (1 << (TSqlParser.FORCED - 508)) | (1 << (TSqlParser.FORMAT - 508)) | (1 << (TSqlParser.FORWARD_ONLY - 508)) | (1 << (TSqlParser.FULLSCAN - 508)) | (1 << (TSqlParser.FULLTEXT - 508)) | (1 << (TSqlParser.GB - 508)) | (1 << (TSqlParser.GETDATE - 508)) | (1 << (TSqlParser.GETUTCDATE - 508)) | (1 << (TSqlParser.GLOBAL - 508)) | (1 << (TSqlParser.GO - 508)) | (1 << (TSqlParser.GROUP_MAX_REQUESTS - 508)) | (1 << (TSqlParser.GROUPING - 508)) | (1 << (TSqlParser.GROUPING_ID - 508)) | (1 << (TSqlParser.HADR - 508)) | (1 << (TSqlParser.HASH - 508)) | (1 << (TSqlParser.HEALTH_CHECK_TIMEOUT - 508)) | (1 << (TSqlParser.HIGH - 508)) | (1 << (TSqlParser.HONOR_BROKER_PRIORITY - 508)) | (1 << (TSqlParser.HOURS - 508)) | (1 << (TSqlParser.IDENTITY_VALUE - 508)) | (1 << (TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX - 508)) | (1 << (TSqlParser.IMMEDIATE - 508)) | (1 << (TSqlParser.IMPERSONATE - 508)) | (1 << (TSqlParser.IMPORTANCE - 508)))) !== 0) || ((((_la - 540)) & ~0x1f) == 0 && ((1 << (_la - 540)) & ((1 << (TSqlParser.INCREMENTAL - 540)) | (1 << (TSqlParser.INITIATOR - 540)) | (1 << (TSqlParser.INPUT - 540)) | (1 << (TSqlParser.INSENSITIVE - 540)) | (1 << (TSqlParser.INSERTED - 540)) | (1 << (TSqlParser.INT - 540)) | (1 << (TSqlParser.IP - 540)) | (1 << (TSqlParser.ISOLATION - 540)) | (1 << (TSqlParser.KB - 540)) | (1 << (TSqlParser.KEEP - 540)) | (1 << (TSqlParser.KEEPFIXED - 540)) | (1 << (TSqlParser.KEY_SOURCE - 540)) | (1 << (TSqlParser.KEYS - 540)) | (1 << (TSqlParser.KEYSET - 540)) | (1 << (TSqlParser.LAG - 540)) | (1 << (TSqlParser.LAST - 540)) | (1 << (TSqlParser.LAST_VALUE - 540)) | (1 << (TSqlParser.LEAD - 540)) | (1 << (TSqlParser.LEVEL - 540)) | (1 << (TSqlParser.LIST - 540)) | (1 << (TSqlParser.LISTENER - 540)) | (1 << (TSqlParser.LISTENER_URL - 540)) | (1 << (TSqlParser.LOB_COMPACTION - 540)) | (1 << (TSqlParser.LOCAL - 540)) | (1 << (TSqlParser.LOCATION - 540)) | (1 << (TSqlParser.LOCK - 540)) | (1 << (TSqlParser.LOCK_ESCALATION - 540)) | (1 << (TSqlParser.LOGIN - 540)) | (1 << (TSqlParser.LOOP - 540)) | (1 << (TSqlParser.LOW - 540)))) !== 0) || ((((_la - 572)) & ~0x1f) == 0 && ((1 << (_la - 572)) & ((1 << (TSqlParser.MANUAL - 572)) | (1 << (TSqlParser.MARK - 572)) | (1 << (TSqlParser.MATERIALIZED - 572)) | (1 << (TSqlParser.MAX - 572)) | (1 << (TSqlParser.MAX_CPU_PERCENT - 572)) | (1 << (TSqlParser.MAX_DOP - 572)) | (1 << (TSqlParser.MAX_FILES - 572)) | (1 << (TSqlParser.MAX_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MAX_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MAX_PROCESSES - 572)) | (1 << (TSqlParser.MAX_QUEUE_READERS - 572)) | (1 << (TSqlParser.MAX_ROLLOVER_FILES - 572)) | (1 << (TSqlParser.MAXDOP - 572)) | (1 << (TSqlParser.MAXRECURSION - 572)) | (1 << (TSqlParser.MAXSIZE - 572)) | (1 << (TSqlParser.MB - 572)) | (1 << (TSqlParser.MEDIUM - 572)) | (1 << (TSqlParser.MEMORY_OPTIMIZED_DATA - 572)) | (1 << (TSqlParser.MESSAGE - 572)) | (1 << (TSqlParser.MIN - 572)) | (1 << (TSqlParser.MIN_ACTIVE_ROWVERSION - 572)) | (1 << (TSqlParser.MIN_CPU_PERCENT - 572)) | (1 << (TSqlParser.MIN_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MIN_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MINUTES - 572)) | (1 << (TSqlParser.MIRROR_ADDRESS - 572)) | (1 << (TSqlParser.MIXED_PAGE_ALLOCATION - 572)) | (1 << (TSqlParser.MODE - 572)) | (1 << (TSqlParser.MODIFY - 572)) | (1 << (TSqlParser.MOVE - 572)) | (1 << (TSqlParser.MULTI_USER - 572)) | (1 << (TSqlParser.NAME - 572)))) !== 0) || ((((_la - 604)) & ~0x1f) == 0 && ((1 << (_la - 604)) & ((1 << (TSqlParser.NESTED_TRIGGERS - 604)) | (1 << (TSqlParser.NEW_ACCOUNT - 604)) | (1 << (TSqlParser.NEW_BROKER - 604)) | (1 << (TSqlParser.NEW_PASSWORD - 604)) | (1 << (TSqlParser.NEXT - 604)) | (1 << (TSqlParser.NO - 604)) | (1 << (TSqlParser.NO_TRUNCATE - 604)) | (1 << (TSqlParser.NO_WAIT - 604)) | (1 << (TSqlParser.NOCOUNT - 604)) | (1 << (TSqlParser.NODES - 604)) | (1 << (TSqlParser.NOEXPAND - 604)) | (1 << (TSqlParser.NON_TRANSACTED_ACCESS - 604)) | (1 << (TSqlParser.NORECOMPUTE - 604)) | (1 << (TSqlParser.NORECOVERY - 604)) | (1 << (TSqlParser.NOWAIT - 604)) | (1 << (TSqlParser.NTILE - 604)) | (1 << (TSqlParser.NUMANODE - 604)) | (1 << (TSqlParser.NUMBER - 604)) | (1 << (TSqlParser.NUMERIC_ROUNDABORT - 604)) | (1 << (TSqlParser.OBJECT - 604)) | (1 << (TSqlParser.OFFLINE - 604)) | (1 << (TSqlParser.OFFSET - 604)) | (1 << (TSqlParser.OLD_ACCOUNT - 604)) | (1 << (TSqlParser.ONLINE - 604)) | (1 << (TSqlParser.ONLY - 604)) | (1 << (TSqlParser.OPEN_EXISTING - 604)) | (1 << (TSqlParser.OPTIMISTIC - 604)) | (1 << (TSqlParser.OPTIMIZE - 604)) | (1 << (TSqlParser.OUT - 604)) | (1 << (TSqlParser.OUTPUT - 604)) | (1 << (TSqlParser.OWNER - 604)))) !== 0) || ((((_la - 636)) & ~0x1f) == 0 && ((1 << (_la - 636)) & ((1 << (TSqlParser.PAGE_VERIFY - 636)) | (1 << (TSqlParser.PARAMETERIZATION - 636)) | (1 << (TSqlParser.PARTITION - 636)) | (1 << (TSqlParser.PARTITIONS - 636)) | (1 << (TSqlParser.PARTNER - 636)) | (1 << (TSqlParser.PATH - 636)) | (1 << (TSqlParser.POISON_MESSAGE_HANDLING - 636)) | (1 << (TSqlParser.POOL - 636)) | (1 << (TSqlParser.PORT - 636)) | (1 << (TSqlParser.PRECEDING - 636)) | (1 << (TSqlParser.PRIMARY_ROLE - 636)) | (1 << (TSqlParser.PRIOR - 636)) | (1 << (TSqlParser.PRIORITY - 636)) | (1 << (TSqlParser.PRIORITY_LEVEL - 636)) | (1 << (TSqlParser.PRIVATE - 636)) | (1 << (TSqlParser.PRIVATE_KEY - 636)) | (1 << (TSqlParser.PRIVILEGES - 636)) | (1 << (TSqlParser.PROCEDURE_NAME - 636)) | (1 << (TSqlParser.PROPERTY - 636)) | (1 << (TSqlParser.PROVIDER - 636)) | (1 << (TSqlParser.PROVIDER_KEY_NAME - 636)) | (1 << (TSqlParser.QUERY - 636)) | (1 << (TSqlParser.QUEUE - 636)) | (1 << (TSqlParser.QUEUE_DELAY - 636)) | (1 << (TSqlParser.QUOTED_IDENTIFIER - 636)) | (1 << (TSqlParser.RANGE - 636)) | (1 << (TSqlParser.RANK - 636)) | (1 << (TSqlParser.RC2 - 636)) | (1 << (TSqlParser.RC4 - 636)) | (1 << (TSqlParser.RC4_128 - 636)) | (1 << (TSqlParser.READ_COMMITTED_SNAPSHOT - 636)) | (1 << (TSqlParser.READ_ONLY - 636)))) !== 0) || ((((_la - 668)) & ~0x1f) == 0 && ((1 << (_la - 668)) & ((1 << (TSqlParser.READ_ONLY_ROUTING_LIST - 668)) | (1 << (TSqlParser.READ_WRITE - 668)) | (1 << (TSqlParser.READONLY - 668)) | (1 << (TSqlParser.REBUILD - 668)) | (1 << (TSqlParser.RECEIVE - 668)) | (1 << (TSqlParser.RECOMPILE - 668)) | (1 << (TSqlParser.RECOVERY - 668)) | (1 << (TSqlParser.RECURSIVE_TRIGGERS - 668)) | (1 << (TSqlParser.RELATIVE - 668)) | (1 << (TSqlParser.REMOTE - 668)) | (1 << (TSqlParser.REMOTE_SERVICE_NAME - 668)) | (1 << (TSqlParser.REMOVE - 668)) | (1 << (TSqlParser.REORGANIZE - 668)) | (1 << (TSqlParser.REPEATABLE - 668)) | (1 << (TSqlParser.REPLICA - 668)) | (1 << (TSqlParser.REQUEST_MAX_CPU_TIME_SEC - 668)) | (1 << (TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT - 668)) | (1 << (TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC - 668)) | (1 << (TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT - 668)) | (1 << (TSqlParser.RESERVE_DISK_SPACE - 668)) | (1 << (TSqlParser.RESOURCE - 668)) | (1 << (TSqlParser.RESOURCE_MANAGER_LOCATION - 668)) | (1 << (TSqlParser.RESTRICTED_USER - 668)) | (1 << (TSqlParser.RETENTION - 668)) | (1 << (TSqlParser.ROBUST - 668)) | (1 << (TSqlParser.ROOT - 668)) | (1 << (TSqlParser.ROUTE - 668)) | (1 << (TSqlParser.ROW - 668)) | (1 << (TSqlParser.ROW_NUMBER - 668)) | (1 << (TSqlParser.ROWGUID - 668)) | (1 << (TSqlParser.ROWS - 668)) | (1 << (TSqlParser.SAMPLE - 668)))) !== 0) || ((((_la - 700)) & ~0x1f) == 0 && ((1 << (_la - 700)) & ((1 << (TSqlParser.SCHEMABINDING - 700)) | (1 << (TSqlParser.SCOPED - 700)) | (1 << (TSqlParser.SCROLL - 700)) | (1 << (TSqlParser.SCROLL_LOCKS - 700)) | (1 << (TSqlParser.SEARCH - 700)) | (1 << (TSqlParser.SECONDARY - 700)) | (1 << (TSqlParser.SECONDARY_ONLY - 700)) | (1 << (TSqlParser.SECONDARY_ROLE - 700)) | (1 << (TSqlParser.SECONDS - 700)) | (1 << (TSqlParser.SECRET - 700)) | (1 << (TSqlParser.SECURITY - 700)) | (1 << (TSqlParser.SECURITY_LOG - 700)) | (1 << (TSqlParser.SEEDING_MODE - 700)) | (1 << (TSqlParser.SELF - 700)) | (1 << (TSqlParser.SEMI_SENSITIVE - 700)) | (1 << (TSqlParser.SEND - 700)) | (1 << (TSqlParser.SENT - 700)) | (1 << (TSqlParser.SEQUENCE - 700)) | (1 << (TSqlParser.SERIALIZABLE - 700)) | (1 << (TSqlParser.SESSION_TIMEOUT - 700)) | (1 << (TSqlParser.SETERROR - 700)) | (1 << (TSqlParser.SHARE - 700)) | (1 << (TSqlParser.SHOWPLAN - 700)) | (1 << (TSqlParser.SIGNATURE - 700)) | (1 << (TSqlParser.SIMPLE - 700)) | (1 << (TSqlParser.SINGLE_USER - 700)) | (1 << (TSqlParser.SIZE - 700)) | (1 << (TSqlParser.SMALLINT - 700)) | (1 << (TSqlParser.SNAPSHOT - 700)) | (1 << (TSqlParser.SPATIAL_WINDOW_MAX_CELLS - 700)) | (1 << (TSqlParser.STANDBY - 700)) | (1 << (TSqlParser.START_DATE - 700)))) !== 0) || ((((_la - 732)) & ~0x1f) == 0 && ((1 << (_la - 732)) & ((1 << (TSqlParser.STATIC - 732)) | (1 << (TSqlParser.STATS_STREAM - 732)) | (1 << (TSqlParser.STATUS - 732)) | (1 << (TSqlParser.STDEV - 732)) | (1 << (TSqlParser.STDEVP - 732)) | (1 << (TSqlParser.STOPLIST - 732)) | (1 << (TSqlParser.STRING_AGG - 732)) | (1 << (TSqlParser.STUFF - 732)) | (1 << (TSqlParser.SUBJECT - 732)) | (1 << (TSqlParser.SUM - 732)) | (1 << (TSqlParser.SUSPEND - 732)) | (1 << (TSqlParser.SYMMETRIC - 732)) | (1 << (TSqlParser.SYNCHRONOUS_COMMIT - 732)) | (1 << (TSqlParser.SYNONYM - 732)) | (1 << (TSqlParser.SYSTEM - 732)) | (1 << (TSqlParser.TAKE - 732)) | (1 << (TSqlParser.TARGET_RECOVERY_TIME - 732)) | (1 << (TSqlParser.TB - 732)) | (1 << (TSqlParser.TEXTIMAGE_ON - 732)) | (1 << (TSqlParser.THROW - 732)) | (1 << (TSqlParser.TIES - 732)) | (1 << (TSqlParser.TIME - 732)) | (1 << (TSqlParser.TIMEOUT - 732)) | (1 << (TSqlParser.TIMER - 732)) | (1 << (TSqlParser.TINYINT - 732)) | (1 << (TSqlParser.TORN_PAGE_DETECTION - 732)) | (1 << (TSqlParser.TRANSFORM_NOISE_WORDS - 732)) | (1 << (TSqlParser.TRIPLE_DES - 732)) | (1 << (TSqlParser.TRIPLE_DES_3KEY - 732)) | (1 << (TSqlParser.TRUSTWORTHY - 732)))) !== 0) || ((((_la - 764)) & ~0x1f) == 0 && ((1 << (_la - 764)) & ((1 << (TSqlParser.TRY - 764)) | (1 << (TSqlParser.TSQL - 764)) | (1 << (TSqlParser.TWO_DIGIT_YEAR_CUTOFF - 764)) | (1 << (TSqlParser.TYPE - 764)) | (1 << (TSqlParser.TYPE_WARNING - 764)) | (1 << (TSqlParser.UNBOUNDED - 764)) | (1 << (TSqlParser.UNCOMMITTED - 764)) | (1 << (TSqlParser.UNKNOWN - 764)) | (1 << (TSqlParser.UNLIMITED - 764)) | (1 << (TSqlParser.USING - 764)) | (1 << (TSqlParser.VALID_XML - 764)) | (1 << (TSqlParser.VALIDATION - 764)) | (1 << (TSqlParser.VALUE - 764)) | (1 << (TSqlParser.VAR - 764)) | (1 << (TSqlParser.VARP - 764)) | (1 << (TSqlParser.VIEW_METADATA - 764)) | (1 << (TSqlParser.VIEWS - 764)) | (1 << (TSqlParser.WAIT - 764)) | (1 << (TSqlParser.WELL_FORMED_XML - 764)) | (1 << (TSqlParser.WORK - 764)) | (1 << (TSqlParser.WORKLOAD - 764)) | (1 << (TSqlParser.XML - 764)) | (1 << (TSqlParser.XMLNAMESPACES - 764)))) !== 0) || ((((_la - 796)) & ~0x1f) == 0 && ((1 << (_la - 796)) & ((1 << (TSqlParser.DOUBLE_QUOTE_ID - 796)) | (1 << (TSqlParser.SQUARE_BRACKET_ID - 796)) | (1 << (TSqlParser.ID - 796)))) !== 0)) {
- this.state = 7290;
- localctx.scheme = this.id();
- }
-
- this.state = 7293;
- this.match(TSqlParser.DOT);
-
- this.state = 7294;
- localctx.table = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Declare_statementContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_declare_statement;
- this.xml_namespace_uri = null; // Token
- return this;
-}
-
-Declare_statementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Declare_statementContext.prototype.constructor = Declare_statementContext;
-
-Declare_statementContext.prototype.DECLARE = function() {
- return this.getToken(TSqlParser.DECLARE, 0);
-};
-
-Declare_statementContext.prototype.LOCAL_ID = function() {
- return this.getToken(TSqlParser.LOCAL_ID, 0);
-};
-
-Declare_statementContext.prototype.table_type_definition = function() {
- return this.getTypedRuleContext(Table_type_definitionContext,0);
-};
-
-Declare_statementContext.prototype.AS = function() {
- return this.getToken(TSqlParser.AS, 0);
-};
-
-Declare_statementContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Declare_statementContext.prototype.declare_local = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Declare_localContext);
- } else {
- return this.getTypedRuleContext(Declare_localContext,i);
- }
-};
-
-Declare_statementContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Declare_statementContext.prototype.xml_type_definition = function() {
- return this.getTypedRuleContext(Xml_type_definitionContext,0);
-};
-
-Declare_statementContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Declare_statementContext.prototype.XMLNAMESPACES = function() {
- return this.getToken(TSqlParser.XMLNAMESPACES, 0);
-};
-
-Declare_statementContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Declare_statementContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Declare_statementContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Declare_statementContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Declare_statementContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDeclare_statement(this);
- }
-};
-
-Declare_statementContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDeclare_statement(this);
- }
-};
-
-Declare_statementContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDeclare_statement(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Declare_statementContext = Declare_statementContext;
-
-TSqlParser.prototype.declare_statement = function() {
-
- var localctx = new Declare_statementContext(this, this._ctx, this.state);
- this.enterRule(localctx, 608, TSqlParser.RULE_declare_statement);
- var _la = 0; // Token type
- try {
- this.state = 7339;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,974,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 7296;
- this.match(TSqlParser.DECLARE);
- this.state = 7297;
- this.match(TSqlParser.LOCAL_ID);
- this.state = 7299;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.AS) {
- this.state = 7298;
- this.match(TSqlParser.AS);
- }
-
- this.state = 7301;
- this.table_type_definition();
- this.state = 7303;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,967,this._ctx);
- if(la_===1) {
- this.state = 7302;
- this.match(TSqlParser.SEMI);
-
- }
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 7305;
- this.match(TSqlParser.DECLARE);
- this.state = 7306;
- this.declare_local();
- this.state = 7311;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 7307;
- this.match(TSqlParser.COMMA);
- this.state = 7308;
- this.declare_local();
- this.state = 7313;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- this.state = 7315;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,969,this._ctx);
- if(la_===1) {
- this.state = 7314;
- this.match(TSqlParser.SEMI);
-
- }
- break;
-
- case 3:
- this.enterOuterAlt(localctx, 3);
- this.state = 7317;
- this.match(TSqlParser.DECLARE);
- this.state = 7318;
- this.match(TSqlParser.LOCAL_ID);
- this.state = 7320;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.AS) {
- this.state = 7319;
- this.match(TSqlParser.AS);
- }
-
- this.state = 7322;
- this.xml_type_definition();
- this.state = 7324;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,971,this._ctx);
- if(la_===1) {
- this.state = 7323;
- this.match(TSqlParser.SEMI);
-
- }
- break;
-
- case 4:
- this.enterOuterAlt(localctx, 4);
- this.state = 7326;
- this.match(TSqlParser.WITH);
- this.state = 7327;
- this.match(TSqlParser.XMLNAMESPACES);
- this.state = 7328;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 7329;
- localctx.xml_namespace_uri = this.match(TSqlParser.STRING);
- this.state = 7331;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7330;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7333;
- this.match(TSqlParser.AS);
- this.state = 7334;
- this.id();
- this.state = 7335;
- this.match(TSqlParser.RR_BRACKET);
- this.state = 7337;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,973,this._ctx);
- if(la_===1) {
- this.state = 7336;
- this.match(TSqlParser.SEMI);
-
- }
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Cursor_statementContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_cursor_statement;
- return this;
-}
-
-Cursor_statementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Cursor_statementContext.prototype.constructor = Cursor_statementContext;
-
-Cursor_statementContext.prototype.CLOSE = function() {
- return this.getToken(TSqlParser.CLOSE, 0);
-};
-
-Cursor_statementContext.prototype.cursor_name = function() {
- return this.getTypedRuleContext(Cursor_nameContext,0);
-};
-
-Cursor_statementContext.prototype.GLOBAL = function() {
- return this.getToken(TSqlParser.GLOBAL, 0);
-};
-
-Cursor_statementContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Cursor_statementContext.prototype.DEALLOCATE = function() {
- return this.getToken(TSqlParser.DEALLOCATE, 0);
-};
-
-Cursor_statementContext.prototype.CURSOR = function() {
- return this.getToken(TSqlParser.CURSOR, 0);
-};
-
-Cursor_statementContext.prototype.declare_cursor = function() {
- return this.getTypedRuleContext(Declare_cursorContext,0);
-};
-
-Cursor_statementContext.prototype.fetch_cursor = function() {
- return this.getTypedRuleContext(Fetch_cursorContext,0);
-};
-
-Cursor_statementContext.prototype.OPEN = function() {
- return this.getToken(TSqlParser.OPEN, 0);
-};
-
-Cursor_statementContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCursor_statement(this);
- }
-};
-
-Cursor_statementContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCursor_statement(this);
- }
-};
-
-Cursor_statementContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCursor_statement(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Cursor_statementContext = Cursor_statementContext;
-
-TSqlParser.prototype.cursor_statement = function() {
-
- var localctx = new Cursor_statementContext(this, this._ctx, this.state);
- this.enterRule(localctx, 610, TSqlParser.RULE_cursor_statement);
- var _la = 0; // Token type
- try {
- this.state = 7370;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.CLOSE:
- this.enterOuterAlt(localctx, 1);
- this.state = 7341;
- this.match(TSqlParser.CLOSE);
- this.state = 7343;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,975,this._ctx);
- if(la_===1) {
- this.state = 7342;
- this.match(TSqlParser.GLOBAL);
-
- }
- this.state = 7345;
- this.cursor_name();
- this.state = 7347;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,976,this._ctx);
- if(la_===1) {
- this.state = 7346;
- this.match(TSqlParser.SEMI);
-
- }
- break;
- case TSqlParser.DEALLOCATE:
- this.enterOuterAlt(localctx, 2);
- this.state = 7349;
- this.match(TSqlParser.DEALLOCATE);
- this.state = 7351;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,977,this._ctx);
- if(la_===1) {
- this.state = 7350;
- this.match(TSqlParser.GLOBAL);
-
- }
- this.state = 7354;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.CURSOR) {
- this.state = 7353;
- this.match(TSqlParser.CURSOR);
- }
-
- this.state = 7356;
- this.cursor_name();
- this.state = 7358;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,979,this._ctx);
- if(la_===1) {
- this.state = 7357;
- this.match(TSqlParser.SEMI);
-
- }
- break;
- case TSqlParser.DECLARE:
- this.enterOuterAlt(localctx, 3);
- this.state = 7360;
- this.declare_cursor();
- break;
- case TSqlParser.FETCH:
- this.enterOuterAlt(localctx, 4);
- this.state = 7361;
- this.fetch_cursor();
- break;
- case TSqlParser.OPEN:
- this.enterOuterAlt(localctx, 5);
- this.state = 7362;
- this.match(TSqlParser.OPEN);
- this.state = 7364;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,980,this._ctx);
- if(la_===1) {
- this.state = 7363;
- this.match(TSqlParser.GLOBAL);
-
- }
- this.state = 7366;
- this.cursor_name();
- this.state = 7368;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,981,this._ctx);
- if(la_===1) {
- this.state = 7367;
- this.match(TSqlParser.SEMI);
-
- }
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Backup_databaseContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_backup_database;
- this.database_name = null; // IdContext
- this.file_or_filegroup = null; // Token
- this.logical_device_name = null; // IdContext
- this.backup_set_name = null; // IdContext
- this.medianame = null; // Token
- this.stats_percent = null; // Token
- this.encryptor_name = null; // IdContext
- return this;
-}
-
-Backup_databaseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Backup_databaseContext.prototype.constructor = Backup_databaseContext;
-
-Backup_databaseContext.prototype.BACKUP = function() {
- return this.getToken(TSqlParser.BACKUP, 0);
-};
-
-Backup_databaseContext.prototype.DATABASE = function() {
- return this.getToken(TSqlParser.DATABASE, 0);
-};
-
-Backup_databaseContext.prototype.TO = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.TO);
- } else {
- return this.getToken(TSqlParser.TO, i);
- }
-};
-
-
-Backup_databaseContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Backup_databaseContext.prototype.READ_WRITE_FILEGROUPS = function() {
- return this.getToken(TSqlParser.READ_WRITE_FILEGROUPS, 0);
-};
-
-Backup_databaseContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-Backup_databaseContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Backup_databaseContext.prototype.FILE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.FILE);
- } else {
- return this.getToken(TSqlParser.FILE, i);
- }
-};
-
-
-Backup_databaseContext.prototype.FILEGROUP = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.FILEGROUP);
- } else {
- return this.getToken(TSqlParser.FILEGROUP, i);
- }
-};
-
-
-Backup_databaseContext.prototype.STRING = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.STRING);
- } else {
- return this.getToken(TSqlParser.STRING, i);
- }
-};
-
-
-Backup_databaseContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Backup_databaseContext.prototype.DISK = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DISK);
- } else {
- return this.getToken(TSqlParser.DISK, i);
- }
-};
-
-
-Backup_databaseContext.prototype.TAPE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.TAPE);
- } else {
- return this.getToken(TSqlParser.TAPE, i);
- }
-};
-
-
-Backup_databaseContext.prototype.URL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.URL);
- } else {
- return this.getToken(TSqlParser.URL, i);
- }
-};
-
-
-Backup_databaseContext.prototype.MIRROR = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.MIRROR);
- } else {
- return this.getToken(TSqlParser.MIRROR, i);
- }
-};
-
-
-Backup_databaseContext.prototype.DIFFERENTIAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DIFFERENTIAL);
- } else {
- return this.getToken(TSqlParser.DIFFERENTIAL, i);
- }
-};
-
-
-Backup_databaseContext.prototype.COPY_ONLY = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COPY_ONLY);
- } else {
- return this.getToken(TSqlParser.COPY_ONLY, i);
- }
-};
-
-
-Backup_databaseContext.prototype.DESCRIPTION = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DESCRIPTION);
- } else {
- return this.getToken(TSqlParser.DESCRIPTION, i);
- }
-};
-
-
-Backup_databaseContext.prototype.NAME = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.NAME);
- } else {
- return this.getToken(TSqlParser.NAME, i);
- }
-};
-
-
-Backup_databaseContext.prototype.CREDENTIAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.CREDENTIAL);
- } else {
- return this.getToken(TSqlParser.CREDENTIAL, i);
- }
-};
-
-
-Backup_databaseContext.prototype.FILE_SNAPSHOT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.FILE_SNAPSHOT);
- } else {
- return this.getToken(TSqlParser.FILE_SNAPSHOT, i);
- }
-};
-
-
-Backup_databaseContext.prototype.MEDIADESCRIPTION = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.MEDIADESCRIPTION);
- } else {
- return this.getToken(TSqlParser.MEDIADESCRIPTION, i);
- }
-};
-
-
-Backup_databaseContext.prototype.MEDIANAME = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.MEDIANAME);
- } else {
- return this.getToken(TSqlParser.MEDIANAME, i);
- }
-};
-
-
-Backup_databaseContext.prototype.BLOCKSIZE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.BLOCKSIZE);
- } else {
- return this.getToken(TSqlParser.BLOCKSIZE, i);
- }
-};
-
-
-Backup_databaseContext.prototype.BUFFERCOUNT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.BUFFERCOUNT);
- } else {
- return this.getToken(TSqlParser.BUFFERCOUNT, i);
- }
-};
-
-
-Backup_databaseContext.prototype.MAXTRANSFER = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.MAXTRANSFER);
- } else {
- return this.getToken(TSqlParser.MAXTRANSFER, i);
- }
-};
-
-
-Backup_databaseContext.prototype.RESTART = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.RESTART);
- } else {
- return this.getToken(TSqlParser.RESTART, i);
- }
-};
-
-
-Backup_databaseContext.prototype.STATS = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.STATS);
- } else {
- return this.getToken(TSqlParser.STATS, i);
- }
-};
-
-
-Backup_databaseContext.prototype.ENCRYPTION = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ENCRYPTION);
- } else {
- return this.getToken(TSqlParser.ENCRYPTION, i);
- }
-};
-
-
-Backup_databaseContext.prototype.LR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.LR_BRACKET);
- } else {
- return this.getToken(TSqlParser.LR_BRACKET, i);
- }
-};
-
-
-Backup_databaseContext.prototype.ALGORITHM = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ALGORITHM);
- } else {
- return this.getToken(TSqlParser.ALGORITHM, i);
- }
-};
-
-
-Backup_databaseContext.prototype.SERVER = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.SERVER);
- } else {
- return this.getToken(TSqlParser.SERVER, i);
- }
-};
-
-
-Backup_databaseContext.prototype.CERTIFICATE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.CERTIFICATE);
- } else {
- return this.getToken(TSqlParser.CERTIFICATE, i);
- }
-};
-
-
-Backup_databaseContext.prototype.COMPRESSION = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMPRESSION);
- } else {
- return this.getToken(TSqlParser.COMPRESSION, i);
- }
-};
-
-
-Backup_databaseContext.prototype.NO_COMPRESSION = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.NO_COMPRESSION);
- } else {
- return this.getToken(TSqlParser.NO_COMPRESSION, i);
- }
-};
-
-
-Backup_databaseContext.prototype.NOINIT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.NOINIT);
- } else {
- return this.getToken(TSqlParser.NOINIT, i);
- }
-};
-
-
-Backup_databaseContext.prototype.INIT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.INIT);
- } else {
- return this.getToken(TSqlParser.INIT, i);
- }
-};
-
-
-Backup_databaseContext.prototype.NOSKIP = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.NOSKIP);
- } else {
- return this.getToken(TSqlParser.NOSKIP, i);
- }
-};
-
-
-Backup_databaseContext.prototype.SKIP_KEYWORD = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.SKIP_KEYWORD);
- } else {
- return this.getToken(TSqlParser.SKIP_KEYWORD, i);
- }
-};
-
-
-Backup_databaseContext.prototype.NOFORMAT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.NOFORMAT);
- } else {
- return this.getToken(TSqlParser.NOFORMAT, i);
- }
-};
-
-
-Backup_databaseContext.prototype.FORMAT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.FORMAT);
- } else {
- return this.getToken(TSqlParser.FORMAT, i);
- }
-};
-
-
-Backup_databaseContext.prototype.NO_CHECKSUM = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.NO_CHECKSUM);
- } else {
- return this.getToken(TSqlParser.NO_CHECKSUM, i);
- }
-};
-
-
-Backup_databaseContext.prototype.CHECKSUM = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.CHECKSUM);
- } else {
- return this.getToken(TSqlParser.CHECKSUM, i);
- }
-};
-
-
-Backup_databaseContext.prototype.STOP_ON_ERROR = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.STOP_ON_ERROR);
- } else {
- return this.getToken(TSqlParser.STOP_ON_ERROR, i);
- }
-};
-
-
-Backup_databaseContext.prototype.CONTINUE_AFTER_ERROR = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.CONTINUE_AFTER_ERROR);
- } else {
- return this.getToken(TSqlParser.CONTINUE_AFTER_ERROR, i);
- }
-};
-
-
-Backup_databaseContext.prototype.REWIND = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.REWIND);
- } else {
- return this.getToken(TSqlParser.REWIND, i);
- }
-};
-
-
-Backup_databaseContext.prototype.NOREWIND = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.NOREWIND);
- } else {
- return this.getToken(TSqlParser.NOREWIND, i);
- }
-};
-
-
-Backup_databaseContext.prototype.LOAD = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.LOAD);
- } else {
- return this.getToken(TSqlParser.LOAD, i);
- }
-};
-
-
-Backup_databaseContext.prototype.NOUNLOAD = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.NOUNLOAD);
- } else {
- return this.getToken(TSqlParser.NOUNLOAD, i);
- }
-};
-
-
-Backup_databaseContext.prototype.AES_128 = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.AES_128);
- } else {
- return this.getToken(TSqlParser.AES_128, i);
- }
-};
-
-
-Backup_databaseContext.prototype.AES_192 = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.AES_192);
- } else {
- return this.getToken(TSqlParser.AES_192, i);
- }
-};
-
-
-Backup_databaseContext.prototype.AES_256 = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.AES_256);
- } else {
- return this.getToken(TSqlParser.AES_256, i);
- }
-};
-
-
-Backup_databaseContext.prototype.TRIPLE_DES_3KEY = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.TRIPLE_DES_3KEY);
- } else {
- return this.getToken(TSqlParser.TRIPLE_DES_3KEY, i);
- }
-};
-
-
-Backup_databaseContext.prototype.EXPIREDATE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EXPIREDATE);
- } else {
- return this.getToken(TSqlParser.EXPIREDATE, i);
- }
-};
-
-
-Backup_databaseContext.prototype.RETAINDAYS = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.RETAINDAYS);
- } else {
- return this.getToken(TSqlParser.RETAINDAYS, i);
- }
-};
-
-
-Backup_databaseContext.prototype.DECIMAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DECIMAL);
- } else {
- return this.getToken(TSqlParser.DECIMAL, i);
- }
-};
-
-
-Backup_databaseContext.prototype.ASYMMETRIC = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ASYMMETRIC);
- } else {
- return this.getToken(TSqlParser.ASYMMETRIC, i);
- }
-};
-
-
-Backup_databaseContext.prototype.KEY = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.KEY);
- } else {
- return this.getToken(TSqlParser.KEY, i);
- }
-};
-
-
-Backup_databaseContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterBackup_database(this);
- }
-};
-
-Backup_databaseContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitBackup_database(this);
- }
-};
-
-Backup_databaseContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitBackup_database(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Backup_databaseContext = Backup_databaseContext;
-
-TSqlParser.prototype.backup_database = function() {
-
- var localctx = new Backup_databaseContext(this, this._ctx, this.state);
- this.enterRule(localctx, 612, TSqlParser.RULE_backup_database);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 7372;
- this.match(TSqlParser.BACKUP);
- this.state = 7373;
- this.match(TSqlParser.DATABASE);
-
- this.state = 7374;
- localctx.database_name = this.id();
- this.state = 7387;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.READ_WRITE_FILEGROUPS) {
- this.state = 7375;
- this.match(TSqlParser.READ_WRITE_FILEGROUPS);
- this.state = 7384;
- this._errHandler.sync(this);
- var _alt = this._interp.adaptivePredict(this._input,984,this._ctx)
- while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
- if(_alt===1) {
- this.state = 7377;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7376;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7379;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.FILE || _la===TSqlParser.FILEGROUP)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 7380;
- this.match(TSqlParser.EQUAL);
- this.state = 7381;
- localctx.file_or_filegroup = this.match(TSqlParser.STRING);
- }
- this.state = 7386;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,984,this._ctx);
- }
-
- }
-
- this.state = 7397;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.FILE || _la===TSqlParser.FILEGROUP || _la===TSqlParser.COMMA) {
- this.state = 7390;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7389;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7392;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.FILE || _la===TSqlParser.FILEGROUP)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 7393;
- this.match(TSqlParser.EQUAL);
- this.state = 7394;
- localctx.file_or_filegroup = this.match(TSqlParser.STRING);
- this.state = 7399;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- this.state = 7423;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,993,this._ctx);
- switch(la_) {
- case 1:
- this.state = 7400;
- this.match(TSqlParser.TO);
- this.state = 7405;
- this._errHandler.sync(this);
- var _alt = 1;
- do {
- switch (_alt) {
- case 1:
- this.state = 7402;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7401;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7404;
- localctx.logical_device_name = this.id();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 7407;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,989, this._ctx);
- } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
- break;
-
- case 2:
- this.state = 7409;
- this.match(TSqlParser.TO);
- this.state = 7419;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- do {
- this.state = 7411;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7410;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7413;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.DISK || _la===TSqlParser.TAPE || _la===TSqlParser.URL)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 7414;
- this.match(TSqlParser.EQUAL);
- this.state = 7417;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.STRING:
- this.state = 7415;
- this.match(TSqlParser.STRING);
- break;
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.state = 7416;
- this.id();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 7421;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- } while(_la===TSqlParser.DISK || _la===TSqlParser.TAPE || _la===TSqlParser.URL || _la===TSqlParser.COMMA);
- break;
-
- }
- this.state = 7458;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1001,this._ctx);
- if(la_===1) {
- this.state = 7435;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- do {
- this.state = 7425;
- this.match(TSqlParser.MIRROR);
- this.state = 7426;
- this.match(TSqlParser.TO);
- this.state = 7431;
- this._errHandler.sync(this);
- var _alt = 1;
- do {
- switch (_alt) {
- case 1:
- this.state = 7428;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7427;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7430;
- localctx.logical_device_name = this.id();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 7433;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,995, this._ctx);
- } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
- this.state = 7437;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- } while(_la===TSqlParser.MIRROR);
-
- } else if(la_===2) {
- this.state = 7454;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- do {
- this.state = 7439;
- this.match(TSqlParser.MIRROR);
- this.state = 7440;
- this.match(TSqlParser.TO);
- this.state = 7450;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- do {
- this.state = 7442;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7441;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7444;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.DISK || _la===TSqlParser.TAPE || _la===TSqlParser.URL)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 7445;
- this.match(TSqlParser.EQUAL);
- this.state = 7448;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.STRING:
- this.state = 7446;
- this.match(TSqlParser.STRING);
- break;
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.state = 7447;
- this.id();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 7452;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- } while(_la===TSqlParser.DISK || _la===TSqlParser.TAPE || _la===TSqlParser.URL || _la===TSqlParser.COMMA);
- this.state = 7456;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- } while(_la===TSqlParser.MIRROR);
-
- }
- this.state = 7620;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1037,this._ctx);
- if(la_===1) {
- this.state = 7460;
- this.match(TSqlParser.WITH);
- this.state = 7617;
- this._errHandler.sync(this);
- var _alt = this._interp.adaptivePredict(this._input,1036,this._ctx)
- while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
- if(_alt===1) {
- this.state = 7615;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1035,this._ctx);
- switch(la_) {
- case 1:
- this.state = 7462;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7461;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7464;
- this.match(TSqlParser.DIFFERENTIAL);
- break;
-
- case 2:
- this.state = 7466;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7465;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7468;
- this.match(TSqlParser.COPY_ONLY);
- break;
-
- case 3:
- this.state = 7470;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7469;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7472;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.COMPRESSION || _la===TSqlParser.NO_COMPRESSION)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
-
- case 4:
- this.state = 7474;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7473;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7476;
- this.match(TSqlParser.DESCRIPTION);
- this.state = 7477;
- this.match(TSqlParser.EQUAL);
- this.state = 7480;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.STRING:
- this.state = 7478;
- this.match(TSqlParser.STRING);
- break;
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.state = 7479;
- this.id();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
-
- case 5:
- this.state = 7483;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7482;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7485;
- this.match(TSqlParser.NAME);
- this.state = 7486;
- this.match(TSqlParser.EQUAL);
- this.state = 7487;
- localctx.backup_set_name = this.id();
- break;
-
- case 6:
- this.state = 7489;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7488;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7491;
- this.match(TSqlParser.CREDENTIAL);
- break;
-
- case 7:
- this.state = 7493;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7492;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7495;
- this.match(TSqlParser.FILE_SNAPSHOT);
- break;
-
- case 8:
- this.state = 7497;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7496;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7511;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.EXPIREDATE:
- this.state = 7499;
- this.match(TSqlParser.EXPIREDATE);
- this.state = 7500;
- this.match(TSqlParser.EQUAL);
- this.state = 7503;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.STRING:
- this.state = 7501;
- this.match(TSqlParser.STRING);
- break;
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.state = 7502;
- this.id();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
- case TSqlParser.RETAINDAYS:
- this.state = 7505;
- this.match(TSqlParser.RETAINDAYS);
- this.state = 7506;
- this.match(TSqlParser.EQUAL);
- this.state = 7509;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.DECIMAL:
- this.state = 7507;
- this.match(TSqlParser.DECIMAL);
- break;
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.state = 7508;
- this.id();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
-
- case 9:
- this.state = 7514;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7513;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7516;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.INIT || _la===TSqlParser.NOINIT)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
-
- case 10:
- this.state = 7518;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7517;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7520;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.NOSKIP || _la===TSqlParser.SKIP_KEYWORD)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
-
- case 11:
- this.state = 7522;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7521;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7524;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.NOFORMAT || _la===TSqlParser.FORMAT)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
-
- case 12:
- this.state = 7526;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7525;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7528;
- this.match(TSqlParser.MEDIADESCRIPTION);
- this.state = 7529;
- this.match(TSqlParser.EQUAL);
- this.state = 7532;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.STRING:
- this.state = 7530;
- this.match(TSqlParser.STRING);
- break;
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.state = 7531;
- this.id();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
-
- case 13:
- this.state = 7535;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7534;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7537;
- this.match(TSqlParser.MEDIANAME);
- this.state = 7538;
- this.match(TSqlParser.EQUAL);
-
- this.state = 7539;
- localctx.medianame = this.match(TSqlParser.STRING);
- break;
-
- case 14:
- this.state = 7541;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7540;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7543;
- this.match(TSqlParser.BLOCKSIZE);
- this.state = 7544;
- this.match(TSqlParser.EQUAL);
- this.state = 7547;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.DECIMAL:
- this.state = 7545;
- this.match(TSqlParser.DECIMAL);
- break;
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.state = 7546;
- this.id();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
-
- case 15:
- this.state = 7550;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7549;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7552;
- this.match(TSqlParser.BUFFERCOUNT);
- this.state = 7553;
- this.match(TSqlParser.EQUAL);
- this.state = 7556;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.DECIMAL:
- this.state = 7554;
- this.match(TSqlParser.DECIMAL);
- break;
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.state = 7555;
- this.id();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
-
- case 16:
- this.state = 7559;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7558;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7561;
- this.match(TSqlParser.MAXTRANSFER);
- this.state = 7562;
- this.match(TSqlParser.EQUAL);
- this.state = 7565;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.DECIMAL:
- this.state = 7563;
- this.match(TSqlParser.DECIMAL);
- break;
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.state = 7564;
- this.id();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
-
- case 17:
- this.state = 7568;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7567;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7570;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.NO_CHECKSUM || _la===TSqlParser.CHECKSUM)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
-
- case 18:
- this.state = 7572;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7571;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7574;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.CONTINUE_AFTER_ERROR || _la===TSqlParser.STOP_ON_ERROR)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
-
- case 19:
- this.state = 7576;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7575;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7578;
- this.match(TSqlParser.RESTART);
- break;
-
- case 20:
- this.state = 7580;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7579;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7582;
- this.match(TSqlParser.STATS);
- this.state = 7585;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.EQUAL) {
- this.state = 7583;
- this.match(TSqlParser.EQUAL);
- this.state = 7584;
- localctx.stats_percent = this.match(TSqlParser.DECIMAL);
- }
-
- break;
-
- case 21:
- this.state = 7588;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7587;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7590;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.NOREWIND || _la===TSqlParser.REWIND)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
-
- case 22:
- this.state = 7592;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7591;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7594;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.LOAD || _la===TSqlParser.NOUNLOAD)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
-
- case 23:
- this.state = 7596;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7595;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7598;
- this.match(TSqlParser.ENCRYPTION);
- this.state = 7599;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 7600;
- this.match(TSqlParser.ALGORITHM);
- this.state = 7601;
- this.match(TSqlParser.EQUAL);
- this.state = 7602;
- _la = this._input.LA(1);
- if(!(((((_la - 386)) & ~0x1f) == 0 && ((1 << (_la - 386)) & ((1 << (TSqlParser.AES_128 - 386)) | (1 << (TSqlParser.AES_192 - 386)) | (1 << (TSqlParser.AES_256 - 386)))) !== 0) || _la===TSqlParser.TRIPLE_DES_3KEY)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 7603;
- this.match(TSqlParser.COMMA);
- this.state = 7604;
- this.match(TSqlParser.SERVER);
- this.state = 7605;
- this.match(TSqlParser.CERTIFICATE);
- this.state = 7606;
- this.match(TSqlParser.EQUAL);
- this.state = 7613;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1034,this._ctx);
- switch(la_) {
- case 1:
- this.state = 7607;
- localctx.encryptor_name = this.id();
- break;
-
- case 2:
- this.state = 7608;
- this.match(TSqlParser.SERVER);
- this.state = 7609;
- this.match(TSqlParser.ASYMMETRIC);
- this.state = 7610;
- this.match(TSqlParser.KEY);
- this.state = 7611;
- this.match(TSqlParser.EQUAL);
- this.state = 7612;
- localctx.encryptor_name = this.id();
- break;
-
- }
- break;
-
- }
- }
- this.state = 7619;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,1036,this._ctx);
- }
-
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Backup_logContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_backup_log;
- this.database_name = null; // IdContext
- this.logical_device_name = null; // IdContext
- this.backup_set_name = null; // IdContext
- this.medianame = null; // Token
- this.stats_percent = null; // Token
- this.undo_file_name = null; // Token
- this.encryptor_name = null; // IdContext
- return this;
-}
-
-Backup_logContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Backup_logContext.prototype.constructor = Backup_logContext;
-
-Backup_logContext.prototype.BACKUP = function() {
- return this.getToken(TSqlParser.BACKUP, 0);
-};
-
-Backup_logContext.prototype.LOG = function() {
- return this.getToken(TSqlParser.LOG, 0);
-};
-
-Backup_logContext.prototype.TO = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.TO);
- } else {
- return this.getToken(TSqlParser.TO, i);
- }
-};
-
-
-Backup_logContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Backup_logContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Backup_logContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-Backup_logContext.prototype.DISK = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DISK);
- } else {
- return this.getToken(TSqlParser.DISK, i);
- }
-};
-
-
-Backup_logContext.prototype.TAPE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.TAPE);
- } else {
- return this.getToken(TSqlParser.TAPE, i);
- }
-};
-
-
-Backup_logContext.prototype.URL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.URL);
- } else {
- return this.getToken(TSqlParser.URL, i);
- }
-};
-
-
-Backup_logContext.prototype.MIRROR = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.MIRROR);
- } else {
- return this.getToken(TSqlParser.MIRROR, i);
- }
-};
-
-
-Backup_logContext.prototype.DIFFERENTIAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DIFFERENTIAL);
- } else {
- return this.getToken(TSqlParser.DIFFERENTIAL, i);
- }
-};
-
-
-Backup_logContext.prototype.COPY_ONLY = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COPY_ONLY);
- } else {
- return this.getToken(TSqlParser.COPY_ONLY, i);
- }
-};
-
-
-Backup_logContext.prototype.DESCRIPTION = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DESCRIPTION);
- } else {
- return this.getToken(TSqlParser.DESCRIPTION, i);
- }
-};
-
-
-Backup_logContext.prototype.NAME = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.NAME);
- } else {
- return this.getToken(TSqlParser.NAME, i);
- }
-};
-
-
-Backup_logContext.prototype.CREDENTIAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.CREDENTIAL);
- } else {
- return this.getToken(TSqlParser.CREDENTIAL, i);
- }
-};
-
-
-Backup_logContext.prototype.FILE_SNAPSHOT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.FILE_SNAPSHOT);
- } else {
- return this.getToken(TSqlParser.FILE_SNAPSHOT, i);
- }
-};
-
-
-Backup_logContext.prototype.MEDIADESCRIPTION = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.MEDIADESCRIPTION);
- } else {
- return this.getToken(TSqlParser.MEDIADESCRIPTION, i);
- }
-};
-
-
-Backup_logContext.prototype.MEDIANAME = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.MEDIANAME);
- } else {
- return this.getToken(TSqlParser.MEDIANAME, i);
- }
-};
-
-
-Backup_logContext.prototype.BLOCKSIZE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.BLOCKSIZE);
- } else {
- return this.getToken(TSqlParser.BLOCKSIZE, i);
- }
-};
-
-
-Backup_logContext.prototype.BUFFERCOUNT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.BUFFERCOUNT);
- } else {
- return this.getToken(TSqlParser.BUFFERCOUNT, i);
- }
-};
-
-
-Backup_logContext.prototype.MAXTRANSFER = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.MAXTRANSFER);
- } else {
- return this.getToken(TSqlParser.MAXTRANSFER, i);
- }
-};
-
-
-Backup_logContext.prototype.RESTART = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.RESTART);
- } else {
- return this.getToken(TSqlParser.RESTART, i);
- }
-};
-
-
-Backup_logContext.prototype.STATS = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.STATS);
- } else {
- return this.getToken(TSqlParser.STATS, i);
- }
-};
-
-
-Backup_logContext.prototype.NO_TRUNCATE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.NO_TRUNCATE);
- } else {
- return this.getToken(TSqlParser.NO_TRUNCATE, i);
- }
-};
-
-
-Backup_logContext.prototype.ENCRYPTION = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ENCRYPTION);
- } else {
- return this.getToken(TSqlParser.ENCRYPTION, i);
- }
-};
-
-
-Backup_logContext.prototype.LR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.LR_BRACKET);
- } else {
- return this.getToken(TSqlParser.LR_BRACKET, i);
- }
-};
-
-
-Backup_logContext.prototype.ALGORITHM = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ALGORITHM);
- } else {
- return this.getToken(TSqlParser.ALGORITHM, i);
- }
-};
-
-
-Backup_logContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Backup_logContext.prototype.SERVER = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.SERVER);
- } else {
- return this.getToken(TSqlParser.SERVER, i);
- }
-};
-
-
-Backup_logContext.prototype.CERTIFICATE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.CERTIFICATE);
- } else {
- return this.getToken(TSqlParser.CERTIFICATE, i);
- }
-};
-
-
-Backup_logContext.prototype.STRING = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.STRING);
- } else {
- return this.getToken(TSqlParser.STRING, i);
- }
-};
-
-
-Backup_logContext.prototype.COMPRESSION = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMPRESSION);
- } else {
- return this.getToken(TSqlParser.COMPRESSION, i);
- }
-};
-
-
-Backup_logContext.prototype.NO_COMPRESSION = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.NO_COMPRESSION);
- } else {
- return this.getToken(TSqlParser.NO_COMPRESSION, i);
- }
-};
-
-
-Backup_logContext.prototype.NOINIT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.NOINIT);
- } else {
- return this.getToken(TSqlParser.NOINIT, i);
- }
-};
-
-
-Backup_logContext.prototype.INIT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.INIT);
- } else {
- return this.getToken(TSqlParser.INIT, i);
- }
-};
-
-
-Backup_logContext.prototype.NOSKIP = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.NOSKIP);
- } else {
- return this.getToken(TSqlParser.NOSKIP, i);
- }
-};
-
-
-Backup_logContext.prototype.SKIP_KEYWORD = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.SKIP_KEYWORD);
- } else {
- return this.getToken(TSqlParser.SKIP_KEYWORD, i);
- }
-};
-
-
-Backup_logContext.prototype.NOFORMAT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.NOFORMAT);
- } else {
- return this.getToken(TSqlParser.NOFORMAT, i);
- }
-};
-
-
-Backup_logContext.prototype.FORMAT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.FORMAT);
- } else {
- return this.getToken(TSqlParser.FORMAT, i);
- }
-};
-
-
-Backup_logContext.prototype.NO_CHECKSUM = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.NO_CHECKSUM);
- } else {
- return this.getToken(TSqlParser.NO_CHECKSUM, i);
- }
-};
-
-
-Backup_logContext.prototype.CHECKSUM = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.CHECKSUM);
- } else {
- return this.getToken(TSqlParser.CHECKSUM, i);
- }
-};
-
-
-Backup_logContext.prototype.STOP_ON_ERROR = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.STOP_ON_ERROR);
- } else {
- return this.getToken(TSqlParser.STOP_ON_ERROR, i);
- }
-};
-
-
-Backup_logContext.prototype.CONTINUE_AFTER_ERROR = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.CONTINUE_AFTER_ERROR);
- } else {
- return this.getToken(TSqlParser.CONTINUE_AFTER_ERROR, i);
- }
-};
-
-
-Backup_logContext.prototype.REWIND = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.REWIND);
- } else {
- return this.getToken(TSqlParser.REWIND, i);
- }
-};
-
-
-Backup_logContext.prototype.NOREWIND = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.NOREWIND);
- } else {
- return this.getToken(TSqlParser.NOREWIND, i);
- }
-};
-
-
-Backup_logContext.prototype.LOAD = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.LOAD);
- } else {
- return this.getToken(TSqlParser.LOAD, i);
- }
-};
-
-
-Backup_logContext.prototype.NOUNLOAD = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.NOUNLOAD);
- } else {
- return this.getToken(TSqlParser.NOUNLOAD, i);
- }
-};
-
-
-Backup_logContext.prototype.AES_128 = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.AES_128);
- } else {
- return this.getToken(TSqlParser.AES_128, i);
- }
-};
-
-
-Backup_logContext.prototype.AES_192 = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.AES_192);
- } else {
- return this.getToken(TSqlParser.AES_192, i);
- }
-};
-
-
-Backup_logContext.prototype.AES_256 = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.AES_256);
- } else {
- return this.getToken(TSqlParser.AES_256, i);
- }
-};
-
-
-Backup_logContext.prototype.TRIPLE_DES_3KEY = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.TRIPLE_DES_3KEY);
- } else {
- return this.getToken(TSqlParser.TRIPLE_DES_3KEY, i);
- }
-};
-
-
-Backup_logContext.prototype.EXPIREDATE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EXPIREDATE);
- } else {
- return this.getToken(TSqlParser.EXPIREDATE, i);
- }
-};
-
-
-Backup_logContext.prototype.RETAINDAYS = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.RETAINDAYS);
- } else {
- return this.getToken(TSqlParser.RETAINDAYS, i);
- }
-};
-
-
-Backup_logContext.prototype.DECIMAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DECIMAL);
- } else {
- return this.getToken(TSqlParser.DECIMAL, i);
- }
-};
-
-
-Backup_logContext.prototype.NORECOVERY = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.NORECOVERY);
- } else {
- return this.getToken(TSqlParser.NORECOVERY, i);
- }
-};
-
-
-Backup_logContext.prototype.STANDBY = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.STANDBY);
- } else {
- return this.getToken(TSqlParser.STANDBY, i);
- }
-};
-
-
-Backup_logContext.prototype.ASYMMETRIC = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ASYMMETRIC);
- } else {
- return this.getToken(TSqlParser.ASYMMETRIC, i);
- }
-};
-
-
-Backup_logContext.prototype.KEY = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.KEY);
- } else {
- return this.getToken(TSqlParser.KEY, i);
- }
-};
-
-
-Backup_logContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterBackup_log(this);
- }
-};
-
-Backup_logContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitBackup_log(this);
- }
-};
-
-Backup_logContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitBackup_log(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Backup_logContext = Backup_logContext;
-
-TSqlParser.prototype.backup_log = function() {
-
- var localctx = new Backup_logContext(this, this._ctx, this.state);
- this.enterRule(localctx, 614, TSqlParser.RULE_backup_log);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 7622;
- this.match(TSqlParser.BACKUP);
- this.state = 7623;
- this.match(TSqlParser.LOG);
-
- this.state = 7624;
- localctx.database_name = this.id();
- this.state = 7648;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1043,this._ctx);
- switch(la_) {
- case 1:
- this.state = 7625;
- this.match(TSqlParser.TO);
- this.state = 7630;
- this._errHandler.sync(this);
- var _alt = 1;
- do {
- switch (_alt) {
- case 1:
- this.state = 7627;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7626;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7629;
- localctx.logical_device_name = this.id();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 7632;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,1039, this._ctx);
- } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
- break;
-
- case 2:
- this.state = 7634;
- this.match(TSqlParser.TO);
- this.state = 7644;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- do {
- this.state = 7636;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7635;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7638;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.DISK || _la===TSqlParser.TAPE || _la===TSqlParser.URL)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 7639;
- this.match(TSqlParser.EQUAL);
- this.state = 7642;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.STRING:
- this.state = 7640;
- this.match(TSqlParser.STRING);
- break;
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.state = 7641;
- this.id();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 7646;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- } while(_la===TSqlParser.DISK || _la===TSqlParser.TAPE || _la===TSqlParser.URL || _la===TSqlParser.COMMA);
- break;
-
- }
- this.state = 7683;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1051,this._ctx);
- if(la_===1) {
- this.state = 7660;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- do {
- this.state = 7650;
- this.match(TSqlParser.MIRROR);
- this.state = 7651;
- this.match(TSqlParser.TO);
- this.state = 7656;
- this._errHandler.sync(this);
- var _alt = 1;
- do {
- switch (_alt) {
- case 1:
- this.state = 7653;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7652;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7655;
- localctx.logical_device_name = this.id();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 7658;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,1045, this._ctx);
- } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
- this.state = 7662;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- } while(_la===TSqlParser.MIRROR);
-
- } else if(la_===2) {
- this.state = 7679;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- do {
- this.state = 7664;
- this.match(TSqlParser.MIRROR);
- this.state = 7665;
- this.match(TSqlParser.TO);
- this.state = 7675;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- do {
- this.state = 7667;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7666;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7669;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.DISK || _la===TSqlParser.TAPE || _la===TSqlParser.URL)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 7670;
- this.match(TSqlParser.EQUAL);
- this.state = 7673;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.STRING:
- this.state = 7671;
- this.match(TSqlParser.STRING);
- break;
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.state = 7672;
- this.id();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 7677;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- } while(_la===TSqlParser.DISK || _la===TSqlParser.TAPE || _la===TSqlParser.URL || _la===TSqlParser.COMMA);
- this.state = 7681;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- } while(_la===TSqlParser.MIRROR);
-
- }
- this.state = 7858;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1090,this._ctx);
- if(la_===1) {
- this.state = 7685;
- this.match(TSqlParser.WITH);
- this.state = 7855;
- this._errHandler.sync(this);
- var _alt = this._interp.adaptivePredict(this._input,1089,this._ctx)
- while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
- if(_alt===1) {
- this.state = 7853;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1088,this._ctx);
- switch(la_) {
- case 1:
- this.state = 7687;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7686;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7689;
- this.match(TSqlParser.DIFFERENTIAL);
- break;
-
- case 2:
- this.state = 7691;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7690;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7693;
- this.match(TSqlParser.COPY_ONLY);
- break;
-
- case 3:
- this.state = 7695;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7694;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7697;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.COMPRESSION || _la===TSqlParser.NO_COMPRESSION)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
-
- case 4:
- this.state = 7699;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7698;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7701;
- this.match(TSqlParser.DESCRIPTION);
- this.state = 7702;
- this.match(TSqlParser.EQUAL);
- this.state = 7705;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.STRING:
- this.state = 7703;
- this.match(TSqlParser.STRING);
- break;
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.state = 7704;
- this.id();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
-
- case 5:
- this.state = 7708;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7707;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7710;
- this.match(TSqlParser.NAME);
- this.state = 7711;
- this.match(TSqlParser.EQUAL);
- this.state = 7712;
- localctx.backup_set_name = this.id();
- break;
-
- case 6:
- this.state = 7714;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7713;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7716;
- this.match(TSqlParser.CREDENTIAL);
- break;
-
- case 7:
- this.state = 7718;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7717;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7720;
- this.match(TSqlParser.FILE_SNAPSHOT);
- break;
-
- case 8:
- this.state = 7722;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7721;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7736;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.EXPIREDATE:
- this.state = 7724;
- this.match(TSqlParser.EXPIREDATE);
- this.state = 7725;
- this.match(TSqlParser.EQUAL);
- this.state = 7728;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.STRING:
- this.state = 7726;
- this.match(TSqlParser.STRING);
- break;
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.state = 7727;
- this.id();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
- case TSqlParser.RETAINDAYS:
- this.state = 7730;
- this.match(TSqlParser.RETAINDAYS);
- this.state = 7731;
- this.match(TSqlParser.EQUAL);
- this.state = 7734;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.DECIMAL:
- this.state = 7732;
- this.match(TSqlParser.DECIMAL);
- break;
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.state = 7733;
- this.id();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
-
- case 9:
- this.state = 7739;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7738;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7741;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.INIT || _la===TSqlParser.NOINIT)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
-
- case 10:
- this.state = 7743;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7742;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7745;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.NOSKIP || _la===TSqlParser.SKIP_KEYWORD)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
-
- case 11:
- this.state = 7747;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7746;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7749;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.NOFORMAT || _la===TSqlParser.FORMAT)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
-
- case 12:
- this.state = 7751;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7750;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7753;
- this.match(TSqlParser.MEDIADESCRIPTION);
- this.state = 7754;
- this.match(TSqlParser.EQUAL);
- this.state = 7757;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.STRING:
- this.state = 7755;
- this.match(TSqlParser.STRING);
- break;
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.state = 7756;
- this.id();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
-
- case 13:
- this.state = 7760;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7759;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7762;
- this.match(TSqlParser.MEDIANAME);
- this.state = 7763;
- this.match(TSqlParser.EQUAL);
-
- this.state = 7764;
- localctx.medianame = this.match(TSqlParser.STRING);
- break;
-
- case 14:
- this.state = 7766;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7765;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7768;
- this.match(TSqlParser.BLOCKSIZE);
- this.state = 7769;
- this.match(TSqlParser.EQUAL);
- this.state = 7772;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.DECIMAL:
- this.state = 7770;
- this.match(TSqlParser.DECIMAL);
- break;
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.state = 7771;
- this.id();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
-
- case 15:
- this.state = 7775;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7774;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7777;
- this.match(TSqlParser.BUFFERCOUNT);
- this.state = 7778;
- this.match(TSqlParser.EQUAL);
- this.state = 7781;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.DECIMAL:
- this.state = 7779;
- this.match(TSqlParser.DECIMAL);
- break;
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.state = 7780;
- this.id();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
-
- case 16:
- this.state = 7784;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7783;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7786;
- this.match(TSqlParser.MAXTRANSFER);
- this.state = 7787;
- this.match(TSqlParser.EQUAL);
- this.state = 7790;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.DECIMAL:
- this.state = 7788;
- this.match(TSqlParser.DECIMAL);
- break;
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.state = 7789;
- this.id();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
-
- case 17:
- this.state = 7793;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7792;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7795;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.NO_CHECKSUM || _la===TSqlParser.CHECKSUM)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
-
- case 18:
- this.state = 7797;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7796;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7799;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.CONTINUE_AFTER_ERROR || _la===TSqlParser.STOP_ON_ERROR)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
-
- case 19:
- this.state = 7801;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7800;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7803;
- this.match(TSqlParser.RESTART);
- break;
-
- case 20:
- this.state = 7805;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7804;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7807;
- this.match(TSqlParser.STATS);
- this.state = 7810;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.EQUAL) {
- this.state = 7808;
- this.match(TSqlParser.EQUAL);
- this.state = 7809;
- localctx.stats_percent = this.match(TSqlParser.DECIMAL);
- }
-
- break;
-
- case 21:
- this.state = 7813;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7812;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7815;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.NOREWIND || _la===TSqlParser.REWIND)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
-
- case 22:
- this.state = 7817;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7816;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7819;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.LOAD || _la===TSqlParser.NOUNLOAD)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
-
- case 23:
- this.state = 7821;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7820;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7827;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.NORECOVERY:
- this.state = 7823;
- this.match(TSqlParser.NORECOVERY);
- break;
- case TSqlParser.STANDBY:
- this.state = 7824;
- this.match(TSqlParser.STANDBY);
- this.state = 7825;
- this.match(TSqlParser.EQUAL);
- this.state = 7826;
- localctx.undo_file_name = this.match(TSqlParser.STRING);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
-
- case 24:
- this.state = 7830;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7829;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7832;
- this.match(TSqlParser.NO_TRUNCATE);
- break;
-
- case 25:
- this.state = 7834;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7833;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7836;
- this.match(TSqlParser.ENCRYPTION);
- this.state = 7837;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 7838;
- this.match(TSqlParser.ALGORITHM);
- this.state = 7839;
- this.match(TSqlParser.EQUAL);
- this.state = 7840;
- _la = this._input.LA(1);
- if(!(((((_la - 386)) & ~0x1f) == 0 && ((1 << (_la - 386)) & ((1 << (TSqlParser.AES_128 - 386)) | (1 << (TSqlParser.AES_192 - 386)) | (1 << (TSqlParser.AES_256 - 386)))) !== 0) || _la===TSqlParser.TRIPLE_DES_3KEY)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 7841;
- this.match(TSqlParser.COMMA);
- this.state = 7842;
- this.match(TSqlParser.SERVER);
- this.state = 7843;
- this.match(TSqlParser.CERTIFICATE);
- this.state = 7844;
- this.match(TSqlParser.EQUAL);
- this.state = 7851;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1087,this._ctx);
- switch(la_) {
- case 1:
- this.state = 7845;
- localctx.encryptor_name = this.id();
- break;
-
- case 2:
- this.state = 7846;
- this.match(TSqlParser.SERVER);
- this.state = 7847;
- this.match(TSqlParser.ASYMMETRIC);
- this.state = 7848;
- this.match(TSqlParser.KEY);
- this.state = 7849;
- this.match(TSqlParser.EQUAL);
- this.state = 7850;
- localctx.encryptor_name = this.id();
- break;
-
- }
- break;
-
- }
- }
- this.state = 7857;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,1089,this._ctx);
- }
-
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Backup_certificateContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_backup_certificate;
- this.certname = null; // IdContext
- this.cert_file = null; // Token
- this.private_key_file = null; // Token
- this.encryption_password = null; // Token
- this.decryption_pasword = null; // Token
- return this;
-}
-
-Backup_certificateContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Backup_certificateContext.prototype.constructor = Backup_certificateContext;
-
-Backup_certificateContext.prototype.BACKUP = function() {
- return this.getToken(TSqlParser.BACKUP, 0);
-};
-
-Backup_certificateContext.prototype.CERTIFICATE = function() {
- return this.getToken(TSqlParser.CERTIFICATE, 0);
-};
-
-Backup_certificateContext.prototype.TO = function() {
- return this.getToken(TSqlParser.TO, 0);
-};
-
-Backup_certificateContext.prototype.FILE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.FILE);
- } else {
- return this.getToken(TSqlParser.FILE, i);
- }
-};
-
-
-Backup_certificateContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-Backup_certificateContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Backup_certificateContext.prototype.STRING = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.STRING);
- } else {
- return this.getToken(TSqlParser.STRING, i);
- }
-};
-
-
-Backup_certificateContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Backup_certificateContext.prototype.PRIVATE = function() {
- return this.getToken(TSqlParser.PRIVATE, 0);
-};
-
-Backup_certificateContext.prototype.KEY = function() {
- return this.getToken(TSqlParser.KEY, 0);
-};
-
-Backup_certificateContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Backup_certificateContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Backup_certificateContext.prototype.ENCRYPTION = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ENCRYPTION);
- } else {
- return this.getToken(TSqlParser.ENCRYPTION, i);
- }
-};
-
-
-Backup_certificateContext.prototype.BY = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.BY);
- } else {
- return this.getToken(TSqlParser.BY, i);
- }
-};
-
-
-Backup_certificateContext.prototype.PASSWORD = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.PASSWORD);
- } else {
- return this.getToken(TSqlParser.PASSWORD, i);
- }
-};
-
-
-Backup_certificateContext.prototype.DECRYPTION = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DECRYPTION);
- } else {
- return this.getToken(TSqlParser.DECRYPTION, i);
- }
-};
-
-
-Backup_certificateContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Backup_certificateContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterBackup_certificate(this);
- }
-};
-
-Backup_certificateContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitBackup_certificate(this);
- }
-};
-
-Backup_certificateContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitBackup_certificate(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Backup_certificateContext = Backup_certificateContext;
-
-TSqlParser.prototype.backup_certificate = function() {
-
- var localctx = new Backup_certificateContext(this, this._ctx, this.state);
- this.enterRule(localctx, 616, TSqlParser.RULE_backup_certificate);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 7860;
- this.match(TSqlParser.BACKUP);
- this.state = 7861;
- this.match(TSqlParser.CERTIFICATE);
- this.state = 7862;
- localctx.certname = this.id();
- this.state = 7863;
- this.match(TSqlParser.TO);
- this.state = 7864;
- this.match(TSqlParser.FILE);
- this.state = 7865;
- this.match(TSqlParser.EQUAL);
- this.state = 7866;
- localctx.cert_file = this.match(TSqlParser.STRING);
- this.state = 7898;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1096,this._ctx);
- if(la_===1) {
- this.state = 7867;
- this.match(TSqlParser.WITH);
- this.state = 7868;
- this.match(TSqlParser.PRIVATE);
- this.state = 7869;
- this.match(TSqlParser.KEY);
- this.state = 7870;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 7893;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- do {
- this.state = 7893;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1094,this._ctx);
- switch(la_) {
- case 1:
- this.state = 7872;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7871;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7874;
- this.match(TSqlParser.FILE);
- this.state = 7875;
- this.match(TSqlParser.EQUAL);
- this.state = 7876;
- localctx.private_key_file = this.match(TSqlParser.STRING);
- break;
-
- case 2:
- this.state = 7878;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7877;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7880;
- this.match(TSqlParser.ENCRYPTION);
- this.state = 7881;
- this.match(TSqlParser.BY);
- this.state = 7882;
- this.match(TSqlParser.PASSWORD);
- this.state = 7883;
- this.match(TSqlParser.EQUAL);
- this.state = 7884;
- localctx.encryption_password = this.match(TSqlParser.STRING);
- break;
-
- case 3:
- this.state = 7886;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 7885;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 7888;
- this.match(TSqlParser.DECRYPTION);
- this.state = 7889;
- this.match(TSqlParser.BY);
- this.state = 7890;
- this.match(TSqlParser.PASSWORD);
- this.state = 7891;
- this.match(TSqlParser.EQUAL);
- this.state = 7892;
- localctx.decryption_pasword = this.match(TSqlParser.STRING);
- break;
-
- }
- this.state = 7895;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- } while(_la===TSqlParser.FILE || _la===TSqlParser.DECRYPTION || _la===TSqlParser.ENCRYPTION || _la===TSqlParser.COMMA);
- this.state = 7897;
- this.match(TSqlParser.RR_BRACKET);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Backup_master_keyContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_backup_master_key;
- this.master_key_backup_file = null; // Token
- this.encryption_password = null; // Token
- return this;
-}
-
-Backup_master_keyContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Backup_master_keyContext.prototype.constructor = Backup_master_keyContext;
-
-Backup_master_keyContext.prototype.BACKUP = function() {
- return this.getToken(TSqlParser.BACKUP, 0);
-};
-
-Backup_master_keyContext.prototype.MASTER = function() {
- return this.getToken(TSqlParser.MASTER, 0);
-};
-
-Backup_master_keyContext.prototype.KEY = function() {
- return this.getToken(TSqlParser.KEY, 0);
-};
-
-Backup_master_keyContext.prototype.TO = function() {
- return this.getToken(TSqlParser.TO, 0);
-};
-
-Backup_master_keyContext.prototype.FILE = function() {
- return this.getToken(TSqlParser.FILE, 0);
-};
-
-Backup_master_keyContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-Backup_master_keyContext.prototype.ENCRYPTION = function() {
- return this.getToken(TSqlParser.ENCRYPTION, 0);
-};
-
-Backup_master_keyContext.prototype.BY = function() {
- return this.getToken(TSqlParser.BY, 0);
-};
-
-Backup_master_keyContext.prototype.PASSWORD = function() {
- return this.getToken(TSqlParser.PASSWORD, 0);
-};
-
-Backup_master_keyContext.prototype.STRING = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.STRING);
- } else {
- return this.getToken(TSqlParser.STRING, i);
- }
-};
-
-
-Backup_master_keyContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterBackup_master_key(this);
- }
-};
-
-Backup_master_keyContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitBackup_master_key(this);
- }
-};
-
-Backup_master_keyContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitBackup_master_key(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Backup_master_keyContext = Backup_master_keyContext;
-
-TSqlParser.prototype.backup_master_key = function() {
-
- var localctx = new Backup_master_keyContext(this, this._ctx, this.state);
- this.enterRule(localctx, 618, TSqlParser.RULE_backup_master_key);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 7900;
- this.match(TSqlParser.BACKUP);
- this.state = 7901;
- this.match(TSqlParser.MASTER);
- this.state = 7902;
- this.match(TSqlParser.KEY);
- this.state = 7903;
- this.match(TSqlParser.TO);
- this.state = 7904;
- this.match(TSqlParser.FILE);
- this.state = 7905;
- this.match(TSqlParser.EQUAL);
- this.state = 7906;
- localctx.master_key_backup_file = this.match(TSqlParser.STRING);
- this.state = 7907;
- this.match(TSqlParser.ENCRYPTION);
- this.state = 7908;
- this.match(TSqlParser.BY);
- this.state = 7909;
- this.match(TSqlParser.PASSWORD);
- this.state = 7910;
- this.match(TSqlParser.EQUAL);
- this.state = 7911;
- localctx.encryption_password = this.match(TSqlParser.STRING);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Backup_service_master_keyContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_backup_service_master_key;
- this.service_master_key_backup_file = null; // Token
- this.encryption_password = null; // Token
- return this;
-}
-
-Backup_service_master_keyContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Backup_service_master_keyContext.prototype.constructor = Backup_service_master_keyContext;
-
-Backup_service_master_keyContext.prototype.BACKUP = function() {
- return this.getToken(TSqlParser.BACKUP, 0);
-};
-
-Backup_service_master_keyContext.prototype.SERVICE = function() {
- return this.getToken(TSqlParser.SERVICE, 0);
-};
-
-Backup_service_master_keyContext.prototype.MASTER = function() {
- return this.getToken(TSqlParser.MASTER, 0);
-};
-
-Backup_service_master_keyContext.prototype.KEY = function() {
- return this.getToken(TSqlParser.KEY, 0);
-};
-
-Backup_service_master_keyContext.prototype.TO = function() {
- return this.getToken(TSqlParser.TO, 0);
-};
-
-Backup_service_master_keyContext.prototype.FILE = function() {
- return this.getToken(TSqlParser.FILE, 0);
-};
-
-Backup_service_master_keyContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-Backup_service_master_keyContext.prototype.ENCRYPTION = function() {
- return this.getToken(TSqlParser.ENCRYPTION, 0);
-};
-
-Backup_service_master_keyContext.prototype.BY = function() {
- return this.getToken(TSqlParser.BY, 0);
-};
-
-Backup_service_master_keyContext.prototype.PASSWORD = function() {
- return this.getToken(TSqlParser.PASSWORD, 0);
-};
-
-Backup_service_master_keyContext.prototype.STRING = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.STRING);
- } else {
- return this.getToken(TSqlParser.STRING, i);
- }
-};
-
-
-Backup_service_master_keyContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterBackup_service_master_key(this);
- }
-};
-
-Backup_service_master_keyContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitBackup_service_master_key(this);
- }
-};
-
-Backup_service_master_keyContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitBackup_service_master_key(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Backup_service_master_keyContext = Backup_service_master_keyContext;
-
-TSqlParser.prototype.backup_service_master_key = function() {
-
- var localctx = new Backup_service_master_keyContext(this, this._ctx, this.state);
- this.enterRule(localctx, 620, TSqlParser.RULE_backup_service_master_key);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 7913;
- this.match(TSqlParser.BACKUP);
- this.state = 7914;
- this.match(TSqlParser.SERVICE);
- this.state = 7915;
- this.match(TSqlParser.MASTER);
- this.state = 7916;
- this.match(TSqlParser.KEY);
- this.state = 7917;
- this.match(TSqlParser.TO);
- this.state = 7918;
- this.match(TSqlParser.FILE);
- this.state = 7919;
- this.match(TSqlParser.EQUAL);
- this.state = 7920;
- localctx.service_master_key_backup_file = this.match(TSqlParser.STRING);
- this.state = 7921;
- this.match(TSqlParser.ENCRYPTION);
- this.state = 7922;
- this.match(TSqlParser.BY);
- this.state = 7923;
- this.match(TSqlParser.PASSWORD);
- this.state = 7924;
- this.match(TSqlParser.EQUAL);
- this.state = 7925;
- localctx.encryption_password = this.match(TSqlParser.STRING);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Kill_statementContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_kill_statement;
- return this;
-}
-
-Kill_statementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Kill_statementContext.prototype.constructor = Kill_statementContext;
-
-Kill_statementContext.prototype.KILL = function() {
- return this.getToken(TSqlParser.KILL, 0);
-};
-
-Kill_statementContext.prototype.kill_process = function() {
- return this.getTypedRuleContext(Kill_processContext,0);
-};
-
-Kill_statementContext.prototype.kill_query_notification = function() {
- return this.getTypedRuleContext(Kill_query_notificationContext,0);
-};
-
-Kill_statementContext.prototype.kill_stats_job = function() {
- return this.getTypedRuleContext(Kill_stats_jobContext,0);
-};
-
-Kill_statementContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterKill_statement(this);
- }
-};
-
-Kill_statementContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitKill_statement(this);
- }
-};
-
-Kill_statementContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitKill_statement(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Kill_statementContext = Kill_statementContext;
-
-TSqlParser.prototype.kill_statement = function() {
-
- var localctx = new Kill_statementContext(this, this._ctx, this.state);
- this.enterRule(localctx, 622, TSqlParser.RULE_kill_statement);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 7927;
- this.match(TSqlParser.KILL);
- this.state = 7931;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.UOW:
- case TSqlParser.DECIMAL:
- case TSqlParser.STRING:
- this.state = 7928;
- this.kill_process();
- break;
- case TSqlParser.QUERY:
- this.state = 7929;
- this.kill_query_notification();
- break;
- case TSqlParser.STATS:
- this.state = 7930;
- this.kill_stats_job();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Kill_processContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_kill_process;
- this.session_id = null; // Token
- return this;
-}
-
-Kill_processContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Kill_processContext.prototype.constructor = Kill_processContext;
-
-Kill_processContext.prototype.UOW = function() {
- return this.getToken(TSqlParser.UOW, 0);
-};
-
-Kill_processContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Kill_processContext.prototype.STATUSONLY = function() {
- return this.getToken(TSqlParser.STATUSONLY, 0);
-};
-
-Kill_processContext.prototype.DECIMAL = function() {
- return this.getToken(TSqlParser.DECIMAL, 0);
-};
-
-Kill_processContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Kill_processContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterKill_process(this);
- }
-};
-
-Kill_processContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitKill_process(this);
- }
-};
-
-Kill_processContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitKill_process(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Kill_processContext = Kill_processContext;
-
-TSqlParser.prototype.kill_process = function() {
-
- var localctx = new Kill_processContext(this, this._ctx, this.state);
- this.enterRule(localctx, 624, TSqlParser.RULE_kill_process);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 7935;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.DECIMAL:
- case TSqlParser.STRING:
- this.state = 7933;
- localctx.session_id = this._input.LT(1);
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.DECIMAL || _la===TSqlParser.STRING)) {
- localctx.session_id = this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- case TSqlParser.UOW:
- this.state = 7934;
- this.match(TSqlParser.UOW);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 7939;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1099,this._ctx);
- if(la_===1) {
- this.state = 7937;
- this.match(TSqlParser.WITH);
- this.state = 7938;
- this.match(TSqlParser.STATUSONLY);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Kill_query_notificationContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_kill_query_notification;
- this.subscription_id = null; // Token
- return this;
-}
-
-Kill_query_notificationContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Kill_query_notificationContext.prototype.constructor = Kill_query_notificationContext;
-
-Kill_query_notificationContext.prototype.QUERY = function() {
- return this.getToken(TSqlParser.QUERY, 0);
-};
-
-Kill_query_notificationContext.prototype.NOTIFICATION = function() {
- return this.getToken(TSqlParser.NOTIFICATION, 0);
-};
-
-Kill_query_notificationContext.prototype.SUBSCRIPTION = function() {
- return this.getToken(TSqlParser.SUBSCRIPTION, 0);
-};
-
-Kill_query_notificationContext.prototype.ALL = function() {
- return this.getToken(TSqlParser.ALL, 0);
-};
-
-Kill_query_notificationContext.prototype.DECIMAL = function() {
- return this.getToken(TSqlParser.DECIMAL, 0);
-};
-
-Kill_query_notificationContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterKill_query_notification(this);
- }
-};
-
-Kill_query_notificationContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitKill_query_notification(this);
- }
-};
-
-Kill_query_notificationContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitKill_query_notification(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Kill_query_notificationContext = Kill_query_notificationContext;
-
-TSqlParser.prototype.kill_query_notification = function() {
-
- var localctx = new Kill_query_notificationContext(this, this._ctx, this.state);
- this.enterRule(localctx, 626, TSqlParser.RULE_kill_query_notification);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 7941;
- this.match(TSqlParser.QUERY);
- this.state = 7942;
- this.match(TSqlParser.NOTIFICATION);
- this.state = 7943;
- this.match(TSqlParser.SUBSCRIPTION);
- this.state = 7946;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.ALL:
- this.state = 7944;
- this.match(TSqlParser.ALL);
- break;
- case TSqlParser.DECIMAL:
- this.state = 7945;
- localctx.subscription_id = this.match(TSqlParser.DECIMAL);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Kill_stats_jobContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_kill_stats_job;
- this.job_id = null; // Token
- return this;
-}
-
-Kill_stats_jobContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Kill_stats_jobContext.prototype.constructor = Kill_stats_jobContext;
-
-Kill_stats_jobContext.prototype.STATS = function() {
- return this.getToken(TSqlParser.STATS, 0);
-};
-
-Kill_stats_jobContext.prototype.JOB = function() {
- return this.getToken(TSqlParser.JOB, 0);
-};
-
-Kill_stats_jobContext.prototype.DECIMAL = function() {
- return this.getToken(TSqlParser.DECIMAL, 0);
-};
-
-Kill_stats_jobContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterKill_stats_job(this);
- }
-};
-
-Kill_stats_jobContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitKill_stats_job(this);
- }
-};
-
-Kill_stats_jobContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitKill_stats_job(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Kill_stats_jobContext = Kill_stats_jobContext;
-
-TSqlParser.prototype.kill_stats_job = function() {
-
- var localctx = new Kill_stats_jobContext(this, this._ctx, this.state);
- this.enterRule(localctx, 628, TSqlParser.RULE_kill_stats_job);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 7948;
- this.match(TSqlParser.STATS);
- this.state = 7949;
- this.match(TSqlParser.JOB);
- this.state = 7950;
- localctx.job_id = this.match(TSqlParser.DECIMAL);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Execute_statementContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_execute_statement;
- return this;
-}
-
-Execute_statementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Execute_statementContext.prototype.constructor = Execute_statementContext;
-
-Execute_statementContext.prototype.EXECUTE = function() {
- return this.getToken(TSqlParser.EXECUTE, 0);
-};
-
-Execute_statementContext.prototype.execute_body = function() {
- return this.getTypedRuleContext(Execute_bodyContext,0);
-};
-
-Execute_statementContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterExecute_statement(this);
- }
-};
-
-Execute_statementContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitExecute_statement(this);
- }
-};
-
-Execute_statementContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitExecute_statement(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Execute_statementContext = Execute_statementContext;
-
-TSqlParser.prototype.execute_statement = function() {
-
- var localctx = new Execute_statementContext(this, this._ctx, this.state);
- this.enterRule(localctx, 630, TSqlParser.RULE_execute_statement);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 7952;
- this.match(TSqlParser.EXECUTE);
- this.state = 7953;
- this.execute_body();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Execute_bodyContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_execute_body;
- this.return_status = null; // Token
- return this;
-}
-
-Execute_bodyContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Execute_bodyContext.prototype.constructor = Execute_bodyContext;
-
-Execute_bodyContext.prototype.func_proc_name_server_database_schema = function() {
- return this.getTypedRuleContext(Func_proc_name_server_database_schemaContext,0);
-};
-
-Execute_bodyContext.prototype.expression = function() {
- return this.getTypedRuleContext(ExpressionContext,0);
-};
-
-Execute_bodyContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Execute_bodyContext.prototype.execute_statement_arg = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Execute_statement_argContext);
- } else {
- return this.getTypedRuleContext(Execute_statement_argContext,i);
- }
-};
-
-Execute_bodyContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Execute_bodyContext.prototype.LOCAL_ID = function() {
- return this.getToken(TSqlParser.LOCAL_ID, 0);
-};
-
-Execute_bodyContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Execute_bodyContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Execute_bodyContext.prototype.execute_var_string = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Execute_var_stringContext);
- } else {
- return this.getTypedRuleContext(Execute_var_stringContext,i);
- }
-};
-
-Execute_bodyContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Execute_bodyContext.prototype.PLUS = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.PLUS);
- } else {
- return this.getToken(TSqlParser.PLUS, i);
- }
-};
-
-
-Execute_bodyContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Execute_bodyContext.prototype.LOGIN = function() {
- return this.getToken(TSqlParser.LOGIN, 0);
-};
-
-Execute_bodyContext.prototype.USER = function() {
- return this.getToken(TSqlParser.USER, 0);
-};
-
-Execute_bodyContext.prototype.AS = function() {
- return this.getToken(TSqlParser.AS, 0);
-};
-
-Execute_bodyContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterExecute_body(this);
- }
-};
-
-Execute_bodyContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitExecute_body(this);
- }
-};
-
-Execute_bodyContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitExecute_body(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Execute_bodyContext = Execute_bodyContext;
-
-TSqlParser.prototype.execute_body = function() {
-
- var localctx = new Execute_bodyContext(this, this._ctx, this.state);
- this.enterRule(localctx, 632, TSqlParser.RULE_execute_body);
- var _la = 0; // Token type
- try {
- this.state = 7997;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1110,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 7957;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1101,this._ctx);
- if(la_===1) {
- this.state = 7955;
- localctx.return_status = this.match(TSqlParser.LOCAL_ID);
- this.state = 7956;
- this.match(TSqlParser.EQUAL);
-
- }
- this.state = 7961;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1102,this._ctx);
- switch(la_) {
- case 1:
- this.state = 7959;
- this.func_proc_name_server_database_schema();
- break;
-
- case 2:
- this.state = 7960;
- this.expression(0);
- break;
-
- }
- this.state = 7971;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1104,this._ctx);
- if(la_===1) {
- this.state = 7963;
- this.execute_statement_arg();
- this.state = 7968;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 7964;
- this.match(TSqlParser.COMMA);
- this.state = 7965;
- this.execute_statement_arg();
- this.state = 7970;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
-
- }
- this.state = 7974;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1105,this._ctx);
- if(la_===1) {
- this.state = 7973;
- this.match(TSqlParser.SEMI);
-
- }
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 7976;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 7977;
- this.execute_var_string();
- this.state = 7982;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.PLUS) {
- this.state = 7978;
- this.match(TSqlParser.PLUS);
- this.state = 7979;
- this.execute_var_string();
- this.state = 7984;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- this.state = 7985;
- this.match(TSqlParser.RR_BRACKET);
- this.state = 7992;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1108,this._ctx);
- if(la_===1) {
- this.state = 7987;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.AS) {
- this.state = 7986;
- this.match(TSqlParser.AS);
- }
-
- this.state = 7989;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.USER || _la===TSqlParser.LOGIN)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 7990;
- this.match(TSqlParser.EQUAL);
- this.state = 7991;
- this.match(TSqlParser.STRING);
-
- }
- this.state = 7995;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1109,this._ctx);
- if(la_===1) {
- this.state = 7994;
- this.match(TSqlParser.SEMI);
-
- }
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Execute_statement_argContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_execute_statement_arg;
- this.parameter = null; // Token
- return this;
-}
-
-Execute_statement_argContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Execute_statement_argContext.prototype.constructor = Execute_statement_argContext;
-
-Execute_statement_argContext.prototype.DEFAULT = function() {
- return this.getToken(TSqlParser.DEFAULT, 0);
-};
-
-Execute_statement_argContext.prototype.NULL = function() {
- return this.getToken(TSqlParser.NULL, 0);
-};
-
-Execute_statement_argContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Execute_statement_argContext.prototype.LOCAL_ID = function() {
- return this.getToken(TSqlParser.LOCAL_ID, 0);
-};
-
-Execute_statement_argContext.prototype.constant_LOCAL_ID = function() {
- return this.getTypedRuleContext(Constant_LOCAL_IDContext,0);
-};
-
-Execute_statement_argContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Execute_statement_argContext.prototype.OUTPUT = function() {
- return this.getToken(TSqlParser.OUTPUT, 0);
-};
-
-Execute_statement_argContext.prototype.OUT = function() {
- return this.getToken(TSqlParser.OUT, 0);
-};
-
-Execute_statement_argContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterExecute_statement_arg(this);
- }
-};
-
-Execute_statement_argContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitExecute_statement_arg(this);
- }
-};
-
-Execute_statement_argContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitExecute_statement_arg(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Execute_statement_argContext = Execute_statement_argContext;
-
-TSqlParser.prototype.execute_statement_arg = function() {
-
- var localctx = new Execute_statement_argContext(this, this._ctx, this.state);
- this.enterRule(localctx, 634, TSqlParser.RULE_execute_statement_arg);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 8001;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1111,this._ctx);
- if(la_===1) {
- this.state = 7999;
- localctx.parameter = this.match(TSqlParser.LOCAL_ID);
- this.state = 8000;
- this.match(TSqlParser.EQUAL);
-
- }
- this.state = 8012;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.LOCAL_ID:
- case TSqlParser.DECIMAL:
- case TSqlParser.ID:
- case TSqlParser.STRING:
- case TSqlParser.BINARY:
- case TSqlParser.FLOAT:
- case TSqlParser.REAL:
- case TSqlParser.DOLLAR:
- case TSqlParser.PLUS:
- case TSqlParser.MINUS:
- this.state = 8005;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.LOCAL_ID:
- case TSqlParser.DECIMAL:
- case TSqlParser.STRING:
- case TSqlParser.BINARY:
- case TSqlParser.FLOAT:
- case TSqlParser.REAL:
- case TSqlParser.DOLLAR:
- case TSqlParser.PLUS:
- case TSqlParser.MINUS:
- this.state = 8003;
- this.constant_LOCAL_ID();
- break;
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.state = 8004;
- this.id();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 8008;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1113,this._ctx);
- if(la_===1) {
- this.state = 8007;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OUT || _la===TSqlParser.OUTPUT)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
-
- }
- break;
- case TSqlParser.DEFAULT:
- this.state = 8010;
- this.match(TSqlParser.DEFAULT);
- break;
- case TSqlParser.NULL:
- this.state = 8011;
- this.match(TSqlParser.NULL);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Execute_var_stringContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_execute_var_string;
- return this;
-}
-
-Execute_var_stringContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Execute_var_stringContext.prototype.constructor = Execute_var_stringContext;
-
-Execute_var_stringContext.prototype.LOCAL_ID = function() {
- return this.getToken(TSqlParser.LOCAL_ID, 0);
-};
-
-Execute_var_stringContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Execute_var_stringContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterExecute_var_string(this);
- }
-};
-
-Execute_var_stringContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitExecute_var_string(this);
- }
-};
-
-Execute_var_stringContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitExecute_var_string(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Execute_var_stringContext = Execute_var_stringContext;
-
-TSqlParser.prototype.execute_var_string = function() {
-
- var localctx = new Execute_var_stringContext(this, this._ctx, this.state);
- this.enterRule(localctx, 636, TSqlParser.RULE_execute_var_string);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 8014;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.LOCAL_ID || _la===TSqlParser.STRING)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Security_statementContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_security_statement;
- this.on_id = null; // Table_nameContext
- this._id = null; // IdContext
- this.to_principal = []; // of IdContexts
- this.as_principal = null; // IdContext
- return this;
-}
-
-Security_statementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Security_statementContext.prototype.constructor = Security_statementContext;
-
-Security_statementContext.prototype.execute_clause = function() {
- return this.getTypedRuleContext(Execute_clauseContext,0);
-};
-
-Security_statementContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Security_statementContext.prototype.GRANT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.GRANT);
- } else {
- return this.getToken(TSqlParser.GRANT, i);
- }
-};
-
-
-Security_statementContext.prototype.TO = function() {
- return this.getToken(TSqlParser.TO, 0);
-};
-
-Security_statementContext.prototype.ALL = function() {
- return this.getToken(TSqlParser.ALL, 0);
-};
-
-Security_statementContext.prototype.grant_permission = function() {
- return this.getTypedRuleContext(Grant_permissionContext,0);
-};
-
-Security_statementContext.prototype.ON = function() {
- return this.getToken(TSqlParser.ON, 0);
-};
-
-Security_statementContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Security_statementContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Security_statementContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Security_statementContext.prototype.OPTION = function() {
- return this.getToken(TSqlParser.OPTION, 0);
-};
-
-Security_statementContext.prototype.AS = function() {
- return this.getToken(TSqlParser.AS, 0);
-};
-
-Security_statementContext.prototype.table_name = function() {
- return this.getTypedRuleContext(Table_nameContext,0);
-};
-
-Security_statementContext.prototype.PRIVILEGES = function() {
- return this.getToken(TSqlParser.PRIVILEGES, 0);
-};
-
-Security_statementContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Security_statementContext.prototype.column_name_list = function() {
- return this.getTypedRuleContext(Column_name_listContext,0);
-};
-
-Security_statementContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Security_statementContext.prototype.REVERT = function() {
- return this.getToken(TSqlParser.REVERT, 0);
-};
-
-Security_statementContext.prototype.COOKIE = function() {
- return this.getToken(TSqlParser.COOKIE, 0);
-};
-
-Security_statementContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Security_statementContext.prototype.LOCAL_ID = function() {
- return this.getToken(TSqlParser.LOCAL_ID, 0);
-};
-
-Security_statementContext.prototype.open_key = function() {
- return this.getTypedRuleContext(Open_keyContext,0);
-};
-
-Security_statementContext.prototype.close_key = function() {
- return this.getTypedRuleContext(Close_keyContext,0);
-};
-
-Security_statementContext.prototype.create_key = function() {
- return this.getTypedRuleContext(Create_keyContext,0);
-};
-
-Security_statementContext.prototype.create_certificate = function() {
- return this.getTypedRuleContext(Create_certificateContext,0);
-};
-
-Security_statementContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterSecurity_statement(this);
- }
-};
-
-Security_statementContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitSecurity_statement(this);
- }
-};
-
-Security_statementContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitSecurity_statement(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Security_statementContext = Security_statementContext;
-
-TSqlParser.prototype.security_statement = function() {
-
- var localctx = new Security_statementContext(this, this._ctx, this.state);
- this.enterRule(localctx, 638, TSqlParser.RULE_security_statement);
- var _la = 0; // Token type
- try {
- this.state = 8075;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1126,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 8016;
- this.execute_clause();
- this.state = 8018;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1115,this._ctx);
- if(la_===1) {
- this.state = 8017;
- this.match(TSqlParser.SEMI);
-
- }
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 8020;
- this.match(TSqlParser.GRANT);
- this.state = 8032;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.ALL:
- this.state = 8021;
- this.match(TSqlParser.ALL);
- this.state = 8023;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.PRIVILEGES) {
- this.state = 8022;
- this.match(TSqlParser.PRIVILEGES);
- }
-
- break;
- case TSqlParser.ALTER:
- case TSqlParser.CREATE:
- case TSqlParser.EXECUTE:
- case TSqlParser.INSERT:
- case TSqlParser.REFERENCES:
- case TSqlParser.SELECT:
- case TSqlParser.VIEW:
- case TSqlParser.CONTROL:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.TAKE:
- this.state = 8025;
- this.grant_permission();
- this.state = 8030;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.LR_BRACKET) {
- this.state = 8026;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 8027;
- this.column_name_list();
- this.state = 8028;
- this.match(TSqlParser.RR_BRACKET);
- }
-
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 8036;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.ON) {
- this.state = 8034;
- this.match(TSqlParser.ON);
- this.state = 8035;
- localctx.on_id = this.table_name();
- }
-
- this.state = 8038;
- this.match(TSqlParser.TO);
-
- this.state = 8039;
- localctx._id = this.id();
- localctx.to_principal.push(localctx._id);
- this.state = 8044;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 8040;
- this.match(TSqlParser.COMMA);
- this.state = 8041;
- localctx._id = this.id();
- localctx.to_principal.push(localctx._id);
- this.state = 8046;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- this.state = 8050;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1121,this._ctx);
- if(la_===1) {
- this.state = 8047;
- this.match(TSqlParser.WITH);
- this.state = 8048;
- this.match(TSqlParser.GRANT);
- this.state = 8049;
- this.match(TSqlParser.OPTION);
-
- }
- this.state = 8054;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.AS) {
- this.state = 8052;
- this.match(TSqlParser.AS);
- this.state = 8053;
- localctx.as_principal = this.id();
- }
-
- this.state = 8057;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1123,this._ctx);
- if(la_===1) {
- this.state = 8056;
- this.match(TSqlParser.SEMI);
-
- }
- break;
-
- case 3:
- this.enterOuterAlt(localctx, 3);
- this.state = 8059;
- this.match(TSqlParser.REVERT);
- this.state = 8066;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1124,this._ctx);
- if(la_===1) {
- this.state = 8060;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 8061;
- this.match(TSqlParser.WITH);
- this.state = 8062;
- this.match(TSqlParser.COOKIE);
- this.state = 8063;
- this.match(TSqlParser.EQUAL);
- this.state = 8064;
- this.match(TSqlParser.LOCAL_ID);
- this.state = 8065;
- this.match(TSqlParser.RR_BRACKET);
-
- }
- this.state = 8069;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1125,this._ctx);
- if(la_===1) {
- this.state = 8068;
- this.match(TSqlParser.SEMI);
-
- }
- break;
-
- case 4:
- this.enterOuterAlt(localctx, 4);
- this.state = 8071;
- this.open_key();
- break;
-
- case 5:
- this.enterOuterAlt(localctx, 5);
- this.state = 8072;
- this.close_key();
- break;
-
- case 6:
- this.enterOuterAlt(localctx, 6);
- this.state = 8073;
- this.create_key();
- break;
-
- case 7:
- this.enterOuterAlt(localctx, 7);
- this.state = 8074;
- this.create_certificate();
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_certificateContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_certificate;
- this.certificate_name = null; // IdContext
- this.user_name = null; // IdContext
- return this;
-}
-
-Create_certificateContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_certificateContext.prototype.constructor = Create_certificateContext;
-
-Create_certificateContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_certificateContext.prototype.CERTIFICATE = function() {
- return this.getToken(TSqlParser.CERTIFICATE, 0);
-};
-
-Create_certificateContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Create_certificateContext.prototype.FROM = function() {
- return this.getToken(TSqlParser.FROM, 0);
-};
-
-Create_certificateContext.prototype.existing_keys = function() {
- return this.getTypedRuleContext(Existing_keysContext,0);
-};
-
-Create_certificateContext.prototype.generate_new_keys = function() {
- return this.getTypedRuleContext(Generate_new_keysContext,0);
-};
-
-Create_certificateContext.prototype.AUTHORIZATION = function() {
- return this.getToken(TSqlParser.AUTHORIZATION, 0);
-};
-
-Create_certificateContext.prototype.ACTIVE = function() {
- return this.getToken(TSqlParser.ACTIVE, 0);
-};
-
-Create_certificateContext.prototype.FOR = function() {
- return this.getToken(TSqlParser.FOR, 0);
-};
-
-Create_certificateContext.prototype.BEGIN = function() {
- return this.getToken(TSqlParser.BEGIN, 0);
-};
-
-Create_certificateContext.prototype.DIALOG = function() {
- return this.getToken(TSqlParser.DIALOG, 0);
-};
-
-Create_certificateContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Create_certificateContext.prototype.ON = function() {
- return this.getToken(TSqlParser.ON, 0);
-};
-
-Create_certificateContext.prototype.OFF = function() {
- return this.getToken(TSqlParser.OFF, 0);
-};
-
-Create_certificateContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_certificate(this);
- }
-};
-
-Create_certificateContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_certificate(this);
- }
-};
-
-Create_certificateContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_certificate(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_certificateContext = Create_certificateContext;
-
-TSqlParser.prototype.create_certificate = function() {
-
- var localctx = new Create_certificateContext(this, this._ctx, this.state);
- this.enterRule(localctx, 640, TSqlParser.RULE_create_certificate);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 8077;
- this.match(TSqlParser.CREATE);
- this.state = 8078;
- this.match(TSqlParser.CERTIFICATE);
- this.state = 8079;
- localctx.certificate_name = this.id();
- this.state = 8082;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.AUTHORIZATION) {
- this.state = 8080;
- this.match(TSqlParser.AUTHORIZATION);
- this.state = 8081;
- localctx.user_name = this.id();
- }
-
- this.state = 8087;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.FROM:
- this.state = 8084;
- this.match(TSqlParser.FROM);
- this.state = 8085;
- this.existing_keys();
- break;
- case TSqlParser.WITH:
- case TSqlParser.ENCRYPTION:
- this.state = 8086;
- this.generate_new_keys();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 8095;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1129,this._ctx);
- if(la_===1) {
- this.state = 8089;
- this.match(TSqlParser.ACTIVE);
- this.state = 8090;
- this.match(TSqlParser.FOR);
- this.state = 8091;
- this.match(TSqlParser.BEGIN);
- this.state = 8092;
- this.match(TSqlParser.DIALOG);
- this.state = 8093;
- this.match(TSqlParser.EQUAL);
- this.state = 8094;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Existing_keysContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_existing_keys;
- this.assembly_name = null; // IdContext
- this.path_to_file = null; // Token
- return this;
-}
-
-Existing_keysContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Existing_keysContext.prototype.constructor = Existing_keysContext;
-
-Existing_keysContext.prototype.ASSEMBLY = function() {
- return this.getToken(TSqlParser.ASSEMBLY, 0);
-};
-
-Existing_keysContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Existing_keysContext.prototype.FILE = function() {
- return this.getToken(TSqlParser.FILE, 0);
-};
-
-Existing_keysContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Existing_keysContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Existing_keysContext.prototype.EXECUTABLE = function() {
- return this.getToken(TSqlParser.EXECUTABLE, 0);
-};
-
-Existing_keysContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Existing_keysContext.prototype.PRIVATE = function() {
- return this.getToken(TSqlParser.PRIVATE, 0);
-};
-
-Existing_keysContext.prototype.KEY = function() {
- return this.getToken(TSqlParser.KEY, 0);
-};
-
-Existing_keysContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Existing_keysContext.prototype.private_key_options = function() {
- return this.getTypedRuleContext(Private_key_optionsContext,0);
-};
-
-Existing_keysContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Existing_keysContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterExisting_keys(this);
- }
-};
-
-Existing_keysContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitExisting_keys(this);
- }
-};
-
-Existing_keysContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitExisting_keys(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Existing_keysContext = Existing_keysContext;
-
-TSqlParser.prototype.existing_keys = function() {
-
- var localctx = new Existing_keysContext(this, this._ctx, this.state);
- this.enterRule(localctx, 642, TSqlParser.RULE_existing_keys);
- var _la = 0; // Token type
- try {
- this.state = 8114;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.ASSEMBLY:
- this.enterOuterAlt(localctx, 1);
- this.state = 8097;
- this.match(TSqlParser.ASSEMBLY);
- this.state = 8098;
- localctx.assembly_name = this.id();
- break;
- case TSqlParser.FILE:
- case TSqlParser.EXECUTABLE:
- this.enterOuterAlt(localctx, 2);
- this.state = 8100;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.EXECUTABLE) {
- this.state = 8099;
- this.match(TSqlParser.EXECUTABLE);
- }
-
- this.state = 8102;
- this.match(TSqlParser.FILE);
- this.state = 8103;
- this.match(TSqlParser.EQUAL);
- this.state = 8104;
- localctx.path_to_file = this.match(TSqlParser.STRING);
- this.state = 8112;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1131,this._ctx);
- if(la_===1) {
- this.state = 8105;
- this.match(TSqlParser.WITH);
- this.state = 8106;
- this.match(TSqlParser.PRIVATE);
- this.state = 8107;
- this.match(TSqlParser.KEY);
- this.state = 8108;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 8109;
- this.private_key_options();
- this.state = 8110;
- this.match(TSqlParser.RR_BRACKET);
-
- }
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Private_key_optionsContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_private_key_options;
- this.path = null; // Token
- this.password = null; // Token
- return this;
-}
-
-Private_key_optionsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Private_key_optionsContext.prototype.constructor = Private_key_optionsContext;
-
-Private_key_optionsContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-Private_key_optionsContext.prototype.FILE = function() {
- return this.getToken(TSqlParser.FILE, 0);
-};
-
-Private_key_optionsContext.prototype.BINARY = function() {
- return this.getToken(TSqlParser.BINARY, 0);
-};
-
-Private_key_optionsContext.prototype.STRING = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.STRING);
- } else {
- return this.getToken(TSqlParser.STRING, i);
- }
-};
-
-
-Private_key_optionsContext.prototype.COMMA = function() {
- return this.getToken(TSqlParser.COMMA, 0);
-};
-
-Private_key_optionsContext.prototype.BY = function() {
- return this.getToken(TSqlParser.BY, 0);
-};
-
-Private_key_optionsContext.prototype.PASSWORD = function() {
- return this.getToken(TSqlParser.PASSWORD, 0);
-};
-
-Private_key_optionsContext.prototype.DECRYPTION = function() {
- return this.getToken(TSqlParser.DECRYPTION, 0);
-};
-
-Private_key_optionsContext.prototype.ENCRYPTION = function() {
- return this.getToken(TSqlParser.ENCRYPTION, 0);
-};
-
-Private_key_optionsContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterPrivate_key_options(this);
- }
-};
-
-Private_key_optionsContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitPrivate_key_options(this);
- }
-};
-
-Private_key_optionsContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitPrivate_key_options(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Private_key_optionsContext = Private_key_optionsContext;
-
-TSqlParser.prototype.private_key_options = function() {
-
- var localctx = new Private_key_optionsContext(this, this._ctx, this.state);
- this.enterRule(localctx, 644, TSqlParser.RULE_private_key_options);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 8116;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.FILE || _la===TSqlParser.BINARY)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 8117;
- this.match(TSqlParser.EQUAL);
- this.state = 8118;
- localctx.path = this.match(TSqlParser.STRING);
- this.state = 8125;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 8119;
- this.match(TSqlParser.COMMA);
- this.state = 8120;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.DECRYPTION || _la===TSqlParser.ENCRYPTION)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 8121;
- this.match(TSqlParser.BY);
- this.state = 8122;
- this.match(TSqlParser.PASSWORD);
- this.state = 8123;
- this.match(TSqlParser.EQUAL);
- this.state = 8124;
- localctx.password = this.match(TSqlParser.STRING);
- }
-
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Generate_new_keysContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_generate_new_keys;
- this.password = null; // Token
- this.certificate_subject_name = null; // Token
- return this;
-}
-
-Generate_new_keysContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Generate_new_keysContext.prototype.constructor = Generate_new_keysContext;
-
-Generate_new_keysContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Generate_new_keysContext.prototype.SUBJECT = function() {
- return this.getToken(TSqlParser.SUBJECT, 0);
-};
-
-Generate_new_keysContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-Generate_new_keysContext.prototype.STRING = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.STRING);
- } else {
- return this.getToken(TSqlParser.STRING, i);
- }
-};
-
-
-Generate_new_keysContext.prototype.ENCRYPTION = function() {
- return this.getToken(TSqlParser.ENCRYPTION, 0);
-};
-
-Generate_new_keysContext.prototype.BY = function() {
- return this.getToken(TSqlParser.BY, 0);
-};
-
-Generate_new_keysContext.prototype.PASSWORD = function() {
- return this.getToken(TSqlParser.PASSWORD, 0);
-};
-
-Generate_new_keysContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Generate_new_keysContext.prototype.date_options = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Date_optionsContext);
- } else {
- return this.getTypedRuleContext(Date_optionsContext,i);
- }
-};
-
-Generate_new_keysContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterGenerate_new_keys(this);
- }
-};
-
-Generate_new_keysContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitGenerate_new_keys(this);
- }
-};
-
-Generate_new_keysContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitGenerate_new_keys(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Generate_new_keysContext = Generate_new_keysContext;
-
-TSqlParser.prototype.generate_new_keys = function() {
-
- var localctx = new Generate_new_keysContext(this, this._ctx, this.state);
- this.enterRule(localctx, 646, TSqlParser.RULE_generate_new_keys);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 8132;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.ENCRYPTION) {
- this.state = 8127;
- this.match(TSqlParser.ENCRYPTION);
- this.state = 8128;
- this.match(TSqlParser.BY);
- this.state = 8129;
- this.match(TSqlParser.PASSWORD);
- this.state = 8130;
- this.match(TSqlParser.EQUAL);
- this.state = 8131;
- localctx.password = this.match(TSqlParser.STRING);
- }
-
- this.state = 8134;
- this.match(TSqlParser.WITH);
- this.state = 8135;
- this.match(TSqlParser.SUBJECT);
- this.state = 8136;
- this.match(TSqlParser.EQUAL);
- this.state = 8137;
- localctx.certificate_subject_name = this.match(TSqlParser.STRING);
- this.state = 8142;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 8138;
- this.match(TSqlParser.COMMA);
- this.state = 8139;
- this.date_options();
- this.state = 8144;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Date_optionsContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_date_options;
- return this;
-}
-
-Date_optionsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Date_optionsContext.prototype.constructor = Date_optionsContext;
-
-Date_optionsContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Date_optionsContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Date_optionsContext.prototype.START_DATE = function() {
- return this.getToken(TSqlParser.START_DATE, 0);
-};
-
-Date_optionsContext.prototype.EXPIRY_DATE = function() {
- return this.getToken(TSqlParser.EXPIRY_DATE, 0);
-};
-
-Date_optionsContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDate_options(this);
- }
-};
-
-Date_optionsContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDate_options(this);
- }
-};
-
-Date_optionsContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDate_options(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Date_optionsContext = Date_optionsContext;
-
-TSqlParser.prototype.date_options = function() {
-
- var localctx = new Date_optionsContext(this, this._ctx, this.state);
- this.enterRule(localctx, 648, TSqlParser.RULE_date_options);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 8145;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.EXPIRY_DATE || _la===TSqlParser.START_DATE)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 8146;
- this.match(TSqlParser.EQUAL);
- this.state = 8147;
- this.match(TSqlParser.STRING);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Open_keyContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_open_key;
- this.key_name = null; // IdContext
- this.password = null; // Token
- return this;
-}
-
-Open_keyContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Open_keyContext.prototype.constructor = Open_keyContext;
-
-Open_keyContext.prototype.OPEN = function() {
- return this.getToken(TSqlParser.OPEN, 0);
-};
-
-Open_keyContext.prototype.SYMMETRIC = function() {
- return this.getToken(TSqlParser.SYMMETRIC, 0);
-};
-
-Open_keyContext.prototype.KEY = function() {
- return this.getToken(TSqlParser.KEY, 0);
-};
-
-Open_keyContext.prototype.DECRYPTION = function() {
- return this.getToken(TSqlParser.DECRYPTION, 0);
-};
-
-Open_keyContext.prototype.BY = function() {
- return this.getToken(TSqlParser.BY, 0);
-};
-
-Open_keyContext.prototype.decryption_mechanism = function() {
- return this.getTypedRuleContext(Decryption_mechanismContext,0);
-};
-
-Open_keyContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Open_keyContext.prototype.MASTER = function() {
- return this.getToken(TSqlParser.MASTER, 0);
-};
-
-Open_keyContext.prototype.PASSWORD = function() {
- return this.getToken(TSqlParser.PASSWORD, 0);
-};
-
-Open_keyContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Open_keyContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Open_keyContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterOpen_key(this);
- }
-};
-
-Open_keyContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitOpen_key(this);
- }
-};
-
-Open_keyContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitOpen_key(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Open_keyContext = Open_keyContext;
-
-TSqlParser.prototype.open_key = function() {
-
- var localctx = new Open_keyContext(this, this._ctx, this.state);
- this.enterRule(localctx, 650, TSqlParser.RULE_open_key);
- try {
- this.state = 8165;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1136,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 8149;
- this.match(TSqlParser.OPEN);
- this.state = 8150;
- this.match(TSqlParser.SYMMETRIC);
- this.state = 8151;
- this.match(TSqlParser.KEY);
- this.state = 8152;
- localctx.key_name = this.id();
- this.state = 8153;
- this.match(TSqlParser.DECRYPTION);
- this.state = 8154;
- this.match(TSqlParser.BY);
- this.state = 8155;
- this.decryption_mechanism();
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 8157;
- this.match(TSqlParser.OPEN);
- this.state = 8158;
- this.match(TSqlParser.MASTER);
- this.state = 8159;
- this.match(TSqlParser.KEY);
- this.state = 8160;
- this.match(TSqlParser.DECRYPTION);
- this.state = 8161;
- this.match(TSqlParser.BY);
- this.state = 8162;
- this.match(TSqlParser.PASSWORD);
- this.state = 8163;
- this.match(TSqlParser.EQUAL);
- this.state = 8164;
- localctx.password = this.match(TSqlParser.STRING);
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Close_keyContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_close_key;
- this.key_name = null; // IdContext
- return this;
-}
-
-Close_keyContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Close_keyContext.prototype.constructor = Close_keyContext;
-
-Close_keyContext.prototype.CLOSE = function() {
- return this.getToken(TSqlParser.CLOSE, 0);
-};
-
-Close_keyContext.prototype.SYMMETRIC = function() {
- return this.getToken(TSqlParser.SYMMETRIC, 0);
-};
-
-Close_keyContext.prototype.KEY = function() {
- return this.getToken(TSqlParser.KEY, 0);
-};
-
-Close_keyContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Close_keyContext.prototype.ALL = function() {
- return this.getToken(TSqlParser.ALL, 0);
-};
-
-Close_keyContext.prototype.KEYS = function() {
- return this.getToken(TSqlParser.KEYS, 0);
-};
-
-Close_keyContext.prototype.MASTER = function() {
- return this.getToken(TSqlParser.MASTER, 0);
-};
-
-Close_keyContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterClose_key(this);
- }
-};
-
-Close_keyContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitClose_key(this);
- }
-};
-
-Close_keyContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitClose_key(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Close_keyContext = Close_keyContext;
-
-TSqlParser.prototype.close_key = function() {
-
- var localctx = new Close_keyContext(this, this._ctx, this.state);
- this.enterRule(localctx, 652, TSqlParser.RULE_close_key);
- try {
- this.state = 8178;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1137,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 8167;
- this.match(TSqlParser.CLOSE);
- this.state = 8168;
- this.match(TSqlParser.SYMMETRIC);
- this.state = 8169;
- this.match(TSqlParser.KEY);
- this.state = 8170;
- localctx.key_name = this.id();
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 8171;
- this.match(TSqlParser.CLOSE);
- this.state = 8172;
- this.match(TSqlParser.ALL);
- this.state = 8173;
- this.match(TSqlParser.SYMMETRIC);
- this.state = 8174;
- this.match(TSqlParser.KEYS);
- break;
-
- case 3:
- this.enterOuterAlt(localctx, 3);
- this.state = 8175;
- this.match(TSqlParser.CLOSE);
- this.state = 8176;
- this.match(TSqlParser.MASTER);
- this.state = 8177;
- this.match(TSqlParser.KEY);
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_keyContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_key;
- this.password = null; // Token
- this.key_name = null; // IdContext
- this.user_name = null; // IdContext
- this.provider_name = null; // IdContext
- return this;
-}
-
-Create_keyContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_keyContext.prototype.constructor = Create_keyContext;
-
-Create_keyContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Create_keyContext.prototype.MASTER = function() {
- return this.getToken(TSqlParser.MASTER, 0);
-};
-
-Create_keyContext.prototype.KEY = function() {
- return this.getToken(TSqlParser.KEY, 0);
-};
-
-Create_keyContext.prototype.ENCRYPTION = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ENCRYPTION);
- } else {
- return this.getToken(TSqlParser.ENCRYPTION, i);
- }
-};
-
-
-Create_keyContext.prototype.BY = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.BY);
- } else {
- return this.getToken(TSqlParser.BY, i);
- }
-};
-
-
-Create_keyContext.prototype.PASSWORD = function() {
- return this.getToken(TSqlParser.PASSWORD, 0);
-};
-
-Create_keyContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Create_keyContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Create_keyContext.prototype.SYMMETRIC = function() {
- return this.getToken(TSqlParser.SYMMETRIC, 0);
-};
-
-Create_keyContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Create_keyContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Create_keyContext.prototype.AUTHORIZATION = function() {
- return this.getToken(TSqlParser.AUTHORIZATION, 0);
-};
-
-Create_keyContext.prototype.FROM = function() {
- return this.getToken(TSqlParser.FROM, 0);
-};
-
-Create_keyContext.prototype.PROVIDER = function() {
- return this.getToken(TSqlParser.PROVIDER, 0);
-};
-
-Create_keyContext.prototype.key_options = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Key_optionsContext);
- } else {
- return this.getTypedRuleContext(Key_optionsContext,i);
- }
-};
-
-Create_keyContext.prototype.encryption_mechanism = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Encryption_mechanismContext);
- } else {
- return this.getTypedRuleContext(Encryption_mechanismContext,i);
- }
-};
-
-Create_keyContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Create_keyContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_key(this);
- }
-};
-
-Create_keyContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_key(this);
- }
-};
-
-Create_keyContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_key(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_keyContext = Create_keyContext;
-
-TSqlParser.prototype.create_key = function() {
-
- var localctx = new Create_keyContext(this, this._ctx, this.state);
- this.enterRule(localctx, 654, TSqlParser.RULE_create_key);
- var _la = 0; // Token type
- try {
- this.state = 8215;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1143,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 8180;
- this.match(TSqlParser.CREATE);
- this.state = 8181;
- this.match(TSqlParser.MASTER);
- this.state = 8182;
- this.match(TSqlParser.KEY);
- this.state = 8183;
- this.match(TSqlParser.ENCRYPTION);
- this.state = 8184;
- this.match(TSqlParser.BY);
- this.state = 8185;
- this.match(TSqlParser.PASSWORD);
- this.state = 8186;
- this.match(TSqlParser.EQUAL);
- this.state = 8187;
- localctx.password = this.match(TSqlParser.STRING);
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 8188;
- this.match(TSqlParser.CREATE);
- this.state = 8189;
- this.match(TSqlParser.SYMMETRIC);
- this.state = 8190;
- this.match(TSqlParser.KEY);
- this.state = 8191;
- localctx.key_name = this.id();
- this.state = 8194;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.AUTHORIZATION) {
- this.state = 8192;
- this.match(TSqlParser.AUTHORIZATION);
- this.state = 8193;
- localctx.user_name = this.id();
- }
-
- this.state = 8199;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.FROM) {
- this.state = 8196;
- this.match(TSqlParser.FROM);
- this.state = 8197;
- this.match(TSqlParser.PROVIDER);
- this.state = 8198;
- localctx.provider_name = this.id();
- }
-
- this.state = 8201;
- this.match(TSqlParser.WITH);
- this.state = 8211;
- this._errHandler.sync(this);
- var _alt = 1;
- do {
- switch (_alt) {
- case 1:
- this.state = 8206;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.ALGORITHM:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.PROVIDER_KEY_NAME:
- this.state = 8202;
- this.key_options();
- break;
- case TSqlParser.ENCRYPTION:
- this.state = 8203;
- this.match(TSqlParser.ENCRYPTION);
- this.state = 8204;
- this.match(TSqlParser.BY);
- this.state = 8205;
- this.encryption_mechanism();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 8209;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 8208;
- this.match(TSqlParser.COMMA);
- }
-
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 8213;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,1142, this._ctx);
- } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Key_optionsContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_key_options;
- this.pass_phrase = null; // Token
- this.identity_phrase = null; // Token
- this.key_name_in_provider = null; // Token
- return this;
-}
-
-Key_optionsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Key_optionsContext.prototype.constructor = Key_optionsContext;
-
-Key_optionsContext.prototype.KEY_SOURCE = function() {
- return this.getToken(TSqlParser.KEY_SOURCE, 0);
-};
-
-Key_optionsContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Key_optionsContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Key_optionsContext.prototype.ALGORITHM = function() {
- return this.getToken(TSqlParser.ALGORITHM, 0);
-};
-
-Key_optionsContext.prototype.algorithm = function() {
- return this.getTypedRuleContext(AlgorithmContext,0);
-};
-
-Key_optionsContext.prototype.IDENTITY_VALUE = function() {
- return this.getToken(TSqlParser.IDENTITY_VALUE, 0);
-};
-
-Key_optionsContext.prototype.PROVIDER_KEY_NAME = function() {
- return this.getToken(TSqlParser.PROVIDER_KEY_NAME, 0);
-};
-
-Key_optionsContext.prototype.CREATION_DISPOSITION = function() {
- return this.getToken(TSqlParser.CREATION_DISPOSITION, 0);
-};
-
-Key_optionsContext.prototype.CREATE_NEW = function() {
- return this.getToken(TSqlParser.CREATE_NEW, 0);
-};
-
-Key_optionsContext.prototype.OPEN_EXISTING = function() {
- return this.getToken(TSqlParser.OPEN_EXISTING, 0);
-};
-
-Key_optionsContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterKey_options(this);
- }
-};
-
-Key_optionsContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitKey_options(this);
- }
-};
-
-Key_optionsContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitKey_options(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Key_optionsContext = Key_optionsContext;
-
-TSqlParser.prototype.key_options = function() {
-
- var localctx = new Key_optionsContext(this, this._ctx, this.state);
- this.enterRule(localctx, 656, TSqlParser.RULE_key_options);
- var _la = 0; // Token type
- try {
- this.state = 8232;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.KEY_SOURCE:
- this.enterOuterAlt(localctx, 1);
- this.state = 8217;
- this.match(TSqlParser.KEY_SOURCE);
- this.state = 8218;
- this.match(TSqlParser.EQUAL);
- this.state = 8219;
- localctx.pass_phrase = this.match(TSqlParser.STRING);
- break;
- case TSqlParser.ALGORITHM:
- this.enterOuterAlt(localctx, 2);
- this.state = 8220;
- this.match(TSqlParser.ALGORITHM);
- this.state = 8221;
- this.match(TSqlParser.EQUAL);
- this.state = 8222;
- this.algorithm();
- break;
- case TSqlParser.IDENTITY_VALUE:
- this.enterOuterAlt(localctx, 3);
- this.state = 8223;
- this.match(TSqlParser.IDENTITY_VALUE);
- this.state = 8224;
- this.match(TSqlParser.EQUAL);
- this.state = 8225;
- localctx.identity_phrase = this.match(TSqlParser.STRING);
- break;
- case TSqlParser.PROVIDER_KEY_NAME:
- this.enterOuterAlt(localctx, 4);
- this.state = 8226;
- this.match(TSqlParser.PROVIDER_KEY_NAME);
- this.state = 8227;
- this.match(TSqlParser.EQUAL);
- this.state = 8228;
- localctx.key_name_in_provider = this.match(TSqlParser.STRING);
- break;
- case TSqlParser.CREATION_DISPOSITION:
- this.enterOuterAlt(localctx, 5);
- this.state = 8229;
- this.match(TSqlParser.CREATION_DISPOSITION);
- this.state = 8230;
- this.match(TSqlParser.EQUAL);
- this.state = 8231;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.CREATE_NEW || _la===TSqlParser.OPEN_EXISTING)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function AlgorithmContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_algorithm;
- return this;
-}
-
-AlgorithmContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-AlgorithmContext.prototype.constructor = AlgorithmContext;
-
-AlgorithmContext.prototype.DES = function() {
- return this.getToken(TSqlParser.DES, 0);
-};
-
-AlgorithmContext.prototype.TRIPLE_DES = function() {
- return this.getToken(TSqlParser.TRIPLE_DES, 0);
-};
-
-AlgorithmContext.prototype.TRIPLE_DES_3KEY = function() {
- return this.getToken(TSqlParser.TRIPLE_DES_3KEY, 0);
-};
-
-AlgorithmContext.prototype.RC2 = function() {
- return this.getToken(TSqlParser.RC2, 0);
-};
-
-AlgorithmContext.prototype.RC4 = function() {
- return this.getToken(TSqlParser.RC4, 0);
-};
-
-AlgorithmContext.prototype.RC4_128 = function() {
- return this.getToken(TSqlParser.RC4_128, 0);
-};
-
-AlgorithmContext.prototype.DESX = function() {
- return this.getToken(TSqlParser.DESX, 0);
-};
-
-AlgorithmContext.prototype.AES_128 = function() {
- return this.getToken(TSqlParser.AES_128, 0);
-};
-
-AlgorithmContext.prototype.AES_192 = function() {
- return this.getToken(TSqlParser.AES_192, 0);
-};
-
-AlgorithmContext.prototype.AES_256 = function() {
- return this.getToken(TSqlParser.AES_256, 0);
-};
-
-AlgorithmContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAlgorithm(this);
- }
-};
-
-AlgorithmContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAlgorithm(this);
- }
-};
-
-AlgorithmContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAlgorithm(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.AlgorithmContext = AlgorithmContext;
-
-TSqlParser.prototype.algorithm = function() {
-
- var localctx = new AlgorithmContext(this, this._ctx, this.state);
- this.enterRule(localctx, 658, TSqlParser.RULE_algorithm);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 8234;
- _la = this._input.LA(1);
- if(!(((((_la - 386)) & ~0x1f) == 0 && ((1 << (_la - 386)) & ((1 << (TSqlParser.AES_128 - 386)) | (1 << (TSqlParser.AES_192 - 386)) | (1 << (TSqlParser.AES_256 - 386)))) !== 0) || _la===TSqlParser.DES || _la===TSqlParser.DESX || ((((_la - 663)) & ~0x1f) == 0 && ((1 << (_la - 663)) & ((1 << (TSqlParser.RC2 - 663)) | (1 << (TSqlParser.RC4 - 663)) | (1 << (TSqlParser.RC4_128 - 663)))) !== 0) || _la===TSqlParser.TRIPLE_DES || _la===TSqlParser.TRIPLE_DES_3KEY)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Encryption_mechanismContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_encryption_mechanism;
- this.certificate_name = null; // IdContext
- this.asym_key_name = null; // IdContext
- this.decrypting_Key_name = null; // IdContext
- return this;
-}
-
-Encryption_mechanismContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Encryption_mechanismContext.prototype.constructor = Encryption_mechanismContext;
-
-Encryption_mechanismContext.prototype.CERTIFICATE = function() {
- return this.getToken(TSqlParser.CERTIFICATE, 0);
-};
-
-Encryption_mechanismContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Encryption_mechanismContext.prototype.ASYMMETRIC = function() {
- return this.getToken(TSqlParser.ASYMMETRIC, 0);
-};
-
-Encryption_mechanismContext.prototype.KEY = function() {
- return this.getToken(TSqlParser.KEY, 0);
-};
-
-Encryption_mechanismContext.prototype.SYMMETRIC = function() {
- return this.getToken(TSqlParser.SYMMETRIC, 0);
-};
-
-Encryption_mechanismContext.prototype.PASSWORD = function() {
- return this.getToken(TSqlParser.PASSWORD, 0);
-};
-
-Encryption_mechanismContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Encryption_mechanismContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Encryption_mechanismContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterEncryption_mechanism(this);
- }
-};
-
-Encryption_mechanismContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitEncryption_mechanism(this);
- }
-};
-
-Encryption_mechanismContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitEncryption_mechanism(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Encryption_mechanismContext = Encryption_mechanismContext;
-
-TSqlParser.prototype.encryption_mechanism = function() {
-
- var localctx = new Encryption_mechanismContext(this, this._ctx, this.state);
- this.enterRule(localctx, 660, TSqlParser.RULE_encryption_mechanism);
- try {
- this.state = 8247;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.CERTIFICATE:
- this.enterOuterAlt(localctx, 1);
- this.state = 8236;
- this.match(TSqlParser.CERTIFICATE);
- this.state = 8237;
- localctx.certificate_name = this.id();
- break;
- case TSqlParser.ASYMMETRIC:
- this.enterOuterAlt(localctx, 2);
- this.state = 8238;
- this.match(TSqlParser.ASYMMETRIC);
- this.state = 8239;
- this.match(TSqlParser.KEY);
- this.state = 8240;
- localctx.asym_key_name = this.id();
- break;
- case TSqlParser.SYMMETRIC:
- this.enterOuterAlt(localctx, 3);
- this.state = 8241;
- this.match(TSqlParser.SYMMETRIC);
- this.state = 8242;
- this.match(TSqlParser.KEY);
- this.state = 8243;
- localctx.decrypting_Key_name = this.id();
- break;
- case TSqlParser.PASSWORD:
- this.enterOuterAlt(localctx, 4);
- this.state = 8244;
- this.match(TSqlParser.PASSWORD);
- this.state = 8245;
- this.match(TSqlParser.EQUAL);
- this.state = 8246;
- this.match(TSqlParser.STRING);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Decryption_mechanismContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_decryption_mechanism;
- this.certificate_name = null; // IdContext
- this.asym_key_name = null; // IdContext
- this.decrypting_Key_name = null; // IdContext
- return this;
-}
-
-Decryption_mechanismContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Decryption_mechanismContext.prototype.constructor = Decryption_mechanismContext;
-
-Decryption_mechanismContext.prototype.CERTIFICATE = function() {
- return this.getToken(TSqlParser.CERTIFICATE, 0);
-};
-
-Decryption_mechanismContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Decryption_mechanismContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Decryption_mechanismContext.prototype.PASSWORD = function() {
- return this.getToken(TSqlParser.PASSWORD, 0);
-};
-
-Decryption_mechanismContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Decryption_mechanismContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Decryption_mechanismContext.prototype.ASYMMETRIC = function() {
- return this.getToken(TSqlParser.ASYMMETRIC, 0);
-};
-
-Decryption_mechanismContext.prototype.KEY = function() {
- return this.getToken(TSqlParser.KEY, 0);
-};
-
-Decryption_mechanismContext.prototype.SYMMETRIC = function() {
- return this.getToken(TSqlParser.SYMMETRIC, 0);
-};
-
-Decryption_mechanismContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDecryption_mechanism(this);
- }
-};
-
-Decryption_mechanismContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDecryption_mechanism(this);
- }
-};
-
-Decryption_mechanismContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDecryption_mechanism(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Decryption_mechanismContext = Decryption_mechanismContext;
-
-TSqlParser.prototype.decryption_mechanism = function() {
-
- var localctx = new Decryption_mechanismContext(this, this._ctx, this.state);
- this.enterRule(localctx, 662, TSqlParser.RULE_decryption_mechanism);
- try {
- this.state = 8272;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.CERTIFICATE:
- this.enterOuterAlt(localctx, 1);
- this.state = 8249;
- this.match(TSqlParser.CERTIFICATE);
- this.state = 8250;
- localctx.certificate_name = this.id();
- this.state = 8255;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1146,this._ctx);
- if(la_===1) {
- this.state = 8251;
- this.match(TSqlParser.WITH);
- this.state = 8252;
- this.match(TSqlParser.PASSWORD);
- this.state = 8253;
- this.match(TSqlParser.EQUAL);
- this.state = 8254;
- this.match(TSqlParser.STRING);
-
- }
- break;
- case TSqlParser.ASYMMETRIC:
- this.enterOuterAlt(localctx, 2);
- this.state = 8257;
- this.match(TSqlParser.ASYMMETRIC);
- this.state = 8258;
- this.match(TSqlParser.KEY);
- this.state = 8259;
- localctx.asym_key_name = this.id();
- this.state = 8264;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1147,this._ctx);
- if(la_===1) {
- this.state = 8260;
- this.match(TSqlParser.WITH);
- this.state = 8261;
- this.match(TSqlParser.PASSWORD);
- this.state = 8262;
- this.match(TSqlParser.EQUAL);
- this.state = 8263;
- this.match(TSqlParser.STRING);
-
- }
- break;
- case TSqlParser.SYMMETRIC:
- this.enterOuterAlt(localctx, 3);
- this.state = 8266;
- this.match(TSqlParser.SYMMETRIC);
- this.state = 8267;
- this.match(TSqlParser.KEY);
- this.state = 8268;
- localctx.decrypting_Key_name = this.id();
- break;
- case TSqlParser.PASSWORD:
- this.enterOuterAlt(localctx, 4);
- this.state = 8269;
- this.match(TSqlParser.PASSWORD);
- this.state = 8270;
- this.match(TSqlParser.EQUAL);
- this.state = 8271;
- this.match(TSqlParser.STRING);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Grant_permissionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_grant_permission;
- return this;
-}
-
-Grant_permissionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Grant_permissionContext.prototype.constructor = Grant_permissionContext;
-
-Grant_permissionContext.prototype.EXECUTE = function() {
- return this.getToken(TSqlParser.EXECUTE, 0);
-};
-
-Grant_permissionContext.prototype.VIEW = function() {
- return this.getToken(TSqlParser.VIEW, 0);
-};
-
-Grant_permissionContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Grant_permissionContext.prototype.TAKE = function() {
- return this.getToken(TSqlParser.TAKE, 0);
-};
-
-Grant_permissionContext.prototype.CONTROL = function() {
- return this.getToken(TSqlParser.CONTROL, 0);
-};
-
-Grant_permissionContext.prototype.CREATE = function() {
- return this.getToken(TSqlParser.CREATE, 0);
-};
-
-Grant_permissionContext.prototype.TABLE = function() {
- return this.getToken(TSqlParser.TABLE, 0);
-};
-
-Grant_permissionContext.prototype.SHOWPLAN = function() {
- return this.getToken(TSqlParser.SHOWPLAN, 0);
-};
-
-Grant_permissionContext.prototype.IMPERSONATE = function() {
- return this.getToken(TSqlParser.IMPERSONATE, 0);
-};
-
-Grant_permissionContext.prototype.SELECT = function() {
- return this.getToken(TSqlParser.SELECT, 0);
-};
-
-Grant_permissionContext.prototype.REFERENCES = function() {
- return this.getToken(TSqlParser.REFERENCES, 0);
-};
-
-Grant_permissionContext.prototype.INSERT = function() {
- return this.getToken(TSqlParser.INSERT, 0);
-};
-
-Grant_permissionContext.prototype.ALTER = function() {
- return this.getToken(TSqlParser.ALTER, 0);
-};
-
-Grant_permissionContext.prototype.DATABASE = function() {
- return this.getToken(TSqlParser.DATABASE, 0);
-};
-
-Grant_permissionContext.prototype.ANY = function() {
- return this.getToken(TSqlParser.ANY, 0);
-};
-
-Grant_permissionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterGrant_permission(this);
- }
-};
-
-Grant_permissionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitGrant_permission(this);
- }
-};
-
-Grant_permissionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitGrant_permission(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Grant_permissionContext = Grant_permissionContext;
-
-TSqlParser.prototype.grant_permission = function() {
-
- var localctx = new Grant_permissionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 664, TSqlParser.RULE_grant_permission);
- var _la = 0; // Token type
- try {
- this.state = 8300;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.EXECUTE:
- this.enterOuterAlt(localctx, 1);
- this.state = 8274;
- this.match(TSqlParser.EXECUTE);
- break;
- case TSqlParser.VIEW:
- this.enterOuterAlt(localctx, 2);
- this.state = 8275;
- this.match(TSqlParser.VIEW);
- this.state = 8276;
- this.id();
- break;
- case TSqlParser.TAKE:
- this.enterOuterAlt(localctx, 3);
- this.state = 8277;
- this.match(TSqlParser.TAKE);
- this.state = 8278;
- this.id();
- break;
- case TSqlParser.CONTROL:
- this.enterOuterAlt(localctx, 4);
- this.state = 8279;
- this.match(TSqlParser.CONTROL);
- this.state = 8281;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.CALLED || _la===TSqlParser.DATA_COMPRESSION || ((((_la - 112)) & ~0x1f) == 0 && ((1 << (_la - 112)) & ((1 << (TSqlParser.EVENTDATA - 112)) | (1 << (TSqlParser.FILENAME - 112)) | (1 << (TSqlParser.FILLFACTOR - 112)) | (1 << (TSqlParser.FORCESEEK - 112)))) !== 0) || ((((_la - 158)) & ~0x1f) == 0 && ((1 << (_la - 158)) & ((1 << (TSqlParser.INIT - 158)) | (1 << (TSqlParser.KEY - 158)) | (1 << (TSqlParser.MASTER - 158)) | (1 << (TSqlParser.MAX_MEMORY - 158)))) !== 0) || _la===TSqlParser.OFFSETS || _la===TSqlParser.PAGE || ((((_la - 259)) & ~0x1f) == 0 && ((1 << (_la - 259)) & ((1 << (TSqlParser.PUBLIC - 259)) | (1 << (TSqlParser.R - 259)) | (1 << (TSqlParser.RAW - 259)) | (1 << (TSqlParser.RETURN - 259)) | (1 << (TSqlParser.RETURNS - 259)) | (1 << (TSqlParser.ROWCOUNT - 259)))) !== 0) || ((((_la - 295)) & ~0x1f) == 0 && ((1 << (_la - 295)) & ((1 << (TSqlParser.SAFETY - 295)) | (1 << (TSqlParser.SERVER - 295)) | (1 << (TSqlParser.SID - 295)) | (1 << (TSqlParser.SOURCE - 295)) | (1 << (TSqlParser.SPLIT - 295)))) !== 0) || ((((_la - 327)) & ~0x1f) == 0 && ((1 << (_la - 327)) & ((1 << (TSqlParser.STATE - 327)) | (1 << (TSqlParser.START - 327)) | (1 << (TSqlParser.TARGET - 327)))) !== 0) || ((((_la - 380)) & ~0x1f) == 0 && ((1 << (_la - 380)) & ((1 << (TSqlParser.ABSOLUTE - 380)) | (1 << (TSqlParser.ACCENT_SENSITIVITY - 380)) | (1 << (TSqlParser.ACTION - 380)) | (1 << (TSqlParser.ACTIVATION - 380)) | (1 << (TSqlParser.ACTIVE - 380)) | (1 << (TSqlParser.ADDRESS - 380)) | (1 << (TSqlParser.AES_128 - 380)) | (1 << (TSqlParser.AES_192 - 380)) | (1 << (TSqlParser.AES_256 - 380)) | (1 << (TSqlParser.AFFINITY - 380)) | (1 << (TSqlParser.AFTER - 380)) | (1 << (TSqlParser.AGGREGATE - 380)) | (1 << (TSqlParser.ALGORITHM - 380)) | (1 << (TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS - 380)) | (1 << (TSqlParser.ALLOW_SNAPSHOT_ISOLATION - 380)) | (1 << (TSqlParser.ALLOWED - 380)) | (1 << (TSqlParser.ANSI_NULL_DEFAULT - 380)) | (1 << (TSqlParser.ANSI_NULLS - 380)) | (1 << (TSqlParser.ANSI_PADDING - 380)) | (1 << (TSqlParser.ANSI_WARNINGS - 380)) | (1 << (TSqlParser.APPLICATION_LOG - 380)) | (1 << (TSqlParser.APPLY - 380)) | (1 << (TSqlParser.ARITHABORT - 380)) | (1 << (TSqlParser.ASSEMBLY - 380)) | (1 << (TSqlParser.AUDIT - 380)) | (1 << (TSqlParser.AUDIT_GUID - 380)) | (1 << (TSqlParser.AUTO - 380)) | (1 << (TSqlParser.AUTO_CLEANUP - 380)) | (1 << (TSqlParser.AUTO_CLOSE - 380)) | (1 << (TSqlParser.AUTO_CREATE_STATISTICS - 380)) | (1 << (TSqlParser.AUTO_SHRINK - 380)) | (1 << (TSqlParser.AUTO_UPDATE_STATISTICS - 380)))) !== 0) || ((((_la - 412)) & ~0x1f) == 0 && ((1 << (_la - 412)) & ((1 << (TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC - 412)) | (1 << (TSqlParser.AVAILABILITY - 412)) | (1 << (TSqlParser.AVG - 412)) | (1 << (TSqlParser.BACKUP_PRIORITY - 412)) | (1 << (TSqlParser.BEGIN_DIALOG - 412)) | (1 << (TSqlParser.BIGINT - 412)) | (1 << (TSqlParser.BINARY_BASE64 - 412)) | (1 << (TSqlParser.BINARY_CHECKSUM - 412)) | (1 << (TSqlParser.BINDING - 412)) | (1 << (TSqlParser.BLOB_STORAGE - 412)) | (1 << (TSqlParser.BROKER - 412)) | (1 << (TSqlParser.BROKER_INSTANCE - 412)) | (1 << (TSqlParser.BULK_LOGGED - 412)) | (1 << (TSqlParser.CALLER - 412)) | (1 << (TSqlParser.CAP_CPU_PERCENT - 412)) | (1 << (TSqlParser.CAST - 412)) | (1 << (TSqlParser.CATALOG - 412)) | (1 << (TSqlParser.CATCH - 412)) | (1 << (TSqlParser.CHANGE_RETENTION - 412)) | (1 << (TSqlParser.CHANGE_TRACKING - 412)) | (1 << (TSqlParser.CHECKSUM - 412)) | (1 << (TSqlParser.CHECKSUM_AGG - 412)) | (1 << (TSqlParser.CLEANUP - 412)) | (1 << (TSqlParser.COLLECTION - 412)) | (1 << (TSqlParser.COLUMN_MASTER_KEY - 412)) | (1 << (TSqlParser.COMMITTED - 412)) | (1 << (TSqlParser.COMPATIBILITY_LEVEL - 412)) | (1 << (TSqlParser.CONCAT - 412)) | (1 << (TSqlParser.CONCAT_NULL_YIELDS_NULL - 412)) | (1 << (TSqlParser.CONTENT - 412)) | (1 << (TSqlParser.CONTROL - 412)) | (1 << (TSqlParser.COOKIE - 412)))) !== 0) || ((((_la - 444)) & ~0x1f) == 0 && ((1 << (_la - 444)) & ((1 << (TSqlParser.COUNT - 444)) | (1 << (TSqlParser.COUNT_BIG - 444)) | (1 << (TSqlParser.COUNTER - 444)) | (1 << (TSqlParser.CPU - 444)) | (1 << (TSqlParser.CREATE_NEW - 444)) | (1 << (TSqlParser.CREATION_DISPOSITION - 444)) | (1 << (TSqlParser.CREDENTIAL - 444)) | (1 << (TSqlParser.CRYPTOGRAPHIC - 444)) | (1 << (TSqlParser.CURSOR_CLOSE_ON_COMMIT - 444)) | (1 << (TSqlParser.CURSOR_DEFAULT - 444)) | (1 << (TSqlParser.DATA - 444)) | (1 << (TSqlParser.DATE_CORRELATION_OPTIMIZATION - 444)) | (1 << (TSqlParser.DATEADD - 444)) | (1 << (TSqlParser.DATEDIFF - 444)) | (1 << (TSqlParser.DATENAME - 444)) | (1 << (TSqlParser.DATEPART - 444)) | (1 << (TSqlParser.DAYS - 444)) | (1 << (TSqlParser.DB_CHAINING - 444)) | (1 << (TSqlParser.DB_FAILOVER - 444)) | (1 << (TSqlParser.DECRYPTION - 444)) | (1 << (TSqlParser.DEFAULT_DOUBLE_QUOTE - 444)) | (1 << (TSqlParser.DEFAULT_FULLTEXT_LANGUAGE - 444)) | (1 << (TSqlParser.DEFAULT_LANGUAGE - 444)) | (1 << (TSqlParser.DELAY - 444)) | (1 << (TSqlParser.DELAYED_DURABILITY - 444)) | (1 << (TSqlParser.DELETED - 444)) | (1 << (TSqlParser.DENSE_RANK - 444)) | (1 << (TSqlParser.DEPENDENTS - 444)) | (1 << (TSqlParser.DES - 444)) | (1 << (TSqlParser.DESCRIPTION - 444)) | (1 << (TSqlParser.DESX - 444)) | (1 << (TSqlParser.DHCP - 444)))) !== 0) || ((((_la - 476)) & ~0x1f) == 0 && ((1 << (_la - 476)) & ((1 << (TSqlParser.DIALOG - 476)) | (1 << (TSqlParser.DIRECTORY_NAME - 476)) | (1 << (TSqlParser.DISABLE - 476)) | (1 << (TSqlParser.DISABLE_BROKER - 476)) | (1 << (TSqlParser.DISABLED - 476)) | (1 << (TSqlParser.DISK_DRIVE - 476)) | (1 << (TSqlParser.DOCUMENT - 476)) | (1 << (TSqlParser.DYNAMIC - 476)) | (1 << (TSqlParser.EMERGENCY - 476)) | (1 << (TSqlParser.EMPTY - 476)) | (1 << (TSqlParser.ENABLE - 476)) | (1 << (TSqlParser.ENABLE_BROKER - 476)) | (1 << (TSqlParser.ENCRYPTED_VALUE - 476)) | (1 << (TSqlParser.ENCRYPTION - 476)) | (1 << (TSqlParser.ENDPOINT_URL - 476)) | (1 << (TSqlParser.ERROR_BROKER_CONVERSATIONS - 476)) | (1 << (TSqlParser.EXCLUSIVE - 476)) | (1 << (TSqlParser.EXECUTABLE - 476)) | (1 << (TSqlParser.EXIST - 476)) | (1 << (TSqlParser.EXPAND - 476)) | (1 << (TSqlParser.EXPIRY_DATE - 476)) | (1 << (TSqlParser.EXPLICIT - 476)) | (1 << (TSqlParser.FAIL_OPERATION - 476)) | (1 << (TSqlParser.FAILOVER_MODE - 476)) | (1 << (TSqlParser.FAILURE - 476)) | (1 << (TSqlParser.FAILURE_CONDITION_LEVEL - 476)) | (1 << (TSqlParser.FAST - 476)) | (1 << (TSqlParser.FAST_FORWARD - 476)) | (1 << (TSqlParser.FILEGROUP - 476)) | (1 << (TSqlParser.FILEGROWTH - 476)) | (1 << (TSqlParser.FILEPATH - 476)))) !== 0) || ((((_la - 508)) & ~0x1f) == 0 && ((1 << (_la - 508)) & ((1 << (TSqlParser.FILESTREAM - 508)) | (1 << (TSqlParser.FILTER - 508)) | (1 << (TSqlParser.FIRST - 508)) | (1 << (TSqlParser.FIRST_VALUE - 508)) | (1 << (TSqlParser.FOLLOWING - 508)) | (1 << (TSqlParser.FORCE - 508)) | (1 << (TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS - 508)) | (1 << (TSqlParser.FORCED - 508)) | (1 << (TSqlParser.FORMAT - 508)) | (1 << (TSqlParser.FORWARD_ONLY - 508)) | (1 << (TSqlParser.FULLSCAN - 508)) | (1 << (TSqlParser.FULLTEXT - 508)) | (1 << (TSqlParser.GB - 508)) | (1 << (TSqlParser.GETDATE - 508)) | (1 << (TSqlParser.GETUTCDATE - 508)) | (1 << (TSqlParser.GLOBAL - 508)) | (1 << (TSqlParser.GO - 508)) | (1 << (TSqlParser.GROUP_MAX_REQUESTS - 508)) | (1 << (TSqlParser.GROUPING - 508)) | (1 << (TSqlParser.GROUPING_ID - 508)) | (1 << (TSqlParser.HADR - 508)) | (1 << (TSqlParser.HASH - 508)) | (1 << (TSqlParser.HEALTH_CHECK_TIMEOUT - 508)) | (1 << (TSqlParser.HIGH - 508)) | (1 << (TSqlParser.HONOR_BROKER_PRIORITY - 508)) | (1 << (TSqlParser.HOURS - 508)) | (1 << (TSqlParser.IDENTITY_VALUE - 508)) | (1 << (TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX - 508)) | (1 << (TSqlParser.IMMEDIATE - 508)) | (1 << (TSqlParser.IMPERSONATE - 508)) | (1 << (TSqlParser.IMPORTANCE - 508)))) !== 0) || ((((_la - 540)) & ~0x1f) == 0 && ((1 << (_la - 540)) & ((1 << (TSqlParser.INCREMENTAL - 540)) | (1 << (TSqlParser.INITIATOR - 540)) | (1 << (TSqlParser.INPUT - 540)) | (1 << (TSqlParser.INSENSITIVE - 540)) | (1 << (TSqlParser.INSERTED - 540)) | (1 << (TSqlParser.INT - 540)) | (1 << (TSqlParser.IP - 540)) | (1 << (TSqlParser.ISOLATION - 540)) | (1 << (TSqlParser.KB - 540)) | (1 << (TSqlParser.KEEP - 540)) | (1 << (TSqlParser.KEEPFIXED - 540)) | (1 << (TSqlParser.KEY_SOURCE - 540)) | (1 << (TSqlParser.KEYS - 540)) | (1 << (TSqlParser.KEYSET - 540)) | (1 << (TSqlParser.LAG - 540)) | (1 << (TSqlParser.LAST - 540)) | (1 << (TSqlParser.LAST_VALUE - 540)) | (1 << (TSqlParser.LEAD - 540)) | (1 << (TSqlParser.LEVEL - 540)) | (1 << (TSqlParser.LIST - 540)) | (1 << (TSqlParser.LISTENER - 540)) | (1 << (TSqlParser.LISTENER_URL - 540)) | (1 << (TSqlParser.LOB_COMPACTION - 540)) | (1 << (TSqlParser.LOCAL - 540)) | (1 << (TSqlParser.LOCATION - 540)) | (1 << (TSqlParser.LOCK - 540)) | (1 << (TSqlParser.LOCK_ESCALATION - 540)) | (1 << (TSqlParser.LOGIN - 540)) | (1 << (TSqlParser.LOOP - 540)) | (1 << (TSqlParser.LOW - 540)))) !== 0) || ((((_la - 572)) & ~0x1f) == 0 && ((1 << (_la - 572)) & ((1 << (TSqlParser.MANUAL - 572)) | (1 << (TSqlParser.MARK - 572)) | (1 << (TSqlParser.MATERIALIZED - 572)) | (1 << (TSqlParser.MAX - 572)) | (1 << (TSqlParser.MAX_CPU_PERCENT - 572)) | (1 << (TSqlParser.MAX_DOP - 572)) | (1 << (TSqlParser.MAX_FILES - 572)) | (1 << (TSqlParser.MAX_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MAX_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MAX_PROCESSES - 572)) | (1 << (TSqlParser.MAX_QUEUE_READERS - 572)) | (1 << (TSqlParser.MAX_ROLLOVER_FILES - 572)) | (1 << (TSqlParser.MAXDOP - 572)) | (1 << (TSqlParser.MAXRECURSION - 572)) | (1 << (TSqlParser.MAXSIZE - 572)) | (1 << (TSqlParser.MB - 572)) | (1 << (TSqlParser.MEDIUM - 572)) | (1 << (TSqlParser.MEMORY_OPTIMIZED_DATA - 572)) | (1 << (TSqlParser.MESSAGE - 572)) | (1 << (TSqlParser.MIN - 572)) | (1 << (TSqlParser.MIN_ACTIVE_ROWVERSION - 572)) | (1 << (TSqlParser.MIN_CPU_PERCENT - 572)) | (1 << (TSqlParser.MIN_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MIN_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MINUTES - 572)) | (1 << (TSqlParser.MIRROR_ADDRESS - 572)) | (1 << (TSqlParser.MIXED_PAGE_ALLOCATION - 572)) | (1 << (TSqlParser.MODE - 572)) | (1 << (TSqlParser.MODIFY - 572)) | (1 << (TSqlParser.MOVE - 572)) | (1 << (TSqlParser.MULTI_USER - 572)) | (1 << (TSqlParser.NAME - 572)))) !== 0) || ((((_la - 604)) & ~0x1f) == 0 && ((1 << (_la - 604)) & ((1 << (TSqlParser.NESTED_TRIGGERS - 604)) | (1 << (TSqlParser.NEW_ACCOUNT - 604)) | (1 << (TSqlParser.NEW_BROKER - 604)) | (1 << (TSqlParser.NEW_PASSWORD - 604)) | (1 << (TSqlParser.NEXT - 604)) | (1 << (TSqlParser.NO - 604)) | (1 << (TSqlParser.NO_TRUNCATE - 604)) | (1 << (TSqlParser.NO_WAIT - 604)) | (1 << (TSqlParser.NOCOUNT - 604)) | (1 << (TSqlParser.NODES - 604)) | (1 << (TSqlParser.NOEXPAND - 604)) | (1 << (TSqlParser.NON_TRANSACTED_ACCESS - 604)) | (1 << (TSqlParser.NORECOMPUTE - 604)) | (1 << (TSqlParser.NORECOVERY - 604)) | (1 << (TSqlParser.NOWAIT - 604)) | (1 << (TSqlParser.NTILE - 604)) | (1 << (TSqlParser.NUMANODE - 604)) | (1 << (TSqlParser.NUMBER - 604)) | (1 << (TSqlParser.NUMERIC_ROUNDABORT - 604)) | (1 << (TSqlParser.OBJECT - 604)) | (1 << (TSqlParser.OFFLINE - 604)) | (1 << (TSqlParser.OFFSET - 604)) | (1 << (TSqlParser.OLD_ACCOUNT - 604)) | (1 << (TSqlParser.ONLINE - 604)) | (1 << (TSqlParser.ONLY - 604)) | (1 << (TSqlParser.OPEN_EXISTING - 604)) | (1 << (TSqlParser.OPTIMISTIC - 604)) | (1 << (TSqlParser.OPTIMIZE - 604)) | (1 << (TSqlParser.OUT - 604)) | (1 << (TSqlParser.OUTPUT - 604)) | (1 << (TSqlParser.OWNER - 604)))) !== 0) || ((((_la - 636)) & ~0x1f) == 0 && ((1 << (_la - 636)) & ((1 << (TSqlParser.PAGE_VERIFY - 636)) | (1 << (TSqlParser.PARAMETERIZATION - 636)) | (1 << (TSqlParser.PARTITION - 636)) | (1 << (TSqlParser.PARTITIONS - 636)) | (1 << (TSqlParser.PARTNER - 636)) | (1 << (TSqlParser.PATH - 636)) | (1 << (TSqlParser.POISON_MESSAGE_HANDLING - 636)) | (1 << (TSqlParser.POOL - 636)) | (1 << (TSqlParser.PORT - 636)) | (1 << (TSqlParser.PRECEDING - 636)) | (1 << (TSqlParser.PRIMARY_ROLE - 636)) | (1 << (TSqlParser.PRIOR - 636)) | (1 << (TSqlParser.PRIORITY - 636)) | (1 << (TSqlParser.PRIORITY_LEVEL - 636)) | (1 << (TSqlParser.PRIVATE - 636)) | (1 << (TSqlParser.PRIVATE_KEY - 636)) | (1 << (TSqlParser.PRIVILEGES - 636)) | (1 << (TSqlParser.PROCEDURE_NAME - 636)) | (1 << (TSqlParser.PROPERTY - 636)) | (1 << (TSqlParser.PROVIDER - 636)) | (1 << (TSqlParser.PROVIDER_KEY_NAME - 636)) | (1 << (TSqlParser.QUERY - 636)) | (1 << (TSqlParser.QUEUE - 636)) | (1 << (TSqlParser.QUEUE_DELAY - 636)) | (1 << (TSqlParser.QUOTED_IDENTIFIER - 636)) | (1 << (TSqlParser.RANGE - 636)) | (1 << (TSqlParser.RANK - 636)) | (1 << (TSqlParser.RC2 - 636)) | (1 << (TSqlParser.RC4 - 636)) | (1 << (TSqlParser.RC4_128 - 636)) | (1 << (TSqlParser.READ_COMMITTED_SNAPSHOT - 636)) | (1 << (TSqlParser.READ_ONLY - 636)))) !== 0) || ((((_la - 668)) & ~0x1f) == 0 && ((1 << (_la - 668)) & ((1 << (TSqlParser.READ_ONLY_ROUTING_LIST - 668)) | (1 << (TSqlParser.READ_WRITE - 668)) | (1 << (TSqlParser.READONLY - 668)) | (1 << (TSqlParser.REBUILD - 668)) | (1 << (TSqlParser.RECEIVE - 668)) | (1 << (TSqlParser.RECOMPILE - 668)) | (1 << (TSqlParser.RECOVERY - 668)) | (1 << (TSqlParser.RECURSIVE_TRIGGERS - 668)) | (1 << (TSqlParser.RELATIVE - 668)) | (1 << (TSqlParser.REMOTE - 668)) | (1 << (TSqlParser.REMOTE_SERVICE_NAME - 668)) | (1 << (TSqlParser.REMOVE - 668)) | (1 << (TSqlParser.REORGANIZE - 668)) | (1 << (TSqlParser.REPEATABLE - 668)) | (1 << (TSqlParser.REPLICA - 668)) | (1 << (TSqlParser.REQUEST_MAX_CPU_TIME_SEC - 668)) | (1 << (TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT - 668)) | (1 << (TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC - 668)) | (1 << (TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT - 668)) | (1 << (TSqlParser.RESERVE_DISK_SPACE - 668)) | (1 << (TSqlParser.RESOURCE - 668)) | (1 << (TSqlParser.RESOURCE_MANAGER_LOCATION - 668)) | (1 << (TSqlParser.RESTRICTED_USER - 668)) | (1 << (TSqlParser.RETENTION - 668)) | (1 << (TSqlParser.ROBUST - 668)) | (1 << (TSqlParser.ROOT - 668)) | (1 << (TSqlParser.ROUTE - 668)) | (1 << (TSqlParser.ROW - 668)) | (1 << (TSqlParser.ROW_NUMBER - 668)) | (1 << (TSqlParser.ROWGUID - 668)) | (1 << (TSqlParser.ROWS - 668)) | (1 << (TSqlParser.SAMPLE - 668)))) !== 0) || ((((_la - 700)) & ~0x1f) == 0 && ((1 << (_la - 700)) & ((1 << (TSqlParser.SCHEMABINDING - 700)) | (1 << (TSqlParser.SCOPED - 700)) | (1 << (TSqlParser.SCROLL - 700)) | (1 << (TSqlParser.SCROLL_LOCKS - 700)) | (1 << (TSqlParser.SEARCH - 700)) | (1 << (TSqlParser.SECONDARY - 700)) | (1 << (TSqlParser.SECONDARY_ONLY - 700)) | (1 << (TSqlParser.SECONDARY_ROLE - 700)) | (1 << (TSqlParser.SECONDS - 700)) | (1 << (TSqlParser.SECRET - 700)) | (1 << (TSqlParser.SECURITY - 700)) | (1 << (TSqlParser.SECURITY_LOG - 700)) | (1 << (TSqlParser.SEEDING_MODE - 700)) | (1 << (TSqlParser.SELF - 700)) | (1 << (TSqlParser.SEMI_SENSITIVE - 700)) | (1 << (TSqlParser.SEND - 700)) | (1 << (TSqlParser.SENT - 700)) | (1 << (TSqlParser.SEQUENCE - 700)) | (1 << (TSqlParser.SERIALIZABLE - 700)) | (1 << (TSqlParser.SESSION_TIMEOUT - 700)) | (1 << (TSqlParser.SETERROR - 700)) | (1 << (TSqlParser.SHARE - 700)) | (1 << (TSqlParser.SHOWPLAN - 700)) | (1 << (TSqlParser.SIGNATURE - 700)) | (1 << (TSqlParser.SIMPLE - 700)) | (1 << (TSqlParser.SINGLE_USER - 700)) | (1 << (TSqlParser.SIZE - 700)) | (1 << (TSqlParser.SMALLINT - 700)) | (1 << (TSqlParser.SNAPSHOT - 700)) | (1 << (TSqlParser.SPATIAL_WINDOW_MAX_CELLS - 700)) | (1 << (TSqlParser.STANDBY - 700)) | (1 << (TSqlParser.START_DATE - 700)))) !== 0) || ((((_la - 732)) & ~0x1f) == 0 && ((1 << (_la - 732)) & ((1 << (TSqlParser.STATIC - 732)) | (1 << (TSqlParser.STATS_STREAM - 732)) | (1 << (TSqlParser.STATUS - 732)) | (1 << (TSqlParser.STDEV - 732)) | (1 << (TSqlParser.STDEVP - 732)) | (1 << (TSqlParser.STOPLIST - 732)) | (1 << (TSqlParser.STRING_AGG - 732)) | (1 << (TSqlParser.STUFF - 732)) | (1 << (TSqlParser.SUBJECT - 732)) | (1 << (TSqlParser.SUM - 732)) | (1 << (TSqlParser.SUSPEND - 732)) | (1 << (TSqlParser.SYMMETRIC - 732)) | (1 << (TSqlParser.SYNCHRONOUS_COMMIT - 732)) | (1 << (TSqlParser.SYNONYM - 732)) | (1 << (TSqlParser.SYSTEM - 732)) | (1 << (TSqlParser.TAKE - 732)) | (1 << (TSqlParser.TARGET_RECOVERY_TIME - 732)) | (1 << (TSqlParser.TB - 732)) | (1 << (TSqlParser.TEXTIMAGE_ON - 732)) | (1 << (TSqlParser.THROW - 732)) | (1 << (TSqlParser.TIES - 732)) | (1 << (TSqlParser.TIME - 732)) | (1 << (TSqlParser.TIMEOUT - 732)) | (1 << (TSqlParser.TIMER - 732)) | (1 << (TSqlParser.TINYINT - 732)) | (1 << (TSqlParser.TORN_PAGE_DETECTION - 732)) | (1 << (TSqlParser.TRANSFORM_NOISE_WORDS - 732)) | (1 << (TSqlParser.TRIPLE_DES - 732)) | (1 << (TSqlParser.TRIPLE_DES_3KEY - 732)) | (1 << (TSqlParser.TRUSTWORTHY - 732)))) !== 0) || ((((_la - 764)) & ~0x1f) == 0 && ((1 << (_la - 764)) & ((1 << (TSqlParser.TRY - 764)) | (1 << (TSqlParser.TSQL - 764)) | (1 << (TSqlParser.TWO_DIGIT_YEAR_CUTOFF - 764)) | (1 << (TSqlParser.TYPE - 764)) | (1 << (TSqlParser.TYPE_WARNING - 764)) | (1 << (TSqlParser.UNBOUNDED - 764)) | (1 << (TSqlParser.UNCOMMITTED - 764)) | (1 << (TSqlParser.UNKNOWN - 764)) | (1 << (TSqlParser.UNLIMITED - 764)) | (1 << (TSqlParser.USING - 764)) | (1 << (TSqlParser.VALID_XML - 764)) | (1 << (TSqlParser.VALIDATION - 764)) | (1 << (TSqlParser.VALUE - 764)) | (1 << (TSqlParser.VAR - 764)) | (1 << (TSqlParser.VARP - 764)) | (1 << (TSqlParser.VIEW_METADATA - 764)) | (1 << (TSqlParser.VIEWS - 764)) | (1 << (TSqlParser.WAIT - 764)) | (1 << (TSqlParser.WELL_FORMED_XML - 764)) | (1 << (TSqlParser.WORK - 764)) | (1 << (TSqlParser.WORKLOAD - 764)) | (1 << (TSqlParser.XML - 764)) | (1 << (TSqlParser.XMLNAMESPACES - 764)))) !== 0) || ((((_la - 796)) & ~0x1f) == 0 && ((1 << (_la - 796)) & ((1 << (TSqlParser.DOUBLE_QUOTE_ID - 796)) | (1 << (TSqlParser.SQUARE_BRACKET_ID - 796)) | (1 << (TSqlParser.ID - 796)))) !== 0)) {
- this.state = 8280;
- this.id();
- }
-
- break;
- case TSqlParser.CREATE:
- this.enterOuterAlt(localctx, 5);
- this.state = 8283;
- this.match(TSqlParser.CREATE);
- this.state = 8284;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.TABLE || _la===TSqlParser.VIEW)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- case TSqlParser.SHOWPLAN:
- this.enterOuterAlt(localctx, 6);
- this.state = 8285;
- this.match(TSqlParser.SHOWPLAN);
- break;
- case TSqlParser.IMPERSONATE:
- this.enterOuterAlt(localctx, 7);
- this.state = 8286;
- this.match(TSqlParser.IMPERSONATE);
- break;
- case TSqlParser.SELECT:
- this.enterOuterAlt(localctx, 8);
- this.state = 8287;
- this.match(TSqlParser.SELECT);
- break;
- case TSqlParser.REFERENCES:
- this.enterOuterAlt(localctx, 9);
- this.state = 8288;
- this.match(TSqlParser.REFERENCES);
- break;
- case TSqlParser.INSERT:
- this.enterOuterAlt(localctx, 10);
- this.state = 8289;
- this.match(TSqlParser.INSERT);
- break;
- case TSqlParser.ALTER:
- this.enterOuterAlt(localctx, 11);
- this.state = 8290;
- this.match(TSqlParser.ALTER);
- this.state = 8298;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.ANY || _la===TSqlParser.CALLED || _la===TSqlParser.DATA_COMPRESSION || _la===TSqlParser.DATABASE || ((((_la - 112)) & ~0x1f) == 0 && ((1 << (_la - 112)) & ((1 << (TSqlParser.EVENTDATA - 112)) | (1 << (TSqlParser.FILENAME - 112)) | (1 << (TSqlParser.FILLFACTOR - 112)) | (1 << (TSqlParser.FORCESEEK - 112)))) !== 0) || ((((_la - 158)) & ~0x1f) == 0 && ((1 << (_la - 158)) & ((1 << (TSqlParser.INIT - 158)) | (1 << (TSqlParser.KEY - 158)) | (1 << (TSqlParser.MASTER - 158)) | (1 << (TSqlParser.MAX_MEMORY - 158)))) !== 0) || _la===TSqlParser.OFFSETS || _la===TSqlParser.PAGE || ((((_la - 259)) & ~0x1f) == 0 && ((1 << (_la - 259)) & ((1 << (TSqlParser.PUBLIC - 259)) | (1 << (TSqlParser.R - 259)) | (1 << (TSqlParser.RAW - 259)) | (1 << (TSqlParser.RETURN - 259)) | (1 << (TSqlParser.RETURNS - 259)) | (1 << (TSqlParser.ROWCOUNT - 259)))) !== 0) || ((((_la - 295)) & ~0x1f) == 0 && ((1 << (_la - 295)) & ((1 << (TSqlParser.SAFETY - 295)) | (1 << (TSqlParser.SERVER - 295)) | (1 << (TSqlParser.SID - 295)) | (1 << (TSqlParser.SOURCE - 295)) | (1 << (TSqlParser.SPLIT - 295)))) !== 0) || ((((_la - 327)) & ~0x1f) == 0 && ((1 << (_la - 327)) & ((1 << (TSqlParser.STATE - 327)) | (1 << (TSqlParser.START - 327)) | (1 << (TSqlParser.TARGET - 327)))) !== 0) || ((((_la - 380)) & ~0x1f) == 0 && ((1 << (_la - 380)) & ((1 << (TSqlParser.ABSOLUTE - 380)) | (1 << (TSqlParser.ACCENT_SENSITIVITY - 380)) | (1 << (TSqlParser.ACTION - 380)) | (1 << (TSqlParser.ACTIVATION - 380)) | (1 << (TSqlParser.ACTIVE - 380)) | (1 << (TSqlParser.ADDRESS - 380)) | (1 << (TSqlParser.AES_128 - 380)) | (1 << (TSqlParser.AES_192 - 380)) | (1 << (TSqlParser.AES_256 - 380)) | (1 << (TSqlParser.AFFINITY - 380)) | (1 << (TSqlParser.AFTER - 380)) | (1 << (TSqlParser.AGGREGATE - 380)) | (1 << (TSqlParser.ALGORITHM - 380)) | (1 << (TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS - 380)) | (1 << (TSqlParser.ALLOW_SNAPSHOT_ISOLATION - 380)) | (1 << (TSqlParser.ALLOWED - 380)) | (1 << (TSqlParser.ANSI_NULL_DEFAULT - 380)) | (1 << (TSqlParser.ANSI_NULLS - 380)) | (1 << (TSqlParser.ANSI_PADDING - 380)) | (1 << (TSqlParser.ANSI_WARNINGS - 380)) | (1 << (TSqlParser.APPLICATION_LOG - 380)) | (1 << (TSqlParser.APPLY - 380)) | (1 << (TSqlParser.ARITHABORT - 380)) | (1 << (TSqlParser.ASSEMBLY - 380)) | (1 << (TSqlParser.AUDIT - 380)) | (1 << (TSqlParser.AUDIT_GUID - 380)) | (1 << (TSqlParser.AUTO - 380)) | (1 << (TSqlParser.AUTO_CLEANUP - 380)) | (1 << (TSqlParser.AUTO_CLOSE - 380)) | (1 << (TSqlParser.AUTO_CREATE_STATISTICS - 380)) | (1 << (TSqlParser.AUTO_SHRINK - 380)) | (1 << (TSqlParser.AUTO_UPDATE_STATISTICS - 380)))) !== 0) || ((((_la - 412)) & ~0x1f) == 0 && ((1 << (_la - 412)) & ((1 << (TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC - 412)) | (1 << (TSqlParser.AVAILABILITY - 412)) | (1 << (TSqlParser.AVG - 412)) | (1 << (TSqlParser.BACKUP_PRIORITY - 412)) | (1 << (TSqlParser.BEGIN_DIALOG - 412)) | (1 << (TSqlParser.BIGINT - 412)) | (1 << (TSqlParser.BINARY_BASE64 - 412)) | (1 << (TSqlParser.BINARY_CHECKSUM - 412)) | (1 << (TSqlParser.BINDING - 412)) | (1 << (TSqlParser.BLOB_STORAGE - 412)) | (1 << (TSqlParser.BROKER - 412)) | (1 << (TSqlParser.BROKER_INSTANCE - 412)) | (1 << (TSqlParser.BULK_LOGGED - 412)) | (1 << (TSqlParser.CALLER - 412)) | (1 << (TSqlParser.CAP_CPU_PERCENT - 412)) | (1 << (TSqlParser.CAST - 412)) | (1 << (TSqlParser.CATALOG - 412)) | (1 << (TSqlParser.CATCH - 412)) | (1 << (TSqlParser.CHANGE_RETENTION - 412)) | (1 << (TSqlParser.CHANGE_TRACKING - 412)) | (1 << (TSqlParser.CHECKSUM - 412)) | (1 << (TSqlParser.CHECKSUM_AGG - 412)) | (1 << (TSqlParser.CLEANUP - 412)) | (1 << (TSqlParser.COLLECTION - 412)) | (1 << (TSqlParser.COLUMN_MASTER_KEY - 412)) | (1 << (TSqlParser.COMMITTED - 412)) | (1 << (TSqlParser.COMPATIBILITY_LEVEL - 412)) | (1 << (TSqlParser.CONCAT - 412)) | (1 << (TSqlParser.CONCAT_NULL_YIELDS_NULL - 412)) | (1 << (TSqlParser.CONTENT - 412)) | (1 << (TSqlParser.CONTROL - 412)) | (1 << (TSqlParser.COOKIE - 412)))) !== 0) || ((((_la - 444)) & ~0x1f) == 0 && ((1 << (_la - 444)) & ((1 << (TSqlParser.COUNT - 444)) | (1 << (TSqlParser.COUNT_BIG - 444)) | (1 << (TSqlParser.COUNTER - 444)) | (1 << (TSqlParser.CPU - 444)) | (1 << (TSqlParser.CREATE_NEW - 444)) | (1 << (TSqlParser.CREATION_DISPOSITION - 444)) | (1 << (TSqlParser.CREDENTIAL - 444)) | (1 << (TSqlParser.CRYPTOGRAPHIC - 444)) | (1 << (TSqlParser.CURSOR_CLOSE_ON_COMMIT - 444)) | (1 << (TSqlParser.CURSOR_DEFAULT - 444)) | (1 << (TSqlParser.DATA - 444)) | (1 << (TSqlParser.DATE_CORRELATION_OPTIMIZATION - 444)) | (1 << (TSqlParser.DATEADD - 444)) | (1 << (TSqlParser.DATEDIFF - 444)) | (1 << (TSqlParser.DATENAME - 444)) | (1 << (TSqlParser.DATEPART - 444)) | (1 << (TSqlParser.DAYS - 444)) | (1 << (TSqlParser.DB_CHAINING - 444)) | (1 << (TSqlParser.DB_FAILOVER - 444)) | (1 << (TSqlParser.DECRYPTION - 444)) | (1 << (TSqlParser.DEFAULT_DOUBLE_QUOTE - 444)) | (1 << (TSqlParser.DEFAULT_FULLTEXT_LANGUAGE - 444)) | (1 << (TSqlParser.DEFAULT_LANGUAGE - 444)) | (1 << (TSqlParser.DELAY - 444)) | (1 << (TSqlParser.DELAYED_DURABILITY - 444)) | (1 << (TSqlParser.DELETED - 444)) | (1 << (TSqlParser.DENSE_RANK - 444)) | (1 << (TSqlParser.DEPENDENTS - 444)) | (1 << (TSqlParser.DES - 444)) | (1 << (TSqlParser.DESCRIPTION - 444)) | (1 << (TSqlParser.DESX - 444)) | (1 << (TSqlParser.DHCP - 444)))) !== 0) || ((((_la - 476)) & ~0x1f) == 0 && ((1 << (_la - 476)) & ((1 << (TSqlParser.DIALOG - 476)) | (1 << (TSqlParser.DIRECTORY_NAME - 476)) | (1 << (TSqlParser.DISABLE - 476)) | (1 << (TSqlParser.DISABLE_BROKER - 476)) | (1 << (TSqlParser.DISABLED - 476)) | (1 << (TSqlParser.DISK_DRIVE - 476)) | (1 << (TSqlParser.DOCUMENT - 476)) | (1 << (TSqlParser.DYNAMIC - 476)) | (1 << (TSqlParser.EMERGENCY - 476)) | (1 << (TSqlParser.EMPTY - 476)) | (1 << (TSqlParser.ENABLE - 476)) | (1 << (TSqlParser.ENABLE_BROKER - 476)) | (1 << (TSqlParser.ENCRYPTED_VALUE - 476)) | (1 << (TSqlParser.ENCRYPTION - 476)) | (1 << (TSqlParser.ENDPOINT_URL - 476)) | (1 << (TSqlParser.ERROR_BROKER_CONVERSATIONS - 476)) | (1 << (TSqlParser.EXCLUSIVE - 476)) | (1 << (TSqlParser.EXECUTABLE - 476)) | (1 << (TSqlParser.EXIST - 476)) | (1 << (TSqlParser.EXPAND - 476)) | (1 << (TSqlParser.EXPIRY_DATE - 476)) | (1 << (TSqlParser.EXPLICIT - 476)) | (1 << (TSqlParser.FAIL_OPERATION - 476)) | (1 << (TSqlParser.FAILOVER_MODE - 476)) | (1 << (TSqlParser.FAILURE - 476)) | (1 << (TSqlParser.FAILURE_CONDITION_LEVEL - 476)) | (1 << (TSqlParser.FAST - 476)) | (1 << (TSqlParser.FAST_FORWARD - 476)) | (1 << (TSqlParser.FILEGROUP - 476)) | (1 << (TSqlParser.FILEGROWTH - 476)) | (1 << (TSqlParser.FILEPATH - 476)))) !== 0) || ((((_la - 508)) & ~0x1f) == 0 && ((1 << (_la - 508)) & ((1 << (TSqlParser.FILESTREAM - 508)) | (1 << (TSqlParser.FILTER - 508)) | (1 << (TSqlParser.FIRST - 508)) | (1 << (TSqlParser.FIRST_VALUE - 508)) | (1 << (TSqlParser.FOLLOWING - 508)) | (1 << (TSqlParser.FORCE - 508)) | (1 << (TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS - 508)) | (1 << (TSqlParser.FORCED - 508)) | (1 << (TSqlParser.FORMAT - 508)) | (1 << (TSqlParser.FORWARD_ONLY - 508)) | (1 << (TSqlParser.FULLSCAN - 508)) | (1 << (TSqlParser.FULLTEXT - 508)) | (1 << (TSqlParser.GB - 508)) | (1 << (TSqlParser.GETDATE - 508)) | (1 << (TSqlParser.GETUTCDATE - 508)) | (1 << (TSqlParser.GLOBAL - 508)) | (1 << (TSqlParser.GO - 508)) | (1 << (TSqlParser.GROUP_MAX_REQUESTS - 508)) | (1 << (TSqlParser.GROUPING - 508)) | (1 << (TSqlParser.GROUPING_ID - 508)) | (1 << (TSqlParser.HADR - 508)) | (1 << (TSqlParser.HASH - 508)) | (1 << (TSqlParser.HEALTH_CHECK_TIMEOUT - 508)) | (1 << (TSqlParser.HIGH - 508)) | (1 << (TSqlParser.HONOR_BROKER_PRIORITY - 508)) | (1 << (TSqlParser.HOURS - 508)) | (1 << (TSqlParser.IDENTITY_VALUE - 508)) | (1 << (TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX - 508)) | (1 << (TSqlParser.IMMEDIATE - 508)) | (1 << (TSqlParser.IMPERSONATE - 508)) | (1 << (TSqlParser.IMPORTANCE - 508)))) !== 0) || ((((_la - 540)) & ~0x1f) == 0 && ((1 << (_la - 540)) & ((1 << (TSqlParser.INCREMENTAL - 540)) | (1 << (TSqlParser.INITIATOR - 540)) | (1 << (TSqlParser.INPUT - 540)) | (1 << (TSqlParser.INSENSITIVE - 540)) | (1 << (TSqlParser.INSERTED - 540)) | (1 << (TSqlParser.INT - 540)) | (1 << (TSqlParser.IP - 540)) | (1 << (TSqlParser.ISOLATION - 540)) | (1 << (TSqlParser.KB - 540)) | (1 << (TSqlParser.KEEP - 540)) | (1 << (TSqlParser.KEEPFIXED - 540)) | (1 << (TSqlParser.KEY_SOURCE - 540)) | (1 << (TSqlParser.KEYS - 540)) | (1 << (TSqlParser.KEYSET - 540)) | (1 << (TSqlParser.LAG - 540)) | (1 << (TSqlParser.LAST - 540)) | (1 << (TSqlParser.LAST_VALUE - 540)) | (1 << (TSqlParser.LEAD - 540)) | (1 << (TSqlParser.LEVEL - 540)) | (1 << (TSqlParser.LIST - 540)) | (1 << (TSqlParser.LISTENER - 540)) | (1 << (TSqlParser.LISTENER_URL - 540)) | (1 << (TSqlParser.LOB_COMPACTION - 540)) | (1 << (TSqlParser.LOCAL - 540)) | (1 << (TSqlParser.LOCATION - 540)) | (1 << (TSqlParser.LOCK - 540)) | (1 << (TSqlParser.LOCK_ESCALATION - 540)) | (1 << (TSqlParser.LOGIN - 540)) | (1 << (TSqlParser.LOOP - 540)) | (1 << (TSqlParser.LOW - 540)))) !== 0) || ((((_la - 572)) & ~0x1f) == 0 && ((1 << (_la - 572)) & ((1 << (TSqlParser.MANUAL - 572)) | (1 << (TSqlParser.MARK - 572)) | (1 << (TSqlParser.MATERIALIZED - 572)) | (1 << (TSqlParser.MAX - 572)) | (1 << (TSqlParser.MAX_CPU_PERCENT - 572)) | (1 << (TSqlParser.MAX_DOP - 572)) | (1 << (TSqlParser.MAX_FILES - 572)) | (1 << (TSqlParser.MAX_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MAX_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MAX_PROCESSES - 572)) | (1 << (TSqlParser.MAX_QUEUE_READERS - 572)) | (1 << (TSqlParser.MAX_ROLLOVER_FILES - 572)) | (1 << (TSqlParser.MAXDOP - 572)) | (1 << (TSqlParser.MAXRECURSION - 572)) | (1 << (TSqlParser.MAXSIZE - 572)) | (1 << (TSqlParser.MB - 572)) | (1 << (TSqlParser.MEDIUM - 572)) | (1 << (TSqlParser.MEMORY_OPTIMIZED_DATA - 572)) | (1 << (TSqlParser.MESSAGE - 572)) | (1 << (TSqlParser.MIN - 572)) | (1 << (TSqlParser.MIN_ACTIVE_ROWVERSION - 572)) | (1 << (TSqlParser.MIN_CPU_PERCENT - 572)) | (1 << (TSqlParser.MIN_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MIN_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MINUTES - 572)) | (1 << (TSqlParser.MIRROR_ADDRESS - 572)) | (1 << (TSqlParser.MIXED_PAGE_ALLOCATION - 572)) | (1 << (TSqlParser.MODE - 572)) | (1 << (TSqlParser.MODIFY - 572)) | (1 << (TSqlParser.MOVE - 572)) | (1 << (TSqlParser.MULTI_USER - 572)) | (1 << (TSqlParser.NAME - 572)))) !== 0) || ((((_la - 604)) & ~0x1f) == 0 && ((1 << (_la - 604)) & ((1 << (TSqlParser.NESTED_TRIGGERS - 604)) | (1 << (TSqlParser.NEW_ACCOUNT - 604)) | (1 << (TSqlParser.NEW_BROKER - 604)) | (1 << (TSqlParser.NEW_PASSWORD - 604)) | (1 << (TSqlParser.NEXT - 604)) | (1 << (TSqlParser.NO - 604)) | (1 << (TSqlParser.NO_TRUNCATE - 604)) | (1 << (TSqlParser.NO_WAIT - 604)) | (1 << (TSqlParser.NOCOUNT - 604)) | (1 << (TSqlParser.NODES - 604)) | (1 << (TSqlParser.NOEXPAND - 604)) | (1 << (TSqlParser.NON_TRANSACTED_ACCESS - 604)) | (1 << (TSqlParser.NORECOMPUTE - 604)) | (1 << (TSqlParser.NORECOVERY - 604)) | (1 << (TSqlParser.NOWAIT - 604)) | (1 << (TSqlParser.NTILE - 604)) | (1 << (TSqlParser.NUMANODE - 604)) | (1 << (TSqlParser.NUMBER - 604)) | (1 << (TSqlParser.NUMERIC_ROUNDABORT - 604)) | (1 << (TSqlParser.OBJECT - 604)) | (1 << (TSqlParser.OFFLINE - 604)) | (1 << (TSqlParser.OFFSET - 604)) | (1 << (TSqlParser.OLD_ACCOUNT - 604)) | (1 << (TSqlParser.ONLINE - 604)) | (1 << (TSqlParser.ONLY - 604)) | (1 << (TSqlParser.OPEN_EXISTING - 604)) | (1 << (TSqlParser.OPTIMISTIC - 604)) | (1 << (TSqlParser.OPTIMIZE - 604)) | (1 << (TSqlParser.OUT - 604)) | (1 << (TSqlParser.OUTPUT - 604)) | (1 << (TSqlParser.OWNER - 604)))) !== 0) || ((((_la - 636)) & ~0x1f) == 0 && ((1 << (_la - 636)) & ((1 << (TSqlParser.PAGE_VERIFY - 636)) | (1 << (TSqlParser.PARAMETERIZATION - 636)) | (1 << (TSqlParser.PARTITION - 636)) | (1 << (TSqlParser.PARTITIONS - 636)) | (1 << (TSqlParser.PARTNER - 636)) | (1 << (TSqlParser.PATH - 636)) | (1 << (TSqlParser.POISON_MESSAGE_HANDLING - 636)) | (1 << (TSqlParser.POOL - 636)) | (1 << (TSqlParser.PORT - 636)) | (1 << (TSqlParser.PRECEDING - 636)) | (1 << (TSqlParser.PRIMARY_ROLE - 636)) | (1 << (TSqlParser.PRIOR - 636)) | (1 << (TSqlParser.PRIORITY - 636)) | (1 << (TSqlParser.PRIORITY_LEVEL - 636)) | (1 << (TSqlParser.PRIVATE - 636)) | (1 << (TSqlParser.PRIVATE_KEY - 636)) | (1 << (TSqlParser.PRIVILEGES - 636)) | (1 << (TSqlParser.PROCEDURE_NAME - 636)) | (1 << (TSqlParser.PROPERTY - 636)) | (1 << (TSqlParser.PROVIDER - 636)) | (1 << (TSqlParser.PROVIDER_KEY_NAME - 636)) | (1 << (TSqlParser.QUERY - 636)) | (1 << (TSqlParser.QUEUE - 636)) | (1 << (TSqlParser.QUEUE_DELAY - 636)) | (1 << (TSqlParser.QUOTED_IDENTIFIER - 636)) | (1 << (TSqlParser.RANGE - 636)) | (1 << (TSqlParser.RANK - 636)) | (1 << (TSqlParser.RC2 - 636)) | (1 << (TSqlParser.RC4 - 636)) | (1 << (TSqlParser.RC4_128 - 636)) | (1 << (TSqlParser.READ_COMMITTED_SNAPSHOT - 636)) | (1 << (TSqlParser.READ_ONLY - 636)))) !== 0) || ((((_la - 668)) & ~0x1f) == 0 && ((1 << (_la - 668)) & ((1 << (TSqlParser.READ_ONLY_ROUTING_LIST - 668)) | (1 << (TSqlParser.READ_WRITE - 668)) | (1 << (TSqlParser.READONLY - 668)) | (1 << (TSqlParser.REBUILD - 668)) | (1 << (TSqlParser.RECEIVE - 668)) | (1 << (TSqlParser.RECOMPILE - 668)) | (1 << (TSqlParser.RECOVERY - 668)) | (1 << (TSqlParser.RECURSIVE_TRIGGERS - 668)) | (1 << (TSqlParser.RELATIVE - 668)) | (1 << (TSqlParser.REMOTE - 668)) | (1 << (TSqlParser.REMOTE_SERVICE_NAME - 668)) | (1 << (TSqlParser.REMOVE - 668)) | (1 << (TSqlParser.REORGANIZE - 668)) | (1 << (TSqlParser.REPEATABLE - 668)) | (1 << (TSqlParser.REPLICA - 668)) | (1 << (TSqlParser.REQUEST_MAX_CPU_TIME_SEC - 668)) | (1 << (TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT - 668)) | (1 << (TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC - 668)) | (1 << (TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT - 668)) | (1 << (TSqlParser.RESERVE_DISK_SPACE - 668)) | (1 << (TSqlParser.RESOURCE - 668)) | (1 << (TSqlParser.RESOURCE_MANAGER_LOCATION - 668)) | (1 << (TSqlParser.RESTRICTED_USER - 668)) | (1 << (TSqlParser.RETENTION - 668)) | (1 << (TSqlParser.ROBUST - 668)) | (1 << (TSqlParser.ROOT - 668)) | (1 << (TSqlParser.ROUTE - 668)) | (1 << (TSqlParser.ROW - 668)) | (1 << (TSqlParser.ROW_NUMBER - 668)) | (1 << (TSqlParser.ROWGUID - 668)) | (1 << (TSqlParser.ROWS - 668)) | (1 << (TSqlParser.SAMPLE - 668)))) !== 0) || ((((_la - 700)) & ~0x1f) == 0 && ((1 << (_la - 700)) & ((1 << (TSqlParser.SCHEMABINDING - 700)) | (1 << (TSqlParser.SCOPED - 700)) | (1 << (TSqlParser.SCROLL - 700)) | (1 << (TSqlParser.SCROLL_LOCKS - 700)) | (1 << (TSqlParser.SEARCH - 700)) | (1 << (TSqlParser.SECONDARY - 700)) | (1 << (TSqlParser.SECONDARY_ONLY - 700)) | (1 << (TSqlParser.SECONDARY_ROLE - 700)) | (1 << (TSqlParser.SECONDS - 700)) | (1 << (TSqlParser.SECRET - 700)) | (1 << (TSqlParser.SECURITY - 700)) | (1 << (TSqlParser.SECURITY_LOG - 700)) | (1 << (TSqlParser.SEEDING_MODE - 700)) | (1 << (TSqlParser.SELF - 700)) | (1 << (TSqlParser.SEMI_SENSITIVE - 700)) | (1 << (TSqlParser.SEND - 700)) | (1 << (TSqlParser.SENT - 700)) | (1 << (TSqlParser.SEQUENCE - 700)) | (1 << (TSqlParser.SERIALIZABLE - 700)) | (1 << (TSqlParser.SESSION_TIMEOUT - 700)) | (1 << (TSqlParser.SETERROR - 700)) | (1 << (TSqlParser.SHARE - 700)) | (1 << (TSqlParser.SHOWPLAN - 700)) | (1 << (TSqlParser.SIGNATURE - 700)) | (1 << (TSqlParser.SIMPLE - 700)) | (1 << (TSqlParser.SINGLE_USER - 700)) | (1 << (TSqlParser.SIZE - 700)) | (1 << (TSqlParser.SMALLINT - 700)) | (1 << (TSqlParser.SNAPSHOT - 700)) | (1 << (TSqlParser.SPATIAL_WINDOW_MAX_CELLS - 700)) | (1 << (TSqlParser.STANDBY - 700)) | (1 << (TSqlParser.START_DATE - 700)))) !== 0) || ((((_la - 732)) & ~0x1f) == 0 && ((1 << (_la - 732)) & ((1 << (TSqlParser.STATIC - 732)) | (1 << (TSqlParser.STATS_STREAM - 732)) | (1 << (TSqlParser.STATUS - 732)) | (1 << (TSqlParser.STDEV - 732)) | (1 << (TSqlParser.STDEVP - 732)) | (1 << (TSqlParser.STOPLIST - 732)) | (1 << (TSqlParser.STRING_AGG - 732)) | (1 << (TSqlParser.STUFF - 732)) | (1 << (TSqlParser.SUBJECT - 732)) | (1 << (TSqlParser.SUM - 732)) | (1 << (TSqlParser.SUSPEND - 732)) | (1 << (TSqlParser.SYMMETRIC - 732)) | (1 << (TSqlParser.SYNCHRONOUS_COMMIT - 732)) | (1 << (TSqlParser.SYNONYM - 732)) | (1 << (TSqlParser.SYSTEM - 732)) | (1 << (TSqlParser.TAKE - 732)) | (1 << (TSqlParser.TARGET_RECOVERY_TIME - 732)) | (1 << (TSqlParser.TB - 732)) | (1 << (TSqlParser.TEXTIMAGE_ON - 732)) | (1 << (TSqlParser.THROW - 732)) | (1 << (TSqlParser.TIES - 732)) | (1 << (TSqlParser.TIME - 732)) | (1 << (TSqlParser.TIMEOUT - 732)) | (1 << (TSqlParser.TIMER - 732)) | (1 << (TSqlParser.TINYINT - 732)) | (1 << (TSqlParser.TORN_PAGE_DETECTION - 732)) | (1 << (TSqlParser.TRANSFORM_NOISE_WORDS - 732)) | (1 << (TSqlParser.TRIPLE_DES - 732)) | (1 << (TSqlParser.TRIPLE_DES_3KEY - 732)) | (1 << (TSqlParser.TRUSTWORTHY - 732)))) !== 0) || ((((_la - 764)) & ~0x1f) == 0 && ((1 << (_la - 764)) & ((1 << (TSqlParser.TRY - 764)) | (1 << (TSqlParser.TSQL - 764)) | (1 << (TSqlParser.TWO_DIGIT_YEAR_CUTOFF - 764)) | (1 << (TSqlParser.TYPE - 764)) | (1 << (TSqlParser.TYPE_WARNING - 764)) | (1 << (TSqlParser.UNBOUNDED - 764)) | (1 << (TSqlParser.UNCOMMITTED - 764)) | (1 << (TSqlParser.UNKNOWN - 764)) | (1 << (TSqlParser.UNLIMITED - 764)) | (1 << (TSqlParser.USING - 764)) | (1 << (TSqlParser.VALID_XML - 764)) | (1 << (TSqlParser.VALIDATION - 764)) | (1 << (TSqlParser.VALUE - 764)) | (1 << (TSqlParser.VAR - 764)) | (1 << (TSqlParser.VARP - 764)) | (1 << (TSqlParser.VIEW_METADATA - 764)) | (1 << (TSqlParser.VIEWS - 764)) | (1 << (TSqlParser.WAIT - 764)) | (1 << (TSqlParser.WELL_FORMED_XML - 764)) | (1 << (TSqlParser.WORK - 764)) | (1 << (TSqlParser.WORKLOAD - 764)) | (1 << (TSqlParser.XML - 764)) | (1 << (TSqlParser.XMLNAMESPACES - 764)))) !== 0) || ((((_la - 796)) & ~0x1f) == 0 && ((1 << (_la - 796)) & ((1 << (TSqlParser.DOUBLE_QUOTE_ID - 796)) | (1 << (TSqlParser.SQUARE_BRACKET_ID - 796)) | (1 << (TSqlParser.ID - 796)))) !== 0)) {
- this.state = 8292;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.ANY) {
- this.state = 8291;
- this.match(TSqlParser.ANY);
- }
-
- this.state = 8296;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.state = 8294;
- this.id();
- break;
- case TSqlParser.DATABASE:
- this.state = 8295;
- this.match(TSqlParser.DATABASE);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- }
-
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Set_statementContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_set_statement;
- this.member_name = null; // IdContext
- return this;
-}
-
-Set_statementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Set_statementContext.prototype.constructor = Set_statementContext;
-
-Set_statementContext.prototype.SET = function() {
- return this.getToken(TSqlParser.SET, 0);
-};
-
-Set_statementContext.prototype.LOCAL_ID = function() {
- return this.getToken(TSqlParser.LOCAL_ID, 0);
-};
-
-Set_statementContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Set_statementContext.prototype.expression = function() {
- return this.getTypedRuleContext(ExpressionContext,0);
-};
-
-Set_statementContext.prototype.DOT = function() {
- return this.getToken(TSqlParser.DOT, 0);
-};
-
-Set_statementContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Set_statementContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Set_statementContext.prototype.assignment_operator = function() {
- return this.getTypedRuleContext(Assignment_operatorContext,0);
-};
-
-Set_statementContext.prototype.CURSOR = function() {
- return this.getToken(TSqlParser.CURSOR, 0);
-};
-
-Set_statementContext.prototype.declare_set_cursor_common = function() {
- return this.getTypedRuleContext(Declare_set_cursor_commonContext,0);
-};
-
-Set_statementContext.prototype.FOR = function() {
- return this.getToken(TSqlParser.FOR, 0);
-};
-
-Set_statementContext.prototype.READ = function() {
- return this.getToken(TSqlParser.READ, 0);
-};
-
-Set_statementContext.prototype.ONLY = function() {
- return this.getToken(TSqlParser.ONLY, 0);
-};
-
-Set_statementContext.prototype.UPDATE = function() {
- return this.getToken(TSqlParser.UPDATE, 0);
-};
-
-Set_statementContext.prototype.OF = function() {
- return this.getToken(TSqlParser.OF, 0);
-};
-
-Set_statementContext.prototype.column_name_list = function() {
- return this.getTypedRuleContext(Column_name_listContext,0);
-};
-
-Set_statementContext.prototype.set_special = function() {
- return this.getTypedRuleContext(Set_specialContext,0);
-};
-
-Set_statementContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterSet_statement(this);
- }
-};
-
-Set_statementContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitSet_statement(this);
- }
-};
-
-Set_statementContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitSet_statement(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Set_statementContext = Set_statementContext;
-
-TSqlParser.prototype.set_statement = function() {
-
- var localctx = new Set_statementContext(this, this._ctx, this.state);
- this.enterRule(localctx, 666, TSqlParser.RULE_set_statement);
- var _la = 0; // Token type
- try {
- this.state = 8341;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1161,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 8302;
- this.match(TSqlParser.SET);
- this.state = 8303;
- this.match(TSqlParser.LOCAL_ID);
- this.state = 8306;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.DOT) {
- this.state = 8304;
- this.match(TSqlParser.DOT);
- this.state = 8305;
- localctx.member_name = this.id();
- }
-
- this.state = 8308;
- this.match(TSqlParser.EQUAL);
- this.state = 8309;
- this.expression(0);
- this.state = 8311;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1155,this._ctx);
- if(la_===1) {
- this.state = 8310;
- this.match(TSqlParser.SEMI);
-
- }
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 8313;
- this.match(TSqlParser.SET);
- this.state = 8314;
- this.match(TSqlParser.LOCAL_ID);
- this.state = 8315;
- this.assignment_operator();
- this.state = 8316;
- this.expression(0);
- this.state = 8318;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1156,this._ctx);
- if(la_===1) {
- this.state = 8317;
- this.match(TSqlParser.SEMI);
-
- }
- break;
-
- case 3:
- this.enterOuterAlt(localctx, 3);
- this.state = 8320;
- this.match(TSqlParser.SET);
- this.state = 8321;
- this.match(TSqlParser.LOCAL_ID);
- this.state = 8322;
- this.match(TSqlParser.EQUAL);
- this.state = 8323;
- this.match(TSqlParser.CURSOR);
- this.state = 8324;
- this.declare_set_cursor_common();
- this.state = 8335;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.FOR) {
- this.state = 8325;
- this.match(TSqlParser.FOR);
- this.state = 8333;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.READ:
- this.state = 8326;
- this.match(TSqlParser.READ);
- this.state = 8327;
- this.match(TSqlParser.ONLY);
- break;
- case TSqlParser.UPDATE:
- this.state = 8328;
- this.match(TSqlParser.UPDATE);
- this.state = 8331;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.OF) {
- this.state = 8329;
- this.match(TSqlParser.OF);
- this.state = 8330;
- this.column_name_list();
- }
-
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- }
-
- this.state = 8338;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1160,this._ctx);
- if(la_===1) {
- this.state = 8337;
- this.match(TSqlParser.SEMI);
-
- }
- break;
-
- case 4:
- this.enterOuterAlt(localctx, 4);
- this.state = 8340;
- this.set_special();
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Transaction_statementContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_transaction_statement;
- return this;
-}
-
-Transaction_statementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Transaction_statementContext.prototype.constructor = Transaction_statementContext;
-
-Transaction_statementContext.prototype.BEGIN = function() {
- return this.getToken(TSqlParser.BEGIN, 0);
-};
-
-Transaction_statementContext.prototype.DISTRIBUTED = function() {
- return this.getToken(TSqlParser.DISTRIBUTED, 0);
-};
-
-Transaction_statementContext.prototype.TRAN = function() {
- return this.getToken(TSqlParser.TRAN, 0);
-};
-
-Transaction_statementContext.prototype.TRANSACTION = function() {
- return this.getToken(TSqlParser.TRANSACTION, 0);
-};
-
-Transaction_statementContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Transaction_statementContext.prototype.LOCAL_ID = function() {
- return this.getToken(TSqlParser.LOCAL_ID, 0);
-};
-
-Transaction_statementContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Transaction_statementContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Transaction_statementContext.prototype.MARK = function() {
- return this.getToken(TSqlParser.MARK, 0);
-};
-
-Transaction_statementContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Transaction_statementContext.prototype.COMMIT = function() {
- return this.getToken(TSqlParser.COMMIT, 0);
-};
-
-Transaction_statementContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Transaction_statementContext.prototype.DELAYED_DURABILITY = function() {
- return this.getToken(TSqlParser.DELAYED_DURABILITY, 0);
-};
-
-Transaction_statementContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Transaction_statementContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Transaction_statementContext.prototype.OFF = function() {
- return this.getToken(TSqlParser.OFF, 0);
-};
-
-Transaction_statementContext.prototype.ON = function() {
- return this.getToken(TSqlParser.ON, 0);
-};
-
-Transaction_statementContext.prototype.WORK = function() {
- return this.getToken(TSqlParser.WORK, 0);
-};
-
-Transaction_statementContext.prototype.ROLLBACK = function() {
- return this.getToken(TSqlParser.ROLLBACK, 0);
-};
-
-Transaction_statementContext.prototype.SAVE = function() {
- return this.getToken(TSqlParser.SAVE, 0);
-};
-
-Transaction_statementContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterTransaction_statement(this);
- }
-};
-
-Transaction_statementContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitTransaction_statement(this);
- }
-};
-
-Transaction_statementContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitTransaction_statement(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Transaction_statementContext = Transaction_statementContext;
-
-TSqlParser.prototype.transaction_statement = function() {
-
- var localctx = new Transaction_statementContext(this, this._ctx, this.state);
- this.enterRule(localctx, 668, TSqlParser.RULE_transaction_statement);
- var _la = 0; // Token type
- try {
- this.state = 8424;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1180,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 8343;
- this.match(TSqlParser.BEGIN);
- this.state = 8344;
- this.match(TSqlParser.DISTRIBUTED);
- this.state = 8345;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.TRAN || _la===TSqlParser.TRANSACTION)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 8348;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1162,this._ctx);
- if(la_===1) {
- this.state = 8346;
- this.id();
-
- } else if(la_===2) {
- this.state = 8347;
- this.match(TSqlParser.LOCAL_ID);
-
- }
- this.state = 8351;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1163,this._ctx);
- if(la_===1) {
- this.state = 8350;
- this.match(TSqlParser.SEMI);
-
- }
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 8353;
- this.match(TSqlParser.BEGIN);
- this.state = 8354;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.TRAN || _la===TSqlParser.TRANSACTION)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 8364;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1166,this._ctx);
- if(la_===1) {
- this.state = 8357;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.state = 8355;
- this.id();
- break;
- case TSqlParser.LOCAL_ID:
- this.state = 8356;
- this.match(TSqlParser.LOCAL_ID);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 8362;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1165,this._ctx);
- if(la_===1) {
- this.state = 8359;
- this.match(TSqlParser.WITH);
- this.state = 8360;
- this.match(TSqlParser.MARK);
- this.state = 8361;
- this.match(TSqlParser.STRING);
-
- }
-
- }
- this.state = 8367;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1167,this._ctx);
- if(la_===1) {
- this.state = 8366;
- this.match(TSqlParser.SEMI);
-
- }
- break;
-
- case 3:
- this.enterOuterAlt(localctx, 3);
- this.state = 8369;
- this.match(TSqlParser.COMMIT);
- this.state = 8370;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.TRAN || _la===TSqlParser.TRANSACTION)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 8383;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1170,this._ctx);
- if(la_===1) {
- this.state = 8373;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.state = 8371;
- this.id();
- break;
- case TSqlParser.LOCAL_ID:
- this.state = 8372;
- this.match(TSqlParser.LOCAL_ID);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 8381;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1169,this._ctx);
- if(la_===1) {
- this.state = 8375;
- this.match(TSqlParser.WITH);
- this.state = 8376;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 8377;
- this.match(TSqlParser.DELAYED_DURABILITY);
- this.state = 8378;
- this.match(TSqlParser.EQUAL);
- this.state = 8379;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 8380;
- this.match(TSqlParser.RR_BRACKET);
-
- }
-
- }
- this.state = 8386;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1171,this._ctx);
- if(la_===1) {
- this.state = 8385;
- this.match(TSqlParser.SEMI);
-
- }
- break;
-
- case 4:
- this.enterOuterAlt(localctx, 4);
- this.state = 8388;
- this.match(TSqlParser.COMMIT);
- this.state = 8390;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1172,this._ctx);
- if(la_===1) {
- this.state = 8389;
- this.match(TSqlParser.WORK);
-
- }
- this.state = 8393;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1173,this._ctx);
- if(la_===1) {
- this.state = 8392;
- this.match(TSqlParser.SEMI);
-
- }
- break;
-
- case 5:
- this.enterOuterAlt(localctx, 5);
- this.state = 8395;
- this.match(TSqlParser.COMMIT);
- this.state = 8396;
- this.id();
- break;
-
- case 6:
- this.enterOuterAlt(localctx, 6);
- this.state = 8397;
- this.match(TSqlParser.ROLLBACK);
- this.state = 8398;
- this.id();
- break;
-
- case 7:
- this.enterOuterAlt(localctx, 7);
- this.state = 8399;
- this.match(TSqlParser.ROLLBACK);
- this.state = 8400;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.TRAN || _la===TSqlParser.TRANSACTION)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 8403;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1174,this._ctx);
- if(la_===1) {
- this.state = 8401;
- this.id();
-
- } else if(la_===2) {
- this.state = 8402;
- this.match(TSqlParser.LOCAL_ID);
-
- }
- this.state = 8406;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1175,this._ctx);
- if(la_===1) {
- this.state = 8405;
- this.match(TSqlParser.SEMI);
-
- }
- break;
-
- case 8:
- this.enterOuterAlt(localctx, 8);
- this.state = 8408;
- this.match(TSqlParser.ROLLBACK);
- this.state = 8410;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1176,this._ctx);
- if(la_===1) {
- this.state = 8409;
- this.match(TSqlParser.WORK);
-
- }
- this.state = 8413;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1177,this._ctx);
- if(la_===1) {
- this.state = 8412;
- this.match(TSqlParser.SEMI);
-
- }
- break;
-
- case 9:
- this.enterOuterAlt(localctx, 9);
- this.state = 8415;
- this.match(TSqlParser.SAVE);
- this.state = 8416;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.TRAN || _la===TSqlParser.TRANSACTION)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 8419;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1178,this._ctx);
- if(la_===1) {
- this.state = 8417;
- this.id();
-
- } else if(la_===2) {
- this.state = 8418;
- this.match(TSqlParser.LOCAL_ID);
-
- }
- this.state = 8422;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1179,this._ctx);
- if(la_===1) {
- this.state = 8421;
- this.match(TSqlParser.SEMI);
-
- }
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Go_statementContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_go_statement;
- this.count = null; // Token
- return this;
-}
-
-Go_statementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Go_statementContext.prototype.constructor = Go_statementContext;
-
-Go_statementContext.prototype.GO = function() {
- return this.getToken(TSqlParser.GO, 0);
-};
-
-Go_statementContext.prototype.DECIMAL = function() {
- return this.getToken(TSqlParser.DECIMAL, 0);
-};
-
-Go_statementContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterGo_statement(this);
- }
-};
-
-Go_statementContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitGo_statement(this);
- }
-};
-
-Go_statementContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitGo_statement(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Go_statementContext = Go_statementContext;
-
-TSqlParser.prototype.go_statement = function() {
-
- var localctx = new Go_statementContext(this, this._ctx, this.state);
- this.enterRule(localctx, 670, TSqlParser.RULE_go_statement);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 8426;
- this.match(TSqlParser.GO);
- this.state = 8428;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1181,this._ctx);
- if(la_===1) {
- this.state = 8427;
- localctx.count = this.match(TSqlParser.DECIMAL);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Use_statementContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_use_statement;
- this.database = null; // IdContext
- return this;
-}
-
-Use_statementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Use_statementContext.prototype.constructor = Use_statementContext;
-
-Use_statementContext.prototype.USE = function() {
- return this.getToken(TSqlParser.USE, 0);
-};
-
-Use_statementContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Use_statementContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Use_statementContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterUse_statement(this);
- }
-};
-
-Use_statementContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitUse_statement(this);
- }
-};
-
-Use_statementContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitUse_statement(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Use_statementContext = Use_statementContext;
-
-TSqlParser.prototype.use_statement = function() {
-
- var localctx = new Use_statementContext(this, this._ctx, this.state);
- this.enterRule(localctx, 672, TSqlParser.RULE_use_statement);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 8430;
- this.match(TSqlParser.USE);
- this.state = 8431;
- localctx.database = this.id();
- this.state = 8433;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1182,this._ctx);
- if(la_===1) {
- this.state = 8432;
- this.match(TSqlParser.SEMI);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Setuser_statementContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_setuser_statement;
- this.user = null; // Token
- return this;
-}
-
-Setuser_statementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Setuser_statementContext.prototype.constructor = Setuser_statementContext;
-
-Setuser_statementContext.prototype.SETUSER = function() {
- return this.getToken(TSqlParser.SETUSER, 0);
-};
-
-Setuser_statementContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Setuser_statementContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterSetuser_statement(this);
- }
-};
-
-Setuser_statementContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitSetuser_statement(this);
- }
-};
-
-Setuser_statementContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitSetuser_statement(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Setuser_statementContext = Setuser_statementContext;
-
-TSqlParser.prototype.setuser_statement = function() {
-
- var localctx = new Setuser_statementContext(this, this._ctx, this.state);
- this.enterRule(localctx, 674, TSqlParser.RULE_setuser_statement);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 8435;
- this.match(TSqlParser.SETUSER);
- this.state = 8437;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1183,this._ctx);
- if(la_===1) {
- this.state = 8436;
- localctx.user = this.match(TSqlParser.STRING);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Reconfigure_statementContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_reconfigure_statement;
- return this;
-}
-
-Reconfigure_statementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Reconfigure_statementContext.prototype.constructor = Reconfigure_statementContext;
-
-Reconfigure_statementContext.prototype.RECONFIGURE = function() {
- return this.getToken(TSqlParser.RECONFIGURE, 0);
-};
-
-Reconfigure_statementContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Reconfigure_statementContext.prototype.OVERRIDE = function() {
- return this.getToken(TSqlParser.OVERRIDE, 0);
-};
-
-Reconfigure_statementContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterReconfigure_statement(this);
- }
-};
-
-Reconfigure_statementContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitReconfigure_statement(this);
- }
-};
-
-Reconfigure_statementContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitReconfigure_statement(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Reconfigure_statementContext = Reconfigure_statementContext;
-
-TSqlParser.prototype.reconfigure_statement = function() {
-
- var localctx = new Reconfigure_statementContext(this, this._ctx, this.state);
- this.enterRule(localctx, 676, TSqlParser.RULE_reconfigure_statement);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 8439;
- this.match(TSqlParser.RECONFIGURE);
- this.state = 8442;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1184,this._ctx);
- if(la_===1) {
- this.state = 8440;
- this.match(TSqlParser.WITH);
- this.state = 8441;
- this.match(TSqlParser.OVERRIDE);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Shutdown_statementContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_shutdown_statement;
- return this;
-}
-
-Shutdown_statementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Shutdown_statementContext.prototype.constructor = Shutdown_statementContext;
-
-Shutdown_statementContext.prototype.SHUTDOWN = function() {
- return this.getToken(TSqlParser.SHUTDOWN, 0);
-};
-
-Shutdown_statementContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Shutdown_statementContext.prototype.NOWAIT = function() {
- return this.getToken(TSqlParser.NOWAIT, 0);
-};
-
-Shutdown_statementContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterShutdown_statement(this);
- }
-};
-
-Shutdown_statementContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitShutdown_statement(this);
- }
-};
-
-Shutdown_statementContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitShutdown_statement(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Shutdown_statementContext = Shutdown_statementContext;
-
-TSqlParser.prototype.shutdown_statement = function() {
-
- var localctx = new Shutdown_statementContext(this, this._ctx, this.state);
- this.enterRule(localctx, 678, TSqlParser.RULE_shutdown_statement);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 8444;
- this.match(TSqlParser.SHUTDOWN);
- this.state = 8447;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1185,this._ctx);
- if(la_===1) {
- this.state = 8445;
- this.match(TSqlParser.WITH);
- this.state = 8446;
- this.match(TSqlParser.NOWAIT);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Dbcc_clauseContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_dbcc_clause;
- this.name = null; // Simple_idContext
- return this;
-}
-
-Dbcc_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Dbcc_clauseContext.prototype.constructor = Dbcc_clauseContext;
-
-Dbcc_clauseContext.prototype.DBCC = function() {
- return this.getToken(TSqlParser.DBCC, 0);
-};
-
-Dbcc_clauseContext.prototype.simple_id = function() {
- return this.getTypedRuleContext(Simple_idContext,0);
-};
-
-Dbcc_clauseContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Dbcc_clauseContext.prototype.expression_list = function() {
- return this.getTypedRuleContext(Expression_listContext,0);
-};
-
-Dbcc_clauseContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Dbcc_clauseContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Dbcc_clauseContext.prototype.dbcc_options = function() {
- return this.getTypedRuleContext(Dbcc_optionsContext,0);
-};
-
-Dbcc_clauseContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Dbcc_clauseContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDbcc_clause(this);
- }
-};
-
-Dbcc_clauseContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDbcc_clause(this);
- }
-};
-
-Dbcc_clauseContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDbcc_clause(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Dbcc_clauseContext = Dbcc_clauseContext;
-
-TSqlParser.prototype.dbcc_clause = function() {
-
- var localctx = new Dbcc_clauseContext(this, this._ctx, this.state);
- this.enterRule(localctx, 680, TSqlParser.RULE_dbcc_clause);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 8449;
- this.match(TSqlParser.DBCC);
- this.state = 8450;
- localctx.name = this.simple_id();
- this.state = 8455;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1186,this._ctx);
- if(la_===1) {
- this.state = 8451;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 8452;
- this.expression_list();
- this.state = 8453;
- this.match(TSqlParser.RR_BRACKET);
-
- }
- this.state = 8459;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1187,this._ctx);
- if(la_===1) {
- this.state = 8457;
- this.match(TSqlParser.WITH);
- this.state = 8458;
- this.dbcc_options();
-
- }
- this.state = 8462;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1188,this._ctx);
- if(la_===1) {
- this.state = 8461;
- this.match(TSqlParser.SEMI);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Dbcc_optionsContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_dbcc_options;
- return this;
-}
-
-Dbcc_optionsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Dbcc_optionsContext.prototype.constructor = Dbcc_optionsContext;
-
-Dbcc_optionsContext.prototype.simple_id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Simple_idContext);
- } else {
- return this.getTypedRuleContext(Simple_idContext,i);
- }
-};
-
-Dbcc_optionsContext.prototype.COMMA = function() {
- return this.getToken(TSqlParser.COMMA, 0);
-};
-
-Dbcc_optionsContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDbcc_options(this);
- }
-};
-
-Dbcc_optionsContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDbcc_options(this);
- }
-};
-
-Dbcc_optionsContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDbcc_options(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Dbcc_optionsContext = Dbcc_optionsContext;
-
-TSqlParser.prototype.dbcc_options = function() {
-
- var localctx = new Dbcc_optionsContext(this, this._ctx, this.state);
- this.enterRule(localctx, 682, TSqlParser.RULE_dbcc_options);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 8464;
- this.simple_id();
- this.state = 8467;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 8465;
- this.match(TSqlParser.COMMA);
- this.state = 8466;
- this.simple_id();
- }
-
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Execute_clauseContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_execute_clause;
- this.clause = null; // Token
- return this;
-}
-
-Execute_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Execute_clauseContext.prototype.constructor = Execute_clauseContext;
-
-Execute_clauseContext.prototype.EXECUTE = function() {
- return this.getToken(TSqlParser.EXECUTE, 0);
-};
-
-Execute_clauseContext.prototype.AS = function() {
- return this.getToken(TSqlParser.AS, 0);
-};
-
-Execute_clauseContext.prototype.CALLER = function() {
- return this.getToken(TSqlParser.CALLER, 0);
-};
-
-Execute_clauseContext.prototype.SELF = function() {
- return this.getToken(TSqlParser.SELF, 0);
-};
-
-Execute_clauseContext.prototype.OWNER = function() {
- return this.getToken(TSqlParser.OWNER, 0);
-};
-
-Execute_clauseContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Execute_clauseContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterExecute_clause(this);
- }
-};
-
-Execute_clauseContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitExecute_clause(this);
- }
-};
-
-Execute_clauseContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitExecute_clause(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Execute_clauseContext = Execute_clauseContext;
-
-TSqlParser.prototype.execute_clause = function() {
-
- var localctx = new Execute_clauseContext(this, this._ctx, this.state);
- this.enterRule(localctx, 684, TSqlParser.RULE_execute_clause);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 8469;
- this.match(TSqlParser.EXECUTE);
- this.state = 8470;
- this.match(TSqlParser.AS);
- this.state = 8471;
- localctx.clause = this._input.LT(1);
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.CALLER || _la===TSqlParser.OWNER || _la===TSqlParser.SELF || _la===TSqlParser.STRING)) {
- localctx.clause = this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Declare_localContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_declare_local;
- return this;
-}
-
-Declare_localContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Declare_localContext.prototype.constructor = Declare_localContext;
-
-Declare_localContext.prototype.LOCAL_ID = function() {
- return this.getToken(TSqlParser.LOCAL_ID, 0);
-};
-
-Declare_localContext.prototype.data_type = function() {
- return this.getTypedRuleContext(Data_typeContext,0);
-};
-
-Declare_localContext.prototype.AS = function() {
- return this.getToken(TSqlParser.AS, 0);
-};
-
-Declare_localContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Declare_localContext.prototype.expression = function() {
- return this.getTypedRuleContext(ExpressionContext,0);
-};
-
-Declare_localContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDeclare_local(this);
- }
-};
-
-Declare_localContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDeclare_local(this);
- }
-};
-
-Declare_localContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDeclare_local(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Declare_localContext = Declare_localContext;
-
-TSqlParser.prototype.declare_local = function() {
-
- var localctx = new Declare_localContext(this, this._ctx, this.state);
- this.enterRule(localctx, 686, TSqlParser.RULE_declare_local);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 8473;
- this.match(TSqlParser.LOCAL_ID);
- this.state = 8475;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.AS) {
- this.state = 8474;
- this.match(TSqlParser.AS);
- }
-
- this.state = 8477;
- this.data_type();
- this.state = 8480;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.EQUAL) {
- this.state = 8478;
- this.match(TSqlParser.EQUAL);
- this.state = 8479;
- this.expression(0);
- }
-
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Table_type_definitionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_table_type_definition;
- return this;
-}
-
-Table_type_definitionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Table_type_definitionContext.prototype.constructor = Table_type_definitionContext;
-
-Table_type_definitionContext.prototype.TABLE = function() {
- return this.getToken(TSqlParser.TABLE, 0);
-};
-
-Table_type_definitionContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Table_type_definitionContext.prototype.column_def_table_constraints = function() {
- return this.getTypedRuleContext(Column_def_table_constraintsContext,0);
-};
-
-Table_type_definitionContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Table_type_definitionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterTable_type_definition(this);
- }
-};
-
-Table_type_definitionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitTable_type_definition(this);
- }
-};
-
-Table_type_definitionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitTable_type_definition(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Table_type_definitionContext = Table_type_definitionContext;
-
-TSqlParser.prototype.table_type_definition = function() {
-
- var localctx = new Table_type_definitionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 688, TSqlParser.RULE_table_type_definition);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 8482;
- this.match(TSqlParser.TABLE);
- this.state = 8483;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 8484;
- this.column_def_table_constraints();
- this.state = 8485;
- this.match(TSqlParser.RR_BRACKET);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Xml_type_definitionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_xml_type_definition;
- return this;
-}
-
-Xml_type_definitionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Xml_type_definitionContext.prototype.constructor = Xml_type_definitionContext;
-
-Xml_type_definitionContext.prototype.XML = function() {
- return this.getToken(TSqlParser.XML, 0);
-};
-
-Xml_type_definitionContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Xml_type_definitionContext.prototype.xml_schema_collection = function() {
- return this.getTypedRuleContext(Xml_schema_collectionContext,0);
-};
-
-Xml_type_definitionContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Xml_type_definitionContext.prototype.CONTENT = function() {
- return this.getToken(TSqlParser.CONTENT, 0);
-};
-
-Xml_type_definitionContext.prototype.DOCUMENT = function() {
- return this.getToken(TSqlParser.DOCUMENT, 0);
-};
-
-Xml_type_definitionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterXml_type_definition(this);
- }
-};
-
-Xml_type_definitionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitXml_type_definition(this);
- }
-};
-
-Xml_type_definitionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitXml_type_definition(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Xml_type_definitionContext = Xml_type_definitionContext;
-
-TSqlParser.prototype.xml_type_definition = function() {
-
- var localctx = new Xml_type_definitionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 690, TSqlParser.RULE_xml_type_definition);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 8487;
- this.match(TSqlParser.XML);
- this.state = 8488;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 8490;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.CONTENT || _la===TSqlParser.DOCUMENT) {
- this.state = 8489;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.CONTENT || _la===TSqlParser.DOCUMENT)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- }
-
- this.state = 8492;
- this.xml_schema_collection();
- this.state = 8493;
- this.match(TSqlParser.RR_BRACKET);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Xml_schema_collectionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_xml_schema_collection;
- return this;
-}
-
-Xml_schema_collectionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Xml_schema_collectionContext.prototype.constructor = Xml_schema_collectionContext;
-
-Xml_schema_collectionContext.prototype.ID = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ID);
- } else {
- return this.getToken(TSqlParser.ID, i);
- }
-};
-
-
-Xml_schema_collectionContext.prototype.DOT = function() {
- return this.getToken(TSqlParser.DOT, 0);
-};
-
-Xml_schema_collectionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterXml_schema_collection(this);
- }
-};
-
-Xml_schema_collectionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitXml_schema_collection(this);
- }
-};
-
-Xml_schema_collectionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitXml_schema_collection(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Xml_schema_collectionContext = Xml_schema_collectionContext;
-
-TSqlParser.prototype.xml_schema_collection = function() {
-
- var localctx = new Xml_schema_collectionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 692, TSqlParser.RULE_xml_schema_collection);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 8495;
- this.match(TSqlParser.ID);
- this.state = 8496;
- this.match(TSqlParser.DOT);
- this.state = 8497;
- this.match(TSqlParser.ID);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Column_def_table_constraintsContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_column_def_table_constraints;
- return this;
-}
-
-Column_def_table_constraintsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Column_def_table_constraintsContext.prototype.constructor = Column_def_table_constraintsContext;
-
-Column_def_table_constraintsContext.prototype.column_def_table_constraint = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Column_def_table_constraintContext);
- } else {
- return this.getTypedRuleContext(Column_def_table_constraintContext,i);
- }
-};
-
-Column_def_table_constraintsContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Column_def_table_constraintsContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterColumn_def_table_constraints(this);
- }
-};
-
-Column_def_table_constraintsContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitColumn_def_table_constraints(this);
- }
-};
-
-Column_def_table_constraintsContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitColumn_def_table_constraints(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Column_def_table_constraintsContext = Column_def_table_constraintsContext;
-
-TSqlParser.prototype.column_def_table_constraints = function() {
-
- var localctx = new Column_def_table_constraintsContext(this, this._ctx, this.state);
- this.enterRule(localctx, 694, TSqlParser.RULE_column_def_table_constraints);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 8499;
- this.column_def_table_constraint();
- this.state = 8506;
- this._errHandler.sync(this);
- var _alt = this._interp.adaptivePredict(this._input,1194,this._ctx)
- while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
- if(_alt===1) {
- this.state = 8501;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 8500;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 8503;
- this.column_def_table_constraint();
- }
- this.state = 8508;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,1194,this._ctx);
- }
-
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Column_def_table_constraintContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_column_def_table_constraint;
- return this;
-}
-
-Column_def_table_constraintContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Column_def_table_constraintContext.prototype.constructor = Column_def_table_constraintContext;
-
-Column_def_table_constraintContext.prototype.column_definition = function() {
- return this.getTypedRuleContext(Column_definitionContext,0);
-};
-
-Column_def_table_constraintContext.prototype.materialized_column_definition = function() {
- return this.getTypedRuleContext(Materialized_column_definitionContext,0);
-};
-
-Column_def_table_constraintContext.prototype.table_constraint = function() {
- return this.getTypedRuleContext(Table_constraintContext,0);
-};
-
-Column_def_table_constraintContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterColumn_def_table_constraint(this);
- }
-};
-
-Column_def_table_constraintContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitColumn_def_table_constraint(this);
- }
-};
-
-Column_def_table_constraintContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitColumn_def_table_constraint(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Column_def_table_constraintContext = Column_def_table_constraintContext;
-
-TSqlParser.prototype.column_def_table_constraint = function() {
-
- var localctx = new Column_def_table_constraintContext(this, this._ctx, this.state);
- this.enterRule(localctx, 696, TSqlParser.RULE_column_def_table_constraint);
- try {
- this.state = 8512;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1195,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 8509;
- this.column_definition();
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 8510;
- this.materialized_column_definition();
- break;
-
- case 3:
- this.enterOuterAlt(localctx, 3);
- this.state = 8511;
- this.table_constraint();
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Column_definitionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_column_definition;
- this.constraint = null; // IdContext
- this.seed = null; // Token
- this.increment = null; // Token
- return this;
-}
-
-Column_definitionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Column_definitionContext.prototype.constructor = Column_definitionContext;
-
-Column_definitionContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Column_definitionContext.prototype.data_type = function() {
- return this.getTypedRuleContext(Data_typeContext,0);
-};
-
-Column_definitionContext.prototype.AS = function() {
- return this.getToken(TSqlParser.AS, 0);
-};
-
-Column_definitionContext.prototype.expression = function() {
- return this.getTypedRuleContext(ExpressionContext,0);
-};
-
-Column_definitionContext.prototype.COLLATE = function() {
- return this.getToken(TSqlParser.COLLATE, 0);
-};
-
-Column_definitionContext.prototype.null_notnull = function() {
- return this.getTypedRuleContext(Null_notnullContext,0);
-};
-
-Column_definitionContext.prototype.null_or_default = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Null_or_defaultContext);
- } else {
- return this.getTypedRuleContext(Null_or_defaultContext,i);
- }
-};
-
-Column_definitionContext.prototype.IDENTITY = function() {
- return this.getToken(TSqlParser.IDENTITY, 0);
-};
-
-Column_definitionContext.prototype.ROWGUIDCOL = function() {
- return this.getToken(TSqlParser.ROWGUIDCOL, 0);
-};
-
-Column_definitionContext.prototype.column_constraint = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Column_constraintContext);
- } else {
- return this.getTypedRuleContext(Column_constraintContext,i);
- }
-};
-
-Column_definitionContext.prototype.CONSTRAINT = function() {
- return this.getToken(TSqlParser.CONSTRAINT, 0);
-};
-
-Column_definitionContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Column_definitionContext.prototype.COMMA = function() {
- return this.getToken(TSqlParser.COMMA, 0);
-};
-
-Column_definitionContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Column_definitionContext.prototype.NOT = function() {
- return this.getToken(TSqlParser.NOT, 0);
-};
-
-Column_definitionContext.prototype.FOR = function() {
- return this.getToken(TSqlParser.FOR, 0);
-};
-
-Column_definitionContext.prototype.REPLICATION = function() {
- return this.getToken(TSqlParser.REPLICATION, 0);
-};
-
-Column_definitionContext.prototype.DECIMAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DECIMAL);
- } else {
- return this.getToken(TSqlParser.DECIMAL, i);
- }
-};
-
-
-Column_definitionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterColumn_definition(this);
- }
-};
-
-Column_definitionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitColumn_definition(this);
- }
-};
-
-Column_definitionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitColumn_definition(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Column_definitionContext = Column_definitionContext;
-
-TSqlParser.prototype.column_definition = function() {
-
- var localctx = new Column_definitionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 698, TSqlParser.RULE_column_definition);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 8514;
- this.id();
- this.state = 8518;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.DOUBLE:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.state = 8515;
- this.data_type();
- break;
- case TSqlParser.AS:
- this.state = 8516;
- this.match(TSqlParser.AS);
- this.state = 8517;
- this.expression(0);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 8522;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COLLATE) {
- this.state = 8520;
- this.match(TSqlParser.COLLATE);
- this.state = 8521;
- this.id();
- }
-
- this.state = 8525;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1198,this._ctx);
- if(la_===1) {
- this.state = 8524;
- this.null_notnull();
-
- }
- this.state = 8548;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1203,this._ctx);
- if(la_===1) {
- this.state = 8529;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.CONSTRAINT) {
- this.state = 8527;
- this.match(TSqlParser.CONSTRAINT);
- this.state = 8528;
- localctx.constraint = this.id();
- }
-
- this.state = 8531;
- this.null_or_default();
- this.state = 8533;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1200,this._ctx);
- if(la_===1) {
- this.state = 8532;
- this.null_or_default();
-
- }
-
- } else if(la_===2) {
- this.state = 8535;
- this.match(TSqlParser.IDENTITY);
- this.state = 8541;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1201,this._ctx);
- if(la_===1) {
- this.state = 8536;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 8537;
- localctx.seed = this.match(TSqlParser.DECIMAL);
- this.state = 8538;
- this.match(TSqlParser.COMMA);
- this.state = 8539;
- localctx.increment = this.match(TSqlParser.DECIMAL);
- this.state = 8540;
- this.match(TSqlParser.RR_BRACKET);
-
- }
- this.state = 8546;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1202,this._ctx);
- if(la_===1) {
- this.state = 8543;
- this.match(TSqlParser.NOT);
- this.state = 8544;
- this.match(TSqlParser.FOR);
- this.state = 8545;
- this.match(TSqlParser.REPLICATION);
-
- }
-
- }
- this.state = 8551;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.ROWGUIDCOL) {
- this.state = 8550;
- this.match(TSqlParser.ROWGUIDCOL);
- }
-
- this.state = 8556;
- this._errHandler.sync(this);
- var _alt = this._interp.adaptivePredict(this._input,1205,this._ctx)
- while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
- if(_alt===1) {
- this.state = 8553;
- this.column_constraint();
- }
- this.state = 8558;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,1205,this._ctx);
- }
-
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Materialized_column_definitionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_materialized_column_definition;
- return this;
-}
-
-Materialized_column_definitionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Materialized_column_definitionContext.prototype.constructor = Materialized_column_definitionContext;
-
-Materialized_column_definitionContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Materialized_column_definitionContext.prototype.expression = function() {
- return this.getTypedRuleContext(ExpressionContext,0);
-};
-
-Materialized_column_definitionContext.prototype.COMPUTE = function() {
- return this.getToken(TSqlParser.COMPUTE, 0);
-};
-
-Materialized_column_definitionContext.prototype.AS = function() {
- return this.getToken(TSqlParser.AS, 0);
-};
-
-Materialized_column_definitionContext.prototype.MATERIALIZED = function() {
- return this.getToken(TSqlParser.MATERIALIZED, 0);
-};
-
-Materialized_column_definitionContext.prototype.NOT = function() {
- return this.getToken(TSqlParser.NOT, 0);
-};
-
-Materialized_column_definitionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterMaterialized_column_definition(this);
- }
-};
-
-Materialized_column_definitionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitMaterialized_column_definition(this);
- }
-};
-
-Materialized_column_definitionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitMaterialized_column_definition(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Materialized_column_definitionContext = Materialized_column_definitionContext;
-
-TSqlParser.prototype.materialized_column_definition = function() {
-
- var localctx = new Materialized_column_definitionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 700, TSqlParser.RULE_materialized_column_definition);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 8559;
- this.id();
- this.state = 8560;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.AS || _la===TSqlParser.COMPUTE)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 8561;
- this.expression(0);
- this.state = 8565;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1206,this._ctx);
- if(la_===1) {
- this.state = 8562;
- this.match(TSqlParser.MATERIALIZED);
-
- } else if(la_===2) {
- this.state = 8563;
- this.match(TSqlParser.NOT);
- this.state = 8564;
- this.match(TSqlParser.MATERIALIZED);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Column_constraintContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_column_constraint;
- this.constraint = null; // IdContext
- this.pk = null; // Column_name_listContext
- return this;
-}
-
-Column_constraintContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Column_constraintContext.prototype.constructor = Column_constraintContext;
-
-Column_constraintContext.prototype.CHECK = function() {
- return this.getToken(TSqlParser.CHECK, 0);
-};
-
-Column_constraintContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Column_constraintContext.prototype.search_condition = function() {
- return this.getTypedRuleContext(Search_conditionContext,0);
-};
-
-Column_constraintContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Column_constraintContext.prototype.REFERENCES = function() {
- return this.getToken(TSqlParser.REFERENCES, 0);
-};
-
-Column_constraintContext.prototype.table_name = function() {
- return this.getTypedRuleContext(Table_nameContext,0);
-};
-
-Column_constraintContext.prototype.null_notnull = function() {
- return this.getTypedRuleContext(Null_notnullContext,0);
-};
-
-Column_constraintContext.prototype.CONSTRAINT = function() {
- return this.getToken(TSqlParser.CONSTRAINT, 0);
-};
-
-Column_constraintContext.prototype.column_name_list = function() {
- return this.getTypedRuleContext(Column_name_listContext,0);
-};
-
-Column_constraintContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Column_constraintContext.prototype.PRIMARY = function() {
- return this.getToken(TSqlParser.PRIMARY, 0);
-};
-
-Column_constraintContext.prototype.KEY = function() {
- return this.getToken(TSqlParser.KEY, 0);
-};
-
-Column_constraintContext.prototype.UNIQUE = function() {
- return this.getToken(TSqlParser.UNIQUE, 0);
-};
-
-Column_constraintContext.prototype.clustered = function() {
- return this.getTypedRuleContext(ClusteredContext,0);
-};
-
-Column_constraintContext.prototype.index_options = function() {
- return this.getTypedRuleContext(Index_optionsContext,0);
-};
-
-Column_constraintContext.prototype.NOT = function() {
- return this.getToken(TSqlParser.NOT, 0);
-};
-
-Column_constraintContext.prototype.FOR = function() {
- return this.getToken(TSqlParser.FOR, 0);
-};
-
-Column_constraintContext.prototype.REPLICATION = function() {
- return this.getToken(TSqlParser.REPLICATION, 0);
-};
-
-Column_constraintContext.prototype.FOREIGN = function() {
- return this.getToken(TSqlParser.FOREIGN, 0);
-};
-
-Column_constraintContext.prototype.on_delete = function() {
- return this.getTypedRuleContext(On_deleteContext,0);
-};
-
-Column_constraintContext.prototype.on_update = function() {
- return this.getTypedRuleContext(On_updateContext,0);
-};
-
-Column_constraintContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterColumn_constraint(this);
- }
-};
-
-Column_constraintContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitColumn_constraint(this);
- }
-};
-
-Column_constraintContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitColumn_constraint(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Column_constraintContext = Column_constraintContext;
-
-TSqlParser.prototype.column_constraint = function() {
-
- var localctx = new Column_constraintContext(this, this._ctx, this.state);
- this.enterRule(localctx, 702, TSqlParser.RULE_column_constraint);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 8569;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.CONSTRAINT) {
- this.state = 8567;
- this.match(TSqlParser.CONSTRAINT);
- this.state = 8568;
- localctx.constraint = this.id();
- }
-
- this.state = 8608;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.PRIMARY:
- case TSqlParser.UNIQUE:
- this.state = 8574;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.PRIMARY:
- this.state = 8571;
- this.match(TSqlParser.PRIMARY);
- this.state = 8572;
- this.match(TSqlParser.KEY);
- break;
- case TSqlParser.UNIQUE:
- this.state = 8573;
- this.match(TSqlParser.UNIQUE);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 8577;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.CLUSTERED || _la===TSqlParser.NONCLUSTERED) {
- this.state = 8576;
- this.clustered();
- }
-
- this.state = 8580;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1210,this._ctx);
- if(la_===1) {
- this.state = 8579;
- this.index_options();
-
- }
- break;
- case TSqlParser.CHECK:
- this.state = 8582;
- this.match(TSqlParser.CHECK);
- this.state = 8586;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.NOT) {
- this.state = 8583;
- this.match(TSqlParser.NOT);
- this.state = 8584;
- this.match(TSqlParser.FOR);
- this.state = 8585;
- this.match(TSqlParser.REPLICATION);
- }
-
- this.state = 8588;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 8589;
- this.search_condition();
- this.state = 8590;
- this.match(TSqlParser.RR_BRACKET);
- break;
- case TSqlParser.FOREIGN:
- case TSqlParser.REFERENCES:
- this.state = 8594;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.FOREIGN) {
- this.state = 8592;
- this.match(TSqlParser.FOREIGN);
- this.state = 8593;
- this.match(TSqlParser.KEY);
- }
-
- this.state = 8596;
- this.match(TSqlParser.REFERENCES);
- this.state = 8597;
- this.table_name();
- this.state = 8598;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 8599;
- localctx.pk = this.column_name_list();
- this.state = 8600;
- this.match(TSqlParser.RR_BRACKET);
- this.state = 8602;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1213,this._ctx);
- if(la_===1) {
- this.state = 8601;
- this.on_delete();
-
- }
- this.state = 8605;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.ON) {
- this.state = 8604;
- this.on_update();
- }
-
- break;
- case TSqlParser.NOT:
- case TSqlParser.NULL:
- this.state = 8607;
- this.null_notnull();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Table_constraintContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_table_constraint;
- this.constraint = null; // IdContext
- this.fk = null; // Column_name_listContext
- this.pk = null; // Column_name_listContext
- return this;
-}
-
-Table_constraintContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Table_constraintContext.prototype.constructor = Table_constraintContext;
-
-Table_constraintContext.prototype.LR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.LR_BRACKET);
- } else {
- return this.getToken(TSqlParser.LR_BRACKET, i);
- }
-};
-
-
-Table_constraintContext.prototype.column_name_list_with_order = function() {
- return this.getTypedRuleContext(Column_name_list_with_orderContext,0);
-};
-
-Table_constraintContext.prototype.RR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.RR_BRACKET);
- } else {
- return this.getToken(TSqlParser.RR_BRACKET, i);
- }
-};
-
-
-Table_constraintContext.prototype.CHECK = function() {
- return this.getToken(TSqlParser.CHECK, 0);
-};
-
-Table_constraintContext.prototype.search_condition = function() {
- return this.getTypedRuleContext(Search_conditionContext,0);
-};
-
-Table_constraintContext.prototype.DEFAULT = function() {
- return this.getToken(TSqlParser.DEFAULT, 0);
-};
-
-Table_constraintContext.prototype.FOR = function() {
- return this.getToken(TSqlParser.FOR, 0);
-};
-
-Table_constraintContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Table_constraintContext.prototype.FOREIGN = function() {
- return this.getToken(TSqlParser.FOREIGN, 0);
-};
-
-Table_constraintContext.prototype.KEY = function() {
- return this.getToken(TSqlParser.KEY, 0);
-};
-
-Table_constraintContext.prototype.REFERENCES = function() {
- return this.getToken(TSqlParser.REFERENCES, 0);
-};
-
-Table_constraintContext.prototype.table_name = function() {
- return this.getTypedRuleContext(Table_nameContext,0);
-};
-
-Table_constraintContext.prototype.CONSTRAINT = function() {
- return this.getToken(TSqlParser.CONSTRAINT, 0);
-};
-
-Table_constraintContext.prototype.column_name_list = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Column_name_listContext);
- } else {
- return this.getTypedRuleContext(Column_name_listContext,i);
- }
-};
-
-Table_constraintContext.prototype.PRIMARY = function() {
- return this.getToken(TSqlParser.PRIMARY, 0);
-};
-
-Table_constraintContext.prototype.UNIQUE = function() {
- return this.getToken(TSqlParser.UNIQUE, 0);
-};
-
-Table_constraintContext.prototype.clustered = function() {
- return this.getTypedRuleContext(ClusteredContext,0);
-};
-
-Table_constraintContext.prototype.index_options = function() {
- return this.getTypedRuleContext(Index_optionsContext,0);
-};
-
-Table_constraintContext.prototype.ON = function() {
- return this.getToken(TSqlParser.ON, 0);
-};
-
-Table_constraintContext.prototype.NOT = function() {
- return this.getToken(TSqlParser.NOT, 0);
-};
-
-Table_constraintContext.prototype.REPLICATION = function() {
- return this.getToken(TSqlParser.REPLICATION, 0);
-};
-
-Table_constraintContext.prototype.STRING = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.STRING);
- } else {
- return this.getToken(TSqlParser.STRING, i);
- }
-};
-
-
-Table_constraintContext.prototype.PLUS = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.PLUS);
- } else {
- return this.getToken(TSqlParser.PLUS, i);
- }
-};
-
-
-Table_constraintContext.prototype.function_call = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Function_callContext);
- } else {
- return this.getTypedRuleContext(Function_callContext,i);
- }
-};
-
-Table_constraintContext.prototype.DECIMAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DECIMAL);
- } else {
- return this.getToken(TSqlParser.DECIMAL, i);
- }
-};
-
-
-Table_constraintContext.prototype.on_delete = function() {
- return this.getTypedRuleContext(On_deleteContext,0);
-};
-
-Table_constraintContext.prototype.on_update = function() {
- return this.getTypedRuleContext(On_updateContext,0);
-};
-
-Table_constraintContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterTable_constraint(this);
- }
-};
-
-Table_constraintContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitTable_constraint(this);
- }
-};
-
-Table_constraintContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitTable_constraint(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Table_constraintContext = Table_constraintContext;
-
-TSqlParser.prototype.table_constraint = function() {
-
- var localctx = new Table_constraintContext(this, this._ctx, this.state);
- this.enterRule(localctx, 704, TSqlParser.RULE_table_constraint);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 8612;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.CONSTRAINT) {
- this.state = 8610;
- this.match(TSqlParser.CONSTRAINT);
- this.state = 8611;
- localctx.constraint = this.id();
- }
-
- this.state = 8678;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.PRIMARY:
- case TSqlParser.UNIQUE:
- this.state = 8617;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.PRIMARY:
- this.state = 8614;
- this.match(TSqlParser.PRIMARY);
- this.state = 8615;
- this.match(TSqlParser.KEY);
- break;
- case TSqlParser.UNIQUE:
- this.state = 8616;
- this.match(TSqlParser.UNIQUE);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 8620;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.CLUSTERED || _la===TSqlParser.NONCLUSTERED) {
- this.state = 8619;
- this.clustered();
- }
-
- this.state = 8622;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 8623;
- this.column_name_list_with_order();
- this.state = 8624;
- this.match(TSqlParser.RR_BRACKET);
- this.state = 8626;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1219,this._ctx);
- if(la_===1) {
- this.state = 8625;
- this.index_options();
-
- }
- this.state = 8630;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.ON) {
- this.state = 8628;
- this.match(TSqlParser.ON);
- this.state = 8629;
- this.id();
- }
-
- break;
- case TSqlParser.CHECK:
- this.state = 8632;
- this.match(TSqlParser.CHECK);
- this.state = 8636;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.NOT) {
- this.state = 8633;
- this.match(TSqlParser.NOT);
- this.state = 8634;
- this.match(TSqlParser.FOR);
- this.state = 8635;
- this.match(TSqlParser.REPLICATION);
- }
-
- this.state = 8638;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 8639;
- this.search_condition();
- this.state = 8640;
- this.match(TSqlParser.RR_BRACKET);
- break;
- case TSqlParser.DEFAULT:
- this.state = 8642;
- this.match(TSqlParser.DEFAULT);
- this.state = 8644;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.LR_BRACKET) {
- this.state = 8643;
- this.match(TSqlParser.LR_BRACKET);
- }
-
- this.state = 8650;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- do {
- this.state = 8650;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.STRING:
- this.state = 8646;
- this.match(TSqlParser.STRING);
- break;
- case TSqlParser.PLUS:
- this.state = 8647;
- this.match(TSqlParser.PLUS);
- break;
- case TSqlParser.CALLED:
- case TSqlParser.COALESCE:
- case TSqlParser.CONVERT:
- case TSqlParser.CURRENT_TIMESTAMP:
- case TSqlParser.CURRENT_USER:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.IDENTITY:
- case TSqlParser.IIF:
- case TSqlParser.INIT:
- case TSqlParser.ISNULL:
- case TSqlParser.KEY:
- case TSqlParser.LEFT:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.NULLIF:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.RIGHT:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SESSION_USER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.SYSTEM_USER:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.LOCAL_ID:
- case TSqlParser.ID:
- this.state = 8648;
- this.function_call();
- break;
- case TSqlParser.DECIMAL:
- this.state = 8649;
- this.match(TSqlParser.DECIMAL);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 8652;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- } while(((((_la - 38)) & ~0x1f) == 0 && ((1 << (_la - 38)) & ((1 << (TSqlParser.CALLED - 38)) | (1 << (TSqlParser.COALESCE - 38)) | (1 << (TSqlParser.CONVERT - 38)))) !== 0) || ((((_la - 76)) & ~0x1f) == 0 && ((1 << (_la - 76)) & ((1 << (TSqlParser.CURRENT_TIMESTAMP - 76)) | (1 << (TSqlParser.CURRENT_USER - 76)) | (1 << (TSqlParser.DATA_COMPRESSION - 76)))) !== 0) || ((((_la - 112)) & ~0x1f) == 0 && ((1 << (_la - 112)) & ((1 << (TSqlParser.EVENTDATA - 112)) | (1 << (TSqlParser.FILENAME - 112)) | (1 << (TSqlParser.FILLFACTOR - 112)) | (1 << (TSqlParser.FORCESEEK - 112)))) !== 0) || ((((_la - 148)) & ~0x1f) == 0 && ((1 << (_la - 148)) & ((1 << (TSqlParser.IDENTITY - 148)) | (1 << (TSqlParser.IIF - 148)) | (1 << (TSqlParser.INIT - 148)) | (1 << (TSqlParser.ISNULL - 148)) | (1 << (TSqlParser.KEY - 148)) | (1 << (TSqlParser.LEFT - 148)))) !== 0) || _la===TSqlParser.MASTER || _la===TSqlParser.MAX_MEMORY || ((((_la - 222)) & ~0x1f) == 0 && ((1 << (_la - 222)) & ((1 << (TSqlParser.NULLIF - 222)) | (1 << (TSqlParser.OFFSETS - 222)) | (1 << (TSqlParser.PAGE - 222)))) !== 0) || ((((_la - 259)) & ~0x1f) == 0 && ((1 << (_la - 259)) & ((1 << (TSqlParser.PUBLIC - 259)) | (1 << (TSqlParser.R - 259)) | (1 << (TSqlParser.RAW - 259)) | (1 << (TSqlParser.RETURN - 259)) | (1 << (TSqlParser.RETURNS - 259)) | (1 << (TSqlParser.RIGHT - 259)) | (1 << (TSqlParser.ROWCOUNT - 259)))) !== 0) || ((((_la - 295)) & ~0x1f) == 0 && ((1 << (_la - 295)) & ((1 << (TSqlParser.SAFETY - 295)) | (1 << (TSqlParser.SERVER - 295)) | (1 << (TSqlParser.SESSION_USER - 295)) | (1 << (TSqlParser.SID - 295)) | (1 << (TSqlParser.SOURCE - 295)) | (1 << (TSqlParser.SPLIT - 295)))) !== 0) || ((((_la - 327)) & ~0x1f) == 0 && ((1 << (_la - 327)) & ((1 << (TSqlParser.STATE - 327)) | (1 << (TSqlParser.START - 327)) | (1 << (TSqlParser.SYSTEM_USER - 327)) | (1 << (TSqlParser.TARGET - 327)))) !== 0) || ((((_la - 380)) & ~0x1f) == 0 && ((1 << (_la - 380)) & ((1 << (TSqlParser.ABSOLUTE - 380)) | (1 << (TSqlParser.ACCENT_SENSITIVITY - 380)) | (1 << (TSqlParser.ACTION - 380)) | (1 << (TSqlParser.ACTIVATION - 380)) | (1 << (TSqlParser.ACTIVE - 380)) | (1 << (TSqlParser.ADDRESS - 380)) | (1 << (TSqlParser.AES_128 - 380)) | (1 << (TSqlParser.AES_192 - 380)) | (1 << (TSqlParser.AES_256 - 380)) | (1 << (TSqlParser.AFFINITY - 380)) | (1 << (TSqlParser.AFTER - 380)) | (1 << (TSqlParser.AGGREGATE - 380)) | (1 << (TSqlParser.ALGORITHM - 380)) | (1 << (TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS - 380)) | (1 << (TSqlParser.ALLOW_SNAPSHOT_ISOLATION - 380)) | (1 << (TSqlParser.ALLOWED - 380)) | (1 << (TSqlParser.ANSI_NULL_DEFAULT - 380)) | (1 << (TSqlParser.ANSI_NULLS - 380)) | (1 << (TSqlParser.ANSI_PADDING - 380)) | (1 << (TSqlParser.ANSI_WARNINGS - 380)) | (1 << (TSqlParser.APPLICATION_LOG - 380)) | (1 << (TSqlParser.APPLY - 380)) | (1 << (TSqlParser.ARITHABORT - 380)) | (1 << (TSqlParser.ASSEMBLY - 380)) | (1 << (TSqlParser.AUDIT - 380)) | (1 << (TSqlParser.AUDIT_GUID - 380)) | (1 << (TSqlParser.AUTO - 380)) | (1 << (TSqlParser.AUTO_CLEANUP - 380)) | (1 << (TSqlParser.AUTO_CLOSE - 380)) | (1 << (TSqlParser.AUTO_CREATE_STATISTICS - 380)) | (1 << (TSqlParser.AUTO_SHRINK - 380)) | (1 << (TSqlParser.AUTO_UPDATE_STATISTICS - 380)))) !== 0) || ((((_la - 412)) & ~0x1f) == 0 && ((1 << (_la - 412)) & ((1 << (TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC - 412)) | (1 << (TSqlParser.AVAILABILITY - 412)) | (1 << (TSqlParser.AVG - 412)) | (1 << (TSqlParser.BACKUP_PRIORITY - 412)) | (1 << (TSqlParser.BEGIN_DIALOG - 412)) | (1 << (TSqlParser.BIGINT - 412)) | (1 << (TSqlParser.BINARY_BASE64 - 412)) | (1 << (TSqlParser.BINARY_CHECKSUM - 412)) | (1 << (TSqlParser.BINDING - 412)) | (1 << (TSqlParser.BLOB_STORAGE - 412)) | (1 << (TSqlParser.BROKER - 412)) | (1 << (TSqlParser.BROKER_INSTANCE - 412)) | (1 << (TSqlParser.BULK_LOGGED - 412)) | (1 << (TSqlParser.CALLER - 412)) | (1 << (TSqlParser.CAP_CPU_PERCENT - 412)) | (1 << (TSqlParser.CAST - 412)) | (1 << (TSqlParser.CATALOG - 412)) | (1 << (TSqlParser.CATCH - 412)) | (1 << (TSqlParser.CHANGE_RETENTION - 412)) | (1 << (TSqlParser.CHANGE_TRACKING - 412)) | (1 << (TSqlParser.CHECKSUM - 412)) | (1 << (TSqlParser.CHECKSUM_AGG - 412)) | (1 << (TSqlParser.CLEANUP - 412)) | (1 << (TSqlParser.COLLECTION - 412)) | (1 << (TSqlParser.COLUMN_MASTER_KEY - 412)) | (1 << (TSqlParser.COMMITTED - 412)) | (1 << (TSqlParser.COMPATIBILITY_LEVEL - 412)) | (1 << (TSqlParser.CONCAT - 412)) | (1 << (TSqlParser.CONCAT_NULL_YIELDS_NULL - 412)) | (1 << (TSqlParser.CONTENT - 412)) | (1 << (TSqlParser.CONTROL - 412)) | (1 << (TSqlParser.COOKIE - 412)))) !== 0) || ((((_la - 444)) & ~0x1f) == 0 && ((1 << (_la - 444)) & ((1 << (TSqlParser.COUNT - 444)) | (1 << (TSqlParser.COUNT_BIG - 444)) | (1 << (TSqlParser.COUNTER - 444)) | (1 << (TSqlParser.CPU - 444)) | (1 << (TSqlParser.CREATE_NEW - 444)) | (1 << (TSqlParser.CREATION_DISPOSITION - 444)) | (1 << (TSqlParser.CREDENTIAL - 444)) | (1 << (TSqlParser.CRYPTOGRAPHIC - 444)) | (1 << (TSqlParser.CURSOR_CLOSE_ON_COMMIT - 444)) | (1 << (TSqlParser.CURSOR_DEFAULT - 444)) | (1 << (TSqlParser.DATA - 444)) | (1 << (TSqlParser.DATE_CORRELATION_OPTIMIZATION - 444)) | (1 << (TSqlParser.DATEADD - 444)) | (1 << (TSqlParser.DATEDIFF - 444)) | (1 << (TSqlParser.DATENAME - 444)) | (1 << (TSqlParser.DATEPART - 444)) | (1 << (TSqlParser.DAYS - 444)) | (1 << (TSqlParser.DB_CHAINING - 444)) | (1 << (TSqlParser.DB_FAILOVER - 444)) | (1 << (TSqlParser.DECRYPTION - 444)) | (1 << (TSqlParser.DEFAULT_DOUBLE_QUOTE - 444)) | (1 << (TSqlParser.DEFAULT_FULLTEXT_LANGUAGE - 444)) | (1 << (TSqlParser.DEFAULT_LANGUAGE - 444)) | (1 << (TSqlParser.DELAY - 444)) | (1 << (TSqlParser.DELAYED_DURABILITY - 444)) | (1 << (TSqlParser.DELETED - 444)) | (1 << (TSqlParser.DENSE_RANK - 444)) | (1 << (TSqlParser.DEPENDENTS - 444)) | (1 << (TSqlParser.DES - 444)) | (1 << (TSqlParser.DESCRIPTION - 444)) | (1 << (TSqlParser.DESX - 444)) | (1 << (TSqlParser.DHCP - 444)))) !== 0) || ((((_la - 476)) & ~0x1f) == 0 && ((1 << (_la - 476)) & ((1 << (TSqlParser.DIALOG - 476)) | (1 << (TSqlParser.DIRECTORY_NAME - 476)) | (1 << (TSqlParser.DISABLE - 476)) | (1 << (TSqlParser.DISABLE_BROKER - 476)) | (1 << (TSqlParser.DISABLED - 476)) | (1 << (TSqlParser.DISK_DRIVE - 476)) | (1 << (TSqlParser.DOCUMENT - 476)) | (1 << (TSqlParser.DYNAMIC - 476)) | (1 << (TSqlParser.EMERGENCY - 476)) | (1 << (TSqlParser.EMPTY - 476)) | (1 << (TSqlParser.ENABLE - 476)) | (1 << (TSqlParser.ENABLE_BROKER - 476)) | (1 << (TSqlParser.ENCRYPTED_VALUE - 476)) | (1 << (TSqlParser.ENCRYPTION - 476)) | (1 << (TSqlParser.ENDPOINT_URL - 476)) | (1 << (TSqlParser.ERROR_BROKER_CONVERSATIONS - 476)) | (1 << (TSqlParser.EXCLUSIVE - 476)) | (1 << (TSqlParser.EXECUTABLE - 476)) | (1 << (TSqlParser.EXIST - 476)) | (1 << (TSqlParser.EXPAND - 476)) | (1 << (TSqlParser.EXPIRY_DATE - 476)) | (1 << (TSqlParser.EXPLICIT - 476)) | (1 << (TSqlParser.FAIL_OPERATION - 476)) | (1 << (TSqlParser.FAILOVER_MODE - 476)) | (1 << (TSqlParser.FAILURE - 476)) | (1 << (TSqlParser.FAILURE_CONDITION_LEVEL - 476)) | (1 << (TSqlParser.FAST - 476)) | (1 << (TSqlParser.FAST_FORWARD - 476)) | (1 << (TSqlParser.FILEGROUP - 476)) | (1 << (TSqlParser.FILEGROWTH - 476)) | (1 << (TSqlParser.FILEPATH - 476)))) !== 0) || ((((_la - 508)) & ~0x1f) == 0 && ((1 << (_la - 508)) & ((1 << (TSqlParser.FILESTREAM - 508)) | (1 << (TSqlParser.FILTER - 508)) | (1 << (TSqlParser.FIRST - 508)) | (1 << (TSqlParser.FIRST_VALUE - 508)) | (1 << (TSqlParser.FOLLOWING - 508)) | (1 << (TSqlParser.FORCE - 508)) | (1 << (TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS - 508)) | (1 << (TSqlParser.FORCED - 508)) | (1 << (TSqlParser.FORMAT - 508)) | (1 << (TSqlParser.FORWARD_ONLY - 508)) | (1 << (TSqlParser.FULLSCAN - 508)) | (1 << (TSqlParser.FULLTEXT - 508)) | (1 << (TSqlParser.GB - 508)) | (1 << (TSqlParser.GETDATE - 508)) | (1 << (TSqlParser.GETUTCDATE - 508)) | (1 << (TSqlParser.GLOBAL - 508)) | (1 << (TSqlParser.GO - 508)) | (1 << (TSqlParser.GROUP_MAX_REQUESTS - 508)) | (1 << (TSqlParser.GROUPING - 508)) | (1 << (TSqlParser.GROUPING_ID - 508)) | (1 << (TSqlParser.HADR - 508)) | (1 << (TSqlParser.HASH - 508)) | (1 << (TSqlParser.HEALTH_CHECK_TIMEOUT - 508)) | (1 << (TSqlParser.HIGH - 508)) | (1 << (TSqlParser.HONOR_BROKER_PRIORITY - 508)) | (1 << (TSqlParser.HOURS - 508)) | (1 << (TSqlParser.IDENTITY_VALUE - 508)) | (1 << (TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX - 508)) | (1 << (TSqlParser.IMMEDIATE - 508)) | (1 << (TSqlParser.IMPERSONATE - 508)) | (1 << (TSqlParser.IMPORTANCE - 508)))) !== 0) || ((((_la - 540)) & ~0x1f) == 0 && ((1 << (_la - 540)) & ((1 << (TSqlParser.INCREMENTAL - 540)) | (1 << (TSqlParser.INITIATOR - 540)) | (1 << (TSqlParser.INPUT - 540)) | (1 << (TSqlParser.INSENSITIVE - 540)) | (1 << (TSqlParser.INSERTED - 540)) | (1 << (TSqlParser.INT - 540)) | (1 << (TSqlParser.IP - 540)) | (1 << (TSqlParser.ISOLATION - 540)) | (1 << (TSqlParser.KB - 540)) | (1 << (TSqlParser.KEEP - 540)) | (1 << (TSqlParser.KEEPFIXED - 540)) | (1 << (TSqlParser.KEY_SOURCE - 540)) | (1 << (TSqlParser.KEYS - 540)) | (1 << (TSqlParser.KEYSET - 540)) | (1 << (TSqlParser.LAG - 540)) | (1 << (TSqlParser.LAST - 540)) | (1 << (TSqlParser.LAST_VALUE - 540)) | (1 << (TSqlParser.LEAD - 540)) | (1 << (TSqlParser.LEVEL - 540)) | (1 << (TSqlParser.LIST - 540)) | (1 << (TSqlParser.LISTENER - 540)) | (1 << (TSqlParser.LISTENER_URL - 540)) | (1 << (TSqlParser.LOB_COMPACTION - 540)) | (1 << (TSqlParser.LOCAL - 540)) | (1 << (TSqlParser.LOCATION - 540)) | (1 << (TSqlParser.LOCK - 540)) | (1 << (TSqlParser.LOCK_ESCALATION - 540)) | (1 << (TSqlParser.LOGIN - 540)) | (1 << (TSqlParser.LOOP - 540)) | (1 << (TSqlParser.LOW - 540)))) !== 0) || ((((_la - 572)) & ~0x1f) == 0 && ((1 << (_la - 572)) & ((1 << (TSqlParser.MANUAL - 572)) | (1 << (TSqlParser.MARK - 572)) | (1 << (TSqlParser.MATERIALIZED - 572)) | (1 << (TSqlParser.MAX - 572)) | (1 << (TSqlParser.MAX_CPU_PERCENT - 572)) | (1 << (TSqlParser.MAX_DOP - 572)) | (1 << (TSqlParser.MAX_FILES - 572)) | (1 << (TSqlParser.MAX_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MAX_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MAX_PROCESSES - 572)) | (1 << (TSqlParser.MAX_QUEUE_READERS - 572)) | (1 << (TSqlParser.MAX_ROLLOVER_FILES - 572)) | (1 << (TSqlParser.MAXDOP - 572)) | (1 << (TSqlParser.MAXRECURSION - 572)) | (1 << (TSqlParser.MAXSIZE - 572)) | (1 << (TSqlParser.MB - 572)) | (1 << (TSqlParser.MEDIUM - 572)) | (1 << (TSqlParser.MEMORY_OPTIMIZED_DATA - 572)) | (1 << (TSqlParser.MESSAGE - 572)) | (1 << (TSqlParser.MIN - 572)) | (1 << (TSqlParser.MIN_ACTIVE_ROWVERSION - 572)) | (1 << (TSqlParser.MIN_CPU_PERCENT - 572)) | (1 << (TSqlParser.MIN_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MIN_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MINUTES - 572)) | (1 << (TSqlParser.MIRROR_ADDRESS - 572)) | (1 << (TSqlParser.MIXED_PAGE_ALLOCATION - 572)) | (1 << (TSqlParser.MODE - 572)) | (1 << (TSqlParser.MODIFY - 572)) | (1 << (TSqlParser.MOVE - 572)) | (1 << (TSqlParser.MULTI_USER - 572)) | (1 << (TSqlParser.NAME - 572)))) !== 0) || ((((_la - 604)) & ~0x1f) == 0 && ((1 << (_la - 604)) & ((1 << (TSqlParser.NESTED_TRIGGERS - 604)) | (1 << (TSqlParser.NEW_ACCOUNT - 604)) | (1 << (TSqlParser.NEW_BROKER - 604)) | (1 << (TSqlParser.NEW_PASSWORD - 604)) | (1 << (TSqlParser.NEXT - 604)) | (1 << (TSqlParser.NO - 604)) | (1 << (TSqlParser.NO_TRUNCATE - 604)) | (1 << (TSqlParser.NO_WAIT - 604)) | (1 << (TSqlParser.NOCOUNT - 604)) | (1 << (TSqlParser.NODES - 604)) | (1 << (TSqlParser.NOEXPAND - 604)) | (1 << (TSqlParser.NON_TRANSACTED_ACCESS - 604)) | (1 << (TSqlParser.NORECOMPUTE - 604)) | (1 << (TSqlParser.NORECOVERY - 604)) | (1 << (TSqlParser.NOWAIT - 604)) | (1 << (TSqlParser.NTILE - 604)) | (1 << (TSqlParser.NUMANODE - 604)) | (1 << (TSqlParser.NUMBER - 604)) | (1 << (TSqlParser.NUMERIC_ROUNDABORT - 604)) | (1 << (TSqlParser.OBJECT - 604)) | (1 << (TSqlParser.OFFLINE - 604)) | (1 << (TSqlParser.OFFSET - 604)) | (1 << (TSqlParser.OLD_ACCOUNT - 604)) | (1 << (TSqlParser.ONLINE - 604)) | (1 << (TSqlParser.ONLY - 604)) | (1 << (TSqlParser.OPEN_EXISTING - 604)) | (1 << (TSqlParser.OPTIMISTIC - 604)) | (1 << (TSqlParser.OPTIMIZE - 604)) | (1 << (TSqlParser.OUT - 604)) | (1 << (TSqlParser.OUTPUT - 604)) | (1 << (TSqlParser.OWNER - 604)))) !== 0) || ((((_la - 636)) & ~0x1f) == 0 && ((1 << (_la - 636)) & ((1 << (TSqlParser.PAGE_VERIFY - 636)) | (1 << (TSqlParser.PARAMETERIZATION - 636)) | (1 << (TSqlParser.PARTITION - 636)) | (1 << (TSqlParser.PARTITIONS - 636)) | (1 << (TSqlParser.PARTNER - 636)) | (1 << (TSqlParser.PATH - 636)) | (1 << (TSqlParser.POISON_MESSAGE_HANDLING - 636)) | (1 << (TSqlParser.POOL - 636)) | (1 << (TSqlParser.PORT - 636)) | (1 << (TSqlParser.PRECEDING - 636)) | (1 << (TSqlParser.PRIMARY_ROLE - 636)) | (1 << (TSqlParser.PRIOR - 636)) | (1 << (TSqlParser.PRIORITY - 636)) | (1 << (TSqlParser.PRIORITY_LEVEL - 636)) | (1 << (TSqlParser.PRIVATE - 636)) | (1 << (TSqlParser.PRIVATE_KEY - 636)) | (1 << (TSqlParser.PRIVILEGES - 636)) | (1 << (TSqlParser.PROCEDURE_NAME - 636)) | (1 << (TSqlParser.PROPERTY - 636)) | (1 << (TSqlParser.PROVIDER - 636)) | (1 << (TSqlParser.PROVIDER_KEY_NAME - 636)) | (1 << (TSqlParser.QUERY - 636)) | (1 << (TSqlParser.QUEUE - 636)) | (1 << (TSqlParser.QUEUE_DELAY - 636)) | (1 << (TSqlParser.QUOTED_IDENTIFIER - 636)) | (1 << (TSqlParser.RANGE - 636)) | (1 << (TSqlParser.RANK - 636)) | (1 << (TSqlParser.RC2 - 636)) | (1 << (TSqlParser.RC4 - 636)) | (1 << (TSqlParser.RC4_128 - 636)) | (1 << (TSqlParser.READ_COMMITTED_SNAPSHOT - 636)) | (1 << (TSqlParser.READ_ONLY - 636)))) !== 0) || ((((_la - 668)) & ~0x1f) == 0 && ((1 << (_la - 668)) & ((1 << (TSqlParser.READ_ONLY_ROUTING_LIST - 668)) | (1 << (TSqlParser.READ_WRITE - 668)) | (1 << (TSqlParser.READONLY - 668)) | (1 << (TSqlParser.REBUILD - 668)) | (1 << (TSqlParser.RECEIVE - 668)) | (1 << (TSqlParser.RECOMPILE - 668)) | (1 << (TSqlParser.RECOVERY - 668)) | (1 << (TSqlParser.RECURSIVE_TRIGGERS - 668)) | (1 << (TSqlParser.RELATIVE - 668)) | (1 << (TSqlParser.REMOTE - 668)) | (1 << (TSqlParser.REMOTE_SERVICE_NAME - 668)) | (1 << (TSqlParser.REMOVE - 668)) | (1 << (TSqlParser.REORGANIZE - 668)) | (1 << (TSqlParser.REPEATABLE - 668)) | (1 << (TSqlParser.REPLICA - 668)) | (1 << (TSqlParser.REQUEST_MAX_CPU_TIME_SEC - 668)) | (1 << (TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT - 668)) | (1 << (TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC - 668)) | (1 << (TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT - 668)) | (1 << (TSqlParser.RESERVE_DISK_SPACE - 668)) | (1 << (TSqlParser.RESOURCE - 668)) | (1 << (TSqlParser.RESOURCE_MANAGER_LOCATION - 668)) | (1 << (TSqlParser.RESTRICTED_USER - 668)) | (1 << (TSqlParser.RETENTION - 668)) | (1 << (TSqlParser.ROBUST - 668)) | (1 << (TSqlParser.ROOT - 668)) | (1 << (TSqlParser.ROUTE - 668)) | (1 << (TSqlParser.ROW - 668)) | (1 << (TSqlParser.ROW_NUMBER - 668)) | (1 << (TSqlParser.ROWGUID - 668)) | (1 << (TSqlParser.ROWS - 668)) | (1 << (TSqlParser.SAMPLE - 668)))) !== 0) || ((((_la - 700)) & ~0x1f) == 0 && ((1 << (_la - 700)) & ((1 << (TSqlParser.SCHEMABINDING - 700)) | (1 << (TSqlParser.SCOPED - 700)) | (1 << (TSqlParser.SCROLL - 700)) | (1 << (TSqlParser.SCROLL_LOCKS - 700)) | (1 << (TSqlParser.SEARCH - 700)) | (1 << (TSqlParser.SECONDARY - 700)) | (1 << (TSqlParser.SECONDARY_ONLY - 700)) | (1 << (TSqlParser.SECONDARY_ROLE - 700)) | (1 << (TSqlParser.SECONDS - 700)) | (1 << (TSqlParser.SECRET - 700)) | (1 << (TSqlParser.SECURITY - 700)) | (1 << (TSqlParser.SECURITY_LOG - 700)) | (1 << (TSqlParser.SEEDING_MODE - 700)) | (1 << (TSqlParser.SELF - 700)) | (1 << (TSqlParser.SEMI_SENSITIVE - 700)) | (1 << (TSqlParser.SEND - 700)) | (1 << (TSqlParser.SENT - 700)) | (1 << (TSqlParser.SEQUENCE - 700)) | (1 << (TSqlParser.SERIALIZABLE - 700)) | (1 << (TSqlParser.SESSION_TIMEOUT - 700)) | (1 << (TSqlParser.SETERROR - 700)) | (1 << (TSqlParser.SHARE - 700)) | (1 << (TSqlParser.SHOWPLAN - 700)) | (1 << (TSqlParser.SIGNATURE - 700)) | (1 << (TSqlParser.SIMPLE - 700)) | (1 << (TSqlParser.SINGLE_USER - 700)) | (1 << (TSqlParser.SIZE - 700)) | (1 << (TSqlParser.SMALLINT - 700)) | (1 << (TSqlParser.SNAPSHOT - 700)) | (1 << (TSqlParser.SPATIAL_WINDOW_MAX_CELLS - 700)) | (1 << (TSqlParser.STANDBY - 700)) | (1 << (TSqlParser.START_DATE - 700)))) !== 0) || ((((_la - 732)) & ~0x1f) == 0 && ((1 << (_la - 732)) & ((1 << (TSqlParser.STATIC - 732)) | (1 << (TSqlParser.STATS_STREAM - 732)) | (1 << (TSqlParser.STATUS - 732)) | (1 << (TSqlParser.STDEV - 732)) | (1 << (TSqlParser.STDEVP - 732)) | (1 << (TSqlParser.STOPLIST - 732)) | (1 << (TSqlParser.STRING_AGG - 732)) | (1 << (TSqlParser.STUFF - 732)) | (1 << (TSqlParser.SUBJECT - 732)) | (1 << (TSqlParser.SUM - 732)) | (1 << (TSqlParser.SUSPEND - 732)) | (1 << (TSqlParser.SYMMETRIC - 732)) | (1 << (TSqlParser.SYNCHRONOUS_COMMIT - 732)) | (1 << (TSqlParser.SYNONYM - 732)) | (1 << (TSqlParser.SYSTEM - 732)) | (1 << (TSqlParser.TAKE - 732)) | (1 << (TSqlParser.TARGET_RECOVERY_TIME - 732)) | (1 << (TSqlParser.TB - 732)) | (1 << (TSqlParser.TEXTIMAGE_ON - 732)) | (1 << (TSqlParser.THROW - 732)) | (1 << (TSqlParser.TIES - 732)) | (1 << (TSqlParser.TIME - 732)) | (1 << (TSqlParser.TIMEOUT - 732)) | (1 << (TSqlParser.TIMER - 732)) | (1 << (TSqlParser.TINYINT - 732)) | (1 << (TSqlParser.TORN_PAGE_DETECTION - 732)) | (1 << (TSqlParser.TRANSFORM_NOISE_WORDS - 732)) | (1 << (TSqlParser.TRIPLE_DES - 732)) | (1 << (TSqlParser.TRIPLE_DES_3KEY - 732)) | (1 << (TSqlParser.TRUSTWORTHY - 732)))) !== 0) || ((((_la - 764)) & ~0x1f) == 0 && ((1 << (_la - 764)) & ((1 << (TSqlParser.TRY - 764)) | (1 << (TSqlParser.TSQL - 764)) | (1 << (TSqlParser.TWO_DIGIT_YEAR_CUTOFF - 764)) | (1 << (TSqlParser.TYPE - 764)) | (1 << (TSqlParser.TYPE_WARNING - 764)) | (1 << (TSqlParser.UNBOUNDED - 764)) | (1 << (TSqlParser.UNCOMMITTED - 764)) | (1 << (TSqlParser.UNKNOWN - 764)) | (1 << (TSqlParser.UNLIMITED - 764)) | (1 << (TSqlParser.USING - 764)) | (1 << (TSqlParser.VALID_XML - 764)) | (1 << (TSqlParser.VALIDATION - 764)) | (1 << (TSqlParser.VALUE - 764)) | (1 << (TSqlParser.VAR - 764)) | (1 << (TSqlParser.VARP - 764)) | (1 << (TSqlParser.VIEW_METADATA - 764)) | (1 << (TSqlParser.VIEWS - 764)) | (1 << (TSqlParser.WAIT - 764)) | (1 << (TSqlParser.WELL_FORMED_XML - 764)) | (1 << (TSqlParser.WORK - 764)) | (1 << (TSqlParser.WORKLOAD - 764)) | (1 << (TSqlParser.XML - 764)) | (1 << (TSqlParser.XMLNAMESPACES - 764)))) !== 0) || ((((_la - 796)) & ~0x1f) == 0 && ((1 << (_la - 796)) & ((1 << (TSqlParser.DOUBLE_QUOTE_ID - 796)) | (1 << (TSqlParser.SQUARE_BRACKET_ID - 796)) | (1 << (TSqlParser.LOCAL_ID - 796)) | (1 << (TSqlParser.DECIMAL - 796)) | (1 << (TSqlParser.ID - 796)) | (1 << (TSqlParser.STRING - 796)))) !== 0) || _la===TSqlParser.PLUS);
- this.state = 8655;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.RR_BRACKET) {
- this.state = 8654;
- this.match(TSqlParser.RR_BRACKET);
- }
-
- this.state = 8657;
- this.match(TSqlParser.FOR);
- this.state = 8658;
- this.id();
- break;
- case TSqlParser.FOREIGN:
- this.state = 8659;
- this.match(TSqlParser.FOREIGN);
- this.state = 8660;
- this.match(TSqlParser.KEY);
- this.state = 8661;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 8662;
- localctx.fk = this.column_name_list();
- this.state = 8663;
- this.match(TSqlParser.RR_BRACKET);
- this.state = 8664;
- this.match(TSqlParser.REFERENCES);
- this.state = 8665;
- this.table_name();
- this.state = 8670;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1226,this._ctx);
- if(la_===1) {
- this.state = 8666;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 8667;
- localctx.pk = this.column_name_list();
- this.state = 8668;
- this.match(TSqlParser.RR_BRACKET);
-
- }
- this.state = 8673;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1227,this._ctx);
- if(la_===1) {
- this.state = 8672;
- this.on_delete();
-
- }
- this.state = 8676;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.ON) {
- this.state = 8675;
- this.on_update();
- }
-
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function On_deleteContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_on_delete;
- return this;
-}
-
-On_deleteContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-On_deleteContext.prototype.constructor = On_deleteContext;
-
-On_deleteContext.prototype.ON = function() {
- return this.getToken(TSqlParser.ON, 0);
-};
-
-On_deleteContext.prototype.DELETE = function() {
- return this.getToken(TSqlParser.DELETE, 0);
-};
-
-On_deleteContext.prototype.NO = function() {
- return this.getToken(TSqlParser.NO, 0);
-};
-
-On_deleteContext.prototype.ACTION = function() {
- return this.getToken(TSqlParser.ACTION, 0);
-};
-
-On_deleteContext.prototype.CASCADE = function() {
- return this.getToken(TSqlParser.CASCADE, 0);
-};
-
-On_deleteContext.prototype.SET = function() {
- return this.getToken(TSqlParser.SET, 0);
-};
-
-On_deleteContext.prototype.NULL = function() {
- return this.getToken(TSqlParser.NULL, 0);
-};
-
-On_deleteContext.prototype.DEFAULT = function() {
- return this.getToken(TSqlParser.DEFAULT, 0);
-};
-
-On_deleteContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterOn_delete(this);
- }
-};
-
-On_deleteContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitOn_delete(this);
- }
-};
-
-On_deleteContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitOn_delete(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.On_deleteContext = On_deleteContext;
-
-TSqlParser.prototype.on_delete = function() {
-
- var localctx = new On_deleteContext(this, this._ctx, this.state);
- this.enterRule(localctx, 706, TSqlParser.RULE_on_delete);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 8680;
- this.match(TSqlParser.ON);
- this.state = 8681;
- this.match(TSqlParser.DELETE);
- this.state = 8689;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1230,this._ctx);
- switch(la_) {
- case 1:
- this.state = 8682;
- this.match(TSqlParser.NO);
- this.state = 8683;
- this.match(TSqlParser.ACTION);
- break;
-
- case 2:
- this.state = 8684;
- this.match(TSqlParser.CASCADE);
- break;
-
- case 3:
- this.state = 8685;
- this.match(TSqlParser.SET);
- this.state = 8686;
- this.match(TSqlParser.NULL);
- break;
-
- case 4:
- this.state = 8687;
- this.match(TSqlParser.SET);
- this.state = 8688;
- this.match(TSqlParser.DEFAULT);
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function On_updateContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_on_update;
- return this;
-}
-
-On_updateContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-On_updateContext.prototype.constructor = On_updateContext;
-
-On_updateContext.prototype.ON = function() {
- return this.getToken(TSqlParser.ON, 0);
-};
-
-On_updateContext.prototype.UPDATE = function() {
- return this.getToken(TSqlParser.UPDATE, 0);
-};
-
-On_updateContext.prototype.NO = function() {
- return this.getToken(TSqlParser.NO, 0);
-};
-
-On_updateContext.prototype.ACTION = function() {
- return this.getToken(TSqlParser.ACTION, 0);
-};
-
-On_updateContext.prototype.CASCADE = function() {
- return this.getToken(TSqlParser.CASCADE, 0);
-};
-
-On_updateContext.prototype.SET = function() {
- return this.getToken(TSqlParser.SET, 0);
-};
-
-On_updateContext.prototype.NULL = function() {
- return this.getToken(TSqlParser.NULL, 0);
-};
-
-On_updateContext.prototype.DEFAULT = function() {
- return this.getToken(TSqlParser.DEFAULT, 0);
-};
-
-On_updateContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterOn_update(this);
- }
-};
-
-On_updateContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitOn_update(this);
- }
-};
-
-On_updateContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitOn_update(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.On_updateContext = On_updateContext;
-
-TSqlParser.prototype.on_update = function() {
-
- var localctx = new On_updateContext(this, this._ctx, this.state);
- this.enterRule(localctx, 708, TSqlParser.RULE_on_update);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 8691;
- this.match(TSqlParser.ON);
- this.state = 8692;
- this.match(TSqlParser.UPDATE);
- this.state = 8700;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1231,this._ctx);
- switch(la_) {
- case 1:
- this.state = 8693;
- this.match(TSqlParser.NO);
- this.state = 8694;
- this.match(TSqlParser.ACTION);
- break;
-
- case 2:
- this.state = 8695;
- this.match(TSqlParser.CASCADE);
- break;
-
- case 3:
- this.state = 8696;
- this.match(TSqlParser.SET);
- this.state = 8697;
- this.match(TSqlParser.NULL);
- break;
-
- case 4:
- this.state = 8698;
- this.match(TSqlParser.SET);
- this.state = 8699;
- this.match(TSqlParser.DEFAULT);
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Index_optionsContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_index_options;
- return this;
-}
-
-Index_optionsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Index_optionsContext.prototype.constructor = Index_optionsContext;
-
-Index_optionsContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Index_optionsContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Index_optionsContext.prototype.index_option = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Index_optionContext);
- } else {
- return this.getTypedRuleContext(Index_optionContext,i);
- }
-};
-
-Index_optionsContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Index_optionsContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Index_optionsContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterIndex_options(this);
- }
-};
-
-Index_optionsContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitIndex_options(this);
- }
-};
-
-Index_optionsContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitIndex_options(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Index_optionsContext = Index_optionsContext;
-
-TSqlParser.prototype.index_options = function() {
-
- var localctx = new Index_optionsContext(this, this._ctx, this.state);
- this.enterRule(localctx, 710, TSqlParser.RULE_index_options);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 8702;
- this.match(TSqlParser.WITH);
- this.state = 8703;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 8704;
- this.index_option();
- this.state = 8709;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 8705;
- this.match(TSqlParser.COMMA);
- this.state = 8706;
- this.index_option();
- this.state = 8711;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- this.state = 8712;
- this.match(TSqlParser.RR_BRACKET);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Index_optionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_index_option;
- return this;
-}
-
-Index_optionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Index_optionContext.prototype.constructor = Index_optionContext;
-
-Index_optionContext.prototype.simple_id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Simple_idContext);
- } else {
- return this.getTypedRuleContext(Simple_idContext,i);
- }
-};
-
-Index_optionContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Index_optionContext.prototype.on_off = function() {
- return this.getTypedRuleContext(On_offContext,0);
-};
-
-Index_optionContext.prototype.DECIMAL = function() {
- return this.getToken(TSqlParser.DECIMAL, 0);
-};
-
-Index_optionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterIndex_option(this);
- }
-};
-
-Index_optionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitIndex_option(this);
- }
-};
-
-Index_optionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitIndex_option(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Index_optionContext = Index_optionContext;
-
-TSqlParser.prototype.index_option = function() {
-
- var localctx = new Index_optionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 712, TSqlParser.RULE_index_option);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 8714;
- this.simple_id();
- this.state = 8715;
- this.match(TSqlParser.EQUAL);
- this.state = 8719;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.ID:
- this.state = 8716;
- this.simple_id();
- break;
- case TSqlParser.OFF:
- case TSqlParser.ON:
- this.state = 8717;
- this.on_off();
- break;
- case TSqlParser.DECIMAL:
- this.state = 8718;
- this.match(TSqlParser.DECIMAL);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Declare_cursorContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_declare_cursor;
- return this;
-}
-
-Declare_cursorContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Declare_cursorContext.prototype.constructor = Declare_cursorContext;
-
-Declare_cursorContext.prototype.DECLARE = function() {
- return this.getToken(TSqlParser.DECLARE, 0);
-};
-
-Declare_cursorContext.prototype.cursor_name = function() {
- return this.getTypedRuleContext(Cursor_nameContext,0);
-};
-
-Declare_cursorContext.prototype.CURSOR = function() {
- return this.getToken(TSqlParser.CURSOR, 0);
-};
-
-Declare_cursorContext.prototype.FOR = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.FOR);
- } else {
- return this.getToken(TSqlParser.FOR, i);
- }
-};
-
-
-Declare_cursorContext.prototype.select_statement = function() {
- return this.getTypedRuleContext(Select_statementContext,0);
-};
-
-Declare_cursorContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Declare_cursorContext.prototype.declare_set_cursor_common = function() {
- return this.getTypedRuleContext(Declare_set_cursor_commonContext,0);
-};
-
-Declare_cursorContext.prototype.SCROLL = function() {
- return this.getToken(TSqlParser.SCROLL, 0);
-};
-
-Declare_cursorContext.prototype.SEMI_SENSITIVE = function() {
- return this.getToken(TSqlParser.SEMI_SENSITIVE, 0);
-};
-
-Declare_cursorContext.prototype.INSENSITIVE = function() {
- return this.getToken(TSqlParser.INSENSITIVE, 0);
-};
-
-Declare_cursorContext.prototype.READ = function() {
- return this.getToken(TSqlParser.READ, 0);
-};
-
-Declare_cursorContext.prototype.ONLY = function() {
- return this.getToken(TSqlParser.ONLY, 0);
-};
-
-Declare_cursorContext.prototype.UPDATE = function() {
- return this.getToken(TSqlParser.UPDATE, 0);
-};
-
-Declare_cursorContext.prototype.OF = function() {
- return this.getToken(TSqlParser.OF, 0);
-};
-
-Declare_cursorContext.prototype.column_name_list = function() {
- return this.getTypedRuleContext(Column_name_listContext,0);
-};
-
-Declare_cursorContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDeclare_cursor(this);
- }
-};
-
-Declare_cursorContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDeclare_cursor(this);
- }
-};
-
-Declare_cursorContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDeclare_cursor(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Declare_cursorContext = Declare_cursorContext;
-
-TSqlParser.prototype.declare_cursor = function() {
-
- var localctx = new Declare_cursorContext(this, this._ctx, this.state);
- this.enterRule(localctx, 714, TSqlParser.RULE_declare_cursor);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 8721;
- this.match(TSqlParser.DECLARE);
- this.state = 8722;
- this.cursor_name();
- this.state = 8754;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1241,this._ctx);
- switch(la_) {
- case 1:
- this.state = 8723;
- this.match(TSqlParser.CURSOR);
- this.state = 8733;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1236,this._ctx);
- if(la_===1) {
- this.state = 8724;
- this.declare_set_cursor_common();
- this.state = 8731;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.FOR) {
- this.state = 8725;
- this.match(TSqlParser.FOR);
- this.state = 8726;
- this.match(TSqlParser.UPDATE);
- this.state = 8729;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.OF) {
- this.state = 8727;
- this.match(TSqlParser.OF);
- this.state = 8728;
- this.column_name_list();
- }
-
- }
-
-
- }
- break;
-
- case 2:
- this.state = 8736;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.INSENSITIVE || _la===TSqlParser.SEMI_SENSITIVE) {
- this.state = 8735;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.INSENSITIVE || _la===TSqlParser.SEMI_SENSITIVE)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- }
-
- this.state = 8739;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.SCROLL) {
- this.state = 8738;
- this.match(TSqlParser.SCROLL);
- }
-
- this.state = 8741;
- this.match(TSqlParser.CURSOR);
- this.state = 8742;
- this.match(TSqlParser.FOR);
- this.state = 8743;
- this.select_statement();
- this.state = 8752;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.FOR) {
- this.state = 8744;
- this.match(TSqlParser.FOR);
- this.state = 8750;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.READ:
- this.state = 8745;
- this.match(TSqlParser.READ);
- this.state = 8746;
- this.match(TSqlParser.ONLY);
- break;
- case TSqlParser.UPDATE:
- this.state = 8747;
- this.match(TSqlParser.UPDATE);
- break;
- case TSqlParser.OF:
- this.state = 8748;
- this.match(TSqlParser.OF);
- this.state = 8749;
- this.column_name_list();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- }
-
- break;
-
- }
- this.state = 8757;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1242,this._ctx);
- if(la_===1) {
- this.state = 8756;
- this.match(TSqlParser.SEMI);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Declare_set_cursor_commonContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_declare_set_cursor_common;
- return this;
-}
-
-Declare_set_cursor_commonContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Declare_set_cursor_commonContext.prototype.constructor = Declare_set_cursor_commonContext;
-
-Declare_set_cursor_commonContext.prototype.FOR = function() {
- return this.getToken(TSqlParser.FOR, 0);
-};
-
-Declare_set_cursor_commonContext.prototype.select_statement = function() {
- return this.getTypedRuleContext(Select_statementContext,0);
-};
-
-Declare_set_cursor_commonContext.prototype.declare_set_cursor_common_partial = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Declare_set_cursor_common_partialContext);
- } else {
- return this.getTypedRuleContext(Declare_set_cursor_common_partialContext,i);
- }
-};
-
-Declare_set_cursor_commonContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDeclare_set_cursor_common(this);
- }
-};
-
-Declare_set_cursor_commonContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDeclare_set_cursor_common(this);
- }
-};
-
-Declare_set_cursor_commonContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDeclare_set_cursor_common(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Declare_set_cursor_commonContext = Declare_set_cursor_commonContext;
-
-TSqlParser.prototype.declare_set_cursor_common = function() {
-
- var localctx = new Declare_set_cursor_commonContext(this, this._ctx, this.state);
- this.enterRule(localctx, 716, TSqlParser.RULE_declare_set_cursor_common);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 8762;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.DYNAMIC || _la===TSqlParser.FAST_FORWARD || _la===TSqlParser.FORWARD_ONLY || _la===TSqlParser.GLOBAL || _la===TSqlParser.KEYSET || _la===TSqlParser.LOCAL || _la===TSqlParser.OPTIMISTIC || _la===TSqlParser.READ_ONLY || ((((_la - 702)) & ~0x1f) == 0 && ((1 << (_la - 702)) & ((1 << (TSqlParser.SCROLL - 702)) | (1 << (TSqlParser.SCROLL_LOCKS - 702)) | (1 << (TSqlParser.STATIC - 702)))) !== 0) || _la===TSqlParser.TYPE_WARNING) {
- this.state = 8759;
- this.declare_set_cursor_common_partial();
- this.state = 8764;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- this.state = 8765;
- this.match(TSqlParser.FOR);
- this.state = 8766;
- this.select_statement();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Declare_set_cursor_common_partialContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_declare_set_cursor_common_partial;
- return this;
-}
-
-Declare_set_cursor_common_partialContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Declare_set_cursor_common_partialContext.prototype.constructor = Declare_set_cursor_common_partialContext;
-
-Declare_set_cursor_common_partialContext.prototype.LOCAL = function() {
- return this.getToken(TSqlParser.LOCAL, 0);
-};
-
-Declare_set_cursor_common_partialContext.prototype.GLOBAL = function() {
- return this.getToken(TSqlParser.GLOBAL, 0);
-};
-
-Declare_set_cursor_common_partialContext.prototype.FORWARD_ONLY = function() {
- return this.getToken(TSqlParser.FORWARD_ONLY, 0);
-};
-
-Declare_set_cursor_common_partialContext.prototype.SCROLL = function() {
- return this.getToken(TSqlParser.SCROLL, 0);
-};
-
-Declare_set_cursor_common_partialContext.prototype.STATIC = function() {
- return this.getToken(TSqlParser.STATIC, 0);
-};
-
-Declare_set_cursor_common_partialContext.prototype.KEYSET = function() {
- return this.getToken(TSqlParser.KEYSET, 0);
-};
-
-Declare_set_cursor_common_partialContext.prototype.DYNAMIC = function() {
- return this.getToken(TSqlParser.DYNAMIC, 0);
-};
-
-Declare_set_cursor_common_partialContext.prototype.FAST_FORWARD = function() {
- return this.getToken(TSqlParser.FAST_FORWARD, 0);
-};
-
-Declare_set_cursor_common_partialContext.prototype.READ_ONLY = function() {
- return this.getToken(TSqlParser.READ_ONLY, 0);
-};
-
-Declare_set_cursor_common_partialContext.prototype.SCROLL_LOCKS = function() {
- return this.getToken(TSqlParser.SCROLL_LOCKS, 0);
-};
-
-Declare_set_cursor_common_partialContext.prototype.OPTIMISTIC = function() {
- return this.getToken(TSqlParser.OPTIMISTIC, 0);
-};
-
-Declare_set_cursor_common_partialContext.prototype.TYPE_WARNING = function() {
- return this.getToken(TSqlParser.TYPE_WARNING, 0);
-};
-
-Declare_set_cursor_common_partialContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDeclare_set_cursor_common_partial(this);
- }
-};
-
-Declare_set_cursor_common_partialContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDeclare_set_cursor_common_partial(this);
- }
-};
-
-Declare_set_cursor_common_partialContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDeclare_set_cursor_common_partial(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Declare_set_cursor_common_partialContext = Declare_set_cursor_common_partialContext;
-
-TSqlParser.prototype.declare_set_cursor_common_partial = function() {
-
- var localctx = new Declare_set_cursor_common_partialContext(this, this._ctx, this.state);
- this.enterRule(localctx, 718, TSqlParser.RULE_declare_set_cursor_common_partial);
- var _la = 0; // Token type
- try {
- this.state = 8773;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.GLOBAL:
- case TSqlParser.LOCAL:
- this.enterOuterAlt(localctx, 1);
- this.state = 8768;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.GLOBAL || _la===TSqlParser.LOCAL)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.SCROLL:
- this.enterOuterAlt(localctx, 2);
- this.state = 8769;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.FORWARD_ONLY || _la===TSqlParser.SCROLL)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- case TSqlParser.DYNAMIC:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.KEYSET:
- case TSqlParser.STATIC:
- this.enterOuterAlt(localctx, 3);
- this.state = 8770;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.DYNAMIC || _la===TSqlParser.FAST_FORWARD || _la===TSqlParser.KEYSET || _la===TSqlParser.STATIC)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.READ_ONLY:
- case TSqlParser.SCROLL_LOCKS:
- this.enterOuterAlt(localctx, 4);
- this.state = 8771;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OPTIMISTIC || _la===TSqlParser.READ_ONLY || _la===TSqlParser.SCROLL_LOCKS)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- case TSqlParser.TYPE_WARNING:
- this.enterOuterAlt(localctx, 5);
- this.state = 8772;
- this.match(TSqlParser.TYPE_WARNING);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Fetch_cursorContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_fetch_cursor;
- return this;
-}
-
-Fetch_cursorContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Fetch_cursorContext.prototype.constructor = Fetch_cursorContext;
-
-Fetch_cursorContext.prototype.FETCH = function() {
- return this.getToken(TSqlParser.FETCH, 0);
-};
-
-Fetch_cursorContext.prototype.cursor_name = function() {
- return this.getTypedRuleContext(Cursor_nameContext,0);
-};
-
-Fetch_cursorContext.prototype.FROM = function() {
- return this.getToken(TSqlParser.FROM, 0);
-};
-
-Fetch_cursorContext.prototype.GLOBAL = function() {
- return this.getToken(TSqlParser.GLOBAL, 0);
-};
-
-Fetch_cursorContext.prototype.INTO = function() {
- return this.getToken(TSqlParser.INTO, 0);
-};
-
-Fetch_cursorContext.prototype.LOCAL_ID = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.LOCAL_ID);
- } else {
- return this.getToken(TSqlParser.LOCAL_ID, i);
- }
-};
-
-
-Fetch_cursorContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Fetch_cursorContext.prototype.NEXT = function() {
- return this.getToken(TSqlParser.NEXT, 0);
-};
-
-Fetch_cursorContext.prototype.PRIOR = function() {
- return this.getToken(TSqlParser.PRIOR, 0);
-};
-
-Fetch_cursorContext.prototype.FIRST = function() {
- return this.getToken(TSqlParser.FIRST, 0);
-};
-
-Fetch_cursorContext.prototype.LAST = function() {
- return this.getToken(TSqlParser.LAST, 0);
-};
-
-Fetch_cursorContext.prototype.expression = function() {
- return this.getTypedRuleContext(ExpressionContext,0);
-};
-
-Fetch_cursorContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Fetch_cursorContext.prototype.ABSOLUTE = function() {
- return this.getToken(TSqlParser.ABSOLUTE, 0);
-};
-
-Fetch_cursorContext.prototype.RELATIVE = function() {
- return this.getToken(TSqlParser.RELATIVE, 0);
-};
-
-Fetch_cursorContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterFetch_cursor(this);
- }
-};
-
-Fetch_cursorContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitFetch_cursor(this);
- }
-};
-
-Fetch_cursorContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitFetch_cursor(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Fetch_cursorContext = Fetch_cursorContext;
-
-TSqlParser.prototype.fetch_cursor = function() {
-
- var localctx = new Fetch_cursorContext(this, this._ctx, this.state);
- this.enterRule(localctx, 720, TSqlParser.RULE_fetch_cursor);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 8775;
- this.match(TSqlParser.FETCH);
- this.state = 8785;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1246,this._ctx);
- if(la_===1) {
- this.state = 8782;
- this._errHandler.sync(this);
- switch (this._input.LA(1)) {
- case TSqlParser.NEXT:
- this.state = 8776;
- this.match(TSqlParser.NEXT);
- break;
- case TSqlParser.PRIOR:
- this.state = 8777;
- this.match(TSqlParser.PRIOR);
- break;
- case TSqlParser.FIRST:
- this.state = 8778;
- this.match(TSqlParser.FIRST);
- break;
- case TSqlParser.LAST:
- this.state = 8779;
- this.match(TSqlParser.LAST);
- break;
- case TSqlParser.ABSOLUTE:
- case TSqlParser.RELATIVE:
- this.state = 8780;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.ABSOLUTE || _la===TSqlParser.RELATIVE)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 8781;
- this.expression(0);
- break;
- case TSqlParser.FROM:
- break;
- default:
- break;
- }
- this.state = 8784;
- this.match(TSqlParser.FROM);
-
- }
- this.state = 8788;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1247,this._ctx);
- if(la_===1) {
- this.state = 8787;
- this.match(TSqlParser.GLOBAL);
-
- }
- this.state = 8790;
- this.cursor_name();
- this.state = 8800;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.INTO) {
- this.state = 8791;
- this.match(TSqlParser.INTO);
- this.state = 8792;
- this.match(TSqlParser.LOCAL_ID);
- this.state = 8797;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 8793;
- this.match(TSqlParser.COMMA);
- this.state = 8794;
- this.match(TSqlParser.LOCAL_ID);
- this.state = 8799;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- }
-
- this.state = 8803;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1250,this._ctx);
- if(la_===1) {
- this.state = 8802;
- this.match(TSqlParser.SEMI);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Set_specialContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_set_special;
- return this;
-}
-
-Set_specialContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Set_specialContext.prototype.constructor = Set_specialContext;
-
-Set_specialContext.prototype.SET = function() {
- return this.getToken(TSqlParser.SET, 0);
-};
-
-Set_specialContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Set_specialContext.prototype.constant_LOCAL_ID = function() {
- return this.getTypedRuleContext(Constant_LOCAL_IDContext,0);
-};
-
-Set_specialContext.prototype.on_off = function() {
- return this.getTypedRuleContext(On_offContext,0);
-};
-
-Set_specialContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Set_specialContext.prototype.TRANSACTION = function() {
- return this.getToken(TSqlParser.TRANSACTION, 0);
-};
-
-Set_specialContext.prototype.ISOLATION = function() {
- return this.getToken(TSqlParser.ISOLATION, 0);
-};
-
-Set_specialContext.prototype.LEVEL = function() {
- return this.getToken(TSqlParser.LEVEL, 0);
-};
-
-Set_specialContext.prototype.READ = function() {
- return this.getToken(TSqlParser.READ, 0);
-};
-
-Set_specialContext.prototype.UNCOMMITTED = function() {
- return this.getToken(TSqlParser.UNCOMMITTED, 0);
-};
-
-Set_specialContext.prototype.COMMITTED = function() {
- return this.getToken(TSqlParser.COMMITTED, 0);
-};
-
-Set_specialContext.prototype.REPEATABLE = function() {
- return this.getToken(TSqlParser.REPEATABLE, 0);
-};
-
-Set_specialContext.prototype.SNAPSHOT = function() {
- return this.getToken(TSqlParser.SNAPSHOT, 0);
-};
-
-Set_specialContext.prototype.SERIALIZABLE = function() {
- return this.getToken(TSqlParser.SERIALIZABLE, 0);
-};
-
-Set_specialContext.prototype.DECIMAL = function() {
- return this.getToken(TSqlParser.DECIMAL, 0);
-};
-
-Set_specialContext.prototype.IDENTITY_INSERT = function() {
- return this.getToken(TSqlParser.IDENTITY_INSERT, 0);
-};
-
-Set_specialContext.prototype.table_name = function() {
- return this.getTypedRuleContext(Table_nameContext,0);
-};
-
-Set_specialContext.prototype.ANSI_NULLS = function() {
- return this.getToken(TSqlParser.ANSI_NULLS, 0);
-};
-
-Set_specialContext.prototype.QUOTED_IDENTIFIER = function() {
- return this.getToken(TSqlParser.QUOTED_IDENTIFIER, 0);
-};
-
-Set_specialContext.prototype.ANSI_PADDING = function() {
- return this.getToken(TSqlParser.ANSI_PADDING, 0);
-};
-
-Set_specialContext.prototype.ANSI_WARNINGS = function() {
- return this.getToken(TSqlParser.ANSI_WARNINGS, 0);
-};
-
-Set_specialContext.prototype.modify_method = function() {
- return this.getTypedRuleContext(Modify_methodContext,0);
-};
-
-Set_specialContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterSet_special(this);
- }
-};
-
-Set_specialContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitSet_special(this);
- }
-};
-
-Set_specialContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitSet_special(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Set_specialContext = Set_specialContext;
-
-TSqlParser.prototype.set_special = function() {
-
- var localctx = new Set_specialContext(this, this._ctx, this.state);
- this.enterRule(localctx, 722, TSqlParser.RULE_set_special);
- try {
- this.state = 8854;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1256,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 8805;
- this.match(TSqlParser.SET);
- this.state = 8806;
- this.id();
- this.state = 8810;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.state = 8807;
- this.id();
- break;
- case TSqlParser.LOCAL_ID:
- case TSqlParser.DECIMAL:
- case TSqlParser.STRING:
- case TSqlParser.BINARY:
- case TSqlParser.FLOAT:
- case TSqlParser.REAL:
- case TSqlParser.DOLLAR:
- case TSqlParser.PLUS:
- case TSqlParser.MINUS:
- this.state = 8808;
- this.constant_LOCAL_ID();
- break;
- case TSqlParser.OFF:
- case TSqlParser.ON:
- this.state = 8809;
- this.on_off();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 8813;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1252,this._ctx);
- if(la_===1) {
- this.state = 8812;
- this.match(TSqlParser.SEMI);
-
- }
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 8815;
- this.match(TSqlParser.SET);
- this.state = 8816;
- this.match(TSqlParser.TRANSACTION);
- this.state = 8817;
- this.match(TSqlParser.ISOLATION);
- this.state = 8818;
- this.match(TSqlParser.LEVEL);
- this.state = 8828;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1253,this._ctx);
- switch(la_) {
- case 1:
- this.state = 8819;
- this.match(TSqlParser.READ);
- this.state = 8820;
- this.match(TSqlParser.UNCOMMITTED);
- break;
-
- case 2:
- this.state = 8821;
- this.match(TSqlParser.READ);
- this.state = 8822;
- this.match(TSqlParser.COMMITTED);
- break;
-
- case 3:
- this.state = 8823;
- this.match(TSqlParser.REPEATABLE);
- this.state = 8824;
- this.match(TSqlParser.READ);
- break;
-
- case 4:
- this.state = 8825;
- this.match(TSqlParser.SNAPSHOT);
- break;
-
- case 5:
- this.state = 8826;
- this.match(TSqlParser.SERIALIZABLE);
- break;
-
- case 6:
- this.state = 8827;
- this.match(TSqlParser.DECIMAL);
- break;
-
- }
- this.state = 8831;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1254,this._ctx);
- if(la_===1) {
- this.state = 8830;
- this.match(TSqlParser.SEMI);
-
- }
- break;
-
- case 3:
- this.enterOuterAlt(localctx, 3);
- this.state = 8833;
- this.match(TSqlParser.SET);
- this.state = 8834;
- this.match(TSqlParser.IDENTITY_INSERT);
- this.state = 8835;
- this.table_name();
- this.state = 8836;
- this.on_off();
- this.state = 8838;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1255,this._ctx);
- if(la_===1) {
- this.state = 8837;
- this.match(TSqlParser.SEMI);
-
- }
- break;
-
- case 4:
- this.enterOuterAlt(localctx, 4);
- this.state = 8840;
- this.match(TSqlParser.SET);
- this.state = 8841;
- this.match(TSqlParser.ANSI_NULLS);
- this.state = 8842;
- this.on_off();
- break;
-
- case 5:
- this.enterOuterAlt(localctx, 5);
- this.state = 8843;
- this.match(TSqlParser.SET);
- this.state = 8844;
- this.match(TSqlParser.QUOTED_IDENTIFIER);
- this.state = 8845;
- this.on_off();
- break;
-
- case 6:
- this.enterOuterAlt(localctx, 6);
- this.state = 8846;
- this.match(TSqlParser.SET);
- this.state = 8847;
- this.match(TSqlParser.ANSI_PADDING);
- this.state = 8848;
- this.on_off();
- break;
-
- case 7:
- this.enterOuterAlt(localctx, 7);
- this.state = 8849;
- this.match(TSqlParser.SET);
- this.state = 8850;
- this.match(TSqlParser.ANSI_WARNINGS);
- this.state = 8851;
- this.on_off();
- break;
-
- case 8:
- this.enterOuterAlt(localctx, 8);
- this.state = 8852;
- this.match(TSqlParser.SET);
- this.state = 8853;
- this.modify_method();
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Constant_LOCAL_IDContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_constant_LOCAL_ID;
- return this;
-}
-
-Constant_LOCAL_IDContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Constant_LOCAL_IDContext.prototype.constructor = Constant_LOCAL_IDContext;
-
-Constant_LOCAL_IDContext.prototype.constant = function() {
- return this.getTypedRuleContext(ConstantContext,0);
-};
-
-Constant_LOCAL_IDContext.prototype.LOCAL_ID = function() {
- return this.getToken(TSqlParser.LOCAL_ID, 0);
-};
-
-Constant_LOCAL_IDContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterConstant_LOCAL_ID(this);
- }
-};
-
-Constant_LOCAL_IDContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitConstant_LOCAL_ID(this);
- }
-};
-
-Constant_LOCAL_IDContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitConstant_LOCAL_ID(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Constant_LOCAL_IDContext = Constant_LOCAL_IDContext;
-
-TSqlParser.prototype.constant_LOCAL_ID = function() {
-
- var localctx = new Constant_LOCAL_IDContext(this, this._ctx, this.state);
- this.enterRule(localctx, 724, TSqlParser.RULE_constant_LOCAL_ID);
- try {
- this.state = 8858;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.DECIMAL:
- case TSqlParser.STRING:
- case TSqlParser.BINARY:
- case TSqlParser.FLOAT:
- case TSqlParser.REAL:
- case TSqlParser.DOLLAR:
- case TSqlParser.PLUS:
- case TSqlParser.MINUS:
- this.enterOuterAlt(localctx, 1);
- this.state = 8856;
- this.constant();
- break;
- case TSqlParser.LOCAL_ID:
- this.enterOuterAlt(localctx, 2);
- this.state = 8857;
- this.match(TSqlParser.LOCAL_ID);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function ExpressionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_expression;
- this.op = null; // Token
- return this;
-}
-
-ExpressionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-ExpressionContext.prototype.constructor = ExpressionContext;
-
-ExpressionContext.prototype.primitive_expression = function() {
- return this.getTypedRuleContext(Primitive_expressionContext,0);
-};
-
-ExpressionContext.prototype.function_call = function() {
- return this.getTypedRuleContext(Function_callContext,0);
-};
-
-ExpressionContext.prototype.case_expression = function() {
- return this.getTypedRuleContext(Case_expressionContext,0);
-};
-
-ExpressionContext.prototype.full_column_name = function() {
- return this.getTypedRuleContext(Full_column_nameContext,0);
-};
-
-ExpressionContext.prototype.bracket_expression = function() {
- return this.getTypedRuleContext(Bracket_expressionContext,0);
-};
-
-ExpressionContext.prototype.unary_operator_expression = function() {
- return this.getTypedRuleContext(Unary_operator_expressionContext,0);
-};
-
-ExpressionContext.prototype.over_clause = function() {
- return this.getTypedRuleContext(Over_clauseContext,0);
-};
-
-ExpressionContext.prototype.expression = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(ExpressionContext);
- } else {
- return this.getTypedRuleContext(ExpressionContext,i);
- }
-};
-
-ExpressionContext.prototype.STAR = function() {
- return this.getToken(TSqlParser.STAR, 0);
-};
-
-ExpressionContext.prototype.DIVIDE = function() {
- return this.getToken(TSqlParser.DIVIDE, 0);
-};
-
-ExpressionContext.prototype.MODULE = function() {
- return this.getToken(TSqlParser.MODULE, 0);
-};
-
-ExpressionContext.prototype.PLUS = function() {
- return this.getToken(TSqlParser.PLUS, 0);
-};
-
-ExpressionContext.prototype.MINUS = function() {
- return this.getToken(TSqlParser.MINUS, 0);
-};
-
-ExpressionContext.prototype.BIT_AND = function() {
- return this.getToken(TSqlParser.BIT_AND, 0);
-};
-
-ExpressionContext.prototype.BIT_XOR = function() {
- return this.getToken(TSqlParser.BIT_XOR, 0);
-};
-
-ExpressionContext.prototype.BIT_OR = function() {
- return this.getToken(TSqlParser.BIT_OR, 0);
-};
-
-ExpressionContext.prototype.DOUBLE_BAR = function() {
- return this.getToken(TSqlParser.DOUBLE_BAR, 0);
-};
-
-ExpressionContext.prototype.comparison_operator = function() {
- return this.getTypedRuleContext(Comparison_operatorContext,0);
-};
-
-ExpressionContext.prototype.assignment_operator = function() {
- return this.getTypedRuleContext(Assignment_operatorContext,0);
-};
-
-ExpressionContext.prototype.COLLATE = function() {
- return this.getToken(TSqlParser.COLLATE, 0);
-};
-
-ExpressionContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-ExpressionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterExpression(this);
- }
-};
-
-ExpressionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitExpression(this);
- }
-};
-
-ExpressionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitExpression(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-TSqlParser.prototype.expression = function(_p) {
- if(_p===undefined) {
- _p = 0;
- }
- var _parentctx = this._ctx;
- var _parentState = this.state;
- var localctx = new ExpressionContext(this, this._ctx, _parentState);
- var _prevctx = localctx;
- var _startState = 726;
- this.enterRecursionRule(localctx, 726, TSqlParser.RULE_expression, _p);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 8868;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1258,this._ctx);
- switch(la_) {
- case 1:
- this.state = 8861;
- this.primitive_expression();
- break;
-
- case 2:
- this.state = 8862;
- this.function_call();
- break;
-
- case 3:
- this.state = 8863;
- this.case_expression();
- break;
-
- case 4:
- this.state = 8864;
- this.full_column_name();
- break;
-
- case 5:
- this.state = 8865;
- this.bracket_expression();
- break;
-
- case 6:
- this.state = 8866;
- this.unary_operator_expression();
- break;
-
- case 7:
- this.state = 8867;
- this.over_clause();
- break;
-
- }
- this._ctx.stop = this._input.LT(-1);
- this.state = 8889;
- this._errHandler.sync(this);
- var _alt = this._interp.adaptivePredict(this._input,1260,this._ctx)
- while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
- if(_alt===1) {
- if(this._parseListeners!==null) {
- this.triggerExitRuleEvent();
- }
- _prevctx = localctx;
- this.state = 8887;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1259,this._ctx);
- switch(la_) {
- case 1:
- localctx = new ExpressionContext(this, _parentctx, _parentState);
- this.pushNewRecursionContext(localctx, _startState, TSqlParser.RULE_expression);
- this.state = 8870;
- if (!( this.precpred(this._ctx, 5))) {
- throw new antlr4.error.FailedPredicateException(this, "this.precpred(this._ctx, 5)");
- }
- this.state = 8871;
- localctx.op = this._input.LT(1);
- _la = this._input.LA(1);
- if(!(((((_la - 831)) & ~0x1f) == 0 && ((1 << (_la - 831)) & ((1 << (TSqlParser.STAR - 831)) | (1 << (TSqlParser.DIVIDE - 831)) | (1 << (TSqlParser.MODULE - 831)))) !== 0))) {
- localctx.op = this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 8872;
- this.expression(6);
- break;
-
- case 2:
- localctx = new ExpressionContext(this, _parentctx, _parentState);
- this.pushNewRecursionContext(localctx, _startState, TSqlParser.RULE_expression);
- this.state = 8873;
- if (!( this.precpred(this._ctx, 4))) {
- throw new antlr4.error.FailedPredicateException(this, "this.precpred(this._ctx, 4)");
- }
- this.state = 8874;
- localctx.op = this._input.LT(1);
- _la = this._input.LA(1);
- if(!(((((_la - 820)) & ~0x1f) == 0 && ((1 << (_la - 820)) & ((1 << (TSqlParser.DOUBLE_BAR - 820)) | (1 << (TSqlParser.PLUS - 820)) | (1 << (TSqlParser.MINUS - 820)) | (1 << (TSqlParser.BIT_OR - 820)) | (1 << (TSqlParser.BIT_AND - 820)) | (1 << (TSqlParser.BIT_XOR - 820)))) !== 0))) {
- localctx.op = this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 8875;
- this.expression(5);
- break;
-
- case 3:
- localctx = new ExpressionContext(this, _parentctx, _parentState);
- this.pushNewRecursionContext(localctx, _startState, TSqlParser.RULE_expression);
- this.state = 8876;
- if (!( this.precpred(this._ctx, 3))) {
- throw new antlr4.error.FailedPredicateException(this, "this.precpred(this._ctx, 3)");
- }
- this.state = 8877;
- this.comparison_operator();
- this.state = 8878;
- this.expression(4);
- break;
-
- case 4:
- localctx = new ExpressionContext(this, _parentctx, _parentState);
- this.pushNewRecursionContext(localctx, _startState, TSqlParser.RULE_expression);
- this.state = 8880;
- if (!( this.precpred(this._ctx, 2))) {
- throw new antlr4.error.FailedPredicateException(this, "this.precpred(this._ctx, 2)");
- }
- this.state = 8881;
- this.assignment_operator();
- this.state = 8882;
- this.expression(3);
- break;
-
- case 5:
- localctx = new ExpressionContext(this, _parentctx, _parentState);
- this.pushNewRecursionContext(localctx, _startState, TSqlParser.RULE_expression);
- this.state = 8884;
- if (!( this.precpred(this._ctx, 10))) {
- throw new antlr4.error.FailedPredicateException(this, "this.precpred(this._ctx, 10)");
- }
- this.state = 8885;
- this.match(TSqlParser.COLLATE);
- this.state = 8886;
- this.id();
- break;
-
- }
- }
- this.state = 8891;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,1260,this._ctx);
- }
-
- } catch( error) {
- if(error instanceof antlr4.error.RecognitionException) {
- localctx.exception = error;
- this._errHandler.reportError(this, error);
- this._errHandler.recover(this, error);
- } else {
- throw error;
- }
- } finally {
- this.unrollRecursionContexts(_parentctx)
- }
- return localctx;
-};
-
-
-function Primitive_expressionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_primitive_expression;
- return this;
-}
-
-Primitive_expressionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Primitive_expressionContext.prototype.constructor = Primitive_expressionContext;
-
-Primitive_expressionContext.prototype.DEFAULT = function() {
- return this.getToken(TSqlParser.DEFAULT, 0);
-};
-
-Primitive_expressionContext.prototype.NULL = function() {
- return this.getToken(TSqlParser.NULL, 0);
-};
-
-Primitive_expressionContext.prototype.LOCAL_ID = function() {
- return this.getToken(TSqlParser.LOCAL_ID, 0);
-};
-
-Primitive_expressionContext.prototype.constant = function() {
- return this.getTypedRuleContext(ConstantContext,0);
-};
-
-Primitive_expressionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterPrimitive_expression(this);
- }
-};
-
-Primitive_expressionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitPrimitive_expression(this);
- }
-};
-
-Primitive_expressionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitPrimitive_expression(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Primitive_expressionContext = Primitive_expressionContext;
-
-TSqlParser.prototype.primitive_expression = function() {
-
- var localctx = new Primitive_expressionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 728, TSqlParser.RULE_primitive_expression);
- try {
- this.state = 8896;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.DEFAULT:
- this.enterOuterAlt(localctx, 1);
- this.state = 8892;
- this.match(TSqlParser.DEFAULT);
- break;
- case TSqlParser.NULL:
- this.enterOuterAlt(localctx, 2);
- this.state = 8893;
- this.match(TSqlParser.NULL);
- break;
- case TSqlParser.LOCAL_ID:
- this.enterOuterAlt(localctx, 3);
- this.state = 8894;
- this.match(TSqlParser.LOCAL_ID);
- break;
- case TSqlParser.DECIMAL:
- case TSqlParser.STRING:
- case TSqlParser.BINARY:
- case TSqlParser.FLOAT:
- case TSqlParser.REAL:
- case TSqlParser.DOLLAR:
- case TSqlParser.PLUS:
- case TSqlParser.MINUS:
- this.enterOuterAlt(localctx, 4);
- this.state = 8895;
- this.constant();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Case_expressionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_case_expression;
- this.caseExpr = null; // ExpressionContext
- this.elseExpr = null; // ExpressionContext
- return this;
-}
-
-Case_expressionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Case_expressionContext.prototype.constructor = Case_expressionContext;
-
-Case_expressionContext.prototype.CASE = function() {
- return this.getToken(TSqlParser.CASE, 0);
-};
-
-Case_expressionContext.prototype.END = function() {
- return this.getToken(TSqlParser.END, 0);
-};
-
-Case_expressionContext.prototype.expression = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(ExpressionContext);
- } else {
- return this.getTypedRuleContext(ExpressionContext,i);
- }
-};
-
-Case_expressionContext.prototype.switch_section = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Switch_sectionContext);
- } else {
- return this.getTypedRuleContext(Switch_sectionContext,i);
- }
-};
-
-Case_expressionContext.prototype.ELSE = function() {
- return this.getToken(TSqlParser.ELSE, 0);
-};
-
-Case_expressionContext.prototype.switch_search_condition_section = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Switch_search_condition_sectionContext);
- } else {
- return this.getTypedRuleContext(Switch_search_condition_sectionContext,i);
- }
-};
-
-Case_expressionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCase_expression(this);
- }
-};
-
-Case_expressionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCase_expression(this);
- }
-};
-
-Case_expressionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCase_expression(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Case_expressionContext = Case_expressionContext;
-
-TSqlParser.prototype.case_expression = function() {
-
- var localctx = new Case_expressionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 730, TSqlParser.RULE_case_expression);
- var _la = 0; // Token type
- try {
- this.state = 8923;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1266,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 8898;
- this.match(TSqlParser.CASE);
- this.state = 8899;
- localctx.caseExpr = this.expression(0);
- this.state = 8901;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- do {
- this.state = 8900;
- this.switch_section();
- this.state = 8903;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- } while(_la===TSqlParser.WHEN);
- this.state = 8907;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.ELSE) {
- this.state = 8905;
- this.match(TSqlParser.ELSE);
- this.state = 8906;
- localctx.elseExpr = this.expression(0);
- }
-
- this.state = 8909;
- this.match(TSqlParser.END);
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 8911;
- this.match(TSqlParser.CASE);
- this.state = 8913;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- do {
- this.state = 8912;
- this.switch_search_condition_section();
- this.state = 8915;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- } while(_la===TSqlParser.WHEN);
- this.state = 8919;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.ELSE) {
- this.state = 8917;
- this.match(TSqlParser.ELSE);
- this.state = 8918;
- localctx.elseExpr = this.expression(0);
- }
-
- this.state = 8921;
- this.match(TSqlParser.END);
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Unary_operator_expressionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_unary_operator_expression;
- this.op = null; // Token
- return this;
-}
-
-Unary_operator_expressionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Unary_operator_expressionContext.prototype.constructor = Unary_operator_expressionContext;
-
-Unary_operator_expressionContext.prototype.BIT_NOT = function() {
- return this.getToken(TSqlParser.BIT_NOT, 0);
-};
-
-Unary_operator_expressionContext.prototype.expression = function() {
- return this.getTypedRuleContext(ExpressionContext,0);
-};
-
-Unary_operator_expressionContext.prototype.PLUS = function() {
- return this.getToken(TSqlParser.PLUS, 0);
-};
-
-Unary_operator_expressionContext.prototype.MINUS = function() {
- return this.getToken(TSqlParser.MINUS, 0);
-};
-
-Unary_operator_expressionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterUnary_operator_expression(this);
- }
-};
-
-Unary_operator_expressionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitUnary_operator_expression(this);
- }
-};
-
-Unary_operator_expressionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitUnary_operator_expression(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Unary_operator_expressionContext = Unary_operator_expressionContext;
-
-TSqlParser.prototype.unary_operator_expression = function() {
-
- var localctx = new Unary_operator_expressionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 732, TSqlParser.RULE_unary_operator_expression);
- var _la = 0; // Token type
- try {
- this.state = 8929;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.BIT_NOT:
- this.enterOuterAlt(localctx, 1);
- this.state = 8925;
- this.match(TSqlParser.BIT_NOT);
- this.state = 8926;
- this.expression(0);
- break;
- case TSqlParser.PLUS:
- case TSqlParser.MINUS:
- this.enterOuterAlt(localctx, 2);
- this.state = 8927;
- localctx.op = this._input.LT(1);
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.PLUS || _la===TSqlParser.MINUS)) {
- localctx.op = this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 8928;
- this.expression(0);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Bracket_expressionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_bracket_expression;
- return this;
-}
-
-Bracket_expressionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Bracket_expressionContext.prototype.constructor = Bracket_expressionContext;
-
-Bracket_expressionContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Bracket_expressionContext.prototype.expression = function() {
- return this.getTypedRuleContext(ExpressionContext,0);
-};
-
-Bracket_expressionContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Bracket_expressionContext.prototype.subquery = function() {
- return this.getTypedRuleContext(SubqueryContext,0);
-};
-
-Bracket_expressionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterBracket_expression(this);
- }
-};
-
-Bracket_expressionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitBracket_expression(this);
- }
-};
-
-Bracket_expressionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitBracket_expression(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Bracket_expressionContext = Bracket_expressionContext;
-
-TSqlParser.prototype.bracket_expression = function() {
-
- var localctx = new Bracket_expressionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 734, TSqlParser.RULE_bracket_expression);
- try {
- this.state = 8939;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1268,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 8931;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 8932;
- this.expression(0);
- this.state = 8933;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 8935;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 8936;
- this.subquery();
- this.state = 8937;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Constant_expressionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_constant_expression;
- return this;
-}
-
-Constant_expressionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Constant_expressionContext.prototype.constructor = Constant_expressionContext;
-
-Constant_expressionContext.prototype.NULL = function() {
- return this.getToken(TSqlParser.NULL, 0);
-};
-
-Constant_expressionContext.prototype.constant = function() {
- return this.getTypedRuleContext(ConstantContext,0);
-};
-
-Constant_expressionContext.prototype.function_call = function() {
- return this.getTypedRuleContext(Function_callContext,0);
-};
-
-Constant_expressionContext.prototype.LOCAL_ID = function() {
- return this.getToken(TSqlParser.LOCAL_ID, 0);
-};
-
-Constant_expressionContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Constant_expressionContext.prototype.constant_expression = function() {
- return this.getTypedRuleContext(Constant_expressionContext,0);
-};
-
-Constant_expressionContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Constant_expressionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterConstant_expression(this);
- }
-};
-
-Constant_expressionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitConstant_expression(this);
- }
-};
-
-Constant_expressionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitConstant_expression(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Constant_expressionContext = Constant_expressionContext;
-
-TSqlParser.prototype.constant_expression = function() {
-
- var localctx = new Constant_expressionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 736, TSqlParser.RULE_constant_expression);
- try {
- this.state = 8949;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1269,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 8941;
- this.match(TSqlParser.NULL);
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 8942;
- this.constant();
- break;
-
- case 3:
- this.enterOuterAlt(localctx, 3);
- this.state = 8943;
- this.function_call();
- break;
-
- case 4:
- this.enterOuterAlt(localctx, 4);
- this.state = 8944;
- this.match(TSqlParser.LOCAL_ID);
- break;
-
- case 5:
- this.enterOuterAlt(localctx, 5);
- this.state = 8945;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 8946;
- this.constant_expression();
- this.state = 8947;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function SubqueryContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_subquery;
- return this;
-}
-
-SubqueryContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-SubqueryContext.prototype.constructor = SubqueryContext;
-
-SubqueryContext.prototype.select_statement = function() {
- return this.getTypedRuleContext(Select_statementContext,0);
-};
-
-SubqueryContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterSubquery(this);
- }
-};
-
-SubqueryContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitSubquery(this);
- }
-};
-
-SubqueryContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitSubquery(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.SubqueryContext = SubqueryContext;
-
-TSqlParser.prototype.subquery = function() {
-
- var localctx = new SubqueryContext(this, this._ctx, this.state);
- this.enterRule(localctx, 738, TSqlParser.RULE_subquery);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 8951;
- this.select_statement();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function With_expressionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_with_expression;
- return this;
-}
-
-With_expressionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-With_expressionContext.prototype.constructor = With_expressionContext;
-
-With_expressionContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-With_expressionContext.prototype.common_table_expression = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Common_table_expressionContext);
- } else {
- return this.getTypedRuleContext(Common_table_expressionContext,i);
- }
-};
-
-With_expressionContext.prototype.XMLNAMESPACES = function() {
- return this.getToken(TSqlParser.XMLNAMESPACES, 0);
-};
-
-With_expressionContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-With_expressionContext.prototype.BLOCKING_HIERARCHY = function() {
- return this.getToken(TSqlParser.BLOCKING_HIERARCHY, 0);
-};
-
-With_expressionContext.prototype.AS = function() {
- return this.getToken(TSqlParser.AS, 0);
-};
-
-With_expressionContext.prototype.LR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.LR_BRACKET);
- } else {
- return this.getToken(TSqlParser.LR_BRACKET, i);
- }
-};
-
-
-With_expressionContext.prototype.select_statement = function() {
- return this.getTypedRuleContext(Select_statementContext,0);
-};
-
-With_expressionContext.prototype.RR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.RR_BRACKET);
- } else {
- return this.getToken(TSqlParser.RR_BRACKET, i);
- }
-};
-
-
-With_expressionContext.prototype.full_column_name_list = function() {
- return this.getTypedRuleContext(Full_column_name_listContext,0);
-};
-
-With_expressionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterWith_expression(this);
- }
-};
-
-With_expressionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitWith_expression(this);
- }
-};
-
-With_expressionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitWith_expression(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.With_expressionContext = With_expressionContext;
-
-TSqlParser.prototype.with_expression = function() {
-
- var localctx = new With_expressionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 740, TSqlParser.RULE_with_expression);
- var _la = 0; // Token type
- try {
- this.state = 8979;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1273,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 8953;
- this.match(TSqlParser.WITH);
- this.state = 8956;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1270,this._ctx);
- if(la_===1) {
- this.state = 8954;
- this.match(TSqlParser.XMLNAMESPACES);
- this.state = 8955;
- this.match(TSqlParser.COMMA);
-
- }
- this.state = 8958;
- this.common_table_expression();
- this.state = 8963;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 8959;
- this.match(TSqlParser.COMMA);
- this.state = 8960;
- this.common_table_expression();
- this.state = 8965;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 8966;
- this.match(TSqlParser.WITH);
- this.state = 8967;
- this.match(TSqlParser.BLOCKING_HIERARCHY);
- this.state = 8972;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.LR_BRACKET) {
- this.state = 8968;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 8969;
- this.full_column_name_list();
- this.state = 8970;
- this.match(TSqlParser.RR_BRACKET);
- }
-
- this.state = 8974;
- this.match(TSqlParser.AS);
- this.state = 8975;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 8976;
- this.select_statement();
- this.state = 8977;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Common_table_expressionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_common_table_expression;
- this.expression_name = null; // IdContext
- return this;
-}
-
-Common_table_expressionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Common_table_expressionContext.prototype.constructor = Common_table_expressionContext;
-
-Common_table_expressionContext.prototype.AS = function() {
- return this.getToken(TSqlParser.AS, 0);
-};
-
-Common_table_expressionContext.prototype.LR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.LR_BRACKET);
- } else {
- return this.getToken(TSqlParser.LR_BRACKET, i);
- }
-};
-
-
-Common_table_expressionContext.prototype.select_statement = function() {
- return this.getTypedRuleContext(Select_statementContext,0);
-};
-
-Common_table_expressionContext.prototype.RR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.RR_BRACKET);
- } else {
- return this.getToken(TSqlParser.RR_BRACKET, i);
- }
-};
-
-
-Common_table_expressionContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Common_table_expressionContext.prototype.column_name_list = function() {
- return this.getTypedRuleContext(Column_name_listContext,0);
-};
-
-Common_table_expressionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCommon_table_expression(this);
- }
-};
-
-Common_table_expressionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCommon_table_expression(this);
- }
-};
-
-Common_table_expressionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCommon_table_expression(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Common_table_expressionContext = Common_table_expressionContext;
-
-TSqlParser.prototype.common_table_expression = function() {
-
- var localctx = new Common_table_expressionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 742, TSqlParser.RULE_common_table_expression);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 8981;
- localctx.expression_name = this.id();
- this.state = 8986;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.LR_BRACKET) {
- this.state = 8982;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 8983;
- this.column_name_list();
- this.state = 8984;
- this.match(TSqlParser.RR_BRACKET);
- }
-
- this.state = 8988;
- this.match(TSqlParser.AS);
- this.state = 8989;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 8990;
- this.select_statement();
- this.state = 8991;
- this.match(TSqlParser.RR_BRACKET);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Update_elemContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_update_elem;
- this.udt_column_name = null; // IdContext
- this.method_name = null; // IdContext
- return this;
-}
-
-Update_elemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Update_elemContext.prototype.constructor = Update_elemContext;
-
-Update_elemContext.prototype.expression = function() {
- return this.getTypedRuleContext(ExpressionContext,0);
-};
-
-Update_elemContext.prototype.full_column_name = function() {
- return this.getTypedRuleContext(Full_column_nameContext,0);
-};
-
-Update_elemContext.prototype.LOCAL_ID = function() {
- return this.getToken(TSqlParser.LOCAL_ID, 0);
-};
-
-Update_elemContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Update_elemContext.prototype.assignment_operator = function() {
- return this.getTypedRuleContext(Assignment_operatorContext,0);
-};
-
-Update_elemContext.prototype.DOT = function() {
- return this.getToken(TSqlParser.DOT, 0);
-};
-
-Update_elemContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Update_elemContext.prototype.expression_list = function() {
- return this.getTypedRuleContext(Expression_listContext,0);
-};
-
-Update_elemContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Update_elemContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Update_elemContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterUpdate_elem(this);
- }
-};
-
-Update_elemContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitUpdate_elem(this);
- }
-};
-
-Update_elemContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitUpdate_elem(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Update_elemContext = Update_elemContext;
-
-TSqlParser.prototype.update_elem = function() {
-
- var localctx = new Update_elemContext(this, this._ctx, this.state);
- this.enterRule(localctx, 744, TSqlParser.RULE_update_elem);
- try {
- this.state = 9009;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1277,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 8995;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.BLOCKING_HIERARCHY:
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.state = 8993;
- this.full_column_name();
- break;
- case TSqlParser.LOCAL_ID:
- this.state = 8994;
- this.match(TSqlParser.LOCAL_ID);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 8999;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.EQUAL:
- this.state = 8997;
- this.match(TSqlParser.EQUAL);
- break;
- case TSqlParser.PLUS_ASSIGN:
- case TSqlParser.MINUS_ASSIGN:
- case TSqlParser.MULT_ASSIGN:
- case TSqlParser.DIV_ASSIGN:
- case TSqlParser.MOD_ASSIGN:
- case TSqlParser.AND_ASSIGN:
- case TSqlParser.XOR_ASSIGN:
- case TSqlParser.OR_ASSIGN:
- this.state = 8998;
- this.assignment_operator();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 9001;
- this.expression(0);
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 9002;
- localctx.udt_column_name = this.id();
- this.state = 9003;
- this.match(TSqlParser.DOT);
- this.state = 9004;
- localctx.method_name = this.id();
- this.state = 9005;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9006;
- this.expression_list();
- this.state = 9007;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Search_condition_listContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_search_condition_list;
- return this;
-}
-
-Search_condition_listContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Search_condition_listContext.prototype.constructor = Search_condition_listContext;
-
-Search_condition_listContext.prototype.search_condition = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Search_conditionContext);
- } else {
- return this.getTypedRuleContext(Search_conditionContext,i);
- }
-};
-
-Search_condition_listContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Search_condition_listContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterSearch_condition_list(this);
- }
-};
-
-Search_condition_listContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitSearch_condition_list(this);
- }
-};
-
-Search_condition_listContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitSearch_condition_list(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Search_condition_listContext = Search_condition_listContext;
-
-TSqlParser.prototype.search_condition_list = function() {
-
- var localctx = new Search_condition_listContext(this, this._ctx, this.state);
- this.enterRule(localctx, 746, TSqlParser.RULE_search_condition_list);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 9011;
- this.search_condition();
- this.state = 9016;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 9012;
- this.match(TSqlParser.COMMA);
- this.state = 9013;
- this.search_condition();
- this.state = 9018;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Search_conditionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_search_condition;
- return this;
-}
-
-Search_conditionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Search_conditionContext.prototype.constructor = Search_conditionContext;
-
-Search_conditionContext.prototype.search_condition_and = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Search_condition_andContext);
- } else {
- return this.getTypedRuleContext(Search_condition_andContext,i);
- }
-};
-
-Search_conditionContext.prototype.OR = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.OR);
- } else {
- return this.getToken(TSqlParser.OR, i);
- }
-};
-
-
-Search_conditionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterSearch_condition(this);
- }
-};
-
-Search_conditionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitSearch_condition(this);
- }
-};
-
-Search_conditionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitSearch_condition(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Search_conditionContext = Search_conditionContext;
-
-TSqlParser.prototype.search_condition = function() {
-
- var localctx = new Search_conditionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 748, TSqlParser.RULE_search_condition);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 9019;
- this.search_condition_and();
- this.state = 9024;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.OR) {
- this.state = 9020;
- this.match(TSqlParser.OR);
- this.state = 9021;
- this.search_condition_and();
- this.state = 9026;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Search_condition_andContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_search_condition_and;
- return this;
-}
-
-Search_condition_andContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Search_condition_andContext.prototype.constructor = Search_condition_andContext;
-
-Search_condition_andContext.prototype.search_condition_not = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Search_condition_notContext);
- } else {
- return this.getTypedRuleContext(Search_condition_notContext,i);
- }
-};
-
-Search_condition_andContext.prototype.AND = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.AND);
- } else {
- return this.getToken(TSqlParser.AND, i);
- }
-};
-
-
-Search_condition_andContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterSearch_condition_and(this);
- }
-};
-
-Search_condition_andContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitSearch_condition_and(this);
- }
-};
-
-Search_condition_andContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitSearch_condition_and(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Search_condition_andContext = Search_condition_andContext;
-
-TSqlParser.prototype.search_condition_and = function() {
-
- var localctx = new Search_condition_andContext(this, this._ctx, this.state);
- this.enterRule(localctx, 750, TSqlParser.RULE_search_condition_and);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 9027;
- this.search_condition_not();
- this.state = 9032;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.AND) {
- this.state = 9028;
- this.match(TSqlParser.AND);
- this.state = 9029;
- this.search_condition_not();
- this.state = 9034;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Search_condition_notContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_search_condition_not;
- return this;
-}
-
-Search_condition_notContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Search_condition_notContext.prototype.constructor = Search_condition_notContext;
-
-Search_condition_notContext.prototype.predicate = function() {
- return this.getTypedRuleContext(PredicateContext,0);
-};
-
-Search_condition_notContext.prototype.NOT = function() {
- return this.getToken(TSqlParser.NOT, 0);
-};
-
-Search_condition_notContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterSearch_condition_not(this);
- }
-};
-
-Search_condition_notContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitSearch_condition_not(this);
- }
-};
-
-Search_condition_notContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitSearch_condition_not(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Search_condition_notContext = Search_condition_notContext;
-
-TSqlParser.prototype.search_condition_not = function() {
-
- var localctx = new Search_condition_notContext(this, this._ctx, this.state);
- this.enterRule(localctx, 752, TSqlParser.RULE_search_condition_not);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 9036;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.NOT) {
- this.state = 9035;
- this.match(TSqlParser.NOT);
- }
-
- this.state = 9038;
- this.predicate();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function PredicateContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_predicate;
- return this;
-}
-
-PredicateContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-PredicateContext.prototype.constructor = PredicateContext;
-
-PredicateContext.prototype.EXISTS = function() {
- return this.getToken(TSqlParser.EXISTS, 0);
-};
-
-PredicateContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-PredicateContext.prototype.subquery = function() {
- return this.getTypedRuleContext(SubqueryContext,0);
-};
-
-PredicateContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-PredicateContext.prototype.expression = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(ExpressionContext);
- } else {
- return this.getTypedRuleContext(ExpressionContext,i);
- }
-};
-
-PredicateContext.prototype.comparison_operator = function() {
- return this.getTypedRuleContext(Comparison_operatorContext,0);
-};
-
-PredicateContext.prototype.ALL = function() {
- return this.getToken(TSqlParser.ALL, 0);
-};
-
-PredicateContext.prototype.SOME = function() {
- return this.getToken(TSqlParser.SOME, 0);
-};
-
-PredicateContext.prototype.ANY = function() {
- return this.getToken(TSqlParser.ANY, 0);
-};
-
-PredicateContext.prototype.BETWEEN = function() {
- return this.getToken(TSqlParser.BETWEEN, 0);
-};
-
-PredicateContext.prototype.AND = function() {
- return this.getToken(TSqlParser.AND, 0);
-};
-
-PredicateContext.prototype.NOT = function() {
- return this.getToken(TSqlParser.NOT, 0);
-};
-
-PredicateContext.prototype.IN = function() {
- return this.getToken(TSqlParser.IN, 0);
-};
-
-PredicateContext.prototype.expression_list = function() {
- return this.getTypedRuleContext(Expression_listContext,0);
-};
-
-PredicateContext.prototype.LIKE = function() {
- return this.getToken(TSqlParser.LIKE, 0);
-};
-
-PredicateContext.prototype.ESCAPE = function() {
- return this.getToken(TSqlParser.ESCAPE, 0);
-};
-
-PredicateContext.prototype.IS = function() {
- return this.getToken(TSqlParser.IS, 0);
-};
-
-PredicateContext.prototype.null_notnull = function() {
- return this.getTypedRuleContext(Null_notnullContext,0);
-};
-
-PredicateContext.prototype.search_condition = function() {
- return this.getTypedRuleContext(Search_conditionContext,0);
-};
-
-PredicateContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterPredicate(this);
- }
-};
-
-PredicateContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitPredicate(this);
- }
-};
-
-PredicateContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitPredicate(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.PredicateContext = PredicateContext;
-
-TSqlParser.prototype.predicate = function() {
-
- var localctx = new PredicateContext(this, this._ctx, this.state);
- this.enterRule(localctx, 754, TSqlParser.RULE_predicate);
- var _la = 0; // Token type
- try {
- this.state = 9095;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1287,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 9040;
- this.match(TSqlParser.EXISTS);
- this.state = 9041;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9042;
- this.subquery();
- this.state = 9043;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 9045;
- this.expression(0);
- this.state = 9046;
- this.comparison_operator();
- this.state = 9047;
- this.expression(0);
- break;
-
- case 3:
- this.enterOuterAlt(localctx, 3);
- this.state = 9049;
- this.expression(0);
- this.state = 9050;
- this.comparison_operator();
- this.state = 9051;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.ALL || _la===TSqlParser.ANY || _la===TSqlParser.SOME)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 9052;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9053;
- this.subquery();
- this.state = 9054;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- case 4:
- this.enterOuterAlt(localctx, 4);
- this.state = 9056;
- this.expression(0);
- this.state = 9058;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.NOT) {
- this.state = 9057;
- this.match(TSqlParser.NOT);
- }
-
- this.state = 9060;
- this.match(TSqlParser.BETWEEN);
- this.state = 9061;
- this.expression(0);
- this.state = 9062;
- this.match(TSqlParser.AND);
- this.state = 9063;
- this.expression(0);
- break;
-
- case 5:
- this.enterOuterAlt(localctx, 5);
- this.state = 9065;
- this.expression(0);
- this.state = 9067;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.NOT) {
- this.state = 9066;
- this.match(TSqlParser.NOT);
- }
-
- this.state = 9069;
- this.match(TSqlParser.IN);
- this.state = 9070;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9073;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1284,this._ctx);
- switch(la_) {
- case 1:
- this.state = 9071;
- this.subquery();
- break;
-
- case 2:
- this.state = 9072;
- this.expression_list();
- break;
-
- }
- this.state = 9075;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- case 6:
- this.enterOuterAlt(localctx, 6);
- this.state = 9077;
- this.expression(0);
- this.state = 9079;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.NOT) {
- this.state = 9078;
- this.match(TSqlParser.NOT);
- }
-
- this.state = 9081;
- this.match(TSqlParser.LIKE);
- this.state = 9082;
- this.expression(0);
- this.state = 9085;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.ESCAPE) {
- this.state = 9083;
- this.match(TSqlParser.ESCAPE);
- this.state = 9084;
- this.expression(0);
- }
-
- break;
-
- case 7:
- this.enterOuterAlt(localctx, 7);
- this.state = 9087;
- this.expression(0);
- this.state = 9088;
- this.match(TSqlParser.IS);
- this.state = 9089;
- this.null_notnull();
- break;
-
- case 8:
- this.enterOuterAlt(localctx, 8);
- this.state = 9091;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9092;
- this.search_condition();
- this.state = 9093;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Query_expressionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_query_expression;
- return this;
-}
-
-Query_expressionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Query_expressionContext.prototype.constructor = Query_expressionContext;
-
-Query_expressionContext.prototype.query_specification = function() {
- return this.getTypedRuleContext(Query_specificationContext,0);
-};
-
-Query_expressionContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Query_expressionContext.prototype.query_expression = function() {
- return this.getTypedRuleContext(Query_expressionContext,0);
-};
-
-Query_expressionContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Query_expressionContext.prototype.sql_union = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Sql_unionContext);
- } else {
- return this.getTypedRuleContext(Sql_unionContext,i);
- }
-};
-
-Query_expressionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterQuery_expression(this);
- }
-};
-
-Query_expressionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitQuery_expression(this);
- }
-};
-
-Query_expressionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitQuery_expression(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Query_expressionContext = Query_expressionContext;
-
-TSqlParser.prototype.query_expression = function() {
-
- var localctx = new Query_expressionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 756, TSqlParser.RULE_query_expression);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 9102;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.SELECT:
- this.state = 9097;
- this.query_specification();
- break;
- case TSqlParser.LR_BRACKET:
- this.state = 9098;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9099;
- this.query_expression();
- this.state = 9100;
- this.match(TSqlParser.RR_BRACKET);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 9107;
- this._errHandler.sync(this);
- var _alt = this._interp.adaptivePredict(this._input,1289,this._ctx)
- while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
- if(_alt===1) {
- this.state = 9104;
- this.sql_union();
- }
- this.state = 9109;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,1289,this._ctx);
- }
-
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Sql_unionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_sql_union;
- return this;
-}
-
-Sql_unionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Sql_unionContext.prototype.constructor = Sql_unionContext;
-
-Sql_unionContext.prototype.UNION = function() {
- return this.getToken(TSqlParser.UNION, 0);
-};
-
-Sql_unionContext.prototype.EXCEPT = function() {
- return this.getToken(TSqlParser.EXCEPT, 0);
-};
-
-Sql_unionContext.prototype.INTERSECT = function() {
- return this.getToken(TSqlParser.INTERSECT, 0);
-};
-
-Sql_unionContext.prototype.query_specification = function() {
- return this.getTypedRuleContext(Query_specificationContext,0);
-};
-
-Sql_unionContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Sql_unionContext.prototype.query_expression = function() {
- return this.getTypedRuleContext(Query_expressionContext,0);
-};
-
-Sql_unionContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Sql_unionContext.prototype.ALL = function() {
- return this.getToken(TSqlParser.ALL, 0);
-};
-
-Sql_unionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterSql_union(this);
- }
-};
-
-Sql_unionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitSql_union(this);
- }
-};
-
-Sql_unionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitSql_union(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Sql_unionContext = Sql_unionContext;
-
-TSqlParser.prototype.sql_union = function() {
-
- var localctx = new Sql_unionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 758, TSqlParser.RULE_sql_union);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 9116;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.UNION:
- this.state = 9110;
- this.match(TSqlParser.UNION);
- this.state = 9112;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.ALL) {
- this.state = 9111;
- this.match(TSqlParser.ALL);
- }
-
- break;
- case TSqlParser.EXCEPT:
- this.state = 9114;
- this.match(TSqlParser.EXCEPT);
- break;
- case TSqlParser.INTERSECT:
- this.state = 9115;
- this.match(TSqlParser.INTERSECT);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 9123;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.SELECT:
- this.state = 9118;
- this.query_specification();
- break;
- case TSqlParser.LR_BRACKET:
- this.state = 9119;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9120;
- this.query_expression();
- this.state = 9121;
- this.match(TSqlParser.RR_BRACKET);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Query_specificationContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_query_specification;
- this.where = null; // Search_conditionContext
- this.having = null; // Search_conditionContext
- return this;
-}
-
-Query_specificationContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Query_specificationContext.prototype.constructor = Query_specificationContext;
-
-Query_specificationContext.prototype.SELECT = function() {
- return this.getToken(TSqlParser.SELECT, 0);
-};
-
-Query_specificationContext.prototype.select_list = function() {
- return this.getTypedRuleContext(Select_listContext,0);
-};
-
-Query_specificationContext.prototype.top_clause = function() {
- return this.getTypedRuleContext(Top_clauseContext,0);
-};
-
-Query_specificationContext.prototype.INTO = function() {
- return this.getToken(TSqlParser.INTO, 0);
-};
-
-Query_specificationContext.prototype.table_name = function() {
- return this.getTypedRuleContext(Table_nameContext,0);
-};
-
-Query_specificationContext.prototype.FROM = function() {
- return this.getToken(TSqlParser.FROM, 0);
-};
-
-Query_specificationContext.prototype.table_sources = function() {
- return this.getTypedRuleContext(Table_sourcesContext,0);
-};
-
-Query_specificationContext.prototype.WHERE = function() {
- return this.getToken(TSqlParser.WHERE, 0);
-};
-
-Query_specificationContext.prototype.GROUP = function() {
- return this.getToken(TSqlParser.GROUP, 0);
-};
-
-Query_specificationContext.prototype.BY = function() {
- return this.getToken(TSqlParser.BY, 0);
-};
-
-Query_specificationContext.prototype.group_by_item = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Group_by_itemContext);
- } else {
- return this.getTypedRuleContext(Group_by_itemContext,i);
- }
-};
-
-Query_specificationContext.prototype.HAVING = function() {
- return this.getToken(TSqlParser.HAVING, 0);
-};
-
-Query_specificationContext.prototype.ALL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ALL);
- } else {
- return this.getToken(TSqlParser.ALL, i);
- }
-};
-
-
-Query_specificationContext.prototype.DISTINCT = function() {
- return this.getToken(TSqlParser.DISTINCT, 0);
-};
-
-Query_specificationContext.prototype.search_condition = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Search_conditionContext);
- } else {
- return this.getTypedRuleContext(Search_conditionContext,i);
- }
-};
-
-Query_specificationContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Query_specificationContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterQuery_specification(this);
- }
-};
-
-Query_specificationContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitQuery_specification(this);
- }
-};
-
-Query_specificationContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitQuery_specification(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Query_specificationContext = Query_specificationContext;
-
-TSqlParser.prototype.query_specification = function() {
-
- var localctx = new Query_specificationContext(this, this._ctx, this.state);
- this.enterRule(localctx, 760, TSqlParser.RULE_query_specification);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 9125;
- this.match(TSqlParser.SELECT);
- this.state = 9127;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.ALL || _la===TSqlParser.DISTINCT) {
- this.state = 9126;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.ALL || _la===TSqlParser.DISTINCT)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- }
-
- this.state = 9130;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.TOP) {
- this.state = 9129;
- this.top_clause();
- }
-
- this.state = 9132;
- this.select_list();
- this.state = 9135;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.INTO) {
- this.state = 9133;
- this.match(TSqlParser.INTO);
- this.state = 9134;
- this.table_name();
- }
-
- this.state = 9139;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.FROM) {
- this.state = 9137;
- this.match(TSqlParser.FROM);
- this.state = 9138;
- this.table_sources();
- }
-
- this.state = 9143;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1297,this._ctx);
- if(la_===1) {
- this.state = 9141;
- this.match(TSqlParser.WHERE);
- this.state = 9142;
- localctx.where = this.search_condition();
-
- }
- this.state = 9158;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1300,this._ctx);
- if(la_===1) {
- this.state = 9145;
- this.match(TSqlParser.GROUP);
- this.state = 9146;
- this.match(TSqlParser.BY);
- this.state = 9148;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.ALL) {
- this.state = 9147;
- this.match(TSqlParser.ALL);
- }
-
- this.state = 9150;
- this.group_by_item();
- this.state = 9155;
- this._errHandler.sync(this);
- var _alt = this._interp.adaptivePredict(this._input,1299,this._ctx)
- while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
- if(_alt===1) {
- this.state = 9151;
- this.match(TSqlParser.COMMA);
- this.state = 9152;
- this.group_by_item();
- }
- this.state = 9157;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,1299,this._ctx);
- }
-
-
- }
- this.state = 9162;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1301,this._ctx);
- if(la_===1) {
- this.state = 9160;
- this.match(TSqlParser.HAVING);
- this.state = 9161;
- localctx.having = this.search_condition();
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Top_clauseContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_top_clause;
- return this;
-}
-
-Top_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Top_clauseContext.prototype.constructor = Top_clauseContext;
-
-Top_clauseContext.prototype.TOP = function() {
- return this.getToken(TSqlParser.TOP, 0);
-};
-
-Top_clauseContext.prototype.top_percent = function() {
- return this.getTypedRuleContext(Top_percentContext,0);
-};
-
-Top_clauseContext.prototype.top_count = function() {
- return this.getTypedRuleContext(Top_countContext,0);
-};
-
-Top_clauseContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Top_clauseContext.prototype.TIES = function() {
- return this.getToken(TSqlParser.TIES, 0);
-};
-
-Top_clauseContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterTop_clause(this);
- }
-};
-
-Top_clauseContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitTop_clause(this);
- }
-};
-
-Top_clauseContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitTop_clause(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Top_clauseContext = Top_clauseContext;
-
-TSqlParser.prototype.top_clause = function() {
-
- var localctx = new Top_clauseContext(this, this._ctx, this.state);
- this.enterRule(localctx, 762, TSqlParser.RULE_top_clause);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 9164;
- this.match(TSqlParser.TOP);
- this.state = 9167;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1302,this._ctx);
- switch(la_) {
- case 1:
- this.state = 9165;
- this.top_percent();
- break;
-
- case 2:
- this.state = 9166;
- this.top_count();
- break;
-
- }
- this.state = 9171;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.WITH) {
- this.state = 9169;
- this.match(TSqlParser.WITH);
- this.state = 9170;
- this.match(TSqlParser.TIES);
- }
-
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Top_percentContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_top_percent;
- return this;
-}
-
-Top_percentContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Top_percentContext.prototype.constructor = Top_percentContext;
-
-Top_percentContext.prototype.PERCENT = function() {
- return this.getToken(TSqlParser.PERCENT, 0);
-};
-
-Top_percentContext.prototype.REAL = function() {
- return this.getToken(TSqlParser.REAL, 0);
-};
-
-Top_percentContext.prototype.FLOAT = function() {
- return this.getToken(TSqlParser.FLOAT, 0);
-};
-
-Top_percentContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Top_percentContext.prototype.expression = function() {
- return this.getTypedRuleContext(ExpressionContext,0);
-};
-
-Top_percentContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Top_percentContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterTop_percent(this);
- }
-};
-
-Top_percentContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitTop_percent(this);
- }
-};
-
-Top_percentContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitTop_percent(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Top_percentContext = Top_percentContext;
-
-TSqlParser.prototype.top_percent = function() {
-
- var localctx = new Top_percentContext(this, this._ctx, this.state);
- this.enterRule(localctx, 764, TSqlParser.RULE_top_percent);
- var _la = 0; // Token type
- try {
- this.state = 9180;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.FLOAT:
- case TSqlParser.REAL:
- this.enterOuterAlt(localctx, 1);
- this.state = 9173;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.FLOAT || _la===TSqlParser.REAL)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 9174;
- this.match(TSqlParser.PERCENT);
- break;
- case TSqlParser.LR_BRACKET:
- this.enterOuterAlt(localctx, 2);
- this.state = 9175;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9176;
- this.expression(0);
- this.state = 9177;
- this.match(TSqlParser.RR_BRACKET);
- this.state = 9178;
- this.match(TSqlParser.PERCENT);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Top_countContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_top_count;
- return this;
-}
-
-Top_countContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Top_countContext.prototype.constructor = Top_countContext;
-
-Top_countContext.prototype.DECIMAL = function() {
- return this.getToken(TSqlParser.DECIMAL, 0);
-};
-
-Top_countContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Top_countContext.prototype.expression = function() {
- return this.getTypedRuleContext(ExpressionContext,0);
-};
-
-Top_countContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Top_countContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterTop_count(this);
- }
-};
-
-Top_countContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitTop_count(this);
- }
-};
-
-Top_countContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitTop_count(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Top_countContext = Top_countContext;
-
-TSqlParser.prototype.top_count = function() {
-
- var localctx = new Top_countContext(this, this._ctx, this.state);
- this.enterRule(localctx, 766, TSqlParser.RULE_top_count);
- try {
- this.state = 9187;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.DECIMAL:
- this.enterOuterAlt(localctx, 1);
- this.state = 9182;
- this.match(TSqlParser.DECIMAL);
- break;
- case TSqlParser.LR_BRACKET:
- this.enterOuterAlt(localctx, 2);
- this.state = 9183;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9184;
- this.expression(0);
- this.state = 9185;
- this.match(TSqlParser.RR_BRACKET);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Order_by_clauseContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_order_by_clause;
- return this;
-}
-
-Order_by_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Order_by_clauseContext.prototype.constructor = Order_by_clauseContext;
-
-Order_by_clauseContext.prototype.ORDER = function() {
- return this.getToken(TSqlParser.ORDER, 0);
-};
-
-Order_by_clauseContext.prototype.BY = function() {
- return this.getToken(TSqlParser.BY, 0);
-};
-
-Order_by_clauseContext.prototype.order_by_expression = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Order_by_expressionContext);
- } else {
- return this.getTypedRuleContext(Order_by_expressionContext,i);
- }
-};
-
-Order_by_clauseContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Order_by_clauseContext.prototype.OFFSET = function() {
- return this.getToken(TSqlParser.OFFSET, 0);
-};
-
-Order_by_clauseContext.prototype.expression = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(ExpressionContext);
- } else {
- return this.getTypedRuleContext(ExpressionContext,i);
- }
-};
-
-Order_by_clauseContext.prototype.ROW = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ROW);
- } else {
- return this.getToken(TSqlParser.ROW, i);
- }
-};
-
-
-Order_by_clauseContext.prototype.ROWS = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ROWS);
- } else {
- return this.getToken(TSqlParser.ROWS, i);
- }
-};
-
-
-Order_by_clauseContext.prototype.FETCH = function() {
- return this.getToken(TSqlParser.FETCH, 0);
-};
-
-Order_by_clauseContext.prototype.ONLY = function() {
- return this.getToken(TSqlParser.ONLY, 0);
-};
-
-Order_by_clauseContext.prototype.FIRST = function() {
- return this.getToken(TSqlParser.FIRST, 0);
-};
-
-Order_by_clauseContext.prototype.NEXT = function() {
- return this.getToken(TSqlParser.NEXT, 0);
-};
-
-Order_by_clauseContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterOrder_by_clause(this);
- }
-};
-
-Order_by_clauseContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitOrder_by_clause(this);
- }
-};
-
-Order_by_clauseContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitOrder_by_clause(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Order_by_clauseContext = Order_by_clauseContext;
-
-TSqlParser.prototype.order_by_clause = function() {
-
- var localctx = new Order_by_clauseContext(this, this._ctx, this.state);
- this.enterRule(localctx, 768, TSqlParser.RULE_order_by_clause);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 9189;
- this.match(TSqlParser.ORDER);
- this.state = 9190;
- this.match(TSqlParser.BY);
- this.state = 9191;
- this.order_by_expression();
- this.state = 9196;
- this._errHandler.sync(this);
- var _alt = this._interp.adaptivePredict(this._input,1306,this._ctx)
- while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
- if(_alt===1) {
- this.state = 9192;
- this.match(TSqlParser.COMMA);
- this.state = 9193;
- this.order_by_expression();
- }
- this.state = 9198;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,1306,this._ctx);
- }
-
- this.state = 9210;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1308,this._ctx);
- if(la_===1) {
- this.state = 9199;
- this.match(TSqlParser.OFFSET);
- this.state = 9200;
- this.expression(0);
- this.state = 9201;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.ROW || _la===TSqlParser.ROWS)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 9208;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1307,this._ctx);
- if(la_===1) {
- this.state = 9202;
- this.match(TSqlParser.FETCH);
- this.state = 9203;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.FIRST || _la===TSqlParser.NEXT)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 9204;
- this.expression(0);
- this.state = 9205;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.ROW || _la===TSqlParser.ROWS)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 9206;
- this.match(TSqlParser.ONLY);
-
- }
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function For_clauseContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_for_clause;
- return this;
-}
-
-For_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-For_clauseContext.prototype.constructor = For_clauseContext;
-
-For_clauseContext.prototype.FOR = function() {
- return this.getToken(TSqlParser.FOR, 0);
-};
-
-For_clauseContext.prototype.BROWSE = function() {
- return this.getToken(TSqlParser.BROWSE, 0);
-};
-
-For_clauseContext.prototype.XML = function() {
- return this.getToken(TSqlParser.XML, 0);
-};
-
-For_clauseContext.prototype.RAW = function() {
- return this.getToken(TSqlParser.RAW, 0);
-};
-
-For_clauseContext.prototype.AUTO = function() {
- return this.getToken(TSqlParser.AUTO, 0);
-};
-
-For_clauseContext.prototype.xml_common_directives = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Xml_common_directivesContext);
- } else {
- return this.getTypedRuleContext(Xml_common_directivesContext,i);
- }
-};
-
-For_clauseContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-For_clauseContext.prototype.ELEMENTS = function() {
- return this.getToken(TSqlParser.ELEMENTS, 0);
-};
-
-For_clauseContext.prototype.XSINIL = function() {
- return this.getToken(TSqlParser.XSINIL, 0);
-};
-
-For_clauseContext.prototype.ABSENT = function() {
- return this.getToken(TSqlParser.ABSENT, 0);
-};
-
-For_clauseContext.prototype.LR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.LR_BRACKET);
- } else {
- return this.getToken(TSqlParser.LR_BRACKET, i);
- }
-};
-
-
-For_clauseContext.prototype.STRING = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.STRING);
- } else {
- return this.getToken(TSqlParser.STRING, i);
- }
-};
-
-
-For_clauseContext.prototype.RR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.RR_BRACKET);
- } else {
- return this.getToken(TSqlParser.RR_BRACKET, i);
- }
-};
-
-
-For_clauseContext.prototype.XMLDATA = function() {
- return this.getToken(TSqlParser.XMLDATA, 0);
-};
-
-For_clauseContext.prototype.XMLSCHEMA = function() {
- return this.getToken(TSqlParser.XMLSCHEMA, 0);
-};
-
-For_clauseContext.prototype.EXPLICIT = function() {
- return this.getToken(TSqlParser.EXPLICIT, 0);
-};
-
-For_clauseContext.prototype.PATH = function() {
- return this.getToken(TSqlParser.PATH, 0);
-};
-
-For_clauseContext.prototype.JSON = function() {
- return this.getToken(TSqlParser.JSON, 0);
-};
-
-For_clauseContext.prototype.ROOT = function() {
- return this.getToken(TSqlParser.ROOT, 0);
-};
-
-For_clauseContext.prototype.INCLUDE_NULL_VALUES = function() {
- return this.getToken(TSqlParser.INCLUDE_NULL_VALUES, 0);
-};
-
-For_clauseContext.prototype.WITHOUT_ARRAY_WRAPPER = function() {
- return this.getToken(TSqlParser.WITHOUT_ARRAY_WRAPPER, 0);
-};
-
-For_clauseContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterFor_clause(this);
- }
-};
-
-For_clauseContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitFor_clause(this);
- }
-};
-
-For_clauseContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitFor_clause(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.For_clauseContext = For_clauseContext;
-
-TSqlParser.prototype.for_clause = function() {
-
- var localctx = new For_clauseContext(this, this._ctx, this.state);
- this.enterRule(localctx, 770, TSqlParser.RULE_for_clause);
- var _la = 0; // Token type
- try {
- this.state = 9300;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1325,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 9212;
- this.match(TSqlParser.FOR);
- this.state = 9213;
- this.match(TSqlParser.BROWSE);
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 9214;
- this.match(TSqlParser.FOR);
- this.state = 9215;
- this.match(TSqlParser.XML);
- this.state = 9223;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.RAW:
- this.state = 9216;
- this.match(TSqlParser.RAW);
- this.state = 9220;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1309,this._ctx);
- if(la_===1) {
- this.state = 9217;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9218;
- this.match(TSqlParser.STRING);
- this.state = 9219;
- this.match(TSqlParser.RR_BRACKET);
-
- }
- break;
- case TSqlParser.AUTO:
- this.state = 9222;
- this.match(TSqlParser.AUTO);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 9228;
- this._errHandler.sync(this);
- var _alt = this._interp.adaptivePredict(this._input,1311,this._ctx)
- while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
- if(_alt===1) {
- this.state = 9225;
- this.xml_common_directives();
- }
- this.state = 9230;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,1311,this._ctx);
- }
-
- this.state = 9241;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1314,this._ctx);
- if(la_===1) {
- this.state = 9231;
- this.match(TSqlParser.COMMA);
- this.state = 9239;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.XMLDATA:
- this.state = 9232;
- this.match(TSqlParser.XMLDATA);
- break;
- case TSqlParser.XMLSCHEMA:
- this.state = 9233;
- this.match(TSqlParser.XMLSCHEMA);
- this.state = 9237;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1312,this._ctx);
- if(la_===1) {
- this.state = 9234;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9235;
- this.match(TSqlParser.STRING);
- this.state = 9236;
- this.match(TSqlParser.RR_BRACKET);
-
- }
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
-
- }
- this.state = 9246;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1315,this._ctx);
- if(la_===1) {
- this.state = 9243;
- this.match(TSqlParser.COMMA);
- this.state = 9244;
- this.match(TSqlParser.ELEMENTS);
- this.state = 9245;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.ABSENT || _la===TSqlParser.XSINIL)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
-
- }
- break;
-
- case 3:
- this.enterOuterAlt(localctx, 3);
- this.state = 9248;
- this.match(TSqlParser.FOR);
- this.state = 9249;
- this.match(TSqlParser.XML);
- this.state = 9250;
- this.match(TSqlParser.EXPLICIT);
- this.state = 9254;
- this._errHandler.sync(this);
- var _alt = this._interp.adaptivePredict(this._input,1316,this._ctx)
- while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
- if(_alt===1) {
- this.state = 9251;
- this.xml_common_directives();
- }
- this.state = 9256;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,1316,this._ctx);
- }
-
- this.state = 9259;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1317,this._ctx);
- if(la_===1) {
- this.state = 9257;
- this.match(TSqlParser.COMMA);
- this.state = 9258;
- this.match(TSqlParser.XMLDATA);
-
- }
- break;
-
- case 4:
- this.enterOuterAlt(localctx, 4);
- this.state = 9261;
- this.match(TSqlParser.FOR);
- this.state = 9262;
- this.match(TSqlParser.XML);
- this.state = 9263;
- this.match(TSqlParser.PATH);
- this.state = 9267;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1318,this._ctx);
- if(la_===1) {
- this.state = 9264;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9265;
- this.match(TSqlParser.STRING);
- this.state = 9266;
- this.match(TSqlParser.RR_BRACKET);
-
- }
- this.state = 9272;
- this._errHandler.sync(this);
- var _alt = this._interp.adaptivePredict(this._input,1319,this._ctx)
- while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
- if(_alt===1) {
- this.state = 9269;
- this.xml_common_directives();
- }
- this.state = 9274;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,1319,this._ctx);
- }
-
- this.state = 9278;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1320,this._ctx);
- if(la_===1) {
- this.state = 9275;
- this.match(TSqlParser.COMMA);
- this.state = 9276;
- this.match(TSqlParser.ELEMENTS);
- this.state = 9277;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.ABSENT || _la===TSqlParser.XSINIL)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
-
- }
- break;
-
- case 5:
- this.enterOuterAlt(localctx, 5);
- this.state = 9280;
- this.match(TSqlParser.FOR);
- this.state = 9281;
- this.match(TSqlParser.JSON);
- this.state = 9282;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.AUTO || _la===TSqlParser.PATH)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 9290;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1322,this._ctx);
- if(la_===1) {
- this.state = 9283;
- this.match(TSqlParser.COMMA);
- this.state = 9284;
- this.match(TSqlParser.ROOT);
- this.state = 9288;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1321,this._ctx);
- if(la_===1) {
- this.state = 9285;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9286;
- this.match(TSqlParser.STRING);
- this.state = 9287;
- this.match(TSqlParser.RR_BRACKET);
-
- }
-
- }
- this.state = 9294;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1323,this._ctx);
- if(la_===1) {
- this.state = 9292;
- this.match(TSqlParser.COMMA);
- this.state = 9293;
- this.match(TSqlParser.INCLUDE_NULL_VALUES);
-
- }
- this.state = 9298;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1324,this._ctx);
- if(la_===1) {
- this.state = 9296;
- this.match(TSqlParser.COMMA);
- this.state = 9297;
- this.match(TSqlParser.WITHOUT_ARRAY_WRAPPER);
-
- }
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Xml_common_directivesContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_xml_common_directives;
- return this;
-}
-
-Xml_common_directivesContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Xml_common_directivesContext.prototype.constructor = Xml_common_directivesContext;
-
-Xml_common_directivesContext.prototype.COMMA = function() {
- return this.getToken(TSqlParser.COMMA, 0);
-};
-
-Xml_common_directivesContext.prototype.BINARY_BASE64 = function() {
- return this.getToken(TSqlParser.BINARY_BASE64, 0);
-};
-
-Xml_common_directivesContext.prototype.TYPE = function() {
- return this.getToken(TSqlParser.TYPE, 0);
-};
-
-Xml_common_directivesContext.prototype.ROOT = function() {
- return this.getToken(TSqlParser.ROOT, 0);
-};
-
-Xml_common_directivesContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Xml_common_directivesContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Xml_common_directivesContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Xml_common_directivesContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterXml_common_directives(this);
- }
-};
-
-Xml_common_directivesContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitXml_common_directives(this);
- }
-};
-
-Xml_common_directivesContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitXml_common_directives(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Xml_common_directivesContext = Xml_common_directivesContext;
-
-TSqlParser.prototype.xml_common_directives = function() {
-
- var localctx = new Xml_common_directivesContext(this, this._ctx, this.state);
- this.enterRule(localctx, 772, TSqlParser.RULE_xml_common_directives);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 9302;
- this.match(TSqlParser.COMMA);
- this.state = 9311;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.BINARY_BASE64:
- this.state = 9303;
- this.match(TSqlParser.BINARY_BASE64);
- break;
- case TSqlParser.TYPE:
- this.state = 9304;
- this.match(TSqlParser.TYPE);
- break;
- case TSqlParser.ROOT:
- this.state = 9305;
- this.match(TSqlParser.ROOT);
- this.state = 9309;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1326,this._ctx);
- if(la_===1) {
- this.state = 9306;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9307;
- this.match(TSqlParser.STRING);
- this.state = 9308;
- this.match(TSqlParser.RR_BRACKET);
-
- }
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Order_by_expressionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_order_by_expression;
- return this;
-}
-
-Order_by_expressionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Order_by_expressionContext.prototype.constructor = Order_by_expressionContext;
-
-Order_by_expressionContext.prototype.expression = function() {
- return this.getTypedRuleContext(ExpressionContext,0);
-};
-
-Order_by_expressionContext.prototype.ASC = function() {
- return this.getToken(TSqlParser.ASC, 0);
-};
-
-Order_by_expressionContext.prototype.DESC = function() {
- return this.getToken(TSqlParser.DESC, 0);
-};
-
-Order_by_expressionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterOrder_by_expression(this);
- }
-};
-
-Order_by_expressionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitOrder_by_expression(this);
- }
-};
-
-Order_by_expressionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitOrder_by_expression(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Order_by_expressionContext = Order_by_expressionContext;
-
-TSqlParser.prototype.order_by_expression = function() {
-
- var localctx = new Order_by_expressionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 774, TSqlParser.RULE_order_by_expression);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 9313;
- this.expression(0);
- this.state = 9315;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.ASC || _la===TSqlParser.DESC) {
- this.state = 9314;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.ASC || _la===TSqlParser.DESC)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- }
-
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Group_by_itemContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_group_by_item;
- return this;
-}
-
-Group_by_itemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Group_by_itemContext.prototype.constructor = Group_by_itemContext;
-
-Group_by_itemContext.prototype.expression = function() {
- return this.getTypedRuleContext(ExpressionContext,0);
-};
-
-Group_by_itemContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterGroup_by_item(this);
- }
-};
-
-Group_by_itemContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitGroup_by_item(this);
- }
-};
-
-Group_by_itemContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitGroup_by_item(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Group_by_itemContext = Group_by_itemContext;
-
-TSqlParser.prototype.group_by_item = function() {
-
- var localctx = new Group_by_itemContext(this, this._ctx, this.state);
- this.enterRule(localctx, 776, TSqlParser.RULE_group_by_item);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 9317;
- this.expression(0);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Option_clauseContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_option_clause;
- return this;
-}
-
-Option_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Option_clauseContext.prototype.constructor = Option_clauseContext;
-
-Option_clauseContext.prototype.OPTION = function() {
- return this.getToken(TSqlParser.OPTION, 0);
-};
-
-Option_clauseContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Option_clauseContext.prototype.option = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(OptionContext);
- } else {
- return this.getTypedRuleContext(OptionContext,i);
- }
-};
-
-Option_clauseContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Option_clauseContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Option_clauseContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterOption_clause(this);
- }
-};
-
-Option_clauseContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitOption_clause(this);
- }
-};
-
-Option_clauseContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitOption_clause(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Option_clauseContext = Option_clauseContext;
-
-TSqlParser.prototype.option_clause = function() {
-
- var localctx = new Option_clauseContext(this, this._ctx, this.state);
- this.enterRule(localctx, 778, TSqlParser.RULE_option_clause);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 9319;
- this.match(TSqlParser.OPTION);
- this.state = 9320;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9321;
- this.option();
- this.state = 9326;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 9322;
- this.match(TSqlParser.COMMA);
- this.state = 9323;
- this.option();
- this.state = 9328;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- this.state = 9329;
- this.match(TSqlParser.RR_BRACKET);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function OptionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_option;
- this.number_rows = null; // Token
- this.number_of_processors = null; // Token
- this.number_recursion = null; // Token
- return this;
-}
-
-OptionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-OptionContext.prototype.constructor = OptionContext;
-
-OptionContext.prototype.FAST = function() {
- return this.getToken(TSqlParser.FAST, 0);
-};
-
-OptionContext.prototype.DECIMAL = function() {
- return this.getToken(TSqlParser.DECIMAL, 0);
-};
-
-OptionContext.prototype.GROUP = function() {
- return this.getToken(TSqlParser.GROUP, 0);
-};
-
-OptionContext.prototype.HASH = function() {
- return this.getToken(TSqlParser.HASH, 0);
-};
-
-OptionContext.prototype.ORDER = function() {
- return this.getToken(TSqlParser.ORDER, 0);
-};
-
-OptionContext.prototype.UNION = function() {
- return this.getToken(TSqlParser.UNION, 0);
-};
-
-OptionContext.prototype.MERGE = function() {
- return this.getToken(TSqlParser.MERGE, 0);
-};
-
-OptionContext.prototype.CONCAT = function() {
- return this.getToken(TSqlParser.CONCAT, 0);
-};
-
-OptionContext.prototype.JOIN = function() {
- return this.getToken(TSqlParser.JOIN, 0);
-};
-
-OptionContext.prototype.LOOP = function() {
- return this.getToken(TSqlParser.LOOP, 0);
-};
-
-OptionContext.prototype.EXPAND = function() {
- return this.getToken(TSqlParser.EXPAND, 0);
-};
-
-OptionContext.prototype.VIEWS = function() {
- return this.getToken(TSqlParser.VIEWS, 0);
-};
-
-OptionContext.prototype.FORCE = function() {
- return this.getToken(TSqlParser.FORCE, 0);
-};
-
-OptionContext.prototype.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX = function() {
- return this.getToken(TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX, 0);
-};
-
-OptionContext.prototype.KEEP = function() {
- return this.getToken(TSqlParser.KEEP, 0);
-};
-
-OptionContext.prototype.PLAN = function() {
- return this.getToken(TSqlParser.PLAN, 0);
-};
-
-OptionContext.prototype.KEEPFIXED = function() {
- return this.getToken(TSqlParser.KEEPFIXED, 0);
-};
-
-OptionContext.prototype.MAXDOP = function() {
- return this.getToken(TSqlParser.MAXDOP, 0);
-};
-
-OptionContext.prototype.MAXRECURSION = function() {
- return this.getToken(TSqlParser.MAXRECURSION, 0);
-};
-
-OptionContext.prototype.OPTIMIZE = function() {
- return this.getToken(TSqlParser.OPTIMIZE, 0);
-};
-
-OptionContext.prototype.FOR = function() {
- return this.getToken(TSqlParser.FOR, 0);
-};
-
-OptionContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-OptionContext.prototype.optimize_for_arg = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Optimize_for_argContext);
- } else {
- return this.getTypedRuleContext(Optimize_for_argContext,i);
- }
-};
-
-OptionContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-OptionContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-OptionContext.prototype.UNKNOWN = function() {
- return this.getToken(TSqlParser.UNKNOWN, 0);
-};
-
-OptionContext.prototype.PARAMETERIZATION = function() {
- return this.getToken(TSqlParser.PARAMETERIZATION, 0);
-};
-
-OptionContext.prototype.SIMPLE = function() {
- return this.getToken(TSqlParser.SIMPLE, 0);
-};
-
-OptionContext.prototype.FORCED = function() {
- return this.getToken(TSqlParser.FORCED, 0);
-};
-
-OptionContext.prototype.RECOMPILE = function() {
- return this.getToken(TSqlParser.RECOMPILE, 0);
-};
-
-OptionContext.prototype.ROBUST = function() {
- return this.getToken(TSqlParser.ROBUST, 0);
-};
-
-OptionContext.prototype.USE = function() {
- return this.getToken(TSqlParser.USE, 0);
-};
-
-OptionContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-OptionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterOption(this);
- }
-};
-
-OptionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitOption(this);
- }
-};
-
-OptionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitOption(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.OptionContext = OptionContext;
-
-TSqlParser.prototype.option = function() {
-
- var localctx = new OptionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 780, TSqlParser.RULE_option);
- var _la = 0; // Token type
- try {
- this.state = 9376;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1331,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 9331;
- this.match(TSqlParser.FAST);
- this.state = 9332;
- localctx.number_rows = this.match(TSqlParser.DECIMAL);
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 9333;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.ORDER || _la===TSqlParser.HASH)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 9334;
- this.match(TSqlParser.GROUP);
- break;
-
- case 3:
- this.enterOuterAlt(localctx, 3);
- this.state = 9335;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.MERGE || _la===TSqlParser.CONCAT || _la===TSqlParser.HASH)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 9336;
- this.match(TSqlParser.UNION);
- break;
-
- case 4:
- this.enterOuterAlt(localctx, 4);
- this.state = 9337;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.MERGE || _la===TSqlParser.HASH || _la===TSqlParser.LOOP)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 9338;
- this.match(TSqlParser.JOIN);
- break;
-
- case 5:
- this.enterOuterAlt(localctx, 5);
- this.state = 9339;
- this.match(TSqlParser.EXPAND);
- this.state = 9340;
- this.match(TSqlParser.VIEWS);
- break;
-
- case 6:
- this.enterOuterAlt(localctx, 6);
- this.state = 9341;
- this.match(TSqlParser.FORCE);
- this.state = 9342;
- this.match(TSqlParser.ORDER);
- break;
-
- case 7:
- this.enterOuterAlt(localctx, 7);
- this.state = 9343;
- this.match(TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX);
- break;
-
- case 8:
- this.enterOuterAlt(localctx, 8);
- this.state = 9344;
- this.match(TSqlParser.KEEP);
- this.state = 9345;
- this.match(TSqlParser.PLAN);
- break;
-
- case 9:
- this.enterOuterAlt(localctx, 9);
- this.state = 9346;
- this.match(TSqlParser.KEEPFIXED);
- this.state = 9347;
- this.match(TSqlParser.PLAN);
- break;
-
- case 10:
- this.enterOuterAlt(localctx, 10);
- this.state = 9348;
- this.match(TSqlParser.MAXDOP);
- this.state = 9349;
- localctx.number_of_processors = this.match(TSqlParser.DECIMAL);
- break;
-
- case 11:
- this.enterOuterAlt(localctx, 11);
- this.state = 9350;
- this.match(TSqlParser.MAXRECURSION);
- this.state = 9351;
- localctx.number_recursion = this.match(TSqlParser.DECIMAL);
- break;
-
- case 12:
- this.enterOuterAlt(localctx, 12);
- this.state = 9352;
- this.match(TSqlParser.OPTIMIZE);
- this.state = 9353;
- this.match(TSqlParser.FOR);
- this.state = 9354;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9355;
- this.optimize_for_arg();
- this.state = 9360;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 9356;
- this.match(TSqlParser.COMMA);
- this.state = 9357;
- this.optimize_for_arg();
- this.state = 9362;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- this.state = 9363;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- case 13:
- this.enterOuterAlt(localctx, 13);
- this.state = 9365;
- this.match(TSqlParser.OPTIMIZE);
- this.state = 9366;
- this.match(TSqlParser.FOR);
- this.state = 9367;
- this.match(TSqlParser.UNKNOWN);
- break;
-
- case 14:
- this.enterOuterAlt(localctx, 14);
- this.state = 9368;
- this.match(TSqlParser.PARAMETERIZATION);
- this.state = 9369;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.FORCED || _la===TSqlParser.SIMPLE)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
-
- case 15:
- this.enterOuterAlt(localctx, 15);
- this.state = 9370;
- this.match(TSqlParser.RECOMPILE);
- break;
-
- case 16:
- this.enterOuterAlt(localctx, 16);
- this.state = 9371;
- this.match(TSqlParser.ROBUST);
- this.state = 9372;
- this.match(TSqlParser.PLAN);
- break;
-
- case 17:
- this.enterOuterAlt(localctx, 17);
- this.state = 9373;
- this.match(TSqlParser.USE);
- this.state = 9374;
- this.match(TSqlParser.PLAN);
- this.state = 9375;
- this.match(TSqlParser.STRING);
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Optimize_for_argContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_optimize_for_arg;
- return this;
-}
-
-Optimize_for_argContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Optimize_for_argContext.prototype.constructor = Optimize_for_argContext;
-
-Optimize_for_argContext.prototype.LOCAL_ID = function() {
- return this.getToken(TSqlParser.LOCAL_ID, 0);
-};
-
-Optimize_for_argContext.prototype.UNKNOWN = function() {
- return this.getToken(TSqlParser.UNKNOWN, 0);
-};
-
-Optimize_for_argContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Optimize_for_argContext.prototype.constant = function() {
- return this.getTypedRuleContext(ConstantContext,0);
-};
-
-Optimize_for_argContext.prototype.NULL = function() {
- return this.getToken(TSqlParser.NULL, 0);
-};
-
-Optimize_for_argContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterOptimize_for_arg(this);
- }
-};
-
-Optimize_for_argContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitOptimize_for_arg(this);
- }
-};
-
-Optimize_for_argContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitOptimize_for_arg(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Optimize_for_argContext = Optimize_for_argContext;
-
-TSqlParser.prototype.optimize_for_arg = function() {
-
- var localctx = new Optimize_for_argContext(this, this._ctx, this.state);
- this.enterRule(localctx, 782, TSqlParser.RULE_optimize_for_arg);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 9378;
- this.match(TSqlParser.LOCAL_ID);
- this.state = 9385;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.UNKNOWN:
- this.state = 9379;
- this.match(TSqlParser.UNKNOWN);
- break;
- case TSqlParser.EQUAL:
- this.state = 9380;
- this.match(TSqlParser.EQUAL);
- this.state = 9383;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.DECIMAL:
- case TSqlParser.STRING:
- case TSqlParser.BINARY:
- case TSqlParser.FLOAT:
- case TSqlParser.REAL:
- case TSqlParser.DOLLAR:
- case TSqlParser.PLUS:
- case TSqlParser.MINUS:
- this.state = 9381;
- this.constant();
- break;
- case TSqlParser.NULL:
- this.state = 9382;
- this.match(TSqlParser.NULL);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Select_listContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_select_list;
- return this;
-}
-
-Select_listContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Select_listContext.prototype.constructor = Select_listContext;
-
-Select_listContext.prototype.select_list_elem = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Select_list_elemContext);
- } else {
- return this.getTypedRuleContext(Select_list_elemContext,i);
- }
-};
-
-Select_listContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Select_listContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterSelect_list(this);
- }
-};
-
-Select_listContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitSelect_list(this);
- }
-};
-
-Select_listContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitSelect_list(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Select_listContext = Select_listContext;
-
-TSqlParser.prototype.select_list = function() {
-
- var localctx = new Select_listContext(this, this._ctx, this.state);
- this.enterRule(localctx, 784, TSqlParser.RULE_select_list);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 9387;
- this.select_list_elem();
- this.state = 9392;
- this._errHandler.sync(this);
- var _alt = this._interp.adaptivePredict(this._input,1334,this._ctx)
- while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
- if(_alt===1) {
- this.state = 9388;
- this.match(TSqlParser.COMMA);
- this.state = 9389;
- this.select_list_elem();
- }
- this.state = 9394;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,1334,this._ctx);
- }
-
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Udt_method_argumentsContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_udt_method_arguments;
- return this;
-}
-
-Udt_method_argumentsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Udt_method_argumentsContext.prototype.constructor = Udt_method_argumentsContext;
-
-Udt_method_argumentsContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Udt_method_argumentsContext.prototype.execute_var_string = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Execute_var_stringContext);
- } else {
- return this.getTypedRuleContext(Execute_var_stringContext,i);
- }
-};
-
-Udt_method_argumentsContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Udt_method_argumentsContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Udt_method_argumentsContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterUdt_method_arguments(this);
- }
-};
-
-Udt_method_argumentsContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitUdt_method_arguments(this);
- }
-};
-
-Udt_method_argumentsContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitUdt_method_arguments(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Udt_method_argumentsContext = Udt_method_argumentsContext;
-
-TSqlParser.prototype.udt_method_arguments = function() {
-
- var localctx = new Udt_method_argumentsContext(this, this._ctx, this.state);
- this.enterRule(localctx, 786, TSqlParser.RULE_udt_method_arguments);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 9395;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9396;
- this.execute_var_string();
- this.state = 9401;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 9397;
- this.match(TSqlParser.COMMA);
- this.state = 9398;
- this.execute_var_string();
- this.state = 9403;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- this.state = 9404;
- this.match(TSqlParser.RR_BRACKET);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function AsteriskContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_asterisk;
- return this;
-}
-
-AsteriskContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-AsteriskContext.prototype.constructor = AsteriskContext;
-
-AsteriskContext.prototype.STAR = function() {
- return this.getToken(TSqlParser.STAR, 0);
-};
-
-AsteriskContext.prototype.table_name = function() {
- return this.getTypedRuleContext(Table_nameContext,0);
-};
-
-AsteriskContext.prototype.DOT = function() {
- return this.getToken(TSqlParser.DOT, 0);
-};
-
-AsteriskContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAsterisk(this);
- }
-};
-
-AsteriskContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAsterisk(this);
- }
-};
-
-AsteriskContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAsterisk(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.AsteriskContext = AsteriskContext;
-
-TSqlParser.prototype.asterisk = function() {
-
- var localctx = new AsteriskContext(this, this._ctx, this.state);
- this.enterRule(localctx, 788, TSqlParser.RULE_asterisk);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 9409;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.BLOCKING_HIERARCHY || _la===TSqlParser.CALLED || _la===TSqlParser.DATA_COMPRESSION || ((((_la - 112)) & ~0x1f) == 0 && ((1 << (_la - 112)) & ((1 << (TSqlParser.EVENTDATA - 112)) | (1 << (TSqlParser.FILENAME - 112)) | (1 << (TSqlParser.FILLFACTOR - 112)) | (1 << (TSqlParser.FORCESEEK - 112)))) !== 0) || ((((_la - 158)) & ~0x1f) == 0 && ((1 << (_la - 158)) & ((1 << (TSqlParser.INIT - 158)) | (1 << (TSqlParser.KEY - 158)) | (1 << (TSqlParser.MASTER - 158)) | (1 << (TSqlParser.MAX_MEMORY - 158)))) !== 0) || _la===TSqlParser.OFFSETS || _la===TSqlParser.PAGE || ((((_la - 259)) & ~0x1f) == 0 && ((1 << (_la - 259)) & ((1 << (TSqlParser.PUBLIC - 259)) | (1 << (TSqlParser.R - 259)) | (1 << (TSqlParser.RAW - 259)) | (1 << (TSqlParser.RETURN - 259)) | (1 << (TSqlParser.RETURNS - 259)) | (1 << (TSqlParser.ROWCOUNT - 259)))) !== 0) || ((((_la - 295)) & ~0x1f) == 0 && ((1 << (_la - 295)) & ((1 << (TSqlParser.SAFETY - 295)) | (1 << (TSqlParser.SERVER - 295)) | (1 << (TSqlParser.SID - 295)) | (1 << (TSqlParser.SOURCE - 295)) | (1 << (TSqlParser.SPLIT - 295)))) !== 0) || ((((_la - 327)) & ~0x1f) == 0 && ((1 << (_la - 327)) & ((1 << (TSqlParser.STATE - 327)) | (1 << (TSqlParser.START - 327)) | (1 << (TSqlParser.TARGET - 327)))) !== 0) || ((((_la - 380)) & ~0x1f) == 0 && ((1 << (_la - 380)) & ((1 << (TSqlParser.ABSOLUTE - 380)) | (1 << (TSqlParser.ACCENT_SENSITIVITY - 380)) | (1 << (TSqlParser.ACTION - 380)) | (1 << (TSqlParser.ACTIVATION - 380)) | (1 << (TSqlParser.ACTIVE - 380)) | (1 << (TSqlParser.ADDRESS - 380)) | (1 << (TSqlParser.AES_128 - 380)) | (1 << (TSqlParser.AES_192 - 380)) | (1 << (TSqlParser.AES_256 - 380)) | (1 << (TSqlParser.AFFINITY - 380)) | (1 << (TSqlParser.AFTER - 380)) | (1 << (TSqlParser.AGGREGATE - 380)) | (1 << (TSqlParser.ALGORITHM - 380)) | (1 << (TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS - 380)) | (1 << (TSqlParser.ALLOW_SNAPSHOT_ISOLATION - 380)) | (1 << (TSqlParser.ALLOWED - 380)) | (1 << (TSqlParser.ANSI_NULL_DEFAULT - 380)) | (1 << (TSqlParser.ANSI_NULLS - 380)) | (1 << (TSqlParser.ANSI_PADDING - 380)) | (1 << (TSqlParser.ANSI_WARNINGS - 380)) | (1 << (TSqlParser.APPLICATION_LOG - 380)) | (1 << (TSqlParser.APPLY - 380)) | (1 << (TSqlParser.ARITHABORT - 380)) | (1 << (TSqlParser.ASSEMBLY - 380)) | (1 << (TSqlParser.AUDIT - 380)) | (1 << (TSqlParser.AUDIT_GUID - 380)) | (1 << (TSqlParser.AUTO - 380)) | (1 << (TSqlParser.AUTO_CLEANUP - 380)) | (1 << (TSqlParser.AUTO_CLOSE - 380)) | (1 << (TSqlParser.AUTO_CREATE_STATISTICS - 380)) | (1 << (TSqlParser.AUTO_SHRINK - 380)) | (1 << (TSqlParser.AUTO_UPDATE_STATISTICS - 380)))) !== 0) || ((((_la - 412)) & ~0x1f) == 0 && ((1 << (_la - 412)) & ((1 << (TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC - 412)) | (1 << (TSqlParser.AVAILABILITY - 412)) | (1 << (TSqlParser.AVG - 412)) | (1 << (TSqlParser.BACKUP_PRIORITY - 412)) | (1 << (TSqlParser.BEGIN_DIALOG - 412)) | (1 << (TSqlParser.BIGINT - 412)) | (1 << (TSqlParser.BINARY_BASE64 - 412)) | (1 << (TSqlParser.BINARY_CHECKSUM - 412)) | (1 << (TSqlParser.BINDING - 412)) | (1 << (TSqlParser.BLOB_STORAGE - 412)) | (1 << (TSqlParser.BROKER - 412)) | (1 << (TSqlParser.BROKER_INSTANCE - 412)) | (1 << (TSqlParser.BULK_LOGGED - 412)) | (1 << (TSqlParser.CALLER - 412)) | (1 << (TSqlParser.CAP_CPU_PERCENT - 412)) | (1 << (TSqlParser.CAST - 412)) | (1 << (TSqlParser.CATALOG - 412)) | (1 << (TSqlParser.CATCH - 412)) | (1 << (TSqlParser.CHANGE_RETENTION - 412)) | (1 << (TSqlParser.CHANGE_TRACKING - 412)) | (1 << (TSqlParser.CHECKSUM - 412)) | (1 << (TSqlParser.CHECKSUM_AGG - 412)) | (1 << (TSqlParser.CLEANUP - 412)) | (1 << (TSqlParser.COLLECTION - 412)) | (1 << (TSqlParser.COLUMN_MASTER_KEY - 412)) | (1 << (TSqlParser.COMMITTED - 412)) | (1 << (TSqlParser.COMPATIBILITY_LEVEL - 412)) | (1 << (TSqlParser.CONCAT - 412)) | (1 << (TSqlParser.CONCAT_NULL_YIELDS_NULL - 412)) | (1 << (TSqlParser.CONTENT - 412)) | (1 << (TSqlParser.CONTROL - 412)) | (1 << (TSqlParser.COOKIE - 412)))) !== 0) || ((((_la - 444)) & ~0x1f) == 0 && ((1 << (_la - 444)) & ((1 << (TSqlParser.COUNT - 444)) | (1 << (TSqlParser.COUNT_BIG - 444)) | (1 << (TSqlParser.COUNTER - 444)) | (1 << (TSqlParser.CPU - 444)) | (1 << (TSqlParser.CREATE_NEW - 444)) | (1 << (TSqlParser.CREATION_DISPOSITION - 444)) | (1 << (TSqlParser.CREDENTIAL - 444)) | (1 << (TSqlParser.CRYPTOGRAPHIC - 444)) | (1 << (TSqlParser.CURSOR_CLOSE_ON_COMMIT - 444)) | (1 << (TSqlParser.CURSOR_DEFAULT - 444)) | (1 << (TSqlParser.DATA - 444)) | (1 << (TSqlParser.DATE_CORRELATION_OPTIMIZATION - 444)) | (1 << (TSqlParser.DATEADD - 444)) | (1 << (TSqlParser.DATEDIFF - 444)) | (1 << (TSqlParser.DATENAME - 444)) | (1 << (TSqlParser.DATEPART - 444)) | (1 << (TSqlParser.DAYS - 444)) | (1 << (TSqlParser.DB_CHAINING - 444)) | (1 << (TSqlParser.DB_FAILOVER - 444)) | (1 << (TSqlParser.DECRYPTION - 444)) | (1 << (TSqlParser.DEFAULT_DOUBLE_QUOTE - 444)) | (1 << (TSqlParser.DEFAULT_FULLTEXT_LANGUAGE - 444)) | (1 << (TSqlParser.DEFAULT_LANGUAGE - 444)) | (1 << (TSqlParser.DELAY - 444)) | (1 << (TSqlParser.DELAYED_DURABILITY - 444)) | (1 << (TSqlParser.DELETED - 444)) | (1 << (TSqlParser.DENSE_RANK - 444)) | (1 << (TSqlParser.DEPENDENTS - 444)) | (1 << (TSqlParser.DES - 444)) | (1 << (TSqlParser.DESCRIPTION - 444)) | (1 << (TSqlParser.DESX - 444)) | (1 << (TSqlParser.DHCP - 444)))) !== 0) || ((((_la - 476)) & ~0x1f) == 0 && ((1 << (_la - 476)) & ((1 << (TSqlParser.DIALOG - 476)) | (1 << (TSqlParser.DIRECTORY_NAME - 476)) | (1 << (TSqlParser.DISABLE - 476)) | (1 << (TSqlParser.DISABLE_BROKER - 476)) | (1 << (TSqlParser.DISABLED - 476)) | (1 << (TSqlParser.DISK_DRIVE - 476)) | (1 << (TSqlParser.DOCUMENT - 476)) | (1 << (TSqlParser.DYNAMIC - 476)) | (1 << (TSqlParser.EMERGENCY - 476)) | (1 << (TSqlParser.EMPTY - 476)) | (1 << (TSqlParser.ENABLE - 476)) | (1 << (TSqlParser.ENABLE_BROKER - 476)) | (1 << (TSqlParser.ENCRYPTED_VALUE - 476)) | (1 << (TSqlParser.ENCRYPTION - 476)) | (1 << (TSqlParser.ENDPOINT_URL - 476)) | (1 << (TSqlParser.ERROR_BROKER_CONVERSATIONS - 476)) | (1 << (TSqlParser.EXCLUSIVE - 476)) | (1 << (TSqlParser.EXECUTABLE - 476)) | (1 << (TSqlParser.EXIST - 476)) | (1 << (TSqlParser.EXPAND - 476)) | (1 << (TSqlParser.EXPIRY_DATE - 476)) | (1 << (TSqlParser.EXPLICIT - 476)) | (1 << (TSqlParser.FAIL_OPERATION - 476)) | (1 << (TSqlParser.FAILOVER_MODE - 476)) | (1 << (TSqlParser.FAILURE - 476)) | (1 << (TSqlParser.FAILURE_CONDITION_LEVEL - 476)) | (1 << (TSqlParser.FAST - 476)) | (1 << (TSqlParser.FAST_FORWARD - 476)) | (1 << (TSqlParser.FILEGROUP - 476)) | (1 << (TSqlParser.FILEGROWTH - 476)) | (1 << (TSqlParser.FILEPATH - 476)))) !== 0) || ((((_la - 508)) & ~0x1f) == 0 && ((1 << (_la - 508)) & ((1 << (TSqlParser.FILESTREAM - 508)) | (1 << (TSqlParser.FILTER - 508)) | (1 << (TSqlParser.FIRST - 508)) | (1 << (TSqlParser.FIRST_VALUE - 508)) | (1 << (TSqlParser.FOLLOWING - 508)) | (1 << (TSqlParser.FORCE - 508)) | (1 << (TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS - 508)) | (1 << (TSqlParser.FORCED - 508)) | (1 << (TSqlParser.FORMAT - 508)) | (1 << (TSqlParser.FORWARD_ONLY - 508)) | (1 << (TSqlParser.FULLSCAN - 508)) | (1 << (TSqlParser.FULLTEXT - 508)) | (1 << (TSqlParser.GB - 508)) | (1 << (TSqlParser.GETDATE - 508)) | (1 << (TSqlParser.GETUTCDATE - 508)) | (1 << (TSqlParser.GLOBAL - 508)) | (1 << (TSqlParser.GO - 508)) | (1 << (TSqlParser.GROUP_MAX_REQUESTS - 508)) | (1 << (TSqlParser.GROUPING - 508)) | (1 << (TSqlParser.GROUPING_ID - 508)) | (1 << (TSqlParser.HADR - 508)) | (1 << (TSqlParser.HASH - 508)) | (1 << (TSqlParser.HEALTH_CHECK_TIMEOUT - 508)) | (1 << (TSqlParser.HIGH - 508)) | (1 << (TSqlParser.HONOR_BROKER_PRIORITY - 508)) | (1 << (TSqlParser.HOURS - 508)) | (1 << (TSqlParser.IDENTITY_VALUE - 508)) | (1 << (TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX - 508)) | (1 << (TSqlParser.IMMEDIATE - 508)) | (1 << (TSqlParser.IMPERSONATE - 508)) | (1 << (TSqlParser.IMPORTANCE - 508)))) !== 0) || ((((_la - 540)) & ~0x1f) == 0 && ((1 << (_la - 540)) & ((1 << (TSqlParser.INCREMENTAL - 540)) | (1 << (TSqlParser.INITIATOR - 540)) | (1 << (TSqlParser.INPUT - 540)) | (1 << (TSqlParser.INSENSITIVE - 540)) | (1 << (TSqlParser.INSERTED - 540)) | (1 << (TSqlParser.INT - 540)) | (1 << (TSqlParser.IP - 540)) | (1 << (TSqlParser.ISOLATION - 540)) | (1 << (TSqlParser.KB - 540)) | (1 << (TSqlParser.KEEP - 540)) | (1 << (TSqlParser.KEEPFIXED - 540)) | (1 << (TSqlParser.KEY_SOURCE - 540)) | (1 << (TSqlParser.KEYS - 540)) | (1 << (TSqlParser.KEYSET - 540)) | (1 << (TSqlParser.LAG - 540)) | (1 << (TSqlParser.LAST - 540)) | (1 << (TSqlParser.LAST_VALUE - 540)) | (1 << (TSqlParser.LEAD - 540)) | (1 << (TSqlParser.LEVEL - 540)) | (1 << (TSqlParser.LIST - 540)) | (1 << (TSqlParser.LISTENER - 540)) | (1 << (TSqlParser.LISTENER_URL - 540)) | (1 << (TSqlParser.LOB_COMPACTION - 540)) | (1 << (TSqlParser.LOCAL - 540)) | (1 << (TSqlParser.LOCATION - 540)) | (1 << (TSqlParser.LOCK - 540)) | (1 << (TSqlParser.LOCK_ESCALATION - 540)) | (1 << (TSqlParser.LOGIN - 540)) | (1 << (TSqlParser.LOOP - 540)) | (1 << (TSqlParser.LOW - 540)))) !== 0) || ((((_la - 572)) & ~0x1f) == 0 && ((1 << (_la - 572)) & ((1 << (TSqlParser.MANUAL - 572)) | (1 << (TSqlParser.MARK - 572)) | (1 << (TSqlParser.MATERIALIZED - 572)) | (1 << (TSqlParser.MAX - 572)) | (1 << (TSqlParser.MAX_CPU_PERCENT - 572)) | (1 << (TSqlParser.MAX_DOP - 572)) | (1 << (TSqlParser.MAX_FILES - 572)) | (1 << (TSqlParser.MAX_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MAX_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MAX_PROCESSES - 572)) | (1 << (TSqlParser.MAX_QUEUE_READERS - 572)) | (1 << (TSqlParser.MAX_ROLLOVER_FILES - 572)) | (1 << (TSqlParser.MAXDOP - 572)) | (1 << (TSqlParser.MAXRECURSION - 572)) | (1 << (TSqlParser.MAXSIZE - 572)) | (1 << (TSqlParser.MB - 572)) | (1 << (TSqlParser.MEDIUM - 572)) | (1 << (TSqlParser.MEMORY_OPTIMIZED_DATA - 572)) | (1 << (TSqlParser.MESSAGE - 572)) | (1 << (TSqlParser.MIN - 572)) | (1 << (TSqlParser.MIN_ACTIVE_ROWVERSION - 572)) | (1 << (TSqlParser.MIN_CPU_PERCENT - 572)) | (1 << (TSqlParser.MIN_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MIN_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MINUTES - 572)) | (1 << (TSqlParser.MIRROR_ADDRESS - 572)) | (1 << (TSqlParser.MIXED_PAGE_ALLOCATION - 572)) | (1 << (TSqlParser.MODE - 572)) | (1 << (TSqlParser.MODIFY - 572)) | (1 << (TSqlParser.MOVE - 572)) | (1 << (TSqlParser.MULTI_USER - 572)) | (1 << (TSqlParser.NAME - 572)))) !== 0) || ((((_la - 604)) & ~0x1f) == 0 && ((1 << (_la - 604)) & ((1 << (TSqlParser.NESTED_TRIGGERS - 604)) | (1 << (TSqlParser.NEW_ACCOUNT - 604)) | (1 << (TSqlParser.NEW_BROKER - 604)) | (1 << (TSqlParser.NEW_PASSWORD - 604)) | (1 << (TSqlParser.NEXT - 604)) | (1 << (TSqlParser.NO - 604)) | (1 << (TSqlParser.NO_TRUNCATE - 604)) | (1 << (TSqlParser.NO_WAIT - 604)) | (1 << (TSqlParser.NOCOUNT - 604)) | (1 << (TSqlParser.NODES - 604)) | (1 << (TSqlParser.NOEXPAND - 604)) | (1 << (TSqlParser.NON_TRANSACTED_ACCESS - 604)) | (1 << (TSqlParser.NORECOMPUTE - 604)) | (1 << (TSqlParser.NORECOVERY - 604)) | (1 << (TSqlParser.NOWAIT - 604)) | (1 << (TSqlParser.NTILE - 604)) | (1 << (TSqlParser.NUMANODE - 604)) | (1 << (TSqlParser.NUMBER - 604)) | (1 << (TSqlParser.NUMERIC_ROUNDABORT - 604)) | (1 << (TSqlParser.OBJECT - 604)) | (1 << (TSqlParser.OFFLINE - 604)) | (1 << (TSqlParser.OFFSET - 604)) | (1 << (TSqlParser.OLD_ACCOUNT - 604)) | (1 << (TSqlParser.ONLINE - 604)) | (1 << (TSqlParser.ONLY - 604)) | (1 << (TSqlParser.OPEN_EXISTING - 604)) | (1 << (TSqlParser.OPTIMISTIC - 604)) | (1 << (TSqlParser.OPTIMIZE - 604)) | (1 << (TSqlParser.OUT - 604)) | (1 << (TSqlParser.OUTPUT - 604)) | (1 << (TSqlParser.OWNER - 604)))) !== 0) || ((((_la - 636)) & ~0x1f) == 0 && ((1 << (_la - 636)) & ((1 << (TSqlParser.PAGE_VERIFY - 636)) | (1 << (TSqlParser.PARAMETERIZATION - 636)) | (1 << (TSqlParser.PARTITION - 636)) | (1 << (TSqlParser.PARTITIONS - 636)) | (1 << (TSqlParser.PARTNER - 636)) | (1 << (TSqlParser.PATH - 636)) | (1 << (TSqlParser.POISON_MESSAGE_HANDLING - 636)) | (1 << (TSqlParser.POOL - 636)) | (1 << (TSqlParser.PORT - 636)) | (1 << (TSqlParser.PRECEDING - 636)) | (1 << (TSqlParser.PRIMARY_ROLE - 636)) | (1 << (TSqlParser.PRIOR - 636)) | (1 << (TSqlParser.PRIORITY - 636)) | (1 << (TSqlParser.PRIORITY_LEVEL - 636)) | (1 << (TSqlParser.PRIVATE - 636)) | (1 << (TSqlParser.PRIVATE_KEY - 636)) | (1 << (TSqlParser.PRIVILEGES - 636)) | (1 << (TSqlParser.PROCEDURE_NAME - 636)) | (1 << (TSqlParser.PROPERTY - 636)) | (1 << (TSqlParser.PROVIDER - 636)) | (1 << (TSqlParser.PROVIDER_KEY_NAME - 636)) | (1 << (TSqlParser.QUERY - 636)) | (1 << (TSqlParser.QUEUE - 636)) | (1 << (TSqlParser.QUEUE_DELAY - 636)) | (1 << (TSqlParser.QUOTED_IDENTIFIER - 636)) | (1 << (TSqlParser.RANGE - 636)) | (1 << (TSqlParser.RANK - 636)) | (1 << (TSqlParser.RC2 - 636)) | (1 << (TSqlParser.RC4 - 636)) | (1 << (TSqlParser.RC4_128 - 636)) | (1 << (TSqlParser.READ_COMMITTED_SNAPSHOT - 636)) | (1 << (TSqlParser.READ_ONLY - 636)))) !== 0) || ((((_la - 668)) & ~0x1f) == 0 && ((1 << (_la - 668)) & ((1 << (TSqlParser.READ_ONLY_ROUTING_LIST - 668)) | (1 << (TSqlParser.READ_WRITE - 668)) | (1 << (TSqlParser.READONLY - 668)) | (1 << (TSqlParser.REBUILD - 668)) | (1 << (TSqlParser.RECEIVE - 668)) | (1 << (TSqlParser.RECOMPILE - 668)) | (1 << (TSqlParser.RECOVERY - 668)) | (1 << (TSqlParser.RECURSIVE_TRIGGERS - 668)) | (1 << (TSqlParser.RELATIVE - 668)) | (1 << (TSqlParser.REMOTE - 668)) | (1 << (TSqlParser.REMOTE_SERVICE_NAME - 668)) | (1 << (TSqlParser.REMOVE - 668)) | (1 << (TSqlParser.REORGANIZE - 668)) | (1 << (TSqlParser.REPEATABLE - 668)) | (1 << (TSqlParser.REPLICA - 668)) | (1 << (TSqlParser.REQUEST_MAX_CPU_TIME_SEC - 668)) | (1 << (TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT - 668)) | (1 << (TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC - 668)) | (1 << (TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT - 668)) | (1 << (TSqlParser.RESERVE_DISK_SPACE - 668)) | (1 << (TSqlParser.RESOURCE - 668)) | (1 << (TSqlParser.RESOURCE_MANAGER_LOCATION - 668)) | (1 << (TSqlParser.RESTRICTED_USER - 668)) | (1 << (TSqlParser.RETENTION - 668)) | (1 << (TSqlParser.ROBUST - 668)) | (1 << (TSqlParser.ROOT - 668)) | (1 << (TSqlParser.ROUTE - 668)) | (1 << (TSqlParser.ROW - 668)) | (1 << (TSqlParser.ROW_NUMBER - 668)) | (1 << (TSqlParser.ROWGUID - 668)) | (1 << (TSqlParser.ROWS - 668)) | (1 << (TSqlParser.SAMPLE - 668)))) !== 0) || ((((_la - 700)) & ~0x1f) == 0 && ((1 << (_la - 700)) & ((1 << (TSqlParser.SCHEMABINDING - 700)) | (1 << (TSqlParser.SCOPED - 700)) | (1 << (TSqlParser.SCROLL - 700)) | (1 << (TSqlParser.SCROLL_LOCKS - 700)) | (1 << (TSqlParser.SEARCH - 700)) | (1 << (TSqlParser.SECONDARY - 700)) | (1 << (TSqlParser.SECONDARY_ONLY - 700)) | (1 << (TSqlParser.SECONDARY_ROLE - 700)) | (1 << (TSqlParser.SECONDS - 700)) | (1 << (TSqlParser.SECRET - 700)) | (1 << (TSqlParser.SECURITY - 700)) | (1 << (TSqlParser.SECURITY_LOG - 700)) | (1 << (TSqlParser.SEEDING_MODE - 700)) | (1 << (TSqlParser.SELF - 700)) | (1 << (TSqlParser.SEMI_SENSITIVE - 700)) | (1 << (TSqlParser.SEND - 700)) | (1 << (TSqlParser.SENT - 700)) | (1 << (TSqlParser.SEQUENCE - 700)) | (1 << (TSqlParser.SERIALIZABLE - 700)) | (1 << (TSqlParser.SESSION_TIMEOUT - 700)) | (1 << (TSqlParser.SETERROR - 700)) | (1 << (TSqlParser.SHARE - 700)) | (1 << (TSqlParser.SHOWPLAN - 700)) | (1 << (TSqlParser.SIGNATURE - 700)) | (1 << (TSqlParser.SIMPLE - 700)) | (1 << (TSqlParser.SINGLE_USER - 700)) | (1 << (TSqlParser.SIZE - 700)) | (1 << (TSqlParser.SMALLINT - 700)) | (1 << (TSqlParser.SNAPSHOT - 700)) | (1 << (TSqlParser.SPATIAL_WINDOW_MAX_CELLS - 700)) | (1 << (TSqlParser.STANDBY - 700)) | (1 << (TSqlParser.START_DATE - 700)))) !== 0) || ((((_la - 732)) & ~0x1f) == 0 && ((1 << (_la - 732)) & ((1 << (TSqlParser.STATIC - 732)) | (1 << (TSqlParser.STATS_STREAM - 732)) | (1 << (TSqlParser.STATUS - 732)) | (1 << (TSqlParser.STDEV - 732)) | (1 << (TSqlParser.STDEVP - 732)) | (1 << (TSqlParser.STOPLIST - 732)) | (1 << (TSqlParser.STRING_AGG - 732)) | (1 << (TSqlParser.STUFF - 732)) | (1 << (TSqlParser.SUBJECT - 732)) | (1 << (TSqlParser.SUM - 732)) | (1 << (TSqlParser.SUSPEND - 732)) | (1 << (TSqlParser.SYMMETRIC - 732)) | (1 << (TSqlParser.SYNCHRONOUS_COMMIT - 732)) | (1 << (TSqlParser.SYNONYM - 732)) | (1 << (TSqlParser.SYSTEM - 732)) | (1 << (TSqlParser.TAKE - 732)) | (1 << (TSqlParser.TARGET_RECOVERY_TIME - 732)) | (1 << (TSqlParser.TB - 732)) | (1 << (TSqlParser.TEXTIMAGE_ON - 732)) | (1 << (TSqlParser.THROW - 732)) | (1 << (TSqlParser.TIES - 732)) | (1 << (TSqlParser.TIME - 732)) | (1 << (TSqlParser.TIMEOUT - 732)) | (1 << (TSqlParser.TIMER - 732)) | (1 << (TSqlParser.TINYINT - 732)) | (1 << (TSqlParser.TORN_PAGE_DETECTION - 732)) | (1 << (TSqlParser.TRANSFORM_NOISE_WORDS - 732)) | (1 << (TSqlParser.TRIPLE_DES - 732)) | (1 << (TSqlParser.TRIPLE_DES_3KEY - 732)) | (1 << (TSqlParser.TRUSTWORTHY - 732)))) !== 0) || ((((_la - 764)) & ~0x1f) == 0 && ((1 << (_la - 764)) & ((1 << (TSqlParser.TRY - 764)) | (1 << (TSqlParser.TSQL - 764)) | (1 << (TSqlParser.TWO_DIGIT_YEAR_CUTOFF - 764)) | (1 << (TSqlParser.TYPE - 764)) | (1 << (TSqlParser.TYPE_WARNING - 764)) | (1 << (TSqlParser.UNBOUNDED - 764)) | (1 << (TSqlParser.UNCOMMITTED - 764)) | (1 << (TSqlParser.UNKNOWN - 764)) | (1 << (TSqlParser.UNLIMITED - 764)) | (1 << (TSqlParser.USING - 764)) | (1 << (TSqlParser.VALID_XML - 764)) | (1 << (TSqlParser.VALIDATION - 764)) | (1 << (TSqlParser.VALUE - 764)) | (1 << (TSqlParser.VAR - 764)) | (1 << (TSqlParser.VARP - 764)) | (1 << (TSqlParser.VIEW_METADATA - 764)) | (1 << (TSqlParser.VIEWS - 764)) | (1 << (TSqlParser.WAIT - 764)) | (1 << (TSqlParser.WELL_FORMED_XML - 764)) | (1 << (TSqlParser.WORK - 764)) | (1 << (TSqlParser.WORKLOAD - 764)) | (1 << (TSqlParser.XML - 764)) | (1 << (TSqlParser.XMLNAMESPACES - 764)))) !== 0) || ((((_la - 796)) & ~0x1f) == 0 && ((1 << (_la - 796)) & ((1 << (TSqlParser.DOUBLE_QUOTE_ID - 796)) | (1 << (TSqlParser.SQUARE_BRACKET_ID - 796)) | (1 << (TSqlParser.ID - 796)))) !== 0)) {
- this.state = 9406;
- this.table_name();
- this.state = 9407;
- this.match(TSqlParser.DOT);
- }
-
- this.state = 9411;
- this.match(TSqlParser.STAR);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Column_elemContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_column_elem;
- this.column_name = null; // IdContext
- return this;
-}
-
-Column_elemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Column_elemContext.prototype.constructor = Column_elemContext;
-
-Column_elemContext.prototype.NULL = function() {
- return this.getToken(TSqlParser.NULL, 0);
-};
-
-Column_elemContext.prototype.as_column_alias = function() {
- return this.getTypedRuleContext(As_column_aliasContext,0);
-};
-
-Column_elemContext.prototype.DOLLAR = function() {
- return this.getToken(TSqlParser.DOLLAR, 0);
-};
-
-Column_elemContext.prototype.IDENTITY = function() {
- return this.getToken(TSqlParser.IDENTITY, 0);
-};
-
-Column_elemContext.prototype.ROWGUID = function() {
- return this.getToken(TSqlParser.ROWGUID, 0);
-};
-
-Column_elemContext.prototype.table_name = function() {
- return this.getTypedRuleContext(Table_nameContext,0);
-};
-
-Column_elemContext.prototype.DOT = function() {
- return this.getToken(TSqlParser.DOT, 0);
-};
-
-Column_elemContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Column_elemContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterColumn_elem(this);
- }
-};
-
-Column_elemContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitColumn_elem(this);
- }
-};
-
-Column_elemContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitColumn_elem(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Column_elemContext = Column_elemContext;
-
-TSqlParser.prototype.column_elem = function() {
-
- var localctx = new Column_elemContext(this, this._ctx, this.state);
- this.enterRule(localctx, 790, TSqlParser.RULE_column_elem);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 9426;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.BLOCKING_HIERARCHY:
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- case TSqlParser.DOLLAR:
- this.state = 9416;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1337,this._ctx);
- if(la_===1) {
- this.state = 9413;
- this.table_name();
- this.state = 9414;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 9423;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1338,this._ctx);
- switch(la_) {
- case 1:
- this.state = 9418;
- localctx.column_name = this.id();
- break;
-
- case 2:
- this.state = 9419;
- this.match(TSqlParser.DOLLAR);
- this.state = 9420;
- this.match(TSqlParser.IDENTITY);
- break;
-
- case 3:
- this.state = 9421;
- this.match(TSqlParser.DOLLAR);
- this.state = 9422;
- this.match(TSqlParser.ROWGUID);
- break;
-
- }
- break;
- case TSqlParser.NULL:
- this.state = 9425;
- this.match(TSqlParser.NULL);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 9429;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1340,this._ctx);
- if(la_===1) {
- this.state = 9428;
- this.as_column_alias();
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Udt_elemContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_udt_elem;
- this.udt_column_name = null; // IdContext
- this.non_static_attr = null; // IdContext
- this.static_attr = null; // IdContext
- return this;
-}
-
-Udt_elemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Udt_elemContext.prototype.constructor = Udt_elemContext;
-
-Udt_elemContext.prototype.DOT = function() {
- return this.getToken(TSqlParser.DOT, 0);
-};
-
-Udt_elemContext.prototype.udt_method_arguments = function() {
- return this.getTypedRuleContext(Udt_method_argumentsContext,0);
-};
-
-Udt_elemContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Udt_elemContext.prototype.as_column_alias = function() {
- return this.getTypedRuleContext(As_column_aliasContext,0);
-};
-
-Udt_elemContext.prototype.COLON = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COLON);
- } else {
- return this.getToken(TSqlParser.COLON, i);
- }
-};
-
-
-Udt_elemContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterUdt_elem(this);
- }
-};
-
-Udt_elemContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitUdt_elem(this);
- }
-};
-
-Udt_elemContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitUdt_elem(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Udt_elemContext = Udt_elemContext;
-
-TSqlParser.prototype.udt_elem = function() {
-
- var localctx = new Udt_elemContext(this, this._ctx, this.state);
- this.enterRule(localctx, 792, TSqlParser.RULE_udt_elem);
- try {
- this.state = 9448;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1344,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 9431;
- localctx.udt_column_name = this.id();
- this.state = 9432;
- this.match(TSqlParser.DOT);
- this.state = 9433;
- localctx.non_static_attr = this.id();
- this.state = 9434;
- this.udt_method_arguments();
- this.state = 9436;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1341,this._ctx);
- if(la_===1) {
- this.state = 9435;
- this.as_column_alias();
-
- }
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 9438;
- localctx.udt_column_name = this.id();
- this.state = 9439;
- this.match(TSqlParser.COLON);
- this.state = 9440;
- this.match(TSqlParser.COLON);
- this.state = 9441;
- localctx.static_attr = this.id();
- this.state = 9443;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1342,this._ctx);
- if(la_===1) {
- this.state = 9442;
- this.udt_method_arguments();
-
- }
- this.state = 9446;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1343,this._ctx);
- if(la_===1) {
- this.state = 9445;
- this.as_column_alias();
-
- }
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Expression_elemContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_expression_elem;
- this.eq = null; // Token
- return this;
-}
-
-Expression_elemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Expression_elemContext.prototype.constructor = Expression_elemContext;
-
-Expression_elemContext.prototype.column_alias = function() {
- return this.getTypedRuleContext(Column_aliasContext,0);
-};
-
-Expression_elemContext.prototype.expression = function() {
- return this.getTypedRuleContext(ExpressionContext,0);
-};
-
-Expression_elemContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Expression_elemContext.prototype.as_column_alias = function() {
- return this.getTypedRuleContext(As_column_aliasContext,0);
-};
-
-Expression_elemContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterExpression_elem(this);
- }
-};
-
-Expression_elemContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitExpression_elem(this);
- }
-};
-
-Expression_elemContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitExpression_elem(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Expression_elemContext = Expression_elemContext;
-
-TSqlParser.prototype.expression_elem = function() {
-
- var localctx = new Expression_elemContext(this, this._ctx, this.state);
- this.enterRule(localctx, 794, TSqlParser.RULE_expression_elem);
- try {
- this.state = 9458;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1346,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 9450;
- this.column_alias();
- this.state = 9451;
- localctx.eq = this.match(TSqlParser.EQUAL);
- this.state = 9452;
- this.expression(0);
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 9454;
- this.expression(0);
- this.state = 9456;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1345,this._ctx);
- if(la_===1) {
- this.state = 9455;
- this.as_column_alias();
-
- }
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Select_list_elemContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_select_list_elem;
- return this;
-}
-
-Select_list_elemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Select_list_elemContext.prototype.constructor = Select_list_elemContext;
-
-Select_list_elemContext.prototype.asterisk = function() {
- return this.getTypedRuleContext(AsteriskContext,0);
-};
-
-Select_list_elemContext.prototype.column_elem = function() {
- return this.getTypedRuleContext(Column_elemContext,0);
-};
-
-Select_list_elemContext.prototype.udt_elem = function() {
- return this.getTypedRuleContext(Udt_elemContext,0);
-};
-
-Select_list_elemContext.prototype.expression_elem = function() {
- return this.getTypedRuleContext(Expression_elemContext,0);
-};
-
-Select_list_elemContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterSelect_list_elem(this);
- }
-};
-
-Select_list_elemContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitSelect_list_elem(this);
- }
-};
-
-Select_list_elemContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitSelect_list_elem(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Select_list_elemContext = Select_list_elemContext;
-
-TSqlParser.prototype.select_list_elem = function() {
-
- var localctx = new Select_list_elemContext(this, this._ctx, this.state);
- this.enterRule(localctx, 796, TSqlParser.RULE_select_list_elem);
- try {
- this.state = 9464;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1347,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 9460;
- this.asterisk();
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 9461;
- this.column_elem();
- break;
-
- case 3:
- this.enterOuterAlt(localctx, 3);
- this.state = 9462;
- this.udt_elem();
- break;
-
- case 4:
- this.enterOuterAlt(localctx, 4);
- this.state = 9463;
- this.expression_elem();
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Table_sourcesContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_table_sources;
- return this;
-}
-
-Table_sourcesContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Table_sourcesContext.prototype.constructor = Table_sourcesContext;
-
-Table_sourcesContext.prototype.table_source = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Table_sourceContext);
- } else {
- return this.getTypedRuleContext(Table_sourceContext,i);
- }
-};
-
-Table_sourcesContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Table_sourcesContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterTable_sources(this);
- }
-};
-
-Table_sourcesContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitTable_sources(this);
- }
-};
-
-Table_sourcesContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitTable_sources(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Table_sourcesContext = Table_sourcesContext;
-
-TSqlParser.prototype.table_sources = function() {
-
- var localctx = new Table_sourcesContext(this, this._ctx, this.state);
- this.enterRule(localctx, 798, TSqlParser.RULE_table_sources);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 9466;
- this.table_source();
- this.state = 9471;
- this._errHandler.sync(this);
- var _alt = this._interp.adaptivePredict(this._input,1348,this._ctx)
- while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
- if(_alt===1) {
- this.state = 9467;
- this.match(TSqlParser.COMMA);
- this.state = 9468;
- this.table_source();
- }
- this.state = 9473;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,1348,this._ctx);
- }
-
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Table_sourceContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_table_source;
- return this;
-}
-
-Table_sourceContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Table_sourceContext.prototype.constructor = Table_sourceContext;
-
-Table_sourceContext.prototype.table_source_item_joined = function() {
- return this.getTypedRuleContext(Table_source_item_joinedContext,0);
-};
-
-Table_sourceContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Table_sourceContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Table_sourceContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterTable_source(this);
- }
-};
-
-Table_sourceContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitTable_source(this);
- }
-};
-
-Table_sourceContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitTable_source(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Table_sourceContext = Table_sourceContext;
-
-TSqlParser.prototype.table_source = function() {
-
- var localctx = new Table_sourceContext(this, this._ctx, this.state);
- this.enterRule(localctx, 800, TSqlParser.RULE_table_source);
- try {
- this.state = 9479;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1349,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 9474;
- this.table_source_item_joined();
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 9475;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9476;
- this.table_source_item_joined();
- this.state = 9477;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Table_source_item_joinedContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_table_source_item_joined;
- return this;
-}
-
-Table_source_item_joinedContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Table_source_item_joinedContext.prototype.constructor = Table_source_item_joinedContext;
-
-Table_source_item_joinedContext.prototype.table_source_item = function() {
- return this.getTypedRuleContext(Table_source_itemContext,0);
-};
-
-Table_source_item_joinedContext.prototype.join_part = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Join_partContext);
- } else {
- return this.getTypedRuleContext(Join_partContext,i);
- }
-};
-
-Table_source_item_joinedContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterTable_source_item_joined(this);
- }
-};
-
-Table_source_item_joinedContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitTable_source_item_joined(this);
- }
-};
-
-Table_source_item_joinedContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitTable_source_item_joined(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Table_source_item_joinedContext = Table_source_item_joinedContext;
-
-TSqlParser.prototype.table_source_item_joined = function() {
-
- var localctx = new Table_source_item_joinedContext(this, this._ctx, this.state);
- this.enterRule(localctx, 802, TSqlParser.RULE_table_source_item_joined);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 9481;
- this.table_source_item();
- this.state = 9485;
- this._errHandler.sync(this);
- var _alt = this._interp.adaptivePredict(this._input,1350,this._ctx)
- while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
- if(_alt===1) {
- this.state = 9482;
- this.join_part();
- }
- this.state = 9487;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,1350,this._ctx);
- }
-
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Table_source_itemContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_table_source_item;
- return this;
-}
-
-Table_source_itemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Table_source_itemContext.prototype.constructor = Table_source_itemContext;
-
-Table_source_itemContext.prototype.table_name_with_hint = function() {
- return this.getTypedRuleContext(Table_name_with_hintContext,0);
-};
-
-Table_source_itemContext.prototype.as_table_alias = function() {
- return this.getTypedRuleContext(As_table_aliasContext,0);
-};
-
-Table_source_itemContext.prototype.full_table_name = function() {
- return this.getTypedRuleContext(Full_table_nameContext,0);
-};
-
-Table_source_itemContext.prototype.rowset_function = function() {
- return this.getTypedRuleContext(Rowset_functionContext,0);
-};
-
-Table_source_itemContext.prototype.derived_table = function() {
- return this.getTypedRuleContext(Derived_tableContext,0);
-};
-
-Table_source_itemContext.prototype.column_alias_list = function() {
- return this.getTypedRuleContext(Column_alias_listContext,0);
-};
-
-Table_source_itemContext.prototype.change_table = function() {
- return this.getTypedRuleContext(Change_tableContext,0);
-};
-
-Table_source_itemContext.prototype.function_call = function() {
- return this.getTypedRuleContext(Function_callContext,0);
-};
-
-Table_source_itemContext.prototype.LOCAL_ID = function() {
- return this.getToken(TSqlParser.LOCAL_ID, 0);
-};
-
-Table_source_itemContext.prototype.DOT = function() {
- return this.getToken(TSqlParser.DOT, 0);
-};
-
-Table_source_itemContext.prototype.open_xml = function() {
- return this.getTypedRuleContext(Open_xmlContext,0);
-};
-
-Table_source_itemContext.prototype.COLON = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COLON);
- } else {
- return this.getToken(TSqlParser.COLON, i);
- }
-};
-
-
-Table_source_itemContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterTable_source_item(this);
- }
-};
-
-Table_source_itemContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitTable_source_item(this);
- }
-};
-
-Table_source_itemContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitTable_source_item(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Table_source_itemContext = Table_source_itemContext;
-
-TSqlParser.prototype.table_source_item = function() {
-
- var localctx = new Table_source_itemContext(this, this._ctx, this.state);
- this.enterRule(localctx, 804, TSqlParser.RULE_table_source_item);
- try {
- this.state = 9537;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1362,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 9488;
- this.table_name_with_hint();
- this.state = 9490;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1351,this._ctx);
- if(la_===1) {
- this.state = 9489;
- this.as_table_alias();
-
- }
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 9492;
- this.full_table_name();
- this.state = 9494;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1352,this._ctx);
- if(la_===1) {
- this.state = 9493;
- this.as_table_alias();
-
- }
- break;
-
- case 3:
- this.enterOuterAlt(localctx, 3);
- this.state = 9496;
- this.rowset_function();
- this.state = 9498;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1353,this._ctx);
- if(la_===1) {
- this.state = 9497;
- this.as_table_alias();
-
- }
- break;
-
- case 4:
- this.enterOuterAlt(localctx, 4);
- this.state = 9500;
- this.derived_table();
- this.state = 9505;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1355,this._ctx);
- if(la_===1) {
- this.state = 9501;
- this.as_table_alias();
- this.state = 9503;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1354,this._ctx);
- if(la_===1) {
- this.state = 9502;
- this.column_alias_list();
-
- }
-
- }
- break;
-
- case 5:
- this.enterOuterAlt(localctx, 5);
- this.state = 9507;
- this.change_table();
- this.state = 9508;
- this.as_table_alias();
- break;
-
- case 6:
- this.enterOuterAlt(localctx, 6);
- this.state = 9510;
- this.function_call();
- this.state = 9515;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1357,this._ctx);
- if(la_===1) {
- this.state = 9511;
- this.as_table_alias();
- this.state = 9513;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1356,this._ctx);
- if(la_===1) {
- this.state = 9512;
- this.column_alias_list();
-
- }
-
- }
- break;
-
- case 7:
- this.enterOuterAlt(localctx, 7);
- this.state = 9517;
- this.match(TSqlParser.LOCAL_ID);
- this.state = 9519;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1358,this._ctx);
- if(la_===1) {
- this.state = 9518;
- this.as_table_alias();
-
- }
- break;
-
- case 8:
- this.enterOuterAlt(localctx, 8);
- this.state = 9521;
- this.match(TSqlParser.LOCAL_ID);
- this.state = 9522;
- this.match(TSqlParser.DOT);
- this.state = 9523;
- this.function_call();
- this.state = 9528;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1360,this._ctx);
- if(la_===1) {
- this.state = 9524;
- this.as_table_alias();
- this.state = 9526;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1359,this._ctx);
- if(la_===1) {
- this.state = 9525;
- this.column_alias_list();
-
- }
-
- }
- break;
-
- case 9:
- this.enterOuterAlt(localctx, 9);
- this.state = 9530;
- this.open_xml();
- break;
-
- case 10:
- this.enterOuterAlt(localctx, 10);
- this.state = 9531;
- this.match(TSqlParser.COLON);
- this.state = 9532;
- this.match(TSqlParser.COLON);
- this.state = 9533;
- this.function_call();
- this.state = 9535;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1361,this._ctx);
- if(la_===1) {
- this.state = 9534;
- this.as_table_alias();
-
- }
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Open_xmlContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_open_xml;
- return this;
-}
-
-Open_xmlContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Open_xmlContext.prototype.constructor = Open_xmlContext;
-
-Open_xmlContext.prototype.OPENXML = function() {
- return this.getToken(TSqlParser.OPENXML, 0);
-};
-
-Open_xmlContext.prototype.LR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.LR_BRACKET);
- } else {
- return this.getToken(TSqlParser.LR_BRACKET, i);
- }
-};
-
-
-Open_xmlContext.prototype.expression = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(ExpressionContext);
- } else {
- return this.getTypedRuleContext(ExpressionContext,i);
- }
-};
-
-Open_xmlContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Open_xmlContext.prototype.RR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.RR_BRACKET);
- } else {
- return this.getToken(TSqlParser.RR_BRACKET, i);
- }
-};
-
-
-Open_xmlContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Open_xmlContext.prototype.schema_declaration = function() {
- return this.getTypedRuleContext(Schema_declarationContext,0);
-};
-
-Open_xmlContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterOpen_xml(this);
- }
-};
-
-Open_xmlContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitOpen_xml(this);
- }
-};
-
-Open_xmlContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitOpen_xml(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Open_xmlContext = Open_xmlContext;
-
-TSqlParser.prototype.open_xml = function() {
-
- var localctx = new Open_xmlContext(this, this._ctx, this.state);
- this.enterRule(localctx, 806, TSqlParser.RULE_open_xml);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 9539;
- this.match(TSqlParser.OPENXML);
- this.state = 9540;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9541;
- this.expression(0);
- this.state = 9542;
- this.match(TSqlParser.COMMA);
- this.state = 9543;
- this.expression(0);
- this.state = 9546;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 9544;
- this.match(TSqlParser.COMMA);
- this.state = 9545;
- this.expression(0);
- }
-
- this.state = 9548;
- this.match(TSqlParser.RR_BRACKET);
- this.state = 9554;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1364,this._ctx);
- if(la_===1) {
- this.state = 9549;
- this.match(TSqlParser.WITH);
- this.state = 9550;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9551;
- this.schema_declaration();
- this.state = 9552;
- this.match(TSqlParser.RR_BRACKET);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Schema_declarationContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_schema_declaration;
- return this;
-}
-
-Schema_declarationContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Schema_declarationContext.prototype.constructor = Schema_declarationContext;
-
-Schema_declarationContext.prototype.column_declaration = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Column_declarationContext);
- } else {
- return this.getTypedRuleContext(Column_declarationContext,i);
- }
-};
-
-Schema_declarationContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Schema_declarationContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterSchema_declaration(this);
- }
-};
-
-Schema_declarationContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitSchema_declaration(this);
- }
-};
-
-Schema_declarationContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitSchema_declaration(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Schema_declarationContext = Schema_declarationContext;
-
-TSqlParser.prototype.schema_declaration = function() {
-
- var localctx = new Schema_declarationContext(this, this._ctx, this.state);
- this.enterRule(localctx, 808, TSqlParser.RULE_schema_declaration);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 9556;
- this.column_declaration();
- this.state = 9561;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 9557;
- this.match(TSqlParser.COMMA);
- this.state = 9558;
- this.column_declaration();
- this.state = 9563;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Column_declarationContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_column_declaration;
- return this;
-}
-
-Column_declarationContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Column_declarationContext.prototype.constructor = Column_declarationContext;
-
-Column_declarationContext.prototype.ID = function() {
- return this.getToken(TSqlParser.ID, 0);
-};
-
-Column_declarationContext.prototype.data_type = function() {
- return this.getTypedRuleContext(Data_typeContext,0);
-};
-
-Column_declarationContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Column_declarationContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterColumn_declaration(this);
- }
-};
-
-Column_declarationContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitColumn_declaration(this);
- }
-};
-
-Column_declarationContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitColumn_declaration(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Column_declarationContext = Column_declarationContext;
-
-TSqlParser.prototype.column_declaration = function() {
-
- var localctx = new Column_declarationContext(this, this._ctx, this.state);
- this.enterRule(localctx, 810, TSqlParser.RULE_column_declaration);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 9564;
- this.match(TSqlParser.ID);
- this.state = 9565;
- this.data_type();
- this.state = 9567;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.STRING) {
- this.state = 9566;
- this.match(TSqlParser.STRING);
- }
-
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Change_tableContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_change_table;
- return this;
-}
-
-Change_tableContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Change_tableContext.prototype.constructor = Change_tableContext;
-
-Change_tableContext.prototype.CHANGETABLE = function() {
- return this.getToken(TSqlParser.CHANGETABLE, 0);
-};
-
-Change_tableContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Change_tableContext.prototype.CHANGES = function() {
- return this.getToken(TSqlParser.CHANGES, 0);
-};
-
-Change_tableContext.prototype.table_name = function() {
- return this.getTypedRuleContext(Table_nameContext,0);
-};
-
-Change_tableContext.prototype.COMMA = function() {
- return this.getToken(TSqlParser.COMMA, 0);
-};
-
-Change_tableContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Change_tableContext.prototype.NULL = function() {
- return this.getToken(TSqlParser.NULL, 0);
-};
-
-Change_tableContext.prototype.DECIMAL = function() {
- return this.getToken(TSqlParser.DECIMAL, 0);
-};
-
-Change_tableContext.prototype.LOCAL_ID = function() {
- return this.getToken(TSqlParser.LOCAL_ID, 0);
-};
-
-Change_tableContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterChange_table(this);
- }
-};
-
-Change_tableContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitChange_table(this);
- }
-};
-
-Change_tableContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitChange_table(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Change_tableContext = Change_tableContext;
-
-TSqlParser.prototype.change_table = function() {
-
- var localctx = new Change_tableContext(this, this._ctx, this.state);
- this.enterRule(localctx, 812, TSqlParser.RULE_change_table);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 9569;
- this.match(TSqlParser.CHANGETABLE);
- this.state = 9570;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9571;
- this.match(TSqlParser.CHANGES);
- this.state = 9572;
- this.table_name();
- this.state = 9573;
- this.match(TSqlParser.COMMA);
- this.state = 9574;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.NULL || _la===TSqlParser.LOCAL_ID || _la===TSqlParser.DECIMAL)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 9575;
- this.match(TSqlParser.RR_BRACKET);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Join_partContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_join_part;
- this.join_type = null; // Token
- this.join_hint = null; // Token
- return this;
-}
-
-Join_partContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Join_partContext.prototype.constructor = Join_partContext;
-
-Join_partContext.prototype.JOIN = function() {
- return this.getToken(TSqlParser.JOIN, 0);
-};
-
-Join_partContext.prototype.table_source = function() {
- return this.getTypedRuleContext(Table_sourceContext,0);
-};
-
-Join_partContext.prototype.ON = function() {
- return this.getToken(TSqlParser.ON, 0);
-};
-
-Join_partContext.prototype.search_condition = function() {
- return this.getTypedRuleContext(Search_conditionContext,0);
-};
-
-Join_partContext.prototype.LEFT = function() {
- return this.getToken(TSqlParser.LEFT, 0);
-};
-
-Join_partContext.prototype.RIGHT = function() {
- return this.getToken(TSqlParser.RIGHT, 0);
-};
-
-Join_partContext.prototype.FULL = function() {
- return this.getToken(TSqlParser.FULL, 0);
-};
-
-Join_partContext.prototype.INNER = function() {
- return this.getToken(TSqlParser.INNER, 0);
-};
-
-Join_partContext.prototype.OUTER = function() {
- return this.getToken(TSqlParser.OUTER, 0);
-};
-
-Join_partContext.prototype.LOOP = function() {
- return this.getToken(TSqlParser.LOOP, 0);
-};
-
-Join_partContext.prototype.HASH = function() {
- return this.getToken(TSqlParser.HASH, 0);
-};
-
-Join_partContext.prototype.MERGE = function() {
- return this.getToken(TSqlParser.MERGE, 0);
-};
-
-Join_partContext.prototype.REMOTE = function() {
- return this.getToken(TSqlParser.REMOTE, 0);
-};
-
-Join_partContext.prototype.CROSS = function() {
- return this.getToken(TSqlParser.CROSS, 0);
-};
-
-Join_partContext.prototype.APPLY = function() {
- return this.getToken(TSqlParser.APPLY, 0);
-};
-
-Join_partContext.prototype.PIVOT = function() {
- return this.getToken(TSqlParser.PIVOT, 0);
-};
-
-Join_partContext.prototype.pivot_clause = function() {
- return this.getTypedRuleContext(Pivot_clauseContext,0);
-};
-
-Join_partContext.prototype.as_table_alias = function() {
- return this.getTypedRuleContext(As_table_aliasContext,0);
-};
-
-Join_partContext.prototype.UNPIVOT = function() {
- return this.getToken(TSqlParser.UNPIVOT, 0);
-};
-
-Join_partContext.prototype.unpivot_clause = function() {
- return this.getTypedRuleContext(Unpivot_clauseContext,0);
-};
-
-Join_partContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterJoin_part(this);
- }
-};
-
-Join_partContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitJoin_part(this);
- }
-};
-
-Join_partContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitJoin_part(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Join_partContext = Join_partContext;
-
-TSqlParser.prototype.join_part = function() {
-
- var localctx = new Join_partContext(this, this._ctx, this.state);
- this.enterRule(localctx, 814, TSqlParser.RULE_join_part);
- var _la = 0; // Token type
- try {
- this.state = 9611;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1371,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 9584;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.INNER:
- case TSqlParser.JOIN:
- case TSqlParser.MERGE:
- case TSqlParser.HASH:
- case TSqlParser.LOOP:
- case TSqlParser.REMOTE:
- this.state = 9578;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.INNER) {
- this.state = 9577;
- this.match(TSqlParser.INNER);
- }
-
- break;
- case TSqlParser.FULL:
- case TSqlParser.LEFT:
- case TSqlParser.RIGHT:
- this.state = 9580;
- localctx.join_type = this._input.LT(1);
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.FULL || _la===TSqlParser.LEFT || _la===TSqlParser.RIGHT)) {
- localctx.join_type = this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 9582;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.OUTER) {
- this.state = 9581;
- this.match(TSqlParser.OUTER);
- }
-
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 9587;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.MERGE || _la===TSqlParser.HASH || _la===TSqlParser.LOOP || _la===TSqlParser.REMOTE) {
- this.state = 9586;
- localctx.join_hint = this._input.LT(1);
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.MERGE || _la===TSqlParser.HASH || _la===TSqlParser.LOOP || _la===TSqlParser.REMOTE)) {
- localctx.join_hint = this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- }
-
- this.state = 9589;
- this.match(TSqlParser.JOIN);
- this.state = 9590;
- this.table_source();
- this.state = 9591;
- this.match(TSqlParser.ON);
- this.state = 9592;
- this.search_condition();
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 9594;
- this.match(TSqlParser.CROSS);
- this.state = 9595;
- this.match(TSqlParser.JOIN);
- this.state = 9596;
- this.table_source();
- break;
-
- case 3:
- this.enterOuterAlt(localctx, 3);
- this.state = 9597;
- this.match(TSqlParser.CROSS);
- this.state = 9598;
- this.match(TSqlParser.APPLY);
- this.state = 9599;
- this.table_source();
- break;
-
- case 4:
- this.enterOuterAlt(localctx, 4);
- this.state = 9600;
- this.match(TSqlParser.OUTER);
- this.state = 9601;
- this.match(TSqlParser.APPLY);
- this.state = 9602;
- this.table_source();
- break;
-
- case 5:
- this.enterOuterAlt(localctx, 5);
- this.state = 9603;
- this.match(TSqlParser.PIVOT);
- this.state = 9604;
- this.pivot_clause();
- this.state = 9605;
- this.as_table_alias();
- break;
-
- case 6:
- this.enterOuterAlt(localctx, 6);
- this.state = 9607;
- this.match(TSqlParser.UNPIVOT);
- this.state = 9608;
- this.unpivot_clause();
- this.state = 9609;
- this.as_table_alias();
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Pivot_clauseContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_pivot_clause;
- return this;
-}
-
-Pivot_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Pivot_clauseContext.prototype.constructor = Pivot_clauseContext;
-
-Pivot_clauseContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Pivot_clauseContext.prototype.aggregate_windowed_function = function() {
- return this.getTypedRuleContext(Aggregate_windowed_functionContext,0);
-};
-
-Pivot_clauseContext.prototype.FOR = function() {
- return this.getToken(TSqlParser.FOR, 0);
-};
-
-Pivot_clauseContext.prototype.full_column_name = function() {
- return this.getTypedRuleContext(Full_column_nameContext,0);
-};
-
-Pivot_clauseContext.prototype.IN = function() {
- return this.getToken(TSqlParser.IN, 0);
-};
-
-Pivot_clauseContext.prototype.column_alias_list = function() {
- return this.getTypedRuleContext(Column_alias_listContext,0);
-};
-
-Pivot_clauseContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Pivot_clauseContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterPivot_clause(this);
- }
-};
-
-Pivot_clauseContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitPivot_clause(this);
- }
-};
-
-Pivot_clauseContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitPivot_clause(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Pivot_clauseContext = Pivot_clauseContext;
-
-TSqlParser.prototype.pivot_clause = function() {
-
- var localctx = new Pivot_clauseContext(this, this._ctx, this.state);
- this.enterRule(localctx, 816, TSqlParser.RULE_pivot_clause);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 9613;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9614;
- this.aggregate_windowed_function();
- this.state = 9615;
- this.match(TSqlParser.FOR);
- this.state = 9616;
- this.full_column_name();
- this.state = 9617;
- this.match(TSqlParser.IN);
- this.state = 9618;
- this.column_alias_list();
- this.state = 9619;
- this.match(TSqlParser.RR_BRACKET);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Unpivot_clauseContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_unpivot_clause;
- return this;
-}
-
-Unpivot_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Unpivot_clauseContext.prototype.constructor = Unpivot_clauseContext;
-
-Unpivot_clauseContext.prototype.LR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.LR_BRACKET);
- } else {
- return this.getToken(TSqlParser.LR_BRACKET, i);
- }
-};
-
-
-Unpivot_clauseContext.prototype.expression = function() {
- return this.getTypedRuleContext(ExpressionContext,0);
-};
-
-Unpivot_clauseContext.prototype.FOR = function() {
- return this.getToken(TSqlParser.FOR, 0);
-};
-
-Unpivot_clauseContext.prototype.full_column_name = function() {
- return this.getTypedRuleContext(Full_column_nameContext,0);
-};
-
-Unpivot_clauseContext.prototype.IN = function() {
- return this.getToken(TSqlParser.IN, 0);
-};
-
-Unpivot_clauseContext.prototype.full_column_name_list = function() {
- return this.getTypedRuleContext(Full_column_name_listContext,0);
-};
-
-Unpivot_clauseContext.prototype.RR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.RR_BRACKET);
- } else {
- return this.getToken(TSqlParser.RR_BRACKET, i);
- }
-};
-
-
-Unpivot_clauseContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterUnpivot_clause(this);
- }
-};
-
-Unpivot_clauseContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitUnpivot_clause(this);
- }
-};
-
-Unpivot_clauseContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitUnpivot_clause(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Unpivot_clauseContext = Unpivot_clauseContext;
-
-TSqlParser.prototype.unpivot_clause = function() {
-
- var localctx = new Unpivot_clauseContext(this, this._ctx, this.state);
- this.enterRule(localctx, 818, TSqlParser.RULE_unpivot_clause);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 9621;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9622;
- this.expression(0);
- this.state = 9623;
- this.match(TSqlParser.FOR);
- this.state = 9624;
- this.full_column_name();
- this.state = 9625;
- this.match(TSqlParser.IN);
- this.state = 9626;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9627;
- this.full_column_name_list();
- this.state = 9628;
- this.match(TSqlParser.RR_BRACKET);
- this.state = 9629;
- this.match(TSqlParser.RR_BRACKET);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Full_column_name_listContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_full_column_name_list;
- return this;
-}
-
-Full_column_name_listContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Full_column_name_listContext.prototype.constructor = Full_column_name_listContext;
-
-Full_column_name_listContext.prototype.full_column_name = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Full_column_nameContext);
- } else {
- return this.getTypedRuleContext(Full_column_nameContext,i);
- }
-};
-
-Full_column_name_listContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Full_column_name_listContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterFull_column_name_list(this);
- }
-};
-
-Full_column_name_listContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitFull_column_name_list(this);
- }
-};
-
-Full_column_name_listContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitFull_column_name_list(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Full_column_name_listContext = Full_column_name_listContext;
-
-TSqlParser.prototype.full_column_name_list = function() {
-
- var localctx = new Full_column_name_listContext(this, this._ctx, this.state);
- this.enterRule(localctx, 820, TSqlParser.RULE_full_column_name_list);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 9631;
- this.full_column_name();
- this.state = 9636;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 9632;
- this.match(TSqlParser.COMMA);
- this.state = 9633;
- this.full_column_name();
- this.state = 9638;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Table_name_with_hintContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_table_name_with_hint;
- return this;
-}
-
-Table_name_with_hintContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Table_name_with_hintContext.prototype.constructor = Table_name_with_hintContext;
-
-Table_name_with_hintContext.prototype.table_name = function() {
- return this.getTypedRuleContext(Table_nameContext,0);
-};
-
-Table_name_with_hintContext.prototype.with_table_hints = function() {
- return this.getTypedRuleContext(With_table_hintsContext,0);
-};
-
-Table_name_with_hintContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterTable_name_with_hint(this);
- }
-};
-
-Table_name_with_hintContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitTable_name_with_hint(this);
- }
-};
-
-Table_name_with_hintContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitTable_name_with_hint(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Table_name_with_hintContext = Table_name_with_hintContext;
-
-TSqlParser.prototype.table_name_with_hint = function() {
-
- var localctx = new Table_name_with_hintContext(this, this._ctx, this.state);
- this.enterRule(localctx, 822, TSqlParser.RULE_table_name_with_hint);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 9639;
- this.table_name();
- this.state = 9641;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1373,this._ctx);
- if(la_===1) {
- this.state = 9640;
- this.with_table_hints();
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Rowset_functionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_rowset_function;
- this.provider_name = null; // Token
- this.connectionString = null; // Token
- this.sql = null; // Token
- this.data_file = null; // Token
- return this;
-}
-
-Rowset_functionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Rowset_functionContext.prototype.constructor = Rowset_functionContext;
-
-Rowset_functionContext.prototype.OPENROWSET = function() {
- return this.getToken(TSqlParser.OPENROWSET, 0);
-};
-
-Rowset_functionContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Rowset_functionContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Rowset_functionContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Rowset_functionContext.prototype.STRING = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.STRING);
- } else {
- return this.getToken(TSqlParser.STRING, i);
- }
-};
-
-
-Rowset_functionContext.prototype.BULK = function() {
- return this.getToken(TSqlParser.BULK, 0);
-};
-
-Rowset_functionContext.prototype.bulk_option = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Bulk_optionContext);
- } else {
- return this.getTypedRuleContext(Bulk_optionContext,i);
- }
-};
-
-Rowset_functionContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Rowset_functionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterRowset_function(this);
- }
-};
-
-Rowset_functionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitRowset_function(this);
- }
-};
-
-Rowset_functionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitRowset_function(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Rowset_functionContext = Rowset_functionContext;
-
-TSqlParser.prototype.rowset_function = function() {
-
- var localctx = new Rowset_functionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 824, TSqlParser.RULE_rowset_function);
- var _la = 0; // Token type
- try {
- this.state = 9669;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1376,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 9643;
- this.match(TSqlParser.OPENROWSET);
- this.state = 9644;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9645;
- localctx.provider_name = this.match(TSqlParser.STRING);
- this.state = 9646;
- this.match(TSqlParser.COMMA);
- this.state = 9647;
- localctx.connectionString = this.match(TSqlParser.STRING);
- this.state = 9648;
- this.match(TSqlParser.COMMA);
- this.state = 9649;
- localctx.sql = this.match(TSqlParser.STRING);
- this.state = 9650;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 9651;
- this.match(TSqlParser.OPENROWSET);
- this.state = 9652;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9653;
- this.match(TSqlParser.BULK);
- this.state = 9654;
- localctx.data_file = this.match(TSqlParser.STRING);
- this.state = 9655;
- this.match(TSqlParser.COMMA);
- this.state = 9665;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1375,this._ctx);
- switch(la_) {
- case 1:
- this.state = 9656;
- this.bulk_option();
- this.state = 9661;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 9657;
- this.match(TSqlParser.COMMA);
- this.state = 9658;
- this.bulk_option();
- this.state = 9663;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- break;
-
- case 2:
- this.state = 9664;
- this.id();
- break;
-
- }
- this.state = 9667;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Bulk_optionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_bulk_option;
- this.bulk_option_value = null; // Token
- return this;
-}
-
-Bulk_optionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Bulk_optionContext.prototype.constructor = Bulk_optionContext;
-
-Bulk_optionContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Bulk_optionContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Bulk_optionContext.prototype.DECIMAL = function() {
- return this.getToken(TSqlParser.DECIMAL, 0);
-};
-
-Bulk_optionContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Bulk_optionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterBulk_option(this);
- }
-};
-
-Bulk_optionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitBulk_option(this);
- }
-};
-
-Bulk_optionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitBulk_option(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Bulk_optionContext = Bulk_optionContext;
-
-TSqlParser.prototype.bulk_option = function() {
-
- var localctx = new Bulk_optionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 826, TSqlParser.RULE_bulk_option);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 9671;
- this.id();
- this.state = 9672;
- this.match(TSqlParser.EQUAL);
- this.state = 9673;
- localctx.bulk_option_value = this._input.LT(1);
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.DECIMAL || _la===TSqlParser.STRING)) {
- localctx.bulk_option_value = this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Derived_tableContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_derived_table;
- return this;
-}
-
-Derived_tableContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Derived_tableContext.prototype.constructor = Derived_tableContext;
-
-Derived_tableContext.prototype.subquery = function() {
- return this.getTypedRuleContext(SubqueryContext,0);
-};
-
-Derived_tableContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Derived_tableContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Derived_tableContext.prototype.table_value_constructor = function() {
- return this.getTypedRuleContext(Table_value_constructorContext,0);
-};
-
-Derived_tableContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDerived_table(this);
- }
-};
-
-Derived_tableContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDerived_table(this);
- }
-};
-
-Derived_tableContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDerived_table(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Derived_tableContext = Derived_tableContext;
-
-TSqlParser.prototype.derived_table = function() {
-
- var localctx = new Derived_tableContext(this, this._ctx, this.state);
- this.enterRule(localctx, 828, TSqlParser.RULE_derived_table);
- try {
- this.state = 9685;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1377,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 9675;
- this.subquery();
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 9676;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9677;
- this.subquery();
- this.state = 9678;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- case 3:
- this.enterOuterAlt(localctx, 3);
- this.state = 9680;
- this.table_value_constructor();
- break;
-
- case 4:
- this.enterOuterAlt(localctx, 4);
- this.state = 9681;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9682;
- this.table_value_constructor();
- this.state = 9683;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Function_callContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_function_call;
- return this;
-}
-
-Function_callContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Function_callContext.prototype.constructor = Function_callContext;
-
-
-
-Function_callContext.prototype.copyFrom = function(ctx) {
- antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx);
-};
-
-
-function CURRENT_USERContext(parser, ctx) {
- Function_callContext.call(this, parser);
- Function_callContext.prototype.copyFrom.call(this, ctx);
- return this;
-}
-
-CURRENT_USERContext.prototype = Object.create(Function_callContext.prototype);
-CURRENT_USERContext.prototype.constructor = CURRENT_USERContext;
-
-TSqlParser.CURRENT_USERContext = CURRENT_USERContext;
-
-CURRENT_USERContext.prototype.CURRENT_USER = function() {
- return this.getToken(TSqlParser.CURRENT_USER, 0);
-};
-CURRENT_USERContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCURRENT_USER(this);
- }
-};
-
-CURRENT_USERContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCURRENT_USER(this);
- }
-};
-
-CURRENT_USERContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCURRENT_USER(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-function DATEADDContext(parser, ctx) {
- Function_callContext.call(this, parser);
- Function_callContext.prototype.copyFrom.call(this, ctx);
- return this;
-}
-
-DATEADDContext.prototype = Object.create(Function_callContext.prototype);
-DATEADDContext.prototype.constructor = DATEADDContext;
-
-TSqlParser.DATEADDContext = DATEADDContext;
-
-DATEADDContext.prototype.DATEADD = function() {
- return this.getToken(TSqlParser.DATEADD, 0);
-};
-
-DATEADDContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-DATEADDContext.prototype.ID = function() {
- return this.getToken(TSqlParser.ID, 0);
-};
-
-DATEADDContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-DATEADDContext.prototype.expression = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(ExpressionContext);
- } else {
- return this.getTypedRuleContext(ExpressionContext,i);
- }
-};
-
-DATEADDContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-DATEADDContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDATEADD(this);
- }
-};
-
-DATEADDContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDATEADD(this);
- }
-};
-
-DATEADDContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDATEADD(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-function CHECKSUMContext(parser, ctx) {
- Function_callContext.call(this, parser);
- Function_callContext.prototype.copyFrom.call(this, ctx);
- return this;
-}
-
-CHECKSUMContext.prototype = Object.create(Function_callContext.prototype);
-CHECKSUMContext.prototype.constructor = CHECKSUMContext;
-
-TSqlParser.CHECKSUMContext = CHECKSUMContext;
-
-CHECKSUMContext.prototype.CHECKSUM = function() {
- return this.getToken(TSqlParser.CHECKSUM, 0);
-};
-
-CHECKSUMContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-CHECKSUMContext.prototype.STAR = function() {
- return this.getToken(TSqlParser.STAR, 0);
-};
-
-CHECKSUMContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-CHECKSUMContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCHECKSUM(this);
- }
-};
-
-CHECKSUMContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCHECKSUM(this);
- }
-};
-
-CHECKSUMContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCHECKSUM(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-function CURRENT_TIMESTAMPContext(parser, ctx) {
- Function_callContext.call(this, parser);
- Function_callContext.prototype.copyFrom.call(this, ctx);
- return this;
-}
-
-CURRENT_TIMESTAMPContext.prototype = Object.create(Function_callContext.prototype);
-CURRENT_TIMESTAMPContext.prototype.constructor = CURRENT_TIMESTAMPContext;
-
-TSqlParser.CURRENT_TIMESTAMPContext = CURRENT_TIMESTAMPContext;
-
-CURRENT_TIMESTAMPContext.prototype.CURRENT_TIMESTAMP = function() {
- return this.getToken(TSqlParser.CURRENT_TIMESTAMP, 0);
-};
-CURRENT_TIMESTAMPContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCURRENT_TIMESTAMP(this);
- }
-};
-
-CURRENT_TIMESTAMPContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCURRENT_TIMESTAMP(this);
- }
-};
-
-CURRENT_TIMESTAMPContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCURRENT_TIMESTAMP(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-function BINARY_CHECKSUMContext(parser, ctx) {
- Function_callContext.call(this, parser);
- Function_callContext.prototype.copyFrom.call(this, ctx);
- return this;
-}
-
-BINARY_CHECKSUMContext.prototype = Object.create(Function_callContext.prototype);
-BINARY_CHECKSUMContext.prototype.constructor = BINARY_CHECKSUMContext;
-
-TSqlParser.BINARY_CHECKSUMContext = BINARY_CHECKSUMContext;
-
-BINARY_CHECKSUMContext.prototype.BINARY_CHECKSUM = function() {
- return this.getToken(TSqlParser.BINARY_CHECKSUM, 0);
-};
-
-BINARY_CHECKSUMContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-BINARY_CHECKSUMContext.prototype.STAR = function() {
- return this.getToken(TSqlParser.STAR, 0);
-};
-
-BINARY_CHECKSUMContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-BINARY_CHECKSUMContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterBINARY_CHECKSUM(this);
- }
-};
-
-BINARY_CHECKSUMContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitBINARY_CHECKSUM(this);
- }
-};
-
-BINARY_CHECKSUMContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitBINARY_CHECKSUM(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-function IFFContext(parser, ctx) {
- Function_callContext.call(this, parser);
- Function_callContext.prototype.copyFrom.call(this, ctx);
- return this;
-}
-
-IFFContext.prototype = Object.create(Function_callContext.prototype);
-IFFContext.prototype.constructor = IFFContext;
-
-TSqlParser.IFFContext = IFFContext;
-
-IFFContext.prototype.IIF = function() {
- return this.getToken(TSqlParser.IIF, 0);
-};
-
-IFFContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-IFFContext.prototype.search_condition = function() {
- return this.getTypedRuleContext(Search_conditionContext,0);
-};
-
-IFFContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-IFFContext.prototype.expression = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(ExpressionContext);
- } else {
- return this.getTypedRuleContext(ExpressionContext,i);
- }
-};
-
-IFFContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-IFFContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterIFF(this);
- }
-};
-
-IFFContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitIFF(this);
- }
-};
-
-IFFContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitIFF(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-function SYSTEM_USERContext(parser, ctx) {
- Function_callContext.call(this, parser);
- Function_callContext.prototype.copyFrom.call(this, ctx);
- return this;
-}
-
-SYSTEM_USERContext.prototype = Object.create(Function_callContext.prototype);
-SYSTEM_USERContext.prototype.constructor = SYSTEM_USERContext;
-
-TSqlParser.SYSTEM_USERContext = SYSTEM_USERContext;
-
-SYSTEM_USERContext.prototype.SYSTEM_USER = function() {
- return this.getToken(TSqlParser.SYSTEM_USER, 0);
-};
-SYSTEM_USERContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterSYSTEM_USER(this);
- }
-};
-
-SYSTEM_USERContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitSYSTEM_USER(this);
- }
-};
-
-SYSTEM_USERContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitSYSTEM_USER(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-function NULLIFContext(parser, ctx) {
- Function_callContext.call(this, parser);
- Function_callContext.prototype.copyFrom.call(this, ctx);
- return this;
-}
-
-NULLIFContext.prototype = Object.create(Function_callContext.prototype);
-NULLIFContext.prototype.constructor = NULLIFContext;
-
-TSqlParser.NULLIFContext = NULLIFContext;
-
-NULLIFContext.prototype.NULLIF = function() {
- return this.getToken(TSqlParser.NULLIF, 0);
-};
-
-NULLIFContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-NULLIFContext.prototype.expression = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(ExpressionContext);
- } else {
- return this.getTypedRuleContext(ExpressionContext,i);
- }
-};
-
-NULLIFContext.prototype.COMMA = function() {
- return this.getToken(TSqlParser.COMMA, 0);
-};
-
-NULLIFContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-NULLIFContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterNULLIF(this);
- }
-};
-
-NULLIFContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitNULLIF(this);
- }
-};
-
-NULLIFContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitNULLIF(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-function SESSION_USERContext(parser, ctx) {
- Function_callContext.call(this, parser);
- Function_callContext.prototype.copyFrom.call(this, ctx);
- return this;
-}
-
-SESSION_USERContext.prototype = Object.create(Function_callContext.prototype);
-SESSION_USERContext.prototype.constructor = SESSION_USERContext;
-
-TSqlParser.SESSION_USERContext = SESSION_USERContext;
-
-SESSION_USERContext.prototype.SESSION_USER = function() {
- return this.getToken(TSqlParser.SESSION_USER, 0);
-};
-SESSION_USERContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterSESSION_USER(this);
- }
-};
-
-SESSION_USERContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitSESSION_USER(this);
- }
-};
-
-SESSION_USERContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitSESSION_USER(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-function CONVERTContext(parser, ctx) {
- Function_callContext.call(this, parser);
- this.convert_data_type = null; // Data_typeContext;
- this.convert_expression = null; // ExpressionContext;
- this.style = null; // ExpressionContext;
- Function_callContext.prototype.copyFrom.call(this, ctx);
- return this;
-}
-
-CONVERTContext.prototype = Object.create(Function_callContext.prototype);
-CONVERTContext.prototype.constructor = CONVERTContext;
-
-TSqlParser.CONVERTContext = CONVERTContext;
-
-CONVERTContext.prototype.CONVERT = function() {
- return this.getToken(TSqlParser.CONVERT, 0);
-};
-
-CONVERTContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-CONVERTContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-CONVERTContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-CONVERTContext.prototype.data_type = function() {
- return this.getTypedRuleContext(Data_typeContext,0);
-};
-
-CONVERTContext.prototype.expression = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(ExpressionContext);
- } else {
- return this.getTypedRuleContext(ExpressionContext,i);
- }
-};
-CONVERTContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCONVERT(this);
- }
-};
-
-CONVERTContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCONVERT(this);
- }
-};
-
-CONVERTContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCONVERT(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-function XML_DATA_TYPE_FUNCContext(parser, ctx) {
- Function_callContext.call(this, parser);
- Function_callContext.prototype.copyFrom.call(this, ctx);
- return this;
-}
-
-XML_DATA_TYPE_FUNCContext.prototype = Object.create(Function_callContext.prototype);
-XML_DATA_TYPE_FUNCContext.prototype.constructor = XML_DATA_TYPE_FUNCContext;
-
-TSqlParser.XML_DATA_TYPE_FUNCContext = XML_DATA_TYPE_FUNCContext;
-
-XML_DATA_TYPE_FUNCContext.prototype.xml_data_type_methods = function() {
- return this.getTypedRuleContext(Xml_data_type_methodsContext,0);
-};
-XML_DATA_TYPE_FUNCContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterXML_DATA_TYPE_FUNC(this);
- }
-};
-
-XML_DATA_TYPE_FUNCContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitXML_DATA_TYPE_FUNC(this);
- }
-};
-
-XML_DATA_TYPE_FUNCContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitXML_DATA_TYPE_FUNC(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-function COALESCEContext(parser, ctx) {
- Function_callContext.call(this, parser);
- Function_callContext.prototype.copyFrom.call(this, ctx);
- return this;
-}
-
-COALESCEContext.prototype = Object.create(Function_callContext.prototype);
-COALESCEContext.prototype.constructor = COALESCEContext;
-
-TSqlParser.COALESCEContext = COALESCEContext;
-
-COALESCEContext.prototype.COALESCE = function() {
- return this.getToken(TSqlParser.COALESCE, 0);
-};
-
-COALESCEContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-COALESCEContext.prototype.expression_list = function() {
- return this.getTypedRuleContext(Expression_listContext,0);
-};
-
-COALESCEContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-COALESCEContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCOALESCE(this);
- }
-};
-
-COALESCEContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCOALESCE(this);
- }
-};
-
-COALESCEContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCOALESCE(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-function CASTContext(parser, ctx) {
- Function_callContext.call(this, parser);
- Function_callContext.prototype.copyFrom.call(this, ctx);
- return this;
-}
-
-CASTContext.prototype = Object.create(Function_callContext.prototype);
-CASTContext.prototype.constructor = CASTContext;
-
-TSqlParser.CASTContext = CASTContext;
-
-CASTContext.prototype.CAST = function() {
- return this.getToken(TSqlParser.CAST, 0);
-};
-
-CASTContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-CASTContext.prototype.expression = function() {
- return this.getTypedRuleContext(ExpressionContext,0);
-};
-
-CASTContext.prototype.AS = function() {
- return this.getToken(TSqlParser.AS, 0);
-};
-
-CASTContext.prototype.data_type = function() {
- return this.getTypedRuleContext(Data_typeContext,0);
-};
-
-CASTContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-CASTContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCAST(this);
- }
-};
-
-CASTContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCAST(this);
- }
-};
-
-CASTContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCAST(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-function MIN_ACTIVE_ROWVERSIONContext(parser, ctx) {
- Function_callContext.call(this, parser);
- Function_callContext.prototype.copyFrom.call(this, ctx);
- return this;
-}
-
-MIN_ACTIVE_ROWVERSIONContext.prototype = Object.create(Function_callContext.prototype);
-MIN_ACTIVE_ROWVERSIONContext.prototype.constructor = MIN_ACTIVE_ROWVERSIONContext;
-
-TSqlParser.MIN_ACTIVE_ROWVERSIONContext = MIN_ACTIVE_ROWVERSIONContext;
-
-MIN_ACTIVE_ROWVERSIONContext.prototype.MIN_ACTIVE_ROWVERSION = function() {
- return this.getToken(TSqlParser.MIN_ACTIVE_ROWVERSION, 0);
-};
-MIN_ACTIVE_ROWVERSIONContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterMIN_ACTIVE_ROWVERSION(this);
- }
-};
-
-MIN_ACTIVE_ROWVERSIONContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitMIN_ACTIVE_ROWVERSION(this);
- }
-};
-
-MIN_ACTIVE_ROWVERSIONContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitMIN_ACTIVE_ROWVERSION(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-function SCALAR_FUNCTIONContext(parser, ctx) {
- Function_callContext.call(this, parser);
- Function_callContext.prototype.copyFrom.call(this, ctx);
- return this;
-}
-
-SCALAR_FUNCTIONContext.prototype = Object.create(Function_callContext.prototype);
-SCALAR_FUNCTIONContext.prototype.constructor = SCALAR_FUNCTIONContext;
-
-TSqlParser.SCALAR_FUNCTIONContext = SCALAR_FUNCTIONContext;
-
-SCALAR_FUNCTIONContext.prototype.scalar_function_name = function() {
- return this.getTypedRuleContext(Scalar_function_nameContext,0);
-};
-
-SCALAR_FUNCTIONContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-SCALAR_FUNCTIONContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-SCALAR_FUNCTIONContext.prototype.expression_list = function() {
- return this.getTypedRuleContext(Expression_listContext,0);
-};
-SCALAR_FUNCTIONContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterSCALAR_FUNCTION(this);
- }
-};
-
-SCALAR_FUNCTIONContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitSCALAR_FUNCTION(this);
- }
-};
-
-SCALAR_FUNCTIONContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitSCALAR_FUNCTION(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-function DATEPARTContext(parser, ctx) {
- Function_callContext.call(this, parser);
- Function_callContext.prototype.copyFrom.call(this, ctx);
- return this;
-}
-
-DATEPARTContext.prototype = Object.create(Function_callContext.prototype);
-DATEPARTContext.prototype.constructor = DATEPARTContext;
-
-TSqlParser.DATEPARTContext = DATEPARTContext;
-
-DATEPARTContext.prototype.DATEPART = function() {
- return this.getToken(TSqlParser.DATEPART, 0);
-};
-
-DATEPARTContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-DATEPARTContext.prototype.ID = function() {
- return this.getToken(TSqlParser.ID, 0);
-};
-
-DATEPARTContext.prototype.COMMA = function() {
- return this.getToken(TSqlParser.COMMA, 0);
-};
-
-DATEPARTContext.prototype.expression = function() {
- return this.getTypedRuleContext(ExpressionContext,0);
-};
-
-DATEPARTContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-DATEPARTContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDATEPART(this);
- }
-};
-
-DATEPARTContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDATEPART(this);
- }
-};
-
-DATEPARTContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDATEPART(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-function STUFFContext(parser, ctx) {
- Function_callContext.call(this, parser);
- Function_callContext.prototype.copyFrom.call(this, ctx);
- return this;
-}
-
-STUFFContext.prototype = Object.create(Function_callContext.prototype);
-STUFFContext.prototype.constructor = STUFFContext;
-
-TSqlParser.STUFFContext = STUFFContext;
-
-STUFFContext.prototype.STUFF = function() {
- return this.getToken(TSqlParser.STUFF, 0);
-};
-
-STUFFContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-STUFFContext.prototype.expression = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(ExpressionContext);
- } else {
- return this.getTypedRuleContext(ExpressionContext,i);
- }
-};
-
-STUFFContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-STUFFContext.prototype.DECIMAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DECIMAL);
- } else {
- return this.getToken(TSqlParser.DECIMAL, i);
- }
-};
-
-
-STUFFContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-STUFFContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterSTUFF(this);
- }
-};
-
-STUFFContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitSTUFF(this);
- }
-};
-
-STUFFContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitSTUFF(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-function AGGREGATE_WINDOWED_FUNCContext(parser, ctx) {
- Function_callContext.call(this, parser);
- Function_callContext.prototype.copyFrom.call(this, ctx);
- return this;
-}
-
-AGGREGATE_WINDOWED_FUNCContext.prototype = Object.create(Function_callContext.prototype);
-AGGREGATE_WINDOWED_FUNCContext.prototype.constructor = AGGREGATE_WINDOWED_FUNCContext;
-
-TSqlParser.AGGREGATE_WINDOWED_FUNCContext = AGGREGATE_WINDOWED_FUNCContext;
-
-AGGREGATE_WINDOWED_FUNCContext.prototype.aggregate_windowed_function = function() {
- return this.getTypedRuleContext(Aggregate_windowed_functionContext,0);
-};
-AGGREGATE_WINDOWED_FUNCContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAGGREGATE_WINDOWED_FUNC(this);
- }
-};
-
-AGGREGATE_WINDOWED_FUNCContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAGGREGATE_WINDOWED_FUNC(this);
- }
-};
-
-AGGREGATE_WINDOWED_FUNCContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAGGREGATE_WINDOWED_FUNC(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-function IDENTITYContext(parser, ctx) {
- Function_callContext.call(this, parser);
- this.seed = null; // Token;
- this.increment = null; // Token;
- Function_callContext.prototype.copyFrom.call(this, ctx);
- return this;
-}
-
-IDENTITYContext.prototype = Object.create(Function_callContext.prototype);
-IDENTITYContext.prototype.constructor = IDENTITYContext;
-
-TSqlParser.IDENTITYContext = IDENTITYContext;
-
-IDENTITYContext.prototype.IDENTITY = function() {
- return this.getToken(TSqlParser.IDENTITY, 0);
-};
-
-IDENTITYContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-IDENTITYContext.prototype.data_type = function() {
- return this.getTypedRuleContext(Data_typeContext,0);
-};
-
-IDENTITYContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-IDENTITYContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-IDENTITYContext.prototype.DECIMAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DECIMAL);
- } else {
- return this.getToken(TSqlParser.DECIMAL, i);
- }
-};
-
-IDENTITYContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterIDENTITY(this);
- }
-};
-
-IDENTITYContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitIDENTITY(this);
- }
-};
-
-IDENTITYContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitIDENTITY(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-function RANKING_WINDOWED_FUNCContext(parser, ctx) {
- Function_callContext.call(this, parser);
- Function_callContext.prototype.copyFrom.call(this, ctx);
- return this;
-}
-
-RANKING_WINDOWED_FUNCContext.prototype = Object.create(Function_callContext.prototype);
-RANKING_WINDOWED_FUNCContext.prototype.constructor = RANKING_WINDOWED_FUNCContext;
-
-TSqlParser.RANKING_WINDOWED_FUNCContext = RANKING_WINDOWED_FUNCContext;
-
-RANKING_WINDOWED_FUNCContext.prototype.ranking_windowed_function = function() {
- return this.getTypedRuleContext(Ranking_windowed_functionContext,0);
-};
-RANKING_WINDOWED_FUNCContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterRANKING_WINDOWED_FUNC(this);
- }
-};
-
-RANKING_WINDOWED_FUNCContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitRANKING_WINDOWED_FUNC(this);
- }
-};
-
-RANKING_WINDOWED_FUNCContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitRANKING_WINDOWED_FUNC(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-function DATENAMEContext(parser, ctx) {
- Function_callContext.call(this, parser);
- Function_callContext.prototype.copyFrom.call(this, ctx);
- return this;
-}
-
-DATENAMEContext.prototype = Object.create(Function_callContext.prototype);
-DATENAMEContext.prototype.constructor = DATENAMEContext;
-
-TSqlParser.DATENAMEContext = DATENAMEContext;
-
-DATENAMEContext.prototype.DATENAME = function() {
- return this.getToken(TSqlParser.DATENAME, 0);
-};
-
-DATENAMEContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-DATENAMEContext.prototype.ID = function() {
- return this.getToken(TSqlParser.ID, 0);
-};
-
-DATENAMEContext.prototype.COMMA = function() {
- return this.getToken(TSqlParser.COMMA, 0);
-};
-
-DATENAMEContext.prototype.expression = function() {
- return this.getTypedRuleContext(ExpressionContext,0);
-};
-
-DATENAMEContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-DATENAMEContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDATENAME(this);
- }
-};
-
-DATENAMEContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDATENAME(this);
- }
-};
-
-DATENAMEContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDATENAME(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-function GETUTCDATEContext(parser, ctx) {
- Function_callContext.call(this, parser);
- Function_callContext.prototype.copyFrom.call(this, ctx);
- return this;
-}
-
-GETUTCDATEContext.prototype = Object.create(Function_callContext.prototype);
-GETUTCDATEContext.prototype.constructor = GETUTCDATEContext;
-
-TSqlParser.GETUTCDATEContext = GETUTCDATEContext;
-
-GETUTCDATEContext.prototype.GETUTCDATE = function() {
- return this.getToken(TSqlParser.GETUTCDATE, 0);
-};
-
-GETUTCDATEContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-GETUTCDATEContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-GETUTCDATEContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterGETUTCDATE(this);
- }
-};
-
-GETUTCDATEContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitGETUTCDATE(this);
- }
-};
-
-GETUTCDATEContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitGETUTCDATE(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-function ANALYTIC_WINDOWED_FUNCContext(parser, ctx) {
- Function_callContext.call(this, parser);
- Function_callContext.prototype.copyFrom.call(this, ctx);
- return this;
-}
-
-ANALYTIC_WINDOWED_FUNCContext.prototype = Object.create(Function_callContext.prototype);
-ANALYTIC_WINDOWED_FUNCContext.prototype.constructor = ANALYTIC_WINDOWED_FUNCContext;
-
-TSqlParser.ANALYTIC_WINDOWED_FUNCContext = ANALYTIC_WINDOWED_FUNCContext;
-
-ANALYTIC_WINDOWED_FUNCContext.prototype.analytic_windowed_function = function() {
- return this.getTypedRuleContext(Analytic_windowed_functionContext,0);
-};
-ANALYTIC_WINDOWED_FUNCContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterANALYTIC_WINDOWED_FUNC(this);
- }
-};
-
-ANALYTIC_WINDOWED_FUNCContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitANALYTIC_WINDOWED_FUNC(this);
- }
-};
-
-ANALYTIC_WINDOWED_FUNCContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitANALYTIC_WINDOWED_FUNC(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-function ISNULLContext(parser, ctx) {
- Function_callContext.call(this, parser);
- Function_callContext.prototype.copyFrom.call(this, ctx);
- return this;
-}
-
-ISNULLContext.prototype = Object.create(Function_callContext.prototype);
-ISNULLContext.prototype.constructor = ISNULLContext;
-
-TSqlParser.ISNULLContext = ISNULLContext;
-
-ISNULLContext.prototype.ISNULL = function() {
- return this.getToken(TSqlParser.ISNULL, 0);
-};
-
-ISNULLContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-ISNULLContext.prototype.expression = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(ExpressionContext);
- } else {
- return this.getTypedRuleContext(ExpressionContext,i);
- }
-};
-
-ISNULLContext.prototype.COMMA = function() {
- return this.getToken(TSqlParser.COMMA, 0);
-};
-
-ISNULLContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-ISNULLContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterISNULL(this);
- }
-};
-
-ISNULLContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitISNULL(this);
- }
-};
-
-ISNULLContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitISNULL(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-function DATEDIFFContext(parser, ctx) {
- Function_callContext.call(this, parser);
- Function_callContext.prototype.copyFrom.call(this, ctx);
- return this;
-}
-
-DATEDIFFContext.prototype = Object.create(Function_callContext.prototype);
-DATEDIFFContext.prototype.constructor = DATEDIFFContext;
-
-TSqlParser.DATEDIFFContext = DATEDIFFContext;
-
-DATEDIFFContext.prototype.DATEDIFF = function() {
- return this.getToken(TSqlParser.DATEDIFF, 0);
-};
-
-DATEDIFFContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-DATEDIFFContext.prototype.ID = function() {
- return this.getToken(TSqlParser.ID, 0);
-};
-
-DATEDIFFContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-DATEDIFFContext.prototype.expression = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(ExpressionContext);
- } else {
- return this.getTypedRuleContext(ExpressionContext,i);
- }
-};
-
-DATEDIFFContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-DATEDIFFContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDATEDIFF(this);
- }
-};
-
-DATEDIFFContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDATEDIFF(this);
- }
-};
-
-DATEDIFFContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDATEDIFF(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-function GETDATEContext(parser, ctx) {
- Function_callContext.call(this, parser);
- Function_callContext.prototype.copyFrom.call(this, ctx);
- return this;
-}
-
-GETDATEContext.prototype = Object.create(Function_callContext.prototype);
-GETDATEContext.prototype.constructor = GETDATEContext;
-
-TSqlParser.GETDATEContext = GETDATEContext;
-
-GETDATEContext.prototype.GETDATE = function() {
- return this.getToken(TSqlParser.GETDATE, 0);
-};
-
-GETDATEContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-GETDATEContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-GETDATEContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterGETDATE(this);
- }
-};
-
-GETDATEContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitGETDATE(this);
- }
-};
-
-GETDATEContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitGETDATE(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-function STRINGAGGContext(parser, ctx) {
- Function_callContext.call(this, parser);
- this.expr = null; // ExpressionContext;
- this.separator = null; // ExpressionContext;
- Function_callContext.prototype.copyFrom.call(this, ctx);
- return this;
-}
-
-STRINGAGGContext.prototype = Object.create(Function_callContext.prototype);
-STRINGAGGContext.prototype.constructor = STRINGAGGContext;
-
-TSqlParser.STRINGAGGContext = STRINGAGGContext;
-
-STRINGAGGContext.prototype.STRING_AGG = function() {
- return this.getToken(TSqlParser.STRING_AGG, 0);
-};
-
-STRINGAGGContext.prototype.LR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.LR_BRACKET);
- } else {
- return this.getToken(TSqlParser.LR_BRACKET, i);
- }
-};
-
-
-STRINGAGGContext.prototype.COMMA = function() {
- return this.getToken(TSqlParser.COMMA, 0);
-};
-
-STRINGAGGContext.prototype.RR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.RR_BRACKET);
- } else {
- return this.getToken(TSqlParser.RR_BRACKET, i);
- }
-};
-
-
-STRINGAGGContext.prototype.expression = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(ExpressionContext);
- } else {
- return this.getTypedRuleContext(ExpressionContext,i);
- }
-};
-
-STRINGAGGContext.prototype.WITHIN = function() {
- return this.getToken(TSqlParser.WITHIN, 0);
-};
-
-STRINGAGGContext.prototype.GROUP = function() {
- return this.getToken(TSqlParser.GROUP, 0);
-};
-
-STRINGAGGContext.prototype.order_by_clause = function() {
- return this.getTypedRuleContext(Order_by_clauseContext,0);
-};
-STRINGAGGContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterSTRINGAGG(this);
- }
-};
-
-STRINGAGGContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitSTRINGAGG(this);
- }
-};
-
-STRINGAGGContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitSTRINGAGG(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-TSqlParser.Function_callContext = Function_callContext;
-
-TSqlParser.prototype.function_call = function() {
-
- var localctx = new Function_callContext(this, this._ctx, this.state);
- this.enterRule(localctx, 830, TSqlParser.RULE_function_call);
- var _la = 0; // Token type
- try {
- this.state = 9833;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1383,this._ctx);
- switch(la_) {
- case 1:
- localctx = new BINARY_CHECKSUMContext(this, localctx);
- this.enterOuterAlt(localctx, 1);
- this.state = 9687;
- this.match(TSqlParser.BINARY_CHECKSUM);
- this.state = 9688;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9689;
- this.match(TSqlParser.STAR);
- this.state = 9690;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- case 2:
- localctx = new CASTContext(this, localctx);
- this.enterOuterAlt(localctx, 2);
- this.state = 9691;
- this.match(TSqlParser.CAST);
- this.state = 9692;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9693;
- this.expression(0);
- this.state = 9694;
- this.match(TSqlParser.AS);
- this.state = 9695;
- this.data_type();
- this.state = 9696;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- case 3:
- localctx = new CONVERTContext(this, localctx);
- this.enterOuterAlt(localctx, 3);
- this.state = 9698;
- this.match(TSqlParser.CONVERT);
- this.state = 9699;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9700;
- localctx.convert_data_type = this.data_type();
- this.state = 9701;
- this.match(TSqlParser.COMMA);
- this.state = 9702;
- localctx.convert_expression = this.expression(0);
- this.state = 9705;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 9703;
- this.match(TSqlParser.COMMA);
- this.state = 9704;
- localctx.style = this.expression(0);
- }
-
- this.state = 9707;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- case 4:
- localctx = new CHECKSUMContext(this, localctx);
- this.enterOuterAlt(localctx, 4);
- this.state = 9709;
- this.match(TSqlParser.CHECKSUM);
- this.state = 9710;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9711;
- this.match(TSqlParser.STAR);
- this.state = 9712;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- case 5:
- localctx = new COALESCEContext(this, localctx);
- this.enterOuterAlt(localctx, 5);
- this.state = 9713;
- this.match(TSqlParser.COALESCE);
- this.state = 9714;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9715;
- this.expression_list();
- this.state = 9716;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- case 6:
- localctx = new CURRENT_TIMESTAMPContext(this, localctx);
- this.enterOuterAlt(localctx, 6);
- this.state = 9718;
- this.match(TSqlParser.CURRENT_TIMESTAMP);
- break;
-
- case 7:
- localctx = new CURRENT_USERContext(this, localctx);
- this.enterOuterAlt(localctx, 7);
- this.state = 9719;
- this.match(TSqlParser.CURRENT_USER);
- break;
-
- case 8:
- localctx = new DATEADDContext(this, localctx);
- this.enterOuterAlt(localctx, 8);
- this.state = 9720;
- this.match(TSqlParser.DATEADD);
- this.state = 9721;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9722;
- this.match(TSqlParser.ID);
- this.state = 9723;
- this.match(TSqlParser.COMMA);
- this.state = 9724;
- this.expression(0);
- this.state = 9725;
- this.match(TSqlParser.COMMA);
- this.state = 9726;
- this.expression(0);
- this.state = 9727;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- case 9:
- localctx = new DATEDIFFContext(this, localctx);
- this.enterOuterAlt(localctx, 9);
- this.state = 9729;
- this.match(TSqlParser.DATEDIFF);
- this.state = 9730;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9731;
- this.match(TSqlParser.ID);
- this.state = 9732;
- this.match(TSqlParser.COMMA);
- this.state = 9733;
- this.expression(0);
- this.state = 9734;
- this.match(TSqlParser.COMMA);
- this.state = 9735;
- this.expression(0);
- this.state = 9736;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- case 10:
- localctx = new DATENAMEContext(this, localctx);
- this.enterOuterAlt(localctx, 10);
- this.state = 9738;
- this.match(TSqlParser.DATENAME);
- this.state = 9739;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9740;
- this.match(TSqlParser.ID);
- this.state = 9741;
- this.match(TSqlParser.COMMA);
- this.state = 9742;
- this.expression(0);
- this.state = 9743;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- case 11:
- localctx = new DATEPARTContext(this, localctx);
- this.enterOuterAlt(localctx, 11);
- this.state = 9745;
- this.match(TSqlParser.DATEPART);
- this.state = 9746;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9747;
- this.match(TSqlParser.ID);
- this.state = 9748;
- this.match(TSqlParser.COMMA);
- this.state = 9749;
- this.expression(0);
- this.state = 9750;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- case 12:
- localctx = new GETDATEContext(this, localctx);
- this.enterOuterAlt(localctx, 12);
- this.state = 9752;
- this.match(TSqlParser.GETDATE);
- this.state = 9753;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9754;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- case 13:
- localctx = new GETUTCDATEContext(this, localctx);
- this.enterOuterAlt(localctx, 13);
- this.state = 9755;
- this.match(TSqlParser.GETUTCDATE);
- this.state = 9756;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9757;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- case 14:
- localctx = new IDENTITYContext(this, localctx);
- this.enterOuterAlt(localctx, 14);
- this.state = 9758;
- this.match(TSqlParser.IDENTITY);
- this.state = 9759;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9760;
- this.data_type();
- this.state = 9763;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1379,this._ctx);
- if(la_===1) {
- this.state = 9761;
- this.match(TSqlParser.COMMA);
- this.state = 9762;
- localctx.seed = this.match(TSqlParser.DECIMAL);
-
- }
- this.state = 9767;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 9765;
- this.match(TSqlParser.COMMA);
- this.state = 9766;
- localctx.increment = this.match(TSqlParser.DECIMAL);
- }
-
- this.state = 9769;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- case 15:
- localctx = new MIN_ACTIVE_ROWVERSIONContext(this, localctx);
- this.enterOuterAlt(localctx, 15);
- this.state = 9771;
- this.match(TSqlParser.MIN_ACTIVE_ROWVERSION);
- break;
-
- case 16:
- localctx = new NULLIFContext(this, localctx);
- this.enterOuterAlt(localctx, 16);
- this.state = 9772;
- this.match(TSqlParser.NULLIF);
- this.state = 9773;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9774;
- this.expression(0);
- this.state = 9775;
- this.match(TSqlParser.COMMA);
- this.state = 9776;
- this.expression(0);
- this.state = 9777;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- case 17:
- localctx = new STUFFContext(this, localctx);
- this.enterOuterAlt(localctx, 17);
- this.state = 9779;
- this.match(TSqlParser.STUFF);
- this.state = 9780;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9781;
- this.expression(0);
- this.state = 9782;
- this.match(TSqlParser.COMMA);
- this.state = 9783;
- this.match(TSqlParser.DECIMAL);
- this.state = 9784;
- this.match(TSqlParser.COMMA);
- this.state = 9785;
- this.match(TSqlParser.DECIMAL);
- this.state = 9786;
- this.match(TSqlParser.COMMA);
- this.state = 9787;
- this.expression(0);
- this.state = 9788;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- case 18:
- localctx = new SESSION_USERContext(this, localctx);
- this.enterOuterAlt(localctx, 18);
- this.state = 9790;
- this.match(TSqlParser.SESSION_USER);
- break;
-
- case 19:
- localctx = new SYSTEM_USERContext(this, localctx);
- this.enterOuterAlt(localctx, 19);
- this.state = 9791;
- this.match(TSqlParser.SYSTEM_USER);
- break;
-
- case 20:
- localctx = new ISNULLContext(this, localctx);
- this.enterOuterAlt(localctx, 20);
- this.state = 9792;
- this.match(TSqlParser.ISNULL);
- this.state = 9793;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9794;
- this.expression(0);
- this.state = 9795;
- this.match(TSqlParser.COMMA);
- this.state = 9796;
- this.expression(0);
- this.state = 9797;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- case 21:
- localctx = new XML_DATA_TYPE_FUNCContext(this, localctx);
- this.enterOuterAlt(localctx, 21);
- this.state = 9799;
- this.xml_data_type_methods();
- break;
-
- case 22:
- localctx = new IFFContext(this, localctx);
- this.enterOuterAlt(localctx, 22);
- this.state = 9800;
- this.match(TSqlParser.IIF);
- this.state = 9801;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9802;
- this.search_condition();
- this.state = 9803;
- this.match(TSqlParser.COMMA);
- this.state = 9804;
- this.expression(0);
- this.state = 9805;
- this.match(TSqlParser.COMMA);
- this.state = 9806;
- this.expression(0);
- this.state = 9807;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- case 23:
- localctx = new RANKING_WINDOWED_FUNCContext(this, localctx);
- this.enterOuterAlt(localctx, 23);
- this.state = 9809;
- this.ranking_windowed_function();
- break;
-
- case 24:
- localctx = new AGGREGATE_WINDOWED_FUNCContext(this, localctx);
- this.enterOuterAlt(localctx, 24);
- this.state = 9810;
- this.aggregate_windowed_function();
- break;
-
- case 25:
- localctx = new ANALYTIC_WINDOWED_FUNCContext(this, localctx);
- this.enterOuterAlt(localctx, 25);
- this.state = 9811;
- this.analytic_windowed_function();
- break;
-
- case 26:
- localctx = new SCALAR_FUNCTIONContext(this, localctx);
- this.enterOuterAlt(localctx, 26);
- this.state = 9812;
- this.scalar_function_name();
- this.state = 9813;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9815;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(((((_la - 30)) & ~0x1f) == 0 && ((1 << (_la - 30)) & ((1 << (TSqlParser.BLOCKING_HIERARCHY - 30)) | (1 << (TSqlParser.CALLED - 30)) | (1 << (TSqlParser.CASE - 30)) | (1 << (TSqlParser.COALESCE - 30)))) !== 0) || ((((_la - 69)) & ~0x1f) == 0 && ((1 << (_la - 69)) & ((1 << (TSqlParser.CONVERT - 69)) | (1 << (TSqlParser.CURRENT_TIMESTAMP - 69)) | (1 << (TSqlParser.CURRENT_USER - 69)) | (1 << (TSqlParser.DATA_COMPRESSION - 69)) | (1 << (TSqlParser.DEFAULT - 69)))) !== 0) || ((((_la - 112)) & ~0x1f) == 0 && ((1 << (_la - 112)) & ((1 << (TSqlParser.EVENTDATA - 112)) | (1 << (TSqlParser.FILENAME - 112)) | (1 << (TSqlParser.FILLFACTOR - 112)) | (1 << (TSqlParser.FORCESEEK - 112)))) !== 0) || ((((_la - 148)) & ~0x1f) == 0 && ((1 << (_la - 148)) & ((1 << (TSqlParser.IDENTITY - 148)) | (1 << (TSqlParser.IIF - 148)) | (1 << (TSqlParser.INIT - 148)) | (1 << (TSqlParser.ISNULL - 148)) | (1 << (TSqlParser.KEY - 148)) | (1 << (TSqlParser.LEFT - 148)))) !== 0) || _la===TSqlParser.MASTER || _la===TSqlParser.MAX_MEMORY || ((((_la - 221)) & ~0x1f) == 0 && ((1 << (_la - 221)) & ((1 << (TSqlParser.NULL - 221)) | (1 << (TSqlParser.NULLIF - 221)) | (1 << (TSqlParser.OFFSETS - 221)) | (1 << (TSqlParser.OVER - 221)) | (1 << (TSqlParser.PAGE - 221)))) !== 0) || ((((_la - 259)) & ~0x1f) == 0 && ((1 << (_la - 259)) & ((1 << (TSqlParser.PUBLIC - 259)) | (1 << (TSqlParser.R - 259)) | (1 << (TSqlParser.RAW - 259)) | (1 << (TSqlParser.RETURN - 259)) | (1 << (TSqlParser.RETURNS - 259)) | (1 << (TSqlParser.RIGHT - 259)) | (1 << (TSqlParser.ROWCOUNT - 259)))) !== 0) || ((((_la - 295)) & ~0x1f) == 0 && ((1 << (_la - 295)) & ((1 << (TSqlParser.SAFETY - 295)) | (1 << (TSqlParser.SERVER - 295)) | (1 << (TSqlParser.SESSION_USER - 295)) | (1 << (TSqlParser.SID - 295)) | (1 << (TSqlParser.SOURCE - 295)) | (1 << (TSqlParser.SPLIT - 295)))) !== 0) || ((((_la - 327)) & ~0x1f) == 0 && ((1 << (_la - 327)) & ((1 << (TSqlParser.STATE - 327)) | (1 << (TSqlParser.START - 327)) | (1 << (TSqlParser.SYSTEM_USER - 327)) | (1 << (TSqlParser.TARGET - 327)))) !== 0) || ((((_la - 380)) & ~0x1f) == 0 && ((1 << (_la - 380)) & ((1 << (TSqlParser.ABSOLUTE - 380)) | (1 << (TSqlParser.ACCENT_SENSITIVITY - 380)) | (1 << (TSqlParser.ACTION - 380)) | (1 << (TSqlParser.ACTIVATION - 380)) | (1 << (TSqlParser.ACTIVE - 380)) | (1 << (TSqlParser.ADDRESS - 380)) | (1 << (TSqlParser.AES_128 - 380)) | (1 << (TSqlParser.AES_192 - 380)) | (1 << (TSqlParser.AES_256 - 380)) | (1 << (TSqlParser.AFFINITY - 380)) | (1 << (TSqlParser.AFTER - 380)) | (1 << (TSqlParser.AGGREGATE - 380)) | (1 << (TSqlParser.ALGORITHM - 380)) | (1 << (TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS - 380)) | (1 << (TSqlParser.ALLOW_SNAPSHOT_ISOLATION - 380)) | (1 << (TSqlParser.ALLOWED - 380)) | (1 << (TSqlParser.ANSI_NULL_DEFAULT - 380)) | (1 << (TSqlParser.ANSI_NULLS - 380)) | (1 << (TSqlParser.ANSI_PADDING - 380)) | (1 << (TSqlParser.ANSI_WARNINGS - 380)) | (1 << (TSqlParser.APPLICATION_LOG - 380)) | (1 << (TSqlParser.APPLY - 380)) | (1 << (TSqlParser.ARITHABORT - 380)) | (1 << (TSqlParser.ASSEMBLY - 380)) | (1 << (TSqlParser.AUDIT - 380)) | (1 << (TSqlParser.AUDIT_GUID - 380)) | (1 << (TSqlParser.AUTO - 380)) | (1 << (TSqlParser.AUTO_CLEANUP - 380)) | (1 << (TSqlParser.AUTO_CLOSE - 380)) | (1 << (TSqlParser.AUTO_CREATE_STATISTICS - 380)) | (1 << (TSqlParser.AUTO_SHRINK - 380)) | (1 << (TSqlParser.AUTO_UPDATE_STATISTICS - 380)))) !== 0) || ((((_la - 412)) & ~0x1f) == 0 && ((1 << (_la - 412)) & ((1 << (TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC - 412)) | (1 << (TSqlParser.AVAILABILITY - 412)) | (1 << (TSqlParser.AVG - 412)) | (1 << (TSqlParser.BACKUP_PRIORITY - 412)) | (1 << (TSqlParser.BEGIN_DIALOG - 412)) | (1 << (TSqlParser.BIGINT - 412)) | (1 << (TSqlParser.BINARY_BASE64 - 412)) | (1 << (TSqlParser.BINARY_CHECKSUM - 412)) | (1 << (TSqlParser.BINDING - 412)) | (1 << (TSqlParser.BLOB_STORAGE - 412)) | (1 << (TSqlParser.BROKER - 412)) | (1 << (TSqlParser.BROKER_INSTANCE - 412)) | (1 << (TSqlParser.BULK_LOGGED - 412)) | (1 << (TSqlParser.CALLER - 412)) | (1 << (TSqlParser.CAP_CPU_PERCENT - 412)) | (1 << (TSqlParser.CAST - 412)) | (1 << (TSqlParser.CATALOG - 412)) | (1 << (TSqlParser.CATCH - 412)) | (1 << (TSqlParser.CHANGE_RETENTION - 412)) | (1 << (TSqlParser.CHANGE_TRACKING - 412)) | (1 << (TSqlParser.CHECKSUM - 412)) | (1 << (TSqlParser.CHECKSUM_AGG - 412)) | (1 << (TSqlParser.CLEANUP - 412)) | (1 << (TSqlParser.COLLECTION - 412)) | (1 << (TSqlParser.COLUMN_MASTER_KEY - 412)) | (1 << (TSqlParser.COMMITTED - 412)) | (1 << (TSqlParser.COMPATIBILITY_LEVEL - 412)) | (1 << (TSqlParser.CONCAT - 412)) | (1 << (TSqlParser.CONCAT_NULL_YIELDS_NULL - 412)) | (1 << (TSqlParser.CONTENT - 412)) | (1 << (TSqlParser.CONTROL - 412)) | (1 << (TSqlParser.COOKIE - 412)))) !== 0) || ((((_la - 444)) & ~0x1f) == 0 && ((1 << (_la - 444)) & ((1 << (TSqlParser.COUNT - 444)) | (1 << (TSqlParser.COUNT_BIG - 444)) | (1 << (TSqlParser.COUNTER - 444)) | (1 << (TSqlParser.CPU - 444)) | (1 << (TSqlParser.CREATE_NEW - 444)) | (1 << (TSqlParser.CREATION_DISPOSITION - 444)) | (1 << (TSqlParser.CREDENTIAL - 444)) | (1 << (TSqlParser.CRYPTOGRAPHIC - 444)) | (1 << (TSqlParser.CURSOR_CLOSE_ON_COMMIT - 444)) | (1 << (TSqlParser.CURSOR_DEFAULT - 444)) | (1 << (TSqlParser.DATA - 444)) | (1 << (TSqlParser.DATE_CORRELATION_OPTIMIZATION - 444)) | (1 << (TSqlParser.DATEADD - 444)) | (1 << (TSqlParser.DATEDIFF - 444)) | (1 << (TSqlParser.DATENAME - 444)) | (1 << (TSqlParser.DATEPART - 444)) | (1 << (TSqlParser.DAYS - 444)) | (1 << (TSqlParser.DB_CHAINING - 444)) | (1 << (TSqlParser.DB_FAILOVER - 444)) | (1 << (TSqlParser.DECRYPTION - 444)) | (1 << (TSqlParser.DEFAULT_DOUBLE_QUOTE - 444)) | (1 << (TSqlParser.DEFAULT_FULLTEXT_LANGUAGE - 444)) | (1 << (TSqlParser.DEFAULT_LANGUAGE - 444)) | (1 << (TSqlParser.DELAY - 444)) | (1 << (TSqlParser.DELAYED_DURABILITY - 444)) | (1 << (TSqlParser.DELETED - 444)) | (1 << (TSqlParser.DENSE_RANK - 444)) | (1 << (TSqlParser.DEPENDENTS - 444)) | (1 << (TSqlParser.DES - 444)) | (1 << (TSqlParser.DESCRIPTION - 444)) | (1 << (TSqlParser.DESX - 444)) | (1 << (TSqlParser.DHCP - 444)))) !== 0) || ((((_la - 476)) & ~0x1f) == 0 && ((1 << (_la - 476)) & ((1 << (TSqlParser.DIALOG - 476)) | (1 << (TSqlParser.DIRECTORY_NAME - 476)) | (1 << (TSqlParser.DISABLE - 476)) | (1 << (TSqlParser.DISABLE_BROKER - 476)) | (1 << (TSqlParser.DISABLED - 476)) | (1 << (TSqlParser.DISK_DRIVE - 476)) | (1 << (TSqlParser.DOCUMENT - 476)) | (1 << (TSqlParser.DYNAMIC - 476)) | (1 << (TSqlParser.EMERGENCY - 476)) | (1 << (TSqlParser.EMPTY - 476)) | (1 << (TSqlParser.ENABLE - 476)) | (1 << (TSqlParser.ENABLE_BROKER - 476)) | (1 << (TSqlParser.ENCRYPTED_VALUE - 476)) | (1 << (TSqlParser.ENCRYPTION - 476)) | (1 << (TSqlParser.ENDPOINT_URL - 476)) | (1 << (TSqlParser.ERROR_BROKER_CONVERSATIONS - 476)) | (1 << (TSqlParser.EXCLUSIVE - 476)) | (1 << (TSqlParser.EXECUTABLE - 476)) | (1 << (TSqlParser.EXIST - 476)) | (1 << (TSqlParser.EXPAND - 476)) | (1 << (TSqlParser.EXPIRY_DATE - 476)) | (1 << (TSqlParser.EXPLICIT - 476)) | (1 << (TSqlParser.FAIL_OPERATION - 476)) | (1 << (TSqlParser.FAILOVER_MODE - 476)) | (1 << (TSqlParser.FAILURE - 476)) | (1 << (TSqlParser.FAILURE_CONDITION_LEVEL - 476)) | (1 << (TSqlParser.FAST - 476)) | (1 << (TSqlParser.FAST_FORWARD - 476)) | (1 << (TSqlParser.FILEGROUP - 476)) | (1 << (TSqlParser.FILEGROWTH - 476)) | (1 << (TSqlParser.FILEPATH - 476)))) !== 0) || ((((_la - 508)) & ~0x1f) == 0 && ((1 << (_la - 508)) & ((1 << (TSqlParser.FILESTREAM - 508)) | (1 << (TSqlParser.FILTER - 508)) | (1 << (TSqlParser.FIRST - 508)) | (1 << (TSqlParser.FIRST_VALUE - 508)) | (1 << (TSqlParser.FOLLOWING - 508)) | (1 << (TSqlParser.FORCE - 508)) | (1 << (TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS - 508)) | (1 << (TSqlParser.FORCED - 508)) | (1 << (TSqlParser.FORMAT - 508)) | (1 << (TSqlParser.FORWARD_ONLY - 508)) | (1 << (TSqlParser.FULLSCAN - 508)) | (1 << (TSqlParser.FULLTEXT - 508)) | (1 << (TSqlParser.GB - 508)) | (1 << (TSqlParser.GETDATE - 508)) | (1 << (TSqlParser.GETUTCDATE - 508)) | (1 << (TSqlParser.GLOBAL - 508)) | (1 << (TSqlParser.GO - 508)) | (1 << (TSqlParser.GROUP_MAX_REQUESTS - 508)) | (1 << (TSqlParser.GROUPING - 508)) | (1 << (TSqlParser.GROUPING_ID - 508)) | (1 << (TSqlParser.HADR - 508)) | (1 << (TSqlParser.HASH - 508)) | (1 << (TSqlParser.HEALTH_CHECK_TIMEOUT - 508)) | (1 << (TSqlParser.HIGH - 508)) | (1 << (TSqlParser.HONOR_BROKER_PRIORITY - 508)) | (1 << (TSqlParser.HOURS - 508)) | (1 << (TSqlParser.IDENTITY_VALUE - 508)) | (1 << (TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX - 508)) | (1 << (TSqlParser.IMMEDIATE - 508)) | (1 << (TSqlParser.IMPERSONATE - 508)) | (1 << (TSqlParser.IMPORTANCE - 508)))) !== 0) || ((((_la - 540)) & ~0x1f) == 0 && ((1 << (_la - 540)) & ((1 << (TSqlParser.INCREMENTAL - 540)) | (1 << (TSqlParser.INITIATOR - 540)) | (1 << (TSqlParser.INPUT - 540)) | (1 << (TSqlParser.INSENSITIVE - 540)) | (1 << (TSqlParser.INSERTED - 540)) | (1 << (TSqlParser.INT - 540)) | (1 << (TSqlParser.IP - 540)) | (1 << (TSqlParser.ISOLATION - 540)) | (1 << (TSqlParser.KB - 540)) | (1 << (TSqlParser.KEEP - 540)) | (1 << (TSqlParser.KEEPFIXED - 540)) | (1 << (TSqlParser.KEY_SOURCE - 540)) | (1 << (TSqlParser.KEYS - 540)) | (1 << (TSqlParser.KEYSET - 540)) | (1 << (TSqlParser.LAG - 540)) | (1 << (TSqlParser.LAST - 540)) | (1 << (TSqlParser.LAST_VALUE - 540)) | (1 << (TSqlParser.LEAD - 540)) | (1 << (TSqlParser.LEVEL - 540)) | (1 << (TSqlParser.LIST - 540)) | (1 << (TSqlParser.LISTENER - 540)) | (1 << (TSqlParser.LISTENER_URL - 540)) | (1 << (TSqlParser.LOB_COMPACTION - 540)) | (1 << (TSqlParser.LOCAL - 540)) | (1 << (TSqlParser.LOCATION - 540)) | (1 << (TSqlParser.LOCK - 540)) | (1 << (TSqlParser.LOCK_ESCALATION - 540)) | (1 << (TSqlParser.LOGIN - 540)) | (1 << (TSqlParser.LOOP - 540)) | (1 << (TSqlParser.LOW - 540)))) !== 0) || ((((_la - 572)) & ~0x1f) == 0 && ((1 << (_la - 572)) & ((1 << (TSqlParser.MANUAL - 572)) | (1 << (TSqlParser.MARK - 572)) | (1 << (TSqlParser.MATERIALIZED - 572)) | (1 << (TSqlParser.MAX - 572)) | (1 << (TSqlParser.MAX_CPU_PERCENT - 572)) | (1 << (TSqlParser.MAX_DOP - 572)) | (1 << (TSqlParser.MAX_FILES - 572)) | (1 << (TSqlParser.MAX_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MAX_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MAX_PROCESSES - 572)) | (1 << (TSqlParser.MAX_QUEUE_READERS - 572)) | (1 << (TSqlParser.MAX_ROLLOVER_FILES - 572)) | (1 << (TSqlParser.MAXDOP - 572)) | (1 << (TSqlParser.MAXRECURSION - 572)) | (1 << (TSqlParser.MAXSIZE - 572)) | (1 << (TSqlParser.MB - 572)) | (1 << (TSqlParser.MEDIUM - 572)) | (1 << (TSqlParser.MEMORY_OPTIMIZED_DATA - 572)) | (1 << (TSqlParser.MESSAGE - 572)) | (1 << (TSqlParser.MIN - 572)) | (1 << (TSqlParser.MIN_ACTIVE_ROWVERSION - 572)) | (1 << (TSqlParser.MIN_CPU_PERCENT - 572)) | (1 << (TSqlParser.MIN_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MIN_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MINUTES - 572)) | (1 << (TSqlParser.MIRROR_ADDRESS - 572)) | (1 << (TSqlParser.MIXED_PAGE_ALLOCATION - 572)) | (1 << (TSqlParser.MODE - 572)) | (1 << (TSqlParser.MODIFY - 572)) | (1 << (TSqlParser.MOVE - 572)) | (1 << (TSqlParser.MULTI_USER - 572)) | (1 << (TSqlParser.NAME - 572)))) !== 0) || ((((_la - 604)) & ~0x1f) == 0 && ((1 << (_la - 604)) & ((1 << (TSqlParser.NESTED_TRIGGERS - 604)) | (1 << (TSqlParser.NEW_ACCOUNT - 604)) | (1 << (TSqlParser.NEW_BROKER - 604)) | (1 << (TSqlParser.NEW_PASSWORD - 604)) | (1 << (TSqlParser.NEXT - 604)) | (1 << (TSqlParser.NO - 604)) | (1 << (TSqlParser.NO_TRUNCATE - 604)) | (1 << (TSqlParser.NO_WAIT - 604)) | (1 << (TSqlParser.NOCOUNT - 604)) | (1 << (TSqlParser.NODES - 604)) | (1 << (TSqlParser.NOEXPAND - 604)) | (1 << (TSqlParser.NON_TRANSACTED_ACCESS - 604)) | (1 << (TSqlParser.NORECOMPUTE - 604)) | (1 << (TSqlParser.NORECOVERY - 604)) | (1 << (TSqlParser.NOWAIT - 604)) | (1 << (TSqlParser.NTILE - 604)) | (1 << (TSqlParser.NUMANODE - 604)) | (1 << (TSqlParser.NUMBER - 604)) | (1 << (TSqlParser.NUMERIC_ROUNDABORT - 604)) | (1 << (TSqlParser.OBJECT - 604)) | (1 << (TSqlParser.OFFLINE - 604)) | (1 << (TSqlParser.OFFSET - 604)) | (1 << (TSqlParser.OLD_ACCOUNT - 604)) | (1 << (TSqlParser.ONLINE - 604)) | (1 << (TSqlParser.ONLY - 604)) | (1 << (TSqlParser.OPEN_EXISTING - 604)) | (1 << (TSqlParser.OPTIMISTIC - 604)) | (1 << (TSqlParser.OPTIMIZE - 604)) | (1 << (TSqlParser.OUT - 604)) | (1 << (TSqlParser.OUTPUT - 604)) | (1 << (TSqlParser.OWNER - 604)))) !== 0) || ((((_la - 636)) & ~0x1f) == 0 && ((1 << (_la - 636)) & ((1 << (TSqlParser.PAGE_VERIFY - 636)) | (1 << (TSqlParser.PARAMETERIZATION - 636)) | (1 << (TSqlParser.PARTITION - 636)) | (1 << (TSqlParser.PARTITIONS - 636)) | (1 << (TSqlParser.PARTNER - 636)) | (1 << (TSqlParser.PATH - 636)) | (1 << (TSqlParser.POISON_MESSAGE_HANDLING - 636)) | (1 << (TSqlParser.POOL - 636)) | (1 << (TSqlParser.PORT - 636)) | (1 << (TSqlParser.PRECEDING - 636)) | (1 << (TSqlParser.PRIMARY_ROLE - 636)) | (1 << (TSqlParser.PRIOR - 636)) | (1 << (TSqlParser.PRIORITY - 636)) | (1 << (TSqlParser.PRIORITY_LEVEL - 636)) | (1 << (TSqlParser.PRIVATE - 636)) | (1 << (TSqlParser.PRIVATE_KEY - 636)) | (1 << (TSqlParser.PRIVILEGES - 636)) | (1 << (TSqlParser.PROCEDURE_NAME - 636)) | (1 << (TSqlParser.PROPERTY - 636)) | (1 << (TSqlParser.PROVIDER - 636)) | (1 << (TSqlParser.PROVIDER_KEY_NAME - 636)) | (1 << (TSqlParser.QUERY - 636)) | (1 << (TSqlParser.QUEUE - 636)) | (1 << (TSqlParser.QUEUE_DELAY - 636)) | (1 << (TSqlParser.QUOTED_IDENTIFIER - 636)) | (1 << (TSqlParser.RANGE - 636)) | (1 << (TSqlParser.RANK - 636)) | (1 << (TSqlParser.RC2 - 636)) | (1 << (TSqlParser.RC4 - 636)) | (1 << (TSqlParser.RC4_128 - 636)) | (1 << (TSqlParser.READ_COMMITTED_SNAPSHOT - 636)) | (1 << (TSqlParser.READ_ONLY - 636)))) !== 0) || ((((_la - 668)) & ~0x1f) == 0 && ((1 << (_la - 668)) & ((1 << (TSqlParser.READ_ONLY_ROUTING_LIST - 668)) | (1 << (TSqlParser.READ_WRITE - 668)) | (1 << (TSqlParser.READONLY - 668)) | (1 << (TSqlParser.REBUILD - 668)) | (1 << (TSqlParser.RECEIVE - 668)) | (1 << (TSqlParser.RECOMPILE - 668)) | (1 << (TSqlParser.RECOVERY - 668)) | (1 << (TSqlParser.RECURSIVE_TRIGGERS - 668)) | (1 << (TSqlParser.RELATIVE - 668)) | (1 << (TSqlParser.REMOTE - 668)) | (1 << (TSqlParser.REMOTE_SERVICE_NAME - 668)) | (1 << (TSqlParser.REMOVE - 668)) | (1 << (TSqlParser.REORGANIZE - 668)) | (1 << (TSqlParser.REPEATABLE - 668)) | (1 << (TSqlParser.REPLICA - 668)) | (1 << (TSqlParser.REQUEST_MAX_CPU_TIME_SEC - 668)) | (1 << (TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT - 668)) | (1 << (TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC - 668)) | (1 << (TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT - 668)) | (1 << (TSqlParser.RESERVE_DISK_SPACE - 668)) | (1 << (TSqlParser.RESOURCE - 668)) | (1 << (TSqlParser.RESOURCE_MANAGER_LOCATION - 668)) | (1 << (TSqlParser.RESTRICTED_USER - 668)) | (1 << (TSqlParser.RETENTION - 668)) | (1 << (TSqlParser.ROBUST - 668)) | (1 << (TSqlParser.ROOT - 668)) | (1 << (TSqlParser.ROUTE - 668)) | (1 << (TSqlParser.ROW - 668)) | (1 << (TSqlParser.ROW_NUMBER - 668)) | (1 << (TSqlParser.ROWGUID - 668)) | (1 << (TSqlParser.ROWS - 668)) | (1 << (TSqlParser.SAMPLE - 668)))) !== 0) || ((((_la - 700)) & ~0x1f) == 0 && ((1 << (_la - 700)) & ((1 << (TSqlParser.SCHEMABINDING - 700)) | (1 << (TSqlParser.SCOPED - 700)) | (1 << (TSqlParser.SCROLL - 700)) | (1 << (TSqlParser.SCROLL_LOCKS - 700)) | (1 << (TSqlParser.SEARCH - 700)) | (1 << (TSqlParser.SECONDARY - 700)) | (1 << (TSqlParser.SECONDARY_ONLY - 700)) | (1 << (TSqlParser.SECONDARY_ROLE - 700)) | (1 << (TSqlParser.SECONDS - 700)) | (1 << (TSqlParser.SECRET - 700)) | (1 << (TSqlParser.SECURITY - 700)) | (1 << (TSqlParser.SECURITY_LOG - 700)) | (1 << (TSqlParser.SEEDING_MODE - 700)) | (1 << (TSqlParser.SELF - 700)) | (1 << (TSqlParser.SEMI_SENSITIVE - 700)) | (1 << (TSqlParser.SEND - 700)) | (1 << (TSqlParser.SENT - 700)) | (1 << (TSqlParser.SEQUENCE - 700)) | (1 << (TSqlParser.SERIALIZABLE - 700)) | (1 << (TSqlParser.SESSION_TIMEOUT - 700)) | (1 << (TSqlParser.SETERROR - 700)) | (1 << (TSqlParser.SHARE - 700)) | (1 << (TSqlParser.SHOWPLAN - 700)) | (1 << (TSqlParser.SIGNATURE - 700)) | (1 << (TSqlParser.SIMPLE - 700)) | (1 << (TSqlParser.SINGLE_USER - 700)) | (1 << (TSqlParser.SIZE - 700)) | (1 << (TSqlParser.SMALLINT - 700)) | (1 << (TSqlParser.SNAPSHOT - 700)) | (1 << (TSqlParser.SPATIAL_WINDOW_MAX_CELLS - 700)) | (1 << (TSqlParser.STANDBY - 700)) | (1 << (TSqlParser.START_DATE - 700)))) !== 0) || ((((_la - 732)) & ~0x1f) == 0 && ((1 << (_la - 732)) & ((1 << (TSqlParser.STATIC - 732)) | (1 << (TSqlParser.STATS_STREAM - 732)) | (1 << (TSqlParser.STATUS - 732)) | (1 << (TSqlParser.STDEV - 732)) | (1 << (TSqlParser.STDEVP - 732)) | (1 << (TSqlParser.STOPLIST - 732)) | (1 << (TSqlParser.STRING_AGG - 732)) | (1 << (TSqlParser.STUFF - 732)) | (1 << (TSqlParser.SUBJECT - 732)) | (1 << (TSqlParser.SUM - 732)) | (1 << (TSqlParser.SUSPEND - 732)) | (1 << (TSqlParser.SYMMETRIC - 732)) | (1 << (TSqlParser.SYNCHRONOUS_COMMIT - 732)) | (1 << (TSqlParser.SYNONYM - 732)) | (1 << (TSqlParser.SYSTEM - 732)) | (1 << (TSqlParser.TAKE - 732)) | (1 << (TSqlParser.TARGET_RECOVERY_TIME - 732)) | (1 << (TSqlParser.TB - 732)) | (1 << (TSqlParser.TEXTIMAGE_ON - 732)) | (1 << (TSqlParser.THROW - 732)) | (1 << (TSqlParser.TIES - 732)) | (1 << (TSqlParser.TIME - 732)) | (1 << (TSqlParser.TIMEOUT - 732)) | (1 << (TSqlParser.TIMER - 732)) | (1 << (TSqlParser.TINYINT - 732)) | (1 << (TSqlParser.TORN_PAGE_DETECTION - 732)) | (1 << (TSqlParser.TRANSFORM_NOISE_WORDS - 732)) | (1 << (TSqlParser.TRIPLE_DES - 732)) | (1 << (TSqlParser.TRIPLE_DES_3KEY - 732)) | (1 << (TSqlParser.TRUSTWORTHY - 732)))) !== 0) || ((((_la - 764)) & ~0x1f) == 0 && ((1 << (_la - 764)) & ((1 << (TSqlParser.TRY - 764)) | (1 << (TSqlParser.TSQL - 764)) | (1 << (TSqlParser.TWO_DIGIT_YEAR_CUTOFF - 764)) | (1 << (TSqlParser.TYPE - 764)) | (1 << (TSqlParser.TYPE_WARNING - 764)) | (1 << (TSqlParser.UNBOUNDED - 764)) | (1 << (TSqlParser.UNCOMMITTED - 764)) | (1 << (TSqlParser.UNKNOWN - 764)) | (1 << (TSqlParser.UNLIMITED - 764)) | (1 << (TSqlParser.USING - 764)) | (1 << (TSqlParser.VALID_XML - 764)) | (1 << (TSqlParser.VALIDATION - 764)) | (1 << (TSqlParser.VALUE - 764)) | (1 << (TSqlParser.VAR - 764)) | (1 << (TSqlParser.VARP - 764)) | (1 << (TSqlParser.VIEW_METADATA - 764)) | (1 << (TSqlParser.VIEWS - 764)) | (1 << (TSqlParser.WAIT - 764)) | (1 << (TSqlParser.WELL_FORMED_XML - 764)) | (1 << (TSqlParser.WORK - 764)) | (1 << (TSqlParser.WORKLOAD - 764)) | (1 << (TSqlParser.XML - 764)) | (1 << (TSqlParser.XMLNAMESPACES - 764)))) !== 0) || ((((_la - 796)) & ~0x1f) == 0 && ((1 << (_la - 796)) & ((1 << (TSqlParser.DOUBLE_QUOTE_ID - 796)) | (1 << (TSqlParser.SQUARE_BRACKET_ID - 796)) | (1 << (TSqlParser.LOCAL_ID - 796)) | (1 << (TSqlParser.DECIMAL - 796)) | (1 << (TSqlParser.ID - 796)) | (1 << (TSqlParser.STRING - 796)) | (1 << (TSqlParser.BINARY - 796)) | (1 << (TSqlParser.FLOAT - 796)) | (1 << (TSqlParser.REAL - 796)) | (1 << (TSqlParser.DOLLAR - 796)) | (1 << (TSqlParser.LR_BRACKET - 796)))) !== 0) || ((((_la - 834)) & ~0x1f) == 0 && ((1 << (_la - 834)) & ((1 << (TSqlParser.PLUS - 834)) | (1 << (TSqlParser.MINUS - 834)) | (1 << (TSqlParser.BIT_NOT - 834)))) !== 0)) {
- this.state = 9814;
- this.expression_list();
- }
-
- this.state = 9817;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- case 27:
- localctx = new STRINGAGGContext(this, localctx);
- this.enterOuterAlt(localctx, 27);
- this.state = 9819;
- this.match(TSqlParser.STRING_AGG);
- this.state = 9820;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9821;
- localctx.expr = this.expression(0);
- this.state = 9822;
- this.match(TSqlParser.COMMA);
- this.state = 9823;
- localctx.separator = this.expression(0);
- this.state = 9824;
- this.match(TSqlParser.RR_BRACKET);
- this.state = 9831;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1382,this._ctx);
- if(la_===1) {
- this.state = 9825;
- this.match(TSqlParser.WITHIN);
- this.state = 9826;
- this.match(TSqlParser.GROUP);
- this.state = 9827;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9828;
- this.order_by_clause();
- this.state = 9829;
- this.match(TSqlParser.RR_BRACKET);
-
- }
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Xml_data_type_methodsContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_xml_data_type_methods;
- return this;
-}
-
-Xml_data_type_methodsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Xml_data_type_methodsContext.prototype.constructor = Xml_data_type_methodsContext;
-
-Xml_data_type_methodsContext.prototype.value_method = function() {
- return this.getTypedRuleContext(Value_methodContext,0);
-};
-
-Xml_data_type_methodsContext.prototype.query_method = function() {
- return this.getTypedRuleContext(Query_methodContext,0);
-};
-
-Xml_data_type_methodsContext.prototype.exist_method = function() {
- return this.getTypedRuleContext(Exist_methodContext,0);
-};
-
-Xml_data_type_methodsContext.prototype.modify_method = function() {
- return this.getTypedRuleContext(Modify_methodContext,0);
-};
-
-Xml_data_type_methodsContext.prototype.nodes_method = function() {
- return this.getTypedRuleContext(Nodes_methodContext,0);
-};
-
-Xml_data_type_methodsContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterXml_data_type_methods(this);
- }
-};
-
-Xml_data_type_methodsContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitXml_data_type_methods(this);
- }
-};
-
-Xml_data_type_methodsContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitXml_data_type_methods(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Xml_data_type_methodsContext = Xml_data_type_methodsContext;
-
-TSqlParser.prototype.xml_data_type_methods = function() {
-
- var localctx = new Xml_data_type_methodsContext(this, this._ctx, this.state);
- this.enterRule(localctx, 832, TSqlParser.RULE_xml_data_type_methods);
- try {
- this.state = 9840;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1384,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 9835;
- this.value_method();
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 9836;
- this.query_method();
- break;
-
- case 3:
- this.enterOuterAlt(localctx, 3);
- this.state = 9837;
- this.exist_method();
- break;
-
- case 4:
- this.enterOuterAlt(localctx, 4);
- this.state = 9838;
- this.modify_method();
- break;
-
- case 5:
- this.enterOuterAlt(localctx, 5);
- this.state = 9839;
- this.nodes_method();
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Value_methodContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_value_method;
- this.xquery = null; // Token
- this.sqltype = null; // Token
- return this;
-}
-
-Value_methodContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Value_methodContext.prototype.constructor = Value_methodContext;
-
-Value_methodContext.prototype.DOT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DOT);
- } else {
- return this.getToken(TSqlParser.DOT, i);
- }
-};
-
-
-Value_methodContext.prototype.VALUE = function() {
- return this.getToken(TSqlParser.VALUE, 0);
-};
-
-Value_methodContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Value_methodContext.prototype.COMMA = function() {
- return this.getToken(TSqlParser.COMMA, 0);
-};
-
-Value_methodContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Value_methodContext.prototype.STRING = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.STRING);
- } else {
- return this.getToken(TSqlParser.STRING, i);
- }
-};
-
-
-Value_methodContext.prototype.LOCAL_ID = function() {
- return this.getToken(TSqlParser.LOCAL_ID, 0);
-};
-
-Value_methodContext.prototype.ID = function() {
- return this.getToken(TSqlParser.ID, 0);
-};
-
-Value_methodContext.prototype.EVENTDATA = function() {
- return this.getToken(TSqlParser.EVENTDATA, 0);
-};
-
-Value_methodContext.prototype.query_method = function() {
- return this.getTypedRuleContext(Query_methodContext,0);
-};
-
-Value_methodContext.prototype.ROW = function() {
- return this.getToken(TSqlParser.ROW, 0);
-};
-
-Value_methodContext.prototype.PARAM_NODE = function() {
- return this.getToken(TSqlParser.PARAM_NODE, 0);
-};
-
-Value_methodContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterValue_method(this);
- }
-};
-
-Value_methodContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitValue_method(this);
- }
-};
-
-Value_methodContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitValue_method(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Value_methodContext = Value_methodContext;
-
-TSqlParser.prototype.value_method = function() {
-
- var localctx = new Value_methodContext(this, this._ctx, this.state);
- this.enterRule(localctx, 834, TSqlParser.RULE_value_method);
- try {
- this.state = 9885;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1388,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 9846;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1385,this._ctx);
- switch(la_) {
- case 1:
- this.state = 9842;
- this.match(TSqlParser.LOCAL_ID);
- break;
-
- case 2:
- this.state = 9843;
- this.match(TSqlParser.ID);
- break;
-
- case 3:
- this.state = 9844;
- this.match(TSqlParser.EVENTDATA);
- break;
-
- case 4:
- this.state = 9845;
- this.query_method();
- break;
-
- }
- this.state = 9848;
- this.match(TSqlParser.DOT);
- this.state = 9849;
- this.match(TSqlParser.VALUE);
- this.state = 9850;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9851;
- localctx.xquery = this.match(TSqlParser.STRING);
- this.state = 9852;
- this.match(TSqlParser.COMMA);
- this.state = 9853;
- localctx.sqltype = this.match(TSqlParser.STRING);
- this.state = 9854;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 9859;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1386,this._ctx);
- switch(la_) {
- case 1:
- this.state = 9855;
- this.match(TSqlParser.LOCAL_ID);
- break;
-
- case 2:
- this.state = 9856;
- this.match(TSqlParser.ID);
- break;
-
- case 3:
- this.state = 9857;
- this.match(TSqlParser.EVENTDATA);
- break;
-
- case 4:
- this.state = 9858;
- this.query_method();
- break;
-
- }
- this.state = 9861;
- this.match(TSqlParser.DOT);
- this.state = 9862;
- this.match(TSqlParser.ROW);
- this.state = 9863;
- this.match(TSqlParser.DOT);
- this.state = 9864;
- this.match(TSqlParser.VALUE);
- this.state = 9865;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9866;
- localctx.xquery = this.match(TSqlParser.STRING);
- this.state = 9867;
- this.match(TSqlParser.COMMA);
- this.state = 9868;
- localctx.sqltype = this.match(TSqlParser.STRING);
- this.state = 9869;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- case 3:
- this.enterOuterAlt(localctx, 3);
- this.state = 9874;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1387,this._ctx);
- switch(la_) {
- case 1:
- this.state = 9870;
- this.match(TSqlParser.LOCAL_ID);
- break;
-
- case 2:
- this.state = 9871;
- this.match(TSqlParser.ID);
- break;
-
- case 3:
- this.state = 9872;
- this.match(TSqlParser.EVENTDATA);
- break;
-
- case 4:
- this.state = 9873;
- this.query_method();
- break;
-
- }
- this.state = 9876;
- this.match(TSqlParser.DOT);
- this.state = 9877;
- this.match(TSqlParser.PARAM_NODE);
- this.state = 9878;
- this.match(TSqlParser.DOT);
- this.state = 9879;
- this.match(TSqlParser.VALUE);
- this.state = 9880;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9881;
- localctx.xquery = this.match(TSqlParser.STRING);
- this.state = 9882;
- this.match(TSqlParser.COMMA);
- this.state = 9883;
- localctx.sqltype = this.match(TSqlParser.STRING);
- this.state = 9884;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Query_methodContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_query_method;
- this.xquery = null; // Token
- return this;
-}
-
-Query_methodContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Query_methodContext.prototype.constructor = Query_methodContext;
-
-Query_methodContext.prototype.DOT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DOT);
- } else {
- return this.getToken(TSqlParser.DOT, i);
- }
-};
-
-
-Query_methodContext.prototype.QUERY = function() {
- return this.getToken(TSqlParser.QUERY, 0);
-};
-
-Query_methodContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Query_methodContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Query_methodContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Query_methodContext.prototype.LOCAL_ID = function() {
- return this.getToken(TSqlParser.LOCAL_ID, 0);
-};
-
-Query_methodContext.prototype.ID = function() {
- return this.getToken(TSqlParser.ID, 0);
-};
-
-Query_methodContext.prototype.full_table_name = function() {
- return this.getTypedRuleContext(Full_table_nameContext,0);
-};
-
-Query_methodContext.prototype.ROW = function() {
- return this.getToken(TSqlParser.ROW, 0);
-};
-
-Query_methodContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterQuery_method(this);
- }
-};
-
-Query_methodContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitQuery_method(this);
- }
-};
-
-Query_methodContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitQuery_method(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Query_methodContext = Query_methodContext;
-
-TSqlParser.prototype.query_method = function() {
-
- var localctx = new Query_methodContext(this, this._ctx, this.state);
- this.enterRule(localctx, 836, TSqlParser.RULE_query_method);
- try {
- this.state = 9909;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1391,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 9890;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1389,this._ctx);
- switch(la_) {
- case 1:
- this.state = 9887;
- this.match(TSqlParser.LOCAL_ID);
- break;
-
- case 2:
- this.state = 9888;
- this.match(TSqlParser.ID);
- break;
-
- case 3:
- this.state = 9889;
- this.full_table_name();
- break;
-
- }
- this.state = 9892;
- this.match(TSqlParser.DOT);
- this.state = 9893;
- this.match(TSqlParser.QUERY);
- this.state = 9894;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9895;
- localctx.xquery = this.match(TSqlParser.STRING);
- this.state = 9896;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 9900;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1390,this._ctx);
- switch(la_) {
- case 1:
- this.state = 9897;
- this.match(TSqlParser.LOCAL_ID);
- break;
-
- case 2:
- this.state = 9898;
- this.match(TSqlParser.ID);
- break;
-
- case 3:
- this.state = 9899;
- this.full_table_name();
- break;
-
- }
- this.state = 9902;
- this.match(TSqlParser.DOT);
- this.state = 9903;
- this.match(TSqlParser.ROW);
- this.state = 9904;
- this.match(TSqlParser.DOT);
- this.state = 9905;
- this.match(TSqlParser.QUERY);
- this.state = 9906;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9907;
- localctx.xquery = this.match(TSqlParser.STRING);
- this.state = 9908;
- this.match(TSqlParser.RR_BRACKET);
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Exist_methodContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_exist_method;
- this.xquery = null; // Token
- return this;
-}
-
-Exist_methodContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Exist_methodContext.prototype.constructor = Exist_methodContext;
-
-Exist_methodContext.prototype.DOT = function() {
- return this.getToken(TSqlParser.DOT, 0);
-};
-
-Exist_methodContext.prototype.EXIST = function() {
- return this.getToken(TSqlParser.EXIST, 0);
-};
-
-Exist_methodContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Exist_methodContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Exist_methodContext.prototype.LOCAL_ID = function() {
- return this.getToken(TSqlParser.LOCAL_ID, 0);
-};
-
-Exist_methodContext.prototype.ID = function() {
- return this.getToken(TSqlParser.ID, 0);
-};
-
-Exist_methodContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Exist_methodContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterExist_method(this);
- }
-};
-
-Exist_methodContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitExist_method(this);
- }
-};
-
-Exist_methodContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitExist_method(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Exist_methodContext = Exist_methodContext;
-
-TSqlParser.prototype.exist_method = function() {
-
- var localctx = new Exist_methodContext(this, this._ctx, this.state);
- this.enterRule(localctx, 838, TSqlParser.RULE_exist_method);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 9911;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.LOCAL_ID || _la===TSqlParser.ID)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 9912;
- this.match(TSqlParser.DOT);
- this.state = 9913;
- this.match(TSqlParser.EXIST);
- this.state = 9914;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9915;
- localctx.xquery = this.match(TSqlParser.STRING);
- this.state = 9916;
- this.match(TSqlParser.RR_BRACKET);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Modify_methodContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_modify_method;
- this.xml_dml = null; // Token
- return this;
-}
-
-Modify_methodContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Modify_methodContext.prototype.constructor = Modify_methodContext;
-
-Modify_methodContext.prototype.DOT = function() {
- return this.getToken(TSqlParser.DOT, 0);
-};
-
-Modify_methodContext.prototype.MODIFY = function() {
- return this.getToken(TSqlParser.MODIFY, 0);
-};
-
-Modify_methodContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Modify_methodContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Modify_methodContext.prototype.LOCAL_ID = function() {
- return this.getToken(TSqlParser.LOCAL_ID, 0);
-};
-
-Modify_methodContext.prototype.ID = function() {
- return this.getToken(TSqlParser.ID, 0);
-};
-
-Modify_methodContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Modify_methodContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterModify_method(this);
- }
-};
-
-Modify_methodContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitModify_method(this);
- }
-};
-
-Modify_methodContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitModify_method(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Modify_methodContext = Modify_methodContext;
-
-TSqlParser.prototype.modify_method = function() {
-
- var localctx = new Modify_methodContext(this, this._ctx, this.state);
- this.enterRule(localctx, 840, TSqlParser.RULE_modify_method);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 9918;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.LOCAL_ID || _la===TSqlParser.ID)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 9919;
- this.match(TSqlParser.DOT);
- this.state = 9920;
- this.match(TSqlParser.MODIFY);
- this.state = 9921;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9922;
- localctx.xml_dml = this.match(TSqlParser.STRING);
- this.state = 9923;
- this.match(TSqlParser.RR_BRACKET);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Nodes_methodContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_nodes_method;
- this.xquery = null; // Token
- return this;
-}
-
-Nodes_methodContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Nodes_methodContext.prototype.constructor = Nodes_methodContext;
-
-Nodes_methodContext.prototype.DOT = function() {
- return this.getToken(TSqlParser.DOT, 0);
-};
-
-Nodes_methodContext.prototype.NODES = function() {
- return this.getToken(TSqlParser.NODES, 0);
-};
-
-Nodes_methodContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Nodes_methodContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Nodes_methodContext.prototype.LOCAL_ID = function() {
- return this.getToken(TSqlParser.LOCAL_ID, 0);
-};
-
-Nodes_methodContext.prototype.ID = function() {
- return this.getToken(TSqlParser.ID, 0);
-};
-
-Nodes_methodContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Nodes_methodContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterNodes_method(this);
- }
-};
-
-Nodes_methodContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitNodes_method(this);
- }
-};
-
-Nodes_methodContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitNodes_method(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Nodes_methodContext = Nodes_methodContext;
-
-TSqlParser.prototype.nodes_method = function() {
-
- var localctx = new Nodes_methodContext(this, this._ctx, this.state);
- this.enterRule(localctx, 842, TSqlParser.RULE_nodes_method);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 9925;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.LOCAL_ID || _la===TSqlParser.ID)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 9926;
- this.match(TSqlParser.DOT);
- this.state = 9927;
- this.match(TSqlParser.NODES);
- this.state = 9928;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9929;
- localctx.xquery = this.match(TSqlParser.STRING);
- this.state = 9930;
- this.match(TSqlParser.RR_BRACKET);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Switch_sectionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_switch_section;
- return this;
-}
-
-Switch_sectionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Switch_sectionContext.prototype.constructor = Switch_sectionContext;
-
-Switch_sectionContext.prototype.WHEN = function() {
- return this.getToken(TSqlParser.WHEN, 0);
-};
-
-Switch_sectionContext.prototype.expression = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(ExpressionContext);
- } else {
- return this.getTypedRuleContext(ExpressionContext,i);
- }
-};
-
-Switch_sectionContext.prototype.THEN = function() {
- return this.getToken(TSqlParser.THEN, 0);
-};
-
-Switch_sectionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterSwitch_section(this);
- }
-};
-
-Switch_sectionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitSwitch_section(this);
- }
-};
-
-Switch_sectionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitSwitch_section(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Switch_sectionContext = Switch_sectionContext;
-
-TSqlParser.prototype.switch_section = function() {
-
- var localctx = new Switch_sectionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 844, TSqlParser.RULE_switch_section);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 9932;
- this.match(TSqlParser.WHEN);
- this.state = 9933;
- this.expression(0);
- this.state = 9934;
- this.match(TSqlParser.THEN);
- this.state = 9935;
- this.expression(0);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Switch_search_condition_sectionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_switch_search_condition_section;
- return this;
-}
-
-Switch_search_condition_sectionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Switch_search_condition_sectionContext.prototype.constructor = Switch_search_condition_sectionContext;
-
-Switch_search_condition_sectionContext.prototype.WHEN = function() {
- return this.getToken(TSqlParser.WHEN, 0);
-};
-
-Switch_search_condition_sectionContext.prototype.search_condition = function() {
- return this.getTypedRuleContext(Search_conditionContext,0);
-};
-
-Switch_search_condition_sectionContext.prototype.THEN = function() {
- return this.getToken(TSqlParser.THEN, 0);
-};
-
-Switch_search_condition_sectionContext.prototype.expression = function() {
- return this.getTypedRuleContext(ExpressionContext,0);
-};
-
-Switch_search_condition_sectionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterSwitch_search_condition_section(this);
- }
-};
-
-Switch_search_condition_sectionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitSwitch_search_condition_section(this);
- }
-};
-
-Switch_search_condition_sectionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitSwitch_search_condition_section(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Switch_search_condition_sectionContext = Switch_search_condition_sectionContext;
-
-TSqlParser.prototype.switch_search_condition_section = function() {
-
- var localctx = new Switch_search_condition_sectionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 846, TSqlParser.RULE_switch_search_condition_section);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 9937;
- this.match(TSqlParser.WHEN);
- this.state = 9938;
- this.search_condition();
- this.state = 9939;
- this.match(TSqlParser.THEN);
- this.state = 9940;
- this.expression(0);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function As_column_aliasContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_as_column_alias;
- return this;
-}
-
-As_column_aliasContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-As_column_aliasContext.prototype.constructor = As_column_aliasContext;
-
-As_column_aliasContext.prototype.column_alias = function() {
- return this.getTypedRuleContext(Column_aliasContext,0);
-};
-
-As_column_aliasContext.prototype.AS = function() {
- return this.getToken(TSqlParser.AS, 0);
-};
-
-As_column_aliasContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAs_column_alias(this);
- }
-};
-
-As_column_aliasContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAs_column_alias(this);
- }
-};
-
-As_column_aliasContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAs_column_alias(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.As_column_aliasContext = As_column_aliasContext;
-
-TSqlParser.prototype.as_column_alias = function() {
-
- var localctx = new As_column_aliasContext(this, this._ctx, this.state);
- this.enterRule(localctx, 848, TSqlParser.RULE_as_column_alias);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 9943;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.AS) {
- this.state = 9942;
- this.match(TSqlParser.AS);
- }
-
- this.state = 9945;
- this.column_alias();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function As_table_aliasContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_as_table_alias;
- return this;
-}
-
-As_table_aliasContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-As_table_aliasContext.prototype.constructor = As_table_aliasContext;
-
-As_table_aliasContext.prototype.table_alias = function() {
- return this.getTypedRuleContext(Table_aliasContext,0);
-};
-
-As_table_aliasContext.prototype.AS = function() {
- return this.getToken(TSqlParser.AS, 0);
-};
-
-As_table_aliasContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAs_table_alias(this);
- }
-};
-
-As_table_aliasContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAs_table_alias(this);
- }
-};
-
-As_table_aliasContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAs_table_alias(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.As_table_aliasContext = As_table_aliasContext;
-
-TSqlParser.prototype.as_table_alias = function() {
-
- var localctx = new As_table_aliasContext(this, this._ctx, this.state);
- this.enterRule(localctx, 850, TSqlParser.RULE_as_table_alias);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 9948;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.AS) {
- this.state = 9947;
- this.match(TSqlParser.AS);
- }
-
- this.state = 9950;
- this.table_alias();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Table_aliasContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_table_alias;
- return this;
-}
-
-Table_aliasContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Table_aliasContext.prototype.constructor = Table_aliasContext;
-
-Table_aliasContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Table_aliasContext.prototype.with_table_hints = function() {
- return this.getTypedRuleContext(With_table_hintsContext,0);
-};
-
-Table_aliasContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterTable_alias(this);
- }
-};
-
-Table_aliasContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitTable_alias(this);
- }
-};
-
-Table_aliasContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitTable_alias(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Table_aliasContext = Table_aliasContext;
-
-TSqlParser.prototype.table_alias = function() {
-
- var localctx = new Table_aliasContext(this, this._ctx, this.state);
- this.enterRule(localctx, 852, TSqlParser.RULE_table_alias);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 9952;
- this.id();
- this.state = 9954;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1394,this._ctx);
- if(la_===1) {
- this.state = 9953;
- this.with_table_hints();
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function With_table_hintsContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_with_table_hints;
- return this;
-}
-
-With_table_hintsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-With_table_hintsContext.prototype.constructor = With_table_hintsContext;
-
-With_table_hintsContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-With_table_hintsContext.prototype.table_hint = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Table_hintContext);
- } else {
- return this.getTypedRuleContext(Table_hintContext,i);
- }
-};
-
-With_table_hintsContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-With_table_hintsContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-With_table_hintsContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-With_table_hintsContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterWith_table_hints(this);
- }
-};
-
-With_table_hintsContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitWith_table_hints(this);
- }
-};
-
-With_table_hintsContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitWith_table_hints(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.With_table_hintsContext = With_table_hintsContext;
-
-TSqlParser.prototype.with_table_hints = function() {
-
- var localctx = new With_table_hintsContext(this, this._ctx, this.state);
- this.enterRule(localctx, 854, TSqlParser.RULE_with_table_hints);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 9957;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.WITH) {
- this.state = 9956;
- this.match(TSqlParser.WITH);
- }
-
- this.state = 9959;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9960;
- this.table_hint();
- this.state = 9967;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.FORCESEEK || _la===TSqlParser.INDEX || _la===TSqlParser.NOEXPAND || ((((_la - 718)) & ~0x1f) == 0 && ((1 << (_la - 718)) & ((1 << (TSqlParser.SERIALIZABLE - 718)) | (1 << (TSqlParser.SNAPSHOT - 718)) | (1 << (TSqlParser.SPATIAL_WINDOW_MAX_CELLS - 718)))) !== 0) || _la===TSqlParser.ID || _la===TSqlParser.COMMA) {
- this.state = 9962;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 9961;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 9964;
- this.table_hint();
- this.state = 9969;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- this.state = 9970;
- this.match(TSqlParser.RR_BRACKET);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Insert_with_table_hintsContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_insert_with_table_hints;
- return this;
-}
-
-Insert_with_table_hintsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Insert_with_table_hintsContext.prototype.constructor = Insert_with_table_hintsContext;
-
-Insert_with_table_hintsContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Insert_with_table_hintsContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Insert_with_table_hintsContext.prototype.table_hint = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Table_hintContext);
- } else {
- return this.getTypedRuleContext(Table_hintContext,i);
- }
-};
-
-Insert_with_table_hintsContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Insert_with_table_hintsContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Insert_with_table_hintsContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterInsert_with_table_hints(this);
- }
-};
-
-Insert_with_table_hintsContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitInsert_with_table_hints(this);
- }
-};
-
-Insert_with_table_hintsContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitInsert_with_table_hints(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Insert_with_table_hintsContext = Insert_with_table_hintsContext;
-
-TSqlParser.prototype.insert_with_table_hints = function() {
-
- var localctx = new Insert_with_table_hintsContext(this, this._ctx, this.state);
- this.enterRule(localctx, 856, TSqlParser.RULE_insert_with_table_hints);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 9972;
- this.match(TSqlParser.WITH);
- this.state = 9973;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9974;
- this.table_hint();
- this.state = 9981;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.FORCESEEK || _la===TSqlParser.INDEX || _la===TSqlParser.NOEXPAND || ((((_la - 718)) & ~0x1f) == 0 && ((1 << (_la - 718)) & ((1 << (TSqlParser.SERIALIZABLE - 718)) | (1 << (TSqlParser.SNAPSHOT - 718)) | (1 << (TSqlParser.SPATIAL_WINDOW_MAX_CELLS - 718)))) !== 0) || _la===TSqlParser.ID || _la===TSqlParser.COMMA) {
- this.state = 9976;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 9975;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 9978;
- this.table_hint();
- this.state = 9983;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- this.state = 9984;
- this.match(TSqlParser.RR_BRACKET);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Table_hintContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_table_hint;
- return this;
-}
-
-Table_hintContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Table_hintContext.prototype.constructor = Table_hintContext;
-
-Table_hintContext.prototype.INDEX = function() {
- return this.getToken(TSqlParser.INDEX, 0);
-};
-
-Table_hintContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Table_hintContext.prototype.index_value = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Index_valueContext);
- } else {
- return this.getTypedRuleContext(Index_valueContext,i);
- }
-};
-
-Table_hintContext.prototype.FORCESEEK = function() {
- return this.getToken(TSqlParser.FORCESEEK, 0);
-};
-
-Table_hintContext.prototype.SERIALIZABLE = function() {
- return this.getToken(TSqlParser.SERIALIZABLE, 0);
-};
-
-Table_hintContext.prototype.SNAPSHOT = function() {
- return this.getToken(TSqlParser.SNAPSHOT, 0);
-};
-
-Table_hintContext.prototype.SPATIAL_WINDOW_MAX_CELLS = function() {
- return this.getToken(TSqlParser.SPATIAL_WINDOW_MAX_CELLS, 0);
-};
-
-Table_hintContext.prototype.DECIMAL = function() {
- return this.getToken(TSqlParser.DECIMAL, 0);
-};
-
-Table_hintContext.prototype.ID = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ID);
- } else {
- return this.getToken(TSqlParser.ID, i);
- }
-};
-
-
-Table_hintContext.prototype.NOEXPAND = function() {
- return this.getToken(TSqlParser.NOEXPAND, 0);
-};
-
-Table_hintContext.prototype.LR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.LR_BRACKET);
- } else {
- return this.getToken(TSqlParser.LR_BRACKET, i);
- }
-};
-
-
-Table_hintContext.prototype.RR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.RR_BRACKET);
- } else {
- return this.getToken(TSqlParser.RR_BRACKET, i);
- }
-};
-
-
-Table_hintContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Table_hintContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterTable_hint(this);
- }
-};
-
-Table_hintContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitTable_hint(this);
- }
-};
-
-Table_hintContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitTable_hint(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Table_hintContext = Table_hintContext;
-
-TSqlParser.prototype.table_hint = function() {
-
- var localctx = new Table_hintContext(this, this._ctx, this.state);
- this.enterRule(localctx, 858, TSqlParser.RULE_table_hint);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 9987;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.NOEXPAND) {
- this.state = 9986;
- this.match(TSqlParser.NOEXPAND);
- }
-
- this.state = 10037;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1406,this._ctx);
- switch(la_) {
- case 1:
- this.state = 9989;
- this.match(TSqlParser.INDEX);
- this.state = 10009;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.LR_BRACKET:
- this.state = 9990;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 9991;
- this.index_value();
- this.state = 9996;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 9992;
- this.match(TSqlParser.COMMA);
- this.state = 9993;
- this.index_value();
- this.state = 9998;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- this.state = 9999;
- this.match(TSqlParser.RR_BRACKET);
- break;
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.DECIMAL:
- case TSqlParser.ID:
- this.state = 10001;
- this.index_value();
- this.state = 10006;
- this._errHandler.sync(this);
- var _alt = this._interp.adaptivePredict(this._input,1402,this._ctx)
- while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
- if(_alt===1) {
- this.state = 10002;
- this.match(TSqlParser.COMMA);
- this.state = 10003;
- this.index_value();
- }
- this.state = 10008;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,1402,this._ctx);
- }
-
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
-
- case 2:
- this.state = 10011;
- this.match(TSqlParser.INDEX);
- this.state = 10012;
- this.match(TSqlParser.EQUAL);
- this.state = 10013;
- this.index_value();
- break;
-
- case 3:
- this.state = 10014;
- this.match(TSqlParser.FORCESEEK);
- this.state = 10029;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.LR_BRACKET) {
- this.state = 10015;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 10016;
- this.index_value();
- this.state = 10017;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 10018;
- this.match(TSqlParser.ID);
- this.state = 10023;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 10019;
- this.match(TSqlParser.COMMA);
- this.state = 10020;
- this.match(TSqlParser.ID);
- this.state = 10025;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- this.state = 10026;
- this.match(TSqlParser.RR_BRACKET);
- this.state = 10027;
- this.match(TSqlParser.RR_BRACKET);
- }
-
- break;
-
- case 4:
- this.state = 10031;
- this.match(TSqlParser.SERIALIZABLE);
- break;
-
- case 5:
- this.state = 10032;
- this.match(TSqlParser.SNAPSHOT);
- break;
-
- case 6:
- this.state = 10033;
- this.match(TSqlParser.SPATIAL_WINDOW_MAX_CELLS);
- this.state = 10034;
- this.match(TSqlParser.EQUAL);
- this.state = 10035;
- this.match(TSqlParser.DECIMAL);
- break;
-
- case 7:
- this.state = 10036;
- this.match(TSqlParser.ID);
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Index_valueContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_index_value;
- return this;
-}
-
-Index_valueContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Index_valueContext.prototype.constructor = Index_valueContext;
-
-Index_valueContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Index_valueContext.prototype.DECIMAL = function() {
- return this.getToken(TSqlParser.DECIMAL, 0);
-};
-
-Index_valueContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterIndex_value(this);
- }
-};
-
-Index_valueContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitIndex_value(this);
- }
-};
-
-Index_valueContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitIndex_value(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Index_valueContext = Index_valueContext;
-
-TSqlParser.prototype.index_value = function() {
-
- var localctx = new Index_valueContext(this, this._ctx, this.state);
- this.enterRule(localctx, 860, TSqlParser.RULE_index_value);
- try {
- this.state = 10041;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.enterOuterAlt(localctx, 1);
- this.state = 10039;
- this.id();
- break;
- case TSqlParser.DECIMAL:
- this.enterOuterAlt(localctx, 2);
- this.state = 10040;
- this.match(TSqlParser.DECIMAL);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Column_alias_listContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_column_alias_list;
- return this;
-}
-
-Column_alias_listContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Column_alias_listContext.prototype.constructor = Column_alias_listContext;
-
-Column_alias_listContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Column_alias_listContext.prototype.column_alias = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Column_aliasContext);
- } else {
- return this.getTypedRuleContext(Column_aliasContext,i);
- }
-};
-
-Column_alias_listContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Column_alias_listContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Column_alias_listContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterColumn_alias_list(this);
- }
-};
-
-Column_alias_listContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitColumn_alias_list(this);
- }
-};
-
-Column_alias_listContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitColumn_alias_list(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Column_alias_listContext = Column_alias_listContext;
-
-TSqlParser.prototype.column_alias_list = function() {
-
- var localctx = new Column_alias_listContext(this, this._ctx, this.state);
- this.enterRule(localctx, 862, TSqlParser.RULE_column_alias_list);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 10043;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 10044;
- this.column_alias();
- this.state = 10049;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 10045;
- this.match(TSqlParser.COMMA);
- this.state = 10046;
- this.column_alias();
- this.state = 10051;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- this.state = 10052;
- this.match(TSqlParser.RR_BRACKET);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Column_aliasContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_column_alias;
- return this;
-}
-
-Column_aliasContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Column_aliasContext.prototype.constructor = Column_aliasContext;
-
-Column_aliasContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Column_aliasContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Column_aliasContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterColumn_alias(this);
- }
-};
-
-Column_aliasContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitColumn_alias(this);
- }
-};
-
-Column_aliasContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitColumn_alias(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Column_aliasContext = Column_aliasContext;
-
-TSqlParser.prototype.column_alias = function() {
-
- var localctx = new Column_aliasContext(this, this._ctx, this.state);
- this.enterRule(localctx, 864, TSqlParser.RULE_column_alias);
- try {
- this.state = 10056;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.enterOuterAlt(localctx, 1);
- this.state = 10054;
- this.id();
- break;
- case TSqlParser.STRING:
- this.enterOuterAlt(localctx, 2);
- this.state = 10055;
- this.match(TSqlParser.STRING);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Table_value_constructorContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_table_value_constructor;
- return this;
-}
-
-Table_value_constructorContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Table_value_constructorContext.prototype.constructor = Table_value_constructorContext;
-
-Table_value_constructorContext.prototype.VALUES = function() {
- return this.getToken(TSqlParser.VALUES, 0);
-};
-
-Table_value_constructorContext.prototype.LR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.LR_BRACKET);
- } else {
- return this.getToken(TSqlParser.LR_BRACKET, i);
- }
-};
-
-
-Table_value_constructorContext.prototype.expression_list = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Expression_listContext);
- } else {
- return this.getTypedRuleContext(Expression_listContext,i);
- }
-};
-
-Table_value_constructorContext.prototype.RR_BRACKET = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.RR_BRACKET);
- } else {
- return this.getToken(TSqlParser.RR_BRACKET, i);
- }
-};
-
-
-Table_value_constructorContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Table_value_constructorContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterTable_value_constructor(this);
- }
-};
-
-Table_value_constructorContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitTable_value_constructor(this);
- }
-};
-
-Table_value_constructorContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitTable_value_constructor(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Table_value_constructorContext = Table_value_constructorContext;
-
-TSqlParser.prototype.table_value_constructor = function() {
-
- var localctx = new Table_value_constructorContext(this, this._ctx, this.state);
- this.enterRule(localctx, 866, TSqlParser.RULE_table_value_constructor);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 10058;
- this.match(TSqlParser.VALUES);
- this.state = 10059;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 10060;
- this.expression_list();
- this.state = 10061;
- this.match(TSqlParser.RR_BRACKET);
- this.state = 10069;
- this._errHandler.sync(this);
- var _alt = this._interp.adaptivePredict(this._input,1410,this._ctx)
- while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
- if(_alt===1) {
- this.state = 10062;
- this.match(TSqlParser.COMMA);
- this.state = 10063;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 10064;
- this.expression_list();
- this.state = 10065;
- this.match(TSqlParser.RR_BRACKET);
- }
- this.state = 10071;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,1410,this._ctx);
- }
-
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Expression_listContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_expression_list;
- return this;
-}
-
-Expression_listContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Expression_listContext.prototype.constructor = Expression_listContext;
-
-Expression_listContext.prototype.expression = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(ExpressionContext);
- } else {
- return this.getTypedRuleContext(ExpressionContext,i);
- }
-};
-
-Expression_listContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Expression_listContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterExpression_list(this);
- }
-};
-
-Expression_listContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitExpression_list(this);
- }
-};
-
-Expression_listContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitExpression_list(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Expression_listContext = Expression_listContext;
-
-TSqlParser.prototype.expression_list = function() {
-
- var localctx = new Expression_listContext(this, this._ctx, this.state);
- this.enterRule(localctx, 868, TSqlParser.RULE_expression_list);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 10072;
- this.expression(0);
- this.state = 10077;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 10073;
- this.match(TSqlParser.COMMA);
- this.state = 10074;
- this.expression(0);
- this.state = 10079;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Ranking_windowed_functionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_ranking_windowed_function;
- return this;
-}
-
-Ranking_windowed_functionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Ranking_windowed_functionContext.prototype.constructor = Ranking_windowed_functionContext;
-
-Ranking_windowed_functionContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Ranking_windowed_functionContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Ranking_windowed_functionContext.prototype.over_clause = function() {
- return this.getTypedRuleContext(Over_clauseContext,0);
-};
-
-Ranking_windowed_functionContext.prototype.RANK = function() {
- return this.getToken(TSqlParser.RANK, 0);
-};
-
-Ranking_windowed_functionContext.prototype.DENSE_RANK = function() {
- return this.getToken(TSqlParser.DENSE_RANK, 0);
-};
-
-Ranking_windowed_functionContext.prototype.ROW_NUMBER = function() {
- return this.getToken(TSqlParser.ROW_NUMBER, 0);
-};
-
-Ranking_windowed_functionContext.prototype.NTILE = function() {
- return this.getToken(TSqlParser.NTILE, 0);
-};
-
-Ranking_windowed_functionContext.prototype.expression = function() {
- return this.getTypedRuleContext(ExpressionContext,0);
-};
-
-Ranking_windowed_functionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterRanking_windowed_function(this);
- }
-};
-
-Ranking_windowed_functionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitRanking_windowed_function(this);
- }
-};
-
-Ranking_windowed_functionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitRanking_windowed_function(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Ranking_windowed_functionContext = Ranking_windowed_functionContext;
-
-TSqlParser.prototype.ranking_windowed_function = function() {
-
- var localctx = new Ranking_windowed_functionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 870, TSqlParser.RULE_ranking_windowed_function);
- var _la = 0; // Token type
- try {
- this.state = 10090;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.DENSE_RANK:
- case TSqlParser.RANK:
- case TSqlParser.ROW_NUMBER:
- this.enterOuterAlt(localctx, 1);
- this.state = 10080;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.DENSE_RANK || _la===TSqlParser.RANK || _la===TSqlParser.ROW_NUMBER)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 10081;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 10082;
- this.match(TSqlParser.RR_BRACKET);
- this.state = 10083;
- this.over_clause();
- break;
- case TSqlParser.NTILE:
- this.enterOuterAlt(localctx, 2);
- this.state = 10084;
- this.match(TSqlParser.NTILE);
- this.state = 10085;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 10086;
- this.expression(0);
- this.state = 10087;
- this.match(TSqlParser.RR_BRACKET);
- this.state = 10088;
- this.over_clause();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Aggregate_windowed_functionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_aggregate_windowed_function;
- return this;
-}
-
-Aggregate_windowed_functionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Aggregate_windowed_functionContext.prototype.constructor = Aggregate_windowed_functionContext;
-
-Aggregate_windowed_functionContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Aggregate_windowed_functionContext.prototype.all_distinct_expression = function() {
- return this.getTypedRuleContext(All_distinct_expressionContext,0);
-};
-
-Aggregate_windowed_functionContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Aggregate_windowed_functionContext.prototype.AVG = function() {
- return this.getToken(TSqlParser.AVG, 0);
-};
-
-Aggregate_windowed_functionContext.prototype.MAX = function() {
- return this.getToken(TSqlParser.MAX, 0);
-};
-
-Aggregate_windowed_functionContext.prototype.MIN = function() {
- return this.getToken(TSqlParser.MIN, 0);
-};
-
-Aggregate_windowed_functionContext.prototype.SUM = function() {
- return this.getToken(TSqlParser.SUM, 0);
-};
-
-Aggregate_windowed_functionContext.prototype.STDEV = function() {
- return this.getToken(TSqlParser.STDEV, 0);
-};
-
-Aggregate_windowed_functionContext.prototype.STDEVP = function() {
- return this.getToken(TSqlParser.STDEVP, 0);
-};
-
-Aggregate_windowed_functionContext.prototype.VAR = function() {
- return this.getToken(TSqlParser.VAR, 0);
-};
-
-Aggregate_windowed_functionContext.prototype.VARP = function() {
- return this.getToken(TSqlParser.VARP, 0);
-};
-
-Aggregate_windowed_functionContext.prototype.over_clause = function() {
- return this.getTypedRuleContext(Over_clauseContext,0);
-};
-
-Aggregate_windowed_functionContext.prototype.COUNT = function() {
- return this.getToken(TSqlParser.COUNT, 0);
-};
-
-Aggregate_windowed_functionContext.prototype.COUNT_BIG = function() {
- return this.getToken(TSqlParser.COUNT_BIG, 0);
-};
-
-Aggregate_windowed_functionContext.prototype.STAR = function() {
- return this.getToken(TSqlParser.STAR, 0);
-};
-
-Aggregate_windowed_functionContext.prototype.CHECKSUM_AGG = function() {
- return this.getToken(TSqlParser.CHECKSUM_AGG, 0);
-};
-
-Aggregate_windowed_functionContext.prototype.GROUPING = function() {
- return this.getToken(TSqlParser.GROUPING, 0);
-};
-
-Aggregate_windowed_functionContext.prototype.expression = function() {
- return this.getTypedRuleContext(ExpressionContext,0);
-};
-
-Aggregate_windowed_functionContext.prototype.GROUPING_ID = function() {
- return this.getToken(TSqlParser.GROUPING_ID, 0);
-};
-
-Aggregate_windowed_functionContext.prototype.expression_list = function() {
- return this.getTypedRuleContext(Expression_listContext,0);
-};
-
-Aggregate_windowed_functionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAggregate_windowed_function(this);
- }
-};
-
-Aggregate_windowed_functionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAggregate_windowed_function(this);
- }
-};
-
-Aggregate_windowed_functionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAggregate_windowed_function(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Aggregate_windowed_functionContext = Aggregate_windowed_functionContext;
-
-TSqlParser.prototype.aggregate_windowed_function = function() {
-
- var localctx = new Aggregate_windowed_functionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 872, TSqlParser.RULE_aggregate_windowed_function);
- var _la = 0; // Token type
- try {
- this.state = 10124;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.AVG:
- case TSqlParser.MAX:
- case TSqlParser.MIN:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.SUM:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- this.enterOuterAlt(localctx, 1);
- this.state = 10092;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.AVG || _la===TSqlParser.MAX || _la===TSqlParser.MIN || ((((_la - 736)) & ~0x1f) == 0 && ((1 << (_la - 736)) & ((1 << (TSqlParser.STDEV - 736)) | (1 << (TSqlParser.STDEVP - 736)) | (1 << (TSqlParser.SUM - 736)))) !== 0) || _la===TSqlParser.VAR || _la===TSqlParser.VARP)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 10093;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 10094;
- this.all_distinct_expression();
- this.state = 10095;
- this.match(TSqlParser.RR_BRACKET);
- this.state = 10097;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1413,this._ctx);
- if(la_===1) {
- this.state = 10096;
- this.over_clause();
-
- }
- break;
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- this.enterOuterAlt(localctx, 2);
- this.state = 10099;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.COUNT || _la===TSqlParser.COUNT_BIG)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 10100;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 10103;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.STAR:
- this.state = 10101;
- this.match(TSqlParser.STAR);
- break;
- case TSqlParser.ALL:
- case TSqlParser.BLOCKING_HIERARCHY:
- case TSqlParser.CALLED:
- case TSqlParser.CASE:
- case TSqlParser.COALESCE:
- case TSqlParser.CONVERT:
- case TSqlParser.CURRENT_TIMESTAMP:
- case TSqlParser.CURRENT_USER:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.DEFAULT:
- case TSqlParser.DISTINCT:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.IDENTITY:
- case TSqlParser.IIF:
- case TSqlParser.INIT:
- case TSqlParser.ISNULL:
- case TSqlParser.KEY:
- case TSqlParser.LEFT:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.NULL:
- case TSqlParser.NULLIF:
- case TSqlParser.OFFSETS:
- case TSqlParser.OVER:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.RIGHT:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SESSION_USER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.SYSTEM_USER:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.LOCAL_ID:
- case TSqlParser.DECIMAL:
- case TSqlParser.ID:
- case TSqlParser.STRING:
- case TSqlParser.BINARY:
- case TSqlParser.FLOAT:
- case TSqlParser.REAL:
- case TSqlParser.DOLLAR:
- case TSqlParser.LR_BRACKET:
- case TSqlParser.PLUS:
- case TSqlParser.MINUS:
- case TSqlParser.BIT_NOT:
- this.state = 10102;
- this.all_distinct_expression();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 10105;
- this.match(TSqlParser.RR_BRACKET);
- this.state = 10107;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1415,this._ctx);
- if(la_===1) {
- this.state = 10106;
- this.over_clause();
-
- }
- break;
- case TSqlParser.CHECKSUM_AGG:
- this.enterOuterAlt(localctx, 3);
- this.state = 10109;
- this.match(TSqlParser.CHECKSUM_AGG);
- this.state = 10110;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 10111;
- this.all_distinct_expression();
- this.state = 10112;
- this.match(TSqlParser.RR_BRACKET);
- break;
- case TSqlParser.GROUPING:
- this.enterOuterAlt(localctx, 4);
- this.state = 10114;
- this.match(TSqlParser.GROUPING);
- this.state = 10115;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 10116;
- this.expression(0);
- this.state = 10117;
- this.match(TSqlParser.RR_BRACKET);
- break;
- case TSqlParser.GROUPING_ID:
- this.enterOuterAlt(localctx, 5);
- this.state = 10119;
- this.match(TSqlParser.GROUPING_ID);
- this.state = 10120;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 10121;
- this.expression_list();
- this.state = 10122;
- this.match(TSqlParser.RR_BRACKET);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Analytic_windowed_functionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_analytic_windowed_function;
- return this;
-}
-
-Analytic_windowed_functionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Analytic_windowed_functionContext.prototype.constructor = Analytic_windowed_functionContext;
-
-Analytic_windowed_functionContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Analytic_windowed_functionContext.prototype.expression = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(ExpressionContext);
- } else {
- return this.getTypedRuleContext(ExpressionContext,i);
- }
-};
-
-Analytic_windowed_functionContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Analytic_windowed_functionContext.prototype.over_clause = function() {
- return this.getTypedRuleContext(Over_clauseContext,0);
-};
-
-Analytic_windowed_functionContext.prototype.FIRST_VALUE = function() {
- return this.getToken(TSqlParser.FIRST_VALUE, 0);
-};
-
-Analytic_windowed_functionContext.prototype.LAST_VALUE = function() {
- return this.getToken(TSqlParser.LAST_VALUE, 0);
-};
-
-Analytic_windowed_functionContext.prototype.LAG = function() {
- return this.getToken(TSqlParser.LAG, 0);
-};
-
-Analytic_windowed_functionContext.prototype.LEAD = function() {
- return this.getToken(TSqlParser.LEAD, 0);
-};
-
-Analytic_windowed_functionContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Analytic_windowed_functionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAnalytic_windowed_function(this);
- }
-};
-
-Analytic_windowed_functionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAnalytic_windowed_function(this);
- }
-};
-
-Analytic_windowed_functionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAnalytic_windowed_function(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Analytic_windowed_functionContext = Analytic_windowed_functionContext;
-
-TSqlParser.prototype.analytic_windowed_function = function() {
-
- var localctx = new Analytic_windowed_functionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 874, TSqlParser.RULE_analytic_windowed_function);
- var _la = 0; // Token type
- try {
- this.state = 10146;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.LAST_VALUE:
- this.enterOuterAlt(localctx, 1);
- this.state = 10126;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.FIRST_VALUE || _la===TSqlParser.LAST_VALUE)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 10127;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 10128;
- this.expression(0);
- this.state = 10129;
- this.match(TSqlParser.RR_BRACKET);
- this.state = 10130;
- this.over_clause();
- break;
- case TSqlParser.LAG:
- case TSqlParser.LEAD:
- this.enterOuterAlt(localctx, 2);
- this.state = 10132;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.LAG || _la===TSqlParser.LEAD)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 10133;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 10134;
- this.expression(0);
- this.state = 10141;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 10135;
- this.match(TSqlParser.COMMA);
- this.state = 10136;
- this.expression(0);
- this.state = 10139;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 10137;
- this.match(TSqlParser.COMMA);
- this.state = 10138;
- this.expression(0);
- }
-
- }
-
- this.state = 10143;
- this.match(TSqlParser.RR_BRACKET);
- this.state = 10144;
- this.over_clause();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function All_distinct_expressionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_all_distinct_expression;
- return this;
-}
-
-All_distinct_expressionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-All_distinct_expressionContext.prototype.constructor = All_distinct_expressionContext;
-
-All_distinct_expressionContext.prototype.expression = function() {
- return this.getTypedRuleContext(ExpressionContext,0);
-};
-
-All_distinct_expressionContext.prototype.ALL = function() {
- return this.getToken(TSqlParser.ALL, 0);
-};
-
-All_distinct_expressionContext.prototype.DISTINCT = function() {
- return this.getToken(TSqlParser.DISTINCT, 0);
-};
-
-All_distinct_expressionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAll_distinct_expression(this);
- }
-};
-
-All_distinct_expressionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAll_distinct_expression(this);
- }
-};
-
-All_distinct_expressionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAll_distinct_expression(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.All_distinct_expressionContext = All_distinct_expressionContext;
-
-TSqlParser.prototype.all_distinct_expression = function() {
-
- var localctx = new All_distinct_expressionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 876, TSqlParser.RULE_all_distinct_expression);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 10149;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.ALL || _la===TSqlParser.DISTINCT) {
- this.state = 10148;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.ALL || _la===TSqlParser.DISTINCT)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- }
-
- this.state = 10151;
- this.expression(0);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Over_clauseContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_over_clause;
- return this;
-}
-
-Over_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Over_clauseContext.prototype.constructor = Over_clauseContext;
-
-Over_clauseContext.prototype.OVER = function() {
- return this.getToken(TSqlParser.OVER, 0);
-};
-
-Over_clauseContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Over_clauseContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Over_clauseContext.prototype.PARTITION = function() {
- return this.getToken(TSqlParser.PARTITION, 0);
-};
-
-Over_clauseContext.prototype.BY = function() {
- return this.getToken(TSqlParser.BY, 0);
-};
-
-Over_clauseContext.prototype.expression_list = function() {
- return this.getTypedRuleContext(Expression_listContext,0);
-};
-
-Over_clauseContext.prototype.order_by_clause = function() {
- return this.getTypedRuleContext(Order_by_clauseContext,0);
-};
-
-Over_clauseContext.prototype.row_or_range_clause = function() {
- return this.getTypedRuleContext(Row_or_range_clauseContext,0);
-};
-
-Over_clauseContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterOver_clause(this);
- }
-};
-
-Over_clauseContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitOver_clause(this);
- }
-};
-
-Over_clauseContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitOver_clause(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Over_clauseContext = Over_clauseContext;
-
-TSqlParser.prototype.over_clause = function() {
-
- var localctx = new Over_clauseContext(this, this._ctx, this.state);
- this.enterRule(localctx, 878, TSqlParser.RULE_over_clause);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 10153;
- this.match(TSqlParser.OVER);
- this.state = 10154;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 10158;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.PARTITION) {
- this.state = 10155;
- this.match(TSqlParser.PARTITION);
- this.state = 10156;
- this.match(TSqlParser.BY);
- this.state = 10157;
- this.expression_list();
- }
-
- this.state = 10161;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.ORDER) {
- this.state = 10160;
- this.order_by_clause();
- }
-
- this.state = 10164;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.RANGE || _la===TSqlParser.ROWS) {
- this.state = 10163;
- this.row_or_range_clause();
- }
-
- this.state = 10166;
- this.match(TSqlParser.RR_BRACKET);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Row_or_range_clauseContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_row_or_range_clause;
- return this;
-}
-
-Row_or_range_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Row_or_range_clauseContext.prototype.constructor = Row_or_range_clauseContext;
-
-Row_or_range_clauseContext.prototype.window_frame_extent = function() {
- return this.getTypedRuleContext(Window_frame_extentContext,0);
-};
-
-Row_or_range_clauseContext.prototype.ROWS = function() {
- return this.getToken(TSqlParser.ROWS, 0);
-};
-
-Row_or_range_clauseContext.prototype.RANGE = function() {
- return this.getToken(TSqlParser.RANGE, 0);
-};
-
-Row_or_range_clauseContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterRow_or_range_clause(this);
- }
-};
-
-Row_or_range_clauseContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitRow_or_range_clause(this);
- }
-};
-
-Row_or_range_clauseContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitRow_or_range_clause(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Row_or_range_clauseContext = Row_or_range_clauseContext;
-
-TSqlParser.prototype.row_or_range_clause = function() {
-
- var localctx = new Row_or_range_clauseContext(this, this._ctx, this.state);
- this.enterRule(localctx, 880, TSqlParser.RULE_row_or_range_clause);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 10168;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.RANGE || _la===TSqlParser.ROWS)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 10169;
- this.window_frame_extent();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Window_frame_extentContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_window_frame_extent;
- return this;
-}
-
-Window_frame_extentContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Window_frame_extentContext.prototype.constructor = Window_frame_extentContext;
-
-Window_frame_extentContext.prototype.window_frame_preceding = function() {
- return this.getTypedRuleContext(Window_frame_precedingContext,0);
-};
-
-Window_frame_extentContext.prototype.BETWEEN = function() {
- return this.getToken(TSqlParser.BETWEEN, 0);
-};
-
-Window_frame_extentContext.prototype.window_frame_bound = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Window_frame_boundContext);
- } else {
- return this.getTypedRuleContext(Window_frame_boundContext,i);
- }
-};
-
-Window_frame_extentContext.prototype.AND = function() {
- return this.getToken(TSqlParser.AND, 0);
-};
-
-Window_frame_extentContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterWindow_frame_extent(this);
- }
-};
-
-Window_frame_extentContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitWindow_frame_extent(this);
- }
-};
-
-Window_frame_extentContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitWindow_frame_extent(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Window_frame_extentContext = Window_frame_extentContext;
-
-TSqlParser.prototype.window_frame_extent = function() {
-
- var localctx = new Window_frame_extentContext(this, this._ctx, this.state);
- this.enterRule(localctx, 882, TSqlParser.RULE_window_frame_extent);
- try {
- this.state = 10177;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.CURRENT:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.DECIMAL:
- this.enterOuterAlt(localctx, 1);
- this.state = 10171;
- this.window_frame_preceding();
- break;
- case TSqlParser.BETWEEN:
- this.enterOuterAlt(localctx, 2);
- this.state = 10172;
- this.match(TSqlParser.BETWEEN);
- this.state = 10173;
- this.window_frame_bound();
- this.state = 10174;
- this.match(TSqlParser.AND);
- this.state = 10175;
- this.window_frame_bound();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Window_frame_boundContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_window_frame_bound;
- return this;
-}
-
-Window_frame_boundContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Window_frame_boundContext.prototype.constructor = Window_frame_boundContext;
-
-Window_frame_boundContext.prototype.window_frame_preceding = function() {
- return this.getTypedRuleContext(Window_frame_precedingContext,0);
-};
-
-Window_frame_boundContext.prototype.window_frame_following = function() {
- return this.getTypedRuleContext(Window_frame_followingContext,0);
-};
-
-Window_frame_boundContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterWindow_frame_bound(this);
- }
-};
-
-Window_frame_boundContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitWindow_frame_bound(this);
- }
-};
-
-Window_frame_boundContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitWindow_frame_bound(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Window_frame_boundContext = Window_frame_boundContext;
-
-TSqlParser.prototype.window_frame_bound = function() {
-
- var localctx = new Window_frame_boundContext(this, this._ctx, this.state);
- this.enterRule(localctx, 884, TSqlParser.RULE_window_frame_bound);
- try {
- this.state = 10181;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1425,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 10179;
- this.window_frame_preceding();
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 10180;
- this.window_frame_following();
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Window_frame_precedingContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_window_frame_preceding;
- return this;
-}
-
-Window_frame_precedingContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Window_frame_precedingContext.prototype.constructor = Window_frame_precedingContext;
-
-Window_frame_precedingContext.prototype.UNBOUNDED = function() {
- return this.getToken(TSqlParser.UNBOUNDED, 0);
-};
-
-Window_frame_precedingContext.prototype.PRECEDING = function() {
- return this.getToken(TSqlParser.PRECEDING, 0);
-};
-
-Window_frame_precedingContext.prototype.DECIMAL = function() {
- return this.getToken(TSqlParser.DECIMAL, 0);
-};
-
-Window_frame_precedingContext.prototype.CURRENT = function() {
- return this.getToken(TSqlParser.CURRENT, 0);
-};
-
-Window_frame_precedingContext.prototype.ROW = function() {
- return this.getToken(TSqlParser.ROW, 0);
-};
-
-Window_frame_precedingContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterWindow_frame_preceding(this);
- }
-};
-
-Window_frame_precedingContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitWindow_frame_preceding(this);
- }
-};
-
-Window_frame_precedingContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitWindow_frame_preceding(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Window_frame_precedingContext = Window_frame_precedingContext;
-
-TSqlParser.prototype.window_frame_preceding = function() {
-
- var localctx = new Window_frame_precedingContext(this, this._ctx, this.state);
- this.enterRule(localctx, 886, TSqlParser.RULE_window_frame_preceding);
- try {
- this.state = 10189;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.UNBOUNDED:
- this.enterOuterAlt(localctx, 1);
- this.state = 10183;
- this.match(TSqlParser.UNBOUNDED);
- this.state = 10184;
- this.match(TSqlParser.PRECEDING);
- break;
- case TSqlParser.DECIMAL:
- this.enterOuterAlt(localctx, 2);
- this.state = 10185;
- this.match(TSqlParser.DECIMAL);
- this.state = 10186;
- this.match(TSqlParser.PRECEDING);
- break;
- case TSqlParser.CURRENT:
- this.enterOuterAlt(localctx, 3);
- this.state = 10187;
- this.match(TSqlParser.CURRENT);
- this.state = 10188;
- this.match(TSqlParser.ROW);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Window_frame_followingContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_window_frame_following;
- return this;
-}
-
-Window_frame_followingContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Window_frame_followingContext.prototype.constructor = Window_frame_followingContext;
-
-Window_frame_followingContext.prototype.UNBOUNDED = function() {
- return this.getToken(TSqlParser.UNBOUNDED, 0);
-};
-
-Window_frame_followingContext.prototype.FOLLOWING = function() {
- return this.getToken(TSqlParser.FOLLOWING, 0);
-};
-
-Window_frame_followingContext.prototype.DECIMAL = function() {
- return this.getToken(TSqlParser.DECIMAL, 0);
-};
-
-Window_frame_followingContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterWindow_frame_following(this);
- }
-};
-
-Window_frame_followingContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitWindow_frame_following(this);
- }
-};
-
-Window_frame_followingContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitWindow_frame_following(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Window_frame_followingContext = Window_frame_followingContext;
-
-TSqlParser.prototype.window_frame_following = function() {
-
- var localctx = new Window_frame_followingContext(this, this._ctx, this.state);
- this.enterRule(localctx, 888, TSqlParser.RULE_window_frame_following);
- try {
- this.state = 10195;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.UNBOUNDED:
- this.enterOuterAlt(localctx, 1);
- this.state = 10191;
- this.match(TSqlParser.UNBOUNDED);
- this.state = 10192;
- this.match(TSqlParser.FOLLOWING);
- break;
- case TSqlParser.DECIMAL:
- this.enterOuterAlt(localctx, 2);
- this.state = 10193;
- this.match(TSqlParser.DECIMAL);
- this.state = 10194;
- this.match(TSqlParser.FOLLOWING);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Create_database_optionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_create_database_option;
- return this;
-}
-
-Create_database_optionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Create_database_optionContext.prototype.constructor = Create_database_optionContext;
-
-Create_database_optionContext.prototype.FILESTREAM = function() {
- return this.getToken(TSqlParser.FILESTREAM, 0);
-};
-
-Create_database_optionContext.prototype.database_filestream_option = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Database_filestream_optionContext);
- } else {
- return this.getTypedRuleContext(Database_filestream_optionContext,i);
- }
-};
-
-Create_database_optionContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Create_database_optionContext.prototype.DEFAULT_LANGUAGE = function() {
- return this.getToken(TSqlParser.DEFAULT_LANGUAGE, 0);
-};
-
-Create_database_optionContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Create_database_optionContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Create_database_optionContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Create_database_optionContext.prototype.DEFAULT_FULLTEXT_LANGUAGE = function() {
- return this.getToken(TSqlParser.DEFAULT_FULLTEXT_LANGUAGE, 0);
-};
-
-Create_database_optionContext.prototype.NESTED_TRIGGERS = function() {
- return this.getToken(TSqlParser.NESTED_TRIGGERS, 0);
-};
-
-Create_database_optionContext.prototype.OFF = function() {
- return this.getToken(TSqlParser.OFF, 0);
-};
-
-Create_database_optionContext.prototype.ON = function() {
- return this.getToken(TSqlParser.ON, 0);
-};
-
-Create_database_optionContext.prototype.TRANSFORM_NOISE_WORDS = function() {
- return this.getToken(TSqlParser.TRANSFORM_NOISE_WORDS, 0);
-};
-
-Create_database_optionContext.prototype.TWO_DIGIT_YEAR_CUTOFF = function() {
- return this.getToken(TSqlParser.TWO_DIGIT_YEAR_CUTOFF, 0);
-};
-
-Create_database_optionContext.prototype.DECIMAL = function() {
- return this.getToken(TSqlParser.DECIMAL, 0);
-};
-
-Create_database_optionContext.prototype.DB_CHAINING = function() {
- return this.getToken(TSqlParser.DB_CHAINING, 0);
-};
-
-Create_database_optionContext.prototype.TRUSTWORTHY = function() {
- return this.getToken(TSqlParser.TRUSTWORTHY, 0);
-};
-
-Create_database_optionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCreate_database_option(this);
- }
-};
-
-Create_database_optionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCreate_database_option(this);
- }
-};
-
-Create_database_optionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCreate_database_option(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Create_database_optionContext = Create_database_optionContext;
-
-TSqlParser.prototype.create_database_option = function() {
-
- var localctx = new Create_database_optionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 890, TSqlParser.RULE_create_database_option);
- var _la = 0; // Token type
- try {
- this.state = 10231;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.FILESTREAM:
- this.enterOuterAlt(localctx, 1);
- this.state = 10197;
- this.match(TSqlParser.FILESTREAM);
-
- this.state = 10198;
- this.database_filestream_option();
- this.state = 10203;
- this._errHandler.sync(this);
- var _alt = this._interp.adaptivePredict(this._input,1428,this._ctx)
- while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
- if(_alt===1) {
- this.state = 10199;
- this.match(TSqlParser.COMMA);
- this.state = 10200;
- this.database_filestream_option();
- }
- this.state = 10205;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,1428,this._ctx);
- }
-
- break;
- case TSqlParser.DEFAULT_LANGUAGE:
- this.enterOuterAlt(localctx, 2);
- this.state = 10206;
- this.match(TSqlParser.DEFAULT_LANGUAGE);
- this.state = 10207;
- this.match(TSqlParser.EQUAL);
- this.state = 10210;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.state = 10208;
- this.id();
- break;
- case TSqlParser.STRING:
- this.state = 10209;
- this.match(TSqlParser.STRING);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- this.enterOuterAlt(localctx, 3);
- this.state = 10212;
- this.match(TSqlParser.DEFAULT_FULLTEXT_LANGUAGE);
- this.state = 10213;
- this.match(TSqlParser.EQUAL);
- this.state = 10216;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.state = 10214;
- this.id();
- break;
- case TSqlParser.STRING:
- this.state = 10215;
- this.match(TSqlParser.STRING);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- break;
- case TSqlParser.NESTED_TRIGGERS:
- this.enterOuterAlt(localctx, 4);
- this.state = 10218;
- this.match(TSqlParser.NESTED_TRIGGERS);
- this.state = 10219;
- this.match(TSqlParser.EQUAL);
- this.state = 10220;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- this.enterOuterAlt(localctx, 5);
- this.state = 10221;
- this.match(TSqlParser.TRANSFORM_NOISE_WORDS);
- this.state = 10222;
- this.match(TSqlParser.EQUAL);
- this.state = 10223;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- this.enterOuterAlt(localctx, 6);
- this.state = 10224;
- this.match(TSqlParser.TWO_DIGIT_YEAR_CUTOFF);
- this.state = 10225;
- this.match(TSqlParser.EQUAL);
- this.state = 10226;
- this.match(TSqlParser.DECIMAL);
- break;
- case TSqlParser.DB_CHAINING:
- this.enterOuterAlt(localctx, 7);
- this.state = 10227;
- this.match(TSqlParser.DB_CHAINING);
- this.state = 10228;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- case TSqlParser.TRUSTWORTHY:
- this.enterOuterAlt(localctx, 8);
- this.state = 10229;
- this.match(TSqlParser.TRUSTWORTHY);
- this.state = 10230;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Database_filestream_optionContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_database_filestream_option;
- return this;
-}
-
-Database_filestream_optionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Database_filestream_optionContext.prototype.constructor = Database_filestream_optionContext;
-
-Database_filestream_optionContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Database_filestream_optionContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Database_filestream_optionContext.prototype.NON_TRANSACTED_ACCESS = function() {
- return this.getToken(TSqlParser.NON_TRANSACTED_ACCESS, 0);
-};
-
-Database_filestream_optionContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Database_filestream_optionContext.prototype.DIRECTORY_NAME = function() {
- return this.getToken(TSqlParser.DIRECTORY_NAME, 0);
-};
-
-Database_filestream_optionContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Database_filestream_optionContext.prototype.OFF = function() {
- return this.getToken(TSqlParser.OFF, 0);
-};
-
-Database_filestream_optionContext.prototype.READ_ONLY = function() {
- return this.getToken(TSqlParser.READ_ONLY, 0);
-};
-
-Database_filestream_optionContext.prototype.FULL = function() {
- return this.getToken(TSqlParser.FULL, 0);
-};
-
-Database_filestream_optionContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDatabase_filestream_option(this);
- }
-};
-
-Database_filestream_optionContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDatabase_filestream_option(this);
- }
-};
-
-Database_filestream_optionContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDatabase_filestream_option(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Database_filestream_optionContext = Database_filestream_optionContext;
-
-TSqlParser.prototype.database_filestream_option = function() {
-
- var localctx = new Database_filestream_optionContext(this, this._ctx, this.state);
- this.enterRule(localctx, 892, TSqlParser.RULE_database_filestream_option);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 10233;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 10240;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.NON_TRANSACTED_ACCESS:
- this.state = 10234;
- this.match(TSqlParser.NON_TRANSACTED_ACCESS);
- this.state = 10235;
- this.match(TSqlParser.EQUAL);
- this.state = 10236;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.FULL || _la===TSqlParser.OFF || _la===TSqlParser.READ_ONLY)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
- case TSqlParser.DIRECTORY_NAME:
- this.state = 10237;
- this.match(TSqlParser.DIRECTORY_NAME);
- this.state = 10238;
- this.match(TSqlParser.EQUAL);
- this.state = 10239;
- this.match(TSqlParser.STRING);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 10242;
- this.match(TSqlParser.RR_BRACKET);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Database_file_specContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_database_file_spec;
- return this;
-}
-
-Database_file_specContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Database_file_specContext.prototype.constructor = Database_file_specContext;
-
-Database_file_specContext.prototype.file_group = function() {
- return this.getTypedRuleContext(File_groupContext,0);
-};
-
-Database_file_specContext.prototype.file_spec = function() {
- return this.getTypedRuleContext(File_specContext,0);
-};
-
-Database_file_specContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDatabase_file_spec(this);
- }
-};
-
-Database_file_specContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDatabase_file_spec(this);
- }
-};
-
-Database_file_specContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDatabase_file_spec(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Database_file_specContext = Database_file_specContext;
-
-TSqlParser.prototype.database_file_spec = function() {
-
- var localctx = new Database_file_specContext(this, this._ctx, this.state);
- this.enterRule(localctx, 894, TSqlParser.RULE_database_file_spec);
- try {
- this.state = 10246;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.FILEGROUP:
- this.enterOuterAlt(localctx, 1);
- this.state = 10244;
- this.file_group();
- break;
- case TSqlParser.LR_BRACKET:
- this.enterOuterAlt(localctx, 2);
- this.state = 10245;
- this.file_spec();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function File_groupContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_file_group;
- return this;
-}
-
-File_groupContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-File_groupContext.prototype.constructor = File_groupContext;
-
-File_groupContext.prototype.FILEGROUP = function() {
- return this.getToken(TSqlParser.FILEGROUP, 0);
-};
-
-File_groupContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-File_groupContext.prototype.file_spec = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(File_specContext);
- } else {
- return this.getTypedRuleContext(File_specContext,i);
- }
-};
-
-File_groupContext.prototype.CONTAINS = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.CONTAINS);
- } else {
- return this.getToken(TSqlParser.CONTAINS, i);
- }
-};
-
-
-File_groupContext.prototype.FILESTREAM = function() {
- return this.getToken(TSqlParser.FILESTREAM, 0);
-};
-
-File_groupContext.prototype.DEFAULT = function() {
- return this.getToken(TSqlParser.DEFAULT, 0);
-};
-
-File_groupContext.prototype.MEMORY_OPTIMIZED_DATA = function() {
- return this.getToken(TSqlParser.MEMORY_OPTIMIZED_DATA, 0);
-};
-
-File_groupContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-File_groupContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterFile_group(this);
- }
-};
-
-File_groupContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitFile_group(this);
- }
-};
-
-File_groupContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitFile_group(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.File_groupContext = File_groupContext;
-
-TSqlParser.prototype.file_group = function() {
-
- var localctx = new File_groupContext(this, this._ctx, this.state);
- this.enterRule(localctx, 896, TSqlParser.RULE_file_group);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 10248;
- this.match(TSqlParser.FILEGROUP);
- this.state = 10249;
- this.id();
- this.state = 10252;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1434,this._ctx);
- if(la_===1) {
- this.state = 10250;
- this.match(TSqlParser.CONTAINS);
- this.state = 10251;
- this.match(TSqlParser.FILESTREAM);
-
- }
- this.state = 10255;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.DEFAULT) {
- this.state = 10254;
- this.match(TSqlParser.DEFAULT);
- }
-
- this.state = 10259;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.CONTAINS) {
- this.state = 10257;
- this.match(TSqlParser.CONTAINS);
- this.state = 10258;
- this.match(TSqlParser.MEMORY_OPTIMIZED_DATA);
- }
-
- this.state = 10261;
- this.file_spec();
- this.state = 10266;
- this._errHandler.sync(this);
- var _alt = this._interp.adaptivePredict(this._input,1437,this._ctx)
- while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
- if(_alt===1) {
- this.state = 10262;
- this.match(TSqlParser.COMMA);
- this.state = 10263;
- this.file_spec();
- }
- this.state = 10268;
- this._errHandler.sync(this);
- _alt = this._interp.adaptivePredict(this._input,1437,this._ctx);
- }
-
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function File_specContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_file_spec;
- this.file = null; // Token
- return this;
-}
-
-File_specContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-File_specContext.prototype.constructor = File_specContext;
-
-File_specContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-File_specContext.prototype.NAME = function() {
- return this.getToken(TSqlParser.NAME, 0);
-};
-
-File_specContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-File_specContext.prototype.FILENAME = function() {
- return this.getToken(TSqlParser.FILENAME, 0);
-};
-
-File_specContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-File_specContext.prototype.STRING = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.STRING);
- } else {
- return this.getToken(TSqlParser.STRING, i);
- }
-};
-
-
-File_specContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-File_specContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-File_specContext.prototype.SIZE = function() {
- return this.getToken(TSqlParser.SIZE, 0);
-};
-
-File_specContext.prototype.file_size = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(File_sizeContext);
- } else {
- return this.getTypedRuleContext(File_sizeContext,i);
- }
-};
-
-File_specContext.prototype.MAXSIZE = function() {
- return this.getToken(TSqlParser.MAXSIZE, 0);
-};
-
-File_specContext.prototype.FILEGROWTH = function() {
- return this.getToken(TSqlParser.FILEGROWTH, 0);
-};
-
-File_specContext.prototype.UNLIMITED = function() {
- return this.getToken(TSqlParser.UNLIMITED, 0);
-};
-
-File_specContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterFile_spec(this);
- }
-};
-
-File_specContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitFile_spec(this);
- }
-};
-
-File_specContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitFile_spec(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.File_specContext = File_specContext;
-
-TSqlParser.prototype.file_spec = function() {
-
- var localctx = new File_specContext(this, this._ctx, this.state);
- this.enterRule(localctx, 898, TSqlParser.RULE_file_spec);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 10269;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 10270;
- this.match(TSqlParser.NAME);
- this.state = 10271;
- this.match(TSqlParser.EQUAL);
- this.state = 10274;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.state = 10272;
- this.id();
- break;
- case TSqlParser.STRING:
- this.state = 10273;
- this.match(TSqlParser.STRING);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 10277;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 10276;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 10279;
- this.match(TSqlParser.FILENAME);
- this.state = 10280;
- this.match(TSqlParser.EQUAL);
- this.state = 10281;
- localctx.file = this.match(TSqlParser.STRING);
- this.state = 10283;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 10282;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 10291;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.SIZE) {
- this.state = 10285;
- this.match(TSqlParser.SIZE);
- this.state = 10286;
- this.match(TSqlParser.EQUAL);
- this.state = 10287;
- this.file_size();
- this.state = 10289;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 10288;
- this.match(TSqlParser.COMMA);
- }
-
- }
-
- this.state = 10302;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.MAXSIZE) {
- this.state = 10293;
- this.match(TSqlParser.MAXSIZE);
- this.state = 10294;
- this.match(TSqlParser.EQUAL);
- this.state = 10297;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.DECIMAL:
- this.state = 10295;
- this.file_size();
- break;
- case TSqlParser.UNLIMITED:
- this.state = 10296;
- this.match(TSqlParser.UNLIMITED);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- this.state = 10300;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 10299;
- this.match(TSqlParser.COMMA);
- }
-
- }
-
- this.state = 10310;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.FILEGROWTH) {
- this.state = 10304;
- this.match(TSqlParser.FILEGROWTH);
- this.state = 10305;
- this.match(TSqlParser.EQUAL);
- this.state = 10306;
- this.file_size();
- this.state = 10308;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 10307;
- this.match(TSqlParser.COMMA);
- }
-
- }
-
- this.state = 10312;
- this.match(TSqlParser.RR_BRACKET);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Entity_nameContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_entity_name;
- this.server = null; // IdContext
- this.database = null; // IdContext
- this.schema = null; // IdContext
- this.table = null; // IdContext
- return this;
-}
-
-Entity_nameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Entity_nameContext.prototype.constructor = Entity_nameContext;
-
-Entity_nameContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Entity_nameContext.prototype.DOT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DOT);
- } else {
- return this.getToken(TSqlParser.DOT, i);
- }
-};
-
-
-Entity_nameContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterEntity_name(this);
- }
-};
-
-Entity_nameContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitEntity_name(this);
- }
-};
-
-Entity_nameContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitEntity_name(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Entity_nameContext = Entity_nameContext;
-
-TSqlParser.prototype.entity_name = function() {
-
- var localctx = new Entity_nameContext(this, this._ctx, this.state);
- this.enterRule(localctx, 900, TSqlParser.RULE_entity_name);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 10331;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1449,this._ctx);
- if(la_===1) {
- this.state = 10314;
- localctx.server = this.id();
- this.state = 10315;
- this.match(TSqlParser.DOT);
- this.state = 10316;
- localctx.database = this.id();
- this.state = 10317;
- this.match(TSqlParser.DOT);
- this.state = 10318;
- localctx.schema = this.id();
- this.state = 10319;
- this.match(TSqlParser.DOT);
-
- } else if(la_===2) {
- this.state = 10321;
- localctx.database = this.id();
- this.state = 10322;
- this.match(TSqlParser.DOT);
- this.state = 10324;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.CALLED || _la===TSqlParser.DATA_COMPRESSION || ((((_la - 112)) & ~0x1f) == 0 && ((1 << (_la - 112)) & ((1 << (TSqlParser.EVENTDATA - 112)) | (1 << (TSqlParser.FILENAME - 112)) | (1 << (TSqlParser.FILLFACTOR - 112)) | (1 << (TSqlParser.FORCESEEK - 112)))) !== 0) || ((((_la - 158)) & ~0x1f) == 0 && ((1 << (_la - 158)) & ((1 << (TSqlParser.INIT - 158)) | (1 << (TSqlParser.KEY - 158)) | (1 << (TSqlParser.MASTER - 158)) | (1 << (TSqlParser.MAX_MEMORY - 158)))) !== 0) || _la===TSqlParser.OFFSETS || _la===TSqlParser.PAGE || ((((_la - 259)) & ~0x1f) == 0 && ((1 << (_la - 259)) & ((1 << (TSqlParser.PUBLIC - 259)) | (1 << (TSqlParser.R - 259)) | (1 << (TSqlParser.RAW - 259)) | (1 << (TSqlParser.RETURN - 259)) | (1 << (TSqlParser.RETURNS - 259)) | (1 << (TSqlParser.ROWCOUNT - 259)))) !== 0) || ((((_la - 295)) & ~0x1f) == 0 && ((1 << (_la - 295)) & ((1 << (TSqlParser.SAFETY - 295)) | (1 << (TSqlParser.SERVER - 295)) | (1 << (TSqlParser.SID - 295)) | (1 << (TSqlParser.SOURCE - 295)) | (1 << (TSqlParser.SPLIT - 295)))) !== 0) || ((((_la - 327)) & ~0x1f) == 0 && ((1 << (_la - 327)) & ((1 << (TSqlParser.STATE - 327)) | (1 << (TSqlParser.START - 327)) | (1 << (TSqlParser.TARGET - 327)))) !== 0) || ((((_la - 380)) & ~0x1f) == 0 && ((1 << (_la - 380)) & ((1 << (TSqlParser.ABSOLUTE - 380)) | (1 << (TSqlParser.ACCENT_SENSITIVITY - 380)) | (1 << (TSqlParser.ACTION - 380)) | (1 << (TSqlParser.ACTIVATION - 380)) | (1 << (TSqlParser.ACTIVE - 380)) | (1 << (TSqlParser.ADDRESS - 380)) | (1 << (TSqlParser.AES_128 - 380)) | (1 << (TSqlParser.AES_192 - 380)) | (1 << (TSqlParser.AES_256 - 380)) | (1 << (TSqlParser.AFFINITY - 380)) | (1 << (TSqlParser.AFTER - 380)) | (1 << (TSqlParser.AGGREGATE - 380)) | (1 << (TSqlParser.ALGORITHM - 380)) | (1 << (TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS - 380)) | (1 << (TSqlParser.ALLOW_SNAPSHOT_ISOLATION - 380)) | (1 << (TSqlParser.ALLOWED - 380)) | (1 << (TSqlParser.ANSI_NULL_DEFAULT - 380)) | (1 << (TSqlParser.ANSI_NULLS - 380)) | (1 << (TSqlParser.ANSI_PADDING - 380)) | (1 << (TSqlParser.ANSI_WARNINGS - 380)) | (1 << (TSqlParser.APPLICATION_LOG - 380)) | (1 << (TSqlParser.APPLY - 380)) | (1 << (TSqlParser.ARITHABORT - 380)) | (1 << (TSqlParser.ASSEMBLY - 380)) | (1 << (TSqlParser.AUDIT - 380)) | (1 << (TSqlParser.AUDIT_GUID - 380)) | (1 << (TSqlParser.AUTO - 380)) | (1 << (TSqlParser.AUTO_CLEANUP - 380)) | (1 << (TSqlParser.AUTO_CLOSE - 380)) | (1 << (TSqlParser.AUTO_CREATE_STATISTICS - 380)) | (1 << (TSqlParser.AUTO_SHRINK - 380)) | (1 << (TSqlParser.AUTO_UPDATE_STATISTICS - 380)))) !== 0) || ((((_la - 412)) & ~0x1f) == 0 && ((1 << (_la - 412)) & ((1 << (TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC - 412)) | (1 << (TSqlParser.AVAILABILITY - 412)) | (1 << (TSqlParser.AVG - 412)) | (1 << (TSqlParser.BACKUP_PRIORITY - 412)) | (1 << (TSqlParser.BEGIN_DIALOG - 412)) | (1 << (TSqlParser.BIGINT - 412)) | (1 << (TSqlParser.BINARY_BASE64 - 412)) | (1 << (TSqlParser.BINARY_CHECKSUM - 412)) | (1 << (TSqlParser.BINDING - 412)) | (1 << (TSqlParser.BLOB_STORAGE - 412)) | (1 << (TSqlParser.BROKER - 412)) | (1 << (TSqlParser.BROKER_INSTANCE - 412)) | (1 << (TSqlParser.BULK_LOGGED - 412)) | (1 << (TSqlParser.CALLER - 412)) | (1 << (TSqlParser.CAP_CPU_PERCENT - 412)) | (1 << (TSqlParser.CAST - 412)) | (1 << (TSqlParser.CATALOG - 412)) | (1 << (TSqlParser.CATCH - 412)) | (1 << (TSqlParser.CHANGE_RETENTION - 412)) | (1 << (TSqlParser.CHANGE_TRACKING - 412)) | (1 << (TSqlParser.CHECKSUM - 412)) | (1 << (TSqlParser.CHECKSUM_AGG - 412)) | (1 << (TSqlParser.CLEANUP - 412)) | (1 << (TSqlParser.COLLECTION - 412)) | (1 << (TSqlParser.COLUMN_MASTER_KEY - 412)) | (1 << (TSqlParser.COMMITTED - 412)) | (1 << (TSqlParser.COMPATIBILITY_LEVEL - 412)) | (1 << (TSqlParser.CONCAT - 412)) | (1 << (TSqlParser.CONCAT_NULL_YIELDS_NULL - 412)) | (1 << (TSqlParser.CONTENT - 412)) | (1 << (TSqlParser.CONTROL - 412)) | (1 << (TSqlParser.COOKIE - 412)))) !== 0) || ((((_la - 444)) & ~0x1f) == 0 && ((1 << (_la - 444)) & ((1 << (TSqlParser.COUNT - 444)) | (1 << (TSqlParser.COUNT_BIG - 444)) | (1 << (TSqlParser.COUNTER - 444)) | (1 << (TSqlParser.CPU - 444)) | (1 << (TSqlParser.CREATE_NEW - 444)) | (1 << (TSqlParser.CREATION_DISPOSITION - 444)) | (1 << (TSqlParser.CREDENTIAL - 444)) | (1 << (TSqlParser.CRYPTOGRAPHIC - 444)) | (1 << (TSqlParser.CURSOR_CLOSE_ON_COMMIT - 444)) | (1 << (TSqlParser.CURSOR_DEFAULT - 444)) | (1 << (TSqlParser.DATA - 444)) | (1 << (TSqlParser.DATE_CORRELATION_OPTIMIZATION - 444)) | (1 << (TSqlParser.DATEADD - 444)) | (1 << (TSqlParser.DATEDIFF - 444)) | (1 << (TSqlParser.DATENAME - 444)) | (1 << (TSqlParser.DATEPART - 444)) | (1 << (TSqlParser.DAYS - 444)) | (1 << (TSqlParser.DB_CHAINING - 444)) | (1 << (TSqlParser.DB_FAILOVER - 444)) | (1 << (TSqlParser.DECRYPTION - 444)) | (1 << (TSqlParser.DEFAULT_DOUBLE_QUOTE - 444)) | (1 << (TSqlParser.DEFAULT_FULLTEXT_LANGUAGE - 444)) | (1 << (TSqlParser.DEFAULT_LANGUAGE - 444)) | (1 << (TSqlParser.DELAY - 444)) | (1 << (TSqlParser.DELAYED_DURABILITY - 444)) | (1 << (TSqlParser.DELETED - 444)) | (1 << (TSqlParser.DENSE_RANK - 444)) | (1 << (TSqlParser.DEPENDENTS - 444)) | (1 << (TSqlParser.DES - 444)) | (1 << (TSqlParser.DESCRIPTION - 444)) | (1 << (TSqlParser.DESX - 444)) | (1 << (TSqlParser.DHCP - 444)))) !== 0) || ((((_la - 476)) & ~0x1f) == 0 && ((1 << (_la - 476)) & ((1 << (TSqlParser.DIALOG - 476)) | (1 << (TSqlParser.DIRECTORY_NAME - 476)) | (1 << (TSqlParser.DISABLE - 476)) | (1 << (TSqlParser.DISABLE_BROKER - 476)) | (1 << (TSqlParser.DISABLED - 476)) | (1 << (TSqlParser.DISK_DRIVE - 476)) | (1 << (TSqlParser.DOCUMENT - 476)) | (1 << (TSqlParser.DYNAMIC - 476)) | (1 << (TSqlParser.EMERGENCY - 476)) | (1 << (TSqlParser.EMPTY - 476)) | (1 << (TSqlParser.ENABLE - 476)) | (1 << (TSqlParser.ENABLE_BROKER - 476)) | (1 << (TSqlParser.ENCRYPTED_VALUE - 476)) | (1 << (TSqlParser.ENCRYPTION - 476)) | (1 << (TSqlParser.ENDPOINT_URL - 476)) | (1 << (TSqlParser.ERROR_BROKER_CONVERSATIONS - 476)) | (1 << (TSqlParser.EXCLUSIVE - 476)) | (1 << (TSqlParser.EXECUTABLE - 476)) | (1 << (TSqlParser.EXIST - 476)) | (1 << (TSqlParser.EXPAND - 476)) | (1 << (TSqlParser.EXPIRY_DATE - 476)) | (1 << (TSqlParser.EXPLICIT - 476)) | (1 << (TSqlParser.FAIL_OPERATION - 476)) | (1 << (TSqlParser.FAILOVER_MODE - 476)) | (1 << (TSqlParser.FAILURE - 476)) | (1 << (TSqlParser.FAILURE_CONDITION_LEVEL - 476)) | (1 << (TSqlParser.FAST - 476)) | (1 << (TSqlParser.FAST_FORWARD - 476)) | (1 << (TSqlParser.FILEGROUP - 476)) | (1 << (TSqlParser.FILEGROWTH - 476)) | (1 << (TSqlParser.FILEPATH - 476)))) !== 0) || ((((_la - 508)) & ~0x1f) == 0 && ((1 << (_la - 508)) & ((1 << (TSqlParser.FILESTREAM - 508)) | (1 << (TSqlParser.FILTER - 508)) | (1 << (TSqlParser.FIRST - 508)) | (1 << (TSqlParser.FIRST_VALUE - 508)) | (1 << (TSqlParser.FOLLOWING - 508)) | (1 << (TSqlParser.FORCE - 508)) | (1 << (TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS - 508)) | (1 << (TSqlParser.FORCED - 508)) | (1 << (TSqlParser.FORMAT - 508)) | (1 << (TSqlParser.FORWARD_ONLY - 508)) | (1 << (TSqlParser.FULLSCAN - 508)) | (1 << (TSqlParser.FULLTEXT - 508)) | (1 << (TSqlParser.GB - 508)) | (1 << (TSqlParser.GETDATE - 508)) | (1 << (TSqlParser.GETUTCDATE - 508)) | (1 << (TSqlParser.GLOBAL - 508)) | (1 << (TSqlParser.GO - 508)) | (1 << (TSqlParser.GROUP_MAX_REQUESTS - 508)) | (1 << (TSqlParser.GROUPING - 508)) | (1 << (TSqlParser.GROUPING_ID - 508)) | (1 << (TSqlParser.HADR - 508)) | (1 << (TSqlParser.HASH - 508)) | (1 << (TSqlParser.HEALTH_CHECK_TIMEOUT - 508)) | (1 << (TSqlParser.HIGH - 508)) | (1 << (TSqlParser.HONOR_BROKER_PRIORITY - 508)) | (1 << (TSqlParser.HOURS - 508)) | (1 << (TSqlParser.IDENTITY_VALUE - 508)) | (1 << (TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX - 508)) | (1 << (TSqlParser.IMMEDIATE - 508)) | (1 << (TSqlParser.IMPERSONATE - 508)) | (1 << (TSqlParser.IMPORTANCE - 508)))) !== 0) || ((((_la - 540)) & ~0x1f) == 0 && ((1 << (_la - 540)) & ((1 << (TSqlParser.INCREMENTAL - 540)) | (1 << (TSqlParser.INITIATOR - 540)) | (1 << (TSqlParser.INPUT - 540)) | (1 << (TSqlParser.INSENSITIVE - 540)) | (1 << (TSqlParser.INSERTED - 540)) | (1 << (TSqlParser.INT - 540)) | (1 << (TSqlParser.IP - 540)) | (1 << (TSqlParser.ISOLATION - 540)) | (1 << (TSqlParser.KB - 540)) | (1 << (TSqlParser.KEEP - 540)) | (1 << (TSqlParser.KEEPFIXED - 540)) | (1 << (TSqlParser.KEY_SOURCE - 540)) | (1 << (TSqlParser.KEYS - 540)) | (1 << (TSqlParser.KEYSET - 540)) | (1 << (TSqlParser.LAG - 540)) | (1 << (TSqlParser.LAST - 540)) | (1 << (TSqlParser.LAST_VALUE - 540)) | (1 << (TSqlParser.LEAD - 540)) | (1 << (TSqlParser.LEVEL - 540)) | (1 << (TSqlParser.LIST - 540)) | (1 << (TSqlParser.LISTENER - 540)) | (1 << (TSqlParser.LISTENER_URL - 540)) | (1 << (TSqlParser.LOB_COMPACTION - 540)) | (1 << (TSqlParser.LOCAL - 540)) | (1 << (TSqlParser.LOCATION - 540)) | (1 << (TSqlParser.LOCK - 540)) | (1 << (TSqlParser.LOCK_ESCALATION - 540)) | (1 << (TSqlParser.LOGIN - 540)) | (1 << (TSqlParser.LOOP - 540)) | (1 << (TSqlParser.LOW - 540)))) !== 0) || ((((_la - 572)) & ~0x1f) == 0 && ((1 << (_la - 572)) & ((1 << (TSqlParser.MANUAL - 572)) | (1 << (TSqlParser.MARK - 572)) | (1 << (TSqlParser.MATERIALIZED - 572)) | (1 << (TSqlParser.MAX - 572)) | (1 << (TSqlParser.MAX_CPU_PERCENT - 572)) | (1 << (TSqlParser.MAX_DOP - 572)) | (1 << (TSqlParser.MAX_FILES - 572)) | (1 << (TSqlParser.MAX_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MAX_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MAX_PROCESSES - 572)) | (1 << (TSqlParser.MAX_QUEUE_READERS - 572)) | (1 << (TSqlParser.MAX_ROLLOVER_FILES - 572)) | (1 << (TSqlParser.MAXDOP - 572)) | (1 << (TSqlParser.MAXRECURSION - 572)) | (1 << (TSqlParser.MAXSIZE - 572)) | (1 << (TSqlParser.MB - 572)) | (1 << (TSqlParser.MEDIUM - 572)) | (1 << (TSqlParser.MEMORY_OPTIMIZED_DATA - 572)) | (1 << (TSqlParser.MESSAGE - 572)) | (1 << (TSqlParser.MIN - 572)) | (1 << (TSqlParser.MIN_ACTIVE_ROWVERSION - 572)) | (1 << (TSqlParser.MIN_CPU_PERCENT - 572)) | (1 << (TSqlParser.MIN_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MIN_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MINUTES - 572)) | (1 << (TSqlParser.MIRROR_ADDRESS - 572)) | (1 << (TSqlParser.MIXED_PAGE_ALLOCATION - 572)) | (1 << (TSqlParser.MODE - 572)) | (1 << (TSqlParser.MODIFY - 572)) | (1 << (TSqlParser.MOVE - 572)) | (1 << (TSqlParser.MULTI_USER - 572)) | (1 << (TSqlParser.NAME - 572)))) !== 0) || ((((_la - 604)) & ~0x1f) == 0 && ((1 << (_la - 604)) & ((1 << (TSqlParser.NESTED_TRIGGERS - 604)) | (1 << (TSqlParser.NEW_ACCOUNT - 604)) | (1 << (TSqlParser.NEW_BROKER - 604)) | (1 << (TSqlParser.NEW_PASSWORD - 604)) | (1 << (TSqlParser.NEXT - 604)) | (1 << (TSqlParser.NO - 604)) | (1 << (TSqlParser.NO_TRUNCATE - 604)) | (1 << (TSqlParser.NO_WAIT - 604)) | (1 << (TSqlParser.NOCOUNT - 604)) | (1 << (TSqlParser.NODES - 604)) | (1 << (TSqlParser.NOEXPAND - 604)) | (1 << (TSqlParser.NON_TRANSACTED_ACCESS - 604)) | (1 << (TSqlParser.NORECOMPUTE - 604)) | (1 << (TSqlParser.NORECOVERY - 604)) | (1 << (TSqlParser.NOWAIT - 604)) | (1 << (TSqlParser.NTILE - 604)) | (1 << (TSqlParser.NUMANODE - 604)) | (1 << (TSqlParser.NUMBER - 604)) | (1 << (TSqlParser.NUMERIC_ROUNDABORT - 604)) | (1 << (TSqlParser.OBJECT - 604)) | (1 << (TSqlParser.OFFLINE - 604)) | (1 << (TSqlParser.OFFSET - 604)) | (1 << (TSqlParser.OLD_ACCOUNT - 604)) | (1 << (TSqlParser.ONLINE - 604)) | (1 << (TSqlParser.ONLY - 604)) | (1 << (TSqlParser.OPEN_EXISTING - 604)) | (1 << (TSqlParser.OPTIMISTIC - 604)) | (1 << (TSqlParser.OPTIMIZE - 604)) | (1 << (TSqlParser.OUT - 604)) | (1 << (TSqlParser.OUTPUT - 604)) | (1 << (TSqlParser.OWNER - 604)))) !== 0) || ((((_la - 636)) & ~0x1f) == 0 && ((1 << (_la - 636)) & ((1 << (TSqlParser.PAGE_VERIFY - 636)) | (1 << (TSqlParser.PARAMETERIZATION - 636)) | (1 << (TSqlParser.PARTITION - 636)) | (1 << (TSqlParser.PARTITIONS - 636)) | (1 << (TSqlParser.PARTNER - 636)) | (1 << (TSqlParser.PATH - 636)) | (1 << (TSqlParser.POISON_MESSAGE_HANDLING - 636)) | (1 << (TSqlParser.POOL - 636)) | (1 << (TSqlParser.PORT - 636)) | (1 << (TSqlParser.PRECEDING - 636)) | (1 << (TSqlParser.PRIMARY_ROLE - 636)) | (1 << (TSqlParser.PRIOR - 636)) | (1 << (TSqlParser.PRIORITY - 636)) | (1 << (TSqlParser.PRIORITY_LEVEL - 636)) | (1 << (TSqlParser.PRIVATE - 636)) | (1 << (TSqlParser.PRIVATE_KEY - 636)) | (1 << (TSqlParser.PRIVILEGES - 636)) | (1 << (TSqlParser.PROCEDURE_NAME - 636)) | (1 << (TSqlParser.PROPERTY - 636)) | (1 << (TSqlParser.PROVIDER - 636)) | (1 << (TSqlParser.PROVIDER_KEY_NAME - 636)) | (1 << (TSqlParser.QUERY - 636)) | (1 << (TSqlParser.QUEUE - 636)) | (1 << (TSqlParser.QUEUE_DELAY - 636)) | (1 << (TSqlParser.QUOTED_IDENTIFIER - 636)) | (1 << (TSqlParser.RANGE - 636)) | (1 << (TSqlParser.RANK - 636)) | (1 << (TSqlParser.RC2 - 636)) | (1 << (TSqlParser.RC4 - 636)) | (1 << (TSqlParser.RC4_128 - 636)) | (1 << (TSqlParser.READ_COMMITTED_SNAPSHOT - 636)) | (1 << (TSqlParser.READ_ONLY - 636)))) !== 0) || ((((_la - 668)) & ~0x1f) == 0 && ((1 << (_la - 668)) & ((1 << (TSqlParser.READ_ONLY_ROUTING_LIST - 668)) | (1 << (TSqlParser.READ_WRITE - 668)) | (1 << (TSqlParser.READONLY - 668)) | (1 << (TSqlParser.REBUILD - 668)) | (1 << (TSqlParser.RECEIVE - 668)) | (1 << (TSqlParser.RECOMPILE - 668)) | (1 << (TSqlParser.RECOVERY - 668)) | (1 << (TSqlParser.RECURSIVE_TRIGGERS - 668)) | (1 << (TSqlParser.RELATIVE - 668)) | (1 << (TSqlParser.REMOTE - 668)) | (1 << (TSqlParser.REMOTE_SERVICE_NAME - 668)) | (1 << (TSqlParser.REMOVE - 668)) | (1 << (TSqlParser.REORGANIZE - 668)) | (1 << (TSqlParser.REPEATABLE - 668)) | (1 << (TSqlParser.REPLICA - 668)) | (1 << (TSqlParser.REQUEST_MAX_CPU_TIME_SEC - 668)) | (1 << (TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT - 668)) | (1 << (TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC - 668)) | (1 << (TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT - 668)) | (1 << (TSqlParser.RESERVE_DISK_SPACE - 668)) | (1 << (TSqlParser.RESOURCE - 668)) | (1 << (TSqlParser.RESOURCE_MANAGER_LOCATION - 668)) | (1 << (TSqlParser.RESTRICTED_USER - 668)) | (1 << (TSqlParser.RETENTION - 668)) | (1 << (TSqlParser.ROBUST - 668)) | (1 << (TSqlParser.ROOT - 668)) | (1 << (TSqlParser.ROUTE - 668)) | (1 << (TSqlParser.ROW - 668)) | (1 << (TSqlParser.ROW_NUMBER - 668)) | (1 << (TSqlParser.ROWGUID - 668)) | (1 << (TSqlParser.ROWS - 668)) | (1 << (TSqlParser.SAMPLE - 668)))) !== 0) || ((((_la - 700)) & ~0x1f) == 0 && ((1 << (_la - 700)) & ((1 << (TSqlParser.SCHEMABINDING - 700)) | (1 << (TSqlParser.SCOPED - 700)) | (1 << (TSqlParser.SCROLL - 700)) | (1 << (TSqlParser.SCROLL_LOCKS - 700)) | (1 << (TSqlParser.SEARCH - 700)) | (1 << (TSqlParser.SECONDARY - 700)) | (1 << (TSqlParser.SECONDARY_ONLY - 700)) | (1 << (TSqlParser.SECONDARY_ROLE - 700)) | (1 << (TSqlParser.SECONDS - 700)) | (1 << (TSqlParser.SECRET - 700)) | (1 << (TSqlParser.SECURITY - 700)) | (1 << (TSqlParser.SECURITY_LOG - 700)) | (1 << (TSqlParser.SEEDING_MODE - 700)) | (1 << (TSqlParser.SELF - 700)) | (1 << (TSqlParser.SEMI_SENSITIVE - 700)) | (1 << (TSqlParser.SEND - 700)) | (1 << (TSqlParser.SENT - 700)) | (1 << (TSqlParser.SEQUENCE - 700)) | (1 << (TSqlParser.SERIALIZABLE - 700)) | (1 << (TSqlParser.SESSION_TIMEOUT - 700)) | (1 << (TSqlParser.SETERROR - 700)) | (1 << (TSqlParser.SHARE - 700)) | (1 << (TSqlParser.SHOWPLAN - 700)) | (1 << (TSqlParser.SIGNATURE - 700)) | (1 << (TSqlParser.SIMPLE - 700)) | (1 << (TSqlParser.SINGLE_USER - 700)) | (1 << (TSqlParser.SIZE - 700)) | (1 << (TSqlParser.SMALLINT - 700)) | (1 << (TSqlParser.SNAPSHOT - 700)) | (1 << (TSqlParser.SPATIAL_WINDOW_MAX_CELLS - 700)) | (1 << (TSqlParser.STANDBY - 700)) | (1 << (TSqlParser.START_DATE - 700)))) !== 0) || ((((_la - 732)) & ~0x1f) == 0 && ((1 << (_la - 732)) & ((1 << (TSqlParser.STATIC - 732)) | (1 << (TSqlParser.STATS_STREAM - 732)) | (1 << (TSqlParser.STATUS - 732)) | (1 << (TSqlParser.STDEV - 732)) | (1 << (TSqlParser.STDEVP - 732)) | (1 << (TSqlParser.STOPLIST - 732)) | (1 << (TSqlParser.STRING_AGG - 732)) | (1 << (TSqlParser.STUFF - 732)) | (1 << (TSqlParser.SUBJECT - 732)) | (1 << (TSqlParser.SUM - 732)) | (1 << (TSqlParser.SUSPEND - 732)) | (1 << (TSqlParser.SYMMETRIC - 732)) | (1 << (TSqlParser.SYNCHRONOUS_COMMIT - 732)) | (1 << (TSqlParser.SYNONYM - 732)) | (1 << (TSqlParser.SYSTEM - 732)) | (1 << (TSqlParser.TAKE - 732)) | (1 << (TSqlParser.TARGET_RECOVERY_TIME - 732)) | (1 << (TSqlParser.TB - 732)) | (1 << (TSqlParser.TEXTIMAGE_ON - 732)) | (1 << (TSqlParser.THROW - 732)) | (1 << (TSqlParser.TIES - 732)) | (1 << (TSqlParser.TIME - 732)) | (1 << (TSqlParser.TIMEOUT - 732)) | (1 << (TSqlParser.TIMER - 732)) | (1 << (TSqlParser.TINYINT - 732)) | (1 << (TSqlParser.TORN_PAGE_DETECTION - 732)) | (1 << (TSqlParser.TRANSFORM_NOISE_WORDS - 732)) | (1 << (TSqlParser.TRIPLE_DES - 732)) | (1 << (TSqlParser.TRIPLE_DES_3KEY - 732)) | (1 << (TSqlParser.TRUSTWORTHY - 732)))) !== 0) || ((((_la - 764)) & ~0x1f) == 0 && ((1 << (_la - 764)) & ((1 << (TSqlParser.TRY - 764)) | (1 << (TSqlParser.TSQL - 764)) | (1 << (TSqlParser.TWO_DIGIT_YEAR_CUTOFF - 764)) | (1 << (TSqlParser.TYPE - 764)) | (1 << (TSqlParser.TYPE_WARNING - 764)) | (1 << (TSqlParser.UNBOUNDED - 764)) | (1 << (TSqlParser.UNCOMMITTED - 764)) | (1 << (TSqlParser.UNKNOWN - 764)) | (1 << (TSqlParser.UNLIMITED - 764)) | (1 << (TSqlParser.USING - 764)) | (1 << (TSqlParser.VALID_XML - 764)) | (1 << (TSqlParser.VALIDATION - 764)) | (1 << (TSqlParser.VALUE - 764)) | (1 << (TSqlParser.VAR - 764)) | (1 << (TSqlParser.VARP - 764)) | (1 << (TSqlParser.VIEW_METADATA - 764)) | (1 << (TSqlParser.VIEWS - 764)) | (1 << (TSqlParser.WAIT - 764)) | (1 << (TSqlParser.WELL_FORMED_XML - 764)) | (1 << (TSqlParser.WORK - 764)) | (1 << (TSqlParser.WORKLOAD - 764)) | (1 << (TSqlParser.XML - 764)) | (1 << (TSqlParser.XMLNAMESPACES - 764)))) !== 0) || ((((_la - 796)) & ~0x1f) == 0 && ((1 << (_la - 796)) & ((1 << (TSqlParser.DOUBLE_QUOTE_ID - 796)) | (1 << (TSqlParser.SQUARE_BRACKET_ID - 796)) | (1 << (TSqlParser.ID - 796)))) !== 0)) {
- this.state = 10323;
- localctx.schema = this.id();
- }
-
- this.state = 10326;
- this.match(TSqlParser.DOT);
-
- } else if(la_===3) {
- this.state = 10328;
- localctx.schema = this.id();
- this.state = 10329;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 10333;
- localctx.table = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Entity_name_for_azure_dwContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_entity_name_for_azure_dw;
- this.schema = null; // IdContext
- this.object_name = null; // IdContext
- return this;
-}
-
-Entity_name_for_azure_dwContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Entity_name_for_azure_dwContext.prototype.constructor = Entity_name_for_azure_dwContext;
-
-Entity_name_for_azure_dwContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Entity_name_for_azure_dwContext.prototype.DOT = function() {
- return this.getToken(TSqlParser.DOT, 0);
-};
-
-Entity_name_for_azure_dwContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterEntity_name_for_azure_dw(this);
- }
-};
-
-Entity_name_for_azure_dwContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitEntity_name_for_azure_dw(this);
- }
-};
-
-Entity_name_for_azure_dwContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitEntity_name_for_azure_dw(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Entity_name_for_azure_dwContext = Entity_name_for_azure_dwContext;
-
-TSqlParser.prototype.entity_name_for_azure_dw = function() {
-
- var localctx = new Entity_name_for_azure_dwContext(this, this._ctx, this.state);
- this.enterRule(localctx, 902, TSqlParser.RULE_entity_name_for_azure_dw);
- try {
- this.state = 10340;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1450,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 10335;
- localctx.schema = this.id();
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 10336;
- localctx.schema = this.id();
- this.state = 10337;
- this.match(TSqlParser.DOT);
- this.state = 10338;
- localctx.object_name = this.id();
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Entity_name_for_parallel_dwContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_entity_name_for_parallel_dw;
- this.schema_database = null; // IdContext
- this.schema = null; // IdContext
- this.object_name = null; // IdContext
- return this;
-}
-
-Entity_name_for_parallel_dwContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Entity_name_for_parallel_dwContext.prototype.constructor = Entity_name_for_parallel_dwContext;
-
-Entity_name_for_parallel_dwContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Entity_name_for_parallel_dwContext.prototype.DOT = function() {
- return this.getToken(TSqlParser.DOT, 0);
-};
-
-Entity_name_for_parallel_dwContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterEntity_name_for_parallel_dw(this);
- }
-};
-
-Entity_name_for_parallel_dwContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitEntity_name_for_parallel_dw(this);
- }
-};
-
-Entity_name_for_parallel_dwContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitEntity_name_for_parallel_dw(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Entity_name_for_parallel_dwContext = Entity_name_for_parallel_dwContext;
-
-TSqlParser.prototype.entity_name_for_parallel_dw = function() {
-
- var localctx = new Entity_name_for_parallel_dwContext(this, this._ctx, this.state);
- this.enterRule(localctx, 904, TSqlParser.RULE_entity_name_for_parallel_dw);
- try {
- this.state = 10347;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1451,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 10342;
- localctx.schema_database = this.id();
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 10343;
- localctx.schema = this.id();
- this.state = 10344;
- this.match(TSqlParser.DOT);
- this.state = 10345;
- localctx.object_name = this.id();
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Full_table_nameContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_full_table_name;
- this.server = null; // IdContext
- this.database = null; // IdContext
- this.schema = null; // IdContext
- this.table = null; // IdContext
- return this;
-}
-
-Full_table_nameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Full_table_nameContext.prototype.constructor = Full_table_nameContext;
-
-Full_table_nameContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Full_table_nameContext.prototype.DOT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DOT);
- } else {
- return this.getToken(TSqlParser.DOT, i);
- }
-};
-
-
-Full_table_nameContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterFull_table_name(this);
- }
-};
-
-Full_table_nameContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitFull_table_name(this);
- }
-};
-
-Full_table_nameContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitFull_table_name(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Full_table_nameContext = Full_table_nameContext;
-
-TSqlParser.prototype.full_table_name = function() {
-
- var localctx = new Full_table_nameContext(this, this._ctx, this.state);
- this.enterRule(localctx, 906, TSqlParser.RULE_full_table_name);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 10366;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1453,this._ctx);
- if(la_===1) {
- this.state = 10349;
- localctx.server = this.id();
- this.state = 10350;
- this.match(TSqlParser.DOT);
- this.state = 10351;
- localctx.database = this.id();
- this.state = 10352;
- this.match(TSqlParser.DOT);
- this.state = 10353;
- localctx.schema = this.id();
- this.state = 10354;
- this.match(TSqlParser.DOT);
-
- } else if(la_===2) {
- this.state = 10356;
- localctx.database = this.id();
- this.state = 10357;
- this.match(TSqlParser.DOT);
- this.state = 10359;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.CALLED || _la===TSqlParser.DATA_COMPRESSION || ((((_la - 112)) & ~0x1f) == 0 && ((1 << (_la - 112)) & ((1 << (TSqlParser.EVENTDATA - 112)) | (1 << (TSqlParser.FILENAME - 112)) | (1 << (TSqlParser.FILLFACTOR - 112)) | (1 << (TSqlParser.FORCESEEK - 112)))) !== 0) || ((((_la - 158)) & ~0x1f) == 0 && ((1 << (_la - 158)) & ((1 << (TSqlParser.INIT - 158)) | (1 << (TSqlParser.KEY - 158)) | (1 << (TSqlParser.MASTER - 158)) | (1 << (TSqlParser.MAX_MEMORY - 158)))) !== 0) || _la===TSqlParser.OFFSETS || _la===TSqlParser.PAGE || ((((_la - 259)) & ~0x1f) == 0 && ((1 << (_la - 259)) & ((1 << (TSqlParser.PUBLIC - 259)) | (1 << (TSqlParser.R - 259)) | (1 << (TSqlParser.RAW - 259)) | (1 << (TSqlParser.RETURN - 259)) | (1 << (TSqlParser.RETURNS - 259)) | (1 << (TSqlParser.ROWCOUNT - 259)))) !== 0) || ((((_la - 295)) & ~0x1f) == 0 && ((1 << (_la - 295)) & ((1 << (TSqlParser.SAFETY - 295)) | (1 << (TSqlParser.SERVER - 295)) | (1 << (TSqlParser.SID - 295)) | (1 << (TSqlParser.SOURCE - 295)) | (1 << (TSqlParser.SPLIT - 295)))) !== 0) || ((((_la - 327)) & ~0x1f) == 0 && ((1 << (_la - 327)) & ((1 << (TSqlParser.STATE - 327)) | (1 << (TSqlParser.START - 327)) | (1 << (TSqlParser.TARGET - 327)))) !== 0) || ((((_la - 380)) & ~0x1f) == 0 && ((1 << (_la - 380)) & ((1 << (TSqlParser.ABSOLUTE - 380)) | (1 << (TSqlParser.ACCENT_SENSITIVITY - 380)) | (1 << (TSqlParser.ACTION - 380)) | (1 << (TSqlParser.ACTIVATION - 380)) | (1 << (TSqlParser.ACTIVE - 380)) | (1 << (TSqlParser.ADDRESS - 380)) | (1 << (TSqlParser.AES_128 - 380)) | (1 << (TSqlParser.AES_192 - 380)) | (1 << (TSqlParser.AES_256 - 380)) | (1 << (TSqlParser.AFFINITY - 380)) | (1 << (TSqlParser.AFTER - 380)) | (1 << (TSqlParser.AGGREGATE - 380)) | (1 << (TSqlParser.ALGORITHM - 380)) | (1 << (TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS - 380)) | (1 << (TSqlParser.ALLOW_SNAPSHOT_ISOLATION - 380)) | (1 << (TSqlParser.ALLOWED - 380)) | (1 << (TSqlParser.ANSI_NULL_DEFAULT - 380)) | (1 << (TSqlParser.ANSI_NULLS - 380)) | (1 << (TSqlParser.ANSI_PADDING - 380)) | (1 << (TSqlParser.ANSI_WARNINGS - 380)) | (1 << (TSqlParser.APPLICATION_LOG - 380)) | (1 << (TSqlParser.APPLY - 380)) | (1 << (TSqlParser.ARITHABORT - 380)) | (1 << (TSqlParser.ASSEMBLY - 380)) | (1 << (TSqlParser.AUDIT - 380)) | (1 << (TSqlParser.AUDIT_GUID - 380)) | (1 << (TSqlParser.AUTO - 380)) | (1 << (TSqlParser.AUTO_CLEANUP - 380)) | (1 << (TSqlParser.AUTO_CLOSE - 380)) | (1 << (TSqlParser.AUTO_CREATE_STATISTICS - 380)) | (1 << (TSqlParser.AUTO_SHRINK - 380)) | (1 << (TSqlParser.AUTO_UPDATE_STATISTICS - 380)))) !== 0) || ((((_la - 412)) & ~0x1f) == 0 && ((1 << (_la - 412)) & ((1 << (TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC - 412)) | (1 << (TSqlParser.AVAILABILITY - 412)) | (1 << (TSqlParser.AVG - 412)) | (1 << (TSqlParser.BACKUP_PRIORITY - 412)) | (1 << (TSqlParser.BEGIN_DIALOG - 412)) | (1 << (TSqlParser.BIGINT - 412)) | (1 << (TSqlParser.BINARY_BASE64 - 412)) | (1 << (TSqlParser.BINARY_CHECKSUM - 412)) | (1 << (TSqlParser.BINDING - 412)) | (1 << (TSqlParser.BLOB_STORAGE - 412)) | (1 << (TSqlParser.BROKER - 412)) | (1 << (TSqlParser.BROKER_INSTANCE - 412)) | (1 << (TSqlParser.BULK_LOGGED - 412)) | (1 << (TSqlParser.CALLER - 412)) | (1 << (TSqlParser.CAP_CPU_PERCENT - 412)) | (1 << (TSqlParser.CAST - 412)) | (1 << (TSqlParser.CATALOG - 412)) | (1 << (TSqlParser.CATCH - 412)) | (1 << (TSqlParser.CHANGE_RETENTION - 412)) | (1 << (TSqlParser.CHANGE_TRACKING - 412)) | (1 << (TSqlParser.CHECKSUM - 412)) | (1 << (TSqlParser.CHECKSUM_AGG - 412)) | (1 << (TSqlParser.CLEANUP - 412)) | (1 << (TSqlParser.COLLECTION - 412)) | (1 << (TSqlParser.COLUMN_MASTER_KEY - 412)) | (1 << (TSqlParser.COMMITTED - 412)) | (1 << (TSqlParser.COMPATIBILITY_LEVEL - 412)) | (1 << (TSqlParser.CONCAT - 412)) | (1 << (TSqlParser.CONCAT_NULL_YIELDS_NULL - 412)) | (1 << (TSqlParser.CONTENT - 412)) | (1 << (TSqlParser.CONTROL - 412)) | (1 << (TSqlParser.COOKIE - 412)))) !== 0) || ((((_la - 444)) & ~0x1f) == 0 && ((1 << (_la - 444)) & ((1 << (TSqlParser.COUNT - 444)) | (1 << (TSqlParser.COUNT_BIG - 444)) | (1 << (TSqlParser.COUNTER - 444)) | (1 << (TSqlParser.CPU - 444)) | (1 << (TSqlParser.CREATE_NEW - 444)) | (1 << (TSqlParser.CREATION_DISPOSITION - 444)) | (1 << (TSqlParser.CREDENTIAL - 444)) | (1 << (TSqlParser.CRYPTOGRAPHIC - 444)) | (1 << (TSqlParser.CURSOR_CLOSE_ON_COMMIT - 444)) | (1 << (TSqlParser.CURSOR_DEFAULT - 444)) | (1 << (TSqlParser.DATA - 444)) | (1 << (TSqlParser.DATE_CORRELATION_OPTIMIZATION - 444)) | (1 << (TSqlParser.DATEADD - 444)) | (1 << (TSqlParser.DATEDIFF - 444)) | (1 << (TSqlParser.DATENAME - 444)) | (1 << (TSqlParser.DATEPART - 444)) | (1 << (TSqlParser.DAYS - 444)) | (1 << (TSqlParser.DB_CHAINING - 444)) | (1 << (TSqlParser.DB_FAILOVER - 444)) | (1 << (TSqlParser.DECRYPTION - 444)) | (1 << (TSqlParser.DEFAULT_DOUBLE_QUOTE - 444)) | (1 << (TSqlParser.DEFAULT_FULLTEXT_LANGUAGE - 444)) | (1 << (TSqlParser.DEFAULT_LANGUAGE - 444)) | (1 << (TSqlParser.DELAY - 444)) | (1 << (TSqlParser.DELAYED_DURABILITY - 444)) | (1 << (TSqlParser.DELETED - 444)) | (1 << (TSqlParser.DENSE_RANK - 444)) | (1 << (TSqlParser.DEPENDENTS - 444)) | (1 << (TSqlParser.DES - 444)) | (1 << (TSqlParser.DESCRIPTION - 444)) | (1 << (TSqlParser.DESX - 444)) | (1 << (TSqlParser.DHCP - 444)))) !== 0) || ((((_la - 476)) & ~0x1f) == 0 && ((1 << (_la - 476)) & ((1 << (TSqlParser.DIALOG - 476)) | (1 << (TSqlParser.DIRECTORY_NAME - 476)) | (1 << (TSqlParser.DISABLE - 476)) | (1 << (TSqlParser.DISABLE_BROKER - 476)) | (1 << (TSqlParser.DISABLED - 476)) | (1 << (TSqlParser.DISK_DRIVE - 476)) | (1 << (TSqlParser.DOCUMENT - 476)) | (1 << (TSqlParser.DYNAMIC - 476)) | (1 << (TSqlParser.EMERGENCY - 476)) | (1 << (TSqlParser.EMPTY - 476)) | (1 << (TSqlParser.ENABLE - 476)) | (1 << (TSqlParser.ENABLE_BROKER - 476)) | (1 << (TSqlParser.ENCRYPTED_VALUE - 476)) | (1 << (TSqlParser.ENCRYPTION - 476)) | (1 << (TSqlParser.ENDPOINT_URL - 476)) | (1 << (TSqlParser.ERROR_BROKER_CONVERSATIONS - 476)) | (1 << (TSqlParser.EXCLUSIVE - 476)) | (1 << (TSqlParser.EXECUTABLE - 476)) | (1 << (TSqlParser.EXIST - 476)) | (1 << (TSqlParser.EXPAND - 476)) | (1 << (TSqlParser.EXPIRY_DATE - 476)) | (1 << (TSqlParser.EXPLICIT - 476)) | (1 << (TSqlParser.FAIL_OPERATION - 476)) | (1 << (TSqlParser.FAILOVER_MODE - 476)) | (1 << (TSqlParser.FAILURE - 476)) | (1 << (TSqlParser.FAILURE_CONDITION_LEVEL - 476)) | (1 << (TSqlParser.FAST - 476)) | (1 << (TSqlParser.FAST_FORWARD - 476)) | (1 << (TSqlParser.FILEGROUP - 476)) | (1 << (TSqlParser.FILEGROWTH - 476)) | (1 << (TSqlParser.FILEPATH - 476)))) !== 0) || ((((_la - 508)) & ~0x1f) == 0 && ((1 << (_la - 508)) & ((1 << (TSqlParser.FILESTREAM - 508)) | (1 << (TSqlParser.FILTER - 508)) | (1 << (TSqlParser.FIRST - 508)) | (1 << (TSqlParser.FIRST_VALUE - 508)) | (1 << (TSqlParser.FOLLOWING - 508)) | (1 << (TSqlParser.FORCE - 508)) | (1 << (TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS - 508)) | (1 << (TSqlParser.FORCED - 508)) | (1 << (TSqlParser.FORMAT - 508)) | (1 << (TSqlParser.FORWARD_ONLY - 508)) | (1 << (TSqlParser.FULLSCAN - 508)) | (1 << (TSqlParser.FULLTEXT - 508)) | (1 << (TSqlParser.GB - 508)) | (1 << (TSqlParser.GETDATE - 508)) | (1 << (TSqlParser.GETUTCDATE - 508)) | (1 << (TSqlParser.GLOBAL - 508)) | (1 << (TSqlParser.GO - 508)) | (1 << (TSqlParser.GROUP_MAX_REQUESTS - 508)) | (1 << (TSqlParser.GROUPING - 508)) | (1 << (TSqlParser.GROUPING_ID - 508)) | (1 << (TSqlParser.HADR - 508)) | (1 << (TSqlParser.HASH - 508)) | (1 << (TSqlParser.HEALTH_CHECK_TIMEOUT - 508)) | (1 << (TSqlParser.HIGH - 508)) | (1 << (TSqlParser.HONOR_BROKER_PRIORITY - 508)) | (1 << (TSqlParser.HOURS - 508)) | (1 << (TSqlParser.IDENTITY_VALUE - 508)) | (1 << (TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX - 508)) | (1 << (TSqlParser.IMMEDIATE - 508)) | (1 << (TSqlParser.IMPERSONATE - 508)) | (1 << (TSqlParser.IMPORTANCE - 508)))) !== 0) || ((((_la - 540)) & ~0x1f) == 0 && ((1 << (_la - 540)) & ((1 << (TSqlParser.INCREMENTAL - 540)) | (1 << (TSqlParser.INITIATOR - 540)) | (1 << (TSqlParser.INPUT - 540)) | (1 << (TSqlParser.INSENSITIVE - 540)) | (1 << (TSqlParser.INSERTED - 540)) | (1 << (TSqlParser.INT - 540)) | (1 << (TSqlParser.IP - 540)) | (1 << (TSqlParser.ISOLATION - 540)) | (1 << (TSqlParser.KB - 540)) | (1 << (TSqlParser.KEEP - 540)) | (1 << (TSqlParser.KEEPFIXED - 540)) | (1 << (TSqlParser.KEY_SOURCE - 540)) | (1 << (TSqlParser.KEYS - 540)) | (1 << (TSqlParser.KEYSET - 540)) | (1 << (TSqlParser.LAG - 540)) | (1 << (TSqlParser.LAST - 540)) | (1 << (TSqlParser.LAST_VALUE - 540)) | (1 << (TSqlParser.LEAD - 540)) | (1 << (TSqlParser.LEVEL - 540)) | (1 << (TSqlParser.LIST - 540)) | (1 << (TSqlParser.LISTENER - 540)) | (1 << (TSqlParser.LISTENER_URL - 540)) | (1 << (TSqlParser.LOB_COMPACTION - 540)) | (1 << (TSqlParser.LOCAL - 540)) | (1 << (TSqlParser.LOCATION - 540)) | (1 << (TSqlParser.LOCK - 540)) | (1 << (TSqlParser.LOCK_ESCALATION - 540)) | (1 << (TSqlParser.LOGIN - 540)) | (1 << (TSqlParser.LOOP - 540)) | (1 << (TSqlParser.LOW - 540)))) !== 0) || ((((_la - 572)) & ~0x1f) == 0 && ((1 << (_la - 572)) & ((1 << (TSqlParser.MANUAL - 572)) | (1 << (TSqlParser.MARK - 572)) | (1 << (TSqlParser.MATERIALIZED - 572)) | (1 << (TSqlParser.MAX - 572)) | (1 << (TSqlParser.MAX_CPU_PERCENT - 572)) | (1 << (TSqlParser.MAX_DOP - 572)) | (1 << (TSqlParser.MAX_FILES - 572)) | (1 << (TSqlParser.MAX_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MAX_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MAX_PROCESSES - 572)) | (1 << (TSqlParser.MAX_QUEUE_READERS - 572)) | (1 << (TSqlParser.MAX_ROLLOVER_FILES - 572)) | (1 << (TSqlParser.MAXDOP - 572)) | (1 << (TSqlParser.MAXRECURSION - 572)) | (1 << (TSqlParser.MAXSIZE - 572)) | (1 << (TSqlParser.MB - 572)) | (1 << (TSqlParser.MEDIUM - 572)) | (1 << (TSqlParser.MEMORY_OPTIMIZED_DATA - 572)) | (1 << (TSqlParser.MESSAGE - 572)) | (1 << (TSqlParser.MIN - 572)) | (1 << (TSqlParser.MIN_ACTIVE_ROWVERSION - 572)) | (1 << (TSqlParser.MIN_CPU_PERCENT - 572)) | (1 << (TSqlParser.MIN_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MIN_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MINUTES - 572)) | (1 << (TSqlParser.MIRROR_ADDRESS - 572)) | (1 << (TSqlParser.MIXED_PAGE_ALLOCATION - 572)) | (1 << (TSqlParser.MODE - 572)) | (1 << (TSqlParser.MODIFY - 572)) | (1 << (TSqlParser.MOVE - 572)) | (1 << (TSqlParser.MULTI_USER - 572)) | (1 << (TSqlParser.NAME - 572)))) !== 0) || ((((_la - 604)) & ~0x1f) == 0 && ((1 << (_la - 604)) & ((1 << (TSqlParser.NESTED_TRIGGERS - 604)) | (1 << (TSqlParser.NEW_ACCOUNT - 604)) | (1 << (TSqlParser.NEW_BROKER - 604)) | (1 << (TSqlParser.NEW_PASSWORD - 604)) | (1 << (TSqlParser.NEXT - 604)) | (1 << (TSqlParser.NO - 604)) | (1 << (TSqlParser.NO_TRUNCATE - 604)) | (1 << (TSqlParser.NO_WAIT - 604)) | (1 << (TSqlParser.NOCOUNT - 604)) | (1 << (TSqlParser.NODES - 604)) | (1 << (TSqlParser.NOEXPAND - 604)) | (1 << (TSqlParser.NON_TRANSACTED_ACCESS - 604)) | (1 << (TSqlParser.NORECOMPUTE - 604)) | (1 << (TSqlParser.NORECOVERY - 604)) | (1 << (TSqlParser.NOWAIT - 604)) | (1 << (TSqlParser.NTILE - 604)) | (1 << (TSqlParser.NUMANODE - 604)) | (1 << (TSqlParser.NUMBER - 604)) | (1 << (TSqlParser.NUMERIC_ROUNDABORT - 604)) | (1 << (TSqlParser.OBJECT - 604)) | (1 << (TSqlParser.OFFLINE - 604)) | (1 << (TSqlParser.OFFSET - 604)) | (1 << (TSqlParser.OLD_ACCOUNT - 604)) | (1 << (TSqlParser.ONLINE - 604)) | (1 << (TSqlParser.ONLY - 604)) | (1 << (TSqlParser.OPEN_EXISTING - 604)) | (1 << (TSqlParser.OPTIMISTIC - 604)) | (1 << (TSqlParser.OPTIMIZE - 604)) | (1 << (TSqlParser.OUT - 604)) | (1 << (TSqlParser.OUTPUT - 604)) | (1 << (TSqlParser.OWNER - 604)))) !== 0) || ((((_la - 636)) & ~0x1f) == 0 && ((1 << (_la - 636)) & ((1 << (TSqlParser.PAGE_VERIFY - 636)) | (1 << (TSqlParser.PARAMETERIZATION - 636)) | (1 << (TSqlParser.PARTITION - 636)) | (1 << (TSqlParser.PARTITIONS - 636)) | (1 << (TSqlParser.PARTNER - 636)) | (1 << (TSqlParser.PATH - 636)) | (1 << (TSqlParser.POISON_MESSAGE_HANDLING - 636)) | (1 << (TSqlParser.POOL - 636)) | (1 << (TSqlParser.PORT - 636)) | (1 << (TSqlParser.PRECEDING - 636)) | (1 << (TSqlParser.PRIMARY_ROLE - 636)) | (1 << (TSqlParser.PRIOR - 636)) | (1 << (TSqlParser.PRIORITY - 636)) | (1 << (TSqlParser.PRIORITY_LEVEL - 636)) | (1 << (TSqlParser.PRIVATE - 636)) | (1 << (TSqlParser.PRIVATE_KEY - 636)) | (1 << (TSqlParser.PRIVILEGES - 636)) | (1 << (TSqlParser.PROCEDURE_NAME - 636)) | (1 << (TSqlParser.PROPERTY - 636)) | (1 << (TSqlParser.PROVIDER - 636)) | (1 << (TSqlParser.PROVIDER_KEY_NAME - 636)) | (1 << (TSqlParser.QUERY - 636)) | (1 << (TSqlParser.QUEUE - 636)) | (1 << (TSqlParser.QUEUE_DELAY - 636)) | (1 << (TSqlParser.QUOTED_IDENTIFIER - 636)) | (1 << (TSqlParser.RANGE - 636)) | (1 << (TSqlParser.RANK - 636)) | (1 << (TSqlParser.RC2 - 636)) | (1 << (TSqlParser.RC4 - 636)) | (1 << (TSqlParser.RC4_128 - 636)) | (1 << (TSqlParser.READ_COMMITTED_SNAPSHOT - 636)) | (1 << (TSqlParser.READ_ONLY - 636)))) !== 0) || ((((_la - 668)) & ~0x1f) == 0 && ((1 << (_la - 668)) & ((1 << (TSqlParser.READ_ONLY_ROUTING_LIST - 668)) | (1 << (TSqlParser.READ_WRITE - 668)) | (1 << (TSqlParser.READONLY - 668)) | (1 << (TSqlParser.REBUILD - 668)) | (1 << (TSqlParser.RECEIVE - 668)) | (1 << (TSqlParser.RECOMPILE - 668)) | (1 << (TSqlParser.RECOVERY - 668)) | (1 << (TSqlParser.RECURSIVE_TRIGGERS - 668)) | (1 << (TSqlParser.RELATIVE - 668)) | (1 << (TSqlParser.REMOTE - 668)) | (1 << (TSqlParser.REMOTE_SERVICE_NAME - 668)) | (1 << (TSqlParser.REMOVE - 668)) | (1 << (TSqlParser.REORGANIZE - 668)) | (1 << (TSqlParser.REPEATABLE - 668)) | (1 << (TSqlParser.REPLICA - 668)) | (1 << (TSqlParser.REQUEST_MAX_CPU_TIME_SEC - 668)) | (1 << (TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT - 668)) | (1 << (TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC - 668)) | (1 << (TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT - 668)) | (1 << (TSqlParser.RESERVE_DISK_SPACE - 668)) | (1 << (TSqlParser.RESOURCE - 668)) | (1 << (TSqlParser.RESOURCE_MANAGER_LOCATION - 668)) | (1 << (TSqlParser.RESTRICTED_USER - 668)) | (1 << (TSqlParser.RETENTION - 668)) | (1 << (TSqlParser.ROBUST - 668)) | (1 << (TSqlParser.ROOT - 668)) | (1 << (TSqlParser.ROUTE - 668)) | (1 << (TSqlParser.ROW - 668)) | (1 << (TSqlParser.ROW_NUMBER - 668)) | (1 << (TSqlParser.ROWGUID - 668)) | (1 << (TSqlParser.ROWS - 668)) | (1 << (TSqlParser.SAMPLE - 668)))) !== 0) || ((((_la - 700)) & ~0x1f) == 0 && ((1 << (_la - 700)) & ((1 << (TSqlParser.SCHEMABINDING - 700)) | (1 << (TSqlParser.SCOPED - 700)) | (1 << (TSqlParser.SCROLL - 700)) | (1 << (TSqlParser.SCROLL_LOCKS - 700)) | (1 << (TSqlParser.SEARCH - 700)) | (1 << (TSqlParser.SECONDARY - 700)) | (1 << (TSqlParser.SECONDARY_ONLY - 700)) | (1 << (TSqlParser.SECONDARY_ROLE - 700)) | (1 << (TSqlParser.SECONDS - 700)) | (1 << (TSqlParser.SECRET - 700)) | (1 << (TSqlParser.SECURITY - 700)) | (1 << (TSqlParser.SECURITY_LOG - 700)) | (1 << (TSqlParser.SEEDING_MODE - 700)) | (1 << (TSqlParser.SELF - 700)) | (1 << (TSqlParser.SEMI_SENSITIVE - 700)) | (1 << (TSqlParser.SEND - 700)) | (1 << (TSqlParser.SENT - 700)) | (1 << (TSqlParser.SEQUENCE - 700)) | (1 << (TSqlParser.SERIALIZABLE - 700)) | (1 << (TSqlParser.SESSION_TIMEOUT - 700)) | (1 << (TSqlParser.SETERROR - 700)) | (1 << (TSqlParser.SHARE - 700)) | (1 << (TSqlParser.SHOWPLAN - 700)) | (1 << (TSqlParser.SIGNATURE - 700)) | (1 << (TSqlParser.SIMPLE - 700)) | (1 << (TSqlParser.SINGLE_USER - 700)) | (1 << (TSqlParser.SIZE - 700)) | (1 << (TSqlParser.SMALLINT - 700)) | (1 << (TSqlParser.SNAPSHOT - 700)) | (1 << (TSqlParser.SPATIAL_WINDOW_MAX_CELLS - 700)) | (1 << (TSqlParser.STANDBY - 700)) | (1 << (TSqlParser.START_DATE - 700)))) !== 0) || ((((_la - 732)) & ~0x1f) == 0 && ((1 << (_la - 732)) & ((1 << (TSqlParser.STATIC - 732)) | (1 << (TSqlParser.STATS_STREAM - 732)) | (1 << (TSqlParser.STATUS - 732)) | (1 << (TSqlParser.STDEV - 732)) | (1 << (TSqlParser.STDEVP - 732)) | (1 << (TSqlParser.STOPLIST - 732)) | (1 << (TSqlParser.STRING_AGG - 732)) | (1 << (TSqlParser.STUFF - 732)) | (1 << (TSqlParser.SUBJECT - 732)) | (1 << (TSqlParser.SUM - 732)) | (1 << (TSqlParser.SUSPEND - 732)) | (1 << (TSqlParser.SYMMETRIC - 732)) | (1 << (TSqlParser.SYNCHRONOUS_COMMIT - 732)) | (1 << (TSqlParser.SYNONYM - 732)) | (1 << (TSqlParser.SYSTEM - 732)) | (1 << (TSqlParser.TAKE - 732)) | (1 << (TSqlParser.TARGET_RECOVERY_TIME - 732)) | (1 << (TSqlParser.TB - 732)) | (1 << (TSqlParser.TEXTIMAGE_ON - 732)) | (1 << (TSqlParser.THROW - 732)) | (1 << (TSqlParser.TIES - 732)) | (1 << (TSqlParser.TIME - 732)) | (1 << (TSqlParser.TIMEOUT - 732)) | (1 << (TSqlParser.TIMER - 732)) | (1 << (TSqlParser.TINYINT - 732)) | (1 << (TSqlParser.TORN_PAGE_DETECTION - 732)) | (1 << (TSqlParser.TRANSFORM_NOISE_WORDS - 732)) | (1 << (TSqlParser.TRIPLE_DES - 732)) | (1 << (TSqlParser.TRIPLE_DES_3KEY - 732)) | (1 << (TSqlParser.TRUSTWORTHY - 732)))) !== 0) || ((((_la - 764)) & ~0x1f) == 0 && ((1 << (_la - 764)) & ((1 << (TSqlParser.TRY - 764)) | (1 << (TSqlParser.TSQL - 764)) | (1 << (TSqlParser.TWO_DIGIT_YEAR_CUTOFF - 764)) | (1 << (TSqlParser.TYPE - 764)) | (1 << (TSqlParser.TYPE_WARNING - 764)) | (1 << (TSqlParser.UNBOUNDED - 764)) | (1 << (TSqlParser.UNCOMMITTED - 764)) | (1 << (TSqlParser.UNKNOWN - 764)) | (1 << (TSqlParser.UNLIMITED - 764)) | (1 << (TSqlParser.USING - 764)) | (1 << (TSqlParser.VALID_XML - 764)) | (1 << (TSqlParser.VALIDATION - 764)) | (1 << (TSqlParser.VALUE - 764)) | (1 << (TSqlParser.VAR - 764)) | (1 << (TSqlParser.VARP - 764)) | (1 << (TSqlParser.VIEW_METADATA - 764)) | (1 << (TSqlParser.VIEWS - 764)) | (1 << (TSqlParser.WAIT - 764)) | (1 << (TSqlParser.WELL_FORMED_XML - 764)) | (1 << (TSqlParser.WORK - 764)) | (1 << (TSqlParser.WORKLOAD - 764)) | (1 << (TSqlParser.XML - 764)) | (1 << (TSqlParser.XMLNAMESPACES - 764)))) !== 0) || ((((_la - 796)) & ~0x1f) == 0 && ((1 << (_la - 796)) & ((1 << (TSqlParser.DOUBLE_QUOTE_ID - 796)) | (1 << (TSqlParser.SQUARE_BRACKET_ID - 796)) | (1 << (TSqlParser.ID - 796)))) !== 0)) {
- this.state = 10358;
- localctx.schema = this.id();
- }
-
- this.state = 10361;
- this.match(TSqlParser.DOT);
-
- } else if(la_===3) {
- this.state = 10363;
- localctx.schema = this.id();
- this.state = 10364;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 10368;
- localctx.table = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Table_nameContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_table_name;
- this.database = null; // IdContext
- this.schema = null; // IdContext
- this.table = null; // IdContext
- return this;
-}
-
-Table_nameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Table_nameContext.prototype.constructor = Table_nameContext;
-
-Table_nameContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Table_nameContext.prototype.DOT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DOT);
- } else {
- return this.getToken(TSqlParser.DOT, i);
- }
-};
-
-
-Table_nameContext.prototype.BLOCKING_HIERARCHY = function() {
- return this.getToken(TSqlParser.BLOCKING_HIERARCHY, 0);
-};
-
-Table_nameContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterTable_name(this);
- }
-};
-
-Table_nameContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitTable_name(this);
- }
-};
-
-Table_nameContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitTable_name(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Table_nameContext = Table_nameContext;
-
-TSqlParser.prototype.table_name = function() {
-
- var localctx = new Table_nameContext(this, this._ctx, this.state);
- this.enterRule(localctx, 908, TSqlParser.RULE_table_name);
- var _la = 0; // Token type
- try {
- this.state = 10396;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1458,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 10380;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1455,this._ctx);
- if(la_===1) {
- this.state = 10370;
- localctx.database = this.id();
- this.state = 10371;
- this.match(TSqlParser.DOT);
- this.state = 10373;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.CALLED || _la===TSqlParser.DATA_COMPRESSION || ((((_la - 112)) & ~0x1f) == 0 && ((1 << (_la - 112)) & ((1 << (TSqlParser.EVENTDATA - 112)) | (1 << (TSqlParser.FILENAME - 112)) | (1 << (TSqlParser.FILLFACTOR - 112)) | (1 << (TSqlParser.FORCESEEK - 112)))) !== 0) || ((((_la - 158)) & ~0x1f) == 0 && ((1 << (_la - 158)) & ((1 << (TSqlParser.INIT - 158)) | (1 << (TSqlParser.KEY - 158)) | (1 << (TSqlParser.MASTER - 158)) | (1 << (TSqlParser.MAX_MEMORY - 158)))) !== 0) || _la===TSqlParser.OFFSETS || _la===TSqlParser.PAGE || ((((_la - 259)) & ~0x1f) == 0 && ((1 << (_la - 259)) & ((1 << (TSqlParser.PUBLIC - 259)) | (1 << (TSqlParser.R - 259)) | (1 << (TSqlParser.RAW - 259)) | (1 << (TSqlParser.RETURN - 259)) | (1 << (TSqlParser.RETURNS - 259)) | (1 << (TSqlParser.ROWCOUNT - 259)))) !== 0) || ((((_la - 295)) & ~0x1f) == 0 && ((1 << (_la - 295)) & ((1 << (TSqlParser.SAFETY - 295)) | (1 << (TSqlParser.SERVER - 295)) | (1 << (TSqlParser.SID - 295)) | (1 << (TSqlParser.SOURCE - 295)) | (1 << (TSqlParser.SPLIT - 295)))) !== 0) || ((((_la - 327)) & ~0x1f) == 0 && ((1 << (_la - 327)) & ((1 << (TSqlParser.STATE - 327)) | (1 << (TSqlParser.START - 327)) | (1 << (TSqlParser.TARGET - 327)))) !== 0) || ((((_la - 380)) & ~0x1f) == 0 && ((1 << (_la - 380)) & ((1 << (TSqlParser.ABSOLUTE - 380)) | (1 << (TSqlParser.ACCENT_SENSITIVITY - 380)) | (1 << (TSqlParser.ACTION - 380)) | (1 << (TSqlParser.ACTIVATION - 380)) | (1 << (TSqlParser.ACTIVE - 380)) | (1 << (TSqlParser.ADDRESS - 380)) | (1 << (TSqlParser.AES_128 - 380)) | (1 << (TSqlParser.AES_192 - 380)) | (1 << (TSqlParser.AES_256 - 380)) | (1 << (TSqlParser.AFFINITY - 380)) | (1 << (TSqlParser.AFTER - 380)) | (1 << (TSqlParser.AGGREGATE - 380)) | (1 << (TSqlParser.ALGORITHM - 380)) | (1 << (TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS - 380)) | (1 << (TSqlParser.ALLOW_SNAPSHOT_ISOLATION - 380)) | (1 << (TSqlParser.ALLOWED - 380)) | (1 << (TSqlParser.ANSI_NULL_DEFAULT - 380)) | (1 << (TSqlParser.ANSI_NULLS - 380)) | (1 << (TSqlParser.ANSI_PADDING - 380)) | (1 << (TSqlParser.ANSI_WARNINGS - 380)) | (1 << (TSqlParser.APPLICATION_LOG - 380)) | (1 << (TSqlParser.APPLY - 380)) | (1 << (TSqlParser.ARITHABORT - 380)) | (1 << (TSqlParser.ASSEMBLY - 380)) | (1 << (TSqlParser.AUDIT - 380)) | (1 << (TSqlParser.AUDIT_GUID - 380)) | (1 << (TSqlParser.AUTO - 380)) | (1 << (TSqlParser.AUTO_CLEANUP - 380)) | (1 << (TSqlParser.AUTO_CLOSE - 380)) | (1 << (TSqlParser.AUTO_CREATE_STATISTICS - 380)) | (1 << (TSqlParser.AUTO_SHRINK - 380)) | (1 << (TSqlParser.AUTO_UPDATE_STATISTICS - 380)))) !== 0) || ((((_la - 412)) & ~0x1f) == 0 && ((1 << (_la - 412)) & ((1 << (TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC - 412)) | (1 << (TSqlParser.AVAILABILITY - 412)) | (1 << (TSqlParser.AVG - 412)) | (1 << (TSqlParser.BACKUP_PRIORITY - 412)) | (1 << (TSqlParser.BEGIN_DIALOG - 412)) | (1 << (TSqlParser.BIGINT - 412)) | (1 << (TSqlParser.BINARY_BASE64 - 412)) | (1 << (TSqlParser.BINARY_CHECKSUM - 412)) | (1 << (TSqlParser.BINDING - 412)) | (1 << (TSqlParser.BLOB_STORAGE - 412)) | (1 << (TSqlParser.BROKER - 412)) | (1 << (TSqlParser.BROKER_INSTANCE - 412)) | (1 << (TSqlParser.BULK_LOGGED - 412)) | (1 << (TSqlParser.CALLER - 412)) | (1 << (TSqlParser.CAP_CPU_PERCENT - 412)) | (1 << (TSqlParser.CAST - 412)) | (1 << (TSqlParser.CATALOG - 412)) | (1 << (TSqlParser.CATCH - 412)) | (1 << (TSqlParser.CHANGE_RETENTION - 412)) | (1 << (TSqlParser.CHANGE_TRACKING - 412)) | (1 << (TSqlParser.CHECKSUM - 412)) | (1 << (TSqlParser.CHECKSUM_AGG - 412)) | (1 << (TSqlParser.CLEANUP - 412)) | (1 << (TSqlParser.COLLECTION - 412)) | (1 << (TSqlParser.COLUMN_MASTER_KEY - 412)) | (1 << (TSqlParser.COMMITTED - 412)) | (1 << (TSqlParser.COMPATIBILITY_LEVEL - 412)) | (1 << (TSqlParser.CONCAT - 412)) | (1 << (TSqlParser.CONCAT_NULL_YIELDS_NULL - 412)) | (1 << (TSqlParser.CONTENT - 412)) | (1 << (TSqlParser.CONTROL - 412)) | (1 << (TSqlParser.COOKIE - 412)))) !== 0) || ((((_la - 444)) & ~0x1f) == 0 && ((1 << (_la - 444)) & ((1 << (TSqlParser.COUNT - 444)) | (1 << (TSqlParser.COUNT_BIG - 444)) | (1 << (TSqlParser.COUNTER - 444)) | (1 << (TSqlParser.CPU - 444)) | (1 << (TSqlParser.CREATE_NEW - 444)) | (1 << (TSqlParser.CREATION_DISPOSITION - 444)) | (1 << (TSqlParser.CREDENTIAL - 444)) | (1 << (TSqlParser.CRYPTOGRAPHIC - 444)) | (1 << (TSqlParser.CURSOR_CLOSE_ON_COMMIT - 444)) | (1 << (TSqlParser.CURSOR_DEFAULT - 444)) | (1 << (TSqlParser.DATA - 444)) | (1 << (TSqlParser.DATE_CORRELATION_OPTIMIZATION - 444)) | (1 << (TSqlParser.DATEADD - 444)) | (1 << (TSqlParser.DATEDIFF - 444)) | (1 << (TSqlParser.DATENAME - 444)) | (1 << (TSqlParser.DATEPART - 444)) | (1 << (TSqlParser.DAYS - 444)) | (1 << (TSqlParser.DB_CHAINING - 444)) | (1 << (TSqlParser.DB_FAILOVER - 444)) | (1 << (TSqlParser.DECRYPTION - 444)) | (1 << (TSqlParser.DEFAULT_DOUBLE_QUOTE - 444)) | (1 << (TSqlParser.DEFAULT_FULLTEXT_LANGUAGE - 444)) | (1 << (TSqlParser.DEFAULT_LANGUAGE - 444)) | (1 << (TSqlParser.DELAY - 444)) | (1 << (TSqlParser.DELAYED_DURABILITY - 444)) | (1 << (TSqlParser.DELETED - 444)) | (1 << (TSqlParser.DENSE_RANK - 444)) | (1 << (TSqlParser.DEPENDENTS - 444)) | (1 << (TSqlParser.DES - 444)) | (1 << (TSqlParser.DESCRIPTION - 444)) | (1 << (TSqlParser.DESX - 444)) | (1 << (TSqlParser.DHCP - 444)))) !== 0) || ((((_la - 476)) & ~0x1f) == 0 && ((1 << (_la - 476)) & ((1 << (TSqlParser.DIALOG - 476)) | (1 << (TSqlParser.DIRECTORY_NAME - 476)) | (1 << (TSqlParser.DISABLE - 476)) | (1 << (TSqlParser.DISABLE_BROKER - 476)) | (1 << (TSqlParser.DISABLED - 476)) | (1 << (TSqlParser.DISK_DRIVE - 476)) | (1 << (TSqlParser.DOCUMENT - 476)) | (1 << (TSqlParser.DYNAMIC - 476)) | (1 << (TSqlParser.EMERGENCY - 476)) | (1 << (TSqlParser.EMPTY - 476)) | (1 << (TSqlParser.ENABLE - 476)) | (1 << (TSqlParser.ENABLE_BROKER - 476)) | (1 << (TSqlParser.ENCRYPTED_VALUE - 476)) | (1 << (TSqlParser.ENCRYPTION - 476)) | (1 << (TSqlParser.ENDPOINT_URL - 476)) | (1 << (TSqlParser.ERROR_BROKER_CONVERSATIONS - 476)) | (1 << (TSqlParser.EXCLUSIVE - 476)) | (1 << (TSqlParser.EXECUTABLE - 476)) | (1 << (TSqlParser.EXIST - 476)) | (1 << (TSqlParser.EXPAND - 476)) | (1 << (TSqlParser.EXPIRY_DATE - 476)) | (1 << (TSqlParser.EXPLICIT - 476)) | (1 << (TSqlParser.FAIL_OPERATION - 476)) | (1 << (TSqlParser.FAILOVER_MODE - 476)) | (1 << (TSqlParser.FAILURE - 476)) | (1 << (TSqlParser.FAILURE_CONDITION_LEVEL - 476)) | (1 << (TSqlParser.FAST - 476)) | (1 << (TSqlParser.FAST_FORWARD - 476)) | (1 << (TSqlParser.FILEGROUP - 476)) | (1 << (TSqlParser.FILEGROWTH - 476)) | (1 << (TSqlParser.FILEPATH - 476)))) !== 0) || ((((_la - 508)) & ~0x1f) == 0 && ((1 << (_la - 508)) & ((1 << (TSqlParser.FILESTREAM - 508)) | (1 << (TSqlParser.FILTER - 508)) | (1 << (TSqlParser.FIRST - 508)) | (1 << (TSqlParser.FIRST_VALUE - 508)) | (1 << (TSqlParser.FOLLOWING - 508)) | (1 << (TSqlParser.FORCE - 508)) | (1 << (TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS - 508)) | (1 << (TSqlParser.FORCED - 508)) | (1 << (TSqlParser.FORMAT - 508)) | (1 << (TSqlParser.FORWARD_ONLY - 508)) | (1 << (TSqlParser.FULLSCAN - 508)) | (1 << (TSqlParser.FULLTEXT - 508)) | (1 << (TSqlParser.GB - 508)) | (1 << (TSqlParser.GETDATE - 508)) | (1 << (TSqlParser.GETUTCDATE - 508)) | (1 << (TSqlParser.GLOBAL - 508)) | (1 << (TSqlParser.GO - 508)) | (1 << (TSqlParser.GROUP_MAX_REQUESTS - 508)) | (1 << (TSqlParser.GROUPING - 508)) | (1 << (TSqlParser.GROUPING_ID - 508)) | (1 << (TSqlParser.HADR - 508)) | (1 << (TSqlParser.HASH - 508)) | (1 << (TSqlParser.HEALTH_CHECK_TIMEOUT - 508)) | (1 << (TSqlParser.HIGH - 508)) | (1 << (TSqlParser.HONOR_BROKER_PRIORITY - 508)) | (1 << (TSqlParser.HOURS - 508)) | (1 << (TSqlParser.IDENTITY_VALUE - 508)) | (1 << (TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX - 508)) | (1 << (TSqlParser.IMMEDIATE - 508)) | (1 << (TSqlParser.IMPERSONATE - 508)) | (1 << (TSqlParser.IMPORTANCE - 508)))) !== 0) || ((((_la - 540)) & ~0x1f) == 0 && ((1 << (_la - 540)) & ((1 << (TSqlParser.INCREMENTAL - 540)) | (1 << (TSqlParser.INITIATOR - 540)) | (1 << (TSqlParser.INPUT - 540)) | (1 << (TSqlParser.INSENSITIVE - 540)) | (1 << (TSqlParser.INSERTED - 540)) | (1 << (TSqlParser.INT - 540)) | (1 << (TSqlParser.IP - 540)) | (1 << (TSqlParser.ISOLATION - 540)) | (1 << (TSqlParser.KB - 540)) | (1 << (TSqlParser.KEEP - 540)) | (1 << (TSqlParser.KEEPFIXED - 540)) | (1 << (TSqlParser.KEY_SOURCE - 540)) | (1 << (TSqlParser.KEYS - 540)) | (1 << (TSqlParser.KEYSET - 540)) | (1 << (TSqlParser.LAG - 540)) | (1 << (TSqlParser.LAST - 540)) | (1 << (TSqlParser.LAST_VALUE - 540)) | (1 << (TSqlParser.LEAD - 540)) | (1 << (TSqlParser.LEVEL - 540)) | (1 << (TSqlParser.LIST - 540)) | (1 << (TSqlParser.LISTENER - 540)) | (1 << (TSqlParser.LISTENER_URL - 540)) | (1 << (TSqlParser.LOB_COMPACTION - 540)) | (1 << (TSqlParser.LOCAL - 540)) | (1 << (TSqlParser.LOCATION - 540)) | (1 << (TSqlParser.LOCK - 540)) | (1 << (TSqlParser.LOCK_ESCALATION - 540)) | (1 << (TSqlParser.LOGIN - 540)) | (1 << (TSqlParser.LOOP - 540)) | (1 << (TSqlParser.LOW - 540)))) !== 0) || ((((_la - 572)) & ~0x1f) == 0 && ((1 << (_la - 572)) & ((1 << (TSqlParser.MANUAL - 572)) | (1 << (TSqlParser.MARK - 572)) | (1 << (TSqlParser.MATERIALIZED - 572)) | (1 << (TSqlParser.MAX - 572)) | (1 << (TSqlParser.MAX_CPU_PERCENT - 572)) | (1 << (TSqlParser.MAX_DOP - 572)) | (1 << (TSqlParser.MAX_FILES - 572)) | (1 << (TSqlParser.MAX_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MAX_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MAX_PROCESSES - 572)) | (1 << (TSqlParser.MAX_QUEUE_READERS - 572)) | (1 << (TSqlParser.MAX_ROLLOVER_FILES - 572)) | (1 << (TSqlParser.MAXDOP - 572)) | (1 << (TSqlParser.MAXRECURSION - 572)) | (1 << (TSqlParser.MAXSIZE - 572)) | (1 << (TSqlParser.MB - 572)) | (1 << (TSqlParser.MEDIUM - 572)) | (1 << (TSqlParser.MEMORY_OPTIMIZED_DATA - 572)) | (1 << (TSqlParser.MESSAGE - 572)) | (1 << (TSqlParser.MIN - 572)) | (1 << (TSqlParser.MIN_ACTIVE_ROWVERSION - 572)) | (1 << (TSqlParser.MIN_CPU_PERCENT - 572)) | (1 << (TSqlParser.MIN_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MIN_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MINUTES - 572)) | (1 << (TSqlParser.MIRROR_ADDRESS - 572)) | (1 << (TSqlParser.MIXED_PAGE_ALLOCATION - 572)) | (1 << (TSqlParser.MODE - 572)) | (1 << (TSqlParser.MODIFY - 572)) | (1 << (TSqlParser.MOVE - 572)) | (1 << (TSqlParser.MULTI_USER - 572)) | (1 << (TSqlParser.NAME - 572)))) !== 0) || ((((_la - 604)) & ~0x1f) == 0 && ((1 << (_la - 604)) & ((1 << (TSqlParser.NESTED_TRIGGERS - 604)) | (1 << (TSqlParser.NEW_ACCOUNT - 604)) | (1 << (TSqlParser.NEW_BROKER - 604)) | (1 << (TSqlParser.NEW_PASSWORD - 604)) | (1 << (TSqlParser.NEXT - 604)) | (1 << (TSqlParser.NO - 604)) | (1 << (TSqlParser.NO_TRUNCATE - 604)) | (1 << (TSqlParser.NO_WAIT - 604)) | (1 << (TSqlParser.NOCOUNT - 604)) | (1 << (TSqlParser.NODES - 604)) | (1 << (TSqlParser.NOEXPAND - 604)) | (1 << (TSqlParser.NON_TRANSACTED_ACCESS - 604)) | (1 << (TSqlParser.NORECOMPUTE - 604)) | (1 << (TSqlParser.NORECOVERY - 604)) | (1 << (TSqlParser.NOWAIT - 604)) | (1 << (TSqlParser.NTILE - 604)) | (1 << (TSqlParser.NUMANODE - 604)) | (1 << (TSqlParser.NUMBER - 604)) | (1 << (TSqlParser.NUMERIC_ROUNDABORT - 604)) | (1 << (TSqlParser.OBJECT - 604)) | (1 << (TSqlParser.OFFLINE - 604)) | (1 << (TSqlParser.OFFSET - 604)) | (1 << (TSqlParser.OLD_ACCOUNT - 604)) | (1 << (TSqlParser.ONLINE - 604)) | (1 << (TSqlParser.ONLY - 604)) | (1 << (TSqlParser.OPEN_EXISTING - 604)) | (1 << (TSqlParser.OPTIMISTIC - 604)) | (1 << (TSqlParser.OPTIMIZE - 604)) | (1 << (TSqlParser.OUT - 604)) | (1 << (TSqlParser.OUTPUT - 604)) | (1 << (TSqlParser.OWNER - 604)))) !== 0) || ((((_la - 636)) & ~0x1f) == 0 && ((1 << (_la - 636)) & ((1 << (TSqlParser.PAGE_VERIFY - 636)) | (1 << (TSqlParser.PARAMETERIZATION - 636)) | (1 << (TSqlParser.PARTITION - 636)) | (1 << (TSqlParser.PARTITIONS - 636)) | (1 << (TSqlParser.PARTNER - 636)) | (1 << (TSqlParser.PATH - 636)) | (1 << (TSqlParser.POISON_MESSAGE_HANDLING - 636)) | (1 << (TSqlParser.POOL - 636)) | (1 << (TSqlParser.PORT - 636)) | (1 << (TSqlParser.PRECEDING - 636)) | (1 << (TSqlParser.PRIMARY_ROLE - 636)) | (1 << (TSqlParser.PRIOR - 636)) | (1 << (TSqlParser.PRIORITY - 636)) | (1 << (TSqlParser.PRIORITY_LEVEL - 636)) | (1 << (TSqlParser.PRIVATE - 636)) | (1 << (TSqlParser.PRIVATE_KEY - 636)) | (1 << (TSqlParser.PRIVILEGES - 636)) | (1 << (TSqlParser.PROCEDURE_NAME - 636)) | (1 << (TSqlParser.PROPERTY - 636)) | (1 << (TSqlParser.PROVIDER - 636)) | (1 << (TSqlParser.PROVIDER_KEY_NAME - 636)) | (1 << (TSqlParser.QUERY - 636)) | (1 << (TSqlParser.QUEUE - 636)) | (1 << (TSqlParser.QUEUE_DELAY - 636)) | (1 << (TSqlParser.QUOTED_IDENTIFIER - 636)) | (1 << (TSqlParser.RANGE - 636)) | (1 << (TSqlParser.RANK - 636)) | (1 << (TSqlParser.RC2 - 636)) | (1 << (TSqlParser.RC4 - 636)) | (1 << (TSqlParser.RC4_128 - 636)) | (1 << (TSqlParser.READ_COMMITTED_SNAPSHOT - 636)) | (1 << (TSqlParser.READ_ONLY - 636)))) !== 0) || ((((_la - 668)) & ~0x1f) == 0 && ((1 << (_la - 668)) & ((1 << (TSqlParser.READ_ONLY_ROUTING_LIST - 668)) | (1 << (TSqlParser.READ_WRITE - 668)) | (1 << (TSqlParser.READONLY - 668)) | (1 << (TSqlParser.REBUILD - 668)) | (1 << (TSqlParser.RECEIVE - 668)) | (1 << (TSqlParser.RECOMPILE - 668)) | (1 << (TSqlParser.RECOVERY - 668)) | (1 << (TSqlParser.RECURSIVE_TRIGGERS - 668)) | (1 << (TSqlParser.RELATIVE - 668)) | (1 << (TSqlParser.REMOTE - 668)) | (1 << (TSqlParser.REMOTE_SERVICE_NAME - 668)) | (1 << (TSqlParser.REMOVE - 668)) | (1 << (TSqlParser.REORGANIZE - 668)) | (1 << (TSqlParser.REPEATABLE - 668)) | (1 << (TSqlParser.REPLICA - 668)) | (1 << (TSqlParser.REQUEST_MAX_CPU_TIME_SEC - 668)) | (1 << (TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT - 668)) | (1 << (TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC - 668)) | (1 << (TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT - 668)) | (1 << (TSqlParser.RESERVE_DISK_SPACE - 668)) | (1 << (TSqlParser.RESOURCE - 668)) | (1 << (TSqlParser.RESOURCE_MANAGER_LOCATION - 668)) | (1 << (TSqlParser.RESTRICTED_USER - 668)) | (1 << (TSqlParser.RETENTION - 668)) | (1 << (TSqlParser.ROBUST - 668)) | (1 << (TSqlParser.ROOT - 668)) | (1 << (TSqlParser.ROUTE - 668)) | (1 << (TSqlParser.ROW - 668)) | (1 << (TSqlParser.ROW_NUMBER - 668)) | (1 << (TSqlParser.ROWGUID - 668)) | (1 << (TSqlParser.ROWS - 668)) | (1 << (TSqlParser.SAMPLE - 668)))) !== 0) || ((((_la - 700)) & ~0x1f) == 0 && ((1 << (_la - 700)) & ((1 << (TSqlParser.SCHEMABINDING - 700)) | (1 << (TSqlParser.SCOPED - 700)) | (1 << (TSqlParser.SCROLL - 700)) | (1 << (TSqlParser.SCROLL_LOCKS - 700)) | (1 << (TSqlParser.SEARCH - 700)) | (1 << (TSqlParser.SECONDARY - 700)) | (1 << (TSqlParser.SECONDARY_ONLY - 700)) | (1 << (TSqlParser.SECONDARY_ROLE - 700)) | (1 << (TSqlParser.SECONDS - 700)) | (1 << (TSqlParser.SECRET - 700)) | (1 << (TSqlParser.SECURITY - 700)) | (1 << (TSqlParser.SECURITY_LOG - 700)) | (1 << (TSqlParser.SEEDING_MODE - 700)) | (1 << (TSqlParser.SELF - 700)) | (1 << (TSqlParser.SEMI_SENSITIVE - 700)) | (1 << (TSqlParser.SEND - 700)) | (1 << (TSqlParser.SENT - 700)) | (1 << (TSqlParser.SEQUENCE - 700)) | (1 << (TSqlParser.SERIALIZABLE - 700)) | (1 << (TSqlParser.SESSION_TIMEOUT - 700)) | (1 << (TSqlParser.SETERROR - 700)) | (1 << (TSqlParser.SHARE - 700)) | (1 << (TSqlParser.SHOWPLAN - 700)) | (1 << (TSqlParser.SIGNATURE - 700)) | (1 << (TSqlParser.SIMPLE - 700)) | (1 << (TSqlParser.SINGLE_USER - 700)) | (1 << (TSqlParser.SIZE - 700)) | (1 << (TSqlParser.SMALLINT - 700)) | (1 << (TSqlParser.SNAPSHOT - 700)) | (1 << (TSqlParser.SPATIAL_WINDOW_MAX_CELLS - 700)) | (1 << (TSqlParser.STANDBY - 700)) | (1 << (TSqlParser.START_DATE - 700)))) !== 0) || ((((_la - 732)) & ~0x1f) == 0 && ((1 << (_la - 732)) & ((1 << (TSqlParser.STATIC - 732)) | (1 << (TSqlParser.STATS_STREAM - 732)) | (1 << (TSqlParser.STATUS - 732)) | (1 << (TSqlParser.STDEV - 732)) | (1 << (TSqlParser.STDEVP - 732)) | (1 << (TSqlParser.STOPLIST - 732)) | (1 << (TSqlParser.STRING_AGG - 732)) | (1 << (TSqlParser.STUFF - 732)) | (1 << (TSqlParser.SUBJECT - 732)) | (1 << (TSqlParser.SUM - 732)) | (1 << (TSqlParser.SUSPEND - 732)) | (1 << (TSqlParser.SYMMETRIC - 732)) | (1 << (TSqlParser.SYNCHRONOUS_COMMIT - 732)) | (1 << (TSqlParser.SYNONYM - 732)) | (1 << (TSqlParser.SYSTEM - 732)) | (1 << (TSqlParser.TAKE - 732)) | (1 << (TSqlParser.TARGET_RECOVERY_TIME - 732)) | (1 << (TSqlParser.TB - 732)) | (1 << (TSqlParser.TEXTIMAGE_ON - 732)) | (1 << (TSqlParser.THROW - 732)) | (1 << (TSqlParser.TIES - 732)) | (1 << (TSqlParser.TIME - 732)) | (1 << (TSqlParser.TIMEOUT - 732)) | (1 << (TSqlParser.TIMER - 732)) | (1 << (TSqlParser.TINYINT - 732)) | (1 << (TSqlParser.TORN_PAGE_DETECTION - 732)) | (1 << (TSqlParser.TRANSFORM_NOISE_WORDS - 732)) | (1 << (TSqlParser.TRIPLE_DES - 732)) | (1 << (TSqlParser.TRIPLE_DES_3KEY - 732)) | (1 << (TSqlParser.TRUSTWORTHY - 732)))) !== 0) || ((((_la - 764)) & ~0x1f) == 0 && ((1 << (_la - 764)) & ((1 << (TSqlParser.TRY - 764)) | (1 << (TSqlParser.TSQL - 764)) | (1 << (TSqlParser.TWO_DIGIT_YEAR_CUTOFF - 764)) | (1 << (TSqlParser.TYPE - 764)) | (1 << (TSqlParser.TYPE_WARNING - 764)) | (1 << (TSqlParser.UNBOUNDED - 764)) | (1 << (TSqlParser.UNCOMMITTED - 764)) | (1 << (TSqlParser.UNKNOWN - 764)) | (1 << (TSqlParser.UNLIMITED - 764)) | (1 << (TSqlParser.USING - 764)) | (1 << (TSqlParser.VALID_XML - 764)) | (1 << (TSqlParser.VALIDATION - 764)) | (1 << (TSqlParser.VALUE - 764)) | (1 << (TSqlParser.VAR - 764)) | (1 << (TSqlParser.VARP - 764)) | (1 << (TSqlParser.VIEW_METADATA - 764)) | (1 << (TSqlParser.VIEWS - 764)) | (1 << (TSqlParser.WAIT - 764)) | (1 << (TSqlParser.WELL_FORMED_XML - 764)) | (1 << (TSqlParser.WORK - 764)) | (1 << (TSqlParser.WORKLOAD - 764)) | (1 << (TSqlParser.XML - 764)) | (1 << (TSqlParser.XMLNAMESPACES - 764)))) !== 0) || ((((_la - 796)) & ~0x1f) == 0 && ((1 << (_la - 796)) & ((1 << (TSqlParser.DOUBLE_QUOTE_ID - 796)) | (1 << (TSqlParser.SQUARE_BRACKET_ID - 796)) | (1 << (TSqlParser.ID - 796)))) !== 0)) {
- this.state = 10372;
- localctx.schema = this.id();
- }
-
- this.state = 10375;
- this.match(TSqlParser.DOT);
-
- } else if(la_===2) {
- this.state = 10377;
- localctx.schema = this.id();
- this.state = 10378;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 10382;
- localctx.table = this.id();
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 10393;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1457,this._ctx);
- if(la_===1) {
- this.state = 10383;
- localctx.database = this.id();
- this.state = 10384;
- this.match(TSqlParser.DOT);
- this.state = 10386;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.CALLED || _la===TSqlParser.DATA_COMPRESSION || ((((_la - 112)) & ~0x1f) == 0 && ((1 << (_la - 112)) & ((1 << (TSqlParser.EVENTDATA - 112)) | (1 << (TSqlParser.FILENAME - 112)) | (1 << (TSqlParser.FILLFACTOR - 112)) | (1 << (TSqlParser.FORCESEEK - 112)))) !== 0) || ((((_la - 158)) & ~0x1f) == 0 && ((1 << (_la - 158)) & ((1 << (TSqlParser.INIT - 158)) | (1 << (TSqlParser.KEY - 158)) | (1 << (TSqlParser.MASTER - 158)) | (1 << (TSqlParser.MAX_MEMORY - 158)))) !== 0) || _la===TSqlParser.OFFSETS || _la===TSqlParser.PAGE || ((((_la - 259)) & ~0x1f) == 0 && ((1 << (_la - 259)) & ((1 << (TSqlParser.PUBLIC - 259)) | (1 << (TSqlParser.R - 259)) | (1 << (TSqlParser.RAW - 259)) | (1 << (TSqlParser.RETURN - 259)) | (1 << (TSqlParser.RETURNS - 259)) | (1 << (TSqlParser.ROWCOUNT - 259)))) !== 0) || ((((_la - 295)) & ~0x1f) == 0 && ((1 << (_la - 295)) & ((1 << (TSqlParser.SAFETY - 295)) | (1 << (TSqlParser.SERVER - 295)) | (1 << (TSqlParser.SID - 295)) | (1 << (TSqlParser.SOURCE - 295)) | (1 << (TSqlParser.SPLIT - 295)))) !== 0) || ((((_la - 327)) & ~0x1f) == 0 && ((1 << (_la - 327)) & ((1 << (TSqlParser.STATE - 327)) | (1 << (TSqlParser.START - 327)) | (1 << (TSqlParser.TARGET - 327)))) !== 0) || ((((_la - 380)) & ~0x1f) == 0 && ((1 << (_la - 380)) & ((1 << (TSqlParser.ABSOLUTE - 380)) | (1 << (TSqlParser.ACCENT_SENSITIVITY - 380)) | (1 << (TSqlParser.ACTION - 380)) | (1 << (TSqlParser.ACTIVATION - 380)) | (1 << (TSqlParser.ACTIVE - 380)) | (1 << (TSqlParser.ADDRESS - 380)) | (1 << (TSqlParser.AES_128 - 380)) | (1 << (TSqlParser.AES_192 - 380)) | (1 << (TSqlParser.AES_256 - 380)) | (1 << (TSqlParser.AFFINITY - 380)) | (1 << (TSqlParser.AFTER - 380)) | (1 << (TSqlParser.AGGREGATE - 380)) | (1 << (TSqlParser.ALGORITHM - 380)) | (1 << (TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS - 380)) | (1 << (TSqlParser.ALLOW_SNAPSHOT_ISOLATION - 380)) | (1 << (TSqlParser.ALLOWED - 380)) | (1 << (TSqlParser.ANSI_NULL_DEFAULT - 380)) | (1 << (TSqlParser.ANSI_NULLS - 380)) | (1 << (TSqlParser.ANSI_PADDING - 380)) | (1 << (TSqlParser.ANSI_WARNINGS - 380)) | (1 << (TSqlParser.APPLICATION_LOG - 380)) | (1 << (TSqlParser.APPLY - 380)) | (1 << (TSqlParser.ARITHABORT - 380)) | (1 << (TSqlParser.ASSEMBLY - 380)) | (1 << (TSqlParser.AUDIT - 380)) | (1 << (TSqlParser.AUDIT_GUID - 380)) | (1 << (TSqlParser.AUTO - 380)) | (1 << (TSqlParser.AUTO_CLEANUP - 380)) | (1 << (TSqlParser.AUTO_CLOSE - 380)) | (1 << (TSqlParser.AUTO_CREATE_STATISTICS - 380)) | (1 << (TSqlParser.AUTO_SHRINK - 380)) | (1 << (TSqlParser.AUTO_UPDATE_STATISTICS - 380)))) !== 0) || ((((_la - 412)) & ~0x1f) == 0 && ((1 << (_la - 412)) & ((1 << (TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC - 412)) | (1 << (TSqlParser.AVAILABILITY - 412)) | (1 << (TSqlParser.AVG - 412)) | (1 << (TSqlParser.BACKUP_PRIORITY - 412)) | (1 << (TSqlParser.BEGIN_DIALOG - 412)) | (1 << (TSqlParser.BIGINT - 412)) | (1 << (TSqlParser.BINARY_BASE64 - 412)) | (1 << (TSqlParser.BINARY_CHECKSUM - 412)) | (1 << (TSqlParser.BINDING - 412)) | (1 << (TSqlParser.BLOB_STORAGE - 412)) | (1 << (TSqlParser.BROKER - 412)) | (1 << (TSqlParser.BROKER_INSTANCE - 412)) | (1 << (TSqlParser.BULK_LOGGED - 412)) | (1 << (TSqlParser.CALLER - 412)) | (1 << (TSqlParser.CAP_CPU_PERCENT - 412)) | (1 << (TSqlParser.CAST - 412)) | (1 << (TSqlParser.CATALOG - 412)) | (1 << (TSqlParser.CATCH - 412)) | (1 << (TSqlParser.CHANGE_RETENTION - 412)) | (1 << (TSqlParser.CHANGE_TRACKING - 412)) | (1 << (TSqlParser.CHECKSUM - 412)) | (1 << (TSqlParser.CHECKSUM_AGG - 412)) | (1 << (TSqlParser.CLEANUP - 412)) | (1 << (TSqlParser.COLLECTION - 412)) | (1 << (TSqlParser.COLUMN_MASTER_KEY - 412)) | (1 << (TSqlParser.COMMITTED - 412)) | (1 << (TSqlParser.COMPATIBILITY_LEVEL - 412)) | (1 << (TSqlParser.CONCAT - 412)) | (1 << (TSqlParser.CONCAT_NULL_YIELDS_NULL - 412)) | (1 << (TSqlParser.CONTENT - 412)) | (1 << (TSqlParser.CONTROL - 412)) | (1 << (TSqlParser.COOKIE - 412)))) !== 0) || ((((_la - 444)) & ~0x1f) == 0 && ((1 << (_la - 444)) & ((1 << (TSqlParser.COUNT - 444)) | (1 << (TSqlParser.COUNT_BIG - 444)) | (1 << (TSqlParser.COUNTER - 444)) | (1 << (TSqlParser.CPU - 444)) | (1 << (TSqlParser.CREATE_NEW - 444)) | (1 << (TSqlParser.CREATION_DISPOSITION - 444)) | (1 << (TSqlParser.CREDENTIAL - 444)) | (1 << (TSqlParser.CRYPTOGRAPHIC - 444)) | (1 << (TSqlParser.CURSOR_CLOSE_ON_COMMIT - 444)) | (1 << (TSqlParser.CURSOR_DEFAULT - 444)) | (1 << (TSqlParser.DATA - 444)) | (1 << (TSqlParser.DATE_CORRELATION_OPTIMIZATION - 444)) | (1 << (TSqlParser.DATEADD - 444)) | (1 << (TSqlParser.DATEDIFF - 444)) | (1 << (TSqlParser.DATENAME - 444)) | (1 << (TSqlParser.DATEPART - 444)) | (1 << (TSqlParser.DAYS - 444)) | (1 << (TSqlParser.DB_CHAINING - 444)) | (1 << (TSqlParser.DB_FAILOVER - 444)) | (1 << (TSqlParser.DECRYPTION - 444)) | (1 << (TSqlParser.DEFAULT_DOUBLE_QUOTE - 444)) | (1 << (TSqlParser.DEFAULT_FULLTEXT_LANGUAGE - 444)) | (1 << (TSqlParser.DEFAULT_LANGUAGE - 444)) | (1 << (TSqlParser.DELAY - 444)) | (1 << (TSqlParser.DELAYED_DURABILITY - 444)) | (1 << (TSqlParser.DELETED - 444)) | (1 << (TSqlParser.DENSE_RANK - 444)) | (1 << (TSqlParser.DEPENDENTS - 444)) | (1 << (TSqlParser.DES - 444)) | (1 << (TSqlParser.DESCRIPTION - 444)) | (1 << (TSqlParser.DESX - 444)) | (1 << (TSqlParser.DHCP - 444)))) !== 0) || ((((_la - 476)) & ~0x1f) == 0 && ((1 << (_la - 476)) & ((1 << (TSqlParser.DIALOG - 476)) | (1 << (TSqlParser.DIRECTORY_NAME - 476)) | (1 << (TSqlParser.DISABLE - 476)) | (1 << (TSqlParser.DISABLE_BROKER - 476)) | (1 << (TSqlParser.DISABLED - 476)) | (1 << (TSqlParser.DISK_DRIVE - 476)) | (1 << (TSqlParser.DOCUMENT - 476)) | (1 << (TSqlParser.DYNAMIC - 476)) | (1 << (TSqlParser.EMERGENCY - 476)) | (1 << (TSqlParser.EMPTY - 476)) | (1 << (TSqlParser.ENABLE - 476)) | (1 << (TSqlParser.ENABLE_BROKER - 476)) | (1 << (TSqlParser.ENCRYPTED_VALUE - 476)) | (1 << (TSqlParser.ENCRYPTION - 476)) | (1 << (TSqlParser.ENDPOINT_URL - 476)) | (1 << (TSqlParser.ERROR_BROKER_CONVERSATIONS - 476)) | (1 << (TSqlParser.EXCLUSIVE - 476)) | (1 << (TSqlParser.EXECUTABLE - 476)) | (1 << (TSqlParser.EXIST - 476)) | (1 << (TSqlParser.EXPAND - 476)) | (1 << (TSqlParser.EXPIRY_DATE - 476)) | (1 << (TSqlParser.EXPLICIT - 476)) | (1 << (TSqlParser.FAIL_OPERATION - 476)) | (1 << (TSqlParser.FAILOVER_MODE - 476)) | (1 << (TSqlParser.FAILURE - 476)) | (1 << (TSqlParser.FAILURE_CONDITION_LEVEL - 476)) | (1 << (TSqlParser.FAST - 476)) | (1 << (TSqlParser.FAST_FORWARD - 476)) | (1 << (TSqlParser.FILEGROUP - 476)) | (1 << (TSqlParser.FILEGROWTH - 476)) | (1 << (TSqlParser.FILEPATH - 476)))) !== 0) || ((((_la - 508)) & ~0x1f) == 0 && ((1 << (_la - 508)) & ((1 << (TSqlParser.FILESTREAM - 508)) | (1 << (TSqlParser.FILTER - 508)) | (1 << (TSqlParser.FIRST - 508)) | (1 << (TSqlParser.FIRST_VALUE - 508)) | (1 << (TSqlParser.FOLLOWING - 508)) | (1 << (TSqlParser.FORCE - 508)) | (1 << (TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS - 508)) | (1 << (TSqlParser.FORCED - 508)) | (1 << (TSqlParser.FORMAT - 508)) | (1 << (TSqlParser.FORWARD_ONLY - 508)) | (1 << (TSqlParser.FULLSCAN - 508)) | (1 << (TSqlParser.FULLTEXT - 508)) | (1 << (TSqlParser.GB - 508)) | (1 << (TSqlParser.GETDATE - 508)) | (1 << (TSqlParser.GETUTCDATE - 508)) | (1 << (TSqlParser.GLOBAL - 508)) | (1 << (TSqlParser.GO - 508)) | (1 << (TSqlParser.GROUP_MAX_REQUESTS - 508)) | (1 << (TSqlParser.GROUPING - 508)) | (1 << (TSqlParser.GROUPING_ID - 508)) | (1 << (TSqlParser.HADR - 508)) | (1 << (TSqlParser.HASH - 508)) | (1 << (TSqlParser.HEALTH_CHECK_TIMEOUT - 508)) | (1 << (TSqlParser.HIGH - 508)) | (1 << (TSqlParser.HONOR_BROKER_PRIORITY - 508)) | (1 << (TSqlParser.HOURS - 508)) | (1 << (TSqlParser.IDENTITY_VALUE - 508)) | (1 << (TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX - 508)) | (1 << (TSqlParser.IMMEDIATE - 508)) | (1 << (TSqlParser.IMPERSONATE - 508)) | (1 << (TSqlParser.IMPORTANCE - 508)))) !== 0) || ((((_la - 540)) & ~0x1f) == 0 && ((1 << (_la - 540)) & ((1 << (TSqlParser.INCREMENTAL - 540)) | (1 << (TSqlParser.INITIATOR - 540)) | (1 << (TSqlParser.INPUT - 540)) | (1 << (TSqlParser.INSENSITIVE - 540)) | (1 << (TSqlParser.INSERTED - 540)) | (1 << (TSqlParser.INT - 540)) | (1 << (TSqlParser.IP - 540)) | (1 << (TSqlParser.ISOLATION - 540)) | (1 << (TSqlParser.KB - 540)) | (1 << (TSqlParser.KEEP - 540)) | (1 << (TSqlParser.KEEPFIXED - 540)) | (1 << (TSqlParser.KEY_SOURCE - 540)) | (1 << (TSqlParser.KEYS - 540)) | (1 << (TSqlParser.KEYSET - 540)) | (1 << (TSqlParser.LAG - 540)) | (1 << (TSqlParser.LAST - 540)) | (1 << (TSqlParser.LAST_VALUE - 540)) | (1 << (TSqlParser.LEAD - 540)) | (1 << (TSqlParser.LEVEL - 540)) | (1 << (TSqlParser.LIST - 540)) | (1 << (TSqlParser.LISTENER - 540)) | (1 << (TSqlParser.LISTENER_URL - 540)) | (1 << (TSqlParser.LOB_COMPACTION - 540)) | (1 << (TSqlParser.LOCAL - 540)) | (1 << (TSqlParser.LOCATION - 540)) | (1 << (TSqlParser.LOCK - 540)) | (1 << (TSqlParser.LOCK_ESCALATION - 540)) | (1 << (TSqlParser.LOGIN - 540)) | (1 << (TSqlParser.LOOP - 540)) | (1 << (TSqlParser.LOW - 540)))) !== 0) || ((((_la - 572)) & ~0x1f) == 0 && ((1 << (_la - 572)) & ((1 << (TSqlParser.MANUAL - 572)) | (1 << (TSqlParser.MARK - 572)) | (1 << (TSqlParser.MATERIALIZED - 572)) | (1 << (TSqlParser.MAX - 572)) | (1 << (TSqlParser.MAX_CPU_PERCENT - 572)) | (1 << (TSqlParser.MAX_DOP - 572)) | (1 << (TSqlParser.MAX_FILES - 572)) | (1 << (TSqlParser.MAX_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MAX_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MAX_PROCESSES - 572)) | (1 << (TSqlParser.MAX_QUEUE_READERS - 572)) | (1 << (TSqlParser.MAX_ROLLOVER_FILES - 572)) | (1 << (TSqlParser.MAXDOP - 572)) | (1 << (TSqlParser.MAXRECURSION - 572)) | (1 << (TSqlParser.MAXSIZE - 572)) | (1 << (TSqlParser.MB - 572)) | (1 << (TSqlParser.MEDIUM - 572)) | (1 << (TSqlParser.MEMORY_OPTIMIZED_DATA - 572)) | (1 << (TSqlParser.MESSAGE - 572)) | (1 << (TSqlParser.MIN - 572)) | (1 << (TSqlParser.MIN_ACTIVE_ROWVERSION - 572)) | (1 << (TSqlParser.MIN_CPU_PERCENT - 572)) | (1 << (TSqlParser.MIN_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MIN_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MINUTES - 572)) | (1 << (TSqlParser.MIRROR_ADDRESS - 572)) | (1 << (TSqlParser.MIXED_PAGE_ALLOCATION - 572)) | (1 << (TSqlParser.MODE - 572)) | (1 << (TSqlParser.MODIFY - 572)) | (1 << (TSqlParser.MOVE - 572)) | (1 << (TSqlParser.MULTI_USER - 572)) | (1 << (TSqlParser.NAME - 572)))) !== 0) || ((((_la - 604)) & ~0x1f) == 0 && ((1 << (_la - 604)) & ((1 << (TSqlParser.NESTED_TRIGGERS - 604)) | (1 << (TSqlParser.NEW_ACCOUNT - 604)) | (1 << (TSqlParser.NEW_BROKER - 604)) | (1 << (TSqlParser.NEW_PASSWORD - 604)) | (1 << (TSqlParser.NEXT - 604)) | (1 << (TSqlParser.NO - 604)) | (1 << (TSqlParser.NO_TRUNCATE - 604)) | (1 << (TSqlParser.NO_WAIT - 604)) | (1 << (TSqlParser.NOCOUNT - 604)) | (1 << (TSqlParser.NODES - 604)) | (1 << (TSqlParser.NOEXPAND - 604)) | (1 << (TSqlParser.NON_TRANSACTED_ACCESS - 604)) | (1 << (TSqlParser.NORECOMPUTE - 604)) | (1 << (TSqlParser.NORECOVERY - 604)) | (1 << (TSqlParser.NOWAIT - 604)) | (1 << (TSqlParser.NTILE - 604)) | (1 << (TSqlParser.NUMANODE - 604)) | (1 << (TSqlParser.NUMBER - 604)) | (1 << (TSqlParser.NUMERIC_ROUNDABORT - 604)) | (1 << (TSqlParser.OBJECT - 604)) | (1 << (TSqlParser.OFFLINE - 604)) | (1 << (TSqlParser.OFFSET - 604)) | (1 << (TSqlParser.OLD_ACCOUNT - 604)) | (1 << (TSqlParser.ONLINE - 604)) | (1 << (TSqlParser.ONLY - 604)) | (1 << (TSqlParser.OPEN_EXISTING - 604)) | (1 << (TSqlParser.OPTIMISTIC - 604)) | (1 << (TSqlParser.OPTIMIZE - 604)) | (1 << (TSqlParser.OUT - 604)) | (1 << (TSqlParser.OUTPUT - 604)) | (1 << (TSqlParser.OWNER - 604)))) !== 0) || ((((_la - 636)) & ~0x1f) == 0 && ((1 << (_la - 636)) & ((1 << (TSqlParser.PAGE_VERIFY - 636)) | (1 << (TSqlParser.PARAMETERIZATION - 636)) | (1 << (TSqlParser.PARTITION - 636)) | (1 << (TSqlParser.PARTITIONS - 636)) | (1 << (TSqlParser.PARTNER - 636)) | (1 << (TSqlParser.PATH - 636)) | (1 << (TSqlParser.POISON_MESSAGE_HANDLING - 636)) | (1 << (TSqlParser.POOL - 636)) | (1 << (TSqlParser.PORT - 636)) | (1 << (TSqlParser.PRECEDING - 636)) | (1 << (TSqlParser.PRIMARY_ROLE - 636)) | (1 << (TSqlParser.PRIOR - 636)) | (1 << (TSqlParser.PRIORITY - 636)) | (1 << (TSqlParser.PRIORITY_LEVEL - 636)) | (1 << (TSqlParser.PRIVATE - 636)) | (1 << (TSqlParser.PRIVATE_KEY - 636)) | (1 << (TSqlParser.PRIVILEGES - 636)) | (1 << (TSqlParser.PROCEDURE_NAME - 636)) | (1 << (TSqlParser.PROPERTY - 636)) | (1 << (TSqlParser.PROVIDER - 636)) | (1 << (TSqlParser.PROVIDER_KEY_NAME - 636)) | (1 << (TSqlParser.QUERY - 636)) | (1 << (TSqlParser.QUEUE - 636)) | (1 << (TSqlParser.QUEUE_DELAY - 636)) | (1 << (TSqlParser.QUOTED_IDENTIFIER - 636)) | (1 << (TSqlParser.RANGE - 636)) | (1 << (TSqlParser.RANK - 636)) | (1 << (TSqlParser.RC2 - 636)) | (1 << (TSqlParser.RC4 - 636)) | (1 << (TSqlParser.RC4_128 - 636)) | (1 << (TSqlParser.READ_COMMITTED_SNAPSHOT - 636)) | (1 << (TSqlParser.READ_ONLY - 636)))) !== 0) || ((((_la - 668)) & ~0x1f) == 0 && ((1 << (_la - 668)) & ((1 << (TSqlParser.READ_ONLY_ROUTING_LIST - 668)) | (1 << (TSqlParser.READ_WRITE - 668)) | (1 << (TSqlParser.READONLY - 668)) | (1 << (TSqlParser.REBUILD - 668)) | (1 << (TSqlParser.RECEIVE - 668)) | (1 << (TSqlParser.RECOMPILE - 668)) | (1 << (TSqlParser.RECOVERY - 668)) | (1 << (TSqlParser.RECURSIVE_TRIGGERS - 668)) | (1 << (TSqlParser.RELATIVE - 668)) | (1 << (TSqlParser.REMOTE - 668)) | (1 << (TSqlParser.REMOTE_SERVICE_NAME - 668)) | (1 << (TSqlParser.REMOVE - 668)) | (1 << (TSqlParser.REORGANIZE - 668)) | (1 << (TSqlParser.REPEATABLE - 668)) | (1 << (TSqlParser.REPLICA - 668)) | (1 << (TSqlParser.REQUEST_MAX_CPU_TIME_SEC - 668)) | (1 << (TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT - 668)) | (1 << (TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC - 668)) | (1 << (TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT - 668)) | (1 << (TSqlParser.RESERVE_DISK_SPACE - 668)) | (1 << (TSqlParser.RESOURCE - 668)) | (1 << (TSqlParser.RESOURCE_MANAGER_LOCATION - 668)) | (1 << (TSqlParser.RESTRICTED_USER - 668)) | (1 << (TSqlParser.RETENTION - 668)) | (1 << (TSqlParser.ROBUST - 668)) | (1 << (TSqlParser.ROOT - 668)) | (1 << (TSqlParser.ROUTE - 668)) | (1 << (TSqlParser.ROW - 668)) | (1 << (TSqlParser.ROW_NUMBER - 668)) | (1 << (TSqlParser.ROWGUID - 668)) | (1 << (TSqlParser.ROWS - 668)) | (1 << (TSqlParser.SAMPLE - 668)))) !== 0) || ((((_la - 700)) & ~0x1f) == 0 && ((1 << (_la - 700)) & ((1 << (TSqlParser.SCHEMABINDING - 700)) | (1 << (TSqlParser.SCOPED - 700)) | (1 << (TSqlParser.SCROLL - 700)) | (1 << (TSqlParser.SCROLL_LOCKS - 700)) | (1 << (TSqlParser.SEARCH - 700)) | (1 << (TSqlParser.SECONDARY - 700)) | (1 << (TSqlParser.SECONDARY_ONLY - 700)) | (1 << (TSqlParser.SECONDARY_ROLE - 700)) | (1 << (TSqlParser.SECONDS - 700)) | (1 << (TSqlParser.SECRET - 700)) | (1 << (TSqlParser.SECURITY - 700)) | (1 << (TSqlParser.SECURITY_LOG - 700)) | (1 << (TSqlParser.SEEDING_MODE - 700)) | (1 << (TSqlParser.SELF - 700)) | (1 << (TSqlParser.SEMI_SENSITIVE - 700)) | (1 << (TSqlParser.SEND - 700)) | (1 << (TSqlParser.SENT - 700)) | (1 << (TSqlParser.SEQUENCE - 700)) | (1 << (TSqlParser.SERIALIZABLE - 700)) | (1 << (TSqlParser.SESSION_TIMEOUT - 700)) | (1 << (TSqlParser.SETERROR - 700)) | (1 << (TSqlParser.SHARE - 700)) | (1 << (TSqlParser.SHOWPLAN - 700)) | (1 << (TSqlParser.SIGNATURE - 700)) | (1 << (TSqlParser.SIMPLE - 700)) | (1 << (TSqlParser.SINGLE_USER - 700)) | (1 << (TSqlParser.SIZE - 700)) | (1 << (TSqlParser.SMALLINT - 700)) | (1 << (TSqlParser.SNAPSHOT - 700)) | (1 << (TSqlParser.SPATIAL_WINDOW_MAX_CELLS - 700)) | (1 << (TSqlParser.STANDBY - 700)) | (1 << (TSqlParser.START_DATE - 700)))) !== 0) || ((((_la - 732)) & ~0x1f) == 0 && ((1 << (_la - 732)) & ((1 << (TSqlParser.STATIC - 732)) | (1 << (TSqlParser.STATS_STREAM - 732)) | (1 << (TSqlParser.STATUS - 732)) | (1 << (TSqlParser.STDEV - 732)) | (1 << (TSqlParser.STDEVP - 732)) | (1 << (TSqlParser.STOPLIST - 732)) | (1 << (TSqlParser.STRING_AGG - 732)) | (1 << (TSqlParser.STUFF - 732)) | (1 << (TSqlParser.SUBJECT - 732)) | (1 << (TSqlParser.SUM - 732)) | (1 << (TSqlParser.SUSPEND - 732)) | (1 << (TSqlParser.SYMMETRIC - 732)) | (1 << (TSqlParser.SYNCHRONOUS_COMMIT - 732)) | (1 << (TSqlParser.SYNONYM - 732)) | (1 << (TSqlParser.SYSTEM - 732)) | (1 << (TSqlParser.TAKE - 732)) | (1 << (TSqlParser.TARGET_RECOVERY_TIME - 732)) | (1 << (TSqlParser.TB - 732)) | (1 << (TSqlParser.TEXTIMAGE_ON - 732)) | (1 << (TSqlParser.THROW - 732)) | (1 << (TSqlParser.TIES - 732)) | (1 << (TSqlParser.TIME - 732)) | (1 << (TSqlParser.TIMEOUT - 732)) | (1 << (TSqlParser.TIMER - 732)) | (1 << (TSqlParser.TINYINT - 732)) | (1 << (TSqlParser.TORN_PAGE_DETECTION - 732)) | (1 << (TSqlParser.TRANSFORM_NOISE_WORDS - 732)) | (1 << (TSqlParser.TRIPLE_DES - 732)) | (1 << (TSqlParser.TRIPLE_DES_3KEY - 732)) | (1 << (TSqlParser.TRUSTWORTHY - 732)))) !== 0) || ((((_la - 764)) & ~0x1f) == 0 && ((1 << (_la - 764)) & ((1 << (TSqlParser.TRY - 764)) | (1 << (TSqlParser.TSQL - 764)) | (1 << (TSqlParser.TWO_DIGIT_YEAR_CUTOFF - 764)) | (1 << (TSqlParser.TYPE - 764)) | (1 << (TSqlParser.TYPE_WARNING - 764)) | (1 << (TSqlParser.UNBOUNDED - 764)) | (1 << (TSqlParser.UNCOMMITTED - 764)) | (1 << (TSqlParser.UNKNOWN - 764)) | (1 << (TSqlParser.UNLIMITED - 764)) | (1 << (TSqlParser.USING - 764)) | (1 << (TSqlParser.VALID_XML - 764)) | (1 << (TSqlParser.VALIDATION - 764)) | (1 << (TSqlParser.VALUE - 764)) | (1 << (TSqlParser.VAR - 764)) | (1 << (TSqlParser.VARP - 764)) | (1 << (TSqlParser.VIEW_METADATA - 764)) | (1 << (TSqlParser.VIEWS - 764)) | (1 << (TSqlParser.WAIT - 764)) | (1 << (TSqlParser.WELL_FORMED_XML - 764)) | (1 << (TSqlParser.WORK - 764)) | (1 << (TSqlParser.WORKLOAD - 764)) | (1 << (TSqlParser.XML - 764)) | (1 << (TSqlParser.XMLNAMESPACES - 764)))) !== 0) || ((((_la - 796)) & ~0x1f) == 0 && ((1 << (_la - 796)) & ((1 << (TSqlParser.DOUBLE_QUOTE_ID - 796)) | (1 << (TSqlParser.SQUARE_BRACKET_ID - 796)) | (1 << (TSqlParser.ID - 796)))) !== 0)) {
- this.state = 10385;
- localctx.schema = this.id();
- }
-
- this.state = 10388;
- this.match(TSqlParser.DOT);
-
- } else if(la_===2) {
- this.state = 10390;
- localctx.schema = this.id();
- this.state = 10391;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 10395;
- this.match(TSqlParser.BLOCKING_HIERARCHY);
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Simple_nameContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_simple_name;
- this.schema = null; // IdContext
- this.name = null; // IdContext
- return this;
-}
-
-Simple_nameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Simple_nameContext.prototype.constructor = Simple_nameContext;
-
-Simple_nameContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Simple_nameContext.prototype.DOT = function() {
- return this.getToken(TSqlParser.DOT, 0);
-};
-
-Simple_nameContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterSimple_name(this);
- }
-};
-
-Simple_nameContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitSimple_name(this);
- }
-};
-
-Simple_nameContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitSimple_name(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Simple_nameContext = Simple_nameContext;
-
-TSqlParser.prototype.simple_name = function() {
-
- var localctx = new Simple_nameContext(this, this._ctx, this.state);
- this.enterRule(localctx, 910, TSqlParser.RULE_simple_name);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 10401;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1459,this._ctx);
- if(la_===1) {
- this.state = 10398;
- localctx.schema = this.id();
- this.state = 10399;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 10403;
- localctx.name = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Func_proc_name_schemaContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_func_proc_name_schema;
- this.schema = null; // IdContext
- this.procedure = null; // IdContext
- return this;
-}
-
-Func_proc_name_schemaContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Func_proc_name_schemaContext.prototype.constructor = Func_proc_name_schemaContext;
-
-Func_proc_name_schemaContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Func_proc_name_schemaContext.prototype.DOT = function() {
- return this.getToken(TSqlParser.DOT, 0);
-};
-
-Func_proc_name_schemaContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterFunc_proc_name_schema(this);
- }
-};
-
-Func_proc_name_schemaContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitFunc_proc_name_schema(this);
- }
-};
-
-Func_proc_name_schemaContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitFunc_proc_name_schema(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Func_proc_name_schemaContext = Func_proc_name_schemaContext;
-
-TSqlParser.prototype.func_proc_name_schema = function() {
-
- var localctx = new Func_proc_name_schemaContext(this, this._ctx, this.state);
- this.enterRule(localctx, 912, TSqlParser.RULE_func_proc_name_schema);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 10408;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1460,this._ctx);
- if(la_===1) {
- this.state = 10405;
- localctx.schema = this.id();
- this.state = 10406;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 10410;
- localctx.procedure = this.id();
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Func_proc_name_database_schemaContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_func_proc_name_database_schema;
- this.database = null; // IdContext
- this.schema = null; // IdContext
- this.procedure = null; // IdContext
- return this;
-}
-
-Func_proc_name_database_schemaContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Func_proc_name_database_schemaContext.prototype.constructor = Func_proc_name_database_schemaContext;
-
-Func_proc_name_database_schemaContext.prototype.func_proc_name_schema = function() {
- return this.getTypedRuleContext(Func_proc_name_schemaContext,0);
-};
-
-Func_proc_name_database_schemaContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Func_proc_name_database_schemaContext.prototype.DOT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DOT);
- } else {
- return this.getToken(TSqlParser.DOT, i);
- }
-};
-
-
-Func_proc_name_database_schemaContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterFunc_proc_name_database_schema(this);
- }
-};
-
-Func_proc_name_database_schemaContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitFunc_proc_name_database_schema(this);
- }
-};
-
-Func_proc_name_database_schemaContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitFunc_proc_name_database_schema(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Func_proc_name_database_schemaContext = Func_proc_name_database_schemaContext;
-
-TSqlParser.prototype.func_proc_name_database_schema = function() {
-
- var localctx = new Func_proc_name_database_schemaContext(this, this._ctx, this.state);
- this.enterRule(localctx, 914, TSqlParser.RULE_func_proc_name_database_schema);
- var _la = 0; // Token type
- try {
- this.state = 10423;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1463,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 10412;
- this.func_proc_name_schema();
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 10420;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1462,this._ctx);
- if(la_===1) {
- this.state = 10413;
- localctx.database = this.id();
- this.state = 10414;
- this.match(TSqlParser.DOT);
- this.state = 10416;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.CALLED || _la===TSqlParser.DATA_COMPRESSION || ((((_la - 112)) & ~0x1f) == 0 && ((1 << (_la - 112)) & ((1 << (TSqlParser.EVENTDATA - 112)) | (1 << (TSqlParser.FILENAME - 112)) | (1 << (TSqlParser.FILLFACTOR - 112)) | (1 << (TSqlParser.FORCESEEK - 112)))) !== 0) || ((((_la - 158)) & ~0x1f) == 0 && ((1 << (_la - 158)) & ((1 << (TSqlParser.INIT - 158)) | (1 << (TSqlParser.KEY - 158)) | (1 << (TSqlParser.MASTER - 158)) | (1 << (TSqlParser.MAX_MEMORY - 158)))) !== 0) || _la===TSqlParser.OFFSETS || _la===TSqlParser.PAGE || ((((_la - 259)) & ~0x1f) == 0 && ((1 << (_la - 259)) & ((1 << (TSqlParser.PUBLIC - 259)) | (1 << (TSqlParser.R - 259)) | (1 << (TSqlParser.RAW - 259)) | (1 << (TSqlParser.RETURN - 259)) | (1 << (TSqlParser.RETURNS - 259)) | (1 << (TSqlParser.ROWCOUNT - 259)))) !== 0) || ((((_la - 295)) & ~0x1f) == 0 && ((1 << (_la - 295)) & ((1 << (TSqlParser.SAFETY - 295)) | (1 << (TSqlParser.SERVER - 295)) | (1 << (TSqlParser.SID - 295)) | (1 << (TSqlParser.SOURCE - 295)) | (1 << (TSqlParser.SPLIT - 295)))) !== 0) || ((((_la - 327)) & ~0x1f) == 0 && ((1 << (_la - 327)) & ((1 << (TSqlParser.STATE - 327)) | (1 << (TSqlParser.START - 327)) | (1 << (TSqlParser.TARGET - 327)))) !== 0) || ((((_la - 380)) & ~0x1f) == 0 && ((1 << (_la - 380)) & ((1 << (TSqlParser.ABSOLUTE - 380)) | (1 << (TSqlParser.ACCENT_SENSITIVITY - 380)) | (1 << (TSqlParser.ACTION - 380)) | (1 << (TSqlParser.ACTIVATION - 380)) | (1 << (TSqlParser.ACTIVE - 380)) | (1 << (TSqlParser.ADDRESS - 380)) | (1 << (TSqlParser.AES_128 - 380)) | (1 << (TSqlParser.AES_192 - 380)) | (1 << (TSqlParser.AES_256 - 380)) | (1 << (TSqlParser.AFFINITY - 380)) | (1 << (TSqlParser.AFTER - 380)) | (1 << (TSqlParser.AGGREGATE - 380)) | (1 << (TSqlParser.ALGORITHM - 380)) | (1 << (TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS - 380)) | (1 << (TSqlParser.ALLOW_SNAPSHOT_ISOLATION - 380)) | (1 << (TSqlParser.ALLOWED - 380)) | (1 << (TSqlParser.ANSI_NULL_DEFAULT - 380)) | (1 << (TSqlParser.ANSI_NULLS - 380)) | (1 << (TSqlParser.ANSI_PADDING - 380)) | (1 << (TSqlParser.ANSI_WARNINGS - 380)) | (1 << (TSqlParser.APPLICATION_LOG - 380)) | (1 << (TSqlParser.APPLY - 380)) | (1 << (TSqlParser.ARITHABORT - 380)) | (1 << (TSqlParser.ASSEMBLY - 380)) | (1 << (TSqlParser.AUDIT - 380)) | (1 << (TSqlParser.AUDIT_GUID - 380)) | (1 << (TSqlParser.AUTO - 380)) | (1 << (TSqlParser.AUTO_CLEANUP - 380)) | (1 << (TSqlParser.AUTO_CLOSE - 380)) | (1 << (TSqlParser.AUTO_CREATE_STATISTICS - 380)) | (1 << (TSqlParser.AUTO_SHRINK - 380)) | (1 << (TSqlParser.AUTO_UPDATE_STATISTICS - 380)))) !== 0) || ((((_la - 412)) & ~0x1f) == 0 && ((1 << (_la - 412)) & ((1 << (TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC - 412)) | (1 << (TSqlParser.AVAILABILITY - 412)) | (1 << (TSqlParser.AVG - 412)) | (1 << (TSqlParser.BACKUP_PRIORITY - 412)) | (1 << (TSqlParser.BEGIN_DIALOG - 412)) | (1 << (TSqlParser.BIGINT - 412)) | (1 << (TSqlParser.BINARY_BASE64 - 412)) | (1 << (TSqlParser.BINARY_CHECKSUM - 412)) | (1 << (TSqlParser.BINDING - 412)) | (1 << (TSqlParser.BLOB_STORAGE - 412)) | (1 << (TSqlParser.BROKER - 412)) | (1 << (TSqlParser.BROKER_INSTANCE - 412)) | (1 << (TSqlParser.BULK_LOGGED - 412)) | (1 << (TSqlParser.CALLER - 412)) | (1 << (TSqlParser.CAP_CPU_PERCENT - 412)) | (1 << (TSqlParser.CAST - 412)) | (1 << (TSqlParser.CATALOG - 412)) | (1 << (TSqlParser.CATCH - 412)) | (1 << (TSqlParser.CHANGE_RETENTION - 412)) | (1 << (TSqlParser.CHANGE_TRACKING - 412)) | (1 << (TSqlParser.CHECKSUM - 412)) | (1 << (TSqlParser.CHECKSUM_AGG - 412)) | (1 << (TSqlParser.CLEANUP - 412)) | (1 << (TSqlParser.COLLECTION - 412)) | (1 << (TSqlParser.COLUMN_MASTER_KEY - 412)) | (1 << (TSqlParser.COMMITTED - 412)) | (1 << (TSqlParser.COMPATIBILITY_LEVEL - 412)) | (1 << (TSqlParser.CONCAT - 412)) | (1 << (TSqlParser.CONCAT_NULL_YIELDS_NULL - 412)) | (1 << (TSqlParser.CONTENT - 412)) | (1 << (TSqlParser.CONTROL - 412)) | (1 << (TSqlParser.COOKIE - 412)))) !== 0) || ((((_la - 444)) & ~0x1f) == 0 && ((1 << (_la - 444)) & ((1 << (TSqlParser.COUNT - 444)) | (1 << (TSqlParser.COUNT_BIG - 444)) | (1 << (TSqlParser.COUNTER - 444)) | (1 << (TSqlParser.CPU - 444)) | (1 << (TSqlParser.CREATE_NEW - 444)) | (1 << (TSqlParser.CREATION_DISPOSITION - 444)) | (1 << (TSqlParser.CREDENTIAL - 444)) | (1 << (TSqlParser.CRYPTOGRAPHIC - 444)) | (1 << (TSqlParser.CURSOR_CLOSE_ON_COMMIT - 444)) | (1 << (TSqlParser.CURSOR_DEFAULT - 444)) | (1 << (TSqlParser.DATA - 444)) | (1 << (TSqlParser.DATE_CORRELATION_OPTIMIZATION - 444)) | (1 << (TSqlParser.DATEADD - 444)) | (1 << (TSqlParser.DATEDIFF - 444)) | (1 << (TSqlParser.DATENAME - 444)) | (1 << (TSqlParser.DATEPART - 444)) | (1 << (TSqlParser.DAYS - 444)) | (1 << (TSqlParser.DB_CHAINING - 444)) | (1 << (TSqlParser.DB_FAILOVER - 444)) | (1 << (TSqlParser.DECRYPTION - 444)) | (1 << (TSqlParser.DEFAULT_DOUBLE_QUOTE - 444)) | (1 << (TSqlParser.DEFAULT_FULLTEXT_LANGUAGE - 444)) | (1 << (TSqlParser.DEFAULT_LANGUAGE - 444)) | (1 << (TSqlParser.DELAY - 444)) | (1 << (TSqlParser.DELAYED_DURABILITY - 444)) | (1 << (TSqlParser.DELETED - 444)) | (1 << (TSqlParser.DENSE_RANK - 444)) | (1 << (TSqlParser.DEPENDENTS - 444)) | (1 << (TSqlParser.DES - 444)) | (1 << (TSqlParser.DESCRIPTION - 444)) | (1 << (TSqlParser.DESX - 444)) | (1 << (TSqlParser.DHCP - 444)))) !== 0) || ((((_la - 476)) & ~0x1f) == 0 && ((1 << (_la - 476)) & ((1 << (TSqlParser.DIALOG - 476)) | (1 << (TSqlParser.DIRECTORY_NAME - 476)) | (1 << (TSqlParser.DISABLE - 476)) | (1 << (TSqlParser.DISABLE_BROKER - 476)) | (1 << (TSqlParser.DISABLED - 476)) | (1 << (TSqlParser.DISK_DRIVE - 476)) | (1 << (TSqlParser.DOCUMENT - 476)) | (1 << (TSqlParser.DYNAMIC - 476)) | (1 << (TSqlParser.EMERGENCY - 476)) | (1 << (TSqlParser.EMPTY - 476)) | (1 << (TSqlParser.ENABLE - 476)) | (1 << (TSqlParser.ENABLE_BROKER - 476)) | (1 << (TSqlParser.ENCRYPTED_VALUE - 476)) | (1 << (TSqlParser.ENCRYPTION - 476)) | (1 << (TSqlParser.ENDPOINT_URL - 476)) | (1 << (TSqlParser.ERROR_BROKER_CONVERSATIONS - 476)) | (1 << (TSqlParser.EXCLUSIVE - 476)) | (1 << (TSqlParser.EXECUTABLE - 476)) | (1 << (TSqlParser.EXIST - 476)) | (1 << (TSqlParser.EXPAND - 476)) | (1 << (TSqlParser.EXPIRY_DATE - 476)) | (1 << (TSqlParser.EXPLICIT - 476)) | (1 << (TSqlParser.FAIL_OPERATION - 476)) | (1 << (TSqlParser.FAILOVER_MODE - 476)) | (1 << (TSqlParser.FAILURE - 476)) | (1 << (TSqlParser.FAILURE_CONDITION_LEVEL - 476)) | (1 << (TSqlParser.FAST - 476)) | (1 << (TSqlParser.FAST_FORWARD - 476)) | (1 << (TSqlParser.FILEGROUP - 476)) | (1 << (TSqlParser.FILEGROWTH - 476)) | (1 << (TSqlParser.FILEPATH - 476)))) !== 0) || ((((_la - 508)) & ~0x1f) == 0 && ((1 << (_la - 508)) & ((1 << (TSqlParser.FILESTREAM - 508)) | (1 << (TSqlParser.FILTER - 508)) | (1 << (TSqlParser.FIRST - 508)) | (1 << (TSqlParser.FIRST_VALUE - 508)) | (1 << (TSqlParser.FOLLOWING - 508)) | (1 << (TSqlParser.FORCE - 508)) | (1 << (TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS - 508)) | (1 << (TSqlParser.FORCED - 508)) | (1 << (TSqlParser.FORMAT - 508)) | (1 << (TSqlParser.FORWARD_ONLY - 508)) | (1 << (TSqlParser.FULLSCAN - 508)) | (1 << (TSqlParser.FULLTEXT - 508)) | (1 << (TSqlParser.GB - 508)) | (1 << (TSqlParser.GETDATE - 508)) | (1 << (TSqlParser.GETUTCDATE - 508)) | (1 << (TSqlParser.GLOBAL - 508)) | (1 << (TSqlParser.GO - 508)) | (1 << (TSqlParser.GROUP_MAX_REQUESTS - 508)) | (1 << (TSqlParser.GROUPING - 508)) | (1 << (TSqlParser.GROUPING_ID - 508)) | (1 << (TSqlParser.HADR - 508)) | (1 << (TSqlParser.HASH - 508)) | (1 << (TSqlParser.HEALTH_CHECK_TIMEOUT - 508)) | (1 << (TSqlParser.HIGH - 508)) | (1 << (TSqlParser.HONOR_BROKER_PRIORITY - 508)) | (1 << (TSqlParser.HOURS - 508)) | (1 << (TSqlParser.IDENTITY_VALUE - 508)) | (1 << (TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX - 508)) | (1 << (TSqlParser.IMMEDIATE - 508)) | (1 << (TSqlParser.IMPERSONATE - 508)) | (1 << (TSqlParser.IMPORTANCE - 508)))) !== 0) || ((((_la - 540)) & ~0x1f) == 0 && ((1 << (_la - 540)) & ((1 << (TSqlParser.INCREMENTAL - 540)) | (1 << (TSqlParser.INITIATOR - 540)) | (1 << (TSqlParser.INPUT - 540)) | (1 << (TSqlParser.INSENSITIVE - 540)) | (1 << (TSqlParser.INSERTED - 540)) | (1 << (TSqlParser.INT - 540)) | (1 << (TSqlParser.IP - 540)) | (1 << (TSqlParser.ISOLATION - 540)) | (1 << (TSqlParser.KB - 540)) | (1 << (TSqlParser.KEEP - 540)) | (1 << (TSqlParser.KEEPFIXED - 540)) | (1 << (TSqlParser.KEY_SOURCE - 540)) | (1 << (TSqlParser.KEYS - 540)) | (1 << (TSqlParser.KEYSET - 540)) | (1 << (TSqlParser.LAG - 540)) | (1 << (TSqlParser.LAST - 540)) | (1 << (TSqlParser.LAST_VALUE - 540)) | (1 << (TSqlParser.LEAD - 540)) | (1 << (TSqlParser.LEVEL - 540)) | (1 << (TSqlParser.LIST - 540)) | (1 << (TSqlParser.LISTENER - 540)) | (1 << (TSqlParser.LISTENER_URL - 540)) | (1 << (TSqlParser.LOB_COMPACTION - 540)) | (1 << (TSqlParser.LOCAL - 540)) | (1 << (TSqlParser.LOCATION - 540)) | (1 << (TSqlParser.LOCK - 540)) | (1 << (TSqlParser.LOCK_ESCALATION - 540)) | (1 << (TSqlParser.LOGIN - 540)) | (1 << (TSqlParser.LOOP - 540)) | (1 << (TSqlParser.LOW - 540)))) !== 0) || ((((_la - 572)) & ~0x1f) == 0 && ((1 << (_la - 572)) & ((1 << (TSqlParser.MANUAL - 572)) | (1 << (TSqlParser.MARK - 572)) | (1 << (TSqlParser.MATERIALIZED - 572)) | (1 << (TSqlParser.MAX - 572)) | (1 << (TSqlParser.MAX_CPU_PERCENT - 572)) | (1 << (TSqlParser.MAX_DOP - 572)) | (1 << (TSqlParser.MAX_FILES - 572)) | (1 << (TSqlParser.MAX_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MAX_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MAX_PROCESSES - 572)) | (1 << (TSqlParser.MAX_QUEUE_READERS - 572)) | (1 << (TSqlParser.MAX_ROLLOVER_FILES - 572)) | (1 << (TSqlParser.MAXDOP - 572)) | (1 << (TSqlParser.MAXRECURSION - 572)) | (1 << (TSqlParser.MAXSIZE - 572)) | (1 << (TSqlParser.MB - 572)) | (1 << (TSqlParser.MEDIUM - 572)) | (1 << (TSqlParser.MEMORY_OPTIMIZED_DATA - 572)) | (1 << (TSqlParser.MESSAGE - 572)) | (1 << (TSqlParser.MIN - 572)) | (1 << (TSqlParser.MIN_ACTIVE_ROWVERSION - 572)) | (1 << (TSqlParser.MIN_CPU_PERCENT - 572)) | (1 << (TSqlParser.MIN_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MIN_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MINUTES - 572)) | (1 << (TSqlParser.MIRROR_ADDRESS - 572)) | (1 << (TSqlParser.MIXED_PAGE_ALLOCATION - 572)) | (1 << (TSqlParser.MODE - 572)) | (1 << (TSqlParser.MODIFY - 572)) | (1 << (TSqlParser.MOVE - 572)) | (1 << (TSqlParser.MULTI_USER - 572)) | (1 << (TSqlParser.NAME - 572)))) !== 0) || ((((_la - 604)) & ~0x1f) == 0 && ((1 << (_la - 604)) & ((1 << (TSqlParser.NESTED_TRIGGERS - 604)) | (1 << (TSqlParser.NEW_ACCOUNT - 604)) | (1 << (TSqlParser.NEW_BROKER - 604)) | (1 << (TSqlParser.NEW_PASSWORD - 604)) | (1 << (TSqlParser.NEXT - 604)) | (1 << (TSqlParser.NO - 604)) | (1 << (TSqlParser.NO_TRUNCATE - 604)) | (1 << (TSqlParser.NO_WAIT - 604)) | (1 << (TSqlParser.NOCOUNT - 604)) | (1 << (TSqlParser.NODES - 604)) | (1 << (TSqlParser.NOEXPAND - 604)) | (1 << (TSqlParser.NON_TRANSACTED_ACCESS - 604)) | (1 << (TSqlParser.NORECOMPUTE - 604)) | (1 << (TSqlParser.NORECOVERY - 604)) | (1 << (TSqlParser.NOWAIT - 604)) | (1 << (TSqlParser.NTILE - 604)) | (1 << (TSqlParser.NUMANODE - 604)) | (1 << (TSqlParser.NUMBER - 604)) | (1 << (TSqlParser.NUMERIC_ROUNDABORT - 604)) | (1 << (TSqlParser.OBJECT - 604)) | (1 << (TSqlParser.OFFLINE - 604)) | (1 << (TSqlParser.OFFSET - 604)) | (1 << (TSqlParser.OLD_ACCOUNT - 604)) | (1 << (TSqlParser.ONLINE - 604)) | (1 << (TSqlParser.ONLY - 604)) | (1 << (TSqlParser.OPEN_EXISTING - 604)) | (1 << (TSqlParser.OPTIMISTIC - 604)) | (1 << (TSqlParser.OPTIMIZE - 604)) | (1 << (TSqlParser.OUT - 604)) | (1 << (TSqlParser.OUTPUT - 604)) | (1 << (TSqlParser.OWNER - 604)))) !== 0) || ((((_la - 636)) & ~0x1f) == 0 && ((1 << (_la - 636)) & ((1 << (TSqlParser.PAGE_VERIFY - 636)) | (1 << (TSqlParser.PARAMETERIZATION - 636)) | (1 << (TSqlParser.PARTITION - 636)) | (1 << (TSqlParser.PARTITIONS - 636)) | (1 << (TSqlParser.PARTNER - 636)) | (1 << (TSqlParser.PATH - 636)) | (1 << (TSqlParser.POISON_MESSAGE_HANDLING - 636)) | (1 << (TSqlParser.POOL - 636)) | (1 << (TSqlParser.PORT - 636)) | (1 << (TSqlParser.PRECEDING - 636)) | (1 << (TSqlParser.PRIMARY_ROLE - 636)) | (1 << (TSqlParser.PRIOR - 636)) | (1 << (TSqlParser.PRIORITY - 636)) | (1 << (TSqlParser.PRIORITY_LEVEL - 636)) | (1 << (TSqlParser.PRIVATE - 636)) | (1 << (TSqlParser.PRIVATE_KEY - 636)) | (1 << (TSqlParser.PRIVILEGES - 636)) | (1 << (TSqlParser.PROCEDURE_NAME - 636)) | (1 << (TSqlParser.PROPERTY - 636)) | (1 << (TSqlParser.PROVIDER - 636)) | (1 << (TSqlParser.PROVIDER_KEY_NAME - 636)) | (1 << (TSqlParser.QUERY - 636)) | (1 << (TSqlParser.QUEUE - 636)) | (1 << (TSqlParser.QUEUE_DELAY - 636)) | (1 << (TSqlParser.QUOTED_IDENTIFIER - 636)) | (1 << (TSqlParser.RANGE - 636)) | (1 << (TSqlParser.RANK - 636)) | (1 << (TSqlParser.RC2 - 636)) | (1 << (TSqlParser.RC4 - 636)) | (1 << (TSqlParser.RC4_128 - 636)) | (1 << (TSqlParser.READ_COMMITTED_SNAPSHOT - 636)) | (1 << (TSqlParser.READ_ONLY - 636)))) !== 0) || ((((_la - 668)) & ~0x1f) == 0 && ((1 << (_la - 668)) & ((1 << (TSqlParser.READ_ONLY_ROUTING_LIST - 668)) | (1 << (TSqlParser.READ_WRITE - 668)) | (1 << (TSqlParser.READONLY - 668)) | (1 << (TSqlParser.REBUILD - 668)) | (1 << (TSqlParser.RECEIVE - 668)) | (1 << (TSqlParser.RECOMPILE - 668)) | (1 << (TSqlParser.RECOVERY - 668)) | (1 << (TSqlParser.RECURSIVE_TRIGGERS - 668)) | (1 << (TSqlParser.RELATIVE - 668)) | (1 << (TSqlParser.REMOTE - 668)) | (1 << (TSqlParser.REMOTE_SERVICE_NAME - 668)) | (1 << (TSqlParser.REMOVE - 668)) | (1 << (TSqlParser.REORGANIZE - 668)) | (1 << (TSqlParser.REPEATABLE - 668)) | (1 << (TSqlParser.REPLICA - 668)) | (1 << (TSqlParser.REQUEST_MAX_CPU_TIME_SEC - 668)) | (1 << (TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT - 668)) | (1 << (TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC - 668)) | (1 << (TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT - 668)) | (1 << (TSqlParser.RESERVE_DISK_SPACE - 668)) | (1 << (TSqlParser.RESOURCE - 668)) | (1 << (TSqlParser.RESOURCE_MANAGER_LOCATION - 668)) | (1 << (TSqlParser.RESTRICTED_USER - 668)) | (1 << (TSqlParser.RETENTION - 668)) | (1 << (TSqlParser.ROBUST - 668)) | (1 << (TSqlParser.ROOT - 668)) | (1 << (TSqlParser.ROUTE - 668)) | (1 << (TSqlParser.ROW - 668)) | (1 << (TSqlParser.ROW_NUMBER - 668)) | (1 << (TSqlParser.ROWGUID - 668)) | (1 << (TSqlParser.ROWS - 668)) | (1 << (TSqlParser.SAMPLE - 668)))) !== 0) || ((((_la - 700)) & ~0x1f) == 0 && ((1 << (_la - 700)) & ((1 << (TSqlParser.SCHEMABINDING - 700)) | (1 << (TSqlParser.SCOPED - 700)) | (1 << (TSqlParser.SCROLL - 700)) | (1 << (TSqlParser.SCROLL_LOCKS - 700)) | (1 << (TSqlParser.SEARCH - 700)) | (1 << (TSqlParser.SECONDARY - 700)) | (1 << (TSqlParser.SECONDARY_ONLY - 700)) | (1 << (TSqlParser.SECONDARY_ROLE - 700)) | (1 << (TSqlParser.SECONDS - 700)) | (1 << (TSqlParser.SECRET - 700)) | (1 << (TSqlParser.SECURITY - 700)) | (1 << (TSqlParser.SECURITY_LOG - 700)) | (1 << (TSqlParser.SEEDING_MODE - 700)) | (1 << (TSqlParser.SELF - 700)) | (1 << (TSqlParser.SEMI_SENSITIVE - 700)) | (1 << (TSqlParser.SEND - 700)) | (1 << (TSqlParser.SENT - 700)) | (1 << (TSqlParser.SEQUENCE - 700)) | (1 << (TSqlParser.SERIALIZABLE - 700)) | (1 << (TSqlParser.SESSION_TIMEOUT - 700)) | (1 << (TSqlParser.SETERROR - 700)) | (1 << (TSqlParser.SHARE - 700)) | (1 << (TSqlParser.SHOWPLAN - 700)) | (1 << (TSqlParser.SIGNATURE - 700)) | (1 << (TSqlParser.SIMPLE - 700)) | (1 << (TSqlParser.SINGLE_USER - 700)) | (1 << (TSqlParser.SIZE - 700)) | (1 << (TSqlParser.SMALLINT - 700)) | (1 << (TSqlParser.SNAPSHOT - 700)) | (1 << (TSqlParser.SPATIAL_WINDOW_MAX_CELLS - 700)) | (1 << (TSqlParser.STANDBY - 700)) | (1 << (TSqlParser.START_DATE - 700)))) !== 0) || ((((_la - 732)) & ~0x1f) == 0 && ((1 << (_la - 732)) & ((1 << (TSqlParser.STATIC - 732)) | (1 << (TSqlParser.STATS_STREAM - 732)) | (1 << (TSqlParser.STATUS - 732)) | (1 << (TSqlParser.STDEV - 732)) | (1 << (TSqlParser.STDEVP - 732)) | (1 << (TSqlParser.STOPLIST - 732)) | (1 << (TSqlParser.STRING_AGG - 732)) | (1 << (TSqlParser.STUFF - 732)) | (1 << (TSqlParser.SUBJECT - 732)) | (1 << (TSqlParser.SUM - 732)) | (1 << (TSqlParser.SUSPEND - 732)) | (1 << (TSqlParser.SYMMETRIC - 732)) | (1 << (TSqlParser.SYNCHRONOUS_COMMIT - 732)) | (1 << (TSqlParser.SYNONYM - 732)) | (1 << (TSqlParser.SYSTEM - 732)) | (1 << (TSqlParser.TAKE - 732)) | (1 << (TSqlParser.TARGET_RECOVERY_TIME - 732)) | (1 << (TSqlParser.TB - 732)) | (1 << (TSqlParser.TEXTIMAGE_ON - 732)) | (1 << (TSqlParser.THROW - 732)) | (1 << (TSqlParser.TIES - 732)) | (1 << (TSqlParser.TIME - 732)) | (1 << (TSqlParser.TIMEOUT - 732)) | (1 << (TSqlParser.TIMER - 732)) | (1 << (TSqlParser.TINYINT - 732)) | (1 << (TSqlParser.TORN_PAGE_DETECTION - 732)) | (1 << (TSqlParser.TRANSFORM_NOISE_WORDS - 732)) | (1 << (TSqlParser.TRIPLE_DES - 732)) | (1 << (TSqlParser.TRIPLE_DES_3KEY - 732)) | (1 << (TSqlParser.TRUSTWORTHY - 732)))) !== 0) || ((((_la - 764)) & ~0x1f) == 0 && ((1 << (_la - 764)) & ((1 << (TSqlParser.TRY - 764)) | (1 << (TSqlParser.TSQL - 764)) | (1 << (TSqlParser.TWO_DIGIT_YEAR_CUTOFF - 764)) | (1 << (TSqlParser.TYPE - 764)) | (1 << (TSqlParser.TYPE_WARNING - 764)) | (1 << (TSqlParser.UNBOUNDED - 764)) | (1 << (TSqlParser.UNCOMMITTED - 764)) | (1 << (TSqlParser.UNKNOWN - 764)) | (1 << (TSqlParser.UNLIMITED - 764)) | (1 << (TSqlParser.USING - 764)) | (1 << (TSqlParser.VALID_XML - 764)) | (1 << (TSqlParser.VALIDATION - 764)) | (1 << (TSqlParser.VALUE - 764)) | (1 << (TSqlParser.VAR - 764)) | (1 << (TSqlParser.VARP - 764)) | (1 << (TSqlParser.VIEW_METADATA - 764)) | (1 << (TSqlParser.VIEWS - 764)) | (1 << (TSqlParser.WAIT - 764)) | (1 << (TSqlParser.WELL_FORMED_XML - 764)) | (1 << (TSqlParser.WORK - 764)) | (1 << (TSqlParser.WORKLOAD - 764)) | (1 << (TSqlParser.XML - 764)) | (1 << (TSqlParser.XMLNAMESPACES - 764)))) !== 0) || ((((_la - 796)) & ~0x1f) == 0 && ((1 << (_la - 796)) & ((1 << (TSqlParser.DOUBLE_QUOTE_ID - 796)) | (1 << (TSqlParser.SQUARE_BRACKET_ID - 796)) | (1 << (TSqlParser.ID - 796)))) !== 0)) {
- this.state = 10415;
- localctx.schema = this.id();
- }
-
- this.state = 10418;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 10422;
- localctx.procedure = this.id();
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Func_proc_name_server_database_schemaContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_func_proc_name_server_database_schema;
- this.server = null; // IdContext
- this.database = null; // IdContext
- this.schema = null; // IdContext
- this.procedure = null; // IdContext
- return this;
-}
-
-Func_proc_name_server_database_schemaContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Func_proc_name_server_database_schemaContext.prototype.constructor = Func_proc_name_server_database_schemaContext;
-
-Func_proc_name_server_database_schemaContext.prototype.func_proc_name_database_schema = function() {
- return this.getTypedRuleContext(Func_proc_name_database_schemaContext,0);
-};
-
-Func_proc_name_server_database_schemaContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Func_proc_name_server_database_schemaContext.prototype.DOT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DOT);
- } else {
- return this.getToken(TSqlParser.DOT, i);
- }
-};
-
-
-Func_proc_name_server_database_schemaContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterFunc_proc_name_server_database_schema(this);
- }
-};
-
-Func_proc_name_server_database_schemaContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitFunc_proc_name_server_database_schema(this);
- }
-};
-
-Func_proc_name_server_database_schemaContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitFunc_proc_name_server_database_schema(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Func_proc_name_server_database_schemaContext = Func_proc_name_server_database_schemaContext;
-
-TSqlParser.prototype.func_proc_name_server_database_schema = function() {
-
- var localctx = new Func_proc_name_server_database_schemaContext(this, this._ctx, this.state);
- this.enterRule(localctx, 916, TSqlParser.RULE_func_proc_name_server_database_schema);
- var _la = 0; // Token type
- try {
- this.state = 10438;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1466,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 10425;
- this.func_proc_name_database_schema();
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 10435;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1465,this._ctx);
- if(la_===1) {
- this.state = 10426;
- localctx.server = this.id();
- this.state = 10427;
- this.match(TSqlParser.DOT);
- this.state = 10428;
- localctx.database = this.id();
- this.state = 10429;
- this.match(TSqlParser.DOT);
- this.state = 10431;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.CALLED || _la===TSqlParser.DATA_COMPRESSION || ((((_la - 112)) & ~0x1f) == 0 && ((1 << (_la - 112)) & ((1 << (TSqlParser.EVENTDATA - 112)) | (1 << (TSqlParser.FILENAME - 112)) | (1 << (TSqlParser.FILLFACTOR - 112)) | (1 << (TSqlParser.FORCESEEK - 112)))) !== 0) || ((((_la - 158)) & ~0x1f) == 0 && ((1 << (_la - 158)) & ((1 << (TSqlParser.INIT - 158)) | (1 << (TSqlParser.KEY - 158)) | (1 << (TSqlParser.MASTER - 158)) | (1 << (TSqlParser.MAX_MEMORY - 158)))) !== 0) || _la===TSqlParser.OFFSETS || _la===TSqlParser.PAGE || ((((_la - 259)) & ~0x1f) == 0 && ((1 << (_la - 259)) & ((1 << (TSqlParser.PUBLIC - 259)) | (1 << (TSqlParser.R - 259)) | (1 << (TSqlParser.RAW - 259)) | (1 << (TSqlParser.RETURN - 259)) | (1 << (TSqlParser.RETURNS - 259)) | (1 << (TSqlParser.ROWCOUNT - 259)))) !== 0) || ((((_la - 295)) & ~0x1f) == 0 && ((1 << (_la - 295)) & ((1 << (TSqlParser.SAFETY - 295)) | (1 << (TSqlParser.SERVER - 295)) | (1 << (TSqlParser.SID - 295)) | (1 << (TSqlParser.SOURCE - 295)) | (1 << (TSqlParser.SPLIT - 295)))) !== 0) || ((((_la - 327)) & ~0x1f) == 0 && ((1 << (_la - 327)) & ((1 << (TSqlParser.STATE - 327)) | (1 << (TSqlParser.START - 327)) | (1 << (TSqlParser.TARGET - 327)))) !== 0) || ((((_la - 380)) & ~0x1f) == 0 && ((1 << (_la - 380)) & ((1 << (TSqlParser.ABSOLUTE - 380)) | (1 << (TSqlParser.ACCENT_SENSITIVITY - 380)) | (1 << (TSqlParser.ACTION - 380)) | (1 << (TSqlParser.ACTIVATION - 380)) | (1 << (TSqlParser.ACTIVE - 380)) | (1 << (TSqlParser.ADDRESS - 380)) | (1 << (TSqlParser.AES_128 - 380)) | (1 << (TSqlParser.AES_192 - 380)) | (1 << (TSqlParser.AES_256 - 380)) | (1 << (TSqlParser.AFFINITY - 380)) | (1 << (TSqlParser.AFTER - 380)) | (1 << (TSqlParser.AGGREGATE - 380)) | (1 << (TSqlParser.ALGORITHM - 380)) | (1 << (TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS - 380)) | (1 << (TSqlParser.ALLOW_SNAPSHOT_ISOLATION - 380)) | (1 << (TSqlParser.ALLOWED - 380)) | (1 << (TSqlParser.ANSI_NULL_DEFAULT - 380)) | (1 << (TSqlParser.ANSI_NULLS - 380)) | (1 << (TSqlParser.ANSI_PADDING - 380)) | (1 << (TSqlParser.ANSI_WARNINGS - 380)) | (1 << (TSqlParser.APPLICATION_LOG - 380)) | (1 << (TSqlParser.APPLY - 380)) | (1 << (TSqlParser.ARITHABORT - 380)) | (1 << (TSqlParser.ASSEMBLY - 380)) | (1 << (TSqlParser.AUDIT - 380)) | (1 << (TSqlParser.AUDIT_GUID - 380)) | (1 << (TSqlParser.AUTO - 380)) | (1 << (TSqlParser.AUTO_CLEANUP - 380)) | (1 << (TSqlParser.AUTO_CLOSE - 380)) | (1 << (TSqlParser.AUTO_CREATE_STATISTICS - 380)) | (1 << (TSqlParser.AUTO_SHRINK - 380)) | (1 << (TSqlParser.AUTO_UPDATE_STATISTICS - 380)))) !== 0) || ((((_la - 412)) & ~0x1f) == 0 && ((1 << (_la - 412)) & ((1 << (TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC - 412)) | (1 << (TSqlParser.AVAILABILITY - 412)) | (1 << (TSqlParser.AVG - 412)) | (1 << (TSqlParser.BACKUP_PRIORITY - 412)) | (1 << (TSqlParser.BEGIN_DIALOG - 412)) | (1 << (TSqlParser.BIGINT - 412)) | (1 << (TSqlParser.BINARY_BASE64 - 412)) | (1 << (TSqlParser.BINARY_CHECKSUM - 412)) | (1 << (TSqlParser.BINDING - 412)) | (1 << (TSqlParser.BLOB_STORAGE - 412)) | (1 << (TSqlParser.BROKER - 412)) | (1 << (TSqlParser.BROKER_INSTANCE - 412)) | (1 << (TSqlParser.BULK_LOGGED - 412)) | (1 << (TSqlParser.CALLER - 412)) | (1 << (TSqlParser.CAP_CPU_PERCENT - 412)) | (1 << (TSqlParser.CAST - 412)) | (1 << (TSqlParser.CATALOG - 412)) | (1 << (TSqlParser.CATCH - 412)) | (1 << (TSqlParser.CHANGE_RETENTION - 412)) | (1 << (TSqlParser.CHANGE_TRACKING - 412)) | (1 << (TSqlParser.CHECKSUM - 412)) | (1 << (TSqlParser.CHECKSUM_AGG - 412)) | (1 << (TSqlParser.CLEANUP - 412)) | (1 << (TSqlParser.COLLECTION - 412)) | (1 << (TSqlParser.COLUMN_MASTER_KEY - 412)) | (1 << (TSqlParser.COMMITTED - 412)) | (1 << (TSqlParser.COMPATIBILITY_LEVEL - 412)) | (1 << (TSqlParser.CONCAT - 412)) | (1 << (TSqlParser.CONCAT_NULL_YIELDS_NULL - 412)) | (1 << (TSqlParser.CONTENT - 412)) | (1 << (TSqlParser.CONTROL - 412)) | (1 << (TSqlParser.COOKIE - 412)))) !== 0) || ((((_la - 444)) & ~0x1f) == 0 && ((1 << (_la - 444)) & ((1 << (TSqlParser.COUNT - 444)) | (1 << (TSqlParser.COUNT_BIG - 444)) | (1 << (TSqlParser.COUNTER - 444)) | (1 << (TSqlParser.CPU - 444)) | (1 << (TSqlParser.CREATE_NEW - 444)) | (1 << (TSqlParser.CREATION_DISPOSITION - 444)) | (1 << (TSqlParser.CREDENTIAL - 444)) | (1 << (TSqlParser.CRYPTOGRAPHIC - 444)) | (1 << (TSqlParser.CURSOR_CLOSE_ON_COMMIT - 444)) | (1 << (TSqlParser.CURSOR_DEFAULT - 444)) | (1 << (TSqlParser.DATA - 444)) | (1 << (TSqlParser.DATE_CORRELATION_OPTIMIZATION - 444)) | (1 << (TSqlParser.DATEADD - 444)) | (1 << (TSqlParser.DATEDIFF - 444)) | (1 << (TSqlParser.DATENAME - 444)) | (1 << (TSqlParser.DATEPART - 444)) | (1 << (TSqlParser.DAYS - 444)) | (1 << (TSqlParser.DB_CHAINING - 444)) | (1 << (TSqlParser.DB_FAILOVER - 444)) | (1 << (TSqlParser.DECRYPTION - 444)) | (1 << (TSqlParser.DEFAULT_DOUBLE_QUOTE - 444)) | (1 << (TSqlParser.DEFAULT_FULLTEXT_LANGUAGE - 444)) | (1 << (TSqlParser.DEFAULT_LANGUAGE - 444)) | (1 << (TSqlParser.DELAY - 444)) | (1 << (TSqlParser.DELAYED_DURABILITY - 444)) | (1 << (TSqlParser.DELETED - 444)) | (1 << (TSqlParser.DENSE_RANK - 444)) | (1 << (TSqlParser.DEPENDENTS - 444)) | (1 << (TSqlParser.DES - 444)) | (1 << (TSqlParser.DESCRIPTION - 444)) | (1 << (TSqlParser.DESX - 444)) | (1 << (TSqlParser.DHCP - 444)))) !== 0) || ((((_la - 476)) & ~0x1f) == 0 && ((1 << (_la - 476)) & ((1 << (TSqlParser.DIALOG - 476)) | (1 << (TSqlParser.DIRECTORY_NAME - 476)) | (1 << (TSqlParser.DISABLE - 476)) | (1 << (TSqlParser.DISABLE_BROKER - 476)) | (1 << (TSqlParser.DISABLED - 476)) | (1 << (TSqlParser.DISK_DRIVE - 476)) | (1 << (TSqlParser.DOCUMENT - 476)) | (1 << (TSqlParser.DYNAMIC - 476)) | (1 << (TSqlParser.EMERGENCY - 476)) | (1 << (TSqlParser.EMPTY - 476)) | (1 << (TSqlParser.ENABLE - 476)) | (1 << (TSqlParser.ENABLE_BROKER - 476)) | (1 << (TSqlParser.ENCRYPTED_VALUE - 476)) | (1 << (TSqlParser.ENCRYPTION - 476)) | (1 << (TSqlParser.ENDPOINT_URL - 476)) | (1 << (TSqlParser.ERROR_BROKER_CONVERSATIONS - 476)) | (1 << (TSqlParser.EXCLUSIVE - 476)) | (1 << (TSqlParser.EXECUTABLE - 476)) | (1 << (TSqlParser.EXIST - 476)) | (1 << (TSqlParser.EXPAND - 476)) | (1 << (TSqlParser.EXPIRY_DATE - 476)) | (1 << (TSqlParser.EXPLICIT - 476)) | (1 << (TSqlParser.FAIL_OPERATION - 476)) | (1 << (TSqlParser.FAILOVER_MODE - 476)) | (1 << (TSqlParser.FAILURE - 476)) | (1 << (TSqlParser.FAILURE_CONDITION_LEVEL - 476)) | (1 << (TSqlParser.FAST - 476)) | (1 << (TSqlParser.FAST_FORWARD - 476)) | (1 << (TSqlParser.FILEGROUP - 476)) | (1 << (TSqlParser.FILEGROWTH - 476)) | (1 << (TSqlParser.FILEPATH - 476)))) !== 0) || ((((_la - 508)) & ~0x1f) == 0 && ((1 << (_la - 508)) & ((1 << (TSqlParser.FILESTREAM - 508)) | (1 << (TSqlParser.FILTER - 508)) | (1 << (TSqlParser.FIRST - 508)) | (1 << (TSqlParser.FIRST_VALUE - 508)) | (1 << (TSqlParser.FOLLOWING - 508)) | (1 << (TSqlParser.FORCE - 508)) | (1 << (TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS - 508)) | (1 << (TSqlParser.FORCED - 508)) | (1 << (TSqlParser.FORMAT - 508)) | (1 << (TSqlParser.FORWARD_ONLY - 508)) | (1 << (TSqlParser.FULLSCAN - 508)) | (1 << (TSqlParser.FULLTEXT - 508)) | (1 << (TSqlParser.GB - 508)) | (1 << (TSqlParser.GETDATE - 508)) | (1 << (TSqlParser.GETUTCDATE - 508)) | (1 << (TSqlParser.GLOBAL - 508)) | (1 << (TSqlParser.GO - 508)) | (1 << (TSqlParser.GROUP_MAX_REQUESTS - 508)) | (1 << (TSqlParser.GROUPING - 508)) | (1 << (TSqlParser.GROUPING_ID - 508)) | (1 << (TSqlParser.HADR - 508)) | (1 << (TSqlParser.HASH - 508)) | (1 << (TSqlParser.HEALTH_CHECK_TIMEOUT - 508)) | (1 << (TSqlParser.HIGH - 508)) | (1 << (TSqlParser.HONOR_BROKER_PRIORITY - 508)) | (1 << (TSqlParser.HOURS - 508)) | (1 << (TSqlParser.IDENTITY_VALUE - 508)) | (1 << (TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX - 508)) | (1 << (TSqlParser.IMMEDIATE - 508)) | (1 << (TSqlParser.IMPERSONATE - 508)) | (1 << (TSqlParser.IMPORTANCE - 508)))) !== 0) || ((((_la - 540)) & ~0x1f) == 0 && ((1 << (_la - 540)) & ((1 << (TSqlParser.INCREMENTAL - 540)) | (1 << (TSqlParser.INITIATOR - 540)) | (1 << (TSqlParser.INPUT - 540)) | (1 << (TSqlParser.INSENSITIVE - 540)) | (1 << (TSqlParser.INSERTED - 540)) | (1 << (TSqlParser.INT - 540)) | (1 << (TSqlParser.IP - 540)) | (1 << (TSqlParser.ISOLATION - 540)) | (1 << (TSqlParser.KB - 540)) | (1 << (TSqlParser.KEEP - 540)) | (1 << (TSqlParser.KEEPFIXED - 540)) | (1 << (TSqlParser.KEY_SOURCE - 540)) | (1 << (TSqlParser.KEYS - 540)) | (1 << (TSqlParser.KEYSET - 540)) | (1 << (TSqlParser.LAG - 540)) | (1 << (TSqlParser.LAST - 540)) | (1 << (TSqlParser.LAST_VALUE - 540)) | (1 << (TSqlParser.LEAD - 540)) | (1 << (TSqlParser.LEVEL - 540)) | (1 << (TSqlParser.LIST - 540)) | (1 << (TSqlParser.LISTENER - 540)) | (1 << (TSqlParser.LISTENER_URL - 540)) | (1 << (TSqlParser.LOB_COMPACTION - 540)) | (1 << (TSqlParser.LOCAL - 540)) | (1 << (TSqlParser.LOCATION - 540)) | (1 << (TSqlParser.LOCK - 540)) | (1 << (TSqlParser.LOCK_ESCALATION - 540)) | (1 << (TSqlParser.LOGIN - 540)) | (1 << (TSqlParser.LOOP - 540)) | (1 << (TSqlParser.LOW - 540)))) !== 0) || ((((_la - 572)) & ~0x1f) == 0 && ((1 << (_la - 572)) & ((1 << (TSqlParser.MANUAL - 572)) | (1 << (TSqlParser.MARK - 572)) | (1 << (TSqlParser.MATERIALIZED - 572)) | (1 << (TSqlParser.MAX - 572)) | (1 << (TSqlParser.MAX_CPU_PERCENT - 572)) | (1 << (TSqlParser.MAX_DOP - 572)) | (1 << (TSqlParser.MAX_FILES - 572)) | (1 << (TSqlParser.MAX_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MAX_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MAX_PROCESSES - 572)) | (1 << (TSqlParser.MAX_QUEUE_READERS - 572)) | (1 << (TSqlParser.MAX_ROLLOVER_FILES - 572)) | (1 << (TSqlParser.MAXDOP - 572)) | (1 << (TSqlParser.MAXRECURSION - 572)) | (1 << (TSqlParser.MAXSIZE - 572)) | (1 << (TSqlParser.MB - 572)) | (1 << (TSqlParser.MEDIUM - 572)) | (1 << (TSqlParser.MEMORY_OPTIMIZED_DATA - 572)) | (1 << (TSqlParser.MESSAGE - 572)) | (1 << (TSqlParser.MIN - 572)) | (1 << (TSqlParser.MIN_ACTIVE_ROWVERSION - 572)) | (1 << (TSqlParser.MIN_CPU_PERCENT - 572)) | (1 << (TSqlParser.MIN_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MIN_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MINUTES - 572)) | (1 << (TSqlParser.MIRROR_ADDRESS - 572)) | (1 << (TSqlParser.MIXED_PAGE_ALLOCATION - 572)) | (1 << (TSqlParser.MODE - 572)) | (1 << (TSqlParser.MODIFY - 572)) | (1 << (TSqlParser.MOVE - 572)) | (1 << (TSqlParser.MULTI_USER - 572)) | (1 << (TSqlParser.NAME - 572)))) !== 0) || ((((_la - 604)) & ~0x1f) == 0 && ((1 << (_la - 604)) & ((1 << (TSqlParser.NESTED_TRIGGERS - 604)) | (1 << (TSqlParser.NEW_ACCOUNT - 604)) | (1 << (TSqlParser.NEW_BROKER - 604)) | (1 << (TSqlParser.NEW_PASSWORD - 604)) | (1 << (TSqlParser.NEXT - 604)) | (1 << (TSqlParser.NO - 604)) | (1 << (TSqlParser.NO_TRUNCATE - 604)) | (1 << (TSqlParser.NO_WAIT - 604)) | (1 << (TSqlParser.NOCOUNT - 604)) | (1 << (TSqlParser.NODES - 604)) | (1 << (TSqlParser.NOEXPAND - 604)) | (1 << (TSqlParser.NON_TRANSACTED_ACCESS - 604)) | (1 << (TSqlParser.NORECOMPUTE - 604)) | (1 << (TSqlParser.NORECOVERY - 604)) | (1 << (TSqlParser.NOWAIT - 604)) | (1 << (TSqlParser.NTILE - 604)) | (1 << (TSqlParser.NUMANODE - 604)) | (1 << (TSqlParser.NUMBER - 604)) | (1 << (TSqlParser.NUMERIC_ROUNDABORT - 604)) | (1 << (TSqlParser.OBJECT - 604)) | (1 << (TSqlParser.OFFLINE - 604)) | (1 << (TSqlParser.OFFSET - 604)) | (1 << (TSqlParser.OLD_ACCOUNT - 604)) | (1 << (TSqlParser.ONLINE - 604)) | (1 << (TSqlParser.ONLY - 604)) | (1 << (TSqlParser.OPEN_EXISTING - 604)) | (1 << (TSqlParser.OPTIMISTIC - 604)) | (1 << (TSqlParser.OPTIMIZE - 604)) | (1 << (TSqlParser.OUT - 604)) | (1 << (TSqlParser.OUTPUT - 604)) | (1 << (TSqlParser.OWNER - 604)))) !== 0) || ((((_la - 636)) & ~0x1f) == 0 && ((1 << (_la - 636)) & ((1 << (TSqlParser.PAGE_VERIFY - 636)) | (1 << (TSqlParser.PARAMETERIZATION - 636)) | (1 << (TSqlParser.PARTITION - 636)) | (1 << (TSqlParser.PARTITIONS - 636)) | (1 << (TSqlParser.PARTNER - 636)) | (1 << (TSqlParser.PATH - 636)) | (1 << (TSqlParser.POISON_MESSAGE_HANDLING - 636)) | (1 << (TSqlParser.POOL - 636)) | (1 << (TSqlParser.PORT - 636)) | (1 << (TSqlParser.PRECEDING - 636)) | (1 << (TSqlParser.PRIMARY_ROLE - 636)) | (1 << (TSqlParser.PRIOR - 636)) | (1 << (TSqlParser.PRIORITY - 636)) | (1 << (TSqlParser.PRIORITY_LEVEL - 636)) | (1 << (TSqlParser.PRIVATE - 636)) | (1 << (TSqlParser.PRIVATE_KEY - 636)) | (1 << (TSqlParser.PRIVILEGES - 636)) | (1 << (TSqlParser.PROCEDURE_NAME - 636)) | (1 << (TSqlParser.PROPERTY - 636)) | (1 << (TSqlParser.PROVIDER - 636)) | (1 << (TSqlParser.PROVIDER_KEY_NAME - 636)) | (1 << (TSqlParser.QUERY - 636)) | (1 << (TSqlParser.QUEUE - 636)) | (1 << (TSqlParser.QUEUE_DELAY - 636)) | (1 << (TSqlParser.QUOTED_IDENTIFIER - 636)) | (1 << (TSqlParser.RANGE - 636)) | (1 << (TSqlParser.RANK - 636)) | (1 << (TSqlParser.RC2 - 636)) | (1 << (TSqlParser.RC4 - 636)) | (1 << (TSqlParser.RC4_128 - 636)) | (1 << (TSqlParser.READ_COMMITTED_SNAPSHOT - 636)) | (1 << (TSqlParser.READ_ONLY - 636)))) !== 0) || ((((_la - 668)) & ~0x1f) == 0 && ((1 << (_la - 668)) & ((1 << (TSqlParser.READ_ONLY_ROUTING_LIST - 668)) | (1 << (TSqlParser.READ_WRITE - 668)) | (1 << (TSqlParser.READONLY - 668)) | (1 << (TSqlParser.REBUILD - 668)) | (1 << (TSqlParser.RECEIVE - 668)) | (1 << (TSqlParser.RECOMPILE - 668)) | (1 << (TSqlParser.RECOVERY - 668)) | (1 << (TSqlParser.RECURSIVE_TRIGGERS - 668)) | (1 << (TSqlParser.RELATIVE - 668)) | (1 << (TSqlParser.REMOTE - 668)) | (1 << (TSqlParser.REMOTE_SERVICE_NAME - 668)) | (1 << (TSqlParser.REMOVE - 668)) | (1 << (TSqlParser.REORGANIZE - 668)) | (1 << (TSqlParser.REPEATABLE - 668)) | (1 << (TSqlParser.REPLICA - 668)) | (1 << (TSqlParser.REQUEST_MAX_CPU_TIME_SEC - 668)) | (1 << (TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT - 668)) | (1 << (TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC - 668)) | (1 << (TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT - 668)) | (1 << (TSqlParser.RESERVE_DISK_SPACE - 668)) | (1 << (TSqlParser.RESOURCE - 668)) | (1 << (TSqlParser.RESOURCE_MANAGER_LOCATION - 668)) | (1 << (TSqlParser.RESTRICTED_USER - 668)) | (1 << (TSqlParser.RETENTION - 668)) | (1 << (TSqlParser.ROBUST - 668)) | (1 << (TSqlParser.ROOT - 668)) | (1 << (TSqlParser.ROUTE - 668)) | (1 << (TSqlParser.ROW - 668)) | (1 << (TSqlParser.ROW_NUMBER - 668)) | (1 << (TSqlParser.ROWGUID - 668)) | (1 << (TSqlParser.ROWS - 668)) | (1 << (TSqlParser.SAMPLE - 668)))) !== 0) || ((((_la - 700)) & ~0x1f) == 0 && ((1 << (_la - 700)) & ((1 << (TSqlParser.SCHEMABINDING - 700)) | (1 << (TSqlParser.SCOPED - 700)) | (1 << (TSqlParser.SCROLL - 700)) | (1 << (TSqlParser.SCROLL_LOCKS - 700)) | (1 << (TSqlParser.SEARCH - 700)) | (1 << (TSqlParser.SECONDARY - 700)) | (1 << (TSqlParser.SECONDARY_ONLY - 700)) | (1 << (TSqlParser.SECONDARY_ROLE - 700)) | (1 << (TSqlParser.SECONDS - 700)) | (1 << (TSqlParser.SECRET - 700)) | (1 << (TSqlParser.SECURITY - 700)) | (1 << (TSqlParser.SECURITY_LOG - 700)) | (1 << (TSqlParser.SEEDING_MODE - 700)) | (1 << (TSqlParser.SELF - 700)) | (1 << (TSqlParser.SEMI_SENSITIVE - 700)) | (1 << (TSqlParser.SEND - 700)) | (1 << (TSqlParser.SENT - 700)) | (1 << (TSqlParser.SEQUENCE - 700)) | (1 << (TSqlParser.SERIALIZABLE - 700)) | (1 << (TSqlParser.SESSION_TIMEOUT - 700)) | (1 << (TSqlParser.SETERROR - 700)) | (1 << (TSqlParser.SHARE - 700)) | (1 << (TSqlParser.SHOWPLAN - 700)) | (1 << (TSqlParser.SIGNATURE - 700)) | (1 << (TSqlParser.SIMPLE - 700)) | (1 << (TSqlParser.SINGLE_USER - 700)) | (1 << (TSqlParser.SIZE - 700)) | (1 << (TSqlParser.SMALLINT - 700)) | (1 << (TSqlParser.SNAPSHOT - 700)) | (1 << (TSqlParser.SPATIAL_WINDOW_MAX_CELLS - 700)) | (1 << (TSqlParser.STANDBY - 700)) | (1 << (TSqlParser.START_DATE - 700)))) !== 0) || ((((_la - 732)) & ~0x1f) == 0 && ((1 << (_la - 732)) & ((1 << (TSqlParser.STATIC - 732)) | (1 << (TSqlParser.STATS_STREAM - 732)) | (1 << (TSqlParser.STATUS - 732)) | (1 << (TSqlParser.STDEV - 732)) | (1 << (TSqlParser.STDEVP - 732)) | (1 << (TSqlParser.STOPLIST - 732)) | (1 << (TSqlParser.STRING_AGG - 732)) | (1 << (TSqlParser.STUFF - 732)) | (1 << (TSqlParser.SUBJECT - 732)) | (1 << (TSqlParser.SUM - 732)) | (1 << (TSqlParser.SUSPEND - 732)) | (1 << (TSqlParser.SYMMETRIC - 732)) | (1 << (TSqlParser.SYNCHRONOUS_COMMIT - 732)) | (1 << (TSqlParser.SYNONYM - 732)) | (1 << (TSqlParser.SYSTEM - 732)) | (1 << (TSqlParser.TAKE - 732)) | (1 << (TSqlParser.TARGET_RECOVERY_TIME - 732)) | (1 << (TSqlParser.TB - 732)) | (1 << (TSqlParser.TEXTIMAGE_ON - 732)) | (1 << (TSqlParser.THROW - 732)) | (1 << (TSqlParser.TIES - 732)) | (1 << (TSqlParser.TIME - 732)) | (1 << (TSqlParser.TIMEOUT - 732)) | (1 << (TSqlParser.TIMER - 732)) | (1 << (TSqlParser.TINYINT - 732)) | (1 << (TSqlParser.TORN_PAGE_DETECTION - 732)) | (1 << (TSqlParser.TRANSFORM_NOISE_WORDS - 732)) | (1 << (TSqlParser.TRIPLE_DES - 732)) | (1 << (TSqlParser.TRIPLE_DES_3KEY - 732)) | (1 << (TSqlParser.TRUSTWORTHY - 732)))) !== 0) || ((((_la - 764)) & ~0x1f) == 0 && ((1 << (_la - 764)) & ((1 << (TSqlParser.TRY - 764)) | (1 << (TSqlParser.TSQL - 764)) | (1 << (TSqlParser.TWO_DIGIT_YEAR_CUTOFF - 764)) | (1 << (TSqlParser.TYPE - 764)) | (1 << (TSqlParser.TYPE_WARNING - 764)) | (1 << (TSqlParser.UNBOUNDED - 764)) | (1 << (TSqlParser.UNCOMMITTED - 764)) | (1 << (TSqlParser.UNKNOWN - 764)) | (1 << (TSqlParser.UNLIMITED - 764)) | (1 << (TSqlParser.USING - 764)) | (1 << (TSqlParser.VALID_XML - 764)) | (1 << (TSqlParser.VALIDATION - 764)) | (1 << (TSqlParser.VALUE - 764)) | (1 << (TSqlParser.VAR - 764)) | (1 << (TSqlParser.VARP - 764)) | (1 << (TSqlParser.VIEW_METADATA - 764)) | (1 << (TSqlParser.VIEWS - 764)) | (1 << (TSqlParser.WAIT - 764)) | (1 << (TSqlParser.WELL_FORMED_XML - 764)) | (1 << (TSqlParser.WORK - 764)) | (1 << (TSqlParser.WORKLOAD - 764)) | (1 << (TSqlParser.XML - 764)) | (1 << (TSqlParser.XMLNAMESPACES - 764)))) !== 0) || ((((_la - 796)) & ~0x1f) == 0 && ((1 << (_la - 796)) & ((1 << (TSqlParser.DOUBLE_QUOTE_ID - 796)) | (1 << (TSqlParser.SQUARE_BRACKET_ID - 796)) | (1 << (TSqlParser.ID - 796)))) !== 0)) {
- this.state = 10430;
- localctx.schema = this.id();
- }
-
- this.state = 10433;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 10437;
- localctx.procedure = this.id();
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Ddl_objectContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_ddl_object;
- return this;
-}
-
-Ddl_objectContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Ddl_objectContext.prototype.constructor = Ddl_objectContext;
-
-Ddl_objectContext.prototype.full_table_name = function() {
- return this.getTypedRuleContext(Full_table_nameContext,0);
-};
-
-Ddl_objectContext.prototype.LOCAL_ID = function() {
- return this.getToken(TSqlParser.LOCAL_ID, 0);
-};
-
-Ddl_objectContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDdl_object(this);
- }
-};
-
-Ddl_objectContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDdl_object(this);
- }
-};
-
-Ddl_objectContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDdl_object(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Ddl_objectContext = Ddl_objectContext;
-
-TSqlParser.prototype.ddl_object = function() {
-
- var localctx = new Ddl_objectContext(this, this._ctx, this.state);
- this.enterRule(localctx, 918, TSqlParser.RULE_ddl_object);
- try {
- this.state = 10442;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.enterOuterAlt(localctx, 1);
- this.state = 10440;
- this.full_table_name();
- break;
- case TSqlParser.LOCAL_ID:
- this.enterOuterAlt(localctx, 2);
- this.state = 10441;
- this.match(TSqlParser.LOCAL_ID);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Full_column_nameContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_full_column_name;
- this.column_name = null; // IdContext
- return this;
-}
-
-Full_column_nameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Full_column_nameContext.prototype.constructor = Full_column_nameContext;
-
-Full_column_nameContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Full_column_nameContext.prototype.table_name = function() {
- return this.getTypedRuleContext(Table_nameContext,0);
-};
-
-Full_column_nameContext.prototype.DOT = function() {
- return this.getToken(TSqlParser.DOT, 0);
-};
-
-Full_column_nameContext.prototype.COMPATIBILITY_LEVEL = function() {
- return this.getToken(TSqlParser.COMPATIBILITY_LEVEL, 0);
-};
-
-Full_column_nameContext.prototype.STATUS = function() {
- return this.getToken(TSqlParser.STATUS, 0);
-};
-
-Full_column_nameContext.prototype.QUOTED_IDENTIFIER = function() {
- return this.getToken(TSqlParser.QUOTED_IDENTIFIER, 0);
-};
-
-Full_column_nameContext.prototype.ARITHABORT = function() {
- return this.getToken(TSqlParser.ARITHABORT, 0);
-};
-
-Full_column_nameContext.prototype.ANSI_WARNINGS = function() {
- return this.getToken(TSqlParser.ANSI_WARNINGS, 0);
-};
-
-Full_column_nameContext.prototype.ANSI_PADDING = function() {
- return this.getToken(TSqlParser.ANSI_PADDING, 0);
-};
-
-Full_column_nameContext.prototype.ANSI_NULLS = function() {
- return this.getToken(TSqlParser.ANSI_NULLS, 0);
-};
-
-Full_column_nameContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterFull_column_name(this);
- }
-};
-
-Full_column_nameContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitFull_column_name(this);
- }
-};
-
-Full_column_nameContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitFull_column_name(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Full_column_nameContext = Full_column_nameContext;
-
-TSqlParser.prototype.full_column_name = function() {
-
- var localctx = new Full_column_nameContext(this, this._ctx, this.state);
- this.enterRule(localctx, 920, TSqlParser.RULE_full_column_name);
- try {
- this.state = 10492;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1476,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 10447;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1468,this._ctx);
- if(la_===1) {
- this.state = 10444;
- this.table_name();
- this.state = 10445;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 10449;
- localctx.column_name = this.id();
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 10453;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1469,this._ctx);
- if(la_===1) {
- this.state = 10450;
- this.table_name();
- this.state = 10451;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 10455;
- this.match(TSqlParser.COMPATIBILITY_LEVEL);
- break;
-
- case 3:
- this.enterOuterAlt(localctx, 3);
- this.state = 10459;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1470,this._ctx);
- if(la_===1) {
- this.state = 10456;
- this.table_name();
- this.state = 10457;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 10461;
- this.match(TSqlParser.STATUS);
- break;
-
- case 4:
- this.enterOuterAlt(localctx, 4);
- this.state = 10465;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1471,this._ctx);
- if(la_===1) {
- this.state = 10462;
- this.table_name();
- this.state = 10463;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 10467;
- this.match(TSqlParser.QUOTED_IDENTIFIER);
- break;
-
- case 5:
- this.enterOuterAlt(localctx, 5);
- this.state = 10471;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1472,this._ctx);
- if(la_===1) {
- this.state = 10468;
- this.table_name();
- this.state = 10469;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 10473;
- this.match(TSqlParser.ARITHABORT);
- break;
-
- case 6:
- this.enterOuterAlt(localctx, 6);
- this.state = 10477;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1473,this._ctx);
- if(la_===1) {
- this.state = 10474;
- this.table_name();
- this.state = 10475;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 10479;
- this.match(TSqlParser.ANSI_WARNINGS);
- break;
-
- case 7:
- this.enterOuterAlt(localctx, 7);
- this.state = 10483;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1474,this._ctx);
- if(la_===1) {
- this.state = 10480;
- this.table_name();
- this.state = 10481;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 10485;
- this.match(TSqlParser.ANSI_PADDING);
- break;
-
- case 8:
- this.enterOuterAlt(localctx, 8);
- this.state = 10489;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1475,this._ctx);
- if(la_===1) {
- this.state = 10486;
- this.table_name();
- this.state = 10487;
- this.match(TSqlParser.DOT);
-
- }
- this.state = 10491;
- this.match(TSqlParser.ANSI_NULLS);
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Column_name_list_with_orderContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_column_name_list_with_order;
- return this;
-}
-
-Column_name_list_with_orderContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Column_name_list_with_orderContext.prototype.constructor = Column_name_list_with_orderContext;
-
-Column_name_list_with_orderContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Column_name_list_with_orderContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Column_name_list_with_orderContext.prototype.ASC = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ASC);
- } else {
- return this.getToken(TSqlParser.ASC, i);
- }
-};
-
-
-Column_name_list_with_orderContext.prototype.DESC = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DESC);
- } else {
- return this.getToken(TSqlParser.DESC, i);
- }
-};
-
-
-Column_name_list_with_orderContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterColumn_name_list_with_order(this);
- }
-};
-
-Column_name_list_with_orderContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitColumn_name_list_with_order(this);
- }
-};
-
-Column_name_list_with_orderContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitColumn_name_list_with_order(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Column_name_list_with_orderContext = Column_name_list_with_orderContext;
-
-TSqlParser.prototype.column_name_list_with_order = function() {
-
- var localctx = new Column_name_list_with_orderContext(this, this._ctx, this.state);
- this.enterRule(localctx, 922, TSqlParser.RULE_column_name_list_with_order);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 10494;
- this.id();
- this.state = 10496;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.ASC || _la===TSqlParser.DESC) {
- this.state = 10495;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.ASC || _la===TSqlParser.DESC)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- }
-
- this.state = 10505;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 10498;
- this.match(TSqlParser.COMMA);
- this.state = 10499;
- this.id();
- this.state = 10501;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.ASC || _la===TSqlParser.DESC) {
- this.state = 10500;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.ASC || _la===TSqlParser.DESC)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- }
-
- this.state = 10507;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Column_name_listContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_column_name_list;
- return this;
-}
-
-Column_name_listContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Column_name_listContext.prototype.constructor = Column_name_listContext;
-
-Column_name_listContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Column_name_listContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Column_name_listContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterColumn_name_list(this);
- }
-};
-
-Column_name_listContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitColumn_name_list(this);
- }
-};
-
-Column_name_listContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitColumn_name_list(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Column_name_listContext = Column_name_listContext;
-
-TSqlParser.prototype.column_name_list = function() {
-
- var localctx = new Column_name_listContext(this, this._ctx, this.state);
- this.enterRule(localctx, 924, TSqlParser.RULE_column_name_list);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 10508;
- this.id();
- this.state = 10513;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- while(_la===TSqlParser.COMMA) {
- this.state = 10509;
- this.match(TSqlParser.COMMA);
- this.state = 10510;
- this.id();
- this.state = 10515;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Cursor_nameContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_cursor_name;
- return this;
-}
-
-Cursor_nameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Cursor_nameContext.prototype.constructor = Cursor_nameContext;
-
-Cursor_nameContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Cursor_nameContext.prototype.LOCAL_ID = function() {
- return this.getToken(TSqlParser.LOCAL_ID, 0);
-};
-
-Cursor_nameContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterCursor_name(this);
- }
-};
-
-Cursor_nameContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitCursor_name(this);
- }
-};
-
-Cursor_nameContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitCursor_name(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Cursor_nameContext = Cursor_nameContext;
-
-TSqlParser.prototype.cursor_name = function() {
-
- var localctx = new Cursor_nameContext(this, this._ctx, this.state);
- this.enterRule(localctx, 926, TSqlParser.RULE_cursor_name);
- try {
- this.state = 10518;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.DOUBLE_QUOTE_ID:
- case TSqlParser.SQUARE_BRACKET_ID:
- case TSqlParser.ID:
- this.enterOuterAlt(localctx, 1);
- this.state = 10516;
- this.id();
- break;
- case TSqlParser.LOCAL_ID:
- this.enterOuterAlt(localctx, 2);
- this.state = 10517;
- this.match(TSqlParser.LOCAL_ID);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function On_offContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_on_off;
- return this;
-}
-
-On_offContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-On_offContext.prototype.constructor = On_offContext;
-
-On_offContext.prototype.ON = function() {
- return this.getToken(TSqlParser.ON, 0);
-};
-
-On_offContext.prototype.OFF = function() {
- return this.getToken(TSqlParser.OFF, 0);
-};
-
-On_offContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterOn_off(this);
- }
-};
-
-On_offContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitOn_off(this);
- }
-};
-
-On_offContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitOn_off(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.On_offContext = On_offContext;
-
-TSqlParser.prototype.on_off = function() {
-
- var localctx = new On_offContext(this, this._ctx, this.state);
- this.enterRule(localctx, 928, TSqlParser.RULE_on_off);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 10520;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function ClusteredContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_clustered;
- return this;
-}
-
-ClusteredContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-ClusteredContext.prototype.constructor = ClusteredContext;
-
-ClusteredContext.prototype.CLUSTERED = function() {
- return this.getToken(TSqlParser.CLUSTERED, 0);
-};
-
-ClusteredContext.prototype.NONCLUSTERED = function() {
- return this.getToken(TSqlParser.NONCLUSTERED, 0);
-};
-
-ClusteredContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterClustered(this);
- }
-};
-
-ClusteredContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitClustered(this);
- }
-};
-
-ClusteredContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitClustered(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.ClusteredContext = ClusteredContext;
-
-TSqlParser.prototype.clustered = function() {
-
- var localctx = new ClusteredContext(this, this._ctx, this.state);
- this.enterRule(localctx, 930, TSqlParser.RULE_clustered);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 10522;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.CLUSTERED || _la===TSqlParser.NONCLUSTERED)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Null_notnullContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_null_notnull;
- return this;
-}
-
-Null_notnullContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Null_notnullContext.prototype.constructor = Null_notnullContext;
-
-Null_notnullContext.prototype.NULL = function() {
- return this.getToken(TSqlParser.NULL, 0);
-};
-
-Null_notnullContext.prototype.NOT = function() {
- return this.getToken(TSqlParser.NOT, 0);
-};
-
-Null_notnullContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterNull_notnull(this);
- }
-};
-
-Null_notnullContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitNull_notnull(this);
- }
-};
-
-Null_notnullContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitNull_notnull(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Null_notnullContext = Null_notnullContext;
-
-TSqlParser.prototype.null_notnull = function() {
-
- var localctx = new Null_notnullContext(this, this._ctx, this.state);
- this.enterRule(localctx, 932, TSqlParser.RULE_null_notnull);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 10525;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.NOT) {
- this.state = 10524;
- this.match(TSqlParser.NOT);
- }
-
- this.state = 10527;
- this.match(TSqlParser.NULL);
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Null_or_defaultContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_null_or_default;
- return this;
-}
-
-Null_or_defaultContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Null_or_defaultContext.prototype.constructor = Null_or_defaultContext;
-
-Null_or_defaultContext.prototype.null_notnull = function() {
- return this.getTypedRuleContext(Null_notnullContext,0);
-};
-
-Null_or_defaultContext.prototype.DEFAULT = function() {
- return this.getToken(TSqlParser.DEFAULT, 0);
-};
-
-Null_or_defaultContext.prototype.constant_expression = function() {
- return this.getTypedRuleContext(Constant_expressionContext,0);
-};
-
-Null_or_defaultContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Null_or_defaultContext.prototype.VALUES = function() {
- return this.getToken(TSqlParser.VALUES, 0);
-};
-
-Null_or_defaultContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterNull_or_default(this);
- }
-};
-
-Null_or_defaultContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitNull_or_default(this);
- }
-};
-
-Null_or_defaultContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitNull_or_default(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Null_or_defaultContext = Null_or_defaultContext;
-
-TSqlParser.prototype.null_or_default = function() {
-
- var localctx = new Null_or_defaultContext(this, this._ctx, this.state);
- this.enterRule(localctx, 934, TSqlParser.RULE_null_or_default);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 10536;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.NOT:
- case TSqlParser.NULL:
- this.state = 10529;
- this.null_notnull();
- break;
- case TSqlParser.DEFAULT:
- this.state = 10530;
- this.match(TSqlParser.DEFAULT);
- this.state = 10531;
- this.constant_expression();
- this.state = 10534;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1483,this._ctx);
- if(la_===1) {
- this.state = 10532;
- this.match(TSqlParser.WITH);
- this.state = 10533;
- this.match(TSqlParser.VALUES);
-
- }
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Scalar_function_nameContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_scalar_function_name;
- return this;
-}
-
-Scalar_function_nameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Scalar_function_nameContext.prototype.constructor = Scalar_function_nameContext;
-
-Scalar_function_nameContext.prototype.func_proc_name_server_database_schema = function() {
- return this.getTypedRuleContext(Func_proc_name_server_database_schemaContext,0);
-};
-
-Scalar_function_nameContext.prototype.RIGHT = function() {
- return this.getToken(TSqlParser.RIGHT, 0);
-};
-
-Scalar_function_nameContext.prototype.LEFT = function() {
- return this.getToken(TSqlParser.LEFT, 0);
-};
-
-Scalar_function_nameContext.prototype.BINARY_CHECKSUM = function() {
- return this.getToken(TSqlParser.BINARY_CHECKSUM, 0);
-};
-
-Scalar_function_nameContext.prototype.CHECKSUM = function() {
- return this.getToken(TSqlParser.CHECKSUM, 0);
-};
-
-Scalar_function_nameContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterScalar_function_name(this);
- }
-};
-
-Scalar_function_nameContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitScalar_function_name(this);
- }
-};
-
-Scalar_function_nameContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitScalar_function_name(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Scalar_function_nameContext = Scalar_function_nameContext;
-
-TSqlParser.prototype.scalar_function_name = function() {
-
- var localctx = new Scalar_function_nameContext(this, this._ctx, this.state);
- this.enterRule(localctx, 936, TSqlParser.RULE_scalar_function_name);
- try {
- this.state = 10543;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1485,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 10538;
- this.func_proc_name_server_database_schema();
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 10539;
- this.match(TSqlParser.RIGHT);
- break;
-
- case 3:
- this.enterOuterAlt(localctx, 3);
- this.state = 10540;
- this.match(TSqlParser.LEFT);
- break;
-
- case 4:
- this.enterOuterAlt(localctx, 4);
- this.state = 10541;
- this.match(TSqlParser.BINARY_CHECKSUM);
- break;
-
- case 5:
- this.enterOuterAlt(localctx, 5);
- this.state = 10542;
- this.match(TSqlParser.CHECKSUM);
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Begin_conversation_timerContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_begin_conversation_timer;
- return this;
-}
-
-Begin_conversation_timerContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Begin_conversation_timerContext.prototype.constructor = Begin_conversation_timerContext;
-
-Begin_conversation_timerContext.prototype.BEGIN = function() {
- return this.getToken(TSqlParser.BEGIN, 0);
-};
-
-Begin_conversation_timerContext.prototype.CONVERSATION = function() {
- return this.getToken(TSqlParser.CONVERSATION, 0);
-};
-
-Begin_conversation_timerContext.prototype.TIMER = function() {
- return this.getToken(TSqlParser.TIMER, 0);
-};
-
-Begin_conversation_timerContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Begin_conversation_timerContext.prototype.LOCAL_ID = function() {
- return this.getToken(TSqlParser.LOCAL_ID, 0);
-};
-
-Begin_conversation_timerContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Begin_conversation_timerContext.prototype.TIMEOUT = function() {
- return this.getToken(TSqlParser.TIMEOUT, 0);
-};
-
-Begin_conversation_timerContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Begin_conversation_timerContext.prototype.time = function() {
- return this.getTypedRuleContext(TimeContext,0);
-};
-
-Begin_conversation_timerContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Begin_conversation_timerContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterBegin_conversation_timer(this);
- }
-};
-
-Begin_conversation_timerContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitBegin_conversation_timer(this);
- }
-};
-
-Begin_conversation_timerContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitBegin_conversation_timer(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Begin_conversation_timerContext = Begin_conversation_timerContext;
-
-TSqlParser.prototype.begin_conversation_timer = function() {
-
- var localctx = new Begin_conversation_timerContext(this, this._ctx, this.state);
- this.enterRule(localctx, 938, TSqlParser.RULE_begin_conversation_timer);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 10545;
- this.match(TSqlParser.BEGIN);
- this.state = 10546;
- this.match(TSqlParser.CONVERSATION);
- this.state = 10547;
- this.match(TSqlParser.TIMER);
- this.state = 10548;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 10549;
- this.match(TSqlParser.LOCAL_ID);
- this.state = 10550;
- this.match(TSqlParser.RR_BRACKET);
- this.state = 10551;
- this.match(TSqlParser.TIMEOUT);
- this.state = 10552;
- this.match(TSqlParser.EQUAL);
- this.state = 10553;
- this.time();
- this.state = 10555;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1486,this._ctx);
- if(la_===1) {
- this.state = 10554;
- this.match(TSqlParser.SEMI);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Begin_conversation_dialogContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_begin_conversation_dialog;
- this.dialog_handle = null; // Token
- this.initiator_service_name = null; // Service_nameContext
- this.target_service_name = null; // Service_nameContext
- this.service_broker_guid = null; // Token
- return this;
-}
-
-Begin_conversation_dialogContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Begin_conversation_dialogContext.prototype.constructor = Begin_conversation_dialogContext;
-
-Begin_conversation_dialogContext.prototype.BEGIN = function() {
- return this.getToken(TSqlParser.BEGIN, 0);
-};
-
-Begin_conversation_dialogContext.prototype.DIALOG = function() {
- return this.getToken(TSqlParser.DIALOG, 0);
-};
-
-Begin_conversation_dialogContext.prototype.FROM = function() {
- return this.getToken(TSqlParser.FROM, 0);
-};
-
-Begin_conversation_dialogContext.prototype.SERVICE = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.SERVICE);
- } else {
- return this.getToken(TSqlParser.SERVICE, i);
- }
-};
-
-
-Begin_conversation_dialogContext.prototype.TO = function() {
- return this.getToken(TSqlParser.TO, 0);
-};
-
-Begin_conversation_dialogContext.prototype.ON = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.ON);
- } else {
- return this.getToken(TSqlParser.ON, i);
- }
-};
-
-
-Begin_conversation_dialogContext.prototype.CONTRACT = function() {
- return this.getToken(TSqlParser.CONTRACT, 0);
-};
-
-Begin_conversation_dialogContext.prototype.contract_name = function() {
- return this.getTypedRuleContext(Contract_nameContext,0);
-};
-
-Begin_conversation_dialogContext.prototype.LOCAL_ID = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.LOCAL_ID);
- } else {
- return this.getToken(TSqlParser.LOCAL_ID, i);
- }
-};
-
-
-Begin_conversation_dialogContext.prototype.service_name = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(Service_nameContext);
- } else {
- return this.getTypedRuleContext(Service_nameContext,i);
- }
-};
-
-Begin_conversation_dialogContext.prototype.CONVERSATION = function() {
- return this.getToken(TSqlParser.CONVERSATION, 0);
-};
-
-Begin_conversation_dialogContext.prototype.COMMA = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.COMMA);
- } else {
- return this.getToken(TSqlParser.COMMA, i);
- }
-};
-
-
-Begin_conversation_dialogContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-Begin_conversation_dialogContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Begin_conversation_dialogContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Begin_conversation_dialogContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-Begin_conversation_dialogContext.prototype.LIFETIME = function() {
- return this.getToken(TSqlParser.LIFETIME, 0);
-};
-
-Begin_conversation_dialogContext.prototype.ENCRYPTION = function() {
- return this.getToken(TSqlParser.ENCRYPTION, 0);
-};
-
-Begin_conversation_dialogContext.prototype.RELATED_CONVERSATION = function() {
- return this.getToken(TSqlParser.RELATED_CONVERSATION, 0);
-};
-
-Begin_conversation_dialogContext.prototype.RELATED_CONVERSATION_GROUP = function() {
- return this.getToken(TSqlParser.RELATED_CONVERSATION_GROUP, 0);
-};
-
-Begin_conversation_dialogContext.prototype.DECIMAL = function() {
- return this.getToken(TSqlParser.DECIMAL, 0);
-};
-
-Begin_conversation_dialogContext.prototype.OFF = function() {
- return this.getToken(TSqlParser.OFF, 0);
-};
-
-Begin_conversation_dialogContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterBegin_conversation_dialog(this);
- }
-};
-
-Begin_conversation_dialogContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitBegin_conversation_dialog(this);
- }
-};
-
-Begin_conversation_dialogContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitBegin_conversation_dialog(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Begin_conversation_dialogContext = Begin_conversation_dialogContext;
-
-TSqlParser.prototype.begin_conversation_dialog = function() {
-
- var localctx = new Begin_conversation_dialogContext(this, this._ctx, this.state);
- this.enterRule(localctx, 940, TSqlParser.RULE_begin_conversation_dialog);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 10557;
- this.match(TSqlParser.BEGIN);
- this.state = 10558;
- this.match(TSqlParser.DIALOG);
- this.state = 10560;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.CONVERSATION) {
- this.state = 10559;
- this.match(TSqlParser.CONVERSATION);
- }
-
- this.state = 10562;
- localctx.dialog_handle = this.match(TSqlParser.LOCAL_ID);
- this.state = 10563;
- this.match(TSqlParser.FROM);
- this.state = 10564;
- this.match(TSqlParser.SERVICE);
- this.state = 10565;
- localctx.initiator_service_name = this.service_name();
- this.state = 10566;
- this.match(TSqlParser.TO);
- this.state = 10567;
- this.match(TSqlParser.SERVICE);
- this.state = 10568;
- localctx.target_service_name = this.service_name();
- this.state = 10571;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 10569;
- this.match(TSqlParser.COMMA);
- this.state = 10570;
- localctx.service_broker_guid = this.match(TSqlParser.STRING);
- }
-
- this.state = 10573;
- this.match(TSqlParser.ON);
- this.state = 10574;
- this.match(TSqlParser.CONTRACT);
- this.state = 10575;
- this.contract_name();
- this.state = 10598;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1494,this._ctx);
- if(la_===1) {
- this.state = 10576;
- this.match(TSqlParser.WITH);
- this.state = 10583;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.RELATED_CONVERSATION || _la===TSqlParser.RELATED_CONVERSATION_GROUP) {
- this.state = 10577;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.RELATED_CONVERSATION || _la===TSqlParser.RELATED_CONVERSATION_GROUP)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 10578;
- this.match(TSqlParser.EQUAL);
- this.state = 10579;
- this.match(TSqlParser.LOCAL_ID);
- this.state = 10581;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 10580;
- this.match(TSqlParser.COMMA);
- }
-
- }
-
- this.state = 10591;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.LIFETIME) {
- this.state = 10585;
- this.match(TSqlParser.LIFETIME);
- this.state = 10586;
- this.match(TSqlParser.EQUAL);
- this.state = 10587;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.LOCAL_ID || _la===TSqlParser.DECIMAL)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 10589;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 10588;
- this.match(TSqlParser.COMMA);
- }
-
- }
-
- this.state = 10596;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1493,this._ctx);
- if(la_===1) {
- this.state = 10593;
- this.match(TSqlParser.ENCRYPTION);
- this.state = 10594;
- this.match(TSqlParser.EQUAL);
- this.state = 10595;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.OFF || _la===TSqlParser.ON)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
-
- }
-
- }
- this.state = 10601;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1495,this._ctx);
- if(la_===1) {
- this.state = 10600;
- this.match(TSqlParser.SEMI);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Contract_nameContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_contract_name;
- return this;
-}
-
-Contract_nameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Contract_nameContext.prototype.constructor = Contract_nameContext;
-
-Contract_nameContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Contract_nameContext.prototype.expression = function() {
- return this.getTypedRuleContext(ExpressionContext,0);
-};
-
-Contract_nameContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterContract_name(this);
- }
-};
-
-Contract_nameContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitContract_name(this);
- }
-};
-
-Contract_nameContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitContract_name(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Contract_nameContext = Contract_nameContext;
-
-TSqlParser.prototype.contract_name = function() {
-
- var localctx = new Contract_nameContext(this, this._ctx, this.state);
- this.enterRule(localctx, 942, TSqlParser.RULE_contract_name);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 10605;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1496,this._ctx);
- switch(la_) {
- case 1:
- this.state = 10603;
- this.id();
- break;
-
- case 2:
- this.state = 10604;
- this.expression(0);
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Service_nameContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_service_name;
- return this;
-}
-
-Service_nameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Service_nameContext.prototype.constructor = Service_nameContext;
-
-Service_nameContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Service_nameContext.prototype.expression = function() {
- return this.getTypedRuleContext(ExpressionContext,0);
-};
-
-Service_nameContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterService_name(this);
- }
-};
-
-Service_nameContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitService_name(this);
- }
-};
-
-Service_nameContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitService_name(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Service_nameContext = Service_nameContext;
-
-TSqlParser.prototype.service_name = function() {
-
- var localctx = new Service_nameContext(this, this._ctx, this.state);
- this.enterRule(localctx, 944, TSqlParser.RULE_service_name);
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 10609;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1497,this._ctx);
- switch(la_) {
- case 1:
- this.state = 10607;
- this.id();
- break;
-
- case 2:
- this.state = 10608;
- this.expression(0);
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function End_conversationContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_end_conversation;
- this.conversation_handle = null; // Token
- this.faliure_code = null; // Token
- this.failure_text = null; // Token
- return this;
-}
-
-End_conversationContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-End_conversationContext.prototype.constructor = End_conversationContext;
-
-End_conversationContext.prototype.END = function() {
- return this.getToken(TSqlParser.END, 0);
-};
-
-End_conversationContext.prototype.CONVERSATION = function() {
- return this.getToken(TSqlParser.CONVERSATION, 0);
-};
-
-End_conversationContext.prototype.LOCAL_ID = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.LOCAL_ID);
- } else {
- return this.getToken(TSqlParser.LOCAL_ID, i);
- }
-};
-
-
-End_conversationContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-End_conversationContext.prototype.WITH = function() {
- return this.getToken(TSqlParser.WITH, 0);
-};
-
-End_conversationContext.prototype.ERROR = function() {
- return this.getToken(TSqlParser.ERROR, 0);
-};
-
-End_conversationContext.prototype.EQUAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.EQUAL);
- } else {
- return this.getToken(TSqlParser.EQUAL, i);
- }
-};
-
-
-End_conversationContext.prototype.DESCRIPTION = function() {
- return this.getToken(TSqlParser.DESCRIPTION, 0);
-};
-
-End_conversationContext.prototype.CLEANUP = function() {
- return this.getToken(TSqlParser.CLEANUP, 0);
-};
-
-End_conversationContext.prototype.STRING = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.STRING);
- } else {
- return this.getToken(TSqlParser.STRING, i);
- }
-};
-
-
-End_conversationContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterEnd_conversation(this);
- }
-};
-
-End_conversationContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitEnd_conversation(this);
- }
-};
-
-End_conversationContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitEnd_conversation(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.End_conversationContext = End_conversationContext;
-
-TSqlParser.prototype.end_conversation = function() {
-
- var localctx = new End_conversationContext(this, this._ctx, this.state);
- this.enterRule(localctx, 946, TSqlParser.RULE_end_conversation);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 10611;
- this.match(TSqlParser.END);
- this.state = 10612;
- this.match(TSqlParser.CONVERSATION);
- this.state = 10613;
- localctx.conversation_handle = this.match(TSqlParser.LOCAL_ID);
- this.state = 10615;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1498,this._ctx);
- if(la_===1) {
- this.state = 10614;
- this.match(TSqlParser.SEMI);
-
- }
- this.state = 10629;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1501,this._ctx);
- if(la_===1) {
- this.state = 10617;
- this.match(TSqlParser.WITH);
- this.state = 10624;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.ERROR) {
- this.state = 10618;
- this.match(TSqlParser.ERROR);
- this.state = 10619;
- this.match(TSqlParser.EQUAL);
- this.state = 10620;
- localctx.faliure_code = this._input.LT(1);
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.LOCAL_ID || _la===TSqlParser.STRING)) {
- localctx.faliure_code = this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 10621;
- this.match(TSqlParser.DESCRIPTION);
- this.state = 10622;
- this.match(TSqlParser.EQUAL);
- this.state = 10623;
- localctx.failure_text = this._input.LT(1);
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.LOCAL_ID || _la===TSqlParser.STRING)) {
- localctx.failure_text = this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- }
-
- this.state = 10627;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1500,this._ctx);
- if(la_===1) {
- this.state = 10626;
- this.match(TSqlParser.CLEANUP);
-
- }
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Waitfor_conversationContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_waitfor_conversation;
- this.timeout = null; // TimeContext
- return this;
-}
-
-Waitfor_conversationContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Waitfor_conversationContext.prototype.constructor = Waitfor_conversationContext;
-
-Waitfor_conversationContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Waitfor_conversationContext.prototype.get_conversation = function() {
- return this.getTypedRuleContext(Get_conversationContext,0);
-};
-
-Waitfor_conversationContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Waitfor_conversationContext.prototype.WAITFOR = function() {
- return this.getToken(TSqlParser.WAITFOR, 0);
-};
-
-Waitfor_conversationContext.prototype.TIMEOUT = function() {
- return this.getToken(TSqlParser.TIMEOUT, 0);
-};
-
-Waitfor_conversationContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Waitfor_conversationContext.prototype.time = function() {
- return this.getTypedRuleContext(TimeContext,0);
-};
-
-Waitfor_conversationContext.prototype.COMMA = function() {
- return this.getToken(TSqlParser.COMMA, 0);
-};
-
-Waitfor_conversationContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterWaitfor_conversation(this);
- }
-};
-
-Waitfor_conversationContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitWaitfor_conversation(this);
- }
-};
-
-Waitfor_conversationContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitWaitfor_conversation(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Waitfor_conversationContext = Waitfor_conversationContext;
-
-TSqlParser.prototype.waitfor_conversation = function() {
-
- var localctx = new Waitfor_conversationContext(this, this._ctx, this.state);
- this.enterRule(localctx, 948, TSqlParser.RULE_waitfor_conversation);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 10632;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.WAITFOR) {
- this.state = 10631;
- this.match(TSqlParser.WAITFOR);
- }
-
- this.state = 10634;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 10635;
- this.get_conversation();
- this.state = 10636;
- this.match(TSqlParser.RR_BRACKET);
- this.state = 10642;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1504,this._ctx);
- if(la_===1) {
- this.state = 10638;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 10637;
- this.match(TSqlParser.COMMA);
- }
-
- this.state = 10640;
- this.match(TSqlParser.TIMEOUT);
- this.state = 10641;
- localctx.timeout = this.time();
-
- }
- this.state = 10645;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1505,this._ctx);
- if(la_===1) {
- this.state = 10644;
- this.match(TSqlParser.SEMI);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Get_conversationContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_get_conversation;
- this.conversation_group_id = null; // Token
- this.queue = null; // Queue_idContext
- return this;
-}
-
-Get_conversationContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Get_conversationContext.prototype.constructor = Get_conversationContext;
-
-Get_conversationContext.prototype.GET = function() {
- return this.getToken(TSqlParser.GET, 0);
-};
-
-Get_conversationContext.prototype.CONVERSATION = function() {
- return this.getToken(TSqlParser.CONVERSATION, 0);
-};
-
-Get_conversationContext.prototype.GROUP = function() {
- return this.getToken(TSqlParser.GROUP, 0);
-};
-
-Get_conversationContext.prototype.FROM = function() {
- return this.getToken(TSqlParser.FROM, 0);
-};
-
-Get_conversationContext.prototype.queue_id = function() {
- return this.getTypedRuleContext(Queue_idContext,0);
-};
-
-Get_conversationContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-Get_conversationContext.prototype.LOCAL_ID = function() {
- return this.getToken(TSqlParser.LOCAL_ID, 0);
-};
-
-Get_conversationContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Get_conversationContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterGet_conversation(this);
- }
-};
-
-Get_conversationContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitGet_conversation(this);
- }
-};
-
-Get_conversationContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitGet_conversation(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Get_conversationContext = Get_conversationContext;
-
-TSqlParser.prototype.get_conversation = function() {
-
- var localctx = new Get_conversationContext(this, this._ctx, this.state);
- this.enterRule(localctx, 950, TSqlParser.RULE_get_conversation);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 10647;
- this.match(TSqlParser.GET);
- this.state = 10648;
- this.match(TSqlParser.CONVERSATION);
- this.state = 10649;
- this.match(TSqlParser.GROUP);
- this.state = 10650;
- localctx.conversation_group_id = this._input.LT(1);
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.LOCAL_ID || _la===TSqlParser.STRING)) {
- localctx.conversation_group_id = this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 10651;
- this.match(TSqlParser.FROM);
- this.state = 10652;
- localctx.queue = this.queue_id();
- this.state = 10654;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1506,this._ctx);
- if(la_===1) {
- this.state = 10653;
- this.match(TSqlParser.SEMI);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Queue_idContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_queue_id;
- this.database_name = null; // IdContext
- this.schema_name = null; // IdContext
- this.name = null; // IdContext
- return this;
-}
-
-Queue_idContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Queue_idContext.prototype.constructor = Queue_idContext;
-
-Queue_idContext.prototype.DOT = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DOT);
- } else {
- return this.getToken(TSqlParser.DOT, i);
- }
-};
-
-
-Queue_idContext.prototype.id = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTypedRuleContexts(IdContext);
- } else {
- return this.getTypedRuleContext(IdContext,i);
- }
-};
-
-Queue_idContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterQueue_id(this);
- }
-};
-
-Queue_idContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitQueue_id(this);
- }
-};
-
-Queue_idContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitQueue_id(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Queue_idContext = Queue_idContext;
-
-TSqlParser.prototype.queue_id = function() {
-
- var localctx = new Queue_idContext(this, this._ctx, this.state);
- this.enterRule(localctx, 952, TSqlParser.RULE_queue_id);
- try {
- this.state = 10663;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1507,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 10656;
- localctx.database_name = this.id();
- this.state = 10657;
- this.match(TSqlParser.DOT);
- this.state = 10658;
- localctx.schema_name = this.id();
- this.state = 10659;
- this.match(TSqlParser.DOT);
- this.state = 10660;
- localctx.name = this.id();
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 10662;
- this.id();
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Send_conversationContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_send_conversation;
- this.conversation_handle = null; // Token
- this.message_type_name = null; // ExpressionContext
- this.message_body_expression = null; // Token
- return this;
-}
-
-Send_conversationContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Send_conversationContext.prototype.constructor = Send_conversationContext;
-
-Send_conversationContext.prototype.SEND = function() {
- return this.getToken(TSqlParser.SEND, 0);
-};
-
-Send_conversationContext.prototype.ON = function() {
- return this.getToken(TSqlParser.ON, 0);
-};
-
-Send_conversationContext.prototype.CONVERSATION = function() {
- return this.getToken(TSqlParser.CONVERSATION, 0);
-};
-
-Send_conversationContext.prototype.MESSAGE = function() {
- return this.getToken(TSqlParser.MESSAGE, 0);
-};
-
-Send_conversationContext.prototype.TYPE = function() {
- return this.getToken(TSqlParser.TYPE, 0);
-};
-
-Send_conversationContext.prototype.expression = function() {
- return this.getTypedRuleContext(ExpressionContext,0);
-};
-
-Send_conversationContext.prototype.STRING = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.STRING);
- } else {
- return this.getToken(TSqlParser.STRING, i);
- }
-};
-
-
-Send_conversationContext.prototype.LOCAL_ID = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.LOCAL_ID);
- } else {
- return this.getToken(TSqlParser.LOCAL_ID, i);
- }
-};
-
-
-Send_conversationContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Send_conversationContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Send_conversationContext.prototype.SEMI = function() {
- return this.getToken(TSqlParser.SEMI, 0);
-};
-
-Send_conversationContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterSend_conversation(this);
- }
-};
-
-Send_conversationContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitSend_conversation(this);
- }
-};
-
-Send_conversationContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitSend_conversation(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Send_conversationContext = Send_conversationContext;
-
-TSqlParser.prototype.send_conversation = function() {
-
- var localctx = new Send_conversationContext(this, this._ctx, this.state);
- this.enterRule(localctx, 954, TSqlParser.RULE_send_conversation);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 10665;
- this.match(TSqlParser.SEND);
- this.state = 10666;
- this.match(TSqlParser.ON);
- this.state = 10667;
- this.match(TSqlParser.CONVERSATION);
- this.state = 10668;
- localctx.conversation_handle = this._input.LT(1);
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.LOCAL_ID || _la===TSqlParser.STRING)) {
- localctx.conversation_handle = this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 10669;
- this.match(TSqlParser.MESSAGE);
- this.state = 10670;
- this.match(TSqlParser.TYPE);
- this.state = 10671;
- localctx.message_type_name = this.expression(0);
- this.state = 10675;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1508,this._ctx);
- if(la_===1) {
- this.state = 10672;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 10673;
- localctx.message_body_expression = this._input.LT(1);
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.LOCAL_ID || _la===TSqlParser.STRING)) {
- localctx.message_body_expression = this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 10674;
- this.match(TSqlParser.RR_BRACKET);
-
- }
- this.state = 10678;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1509,this._ctx);
- if(la_===1) {
- this.state = 10677;
- this.match(TSqlParser.SEMI);
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Data_typeContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_data_type;
- return this;
-}
-
-Data_typeContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Data_typeContext.prototype.constructor = Data_typeContext;
-
-Data_typeContext.prototype.id = function() {
- return this.getTypedRuleContext(IdContext,0);
-};
-
-Data_typeContext.prototype.IDENTITY = function() {
- return this.getToken(TSqlParser.IDENTITY, 0);
-};
-
-Data_typeContext.prototype.LR_BRACKET = function() {
- return this.getToken(TSqlParser.LR_BRACKET, 0);
-};
-
-Data_typeContext.prototype.RR_BRACKET = function() {
- return this.getToken(TSqlParser.RR_BRACKET, 0);
-};
-
-Data_typeContext.prototype.DECIMAL = function(i) {
- if(i===undefined) {
- i = null;
- }
- if(i===null) {
- return this.getTokens(TSqlParser.DECIMAL);
- } else {
- return this.getToken(TSqlParser.DECIMAL, i);
- }
-};
-
-
-Data_typeContext.prototype.MAX = function() {
- return this.getToken(TSqlParser.MAX, 0);
-};
-
-Data_typeContext.prototype.COMMA = function() {
- return this.getToken(TSqlParser.COMMA, 0);
-};
-
-Data_typeContext.prototype.DOUBLE = function() {
- return this.getToken(TSqlParser.DOUBLE, 0);
-};
-
-Data_typeContext.prototype.PRECISION = function() {
- return this.getToken(TSqlParser.PRECISION, 0);
-};
-
-Data_typeContext.prototype.INT = function() {
- return this.getToken(TSqlParser.INT, 0);
-};
-
-Data_typeContext.prototype.TINYINT = function() {
- return this.getToken(TSqlParser.TINYINT, 0);
-};
-
-Data_typeContext.prototype.SMALLINT = function() {
- return this.getToken(TSqlParser.SMALLINT, 0);
-};
-
-Data_typeContext.prototype.BIGINT = function() {
- return this.getToken(TSqlParser.BIGINT, 0);
-};
-
-Data_typeContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterData_type(this);
- }
-};
-
-Data_typeContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitData_type(this);
- }
-};
-
-Data_typeContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitData_type(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Data_typeContext = Data_typeContext;
-
-TSqlParser.prototype.data_type = function() {
-
- var localctx = new Data_typeContext(this, this._ctx, this.state);
- this.enterRule(localctx, 956, TSqlParser.RULE_data_type);
- var _la = 0; // Token type
- try {
- this.state = 10701;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1514,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 10680;
- this.id();
- this.state = 10682;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1510,this._ctx);
- if(la_===1) {
- this.state = 10681;
- this.match(TSqlParser.IDENTITY);
-
- }
- this.state = 10691;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1512,this._ctx);
- if(la_===1) {
- this.state = 10684;
- this.match(TSqlParser.LR_BRACKET);
- this.state = 10685;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.MAX || _la===TSqlParser.DECIMAL)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- this.state = 10688;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.COMMA) {
- this.state = 10686;
- this.match(TSqlParser.COMMA);
- this.state = 10687;
- this.match(TSqlParser.DECIMAL);
- }
-
- this.state = 10690;
- this.match(TSqlParser.RR_BRACKET);
-
- }
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 10693;
- this.match(TSqlParser.DOUBLE);
- this.state = 10695;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.PRECISION) {
- this.state = 10694;
- this.match(TSqlParser.PRECISION);
- }
-
- break;
-
- case 3:
- this.enterOuterAlt(localctx, 3);
- this.state = 10697;
- this.match(TSqlParser.INT);
- break;
-
- case 4:
- this.enterOuterAlt(localctx, 4);
- this.state = 10698;
- this.match(TSqlParser.TINYINT);
- break;
-
- case 5:
- this.enterOuterAlt(localctx, 5);
- this.state = 10699;
- this.match(TSqlParser.SMALLINT);
- break;
-
- case 6:
- this.enterOuterAlt(localctx, 6);
- this.state = 10700;
- this.match(TSqlParser.BIGINT);
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Default_valueContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_default_value;
- return this;
-}
-
-Default_valueContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Default_valueContext.prototype.constructor = Default_valueContext;
-
-Default_valueContext.prototype.NULL = function() {
- return this.getToken(TSqlParser.NULL, 0);
-};
-
-Default_valueContext.prototype.DEFAULT = function() {
- return this.getToken(TSqlParser.DEFAULT, 0);
-};
-
-Default_valueContext.prototype.constant = function() {
- return this.getTypedRuleContext(ConstantContext,0);
-};
-
-Default_valueContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterDefault_value(this);
- }
-};
-
-Default_valueContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitDefault_value(this);
- }
-};
-
-Default_valueContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitDefault_value(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Default_valueContext = Default_valueContext;
-
-TSqlParser.prototype.default_value = function() {
-
- var localctx = new Default_valueContext(this, this._ctx, this.state);
- this.enterRule(localctx, 958, TSqlParser.RULE_default_value);
- try {
- this.state = 10706;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.NULL:
- this.enterOuterAlt(localctx, 1);
- this.state = 10703;
- this.match(TSqlParser.NULL);
- break;
- case TSqlParser.DEFAULT:
- this.enterOuterAlt(localctx, 2);
- this.state = 10704;
- this.match(TSqlParser.DEFAULT);
- break;
- case TSqlParser.DECIMAL:
- case TSqlParser.STRING:
- case TSqlParser.BINARY:
- case TSqlParser.FLOAT:
- case TSqlParser.REAL:
- case TSqlParser.DOLLAR:
- case TSqlParser.PLUS:
- case TSqlParser.MINUS:
- this.enterOuterAlt(localctx, 3);
- this.state = 10705;
- this.constant();
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function ConstantContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_constant;
- this.dollar = null; // Token
- return this;
-}
-
-ConstantContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-ConstantContext.prototype.constructor = ConstantContext;
-
-ConstantContext.prototype.STRING = function() {
- return this.getToken(TSqlParser.STRING, 0);
-};
-
-ConstantContext.prototype.BINARY = function() {
- return this.getToken(TSqlParser.BINARY, 0);
-};
-
-ConstantContext.prototype.DECIMAL = function() {
- return this.getToken(TSqlParser.DECIMAL, 0);
-};
-
-ConstantContext.prototype.sign = function() {
- return this.getTypedRuleContext(SignContext,0);
-};
-
-ConstantContext.prototype.REAL = function() {
- return this.getToken(TSqlParser.REAL, 0);
-};
-
-ConstantContext.prototype.FLOAT = function() {
- return this.getToken(TSqlParser.FLOAT, 0);
-};
-
-ConstantContext.prototype.DOLLAR = function() {
- return this.getToken(TSqlParser.DOLLAR, 0);
-};
-
-ConstantContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterConstant(this);
- }
-};
-
-ConstantContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitConstant(this);
- }
-};
-
-ConstantContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitConstant(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.ConstantContext = ConstantContext;
-
-TSqlParser.prototype.constant = function() {
-
- var localctx = new ConstantContext(this, this._ctx, this.state);
- this.enterRule(localctx, 960, TSqlParser.RULE_constant);
- var _la = 0; // Token type
- try {
- this.state = 10723;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1519,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 10708;
- this.match(TSqlParser.STRING);
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 10709;
- this.match(TSqlParser.BINARY);
- break;
-
- case 3:
- this.enterOuterAlt(localctx, 3);
- this.state = 10711;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.PLUS || _la===TSqlParser.MINUS) {
- this.state = 10710;
- this.sign();
- }
-
- this.state = 10713;
- this.match(TSqlParser.DECIMAL);
- break;
-
- case 4:
- this.enterOuterAlt(localctx, 4);
- this.state = 10715;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.PLUS || _la===TSqlParser.MINUS) {
- this.state = 10714;
- this.sign();
- }
-
- this.state = 10717;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.FLOAT || _la===TSqlParser.REAL)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
-
- case 5:
- this.enterOuterAlt(localctx, 5);
- this.state = 10719;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.PLUS || _la===TSqlParser.MINUS) {
- this.state = 10718;
- this.sign();
- }
-
- this.state = 10721;
- localctx.dollar = this.match(TSqlParser.DOLLAR);
- this.state = 10722;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.DECIMAL || _la===TSqlParser.FLOAT)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function SignContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_sign;
- return this;
-}
-
-SignContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-SignContext.prototype.constructor = SignContext;
-
-SignContext.prototype.PLUS = function() {
- return this.getToken(TSqlParser.PLUS, 0);
-};
-
-SignContext.prototype.MINUS = function() {
- return this.getToken(TSqlParser.MINUS, 0);
-};
-
-SignContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterSign(this);
- }
-};
-
-SignContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitSign(this);
- }
-};
-
-SignContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitSign(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.SignContext = SignContext;
-
-TSqlParser.prototype.sign = function() {
-
- var localctx = new SignContext(this, this._ctx, this.state);
- this.enterRule(localctx, 962, TSqlParser.RULE_sign);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 10725;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.PLUS || _la===TSqlParser.MINUS)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function IdContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_id;
- return this;
-}
-
-IdContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-IdContext.prototype.constructor = IdContext;
-
-IdContext.prototype.simple_id = function() {
- return this.getTypedRuleContext(Simple_idContext,0);
-};
-
-IdContext.prototype.DOUBLE_QUOTE_ID = function() {
- return this.getToken(TSqlParser.DOUBLE_QUOTE_ID, 0);
-};
-
-IdContext.prototype.SQUARE_BRACKET_ID = function() {
- return this.getToken(TSqlParser.SQUARE_BRACKET_ID, 0);
-};
-
-IdContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterId(this);
- }
-};
-
-IdContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitId(this);
- }
-};
-
-IdContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitId(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.IdContext = IdContext;
-
-TSqlParser.prototype.id = function() {
-
- var localctx = new IdContext(this, this._ctx, this.state);
- this.enterRule(localctx, 964, TSqlParser.RULE_id);
- try {
- this.state = 10730;
- this._errHandler.sync(this);
- switch(this._input.LA(1)) {
- case TSqlParser.CALLED:
- case TSqlParser.DATA_COMPRESSION:
- case TSqlParser.EVENTDATA:
- case TSqlParser.FILENAME:
- case TSqlParser.FILLFACTOR:
- case TSqlParser.FORCESEEK:
- case TSqlParser.INIT:
- case TSqlParser.KEY:
- case TSqlParser.MASTER:
- case TSqlParser.MAX_MEMORY:
- case TSqlParser.OFFSETS:
- case TSqlParser.PAGE:
- case TSqlParser.PUBLIC:
- case TSqlParser.R:
- case TSqlParser.RAW:
- case TSqlParser.RETURN:
- case TSqlParser.RETURNS:
- case TSqlParser.ROWCOUNT:
- case TSqlParser.SAFETY:
- case TSqlParser.SERVER:
- case TSqlParser.SID:
- case TSqlParser.SOURCE:
- case TSqlParser.SPLIT:
- case TSqlParser.STATE:
- case TSqlParser.START:
- case TSqlParser.TARGET:
- case TSqlParser.ABSOLUTE:
- case TSqlParser.ACCENT_SENSITIVITY:
- case TSqlParser.ACTION:
- case TSqlParser.ACTIVATION:
- case TSqlParser.ACTIVE:
- case TSqlParser.ADDRESS:
- case TSqlParser.AES_128:
- case TSqlParser.AES_192:
- case TSqlParser.AES_256:
- case TSqlParser.AFFINITY:
- case TSqlParser.AFTER:
- case TSqlParser.AGGREGATE:
- case TSqlParser.ALGORITHM:
- case TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS:
- case TSqlParser.ALLOW_SNAPSHOT_ISOLATION:
- case TSqlParser.ALLOWED:
- case TSqlParser.ANSI_NULL_DEFAULT:
- case TSqlParser.ANSI_NULLS:
- case TSqlParser.ANSI_PADDING:
- case TSqlParser.ANSI_WARNINGS:
- case TSqlParser.APPLICATION_LOG:
- case TSqlParser.APPLY:
- case TSqlParser.ARITHABORT:
- case TSqlParser.ASSEMBLY:
- case TSqlParser.AUDIT:
- case TSqlParser.AUDIT_GUID:
- case TSqlParser.AUTO:
- case TSqlParser.AUTO_CLEANUP:
- case TSqlParser.AUTO_CLOSE:
- case TSqlParser.AUTO_CREATE_STATISTICS:
- case TSqlParser.AUTO_SHRINK:
- case TSqlParser.AUTO_UPDATE_STATISTICS:
- case TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC:
- case TSqlParser.AVAILABILITY:
- case TSqlParser.AVG:
- case TSqlParser.BACKUP_PRIORITY:
- case TSqlParser.BEGIN_DIALOG:
- case TSqlParser.BIGINT:
- case TSqlParser.BINARY_BASE64:
- case TSqlParser.BINARY_CHECKSUM:
- case TSqlParser.BINDING:
- case TSqlParser.BLOB_STORAGE:
- case TSqlParser.BROKER:
- case TSqlParser.BROKER_INSTANCE:
- case TSqlParser.BULK_LOGGED:
- case TSqlParser.CALLER:
- case TSqlParser.CAP_CPU_PERCENT:
- case TSqlParser.CAST:
- case TSqlParser.CATALOG:
- case TSqlParser.CATCH:
- case TSqlParser.CHANGE_RETENTION:
- case TSqlParser.CHANGE_TRACKING:
- case TSqlParser.CHECKSUM:
- case TSqlParser.CHECKSUM_AGG:
- case TSqlParser.CLEANUP:
- case TSqlParser.COLLECTION:
- case TSqlParser.COLUMN_MASTER_KEY:
- case TSqlParser.COMMITTED:
- case TSqlParser.COMPATIBILITY_LEVEL:
- case TSqlParser.CONCAT:
- case TSqlParser.CONCAT_NULL_YIELDS_NULL:
- case TSqlParser.CONTENT:
- case TSqlParser.CONTROL:
- case TSqlParser.COOKIE:
- case TSqlParser.COUNT:
- case TSqlParser.COUNT_BIG:
- case TSqlParser.COUNTER:
- case TSqlParser.CPU:
- case TSqlParser.CREATE_NEW:
- case TSqlParser.CREATION_DISPOSITION:
- case TSqlParser.CREDENTIAL:
- case TSqlParser.CRYPTOGRAPHIC:
- case TSqlParser.CURSOR_CLOSE_ON_COMMIT:
- case TSqlParser.CURSOR_DEFAULT:
- case TSqlParser.DATA:
- case TSqlParser.DATE_CORRELATION_OPTIMIZATION:
- case TSqlParser.DATEADD:
- case TSqlParser.DATEDIFF:
- case TSqlParser.DATENAME:
- case TSqlParser.DATEPART:
- case TSqlParser.DAYS:
- case TSqlParser.DB_CHAINING:
- case TSqlParser.DB_FAILOVER:
- case TSqlParser.DECRYPTION:
- case TSqlParser.DEFAULT_DOUBLE_QUOTE:
- case TSqlParser.DEFAULT_FULLTEXT_LANGUAGE:
- case TSqlParser.DEFAULT_LANGUAGE:
- case TSqlParser.DELAY:
- case TSqlParser.DELAYED_DURABILITY:
- case TSqlParser.DELETED:
- case TSqlParser.DENSE_RANK:
- case TSqlParser.DEPENDENTS:
- case TSqlParser.DES:
- case TSqlParser.DESCRIPTION:
- case TSqlParser.DESX:
- case TSqlParser.DHCP:
- case TSqlParser.DIALOG:
- case TSqlParser.DIRECTORY_NAME:
- case TSqlParser.DISABLE:
- case TSqlParser.DISABLE_BROKER:
- case TSqlParser.DISABLED:
- case TSqlParser.DISK_DRIVE:
- case TSqlParser.DOCUMENT:
- case TSqlParser.DYNAMIC:
- case TSqlParser.EMERGENCY:
- case TSqlParser.EMPTY:
- case TSqlParser.ENABLE:
- case TSqlParser.ENABLE_BROKER:
- case TSqlParser.ENCRYPTED_VALUE:
- case TSqlParser.ENCRYPTION:
- case TSqlParser.ENDPOINT_URL:
- case TSqlParser.ERROR_BROKER_CONVERSATIONS:
- case TSqlParser.EXCLUSIVE:
- case TSqlParser.EXECUTABLE:
- case TSqlParser.EXIST:
- case TSqlParser.EXPAND:
- case TSqlParser.EXPIRY_DATE:
- case TSqlParser.EXPLICIT:
- case TSqlParser.FAIL_OPERATION:
- case TSqlParser.FAILOVER_MODE:
- case TSqlParser.FAILURE:
- case TSqlParser.FAILURE_CONDITION_LEVEL:
- case TSqlParser.FAST:
- case TSqlParser.FAST_FORWARD:
- case TSqlParser.FILEGROUP:
- case TSqlParser.FILEGROWTH:
- case TSqlParser.FILEPATH:
- case TSqlParser.FILESTREAM:
- case TSqlParser.FILTER:
- case TSqlParser.FIRST:
- case TSqlParser.FIRST_VALUE:
- case TSqlParser.FOLLOWING:
- case TSqlParser.FORCE:
- case TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS:
- case TSqlParser.FORCED:
- case TSqlParser.FORMAT:
- case TSqlParser.FORWARD_ONLY:
- case TSqlParser.FULLSCAN:
- case TSqlParser.FULLTEXT:
- case TSqlParser.GB:
- case TSqlParser.GETDATE:
- case TSqlParser.GETUTCDATE:
- case TSqlParser.GLOBAL:
- case TSqlParser.GO:
- case TSqlParser.GROUP_MAX_REQUESTS:
- case TSqlParser.GROUPING:
- case TSqlParser.GROUPING_ID:
- case TSqlParser.HADR:
- case TSqlParser.HASH:
- case TSqlParser.HEALTH_CHECK_TIMEOUT:
- case TSqlParser.HIGH:
- case TSqlParser.HONOR_BROKER_PRIORITY:
- case TSqlParser.HOURS:
- case TSqlParser.IDENTITY_VALUE:
- case TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX:
- case TSqlParser.IMMEDIATE:
- case TSqlParser.IMPERSONATE:
- case TSqlParser.IMPORTANCE:
- case TSqlParser.INCREMENTAL:
- case TSqlParser.INITIATOR:
- case TSqlParser.INPUT:
- case TSqlParser.INSENSITIVE:
- case TSqlParser.INSERTED:
- case TSqlParser.INT:
- case TSqlParser.IP:
- case TSqlParser.ISOLATION:
- case TSqlParser.KB:
- case TSqlParser.KEEP:
- case TSqlParser.KEEPFIXED:
- case TSqlParser.KEY_SOURCE:
- case TSqlParser.KEYS:
- case TSqlParser.KEYSET:
- case TSqlParser.LAG:
- case TSqlParser.LAST:
- case TSqlParser.LAST_VALUE:
- case TSqlParser.LEAD:
- case TSqlParser.LEVEL:
- case TSqlParser.LIST:
- case TSqlParser.LISTENER:
- case TSqlParser.LISTENER_URL:
- case TSqlParser.LOB_COMPACTION:
- case TSqlParser.LOCAL:
- case TSqlParser.LOCATION:
- case TSqlParser.LOCK:
- case TSqlParser.LOCK_ESCALATION:
- case TSqlParser.LOGIN:
- case TSqlParser.LOOP:
- case TSqlParser.LOW:
- case TSqlParser.MANUAL:
- case TSqlParser.MARK:
- case TSqlParser.MATERIALIZED:
- case TSqlParser.MAX:
- case TSqlParser.MAX_CPU_PERCENT:
- case TSqlParser.MAX_DOP:
- case TSqlParser.MAX_FILES:
- case TSqlParser.MAX_IOPS_PER_VOLUME:
- case TSqlParser.MAX_MEMORY_PERCENT:
- case TSqlParser.MAX_PROCESSES:
- case TSqlParser.MAX_QUEUE_READERS:
- case TSqlParser.MAX_ROLLOVER_FILES:
- case TSqlParser.MAXDOP:
- case TSqlParser.MAXRECURSION:
- case TSqlParser.MAXSIZE:
- case TSqlParser.MB:
- case TSqlParser.MEDIUM:
- case TSqlParser.MEMORY_OPTIMIZED_DATA:
- case TSqlParser.MESSAGE:
- case TSqlParser.MIN:
- case TSqlParser.MIN_ACTIVE_ROWVERSION:
- case TSqlParser.MIN_CPU_PERCENT:
- case TSqlParser.MIN_IOPS_PER_VOLUME:
- case TSqlParser.MIN_MEMORY_PERCENT:
- case TSqlParser.MINUTES:
- case TSqlParser.MIRROR_ADDRESS:
- case TSqlParser.MIXED_PAGE_ALLOCATION:
- case TSqlParser.MODE:
- case TSqlParser.MODIFY:
- case TSqlParser.MOVE:
- case TSqlParser.MULTI_USER:
- case TSqlParser.NAME:
- case TSqlParser.NESTED_TRIGGERS:
- case TSqlParser.NEW_ACCOUNT:
- case TSqlParser.NEW_BROKER:
- case TSqlParser.NEW_PASSWORD:
- case TSqlParser.NEXT:
- case TSqlParser.NO:
- case TSqlParser.NO_TRUNCATE:
- case TSqlParser.NO_WAIT:
- case TSqlParser.NOCOUNT:
- case TSqlParser.NODES:
- case TSqlParser.NOEXPAND:
- case TSqlParser.NON_TRANSACTED_ACCESS:
- case TSqlParser.NORECOMPUTE:
- case TSqlParser.NORECOVERY:
- case TSqlParser.NOWAIT:
- case TSqlParser.NTILE:
- case TSqlParser.NUMANODE:
- case TSqlParser.NUMBER:
- case TSqlParser.NUMERIC_ROUNDABORT:
- case TSqlParser.OBJECT:
- case TSqlParser.OFFLINE:
- case TSqlParser.OFFSET:
- case TSqlParser.OLD_ACCOUNT:
- case TSqlParser.ONLINE:
- case TSqlParser.ONLY:
- case TSqlParser.OPEN_EXISTING:
- case TSqlParser.OPTIMISTIC:
- case TSqlParser.OPTIMIZE:
- case TSqlParser.OUT:
- case TSqlParser.OUTPUT:
- case TSqlParser.OWNER:
- case TSqlParser.PAGE_VERIFY:
- case TSqlParser.PARAMETERIZATION:
- case TSqlParser.PARTITION:
- case TSqlParser.PARTITIONS:
- case TSqlParser.PARTNER:
- case TSqlParser.PATH:
- case TSqlParser.POISON_MESSAGE_HANDLING:
- case TSqlParser.POOL:
- case TSqlParser.PORT:
- case TSqlParser.PRECEDING:
- case TSqlParser.PRIMARY_ROLE:
- case TSqlParser.PRIOR:
- case TSqlParser.PRIORITY:
- case TSqlParser.PRIORITY_LEVEL:
- case TSqlParser.PRIVATE:
- case TSqlParser.PRIVATE_KEY:
- case TSqlParser.PRIVILEGES:
- case TSqlParser.PROCEDURE_NAME:
- case TSqlParser.PROPERTY:
- case TSqlParser.PROVIDER:
- case TSqlParser.PROVIDER_KEY_NAME:
- case TSqlParser.QUERY:
- case TSqlParser.QUEUE:
- case TSqlParser.QUEUE_DELAY:
- case TSqlParser.QUOTED_IDENTIFIER:
- case TSqlParser.RANGE:
- case TSqlParser.RANK:
- case TSqlParser.RC2:
- case TSqlParser.RC4:
- case TSqlParser.RC4_128:
- case TSqlParser.READ_COMMITTED_SNAPSHOT:
- case TSqlParser.READ_ONLY:
- case TSqlParser.READ_ONLY_ROUTING_LIST:
- case TSqlParser.READ_WRITE:
- case TSqlParser.READONLY:
- case TSqlParser.REBUILD:
- case TSqlParser.RECEIVE:
- case TSqlParser.RECOMPILE:
- case TSqlParser.RECOVERY:
- case TSqlParser.RECURSIVE_TRIGGERS:
- case TSqlParser.RELATIVE:
- case TSqlParser.REMOTE:
- case TSqlParser.REMOTE_SERVICE_NAME:
- case TSqlParser.REMOVE:
- case TSqlParser.REORGANIZE:
- case TSqlParser.REPEATABLE:
- case TSqlParser.REPLICA:
- case TSqlParser.REQUEST_MAX_CPU_TIME_SEC:
- case TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT:
- case TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC:
- case TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT:
- case TSqlParser.RESERVE_DISK_SPACE:
- case TSqlParser.RESOURCE:
- case TSqlParser.RESOURCE_MANAGER_LOCATION:
- case TSqlParser.RESTRICTED_USER:
- case TSqlParser.RETENTION:
- case TSqlParser.ROBUST:
- case TSqlParser.ROOT:
- case TSqlParser.ROUTE:
- case TSqlParser.ROW:
- case TSqlParser.ROW_NUMBER:
- case TSqlParser.ROWGUID:
- case TSqlParser.ROWS:
- case TSqlParser.SAMPLE:
- case TSqlParser.SCHEMABINDING:
- case TSqlParser.SCOPED:
- case TSqlParser.SCROLL:
- case TSqlParser.SCROLL_LOCKS:
- case TSqlParser.SEARCH:
- case TSqlParser.SECONDARY:
- case TSqlParser.SECONDARY_ONLY:
- case TSqlParser.SECONDARY_ROLE:
- case TSqlParser.SECONDS:
- case TSqlParser.SECRET:
- case TSqlParser.SECURITY:
- case TSqlParser.SECURITY_LOG:
- case TSqlParser.SEEDING_MODE:
- case TSqlParser.SELF:
- case TSqlParser.SEMI_SENSITIVE:
- case TSqlParser.SEND:
- case TSqlParser.SENT:
- case TSqlParser.SEQUENCE:
- case TSqlParser.SERIALIZABLE:
- case TSqlParser.SESSION_TIMEOUT:
- case TSqlParser.SETERROR:
- case TSqlParser.SHARE:
- case TSqlParser.SHOWPLAN:
- case TSqlParser.SIGNATURE:
- case TSqlParser.SIMPLE:
- case TSqlParser.SINGLE_USER:
- case TSqlParser.SIZE:
- case TSqlParser.SMALLINT:
- case TSqlParser.SNAPSHOT:
- case TSqlParser.SPATIAL_WINDOW_MAX_CELLS:
- case TSqlParser.STANDBY:
- case TSqlParser.START_DATE:
- case TSqlParser.STATIC:
- case TSqlParser.STATS_STREAM:
- case TSqlParser.STATUS:
- case TSqlParser.STDEV:
- case TSqlParser.STDEVP:
- case TSqlParser.STOPLIST:
- case TSqlParser.STRING_AGG:
- case TSqlParser.STUFF:
- case TSqlParser.SUBJECT:
- case TSqlParser.SUM:
- case TSqlParser.SUSPEND:
- case TSqlParser.SYMMETRIC:
- case TSqlParser.SYNCHRONOUS_COMMIT:
- case TSqlParser.SYNONYM:
- case TSqlParser.SYSTEM:
- case TSqlParser.TAKE:
- case TSqlParser.TARGET_RECOVERY_TIME:
- case TSqlParser.TB:
- case TSqlParser.TEXTIMAGE_ON:
- case TSqlParser.THROW:
- case TSqlParser.TIES:
- case TSqlParser.TIME:
- case TSqlParser.TIMEOUT:
- case TSqlParser.TIMER:
- case TSqlParser.TINYINT:
- case TSqlParser.TORN_PAGE_DETECTION:
- case TSqlParser.TRANSFORM_NOISE_WORDS:
- case TSqlParser.TRIPLE_DES:
- case TSqlParser.TRIPLE_DES_3KEY:
- case TSqlParser.TRUSTWORTHY:
- case TSqlParser.TRY:
- case TSqlParser.TSQL:
- case TSqlParser.TWO_DIGIT_YEAR_CUTOFF:
- case TSqlParser.TYPE:
- case TSqlParser.TYPE_WARNING:
- case TSqlParser.UNBOUNDED:
- case TSqlParser.UNCOMMITTED:
- case TSqlParser.UNKNOWN:
- case TSqlParser.UNLIMITED:
- case TSqlParser.USING:
- case TSqlParser.VALID_XML:
- case TSqlParser.VALIDATION:
- case TSqlParser.VALUE:
- case TSqlParser.VAR:
- case TSqlParser.VARP:
- case TSqlParser.VIEW_METADATA:
- case TSqlParser.VIEWS:
- case TSqlParser.WAIT:
- case TSqlParser.WELL_FORMED_XML:
- case TSqlParser.WORK:
- case TSqlParser.WORKLOAD:
- case TSqlParser.XML:
- case TSqlParser.XMLNAMESPACES:
- case TSqlParser.ID:
- this.enterOuterAlt(localctx, 1);
- this.state = 10727;
- this.simple_id();
- break;
- case TSqlParser.DOUBLE_QUOTE_ID:
- this.enterOuterAlt(localctx, 2);
- this.state = 10728;
- this.match(TSqlParser.DOUBLE_QUOTE_ID);
- break;
- case TSqlParser.SQUARE_BRACKET_ID:
- this.enterOuterAlt(localctx, 3);
- this.state = 10729;
- this.match(TSqlParser.SQUARE_BRACKET_ID);
- break;
- default:
- throw new antlr4.error.NoViableAltException(this);
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Simple_idContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_simple_id;
- return this;
-}
-
-Simple_idContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Simple_idContext.prototype.constructor = Simple_idContext;
-
-Simple_idContext.prototype.ID = function() {
- return this.getToken(TSqlParser.ID, 0);
-};
-
-Simple_idContext.prototype.ABSOLUTE = function() {
- return this.getToken(TSqlParser.ABSOLUTE, 0);
-};
-
-Simple_idContext.prototype.ACCENT_SENSITIVITY = function() {
- return this.getToken(TSqlParser.ACCENT_SENSITIVITY, 0);
-};
-
-Simple_idContext.prototype.ACTION = function() {
- return this.getToken(TSqlParser.ACTION, 0);
-};
-
-Simple_idContext.prototype.ACTIVATION = function() {
- return this.getToken(TSqlParser.ACTIVATION, 0);
-};
-
-Simple_idContext.prototype.ACTIVE = function() {
- return this.getToken(TSqlParser.ACTIVE, 0);
-};
-
-Simple_idContext.prototype.ADDRESS = function() {
- return this.getToken(TSqlParser.ADDRESS, 0);
-};
-
-Simple_idContext.prototype.AES_128 = function() {
- return this.getToken(TSqlParser.AES_128, 0);
-};
-
-Simple_idContext.prototype.AES_192 = function() {
- return this.getToken(TSqlParser.AES_192, 0);
-};
-
-Simple_idContext.prototype.AES_256 = function() {
- return this.getToken(TSqlParser.AES_256, 0);
-};
-
-Simple_idContext.prototype.AFFINITY = function() {
- return this.getToken(TSqlParser.AFFINITY, 0);
-};
-
-Simple_idContext.prototype.AFTER = function() {
- return this.getToken(TSqlParser.AFTER, 0);
-};
-
-Simple_idContext.prototype.AGGREGATE = function() {
- return this.getToken(TSqlParser.AGGREGATE, 0);
-};
-
-Simple_idContext.prototype.ALGORITHM = function() {
- return this.getToken(TSqlParser.ALGORITHM, 0);
-};
-
-Simple_idContext.prototype.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS = function() {
- return this.getToken(TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS, 0);
-};
-
-Simple_idContext.prototype.ALLOW_SNAPSHOT_ISOLATION = function() {
- return this.getToken(TSqlParser.ALLOW_SNAPSHOT_ISOLATION, 0);
-};
-
-Simple_idContext.prototype.ALLOWED = function() {
- return this.getToken(TSqlParser.ALLOWED, 0);
-};
-
-Simple_idContext.prototype.ANSI_NULL_DEFAULT = function() {
- return this.getToken(TSqlParser.ANSI_NULL_DEFAULT, 0);
-};
-
-Simple_idContext.prototype.ANSI_NULLS = function() {
- return this.getToken(TSqlParser.ANSI_NULLS, 0);
-};
-
-Simple_idContext.prototype.ANSI_PADDING = function() {
- return this.getToken(TSqlParser.ANSI_PADDING, 0);
-};
-
-Simple_idContext.prototype.ANSI_WARNINGS = function() {
- return this.getToken(TSqlParser.ANSI_WARNINGS, 0);
-};
-
-Simple_idContext.prototype.APPLICATION_LOG = function() {
- return this.getToken(TSqlParser.APPLICATION_LOG, 0);
-};
-
-Simple_idContext.prototype.APPLY = function() {
- return this.getToken(TSqlParser.APPLY, 0);
-};
-
-Simple_idContext.prototype.ARITHABORT = function() {
- return this.getToken(TSqlParser.ARITHABORT, 0);
-};
-
-Simple_idContext.prototype.ASSEMBLY = function() {
- return this.getToken(TSqlParser.ASSEMBLY, 0);
-};
-
-Simple_idContext.prototype.AUDIT = function() {
- return this.getToken(TSqlParser.AUDIT, 0);
-};
-
-Simple_idContext.prototype.AUDIT_GUID = function() {
- return this.getToken(TSqlParser.AUDIT_GUID, 0);
-};
-
-Simple_idContext.prototype.AUTO = function() {
- return this.getToken(TSqlParser.AUTO, 0);
-};
-
-Simple_idContext.prototype.AUTO_CLEANUP = function() {
- return this.getToken(TSqlParser.AUTO_CLEANUP, 0);
-};
-
-Simple_idContext.prototype.AUTO_CLOSE = function() {
- return this.getToken(TSqlParser.AUTO_CLOSE, 0);
-};
-
-Simple_idContext.prototype.AUTO_CREATE_STATISTICS = function() {
- return this.getToken(TSqlParser.AUTO_CREATE_STATISTICS, 0);
-};
-
-Simple_idContext.prototype.AUTO_SHRINK = function() {
- return this.getToken(TSqlParser.AUTO_SHRINK, 0);
-};
-
-Simple_idContext.prototype.AUTO_UPDATE_STATISTICS = function() {
- return this.getToken(TSqlParser.AUTO_UPDATE_STATISTICS, 0);
-};
-
-Simple_idContext.prototype.AUTO_UPDATE_STATISTICS_ASYNC = function() {
- return this.getToken(TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC, 0);
-};
-
-Simple_idContext.prototype.AVAILABILITY = function() {
- return this.getToken(TSqlParser.AVAILABILITY, 0);
-};
-
-Simple_idContext.prototype.AVG = function() {
- return this.getToken(TSqlParser.AVG, 0);
-};
-
-Simple_idContext.prototype.BACKUP_PRIORITY = function() {
- return this.getToken(TSqlParser.BACKUP_PRIORITY, 0);
-};
-
-Simple_idContext.prototype.BEGIN_DIALOG = function() {
- return this.getToken(TSqlParser.BEGIN_DIALOG, 0);
-};
-
-Simple_idContext.prototype.BIGINT = function() {
- return this.getToken(TSqlParser.BIGINT, 0);
-};
-
-Simple_idContext.prototype.BINARY_BASE64 = function() {
- return this.getToken(TSqlParser.BINARY_BASE64, 0);
-};
-
-Simple_idContext.prototype.BINARY_CHECKSUM = function() {
- return this.getToken(TSqlParser.BINARY_CHECKSUM, 0);
-};
-
-Simple_idContext.prototype.BINDING = function() {
- return this.getToken(TSqlParser.BINDING, 0);
-};
-
-Simple_idContext.prototype.BLOB_STORAGE = function() {
- return this.getToken(TSqlParser.BLOB_STORAGE, 0);
-};
-
-Simple_idContext.prototype.BROKER = function() {
- return this.getToken(TSqlParser.BROKER, 0);
-};
-
-Simple_idContext.prototype.BROKER_INSTANCE = function() {
- return this.getToken(TSqlParser.BROKER_INSTANCE, 0);
-};
-
-Simple_idContext.prototype.BULK_LOGGED = function() {
- return this.getToken(TSqlParser.BULK_LOGGED, 0);
-};
-
-Simple_idContext.prototype.CALLED = function() {
- return this.getToken(TSqlParser.CALLED, 0);
-};
-
-Simple_idContext.prototype.CALLER = function() {
- return this.getToken(TSqlParser.CALLER, 0);
-};
-
-Simple_idContext.prototype.CAP_CPU_PERCENT = function() {
- return this.getToken(TSqlParser.CAP_CPU_PERCENT, 0);
-};
-
-Simple_idContext.prototype.CAST = function() {
- return this.getToken(TSqlParser.CAST, 0);
-};
-
-Simple_idContext.prototype.CATALOG = function() {
- return this.getToken(TSqlParser.CATALOG, 0);
-};
-
-Simple_idContext.prototype.CATCH = function() {
- return this.getToken(TSqlParser.CATCH, 0);
-};
-
-Simple_idContext.prototype.CHANGE_RETENTION = function() {
- return this.getToken(TSqlParser.CHANGE_RETENTION, 0);
-};
-
-Simple_idContext.prototype.CHANGE_TRACKING = function() {
- return this.getToken(TSqlParser.CHANGE_TRACKING, 0);
-};
-
-Simple_idContext.prototype.CHECKSUM = function() {
- return this.getToken(TSqlParser.CHECKSUM, 0);
-};
-
-Simple_idContext.prototype.CHECKSUM_AGG = function() {
- return this.getToken(TSqlParser.CHECKSUM_AGG, 0);
-};
-
-Simple_idContext.prototype.CLEANUP = function() {
- return this.getToken(TSqlParser.CLEANUP, 0);
-};
-
-Simple_idContext.prototype.COLLECTION = function() {
- return this.getToken(TSqlParser.COLLECTION, 0);
-};
-
-Simple_idContext.prototype.COLUMN_MASTER_KEY = function() {
- return this.getToken(TSqlParser.COLUMN_MASTER_KEY, 0);
-};
-
-Simple_idContext.prototype.COMMITTED = function() {
- return this.getToken(TSqlParser.COMMITTED, 0);
-};
-
-Simple_idContext.prototype.COMPATIBILITY_LEVEL = function() {
- return this.getToken(TSqlParser.COMPATIBILITY_LEVEL, 0);
-};
-
-Simple_idContext.prototype.CONCAT = function() {
- return this.getToken(TSqlParser.CONCAT, 0);
-};
-
-Simple_idContext.prototype.CONCAT_NULL_YIELDS_NULL = function() {
- return this.getToken(TSqlParser.CONCAT_NULL_YIELDS_NULL, 0);
-};
-
-Simple_idContext.prototype.CONTENT = function() {
- return this.getToken(TSqlParser.CONTENT, 0);
-};
-
-Simple_idContext.prototype.CONTROL = function() {
- return this.getToken(TSqlParser.CONTROL, 0);
-};
-
-Simple_idContext.prototype.COOKIE = function() {
- return this.getToken(TSqlParser.COOKIE, 0);
-};
-
-Simple_idContext.prototype.COUNT = function() {
- return this.getToken(TSqlParser.COUNT, 0);
-};
-
-Simple_idContext.prototype.COUNT_BIG = function() {
- return this.getToken(TSqlParser.COUNT_BIG, 0);
-};
-
-Simple_idContext.prototype.COUNTER = function() {
- return this.getToken(TSqlParser.COUNTER, 0);
-};
-
-Simple_idContext.prototype.CPU = function() {
- return this.getToken(TSqlParser.CPU, 0);
-};
-
-Simple_idContext.prototype.CREATE_NEW = function() {
- return this.getToken(TSqlParser.CREATE_NEW, 0);
-};
-
-Simple_idContext.prototype.CREATION_DISPOSITION = function() {
- return this.getToken(TSqlParser.CREATION_DISPOSITION, 0);
-};
-
-Simple_idContext.prototype.CREDENTIAL = function() {
- return this.getToken(TSqlParser.CREDENTIAL, 0);
-};
-
-Simple_idContext.prototype.CRYPTOGRAPHIC = function() {
- return this.getToken(TSqlParser.CRYPTOGRAPHIC, 0);
-};
-
-Simple_idContext.prototype.CURSOR_CLOSE_ON_COMMIT = function() {
- return this.getToken(TSqlParser.CURSOR_CLOSE_ON_COMMIT, 0);
-};
-
-Simple_idContext.prototype.CURSOR_DEFAULT = function() {
- return this.getToken(TSqlParser.CURSOR_DEFAULT, 0);
-};
-
-Simple_idContext.prototype.DATA = function() {
- return this.getToken(TSqlParser.DATA, 0);
-};
-
-Simple_idContext.prototype.DATA_COMPRESSION = function() {
- return this.getToken(TSqlParser.DATA_COMPRESSION, 0);
-};
-
-Simple_idContext.prototype.DATE_CORRELATION_OPTIMIZATION = function() {
- return this.getToken(TSqlParser.DATE_CORRELATION_OPTIMIZATION, 0);
-};
-
-Simple_idContext.prototype.DATEADD = function() {
- return this.getToken(TSqlParser.DATEADD, 0);
-};
-
-Simple_idContext.prototype.DATEDIFF = function() {
- return this.getToken(TSqlParser.DATEDIFF, 0);
-};
-
-Simple_idContext.prototype.DATENAME = function() {
- return this.getToken(TSqlParser.DATENAME, 0);
-};
-
-Simple_idContext.prototype.DATEPART = function() {
- return this.getToken(TSqlParser.DATEPART, 0);
-};
-
-Simple_idContext.prototype.DAYS = function() {
- return this.getToken(TSqlParser.DAYS, 0);
-};
-
-Simple_idContext.prototype.DB_CHAINING = function() {
- return this.getToken(TSqlParser.DB_CHAINING, 0);
-};
-
-Simple_idContext.prototype.DB_FAILOVER = function() {
- return this.getToken(TSqlParser.DB_FAILOVER, 0);
-};
-
-Simple_idContext.prototype.DECRYPTION = function() {
- return this.getToken(TSqlParser.DECRYPTION, 0);
-};
-
-Simple_idContext.prototype.DEFAULT_DOUBLE_QUOTE = function() {
- return this.getToken(TSqlParser.DEFAULT_DOUBLE_QUOTE, 0);
-};
-
-Simple_idContext.prototype.DEFAULT_FULLTEXT_LANGUAGE = function() {
- return this.getToken(TSqlParser.DEFAULT_FULLTEXT_LANGUAGE, 0);
-};
-
-Simple_idContext.prototype.DEFAULT_LANGUAGE = function() {
- return this.getToken(TSqlParser.DEFAULT_LANGUAGE, 0);
-};
-
-Simple_idContext.prototype.DELAY = function() {
- return this.getToken(TSqlParser.DELAY, 0);
-};
-
-Simple_idContext.prototype.DELAYED_DURABILITY = function() {
- return this.getToken(TSqlParser.DELAYED_DURABILITY, 0);
-};
-
-Simple_idContext.prototype.DELETED = function() {
- return this.getToken(TSqlParser.DELETED, 0);
-};
-
-Simple_idContext.prototype.DENSE_RANK = function() {
- return this.getToken(TSqlParser.DENSE_RANK, 0);
-};
-
-Simple_idContext.prototype.DEPENDENTS = function() {
- return this.getToken(TSqlParser.DEPENDENTS, 0);
-};
-
-Simple_idContext.prototype.DES = function() {
- return this.getToken(TSqlParser.DES, 0);
-};
-
-Simple_idContext.prototype.DESCRIPTION = function() {
- return this.getToken(TSqlParser.DESCRIPTION, 0);
-};
-
-Simple_idContext.prototype.DESX = function() {
- return this.getToken(TSqlParser.DESX, 0);
-};
-
-Simple_idContext.prototype.DHCP = function() {
- return this.getToken(TSqlParser.DHCP, 0);
-};
-
-Simple_idContext.prototype.DIALOG = function() {
- return this.getToken(TSqlParser.DIALOG, 0);
-};
-
-Simple_idContext.prototype.DIRECTORY_NAME = function() {
- return this.getToken(TSqlParser.DIRECTORY_NAME, 0);
-};
-
-Simple_idContext.prototype.DISABLE = function() {
- return this.getToken(TSqlParser.DISABLE, 0);
-};
-
-Simple_idContext.prototype.DISABLE_BROKER = function() {
- return this.getToken(TSqlParser.DISABLE_BROKER, 0);
-};
-
-Simple_idContext.prototype.DISABLED = function() {
- return this.getToken(TSqlParser.DISABLED, 0);
-};
-
-Simple_idContext.prototype.DISK_DRIVE = function() {
- return this.getToken(TSqlParser.DISK_DRIVE, 0);
-};
-
-Simple_idContext.prototype.DOCUMENT = function() {
- return this.getToken(TSqlParser.DOCUMENT, 0);
-};
-
-Simple_idContext.prototype.DYNAMIC = function() {
- return this.getToken(TSqlParser.DYNAMIC, 0);
-};
-
-Simple_idContext.prototype.EMERGENCY = function() {
- return this.getToken(TSqlParser.EMERGENCY, 0);
-};
-
-Simple_idContext.prototype.EMPTY = function() {
- return this.getToken(TSqlParser.EMPTY, 0);
-};
-
-Simple_idContext.prototype.ENABLE = function() {
- return this.getToken(TSqlParser.ENABLE, 0);
-};
-
-Simple_idContext.prototype.ENABLE_BROKER = function() {
- return this.getToken(TSqlParser.ENABLE_BROKER, 0);
-};
-
-Simple_idContext.prototype.ENCRYPTED_VALUE = function() {
- return this.getToken(TSqlParser.ENCRYPTED_VALUE, 0);
-};
-
-Simple_idContext.prototype.ENCRYPTION = function() {
- return this.getToken(TSqlParser.ENCRYPTION, 0);
-};
-
-Simple_idContext.prototype.ENDPOINT_URL = function() {
- return this.getToken(TSqlParser.ENDPOINT_URL, 0);
-};
-
-Simple_idContext.prototype.ERROR_BROKER_CONVERSATIONS = function() {
- return this.getToken(TSqlParser.ERROR_BROKER_CONVERSATIONS, 0);
-};
-
-Simple_idContext.prototype.EVENTDATA = function() {
- return this.getToken(TSqlParser.EVENTDATA, 0);
-};
-
-Simple_idContext.prototype.EXCLUSIVE = function() {
- return this.getToken(TSqlParser.EXCLUSIVE, 0);
-};
-
-Simple_idContext.prototype.EXECUTABLE = function() {
- return this.getToken(TSqlParser.EXECUTABLE, 0);
-};
-
-Simple_idContext.prototype.EXIST = function() {
- return this.getToken(TSqlParser.EXIST, 0);
-};
-
-Simple_idContext.prototype.EXPAND = function() {
- return this.getToken(TSqlParser.EXPAND, 0);
-};
-
-Simple_idContext.prototype.EXPIRY_DATE = function() {
- return this.getToken(TSqlParser.EXPIRY_DATE, 0);
-};
-
-Simple_idContext.prototype.EXPLICIT = function() {
- return this.getToken(TSqlParser.EXPLICIT, 0);
-};
-
-Simple_idContext.prototype.FAIL_OPERATION = function() {
- return this.getToken(TSqlParser.FAIL_OPERATION, 0);
-};
-
-Simple_idContext.prototype.FAILOVER_MODE = function() {
- return this.getToken(TSqlParser.FAILOVER_MODE, 0);
-};
-
-Simple_idContext.prototype.FAILURE = function() {
- return this.getToken(TSqlParser.FAILURE, 0);
-};
-
-Simple_idContext.prototype.FAILURE_CONDITION_LEVEL = function() {
- return this.getToken(TSqlParser.FAILURE_CONDITION_LEVEL, 0);
-};
-
-Simple_idContext.prototype.FAST = function() {
- return this.getToken(TSqlParser.FAST, 0);
-};
-
-Simple_idContext.prototype.FAST_FORWARD = function() {
- return this.getToken(TSqlParser.FAST_FORWARD, 0);
-};
-
-Simple_idContext.prototype.FILEGROUP = function() {
- return this.getToken(TSqlParser.FILEGROUP, 0);
-};
-
-Simple_idContext.prototype.FILEGROWTH = function() {
- return this.getToken(TSqlParser.FILEGROWTH, 0);
-};
-
-Simple_idContext.prototype.FILENAME = function() {
- return this.getToken(TSqlParser.FILENAME, 0);
-};
-
-Simple_idContext.prototype.FILEPATH = function() {
- return this.getToken(TSqlParser.FILEPATH, 0);
-};
-
-Simple_idContext.prototype.FILESTREAM = function() {
- return this.getToken(TSqlParser.FILESTREAM, 0);
-};
-
-Simple_idContext.prototype.FILLFACTOR = function() {
- return this.getToken(TSqlParser.FILLFACTOR, 0);
-};
-
-Simple_idContext.prototype.FILTER = function() {
- return this.getToken(TSqlParser.FILTER, 0);
-};
-
-Simple_idContext.prototype.FIRST = function() {
- return this.getToken(TSqlParser.FIRST, 0);
-};
-
-Simple_idContext.prototype.FIRST_VALUE = function() {
- return this.getToken(TSqlParser.FIRST_VALUE, 0);
-};
-
-Simple_idContext.prototype.FOLLOWING = function() {
- return this.getToken(TSqlParser.FOLLOWING, 0);
-};
-
-Simple_idContext.prototype.FORCE = function() {
- return this.getToken(TSqlParser.FORCE, 0);
-};
-
-Simple_idContext.prototype.FORCE_FAILOVER_ALLOW_DATA_LOSS = function() {
- return this.getToken(TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS, 0);
-};
-
-Simple_idContext.prototype.FORCED = function() {
- return this.getToken(TSqlParser.FORCED, 0);
-};
-
-Simple_idContext.prototype.FORCESEEK = function() {
- return this.getToken(TSqlParser.FORCESEEK, 0);
-};
-
-Simple_idContext.prototype.FORMAT = function() {
- return this.getToken(TSqlParser.FORMAT, 0);
-};
-
-Simple_idContext.prototype.FORWARD_ONLY = function() {
- return this.getToken(TSqlParser.FORWARD_ONLY, 0);
-};
-
-Simple_idContext.prototype.FULLSCAN = function() {
- return this.getToken(TSqlParser.FULLSCAN, 0);
-};
-
-Simple_idContext.prototype.FULLTEXT = function() {
- return this.getToken(TSqlParser.FULLTEXT, 0);
-};
-
-Simple_idContext.prototype.GB = function() {
- return this.getToken(TSqlParser.GB, 0);
-};
-
-Simple_idContext.prototype.GETDATE = function() {
- return this.getToken(TSqlParser.GETDATE, 0);
-};
-
-Simple_idContext.prototype.GETUTCDATE = function() {
- return this.getToken(TSqlParser.GETUTCDATE, 0);
-};
-
-Simple_idContext.prototype.GLOBAL = function() {
- return this.getToken(TSqlParser.GLOBAL, 0);
-};
-
-Simple_idContext.prototype.GO = function() {
- return this.getToken(TSqlParser.GO, 0);
-};
-
-Simple_idContext.prototype.GROUP_MAX_REQUESTS = function() {
- return this.getToken(TSqlParser.GROUP_MAX_REQUESTS, 0);
-};
-
-Simple_idContext.prototype.GROUPING = function() {
- return this.getToken(TSqlParser.GROUPING, 0);
-};
-
-Simple_idContext.prototype.GROUPING_ID = function() {
- return this.getToken(TSqlParser.GROUPING_ID, 0);
-};
-
-Simple_idContext.prototype.HADR = function() {
- return this.getToken(TSqlParser.HADR, 0);
-};
-
-Simple_idContext.prototype.HASH = function() {
- return this.getToken(TSqlParser.HASH, 0);
-};
-
-Simple_idContext.prototype.HEALTH_CHECK_TIMEOUT = function() {
- return this.getToken(TSqlParser.HEALTH_CHECK_TIMEOUT, 0);
-};
-
-Simple_idContext.prototype.HIGH = function() {
- return this.getToken(TSqlParser.HIGH, 0);
-};
-
-Simple_idContext.prototype.HONOR_BROKER_PRIORITY = function() {
- return this.getToken(TSqlParser.HONOR_BROKER_PRIORITY, 0);
-};
-
-Simple_idContext.prototype.HOURS = function() {
- return this.getToken(TSqlParser.HOURS, 0);
-};
-
-Simple_idContext.prototype.IDENTITY_VALUE = function() {
- return this.getToken(TSqlParser.IDENTITY_VALUE, 0);
-};
-
-Simple_idContext.prototype.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX = function() {
- return this.getToken(TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX, 0);
-};
-
-Simple_idContext.prototype.IMMEDIATE = function() {
- return this.getToken(TSqlParser.IMMEDIATE, 0);
-};
-
-Simple_idContext.prototype.IMPERSONATE = function() {
- return this.getToken(TSqlParser.IMPERSONATE, 0);
-};
-
-Simple_idContext.prototype.IMPORTANCE = function() {
- return this.getToken(TSqlParser.IMPORTANCE, 0);
-};
-
-Simple_idContext.prototype.INCREMENTAL = function() {
- return this.getToken(TSqlParser.INCREMENTAL, 0);
-};
-
-Simple_idContext.prototype.INIT = function() {
- return this.getToken(TSqlParser.INIT, 0);
-};
-
-Simple_idContext.prototype.INITIATOR = function() {
- return this.getToken(TSqlParser.INITIATOR, 0);
-};
-
-Simple_idContext.prototype.INPUT = function() {
- return this.getToken(TSqlParser.INPUT, 0);
-};
-
-Simple_idContext.prototype.INSENSITIVE = function() {
- return this.getToken(TSqlParser.INSENSITIVE, 0);
-};
-
-Simple_idContext.prototype.INSERTED = function() {
- return this.getToken(TSqlParser.INSERTED, 0);
-};
-
-Simple_idContext.prototype.INT = function() {
- return this.getToken(TSqlParser.INT, 0);
-};
-
-Simple_idContext.prototype.IP = function() {
- return this.getToken(TSqlParser.IP, 0);
-};
-
-Simple_idContext.prototype.ISOLATION = function() {
- return this.getToken(TSqlParser.ISOLATION, 0);
-};
-
-Simple_idContext.prototype.KB = function() {
- return this.getToken(TSqlParser.KB, 0);
-};
-
-Simple_idContext.prototype.KEEP = function() {
- return this.getToken(TSqlParser.KEEP, 0);
-};
-
-Simple_idContext.prototype.KEEPFIXED = function() {
- return this.getToken(TSqlParser.KEEPFIXED, 0);
-};
-
-Simple_idContext.prototype.KEY = function() {
- return this.getToken(TSqlParser.KEY, 0);
-};
-
-Simple_idContext.prototype.KEY_SOURCE = function() {
- return this.getToken(TSqlParser.KEY_SOURCE, 0);
-};
-
-Simple_idContext.prototype.KEYS = function() {
- return this.getToken(TSqlParser.KEYS, 0);
-};
-
-Simple_idContext.prototype.KEYSET = function() {
- return this.getToken(TSqlParser.KEYSET, 0);
-};
-
-Simple_idContext.prototype.LAG = function() {
- return this.getToken(TSqlParser.LAG, 0);
-};
-
-Simple_idContext.prototype.LAST = function() {
- return this.getToken(TSqlParser.LAST, 0);
-};
-
-Simple_idContext.prototype.LAST_VALUE = function() {
- return this.getToken(TSqlParser.LAST_VALUE, 0);
-};
-
-Simple_idContext.prototype.LEAD = function() {
- return this.getToken(TSqlParser.LEAD, 0);
-};
-
-Simple_idContext.prototype.LEVEL = function() {
- return this.getToken(TSqlParser.LEVEL, 0);
-};
-
-Simple_idContext.prototype.LIST = function() {
- return this.getToken(TSqlParser.LIST, 0);
-};
-
-Simple_idContext.prototype.LISTENER = function() {
- return this.getToken(TSqlParser.LISTENER, 0);
-};
-
-Simple_idContext.prototype.LISTENER_URL = function() {
- return this.getToken(TSqlParser.LISTENER_URL, 0);
-};
-
-Simple_idContext.prototype.LOB_COMPACTION = function() {
- return this.getToken(TSqlParser.LOB_COMPACTION, 0);
-};
-
-Simple_idContext.prototype.LOCAL = function() {
- return this.getToken(TSqlParser.LOCAL, 0);
-};
-
-Simple_idContext.prototype.LOCATION = function() {
- return this.getToken(TSqlParser.LOCATION, 0);
-};
-
-Simple_idContext.prototype.LOCK = function() {
- return this.getToken(TSqlParser.LOCK, 0);
-};
-
-Simple_idContext.prototype.LOCK_ESCALATION = function() {
- return this.getToken(TSqlParser.LOCK_ESCALATION, 0);
-};
-
-Simple_idContext.prototype.LOGIN = function() {
- return this.getToken(TSqlParser.LOGIN, 0);
-};
-
-Simple_idContext.prototype.LOOP = function() {
- return this.getToken(TSqlParser.LOOP, 0);
-};
-
-Simple_idContext.prototype.LOW = function() {
- return this.getToken(TSqlParser.LOW, 0);
-};
-
-Simple_idContext.prototype.MANUAL = function() {
- return this.getToken(TSqlParser.MANUAL, 0);
-};
-
-Simple_idContext.prototype.MARK = function() {
- return this.getToken(TSqlParser.MARK, 0);
-};
-
-Simple_idContext.prototype.MASTER = function() {
- return this.getToken(TSqlParser.MASTER, 0);
-};
-
-Simple_idContext.prototype.MATERIALIZED = function() {
- return this.getToken(TSqlParser.MATERIALIZED, 0);
-};
-
-Simple_idContext.prototype.MAX = function() {
- return this.getToken(TSqlParser.MAX, 0);
-};
-
-Simple_idContext.prototype.MAX_CPU_PERCENT = function() {
- return this.getToken(TSqlParser.MAX_CPU_PERCENT, 0);
-};
-
-Simple_idContext.prototype.MAX_DOP = function() {
- return this.getToken(TSqlParser.MAX_DOP, 0);
-};
-
-Simple_idContext.prototype.MAX_FILES = function() {
- return this.getToken(TSqlParser.MAX_FILES, 0);
-};
-
-Simple_idContext.prototype.MAX_IOPS_PER_VOLUME = function() {
- return this.getToken(TSqlParser.MAX_IOPS_PER_VOLUME, 0);
-};
-
-Simple_idContext.prototype.MAX_MEMORY = function() {
- return this.getToken(TSqlParser.MAX_MEMORY, 0);
-};
-
-Simple_idContext.prototype.MAX_MEMORY_PERCENT = function() {
- return this.getToken(TSqlParser.MAX_MEMORY_PERCENT, 0);
-};
-
-Simple_idContext.prototype.MAX_PROCESSES = function() {
- return this.getToken(TSqlParser.MAX_PROCESSES, 0);
-};
-
-Simple_idContext.prototype.MAX_QUEUE_READERS = function() {
- return this.getToken(TSqlParser.MAX_QUEUE_READERS, 0);
-};
-
-Simple_idContext.prototype.MAX_ROLLOVER_FILES = function() {
- return this.getToken(TSqlParser.MAX_ROLLOVER_FILES, 0);
-};
-
-Simple_idContext.prototype.MAXDOP = function() {
- return this.getToken(TSqlParser.MAXDOP, 0);
-};
-
-Simple_idContext.prototype.MAXRECURSION = function() {
- return this.getToken(TSqlParser.MAXRECURSION, 0);
-};
-
-Simple_idContext.prototype.MAXSIZE = function() {
- return this.getToken(TSqlParser.MAXSIZE, 0);
-};
-
-Simple_idContext.prototype.MB = function() {
- return this.getToken(TSqlParser.MB, 0);
-};
-
-Simple_idContext.prototype.MEDIUM = function() {
- return this.getToken(TSqlParser.MEDIUM, 0);
-};
-
-Simple_idContext.prototype.MEMORY_OPTIMIZED_DATA = function() {
- return this.getToken(TSqlParser.MEMORY_OPTIMIZED_DATA, 0);
-};
-
-Simple_idContext.prototype.MESSAGE = function() {
- return this.getToken(TSqlParser.MESSAGE, 0);
-};
-
-Simple_idContext.prototype.MIN = function() {
- return this.getToken(TSqlParser.MIN, 0);
-};
-
-Simple_idContext.prototype.MIN_ACTIVE_ROWVERSION = function() {
- return this.getToken(TSqlParser.MIN_ACTIVE_ROWVERSION, 0);
-};
-
-Simple_idContext.prototype.MIN_CPU_PERCENT = function() {
- return this.getToken(TSqlParser.MIN_CPU_PERCENT, 0);
-};
-
-Simple_idContext.prototype.MIN_IOPS_PER_VOLUME = function() {
- return this.getToken(TSqlParser.MIN_IOPS_PER_VOLUME, 0);
-};
-
-Simple_idContext.prototype.MIN_MEMORY_PERCENT = function() {
- return this.getToken(TSqlParser.MIN_MEMORY_PERCENT, 0);
-};
-
-Simple_idContext.prototype.MINUTES = function() {
- return this.getToken(TSqlParser.MINUTES, 0);
-};
-
-Simple_idContext.prototype.MIRROR_ADDRESS = function() {
- return this.getToken(TSqlParser.MIRROR_ADDRESS, 0);
-};
-
-Simple_idContext.prototype.MIXED_PAGE_ALLOCATION = function() {
- return this.getToken(TSqlParser.MIXED_PAGE_ALLOCATION, 0);
-};
-
-Simple_idContext.prototype.MODE = function() {
- return this.getToken(TSqlParser.MODE, 0);
-};
-
-Simple_idContext.prototype.MODIFY = function() {
- return this.getToken(TSqlParser.MODIFY, 0);
-};
-
-Simple_idContext.prototype.MOVE = function() {
- return this.getToken(TSqlParser.MOVE, 0);
-};
-
-Simple_idContext.prototype.MULTI_USER = function() {
- return this.getToken(TSqlParser.MULTI_USER, 0);
-};
-
-Simple_idContext.prototype.NAME = function() {
- return this.getToken(TSqlParser.NAME, 0);
-};
-
-Simple_idContext.prototype.NESTED_TRIGGERS = function() {
- return this.getToken(TSqlParser.NESTED_TRIGGERS, 0);
-};
-
-Simple_idContext.prototype.NEW_ACCOUNT = function() {
- return this.getToken(TSqlParser.NEW_ACCOUNT, 0);
-};
-
-Simple_idContext.prototype.NEW_BROKER = function() {
- return this.getToken(TSqlParser.NEW_BROKER, 0);
-};
-
-Simple_idContext.prototype.NEW_PASSWORD = function() {
- return this.getToken(TSqlParser.NEW_PASSWORD, 0);
-};
-
-Simple_idContext.prototype.NEXT = function() {
- return this.getToken(TSqlParser.NEXT, 0);
-};
-
-Simple_idContext.prototype.NO = function() {
- return this.getToken(TSqlParser.NO, 0);
-};
-
-Simple_idContext.prototype.NO_TRUNCATE = function() {
- return this.getToken(TSqlParser.NO_TRUNCATE, 0);
-};
-
-Simple_idContext.prototype.NO_WAIT = function() {
- return this.getToken(TSqlParser.NO_WAIT, 0);
-};
-
-Simple_idContext.prototype.NOCOUNT = function() {
- return this.getToken(TSqlParser.NOCOUNT, 0);
-};
-
-Simple_idContext.prototype.NODES = function() {
- return this.getToken(TSqlParser.NODES, 0);
-};
-
-Simple_idContext.prototype.NOEXPAND = function() {
- return this.getToken(TSqlParser.NOEXPAND, 0);
-};
-
-Simple_idContext.prototype.NON_TRANSACTED_ACCESS = function() {
- return this.getToken(TSqlParser.NON_TRANSACTED_ACCESS, 0);
-};
-
-Simple_idContext.prototype.NORECOMPUTE = function() {
- return this.getToken(TSqlParser.NORECOMPUTE, 0);
-};
-
-Simple_idContext.prototype.NORECOVERY = function() {
- return this.getToken(TSqlParser.NORECOVERY, 0);
-};
-
-Simple_idContext.prototype.NOWAIT = function() {
- return this.getToken(TSqlParser.NOWAIT, 0);
-};
-
-Simple_idContext.prototype.NTILE = function() {
- return this.getToken(TSqlParser.NTILE, 0);
-};
-
-Simple_idContext.prototype.NUMANODE = function() {
- return this.getToken(TSqlParser.NUMANODE, 0);
-};
-
-Simple_idContext.prototype.NUMBER = function() {
- return this.getToken(TSqlParser.NUMBER, 0);
-};
-
-Simple_idContext.prototype.NUMERIC_ROUNDABORT = function() {
- return this.getToken(TSqlParser.NUMERIC_ROUNDABORT, 0);
-};
-
-Simple_idContext.prototype.OBJECT = function() {
- return this.getToken(TSqlParser.OBJECT, 0);
-};
-
-Simple_idContext.prototype.OFFLINE = function() {
- return this.getToken(TSqlParser.OFFLINE, 0);
-};
-
-Simple_idContext.prototype.OFFSET = function() {
- return this.getToken(TSqlParser.OFFSET, 0);
-};
-
-Simple_idContext.prototype.OFFSETS = function() {
- return this.getToken(TSqlParser.OFFSETS, 0);
-};
-
-Simple_idContext.prototype.OLD_ACCOUNT = function() {
- return this.getToken(TSqlParser.OLD_ACCOUNT, 0);
-};
-
-Simple_idContext.prototype.ONLINE = function() {
- return this.getToken(TSqlParser.ONLINE, 0);
-};
-
-Simple_idContext.prototype.ONLY = function() {
- return this.getToken(TSqlParser.ONLY, 0);
-};
-
-Simple_idContext.prototype.OPEN_EXISTING = function() {
- return this.getToken(TSqlParser.OPEN_EXISTING, 0);
-};
-
-Simple_idContext.prototype.OPTIMISTIC = function() {
- return this.getToken(TSqlParser.OPTIMISTIC, 0);
-};
-
-Simple_idContext.prototype.OPTIMIZE = function() {
- return this.getToken(TSqlParser.OPTIMIZE, 0);
-};
-
-Simple_idContext.prototype.OUT = function() {
- return this.getToken(TSqlParser.OUT, 0);
-};
-
-Simple_idContext.prototype.OUTPUT = function() {
- return this.getToken(TSqlParser.OUTPUT, 0);
-};
-
-Simple_idContext.prototype.OWNER = function() {
- return this.getToken(TSqlParser.OWNER, 0);
-};
-
-Simple_idContext.prototype.PAGE = function() {
- return this.getToken(TSqlParser.PAGE, 0);
-};
-
-Simple_idContext.prototype.PAGE_VERIFY = function() {
- return this.getToken(TSqlParser.PAGE_VERIFY, 0);
-};
-
-Simple_idContext.prototype.PARAMETERIZATION = function() {
- return this.getToken(TSqlParser.PARAMETERIZATION, 0);
-};
-
-Simple_idContext.prototype.PARTITION = function() {
- return this.getToken(TSqlParser.PARTITION, 0);
-};
-
-Simple_idContext.prototype.PARTITIONS = function() {
- return this.getToken(TSqlParser.PARTITIONS, 0);
-};
-
-Simple_idContext.prototype.PARTNER = function() {
- return this.getToken(TSqlParser.PARTNER, 0);
-};
-
-Simple_idContext.prototype.PATH = function() {
- return this.getToken(TSqlParser.PATH, 0);
-};
-
-Simple_idContext.prototype.POISON_MESSAGE_HANDLING = function() {
- return this.getToken(TSqlParser.POISON_MESSAGE_HANDLING, 0);
-};
-
-Simple_idContext.prototype.POOL = function() {
- return this.getToken(TSqlParser.POOL, 0);
-};
-
-Simple_idContext.prototype.PORT = function() {
- return this.getToken(TSqlParser.PORT, 0);
-};
-
-Simple_idContext.prototype.PRECEDING = function() {
- return this.getToken(TSqlParser.PRECEDING, 0);
-};
-
-Simple_idContext.prototype.PRIMARY_ROLE = function() {
- return this.getToken(TSqlParser.PRIMARY_ROLE, 0);
-};
-
-Simple_idContext.prototype.PRIOR = function() {
- return this.getToken(TSqlParser.PRIOR, 0);
-};
-
-Simple_idContext.prototype.PRIORITY = function() {
- return this.getToken(TSqlParser.PRIORITY, 0);
-};
-
-Simple_idContext.prototype.PRIORITY_LEVEL = function() {
- return this.getToken(TSqlParser.PRIORITY_LEVEL, 0);
-};
-
-Simple_idContext.prototype.PRIVATE = function() {
- return this.getToken(TSqlParser.PRIVATE, 0);
-};
-
-Simple_idContext.prototype.PRIVATE_KEY = function() {
- return this.getToken(TSqlParser.PRIVATE_KEY, 0);
-};
-
-Simple_idContext.prototype.PRIVILEGES = function() {
- return this.getToken(TSqlParser.PRIVILEGES, 0);
-};
-
-Simple_idContext.prototype.PROCEDURE_NAME = function() {
- return this.getToken(TSqlParser.PROCEDURE_NAME, 0);
-};
-
-Simple_idContext.prototype.PROPERTY = function() {
- return this.getToken(TSqlParser.PROPERTY, 0);
-};
-
-Simple_idContext.prototype.PROVIDER = function() {
- return this.getToken(TSqlParser.PROVIDER, 0);
-};
-
-Simple_idContext.prototype.PROVIDER_KEY_NAME = function() {
- return this.getToken(TSqlParser.PROVIDER_KEY_NAME, 0);
-};
-
-Simple_idContext.prototype.PUBLIC = function() {
- return this.getToken(TSqlParser.PUBLIC, 0);
-};
-
-Simple_idContext.prototype.QUERY = function() {
- return this.getToken(TSqlParser.QUERY, 0);
-};
-
-Simple_idContext.prototype.QUEUE = function() {
- return this.getToken(TSqlParser.QUEUE, 0);
-};
-
-Simple_idContext.prototype.QUEUE_DELAY = function() {
- return this.getToken(TSqlParser.QUEUE_DELAY, 0);
-};
-
-Simple_idContext.prototype.QUOTED_IDENTIFIER = function() {
- return this.getToken(TSqlParser.QUOTED_IDENTIFIER, 0);
-};
-
-Simple_idContext.prototype.R = function() {
- return this.getToken(TSqlParser.R, 0);
-};
-
-Simple_idContext.prototype.RANGE = function() {
- return this.getToken(TSqlParser.RANGE, 0);
-};
-
-Simple_idContext.prototype.RANK = function() {
- return this.getToken(TSqlParser.RANK, 0);
-};
-
-Simple_idContext.prototype.RAW = function() {
- return this.getToken(TSqlParser.RAW, 0);
-};
-
-Simple_idContext.prototype.RC2 = function() {
- return this.getToken(TSqlParser.RC2, 0);
-};
-
-Simple_idContext.prototype.RC4 = function() {
- return this.getToken(TSqlParser.RC4, 0);
-};
-
-Simple_idContext.prototype.RC4_128 = function() {
- return this.getToken(TSqlParser.RC4_128, 0);
-};
-
-Simple_idContext.prototype.READ_COMMITTED_SNAPSHOT = function() {
- return this.getToken(TSqlParser.READ_COMMITTED_SNAPSHOT, 0);
-};
-
-Simple_idContext.prototype.READ_ONLY = function() {
- return this.getToken(TSqlParser.READ_ONLY, 0);
-};
-
-Simple_idContext.prototype.READ_ONLY_ROUTING_LIST = function() {
- return this.getToken(TSqlParser.READ_ONLY_ROUTING_LIST, 0);
-};
-
-Simple_idContext.prototype.READ_WRITE = function() {
- return this.getToken(TSqlParser.READ_WRITE, 0);
-};
-
-Simple_idContext.prototype.READONLY = function() {
- return this.getToken(TSqlParser.READONLY, 0);
-};
-
-Simple_idContext.prototype.REBUILD = function() {
- return this.getToken(TSqlParser.REBUILD, 0);
-};
-
-Simple_idContext.prototype.RECEIVE = function() {
- return this.getToken(TSqlParser.RECEIVE, 0);
-};
-
-Simple_idContext.prototype.RECOMPILE = function() {
- return this.getToken(TSqlParser.RECOMPILE, 0);
-};
-
-Simple_idContext.prototype.RECOVERY = function() {
- return this.getToken(TSqlParser.RECOVERY, 0);
-};
-
-Simple_idContext.prototype.RECURSIVE_TRIGGERS = function() {
- return this.getToken(TSqlParser.RECURSIVE_TRIGGERS, 0);
-};
-
-Simple_idContext.prototype.RELATIVE = function() {
- return this.getToken(TSqlParser.RELATIVE, 0);
-};
-
-Simple_idContext.prototype.REMOTE = function() {
- return this.getToken(TSqlParser.REMOTE, 0);
-};
-
-Simple_idContext.prototype.REMOTE_SERVICE_NAME = function() {
- return this.getToken(TSqlParser.REMOTE_SERVICE_NAME, 0);
-};
-
-Simple_idContext.prototype.REMOVE = function() {
- return this.getToken(TSqlParser.REMOVE, 0);
-};
-
-Simple_idContext.prototype.REORGANIZE = function() {
- return this.getToken(TSqlParser.REORGANIZE, 0);
-};
-
-Simple_idContext.prototype.REPEATABLE = function() {
- return this.getToken(TSqlParser.REPEATABLE, 0);
-};
-
-Simple_idContext.prototype.REPLICA = function() {
- return this.getToken(TSqlParser.REPLICA, 0);
-};
-
-Simple_idContext.prototype.REQUEST_MAX_CPU_TIME_SEC = function() {
- return this.getToken(TSqlParser.REQUEST_MAX_CPU_TIME_SEC, 0);
-};
-
-Simple_idContext.prototype.REQUEST_MAX_MEMORY_GRANT_PERCENT = function() {
- return this.getToken(TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT, 0);
-};
-
-Simple_idContext.prototype.REQUEST_MEMORY_GRANT_TIMEOUT_SEC = function() {
- return this.getToken(TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC, 0);
-};
-
-Simple_idContext.prototype.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT = function() {
- return this.getToken(TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT, 0);
-};
-
-Simple_idContext.prototype.RESERVE_DISK_SPACE = function() {
- return this.getToken(TSqlParser.RESERVE_DISK_SPACE, 0);
-};
-
-Simple_idContext.prototype.RESOURCE = function() {
- return this.getToken(TSqlParser.RESOURCE, 0);
-};
-
-Simple_idContext.prototype.RESOURCE_MANAGER_LOCATION = function() {
- return this.getToken(TSqlParser.RESOURCE_MANAGER_LOCATION, 0);
-};
-
-Simple_idContext.prototype.RESTRICTED_USER = function() {
- return this.getToken(TSqlParser.RESTRICTED_USER, 0);
-};
-
-Simple_idContext.prototype.RETENTION = function() {
- return this.getToken(TSqlParser.RETENTION, 0);
-};
-
-Simple_idContext.prototype.RETURN = function() {
- return this.getToken(TSqlParser.RETURN, 0);
-};
-
-Simple_idContext.prototype.RETURNS = function() {
- return this.getToken(TSqlParser.RETURNS, 0);
-};
-
-Simple_idContext.prototype.ROBUST = function() {
- return this.getToken(TSqlParser.ROBUST, 0);
-};
-
-Simple_idContext.prototype.ROOT = function() {
- return this.getToken(TSqlParser.ROOT, 0);
-};
-
-Simple_idContext.prototype.ROUTE = function() {
- return this.getToken(TSqlParser.ROUTE, 0);
-};
-
-Simple_idContext.prototype.ROW = function() {
- return this.getToken(TSqlParser.ROW, 0);
-};
-
-Simple_idContext.prototype.ROW_NUMBER = function() {
- return this.getToken(TSqlParser.ROW_NUMBER, 0);
-};
-
-Simple_idContext.prototype.ROWCOUNT = function() {
- return this.getToken(TSqlParser.ROWCOUNT, 0);
-};
-
-Simple_idContext.prototype.ROWGUID = function() {
- return this.getToken(TSqlParser.ROWGUID, 0);
-};
-
-Simple_idContext.prototype.ROWS = function() {
- return this.getToken(TSqlParser.ROWS, 0);
-};
-
-Simple_idContext.prototype.SAFETY = function() {
- return this.getToken(TSqlParser.SAFETY, 0);
-};
-
-Simple_idContext.prototype.SAMPLE = function() {
- return this.getToken(TSqlParser.SAMPLE, 0);
-};
-
-Simple_idContext.prototype.SCHEMABINDING = function() {
- return this.getToken(TSqlParser.SCHEMABINDING, 0);
-};
-
-Simple_idContext.prototype.SCOPED = function() {
- return this.getToken(TSqlParser.SCOPED, 0);
-};
-
-Simple_idContext.prototype.SCROLL = function() {
- return this.getToken(TSqlParser.SCROLL, 0);
-};
-
-Simple_idContext.prototype.SCROLL_LOCKS = function() {
- return this.getToken(TSqlParser.SCROLL_LOCKS, 0);
-};
-
-Simple_idContext.prototype.SEARCH = function() {
- return this.getToken(TSqlParser.SEARCH, 0);
-};
-
-Simple_idContext.prototype.SECONDARY = function() {
- return this.getToken(TSqlParser.SECONDARY, 0);
-};
-
-Simple_idContext.prototype.SECONDARY_ONLY = function() {
- return this.getToken(TSqlParser.SECONDARY_ONLY, 0);
-};
-
-Simple_idContext.prototype.SECONDARY_ROLE = function() {
- return this.getToken(TSqlParser.SECONDARY_ROLE, 0);
-};
-
-Simple_idContext.prototype.SECONDS = function() {
- return this.getToken(TSqlParser.SECONDS, 0);
-};
-
-Simple_idContext.prototype.SECRET = function() {
- return this.getToken(TSqlParser.SECRET, 0);
-};
-
-Simple_idContext.prototype.SECURITY = function() {
- return this.getToken(TSqlParser.SECURITY, 0);
-};
-
-Simple_idContext.prototype.SECURITY_LOG = function() {
- return this.getToken(TSqlParser.SECURITY_LOG, 0);
-};
-
-Simple_idContext.prototype.SEEDING_MODE = function() {
- return this.getToken(TSqlParser.SEEDING_MODE, 0);
-};
-
-Simple_idContext.prototype.SELF = function() {
- return this.getToken(TSqlParser.SELF, 0);
-};
-
-Simple_idContext.prototype.SEMI_SENSITIVE = function() {
- return this.getToken(TSqlParser.SEMI_SENSITIVE, 0);
-};
-
-Simple_idContext.prototype.SEND = function() {
- return this.getToken(TSqlParser.SEND, 0);
-};
-
-Simple_idContext.prototype.SENT = function() {
- return this.getToken(TSqlParser.SENT, 0);
-};
-
-Simple_idContext.prototype.SEQUENCE = function() {
- return this.getToken(TSqlParser.SEQUENCE, 0);
-};
-
-Simple_idContext.prototype.SERIALIZABLE = function() {
- return this.getToken(TSqlParser.SERIALIZABLE, 0);
-};
-
-Simple_idContext.prototype.SERVER = function() {
- return this.getToken(TSqlParser.SERVER, 0);
-};
-
-Simple_idContext.prototype.SESSION_TIMEOUT = function() {
- return this.getToken(TSqlParser.SESSION_TIMEOUT, 0);
-};
-
-Simple_idContext.prototype.SETERROR = function() {
- return this.getToken(TSqlParser.SETERROR, 0);
-};
-
-Simple_idContext.prototype.SHARE = function() {
- return this.getToken(TSqlParser.SHARE, 0);
-};
-
-Simple_idContext.prototype.SHOWPLAN = function() {
- return this.getToken(TSqlParser.SHOWPLAN, 0);
-};
-
-Simple_idContext.prototype.SID = function() {
- return this.getToken(TSqlParser.SID, 0);
-};
-
-Simple_idContext.prototype.SIGNATURE = function() {
- return this.getToken(TSqlParser.SIGNATURE, 0);
-};
-
-Simple_idContext.prototype.SIMPLE = function() {
- return this.getToken(TSqlParser.SIMPLE, 0);
-};
-
-Simple_idContext.prototype.SINGLE_USER = function() {
- return this.getToken(TSqlParser.SINGLE_USER, 0);
-};
-
-Simple_idContext.prototype.SIZE = function() {
- return this.getToken(TSqlParser.SIZE, 0);
-};
-
-Simple_idContext.prototype.SMALLINT = function() {
- return this.getToken(TSqlParser.SMALLINT, 0);
-};
-
-Simple_idContext.prototype.SNAPSHOT = function() {
- return this.getToken(TSqlParser.SNAPSHOT, 0);
-};
-
-Simple_idContext.prototype.SOURCE = function() {
- return this.getToken(TSqlParser.SOURCE, 0);
-};
-
-Simple_idContext.prototype.SPATIAL_WINDOW_MAX_CELLS = function() {
- return this.getToken(TSqlParser.SPATIAL_WINDOW_MAX_CELLS, 0);
-};
-
-Simple_idContext.prototype.SPLIT = function() {
- return this.getToken(TSqlParser.SPLIT, 0);
-};
-
-Simple_idContext.prototype.STANDBY = function() {
- return this.getToken(TSqlParser.STANDBY, 0);
-};
-
-Simple_idContext.prototype.START = function() {
- return this.getToken(TSqlParser.START, 0);
-};
-
-Simple_idContext.prototype.START_DATE = function() {
- return this.getToken(TSqlParser.START_DATE, 0);
-};
-
-Simple_idContext.prototype.STATE = function() {
- return this.getToken(TSqlParser.STATE, 0);
-};
-
-Simple_idContext.prototype.STATIC = function() {
- return this.getToken(TSqlParser.STATIC, 0);
-};
-
-Simple_idContext.prototype.STATS_STREAM = function() {
- return this.getToken(TSqlParser.STATS_STREAM, 0);
-};
-
-Simple_idContext.prototype.STATUS = function() {
- return this.getToken(TSqlParser.STATUS, 0);
-};
-
-Simple_idContext.prototype.STDEV = function() {
- return this.getToken(TSqlParser.STDEV, 0);
-};
-
-Simple_idContext.prototype.STDEVP = function() {
- return this.getToken(TSqlParser.STDEVP, 0);
-};
-
-Simple_idContext.prototype.STOPLIST = function() {
- return this.getToken(TSqlParser.STOPLIST, 0);
-};
-
-Simple_idContext.prototype.STRING_AGG = function() {
- return this.getToken(TSqlParser.STRING_AGG, 0);
-};
-
-Simple_idContext.prototype.STUFF = function() {
- return this.getToken(TSqlParser.STUFF, 0);
-};
-
-Simple_idContext.prototype.SUBJECT = function() {
- return this.getToken(TSqlParser.SUBJECT, 0);
-};
-
-Simple_idContext.prototype.SUM = function() {
- return this.getToken(TSqlParser.SUM, 0);
-};
-
-Simple_idContext.prototype.SUSPEND = function() {
- return this.getToken(TSqlParser.SUSPEND, 0);
-};
-
-Simple_idContext.prototype.SYMMETRIC = function() {
- return this.getToken(TSqlParser.SYMMETRIC, 0);
-};
-
-Simple_idContext.prototype.SYNCHRONOUS_COMMIT = function() {
- return this.getToken(TSqlParser.SYNCHRONOUS_COMMIT, 0);
-};
-
-Simple_idContext.prototype.SYNONYM = function() {
- return this.getToken(TSqlParser.SYNONYM, 0);
-};
-
-Simple_idContext.prototype.SYSTEM = function() {
- return this.getToken(TSqlParser.SYSTEM, 0);
-};
-
-Simple_idContext.prototype.TAKE = function() {
- return this.getToken(TSqlParser.TAKE, 0);
-};
-
-Simple_idContext.prototype.TARGET = function() {
- return this.getToken(TSqlParser.TARGET, 0);
-};
-
-Simple_idContext.prototype.TARGET_RECOVERY_TIME = function() {
- return this.getToken(TSqlParser.TARGET_RECOVERY_TIME, 0);
-};
-
-Simple_idContext.prototype.TB = function() {
- return this.getToken(TSqlParser.TB, 0);
-};
-
-Simple_idContext.prototype.TEXTIMAGE_ON = function() {
- return this.getToken(TSqlParser.TEXTIMAGE_ON, 0);
-};
-
-Simple_idContext.prototype.THROW = function() {
- return this.getToken(TSqlParser.THROW, 0);
-};
-
-Simple_idContext.prototype.TIES = function() {
- return this.getToken(TSqlParser.TIES, 0);
-};
-
-Simple_idContext.prototype.TIME = function() {
- return this.getToken(TSqlParser.TIME, 0);
-};
-
-Simple_idContext.prototype.TIMEOUT = function() {
- return this.getToken(TSqlParser.TIMEOUT, 0);
-};
-
-Simple_idContext.prototype.TIMER = function() {
- return this.getToken(TSqlParser.TIMER, 0);
-};
-
-Simple_idContext.prototype.TINYINT = function() {
- return this.getToken(TSqlParser.TINYINT, 0);
-};
-
-Simple_idContext.prototype.TORN_PAGE_DETECTION = function() {
- return this.getToken(TSqlParser.TORN_PAGE_DETECTION, 0);
-};
-
-Simple_idContext.prototype.TRANSFORM_NOISE_WORDS = function() {
- return this.getToken(TSqlParser.TRANSFORM_NOISE_WORDS, 0);
-};
-
-Simple_idContext.prototype.TRIPLE_DES = function() {
- return this.getToken(TSqlParser.TRIPLE_DES, 0);
-};
-
-Simple_idContext.prototype.TRIPLE_DES_3KEY = function() {
- return this.getToken(TSqlParser.TRIPLE_DES_3KEY, 0);
-};
-
-Simple_idContext.prototype.TRUSTWORTHY = function() {
- return this.getToken(TSqlParser.TRUSTWORTHY, 0);
-};
-
-Simple_idContext.prototype.TRY = function() {
- return this.getToken(TSqlParser.TRY, 0);
-};
-
-Simple_idContext.prototype.TSQL = function() {
- return this.getToken(TSqlParser.TSQL, 0);
-};
-
-Simple_idContext.prototype.TWO_DIGIT_YEAR_CUTOFF = function() {
- return this.getToken(TSqlParser.TWO_DIGIT_YEAR_CUTOFF, 0);
-};
-
-Simple_idContext.prototype.TYPE = function() {
- return this.getToken(TSqlParser.TYPE, 0);
-};
-
-Simple_idContext.prototype.TYPE_WARNING = function() {
- return this.getToken(TSqlParser.TYPE_WARNING, 0);
-};
-
-Simple_idContext.prototype.UNBOUNDED = function() {
- return this.getToken(TSqlParser.UNBOUNDED, 0);
-};
-
-Simple_idContext.prototype.UNCOMMITTED = function() {
- return this.getToken(TSqlParser.UNCOMMITTED, 0);
-};
-
-Simple_idContext.prototype.UNKNOWN = function() {
- return this.getToken(TSqlParser.UNKNOWN, 0);
-};
-
-Simple_idContext.prototype.UNLIMITED = function() {
- return this.getToken(TSqlParser.UNLIMITED, 0);
-};
-
-Simple_idContext.prototype.USING = function() {
- return this.getToken(TSqlParser.USING, 0);
-};
-
-Simple_idContext.prototype.VALID_XML = function() {
- return this.getToken(TSqlParser.VALID_XML, 0);
-};
-
-Simple_idContext.prototype.VALIDATION = function() {
- return this.getToken(TSqlParser.VALIDATION, 0);
-};
-
-Simple_idContext.prototype.VALUE = function() {
- return this.getToken(TSqlParser.VALUE, 0);
-};
-
-Simple_idContext.prototype.VAR = function() {
- return this.getToken(TSqlParser.VAR, 0);
-};
-
-Simple_idContext.prototype.VARP = function() {
- return this.getToken(TSqlParser.VARP, 0);
-};
-
-Simple_idContext.prototype.VIEW_METADATA = function() {
- return this.getToken(TSqlParser.VIEW_METADATA, 0);
-};
-
-Simple_idContext.prototype.VIEWS = function() {
- return this.getToken(TSqlParser.VIEWS, 0);
-};
-
-Simple_idContext.prototype.WAIT = function() {
- return this.getToken(TSqlParser.WAIT, 0);
-};
-
-Simple_idContext.prototype.WELL_FORMED_XML = function() {
- return this.getToken(TSqlParser.WELL_FORMED_XML, 0);
-};
-
-Simple_idContext.prototype.WORK = function() {
- return this.getToken(TSqlParser.WORK, 0);
-};
-
-Simple_idContext.prototype.WORKLOAD = function() {
- return this.getToken(TSqlParser.WORKLOAD, 0);
-};
-
-Simple_idContext.prototype.XML = function() {
- return this.getToken(TSqlParser.XML, 0);
-};
-
-Simple_idContext.prototype.XMLNAMESPACES = function() {
- return this.getToken(TSqlParser.XMLNAMESPACES, 0);
-};
-
-Simple_idContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterSimple_id(this);
- }
-};
-
-Simple_idContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitSimple_id(this);
- }
-};
-
-Simple_idContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitSimple_id(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Simple_idContext = Simple_idContext;
-
-TSqlParser.prototype.simple_id = function() {
-
- var localctx = new Simple_idContext(this, this._ctx, this.state);
- this.enterRule(localctx, 966, TSqlParser.RULE_simple_id);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 10732;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.CALLED || _la===TSqlParser.DATA_COMPRESSION || ((((_la - 112)) & ~0x1f) == 0 && ((1 << (_la - 112)) & ((1 << (TSqlParser.EVENTDATA - 112)) | (1 << (TSqlParser.FILENAME - 112)) | (1 << (TSqlParser.FILLFACTOR - 112)) | (1 << (TSqlParser.FORCESEEK - 112)))) !== 0) || ((((_la - 158)) & ~0x1f) == 0 && ((1 << (_la - 158)) & ((1 << (TSqlParser.INIT - 158)) | (1 << (TSqlParser.KEY - 158)) | (1 << (TSqlParser.MASTER - 158)) | (1 << (TSqlParser.MAX_MEMORY - 158)))) !== 0) || _la===TSqlParser.OFFSETS || _la===TSqlParser.PAGE || ((((_la - 259)) & ~0x1f) == 0 && ((1 << (_la - 259)) & ((1 << (TSqlParser.PUBLIC - 259)) | (1 << (TSqlParser.R - 259)) | (1 << (TSqlParser.RAW - 259)) | (1 << (TSqlParser.RETURN - 259)) | (1 << (TSqlParser.RETURNS - 259)) | (1 << (TSqlParser.ROWCOUNT - 259)))) !== 0) || ((((_la - 295)) & ~0x1f) == 0 && ((1 << (_la - 295)) & ((1 << (TSqlParser.SAFETY - 295)) | (1 << (TSqlParser.SERVER - 295)) | (1 << (TSqlParser.SID - 295)) | (1 << (TSqlParser.SOURCE - 295)) | (1 << (TSqlParser.SPLIT - 295)))) !== 0) || ((((_la - 327)) & ~0x1f) == 0 && ((1 << (_la - 327)) & ((1 << (TSqlParser.STATE - 327)) | (1 << (TSqlParser.START - 327)) | (1 << (TSqlParser.TARGET - 327)))) !== 0) || ((((_la - 380)) & ~0x1f) == 0 && ((1 << (_la - 380)) & ((1 << (TSqlParser.ABSOLUTE - 380)) | (1 << (TSqlParser.ACCENT_SENSITIVITY - 380)) | (1 << (TSqlParser.ACTION - 380)) | (1 << (TSqlParser.ACTIVATION - 380)) | (1 << (TSqlParser.ACTIVE - 380)) | (1 << (TSqlParser.ADDRESS - 380)) | (1 << (TSqlParser.AES_128 - 380)) | (1 << (TSqlParser.AES_192 - 380)) | (1 << (TSqlParser.AES_256 - 380)) | (1 << (TSqlParser.AFFINITY - 380)) | (1 << (TSqlParser.AFTER - 380)) | (1 << (TSqlParser.AGGREGATE - 380)) | (1 << (TSqlParser.ALGORITHM - 380)) | (1 << (TSqlParser.ALLOW_ENCRYPTED_VALUE_MODIFICATIONS - 380)) | (1 << (TSqlParser.ALLOW_SNAPSHOT_ISOLATION - 380)) | (1 << (TSqlParser.ALLOWED - 380)) | (1 << (TSqlParser.ANSI_NULL_DEFAULT - 380)) | (1 << (TSqlParser.ANSI_NULLS - 380)) | (1 << (TSqlParser.ANSI_PADDING - 380)) | (1 << (TSqlParser.ANSI_WARNINGS - 380)) | (1 << (TSqlParser.APPLICATION_LOG - 380)) | (1 << (TSqlParser.APPLY - 380)) | (1 << (TSqlParser.ARITHABORT - 380)) | (1 << (TSqlParser.ASSEMBLY - 380)) | (1 << (TSqlParser.AUDIT - 380)) | (1 << (TSqlParser.AUDIT_GUID - 380)) | (1 << (TSqlParser.AUTO - 380)) | (1 << (TSqlParser.AUTO_CLEANUP - 380)) | (1 << (TSqlParser.AUTO_CLOSE - 380)) | (1 << (TSqlParser.AUTO_CREATE_STATISTICS - 380)) | (1 << (TSqlParser.AUTO_SHRINK - 380)) | (1 << (TSqlParser.AUTO_UPDATE_STATISTICS - 380)))) !== 0) || ((((_la - 412)) & ~0x1f) == 0 && ((1 << (_la - 412)) & ((1 << (TSqlParser.AUTO_UPDATE_STATISTICS_ASYNC - 412)) | (1 << (TSqlParser.AVAILABILITY - 412)) | (1 << (TSqlParser.AVG - 412)) | (1 << (TSqlParser.BACKUP_PRIORITY - 412)) | (1 << (TSqlParser.BEGIN_DIALOG - 412)) | (1 << (TSqlParser.BIGINT - 412)) | (1 << (TSqlParser.BINARY_BASE64 - 412)) | (1 << (TSqlParser.BINARY_CHECKSUM - 412)) | (1 << (TSqlParser.BINDING - 412)) | (1 << (TSqlParser.BLOB_STORAGE - 412)) | (1 << (TSqlParser.BROKER - 412)) | (1 << (TSqlParser.BROKER_INSTANCE - 412)) | (1 << (TSqlParser.BULK_LOGGED - 412)) | (1 << (TSqlParser.CALLER - 412)) | (1 << (TSqlParser.CAP_CPU_PERCENT - 412)) | (1 << (TSqlParser.CAST - 412)) | (1 << (TSqlParser.CATALOG - 412)) | (1 << (TSqlParser.CATCH - 412)) | (1 << (TSqlParser.CHANGE_RETENTION - 412)) | (1 << (TSqlParser.CHANGE_TRACKING - 412)) | (1 << (TSqlParser.CHECKSUM - 412)) | (1 << (TSqlParser.CHECKSUM_AGG - 412)) | (1 << (TSqlParser.CLEANUP - 412)) | (1 << (TSqlParser.COLLECTION - 412)) | (1 << (TSqlParser.COLUMN_MASTER_KEY - 412)) | (1 << (TSqlParser.COMMITTED - 412)) | (1 << (TSqlParser.COMPATIBILITY_LEVEL - 412)) | (1 << (TSqlParser.CONCAT - 412)) | (1 << (TSqlParser.CONCAT_NULL_YIELDS_NULL - 412)) | (1 << (TSqlParser.CONTENT - 412)) | (1 << (TSqlParser.CONTROL - 412)) | (1 << (TSqlParser.COOKIE - 412)))) !== 0) || ((((_la - 444)) & ~0x1f) == 0 && ((1 << (_la - 444)) & ((1 << (TSqlParser.COUNT - 444)) | (1 << (TSqlParser.COUNT_BIG - 444)) | (1 << (TSqlParser.COUNTER - 444)) | (1 << (TSqlParser.CPU - 444)) | (1 << (TSqlParser.CREATE_NEW - 444)) | (1 << (TSqlParser.CREATION_DISPOSITION - 444)) | (1 << (TSqlParser.CREDENTIAL - 444)) | (1 << (TSqlParser.CRYPTOGRAPHIC - 444)) | (1 << (TSqlParser.CURSOR_CLOSE_ON_COMMIT - 444)) | (1 << (TSqlParser.CURSOR_DEFAULT - 444)) | (1 << (TSqlParser.DATA - 444)) | (1 << (TSqlParser.DATE_CORRELATION_OPTIMIZATION - 444)) | (1 << (TSqlParser.DATEADD - 444)) | (1 << (TSqlParser.DATEDIFF - 444)) | (1 << (TSqlParser.DATENAME - 444)) | (1 << (TSqlParser.DATEPART - 444)) | (1 << (TSqlParser.DAYS - 444)) | (1 << (TSqlParser.DB_CHAINING - 444)) | (1 << (TSqlParser.DB_FAILOVER - 444)) | (1 << (TSqlParser.DECRYPTION - 444)) | (1 << (TSqlParser.DEFAULT_DOUBLE_QUOTE - 444)) | (1 << (TSqlParser.DEFAULT_FULLTEXT_LANGUAGE - 444)) | (1 << (TSqlParser.DEFAULT_LANGUAGE - 444)) | (1 << (TSqlParser.DELAY - 444)) | (1 << (TSqlParser.DELAYED_DURABILITY - 444)) | (1 << (TSqlParser.DELETED - 444)) | (1 << (TSqlParser.DENSE_RANK - 444)) | (1 << (TSqlParser.DEPENDENTS - 444)) | (1 << (TSqlParser.DES - 444)) | (1 << (TSqlParser.DESCRIPTION - 444)) | (1 << (TSqlParser.DESX - 444)) | (1 << (TSqlParser.DHCP - 444)))) !== 0) || ((((_la - 476)) & ~0x1f) == 0 && ((1 << (_la - 476)) & ((1 << (TSqlParser.DIALOG - 476)) | (1 << (TSqlParser.DIRECTORY_NAME - 476)) | (1 << (TSqlParser.DISABLE - 476)) | (1 << (TSqlParser.DISABLE_BROKER - 476)) | (1 << (TSqlParser.DISABLED - 476)) | (1 << (TSqlParser.DISK_DRIVE - 476)) | (1 << (TSqlParser.DOCUMENT - 476)) | (1 << (TSqlParser.DYNAMIC - 476)) | (1 << (TSqlParser.EMERGENCY - 476)) | (1 << (TSqlParser.EMPTY - 476)) | (1 << (TSqlParser.ENABLE - 476)) | (1 << (TSqlParser.ENABLE_BROKER - 476)) | (1 << (TSqlParser.ENCRYPTED_VALUE - 476)) | (1 << (TSqlParser.ENCRYPTION - 476)) | (1 << (TSqlParser.ENDPOINT_URL - 476)) | (1 << (TSqlParser.ERROR_BROKER_CONVERSATIONS - 476)) | (1 << (TSqlParser.EXCLUSIVE - 476)) | (1 << (TSqlParser.EXECUTABLE - 476)) | (1 << (TSqlParser.EXIST - 476)) | (1 << (TSqlParser.EXPAND - 476)) | (1 << (TSqlParser.EXPIRY_DATE - 476)) | (1 << (TSqlParser.EXPLICIT - 476)) | (1 << (TSqlParser.FAIL_OPERATION - 476)) | (1 << (TSqlParser.FAILOVER_MODE - 476)) | (1 << (TSqlParser.FAILURE - 476)) | (1 << (TSqlParser.FAILURE_CONDITION_LEVEL - 476)) | (1 << (TSqlParser.FAST - 476)) | (1 << (TSqlParser.FAST_FORWARD - 476)) | (1 << (TSqlParser.FILEGROUP - 476)) | (1 << (TSqlParser.FILEGROWTH - 476)) | (1 << (TSqlParser.FILEPATH - 476)))) !== 0) || ((((_la - 508)) & ~0x1f) == 0 && ((1 << (_la - 508)) & ((1 << (TSqlParser.FILESTREAM - 508)) | (1 << (TSqlParser.FILTER - 508)) | (1 << (TSqlParser.FIRST - 508)) | (1 << (TSqlParser.FIRST_VALUE - 508)) | (1 << (TSqlParser.FOLLOWING - 508)) | (1 << (TSqlParser.FORCE - 508)) | (1 << (TSqlParser.FORCE_FAILOVER_ALLOW_DATA_LOSS - 508)) | (1 << (TSqlParser.FORCED - 508)) | (1 << (TSqlParser.FORMAT - 508)) | (1 << (TSqlParser.FORWARD_ONLY - 508)) | (1 << (TSqlParser.FULLSCAN - 508)) | (1 << (TSqlParser.FULLTEXT - 508)) | (1 << (TSqlParser.GB - 508)) | (1 << (TSqlParser.GETDATE - 508)) | (1 << (TSqlParser.GETUTCDATE - 508)) | (1 << (TSqlParser.GLOBAL - 508)) | (1 << (TSqlParser.GO - 508)) | (1 << (TSqlParser.GROUP_MAX_REQUESTS - 508)) | (1 << (TSqlParser.GROUPING - 508)) | (1 << (TSqlParser.GROUPING_ID - 508)) | (1 << (TSqlParser.HADR - 508)) | (1 << (TSqlParser.HASH - 508)) | (1 << (TSqlParser.HEALTH_CHECK_TIMEOUT - 508)) | (1 << (TSqlParser.HIGH - 508)) | (1 << (TSqlParser.HONOR_BROKER_PRIORITY - 508)) | (1 << (TSqlParser.HOURS - 508)) | (1 << (TSqlParser.IDENTITY_VALUE - 508)) | (1 << (TSqlParser.IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX - 508)) | (1 << (TSqlParser.IMMEDIATE - 508)) | (1 << (TSqlParser.IMPERSONATE - 508)) | (1 << (TSqlParser.IMPORTANCE - 508)))) !== 0) || ((((_la - 540)) & ~0x1f) == 0 && ((1 << (_la - 540)) & ((1 << (TSqlParser.INCREMENTAL - 540)) | (1 << (TSqlParser.INITIATOR - 540)) | (1 << (TSqlParser.INPUT - 540)) | (1 << (TSqlParser.INSENSITIVE - 540)) | (1 << (TSqlParser.INSERTED - 540)) | (1 << (TSqlParser.INT - 540)) | (1 << (TSqlParser.IP - 540)) | (1 << (TSqlParser.ISOLATION - 540)) | (1 << (TSqlParser.KB - 540)) | (1 << (TSqlParser.KEEP - 540)) | (1 << (TSqlParser.KEEPFIXED - 540)) | (1 << (TSqlParser.KEY_SOURCE - 540)) | (1 << (TSqlParser.KEYS - 540)) | (1 << (TSqlParser.KEYSET - 540)) | (1 << (TSqlParser.LAG - 540)) | (1 << (TSqlParser.LAST - 540)) | (1 << (TSqlParser.LAST_VALUE - 540)) | (1 << (TSqlParser.LEAD - 540)) | (1 << (TSqlParser.LEVEL - 540)) | (1 << (TSqlParser.LIST - 540)) | (1 << (TSqlParser.LISTENER - 540)) | (1 << (TSqlParser.LISTENER_URL - 540)) | (1 << (TSqlParser.LOB_COMPACTION - 540)) | (1 << (TSqlParser.LOCAL - 540)) | (1 << (TSqlParser.LOCATION - 540)) | (1 << (TSqlParser.LOCK - 540)) | (1 << (TSqlParser.LOCK_ESCALATION - 540)) | (1 << (TSqlParser.LOGIN - 540)) | (1 << (TSqlParser.LOOP - 540)) | (1 << (TSqlParser.LOW - 540)))) !== 0) || ((((_la - 572)) & ~0x1f) == 0 && ((1 << (_la - 572)) & ((1 << (TSqlParser.MANUAL - 572)) | (1 << (TSqlParser.MARK - 572)) | (1 << (TSqlParser.MATERIALIZED - 572)) | (1 << (TSqlParser.MAX - 572)) | (1 << (TSqlParser.MAX_CPU_PERCENT - 572)) | (1 << (TSqlParser.MAX_DOP - 572)) | (1 << (TSqlParser.MAX_FILES - 572)) | (1 << (TSqlParser.MAX_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MAX_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MAX_PROCESSES - 572)) | (1 << (TSqlParser.MAX_QUEUE_READERS - 572)) | (1 << (TSqlParser.MAX_ROLLOVER_FILES - 572)) | (1 << (TSqlParser.MAXDOP - 572)) | (1 << (TSqlParser.MAXRECURSION - 572)) | (1 << (TSqlParser.MAXSIZE - 572)) | (1 << (TSqlParser.MB - 572)) | (1 << (TSqlParser.MEDIUM - 572)) | (1 << (TSqlParser.MEMORY_OPTIMIZED_DATA - 572)) | (1 << (TSqlParser.MESSAGE - 572)) | (1 << (TSqlParser.MIN - 572)) | (1 << (TSqlParser.MIN_ACTIVE_ROWVERSION - 572)) | (1 << (TSqlParser.MIN_CPU_PERCENT - 572)) | (1 << (TSqlParser.MIN_IOPS_PER_VOLUME - 572)) | (1 << (TSqlParser.MIN_MEMORY_PERCENT - 572)) | (1 << (TSqlParser.MINUTES - 572)) | (1 << (TSqlParser.MIRROR_ADDRESS - 572)) | (1 << (TSqlParser.MIXED_PAGE_ALLOCATION - 572)) | (1 << (TSqlParser.MODE - 572)) | (1 << (TSqlParser.MODIFY - 572)) | (1 << (TSqlParser.MOVE - 572)) | (1 << (TSqlParser.MULTI_USER - 572)) | (1 << (TSqlParser.NAME - 572)))) !== 0) || ((((_la - 604)) & ~0x1f) == 0 && ((1 << (_la - 604)) & ((1 << (TSqlParser.NESTED_TRIGGERS - 604)) | (1 << (TSqlParser.NEW_ACCOUNT - 604)) | (1 << (TSqlParser.NEW_BROKER - 604)) | (1 << (TSqlParser.NEW_PASSWORD - 604)) | (1 << (TSqlParser.NEXT - 604)) | (1 << (TSqlParser.NO - 604)) | (1 << (TSqlParser.NO_TRUNCATE - 604)) | (1 << (TSqlParser.NO_WAIT - 604)) | (1 << (TSqlParser.NOCOUNT - 604)) | (1 << (TSqlParser.NODES - 604)) | (1 << (TSqlParser.NOEXPAND - 604)) | (1 << (TSqlParser.NON_TRANSACTED_ACCESS - 604)) | (1 << (TSqlParser.NORECOMPUTE - 604)) | (1 << (TSqlParser.NORECOVERY - 604)) | (1 << (TSqlParser.NOWAIT - 604)) | (1 << (TSqlParser.NTILE - 604)) | (1 << (TSqlParser.NUMANODE - 604)) | (1 << (TSqlParser.NUMBER - 604)) | (1 << (TSqlParser.NUMERIC_ROUNDABORT - 604)) | (1 << (TSqlParser.OBJECT - 604)) | (1 << (TSqlParser.OFFLINE - 604)) | (1 << (TSqlParser.OFFSET - 604)) | (1 << (TSqlParser.OLD_ACCOUNT - 604)) | (1 << (TSqlParser.ONLINE - 604)) | (1 << (TSqlParser.ONLY - 604)) | (1 << (TSqlParser.OPEN_EXISTING - 604)) | (1 << (TSqlParser.OPTIMISTIC - 604)) | (1 << (TSqlParser.OPTIMIZE - 604)) | (1 << (TSqlParser.OUT - 604)) | (1 << (TSqlParser.OUTPUT - 604)) | (1 << (TSqlParser.OWNER - 604)))) !== 0) || ((((_la - 636)) & ~0x1f) == 0 && ((1 << (_la - 636)) & ((1 << (TSqlParser.PAGE_VERIFY - 636)) | (1 << (TSqlParser.PARAMETERIZATION - 636)) | (1 << (TSqlParser.PARTITION - 636)) | (1 << (TSqlParser.PARTITIONS - 636)) | (1 << (TSqlParser.PARTNER - 636)) | (1 << (TSqlParser.PATH - 636)) | (1 << (TSqlParser.POISON_MESSAGE_HANDLING - 636)) | (1 << (TSqlParser.POOL - 636)) | (1 << (TSqlParser.PORT - 636)) | (1 << (TSqlParser.PRECEDING - 636)) | (1 << (TSqlParser.PRIMARY_ROLE - 636)) | (1 << (TSqlParser.PRIOR - 636)) | (1 << (TSqlParser.PRIORITY - 636)) | (1 << (TSqlParser.PRIORITY_LEVEL - 636)) | (1 << (TSqlParser.PRIVATE - 636)) | (1 << (TSqlParser.PRIVATE_KEY - 636)) | (1 << (TSqlParser.PRIVILEGES - 636)) | (1 << (TSqlParser.PROCEDURE_NAME - 636)) | (1 << (TSqlParser.PROPERTY - 636)) | (1 << (TSqlParser.PROVIDER - 636)) | (1 << (TSqlParser.PROVIDER_KEY_NAME - 636)) | (1 << (TSqlParser.QUERY - 636)) | (1 << (TSqlParser.QUEUE - 636)) | (1 << (TSqlParser.QUEUE_DELAY - 636)) | (1 << (TSqlParser.QUOTED_IDENTIFIER - 636)) | (1 << (TSqlParser.RANGE - 636)) | (1 << (TSqlParser.RANK - 636)) | (1 << (TSqlParser.RC2 - 636)) | (1 << (TSqlParser.RC4 - 636)) | (1 << (TSqlParser.RC4_128 - 636)) | (1 << (TSqlParser.READ_COMMITTED_SNAPSHOT - 636)) | (1 << (TSqlParser.READ_ONLY - 636)))) !== 0) || ((((_la - 668)) & ~0x1f) == 0 && ((1 << (_la - 668)) & ((1 << (TSqlParser.READ_ONLY_ROUTING_LIST - 668)) | (1 << (TSqlParser.READ_WRITE - 668)) | (1 << (TSqlParser.READONLY - 668)) | (1 << (TSqlParser.REBUILD - 668)) | (1 << (TSqlParser.RECEIVE - 668)) | (1 << (TSqlParser.RECOMPILE - 668)) | (1 << (TSqlParser.RECOVERY - 668)) | (1 << (TSqlParser.RECURSIVE_TRIGGERS - 668)) | (1 << (TSqlParser.RELATIVE - 668)) | (1 << (TSqlParser.REMOTE - 668)) | (1 << (TSqlParser.REMOTE_SERVICE_NAME - 668)) | (1 << (TSqlParser.REMOVE - 668)) | (1 << (TSqlParser.REORGANIZE - 668)) | (1 << (TSqlParser.REPEATABLE - 668)) | (1 << (TSqlParser.REPLICA - 668)) | (1 << (TSqlParser.REQUEST_MAX_CPU_TIME_SEC - 668)) | (1 << (TSqlParser.REQUEST_MAX_MEMORY_GRANT_PERCENT - 668)) | (1 << (TSqlParser.REQUEST_MEMORY_GRANT_TIMEOUT_SEC - 668)) | (1 << (TSqlParser.REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT - 668)) | (1 << (TSqlParser.RESERVE_DISK_SPACE - 668)) | (1 << (TSqlParser.RESOURCE - 668)) | (1 << (TSqlParser.RESOURCE_MANAGER_LOCATION - 668)) | (1 << (TSqlParser.RESTRICTED_USER - 668)) | (1 << (TSqlParser.RETENTION - 668)) | (1 << (TSqlParser.ROBUST - 668)) | (1 << (TSqlParser.ROOT - 668)) | (1 << (TSqlParser.ROUTE - 668)) | (1 << (TSqlParser.ROW - 668)) | (1 << (TSqlParser.ROW_NUMBER - 668)) | (1 << (TSqlParser.ROWGUID - 668)) | (1 << (TSqlParser.ROWS - 668)) | (1 << (TSqlParser.SAMPLE - 668)))) !== 0) || ((((_la - 700)) & ~0x1f) == 0 && ((1 << (_la - 700)) & ((1 << (TSqlParser.SCHEMABINDING - 700)) | (1 << (TSqlParser.SCOPED - 700)) | (1 << (TSqlParser.SCROLL - 700)) | (1 << (TSqlParser.SCROLL_LOCKS - 700)) | (1 << (TSqlParser.SEARCH - 700)) | (1 << (TSqlParser.SECONDARY - 700)) | (1 << (TSqlParser.SECONDARY_ONLY - 700)) | (1 << (TSqlParser.SECONDARY_ROLE - 700)) | (1 << (TSqlParser.SECONDS - 700)) | (1 << (TSqlParser.SECRET - 700)) | (1 << (TSqlParser.SECURITY - 700)) | (1 << (TSqlParser.SECURITY_LOG - 700)) | (1 << (TSqlParser.SEEDING_MODE - 700)) | (1 << (TSqlParser.SELF - 700)) | (1 << (TSqlParser.SEMI_SENSITIVE - 700)) | (1 << (TSqlParser.SEND - 700)) | (1 << (TSqlParser.SENT - 700)) | (1 << (TSqlParser.SEQUENCE - 700)) | (1 << (TSqlParser.SERIALIZABLE - 700)) | (1 << (TSqlParser.SESSION_TIMEOUT - 700)) | (1 << (TSqlParser.SETERROR - 700)) | (1 << (TSqlParser.SHARE - 700)) | (1 << (TSqlParser.SHOWPLAN - 700)) | (1 << (TSqlParser.SIGNATURE - 700)) | (1 << (TSqlParser.SIMPLE - 700)) | (1 << (TSqlParser.SINGLE_USER - 700)) | (1 << (TSqlParser.SIZE - 700)) | (1 << (TSqlParser.SMALLINT - 700)) | (1 << (TSqlParser.SNAPSHOT - 700)) | (1 << (TSqlParser.SPATIAL_WINDOW_MAX_CELLS - 700)) | (1 << (TSqlParser.STANDBY - 700)) | (1 << (TSqlParser.START_DATE - 700)))) !== 0) || ((((_la - 732)) & ~0x1f) == 0 && ((1 << (_la - 732)) & ((1 << (TSqlParser.STATIC - 732)) | (1 << (TSqlParser.STATS_STREAM - 732)) | (1 << (TSqlParser.STATUS - 732)) | (1 << (TSqlParser.STDEV - 732)) | (1 << (TSqlParser.STDEVP - 732)) | (1 << (TSqlParser.STOPLIST - 732)) | (1 << (TSqlParser.STRING_AGG - 732)) | (1 << (TSqlParser.STUFF - 732)) | (1 << (TSqlParser.SUBJECT - 732)) | (1 << (TSqlParser.SUM - 732)) | (1 << (TSqlParser.SUSPEND - 732)) | (1 << (TSqlParser.SYMMETRIC - 732)) | (1 << (TSqlParser.SYNCHRONOUS_COMMIT - 732)) | (1 << (TSqlParser.SYNONYM - 732)) | (1 << (TSqlParser.SYSTEM - 732)) | (1 << (TSqlParser.TAKE - 732)) | (1 << (TSqlParser.TARGET_RECOVERY_TIME - 732)) | (1 << (TSqlParser.TB - 732)) | (1 << (TSqlParser.TEXTIMAGE_ON - 732)) | (1 << (TSqlParser.THROW - 732)) | (1 << (TSqlParser.TIES - 732)) | (1 << (TSqlParser.TIME - 732)) | (1 << (TSqlParser.TIMEOUT - 732)) | (1 << (TSqlParser.TIMER - 732)) | (1 << (TSqlParser.TINYINT - 732)) | (1 << (TSqlParser.TORN_PAGE_DETECTION - 732)) | (1 << (TSqlParser.TRANSFORM_NOISE_WORDS - 732)) | (1 << (TSqlParser.TRIPLE_DES - 732)) | (1 << (TSqlParser.TRIPLE_DES_3KEY - 732)) | (1 << (TSqlParser.TRUSTWORTHY - 732)))) !== 0) || ((((_la - 764)) & ~0x1f) == 0 && ((1 << (_la - 764)) & ((1 << (TSqlParser.TRY - 764)) | (1 << (TSqlParser.TSQL - 764)) | (1 << (TSqlParser.TWO_DIGIT_YEAR_CUTOFF - 764)) | (1 << (TSqlParser.TYPE - 764)) | (1 << (TSqlParser.TYPE_WARNING - 764)) | (1 << (TSqlParser.UNBOUNDED - 764)) | (1 << (TSqlParser.UNCOMMITTED - 764)) | (1 << (TSqlParser.UNKNOWN - 764)) | (1 << (TSqlParser.UNLIMITED - 764)) | (1 << (TSqlParser.USING - 764)) | (1 << (TSqlParser.VALID_XML - 764)) | (1 << (TSqlParser.VALIDATION - 764)) | (1 << (TSqlParser.VALUE - 764)) | (1 << (TSqlParser.VAR - 764)) | (1 << (TSqlParser.VARP - 764)) | (1 << (TSqlParser.VIEW_METADATA - 764)) | (1 << (TSqlParser.VIEWS - 764)) | (1 << (TSqlParser.WAIT - 764)) | (1 << (TSqlParser.WELL_FORMED_XML - 764)) | (1 << (TSqlParser.WORK - 764)) | (1 << (TSqlParser.WORKLOAD - 764)) | (1 << (TSqlParser.XML - 764)) | (1 << (TSqlParser.XMLNAMESPACES - 764)))) !== 0) || _la===TSqlParser.ID)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Comparison_operatorContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_comparison_operator;
- return this;
-}
-
-Comparison_operatorContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Comparison_operatorContext.prototype.constructor = Comparison_operatorContext;
-
-Comparison_operatorContext.prototype.EQUAL = function() {
- return this.getToken(TSqlParser.EQUAL, 0);
-};
-
-Comparison_operatorContext.prototype.GREATER = function() {
- return this.getToken(TSqlParser.GREATER, 0);
-};
-
-Comparison_operatorContext.prototype.LESS = function() {
- return this.getToken(TSqlParser.LESS, 0);
-};
-
-Comparison_operatorContext.prototype.EXCLAMATION = function() {
- return this.getToken(TSqlParser.EXCLAMATION, 0);
-};
-
-Comparison_operatorContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterComparison_operator(this);
- }
-};
-
-Comparison_operatorContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitComparison_operator(this);
- }
-};
-
-Comparison_operatorContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitComparison_operator(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Comparison_operatorContext = Comparison_operatorContext;
-
-TSqlParser.prototype.comparison_operator = function() {
-
- var localctx = new Comparison_operatorContext(this, this._ctx, this.state);
- this.enterRule(localctx, 968, TSqlParser.RULE_comparison_operator);
- try {
- this.state = 10749;
- this._errHandler.sync(this);
- var la_ = this._interp.adaptivePredict(this._input,1521,this._ctx);
- switch(la_) {
- case 1:
- this.enterOuterAlt(localctx, 1);
- this.state = 10734;
- this.match(TSqlParser.EQUAL);
- break;
-
- case 2:
- this.enterOuterAlt(localctx, 2);
- this.state = 10735;
- this.match(TSqlParser.GREATER);
- break;
-
- case 3:
- this.enterOuterAlt(localctx, 3);
- this.state = 10736;
- this.match(TSqlParser.LESS);
- break;
-
- case 4:
- this.enterOuterAlt(localctx, 4);
- this.state = 10737;
- this.match(TSqlParser.LESS);
- this.state = 10738;
- this.match(TSqlParser.EQUAL);
- break;
-
- case 5:
- this.enterOuterAlt(localctx, 5);
- this.state = 10739;
- this.match(TSqlParser.GREATER);
- this.state = 10740;
- this.match(TSqlParser.EQUAL);
- break;
-
- case 6:
- this.enterOuterAlt(localctx, 6);
- this.state = 10741;
- this.match(TSqlParser.LESS);
- this.state = 10742;
- this.match(TSqlParser.GREATER);
- break;
-
- case 7:
- this.enterOuterAlt(localctx, 7);
- this.state = 10743;
- this.match(TSqlParser.EXCLAMATION);
- this.state = 10744;
- this.match(TSqlParser.EQUAL);
- break;
-
- case 8:
- this.enterOuterAlt(localctx, 8);
- this.state = 10745;
- this.match(TSqlParser.EXCLAMATION);
- this.state = 10746;
- this.match(TSqlParser.GREATER);
- break;
-
- case 9:
- this.enterOuterAlt(localctx, 9);
- this.state = 10747;
- this.match(TSqlParser.EXCLAMATION);
- this.state = 10748;
- this.match(TSqlParser.LESS);
- break;
-
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function Assignment_operatorContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_assignment_operator;
- return this;
-}
-
-Assignment_operatorContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-Assignment_operatorContext.prototype.constructor = Assignment_operatorContext;
-
-Assignment_operatorContext.prototype.PLUS_ASSIGN = function() {
- return this.getToken(TSqlParser.PLUS_ASSIGN, 0);
-};
-
-Assignment_operatorContext.prototype.MINUS_ASSIGN = function() {
- return this.getToken(TSqlParser.MINUS_ASSIGN, 0);
-};
-
-Assignment_operatorContext.prototype.MULT_ASSIGN = function() {
- return this.getToken(TSqlParser.MULT_ASSIGN, 0);
-};
-
-Assignment_operatorContext.prototype.DIV_ASSIGN = function() {
- return this.getToken(TSqlParser.DIV_ASSIGN, 0);
-};
-
-Assignment_operatorContext.prototype.MOD_ASSIGN = function() {
- return this.getToken(TSqlParser.MOD_ASSIGN, 0);
-};
-
-Assignment_operatorContext.prototype.AND_ASSIGN = function() {
- return this.getToken(TSqlParser.AND_ASSIGN, 0);
-};
-
-Assignment_operatorContext.prototype.XOR_ASSIGN = function() {
- return this.getToken(TSqlParser.XOR_ASSIGN, 0);
-};
-
-Assignment_operatorContext.prototype.OR_ASSIGN = function() {
- return this.getToken(TSqlParser.OR_ASSIGN, 0);
-};
-
-Assignment_operatorContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterAssignment_operator(this);
- }
-};
-
-Assignment_operatorContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitAssignment_operator(this);
- }
-};
-
-Assignment_operatorContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitAssignment_operator(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.Assignment_operatorContext = Assignment_operatorContext;
-
-TSqlParser.prototype.assignment_operator = function() {
-
- var localctx = new Assignment_operatorContext(this, this._ctx, this.state);
- this.enterRule(localctx, 970, TSqlParser.RULE_assignment_operator);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 10751;
- _la = this._input.LA(1);
- if(!(((((_la - 812)) & ~0x1f) == 0 && ((1 << (_la - 812)) & ((1 << (TSqlParser.PLUS_ASSIGN - 812)) | (1 << (TSqlParser.MINUS_ASSIGN - 812)) | (1 << (TSqlParser.MULT_ASSIGN - 812)) | (1 << (TSqlParser.DIV_ASSIGN - 812)) | (1 << (TSqlParser.MOD_ASSIGN - 812)) | (1 << (TSqlParser.AND_ASSIGN - 812)) | (1 << (TSqlParser.XOR_ASSIGN - 812)) | (1 << (TSqlParser.OR_ASSIGN - 812)))) !== 0))) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-function File_sizeContext(parser, parent, invokingState) {
- if(parent===undefined) {
- parent = null;
- }
- if(invokingState===undefined || invokingState===null) {
- invokingState = -1;
- }
- antlr4.ParserRuleContext.call(this, parent, invokingState);
- this.parser = parser;
- this.ruleIndex = TSqlParser.RULE_file_size;
- return this;
-}
-
-File_sizeContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
-File_sizeContext.prototype.constructor = File_sizeContext;
-
-File_sizeContext.prototype.DECIMAL = function() {
- return this.getToken(TSqlParser.DECIMAL, 0);
-};
-
-File_sizeContext.prototype.KB = function() {
- return this.getToken(TSqlParser.KB, 0);
-};
-
-File_sizeContext.prototype.MB = function() {
- return this.getToken(TSqlParser.MB, 0);
-};
-
-File_sizeContext.prototype.GB = function() {
- return this.getToken(TSqlParser.GB, 0);
-};
-
-File_sizeContext.prototype.TB = function() {
- return this.getToken(TSqlParser.TB, 0);
-};
-
-File_sizeContext.prototype.MODULE = function() {
- return this.getToken(TSqlParser.MODULE, 0);
-};
-
-File_sizeContext.prototype.enterRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.enterFile_size(this);
- }
-};
-
-File_sizeContext.prototype.exitRule = function(listener) {
- if(listener instanceof TSqlParserListener ) {
- listener.exitFile_size(this);
- }
-};
-
-File_sizeContext.prototype.accept = function(visitor) {
- if ( visitor instanceof TSqlParserVisitor ) {
- return visitor.visitFile_size(this);
- } else {
- return visitor.visitChildren(this);
- }
-};
-
-
-
-
-TSqlParser.File_sizeContext = File_sizeContext;
-
-TSqlParser.prototype.file_size = function() {
-
- var localctx = new File_sizeContext(this, this._ctx, this.state);
- this.enterRule(localctx, 972, TSqlParser.RULE_file_size);
- var _la = 0; // Token type
- try {
- this.enterOuterAlt(localctx, 1);
- this.state = 10753;
- this.match(TSqlParser.DECIMAL);
- this.state = 10755;
- this._errHandler.sync(this);
- _la = this._input.LA(1);
- if(_la===TSqlParser.GB || _la===TSqlParser.KB || _la===TSqlParser.MB || _la===TSqlParser.TB || _la===TSqlParser.MODULE) {
- this.state = 10754;
- _la = this._input.LA(1);
- if(!(_la===TSqlParser.GB || _la===TSqlParser.KB || _la===TSqlParser.MB || _la===TSqlParser.TB || _la===TSqlParser.MODULE)) {
- this._errHandler.recoverInline(this);
- }
- else {
- this._errHandler.reportMatch(this);
- this.consume();
- }
- }
-
- } catch (re) {
- if(re instanceof antlr4.error.RecognitionException) {
- localctx.exception = re;
- this._errHandler.reportError(this, re);
- this._errHandler.recover(this, re);
- } else {
- throw re;
- }
- } finally {
- this.exitRule();
- }
- return localctx;
-};
-
-
-TSqlParser.prototype.sempred = function(localctx, ruleIndex, predIndex) {
- switch(ruleIndex) {
- case 46:
- return this.assembly_option_sempred(localctx, predIndex);
- case 363:
- return this.expression_sempred(localctx, predIndex);
- default:
- throw "No predicate with index:" + ruleIndex;
- }
-};
-
-TSqlParser.prototype.assembly_option_sempred = function(localctx, predIndex) {
- switch(predIndex) {
- case 0:
- return this.precpred(this._ctx, 1);
- default:
- throw "No predicate with index:" + predIndex;
- }
-};
-
-TSqlParser.prototype.expression_sempred = function(localctx, predIndex) {
- switch(predIndex) {
- case 1:
- return this.precpred(this._ctx, 5);
- case 2:
- return this.precpred(this._ctx, 4);
- case 3:
- return this.precpred(this._ctx, 3);
- case 4:
- return this.precpred(this._ctx, 2);
- case 5:
- return this.precpred(this._ctx, 10);
- default:
- throw "No predicate with index:" + predIndex;
- }
-};
-
-
-exports.TSqlParser = TSqlParser;
diff --git a/src/grammar/tsql/parser/TSqlParser.tokens b/src/grammar/tsql/parser/TSqlParser.tokens
deleted file mode 100644
index 5d9475f..0000000
--- a/src/grammar/tsql/parser/TSqlParser.tokens
+++ /dev/null
@@ -1,1657 +0,0 @@
-ABSENT=1
-ADD=2
-AES=3
-ALL=4
-ALLOW_CONNECTIONS=5
-ALLOW_MULTIPLE_EVENT_LOSS=6
-ALLOW_SINGLE_EVENT_LOSS=7
-ALTER=8
-AND=9
-ANONYMOUS=10
-ANY=11
-APPEND=12
-APPLICATION=13
-AS=14
-ASC=15
-ASYMMETRIC=16
-ASYNCHRONOUS_COMMIT=17
-AUTHORIZATION=18
-AUTHENTICATION=19
-AUTOMATED_BACKUP_PREFERENCE=20
-AUTOMATIC=21
-AVAILABILITY_MODE=22
-BACKSLASH=23
-BACKUP=24
-BEFORE=25
-BEGIN=26
-BETWEEN=27
-BLOCK=28
-BLOCKSIZE=29
-BLOCKING_HIERARCHY=30
-BREAK=31
-BROWSE=32
-BUFFER=33
-BUFFERCOUNT=34
-BULK=35
-BY=36
-CACHE=37
-CALLED=38
-CASCADE=39
-CASE=40
-CERTIFICATE=41
-CHANGETABLE=42
-CHANGES=43
-CHECK=44
-CHECKPOINT=45
-CHECK_POLICY=46
-CHECK_EXPIRATION=47
-CLASSIFIER_FUNCTION=48
-CLOSE=49
-CLUSTER=50
-CLUSTERED=51
-COALESCE=52
-COLLATE=53
-COLUMN=54
-COMPRESSION=55
-COMMIT=56
-COMPUTE=57
-CONFIGURATION=58
-CONSTRAINT=59
-CONTAINMENT=60
-CONTAINS=61
-CONTAINSTABLE=62
-CONTEXT=63
-CONTINUE=64
-CONTINUE_AFTER_ERROR=65
-CONTRACT=66
-CONTRACT_NAME=67
-CONVERSATION=68
-CONVERT=69
-COPY_ONLY=70
-CREATE=71
-CROSS=72
-CURRENT=73
-CURRENT_DATE=74
-CURRENT_TIME=75
-CURRENT_TIMESTAMP=76
-CURRENT_USER=77
-CURSOR=78
-CYCLE=79
-DATA_COMPRESSION=80
-DATA_SOURCE=81
-DATABASE=82
-DATABASE_MIRRORING=83
-DBCC=84
-DEALLOCATE=85
-DECLARE=86
-DEFAULT=87
-DEFAULT_DATABASE=88
-DEFAULT_SCHEMA=89
-DELETE=90
-DENY=91
-DESC=92
-DIAGNOSTICS=93
-DIFFERENTIAL=94
-DISK=95
-DISTINCT=96
-DISTRIBUTED=97
-DOUBLE=98
-DOUBLE_BACK_SLASH=99
-DOUBLE_FORWARD_SLASH=100
-DROP=101
-DTC_SUPPORT=102
-DUMP=103
-ELSE=104
-ENABLED=105
-END=106
-ENDPOINT=107
-ERRLVL=108
-ESCAPE=109
-ERROR=110
-EVENT=111
-EVENTDATA=112
-EVENT_RETENTION_MODE=113
-EXCEPT=114
-EXECUTABLE_FILE=115
-EXECUTE=116
-EXISTS=117
-EXPIREDATE=118
-EXIT=119
-EXTENSION=120
-EXTERNAL=121
-EXTERNAL_ACCESS=122
-FAILOVER=123
-FAILURECONDITIONLEVEL=124
-FAN_IN=125
-FETCH=126
-FILE=127
-FILENAME=128
-FILLFACTOR=129
-FILE_SNAPSHOT=130
-FOR=131
-FORCESEEK=132
-FORCE_SERVICE_ALLOW_DATA_LOSS=133
-FOREIGN=134
-FREETEXT=135
-FREETEXTTABLE=136
-FROM=137
-FULL=138
-FUNCTION=139
-GET=140
-GOTO=141
-GOVERNOR=142
-GRANT=143
-GROUP=144
-HAVING=145
-HASHED=146
-HEALTHCHECKTIMEOUT=147
-IDENTITY=148
-IDENTITYCOL=149
-IDENTITY_INSERT=150
-IF=151
-IIF=152
-IN=153
-INCLUDE=154
-INCREMENT=155
-INDEX=156
-INFINITE=157
-INIT=158
-INNER=159
-INSERT=160
-INSTEAD=161
-INTERSECT=162
-INTO=163
-IPV4_ADDR=164
-IPV6_ADDR=165
-IS=166
-ISNULL=167
-JOIN=168
-KERBEROS=169
-KEY=170
-KEY_PATH=171
-KEY_STORE_PROVIDER_NAME=172
-KILL=173
-LANGUAGE=174
-LEFT=175
-LIBRARY=176
-LIFETIME=177
-LIKE=178
-LINENO=179
-LINUX=180
-LISTENER_IP=181
-LISTENER_PORT=182
-LOAD=183
-LOCAL_SERVICE_NAME=184
-LOG=185
-MATCHED=186
-MASTER=187
-MAX_MEMORY=188
-MAXTRANSFER=189
-MAXVALUE=190
-MAX_DISPATCH_LATENCY=191
-MAX_EVENT_SIZE=192
-MAX_SIZE=193
-MAX_OUTSTANDING_IO_PER_VOLUME=194
-MEDIADESCRIPTION=195
-MEDIANAME=196
-MEMBER=197
-MEMORY_PARTITION_MODE=198
-MERGE=199
-MESSAGE_FORWARDING=200
-MESSAGE_FORWARD_SIZE=201
-MINVALUE=202
-MIRROR=203
-MUST_CHANGE=204
-NATIONAL=205
-NEGOTIATE=206
-NOCHECK=207
-NOFORMAT=208
-NOINIT=209
-NONCLUSTERED=210
-NONE=211
-NOREWIND=212
-NOSKIP=213
-NOUNLOAD=214
-NO_CHECKSUM=215
-NO_COMPRESSION=216
-NO_EVENT_LOSS=217
-NOT=218
-NOTIFICATION=219
-NTLM=220
-NULL=221
-NULLIF=222
-OF=223
-OFF=224
-OFFSETS=225
-OLD_PASSWORD=226
-ON=227
-ON_FAILURE=228
-OPEN=229
-OPENDATASOURCE=230
-OPENQUERY=231
-OPENROWSET=232
-OPENXML=233
-OPTION=234
-OR=235
-ORDER=236
-OUTER=237
-OVER=238
-PAGE=239
-PARAM_NODE=240
-PARTIAL=241
-PASSWORD=242
-PERCENT=243
-PERMISSION_SET=244
-PER_CPU=245
-PER_DB=246
-PER_NODE=247
-PIVOT=248
-PLAN=249
-PLATFORM=250
-POLICY=251
-PRECISION=252
-PREDICATE=253
-PRIMARY=254
-PRINT=255
-PROC=256
-PROCEDURE=257
-PROCESS=258
-PUBLIC=259
-PYTHON=260
-R=261
-RAISERROR=262
-RAW=263
-READ=264
-READTEXT=265
-READ_WRITE_FILEGROUPS=266
-RECONFIGURE=267
-REFERENCES=268
-REGENERATE=269
-RELATED_CONVERSATION=270
-RELATED_CONVERSATION_GROUP=271
-REPLICATION=272
-REQUIRED=273
-RESET=274
-RESTART=275
-RESTORE=276
-RESTRICT=277
-RESUME=278
-RETAINDAYS=279
-RETURN=280
-RETURNS=281
-REVERT=282
-REVOKE=283
-REWIND=284
-RIGHT=285
-ROLLBACK=286
-ROLE=287
-ROWCOUNT=288
-ROWGUIDCOL=289
-RSA_512=290
-RSA_1024=291
-RSA_2048=292
-RSA_3072=293
-RSA_4096=294
-SAFETY=295
-RULE=296
-SAFE=297
-SAVE=298
-SCHEDULER=299
-SCHEMA=300
-SCHEME=301
-SECURITYAUDIT=302
-SELECT=303
-SEMANTICKEYPHRASETABLE=304
-SEMANTICSIMILARITYDETAILSTABLE=305
-SEMANTICSIMILARITYTABLE=306
-SERVER=307
-SERVICE=308
-SERVICE_BROKER=309
-SERVICE_NAME=310
-SESSION=311
-SESSION_USER=312
-SET=313
-SETUSER=314
-SHUTDOWN=315
-SID=316
-SKIP_KEYWORD=317
-SOFTNUMA=318
-SOME=319
-SOURCE=320
-SPECIFICATION=321
-SPLIT=322
-SQLDUMPERFLAGS=323
-SQLDUMPERPATH=324
-SQLDUMPERTIMEOUT=325
-STATISTICS=326
-STATE=327
-STATS=328
-START=329
-STARTED=330
-STARTUP_STATE=331
-STOP=332
-STOPPED=333
-STOP_ON_ERROR=334
-SUPPORTED=335
-SYSTEM_USER=336
-TABLE=337
-TABLESAMPLE=338
-TAPE=339
-TARGET=340
-TCP=341
-TEXTSIZE=342
-THEN=343
-TO=344
-TOP=345
-TRACK_CAUSALITY=346
-TRAN=347
-TRANSACTION=348
-TRANSFER=349
-TRIGGER=350
-TRUNCATE=351
-TSEQUAL=352
-UNCHECKED=353
-UNION=354
-UNIQUE=355
-UNLOCK=356
-UNPIVOT=357
-UNSAFE=358
-UPDATE=359
-UPDATETEXT=360
-URL=361
-USE=362
-USED=363
-USER=364
-VALUES=365
-VARYING=366
-VERBOSELOGGING=367
-VIEW=368
-VISIBILITY=369
-WAITFOR=370
-WHEN=371
-WHERE=372
-WHILE=373
-WINDOWS=374
-WITH=375
-WITHIN=376
-WITHOUT=377
-WITNESS=378
-WRITETEXT=379
-ABSOLUTE=380
-ACCENT_SENSITIVITY=381
-ACTION=382
-ACTIVATION=383
-ACTIVE=384
-ADDRESS=385
-AES_128=386
-AES_192=387
-AES_256=388
-AFFINITY=389
-AFTER=390
-AGGREGATE=391
-ALGORITHM=392
-ALLOW_ENCRYPTED_VALUE_MODIFICATIONS=393
-ALLOW_SNAPSHOT_ISOLATION=394
-ALLOWED=395
-ANSI_NULL_DEFAULT=396
-ANSI_NULLS=397
-ANSI_PADDING=398
-ANSI_WARNINGS=399
-APPLICATION_LOG=400
-APPLY=401
-ARITHABORT=402
-ASSEMBLY=403
-AUDIT=404
-AUDIT_GUID=405
-AUTO=406
-AUTO_CLEANUP=407
-AUTO_CLOSE=408
-AUTO_CREATE_STATISTICS=409
-AUTO_SHRINK=410
-AUTO_UPDATE_STATISTICS=411
-AUTO_UPDATE_STATISTICS_ASYNC=412
-AVAILABILITY=413
-AVG=414
-BACKUP_PRIORITY=415
-BEGIN_DIALOG=416
-BIGINT=417
-BINARY_BASE64=418
-BINARY_CHECKSUM=419
-BINDING=420
-BLOB_STORAGE=421
-BROKER=422
-BROKER_INSTANCE=423
-BULK_LOGGED=424
-CALLER=425
-CAP_CPU_PERCENT=426
-CAST=427
-CATALOG=428
-CATCH=429
-CHANGE_RETENTION=430
-CHANGE_TRACKING=431
-CHECKSUM=432
-CHECKSUM_AGG=433
-CLEANUP=434
-COLLECTION=435
-COLUMN_MASTER_KEY=436
-COMMITTED=437
-COMPATIBILITY_LEVEL=438
-CONCAT=439
-CONCAT_NULL_YIELDS_NULL=440
-CONTENT=441
-CONTROL=442
-COOKIE=443
-COUNT=444
-COUNT_BIG=445
-COUNTER=446
-CPU=447
-CREATE_NEW=448
-CREATION_DISPOSITION=449
-CREDENTIAL=450
-CRYPTOGRAPHIC=451
-CURSOR_CLOSE_ON_COMMIT=452
-CURSOR_DEFAULT=453
-DATA=454
-DATE_CORRELATION_OPTIMIZATION=455
-DATEADD=456
-DATEDIFF=457
-DATENAME=458
-DATEPART=459
-DAYS=460
-DB_CHAINING=461
-DB_FAILOVER=462
-DECRYPTION=463
-DEFAULT_DOUBLE_QUOTE=464
-DEFAULT_FULLTEXT_LANGUAGE=465
-DEFAULT_LANGUAGE=466
-DELAY=467
-DELAYED_DURABILITY=468
-DELETED=469
-DENSE_RANK=470
-DEPENDENTS=471
-DES=472
-DESCRIPTION=473
-DESX=474
-DHCP=475
-DIALOG=476
-DIRECTORY_NAME=477
-DISABLE=478
-DISABLE_BROKER=479
-DISABLED=480
-DISK_DRIVE=481
-DOCUMENT=482
-DYNAMIC=483
-ELEMENTS=484
-EMERGENCY=485
-EMPTY=486
-ENABLE=487
-ENABLE_BROKER=488
-ENCRYPTED_VALUE=489
-ENCRYPTION=490
-ENDPOINT_URL=491
-ERROR_BROKER_CONVERSATIONS=492
-EXCLUSIVE=493
-EXECUTABLE=494
-EXIST=495
-EXPAND=496
-EXPIRY_DATE=497
-EXPLICIT=498
-FAIL_OPERATION=499
-FAILOVER_MODE=500
-FAILURE=501
-FAILURE_CONDITION_LEVEL=502
-FAST=503
-FAST_FORWARD=504
-FILEGROUP=505
-FILEGROWTH=506
-FILEPATH=507
-FILESTREAM=508
-FILTER=509
-FIRST=510
-FIRST_VALUE=511
-FOLLOWING=512
-FORCE=513
-FORCE_FAILOVER_ALLOW_DATA_LOSS=514
-FORCED=515
-FORMAT=516
-FORWARD_ONLY=517
-FULLSCAN=518
-FULLTEXT=519
-GB=520
-GETDATE=521
-GETUTCDATE=522
-GLOBAL=523
-GO=524
-GROUP_MAX_REQUESTS=525
-GROUPING=526
-GROUPING_ID=527
-HADR=528
-HASH=529
-HEALTH_CHECK_TIMEOUT=530
-HIGH=531
-HONOR_BROKER_PRIORITY=532
-HOURS=533
-IDENTITY_VALUE=534
-IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX=535
-IMMEDIATE=536
-IMPERSONATE=537
-IMPORTANCE=538
-INCLUDE_NULL_VALUES=539
-INCREMENTAL=540
-INITIATOR=541
-INPUT=542
-INSENSITIVE=543
-INSERTED=544
-INT=545
-IP=546
-ISOLATION=547
-JOB=548
-JSON=549
-KB=550
-KEEP=551
-KEEPFIXED=552
-KEY_SOURCE=553
-KEYS=554
-KEYSET=555
-LAG=556
-LAST=557
-LAST_VALUE=558
-LEAD=559
-LEVEL=560
-LIST=561
-LISTENER=562
-LISTENER_URL=563
-LOB_COMPACTION=564
-LOCAL=565
-LOCATION=566
-LOCK=567
-LOCK_ESCALATION=568
-LOGIN=569
-LOOP=570
-LOW=571
-MANUAL=572
-MARK=573
-MATERIALIZED=574
-MAX=575
-MAX_CPU_PERCENT=576
-MAX_DOP=577
-MAX_FILES=578
-MAX_IOPS_PER_VOLUME=579
-MAX_MEMORY_PERCENT=580
-MAX_PROCESSES=581
-MAX_QUEUE_READERS=582
-MAX_ROLLOVER_FILES=583
-MAXDOP=584
-MAXRECURSION=585
-MAXSIZE=586
-MB=587
-MEDIUM=588
-MEMORY_OPTIMIZED_DATA=589
-MESSAGE=590
-MIN=591
-MIN_ACTIVE_ROWVERSION=592
-MIN_CPU_PERCENT=593
-MIN_IOPS_PER_VOLUME=594
-MIN_MEMORY_PERCENT=595
-MINUTES=596
-MIRROR_ADDRESS=597
-MIXED_PAGE_ALLOCATION=598
-MODE=599
-MODIFY=600
-MOVE=601
-MULTI_USER=602
-NAME=603
-NESTED_TRIGGERS=604
-NEW_ACCOUNT=605
-NEW_BROKER=606
-NEW_PASSWORD=607
-NEXT=608
-NO=609
-NO_TRUNCATE=610
-NO_WAIT=611
-NOCOUNT=612
-NODES=613
-NOEXPAND=614
-NON_TRANSACTED_ACCESS=615
-NORECOMPUTE=616
-NORECOVERY=617
-NOWAIT=618
-NTILE=619
-NUMANODE=620
-NUMBER=621
-NUMERIC_ROUNDABORT=622
-OBJECT=623
-OFFLINE=624
-OFFSET=625
-OLD_ACCOUNT=626
-ONLINE=627
-ONLY=628
-OPEN_EXISTING=629
-OPTIMISTIC=630
-OPTIMIZE=631
-OUT=632
-OUTPUT=633
-OVERRIDE=634
-OWNER=635
-PAGE_VERIFY=636
-PARAMETERIZATION=637
-PARTITION=638
-PARTITIONS=639
-PARTNER=640
-PATH=641
-POISON_MESSAGE_HANDLING=642
-POOL=643
-PORT=644
-PRECEDING=645
-PRIMARY_ROLE=646
-PRIOR=647
-PRIORITY=648
-PRIORITY_LEVEL=649
-PRIVATE=650
-PRIVATE_KEY=651
-PRIVILEGES=652
-PROCEDURE_NAME=653
-PROPERTY=654
-PROVIDER=655
-PROVIDER_KEY_NAME=656
-QUERY=657
-QUEUE=658
-QUEUE_DELAY=659
-QUOTED_IDENTIFIER=660
-RANGE=661
-RANK=662
-RC2=663
-RC4=664
-RC4_128=665
-READ_COMMITTED_SNAPSHOT=666
-READ_ONLY=667
-READ_ONLY_ROUTING_LIST=668
-READ_WRITE=669
-READONLY=670
-REBUILD=671
-RECEIVE=672
-RECOMPILE=673
-RECOVERY=674
-RECURSIVE_TRIGGERS=675
-RELATIVE=676
-REMOTE=677
-REMOTE_SERVICE_NAME=678
-REMOVE=679
-REORGANIZE=680
-REPEATABLE=681
-REPLICA=682
-REQUEST_MAX_CPU_TIME_SEC=683
-REQUEST_MAX_MEMORY_GRANT_PERCENT=684
-REQUEST_MEMORY_GRANT_TIMEOUT_SEC=685
-REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT=686
-RESERVE_DISK_SPACE=687
-RESOURCE=688
-RESOURCE_MANAGER_LOCATION=689
-RESTRICTED_USER=690
-RETENTION=691
-ROBUST=692
-ROOT=693
-ROUTE=694
-ROW=695
-ROW_NUMBER=696
-ROWGUID=697
-ROWS=698
-SAMPLE=699
-SCHEMABINDING=700
-SCOPED=701
-SCROLL=702
-SCROLL_LOCKS=703
-SEARCH=704
-SECONDARY=705
-SECONDARY_ONLY=706
-SECONDARY_ROLE=707
-SECONDS=708
-SECRET=709
-SECURITY=710
-SECURITY_LOG=711
-SEEDING_MODE=712
-SELF=713
-SEMI_SENSITIVE=714
-SEND=715
-SENT=716
-SEQUENCE=717
-SERIALIZABLE=718
-SESSION_TIMEOUT=719
-SETERROR=720
-SHARE=721
-SHOWPLAN=722
-SIGNATURE=723
-SIMPLE=724
-SINGLE_USER=725
-SIZE=726
-SMALLINT=727
-SNAPSHOT=728
-SPATIAL_WINDOW_MAX_CELLS=729
-STANDBY=730
-START_DATE=731
-STATIC=732
-STATS_STREAM=733
-STATUS=734
-STATUSONLY=735
-STDEV=736
-STDEVP=737
-STOPLIST=738
-STRING_AGG=739
-STUFF=740
-SUBJECT=741
-SUBSCRIPTION=742
-SUM=743
-SUSPEND=744
-SYMMETRIC=745
-SYNCHRONOUS_COMMIT=746
-SYNONYM=747
-SYSTEM=748
-TAKE=749
-TARGET_RECOVERY_TIME=750
-TB=751
-TEXTIMAGE_ON=752
-THROW=753
-TIES=754
-TIME=755
-TIMEOUT=756
-TIMER=757
-TINYINT=758
-TORN_PAGE_DETECTION=759
-TRANSFORM_NOISE_WORDS=760
-TRIPLE_DES=761
-TRIPLE_DES_3KEY=762
-TRUSTWORTHY=763
-TRY=764
-TSQL=765
-TWO_DIGIT_YEAR_CUTOFF=766
-TYPE=767
-TYPE_WARNING=768
-UNBOUNDED=769
-UNCOMMITTED=770
-UNKNOWN=771
-UNLIMITED=772
-UOW=773
-USING=774
-VALID_XML=775
-VALIDATION=776
-VALUE=777
-VAR=778
-VARP=779
-VIEW_METADATA=780
-VIEWS=781
-WAIT=782
-WELL_FORMED_XML=783
-WITHOUT_ARRAY_WRAPPER=784
-WORK=785
-WORKLOAD=786
-XML=787
-XMLDATA=788
-XMLNAMESPACES=789
-XMLSCHEMA=790
-XSINIL=791
-DOLLAR_ACTION=792
-SPACE=793
-COMMENT=794
-LINE_COMMENT=795
-DOUBLE_QUOTE_ID=796
-SINGLE_QUOTE=797
-SQUARE_BRACKET_ID=798
-LOCAL_ID=799
-DECIMAL=800
-ID=801
-QUOTED_URL=802
-QUOTED_HOST_AND_PORT=803
-STRING=804
-BINARY=805
-FLOAT=806
-REAL=807
-EQUAL=808
-GREATER=809
-LESS=810
-EXCLAMATION=811
-PLUS_ASSIGN=812
-MINUS_ASSIGN=813
-MULT_ASSIGN=814
-DIV_ASSIGN=815
-MOD_ASSIGN=816
-AND_ASSIGN=817
-XOR_ASSIGN=818
-OR_ASSIGN=819
-DOUBLE_BAR=820
-DOT=821
-UNDERLINE=822
-AT=823
-SHARP=824
-DOLLAR=825
-LR_BRACKET=826
-RR_BRACKET=827
-COMMA=828
-SEMI=829
-COLON=830
-STAR=831
-DIVIDE=832
-MODULE=833
-PLUS=834
-MINUS=835
-BIT_NOT=836
-BIT_OR=837
-BIT_AND=838
-BIT_XOR=839
-IPV4_OCTECT=840
-'ABSENT'=1
-'ADD'=2
-'AES'=3
-'ALL'=4
-'ALLOW_CONNECTIONS'=5
-'ALLOW_MULTIPLE_EVENT_LOSS'=6
-'ALLOW_SINGLE_EVENT_LOSS'=7
-'ALTER'=8
-'AND'=9
-'ANONYMOUS'=10
-'ANY'=11
-'APPEND'=12
-'APPLICATION'=13
-'AS'=14
-'ASC'=15
-'ASYMMETRIC'=16
-'ASYNCHRONOUS_COMMIT'=17
-'AUTHORIZATION'=18
-'AUTHENTICATION'=19
-'AUTOMATED_BACKUP_PREFERENCE'=20
-'AUTOMATIC'=21
-'AVAILABILITY_MODE'=22
-'\\'=23
-'BACKUP'=24
-'BEFORE'=25
-'BEGIN'=26
-'BETWEEN'=27
-'BLOCK'=28
-'BLOCKSIZE'=29
-'BLOCKING_HIERARCHY'=30
-'BREAK'=31
-'BROWSE'=32
-'BUFFER'=33
-'BUFFERCOUNT'=34
-'BULK'=35
-'BY'=36
-'CACHE'=37
-'CALLED'=38
-'CASCADE'=39
-'CASE'=40
-'CERTIFICATE'=41
-'CHANGETABLE'=42
-'CHANGES'=43
-'CHECK'=44
-'CHECKPOINT'=45
-'CHECK_POLICY'=46
-'CHECK_EXPIRATION'=47
-'CLASSIFIER_FUNCTION'=48
-'CLOSE'=49
-'CLUSTER'=50
-'CLUSTERED'=51
-'COALESCE'=52
-'COLLATE'=53
-'COLUMN'=54
-'COMPRESSION'=55
-'COMMIT'=56
-'COMPUTE'=57
-'CONFIGURATION'=58
-'CONSTRAINT'=59
-'CONTAINMENT'=60
-'CONTAINS'=61
-'CONTAINSTABLE'=62
-'CONTEXT'=63
-'CONTINUE'=64
-'CONTINUE_AFTER_ERROR'=65
-'CONTRACT'=66
-'CONTRACT_NAME'=67
-'CONVERSATION'=68
-'COPY_ONLY'=70
-'CREATE'=71
-'CROSS'=72
-'CURRENT'=73
-'CURRENT_DATE'=74
-'CURRENT_TIME'=75
-'CURRENT_TIMESTAMP'=76
-'CURRENT_USER'=77
-'CURSOR'=78
-'CYCLE'=79
-'DATA_COMPRESSION'=80
-'DATA_SOURCE'=81
-'DATABASE'=82
-'DATABASE_MIRRORING'=83
-'DBCC'=84
-'DEALLOCATE'=85
-'DECLARE'=86
-'DEFAULT'=87
-'DEFAULT_DATABASE'=88
-'DEFAULT_SCHEMA'=89
-'DELETE'=90
-'DENY'=91
-'DESC'=92
-'DIAGNOSTICS'=93
-'DIFFERENTIAL'=94
-'DISK'=95
-'DISTINCT'=96
-'DISTRIBUTED'=97
-'DOUBLE'=98
-'\\\\'=99
-'//'=100
-'DROP'=101
-'DTC_SUPPORT'=102
-'DUMP'=103
-'ELSE'=104
-'ENABLED'=105
-'END'=106
-'ENDPOINT'=107
-'ERRLVL'=108
-'ESCAPE'=109
-'ERROR'=110
-'EVENT'=111
-'EVENT_RETENTION_MODE'=113
-'EXCEPT'=114
-'EXECUTABLE_FILE'=115
-'EXISTS'=117
-'EXPIREDATE'=118
-'EXIT'=119
-'EXTENSION'=120
-'EXTERNAL'=121
-'EXTERNAL_ACCESS'=122
-'FAILOVER'=123
-'FAILURECONDITIONLEVEL'=124
-'FAN_IN'=125
-'FETCH'=126
-'FILE'=127
-'FILENAME'=128
-'FILLFACTOR'=129
-'FILE_SNAPSHOT'=130
-'FOR'=131
-'FORCESEEK'=132
-'FORCE_SERVICE_ALLOW_DATA_LOSS'=133
-'FOREIGN'=134
-'FREETEXT'=135
-'FREETEXTTABLE'=136
-'FROM'=137
-'FULL'=138
-'FUNCTION'=139
-'GET'=140
-'GOTO'=141
-'GOVERNOR'=142
-'GRANT'=143
-'GROUP'=144
-'HAVING'=145
-'HASHED'=146
-'HEALTHCHECKTIMEOUT'=147
-'IDENTITY'=148
-'IDENTITYCOL'=149
-'IDENTITY_INSERT'=150
-'IF'=151
-'IIF'=152
-'IN'=153
-'INCLUDE'=154
-'INCREMENT'=155
-'INDEX'=156
-'INFINITE'=157
-'INIT'=158
-'INNER'=159
-'INSERT'=160
-'INSTEAD'=161
-'INTERSECT'=162
-'INTO'=163
-'IS'=166
-'ISNULL'=167
-'JOIN'=168
-'KERBEROS'=169
-'KEY'=170
-'KEY_PATH'=171
-'KEY_STORE_PROVIDER_NAME'=172
-'KILL'=173
-'LANGUAGE'=174
-'LEFT'=175
-'LIBRARY'=176
-'LIFETIME'=177
-'LIKE'=178
-'LINENO'=179
-'LINUX'=180
-'LISTENER_IP'=181
-'LISTENER_PORT'=182
-'LOAD'=183
-'LOCAL_SERVICE_NAME'=184
-'LOG'=185
-'MATCHED'=186
-'MASTER'=187
-'MAX_MEMORY'=188
-'MAXTRANSFER'=189
-'MAXVALUE'=190
-'MAX_DISPATCH_LATENCY'=191
-'MAX_EVENT_SIZE'=192
-'MAX_SIZE'=193
-'MAX_OUTSTANDING_IO_PER_VOLUME'=194
-'MEDIADESCRIPTION'=195
-'MEDIANAME'=196
-'MEMBER'=197
-'MEMORY_PARTITION_MODE'=198
-'MERGE'=199
-'MESSAGE_FORWARDING'=200
-'MESSAGE_FORWARD_SIZE'=201
-'MINVALUE'=202
-'MIRROR'=203
-'MUST_CHANGE'=204
-'NATIONAL'=205
-'NEGOTIATE'=206
-'NOCHECK'=207
-'NOFORMAT'=208
-'NOINIT'=209
-'NONCLUSTERED'=210
-'NONE'=211
-'NOREWIND'=212
-'NOSKIP'=213
-'NOUNLOAD'=214
-'NO_CHECKSUM'=215
-'NO_COMPRESSION'=216
-'NO_EVENT_LOSS'=217
-'NOT'=218
-'NOTIFICATION'=219
-'NTLM'=220
-'NULL'=221
-'NULLIF'=222
-'OF'=223
-'OFF'=224
-'OFFSETS'=225
-'OLD_PASSWORD'=226
-'ON'=227
-'ON_FAILURE'=228
-'OPEN'=229
-'OPENDATASOURCE'=230
-'OPENQUERY'=231
-'OPENROWSET'=232
-'OPENXML'=233
-'OPTION'=234
-'OR'=235
-'ORDER'=236
-'OUTER'=237
-'OVER'=238
-'PAGE'=239
-'PARAM_NODE'=240
-'PARTIAL'=241
-'PASSWORD'=242
-'PERCENT'=243
-'PERMISSION_SET'=244
-'PER_CPU'=245
-'PER_DB'=246
-'PER_NODE'=247
-'PIVOT'=248
-'PLAN'=249
-'PLATFORM'=250
-'POLICY'=251
-'PRECISION'=252
-'PREDICATE'=253
-'PRIMARY'=254
-'PRINT'=255
-'PROC'=256
-'PROCEDURE'=257
-'PROCESS'=258
-'PUBLIC'=259
-'PYTHON'=260
-'R'=261
-'RAISERROR'=262
-'RAW'=263
-'READ'=264
-'READTEXT'=265
-'READ_WRITE_FILEGROUPS'=266
-'RECONFIGURE'=267
-'REFERENCES'=268
-'REGENERATE'=269
-'RELATED_CONVERSATION'=270
-'RELATED_CONVERSATION_GROUP'=271
-'REPLICATION'=272
-'REQUIRED'=273
-'RESET'=274
-'RESTART'=275
-'RESTORE'=276
-'RESTRICT'=277
-'RESUME'=278
-'RETAINDAYS'=279
-'RETURN'=280
-'RETURNS'=281
-'REVERT'=282
-'REVOKE'=283
-'REWIND'=284
-'RIGHT'=285
-'ROLLBACK'=286
-'ROLE'=287
-'ROWCOUNT'=288
-'ROWGUIDCOL'=289
-'RSA_512'=290
-'RSA_1024'=291
-'RSA_2048'=292
-'RSA_3072'=293
-'RSA_4096'=294
-'SAFETY'=295
-'RULE'=296
-'SAFE'=297
-'SAVE'=298
-'SCHEDULER'=299
-'SCHEMA'=300
-'SCHEME'=301
-'SECURITYAUDIT'=302
-'SELECT'=303
-'SEMANTICKEYPHRASETABLE'=304
-'SEMANTICSIMILARITYDETAILSTABLE'=305
-'SEMANTICSIMILARITYTABLE'=306
-'SERVER'=307
-'SERVICE'=308
-'SERVICE_BROKER'=309
-'SERVICE_NAME'=310
-'SESSION'=311
-'SESSION_USER'=312
-'SET'=313
-'SETUSER'=314
-'SHUTDOWN'=315
-'SID'=316
-'SKIP'=317
-'SOFTNUMA'=318
-'SOME'=319
-'SOURCE'=320
-'SPECIFICATION'=321
-'SPLIT'=322
-'SQLDUMPERFLAGS'=323
-'SQLDUMPERPATH'=324
-'SQLDUMPERTIMEOUTS'=325
-'STATISTICS'=326
-'STATE'=327
-'STATS'=328
-'START'=329
-'STARTED'=330
-'STARTUP_STATE'=331
-'STOP'=332
-'STOPPED'=333
-'STOP_ON_ERROR'=334
-'SUPPORTED'=335
-'SYSTEM_USER'=336
-'TABLE'=337
-'TABLESAMPLE'=338
-'TAPE'=339
-'TARGET'=340
-'TCP'=341
-'TEXTSIZE'=342
-'THEN'=343
-'TO'=344
-'TOP'=345
-'TRACK_CAUSALITY'=346
-'TRAN'=347
-'TRANSACTION'=348
-'TRANSFER'=349
-'TRIGGER'=350
-'TRUNCATE'=351
-'TSEQUAL'=352
-'UNCHECKED'=353
-'UNION'=354
-'UNIQUE'=355
-'UNLOCK'=356
-'UNPIVOT'=357
-'UNSAFE'=358
-'UPDATE'=359
-'UPDATETEXT'=360
-'URL'=361
-'USE'=362
-'USED'=363
-'USER'=364
-'VALUES'=365
-'VARYING'=366
-'VERBOSELOGGING'=367
-'VIEW'=368
-'VISIBILITY'=369
-'WAITFOR'=370
-'WHEN'=371
-'WHERE'=372
-'WHILE'=373
-'WINDOWS'=374
-'WITH'=375
-'WITHIN'=376
-'WITHOUT'=377
-'WITNESS'=378
-'WRITETEXT'=379
-'ABSOLUTE'=380
-'ACCENT_SENSITIVITY'=381
-'ACTION'=382
-'ACTIVATION'=383
-'ACTIVE'=384
-'ADDRESS'=385
-'AES_128'=386
-'AES_192'=387
-'AES_256'=388
-'AFFINITY'=389
-'AFTER'=390
-'AGGREGATE'=391
-'ALGORITHM'=392
-'ALLOW_ENCRYPTED_VALUE_MODIFICATIONS'=393
-'ALLOW_SNAPSHOT_ISOLATION'=394
-'ALLOWED'=395
-'ANSI_NULL_DEFAULT'=396
-'ANSI_NULLS'=397
-'ANSI_PADDING'=398
-'ANSI_WARNINGS'=399
-'APPLICATION_LOG'=400
-'APPLY'=401
-'ARITHABORT'=402
-'ASSEMBLY'=403
-'AUDIT'=404
-'AUDIT_GUID'=405
-'AUTO'=406
-'AUTO_CLEANUP'=407
-'AUTO_CLOSE'=408
-'AUTO_CREATE_STATISTICS'=409
-'AUTO_SHRINK'=410
-'AUTO_UPDATE_STATISTICS'=411
-'AUTO_UPDATE_STATISTICS_ASYNC'=412
-'AVAILABILITY'=413
-'AVG'=414
-'BACKUP_PRIORITY'=415
-'BEGIN_DIALOG'=416
-'BIGINT'=417
-'BINARY BASE64'=418
-'BINARY_CHECKSUM'=419
-'BINDING'=420
-'BLOB_STORAGE'=421
-'BROKER'=422
-'BROKER_INSTANCE'=423
-'BULK_LOGGED'=424
-'CALLER'=425
-'CAP_CPU_PERCENT'=426
-'CATALOG'=428
-'CATCH'=429
-'CHANGE_RETENTION'=430
-'CHANGE_TRACKING'=431
-'CHECKSUM'=432
-'CHECKSUM_AGG'=433
-'CLEANUP'=434
-'COLLECTION'=435
-'COLUMN_MASTER_KEY'=436
-'COMMITTED'=437
-'COMPATIBILITY_LEVEL'=438
-'CONCAT'=439
-'CONCAT_NULL_YIELDS_NULL'=440
-'CONTENT'=441
-'CONTROL'=442
-'COOKIE'=443
-'COUNT'=444
-'COUNT_BIG'=445
-'COUNTER'=446
-'CPU'=447
-'CREATE_NEW'=448
-'CREATION_DISPOSITION'=449
-'CREDENTIAL'=450
-'CRYPTOGRAPHIC'=451
-'CURSOR_CLOSE_ON_COMMIT'=452
-'CURSOR_DEFAULT'=453
-'DATA'=454
-'DATE_CORRELATION_OPTIMIZATION'=455
-'DATEADD'=456
-'DATEDIFF'=457
-'DATENAME'=458
-'DATEPART'=459
-'DAYS'=460
-'DB_CHAINING'=461
-'DB_FAILOVER'=462
-'DECRYPTION'=463
-'DEFAULT_FULLTEXT_LANGUAGE'=465
-'DEFAULT_LANGUAGE'=466
-'DELAY'=467
-'DELAYED_DURABILITY'=468
-'DELETED'=469
-'DENSE_RANK'=470
-'DEPENDENTS'=471
-'DES'=472
-'DESCRIPTION'=473
-'DESX'=474
-'DHCP'=475
-'DIALOG'=476
-'DIRECTORY_NAME'=477
-'DISABLE'=478
-'DISABLE_BROKER'=479
-'DISABLED'=480
-'DOCUMENT'=482
-'DYNAMIC'=483
-'ELEMENTS'=484
-'EMERGENCY'=485
-'EMPTY'=486
-'ENABLE'=487
-'ENABLE_BROKER'=488
-'ENCRYPTED_VALUE'=489
-'ENCRYPTION'=490
-'ENDPOINT_URL'=491
-'ERROR_BROKER_CONVERSATIONS'=492
-'EXCLUSIVE'=493
-'EXECUTABLE'=494
-'EXIST'=495
-'EXPAND'=496
-'EXPIRY_DATE'=497
-'EXPLICIT'=498
-'FAIL_OPERATION'=499
-'FAILOVER_MODE'=500
-'FAILURE'=501
-'FAILURE_CONDITION_LEVEL'=502
-'FAST'=503
-'FAST_FORWARD'=504
-'FILEGROUP'=505
-'FILEGROWTH'=506
-'FILEPATH'=507
-'FILESTREAM'=508
-'FILTER'=509
-'FIRST'=510
-'FIRST_VALUE'=511
-'FOLLOWING'=512
-'FORCE'=513
-'FORCE_FAILOVER_ALLOW_DATA_LOSS'=514
-'FORCED'=515
-'FORMAT'=516
-'FORWARD_ONLY'=517
-'FULLSCAN'=518
-'FULLTEXT'=519
-'GB'=520
-'GETDATE'=521
-'GETUTCDATE'=522
-'GLOBAL'=523
-'GO'=524
-'GROUP_MAX_REQUESTS'=525
-'GROUPING'=526
-'GROUPING_ID'=527
-'HADR'=528
-'HASH'=529
-'HEALTH_CHECK_TIMEOUT'=530
-'HIGH'=531
-'HONOR_BROKER_PRIORITY'=532
-'HOURS'=533
-'IDENTITY_VALUE'=534
-'IGNORE_NONCLUSTERED_COLUMNSTORE_INDEX'=535
-'IMMEDIATE'=536
-'IMPERSONATE'=537
-'IMPORTANCE'=538
-'INCLUDE_NULL_VALUES'=539
-'INCREMENTAL'=540
-'INITIATOR'=541
-'INPUT'=542
-'INSENSITIVE'=543
-'INSERTED'=544
-'INT'=545
-'IP'=546
-'ISOLATION'=547
-'JOB'=548
-'JSON'=549
-'KB'=550
-'KEEP'=551
-'KEEPFIXED'=552
-'KEY_SOURCE'=553
-'KEYS'=554
-'KEYSET'=555
-'LAG'=556
-'LAST'=557
-'LAST_VALUE'=558
-'LEAD'=559
-'LEVEL'=560
-'LIST'=561
-'LISTENER'=562
-'LISTENER_URL'=563
-'LOB_COMPACTION'=564
-'LOCAL'=565
-'LOCATION'=566
-'LOCK'=567
-'LOCK_ESCALATION'=568
-'LOGIN'=569
-'LOOP'=570
-'LOW'=571
-'MANUAL'=572
-'MARK'=573
-'MATERIALIZED'=574
-'MAX'=575
-'MAX_CPU_PERCENT'=576
-'MAX_DOP'=577
-'MAX_FILES'=578
-'MAX_IOPS_PER_VOLUME'=579
-'MAX_MEMORY_PERCENT'=580
-'MAX_PROCESSES'=581
-'MAX_QUEUE_READERS'=582
-'MAX_ROLLOVER_FILES'=583
-'MAXDOP'=584
-'MAXRECURSION'=585
-'MAXSIZE'=586
-'MB'=587
-'MEDIUM'=588
-'MEMORY_OPTIMIZED_DATA'=589
-'MESSAGE'=590
-'MIN'=591
-'MIN_ACTIVE_ROWVERSION'=592
-'MIN_CPU_PERCENT'=593
-'MIN_IOPS_PER_VOLUME'=594
-'MIN_MEMORY_PERCENT'=595
-'MINUTES'=596
-'MIRROR_ADDRESS'=597
-'MIXED_PAGE_ALLOCATION'=598
-'MODE'=599
-'MODIFY'=600
-'MOVE'=601
-'MULTI_USER'=602
-'NAME'=603
-'NESTED_TRIGGERS'=604
-'NEW_ACCOUNT'=605
-'NEW_BROKER'=606
-'NEW_PASSWORD'=607
-'NEXT'=608
-'NO'=609
-'NO_TRUNCATE'=610
-'NO_WAIT'=611
-'NOCOUNT'=612
-'NODES'=613
-'NOEXPAND'=614
-'NON_TRANSACTED_ACCESS'=615
-'NORECOMPUTE'=616
-'NORECOVERY'=617
-'NOWAIT'=618
-'NTILE'=619
-'NUMANODE'=620
-'NUMBER'=621
-'NUMERIC_ROUNDABORT'=622
-'OBJECT'=623
-'OFFLINE'=624
-'OFFSET'=625
-'OLD_ACCOUNT'=626
-'ONLINE'=627
-'ONLY'=628
-'OPEN_EXISTING'=629
-'OPTIMISTIC'=630
-'OPTIMIZE'=631
-'OUT'=632
-'OUTPUT'=633
-'OVERRIDE'=634
-'OWNER'=635
-'PAGE_VERIFY'=636
-'PARAMETERIZATION'=637
-'PARTITION'=638
-'PARTITIONS'=639
-'PARTNER'=640
-'PATH'=641
-'POISON_MESSAGE_HANDLING'=642
-'POOL'=643
-'PORT'=644
-'PRECEDING'=645
-'PRIMARY_ROLE'=646
-'PRIOR'=647
-'PRIORITY'=648
-'PRIORITY_LEVEL'=649
-'PRIVATE'=650
-'PRIVATE_KEY'=651
-'PRIVILEGES'=652
-'PROCEDURE_NAME'=653
-'PROPERTY'=654
-'PROVIDER'=655
-'PROVIDER_KEY_NAME'=656
-'QUERY'=657
-'QUEUE'=658
-'QUEUE_DELAY'=659
-'QUOTED_IDENTIFIER'=660
-'RANGE'=661
-'RANK'=662
-'RC2'=663
-'RC4'=664
-'RC4_128'=665
-'READ_COMMITTED_SNAPSHOT'=666
-'READ_ONLY'=667
-'READ_ONLY_ROUTING_LIST'=668
-'READ_WRITE'=669
-'READONLY'=670
-'REBUILD'=671
-'RECEIVE'=672
-'RECOMPILE'=673
-'RECOVERY'=674
-'RECURSIVE_TRIGGERS'=675
-'RELATIVE'=676
-'REMOTE'=677
-'REMOTE_SERVICE_NAME'=678
-'REMOVE'=679
-'REORGANIZE'=680
-'REPEATABLE'=681
-'REPLICA'=682
-'REQUEST_MAX_CPU_TIME_SEC'=683
-'REQUEST_MAX_MEMORY_GRANT_PERCENT'=684
-'REQUEST_MEMORY_GRANT_TIMEOUT_SEC'=685
-'REQUIRED_SYNCHRONIZED_SECONDARIES_TO_COMMIT'=686
-'RESERVE_DISK_SPACE'=687
-'RESOURCE'=688
-'RESOURCE_MANAGER_LOCATION'=689
-'RESTRICTED_USER'=690
-'RETENTION'=691
-'ROBUST'=692
-'ROOT'=693
-'ROUTE'=694
-'ROW'=695
-'ROW_NUMBER'=696
-'ROWGUID'=697
-'ROWS'=698
-'SAMPLE'=699
-'SCHEMABINDING'=700
-'SCOPED'=701
-'SCROLL'=702
-'SCROLL_LOCKS'=703
-'SEARCH'=704
-'SECONDARY'=705
-'SECONDARY_ONLY'=706
-'SECONDARY_ROLE'=707
-'SECONDS'=708
-'SECRET'=709
-'SECURITY'=710
-'SECURITY_LOG'=711
-'SEEDING_MODE'=712
-'SELF'=713
-'SEMI_SENSITIVE'=714
-'SEND'=715
-'SENT'=716
-'SEQUENCE'=717
-'SERIALIZABLE'=718
-'SESSION_TIMEOUT'=719
-'SETERROR'=720
-'SHARE'=721
-'SHOWPLAN'=722
-'SIGNATURE'=723
-'SIMPLE'=724
-'SINGLE_USER'=725
-'SIZE'=726
-'SMALLINT'=727
-'SNAPSHOT'=728
-'SPATIAL_WINDOW_MAX_CELLS'=729
-'STANDBY'=730
-'START_DATE'=731
-'STATIC'=732
-'STATS_STREAM'=733
-'STATUS'=734
-'STATUSONLY'=735
-'STDEV'=736
-'STDEVP'=737
-'STOPLIST'=738
-'STRING_AGG'=739
-'STUFF'=740
-'SUBJECT'=741
-'SUBSCRIPTION'=742
-'SUM'=743
-'SUSPEND'=744
-'SYMMETRIC'=745
-'SYNCHRONOUS_COMMIT'=746
-'SYNONYM'=747
-'SYSTEM'=748
-'TAKE'=749
-'TARGET_RECOVERY_TIME'=750
-'TB'=751
-'TEXTIMAGE_ON'=752
-'THROW'=753
-'TIES'=754
-'TIME'=755
-'TIMEOUT'=756
-'TIMER'=757
-'TINYINT'=758
-'TORN_PAGE_DETECTION'=759
-'TRANSFORM_NOISE_WORDS'=760
-'TRIPLE_DES'=761
-'TRIPLE_DES_3KEY'=762
-'TRUSTWORTHY'=763
-'TRY'=764
-'TSQL'=765
-'TWO_DIGIT_YEAR_CUTOFF'=766
-'TYPE'=767
-'TYPE_WARNING'=768
-'UNBOUNDED'=769
-'UNCOMMITTED'=770
-'UNKNOWN'=771
-'UNLIMITED'=772
-'UOW'=773
-'USING'=774
-'VALID_XML'=775
-'VALIDATION'=776
-'VALUE'=777
-'VAR'=778
-'VARP'=779
-'VIEW_METADATA'=780
-'VIEWS'=781
-'WAIT'=782
-'WELL_FORMED_XML'=783
-'WITHOUT_ARRAY_WRAPPER'=784
-'WORK'=785
-'WORKLOAD'=786
-'XML'=787
-'XMLDATA'=788
-'XMLNAMESPACES'=789
-'XMLSCHEMA'=790
-'XSINIL'=791
-'$ACTION'=792
-'\''=797
-'='=808
-'>'=809
-'<'=810
-'!'=811
-'+='=812
-'-='=813
-'*='=814
-'/='=815
-'%='=816
-'&='=817
-'^='=818
-'|='=819
-'||'=820
-'.'=821
-'_'=822
-'@'=823
-'#'=824
-'$'=825
-'('=826
-')'=827
-','=828
-';'=829
-':'=830
-'*'=831
-'/'=832
-'%'=833
-'+'=834
-'-'=835
-'~'=836
-'|'=837
-'&'=838
-'^'=839
diff --git a/src/grammar/tsql/parser/TSqlParserListener.js b/src/grammar/tsql/parser/TSqlParserListener.js
deleted file mode 100644
index 9538ce5..0000000
--- a/src/grammar/tsql/parser/TSqlParserListener.js
+++ /dev/null
@@ -1,4632 +0,0 @@
-// Generated from /Users/ziv/Workspace/dt-sql-parser/src/grammar/tsql/TSqlParser.g4 by ANTLR 4.8
-// jshint ignore: start
-var antlr4 = require('antlr4/index');
-
-// This class defines a complete listener for a parse tree produced by TSqlParser.
-function TSqlParserListener() {
- antlr4.tree.ParseTreeListener.call(this);
- return this;
-}
-
-TSqlParserListener.prototype = Object.create(antlr4.tree.ParseTreeListener.prototype);
-TSqlParserListener.prototype.constructor = TSqlParserListener;
-
-// Enter a parse tree produced by TSqlParser#tsql_file.
-TSqlParserListener.prototype.enterTsql_file = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#tsql_file.
-TSqlParserListener.prototype.exitTsql_file = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#batch.
-TSqlParserListener.prototype.enterBatch = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#batch.
-TSqlParserListener.prototype.exitBatch = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#sql_clauses.
-TSqlParserListener.prototype.enterSql_clauses = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#sql_clauses.
-TSqlParserListener.prototype.exitSql_clauses = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#sql_clause.
-TSqlParserListener.prototype.enterSql_clause = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#sql_clause.
-TSqlParserListener.prototype.exitSql_clause = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#dml_clause.
-TSqlParserListener.prototype.enterDml_clause = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#dml_clause.
-TSqlParserListener.prototype.exitDml_clause = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#ddl_clause.
-TSqlParserListener.prototype.enterDdl_clause = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#ddl_clause.
-TSqlParserListener.prototype.exitDdl_clause = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#backup_statement.
-TSqlParserListener.prototype.enterBackup_statement = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#backup_statement.
-TSqlParserListener.prototype.exitBackup_statement = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#cfl_statement.
-TSqlParserListener.prototype.enterCfl_statement = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#cfl_statement.
-TSqlParserListener.prototype.exitCfl_statement = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#block_statement.
-TSqlParserListener.prototype.enterBlock_statement = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#block_statement.
-TSqlParserListener.prototype.exitBlock_statement = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#break_statement.
-TSqlParserListener.prototype.enterBreak_statement = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#break_statement.
-TSqlParserListener.prototype.exitBreak_statement = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#continue_statement.
-TSqlParserListener.prototype.enterContinue_statement = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#continue_statement.
-TSqlParserListener.prototype.exitContinue_statement = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#goto_statement.
-TSqlParserListener.prototype.enterGoto_statement = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#goto_statement.
-TSqlParserListener.prototype.exitGoto_statement = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#return_statement.
-TSqlParserListener.prototype.enterReturn_statement = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#return_statement.
-TSqlParserListener.prototype.exitReturn_statement = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#if_statement.
-TSqlParserListener.prototype.enterIf_statement = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#if_statement.
-TSqlParserListener.prototype.exitIf_statement = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#throw_statement.
-TSqlParserListener.prototype.enterThrow_statement = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#throw_statement.
-TSqlParserListener.prototype.exitThrow_statement = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#throw_error_number.
-TSqlParserListener.prototype.enterThrow_error_number = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#throw_error_number.
-TSqlParserListener.prototype.exitThrow_error_number = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#throw_message.
-TSqlParserListener.prototype.enterThrow_message = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#throw_message.
-TSqlParserListener.prototype.exitThrow_message = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#throw_state.
-TSqlParserListener.prototype.enterThrow_state = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#throw_state.
-TSqlParserListener.prototype.exitThrow_state = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#try_catch_statement.
-TSqlParserListener.prototype.enterTry_catch_statement = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#try_catch_statement.
-TSqlParserListener.prototype.exitTry_catch_statement = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#waitfor_statement.
-TSqlParserListener.prototype.enterWaitfor_statement = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#waitfor_statement.
-TSqlParserListener.prototype.exitWaitfor_statement = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#while_statement.
-TSqlParserListener.prototype.enterWhile_statement = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#while_statement.
-TSqlParserListener.prototype.exitWhile_statement = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#print_statement.
-TSqlParserListener.prototype.enterPrint_statement = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#print_statement.
-TSqlParserListener.prototype.exitPrint_statement = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#raiseerror_statement.
-TSqlParserListener.prototype.enterRaiseerror_statement = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#raiseerror_statement.
-TSqlParserListener.prototype.exitRaiseerror_statement = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#empty_statement.
-TSqlParserListener.prototype.enterEmpty_statement = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#empty_statement.
-TSqlParserListener.prototype.exitEmpty_statement = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#another_statement.
-TSqlParserListener.prototype.enterAnother_statement = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#another_statement.
-TSqlParserListener.prototype.exitAnother_statement = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_application_role.
-TSqlParserListener.prototype.enterAlter_application_role = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_application_role.
-TSqlParserListener.prototype.exitAlter_application_role = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_application_role.
-TSqlParserListener.prototype.enterCreate_application_role = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_application_role.
-TSqlParserListener.prototype.exitCreate_application_role = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_aggregate.
-TSqlParserListener.prototype.enterDrop_aggregate = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_aggregate.
-TSqlParserListener.prototype.exitDrop_aggregate = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_application_role.
-TSqlParserListener.prototype.enterDrop_application_role = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_application_role.
-TSqlParserListener.prototype.exitDrop_application_role = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_assembly.
-TSqlParserListener.prototype.enterAlter_assembly = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_assembly.
-TSqlParserListener.prototype.exitAlter_assembly = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_assembly_start.
-TSqlParserListener.prototype.enterAlter_assembly_start = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_assembly_start.
-TSqlParserListener.prototype.exitAlter_assembly_start = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_assembly_clause.
-TSqlParserListener.prototype.enterAlter_assembly_clause = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_assembly_clause.
-TSqlParserListener.prototype.exitAlter_assembly_clause = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_assembly_from_clause.
-TSqlParserListener.prototype.enterAlter_assembly_from_clause = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_assembly_from_clause.
-TSqlParserListener.prototype.exitAlter_assembly_from_clause = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_assembly_from_clause_start.
-TSqlParserListener.prototype.enterAlter_assembly_from_clause_start = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_assembly_from_clause_start.
-TSqlParserListener.prototype.exitAlter_assembly_from_clause_start = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_assembly_drop_clause.
-TSqlParserListener.prototype.enterAlter_assembly_drop_clause = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_assembly_drop_clause.
-TSqlParserListener.prototype.exitAlter_assembly_drop_clause = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_assembly_drop_multiple_files.
-TSqlParserListener.prototype.enterAlter_assembly_drop_multiple_files = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_assembly_drop_multiple_files.
-TSqlParserListener.prototype.exitAlter_assembly_drop_multiple_files = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_assembly_drop.
-TSqlParserListener.prototype.enterAlter_assembly_drop = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_assembly_drop.
-TSqlParserListener.prototype.exitAlter_assembly_drop = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_assembly_add_clause.
-TSqlParserListener.prototype.enterAlter_assembly_add_clause = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_assembly_add_clause.
-TSqlParserListener.prototype.exitAlter_assembly_add_clause = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_asssembly_add_clause_start.
-TSqlParserListener.prototype.enterAlter_asssembly_add_clause_start = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_asssembly_add_clause_start.
-TSqlParserListener.prototype.exitAlter_asssembly_add_clause_start = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_assembly_client_file_clause.
-TSqlParserListener.prototype.enterAlter_assembly_client_file_clause = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_assembly_client_file_clause.
-TSqlParserListener.prototype.exitAlter_assembly_client_file_clause = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_assembly_file_name.
-TSqlParserListener.prototype.enterAlter_assembly_file_name = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_assembly_file_name.
-TSqlParserListener.prototype.exitAlter_assembly_file_name = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_assembly_file_bits.
-TSqlParserListener.prototype.enterAlter_assembly_file_bits = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_assembly_file_bits.
-TSqlParserListener.prototype.exitAlter_assembly_file_bits = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_assembly_as.
-TSqlParserListener.prototype.enterAlter_assembly_as = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_assembly_as.
-TSqlParserListener.prototype.exitAlter_assembly_as = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_assembly_with_clause.
-TSqlParserListener.prototype.enterAlter_assembly_with_clause = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_assembly_with_clause.
-TSqlParserListener.prototype.exitAlter_assembly_with_clause = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_assembly_with.
-TSqlParserListener.prototype.enterAlter_assembly_with = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_assembly_with.
-TSqlParserListener.prototype.exitAlter_assembly_with = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#client_assembly_specifier.
-TSqlParserListener.prototype.enterClient_assembly_specifier = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#client_assembly_specifier.
-TSqlParserListener.prototype.exitClient_assembly_specifier = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#assembly_option.
-TSqlParserListener.prototype.enterAssembly_option = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#assembly_option.
-TSqlParserListener.prototype.exitAssembly_option = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#network_file_share.
-TSqlParserListener.prototype.enterNetwork_file_share = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#network_file_share.
-TSqlParserListener.prototype.exitNetwork_file_share = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#network_computer.
-TSqlParserListener.prototype.enterNetwork_computer = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#network_computer.
-TSqlParserListener.prototype.exitNetwork_computer = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#network_file_start.
-TSqlParserListener.prototype.enterNetwork_file_start = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#network_file_start.
-TSqlParserListener.prototype.exitNetwork_file_start = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#file_path.
-TSqlParserListener.prototype.enterFile_path = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#file_path.
-TSqlParserListener.prototype.exitFile_path = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#file_directory_path_separator.
-TSqlParserListener.prototype.enterFile_directory_path_separator = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#file_directory_path_separator.
-TSqlParserListener.prototype.exitFile_directory_path_separator = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#local_file.
-TSqlParserListener.prototype.enterLocal_file = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#local_file.
-TSqlParserListener.prototype.exitLocal_file = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#local_drive.
-TSqlParserListener.prototype.enterLocal_drive = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#local_drive.
-TSqlParserListener.prototype.exitLocal_drive = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#multiple_local_files.
-TSqlParserListener.prototype.enterMultiple_local_files = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#multiple_local_files.
-TSqlParserListener.prototype.exitMultiple_local_files = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#multiple_local_file_start.
-TSqlParserListener.prototype.enterMultiple_local_file_start = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#multiple_local_file_start.
-TSqlParserListener.prototype.exitMultiple_local_file_start = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_assembly.
-TSqlParserListener.prototype.enterCreate_assembly = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_assembly.
-TSqlParserListener.prototype.exitCreate_assembly = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_assembly.
-TSqlParserListener.prototype.enterDrop_assembly = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_assembly.
-TSqlParserListener.prototype.exitDrop_assembly = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_asymmetric_key.
-TSqlParserListener.prototype.enterAlter_asymmetric_key = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_asymmetric_key.
-TSqlParserListener.prototype.exitAlter_asymmetric_key = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_asymmetric_key_start.
-TSqlParserListener.prototype.enterAlter_asymmetric_key_start = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_asymmetric_key_start.
-TSqlParserListener.prototype.exitAlter_asymmetric_key_start = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#asymmetric_key_option.
-TSqlParserListener.prototype.enterAsymmetric_key_option = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#asymmetric_key_option.
-TSqlParserListener.prototype.exitAsymmetric_key_option = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#asymmetric_key_option_start.
-TSqlParserListener.prototype.enterAsymmetric_key_option_start = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#asymmetric_key_option_start.
-TSqlParserListener.prototype.exitAsymmetric_key_option_start = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#asymmetric_key_password_change_option.
-TSqlParserListener.prototype.enterAsymmetric_key_password_change_option = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#asymmetric_key_password_change_option.
-TSqlParserListener.prototype.exitAsymmetric_key_password_change_option = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_asymmetric_key.
-TSqlParserListener.prototype.enterCreate_asymmetric_key = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_asymmetric_key.
-TSqlParserListener.prototype.exitCreate_asymmetric_key = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_asymmetric_key.
-TSqlParserListener.prototype.enterDrop_asymmetric_key = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_asymmetric_key.
-TSqlParserListener.prototype.exitDrop_asymmetric_key = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_authorization.
-TSqlParserListener.prototype.enterAlter_authorization = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_authorization.
-TSqlParserListener.prototype.exitAlter_authorization = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#authorization_grantee.
-TSqlParserListener.prototype.enterAuthorization_grantee = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#authorization_grantee.
-TSqlParserListener.prototype.exitAuthorization_grantee = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#entity_to.
-TSqlParserListener.prototype.enterEntity_to = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#entity_to.
-TSqlParserListener.prototype.exitEntity_to = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#colon_colon.
-TSqlParserListener.prototype.enterColon_colon = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#colon_colon.
-TSqlParserListener.prototype.exitColon_colon = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_authorization_start.
-TSqlParserListener.prototype.enterAlter_authorization_start = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_authorization_start.
-TSqlParserListener.prototype.exitAlter_authorization_start = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_authorization_for_sql_database.
-TSqlParserListener.prototype.enterAlter_authorization_for_sql_database = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_authorization_for_sql_database.
-TSqlParserListener.prototype.exitAlter_authorization_for_sql_database = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_authorization_for_azure_dw.
-TSqlParserListener.prototype.enterAlter_authorization_for_azure_dw = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_authorization_for_azure_dw.
-TSqlParserListener.prototype.exitAlter_authorization_for_azure_dw = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_authorization_for_parallel_dw.
-TSqlParserListener.prototype.enterAlter_authorization_for_parallel_dw = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_authorization_for_parallel_dw.
-TSqlParserListener.prototype.exitAlter_authorization_for_parallel_dw = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#class_type.
-TSqlParserListener.prototype.enterClass_type = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#class_type.
-TSqlParserListener.prototype.exitClass_type = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#class_type_for_sql_database.
-TSqlParserListener.prototype.enterClass_type_for_sql_database = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#class_type_for_sql_database.
-TSqlParserListener.prototype.exitClass_type_for_sql_database = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#class_type_for_azure_dw.
-TSqlParserListener.prototype.enterClass_type_for_azure_dw = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#class_type_for_azure_dw.
-TSqlParserListener.prototype.exitClass_type_for_azure_dw = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#class_type_for_parallel_dw.
-TSqlParserListener.prototype.enterClass_type_for_parallel_dw = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#class_type_for_parallel_dw.
-TSqlParserListener.prototype.exitClass_type_for_parallel_dw = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_availability_group.
-TSqlParserListener.prototype.enterDrop_availability_group = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_availability_group.
-TSqlParserListener.prototype.exitDrop_availability_group = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_availability_group.
-TSqlParserListener.prototype.enterAlter_availability_group = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_availability_group.
-TSqlParserListener.prototype.exitAlter_availability_group = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_availability_group_start.
-TSqlParserListener.prototype.enterAlter_availability_group_start = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_availability_group_start.
-TSqlParserListener.prototype.exitAlter_availability_group_start = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_availability_group_options.
-TSqlParserListener.prototype.enterAlter_availability_group_options = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_availability_group_options.
-TSqlParserListener.prototype.exitAlter_availability_group_options = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_or_alter_broker_priority.
-TSqlParserListener.prototype.enterCreate_or_alter_broker_priority = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_or_alter_broker_priority.
-TSqlParserListener.prototype.exitCreate_or_alter_broker_priority = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_broker_priority.
-TSqlParserListener.prototype.enterDrop_broker_priority = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_broker_priority.
-TSqlParserListener.prototype.exitDrop_broker_priority = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_certificate.
-TSqlParserListener.prototype.enterAlter_certificate = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_certificate.
-TSqlParserListener.prototype.exitAlter_certificate = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_column_encryption_key.
-TSqlParserListener.prototype.enterAlter_column_encryption_key = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_column_encryption_key.
-TSqlParserListener.prototype.exitAlter_column_encryption_key = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_column_encryption_key.
-TSqlParserListener.prototype.enterCreate_column_encryption_key = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_column_encryption_key.
-TSqlParserListener.prototype.exitCreate_column_encryption_key = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_certificate.
-TSqlParserListener.prototype.enterDrop_certificate = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_certificate.
-TSqlParserListener.prototype.exitDrop_certificate = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_column_encryption_key.
-TSqlParserListener.prototype.enterDrop_column_encryption_key = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_column_encryption_key.
-TSqlParserListener.prototype.exitDrop_column_encryption_key = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_column_master_key.
-TSqlParserListener.prototype.enterDrop_column_master_key = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_column_master_key.
-TSqlParserListener.prototype.exitDrop_column_master_key = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_contract.
-TSqlParserListener.prototype.enterDrop_contract = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_contract.
-TSqlParserListener.prototype.exitDrop_contract = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_credential.
-TSqlParserListener.prototype.enterDrop_credential = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_credential.
-TSqlParserListener.prototype.exitDrop_credential = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_cryptograhic_provider.
-TSqlParserListener.prototype.enterDrop_cryptograhic_provider = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_cryptograhic_provider.
-TSqlParserListener.prototype.exitDrop_cryptograhic_provider = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_database.
-TSqlParserListener.prototype.enterDrop_database = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_database.
-TSqlParserListener.prototype.exitDrop_database = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_database_audit_specification.
-TSqlParserListener.prototype.enterDrop_database_audit_specification = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_database_audit_specification.
-TSqlParserListener.prototype.exitDrop_database_audit_specification = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_database_scoped_credential.
-TSqlParserListener.prototype.enterDrop_database_scoped_credential = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_database_scoped_credential.
-TSqlParserListener.prototype.exitDrop_database_scoped_credential = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_default.
-TSqlParserListener.prototype.enterDrop_default = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_default.
-TSqlParserListener.prototype.exitDrop_default = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_endpoint.
-TSqlParserListener.prototype.enterDrop_endpoint = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_endpoint.
-TSqlParserListener.prototype.exitDrop_endpoint = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_external_data_source.
-TSqlParserListener.prototype.enterDrop_external_data_source = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_external_data_source.
-TSqlParserListener.prototype.exitDrop_external_data_source = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_external_file_format.
-TSqlParserListener.prototype.enterDrop_external_file_format = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_external_file_format.
-TSqlParserListener.prototype.exitDrop_external_file_format = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_external_library.
-TSqlParserListener.prototype.enterDrop_external_library = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_external_library.
-TSqlParserListener.prototype.exitDrop_external_library = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_external_resource_pool.
-TSqlParserListener.prototype.enterDrop_external_resource_pool = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_external_resource_pool.
-TSqlParserListener.prototype.exitDrop_external_resource_pool = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_external_table.
-TSqlParserListener.prototype.enterDrop_external_table = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_external_table.
-TSqlParserListener.prototype.exitDrop_external_table = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_event_notifications.
-TSqlParserListener.prototype.enterDrop_event_notifications = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_event_notifications.
-TSqlParserListener.prototype.exitDrop_event_notifications = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_event_session.
-TSqlParserListener.prototype.enterDrop_event_session = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_event_session.
-TSqlParserListener.prototype.exitDrop_event_session = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_fulltext_catalog.
-TSqlParserListener.prototype.enterDrop_fulltext_catalog = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_fulltext_catalog.
-TSqlParserListener.prototype.exitDrop_fulltext_catalog = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_fulltext_index.
-TSqlParserListener.prototype.enterDrop_fulltext_index = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_fulltext_index.
-TSqlParserListener.prototype.exitDrop_fulltext_index = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_fulltext_stoplist.
-TSqlParserListener.prototype.enterDrop_fulltext_stoplist = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_fulltext_stoplist.
-TSqlParserListener.prototype.exitDrop_fulltext_stoplist = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_login.
-TSqlParserListener.prototype.enterDrop_login = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_login.
-TSqlParserListener.prototype.exitDrop_login = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_master_key.
-TSqlParserListener.prototype.enterDrop_master_key = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_master_key.
-TSqlParserListener.prototype.exitDrop_master_key = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_message_type.
-TSqlParserListener.prototype.enterDrop_message_type = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_message_type.
-TSqlParserListener.prototype.exitDrop_message_type = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_partition_function.
-TSqlParserListener.prototype.enterDrop_partition_function = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_partition_function.
-TSqlParserListener.prototype.exitDrop_partition_function = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_partition_scheme.
-TSqlParserListener.prototype.enterDrop_partition_scheme = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_partition_scheme.
-TSqlParserListener.prototype.exitDrop_partition_scheme = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_queue.
-TSqlParserListener.prototype.enterDrop_queue = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_queue.
-TSqlParserListener.prototype.exitDrop_queue = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_remote_service_binding.
-TSqlParserListener.prototype.enterDrop_remote_service_binding = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_remote_service_binding.
-TSqlParserListener.prototype.exitDrop_remote_service_binding = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_resource_pool.
-TSqlParserListener.prototype.enterDrop_resource_pool = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_resource_pool.
-TSqlParserListener.prototype.exitDrop_resource_pool = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_db_role.
-TSqlParserListener.prototype.enterDrop_db_role = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_db_role.
-TSqlParserListener.prototype.exitDrop_db_role = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_route.
-TSqlParserListener.prototype.enterDrop_route = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_route.
-TSqlParserListener.prototype.exitDrop_route = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_rule.
-TSqlParserListener.prototype.enterDrop_rule = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_rule.
-TSqlParserListener.prototype.exitDrop_rule = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_schema.
-TSqlParserListener.prototype.enterDrop_schema = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_schema.
-TSqlParserListener.prototype.exitDrop_schema = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_search_property_list.
-TSqlParserListener.prototype.enterDrop_search_property_list = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_search_property_list.
-TSqlParserListener.prototype.exitDrop_search_property_list = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_security_policy.
-TSqlParserListener.prototype.enterDrop_security_policy = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_security_policy.
-TSqlParserListener.prototype.exitDrop_security_policy = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_sequence.
-TSqlParserListener.prototype.enterDrop_sequence = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_sequence.
-TSqlParserListener.prototype.exitDrop_sequence = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_server_audit.
-TSqlParserListener.prototype.enterDrop_server_audit = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_server_audit.
-TSqlParserListener.prototype.exitDrop_server_audit = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_server_audit_specification.
-TSqlParserListener.prototype.enterDrop_server_audit_specification = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_server_audit_specification.
-TSqlParserListener.prototype.exitDrop_server_audit_specification = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_server_role.
-TSqlParserListener.prototype.enterDrop_server_role = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_server_role.
-TSqlParserListener.prototype.exitDrop_server_role = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_service.
-TSqlParserListener.prototype.enterDrop_service = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_service.
-TSqlParserListener.prototype.exitDrop_service = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_signature.
-TSqlParserListener.prototype.enterDrop_signature = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_signature.
-TSqlParserListener.prototype.exitDrop_signature = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_statistics_name_azure_dw_and_pdw.
-TSqlParserListener.prototype.enterDrop_statistics_name_azure_dw_and_pdw = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_statistics_name_azure_dw_and_pdw.
-TSqlParserListener.prototype.exitDrop_statistics_name_azure_dw_and_pdw = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_symmetric_key.
-TSqlParserListener.prototype.enterDrop_symmetric_key = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_symmetric_key.
-TSqlParserListener.prototype.exitDrop_symmetric_key = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_synonym.
-TSqlParserListener.prototype.enterDrop_synonym = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_synonym.
-TSqlParserListener.prototype.exitDrop_synonym = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_user.
-TSqlParserListener.prototype.enterDrop_user = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_user.
-TSqlParserListener.prototype.exitDrop_user = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_workload_group.
-TSqlParserListener.prototype.enterDrop_workload_group = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_workload_group.
-TSqlParserListener.prototype.exitDrop_workload_group = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_xml_schema_collection.
-TSqlParserListener.prototype.enterDrop_xml_schema_collection = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_xml_schema_collection.
-TSqlParserListener.prototype.exitDrop_xml_schema_collection = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#disable_trigger.
-TSqlParserListener.prototype.enterDisable_trigger = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#disable_trigger.
-TSqlParserListener.prototype.exitDisable_trigger = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#enable_trigger.
-TSqlParserListener.prototype.enterEnable_trigger = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#enable_trigger.
-TSqlParserListener.prototype.exitEnable_trigger = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#lock_table.
-TSqlParserListener.prototype.enterLock_table = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#lock_table.
-TSqlParserListener.prototype.exitLock_table = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#truncate_table.
-TSqlParserListener.prototype.enterTruncate_table = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#truncate_table.
-TSqlParserListener.prototype.exitTruncate_table = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_column_master_key.
-TSqlParserListener.prototype.enterCreate_column_master_key = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_column_master_key.
-TSqlParserListener.prototype.exitCreate_column_master_key = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_credential.
-TSqlParserListener.prototype.enterAlter_credential = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_credential.
-TSqlParserListener.prototype.exitAlter_credential = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_credential.
-TSqlParserListener.prototype.enterCreate_credential = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_credential.
-TSqlParserListener.prototype.exitCreate_credential = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_cryptographic_provider.
-TSqlParserListener.prototype.enterAlter_cryptographic_provider = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_cryptographic_provider.
-TSqlParserListener.prototype.exitAlter_cryptographic_provider = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_cryptographic_provider.
-TSqlParserListener.prototype.enterCreate_cryptographic_provider = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_cryptographic_provider.
-TSqlParserListener.prototype.exitCreate_cryptographic_provider = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_event_notification.
-TSqlParserListener.prototype.enterCreate_event_notification = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_event_notification.
-TSqlParserListener.prototype.exitCreate_event_notification = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_or_alter_event_session.
-TSqlParserListener.prototype.enterCreate_or_alter_event_session = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_or_alter_event_session.
-TSqlParserListener.prototype.exitCreate_or_alter_event_session = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#event_session_predicate_expression.
-TSqlParserListener.prototype.enterEvent_session_predicate_expression = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#event_session_predicate_expression.
-TSqlParserListener.prototype.exitEvent_session_predicate_expression = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#event_session_predicate_factor.
-TSqlParserListener.prototype.enterEvent_session_predicate_factor = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#event_session_predicate_factor.
-TSqlParserListener.prototype.exitEvent_session_predicate_factor = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#event_session_predicate_leaf.
-TSqlParserListener.prototype.enterEvent_session_predicate_leaf = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#event_session_predicate_leaf.
-TSqlParserListener.prototype.exitEvent_session_predicate_leaf = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_external_data_source.
-TSqlParserListener.prototype.enterAlter_external_data_source = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_external_data_source.
-TSqlParserListener.prototype.exitAlter_external_data_source = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_external_library.
-TSqlParserListener.prototype.enterAlter_external_library = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_external_library.
-TSqlParserListener.prototype.exitAlter_external_library = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_external_library.
-TSqlParserListener.prototype.enterCreate_external_library = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_external_library.
-TSqlParserListener.prototype.exitCreate_external_library = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_external_resource_pool.
-TSqlParserListener.prototype.enterAlter_external_resource_pool = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_external_resource_pool.
-TSqlParserListener.prototype.exitAlter_external_resource_pool = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_external_resource_pool.
-TSqlParserListener.prototype.enterCreate_external_resource_pool = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_external_resource_pool.
-TSqlParserListener.prototype.exitCreate_external_resource_pool = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_fulltext_catalog.
-TSqlParserListener.prototype.enterAlter_fulltext_catalog = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_fulltext_catalog.
-TSqlParserListener.prototype.exitAlter_fulltext_catalog = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_fulltext_catalog.
-TSqlParserListener.prototype.enterCreate_fulltext_catalog = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_fulltext_catalog.
-TSqlParserListener.prototype.exitCreate_fulltext_catalog = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_fulltext_stoplist.
-TSqlParserListener.prototype.enterAlter_fulltext_stoplist = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_fulltext_stoplist.
-TSqlParserListener.prototype.exitAlter_fulltext_stoplist = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_fulltext_stoplist.
-TSqlParserListener.prototype.enterCreate_fulltext_stoplist = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_fulltext_stoplist.
-TSqlParserListener.prototype.exitCreate_fulltext_stoplist = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_login_sql_server.
-TSqlParserListener.prototype.enterAlter_login_sql_server = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_login_sql_server.
-TSqlParserListener.prototype.exitAlter_login_sql_server = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_login_sql_server.
-TSqlParserListener.prototype.enterCreate_login_sql_server = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_login_sql_server.
-TSqlParserListener.prototype.exitCreate_login_sql_server = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_login_azure_sql.
-TSqlParserListener.prototype.enterAlter_login_azure_sql = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_login_azure_sql.
-TSqlParserListener.prototype.exitAlter_login_azure_sql = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_login_azure_sql.
-TSqlParserListener.prototype.enterCreate_login_azure_sql = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_login_azure_sql.
-TSqlParserListener.prototype.exitCreate_login_azure_sql = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_login_azure_sql_dw_and_pdw.
-TSqlParserListener.prototype.enterAlter_login_azure_sql_dw_and_pdw = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_login_azure_sql_dw_and_pdw.
-TSqlParserListener.prototype.exitAlter_login_azure_sql_dw_and_pdw = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_login_pdw.
-TSqlParserListener.prototype.enterCreate_login_pdw = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_login_pdw.
-TSqlParserListener.prototype.exitCreate_login_pdw = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_master_key_sql_server.
-TSqlParserListener.prototype.enterAlter_master_key_sql_server = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_master_key_sql_server.
-TSqlParserListener.prototype.exitAlter_master_key_sql_server = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_master_key_sql_server.
-TSqlParserListener.prototype.enterCreate_master_key_sql_server = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_master_key_sql_server.
-TSqlParserListener.prototype.exitCreate_master_key_sql_server = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_master_key_azure_sql.
-TSqlParserListener.prototype.enterAlter_master_key_azure_sql = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_master_key_azure_sql.
-TSqlParserListener.prototype.exitAlter_master_key_azure_sql = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_master_key_azure_sql.
-TSqlParserListener.prototype.enterCreate_master_key_azure_sql = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_master_key_azure_sql.
-TSqlParserListener.prototype.exitCreate_master_key_azure_sql = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_message_type.
-TSqlParserListener.prototype.enterAlter_message_type = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_message_type.
-TSqlParserListener.prototype.exitAlter_message_type = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_partition_function.
-TSqlParserListener.prototype.enterAlter_partition_function = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_partition_function.
-TSqlParserListener.prototype.exitAlter_partition_function = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_partition_scheme.
-TSqlParserListener.prototype.enterAlter_partition_scheme = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_partition_scheme.
-TSqlParserListener.prototype.exitAlter_partition_scheme = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_remote_service_binding.
-TSqlParserListener.prototype.enterAlter_remote_service_binding = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_remote_service_binding.
-TSqlParserListener.prototype.exitAlter_remote_service_binding = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_remote_service_binding.
-TSqlParserListener.prototype.enterCreate_remote_service_binding = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_remote_service_binding.
-TSqlParserListener.prototype.exitCreate_remote_service_binding = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_resource_pool.
-TSqlParserListener.prototype.enterCreate_resource_pool = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_resource_pool.
-TSqlParserListener.prototype.exitCreate_resource_pool = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_resource_governor.
-TSqlParserListener.prototype.enterAlter_resource_governor = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_resource_governor.
-TSqlParserListener.prototype.exitAlter_resource_governor = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_db_role.
-TSqlParserListener.prototype.enterAlter_db_role = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_db_role.
-TSqlParserListener.prototype.exitAlter_db_role = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_db_role.
-TSqlParserListener.prototype.enterCreate_db_role = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_db_role.
-TSqlParserListener.prototype.exitCreate_db_role = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_route.
-TSqlParserListener.prototype.enterCreate_route = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_route.
-TSqlParserListener.prototype.exitCreate_route = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_rule.
-TSqlParserListener.prototype.enterCreate_rule = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_rule.
-TSqlParserListener.prototype.exitCreate_rule = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_schema_sql.
-TSqlParserListener.prototype.enterAlter_schema_sql = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_schema_sql.
-TSqlParserListener.prototype.exitAlter_schema_sql = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_schema.
-TSqlParserListener.prototype.enterCreate_schema = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_schema.
-TSqlParserListener.prototype.exitCreate_schema = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_schema_azure_sql_dw_and_pdw.
-TSqlParserListener.prototype.enterCreate_schema_azure_sql_dw_and_pdw = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_schema_azure_sql_dw_and_pdw.
-TSqlParserListener.prototype.exitCreate_schema_azure_sql_dw_and_pdw = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_schema_azure_sql_dw_and_pdw.
-TSqlParserListener.prototype.enterAlter_schema_azure_sql_dw_and_pdw = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_schema_azure_sql_dw_and_pdw.
-TSqlParserListener.prototype.exitAlter_schema_azure_sql_dw_and_pdw = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_search_property_list.
-TSqlParserListener.prototype.enterCreate_search_property_list = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_search_property_list.
-TSqlParserListener.prototype.exitCreate_search_property_list = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_security_policy.
-TSqlParserListener.prototype.enterCreate_security_policy = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_security_policy.
-TSqlParserListener.prototype.exitCreate_security_policy = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_sequence.
-TSqlParserListener.prototype.enterAlter_sequence = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_sequence.
-TSqlParserListener.prototype.exitAlter_sequence = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_sequence.
-TSqlParserListener.prototype.enterCreate_sequence = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_sequence.
-TSqlParserListener.prototype.exitCreate_sequence = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_server_audit.
-TSqlParserListener.prototype.enterAlter_server_audit = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_server_audit.
-TSqlParserListener.prototype.exitAlter_server_audit = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_server_audit.
-TSqlParserListener.prototype.enterCreate_server_audit = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_server_audit.
-TSqlParserListener.prototype.exitCreate_server_audit = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_server_audit_specification.
-TSqlParserListener.prototype.enterAlter_server_audit_specification = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_server_audit_specification.
-TSqlParserListener.prototype.exitAlter_server_audit_specification = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_server_audit_specification.
-TSqlParserListener.prototype.enterCreate_server_audit_specification = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_server_audit_specification.
-TSqlParserListener.prototype.exitCreate_server_audit_specification = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_server_configuration.
-TSqlParserListener.prototype.enterAlter_server_configuration = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_server_configuration.
-TSqlParserListener.prototype.exitAlter_server_configuration = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_server_role.
-TSqlParserListener.prototype.enterAlter_server_role = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_server_role.
-TSqlParserListener.prototype.exitAlter_server_role = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_server_role.
-TSqlParserListener.prototype.enterCreate_server_role = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_server_role.
-TSqlParserListener.prototype.exitCreate_server_role = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_server_role_pdw.
-TSqlParserListener.prototype.enterAlter_server_role_pdw = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_server_role_pdw.
-TSqlParserListener.prototype.exitAlter_server_role_pdw = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_service.
-TSqlParserListener.prototype.enterAlter_service = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_service.
-TSqlParserListener.prototype.exitAlter_service = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_service.
-TSqlParserListener.prototype.enterCreate_service = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_service.
-TSqlParserListener.prototype.exitCreate_service = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_service_master_key.
-TSqlParserListener.prototype.enterAlter_service_master_key = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_service_master_key.
-TSqlParserListener.prototype.exitAlter_service_master_key = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_symmetric_key.
-TSqlParserListener.prototype.enterAlter_symmetric_key = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_symmetric_key.
-TSqlParserListener.prototype.exitAlter_symmetric_key = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_symmetric_key.
-TSqlParserListener.prototype.enterCreate_symmetric_key = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_symmetric_key.
-TSqlParserListener.prototype.exitCreate_symmetric_key = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_synonym.
-TSqlParserListener.prototype.enterCreate_synonym = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_synonym.
-TSqlParserListener.prototype.exitCreate_synonym = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_user.
-TSqlParserListener.prototype.enterAlter_user = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_user.
-TSqlParserListener.prototype.exitAlter_user = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_user.
-TSqlParserListener.prototype.enterCreate_user = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_user.
-TSqlParserListener.prototype.exitCreate_user = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_user_azure_sql_dw.
-TSqlParserListener.prototype.enterCreate_user_azure_sql_dw = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_user_azure_sql_dw.
-TSqlParserListener.prototype.exitCreate_user_azure_sql_dw = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_user_azure_sql.
-TSqlParserListener.prototype.enterAlter_user_azure_sql = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_user_azure_sql.
-TSqlParserListener.prototype.exitAlter_user_azure_sql = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_workload_group.
-TSqlParserListener.prototype.enterAlter_workload_group = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_workload_group.
-TSqlParserListener.prototype.exitAlter_workload_group = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_workload_group.
-TSqlParserListener.prototype.enterCreate_workload_group = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_workload_group.
-TSqlParserListener.prototype.exitCreate_workload_group = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_xml_schema_collection.
-TSqlParserListener.prototype.enterCreate_xml_schema_collection = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_xml_schema_collection.
-TSqlParserListener.prototype.exitCreate_xml_schema_collection = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_queue.
-TSqlParserListener.prototype.enterCreate_queue = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_queue.
-TSqlParserListener.prototype.exitCreate_queue = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#queue_settings.
-TSqlParserListener.prototype.enterQueue_settings = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#queue_settings.
-TSqlParserListener.prototype.exitQueue_settings = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_queue.
-TSqlParserListener.prototype.enterAlter_queue = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_queue.
-TSqlParserListener.prototype.exitAlter_queue = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#queue_action.
-TSqlParserListener.prototype.enterQueue_action = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#queue_action.
-TSqlParserListener.prototype.exitQueue_action = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#queue_rebuild_options.
-TSqlParserListener.prototype.enterQueue_rebuild_options = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#queue_rebuild_options.
-TSqlParserListener.prototype.exitQueue_rebuild_options = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_contract.
-TSqlParserListener.prototype.enterCreate_contract = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_contract.
-TSqlParserListener.prototype.exitCreate_contract = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#conversation_statement.
-TSqlParserListener.prototype.enterConversation_statement = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#conversation_statement.
-TSqlParserListener.prototype.exitConversation_statement = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#message_statement.
-TSqlParserListener.prototype.enterMessage_statement = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#message_statement.
-TSqlParserListener.prototype.exitMessage_statement = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#merge_statement.
-TSqlParserListener.prototype.enterMerge_statement = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#merge_statement.
-TSqlParserListener.prototype.exitMerge_statement = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#merge_matched.
-TSqlParserListener.prototype.enterMerge_matched = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#merge_matched.
-TSqlParserListener.prototype.exitMerge_matched = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#merge_not_matched.
-TSqlParserListener.prototype.enterMerge_not_matched = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#merge_not_matched.
-TSqlParserListener.prototype.exitMerge_not_matched = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#delete_statement.
-TSqlParserListener.prototype.enterDelete_statement = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#delete_statement.
-TSqlParserListener.prototype.exitDelete_statement = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#delete_statement_from.
-TSqlParserListener.prototype.enterDelete_statement_from = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#delete_statement_from.
-TSqlParserListener.prototype.exitDelete_statement_from = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#insert_statement.
-TSqlParserListener.prototype.enterInsert_statement = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#insert_statement.
-TSqlParserListener.prototype.exitInsert_statement = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#insert_statement_value.
-TSqlParserListener.prototype.enterInsert_statement_value = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#insert_statement_value.
-TSqlParserListener.prototype.exitInsert_statement_value = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#receive_statement.
-TSqlParserListener.prototype.enterReceive_statement = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#receive_statement.
-TSqlParserListener.prototype.exitReceive_statement = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#select_statement.
-TSqlParserListener.prototype.enterSelect_statement = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#select_statement.
-TSqlParserListener.prototype.exitSelect_statement = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#time.
-TSqlParserListener.prototype.enterTime = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#time.
-TSqlParserListener.prototype.exitTime = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#update_statement.
-TSqlParserListener.prototype.enterUpdate_statement = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#update_statement.
-TSqlParserListener.prototype.exitUpdate_statement = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#output_clause.
-TSqlParserListener.prototype.enterOutput_clause = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#output_clause.
-TSqlParserListener.prototype.exitOutput_clause = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#output_dml_list_elem.
-TSqlParserListener.prototype.enterOutput_dml_list_elem = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#output_dml_list_elem.
-TSqlParserListener.prototype.exitOutput_dml_list_elem = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#output_column_name.
-TSqlParserListener.prototype.enterOutput_column_name = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#output_column_name.
-TSqlParserListener.prototype.exitOutput_column_name = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_database.
-TSqlParserListener.prototype.enterCreate_database = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_database.
-TSqlParserListener.prototype.exitCreate_database = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_index.
-TSqlParserListener.prototype.enterCreate_index = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_index.
-TSqlParserListener.prototype.exitCreate_index = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_or_alter_procedure.
-TSqlParserListener.prototype.enterCreate_or_alter_procedure = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_or_alter_procedure.
-TSqlParserListener.prototype.exitCreate_or_alter_procedure = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_or_alter_trigger.
-TSqlParserListener.prototype.enterCreate_or_alter_trigger = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_or_alter_trigger.
-TSqlParserListener.prototype.exitCreate_or_alter_trigger = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_or_alter_dml_trigger.
-TSqlParserListener.prototype.enterCreate_or_alter_dml_trigger = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_or_alter_dml_trigger.
-TSqlParserListener.prototype.exitCreate_or_alter_dml_trigger = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#dml_trigger_option.
-TSqlParserListener.prototype.enterDml_trigger_option = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#dml_trigger_option.
-TSqlParserListener.prototype.exitDml_trigger_option = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#dml_trigger_operation.
-TSqlParserListener.prototype.enterDml_trigger_operation = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#dml_trigger_operation.
-TSqlParserListener.prototype.exitDml_trigger_operation = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_or_alter_ddl_trigger.
-TSqlParserListener.prototype.enterCreate_or_alter_ddl_trigger = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_or_alter_ddl_trigger.
-TSqlParserListener.prototype.exitCreate_or_alter_ddl_trigger = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#ddl_trigger_operation.
-TSqlParserListener.prototype.enterDdl_trigger_operation = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#ddl_trigger_operation.
-TSqlParserListener.prototype.exitDdl_trigger_operation = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_or_alter_function.
-TSqlParserListener.prototype.enterCreate_or_alter_function = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_or_alter_function.
-TSqlParserListener.prototype.exitCreate_or_alter_function = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#func_body_returns_select.
-TSqlParserListener.prototype.enterFunc_body_returns_select = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#func_body_returns_select.
-TSqlParserListener.prototype.exitFunc_body_returns_select = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#func_body_returns_table.
-TSqlParserListener.prototype.enterFunc_body_returns_table = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#func_body_returns_table.
-TSqlParserListener.prototype.exitFunc_body_returns_table = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#func_body_returns_scalar.
-TSqlParserListener.prototype.enterFunc_body_returns_scalar = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#func_body_returns_scalar.
-TSqlParserListener.prototype.exitFunc_body_returns_scalar = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#procedure_param.
-TSqlParserListener.prototype.enterProcedure_param = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#procedure_param.
-TSqlParserListener.prototype.exitProcedure_param = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#procedure_option.
-TSqlParserListener.prototype.enterProcedure_option = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#procedure_option.
-TSqlParserListener.prototype.exitProcedure_option = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#function_option.
-TSqlParserListener.prototype.enterFunction_option = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#function_option.
-TSqlParserListener.prototype.exitFunction_option = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_statistics.
-TSqlParserListener.prototype.enterCreate_statistics = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_statistics.
-TSqlParserListener.prototype.exitCreate_statistics = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#update_statistics.
-TSqlParserListener.prototype.enterUpdate_statistics = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#update_statistics.
-TSqlParserListener.prototype.exitUpdate_statistics = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_table.
-TSqlParserListener.prototype.enterCreate_table = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_table.
-TSqlParserListener.prototype.exitCreate_table = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#table_options.
-TSqlParserListener.prototype.enterTable_options = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#table_options.
-TSqlParserListener.prototype.exitTable_options = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_view.
-TSqlParserListener.prototype.enterCreate_view = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_view.
-TSqlParserListener.prototype.exitCreate_view = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#view_attribute.
-TSqlParserListener.prototype.enterView_attribute = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#view_attribute.
-TSqlParserListener.prototype.exitView_attribute = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_table.
-TSqlParserListener.prototype.enterAlter_table = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_table.
-TSqlParserListener.prototype.exitAlter_table = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_database.
-TSqlParserListener.prototype.enterAlter_database = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_database.
-TSqlParserListener.prototype.exitAlter_database = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#database_optionspec.
-TSqlParserListener.prototype.enterDatabase_optionspec = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#database_optionspec.
-TSqlParserListener.prototype.exitDatabase_optionspec = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#auto_option.
-TSqlParserListener.prototype.enterAuto_option = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#auto_option.
-TSqlParserListener.prototype.exitAuto_option = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#change_tracking_option.
-TSqlParserListener.prototype.enterChange_tracking_option = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#change_tracking_option.
-TSqlParserListener.prototype.exitChange_tracking_option = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#change_tracking_option_list.
-TSqlParserListener.prototype.enterChange_tracking_option_list = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#change_tracking_option_list.
-TSqlParserListener.prototype.exitChange_tracking_option_list = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#containment_option.
-TSqlParserListener.prototype.enterContainment_option = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#containment_option.
-TSqlParserListener.prototype.exitContainment_option = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#cursor_option.
-TSqlParserListener.prototype.enterCursor_option = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#cursor_option.
-TSqlParserListener.prototype.exitCursor_option = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#alter_endpoint.
-TSqlParserListener.prototype.enterAlter_endpoint = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#alter_endpoint.
-TSqlParserListener.prototype.exitAlter_endpoint = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#database_mirroring_option.
-TSqlParserListener.prototype.enterDatabase_mirroring_option = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#database_mirroring_option.
-TSqlParserListener.prototype.exitDatabase_mirroring_option = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#mirroring_set_option.
-TSqlParserListener.prototype.enterMirroring_set_option = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#mirroring_set_option.
-TSqlParserListener.prototype.exitMirroring_set_option = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#mirroring_partner.
-TSqlParserListener.prototype.enterMirroring_partner = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#mirroring_partner.
-TSqlParserListener.prototype.exitMirroring_partner = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#mirroring_witness.
-TSqlParserListener.prototype.enterMirroring_witness = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#mirroring_witness.
-TSqlParserListener.prototype.exitMirroring_witness = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#witness_partner_equal.
-TSqlParserListener.prototype.enterWitness_partner_equal = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#witness_partner_equal.
-TSqlParserListener.prototype.exitWitness_partner_equal = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#partner_option.
-TSqlParserListener.prototype.enterPartner_option = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#partner_option.
-TSqlParserListener.prototype.exitPartner_option = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#witness_option.
-TSqlParserListener.prototype.enterWitness_option = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#witness_option.
-TSqlParserListener.prototype.exitWitness_option = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#witness_server.
-TSqlParserListener.prototype.enterWitness_server = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#witness_server.
-TSqlParserListener.prototype.exitWitness_server = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#partner_server.
-TSqlParserListener.prototype.enterPartner_server = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#partner_server.
-TSqlParserListener.prototype.exitPartner_server = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#mirroring_host_port_seperator.
-TSqlParserListener.prototype.enterMirroring_host_port_seperator = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#mirroring_host_port_seperator.
-TSqlParserListener.prototype.exitMirroring_host_port_seperator = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#partner_server_tcp_prefix.
-TSqlParserListener.prototype.enterPartner_server_tcp_prefix = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#partner_server_tcp_prefix.
-TSqlParserListener.prototype.exitPartner_server_tcp_prefix = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#port_number.
-TSqlParserListener.prototype.enterPort_number = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#port_number.
-TSqlParserListener.prototype.exitPort_number = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#host.
-TSqlParserListener.prototype.enterHost = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#host.
-TSqlParserListener.prototype.exitHost = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#date_correlation_optimization_option.
-TSqlParserListener.prototype.enterDate_correlation_optimization_option = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#date_correlation_optimization_option.
-TSqlParserListener.prototype.exitDate_correlation_optimization_option = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#db_encryption_option.
-TSqlParserListener.prototype.enterDb_encryption_option = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#db_encryption_option.
-TSqlParserListener.prototype.exitDb_encryption_option = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#db_state_option.
-TSqlParserListener.prototype.enterDb_state_option = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#db_state_option.
-TSqlParserListener.prototype.exitDb_state_option = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#db_update_option.
-TSqlParserListener.prototype.enterDb_update_option = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#db_update_option.
-TSqlParserListener.prototype.exitDb_update_option = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#db_user_access_option.
-TSqlParserListener.prototype.enterDb_user_access_option = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#db_user_access_option.
-TSqlParserListener.prototype.exitDb_user_access_option = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#delayed_durability_option.
-TSqlParserListener.prototype.enterDelayed_durability_option = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#delayed_durability_option.
-TSqlParserListener.prototype.exitDelayed_durability_option = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#external_access_option.
-TSqlParserListener.prototype.enterExternal_access_option = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#external_access_option.
-TSqlParserListener.prototype.exitExternal_access_option = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#hadr_options.
-TSqlParserListener.prototype.enterHadr_options = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#hadr_options.
-TSqlParserListener.prototype.exitHadr_options = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#mixed_page_allocation_option.
-TSqlParserListener.prototype.enterMixed_page_allocation_option = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#mixed_page_allocation_option.
-TSqlParserListener.prototype.exitMixed_page_allocation_option = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#parameterization_option.
-TSqlParserListener.prototype.enterParameterization_option = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#parameterization_option.
-TSqlParserListener.prototype.exitParameterization_option = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#recovery_option.
-TSqlParserListener.prototype.enterRecovery_option = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#recovery_option.
-TSqlParserListener.prototype.exitRecovery_option = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#service_broker_option.
-TSqlParserListener.prototype.enterService_broker_option = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#service_broker_option.
-TSqlParserListener.prototype.exitService_broker_option = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#snapshot_option.
-TSqlParserListener.prototype.enterSnapshot_option = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#snapshot_option.
-TSqlParserListener.prototype.exitSnapshot_option = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#sql_option.
-TSqlParserListener.prototype.enterSql_option = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#sql_option.
-TSqlParserListener.prototype.exitSql_option = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#target_recovery_time_option.
-TSqlParserListener.prototype.enterTarget_recovery_time_option = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#target_recovery_time_option.
-TSqlParserListener.prototype.exitTarget_recovery_time_option = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#termination.
-TSqlParserListener.prototype.enterTermination = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#termination.
-TSqlParserListener.prototype.exitTermination = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_index.
-TSqlParserListener.prototype.enterDrop_index = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_index.
-TSqlParserListener.prototype.exitDrop_index = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_relational_or_xml_or_spatial_index.
-TSqlParserListener.prototype.enterDrop_relational_or_xml_or_spatial_index = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_relational_or_xml_or_spatial_index.
-TSqlParserListener.prototype.exitDrop_relational_or_xml_or_spatial_index = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_backward_compatible_index.
-TSqlParserListener.prototype.enterDrop_backward_compatible_index = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_backward_compatible_index.
-TSqlParserListener.prototype.exitDrop_backward_compatible_index = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_procedure.
-TSqlParserListener.prototype.enterDrop_procedure = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_procedure.
-TSqlParserListener.prototype.exitDrop_procedure = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_trigger.
-TSqlParserListener.prototype.enterDrop_trigger = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_trigger.
-TSqlParserListener.prototype.exitDrop_trigger = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_dml_trigger.
-TSqlParserListener.prototype.enterDrop_dml_trigger = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_dml_trigger.
-TSqlParserListener.prototype.exitDrop_dml_trigger = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_ddl_trigger.
-TSqlParserListener.prototype.enterDrop_ddl_trigger = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_ddl_trigger.
-TSqlParserListener.prototype.exitDrop_ddl_trigger = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_function.
-TSqlParserListener.prototype.enterDrop_function = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_function.
-TSqlParserListener.prototype.exitDrop_function = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_statistics.
-TSqlParserListener.prototype.enterDrop_statistics = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_statistics.
-TSqlParserListener.prototype.exitDrop_statistics = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_table.
-TSqlParserListener.prototype.enterDrop_table = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_table.
-TSqlParserListener.prototype.exitDrop_table = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_view.
-TSqlParserListener.prototype.enterDrop_view = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_view.
-TSqlParserListener.prototype.exitDrop_view = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_type.
-TSqlParserListener.prototype.enterCreate_type = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_type.
-TSqlParserListener.prototype.exitCreate_type = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#drop_type.
-TSqlParserListener.prototype.enterDrop_type = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#drop_type.
-TSqlParserListener.prototype.exitDrop_type = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#rowset_function_limited.
-TSqlParserListener.prototype.enterRowset_function_limited = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#rowset_function_limited.
-TSqlParserListener.prototype.exitRowset_function_limited = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#openquery.
-TSqlParserListener.prototype.enterOpenquery = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#openquery.
-TSqlParserListener.prototype.exitOpenquery = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#opendatasource.
-TSqlParserListener.prototype.enterOpendatasource = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#opendatasource.
-TSqlParserListener.prototype.exitOpendatasource = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#declare_statement.
-TSqlParserListener.prototype.enterDeclare_statement = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#declare_statement.
-TSqlParserListener.prototype.exitDeclare_statement = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#cursor_statement.
-TSqlParserListener.prototype.enterCursor_statement = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#cursor_statement.
-TSqlParserListener.prototype.exitCursor_statement = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#backup_database.
-TSqlParserListener.prototype.enterBackup_database = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#backup_database.
-TSqlParserListener.prototype.exitBackup_database = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#backup_log.
-TSqlParserListener.prototype.enterBackup_log = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#backup_log.
-TSqlParserListener.prototype.exitBackup_log = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#backup_certificate.
-TSqlParserListener.prototype.enterBackup_certificate = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#backup_certificate.
-TSqlParserListener.prototype.exitBackup_certificate = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#backup_master_key.
-TSqlParserListener.prototype.enterBackup_master_key = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#backup_master_key.
-TSqlParserListener.prototype.exitBackup_master_key = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#backup_service_master_key.
-TSqlParserListener.prototype.enterBackup_service_master_key = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#backup_service_master_key.
-TSqlParserListener.prototype.exitBackup_service_master_key = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#kill_statement.
-TSqlParserListener.prototype.enterKill_statement = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#kill_statement.
-TSqlParserListener.prototype.exitKill_statement = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#kill_process.
-TSqlParserListener.prototype.enterKill_process = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#kill_process.
-TSqlParserListener.prototype.exitKill_process = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#kill_query_notification.
-TSqlParserListener.prototype.enterKill_query_notification = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#kill_query_notification.
-TSqlParserListener.prototype.exitKill_query_notification = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#kill_stats_job.
-TSqlParserListener.prototype.enterKill_stats_job = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#kill_stats_job.
-TSqlParserListener.prototype.exitKill_stats_job = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#execute_statement.
-TSqlParserListener.prototype.enterExecute_statement = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#execute_statement.
-TSqlParserListener.prototype.exitExecute_statement = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#execute_body.
-TSqlParserListener.prototype.enterExecute_body = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#execute_body.
-TSqlParserListener.prototype.exitExecute_body = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#execute_statement_arg.
-TSqlParserListener.prototype.enterExecute_statement_arg = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#execute_statement_arg.
-TSqlParserListener.prototype.exitExecute_statement_arg = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#execute_var_string.
-TSqlParserListener.prototype.enterExecute_var_string = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#execute_var_string.
-TSqlParserListener.prototype.exitExecute_var_string = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#security_statement.
-TSqlParserListener.prototype.enterSecurity_statement = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#security_statement.
-TSqlParserListener.prototype.exitSecurity_statement = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_certificate.
-TSqlParserListener.prototype.enterCreate_certificate = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_certificate.
-TSqlParserListener.prototype.exitCreate_certificate = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#existing_keys.
-TSqlParserListener.prototype.enterExisting_keys = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#existing_keys.
-TSqlParserListener.prototype.exitExisting_keys = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#private_key_options.
-TSqlParserListener.prototype.enterPrivate_key_options = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#private_key_options.
-TSqlParserListener.prototype.exitPrivate_key_options = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#generate_new_keys.
-TSqlParserListener.prototype.enterGenerate_new_keys = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#generate_new_keys.
-TSqlParserListener.prototype.exitGenerate_new_keys = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#date_options.
-TSqlParserListener.prototype.enterDate_options = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#date_options.
-TSqlParserListener.prototype.exitDate_options = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#open_key.
-TSqlParserListener.prototype.enterOpen_key = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#open_key.
-TSqlParserListener.prototype.exitOpen_key = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#close_key.
-TSqlParserListener.prototype.enterClose_key = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#close_key.
-TSqlParserListener.prototype.exitClose_key = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_key.
-TSqlParserListener.prototype.enterCreate_key = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_key.
-TSqlParserListener.prototype.exitCreate_key = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#key_options.
-TSqlParserListener.prototype.enterKey_options = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#key_options.
-TSqlParserListener.prototype.exitKey_options = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#algorithm.
-TSqlParserListener.prototype.enterAlgorithm = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#algorithm.
-TSqlParserListener.prototype.exitAlgorithm = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#encryption_mechanism.
-TSqlParserListener.prototype.enterEncryption_mechanism = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#encryption_mechanism.
-TSqlParserListener.prototype.exitEncryption_mechanism = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#decryption_mechanism.
-TSqlParserListener.prototype.enterDecryption_mechanism = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#decryption_mechanism.
-TSqlParserListener.prototype.exitDecryption_mechanism = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#grant_permission.
-TSqlParserListener.prototype.enterGrant_permission = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#grant_permission.
-TSqlParserListener.prototype.exitGrant_permission = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#set_statement.
-TSqlParserListener.prototype.enterSet_statement = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#set_statement.
-TSqlParserListener.prototype.exitSet_statement = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#transaction_statement.
-TSqlParserListener.prototype.enterTransaction_statement = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#transaction_statement.
-TSqlParserListener.prototype.exitTransaction_statement = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#go_statement.
-TSqlParserListener.prototype.enterGo_statement = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#go_statement.
-TSqlParserListener.prototype.exitGo_statement = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#use_statement.
-TSqlParserListener.prototype.enterUse_statement = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#use_statement.
-TSqlParserListener.prototype.exitUse_statement = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#setuser_statement.
-TSqlParserListener.prototype.enterSetuser_statement = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#setuser_statement.
-TSqlParserListener.prototype.exitSetuser_statement = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#reconfigure_statement.
-TSqlParserListener.prototype.enterReconfigure_statement = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#reconfigure_statement.
-TSqlParserListener.prototype.exitReconfigure_statement = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#shutdown_statement.
-TSqlParserListener.prototype.enterShutdown_statement = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#shutdown_statement.
-TSqlParserListener.prototype.exitShutdown_statement = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#dbcc_clause.
-TSqlParserListener.prototype.enterDbcc_clause = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#dbcc_clause.
-TSqlParserListener.prototype.exitDbcc_clause = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#dbcc_options.
-TSqlParserListener.prototype.enterDbcc_options = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#dbcc_options.
-TSqlParserListener.prototype.exitDbcc_options = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#execute_clause.
-TSqlParserListener.prototype.enterExecute_clause = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#execute_clause.
-TSqlParserListener.prototype.exitExecute_clause = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#declare_local.
-TSqlParserListener.prototype.enterDeclare_local = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#declare_local.
-TSqlParserListener.prototype.exitDeclare_local = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#table_type_definition.
-TSqlParserListener.prototype.enterTable_type_definition = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#table_type_definition.
-TSqlParserListener.prototype.exitTable_type_definition = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#xml_type_definition.
-TSqlParserListener.prototype.enterXml_type_definition = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#xml_type_definition.
-TSqlParserListener.prototype.exitXml_type_definition = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#xml_schema_collection.
-TSqlParserListener.prototype.enterXml_schema_collection = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#xml_schema_collection.
-TSqlParserListener.prototype.exitXml_schema_collection = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#column_def_table_constraints.
-TSqlParserListener.prototype.enterColumn_def_table_constraints = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#column_def_table_constraints.
-TSqlParserListener.prototype.exitColumn_def_table_constraints = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#column_def_table_constraint.
-TSqlParserListener.prototype.enterColumn_def_table_constraint = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#column_def_table_constraint.
-TSqlParserListener.prototype.exitColumn_def_table_constraint = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#column_definition.
-TSqlParserListener.prototype.enterColumn_definition = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#column_definition.
-TSqlParserListener.prototype.exitColumn_definition = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#materialized_column_definition.
-TSqlParserListener.prototype.enterMaterialized_column_definition = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#materialized_column_definition.
-TSqlParserListener.prototype.exitMaterialized_column_definition = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#column_constraint.
-TSqlParserListener.prototype.enterColumn_constraint = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#column_constraint.
-TSqlParserListener.prototype.exitColumn_constraint = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#table_constraint.
-TSqlParserListener.prototype.enterTable_constraint = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#table_constraint.
-TSqlParserListener.prototype.exitTable_constraint = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#on_delete.
-TSqlParserListener.prototype.enterOn_delete = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#on_delete.
-TSqlParserListener.prototype.exitOn_delete = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#on_update.
-TSqlParserListener.prototype.enterOn_update = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#on_update.
-TSqlParserListener.prototype.exitOn_update = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#index_options.
-TSqlParserListener.prototype.enterIndex_options = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#index_options.
-TSqlParserListener.prototype.exitIndex_options = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#index_option.
-TSqlParserListener.prototype.enterIndex_option = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#index_option.
-TSqlParserListener.prototype.exitIndex_option = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#declare_cursor.
-TSqlParserListener.prototype.enterDeclare_cursor = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#declare_cursor.
-TSqlParserListener.prototype.exitDeclare_cursor = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#declare_set_cursor_common.
-TSqlParserListener.prototype.enterDeclare_set_cursor_common = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#declare_set_cursor_common.
-TSqlParserListener.prototype.exitDeclare_set_cursor_common = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#declare_set_cursor_common_partial.
-TSqlParserListener.prototype.enterDeclare_set_cursor_common_partial = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#declare_set_cursor_common_partial.
-TSqlParserListener.prototype.exitDeclare_set_cursor_common_partial = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#fetch_cursor.
-TSqlParserListener.prototype.enterFetch_cursor = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#fetch_cursor.
-TSqlParserListener.prototype.exitFetch_cursor = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#set_special.
-TSqlParserListener.prototype.enterSet_special = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#set_special.
-TSqlParserListener.prototype.exitSet_special = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#constant_LOCAL_ID.
-TSqlParserListener.prototype.enterConstant_LOCAL_ID = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#constant_LOCAL_ID.
-TSqlParserListener.prototype.exitConstant_LOCAL_ID = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#expression.
-TSqlParserListener.prototype.enterExpression = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#expression.
-TSqlParserListener.prototype.exitExpression = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#primitive_expression.
-TSqlParserListener.prototype.enterPrimitive_expression = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#primitive_expression.
-TSqlParserListener.prototype.exitPrimitive_expression = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#case_expression.
-TSqlParserListener.prototype.enterCase_expression = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#case_expression.
-TSqlParserListener.prototype.exitCase_expression = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#unary_operator_expression.
-TSqlParserListener.prototype.enterUnary_operator_expression = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#unary_operator_expression.
-TSqlParserListener.prototype.exitUnary_operator_expression = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#bracket_expression.
-TSqlParserListener.prototype.enterBracket_expression = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#bracket_expression.
-TSqlParserListener.prototype.exitBracket_expression = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#constant_expression.
-TSqlParserListener.prototype.enterConstant_expression = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#constant_expression.
-TSqlParserListener.prototype.exitConstant_expression = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#subquery.
-TSqlParserListener.prototype.enterSubquery = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#subquery.
-TSqlParserListener.prototype.exitSubquery = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#with_expression.
-TSqlParserListener.prototype.enterWith_expression = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#with_expression.
-TSqlParserListener.prototype.exitWith_expression = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#common_table_expression.
-TSqlParserListener.prototype.enterCommon_table_expression = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#common_table_expression.
-TSqlParserListener.prototype.exitCommon_table_expression = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#update_elem.
-TSqlParserListener.prototype.enterUpdate_elem = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#update_elem.
-TSqlParserListener.prototype.exitUpdate_elem = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#search_condition_list.
-TSqlParserListener.prototype.enterSearch_condition_list = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#search_condition_list.
-TSqlParserListener.prototype.exitSearch_condition_list = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#search_condition.
-TSqlParserListener.prototype.enterSearch_condition = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#search_condition.
-TSqlParserListener.prototype.exitSearch_condition = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#search_condition_and.
-TSqlParserListener.prototype.enterSearch_condition_and = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#search_condition_and.
-TSqlParserListener.prototype.exitSearch_condition_and = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#search_condition_not.
-TSqlParserListener.prototype.enterSearch_condition_not = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#search_condition_not.
-TSqlParserListener.prototype.exitSearch_condition_not = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#predicate.
-TSqlParserListener.prototype.enterPredicate = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#predicate.
-TSqlParserListener.prototype.exitPredicate = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#query_expression.
-TSqlParserListener.prototype.enterQuery_expression = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#query_expression.
-TSqlParserListener.prototype.exitQuery_expression = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#sql_union.
-TSqlParserListener.prototype.enterSql_union = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#sql_union.
-TSqlParserListener.prototype.exitSql_union = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#query_specification.
-TSqlParserListener.prototype.enterQuery_specification = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#query_specification.
-TSqlParserListener.prototype.exitQuery_specification = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#top_clause.
-TSqlParserListener.prototype.enterTop_clause = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#top_clause.
-TSqlParserListener.prototype.exitTop_clause = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#top_percent.
-TSqlParserListener.prototype.enterTop_percent = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#top_percent.
-TSqlParserListener.prototype.exitTop_percent = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#top_count.
-TSqlParserListener.prototype.enterTop_count = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#top_count.
-TSqlParserListener.prototype.exitTop_count = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#order_by_clause.
-TSqlParserListener.prototype.enterOrder_by_clause = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#order_by_clause.
-TSqlParserListener.prototype.exitOrder_by_clause = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#for_clause.
-TSqlParserListener.prototype.enterFor_clause = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#for_clause.
-TSqlParserListener.prototype.exitFor_clause = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#xml_common_directives.
-TSqlParserListener.prototype.enterXml_common_directives = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#xml_common_directives.
-TSqlParserListener.prototype.exitXml_common_directives = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#order_by_expression.
-TSqlParserListener.prototype.enterOrder_by_expression = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#order_by_expression.
-TSqlParserListener.prototype.exitOrder_by_expression = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#group_by_item.
-TSqlParserListener.prototype.enterGroup_by_item = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#group_by_item.
-TSqlParserListener.prototype.exitGroup_by_item = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#option_clause.
-TSqlParserListener.prototype.enterOption_clause = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#option_clause.
-TSqlParserListener.prototype.exitOption_clause = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#option.
-TSqlParserListener.prototype.enterOption = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#option.
-TSqlParserListener.prototype.exitOption = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#optimize_for_arg.
-TSqlParserListener.prototype.enterOptimize_for_arg = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#optimize_for_arg.
-TSqlParserListener.prototype.exitOptimize_for_arg = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#select_list.
-TSqlParserListener.prototype.enterSelect_list = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#select_list.
-TSqlParserListener.prototype.exitSelect_list = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#udt_method_arguments.
-TSqlParserListener.prototype.enterUdt_method_arguments = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#udt_method_arguments.
-TSqlParserListener.prototype.exitUdt_method_arguments = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#asterisk.
-TSqlParserListener.prototype.enterAsterisk = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#asterisk.
-TSqlParserListener.prototype.exitAsterisk = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#column_elem.
-TSqlParserListener.prototype.enterColumn_elem = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#column_elem.
-TSqlParserListener.prototype.exitColumn_elem = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#udt_elem.
-TSqlParserListener.prototype.enterUdt_elem = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#udt_elem.
-TSqlParserListener.prototype.exitUdt_elem = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#expression_elem.
-TSqlParserListener.prototype.enterExpression_elem = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#expression_elem.
-TSqlParserListener.prototype.exitExpression_elem = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#select_list_elem.
-TSqlParserListener.prototype.enterSelect_list_elem = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#select_list_elem.
-TSqlParserListener.prototype.exitSelect_list_elem = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#table_sources.
-TSqlParserListener.prototype.enterTable_sources = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#table_sources.
-TSqlParserListener.prototype.exitTable_sources = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#table_source.
-TSqlParserListener.prototype.enterTable_source = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#table_source.
-TSqlParserListener.prototype.exitTable_source = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#table_source_item_joined.
-TSqlParserListener.prototype.enterTable_source_item_joined = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#table_source_item_joined.
-TSqlParserListener.prototype.exitTable_source_item_joined = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#table_source_item.
-TSqlParserListener.prototype.enterTable_source_item = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#table_source_item.
-TSqlParserListener.prototype.exitTable_source_item = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#open_xml.
-TSqlParserListener.prototype.enterOpen_xml = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#open_xml.
-TSqlParserListener.prototype.exitOpen_xml = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#schema_declaration.
-TSqlParserListener.prototype.enterSchema_declaration = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#schema_declaration.
-TSqlParserListener.prototype.exitSchema_declaration = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#column_declaration.
-TSqlParserListener.prototype.enterColumn_declaration = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#column_declaration.
-TSqlParserListener.prototype.exitColumn_declaration = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#change_table.
-TSqlParserListener.prototype.enterChange_table = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#change_table.
-TSqlParserListener.prototype.exitChange_table = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#join_part.
-TSqlParserListener.prototype.enterJoin_part = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#join_part.
-TSqlParserListener.prototype.exitJoin_part = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#pivot_clause.
-TSqlParserListener.prototype.enterPivot_clause = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#pivot_clause.
-TSqlParserListener.prototype.exitPivot_clause = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#unpivot_clause.
-TSqlParserListener.prototype.enterUnpivot_clause = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#unpivot_clause.
-TSqlParserListener.prototype.exitUnpivot_clause = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#full_column_name_list.
-TSqlParserListener.prototype.enterFull_column_name_list = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#full_column_name_list.
-TSqlParserListener.prototype.exitFull_column_name_list = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#table_name_with_hint.
-TSqlParserListener.prototype.enterTable_name_with_hint = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#table_name_with_hint.
-TSqlParserListener.prototype.exitTable_name_with_hint = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#rowset_function.
-TSqlParserListener.prototype.enterRowset_function = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#rowset_function.
-TSqlParserListener.prototype.exitRowset_function = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#bulk_option.
-TSqlParserListener.prototype.enterBulk_option = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#bulk_option.
-TSqlParserListener.prototype.exitBulk_option = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#derived_table.
-TSqlParserListener.prototype.enterDerived_table = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#derived_table.
-TSqlParserListener.prototype.exitDerived_table = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#BINARY_CHECKSUM.
-TSqlParserListener.prototype.enterBINARY_CHECKSUM = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#BINARY_CHECKSUM.
-TSqlParserListener.prototype.exitBINARY_CHECKSUM = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#CAST.
-TSqlParserListener.prototype.enterCAST = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#CAST.
-TSqlParserListener.prototype.exitCAST = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#CONVERT.
-TSqlParserListener.prototype.enterCONVERT = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#CONVERT.
-TSqlParserListener.prototype.exitCONVERT = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#CHECKSUM.
-TSqlParserListener.prototype.enterCHECKSUM = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#CHECKSUM.
-TSqlParserListener.prototype.exitCHECKSUM = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#COALESCE.
-TSqlParserListener.prototype.enterCOALESCE = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#COALESCE.
-TSqlParserListener.prototype.exitCOALESCE = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#CURRENT_TIMESTAMP.
-TSqlParserListener.prototype.enterCURRENT_TIMESTAMP = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#CURRENT_TIMESTAMP.
-TSqlParserListener.prototype.exitCURRENT_TIMESTAMP = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#CURRENT_USER.
-TSqlParserListener.prototype.enterCURRENT_USER = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#CURRENT_USER.
-TSqlParserListener.prototype.exitCURRENT_USER = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#DATEADD.
-TSqlParserListener.prototype.enterDATEADD = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#DATEADD.
-TSqlParserListener.prototype.exitDATEADD = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#DATEDIFF.
-TSqlParserListener.prototype.enterDATEDIFF = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#DATEDIFF.
-TSqlParserListener.prototype.exitDATEDIFF = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#DATENAME.
-TSqlParserListener.prototype.enterDATENAME = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#DATENAME.
-TSqlParserListener.prototype.exitDATENAME = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#DATEPART.
-TSqlParserListener.prototype.enterDATEPART = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#DATEPART.
-TSqlParserListener.prototype.exitDATEPART = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#GETDATE.
-TSqlParserListener.prototype.enterGETDATE = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#GETDATE.
-TSqlParserListener.prototype.exitGETDATE = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#GETUTCDATE.
-TSqlParserListener.prototype.enterGETUTCDATE = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#GETUTCDATE.
-TSqlParserListener.prototype.exitGETUTCDATE = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#IDENTITY.
-TSqlParserListener.prototype.enterIDENTITY = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#IDENTITY.
-TSqlParserListener.prototype.exitIDENTITY = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#MIN_ACTIVE_ROWVERSION.
-TSqlParserListener.prototype.enterMIN_ACTIVE_ROWVERSION = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#MIN_ACTIVE_ROWVERSION.
-TSqlParserListener.prototype.exitMIN_ACTIVE_ROWVERSION = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#NULLIF.
-TSqlParserListener.prototype.enterNULLIF = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#NULLIF.
-TSqlParserListener.prototype.exitNULLIF = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#STUFF.
-TSqlParserListener.prototype.enterSTUFF = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#STUFF.
-TSqlParserListener.prototype.exitSTUFF = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#SESSION_USER.
-TSqlParserListener.prototype.enterSESSION_USER = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#SESSION_USER.
-TSqlParserListener.prototype.exitSESSION_USER = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#SYSTEM_USER.
-TSqlParserListener.prototype.enterSYSTEM_USER = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#SYSTEM_USER.
-TSqlParserListener.prototype.exitSYSTEM_USER = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#ISNULL.
-TSqlParserListener.prototype.enterISNULL = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#ISNULL.
-TSqlParserListener.prototype.exitISNULL = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#XML_DATA_TYPE_FUNC.
-TSqlParserListener.prototype.enterXML_DATA_TYPE_FUNC = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#XML_DATA_TYPE_FUNC.
-TSqlParserListener.prototype.exitXML_DATA_TYPE_FUNC = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#IFF.
-TSqlParserListener.prototype.enterIFF = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#IFF.
-TSqlParserListener.prototype.exitIFF = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#RANKING_WINDOWED_FUNC.
-TSqlParserListener.prototype.enterRANKING_WINDOWED_FUNC = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#RANKING_WINDOWED_FUNC.
-TSqlParserListener.prototype.exitRANKING_WINDOWED_FUNC = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#AGGREGATE_WINDOWED_FUNC.
-TSqlParserListener.prototype.enterAGGREGATE_WINDOWED_FUNC = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#AGGREGATE_WINDOWED_FUNC.
-TSqlParserListener.prototype.exitAGGREGATE_WINDOWED_FUNC = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#ANALYTIC_WINDOWED_FUNC.
-TSqlParserListener.prototype.enterANALYTIC_WINDOWED_FUNC = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#ANALYTIC_WINDOWED_FUNC.
-TSqlParserListener.prototype.exitANALYTIC_WINDOWED_FUNC = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#SCALAR_FUNCTION.
-TSqlParserListener.prototype.enterSCALAR_FUNCTION = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#SCALAR_FUNCTION.
-TSqlParserListener.prototype.exitSCALAR_FUNCTION = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#STRINGAGG.
-TSqlParserListener.prototype.enterSTRINGAGG = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#STRINGAGG.
-TSqlParserListener.prototype.exitSTRINGAGG = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#xml_data_type_methods.
-TSqlParserListener.prototype.enterXml_data_type_methods = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#xml_data_type_methods.
-TSqlParserListener.prototype.exitXml_data_type_methods = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#value_method.
-TSqlParserListener.prototype.enterValue_method = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#value_method.
-TSqlParserListener.prototype.exitValue_method = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#query_method.
-TSqlParserListener.prototype.enterQuery_method = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#query_method.
-TSqlParserListener.prototype.exitQuery_method = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#exist_method.
-TSqlParserListener.prototype.enterExist_method = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#exist_method.
-TSqlParserListener.prototype.exitExist_method = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#modify_method.
-TSqlParserListener.prototype.enterModify_method = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#modify_method.
-TSqlParserListener.prototype.exitModify_method = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#nodes_method.
-TSqlParserListener.prototype.enterNodes_method = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#nodes_method.
-TSqlParserListener.prototype.exitNodes_method = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#switch_section.
-TSqlParserListener.prototype.enterSwitch_section = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#switch_section.
-TSqlParserListener.prototype.exitSwitch_section = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#switch_search_condition_section.
-TSqlParserListener.prototype.enterSwitch_search_condition_section = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#switch_search_condition_section.
-TSqlParserListener.prototype.exitSwitch_search_condition_section = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#as_column_alias.
-TSqlParserListener.prototype.enterAs_column_alias = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#as_column_alias.
-TSqlParserListener.prototype.exitAs_column_alias = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#as_table_alias.
-TSqlParserListener.prototype.enterAs_table_alias = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#as_table_alias.
-TSqlParserListener.prototype.exitAs_table_alias = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#table_alias.
-TSqlParserListener.prototype.enterTable_alias = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#table_alias.
-TSqlParserListener.prototype.exitTable_alias = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#with_table_hints.
-TSqlParserListener.prototype.enterWith_table_hints = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#with_table_hints.
-TSqlParserListener.prototype.exitWith_table_hints = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#insert_with_table_hints.
-TSqlParserListener.prototype.enterInsert_with_table_hints = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#insert_with_table_hints.
-TSqlParserListener.prototype.exitInsert_with_table_hints = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#table_hint.
-TSqlParserListener.prototype.enterTable_hint = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#table_hint.
-TSqlParserListener.prototype.exitTable_hint = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#index_value.
-TSqlParserListener.prototype.enterIndex_value = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#index_value.
-TSqlParserListener.prototype.exitIndex_value = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#column_alias_list.
-TSqlParserListener.prototype.enterColumn_alias_list = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#column_alias_list.
-TSqlParserListener.prototype.exitColumn_alias_list = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#column_alias.
-TSqlParserListener.prototype.enterColumn_alias = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#column_alias.
-TSqlParserListener.prototype.exitColumn_alias = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#table_value_constructor.
-TSqlParserListener.prototype.enterTable_value_constructor = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#table_value_constructor.
-TSqlParserListener.prototype.exitTable_value_constructor = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#expression_list.
-TSqlParserListener.prototype.enterExpression_list = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#expression_list.
-TSqlParserListener.prototype.exitExpression_list = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#ranking_windowed_function.
-TSqlParserListener.prototype.enterRanking_windowed_function = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#ranking_windowed_function.
-TSqlParserListener.prototype.exitRanking_windowed_function = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#aggregate_windowed_function.
-TSqlParserListener.prototype.enterAggregate_windowed_function = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#aggregate_windowed_function.
-TSqlParserListener.prototype.exitAggregate_windowed_function = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#analytic_windowed_function.
-TSqlParserListener.prototype.enterAnalytic_windowed_function = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#analytic_windowed_function.
-TSqlParserListener.prototype.exitAnalytic_windowed_function = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#all_distinct_expression.
-TSqlParserListener.prototype.enterAll_distinct_expression = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#all_distinct_expression.
-TSqlParserListener.prototype.exitAll_distinct_expression = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#over_clause.
-TSqlParserListener.prototype.enterOver_clause = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#over_clause.
-TSqlParserListener.prototype.exitOver_clause = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#row_or_range_clause.
-TSqlParserListener.prototype.enterRow_or_range_clause = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#row_or_range_clause.
-TSqlParserListener.prototype.exitRow_or_range_clause = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#window_frame_extent.
-TSqlParserListener.prototype.enterWindow_frame_extent = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#window_frame_extent.
-TSqlParserListener.prototype.exitWindow_frame_extent = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#window_frame_bound.
-TSqlParserListener.prototype.enterWindow_frame_bound = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#window_frame_bound.
-TSqlParserListener.prototype.exitWindow_frame_bound = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#window_frame_preceding.
-TSqlParserListener.prototype.enterWindow_frame_preceding = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#window_frame_preceding.
-TSqlParserListener.prototype.exitWindow_frame_preceding = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#window_frame_following.
-TSqlParserListener.prototype.enterWindow_frame_following = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#window_frame_following.
-TSqlParserListener.prototype.exitWindow_frame_following = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#create_database_option.
-TSqlParserListener.prototype.enterCreate_database_option = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#create_database_option.
-TSqlParserListener.prototype.exitCreate_database_option = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#database_filestream_option.
-TSqlParserListener.prototype.enterDatabase_filestream_option = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#database_filestream_option.
-TSqlParserListener.prototype.exitDatabase_filestream_option = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#database_file_spec.
-TSqlParserListener.prototype.enterDatabase_file_spec = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#database_file_spec.
-TSqlParserListener.prototype.exitDatabase_file_spec = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#file_group.
-TSqlParserListener.prototype.enterFile_group = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#file_group.
-TSqlParserListener.prototype.exitFile_group = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#file_spec.
-TSqlParserListener.prototype.enterFile_spec = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#file_spec.
-TSqlParserListener.prototype.exitFile_spec = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#entity_name.
-TSqlParserListener.prototype.enterEntity_name = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#entity_name.
-TSqlParserListener.prototype.exitEntity_name = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#entity_name_for_azure_dw.
-TSqlParserListener.prototype.enterEntity_name_for_azure_dw = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#entity_name_for_azure_dw.
-TSqlParserListener.prototype.exitEntity_name_for_azure_dw = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#entity_name_for_parallel_dw.
-TSqlParserListener.prototype.enterEntity_name_for_parallel_dw = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#entity_name_for_parallel_dw.
-TSqlParserListener.prototype.exitEntity_name_for_parallel_dw = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#full_table_name.
-TSqlParserListener.prototype.enterFull_table_name = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#full_table_name.
-TSqlParserListener.prototype.exitFull_table_name = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#table_name.
-TSqlParserListener.prototype.enterTable_name = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#table_name.
-TSqlParserListener.prototype.exitTable_name = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#simple_name.
-TSqlParserListener.prototype.enterSimple_name = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#simple_name.
-TSqlParserListener.prototype.exitSimple_name = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#func_proc_name_schema.
-TSqlParserListener.prototype.enterFunc_proc_name_schema = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#func_proc_name_schema.
-TSqlParserListener.prototype.exitFunc_proc_name_schema = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#func_proc_name_database_schema.
-TSqlParserListener.prototype.enterFunc_proc_name_database_schema = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#func_proc_name_database_schema.
-TSqlParserListener.prototype.exitFunc_proc_name_database_schema = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#func_proc_name_server_database_schema.
-TSqlParserListener.prototype.enterFunc_proc_name_server_database_schema = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#func_proc_name_server_database_schema.
-TSqlParserListener.prototype.exitFunc_proc_name_server_database_schema = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#ddl_object.
-TSqlParserListener.prototype.enterDdl_object = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#ddl_object.
-TSqlParserListener.prototype.exitDdl_object = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#full_column_name.
-TSqlParserListener.prototype.enterFull_column_name = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#full_column_name.
-TSqlParserListener.prototype.exitFull_column_name = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#column_name_list_with_order.
-TSqlParserListener.prototype.enterColumn_name_list_with_order = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#column_name_list_with_order.
-TSqlParserListener.prototype.exitColumn_name_list_with_order = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#column_name_list.
-TSqlParserListener.prototype.enterColumn_name_list = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#column_name_list.
-TSqlParserListener.prototype.exitColumn_name_list = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#cursor_name.
-TSqlParserListener.prototype.enterCursor_name = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#cursor_name.
-TSqlParserListener.prototype.exitCursor_name = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#on_off.
-TSqlParserListener.prototype.enterOn_off = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#on_off.
-TSqlParserListener.prototype.exitOn_off = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#clustered.
-TSqlParserListener.prototype.enterClustered = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#clustered.
-TSqlParserListener.prototype.exitClustered = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#null_notnull.
-TSqlParserListener.prototype.enterNull_notnull = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#null_notnull.
-TSqlParserListener.prototype.exitNull_notnull = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#null_or_default.
-TSqlParserListener.prototype.enterNull_or_default = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#null_or_default.
-TSqlParserListener.prototype.exitNull_or_default = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#scalar_function_name.
-TSqlParserListener.prototype.enterScalar_function_name = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#scalar_function_name.
-TSqlParserListener.prototype.exitScalar_function_name = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#begin_conversation_timer.
-TSqlParserListener.prototype.enterBegin_conversation_timer = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#begin_conversation_timer.
-TSqlParserListener.prototype.exitBegin_conversation_timer = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#begin_conversation_dialog.
-TSqlParserListener.prototype.enterBegin_conversation_dialog = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#begin_conversation_dialog.
-TSqlParserListener.prototype.exitBegin_conversation_dialog = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#contract_name.
-TSqlParserListener.prototype.enterContract_name = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#contract_name.
-TSqlParserListener.prototype.exitContract_name = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#service_name.
-TSqlParserListener.prototype.enterService_name = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#service_name.
-TSqlParserListener.prototype.exitService_name = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#end_conversation.
-TSqlParserListener.prototype.enterEnd_conversation = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#end_conversation.
-TSqlParserListener.prototype.exitEnd_conversation = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#waitfor_conversation.
-TSqlParserListener.prototype.enterWaitfor_conversation = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#waitfor_conversation.
-TSqlParserListener.prototype.exitWaitfor_conversation = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#get_conversation.
-TSqlParserListener.prototype.enterGet_conversation = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#get_conversation.
-TSqlParserListener.prototype.exitGet_conversation = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#queue_id.
-TSqlParserListener.prototype.enterQueue_id = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#queue_id.
-TSqlParserListener.prototype.exitQueue_id = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#send_conversation.
-TSqlParserListener.prototype.enterSend_conversation = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#send_conversation.
-TSqlParserListener.prototype.exitSend_conversation = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#data_type.
-TSqlParserListener.prototype.enterData_type = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#data_type.
-TSqlParserListener.prototype.exitData_type = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#default_value.
-TSqlParserListener.prototype.enterDefault_value = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#default_value.
-TSqlParserListener.prototype.exitDefault_value = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#constant.
-TSqlParserListener.prototype.enterConstant = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#constant.
-TSqlParserListener.prototype.exitConstant = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#sign.
-TSqlParserListener.prototype.enterSign = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#sign.
-TSqlParserListener.prototype.exitSign = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#id.
-TSqlParserListener.prototype.enterId = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#id.
-TSqlParserListener.prototype.exitId = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#simple_id.
-TSqlParserListener.prototype.enterSimple_id = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#simple_id.
-TSqlParserListener.prototype.exitSimple_id = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#comparison_operator.
-TSqlParserListener.prototype.enterComparison_operator = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#comparison_operator.
-TSqlParserListener.prototype.exitComparison_operator = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#assignment_operator.
-TSqlParserListener.prototype.enterAssignment_operator = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#assignment_operator.
-TSqlParserListener.prototype.exitAssignment_operator = function(ctx) {
-};
-
-
-// Enter a parse tree produced by TSqlParser#file_size.
-TSqlParserListener.prototype.enterFile_size = function(ctx) {
-};
-
-// Exit a parse tree produced by TSqlParser#file_size.
-TSqlParserListener.prototype.exitFile_size = function(ctx) {
-};
-
-
-
-exports.TSqlParserListener = TSqlParserListener;
\ No newline at end of file
diff --git a/src/grammar/tsql/parser/TSqlParserVisitor.js b/src/grammar/tsql/parser/TSqlParserVisitor.js
deleted file mode 100644
index c3e5e91..0000000
--- a/src/grammar/tsql/parser/TSqlParserVisitor.js
+++ /dev/null
@@ -1,3094 +0,0 @@
-// Generated from /Users/ziv/Workspace/dt-sql-parser/src/grammar/tsql/TSqlParser.g4 by ANTLR 4.8
-// jshint ignore: start
-var antlr4 = require('antlr4/index');
-
-// This class defines a complete generic visitor for a parse tree produced by TSqlParser.
-
-function TSqlParserVisitor() {
- antlr4.tree.ParseTreeVisitor.call(this);
- return this;
-}
-
-TSqlParserVisitor.prototype = Object.create(antlr4.tree.ParseTreeVisitor.prototype);
-TSqlParserVisitor.prototype.constructor = TSqlParserVisitor;
-
-// Visit a parse tree produced by TSqlParser#tsql_file.
-TSqlParserVisitor.prototype.visitTsql_file = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#batch.
-TSqlParserVisitor.prototype.visitBatch = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#sql_clauses.
-TSqlParserVisitor.prototype.visitSql_clauses = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#sql_clause.
-TSqlParserVisitor.prototype.visitSql_clause = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#dml_clause.
-TSqlParserVisitor.prototype.visitDml_clause = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#ddl_clause.
-TSqlParserVisitor.prototype.visitDdl_clause = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#backup_statement.
-TSqlParserVisitor.prototype.visitBackup_statement = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#cfl_statement.
-TSqlParserVisitor.prototype.visitCfl_statement = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#block_statement.
-TSqlParserVisitor.prototype.visitBlock_statement = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#break_statement.
-TSqlParserVisitor.prototype.visitBreak_statement = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#continue_statement.
-TSqlParserVisitor.prototype.visitContinue_statement = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#goto_statement.
-TSqlParserVisitor.prototype.visitGoto_statement = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#return_statement.
-TSqlParserVisitor.prototype.visitReturn_statement = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#if_statement.
-TSqlParserVisitor.prototype.visitIf_statement = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#throw_statement.
-TSqlParserVisitor.prototype.visitThrow_statement = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#throw_error_number.
-TSqlParserVisitor.prototype.visitThrow_error_number = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#throw_message.
-TSqlParserVisitor.prototype.visitThrow_message = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#throw_state.
-TSqlParserVisitor.prototype.visitThrow_state = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#try_catch_statement.
-TSqlParserVisitor.prototype.visitTry_catch_statement = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#waitfor_statement.
-TSqlParserVisitor.prototype.visitWaitfor_statement = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#while_statement.
-TSqlParserVisitor.prototype.visitWhile_statement = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#print_statement.
-TSqlParserVisitor.prototype.visitPrint_statement = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#raiseerror_statement.
-TSqlParserVisitor.prototype.visitRaiseerror_statement = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#empty_statement.
-TSqlParserVisitor.prototype.visitEmpty_statement = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#another_statement.
-TSqlParserVisitor.prototype.visitAnother_statement = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_application_role.
-TSqlParserVisitor.prototype.visitAlter_application_role = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_application_role.
-TSqlParserVisitor.prototype.visitCreate_application_role = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_aggregate.
-TSqlParserVisitor.prototype.visitDrop_aggregate = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_application_role.
-TSqlParserVisitor.prototype.visitDrop_application_role = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_assembly.
-TSqlParserVisitor.prototype.visitAlter_assembly = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_assembly_start.
-TSqlParserVisitor.prototype.visitAlter_assembly_start = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_assembly_clause.
-TSqlParserVisitor.prototype.visitAlter_assembly_clause = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_assembly_from_clause.
-TSqlParserVisitor.prototype.visitAlter_assembly_from_clause = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_assembly_from_clause_start.
-TSqlParserVisitor.prototype.visitAlter_assembly_from_clause_start = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_assembly_drop_clause.
-TSqlParserVisitor.prototype.visitAlter_assembly_drop_clause = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_assembly_drop_multiple_files.
-TSqlParserVisitor.prototype.visitAlter_assembly_drop_multiple_files = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_assembly_drop.
-TSqlParserVisitor.prototype.visitAlter_assembly_drop = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_assembly_add_clause.
-TSqlParserVisitor.prototype.visitAlter_assembly_add_clause = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_asssembly_add_clause_start.
-TSqlParserVisitor.prototype.visitAlter_asssembly_add_clause_start = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_assembly_client_file_clause.
-TSqlParserVisitor.prototype.visitAlter_assembly_client_file_clause = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_assembly_file_name.
-TSqlParserVisitor.prototype.visitAlter_assembly_file_name = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_assembly_file_bits.
-TSqlParserVisitor.prototype.visitAlter_assembly_file_bits = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_assembly_as.
-TSqlParserVisitor.prototype.visitAlter_assembly_as = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_assembly_with_clause.
-TSqlParserVisitor.prototype.visitAlter_assembly_with_clause = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_assembly_with.
-TSqlParserVisitor.prototype.visitAlter_assembly_with = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#client_assembly_specifier.
-TSqlParserVisitor.prototype.visitClient_assembly_specifier = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#assembly_option.
-TSqlParserVisitor.prototype.visitAssembly_option = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#network_file_share.
-TSqlParserVisitor.prototype.visitNetwork_file_share = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#network_computer.
-TSqlParserVisitor.prototype.visitNetwork_computer = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#network_file_start.
-TSqlParserVisitor.prototype.visitNetwork_file_start = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#file_path.
-TSqlParserVisitor.prototype.visitFile_path = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#file_directory_path_separator.
-TSqlParserVisitor.prototype.visitFile_directory_path_separator = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#local_file.
-TSqlParserVisitor.prototype.visitLocal_file = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#local_drive.
-TSqlParserVisitor.prototype.visitLocal_drive = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#multiple_local_files.
-TSqlParserVisitor.prototype.visitMultiple_local_files = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#multiple_local_file_start.
-TSqlParserVisitor.prototype.visitMultiple_local_file_start = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_assembly.
-TSqlParserVisitor.prototype.visitCreate_assembly = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_assembly.
-TSqlParserVisitor.prototype.visitDrop_assembly = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_asymmetric_key.
-TSqlParserVisitor.prototype.visitAlter_asymmetric_key = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_asymmetric_key_start.
-TSqlParserVisitor.prototype.visitAlter_asymmetric_key_start = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#asymmetric_key_option.
-TSqlParserVisitor.prototype.visitAsymmetric_key_option = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#asymmetric_key_option_start.
-TSqlParserVisitor.prototype.visitAsymmetric_key_option_start = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#asymmetric_key_password_change_option.
-TSqlParserVisitor.prototype.visitAsymmetric_key_password_change_option = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_asymmetric_key.
-TSqlParserVisitor.prototype.visitCreate_asymmetric_key = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_asymmetric_key.
-TSqlParserVisitor.prototype.visitDrop_asymmetric_key = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_authorization.
-TSqlParserVisitor.prototype.visitAlter_authorization = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#authorization_grantee.
-TSqlParserVisitor.prototype.visitAuthorization_grantee = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#entity_to.
-TSqlParserVisitor.prototype.visitEntity_to = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#colon_colon.
-TSqlParserVisitor.prototype.visitColon_colon = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_authorization_start.
-TSqlParserVisitor.prototype.visitAlter_authorization_start = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_authorization_for_sql_database.
-TSqlParserVisitor.prototype.visitAlter_authorization_for_sql_database = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_authorization_for_azure_dw.
-TSqlParserVisitor.prototype.visitAlter_authorization_for_azure_dw = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_authorization_for_parallel_dw.
-TSqlParserVisitor.prototype.visitAlter_authorization_for_parallel_dw = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#class_type.
-TSqlParserVisitor.prototype.visitClass_type = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#class_type_for_sql_database.
-TSqlParserVisitor.prototype.visitClass_type_for_sql_database = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#class_type_for_azure_dw.
-TSqlParserVisitor.prototype.visitClass_type_for_azure_dw = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#class_type_for_parallel_dw.
-TSqlParserVisitor.prototype.visitClass_type_for_parallel_dw = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_availability_group.
-TSqlParserVisitor.prototype.visitDrop_availability_group = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_availability_group.
-TSqlParserVisitor.prototype.visitAlter_availability_group = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_availability_group_start.
-TSqlParserVisitor.prototype.visitAlter_availability_group_start = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_availability_group_options.
-TSqlParserVisitor.prototype.visitAlter_availability_group_options = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_or_alter_broker_priority.
-TSqlParserVisitor.prototype.visitCreate_or_alter_broker_priority = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_broker_priority.
-TSqlParserVisitor.prototype.visitDrop_broker_priority = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_certificate.
-TSqlParserVisitor.prototype.visitAlter_certificate = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_column_encryption_key.
-TSqlParserVisitor.prototype.visitAlter_column_encryption_key = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_column_encryption_key.
-TSqlParserVisitor.prototype.visitCreate_column_encryption_key = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_certificate.
-TSqlParserVisitor.prototype.visitDrop_certificate = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_column_encryption_key.
-TSqlParserVisitor.prototype.visitDrop_column_encryption_key = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_column_master_key.
-TSqlParserVisitor.prototype.visitDrop_column_master_key = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_contract.
-TSqlParserVisitor.prototype.visitDrop_contract = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_credential.
-TSqlParserVisitor.prototype.visitDrop_credential = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_cryptograhic_provider.
-TSqlParserVisitor.prototype.visitDrop_cryptograhic_provider = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_database.
-TSqlParserVisitor.prototype.visitDrop_database = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_database_audit_specification.
-TSqlParserVisitor.prototype.visitDrop_database_audit_specification = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_database_scoped_credential.
-TSqlParserVisitor.prototype.visitDrop_database_scoped_credential = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_default.
-TSqlParserVisitor.prototype.visitDrop_default = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_endpoint.
-TSqlParserVisitor.prototype.visitDrop_endpoint = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_external_data_source.
-TSqlParserVisitor.prototype.visitDrop_external_data_source = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_external_file_format.
-TSqlParserVisitor.prototype.visitDrop_external_file_format = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_external_library.
-TSqlParserVisitor.prototype.visitDrop_external_library = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_external_resource_pool.
-TSqlParserVisitor.prototype.visitDrop_external_resource_pool = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_external_table.
-TSqlParserVisitor.prototype.visitDrop_external_table = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_event_notifications.
-TSqlParserVisitor.prototype.visitDrop_event_notifications = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_event_session.
-TSqlParserVisitor.prototype.visitDrop_event_session = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_fulltext_catalog.
-TSqlParserVisitor.prototype.visitDrop_fulltext_catalog = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_fulltext_index.
-TSqlParserVisitor.prototype.visitDrop_fulltext_index = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_fulltext_stoplist.
-TSqlParserVisitor.prototype.visitDrop_fulltext_stoplist = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_login.
-TSqlParserVisitor.prototype.visitDrop_login = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_master_key.
-TSqlParserVisitor.prototype.visitDrop_master_key = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_message_type.
-TSqlParserVisitor.prototype.visitDrop_message_type = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_partition_function.
-TSqlParserVisitor.prototype.visitDrop_partition_function = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_partition_scheme.
-TSqlParserVisitor.prototype.visitDrop_partition_scheme = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_queue.
-TSqlParserVisitor.prototype.visitDrop_queue = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_remote_service_binding.
-TSqlParserVisitor.prototype.visitDrop_remote_service_binding = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_resource_pool.
-TSqlParserVisitor.prototype.visitDrop_resource_pool = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_db_role.
-TSqlParserVisitor.prototype.visitDrop_db_role = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_route.
-TSqlParserVisitor.prototype.visitDrop_route = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_rule.
-TSqlParserVisitor.prototype.visitDrop_rule = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_schema.
-TSqlParserVisitor.prototype.visitDrop_schema = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_search_property_list.
-TSqlParserVisitor.prototype.visitDrop_search_property_list = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_security_policy.
-TSqlParserVisitor.prototype.visitDrop_security_policy = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_sequence.
-TSqlParserVisitor.prototype.visitDrop_sequence = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_server_audit.
-TSqlParserVisitor.prototype.visitDrop_server_audit = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_server_audit_specification.
-TSqlParserVisitor.prototype.visitDrop_server_audit_specification = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_server_role.
-TSqlParserVisitor.prototype.visitDrop_server_role = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_service.
-TSqlParserVisitor.prototype.visitDrop_service = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_signature.
-TSqlParserVisitor.prototype.visitDrop_signature = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_statistics_name_azure_dw_and_pdw.
-TSqlParserVisitor.prototype.visitDrop_statistics_name_azure_dw_and_pdw = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_symmetric_key.
-TSqlParserVisitor.prototype.visitDrop_symmetric_key = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_synonym.
-TSqlParserVisitor.prototype.visitDrop_synonym = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_user.
-TSqlParserVisitor.prototype.visitDrop_user = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_workload_group.
-TSqlParserVisitor.prototype.visitDrop_workload_group = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_xml_schema_collection.
-TSqlParserVisitor.prototype.visitDrop_xml_schema_collection = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#disable_trigger.
-TSqlParserVisitor.prototype.visitDisable_trigger = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#enable_trigger.
-TSqlParserVisitor.prototype.visitEnable_trigger = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#lock_table.
-TSqlParserVisitor.prototype.visitLock_table = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#truncate_table.
-TSqlParserVisitor.prototype.visitTruncate_table = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_column_master_key.
-TSqlParserVisitor.prototype.visitCreate_column_master_key = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_credential.
-TSqlParserVisitor.prototype.visitAlter_credential = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_credential.
-TSqlParserVisitor.prototype.visitCreate_credential = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_cryptographic_provider.
-TSqlParserVisitor.prototype.visitAlter_cryptographic_provider = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_cryptographic_provider.
-TSqlParserVisitor.prototype.visitCreate_cryptographic_provider = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_event_notification.
-TSqlParserVisitor.prototype.visitCreate_event_notification = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_or_alter_event_session.
-TSqlParserVisitor.prototype.visitCreate_or_alter_event_session = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#event_session_predicate_expression.
-TSqlParserVisitor.prototype.visitEvent_session_predicate_expression = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#event_session_predicate_factor.
-TSqlParserVisitor.prototype.visitEvent_session_predicate_factor = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#event_session_predicate_leaf.
-TSqlParserVisitor.prototype.visitEvent_session_predicate_leaf = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_external_data_source.
-TSqlParserVisitor.prototype.visitAlter_external_data_source = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_external_library.
-TSqlParserVisitor.prototype.visitAlter_external_library = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_external_library.
-TSqlParserVisitor.prototype.visitCreate_external_library = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_external_resource_pool.
-TSqlParserVisitor.prototype.visitAlter_external_resource_pool = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_external_resource_pool.
-TSqlParserVisitor.prototype.visitCreate_external_resource_pool = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_fulltext_catalog.
-TSqlParserVisitor.prototype.visitAlter_fulltext_catalog = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_fulltext_catalog.
-TSqlParserVisitor.prototype.visitCreate_fulltext_catalog = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_fulltext_stoplist.
-TSqlParserVisitor.prototype.visitAlter_fulltext_stoplist = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_fulltext_stoplist.
-TSqlParserVisitor.prototype.visitCreate_fulltext_stoplist = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_login_sql_server.
-TSqlParserVisitor.prototype.visitAlter_login_sql_server = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_login_sql_server.
-TSqlParserVisitor.prototype.visitCreate_login_sql_server = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_login_azure_sql.
-TSqlParserVisitor.prototype.visitAlter_login_azure_sql = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_login_azure_sql.
-TSqlParserVisitor.prototype.visitCreate_login_azure_sql = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_login_azure_sql_dw_and_pdw.
-TSqlParserVisitor.prototype.visitAlter_login_azure_sql_dw_and_pdw = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_login_pdw.
-TSqlParserVisitor.prototype.visitCreate_login_pdw = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_master_key_sql_server.
-TSqlParserVisitor.prototype.visitAlter_master_key_sql_server = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_master_key_sql_server.
-TSqlParserVisitor.prototype.visitCreate_master_key_sql_server = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_master_key_azure_sql.
-TSqlParserVisitor.prototype.visitAlter_master_key_azure_sql = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_master_key_azure_sql.
-TSqlParserVisitor.prototype.visitCreate_master_key_azure_sql = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_message_type.
-TSqlParserVisitor.prototype.visitAlter_message_type = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_partition_function.
-TSqlParserVisitor.prototype.visitAlter_partition_function = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_partition_scheme.
-TSqlParserVisitor.prototype.visitAlter_partition_scheme = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_remote_service_binding.
-TSqlParserVisitor.prototype.visitAlter_remote_service_binding = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_remote_service_binding.
-TSqlParserVisitor.prototype.visitCreate_remote_service_binding = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_resource_pool.
-TSqlParserVisitor.prototype.visitCreate_resource_pool = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_resource_governor.
-TSqlParserVisitor.prototype.visitAlter_resource_governor = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_db_role.
-TSqlParserVisitor.prototype.visitAlter_db_role = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_db_role.
-TSqlParserVisitor.prototype.visitCreate_db_role = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_route.
-TSqlParserVisitor.prototype.visitCreate_route = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_rule.
-TSqlParserVisitor.prototype.visitCreate_rule = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_schema_sql.
-TSqlParserVisitor.prototype.visitAlter_schema_sql = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_schema.
-TSqlParserVisitor.prototype.visitCreate_schema = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_schema_azure_sql_dw_and_pdw.
-TSqlParserVisitor.prototype.visitCreate_schema_azure_sql_dw_and_pdw = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_schema_azure_sql_dw_and_pdw.
-TSqlParserVisitor.prototype.visitAlter_schema_azure_sql_dw_and_pdw = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_search_property_list.
-TSqlParserVisitor.prototype.visitCreate_search_property_list = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_security_policy.
-TSqlParserVisitor.prototype.visitCreate_security_policy = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_sequence.
-TSqlParserVisitor.prototype.visitAlter_sequence = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_sequence.
-TSqlParserVisitor.prototype.visitCreate_sequence = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_server_audit.
-TSqlParserVisitor.prototype.visitAlter_server_audit = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_server_audit.
-TSqlParserVisitor.prototype.visitCreate_server_audit = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_server_audit_specification.
-TSqlParserVisitor.prototype.visitAlter_server_audit_specification = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_server_audit_specification.
-TSqlParserVisitor.prototype.visitCreate_server_audit_specification = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_server_configuration.
-TSqlParserVisitor.prototype.visitAlter_server_configuration = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_server_role.
-TSqlParserVisitor.prototype.visitAlter_server_role = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_server_role.
-TSqlParserVisitor.prototype.visitCreate_server_role = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_server_role_pdw.
-TSqlParserVisitor.prototype.visitAlter_server_role_pdw = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_service.
-TSqlParserVisitor.prototype.visitAlter_service = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_service.
-TSqlParserVisitor.prototype.visitCreate_service = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_service_master_key.
-TSqlParserVisitor.prototype.visitAlter_service_master_key = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_symmetric_key.
-TSqlParserVisitor.prototype.visitAlter_symmetric_key = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_symmetric_key.
-TSqlParserVisitor.prototype.visitCreate_symmetric_key = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_synonym.
-TSqlParserVisitor.prototype.visitCreate_synonym = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_user.
-TSqlParserVisitor.prototype.visitAlter_user = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_user.
-TSqlParserVisitor.prototype.visitCreate_user = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_user_azure_sql_dw.
-TSqlParserVisitor.prototype.visitCreate_user_azure_sql_dw = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_user_azure_sql.
-TSqlParserVisitor.prototype.visitAlter_user_azure_sql = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_workload_group.
-TSqlParserVisitor.prototype.visitAlter_workload_group = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_workload_group.
-TSqlParserVisitor.prototype.visitCreate_workload_group = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_xml_schema_collection.
-TSqlParserVisitor.prototype.visitCreate_xml_schema_collection = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_queue.
-TSqlParserVisitor.prototype.visitCreate_queue = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#queue_settings.
-TSqlParserVisitor.prototype.visitQueue_settings = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_queue.
-TSqlParserVisitor.prototype.visitAlter_queue = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#queue_action.
-TSqlParserVisitor.prototype.visitQueue_action = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#queue_rebuild_options.
-TSqlParserVisitor.prototype.visitQueue_rebuild_options = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_contract.
-TSqlParserVisitor.prototype.visitCreate_contract = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#conversation_statement.
-TSqlParserVisitor.prototype.visitConversation_statement = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#message_statement.
-TSqlParserVisitor.prototype.visitMessage_statement = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#merge_statement.
-TSqlParserVisitor.prototype.visitMerge_statement = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#merge_matched.
-TSqlParserVisitor.prototype.visitMerge_matched = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#merge_not_matched.
-TSqlParserVisitor.prototype.visitMerge_not_matched = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#delete_statement.
-TSqlParserVisitor.prototype.visitDelete_statement = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#delete_statement_from.
-TSqlParserVisitor.prototype.visitDelete_statement_from = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#insert_statement.
-TSqlParserVisitor.prototype.visitInsert_statement = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#insert_statement_value.
-TSqlParserVisitor.prototype.visitInsert_statement_value = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#receive_statement.
-TSqlParserVisitor.prototype.visitReceive_statement = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#select_statement.
-TSqlParserVisitor.prototype.visitSelect_statement = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#time.
-TSqlParserVisitor.prototype.visitTime = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#update_statement.
-TSqlParserVisitor.prototype.visitUpdate_statement = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#output_clause.
-TSqlParserVisitor.prototype.visitOutput_clause = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#output_dml_list_elem.
-TSqlParserVisitor.prototype.visitOutput_dml_list_elem = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#output_column_name.
-TSqlParserVisitor.prototype.visitOutput_column_name = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_database.
-TSqlParserVisitor.prototype.visitCreate_database = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_index.
-TSqlParserVisitor.prototype.visitCreate_index = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_or_alter_procedure.
-TSqlParserVisitor.prototype.visitCreate_or_alter_procedure = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_or_alter_trigger.
-TSqlParserVisitor.prototype.visitCreate_or_alter_trigger = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_or_alter_dml_trigger.
-TSqlParserVisitor.prototype.visitCreate_or_alter_dml_trigger = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#dml_trigger_option.
-TSqlParserVisitor.prototype.visitDml_trigger_option = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#dml_trigger_operation.
-TSqlParserVisitor.prototype.visitDml_trigger_operation = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_or_alter_ddl_trigger.
-TSqlParserVisitor.prototype.visitCreate_or_alter_ddl_trigger = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#ddl_trigger_operation.
-TSqlParserVisitor.prototype.visitDdl_trigger_operation = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_or_alter_function.
-TSqlParserVisitor.prototype.visitCreate_or_alter_function = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#func_body_returns_select.
-TSqlParserVisitor.prototype.visitFunc_body_returns_select = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#func_body_returns_table.
-TSqlParserVisitor.prototype.visitFunc_body_returns_table = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#func_body_returns_scalar.
-TSqlParserVisitor.prototype.visitFunc_body_returns_scalar = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#procedure_param.
-TSqlParserVisitor.prototype.visitProcedure_param = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#procedure_option.
-TSqlParserVisitor.prototype.visitProcedure_option = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#function_option.
-TSqlParserVisitor.prototype.visitFunction_option = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_statistics.
-TSqlParserVisitor.prototype.visitCreate_statistics = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#update_statistics.
-TSqlParserVisitor.prototype.visitUpdate_statistics = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_table.
-TSqlParserVisitor.prototype.visitCreate_table = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#table_options.
-TSqlParserVisitor.prototype.visitTable_options = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_view.
-TSqlParserVisitor.prototype.visitCreate_view = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#view_attribute.
-TSqlParserVisitor.prototype.visitView_attribute = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_table.
-TSqlParserVisitor.prototype.visitAlter_table = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_database.
-TSqlParserVisitor.prototype.visitAlter_database = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#database_optionspec.
-TSqlParserVisitor.prototype.visitDatabase_optionspec = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#auto_option.
-TSqlParserVisitor.prototype.visitAuto_option = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#change_tracking_option.
-TSqlParserVisitor.prototype.visitChange_tracking_option = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#change_tracking_option_list.
-TSqlParserVisitor.prototype.visitChange_tracking_option_list = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#containment_option.
-TSqlParserVisitor.prototype.visitContainment_option = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#cursor_option.
-TSqlParserVisitor.prototype.visitCursor_option = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#alter_endpoint.
-TSqlParserVisitor.prototype.visitAlter_endpoint = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#database_mirroring_option.
-TSqlParserVisitor.prototype.visitDatabase_mirroring_option = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#mirroring_set_option.
-TSqlParserVisitor.prototype.visitMirroring_set_option = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#mirroring_partner.
-TSqlParserVisitor.prototype.visitMirroring_partner = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#mirroring_witness.
-TSqlParserVisitor.prototype.visitMirroring_witness = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#witness_partner_equal.
-TSqlParserVisitor.prototype.visitWitness_partner_equal = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#partner_option.
-TSqlParserVisitor.prototype.visitPartner_option = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#witness_option.
-TSqlParserVisitor.prototype.visitWitness_option = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#witness_server.
-TSqlParserVisitor.prototype.visitWitness_server = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#partner_server.
-TSqlParserVisitor.prototype.visitPartner_server = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#mirroring_host_port_seperator.
-TSqlParserVisitor.prototype.visitMirroring_host_port_seperator = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#partner_server_tcp_prefix.
-TSqlParserVisitor.prototype.visitPartner_server_tcp_prefix = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#port_number.
-TSqlParserVisitor.prototype.visitPort_number = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#host.
-TSqlParserVisitor.prototype.visitHost = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#date_correlation_optimization_option.
-TSqlParserVisitor.prototype.visitDate_correlation_optimization_option = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#db_encryption_option.
-TSqlParserVisitor.prototype.visitDb_encryption_option = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#db_state_option.
-TSqlParserVisitor.prototype.visitDb_state_option = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#db_update_option.
-TSqlParserVisitor.prototype.visitDb_update_option = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#db_user_access_option.
-TSqlParserVisitor.prototype.visitDb_user_access_option = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#delayed_durability_option.
-TSqlParserVisitor.prototype.visitDelayed_durability_option = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#external_access_option.
-TSqlParserVisitor.prototype.visitExternal_access_option = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#hadr_options.
-TSqlParserVisitor.prototype.visitHadr_options = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#mixed_page_allocation_option.
-TSqlParserVisitor.prototype.visitMixed_page_allocation_option = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#parameterization_option.
-TSqlParserVisitor.prototype.visitParameterization_option = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#recovery_option.
-TSqlParserVisitor.prototype.visitRecovery_option = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#service_broker_option.
-TSqlParserVisitor.prototype.visitService_broker_option = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#snapshot_option.
-TSqlParserVisitor.prototype.visitSnapshot_option = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#sql_option.
-TSqlParserVisitor.prototype.visitSql_option = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#target_recovery_time_option.
-TSqlParserVisitor.prototype.visitTarget_recovery_time_option = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#termination.
-TSqlParserVisitor.prototype.visitTermination = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_index.
-TSqlParserVisitor.prototype.visitDrop_index = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_relational_or_xml_or_spatial_index.
-TSqlParserVisitor.prototype.visitDrop_relational_or_xml_or_spatial_index = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_backward_compatible_index.
-TSqlParserVisitor.prototype.visitDrop_backward_compatible_index = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_procedure.
-TSqlParserVisitor.prototype.visitDrop_procedure = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_trigger.
-TSqlParserVisitor.prototype.visitDrop_trigger = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_dml_trigger.
-TSqlParserVisitor.prototype.visitDrop_dml_trigger = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_ddl_trigger.
-TSqlParserVisitor.prototype.visitDrop_ddl_trigger = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_function.
-TSqlParserVisitor.prototype.visitDrop_function = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_statistics.
-TSqlParserVisitor.prototype.visitDrop_statistics = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_table.
-TSqlParserVisitor.prototype.visitDrop_table = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_view.
-TSqlParserVisitor.prototype.visitDrop_view = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_type.
-TSqlParserVisitor.prototype.visitCreate_type = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#drop_type.
-TSqlParserVisitor.prototype.visitDrop_type = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#rowset_function_limited.
-TSqlParserVisitor.prototype.visitRowset_function_limited = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#openquery.
-TSqlParserVisitor.prototype.visitOpenquery = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#opendatasource.
-TSqlParserVisitor.prototype.visitOpendatasource = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#declare_statement.
-TSqlParserVisitor.prototype.visitDeclare_statement = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#cursor_statement.
-TSqlParserVisitor.prototype.visitCursor_statement = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#backup_database.
-TSqlParserVisitor.prototype.visitBackup_database = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#backup_log.
-TSqlParserVisitor.prototype.visitBackup_log = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#backup_certificate.
-TSqlParserVisitor.prototype.visitBackup_certificate = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#backup_master_key.
-TSqlParserVisitor.prototype.visitBackup_master_key = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#backup_service_master_key.
-TSqlParserVisitor.prototype.visitBackup_service_master_key = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#kill_statement.
-TSqlParserVisitor.prototype.visitKill_statement = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#kill_process.
-TSqlParserVisitor.prototype.visitKill_process = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#kill_query_notification.
-TSqlParserVisitor.prototype.visitKill_query_notification = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#kill_stats_job.
-TSqlParserVisitor.prototype.visitKill_stats_job = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#execute_statement.
-TSqlParserVisitor.prototype.visitExecute_statement = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#execute_body.
-TSqlParserVisitor.prototype.visitExecute_body = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#execute_statement_arg.
-TSqlParserVisitor.prototype.visitExecute_statement_arg = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#execute_var_string.
-TSqlParserVisitor.prototype.visitExecute_var_string = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#security_statement.
-TSqlParserVisitor.prototype.visitSecurity_statement = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_certificate.
-TSqlParserVisitor.prototype.visitCreate_certificate = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#existing_keys.
-TSqlParserVisitor.prototype.visitExisting_keys = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#private_key_options.
-TSqlParserVisitor.prototype.visitPrivate_key_options = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#generate_new_keys.
-TSqlParserVisitor.prototype.visitGenerate_new_keys = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#date_options.
-TSqlParserVisitor.prototype.visitDate_options = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#open_key.
-TSqlParserVisitor.prototype.visitOpen_key = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#close_key.
-TSqlParserVisitor.prototype.visitClose_key = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_key.
-TSqlParserVisitor.prototype.visitCreate_key = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#key_options.
-TSqlParserVisitor.prototype.visitKey_options = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#algorithm.
-TSqlParserVisitor.prototype.visitAlgorithm = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#encryption_mechanism.
-TSqlParserVisitor.prototype.visitEncryption_mechanism = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#decryption_mechanism.
-TSqlParserVisitor.prototype.visitDecryption_mechanism = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#grant_permission.
-TSqlParserVisitor.prototype.visitGrant_permission = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#set_statement.
-TSqlParserVisitor.prototype.visitSet_statement = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#transaction_statement.
-TSqlParserVisitor.prototype.visitTransaction_statement = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#go_statement.
-TSqlParserVisitor.prototype.visitGo_statement = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#use_statement.
-TSqlParserVisitor.prototype.visitUse_statement = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#setuser_statement.
-TSqlParserVisitor.prototype.visitSetuser_statement = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#reconfigure_statement.
-TSqlParserVisitor.prototype.visitReconfigure_statement = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#shutdown_statement.
-TSqlParserVisitor.prototype.visitShutdown_statement = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#dbcc_clause.
-TSqlParserVisitor.prototype.visitDbcc_clause = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#dbcc_options.
-TSqlParserVisitor.prototype.visitDbcc_options = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#execute_clause.
-TSqlParserVisitor.prototype.visitExecute_clause = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#declare_local.
-TSqlParserVisitor.prototype.visitDeclare_local = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#table_type_definition.
-TSqlParserVisitor.prototype.visitTable_type_definition = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#xml_type_definition.
-TSqlParserVisitor.prototype.visitXml_type_definition = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#xml_schema_collection.
-TSqlParserVisitor.prototype.visitXml_schema_collection = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#column_def_table_constraints.
-TSqlParserVisitor.prototype.visitColumn_def_table_constraints = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#column_def_table_constraint.
-TSqlParserVisitor.prototype.visitColumn_def_table_constraint = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#column_definition.
-TSqlParserVisitor.prototype.visitColumn_definition = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#materialized_column_definition.
-TSqlParserVisitor.prototype.visitMaterialized_column_definition = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#column_constraint.
-TSqlParserVisitor.prototype.visitColumn_constraint = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#table_constraint.
-TSqlParserVisitor.prototype.visitTable_constraint = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#on_delete.
-TSqlParserVisitor.prototype.visitOn_delete = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#on_update.
-TSqlParserVisitor.prototype.visitOn_update = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#index_options.
-TSqlParserVisitor.prototype.visitIndex_options = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#index_option.
-TSqlParserVisitor.prototype.visitIndex_option = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#declare_cursor.
-TSqlParserVisitor.prototype.visitDeclare_cursor = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#declare_set_cursor_common.
-TSqlParserVisitor.prototype.visitDeclare_set_cursor_common = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#declare_set_cursor_common_partial.
-TSqlParserVisitor.prototype.visitDeclare_set_cursor_common_partial = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#fetch_cursor.
-TSqlParserVisitor.prototype.visitFetch_cursor = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#set_special.
-TSqlParserVisitor.prototype.visitSet_special = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#constant_LOCAL_ID.
-TSqlParserVisitor.prototype.visitConstant_LOCAL_ID = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#expression.
-TSqlParserVisitor.prototype.visitExpression = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#primitive_expression.
-TSqlParserVisitor.prototype.visitPrimitive_expression = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#case_expression.
-TSqlParserVisitor.prototype.visitCase_expression = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#unary_operator_expression.
-TSqlParserVisitor.prototype.visitUnary_operator_expression = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#bracket_expression.
-TSqlParserVisitor.prototype.visitBracket_expression = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#constant_expression.
-TSqlParserVisitor.prototype.visitConstant_expression = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#subquery.
-TSqlParserVisitor.prototype.visitSubquery = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#with_expression.
-TSqlParserVisitor.prototype.visitWith_expression = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#common_table_expression.
-TSqlParserVisitor.prototype.visitCommon_table_expression = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#update_elem.
-TSqlParserVisitor.prototype.visitUpdate_elem = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#search_condition_list.
-TSqlParserVisitor.prototype.visitSearch_condition_list = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#search_condition.
-TSqlParserVisitor.prototype.visitSearch_condition = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#search_condition_and.
-TSqlParserVisitor.prototype.visitSearch_condition_and = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#search_condition_not.
-TSqlParserVisitor.prototype.visitSearch_condition_not = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#predicate.
-TSqlParserVisitor.prototype.visitPredicate = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#query_expression.
-TSqlParserVisitor.prototype.visitQuery_expression = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#sql_union.
-TSqlParserVisitor.prototype.visitSql_union = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#query_specification.
-TSqlParserVisitor.prototype.visitQuery_specification = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#top_clause.
-TSqlParserVisitor.prototype.visitTop_clause = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#top_percent.
-TSqlParserVisitor.prototype.visitTop_percent = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#top_count.
-TSqlParserVisitor.prototype.visitTop_count = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#order_by_clause.
-TSqlParserVisitor.prototype.visitOrder_by_clause = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#for_clause.
-TSqlParserVisitor.prototype.visitFor_clause = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#xml_common_directives.
-TSqlParserVisitor.prototype.visitXml_common_directives = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#order_by_expression.
-TSqlParserVisitor.prototype.visitOrder_by_expression = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#group_by_item.
-TSqlParserVisitor.prototype.visitGroup_by_item = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#option_clause.
-TSqlParserVisitor.prototype.visitOption_clause = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#option.
-TSqlParserVisitor.prototype.visitOption = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#optimize_for_arg.
-TSqlParserVisitor.prototype.visitOptimize_for_arg = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#select_list.
-TSqlParserVisitor.prototype.visitSelect_list = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#udt_method_arguments.
-TSqlParserVisitor.prototype.visitUdt_method_arguments = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#asterisk.
-TSqlParserVisitor.prototype.visitAsterisk = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#column_elem.
-TSqlParserVisitor.prototype.visitColumn_elem = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#udt_elem.
-TSqlParserVisitor.prototype.visitUdt_elem = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#expression_elem.
-TSqlParserVisitor.prototype.visitExpression_elem = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#select_list_elem.
-TSqlParserVisitor.prototype.visitSelect_list_elem = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#table_sources.
-TSqlParserVisitor.prototype.visitTable_sources = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#table_source.
-TSqlParserVisitor.prototype.visitTable_source = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#table_source_item_joined.
-TSqlParserVisitor.prototype.visitTable_source_item_joined = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#table_source_item.
-TSqlParserVisitor.prototype.visitTable_source_item = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#open_xml.
-TSqlParserVisitor.prototype.visitOpen_xml = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#schema_declaration.
-TSqlParserVisitor.prototype.visitSchema_declaration = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#column_declaration.
-TSqlParserVisitor.prototype.visitColumn_declaration = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#change_table.
-TSqlParserVisitor.prototype.visitChange_table = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#join_part.
-TSqlParserVisitor.prototype.visitJoin_part = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#pivot_clause.
-TSqlParserVisitor.prototype.visitPivot_clause = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#unpivot_clause.
-TSqlParserVisitor.prototype.visitUnpivot_clause = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#full_column_name_list.
-TSqlParserVisitor.prototype.visitFull_column_name_list = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#table_name_with_hint.
-TSqlParserVisitor.prototype.visitTable_name_with_hint = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#rowset_function.
-TSqlParserVisitor.prototype.visitRowset_function = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#bulk_option.
-TSqlParserVisitor.prototype.visitBulk_option = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#derived_table.
-TSqlParserVisitor.prototype.visitDerived_table = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#BINARY_CHECKSUM.
-TSqlParserVisitor.prototype.visitBINARY_CHECKSUM = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#CAST.
-TSqlParserVisitor.prototype.visitCAST = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#CONVERT.
-TSqlParserVisitor.prototype.visitCONVERT = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#CHECKSUM.
-TSqlParserVisitor.prototype.visitCHECKSUM = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#COALESCE.
-TSqlParserVisitor.prototype.visitCOALESCE = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#CURRENT_TIMESTAMP.
-TSqlParserVisitor.prototype.visitCURRENT_TIMESTAMP = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#CURRENT_USER.
-TSqlParserVisitor.prototype.visitCURRENT_USER = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#DATEADD.
-TSqlParserVisitor.prototype.visitDATEADD = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#DATEDIFF.
-TSqlParserVisitor.prototype.visitDATEDIFF = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#DATENAME.
-TSqlParserVisitor.prototype.visitDATENAME = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#DATEPART.
-TSqlParserVisitor.prototype.visitDATEPART = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#GETDATE.
-TSqlParserVisitor.prototype.visitGETDATE = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#GETUTCDATE.
-TSqlParserVisitor.prototype.visitGETUTCDATE = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#IDENTITY.
-TSqlParserVisitor.prototype.visitIDENTITY = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#MIN_ACTIVE_ROWVERSION.
-TSqlParserVisitor.prototype.visitMIN_ACTIVE_ROWVERSION = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#NULLIF.
-TSqlParserVisitor.prototype.visitNULLIF = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#STUFF.
-TSqlParserVisitor.prototype.visitSTUFF = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#SESSION_USER.
-TSqlParserVisitor.prototype.visitSESSION_USER = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#SYSTEM_USER.
-TSqlParserVisitor.prototype.visitSYSTEM_USER = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#ISNULL.
-TSqlParserVisitor.prototype.visitISNULL = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#XML_DATA_TYPE_FUNC.
-TSqlParserVisitor.prototype.visitXML_DATA_TYPE_FUNC = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#IFF.
-TSqlParserVisitor.prototype.visitIFF = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#RANKING_WINDOWED_FUNC.
-TSqlParserVisitor.prototype.visitRANKING_WINDOWED_FUNC = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#AGGREGATE_WINDOWED_FUNC.
-TSqlParserVisitor.prototype.visitAGGREGATE_WINDOWED_FUNC = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#ANALYTIC_WINDOWED_FUNC.
-TSqlParserVisitor.prototype.visitANALYTIC_WINDOWED_FUNC = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#SCALAR_FUNCTION.
-TSqlParserVisitor.prototype.visitSCALAR_FUNCTION = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#STRINGAGG.
-TSqlParserVisitor.prototype.visitSTRINGAGG = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#xml_data_type_methods.
-TSqlParserVisitor.prototype.visitXml_data_type_methods = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#value_method.
-TSqlParserVisitor.prototype.visitValue_method = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#query_method.
-TSqlParserVisitor.prototype.visitQuery_method = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#exist_method.
-TSqlParserVisitor.prototype.visitExist_method = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#modify_method.
-TSqlParserVisitor.prototype.visitModify_method = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#nodes_method.
-TSqlParserVisitor.prototype.visitNodes_method = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#switch_section.
-TSqlParserVisitor.prototype.visitSwitch_section = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#switch_search_condition_section.
-TSqlParserVisitor.prototype.visitSwitch_search_condition_section = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#as_column_alias.
-TSqlParserVisitor.prototype.visitAs_column_alias = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#as_table_alias.
-TSqlParserVisitor.prototype.visitAs_table_alias = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#table_alias.
-TSqlParserVisitor.prototype.visitTable_alias = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#with_table_hints.
-TSqlParserVisitor.prototype.visitWith_table_hints = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#insert_with_table_hints.
-TSqlParserVisitor.prototype.visitInsert_with_table_hints = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#table_hint.
-TSqlParserVisitor.prototype.visitTable_hint = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#index_value.
-TSqlParserVisitor.prototype.visitIndex_value = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#column_alias_list.
-TSqlParserVisitor.prototype.visitColumn_alias_list = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#column_alias.
-TSqlParserVisitor.prototype.visitColumn_alias = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#table_value_constructor.
-TSqlParserVisitor.prototype.visitTable_value_constructor = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#expression_list.
-TSqlParserVisitor.prototype.visitExpression_list = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#ranking_windowed_function.
-TSqlParserVisitor.prototype.visitRanking_windowed_function = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#aggregate_windowed_function.
-TSqlParserVisitor.prototype.visitAggregate_windowed_function = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#analytic_windowed_function.
-TSqlParserVisitor.prototype.visitAnalytic_windowed_function = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#all_distinct_expression.
-TSqlParserVisitor.prototype.visitAll_distinct_expression = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#over_clause.
-TSqlParserVisitor.prototype.visitOver_clause = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#row_or_range_clause.
-TSqlParserVisitor.prototype.visitRow_or_range_clause = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#window_frame_extent.
-TSqlParserVisitor.prototype.visitWindow_frame_extent = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#window_frame_bound.
-TSqlParserVisitor.prototype.visitWindow_frame_bound = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#window_frame_preceding.
-TSqlParserVisitor.prototype.visitWindow_frame_preceding = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#window_frame_following.
-TSqlParserVisitor.prototype.visitWindow_frame_following = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#create_database_option.
-TSqlParserVisitor.prototype.visitCreate_database_option = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#database_filestream_option.
-TSqlParserVisitor.prototype.visitDatabase_filestream_option = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#database_file_spec.
-TSqlParserVisitor.prototype.visitDatabase_file_spec = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#file_group.
-TSqlParserVisitor.prototype.visitFile_group = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#file_spec.
-TSqlParserVisitor.prototype.visitFile_spec = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#entity_name.
-TSqlParserVisitor.prototype.visitEntity_name = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#entity_name_for_azure_dw.
-TSqlParserVisitor.prototype.visitEntity_name_for_azure_dw = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#entity_name_for_parallel_dw.
-TSqlParserVisitor.prototype.visitEntity_name_for_parallel_dw = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#full_table_name.
-TSqlParserVisitor.prototype.visitFull_table_name = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#table_name.
-TSqlParserVisitor.prototype.visitTable_name = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#simple_name.
-TSqlParserVisitor.prototype.visitSimple_name = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#func_proc_name_schema.
-TSqlParserVisitor.prototype.visitFunc_proc_name_schema = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#func_proc_name_database_schema.
-TSqlParserVisitor.prototype.visitFunc_proc_name_database_schema = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#func_proc_name_server_database_schema.
-TSqlParserVisitor.prototype.visitFunc_proc_name_server_database_schema = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#ddl_object.
-TSqlParserVisitor.prototype.visitDdl_object = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#full_column_name.
-TSqlParserVisitor.prototype.visitFull_column_name = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#column_name_list_with_order.
-TSqlParserVisitor.prototype.visitColumn_name_list_with_order = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#column_name_list.
-TSqlParserVisitor.prototype.visitColumn_name_list = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#cursor_name.
-TSqlParserVisitor.prototype.visitCursor_name = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#on_off.
-TSqlParserVisitor.prototype.visitOn_off = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#clustered.
-TSqlParserVisitor.prototype.visitClustered = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#null_notnull.
-TSqlParserVisitor.prototype.visitNull_notnull = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#null_or_default.
-TSqlParserVisitor.prototype.visitNull_or_default = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#scalar_function_name.
-TSqlParserVisitor.prototype.visitScalar_function_name = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#begin_conversation_timer.
-TSqlParserVisitor.prototype.visitBegin_conversation_timer = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#begin_conversation_dialog.
-TSqlParserVisitor.prototype.visitBegin_conversation_dialog = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#contract_name.
-TSqlParserVisitor.prototype.visitContract_name = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#service_name.
-TSqlParserVisitor.prototype.visitService_name = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#end_conversation.
-TSqlParserVisitor.prototype.visitEnd_conversation = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#waitfor_conversation.
-TSqlParserVisitor.prototype.visitWaitfor_conversation = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#get_conversation.
-TSqlParserVisitor.prototype.visitGet_conversation = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#queue_id.
-TSqlParserVisitor.prototype.visitQueue_id = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#send_conversation.
-TSqlParserVisitor.prototype.visitSend_conversation = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#data_type.
-TSqlParserVisitor.prototype.visitData_type = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#default_value.
-TSqlParserVisitor.prototype.visitDefault_value = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#constant.
-TSqlParserVisitor.prototype.visitConstant = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#sign.
-TSqlParserVisitor.prototype.visitSign = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#id.
-TSqlParserVisitor.prototype.visitId = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#simple_id.
-TSqlParserVisitor.prototype.visitSimple_id = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#comparison_operator.
-TSqlParserVisitor.prototype.visitComparison_operator = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#assignment_operator.
-TSqlParserVisitor.prototype.visitAssignment_operator = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-// Visit a parse tree produced by TSqlParser#file_size.
-TSqlParserVisitor.prototype.visitFile_size = function(ctx) {
- return this.visitChildren(ctx);
-};
-
-
-
-exports.TSqlParserVisitor = TSqlParserVisitor;
\ No newline at end of file
diff --git a/src/index.ts b/src/index.ts
index 2e2bc2c..5a766da 100644
--- a/src/index.ts
+++ b/src/index.ts
@@ -1,2 +1,2 @@
-export * from './core';
+export * from './parser';
export * from './utils';
diff --git a/src/lib/generic/SqlLexer.interp b/src/lib/generic/SqlLexer.interp
new file mode 100644
index 0000000..2274f88
--- /dev/null
+++ b/src/lib/generic/SqlLexer.interp
@@ -0,0 +1,3175 @@
+token literal names:
+null
+null
+null
+null
+null
+'ADD'
+'ALL'
+'ALTER'
+'ALWAYS'
+'ANALYZE'
+'AND'
+'AS'
+'ASC'
+'BEFORE'
+'BETWEEN'
+'BOTH'
+'BY'
+'CALL'
+'CASCADE'
+'CASE'
+'CAST'
+'CHANGE'
+'CHARACTER'
+'CHECK'
+'COLLATE'
+'COLUMN'
+'CONDITION'
+'CONSTRAINT'
+'CONTINUE'
+'CONVERT'
+'CREATE'
+'CROSS'
+'CURRENT'
+'CURRENT_USER'
+'CURSOR'
+'DATABASE'
+'DATABASES'
+'DECLARE'
+'DEFAULT'
+'DELAYED'
+'DELETE'
+'DESC'
+'DESCRIBE'
+'DETERMINISTIC'
+'DIAGNOSTICS'
+'DISTINCT'
+'DISTINCTROW'
+'DROP'
+'EACH'
+'ELSE'
+'ELSEIF'
+'ENCLOSED'
+'ESCAPED'
+'EXISTS'
+'EXIT'
+'EXPLAIN'
+'FALSE'
+'FETCH'
+'FOR'
+'FORCE'
+'FOREIGN'
+'FROM'
+'FULLTEXT'
+'GENERATED'
+'GET'
+'GRANT'
+'GROUP'
+'HAVING'
+'HIGH_PRIORITY'
+'IF'
+'IGNORE'
+'IN'
+'INDEX'
+'INFILE'
+'INNER'
+'INOUT'
+'INSERT'
+'INTERVAL'
+'INTO'
+'IS'
+'ITERATE'
+'JOIN'
+'KEY'
+'KEYS'
+'KILL'
+'LEADING'
+'LEAVE'
+'LEFT'
+'LIKE'
+'LIMIT'
+'LINEAR'
+'LINES'
+'LOAD'
+'LOCK'
+'LOOP'
+'LOW_PRIORITY'
+'MASTER_BIND'
+'MASTER_SSL_VERIFY_SERVER_CERT'
+'MATCH'
+'MAXVALUE'
+'MODIFIES'
+'NATURAL'
+'NOT'
+'NO_WRITE_TO_BINLOG'
+'NULL'
+'NUMBER'
+'ON'
+'OPTIMIZE'
+'OPTION'
+'OPTIONALLY'
+'OR'
+'ORDER'
+'OUT'
+'OUTER'
+'OUTFILE'
+'PARTITION'
+'PRIMARY'
+'PROCEDURE'
+'PURGE'
+'RANGE'
+'READ'
+'READS'
+'REFERENCES'
+'REGEXP'
+'RELEASE'
+'RENAME'
+'REPEAT'
+'REPLACE'
+'REQUIRE'
+'RESIGNAL'
+'RESTRICT'
+'RETURN'
+'REVOKE'
+'RIGHT'
+'RLIKE'
+'SCHEMA'
+'SCHEMAS'
+'SELECT'
+'SET'
+'SEPARATOR'
+'SHOW'
+'SIGNAL'
+'SPATIAL'
+'SQL'
+'SQLEXCEPTION'
+'SQLSTATE'
+'SQLWARNING'
+'SQL_BIG_RESULT'
+'SQL_CALC_FOUND_ROWS'
+'SQL_SMALL_RESULT'
+'SSL'
+'STACKED'
+'STARTING'
+'STRAIGHT_JOIN'
+'TABLE'
+'TERMINATED'
+'THEN'
+'TO'
+'TRAILING'
+'TRIGGER'
+'TRUE'
+'UNDO'
+'UNION'
+'UNIQUE'
+'UNLOCK'
+'UNSIGNED'
+'UPDATE'
+'USAGE'
+'USE'
+'USING'
+'VALUES'
+'WHEN'
+'WHERE'
+'WHILE'
+'WITH'
+'WRITE'
+'XOR'
+'ZEROFILL'
+'TINYINT'
+'SMALLINT'
+'MEDIUMINT'
+'MIDDLEINT'
+'INT'
+'INT1'
+'INT2'
+'INT3'
+'INT4'
+'INT8'
+'INTEGER'
+'BIGINT'
+'REAL'
+'DOUBLE'
+'PRECISION'
+'FLOAT'
+'FLOAT4'
+'FLOAT8'
+'DECIMAL'
+'DEC'
+'NUMERIC'
+'DATE'
+'TIME'
+'TIMESTAMP'
+'DATETIME'
+'YEAR'
+'CHAR'
+'VARCHAR'
+'NVARCHAR'
+'NATIONAL'
+'BINARY'
+'VARBINARY'
+'TINYBLOB'
+'BLOB'
+'MEDIUMBLOB'
+'LONG'
+'LONGBLOB'
+'TINYTEXT'
+'TEXT'
+'MEDIUMTEXT'
+'LONGTEXT'
+'ENUM'
+'VARYING'
+'SERIAL'
+'YEAR_MONTH'
+'DAY_HOUR'
+'DAY_MINUTE'
+'DAY_SECOND'
+'HOUR_MINUTE'
+'HOUR_SECOND'
+'MINUTE_SECOND'
+'SECOND_MICROSECOND'
+'MINUTE_MICROSECOND'
+'HOUR_MICROSECOND'
+'DAY_MICROSECOND'
+'JSON_VALID'
+'JSON_SCHEMA_VALID'
+'AVG'
+'BIT_AND'
+'BIT_OR'
+'BIT_XOR'
+'COUNT'
+'GROUP_CONCAT'
+'MAX'
+'MIN'
+'STD'
+'STDDEV'
+'STDDEV_POP'
+'STDDEV_SAMP'
+'SUM'
+'VAR_POP'
+'VAR_SAMP'
+'VARIANCE'
+'CURRENT_DATE'
+'CURRENT_TIME'
+'CURRENT_TIMESTAMP'
+'LOCALTIME'
+'CURDATE'
+'CURTIME'
+'DATE_ADD'
+'DATE_SUB'
+'EXTRACT'
+'LOCALTIMESTAMP'
+'NOW'
+'POSITION'
+'SUBSTR'
+'SUBSTRING'
+'SYSDATE'
+'TRIM'
+'UTC_DATE'
+'UTC_TIME'
+'UTC_TIMESTAMP'
+'ACCOUNT'
+'ACTION'
+'AFTER'
+'AGGREGATE'
+'ALGORITHM'
+'ANY'
+'AT'
+'AUTHORS'
+'AUTOCOMMIT'
+'AUTOEXTEND_SIZE'
+'AUTO_INCREMENT'
+'AVG_ROW_LENGTH'
+'BEGIN'
+'BINLOG'
+'BIT'
+'BLOCK'
+'BOOL'
+'BOOLEAN'
+'BTREE'
+'CACHE'
+'CASCADED'
+'CHAIN'
+'CHANGED'
+'CHANNEL'
+'CHECKSUM'
+'PAGE_CHECKSUM'
+'CIPHER'
+'CLASS_ORIGIN'
+'CLIENT'
+'CLOSE'
+'COALESCE'
+'CODE'
+'COLUMNS'
+'COLUMN_FORMAT'
+'COLUMN_NAME'
+'COMMENT'
+'COMMIT'
+'COMPACT'
+'COMPLETION'
+'COMPRESSED'
+'COMPRESSION'
+'CONCURRENT'
+'CONNECTION'
+'CONSISTENT'
+'CONSTRAINT_CATALOG'
+'CONSTRAINT_SCHEMA'
+'CONSTRAINT_NAME'
+'CONTAINS'
+'CONTEXT'
+'CONTRIBUTORS'
+'COPY'
+'CPU'
+'CURSOR_NAME'
+'DATA'
+'DATAFILE'
+'DEALLOCATE'
+'DEFAULT_AUTH'
+'DEFINER'
+'DELAY_KEY_WRITE'
+'DES_KEY_FILE'
+'DIRECTORY'
+'DISABLE'
+'DISCARD'
+'DISK'
+'DO'
+'DUMPFILE'
+'DUPLICATE'
+'DYNAMIC'
+'ENABLE'
+'ENCRYPTION'
+'END'
+'ENDS'
+'ENGINE'
+'ENGINES'
+'ERROR'
+'ERRORS'
+'ESCAPE'
+'EVEN'
+'EVENT'
+'EVENTS'
+'EVERY'
+'EXCHANGE'
+'EXCLUSIVE'
+'EXPIRE'
+'EXPORT'
+'EXTENDED'
+'EXTENT_SIZE'
+'FAST'
+'FAULTS'
+'FIELDS'
+'FILE_BLOCK_SIZE'
+'FILTER'
+'FIRST'
+'FIXED'
+'FLUSH'
+'FOLLOWS'
+'FOUND'
+'FULL'
+'FUNCTION'
+'GENERAL'
+'GLOBAL'
+'GRANTS'
+'GROUP_REPLICATION'
+'HANDLER'
+'HASH'
+'HELP'
+'HOST'
+'HOSTS'
+'IDENTIFIED'
+'IGNORE_SERVER_IDS'
+'IMPORT'
+'INDEXES'
+'INITIAL_SIZE'
+'INPLACE'
+'INSERT_METHOD'
+'INSTALL'
+'INSTANCE'
+'INVISIBLE'
+'INVOKER'
+'IO'
+'IO_THREAD'
+'IPC'
+'ISOLATION'
+'ISSUER'
+'JSON'
+'KEY_BLOCK_SIZE'
+'LANGUAGE'
+'LAST'
+'LEAVES'
+'LESS'
+'LEVEL'
+'LIST'
+'LOCAL'
+'LOGFILE'
+'LOGS'
+'MASTER'
+'MASTER_AUTO_POSITION'
+'MASTER_CONNECT_RETRY'
+'MASTER_DELAY'
+'MASTER_HEARTBEAT_PERIOD'
+'MASTER_HOST'
+'MASTER_LOG_FILE'
+'MASTER_LOG_POS'
+'MASTER_PASSWORD'
+'MASTER_PORT'
+'MASTER_RETRY_COUNT'
+'MASTER_SSL'
+'MASTER_SSL_CA'
+'MASTER_SSL_CAPATH'
+'MASTER_SSL_CERT'
+'MASTER_SSL_CIPHER'
+'MASTER_SSL_CRL'
+'MASTER_SSL_CRLPATH'
+'MASTER_SSL_KEY'
+'MASTER_TLS_VERSION'
+'MASTER_USER'
+'MAX_CONNECTIONS_PER_HOUR'
+'MAX_QUERIES_PER_HOUR'
+'MAX_ROWS'
+'MAX_SIZE'
+'MAX_UPDATES_PER_HOUR'
+'MAX_USER_CONNECTIONS'
+'MEDIUM'
+'MERGE'
+'MESSAGE_TEXT'
+'MID'
+'MIGRATE'
+'MIN_ROWS'
+'MODE'
+'MODIFY'
+'MUTEX'
+'MYSQL'
+'MYSQL_ERRNO'
+'NAME'
+'NAMES'
+'NCHAR'
+'NEVER'
+'NEXT'
+'NO'
+'NODEGROUP'
+'NONE'
+'OFFLINE'
+'OFFSET'
+'OJ'
+'OLD_PASSWORD'
+'ONE'
+'ONLINE'
+'ONLY'
+'OPEN'
+'OPTIMIZER_COSTS'
+'OPTIONS'
+'OWNER'
+'PACK_KEYS'
+'PAGE'
+'PARSER'
+'PARTIAL'
+'PARTITIONING'
+'PARTITIONS'
+'PASSWORD'
+'PHASE'
+'PLUGIN'
+'PLUGIN_DIR'
+'PLUGINS'
+'PORT'
+'PRECEDES'
+'PREPARE'
+'PRESERVE'
+'PREV'
+'PROCESSLIST'
+'PROFILE'
+'PROFILES'
+'PROXY'
+'QUERY'
+'QUICK'
+'REBUILD'
+'RECOVER'
+'REDO_BUFFER_SIZE'
+'REDUNDANT'
+'RELAY'
+'RELAY_LOG_FILE'
+'RELAY_LOG_POS'
+'RELAYLOG'
+'REMOVE'
+'REORGANIZE'
+'REPAIR'
+'REPLICATE_DO_DB'
+'REPLICATE_DO_TABLE'
+'REPLICATE_IGNORE_DB'
+'REPLICATE_IGNORE_TABLE'
+'REPLICATE_REWRITE_DB'
+'REPLICATE_WILD_DO_TABLE'
+'REPLICATE_WILD_IGNORE_TABLE'
+'REPLICATION'
+'RESET'
+'RESUME'
+'RETURNED_SQLSTATE'
+'RETURNS'
+'ROLE'
+'ROLLBACK'
+'ROLLUP'
+'ROTATE'
+'ROW'
+'ROWS'
+'ROW_FORMAT'
+'SAVEPOINT'
+'SCHEDULE'
+'SECURITY'
+'SERVER'
+'SESSION'
+'SHARE'
+'SHARED'
+'SIGNED'
+'SIMPLE'
+'SLAVE'
+'SLOW'
+'SNAPSHOT'
+'SOCKET'
+'SOME'
+'SONAME'
+'SOUNDS'
+'SOURCE'
+'SQL_AFTER_GTIDS'
+'SQL_AFTER_MTS_GAPS'
+'SQL_BEFORE_GTIDS'
+'SQL_BUFFER_RESULT'
+'SQL_CACHE'
+'SQL_NO_CACHE'
+'SQL_THREAD'
+'START'
+'STARTS'
+'STATS_AUTO_RECALC'
+'STATS_PERSISTENT'
+'STATS_SAMPLE_PAGES'
+'STATUS'
+'STOP'
+'STORAGE'
+'STORED'
+'STRING'
+'SUBCLASS_ORIGIN'
+'SUBJECT'
+'SUBPARTITION'
+'SUBPARTITIONS'
+'SUSPEND'
+'SWAPS'
+'SWITCHES'
+'TABLE_NAME'
+'TABLESPACE'
+'TEMPORARY'
+'TEMPTABLE'
+'THAN'
+'TRADITIONAL'
+'TRANSACTION'
+'TRANSACTIONAL'
+'TRIGGERS'
+'TRUNCATE'
+'UNDEFINED'
+'UNDOFILE'
+'UNDO_BUFFER_SIZE'
+'UNINSTALL'
+'UNKNOWN'
+'UNTIL'
+'UPGRADE'
+'USER'
+'USE_FRM'
+'USER_RESOURCES'
+'VALIDATION'
+'VALUE'
+'VARIABLES'
+'VIEW'
+'VIRTUAL'
+'VISIBLE'
+'WAIT'
+'WARNINGS'
+'WITHOUT'
+'WORK'
+'WRAPPER'
+'X509'
+'XA'
+'XML'
+'EUR'
+'USA'
+'JIS'
+'ISO'
+'INTERNAL'
+'QUARTER'
+'MONTH'
+'DAY'
+'HOUR'
+'MINUTE'
+'WEEK'
+'SECOND'
+'MICROSECOND'
+'TABLES'
+'ROUTINE'
+'EXECUTE'
+'FILE'
+'PROCESS'
+'RELOAD'
+'SHUTDOWN'
+'SUPER'
+'PRIVILEGES'
+'APPLICATION_PASSWORD_ADMIN'
+'AUDIT_ADMIN'
+'BACKUP_ADMIN'
+'BINLOG_ADMIN'
+'BINLOG_ENCRYPTION_ADMIN'
+'CLONE_ADMIN'
+'CONNECTION_ADMIN'
+'ENCRYPTION_KEY_ADMIN'
+'FIREWALL_ADMIN'
+'FIREWALL_USER'
+'GROUP_REPLICATION_ADMIN'
+'INNODB_REDO_LOG_ARCHIVE'
+'NDB_STORED_USER'
+'PERSIST_RO_VARIABLES_ADMIN'
+'REPLICATION_APPLIER'
+'REPLICATION_SLAVE_ADMIN'
+'RESOURCE_GROUP_ADMIN'
+'RESOURCE_GROUP_USER'
+'ROLE_ADMIN'
+null
+'SET_USER_ID'
+'SHOW_ROUTINE'
+'SYSTEM_VARIABLES_ADMIN'
+'TABLE_ENCRYPTION_ADMIN'
+'VERSION_TOKEN_ADMIN'
+'XA_RECOVER_ADMIN'
+'ARMSCII8'
+'ASCII'
+'BIG5'
+'CP1250'
+'CP1251'
+'CP1256'
+'CP1257'
+'CP850'
+'CP852'
+'CP866'
+'CP932'
+'DEC8'
+'EUCJPMS'
+'EUCKR'
+'GB2312'
+'GBK'
+'GEOSTD8'
+'GREEK'
+'HEBREW'
+'HP8'
+'KEYBCS2'
+'KOI8R'
+'KOI8U'
+'LATIN1'
+'LATIN2'
+'LATIN5'
+'LATIN7'
+'MACCE'
+'MACROMAN'
+'SJIS'
+'SWE7'
+'TIS620'
+'UCS2'
+'UJIS'
+'UTF16'
+'UTF16LE'
+'UTF32'
+'UTF8'
+'UTF8MB3'
+'UTF8MB4'
+'ARCHIVE'
+'BLACKHOLE'
+'CSV'
+'FEDERATED'
+'INNODB'
+'MEMORY'
+'MRG_MYISAM'
+'MYISAM'
+'NDB'
+'NDBCLUSTER'
+'PERFORMANCE_SCHEMA'
+'TOKUDB'
+'REPEATABLE'
+'COMMITTED'
+'UNCOMMITTED'
+'SERIALIZABLE'
+'GEOMETRYCOLLECTION'
+'GEOMCOLLECTION'
+'GEOMETRY'
+'LINESTRING'
+'MULTILINESTRING'
+'MULTIPOINT'
+'MULTIPOLYGON'
+'POINT'
+'POLYGON'
+'ABS'
+'ACOS'
+'ADDDATE'
+'ADDTIME'
+'AES_DECRYPT'
+'AES_ENCRYPT'
+'AREA'
+'ASBINARY'
+'ASIN'
+'ASTEXT'
+'ASWKB'
+'ASWKT'
+'ASYMMETRIC_DECRYPT'
+'ASYMMETRIC_DERIVE'
+'ASYMMETRIC_ENCRYPT'
+'ASYMMETRIC_SIGN'
+'ASYMMETRIC_VERIFY'
+'ATAN'
+'ATAN2'
+'BENCHMARK'
+'BIN'
+'BIT_COUNT'
+'BIT_LENGTH'
+'BUFFER'
+'CATALOG_NAME'
+'CEIL'
+'CEILING'
+'CENTROID'
+'CHARACTER_LENGTH'
+'CHARSET'
+'CHAR_LENGTH'
+'COERCIBILITY'
+'COLLATION'
+'COMPRESS'
+'CONCAT'
+'CONCAT_WS'
+'CONNECTION_ID'
+'CONV'
+'CONVERT_TZ'
+'COS'
+'COT'
+'CRC32'
+'CREATE_ASYMMETRIC_PRIV_KEY'
+'CREATE_ASYMMETRIC_PUB_KEY'
+'CREATE_DH_PARAMETERS'
+'CREATE_DIGEST'
+'CROSSES'
+'DATEDIFF'
+'DATE_FORMAT'
+'DAYNAME'
+'DAYOFMONTH'
+'DAYOFWEEK'
+'DAYOFYEAR'
+'DECODE'
+'DEGREES'
+'DES_DECRYPT'
+'DES_ENCRYPT'
+'DIMENSION'
+'DISJOINT'
+'ELT'
+'ENCODE'
+'ENCRYPT'
+'ENDPOINT'
+'ENVELOPE'
+'EQUALS'
+'EXP'
+'EXPORT_SET'
+'EXTERIORRING'
+'EXTRACTVALUE'
+'FIELD'
+'FIND_IN_SET'
+'FLOOR'
+'FORMAT'
+'FOUND_ROWS'
+'FROM_BASE64'
+'FROM_DAYS'
+'FROM_UNIXTIME'
+'GEOMCOLLFROMTEXT'
+'GEOMCOLLFROMWKB'
+'GEOMETRYCOLLECTIONFROMTEXT'
+'GEOMETRYCOLLECTIONFROMWKB'
+'GEOMETRYFROMTEXT'
+'GEOMETRYFROMWKB'
+'GEOMETRYN'
+'GEOMETRYTYPE'
+'GEOMFROMTEXT'
+'GEOMFROMWKB'
+'GET_FORMAT'
+'GET_LOCK'
+'GLENGTH'
+'GREATEST'
+'GTID_SUBSET'
+'GTID_SUBTRACT'
+'HEX'
+'IFNULL'
+'INET6_ATON'
+'INET6_NTOA'
+'INET_ATON'
+'INET_NTOA'
+'INSTR'
+'INTERIORRINGN'
+'INTERSECTS'
+'ISCLOSED'
+'ISEMPTY'
+'ISNULL'
+'ISSIMPLE'
+'IS_FREE_LOCK'
+'IS_IPV4'
+'IS_IPV4_COMPAT'
+'IS_IPV4_MAPPED'
+'IS_IPV6'
+'IS_USED_LOCK'
+'LAST_INSERT_ID'
+'LCASE'
+'LEAST'
+'LENGTH'
+'LINEFROMTEXT'
+'LINEFROMWKB'
+'LINESTRINGFROMTEXT'
+'LINESTRINGFROMWKB'
+'LN'
+'LOAD_FILE'
+'LOCATE'
+'LOG'
+'LOG10'
+'LOG2'
+'LOWER'
+'LPAD'
+'LTRIM'
+'MAKEDATE'
+'MAKETIME'
+'MAKE_SET'
+'MASTER_POS_WAIT'
+'MBRCONTAINS'
+'MBRDISJOINT'
+'MBREQUAL'
+'MBRINTERSECTS'
+'MBROVERLAPS'
+'MBRTOUCHES'
+'MBRWITHIN'
+'MD5'
+'MLINEFROMTEXT'
+'MLINEFROMWKB'
+'MONTHNAME'
+'MPOINTFROMTEXT'
+'MPOINTFROMWKB'
+'MPOLYFROMTEXT'
+'MPOLYFROMWKB'
+'MULTILINESTRINGFROMTEXT'
+'MULTILINESTRINGFROMWKB'
+'MULTIPOINTFROMTEXT'
+'MULTIPOINTFROMWKB'
+'MULTIPOLYGONFROMTEXT'
+'MULTIPOLYGONFROMWKB'
+'NAME_CONST'
+'NULLIF'
+'NUMGEOMETRIES'
+'NUMINTERIORRINGS'
+'NUMPOINTS'
+'OCT'
+'OCTET_LENGTH'
+'ORD'
+'OVERLAPS'
+'PERIOD_ADD'
+'PERIOD_DIFF'
+'PI'
+'POINTFROMTEXT'
+'POINTFROMWKB'
+'POINTN'
+'POLYFROMTEXT'
+'POLYFROMWKB'
+'POLYGONFROMTEXT'
+'POLYGONFROMWKB'
+'POW'
+'POWER'
+'QUOTE'
+'RADIANS'
+'RAND'
+'RANDOM_BYTES'
+'RELEASE_LOCK'
+'REVERSE'
+'ROUND'
+'ROW_COUNT'
+'RPAD'
+'RTRIM'
+'SEC_TO_TIME'
+'SESSION_USER'
+'SHA'
+'SHA1'
+'SHA2'
+'SCHEMA_NAME'
+'SIGN'
+'SIN'
+'SLEEP'
+'SOUNDEX'
+'SQL_THREAD_WAIT_AFTER_GTIDS'
+'SQRT'
+'SRID'
+'STARTPOINT'
+'STRCMP'
+'STR_TO_DATE'
+'ST_AREA'
+'ST_ASBINARY'
+'ST_ASTEXT'
+'ST_ASWKB'
+'ST_ASWKT'
+'ST_BUFFER'
+'ST_CENTROID'
+'ST_CONTAINS'
+'ST_CROSSES'
+'ST_DIFFERENCE'
+'ST_DIMENSION'
+'ST_DISJOINT'
+'ST_DISTANCE'
+'ST_ENDPOINT'
+'ST_ENVELOPE'
+'ST_EQUALS'
+'ST_EXTERIORRING'
+'ST_GEOMCOLLFROMTEXT'
+'ST_GEOMCOLLFROMTXT'
+'ST_GEOMCOLLFROMWKB'
+'ST_GEOMETRYCOLLECTIONFROMTEXT'
+'ST_GEOMETRYCOLLECTIONFROMWKB'
+'ST_GEOMETRYFROMTEXT'
+'ST_GEOMETRYFROMWKB'
+'ST_GEOMETRYN'
+'ST_GEOMETRYTYPE'
+'ST_GEOMFROMTEXT'
+'ST_GEOMFROMWKB'
+'ST_INTERIORRINGN'
+'ST_INTERSECTION'
+'ST_INTERSECTS'
+'ST_ISCLOSED'
+'ST_ISEMPTY'
+'ST_ISSIMPLE'
+'ST_LINEFROMTEXT'
+'ST_LINEFROMWKB'
+'ST_LINESTRINGFROMTEXT'
+'ST_LINESTRINGFROMWKB'
+'ST_NUMGEOMETRIES'
+'ST_NUMINTERIORRING'
+'ST_NUMINTERIORRINGS'
+'ST_NUMPOINTS'
+'ST_OVERLAPS'
+'ST_POINTFROMTEXT'
+'ST_POINTFROMWKB'
+'ST_POINTN'
+'ST_POLYFROMTEXT'
+'ST_POLYFROMWKB'
+'ST_POLYGONFROMTEXT'
+'ST_POLYGONFROMWKB'
+'ST_SRID'
+'ST_STARTPOINT'
+'ST_SYMDIFFERENCE'
+'ST_TOUCHES'
+'ST_UNION'
+'ST_WITHIN'
+'ST_X'
+'ST_Y'
+'SUBDATE'
+'SUBSTRING_INDEX'
+'SUBTIME'
+'SYSTEM_USER'
+'TAN'
+'TIMEDIFF'
+'TIMESTAMPADD'
+'TIMESTAMPDIFF'
+'TIME_FORMAT'
+'TIME_TO_SEC'
+'TOUCHES'
+'TO_BASE64'
+'TO_DAYS'
+'TO_SECONDS'
+'UCASE'
+'UNCOMPRESS'
+'UNCOMPRESSED_LENGTH'
+'UNHEX'
+'UNIX_TIMESTAMP'
+'UPDATEXML'
+'UPPER'
+'UUID'
+'UUID_SHORT'
+'VALIDATE_PASSWORD_STRENGTH'
+'VERSION'
+'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS'
+'WEEKDAY'
+'WEEKOFYEAR'
+'WEIGHT_STRING'
+'WITHIN'
+'YEARWEEK'
+'Y'
+'X'
+':='
+'+='
+'-='
+'*='
+'/='
+'%='
+'&='
+'^='
+'|='
+'*'
+'/'
+'%'
+'+'
+'--'
+'-'
+'DIV'
+'MOD'
+'='
+'>'
+'<'
+'!'
+'~'
+'|'
+'&'
+'^'
+'.'
+'('
+')'
+','
+';'
+'@'
+'0'
+'1'
+'2'
+'\''
+'"'
+'`'
+':'
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+
+token symbolic names:
+null
+SPACE
+SPEC_MYSQL_COMMENT
+COMMENT_INPUT
+LINE_COMMENT
+ADD
+ALL
+ALTER
+ALWAYS
+ANALYZE
+AND
+AS
+ASC
+BEFORE
+BETWEEN
+BOTH
+BY
+CALL
+CASCADE
+CASE
+CAST
+CHANGE
+CHARACTER
+CHECK
+COLLATE
+COLUMN
+CONDITION
+CONSTRAINT
+CONTINUE
+CONVERT
+CREATE
+CROSS
+CURRENT
+CURRENT_USER
+CURSOR
+DATABASE
+DATABASES
+DECLARE
+DEFAULT
+DELAYED
+DELETE
+DESC
+DESCRIBE
+DETERMINISTIC
+DIAGNOSTICS
+DISTINCT
+DISTINCTROW
+DROP
+EACH
+ELSE
+ELSEIF
+ENCLOSED
+ESCAPED
+EXISTS
+EXIT
+EXPLAIN
+FALSE
+FETCH
+FOR
+FORCE
+FOREIGN
+FROM
+FULLTEXT
+GENERATED
+GET
+GRANT
+GROUP
+HAVING
+HIGH_PRIORITY
+IF
+IGNORE
+IN
+INDEX
+INFILE
+INNER
+INOUT
+INSERT
+INTERVAL
+INTO
+IS
+ITERATE
+JOIN
+KEY
+KEYS
+KILL
+LEADING
+LEAVE
+LEFT
+LIKE
+LIMIT
+LINEAR
+LINES
+LOAD
+LOCK
+LOOP
+LOW_PRIORITY
+MASTER_BIND
+MASTER_SSL_VERIFY_SERVER_CERT
+MATCH
+MAXVALUE
+MODIFIES
+NATURAL
+NOT
+NO_WRITE_TO_BINLOG
+NULL_LITERAL
+NUMBER
+ON
+OPTIMIZE
+OPTION
+OPTIONALLY
+OR
+ORDER
+OUT
+OUTER
+OUTFILE
+PARTITION
+PRIMARY
+PROCEDURE
+PURGE
+RANGE
+READ
+READS
+REFERENCES
+REGEXP
+RELEASE
+RENAME
+REPEAT
+REPLACE
+REQUIRE
+RESIGNAL
+RESTRICT
+RETURN
+REVOKE
+RIGHT
+RLIKE
+SCHEMA
+SCHEMAS
+SELECT
+SET
+SEPARATOR
+SHOW
+SIGNAL
+SPATIAL
+SQL
+SQLEXCEPTION
+SQLSTATE
+SQLWARNING
+SQL_BIG_RESULT
+SQL_CALC_FOUND_ROWS
+SQL_SMALL_RESULT
+SSL
+STACKED
+STARTING
+STRAIGHT_JOIN
+TABLE
+TERMINATED
+THEN
+TO
+TRAILING
+TRIGGER
+TRUE
+UNDO
+UNION
+UNIQUE
+UNLOCK
+UNSIGNED
+UPDATE
+USAGE
+USE
+USING
+VALUES
+WHEN
+WHERE
+WHILE
+WITH
+WRITE
+XOR
+ZEROFILL
+TINYINT
+SMALLINT
+MEDIUMINT
+MIDDLEINT
+INT
+INT1
+INT2
+INT3
+INT4
+INT8
+INTEGER
+BIGINT
+REAL
+DOUBLE
+PRECISION
+FLOAT
+FLOAT4
+FLOAT8
+DECIMAL
+DEC
+NUMERIC
+DATE
+TIME
+TIMESTAMP
+DATETIME
+YEAR
+CHAR
+VARCHAR
+NVARCHAR
+NATIONAL
+BINARY
+VARBINARY
+TINYBLOB
+BLOB
+MEDIUMBLOB
+LONG
+LONGBLOB
+TINYTEXT
+TEXT
+MEDIUMTEXT
+LONGTEXT
+ENUM
+VARYING
+SERIAL
+YEAR_MONTH
+DAY_HOUR
+DAY_MINUTE
+DAY_SECOND
+HOUR_MINUTE
+HOUR_SECOND
+MINUTE_SECOND
+SECOND_MICROSECOND
+MINUTE_MICROSECOND
+HOUR_MICROSECOND
+DAY_MICROSECOND
+JSON_VALID
+JSON_SCHEMA_VALID
+AVG
+BIT_AND
+BIT_OR
+BIT_XOR
+COUNT
+GROUP_CONCAT
+MAX
+MIN
+STD
+STDDEV
+STDDEV_POP
+STDDEV_SAMP
+SUM
+VAR_POP
+VAR_SAMP
+VARIANCE
+CURRENT_DATE
+CURRENT_TIME
+CURRENT_TIMESTAMP
+LOCALTIME
+CURDATE
+CURTIME
+DATE_ADD
+DATE_SUB
+EXTRACT
+LOCALTIMESTAMP
+NOW
+POSITION
+SUBSTR
+SUBSTRING
+SYSDATE
+TRIM
+UTC_DATE
+UTC_TIME
+UTC_TIMESTAMP
+ACCOUNT
+ACTION
+AFTER
+AGGREGATE
+ALGORITHM
+ANY
+AT
+AUTHORS
+AUTOCOMMIT
+AUTOEXTEND_SIZE
+AUTO_INCREMENT
+AVG_ROW_LENGTH
+BEGIN
+BINLOG
+BIT
+BLOCK
+BOOL
+BOOLEAN
+BTREE
+CACHE
+CASCADED
+CHAIN
+CHANGED
+CHANNEL
+CHECKSUM
+PAGE_CHECKSUM
+CIPHER
+CLASS_ORIGIN
+CLIENT
+CLOSE
+COALESCE
+CODE
+COLUMNS
+COLUMN_FORMAT
+COLUMN_NAME
+COMMENT
+COMMIT
+COMPACT
+COMPLETION
+COMPRESSED
+COMPRESSION
+CONCURRENT
+CONNECTION
+CONSISTENT
+CONSTRAINT_CATALOG
+CONSTRAINT_SCHEMA
+CONSTRAINT_NAME
+CONTAINS
+CONTEXT
+CONTRIBUTORS
+COPY
+CPU
+CURSOR_NAME
+DATA
+DATAFILE
+DEALLOCATE
+DEFAULT_AUTH
+DEFINER
+DELAY_KEY_WRITE
+DES_KEY_FILE
+DIRECTORY
+DISABLE
+DISCARD
+DISK
+DO
+DUMPFILE
+DUPLICATE
+DYNAMIC
+ENABLE
+ENCRYPTION
+END
+ENDS
+ENGINE
+ENGINES
+ERROR
+ERRORS
+ESCAPE
+EVEN
+EVENT
+EVENTS
+EVERY
+EXCHANGE
+EXCLUSIVE
+EXPIRE
+EXPORT
+EXTENDED
+EXTENT_SIZE
+FAST
+FAULTS
+FIELDS
+FILE_BLOCK_SIZE
+FILTER
+FIRST
+FIXED
+FLUSH
+FOLLOWS
+FOUND
+FULL
+FUNCTION
+GENERAL
+GLOBAL
+GRANTS
+GROUP_REPLICATION
+HANDLER
+HASH
+HELP
+HOST
+HOSTS
+IDENTIFIED
+IGNORE_SERVER_IDS
+IMPORT
+INDEXES
+INITIAL_SIZE
+INPLACE
+INSERT_METHOD
+INSTALL
+INSTANCE
+INVISIBLE
+INVOKER
+IO
+IO_THREAD
+IPC
+ISOLATION
+ISSUER
+JSON
+KEY_BLOCK_SIZE
+LANGUAGE
+LAST
+LEAVES
+LESS
+LEVEL
+LIST
+LOCAL
+LOGFILE
+LOGS
+MASTER
+MASTER_AUTO_POSITION
+MASTER_CONNECT_RETRY
+MASTER_DELAY
+MASTER_HEARTBEAT_PERIOD
+MASTER_HOST
+MASTER_LOG_FILE
+MASTER_LOG_POS
+MASTER_PASSWORD
+MASTER_PORT
+MASTER_RETRY_COUNT
+MASTER_SSL
+MASTER_SSL_CA
+MASTER_SSL_CAPATH
+MASTER_SSL_CERT
+MASTER_SSL_CIPHER
+MASTER_SSL_CRL
+MASTER_SSL_CRLPATH
+MASTER_SSL_KEY
+MASTER_TLS_VERSION
+MASTER_USER
+MAX_CONNECTIONS_PER_HOUR
+MAX_QUERIES_PER_HOUR
+MAX_ROWS
+MAX_SIZE
+MAX_UPDATES_PER_HOUR
+MAX_USER_CONNECTIONS
+MEDIUM
+MERGE
+MESSAGE_TEXT
+MID
+MIGRATE
+MIN_ROWS
+MODE
+MODIFY
+MUTEX
+MYSQL
+MYSQL_ERRNO
+NAME
+NAMES
+NCHAR
+NEVER
+NEXT
+NO
+NODEGROUP
+NONE
+OFFLINE
+OFFSET
+OJ
+OLD_PASSWORD
+ONE
+ONLINE
+ONLY
+OPEN
+OPTIMIZER_COSTS
+OPTIONS
+OWNER
+PACK_KEYS
+PAGE
+PARSER
+PARTIAL
+PARTITIONING
+PARTITIONS
+PASSWORD
+PHASE
+PLUGIN
+PLUGIN_DIR
+PLUGINS
+PORT
+PRECEDES
+PREPARE
+PRESERVE
+PREV
+PROCESSLIST
+PROFILE
+PROFILES
+PROXY
+QUERY
+QUICK
+REBUILD
+RECOVER
+REDO_BUFFER_SIZE
+REDUNDANT
+RELAY
+RELAY_LOG_FILE
+RELAY_LOG_POS
+RELAYLOG
+REMOVE
+REORGANIZE
+REPAIR
+REPLICATE_DO_DB
+REPLICATE_DO_TABLE
+REPLICATE_IGNORE_DB
+REPLICATE_IGNORE_TABLE
+REPLICATE_REWRITE_DB
+REPLICATE_WILD_DO_TABLE
+REPLICATE_WILD_IGNORE_TABLE
+REPLICATION
+RESET
+RESUME
+RETURNED_SQLSTATE
+RETURNS
+ROLE
+ROLLBACK
+ROLLUP
+ROTATE
+ROW
+ROWS
+ROW_FORMAT
+SAVEPOINT
+SCHEDULE
+SECURITY
+SERVER
+SESSION
+SHARE
+SHARED
+SIGNED
+SIMPLE
+SLAVE
+SLOW
+SNAPSHOT
+SOCKET
+SOME
+SONAME
+SOUNDS
+SOURCE
+SQL_AFTER_GTIDS
+SQL_AFTER_MTS_GAPS
+SQL_BEFORE_GTIDS
+SQL_BUFFER_RESULT
+SQL_CACHE
+SQL_NO_CACHE
+SQL_THREAD
+START
+STARTS
+STATS_AUTO_RECALC
+STATS_PERSISTENT
+STATS_SAMPLE_PAGES
+STATUS
+STOP
+STORAGE
+STORED
+STRING
+SUBCLASS_ORIGIN
+SUBJECT
+SUBPARTITION
+SUBPARTITIONS
+SUSPEND
+SWAPS
+SWITCHES
+TABLE_NAME
+TABLESPACE
+TEMPORARY
+TEMPTABLE
+THAN
+TRADITIONAL
+TRANSACTION
+TRANSACTIONAL
+TRIGGERS
+TRUNCATE
+UNDEFINED
+UNDOFILE
+UNDO_BUFFER_SIZE
+UNINSTALL
+UNKNOWN
+UNTIL
+UPGRADE
+USER
+USE_FRM
+USER_RESOURCES
+VALIDATION
+VALUE
+VARIABLES
+VIEW
+VIRTUAL
+VISIBLE
+WAIT
+WARNINGS
+WITHOUT
+WORK
+WRAPPER
+X509
+XA
+XML
+EUR
+USA
+JIS
+ISO
+INTERNAL
+QUARTER
+MONTH
+DAY
+HOUR
+MINUTE
+WEEK
+SECOND
+MICROSECOND
+TABLES
+ROUTINE
+EXECUTE
+FILE
+PROCESS
+RELOAD
+SHUTDOWN
+SUPER
+PRIVILEGES
+APPLICATION_PASSWORD_ADMIN
+AUDIT_ADMIN
+BACKUP_ADMIN
+BINLOG_ADMIN
+BINLOG_ENCRYPTION_ADMIN
+CLONE_ADMIN
+CONNECTION_ADMIN
+ENCRYPTION_KEY_ADMIN
+FIREWALL_ADMIN
+FIREWALL_USER
+GROUP_REPLICATION_ADMIN
+INNODB_REDO_LOG_ARCHIVE
+NDB_STORED_USER
+PERSIST_RO_VARIABLES_ADMIN
+REPLICATION_APPLIER
+REPLICATION_SLAVE_ADMIN
+RESOURCE_GROUP_ADMIN
+RESOURCE_GROUP_USER
+ROLE_ADMIN
+SESSION_VARIABLES_ADMIN
+SET_USER_ID
+SHOW_ROUTINE
+SYSTEM_VARIABLES_ADMIN
+TABLE_ENCRYPTION_ADMIN
+VERSION_TOKEN_ADMIN
+XA_RECOVER_ADMIN
+ARMSCII8
+ASCII
+BIG5
+CP1250
+CP1251
+CP1256
+CP1257
+CP850
+CP852
+CP866
+CP932
+DEC8
+EUCJPMS
+EUCKR
+GB2312
+GBK
+GEOSTD8
+GREEK
+HEBREW
+HP8
+KEYBCS2
+KOI8R
+KOI8U
+LATIN1
+LATIN2
+LATIN5
+LATIN7
+MACCE
+MACROMAN
+SJIS
+SWE7
+TIS620
+UCS2
+UJIS
+UTF16
+UTF16LE
+UTF32
+UTF8
+UTF8MB3
+UTF8MB4
+ARCHIVE
+BLACKHOLE
+CSV
+FEDERATED
+INNODB
+MEMORY
+MRG_MYISAM
+MYISAM
+NDB
+NDBCLUSTER
+PERFORMANCE_SCHEMA
+TOKUDB
+REPEATABLE
+COMMITTED
+UNCOMMITTED
+SERIALIZABLE
+GEOMETRYCOLLECTION
+GEOMCOLLECTION
+GEOMETRY
+LINESTRING
+MULTILINESTRING
+MULTIPOINT
+MULTIPOLYGON
+POINT
+POLYGON
+ABS
+ACOS
+ADDDATE
+ADDTIME
+AES_DECRYPT
+AES_ENCRYPT
+AREA
+ASBINARY
+ASIN
+ASTEXT
+ASWKB
+ASWKT
+ASYMMETRIC_DECRYPT
+ASYMMETRIC_DERIVE
+ASYMMETRIC_ENCRYPT
+ASYMMETRIC_SIGN
+ASYMMETRIC_VERIFY
+ATAN
+ATAN2
+BENCHMARK
+BIN
+BIT_COUNT
+BIT_LENGTH
+BUFFER
+CATALOG_NAME
+CEIL
+CEILING
+CENTROID
+CHARACTER_LENGTH
+CHARSET
+CHAR_LENGTH
+COERCIBILITY
+COLLATION
+COMPRESS
+CONCAT
+CONCAT_WS
+CONNECTION_ID
+CONV
+CONVERT_TZ
+COS
+COT
+CRC32
+CREATE_ASYMMETRIC_PRIV_KEY
+CREATE_ASYMMETRIC_PUB_KEY
+CREATE_DH_PARAMETERS
+CREATE_DIGEST
+CROSSES
+DATEDIFF
+DATE_FORMAT
+DAYNAME
+DAYOFMONTH
+DAYOFWEEK
+DAYOFYEAR
+DECODE
+DEGREES
+DES_DECRYPT
+DES_ENCRYPT
+DIMENSION
+DISJOINT
+ELT
+ENCODE
+ENCRYPT
+ENDPOINT
+ENVELOPE
+EQUALS
+EXP
+EXPORT_SET
+EXTERIORRING
+EXTRACTVALUE
+FIELD
+FIND_IN_SET
+FLOOR
+FORMAT
+FOUND_ROWS
+FROM_BASE64
+FROM_DAYS
+FROM_UNIXTIME
+GEOMCOLLFROMTEXT
+GEOMCOLLFROMWKB
+GEOMETRYCOLLECTIONFROMTEXT
+GEOMETRYCOLLECTIONFROMWKB
+GEOMETRYFROMTEXT
+GEOMETRYFROMWKB
+GEOMETRYN
+GEOMETRYTYPE
+GEOMFROMTEXT
+GEOMFROMWKB
+GET_FORMAT
+GET_LOCK
+GLENGTH
+GREATEST
+GTID_SUBSET
+GTID_SUBTRACT
+HEX
+IFNULL
+INET6_ATON
+INET6_NTOA
+INET_ATON
+INET_NTOA
+INSTR
+INTERIORRINGN
+INTERSECTS
+ISCLOSED
+ISEMPTY
+ISNULL
+ISSIMPLE
+IS_FREE_LOCK
+IS_IPV4
+IS_IPV4_COMPAT
+IS_IPV4_MAPPED
+IS_IPV6
+IS_USED_LOCK
+LAST_INSERT_ID
+LCASE
+LEAST
+LENGTH
+LINEFROMTEXT
+LINEFROMWKB
+LINESTRINGFROMTEXT
+LINESTRINGFROMWKB
+LN
+LOAD_FILE
+LOCATE
+LOG
+LOG10
+LOG2
+LOWER
+LPAD
+LTRIM
+MAKEDATE
+MAKETIME
+MAKE_SET
+MASTER_POS_WAIT
+MBRCONTAINS
+MBRDISJOINT
+MBREQUAL
+MBRINTERSECTS
+MBROVERLAPS
+MBRTOUCHES
+MBRWITHIN
+MD5
+MLINEFROMTEXT
+MLINEFROMWKB
+MONTHNAME
+MPOINTFROMTEXT
+MPOINTFROMWKB
+MPOLYFROMTEXT
+MPOLYFROMWKB
+MULTILINESTRINGFROMTEXT
+MULTILINESTRINGFROMWKB
+MULTIPOINTFROMTEXT
+MULTIPOINTFROMWKB
+MULTIPOLYGONFROMTEXT
+MULTIPOLYGONFROMWKB
+NAME_CONST
+NULLIF
+NUMGEOMETRIES
+NUMINTERIORRINGS
+NUMPOINTS
+OCT
+OCTET_LENGTH
+ORD
+OVERLAPS
+PERIOD_ADD
+PERIOD_DIFF
+PI
+POINTFROMTEXT
+POINTFROMWKB
+POINTN
+POLYFROMTEXT
+POLYFROMWKB
+POLYGONFROMTEXT
+POLYGONFROMWKB
+POW
+POWER
+QUOTE
+RADIANS
+RAND
+RANDOM_BYTES
+RELEASE_LOCK
+REVERSE
+ROUND
+ROW_COUNT
+RPAD
+RTRIM
+SEC_TO_TIME
+SESSION_USER
+SHA
+SHA1
+SHA2
+SCHEMA_NAME
+SIGN
+SIN
+SLEEP
+SOUNDEX
+SQL_THREAD_WAIT_AFTER_GTIDS
+SQRT
+SRID
+STARTPOINT
+STRCMP
+STR_TO_DATE
+ST_AREA
+ST_ASBINARY
+ST_ASTEXT
+ST_ASWKB
+ST_ASWKT
+ST_BUFFER
+ST_CENTROID
+ST_CONTAINS
+ST_CROSSES
+ST_DIFFERENCE
+ST_DIMENSION
+ST_DISJOINT
+ST_DISTANCE
+ST_ENDPOINT
+ST_ENVELOPE
+ST_EQUALS
+ST_EXTERIORRING
+ST_GEOMCOLLFROMTEXT
+ST_GEOMCOLLFROMTXT
+ST_GEOMCOLLFROMWKB
+ST_GEOMETRYCOLLECTIONFROMTEXT
+ST_GEOMETRYCOLLECTIONFROMWKB
+ST_GEOMETRYFROMTEXT
+ST_GEOMETRYFROMWKB
+ST_GEOMETRYN
+ST_GEOMETRYTYPE
+ST_GEOMFROMTEXT
+ST_GEOMFROMWKB
+ST_INTERIORRINGN
+ST_INTERSECTION
+ST_INTERSECTS
+ST_ISCLOSED
+ST_ISEMPTY
+ST_ISSIMPLE
+ST_LINEFROMTEXT
+ST_LINEFROMWKB
+ST_LINESTRINGFROMTEXT
+ST_LINESTRINGFROMWKB
+ST_NUMGEOMETRIES
+ST_NUMINTERIORRING
+ST_NUMINTERIORRINGS
+ST_NUMPOINTS
+ST_OVERLAPS
+ST_POINTFROMTEXT
+ST_POINTFROMWKB
+ST_POINTN
+ST_POLYFROMTEXT
+ST_POLYFROMWKB
+ST_POLYGONFROMTEXT
+ST_POLYGONFROMWKB
+ST_SRID
+ST_STARTPOINT
+ST_SYMDIFFERENCE
+ST_TOUCHES
+ST_UNION
+ST_WITHIN
+ST_X
+ST_Y
+SUBDATE
+SUBSTRING_INDEX
+SUBTIME
+SYSTEM_USER
+TAN
+TIMEDIFF
+TIMESTAMPADD
+TIMESTAMPDIFF
+TIME_FORMAT
+TIME_TO_SEC
+TOUCHES
+TO_BASE64
+TO_DAYS
+TO_SECONDS
+UCASE
+UNCOMPRESS
+UNCOMPRESSED_LENGTH
+UNHEX
+UNIX_TIMESTAMP
+UPDATEXML
+UPPER
+UUID
+UUID_SHORT
+VALIDATE_PASSWORD_STRENGTH
+VERSION
+WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS
+WEEKDAY
+WEEKOFYEAR
+WEIGHT_STRING
+WITHIN
+YEARWEEK
+Y_FUNCTION
+X_FUNCTION
+VAR_ASSIGN
+PLUS_ASSIGN
+MINUS_ASSIGN
+MULT_ASSIGN
+DIV_ASSIGN
+MOD_ASSIGN
+AND_ASSIGN
+XOR_ASSIGN
+OR_ASSIGN
+STAR
+DIVIDE
+MODULE
+PLUS
+MINUSMINUS
+MINUS
+DIV
+MOD
+EQUAL_SYMBOL
+GREATER_SYMBOL
+LESS_SYMBOL
+EXCLAMATION_SYMBOL
+BIT_NOT_OP
+BIT_OR_OP
+BIT_AND_OP
+BIT_XOR_OP
+DOT
+LR_BRACKET
+RR_BRACKET
+COMMA
+SEMI
+AT_SIGN
+ZERO_DECIMAL
+ONE_DECIMAL
+TWO_DECIMAL
+SINGLE_QUOTE_SYMB
+DOUBLE_QUOTE_SYMB
+REVERSE_QUOTE_SYMB
+COLON_SYMB
+CHARSET_REVERSE_QOUTE_STRING
+FILESIZE_LITERAL
+START_NATIONAL_STRING_LITERAL
+STRING_LITERAL
+DECIMAL_LITERAL
+HEXADECIMAL_LITERAL
+REAL_LITERAL
+NULL_SPEC_LITERAL
+BIT_STRING
+STRING_CHARSET_NAME
+DOT_ID
+ID
+REVERSE_QUOTE_ID
+STRING_USER_NAME
+LOCAL_ID
+GLOBAL_ID
+ERROR_RECONGNIGION
+
+rule names:
+SPACE
+SPEC_MYSQL_COMMENT
+COMMENT_INPUT
+LINE_COMMENT
+ADD
+ALL
+ALTER
+ALWAYS
+ANALYZE
+AND
+AS
+ASC
+BEFORE
+BETWEEN
+BOTH
+BY
+CALL
+CASCADE
+CASE
+CAST
+CHANGE
+CHARACTER
+CHECK
+COLLATE
+COLUMN
+CONDITION
+CONSTRAINT
+CONTINUE
+CONVERT
+CREATE
+CROSS
+CURRENT
+CURRENT_USER
+CURSOR
+DATABASE
+DATABASES
+DECLARE
+DEFAULT
+DELAYED
+DELETE
+DESC
+DESCRIBE
+DETERMINISTIC
+DIAGNOSTICS
+DISTINCT
+DISTINCTROW
+DROP
+EACH
+ELSE
+ELSEIF
+ENCLOSED
+ESCAPED
+EXISTS
+EXIT
+EXPLAIN
+FALSE
+FETCH
+FOR
+FORCE
+FOREIGN
+FROM
+FULLTEXT
+GENERATED
+GET
+GRANT
+GROUP
+HAVING
+HIGH_PRIORITY
+IF
+IGNORE
+IN
+INDEX
+INFILE
+INNER
+INOUT
+INSERT
+INTERVAL
+INTO
+IS
+ITERATE
+JOIN
+KEY
+KEYS
+KILL
+LEADING
+LEAVE
+LEFT
+LIKE
+LIMIT
+LINEAR
+LINES
+LOAD
+LOCK
+LOOP
+LOW_PRIORITY
+MASTER_BIND
+MASTER_SSL_VERIFY_SERVER_CERT
+MATCH
+MAXVALUE
+MODIFIES
+NATURAL
+NOT
+NO_WRITE_TO_BINLOG
+NULL_LITERAL
+NUMBER
+ON
+OPTIMIZE
+OPTION
+OPTIONALLY
+OR
+ORDER
+OUT
+OUTER
+OUTFILE
+PARTITION
+PRIMARY
+PROCEDURE
+PURGE
+RANGE
+READ
+READS
+REFERENCES
+REGEXP
+RELEASE
+RENAME
+REPEAT
+REPLACE
+REQUIRE
+RESIGNAL
+RESTRICT
+RETURN
+REVOKE
+RIGHT
+RLIKE
+SCHEMA
+SCHEMAS
+SELECT
+SET
+SEPARATOR
+SHOW
+SIGNAL
+SPATIAL
+SQL
+SQLEXCEPTION
+SQLSTATE
+SQLWARNING
+SQL_BIG_RESULT
+SQL_CALC_FOUND_ROWS
+SQL_SMALL_RESULT
+SSL
+STACKED
+STARTING
+STRAIGHT_JOIN
+TABLE
+TERMINATED
+THEN
+TO
+TRAILING
+TRIGGER
+TRUE
+UNDO
+UNION
+UNIQUE
+UNLOCK
+UNSIGNED
+UPDATE
+USAGE
+USE
+USING
+VALUES
+WHEN
+WHERE
+WHILE
+WITH
+WRITE
+XOR
+ZEROFILL
+TINYINT
+SMALLINT
+MEDIUMINT
+MIDDLEINT
+INT
+INT1
+INT2
+INT3
+INT4
+INT8
+INTEGER
+BIGINT
+REAL
+DOUBLE
+PRECISION
+FLOAT
+FLOAT4
+FLOAT8
+DECIMAL
+DEC
+NUMERIC
+DATE
+TIME
+TIMESTAMP
+DATETIME
+YEAR
+CHAR
+VARCHAR
+NVARCHAR
+NATIONAL
+BINARY
+VARBINARY
+TINYBLOB
+BLOB
+MEDIUMBLOB
+LONG
+LONGBLOB
+TINYTEXT
+TEXT
+MEDIUMTEXT
+LONGTEXT
+ENUM
+VARYING
+SERIAL
+YEAR_MONTH
+DAY_HOUR
+DAY_MINUTE
+DAY_SECOND
+HOUR_MINUTE
+HOUR_SECOND
+MINUTE_SECOND
+SECOND_MICROSECOND
+MINUTE_MICROSECOND
+HOUR_MICROSECOND
+DAY_MICROSECOND
+JSON_VALID
+JSON_SCHEMA_VALID
+AVG
+BIT_AND
+BIT_OR
+BIT_XOR
+COUNT
+GROUP_CONCAT
+MAX
+MIN
+STD
+STDDEV
+STDDEV_POP
+STDDEV_SAMP
+SUM
+VAR_POP
+VAR_SAMP
+VARIANCE
+CURRENT_DATE
+CURRENT_TIME
+CURRENT_TIMESTAMP
+LOCALTIME
+CURDATE
+CURTIME
+DATE_ADD
+DATE_SUB
+EXTRACT
+LOCALTIMESTAMP
+NOW
+POSITION
+SUBSTR
+SUBSTRING
+SYSDATE
+TRIM
+UTC_DATE
+UTC_TIME
+UTC_TIMESTAMP
+ACCOUNT
+ACTION
+AFTER
+AGGREGATE
+ALGORITHM
+ANY
+AT
+AUTHORS
+AUTOCOMMIT
+AUTOEXTEND_SIZE
+AUTO_INCREMENT
+AVG_ROW_LENGTH
+BEGIN
+BINLOG
+BIT
+BLOCK
+BOOL
+BOOLEAN
+BTREE
+CACHE
+CASCADED
+CHAIN
+CHANGED
+CHANNEL
+CHECKSUM
+PAGE_CHECKSUM
+CIPHER
+CLASS_ORIGIN
+CLIENT
+CLOSE
+COALESCE
+CODE
+COLUMNS
+COLUMN_FORMAT
+COLUMN_NAME
+COMMENT
+COMMIT
+COMPACT
+COMPLETION
+COMPRESSED
+COMPRESSION
+CONCURRENT
+CONNECTION
+CONSISTENT
+CONSTRAINT_CATALOG
+CONSTRAINT_SCHEMA
+CONSTRAINT_NAME
+CONTAINS
+CONTEXT
+CONTRIBUTORS
+COPY
+CPU
+CURSOR_NAME
+DATA
+DATAFILE
+DEALLOCATE
+DEFAULT_AUTH
+DEFINER
+DELAY_KEY_WRITE
+DES_KEY_FILE
+DIRECTORY
+DISABLE
+DISCARD
+DISK
+DO
+DUMPFILE
+DUPLICATE
+DYNAMIC
+ENABLE
+ENCRYPTION
+END
+ENDS
+ENGINE
+ENGINES
+ERROR
+ERRORS
+ESCAPE
+EVEN
+EVENT
+EVENTS
+EVERY
+EXCHANGE
+EXCLUSIVE
+EXPIRE
+EXPORT
+EXTENDED
+EXTENT_SIZE
+FAST
+FAULTS
+FIELDS
+FILE_BLOCK_SIZE
+FILTER
+FIRST
+FIXED
+FLUSH
+FOLLOWS
+FOUND
+FULL
+FUNCTION
+GENERAL
+GLOBAL
+GRANTS
+GROUP_REPLICATION
+HANDLER
+HASH
+HELP
+HOST
+HOSTS
+IDENTIFIED
+IGNORE_SERVER_IDS
+IMPORT
+INDEXES
+INITIAL_SIZE
+INPLACE
+INSERT_METHOD
+INSTALL
+INSTANCE
+INVISIBLE
+INVOKER
+IO
+IO_THREAD
+IPC
+ISOLATION
+ISSUER
+JSON
+KEY_BLOCK_SIZE
+LANGUAGE
+LAST
+LEAVES
+LESS
+LEVEL
+LIST
+LOCAL
+LOGFILE
+LOGS
+MASTER
+MASTER_AUTO_POSITION
+MASTER_CONNECT_RETRY
+MASTER_DELAY
+MASTER_HEARTBEAT_PERIOD
+MASTER_HOST
+MASTER_LOG_FILE
+MASTER_LOG_POS
+MASTER_PASSWORD
+MASTER_PORT
+MASTER_RETRY_COUNT
+MASTER_SSL
+MASTER_SSL_CA
+MASTER_SSL_CAPATH
+MASTER_SSL_CERT
+MASTER_SSL_CIPHER
+MASTER_SSL_CRL
+MASTER_SSL_CRLPATH
+MASTER_SSL_KEY
+MASTER_TLS_VERSION
+MASTER_USER
+MAX_CONNECTIONS_PER_HOUR
+MAX_QUERIES_PER_HOUR
+MAX_ROWS
+MAX_SIZE
+MAX_UPDATES_PER_HOUR
+MAX_USER_CONNECTIONS
+MEDIUM
+MERGE
+MESSAGE_TEXT
+MID
+MIGRATE
+MIN_ROWS
+MODE
+MODIFY
+MUTEX
+MYSQL
+MYSQL_ERRNO
+NAME
+NAMES
+NCHAR
+NEVER
+NEXT
+NO
+NODEGROUP
+NONE
+OFFLINE
+OFFSET
+OJ
+OLD_PASSWORD
+ONE
+ONLINE
+ONLY
+OPEN
+OPTIMIZER_COSTS
+OPTIONS
+OWNER
+PACK_KEYS
+PAGE
+PARSER
+PARTIAL
+PARTITIONING
+PARTITIONS
+PASSWORD
+PHASE
+PLUGIN
+PLUGIN_DIR
+PLUGINS
+PORT
+PRECEDES
+PREPARE
+PRESERVE
+PREV
+PROCESSLIST
+PROFILE
+PROFILES
+PROXY
+QUERY
+QUICK
+REBUILD
+RECOVER
+REDO_BUFFER_SIZE
+REDUNDANT
+RELAY
+RELAY_LOG_FILE
+RELAY_LOG_POS
+RELAYLOG
+REMOVE
+REORGANIZE
+REPAIR
+REPLICATE_DO_DB
+REPLICATE_DO_TABLE
+REPLICATE_IGNORE_DB
+REPLICATE_IGNORE_TABLE
+REPLICATE_REWRITE_DB
+REPLICATE_WILD_DO_TABLE
+REPLICATE_WILD_IGNORE_TABLE
+REPLICATION
+RESET
+RESUME
+RETURNED_SQLSTATE
+RETURNS
+ROLE
+ROLLBACK
+ROLLUP
+ROTATE
+ROW
+ROWS
+ROW_FORMAT
+SAVEPOINT
+SCHEDULE
+SECURITY
+SERVER
+SESSION
+SHARE
+SHARED
+SIGNED
+SIMPLE
+SLAVE
+SLOW
+SNAPSHOT
+SOCKET
+SOME
+SONAME
+SOUNDS
+SOURCE
+SQL_AFTER_GTIDS
+SQL_AFTER_MTS_GAPS
+SQL_BEFORE_GTIDS
+SQL_BUFFER_RESULT
+SQL_CACHE
+SQL_NO_CACHE
+SQL_THREAD
+START
+STARTS
+STATS_AUTO_RECALC
+STATS_PERSISTENT
+STATS_SAMPLE_PAGES
+STATUS
+STOP
+STORAGE
+STORED
+STRING
+SUBCLASS_ORIGIN
+SUBJECT
+SUBPARTITION
+SUBPARTITIONS
+SUSPEND
+SWAPS
+SWITCHES
+TABLE_NAME
+TABLESPACE
+TEMPORARY
+TEMPTABLE
+THAN
+TRADITIONAL
+TRANSACTION
+TRANSACTIONAL
+TRIGGERS
+TRUNCATE
+UNDEFINED
+UNDOFILE
+UNDO_BUFFER_SIZE
+UNINSTALL
+UNKNOWN
+UNTIL
+UPGRADE
+USER
+USE_FRM
+USER_RESOURCES
+VALIDATION
+VALUE
+VARIABLES
+VIEW
+VIRTUAL
+VISIBLE
+WAIT
+WARNINGS
+WITHOUT
+WORK
+WRAPPER
+X509
+XA
+XML
+EUR
+USA
+JIS
+ISO
+INTERNAL
+QUARTER
+MONTH
+DAY
+HOUR
+MINUTE
+WEEK
+SECOND
+MICROSECOND
+TABLES
+ROUTINE
+EXECUTE
+FILE
+PROCESS
+RELOAD
+SHUTDOWN
+SUPER
+PRIVILEGES
+APPLICATION_PASSWORD_ADMIN
+AUDIT_ADMIN
+BACKUP_ADMIN
+BINLOG_ADMIN
+BINLOG_ENCRYPTION_ADMIN
+CLONE_ADMIN
+CONNECTION_ADMIN
+ENCRYPTION_KEY_ADMIN
+FIREWALL_ADMIN
+FIREWALL_USER
+GROUP_REPLICATION_ADMIN
+INNODB_REDO_LOG_ARCHIVE
+NDB_STORED_USER
+PERSIST_RO_VARIABLES_ADMIN
+REPLICATION_APPLIER
+REPLICATION_SLAVE_ADMIN
+RESOURCE_GROUP_ADMIN
+RESOURCE_GROUP_USER
+ROLE_ADMIN
+SESSION_VARIABLES_ADMIN
+SET_USER_ID
+SHOW_ROUTINE
+SYSTEM_VARIABLES_ADMIN
+TABLE_ENCRYPTION_ADMIN
+VERSION_TOKEN_ADMIN
+XA_RECOVER_ADMIN
+ARMSCII8
+ASCII
+BIG5
+CP1250
+CP1251
+CP1256
+CP1257
+CP850
+CP852
+CP866
+CP932
+DEC8
+EUCJPMS
+EUCKR
+GB2312
+GBK
+GEOSTD8
+GREEK
+HEBREW
+HP8
+KEYBCS2
+KOI8R
+KOI8U
+LATIN1
+LATIN2
+LATIN5
+LATIN7
+MACCE
+MACROMAN
+SJIS
+SWE7
+TIS620
+UCS2
+UJIS
+UTF16
+UTF16LE
+UTF32
+UTF8
+UTF8MB3
+UTF8MB4
+ARCHIVE
+BLACKHOLE
+CSV
+FEDERATED
+INNODB
+MEMORY
+MRG_MYISAM
+MYISAM
+NDB
+NDBCLUSTER
+PERFORMANCE_SCHEMA
+TOKUDB
+REPEATABLE
+COMMITTED
+UNCOMMITTED
+SERIALIZABLE
+GEOMETRYCOLLECTION
+GEOMCOLLECTION
+GEOMETRY
+LINESTRING
+MULTILINESTRING
+MULTIPOINT
+MULTIPOLYGON
+POINT
+POLYGON
+ABS
+ACOS
+ADDDATE
+ADDTIME
+AES_DECRYPT
+AES_ENCRYPT
+AREA
+ASBINARY
+ASIN
+ASTEXT
+ASWKB
+ASWKT
+ASYMMETRIC_DECRYPT
+ASYMMETRIC_DERIVE
+ASYMMETRIC_ENCRYPT
+ASYMMETRIC_SIGN
+ASYMMETRIC_VERIFY
+ATAN
+ATAN2
+BENCHMARK
+BIN
+BIT_COUNT
+BIT_LENGTH
+BUFFER
+CATALOG_NAME
+CEIL
+CEILING
+CENTROID
+CHARACTER_LENGTH
+CHARSET
+CHAR_LENGTH
+COERCIBILITY
+COLLATION
+COMPRESS
+CONCAT
+CONCAT_WS
+CONNECTION_ID
+CONV
+CONVERT_TZ
+COS
+COT
+CRC32
+CREATE_ASYMMETRIC_PRIV_KEY
+CREATE_ASYMMETRIC_PUB_KEY
+CREATE_DH_PARAMETERS
+CREATE_DIGEST
+CROSSES
+DATEDIFF
+DATE_FORMAT
+DAYNAME
+DAYOFMONTH
+DAYOFWEEK
+DAYOFYEAR
+DECODE
+DEGREES
+DES_DECRYPT
+DES_ENCRYPT
+DIMENSION
+DISJOINT
+ELT
+ENCODE
+ENCRYPT
+ENDPOINT
+ENVELOPE
+EQUALS
+EXP
+EXPORT_SET
+EXTERIORRING
+EXTRACTVALUE
+FIELD
+FIND_IN_SET
+FLOOR
+FORMAT
+FOUND_ROWS
+FROM_BASE64
+FROM_DAYS
+FROM_UNIXTIME
+GEOMCOLLFROMTEXT
+GEOMCOLLFROMWKB
+GEOMETRYCOLLECTIONFROMTEXT
+GEOMETRYCOLLECTIONFROMWKB
+GEOMETRYFROMTEXT
+GEOMETRYFROMWKB
+GEOMETRYN
+GEOMETRYTYPE
+GEOMFROMTEXT
+GEOMFROMWKB
+GET_FORMAT
+GET_LOCK
+GLENGTH
+GREATEST
+GTID_SUBSET
+GTID_SUBTRACT
+HEX
+IFNULL
+INET6_ATON
+INET6_NTOA
+INET_ATON
+INET_NTOA
+INSTR
+INTERIORRINGN
+INTERSECTS
+ISCLOSED
+ISEMPTY
+ISNULL
+ISSIMPLE
+IS_FREE_LOCK
+IS_IPV4
+IS_IPV4_COMPAT
+IS_IPV4_MAPPED
+IS_IPV6
+IS_USED_LOCK
+LAST_INSERT_ID
+LCASE
+LEAST
+LENGTH
+LINEFROMTEXT
+LINEFROMWKB
+LINESTRINGFROMTEXT
+LINESTRINGFROMWKB
+LN
+LOAD_FILE
+LOCATE
+LOG
+LOG10
+LOG2
+LOWER
+LPAD
+LTRIM
+MAKEDATE
+MAKETIME
+MAKE_SET
+MASTER_POS_WAIT
+MBRCONTAINS
+MBRDISJOINT
+MBREQUAL
+MBRINTERSECTS
+MBROVERLAPS
+MBRTOUCHES
+MBRWITHIN
+MD5
+MLINEFROMTEXT
+MLINEFROMWKB
+MONTHNAME
+MPOINTFROMTEXT
+MPOINTFROMWKB
+MPOLYFROMTEXT
+MPOLYFROMWKB
+MULTILINESTRINGFROMTEXT
+MULTILINESTRINGFROMWKB
+MULTIPOINTFROMTEXT
+MULTIPOINTFROMWKB
+MULTIPOLYGONFROMTEXT
+MULTIPOLYGONFROMWKB
+NAME_CONST
+NULLIF
+NUMGEOMETRIES
+NUMINTERIORRINGS
+NUMPOINTS
+OCT
+OCTET_LENGTH
+ORD
+OVERLAPS
+PERIOD_ADD
+PERIOD_DIFF
+PI
+POINTFROMTEXT
+POINTFROMWKB
+POINTN
+POLYFROMTEXT
+POLYFROMWKB
+POLYGONFROMTEXT
+POLYGONFROMWKB
+POW
+POWER
+QUOTE
+RADIANS
+RAND
+RANDOM_BYTES
+RELEASE_LOCK
+REVERSE
+ROUND
+ROW_COUNT
+RPAD
+RTRIM
+SEC_TO_TIME
+SESSION_USER
+SHA
+SHA1
+SHA2
+SCHEMA_NAME
+SIGN
+SIN
+SLEEP
+SOUNDEX
+SQL_THREAD_WAIT_AFTER_GTIDS
+SQRT
+SRID
+STARTPOINT
+STRCMP
+STR_TO_DATE
+ST_AREA
+ST_ASBINARY
+ST_ASTEXT
+ST_ASWKB
+ST_ASWKT
+ST_BUFFER
+ST_CENTROID
+ST_CONTAINS
+ST_CROSSES
+ST_DIFFERENCE
+ST_DIMENSION
+ST_DISJOINT
+ST_DISTANCE
+ST_ENDPOINT
+ST_ENVELOPE
+ST_EQUALS
+ST_EXTERIORRING
+ST_GEOMCOLLFROMTEXT
+ST_GEOMCOLLFROMTXT
+ST_GEOMCOLLFROMWKB
+ST_GEOMETRYCOLLECTIONFROMTEXT
+ST_GEOMETRYCOLLECTIONFROMWKB
+ST_GEOMETRYFROMTEXT
+ST_GEOMETRYFROMWKB
+ST_GEOMETRYN
+ST_GEOMETRYTYPE
+ST_GEOMFROMTEXT
+ST_GEOMFROMWKB
+ST_INTERIORRINGN
+ST_INTERSECTION
+ST_INTERSECTS
+ST_ISCLOSED
+ST_ISEMPTY
+ST_ISSIMPLE
+ST_LINEFROMTEXT
+ST_LINEFROMWKB
+ST_LINESTRINGFROMTEXT
+ST_LINESTRINGFROMWKB
+ST_NUMGEOMETRIES
+ST_NUMINTERIORRING
+ST_NUMINTERIORRINGS
+ST_NUMPOINTS
+ST_OVERLAPS
+ST_POINTFROMTEXT
+ST_POINTFROMWKB
+ST_POINTN
+ST_POLYFROMTEXT
+ST_POLYFROMWKB
+ST_POLYGONFROMTEXT
+ST_POLYGONFROMWKB
+ST_SRID
+ST_STARTPOINT
+ST_SYMDIFFERENCE
+ST_TOUCHES
+ST_UNION
+ST_WITHIN
+ST_X
+ST_Y
+SUBDATE
+SUBSTRING_INDEX
+SUBTIME
+SYSTEM_USER
+TAN
+TIMEDIFF
+TIMESTAMPADD
+TIMESTAMPDIFF
+TIME_FORMAT
+TIME_TO_SEC
+TOUCHES
+TO_BASE64
+TO_DAYS
+TO_SECONDS
+UCASE
+UNCOMPRESS
+UNCOMPRESSED_LENGTH
+UNHEX
+UNIX_TIMESTAMP
+UPDATEXML
+UPPER
+UUID
+UUID_SHORT
+VALIDATE_PASSWORD_STRENGTH
+VERSION
+WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS
+WEEKDAY
+WEEKOFYEAR
+WEIGHT_STRING
+WITHIN
+YEARWEEK
+Y_FUNCTION
+X_FUNCTION
+VAR_ASSIGN
+PLUS_ASSIGN
+MINUS_ASSIGN
+MULT_ASSIGN
+DIV_ASSIGN
+MOD_ASSIGN
+AND_ASSIGN
+XOR_ASSIGN
+OR_ASSIGN
+STAR
+DIVIDE
+MODULE
+PLUS
+MINUSMINUS
+MINUS
+DIV
+MOD
+EQUAL_SYMBOL
+GREATER_SYMBOL
+LESS_SYMBOL
+EXCLAMATION_SYMBOL
+BIT_NOT_OP
+BIT_OR_OP
+BIT_AND_OP
+BIT_XOR_OP
+DOT
+LR_BRACKET
+RR_BRACKET
+COMMA
+SEMI
+AT_SIGN
+ZERO_DECIMAL
+ONE_DECIMAL
+TWO_DECIMAL
+SINGLE_QUOTE_SYMB
+DOUBLE_QUOTE_SYMB
+REVERSE_QUOTE_SYMB
+COLON_SYMB
+QUOTE_SYMB
+CHARSET_REVERSE_QOUTE_STRING
+FILESIZE_LITERAL
+START_NATIONAL_STRING_LITERAL
+STRING_LITERAL
+DECIMAL_LITERAL
+HEXADECIMAL_LITERAL
+REAL_LITERAL
+NULL_SPEC_LITERAL
+BIT_STRING
+STRING_CHARSET_NAME
+DOT_ID
+ID
+REVERSE_QUOTE_ID
+STRING_USER_NAME
+LOCAL_ID
+GLOBAL_ID
+CHARSET_NAME
+EXPONENT_NUM_PART
+ID_LITERAL
+DQUOTA_STRING
+SQUOTA_STRING
+BQUOTA_STRING
+HEX_DIGIT
+DEC_DIGIT
+BIT_STRING_L
+ERROR_RECONGNIGION
+
+channel names:
+DEFAULT_TOKEN_CHANNEL
+HIDDEN
+null
+null
+MYSQLCOMMENT
+ERRORCHANNEL
+
+mode names:
+DEFAULT_MODE
+
+atn:
+[3, 24715, 42794, 33075, 47597, 16764, 15335, 30598, 22884, 2, 1050, 12133, 8, 1, 4, 2, 9, 2, 4, 3, 9, 3, 4, 4, 9, 4, 4, 5, 9, 5, 4, 6, 9, 6, 4, 7, 9, 7, 4, 8, 9, 8, 4, 9, 9, 9, 4, 10, 9, 10, 4, 11, 9, 11, 4, 12, 9, 12, 4, 13, 9, 13, 4, 14, 9, 14, 4, 15, 9, 15, 4, 16, 9, 16, 4, 17, 9, 17, 4, 18, 9, 18, 4, 19, 9, 19, 4, 20, 9, 20, 4, 21, 9, 21, 4, 22, 9, 22, 4, 23, 9, 23, 4, 24, 9, 24, 4, 25, 9, 25, 4, 26, 9, 26, 4, 27, 9, 27, 4, 28, 9, 28, 4, 29, 9, 29, 4, 30, 9, 30, 4, 31, 9, 31, 4, 32, 9, 32, 4, 33, 9, 33, 4, 34, 9, 34, 4, 35, 9, 35, 4, 36, 9, 36, 4, 37, 9, 37, 4, 38, 9, 38, 4, 39, 9, 39, 4, 40, 9, 40, 4, 41, 9, 41, 4, 42, 9, 42, 4, 43, 9, 43, 4, 44, 9, 44, 4, 45, 9, 45, 4, 46, 9, 46, 4, 47, 9, 47, 4, 48, 9, 48, 4, 49, 9, 49, 4, 50, 9, 50, 4, 51, 9, 51, 4, 52, 9, 52, 4, 53, 9, 53, 4, 54, 9, 54, 4, 55, 9, 55, 4, 56, 9, 56, 4, 57, 9, 57, 4, 58, 9, 58, 4, 59, 9, 59, 4, 60, 9, 60, 4, 61, 9, 61, 4, 62, 9, 62, 4, 63, 9, 63, 4, 64, 9, 64, 4, 65, 9, 65, 4, 66, 9, 66, 4, 67, 9, 67, 4, 68, 9, 68, 4, 69, 9, 69, 4, 70, 9, 70, 4, 71, 9, 71, 4, 72, 9, 72, 4, 73, 9, 73, 4, 74, 9, 74, 4, 75, 9, 75, 4, 76, 9, 76, 4, 77, 9, 77, 4, 78, 9, 78, 4, 79, 9, 79, 4, 80, 9, 80, 4, 81, 9, 81, 4, 82, 9, 82, 4, 83, 9, 83, 4, 84, 9, 84, 4, 85, 9, 85, 4, 86, 9, 86, 4, 87, 9, 87, 4, 88, 9, 88, 4, 89, 9, 89, 4, 90, 9, 90, 4, 91, 9, 91, 4, 92, 9, 92, 4, 93, 9, 93, 4, 94, 9, 94, 4, 95, 9, 95, 4, 96, 9, 96, 4, 97, 9, 97, 4, 98, 9, 98, 4, 99, 9, 99, 4, 100, 9, 100, 4, 101, 9, 101, 4, 102, 9, 102, 4, 103, 9, 103, 4, 104, 9, 104, 4, 105, 9, 105, 4, 106, 9, 106, 4, 107, 9, 107, 4, 108, 9, 108, 4, 109, 9, 109, 4, 110, 9, 110, 4, 111, 9, 111, 4, 112, 9, 112, 4, 113, 9, 113, 4, 114, 9, 114, 4, 115, 9, 115, 4, 116, 9, 116, 4, 117, 9, 117, 4, 118, 9, 118, 4, 119, 9, 119, 4, 120, 9, 120, 4, 121, 9, 121, 4, 122, 9, 122, 4, 123, 9, 123, 4, 124, 9, 124, 4, 125, 9, 125, 4, 126, 9, 126, 4, 127, 9, 127, 4, 128, 9, 128, 4, 129, 9, 129, 4, 130, 9, 130, 4, 131, 9, 131, 4, 132, 9, 132, 4, 133, 9, 133, 4, 134, 9, 134, 4, 135, 9, 135, 4, 136, 9, 136, 4, 137, 9, 137, 4, 138, 9, 138, 4, 139, 9, 139, 4, 140, 9, 140, 4, 141, 9, 141, 4, 142, 9, 142, 4, 143, 9, 143, 4, 144, 9, 144, 4, 145, 9, 145, 4, 146, 9, 146, 4, 147, 9, 147, 4, 148, 9, 148, 4, 149, 9, 149, 4, 150, 9, 150, 4, 151, 9, 151, 4, 152, 9, 152, 4, 153, 9, 153, 4, 154, 9, 154, 4, 155, 9, 155, 4, 156, 9, 156, 4, 157, 9, 157, 4, 158, 9, 158, 4, 159, 9, 159, 4, 160, 9, 160, 4, 161, 9, 161, 4, 162, 9, 162, 4, 163, 9, 163, 4, 164, 9, 164, 4, 165, 9, 165, 4, 166, 9, 166, 4, 167, 9, 167, 4, 168, 9, 168, 4, 169, 9, 169, 4, 170, 9, 170, 4, 171, 9, 171, 4, 172, 9, 172, 4, 173, 9, 173, 4, 174, 9, 174, 4, 175, 9, 175, 4, 176, 9, 176, 4, 177, 9, 177, 4, 178, 9, 178, 4, 179, 9, 179, 4, 180, 9, 180, 4, 181, 9, 181, 4, 182, 9, 182, 4, 183, 9, 183, 4, 184, 9, 184, 4, 185, 9, 185, 4, 186, 9, 186, 4, 187, 9, 187, 4, 188, 9, 188, 4, 189, 9, 189, 4, 190, 9, 190, 4, 191, 9, 191, 4, 192, 9, 192, 4, 193, 9, 193, 4, 194, 9, 194, 4, 195, 9, 195, 4, 196, 9, 196, 4, 197, 9, 197, 4, 198, 9, 198, 4, 199, 9, 199, 4, 200, 9, 200, 4, 201, 9, 201, 4, 202, 9, 202, 4, 203, 9, 203, 4, 204, 9, 204, 4, 205, 9, 205, 4, 206, 9, 206, 4, 207, 9, 207, 4, 208, 9, 208, 4, 209, 9, 209, 4, 210, 9, 210, 4, 211, 9, 211, 4, 212, 9, 212, 4, 213, 9, 213, 4, 214, 9, 214, 4, 215, 9, 215, 4, 216, 9, 216, 4, 217, 9, 217, 4, 218, 9, 218, 4, 219, 9, 219, 4, 220, 9, 220, 4, 221, 9, 221, 4, 222, 9, 222, 4, 223, 9, 223, 4, 224, 9, 224, 4, 225, 9, 225, 4, 226, 9, 226, 4, 227, 9, 227, 4, 228, 9, 228, 4, 229, 9, 229, 4, 230, 9, 230, 4, 231, 9, 231, 4, 232, 9, 232, 4, 233, 9, 233, 4, 234, 9, 234, 4, 235, 9, 235, 4, 236, 9, 236, 4, 237, 9, 237, 4, 238, 9, 238, 4, 239, 9, 239, 4, 240, 9, 240, 4, 241, 9, 241, 4, 242, 9, 242, 4, 243, 9, 243, 4, 244, 9, 244, 4, 245, 9, 245, 4, 246, 9, 246, 4, 247, 9, 247, 4, 248, 9, 248, 4, 249, 9, 249, 4, 250, 9, 250, 4, 251, 9, 251, 4, 252, 9, 252, 4, 253, 9, 253, 4, 254, 9, 254, 4, 255, 9, 255, 4, 256, 9, 256, 4, 257, 9, 257, 4, 258, 9, 258, 4, 259, 9, 259, 4, 260, 9, 260, 4, 261, 9, 261, 4, 262, 9, 262, 4, 263, 9, 263, 4, 264, 9, 264, 4, 265, 9, 265, 4, 266, 9, 266, 4, 267, 9, 267, 4, 268, 9, 268, 4, 269, 9, 269, 4, 270, 9, 270, 4, 271, 9, 271, 4, 272, 9, 272, 4, 273, 9, 273, 4, 274, 9, 274, 4, 275, 9, 275, 4, 276, 9, 276, 4, 277, 9, 277, 4, 278, 9, 278, 4, 279, 9, 279, 4, 280, 9, 280, 4, 281, 9, 281, 4, 282, 9, 282, 4, 283, 9, 283, 4, 284, 9, 284, 4, 285, 9, 285, 4, 286, 9, 286, 4, 287, 9, 287, 4, 288, 9, 288, 4, 289, 9, 289, 4, 290, 9, 290, 4, 291, 9, 291, 4, 292, 9, 292, 4, 293, 9, 293, 4, 294, 9, 294, 4, 295, 9, 295, 4, 296, 9, 296, 4, 297, 9, 297, 4, 298, 9, 298, 4, 299, 9, 299, 4, 300, 9, 300, 4, 301, 9, 301, 4, 302, 9, 302, 4, 303, 9, 303, 4, 304, 9, 304, 4, 305, 9, 305, 4, 306, 9, 306, 4, 307, 9, 307, 4, 308, 9, 308, 4, 309, 9, 309, 4, 310, 9, 310, 4, 311, 9, 311, 4, 312, 9, 312, 4, 313, 9, 313, 4, 314, 9, 314, 4, 315, 9, 315, 4, 316, 9, 316, 4, 317, 9, 317, 4, 318, 9, 318, 4, 319, 9, 319, 4, 320, 9, 320, 4, 321, 9, 321, 4, 322, 9, 322, 4, 323, 9, 323, 4, 324, 9, 324, 4, 325, 9, 325, 4, 326, 9, 326, 4, 327, 9, 327, 4, 328, 9, 328, 4, 329, 9, 329, 4, 330, 9, 330, 4, 331, 9, 331, 4, 332, 9, 332, 4, 333, 9, 333, 4, 334, 9, 334, 4, 335, 9, 335, 4, 336, 9, 336, 4, 337, 9, 337, 4, 338, 9, 338, 4, 339, 9, 339, 4, 340, 9, 340, 4, 341, 9, 341, 4, 342, 9, 342, 4, 343, 9, 343, 4, 344, 9, 344, 4, 345, 9, 345, 4, 346, 9, 346, 4, 347, 9, 347, 4, 348, 9, 348, 4, 349, 9, 349, 4, 350, 9, 350, 4, 351, 9, 351, 4, 352, 9, 352, 4, 353, 9, 353, 4, 354, 9, 354, 4, 355, 9, 355, 4, 356, 9, 356, 4, 357, 9, 357, 4, 358, 9, 358, 4, 359, 9, 359, 4, 360, 9, 360, 4, 361, 9, 361, 4, 362, 9, 362, 4, 363, 9, 363, 4, 364, 9, 364, 4, 365, 9, 365, 4, 366, 9, 366, 4, 367, 9, 367, 4, 368, 9, 368, 4, 369, 9, 369, 4, 370, 9, 370, 4, 371, 9, 371, 4, 372, 9, 372, 4, 373, 9, 373, 4, 374, 9, 374, 4, 375, 9, 375, 4, 376, 9, 376, 4, 377, 9, 377, 4, 378, 9, 378, 4, 379, 9, 379, 4, 380, 9, 380, 4, 381, 9, 381, 4, 382, 9, 382, 4, 383, 9, 383, 4, 384, 9, 384, 4, 385, 9, 385, 4, 386, 9, 386, 4, 387, 9, 387, 4, 388, 9, 388, 4, 389, 9, 389, 4, 390, 9, 390, 4, 391, 9, 391, 4, 392, 9, 392, 4, 393, 9, 393, 4, 394, 9, 394, 4, 395, 9, 395, 4, 396, 9, 396, 4, 397, 9, 397, 4, 398, 9, 398, 4, 399, 9, 399, 4, 400, 9, 400, 4, 401, 9, 401, 4, 402, 9, 402, 4, 403, 9, 403, 4, 404, 9, 404, 4, 405, 9, 405, 4, 406, 9, 406, 4, 407, 9, 407, 4, 408, 9, 408, 4, 409, 9, 409, 4, 410, 9, 410, 4, 411, 9, 411, 4, 412, 9, 412, 4, 413, 9, 413, 4, 414, 9, 414, 4, 415, 9, 415, 4, 416, 9, 416, 4, 417, 9, 417, 4, 418, 9, 418, 4, 419, 9, 419, 4, 420, 9, 420, 4, 421, 9, 421, 4, 422, 9, 422, 4, 423, 9, 423, 4, 424, 9, 424, 4, 425, 9, 425, 4, 426, 9, 426, 4, 427, 9, 427, 4, 428, 9, 428, 4, 429, 9, 429, 4, 430, 9, 430, 4, 431, 9, 431, 4, 432, 9, 432, 4, 433, 9, 433, 4, 434, 9, 434, 4, 435, 9, 435, 4, 436, 9, 436, 4, 437, 9, 437, 4, 438, 9, 438, 4, 439, 9, 439, 4, 440, 9, 440, 4, 441, 9, 441, 4, 442, 9, 442, 4, 443, 9, 443, 4, 444, 9, 444, 4, 445, 9, 445, 4, 446, 9, 446, 4, 447, 9, 447, 4, 448, 9, 448, 4, 449, 9, 449, 4, 450, 9, 450, 4, 451, 9, 451, 4, 452, 9, 452, 4, 453, 9, 453, 4, 454, 9, 454, 4, 455, 9, 455, 4, 456, 9, 456, 4, 457, 9, 457, 4, 458, 9, 458, 4, 459, 9, 459, 4, 460, 9, 460, 4, 461, 9, 461, 4, 462, 9, 462, 4, 463, 9, 463, 4, 464, 9, 464, 4, 465, 9, 465, 4, 466, 9, 466, 4, 467, 9, 467, 4, 468, 9, 468, 4, 469, 9, 469, 4, 470, 9, 470, 4, 471, 9, 471, 4, 472, 9, 472, 4, 473, 9, 473, 4, 474, 9, 474, 4, 475, 9, 475, 4, 476, 9, 476, 4, 477, 9, 477, 4, 478, 9, 478, 4, 479, 9, 479, 4, 480, 9, 480, 4, 481, 9, 481, 4, 482, 9, 482, 4, 483, 9, 483, 4, 484, 9, 484, 4, 485, 9, 485, 4, 486, 9, 486, 4, 487, 9, 487, 4, 488, 9, 488, 4, 489, 9, 489, 4, 490, 9, 490, 4, 491, 9, 491, 4, 492, 9, 492, 4, 493, 9, 493, 4, 494, 9, 494, 4, 495, 9, 495, 4, 496, 9, 496, 4, 497, 9, 497, 4, 498, 9, 498, 4, 499, 9, 499, 4, 500, 9, 500, 4, 501, 9, 501, 4, 502, 9, 502, 4, 503, 9, 503, 4, 504, 9, 504, 4, 505, 9, 505, 4, 506, 9, 506, 4, 507, 9, 507, 4, 508, 9, 508, 4, 509, 9, 509, 4, 510, 9, 510, 4, 511, 9, 511, 4, 512, 9, 512, 4, 513, 9, 513, 4, 514, 9, 514, 4, 515, 9, 515, 4, 516, 9, 516, 4, 517, 9, 517, 4, 518, 9, 518, 4, 519, 9, 519, 4, 520, 9, 520, 4, 521, 9, 521, 4, 522, 9, 522, 4, 523, 9, 523, 4, 524, 9, 524, 4, 525, 9, 525, 4, 526, 9, 526, 4, 527, 9, 527, 4, 528, 9, 528, 4, 529, 9, 529, 4, 530, 9, 530, 4, 531, 9, 531, 4, 532, 9, 532, 4, 533, 9, 533, 4, 534, 9, 534, 4, 535, 9, 535, 4, 536, 9, 536, 4, 537, 9, 537, 4, 538, 9, 538, 4, 539, 9, 539, 4, 540, 9, 540, 4, 541, 9, 541, 4, 542, 9, 542, 4, 543, 9, 543, 4, 544, 9, 544, 4, 545, 9, 545, 4, 546, 9, 546, 4, 547, 9, 547, 4, 548, 9, 548, 4, 549, 9, 549, 4, 550, 9, 550, 4, 551, 9, 551, 4, 552, 9, 552, 4, 553, 9, 553, 4, 554, 9, 554, 4, 555, 9, 555, 4, 556, 9, 556, 4, 557, 9, 557, 4, 558, 9, 558, 4, 559, 9, 559, 4, 560, 9, 560, 4, 561, 9, 561, 4, 562, 9, 562, 4, 563, 9, 563, 4, 564, 9, 564, 4, 565, 9, 565, 4, 566, 9, 566, 4, 567, 9, 567, 4, 568, 9, 568, 4, 569, 9, 569, 4, 570, 9, 570, 4, 571, 9, 571, 4, 572, 9, 572, 4, 573, 9, 573, 4, 574, 9, 574, 4, 575, 9, 575, 4, 576, 9, 576, 4, 577, 9, 577, 4, 578, 9, 578, 4, 579, 9, 579, 4, 580, 9, 580, 4, 581, 9, 581, 4, 582, 9, 582, 4, 583, 9, 583, 4, 584, 9, 584, 4, 585, 9, 585, 4, 586, 9, 586, 4, 587, 9, 587, 4, 588, 9, 588, 4, 589, 9, 589, 4, 590, 9, 590, 4, 591, 9, 591, 4, 592, 9, 592, 4, 593, 9, 593, 4, 594, 9, 594, 4, 595, 9, 595, 4, 596, 9, 596, 4, 597, 9, 597, 4, 598, 9, 598, 4, 599, 9, 599, 4, 600, 9, 600, 4, 601, 9, 601, 4, 602, 9, 602, 4, 603, 9, 603, 4, 604, 9, 604, 4, 605, 9, 605, 4, 606, 9, 606, 4, 607, 9, 607, 4, 608, 9, 608, 4, 609, 9, 609, 4, 610, 9, 610, 4, 611, 9, 611, 4, 612, 9, 612, 4, 613, 9, 613, 4, 614, 9, 614, 4, 615, 9, 615, 4, 616, 9, 616, 4, 617, 9, 617, 4, 618, 9, 618, 4, 619, 9, 619, 4, 620, 9, 620, 4, 621, 9, 621, 4, 622, 9, 622, 4, 623, 9, 623, 4, 624, 9, 624, 4, 625, 9, 625, 4, 626, 9, 626, 4, 627, 9, 627, 4, 628, 9, 628, 4, 629, 9, 629, 4, 630, 9, 630, 4, 631, 9, 631, 4, 632, 9, 632, 4, 633, 9, 633, 4, 634, 9, 634, 4, 635, 9, 635, 4, 636, 9, 636, 4, 637, 9, 637, 4, 638, 9, 638, 4, 639, 9, 639, 4, 640, 9, 640, 4, 641, 9, 641, 4, 642, 9, 642, 4, 643, 9, 643, 4, 644, 9, 644, 4, 645, 9, 645, 4, 646, 9, 646, 4, 647, 9, 647, 4, 648, 9, 648, 4, 649, 9, 649, 4, 650, 9, 650, 4, 651, 9, 651, 4, 652, 9, 652, 4, 653, 9, 653, 4, 654, 9, 654, 4, 655, 9, 655, 4, 656, 9, 656, 4, 657, 9, 657, 4, 658, 9, 658, 4, 659, 9, 659, 4, 660, 9, 660, 4, 661, 9, 661, 4, 662, 9, 662, 4, 663, 9, 663, 4, 664, 9, 664, 4, 665, 9, 665, 4, 666, 9, 666, 4, 667, 9, 667, 4, 668, 9, 668, 4, 669, 9, 669, 4, 670, 9, 670, 4, 671, 9, 671, 4, 672, 9, 672, 4, 673, 9, 673, 4, 674, 9, 674, 4, 675, 9, 675, 4, 676, 9, 676, 4, 677, 9, 677, 4, 678, 9, 678, 4, 679, 9, 679, 4, 680, 9, 680, 4, 681, 9, 681, 4, 682, 9, 682, 4, 683, 9, 683, 4, 684, 9, 684, 4, 685, 9, 685, 4, 686, 9, 686, 4, 687, 9, 687, 4, 688, 9, 688, 4, 689, 9, 689, 4, 690, 9, 690, 4, 691, 9, 691, 4, 692, 9, 692, 4, 693, 9, 693, 4, 694, 9, 694, 4, 695, 9, 695, 4, 696, 9, 696, 4, 697, 9, 697, 4, 698, 9, 698, 4, 699, 9, 699, 4, 700, 9, 700, 4, 701, 9, 701, 4, 702, 9, 702, 4, 703, 9, 703, 4, 704, 9, 704, 4, 705, 9, 705, 4, 706, 9, 706, 4, 707, 9, 707, 4, 708, 9, 708, 4, 709, 9, 709, 4, 710, 9, 710, 4, 711, 9, 711, 4, 712, 9, 712, 4, 713, 9, 713, 4, 714, 9, 714, 4, 715, 9, 715, 4, 716, 9, 716, 4, 717, 9, 717, 4, 718, 9, 718, 4, 719, 9, 719, 4, 720, 9, 720, 4, 721, 9, 721, 4, 722, 9, 722, 4, 723, 9, 723, 4, 724, 9, 724, 4, 725, 9, 725, 4, 726, 9, 726, 4, 727, 9, 727, 4, 728, 9, 728, 4, 729, 9, 729, 4, 730, 9, 730, 4, 731, 9, 731, 4, 732, 9, 732, 4, 733, 9, 733, 4, 734, 9, 734, 4, 735, 9, 735, 4, 736, 9, 736, 4, 737, 9, 737, 4, 738, 9, 738, 4, 739, 9, 739, 4, 740, 9, 740, 4, 741, 9, 741, 4, 742, 9, 742, 4, 743, 9, 743, 4, 744, 9, 744, 4, 745, 9, 745, 4, 746, 9, 746, 4, 747, 9, 747, 4, 748, 9, 748, 4, 749, 9, 749, 4, 750, 9, 750, 4, 751, 9, 751, 4, 752, 9, 752, 4, 753, 9, 753, 4, 754, 9, 754, 4, 755, 9, 755, 4, 756, 9, 756, 4, 757, 9, 757, 4, 758, 9, 758, 4, 759, 9, 759, 4, 760, 9, 760, 4, 761, 9, 761, 4, 762, 9, 762, 4, 763, 9, 763, 4, 764, 9, 764, 4, 765, 9, 765, 4, 766, 9, 766, 4, 767, 9, 767, 4, 768, 9, 768, 4, 769, 9, 769, 4, 770, 9, 770, 4, 771, 9, 771, 4, 772, 9, 772, 4, 773, 9, 773, 4, 774, 9, 774, 4, 775, 9, 775, 4, 776, 9, 776, 4, 777, 9, 777, 4, 778, 9, 778, 4, 779, 9, 779, 4, 780, 9, 780, 4, 781, 9, 781, 4, 782, 9, 782, 4, 783, 9, 783, 4, 784, 9, 784, 4, 785, 9, 785, 4, 786, 9, 786, 4, 787, 9, 787, 4, 788, 9, 788, 4, 789, 9, 789, 4, 790, 9, 790, 4, 791, 9, 791, 4, 792, 9, 792, 4, 793, 9, 793, 4, 794, 9, 794, 4, 795, 9, 795, 4, 796, 9, 796, 4, 797, 9, 797, 4, 798, 9, 798, 4, 799, 9, 799, 4, 800, 9, 800, 4, 801, 9, 801, 4, 802, 9, 802, 4, 803, 9, 803, 4, 804, 9, 804, 4, 805, 9, 805, 4, 806, 9, 806, 4, 807, 9, 807, 4, 808, 9, 808, 4, 809, 9, 809, 4, 810, 9, 810, 4, 811, 9, 811, 4, 812, 9, 812, 4, 813, 9, 813, 4, 814, 9, 814, 4, 815, 9, 815, 4, 816, 9, 816, 4, 817, 9, 817, 4, 818, 9, 818, 4, 819, 9, 819, 4, 820, 9, 820, 4, 821, 9, 821, 4, 822, 9, 822, 4, 823, 9, 823, 4, 824, 9, 824, 4, 825, 9, 825, 4, 826, 9, 826, 4, 827, 9, 827, 4, 828, 9, 828, 4, 829, 9, 829, 4, 830, 9, 830, 4, 831, 9, 831, 4, 832, 9, 832, 4, 833, 9, 833, 4, 834, 9, 834, 4, 835, 9, 835, 4, 836, 9, 836, 4, 837, 9, 837, 4, 838, 9, 838, 4, 839, 9, 839, 4, 840, 9, 840, 4, 841, 9, 841, 4, 842, 9, 842, 4, 843, 9, 843, 4, 844, 9, 844, 4, 845, 9, 845, 4, 846, 9, 846, 4, 847, 9, 847, 4, 848, 9, 848, 4, 849, 9, 849, 4, 850, 9, 850, 4, 851, 9, 851, 4, 852, 9, 852, 4, 853, 9, 853, 4, 854, 9, 854, 4, 855, 9, 855, 4, 856, 9, 856, 4, 857, 9, 857, 4, 858, 9, 858, 4, 859, 9, 859, 4, 860, 9, 860, 4, 861, 9, 861, 4, 862, 9, 862, 4, 863, 9, 863, 4, 864, 9, 864, 4, 865, 9, 865, 4, 866, 9, 866, 4, 867, 9, 867, 4, 868, 9, 868, 4, 869, 9, 869, 4, 870, 9, 870, 4, 871, 9, 871, 4, 872, 9, 872, 4, 873, 9, 873, 4, 874, 9, 874, 4, 875, 9, 875, 4, 876, 9, 876, 4, 877, 9, 877, 4, 878, 9, 878, 4, 879, 9, 879, 4, 880, 9, 880, 4, 881, 9, 881, 4, 882, 9, 882, 4, 883, 9, 883, 4, 884, 9, 884, 4, 885, 9, 885, 4, 886, 9, 886, 4, 887, 9, 887, 4, 888, 9, 888, 4, 889, 9, 889, 4, 890, 9, 890, 4, 891, 9, 891, 4, 892, 9, 892, 4, 893, 9, 893, 4, 894, 9, 894, 4, 895, 9, 895, 4, 896, 9, 896, 4, 897, 9, 897, 4, 898, 9, 898, 4, 899, 9, 899, 4, 900, 9, 900, 4, 901, 9, 901, 4, 902, 9, 902, 4, 903, 9, 903, 4, 904, 9, 904, 4, 905, 9, 905, 4, 906, 9, 906, 4, 907, 9, 907, 4, 908, 9, 908, 4, 909, 9, 909, 4, 910, 9, 910, 4, 911, 9, 911, 4, 912, 9, 912, 4, 913, 9, 913, 4, 914, 9, 914, 4, 915, 9, 915, 4, 916, 9, 916, 4, 917, 9, 917, 4, 918, 9, 918, 4, 919, 9, 919, 4, 920, 9, 920, 4, 921, 9, 921, 4, 922, 9, 922, 4, 923, 9, 923, 4, 924, 9, 924, 4, 925, 9, 925, 4, 926, 9, 926, 4, 927, 9, 927, 4, 928, 9, 928, 4, 929, 9, 929, 4, 930, 9, 930, 4, 931, 9, 931, 4, 932, 9, 932, 4, 933, 9, 933, 4, 934, 9, 934, 4, 935, 9, 935, 4, 936, 9, 936, 4, 937, 9, 937, 4, 938, 9, 938, 4, 939, 9, 939, 4, 940, 9, 940, 4, 941, 9, 941, 4, 942, 9, 942, 4, 943, 9, 943, 4, 944, 9, 944, 4, 945, 9, 945, 4, 946, 9, 946, 4, 947, 9, 947, 4, 948, 9, 948, 4, 949, 9, 949, 4, 950, 9, 950, 4, 951, 9, 951, 4, 952, 9, 952, 4, 953, 9, 953, 4, 954, 9, 954, 4, 955, 9, 955, 4, 956, 9, 956, 4, 957, 9, 957, 4, 958, 9, 958, 4, 959, 9, 959, 4, 960, 9, 960, 4, 961, 9, 961, 4, 962, 9, 962, 4, 963, 9, 963, 4, 964, 9, 964, 4, 965, 9, 965, 4, 966, 9, 966, 4, 967, 9, 967, 4, 968, 9, 968, 4, 969, 9, 969, 4, 970, 9, 970, 4, 971, 9, 971, 4, 972, 9, 972, 4, 973, 9, 973, 4, 974, 9, 974, 4, 975, 9, 975, 4, 976, 9, 976, 4, 977, 9, 977, 4, 978, 9, 978, 4, 979, 9, 979, 4, 980, 9, 980, 4, 981, 9, 981, 4, 982, 9, 982, 4, 983, 9, 983, 4, 984, 9, 984, 4, 985, 9, 985, 4, 986, 9, 986, 4, 987, 9, 987, 4, 988, 9, 988, 4, 989, 9, 989, 4, 990, 9, 990, 4, 991, 9, 991, 4, 992, 9, 992, 4, 993, 9, 993, 4, 994, 9, 994, 4, 995, 9, 995, 4, 996, 9, 996, 4, 997, 9, 997, 4, 998, 9, 998, 4, 999, 9, 999, 4, 1000, 9, 1000, 4, 1001, 9, 1001, 4, 1002, 9, 1002, 4, 1003, 9, 1003, 4, 1004, 9, 1004, 4, 1005, 9, 1005, 4, 1006, 9, 1006, 4, 1007, 9, 1007, 4, 1008, 9, 1008, 4, 1009, 9, 1009, 4, 1010, 9, 1010, 4, 1011, 9, 1011, 4, 1012, 9, 1012, 4, 1013, 9, 1013, 4, 1014, 9, 1014, 4, 1015, 9, 1015, 4, 1016, 9, 1016, 4, 1017, 9, 1017, 4, 1018, 9, 1018, 4, 1019, 9, 1019, 4, 1020, 9, 1020, 4, 1021, 9, 1021, 4, 1022, 9, 1022, 4, 1023, 9, 1023, 4, 1024, 9, 1024, 4, 1025, 9, 1025, 4, 1026, 9, 1026, 4, 1027, 9, 1027, 4, 1028, 9, 1028, 4, 1029, 9, 1029, 4, 1030, 9, 1030, 4, 1031, 9, 1031, 4, 1032, 9, 1032, 4, 1033, 9, 1033, 4, 1034, 9, 1034, 4, 1035, 9, 1035, 4, 1036, 9, 1036, 4, 1037, 9, 1037, 4, 1038, 9, 1038, 4, 1039, 9, 1039, 4, 1040, 9, 1040, 4, 1041, 9, 1041, 4, 1042, 9, 1042, 4, 1043, 9, 1043, 4, 1044, 9, 1044, 4, 1045, 9, 1045, 4, 1046, 9, 1046, 4, 1047, 9, 1047, 4, 1048, 9, 1048, 4, 1049, 9, 1049, 4, 1050, 9, 1050, 4, 1051, 9, 1051, 4, 1052, 9, 1052, 4, 1053, 9, 1053, 4, 1054, 9, 1054, 4, 1055, 9, 1055, 4, 1056, 9, 1056, 4, 1057, 9, 1057, 4, 1058, 9, 1058, 4, 1059, 9, 1059, 3, 2, 6, 2, 2121, 10, 2, 13, 2, 14, 2, 2122, 3, 2, 3, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 6, 3, 2132, 10, 3, 13, 3, 14, 3, 2133, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 3, 4, 3, 4, 3, 4, 7, 4, 2145, 10, 4, 12, 4, 14, 4, 2148, 11, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 5, 3, 5, 3, 5, 3, 5, 5, 5, 2159, 10, 5, 3, 5, 7, 5, 2162, 10, 5, 12, 5, 14, 5, 2165, 11, 5, 3, 5, 5, 5, 2168, 10, 5, 3, 5, 3, 5, 5, 5, 2172, 10, 5, 3, 5, 3, 5, 3, 5, 3, 5, 5, 5, 2178, 10, 5, 3, 5, 3, 5, 5, 5, 2182, 10, 5, 5, 5, 2184, 10, 5, 3, 5, 3, 5, 3, 6, 3, 6, 3, 6, 3, 6, 3, 7, 3, 7, 3, 7, 3, 7, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 9, 3, 9, 3, 9, 3, 9, 3, 9, 3, 9, 3, 9, 3, 10, 3, 10, 3, 10, 3, 10, 3, 10, 3, 10, 3, 10, 3, 10, 3, 11, 3, 11, 3, 11, 3, 11, 3, 12, 3, 12, 3, 12, 3, 13, 3, 13, 3, 13, 3, 13, 3, 14, 3, 14, 3, 14, 3, 14, 3, 14, 3, 14, 3, 14, 3, 15, 3, 15, 3, 15, 3, 15, 3, 15, 3, 15, 3, 15, 3, 15, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 17, 3, 17, 3, 17, 3, 18, 3, 18, 3, 18, 3, 18, 3, 18, 3, 19, 3, 19, 3, 19, 3, 19, 3, 19, 3, 19, 3, 19, 3, 19, 3, 20, 3, 20, 3, 20, 3, 20, 3, 20, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 22, 3, 22, 3, 22, 3, 22, 3, 22, 3, 22, 3, 22, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 24, 3, 24, 3, 24, 3, 24, 3, 24, 3, 24, 3, 25, 3, 25, 3, 25, 3, 25, 3, 25, 3, 25, 3, 25, 3, 25, 3, 26, 3, 26, 3, 26, 3, 26, 3, 26, 3, 26, 3, 26, 3, 27, 3, 27, 3, 27, 3, 27, 3, 27, 3, 27, 3, 27, 3, 27, 3, 27, 3, 27, 3, 28, 3, 28, 3, 28, 3, 28, 3, 28, 3, 28, 3, 28, 3, 28, 3, 28, 3, 28, 3, 28, 3, 29, 3, 29, 3, 29, 3, 29, 3, 29, 3, 29, 3, 29, 3, 29, 3, 29, 3, 30, 3, 30, 3, 30, 3, 30, 3, 30, 3, 30, 3, 30, 3, 30, 3, 31, 3, 31, 3, 31, 3, 31, 3, 31, 3, 31, 3, 31, 3, 32, 3, 32, 3, 32, 3, 32, 3, 32, 3, 32, 3, 33, 3, 33, 3, 33, 3, 33, 3, 33, 3, 33, 3, 33, 3, 33, 3, 34, 3, 34, 3, 34, 3, 34, 3, 34, 3, 34, 3, 34, 3, 34, 3, 34, 3, 34, 3, 34, 3, 34, 3, 34, 3, 35, 3, 35, 3, 35, 3, 35, 3, 35, 3, 35, 3, 35, 3, 36, 3, 36, 3, 36, 3, 36, 3, 36, 3, 36, 3, 36, 3, 36, 3, 36, 3, 37, 3, 37, 3, 37, 3, 37, 3, 37, 3, 37, 3, 37, 3, 37, 3, 37, 3, 37, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 40, 3, 40, 3, 40, 3, 40, 3, 40, 3, 40, 3, 40, 3, 40, 3, 41, 3, 41, 3, 41, 3, 41, 3, 41, 3, 41, 3, 41, 3, 42, 3, 42, 3, 42, 3, 42, 3, 42, 3, 43, 3, 43, 3, 43, 3, 43, 3, 43, 3, 43, 3, 43, 3, 43, 3, 43, 3, 44, 3, 44, 3, 44, 3, 44, 3, 44, 3, 44, 3, 44, 3, 44, 3, 44, 3, 44, 3, 44, 3, 44, 3, 44, 3, 44, 3, 45, 3, 45, 3, 45, 3, 45, 3, 45, 3, 45, 3, 45, 3, 45, 3, 45, 3, 45, 3, 45, 3, 45, 3, 46, 3, 46, 3, 46, 3, 46, 3, 46, 3, 46, 3, 46, 3, 46, 3, 46, 3, 47, 3, 47, 3, 47, 3, 47, 3, 47, 3, 47, 3, 47, 3, 47, 3, 47, 3, 47, 3, 47, 3, 47, 3, 48, 3, 48, 3, 48, 3, 48, 3, 48, 3, 49, 3, 49, 3, 49, 3, 49, 3, 49, 3, 50, 3, 50, 3, 50, 3, 50, 3, 50, 3, 51, 3, 51, 3, 51, 3, 51, 3, 51, 3, 51, 3, 51, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 53, 3, 53, 3, 53, 3, 53, 3, 53, 3, 53, 3, 53, 3, 53, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 55, 3, 55, 3, 55, 3, 55, 3, 55, 3, 56, 3, 56, 3, 56, 3, 56, 3, 56, 3, 56, 3, 56, 3, 56, 3, 57, 3, 57, 3, 57, 3, 57, 3, 57, 3, 57, 3, 58, 3, 58, 3, 58, 3, 58, 3, 58, 3, 58, 3, 59, 3, 59, 3, 59, 3, 59, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 3, 62, 3, 62, 3, 62, 3, 62, 3, 62, 3, 63, 3, 63, 3, 63, 3, 63, 3, 63, 3, 63, 3, 63, 3, 63, 3, 63, 3, 64, 3, 64, 3, 64, 3, 64, 3, 64, 3, 64, 3, 64, 3, 64, 3, 64, 3, 64, 3, 65, 3, 65, 3, 65, 3, 65, 3, 66, 3, 66, 3, 66, 3, 66, 3, 66, 3, 66, 3, 67, 3, 67, 3, 67, 3, 67, 3, 67, 3, 67, 3, 68, 3, 68, 3, 68, 3, 68, 3, 68, 3, 68, 3, 68, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 70, 3, 70, 3, 70, 3, 71, 3, 71, 3, 71, 3, 71, 3, 71, 3, 71, 3, 71, 3, 72, 3, 72, 3, 72, 3, 73, 3, 73, 3, 73, 3, 73, 3, 73, 3, 73, 3, 74, 3, 74, 3, 74, 3, 74, 3, 74, 3, 74, 3, 74, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 75, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 77, 3, 77, 3, 77, 3, 77, 3, 77, 3, 77, 3, 77, 3, 78, 3, 78, 3, 78, 3, 78, 3, 78, 3, 78, 3, 78, 3, 78, 3, 78, 3, 79, 3, 79, 3, 79, 3, 79, 3, 79, 3, 80, 3, 80, 3, 80, 3, 81, 3, 81, 3, 81, 3, 81, 3, 81, 3, 81, 3, 81, 3, 81, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 83, 3, 83, 3, 83, 3, 83, 3, 84, 3, 84, 3, 84, 3, 84, 3, 84, 3, 85, 3, 85, 3, 85, 3, 85, 3, 85, 3, 86, 3, 86, 3, 86, 3, 86, 3, 86, 3, 86, 3, 86, 3, 86, 3, 87, 3, 87, 3, 87, 3, 87, 3, 87, 3, 87, 3, 88, 3, 88, 3, 88, 3, 88, 3, 88, 3, 89, 3, 89, 3, 89, 3, 89, 3, 89, 3, 90, 3, 90, 3, 90, 3, 90, 3, 90, 3, 90, 3, 91, 3, 91, 3, 91, 3, 91, 3, 91, 3, 91, 3, 91, 3, 92, 3, 92, 3, 92, 3, 92, 3, 92, 3, 92, 3, 93, 3, 93, 3, 93, 3, 93, 3, 93, 3, 94, 3, 94, 3, 94, 3, 94, 3, 94, 3, 95, 3, 95, 3, 95, 3, 95, 3, 95, 3, 96, 3, 96, 3, 96, 3, 96, 3, 96, 3, 96, 3, 96, 3, 96, 3, 96, 3, 96, 3, 96, 3, 96, 3, 96, 3, 97, 3, 97, 3, 97, 3, 97, 3, 97, 3, 97, 3, 97, 3, 97, 3, 97, 3, 97, 3, 97, 3, 97, 3, 98, 3, 98, 3, 98, 3, 98, 3, 98, 3, 98, 3, 98, 3, 98, 3, 98, 3, 98, 3, 98, 3, 98, 3, 98, 3, 98, 3, 98, 3, 98, 3, 98, 3, 98, 3, 98, 3, 98, 3, 98, 3, 98, 3, 98, 3, 98, 3, 98, 3, 98, 3, 98, 3, 98, 3, 98, 3, 98, 3, 99, 3, 99, 3, 99, 3, 99, 3, 99, 3, 99, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 101, 3, 101, 3, 101, 3, 101, 3, 101, 3, 101, 3, 101, 3, 101, 3, 101, 3, 102, 3, 102, 3, 102, 3, 102, 3, 102, 3, 102, 3, 102, 3, 102, 3, 103, 3, 103, 3, 103, 3, 103, 3, 104, 3, 104, 3, 104, 3, 104, 3, 104, 3, 104, 3, 104, 3, 104, 3, 104, 3, 104, 3, 104, 3, 104, 3, 104, 3, 104, 3, 104, 3, 104, 3, 104, 3, 104, 3, 104, 3, 105, 3, 105, 3, 105, 3, 105, 3, 105, 3, 106, 3, 106, 3, 106, 3, 106, 3, 106, 3, 106, 3, 106, 3, 107, 3, 107, 3, 107, 3, 108, 3, 108, 3, 108, 3, 108, 3, 108, 3, 108, 3, 108, 3, 108, 3, 108, 3, 109, 3, 109, 3, 109, 3, 109, 3, 109, 3, 109, 3, 109, 3, 110, 3, 110, 3, 110, 3, 110, 3, 110, 3, 110, 3, 110, 3, 110, 3, 110, 3, 110, 3, 110, 3, 111, 3, 111, 3, 111, 3, 112, 3, 112, 3, 112, 3, 112, 3, 112, 3, 112, 3, 113, 3, 113, 3, 113, 3, 113, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 3, 115, 3, 115, 3, 115, 3, 115, 3, 115, 3, 115, 3, 115, 3, 115, 3, 116, 3, 116, 3, 116, 3, 116, 3, 116, 3, 116, 3, 116, 3, 116, 3, 116, 3, 116, 3, 117, 3, 117, 3, 117, 3, 117, 3, 117, 3, 117, 3, 117, 3, 117, 3, 118, 3, 118, 3, 118, 3, 118, 3, 118, 3, 118, 3, 118, 3, 118, 3, 118, 3, 118, 3, 119, 3, 119, 3, 119, 3, 119, 3, 119, 3, 119, 3, 120, 3, 120, 3, 120, 3, 120, 3, 120, 3, 120, 3, 121, 3, 121, 3, 121, 3, 121, 3, 121, 3, 122, 3, 122, 3, 122, 3, 122, 3, 122, 3, 122, 3, 123, 3, 123, 3, 123, 3, 123, 3, 123, 3, 123, 3, 123, 3, 123, 3, 123, 3, 123, 3, 123, 3, 124, 3, 124, 3, 124, 3, 124, 3, 124, 3, 124, 3, 124, 3, 125, 3, 125, 3, 125, 3, 125, 3, 125, 3, 125, 3, 125, 3, 125, 3, 126, 3, 126, 3, 126, 3, 126, 3, 126, 3, 126, 3, 126, 3, 127, 3, 127, 3, 127, 3, 127, 3, 127, 3, 127, 3, 127, 3, 128, 3, 128, 3, 128, 3, 128, 3, 128, 3, 128, 3, 128, 3, 128, 3, 129, 3, 129, 3, 129, 3, 129, 3, 129, 3, 129, 3, 129, 3, 129, 3, 130, 3, 130, 3, 130, 3, 130, 3, 130, 3, 130, 3, 130, 3, 130, 3, 130, 3, 131, 3, 131, 3, 131, 3, 131, 3, 131, 3, 131, 3, 131, 3, 131, 3, 131, 3, 132, 3, 132, 3, 132, 3, 132, 3, 132, 3, 132, 3, 132, 3, 133, 3, 133, 3, 133, 3, 133, 3, 133, 3, 133, 3, 133, 3, 134, 3, 134, 3, 134, 3, 134, 3, 134, 3, 134, 3, 135, 3, 135, 3, 135, 3, 135, 3, 135, 3, 135, 3, 136, 3, 136, 3, 136, 3, 136, 3, 136, 3, 136, 3, 136, 3, 137, 3, 137, 3, 137, 3, 137, 3, 137, 3, 137, 3, 137, 3, 137, 3, 138, 3, 138, 3, 138, 3, 138, 3, 138, 3, 138, 3, 138, 3, 139, 3, 139, 3, 139, 3, 139, 3, 140, 3, 140, 3, 140, 3, 140, 3, 140, 3, 140, 3, 140, 3, 140, 3, 140, 3, 140, 3, 141, 3, 141, 3, 141, 3, 141, 3, 141, 3, 142, 3, 142, 3, 142, 3, 142, 3, 142, 3, 142, 3, 142, 3, 143, 3, 143, 3, 143, 3, 143, 3, 143, 3, 143, 3, 143, 3, 143, 3, 144, 3, 144, 3, 144, 3, 144, 3, 145, 3, 145, 3, 145, 3, 145, 3, 145, 3, 145, 3, 145, 3, 145, 3, 145, 3, 145, 3, 145, 3, 145, 3, 145, 3, 146, 3, 146, 3, 146, 3, 146, 3, 146, 3, 146, 3, 146, 3, 146, 3, 146, 3, 147, 3, 147, 3, 147, 3, 147, 3, 147, 3, 147, 3, 147, 3, 147, 3, 147, 3, 147, 3, 147, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 3, 150, 3, 150, 3, 150, 3, 150, 3, 150, 3, 150, 3, 150, 3, 150, 3, 150, 3, 150, 3, 150, 3, 150, 3, 150, 3, 150, 3, 150, 3, 150, 3, 150, 3, 151, 3, 151, 3, 151, 3, 151, 3, 152, 3, 152, 3, 152, 3, 152, 3, 152, 3, 152, 3, 152, 3, 152, 3, 153, 3, 153, 3, 153, 3, 153, 3, 153, 3, 153, 3, 153, 3, 153, 3, 153, 3, 154, 3, 154, 3, 154, 3, 154, 3, 154, 3, 154, 3, 154, 3, 154, 3, 154, 3, 154, 3, 154, 3, 154, 3, 154, 3, 154, 3, 155, 3, 155, 3, 155, 3, 155, 3, 155, 3, 155, 3, 156, 3, 156, 3, 156, 3, 156, 3, 156, 3, 156, 3, 156, 3, 156, 3, 156, 3, 156, 3, 156, 3, 157, 3, 157, 3, 157, 3, 157, 3, 157, 3, 158, 3, 158, 3, 158, 3, 159, 3, 159, 3, 159, 3, 159, 3, 159, 3, 159, 3, 159, 3, 159, 3, 159, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 161, 3, 161, 3, 161, 3, 161, 3, 161, 3, 162, 3, 162, 3, 162, 3, 162, 3, 162, 3, 163, 3, 163, 3, 163, 3, 163, 3, 163, 3, 163, 3, 164, 3, 164, 3, 164, 3, 164, 3, 164, 3, 164, 3, 164, 3, 165, 3, 165, 3, 165, 3, 165, 3, 165, 3, 165, 3, 165, 3, 166, 3, 166, 3, 166, 3, 166, 3, 166, 3, 166, 3, 166, 3, 166, 3, 166, 3, 167, 3, 167, 3, 167, 3, 167, 3, 167, 3, 167, 3, 167, 3, 168, 3, 168, 3, 168, 3, 168, 3, 168, 3, 168, 3, 169, 3, 169, 3, 169, 3, 169, 3, 170, 3, 170, 3, 170, 3, 170, 3, 170, 3, 170, 3, 171, 3, 171, 3, 171, 3, 171, 3, 171, 3, 171, 3, 171, 3, 172, 3, 172, 3, 172, 3, 172, 3, 172, 3, 173, 3, 173, 3, 173, 3, 173, 3, 173, 3, 173, 3, 174, 3, 174, 3, 174, 3, 174, 3, 174, 3, 174, 3, 175, 3, 175, 3, 175, 3, 175, 3, 175, 3, 176, 3, 176, 3, 176, 3, 176, 3, 176, 3, 176, 3, 177, 3, 177, 3, 177, 3, 177, 3, 178, 3, 178, 3, 178, 3, 178, 3, 178, 3, 178, 3, 178, 3, 178, 3, 178, 3, 179, 3, 179, 3, 179, 3, 179, 3, 179, 3, 179, 3, 179, 3, 179, 3, 180, 3, 180, 3, 180, 3, 180, 3, 180, 3, 180, 3, 180, 3, 180, 3, 180, 3, 181, 3, 181, 3, 181, 3, 181, 3, 181, 3, 181, 3, 181, 3, 181, 3, 181, 3, 181, 3, 182, 3, 182, 3, 182, 3, 182, 3, 182, 3, 182, 3, 182, 3, 182, 3, 182, 3, 182, 3, 183, 3, 183, 3, 183, 3, 183, 3, 184, 3, 184, 3, 184, 3, 184, 3, 184, 3, 185, 3, 185, 3, 185, 3, 185, 3, 185, 3, 186, 3, 186, 3, 186, 3, 186, 3, 186, 3, 187, 3, 187, 3, 187, 3, 187, 3, 187, 3, 188, 3, 188, 3, 188, 3, 188, 3, 188, 3, 189, 3, 189, 3, 189, 3, 189, 3, 189, 3, 189, 3, 189, 3, 189, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 192, 3, 192, 3, 192, 3, 192, 3, 192, 3, 192, 3, 192, 3, 193, 3, 193, 3, 193, 3, 193, 3, 193, 3, 193, 3, 193, 3, 193, 3, 193, 3, 193, 3, 194, 3, 194, 3, 194, 3, 194, 3, 194, 3, 194, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 196, 3, 196, 3, 196, 3, 196, 3, 196, 3, 196, 3, 196, 3, 197, 3, 197, 3, 197, 3, 197, 3, 197, 3, 197, 3, 197, 3, 197, 3, 198, 3, 198, 3, 198, 3, 198, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 200, 3, 200, 3, 200, 3, 200, 3, 200, 3, 201, 3, 201, 3, 201, 3, 201, 3, 201, 3, 202, 3, 202, 3, 202, 3, 202, 3, 202, 3, 202, 3, 202, 3, 202, 3, 202, 3, 202, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 3, 205, 3, 205, 3, 205, 3, 205, 3, 205, 3, 206, 3, 206, 3, 206, 3, 206, 3, 206, 3, 206, 3, 206, 3, 206, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 208, 3, 208, 3, 208, 3, 208, 3, 208, 3, 208, 3, 208, 3, 208, 3, 208, 3, 209, 3, 209, 3, 209, 3, 209, 3, 209, 3, 209, 3, 209, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 211, 3, 211, 3, 211, 3, 211, 3, 211, 3, 211, 3, 211, 3, 211, 3, 211, 3, 212, 3, 212, 3, 212, 3, 212, 3, 212, 3, 213, 3, 213, 3, 213, 3, 213, 3, 213, 3, 213, 3, 213, 3, 213, 3, 213, 3, 213, 3, 213, 3, 214, 3, 214, 3, 214, 3, 214, 3, 214, 3, 215, 3, 215, 3, 215, 3, 215, 3, 215, 3, 215, 3, 215, 3, 215, 3, 215, 3, 216, 3, 216, 3, 216, 3, 216, 3, 216, 3, 216, 3, 216, 3, 216, 3, 216, 3, 217, 3, 217, 3, 217, 3, 217, 3, 217, 3, 218, 3, 218, 3, 218, 3, 218, 3, 218, 3, 218, 3, 218, 3, 218, 3, 218, 3, 218, 3, 218, 3, 219, 3, 219, 3, 219, 3, 219, 3, 219, 3, 219, 3, 219, 3, 219, 3, 219, 3, 220, 3, 220, 3, 220, 3, 220, 3, 220, 3, 221, 3, 221, 3, 221, 3, 221, 3, 221, 3, 221, 3, 221, 3, 221, 3, 222, 3, 222, 3, 222, 3, 222, 3, 222, 3, 222, 3, 222, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 224, 3, 224, 3, 224, 3, 224, 3, 224, 3, 224, 3, 224, 3, 224, 3, 224, 3, 225, 3, 225, 3, 225, 3, 225, 3, 225, 3, 225, 3, 225, 3, 225, 3, 225, 3, 225, 3, 225, 3, 226, 3, 226, 3, 226, 3, 226, 3, 226, 3, 226, 3, 226, 3, 226, 3, 226, 3, 226, 3, 226, 3, 227, 3, 227, 3, 227, 3, 227, 3, 227, 3, 227, 3, 227, 3, 227, 3, 227, 3, 227, 3, 227, 3, 227, 3, 228, 3, 228, 3, 228, 3, 228, 3, 228, 3, 228, 3, 228, 3, 228, 3, 228, 3, 228, 3, 228, 3, 228, 3, 229, 3, 229, 3, 229, 3, 229, 3, 229, 3, 229, 3, 229, 3, 229, 3, 229, 3, 229, 3, 229, 3, 229, 3, 229, 3, 229, 3, 230, 3, 230, 3, 230, 3, 230, 3, 230, 3, 230, 3, 230, 3, 230, 3, 230, 3, 230, 3, 230, 3, 230, 3, 230, 3, 230, 3, 230, 3, 230, 3, 230, 3, 230, 3, 230, 3, 231, 3, 231, 3, 231, 3, 231, 3, 231, 3, 231, 3, 231, 3, 231, 3, 231, 3, 231, 3, 231, 3, 231, 3, 231, 3, 231, 3, 231, 3, 231, 3, 231, 3, 231, 3, 231, 3, 232, 3, 232, 3, 232, 3, 232, 3, 232, 3, 232, 3, 232, 3, 232, 3, 232, 3, 232, 3, 232, 3, 232, 3, 232, 3, 232, 3, 232, 3, 232, 3, 232, 3, 233, 3, 233, 3, 233, 3, 233, 3, 233, 3, 233, 3, 233, 3, 233, 3, 233, 3, 233, 3, 233, 3, 233, 3, 233, 3, 233, 3, 233, 3, 233, 3, 234, 3, 234, 3, 234, 3, 234, 3, 234, 3, 234, 3, 234, 3, 234, 3, 234, 3, 234, 3, 234, 3, 235, 3, 235, 3, 235, 3, 235, 3, 235, 3, 235, 3, 235, 3, 235, 3, 235, 3, 235, 3, 235, 3, 235, 3, 235, 3, 235, 3, 235, 3, 235, 3, 235, 3, 235, 3, 236, 3, 236, 3, 236, 3, 236, 3, 237, 3, 237, 3, 237, 3, 237, 3, 237, 3, 237, 3, 237, 3, 237, 3, 238, 3, 238, 3, 238, 3, 238, 3, 238, 3, 238, 3, 238, 3, 239, 3, 239, 3, 239, 3, 239, 3, 239, 3, 239, 3, 239, 3, 239, 3, 240, 3, 240, 3, 240, 3, 240, 3, 240, 3, 240, 3, 241, 3, 241, 3, 241, 3, 241, 3, 241, 3, 241, 3, 241, 3, 241, 3, 241, 3, 241, 3, 241, 3, 241, 3, 241, 3, 242, 3, 242, 3, 242, 3, 242, 3, 243, 3, 243, 3, 243, 3, 243, 3, 244, 3, 244, 3, 244, 3, 244, 3, 245, 3, 245, 3, 245, 3, 245, 3, 245, 3, 245, 3, 245, 3, 246, 3, 246, 3, 246, 3, 246, 3, 246, 3, 246, 3, 246, 3, 246, 3, 246, 3, 246, 3, 246, 3, 247, 3, 247, 3, 247, 3, 247, 3, 247, 3, 247, 3, 247, 3, 247, 3, 247, 3, 247, 3, 247, 3, 247, 3, 248, 3, 248, 3, 248, 3, 248, 3, 249, 3, 249, 3, 249, 3, 249, 3, 249, 3, 249, 3, 249, 3, 249, 3, 250, 3, 250, 3, 250, 3, 250, 3, 250, 3, 250, 3, 250, 3, 250, 3, 250, 3, 251, 3, 251, 3, 251, 3, 251, 3, 251, 3, 251, 3, 251, 3, 251, 3, 251, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 253, 3, 253, 3, 253, 3, 253, 3, 253, 3, 253, 3, 253, 3, 253, 3, 253, 3, 253, 3, 253, 3, 253, 3, 253, 3, 254, 3, 254, 3, 254, 3, 254, 3, 254, 3, 254, 3, 254, 3, 254, 3, 254, 3, 254, 3, 254, 3, 254, 3, 254, 3, 254, 3, 254, 3, 254, 3, 254, 3, 254, 3, 255, 3, 255, 3, 255, 3, 255, 3, 255, 3, 255, 3, 255, 3, 255, 3, 255, 3, 255, 3, 256, 3, 256, 3, 256, 3, 256, 3, 256, 3, 256, 3, 256, 3, 256, 3, 257, 3, 257, 3, 257, 3, 257, 3, 257, 3, 257, 3, 257, 3, 257, 3, 258, 3, 258, 3, 258, 3, 258, 3, 258, 3, 258, 3, 258, 3, 258, 3, 258, 3, 259, 3, 259, 3, 259, 3, 259, 3, 259, 3, 259, 3, 259, 3, 259, 3, 259, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 261, 3, 261, 3, 261, 3, 261, 3, 261, 3, 261, 3, 261, 3, 261, 3, 261, 3, 261, 3, 261, 3, 261, 3, 261, 3, 261, 3, 261, 3, 262, 3, 262, 3, 262, 3, 262, 3, 263, 3, 263, 3, 263, 3, 263, 3, 263, 3, 263, 3, 263, 3, 263, 3, 263, 3, 264, 3, 264, 3, 264, 3, 264, 3, 264, 3, 264, 3, 264, 3, 265, 3, 265, 3, 265, 3, 265, 3, 265, 3, 265, 3, 265, 3, 265, 3, 265, 3, 265, 3, 266, 3, 266, 3, 266, 3, 266, 3, 266, 3, 266, 3, 266, 3, 266, 3, 267, 3, 267, 3, 267, 3, 267, 3, 267, 3, 268, 3, 268, 3, 268, 3, 268, 3, 268, 3, 268, 3, 268, 3, 268, 3, 268, 3, 269, 3, 269, 3, 269, 3, 269, 3, 269, 3, 269, 3, 269, 3, 269, 3, 269, 3, 270, 3, 270, 3, 270, 3, 270, 3, 270, 3, 270, 3, 270, 3, 270, 3, 270, 3, 270, 3, 270, 3, 270, 3, 270, 3, 270, 3, 271, 3, 271, 3, 271, 3, 271, 3, 271, 3, 271, 3, 271, 3, 271, 3, 272, 3, 272, 3, 272, 3, 272, 3, 272, 3, 272, 3, 272, 3, 273, 3, 273, 3, 273, 3, 273, 3, 273, 3, 273, 3, 274, 3, 274, 3, 274, 3, 274, 3, 274, 3, 274, 3, 274, 3, 274, 3, 274, 3, 274, 3, 275, 3, 275, 3, 275, 3, 275, 3, 275, 3, 275, 3, 275, 3, 275, 3, 275, 3, 275, 3, 276, 3, 276, 3, 276, 3, 276, 3, 277, 3, 277, 3, 277, 3, 278, 3, 278, 3, 278, 3, 278, 3, 278, 3, 278, 3, 278, 3, 278, 3, 279, 3, 279, 3, 279, 3, 279, 3, 279, 3, 279, 3, 279, 3, 279, 3, 279, 3, 279, 3, 279, 3, 280, 3, 280, 3, 280, 3, 280, 3, 280, 3, 280, 3, 280, 3, 280, 3, 280, 3, 280, 3, 280, 3, 280, 3, 280, 3, 280, 3, 280, 3, 280, 3, 281, 3, 281, 3, 281, 3, 281, 3, 281, 3, 281, 3, 281, 3, 281, 3, 281, 3, 281, 3, 281, 3, 281, 3, 281, 3, 281, 3, 281, 3, 282, 3, 282, 3, 282, 3, 282, 3, 282, 3, 282, 3, 282, 3, 282, 3, 282, 3, 282, 3, 282, 3, 282, 3, 282, 3, 282, 3, 282, 3, 283, 3, 283, 3, 283, 3, 283, 3, 283, 3, 283, 3, 284, 3, 284, 3, 284, 3, 284, 3, 284, 3, 284, 3, 284, 3, 285, 3, 285, 3, 285, 3, 285, 3, 286, 3, 286, 3, 286, 3, 286, 3, 286, 3, 286, 3, 287, 3, 287, 3, 287, 3, 287, 3, 287, 3, 288, 3, 288, 3, 288, 3, 288, 3, 288, 3, 288, 3, 288, 3, 288, 3, 289, 3, 289, 3, 289, 3, 289, 3, 289, 3, 289, 3, 290, 3, 290, 3, 290, 3, 290, 3, 290, 3, 290, 3, 291, 3, 291, 3, 291, 3, 291, 3, 291, 3, 291, 3, 291, 3, 291, 3, 291, 3, 292, 3, 292, 3, 292, 3, 292, 3, 292, 3, 292, 3, 293, 3, 293, 3, 293, 3, 293, 3, 293, 3, 293, 3, 293, 3, 293, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 295, 3, 295, 3, 295, 3, 295, 3, 295, 3, 295, 3, 295, 3, 295, 3, 295, 3, 296, 3, 296, 3, 296, 3, 296, 3, 296, 3, 296, 3, 296, 3, 296, 3, 296, 3, 296, 3, 296, 3, 296, 3, 296, 3, 296, 3, 297, 3, 297, 3, 297, 3, 297, 3, 297, 3, 297, 3, 297, 3, 298, 3, 298, 3, 298, 3, 298, 3, 298, 3, 298, 3, 298, 3, 298, 3, 298, 3, 298, 3, 298, 3, 298, 3, 298, 3, 299, 3, 299, 3, 299, 3, 299, 3, 299, 3, 299, 3, 299, 3, 300, 3, 300, 3, 300, 3, 300, 3, 300, 3, 300, 3, 301, 3, 301, 3, 301, 3, 301, 3, 301, 3, 301, 3, 301, 3, 301, 3, 301, 3, 302, 3, 302, 3, 302, 3, 302, 3, 302, 3, 303, 3, 303, 3, 303, 3, 303, 3, 303, 3, 303, 3, 303, 3, 303, 3, 304, 3, 304, 3, 304, 3, 304, 3, 304, 3, 304, 3, 304, 3, 304, 3, 304, 3, 304, 3, 304, 3, 304, 3, 304, 3, 304, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 306, 3, 306, 3, 306, 3, 306, 3, 306, 3, 306, 3, 306, 3, 306, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 3, 309, 3, 309, 3, 309, 3, 309, 3, 309, 3, 309, 3, 309, 3, 309, 3, 309, 3, 309, 3, 309, 3, 310, 3, 310, 3, 310, 3, 310, 3, 310, 3, 310, 3, 310, 3, 310, 3, 310, 3, 310, 3, 310, 3, 311, 3, 311, 3, 311, 3, 311, 3, 311, 3, 311, 3, 311, 3, 311, 3, 311, 3, 311, 3, 311, 3, 311, 3, 312, 3, 312, 3, 312, 3, 312, 3, 312, 3, 312, 3, 312, 3, 312, 3, 312, 3, 312, 3, 312, 3, 313, 3, 313, 3, 313, 3, 313, 3, 313, 3, 313, 3, 313, 3, 313, 3, 313, 3, 313, 3, 313, 3, 314, 3, 314, 3, 314, 3, 314, 3, 314, 3, 314, 3, 314, 3, 314, 3, 314, 3, 314, 3, 314, 3, 315, 3, 315, 3, 315, 3, 315, 3, 315, 3, 315, 3, 315, 3, 315, 3, 315, 3, 315, 3, 315, 3, 315, 3, 315, 3, 315, 3, 315, 3, 315, 3, 315, 3, 315, 3, 315, 3, 316, 3, 316, 3, 316, 3, 316, 3, 316, 3, 316, 3, 316, 3, 316, 3, 316, 3, 316, 3, 316, 3, 316, 3, 316, 3, 316, 3, 316, 3, 316, 3, 316, 3, 316, 3, 317, 3, 317, 3, 317, 3, 317, 3, 317, 3, 317, 3, 317, 3, 317, 3, 317, 3, 317, 3, 317, 3, 317, 3, 317, 3, 317, 3, 317, 3, 317, 3, 318, 3, 318, 3, 318, 3, 318, 3, 318, 3, 318, 3, 318, 3, 318, 3, 318, 3, 319, 3, 319, 3, 319, 3, 319, 3, 319, 3, 319, 3, 319, 3, 319, 3, 320, 3, 320, 3, 320, 3, 320, 3, 320, 3, 320, 3, 320, 3, 320, 3, 320, 3, 320, 3, 320, 3, 320, 3, 320, 3, 321, 3, 321, 3, 321, 3, 321, 3, 321, 3, 322, 3, 322, 3, 322, 3, 322, 3, 323, 3, 323, 3, 323, 3, 323, 3, 323, 3, 323, 3, 323, 3, 323, 3, 323, 3, 323, 3, 323, 3, 323, 3, 324, 3, 324, 3, 324, 3, 324, 3, 324, 3, 325, 3, 325, 3, 325, 3, 325, 3, 325, 3, 325, 3, 325, 3, 325, 3, 325, 3, 326, 3, 326, 3, 326, 3, 326, 3, 326, 3, 326, 3, 326, 3, 326, 3, 326, 3, 326, 3, 326, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 328, 3, 328, 3, 328, 3, 328, 3, 328, 3, 328, 3, 328, 3, 328, 3, 329, 3, 329, 3, 329, 3, 329, 3, 329, 3, 329, 3, 329, 3, 329, 3, 329, 3, 329, 3, 329, 3, 329, 3, 329, 3, 329, 3, 329, 3, 329, 3, 330, 3, 330, 3, 330, 3, 330, 3, 330, 3, 330, 3, 330, 3, 330, 3, 330, 3, 330, 3, 330, 3, 330, 3, 330, 3, 331, 3, 331, 3, 331, 3, 331, 3, 331, 3, 331, 3, 331, 3, 331, 3, 331, 3, 331, 3, 332, 3, 332, 3, 332, 3, 332, 3, 332, 3, 332, 3, 332, 3, 332, 3, 333, 3, 333, 3, 333, 3, 333, 3, 333, 3, 333, 3, 333, 3, 333, 3, 334, 3, 334, 3, 334, 3, 334, 3, 334, 3, 335, 3, 335, 3, 335, 3, 336, 3, 336, 3, 336, 3, 336, 3, 336, 3, 336, 3, 336, 3, 336, 3, 336, 3, 337, 3, 337, 3, 337, 3, 337, 3, 337, 3, 337, 3, 337, 3, 337, 3, 337, 3, 337, 3, 338, 3, 338, 3, 338, 3, 338, 3, 338, 3, 338, 3, 338, 3, 338, 3, 339, 3, 339, 3, 339, 3, 339, 3, 339, 3, 339, 3, 339, 3, 340, 3, 340, 3, 340, 3, 340, 3, 340, 3, 340, 3, 340, 3, 340, 3, 340, 3, 340, 3, 340, 3, 341, 3, 341, 3, 341, 3, 341, 3, 342, 3, 342, 3, 342, 3, 342, 3, 342, 3, 343, 3, 343, 3, 343, 3, 343, 3, 343, 3, 343, 3, 343, 3, 344, 3, 344, 3, 344, 3, 344, 3, 344, 3, 344, 3, 344, 3, 344, 3, 345, 3, 345, 3, 345, 3, 345, 3, 345, 3, 345, 3, 346, 3, 346, 3, 346, 3, 346, 3, 346, 3, 346, 3, 346, 3, 347, 3, 347, 3, 347, 3, 347, 3, 347, 3, 347, 3, 347, 3, 348, 3, 348, 3, 348, 3, 348, 3, 348, 3, 349, 3, 349, 3, 349, 3, 349, 3, 349, 3, 349, 3, 350, 3, 350, 3, 350, 3, 350, 3, 350, 3, 350, 3, 350, 3, 351, 3, 351, 3, 351, 3, 351, 3, 351, 3, 351, 3, 352, 3, 352, 3, 352, 3, 352, 3, 352, 3, 352, 3, 352, 3, 352, 3, 352, 3, 353, 3, 353, 3, 353, 3, 353, 3, 353, 3, 353, 3, 353, 3, 353, 3, 353, 3, 353, 3, 354, 3, 354, 3, 354, 3, 354, 3, 354, 3, 354, 3, 354, 3, 355, 3, 355, 3, 355, 3, 355, 3, 355, 3, 355, 3, 355, 3, 356, 3, 356, 3, 356, 3, 356, 3, 356, 3, 356, 3, 356, 3, 356, 3, 356, 3, 357, 3, 357, 3, 357, 3, 357, 3, 357, 3, 357, 3, 357, 3, 357, 3, 357, 3, 357, 3, 357, 3, 357, 3, 358, 3, 358, 3, 358, 3, 358, 3, 358, 3, 359, 3, 359, 3, 359, 3, 359, 3, 359, 3, 359, 3, 359, 3, 360, 3, 360, 3, 360, 3, 360, 3, 360, 3, 360, 3, 360, 3, 361, 3, 361, 3, 361, 3, 361, 3, 361, 3, 361, 3, 361, 3, 361, 3, 361, 3, 361, 3, 361, 3, 361, 3, 361, 3, 361, 3, 361, 3, 361, 3, 362, 3, 362, 3, 362, 3, 362, 3, 362, 3, 362, 3, 362, 3, 363, 3, 363, 3, 363, 3, 363, 3, 363, 3, 363, 3, 364, 3, 364, 3, 364, 3, 364, 3, 364, 3, 364, 3, 365, 3, 365, 3, 365, 3, 365, 3, 365, 3, 365, 3, 366, 3, 366, 3, 366, 3, 366, 3, 366, 3, 366, 3, 366, 3, 366, 3, 367, 3, 367, 3, 367, 3, 367, 3, 367, 3, 367, 3, 368, 3, 368, 3, 368, 3, 368, 3, 368, 3, 369, 3, 369, 3, 369, 3, 369, 3, 369, 3, 369, 3, 369, 3, 369, 3, 369, 3, 370, 3, 370, 3, 370, 3, 370, 3, 370, 3, 370, 3, 370, 3, 370, 3, 371, 3, 371, 3, 371, 3, 371, 3, 371, 3, 371, 3, 371, 3, 372, 3, 372, 3, 372, 3, 372, 3, 372, 3, 372, 3, 372, 3, 373, 3, 373, 3, 373, 3, 373, 3, 373, 3, 373, 3, 373, 3, 373, 3, 373, 3, 373, 3, 373, 3, 373, 3, 373, 3, 373, 3, 373, 3, 373, 3, 373, 3, 373, 3, 374, 3, 374, 3, 374, 3, 374, 3, 374, 3, 374, 3, 374, 3, 374, 3, 375, 3, 375, 3, 375, 3, 375, 3, 375, 3, 376, 3, 376, 3, 376, 3, 376, 3, 376, 3, 377, 3, 377, 3, 377, 3, 377, 3, 377, 3, 378, 3, 378, 3, 378, 3, 378, 3, 378, 3, 378, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 380, 3, 380, 3, 380, 3, 380, 3, 380, 3, 380, 3, 380, 3, 380, 3, 380, 3, 380, 3, 380, 3, 380, 3, 380, 3, 380, 3, 380, 3, 380, 3, 380, 3, 380, 3, 381, 3, 381, 3, 381, 3, 381, 3, 381, 3, 381, 3, 381, 3, 382, 3, 382, 3, 382, 3, 382, 3, 382, 3, 382, 3, 382, 3, 382, 3, 383, 3, 383, 3, 383, 3, 383, 3, 383, 3, 383, 3, 383, 3, 383, 3, 383, 3, 383, 3, 383, 3, 383, 3, 383, 3, 384, 3, 384, 3, 384, 3, 384, 3, 384, 3, 384, 3, 384, 3, 384, 3, 385, 3, 385, 3, 385, 3, 385, 3, 385, 3, 385, 3, 385, 3, 385, 3, 385, 3, 385, 3, 385, 3, 385, 3, 385, 3, 385, 3, 386, 3, 386, 3, 386, 3, 386, 3, 386, 3, 386, 3, 386, 3, 386, 3, 387, 3, 387, 3, 387, 3, 387, 3, 387, 3, 387, 3, 387, 3, 387, 3, 387, 3, 388, 3, 388, 3, 388, 3, 388, 3, 388, 3, 388, 3, 388, 3, 388, 3, 388, 3, 388, 3, 389, 3, 389, 3, 389, 3, 389, 3, 389, 3, 389, 3, 389, 3, 389, 3, 390, 3, 390, 3, 390, 3, 391, 3, 391, 3, 391, 3, 391, 3, 391, 3, 391, 3, 391, 3, 391, 3, 391, 3, 391, 3, 392, 3, 392, 3, 392, 3, 392, 3, 393, 3, 393, 3, 393, 3, 393, 3, 393, 3, 393, 3, 393, 3, 393, 3, 393, 3, 393, 3, 394, 3, 394, 3, 394, 3, 394, 3, 394, 3, 394, 3, 394, 3, 395, 3, 395, 3, 395, 3, 395, 3, 395, 3, 396, 3, 396, 3, 396, 3, 396, 3, 396, 3, 396, 3, 396, 3, 396, 3, 396, 3, 396, 3, 396, 3, 396, 3, 396, 3, 396, 3, 396, 3, 397, 3, 397, 3, 397, 3, 397, 3, 397, 3, 397, 3, 397, 3, 397, 3, 397, 3, 398, 3, 398, 3, 398, 3, 398, 3, 398, 3, 399, 3, 399, 3, 399, 3, 399, 3, 399, 3, 399, 3, 399, 3, 400, 3, 400, 3, 400, 3, 400, 3, 400, 3, 401, 3, 401, 3, 401, 3, 401, 3, 401, 3, 401, 3, 402, 3, 402, 3, 402, 3, 402, 3, 402, 3, 403, 3, 403, 3, 403, 3, 403, 3, 403, 3, 403, 3, 404, 3, 404, 3, 404, 3, 404, 3, 404, 3, 404, 3, 404, 3, 404, 3, 405, 3, 405, 3, 405, 3, 405, 3, 405, 3, 406, 3, 406, 3, 406, 3, 406, 3, 406, 3, 406, 3, 406, 3, 407, 3, 407, 3, 407, 3, 407, 3, 407, 3, 407, 3, 407, 3, 407, 3, 407, 3, 407, 3, 407, 3, 407, 3, 407, 3, 407, 3, 407, 3, 407, 3, 407, 3, 407, 3, 407, 3, 407, 3, 407, 3, 408, 3, 408, 3, 408, 3, 408, 3, 408, 3, 408, 3, 408, 3, 408, 3, 408, 3, 408, 3, 408, 3, 408, 3, 408, 3, 408, 3, 408, 3, 408, 3, 408, 3, 408, 3, 408, 3, 408, 3, 408, 3, 409, 3, 409, 3, 409, 3, 409, 3, 409, 3, 409, 3, 409, 3, 409, 3, 409, 3, 409, 3, 409, 3, 409, 3, 409, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 411, 3, 411, 3, 411, 3, 411, 3, 411, 3, 411, 3, 411, 3, 411, 3, 411, 3, 411, 3, 411, 3, 411, 3, 412, 3, 412, 3, 412, 3, 412, 3, 412, 3, 412, 3, 412, 3, 412, 3, 412, 3, 412, 3, 412, 3, 412, 3, 412, 3, 412, 3, 412, 3, 412, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 415, 3, 415, 3, 415, 3, 415, 3, 415, 3, 415, 3, 415, 3, 415, 3, 415, 3, 415, 3, 415, 3, 415, 3, 416, 3, 416, 3, 416, 3, 416, 3, 416, 3, 416, 3, 416, 3, 416, 3, 416, 3, 416, 3, 416, 3, 416, 3, 416, 3, 416, 3, 416, 3, 416, 3, 416, 3, 416, 3, 416, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 418, 3, 418, 3, 418, 3, 418, 3, 418, 3, 418, 3, 418, 3, 418, 3, 418, 3, 418, 3, 418, 3, 418, 3, 418, 3, 418, 3, 419, 3, 419, 3, 419, 3, 419, 3, 419, 3, 419, 3, 419, 3, 419, 3, 419, 3, 419, 3, 419, 3, 419, 3, 419, 3, 419, 3, 419, 3, 419, 3, 419, 3, 419, 3, 420, 3, 420, 3, 420, 3, 420, 3, 420, 3, 420, 3, 420, 3, 420, 3, 420, 3, 420, 3, 420, 3, 420, 3, 420, 3, 420, 3, 420, 3, 420, 3, 421, 3, 421, 3, 421, 3, 421, 3, 421, 3, 421, 3, 421, 3, 421, 3, 421, 3, 421, 3, 421, 3, 421, 3, 421, 3, 421, 3, 421, 3, 421, 3, 421, 3, 421, 3, 422, 3, 422, 3, 422, 3, 422, 3, 422, 3, 422, 3, 422, 3, 422, 3, 422, 3, 422, 3, 422, 3, 422, 3, 422, 3, 422, 3, 422, 3, 423, 3, 423, 3, 423, 3, 423, 3, 423, 3, 423, 3, 423, 3, 423, 3, 423, 3, 423, 3, 423, 3, 423, 3, 423, 3, 423, 3, 423, 3, 423, 3, 423, 3, 423, 3, 423, 3, 424, 3, 424, 3, 424, 3, 424, 3, 424, 3, 424, 3, 424, 3, 424, 3, 424, 3, 424, 3, 424, 3, 424, 3, 424, 3, 424, 3, 424, 3, 425, 3, 425, 3, 425, 3, 425, 3, 425, 3, 425, 3, 425, 3, 425, 3, 425, 3, 425, 3, 425, 3, 425, 3, 425, 3, 425, 3, 425, 3, 425, 3, 425, 3, 425, 3, 425, 3, 426, 3, 426, 3, 426, 3, 426, 3, 426, 3, 426, 3, 426, 3, 426, 3, 426, 3, 426, 3, 426, 3, 426, 3, 427, 3, 427, 3, 427, 3, 427, 3, 427, 3, 427, 3, 427, 3, 427, 3, 427, 3, 427, 3, 427, 3, 427, 3, 427, 3, 427, 3, 427, 3, 427, 3, 427, 3, 427, 3, 427, 3, 427, 3, 427, 3, 427, 3, 427, 3, 427, 3, 427, 3, 428, 3, 428, 3, 428, 3, 428, 3, 428, 3, 428, 3, 428, 3, 428, 3, 428, 3, 428, 3, 428, 3, 428, 3, 428, 3, 428, 3, 428, 3, 428, 3, 428, 3, 428, 3, 428, 3, 428, 3, 428, 3, 429, 3, 429, 3, 429, 3, 429, 3, 429, 3, 429, 3, 429, 3, 429, 3, 429, 3, 430, 3, 430, 3, 430, 3, 430, 3, 430, 3, 430, 3, 430, 3, 430, 3, 430, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 432, 3, 432, 3, 432, 3, 432, 3, 432, 3, 432, 3, 432, 3, 432, 3, 432, 3, 432, 3, 432, 3, 432, 3, 432, 3, 432, 3, 432, 3, 432, 3, 432, 3, 432, 3, 432, 3, 432, 3, 432, 3, 433, 3, 433, 3, 433, 3, 433, 3, 433, 3, 433, 3, 433, 3, 434, 3, 434, 3, 434, 3, 434, 3, 434, 3, 434, 3, 435, 3, 435, 3, 435, 3, 435, 3, 435, 3, 435, 3, 435, 3, 435, 3, 435, 3, 435, 3, 435, 3, 435, 3, 435, 3, 436, 3, 436, 3, 436, 3, 436, 3, 437, 3, 437, 3, 437, 3, 437, 3, 437, 3, 437, 3, 437, 3, 437, 3, 438, 3, 438, 3, 438, 3, 438, 3, 438, 3, 438, 3, 438, 3, 438, 3, 438, 3, 439, 3, 439, 3, 439, 3, 439, 3, 439, 3, 440, 3, 440, 3, 440, 3, 440, 3, 440, 3, 440, 3, 440, 3, 441, 3, 441, 3, 441, 3, 441, 3, 441, 3, 441, 3, 442, 3, 442, 3, 442, 3, 442, 3, 442, 3, 442, 3, 443, 3, 443, 3, 443, 3, 443, 3, 443, 3, 443, 3, 443, 3, 443, 3, 443, 3, 443, 3, 443, 3, 443, 3, 444, 3, 444, 3, 444, 3, 444, 3, 444, 3, 445, 3, 445, 3, 445, 3, 445, 3, 445, 3, 445, 3, 446, 3, 446, 3, 446, 3, 446, 3, 446, 3, 446, 3, 447, 3, 447, 3, 447, 3, 447, 3, 447, 3, 447, 3, 448, 3, 448, 3, 448, 3, 448, 3, 448, 3, 449, 3, 449, 3, 449, 3, 450, 3, 450, 3, 450, 3, 450, 3, 450, 3, 450, 3, 450, 3, 450, 3, 450, 3, 450, 3, 451, 3, 451, 3, 451, 3, 451, 3, 451, 3, 452, 3, 452, 3, 452, 3, 452, 3, 452, 3, 452, 3, 452, 3, 452, 3, 453, 3, 453, 3, 453, 3, 453, 3, 453, 3, 453, 3, 453, 3, 454, 3, 454, 3, 454, 3, 455, 3, 455, 3, 455, 3, 455, 3, 455, 3, 455, 3, 455, 3, 455, 3, 455, 3, 455, 3, 455, 3, 455, 3, 455, 3, 456, 3, 456, 3, 456, 3, 456, 3, 457, 3, 457, 3, 457, 3, 457, 3, 457, 3, 457, 3, 457, 3, 458, 3, 458, 3, 458, 3, 458, 3, 458, 3, 459, 3, 459, 3, 459, 3, 459, 3, 459, 3, 460, 3, 460, 3, 460, 3, 460, 3, 460, 3, 460, 3, 460, 3, 460, 3, 460, 3, 460, 3, 460, 3, 460, 3, 460, 3, 460, 3, 460, 3, 460, 3, 461, 3, 461, 3, 461, 3, 461, 3, 461, 3, 461, 3, 461, 3, 461, 3, 462, 3, 462, 3, 462, 3, 462, 3, 462, 3, 462, 3, 463, 3, 463, 3, 463, 3, 463, 3, 463, 3, 463, 3, 463, 3, 463, 3, 463, 3, 463, 3, 464, 3, 464, 3, 464, 3, 464, 3, 464, 3, 465, 3, 465, 3, 465, 3, 465, 3, 465, 3, 465, 3, 465, 3, 466, 3, 466, 3, 466, 3, 466, 3, 466, 3, 466, 3, 466, 3, 466, 3, 467, 3, 467, 3, 467, 3, 467, 3, 467, 3, 467, 3, 467, 3, 467, 3, 467, 3, 467, 3, 467, 3, 467, 3, 467, 3, 468, 3, 468, 3, 468, 3, 468, 3, 468, 3, 468, 3, 468, 3, 468, 3, 468, 3, 468, 3, 468, 3, 469, 3, 469, 3, 469, 3, 469, 3, 469, 3, 469, 3, 469, 3, 469, 3, 469, 3, 470, 3, 470, 3, 470, 3, 470, 3, 470, 3, 470, 3, 471, 3, 471, 3, 471, 3, 471, 3, 471, 3, 471, 3, 471, 3, 472, 3, 472, 3, 472, 3, 472, 3, 472, 3, 472, 3, 472, 3, 472, 3, 472, 3, 472, 3, 472, 3, 473, 3, 473, 3, 473, 3, 473, 3, 473, 3, 473, 3, 473, 3, 473, 3, 474, 3, 474, 3, 474, 3, 474, 3, 474, 3, 475, 3, 475, 3, 475, 3, 475, 3, 475, 3, 475, 3, 475, 3, 475, 3, 475, 3, 476, 3, 476, 3, 476, 3, 476, 3, 476, 3, 476, 3, 476, 3, 476, 3, 477, 3, 477, 3, 477, 3, 477, 3, 477, 3, 477, 3, 477, 3, 477, 3, 477, 3, 478, 3, 478, 3, 478, 3, 478, 3, 478, 3, 479, 3, 479, 3, 479, 3, 479, 3, 479, 3, 479, 3, 479, 3, 479, 3, 479, 3, 479, 3, 479, 3, 479, 3, 480, 3, 480, 3, 480, 3, 480, 3, 480, 3, 480, 3, 480, 3, 480, 3, 481, 3, 481, 3, 481, 3, 481, 3, 481, 3, 481, 3, 481, 3, 481, 3, 481, 3, 482, 3, 482, 3, 482, 3, 482, 3, 482, 3, 482, 3, 483, 3, 483, 3, 483, 3, 483, 3, 483, 3, 483, 3, 484, 3, 484, 3, 484, 3, 484, 3, 484, 3, 484, 3, 485, 3, 485, 3, 485, 3, 485, 3, 485, 3, 485, 3, 485, 3, 485, 3, 486, 3, 486, 3, 486, 3, 486, 3, 486, 3, 486, 3, 486, 3, 486, 3, 487, 3, 487, 3, 487, 3, 487, 3, 487, 3, 487, 3, 487, 3, 487, 3, 487, 3, 487, 3, 487, 3, 487, 3, 487, 3, 487, 3, 487, 3, 487, 3, 487, 3, 488, 3, 488, 3, 488, 3, 488, 3, 488, 3, 488, 3, 488, 3, 488, 3, 488, 3, 488, 3, 489, 3, 489, 3, 489, 3, 489, 3, 489, 3, 489, 3, 490, 3, 490, 3, 490, 3, 490, 3, 490, 3, 490, 3, 490, 3, 490, 3, 490, 3, 490, 3, 490, 3, 490, 3, 490, 3, 490, 3, 490, 3, 491, 3, 491, 3, 491, 3, 491, 3, 491, 3, 491, 3, 491, 3, 491, 3, 491, 3, 491, 3, 491, 3, 491, 3, 491, 3, 491, 3, 492, 3, 492, 3, 492, 3, 492, 3, 492, 3, 492, 3, 492, 3, 492, 3, 492, 3, 493, 3, 493, 3, 493, 3, 493, 3, 493, 3, 493, 3, 493, 3, 494, 3, 494, 3, 494, 3, 494, 3, 494, 3, 494, 3, 494, 3, 494, 3, 494, 3, 494, 3, 494, 3, 495, 3, 495, 3, 495, 3, 495, 3, 495, 3, 495, 3, 495, 3, 496, 3, 496, 3, 496, 3, 496, 3, 496, 3, 496, 3, 496, 3, 496, 3, 496, 3, 496, 3, 496, 3, 496, 3, 496, 3, 496, 3, 496, 3, 496, 3, 497, 3, 497, 3, 497, 3, 497, 3, 497, 3, 497, 3, 497, 3, 497, 3, 497, 3, 497, 3, 497, 3, 497, 3, 497, 3, 497, 3, 497, 3, 497, 3, 497, 3, 497, 3, 497, 3, 498, 3, 498, 3, 498, 3, 498, 3, 498, 3, 498, 3, 498, 3, 498, 3, 498, 3, 498, 3, 498, 3, 498, 3, 498, 3, 498, 3, 498, 3, 498, 3, 498, 3, 498, 3, 498, 3, 498, 3, 499, 3, 499, 3, 499, 3, 499, 3, 499, 3, 499, 3, 499, 3, 499, 3, 499, 3, 499, 3, 499, 3, 499, 3, 499, 3, 499, 3, 499, 3, 499, 3, 499, 3, 499, 3, 499, 3, 499, 3, 499, 3, 499, 3, 499, 3, 500, 3, 500, 3, 500, 3, 500, 3, 500, 3, 500, 3, 500, 3, 500, 3, 500, 3, 500, 3, 500, 3, 500, 3, 500, 3, 500, 3, 500, 3, 500, 3, 500, 3, 500, 3, 500, 3, 500, 3, 500, 3, 501, 3, 501, 3, 501, 3, 501, 3, 501, 3, 501, 3, 501, 3, 501, 3, 501, 3, 501, 3, 501, 3, 501, 3, 501, 3, 501, 3, 501, 3, 501, 3, 501, 3, 501, 3, 501, 3, 501, 3, 501, 3, 501, 3, 501, 3, 501, 3, 502, 3, 502, 3, 502, 3, 502, 3, 502, 3, 502, 3, 502, 3, 502, 3, 502, 3, 502, 3, 502, 3, 502, 3, 502, 3, 502, 3, 502, 3, 502, 3, 502, 3, 502, 3, 502, 3, 502, 3, 502, 3, 502, 3, 502, 3, 502, 3, 502, 3, 502, 3, 502, 3, 502, 3, 503, 3, 503, 3, 503, 3, 503, 3, 503, 3, 503, 3, 503, 3, 503, 3, 503, 3, 503, 3, 503, 3, 503, 3, 504, 3, 504, 3, 504, 3, 504, 3, 504, 3, 504, 3, 505, 3, 505, 3, 505, 3, 505, 3, 505, 3, 505, 3, 505, 3, 506, 3, 506, 3, 506, 3, 506, 3, 506, 3, 506, 3, 506, 3, 506, 3, 506, 3, 506, 3, 506, 3, 506, 3, 506, 3, 506, 3, 506, 3, 506, 3, 506, 3, 506, 3, 507, 3, 507, 3, 507, 3, 507, 3, 507, 3, 507, 3, 507, 3, 507, 3, 508, 3, 508, 3, 508, 3, 508, 3, 508, 3, 509, 3, 509, 3, 509, 3, 509, 3, 509, 3, 509, 3, 509, 3, 509, 3, 509, 3, 510, 3, 510, 3, 510, 3, 510, 3, 510, 3, 510, 3, 510, 3, 511, 3, 511, 3, 511, 3, 511, 3, 511, 3, 511, 3, 511, 3, 512, 3, 512, 3, 512, 3, 512, 3, 513, 3, 513, 3, 513, 3, 513, 3, 513, 3, 514, 3, 514, 3, 514, 3, 514, 3, 514, 3, 514, 3, 514, 3, 514, 3, 514, 3, 514, 3, 514, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 516, 3, 516, 3, 516, 3, 516, 3, 516, 3, 516, 3, 516, 3, 516, 3, 516, 3, 517, 3, 517, 3, 517, 3, 517, 3, 517, 3, 517, 3, 517, 3, 517, 3, 517, 3, 518, 3, 518, 3, 518, 3, 518, 3, 518, 3, 518, 3, 518, 3, 519, 3, 519, 3, 519, 3, 519, 3, 519, 3, 519, 3, 519, 3, 519, 3, 520, 3, 520, 3, 520, 3, 520, 3, 520, 3, 520, 3, 521, 3, 521, 3, 521, 3, 521, 3, 521, 3, 521, 3, 521, 3, 522, 3, 522, 3, 522, 3, 522, 3, 522, 3, 522, 3, 522, 3, 523, 3, 523, 3, 523, 3, 523, 3, 523, 3, 523, 3, 523, 3, 524, 3, 524, 3, 524, 3, 524, 3, 524, 3, 524, 3, 525, 3, 525, 3, 525, 3, 525, 3, 525, 3, 526, 3, 526, 3, 526, 3, 526, 3, 526, 3, 526, 3, 526, 3, 526, 3, 526, 3, 527, 3, 527, 3, 527, 3, 527, 3, 527, 3, 527, 3, 527, 3, 528, 3, 528, 3, 528, 3, 528, 3, 528, 3, 529, 3, 529, 3, 529, 3, 529, 3, 529, 3, 529, 3, 529, 3, 530, 3, 530, 3, 530, 3, 530, 3, 530, 3, 530, 3, 530, 3, 531, 3, 531, 3, 531, 3, 531, 3, 531, 3, 531, 3, 531, 3, 532, 3, 532, 3, 532, 3, 532, 3, 532, 3, 532, 3, 532, 3, 532, 3, 532, 3, 532, 3, 532, 3, 532, 3, 532, 3, 532, 3, 532, 3, 532, 3, 533, 3, 533, 3, 533, 3, 533, 3, 533, 3, 533, 3, 533, 3, 533, 3, 533, 3, 533, 3, 533, 3, 533, 3, 533, 3, 533, 3, 533, 3, 533, 3, 533, 3, 533, 3, 533, 3, 534, 3, 534, 3, 534, 3, 534, 3, 534, 3, 534, 3, 534, 3, 534, 3, 534, 3, 534, 3, 534, 3, 534, 3, 534, 3, 534, 3, 534, 3, 534, 3, 534, 3, 535, 3, 535, 3, 535, 3, 535, 3, 535, 3, 535, 3, 535, 3, 535, 3, 535, 3, 535, 3, 535, 3, 535, 3, 535, 3, 535, 3, 535, 3, 535, 3, 535, 3, 535, 3, 536, 3, 536, 3, 536, 3, 536, 3, 536, 3, 536, 3, 536, 3, 536, 3, 536, 3, 536, 3, 537, 3, 537, 3, 537, 3, 537, 3, 537, 3, 537, 3, 537, 3, 537, 3, 537, 3, 537, 3, 537, 3, 537, 3, 537, 3, 538, 3, 538, 3, 538, 3, 538, 3, 538, 3, 538, 3, 538, 3, 538, 3, 538, 3, 538, 3, 538, 3, 539, 3, 539, 3, 539, 3, 539, 3, 539, 3, 539, 3, 540, 3, 540, 3, 540, 3, 540, 3, 540, 3, 540, 3, 540, 3, 541, 3, 541, 3, 541, 3, 541, 3, 541, 3, 541, 3, 541, 3, 541, 3, 541, 3, 541, 3, 541, 3, 541, 3, 541, 3, 541, 3, 541, 3, 541, 3, 541, 3, 541, 3, 542, 3, 542, 3, 542, 3, 542, 3, 542, 3, 542, 3, 542, 3, 542, 3, 542, 3, 542, 3, 542, 3, 542, 3, 542, 3, 542, 3, 542, 3, 542, 3, 542, 3, 543, 3, 543, 3, 543, 3, 543, 3, 543, 3, 543, 3, 543, 3, 543, 3, 543, 3, 543, 3, 543, 3, 543, 3, 543, 3, 543, 3, 543, 3, 543, 3, 543, 3, 543, 3, 543, 3, 544, 3, 544, 3, 544, 3, 544, 3, 544, 3, 544, 3, 544, 3, 545, 3, 545, 3, 545, 3, 545, 3, 545, 3, 546, 3, 546, 3, 546, 3, 546, 3, 546, 3, 546, 3, 546, 3, 546, 3, 547, 3, 547, 3, 547, 3, 547, 3, 547, 3, 547, 3, 547, 3, 548, 3, 548, 3, 548, 3, 548, 3, 548, 3, 548, 3, 548, 3, 549, 3, 549, 3, 549, 3, 549, 3, 549, 3, 549, 3, 549, 3, 549, 3, 549, 3, 549, 3, 549, 3, 549, 3, 549, 3, 549, 3, 549, 3, 549, 3, 550, 3, 550, 3, 550, 3, 550, 3, 550, 3, 550, 3, 550, 3, 550, 3, 551, 3, 551, 3, 551, 3, 551, 3, 551, 3, 551, 3, 551, 3, 551, 3, 551, 3, 551, 3, 551, 3, 551, 3, 551, 3, 552, 3, 552, 3, 552, 3, 552, 3, 552, 3, 552, 3, 552, 3, 552, 3, 552, 3, 552, 3, 552, 3, 552, 3, 552, 3, 552, 3, 553, 3, 553, 3, 553, 3, 553, 3, 553, 3, 553, 3, 553, 3, 553, 3, 554, 3, 554, 3, 554, 3, 554, 3, 554, 3, 554, 3, 555, 3, 555, 3, 555, 3, 555, 3, 555, 3, 555, 3, 555, 3, 555, 3, 555, 3, 556, 3, 556, 3, 556, 3, 556, 3, 556, 3, 556, 3, 556, 3, 556, 3, 556, 3, 556, 3, 556, 3, 557, 3, 557, 3, 557, 3, 557, 3, 557, 3, 557, 3, 557, 3, 557, 3, 557, 3, 557, 3, 557, 3, 558, 3, 558, 3, 558, 3, 558, 3, 558, 3, 558, 3, 558, 3, 558, 3, 558, 3, 558, 3, 559, 3, 559, 3, 559, 3, 559, 3, 559, 3, 559, 3, 559, 3, 559, 3, 559, 3, 559, 3, 560, 3, 560, 3, 560, 3, 560, 3, 560, 3, 561, 3, 561, 3, 561, 3, 561, 3, 561, 3, 561, 3, 561, 3, 561, 3, 561, 3, 561, 3, 561, 3, 561, 3, 562, 3, 562, 3, 562, 3, 562, 3, 562, 3, 562, 3, 562, 3, 562, 3, 562, 3, 562, 3, 562, 3, 562, 3, 563, 3, 563, 3, 563, 3, 563, 3, 563, 3, 563, 3, 563, 3, 563, 3, 563, 3, 563, 3, 563, 3, 563, 3, 563, 3, 563, 3, 564, 3, 564, 3, 564, 3, 564, 3, 564, 3, 564, 3, 564, 3, 564, 3, 564, 3, 565, 3, 565, 3, 565, 3, 565, 3, 565, 3, 565, 3, 565, 3, 565, 3, 565, 3, 566, 3, 566, 3, 566, 3, 566, 3, 566, 3, 566, 3, 566, 3, 566, 3, 566, 3, 566, 3, 567, 3, 567, 3, 567, 3, 567, 3, 567, 3, 567, 3, 567, 3, 567, 3, 567, 3, 568, 3, 568, 3, 568, 3, 568, 3, 568, 3, 568, 3, 568, 3, 568, 3, 568, 3, 568, 3, 568, 3, 568, 3, 568, 3, 568, 3, 568, 3, 568, 3, 568, 3, 569, 3, 569, 3, 569, 3, 569, 3, 569, 3, 569, 3, 569, 3, 569, 3, 569, 3, 569, 3, 570, 3, 570, 3, 570, 3, 570, 3, 570, 3, 570, 3, 570, 3, 570, 3, 571, 3, 571, 3, 571, 3, 571, 3, 571, 3, 571, 3, 572, 3, 572, 3, 572, 3, 572, 3, 572, 3, 572, 3, 572, 3, 572, 3, 573, 3, 573, 3, 573, 3, 573, 3, 573, 3, 574, 3, 574, 3, 574, 3, 574, 3, 574, 3, 574, 3, 574, 3, 574, 3, 575, 3, 575, 3, 575, 3, 575, 3, 575, 3, 575, 3, 575, 3, 575, 3, 575, 3, 575, 3, 575, 3, 575, 3, 575, 3, 575, 3, 575, 3, 576, 3, 576, 3, 576, 3, 576, 3, 576, 3, 576, 3, 576, 3, 576, 3, 576, 3, 576, 3, 576, 3, 577, 3, 577, 3, 577, 3, 577, 3, 577, 3, 577, 3, 578, 3, 578, 3, 578, 3, 578, 3, 578, 3, 578, 3, 578, 3, 578, 3, 578, 3, 578, 3, 579, 3, 579, 3, 579, 3, 579, 3, 579, 3, 580, 3, 580, 3, 580, 3, 580, 3, 580, 3, 580, 3, 580, 3, 580, 3, 581, 3, 581, 3, 581, 3, 581, 3, 581, 3, 581, 3, 581, 3, 581, 3, 582, 3, 582, 3, 582, 3, 582, 3, 582, 3, 583, 3, 583, 3, 583, 3, 583, 3, 583, 3, 583, 3, 583, 3, 583, 3, 583, 3, 584, 3, 584, 3, 584, 3, 584, 3, 584, 3, 584, 3, 584, 3, 584, 3, 585, 3, 585, 3, 585, 3, 585, 3, 585, 3, 586, 3, 586, 3, 586, 3, 586, 3, 586, 3, 586, 3, 586, 3, 586, 3, 587, 3, 587, 3, 587, 3, 587, 3, 587, 3, 588, 3, 588, 3, 588, 3, 589, 3, 589, 3, 589, 3, 589, 3, 590, 3, 590, 3, 590, 3, 590, 3, 591, 3, 591, 3, 591, 3, 591, 3, 592, 3, 592, 3, 592, 3, 592, 3, 593, 3, 593, 3, 593, 3, 593, 3, 594, 3, 594, 3, 594, 3, 594, 3, 594, 3, 594, 3, 594, 3, 594, 3, 594, 3, 595, 3, 595, 3, 595, 3, 595, 3, 595, 3, 595, 3, 595, 3, 595, 3, 596, 3, 596, 3, 596, 3, 596, 3, 596, 3, 596, 3, 597, 3, 597, 3, 597, 3, 597, 3, 598, 3, 598, 3, 598, 3, 598, 3, 598, 3, 599, 3, 599, 3, 599, 3, 599, 3, 599, 3, 599, 3, 599, 3, 600, 3, 600, 3, 600, 3, 600, 3, 600, 3, 601, 3, 601, 3, 601, 3, 601, 3, 601, 3, 601, 3, 601, 3, 602, 3, 602, 3, 602, 3, 602, 3, 602, 3, 602, 3, 602, 3, 602, 3, 602, 3, 602, 3, 602, 3, 602, 3, 603, 3, 603, 3, 603, 3, 603, 3, 603, 3, 603, 3, 603, 3, 604, 3, 604, 3, 604, 3, 604, 3, 604, 3, 604, 3, 604, 3, 604, 3, 605, 3, 605, 3, 605, 3, 605, 3, 605, 3, 605, 3, 605, 3, 605, 3, 606, 3, 606, 3, 606, 3, 606, 3, 606, 3, 607, 3, 607, 3, 607, 3, 607, 3, 607, 3, 607, 3, 607, 3, 607, 3, 608, 3, 608, 3, 608, 3, 608, 3, 608, 3, 608, 3, 608, 3, 609, 3, 609, 3, 609, 3, 609, 3, 609, 3, 609, 3, 609, 3, 609, 3, 609, 3, 610, 3, 610, 3, 610, 3, 610, 3, 610, 3, 610, 3, 611, 3, 611, 3, 611, 3, 611, 3, 611, 3, 611, 3, 611, 3, 611, 3, 611, 3, 611, 3, 611, 3, 612, 3, 612, 3, 612, 3, 612, 3, 612, 3, 612, 3, 612, 3, 612, 3, 612, 3, 612, 3, 612, 3, 612, 3, 612, 3, 612, 3, 612, 3, 612, 3, 612, 3, 612, 3, 612, 3, 612, 3, 612, 3, 612, 3, 612, 3, 612, 3, 612, 3, 612, 3, 612, 3, 613, 3, 613, 3, 613, 3, 613, 3, 613, 3, 613, 3, 613, 3, 613, 3, 613, 3, 613, 3, 613, 3, 613, 3, 614, 3, 614, 3, 614, 3, 614, 3, 614, 3, 614, 3, 614, 3, 614, 3, 614, 3, 614, 3, 614, 3, 614, 3, 614, 3, 615, 3, 615, 3, 615, 3, 615, 3, 615, 3, 615, 3, 615, 3, 615, 3, 615, 3, 615, 3, 615, 3, 615, 3, 615, 3, 616, 3, 616, 3, 616, 3, 616, 3, 616, 3, 616, 3, 616, 3, 616, 3, 616, 3, 616, 3, 616, 3, 616, 3, 616, 3, 616, 3, 616, 3, 616, 3, 616, 3, 616, 3, 616, 3, 616, 3, 616, 3, 616, 3, 616, 3, 616, 3, 617, 3, 617, 3, 617, 3, 617, 3, 617, 3, 617, 3, 617, 3, 617, 3, 617, 3, 617, 3, 617, 3, 617, 3, 618, 3, 618, 3, 618, 3, 618, 3, 618, 3, 618, 3, 618, 3, 618, 3, 618, 3, 618, 3, 618, 3, 618, 3, 618, 3, 618, 3, 618, 3, 618, 3, 618, 3, 619, 3, 619, 3, 619, 3, 619, 3, 619, 3, 619, 3, 619, 3, 619, 3, 619, 3, 619, 3, 619, 3, 619, 3, 619, 3, 619, 3, 619, 3, 619, 3, 619, 3, 619, 3, 619, 3, 619, 3, 619, 3, 620, 3, 620, 3, 620, 3, 620, 3, 620, 3, 620, 3, 620, 3, 620, 3, 620, 3, 620, 3, 620, 3, 620, 3, 620, 3, 620, 3, 620, 3, 621, 3, 621, 3, 621, 3, 621, 3, 621, 3, 621, 3, 621, 3, 621, 3, 621, 3, 621, 3, 621, 3, 621, 3, 621, 3, 621, 3, 622, 3, 622, 3, 622, 3, 622, 3, 622, 3, 622, 3, 622, 3, 622, 3, 622, 3, 622, 3, 622, 3, 622, 3, 622, 3, 622, 3, 622, 3, 622, 3, 622, 3, 622, 3, 622, 3, 622, 3, 622, 3, 622, 3, 622, 3, 622, 3, 623, 3, 623, 3, 623, 3, 623, 3, 623, 3, 623, 3, 623, 3, 623, 3, 623, 3, 623, 3, 623, 3, 623, 3, 623, 3, 623, 3, 623, 3, 623, 3, 623, 3, 623, 3, 623, 3, 623, 3, 623, 3, 623, 3, 623, 3, 623, 3, 624, 3, 624, 3, 624, 3, 624, 3, 624, 3, 624, 3, 624, 3, 624, 3, 624, 3, 624, 3, 624, 3, 624, 3, 624, 3, 624, 3, 624, 3, 624, 3, 625, 3, 625, 3, 625, 3, 625, 3, 625, 3, 625, 3, 625, 3, 625, 3, 625, 3, 625, 3, 625, 3, 625, 3, 625, 3, 625, 3, 625, 3, 625, 3, 625, 3, 625, 3, 625, 3, 625, 3, 625, 3, 625, 3, 625, 3, 625, 3, 625, 3, 625, 3, 625, 3, 626, 3, 626, 3, 626, 3, 626, 3, 626, 3, 626, 3, 626, 3, 626, 3, 626, 3, 626, 3, 626, 3, 626, 3, 626, 3, 626, 3, 626, 3, 626, 3, 626, 3, 626, 3, 626, 3, 626, 3, 627, 3, 627, 3, 627, 3, 627, 3, 627, 3, 627, 3, 627, 3, 627, 3, 627, 3, 627, 3, 627, 3, 627, 3, 627, 3, 627, 3, 627, 3, 627, 3, 627, 3, 627, 3, 627, 3, 627, 3, 627, 3, 627, 3, 627, 3, 627, 3, 628, 3, 628, 3, 628, 3, 628, 3, 628, 3, 628, 3, 628, 3, 628, 3, 628, 3, 628, 3, 628, 3, 628, 3, 628, 3, 628, 3, 628, 3, 628, 3, 628, 3, 628, 3, 628, 3, 628, 3, 628, 3, 629, 3, 629, 3, 629, 3, 629, 3, 629, 3, 629, 3, 629, 3, 629, 3, 629, 3, 629, 3, 629, 3, 629, 3, 629, 3, 629, 3, 629, 3, 629, 3, 629, 3, 629, 3, 629, 3, 629, 3, 630, 3, 630, 3, 630, 3, 630, 3, 630, 3, 630, 3, 630, 3, 630, 3, 630, 3, 630, 3, 630, 3, 631, 5, 631, 7800, 10, 631, 3, 631, 3, 631, 3, 631, 3, 631, 3, 631, 3, 631, 3, 631, 3, 631, 3, 631, 3, 631, 3, 631, 3, 631, 3, 631, 3, 631, 3, 631, 3, 631, 3, 631, 3, 631, 3, 631, 3, 631, 3, 631, 3, 631, 3, 631, 3, 631, 3, 631, 5, 631, 7827, 10, 631, 3, 632, 3, 632, 3, 632, 3, 632, 3, 632, 3, 632, 3, 632, 3, 632, 3, 632, 3, 632, 3, 632, 3, 632, 3, 633, 3, 633, 3, 633, 3, 633, 3, 633, 3, 633, 3, 633, 3, 633, 3, 633, 3, 633, 3, 633, 3, 633, 3, 633, 3, 634, 3, 634, 3, 634, 3, 634, 3, 634, 3, 634, 3, 634, 3, 634, 3, 634, 3, 634, 3, 634, 3, 634, 3, 634, 3, 634, 3, 634, 3, 634, 3, 634, 3, 634, 3, 634, 3, 634, 3, 634, 3, 634, 3, 634, 3, 635, 3, 635, 3, 635, 3, 635, 3, 635, 3, 635, 3, 635, 3, 635, 3, 635, 3, 635, 3, 635, 3, 635, 3, 635, 3, 635, 3, 635, 3, 635, 3, 635, 3, 635, 3, 635, 3, 635, 3, 635, 3, 635, 3, 635, 3, 636, 3, 636, 3, 636, 3, 636, 3, 636, 3, 636, 3, 636, 3, 636, 3, 636, 3, 636, 3, 636, 3, 636, 3, 636, 3, 636, 3, 636, 3, 636, 3, 636, 3, 636, 3, 636, 3, 636, 3, 637, 3, 637, 3, 637, 3, 637, 3, 637, 3, 637, 3, 637, 3, 637, 3, 637, 3, 637, 3, 637, 3, 637, 3, 637, 3, 637, 3, 637, 3, 637, 3, 637, 3, 638, 3, 638, 3, 638, 3, 638, 3, 638, 3, 638, 3, 638, 3, 638, 3, 638, 3, 639, 3, 639, 3, 639, 3, 639, 3, 639, 3, 639, 3, 640, 3, 640, 3, 640, 3, 640, 3, 640, 3, 641, 3, 641, 3, 641, 3, 641, 3, 641, 3, 641, 3, 641, 3, 642, 3, 642, 3, 642, 3, 642, 3, 642, 3, 642, 3, 642, 3, 643, 3, 643, 3, 643, 3, 643, 3, 643, 3, 643, 3, 643, 3, 644, 3, 644, 3, 644, 3, 644, 3, 644, 3, 644, 3, 644, 3, 645, 3, 645, 3, 645, 3, 645, 3, 645, 3, 645, 3, 646, 3, 646, 3, 646, 3, 646, 3, 646, 3, 646, 3, 647, 3, 647, 3, 647, 3, 647, 3, 647, 3, 647, 3, 648, 3, 648, 3, 648, 3, 648, 3, 648, 3, 648, 3, 649, 3, 649, 3, 649, 3, 649, 3, 649, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 651, 3, 651, 3, 651, 3, 651, 3, 651, 3, 651, 3, 652, 3, 652, 3, 652, 3, 652, 3, 652, 3, 652, 3, 652, 3, 653, 3, 653, 3, 653, 3, 653, 3, 654, 3, 654, 3, 654, 3, 654, 3, 654, 3, 654, 3, 654, 3, 654, 3, 655, 3, 655, 3, 655, 3, 655, 3, 655, 3, 655, 3, 656, 3, 656, 3, 656, 3, 656, 3, 656, 3, 656, 3, 656, 3, 657, 3, 657, 3, 657, 3, 657, 3, 658, 3, 658, 3, 658, 3, 658, 3, 658, 3, 658, 3, 658, 3, 658, 3, 659, 3, 659, 3, 659, 3, 659, 3, 659, 3, 659, 3, 660, 3, 660, 3, 660, 3, 660, 3, 660, 3, 660, 3, 661, 3, 661, 3, 661, 3, 661, 3, 661, 3, 661, 3, 661, 3, 662, 3, 662, 3, 662, 3, 662, 3, 662, 3, 662, 3, 662, 3, 663, 3, 663, 3, 663, 3, 663, 3, 663, 3, 663, 3, 663, 3, 664, 3, 664, 3, 664, 3, 664, 3, 664, 3, 664, 3, 664, 3, 665, 3, 665, 3, 665, 3, 665, 3, 665, 3, 665, 3, 666, 3, 666, 3, 666, 3, 666, 3, 666, 3, 666, 3, 666, 3, 666, 3, 666, 3, 667, 3, 667, 3, 667, 3, 667, 3, 667, 3, 668, 3, 668, 3, 668, 3, 668, 3, 668, 3, 669, 3, 669, 3, 669, 3, 669, 3, 669, 3, 669, 3, 669, 3, 670, 3, 670, 3, 670, 3, 670, 3, 670, 3, 671, 3, 671, 3, 671, 3, 671, 3, 671, 3, 672, 3, 672, 3, 672, 3, 672, 3, 672, 3, 672, 3, 673, 3, 673, 3, 673, 3, 673, 3, 673, 3, 673, 3, 673, 3, 673, 3, 674, 3, 674, 3, 674, 3, 674, 3, 674, 3, 674, 3, 675, 3, 675, 3, 675, 3, 675, 3, 675, 3, 676, 3, 676, 3, 676, 3, 676, 3, 676, 3, 676, 3, 676, 3, 676, 3, 677, 3, 677, 3, 677, 3, 677, 3, 677, 3, 677, 3, 677, 3, 677, 3, 678, 3, 678, 3, 678, 3, 678, 3, 678, 3, 678, 3, 678, 3, 678, 3, 679, 3, 679, 3, 679, 3, 679, 3, 679, 3, 679, 3, 679, 3, 679, 3, 679, 3, 679, 3, 680, 3, 680, 3, 680, 3, 680, 3, 681, 3, 681, 3, 681, 3, 681, 3, 681, 3, 681, 3, 681, 3, 681, 3, 681, 3, 681, 3, 682, 3, 682, 3, 682, 3, 682, 3, 682, 3, 682, 3, 682, 3, 683, 3, 683, 3, 683, 3, 683, 3, 683, 3, 683, 3, 683, 3, 684, 3, 684, 3, 684, 3, 684, 3, 684, 3, 684, 3, 684, 3, 684, 3, 684, 3, 684, 3, 684, 3, 685, 3, 685, 3, 685, 3, 685, 3, 685, 3, 685, 3, 685, 3, 686, 3, 686, 3, 686, 3, 686, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 688, 3, 688, 3, 688, 3, 688, 3, 688, 3, 688, 3, 688, 3, 688, 3, 688, 3, 688, 3, 688, 3, 688, 3, 688, 3, 688, 3, 688, 3, 688, 3, 688, 3, 688, 3, 688, 3, 689, 3, 689, 3, 689, 3, 689, 3, 689, 3, 689, 3, 689, 3, 690, 3, 690, 3, 690, 3, 690, 3, 690, 3, 690, 3, 690, 3, 690, 3, 690, 3, 690, 3, 690, 3, 691, 3, 691, 3, 691, 3, 691, 3, 691, 3, 691, 3, 691, 3, 691, 3, 691, 3, 691, 3, 692, 3, 692, 3, 692, 3, 692, 3, 692, 3, 692, 3, 692, 3, 692, 3, 692, 3, 692, 3, 692, 3, 692, 3, 693, 3, 693, 3, 693, 3, 693, 3, 693, 3, 693, 3, 693, 3, 693, 3, 693, 3, 693, 3, 693, 3, 693, 3, 693, 3, 694, 3, 694, 3, 694, 3, 694, 3, 694, 3, 694, 3, 694, 3, 694, 3, 694, 3, 694, 3, 694, 3, 694, 3, 694, 3, 694, 3, 694, 3, 694, 3, 694, 3, 694, 3, 694, 3, 695, 3, 695, 3, 695, 3, 695, 3, 695, 3, 695, 3, 695, 3, 695, 3, 695, 3, 695, 3, 695, 3, 695, 3, 695, 3, 695, 3, 695, 3, 696, 3, 696, 3, 696, 3, 696, 3, 696, 3, 696, 3, 696, 3, 696, 3, 696, 3, 697, 3, 697, 3, 697, 3, 697, 3, 697, 3, 697, 3, 697, 3, 697, 3, 697, 3, 697, 3, 697, 3, 698, 3, 698, 3, 698, 3, 698, 3, 698, 3, 698, 3, 698, 3, 698, 3, 698, 3, 698, 3, 698, 3, 698, 3, 698, 3, 698, 3, 698, 3, 698, 3, 699, 3, 699, 3, 699, 3, 699, 3, 699, 3, 699, 3, 699, 3, 699, 3, 699, 3, 699, 3, 699, 3, 700, 3, 700, 3, 700, 3, 700, 3, 700, 3, 700, 3, 700, 3, 700, 3, 700, 3, 700, 3, 700, 3, 700, 3, 700, 3, 701, 3, 701, 3, 701, 3, 701, 3, 701, 3, 701, 3, 702, 3, 702, 3, 702, 3, 702, 3, 702, 3, 702, 3, 702, 3, 702, 3, 703, 3, 703, 3, 703, 3, 703, 3, 704, 3, 704, 3, 704, 3, 704, 3, 704, 3, 705, 3, 705, 3, 705, 3, 705, 3, 705, 3, 705, 3, 705, 3, 705, 3, 706, 3, 706, 3, 706, 3, 706, 3, 706, 3, 706, 3, 706, 3, 706, 3, 707, 3, 707, 3, 707, 3, 707, 3, 707, 3, 707, 3, 707, 3, 707, 3, 707, 3, 707, 3, 707, 3, 707, 3, 708, 3, 708, 3, 708, 3, 708, 3, 708, 3, 708, 3, 708, 3, 708, 3, 708, 3, 708, 3, 708, 3, 708, 3, 709, 3, 709, 3, 709, 3, 709, 3, 709, 3, 710, 3, 710, 3, 710, 3, 710, 3, 710, 3, 710, 3, 710, 3, 710, 3, 710, 3, 711, 3, 711, 3, 711, 3, 711, 3, 711, 3, 712, 3, 712, 3, 712, 3, 712, 3, 712, 3, 712, 3, 712, 3, 713, 3, 713, 3, 713, 3, 713, 3, 713, 3, 713, 3, 714, 3, 714, 3, 714, 3, 714, 3, 714, 3, 714, 3, 715, 3, 715, 3, 715, 3, 715, 3, 715, 3, 715, 3, 715, 3, 715, 3, 715, 3, 715, 3, 715, 3, 715, 3, 715, 3, 715, 3, 715, 3, 715, 3, 715, 3, 715, 3, 715, 3, 716, 3, 716, 3, 716, 3, 716, 3, 716, 3, 716, 3, 716, 3, 716, 3, 716, 3, 716, 3, 716, 3, 716, 3, 716, 3, 716, 3, 716, 3, 716, 3, 716, 3, 716, 3, 717, 3, 717, 3, 717, 3, 717, 3, 717, 3, 717, 3, 717, 3, 717, 3, 717, 3, 717, 3, 717, 3, 717, 3, 717, 3, 717, 3, 717, 3, 717, 3, 717, 3, 717, 3, 717, 3, 718, 3, 718, 3, 718, 3, 718, 3, 718, 3, 718, 3, 718, 3, 718, 3, 718, 3, 718, 3, 718, 3, 718, 3, 718, 3, 718, 3, 718, 3, 718, 3, 719, 3, 719, 3, 719, 3, 719, 3, 719, 3, 719, 3, 719, 3, 719, 3, 719, 3, 719, 3, 719, 3, 719, 3, 719, 3, 719, 3, 719, 3, 719, 3, 719, 3, 719, 3, 720, 3, 720, 3, 720, 3, 720, 3, 720, 3, 721, 3, 721, 3, 721, 3, 721, 3, 721, 3, 721, 3, 722, 3, 722, 3, 722, 3, 722, 3, 722, 3, 722, 3, 722, 3, 722, 3, 722, 3, 722, 3, 723, 3, 723, 3, 723, 3, 723, 3, 724, 3, 724, 3, 724, 3, 724, 3, 724, 3, 724, 3, 724, 3, 724, 3, 724, 3, 724, 3, 725, 3, 725, 3, 725, 3, 725, 3, 725, 3, 725, 3, 725, 3, 725, 3, 725, 3, 725, 3, 725, 3, 726, 3, 726, 3, 726, 3, 726, 3, 726, 3, 726, 3, 726, 3, 727, 3, 727, 3, 727, 3, 727, 3, 727, 3, 727, 3, 727, 3, 727, 3, 727, 3, 727, 3, 727, 3, 727, 3, 727, 3, 728, 3, 728, 3, 728, 3, 728, 3, 728, 3, 729, 3, 729, 3, 729, 3, 729, 3, 729, 3, 729, 3, 729, 3, 729, 3, 730, 3, 730, 3, 730, 3, 730, 3, 730, 3, 730, 3, 730, 3, 730, 3, 730, 3, 731, 3, 731, 3, 731, 3, 731, 3, 731, 3, 731, 3, 731, 3, 731, 3, 731, 3, 731, 3, 731, 3, 731, 3, 731, 3, 731, 3, 731, 3, 731, 3, 731, 3, 732, 3, 732, 3, 732, 3, 732, 3, 732, 3, 732, 3, 732, 3, 732, 3, 733, 3, 733, 3, 733, 3, 733, 3, 733, 3, 733, 3, 733, 3, 733, 3, 733, 3, 733, 3, 733, 3, 733, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 735, 3, 735, 3, 735, 3, 735, 3, 735, 3, 735, 3, 735, 3, 735, 3, 735, 3, 735, 3, 736, 3, 736, 3, 736, 3, 736, 3, 736, 3, 736, 3, 736, 3, 736, 3, 736, 3, 737, 3, 737, 3, 737, 3, 737, 3, 737, 3, 737, 3, 737, 3, 738, 3, 738, 3, 738, 3, 738, 3, 738, 3, 738, 3, 738, 3, 738, 3, 738, 3, 738, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 741, 3, 741, 3, 741, 3, 741, 3, 741, 3, 741, 3, 741, 3, 741, 3, 741, 3, 741, 3, 741, 3, 742, 3, 742, 3, 742, 3, 742, 3, 743, 3, 743, 3, 743, 3, 743, 3, 744, 3, 744, 3, 744, 3, 744, 3, 744, 3, 744, 3, 745, 3, 745, 3, 745, 3, 745, 3, 745, 3, 745, 3, 745, 3, 745, 3, 745, 3, 745, 3, 745, 3, 745, 3, 745, 3, 745, 3, 745, 3, 745, 3, 745, 3, 745, 3, 745, 3, 745, 3, 745, 3, 745, 3, 745, 3, 745, 3, 745, 3, 745, 3, 745, 3, 746, 3, 746, 3, 746, 3, 746, 3, 746, 3, 746, 3, 746, 3, 746, 3, 746, 3, 746, 3, 746, 3, 746, 3, 746, 3, 746, 3, 746, 3, 746, 3, 746, 3, 746, 3, 746, 3, 746, 3, 746, 3, 746, 3, 746, 3, 746, 3, 746, 3, 746, 3, 747, 3, 747, 3, 747, 3, 747, 3, 747, 3, 747, 3, 747, 3, 747, 3, 747, 3, 747, 3, 747, 3, 747, 3, 747, 3, 747, 3, 747, 3, 747, 3, 747, 3, 747, 3, 747, 3, 747, 3, 747, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 749, 3, 749, 3, 749, 3, 749, 3, 749, 3, 749, 3, 749, 3, 749, 3, 750, 3, 750, 3, 750, 3, 750, 3, 750, 3, 750, 3, 750, 3, 750, 3, 750, 3, 751, 3, 751, 3, 751, 3, 751, 3, 751, 3, 751, 3, 751, 3, 751, 3, 751, 3, 751, 3, 751, 3, 751, 3, 752, 3, 752, 3, 752, 3, 752, 3, 752, 3, 752, 3, 752, 3, 752, 3, 753, 3, 753, 3, 753, 3, 753, 3, 753, 3, 753, 3, 753, 3, 753, 3, 753, 3, 753, 3, 753, 3, 754, 3, 754, 3, 754, 3, 754, 3, 754, 3, 754, 3, 754, 3, 754, 3, 754, 3, 754, 3, 755, 3, 755, 3, 755, 3, 755, 3, 755, 3, 755, 3, 755, 3, 755, 3, 755, 3, 755, 3, 756, 3, 756, 3, 756, 3, 756, 3, 756, 3, 756, 3, 756, 3, 757, 3, 757, 3, 757, 3, 757, 3, 757, 3, 757, 3, 757, 3, 757, 3, 758, 3, 758, 3, 758, 3, 758, 3, 758, 3, 758, 3, 758, 3, 758, 3, 758, 3, 758, 3, 758, 3, 758, 3, 759, 3, 759, 3, 759, 3, 759, 3, 759, 3, 759, 3, 759, 3, 759, 3, 759, 3, 759, 3, 759, 3, 759, 3, 760, 3, 760, 3, 760, 3, 760, 3, 760, 3, 760, 3, 760, 3, 760, 3, 760, 3, 760, 3, 761, 3, 761, 3, 761, 3, 761, 3, 761, 3, 761, 3, 761, 3, 761, 3, 761, 3, 762, 3, 762, 3, 762, 3, 762, 3, 763, 3, 763, 3, 763, 3, 763, 3, 763, 3, 763, 3, 763, 3, 764, 3, 764, 3, 764, 3, 764, 3, 764, 3, 764, 3, 764, 3, 764, 3, 765, 3, 765, 3, 765, 3, 765, 3, 765, 3, 765, 3, 765, 3, 765, 3, 765, 3, 766, 3, 766, 3, 766, 3, 766, 3, 766, 3, 766, 3, 766, 3, 766, 3, 766, 3, 767, 3, 767, 3, 767, 3, 767, 3, 767, 3, 767, 3, 767, 3, 768, 3, 768, 3, 768, 3, 768, 3, 769, 3, 769, 3, 769, 3, 769, 3, 769, 3, 769, 3, 769, 3, 769, 3, 769, 3, 769, 3, 769, 3, 770, 3, 770, 3, 770, 3, 770, 3, 770, 3, 770, 3, 770, 3, 770, 3, 770, 3, 770, 3, 770, 3, 770, 3, 770, 3, 771, 3, 771, 3, 771, 3, 771, 3, 771, 3, 771, 3, 771, 3, 771, 3, 771, 3, 771, 3, 771, 3, 771, 3, 771, 3, 772, 3, 772, 3, 772, 3, 772, 3, 772, 3, 772, 3, 773, 3, 773, 3, 773, 3, 773, 3, 773, 3, 773, 3, 773, 3, 773, 3, 773, 3, 773, 3, 773, 3, 773, 3, 774, 3, 774, 3, 774, 3, 774, 3, 774, 3, 774, 3, 775, 3, 775, 3, 775, 3, 775, 3, 775, 3, 775, 3, 775, 3, 776, 3, 776, 3, 776, 3, 776, 3, 776, 3, 776, 3, 776, 3, 776, 3, 776, 3, 776, 3, 776, 3, 777, 3, 777, 3, 777, 3, 777, 3, 777, 3, 777, 3, 777, 3, 777, 3, 777, 3, 777, 3, 777, 3, 777, 3, 778, 3, 778, 3, 778, 3, 778, 3, 778, 3, 778, 3, 778, 3, 778, 3, 778, 3, 778, 3, 779, 3, 779, 3, 779, 3, 779, 3, 779, 3, 779, 3, 779, 3, 779, 3, 779, 3, 779, 3, 779, 3, 779, 3, 779, 3, 779, 3, 780, 3, 780, 3, 780, 3, 780, 3, 780, 3, 780, 3, 780, 3, 780, 3, 780, 3, 780, 3, 780, 3, 780, 3, 780, 3, 780, 3, 780, 3, 780, 3, 780, 3, 781, 3, 781, 3, 781, 3, 781, 3, 781, 3, 781, 3, 781, 3, 781, 3, 781, 3, 781, 3, 781, 3, 781, 3, 781, 3, 781, 3, 781, 3, 781, 3, 782, 3, 782, 3, 782, 3, 782, 3, 782, 3, 782, 3, 782, 3, 782, 3, 782, 3, 782, 3, 782, 3, 782, 3, 782, 3, 782, 3, 782, 3, 782, 3, 782, 3, 782, 3, 782, 3, 782, 3, 782, 3, 782, 3, 782, 3, 782, 3, 782, 3, 782, 3, 782, 3, 783, 3, 783, 3, 783, 3, 783, 3, 783, 3, 783, 3, 783, 3, 783, 3, 783, 3, 783, 3, 783, 3, 783, 3, 783, 3, 783, 3, 783, 3, 783, 3, 783, 3, 783, 3, 783, 3, 783, 3, 783, 3, 783, 3, 783, 3, 783, 3, 783, 3, 783, 3, 784, 3, 784, 3, 784, 3, 784, 3, 784, 3, 784, 3, 784, 3, 784, 3, 784, 3, 784, 3, 784, 3, 784, 3, 784, 3, 784, 3, 784, 3, 784, 3, 784, 3, 785, 3, 785, 3, 785, 3, 785, 3, 785, 3, 785, 3, 785, 3, 785, 3, 785, 3, 785, 3, 785, 3, 785, 3, 785, 3, 785, 3, 785, 3, 785, 3, 786, 3, 786, 3, 786, 3, 786, 3, 786, 3, 786, 3, 786, 3, 786, 3, 786, 3, 786, 3, 787, 3, 787, 3, 787, 3, 787, 3, 787, 3, 787, 3, 787, 3, 787, 3, 787, 3, 787, 3, 787, 3, 787, 3, 787, 3, 788, 3, 788, 3, 788, 3, 788, 3, 788, 3, 788, 3, 788, 3, 788, 3, 788, 3, 788, 3, 788, 3, 788, 3, 788, 3, 789, 3, 789, 3, 789, 3, 789, 3, 789, 3, 789, 3, 789, 3, 789, 3, 789, 3, 789, 3, 789, 3, 789, 3, 790, 3, 790, 3, 790, 3, 790, 3, 790, 3, 790, 3, 790, 3, 790, 3, 790, 3, 790, 3, 790, 3, 791, 3, 791, 3, 791, 3, 791, 3, 791, 3, 791, 3, 791, 3, 791, 3, 791, 3, 792, 3, 792, 3, 792, 3, 792, 3, 792, 3, 792, 3, 792, 3, 792, 3, 793, 3, 793, 3, 793, 3, 793, 3, 793, 3, 793, 3, 793, 3, 793, 3, 793, 3, 794, 3, 794, 3, 794, 3, 794, 3, 794, 3, 794, 3, 794, 3, 794, 3, 794, 3, 794, 3, 794, 3, 794, 3, 795, 3, 795, 3, 795, 3, 795, 3, 795, 3, 795, 3, 795, 3, 795, 3, 795, 3, 795, 3, 795, 3, 795, 3, 795, 3, 795, 3, 796, 3, 796, 3, 796, 3, 796, 3, 797, 3, 797, 3, 797, 3, 797, 3, 797, 3, 797, 3, 797, 3, 798, 3, 798, 3, 798, 3, 798, 3, 798, 3, 798, 3, 798, 3, 798, 3, 798, 3, 798, 3, 798, 3, 799, 3, 799, 3, 799, 3, 799, 3, 799, 3, 799, 3, 799, 3, 799, 3, 799, 3, 799, 3, 799, 3, 800, 3, 800, 3, 800, 3, 800, 3, 800, 3, 800, 3, 800, 3, 800, 3, 800, 3, 800, 3, 801, 3, 801, 3, 801, 3, 801, 3, 801, 3, 801, 3, 801, 3, 801, 3, 801, 3, 801, 3, 802, 3, 802, 3, 802, 3, 802, 3, 802, 3, 802, 3, 803, 3, 803, 3, 803, 3, 803, 3, 803, 3, 803, 3, 803, 3, 803, 3, 803, 3, 803, 3, 803, 3, 803, 3, 803, 3, 803, 3, 804, 3, 804, 3, 804, 3, 804, 3, 804, 3, 804, 3, 804, 3, 804, 3, 804, 3, 804, 3, 804, 3, 805, 3, 805, 3, 805, 3, 805, 3, 805, 3, 805, 3, 805, 3, 805, 3, 805, 3, 806, 3, 806, 3, 806, 3, 806, 3, 806, 3, 806, 3, 806, 3, 806, 3, 807, 3, 807, 3, 807, 3, 807, 3, 807, 3, 807, 3, 807, 3, 808, 3, 808, 3, 808, 3, 808, 3, 808, 3, 808, 3, 808, 3, 808, 3, 808, 3, 809, 3, 809, 3, 809, 3, 809, 3, 809, 3, 809, 3, 809, 3, 809, 3, 809, 3, 809, 3, 809, 3, 809, 3, 809, 3, 810, 3, 810, 3, 810, 3, 810, 3, 810, 3, 810, 3, 810, 3, 810, 3, 811, 3, 811, 3, 811, 3, 811, 3, 811, 3, 811, 3, 811, 3, 811, 3, 811, 3, 811, 3, 811, 3, 811, 3, 811, 3, 811, 3, 811, 3, 812, 3, 812, 3, 812, 3, 812, 3, 812, 3, 812, 3, 812, 3, 812, 3, 812, 3, 812, 3, 812, 3, 812, 3, 812, 3, 812, 3, 812, 3, 813, 3, 813, 3, 813, 3, 813, 3, 813, 3, 813, 3, 813, 3, 813, 3, 814, 3, 814, 3, 814, 3, 814, 3, 814, 3, 814, 3, 814, 3, 814, 3, 814, 3, 814, 3, 814, 3, 814, 3, 814, 3, 815, 3, 815, 3, 815, 3, 815, 3, 815, 3, 815, 3, 815, 3, 815, 3, 815, 3, 815, 3, 815, 3, 815, 3, 815, 3, 815, 3, 815, 3, 816, 3, 816, 3, 816, 3, 816, 3, 816, 3, 816, 3, 817, 3, 817, 3, 817, 3, 817, 3, 817, 3, 817, 3, 818, 3, 818, 3, 818, 3, 818, 3, 818, 3, 818, 3, 818, 3, 819, 3, 819, 3, 819, 3, 819, 3, 819, 3, 819, 3, 819, 3, 819, 3, 819, 3, 819, 3, 819, 3, 819, 3, 819, 3, 820, 3, 820, 3, 820, 3, 820, 3, 820, 3, 820, 3, 820, 3, 820, 3, 820, 3, 820, 3, 820, 3, 820, 3, 821, 3, 821, 3, 821, 3, 821, 3, 821, 3, 821, 3, 821, 3, 821, 3, 821, 3, 821, 3, 821, 3, 821, 3, 821, 3, 821, 3, 821, 3, 821, 3, 821, 3, 821, 3, 821, 3, 822, 3, 822, 3, 822, 3, 822, 3, 822, 3, 822, 3, 822, 3, 822, 3, 822, 3, 822, 3, 822, 3, 822, 3, 822, 3, 822, 3, 822, 3, 822, 3, 822, 3, 822, 3, 823, 3, 823, 3, 823, 3, 824, 3, 824, 3, 824, 3, 824, 3, 824, 3, 824, 3, 824, 3, 824, 3, 824, 3, 824, 3, 825, 3, 825, 3, 825, 3, 825, 3, 825, 3, 825, 3, 825, 3, 826, 3, 826, 3, 826, 3, 826, 3, 827, 3, 827, 3, 827, 3, 827, 3, 827, 3, 827, 3, 828, 3, 828, 3, 828, 3, 828, 3, 828, 3, 829, 3, 829, 3, 829, 3, 829, 3, 829, 3, 829, 3, 830, 3, 830, 3, 830, 3, 830, 3, 830, 3, 831, 3, 831, 3, 831, 3, 831, 3, 831, 3, 831, 3, 832, 3, 832, 3, 832, 3, 832, 3, 832, 3, 832, 3, 832, 3, 832, 3, 832, 3, 833, 3, 833, 3, 833, 3, 833, 3, 833, 3, 833, 3, 833, 3, 833, 3, 833, 3, 834, 3, 834, 3, 834, 3, 834, 3, 834, 3, 834, 3, 834, 3, 834, 3, 834, 3, 835, 3, 835, 3, 835, 3, 835, 3, 835, 3, 835, 3, 835, 3, 835, 3, 835, 3, 835, 3, 835, 3, 835, 3, 835, 3, 835, 3, 835, 3, 835, 3, 836, 3, 836, 3, 836, 3, 836, 3, 836, 3, 836, 3, 836, 3, 836, 3, 836, 3, 836, 3, 836, 3, 836, 3, 837, 3, 837, 3, 837, 3, 837, 3, 837, 3, 837, 3, 837, 3, 837, 3, 837, 3, 837, 3, 837, 3, 837, 3, 838, 3, 838, 3, 838, 3, 838, 3, 838, 3, 838, 3, 838, 3, 838, 3, 838, 3, 839, 3, 839, 3, 839, 3, 839, 3, 839, 3, 839, 3, 839, 3, 839, 3, 839, 3, 839, 3, 839, 3, 839, 3, 839, 3, 839, 3, 840, 3, 840, 3, 840, 3, 840, 3, 840, 3, 840, 3, 840, 3, 840, 3, 840, 3, 840, 3, 840, 3, 840, 3, 841, 3, 841, 3, 841, 3, 841, 3, 841, 3, 841, 3, 841, 3, 841, 3, 841, 3, 841, 3, 841, 3, 842, 3, 842, 3, 842, 3, 842, 3, 842, 3, 842, 3, 842, 3, 842, 3, 842, 3, 842, 3, 843, 3, 843, 3, 843, 3, 843, 3, 844, 3, 844, 3, 844, 3, 844, 3, 844, 3, 844, 3, 844, 3, 844, 3, 844, 3, 844, 3, 844, 3, 844, 3, 844, 3, 844, 3, 845, 3, 845, 3, 845, 3, 845, 3, 845, 3, 845, 3, 845, 3, 845, 3, 845, 3, 845, 3, 845, 3, 845, 3, 845, 3, 846, 3, 846, 3, 846, 3, 846, 3, 846, 3, 846, 3, 846, 3, 846, 3, 846, 3, 846, 3, 847, 3, 847, 3, 847, 3, 847, 3, 847, 3, 847, 3, 847, 3, 847, 3, 847, 3, 847, 3, 847, 3, 847, 3, 847, 3, 847, 3, 847, 3, 848, 3, 848, 3, 848, 3, 848, 3, 848, 3, 848, 3, 848, 3, 848, 3, 848, 3, 848, 3, 848, 3, 848, 3, 848, 3, 848, 3, 849, 3, 849, 3, 849, 3, 849, 3, 849, 3, 849, 3, 849, 3, 849, 3, 849, 3, 849, 3, 849, 3, 849, 3, 849, 3, 849, 3, 850, 3, 850, 3, 850, 3, 850, 3, 850, 3, 850, 3, 850, 3, 850, 3, 850, 3, 850, 3, 850, 3, 850, 3, 850, 3, 851, 3, 851, 3, 851, 3, 851, 3, 851, 3, 851, 3, 851, 3, 851, 3, 851, 3, 851, 3, 851, 3, 851, 3, 851, 3, 851, 3, 851, 3, 851, 3, 851, 3, 851, 3, 851, 3, 851, 3, 851, 3, 851, 3, 851, 3, 851, 3, 852, 3, 852, 3, 852, 3, 852, 3, 852, 3, 852, 3, 852, 3, 852, 3, 852, 3, 852, 3, 852, 3, 852, 3, 852, 3, 852, 3, 852, 3, 852, 3, 852, 3, 852, 3, 852, 3, 852, 3, 852, 3, 852, 3, 852, 3, 853, 3, 853, 3, 853, 3, 853, 3, 853, 3, 853, 3, 853, 3, 853, 3, 853, 3, 853, 3, 853, 3, 853, 3, 853, 3, 853, 3, 853, 3, 853, 3, 853, 3, 853, 3, 853, 3, 854, 3, 854, 3, 854, 3, 854, 3, 854, 3, 854, 3, 854, 3, 854, 3, 854, 3, 854, 3, 854, 3, 854, 3, 854, 3, 854, 3, 854, 3, 854, 3, 854, 3, 854, 3, 855, 3, 855, 3, 855, 3, 855, 3, 855, 3, 855, 3, 855, 3, 855, 3, 855, 3, 855, 3, 855, 3, 855, 3, 855, 3, 855, 3, 855, 3, 855, 3, 855, 3, 855, 3, 855, 3, 855, 3, 855, 3, 856, 3, 856, 3, 856, 3, 856, 3, 856, 3, 856, 3, 856, 3, 856, 3, 856, 3, 856, 3, 856, 3, 856, 3, 856, 3, 856, 3, 856, 3, 856, 3, 856, 3, 856, 3, 856, 3, 856, 3, 857, 3, 857, 3, 857, 3, 857, 3, 857, 3, 857, 3, 857, 3, 857, 3, 857, 3, 857, 3, 857, 3, 858, 3, 858, 3, 858, 3, 858, 3, 858, 3, 858, 3, 858, 3, 859, 3, 859, 3, 859, 3, 859, 3, 859, 3, 859, 3, 859, 3, 859, 3, 859, 3, 859, 3, 859, 3, 859, 3, 859, 3, 859, 3, 860, 3, 860, 3, 860, 3, 860, 3, 860, 3, 860, 3, 860, 3, 860, 3, 860, 3, 860, 3, 860, 3, 860, 3, 860, 3, 860, 3, 860, 3, 860, 3, 860, 3, 861, 3, 861, 3, 861, 3, 861, 3, 861, 3, 861, 3, 861, 3, 861, 3, 861, 3, 861, 3, 862, 3, 862, 3, 862, 3, 862, 3, 863, 3, 863, 3, 863, 3, 863, 3, 863, 3, 863, 3, 863, 3, 863, 3, 863, 3, 863, 3, 863, 3, 863, 3, 863, 3, 864, 3, 864, 3, 864, 3, 864, 3, 865, 3, 865, 3, 865, 3, 865, 3, 865, 3, 865, 3, 865, 3, 865, 3, 865, 3, 866, 3, 866, 3, 866, 3, 866, 3, 866, 3, 866, 3, 866, 3, 866, 3, 866, 3, 866, 3, 866, 3, 867, 3, 867, 3, 867, 3, 867, 3, 867, 3, 867, 3, 867, 3, 867, 3, 867, 3, 867, 3, 867, 3, 867, 3, 868, 3, 868, 3, 868, 3, 869, 3, 869, 3, 869, 3, 869, 3, 869, 3, 869, 3, 869, 3, 869, 3, 869, 3, 869, 3, 869, 3, 869, 3, 869, 3, 869, 3, 870, 3, 870, 3, 870, 3, 870, 3, 870, 3, 870, 3, 870, 3, 870, 3, 870, 3, 870, 3, 870, 3, 870, 3, 870, 3, 871, 3, 871, 3, 871, 3, 871, 3, 871, 3, 871, 3, 871, 3, 872, 3, 872, 3, 872, 3, 872, 3, 872, 3, 872, 3, 872, 3, 872, 3, 872, 3, 872, 3, 872, 3, 872, 3, 872, 3, 873, 3, 873, 3, 873, 3, 873, 3, 873, 3, 873, 3, 873, 3, 873, 3, 873, 3, 873, 3, 873, 3, 873, 3, 874, 3, 874, 3, 874, 3, 874, 3, 874, 3, 874, 3, 874, 3, 874, 3, 874, 3, 874, 3, 874, 3, 874, 3, 874, 3, 874, 3, 874, 3, 874, 3, 875, 3, 875, 3, 875, 3, 875, 3, 875, 3, 875, 3, 875, 3, 875, 3, 875, 3, 875, 3, 875, 3, 875, 3, 875, 3, 875, 3, 875, 3, 876, 3, 876, 3, 876, 3, 876, 3, 877, 3, 877, 3, 877, 3, 877, 3, 877, 3, 877, 3, 878, 3, 878, 3, 878, 3, 878, 3, 878, 3, 878, 3, 879, 3, 879, 3, 879, 3, 879, 3, 879, 3, 879, 3, 879, 3, 879, 3, 880, 3, 880, 3, 880, 3, 880, 3, 880, 3, 881, 3, 881, 3, 881, 3, 881, 3, 881, 3, 881, 3, 881, 3, 881, 3, 881, 3, 881, 3, 881, 3, 881, 3, 881, 3, 882, 3, 882, 3, 882, 3, 882, 3, 882, 3, 882, 3, 882, 3, 882, 3, 882, 3, 882, 3, 882, 3, 882, 3, 882, 3, 883, 3, 883, 3, 883, 3, 883, 3, 883, 3, 883, 3, 883, 3, 883, 3, 884, 3, 884, 3, 884, 3, 884, 3, 884, 3, 884, 3, 885, 3, 885, 3, 885, 3, 885, 3, 885, 3, 885, 3, 885, 3, 885, 3, 885, 3, 885, 3, 886, 3, 886, 3, 886, 3, 886, 3, 886, 3, 887, 3, 887, 3, 887, 3, 887, 3, 887, 3, 887, 3, 888, 3, 888, 3, 888, 3, 888, 3, 888, 3, 888, 3, 888, 3, 888, 3, 888, 3, 888, 3, 888, 3, 888, 3, 889, 3, 889, 3, 889, 3, 889, 3, 889, 3, 889, 3, 889, 3, 889, 3, 889, 3, 889, 3, 889, 3, 889, 3, 889, 3, 890, 3, 890, 3, 890, 3, 890, 3, 891, 3, 891, 3, 891, 3, 891, 3, 891, 3, 892, 3, 892, 3, 892, 3, 892, 3, 892, 3, 893, 3, 893, 3, 893, 3, 893, 3, 893, 3, 893, 3, 893, 3, 893, 3, 893, 3, 893, 3, 893, 3, 893, 3, 894, 3, 894, 3, 894, 3, 894, 3, 894, 3, 895, 3, 895, 3, 895, 3, 895, 3, 896, 3, 896, 3, 896, 3, 896, 3, 896, 3, 896, 3, 897, 3, 897, 3, 897, 3, 897, 3, 897, 3, 897, 3, 897, 3, 897, 3, 898, 3, 898, 3, 898, 3, 898, 3, 898, 3, 898, 3, 898, 3, 898, 3, 898, 3, 898, 3, 898, 3, 898, 3, 898, 3, 898, 3, 898, 3, 898, 3, 898, 3, 898, 3, 898, 3, 898, 3, 898, 3, 898, 3, 898, 3, 898, 3, 898, 3, 898, 3, 898, 3, 898, 3, 899, 3, 899, 3, 899, 3, 899, 3, 899, 3, 900, 3, 900, 3, 900, 3, 900, 3, 900, 3, 901, 3, 901, 3, 901, 3, 901, 3, 901, 3, 901, 3, 901, 3, 901, 3, 901, 3, 901, 3, 901, 3, 902, 3, 902, 3, 902, 3, 902, 3, 902, 3, 902, 3, 902, 3, 903, 3, 903, 3, 903, 3, 903, 3, 903, 3, 903, 3, 903, 3, 903, 3, 903, 3, 903, 3, 903, 3, 903, 3, 904, 3, 904, 3, 904, 3, 904, 3, 904, 3, 904, 3, 904, 3, 904, 3, 905, 3, 905, 3, 905, 3, 905, 3, 905, 3, 905, 3, 905, 3, 905, 3, 905, 3, 905, 3, 905, 3, 905, 3, 906, 3, 906, 3, 906, 3, 906, 3, 906, 3, 906, 3, 906, 3, 906, 3, 906, 3, 906, 3, 907, 3, 907, 3, 907, 3, 907, 3, 907, 3, 907, 3, 907, 3, 907, 3, 907, 3, 908, 3, 908, 3, 908, 3, 908, 3, 908, 3, 908, 3, 908, 3, 908, 3, 908, 3, 909, 3, 909, 3, 909, 3, 909, 3, 909, 3, 909, 3, 909, 3, 909, 3, 909, 3, 909, 3, 910, 3, 910, 3, 910, 3, 910, 3, 910, 3, 910, 3, 910, 3, 910, 3, 910, 3, 910, 3, 910, 3, 910, 3, 911, 3, 911, 3, 911, 3, 911, 3, 911, 3, 911, 3, 911, 3, 911, 3, 911, 3, 911, 3, 911, 3, 911, 3, 912, 3, 912, 3, 912, 3, 912, 3, 912, 3, 912, 3, 912, 3, 912, 3, 912, 3, 912, 3, 912, 3, 913, 3, 913, 3, 913, 3, 913, 3, 913, 3, 913, 3, 913, 3, 913, 3, 913, 3, 913, 3, 913, 3, 913, 3, 913, 3, 913, 3, 914, 3, 914, 3, 914, 3, 914, 3, 914, 3, 914, 3, 914, 3, 914, 3, 914, 3, 914, 3, 914, 3, 914, 3, 914, 3, 915, 3, 915, 3, 915, 3, 915, 3, 915, 3, 915, 3, 915, 3, 915, 3, 915, 3, 915, 3, 915, 3, 915, 3, 916, 3, 916, 3, 916, 3, 916, 3, 916, 3, 916, 3, 916, 3, 916, 3, 916, 3, 916, 3, 916, 3, 916, 3, 917, 3, 917, 3, 917, 3, 917, 3, 917, 3, 917, 3, 917, 3, 917, 3, 917, 3, 917, 3, 917, 3, 917, 3, 918, 3, 918, 3, 918, 3, 918, 3, 918, 3, 918, 3, 918, 3, 918, 3, 918, 3, 918, 3, 918, 3, 918, 3, 919, 3, 919, 3, 919, 3, 919, 3, 919, 3, 919, 3, 919, 3, 919, 3, 919, 3, 919, 3, 920, 3, 920, 3, 920, 3, 920, 3, 920, 3, 920, 3, 920, 3, 920, 3, 920, 3, 920, 3, 920, 3, 920, 3, 920, 3, 920, 3, 920, 3, 920, 3, 921, 3, 921, 3, 921, 3, 921, 3, 921, 3, 921, 3, 921, 3, 921, 3, 921, 3, 921, 3, 921, 3, 921, 3, 921, 3, 921, 3, 921, 3, 921, 3, 921, 3, 921, 3, 921, 3, 921, 3, 922, 3, 922, 3, 922, 3, 922, 3, 922, 3, 922, 3, 922, 3, 922, 3, 922, 3, 922, 3, 922, 3, 922, 3, 922, 3, 922, 3, 922, 3, 922, 3, 922, 3, 922, 3, 922, 3, 923, 3, 923, 3, 923, 3, 923, 3, 923, 3, 923, 3, 923, 3, 923, 3, 923, 3, 923, 3, 923, 3, 923, 3, 923, 3, 923, 3, 923, 3, 923, 3, 923, 3, 923, 3, 923, 3, 924, 3, 924, 3, 924, 3, 924, 3, 924, 3, 924, 3, 924, 3, 924, 3, 924, 3, 924, 3, 924, 3, 924, 3, 924, 3, 924, 3, 924, 3, 924, 3, 924, 3, 924, 3, 924, 3, 924, 3, 924, 3, 924, 3, 924, 3, 924, 3, 924, 3, 924, 3, 924, 3, 924, 3, 924, 3, 924, 3, 925, 3, 925, 3, 925, 3, 925, 3, 925, 3, 925, 3, 925, 3, 925, 3, 925, 3, 925, 3, 925, 3, 925, 3, 925, 3, 925, 3, 925, 3, 925, 3, 925, 3, 925, 3, 925, 3, 925, 3, 925, 3, 925, 3, 925, 3, 925, 3, 925, 3, 925, 3, 925, 3, 925, 3, 925, 3, 926, 3, 926, 3, 926, 3, 926, 3, 926, 3, 926, 3, 926, 3, 926, 3, 926, 3, 926, 3, 926, 3, 926, 3, 926, 3, 926, 3, 926, 3, 926, 3, 926, 3, 926, 3, 926, 3, 926, 3, 927, 3, 927, 3, 927, 3, 927, 3, 927, 3, 927, 3, 927, 3, 927, 3, 927, 3, 927, 3, 927, 3, 927, 3, 927, 3, 927, 3, 927, 3, 927, 3, 927, 3, 927, 3, 927, 3, 928, 3, 928, 3, 928, 3, 928, 3, 928, 3, 928, 3, 928, 3, 928, 3, 928, 3, 928, 3, 928, 3, 928, 3, 928, 3, 929, 3, 929, 3, 929, 3, 929, 3, 929, 3, 929, 3, 929, 3, 929, 3, 929, 3, 929, 3, 929, 3, 929, 3, 929, 3, 929, 3, 929, 3, 929, 3, 930, 3, 930, 3, 930, 3, 930, 3, 930, 3, 930, 3, 930, 3, 930, 3, 930, 3, 930, 3, 930, 3, 930, 3, 930, 3, 930, 3, 930, 3, 930, 3, 931, 3, 931, 3, 931, 3, 931, 3, 931, 3, 931, 3, 931, 3, 931, 3, 931, 3, 931, 3, 931, 3, 931, 3, 931, 3, 931, 3, 931, 3, 932, 3, 932, 3, 932, 3, 932, 3, 932, 3, 932, 3, 932, 3, 932, 3, 932, 3, 932, 3, 932, 3, 932, 3, 932, 3, 932, 3, 932, 3, 932, 3, 932, 3, 933, 3, 933, 3, 933, 3, 933, 3, 933, 3, 933, 3, 933, 3, 933, 3, 933, 3, 933, 3, 933, 3, 933, 3, 933, 3, 933, 3, 933, 3, 933, 3, 934, 3, 934, 3, 934, 3, 934, 3, 934, 3, 934, 3, 934, 3, 934, 3, 934, 3, 934, 3, 934, 3, 934, 3, 934, 3, 934, 3, 935, 3, 935, 3, 935, 3, 935, 3, 935, 3, 935, 3, 935, 3, 935, 3, 935, 3, 935, 3, 935, 3, 935, 3, 936, 3, 936, 3, 936, 3, 936, 3, 936, 3, 936, 3, 936, 3, 936, 3, 936, 3, 936, 3, 936, 3, 937, 3, 937, 3, 937, 3, 937, 3, 937, 3, 937, 3, 937, 3, 937, 3, 937, 3, 937, 3, 937, 3, 937, 3, 938, 3, 938, 3, 938, 3, 938, 3, 938, 3, 938, 3, 938, 3, 938, 3, 938, 3, 938, 3, 938, 3, 938, 3, 938, 3, 938, 3, 938, 3, 938, 3, 939, 3, 939, 3, 939, 3, 939, 3, 939, 3, 939, 3, 939, 3, 939, 3, 939, 3, 939, 3, 939, 3, 939, 3, 939, 3, 939, 3, 939, 3, 940, 3, 940, 3, 940, 3, 940, 3, 940, 3, 940, 3, 940, 3, 940, 3, 940, 3, 940, 3, 940, 3, 940, 3, 940, 3, 940, 3, 940, 3, 940, 3, 940, 3, 940, 3, 940, 3, 940, 3, 940, 3, 940, 3, 941, 3, 941, 3, 941, 3, 941, 3, 941, 3, 941, 3, 941, 3, 941, 3, 941, 3, 941, 3, 941, 3, 941, 3, 941, 3, 941, 3, 941, 3, 941, 3, 941, 3, 941, 3, 941, 3, 941, 3, 941, 3, 942, 3, 942, 3, 942, 3, 942, 3, 942, 3, 942, 3, 942, 3, 942, 3, 942, 3, 942, 3, 942, 3, 942, 3, 942, 3, 942, 3, 942, 3, 942, 3, 942, 3, 943, 3, 943, 3, 943, 3, 943, 3, 943, 3, 943, 3, 943, 3, 943, 3, 943, 3, 943, 3, 943, 3, 943, 3, 943, 3, 943, 3, 943, 3, 943, 3, 943, 3, 943, 3, 943, 3, 944, 3, 944, 3, 944, 3, 944, 3, 944, 3, 944, 3, 944, 3, 944, 3, 944, 3, 944, 3, 944, 3, 944, 3, 944, 3, 944, 3, 944, 3, 944, 3, 944, 3, 944, 3, 944, 3, 944, 3, 945, 3, 945, 3, 945, 3, 945, 3, 945, 3, 945, 3, 945, 3, 945, 3, 945, 3, 945, 3, 945, 3, 945, 3, 945, 3, 946, 3, 946, 3, 946, 3, 946, 3, 946, 3, 946, 3, 946, 3, 946, 3, 946, 3, 946, 3, 946, 3, 946, 3, 947, 3, 947, 3, 947, 3, 947, 3, 947, 3, 947, 3, 947, 3, 947, 3, 947, 3, 947, 3, 947, 3, 947, 3, 947, 3, 947, 3, 947, 3, 947, 3, 947, 3, 948, 3, 948, 3, 948, 3, 948, 3, 948, 3, 948, 3, 948, 3, 948, 3, 948, 3, 948, 3, 948, 3, 948, 3, 948, 3, 948, 3, 948, 3, 948, 3, 949, 3, 949, 3, 949, 3, 949, 3, 949, 3, 949, 3, 949, 3, 949, 3, 949, 3, 949, 3, 950, 3, 950, 3, 950, 3, 950, 3, 950, 3, 950, 3, 950, 3, 950, 3, 950, 3, 950, 3, 950, 3, 950, 3, 950, 3, 950, 3, 950, 3, 950, 3, 951, 3, 951, 3, 951, 3, 951, 3, 951, 3, 951, 3, 951, 3, 951, 3, 951, 3, 951, 3, 951, 3, 951, 3, 951, 3, 951, 3, 951, 3, 952, 3, 952, 3, 952, 3, 952, 3, 952, 3, 952, 3, 952, 3, 952, 3, 952, 3, 952, 3, 952, 3, 952, 3, 952, 3, 952, 3, 952, 3, 952, 3, 952, 3, 952, 3, 952, 3, 953, 3, 953, 3, 953, 3, 953, 3, 953, 3, 953, 3, 953, 3, 953, 3, 953, 3, 953, 3, 953, 3, 953, 3, 953, 3, 953, 3, 953, 3, 953, 3, 953, 3, 953, 3, 954, 3, 954, 3, 954, 3, 954, 3, 954, 3, 954, 3, 954, 3, 954, 3, 955, 3, 955, 3, 955, 3, 955, 3, 955, 3, 955, 3, 955, 3, 955, 3, 955, 3, 955, 3, 955, 3, 955, 3, 955, 3, 955, 3, 956, 3, 956, 3, 956, 3, 956, 3, 956, 3, 956, 3, 956, 3, 956, 3, 956, 3, 956, 3, 956, 3, 956, 3, 956, 3, 956, 3, 956, 3, 956, 3, 956, 3, 957, 3, 957, 3, 957, 3, 957, 3, 957, 3, 957, 3, 957, 3, 957, 3, 957, 3, 957, 3, 957, 3, 958, 3, 958, 3, 958, 3, 958, 3, 958, 3, 958, 3, 958, 3, 958, 3, 958, 3, 959, 3, 959, 3, 959, 3, 959, 3, 959, 3, 959, 3, 959, 3, 959, 3, 959, 3, 959, 3, 960, 3, 960, 3, 960, 3, 960, 3, 960, 3, 961, 3, 961, 3, 961, 3, 961, 3, 961, 3, 962, 3, 962, 3, 962, 3, 962, 3, 962, 3, 962, 3, 962, 3, 962, 3, 963, 3, 963, 3, 963, 3, 963, 3, 963, 3, 963, 3, 963, 3, 963, 3, 963, 3, 963, 3, 963, 3, 963, 3, 963, 3, 963, 3, 963, 3, 963, 3, 964, 3, 964, 3, 964, 3, 964, 3, 964, 3, 964, 3, 964, 3, 964, 3, 965, 3, 965, 3, 965, 3, 965, 3, 965, 3, 965, 3, 965, 3, 965, 3, 965, 3, 965, 3, 965, 3, 965, 3, 966, 3, 966, 3, 966, 3, 966, 3, 967, 3, 967, 3, 967, 3, 967, 3, 967, 3, 967, 3, 967, 3, 967, 3, 967, 3, 968, 3, 968, 3, 968, 3, 968, 3, 968, 3, 968, 3, 968, 3, 968, 3, 968, 3, 968, 3, 968, 3, 968, 3, 968, 3, 969, 3, 969, 3, 969, 3, 969, 3, 969, 3, 969, 3, 969, 3, 969, 3, 969, 3, 969, 3, 969, 3, 969, 3, 969, 3, 969, 3, 970, 3, 970, 3, 970, 3, 970, 3, 970, 3, 970, 3, 970, 3, 970, 3, 970, 3, 970, 3, 970, 3, 970, 3, 971, 3, 971, 3, 971, 3, 971, 3, 971, 3, 971, 3, 971, 3, 971, 3, 971, 3, 971, 3, 971, 3, 971, 3, 972, 3, 972, 3, 972, 3, 972, 3, 972, 3, 972, 3, 972, 3, 972, 3, 973, 3, 973, 3, 973, 3, 973, 3, 973, 3, 973, 3, 973, 3, 973, 3, 973, 3, 973, 3, 974, 3, 974, 3, 974, 3, 974, 3, 974, 3, 974, 3, 974, 3, 974, 3, 975, 3, 975, 3, 975, 3, 975, 3, 975, 3, 975, 3, 975, 3, 975, 3, 975, 3, 975, 3, 975, 3, 976, 3, 976, 3, 976, 3, 976, 3, 976, 3, 976, 3, 977, 3, 977, 3, 977, 3, 977, 3, 977, 3, 977, 3, 977, 3, 977, 3, 977, 3, 977, 3, 977, 3, 978, 3, 978, 3, 978, 3, 978, 3, 978, 3, 978, 3, 978, 3, 978, 3, 978, 3, 978, 3, 978, 3, 978, 3, 978, 3, 978, 3, 978, 3, 978, 3, 978, 3, 978, 3, 978, 3, 978, 3, 979, 3, 979, 3, 979, 3, 979, 3, 979, 3, 979, 3, 980, 3, 980, 3, 980, 3, 980, 3, 980, 3, 980, 3, 980, 3, 980, 3, 980, 3, 980, 3, 980, 3, 980, 3, 980, 3, 980, 3, 980, 3, 981, 3, 981, 3, 981, 3, 981, 3, 981, 3, 981, 3, 981, 3, 981, 3, 981, 3, 981, 3, 982, 3, 982, 3, 982, 3, 982, 3, 982, 3, 982, 3, 983, 3, 983, 3, 983, 3, 983, 3, 983, 3, 984, 3, 984, 3, 984, 3, 984, 3, 984, 3, 984, 3, 984, 3, 984, 3, 984, 3, 984, 3, 984, 3, 985, 3, 985, 3, 985, 3, 985, 3, 985, 3, 985, 3, 985, 3, 985, 3, 985, 3, 985, 3, 985, 3, 985, 3, 985, 3, 985, 3, 985, 3, 985, 3, 985, 3, 985, 3, 985, 3, 985, 3, 985, 3, 985, 3, 985, 3, 985, 3, 985, 3, 985, 3, 985, 3, 986, 3, 986, 3, 986, 3, 986, 3, 986, 3, 986, 3, 986, 3, 986, 3, 987, 3, 987, 3, 987, 3, 987, 3, 987, 3, 987, 3, 987, 3, 987, 3, 987, 3, 987, 3, 987, 3, 987, 3, 987, 3, 987, 3, 987, 3, 987, 3, 987, 3, 987, 3, 987, 3, 987, 3, 987, 3, 987, 3, 987, 3, 987, 3, 987, 3, 987, 3, 987, 3, 987, 3, 987, 3, 987, 3, 987, 3, 987, 3, 987, 3, 987, 3, 988, 3, 988, 3, 988, 3, 988, 3, 988, 3, 988, 3, 988, 3, 988, 3, 989, 3, 989, 3, 989, 3, 989, 3, 989, 3, 989, 3, 989, 3, 989, 3, 989, 3, 989, 3, 989, 3, 990, 3, 990, 3, 990, 3, 990, 3, 990, 3, 990, 3, 990, 3, 990, 3, 990, 3, 990, 3, 990, 3, 990, 3, 990, 3, 990, 3, 991, 3, 991, 3, 991, 3, 991, 3, 991, 3, 991, 3, 991, 3, 992, 3, 992, 3, 992, 3, 992, 3, 992, 3, 992, 3, 992, 3, 992, 3, 992, 3, 993, 3, 993, 3, 994, 3, 994, 3, 995, 3, 995, 3, 995, 3, 996, 3, 996, 3, 996, 3, 997, 3, 997, 3, 997, 3, 998, 3, 998, 3, 998, 3, 999, 3, 999, 3, 999, 3, 1000, 3, 1000, 3, 1000, 3, 1001, 3, 1001, 3, 1001, 3, 1002, 3, 1002, 3, 1002, 3, 1003, 3, 1003, 3, 1003, 3, 1004, 3, 1004, 3, 1005, 3, 1005, 3, 1006, 3, 1006, 3, 1007, 3, 1007, 3, 1008, 3, 1008, 3, 1008, 3, 1009, 3, 1009, 3, 1010, 3, 1010, 3, 1010, 3, 1010, 3, 1011, 3, 1011, 3, 1011, 3, 1011, 3, 1012, 3, 1012, 3, 1013, 3, 1013, 3, 1014, 3, 1014, 3, 1015, 3, 1015, 3, 1016, 3, 1016, 3, 1017, 3, 1017, 3, 1018, 3, 1018, 3, 1019, 3, 1019, 3, 1020, 3, 1020, 3, 1021, 3, 1021, 3, 1022, 3, 1022, 3, 1023, 3, 1023, 3, 1024, 3, 1024, 3, 1025, 3, 1025, 3, 1026, 3, 1026, 3, 1027, 3, 1027, 3, 1028, 3, 1028, 3, 1029, 3, 1029, 3, 1030, 3, 1030, 3, 1031, 3, 1031, 3, 1032, 3, 1032, 3, 1033, 3, 1033, 3, 1033, 5, 1033, 11862, 10, 1033, 3, 1034, 3, 1034, 3, 1034, 3, 1034, 3, 1035, 6, 1035, 11869, 10, 1035, 13, 1035, 14, 1035, 11870, 3, 1035, 3, 1035, 3, 1036, 3, 1036, 3, 1036, 3, 1037, 3, 1037, 3, 1037, 5, 1037, 11881, 10, 1037, 3, 1038, 6, 1038, 11884, 10, 1038, 13, 1038, 14, 1038, 11885, 3, 1039, 3, 1039, 3, 1039, 3, 1039, 3, 1039, 6, 1039, 11893, 10, 1039, 13, 1039, 14, 1039, 11894, 3, 1039, 3, 1039, 3, 1039, 3, 1039, 3, 1039, 3, 1039, 6, 1039, 11903, 10, 1039, 13, 1039, 14, 1039, 11904, 5, 1039, 11907, 10, 1039, 3, 1040, 6, 1040, 11910, 10, 1040, 13, 1040, 14, 1040, 11911, 5, 1040, 11914, 10, 1040, 3, 1040, 3, 1040, 6, 1040, 11918, 10, 1040, 13, 1040, 14, 1040, 11919, 3, 1040, 6, 1040, 11923, 10, 1040, 13, 1040, 14, 1040, 11924, 3, 1040, 3, 1040, 3, 1040, 3, 1040, 6, 1040, 11931, 10, 1040, 13, 1040, 14, 1040, 11932, 5, 1040, 11935, 10, 1040, 3, 1040, 3, 1040, 6, 1040, 11939, 10, 1040, 13, 1040, 14, 1040, 11940, 3, 1040, 3, 1040, 3, 1040, 6, 1040, 11946, 10, 1040, 13, 1040, 14, 1040, 11947, 3, 1040, 3, 1040, 5, 1040, 11952, 10, 1040, 3, 1041, 3, 1041, 3, 1041, 3, 1042, 3, 1042, 3, 1043, 3, 1043, 3, 1043, 3, 1044, 3, 1044, 3, 1044, 3, 1045, 3, 1045, 3, 1046, 3, 1046, 6, 1046, 11969, 10, 1046, 13, 1046, 14, 1046, 11970, 3, 1046, 3, 1046, 3, 1047, 3, 1047, 3, 1047, 3, 1047, 5, 1047, 11979, 10, 1047, 3, 1047, 3, 1047, 3, 1047, 3, 1047, 3, 1047, 5, 1047, 11986, 10, 1047, 3, 1048, 3, 1048, 6, 1048, 11990, 10, 1048, 13, 1048, 14, 1048, 11991, 3, 1048, 3, 1048, 3, 1048, 5, 1048, 11997, 10, 1048, 3, 1049, 3, 1049, 3, 1049, 6, 1049, 12002, 10, 1049, 13, 1049, 14, 1049, 12003, 3, 1049, 5, 1049, 12007, 10, 1049, 3, 1050, 3, 1050, 3, 1050, 3, 1050, 3, 1050, 3, 1050, 3, 1050, 3, 1050, 3, 1050, 3, 1050, 3, 1050, 3, 1050, 3, 1050, 3, 1050, 3, 1050, 3, 1050, 3, 1050, 3, 1050, 3, 1050, 3, 1050, 3, 1050, 3, 1050, 3, 1050, 3, 1050, 3, 1050, 3, 1050, 3, 1050, 3, 1050, 3, 1050, 3, 1050, 3, 1050, 3, 1050, 3, 1050, 3, 1050, 3, 1050, 3, 1050, 3, 1050, 3, 1050, 3, 1050, 3, 1050, 3, 1050, 5, 1050, 12050, 10, 1050, 3, 1051, 3, 1051, 5, 1051, 12054, 10, 1051, 3, 1051, 6, 1051, 12057, 10, 1051, 13, 1051, 14, 1051, 12058, 3, 1052, 7, 1052, 12062, 10, 1052, 12, 1052, 14, 1052, 12065, 11, 1052, 3, 1052, 6, 1052, 12068, 10, 1052, 13, 1052, 14, 1052, 12069, 3, 1052, 7, 1052, 12073, 10, 1052, 12, 1052, 14, 1052, 12076, 11, 1052, 3, 1053, 3, 1053, 3, 1053, 3, 1053, 3, 1053, 3, 1053, 7, 1053, 12084, 10, 1053, 12, 1053, 14, 1053, 12087, 11, 1053, 3, 1053, 3, 1053, 3, 1054, 3, 1054, 3, 1054, 3, 1054, 3, 1054, 3, 1054, 7, 1054, 12097, 10, 1054, 12, 1054, 14, 1054, 12100, 11, 1054, 3, 1054, 3, 1054, 3, 1055, 3, 1055, 3, 1055, 3, 1055, 3, 1055, 3, 1055, 7, 1055, 12110, 10, 1055, 12, 1055, 14, 1055, 12113, 11, 1055, 3, 1055, 3, 1055, 3, 1056, 3, 1056, 3, 1057, 3, 1057, 3, 1058, 3, 1058, 3, 1058, 6, 1058, 12124, 10, 1058, 13, 1058, 14, 1058, 12125, 3, 1058, 3, 1058, 3, 1059, 3, 1059, 3, 1059, 3, 1059, 6, 2133, 2146, 12063, 12069, 2, 1060, 3, 3, 5, 4, 7, 5, 9, 6, 11, 7, 13, 8, 15, 9, 17, 10, 19, 11, 21, 12, 23, 13, 25, 14, 27, 15, 29, 16, 31, 17, 33, 18, 35, 19, 37, 20, 39, 21, 41, 22, 43, 23, 45, 24, 47, 25, 49, 26, 51, 27, 53, 28, 55, 29, 57, 30, 59, 31, 61, 32, 63, 33, 65, 34, 67, 35, 69, 36, 71, 37, 73, 38, 75, 39, 77, 40, 79, 41, 81, 42, 83, 43, 85, 44, 87, 45, 89, 46, 91, 47, 93, 48, 95, 49, 97, 50, 99, 51, 101, 52, 103, 53, 105, 54, 107, 55, 109, 56, 111, 57, 113, 58, 115, 59, 117, 60, 119, 61, 121, 62, 123, 63, 125, 64, 127, 65, 129, 66, 131, 67, 133, 68, 135, 69, 137, 70, 139, 71, 141, 72, 143, 73, 145, 74, 147, 75, 149, 76, 151, 77, 153, 78, 155, 79, 157, 80, 159, 81, 161, 82, 163, 83, 165, 84, 167, 85, 169, 86, 171, 87, 173, 88, 175, 89, 177, 90, 179, 91, 181, 92, 183, 93, 185, 94, 187, 95, 189, 96, 191, 97, 193, 98, 195, 99, 197, 100, 199, 101, 201, 102, 203, 103, 205, 104, 207, 105, 209, 106, 211, 107, 213, 108, 215, 109, 217, 110, 219, 111, 221, 112, 223, 113, 225, 114, 227, 115, 229, 116, 231, 117, 233, 118, 235, 119, 237, 120, 239, 121, 241, 122, 243, 123, 245, 124, 247, 125, 249, 126, 251, 127, 253, 128, 255, 129, 257, 130, 259, 131, 261, 132, 263, 133, 265, 134, 267, 135, 269, 136, 271, 137, 273, 138, 275, 139, 277, 140, 279, 141, 281, 142, 283, 143, 285, 144, 287, 145, 289, 146, 291, 147, 293, 148, 295, 149, 297, 150, 299, 151, 301, 152, 303, 153, 305, 154, 307, 155, 309, 156, 311, 157, 313, 158, 315, 159, 317, 160, 319, 161, 321, 162, 323, 163, 325, 164, 327, 165, 329, 166, 331, 167, 333, 168, 335, 169, 337, 170, 339, 171, 341, 172, 343, 173, 345, 174, 347, 175, 349, 176, 351, 177, 353, 178, 355, 179, 357, 180, 359, 181, 361, 182, 363, 183, 365, 184, 367, 185, 369, 186, 371, 187, 373, 188, 375, 189, 377, 190, 379, 191, 381, 192, 383, 193, 385, 194, 387, 195, 389, 196, 391, 197, 393, 198, 395, 199, 397, 200, 399, 201, 401, 202, 403, 203, 405, 204, 407, 205, 409, 206, 411, 207, 413, 208, 415, 209, 417, 210, 419, 211, 421, 212, 423, 213, 425, 214, 427, 215, 429, 216, 431, 217, 433, 218, 435, 219, 437, 220, 439, 221, 441, 222, 443, 223, 445, 224, 447, 225, 449, 226, 451, 227, 453, 228, 455, 229, 457, 230, 459, 231, 461, 232, 463, 233, 465, 234, 467, 235, 469, 236, 471, 237, 473, 238, 475, 239, 477, 240, 479, 241, 481, 242, 483, 243, 485, 244, 487, 245, 489, 246, 491, 247, 493, 248, 495, 249, 497, 250, 499, 251, 501, 252, 503, 253, 505, 254, 507, 255, 509, 256, 511, 257, 513, 258, 515, 259, 517, 260, 519, 261, 521, 262, 523, 263, 525, 264, 527, 265, 529, 266, 531, 267, 533, 268, 535, 269, 537, 270, 539, 271, 541, 272, 543, 273, 545, 274, 547, 275, 549, 276, 551, 277, 553, 278, 555, 279, 557, 280, 559, 281, 561, 282, 563, 283, 565, 284, 567, 285, 569, 286, 571, 287, 573, 288, 575, 289, 577, 290, 579, 291, 581, 292, 583, 293, 585, 294, 587, 295, 589, 296, 591, 297, 593, 298, 595, 299, 597, 300, 599, 301, 601, 302, 603, 303, 605, 304, 607, 305, 609, 306, 611, 307, 613, 308, 615, 309, 617, 310, 619, 311, 621, 312, 623, 313, 625, 314, 627, 315, 629, 316, 631, 317, 633, 318, 635, 319, 637, 320, 639, 321, 641, 322, 643, 323, 645, 324, 647, 325, 649, 326, 651, 327, 653, 328, 655, 329, 657, 330, 659, 331, 661, 332, 663, 333, 665, 334, 667, 335, 669, 336, 671, 337, 673, 338, 675, 339, 677, 340, 679, 341, 681, 342, 683, 343, 685, 344, 687, 345, 689, 346, 691, 347, 693, 348, 695, 349, 697, 350, 699, 351, 701, 352, 703, 353, 705, 354, 707, 355, 709, 356, 711, 357, 713, 358, 715, 359, 717, 360, 719, 361, 721, 362, 723, 363, 725, 364, 727, 365, 729, 366, 731, 367, 733, 368, 735, 369, 737, 370, 739, 371, 741, 372, 743, 373, 745, 374, 747, 375, 749, 376, 751, 377, 753, 378, 755, 379, 757, 380, 759, 381, 761, 382, 763, 383, 765, 384, 767, 385, 769, 386, 771, 387, 773, 388, 775, 389, 777, 390, 779, 391, 781, 392, 783, 393, 785, 394, 787, 395, 789, 396, 791, 397, 793, 398, 795, 399, 797, 400, 799, 401, 801, 402, 803, 403, 805, 404, 807, 405, 809, 406, 811, 407, 813, 408, 815, 409, 817, 410, 819, 411, 821, 412, 823, 413, 825, 414, 827, 415, 829, 416, 831, 417, 833, 418, 835, 419, 837, 420, 839, 421, 841, 422, 843, 423, 845, 424, 847, 425, 849, 426, 851, 427, 853, 428, 855, 429, 857, 430, 859, 431, 861, 432, 863, 433, 865, 434, 867, 435, 869, 436, 871, 437, 873, 438, 875, 439, 877, 440, 879, 441, 881, 442, 883, 443, 885, 444, 887, 445, 889, 446, 891, 447, 893, 448, 895, 449, 897, 450, 899, 451, 901, 452, 903, 453, 905, 454, 907, 455, 909, 456, 911, 457, 913, 458, 915, 459, 917, 460, 919, 461, 921, 462, 923, 463, 925, 464, 927, 465, 929, 466, 931, 467, 933, 468, 935, 469, 937, 470, 939, 471, 941, 472, 943, 473, 945, 474, 947, 475, 949, 476, 951, 477, 953, 478, 955, 479, 957, 480, 959, 481, 961, 482, 963, 483, 965, 484, 967, 485, 969, 486, 971, 487, 973, 488, 975, 489, 977, 490, 979, 491, 981, 492, 983, 493, 985, 494, 987, 495, 989, 496, 991, 497, 993, 498, 995, 499, 997, 500, 999, 501, 1001, 502, 1003, 503, 1005, 504, 1007, 505, 1009, 506, 1011, 507, 1013, 508, 1015, 509, 1017, 510, 1019, 511, 1021, 512, 1023, 513, 1025, 514, 1027, 515, 1029, 516, 1031, 517, 1033, 518, 1035, 519, 1037, 520, 1039, 521, 1041, 522, 1043, 523, 1045, 524, 1047, 525, 1049, 526, 1051, 527, 1053, 528, 1055, 529, 1057, 530, 1059, 531, 1061, 532, 1063, 533, 1065, 534, 1067, 535, 1069, 536, 1071, 537, 1073, 538, 1075, 539, 1077, 540, 1079, 541, 1081, 542, 1083, 543, 1085, 544, 1087, 545, 1089, 546, 1091, 547, 1093, 548, 1095, 549, 1097, 550, 1099, 551, 1101, 552, 1103, 553, 1105, 554, 1107, 555, 1109, 556, 1111, 557, 1113, 558, 1115, 559, 1117, 560, 1119, 561, 1121, 562, 1123, 563, 1125, 564, 1127, 565, 1129, 566, 1131, 567, 1133, 568, 1135, 569, 1137, 570, 1139, 571, 1141, 572, 1143, 573, 1145, 574, 1147, 575, 1149, 576, 1151, 577, 1153, 578, 1155, 579, 1157, 580, 1159, 581, 1161, 582, 1163, 583, 1165, 584, 1167, 585, 1169, 586, 1171, 587, 1173, 588, 1175, 589, 1177, 590, 1179, 591, 1181, 592, 1183, 593, 1185, 594, 1187, 595, 1189, 596, 1191, 597, 1193, 598, 1195, 599, 1197, 600, 1199, 601, 1201, 602, 1203, 603, 1205, 604, 1207, 605, 1209, 606, 1211, 607, 1213, 608, 1215, 609, 1217, 610, 1219, 611, 1221, 612, 1223, 613, 1225, 614, 1227, 615, 1229, 616, 1231, 617, 1233, 618, 1235, 619, 1237, 620, 1239, 621, 1241, 622, 1243, 623, 1245, 624, 1247, 625, 1249, 626, 1251, 627, 1253, 628, 1255, 629, 1257, 630, 1259, 631, 1261, 632, 1263, 633, 1265, 634, 1267, 635, 1269, 636, 1271, 637, 1273, 638, 1275, 639, 1277, 640, 1279, 641, 1281, 642, 1283, 643, 1285, 644, 1287, 645, 1289, 646, 1291, 647, 1293, 648, 1295, 649, 1297, 650, 1299, 651, 1301, 652, 1303, 653, 1305, 654, 1307, 655, 1309, 656, 1311, 657, 1313, 658, 1315, 659, 1317, 660, 1319, 661, 1321, 662, 1323, 663, 1325, 664, 1327, 665, 1329, 666, 1331, 667, 1333, 668, 1335, 669, 1337, 670, 1339, 671, 1341, 672, 1343, 673, 1345, 674, 1347, 675, 1349, 676, 1351, 677, 1353, 678, 1355, 679, 1357, 680, 1359, 681, 1361, 682, 1363, 683, 1365, 684, 1367, 685, 1369, 686, 1371, 687, 1373, 688, 1375, 689, 1377, 690, 1379, 691, 1381, 692, 1383, 693, 1385, 694, 1387, 695, 1389, 696, 1391, 697, 1393, 698, 1395, 699, 1397, 700, 1399, 701, 1401, 702, 1403, 703, 1405, 704, 1407, 705, 1409, 706, 1411, 707, 1413, 708, 1415, 709, 1417, 710, 1419, 711, 1421, 712, 1423, 713, 1425, 714, 1427, 715, 1429, 716, 1431, 717, 1433, 718, 1435, 719, 1437, 720, 1439, 721, 1441, 722, 1443, 723, 1445, 724, 1447, 725, 1449, 726, 1451, 727, 1453, 728, 1455, 729, 1457, 730, 1459, 731, 1461, 732, 1463, 733, 1465, 734, 1467, 735, 1469, 736, 1471, 737, 1473, 738, 1475, 739, 1477, 740, 1479, 741, 1481, 742, 1483, 743, 1485, 744, 1487, 745, 1489, 746, 1491, 747, 1493, 748, 1495, 749, 1497, 750, 1499, 751, 1501, 752, 1503, 753, 1505, 754, 1507, 755, 1509, 756, 1511, 757, 1513, 758, 1515, 759, 1517, 760, 1519, 761, 1521, 762, 1523, 763, 1525, 764, 1527, 765, 1529, 766, 1531, 767, 1533, 768, 1535, 769, 1537, 770, 1539, 771, 1541, 772, 1543, 773, 1545, 774, 1547, 775, 1549, 776, 1551, 777, 1553, 778, 1555, 779, 1557, 780, 1559, 781, 1561, 782, 1563, 783, 1565, 784, 1567, 785, 1569, 786, 1571, 787, 1573, 788, 1575, 789, 1577, 790, 1579, 791, 1581, 792, 1583, 793, 1585, 794, 1587, 795, 1589, 796, 1591, 797, 1593, 798, 1595, 799, 1597, 800, 1599, 801, 1601, 802, 1603, 803, 1605, 804, 1607, 805, 1609, 806, 1611, 807, 1613, 808, 1615, 809, 1617, 810, 1619, 811, 1621, 812, 1623, 813, 1625, 814, 1627, 815, 1629, 816, 1631, 817, 1633, 818, 1635, 819, 1637, 820, 1639, 821, 1641, 822, 1643, 823, 1645, 824, 1647, 825, 1649, 826, 1651, 827, 1653, 828, 1655, 829, 1657, 830, 1659, 831, 1661, 832, 1663, 833, 1665, 834, 1667, 835, 1669, 836, 1671, 837, 1673, 838, 1675, 839, 1677, 840, 1679, 841, 1681, 842, 1683, 843, 1685, 844, 1687, 845, 1689, 846, 1691, 847, 1693, 848, 1695, 849, 1697, 850, 1699, 851, 1701, 852, 1703, 853, 1705, 854, 1707, 855, 1709, 856, 1711, 857, 1713, 858, 1715, 859, 1717, 860, 1719, 861, 1721, 862, 1723, 863, 1725, 864, 1727, 865, 1729, 866, 1731, 867, 1733, 868, 1735, 869, 1737, 870, 1739, 871, 1741, 872, 1743, 873, 1745, 874, 1747, 875, 1749, 876, 1751, 877, 1753, 878, 1755, 879, 1757, 880, 1759, 881, 1761, 882, 1763, 883, 1765, 884, 1767, 885, 1769, 886, 1771, 887, 1773, 888, 1775, 889, 1777, 890, 1779, 891, 1781, 892, 1783, 893, 1785, 894, 1787, 895, 1789, 896, 1791, 897, 1793, 898, 1795, 899, 1797, 900, 1799, 901, 1801, 902, 1803, 903, 1805, 904, 1807, 905, 1809, 906, 1811, 907, 1813, 908, 1815, 909, 1817, 910, 1819, 911, 1821, 912, 1823, 913, 1825, 914, 1827, 915, 1829, 916, 1831, 917, 1833, 918, 1835, 919, 1837, 920, 1839, 921, 1841, 922, 1843, 923, 1845, 924, 1847, 925, 1849, 926, 1851, 927, 1853, 928, 1855, 929, 1857, 930, 1859, 931, 1861, 932, 1863, 933, 1865, 934, 1867, 935, 1869, 936, 1871, 937, 1873, 938, 1875, 939, 1877, 940, 1879, 941, 1881, 942, 1883, 943, 1885, 944, 1887, 945, 1889, 946, 1891, 947, 1893, 948, 1895, 949, 1897, 950, 1899, 951, 1901, 952, 1903, 953, 1905, 954, 1907, 955, 1909, 956, 1911, 957, 1913, 958, 1915, 959, 1917, 960, 1919, 961, 1921, 962, 1923, 963, 1925, 964, 1927, 965, 1929, 966, 1931, 967, 1933, 968, 1935, 969, 1937, 970, 1939, 971, 1941, 972, 1943, 973, 1945, 974, 1947, 975, 1949, 976, 1951, 977, 1953, 978, 1955, 979, 1957, 980, 1959, 981, 1961, 982, 1963, 983, 1965, 984, 1967, 985, 1969, 986, 1971, 987, 1973, 988, 1975, 989, 1977, 990, 1979, 991, 1981, 992, 1983, 993, 1985, 994, 1987, 995, 1989, 996, 1991, 997, 1993, 998, 1995, 999, 1997, 1000, 1999, 1001, 2001, 1002, 2003, 1003, 2005, 1004, 2007, 1005, 2009, 1006, 2011, 1007, 2013, 1008, 2015, 1009, 2017, 1010, 2019, 1011, 2021, 1012, 2023, 1013, 2025, 1014, 2027, 1015, 2029, 1016, 2031, 1017, 2033, 1018, 2035, 1019, 2037, 1020, 2039, 1021, 2041, 1022, 2043, 1023, 2045, 1024, 2047, 1025, 2049, 1026, 2051, 1027, 2053, 1028, 2055, 1029, 2057, 1030, 2059, 1031, 2061, 1032, 2063, 1033, 2065, 2, 2067, 1034, 2069, 1035, 2071, 1036, 2073, 1037, 2075, 1038, 2077, 1039, 2079, 1040, 2081, 1041, 2083, 1042, 2085, 1043, 2087, 1044, 2089, 1045, 2091, 1046, 2093, 1047, 2095, 1048, 2097, 1049, 2099, 2, 2101, 2, 2103, 2, 2105, 2, 2107, 2, 2109, 2, 2111, 2, 2113, 2, 2115, 2, 2117, 1050, 3, 2, 16, 5, 2, 11, 12, 15, 15, 34, 34, 4, 2, 12, 12, 15, 15, 6, 2, 73, 73, 77, 77, 79, 79, 86, 86, 3, 2, 98, 98, 7, 2, 38, 38, 48, 48, 50, 59, 67, 92, 97, 97, 4, 2, 45, 45, 47, 47, 6, 2, 38, 38, 50, 59, 67, 92, 97, 97, 5, 2, 38, 38, 67, 92, 97, 97, 4, 2, 36, 36, 94, 94, 4, 2, 41, 41, 94, 94, 4, 2, 94, 94, 98, 98, 4, 2, 50, 59, 67, 72, 3, 2, 50, 59, 3, 2, 50, 51, 2, 12222, 2, 3, 3, 2, 2, 2, 2, 5, 3, 2, 2, 2, 2, 7, 3, 2, 2, 2, 2, 9, 3, 2, 2, 2, 2, 11, 3, 2, 2, 2, 2, 13, 3, 2, 2, 2, 2, 15, 3, 2, 2, 2, 2, 17, 3, 2, 2, 2, 2, 19, 3, 2, 2, 2, 2, 21, 3, 2, 2, 2, 2, 23, 3, 2, 2, 2, 2, 25, 3, 2, 2, 2, 2, 27, 3, 2, 2, 2, 2, 29, 3, 2, 2, 2, 2, 31, 3, 2, 2, 2, 2, 33, 3, 2, 2, 2, 2, 35, 3, 2, 2, 2, 2, 37, 3, 2, 2, 2, 2, 39, 3, 2, 2, 2, 2, 41, 3, 2, 2, 2, 2, 43, 3, 2, 2, 2, 2, 45, 3, 2, 2, 2, 2, 47, 3, 2, 2, 2, 2, 49, 3, 2, 2, 2, 2, 51, 3, 2, 2, 2, 2, 53, 3, 2, 2, 2, 2, 55, 3, 2, 2, 2, 2, 57, 3, 2, 2, 2, 2, 59, 3, 2, 2, 2, 2, 61, 3, 2, 2, 2, 2, 63, 3, 2, 2, 2, 2, 65, 3, 2, 2, 2, 2, 67, 3, 2, 2, 2, 2, 69, 3, 2, 2, 2, 2, 71, 3, 2, 2, 2, 2, 73, 3, 2, 2, 2, 2, 75, 3, 2, 2, 2, 2, 77, 3, 2, 2, 2, 2, 79, 3, 2, 2, 2, 2, 81, 3, 2, 2, 2, 2, 83, 3, 2, 2, 2, 2, 85, 3, 2, 2, 2, 2, 87, 3, 2, 2, 2, 2, 89, 3, 2, 2, 2, 2, 91, 3, 2, 2, 2, 2, 93, 3, 2, 2, 2, 2, 95, 3, 2, 2, 2, 2, 97, 3, 2, 2, 2, 2, 99, 3, 2, 2, 2, 2, 101, 3, 2, 2, 2, 2, 103, 3, 2, 2, 2, 2, 105, 3, 2, 2, 2, 2, 107, 3, 2, 2, 2, 2, 109, 3, 2, 2, 2, 2, 111, 3, 2, 2, 2, 2, 113, 3, 2, 2, 2, 2, 115, 3, 2, 2, 2, 2, 117, 3, 2, 2, 2, 2, 119, 3, 2, 2, 2, 2, 121, 3, 2, 2, 2, 2, 123, 3, 2, 2, 2, 2, 125, 3, 2, 2, 2, 2, 127, 3, 2, 2, 2, 2, 129, 3, 2, 2, 2, 2, 131, 3, 2, 2, 2, 2, 133, 3, 2, 2, 2, 2, 135, 3, 2, 2, 2, 2, 137, 3, 2, 2, 2, 2, 139, 3, 2, 2, 2, 2, 141, 3, 2, 2, 2, 2, 143, 3, 2, 2, 2, 2, 145, 3, 2, 2, 2, 2, 147, 3, 2, 2, 2, 2, 149, 3, 2, 2, 2, 2, 151, 3, 2, 2, 2, 2, 153, 3, 2, 2, 2, 2, 155, 3, 2, 2, 2, 2, 157, 3, 2, 2, 2, 2, 159, 3, 2, 2, 2, 2, 161, 3, 2, 2, 2, 2, 163, 3, 2, 2, 2, 2, 165, 3, 2, 2, 2, 2, 167, 3, 2, 2, 2, 2, 169, 3, 2, 2, 2, 2, 171, 3, 2, 2, 2, 2, 173, 3, 2, 2, 2, 2, 175, 3, 2, 2, 2, 2, 177, 3, 2, 2, 2, 2, 179, 3, 2, 2, 2, 2, 181, 3, 2, 2, 2, 2, 183, 3, 2, 2, 2, 2, 185, 3, 2, 2, 2, 2, 187, 3, 2, 2, 2, 2, 189, 3, 2, 2, 2, 2, 191, 3, 2, 2, 2, 2, 193, 3, 2, 2, 2, 2, 195, 3, 2, 2, 2, 2, 197, 3, 2, 2, 2, 2, 199, 3, 2, 2, 2, 2, 201, 3, 2, 2, 2, 2, 203, 3, 2, 2, 2, 2, 205, 3, 2, 2, 2, 2, 207, 3, 2, 2, 2, 2, 209, 3, 2, 2, 2, 2, 211, 3, 2, 2, 2, 2, 213, 3, 2, 2, 2, 2, 215, 3, 2, 2, 2, 2, 217, 3, 2, 2, 2, 2, 219, 3, 2, 2, 2, 2, 221, 3, 2, 2, 2, 2, 223, 3, 2, 2, 2, 2, 225, 3, 2, 2, 2, 2, 227, 3, 2, 2, 2, 2, 229, 3, 2, 2, 2, 2, 231, 3, 2, 2, 2, 2, 233, 3, 2, 2, 2, 2, 235, 3, 2, 2, 2, 2, 237, 3, 2, 2, 2, 2, 239, 3, 2, 2, 2, 2, 241, 3, 2, 2, 2, 2, 243, 3, 2, 2, 2, 2, 245, 3, 2, 2, 2, 2, 247, 3, 2, 2, 2, 2, 249, 3, 2, 2, 2, 2, 251, 3, 2, 2, 2, 2, 253, 3, 2, 2, 2, 2, 255, 3, 2, 2, 2, 2, 257, 3, 2, 2, 2, 2, 259, 3, 2, 2, 2, 2, 261, 3, 2, 2, 2, 2, 263, 3, 2, 2, 2, 2, 265, 3, 2, 2, 2, 2, 267, 3, 2, 2, 2, 2, 269, 3, 2, 2, 2, 2, 271, 3, 2, 2, 2, 2, 273, 3, 2, 2, 2, 2, 275, 3, 2, 2, 2, 2, 277, 3, 2, 2, 2, 2, 279, 3, 2, 2, 2, 2, 281, 3, 2, 2, 2, 2, 283, 3, 2, 2, 2, 2, 285, 3, 2, 2, 2, 2, 287, 3, 2, 2, 2, 2, 289, 3, 2, 2, 2, 2, 291, 3, 2, 2, 2, 2, 293, 3, 2, 2, 2, 2, 295, 3, 2, 2, 2, 2, 297, 3, 2, 2, 2, 2, 299, 3, 2, 2, 2, 2, 301, 3, 2, 2, 2, 2, 303, 3, 2, 2, 2, 2, 305, 3, 2, 2, 2, 2, 307, 3, 2, 2, 2, 2, 309, 3, 2, 2, 2, 2, 311, 3, 2, 2, 2, 2, 313, 3, 2, 2, 2, 2, 315, 3, 2, 2, 2, 2, 317, 3, 2, 2, 2, 2, 319, 3, 2, 2, 2, 2, 321, 3, 2, 2, 2, 2, 323, 3, 2, 2, 2, 2, 325, 3, 2, 2, 2, 2, 327, 3, 2, 2, 2, 2, 329, 3, 2, 2, 2, 2, 331, 3, 2, 2, 2, 2, 333, 3, 2, 2, 2, 2, 335, 3, 2, 2, 2, 2, 337, 3, 2, 2, 2, 2, 339, 3, 2, 2, 2, 2, 341, 3, 2, 2, 2, 2, 343, 3, 2, 2, 2, 2, 345, 3, 2, 2, 2, 2, 347, 3, 2, 2, 2, 2, 349, 3, 2, 2, 2, 2, 351, 3, 2, 2, 2, 2, 353, 3, 2, 2, 2, 2, 355, 3, 2, 2, 2, 2, 357, 3, 2, 2, 2, 2, 359, 3, 2, 2, 2, 2, 361, 3, 2, 2, 2, 2, 363, 3, 2, 2, 2, 2, 365, 3, 2, 2, 2, 2, 367, 3, 2, 2, 2, 2, 369, 3, 2, 2, 2, 2, 371, 3, 2, 2, 2, 2, 373, 3, 2, 2, 2, 2, 375, 3, 2, 2, 2, 2, 377, 3, 2, 2, 2, 2, 379, 3, 2, 2, 2, 2, 381, 3, 2, 2, 2, 2, 383, 3, 2, 2, 2, 2, 385, 3, 2, 2, 2, 2, 387, 3, 2, 2, 2, 2, 389, 3, 2, 2, 2, 2, 391, 3, 2, 2, 2, 2, 393, 3, 2, 2, 2, 2, 395, 3, 2, 2, 2, 2, 397, 3, 2, 2, 2, 2, 399, 3, 2, 2, 2, 2, 401, 3, 2, 2, 2, 2, 403, 3, 2, 2, 2, 2, 405, 3, 2, 2, 2, 2, 407, 3, 2, 2, 2, 2, 409, 3, 2, 2, 2, 2, 411, 3, 2, 2, 2, 2, 413, 3, 2, 2, 2, 2, 415, 3, 2, 2, 2, 2, 417, 3, 2, 2, 2, 2, 419, 3, 2, 2, 2, 2, 421, 3, 2, 2, 2, 2, 423, 3, 2, 2, 2, 2, 425, 3, 2, 2, 2, 2, 427, 3, 2, 2, 2, 2, 429, 3, 2, 2, 2, 2, 431, 3, 2, 2, 2, 2, 433, 3, 2, 2, 2, 2, 435, 3, 2, 2, 2, 2, 437, 3, 2, 2, 2, 2, 439, 3, 2, 2, 2, 2, 441, 3, 2, 2, 2, 2, 443, 3, 2, 2, 2, 2, 445, 3, 2, 2, 2, 2, 447, 3, 2, 2, 2, 2, 449, 3, 2, 2, 2, 2, 451, 3, 2, 2, 2, 2, 453, 3, 2, 2, 2, 2, 455, 3, 2, 2, 2, 2, 457, 3, 2, 2, 2, 2, 459, 3, 2, 2, 2, 2, 461, 3, 2, 2, 2, 2, 463, 3, 2, 2, 2, 2, 465, 3, 2, 2, 2, 2, 467, 3, 2, 2, 2, 2, 469, 3, 2, 2, 2, 2, 471, 3, 2, 2, 2, 2, 473, 3, 2, 2, 2, 2, 475, 3, 2, 2, 2, 2, 477, 3, 2, 2, 2, 2, 479, 3, 2, 2, 2, 2, 481, 3, 2, 2, 2, 2, 483, 3, 2, 2, 2, 2, 485, 3, 2, 2, 2, 2, 487, 3, 2, 2, 2, 2, 489, 3, 2, 2, 2, 2, 491, 3, 2, 2, 2, 2, 493, 3, 2, 2, 2, 2, 495, 3, 2, 2, 2, 2, 497, 3, 2, 2, 2, 2, 499, 3, 2, 2, 2, 2, 501, 3, 2, 2, 2, 2, 503, 3, 2, 2, 2, 2, 505, 3, 2, 2, 2, 2, 507, 3, 2, 2, 2, 2, 509, 3, 2, 2, 2, 2, 511, 3, 2, 2, 2, 2, 513, 3, 2, 2, 2, 2, 515, 3, 2, 2, 2, 2, 517, 3, 2, 2, 2, 2, 519, 3, 2, 2, 2, 2, 521, 3, 2, 2, 2, 2, 523, 3, 2, 2, 2, 2, 525, 3, 2, 2, 2, 2, 527, 3, 2, 2, 2, 2, 529, 3, 2, 2, 2, 2, 531, 3, 2, 2, 2, 2, 533, 3, 2, 2, 2, 2, 535, 3, 2, 2, 2, 2, 537, 3, 2, 2, 2, 2, 539, 3, 2, 2, 2, 2, 541, 3, 2, 2, 2, 2, 543, 3, 2, 2, 2, 2, 545, 3, 2, 2, 2, 2, 547, 3, 2, 2, 2, 2, 549, 3, 2, 2, 2, 2, 551, 3, 2, 2, 2, 2, 553, 3, 2, 2, 2, 2, 555, 3, 2, 2, 2, 2, 557, 3, 2, 2, 2, 2, 559, 3, 2, 2, 2, 2, 561, 3, 2, 2, 2, 2, 563, 3, 2, 2, 2, 2, 565, 3, 2, 2, 2, 2, 567, 3, 2, 2, 2, 2, 569, 3, 2, 2, 2, 2, 571, 3, 2, 2, 2, 2, 573, 3, 2, 2, 2, 2, 575, 3, 2, 2, 2, 2, 577, 3, 2, 2, 2, 2, 579, 3, 2, 2, 2, 2, 581, 3, 2, 2, 2, 2, 583, 3, 2, 2, 2, 2, 585, 3, 2, 2, 2, 2, 587, 3, 2, 2, 2, 2, 589, 3, 2, 2, 2, 2, 591, 3, 2, 2, 2, 2, 593, 3, 2, 2, 2, 2, 595, 3, 2, 2, 2, 2, 597, 3, 2, 2, 2, 2, 599, 3, 2, 2, 2, 2, 601, 3, 2, 2, 2, 2, 603, 3, 2, 2, 2, 2, 605, 3, 2, 2, 2, 2, 607, 3, 2, 2, 2, 2, 609, 3, 2, 2, 2, 2, 611, 3, 2, 2, 2, 2, 613, 3, 2, 2, 2, 2, 615, 3, 2, 2, 2, 2, 617, 3, 2, 2, 2, 2, 619, 3, 2, 2, 2, 2, 621, 3, 2, 2, 2, 2, 623, 3, 2, 2, 2, 2, 625, 3, 2, 2, 2, 2, 627, 3, 2, 2, 2, 2, 629, 3, 2, 2, 2, 2, 631, 3, 2, 2, 2, 2, 633, 3, 2, 2, 2, 2, 635, 3, 2, 2, 2, 2, 637, 3, 2, 2, 2, 2, 639, 3, 2, 2, 2, 2, 641, 3, 2, 2, 2, 2, 643, 3, 2, 2, 2, 2, 645, 3, 2, 2, 2, 2, 647, 3, 2, 2, 2, 2, 649, 3, 2, 2, 2, 2, 651, 3, 2, 2, 2, 2, 653, 3, 2, 2, 2, 2, 655, 3, 2, 2, 2, 2, 657, 3, 2, 2, 2, 2, 659, 3, 2, 2, 2, 2, 661, 3, 2, 2, 2, 2, 663, 3, 2, 2, 2, 2, 665, 3, 2, 2, 2, 2, 667, 3, 2, 2, 2, 2, 669, 3, 2, 2, 2, 2, 671, 3, 2, 2, 2, 2, 673, 3, 2, 2, 2, 2, 675, 3, 2, 2, 2, 2, 677, 3, 2, 2, 2, 2, 679, 3, 2, 2, 2, 2, 681, 3, 2, 2, 2, 2, 683, 3, 2, 2, 2, 2, 685, 3, 2, 2, 2, 2, 687, 3, 2, 2, 2, 2, 689, 3, 2, 2, 2, 2, 691, 3, 2, 2, 2, 2, 693, 3, 2, 2, 2, 2, 695, 3, 2, 2, 2, 2, 697, 3, 2, 2, 2, 2, 699, 3, 2, 2, 2, 2, 701, 3, 2, 2, 2, 2, 703, 3, 2, 2, 2, 2, 705, 3, 2, 2, 2, 2, 707, 3, 2, 2, 2, 2, 709, 3, 2, 2, 2, 2, 711, 3, 2, 2, 2, 2, 713, 3, 2, 2, 2, 2, 715, 3, 2, 2, 2, 2, 717, 3, 2, 2, 2, 2, 719, 3, 2, 2, 2, 2, 721, 3, 2, 2, 2, 2, 723, 3, 2, 2, 2, 2, 725, 3, 2, 2, 2, 2, 727, 3, 2, 2, 2, 2, 729, 3, 2, 2, 2, 2, 731, 3, 2, 2, 2, 2, 733, 3, 2, 2, 2, 2, 735, 3, 2, 2, 2, 2, 737, 3, 2, 2, 2, 2, 739, 3, 2, 2, 2, 2, 741, 3, 2, 2, 2, 2, 743, 3, 2, 2, 2, 2, 745, 3, 2, 2, 2, 2, 747, 3, 2, 2, 2, 2, 749, 3, 2, 2, 2, 2, 751, 3, 2, 2, 2, 2, 753, 3, 2, 2, 2, 2, 755, 3, 2, 2, 2, 2, 757, 3, 2, 2, 2, 2, 759, 3, 2, 2, 2, 2, 761, 3, 2, 2, 2, 2, 763, 3, 2, 2, 2, 2, 765, 3, 2, 2, 2, 2, 767, 3, 2, 2, 2, 2, 769, 3, 2, 2, 2, 2, 771, 3, 2, 2, 2, 2, 773, 3, 2, 2, 2, 2, 775, 3, 2, 2, 2, 2, 777, 3, 2, 2, 2, 2, 779, 3, 2, 2, 2, 2, 781, 3, 2, 2, 2, 2, 783, 3, 2, 2, 2, 2, 785, 3, 2, 2, 2, 2, 787, 3, 2, 2, 2, 2, 789, 3, 2, 2, 2, 2, 791, 3, 2, 2, 2, 2, 793, 3, 2, 2, 2, 2, 795, 3, 2, 2, 2, 2, 797, 3, 2, 2, 2, 2, 799, 3, 2, 2, 2, 2, 801, 3, 2, 2, 2, 2, 803, 3, 2, 2, 2, 2, 805, 3, 2, 2, 2, 2, 807, 3, 2, 2, 2, 2, 809, 3, 2, 2, 2, 2, 811, 3, 2, 2, 2, 2, 813, 3, 2, 2, 2, 2, 815, 3, 2, 2, 2, 2, 817, 3, 2, 2, 2, 2, 819, 3, 2, 2, 2, 2, 821, 3, 2, 2, 2, 2, 823, 3, 2, 2, 2, 2, 825, 3, 2, 2, 2, 2, 827, 3, 2, 2, 2, 2, 829, 3, 2, 2, 2, 2, 831, 3, 2, 2, 2, 2, 833, 3, 2, 2, 2, 2, 835, 3, 2, 2, 2, 2, 837, 3, 2, 2, 2, 2, 839, 3, 2, 2, 2, 2, 841, 3, 2, 2, 2, 2, 843, 3, 2, 2, 2, 2, 845, 3, 2, 2, 2, 2, 847, 3, 2, 2, 2, 2, 849, 3, 2, 2, 2, 2, 851, 3, 2, 2, 2, 2, 853, 3, 2, 2, 2, 2, 855, 3, 2, 2, 2, 2, 857, 3, 2, 2, 2, 2, 859, 3, 2, 2, 2, 2, 861, 3, 2, 2, 2, 2, 863, 3, 2, 2, 2, 2, 865, 3, 2, 2, 2, 2, 867, 3, 2, 2, 2, 2, 869, 3, 2, 2, 2, 2, 871, 3, 2, 2, 2, 2, 873, 3, 2, 2, 2, 2, 875, 3, 2, 2, 2, 2, 877, 3, 2, 2, 2, 2, 879, 3, 2, 2, 2, 2, 881, 3, 2, 2, 2, 2, 883, 3, 2, 2, 2, 2, 885, 3, 2, 2, 2, 2, 887, 3, 2, 2, 2, 2, 889, 3, 2, 2, 2, 2, 891, 3, 2, 2, 2, 2, 893, 3, 2, 2, 2, 2, 895, 3, 2, 2, 2, 2, 897, 3, 2, 2, 2, 2, 899, 3, 2, 2, 2, 2, 901, 3, 2, 2, 2, 2, 903, 3, 2, 2, 2, 2, 905, 3, 2, 2, 2, 2, 907, 3, 2, 2, 2, 2, 909, 3, 2, 2, 2, 2, 911, 3, 2, 2, 2, 2, 913, 3, 2, 2, 2, 2, 915, 3, 2, 2, 2, 2, 917, 3, 2, 2, 2, 2, 919, 3, 2, 2, 2, 2, 921, 3, 2, 2, 2, 2, 923, 3, 2, 2, 2, 2, 925, 3, 2, 2, 2, 2, 927, 3, 2, 2, 2, 2, 929, 3, 2, 2, 2, 2, 931, 3, 2, 2, 2, 2, 933, 3, 2, 2, 2, 2, 935, 3, 2, 2, 2, 2, 937, 3, 2, 2, 2, 2, 939, 3, 2, 2, 2, 2, 941, 3, 2, 2, 2, 2, 943, 3, 2, 2, 2, 2, 945, 3, 2, 2, 2, 2, 947, 3, 2, 2, 2, 2, 949, 3, 2, 2, 2, 2, 951, 3, 2, 2, 2, 2, 953, 3, 2, 2, 2, 2, 955, 3, 2, 2, 2, 2, 957, 3, 2, 2, 2, 2, 959, 3, 2, 2, 2, 2, 961, 3, 2, 2, 2, 2, 963, 3, 2, 2, 2, 2, 965, 3, 2, 2, 2, 2, 967, 3, 2, 2, 2, 2, 969, 3, 2, 2, 2, 2, 971, 3, 2, 2, 2, 2, 973, 3, 2, 2, 2, 2, 975, 3, 2, 2, 2, 2, 977, 3, 2, 2, 2, 2, 979, 3, 2, 2, 2, 2, 981, 3, 2, 2, 2, 2, 983, 3, 2, 2, 2, 2, 985, 3, 2, 2, 2, 2, 987, 3, 2, 2, 2, 2, 989, 3, 2, 2, 2, 2, 991, 3, 2, 2, 2, 2, 993, 3, 2, 2, 2, 2, 995, 3, 2, 2, 2, 2, 997, 3, 2, 2, 2, 2, 999, 3, 2, 2, 2, 2, 1001, 3, 2, 2, 2, 2, 1003, 3, 2, 2, 2, 2, 1005, 3, 2, 2, 2, 2, 1007, 3, 2, 2, 2, 2, 1009, 3, 2, 2, 2, 2, 1011, 3, 2, 2, 2, 2, 1013, 3, 2, 2, 2, 2, 1015, 3, 2, 2, 2, 2, 1017, 3, 2, 2, 2, 2, 1019, 3, 2, 2, 2, 2, 1021, 3, 2, 2, 2, 2, 1023, 3, 2, 2, 2, 2, 1025, 3, 2, 2, 2, 2, 1027, 3, 2, 2, 2, 2, 1029, 3, 2, 2, 2, 2, 1031, 3, 2, 2, 2, 2, 1033, 3, 2, 2, 2, 2, 1035, 3, 2, 2, 2, 2, 1037, 3, 2, 2, 2, 2, 1039, 3, 2, 2, 2, 2, 1041, 3, 2, 2, 2, 2, 1043, 3, 2, 2, 2, 2, 1045, 3, 2, 2, 2, 2, 1047, 3, 2, 2, 2, 2, 1049, 3, 2, 2, 2, 2, 1051, 3, 2, 2, 2, 2, 1053, 3, 2, 2, 2, 2, 1055, 3, 2, 2, 2, 2, 1057, 3, 2, 2, 2, 2, 1059, 3, 2, 2, 2, 2, 1061, 3, 2, 2, 2, 2, 1063, 3, 2, 2, 2, 2, 1065, 3, 2, 2, 2, 2, 1067, 3, 2, 2, 2, 2, 1069, 3, 2, 2, 2, 2, 1071, 3, 2, 2, 2, 2, 1073, 3, 2, 2, 2, 2, 1075, 3, 2, 2, 2, 2, 1077, 3, 2, 2, 2, 2, 1079, 3, 2, 2, 2, 2, 1081, 3, 2, 2, 2, 2, 1083, 3, 2, 2, 2, 2, 1085, 3, 2, 2, 2, 2, 1087, 3, 2, 2, 2, 2, 1089, 3, 2, 2, 2, 2, 1091, 3, 2, 2, 2, 2, 1093, 3, 2, 2, 2, 2, 1095, 3, 2, 2, 2, 2, 1097, 3, 2, 2, 2, 2, 1099, 3, 2, 2, 2, 2, 1101, 3, 2, 2, 2, 2, 1103, 3, 2, 2, 2, 2, 1105, 3, 2, 2, 2, 2, 1107, 3, 2, 2, 2, 2, 1109, 3, 2, 2, 2, 2, 1111, 3, 2, 2, 2, 2, 1113, 3, 2, 2, 2, 2, 1115, 3, 2, 2, 2, 2, 1117, 3, 2, 2, 2, 2, 1119, 3, 2, 2, 2, 2, 1121, 3, 2, 2, 2, 2, 1123, 3, 2, 2, 2, 2, 1125, 3, 2, 2, 2, 2, 1127, 3, 2, 2, 2, 2, 1129, 3, 2, 2, 2, 2, 1131, 3, 2, 2, 2, 2, 1133, 3, 2, 2, 2, 2, 1135, 3, 2, 2, 2, 2, 1137, 3, 2, 2, 2, 2, 1139, 3, 2, 2, 2, 2, 1141, 3, 2, 2, 2, 2, 1143, 3, 2, 2, 2, 2, 1145, 3, 2, 2, 2, 2, 1147, 3, 2, 2, 2, 2, 1149, 3, 2, 2, 2, 2, 1151, 3, 2, 2, 2, 2, 1153, 3, 2, 2, 2, 2, 1155, 3, 2, 2, 2, 2, 1157, 3, 2, 2, 2, 2, 1159, 3, 2, 2, 2, 2, 1161, 3, 2, 2, 2, 2, 1163, 3, 2, 2, 2, 2, 1165, 3, 2, 2, 2, 2, 1167, 3, 2, 2, 2, 2, 1169, 3, 2, 2, 2, 2, 1171, 3, 2, 2, 2, 2, 1173, 3, 2, 2, 2, 2, 1175, 3, 2, 2, 2, 2, 1177, 3, 2, 2, 2, 2, 1179, 3, 2, 2, 2, 2, 1181, 3, 2, 2, 2, 2, 1183, 3, 2, 2, 2, 2, 1185, 3, 2, 2, 2, 2, 1187, 3, 2, 2, 2, 2, 1189, 3, 2, 2, 2, 2, 1191, 3, 2, 2, 2, 2, 1193, 3, 2, 2, 2, 2, 1195, 3, 2, 2, 2, 2, 1197, 3, 2, 2, 2, 2, 1199, 3, 2, 2, 2, 2, 1201, 3, 2, 2, 2, 2, 1203, 3, 2, 2, 2, 2, 1205, 3, 2, 2, 2, 2, 1207, 3, 2, 2, 2, 2, 1209, 3, 2, 2, 2, 2, 1211, 3, 2, 2, 2, 2, 1213, 3, 2, 2, 2, 2, 1215, 3, 2, 2, 2, 2, 1217, 3, 2, 2, 2, 2, 1219, 3, 2, 2, 2, 2, 1221, 3, 2, 2, 2, 2, 1223, 3, 2, 2, 2, 2, 1225, 3, 2, 2, 2, 2, 1227, 3, 2, 2, 2, 2, 1229, 3, 2, 2, 2, 2, 1231, 3, 2, 2, 2, 2, 1233, 3, 2, 2, 2, 2, 1235, 3, 2, 2, 2, 2, 1237, 3, 2, 2, 2, 2, 1239, 3, 2, 2, 2, 2, 1241, 3, 2, 2, 2, 2, 1243, 3, 2, 2, 2, 2, 1245, 3, 2, 2, 2, 2, 1247, 3, 2, 2, 2, 2, 1249, 3, 2, 2, 2, 2, 1251, 3, 2, 2, 2, 2, 1253, 3, 2, 2, 2, 2, 1255, 3, 2, 2, 2, 2, 1257, 3, 2, 2, 2, 2, 1259, 3, 2, 2, 2, 2, 1261, 3, 2, 2, 2, 2, 1263, 3, 2, 2, 2, 2, 1265, 3, 2, 2, 2, 2, 1267, 3, 2, 2, 2, 2, 1269, 3, 2, 2, 2, 2, 1271, 3, 2, 2, 2, 2, 1273, 3, 2, 2, 2, 2, 1275, 3, 2, 2, 2, 2, 1277, 3, 2, 2, 2, 2, 1279, 3, 2, 2, 2, 2, 1281, 3, 2, 2, 2, 2, 1283, 3, 2, 2, 2, 2, 1285, 3, 2, 2, 2, 2, 1287, 3, 2, 2, 2, 2, 1289, 3, 2, 2, 2, 2, 1291, 3, 2, 2, 2, 2, 1293, 3, 2, 2, 2, 2, 1295, 3, 2, 2, 2, 2, 1297, 3, 2, 2, 2, 2, 1299, 3, 2, 2, 2, 2, 1301, 3, 2, 2, 2, 2, 1303, 3, 2, 2, 2, 2, 1305, 3, 2, 2, 2, 2, 1307, 3, 2, 2, 2, 2, 1309, 3, 2, 2, 2, 2, 1311, 3, 2, 2, 2, 2, 1313, 3, 2, 2, 2, 2, 1315, 3, 2, 2, 2, 2, 1317, 3, 2, 2, 2, 2, 1319, 3, 2, 2, 2, 2, 1321, 3, 2, 2, 2, 2, 1323, 3, 2, 2, 2, 2, 1325, 3, 2, 2, 2, 2, 1327, 3, 2, 2, 2, 2, 1329, 3, 2, 2, 2, 2, 1331, 3, 2, 2, 2, 2, 1333, 3, 2, 2, 2, 2, 1335, 3, 2, 2, 2, 2, 1337, 3, 2, 2, 2, 2, 1339, 3, 2, 2, 2, 2, 1341, 3, 2, 2, 2, 2, 1343, 3, 2, 2, 2, 2, 1345, 3, 2, 2, 2, 2, 1347, 3, 2, 2, 2, 2, 1349, 3, 2, 2, 2, 2, 1351, 3, 2, 2, 2, 2, 1353, 3, 2, 2, 2, 2, 1355, 3, 2, 2, 2, 2, 1357, 3, 2, 2, 2, 2, 1359, 3, 2, 2, 2, 2, 1361, 3, 2, 2, 2, 2, 1363, 3, 2, 2, 2, 2, 1365, 3, 2, 2, 2, 2, 1367, 3, 2, 2, 2, 2, 1369, 3, 2, 2, 2, 2, 1371, 3, 2, 2, 2, 2, 1373, 3, 2, 2, 2, 2, 1375, 3, 2, 2, 2, 2, 1377, 3, 2, 2, 2, 2, 1379, 3, 2, 2, 2, 2, 1381, 3, 2, 2, 2, 2, 1383, 3, 2, 2, 2, 2, 1385, 3, 2, 2, 2, 2, 1387, 3, 2, 2, 2, 2, 1389, 3, 2, 2, 2, 2, 1391, 3, 2, 2, 2, 2, 1393, 3, 2, 2, 2, 2, 1395, 3, 2, 2, 2, 2, 1397, 3, 2, 2, 2, 2, 1399, 3, 2, 2, 2, 2, 1401, 3, 2, 2, 2, 2, 1403, 3, 2, 2, 2, 2, 1405, 3, 2, 2, 2, 2, 1407, 3, 2, 2, 2, 2, 1409, 3, 2, 2, 2, 2, 1411, 3, 2, 2, 2, 2, 1413, 3, 2, 2, 2, 2, 1415, 3, 2, 2, 2, 2, 1417, 3, 2, 2, 2, 2, 1419, 3, 2, 2, 2, 2, 1421, 3, 2, 2, 2, 2, 1423, 3, 2, 2, 2, 2, 1425, 3, 2, 2, 2, 2, 1427, 3, 2, 2, 2, 2, 1429, 3, 2, 2, 2, 2, 1431, 3, 2, 2, 2, 2, 1433, 3, 2, 2, 2, 2, 1435, 3, 2, 2, 2, 2, 1437, 3, 2, 2, 2, 2, 1439, 3, 2, 2, 2, 2, 1441, 3, 2, 2, 2, 2, 1443, 3, 2, 2, 2, 2, 1445, 3, 2, 2, 2, 2, 1447, 3, 2, 2, 2, 2, 1449, 3, 2, 2, 2, 2, 1451, 3, 2, 2, 2, 2, 1453, 3, 2, 2, 2, 2, 1455, 3, 2, 2, 2, 2, 1457, 3, 2, 2, 2, 2, 1459, 3, 2, 2, 2, 2, 1461, 3, 2, 2, 2, 2, 1463, 3, 2, 2, 2, 2, 1465, 3, 2, 2, 2, 2, 1467, 3, 2, 2, 2, 2, 1469, 3, 2, 2, 2, 2, 1471, 3, 2, 2, 2, 2, 1473, 3, 2, 2, 2, 2, 1475, 3, 2, 2, 2, 2, 1477, 3, 2, 2, 2, 2, 1479, 3, 2, 2, 2, 2, 1481, 3, 2, 2, 2, 2, 1483, 3, 2, 2, 2, 2, 1485, 3, 2, 2, 2, 2, 1487, 3, 2, 2, 2, 2, 1489, 3, 2, 2, 2, 2, 1491, 3, 2, 2, 2, 2, 1493, 3, 2, 2, 2, 2, 1495, 3, 2, 2, 2, 2, 1497, 3, 2, 2, 2, 2, 1499, 3, 2, 2, 2, 2, 1501, 3, 2, 2, 2, 2, 1503, 3, 2, 2, 2, 2, 1505, 3, 2, 2, 2, 2, 1507, 3, 2, 2, 2, 2, 1509, 3, 2, 2, 2, 2, 1511, 3, 2, 2, 2, 2, 1513, 3, 2, 2, 2, 2, 1515, 3, 2, 2, 2, 2, 1517, 3, 2, 2, 2, 2, 1519, 3, 2, 2, 2, 2, 1521, 3, 2, 2, 2, 2, 1523, 3, 2, 2, 2, 2, 1525, 3, 2, 2, 2, 2, 1527, 3, 2, 2, 2, 2, 1529, 3, 2, 2, 2, 2, 1531, 3, 2, 2, 2, 2, 1533, 3, 2, 2, 2, 2, 1535, 3, 2, 2, 2, 2, 1537, 3, 2, 2, 2, 2, 1539, 3, 2, 2, 2, 2, 1541, 3, 2, 2, 2, 2, 1543, 3, 2, 2, 2, 2, 1545, 3, 2, 2, 2, 2, 1547, 3, 2, 2, 2, 2, 1549, 3, 2, 2, 2, 2, 1551, 3, 2, 2, 2, 2, 1553, 3, 2, 2, 2, 2, 1555, 3, 2, 2, 2, 2, 1557, 3, 2, 2, 2, 2, 1559, 3, 2, 2, 2, 2, 1561, 3, 2, 2, 2, 2, 1563, 3, 2, 2, 2, 2, 1565, 3, 2, 2, 2, 2, 1567, 3, 2, 2, 2, 2, 1569, 3, 2, 2, 2, 2, 1571, 3, 2, 2, 2, 2, 1573, 3, 2, 2, 2, 2, 1575, 3, 2, 2, 2, 2, 1577, 3, 2, 2, 2, 2, 1579, 3, 2, 2, 2, 2, 1581, 3, 2, 2, 2, 2, 1583, 3, 2, 2, 2, 2, 1585, 3, 2, 2, 2, 2, 1587, 3, 2, 2, 2, 2, 1589, 3, 2, 2, 2, 2, 1591, 3, 2, 2, 2, 2, 1593, 3, 2, 2, 2, 2, 1595, 3, 2, 2, 2, 2, 1597, 3, 2, 2, 2, 2, 1599, 3, 2, 2, 2, 2, 1601, 3, 2, 2, 2, 2, 1603, 3, 2, 2, 2, 2, 1605, 3, 2, 2, 2, 2, 1607, 3, 2, 2, 2, 2, 1609, 3, 2, 2, 2, 2, 1611, 3, 2, 2, 2, 2, 1613, 3, 2, 2, 2, 2, 1615, 3, 2, 2, 2, 2, 1617, 3, 2, 2, 2, 2, 1619, 3, 2, 2, 2, 2, 1621, 3, 2, 2, 2, 2, 1623, 3, 2, 2, 2, 2, 1625, 3, 2, 2, 2, 2, 1627, 3, 2, 2, 2, 2, 1629, 3, 2, 2, 2, 2, 1631, 3, 2, 2, 2, 2, 1633, 3, 2, 2, 2, 2, 1635, 3, 2, 2, 2, 2, 1637, 3, 2, 2, 2, 2, 1639, 3, 2, 2, 2, 2, 1641, 3, 2, 2, 2, 2, 1643, 3, 2, 2, 2, 2, 1645, 3, 2, 2, 2, 2, 1647, 3, 2, 2, 2, 2, 1649, 3, 2, 2, 2, 2, 1651, 3, 2, 2, 2, 2, 1653, 3, 2, 2, 2, 2, 1655, 3, 2, 2, 2, 2, 1657, 3, 2, 2, 2, 2, 1659, 3, 2, 2, 2, 2, 1661, 3, 2, 2, 2, 2, 1663, 3, 2, 2, 2, 2, 1665, 3, 2, 2, 2, 2, 1667, 3, 2, 2, 2, 2, 1669, 3, 2, 2, 2, 2, 1671, 3, 2, 2, 2, 2, 1673, 3, 2, 2, 2, 2, 1675, 3, 2, 2, 2, 2, 1677, 3, 2, 2, 2, 2, 1679, 3, 2, 2, 2, 2, 1681, 3, 2, 2, 2, 2, 1683, 3, 2, 2, 2, 2, 1685, 3, 2, 2, 2, 2, 1687, 3, 2, 2, 2, 2, 1689, 3, 2, 2, 2, 2, 1691, 3, 2, 2, 2, 2, 1693, 3, 2, 2, 2, 2, 1695, 3, 2, 2, 2, 2, 1697, 3, 2, 2, 2, 2, 1699, 3, 2, 2, 2, 2, 1701, 3, 2, 2, 2, 2, 1703, 3, 2, 2, 2, 2, 1705, 3, 2, 2, 2, 2, 1707, 3, 2, 2, 2, 2, 1709, 3, 2, 2, 2, 2, 1711, 3, 2, 2, 2, 2, 1713, 3, 2, 2, 2, 2, 1715, 3, 2, 2, 2, 2, 1717, 3, 2, 2, 2, 2, 1719, 3, 2, 2, 2, 2, 1721, 3, 2, 2, 2, 2, 1723, 3, 2, 2, 2, 2, 1725, 3, 2, 2, 2, 2, 1727, 3, 2, 2, 2, 2, 1729, 3, 2, 2, 2, 2, 1731, 3, 2, 2, 2, 2, 1733, 3, 2, 2, 2, 2, 1735, 3, 2, 2, 2, 2, 1737, 3, 2, 2, 2, 2, 1739, 3, 2, 2, 2, 2, 1741, 3, 2, 2, 2, 2, 1743, 3, 2, 2, 2, 2, 1745, 3, 2, 2, 2, 2, 1747, 3, 2, 2, 2, 2, 1749, 3, 2, 2, 2, 2, 1751, 3, 2, 2, 2, 2, 1753, 3, 2, 2, 2, 2, 1755, 3, 2, 2, 2, 2, 1757, 3, 2, 2, 2, 2, 1759, 3, 2, 2, 2, 2, 1761, 3, 2, 2, 2, 2, 1763, 3, 2, 2, 2, 2, 1765, 3, 2, 2, 2, 2, 1767, 3, 2, 2, 2, 2, 1769, 3, 2, 2, 2, 2, 1771, 3, 2, 2, 2, 2, 1773, 3, 2, 2, 2, 2, 1775, 3, 2, 2, 2, 2, 1777, 3, 2, 2, 2, 2, 1779, 3, 2, 2, 2, 2, 1781, 3, 2, 2, 2, 2, 1783, 3, 2, 2, 2, 2, 1785, 3, 2, 2, 2, 2, 1787, 3, 2, 2, 2, 2, 1789, 3, 2, 2, 2, 2, 1791, 3, 2, 2, 2, 2, 1793, 3, 2, 2, 2, 2, 1795, 3, 2, 2, 2, 2, 1797, 3, 2, 2, 2, 2, 1799, 3, 2, 2, 2, 2, 1801, 3, 2, 2, 2, 2, 1803, 3, 2, 2, 2, 2, 1805, 3, 2, 2, 2, 2, 1807, 3, 2, 2, 2, 2, 1809, 3, 2, 2, 2, 2, 1811, 3, 2, 2, 2, 2, 1813, 3, 2, 2, 2, 2, 1815, 3, 2, 2, 2, 2, 1817, 3, 2, 2, 2, 2, 1819, 3, 2, 2, 2, 2, 1821, 3, 2, 2, 2, 2, 1823, 3, 2, 2, 2, 2, 1825, 3, 2, 2, 2, 2, 1827, 3, 2, 2, 2, 2, 1829, 3, 2, 2, 2, 2, 1831, 3, 2, 2, 2, 2, 1833, 3, 2, 2, 2, 2, 1835, 3, 2, 2, 2, 2, 1837, 3, 2, 2, 2, 2, 1839, 3, 2, 2, 2, 2, 1841, 3, 2, 2, 2, 2, 1843, 3, 2, 2, 2, 2, 1845, 3, 2, 2, 2, 2, 1847, 3, 2, 2, 2, 2, 1849, 3, 2, 2, 2, 2, 1851, 3, 2, 2, 2, 2, 1853, 3, 2, 2, 2, 2, 1855, 3, 2, 2, 2, 2, 1857, 3, 2, 2, 2, 2, 1859, 3, 2, 2, 2, 2, 1861, 3, 2, 2, 2, 2, 1863, 3, 2, 2, 2, 2, 1865, 3, 2, 2, 2, 2, 1867, 3, 2, 2, 2, 2, 1869, 3, 2, 2, 2, 2, 1871, 3, 2, 2, 2, 2, 1873, 3, 2, 2, 2, 2, 1875, 3, 2, 2, 2, 2, 1877, 3, 2, 2, 2, 2, 1879, 3, 2, 2, 2, 2, 1881, 3, 2, 2, 2, 2, 1883, 3, 2, 2, 2, 2, 1885, 3, 2, 2, 2, 2, 1887, 3, 2, 2, 2, 2, 1889, 3, 2, 2, 2, 2, 1891, 3, 2, 2, 2, 2, 1893, 3, 2, 2, 2, 2, 1895, 3, 2, 2, 2, 2, 1897, 3, 2, 2, 2, 2, 1899, 3, 2, 2, 2, 2, 1901, 3, 2, 2, 2, 2, 1903, 3, 2, 2, 2, 2, 1905, 3, 2, 2, 2, 2, 1907, 3, 2, 2, 2, 2, 1909, 3, 2, 2, 2, 2, 1911, 3, 2, 2, 2, 2, 1913, 3, 2, 2, 2, 2, 1915, 3, 2, 2, 2, 2, 1917, 3, 2, 2, 2, 2, 1919, 3, 2, 2, 2, 2, 1921, 3, 2, 2, 2, 2, 1923, 3, 2, 2, 2, 2, 1925, 3, 2, 2, 2, 2, 1927, 3, 2, 2, 2, 2, 1929, 3, 2, 2, 2, 2, 1931, 3, 2, 2, 2, 2, 1933, 3, 2, 2, 2, 2, 1935, 3, 2, 2, 2, 2, 1937, 3, 2, 2, 2, 2, 1939, 3, 2, 2, 2, 2, 1941, 3, 2, 2, 2, 2, 1943, 3, 2, 2, 2, 2, 1945, 3, 2, 2, 2, 2, 1947, 3, 2, 2, 2, 2, 1949, 3, 2, 2, 2, 2, 1951, 3, 2, 2, 2, 2, 1953, 3, 2, 2, 2, 2, 1955, 3, 2, 2, 2, 2, 1957, 3, 2, 2, 2, 2, 1959, 3, 2, 2, 2, 2, 1961, 3, 2, 2, 2, 2, 1963, 3, 2, 2, 2, 2, 1965, 3, 2, 2, 2, 2, 1967, 3, 2, 2, 2, 2, 1969, 3, 2, 2, 2, 2, 1971, 3, 2, 2, 2, 2, 1973, 3, 2, 2, 2, 2, 1975, 3, 2, 2, 2, 2, 1977, 3, 2, 2, 2, 2, 1979, 3, 2, 2, 2, 2, 1981, 3, 2, 2, 2, 2, 1983, 3, 2, 2, 2, 2, 1985, 3, 2, 2, 2, 2, 1987, 3, 2, 2, 2, 2, 1989, 3, 2, 2, 2, 2, 1991, 3, 2, 2, 2, 2, 1993, 3, 2, 2, 2, 2, 1995, 3, 2, 2, 2, 2, 1997, 3, 2, 2, 2, 2, 1999, 3, 2, 2, 2, 2, 2001, 3, 2, 2, 2, 2, 2003, 3, 2, 2, 2, 2, 2005, 3, 2, 2, 2, 2, 2007, 3, 2, 2, 2, 2, 2009, 3, 2, 2, 2, 2, 2011, 3, 2, 2, 2, 2, 2013, 3, 2, 2, 2, 2, 2015, 3, 2, 2, 2, 2, 2017, 3, 2, 2, 2, 2, 2019, 3, 2, 2, 2, 2, 2021, 3, 2, 2, 2, 2, 2023, 3, 2, 2, 2, 2, 2025, 3, 2, 2, 2, 2, 2027, 3, 2, 2, 2, 2, 2029, 3, 2, 2, 2, 2, 2031, 3, 2, 2, 2, 2, 2033, 3, 2, 2, 2, 2, 2035, 3, 2, 2, 2, 2, 2037, 3, 2, 2, 2, 2, 2039, 3, 2, 2, 2, 2, 2041, 3, 2, 2, 2, 2, 2043, 3, 2, 2, 2, 2, 2045, 3, 2, 2, 2, 2, 2047, 3, 2, 2, 2, 2, 2049, 3, 2, 2, 2, 2, 2051, 3, 2, 2, 2, 2, 2053, 3, 2, 2, 2, 2, 2055, 3, 2, 2, 2, 2, 2057, 3, 2, 2, 2, 2, 2059, 3, 2, 2, 2, 2, 2061, 3, 2, 2, 2, 2, 2063, 3, 2, 2, 2, 2, 2067, 3, 2, 2, 2, 2, 2069, 3, 2, 2, 2, 2, 2071, 3, 2, 2, 2, 2, 2073, 3, 2, 2, 2, 2, 2075, 3, 2, 2, 2, 2, 2077, 3, 2, 2, 2, 2, 2079, 3, 2, 2, 2, 2, 2081, 3, 2, 2, 2, 2, 2083, 3, 2, 2, 2, 2, 2085, 3, 2, 2, 2, 2, 2087, 3, 2, 2, 2, 2, 2089, 3, 2, 2, 2, 2, 2091, 3, 2, 2, 2, 2, 2093, 3, 2, 2, 2, 2, 2095, 3, 2, 2, 2, 2, 2097, 3, 2, 2, 2, 2, 2117, 3, 2, 2, 2, 3, 2120, 3, 2, 2, 2, 5, 2126, 3, 2, 2, 2, 7, 2140, 3, 2, 2, 2, 9, 2183, 3, 2, 2, 2, 11, 2187, 3, 2, 2, 2, 13, 2191, 3, 2, 2, 2, 15, 2195, 3, 2, 2, 2, 17, 2201, 3, 2, 2, 2, 19, 2208, 3, 2, 2, 2, 21, 2216, 3, 2, 2, 2, 23, 2220, 3, 2, 2, 2, 25, 2223, 3, 2, 2, 2, 27, 2227, 3, 2, 2, 2, 29, 2234, 3, 2, 2, 2, 31, 2242, 3, 2, 2, 2, 33, 2247, 3, 2, 2, 2, 35, 2250, 3, 2, 2, 2, 37, 2255, 3, 2, 2, 2, 39, 2263, 3, 2, 2, 2, 41, 2268, 3, 2, 2, 2, 43, 2273, 3, 2, 2, 2, 45, 2280, 3, 2, 2, 2, 47, 2290, 3, 2, 2, 2, 49, 2296, 3, 2, 2, 2, 51, 2304, 3, 2, 2, 2, 53, 2311, 3, 2, 2, 2, 55, 2321, 3, 2, 2, 2, 57, 2332, 3, 2, 2, 2, 59, 2341, 3, 2, 2, 2, 61, 2349, 3, 2, 2, 2, 63, 2356, 3, 2, 2, 2, 65, 2362, 3, 2, 2, 2, 67, 2370, 3, 2, 2, 2, 69, 2383, 3, 2, 2, 2, 71, 2390, 3, 2, 2, 2, 73, 2399, 3, 2, 2, 2, 75, 2409, 3, 2, 2, 2, 77, 2417, 3, 2, 2, 2, 79, 2425, 3, 2, 2, 2, 81, 2433, 3, 2, 2, 2, 83, 2440, 3, 2, 2, 2, 85, 2445, 3, 2, 2, 2, 87, 2454, 3, 2, 2, 2, 89, 2468, 3, 2, 2, 2, 91, 2480, 3, 2, 2, 2, 93, 2489, 3, 2, 2, 2, 95, 2501, 3, 2, 2, 2, 97, 2506, 3, 2, 2, 2, 99, 2511, 3, 2, 2, 2, 101, 2516, 3, 2, 2, 2, 103, 2523, 3, 2, 2, 2, 105, 2532, 3, 2, 2, 2, 107, 2540, 3, 2, 2, 2, 109, 2547, 3, 2, 2, 2, 111, 2552, 3, 2, 2, 2, 113, 2560, 3, 2, 2, 2, 115, 2566, 3, 2, 2, 2, 117, 2572, 3, 2, 2, 2, 119, 2576, 3, 2, 2, 2, 121, 2582, 3, 2, 2, 2, 123, 2590, 3, 2, 2, 2, 125, 2595, 3, 2, 2, 2, 127, 2604, 3, 2, 2, 2, 129, 2614, 3, 2, 2, 2, 131, 2618, 3, 2, 2, 2, 133, 2624, 3, 2, 2, 2, 135, 2630, 3, 2, 2, 2, 137, 2637, 3, 2, 2, 2, 139, 2651, 3, 2, 2, 2, 141, 2654, 3, 2, 2, 2, 143, 2661, 3, 2, 2, 2, 145, 2664, 3, 2, 2, 2, 147, 2670, 3, 2, 2, 2, 149, 2677, 3, 2, 2, 2, 151, 2683, 3, 2, 2, 2, 153, 2689, 3, 2, 2, 2, 155, 2696, 3, 2, 2, 2, 157, 2705, 3, 2, 2, 2, 159, 2710, 3, 2, 2, 2, 161, 2713, 3, 2, 2, 2, 163, 2721, 3, 2, 2, 2, 165, 2726, 3, 2, 2, 2, 167, 2730, 3, 2, 2, 2, 169, 2735, 3, 2, 2, 2, 171, 2740, 3, 2, 2, 2, 173, 2748, 3, 2, 2, 2, 175, 2754, 3, 2, 2, 2, 177, 2759, 3, 2, 2, 2, 179, 2764, 3, 2, 2, 2, 181, 2770, 3, 2, 2, 2, 183, 2777, 3, 2, 2, 2, 185, 2783, 3, 2, 2, 2, 187, 2788, 3, 2, 2, 2, 189, 2793, 3, 2, 2, 2, 191, 2798, 3, 2, 2, 2, 193, 2811, 3, 2, 2, 2, 195, 2823, 3, 2, 2, 2, 197, 2853, 3, 2, 2, 2, 199, 2859, 3, 2, 2, 2, 201, 2868, 3, 2, 2, 2, 203, 2877, 3, 2, 2, 2, 205, 2885, 3, 2, 2, 2, 207, 2889, 3, 2, 2, 2, 209, 2908, 3, 2, 2, 2, 211, 2913, 3, 2, 2, 2, 213, 2920, 3, 2, 2, 2, 215, 2923, 3, 2, 2, 2, 217, 2932, 3, 2, 2, 2, 219, 2939, 3, 2, 2, 2, 221, 2950, 3, 2, 2, 2, 223, 2953, 3, 2, 2, 2, 225, 2959, 3, 2, 2, 2, 227, 2963, 3, 2, 2, 2, 229, 2969, 3, 2, 2, 2, 231, 2977, 3, 2, 2, 2, 233, 2987, 3, 2, 2, 2, 235, 2995, 3, 2, 2, 2, 237, 3005, 3, 2, 2, 2, 239, 3011, 3, 2, 2, 2, 241, 3017, 3, 2, 2, 2, 243, 3022, 3, 2, 2, 2, 245, 3028, 3, 2, 2, 2, 247, 3039, 3, 2, 2, 2, 249, 3046, 3, 2, 2, 2, 251, 3054, 3, 2, 2, 2, 253, 3061, 3, 2, 2, 2, 255, 3068, 3, 2, 2, 2, 257, 3076, 3, 2, 2, 2, 259, 3084, 3, 2, 2, 2, 261, 3093, 3, 2, 2, 2, 263, 3102, 3, 2, 2, 2, 265, 3109, 3, 2, 2, 2, 267, 3116, 3, 2, 2, 2, 269, 3122, 3, 2, 2, 2, 271, 3128, 3, 2, 2, 2, 273, 3135, 3, 2, 2, 2, 275, 3143, 3, 2, 2, 2, 277, 3150, 3, 2, 2, 2, 279, 3154, 3, 2, 2, 2, 281, 3164, 3, 2, 2, 2, 283, 3169, 3, 2, 2, 2, 285, 3176, 3, 2, 2, 2, 287, 3184, 3, 2, 2, 2, 289, 3188, 3, 2, 2, 2, 291, 3201, 3, 2, 2, 2, 293, 3210, 3, 2, 2, 2, 295, 3221, 3, 2, 2, 2, 297, 3236, 3, 2, 2, 2, 299, 3256, 3, 2, 2, 2, 301, 3273, 3, 2, 2, 2, 303, 3277, 3, 2, 2, 2, 305, 3285, 3, 2, 2, 2, 307, 3294, 3, 2, 2, 2, 309, 3308, 3, 2, 2, 2, 311, 3314, 3, 2, 2, 2, 313, 3325, 3, 2, 2, 2, 315, 3330, 3, 2, 2, 2, 317, 3333, 3, 2, 2, 2, 319, 3342, 3, 2, 2, 2, 321, 3350, 3, 2, 2, 2, 323, 3355, 3, 2, 2, 2, 325, 3360, 3, 2, 2, 2, 327, 3366, 3, 2, 2, 2, 329, 3373, 3, 2, 2, 2, 331, 3380, 3, 2, 2, 2, 333, 3389, 3, 2, 2, 2, 335, 3396, 3, 2, 2, 2, 337, 3402, 3, 2, 2, 2, 339, 3406, 3, 2, 2, 2, 341, 3412, 3, 2, 2, 2, 343, 3419, 3, 2, 2, 2, 345, 3424, 3, 2, 2, 2, 347, 3430, 3, 2, 2, 2, 349, 3436, 3, 2, 2, 2, 351, 3441, 3, 2, 2, 2, 353, 3447, 3, 2, 2, 2, 355, 3451, 3, 2, 2, 2, 357, 3460, 3, 2, 2, 2, 359, 3468, 3, 2, 2, 2, 361, 3477, 3, 2, 2, 2, 363, 3487, 3, 2, 2, 2, 365, 3497, 3, 2, 2, 2, 367, 3501, 3, 2, 2, 2, 369, 3506, 3, 2, 2, 2, 371, 3511, 3, 2, 2, 2, 373, 3516, 3, 2, 2, 2, 375, 3521, 3, 2, 2, 2, 377, 3526, 3, 2, 2, 2, 379, 3534, 3, 2, 2, 2, 381, 3541, 3, 2, 2, 2, 383, 3546, 3, 2, 2, 2, 385, 3553, 3, 2, 2, 2, 387, 3563, 3, 2, 2, 2, 389, 3569, 3, 2, 2, 2, 391, 3576, 3, 2, 2, 2, 393, 3583, 3, 2, 2, 2, 395, 3591, 3, 2, 2, 2, 397, 3595, 3, 2, 2, 2, 399, 3603, 3, 2, 2, 2, 401, 3608, 3, 2, 2, 2, 403, 3613, 3, 2, 2, 2, 405, 3623, 3, 2, 2, 2, 407, 3632, 3, 2, 2, 2, 409, 3637, 3, 2, 2, 2, 411, 3642, 3, 2, 2, 2, 413, 3650, 3, 2, 2, 2, 415, 3659, 3, 2, 2, 2, 417, 3668, 3, 2, 2, 2, 419, 3675, 3, 2, 2, 2, 421, 3685, 3, 2, 2, 2, 423, 3694, 3, 2, 2, 2, 425, 3699, 3, 2, 2, 2, 427, 3710, 3, 2, 2, 2, 429, 3715, 3, 2, 2, 2, 431, 3724, 3, 2, 2, 2, 433, 3733, 3, 2, 2, 2, 435, 3738, 3, 2, 2, 2, 437, 3749, 3, 2, 2, 2, 439, 3758, 3, 2, 2, 2, 441, 3763, 3, 2, 2, 2, 443, 3771, 3, 2, 2, 2, 445, 3778, 3, 2, 2, 2, 447, 3789, 3, 2, 2, 2, 449, 3798, 3, 2, 2, 2, 451, 3809, 3, 2, 2, 2, 453, 3820, 3, 2, 2, 2, 455, 3832, 3, 2, 2, 2, 457, 3844, 3, 2, 2, 2, 459, 3858, 3, 2, 2, 2, 461, 3877, 3, 2, 2, 2, 463, 3896, 3, 2, 2, 2, 465, 3913, 3, 2, 2, 2, 467, 3929, 3, 2, 2, 2, 469, 3940, 3, 2, 2, 2, 471, 3958, 3, 2, 2, 2, 473, 3962, 3, 2, 2, 2, 475, 3970, 3, 2, 2, 2, 477, 3977, 3, 2, 2, 2, 479, 3985, 3, 2, 2, 2, 481, 3991, 3, 2, 2, 2, 483, 4004, 3, 2, 2, 2, 485, 4008, 3, 2, 2, 2, 487, 4012, 3, 2, 2, 2, 489, 4016, 3, 2, 2, 2, 491, 4023, 3, 2, 2, 2, 493, 4034, 3, 2, 2, 2, 495, 4046, 3, 2, 2, 2, 497, 4050, 3, 2, 2, 2, 499, 4058, 3, 2, 2, 2, 501, 4067, 3, 2, 2, 2, 503, 4076, 3, 2, 2, 2, 505, 4089, 3, 2, 2, 2, 507, 4102, 3, 2, 2, 2, 509, 4120, 3, 2, 2, 2, 511, 4130, 3, 2, 2, 2, 513, 4138, 3, 2, 2, 2, 515, 4146, 3, 2, 2, 2, 517, 4155, 3, 2, 2, 2, 519, 4164, 3, 2, 2, 2, 521, 4172, 3, 2, 2, 2, 523, 4187, 3, 2, 2, 2, 525, 4191, 3, 2, 2, 2, 527, 4200, 3, 2, 2, 2, 529, 4207, 3, 2, 2, 2, 531, 4217, 3, 2, 2, 2, 533, 4225, 3, 2, 2, 2, 535, 4230, 3, 2, 2, 2, 537, 4239, 3, 2, 2, 2, 539, 4248, 3, 2, 2, 2, 541, 4262, 3, 2, 2, 2, 543, 4270, 3, 2, 2, 2, 545, 4277, 3, 2, 2, 2, 547, 4283, 3, 2, 2, 2, 549, 4293, 3, 2, 2, 2, 551, 4303, 3, 2, 2, 2, 553, 4307, 3, 2, 2, 2, 555, 4310, 3, 2, 2, 2, 557, 4318, 3, 2, 2, 2, 559, 4329, 3, 2, 2, 2, 561, 4345, 3, 2, 2, 2, 563, 4360, 3, 2, 2, 2, 565, 4375, 3, 2, 2, 2, 567, 4381, 3, 2, 2, 2, 569, 4388, 3, 2, 2, 2, 571, 4392, 3, 2, 2, 2, 573, 4398, 3, 2, 2, 2, 575, 4403, 3, 2, 2, 2, 577, 4411, 3, 2, 2, 2, 579, 4417, 3, 2, 2, 2, 581, 4423, 3, 2, 2, 2, 583, 4432, 3, 2, 2, 2, 585, 4438, 3, 2, 2, 2, 587, 4446, 3, 2, 2, 2, 589, 4454, 3, 2, 2, 2, 591, 4463, 3, 2, 2, 2, 593, 4477, 3, 2, 2, 2, 595, 4484, 3, 2, 2, 2, 597, 4497, 3, 2, 2, 2, 599, 4504, 3, 2, 2, 2, 601, 4510, 3, 2, 2, 2, 603, 4519, 3, 2, 2, 2, 605, 4524, 3, 2, 2, 2, 607, 4532, 3, 2, 2, 2, 609, 4546, 3, 2, 2, 2, 611, 4558, 3, 2, 2, 2, 613, 4566, 3, 2, 2, 2, 615, 4573, 3, 2, 2, 2, 617, 4581, 3, 2, 2, 2, 619, 4592, 3, 2, 2, 2, 621, 4603, 3, 2, 2, 2, 623, 4615, 3, 2, 2, 2, 625, 4626, 3, 2, 2, 2, 627, 4637, 3, 2, 2, 2, 629, 4648, 3, 2, 2, 2, 631, 4667, 3, 2, 2, 2, 633, 4685, 3, 2, 2, 2, 635, 4701, 3, 2, 2, 2, 637, 4710, 3, 2, 2, 2, 639, 4718, 3, 2, 2, 2, 641, 4731, 3, 2, 2, 2, 643, 4736, 3, 2, 2, 2, 645, 4740, 3, 2, 2, 2, 647, 4752, 3, 2, 2, 2, 649, 4757, 3, 2, 2, 2, 651, 4766, 3, 2, 2, 2, 653, 4777, 3, 2, 2, 2, 655, 4790, 3, 2, 2, 2, 657, 4798, 3, 2, 2, 2, 659, 4814, 3, 2, 2, 2, 661, 4827, 3, 2, 2, 2, 663, 4837, 3, 2, 2, 2, 665, 4845, 3, 2, 2, 2, 667, 4853, 3, 2, 2, 2, 669, 4858, 3, 2, 2, 2, 671, 4861, 3, 2, 2, 2, 673, 4870, 3, 2, 2, 2, 675, 4880, 3, 2, 2, 2, 677, 4888, 3, 2, 2, 2, 679, 4895, 3, 2, 2, 2, 681, 4906, 3, 2, 2, 2, 683, 4910, 3, 2, 2, 2, 685, 4915, 3, 2, 2, 2, 687, 4922, 3, 2, 2, 2, 689, 4930, 3, 2, 2, 2, 691, 4936, 3, 2, 2, 2, 693, 4943, 3, 2, 2, 2, 695, 4950, 3, 2, 2, 2, 697, 4955, 3, 2, 2, 2, 699, 4961, 3, 2, 2, 2, 701, 4968, 3, 2, 2, 2, 703, 4974, 3, 2, 2, 2, 705, 4983, 3, 2, 2, 2, 707, 4993, 3, 2, 2, 2, 709, 5000, 3, 2, 2, 2, 711, 5007, 3, 2, 2, 2, 713, 5016, 3, 2, 2, 2, 715, 5028, 3, 2, 2, 2, 717, 5033, 3, 2, 2, 2, 719, 5040, 3, 2, 2, 2, 721, 5047, 3, 2, 2, 2, 723, 5063, 3, 2, 2, 2, 725, 5070, 3, 2, 2, 2, 727, 5076, 3, 2, 2, 2, 729, 5082, 3, 2, 2, 2, 731, 5088, 3, 2, 2, 2, 733, 5096, 3, 2, 2, 2, 735, 5102, 3, 2, 2, 2, 737, 5107, 3, 2, 2, 2, 739, 5116, 3, 2, 2, 2, 741, 5124, 3, 2, 2, 2, 743, 5131, 3, 2, 2, 2, 745, 5138, 3, 2, 2, 2, 747, 5156, 3, 2, 2, 2, 749, 5164, 3, 2, 2, 2, 751, 5169, 3, 2, 2, 2, 753, 5174, 3, 2, 2, 2, 755, 5179, 3, 2, 2, 2, 757, 5185, 3, 2, 2, 2, 759, 5196, 3, 2, 2, 2, 761, 5214, 3, 2, 2, 2, 763, 5221, 3, 2, 2, 2, 765, 5229, 3, 2, 2, 2, 767, 5242, 3, 2, 2, 2, 769, 5250, 3, 2, 2, 2, 771, 5264, 3, 2, 2, 2, 773, 5272, 3, 2, 2, 2, 775, 5281, 3, 2, 2, 2, 777, 5291, 3, 2, 2, 2, 779, 5299, 3, 2, 2, 2, 781, 5302, 3, 2, 2, 2, 783, 5312, 3, 2, 2, 2, 785, 5316, 3, 2, 2, 2, 787, 5326, 3, 2, 2, 2, 789, 5333, 3, 2, 2, 2, 791, 5338, 3, 2, 2, 2, 793, 5353, 3, 2, 2, 2, 795, 5362, 3, 2, 2, 2, 797, 5367, 3, 2, 2, 2, 799, 5374, 3, 2, 2, 2, 801, 5379, 3, 2, 2, 2, 803, 5385, 3, 2, 2, 2, 805, 5390, 3, 2, 2, 2, 807, 5396, 3, 2, 2, 2, 809, 5404, 3, 2, 2, 2, 811, 5409, 3, 2, 2, 2, 813, 5416, 3, 2, 2, 2, 815, 5437, 3, 2, 2, 2, 817, 5458, 3, 2, 2, 2, 819, 5471, 3, 2, 2, 2, 821, 5495, 3, 2, 2, 2, 823, 5507, 3, 2, 2, 2, 825, 5523, 3, 2, 2, 2, 827, 5538, 3, 2, 2, 2, 829, 5554, 3, 2, 2, 2, 831, 5566, 3, 2, 2, 2, 833, 5585, 3, 2, 2, 2, 835, 5596, 3, 2, 2, 2, 837, 5610, 3, 2, 2, 2, 839, 5628, 3, 2, 2, 2, 841, 5644, 3, 2, 2, 2, 843, 5662, 3, 2, 2, 2, 845, 5677, 3, 2, 2, 2, 847, 5696, 3, 2, 2, 2, 849, 5711, 3, 2, 2, 2, 851, 5730, 3, 2, 2, 2, 853, 5742, 3, 2, 2, 2, 855, 5767, 3, 2, 2, 2, 857, 5788, 3, 2, 2, 2, 859, 5797, 3, 2, 2, 2, 861, 5806, 3, 2, 2, 2, 863, 5827, 3, 2, 2, 2, 865, 5848, 3, 2, 2, 2, 867, 5855, 3, 2, 2, 2, 869, 5861, 3, 2, 2, 2, 871, 5874, 3, 2, 2, 2, 873, 5878, 3, 2, 2, 2, 875, 5886, 3, 2, 2, 2, 877, 5895, 3, 2, 2, 2, 879, 5900, 3, 2, 2, 2, 881, 5907, 3, 2, 2, 2, 883, 5913, 3, 2, 2, 2, 885, 5919, 3, 2, 2, 2, 887, 5931, 3, 2, 2, 2, 889, 5936, 3, 2, 2, 2, 891, 5942, 3, 2, 2, 2, 893, 5948, 3, 2, 2, 2, 895, 5954, 3, 2, 2, 2, 897, 5959, 3, 2, 2, 2, 899, 5962, 3, 2, 2, 2, 901, 5972, 3, 2, 2, 2, 903, 5977, 3, 2, 2, 2, 905, 5985, 3, 2, 2, 2, 907, 5992, 3, 2, 2, 2, 909, 5995, 3, 2, 2, 2, 911, 6008, 3, 2, 2, 2, 913, 6012, 3, 2, 2, 2, 915, 6019, 3, 2, 2, 2, 917, 6024, 3, 2, 2, 2, 919, 6029, 3, 2, 2, 2, 921, 6045, 3, 2, 2, 2, 923, 6053, 3, 2, 2, 2, 925, 6059, 3, 2, 2, 2, 927, 6069, 3, 2, 2, 2, 929, 6074, 3, 2, 2, 2, 931, 6081, 3, 2, 2, 2, 933, 6089, 3, 2, 2, 2, 935, 6102, 3, 2, 2, 2, 937, 6113, 3, 2, 2, 2, 939, 6122, 3, 2, 2, 2, 941, 6128, 3, 2, 2, 2, 943, 6135, 3, 2, 2, 2, 945, 6146, 3, 2, 2, 2, 947, 6154, 3, 2, 2, 2, 949, 6159, 3, 2, 2, 2, 951, 6168, 3, 2, 2, 2, 953, 6176, 3, 2, 2, 2, 955, 6185, 3, 2, 2, 2, 957, 6190, 3, 2, 2, 2, 959, 6202, 3, 2, 2, 2, 961, 6210, 3, 2, 2, 2, 963, 6219, 3, 2, 2, 2, 965, 6225, 3, 2, 2, 2, 967, 6231, 3, 2, 2, 2, 969, 6237, 3, 2, 2, 2, 971, 6245, 3, 2, 2, 2, 973, 6253, 3, 2, 2, 2, 975, 6270, 3, 2, 2, 2, 977, 6280, 3, 2, 2, 2, 979, 6286, 3, 2, 2, 2, 981, 6301, 3, 2, 2, 2, 983, 6315, 3, 2, 2, 2, 985, 6324, 3, 2, 2, 2, 987, 6331, 3, 2, 2, 2, 989, 6342, 3, 2, 2, 2, 991, 6349, 3, 2, 2, 2, 993, 6365, 3, 2, 2, 2, 995, 6384, 3, 2, 2, 2, 997, 6404, 3, 2, 2, 2, 999, 6427, 3, 2, 2, 2, 1001, 6448, 3, 2, 2, 2, 1003, 6472, 3, 2, 2, 2, 1005, 6500, 3, 2, 2, 2, 1007, 6512, 3, 2, 2, 2, 1009, 6518, 3, 2, 2, 2, 1011, 6525, 3, 2, 2, 2, 1013, 6543, 3, 2, 2, 2, 1015, 6551, 3, 2, 2, 2, 1017, 6556, 3, 2, 2, 2, 1019, 6565, 3, 2, 2, 2, 1021, 6572, 3, 2, 2, 2, 1023, 6579, 3, 2, 2, 2, 1025, 6583, 3, 2, 2, 2, 1027, 6588, 3, 2, 2, 2, 1029, 6599, 3, 2, 2, 2, 1031, 6609, 3, 2, 2, 2, 1033, 6618, 3, 2, 2, 2, 1035, 6627, 3, 2, 2, 2, 1037, 6634, 3, 2, 2, 2, 1039, 6642, 3, 2, 2, 2, 1041, 6648, 3, 2, 2, 2, 1043, 6655, 3, 2, 2, 2, 1045, 6662, 3, 2, 2, 2, 1047, 6669, 3, 2, 2, 2, 1049, 6675, 3, 2, 2, 2, 1051, 6680, 3, 2, 2, 2, 1053, 6689, 3, 2, 2, 2, 1055, 6696, 3, 2, 2, 2, 1057, 6701, 3, 2, 2, 2, 1059, 6708, 3, 2, 2, 2, 1061, 6715, 3, 2, 2, 2, 1063, 6722, 3, 2, 2, 2, 1065, 6738, 3, 2, 2, 2, 1067, 6757, 3, 2, 2, 2, 1069, 6774, 3, 2, 2, 2, 1071, 6792, 3, 2, 2, 2, 1073, 6802, 3, 2, 2, 2, 1075, 6815, 3, 2, 2, 2, 1077, 6826, 3, 2, 2, 2, 1079, 6832, 3, 2, 2, 2, 1081, 6839, 3, 2, 2, 2, 1083, 6857, 3, 2, 2, 2, 1085, 6874, 3, 2, 2, 2, 1087, 6893, 3, 2, 2, 2, 1089, 6900, 3, 2, 2, 2, 1091, 6905, 3, 2, 2, 2, 1093, 6913, 3, 2, 2, 2, 1095, 6920, 3, 2, 2, 2, 1097, 6927, 3, 2, 2, 2, 1099, 6943, 3, 2, 2, 2, 1101, 6951, 3, 2, 2, 2, 1103, 6964, 3, 2, 2, 2, 1105, 6978, 3, 2, 2, 2, 1107, 6986, 3, 2, 2, 2, 1109, 6992, 3, 2, 2, 2, 1111, 7001, 3, 2, 2, 2, 1113, 7012, 3, 2, 2, 2, 1115, 7023, 3, 2, 2, 2, 1117, 7033, 3, 2, 2, 2, 1119, 7043, 3, 2, 2, 2, 1121, 7048, 3, 2, 2, 2, 1123, 7060, 3, 2, 2, 2, 1125, 7072, 3, 2, 2, 2, 1127, 7086, 3, 2, 2, 2, 1129, 7095, 3, 2, 2, 2, 1131, 7104, 3, 2, 2, 2, 1133, 7114, 3, 2, 2, 2, 1135, 7123, 3, 2, 2, 2, 1137, 7140, 3, 2, 2, 2, 1139, 7150, 3, 2, 2, 2, 1141, 7158, 3, 2, 2, 2, 1143, 7164, 3, 2, 2, 2, 1145, 7172, 3, 2, 2, 2, 1147, 7177, 3, 2, 2, 2, 1149, 7185, 3, 2, 2, 2, 1151, 7200, 3, 2, 2, 2, 1153, 7211, 3, 2, 2, 2, 1155, 7217, 3, 2, 2, 2, 1157, 7227, 3, 2, 2, 2, 1159, 7232, 3, 2, 2, 2, 1161, 7240, 3, 2, 2, 2, 1163, 7248, 3, 2, 2, 2, 1165, 7253, 3, 2, 2, 2, 1167, 7262, 3, 2, 2, 2, 1169, 7270, 3, 2, 2, 2, 1171, 7275, 3, 2, 2, 2, 1173, 7283, 3, 2, 2, 2, 1175, 7288, 3, 2, 2, 2, 1177, 7291, 3, 2, 2, 2, 1179, 7295, 3, 2, 2, 2, 1181, 7299, 3, 2, 2, 2, 1183, 7303, 3, 2, 2, 2, 1185, 7307, 3, 2, 2, 2, 1187, 7311, 3, 2, 2, 2, 1189, 7320, 3, 2, 2, 2, 1191, 7328, 3, 2, 2, 2, 1193, 7334, 3, 2, 2, 2, 1195, 7338, 3, 2, 2, 2, 1197, 7343, 3, 2, 2, 2, 1199, 7350, 3, 2, 2, 2, 1201, 7355, 3, 2, 2, 2, 1203, 7362, 3, 2, 2, 2, 1205, 7374, 3, 2, 2, 2, 1207, 7381, 3, 2, 2, 2, 1209, 7389, 3, 2, 2, 2, 1211, 7397, 3, 2, 2, 2, 1213, 7402, 3, 2, 2, 2, 1215, 7410, 3, 2, 2, 2, 1217, 7417, 3, 2, 2, 2, 1219, 7426, 3, 2, 2, 2, 1221, 7432, 3, 2, 2, 2, 1223, 7443, 3, 2, 2, 2, 1225, 7470, 3, 2, 2, 2, 1227, 7482, 3, 2, 2, 2, 1229, 7495, 3, 2, 2, 2, 1231, 7508, 3, 2, 2, 2, 1233, 7532, 3, 2, 2, 2, 1235, 7544, 3, 2, 2, 2, 1237, 7561, 3, 2, 2, 2, 1239, 7582, 3, 2, 2, 2, 1241, 7597, 3, 2, 2, 2, 1243, 7611, 3, 2, 2, 2, 1245, 7635, 3, 2, 2, 2, 1247, 7659, 3, 2, 2, 2, 1249, 7675, 3, 2, 2, 2, 1251, 7702, 3, 2, 2, 2, 1253, 7722, 3, 2, 2, 2, 1255, 7746, 3, 2, 2, 2, 1257, 7767, 3, 2, 2, 2, 1259, 7787, 3, 2, 2, 2, 1261, 7799, 3, 2, 2, 2, 1263, 7828, 3, 2, 2, 2, 1265, 7840, 3, 2, 2, 2, 1267, 7853, 3, 2, 2, 2, 1269, 7876, 3, 2, 2, 2, 1271, 7899, 3, 2, 2, 2, 1273, 7919, 3, 2, 2, 2, 1275, 7936, 3, 2, 2, 2, 1277, 7945, 3, 2, 2, 2, 1279, 7951, 3, 2, 2, 2, 1281, 7956, 3, 2, 2, 2, 1283, 7963, 3, 2, 2, 2, 1285, 7970, 3, 2, 2, 2, 1287, 7977, 3, 2, 2, 2, 1289, 7984, 3, 2, 2, 2, 1291, 7990, 3, 2, 2, 2, 1293, 7996, 3, 2, 2, 2, 1295, 8002, 3, 2, 2, 2, 1297, 8008, 3, 2, 2, 2, 1299, 8013, 3, 2, 2, 2, 1301, 8021, 3, 2, 2, 2, 1303, 8027, 3, 2, 2, 2, 1305, 8034, 3, 2, 2, 2, 1307, 8038, 3, 2, 2, 2, 1309, 8046, 3, 2, 2, 2, 1311, 8052, 3, 2, 2, 2, 1313, 8059, 3, 2, 2, 2, 1315, 8063, 3, 2, 2, 2, 1317, 8071, 3, 2, 2, 2, 1319, 8077, 3, 2, 2, 2, 1321, 8083, 3, 2, 2, 2, 1323, 8090, 3, 2, 2, 2, 1325, 8097, 3, 2, 2, 2, 1327, 8104, 3, 2, 2, 2, 1329, 8111, 3, 2, 2, 2, 1331, 8117, 3, 2, 2, 2, 1333, 8126, 3, 2, 2, 2, 1335, 8131, 3, 2, 2, 2, 1337, 8136, 3, 2, 2, 2, 1339, 8143, 3, 2, 2, 2, 1341, 8148, 3, 2, 2, 2, 1343, 8153, 3, 2, 2, 2, 1345, 8159, 3, 2, 2, 2, 1347, 8167, 3, 2, 2, 2, 1349, 8173, 3, 2, 2, 2, 1351, 8178, 3, 2, 2, 2, 1353, 8186, 3, 2, 2, 2, 1355, 8194, 3, 2, 2, 2, 1357, 8202, 3, 2, 2, 2, 1359, 8212, 3, 2, 2, 2, 1361, 8216, 3, 2, 2, 2, 1363, 8226, 3, 2, 2, 2, 1365, 8233, 3, 2, 2, 2, 1367, 8240, 3, 2, 2, 2, 1369, 8251, 3, 2, 2, 2, 1371, 8258, 3, 2, 2, 2, 1373, 8262, 3, 2, 2, 2, 1375, 8273, 3, 2, 2, 2, 1377, 8292, 3, 2, 2, 2, 1379, 8299, 3, 2, 2, 2, 1381, 8310, 3, 2, 2, 2, 1383, 8320, 3, 2, 2, 2, 1385, 8332, 3, 2, 2, 2, 1387, 8345, 3, 2, 2, 2, 1389, 8364, 3, 2, 2, 2, 1391, 8379, 3, 2, 2, 2, 1393, 8388, 3, 2, 2, 2, 1395, 8399, 3, 2, 2, 2, 1397, 8415, 3, 2, 2, 2, 1399, 8426, 3, 2, 2, 2, 1401, 8439, 3, 2, 2, 2, 1403, 8445, 3, 2, 2, 2, 1405, 8453, 3, 2, 2, 2, 1407, 8457, 3, 2, 2, 2, 1409, 8462, 3, 2, 2, 2, 1411, 8470, 3, 2, 2, 2, 1413, 8478, 3, 2, 2, 2, 1415, 8490, 3, 2, 2, 2, 1417, 8502, 3, 2, 2, 2, 1419, 8507, 3, 2, 2, 2, 1421, 8516, 3, 2, 2, 2, 1423, 8521, 3, 2, 2, 2, 1425, 8528, 3, 2, 2, 2, 1427, 8534, 3, 2, 2, 2, 1429, 8540, 3, 2, 2, 2, 1431, 8559, 3, 2, 2, 2, 1433, 8577, 3, 2, 2, 2, 1435, 8596, 3, 2, 2, 2, 1437, 8612, 3, 2, 2, 2, 1439, 8630, 3, 2, 2, 2, 1441, 8635, 3, 2, 2, 2, 1443, 8641, 3, 2, 2, 2, 1445, 8651, 3, 2, 2, 2, 1447, 8655, 3, 2, 2, 2, 1449, 8665, 3, 2, 2, 2, 1451, 8676, 3, 2, 2, 2, 1453, 8683, 3, 2, 2, 2, 1455, 8696, 3, 2, 2, 2, 1457, 8701, 3, 2, 2, 2, 1459, 8709, 3, 2, 2, 2, 1461, 8718, 3, 2, 2, 2, 1463, 8735, 3, 2, 2, 2, 1465, 8743, 3, 2, 2, 2, 1467, 8755, 3, 2, 2, 2, 1469, 8768, 3, 2, 2, 2, 1471, 8778, 3, 2, 2, 2, 1473, 8787, 3, 2, 2, 2, 1475, 8794, 3, 2, 2, 2, 1477, 8804, 3, 2, 2, 2, 1479, 8818, 3, 2, 2, 2, 1481, 8823, 3, 2, 2, 2, 1483, 8834, 3, 2, 2, 2, 1485, 8838, 3, 2, 2, 2, 1487, 8842, 3, 2, 2, 2, 1489, 8848, 3, 2, 2, 2, 1491, 8875, 3, 2, 2, 2, 1493, 8901, 3, 2, 2, 2, 1495, 8922, 3, 2, 2, 2, 1497, 8936, 3, 2, 2, 2, 1499, 8944, 3, 2, 2, 2, 1501, 8953, 3, 2, 2, 2, 1503, 8965, 3, 2, 2, 2, 1505, 8973, 3, 2, 2, 2, 1507, 8984, 3, 2, 2, 2, 1509, 8994, 3, 2, 2, 2, 1511, 9004, 3, 2, 2, 2, 1513, 9011, 3, 2, 2, 2, 1515, 9019, 3, 2, 2, 2, 1517, 9031, 3, 2, 2, 2, 1519, 9043, 3, 2, 2, 2, 1521, 9053, 3, 2, 2, 2, 1523, 9062, 3, 2, 2, 2, 1525, 9066, 3, 2, 2, 2, 1527, 9073, 3, 2, 2, 2, 1529, 9081, 3, 2, 2, 2, 1531, 9090, 3, 2, 2, 2, 1533, 9099, 3, 2, 2, 2, 1535, 9106, 3, 2, 2, 2, 1537, 9110, 3, 2, 2, 2, 1539, 9121, 3, 2, 2, 2, 1541, 9134, 3, 2, 2, 2, 1543, 9147, 3, 2, 2, 2, 1545, 9153, 3, 2, 2, 2, 1547, 9165, 3, 2, 2, 2, 1549, 9171, 3, 2, 2, 2, 1551, 9178, 3, 2, 2, 2, 1553, 9189, 3, 2, 2, 2, 1555, 9201, 3, 2, 2, 2, 1557, 9211, 3, 2, 2, 2, 1559, 9225, 3, 2, 2, 2, 1561, 9242, 3, 2, 2, 2, 1563, 9258, 3, 2, 2, 2, 1565, 9285, 3, 2, 2, 2, 1567, 9311, 3, 2, 2, 2, 1569, 9328, 3, 2, 2, 2, 1571, 9344, 3, 2, 2, 2, 1573, 9354, 3, 2, 2, 2, 1575, 9367, 3, 2, 2, 2, 1577, 9380, 3, 2, 2, 2, 1579, 9392, 3, 2, 2, 2, 1581, 9403, 3, 2, 2, 2, 1583, 9412, 3, 2, 2, 2, 1585, 9420, 3, 2, 2, 2, 1587, 9429, 3, 2, 2, 2, 1589, 9441, 3, 2, 2, 2, 1591, 9455, 3, 2, 2, 2, 1593, 9459, 3, 2, 2, 2, 1595, 9466, 3, 2, 2, 2, 1597, 9477, 3, 2, 2, 2, 1599, 9488, 3, 2, 2, 2, 1601, 9498, 3, 2, 2, 2, 1603, 9508, 3, 2, 2, 2, 1605, 9514, 3, 2, 2, 2, 1607, 9528, 3, 2, 2, 2, 1609, 9539, 3, 2, 2, 2, 1611, 9548, 3, 2, 2, 2, 1613, 9556, 3, 2, 2, 2, 1615, 9563, 3, 2, 2, 2, 1617, 9572, 3, 2, 2, 2, 1619, 9585, 3, 2, 2, 2, 1621, 9593, 3, 2, 2, 2, 1623, 9608, 3, 2, 2, 2, 1625, 9623, 3, 2, 2, 2, 1627, 9631, 3, 2, 2, 2, 1629, 9644, 3, 2, 2, 2, 1631, 9659, 3, 2, 2, 2, 1633, 9665, 3, 2, 2, 2, 1635, 9671, 3, 2, 2, 2, 1637, 9678, 3, 2, 2, 2, 1639, 9691, 3, 2, 2, 2, 1641, 9703, 3, 2, 2, 2, 1643, 9722, 3, 2, 2, 2, 1645, 9740, 3, 2, 2, 2, 1647, 9743, 3, 2, 2, 2, 1649, 9753, 3, 2, 2, 2, 1651, 9760, 3, 2, 2, 2, 1653, 9764, 3, 2, 2, 2, 1655, 9770, 3, 2, 2, 2, 1657, 9775, 3, 2, 2, 2, 1659, 9781, 3, 2, 2, 2, 1661, 9786, 3, 2, 2, 2, 1663, 9792, 3, 2, 2, 2, 1665, 9801, 3, 2, 2, 2, 1667, 9810, 3, 2, 2, 2, 1669, 9819, 3, 2, 2, 2, 1671, 9835, 3, 2, 2, 2, 1673, 9847, 3, 2, 2, 2, 1675, 9859, 3, 2, 2, 2, 1677, 9868, 3, 2, 2, 2, 1679, 9882, 3, 2, 2, 2, 1681, 9894, 3, 2, 2, 2, 1683, 9905, 3, 2, 2, 2, 1685, 9915, 3, 2, 2, 2, 1687, 9919, 3, 2, 2, 2, 1689, 9933, 3, 2, 2, 2, 1691, 9946, 3, 2, 2, 2, 1693, 9956, 3, 2, 2, 2, 1695, 9971, 3, 2, 2, 2, 1697, 9985, 3, 2, 2, 2, 1699, 9999, 3, 2, 2, 2, 1701, 10012, 3, 2, 2, 2, 1703, 10036, 3, 2, 2, 2, 1705, 10059, 3, 2, 2, 2, 1707, 10078, 3, 2, 2, 2, 1709, 10096, 3, 2, 2, 2, 1711, 10117, 3, 2, 2, 2, 1713, 10137, 3, 2, 2, 2, 1715, 10148, 3, 2, 2, 2, 1717, 10155, 3, 2, 2, 2, 1719, 10169, 3, 2, 2, 2, 1721, 10186, 3, 2, 2, 2, 1723, 10196, 3, 2, 2, 2, 1725, 10200, 3, 2, 2, 2, 1727, 10213, 3, 2, 2, 2, 1729, 10217, 3, 2, 2, 2, 1731, 10226, 3, 2, 2, 2, 1733, 10237, 3, 2, 2, 2, 1735, 10249, 3, 2, 2, 2, 1737, 10252, 3, 2, 2, 2, 1739, 10266, 3, 2, 2, 2, 1741, 10279, 3, 2, 2, 2, 1743, 10286, 3, 2, 2, 2, 1745, 10299, 3, 2, 2, 2, 1747, 10311, 3, 2, 2, 2, 1749, 10327, 3, 2, 2, 2, 1751, 10342, 3, 2, 2, 2, 1753, 10346, 3, 2, 2, 2, 1755, 10352, 3, 2, 2, 2, 1757, 10358, 3, 2, 2, 2, 1759, 10366, 3, 2, 2, 2, 1761, 10371, 3, 2, 2, 2, 1763, 10384, 3, 2, 2, 2, 1765, 10397, 3, 2, 2, 2, 1767, 10405, 3, 2, 2, 2, 1769, 10411, 3, 2, 2, 2, 1771, 10421, 3, 2, 2, 2, 1773, 10426, 3, 2, 2, 2, 1775, 10432, 3, 2, 2, 2, 1777, 10444, 3, 2, 2, 2, 1779, 10457, 3, 2, 2, 2, 1781, 10461, 3, 2, 2, 2, 1783, 10466, 3, 2, 2, 2, 1785, 10471, 3, 2, 2, 2, 1787, 10483, 3, 2, 2, 2, 1789, 10488, 3, 2, 2, 2, 1791, 10492, 3, 2, 2, 2, 1793, 10498, 3, 2, 2, 2, 1795, 10506, 3, 2, 2, 2, 1797, 10534, 3, 2, 2, 2, 1799, 10539, 3, 2, 2, 2, 1801, 10544, 3, 2, 2, 2, 1803, 10555, 3, 2, 2, 2, 1805, 10562, 3, 2, 2, 2, 1807, 10574, 3, 2, 2, 2, 1809, 10582, 3, 2, 2, 2, 1811, 10594, 3, 2, 2, 2, 1813, 10604, 3, 2, 2, 2, 1815, 10613, 3, 2, 2, 2, 1817, 10622, 3, 2, 2, 2, 1819, 10632, 3, 2, 2, 2, 1821, 10644, 3, 2, 2, 2, 1823, 10656, 3, 2, 2, 2, 1825, 10667, 3, 2, 2, 2, 1827, 10681, 3, 2, 2, 2, 1829, 10694, 3, 2, 2, 2, 1831, 10706, 3, 2, 2, 2, 1833, 10718, 3, 2, 2, 2, 1835, 10730, 3, 2, 2, 2, 1837, 10742, 3, 2, 2, 2, 1839, 10752, 3, 2, 2, 2, 1841, 10768, 3, 2, 2, 2, 1843, 10788, 3, 2, 2, 2, 1845, 10807, 3, 2, 2, 2, 1847, 10826, 3, 2, 2, 2, 1849, 10856, 3, 2, 2, 2, 1851, 10885, 3, 2, 2, 2, 1853, 10905, 3, 2, 2, 2, 1855, 10924, 3, 2, 2, 2, 1857, 10937, 3, 2, 2, 2, 1859, 10953, 3, 2, 2, 2, 1861, 10969, 3, 2, 2, 2, 1863, 10984, 3, 2, 2, 2, 1865, 11001, 3, 2, 2, 2, 1867, 11017, 3, 2, 2, 2, 1869, 11031, 3, 2, 2, 2, 1871, 11043, 3, 2, 2, 2, 1873, 11054, 3, 2, 2, 2, 1875, 11066, 3, 2, 2, 2, 1877, 11082, 3, 2, 2, 2, 1879, 11097, 3, 2, 2, 2, 1881, 11119, 3, 2, 2, 2, 1883, 11140, 3, 2, 2, 2, 1885, 11157, 3, 2, 2, 2, 1887, 11176, 3, 2, 2, 2, 1889, 11196, 3, 2, 2, 2, 1891, 11209, 3, 2, 2, 2, 1893, 11221, 3, 2, 2, 2, 1895, 11238, 3, 2, 2, 2, 1897, 11254, 3, 2, 2, 2, 1899, 11264, 3, 2, 2, 2, 1901, 11280, 3, 2, 2, 2, 1903, 11295, 3, 2, 2, 2, 1905, 11314, 3, 2, 2, 2, 1907, 11332, 3, 2, 2, 2, 1909, 11340, 3, 2, 2, 2, 1911, 11354, 3, 2, 2, 2, 1913, 11371, 3, 2, 2, 2, 1915, 11382, 3, 2, 2, 2, 1917, 11391, 3, 2, 2, 2, 1919, 11401, 3, 2, 2, 2, 1921, 11406, 3, 2, 2, 2, 1923, 11411, 3, 2, 2, 2, 1925, 11419, 3, 2, 2, 2, 1927, 11435, 3, 2, 2, 2, 1929, 11443, 3, 2, 2, 2, 1931, 11455, 3, 2, 2, 2, 1933, 11459, 3, 2, 2, 2, 1935, 11468, 3, 2, 2, 2, 1937, 11481, 3, 2, 2, 2, 1939, 11495, 3, 2, 2, 2, 1941, 11507, 3, 2, 2, 2, 1943, 11519, 3, 2, 2, 2, 1945, 11527, 3, 2, 2, 2, 1947, 11537, 3, 2, 2, 2, 1949, 11545, 3, 2, 2, 2, 1951, 11556, 3, 2, 2, 2, 1953, 11562, 3, 2, 2, 2, 1955, 11573, 3, 2, 2, 2, 1957, 11593, 3, 2, 2, 2, 1959, 11599, 3, 2, 2, 2, 1961, 11614, 3, 2, 2, 2, 1963, 11624, 3, 2, 2, 2, 1965, 11630, 3, 2, 2, 2, 1967, 11635, 3, 2, 2, 2, 1969, 11646, 3, 2, 2, 2, 1971, 11673, 3, 2, 2, 2, 1973, 11681, 3, 2, 2, 2, 1975, 11715, 3, 2, 2, 2, 1977, 11723, 3, 2, 2, 2, 1979, 11734, 3, 2, 2, 2, 1981, 11748, 3, 2, 2, 2, 1983, 11755, 3, 2, 2, 2, 1985, 11764, 3, 2, 2, 2, 1987, 11766, 3, 2, 2, 2, 1989, 11768, 3, 2, 2, 2, 1991, 11771, 3, 2, 2, 2, 1993, 11774, 3, 2, 2, 2, 1995, 11777, 3, 2, 2, 2, 1997, 11780, 3, 2, 2, 2, 1999, 11783, 3, 2, 2, 2, 2001, 11786, 3, 2, 2, 2, 2003, 11789, 3, 2, 2, 2, 2005, 11792, 3, 2, 2, 2, 2007, 11795, 3, 2, 2, 2, 2009, 11797, 3, 2, 2, 2, 2011, 11799, 3, 2, 2, 2, 2013, 11801, 3, 2, 2, 2, 2015, 11803, 3, 2, 2, 2, 2017, 11806, 3, 2, 2, 2, 2019, 11808, 3, 2, 2, 2, 2021, 11812, 3, 2, 2, 2, 2023, 11816, 3, 2, 2, 2, 2025, 11818, 3, 2, 2, 2, 2027, 11820, 3, 2, 2, 2, 2029, 11822, 3, 2, 2, 2, 2031, 11824, 3, 2, 2, 2, 2033, 11826, 3, 2, 2, 2, 2035, 11828, 3, 2, 2, 2, 2037, 11830, 3, 2, 2, 2, 2039, 11832, 3, 2, 2, 2, 2041, 11834, 3, 2, 2, 2, 2043, 11836, 3, 2, 2, 2, 2045, 11838, 3, 2, 2, 2, 2047, 11840, 3, 2, 2, 2, 2049, 11842, 3, 2, 2, 2, 2051, 11844, 3, 2, 2, 2, 2053, 11846, 3, 2, 2, 2, 2055, 11848, 3, 2, 2, 2, 2057, 11850, 3, 2, 2, 2, 2059, 11852, 3, 2, 2, 2, 2061, 11854, 3, 2, 2, 2, 2063, 11856, 3, 2, 2, 2, 2065, 11861, 3, 2, 2, 2, 2067, 11863, 3, 2, 2, 2, 2069, 11868, 3, 2, 2, 2, 2071, 11874, 3, 2, 2, 2, 2073, 11880, 3, 2, 2, 2, 2075, 11883, 3, 2, 2, 2, 2077, 11906, 3, 2, 2, 2, 2079, 11951, 3, 2, 2, 2, 2081, 11953, 3, 2, 2, 2, 2083, 11956, 3, 2, 2, 2, 2085, 11958, 3, 2, 2, 2, 2087, 11961, 3, 2, 2, 2, 2089, 11964, 3, 2, 2, 2, 2091, 11966, 3, 2, 2, 2, 2093, 11978, 3, 2, 2, 2, 2095, 11987, 3, 2, 2, 2, 2097, 11998, 3, 2, 2, 2, 2099, 12049, 3, 2, 2, 2, 2101, 12051, 3, 2, 2, 2, 2103, 12063, 3, 2, 2, 2, 2105, 12077, 3, 2, 2, 2, 2107, 12090, 3, 2, 2, 2, 2109, 12103, 3, 2, 2, 2, 2111, 12116, 3, 2, 2, 2, 2113, 12118, 3, 2, 2, 2, 2115, 12120, 3, 2, 2, 2, 2117, 12129, 3, 2, 2, 2, 2119, 2121, 9, 2, 2, 2, 2120, 2119, 3, 2, 2, 2, 2121, 2122, 3, 2, 2, 2, 2122, 2120, 3, 2, 2, 2, 2122, 2123, 3, 2, 2, 2, 2123, 2124, 3, 2, 2, 2, 2124, 2125, 8, 2, 2, 2, 2125, 4, 3, 2, 2, 2, 2126, 2127, 7, 49, 2, 2, 2127, 2128, 7, 44, 2, 2, 2128, 2129, 7, 35, 2, 2, 2129, 2131, 3, 2, 2, 2, 2130, 2132, 11, 2, 2, 2, 2131, 2130, 3, 2, 2, 2, 2132, 2133, 3, 2, 2, 2, 2133, 2134, 3, 2, 2, 2, 2133, 2131, 3, 2, 2, 2, 2134, 2135, 3, 2, 2, 2, 2135, 2136, 7, 44, 2, 2, 2136, 2137, 7, 49, 2, 2, 2137, 2138, 3, 2, 2, 2, 2138, 2139, 8, 3, 3, 2, 2139, 6, 3, 2, 2, 2, 2140, 2141, 7, 49, 2, 2, 2141, 2142, 7, 44, 2, 2, 2142, 2146, 3, 2, 2, 2, 2143, 2145, 11, 2, 2, 2, 2144, 2143, 3, 2, 2, 2, 2145, 2148, 3, 2, 2, 2, 2146, 2147, 3, 2, 2, 2, 2146, 2144, 3, 2, 2, 2, 2147, 2149, 3, 2, 2, 2, 2148, 2146, 3, 2, 2, 2, 2149, 2150, 7, 44, 2, 2, 2150, 2151, 7, 49, 2, 2, 2151, 2152, 3, 2, 2, 2, 2152, 2153, 8, 4, 2, 2, 2153, 8, 3, 2, 2, 2, 2154, 2155, 7, 47, 2, 2, 2155, 2156, 7, 47, 2, 2, 2156, 2159, 7, 34, 2, 2, 2157, 2159, 7, 37, 2, 2, 2158, 2154, 3, 2, 2, 2, 2158, 2157, 3, 2, 2, 2, 2159, 2163, 3, 2, 2, 2, 2160, 2162, 10, 3, 2, 2, 2161, 2160, 3, 2, 2, 2, 2162, 2165, 3, 2, 2, 2, 2163, 2161, 3, 2, 2, 2, 2163, 2164, 3, 2, 2, 2, 2164, 2171, 3, 2, 2, 2, 2165, 2163, 3, 2, 2, 2, 2166, 2168, 7, 15, 2, 2, 2167, 2166, 3, 2, 2, 2, 2167, 2168, 3, 2, 2, 2, 2168, 2169, 3, 2, 2, 2, 2169, 2172, 7, 12, 2, 2, 2170, 2172, 7, 2, 2, 3, 2171, 2167, 3, 2, 2, 2, 2171, 2170, 3, 2, 2, 2, 2172, 2184, 3, 2, 2, 2, 2173, 2174, 7, 47, 2, 2, 2174, 2175, 7, 47, 2, 2, 2175, 2181, 3, 2, 2, 2, 2176, 2178, 7, 15, 2, 2, 2177, 2176, 3, 2, 2, 2, 2177, 2178, 3, 2, 2, 2, 2178, 2179, 3, 2, 2, 2, 2179, 2182, 7, 12, 2, 2, 2180, 2182, 7, 2, 2, 3, 2181, 2177, 3, 2, 2, 2, 2181, 2180, 3, 2, 2, 2, 2182, 2184, 3, 2, 2, 2, 2183, 2158, 3, 2, 2, 2, 2183, 2173, 3, 2, 2, 2, 2184, 2185, 3, 2, 2, 2, 2185, 2186, 8, 5, 2, 2, 2186, 10, 3, 2, 2, 2, 2187, 2188, 7, 67, 2, 2, 2188, 2189, 7, 70, 2, 2, 2189, 2190, 7, 70, 2, 2, 2190, 12, 3, 2, 2, 2, 2191, 2192, 7, 67, 2, 2, 2192, 2193, 7, 78, 2, 2, 2193, 2194, 7, 78, 2, 2, 2194, 14, 3, 2, 2, 2, 2195, 2196, 7, 67, 2, 2, 2196, 2197, 7, 78, 2, 2, 2197, 2198, 7, 86, 2, 2, 2198, 2199, 7, 71, 2, 2, 2199, 2200, 7, 84, 2, 2, 2200, 16, 3, 2, 2, 2, 2201, 2202, 7, 67, 2, 2, 2202, 2203, 7, 78, 2, 2, 2203, 2204, 7, 89, 2, 2, 2204, 2205, 7, 67, 2, 2, 2205, 2206, 7, 91, 2, 2, 2206, 2207, 7, 85, 2, 2, 2207, 18, 3, 2, 2, 2, 2208, 2209, 7, 67, 2, 2, 2209, 2210, 7, 80, 2, 2, 2210, 2211, 7, 67, 2, 2, 2211, 2212, 7, 78, 2, 2, 2212, 2213, 7, 91, 2, 2, 2213, 2214, 7, 92, 2, 2, 2214, 2215, 7, 71, 2, 2, 2215, 20, 3, 2, 2, 2, 2216, 2217, 7, 67, 2, 2, 2217, 2218, 7, 80, 2, 2, 2218, 2219, 7, 70, 2, 2, 2219, 22, 3, 2, 2, 2, 2220, 2221, 7, 67, 2, 2, 2221, 2222, 7, 85, 2, 2, 2222, 24, 3, 2, 2, 2, 2223, 2224, 7, 67, 2, 2, 2224, 2225, 7, 85, 2, 2, 2225, 2226, 7, 69, 2, 2, 2226, 26, 3, 2, 2, 2, 2227, 2228, 7, 68, 2, 2, 2228, 2229, 7, 71, 2, 2, 2229, 2230, 7, 72, 2, 2, 2230, 2231, 7, 81, 2, 2, 2231, 2232, 7, 84, 2, 2, 2232, 2233, 7, 71, 2, 2, 2233, 28, 3, 2, 2, 2, 2234, 2235, 7, 68, 2, 2, 2235, 2236, 7, 71, 2, 2, 2236, 2237, 7, 86, 2, 2, 2237, 2238, 7, 89, 2, 2, 2238, 2239, 7, 71, 2, 2, 2239, 2240, 7, 71, 2, 2, 2240, 2241, 7, 80, 2, 2, 2241, 30, 3, 2, 2, 2, 2242, 2243, 7, 68, 2, 2, 2243, 2244, 7, 81, 2, 2, 2244, 2245, 7, 86, 2, 2, 2245, 2246, 7, 74, 2, 2, 2246, 32, 3, 2, 2, 2, 2247, 2248, 7, 68, 2, 2, 2248, 2249, 7, 91, 2, 2, 2249, 34, 3, 2, 2, 2, 2250, 2251, 7, 69, 2, 2, 2251, 2252, 7, 67, 2, 2, 2252, 2253, 7, 78, 2, 2, 2253, 2254, 7, 78, 2, 2, 2254, 36, 3, 2, 2, 2, 2255, 2256, 7, 69, 2, 2, 2256, 2257, 7, 67, 2, 2, 2257, 2258, 7, 85, 2, 2, 2258, 2259, 7, 69, 2, 2, 2259, 2260, 7, 67, 2, 2, 2260, 2261, 7, 70, 2, 2, 2261, 2262, 7, 71, 2, 2, 2262, 38, 3, 2, 2, 2, 2263, 2264, 7, 69, 2, 2, 2264, 2265, 7, 67, 2, 2, 2265, 2266, 7, 85, 2, 2, 2266, 2267, 7, 71, 2, 2, 2267, 40, 3, 2, 2, 2, 2268, 2269, 7, 69, 2, 2, 2269, 2270, 7, 67, 2, 2, 2270, 2271, 7, 85, 2, 2, 2271, 2272, 7, 86, 2, 2, 2272, 42, 3, 2, 2, 2, 2273, 2274, 7, 69, 2, 2, 2274, 2275, 7, 74, 2, 2, 2275, 2276, 7, 67, 2, 2, 2276, 2277, 7, 80, 2, 2, 2277, 2278, 7, 73, 2, 2, 2278, 2279, 7, 71, 2, 2, 2279, 44, 3, 2, 2, 2, 2280, 2281, 7, 69, 2, 2, 2281, 2282, 7, 74, 2, 2, 2282, 2283, 7, 67, 2, 2, 2283, 2284, 7, 84, 2, 2, 2284, 2285, 7, 67, 2, 2, 2285, 2286, 7, 69, 2, 2, 2286, 2287, 7, 86, 2, 2, 2287, 2288, 7, 71, 2, 2, 2288, 2289, 7, 84, 2, 2, 2289, 46, 3, 2, 2, 2, 2290, 2291, 7, 69, 2, 2, 2291, 2292, 7, 74, 2, 2, 2292, 2293, 7, 71, 2, 2, 2293, 2294, 7, 69, 2, 2, 2294, 2295, 7, 77, 2, 2, 2295, 48, 3, 2, 2, 2, 2296, 2297, 7, 69, 2, 2, 2297, 2298, 7, 81, 2, 2, 2298, 2299, 7, 78, 2, 2, 2299, 2300, 7, 78, 2, 2, 2300, 2301, 7, 67, 2, 2, 2301, 2302, 7, 86, 2, 2, 2302, 2303, 7, 71, 2, 2, 2303, 50, 3, 2, 2, 2, 2304, 2305, 7, 69, 2, 2, 2305, 2306, 7, 81, 2, 2, 2306, 2307, 7, 78, 2, 2, 2307, 2308, 7, 87, 2, 2, 2308, 2309, 7, 79, 2, 2, 2309, 2310, 7, 80, 2, 2, 2310, 52, 3, 2, 2, 2, 2311, 2312, 7, 69, 2, 2, 2312, 2313, 7, 81, 2, 2, 2313, 2314, 7, 80, 2, 2, 2314, 2315, 7, 70, 2, 2, 2315, 2316, 7, 75, 2, 2, 2316, 2317, 7, 86, 2, 2, 2317, 2318, 7, 75, 2, 2, 2318, 2319, 7, 81, 2, 2, 2319, 2320, 7, 80, 2, 2, 2320, 54, 3, 2, 2, 2, 2321, 2322, 7, 69, 2, 2, 2322, 2323, 7, 81, 2, 2, 2323, 2324, 7, 80, 2, 2, 2324, 2325, 7, 85, 2, 2, 2325, 2326, 7, 86, 2, 2, 2326, 2327, 7, 84, 2, 2, 2327, 2328, 7, 67, 2, 2, 2328, 2329, 7, 75, 2, 2, 2329, 2330, 7, 80, 2, 2, 2330, 2331, 7, 86, 2, 2, 2331, 56, 3, 2, 2, 2, 2332, 2333, 7, 69, 2, 2, 2333, 2334, 7, 81, 2, 2, 2334, 2335, 7, 80, 2, 2, 2335, 2336, 7, 86, 2, 2, 2336, 2337, 7, 75, 2, 2, 2337, 2338, 7, 80, 2, 2, 2338, 2339, 7, 87, 2, 2, 2339, 2340, 7, 71, 2, 2, 2340, 58, 3, 2, 2, 2, 2341, 2342, 7, 69, 2, 2, 2342, 2343, 7, 81, 2, 2, 2343, 2344, 7, 80, 2, 2, 2344, 2345, 7, 88, 2, 2, 2345, 2346, 7, 71, 2, 2, 2346, 2347, 7, 84, 2, 2, 2347, 2348, 7, 86, 2, 2, 2348, 60, 3, 2, 2, 2, 2349, 2350, 7, 69, 2, 2, 2350, 2351, 7, 84, 2, 2, 2351, 2352, 7, 71, 2, 2, 2352, 2353, 7, 67, 2, 2, 2353, 2354, 7, 86, 2, 2, 2354, 2355, 7, 71, 2, 2, 2355, 62, 3, 2, 2, 2, 2356, 2357, 7, 69, 2, 2, 2357, 2358, 7, 84, 2, 2, 2358, 2359, 7, 81, 2, 2, 2359, 2360, 7, 85, 2, 2, 2360, 2361, 7, 85, 2, 2, 2361, 64, 3, 2, 2, 2, 2362, 2363, 7, 69, 2, 2, 2363, 2364, 7, 87, 2, 2, 2364, 2365, 7, 84, 2, 2, 2365, 2366, 7, 84, 2, 2, 2366, 2367, 7, 71, 2, 2, 2367, 2368, 7, 80, 2, 2, 2368, 2369, 7, 86, 2, 2, 2369, 66, 3, 2, 2, 2, 2370, 2371, 7, 69, 2, 2, 2371, 2372, 7, 87, 2, 2, 2372, 2373, 7, 84, 2, 2, 2373, 2374, 7, 84, 2, 2, 2374, 2375, 7, 71, 2, 2, 2375, 2376, 7, 80, 2, 2, 2376, 2377, 7, 86, 2, 2, 2377, 2378, 7, 97, 2, 2, 2378, 2379, 7, 87, 2, 2, 2379, 2380, 7, 85, 2, 2, 2380, 2381, 7, 71, 2, 2, 2381, 2382, 7, 84, 2, 2, 2382, 68, 3, 2, 2, 2, 2383, 2384, 7, 69, 2, 2, 2384, 2385, 7, 87, 2, 2, 2385, 2386, 7, 84, 2, 2, 2386, 2387, 7, 85, 2, 2, 2387, 2388, 7, 81, 2, 2, 2388, 2389, 7, 84, 2, 2, 2389, 70, 3, 2, 2, 2, 2390, 2391, 7, 70, 2, 2, 2391, 2392, 7, 67, 2, 2, 2392, 2393, 7, 86, 2, 2, 2393, 2394, 7, 67, 2, 2, 2394, 2395, 7, 68, 2, 2, 2395, 2396, 7, 67, 2, 2, 2396, 2397, 7, 85, 2, 2, 2397, 2398, 7, 71, 2, 2, 2398, 72, 3, 2, 2, 2, 2399, 2400, 7, 70, 2, 2, 2400, 2401, 7, 67, 2, 2, 2401, 2402, 7, 86, 2, 2, 2402, 2403, 7, 67, 2, 2, 2403, 2404, 7, 68, 2, 2, 2404, 2405, 7, 67, 2, 2, 2405, 2406, 7, 85, 2, 2, 2406, 2407, 7, 71, 2, 2, 2407, 2408, 7, 85, 2, 2, 2408, 74, 3, 2, 2, 2, 2409, 2410, 7, 70, 2, 2, 2410, 2411, 7, 71, 2, 2, 2411, 2412, 7, 69, 2, 2, 2412, 2413, 7, 78, 2, 2, 2413, 2414, 7, 67, 2, 2, 2414, 2415, 7, 84, 2, 2, 2415, 2416, 7, 71, 2, 2, 2416, 76, 3, 2, 2, 2, 2417, 2418, 7, 70, 2, 2, 2418, 2419, 7, 71, 2, 2, 2419, 2420, 7, 72, 2, 2, 2420, 2421, 7, 67, 2, 2, 2421, 2422, 7, 87, 2, 2, 2422, 2423, 7, 78, 2, 2, 2423, 2424, 7, 86, 2, 2, 2424, 78, 3, 2, 2, 2, 2425, 2426, 7, 70, 2, 2, 2426, 2427, 7, 71, 2, 2, 2427, 2428, 7, 78, 2, 2, 2428, 2429, 7, 67, 2, 2, 2429, 2430, 7, 91, 2, 2, 2430, 2431, 7, 71, 2, 2, 2431, 2432, 7, 70, 2, 2, 2432, 80, 3, 2, 2, 2, 2433, 2434, 7, 70, 2, 2, 2434, 2435, 7, 71, 2, 2, 2435, 2436, 7, 78, 2, 2, 2436, 2437, 7, 71, 2, 2, 2437, 2438, 7, 86, 2, 2, 2438, 2439, 7, 71, 2, 2, 2439, 82, 3, 2, 2, 2, 2440, 2441, 7, 70, 2, 2, 2441, 2442, 7, 71, 2, 2, 2442, 2443, 7, 85, 2, 2, 2443, 2444, 7, 69, 2, 2, 2444, 84, 3, 2, 2, 2, 2445, 2446, 7, 70, 2, 2, 2446, 2447, 7, 71, 2, 2, 2447, 2448, 7, 85, 2, 2, 2448, 2449, 7, 69, 2, 2, 2449, 2450, 7, 84, 2, 2, 2450, 2451, 7, 75, 2, 2, 2451, 2452, 7, 68, 2, 2, 2452, 2453, 7, 71, 2, 2, 2453, 86, 3, 2, 2, 2, 2454, 2455, 7, 70, 2, 2, 2455, 2456, 7, 71, 2, 2, 2456, 2457, 7, 86, 2, 2, 2457, 2458, 7, 71, 2, 2, 2458, 2459, 7, 84, 2, 2, 2459, 2460, 7, 79, 2, 2, 2460, 2461, 7, 75, 2, 2, 2461, 2462, 7, 80, 2, 2, 2462, 2463, 7, 75, 2, 2, 2463, 2464, 7, 85, 2, 2, 2464, 2465, 7, 86, 2, 2, 2465, 2466, 7, 75, 2, 2, 2466, 2467, 7, 69, 2, 2, 2467, 88, 3, 2, 2, 2, 2468, 2469, 7, 70, 2, 2, 2469, 2470, 7, 75, 2, 2, 2470, 2471, 7, 67, 2, 2, 2471, 2472, 7, 73, 2, 2, 2472, 2473, 7, 80, 2, 2, 2473, 2474, 7, 81, 2, 2, 2474, 2475, 7, 85, 2, 2, 2475, 2476, 7, 86, 2, 2, 2476, 2477, 7, 75, 2, 2, 2477, 2478, 7, 69, 2, 2, 2478, 2479, 7, 85, 2, 2, 2479, 90, 3, 2, 2, 2, 2480, 2481, 7, 70, 2, 2, 2481, 2482, 7, 75, 2, 2, 2482, 2483, 7, 85, 2, 2, 2483, 2484, 7, 86, 2, 2, 2484, 2485, 7, 75, 2, 2, 2485, 2486, 7, 80, 2, 2, 2486, 2487, 7, 69, 2, 2, 2487, 2488, 7, 86, 2, 2, 2488, 92, 3, 2, 2, 2, 2489, 2490, 7, 70, 2, 2, 2490, 2491, 7, 75, 2, 2, 2491, 2492, 7, 85, 2, 2, 2492, 2493, 7, 86, 2, 2, 2493, 2494, 7, 75, 2, 2, 2494, 2495, 7, 80, 2, 2, 2495, 2496, 7, 69, 2, 2, 2496, 2497, 7, 86, 2, 2, 2497, 2498, 7, 84, 2, 2, 2498, 2499, 7, 81, 2, 2, 2499, 2500, 7, 89, 2, 2, 2500, 94, 3, 2, 2, 2, 2501, 2502, 7, 70, 2, 2, 2502, 2503, 7, 84, 2, 2, 2503, 2504, 7, 81, 2, 2, 2504, 2505, 7, 82, 2, 2, 2505, 96, 3, 2, 2, 2, 2506, 2507, 7, 71, 2, 2, 2507, 2508, 7, 67, 2, 2, 2508, 2509, 7, 69, 2, 2, 2509, 2510, 7, 74, 2, 2, 2510, 98, 3, 2, 2, 2, 2511, 2512, 7, 71, 2, 2, 2512, 2513, 7, 78, 2, 2, 2513, 2514, 7, 85, 2, 2, 2514, 2515, 7, 71, 2, 2, 2515, 100, 3, 2, 2, 2, 2516, 2517, 7, 71, 2, 2, 2517, 2518, 7, 78, 2, 2, 2518, 2519, 7, 85, 2, 2, 2519, 2520, 7, 71, 2, 2, 2520, 2521, 7, 75, 2, 2, 2521, 2522, 7, 72, 2, 2, 2522, 102, 3, 2, 2, 2, 2523, 2524, 7, 71, 2, 2, 2524, 2525, 7, 80, 2, 2, 2525, 2526, 7, 69, 2, 2, 2526, 2527, 7, 78, 2, 2, 2527, 2528, 7, 81, 2, 2, 2528, 2529, 7, 85, 2, 2, 2529, 2530, 7, 71, 2, 2, 2530, 2531, 7, 70, 2, 2, 2531, 104, 3, 2, 2, 2, 2532, 2533, 7, 71, 2, 2, 2533, 2534, 7, 85, 2, 2, 2534, 2535, 7, 69, 2, 2, 2535, 2536, 7, 67, 2, 2, 2536, 2537, 7, 82, 2, 2, 2537, 2538, 7, 71, 2, 2, 2538, 2539, 7, 70, 2, 2, 2539, 106, 3, 2, 2, 2, 2540, 2541, 7, 71, 2, 2, 2541, 2542, 7, 90, 2, 2, 2542, 2543, 7, 75, 2, 2, 2543, 2544, 7, 85, 2, 2, 2544, 2545, 7, 86, 2, 2, 2545, 2546, 7, 85, 2, 2, 2546, 108, 3, 2, 2, 2, 2547, 2548, 7, 71, 2, 2, 2548, 2549, 7, 90, 2, 2, 2549, 2550, 7, 75, 2, 2, 2550, 2551, 7, 86, 2, 2, 2551, 110, 3, 2, 2, 2, 2552, 2553, 7, 71, 2, 2, 2553, 2554, 7, 90, 2, 2, 2554, 2555, 7, 82, 2, 2, 2555, 2556, 7, 78, 2, 2, 2556, 2557, 7, 67, 2, 2, 2557, 2558, 7, 75, 2, 2, 2558, 2559, 7, 80, 2, 2, 2559, 112, 3, 2, 2, 2, 2560, 2561, 7, 72, 2, 2, 2561, 2562, 7, 67, 2, 2, 2562, 2563, 7, 78, 2, 2, 2563, 2564, 7, 85, 2, 2, 2564, 2565, 7, 71, 2, 2, 2565, 114, 3, 2, 2, 2, 2566, 2567, 7, 72, 2, 2, 2567, 2568, 7, 71, 2, 2, 2568, 2569, 7, 86, 2, 2, 2569, 2570, 7, 69, 2, 2, 2570, 2571, 7, 74, 2, 2, 2571, 116, 3, 2, 2, 2, 2572, 2573, 7, 72, 2, 2, 2573, 2574, 7, 81, 2, 2, 2574, 2575, 7, 84, 2, 2, 2575, 118, 3, 2, 2, 2, 2576, 2577, 7, 72, 2, 2, 2577, 2578, 7, 81, 2, 2, 2578, 2579, 7, 84, 2, 2, 2579, 2580, 7, 69, 2, 2, 2580, 2581, 7, 71, 2, 2, 2581, 120, 3, 2, 2, 2, 2582, 2583, 7, 72, 2, 2, 2583, 2584, 7, 81, 2, 2, 2584, 2585, 7, 84, 2, 2, 2585, 2586, 7, 71, 2, 2, 2586, 2587, 7, 75, 2, 2, 2587, 2588, 7, 73, 2, 2, 2588, 2589, 7, 80, 2, 2, 2589, 122, 3, 2, 2, 2, 2590, 2591, 7, 72, 2, 2, 2591, 2592, 7, 84, 2, 2, 2592, 2593, 7, 81, 2, 2, 2593, 2594, 7, 79, 2, 2, 2594, 124, 3, 2, 2, 2, 2595, 2596, 7, 72, 2, 2, 2596, 2597, 7, 87, 2, 2, 2597, 2598, 7, 78, 2, 2, 2598, 2599, 7, 78, 2, 2, 2599, 2600, 7, 86, 2, 2, 2600, 2601, 7, 71, 2, 2, 2601, 2602, 7, 90, 2, 2, 2602, 2603, 7, 86, 2, 2, 2603, 126, 3, 2, 2, 2, 2604, 2605, 7, 73, 2, 2, 2605, 2606, 7, 71, 2, 2, 2606, 2607, 7, 80, 2, 2, 2607, 2608, 7, 71, 2, 2, 2608, 2609, 7, 84, 2, 2, 2609, 2610, 7, 67, 2, 2, 2610, 2611, 7, 86, 2, 2, 2611, 2612, 7, 71, 2, 2, 2612, 2613, 7, 70, 2, 2, 2613, 128, 3, 2, 2, 2, 2614, 2615, 7, 73, 2, 2, 2615, 2616, 7, 71, 2, 2, 2616, 2617, 7, 86, 2, 2, 2617, 130, 3, 2, 2, 2, 2618, 2619, 7, 73, 2, 2, 2619, 2620, 7, 84, 2, 2, 2620, 2621, 7, 67, 2, 2, 2621, 2622, 7, 80, 2, 2, 2622, 2623, 7, 86, 2, 2, 2623, 132, 3, 2, 2, 2, 2624, 2625, 7, 73, 2, 2, 2625, 2626, 7, 84, 2, 2, 2626, 2627, 7, 81, 2, 2, 2627, 2628, 7, 87, 2, 2, 2628, 2629, 7, 82, 2, 2, 2629, 134, 3, 2, 2, 2, 2630, 2631, 7, 74, 2, 2, 2631, 2632, 7, 67, 2, 2, 2632, 2633, 7, 88, 2, 2, 2633, 2634, 7, 75, 2, 2, 2634, 2635, 7, 80, 2, 2, 2635, 2636, 7, 73, 2, 2, 2636, 136, 3, 2, 2, 2, 2637, 2638, 7, 74, 2, 2, 2638, 2639, 7, 75, 2, 2, 2639, 2640, 7, 73, 2, 2, 2640, 2641, 7, 74, 2, 2, 2641, 2642, 7, 97, 2, 2, 2642, 2643, 7, 82, 2, 2, 2643, 2644, 7, 84, 2, 2, 2644, 2645, 7, 75, 2, 2, 2645, 2646, 7, 81, 2, 2, 2646, 2647, 7, 84, 2, 2, 2647, 2648, 7, 75, 2, 2, 2648, 2649, 7, 86, 2, 2, 2649, 2650, 7, 91, 2, 2, 2650, 138, 3, 2, 2, 2, 2651, 2652, 7, 75, 2, 2, 2652, 2653, 7, 72, 2, 2, 2653, 140, 3, 2, 2, 2, 2654, 2655, 7, 75, 2, 2, 2655, 2656, 7, 73, 2, 2, 2656, 2657, 7, 80, 2, 2, 2657, 2658, 7, 81, 2, 2, 2658, 2659, 7, 84, 2, 2, 2659, 2660, 7, 71, 2, 2, 2660, 142, 3, 2, 2, 2, 2661, 2662, 7, 75, 2, 2, 2662, 2663, 7, 80, 2, 2, 2663, 144, 3, 2, 2, 2, 2664, 2665, 7, 75, 2, 2, 2665, 2666, 7, 80, 2, 2, 2666, 2667, 7, 70, 2, 2, 2667, 2668, 7, 71, 2, 2, 2668, 2669, 7, 90, 2, 2, 2669, 146, 3, 2, 2, 2, 2670, 2671, 7, 75, 2, 2, 2671, 2672, 7, 80, 2, 2, 2672, 2673, 7, 72, 2, 2, 2673, 2674, 7, 75, 2, 2, 2674, 2675, 7, 78, 2, 2, 2675, 2676, 7, 71, 2, 2, 2676, 148, 3, 2, 2, 2, 2677, 2678, 7, 75, 2, 2, 2678, 2679, 7, 80, 2, 2, 2679, 2680, 7, 80, 2, 2, 2680, 2681, 7, 71, 2, 2, 2681, 2682, 7, 84, 2, 2, 2682, 150, 3, 2, 2, 2, 2683, 2684, 7, 75, 2, 2, 2684, 2685, 7, 80, 2, 2, 2685, 2686, 7, 81, 2, 2, 2686, 2687, 7, 87, 2, 2, 2687, 2688, 7, 86, 2, 2, 2688, 152, 3, 2, 2, 2, 2689, 2690, 7, 75, 2, 2, 2690, 2691, 7, 80, 2, 2, 2691, 2692, 7, 85, 2, 2, 2692, 2693, 7, 71, 2, 2, 2693, 2694, 7, 84, 2, 2, 2694, 2695, 7, 86, 2, 2, 2695, 154, 3, 2, 2, 2, 2696, 2697, 7, 75, 2, 2, 2697, 2698, 7, 80, 2, 2, 2698, 2699, 7, 86, 2, 2, 2699, 2700, 7, 71, 2, 2, 2700, 2701, 7, 84, 2, 2, 2701, 2702, 7, 88, 2, 2, 2702, 2703, 7, 67, 2, 2, 2703, 2704, 7, 78, 2, 2, 2704, 156, 3, 2, 2, 2, 2705, 2706, 7, 75, 2, 2, 2706, 2707, 7, 80, 2, 2, 2707, 2708, 7, 86, 2, 2, 2708, 2709, 7, 81, 2, 2, 2709, 158, 3, 2, 2, 2, 2710, 2711, 7, 75, 2, 2, 2711, 2712, 7, 85, 2, 2, 2712, 160, 3, 2, 2, 2, 2713, 2714, 7, 75, 2, 2, 2714, 2715, 7, 86, 2, 2, 2715, 2716, 7, 71, 2, 2, 2716, 2717, 7, 84, 2, 2, 2717, 2718, 7, 67, 2, 2, 2718, 2719, 7, 86, 2, 2, 2719, 2720, 7, 71, 2, 2, 2720, 162, 3, 2, 2, 2, 2721, 2722, 7, 76, 2, 2, 2722, 2723, 7, 81, 2, 2, 2723, 2724, 7, 75, 2, 2, 2724, 2725, 7, 80, 2, 2, 2725, 164, 3, 2, 2, 2, 2726, 2727, 7, 77, 2, 2, 2727, 2728, 7, 71, 2, 2, 2728, 2729, 7, 91, 2, 2, 2729, 166, 3, 2, 2, 2, 2730, 2731, 7, 77, 2, 2, 2731, 2732, 7, 71, 2, 2, 2732, 2733, 7, 91, 2, 2, 2733, 2734, 7, 85, 2, 2, 2734, 168, 3, 2, 2, 2, 2735, 2736, 7, 77, 2, 2, 2736, 2737, 7, 75, 2, 2, 2737, 2738, 7, 78, 2, 2, 2738, 2739, 7, 78, 2, 2, 2739, 170, 3, 2, 2, 2, 2740, 2741, 7, 78, 2, 2, 2741, 2742, 7, 71, 2, 2, 2742, 2743, 7, 67, 2, 2, 2743, 2744, 7, 70, 2, 2, 2744, 2745, 7, 75, 2, 2, 2745, 2746, 7, 80, 2, 2, 2746, 2747, 7, 73, 2, 2, 2747, 172, 3, 2, 2, 2, 2748, 2749, 7, 78, 2, 2, 2749, 2750, 7, 71, 2, 2, 2750, 2751, 7, 67, 2, 2, 2751, 2752, 7, 88, 2, 2, 2752, 2753, 7, 71, 2, 2, 2753, 174, 3, 2, 2, 2, 2754, 2755, 7, 78, 2, 2, 2755, 2756, 7, 71, 2, 2, 2756, 2757, 7, 72, 2, 2, 2757, 2758, 7, 86, 2, 2, 2758, 176, 3, 2, 2, 2, 2759, 2760, 7, 78, 2, 2, 2760, 2761, 7, 75, 2, 2, 2761, 2762, 7, 77, 2, 2, 2762, 2763, 7, 71, 2, 2, 2763, 178, 3, 2, 2, 2, 2764, 2765, 7, 78, 2, 2, 2765, 2766, 7, 75, 2, 2, 2766, 2767, 7, 79, 2, 2, 2767, 2768, 7, 75, 2, 2, 2768, 2769, 7, 86, 2, 2, 2769, 180, 3, 2, 2, 2, 2770, 2771, 7, 78, 2, 2, 2771, 2772, 7, 75, 2, 2, 2772, 2773, 7, 80, 2, 2, 2773, 2774, 7, 71, 2, 2, 2774, 2775, 7, 67, 2, 2, 2775, 2776, 7, 84, 2, 2, 2776, 182, 3, 2, 2, 2, 2777, 2778, 7, 78, 2, 2, 2778, 2779, 7, 75, 2, 2, 2779, 2780, 7, 80, 2, 2, 2780, 2781, 7, 71, 2, 2, 2781, 2782, 7, 85, 2, 2, 2782, 184, 3, 2, 2, 2, 2783, 2784, 7, 78, 2, 2, 2784, 2785, 7, 81, 2, 2, 2785, 2786, 7, 67, 2, 2, 2786, 2787, 7, 70, 2, 2, 2787, 186, 3, 2, 2, 2, 2788, 2789, 7, 78, 2, 2, 2789, 2790, 7, 81, 2, 2, 2790, 2791, 7, 69, 2, 2, 2791, 2792, 7, 77, 2, 2, 2792, 188, 3, 2, 2, 2, 2793, 2794, 7, 78, 2, 2, 2794, 2795, 7, 81, 2, 2, 2795, 2796, 7, 81, 2, 2, 2796, 2797, 7, 82, 2, 2, 2797, 190, 3, 2, 2, 2, 2798, 2799, 7, 78, 2, 2, 2799, 2800, 7, 81, 2, 2, 2800, 2801, 7, 89, 2, 2, 2801, 2802, 7, 97, 2, 2, 2802, 2803, 7, 82, 2, 2, 2803, 2804, 7, 84, 2, 2, 2804, 2805, 7, 75, 2, 2, 2805, 2806, 7, 81, 2, 2, 2806, 2807, 7, 84, 2, 2, 2807, 2808, 7, 75, 2, 2, 2808, 2809, 7, 86, 2, 2, 2809, 2810, 7, 91, 2, 2, 2810, 192, 3, 2, 2, 2, 2811, 2812, 7, 79, 2, 2, 2812, 2813, 7, 67, 2, 2, 2813, 2814, 7, 85, 2, 2, 2814, 2815, 7, 86, 2, 2, 2815, 2816, 7, 71, 2, 2, 2816, 2817, 7, 84, 2, 2, 2817, 2818, 7, 97, 2, 2, 2818, 2819, 7, 68, 2, 2, 2819, 2820, 7, 75, 2, 2, 2820, 2821, 7, 80, 2, 2, 2821, 2822, 7, 70, 2, 2, 2822, 194, 3, 2, 2, 2, 2823, 2824, 7, 79, 2, 2, 2824, 2825, 7, 67, 2, 2, 2825, 2826, 7, 85, 2, 2, 2826, 2827, 7, 86, 2, 2, 2827, 2828, 7, 71, 2, 2, 2828, 2829, 7, 84, 2, 2, 2829, 2830, 7, 97, 2, 2, 2830, 2831, 7, 85, 2, 2, 2831, 2832, 7, 85, 2, 2, 2832, 2833, 7, 78, 2, 2, 2833, 2834, 7, 97, 2, 2, 2834, 2835, 7, 88, 2, 2, 2835, 2836, 7, 71, 2, 2, 2836, 2837, 7, 84, 2, 2, 2837, 2838, 7, 75, 2, 2, 2838, 2839, 7, 72, 2, 2, 2839, 2840, 7, 91, 2, 2, 2840, 2841, 7, 97, 2, 2, 2841, 2842, 7, 85, 2, 2, 2842, 2843, 7, 71, 2, 2, 2843, 2844, 7, 84, 2, 2, 2844, 2845, 7, 88, 2, 2, 2845, 2846, 7, 71, 2, 2, 2846, 2847, 7, 84, 2, 2, 2847, 2848, 7, 97, 2, 2, 2848, 2849, 7, 69, 2, 2, 2849, 2850, 7, 71, 2, 2, 2850, 2851, 7, 84, 2, 2, 2851, 2852, 7, 86, 2, 2, 2852, 196, 3, 2, 2, 2, 2853, 2854, 7, 79, 2, 2, 2854, 2855, 7, 67, 2, 2, 2855, 2856, 7, 86, 2, 2, 2856, 2857, 7, 69, 2, 2, 2857, 2858, 7, 74, 2, 2, 2858, 198, 3, 2, 2, 2, 2859, 2860, 7, 79, 2, 2, 2860, 2861, 7, 67, 2, 2, 2861, 2862, 7, 90, 2, 2, 2862, 2863, 7, 88, 2, 2, 2863, 2864, 7, 67, 2, 2, 2864, 2865, 7, 78, 2, 2, 2865, 2866, 7, 87, 2, 2, 2866, 2867, 7, 71, 2, 2, 2867, 200, 3, 2, 2, 2, 2868, 2869, 7, 79, 2, 2, 2869, 2870, 7, 81, 2, 2, 2870, 2871, 7, 70, 2, 2, 2871, 2872, 7, 75, 2, 2, 2872, 2873, 7, 72, 2, 2, 2873, 2874, 7, 75, 2, 2, 2874, 2875, 7, 71, 2, 2, 2875, 2876, 7, 85, 2, 2, 2876, 202, 3, 2, 2, 2, 2877, 2878, 7, 80, 2, 2, 2878, 2879, 7, 67, 2, 2, 2879, 2880, 7, 86, 2, 2, 2880, 2881, 7, 87, 2, 2, 2881, 2882, 7, 84, 2, 2, 2882, 2883, 7, 67, 2, 2, 2883, 2884, 7, 78, 2, 2, 2884, 204, 3, 2, 2, 2, 2885, 2886, 7, 80, 2, 2, 2886, 2887, 7, 81, 2, 2, 2887, 2888, 7, 86, 2, 2, 2888, 206, 3, 2, 2, 2, 2889, 2890, 7, 80, 2, 2, 2890, 2891, 7, 81, 2, 2, 2891, 2892, 7, 97, 2, 2, 2892, 2893, 7, 89, 2, 2, 2893, 2894, 7, 84, 2, 2, 2894, 2895, 7, 75, 2, 2, 2895, 2896, 7, 86, 2, 2, 2896, 2897, 7, 71, 2, 2, 2897, 2898, 7, 97, 2, 2, 2898, 2899, 7, 86, 2, 2, 2899, 2900, 7, 81, 2, 2, 2900, 2901, 7, 97, 2, 2, 2901, 2902, 7, 68, 2, 2, 2902, 2903, 7, 75, 2, 2, 2903, 2904, 7, 80, 2, 2, 2904, 2905, 7, 78, 2, 2, 2905, 2906, 7, 81, 2, 2, 2906, 2907, 7, 73, 2, 2, 2907, 208, 3, 2, 2, 2, 2908, 2909, 7, 80, 2, 2, 2909, 2910, 7, 87, 2, 2, 2910, 2911, 7, 78, 2, 2, 2911, 2912, 7, 78, 2, 2, 2912, 210, 3, 2, 2, 2, 2913, 2914, 7, 80, 2, 2, 2914, 2915, 7, 87, 2, 2, 2915, 2916, 7, 79, 2, 2, 2916, 2917, 7, 68, 2, 2, 2917, 2918, 7, 71, 2, 2, 2918, 2919, 7, 84, 2, 2, 2919, 212, 3, 2, 2, 2, 2920, 2921, 7, 81, 2, 2, 2921, 2922, 7, 80, 2, 2, 2922, 214, 3, 2, 2, 2, 2923, 2924, 7, 81, 2, 2, 2924, 2925, 7, 82, 2, 2, 2925, 2926, 7, 86, 2, 2, 2926, 2927, 7, 75, 2, 2, 2927, 2928, 7, 79, 2, 2, 2928, 2929, 7, 75, 2, 2, 2929, 2930, 7, 92, 2, 2, 2930, 2931, 7, 71, 2, 2, 2931, 216, 3, 2, 2, 2, 2932, 2933, 7, 81, 2, 2, 2933, 2934, 7, 82, 2, 2, 2934, 2935, 7, 86, 2, 2, 2935, 2936, 7, 75, 2, 2, 2936, 2937, 7, 81, 2, 2, 2937, 2938, 7, 80, 2, 2, 2938, 218, 3, 2, 2, 2, 2939, 2940, 7, 81, 2, 2, 2940, 2941, 7, 82, 2, 2, 2941, 2942, 7, 86, 2, 2, 2942, 2943, 7, 75, 2, 2, 2943, 2944, 7, 81, 2, 2, 2944, 2945, 7, 80, 2, 2, 2945, 2946, 7, 67, 2, 2, 2946, 2947, 7, 78, 2, 2, 2947, 2948, 7, 78, 2, 2, 2948, 2949, 7, 91, 2, 2, 2949, 220, 3, 2, 2, 2, 2950, 2951, 7, 81, 2, 2, 2951, 2952, 7, 84, 2, 2, 2952, 222, 3, 2, 2, 2, 2953, 2954, 7, 81, 2, 2, 2954, 2955, 7, 84, 2, 2, 2955, 2956, 7, 70, 2, 2, 2956, 2957, 7, 71, 2, 2, 2957, 2958, 7, 84, 2, 2, 2958, 224, 3, 2, 2, 2, 2959, 2960, 7, 81, 2, 2, 2960, 2961, 7, 87, 2, 2, 2961, 2962, 7, 86, 2, 2, 2962, 226, 3, 2, 2, 2, 2963, 2964, 7, 81, 2, 2, 2964, 2965, 7, 87, 2, 2, 2965, 2966, 7, 86, 2, 2, 2966, 2967, 7, 71, 2, 2, 2967, 2968, 7, 84, 2, 2, 2968, 228, 3, 2, 2, 2, 2969, 2970, 7, 81, 2, 2, 2970, 2971, 7, 87, 2, 2, 2971, 2972, 7, 86, 2, 2, 2972, 2973, 7, 72, 2, 2, 2973, 2974, 7, 75, 2, 2, 2974, 2975, 7, 78, 2, 2, 2975, 2976, 7, 71, 2, 2, 2976, 230, 3, 2, 2, 2, 2977, 2978, 7, 82, 2, 2, 2978, 2979, 7, 67, 2, 2, 2979, 2980, 7, 84, 2, 2, 2980, 2981, 7, 86, 2, 2, 2981, 2982, 7, 75, 2, 2, 2982, 2983, 7, 86, 2, 2, 2983, 2984, 7, 75, 2, 2, 2984, 2985, 7, 81, 2, 2, 2985, 2986, 7, 80, 2, 2, 2986, 232, 3, 2, 2, 2, 2987, 2988, 7, 82, 2, 2, 2988, 2989, 7, 84, 2, 2, 2989, 2990, 7, 75, 2, 2, 2990, 2991, 7, 79, 2, 2, 2991, 2992, 7, 67, 2, 2, 2992, 2993, 7, 84, 2, 2, 2993, 2994, 7, 91, 2, 2, 2994, 234, 3, 2, 2, 2, 2995, 2996, 7, 82, 2, 2, 2996, 2997, 7, 84, 2, 2, 2997, 2998, 7, 81, 2, 2, 2998, 2999, 7, 69, 2, 2, 2999, 3000, 7, 71, 2, 2, 3000, 3001, 7, 70, 2, 2, 3001, 3002, 7, 87, 2, 2, 3002, 3003, 7, 84, 2, 2, 3003, 3004, 7, 71, 2, 2, 3004, 236, 3, 2, 2, 2, 3005, 3006, 7, 82, 2, 2, 3006, 3007, 7, 87, 2, 2, 3007, 3008, 7, 84, 2, 2, 3008, 3009, 7, 73, 2, 2, 3009, 3010, 7, 71, 2, 2, 3010, 238, 3, 2, 2, 2, 3011, 3012, 7, 84, 2, 2, 3012, 3013, 7, 67, 2, 2, 3013, 3014, 7, 80, 2, 2, 3014, 3015, 7, 73, 2, 2, 3015, 3016, 7, 71, 2, 2, 3016, 240, 3, 2, 2, 2, 3017, 3018, 7, 84, 2, 2, 3018, 3019, 7, 71, 2, 2, 3019, 3020, 7, 67, 2, 2, 3020, 3021, 7, 70, 2, 2, 3021, 242, 3, 2, 2, 2, 3022, 3023, 7, 84, 2, 2, 3023, 3024, 7, 71, 2, 2, 3024, 3025, 7, 67, 2, 2, 3025, 3026, 7, 70, 2, 2, 3026, 3027, 7, 85, 2, 2, 3027, 244, 3, 2, 2, 2, 3028, 3029, 7, 84, 2, 2, 3029, 3030, 7, 71, 2, 2, 3030, 3031, 7, 72, 2, 2, 3031, 3032, 7, 71, 2, 2, 3032, 3033, 7, 84, 2, 2, 3033, 3034, 7, 71, 2, 2, 3034, 3035, 7, 80, 2, 2, 3035, 3036, 7, 69, 2, 2, 3036, 3037, 7, 71, 2, 2, 3037, 3038, 7, 85, 2, 2, 3038, 246, 3, 2, 2, 2, 3039, 3040, 7, 84, 2, 2, 3040, 3041, 7, 71, 2, 2, 3041, 3042, 7, 73, 2, 2, 3042, 3043, 7, 71, 2, 2, 3043, 3044, 7, 90, 2, 2, 3044, 3045, 7, 82, 2, 2, 3045, 248, 3, 2, 2, 2, 3046, 3047, 7, 84, 2, 2, 3047, 3048, 7, 71, 2, 2, 3048, 3049, 7, 78, 2, 2, 3049, 3050, 7, 71, 2, 2, 3050, 3051, 7, 67, 2, 2, 3051, 3052, 7, 85, 2, 2, 3052, 3053, 7, 71, 2, 2, 3053, 250, 3, 2, 2, 2, 3054, 3055, 7, 84, 2, 2, 3055, 3056, 7, 71, 2, 2, 3056, 3057, 7, 80, 2, 2, 3057, 3058, 7, 67, 2, 2, 3058, 3059, 7, 79, 2, 2, 3059, 3060, 7, 71, 2, 2, 3060, 252, 3, 2, 2, 2, 3061, 3062, 7, 84, 2, 2, 3062, 3063, 7, 71, 2, 2, 3063, 3064, 7, 82, 2, 2, 3064, 3065, 7, 71, 2, 2, 3065, 3066, 7, 67, 2, 2, 3066, 3067, 7, 86, 2, 2, 3067, 254, 3, 2, 2, 2, 3068, 3069, 7, 84, 2, 2, 3069, 3070, 7, 71, 2, 2, 3070, 3071, 7, 82, 2, 2, 3071, 3072, 7, 78, 2, 2, 3072, 3073, 7, 67, 2, 2, 3073, 3074, 7, 69, 2, 2, 3074, 3075, 7, 71, 2, 2, 3075, 256, 3, 2, 2, 2, 3076, 3077, 7, 84, 2, 2, 3077, 3078, 7, 71, 2, 2, 3078, 3079, 7, 83, 2, 2, 3079, 3080, 7, 87, 2, 2, 3080, 3081, 7, 75, 2, 2, 3081, 3082, 7, 84, 2, 2, 3082, 3083, 7, 71, 2, 2, 3083, 258, 3, 2, 2, 2, 3084, 3085, 7, 84, 2, 2, 3085, 3086, 7, 71, 2, 2, 3086, 3087, 7, 85, 2, 2, 3087, 3088, 7, 75, 2, 2, 3088, 3089, 7, 73, 2, 2, 3089, 3090, 7, 80, 2, 2, 3090, 3091, 7, 67, 2, 2, 3091, 3092, 7, 78, 2, 2, 3092, 260, 3, 2, 2, 2, 3093, 3094, 7, 84, 2, 2, 3094, 3095, 7, 71, 2, 2, 3095, 3096, 7, 85, 2, 2, 3096, 3097, 7, 86, 2, 2, 3097, 3098, 7, 84, 2, 2, 3098, 3099, 7, 75, 2, 2, 3099, 3100, 7, 69, 2, 2, 3100, 3101, 7, 86, 2, 2, 3101, 262, 3, 2, 2, 2, 3102, 3103, 7, 84, 2, 2, 3103, 3104, 7, 71, 2, 2, 3104, 3105, 7, 86, 2, 2, 3105, 3106, 7, 87, 2, 2, 3106, 3107, 7, 84, 2, 2, 3107, 3108, 7, 80, 2, 2, 3108, 264, 3, 2, 2, 2, 3109, 3110, 7, 84, 2, 2, 3110, 3111, 7, 71, 2, 2, 3111, 3112, 7, 88, 2, 2, 3112, 3113, 7, 81, 2, 2, 3113, 3114, 7, 77, 2, 2, 3114, 3115, 7, 71, 2, 2, 3115, 266, 3, 2, 2, 2, 3116, 3117, 7, 84, 2, 2, 3117, 3118, 7, 75, 2, 2, 3118, 3119, 7, 73, 2, 2, 3119, 3120, 7, 74, 2, 2, 3120, 3121, 7, 86, 2, 2, 3121, 268, 3, 2, 2, 2, 3122, 3123, 7, 84, 2, 2, 3123, 3124, 7, 78, 2, 2, 3124, 3125, 7, 75, 2, 2, 3125, 3126, 7, 77, 2, 2, 3126, 3127, 7, 71, 2, 2, 3127, 270, 3, 2, 2, 2, 3128, 3129, 7, 85, 2, 2, 3129, 3130, 7, 69, 2, 2, 3130, 3131, 7, 74, 2, 2, 3131, 3132, 7, 71, 2, 2, 3132, 3133, 7, 79, 2, 2, 3133, 3134, 7, 67, 2, 2, 3134, 272, 3, 2, 2, 2, 3135, 3136, 7, 85, 2, 2, 3136, 3137, 7, 69, 2, 2, 3137, 3138, 7, 74, 2, 2, 3138, 3139, 7, 71, 2, 2, 3139, 3140, 7, 79, 2, 2, 3140, 3141, 7, 67, 2, 2, 3141, 3142, 7, 85, 2, 2, 3142, 274, 3, 2, 2, 2, 3143, 3144, 7, 85, 2, 2, 3144, 3145, 7, 71, 2, 2, 3145, 3146, 7, 78, 2, 2, 3146, 3147, 7, 71, 2, 2, 3147, 3148, 7, 69, 2, 2, 3148, 3149, 7, 86, 2, 2, 3149, 276, 3, 2, 2, 2, 3150, 3151, 7, 85, 2, 2, 3151, 3152, 7, 71, 2, 2, 3152, 3153, 7, 86, 2, 2, 3153, 278, 3, 2, 2, 2, 3154, 3155, 7, 85, 2, 2, 3155, 3156, 7, 71, 2, 2, 3156, 3157, 7, 82, 2, 2, 3157, 3158, 7, 67, 2, 2, 3158, 3159, 7, 84, 2, 2, 3159, 3160, 7, 67, 2, 2, 3160, 3161, 7, 86, 2, 2, 3161, 3162, 7, 81, 2, 2, 3162, 3163, 7, 84, 2, 2, 3163, 280, 3, 2, 2, 2, 3164, 3165, 7, 85, 2, 2, 3165, 3166, 7, 74, 2, 2, 3166, 3167, 7, 81, 2, 2, 3167, 3168, 7, 89, 2, 2, 3168, 282, 3, 2, 2, 2, 3169, 3170, 7, 85, 2, 2, 3170, 3171, 7, 75, 2, 2, 3171, 3172, 7, 73, 2, 2, 3172, 3173, 7, 80, 2, 2, 3173, 3174, 7, 67, 2, 2, 3174, 3175, 7, 78, 2, 2, 3175, 284, 3, 2, 2, 2, 3176, 3177, 7, 85, 2, 2, 3177, 3178, 7, 82, 2, 2, 3178, 3179, 7, 67, 2, 2, 3179, 3180, 7, 86, 2, 2, 3180, 3181, 7, 75, 2, 2, 3181, 3182, 7, 67, 2, 2, 3182, 3183, 7, 78, 2, 2, 3183, 286, 3, 2, 2, 2, 3184, 3185, 7, 85, 2, 2, 3185, 3186, 7, 83, 2, 2, 3186, 3187, 7, 78, 2, 2, 3187, 288, 3, 2, 2, 2, 3188, 3189, 7, 85, 2, 2, 3189, 3190, 7, 83, 2, 2, 3190, 3191, 7, 78, 2, 2, 3191, 3192, 7, 71, 2, 2, 3192, 3193, 7, 90, 2, 2, 3193, 3194, 7, 69, 2, 2, 3194, 3195, 7, 71, 2, 2, 3195, 3196, 7, 82, 2, 2, 3196, 3197, 7, 86, 2, 2, 3197, 3198, 7, 75, 2, 2, 3198, 3199, 7, 81, 2, 2, 3199, 3200, 7, 80, 2, 2, 3200, 290, 3, 2, 2, 2, 3201, 3202, 7, 85, 2, 2, 3202, 3203, 7, 83, 2, 2, 3203, 3204, 7, 78, 2, 2, 3204, 3205, 7, 85, 2, 2, 3205, 3206, 7, 86, 2, 2, 3206, 3207, 7, 67, 2, 2, 3207, 3208, 7, 86, 2, 2, 3208, 3209, 7, 71, 2, 2, 3209, 292, 3, 2, 2, 2, 3210, 3211, 7, 85, 2, 2, 3211, 3212, 7, 83, 2, 2, 3212, 3213, 7, 78, 2, 2, 3213, 3214, 7, 89, 2, 2, 3214, 3215, 7, 67, 2, 2, 3215, 3216, 7, 84, 2, 2, 3216, 3217, 7, 80, 2, 2, 3217, 3218, 7, 75, 2, 2, 3218, 3219, 7, 80, 2, 2, 3219, 3220, 7, 73, 2, 2, 3220, 294, 3, 2, 2, 2, 3221, 3222, 7, 85, 2, 2, 3222, 3223, 7, 83, 2, 2, 3223, 3224, 7, 78, 2, 2, 3224, 3225, 7, 97, 2, 2, 3225, 3226, 7, 68, 2, 2, 3226, 3227, 7, 75, 2, 2, 3227, 3228, 7, 73, 2, 2, 3228, 3229, 7, 97, 2, 2, 3229, 3230, 7, 84, 2, 2, 3230, 3231, 7, 71, 2, 2, 3231, 3232, 7, 85, 2, 2, 3232, 3233, 7, 87, 2, 2, 3233, 3234, 7, 78, 2, 2, 3234, 3235, 7, 86, 2, 2, 3235, 296, 3, 2, 2, 2, 3236, 3237, 7, 85, 2, 2, 3237, 3238, 7, 83, 2, 2, 3238, 3239, 7, 78, 2, 2, 3239, 3240, 7, 97, 2, 2, 3240, 3241, 7, 69, 2, 2, 3241, 3242, 7, 67, 2, 2, 3242, 3243, 7, 78, 2, 2, 3243, 3244, 7, 69, 2, 2, 3244, 3245, 7, 97, 2, 2, 3245, 3246, 7, 72, 2, 2, 3246, 3247, 7, 81, 2, 2, 3247, 3248, 7, 87, 2, 2, 3248, 3249, 7, 80, 2, 2, 3249, 3250, 7, 70, 2, 2, 3250, 3251, 7, 97, 2, 2, 3251, 3252, 7, 84, 2, 2, 3252, 3253, 7, 81, 2, 2, 3253, 3254, 7, 89, 2, 2, 3254, 3255, 7, 85, 2, 2, 3255, 298, 3, 2, 2, 2, 3256, 3257, 7, 85, 2, 2, 3257, 3258, 7, 83, 2, 2, 3258, 3259, 7, 78, 2, 2, 3259, 3260, 7, 97, 2, 2, 3260, 3261, 7, 85, 2, 2, 3261, 3262, 7, 79, 2, 2, 3262, 3263, 7, 67, 2, 2, 3263, 3264, 7, 78, 2, 2, 3264, 3265, 7, 78, 2, 2, 3265, 3266, 7, 97, 2, 2, 3266, 3267, 7, 84, 2, 2, 3267, 3268, 7, 71, 2, 2, 3268, 3269, 7, 85, 2, 2, 3269, 3270, 7, 87, 2, 2, 3270, 3271, 7, 78, 2, 2, 3271, 3272, 7, 86, 2, 2, 3272, 300, 3, 2, 2, 2, 3273, 3274, 7, 85, 2, 2, 3274, 3275, 7, 85, 2, 2, 3275, 3276, 7, 78, 2, 2, 3276, 302, 3, 2, 2, 2, 3277, 3278, 7, 85, 2, 2, 3278, 3279, 7, 86, 2, 2, 3279, 3280, 7, 67, 2, 2, 3280, 3281, 7, 69, 2, 2, 3281, 3282, 7, 77, 2, 2, 3282, 3283, 7, 71, 2, 2, 3283, 3284, 7, 70, 2, 2, 3284, 304, 3, 2, 2, 2, 3285, 3286, 7, 85, 2, 2, 3286, 3287, 7, 86, 2, 2, 3287, 3288, 7, 67, 2, 2, 3288, 3289, 7, 84, 2, 2, 3289, 3290, 7, 86, 2, 2, 3290, 3291, 7, 75, 2, 2, 3291, 3292, 7, 80, 2, 2, 3292, 3293, 7, 73, 2, 2, 3293, 306, 3, 2, 2, 2, 3294, 3295, 7, 85, 2, 2, 3295, 3296, 7, 86, 2, 2, 3296, 3297, 7, 84, 2, 2, 3297, 3298, 7, 67, 2, 2, 3298, 3299, 7, 75, 2, 2, 3299, 3300, 7, 73, 2, 2, 3300, 3301, 7, 74, 2, 2, 3301, 3302, 7, 86, 2, 2, 3302, 3303, 7, 97, 2, 2, 3303, 3304, 7, 76, 2, 2, 3304, 3305, 7, 81, 2, 2, 3305, 3306, 7, 75, 2, 2, 3306, 3307, 7, 80, 2, 2, 3307, 308, 3, 2, 2, 2, 3308, 3309, 7, 86, 2, 2, 3309, 3310, 7, 67, 2, 2, 3310, 3311, 7, 68, 2, 2, 3311, 3312, 7, 78, 2, 2, 3312, 3313, 7, 71, 2, 2, 3313, 310, 3, 2, 2, 2, 3314, 3315, 7, 86, 2, 2, 3315, 3316, 7, 71, 2, 2, 3316, 3317, 7, 84, 2, 2, 3317, 3318, 7, 79, 2, 2, 3318, 3319, 7, 75, 2, 2, 3319, 3320, 7, 80, 2, 2, 3320, 3321, 7, 67, 2, 2, 3321, 3322, 7, 86, 2, 2, 3322, 3323, 7, 71, 2, 2, 3323, 3324, 7, 70, 2, 2, 3324, 312, 3, 2, 2, 2, 3325, 3326, 7, 86, 2, 2, 3326, 3327, 7, 74, 2, 2, 3327, 3328, 7, 71, 2, 2, 3328, 3329, 7, 80, 2, 2, 3329, 314, 3, 2, 2, 2, 3330, 3331, 7, 86, 2, 2, 3331, 3332, 7, 81, 2, 2, 3332, 316, 3, 2, 2, 2, 3333, 3334, 7, 86, 2, 2, 3334, 3335, 7, 84, 2, 2, 3335, 3336, 7, 67, 2, 2, 3336, 3337, 7, 75, 2, 2, 3337, 3338, 7, 78, 2, 2, 3338, 3339, 7, 75, 2, 2, 3339, 3340, 7, 80, 2, 2, 3340, 3341, 7, 73, 2, 2, 3341, 318, 3, 2, 2, 2, 3342, 3343, 7, 86, 2, 2, 3343, 3344, 7, 84, 2, 2, 3344, 3345, 7, 75, 2, 2, 3345, 3346, 7, 73, 2, 2, 3346, 3347, 7, 73, 2, 2, 3347, 3348, 7, 71, 2, 2, 3348, 3349, 7, 84, 2, 2, 3349, 320, 3, 2, 2, 2, 3350, 3351, 7, 86, 2, 2, 3351, 3352, 7, 84, 2, 2, 3352, 3353, 7, 87, 2, 2, 3353, 3354, 7, 71, 2, 2, 3354, 322, 3, 2, 2, 2, 3355, 3356, 7, 87, 2, 2, 3356, 3357, 7, 80, 2, 2, 3357, 3358, 7, 70, 2, 2, 3358, 3359, 7, 81, 2, 2, 3359, 324, 3, 2, 2, 2, 3360, 3361, 7, 87, 2, 2, 3361, 3362, 7, 80, 2, 2, 3362, 3363, 7, 75, 2, 2, 3363, 3364, 7, 81, 2, 2, 3364, 3365, 7, 80, 2, 2, 3365, 326, 3, 2, 2, 2, 3366, 3367, 7, 87, 2, 2, 3367, 3368, 7, 80, 2, 2, 3368, 3369, 7, 75, 2, 2, 3369, 3370, 7, 83, 2, 2, 3370, 3371, 7, 87, 2, 2, 3371, 3372, 7, 71, 2, 2, 3372, 328, 3, 2, 2, 2, 3373, 3374, 7, 87, 2, 2, 3374, 3375, 7, 80, 2, 2, 3375, 3376, 7, 78, 2, 2, 3376, 3377, 7, 81, 2, 2, 3377, 3378, 7, 69, 2, 2, 3378, 3379, 7, 77, 2, 2, 3379, 330, 3, 2, 2, 2, 3380, 3381, 7, 87, 2, 2, 3381, 3382, 7, 80, 2, 2, 3382, 3383, 7, 85, 2, 2, 3383, 3384, 7, 75, 2, 2, 3384, 3385, 7, 73, 2, 2, 3385, 3386, 7, 80, 2, 2, 3386, 3387, 7, 71, 2, 2, 3387, 3388, 7, 70, 2, 2, 3388, 332, 3, 2, 2, 2, 3389, 3390, 7, 87, 2, 2, 3390, 3391, 7, 82, 2, 2, 3391, 3392, 7, 70, 2, 2, 3392, 3393, 7, 67, 2, 2, 3393, 3394, 7, 86, 2, 2, 3394, 3395, 7, 71, 2, 2, 3395, 334, 3, 2, 2, 2, 3396, 3397, 7, 87, 2, 2, 3397, 3398, 7, 85, 2, 2, 3398, 3399, 7, 67, 2, 2, 3399, 3400, 7, 73, 2, 2, 3400, 3401, 7, 71, 2, 2, 3401, 336, 3, 2, 2, 2, 3402, 3403, 7, 87, 2, 2, 3403, 3404, 7, 85, 2, 2, 3404, 3405, 7, 71, 2, 2, 3405, 338, 3, 2, 2, 2, 3406, 3407, 7, 87, 2, 2, 3407, 3408, 7, 85, 2, 2, 3408, 3409, 7, 75, 2, 2, 3409, 3410, 7, 80, 2, 2, 3410, 3411, 7, 73, 2, 2, 3411, 340, 3, 2, 2, 2, 3412, 3413, 7, 88, 2, 2, 3413, 3414, 7, 67, 2, 2, 3414, 3415, 7, 78, 2, 2, 3415, 3416, 7, 87, 2, 2, 3416, 3417, 7, 71, 2, 2, 3417, 3418, 7, 85, 2, 2, 3418, 342, 3, 2, 2, 2, 3419, 3420, 7, 89, 2, 2, 3420, 3421, 7, 74, 2, 2, 3421, 3422, 7, 71, 2, 2, 3422, 3423, 7, 80, 2, 2, 3423, 344, 3, 2, 2, 2, 3424, 3425, 7, 89, 2, 2, 3425, 3426, 7, 74, 2, 2, 3426, 3427, 7, 71, 2, 2, 3427, 3428, 7, 84, 2, 2, 3428, 3429, 7, 71, 2, 2, 3429, 346, 3, 2, 2, 2, 3430, 3431, 7, 89, 2, 2, 3431, 3432, 7, 74, 2, 2, 3432, 3433, 7, 75, 2, 2, 3433, 3434, 7, 78, 2, 2, 3434, 3435, 7, 71, 2, 2, 3435, 348, 3, 2, 2, 2, 3436, 3437, 7, 89, 2, 2, 3437, 3438, 7, 75, 2, 2, 3438, 3439, 7, 86, 2, 2, 3439, 3440, 7, 74, 2, 2, 3440, 350, 3, 2, 2, 2, 3441, 3442, 7, 89, 2, 2, 3442, 3443, 7, 84, 2, 2, 3443, 3444, 7, 75, 2, 2, 3444, 3445, 7, 86, 2, 2, 3445, 3446, 7, 71, 2, 2, 3446, 352, 3, 2, 2, 2, 3447, 3448, 7, 90, 2, 2, 3448, 3449, 7, 81, 2, 2, 3449, 3450, 7, 84, 2, 2, 3450, 354, 3, 2, 2, 2, 3451, 3452, 7, 92, 2, 2, 3452, 3453, 7, 71, 2, 2, 3453, 3454, 7, 84, 2, 2, 3454, 3455, 7, 81, 2, 2, 3455, 3456, 7, 72, 2, 2, 3456, 3457, 7, 75, 2, 2, 3457, 3458, 7, 78, 2, 2, 3458, 3459, 7, 78, 2, 2, 3459, 356, 3, 2, 2, 2, 3460, 3461, 7, 86, 2, 2, 3461, 3462, 7, 75, 2, 2, 3462, 3463, 7, 80, 2, 2, 3463, 3464, 7, 91, 2, 2, 3464, 3465, 7, 75, 2, 2, 3465, 3466, 7, 80, 2, 2, 3466, 3467, 7, 86, 2, 2, 3467, 358, 3, 2, 2, 2, 3468, 3469, 7, 85, 2, 2, 3469, 3470, 7, 79, 2, 2, 3470, 3471, 7, 67, 2, 2, 3471, 3472, 7, 78, 2, 2, 3472, 3473, 7, 78, 2, 2, 3473, 3474, 7, 75, 2, 2, 3474, 3475, 7, 80, 2, 2, 3475, 3476, 7, 86, 2, 2, 3476, 360, 3, 2, 2, 2, 3477, 3478, 7, 79, 2, 2, 3478, 3479, 7, 71, 2, 2, 3479, 3480, 7, 70, 2, 2, 3480, 3481, 7, 75, 2, 2, 3481, 3482, 7, 87, 2, 2, 3482, 3483, 7, 79, 2, 2, 3483, 3484, 7, 75, 2, 2, 3484, 3485, 7, 80, 2, 2, 3485, 3486, 7, 86, 2, 2, 3486, 362, 3, 2, 2, 2, 3487, 3488, 7, 79, 2, 2, 3488, 3489, 7, 75, 2, 2, 3489, 3490, 7, 70, 2, 2, 3490, 3491, 7, 70, 2, 2, 3491, 3492, 7, 78, 2, 2, 3492, 3493, 7, 71, 2, 2, 3493, 3494, 7, 75, 2, 2, 3494, 3495, 7, 80, 2, 2, 3495, 3496, 7, 86, 2, 2, 3496, 364, 3, 2, 2, 2, 3497, 3498, 7, 75, 2, 2, 3498, 3499, 7, 80, 2, 2, 3499, 3500, 7, 86, 2, 2, 3500, 366, 3, 2, 2, 2, 3501, 3502, 7, 75, 2, 2, 3502, 3503, 7, 80, 2, 2, 3503, 3504, 7, 86, 2, 2, 3504, 3505, 7, 51, 2, 2, 3505, 368, 3, 2, 2, 2, 3506, 3507, 7, 75, 2, 2, 3507, 3508, 7, 80, 2, 2, 3508, 3509, 7, 86, 2, 2, 3509, 3510, 7, 52, 2, 2, 3510, 370, 3, 2, 2, 2, 3511, 3512, 7, 75, 2, 2, 3512, 3513, 7, 80, 2, 2, 3513, 3514, 7, 86, 2, 2, 3514, 3515, 7, 53, 2, 2, 3515, 372, 3, 2, 2, 2, 3516, 3517, 7, 75, 2, 2, 3517, 3518, 7, 80, 2, 2, 3518, 3519, 7, 86, 2, 2, 3519, 3520, 7, 54, 2, 2, 3520, 374, 3, 2, 2, 2, 3521, 3522, 7, 75, 2, 2, 3522, 3523, 7, 80, 2, 2, 3523, 3524, 7, 86, 2, 2, 3524, 3525, 7, 58, 2, 2, 3525, 376, 3, 2, 2, 2, 3526, 3527, 7, 75, 2, 2, 3527, 3528, 7, 80, 2, 2, 3528, 3529, 7, 86, 2, 2, 3529, 3530, 7, 71, 2, 2, 3530, 3531, 7, 73, 2, 2, 3531, 3532, 7, 71, 2, 2, 3532, 3533, 7, 84, 2, 2, 3533, 378, 3, 2, 2, 2, 3534, 3535, 7, 68, 2, 2, 3535, 3536, 7, 75, 2, 2, 3536, 3537, 7, 73, 2, 2, 3537, 3538, 7, 75, 2, 2, 3538, 3539, 7, 80, 2, 2, 3539, 3540, 7, 86, 2, 2, 3540, 380, 3, 2, 2, 2, 3541, 3542, 7, 84, 2, 2, 3542, 3543, 7, 71, 2, 2, 3543, 3544, 7, 67, 2, 2, 3544, 3545, 7, 78, 2, 2, 3545, 382, 3, 2, 2, 2, 3546, 3547, 7, 70, 2, 2, 3547, 3548, 7, 81, 2, 2, 3548, 3549, 7, 87, 2, 2, 3549, 3550, 7, 68, 2, 2, 3550, 3551, 7, 78, 2, 2, 3551, 3552, 7, 71, 2, 2, 3552, 384, 3, 2, 2, 2, 3553, 3554, 7, 82, 2, 2, 3554, 3555, 7, 84, 2, 2, 3555, 3556, 7, 71, 2, 2, 3556, 3557, 7, 69, 2, 2, 3557, 3558, 7, 75, 2, 2, 3558, 3559, 7, 85, 2, 2, 3559, 3560, 7, 75, 2, 2, 3560, 3561, 7, 81, 2, 2, 3561, 3562, 7, 80, 2, 2, 3562, 386, 3, 2, 2, 2, 3563, 3564, 7, 72, 2, 2, 3564, 3565, 7, 78, 2, 2, 3565, 3566, 7, 81, 2, 2, 3566, 3567, 7, 67, 2, 2, 3567, 3568, 7, 86, 2, 2, 3568, 388, 3, 2, 2, 2, 3569, 3570, 7, 72, 2, 2, 3570, 3571, 7, 78, 2, 2, 3571, 3572, 7, 81, 2, 2, 3572, 3573, 7, 67, 2, 2, 3573, 3574, 7, 86, 2, 2, 3574, 3575, 7, 54, 2, 2, 3575, 390, 3, 2, 2, 2, 3576, 3577, 7, 72, 2, 2, 3577, 3578, 7, 78, 2, 2, 3578, 3579, 7, 81, 2, 2, 3579, 3580, 7, 67, 2, 2, 3580, 3581, 7, 86, 2, 2, 3581, 3582, 7, 58, 2, 2, 3582, 392, 3, 2, 2, 2, 3583, 3584, 7, 70, 2, 2, 3584, 3585, 7, 71, 2, 2, 3585, 3586, 7, 69, 2, 2, 3586, 3587, 7, 75, 2, 2, 3587, 3588, 7, 79, 2, 2, 3588, 3589, 7, 67, 2, 2, 3589, 3590, 7, 78, 2, 2, 3590, 394, 3, 2, 2, 2, 3591, 3592, 7, 70, 2, 2, 3592, 3593, 7, 71, 2, 2, 3593, 3594, 7, 69, 2, 2, 3594, 396, 3, 2, 2, 2, 3595, 3596, 7, 80, 2, 2, 3596, 3597, 7, 87, 2, 2, 3597, 3598, 7, 79, 2, 2, 3598, 3599, 7, 71, 2, 2, 3599, 3600, 7, 84, 2, 2, 3600, 3601, 7, 75, 2, 2, 3601, 3602, 7, 69, 2, 2, 3602, 398, 3, 2, 2, 2, 3603, 3604, 7, 70, 2, 2, 3604, 3605, 7, 67, 2, 2, 3605, 3606, 7, 86, 2, 2, 3606, 3607, 7, 71, 2, 2, 3607, 400, 3, 2, 2, 2, 3608, 3609, 7, 86, 2, 2, 3609, 3610, 7, 75, 2, 2, 3610, 3611, 7, 79, 2, 2, 3611, 3612, 7, 71, 2, 2, 3612, 402, 3, 2, 2, 2, 3613, 3614, 7, 86, 2, 2, 3614, 3615, 7, 75, 2, 2, 3615, 3616, 7, 79, 2, 2, 3616, 3617, 7, 71, 2, 2, 3617, 3618, 7, 85, 2, 2, 3618, 3619, 7, 86, 2, 2, 3619, 3620, 7, 67, 2, 2, 3620, 3621, 7, 79, 2, 2, 3621, 3622, 7, 82, 2, 2, 3622, 404, 3, 2, 2, 2, 3623, 3624, 7, 70, 2, 2, 3624, 3625, 7, 67, 2, 2, 3625, 3626, 7, 86, 2, 2, 3626, 3627, 7, 71, 2, 2, 3627, 3628, 7, 86, 2, 2, 3628, 3629, 7, 75, 2, 2, 3629, 3630, 7, 79, 2, 2, 3630, 3631, 7, 71, 2, 2, 3631, 406, 3, 2, 2, 2, 3632, 3633, 7, 91, 2, 2, 3633, 3634, 7, 71, 2, 2, 3634, 3635, 7, 67, 2, 2, 3635, 3636, 7, 84, 2, 2, 3636, 408, 3, 2, 2, 2, 3637, 3638, 7, 69, 2, 2, 3638, 3639, 7, 74, 2, 2, 3639, 3640, 7, 67, 2, 2, 3640, 3641, 7, 84, 2, 2, 3641, 410, 3, 2, 2, 2, 3642, 3643, 7, 88, 2, 2, 3643, 3644, 7, 67, 2, 2, 3644, 3645, 7, 84, 2, 2, 3645, 3646, 7, 69, 2, 2, 3646, 3647, 7, 74, 2, 2, 3647, 3648, 7, 67, 2, 2, 3648, 3649, 7, 84, 2, 2, 3649, 412, 3, 2, 2, 2, 3650, 3651, 7, 80, 2, 2, 3651, 3652, 7, 88, 2, 2, 3652, 3653, 7, 67, 2, 2, 3653, 3654, 7, 84, 2, 2, 3654, 3655, 7, 69, 2, 2, 3655, 3656, 7, 74, 2, 2, 3656, 3657, 7, 67, 2, 2, 3657, 3658, 7, 84, 2, 2, 3658, 414, 3, 2, 2, 2, 3659, 3660, 7, 80, 2, 2, 3660, 3661, 7, 67, 2, 2, 3661, 3662, 7, 86, 2, 2, 3662, 3663, 7, 75, 2, 2, 3663, 3664, 7, 81, 2, 2, 3664, 3665, 7, 80, 2, 2, 3665, 3666, 7, 67, 2, 2, 3666, 3667, 7, 78, 2, 2, 3667, 416, 3, 2, 2, 2, 3668, 3669, 7, 68, 2, 2, 3669, 3670, 7, 75, 2, 2, 3670, 3671, 7, 80, 2, 2, 3671, 3672, 7, 67, 2, 2, 3672, 3673, 7, 84, 2, 2, 3673, 3674, 7, 91, 2, 2, 3674, 418, 3, 2, 2, 2, 3675, 3676, 7, 88, 2, 2, 3676, 3677, 7, 67, 2, 2, 3677, 3678, 7, 84, 2, 2, 3678, 3679, 7, 68, 2, 2, 3679, 3680, 7, 75, 2, 2, 3680, 3681, 7, 80, 2, 2, 3681, 3682, 7, 67, 2, 2, 3682, 3683, 7, 84, 2, 2, 3683, 3684, 7, 91, 2, 2, 3684, 420, 3, 2, 2, 2, 3685, 3686, 7, 86, 2, 2, 3686, 3687, 7, 75, 2, 2, 3687, 3688, 7, 80, 2, 2, 3688, 3689, 7, 91, 2, 2, 3689, 3690, 7, 68, 2, 2, 3690, 3691, 7, 78, 2, 2, 3691, 3692, 7, 81, 2, 2, 3692, 3693, 7, 68, 2, 2, 3693, 422, 3, 2, 2, 2, 3694, 3695, 7, 68, 2, 2, 3695, 3696, 7, 78, 2, 2, 3696, 3697, 7, 81, 2, 2, 3697, 3698, 7, 68, 2, 2, 3698, 424, 3, 2, 2, 2, 3699, 3700, 7, 79, 2, 2, 3700, 3701, 7, 71, 2, 2, 3701, 3702, 7, 70, 2, 2, 3702, 3703, 7, 75, 2, 2, 3703, 3704, 7, 87, 2, 2, 3704, 3705, 7, 79, 2, 2, 3705, 3706, 7, 68, 2, 2, 3706, 3707, 7, 78, 2, 2, 3707, 3708, 7, 81, 2, 2, 3708, 3709, 7, 68, 2, 2, 3709, 426, 3, 2, 2, 2, 3710, 3711, 7, 78, 2, 2, 3711, 3712, 7, 81, 2, 2, 3712, 3713, 7, 80, 2, 2, 3713, 3714, 7, 73, 2, 2, 3714, 428, 3, 2, 2, 2, 3715, 3716, 7, 78, 2, 2, 3716, 3717, 7, 81, 2, 2, 3717, 3718, 7, 80, 2, 2, 3718, 3719, 7, 73, 2, 2, 3719, 3720, 7, 68, 2, 2, 3720, 3721, 7, 78, 2, 2, 3721, 3722, 7, 81, 2, 2, 3722, 3723, 7, 68, 2, 2, 3723, 430, 3, 2, 2, 2, 3724, 3725, 7, 86, 2, 2, 3725, 3726, 7, 75, 2, 2, 3726, 3727, 7, 80, 2, 2, 3727, 3728, 7, 91, 2, 2, 3728, 3729, 7, 86, 2, 2, 3729, 3730, 7, 71, 2, 2, 3730, 3731, 7, 90, 2, 2, 3731, 3732, 7, 86, 2, 2, 3732, 432, 3, 2, 2, 2, 3733, 3734, 7, 86, 2, 2, 3734, 3735, 7, 71, 2, 2, 3735, 3736, 7, 90, 2, 2, 3736, 3737, 7, 86, 2, 2, 3737, 434, 3, 2, 2, 2, 3738, 3739, 7, 79, 2, 2, 3739, 3740, 7, 71, 2, 2, 3740, 3741, 7, 70, 2, 2, 3741, 3742, 7, 75, 2, 2, 3742, 3743, 7, 87, 2, 2, 3743, 3744, 7, 79, 2, 2, 3744, 3745, 7, 86, 2, 2, 3745, 3746, 7, 71, 2, 2, 3746, 3747, 7, 90, 2, 2, 3747, 3748, 7, 86, 2, 2, 3748, 436, 3, 2, 2, 2, 3749, 3750, 7, 78, 2, 2, 3750, 3751, 7, 81, 2, 2, 3751, 3752, 7, 80, 2, 2, 3752, 3753, 7, 73, 2, 2, 3753, 3754, 7, 86, 2, 2, 3754, 3755, 7, 71, 2, 2, 3755, 3756, 7, 90, 2, 2, 3756, 3757, 7, 86, 2, 2, 3757, 438, 3, 2, 2, 2, 3758, 3759, 7, 71, 2, 2, 3759, 3760, 7, 80, 2, 2, 3760, 3761, 7, 87, 2, 2, 3761, 3762, 7, 79, 2, 2, 3762, 440, 3, 2, 2, 2, 3763, 3764, 7, 88, 2, 2, 3764, 3765, 7, 67, 2, 2, 3765, 3766, 7, 84, 2, 2, 3766, 3767, 7, 91, 2, 2, 3767, 3768, 7, 75, 2, 2, 3768, 3769, 7, 80, 2, 2, 3769, 3770, 7, 73, 2, 2, 3770, 442, 3, 2, 2, 2, 3771, 3772, 7, 85, 2, 2, 3772, 3773, 7, 71, 2, 2, 3773, 3774, 7, 84, 2, 2, 3774, 3775, 7, 75, 2, 2, 3775, 3776, 7, 67, 2, 2, 3776, 3777, 7, 78, 2, 2, 3777, 444, 3, 2, 2, 2, 3778, 3779, 7, 91, 2, 2, 3779, 3780, 7, 71, 2, 2, 3780, 3781, 7, 67, 2, 2, 3781, 3782, 7, 84, 2, 2, 3782, 3783, 7, 97, 2, 2, 3783, 3784, 7, 79, 2, 2, 3784, 3785, 7, 81, 2, 2, 3785, 3786, 7, 80, 2, 2, 3786, 3787, 7, 86, 2, 2, 3787, 3788, 7, 74, 2, 2, 3788, 446, 3, 2, 2, 2, 3789, 3790, 7, 70, 2, 2, 3790, 3791, 7, 67, 2, 2, 3791, 3792, 7, 91, 2, 2, 3792, 3793, 7, 97, 2, 2, 3793, 3794, 7, 74, 2, 2, 3794, 3795, 7, 81, 2, 2, 3795, 3796, 7, 87, 2, 2, 3796, 3797, 7, 84, 2, 2, 3797, 448, 3, 2, 2, 2, 3798, 3799, 7, 70, 2, 2, 3799, 3800, 7, 67, 2, 2, 3800, 3801, 7, 91, 2, 2, 3801, 3802, 7, 97, 2, 2, 3802, 3803, 7, 79, 2, 2, 3803, 3804, 7, 75, 2, 2, 3804, 3805, 7, 80, 2, 2, 3805, 3806, 7, 87, 2, 2, 3806, 3807, 7, 86, 2, 2, 3807, 3808, 7, 71, 2, 2, 3808, 450, 3, 2, 2, 2, 3809, 3810, 7, 70, 2, 2, 3810, 3811, 7, 67, 2, 2, 3811, 3812, 7, 91, 2, 2, 3812, 3813, 7, 97, 2, 2, 3813, 3814, 7, 85, 2, 2, 3814, 3815, 7, 71, 2, 2, 3815, 3816, 7, 69, 2, 2, 3816, 3817, 7, 81, 2, 2, 3817, 3818, 7, 80, 2, 2, 3818, 3819, 7, 70, 2, 2, 3819, 452, 3, 2, 2, 2, 3820, 3821, 7, 74, 2, 2, 3821, 3822, 7, 81, 2, 2, 3822, 3823, 7, 87, 2, 2, 3823, 3824, 7, 84, 2, 2, 3824, 3825, 7, 97, 2, 2, 3825, 3826, 7, 79, 2, 2, 3826, 3827, 7, 75, 2, 2, 3827, 3828, 7, 80, 2, 2, 3828, 3829, 7, 87, 2, 2, 3829, 3830, 7, 86, 2, 2, 3830, 3831, 7, 71, 2, 2, 3831, 454, 3, 2, 2, 2, 3832, 3833, 7, 74, 2, 2, 3833, 3834, 7, 81, 2, 2, 3834, 3835, 7, 87, 2, 2, 3835, 3836, 7, 84, 2, 2, 3836, 3837, 7, 97, 2, 2, 3837, 3838, 7, 85, 2, 2, 3838, 3839, 7, 71, 2, 2, 3839, 3840, 7, 69, 2, 2, 3840, 3841, 7, 81, 2, 2, 3841, 3842, 7, 80, 2, 2, 3842, 3843, 7, 70, 2, 2, 3843, 456, 3, 2, 2, 2, 3844, 3845, 7, 79, 2, 2, 3845, 3846, 7, 75, 2, 2, 3846, 3847, 7, 80, 2, 2, 3847, 3848, 7, 87, 2, 2, 3848, 3849, 7, 86, 2, 2, 3849, 3850, 7, 71, 2, 2, 3850, 3851, 7, 97, 2, 2, 3851, 3852, 7, 85, 2, 2, 3852, 3853, 7, 71, 2, 2, 3853, 3854, 7, 69, 2, 2, 3854, 3855, 7, 81, 2, 2, 3855, 3856, 7, 80, 2, 2, 3856, 3857, 7, 70, 2, 2, 3857, 458, 3, 2, 2, 2, 3858, 3859, 7, 85, 2, 2, 3859, 3860, 7, 71, 2, 2, 3860, 3861, 7, 69, 2, 2, 3861, 3862, 7, 81, 2, 2, 3862, 3863, 7, 80, 2, 2, 3863, 3864, 7, 70, 2, 2, 3864, 3865, 7, 97, 2, 2, 3865, 3866, 7, 79, 2, 2, 3866, 3867, 7, 75, 2, 2, 3867, 3868, 7, 69, 2, 2, 3868, 3869, 7, 84, 2, 2, 3869, 3870, 7, 81, 2, 2, 3870, 3871, 7, 85, 2, 2, 3871, 3872, 7, 71, 2, 2, 3872, 3873, 7, 69, 2, 2, 3873, 3874, 7, 81, 2, 2, 3874, 3875, 7, 80, 2, 2, 3875, 3876, 7, 70, 2, 2, 3876, 460, 3, 2, 2, 2, 3877, 3878, 7, 79, 2, 2, 3878, 3879, 7, 75, 2, 2, 3879, 3880, 7, 80, 2, 2, 3880, 3881, 7, 87, 2, 2, 3881, 3882, 7, 86, 2, 2, 3882, 3883, 7, 71, 2, 2, 3883, 3884, 7, 97, 2, 2, 3884, 3885, 7, 79, 2, 2, 3885, 3886, 7, 75, 2, 2, 3886, 3887, 7, 69, 2, 2, 3887, 3888, 7, 84, 2, 2, 3888, 3889, 7, 81, 2, 2, 3889, 3890, 7, 85, 2, 2, 3890, 3891, 7, 71, 2, 2, 3891, 3892, 7, 69, 2, 2, 3892, 3893, 7, 81, 2, 2, 3893, 3894, 7, 80, 2, 2, 3894, 3895, 7, 70, 2, 2, 3895, 462, 3, 2, 2, 2, 3896, 3897, 7, 74, 2, 2, 3897, 3898, 7, 81, 2, 2, 3898, 3899, 7, 87, 2, 2, 3899, 3900, 7, 84, 2, 2, 3900, 3901, 7, 97, 2, 2, 3901, 3902, 7, 79, 2, 2, 3902, 3903, 7, 75, 2, 2, 3903, 3904, 7, 69, 2, 2, 3904, 3905, 7, 84, 2, 2, 3905, 3906, 7, 81, 2, 2, 3906, 3907, 7, 85, 2, 2, 3907, 3908, 7, 71, 2, 2, 3908, 3909, 7, 69, 2, 2, 3909, 3910, 7, 81, 2, 2, 3910, 3911, 7, 80, 2, 2, 3911, 3912, 7, 70, 2, 2, 3912, 464, 3, 2, 2, 2, 3913, 3914, 7, 70, 2, 2, 3914, 3915, 7, 67, 2, 2, 3915, 3916, 7, 91, 2, 2, 3916, 3917, 7, 97, 2, 2, 3917, 3918, 7, 79, 2, 2, 3918, 3919, 7, 75, 2, 2, 3919, 3920, 7, 69, 2, 2, 3920, 3921, 7, 84, 2, 2, 3921, 3922, 7, 81, 2, 2, 3922, 3923, 7, 85, 2, 2, 3923, 3924, 7, 71, 2, 2, 3924, 3925, 7, 69, 2, 2, 3925, 3926, 7, 81, 2, 2, 3926, 3927, 7, 80, 2, 2, 3927, 3928, 7, 70, 2, 2, 3928, 466, 3, 2, 2, 2, 3929, 3930, 7, 76, 2, 2, 3930, 3931, 7, 85, 2, 2, 3931, 3932, 7, 81, 2, 2, 3932, 3933, 7, 80, 2, 2, 3933, 3934, 7, 97, 2, 2, 3934, 3935, 7, 88, 2, 2, 3935, 3936, 7, 67, 2, 2, 3936, 3937, 7, 78, 2, 2, 3937, 3938, 7, 75, 2, 2, 3938, 3939, 7, 70, 2, 2, 3939, 468, 3, 2, 2, 2, 3940, 3941, 7, 76, 2, 2, 3941, 3942, 7, 85, 2, 2, 3942, 3943, 7, 81, 2, 2, 3943, 3944, 7, 80, 2, 2, 3944, 3945, 7, 97, 2, 2, 3945, 3946, 7, 85, 2, 2, 3946, 3947, 7, 69, 2, 2, 3947, 3948, 7, 74, 2, 2, 3948, 3949, 7, 71, 2, 2, 3949, 3950, 7, 79, 2, 2, 3950, 3951, 7, 67, 2, 2, 3951, 3952, 7, 97, 2, 2, 3952, 3953, 7, 88, 2, 2, 3953, 3954, 7, 67, 2, 2, 3954, 3955, 7, 78, 2, 2, 3955, 3956, 7, 75, 2, 2, 3956, 3957, 7, 70, 2, 2, 3957, 470, 3, 2, 2, 2, 3958, 3959, 7, 67, 2, 2, 3959, 3960, 7, 88, 2, 2, 3960, 3961, 7, 73, 2, 2, 3961, 472, 3, 2, 2, 2, 3962, 3963, 7, 68, 2, 2, 3963, 3964, 7, 75, 2, 2, 3964, 3965, 7, 86, 2, 2, 3965, 3966, 7, 97, 2, 2, 3966, 3967, 7, 67, 2, 2, 3967, 3968, 7, 80, 2, 2, 3968, 3969, 7, 70, 2, 2, 3969, 474, 3, 2, 2, 2, 3970, 3971, 7, 68, 2, 2, 3971, 3972, 7, 75, 2, 2, 3972, 3973, 7, 86, 2, 2, 3973, 3974, 7, 97, 2, 2, 3974, 3975, 7, 81, 2, 2, 3975, 3976, 7, 84, 2, 2, 3976, 476, 3, 2, 2, 2, 3977, 3978, 7, 68, 2, 2, 3978, 3979, 7, 75, 2, 2, 3979, 3980, 7, 86, 2, 2, 3980, 3981, 7, 97, 2, 2, 3981, 3982, 7, 90, 2, 2, 3982, 3983, 7, 81, 2, 2, 3983, 3984, 7, 84, 2, 2, 3984, 478, 3, 2, 2, 2, 3985, 3986, 7, 69, 2, 2, 3986, 3987, 7, 81, 2, 2, 3987, 3988, 7, 87, 2, 2, 3988, 3989, 7, 80, 2, 2, 3989, 3990, 7, 86, 2, 2, 3990, 480, 3, 2, 2, 2, 3991, 3992, 7, 73, 2, 2, 3992, 3993, 7, 84, 2, 2, 3993, 3994, 7, 81, 2, 2, 3994, 3995, 7, 87, 2, 2, 3995, 3996, 7, 82, 2, 2, 3996, 3997, 7, 97, 2, 2, 3997, 3998, 7, 69, 2, 2, 3998, 3999, 7, 81, 2, 2, 3999, 4000, 7, 80, 2, 2, 4000, 4001, 7, 69, 2, 2, 4001, 4002, 7, 67, 2, 2, 4002, 4003, 7, 86, 2, 2, 4003, 482, 3, 2, 2, 2, 4004, 4005, 7, 79, 2, 2, 4005, 4006, 7, 67, 2, 2, 4006, 4007, 7, 90, 2, 2, 4007, 484, 3, 2, 2, 2, 4008, 4009, 7, 79, 2, 2, 4009, 4010, 7, 75, 2, 2, 4010, 4011, 7, 80, 2, 2, 4011, 486, 3, 2, 2, 2, 4012, 4013, 7, 85, 2, 2, 4013, 4014, 7, 86, 2, 2, 4014, 4015, 7, 70, 2, 2, 4015, 488, 3, 2, 2, 2, 4016, 4017, 7, 85, 2, 2, 4017, 4018, 7, 86, 2, 2, 4018, 4019, 7, 70, 2, 2, 4019, 4020, 7, 70, 2, 2, 4020, 4021, 7, 71, 2, 2, 4021, 4022, 7, 88, 2, 2, 4022, 490, 3, 2, 2, 2, 4023, 4024, 7, 85, 2, 2, 4024, 4025, 7, 86, 2, 2, 4025, 4026, 7, 70, 2, 2, 4026, 4027, 7, 70, 2, 2, 4027, 4028, 7, 71, 2, 2, 4028, 4029, 7, 88, 2, 2, 4029, 4030, 7, 97, 2, 2, 4030, 4031, 7, 82, 2, 2, 4031, 4032, 7, 81, 2, 2, 4032, 4033, 7, 82, 2, 2, 4033, 492, 3, 2, 2, 2, 4034, 4035, 7, 85, 2, 2, 4035, 4036, 7, 86, 2, 2, 4036, 4037, 7, 70, 2, 2, 4037, 4038, 7, 70, 2, 2, 4038, 4039, 7, 71, 2, 2, 4039, 4040, 7, 88, 2, 2, 4040, 4041, 7, 97, 2, 2, 4041, 4042, 7, 85, 2, 2, 4042, 4043, 7, 67, 2, 2, 4043, 4044, 7, 79, 2, 2, 4044, 4045, 7, 82, 2, 2, 4045, 494, 3, 2, 2, 2, 4046, 4047, 7, 85, 2, 2, 4047, 4048, 7, 87, 2, 2, 4048, 4049, 7, 79, 2, 2, 4049, 496, 3, 2, 2, 2, 4050, 4051, 7, 88, 2, 2, 4051, 4052, 7, 67, 2, 2, 4052, 4053, 7, 84, 2, 2, 4053, 4054, 7, 97, 2, 2, 4054, 4055, 7, 82, 2, 2, 4055, 4056, 7, 81, 2, 2, 4056, 4057, 7, 82, 2, 2, 4057, 498, 3, 2, 2, 2, 4058, 4059, 7, 88, 2, 2, 4059, 4060, 7, 67, 2, 2, 4060, 4061, 7, 84, 2, 2, 4061, 4062, 7, 97, 2, 2, 4062, 4063, 7, 85, 2, 2, 4063, 4064, 7, 67, 2, 2, 4064, 4065, 7, 79, 2, 2, 4065, 4066, 7, 82, 2, 2, 4066, 500, 3, 2, 2, 2, 4067, 4068, 7, 88, 2, 2, 4068, 4069, 7, 67, 2, 2, 4069, 4070, 7, 84, 2, 2, 4070, 4071, 7, 75, 2, 2, 4071, 4072, 7, 67, 2, 2, 4072, 4073, 7, 80, 2, 2, 4073, 4074, 7, 69, 2, 2, 4074, 4075, 7, 71, 2, 2, 4075, 502, 3, 2, 2, 2, 4076, 4077, 7, 69, 2, 2, 4077, 4078, 7, 87, 2, 2, 4078, 4079, 7, 84, 2, 2, 4079, 4080, 7, 84, 2, 2, 4080, 4081, 7, 71, 2, 2, 4081, 4082, 7, 80, 2, 2, 4082, 4083, 7, 86, 2, 2, 4083, 4084, 7, 97, 2, 2, 4084, 4085, 7, 70, 2, 2, 4085, 4086, 7, 67, 2, 2, 4086, 4087, 7, 86, 2, 2, 4087, 4088, 7, 71, 2, 2, 4088, 504, 3, 2, 2, 2, 4089, 4090, 7, 69, 2, 2, 4090, 4091, 7, 87, 2, 2, 4091, 4092, 7, 84, 2, 2, 4092, 4093, 7, 84, 2, 2, 4093, 4094, 7, 71, 2, 2, 4094, 4095, 7, 80, 2, 2, 4095, 4096, 7, 86, 2, 2, 4096, 4097, 7, 97, 2, 2, 4097, 4098, 7, 86, 2, 2, 4098, 4099, 7, 75, 2, 2, 4099, 4100, 7, 79, 2, 2, 4100, 4101, 7, 71, 2, 2, 4101, 506, 3, 2, 2, 2, 4102, 4103, 7, 69, 2, 2, 4103, 4104, 7, 87, 2, 2, 4104, 4105, 7, 84, 2, 2, 4105, 4106, 7, 84, 2, 2, 4106, 4107, 7, 71, 2, 2, 4107, 4108, 7, 80, 2, 2, 4108, 4109, 7, 86, 2, 2, 4109, 4110, 7, 97, 2, 2, 4110, 4111, 7, 86, 2, 2, 4111, 4112, 7, 75, 2, 2, 4112, 4113, 7, 79, 2, 2, 4113, 4114, 7, 71, 2, 2, 4114, 4115, 7, 85, 2, 2, 4115, 4116, 7, 86, 2, 2, 4116, 4117, 7, 67, 2, 2, 4117, 4118, 7, 79, 2, 2, 4118, 4119, 7, 82, 2, 2, 4119, 508, 3, 2, 2, 2, 4120, 4121, 7, 78, 2, 2, 4121, 4122, 7, 81, 2, 2, 4122, 4123, 7, 69, 2, 2, 4123, 4124, 7, 67, 2, 2, 4124, 4125, 7, 78, 2, 2, 4125, 4126, 7, 86, 2, 2, 4126, 4127, 7, 75, 2, 2, 4127, 4128, 7, 79, 2, 2, 4128, 4129, 7, 71, 2, 2, 4129, 510, 3, 2, 2, 2, 4130, 4131, 7, 69, 2, 2, 4131, 4132, 7, 87, 2, 2, 4132, 4133, 7, 84, 2, 2, 4133, 4134, 7, 70, 2, 2, 4134, 4135, 7, 67, 2, 2, 4135, 4136, 7, 86, 2, 2, 4136, 4137, 7, 71, 2, 2, 4137, 512, 3, 2, 2, 2, 4138, 4139, 7, 69, 2, 2, 4139, 4140, 7, 87, 2, 2, 4140, 4141, 7, 84, 2, 2, 4141, 4142, 7, 86, 2, 2, 4142, 4143, 7, 75, 2, 2, 4143, 4144, 7, 79, 2, 2, 4144, 4145, 7, 71, 2, 2, 4145, 514, 3, 2, 2, 2, 4146, 4147, 7, 70, 2, 2, 4147, 4148, 7, 67, 2, 2, 4148, 4149, 7, 86, 2, 2, 4149, 4150, 7, 71, 2, 2, 4150, 4151, 7, 97, 2, 2, 4151, 4152, 7, 67, 2, 2, 4152, 4153, 7, 70, 2, 2, 4153, 4154, 7, 70, 2, 2, 4154, 516, 3, 2, 2, 2, 4155, 4156, 7, 70, 2, 2, 4156, 4157, 7, 67, 2, 2, 4157, 4158, 7, 86, 2, 2, 4158, 4159, 7, 71, 2, 2, 4159, 4160, 7, 97, 2, 2, 4160, 4161, 7, 85, 2, 2, 4161, 4162, 7, 87, 2, 2, 4162, 4163, 7, 68, 2, 2, 4163, 518, 3, 2, 2, 2, 4164, 4165, 7, 71, 2, 2, 4165, 4166, 7, 90, 2, 2, 4166, 4167, 7, 86, 2, 2, 4167, 4168, 7, 84, 2, 2, 4168, 4169, 7, 67, 2, 2, 4169, 4170, 7, 69, 2, 2, 4170, 4171, 7, 86, 2, 2, 4171, 520, 3, 2, 2, 2, 4172, 4173, 7, 78, 2, 2, 4173, 4174, 7, 81, 2, 2, 4174, 4175, 7, 69, 2, 2, 4175, 4176, 7, 67, 2, 2, 4176, 4177, 7, 78, 2, 2, 4177, 4178, 7, 86, 2, 2, 4178, 4179, 7, 75, 2, 2, 4179, 4180, 7, 79, 2, 2, 4180, 4181, 7, 71, 2, 2, 4181, 4182, 7, 85, 2, 2, 4182, 4183, 7, 86, 2, 2, 4183, 4184, 7, 67, 2, 2, 4184, 4185, 7, 79, 2, 2, 4185, 4186, 7, 82, 2, 2, 4186, 522, 3, 2, 2, 2, 4187, 4188, 7, 80, 2, 2, 4188, 4189, 7, 81, 2, 2, 4189, 4190, 7, 89, 2, 2, 4190, 524, 3, 2, 2, 2, 4191, 4192, 7, 82, 2, 2, 4192, 4193, 7, 81, 2, 2, 4193, 4194, 7, 85, 2, 2, 4194, 4195, 7, 75, 2, 2, 4195, 4196, 7, 86, 2, 2, 4196, 4197, 7, 75, 2, 2, 4197, 4198, 7, 81, 2, 2, 4198, 4199, 7, 80, 2, 2, 4199, 526, 3, 2, 2, 2, 4200, 4201, 7, 85, 2, 2, 4201, 4202, 7, 87, 2, 2, 4202, 4203, 7, 68, 2, 2, 4203, 4204, 7, 85, 2, 2, 4204, 4205, 7, 86, 2, 2, 4205, 4206, 7, 84, 2, 2, 4206, 528, 3, 2, 2, 2, 4207, 4208, 7, 85, 2, 2, 4208, 4209, 7, 87, 2, 2, 4209, 4210, 7, 68, 2, 2, 4210, 4211, 7, 85, 2, 2, 4211, 4212, 7, 86, 2, 2, 4212, 4213, 7, 84, 2, 2, 4213, 4214, 7, 75, 2, 2, 4214, 4215, 7, 80, 2, 2, 4215, 4216, 7, 73, 2, 2, 4216, 530, 3, 2, 2, 2, 4217, 4218, 7, 85, 2, 2, 4218, 4219, 7, 91, 2, 2, 4219, 4220, 7, 85, 2, 2, 4220, 4221, 7, 70, 2, 2, 4221, 4222, 7, 67, 2, 2, 4222, 4223, 7, 86, 2, 2, 4223, 4224, 7, 71, 2, 2, 4224, 532, 3, 2, 2, 2, 4225, 4226, 7, 86, 2, 2, 4226, 4227, 7, 84, 2, 2, 4227, 4228, 7, 75, 2, 2, 4228, 4229, 7, 79, 2, 2, 4229, 534, 3, 2, 2, 2, 4230, 4231, 7, 87, 2, 2, 4231, 4232, 7, 86, 2, 2, 4232, 4233, 7, 69, 2, 2, 4233, 4234, 7, 97, 2, 2, 4234, 4235, 7, 70, 2, 2, 4235, 4236, 7, 67, 2, 2, 4236, 4237, 7, 86, 2, 2, 4237, 4238, 7, 71, 2, 2, 4238, 536, 3, 2, 2, 2, 4239, 4240, 7, 87, 2, 2, 4240, 4241, 7, 86, 2, 2, 4241, 4242, 7, 69, 2, 2, 4242, 4243, 7, 97, 2, 2, 4243, 4244, 7, 86, 2, 2, 4244, 4245, 7, 75, 2, 2, 4245, 4246, 7, 79, 2, 2, 4246, 4247, 7, 71, 2, 2, 4247, 538, 3, 2, 2, 2, 4248, 4249, 7, 87, 2, 2, 4249, 4250, 7, 86, 2, 2, 4250, 4251, 7, 69, 2, 2, 4251, 4252, 7, 97, 2, 2, 4252, 4253, 7, 86, 2, 2, 4253, 4254, 7, 75, 2, 2, 4254, 4255, 7, 79, 2, 2, 4255, 4256, 7, 71, 2, 2, 4256, 4257, 7, 85, 2, 2, 4257, 4258, 7, 86, 2, 2, 4258, 4259, 7, 67, 2, 2, 4259, 4260, 7, 79, 2, 2, 4260, 4261, 7, 82, 2, 2, 4261, 540, 3, 2, 2, 2, 4262, 4263, 7, 67, 2, 2, 4263, 4264, 7, 69, 2, 2, 4264, 4265, 7, 69, 2, 2, 4265, 4266, 7, 81, 2, 2, 4266, 4267, 7, 87, 2, 2, 4267, 4268, 7, 80, 2, 2, 4268, 4269, 7, 86, 2, 2, 4269, 542, 3, 2, 2, 2, 4270, 4271, 7, 67, 2, 2, 4271, 4272, 7, 69, 2, 2, 4272, 4273, 7, 86, 2, 2, 4273, 4274, 7, 75, 2, 2, 4274, 4275, 7, 81, 2, 2, 4275, 4276, 7, 80, 2, 2, 4276, 544, 3, 2, 2, 2, 4277, 4278, 7, 67, 2, 2, 4278, 4279, 7, 72, 2, 2, 4279, 4280, 7, 86, 2, 2, 4280, 4281, 7, 71, 2, 2, 4281, 4282, 7, 84, 2, 2, 4282, 546, 3, 2, 2, 2, 4283, 4284, 7, 67, 2, 2, 4284, 4285, 7, 73, 2, 2, 4285, 4286, 7, 73, 2, 2, 4286, 4287, 7, 84, 2, 2, 4287, 4288, 7, 71, 2, 2, 4288, 4289, 7, 73, 2, 2, 4289, 4290, 7, 67, 2, 2, 4290, 4291, 7, 86, 2, 2, 4291, 4292, 7, 71, 2, 2, 4292, 548, 3, 2, 2, 2, 4293, 4294, 7, 67, 2, 2, 4294, 4295, 7, 78, 2, 2, 4295, 4296, 7, 73, 2, 2, 4296, 4297, 7, 81, 2, 2, 4297, 4298, 7, 84, 2, 2, 4298, 4299, 7, 75, 2, 2, 4299, 4300, 7, 86, 2, 2, 4300, 4301, 7, 74, 2, 2, 4301, 4302, 7, 79, 2, 2, 4302, 550, 3, 2, 2, 2, 4303, 4304, 7, 67, 2, 2, 4304, 4305, 7, 80, 2, 2, 4305, 4306, 7, 91, 2, 2, 4306, 552, 3, 2, 2, 2, 4307, 4308, 7, 67, 2, 2, 4308, 4309, 7, 86, 2, 2, 4309, 554, 3, 2, 2, 2, 4310, 4311, 7, 67, 2, 2, 4311, 4312, 7, 87, 2, 2, 4312, 4313, 7, 86, 2, 2, 4313, 4314, 7, 74, 2, 2, 4314, 4315, 7, 81, 2, 2, 4315, 4316, 7, 84, 2, 2, 4316, 4317, 7, 85, 2, 2, 4317, 556, 3, 2, 2, 2, 4318, 4319, 7, 67, 2, 2, 4319, 4320, 7, 87, 2, 2, 4320, 4321, 7, 86, 2, 2, 4321, 4322, 7, 81, 2, 2, 4322, 4323, 7, 69, 2, 2, 4323, 4324, 7, 81, 2, 2, 4324, 4325, 7, 79, 2, 2, 4325, 4326, 7, 79, 2, 2, 4326, 4327, 7, 75, 2, 2, 4327, 4328, 7, 86, 2, 2, 4328, 558, 3, 2, 2, 2, 4329, 4330, 7, 67, 2, 2, 4330, 4331, 7, 87, 2, 2, 4331, 4332, 7, 86, 2, 2, 4332, 4333, 7, 81, 2, 2, 4333, 4334, 7, 71, 2, 2, 4334, 4335, 7, 90, 2, 2, 4335, 4336, 7, 86, 2, 2, 4336, 4337, 7, 71, 2, 2, 4337, 4338, 7, 80, 2, 2, 4338, 4339, 7, 70, 2, 2, 4339, 4340, 7, 97, 2, 2, 4340, 4341, 7, 85, 2, 2, 4341, 4342, 7, 75, 2, 2, 4342, 4343, 7, 92, 2, 2, 4343, 4344, 7, 71, 2, 2, 4344, 560, 3, 2, 2, 2, 4345, 4346, 7, 67, 2, 2, 4346, 4347, 7, 87, 2, 2, 4347, 4348, 7, 86, 2, 2, 4348, 4349, 7, 81, 2, 2, 4349, 4350, 7, 97, 2, 2, 4350, 4351, 7, 75, 2, 2, 4351, 4352, 7, 80, 2, 2, 4352, 4353, 7, 69, 2, 2, 4353, 4354, 7, 84, 2, 2, 4354, 4355, 7, 71, 2, 2, 4355, 4356, 7, 79, 2, 2, 4356, 4357, 7, 71, 2, 2, 4357, 4358, 7, 80, 2, 2, 4358, 4359, 7, 86, 2, 2, 4359, 562, 3, 2, 2, 2, 4360, 4361, 7, 67, 2, 2, 4361, 4362, 7, 88, 2, 2, 4362, 4363, 7, 73, 2, 2, 4363, 4364, 7, 97, 2, 2, 4364, 4365, 7, 84, 2, 2, 4365, 4366, 7, 81, 2, 2, 4366, 4367, 7, 89, 2, 2, 4367, 4368, 7, 97, 2, 2, 4368, 4369, 7, 78, 2, 2, 4369, 4370, 7, 71, 2, 2, 4370, 4371, 7, 80, 2, 2, 4371, 4372, 7, 73, 2, 2, 4372, 4373, 7, 86, 2, 2, 4373, 4374, 7, 74, 2, 2, 4374, 564, 3, 2, 2, 2, 4375, 4376, 7, 68, 2, 2, 4376, 4377, 7, 71, 2, 2, 4377, 4378, 7, 73, 2, 2, 4378, 4379, 7, 75, 2, 2, 4379, 4380, 7, 80, 2, 2, 4380, 566, 3, 2, 2, 2, 4381, 4382, 7, 68, 2, 2, 4382, 4383, 7, 75, 2, 2, 4383, 4384, 7, 80, 2, 2, 4384, 4385, 7, 78, 2, 2, 4385, 4386, 7, 81, 2, 2, 4386, 4387, 7, 73, 2, 2, 4387, 568, 3, 2, 2, 2, 4388, 4389, 7, 68, 2, 2, 4389, 4390, 7, 75, 2, 2, 4390, 4391, 7, 86, 2, 2, 4391, 570, 3, 2, 2, 2, 4392, 4393, 7, 68, 2, 2, 4393, 4394, 7, 78, 2, 2, 4394, 4395, 7, 81, 2, 2, 4395, 4396, 7, 69, 2, 2, 4396, 4397, 7, 77, 2, 2, 4397, 572, 3, 2, 2, 2, 4398, 4399, 7, 68, 2, 2, 4399, 4400, 7, 81, 2, 2, 4400, 4401, 7, 81, 2, 2, 4401, 4402, 7, 78, 2, 2, 4402, 574, 3, 2, 2, 2, 4403, 4404, 7, 68, 2, 2, 4404, 4405, 7, 81, 2, 2, 4405, 4406, 7, 81, 2, 2, 4406, 4407, 7, 78, 2, 2, 4407, 4408, 7, 71, 2, 2, 4408, 4409, 7, 67, 2, 2, 4409, 4410, 7, 80, 2, 2, 4410, 576, 3, 2, 2, 2, 4411, 4412, 7, 68, 2, 2, 4412, 4413, 7, 86, 2, 2, 4413, 4414, 7, 84, 2, 2, 4414, 4415, 7, 71, 2, 2, 4415, 4416, 7, 71, 2, 2, 4416, 578, 3, 2, 2, 2, 4417, 4418, 7, 69, 2, 2, 4418, 4419, 7, 67, 2, 2, 4419, 4420, 7, 69, 2, 2, 4420, 4421, 7, 74, 2, 2, 4421, 4422, 7, 71, 2, 2, 4422, 580, 3, 2, 2, 2, 4423, 4424, 7, 69, 2, 2, 4424, 4425, 7, 67, 2, 2, 4425, 4426, 7, 85, 2, 2, 4426, 4427, 7, 69, 2, 2, 4427, 4428, 7, 67, 2, 2, 4428, 4429, 7, 70, 2, 2, 4429, 4430, 7, 71, 2, 2, 4430, 4431, 7, 70, 2, 2, 4431, 582, 3, 2, 2, 2, 4432, 4433, 7, 69, 2, 2, 4433, 4434, 7, 74, 2, 2, 4434, 4435, 7, 67, 2, 2, 4435, 4436, 7, 75, 2, 2, 4436, 4437, 7, 80, 2, 2, 4437, 584, 3, 2, 2, 2, 4438, 4439, 7, 69, 2, 2, 4439, 4440, 7, 74, 2, 2, 4440, 4441, 7, 67, 2, 2, 4441, 4442, 7, 80, 2, 2, 4442, 4443, 7, 73, 2, 2, 4443, 4444, 7, 71, 2, 2, 4444, 4445, 7, 70, 2, 2, 4445, 586, 3, 2, 2, 2, 4446, 4447, 7, 69, 2, 2, 4447, 4448, 7, 74, 2, 2, 4448, 4449, 7, 67, 2, 2, 4449, 4450, 7, 80, 2, 2, 4450, 4451, 7, 80, 2, 2, 4451, 4452, 7, 71, 2, 2, 4452, 4453, 7, 78, 2, 2, 4453, 588, 3, 2, 2, 2, 4454, 4455, 7, 69, 2, 2, 4455, 4456, 7, 74, 2, 2, 4456, 4457, 7, 71, 2, 2, 4457, 4458, 7, 69, 2, 2, 4458, 4459, 7, 77, 2, 2, 4459, 4460, 7, 85, 2, 2, 4460, 4461, 7, 87, 2, 2, 4461, 4462, 7, 79, 2, 2, 4462, 590, 3, 2, 2, 2, 4463, 4464, 7, 82, 2, 2, 4464, 4465, 7, 67, 2, 2, 4465, 4466, 7, 73, 2, 2, 4466, 4467, 7, 71, 2, 2, 4467, 4468, 7, 97, 2, 2, 4468, 4469, 7, 69, 2, 2, 4469, 4470, 7, 74, 2, 2, 4470, 4471, 7, 71, 2, 2, 4471, 4472, 7, 69, 2, 2, 4472, 4473, 7, 77, 2, 2, 4473, 4474, 7, 85, 2, 2, 4474, 4475, 7, 87, 2, 2, 4475, 4476, 7, 79, 2, 2, 4476, 592, 3, 2, 2, 2, 4477, 4478, 7, 69, 2, 2, 4478, 4479, 7, 75, 2, 2, 4479, 4480, 7, 82, 2, 2, 4480, 4481, 7, 74, 2, 2, 4481, 4482, 7, 71, 2, 2, 4482, 4483, 7, 84, 2, 2, 4483, 594, 3, 2, 2, 2, 4484, 4485, 7, 69, 2, 2, 4485, 4486, 7, 78, 2, 2, 4486, 4487, 7, 67, 2, 2, 4487, 4488, 7, 85, 2, 2, 4488, 4489, 7, 85, 2, 2, 4489, 4490, 7, 97, 2, 2, 4490, 4491, 7, 81, 2, 2, 4491, 4492, 7, 84, 2, 2, 4492, 4493, 7, 75, 2, 2, 4493, 4494, 7, 73, 2, 2, 4494, 4495, 7, 75, 2, 2, 4495, 4496, 7, 80, 2, 2, 4496, 596, 3, 2, 2, 2, 4497, 4498, 7, 69, 2, 2, 4498, 4499, 7, 78, 2, 2, 4499, 4500, 7, 75, 2, 2, 4500, 4501, 7, 71, 2, 2, 4501, 4502, 7, 80, 2, 2, 4502, 4503, 7, 86, 2, 2, 4503, 598, 3, 2, 2, 2, 4504, 4505, 7, 69, 2, 2, 4505, 4506, 7, 78, 2, 2, 4506, 4507, 7, 81, 2, 2, 4507, 4508, 7, 85, 2, 2, 4508, 4509, 7, 71, 2, 2, 4509, 600, 3, 2, 2, 2, 4510, 4511, 7, 69, 2, 2, 4511, 4512, 7, 81, 2, 2, 4512, 4513, 7, 67, 2, 2, 4513, 4514, 7, 78, 2, 2, 4514, 4515, 7, 71, 2, 2, 4515, 4516, 7, 85, 2, 2, 4516, 4517, 7, 69, 2, 2, 4517, 4518, 7, 71, 2, 2, 4518, 602, 3, 2, 2, 2, 4519, 4520, 7, 69, 2, 2, 4520, 4521, 7, 81, 2, 2, 4521, 4522, 7, 70, 2, 2, 4522, 4523, 7, 71, 2, 2, 4523, 604, 3, 2, 2, 2, 4524, 4525, 7, 69, 2, 2, 4525, 4526, 7, 81, 2, 2, 4526, 4527, 7, 78, 2, 2, 4527, 4528, 7, 87, 2, 2, 4528, 4529, 7, 79, 2, 2, 4529, 4530, 7, 80, 2, 2, 4530, 4531, 7, 85, 2, 2, 4531, 606, 3, 2, 2, 2, 4532, 4533, 7, 69, 2, 2, 4533, 4534, 7, 81, 2, 2, 4534, 4535, 7, 78, 2, 2, 4535, 4536, 7, 87, 2, 2, 4536, 4537, 7, 79, 2, 2, 4537, 4538, 7, 80, 2, 2, 4538, 4539, 7, 97, 2, 2, 4539, 4540, 7, 72, 2, 2, 4540, 4541, 7, 81, 2, 2, 4541, 4542, 7, 84, 2, 2, 4542, 4543, 7, 79, 2, 2, 4543, 4544, 7, 67, 2, 2, 4544, 4545, 7, 86, 2, 2, 4545, 608, 3, 2, 2, 2, 4546, 4547, 7, 69, 2, 2, 4547, 4548, 7, 81, 2, 2, 4548, 4549, 7, 78, 2, 2, 4549, 4550, 7, 87, 2, 2, 4550, 4551, 7, 79, 2, 2, 4551, 4552, 7, 80, 2, 2, 4552, 4553, 7, 97, 2, 2, 4553, 4554, 7, 80, 2, 2, 4554, 4555, 7, 67, 2, 2, 4555, 4556, 7, 79, 2, 2, 4556, 4557, 7, 71, 2, 2, 4557, 610, 3, 2, 2, 2, 4558, 4559, 7, 69, 2, 2, 4559, 4560, 7, 81, 2, 2, 4560, 4561, 7, 79, 2, 2, 4561, 4562, 7, 79, 2, 2, 4562, 4563, 7, 71, 2, 2, 4563, 4564, 7, 80, 2, 2, 4564, 4565, 7, 86, 2, 2, 4565, 612, 3, 2, 2, 2, 4566, 4567, 7, 69, 2, 2, 4567, 4568, 7, 81, 2, 2, 4568, 4569, 7, 79, 2, 2, 4569, 4570, 7, 79, 2, 2, 4570, 4571, 7, 75, 2, 2, 4571, 4572, 7, 86, 2, 2, 4572, 614, 3, 2, 2, 2, 4573, 4574, 7, 69, 2, 2, 4574, 4575, 7, 81, 2, 2, 4575, 4576, 7, 79, 2, 2, 4576, 4577, 7, 82, 2, 2, 4577, 4578, 7, 67, 2, 2, 4578, 4579, 7, 69, 2, 2, 4579, 4580, 7, 86, 2, 2, 4580, 616, 3, 2, 2, 2, 4581, 4582, 7, 69, 2, 2, 4582, 4583, 7, 81, 2, 2, 4583, 4584, 7, 79, 2, 2, 4584, 4585, 7, 82, 2, 2, 4585, 4586, 7, 78, 2, 2, 4586, 4587, 7, 71, 2, 2, 4587, 4588, 7, 86, 2, 2, 4588, 4589, 7, 75, 2, 2, 4589, 4590, 7, 81, 2, 2, 4590, 4591, 7, 80, 2, 2, 4591, 618, 3, 2, 2, 2, 4592, 4593, 7, 69, 2, 2, 4593, 4594, 7, 81, 2, 2, 4594, 4595, 7, 79, 2, 2, 4595, 4596, 7, 82, 2, 2, 4596, 4597, 7, 84, 2, 2, 4597, 4598, 7, 71, 2, 2, 4598, 4599, 7, 85, 2, 2, 4599, 4600, 7, 85, 2, 2, 4600, 4601, 7, 71, 2, 2, 4601, 4602, 7, 70, 2, 2, 4602, 620, 3, 2, 2, 2, 4603, 4604, 7, 69, 2, 2, 4604, 4605, 7, 81, 2, 2, 4605, 4606, 7, 79, 2, 2, 4606, 4607, 7, 82, 2, 2, 4607, 4608, 7, 84, 2, 2, 4608, 4609, 7, 71, 2, 2, 4609, 4610, 7, 85, 2, 2, 4610, 4611, 7, 85, 2, 2, 4611, 4612, 7, 75, 2, 2, 4612, 4613, 7, 81, 2, 2, 4613, 4614, 7, 80, 2, 2, 4614, 622, 3, 2, 2, 2, 4615, 4616, 7, 69, 2, 2, 4616, 4617, 7, 81, 2, 2, 4617, 4618, 7, 80, 2, 2, 4618, 4619, 7, 69, 2, 2, 4619, 4620, 7, 87, 2, 2, 4620, 4621, 7, 84, 2, 2, 4621, 4622, 7, 84, 2, 2, 4622, 4623, 7, 71, 2, 2, 4623, 4624, 7, 80, 2, 2, 4624, 4625, 7, 86, 2, 2, 4625, 624, 3, 2, 2, 2, 4626, 4627, 7, 69, 2, 2, 4627, 4628, 7, 81, 2, 2, 4628, 4629, 7, 80, 2, 2, 4629, 4630, 7, 80, 2, 2, 4630, 4631, 7, 71, 2, 2, 4631, 4632, 7, 69, 2, 2, 4632, 4633, 7, 86, 2, 2, 4633, 4634, 7, 75, 2, 2, 4634, 4635, 7, 81, 2, 2, 4635, 4636, 7, 80, 2, 2, 4636, 626, 3, 2, 2, 2, 4637, 4638, 7, 69, 2, 2, 4638, 4639, 7, 81, 2, 2, 4639, 4640, 7, 80, 2, 2, 4640, 4641, 7, 85, 2, 2, 4641, 4642, 7, 75, 2, 2, 4642, 4643, 7, 85, 2, 2, 4643, 4644, 7, 86, 2, 2, 4644, 4645, 7, 71, 2, 2, 4645, 4646, 7, 80, 2, 2, 4646, 4647, 7, 86, 2, 2, 4647, 628, 3, 2, 2, 2, 4648, 4649, 7, 69, 2, 2, 4649, 4650, 7, 81, 2, 2, 4650, 4651, 7, 80, 2, 2, 4651, 4652, 7, 85, 2, 2, 4652, 4653, 7, 86, 2, 2, 4653, 4654, 7, 84, 2, 2, 4654, 4655, 7, 67, 2, 2, 4655, 4656, 7, 75, 2, 2, 4656, 4657, 7, 80, 2, 2, 4657, 4658, 7, 86, 2, 2, 4658, 4659, 7, 97, 2, 2, 4659, 4660, 7, 69, 2, 2, 4660, 4661, 7, 67, 2, 2, 4661, 4662, 7, 86, 2, 2, 4662, 4663, 7, 67, 2, 2, 4663, 4664, 7, 78, 2, 2, 4664, 4665, 7, 81, 2, 2, 4665, 4666, 7, 73, 2, 2, 4666, 630, 3, 2, 2, 2, 4667, 4668, 7, 69, 2, 2, 4668, 4669, 7, 81, 2, 2, 4669, 4670, 7, 80, 2, 2, 4670, 4671, 7, 85, 2, 2, 4671, 4672, 7, 86, 2, 2, 4672, 4673, 7, 84, 2, 2, 4673, 4674, 7, 67, 2, 2, 4674, 4675, 7, 75, 2, 2, 4675, 4676, 7, 80, 2, 2, 4676, 4677, 7, 86, 2, 2, 4677, 4678, 7, 97, 2, 2, 4678, 4679, 7, 85, 2, 2, 4679, 4680, 7, 69, 2, 2, 4680, 4681, 7, 74, 2, 2, 4681, 4682, 7, 71, 2, 2, 4682, 4683, 7, 79, 2, 2, 4683, 4684, 7, 67, 2, 2, 4684, 632, 3, 2, 2, 2, 4685, 4686, 7, 69, 2, 2, 4686, 4687, 7, 81, 2, 2, 4687, 4688, 7, 80, 2, 2, 4688, 4689, 7, 85, 2, 2, 4689, 4690, 7, 86, 2, 2, 4690, 4691, 7, 84, 2, 2, 4691, 4692, 7, 67, 2, 2, 4692, 4693, 7, 75, 2, 2, 4693, 4694, 7, 80, 2, 2, 4694, 4695, 7, 86, 2, 2, 4695, 4696, 7, 97, 2, 2, 4696, 4697, 7, 80, 2, 2, 4697, 4698, 7, 67, 2, 2, 4698, 4699, 7, 79, 2, 2, 4699, 4700, 7, 71, 2, 2, 4700, 634, 3, 2, 2, 2, 4701, 4702, 7, 69, 2, 2, 4702, 4703, 7, 81, 2, 2, 4703, 4704, 7, 80, 2, 2, 4704, 4705, 7, 86, 2, 2, 4705, 4706, 7, 67, 2, 2, 4706, 4707, 7, 75, 2, 2, 4707, 4708, 7, 80, 2, 2, 4708, 4709, 7, 85, 2, 2, 4709, 636, 3, 2, 2, 2, 4710, 4711, 7, 69, 2, 2, 4711, 4712, 7, 81, 2, 2, 4712, 4713, 7, 80, 2, 2, 4713, 4714, 7, 86, 2, 2, 4714, 4715, 7, 71, 2, 2, 4715, 4716, 7, 90, 2, 2, 4716, 4717, 7, 86, 2, 2, 4717, 638, 3, 2, 2, 2, 4718, 4719, 7, 69, 2, 2, 4719, 4720, 7, 81, 2, 2, 4720, 4721, 7, 80, 2, 2, 4721, 4722, 7, 86, 2, 2, 4722, 4723, 7, 84, 2, 2, 4723, 4724, 7, 75, 2, 2, 4724, 4725, 7, 68, 2, 2, 4725, 4726, 7, 87, 2, 2, 4726, 4727, 7, 86, 2, 2, 4727, 4728, 7, 81, 2, 2, 4728, 4729, 7, 84, 2, 2, 4729, 4730, 7, 85, 2, 2, 4730, 640, 3, 2, 2, 2, 4731, 4732, 7, 69, 2, 2, 4732, 4733, 7, 81, 2, 2, 4733, 4734, 7, 82, 2, 2, 4734, 4735, 7, 91, 2, 2, 4735, 642, 3, 2, 2, 2, 4736, 4737, 7, 69, 2, 2, 4737, 4738, 7, 82, 2, 2, 4738, 4739, 7, 87, 2, 2, 4739, 644, 3, 2, 2, 2, 4740, 4741, 7, 69, 2, 2, 4741, 4742, 7, 87, 2, 2, 4742, 4743, 7, 84, 2, 2, 4743, 4744, 7, 85, 2, 2, 4744, 4745, 7, 81, 2, 2, 4745, 4746, 7, 84, 2, 2, 4746, 4747, 7, 97, 2, 2, 4747, 4748, 7, 80, 2, 2, 4748, 4749, 7, 67, 2, 2, 4749, 4750, 7, 79, 2, 2, 4750, 4751, 7, 71, 2, 2, 4751, 646, 3, 2, 2, 2, 4752, 4753, 7, 70, 2, 2, 4753, 4754, 7, 67, 2, 2, 4754, 4755, 7, 86, 2, 2, 4755, 4756, 7, 67, 2, 2, 4756, 648, 3, 2, 2, 2, 4757, 4758, 7, 70, 2, 2, 4758, 4759, 7, 67, 2, 2, 4759, 4760, 7, 86, 2, 2, 4760, 4761, 7, 67, 2, 2, 4761, 4762, 7, 72, 2, 2, 4762, 4763, 7, 75, 2, 2, 4763, 4764, 7, 78, 2, 2, 4764, 4765, 7, 71, 2, 2, 4765, 650, 3, 2, 2, 2, 4766, 4767, 7, 70, 2, 2, 4767, 4768, 7, 71, 2, 2, 4768, 4769, 7, 67, 2, 2, 4769, 4770, 7, 78, 2, 2, 4770, 4771, 7, 78, 2, 2, 4771, 4772, 7, 81, 2, 2, 4772, 4773, 7, 69, 2, 2, 4773, 4774, 7, 67, 2, 2, 4774, 4775, 7, 86, 2, 2, 4775, 4776, 7, 71, 2, 2, 4776, 652, 3, 2, 2, 2, 4777, 4778, 7, 70, 2, 2, 4778, 4779, 7, 71, 2, 2, 4779, 4780, 7, 72, 2, 2, 4780, 4781, 7, 67, 2, 2, 4781, 4782, 7, 87, 2, 2, 4782, 4783, 7, 78, 2, 2, 4783, 4784, 7, 86, 2, 2, 4784, 4785, 7, 97, 2, 2, 4785, 4786, 7, 67, 2, 2, 4786, 4787, 7, 87, 2, 2, 4787, 4788, 7, 86, 2, 2, 4788, 4789, 7, 74, 2, 2, 4789, 654, 3, 2, 2, 2, 4790, 4791, 7, 70, 2, 2, 4791, 4792, 7, 71, 2, 2, 4792, 4793, 7, 72, 2, 2, 4793, 4794, 7, 75, 2, 2, 4794, 4795, 7, 80, 2, 2, 4795, 4796, 7, 71, 2, 2, 4796, 4797, 7, 84, 2, 2, 4797, 656, 3, 2, 2, 2, 4798, 4799, 7, 70, 2, 2, 4799, 4800, 7, 71, 2, 2, 4800, 4801, 7, 78, 2, 2, 4801, 4802, 7, 67, 2, 2, 4802, 4803, 7, 91, 2, 2, 4803, 4804, 7, 97, 2, 2, 4804, 4805, 7, 77, 2, 2, 4805, 4806, 7, 71, 2, 2, 4806, 4807, 7, 91, 2, 2, 4807, 4808, 7, 97, 2, 2, 4808, 4809, 7, 89, 2, 2, 4809, 4810, 7, 84, 2, 2, 4810, 4811, 7, 75, 2, 2, 4811, 4812, 7, 86, 2, 2, 4812, 4813, 7, 71, 2, 2, 4813, 658, 3, 2, 2, 2, 4814, 4815, 7, 70, 2, 2, 4815, 4816, 7, 71, 2, 2, 4816, 4817, 7, 85, 2, 2, 4817, 4818, 7, 97, 2, 2, 4818, 4819, 7, 77, 2, 2, 4819, 4820, 7, 71, 2, 2, 4820, 4821, 7, 91, 2, 2, 4821, 4822, 7, 97, 2, 2, 4822, 4823, 7, 72, 2, 2, 4823, 4824, 7, 75, 2, 2, 4824, 4825, 7, 78, 2, 2, 4825, 4826, 7, 71, 2, 2, 4826, 660, 3, 2, 2, 2, 4827, 4828, 7, 70, 2, 2, 4828, 4829, 7, 75, 2, 2, 4829, 4830, 7, 84, 2, 2, 4830, 4831, 7, 71, 2, 2, 4831, 4832, 7, 69, 2, 2, 4832, 4833, 7, 86, 2, 2, 4833, 4834, 7, 81, 2, 2, 4834, 4835, 7, 84, 2, 2, 4835, 4836, 7, 91, 2, 2, 4836, 662, 3, 2, 2, 2, 4837, 4838, 7, 70, 2, 2, 4838, 4839, 7, 75, 2, 2, 4839, 4840, 7, 85, 2, 2, 4840, 4841, 7, 67, 2, 2, 4841, 4842, 7, 68, 2, 2, 4842, 4843, 7, 78, 2, 2, 4843, 4844, 7, 71, 2, 2, 4844, 664, 3, 2, 2, 2, 4845, 4846, 7, 70, 2, 2, 4846, 4847, 7, 75, 2, 2, 4847, 4848, 7, 85, 2, 2, 4848, 4849, 7, 69, 2, 2, 4849, 4850, 7, 67, 2, 2, 4850, 4851, 7, 84, 2, 2, 4851, 4852, 7, 70, 2, 2, 4852, 666, 3, 2, 2, 2, 4853, 4854, 7, 70, 2, 2, 4854, 4855, 7, 75, 2, 2, 4855, 4856, 7, 85, 2, 2, 4856, 4857, 7, 77, 2, 2, 4857, 668, 3, 2, 2, 2, 4858, 4859, 7, 70, 2, 2, 4859, 4860, 7, 81, 2, 2, 4860, 670, 3, 2, 2, 2, 4861, 4862, 7, 70, 2, 2, 4862, 4863, 7, 87, 2, 2, 4863, 4864, 7, 79, 2, 2, 4864, 4865, 7, 82, 2, 2, 4865, 4866, 7, 72, 2, 2, 4866, 4867, 7, 75, 2, 2, 4867, 4868, 7, 78, 2, 2, 4868, 4869, 7, 71, 2, 2, 4869, 672, 3, 2, 2, 2, 4870, 4871, 7, 70, 2, 2, 4871, 4872, 7, 87, 2, 2, 4872, 4873, 7, 82, 2, 2, 4873, 4874, 7, 78, 2, 2, 4874, 4875, 7, 75, 2, 2, 4875, 4876, 7, 69, 2, 2, 4876, 4877, 7, 67, 2, 2, 4877, 4878, 7, 86, 2, 2, 4878, 4879, 7, 71, 2, 2, 4879, 674, 3, 2, 2, 2, 4880, 4881, 7, 70, 2, 2, 4881, 4882, 7, 91, 2, 2, 4882, 4883, 7, 80, 2, 2, 4883, 4884, 7, 67, 2, 2, 4884, 4885, 7, 79, 2, 2, 4885, 4886, 7, 75, 2, 2, 4886, 4887, 7, 69, 2, 2, 4887, 676, 3, 2, 2, 2, 4888, 4889, 7, 71, 2, 2, 4889, 4890, 7, 80, 2, 2, 4890, 4891, 7, 67, 2, 2, 4891, 4892, 7, 68, 2, 2, 4892, 4893, 7, 78, 2, 2, 4893, 4894, 7, 71, 2, 2, 4894, 678, 3, 2, 2, 2, 4895, 4896, 7, 71, 2, 2, 4896, 4897, 7, 80, 2, 2, 4897, 4898, 7, 69, 2, 2, 4898, 4899, 7, 84, 2, 2, 4899, 4900, 7, 91, 2, 2, 4900, 4901, 7, 82, 2, 2, 4901, 4902, 7, 86, 2, 2, 4902, 4903, 7, 75, 2, 2, 4903, 4904, 7, 81, 2, 2, 4904, 4905, 7, 80, 2, 2, 4905, 680, 3, 2, 2, 2, 4906, 4907, 7, 71, 2, 2, 4907, 4908, 7, 80, 2, 2, 4908, 4909, 7, 70, 2, 2, 4909, 682, 3, 2, 2, 2, 4910, 4911, 7, 71, 2, 2, 4911, 4912, 7, 80, 2, 2, 4912, 4913, 7, 70, 2, 2, 4913, 4914, 7, 85, 2, 2, 4914, 684, 3, 2, 2, 2, 4915, 4916, 7, 71, 2, 2, 4916, 4917, 7, 80, 2, 2, 4917, 4918, 7, 73, 2, 2, 4918, 4919, 7, 75, 2, 2, 4919, 4920, 7, 80, 2, 2, 4920, 4921, 7, 71, 2, 2, 4921, 686, 3, 2, 2, 2, 4922, 4923, 7, 71, 2, 2, 4923, 4924, 7, 80, 2, 2, 4924, 4925, 7, 73, 2, 2, 4925, 4926, 7, 75, 2, 2, 4926, 4927, 7, 80, 2, 2, 4927, 4928, 7, 71, 2, 2, 4928, 4929, 7, 85, 2, 2, 4929, 688, 3, 2, 2, 2, 4930, 4931, 7, 71, 2, 2, 4931, 4932, 7, 84, 2, 2, 4932, 4933, 7, 84, 2, 2, 4933, 4934, 7, 81, 2, 2, 4934, 4935, 7, 84, 2, 2, 4935, 690, 3, 2, 2, 2, 4936, 4937, 7, 71, 2, 2, 4937, 4938, 7, 84, 2, 2, 4938, 4939, 7, 84, 2, 2, 4939, 4940, 7, 81, 2, 2, 4940, 4941, 7, 84, 2, 2, 4941, 4942, 7, 85, 2, 2, 4942, 692, 3, 2, 2, 2, 4943, 4944, 7, 71, 2, 2, 4944, 4945, 7, 85, 2, 2, 4945, 4946, 7, 69, 2, 2, 4946, 4947, 7, 67, 2, 2, 4947, 4948, 7, 82, 2, 2, 4948, 4949, 7, 71, 2, 2, 4949, 694, 3, 2, 2, 2, 4950, 4951, 7, 71, 2, 2, 4951, 4952, 7, 88, 2, 2, 4952, 4953, 7, 71, 2, 2, 4953, 4954, 7, 80, 2, 2, 4954, 696, 3, 2, 2, 2, 4955, 4956, 7, 71, 2, 2, 4956, 4957, 7, 88, 2, 2, 4957, 4958, 7, 71, 2, 2, 4958, 4959, 7, 80, 2, 2, 4959, 4960, 7, 86, 2, 2, 4960, 698, 3, 2, 2, 2, 4961, 4962, 7, 71, 2, 2, 4962, 4963, 7, 88, 2, 2, 4963, 4964, 7, 71, 2, 2, 4964, 4965, 7, 80, 2, 2, 4965, 4966, 7, 86, 2, 2, 4966, 4967, 7, 85, 2, 2, 4967, 700, 3, 2, 2, 2, 4968, 4969, 7, 71, 2, 2, 4969, 4970, 7, 88, 2, 2, 4970, 4971, 7, 71, 2, 2, 4971, 4972, 7, 84, 2, 2, 4972, 4973, 7, 91, 2, 2, 4973, 702, 3, 2, 2, 2, 4974, 4975, 7, 71, 2, 2, 4975, 4976, 7, 90, 2, 2, 4976, 4977, 7, 69, 2, 2, 4977, 4978, 7, 74, 2, 2, 4978, 4979, 7, 67, 2, 2, 4979, 4980, 7, 80, 2, 2, 4980, 4981, 7, 73, 2, 2, 4981, 4982, 7, 71, 2, 2, 4982, 704, 3, 2, 2, 2, 4983, 4984, 7, 71, 2, 2, 4984, 4985, 7, 90, 2, 2, 4985, 4986, 7, 69, 2, 2, 4986, 4987, 7, 78, 2, 2, 4987, 4988, 7, 87, 2, 2, 4988, 4989, 7, 85, 2, 2, 4989, 4990, 7, 75, 2, 2, 4990, 4991, 7, 88, 2, 2, 4991, 4992, 7, 71, 2, 2, 4992, 706, 3, 2, 2, 2, 4993, 4994, 7, 71, 2, 2, 4994, 4995, 7, 90, 2, 2, 4995, 4996, 7, 82, 2, 2, 4996, 4997, 7, 75, 2, 2, 4997, 4998, 7, 84, 2, 2, 4998, 4999, 7, 71, 2, 2, 4999, 708, 3, 2, 2, 2, 5000, 5001, 7, 71, 2, 2, 5001, 5002, 7, 90, 2, 2, 5002, 5003, 7, 82, 2, 2, 5003, 5004, 7, 81, 2, 2, 5004, 5005, 7, 84, 2, 2, 5005, 5006, 7, 86, 2, 2, 5006, 710, 3, 2, 2, 2, 5007, 5008, 7, 71, 2, 2, 5008, 5009, 7, 90, 2, 2, 5009, 5010, 7, 86, 2, 2, 5010, 5011, 7, 71, 2, 2, 5011, 5012, 7, 80, 2, 2, 5012, 5013, 7, 70, 2, 2, 5013, 5014, 7, 71, 2, 2, 5014, 5015, 7, 70, 2, 2, 5015, 712, 3, 2, 2, 2, 5016, 5017, 7, 71, 2, 2, 5017, 5018, 7, 90, 2, 2, 5018, 5019, 7, 86, 2, 2, 5019, 5020, 7, 71, 2, 2, 5020, 5021, 7, 80, 2, 2, 5021, 5022, 7, 86, 2, 2, 5022, 5023, 7, 97, 2, 2, 5023, 5024, 7, 85, 2, 2, 5024, 5025, 7, 75, 2, 2, 5025, 5026, 7, 92, 2, 2, 5026, 5027, 7, 71, 2, 2, 5027, 714, 3, 2, 2, 2, 5028, 5029, 7, 72, 2, 2, 5029, 5030, 7, 67, 2, 2, 5030, 5031, 7, 85, 2, 2, 5031, 5032, 7, 86, 2, 2, 5032, 716, 3, 2, 2, 2, 5033, 5034, 7, 72, 2, 2, 5034, 5035, 7, 67, 2, 2, 5035, 5036, 7, 87, 2, 2, 5036, 5037, 7, 78, 2, 2, 5037, 5038, 7, 86, 2, 2, 5038, 5039, 7, 85, 2, 2, 5039, 718, 3, 2, 2, 2, 5040, 5041, 7, 72, 2, 2, 5041, 5042, 7, 75, 2, 2, 5042, 5043, 7, 71, 2, 2, 5043, 5044, 7, 78, 2, 2, 5044, 5045, 7, 70, 2, 2, 5045, 5046, 7, 85, 2, 2, 5046, 720, 3, 2, 2, 2, 5047, 5048, 7, 72, 2, 2, 5048, 5049, 7, 75, 2, 2, 5049, 5050, 7, 78, 2, 2, 5050, 5051, 7, 71, 2, 2, 5051, 5052, 7, 97, 2, 2, 5052, 5053, 7, 68, 2, 2, 5053, 5054, 7, 78, 2, 2, 5054, 5055, 7, 81, 2, 2, 5055, 5056, 7, 69, 2, 2, 5056, 5057, 7, 77, 2, 2, 5057, 5058, 7, 97, 2, 2, 5058, 5059, 7, 85, 2, 2, 5059, 5060, 7, 75, 2, 2, 5060, 5061, 7, 92, 2, 2, 5061, 5062, 7, 71, 2, 2, 5062, 722, 3, 2, 2, 2, 5063, 5064, 7, 72, 2, 2, 5064, 5065, 7, 75, 2, 2, 5065, 5066, 7, 78, 2, 2, 5066, 5067, 7, 86, 2, 2, 5067, 5068, 7, 71, 2, 2, 5068, 5069, 7, 84, 2, 2, 5069, 724, 3, 2, 2, 2, 5070, 5071, 7, 72, 2, 2, 5071, 5072, 7, 75, 2, 2, 5072, 5073, 7, 84, 2, 2, 5073, 5074, 7, 85, 2, 2, 5074, 5075, 7, 86, 2, 2, 5075, 726, 3, 2, 2, 2, 5076, 5077, 7, 72, 2, 2, 5077, 5078, 7, 75, 2, 2, 5078, 5079, 7, 90, 2, 2, 5079, 5080, 7, 71, 2, 2, 5080, 5081, 7, 70, 2, 2, 5081, 728, 3, 2, 2, 2, 5082, 5083, 7, 72, 2, 2, 5083, 5084, 7, 78, 2, 2, 5084, 5085, 7, 87, 2, 2, 5085, 5086, 7, 85, 2, 2, 5086, 5087, 7, 74, 2, 2, 5087, 730, 3, 2, 2, 2, 5088, 5089, 7, 72, 2, 2, 5089, 5090, 7, 81, 2, 2, 5090, 5091, 7, 78, 2, 2, 5091, 5092, 7, 78, 2, 2, 5092, 5093, 7, 81, 2, 2, 5093, 5094, 7, 89, 2, 2, 5094, 5095, 7, 85, 2, 2, 5095, 732, 3, 2, 2, 2, 5096, 5097, 7, 72, 2, 2, 5097, 5098, 7, 81, 2, 2, 5098, 5099, 7, 87, 2, 2, 5099, 5100, 7, 80, 2, 2, 5100, 5101, 7, 70, 2, 2, 5101, 734, 3, 2, 2, 2, 5102, 5103, 7, 72, 2, 2, 5103, 5104, 7, 87, 2, 2, 5104, 5105, 7, 78, 2, 2, 5105, 5106, 7, 78, 2, 2, 5106, 736, 3, 2, 2, 2, 5107, 5108, 7, 72, 2, 2, 5108, 5109, 7, 87, 2, 2, 5109, 5110, 7, 80, 2, 2, 5110, 5111, 7, 69, 2, 2, 5111, 5112, 7, 86, 2, 2, 5112, 5113, 7, 75, 2, 2, 5113, 5114, 7, 81, 2, 2, 5114, 5115, 7, 80, 2, 2, 5115, 738, 3, 2, 2, 2, 5116, 5117, 7, 73, 2, 2, 5117, 5118, 7, 71, 2, 2, 5118, 5119, 7, 80, 2, 2, 5119, 5120, 7, 71, 2, 2, 5120, 5121, 7, 84, 2, 2, 5121, 5122, 7, 67, 2, 2, 5122, 5123, 7, 78, 2, 2, 5123, 740, 3, 2, 2, 2, 5124, 5125, 7, 73, 2, 2, 5125, 5126, 7, 78, 2, 2, 5126, 5127, 7, 81, 2, 2, 5127, 5128, 7, 68, 2, 2, 5128, 5129, 7, 67, 2, 2, 5129, 5130, 7, 78, 2, 2, 5130, 742, 3, 2, 2, 2, 5131, 5132, 7, 73, 2, 2, 5132, 5133, 7, 84, 2, 2, 5133, 5134, 7, 67, 2, 2, 5134, 5135, 7, 80, 2, 2, 5135, 5136, 7, 86, 2, 2, 5136, 5137, 7, 85, 2, 2, 5137, 744, 3, 2, 2, 2, 5138, 5139, 7, 73, 2, 2, 5139, 5140, 7, 84, 2, 2, 5140, 5141, 7, 81, 2, 2, 5141, 5142, 7, 87, 2, 2, 5142, 5143, 7, 82, 2, 2, 5143, 5144, 7, 97, 2, 2, 5144, 5145, 7, 84, 2, 2, 5145, 5146, 7, 71, 2, 2, 5146, 5147, 7, 82, 2, 2, 5147, 5148, 7, 78, 2, 2, 5148, 5149, 7, 75, 2, 2, 5149, 5150, 7, 69, 2, 2, 5150, 5151, 7, 67, 2, 2, 5151, 5152, 7, 86, 2, 2, 5152, 5153, 7, 75, 2, 2, 5153, 5154, 7, 81, 2, 2, 5154, 5155, 7, 80, 2, 2, 5155, 746, 3, 2, 2, 2, 5156, 5157, 7, 74, 2, 2, 5157, 5158, 7, 67, 2, 2, 5158, 5159, 7, 80, 2, 2, 5159, 5160, 7, 70, 2, 2, 5160, 5161, 7, 78, 2, 2, 5161, 5162, 7, 71, 2, 2, 5162, 5163, 7, 84, 2, 2, 5163, 748, 3, 2, 2, 2, 5164, 5165, 7, 74, 2, 2, 5165, 5166, 7, 67, 2, 2, 5166, 5167, 7, 85, 2, 2, 5167, 5168, 7, 74, 2, 2, 5168, 750, 3, 2, 2, 2, 5169, 5170, 7, 74, 2, 2, 5170, 5171, 7, 71, 2, 2, 5171, 5172, 7, 78, 2, 2, 5172, 5173, 7, 82, 2, 2, 5173, 752, 3, 2, 2, 2, 5174, 5175, 7, 74, 2, 2, 5175, 5176, 7, 81, 2, 2, 5176, 5177, 7, 85, 2, 2, 5177, 5178, 7, 86, 2, 2, 5178, 754, 3, 2, 2, 2, 5179, 5180, 7, 74, 2, 2, 5180, 5181, 7, 81, 2, 2, 5181, 5182, 7, 85, 2, 2, 5182, 5183, 7, 86, 2, 2, 5183, 5184, 7, 85, 2, 2, 5184, 756, 3, 2, 2, 2, 5185, 5186, 7, 75, 2, 2, 5186, 5187, 7, 70, 2, 2, 5187, 5188, 7, 71, 2, 2, 5188, 5189, 7, 80, 2, 2, 5189, 5190, 7, 86, 2, 2, 5190, 5191, 7, 75, 2, 2, 5191, 5192, 7, 72, 2, 2, 5192, 5193, 7, 75, 2, 2, 5193, 5194, 7, 71, 2, 2, 5194, 5195, 7, 70, 2, 2, 5195, 758, 3, 2, 2, 2, 5196, 5197, 7, 75, 2, 2, 5197, 5198, 7, 73, 2, 2, 5198, 5199, 7, 80, 2, 2, 5199, 5200, 7, 81, 2, 2, 5200, 5201, 7, 84, 2, 2, 5201, 5202, 7, 71, 2, 2, 5202, 5203, 7, 97, 2, 2, 5203, 5204, 7, 85, 2, 2, 5204, 5205, 7, 71, 2, 2, 5205, 5206, 7, 84, 2, 2, 5206, 5207, 7, 88, 2, 2, 5207, 5208, 7, 71, 2, 2, 5208, 5209, 7, 84, 2, 2, 5209, 5210, 7, 97, 2, 2, 5210, 5211, 7, 75, 2, 2, 5211, 5212, 7, 70, 2, 2, 5212, 5213, 7, 85, 2, 2, 5213, 760, 3, 2, 2, 2, 5214, 5215, 7, 75, 2, 2, 5215, 5216, 7, 79, 2, 2, 5216, 5217, 7, 82, 2, 2, 5217, 5218, 7, 81, 2, 2, 5218, 5219, 7, 84, 2, 2, 5219, 5220, 7, 86, 2, 2, 5220, 762, 3, 2, 2, 2, 5221, 5222, 7, 75, 2, 2, 5222, 5223, 7, 80, 2, 2, 5223, 5224, 7, 70, 2, 2, 5224, 5225, 7, 71, 2, 2, 5225, 5226, 7, 90, 2, 2, 5226, 5227, 7, 71, 2, 2, 5227, 5228, 7, 85, 2, 2, 5228, 764, 3, 2, 2, 2, 5229, 5230, 7, 75, 2, 2, 5230, 5231, 7, 80, 2, 2, 5231, 5232, 7, 75, 2, 2, 5232, 5233, 7, 86, 2, 2, 5233, 5234, 7, 75, 2, 2, 5234, 5235, 7, 67, 2, 2, 5235, 5236, 7, 78, 2, 2, 5236, 5237, 7, 97, 2, 2, 5237, 5238, 7, 85, 2, 2, 5238, 5239, 7, 75, 2, 2, 5239, 5240, 7, 92, 2, 2, 5240, 5241, 7, 71, 2, 2, 5241, 766, 3, 2, 2, 2, 5242, 5243, 7, 75, 2, 2, 5243, 5244, 7, 80, 2, 2, 5244, 5245, 7, 82, 2, 2, 5245, 5246, 7, 78, 2, 2, 5246, 5247, 7, 67, 2, 2, 5247, 5248, 7, 69, 2, 2, 5248, 5249, 7, 71, 2, 2, 5249, 768, 3, 2, 2, 2, 5250, 5251, 7, 75, 2, 2, 5251, 5252, 7, 80, 2, 2, 5252, 5253, 7, 85, 2, 2, 5253, 5254, 7, 71, 2, 2, 5254, 5255, 7, 84, 2, 2, 5255, 5256, 7, 86, 2, 2, 5256, 5257, 7, 97, 2, 2, 5257, 5258, 7, 79, 2, 2, 5258, 5259, 7, 71, 2, 2, 5259, 5260, 7, 86, 2, 2, 5260, 5261, 7, 74, 2, 2, 5261, 5262, 7, 81, 2, 2, 5262, 5263, 7, 70, 2, 2, 5263, 770, 3, 2, 2, 2, 5264, 5265, 7, 75, 2, 2, 5265, 5266, 7, 80, 2, 2, 5266, 5267, 7, 85, 2, 2, 5267, 5268, 7, 86, 2, 2, 5268, 5269, 7, 67, 2, 2, 5269, 5270, 7, 78, 2, 2, 5270, 5271, 7, 78, 2, 2, 5271, 772, 3, 2, 2, 2, 5272, 5273, 7, 75, 2, 2, 5273, 5274, 7, 80, 2, 2, 5274, 5275, 7, 85, 2, 2, 5275, 5276, 7, 86, 2, 2, 5276, 5277, 7, 67, 2, 2, 5277, 5278, 7, 80, 2, 2, 5278, 5279, 7, 69, 2, 2, 5279, 5280, 7, 71, 2, 2, 5280, 774, 3, 2, 2, 2, 5281, 5282, 7, 75, 2, 2, 5282, 5283, 7, 80, 2, 2, 5283, 5284, 7, 88, 2, 2, 5284, 5285, 7, 75, 2, 2, 5285, 5286, 7, 85, 2, 2, 5286, 5287, 7, 75, 2, 2, 5287, 5288, 7, 68, 2, 2, 5288, 5289, 7, 78, 2, 2, 5289, 5290, 7, 71, 2, 2, 5290, 776, 3, 2, 2, 2, 5291, 5292, 7, 75, 2, 2, 5292, 5293, 7, 80, 2, 2, 5293, 5294, 7, 88, 2, 2, 5294, 5295, 7, 81, 2, 2, 5295, 5296, 7, 77, 2, 2, 5296, 5297, 7, 71, 2, 2, 5297, 5298, 7, 84, 2, 2, 5298, 778, 3, 2, 2, 2, 5299, 5300, 7, 75, 2, 2, 5300, 5301, 7, 81, 2, 2, 5301, 780, 3, 2, 2, 2, 5302, 5303, 7, 75, 2, 2, 5303, 5304, 7, 81, 2, 2, 5304, 5305, 7, 97, 2, 2, 5305, 5306, 7, 86, 2, 2, 5306, 5307, 7, 74, 2, 2, 5307, 5308, 7, 84, 2, 2, 5308, 5309, 7, 71, 2, 2, 5309, 5310, 7, 67, 2, 2, 5310, 5311, 7, 70, 2, 2, 5311, 782, 3, 2, 2, 2, 5312, 5313, 7, 75, 2, 2, 5313, 5314, 7, 82, 2, 2, 5314, 5315, 7, 69, 2, 2, 5315, 784, 3, 2, 2, 2, 5316, 5317, 7, 75, 2, 2, 5317, 5318, 7, 85, 2, 2, 5318, 5319, 7, 81, 2, 2, 5319, 5320, 7, 78, 2, 2, 5320, 5321, 7, 67, 2, 2, 5321, 5322, 7, 86, 2, 2, 5322, 5323, 7, 75, 2, 2, 5323, 5324, 7, 81, 2, 2, 5324, 5325, 7, 80, 2, 2, 5325, 786, 3, 2, 2, 2, 5326, 5327, 7, 75, 2, 2, 5327, 5328, 7, 85, 2, 2, 5328, 5329, 7, 85, 2, 2, 5329, 5330, 7, 87, 2, 2, 5330, 5331, 7, 71, 2, 2, 5331, 5332, 7, 84, 2, 2, 5332, 788, 3, 2, 2, 2, 5333, 5334, 7, 76, 2, 2, 5334, 5335, 7, 85, 2, 2, 5335, 5336, 7, 81, 2, 2, 5336, 5337, 7, 80, 2, 2, 5337, 790, 3, 2, 2, 2, 5338, 5339, 7, 77, 2, 2, 5339, 5340, 7, 71, 2, 2, 5340, 5341, 7, 91, 2, 2, 5341, 5342, 7, 97, 2, 2, 5342, 5343, 7, 68, 2, 2, 5343, 5344, 7, 78, 2, 2, 5344, 5345, 7, 81, 2, 2, 5345, 5346, 7, 69, 2, 2, 5346, 5347, 7, 77, 2, 2, 5347, 5348, 7, 97, 2, 2, 5348, 5349, 7, 85, 2, 2, 5349, 5350, 7, 75, 2, 2, 5350, 5351, 7, 92, 2, 2, 5351, 5352, 7, 71, 2, 2, 5352, 792, 3, 2, 2, 2, 5353, 5354, 7, 78, 2, 2, 5354, 5355, 7, 67, 2, 2, 5355, 5356, 7, 80, 2, 2, 5356, 5357, 7, 73, 2, 2, 5357, 5358, 7, 87, 2, 2, 5358, 5359, 7, 67, 2, 2, 5359, 5360, 7, 73, 2, 2, 5360, 5361, 7, 71, 2, 2, 5361, 794, 3, 2, 2, 2, 5362, 5363, 7, 78, 2, 2, 5363, 5364, 7, 67, 2, 2, 5364, 5365, 7, 85, 2, 2, 5365, 5366, 7, 86, 2, 2, 5366, 796, 3, 2, 2, 2, 5367, 5368, 7, 78, 2, 2, 5368, 5369, 7, 71, 2, 2, 5369, 5370, 7, 67, 2, 2, 5370, 5371, 7, 88, 2, 2, 5371, 5372, 7, 71, 2, 2, 5372, 5373, 7, 85, 2, 2, 5373, 798, 3, 2, 2, 2, 5374, 5375, 7, 78, 2, 2, 5375, 5376, 7, 71, 2, 2, 5376, 5377, 7, 85, 2, 2, 5377, 5378, 7, 85, 2, 2, 5378, 800, 3, 2, 2, 2, 5379, 5380, 7, 78, 2, 2, 5380, 5381, 7, 71, 2, 2, 5381, 5382, 7, 88, 2, 2, 5382, 5383, 7, 71, 2, 2, 5383, 5384, 7, 78, 2, 2, 5384, 802, 3, 2, 2, 2, 5385, 5386, 7, 78, 2, 2, 5386, 5387, 7, 75, 2, 2, 5387, 5388, 7, 85, 2, 2, 5388, 5389, 7, 86, 2, 2, 5389, 804, 3, 2, 2, 2, 5390, 5391, 7, 78, 2, 2, 5391, 5392, 7, 81, 2, 2, 5392, 5393, 7, 69, 2, 2, 5393, 5394, 7, 67, 2, 2, 5394, 5395, 7, 78, 2, 2, 5395, 806, 3, 2, 2, 2, 5396, 5397, 7, 78, 2, 2, 5397, 5398, 7, 81, 2, 2, 5398, 5399, 7, 73, 2, 2, 5399, 5400, 7, 72, 2, 2, 5400, 5401, 7, 75, 2, 2, 5401, 5402, 7, 78, 2, 2, 5402, 5403, 7, 71, 2, 2, 5403, 808, 3, 2, 2, 2, 5404, 5405, 7, 78, 2, 2, 5405, 5406, 7, 81, 2, 2, 5406, 5407, 7, 73, 2, 2, 5407, 5408, 7, 85, 2, 2, 5408, 810, 3, 2, 2, 2, 5409, 5410, 7, 79, 2, 2, 5410, 5411, 7, 67, 2, 2, 5411, 5412, 7, 85, 2, 2, 5412, 5413, 7, 86, 2, 2, 5413, 5414, 7, 71, 2, 2, 5414, 5415, 7, 84, 2, 2, 5415, 812, 3, 2, 2, 2, 5416, 5417, 7, 79, 2, 2, 5417, 5418, 7, 67, 2, 2, 5418, 5419, 7, 85, 2, 2, 5419, 5420, 7, 86, 2, 2, 5420, 5421, 7, 71, 2, 2, 5421, 5422, 7, 84, 2, 2, 5422, 5423, 7, 97, 2, 2, 5423, 5424, 7, 67, 2, 2, 5424, 5425, 7, 87, 2, 2, 5425, 5426, 7, 86, 2, 2, 5426, 5427, 7, 81, 2, 2, 5427, 5428, 7, 97, 2, 2, 5428, 5429, 7, 82, 2, 2, 5429, 5430, 7, 81, 2, 2, 5430, 5431, 7, 85, 2, 2, 5431, 5432, 7, 75, 2, 2, 5432, 5433, 7, 86, 2, 2, 5433, 5434, 7, 75, 2, 2, 5434, 5435, 7, 81, 2, 2, 5435, 5436, 7, 80, 2, 2, 5436, 814, 3, 2, 2, 2, 5437, 5438, 7, 79, 2, 2, 5438, 5439, 7, 67, 2, 2, 5439, 5440, 7, 85, 2, 2, 5440, 5441, 7, 86, 2, 2, 5441, 5442, 7, 71, 2, 2, 5442, 5443, 7, 84, 2, 2, 5443, 5444, 7, 97, 2, 2, 5444, 5445, 7, 69, 2, 2, 5445, 5446, 7, 81, 2, 2, 5446, 5447, 7, 80, 2, 2, 5447, 5448, 7, 80, 2, 2, 5448, 5449, 7, 71, 2, 2, 5449, 5450, 7, 69, 2, 2, 5450, 5451, 7, 86, 2, 2, 5451, 5452, 7, 97, 2, 2, 5452, 5453, 7, 84, 2, 2, 5453, 5454, 7, 71, 2, 2, 5454, 5455, 7, 86, 2, 2, 5455, 5456, 7, 84, 2, 2, 5456, 5457, 7, 91, 2, 2, 5457, 816, 3, 2, 2, 2, 5458, 5459, 7, 79, 2, 2, 5459, 5460, 7, 67, 2, 2, 5460, 5461, 7, 85, 2, 2, 5461, 5462, 7, 86, 2, 2, 5462, 5463, 7, 71, 2, 2, 5463, 5464, 7, 84, 2, 2, 5464, 5465, 7, 97, 2, 2, 5465, 5466, 7, 70, 2, 2, 5466, 5467, 7, 71, 2, 2, 5467, 5468, 7, 78, 2, 2, 5468, 5469, 7, 67, 2, 2, 5469, 5470, 7, 91, 2, 2, 5470, 818, 3, 2, 2, 2, 5471, 5472, 7, 79, 2, 2, 5472, 5473, 7, 67, 2, 2, 5473, 5474, 7, 85, 2, 2, 5474, 5475, 7, 86, 2, 2, 5475, 5476, 7, 71, 2, 2, 5476, 5477, 7, 84, 2, 2, 5477, 5478, 7, 97, 2, 2, 5478, 5479, 7, 74, 2, 2, 5479, 5480, 7, 71, 2, 2, 5480, 5481, 7, 67, 2, 2, 5481, 5482, 7, 84, 2, 2, 5482, 5483, 7, 86, 2, 2, 5483, 5484, 7, 68, 2, 2, 5484, 5485, 7, 71, 2, 2, 5485, 5486, 7, 67, 2, 2, 5486, 5487, 7, 86, 2, 2, 5487, 5488, 7, 97, 2, 2, 5488, 5489, 7, 82, 2, 2, 5489, 5490, 7, 71, 2, 2, 5490, 5491, 7, 84, 2, 2, 5491, 5492, 7, 75, 2, 2, 5492, 5493, 7, 81, 2, 2, 5493, 5494, 7, 70, 2, 2, 5494, 820, 3, 2, 2, 2, 5495, 5496, 7, 79, 2, 2, 5496, 5497, 7, 67, 2, 2, 5497, 5498, 7, 85, 2, 2, 5498, 5499, 7, 86, 2, 2, 5499, 5500, 7, 71, 2, 2, 5500, 5501, 7, 84, 2, 2, 5501, 5502, 7, 97, 2, 2, 5502, 5503, 7, 74, 2, 2, 5503, 5504, 7, 81, 2, 2, 5504, 5505, 7, 85, 2, 2, 5505, 5506, 7, 86, 2, 2, 5506, 822, 3, 2, 2, 2, 5507, 5508, 7, 79, 2, 2, 5508, 5509, 7, 67, 2, 2, 5509, 5510, 7, 85, 2, 2, 5510, 5511, 7, 86, 2, 2, 5511, 5512, 7, 71, 2, 2, 5512, 5513, 7, 84, 2, 2, 5513, 5514, 7, 97, 2, 2, 5514, 5515, 7, 78, 2, 2, 5515, 5516, 7, 81, 2, 2, 5516, 5517, 7, 73, 2, 2, 5517, 5518, 7, 97, 2, 2, 5518, 5519, 7, 72, 2, 2, 5519, 5520, 7, 75, 2, 2, 5520, 5521, 7, 78, 2, 2, 5521, 5522, 7, 71, 2, 2, 5522, 824, 3, 2, 2, 2, 5523, 5524, 7, 79, 2, 2, 5524, 5525, 7, 67, 2, 2, 5525, 5526, 7, 85, 2, 2, 5526, 5527, 7, 86, 2, 2, 5527, 5528, 7, 71, 2, 2, 5528, 5529, 7, 84, 2, 2, 5529, 5530, 7, 97, 2, 2, 5530, 5531, 7, 78, 2, 2, 5531, 5532, 7, 81, 2, 2, 5532, 5533, 7, 73, 2, 2, 5533, 5534, 7, 97, 2, 2, 5534, 5535, 7, 82, 2, 2, 5535, 5536, 7, 81, 2, 2, 5536, 5537, 7, 85, 2, 2, 5537, 826, 3, 2, 2, 2, 5538, 5539, 7, 79, 2, 2, 5539, 5540, 7, 67, 2, 2, 5540, 5541, 7, 85, 2, 2, 5541, 5542, 7, 86, 2, 2, 5542, 5543, 7, 71, 2, 2, 5543, 5544, 7, 84, 2, 2, 5544, 5545, 7, 97, 2, 2, 5545, 5546, 7, 82, 2, 2, 5546, 5547, 7, 67, 2, 2, 5547, 5548, 7, 85, 2, 2, 5548, 5549, 7, 85, 2, 2, 5549, 5550, 7, 89, 2, 2, 5550, 5551, 7, 81, 2, 2, 5551, 5552, 7, 84, 2, 2, 5552, 5553, 7, 70, 2, 2, 5553, 828, 3, 2, 2, 2, 5554, 5555, 7, 79, 2, 2, 5555, 5556, 7, 67, 2, 2, 5556, 5557, 7, 85, 2, 2, 5557, 5558, 7, 86, 2, 2, 5558, 5559, 7, 71, 2, 2, 5559, 5560, 7, 84, 2, 2, 5560, 5561, 7, 97, 2, 2, 5561, 5562, 7, 82, 2, 2, 5562, 5563, 7, 81, 2, 2, 5563, 5564, 7, 84, 2, 2, 5564, 5565, 7, 86, 2, 2, 5565, 830, 3, 2, 2, 2, 5566, 5567, 7, 79, 2, 2, 5567, 5568, 7, 67, 2, 2, 5568, 5569, 7, 85, 2, 2, 5569, 5570, 7, 86, 2, 2, 5570, 5571, 7, 71, 2, 2, 5571, 5572, 7, 84, 2, 2, 5572, 5573, 7, 97, 2, 2, 5573, 5574, 7, 84, 2, 2, 5574, 5575, 7, 71, 2, 2, 5575, 5576, 7, 86, 2, 2, 5576, 5577, 7, 84, 2, 2, 5577, 5578, 7, 91, 2, 2, 5578, 5579, 7, 97, 2, 2, 5579, 5580, 7, 69, 2, 2, 5580, 5581, 7, 81, 2, 2, 5581, 5582, 7, 87, 2, 2, 5582, 5583, 7, 80, 2, 2, 5583, 5584, 7, 86, 2, 2, 5584, 832, 3, 2, 2, 2, 5585, 5586, 7, 79, 2, 2, 5586, 5587, 7, 67, 2, 2, 5587, 5588, 7, 85, 2, 2, 5588, 5589, 7, 86, 2, 2, 5589, 5590, 7, 71, 2, 2, 5590, 5591, 7, 84, 2, 2, 5591, 5592, 7, 97, 2, 2, 5592, 5593, 7, 85, 2, 2, 5593, 5594, 7, 85, 2, 2, 5594, 5595, 7, 78, 2, 2, 5595, 834, 3, 2, 2, 2, 5596, 5597, 7, 79, 2, 2, 5597, 5598, 7, 67, 2, 2, 5598, 5599, 7, 85, 2, 2, 5599, 5600, 7, 86, 2, 2, 5600, 5601, 7, 71, 2, 2, 5601, 5602, 7, 84, 2, 2, 5602, 5603, 7, 97, 2, 2, 5603, 5604, 7, 85, 2, 2, 5604, 5605, 7, 85, 2, 2, 5605, 5606, 7, 78, 2, 2, 5606, 5607, 7, 97, 2, 2, 5607, 5608, 7, 69, 2, 2, 5608, 5609, 7, 67, 2, 2, 5609, 836, 3, 2, 2, 2, 5610, 5611, 7, 79, 2, 2, 5611, 5612, 7, 67, 2, 2, 5612, 5613, 7, 85, 2, 2, 5613, 5614, 7, 86, 2, 2, 5614, 5615, 7, 71, 2, 2, 5615, 5616, 7, 84, 2, 2, 5616, 5617, 7, 97, 2, 2, 5617, 5618, 7, 85, 2, 2, 5618, 5619, 7, 85, 2, 2, 5619, 5620, 7, 78, 2, 2, 5620, 5621, 7, 97, 2, 2, 5621, 5622, 7, 69, 2, 2, 5622, 5623, 7, 67, 2, 2, 5623, 5624, 7, 82, 2, 2, 5624, 5625, 7, 67, 2, 2, 5625, 5626, 7, 86, 2, 2, 5626, 5627, 7, 74, 2, 2, 5627, 838, 3, 2, 2, 2, 5628, 5629, 7, 79, 2, 2, 5629, 5630, 7, 67, 2, 2, 5630, 5631, 7, 85, 2, 2, 5631, 5632, 7, 86, 2, 2, 5632, 5633, 7, 71, 2, 2, 5633, 5634, 7, 84, 2, 2, 5634, 5635, 7, 97, 2, 2, 5635, 5636, 7, 85, 2, 2, 5636, 5637, 7, 85, 2, 2, 5637, 5638, 7, 78, 2, 2, 5638, 5639, 7, 97, 2, 2, 5639, 5640, 7, 69, 2, 2, 5640, 5641, 7, 71, 2, 2, 5641, 5642, 7, 84, 2, 2, 5642, 5643, 7, 86, 2, 2, 5643, 840, 3, 2, 2, 2, 5644, 5645, 7, 79, 2, 2, 5645, 5646, 7, 67, 2, 2, 5646, 5647, 7, 85, 2, 2, 5647, 5648, 7, 86, 2, 2, 5648, 5649, 7, 71, 2, 2, 5649, 5650, 7, 84, 2, 2, 5650, 5651, 7, 97, 2, 2, 5651, 5652, 7, 85, 2, 2, 5652, 5653, 7, 85, 2, 2, 5653, 5654, 7, 78, 2, 2, 5654, 5655, 7, 97, 2, 2, 5655, 5656, 7, 69, 2, 2, 5656, 5657, 7, 75, 2, 2, 5657, 5658, 7, 82, 2, 2, 5658, 5659, 7, 74, 2, 2, 5659, 5660, 7, 71, 2, 2, 5660, 5661, 7, 84, 2, 2, 5661, 842, 3, 2, 2, 2, 5662, 5663, 7, 79, 2, 2, 5663, 5664, 7, 67, 2, 2, 5664, 5665, 7, 85, 2, 2, 5665, 5666, 7, 86, 2, 2, 5666, 5667, 7, 71, 2, 2, 5667, 5668, 7, 84, 2, 2, 5668, 5669, 7, 97, 2, 2, 5669, 5670, 7, 85, 2, 2, 5670, 5671, 7, 85, 2, 2, 5671, 5672, 7, 78, 2, 2, 5672, 5673, 7, 97, 2, 2, 5673, 5674, 7, 69, 2, 2, 5674, 5675, 7, 84, 2, 2, 5675, 5676, 7, 78, 2, 2, 5676, 844, 3, 2, 2, 2, 5677, 5678, 7, 79, 2, 2, 5678, 5679, 7, 67, 2, 2, 5679, 5680, 7, 85, 2, 2, 5680, 5681, 7, 86, 2, 2, 5681, 5682, 7, 71, 2, 2, 5682, 5683, 7, 84, 2, 2, 5683, 5684, 7, 97, 2, 2, 5684, 5685, 7, 85, 2, 2, 5685, 5686, 7, 85, 2, 2, 5686, 5687, 7, 78, 2, 2, 5687, 5688, 7, 97, 2, 2, 5688, 5689, 7, 69, 2, 2, 5689, 5690, 7, 84, 2, 2, 5690, 5691, 7, 78, 2, 2, 5691, 5692, 7, 82, 2, 2, 5692, 5693, 7, 67, 2, 2, 5693, 5694, 7, 86, 2, 2, 5694, 5695, 7, 74, 2, 2, 5695, 846, 3, 2, 2, 2, 5696, 5697, 7, 79, 2, 2, 5697, 5698, 7, 67, 2, 2, 5698, 5699, 7, 85, 2, 2, 5699, 5700, 7, 86, 2, 2, 5700, 5701, 7, 71, 2, 2, 5701, 5702, 7, 84, 2, 2, 5702, 5703, 7, 97, 2, 2, 5703, 5704, 7, 85, 2, 2, 5704, 5705, 7, 85, 2, 2, 5705, 5706, 7, 78, 2, 2, 5706, 5707, 7, 97, 2, 2, 5707, 5708, 7, 77, 2, 2, 5708, 5709, 7, 71, 2, 2, 5709, 5710, 7, 91, 2, 2, 5710, 848, 3, 2, 2, 2, 5711, 5712, 7, 79, 2, 2, 5712, 5713, 7, 67, 2, 2, 5713, 5714, 7, 85, 2, 2, 5714, 5715, 7, 86, 2, 2, 5715, 5716, 7, 71, 2, 2, 5716, 5717, 7, 84, 2, 2, 5717, 5718, 7, 97, 2, 2, 5718, 5719, 7, 86, 2, 2, 5719, 5720, 7, 78, 2, 2, 5720, 5721, 7, 85, 2, 2, 5721, 5722, 7, 97, 2, 2, 5722, 5723, 7, 88, 2, 2, 5723, 5724, 7, 71, 2, 2, 5724, 5725, 7, 84, 2, 2, 5725, 5726, 7, 85, 2, 2, 5726, 5727, 7, 75, 2, 2, 5727, 5728, 7, 81, 2, 2, 5728, 5729, 7, 80, 2, 2, 5729, 850, 3, 2, 2, 2, 5730, 5731, 7, 79, 2, 2, 5731, 5732, 7, 67, 2, 2, 5732, 5733, 7, 85, 2, 2, 5733, 5734, 7, 86, 2, 2, 5734, 5735, 7, 71, 2, 2, 5735, 5736, 7, 84, 2, 2, 5736, 5737, 7, 97, 2, 2, 5737, 5738, 7, 87, 2, 2, 5738, 5739, 7, 85, 2, 2, 5739, 5740, 7, 71, 2, 2, 5740, 5741, 7, 84, 2, 2, 5741, 852, 3, 2, 2, 2, 5742, 5743, 7, 79, 2, 2, 5743, 5744, 7, 67, 2, 2, 5744, 5745, 7, 90, 2, 2, 5745, 5746, 7, 97, 2, 2, 5746, 5747, 7, 69, 2, 2, 5747, 5748, 7, 81, 2, 2, 5748, 5749, 7, 80, 2, 2, 5749, 5750, 7, 80, 2, 2, 5750, 5751, 7, 71, 2, 2, 5751, 5752, 7, 69, 2, 2, 5752, 5753, 7, 86, 2, 2, 5753, 5754, 7, 75, 2, 2, 5754, 5755, 7, 81, 2, 2, 5755, 5756, 7, 80, 2, 2, 5756, 5757, 7, 85, 2, 2, 5757, 5758, 7, 97, 2, 2, 5758, 5759, 7, 82, 2, 2, 5759, 5760, 7, 71, 2, 2, 5760, 5761, 7, 84, 2, 2, 5761, 5762, 7, 97, 2, 2, 5762, 5763, 7, 74, 2, 2, 5763, 5764, 7, 81, 2, 2, 5764, 5765, 7, 87, 2, 2, 5765, 5766, 7, 84, 2, 2, 5766, 854, 3, 2, 2, 2, 5767, 5768, 7, 79, 2, 2, 5768, 5769, 7, 67, 2, 2, 5769, 5770, 7, 90, 2, 2, 5770, 5771, 7, 97, 2, 2, 5771, 5772, 7, 83, 2, 2, 5772, 5773, 7, 87, 2, 2, 5773, 5774, 7, 71, 2, 2, 5774, 5775, 7, 84, 2, 2, 5775, 5776, 7, 75, 2, 2, 5776, 5777, 7, 71, 2, 2, 5777, 5778, 7, 85, 2, 2, 5778, 5779, 7, 97, 2, 2, 5779, 5780, 7, 82, 2, 2, 5780, 5781, 7, 71, 2, 2, 5781, 5782, 7, 84, 2, 2, 5782, 5783, 7, 97, 2, 2, 5783, 5784, 7, 74, 2, 2, 5784, 5785, 7, 81, 2, 2, 5785, 5786, 7, 87, 2, 2, 5786, 5787, 7, 84, 2, 2, 5787, 856, 3, 2, 2, 2, 5788, 5789, 7, 79, 2, 2, 5789, 5790, 7, 67, 2, 2, 5790, 5791, 7, 90, 2, 2, 5791, 5792, 7, 97, 2, 2, 5792, 5793, 7, 84, 2, 2, 5793, 5794, 7, 81, 2, 2, 5794, 5795, 7, 89, 2, 2, 5795, 5796, 7, 85, 2, 2, 5796, 858, 3, 2, 2, 2, 5797, 5798, 7, 79, 2, 2, 5798, 5799, 7, 67, 2, 2, 5799, 5800, 7, 90, 2, 2, 5800, 5801, 7, 97, 2, 2, 5801, 5802, 7, 85, 2, 2, 5802, 5803, 7, 75, 2, 2, 5803, 5804, 7, 92, 2, 2, 5804, 5805, 7, 71, 2, 2, 5805, 860, 3, 2, 2, 2, 5806, 5807, 7, 79, 2, 2, 5807, 5808, 7, 67, 2, 2, 5808, 5809, 7, 90, 2, 2, 5809, 5810, 7, 97, 2, 2, 5810, 5811, 7, 87, 2, 2, 5811, 5812, 7, 82, 2, 2, 5812, 5813, 7, 70, 2, 2, 5813, 5814, 7, 67, 2, 2, 5814, 5815, 7, 86, 2, 2, 5815, 5816, 7, 71, 2, 2, 5816, 5817, 7, 85, 2, 2, 5817, 5818, 7, 97, 2, 2, 5818, 5819, 7, 82, 2, 2, 5819, 5820, 7, 71, 2, 2, 5820, 5821, 7, 84, 2, 2, 5821, 5822, 7, 97, 2, 2, 5822, 5823, 7, 74, 2, 2, 5823, 5824, 7, 81, 2, 2, 5824, 5825, 7, 87, 2, 2, 5825, 5826, 7, 84, 2, 2, 5826, 862, 3, 2, 2, 2, 5827, 5828, 7, 79, 2, 2, 5828, 5829, 7, 67, 2, 2, 5829, 5830, 7, 90, 2, 2, 5830, 5831, 7, 97, 2, 2, 5831, 5832, 7, 87, 2, 2, 5832, 5833, 7, 85, 2, 2, 5833, 5834, 7, 71, 2, 2, 5834, 5835, 7, 84, 2, 2, 5835, 5836, 7, 97, 2, 2, 5836, 5837, 7, 69, 2, 2, 5837, 5838, 7, 81, 2, 2, 5838, 5839, 7, 80, 2, 2, 5839, 5840, 7, 80, 2, 2, 5840, 5841, 7, 71, 2, 2, 5841, 5842, 7, 69, 2, 2, 5842, 5843, 7, 86, 2, 2, 5843, 5844, 7, 75, 2, 2, 5844, 5845, 7, 81, 2, 2, 5845, 5846, 7, 80, 2, 2, 5846, 5847, 7, 85, 2, 2, 5847, 864, 3, 2, 2, 2, 5848, 5849, 7, 79, 2, 2, 5849, 5850, 7, 71, 2, 2, 5850, 5851, 7, 70, 2, 2, 5851, 5852, 7, 75, 2, 2, 5852, 5853, 7, 87, 2, 2, 5853, 5854, 7, 79, 2, 2, 5854, 866, 3, 2, 2, 2, 5855, 5856, 7, 79, 2, 2, 5856, 5857, 7, 71, 2, 2, 5857, 5858, 7, 84, 2, 2, 5858, 5859, 7, 73, 2, 2, 5859, 5860, 7, 71, 2, 2, 5860, 868, 3, 2, 2, 2, 5861, 5862, 7, 79, 2, 2, 5862, 5863, 7, 71, 2, 2, 5863, 5864, 7, 85, 2, 2, 5864, 5865, 7, 85, 2, 2, 5865, 5866, 7, 67, 2, 2, 5866, 5867, 7, 73, 2, 2, 5867, 5868, 7, 71, 2, 2, 5868, 5869, 7, 97, 2, 2, 5869, 5870, 7, 86, 2, 2, 5870, 5871, 7, 71, 2, 2, 5871, 5872, 7, 90, 2, 2, 5872, 5873, 7, 86, 2, 2, 5873, 870, 3, 2, 2, 2, 5874, 5875, 7, 79, 2, 2, 5875, 5876, 7, 75, 2, 2, 5876, 5877, 7, 70, 2, 2, 5877, 872, 3, 2, 2, 2, 5878, 5879, 7, 79, 2, 2, 5879, 5880, 7, 75, 2, 2, 5880, 5881, 7, 73, 2, 2, 5881, 5882, 7, 84, 2, 2, 5882, 5883, 7, 67, 2, 2, 5883, 5884, 7, 86, 2, 2, 5884, 5885, 7, 71, 2, 2, 5885, 874, 3, 2, 2, 2, 5886, 5887, 7, 79, 2, 2, 5887, 5888, 7, 75, 2, 2, 5888, 5889, 7, 80, 2, 2, 5889, 5890, 7, 97, 2, 2, 5890, 5891, 7, 84, 2, 2, 5891, 5892, 7, 81, 2, 2, 5892, 5893, 7, 89, 2, 2, 5893, 5894, 7, 85, 2, 2, 5894, 876, 3, 2, 2, 2, 5895, 5896, 7, 79, 2, 2, 5896, 5897, 7, 81, 2, 2, 5897, 5898, 7, 70, 2, 2, 5898, 5899, 7, 71, 2, 2, 5899, 878, 3, 2, 2, 2, 5900, 5901, 7, 79, 2, 2, 5901, 5902, 7, 81, 2, 2, 5902, 5903, 7, 70, 2, 2, 5903, 5904, 7, 75, 2, 2, 5904, 5905, 7, 72, 2, 2, 5905, 5906, 7, 91, 2, 2, 5906, 880, 3, 2, 2, 2, 5907, 5908, 7, 79, 2, 2, 5908, 5909, 7, 87, 2, 2, 5909, 5910, 7, 86, 2, 2, 5910, 5911, 7, 71, 2, 2, 5911, 5912, 7, 90, 2, 2, 5912, 882, 3, 2, 2, 2, 5913, 5914, 7, 79, 2, 2, 5914, 5915, 7, 91, 2, 2, 5915, 5916, 7, 85, 2, 2, 5916, 5917, 7, 83, 2, 2, 5917, 5918, 7, 78, 2, 2, 5918, 884, 3, 2, 2, 2, 5919, 5920, 7, 79, 2, 2, 5920, 5921, 7, 91, 2, 2, 5921, 5922, 7, 85, 2, 2, 5922, 5923, 7, 83, 2, 2, 5923, 5924, 7, 78, 2, 2, 5924, 5925, 7, 97, 2, 2, 5925, 5926, 7, 71, 2, 2, 5926, 5927, 7, 84, 2, 2, 5927, 5928, 7, 84, 2, 2, 5928, 5929, 7, 80, 2, 2, 5929, 5930, 7, 81, 2, 2, 5930, 886, 3, 2, 2, 2, 5931, 5932, 7, 80, 2, 2, 5932, 5933, 7, 67, 2, 2, 5933, 5934, 7, 79, 2, 2, 5934, 5935, 7, 71, 2, 2, 5935, 888, 3, 2, 2, 2, 5936, 5937, 7, 80, 2, 2, 5937, 5938, 7, 67, 2, 2, 5938, 5939, 7, 79, 2, 2, 5939, 5940, 7, 71, 2, 2, 5940, 5941, 7, 85, 2, 2, 5941, 890, 3, 2, 2, 2, 5942, 5943, 7, 80, 2, 2, 5943, 5944, 7, 69, 2, 2, 5944, 5945, 7, 74, 2, 2, 5945, 5946, 7, 67, 2, 2, 5946, 5947, 7, 84, 2, 2, 5947, 892, 3, 2, 2, 2, 5948, 5949, 7, 80, 2, 2, 5949, 5950, 7, 71, 2, 2, 5950, 5951, 7, 88, 2, 2, 5951, 5952, 7, 71, 2, 2, 5952, 5953, 7, 84, 2, 2, 5953, 894, 3, 2, 2, 2, 5954, 5955, 7, 80, 2, 2, 5955, 5956, 7, 71, 2, 2, 5956, 5957, 7, 90, 2, 2, 5957, 5958, 7, 86, 2, 2, 5958, 896, 3, 2, 2, 2, 5959, 5960, 7, 80, 2, 2, 5960, 5961, 7, 81, 2, 2, 5961, 898, 3, 2, 2, 2, 5962, 5963, 7, 80, 2, 2, 5963, 5964, 7, 81, 2, 2, 5964, 5965, 7, 70, 2, 2, 5965, 5966, 7, 71, 2, 2, 5966, 5967, 7, 73, 2, 2, 5967, 5968, 7, 84, 2, 2, 5968, 5969, 7, 81, 2, 2, 5969, 5970, 7, 87, 2, 2, 5970, 5971, 7, 82, 2, 2, 5971, 900, 3, 2, 2, 2, 5972, 5973, 7, 80, 2, 2, 5973, 5974, 7, 81, 2, 2, 5974, 5975, 7, 80, 2, 2, 5975, 5976, 7, 71, 2, 2, 5976, 902, 3, 2, 2, 2, 5977, 5978, 7, 81, 2, 2, 5978, 5979, 7, 72, 2, 2, 5979, 5980, 7, 72, 2, 2, 5980, 5981, 7, 78, 2, 2, 5981, 5982, 7, 75, 2, 2, 5982, 5983, 7, 80, 2, 2, 5983, 5984, 7, 71, 2, 2, 5984, 904, 3, 2, 2, 2, 5985, 5986, 7, 81, 2, 2, 5986, 5987, 7, 72, 2, 2, 5987, 5988, 7, 72, 2, 2, 5988, 5989, 7, 85, 2, 2, 5989, 5990, 7, 71, 2, 2, 5990, 5991, 7, 86, 2, 2, 5991, 906, 3, 2, 2, 2, 5992, 5993, 7, 81, 2, 2, 5993, 5994, 7, 76, 2, 2, 5994, 908, 3, 2, 2, 2, 5995, 5996, 7, 81, 2, 2, 5996, 5997, 7, 78, 2, 2, 5997, 5998, 7, 70, 2, 2, 5998, 5999, 7, 97, 2, 2, 5999, 6000, 7, 82, 2, 2, 6000, 6001, 7, 67, 2, 2, 6001, 6002, 7, 85, 2, 2, 6002, 6003, 7, 85, 2, 2, 6003, 6004, 7, 89, 2, 2, 6004, 6005, 7, 81, 2, 2, 6005, 6006, 7, 84, 2, 2, 6006, 6007, 7, 70, 2, 2, 6007, 910, 3, 2, 2, 2, 6008, 6009, 7, 81, 2, 2, 6009, 6010, 7, 80, 2, 2, 6010, 6011, 7, 71, 2, 2, 6011, 912, 3, 2, 2, 2, 6012, 6013, 7, 81, 2, 2, 6013, 6014, 7, 80, 2, 2, 6014, 6015, 7, 78, 2, 2, 6015, 6016, 7, 75, 2, 2, 6016, 6017, 7, 80, 2, 2, 6017, 6018, 7, 71, 2, 2, 6018, 914, 3, 2, 2, 2, 6019, 6020, 7, 81, 2, 2, 6020, 6021, 7, 80, 2, 2, 6021, 6022, 7, 78, 2, 2, 6022, 6023, 7, 91, 2, 2, 6023, 916, 3, 2, 2, 2, 6024, 6025, 7, 81, 2, 2, 6025, 6026, 7, 82, 2, 2, 6026, 6027, 7, 71, 2, 2, 6027, 6028, 7, 80, 2, 2, 6028, 918, 3, 2, 2, 2, 6029, 6030, 7, 81, 2, 2, 6030, 6031, 7, 82, 2, 2, 6031, 6032, 7, 86, 2, 2, 6032, 6033, 7, 75, 2, 2, 6033, 6034, 7, 79, 2, 2, 6034, 6035, 7, 75, 2, 2, 6035, 6036, 7, 92, 2, 2, 6036, 6037, 7, 71, 2, 2, 6037, 6038, 7, 84, 2, 2, 6038, 6039, 7, 97, 2, 2, 6039, 6040, 7, 69, 2, 2, 6040, 6041, 7, 81, 2, 2, 6041, 6042, 7, 85, 2, 2, 6042, 6043, 7, 86, 2, 2, 6043, 6044, 7, 85, 2, 2, 6044, 920, 3, 2, 2, 2, 6045, 6046, 7, 81, 2, 2, 6046, 6047, 7, 82, 2, 2, 6047, 6048, 7, 86, 2, 2, 6048, 6049, 7, 75, 2, 2, 6049, 6050, 7, 81, 2, 2, 6050, 6051, 7, 80, 2, 2, 6051, 6052, 7, 85, 2, 2, 6052, 922, 3, 2, 2, 2, 6053, 6054, 7, 81, 2, 2, 6054, 6055, 7, 89, 2, 2, 6055, 6056, 7, 80, 2, 2, 6056, 6057, 7, 71, 2, 2, 6057, 6058, 7, 84, 2, 2, 6058, 924, 3, 2, 2, 2, 6059, 6060, 7, 82, 2, 2, 6060, 6061, 7, 67, 2, 2, 6061, 6062, 7, 69, 2, 2, 6062, 6063, 7, 77, 2, 2, 6063, 6064, 7, 97, 2, 2, 6064, 6065, 7, 77, 2, 2, 6065, 6066, 7, 71, 2, 2, 6066, 6067, 7, 91, 2, 2, 6067, 6068, 7, 85, 2, 2, 6068, 926, 3, 2, 2, 2, 6069, 6070, 7, 82, 2, 2, 6070, 6071, 7, 67, 2, 2, 6071, 6072, 7, 73, 2, 2, 6072, 6073, 7, 71, 2, 2, 6073, 928, 3, 2, 2, 2, 6074, 6075, 7, 82, 2, 2, 6075, 6076, 7, 67, 2, 2, 6076, 6077, 7, 84, 2, 2, 6077, 6078, 7, 85, 2, 2, 6078, 6079, 7, 71, 2, 2, 6079, 6080, 7, 84, 2, 2, 6080, 930, 3, 2, 2, 2, 6081, 6082, 7, 82, 2, 2, 6082, 6083, 7, 67, 2, 2, 6083, 6084, 7, 84, 2, 2, 6084, 6085, 7, 86, 2, 2, 6085, 6086, 7, 75, 2, 2, 6086, 6087, 7, 67, 2, 2, 6087, 6088, 7, 78, 2, 2, 6088, 932, 3, 2, 2, 2, 6089, 6090, 7, 82, 2, 2, 6090, 6091, 7, 67, 2, 2, 6091, 6092, 7, 84, 2, 2, 6092, 6093, 7, 86, 2, 2, 6093, 6094, 7, 75, 2, 2, 6094, 6095, 7, 86, 2, 2, 6095, 6096, 7, 75, 2, 2, 6096, 6097, 7, 81, 2, 2, 6097, 6098, 7, 80, 2, 2, 6098, 6099, 7, 75, 2, 2, 6099, 6100, 7, 80, 2, 2, 6100, 6101, 7, 73, 2, 2, 6101, 934, 3, 2, 2, 2, 6102, 6103, 7, 82, 2, 2, 6103, 6104, 7, 67, 2, 2, 6104, 6105, 7, 84, 2, 2, 6105, 6106, 7, 86, 2, 2, 6106, 6107, 7, 75, 2, 2, 6107, 6108, 7, 86, 2, 2, 6108, 6109, 7, 75, 2, 2, 6109, 6110, 7, 81, 2, 2, 6110, 6111, 7, 80, 2, 2, 6111, 6112, 7, 85, 2, 2, 6112, 936, 3, 2, 2, 2, 6113, 6114, 7, 82, 2, 2, 6114, 6115, 7, 67, 2, 2, 6115, 6116, 7, 85, 2, 2, 6116, 6117, 7, 85, 2, 2, 6117, 6118, 7, 89, 2, 2, 6118, 6119, 7, 81, 2, 2, 6119, 6120, 7, 84, 2, 2, 6120, 6121, 7, 70, 2, 2, 6121, 938, 3, 2, 2, 2, 6122, 6123, 7, 82, 2, 2, 6123, 6124, 7, 74, 2, 2, 6124, 6125, 7, 67, 2, 2, 6125, 6126, 7, 85, 2, 2, 6126, 6127, 7, 71, 2, 2, 6127, 940, 3, 2, 2, 2, 6128, 6129, 7, 82, 2, 2, 6129, 6130, 7, 78, 2, 2, 6130, 6131, 7, 87, 2, 2, 6131, 6132, 7, 73, 2, 2, 6132, 6133, 7, 75, 2, 2, 6133, 6134, 7, 80, 2, 2, 6134, 942, 3, 2, 2, 2, 6135, 6136, 7, 82, 2, 2, 6136, 6137, 7, 78, 2, 2, 6137, 6138, 7, 87, 2, 2, 6138, 6139, 7, 73, 2, 2, 6139, 6140, 7, 75, 2, 2, 6140, 6141, 7, 80, 2, 2, 6141, 6142, 7, 97, 2, 2, 6142, 6143, 7, 70, 2, 2, 6143, 6144, 7, 75, 2, 2, 6144, 6145, 7, 84, 2, 2, 6145, 944, 3, 2, 2, 2, 6146, 6147, 7, 82, 2, 2, 6147, 6148, 7, 78, 2, 2, 6148, 6149, 7, 87, 2, 2, 6149, 6150, 7, 73, 2, 2, 6150, 6151, 7, 75, 2, 2, 6151, 6152, 7, 80, 2, 2, 6152, 6153, 7, 85, 2, 2, 6153, 946, 3, 2, 2, 2, 6154, 6155, 7, 82, 2, 2, 6155, 6156, 7, 81, 2, 2, 6156, 6157, 7, 84, 2, 2, 6157, 6158, 7, 86, 2, 2, 6158, 948, 3, 2, 2, 2, 6159, 6160, 7, 82, 2, 2, 6160, 6161, 7, 84, 2, 2, 6161, 6162, 7, 71, 2, 2, 6162, 6163, 7, 69, 2, 2, 6163, 6164, 7, 71, 2, 2, 6164, 6165, 7, 70, 2, 2, 6165, 6166, 7, 71, 2, 2, 6166, 6167, 7, 85, 2, 2, 6167, 950, 3, 2, 2, 2, 6168, 6169, 7, 82, 2, 2, 6169, 6170, 7, 84, 2, 2, 6170, 6171, 7, 71, 2, 2, 6171, 6172, 7, 82, 2, 2, 6172, 6173, 7, 67, 2, 2, 6173, 6174, 7, 84, 2, 2, 6174, 6175, 7, 71, 2, 2, 6175, 952, 3, 2, 2, 2, 6176, 6177, 7, 82, 2, 2, 6177, 6178, 7, 84, 2, 2, 6178, 6179, 7, 71, 2, 2, 6179, 6180, 7, 85, 2, 2, 6180, 6181, 7, 71, 2, 2, 6181, 6182, 7, 84, 2, 2, 6182, 6183, 7, 88, 2, 2, 6183, 6184, 7, 71, 2, 2, 6184, 954, 3, 2, 2, 2, 6185, 6186, 7, 82, 2, 2, 6186, 6187, 7, 84, 2, 2, 6187, 6188, 7, 71, 2, 2, 6188, 6189, 7, 88, 2, 2, 6189, 956, 3, 2, 2, 2, 6190, 6191, 7, 82, 2, 2, 6191, 6192, 7, 84, 2, 2, 6192, 6193, 7, 81, 2, 2, 6193, 6194, 7, 69, 2, 2, 6194, 6195, 7, 71, 2, 2, 6195, 6196, 7, 85, 2, 2, 6196, 6197, 7, 85, 2, 2, 6197, 6198, 7, 78, 2, 2, 6198, 6199, 7, 75, 2, 2, 6199, 6200, 7, 85, 2, 2, 6200, 6201, 7, 86, 2, 2, 6201, 958, 3, 2, 2, 2, 6202, 6203, 7, 82, 2, 2, 6203, 6204, 7, 84, 2, 2, 6204, 6205, 7, 81, 2, 2, 6205, 6206, 7, 72, 2, 2, 6206, 6207, 7, 75, 2, 2, 6207, 6208, 7, 78, 2, 2, 6208, 6209, 7, 71, 2, 2, 6209, 960, 3, 2, 2, 2, 6210, 6211, 7, 82, 2, 2, 6211, 6212, 7, 84, 2, 2, 6212, 6213, 7, 81, 2, 2, 6213, 6214, 7, 72, 2, 2, 6214, 6215, 7, 75, 2, 2, 6215, 6216, 7, 78, 2, 2, 6216, 6217, 7, 71, 2, 2, 6217, 6218, 7, 85, 2, 2, 6218, 962, 3, 2, 2, 2, 6219, 6220, 7, 82, 2, 2, 6220, 6221, 7, 84, 2, 2, 6221, 6222, 7, 81, 2, 2, 6222, 6223, 7, 90, 2, 2, 6223, 6224, 7, 91, 2, 2, 6224, 964, 3, 2, 2, 2, 6225, 6226, 7, 83, 2, 2, 6226, 6227, 7, 87, 2, 2, 6227, 6228, 7, 71, 2, 2, 6228, 6229, 7, 84, 2, 2, 6229, 6230, 7, 91, 2, 2, 6230, 966, 3, 2, 2, 2, 6231, 6232, 7, 83, 2, 2, 6232, 6233, 7, 87, 2, 2, 6233, 6234, 7, 75, 2, 2, 6234, 6235, 7, 69, 2, 2, 6235, 6236, 7, 77, 2, 2, 6236, 968, 3, 2, 2, 2, 6237, 6238, 7, 84, 2, 2, 6238, 6239, 7, 71, 2, 2, 6239, 6240, 7, 68, 2, 2, 6240, 6241, 7, 87, 2, 2, 6241, 6242, 7, 75, 2, 2, 6242, 6243, 7, 78, 2, 2, 6243, 6244, 7, 70, 2, 2, 6244, 970, 3, 2, 2, 2, 6245, 6246, 7, 84, 2, 2, 6246, 6247, 7, 71, 2, 2, 6247, 6248, 7, 69, 2, 2, 6248, 6249, 7, 81, 2, 2, 6249, 6250, 7, 88, 2, 2, 6250, 6251, 7, 71, 2, 2, 6251, 6252, 7, 84, 2, 2, 6252, 972, 3, 2, 2, 2, 6253, 6254, 7, 84, 2, 2, 6254, 6255, 7, 71, 2, 2, 6255, 6256, 7, 70, 2, 2, 6256, 6257, 7, 81, 2, 2, 6257, 6258, 7, 97, 2, 2, 6258, 6259, 7, 68, 2, 2, 6259, 6260, 7, 87, 2, 2, 6260, 6261, 7, 72, 2, 2, 6261, 6262, 7, 72, 2, 2, 6262, 6263, 7, 71, 2, 2, 6263, 6264, 7, 84, 2, 2, 6264, 6265, 7, 97, 2, 2, 6265, 6266, 7, 85, 2, 2, 6266, 6267, 7, 75, 2, 2, 6267, 6268, 7, 92, 2, 2, 6268, 6269, 7, 71, 2, 2, 6269, 974, 3, 2, 2, 2, 6270, 6271, 7, 84, 2, 2, 6271, 6272, 7, 71, 2, 2, 6272, 6273, 7, 70, 2, 2, 6273, 6274, 7, 87, 2, 2, 6274, 6275, 7, 80, 2, 2, 6275, 6276, 7, 70, 2, 2, 6276, 6277, 7, 67, 2, 2, 6277, 6278, 7, 80, 2, 2, 6278, 6279, 7, 86, 2, 2, 6279, 976, 3, 2, 2, 2, 6280, 6281, 7, 84, 2, 2, 6281, 6282, 7, 71, 2, 2, 6282, 6283, 7, 78, 2, 2, 6283, 6284, 7, 67, 2, 2, 6284, 6285, 7, 91, 2, 2, 6285, 978, 3, 2, 2, 2, 6286, 6287, 7, 84, 2, 2, 6287, 6288, 7, 71, 2, 2, 6288, 6289, 7, 78, 2, 2, 6289, 6290, 7, 67, 2, 2, 6290, 6291, 7, 91, 2, 2, 6291, 6292, 7, 97, 2, 2, 6292, 6293, 7, 78, 2, 2, 6293, 6294, 7, 81, 2, 2, 6294, 6295, 7, 73, 2, 2, 6295, 6296, 7, 97, 2, 2, 6296, 6297, 7, 72, 2, 2, 6297, 6298, 7, 75, 2, 2, 6298, 6299, 7, 78, 2, 2, 6299, 6300, 7, 71, 2, 2, 6300, 980, 3, 2, 2, 2, 6301, 6302, 7, 84, 2, 2, 6302, 6303, 7, 71, 2, 2, 6303, 6304, 7, 78, 2, 2, 6304, 6305, 7, 67, 2, 2, 6305, 6306, 7, 91, 2, 2, 6306, 6307, 7, 97, 2, 2, 6307, 6308, 7, 78, 2, 2, 6308, 6309, 7, 81, 2, 2, 6309, 6310, 7, 73, 2, 2, 6310, 6311, 7, 97, 2, 2, 6311, 6312, 7, 82, 2, 2, 6312, 6313, 7, 81, 2, 2, 6313, 6314, 7, 85, 2, 2, 6314, 982, 3, 2, 2, 2, 6315, 6316, 7, 84, 2, 2, 6316, 6317, 7, 71, 2, 2, 6317, 6318, 7, 78, 2, 2, 6318, 6319, 7, 67, 2, 2, 6319, 6320, 7, 91, 2, 2, 6320, 6321, 7, 78, 2, 2, 6321, 6322, 7, 81, 2, 2, 6322, 6323, 7, 73, 2, 2, 6323, 984, 3, 2, 2, 2, 6324, 6325, 7, 84, 2, 2, 6325, 6326, 7, 71, 2, 2, 6326, 6327, 7, 79, 2, 2, 6327, 6328, 7, 81, 2, 2, 6328, 6329, 7, 88, 2, 2, 6329, 6330, 7, 71, 2, 2, 6330, 986, 3, 2, 2, 2, 6331, 6332, 7, 84, 2, 2, 6332, 6333, 7, 71, 2, 2, 6333, 6334, 7, 81, 2, 2, 6334, 6335, 7, 84, 2, 2, 6335, 6336, 7, 73, 2, 2, 6336, 6337, 7, 67, 2, 2, 6337, 6338, 7, 80, 2, 2, 6338, 6339, 7, 75, 2, 2, 6339, 6340, 7, 92, 2, 2, 6340, 6341, 7, 71, 2, 2, 6341, 988, 3, 2, 2, 2, 6342, 6343, 7, 84, 2, 2, 6343, 6344, 7, 71, 2, 2, 6344, 6345, 7, 82, 2, 2, 6345, 6346, 7, 67, 2, 2, 6346, 6347, 7, 75, 2, 2, 6347, 6348, 7, 84, 2, 2, 6348, 990, 3, 2, 2, 2, 6349, 6350, 7, 84, 2, 2, 6350, 6351, 7, 71, 2, 2, 6351, 6352, 7, 82, 2, 2, 6352, 6353, 7, 78, 2, 2, 6353, 6354, 7, 75, 2, 2, 6354, 6355, 7, 69, 2, 2, 6355, 6356, 7, 67, 2, 2, 6356, 6357, 7, 86, 2, 2, 6357, 6358, 7, 71, 2, 2, 6358, 6359, 7, 97, 2, 2, 6359, 6360, 7, 70, 2, 2, 6360, 6361, 7, 81, 2, 2, 6361, 6362, 7, 97, 2, 2, 6362, 6363, 7, 70, 2, 2, 6363, 6364, 7, 68, 2, 2, 6364, 992, 3, 2, 2, 2, 6365, 6366, 7, 84, 2, 2, 6366, 6367, 7, 71, 2, 2, 6367, 6368, 7, 82, 2, 2, 6368, 6369, 7, 78, 2, 2, 6369, 6370, 7, 75, 2, 2, 6370, 6371, 7, 69, 2, 2, 6371, 6372, 7, 67, 2, 2, 6372, 6373, 7, 86, 2, 2, 6373, 6374, 7, 71, 2, 2, 6374, 6375, 7, 97, 2, 2, 6375, 6376, 7, 70, 2, 2, 6376, 6377, 7, 81, 2, 2, 6377, 6378, 7, 97, 2, 2, 6378, 6379, 7, 86, 2, 2, 6379, 6380, 7, 67, 2, 2, 6380, 6381, 7, 68, 2, 2, 6381, 6382, 7, 78, 2, 2, 6382, 6383, 7, 71, 2, 2, 6383, 994, 3, 2, 2, 2, 6384, 6385, 7, 84, 2, 2, 6385, 6386, 7, 71, 2, 2, 6386, 6387, 7, 82, 2, 2, 6387, 6388, 7, 78, 2, 2, 6388, 6389, 7, 75, 2, 2, 6389, 6390, 7, 69, 2, 2, 6390, 6391, 7, 67, 2, 2, 6391, 6392, 7, 86, 2, 2, 6392, 6393, 7, 71, 2, 2, 6393, 6394, 7, 97, 2, 2, 6394, 6395, 7, 75, 2, 2, 6395, 6396, 7, 73, 2, 2, 6396, 6397, 7, 80, 2, 2, 6397, 6398, 7, 81, 2, 2, 6398, 6399, 7, 84, 2, 2, 6399, 6400, 7, 71, 2, 2, 6400, 6401, 7, 97, 2, 2, 6401, 6402, 7, 70, 2, 2, 6402, 6403, 7, 68, 2, 2, 6403, 996, 3, 2, 2, 2, 6404, 6405, 7, 84, 2, 2, 6405, 6406, 7, 71, 2, 2, 6406, 6407, 7, 82, 2, 2, 6407, 6408, 7, 78, 2, 2, 6408, 6409, 7, 75, 2, 2, 6409, 6410, 7, 69, 2, 2, 6410, 6411, 7, 67, 2, 2, 6411, 6412, 7, 86, 2, 2, 6412, 6413, 7, 71, 2, 2, 6413, 6414, 7, 97, 2, 2, 6414, 6415, 7, 75, 2, 2, 6415, 6416, 7, 73, 2, 2, 6416, 6417, 7, 80, 2, 2, 6417, 6418, 7, 81, 2, 2, 6418, 6419, 7, 84, 2, 2, 6419, 6420, 7, 71, 2, 2, 6420, 6421, 7, 97, 2, 2, 6421, 6422, 7, 86, 2, 2, 6422, 6423, 7, 67, 2, 2, 6423, 6424, 7, 68, 2, 2, 6424, 6425, 7, 78, 2, 2, 6425, 6426, 7, 71, 2, 2, 6426, 998, 3, 2, 2, 2, 6427, 6428, 7, 84, 2, 2, 6428, 6429, 7, 71, 2, 2, 6429, 6430, 7, 82, 2, 2, 6430, 6431, 7, 78, 2, 2, 6431, 6432, 7, 75, 2, 2, 6432, 6433, 7, 69, 2, 2, 6433, 6434, 7, 67, 2, 2, 6434, 6435, 7, 86, 2, 2, 6435, 6436, 7, 71, 2, 2, 6436, 6437, 7, 97, 2, 2, 6437, 6438, 7, 84, 2, 2, 6438, 6439, 7, 71, 2, 2, 6439, 6440, 7, 89, 2, 2, 6440, 6441, 7, 84, 2, 2, 6441, 6442, 7, 75, 2, 2, 6442, 6443, 7, 86, 2, 2, 6443, 6444, 7, 71, 2, 2, 6444, 6445, 7, 97, 2, 2, 6445, 6446, 7, 70, 2, 2, 6446, 6447, 7, 68, 2, 2, 6447, 1000, 3, 2, 2, 2, 6448, 6449, 7, 84, 2, 2, 6449, 6450, 7, 71, 2, 2, 6450, 6451, 7, 82, 2, 2, 6451, 6452, 7, 78, 2, 2, 6452, 6453, 7, 75, 2, 2, 6453, 6454, 7, 69, 2, 2, 6454, 6455, 7, 67, 2, 2, 6455, 6456, 7, 86, 2, 2, 6456, 6457, 7, 71, 2, 2, 6457, 6458, 7, 97, 2, 2, 6458, 6459, 7, 89, 2, 2, 6459, 6460, 7, 75, 2, 2, 6460, 6461, 7, 78, 2, 2, 6461, 6462, 7, 70, 2, 2, 6462, 6463, 7, 97, 2, 2, 6463, 6464, 7, 70, 2, 2, 6464, 6465, 7, 81, 2, 2, 6465, 6466, 7, 97, 2, 2, 6466, 6467, 7, 86, 2, 2, 6467, 6468, 7, 67, 2, 2, 6468, 6469, 7, 68, 2, 2, 6469, 6470, 7, 78, 2, 2, 6470, 6471, 7, 71, 2, 2, 6471, 1002, 3, 2, 2, 2, 6472, 6473, 7, 84, 2, 2, 6473, 6474, 7, 71, 2, 2, 6474, 6475, 7, 82, 2, 2, 6475, 6476, 7, 78, 2, 2, 6476, 6477, 7, 75, 2, 2, 6477, 6478, 7, 69, 2, 2, 6478, 6479, 7, 67, 2, 2, 6479, 6480, 7, 86, 2, 2, 6480, 6481, 7, 71, 2, 2, 6481, 6482, 7, 97, 2, 2, 6482, 6483, 7, 89, 2, 2, 6483, 6484, 7, 75, 2, 2, 6484, 6485, 7, 78, 2, 2, 6485, 6486, 7, 70, 2, 2, 6486, 6487, 7, 97, 2, 2, 6487, 6488, 7, 75, 2, 2, 6488, 6489, 7, 73, 2, 2, 6489, 6490, 7, 80, 2, 2, 6490, 6491, 7, 81, 2, 2, 6491, 6492, 7, 84, 2, 2, 6492, 6493, 7, 71, 2, 2, 6493, 6494, 7, 97, 2, 2, 6494, 6495, 7, 86, 2, 2, 6495, 6496, 7, 67, 2, 2, 6496, 6497, 7, 68, 2, 2, 6497, 6498, 7, 78, 2, 2, 6498, 6499, 7, 71, 2, 2, 6499, 1004, 3, 2, 2, 2, 6500, 6501, 7, 84, 2, 2, 6501, 6502, 7, 71, 2, 2, 6502, 6503, 7, 82, 2, 2, 6503, 6504, 7, 78, 2, 2, 6504, 6505, 7, 75, 2, 2, 6505, 6506, 7, 69, 2, 2, 6506, 6507, 7, 67, 2, 2, 6507, 6508, 7, 86, 2, 2, 6508, 6509, 7, 75, 2, 2, 6509, 6510, 7, 81, 2, 2, 6510, 6511, 7, 80, 2, 2, 6511, 1006, 3, 2, 2, 2, 6512, 6513, 7, 84, 2, 2, 6513, 6514, 7, 71, 2, 2, 6514, 6515, 7, 85, 2, 2, 6515, 6516, 7, 71, 2, 2, 6516, 6517, 7, 86, 2, 2, 6517, 1008, 3, 2, 2, 2, 6518, 6519, 7, 84, 2, 2, 6519, 6520, 7, 71, 2, 2, 6520, 6521, 7, 85, 2, 2, 6521, 6522, 7, 87, 2, 2, 6522, 6523, 7, 79, 2, 2, 6523, 6524, 7, 71, 2, 2, 6524, 1010, 3, 2, 2, 2, 6525, 6526, 7, 84, 2, 2, 6526, 6527, 7, 71, 2, 2, 6527, 6528, 7, 86, 2, 2, 6528, 6529, 7, 87, 2, 2, 6529, 6530, 7, 84, 2, 2, 6530, 6531, 7, 80, 2, 2, 6531, 6532, 7, 71, 2, 2, 6532, 6533, 7, 70, 2, 2, 6533, 6534, 7, 97, 2, 2, 6534, 6535, 7, 85, 2, 2, 6535, 6536, 7, 83, 2, 2, 6536, 6537, 7, 78, 2, 2, 6537, 6538, 7, 85, 2, 2, 6538, 6539, 7, 86, 2, 2, 6539, 6540, 7, 67, 2, 2, 6540, 6541, 7, 86, 2, 2, 6541, 6542, 7, 71, 2, 2, 6542, 1012, 3, 2, 2, 2, 6543, 6544, 7, 84, 2, 2, 6544, 6545, 7, 71, 2, 2, 6545, 6546, 7, 86, 2, 2, 6546, 6547, 7, 87, 2, 2, 6547, 6548, 7, 84, 2, 2, 6548, 6549, 7, 80, 2, 2, 6549, 6550, 7, 85, 2, 2, 6550, 1014, 3, 2, 2, 2, 6551, 6552, 7, 84, 2, 2, 6552, 6553, 7, 81, 2, 2, 6553, 6554, 7, 78, 2, 2, 6554, 6555, 7, 71, 2, 2, 6555, 1016, 3, 2, 2, 2, 6556, 6557, 7, 84, 2, 2, 6557, 6558, 7, 81, 2, 2, 6558, 6559, 7, 78, 2, 2, 6559, 6560, 7, 78, 2, 2, 6560, 6561, 7, 68, 2, 2, 6561, 6562, 7, 67, 2, 2, 6562, 6563, 7, 69, 2, 2, 6563, 6564, 7, 77, 2, 2, 6564, 1018, 3, 2, 2, 2, 6565, 6566, 7, 84, 2, 2, 6566, 6567, 7, 81, 2, 2, 6567, 6568, 7, 78, 2, 2, 6568, 6569, 7, 78, 2, 2, 6569, 6570, 7, 87, 2, 2, 6570, 6571, 7, 82, 2, 2, 6571, 1020, 3, 2, 2, 2, 6572, 6573, 7, 84, 2, 2, 6573, 6574, 7, 81, 2, 2, 6574, 6575, 7, 86, 2, 2, 6575, 6576, 7, 67, 2, 2, 6576, 6577, 7, 86, 2, 2, 6577, 6578, 7, 71, 2, 2, 6578, 1022, 3, 2, 2, 2, 6579, 6580, 7, 84, 2, 2, 6580, 6581, 7, 81, 2, 2, 6581, 6582, 7, 89, 2, 2, 6582, 1024, 3, 2, 2, 2, 6583, 6584, 7, 84, 2, 2, 6584, 6585, 7, 81, 2, 2, 6585, 6586, 7, 89, 2, 2, 6586, 6587, 7, 85, 2, 2, 6587, 1026, 3, 2, 2, 2, 6588, 6589, 7, 84, 2, 2, 6589, 6590, 7, 81, 2, 2, 6590, 6591, 7, 89, 2, 2, 6591, 6592, 7, 97, 2, 2, 6592, 6593, 7, 72, 2, 2, 6593, 6594, 7, 81, 2, 2, 6594, 6595, 7, 84, 2, 2, 6595, 6596, 7, 79, 2, 2, 6596, 6597, 7, 67, 2, 2, 6597, 6598, 7, 86, 2, 2, 6598, 1028, 3, 2, 2, 2, 6599, 6600, 7, 85, 2, 2, 6600, 6601, 7, 67, 2, 2, 6601, 6602, 7, 88, 2, 2, 6602, 6603, 7, 71, 2, 2, 6603, 6604, 7, 82, 2, 2, 6604, 6605, 7, 81, 2, 2, 6605, 6606, 7, 75, 2, 2, 6606, 6607, 7, 80, 2, 2, 6607, 6608, 7, 86, 2, 2, 6608, 1030, 3, 2, 2, 2, 6609, 6610, 7, 85, 2, 2, 6610, 6611, 7, 69, 2, 2, 6611, 6612, 7, 74, 2, 2, 6612, 6613, 7, 71, 2, 2, 6613, 6614, 7, 70, 2, 2, 6614, 6615, 7, 87, 2, 2, 6615, 6616, 7, 78, 2, 2, 6616, 6617, 7, 71, 2, 2, 6617, 1032, 3, 2, 2, 2, 6618, 6619, 7, 85, 2, 2, 6619, 6620, 7, 71, 2, 2, 6620, 6621, 7, 69, 2, 2, 6621, 6622, 7, 87, 2, 2, 6622, 6623, 7, 84, 2, 2, 6623, 6624, 7, 75, 2, 2, 6624, 6625, 7, 86, 2, 2, 6625, 6626, 7, 91, 2, 2, 6626, 1034, 3, 2, 2, 2, 6627, 6628, 7, 85, 2, 2, 6628, 6629, 7, 71, 2, 2, 6629, 6630, 7, 84, 2, 2, 6630, 6631, 7, 88, 2, 2, 6631, 6632, 7, 71, 2, 2, 6632, 6633, 7, 84, 2, 2, 6633, 1036, 3, 2, 2, 2, 6634, 6635, 7, 85, 2, 2, 6635, 6636, 7, 71, 2, 2, 6636, 6637, 7, 85, 2, 2, 6637, 6638, 7, 85, 2, 2, 6638, 6639, 7, 75, 2, 2, 6639, 6640, 7, 81, 2, 2, 6640, 6641, 7, 80, 2, 2, 6641, 1038, 3, 2, 2, 2, 6642, 6643, 7, 85, 2, 2, 6643, 6644, 7, 74, 2, 2, 6644, 6645, 7, 67, 2, 2, 6645, 6646, 7, 84, 2, 2, 6646, 6647, 7, 71, 2, 2, 6647, 1040, 3, 2, 2, 2, 6648, 6649, 7, 85, 2, 2, 6649, 6650, 7, 74, 2, 2, 6650, 6651, 7, 67, 2, 2, 6651, 6652, 7, 84, 2, 2, 6652, 6653, 7, 71, 2, 2, 6653, 6654, 7, 70, 2, 2, 6654, 1042, 3, 2, 2, 2, 6655, 6656, 7, 85, 2, 2, 6656, 6657, 7, 75, 2, 2, 6657, 6658, 7, 73, 2, 2, 6658, 6659, 7, 80, 2, 2, 6659, 6660, 7, 71, 2, 2, 6660, 6661, 7, 70, 2, 2, 6661, 1044, 3, 2, 2, 2, 6662, 6663, 7, 85, 2, 2, 6663, 6664, 7, 75, 2, 2, 6664, 6665, 7, 79, 2, 2, 6665, 6666, 7, 82, 2, 2, 6666, 6667, 7, 78, 2, 2, 6667, 6668, 7, 71, 2, 2, 6668, 1046, 3, 2, 2, 2, 6669, 6670, 7, 85, 2, 2, 6670, 6671, 7, 78, 2, 2, 6671, 6672, 7, 67, 2, 2, 6672, 6673, 7, 88, 2, 2, 6673, 6674, 7, 71, 2, 2, 6674, 1048, 3, 2, 2, 2, 6675, 6676, 7, 85, 2, 2, 6676, 6677, 7, 78, 2, 2, 6677, 6678, 7, 81, 2, 2, 6678, 6679, 7, 89, 2, 2, 6679, 1050, 3, 2, 2, 2, 6680, 6681, 7, 85, 2, 2, 6681, 6682, 7, 80, 2, 2, 6682, 6683, 7, 67, 2, 2, 6683, 6684, 7, 82, 2, 2, 6684, 6685, 7, 85, 2, 2, 6685, 6686, 7, 74, 2, 2, 6686, 6687, 7, 81, 2, 2, 6687, 6688, 7, 86, 2, 2, 6688, 1052, 3, 2, 2, 2, 6689, 6690, 7, 85, 2, 2, 6690, 6691, 7, 81, 2, 2, 6691, 6692, 7, 69, 2, 2, 6692, 6693, 7, 77, 2, 2, 6693, 6694, 7, 71, 2, 2, 6694, 6695, 7, 86, 2, 2, 6695, 1054, 3, 2, 2, 2, 6696, 6697, 7, 85, 2, 2, 6697, 6698, 7, 81, 2, 2, 6698, 6699, 7, 79, 2, 2, 6699, 6700, 7, 71, 2, 2, 6700, 1056, 3, 2, 2, 2, 6701, 6702, 7, 85, 2, 2, 6702, 6703, 7, 81, 2, 2, 6703, 6704, 7, 80, 2, 2, 6704, 6705, 7, 67, 2, 2, 6705, 6706, 7, 79, 2, 2, 6706, 6707, 7, 71, 2, 2, 6707, 1058, 3, 2, 2, 2, 6708, 6709, 7, 85, 2, 2, 6709, 6710, 7, 81, 2, 2, 6710, 6711, 7, 87, 2, 2, 6711, 6712, 7, 80, 2, 2, 6712, 6713, 7, 70, 2, 2, 6713, 6714, 7, 85, 2, 2, 6714, 1060, 3, 2, 2, 2, 6715, 6716, 7, 85, 2, 2, 6716, 6717, 7, 81, 2, 2, 6717, 6718, 7, 87, 2, 2, 6718, 6719, 7, 84, 2, 2, 6719, 6720, 7, 69, 2, 2, 6720, 6721, 7, 71, 2, 2, 6721, 1062, 3, 2, 2, 2, 6722, 6723, 7, 85, 2, 2, 6723, 6724, 7, 83, 2, 2, 6724, 6725, 7, 78, 2, 2, 6725, 6726, 7, 97, 2, 2, 6726, 6727, 7, 67, 2, 2, 6727, 6728, 7, 72, 2, 2, 6728, 6729, 7, 86, 2, 2, 6729, 6730, 7, 71, 2, 2, 6730, 6731, 7, 84, 2, 2, 6731, 6732, 7, 97, 2, 2, 6732, 6733, 7, 73, 2, 2, 6733, 6734, 7, 86, 2, 2, 6734, 6735, 7, 75, 2, 2, 6735, 6736, 7, 70, 2, 2, 6736, 6737, 7, 85, 2, 2, 6737, 1064, 3, 2, 2, 2, 6738, 6739, 7, 85, 2, 2, 6739, 6740, 7, 83, 2, 2, 6740, 6741, 7, 78, 2, 2, 6741, 6742, 7, 97, 2, 2, 6742, 6743, 7, 67, 2, 2, 6743, 6744, 7, 72, 2, 2, 6744, 6745, 7, 86, 2, 2, 6745, 6746, 7, 71, 2, 2, 6746, 6747, 7, 84, 2, 2, 6747, 6748, 7, 97, 2, 2, 6748, 6749, 7, 79, 2, 2, 6749, 6750, 7, 86, 2, 2, 6750, 6751, 7, 85, 2, 2, 6751, 6752, 7, 97, 2, 2, 6752, 6753, 7, 73, 2, 2, 6753, 6754, 7, 67, 2, 2, 6754, 6755, 7, 82, 2, 2, 6755, 6756, 7, 85, 2, 2, 6756, 1066, 3, 2, 2, 2, 6757, 6758, 7, 85, 2, 2, 6758, 6759, 7, 83, 2, 2, 6759, 6760, 7, 78, 2, 2, 6760, 6761, 7, 97, 2, 2, 6761, 6762, 7, 68, 2, 2, 6762, 6763, 7, 71, 2, 2, 6763, 6764, 7, 72, 2, 2, 6764, 6765, 7, 81, 2, 2, 6765, 6766, 7, 84, 2, 2, 6766, 6767, 7, 71, 2, 2, 6767, 6768, 7, 97, 2, 2, 6768, 6769, 7, 73, 2, 2, 6769, 6770, 7, 86, 2, 2, 6770, 6771, 7, 75, 2, 2, 6771, 6772, 7, 70, 2, 2, 6772, 6773, 7, 85, 2, 2, 6773, 1068, 3, 2, 2, 2, 6774, 6775, 7, 85, 2, 2, 6775, 6776, 7, 83, 2, 2, 6776, 6777, 7, 78, 2, 2, 6777, 6778, 7, 97, 2, 2, 6778, 6779, 7, 68, 2, 2, 6779, 6780, 7, 87, 2, 2, 6780, 6781, 7, 72, 2, 2, 6781, 6782, 7, 72, 2, 2, 6782, 6783, 7, 71, 2, 2, 6783, 6784, 7, 84, 2, 2, 6784, 6785, 7, 97, 2, 2, 6785, 6786, 7, 84, 2, 2, 6786, 6787, 7, 71, 2, 2, 6787, 6788, 7, 85, 2, 2, 6788, 6789, 7, 87, 2, 2, 6789, 6790, 7, 78, 2, 2, 6790, 6791, 7, 86, 2, 2, 6791, 1070, 3, 2, 2, 2, 6792, 6793, 7, 85, 2, 2, 6793, 6794, 7, 83, 2, 2, 6794, 6795, 7, 78, 2, 2, 6795, 6796, 7, 97, 2, 2, 6796, 6797, 7, 69, 2, 2, 6797, 6798, 7, 67, 2, 2, 6798, 6799, 7, 69, 2, 2, 6799, 6800, 7, 74, 2, 2, 6800, 6801, 7, 71, 2, 2, 6801, 1072, 3, 2, 2, 2, 6802, 6803, 7, 85, 2, 2, 6803, 6804, 7, 83, 2, 2, 6804, 6805, 7, 78, 2, 2, 6805, 6806, 7, 97, 2, 2, 6806, 6807, 7, 80, 2, 2, 6807, 6808, 7, 81, 2, 2, 6808, 6809, 7, 97, 2, 2, 6809, 6810, 7, 69, 2, 2, 6810, 6811, 7, 67, 2, 2, 6811, 6812, 7, 69, 2, 2, 6812, 6813, 7, 74, 2, 2, 6813, 6814, 7, 71, 2, 2, 6814, 1074, 3, 2, 2, 2, 6815, 6816, 7, 85, 2, 2, 6816, 6817, 7, 83, 2, 2, 6817, 6818, 7, 78, 2, 2, 6818, 6819, 7, 97, 2, 2, 6819, 6820, 7, 86, 2, 2, 6820, 6821, 7, 74, 2, 2, 6821, 6822, 7, 84, 2, 2, 6822, 6823, 7, 71, 2, 2, 6823, 6824, 7, 67, 2, 2, 6824, 6825, 7, 70, 2, 2, 6825, 1076, 3, 2, 2, 2, 6826, 6827, 7, 85, 2, 2, 6827, 6828, 7, 86, 2, 2, 6828, 6829, 7, 67, 2, 2, 6829, 6830, 7, 84, 2, 2, 6830, 6831, 7, 86, 2, 2, 6831, 1078, 3, 2, 2, 2, 6832, 6833, 7, 85, 2, 2, 6833, 6834, 7, 86, 2, 2, 6834, 6835, 7, 67, 2, 2, 6835, 6836, 7, 84, 2, 2, 6836, 6837, 7, 86, 2, 2, 6837, 6838, 7, 85, 2, 2, 6838, 1080, 3, 2, 2, 2, 6839, 6840, 7, 85, 2, 2, 6840, 6841, 7, 86, 2, 2, 6841, 6842, 7, 67, 2, 2, 6842, 6843, 7, 86, 2, 2, 6843, 6844, 7, 85, 2, 2, 6844, 6845, 7, 97, 2, 2, 6845, 6846, 7, 67, 2, 2, 6846, 6847, 7, 87, 2, 2, 6847, 6848, 7, 86, 2, 2, 6848, 6849, 7, 81, 2, 2, 6849, 6850, 7, 97, 2, 2, 6850, 6851, 7, 84, 2, 2, 6851, 6852, 7, 71, 2, 2, 6852, 6853, 7, 69, 2, 2, 6853, 6854, 7, 67, 2, 2, 6854, 6855, 7, 78, 2, 2, 6855, 6856, 7, 69, 2, 2, 6856, 1082, 3, 2, 2, 2, 6857, 6858, 7, 85, 2, 2, 6858, 6859, 7, 86, 2, 2, 6859, 6860, 7, 67, 2, 2, 6860, 6861, 7, 86, 2, 2, 6861, 6862, 7, 85, 2, 2, 6862, 6863, 7, 97, 2, 2, 6863, 6864, 7, 82, 2, 2, 6864, 6865, 7, 71, 2, 2, 6865, 6866, 7, 84, 2, 2, 6866, 6867, 7, 85, 2, 2, 6867, 6868, 7, 75, 2, 2, 6868, 6869, 7, 85, 2, 2, 6869, 6870, 7, 86, 2, 2, 6870, 6871, 7, 71, 2, 2, 6871, 6872, 7, 80, 2, 2, 6872, 6873, 7, 86, 2, 2, 6873, 1084, 3, 2, 2, 2, 6874, 6875, 7, 85, 2, 2, 6875, 6876, 7, 86, 2, 2, 6876, 6877, 7, 67, 2, 2, 6877, 6878, 7, 86, 2, 2, 6878, 6879, 7, 85, 2, 2, 6879, 6880, 7, 97, 2, 2, 6880, 6881, 7, 85, 2, 2, 6881, 6882, 7, 67, 2, 2, 6882, 6883, 7, 79, 2, 2, 6883, 6884, 7, 82, 2, 2, 6884, 6885, 7, 78, 2, 2, 6885, 6886, 7, 71, 2, 2, 6886, 6887, 7, 97, 2, 2, 6887, 6888, 7, 82, 2, 2, 6888, 6889, 7, 67, 2, 2, 6889, 6890, 7, 73, 2, 2, 6890, 6891, 7, 71, 2, 2, 6891, 6892, 7, 85, 2, 2, 6892, 1086, 3, 2, 2, 2, 6893, 6894, 7, 85, 2, 2, 6894, 6895, 7, 86, 2, 2, 6895, 6896, 7, 67, 2, 2, 6896, 6897, 7, 86, 2, 2, 6897, 6898, 7, 87, 2, 2, 6898, 6899, 7, 85, 2, 2, 6899, 1088, 3, 2, 2, 2, 6900, 6901, 7, 85, 2, 2, 6901, 6902, 7, 86, 2, 2, 6902, 6903, 7, 81, 2, 2, 6903, 6904, 7, 82, 2, 2, 6904, 1090, 3, 2, 2, 2, 6905, 6906, 7, 85, 2, 2, 6906, 6907, 7, 86, 2, 2, 6907, 6908, 7, 81, 2, 2, 6908, 6909, 7, 84, 2, 2, 6909, 6910, 7, 67, 2, 2, 6910, 6911, 7, 73, 2, 2, 6911, 6912, 7, 71, 2, 2, 6912, 1092, 3, 2, 2, 2, 6913, 6914, 7, 85, 2, 2, 6914, 6915, 7, 86, 2, 2, 6915, 6916, 7, 81, 2, 2, 6916, 6917, 7, 84, 2, 2, 6917, 6918, 7, 71, 2, 2, 6918, 6919, 7, 70, 2, 2, 6919, 1094, 3, 2, 2, 2, 6920, 6921, 7, 85, 2, 2, 6921, 6922, 7, 86, 2, 2, 6922, 6923, 7, 84, 2, 2, 6923, 6924, 7, 75, 2, 2, 6924, 6925, 7, 80, 2, 2, 6925, 6926, 7, 73, 2, 2, 6926, 1096, 3, 2, 2, 2, 6927, 6928, 7, 85, 2, 2, 6928, 6929, 7, 87, 2, 2, 6929, 6930, 7, 68, 2, 2, 6930, 6931, 7, 69, 2, 2, 6931, 6932, 7, 78, 2, 2, 6932, 6933, 7, 67, 2, 2, 6933, 6934, 7, 85, 2, 2, 6934, 6935, 7, 85, 2, 2, 6935, 6936, 7, 97, 2, 2, 6936, 6937, 7, 81, 2, 2, 6937, 6938, 7, 84, 2, 2, 6938, 6939, 7, 75, 2, 2, 6939, 6940, 7, 73, 2, 2, 6940, 6941, 7, 75, 2, 2, 6941, 6942, 7, 80, 2, 2, 6942, 1098, 3, 2, 2, 2, 6943, 6944, 7, 85, 2, 2, 6944, 6945, 7, 87, 2, 2, 6945, 6946, 7, 68, 2, 2, 6946, 6947, 7, 76, 2, 2, 6947, 6948, 7, 71, 2, 2, 6948, 6949, 7, 69, 2, 2, 6949, 6950, 7, 86, 2, 2, 6950, 1100, 3, 2, 2, 2, 6951, 6952, 7, 85, 2, 2, 6952, 6953, 7, 87, 2, 2, 6953, 6954, 7, 68, 2, 2, 6954, 6955, 7, 82, 2, 2, 6955, 6956, 7, 67, 2, 2, 6956, 6957, 7, 84, 2, 2, 6957, 6958, 7, 86, 2, 2, 6958, 6959, 7, 75, 2, 2, 6959, 6960, 7, 86, 2, 2, 6960, 6961, 7, 75, 2, 2, 6961, 6962, 7, 81, 2, 2, 6962, 6963, 7, 80, 2, 2, 6963, 1102, 3, 2, 2, 2, 6964, 6965, 7, 85, 2, 2, 6965, 6966, 7, 87, 2, 2, 6966, 6967, 7, 68, 2, 2, 6967, 6968, 7, 82, 2, 2, 6968, 6969, 7, 67, 2, 2, 6969, 6970, 7, 84, 2, 2, 6970, 6971, 7, 86, 2, 2, 6971, 6972, 7, 75, 2, 2, 6972, 6973, 7, 86, 2, 2, 6973, 6974, 7, 75, 2, 2, 6974, 6975, 7, 81, 2, 2, 6975, 6976, 7, 80, 2, 2, 6976, 6977, 7, 85, 2, 2, 6977, 1104, 3, 2, 2, 2, 6978, 6979, 7, 85, 2, 2, 6979, 6980, 7, 87, 2, 2, 6980, 6981, 7, 85, 2, 2, 6981, 6982, 7, 82, 2, 2, 6982, 6983, 7, 71, 2, 2, 6983, 6984, 7, 80, 2, 2, 6984, 6985, 7, 70, 2, 2, 6985, 1106, 3, 2, 2, 2, 6986, 6987, 7, 85, 2, 2, 6987, 6988, 7, 89, 2, 2, 6988, 6989, 7, 67, 2, 2, 6989, 6990, 7, 82, 2, 2, 6990, 6991, 7, 85, 2, 2, 6991, 1108, 3, 2, 2, 2, 6992, 6993, 7, 85, 2, 2, 6993, 6994, 7, 89, 2, 2, 6994, 6995, 7, 75, 2, 2, 6995, 6996, 7, 86, 2, 2, 6996, 6997, 7, 69, 2, 2, 6997, 6998, 7, 74, 2, 2, 6998, 6999, 7, 71, 2, 2, 6999, 7000, 7, 85, 2, 2, 7000, 1110, 3, 2, 2, 2, 7001, 7002, 7, 86, 2, 2, 7002, 7003, 7, 67, 2, 2, 7003, 7004, 7, 68, 2, 2, 7004, 7005, 7, 78, 2, 2, 7005, 7006, 7, 71, 2, 2, 7006, 7007, 7, 97, 2, 2, 7007, 7008, 7, 80, 2, 2, 7008, 7009, 7, 67, 2, 2, 7009, 7010, 7, 79, 2, 2, 7010, 7011, 7, 71, 2, 2, 7011, 1112, 3, 2, 2, 2, 7012, 7013, 7, 86, 2, 2, 7013, 7014, 7, 67, 2, 2, 7014, 7015, 7, 68, 2, 2, 7015, 7016, 7, 78, 2, 2, 7016, 7017, 7, 71, 2, 2, 7017, 7018, 7, 85, 2, 2, 7018, 7019, 7, 82, 2, 2, 7019, 7020, 7, 67, 2, 2, 7020, 7021, 7, 69, 2, 2, 7021, 7022, 7, 71, 2, 2, 7022, 1114, 3, 2, 2, 2, 7023, 7024, 7, 86, 2, 2, 7024, 7025, 7, 71, 2, 2, 7025, 7026, 7, 79, 2, 2, 7026, 7027, 7, 82, 2, 2, 7027, 7028, 7, 81, 2, 2, 7028, 7029, 7, 84, 2, 2, 7029, 7030, 7, 67, 2, 2, 7030, 7031, 7, 84, 2, 2, 7031, 7032, 7, 91, 2, 2, 7032, 1116, 3, 2, 2, 2, 7033, 7034, 7, 86, 2, 2, 7034, 7035, 7, 71, 2, 2, 7035, 7036, 7, 79, 2, 2, 7036, 7037, 7, 82, 2, 2, 7037, 7038, 7, 86, 2, 2, 7038, 7039, 7, 67, 2, 2, 7039, 7040, 7, 68, 2, 2, 7040, 7041, 7, 78, 2, 2, 7041, 7042, 7, 71, 2, 2, 7042, 1118, 3, 2, 2, 2, 7043, 7044, 7, 86, 2, 2, 7044, 7045, 7, 74, 2, 2, 7045, 7046, 7, 67, 2, 2, 7046, 7047, 7, 80, 2, 2, 7047, 1120, 3, 2, 2, 2, 7048, 7049, 7, 86, 2, 2, 7049, 7050, 7, 84, 2, 2, 7050, 7051, 7, 67, 2, 2, 7051, 7052, 7, 70, 2, 2, 7052, 7053, 7, 75, 2, 2, 7053, 7054, 7, 86, 2, 2, 7054, 7055, 7, 75, 2, 2, 7055, 7056, 7, 81, 2, 2, 7056, 7057, 7, 80, 2, 2, 7057, 7058, 7, 67, 2, 2, 7058, 7059, 7, 78, 2, 2, 7059, 1122, 3, 2, 2, 2, 7060, 7061, 7, 86, 2, 2, 7061, 7062, 7, 84, 2, 2, 7062, 7063, 7, 67, 2, 2, 7063, 7064, 7, 80, 2, 2, 7064, 7065, 7, 85, 2, 2, 7065, 7066, 7, 67, 2, 2, 7066, 7067, 7, 69, 2, 2, 7067, 7068, 7, 86, 2, 2, 7068, 7069, 7, 75, 2, 2, 7069, 7070, 7, 81, 2, 2, 7070, 7071, 7, 80, 2, 2, 7071, 1124, 3, 2, 2, 2, 7072, 7073, 7, 86, 2, 2, 7073, 7074, 7, 84, 2, 2, 7074, 7075, 7, 67, 2, 2, 7075, 7076, 7, 80, 2, 2, 7076, 7077, 7, 85, 2, 2, 7077, 7078, 7, 67, 2, 2, 7078, 7079, 7, 69, 2, 2, 7079, 7080, 7, 86, 2, 2, 7080, 7081, 7, 75, 2, 2, 7081, 7082, 7, 81, 2, 2, 7082, 7083, 7, 80, 2, 2, 7083, 7084, 7, 67, 2, 2, 7084, 7085, 7, 78, 2, 2, 7085, 1126, 3, 2, 2, 2, 7086, 7087, 7, 86, 2, 2, 7087, 7088, 7, 84, 2, 2, 7088, 7089, 7, 75, 2, 2, 7089, 7090, 7, 73, 2, 2, 7090, 7091, 7, 73, 2, 2, 7091, 7092, 7, 71, 2, 2, 7092, 7093, 7, 84, 2, 2, 7093, 7094, 7, 85, 2, 2, 7094, 1128, 3, 2, 2, 2, 7095, 7096, 7, 86, 2, 2, 7096, 7097, 7, 84, 2, 2, 7097, 7098, 7, 87, 2, 2, 7098, 7099, 7, 80, 2, 2, 7099, 7100, 7, 69, 2, 2, 7100, 7101, 7, 67, 2, 2, 7101, 7102, 7, 86, 2, 2, 7102, 7103, 7, 71, 2, 2, 7103, 1130, 3, 2, 2, 2, 7104, 7105, 7, 87, 2, 2, 7105, 7106, 7, 80, 2, 2, 7106, 7107, 7, 70, 2, 2, 7107, 7108, 7, 71, 2, 2, 7108, 7109, 7, 72, 2, 2, 7109, 7110, 7, 75, 2, 2, 7110, 7111, 7, 80, 2, 2, 7111, 7112, 7, 71, 2, 2, 7112, 7113, 7, 70, 2, 2, 7113, 1132, 3, 2, 2, 2, 7114, 7115, 7, 87, 2, 2, 7115, 7116, 7, 80, 2, 2, 7116, 7117, 7, 70, 2, 2, 7117, 7118, 7, 81, 2, 2, 7118, 7119, 7, 72, 2, 2, 7119, 7120, 7, 75, 2, 2, 7120, 7121, 7, 78, 2, 2, 7121, 7122, 7, 71, 2, 2, 7122, 1134, 3, 2, 2, 2, 7123, 7124, 7, 87, 2, 2, 7124, 7125, 7, 80, 2, 2, 7125, 7126, 7, 70, 2, 2, 7126, 7127, 7, 81, 2, 2, 7127, 7128, 7, 97, 2, 2, 7128, 7129, 7, 68, 2, 2, 7129, 7130, 7, 87, 2, 2, 7130, 7131, 7, 72, 2, 2, 7131, 7132, 7, 72, 2, 2, 7132, 7133, 7, 71, 2, 2, 7133, 7134, 7, 84, 2, 2, 7134, 7135, 7, 97, 2, 2, 7135, 7136, 7, 85, 2, 2, 7136, 7137, 7, 75, 2, 2, 7137, 7138, 7, 92, 2, 2, 7138, 7139, 7, 71, 2, 2, 7139, 1136, 3, 2, 2, 2, 7140, 7141, 7, 87, 2, 2, 7141, 7142, 7, 80, 2, 2, 7142, 7143, 7, 75, 2, 2, 7143, 7144, 7, 80, 2, 2, 7144, 7145, 7, 85, 2, 2, 7145, 7146, 7, 86, 2, 2, 7146, 7147, 7, 67, 2, 2, 7147, 7148, 7, 78, 2, 2, 7148, 7149, 7, 78, 2, 2, 7149, 1138, 3, 2, 2, 2, 7150, 7151, 7, 87, 2, 2, 7151, 7152, 7, 80, 2, 2, 7152, 7153, 7, 77, 2, 2, 7153, 7154, 7, 80, 2, 2, 7154, 7155, 7, 81, 2, 2, 7155, 7156, 7, 89, 2, 2, 7156, 7157, 7, 80, 2, 2, 7157, 1140, 3, 2, 2, 2, 7158, 7159, 7, 87, 2, 2, 7159, 7160, 7, 80, 2, 2, 7160, 7161, 7, 86, 2, 2, 7161, 7162, 7, 75, 2, 2, 7162, 7163, 7, 78, 2, 2, 7163, 1142, 3, 2, 2, 2, 7164, 7165, 7, 87, 2, 2, 7165, 7166, 7, 82, 2, 2, 7166, 7167, 7, 73, 2, 2, 7167, 7168, 7, 84, 2, 2, 7168, 7169, 7, 67, 2, 2, 7169, 7170, 7, 70, 2, 2, 7170, 7171, 7, 71, 2, 2, 7171, 1144, 3, 2, 2, 2, 7172, 7173, 7, 87, 2, 2, 7173, 7174, 7, 85, 2, 2, 7174, 7175, 7, 71, 2, 2, 7175, 7176, 7, 84, 2, 2, 7176, 1146, 3, 2, 2, 2, 7177, 7178, 7, 87, 2, 2, 7178, 7179, 7, 85, 2, 2, 7179, 7180, 7, 71, 2, 2, 7180, 7181, 7, 97, 2, 2, 7181, 7182, 7, 72, 2, 2, 7182, 7183, 7, 84, 2, 2, 7183, 7184, 7, 79, 2, 2, 7184, 1148, 3, 2, 2, 2, 7185, 7186, 7, 87, 2, 2, 7186, 7187, 7, 85, 2, 2, 7187, 7188, 7, 71, 2, 2, 7188, 7189, 7, 84, 2, 2, 7189, 7190, 7, 97, 2, 2, 7190, 7191, 7, 84, 2, 2, 7191, 7192, 7, 71, 2, 2, 7192, 7193, 7, 85, 2, 2, 7193, 7194, 7, 81, 2, 2, 7194, 7195, 7, 87, 2, 2, 7195, 7196, 7, 84, 2, 2, 7196, 7197, 7, 69, 2, 2, 7197, 7198, 7, 71, 2, 2, 7198, 7199, 7, 85, 2, 2, 7199, 1150, 3, 2, 2, 2, 7200, 7201, 7, 88, 2, 2, 7201, 7202, 7, 67, 2, 2, 7202, 7203, 7, 78, 2, 2, 7203, 7204, 7, 75, 2, 2, 7204, 7205, 7, 70, 2, 2, 7205, 7206, 7, 67, 2, 2, 7206, 7207, 7, 86, 2, 2, 7207, 7208, 7, 75, 2, 2, 7208, 7209, 7, 81, 2, 2, 7209, 7210, 7, 80, 2, 2, 7210, 1152, 3, 2, 2, 2, 7211, 7212, 7, 88, 2, 2, 7212, 7213, 7, 67, 2, 2, 7213, 7214, 7, 78, 2, 2, 7214, 7215, 7, 87, 2, 2, 7215, 7216, 7, 71, 2, 2, 7216, 1154, 3, 2, 2, 2, 7217, 7218, 7, 88, 2, 2, 7218, 7219, 7, 67, 2, 2, 7219, 7220, 7, 84, 2, 2, 7220, 7221, 7, 75, 2, 2, 7221, 7222, 7, 67, 2, 2, 7222, 7223, 7, 68, 2, 2, 7223, 7224, 7, 78, 2, 2, 7224, 7225, 7, 71, 2, 2, 7225, 7226, 7, 85, 2, 2, 7226, 1156, 3, 2, 2, 2, 7227, 7228, 7, 88, 2, 2, 7228, 7229, 7, 75, 2, 2, 7229, 7230, 7, 71, 2, 2, 7230, 7231, 7, 89, 2, 2, 7231, 1158, 3, 2, 2, 2, 7232, 7233, 7, 88, 2, 2, 7233, 7234, 7, 75, 2, 2, 7234, 7235, 7, 84, 2, 2, 7235, 7236, 7, 86, 2, 2, 7236, 7237, 7, 87, 2, 2, 7237, 7238, 7, 67, 2, 2, 7238, 7239, 7, 78, 2, 2, 7239, 1160, 3, 2, 2, 2, 7240, 7241, 7, 88, 2, 2, 7241, 7242, 7, 75, 2, 2, 7242, 7243, 7, 85, 2, 2, 7243, 7244, 7, 75, 2, 2, 7244, 7245, 7, 68, 2, 2, 7245, 7246, 7, 78, 2, 2, 7246, 7247, 7, 71, 2, 2, 7247, 1162, 3, 2, 2, 2, 7248, 7249, 7, 89, 2, 2, 7249, 7250, 7, 67, 2, 2, 7250, 7251, 7, 75, 2, 2, 7251, 7252, 7, 86, 2, 2, 7252, 1164, 3, 2, 2, 2, 7253, 7254, 7, 89, 2, 2, 7254, 7255, 7, 67, 2, 2, 7255, 7256, 7, 84, 2, 2, 7256, 7257, 7, 80, 2, 2, 7257, 7258, 7, 75, 2, 2, 7258, 7259, 7, 80, 2, 2, 7259, 7260, 7, 73, 2, 2, 7260, 7261, 7, 85, 2, 2, 7261, 1166, 3, 2, 2, 2, 7262, 7263, 7, 89, 2, 2, 7263, 7264, 7, 75, 2, 2, 7264, 7265, 7, 86, 2, 2, 7265, 7266, 7, 74, 2, 2, 7266, 7267, 7, 81, 2, 2, 7267, 7268, 7, 87, 2, 2, 7268, 7269, 7, 86, 2, 2, 7269, 1168, 3, 2, 2, 2, 7270, 7271, 7, 89, 2, 2, 7271, 7272, 7, 81, 2, 2, 7272, 7273, 7, 84, 2, 2, 7273, 7274, 7, 77, 2, 2, 7274, 1170, 3, 2, 2, 2, 7275, 7276, 7, 89, 2, 2, 7276, 7277, 7, 84, 2, 2, 7277, 7278, 7, 67, 2, 2, 7278, 7279, 7, 82, 2, 2, 7279, 7280, 7, 82, 2, 2, 7280, 7281, 7, 71, 2, 2, 7281, 7282, 7, 84, 2, 2, 7282, 1172, 3, 2, 2, 2, 7283, 7284, 7, 90, 2, 2, 7284, 7285, 7, 55, 2, 2, 7285, 7286, 7, 50, 2, 2, 7286, 7287, 7, 59, 2, 2, 7287, 1174, 3, 2, 2, 2, 7288, 7289, 7, 90, 2, 2, 7289, 7290, 7, 67, 2, 2, 7290, 1176, 3, 2, 2, 2, 7291, 7292, 7, 90, 2, 2, 7292, 7293, 7, 79, 2, 2, 7293, 7294, 7, 78, 2, 2, 7294, 1178, 3, 2, 2, 2, 7295, 7296, 7, 71, 2, 2, 7296, 7297, 7, 87, 2, 2, 7297, 7298, 7, 84, 2, 2, 7298, 1180, 3, 2, 2, 2, 7299, 7300, 7, 87, 2, 2, 7300, 7301, 7, 85, 2, 2, 7301, 7302, 7, 67, 2, 2, 7302, 1182, 3, 2, 2, 2, 7303, 7304, 7, 76, 2, 2, 7304, 7305, 7, 75, 2, 2, 7305, 7306, 7, 85, 2, 2, 7306, 1184, 3, 2, 2, 2, 7307, 7308, 7, 75, 2, 2, 7308, 7309, 7, 85, 2, 2, 7309, 7310, 7, 81, 2, 2, 7310, 1186, 3, 2, 2, 2, 7311, 7312, 7, 75, 2, 2, 7312, 7313, 7, 80, 2, 2, 7313, 7314, 7, 86, 2, 2, 7314, 7315, 7, 71, 2, 2, 7315, 7316, 7, 84, 2, 2, 7316, 7317, 7, 80, 2, 2, 7317, 7318, 7, 67, 2, 2, 7318, 7319, 7, 78, 2, 2, 7319, 1188, 3, 2, 2, 2, 7320, 7321, 7, 83, 2, 2, 7321, 7322, 7, 87, 2, 2, 7322, 7323, 7, 67, 2, 2, 7323, 7324, 7, 84, 2, 2, 7324, 7325, 7, 86, 2, 2, 7325, 7326, 7, 71, 2, 2, 7326, 7327, 7, 84, 2, 2, 7327, 1190, 3, 2, 2, 2, 7328, 7329, 7, 79, 2, 2, 7329, 7330, 7, 81, 2, 2, 7330, 7331, 7, 80, 2, 2, 7331, 7332, 7, 86, 2, 2, 7332, 7333, 7, 74, 2, 2, 7333, 1192, 3, 2, 2, 2, 7334, 7335, 7, 70, 2, 2, 7335, 7336, 7, 67, 2, 2, 7336, 7337, 7, 91, 2, 2, 7337, 1194, 3, 2, 2, 2, 7338, 7339, 7, 74, 2, 2, 7339, 7340, 7, 81, 2, 2, 7340, 7341, 7, 87, 2, 2, 7341, 7342, 7, 84, 2, 2, 7342, 1196, 3, 2, 2, 2, 7343, 7344, 7, 79, 2, 2, 7344, 7345, 7, 75, 2, 2, 7345, 7346, 7, 80, 2, 2, 7346, 7347, 7, 87, 2, 2, 7347, 7348, 7, 86, 2, 2, 7348, 7349, 7, 71, 2, 2, 7349, 1198, 3, 2, 2, 2, 7350, 7351, 7, 89, 2, 2, 7351, 7352, 7, 71, 2, 2, 7352, 7353, 7, 71, 2, 2, 7353, 7354, 7, 77, 2, 2, 7354, 1200, 3, 2, 2, 2, 7355, 7356, 7, 85, 2, 2, 7356, 7357, 7, 71, 2, 2, 7357, 7358, 7, 69, 2, 2, 7358, 7359, 7, 81, 2, 2, 7359, 7360, 7, 80, 2, 2, 7360, 7361, 7, 70, 2, 2, 7361, 1202, 3, 2, 2, 2, 7362, 7363, 7, 79, 2, 2, 7363, 7364, 7, 75, 2, 2, 7364, 7365, 7, 69, 2, 2, 7365, 7366, 7, 84, 2, 2, 7366, 7367, 7, 81, 2, 2, 7367, 7368, 7, 85, 2, 2, 7368, 7369, 7, 71, 2, 2, 7369, 7370, 7, 69, 2, 2, 7370, 7371, 7, 81, 2, 2, 7371, 7372, 7, 80, 2, 2, 7372, 7373, 7, 70, 2, 2, 7373, 1204, 3, 2, 2, 2, 7374, 7375, 7, 86, 2, 2, 7375, 7376, 7, 67, 2, 2, 7376, 7377, 7, 68, 2, 2, 7377, 7378, 7, 78, 2, 2, 7378, 7379, 7, 71, 2, 2, 7379, 7380, 7, 85, 2, 2, 7380, 1206, 3, 2, 2, 2, 7381, 7382, 7, 84, 2, 2, 7382, 7383, 7, 81, 2, 2, 7383, 7384, 7, 87, 2, 2, 7384, 7385, 7, 86, 2, 2, 7385, 7386, 7, 75, 2, 2, 7386, 7387, 7, 80, 2, 2, 7387, 7388, 7, 71, 2, 2, 7388, 1208, 3, 2, 2, 2, 7389, 7390, 7, 71, 2, 2, 7390, 7391, 7, 90, 2, 2, 7391, 7392, 7, 71, 2, 2, 7392, 7393, 7, 69, 2, 2, 7393, 7394, 7, 87, 2, 2, 7394, 7395, 7, 86, 2, 2, 7395, 7396, 7, 71, 2, 2, 7396, 1210, 3, 2, 2, 2, 7397, 7398, 7, 72, 2, 2, 7398, 7399, 7, 75, 2, 2, 7399, 7400, 7, 78, 2, 2, 7400, 7401, 7, 71, 2, 2, 7401, 1212, 3, 2, 2, 2, 7402, 7403, 7, 82, 2, 2, 7403, 7404, 7, 84, 2, 2, 7404, 7405, 7, 81, 2, 2, 7405, 7406, 7, 69, 2, 2, 7406, 7407, 7, 71, 2, 2, 7407, 7408, 7, 85, 2, 2, 7408, 7409, 7, 85, 2, 2, 7409, 1214, 3, 2, 2, 2, 7410, 7411, 7, 84, 2, 2, 7411, 7412, 7, 71, 2, 2, 7412, 7413, 7, 78, 2, 2, 7413, 7414, 7, 81, 2, 2, 7414, 7415, 7, 67, 2, 2, 7415, 7416, 7, 70, 2, 2, 7416, 1216, 3, 2, 2, 2, 7417, 7418, 7, 85, 2, 2, 7418, 7419, 7, 74, 2, 2, 7419, 7420, 7, 87, 2, 2, 7420, 7421, 7, 86, 2, 2, 7421, 7422, 7, 70, 2, 2, 7422, 7423, 7, 81, 2, 2, 7423, 7424, 7, 89, 2, 2, 7424, 7425, 7, 80, 2, 2, 7425, 1218, 3, 2, 2, 2, 7426, 7427, 7, 85, 2, 2, 7427, 7428, 7, 87, 2, 2, 7428, 7429, 7, 82, 2, 2, 7429, 7430, 7, 71, 2, 2, 7430, 7431, 7, 84, 2, 2, 7431, 1220, 3, 2, 2, 2, 7432, 7433, 7, 82, 2, 2, 7433, 7434, 7, 84, 2, 2, 7434, 7435, 7, 75, 2, 2, 7435, 7436, 7, 88, 2, 2, 7436, 7437, 7, 75, 2, 2, 7437, 7438, 7, 78, 2, 2, 7438, 7439, 7, 71, 2, 2, 7439, 7440, 7, 73, 2, 2, 7440, 7441, 7, 71, 2, 2, 7441, 7442, 7, 85, 2, 2, 7442, 1222, 3, 2, 2, 2, 7443, 7444, 7, 67, 2, 2, 7444, 7445, 7, 82, 2, 2, 7445, 7446, 7, 82, 2, 2, 7446, 7447, 7, 78, 2, 2, 7447, 7448, 7, 75, 2, 2, 7448, 7449, 7, 69, 2, 2, 7449, 7450, 7, 67, 2, 2, 7450, 7451, 7, 86, 2, 2, 7451, 7452, 7, 75, 2, 2, 7452, 7453, 7, 81, 2, 2, 7453, 7454, 7, 80, 2, 2, 7454, 7455, 7, 97, 2, 2, 7455, 7456, 7, 82, 2, 2, 7456, 7457, 7, 67, 2, 2, 7457, 7458, 7, 85, 2, 2, 7458, 7459, 7, 85, 2, 2, 7459, 7460, 7, 89, 2, 2, 7460, 7461, 7, 81, 2, 2, 7461, 7462, 7, 84, 2, 2, 7462, 7463, 7, 70, 2, 2, 7463, 7464, 7, 97, 2, 2, 7464, 7465, 7, 67, 2, 2, 7465, 7466, 7, 70, 2, 2, 7466, 7467, 7, 79, 2, 2, 7467, 7468, 7, 75, 2, 2, 7468, 7469, 7, 80, 2, 2, 7469, 1224, 3, 2, 2, 2, 7470, 7471, 7, 67, 2, 2, 7471, 7472, 7, 87, 2, 2, 7472, 7473, 7, 70, 2, 2, 7473, 7474, 7, 75, 2, 2, 7474, 7475, 7, 86, 2, 2, 7475, 7476, 7, 97, 2, 2, 7476, 7477, 7, 67, 2, 2, 7477, 7478, 7, 70, 2, 2, 7478, 7479, 7, 79, 2, 2, 7479, 7480, 7, 75, 2, 2, 7480, 7481, 7, 80, 2, 2, 7481, 1226, 3, 2, 2, 2, 7482, 7483, 7, 68, 2, 2, 7483, 7484, 7, 67, 2, 2, 7484, 7485, 7, 69, 2, 2, 7485, 7486, 7, 77, 2, 2, 7486, 7487, 7, 87, 2, 2, 7487, 7488, 7, 82, 2, 2, 7488, 7489, 7, 97, 2, 2, 7489, 7490, 7, 67, 2, 2, 7490, 7491, 7, 70, 2, 2, 7491, 7492, 7, 79, 2, 2, 7492, 7493, 7, 75, 2, 2, 7493, 7494, 7, 80, 2, 2, 7494, 1228, 3, 2, 2, 2, 7495, 7496, 7, 68, 2, 2, 7496, 7497, 7, 75, 2, 2, 7497, 7498, 7, 80, 2, 2, 7498, 7499, 7, 78, 2, 2, 7499, 7500, 7, 81, 2, 2, 7500, 7501, 7, 73, 2, 2, 7501, 7502, 7, 97, 2, 2, 7502, 7503, 7, 67, 2, 2, 7503, 7504, 7, 70, 2, 2, 7504, 7505, 7, 79, 2, 2, 7505, 7506, 7, 75, 2, 2, 7506, 7507, 7, 80, 2, 2, 7507, 1230, 3, 2, 2, 2, 7508, 7509, 7, 68, 2, 2, 7509, 7510, 7, 75, 2, 2, 7510, 7511, 7, 80, 2, 2, 7511, 7512, 7, 78, 2, 2, 7512, 7513, 7, 81, 2, 2, 7513, 7514, 7, 73, 2, 2, 7514, 7515, 7, 97, 2, 2, 7515, 7516, 7, 71, 2, 2, 7516, 7517, 7, 80, 2, 2, 7517, 7518, 7, 69, 2, 2, 7518, 7519, 7, 84, 2, 2, 7519, 7520, 7, 91, 2, 2, 7520, 7521, 7, 82, 2, 2, 7521, 7522, 7, 86, 2, 2, 7522, 7523, 7, 75, 2, 2, 7523, 7524, 7, 81, 2, 2, 7524, 7525, 7, 80, 2, 2, 7525, 7526, 7, 97, 2, 2, 7526, 7527, 7, 67, 2, 2, 7527, 7528, 7, 70, 2, 2, 7528, 7529, 7, 79, 2, 2, 7529, 7530, 7, 75, 2, 2, 7530, 7531, 7, 80, 2, 2, 7531, 1232, 3, 2, 2, 2, 7532, 7533, 7, 69, 2, 2, 7533, 7534, 7, 78, 2, 2, 7534, 7535, 7, 81, 2, 2, 7535, 7536, 7, 80, 2, 2, 7536, 7537, 7, 71, 2, 2, 7537, 7538, 7, 97, 2, 2, 7538, 7539, 7, 67, 2, 2, 7539, 7540, 7, 70, 2, 2, 7540, 7541, 7, 79, 2, 2, 7541, 7542, 7, 75, 2, 2, 7542, 7543, 7, 80, 2, 2, 7543, 1234, 3, 2, 2, 2, 7544, 7545, 7, 69, 2, 2, 7545, 7546, 7, 81, 2, 2, 7546, 7547, 7, 80, 2, 2, 7547, 7548, 7, 80, 2, 2, 7548, 7549, 7, 71, 2, 2, 7549, 7550, 7, 69, 2, 2, 7550, 7551, 7, 86, 2, 2, 7551, 7552, 7, 75, 2, 2, 7552, 7553, 7, 81, 2, 2, 7553, 7554, 7, 80, 2, 2, 7554, 7555, 7, 97, 2, 2, 7555, 7556, 7, 67, 2, 2, 7556, 7557, 7, 70, 2, 2, 7557, 7558, 7, 79, 2, 2, 7558, 7559, 7, 75, 2, 2, 7559, 7560, 7, 80, 2, 2, 7560, 1236, 3, 2, 2, 2, 7561, 7562, 7, 71, 2, 2, 7562, 7563, 7, 80, 2, 2, 7563, 7564, 7, 69, 2, 2, 7564, 7565, 7, 84, 2, 2, 7565, 7566, 7, 91, 2, 2, 7566, 7567, 7, 82, 2, 2, 7567, 7568, 7, 86, 2, 2, 7568, 7569, 7, 75, 2, 2, 7569, 7570, 7, 81, 2, 2, 7570, 7571, 7, 80, 2, 2, 7571, 7572, 7, 97, 2, 2, 7572, 7573, 7, 77, 2, 2, 7573, 7574, 7, 71, 2, 2, 7574, 7575, 7, 91, 2, 2, 7575, 7576, 7, 97, 2, 2, 7576, 7577, 7, 67, 2, 2, 7577, 7578, 7, 70, 2, 2, 7578, 7579, 7, 79, 2, 2, 7579, 7580, 7, 75, 2, 2, 7580, 7581, 7, 80, 2, 2, 7581, 1238, 3, 2, 2, 2, 7582, 7583, 7, 72, 2, 2, 7583, 7584, 7, 75, 2, 2, 7584, 7585, 7, 84, 2, 2, 7585, 7586, 7, 71, 2, 2, 7586, 7587, 7, 89, 2, 2, 7587, 7588, 7, 67, 2, 2, 7588, 7589, 7, 78, 2, 2, 7589, 7590, 7, 78, 2, 2, 7590, 7591, 7, 97, 2, 2, 7591, 7592, 7, 67, 2, 2, 7592, 7593, 7, 70, 2, 2, 7593, 7594, 7, 79, 2, 2, 7594, 7595, 7, 75, 2, 2, 7595, 7596, 7, 80, 2, 2, 7596, 1240, 3, 2, 2, 2, 7597, 7598, 7, 72, 2, 2, 7598, 7599, 7, 75, 2, 2, 7599, 7600, 7, 84, 2, 2, 7600, 7601, 7, 71, 2, 2, 7601, 7602, 7, 89, 2, 2, 7602, 7603, 7, 67, 2, 2, 7603, 7604, 7, 78, 2, 2, 7604, 7605, 7, 78, 2, 2, 7605, 7606, 7, 97, 2, 2, 7606, 7607, 7, 87, 2, 2, 7607, 7608, 7, 85, 2, 2, 7608, 7609, 7, 71, 2, 2, 7609, 7610, 7, 84, 2, 2, 7610, 1242, 3, 2, 2, 2, 7611, 7612, 7, 73, 2, 2, 7612, 7613, 7, 84, 2, 2, 7613, 7614, 7, 81, 2, 2, 7614, 7615, 7, 87, 2, 2, 7615, 7616, 7, 82, 2, 2, 7616, 7617, 7, 97, 2, 2, 7617, 7618, 7, 84, 2, 2, 7618, 7619, 7, 71, 2, 2, 7619, 7620, 7, 82, 2, 2, 7620, 7621, 7, 78, 2, 2, 7621, 7622, 7, 75, 2, 2, 7622, 7623, 7, 69, 2, 2, 7623, 7624, 7, 67, 2, 2, 7624, 7625, 7, 86, 2, 2, 7625, 7626, 7, 75, 2, 2, 7626, 7627, 7, 81, 2, 2, 7627, 7628, 7, 80, 2, 2, 7628, 7629, 7, 97, 2, 2, 7629, 7630, 7, 67, 2, 2, 7630, 7631, 7, 70, 2, 2, 7631, 7632, 7, 79, 2, 2, 7632, 7633, 7, 75, 2, 2, 7633, 7634, 7, 80, 2, 2, 7634, 1244, 3, 2, 2, 2, 7635, 7636, 7, 75, 2, 2, 7636, 7637, 7, 80, 2, 2, 7637, 7638, 7, 80, 2, 2, 7638, 7639, 7, 81, 2, 2, 7639, 7640, 7, 70, 2, 2, 7640, 7641, 7, 68, 2, 2, 7641, 7642, 7, 97, 2, 2, 7642, 7643, 7, 84, 2, 2, 7643, 7644, 7, 71, 2, 2, 7644, 7645, 7, 70, 2, 2, 7645, 7646, 7, 81, 2, 2, 7646, 7647, 7, 97, 2, 2, 7647, 7648, 7, 78, 2, 2, 7648, 7649, 7, 81, 2, 2, 7649, 7650, 7, 73, 2, 2, 7650, 7651, 7, 97, 2, 2, 7651, 7652, 7, 67, 2, 2, 7652, 7653, 7, 84, 2, 2, 7653, 7654, 7, 69, 2, 2, 7654, 7655, 7, 74, 2, 2, 7655, 7656, 7, 75, 2, 2, 7656, 7657, 7, 88, 2, 2, 7657, 7658, 7, 71, 2, 2, 7658, 1246, 3, 2, 2, 2, 7659, 7660, 7, 80, 2, 2, 7660, 7661, 7, 70, 2, 2, 7661, 7662, 7, 68, 2, 2, 7662, 7663, 7, 97, 2, 2, 7663, 7664, 7, 85, 2, 2, 7664, 7665, 7, 86, 2, 2, 7665, 7666, 7, 81, 2, 2, 7666, 7667, 7, 84, 2, 2, 7667, 7668, 7, 71, 2, 2, 7668, 7669, 7, 70, 2, 2, 7669, 7670, 7, 97, 2, 2, 7670, 7671, 7, 87, 2, 2, 7671, 7672, 7, 85, 2, 2, 7672, 7673, 7, 71, 2, 2, 7673, 7674, 7, 84, 2, 2, 7674, 1248, 3, 2, 2, 2, 7675, 7676, 7, 82, 2, 2, 7676, 7677, 7, 71, 2, 2, 7677, 7678, 7, 84, 2, 2, 7678, 7679, 7, 85, 2, 2, 7679, 7680, 7, 75, 2, 2, 7680, 7681, 7, 85, 2, 2, 7681, 7682, 7, 86, 2, 2, 7682, 7683, 7, 97, 2, 2, 7683, 7684, 7, 84, 2, 2, 7684, 7685, 7, 81, 2, 2, 7685, 7686, 7, 97, 2, 2, 7686, 7687, 7, 88, 2, 2, 7687, 7688, 7, 67, 2, 2, 7688, 7689, 7, 84, 2, 2, 7689, 7690, 7, 75, 2, 2, 7690, 7691, 7, 67, 2, 2, 7691, 7692, 7, 68, 2, 2, 7692, 7693, 7, 78, 2, 2, 7693, 7694, 7, 71, 2, 2, 7694, 7695, 7, 85, 2, 2, 7695, 7696, 7, 97, 2, 2, 7696, 7697, 7, 67, 2, 2, 7697, 7698, 7, 70, 2, 2, 7698, 7699, 7, 79, 2, 2, 7699, 7700, 7, 75, 2, 2, 7700, 7701, 7, 80, 2, 2, 7701, 1250, 3, 2, 2, 2, 7702, 7703, 7, 84, 2, 2, 7703, 7704, 7, 71, 2, 2, 7704, 7705, 7, 82, 2, 2, 7705, 7706, 7, 78, 2, 2, 7706, 7707, 7, 75, 2, 2, 7707, 7708, 7, 69, 2, 2, 7708, 7709, 7, 67, 2, 2, 7709, 7710, 7, 86, 2, 2, 7710, 7711, 7, 75, 2, 2, 7711, 7712, 7, 81, 2, 2, 7712, 7713, 7, 80, 2, 2, 7713, 7714, 7, 97, 2, 2, 7714, 7715, 7, 67, 2, 2, 7715, 7716, 7, 82, 2, 2, 7716, 7717, 7, 82, 2, 2, 7717, 7718, 7, 78, 2, 2, 7718, 7719, 7, 75, 2, 2, 7719, 7720, 7, 71, 2, 2, 7720, 7721, 7, 84, 2, 2, 7721, 1252, 3, 2, 2, 2, 7722, 7723, 7, 84, 2, 2, 7723, 7724, 7, 71, 2, 2, 7724, 7725, 7, 82, 2, 2, 7725, 7726, 7, 78, 2, 2, 7726, 7727, 7, 75, 2, 2, 7727, 7728, 7, 69, 2, 2, 7728, 7729, 7, 67, 2, 2, 7729, 7730, 7, 86, 2, 2, 7730, 7731, 7, 75, 2, 2, 7731, 7732, 7, 81, 2, 2, 7732, 7733, 7, 80, 2, 2, 7733, 7734, 7, 97, 2, 2, 7734, 7735, 7, 85, 2, 2, 7735, 7736, 7, 78, 2, 2, 7736, 7737, 7, 67, 2, 2, 7737, 7738, 7, 88, 2, 2, 7738, 7739, 7, 71, 2, 2, 7739, 7740, 7, 97, 2, 2, 7740, 7741, 7, 67, 2, 2, 7741, 7742, 7, 70, 2, 2, 7742, 7743, 7, 79, 2, 2, 7743, 7744, 7, 75, 2, 2, 7744, 7745, 7, 80, 2, 2, 7745, 1254, 3, 2, 2, 2, 7746, 7747, 7, 84, 2, 2, 7747, 7748, 7, 71, 2, 2, 7748, 7749, 7, 85, 2, 2, 7749, 7750, 7, 81, 2, 2, 7750, 7751, 7, 87, 2, 2, 7751, 7752, 7, 84, 2, 2, 7752, 7753, 7, 69, 2, 2, 7753, 7754, 7, 71, 2, 2, 7754, 7755, 7, 97, 2, 2, 7755, 7756, 7, 73, 2, 2, 7756, 7757, 7, 84, 2, 2, 7757, 7758, 7, 81, 2, 2, 7758, 7759, 7, 87, 2, 2, 7759, 7760, 7, 82, 2, 2, 7760, 7761, 7, 97, 2, 2, 7761, 7762, 7, 67, 2, 2, 7762, 7763, 7, 70, 2, 2, 7763, 7764, 7, 79, 2, 2, 7764, 7765, 7, 75, 2, 2, 7765, 7766, 7, 80, 2, 2, 7766, 1256, 3, 2, 2, 2, 7767, 7768, 7, 84, 2, 2, 7768, 7769, 7, 71, 2, 2, 7769, 7770, 7, 85, 2, 2, 7770, 7771, 7, 81, 2, 2, 7771, 7772, 7, 87, 2, 2, 7772, 7773, 7, 84, 2, 2, 7773, 7774, 7, 69, 2, 2, 7774, 7775, 7, 71, 2, 2, 7775, 7776, 7, 97, 2, 2, 7776, 7777, 7, 73, 2, 2, 7777, 7778, 7, 84, 2, 2, 7778, 7779, 7, 81, 2, 2, 7779, 7780, 7, 87, 2, 2, 7780, 7781, 7, 82, 2, 2, 7781, 7782, 7, 97, 2, 2, 7782, 7783, 7, 87, 2, 2, 7783, 7784, 7, 85, 2, 2, 7784, 7785, 7, 71, 2, 2, 7785, 7786, 7, 84, 2, 2, 7786, 1258, 3, 2, 2, 2, 7787, 7788, 7, 84, 2, 2, 7788, 7789, 7, 81, 2, 2, 7789, 7790, 7, 78, 2, 2, 7790, 7791, 7, 71, 2, 2, 7791, 7792, 7, 97, 2, 2, 7792, 7793, 7, 67, 2, 2, 7793, 7794, 7, 70, 2, 2, 7794, 7795, 7, 79, 2, 2, 7795, 7796, 7, 75, 2, 2, 7796, 7797, 7, 80, 2, 2, 7797, 1260, 3, 2, 2, 2, 7798, 7800, 5, 2065, 1033, 2, 7799, 7798, 3, 2, 2, 2, 7799, 7800, 3, 2, 2, 2, 7800, 7801, 3, 2, 2, 2, 7801, 7802, 7, 85, 2, 2, 7802, 7803, 7, 71, 2, 2, 7803, 7804, 7, 85, 2, 2, 7804, 7805, 7, 85, 2, 2, 7805, 7806, 7, 75, 2, 2, 7806, 7807, 7, 81, 2, 2, 7807, 7808, 7, 80, 2, 2, 7808, 7809, 7, 97, 2, 2, 7809, 7810, 7, 88, 2, 2, 7810, 7811, 7, 67, 2, 2, 7811, 7812, 7, 84, 2, 2, 7812, 7813, 7, 75, 2, 2, 7813, 7814, 7, 67, 2, 2, 7814, 7815, 7, 68, 2, 2, 7815, 7816, 7, 78, 2, 2, 7816, 7817, 7, 71, 2, 2, 7817, 7818, 7, 85, 2, 2, 7818, 7819, 7, 97, 2, 2, 7819, 7820, 7, 67, 2, 2, 7820, 7821, 7, 70, 2, 2, 7821, 7822, 7, 79, 2, 2, 7822, 7823, 7, 75, 2, 2, 7823, 7824, 7, 80, 2, 2, 7824, 7826, 3, 2, 2, 2, 7825, 7827, 5, 2065, 1033, 2, 7826, 7825, 3, 2, 2, 2, 7826, 7827, 3, 2, 2, 2, 7827, 1262, 3, 2, 2, 2, 7828, 7829, 7, 85, 2, 2, 7829, 7830, 7, 71, 2, 2, 7830, 7831, 7, 86, 2, 2, 7831, 7832, 7, 97, 2, 2, 7832, 7833, 7, 87, 2, 2, 7833, 7834, 7, 85, 2, 2, 7834, 7835, 7, 71, 2, 2, 7835, 7836, 7, 84, 2, 2, 7836, 7837, 7, 97, 2, 2, 7837, 7838, 7, 75, 2, 2, 7838, 7839, 7, 70, 2, 2, 7839, 1264, 3, 2, 2, 2, 7840, 7841, 7, 85, 2, 2, 7841, 7842, 7, 74, 2, 2, 7842, 7843, 7, 81, 2, 2, 7843, 7844, 7, 89, 2, 2, 7844, 7845, 7, 97, 2, 2, 7845, 7846, 7, 84, 2, 2, 7846, 7847, 7, 81, 2, 2, 7847, 7848, 7, 87, 2, 2, 7848, 7849, 7, 86, 2, 2, 7849, 7850, 7, 75, 2, 2, 7850, 7851, 7, 80, 2, 2, 7851, 7852, 7, 71, 2, 2, 7852, 1266, 3, 2, 2, 2, 7853, 7854, 7, 85, 2, 2, 7854, 7855, 7, 91, 2, 2, 7855, 7856, 7, 85, 2, 2, 7856, 7857, 7, 86, 2, 2, 7857, 7858, 7, 71, 2, 2, 7858, 7859, 7, 79, 2, 2, 7859, 7860, 7, 97, 2, 2, 7860, 7861, 7, 88, 2, 2, 7861, 7862, 7, 67, 2, 2, 7862, 7863, 7, 84, 2, 2, 7863, 7864, 7, 75, 2, 2, 7864, 7865, 7, 67, 2, 2, 7865, 7866, 7, 68, 2, 2, 7866, 7867, 7, 78, 2, 2, 7867, 7868, 7, 71, 2, 2, 7868, 7869, 7, 85, 2, 2, 7869, 7870, 7, 97, 2, 2, 7870, 7871, 7, 67, 2, 2, 7871, 7872, 7, 70, 2, 2, 7872, 7873, 7, 79, 2, 2, 7873, 7874, 7, 75, 2, 2, 7874, 7875, 7, 80, 2, 2, 7875, 1268, 3, 2, 2, 2, 7876, 7877, 7, 86, 2, 2, 7877, 7878, 7, 67, 2, 2, 7878, 7879, 7, 68, 2, 2, 7879, 7880, 7, 78, 2, 2, 7880, 7881, 7, 71, 2, 2, 7881, 7882, 7, 97, 2, 2, 7882, 7883, 7, 71, 2, 2, 7883, 7884, 7, 80, 2, 2, 7884, 7885, 7, 69, 2, 2, 7885, 7886, 7, 84, 2, 2, 7886, 7887, 7, 91, 2, 2, 7887, 7888, 7, 82, 2, 2, 7888, 7889, 7, 86, 2, 2, 7889, 7890, 7, 75, 2, 2, 7890, 7891, 7, 81, 2, 2, 7891, 7892, 7, 80, 2, 2, 7892, 7893, 7, 97, 2, 2, 7893, 7894, 7, 67, 2, 2, 7894, 7895, 7, 70, 2, 2, 7895, 7896, 7, 79, 2, 2, 7896, 7897, 7, 75, 2, 2, 7897, 7898, 7, 80, 2, 2, 7898, 1270, 3, 2, 2, 2, 7899, 7900, 7, 88, 2, 2, 7900, 7901, 7, 71, 2, 2, 7901, 7902, 7, 84, 2, 2, 7902, 7903, 7, 85, 2, 2, 7903, 7904, 7, 75, 2, 2, 7904, 7905, 7, 81, 2, 2, 7905, 7906, 7, 80, 2, 2, 7906, 7907, 7, 97, 2, 2, 7907, 7908, 7, 86, 2, 2, 7908, 7909, 7, 81, 2, 2, 7909, 7910, 7, 77, 2, 2, 7910, 7911, 7, 71, 2, 2, 7911, 7912, 7, 80, 2, 2, 7912, 7913, 7, 97, 2, 2, 7913, 7914, 7, 67, 2, 2, 7914, 7915, 7, 70, 2, 2, 7915, 7916, 7, 79, 2, 2, 7916, 7917, 7, 75, 2, 2, 7917, 7918, 7, 80, 2, 2, 7918, 1272, 3, 2, 2, 2, 7919, 7920, 7, 90, 2, 2, 7920, 7921, 7, 67, 2, 2, 7921, 7922, 7, 97, 2, 2, 7922, 7923, 7, 84, 2, 2, 7923, 7924, 7, 71, 2, 2, 7924, 7925, 7, 69, 2, 2, 7925, 7926, 7, 81, 2, 2, 7926, 7927, 7, 88, 2, 2, 7927, 7928, 7, 71, 2, 2, 7928, 7929, 7, 84, 2, 2, 7929, 7930, 7, 97, 2, 2, 7930, 7931, 7, 67, 2, 2, 7931, 7932, 7, 70, 2, 2, 7932, 7933, 7, 79, 2, 2, 7933, 7934, 7, 75, 2, 2, 7934, 7935, 7, 80, 2, 2, 7935, 1274, 3, 2, 2, 2, 7936, 7937, 7, 67, 2, 2, 7937, 7938, 7, 84, 2, 2, 7938, 7939, 7, 79, 2, 2, 7939, 7940, 7, 85, 2, 2, 7940, 7941, 7, 69, 2, 2, 7941, 7942, 7, 75, 2, 2, 7942, 7943, 7, 75, 2, 2, 7943, 7944, 7, 58, 2, 2, 7944, 1276, 3, 2, 2, 2, 7945, 7946, 7, 67, 2, 2, 7946, 7947, 7, 85, 2, 2, 7947, 7948, 7, 69, 2, 2, 7948, 7949, 7, 75, 2, 2, 7949, 7950, 7, 75, 2, 2, 7950, 1278, 3, 2, 2, 2, 7951, 7952, 7, 68, 2, 2, 7952, 7953, 7, 75, 2, 2, 7953, 7954, 7, 73, 2, 2, 7954, 7955, 7, 55, 2, 2, 7955, 1280, 3, 2, 2, 2, 7956, 7957, 7, 69, 2, 2, 7957, 7958, 7, 82, 2, 2, 7958, 7959, 7, 51, 2, 2, 7959, 7960, 7, 52, 2, 2, 7960, 7961, 7, 55, 2, 2, 7961, 7962, 7, 50, 2, 2, 7962, 1282, 3, 2, 2, 2, 7963, 7964, 7, 69, 2, 2, 7964, 7965, 7, 82, 2, 2, 7965, 7966, 7, 51, 2, 2, 7966, 7967, 7, 52, 2, 2, 7967, 7968, 7, 55, 2, 2, 7968, 7969, 7, 51, 2, 2, 7969, 1284, 3, 2, 2, 2, 7970, 7971, 7, 69, 2, 2, 7971, 7972, 7, 82, 2, 2, 7972, 7973, 7, 51, 2, 2, 7973, 7974, 7, 52, 2, 2, 7974, 7975, 7, 55, 2, 2, 7975, 7976, 7, 56, 2, 2, 7976, 1286, 3, 2, 2, 2, 7977, 7978, 7, 69, 2, 2, 7978, 7979, 7, 82, 2, 2, 7979, 7980, 7, 51, 2, 2, 7980, 7981, 7, 52, 2, 2, 7981, 7982, 7, 55, 2, 2, 7982, 7983, 7, 57, 2, 2, 7983, 1288, 3, 2, 2, 2, 7984, 7985, 7, 69, 2, 2, 7985, 7986, 7, 82, 2, 2, 7986, 7987, 7, 58, 2, 2, 7987, 7988, 7, 55, 2, 2, 7988, 7989, 7, 50, 2, 2, 7989, 1290, 3, 2, 2, 2, 7990, 7991, 7, 69, 2, 2, 7991, 7992, 7, 82, 2, 2, 7992, 7993, 7, 58, 2, 2, 7993, 7994, 7, 55, 2, 2, 7994, 7995, 7, 52, 2, 2, 7995, 1292, 3, 2, 2, 2, 7996, 7997, 7, 69, 2, 2, 7997, 7998, 7, 82, 2, 2, 7998, 7999, 7, 58, 2, 2, 7999, 8000, 7, 56, 2, 2, 8000, 8001, 7, 56, 2, 2, 8001, 1294, 3, 2, 2, 2, 8002, 8003, 7, 69, 2, 2, 8003, 8004, 7, 82, 2, 2, 8004, 8005, 7, 59, 2, 2, 8005, 8006, 7, 53, 2, 2, 8006, 8007, 7, 52, 2, 2, 8007, 1296, 3, 2, 2, 2, 8008, 8009, 7, 70, 2, 2, 8009, 8010, 7, 71, 2, 2, 8010, 8011, 7, 69, 2, 2, 8011, 8012, 7, 58, 2, 2, 8012, 1298, 3, 2, 2, 2, 8013, 8014, 7, 71, 2, 2, 8014, 8015, 7, 87, 2, 2, 8015, 8016, 7, 69, 2, 2, 8016, 8017, 7, 76, 2, 2, 8017, 8018, 7, 82, 2, 2, 8018, 8019, 7, 79, 2, 2, 8019, 8020, 7, 85, 2, 2, 8020, 1300, 3, 2, 2, 2, 8021, 8022, 7, 71, 2, 2, 8022, 8023, 7, 87, 2, 2, 8023, 8024, 7, 69, 2, 2, 8024, 8025, 7, 77, 2, 2, 8025, 8026, 7, 84, 2, 2, 8026, 1302, 3, 2, 2, 2, 8027, 8028, 7, 73, 2, 2, 8028, 8029, 7, 68, 2, 2, 8029, 8030, 7, 52, 2, 2, 8030, 8031, 7, 53, 2, 2, 8031, 8032, 7, 51, 2, 2, 8032, 8033, 7, 52, 2, 2, 8033, 1304, 3, 2, 2, 2, 8034, 8035, 7, 73, 2, 2, 8035, 8036, 7, 68, 2, 2, 8036, 8037, 7, 77, 2, 2, 8037, 1306, 3, 2, 2, 2, 8038, 8039, 7, 73, 2, 2, 8039, 8040, 7, 71, 2, 2, 8040, 8041, 7, 81, 2, 2, 8041, 8042, 7, 85, 2, 2, 8042, 8043, 7, 86, 2, 2, 8043, 8044, 7, 70, 2, 2, 8044, 8045, 7, 58, 2, 2, 8045, 1308, 3, 2, 2, 2, 8046, 8047, 7, 73, 2, 2, 8047, 8048, 7, 84, 2, 2, 8048, 8049, 7, 71, 2, 2, 8049, 8050, 7, 71, 2, 2, 8050, 8051, 7, 77, 2, 2, 8051, 1310, 3, 2, 2, 2, 8052, 8053, 7, 74, 2, 2, 8053, 8054, 7, 71, 2, 2, 8054, 8055, 7, 68, 2, 2, 8055, 8056, 7, 84, 2, 2, 8056, 8057, 7, 71, 2, 2, 8057, 8058, 7, 89, 2, 2, 8058, 1312, 3, 2, 2, 2, 8059, 8060, 7, 74, 2, 2, 8060, 8061, 7, 82, 2, 2, 8061, 8062, 7, 58, 2, 2, 8062, 1314, 3, 2, 2, 2, 8063, 8064, 7, 77, 2, 2, 8064, 8065, 7, 71, 2, 2, 8065, 8066, 7, 91, 2, 2, 8066, 8067, 7, 68, 2, 2, 8067, 8068, 7, 69, 2, 2, 8068, 8069, 7, 85, 2, 2, 8069, 8070, 7, 52, 2, 2, 8070, 1316, 3, 2, 2, 2, 8071, 8072, 7, 77, 2, 2, 8072, 8073, 7, 81, 2, 2, 8073, 8074, 7, 75, 2, 2, 8074, 8075, 7, 58, 2, 2, 8075, 8076, 7, 84, 2, 2, 8076, 1318, 3, 2, 2, 2, 8077, 8078, 7, 77, 2, 2, 8078, 8079, 7, 81, 2, 2, 8079, 8080, 7, 75, 2, 2, 8080, 8081, 7, 58, 2, 2, 8081, 8082, 7, 87, 2, 2, 8082, 1320, 3, 2, 2, 2, 8083, 8084, 7, 78, 2, 2, 8084, 8085, 7, 67, 2, 2, 8085, 8086, 7, 86, 2, 2, 8086, 8087, 7, 75, 2, 2, 8087, 8088, 7, 80, 2, 2, 8088, 8089, 7, 51, 2, 2, 8089, 1322, 3, 2, 2, 2, 8090, 8091, 7, 78, 2, 2, 8091, 8092, 7, 67, 2, 2, 8092, 8093, 7, 86, 2, 2, 8093, 8094, 7, 75, 2, 2, 8094, 8095, 7, 80, 2, 2, 8095, 8096, 7, 52, 2, 2, 8096, 1324, 3, 2, 2, 2, 8097, 8098, 7, 78, 2, 2, 8098, 8099, 7, 67, 2, 2, 8099, 8100, 7, 86, 2, 2, 8100, 8101, 7, 75, 2, 2, 8101, 8102, 7, 80, 2, 2, 8102, 8103, 7, 55, 2, 2, 8103, 1326, 3, 2, 2, 2, 8104, 8105, 7, 78, 2, 2, 8105, 8106, 7, 67, 2, 2, 8106, 8107, 7, 86, 2, 2, 8107, 8108, 7, 75, 2, 2, 8108, 8109, 7, 80, 2, 2, 8109, 8110, 7, 57, 2, 2, 8110, 1328, 3, 2, 2, 2, 8111, 8112, 7, 79, 2, 2, 8112, 8113, 7, 67, 2, 2, 8113, 8114, 7, 69, 2, 2, 8114, 8115, 7, 69, 2, 2, 8115, 8116, 7, 71, 2, 2, 8116, 1330, 3, 2, 2, 2, 8117, 8118, 7, 79, 2, 2, 8118, 8119, 7, 67, 2, 2, 8119, 8120, 7, 69, 2, 2, 8120, 8121, 7, 84, 2, 2, 8121, 8122, 7, 81, 2, 2, 8122, 8123, 7, 79, 2, 2, 8123, 8124, 7, 67, 2, 2, 8124, 8125, 7, 80, 2, 2, 8125, 1332, 3, 2, 2, 2, 8126, 8127, 7, 85, 2, 2, 8127, 8128, 7, 76, 2, 2, 8128, 8129, 7, 75, 2, 2, 8129, 8130, 7, 85, 2, 2, 8130, 1334, 3, 2, 2, 2, 8131, 8132, 7, 85, 2, 2, 8132, 8133, 7, 89, 2, 2, 8133, 8134, 7, 71, 2, 2, 8134, 8135, 7, 57, 2, 2, 8135, 1336, 3, 2, 2, 2, 8136, 8137, 7, 86, 2, 2, 8137, 8138, 7, 75, 2, 2, 8138, 8139, 7, 85, 2, 2, 8139, 8140, 7, 56, 2, 2, 8140, 8141, 7, 52, 2, 2, 8141, 8142, 7, 50, 2, 2, 8142, 1338, 3, 2, 2, 2, 8143, 8144, 7, 87, 2, 2, 8144, 8145, 7, 69, 2, 2, 8145, 8146, 7, 85, 2, 2, 8146, 8147, 7, 52, 2, 2, 8147, 1340, 3, 2, 2, 2, 8148, 8149, 7, 87, 2, 2, 8149, 8150, 7, 76, 2, 2, 8150, 8151, 7, 75, 2, 2, 8151, 8152, 7, 85, 2, 2, 8152, 1342, 3, 2, 2, 2, 8153, 8154, 7, 87, 2, 2, 8154, 8155, 7, 86, 2, 2, 8155, 8156, 7, 72, 2, 2, 8156, 8157, 7, 51, 2, 2, 8157, 8158, 7, 56, 2, 2, 8158, 1344, 3, 2, 2, 2, 8159, 8160, 7, 87, 2, 2, 8160, 8161, 7, 86, 2, 2, 8161, 8162, 7, 72, 2, 2, 8162, 8163, 7, 51, 2, 2, 8163, 8164, 7, 56, 2, 2, 8164, 8165, 7, 78, 2, 2, 8165, 8166, 7, 71, 2, 2, 8166, 1346, 3, 2, 2, 2, 8167, 8168, 7, 87, 2, 2, 8168, 8169, 7, 86, 2, 2, 8169, 8170, 7, 72, 2, 2, 8170, 8171, 7, 53, 2, 2, 8171, 8172, 7, 52, 2, 2, 8172, 1348, 3, 2, 2, 2, 8173, 8174, 7, 87, 2, 2, 8174, 8175, 7, 86, 2, 2, 8175, 8176, 7, 72, 2, 2, 8176, 8177, 7, 58, 2, 2, 8177, 1350, 3, 2, 2, 2, 8178, 8179, 7, 87, 2, 2, 8179, 8180, 7, 86, 2, 2, 8180, 8181, 7, 72, 2, 2, 8181, 8182, 7, 58, 2, 2, 8182, 8183, 7, 79, 2, 2, 8183, 8184, 7, 68, 2, 2, 8184, 8185, 7, 53, 2, 2, 8185, 1352, 3, 2, 2, 2, 8186, 8187, 7, 87, 2, 2, 8187, 8188, 7, 86, 2, 2, 8188, 8189, 7, 72, 2, 2, 8189, 8190, 7, 58, 2, 2, 8190, 8191, 7, 79, 2, 2, 8191, 8192, 7, 68, 2, 2, 8192, 8193, 7, 54, 2, 2, 8193, 1354, 3, 2, 2, 2, 8194, 8195, 7, 67, 2, 2, 8195, 8196, 7, 84, 2, 2, 8196, 8197, 7, 69, 2, 2, 8197, 8198, 7, 74, 2, 2, 8198, 8199, 7, 75, 2, 2, 8199, 8200, 7, 88, 2, 2, 8200, 8201, 7, 71, 2, 2, 8201, 1356, 3, 2, 2, 2, 8202, 8203, 7, 68, 2, 2, 8203, 8204, 7, 78, 2, 2, 8204, 8205, 7, 67, 2, 2, 8205, 8206, 7, 69, 2, 2, 8206, 8207, 7, 77, 2, 2, 8207, 8208, 7, 74, 2, 2, 8208, 8209, 7, 81, 2, 2, 8209, 8210, 7, 78, 2, 2, 8210, 8211, 7, 71, 2, 2, 8211, 1358, 3, 2, 2, 2, 8212, 8213, 7, 69, 2, 2, 8213, 8214, 7, 85, 2, 2, 8214, 8215, 7, 88, 2, 2, 8215, 1360, 3, 2, 2, 2, 8216, 8217, 7, 72, 2, 2, 8217, 8218, 7, 71, 2, 2, 8218, 8219, 7, 70, 2, 2, 8219, 8220, 7, 71, 2, 2, 8220, 8221, 7, 84, 2, 2, 8221, 8222, 7, 67, 2, 2, 8222, 8223, 7, 86, 2, 2, 8223, 8224, 7, 71, 2, 2, 8224, 8225, 7, 70, 2, 2, 8225, 1362, 3, 2, 2, 2, 8226, 8227, 7, 75, 2, 2, 8227, 8228, 7, 80, 2, 2, 8228, 8229, 7, 80, 2, 2, 8229, 8230, 7, 81, 2, 2, 8230, 8231, 7, 70, 2, 2, 8231, 8232, 7, 68, 2, 2, 8232, 1364, 3, 2, 2, 2, 8233, 8234, 7, 79, 2, 2, 8234, 8235, 7, 71, 2, 2, 8235, 8236, 7, 79, 2, 2, 8236, 8237, 7, 81, 2, 2, 8237, 8238, 7, 84, 2, 2, 8238, 8239, 7, 91, 2, 2, 8239, 1366, 3, 2, 2, 2, 8240, 8241, 7, 79, 2, 2, 8241, 8242, 7, 84, 2, 2, 8242, 8243, 7, 73, 2, 2, 8243, 8244, 7, 97, 2, 2, 8244, 8245, 7, 79, 2, 2, 8245, 8246, 7, 91, 2, 2, 8246, 8247, 7, 75, 2, 2, 8247, 8248, 7, 85, 2, 2, 8248, 8249, 7, 67, 2, 2, 8249, 8250, 7, 79, 2, 2, 8250, 1368, 3, 2, 2, 2, 8251, 8252, 7, 79, 2, 2, 8252, 8253, 7, 91, 2, 2, 8253, 8254, 7, 75, 2, 2, 8254, 8255, 7, 85, 2, 2, 8255, 8256, 7, 67, 2, 2, 8256, 8257, 7, 79, 2, 2, 8257, 1370, 3, 2, 2, 2, 8258, 8259, 7, 80, 2, 2, 8259, 8260, 7, 70, 2, 2, 8260, 8261, 7, 68, 2, 2, 8261, 1372, 3, 2, 2, 2, 8262, 8263, 7, 80, 2, 2, 8263, 8264, 7, 70, 2, 2, 8264, 8265, 7, 68, 2, 2, 8265, 8266, 7, 69, 2, 2, 8266, 8267, 7, 78, 2, 2, 8267, 8268, 7, 87, 2, 2, 8268, 8269, 7, 85, 2, 2, 8269, 8270, 7, 86, 2, 2, 8270, 8271, 7, 71, 2, 2, 8271, 8272, 7, 84, 2, 2, 8272, 1374, 3, 2, 2, 2, 8273, 8274, 7, 82, 2, 2, 8274, 8275, 7, 71, 2, 2, 8275, 8276, 7, 84, 2, 2, 8276, 8277, 7, 72, 2, 2, 8277, 8278, 7, 81, 2, 2, 8278, 8279, 7, 84, 2, 2, 8279, 8280, 7, 79, 2, 2, 8280, 8281, 7, 67, 2, 2, 8281, 8282, 7, 80, 2, 2, 8282, 8283, 7, 69, 2, 2, 8283, 8284, 7, 71, 2, 2, 8284, 8285, 7, 97, 2, 2, 8285, 8286, 7, 85, 2, 2, 8286, 8287, 7, 69, 2, 2, 8287, 8288, 7, 74, 2, 2, 8288, 8289, 7, 71, 2, 2, 8289, 8290, 7, 79, 2, 2, 8290, 8291, 7, 67, 2, 2, 8291, 1376, 3, 2, 2, 2, 8292, 8293, 7, 86, 2, 2, 8293, 8294, 7, 81, 2, 2, 8294, 8295, 7, 77, 2, 2, 8295, 8296, 7, 87, 2, 2, 8296, 8297, 7, 70, 2, 2, 8297, 8298, 7, 68, 2, 2, 8298, 1378, 3, 2, 2, 2, 8299, 8300, 7, 84, 2, 2, 8300, 8301, 7, 71, 2, 2, 8301, 8302, 7, 82, 2, 2, 8302, 8303, 7, 71, 2, 2, 8303, 8304, 7, 67, 2, 2, 8304, 8305, 7, 86, 2, 2, 8305, 8306, 7, 67, 2, 2, 8306, 8307, 7, 68, 2, 2, 8307, 8308, 7, 78, 2, 2, 8308, 8309, 7, 71, 2, 2, 8309, 1380, 3, 2, 2, 2, 8310, 8311, 7, 69, 2, 2, 8311, 8312, 7, 81, 2, 2, 8312, 8313, 7, 79, 2, 2, 8313, 8314, 7, 79, 2, 2, 8314, 8315, 7, 75, 2, 2, 8315, 8316, 7, 86, 2, 2, 8316, 8317, 7, 86, 2, 2, 8317, 8318, 7, 71, 2, 2, 8318, 8319, 7, 70, 2, 2, 8319, 1382, 3, 2, 2, 2, 8320, 8321, 7, 87, 2, 2, 8321, 8322, 7, 80, 2, 2, 8322, 8323, 7, 69, 2, 2, 8323, 8324, 7, 81, 2, 2, 8324, 8325, 7, 79, 2, 2, 8325, 8326, 7, 79, 2, 2, 8326, 8327, 7, 75, 2, 2, 8327, 8328, 7, 86, 2, 2, 8328, 8329, 7, 86, 2, 2, 8329, 8330, 7, 71, 2, 2, 8330, 8331, 7, 70, 2, 2, 8331, 1384, 3, 2, 2, 2, 8332, 8333, 7, 85, 2, 2, 8333, 8334, 7, 71, 2, 2, 8334, 8335, 7, 84, 2, 2, 8335, 8336, 7, 75, 2, 2, 8336, 8337, 7, 67, 2, 2, 8337, 8338, 7, 78, 2, 2, 8338, 8339, 7, 75, 2, 2, 8339, 8340, 7, 92, 2, 2, 8340, 8341, 7, 67, 2, 2, 8341, 8342, 7, 68, 2, 2, 8342, 8343, 7, 78, 2, 2, 8343, 8344, 7, 71, 2, 2, 8344, 1386, 3, 2, 2, 2, 8345, 8346, 7, 73, 2, 2, 8346, 8347, 7, 71, 2, 2, 8347, 8348, 7, 81, 2, 2, 8348, 8349, 7, 79, 2, 2, 8349, 8350, 7, 71, 2, 2, 8350, 8351, 7, 86, 2, 2, 8351, 8352, 7, 84, 2, 2, 8352, 8353, 7, 91, 2, 2, 8353, 8354, 7, 69, 2, 2, 8354, 8355, 7, 81, 2, 2, 8355, 8356, 7, 78, 2, 2, 8356, 8357, 7, 78, 2, 2, 8357, 8358, 7, 71, 2, 2, 8358, 8359, 7, 69, 2, 2, 8359, 8360, 7, 86, 2, 2, 8360, 8361, 7, 75, 2, 2, 8361, 8362, 7, 81, 2, 2, 8362, 8363, 7, 80, 2, 2, 8363, 1388, 3, 2, 2, 2, 8364, 8365, 7, 73, 2, 2, 8365, 8366, 7, 71, 2, 2, 8366, 8367, 7, 81, 2, 2, 8367, 8368, 7, 79, 2, 2, 8368, 8369, 7, 69, 2, 2, 8369, 8370, 7, 81, 2, 2, 8370, 8371, 7, 78, 2, 2, 8371, 8372, 7, 78, 2, 2, 8372, 8373, 7, 71, 2, 2, 8373, 8374, 7, 69, 2, 2, 8374, 8375, 7, 86, 2, 2, 8375, 8376, 7, 75, 2, 2, 8376, 8377, 7, 81, 2, 2, 8377, 8378, 7, 80, 2, 2, 8378, 1390, 3, 2, 2, 2, 8379, 8380, 7, 73, 2, 2, 8380, 8381, 7, 71, 2, 2, 8381, 8382, 7, 81, 2, 2, 8382, 8383, 7, 79, 2, 2, 8383, 8384, 7, 71, 2, 2, 8384, 8385, 7, 86, 2, 2, 8385, 8386, 7, 84, 2, 2, 8386, 8387, 7, 91, 2, 2, 8387, 1392, 3, 2, 2, 2, 8388, 8389, 7, 78, 2, 2, 8389, 8390, 7, 75, 2, 2, 8390, 8391, 7, 80, 2, 2, 8391, 8392, 7, 71, 2, 2, 8392, 8393, 7, 85, 2, 2, 8393, 8394, 7, 86, 2, 2, 8394, 8395, 7, 84, 2, 2, 8395, 8396, 7, 75, 2, 2, 8396, 8397, 7, 80, 2, 2, 8397, 8398, 7, 73, 2, 2, 8398, 1394, 3, 2, 2, 2, 8399, 8400, 7, 79, 2, 2, 8400, 8401, 7, 87, 2, 2, 8401, 8402, 7, 78, 2, 2, 8402, 8403, 7, 86, 2, 2, 8403, 8404, 7, 75, 2, 2, 8404, 8405, 7, 78, 2, 2, 8405, 8406, 7, 75, 2, 2, 8406, 8407, 7, 80, 2, 2, 8407, 8408, 7, 71, 2, 2, 8408, 8409, 7, 85, 2, 2, 8409, 8410, 7, 86, 2, 2, 8410, 8411, 7, 84, 2, 2, 8411, 8412, 7, 75, 2, 2, 8412, 8413, 7, 80, 2, 2, 8413, 8414, 7, 73, 2, 2, 8414, 1396, 3, 2, 2, 2, 8415, 8416, 7, 79, 2, 2, 8416, 8417, 7, 87, 2, 2, 8417, 8418, 7, 78, 2, 2, 8418, 8419, 7, 86, 2, 2, 8419, 8420, 7, 75, 2, 2, 8420, 8421, 7, 82, 2, 2, 8421, 8422, 7, 81, 2, 2, 8422, 8423, 7, 75, 2, 2, 8423, 8424, 7, 80, 2, 2, 8424, 8425, 7, 86, 2, 2, 8425, 1398, 3, 2, 2, 2, 8426, 8427, 7, 79, 2, 2, 8427, 8428, 7, 87, 2, 2, 8428, 8429, 7, 78, 2, 2, 8429, 8430, 7, 86, 2, 2, 8430, 8431, 7, 75, 2, 2, 8431, 8432, 7, 82, 2, 2, 8432, 8433, 7, 81, 2, 2, 8433, 8434, 7, 78, 2, 2, 8434, 8435, 7, 91, 2, 2, 8435, 8436, 7, 73, 2, 2, 8436, 8437, 7, 81, 2, 2, 8437, 8438, 7, 80, 2, 2, 8438, 1400, 3, 2, 2, 2, 8439, 8440, 7, 82, 2, 2, 8440, 8441, 7, 81, 2, 2, 8441, 8442, 7, 75, 2, 2, 8442, 8443, 7, 80, 2, 2, 8443, 8444, 7, 86, 2, 2, 8444, 1402, 3, 2, 2, 2, 8445, 8446, 7, 82, 2, 2, 8446, 8447, 7, 81, 2, 2, 8447, 8448, 7, 78, 2, 2, 8448, 8449, 7, 91, 2, 2, 8449, 8450, 7, 73, 2, 2, 8450, 8451, 7, 81, 2, 2, 8451, 8452, 7, 80, 2, 2, 8452, 1404, 3, 2, 2, 2, 8453, 8454, 7, 67, 2, 2, 8454, 8455, 7, 68, 2, 2, 8455, 8456, 7, 85, 2, 2, 8456, 1406, 3, 2, 2, 2, 8457, 8458, 7, 67, 2, 2, 8458, 8459, 7, 69, 2, 2, 8459, 8460, 7, 81, 2, 2, 8460, 8461, 7, 85, 2, 2, 8461, 1408, 3, 2, 2, 2, 8462, 8463, 7, 67, 2, 2, 8463, 8464, 7, 70, 2, 2, 8464, 8465, 7, 70, 2, 2, 8465, 8466, 7, 70, 2, 2, 8466, 8467, 7, 67, 2, 2, 8467, 8468, 7, 86, 2, 2, 8468, 8469, 7, 71, 2, 2, 8469, 1410, 3, 2, 2, 2, 8470, 8471, 7, 67, 2, 2, 8471, 8472, 7, 70, 2, 2, 8472, 8473, 7, 70, 2, 2, 8473, 8474, 7, 86, 2, 2, 8474, 8475, 7, 75, 2, 2, 8475, 8476, 7, 79, 2, 2, 8476, 8477, 7, 71, 2, 2, 8477, 1412, 3, 2, 2, 2, 8478, 8479, 7, 67, 2, 2, 8479, 8480, 7, 71, 2, 2, 8480, 8481, 7, 85, 2, 2, 8481, 8482, 7, 97, 2, 2, 8482, 8483, 7, 70, 2, 2, 8483, 8484, 7, 71, 2, 2, 8484, 8485, 7, 69, 2, 2, 8485, 8486, 7, 84, 2, 2, 8486, 8487, 7, 91, 2, 2, 8487, 8488, 7, 82, 2, 2, 8488, 8489, 7, 86, 2, 2, 8489, 1414, 3, 2, 2, 2, 8490, 8491, 7, 67, 2, 2, 8491, 8492, 7, 71, 2, 2, 8492, 8493, 7, 85, 2, 2, 8493, 8494, 7, 97, 2, 2, 8494, 8495, 7, 71, 2, 2, 8495, 8496, 7, 80, 2, 2, 8496, 8497, 7, 69, 2, 2, 8497, 8498, 7, 84, 2, 2, 8498, 8499, 7, 91, 2, 2, 8499, 8500, 7, 82, 2, 2, 8500, 8501, 7, 86, 2, 2, 8501, 1416, 3, 2, 2, 2, 8502, 8503, 7, 67, 2, 2, 8503, 8504, 7, 84, 2, 2, 8504, 8505, 7, 71, 2, 2, 8505, 8506, 7, 67, 2, 2, 8506, 1418, 3, 2, 2, 2, 8507, 8508, 7, 67, 2, 2, 8508, 8509, 7, 85, 2, 2, 8509, 8510, 7, 68, 2, 2, 8510, 8511, 7, 75, 2, 2, 8511, 8512, 7, 80, 2, 2, 8512, 8513, 7, 67, 2, 2, 8513, 8514, 7, 84, 2, 2, 8514, 8515, 7, 91, 2, 2, 8515, 1420, 3, 2, 2, 2, 8516, 8517, 7, 67, 2, 2, 8517, 8518, 7, 85, 2, 2, 8518, 8519, 7, 75, 2, 2, 8519, 8520, 7, 80, 2, 2, 8520, 1422, 3, 2, 2, 2, 8521, 8522, 7, 67, 2, 2, 8522, 8523, 7, 85, 2, 2, 8523, 8524, 7, 86, 2, 2, 8524, 8525, 7, 71, 2, 2, 8525, 8526, 7, 90, 2, 2, 8526, 8527, 7, 86, 2, 2, 8527, 1424, 3, 2, 2, 2, 8528, 8529, 7, 67, 2, 2, 8529, 8530, 7, 85, 2, 2, 8530, 8531, 7, 89, 2, 2, 8531, 8532, 7, 77, 2, 2, 8532, 8533, 7, 68, 2, 2, 8533, 1426, 3, 2, 2, 2, 8534, 8535, 7, 67, 2, 2, 8535, 8536, 7, 85, 2, 2, 8536, 8537, 7, 89, 2, 2, 8537, 8538, 7, 77, 2, 2, 8538, 8539, 7, 86, 2, 2, 8539, 1428, 3, 2, 2, 2, 8540, 8541, 7, 67, 2, 2, 8541, 8542, 7, 85, 2, 2, 8542, 8543, 7, 91, 2, 2, 8543, 8544, 7, 79, 2, 2, 8544, 8545, 7, 79, 2, 2, 8545, 8546, 7, 71, 2, 2, 8546, 8547, 7, 86, 2, 2, 8547, 8548, 7, 84, 2, 2, 8548, 8549, 7, 75, 2, 2, 8549, 8550, 7, 69, 2, 2, 8550, 8551, 7, 97, 2, 2, 8551, 8552, 7, 70, 2, 2, 8552, 8553, 7, 71, 2, 2, 8553, 8554, 7, 69, 2, 2, 8554, 8555, 7, 84, 2, 2, 8555, 8556, 7, 91, 2, 2, 8556, 8557, 7, 82, 2, 2, 8557, 8558, 7, 86, 2, 2, 8558, 1430, 3, 2, 2, 2, 8559, 8560, 7, 67, 2, 2, 8560, 8561, 7, 85, 2, 2, 8561, 8562, 7, 91, 2, 2, 8562, 8563, 7, 79, 2, 2, 8563, 8564, 7, 79, 2, 2, 8564, 8565, 7, 71, 2, 2, 8565, 8566, 7, 86, 2, 2, 8566, 8567, 7, 84, 2, 2, 8567, 8568, 7, 75, 2, 2, 8568, 8569, 7, 69, 2, 2, 8569, 8570, 7, 97, 2, 2, 8570, 8571, 7, 70, 2, 2, 8571, 8572, 7, 71, 2, 2, 8572, 8573, 7, 84, 2, 2, 8573, 8574, 7, 75, 2, 2, 8574, 8575, 7, 88, 2, 2, 8575, 8576, 7, 71, 2, 2, 8576, 1432, 3, 2, 2, 2, 8577, 8578, 7, 67, 2, 2, 8578, 8579, 7, 85, 2, 2, 8579, 8580, 7, 91, 2, 2, 8580, 8581, 7, 79, 2, 2, 8581, 8582, 7, 79, 2, 2, 8582, 8583, 7, 71, 2, 2, 8583, 8584, 7, 86, 2, 2, 8584, 8585, 7, 84, 2, 2, 8585, 8586, 7, 75, 2, 2, 8586, 8587, 7, 69, 2, 2, 8587, 8588, 7, 97, 2, 2, 8588, 8589, 7, 71, 2, 2, 8589, 8590, 7, 80, 2, 2, 8590, 8591, 7, 69, 2, 2, 8591, 8592, 7, 84, 2, 2, 8592, 8593, 7, 91, 2, 2, 8593, 8594, 7, 82, 2, 2, 8594, 8595, 7, 86, 2, 2, 8595, 1434, 3, 2, 2, 2, 8596, 8597, 7, 67, 2, 2, 8597, 8598, 7, 85, 2, 2, 8598, 8599, 7, 91, 2, 2, 8599, 8600, 7, 79, 2, 2, 8600, 8601, 7, 79, 2, 2, 8601, 8602, 7, 71, 2, 2, 8602, 8603, 7, 86, 2, 2, 8603, 8604, 7, 84, 2, 2, 8604, 8605, 7, 75, 2, 2, 8605, 8606, 7, 69, 2, 2, 8606, 8607, 7, 97, 2, 2, 8607, 8608, 7, 85, 2, 2, 8608, 8609, 7, 75, 2, 2, 8609, 8610, 7, 73, 2, 2, 8610, 8611, 7, 80, 2, 2, 8611, 1436, 3, 2, 2, 2, 8612, 8613, 7, 67, 2, 2, 8613, 8614, 7, 85, 2, 2, 8614, 8615, 7, 91, 2, 2, 8615, 8616, 7, 79, 2, 2, 8616, 8617, 7, 79, 2, 2, 8617, 8618, 7, 71, 2, 2, 8618, 8619, 7, 86, 2, 2, 8619, 8620, 7, 84, 2, 2, 8620, 8621, 7, 75, 2, 2, 8621, 8622, 7, 69, 2, 2, 8622, 8623, 7, 97, 2, 2, 8623, 8624, 7, 88, 2, 2, 8624, 8625, 7, 71, 2, 2, 8625, 8626, 7, 84, 2, 2, 8626, 8627, 7, 75, 2, 2, 8627, 8628, 7, 72, 2, 2, 8628, 8629, 7, 91, 2, 2, 8629, 1438, 3, 2, 2, 2, 8630, 8631, 7, 67, 2, 2, 8631, 8632, 7, 86, 2, 2, 8632, 8633, 7, 67, 2, 2, 8633, 8634, 7, 80, 2, 2, 8634, 1440, 3, 2, 2, 2, 8635, 8636, 7, 67, 2, 2, 8636, 8637, 7, 86, 2, 2, 8637, 8638, 7, 67, 2, 2, 8638, 8639, 7, 80, 2, 2, 8639, 8640, 7, 52, 2, 2, 8640, 1442, 3, 2, 2, 2, 8641, 8642, 7, 68, 2, 2, 8642, 8643, 7, 71, 2, 2, 8643, 8644, 7, 80, 2, 2, 8644, 8645, 7, 69, 2, 2, 8645, 8646, 7, 74, 2, 2, 8646, 8647, 7, 79, 2, 2, 8647, 8648, 7, 67, 2, 2, 8648, 8649, 7, 84, 2, 2, 8649, 8650, 7, 77, 2, 2, 8650, 1444, 3, 2, 2, 2, 8651, 8652, 7, 68, 2, 2, 8652, 8653, 7, 75, 2, 2, 8653, 8654, 7, 80, 2, 2, 8654, 1446, 3, 2, 2, 2, 8655, 8656, 7, 68, 2, 2, 8656, 8657, 7, 75, 2, 2, 8657, 8658, 7, 86, 2, 2, 8658, 8659, 7, 97, 2, 2, 8659, 8660, 7, 69, 2, 2, 8660, 8661, 7, 81, 2, 2, 8661, 8662, 7, 87, 2, 2, 8662, 8663, 7, 80, 2, 2, 8663, 8664, 7, 86, 2, 2, 8664, 1448, 3, 2, 2, 2, 8665, 8666, 7, 68, 2, 2, 8666, 8667, 7, 75, 2, 2, 8667, 8668, 7, 86, 2, 2, 8668, 8669, 7, 97, 2, 2, 8669, 8670, 7, 78, 2, 2, 8670, 8671, 7, 71, 2, 2, 8671, 8672, 7, 80, 2, 2, 8672, 8673, 7, 73, 2, 2, 8673, 8674, 7, 86, 2, 2, 8674, 8675, 7, 74, 2, 2, 8675, 1450, 3, 2, 2, 2, 8676, 8677, 7, 68, 2, 2, 8677, 8678, 7, 87, 2, 2, 8678, 8679, 7, 72, 2, 2, 8679, 8680, 7, 72, 2, 2, 8680, 8681, 7, 71, 2, 2, 8681, 8682, 7, 84, 2, 2, 8682, 1452, 3, 2, 2, 2, 8683, 8684, 7, 69, 2, 2, 8684, 8685, 7, 67, 2, 2, 8685, 8686, 7, 86, 2, 2, 8686, 8687, 7, 67, 2, 2, 8687, 8688, 7, 78, 2, 2, 8688, 8689, 7, 81, 2, 2, 8689, 8690, 7, 73, 2, 2, 8690, 8691, 7, 97, 2, 2, 8691, 8692, 7, 80, 2, 2, 8692, 8693, 7, 67, 2, 2, 8693, 8694, 7, 79, 2, 2, 8694, 8695, 7, 71, 2, 2, 8695, 1454, 3, 2, 2, 2, 8696, 8697, 7, 69, 2, 2, 8697, 8698, 7, 71, 2, 2, 8698, 8699, 7, 75, 2, 2, 8699, 8700, 7, 78, 2, 2, 8700, 1456, 3, 2, 2, 2, 8701, 8702, 7, 69, 2, 2, 8702, 8703, 7, 71, 2, 2, 8703, 8704, 7, 75, 2, 2, 8704, 8705, 7, 78, 2, 2, 8705, 8706, 7, 75, 2, 2, 8706, 8707, 7, 80, 2, 2, 8707, 8708, 7, 73, 2, 2, 8708, 1458, 3, 2, 2, 2, 8709, 8710, 7, 69, 2, 2, 8710, 8711, 7, 71, 2, 2, 8711, 8712, 7, 80, 2, 2, 8712, 8713, 7, 86, 2, 2, 8713, 8714, 7, 84, 2, 2, 8714, 8715, 7, 81, 2, 2, 8715, 8716, 7, 75, 2, 2, 8716, 8717, 7, 70, 2, 2, 8717, 1460, 3, 2, 2, 2, 8718, 8719, 7, 69, 2, 2, 8719, 8720, 7, 74, 2, 2, 8720, 8721, 7, 67, 2, 2, 8721, 8722, 7, 84, 2, 2, 8722, 8723, 7, 67, 2, 2, 8723, 8724, 7, 69, 2, 2, 8724, 8725, 7, 86, 2, 2, 8725, 8726, 7, 71, 2, 2, 8726, 8727, 7, 84, 2, 2, 8727, 8728, 7, 97, 2, 2, 8728, 8729, 7, 78, 2, 2, 8729, 8730, 7, 71, 2, 2, 8730, 8731, 7, 80, 2, 2, 8731, 8732, 7, 73, 2, 2, 8732, 8733, 7, 86, 2, 2, 8733, 8734, 7, 74, 2, 2, 8734, 1462, 3, 2, 2, 2, 8735, 8736, 7, 69, 2, 2, 8736, 8737, 7, 74, 2, 2, 8737, 8738, 7, 67, 2, 2, 8738, 8739, 7, 84, 2, 2, 8739, 8740, 7, 85, 2, 2, 8740, 8741, 7, 71, 2, 2, 8741, 8742, 7, 86, 2, 2, 8742, 1464, 3, 2, 2, 2, 8743, 8744, 7, 69, 2, 2, 8744, 8745, 7, 74, 2, 2, 8745, 8746, 7, 67, 2, 2, 8746, 8747, 7, 84, 2, 2, 8747, 8748, 7, 97, 2, 2, 8748, 8749, 7, 78, 2, 2, 8749, 8750, 7, 71, 2, 2, 8750, 8751, 7, 80, 2, 2, 8751, 8752, 7, 73, 2, 2, 8752, 8753, 7, 86, 2, 2, 8753, 8754, 7, 74, 2, 2, 8754, 1466, 3, 2, 2, 2, 8755, 8756, 7, 69, 2, 2, 8756, 8757, 7, 81, 2, 2, 8757, 8758, 7, 71, 2, 2, 8758, 8759, 7, 84, 2, 2, 8759, 8760, 7, 69, 2, 2, 8760, 8761, 7, 75, 2, 2, 8761, 8762, 7, 68, 2, 2, 8762, 8763, 7, 75, 2, 2, 8763, 8764, 7, 78, 2, 2, 8764, 8765, 7, 75, 2, 2, 8765, 8766, 7, 86, 2, 2, 8766, 8767, 7, 91, 2, 2, 8767, 1468, 3, 2, 2, 2, 8768, 8769, 7, 69, 2, 2, 8769, 8770, 7, 81, 2, 2, 8770, 8771, 7, 78, 2, 2, 8771, 8772, 7, 78, 2, 2, 8772, 8773, 7, 67, 2, 2, 8773, 8774, 7, 86, 2, 2, 8774, 8775, 7, 75, 2, 2, 8775, 8776, 7, 81, 2, 2, 8776, 8777, 7, 80, 2, 2, 8777, 1470, 3, 2, 2, 2, 8778, 8779, 7, 69, 2, 2, 8779, 8780, 7, 81, 2, 2, 8780, 8781, 7, 79, 2, 2, 8781, 8782, 7, 82, 2, 2, 8782, 8783, 7, 84, 2, 2, 8783, 8784, 7, 71, 2, 2, 8784, 8785, 7, 85, 2, 2, 8785, 8786, 7, 85, 2, 2, 8786, 1472, 3, 2, 2, 2, 8787, 8788, 7, 69, 2, 2, 8788, 8789, 7, 81, 2, 2, 8789, 8790, 7, 80, 2, 2, 8790, 8791, 7, 69, 2, 2, 8791, 8792, 7, 67, 2, 2, 8792, 8793, 7, 86, 2, 2, 8793, 1474, 3, 2, 2, 2, 8794, 8795, 7, 69, 2, 2, 8795, 8796, 7, 81, 2, 2, 8796, 8797, 7, 80, 2, 2, 8797, 8798, 7, 69, 2, 2, 8798, 8799, 7, 67, 2, 2, 8799, 8800, 7, 86, 2, 2, 8800, 8801, 7, 97, 2, 2, 8801, 8802, 7, 89, 2, 2, 8802, 8803, 7, 85, 2, 2, 8803, 1476, 3, 2, 2, 2, 8804, 8805, 7, 69, 2, 2, 8805, 8806, 7, 81, 2, 2, 8806, 8807, 7, 80, 2, 2, 8807, 8808, 7, 80, 2, 2, 8808, 8809, 7, 71, 2, 2, 8809, 8810, 7, 69, 2, 2, 8810, 8811, 7, 86, 2, 2, 8811, 8812, 7, 75, 2, 2, 8812, 8813, 7, 81, 2, 2, 8813, 8814, 7, 80, 2, 2, 8814, 8815, 7, 97, 2, 2, 8815, 8816, 7, 75, 2, 2, 8816, 8817, 7, 70, 2, 2, 8817, 1478, 3, 2, 2, 2, 8818, 8819, 7, 69, 2, 2, 8819, 8820, 7, 81, 2, 2, 8820, 8821, 7, 80, 2, 2, 8821, 8822, 7, 88, 2, 2, 8822, 1480, 3, 2, 2, 2, 8823, 8824, 7, 69, 2, 2, 8824, 8825, 7, 81, 2, 2, 8825, 8826, 7, 80, 2, 2, 8826, 8827, 7, 88, 2, 2, 8827, 8828, 7, 71, 2, 2, 8828, 8829, 7, 84, 2, 2, 8829, 8830, 7, 86, 2, 2, 8830, 8831, 7, 97, 2, 2, 8831, 8832, 7, 86, 2, 2, 8832, 8833, 7, 92, 2, 2, 8833, 1482, 3, 2, 2, 2, 8834, 8835, 7, 69, 2, 2, 8835, 8836, 7, 81, 2, 2, 8836, 8837, 7, 85, 2, 2, 8837, 1484, 3, 2, 2, 2, 8838, 8839, 7, 69, 2, 2, 8839, 8840, 7, 81, 2, 2, 8840, 8841, 7, 86, 2, 2, 8841, 1486, 3, 2, 2, 2, 8842, 8843, 7, 69, 2, 2, 8843, 8844, 7, 84, 2, 2, 8844, 8845, 7, 69, 2, 2, 8845, 8846, 7, 53, 2, 2, 8846, 8847, 7, 52, 2, 2, 8847, 1488, 3, 2, 2, 2, 8848, 8849, 7, 69, 2, 2, 8849, 8850, 7, 84, 2, 2, 8850, 8851, 7, 71, 2, 2, 8851, 8852, 7, 67, 2, 2, 8852, 8853, 7, 86, 2, 2, 8853, 8854, 7, 71, 2, 2, 8854, 8855, 7, 97, 2, 2, 8855, 8856, 7, 67, 2, 2, 8856, 8857, 7, 85, 2, 2, 8857, 8858, 7, 91, 2, 2, 8858, 8859, 7, 79, 2, 2, 8859, 8860, 7, 79, 2, 2, 8860, 8861, 7, 71, 2, 2, 8861, 8862, 7, 86, 2, 2, 8862, 8863, 7, 84, 2, 2, 8863, 8864, 7, 75, 2, 2, 8864, 8865, 7, 69, 2, 2, 8865, 8866, 7, 97, 2, 2, 8866, 8867, 7, 82, 2, 2, 8867, 8868, 7, 84, 2, 2, 8868, 8869, 7, 75, 2, 2, 8869, 8870, 7, 88, 2, 2, 8870, 8871, 7, 97, 2, 2, 8871, 8872, 7, 77, 2, 2, 8872, 8873, 7, 71, 2, 2, 8873, 8874, 7, 91, 2, 2, 8874, 1490, 3, 2, 2, 2, 8875, 8876, 7, 69, 2, 2, 8876, 8877, 7, 84, 2, 2, 8877, 8878, 7, 71, 2, 2, 8878, 8879, 7, 67, 2, 2, 8879, 8880, 7, 86, 2, 2, 8880, 8881, 7, 71, 2, 2, 8881, 8882, 7, 97, 2, 2, 8882, 8883, 7, 67, 2, 2, 8883, 8884, 7, 85, 2, 2, 8884, 8885, 7, 91, 2, 2, 8885, 8886, 7, 79, 2, 2, 8886, 8887, 7, 79, 2, 2, 8887, 8888, 7, 71, 2, 2, 8888, 8889, 7, 86, 2, 2, 8889, 8890, 7, 84, 2, 2, 8890, 8891, 7, 75, 2, 2, 8891, 8892, 7, 69, 2, 2, 8892, 8893, 7, 97, 2, 2, 8893, 8894, 7, 82, 2, 2, 8894, 8895, 7, 87, 2, 2, 8895, 8896, 7, 68, 2, 2, 8896, 8897, 7, 97, 2, 2, 8897, 8898, 7, 77, 2, 2, 8898, 8899, 7, 71, 2, 2, 8899, 8900, 7, 91, 2, 2, 8900, 1492, 3, 2, 2, 2, 8901, 8902, 7, 69, 2, 2, 8902, 8903, 7, 84, 2, 2, 8903, 8904, 7, 71, 2, 2, 8904, 8905, 7, 67, 2, 2, 8905, 8906, 7, 86, 2, 2, 8906, 8907, 7, 71, 2, 2, 8907, 8908, 7, 97, 2, 2, 8908, 8909, 7, 70, 2, 2, 8909, 8910, 7, 74, 2, 2, 8910, 8911, 7, 97, 2, 2, 8911, 8912, 7, 82, 2, 2, 8912, 8913, 7, 67, 2, 2, 8913, 8914, 7, 84, 2, 2, 8914, 8915, 7, 67, 2, 2, 8915, 8916, 7, 79, 2, 2, 8916, 8917, 7, 71, 2, 2, 8917, 8918, 7, 86, 2, 2, 8918, 8919, 7, 71, 2, 2, 8919, 8920, 7, 84, 2, 2, 8920, 8921, 7, 85, 2, 2, 8921, 1494, 3, 2, 2, 2, 8922, 8923, 7, 69, 2, 2, 8923, 8924, 7, 84, 2, 2, 8924, 8925, 7, 71, 2, 2, 8925, 8926, 7, 67, 2, 2, 8926, 8927, 7, 86, 2, 2, 8927, 8928, 7, 71, 2, 2, 8928, 8929, 7, 97, 2, 2, 8929, 8930, 7, 70, 2, 2, 8930, 8931, 7, 75, 2, 2, 8931, 8932, 7, 73, 2, 2, 8932, 8933, 7, 71, 2, 2, 8933, 8934, 7, 85, 2, 2, 8934, 8935, 7, 86, 2, 2, 8935, 1496, 3, 2, 2, 2, 8936, 8937, 7, 69, 2, 2, 8937, 8938, 7, 84, 2, 2, 8938, 8939, 7, 81, 2, 2, 8939, 8940, 7, 85, 2, 2, 8940, 8941, 7, 85, 2, 2, 8941, 8942, 7, 71, 2, 2, 8942, 8943, 7, 85, 2, 2, 8943, 1498, 3, 2, 2, 2, 8944, 8945, 7, 70, 2, 2, 8945, 8946, 7, 67, 2, 2, 8946, 8947, 7, 86, 2, 2, 8947, 8948, 7, 71, 2, 2, 8948, 8949, 7, 70, 2, 2, 8949, 8950, 7, 75, 2, 2, 8950, 8951, 7, 72, 2, 2, 8951, 8952, 7, 72, 2, 2, 8952, 1500, 3, 2, 2, 2, 8953, 8954, 7, 70, 2, 2, 8954, 8955, 7, 67, 2, 2, 8955, 8956, 7, 86, 2, 2, 8956, 8957, 7, 71, 2, 2, 8957, 8958, 7, 97, 2, 2, 8958, 8959, 7, 72, 2, 2, 8959, 8960, 7, 81, 2, 2, 8960, 8961, 7, 84, 2, 2, 8961, 8962, 7, 79, 2, 2, 8962, 8963, 7, 67, 2, 2, 8963, 8964, 7, 86, 2, 2, 8964, 1502, 3, 2, 2, 2, 8965, 8966, 7, 70, 2, 2, 8966, 8967, 7, 67, 2, 2, 8967, 8968, 7, 91, 2, 2, 8968, 8969, 7, 80, 2, 2, 8969, 8970, 7, 67, 2, 2, 8970, 8971, 7, 79, 2, 2, 8971, 8972, 7, 71, 2, 2, 8972, 1504, 3, 2, 2, 2, 8973, 8974, 7, 70, 2, 2, 8974, 8975, 7, 67, 2, 2, 8975, 8976, 7, 91, 2, 2, 8976, 8977, 7, 81, 2, 2, 8977, 8978, 7, 72, 2, 2, 8978, 8979, 7, 79, 2, 2, 8979, 8980, 7, 81, 2, 2, 8980, 8981, 7, 80, 2, 2, 8981, 8982, 7, 86, 2, 2, 8982, 8983, 7, 74, 2, 2, 8983, 1506, 3, 2, 2, 2, 8984, 8985, 7, 70, 2, 2, 8985, 8986, 7, 67, 2, 2, 8986, 8987, 7, 91, 2, 2, 8987, 8988, 7, 81, 2, 2, 8988, 8989, 7, 72, 2, 2, 8989, 8990, 7, 89, 2, 2, 8990, 8991, 7, 71, 2, 2, 8991, 8992, 7, 71, 2, 2, 8992, 8993, 7, 77, 2, 2, 8993, 1508, 3, 2, 2, 2, 8994, 8995, 7, 70, 2, 2, 8995, 8996, 7, 67, 2, 2, 8996, 8997, 7, 91, 2, 2, 8997, 8998, 7, 81, 2, 2, 8998, 8999, 7, 72, 2, 2, 8999, 9000, 7, 91, 2, 2, 9000, 9001, 7, 71, 2, 2, 9001, 9002, 7, 67, 2, 2, 9002, 9003, 7, 84, 2, 2, 9003, 1510, 3, 2, 2, 2, 9004, 9005, 7, 70, 2, 2, 9005, 9006, 7, 71, 2, 2, 9006, 9007, 7, 69, 2, 2, 9007, 9008, 7, 81, 2, 2, 9008, 9009, 7, 70, 2, 2, 9009, 9010, 7, 71, 2, 2, 9010, 1512, 3, 2, 2, 2, 9011, 9012, 7, 70, 2, 2, 9012, 9013, 7, 71, 2, 2, 9013, 9014, 7, 73, 2, 2, 9014, 9015, 7, 84, 2, 2, 9015, 9016, 7, 71, 2, 2, 9016, 9017, 7, 71, 2, 2, 9017, 9018, 7, 85, 2, 2, 9018, 1514, 3, 2, 2, 2, 9019, 9020, 7, 70, 2, 2, 9020, 9021, 7, 71, 2, 2, 9021, 9022, 7, 85, 2, 2, 9022, 9023, 7, 97, 2, 2, 9023, 9024, 7, 70, 2, 2, 9024, 9025, 7, 71, 2, 2, 9025, 9026, 7, 69, 2, 2, 9026, 9027, 7, 84, 2, 2, 9027, 9028, 7, 91, 2, 2, 9028, 9029, 7, 82, 2, 2, 9029, 9030, 7, 86, 2, 2, 9030, 1516, 3, 2, 2, 2, 9031, 9032, 7, 70, 2, 2, 9032, 9033, 7, 71, 2, 2, 9033, 9034, 7, 85, 2, 2, 9034, 9035, 7, 97, 2, 2, 9035, 9036, 7, 71, 2, 2, 9036, 9037, 7, 80, 2, 2, 9037, 9038, 7, 69, 2, 2, 9038, 9039, 7, 84, 2, 2, 9039, 9040, 7, 91, 2, 2, 9040, 9041, 7, 82, 2, 2, 9041, 9042, 7, 86, 2, 2, 9042, 1518, 3, 2, 2, 2, 9043, 9044, 7, 70, 2, 2, 9044, 9045, 7, 75, 2, 2, 9045, 9046, 7, 79, 2, 2, 9046, 9047, 7, 71, 2, 2, 9047, 9048, 7, 80, 2, 2, 9048, 9049, 7, 85, 2, 2, 9049, 9050, 7, 75, 2, 2, 9050, 9051, 7, 81, 2, 2, 9051, 9052, 7, 80, 2, 2, 9052, 1520, 3, 2, 2, 2, 9053, 9054, 7, 70, 2, 2, 9054, 9055, 7, 75, 2, 2, 9055, 9056, 7, 85, 2, 2, 9056, 9057, 7, 76, 2, 2, 9057, 9058, 7, 81, 2, 2, 9058, 9059, 7, 75, 2, 2, 9059, 9060, 7, 80, 2, 2, 9060, 9061, 7, 86, 2, 2, 9061, 1522, 3, 2, 2, 2, 9062, 9063, 7, 71, 2, 2, 9063, 9064, 7, 78, 2, 2, 9064, 9065, 7, 86, 2, 2, 9065, 1524, 3, 2, 2, 2, 9066, 9067, 7, 71, 2, 2, 9067, 9068, 7, 80, 2, 2, 9068, 9069, 7, 69, 2, 2, 9069, 9070, 7, 81, 2, 2, 9070, 9071, 7, 70, 2, 2, 9071, 9072, 7, 71, 2, 2, 9072, 1526, 3, 2, 2, 2, 9073, 9074, 7, 71, 2, 2, 9074, 9075, 7, 80, 2, 2, 9075, 9076, 7, 69, 2, 2, 9076, 9077, 7, 84, 2, 2, 9077, 9078, 7, 91, 2, 2, 9078, 9079, 7, 82, 2, 2, 9079, 9080, 7, 86, 2, 2, 9080, 1528, 3, 2, 2, 2, 9081, 9082, 7, 71, 2, 2, 9082, 9083, 7, 80, 2, 2, 9083, 9084, 7, 70, 2, 2, 9084, 9085, 7, 82, 2, 2, 9085, 9086, 7, 81, 2, 2, 9086, 9087, 7, 75, 2, 2, 9087, 9088, 7, 80, 2, 2, 9088, 9089, 7, 86, 2, 2, 9089, 1530, 3, 2, 2, 2, 9090, 9091, 7, 71, 2, 2, 9091, 9092, 7, 80, 2, 2, 9092, 9093, 7, 88, 2, 2, 9093, 9094, 7, 71, 2, 2, 9094, 9095, 7, 78, 2, 2, 9095, 9096, 7, 81, 2, 2, 9096, 9097, 7, 82, 2, 2, 9097, 9098, 7, 71, 2, 2, 9098, 1532, 3, 2, 2, 2, 9099, 9100, 7, 71, 2, 2, 9100, 9101, 7, 83, 2, 2, 9101, 9102, 7, 87, 2, 2, 9102, 9103, 7, 67, 2, 2, 9103, 9104, 7, 78, 2, 2, 9104, 9105, 7, 85, 2, 2, 9105, 1534, 3, 2, 2, 2, 9106, 9107, 7, 71, 2, 2, 9107, 9108, 7, 90, 2, 2, 9108, 9109, 7, 82, 2, 2, 9109, 1536, 3, 2, 2, 2, 9110, 9111, 7, 71, 2, 2, 9111, 9112, 7, 90, 2, 2, 9112, 9113, 7, 82, 2, 2, 9113, 9114, 7, 81, 2, 2, 9114, 9115, 7, 84, 2, 2, 9115, 9116, 7, 86, 2, 2, 9116, 9117, 7, 97, 2, 2, 9117, 9118, 7, 85, 2, 2, 9118, 9119, 7, 71, 2, 2, 9119, 9120, 7, 86, 2, 2, 9120, 1538, 3, 2, 2, 2, 9121, 9122, 7, 71, 2, 2, 9122, 9123, 7, 90, 2, 2, 9123, 9124, 7, 86, 2, 2, 9124, 9125, 7, 71, 2, 2, 9125, 9126, 7, 84, 2, 2, 9126, 9127, 7, 75, 2, 2, 9127, 9128, 7, 81, 2, 2, 9128, 9129, 7, 84, 2, 2, 9129, 9130, 7, 84, 2, 2, 9130, 9131, 7, 75, 2, 2, 9131, 9132, 7, 80, 2, 2, 9132, 9133, 7, 73, 2, 2, 9133, 1540, 3, 2, 2, 2, 9134, 9135, 7, 71, 2, 2, 9135, 9136, 7, 90, 2, 2, 9136, 9137, 7, 86, 2, 2, 9137, 9138, 7, 84, 2, 2, 9138, 9139, 7, 67, 2, 2, 9139, 9140, 7, 69, 2, 2, 9140, 9141, 7, 86, 2, 2, 9141, 9142, 7, 88, 2, 2, 9142, 9143, 7, 67, 2, 2, 9143, 9144, 7, 78, 2, 2, 9144, 9145, 7, 87, 2, 2, 9145, 9146, 7, 71, 2, 2, 9146, 1542, 3, 2, 2, 2, 9147, 9148, 7, 72, 2, 2, 9148, 9149, 7, 75, 2, 2, 9149, 9150, 7, 71, 2, 2, 9150, 9151, 7, 78, 2, 2, 9151, 9152, 7, 70, 2, 2, 9152, 1544, 3, 2, 2, 2, 9153, 9154, 7, 72, 2, 2, 9154, 9155, 7, 75, 2, 2, 9155, 9156, 7, 80, 2, 2, 9156, 9157, 7, 70, 2, 2, 9157, 9158, 7, 97, 2, 2, 9158, 9159, 7, 75, 2, 2, 9159, 9160, 7, 80, 2, 2, 9160, 9161, 7, 97, 2, 2, 9161, 9162, 7, 85, 2, 2, 9162, 9163, 7, 71, 2, 2, 9163, 9164, 7, 86, 2, 2, 9164, 1546, 3, 2, 2, 2, 9165, 9166, 7, 72, 2, 2, 9166, 9167, 7, 78, 2, 2, 9167, 9168, 7, 81, 2, 2, 9168, 9169, 7, 81, 2, 2, 9169, 9170, 7, 84, 2, 2, 9170, 1548, 3, 2, 2, 2, 9171, 9172, 7, 72, 2, 2, 9172, 9173, 7, 81, 2, 2, 9173, 9174, 7, 84, 2, 2, 9174, 9175, 7, 79, 2, 2, 9175, 9176, 7, 67, 2, 2, 9176, 9177, 7, 86, 2, 2, 9177, 1550, 3, 2, 2, 2, 9178, 9179, 7, 72, 2, 2, 9179, 9180, 7, 81, 2, 2, 9180, 9181, 7, 87, 2, 2, 9181, 9182, 7, 80, 2, 2, 9182, 9183, 7, 70, 2, 2, 9183, 9184, 7, 97, 2, 2, 9184, 9185, 7, 84, 2, 2, 9185, 9186, 7, 81, 2, 2, 9186, 9187, 7, 89, 2, 2, 9187, 9188, 7, 85, 2, 2, 9188, 1552, 3, 2, 2, 2, 9189, 9190, 7, 72, 2, 2, 9190, 9191, 7, 84, 2, 2, 9191, 9192, 7, 81, 2, 2, 9192, 9193, 7, 79, 2, 2, 9193, 9194, 7, 97, 2, 2, 9194, 9195, 7, 68, 2, 2, 9195, 9196, 7, 67, 2, 2, 9196, 9197, 7, 85, 2, 2, 9197, 9198, 7, 71, 2, 2, 9198, 9199, 7, 56, 2, 2, 9199, 9200, 7, 54, 2, 2, 9200, 1554, 3, 2, 2, 2, 9201, 9202, 7, 72, 2, 2, 9202, 9203, 7, 84, 2, 2, 9203, 9204, 7, 81, 2, 2, 9204, 9205, 7, 79, 2, 2, 9205, 9206, 7, 97, 2, 2, 9206, 9207, 7, 70, 2, 2, 9207, 9208, 7, 67, 2, 2, 9208, 9209, 7, 91, 2, 2, 9209, 9210, 7, 85, 2, 2, 9210, 1556, 3, 2, 2, 2, 9211, 9212, 7, 72, 2, 2, 9212, 9213, 7, 84, 2, 2, 9213, 9214, 7, 81, 2, 2, 9214, 9215, 7, 79, 2, 2, 9215, 9216, 7, 97, 2, 2, 9216, 9217, 7, 87, 2, 2, 9217, 9218, 7, 80, 2, 2, 9218, 9219, 7, 75, 2, 2, 9219, 9220, 7, 90, 2, 2, 9220, 9221, 7, 86, 2, 2, 9221, 9222, 7, 75, 2, 2, 9222, 9223, 7, 79, 2, 2, 9223, 9224, 7, 71, 2, 2, 9224, 1558, 3, 2, 2, 2, 9225, 9226, 7, 73, 2, 2, 9226, 9227, 7, 71, 2, 2, 9227, 9228, 7, 81, 2, 2, 9228, 9229, 7, 79, 2, 2, 9229, 9230, 7, 69, 2, 2, 9230, 9231, 7, 81, 2, 2, 9231, 9232, 7, 78, 2, 2, 9232, 9233, 7, 78, 2, 2, 9233, 9234, 7, 72, 2, 2, 9234, 9235, 7, 84, 2, 2, 9235, 9236, 7, 81, 2, 2, 9236, 9237, 7, 79, 2, 2, 9237, 9238, 7, 86, 2, 2, 9238, 9239, 7, 71, 2, 2, 9239, 9240, 7, 90, 2, 2, 9240, 9241, 7, 86, 2, 2, 9241, 1560, 3, 2, 2, 2, 9242, 9243, 7, 73, 2, 2, 9243, 9244, 7, 71, 2, 2, 9244, 9245, 7, 81, 2, 2, 9245, 9246, 7, 79, 2, 2, 9246, 9247, 7, 69, 2, 2, 9247, 9248, 7, 81, 2, 2, 9248, 9249, 7, 78, 2, 2, 9249, 9250, 7, 78, 2, 2, 9250, 9251, 7, 72, 2, 2, 9251, 9252, 7, 84, 2, 2, 9252, 9253, 7, 81, 2, 2, 9253, 9254, 7, 79, 2, 2, 9254, 9255, 7, 89, 2, 2, 9255, 9256, 7, 77, 2, 2, 9256, 9257, 7, 68, 2, 2, 9257, 1562, 3, 2, 2, 2, 9258, 9259, 7, 73, 2, 2, 9259, 9260, 7, 71, 2, 2, 9260, 9261, 7, 81, 2, 2, 9261, 9262, 7, 79, 2, 2, 9262, 9263, 7, 71, 2, 2, 9263, 9264, 7, 86, 2, 2, 9264, 9265, 7, 84, 2, 2, 9265, 9266, 7, 91, 2, 2, 9266, 9267, 7, 69, 2, 2, 9267, 9268, 7, 81, 2, 2, 9268, 9269, 7, 78, 2, 2, 9269, 9270, 7, 78, 2, 2, 9270, 9271, 7, 71, 2, 2, 9271, 9272, 7, 69, 2, 2, 9272, 9273, 7, 86, 2, 2, 9273, 9274, 7, 75, 2, 2, 9274, 9275, 7, 81, 2, 2, 9275, 9276, 7, 80, 2, 2, 9276, 9277, 7, 72, 2, 2, 9277, 9278, 7, 84, 2, 2, 9278, 9279, 7, 81, 2, 2, 9279, 9280, 7, 79, 2, 2, 9280, 9281, 7, 86, 2, 2, 9281, 9282, 7, 71, 2, 2, 9282, 9283, 7, 90, 2, 2, 9283, 9284, 7, 86, 2, 2, 9284, 1564, 3, 2, 2, 2, 9285, 9286, 7, 73, 2, 2, 9286, 9287, 7, 71, 2, 2, 9287, 9288, 7, 81, 2, 2, 9288, 9289, 7, 79, 2, 2, 9289, 9290, 7, 71, 2, 2, 9290, 9291, 7, 86, 2, 2, 9291, 9292, 7, 84, 2, 2, 9292, 9293, 7, 91, 2, 2, 9293, 9294, 7, 69, 2, 2, 9294, 9295, 7, 81, 2, 2, 9295, 9296, 7, 78, 2, 2, 9296, 9297, 7, 78, 2, 2, 9297, 9298, 7, 71, 2, 2, 9298, 9299, 7, 69, 2, 2, 9299, 9300, 7, 86, 2, 2, 9300, 9301, 7, 75, 2, 2, 9301, 9302, 7, 81, 2, 2, 9302, 9303, 7, 80, 2, 2, 9303, 9304, 7, 72, 2, 2, 9304, 9305, 7, 84, 2, 2, 9305, 9306, 7, 81, 2, 2, 9306, 9307, 7, 79, 2, 2, 9307, 9308, 7, 89, 2, 2, 9308, 9309, 7, 77, 2, 2, 9309, 9310, 7, 68, 2, 2, 9310, 1566, 3, 2, 2, 2, 9311, 9312, 7, 73, 2, 2, 9312, 9313, 7, 71, 2, 2, 9313, 9314, 7, 81, 2, 2, 9314, 9315, 7, 79, 2, 2, 9315, 9316, 7, 71, 2, 2, 9316, 9317, 7, 86, 2, 2, 9317, 9318, 7, 84, 2, 2, 9318, 9319, 7, 91, 2, 2, 9319, 9320, 7, 72, 2, 2, 9320, 9321, 7, 84, 2, 2, 9321, 9322, 7, 81, 2, 2, 9322, 9323, 7, 79, 2, 2, 9323, 9324, 7, 86, 2, 2, 9324, 9325, 7, 71, 2, 2, 9325, 9326, 7, 90, 2, 2, 9326, 9327, 7, 86, 2, 2, 9327, 1568, 3, 2, 2, 2, 9328, 9329, 7, 73, 2, 2, 9329, 9330, 7, 71, 2, 2, 9330, 9331, 7, 81, 2, 2, 9331, 9332, 7, 79, 2, 2, 9332, 9333, 7, 71, 2, 2, 9333, 9334, 7, 86, 2, 2, 9334, 9335, 7, 84, 2, 2, 9335, 9336, 7, 91, 2, 2, 9336, 9337, 7, 72, 2, 2, 9337, 9338, 7, 84, 2, 2, 9338, 9339, 7, 81, 2, 2, 9339, 9340, 7, 79, 2, 2, 9340, 9341, 7, 89, 2, 2, 9341, 9342, 7, 77, 2, 2, 9342, 9343, 7, 68, 2, 2, 9343, 1570, 3, 2, 2, 2, 9344, 9345, 7, 73, 2, 2, 9345, 9346, 7, 71, 2, 2, 9346, 9347, 7, 81, 2, 2, 9347, 9348, 7, 79, 2, 2, 9348, 9349, 7, 71, 2, 2, 9349, 9350, 7, 86, 2, 2, 9350, 9351, 7, 84, 2, 2, 9351, 9352, 7, 91, 2, 2, 9352, 9353, 7, 80, 2, 2, 9353, 1572, 3, 2, 2, 2, 9354, 9355, 7, 73, 2, 2, 9355, 9356, 7, 71, 2, 2, 9356, 9357, 7, 81, 2, 2, 9357, 9358, 7, 79, 2, 2, 9358, 9359, 7, 71, 2, 2, 9359, 9360, 7, 86, 2, 2, 9360, 9361, 7, 84, 2, 2, 9361, 9362, 7, 91, 2, 2, 9362, 9363, 7, 86, 2, 2, 9363, 9364, 7, 91, 2, 2, 9364, 9365, 7, 82, 2, 2, 9365, 9366, 7, 71, 2, 2, 9366, 1574, 3, 2, 2, 2, 9367, 9368, 7, 73, 2, 2, 9368, 9369, 7, 71, 2, 2, 9369, 9370, 7, 81, 2, 2, 9370, 9371, 7, 79, 2, 2, 9371, 9372, 7, 72, 2, 2, 9372, 9373, 7, 84, 2, 2, 9373, 9374, 7, 81, 2, 2, 9374, 9375, 7, 79, 2, 2, 9375, 9376, 7, 86, 2, 2, 9376, 9377, 7, 71, 2, 2, 9377, 9378, 7, 90, 2, 2, 9378, 9379, 7, 86, 2, 2, 9379, 1576, 3, 2, 2, 2, 9380, 9381, 7, 73, 2, 2, 9381, 9382, 7, 71, 2, 2, 9382, 9383, 7, 81, 2, 2, 9383, 9384, 7, 79, 2, 2, 9384, 9385, 7, 72, 2, 2, 9385, 9386, 7, 84, 2, 2, 9386, 9387, 7, 81, 2, 2, 9387, 9388, 7, 79, 2, 2, 9388, 9389, 7, 89, 2, 2, 9389, 9390, 7, 77, 2, 2, 9390, 9391, 7, 68, 2, 2, 9391, 1578, 3, 2, 2, 2, 9392, 9393, 7, 73, 2, 2, 9393, 9394, 7, 71, 2, 2, 9394, 9395, 7, 86, 2, 2, 9395, 9396, 7, 97, 2, 2, 9396, 9397, 7, 72, 2, 2, 9397, 9398, 7, 81, 2, 2, 9398, 9399, 7, 84, 2, 2, 9399, 9400, 7, 79, 2, 2, 9400, 9401, 7, 67, 2, 2, 9401, 9402, 7, 86, 2, 2, 9402, 1580, 3, 2, 2, 2, 9403, 9404, 7, 73, 2, 2, 9404, 9405, 7, 71, 2, 2, 9405, 9406, 7, 86, 2, 2, 9406, 9407, 7, 97, 2, 2, 9407, 9408, 7, 78, 2, 2, 9408, 9409, 7, 81, 2, 2, 9409, 9410, 7, 69, 2, 2, 9410, 9411, 7, 77, 2, 2, 9411, 1582, 3, 2, 2, 2, 9412, 9413, 7, 73, 2, 2, 9413, 9414, 7, 78, 2, 2, 9414, 9415, 7, 71, 2, 2, 9415, 9416, 7, 80, 2, 2, 9416, 9417, 7, 73, 2, 2, 9417, 9418, 7, 86, 2, 2, 9418, 9419, 7, 74, 2, 2, 9419, 1584, 3, 2, 2, 2, 9420, 9421, 7, 73, 2, 2, 9421, 9422, 7, 84, 2, 2, 9422, 9423, 7, 71, 2, 2, 9423, 9424, 7, 67, 2, 2, 9424, 9425, 7, 86, 2, 2, 9425, 9426, 7, 71, 2, 2, 9426, 9427, 7, 85, 2, 2, 9427, 9428, 7, 86, 2, 2, 9428, 1586, 3, 2, 2, 2, 9429, 9430, 7, 73, 2, 2, 9430, 9431, 7, 86, 2, 2, 9431, 9432, 7, 75, 2, 2, 9432, 9433, 7, 70, 2, 2, 9433, 9434, 7, 97, 2, 2, 9434, 9435, 7, 85, 2, 2, 9435, 9436, 7, 87, 2, 2, 9436, 9437, 7, 68, 2, 2, 9437, 9438, 7, 85, 2, 2, 9438, 9439, 7, 71, 2, 2, 9439, 9440, 7, 86, 2, 2, 9440, 1588, 3, 2, 2, 2, 9441, 9442, 7, 73, 2, 2, 9442, 9443, 7, 86, 2, 2, 9443, 9444, 7, 75, 2, 2, 9444, 9445, 7, 70, 2, 2, 9445, 9446, 7, 97, 2, 2, 9446, 9447, 7, 85, 2, 2, 9447, 9448, 7, 87, 2, 2, 9448, 9449, 7, 68, 2, 2, 9449, 9450, 7, 86, 2, 2, 9450, 9451, 7, 84, 2, 2, 9451, 9452, 7, 67, 2, 2, 9452, 9453, 7, 69, 2, 2, 9453, 9454, 7, 86, 2, 2, 9454, 1590, 3, 2, 2, 2, 9455, 9456, 7, 74, 2, 2, 9456, 9457, 7, 71, 2, 2, 9457, 9458, 7, 90, 2, 2, 9458, 1592, 3, 2, 2, 2, 9459, 9460, 7, 75, 2, 2, 9460, 9461, 7, 72, 2, 2, 9461, 9462, 7, 80, 2, 2, 9462, 9463, 7, 87, 2, 2, 9463, 9464, 7, 78, 2, 2, 9464, 9465, 7, 78, 2, 2, 9465, 1594, 3, 2, 2, 2, 9466, 9467, 7, 75, 2, 2, 9467, 9468, 7, 80, 2, 2, 9468, 9469, 7, 71, 2, 2, 9469, 9470, 7, 86, 2, 2, 9470, 9471, 7, 56, 2, 2, 9471, 9472, 7, 97, 2, 2, 9472, 9473, 7, 67, 2, 2, 9473, 9474, 7, 86, 2, 2, 9474, 9475, 7, 81, 2, 2, 9475, 9476, 7, 80, 2, 2, 9476, 1596, 3, 2, 2, 2, 9477, 9478, 7, 75, 2, 2, 9478, 9479, 7, 80, 2, 2, 9479, 9480, 7, 71, 2, 2, 9480, 9481, 7, 86, 2, 2, 9481, 9482, 7, 56, 2, 2, 9482, 9483, 7, 97, 2, 2, 9483, 9484, 7, 80, 2, 2, 9484, 9485, 7, 86, 2, 2, 9485, 9486, 7, 81, 2, 2, 9486, 9487, 7, 67, 2, 2, 9487, 1598, 3, 2, 2, 2, 9488, 9489, 7, 75, 2, 2, 9489, 9490, 7, 80, 2, 2, 9490, 9491, 7, 71, 2, 2, 9491, 9492, 7, 86, 2, 2, 9492, 9493, 7, 97, 2, 2, 9493, 9494, 7, 67, 2, 2, 9494, 9495, 7, 86, 2, 2, 9495, 9496, 7, 81, 2, 2, 9496, 9497, 7, 80, 2, 2, 9497, 1600, 3, 2, 2, 2, 9498, 9499, 7, 75, 2, 2, 9499, 9500, 7, 80, 2, 2, 9500, 9501, 7, 71, 2, 2, 9501, 9502, 7, 86, 2, 2, 9502, 9503, 7, 97, 2, 2, 9503, 9504, 7, 80, 2, 2, 9504, 9505, 7, 86, 2, 2, 9505, 9506, 7, 81, 2, 2, 9506, 9507, 7, 67, 2, 2, 9507, 1602, 3, 2, 2, 2, 9508, 9509, 7, 75, 2, 2, 9509, 9510, 7, 80, 2, 2, 9510, 9511, 7, 85, 2, 2, 9511, 9512, 7, 86, 2, 2, 9512, 9513, 7, 84, 2, 2, 9513, 1604, 3, 2, 2, 2, 9514, 9515, 7, 75, 2, 2, 9515, 9516, 7, 80, 2, 2, 9516, 9517, 7, 86, 2, 2, 9517, 9518, 7, 71, 2, 2, 9518, 9519, 7, 84, 2, 2, 9519, 9520, 7, 75, 2, 2, 9520, 9521, 7, 81, 2, 2, 9521, 9522, 7, 84, 2, 2, 9522, 9523, 7, 84, 2, 2, 9523, 9524, 7, 75, 2, 2, 9524, 9525, 7, 80, 2, 2, 9525, 9526, 7, 73, 2, 2, 9526, 9527, 7, 80, 2, 2, 9527, 1606, 3, 2, 2, 2, 9528, 9529, 7, 75, 2, 2, 9529, 9530, 7, 80, 2, 2, 9530, 9531, 7, 86, 2, 2, 9531, 9532, 7, 71, 2, 2, 9532, 9533, 7, 84, 2, 2, 9533, 9534, 7, 85, 2, 2, 9534, 9535, 7, 71, 2, 2, 9535, 9536, 7, 69, 2, 2, 9536, 9537, 7, 86, 2, 2, 9537, 9538, 7, 85, 2, 2, 9538, 1608, 3, 2, 2, 2, 9539, 9540, 7, 75, 2, 2, 9540, 9541, 7, 85, 2, 2, 9541, 9542, 7, 69, 2, 2, 9542, 9543, 7, 78, 2, 2, 9543, 9544, 7, 81, 2, 2, 9544, 9545, 7, 85, 2, 2, 9545, 9546, 7, 71, 2, 2, 9546, 9547, 7, 70, 2, 2, 9547, 1610, 3, 2, 2, 2, 9548, 9549, 7, 75, 2, 2, 9549, 9550, 7, 85, 2, 2, 9550, 9551, 7, 71, 2, 2, 9551, 9552, 7, 79, 2, 2, 9552, 9553, 7, 82, 2, 2, 9553, 9554, 7, 86, 2, 2, 9554, 9555, 7, 91, 2, 2, 9555, 1612, 3, 2, 2, 2, 9556, 9557, 7, 75, 2, 2, 9557, 9558, 7, 85, 2, 2, 9558, 9559, 7, 80, 2, 2, 9559, 9560, 7, 87, 2, 2, 9560, 9561, 7, 78, 2, 2, 9561, 9562, 7, 78, 2, 2, 9562, 1614, 3, 2, 2, 2, 9563, 9564, 7, 75, 2, 2, 9564, 9565, 7, 85, 2, 2, 9565, 9566, 7, 85, 2, 2, 9566, 9567, 7, 75, 2, 2, 9567, 9568, 7, 79, 2, 2, 9568, 9569, 7, 82, 2, 2, 9569, 9570, 7, 78, 2, 2, 9570, 9571, 7, 71, 2, 2, 9571, 1616, 3, 2, 2, 2, 9572, 9573, 7, 75, 2, 2, 9573, 9574, 7, 85, 2, 2, 9574, 9575, 7, 97, 2, 2, 9575, 9576, 7, 72, 2, 2, 9576, 9577, 7, 84, 2, 2, 9577, 9578, 7, 71, 2, 2, 9578, 9579, 7, 71, 2, 2, 9579, 9580, 7, 97, 2, 2, 9580, 9581, 7, 78, 2, 2, 9581, 9582, 7, 81, 2, 2, 9582, 9583, 7, 69, 2, 2, 9583, 9584, 7, 77, 2, 2, 9584, 1618, 3, 2, 2, 2, 9585, 9586, 7, 75, 2, 2, 9586, 9587, 7, 85, 2, 2, 9587, 9588, 7, 97, 2, 2, 9588, 9589, 7, 75, 2, 2, 9589, 9590, 7, 82, 2, 2, 9590, 9591, 7, 88, 2, 2, 9591, 9592, 7, 54, 2, 2, 9592, 1620, 3, 2, 2, 2, 9593, 9594, 7, 75, 2, 2, 9594, 9595, 7, 85, 2, 2, 9595, 9596, 7, 97, 2, 2, 9596, 9597, 7, 75, 2, 2, 9597, 9598, 7, 82, 2, 2, 9598, 9599, 7, 88, 2, 2, 9599, 9600, 7, 54, 2, 2, 9600, 9601, 7, 97, 2, 2, 9601, 9602, 7, 69, 2, 2, 9602, 9603, 7, 81, 2, 2, 9603, 9604, 7, 79, 2, 2, 9604, 9605, 7, 82, 2, 2, 9605, 9606, 7, 67, 2, 2, 9606, 9607, 7, 86, 2, 2, 9607, 1622, 3, 2, 2, 2, 9608, 9609, 7, 75, 2, 2, 9609, 9610, 7, 85, 2, 2, 9610, 9611, 7, 97, 2, 2, 9611, 9612, 7, 75, 2, 2, 9612, 9613, 7, 82, 2, 2, 9613, 9614, 7, 88, 2, 2, 9614, 9615, 7, 54, 2, 2, 9615, 9616, 7, 97, 2, 2, 9616, 9617, 7, 79, 2, 2, 9617, 9618, 7, 67, 2, 2, 9618, 9619, 7, 82, 2, 2, 9619, 9620, 7, 82, 2, 2, 9620, 9621, 7, 71, 2, 2, 9621, 9622, 7, 70, 2, 2, 9622, 1624, 3, 2, 2, 2, 9623, 9624, 7, 75, 2, 2, 9624, 9625, 7, 85, 2, 2, 9625, 9626, 7, 97, 2, 2, 9626, 9627, 7, 75, 2, 2, 9627, 9628, 7, 82, 2, 2, 9628, 9629, 7, 88, 2, 2, 9629, 9630, 7, 56, 2, 2, 9630, 1626, 3, 2, 2, 2, 9631, 9632, 7, 75, 2, 2, 9632, 9633, 7, 85, 2, 2, 9633, 9634, 7, 97, 2, 2, 9634, 9635, 7, 87, 2, 2, 9635, 9636, 7, 85, 2, 2, 9636, 9637, 7, 71, 2, 2, 9637, 9638, 7, 70, 2, 2, 9638, 9639, 7, 97, 2, 2, 9639, 9640, 7, 78, 2, 2, 9640, 9641, 7, 81, 2, 2, 9641, 9642, 7, 69, 2, 2, 9642, 9643, 7, 77, 2, 2, 9643, 1628, 3, 2, 2, 2, 9644, 9645, 7, 78, 2, 2, 9645, 9646, 7, 67, 2, 2, 9646, 9647, 7, 85, 2, 2, 9647, 9648, 7, 86, 2, 2, 9648, 9649, 7, 97, 2, 2, 9649, 9650, 7, 75, 2, 2, 9650, 9651, 7, 80, 2, 2, 9651, 9652, 7, 85, 2, 2, 9652, 9653, 7, 71, 2, 2, 9653, 9654, 7, 84, 2, 2, 9654, 9655, 7, 86, 2, 2, 9655, 9656, 7, 97, 2, 2, 9656, 9657, 7, 75, 2, 2, 9657, 9658, 7, 70, 2, 2, 9658, 1630, 3, 2, 2, 2, 9659, 9660, 7, 78, 2, 2, 9660, 9661, 7, 69, 2, 2, 9661, 9662, 7, 67, 2, 2, 9662, 9663, 7, 85, 2, 2, 9663, 9664, 7, 71, 2, 2, 9664, 1632, 3, 2, 2, 2, 9665, 9666, 7, 78, 2, 2, 9666, 9667, 7, 71, 2, 2, 9667, 9668, 7, 67, 2, 2, 9668, 9669, 7, 85, 2, 2, 9669, 9670, 7, 86, 2, 2, 9670, 1634, 3, 2, 2, 2, 9671, 9672, 7, 78, 2, 2, 9672, 9673, 7, 71, 2, 2, 9673, 9674, 7, 80, 2, 2, 9674, 9675, 7, 73, 2, 2, 9675, 9676, 7, 86, 2, 2, 9676, 9677, 7, 74, 2, 2, 9677, 1636, 3, 2, 2, 2, 9678, 9679, 7, 78, 2, 2, 9679, 9680, 7, 75, 2, 2, 9680, 9681, 7, 80, 2, 2, 9681, 9682, 7, 71, 2, 2, 9682, 9683, 7, 72, 2, 2, 9683, 9684, 7, 84, 2, 2, 9684, 9685, 7, 81, 2, 2, 9685, 9686, 7, 79, 2, 2, 9686, 9687, 7, 86, 2, 2, 9687, 9688, 7, 71, 2, 2, 9688, 9689, 7, 90, 2, 2, 9689, 9690, 7, 86, 2, 2, 9690, 1638, 3, 2, 2, 2, 9691, 9692, 7, 78, 2, 2, 9692, 9693, 7, 75, 2, 2, 9693, 9694, 7, 80, 2, 2, 9694, 9695, 7, 71, 2, 2, 9695, 9696, 7, 72, 2, 2, 9696, 9697, 7, 84, 2, 2, 9697, 9698, 7, 81, 2, 2, 9698, 9699, 7, 79, 2, 2, 9699, 9700, 7, 89, 2, 2, 9700, 9701, 7, 77, 2, 2, 9701, 9702, 7, 68, 2, 2, 9702, 1640, 3, 2, 2, 2, 9703, 9704, 7, 78, 2, 2, 9704, 9705, 7, 75, 2, 2, 9705, 9706, 7, 80, 2, 2, 9706, 9707, 7, 71, 2, 2, 9707, 9708, 7, 85, 2, 2, 9708, 9709, 7, 86, 2, 2, 9709, 9710, 7, 84, 2, 2, 9710, 9711, 7, 75, 2, 2, 9711, 9712, 7, 80, 2, 2, 9712, 9713, 7, 73, 2, 2, 9713, 9714, 7, 72, 2, 2, 9714, 9715, 7, 84, 2, 2, 9715, 9716, 7, 81, 2, 2, 9716, 9717, 7, 79, 2, 2, 9717, 9718, 7, 86, 2, 2, 9718, 9719, 7, 71, 2, 2, 9719, 9720, 7, 90, 2, 2, 9720, 9721, 7, 86, 2, 2, 9721, 1642, 3, 2, 2, 2, 9722, 9723, 7, 78, 2, 2, 9723, 9724, 7, 75, 2, 2, 9724, 9725, 7, 80, 2, 2, 9725, 9726, 7, 71, 2, 2, 9726, 9727, 7, 85, 2, 2, 9727, 9728, 7, 86, 2, 2, 9728, 9729, 7, 84, 2, 2, 9729, 9730, 7, 75, 2, 2, 9730, 9731, 7, 80, 2, 2, 9731, 9732, 7, 73, 2, 2, 9732, 9733, 7, 72, 2, 2, 9733, 9734, 7, 84, 2, 2, 9734, 9735, 7, 81, 2, 2, 9735, 9736, 7, 79, 2, 2, 9736, 9737, 7, 89, 2, 2, 9737, 9738, 7, 77, 2, 2, 9738, 9739, 7, 68, 2, 2, 9739, 1644, 3, 2, 2, 2, 9740, 9741, 7, 78, 2, 2, 9741, 9742, 7, 80, 2, 2, 9742, 1646, 3, 2, 2, 2, 9743, 9744, 7, 78, 2, 2, 9744, 9745, 7, 81, 2, 2, 9745, 9746, 7, 67, 2, 2, 9746, 9747, 7, 70, 2, 2, 9747, 9748, 7, 97, 2, 2, 9748, 9749, 7, 72, 2, 2, 9749, 9750, 7, 75, 2, 2, 9750, 9751, 7, 78, 2, 2, 9751, 9752, 7, 71, 2, 2, 9752, 1648, 3, 2, 2, 2, 9753, 9754, 7, 78, 2, 2, 9754, 9755, 7, 81, 2, 2, 9755, 9756, 7, 69, 2, 2, 9756, 9757, 7, 67, 2, 2, 9757, 9758, 7, 86, 2, 2, 9758, 9759, 7, 71, 2, 2, 9759, 1650, 3, 2, 2, 2, 9760, 9761, 7, 78, 2, 2, 9761, 9762, 7, 81, 2, 2, 9762, 9763, 7, 73, 2, 2, 9763, 1652, 3, 2, 2, 2, 9764, 9765, 7, 78, 2, 2, 9765, 9766, 7, 81, 2, 2, 9766, 9767, 7, 73, 2, 2, 9767, 9768, 7, 51, 2, 2, 9768, 9769, 7, 50, 2, 2, 9769, 1654, 3, 2, 2, 2, 9770, 9771, 7, 78, 2, 2, 9771, 9772, 7, 81, 2, 2, 9772, 9773, 7, 73, 2, 2, 9773, 9774, 7, 52, 2, 2, 9774, 1656, 3, 2, 2, 2, 9775, 9776, 7, 78, 2, 2, 9776, 9777, 7, 81, 2, 2, 9777, 9778, 7, 89, 2, 2, 9778, 9779, 7, 71, 2, 2, 9779, 9780, 7, 84, 2, 2, 9780, 1658, 3, 2, 2, 2, 9781, 9782, 7, 78, 2, 2, 9782, 9783, 7, 82, 2, 2, 9783, 9784, 7, 67, 2, 2, 9784, 9785, 7, 70, 2, 2, 9785, 1660, 3, 2, 2, 2, 9786, 9787, 7, 78, 2, 2, 9787, 9788, 7, 86, 2, 2, 9788, 9789, 7, 84, 2, 2, 9789, 9790, 7, 75, 2, 2, 9790, 9791, 7, 79, 2, 2, 9791, 1662, 3, 2, 2, 2, 9792, 9793, 7, 79, 2, 2, 9793, 9794, 7, 67, 2, 2, 9794, 9795, 7, 77, 2, 2, 9795, 9796, 7, 71, 2, 2, 9796, 9797, 7, 70, 2, 2, 9797, 9798, 7, 67, 2, 2, 9798, 9799, 7, 86, 2, 2, 9799, 9800, 7, 71, 2, 2, 9800, 1664, 3, 2, 2, 2, 9801, 9802, 7, 79, 2, 2, 9802, 9803, 7, 67, 2, 2, 9803, 9804, 7, 77, 2, 2, 9804, 9805, 7, 71, 2, 2, 9805, 9806, 7, 86, 2, 2, 9806, 9807, 7, 75, 2, 2, 9807, 9808, 7, 79, 2, 2, 9808, 9809, 7, 71, 2, 2, 9809, 1666, 3, 2, 2, 2, 9810, 9811, 7, 79, 2, 2, 9811, 9812, 7, 67, 2, 2, 9812, 9813, 7, 77, 2, 2, 9813, 9814, 7, 71, 2, 2, 9814, 9815, 7, 97, 2, 2, 9815, 9816, 7, 85, 2, 2, 9816, 9817, 7, 71, 2, 2, 9817, 9818, 7, 86, 2, 2, 9818, 1668, 3, 2, 2, 2, 9819, 9820, 7, 79, 2, 2, 9820, 9821, 7, 67, 2, 2, 9821, 9822, 7, 85, 2, 2, 9822, 9823, 7, 86, 2, 2, 9823, 9824, 7, 71, 2, 2, 9824, 9825, 7, 84, 2, 2, 9825, 9826, 7, 97, 2, 2, 9826, 9827, 7, 82, 2, 2, 9827, 9828, 7, 81, 2, 2, 9828, 9829, 7, 85, 2, 2, 9829, 9830, 7, 97, 2, 2, 9830, 9831, 7, 89, 2, 2, 9831, 9832, 7, 67, 2, 2, 9832, 9833, 7, 75, 2, 2, 9833, 9834, 7, 86, 2, 2, 9834, 1670, 3, 2, 2, 2, 9835, 9836, 7, 79, 2, 2, 9836, 9837, 7, 68, 2, 2, 9837, 9838, 7, 84, 2, 2, 9838, 9839, 7, 69, 2, 2, 9839, 9840, 7, 81, 2, 2, 9840, 9841, 7, 80, 2, 2, 9841, 9842, 7, 86, 2, 2, 9842, 9843, 7, 67, 2, 2, 9843, 9844, 7, 75, 2, 2, 9844, 9845, 7, 80, 2, 2, 9845, 9846, 7, 85, 2, 2, 9846, 1672, 3, 2, 2, 2, 9847, 9848, 7, 79, 2, 2, 9848, 9849, 7, 68, 2, 2, 9849, 9850, 7, 84, 2, 2, 9850, 9851, 7, 70, 2, 2, 9851, 9852, 7, 75, 2, 2, 9852, 9853, 7, 85, 2, 2, 9853, 9854, 7, 76, 2, 2, 9854, 9855, 7, 81, 2, 2, 9855, 9856, 7, 75, 2, 2, 9856, 9857, 7, 80, 2, 2, 9857, 9858, 7, 86, 2, 2, 9858, 1674, 3, 2, 2, 2, 9859, 9860, 7, 79, 2, 2, 9860, 9861, 7, 68, 2, 2, 9861, 9862, 7, 84, 2, 2, 9862, 9863, 7, 71, 2, 2, 9863, 9864, 7, 83, 2, 2, 9864, 9865, 7, 87, 2, 2, 9865, 9866, 7, 67, 2, 2, 9866, 9867, 7, 78, 2, 2, 9867, 1676, 3, 2, 2, 2, 9868, 9869, 7, 79, 2, 2, 9869, 9870, 7, 68, 2, 2, 9870, 9871, 7, 84, 2, 2, 9871, 9872, 7, 75, 2, 2, 9872, 9873, 7, 80, 2, 2, 9873, 9874, 7, 86, 2, 2, 9874, 9875, 7, 71, 2, 2, 9875, 9876, 7, 84, 2, 2, 9876, 9877, 7, 85, 2, 2, 9877, 9878, 7, 71, 2, 2, 9878, 9879, 7, 69, 2, 2, 9879, 9880, 7, 86, 2, 2, 9880, 9881, 7, 85, 2, 2, 9881, 1678, 3, 2, 2, 2, 9882, 9883, 7, 79, 2, 2, 9883, 9884, 7, 68, 2, 2, 9884, 9885, 7, 84, 2, 2, 9885, 9886, 7, 81, 2, 2, 9886, 9887, 7, 88, 2, 2, 9887, 9888, 7, 71, 2, 2, 9888, 9889, 7, 84, 2, 2, 9889, 9890, 7, 78, 2, 2, 9890, 9891, 7, 67, 2, 2, 9891, 9892, 7, 82, 2, 2, 9892, 9893, 7, 85, 2, 2, 9893, 1680, 3, 2, 2, 2, 9894, 9895, 7, 79, 2, 2, 9895, 9896, 7, 68, 2, 2, 9896, 9897, 7, 84, 2, 2, 9897, 9898, 7, 86, 2, 2, 9898, 9899, 7, 81, 2, 2, 9899, 9900, 7, 87, 2, 2, 9900, 9901, 7, 69, 2, 2, 9901, 9902, 7, 74, 2, 2, 9902, 9903, 7, 71, 2, 2, 9903, 9904, 7, 85, 2, 2, 9904, 1682, 3, 2, 2, 2, 9905, 9906, 7, 79, 2, 2, 9906, 9907, 7, 68, 2, 2, 9907, 9908, 7, 84, 2, 2, 9908, 9909, 7, 89, 2, 2, 9909, 9910, 7, 75, 2, 2, 9910, 9911, 7, 86, 2, 2, 9911, 9912, 7, 74, 2, 2, 9912, 9913, 7, 75, 2, 2, 9913, 9914, 7, 80, 2, 2, 9914, 1684, 3, 2, 2, 2, 9915, 9916, 7, 79, 2, 2, 9916, 9917, 7, 70, 2, 2, 9917, 9918, 7, 55, 2, 2, 9918, 1686, 3, 2, 2, 2, 9919, 9920, 7, 79, 2, 2, 9920, 9921, 7, 78, 2, 2, 9921, 9922, 7, 75, 2, 2, 9922, 9923, 7, 80, 2, 2, 9923, 9924, 7, 71, 2, 2, 9924, 9925, 7, 72, 2, 2, 9925, 9926, 7, 84, 2, 2, 9926, 9927, 7, 81, 2, 2, 9927, 9928, 7, 79, 2, 2, 9928, 9929, 7, 86, 2, 2, 9929, 9930, 7, 71, 2, 2, 9930, 9931, 7, 90, 2, 2, 9931, 9932, 7, 86, 2, 2, 9932, 1688, 3, 2, 2, 2, 9933, 9934, 7, 79, 2, 2, 9934, 9935, 7, 78, 2, 2, 9935, 9936, 7, 75, 2, 2, 9936, 9937, 7, 80, 2, 2, 9937, 9938, 7, 71, 2, 2, 9938, 9939, 7, 72, 2, 2, 9939, 9940, 7, 84, 2, 2, 9940, 9941, 7, 81, 2, 2, 9941, 9942, 7, 79, 2, 2, 9942, 9943, 7, 89, 2, 2, 9943, 9944, 7, 77, 2, 2, 9944, 9945, 7, 68, 2, 2, 9945, 1690, 3, 2, 2, 2, 9946, 9947, 7, 79, 2, 2, 9947, 9948, 7, 81, 2, 2, 9948, 9949, 7, 80, 2, 2, 9949, 9950, 7, 86, 2, 2, 9950, 9951, 7, 74, 2, 2, 9951, 9952, 7, 80, 2, 2, 9952, 9953, 7, 67, 2, 2, 9953, 9954, 7, 79, 2, 2, 9954, 9955, 7, 71, 2, 2, 9955, 1692, 3, 2, 2, 2, 9956, 9957, 7, 79, 2, 2, 9957, 9958, 7, 82, 2, 2, 9958, 9959, 7, 81, 2, 2, 9959, 9960, 7, 75, 2, 2, 9960, 9961, 7, 80, 2, 2, 9961, 9962, 7, 86, 2, 2, 9962, 9963, 7, 72, 2, 2, 9963, 9964, 7, 84, 2, 2, 9964, 9965, 7, 81, 2, 2, 9965, 9966, 7, 79, 2, 2, 9966, 9967, 7, 86, 2, 2, 9967, 9968, 7, 71, 2, 2, 9968, 9969, 7, 90, 2, 2, 9969, 9970, 7, 86, 2, 2, 9970, 1694, 3, 2, 2, 2, 9971, 9972, 7, 79, 2, 2, 9972, 9973, 7, 82, 2, 2, 9973, 9974, 7, 81, 2, 2, 9974, 9975, 7, 75, 2, 2, 9975, 9976, 7, 80, 2, 2, 9976, 9977, 7, 86, 2, 2, 9977, 9978, 7, 72, 2, 2, 9978, 9979, 7, 84, 2, 2, 9979, 9980, 7, 81, 2, 2, 9980, 9981, 7, 79, 2, 2, 9981, 9982, 7, 89, 2, 2, 9982, 9983, 7, 77, 2, 2, 9983, 9984, 7, 68, 2, 2, 9984, 1696, 3, 2, 2, 2, 9985, 9986, 7, 79, 2, 2, 9986, 9987, 7, 82, 2, 2, 9987, 9988, 7, 81, 2, 2, 9988, 9989, 7, 78, 2, 2, 9989, 9990, 7, 91, 2, 2, 9990, 9991, 7, 72, 2, 2, 9991, 9992, 7, 84, 2, 2, 9992, 9993, 7, 81, 2, 2, 9993, 9994, 7, 79, 2, 2, 9994, 9995, 7, 86, 2, 2, 9995, 9996, 7, 71, 2, 2, 9996, 9997, 7, 90, 2, 2, 9997, 9998, 7, 86, 2, 2, 9998, 1698, 3, 2, 2, 2, 9999, 10000, 7, 79, 2, 2, 10000, 10001, 7, 82, 2, 2, 10001, 10002, 7, 81, 2, 2, 10002, 10003, 7, 78, 2, 2, 10003, 10004, 7, 91, 2, 2, 10004, 10005, 7, 72, 2, 2, 10005, 10006, 7, 84, 2, 2, 10006, 10007, 7, 81, 2, 2, 10007, 10008, 7, 79, 2, 2, 10008, 10009, 7, 89, 2, 2, 10009, 10010, 7, 77, 2, 2, 10010, 10011, 7, 68, 2, 2, 10011, 1700, 3, 2, 2, 2, 10012, 10013, 7, 79, 2, 2, 10013, 10014, 7, 87, 2, 2, 10014, 10015, 7, 78, 2, 2, 10015, 10016, 7, 86, 2, 2, 10016, 10017, 7, 75, 2, 2, 10017, 10018, 7, 78, 2, 2, 10018, 10019, 7, 75, 2, 2, 10019, 10020, 7, 80, 2, 2, 10020, 10021, 7, 71, 2, 2, 10021, 10022, 7, 85, 2, 2, 10022, 10023, 7, 86, 2, 2, 10023, 10024, 7, 84, 2, 2, 10024, 10025, 7, 75, 2, 2, 10025, 10026, 7, 80, 2, 2, 10026, 10027, 7, 73, 2, 2, 10027, 10028, 7, 72, 2, 2, 10028, 10029, 7, 84, 2, 2, 10029, 10030, 7, 81, 2, 2, 10030, 10031, 7, 79, 2, 2, 10031, 10032, 7, 86, 2, 2, 10032, 10033, 7, 71, 2, 2, 10033, 10034, 7, 90, 2, 2, 10034, 10035, 7, 86, 2, 2, 10035, 1702, 3, 2, 2, 2, 10036, 10037, 7, 79, 2, 2, 10037, 10038, 7, 87, 2, 2, 10038, 10039, 7, 78, 2, 2, 10039, 10040, 7, 86, 2, 2, 10040, 10041, 7, 75, 2, 2, 10041, 10042, 7, 78, 2, 2, 10042, 10043, 7, 75, 2, 2, 10043, 10044, 7, 80, 2, 2, 10044, 10045, 7, 71, 2, 2, 10045, 10046, 7, 85, 2, 2, 10046, 10047, 7, 86, 2, 2, 10047, 10048, 7, 84, 2, 2, 10048, 10049, 7, 75, 2, 2, 10049, 10050, 7, 80, 2, 2, 10050, 10051, 7, 73, 2, 2, 10051, 10052, 7, 72, 2, 2, 10052, 10053, 7, 84, 2, 2, 10053, 10054, 7, 81, 2, 2, 10054, 10055, 7, 79, 2, 2, 10055, 10056, 7, 89, 2, 2, 10056, 10057, 7, 77, 2, 2, 10057, 10058, 7, 68, 2, 2, 10058, 1704, 3, 2, 2, 2, 10059, 10060, 7, 79, 2, 2, 10060, 10061, 7, 87, 2, 2, 10061, 10062, 7, 78, 2, 2, 10062, 10063, 7, 86, 2, 2, 10063, 10064, 7, 75, 2, 2, 10064, 10065, 7, 82, 2, 2, 10065, 10066, 7, 81, 2, 2, 10066, 10067, 7, 75, 2, 2, 10067, 10068, 7, 80, 2, 2, 10068, 10069, 7, 86, 2, 2, 10069, 10070, 7, 72, 2, 2, 10070, 10071, 7, 84, 2, 2, 10071, 10072, 7, 81, 2, 2, 10072, 10073, 7, 79, 2, 2, 10073, 10074, 7, 86, 2, 2, 10074, 10075, 7, 71, 2, 2, 10075, 10076, 7, 90, 2, 2, 10076, 10077, 7, 86, 2, 2, 10077, 1706, 3, 2, 2, 2, 10078, 10079, 7, 79, 2, 2, 10079, 10080, 7, 87, 2, 2, 10080, 10081, 7, 78, 2, 2, 10081, 10082, 7, 86, 2, 2, 10082, 10083, 7, 75, 2, 2, 10083, 10084, 7, 82, 2, 2, 10084, 10085, 7, 81, 2, 2, 10085, 10086, 7, 75, 2, 2, 10086, 10087, 7, 80, 2, 2, 10087, 10088, 7, 86, 2, 2, 10088, 10089, 7, 72, 2, 2, 10089, 10090, 7, 84, 2, 2, 10090, 10091, 7, 81, 2, 2, 10091, 10092, 7, 79, 2, 2, 10092, 10093, 7, 89, 2, 2, 10093, 10094, 7, 77, 2, 2, 10094, 10095, 7, 68, 2, 2, 10095, 1708, 3, 2, 2, 2, 10096, 10097, 7, 79, 2, 2, 10097, 10098, 7, 87, 2, 2, 10098, 10099, 7, 78, 2, 2, 10099, 10100, 7, 86, 2, 2, 10100, 10101, 7, 75, 2, 2, 10101, 10102, 7, 82, 2, 2, 10102, 10103, 7, 81, 2, 2, 10103, 10104, 7, 78, 2, 2, 10104, 10105, 7, 91, 2, 2, 10105, 10106, 7, 73, 2, 2, 10106, 10107, 7, 81, 2, 2, 10107, 10108, 7, 80, 2, 2, 10108, 10109, 7, 72, 2, 2, 10109, 10110, 7, 84, 2, 2, 10110, 10111, 7, 81, 2, 2, 10111, 10112, 7, 79, 2, 2, 10112, 10113, 7, 86, 2, 2, 10113, 10114, 7, 71, 2, 2, 10114, 10115, 7, 90, 2, 2, 10115, 10116, 7, 86, 2, 2, 10116, 1710, 3, 2, 2, 2, 10117, 10118, 7, 79, 2, 2, 10118, 10119, 7, 87, 2, 2, 10119, 10120, 7, 78, 2, 2, 10120, 10121, 7, 86, 2, 2, 10121, 10122, 7, 75, 2, 2, 10122, 10123, 7, 82, 2, 2, 10123, 10124, 7, 81, 2, 2, 10124, 10125, 7, 78, 2, 2, 10125, 10126, 7, 91, 2, 2, 10126, 10127, 7, 73, 2, 2, 10127, 10128, 7, 81, 2, 2, 10128, 10129, 7, 80, 2, 2, 10129, 10130, 7, 72, 2, 2, 10130, 10131, 7, 84, 2, 2, 10131, 10132, 7, 81, 2, 2, 10132, 10133, 7, 79, 2, 2, 10133, 10134, 7, 89, 2, 2, 10134, 10135, 7, 77, 2, 2, 10135, 10136, 7, 68, 2, 2, 10136, 1712, 3, 2, 2, 2, 10137, 10138, 7, 80, 2, 2, 10138, 10139, 7, 67, 2, 2, 10139, 10140, 7, 79, 2, 2, 10140, 10141, 7, 71, 2, 2, 10141, 10142, 7, 97, 2, 2, 10142, 10143, 7, 69, 2, 2, 10143, 10144, 7, 81, 2, 2, 10144, 10145, 7, 80, 2, 2, 10145, 10146, 7, 85, 2, 2, 10146, 10147, 7, 86, 2, 2, 10147, 1714, 3, 2, 2, 2, 10148, 10149, 7, 80, 2, 2, 10149, 10150, 7, 87, 2, 2, 10150, 10151, 7, 78, 2, 2, 10151, 10152, 7, 78, 2, 2, 10152, 10153, 7, 75, 2, 2, 10153, 10154, 7, 72, 2, 2, 10154, 1716, 3, 2, 2, 2, 10155, 10156, 7, 80, 2, 2, 10156, 10157, 7, 87, 2, 2, 10157, 10158, 7, 79, 2, 2, 10158, 10159, 7, 73, 2, 2, 10159, 10160, 7, 71, 2, 2, 10160, 10161, 7, 81, 2, 2, 10161, 10162, 7, 79, 2, 2, 10162, 10163, 7, 71, 2, 2, 10163, 10164, 7, 86, 2, 2, 10164, 10165, 7, 84, 2, 2, 10165, 10166, 7, 75, 2, 2, 10166, 10167, 7, 71, 2, 2, 10167, 10168, 7, 85, 2, 2, 10168, 1718, 3, 2, 2, 2, 10169, 10170, 7, 80, 2, 2, 10170, 10171, 7, 87, 2, 2, 10171, 10172, 7, 79, 2, 2, 10172, 10173, 7, 75, 2, 2, 10173, 10174, 7, 80, 2, 2, 10174, 10175, 7, 86, 2, 2, 10175, 10176, 7, 71, 2, 2, 10176, 10177, 7, 84, 2, 2, 10177, 10178, 7, 75, 2, 2, 10178, 10179, 7, 81, 2, 2, 10179, 10180, 7, 84, 2, 2, 10180, 10181, 7, 84, 2, 2, 10181, 10182, 7, 75, 2, 2, 10182, 10183, 7, 80, 2, 2, 10183, 10184, 7, 73, 2, 2, 10184, 10185, 7, 85, 2, 2, 10185, 1720, 3, 2, 2, 2, 10186, 10187, 7, 80, 2, 2, 10187, 10188, 7, 87, 2, 2, 10188, 10189, 7, 79, 2, 2, 10189, 10190, 7, 82, 2, 2, 10190, 10191, 7, 81, 2, 2, 10191, 10192, 7, 75, 2, 2, 10192, 10193, 7, 80, 2, 2, 10193, 10194, 7, 86, 2, 2, 10194, 10195, 7, 85, 2, 2, 10195, 1722, 3, 2, 2, 2, 10196, 10197, 7, 81, 2, 2, 10197, 10198, 7, 69, 2, 2, 10198, 10199, 7, 86, 2, 2, 10199, 1724, 3, 2, 2, 2, 10200, 10201, 7, 81, 2, 2, 10201, 10202, 7, 69, 2, 2, 10202, 10203, 7, 86, 2, 2, 10203, 10204, 7, 71, 2, 2, 10204, 10205, 7, 86, 2, 2, 10205, 10206, 7, 97, 2, 2, 10206, 10207, 7, 78, 2, 2, 10207, 10208, 7, 71, 2, 2, 10208, 10209, 7, 80, 2, 2, 10209, 10210, 7, 73, 2, 2, 10210, 10211, 7, 86, 2, 2, 10211, 10212, 7, 74, 2, 2, 10212, 1726, 3, 2, 2, 2, 10213, 10214, 7, 81, 2, 2, 10214, 10215, 7, 84, 2, 2, 10215, 10216, 7, 70, 2, 2, 10216, 1728, 3, 2, 2, 2, 10217, 10218, 7, 81, 2, 2, 10218, 10219, 7, 88, 2, 2, 10219, 10220, 7, 71, 2, 2, 10220, 10221, 7, 84, 2, 2, 10221, 10222, 7, 78, 2, 2, 10222, 10223, 7, 67, 2, 2, 10223, 10224, 7, 82, 2, 2, 10224, 10225, 7, 85, 2, 2, 10225, 1730, 3, 2, 2, 2, 10226, 10227, 7, 82, 2, 2, 10227, 10228, 7, 71, 2, 2, 10228, 10229, 7, 84, 2, 2, 10229, 10230, 7, 75, 2, 2, 10230, 10231, 7, 81, 2, 2, 10231, 10232, 7, 70, 2, 2, 10232, 10233, 7, 97, 2, 2, 10233, 10234, 7, 67, 2, 2, 10234, 10235, 7, 70, 2, 2, 10235, 10236, 7, 70, 2, 2, 10236, 1732, 3, 2, 2, 2, 10237, 10238, 7, 82, 2, 2, 10238, 10239, 7, 71, 2, 2, 10239, 10240, 7, 84, 2, 2, 10240, 10241, 7, 75, 2, 2, 10241, 10242, 7, 81, 2, 2, 10242, 10243, 7, 70, 2, 2, 10243, 10244, 7, 97, 2, 2, 10244, 10245, 7, 70, 2, 2, 10245, 10246, 7, 75, 2, 2, 10246, 10247, 7, 72, 2, 2, 10247, 10248, 7, 72, 2, 2, 10248, 1734, 3, 2, 2, 2, 10249, 10250, 7, 82, 2, 2, 10250, 10251, 7, 75, 2, 2, 10251, 1736, 3, 2, 2, 2, 10252, 10253, 7, 82, 2, 2, 10253, 10254, 7, 81, 2, 2, 10254, 10255, 7, 75, 2, 2, 10255, 10256, 7, 80, 2, 2, 10256, 10257, 7, 86, 2, 2, 10257, 10258, 7, 72, 2, 2, 10258, 10259, 7, 84, 2, 2, 10259, 10260, 7, 81, 2, 2, 10260, 10261, 7, 79, 2, 2, 10261, 10262, 7, 86, 2, 2, 10262, 10263, 7, 71, 2, 2, 10263, 10264, 7, 90, 2, 2, 10264, 10265, 7, 86, 2, 2, 10265, 1738, 3, 2, 2, 2, 10266, 10267, 7, 82, 2, 2, 10267, 10268, 7, 81, 2, 2, 10268, 10269, 7, 75, 2, 2, 10269, 10270, 7, 80, 2, 2, 10270, 10271, 7, 86, 2, 2, 10271, 10272, 7, 72, 2, 2, 10272, 10273, 7, 84, 2, 2, 10273, 10274, 7, 81, 2, 2, 10274, 10275, 7, 79, 2, 2, 10275, 10276, 7, 89, 2, 2, 10276, 10277, 7, 77, 2, 2, 10277, 10278, 7, 68, 2, 2, 10278, 1740, 3, 2, 2, 2, 10279, 10280, 7, 82, 2, 2, 10280, 10281, 7, 81, 2, 2, 10281, 10282, 7, 75, 2, 2, 10282, 10283, 7, 80, 2, 2, 10283, 10284, 7, 86, 2, 2, 10284, 10285, 7, 80, 2, 2, 10285, 1742, 3, 2, 2, 2, 10286, 10287, 7, 82, 2, 2, 10287, 10288, 7, 81, 2, 2, 10288, 10289, 7, 78, 2, 2, 10289, 10290, 7, 91, 2, 2, 10290, 10291, 7, 72, 2, 2, 10291, 10292, 7, 84, 2, 2, 10292, 10293, 7, 81, 2, 2, 10293, 10294, 7, 79, 2, 2, 10294, 10295, 7, 86, 2, 2, 10295, 10296, 7, 71, 2, 2, 10296, 10297, 7, 90, 2, 2, 10297, 10298, 7, 86, 2, 2, 10298, 1744, 3, 2, 2, 2, 10299, 10300, 7, 82, 2, 2, 10300, 10301, 7, 81, 2, 2, 10301, 10302, 7, 78, 2, 2, 10302, 10303, 7, 91, 2, 2, 10303, 10304, 7, 72, 2, 2, 10304, 10305, 7, 84, 2, 2, 10305, 10306, 7, 81, 2, 2, 10306, 10307, 7, 79, 2, 2, 10307, 10308, 7, 89, 2, 2, 10308, 10309, 7, 77, 2, 2, 10309, 10310, 7, 68, 2, 2, 10310, 1746, 3, 2, 2, 2, 10311, 10312, 7, 82, 2, 2, 10312, 10313, 7, 81, 2, 2, 10313, 10314, 7, 78, 2, 2, 10314, 10315, 7, 91, 2, 2, 10315, 10316, 7, 73, 2, 2, 10316, 10317, 7, 81, 2, 2, 10317, 10318, 7, 80, 2, 2, 10318, 10319, 7, 72, 2, 2, 10319, 10320, 7, 84, 2, 2, 10320, 10321, 7, 81, 2, 2, 10321, 10322, 7, 79, 2, 2, 10322, 10323, 7, 86, 2, 2, 10323, 10324, 7, 71, 2, 2, 10324, 10325, 7, 90, 2, 2, 10325, 10326, 7, 86, 2, 2, 10326, 1748, 3, 2, 2, 2, 10327, 10328, 7, 82, 2, 2, 10328, 10329, 7, 81, 2, 2, 10329, 10330, 7, 78, 2, 2, 10330, 10331, 7, 91, 2, 2, 10331, 10332, 7, 73, 2, 2, 10332, 10333, 7, 81, 2, 2, 10333, 10334, 7, 80, 2, 2, 10334, 10335, 7, 72, 2, 2, 10335, 10336, 7, 84, 2, 2, 10336, 10337, 7, 81, 2, 2, 10337, 10338, 7, 79, 2, 2, 10338, 10339, 7, 89, 2, 2, 10339, 10340, 7, 77, 2, 2, 10340, 10341, 7, 68, 2, 2, 10341, 1750, 3, 2, 2, 2, 10342, 10343, 7, 82, 2, 2, 10343, 10344, 7, 81, 2, 2, 10344, 10345, 7, 89, 2, 2, 10345, 1752, 3, 2, 2, 2, 10346, 10347, 7, 82, 2, 2, 10347, 10348, 7, 81, 2, 2, 10348, 10349, 7, 89, 2, 2, 10349, 10350, 7, 71, 2, 2, 10350, 10351, 7, 84, 2, 2, 10351, 1754, 3, 2, 2, 2, 10352, 10353, 7, 83, 2, 2, 10353, 10354, 7, 87, 2, 2, 10354, 10355, 7, 81, 2, 2, 10355, 10356, 7, 86, 2, 2, 10356, 10357, 7, 71, 2, 2, 10357, 1756, 3, 2, 2, 2, 10358, 10359, 7, 84, 2, 2, 10359, 10360, 7, 67, 2, 2, 10360, 10361, 7, 70, 2, 2, 10361, 10362, 7, 75, 2, 2, 10362, 10363, 7, 67, 2, 2, 10363, 10364, 7, 80, 2, 2, 10364, 10365, 7, 85, 2, 2, 10365, 1758, 3, 2, 2, 2, 10366, 10367, 7, 84, 2, 2, 10367, 10368, 7, 67, 2, 2, 10368, 10369, 7, 80, 2, 2, 10369, 10370, 7, 70, 2, 2, 10370, 1760, 3, 2, 2, 2, 10371, 10372, 7, 84, 2, 2, 10372, 10373, 7, 67, 2, 2, 10373, 10374, 7, 80, 2, 2, 10374, 10375, 7, 70, 2, 2, 10375, 10376, 7, 81, 2, 2, 10376, 10377, 7, 79, 2, 2, 10377, 10378, 7, 97, 2, 2, 10378, 10379, 7, 68, 2, 2, 10379, 10380, 7, 91, 2, 2, 10380, 10381, 7, 86, 2, 2, 10381, 10382, 7, 71, 2, 2, 10382, 10383, 7, 85, 2, 2, 10383, 1762, 3, 2, 2, 2, 10384, 10385, 7, 84, 2, 2, 10385, 10386, 7, 71, 2, 2, 10386, 10387, 7, 78, 2, 2, 10387, 10388, 7, 71, 2, 2, 10388, 10389, 7, 67, 2, 2, 10389, 10390, 7, 85, 2, 2, 10390, 10391, 7, 71, 2, 2, 10391, 10392, 7, 97, 2, 2, 10392, 10393, 7, 78, 2, 2, 10393, 10394, 7, 81, 2, 2, 10394, 10395, 7, 69, 2, 2, 10395, 10396, 7, 77, 2, 2, 10396, 1764, 3, 2, 2, 2, 10397, 10398, 7, 84, 2, 2, 10398, 10399, 7, 71, 2, 2, 10399, 10400, 7, 88, 2, 2, 10400, 10401, 7, 71, 2, 2, 10401, 10402, 7, 84, 2, 2, 10402, 10403, 7, 85, 2, 2, 10403, 10404, 7, 71, 2, 2, 10404, 1766, 3, 2, 2, 2, 10405, 10406, 7, 84, 2, 2, 10406, 10407, 7, 81, 2, 2, 10407, 10408, 7, 87, 2, 2, 10408, 10409, 7, 80, 2, 2, 10409, 10410, 7, 70, 2, 2, 10410, 1768, 3, 2, 2, 2, 10411, 10412, 7, 84, 2, 2, 10412, 10413, 7, 81, 2, 2, 10413, 10414, 7, 89, 2, 2, 10414, 10415, 7, 97, 2, 2, 10415, 10416, 7, 69, 2, 2, 10416, 10417, 7, 81, 2, 2, 10417, 10418, 7, 87, 2, 2, 10418, 10419, 7, 80, 2, 2, 10419, 10420, 7, 86, 2, 2, 10420, 1770, 3, 2, 2, 2, 10421, 10422, 7, 84, 2, 2, 10422, 10423, 7, 82, 2, 2, 10423, 10424, 7, 67, 2, 2, 10424, 10425, 7, 70, 2, 2, 10425, 1772, 3, 2, 2, 2, 10426, 10427, 7, 84, 2, 2, 10427, 10428, 7, 86, 2, 2, 10428, 10429, 7, 84, 2, 2, 10429, 10430, 7, 75, 2, 2, 10430, 10431, 7, 79, 2, 2, 10431, 1774, 3, 2, 2, 2, 10432, 10433, 7, 85, 2, 2, 10433, 10434, 7, 71, 2, 2, 10434, 10435, 7, 69, 2, 2, 10435, 10436, 7, 97, 2, 2, 10436, 10437, 7, 86, 2, 2, 10437, 10438, 7, 81, 2, 2, 10438, 10439, 7, 97, 2, 2, 10439, 10440, 7, 86, 2, 2, 10440, 10441, 7, 75, 2, 2, 10441, 10442, 7, 79, 2, 2, 10442, 10443, 7, 71, 2, 2, 10443, 1776, 3, 2, 2, 2, 10444, 10445, 7, 85, 2, 2, 10445, 10446, 7, 71, 2, 2, 10446, 10447, 7, 85, 2, 2, 10447, 10448, 7, 85, 2, 2, 10448, 10449, 7, 75, 2, 2, 10449, 10450, 7, 81, 2, 2, 10450, 10451, 7, 80, 2, 2, 10451, 10452, 7, 97, 2, 2, 10452, 10453, 7, 87, 2, 2, 10453, 10454, 7, 85, 2, 2, 10454, 10455, 7, 71, 2, 2, 10455, 10456, 7, 84, 2, 2, 10456, 1778, 3, 2, 2, 2, 10457, 10458, 7, 85, 2, 2, 10458, 10459, 7, 74, 2, 2, 10459, 10460, 7, 67, 2, 2, 10460, 1780, 3, 2, 2, 2, 10461, 10462, 7, 85, 2, 2, 10462, 10463, 7, 74, 2, 2, 10463, 10464, 7, 67, 2, 2, 10464, 10465, 7, 51, 2, 2, 10465, 1782, 3, 2, 2, 2, 10466, 10467, 7, 85, 2, 2, 10467, 10468, 7, 74, 2, 2, 10468, 10469, 7, 67, 2, 2, 10469, 10470, 7, 52, 2, 2, 10470, 1784, 3, 2, 2, 2, 10471, 10472, 7, 85, 2, 2, 10472, 10473, 7, 69, 2, 2, 10473, 10474, 7, 74, 2, 2, 10474, 10475, 7, 71, 2, 2, 10475, 10476, 7, 79, 2, 2, 10476, 10477, 7, 67, 2, 2, 10477, 10478, 7, 97, 2, 2, 10478, 10479, 7, 80, 2, 2, 10479, 10480, 7, 67, 2, 2, 10480, 10481, 7, 79, 2, 2, 10481, 10482, 7, 71, 2, 2, 10482, 1786, 3, 2, 2, 2, 10483, 10484, 7, 85, 2, 2, 10484, 10485, 7, 75, 2, 2, 10485, 10486, 7, 73, 2, 2, 10486, 10487, 7, 80, 2, 2, 10487, 1788, 3, 2, 2, 2, 10488, 10489, 7, 85, 2, 2, 10489, 10490, 7, 75, 2, 2, 10490, 10491, 7, 80, 2, 2, 10491, 1790, 3, 2, 2, 2, 10492, 10493, 7, 85, 2, 2, 10493, 10494, 7, 78, 2, 2, 10494, 10495, 7, 71, 2, 2, 10495, 10496, 7, 71, 2, 2, 10496, 10497, 7, 82, 2, 2, 10497, 1792, 3, 2, 2, 2, 10498, 10499, 7, 85, 2, 2, 10499, 10500, 7, 81, 2, 2, 10500, 10501, 7, 87, 2, 2, 10501, 10502, 7, 80, 2, 2, 10502, 10503, 7, 70, 2, 2, 10503, 10504, 7, 71, 2, 2, 10504, 10505, 7, 90, 2, 2, 10505, 1794, 3, 2, 2, 2, 10506, 10507, 7, 85, 2, 2, 10507, 10508, 7, 83, 2, 2, 10508, 10509, 7, 78, 2, 2, 10509, 10510, 7, 97, 2, 2, 10510, 10511, 7, 86, 2, 2, 10511, 10512, 7, 74, 2, 2, 10512, 10513, 7, 84, 2, 2, 10513, 10514, 7, 71, 2, 2, 10514, 10515, 7, 67, 2, 2, 10515, 10516, 7, 70, 2, 2, 10516, 10517, 7, 97, 2, 2, 10517, 10518, 7, 89, 2, 2, 10518, 10519, 7, 67, 2, 2, 10519, 10520, 7, 75, 2, 2, 10520, 10521, 7, 86, 2, 2, 10521, 10522, 7, 97, 2, 2, 10522, 10523, 7, 67, 2, 2, 10523, 10524, 7, 72, 2, 2, 10524, 10525, 7, 86, 2, 2, 10525, 10526, 7, 71, 2, 2, 10526, 10527, 7, 84, 2, 2, 10527, 10528, 7, 97, 2, 2, 10528, 10529, 7, 73, 2, 2, 10529, 10530, 7, 86, 2, 2, 10530, 10531, 7, 75, 2, 2, 10531, 10532, 7, 70, 2, 2, 10532, 10533, 7, 85, 2, 2, 10533, 1796, 3, 2, 2, 2, 10534, 10535, 7, 85, 2, 2, 10535, 10536, 7, 83, 2, 2, 10536, 10537, 7, 84, 2, 2, 10537, 10538, 7, 86, 2, 2, 10538, 1798, 3, 2, 2, 2, 10539, 10540, 7, 85, 2, 2, 10540, 10541, 7, 84, 2, 2, 10541, 10542, 7, 75, 2, 2, 10542, 10543, 7, 70, 2, 2, 10543, 1800, 3, 2, 2, 2, 10544, 10545, 7, 85, 2, 2, 10545, 10546, 7, 86, 2, 2, 10546, 10547, 7, 67, 2, 2, 10547, 10548, 7, 84, 2, 2, 10548, 10549, 7, 86, 2, 2, 10549, 10550, 7, 82, 2, 2, 10550, 10551, 7, 81, 2, 2, 10551, 10552, 7, 75, 2, 2, 10552, 10553, 7, 80, 2, 2, 10553, 10554, 7, 86, 2, 2, 10554, 1802, 3, 2, 2, 2, 10555, 10556, 7, 85, 2, 2, 10556, 10557, 7, 86, 2, 2, 10557, 10558, 7, 84, 2, 2, 10558, 10559, 7, 69, 2, 2, 10559, 10560, 7, 79, 2, 2, 10560, 10561, 7, 82, 2, 2, 10561, 1804, 3, 2, 2, 2, 10562, 10563, 7, 85, 2, 2, 10563, 10564, 7, 86, 2, 2, 10564, 10565, 7, 84, 2, 2, 10565, 10566, 7, 97, 2, 2, 10566, 10567, 7, 86, 2, 2, 10567, 10568, 7, 81, 2, 2, 10568, 10569, 7, 97, 2, 2, 10569, 10570, 7, 70, 2, 2, 10570, 10571, 7, 67, 2, 2, 10571, 10572, 7, 86, 2, 2, 10572, 10573, 7, 71, 2, 2, 10573, 1806, 3, 2, 2, 2, 10574, 10575, 7, 85, 2, 2, 10575, 10576, 7, 86, 2, 2, 10576, 10577, 7, 97, 2, 2, 10577, 10578, 7, 67, 2, 2, 10578, 10579, 7, 84, 2, 2, 10579, 10580, 7, 71, 2, 2, 10580, 10581, 7, 67, 2, 2, 10581, 1808, 3, 2, 2, 2, 10582, 10583, 7, 85, 2, 2, 10583, 10584, 7, 86, 2, 2, 10584, 10585, 7, 97, 2, 2, 10585, 10586, 7, 67, 2, 2, 10586, 10587, 7, 85, 2, 2, 10587, 10588, 7, 68, 2, 2, 10588, 10589, 7, 75, 2, 2, 10589, 10590, 7, 80, 2, 2, 10590, 10591, 7, 67, 2, 2, 10591, 10592, 7, 84, 2, 2, 10592, 10593, 7, 91, 2, 2, 10593, 1810, 3, 2, 2, 2, 10594, 10595, 7, 85, 2, 2, 10595, 10596, 7, 86, 2, 2, 10596, 10597, 7, 97, 2, 2, 10597, 10598, 7, 67, 2, 2, 10598, 10599, 7, 85, 2, 2, 10599, 10600, 7, 86, 2, 2, 10600, 10601, 7, 71, 2, 2, 10601, 10602, 7, 90, 2, 2, 10602, 10603, 7, 86, 2, 2, 10603, 1812, 3, 2, 2, 2, 10604, 10605, 7, 85, 2, 2, 10605, 10606, 7, 86, 2, 2, 10606, 10607, 7, 97, 2, 2, 10607, 10608, 7, 67, 2, 2, 10608, 10609, 7, 85, 2, 2, 10609, 10610, 7, 89, 2, 2, 10610, 10611, 7, 77, 2, 2, 10611, 10612, 7, 68, 2, 2, 10612, 1814, 3, 2, 2, 2, 10613, 10614, 7, 85, 2, 2, 10614, 10615, 7, 86, 2, 2, 10615, 10616, 7, 97, 2, 2, 10616, 10617, 7, 67, 2, 2, 10617, 10618, 7, 85, 2, 2, 10618, 10619, 7, 89, 2, 2, 10619, 10620, 7, 77, 2, 2, 10620, 10621, 7, 86, 2, 2, 10621, 1816, 3, 2, 2, 2, 10622, 10623, 7, 85, 2, 2, 10623, 10624, 7, 86, 2, 2, 10624, 10625, 7, 97, 2, 2, 10625, 10626, 7, 68, 2, 2, 10626, 10627, 7, 87, 2, 2, 10627, 10628, 7, 72, 2, 2, 10628, 10629, 7, 72, 2, 2, 10629, 10630, 7, 71, 2, 2, 10630, 10631, 7, 84, 2, 2, 10631, 1818, 3, 2, 2, 2, 10632, 10633, 7, 85, 2, 2, 10633, 10634, 7, 86, 2, 2, 10634, 10635, 7, 97, 2, 2, 10635, 10636, 7, 69, 2, 2, 10636, 10637, 7, 71, 2, 2, 10637, 10638, 7, 80, 2, 2, 10638, 10639, 7, 86, 2, 2, 10639, 10640, 7, 84, 2, 2, 10640, 10641, 7, 81, 2, 2, 10641, 10642, 7, 75, 2, 2, 10642, 10643, 7, 70, 2, 2, 10643, 1820, 3, 2, 2, 2, 10644, 10645, 7, 85, 2, 2, 10645, 10646, 7, 86, 2, 2, 10646, 10647, 7, 97, 2, 2, 10647, 10648, 7, 69, 2, 2, 10648, 10649, 7, 81, 2, 2, 10649, 10650, 7, 80, 2, 2, 10650, 10651, 7, 86, 2, 2, 10651, 10652, 7, 67, 2, 2, 10652, 10653, 7, 75, 2, 2, 10653, 10654, 7, 80, 2, 2, 10654, 10655, 7, 85, 2, 2, 10655, 1822, 3, 2, 2, 2, 10656, 10657, 7, 85, 2, 2, 10657, 10658, 7, 86, 2, 2, 10658, 10659, 7, 97, 2, 2, 10659, 10660, 7, 69, 2, 2, 10660, 10661, 7, 84, 2, 2, 10661, 10662, 7, 81, 2, 2, 10662, 10663, 7, 85, 2, 2, 10663, 10664, 7, 85, 2, 2, 10664, 10665, 7, 71, 2, 2, 10665, 10666, 7, 85, 2, 2, 10666, 1824, 3, 2, 2, 2, 10667, 10668, 7, 85, 2, 2, 10668, 10669, 7, 86, 2, 2, 10669, 10670, 7, 97, 2, 2, 10670, 10671, 7, 70, 2, 2, 10671, 10672, 7, 75, 2, 2, 10672, 10673, 7, 72, 2, 2, 10673, 10674, 7, 72, 2, 2, 10674, 10675, 7, 71, 2, 2, 10675, 10676, 7, 84, 2, 2, 10676, 10677, 7, 71, 2, 2, 10677, 10678, 7, 80, 2, 2, 10678, 10679, 7, 69, 2, 2, 10679, 10680, 7, 71, 2, 2, 10680, 1826, 3, 2, 2, 2, 10681, 10682, 7, 85, 2, 2, 10682, 10683, 7, 86, 2, 2, 10683, 10684, 7, 97, 2, 2, 10684, 10685, 7, 70, 2, 2, 10685, 10686, 7, 75, 2, 2, 10686, 10687, 7, 79, 2, 2, 10687, 10688, 7, 71, 2, 2, 10688, 10689, 7, 80, 2, 2, 10689, 10690, 7, 85, 2, 2, 10690, 10691, 7, 75, 2, 2, 10691, 10692, 7, 81, 2, 2, 10692, 10693, 7, 80, 2, 2, 10693, 1828, 3, 2, 2, 2, 10694, 10695, 7, 85, 2, 2, 10695, 10696, 7, 86, 2, 2, 10696, 10697, 7, 97, 2, 2, 10697, 10698, 7, 70, 2, 2, 10698, 10699, 7, 75, 2, 2, 10699, 10700, 7, 85, 2, 2, 10700, 10701, 7, 76, 2, 2, 10701, 10702, 7, 81, 2, 2, 10702, 10703, 7, 75, 2, 2, 10703, 10704, 7, 80, 2, 2, 10704, 10705, 7, 86, 2, 2, 10705, 1830, 3, 2, 2, 2, 10706, 10707, 7, 85, 2, 2, 10707, 10708, 7, 86, 2, 2, 10708, 10709, 7, 97, 2, 2, 10709, 10710, 7, 70, 2, 2, 10710, 10711, 7, 75, 2, 2, 10711, 10712, 7, 85, 2, 2, 10712, 10713, 7, 86, 2, 2, 10713, 10714, 7, 67, 2, 2, 10714, 10715, 7, 80, 2, 2, 10715, 10716, 7, 69, 2, 2, 10716, 10717, 7, 71, 2, 2, 10717, 1832, 3, 2, 2, 2, 10718, 10719, 7, 85, 2, 2, 10719, 10720, 7, 86, 2, 2, 10720, 10721, 7, 97, 2, 2, 10721, 10722, 7, 71, 2, 2, 10722, 10723, 7, 80, 2, 2, 10723, 10724, 7, 70, 2, 2, 10724, 10725, 7, 82, 2, 2, 10725, 10726, 7, 81, 2, 2, 10726, 10727, 7, 75, 2, 2, 10727, 10728, 7, 80, 2, 2, 10728, 10729, 7, 86, 2, 2, 10729, 1834, 3, 2, 2, 2, 10730, 10731, 7, 85, 2, 2, 10731, 10732, 7, 86, 2, 2, 10732, 10733, 7, 97, 2, 2, 10733, 10734, 7, 71, 2, 2, 10734, 10735, 7, 80, 2, 2, 10735, 10736, 7, 88, 2, 2, 10736, 10737, 7, 71, 2, 2, 10737, 10738, 7, 78, 2, 2, 10738, 10739, 7, 81, 2, 2, 10739, 10740, 7, 82, 2, 2, 10740, 10741, 7, 71, 2, 2, 10741, 1836, 3, 2, 2, 2, 10742, 10743, 7, 85, 2, 2, 10743, 10744, 7, 86, 2, 2, 10744, 10745, 7, 97, 2, 2, 10745, 10746, 7, 71, 2, 2, 10746, 10747, 7, 83, 2, 2, 10747, 10748, 7, 87, 2, 2, 10748, 10749, 7, 67, 2, 2, 10749, 10750, 7, 78, 2, 2, 10750, 10751, 7, 85, 2, 2, 10751, 1838, 3, 2, 2, 2, 10752, 10753, 7, 85, 2, 2, 10753, 10754, 7, 86, 2, 2, 10754, 10755, 7, 97, 2, 2, 10755, 10756, 7, 71, 2, 2, 10756, 10757, 7, 90, 2, 2, 10757, 10758, 7, 86, 2, 2, 10758, 10759, 7, 71, 2, 2, 10759, 10760, 7, 84, 2, 2, 10760, 10761, 7, 75, 2, 2, 10761, 10762, 7, 81, 2, 2, 10762, 10763, 7, 84, 2, 2, 10763, 10764, 7, 84, 2, 2, 10764, 10765, 7, 75, 2, 2, 10765, 10766, 7, 80, 2, 2, 10766, 10767, 7, 73, 2, 2, 10767, 1840, 3, 2, 2, 2, 10768, 10769, 7, 85, 2, 2, 10769, 10770, 7, 86, 2, 2, 10770, 10771, 7, 97, 2, 2, 10771, 10772, 7, 73, 2, 2, 10772, 10773, 7, 71, 2, 2, 10773, 10774, 7, 81, 2, 2, 10774, 10775, 7, 79, 2, 2, 10775, 10776, 7, 69, 2, 2, 10776, 10777, 7, 81, 2, 2, 10777, 10778, 7, 78, 2, 2, 10778, 10779, 7, 78, 2, 2, 10779, 10780, 7, 72, 2, 2, 10780, 10781, 7, 84, 2, 2, 10781, 10782, 7, 81, 2, 2, 10782, 10783, 7, 79, 2, 2, 10783, 10784, 7, 86, 2, 2, 10784, 10785, 7, 71, 2, 2, 10785, 10786, 7, 90, 2, 2, 10786, 10787, 7, 86, 2, 2, 10787, 1842, 3, 2, 2, 2, 10788, 10789, 7, 85, 2, 2, 10789, 10790, 7, 86, 2, 2, 10790, 10791, 7, 97, 2, 2, 10791, 10792, 7, 73, 2, 2, 10792, 10793, 7, 71, 2, 2, 10793, 10794, 7, 81, 2, 2, 10794, 10795, 7, 79, 2, 2, 10795, 10796, 7, 69, 2, 2, 10796, 10797, 7, 81, 2, 2, 10797, 10798, 7, 78, 2, 2, 10798, 10799, 7, 78, 2, 2, 10799, 10800, 7, 72, 2, 2, 10800, 10801, 7, 84, 2, 2, 10801, 10802, 7, 81, 2, 2, 10802, 10803, 7, 79, 2, 2, 10803, 10804, 7, 86, 2, 2, 10804, 10805, 7, 90, 2, 2, 10805, 10806, 7, 86, 2, 2, 10806, 1844, 3, 2, 2, 2, 10807, 10808, 7, 85, 2, 2, 10808, 10809, 7, 86, 2, 2, 10809, 10810, 7, 97, 2, 2, 10810, 10811, 7, 73, 2, 2, 10811, 10812, 7, 71, 2, 2, 10812, 10813, 7, 81, 2, 2, 10813, 10814, 7, 79, 2, 2, 10814, 10815, 7, 69, 2, 2, 10815, 10816, 7, 81, 2, 2, 10816, 10817, 7, 78, 2, 2, 10817, 10818, 7, 78, 2, 2, 10818, 10819, 7, 72, 2, 2, 10819, 10820, 7, 84, 2, 2, 10820, 10821, 7, 81, 2, 2, 10821, 10822, 7, 79, 2, 2, 10822, 10823, 7, 89, 2, 2, 10823, 10824, 7, 77, 2, 2, 10824, 10825, 7, 68, 2, 2, 10825, 1846, 3, 2, 2, 2, 10826, 10827, 7, 85, 2, 2, 10827, 10828, 7, 86, 2, 2, 10828, 10829, 7, 97, 2, 2, 10829, 10830, 7, 73, 2, 2, 10830, 10831, 7, 71, 2, 2, 10831, 10832, 7, 81, 2, 2, 10832, 10833, 7, 79, 2, 2, 10833, 10834, 7, 71, 2, 2, 10834, 10835, 7, 86, 2, 2, 10835, 10836, 7, 84, 2, 2, 10836, 10837, 7, 91, 2, 2, 10837, 10838, 7, 69, 2, 2, 10838, 10839, 7, 81, 2, 2, 10839, 10840, 7, 78, 2, 2, 10840, 10841, 7, 78, 2, 2, 10841, 10842, 7, 71, 2, 2, 10842, 10843, 7, 69, 2, 2, 10843, 10844, 7, 86, 2, 2, 10844, 10845, 7, 75, 2, 2, 10845, 10846, 7, 81, 2, 2, 10846, 10847, 7, 80, 2, 2, 10847, 10848, 7, 72, 2, 2, 10848, 10849, 7, 84, 2, 2, 10849, 10850, 7, 81, 2, 2, 10850, 10851, 7, 79, 2, 2, 10851, 10852, 7, 86, 2, 2, 10852, 10853, 7, 71, 2, 2, 10853, 10854, 7, 90, 2, 2, 10854, 10855, 7, 86, 2, 2, 10855, 1848, 3, 2, 2, 2, 10856, 10857, 7, 85, 2, 2, 10857, 10858, 7, 86, 2, 2, 10858, 10859, 7, 97, 2, 2, 10859, 10860, 7, 73, 2, 2, 10860, 10861, 7, 71, 2, 2, 10861, 10862, 7, 81, 2, 2, 10862, 10863, 7, 79, 2, 2, 10863, 10864, 7, 71, 2, 2, 10864, 10865, 7, 86, 2, 2, 10865, 10866, 7, 84, 2, 2, 10866, 10867, 7, 91, 2, 2, 10867, 10868, 7, 69, 2, 2, 10868, 10869, 7, 81, 2, 2, 10869, 10870, 7, 78, 2, 2, 10870, 10871, 7, 78, 2, 2, 10871, 10872, 7, 71, 2, 2, 10872, 10873, 7, 69, 2, 2, 10873, 10874, 7, 86, 2, 2, 10874, 10875, 7, 75, 2, 2, 10875, 10876, 7, 81, 2, 2, 10876, 10877, 7, 80, 2, 2, 10877, 10878, 7, 72, 2, 2, 10878, 10879, 7, 84, 2, 2, 10879, 10880, 7, 81, 2, 2, 10880, 10881, 7, 79, 2, 2, 10881, 10882, 7, 89, 2, 2, 10882, 10883, 7, 77, 2, 2, 10883, 10884, 7, 68, 2, 2, 10884, 1850, 3, 2, 2, 2, 10885, 10886, 7, 85, 2, 2, 10886, 10887, 7, 86, 2, 2, 10887, 10888, 7, 97, 2, 2, 10888, 10889, 7, 73, 2, 2, 10889, 10890, 7, 71, 2, 2, 10890, 10891, 7, 81, 2, 2, 10891, 10892, 7, 79, 2, 2, 10892, 10893, 7, 71, 2, 2, 10893, 10894, 7, 86, 2, 2, 10894, 10895, 7, 84, 2, 2, 10895, 10896, 7, 91, 2, 2, 10896, 10897, 7, 72, 2, 2, 10897, 10898, 7, 84, 2, 2, 10898, 10899, 7, 81, 2, 2, 10899, 10900, 7, 79, 2, 2, 10900, 10901, 7, 86, 2, 2, 10901, 10902, 7, 71, 2, 2, 10902, 10903, 7, 90, 2, 2, 10903, 10904, 7, 86, 2, 2, 10904, 1852, 3, 2, 2, 2, 10905, 10906, 7, 85, 2, 2, 10906, 10907, 7, 86, 2, 2, 10907, 10908, 7, 97, 2, 2, 10908, 10909, 7, 73, 2, 2, 10909, 10910, 7, 71, 2, 2, 10910, 10911, 7, 81, 2, 2, 10911, 10912, 7, 79, 2, 2, 10912, 10913, 7, 71, 2, 2, 10913, 10914, 7, 86, 2, 2, 10914, 10915, 7, 84, 2, 2, 10915, 10916, 7, 91, 2, 2, 10916, 10917, 7, 72, 2, 2, 10917, 10918, 7, 84, 2, 2, 10918, 10919, 7, 81, 2, 2, 10919, 10920, 7, 79, 2, 2, 10920, 10921, 7, 89, 2, 2, 10921, 10922, 7, 77, 2, 2, 10922, 10923, 7, 68, 2, 2, 10923, 1854, 3, 2, 2, 2, 10924, 10925, 7, 85, 2, 2, 10925, 10926, 7, 86, 2, 2, 10926, 10927, 7, 97, 2, 2, 10927, 10928, 7, 73, 2, 2, 10928, 10929, 7, 71, 2, 2, 10929, 10930, 7, 81, 2, 2, 10930, 10931, 7, 79, 2, 2, 10931, 10932, 7, 71, 2, 2, 10932, 10933, 7, 86, 2, 2, 10933, 10934, 7, 84, 2, 2, 10934, 10935, 7, 91, 2, 2, 10935, 10936, 7, 80, 2, 2, 10936, 1856, 3, 2, 2, 2, 10937, 10938, 7, 85, 2, 2, 10938, 10939, 7, 86, 2, 2, 10939, 10940, 7, 97, 2, 2, 10940, 10941, 7, 73, 2, 2, 10941, 10942, 7, 71, 2, 2, 10942, 10943, 7, 81, 2, 2, 10943, 10944, 7, 79, 2, 2, 10944, 10945, 7, 71, 2, 2, 10945, 10946, 7, 86, 2, 2, 10946, 10947, 7, 84, 2, 2, 10947, 10948, 7, 91, 2, 2, 10948, 10949, 7, 86, 2, 2, 10949, 10950, 7, 91, 2, 2, 10950, 10951, 7, 82, 2, 2, 10951, 10952, 7, 71, 2, 2, 10952, 1858, 3, 2, 2, 2, 10953, 10954, 7, 85, 2, 2, 10954, 10955, 7, 86, 2, 2, 10955, 10956, 7, 97, 2, 2, 10956, 10957, 7, 73, 2, 2, 10957, 10958, 7, 71, 2, 2, 10958, 10959, 7, 81, 2, 2, 10959, 10960, 7, 79, 2, 2, 10960, 10961, 7, 72, 2, 2, 10961, 10962, 7, 84, 2, 2, 10962, 10963, 7, 81, 2, 2, 10963, 10964, 7, 79, 2, 2, 10964, 10965, 7, 86, 2, 2, 10965, 10966, 7, 71, 2, 2, 10966, 10967, 7, 90, 2, 2, 10967, 10968, 7, 86, 2, 2, 10968, 1860, 3, 2, 2, 2, 10969, 10970, 7, 85, 2, 2, 10970, 10971, 7, 86, 2, 2, 10971, 10972, 7, 97, 2, 2, 10972, 10973, 7, 73, 2, 2, 10973, 10974, 7, 71, 2, 2, 10974, 10975, 7, 81, 2, 2, 10975, 10976, 7, 79, 2, 2, 10976, 10977, 7, 72, 2, 2, 10977, 10978, 7, 84, 2, 2, 10978, 10979, 7, 81, 2, 2, 10979, 10980, 7, 79, 2, 2, 10980, 10981, 7, 89, 2, 2, 10981, 10982, 7, 77, 2, 2, 10982, 10983, 7, 68, 2, 2, 10983, 1862, 3, 2, 2, 2, 10984, 10985, 7, 85, 2, 2, 10985, 10986, 7, 86, 2, 2, 10986, 10987, 7, 97, 2, 2, 10987, 10988, 7, 75, 2, 2, 10988, 10989, 7, 80, 2, 2, 10989, 10990, 7, 86, 2, 2, 10990, 10991, 7, 71, 2, 2, 10991, 10992, 7, 84, 2, 2, 10992, 10993, 7, 75, 2, 2, 10993, 10994, 7, 81, 2, 2, 10994, 10995, 7, 84, 2, 2, 10995, 10996, 7, 84, 2, 2, 10996, 10997, 7, 75, 2, 2, 10997, 10998, 7, 80, 2, 2, 10998, 10999, 7, 73, 2, 2, 10999, 11000, 7, 80, 2, 2, 11000, 1864, 3, 2, 2, 2, 11001, 11002, 7, 85, 2, 2, 11002, 11003, 7, 86, 2, 2, 11003, 11004, 7, 97, 2, 2, 11004, 11005, 7, 75, 2, 2, 11005, 11006, 7, 80, 2, 2, 11006, 11007, 7, 86, 2, 2, 11007, 11008, 7, 71, 2, 2, 11008, 11009, 7, 84, 2, 2, 11009, 11010, 7, 85, 2, 2, 11010, 11011, 7, 71, 2, 2, 11011, 11012, 7, 69, 2, 2, 11012, 11013, 7, 86, 2, 2, 11013, 11014, 7, 75, 2, 2, 11014, 11015, 7, 81, 2, 2, 11015, 11016, 7, 80, 2, 2, 11016, 1866, 3, 2, 2, 2, 11017, 11018, 7, 85, 2, 2, 11018, 11019, 7, 86, 2, 2, 11019, 11020, 7, 97, 2, 2, 11020, 11021, 7, 75, 2, 2, 11021, 11022, 7, 80, 2, 2, 11022, 11023, 7, 86, 2, 2, 11023, 11024, 7, 71, 2, 2, 11024, 11025, 7, 84, 2, 2, 11025, 11026, 7, 85, 2, 2, 11026, 11027, 7, 71, 2, 2, 11027, 11028, 7, 69, 2, 2, 11028, 11029, 7, 86, 2, 2, 11029, 11030, 7, 85, 2, 2, 11030, 1868, 3, 2, 2, 2, 11031, 11032, 7, 85, 2, 2, 11032, 11033, 7, 86, 2, 2, 11033, 11034, 7, 97, 2, 2, 11034, 11035, 7, 75, 2, 2, 11035, 11036, 7, 85, 2, 2, 11036, 11037, 7, 69, 2, 2, 11037, 11038, 7, 78, 2, 2, 11038, 11039, 7, 81, 2, 2, 11039, 11040, 7, 85, 2, 2, 11040, 11041, 7, 71, 2, 2, 11041, 11042, 7, 70, 2, 2, 11042, 1870, 3, 2, 2, 2, 11043, 11044, 7, 85, 2, 2, 11044, 11045, 7, 86, 2, 2, 11045, 11046, 7, 97, 2, 2, 11046, 11047, 7, 75, 2, 2, 11047, 11048, 7, 85, 2, 2, 11048, 11049, 7, 71, 2, 2, 11049, 11050, 7, 79, 2, 2, 11050, 11051, 7, 82, 2, 2, 11051, 11052, 7, 86, 2, 2, 11052, 11053, 7, 91, 2, 2, 11053, 1872, 3, 2, 2, 2, 11054, 11055, 7, 85, 2, 2, 11055, 11056, 7, 86, 2, 2, 11056, 11057, 7, 97, 2, 2, 11057, 11058, 7, 75, 2, 2, 11058, 11059, 7, 85, 2, 2, 11059, 11060, 7, 85, 2, 2, 11060, 11061, 7, 75, 2, 2, 11061, 11062, 7, 79, 2, 2, 11062, 11063, 7, 82, 2, 2, 11063, 11064, 7, 78, 2, 2, 11064, 11065, 7, 71, 2, 2, 11065, 1874, 3, 2, 2, 2, 11066, 11067, 7, 85, 2, 2, 11067, 11068, 7, 86, 2, 2, 11068, 11069, 7, 97, 2, 2, 11069, 11070, 7, 78, 2, 2, 11070, 11071, 7, 75, 2, 2, 11071, 11072, 7, 80, 2, 2, 11072, 11073, 7, 71, 2, 2, 11073, 11074, 7, 72, 2, 2, 11074, 11075, 7, 84, 2, 2, 11075, 11076, 7, 81, 2, 2, 11076, 11077, 7, 79, 2, 2, 11077, 11078, 7, 86, 2, 2, 11078, 11079, 7, 71, 2, 2, 11079, 11080, 7, 90, 2, 2, 11080, 11081, 7, 86, 2, 2, 11081, 1876, 3, 2, 2, 2, 11082, 11083, 7, 85, 2, 2, 11083, 11084, 7, 86, 2, 2, 11084, 11085, 7, 97, 2, 2, 11085, 11086, 7, 78, 2, 2, 11086, 11087, 7, 75, 2, 2, 11087, 11088, 7, 80, 2, 2, 11088, 11089, 7, 71, 2, 2, 11089, 11090, 7, 72, 2, 2, 11090, 11091, 7, 84, 2, 2, 11091, 11092, 7, 81, 2, 2, 11092, 11093, 7, 79, 2, 2, 11093, 11094, 7, 89, 2, 2, 11094, 11095, 7, 77, 2, 2, 11095, 11096, 7, 68, 2, 2, 11096, 1878, 3, 2, 2, 2, 11097, 11098, 7, 85, 2, 2, 11098, 11099, 7, 86, 2, 2, 11099, 11100, 7, 97, 2, 2, 11100, 11101, 7, 78, 2, 2, 11101, 11102, 7, 75, 2, 2, 11102, 11103, 7, 80, 2, 2, 11103, 11104, 7, 71, 2, 2, 11104, 11105, 7, 85, 2, 2, 11105, 11106, 7, 86, 2, 2, 11106, 11107, 7, 84, 2, 2, 11107, 11108, 7, 75, 2, 2, 11108, 11109, 7, 80, 2, 2, 11109, 11110, 7, 73, 2, 2, 11110, 11111, 7, 72, 2, 2, 11111, 11112, 7, 84, 2, 2, 11112, 11113, 7, 81, 2, 2, 11113, 11114, 7, 79, 2, 2, 11114, 11115, 7, 86, 2, 2, 11115, 11116, 7, 71, 2, 2, 11116, 11117, 7, 90, 2, 2, 11117, 11118, 7, 86, 2, 2, 11118, 1880, 3, 2, 2, 2, 11119, 11120, 7, 85, 2, 2, 11120, 11121, 7, 86, 2, 2, 11121, 11122, 7, 97, 2, 2, 11122, 11123, 7, 78, 2, 2, 11123, 11124, 7, 75, 2, 2, 11124, 11125, 7, 80, 2, 2, 11125, 11126, 7, 71, 2, 2, 11126, 11127, 7, 85, 2, 2, 11127, 11128, 7, 86, 2, 2, 11128, 11129, 7, 84, 2, 2, 11129, 11130, 7, 75, 2, 2, 11130, 11131, 7, 80, 2, 2, 11131, 11132, 7, 73, 2, 2, 11132, 11133, 7, 72, 2, 2, 11133, 11134, 7, 84, 2, 2, 11134, 11135, 7, 81, 2, 2, 11135, 11136, 7, 79, 2, 2, 11136, 11137, 7, 89, 2, 2, 11137, 11138, 7, 77, 2, 2, 11138, 11139, 7, 68, 2, 2, 11139, 1882, 3, 2, 2, 2, 11140, 11141, 7, 85, 2, 2, 11141, 11142, 7, 86, 2, 2, 11142, 11143, 7, 97, 2, 2, 11143, 11144, 7, 80, 2, 2, 11144, 11145, 7, 87, 2, 2, 11145, 11146, 7, 79, 2, 2, 11146, 11147, 7, 73, 2, 2, 11147, 11148, 7, 71, 2, 2, 11148, 11149, 7, 81, 2, 2, 11149, 11150, 7, 79, 2, 2, 11150, 11151, 7, 71, 2, 2, 11151, 11152, 7, 86, 2, 2, 11152, 11153, 7, 84, 2, 2, 11153, 11154, 7, 75, 2, 2, 11154, 11155, 7, 71, 2, 2, 11155, 11156, 7, 85, 2, 2, 11156, 1884, 3, 2, 2, 2, 11157, 11158, 7, 85, 2, 2, 11158, 11159, 7, 86, 2, 2, 11159, 11160, 7, 97, 2, 2, 11160, 11161, 7, 80, 2, 2, 11161, 11162, 7, 87, 2, 2, 11162, 11163, 7, 79, 2, 2, 11163, 11164, 7, 75, 2, 2, 11164, 11165, 7, 80, 2, 2, 11165, 11166, 7, 86, 2, 2, 11166, 11167, 7, 71, 2, 2, 11167, 11168, 7, 84, 2, 2, 11168, 11169, 7, 75, 2, 2, 11169, 11170, 7, 81, 2, 2, 11170, 11171, 7, 84, 2, 2, 11171, 11172, 7, 84, 2, 2, 11172, 11173, 7, 75, 2, 2, 11173, 11174, 7, 80, 2, 2, 11174, 11175, 7, 73, 2, 2, 11175, 1886, 3, 2, 2, 2, 11176, 11177, 7, 85, 2, 2, 11177, 11178, 7, 86, 2, 2, 11178, 11179, 7, 97, 2, 2, 11179, 11180, 7, 80, 2, 2, 11180, 11181, 7, 87, 2, 2, 11181, 11182, 7, 79, 2, 2, 11182, 11183, 7, 75, 2, 2, 11183, 11184, 7, 80, 2, 2, 11184, 11185, 7, 86, 2, 2, 11185, 11186, 7, 71, 2, 2, 11186, 11187, 7, 84, 2, 2, 11187, 11188, 7, 75, 2, 2, 11188, 11189, 7, 81, 2, 2, 11189, 11190, 7, 84, 2, 2, 11190, 11191, 7, 84, 2, 2, 11191, 11192, 7, 75, 2, 2, 11192, 11193, 7, 80, 2, 2, 11193, 11194, 7, 73, 2, 2, 11194, 11195, 7, 85, 2, 2, 11195, 1888, 3, 2, 2, 2, 11196, 11197, 7, 85, 2, 2, 11197, 11198, 7, 86, 2, 2, 11198, 11199, 7, 97, 2, 2, 11199, 11200, 7, 80, 2, 2, 11200, 11201, 7, 87, 2, 2, 11201, 11202, 7, 79, 2, 2, 11202, 11203, 7, 82, 2, 2, 11203, 11204, 7, 81, 2, 2, 11204, 11205, 7, 75, 2, 2, 11205, 11206, 7, 80, 2, 2, 11206, 11207, 7, 86, 2, 2, 11207, 11208, 7, 85, 2, 2, 11208, 1890, 3, 2, 2, 2, 11209, 11210, 7, 85, 2, 2, 11210, 11211, 7, 86, 2, 2, 11211, 11212, 7, 97, 2, 2, 11212, 11213, 7, 81, 2, 2, 11213, 11214, 7, 88, 2, 2, 11214, 11215, 7, 71, 2, 2, 11215, 11216, 7, 84, 2, 2, 11216, 11217, 7, 78, 2, 2, 11217, 11218, 7, 67, 2, 2, 11218, 11219, 7, 82, 2, 2, 11219, 11220, 7, 85, 2, 2, 11220, 1892, 3, 2, 2, 2, 11221, 11222, 7, 85, 2, 2, 11222, 11223, 7, 86, 2, 2, 11223, 11224, 7, 97, 2, 2, 11224, 11225, 7, 82, 2, 2, 11225, 11226, 7, 81, 2, 2, 11226, 11227, 7, 75, 2, 2, 11227, 11228, 7, 80, 2, 2, 11228, 11229, 7, 86, 2, 2, 11229, 11230, 7, 72, 2, 2, 11230, 11231, 7, 84, 2, 2, 11231, 11232, 7, 81, 2, 2, 11232, 11233, 7, 79, 2, 2, 11233, 11234, 7, 86, 2, 2, 11234, 11235, 7, 71, 2, 2, 11235, 11236, 7, 90, 2, 2, 11236, 11237, 7, 86, 2, 2, 11237, 1894, 3, 2, 2, 2, 11238, 11239, 7, 85, 2, 2, 11239, 11240, 7, 86, 2, 2, 11240, 11241, 7, 97, 2, 2, 11241, 11242, 7, 82, 2, 2, 11242, 11243, 7, 81, 2, 2, 11243, 11244, 7, 75, 2, 2, 11244, 11245, 7, 80, 2, 2, 11245, 11246, 7, 86, 2, 2, 11246, 11247, 7, 72, 2, 2, 11247, 11248, 7, 84, 2, 2, 11248, 11249, 7, 81, 2, 2, 11249, 11250, 7, 79, 2, 2, 11250, 11251, 7, 89, 2, 2, 11251, 11252, 7, 77, 2, 2, 11252, 11253, 7, 68, 2, 2, 11253, 1896, 3, 2, 2, 2, 11254, 11255, 7, 85, 2, 2, 11255, 11256, 7, 86, 2, 2, 11256, 11257, 7, 97, 2, 2, 11257, 11258, 7, 82, 2, 2, 11258, 11259, 7, 81, 2, 2, 11259, 11260, 7, 75, 2, 2, 11260, 11261, 7, 80, 2, 2, 11261, 11262, 7, 86, 2, 2, 11262, 11263, 7, 80, 2, 2, 11263, 1898, 3, 2, 2, 2, 11264, 11265, 7, 85, 2, 2, 11265, 11266, 7, 86, 2, 2, 11266, 11267, 7, 97, 2, 2, 11267, 11268, 7, 82, 2, 2, 11268, 11269, 7, 81, 2, 2, 11269, 11270, 7, 78, 2, 2, 11270, 11271, 7, 91, 2, 2, 11271, 11272, 7, 72, 2, 2, 11272, 11273, 7, 84, 2, 2, 11273, 11274, 7, 81, 2, 2, 11274, 11275, 7, 79, 2, 2, 11275, 11276, 7, 86, 2, 2, 11276, 11277, 7, 71, 2, 2, 11277, 11278, 7, 90, 2, 2, 11278, 11279, 7, 86, 2, 2, 11279, 1900, 3, 2, 2, 2, 11280, 11281, 7, 85, 2, 2, 11281, 11282, 7, 86, 2, 2, 11282, 11283, 7, 97, 2, 2, 11283, 11284, 7, 82, 2, 2, 11284, 11285, 7, 81, 2, 2, 11285, 11286, 7, 78, 2, 2, 11286, 11287, 7, 91, 2, 2, 11287, 11288, 7, 72, 2, 2, 11288, 11289, 7, 84, 2, 2, 11289, 11290, 7, 81, 2, 2, 11290, 11291, 7, 79, 2, 2, 11291, 11292, 7, 89, 2, 2, 11292, 11293, 7, 77, 2, 2, 11293, 11294, 7, 68, 2, 2, 11294, 1902, 3, 2, 2, 2, 11295, 11296, 7, 85, 2, 2, 11296, 11297, 7, 86, 2, 2, 11297, 11298, 7, 97, 2, 2, 11298, 11299, 7, 82, 2, 2, 11299, 11300, 7, 81, 2, 2, 11300, 11301, 7, 78, 2, 2, 11301, 11302, 7, 91, 2, 2, 11302, 11303, 7, 73, 2, 2, 11303, 11304, 7, 81, 2, 2, 11304, 11305, 7, 80, 2, 2, 11305, 11306, 7, 72, 2, 2, 11306, 11307, 7, 84, 2, 2, 11307, 11308, 7, 81, 2, 2, 11308, 11309, 7, 79, 2, 2, 11309, 11310, 7, 86, 2, 2, 11310, 11311, 7, 71, 2, 2, 11311, 11312, 7, 90, 2, 2, 11312, 11313, 7, 86, 2, 2, 11313, 1904, 3, 2, 2, 2, 11314, 11315, 7, 85, 2, 2, 11315, 11316, 7, 86, 2, 2, 11316, 11317, 7, 97, 2, 2, 11317, 11318, 7, 82, 2, 2, 11318, 11319, 7, 81, 2, 2, 11319, 11320, 7, 78, 2, 2, 11320, 11321, 7, 91, 2, 2, 11321, 11322, 7, 73, 2, 2, 11322, 11323, 7, 81, 2, 2, 11323, 11324, 7, 80, 2, 2, 11324, 11325, 7, 72, 2, 2, 11325, 11326, 7, 84, 2, 2, 11326, 11327, 7, 81, 2, 2, 11327, 11328, 7, 79, 2, 2, 11328, 11329, 7, 89, 2, 2, 11329, 11330, 7, 77, 2, 2, 11330, 11331, 7, 68, 2, 2, 11331, 1906, 3, 2, 2, 2, 11332, 11333, 7, 85, 2, 2, 11333, 11334, 7, 86, 2, 2, 11334, 11335, 7, 97, 2, 2, 11335, 11336, 7, 85, 2, 2, 11336, 11337, 7, 84, 2, 2, 11337, 11338, 7, 75, 2, 2, 11338, 11339, 7, 70, 2, 2, 11339, 1908, 3, 2, 2, 2, 11340, 11341, 7, 85, 2, 2, 11341, 11342, 7, 86, 2, 2, 11342, 11343, 7, 97, 2, 2, 11343, 11344, 7, 85, 2, 2, 11344, 11345, 7, 86, 2, 2, 11345, 11346, 7, 67, 2, 2, 11346, 11347, 7, 84, 2, 2, 11347, 11348, 7, 86, 2, 2, 11348, 11349, 7, 82, 2, 2, 11349, 11350, 7, 81, 2, 2, 11350, 11351, 7, 75, 2, 2, 11351, 11352, 7, 80, 2, 2, 11352, 11353, 7, 86, 2, 2, 11353, 1910, 3, 2, 2, 2, 11354, 11355, 7, 85, 2, 2, 11355, 11356, 7, 86, 2, 2, 11356, 11357, 7, 97, 2, 2, 11357, 11358, 7, 85, 2, 2, 11358, 11359, 7, 91, 2, 2, 11359, 11360, 7, 79, 2, 2, 11360, 11361, 7, 70, 2, 2, 11361, 11362, 7, 75, 2, 2, 11362, 11363, 7, 72, 2, 2, 11363, 11364, 7, 72, 2, 2, 11364, 11365, 7, 71, 2, 2, 11365, 11366, 7, 84, 2, 2, 11366, 11367, 7, 71, 2, 2, 11367, 11368, 7, 80, 2, 2, 11368, 11369, 7, 69, 2, 2, 11369, 11370, 7, 71, 2, 2, 11370, 1912, 3, 2, 2, 2, 11371, 11372, 7, 85, 2, 2, 11372, 11373, 7, 86, 2, 2, 11373, 11374, 7, 97, 2, 2, 11374, 11375, 7, 86, 2, 2, 11375, 11376, 7, 81, 2, 2, 11376, 11377, 7, 87, 2, 2, 11377, 11378, 7, 69, 2, 2, 11378, 11379, 7, 74, 2, 2, 11379, 11380, 7, 71, 2, 2, 11380, 11381, 7, 85, 2, 2, 11381, 1914, 3, 2, 2, 2, 11382, 11383, 7, 85, 2, 2, 11383, 11384, 7, 86, 2, 2, 11384, 11385, 7, 97, 2, 2, 11385, 11386, 7, 87, 2, 2, 11386, 11387, 7, 80, 2, 2, 11387, 11388, 7, 75, 2, 2, 11388, 11389, 7, 81, 2, 2, 11389, 11390, 7, 80, 2, 2, 11390, 1916, 3, 2, 2, 2, 11391, 11392, 7, 85, 2, 2, 11392, 11393, 7, 86, 2, 2, 11393, 11394, 7, 97, 2, 2, 11394, 11395, 7, 89, 2, 2, 11395, 11396, 7, 75, 2, 2, 11396, 11397, 7, 86, 2, 2, 11397, 11398, 7, 74, 2, 2, 11398, 11399, 7, 75, 2, 2, 11399, 11400, 7, 80, 2, 2, 11400, 1918, 3, 2, 2, 2, 11401, 11402, 7, 85, 2, 2, 11402, 11403, 7, 86, 2, 2, 11403, 11404, 7, 97, 2, 2, 11404, 11405, 7, 90, 2, 2, 11405, 1920, 3, 2, 2, 2, 11406, 11407, 7, 85, 2, 2, 11407, 11408, 7, 86, 2, 2, 11408, 11409, 7, 97, 2, 2, 11409, 11410, 7, 91, 2, 2, 11410, 1922, 3, 2, 2, 2, 11411, 11412, 7, 85, 2, 2, 11412, 11413, 7, 87, 2, 2, 11413, 11414, 7, 68, 2, 2, 11414, 11415, 7, 70, 2, 2, 11415, 11416, 7, 67, 2, 2, 11416, 11417, 7, 86, 2, 2, 11417, 11418, 7, 71, 2, 2, 11418, 1924, 3, 2, 2, 2, 11419, 11420, 7, 85, 2, 2, 11420, 11421, 7, 87, 2, 2, 11421, 11422, 7, 68, 2, 2, 11422, 11423, 7, 85, 2, 2, 11423, 11424, 7, 86, 2, 2, 11424, 11425, 7, 84, 2, 2, 11425, 11426, 7, 75, 2, 2, 11426, 11427, 7, 80, 2, 2, 11427, 11428, 7, 73, 2, 2, 11428, 11429, 7, 97, 2, 2, 11429, 11430, 7, 75, 2, 2, 11430, 11431, 7, 80, 2, 2, 11431, 11432, 7, 70, 2, 2, 11432, 11433, 7, 71, 2, 2, 11433, 11434, 7, 90, 2, 2, 11434, 1926, 3, 2, 2, 2, 11435, 11436, 7, 85, 2, 2, 11436, 11437, 7, 87, 2, 2, 11437, 11438, 7, 68, 2, 2, 11438, 11439, 7, 86, 2, 2, 11439, 11440, 7, 75, 2, 2, 11440, 11441, 7, 79, 2, 2, 11441, 11442, 7, 71, 2, 2, 11442, 1928, 3, 2, 2, 2, 11443, 11444, 7, 85, 2, 2, 11444, 11445, 7, 91, 2, 2, 11445, 11446, 7, 85, 2, 2, 11446, 11447, 7, 86, 2, 2, 11447, 11448, 7, 71, 2, 2, 11448, 11449, 7, 79, 2, 2, 11449, 11450, 7, 97, 2, 2, 11450, 11451, 7, 87, 2, 2, 11451, 11452, 7, 85, 2, 2, 11452, 11453, 7, 71, 2, 2, 11453, 11454, 7, 84, 2, 2, 11454, 1930, 3, 2, 2, 2, 11455, 11456, 7, 86, 2, 2, 11456, 11457, 7, 67, 2, 2, 11457, 11458, 7, 80, 2, 2, 11458, 1932, 3, 2, 2, 2, 11459, 11460, 7, 86, 2, 2, 11460, 11461, 7, 75, 2, 2, 11461, 11462, 7, 79, 2, 2, 11462, 11463, 7, 71, 2, 2, 11463, 11464, 7, 70, 2, 2, 11464, 11465, 7, 75, 2, 2, 11465, 11466, 7, 72, 2, 2, 11466, 11467, 7, 72, 2, 2, 11467, 1934, 3, 2, 2, 2, 11468, 11469, 7, 86, 2, 2, 11469, 11470, 7, 75, 2, 2, 11470, 11471, 7, 79, 2, 2, 11471, 11472, 7, 71, 2, 2, 11472, 11473, 7, 85, 2, 2, 11473, 11474, 7, 86, 2, 2, 11474, 11475, 7, 67, 2, 2, 11475, 11476, 7, 79, 2, 2, 11476, 11477, 7, 82, 2, 2, 11477, 11478, 7, 67, 2, 2, 11478, 11479, 7, 70, 2, 2, 11479, 11480, 7, 70, 2, 2, 11480, 1936, 3, 2, 2, 2, 11481, 11482, 7, 86, 2, 2, 11482, 11483, 7, 75, 2, 2, 11483, 11484, 7, 79, 2, 2, 11484, 11485, 7, 71, 2, 2, 11485, 11486, 7, 85, 2, 2, 11486, 11487, 7, 86, 2, 2, 11487, 11488, 7, 67, 2, 2, 11488, 11489, 7, 79, 2, 2, 11489, 11490, 7, 82, 2, 2, 11490, 11491, 7, 70, 2, 2, 11491, 11492, 7, 75, 2, 2, 11492, 11493, 7, 72, 2, 2, 11493, 11494, 7, 72, 2, 2, 11494, 1938, 3, 2, 2, 2, 11495, 11496, 7, 86, 2, 2, 11496, 11497, 7, 75, 2, 2, 11497, 11498, 7, 79, 2, 2, 11498, 11499, 7, 71, 2, 2, 11499, 11500, 7, 97, 2, 2, 11500, 11501, 7, 72, 2, 2, 11501, 11502, 7, 81, 2, 2, 11502, 11503, 7, 84, 2, 2, 11503, 11504, 7, 79, 2, 2, 11504, 11505, 7, 67, 2, 2, 11505, 11506, 7, 86, 2, 2, 11506, 1940, 3, 2, 2, 2, 11507, 11508, 7, 86, 2, 2, 11508, 11509, 7, 75, 2, 2, 11509, 11510, 7, 79, 2, 2, 11510, 11511, 7, 71, 2, 2, 11511, 11512, 7, 97, 2, 2, 11512, 11513, 7, 86, 2, 2, 11513, 11514, 7, 81, 2, 2, 11514, 11515, 7, 97, 2, 2, 11515, 11516, 7, 85, 2, 2, 11516, 11517, 7, 71, 2, 2, 11517, 11518, 7, 69, 2, 2, 11518, 1942, 3, 2, 2, 2, 11519, 11520, 7, 86, 2, 2, 11520, 11521, 7, 81, 2, 2, 11521, 11522, 7, 87, 2, 2, 11522, 11523, 7, 69, 2, 2, 11523, 11524, 7, 74, 2, 2, 11524, 11525, 7, 71, 2, 2, 11525, 11526, 7, 85, 2, 2, 11526, 1944, 3, 2, 2, 2, 11527, 11528, 7, 86, 2, 2, 11528, 11529, 7, 81, 2, 2, 11529, 11530, 7, 97, 2, 2, 11530, 11531, 7, 68, 2, 2, 11531, 11532, 7, 67, 2, 2, 11532, 11533, 7, 85, 2, 2, 11533, 11534, 7, 71, 2, 2, 11534, 11535, 7, 56, 2, 2, 11535, 11536, 7, 54, 2, 2, 11536, 1946, 3, 2, 2, 2, 11537, 11538, 7, 86, 2, 2, 11538, 11539, 7, 81, 2, 2, 11539, 11540, 7, 97, 2, 2, 11540, 11541, 7, 70, 2, 2, 11541, 11542, 7, 67, 2, 2, 11542, 11543, 7, 91, 2, 2, 11543, 11544, 7, 85, 2, 2, 11544, 1948, 3, 2, 2, 2, 11545, 11546, 7, 86, 2, 2, 11546, 11547, 7, 81, 2, 2, 11547, 11548, 7, 97, 2, 2, 11548, 11549, 7, 85, 2, 2, 11549, 11550, 7, 71, 2, 2, 11550, 11551, 7, 69, 2, 2, 11551, 11552, 7, 81, 2, 2, 11552, 11553, 7, 80, 2, 2, 11553, 11554, 7, 70, 2, 2, 11554, 11555, 7, 85, 2, 2, 11555, 1950, 3, 2, 2, 2, 11556, 11557, 7, 87, 2, 2, 11557, 11558, 7, 69, 2, 2, 11558, 11559, 7, 67, 2, 2, 11559, 11560, 7, 85, 2, 2, 11560, 11561, 7, 71, 2, 2, 11561, 1952, 3, 2, 2, 2, 11562, 11563, 7, 87, 2, 2, 11563, 11564, 7, 80, 2, 2, 11564, 11565, 7, 69, 2, 2, 11565, 11566, 7, 81, 2, 2, 11566, 11567, 7, 79, 2, 2, 11567, 11568, 7, 82, 2, 2, 11568, 11569, 7, 84, 2, 2, 11569, 11570, 7, 71, 2, 2, 11570, 11571, 7, 85, 2, 2, 11571, 11572, 7, 85, 2, 2, 11572, 1954, 3, 2, 2, 2, 11573, 11574, 7, 87, 2, 2, 11574, 11575, 7, 80, 2, 2, 11575, 11576, 7, 69, 2, 2, 11576, 11577, 7, 81, 2, 2, 11577, 11578, 7, 79, 2, 2, 11578, 11579, 7, 82, 2, 2, 11579, 11580, 7, 84, 2, 2, 11580, 11581, 7, 71, 2, 2, 11581, 11582, 7, 85, 2, 2, 11582, 11583, 7, 85, 2, 2, 11583, 11584, 7, 71, 2, 2, 11584, 11585, 7, 70, 2, 2, 11585, 11586, 7, 97, 2, 2, 11586, 11587, 7, 78, 2, 2, 11587, 11588, 7, 71, 2, 2, 11588, 11589, 7, 80, 2, 2, 11589, 11590, 7, 73, 2, 2, 11590, 11591, 7, 86, 2, 2, 11591, 11592, 7, 74, 2, 2, 11592, 1956, 3, 2, 2, 2, 11593, 11594, 7, 87, 2, 2, 11594, 11595, 7, 80, 2, 2, 11595, 11596, 7, 74, 2, 2, 11596, 11597, 7, 71, 2, 2, 11597, 11598, 7, 90, 2, 2, 11598, 1958, 3, 2, 2, 2, 11599, 11600, 7, 87, 2, 2, 11600, 11601, 7, 80, 2, 2, 11601, 11602, 7, 75, 2, 2, 11602, 11603, 7, 90, 2, 2, 11603, 11604, 7, 97, 2, 2, 11604, 11605, 7, 86, 2, 2, 11605, 11606, 7, 75, 2, 2, 11606, 11607, 7, 79, 2, 2, 11607, 11608, 7, 71, 2, 2, 11608, 11609, 7, 85, 2, 2, 11609, 11610, 7, 86, 2, 2, 11610, 11611, 7, 67, 2, 2, 11611, 11612, 7, 79, 2, 2, 11612, 11613, 7, 82, 2, 2, 11613, 1960, 3, 2, 2, 2, 11614, 11615, 7, 87, 2, 2, 11615, 11616, 7, 82, 2, 2, 11616, 11617, 7, 70, 2, 2, 11617, 11618, 7, 67, 2, 2, 11618, 11619, 7, 86, 2, 2, 11619, 11620, 7, 71, 2, 2, 11620, 11621, 7, 90, 2, 2, 11621, 11622, 7, 79, 2, 2, 11622, 11623, 7, 78, 2, 2, 11623, 1962, 3, 2, 2, 2, 11624, 11625, 7, 87, 2, 2, 11625, 11626, 7, 82, 2, 2, 11626, 11627, 7, 82, 2, 2, 11627, 11628, 7, 71, 2, 2, 11628, 11629, 7, 84, 2, 2, 11629, 1964, 3, 2, 2, 2, 11630, 11631, 7, 87, 2, 2, 11631, 11632, 7, 87, 2, 2, 11632, 11633, 7, 75, 2, 2, 11633, 11634, 7, 70, 2, 2, 11634, 1966, 3, 2, 2, 2, 11635, 11636, 7, 87, 2, 2, 11636, 11637, 7, 87, 2, 2, 11637, 11638, 7, 75, 2, 2, 11638, 11639, 7, 70, 2, 2, 11639, 11640, 7, 97, 2, 2, 11640, 11641, 7, 85, 2, 2, 11641, 11642, 7, 74, 2, 2, 11642, 11643, 7, 81, 2, 2, 11643, 11644, 7, 84, 2, 2, 11644, 11645, 7, 86, 2, 2, 11645, 1968, 3, 2, 2, 2, 11646, 11647, 7, 88, 2, 2, 11647, 11648, 7, 67, 2, 2, 11648, 11649, 7, 78, 2, 2, 11649, 11650, 7, 75, 2, 2, 11650, 11651, 7, 70, 2, 2, 11651, 11652, 7, 67, 2, 2, 11652, 11653, 7, 86, 2, 2, 11653, 11654, 7, 71, 2, 2, 11654, 11655, 7, 97, 2, 2, 11655, 11656, 7, 82, 2, 2, 11656, 11657, 7, 67, 2, 2, 11657, 11658, 7, 85, 2, 2, 11658, 11659, 7, 85, 2, 2, 11659, 11660, 7, 89, 2, 2, 11660, 11661, 7, 81, 2, 2, 11661, 11662, 7, 84, 2, 2, 11662, 11663, 7, 70, 2, 2, 11663, 11664, 7, 97, 2, 2, 11664, 11665, 7, 85, 2, 2, 11665, 11666, 7, 86, 2, 2, 11666, 11667, 7, 84, 2, 2, 11667, 11668, 7, 71, 2, 2, 11668, 11669, 7, 80, 2, 2, 11669, 11670, 7, 73, 2, 2, 11670, 11671, 7, 86, 2, 2, 11671, 11672, 7, 74, 2, 2, 11672, 1970, 3, 2, 2, 2, 11673, 11674, 7, 88, 2, 2, 11674, 11675, 7, 71, 2, 2, 11675, 11676, 7, 84, 2, 2, 11676, 11677, 7, 85, 2, 2, 11677, 11678, 7, 75, 2, 2, 11678, 11679, 7, 81, 2, 2, 11679, 11680, 7, 80, 2, 2, 11680, 1972, 3, 2, 2, 2, 11681, 11682, 7, 89, 2, 2, 11682, 11683, 7, 67, 2, 2, 11683, 11684, 7, 75, 2, 2, 11684, 11685, 7, 86, 2, 2, 11685, 11686, 7, 97, 2, 2, 11686, 11687, 7, 87, 2, 2, 11687, 11688, 7, 80, 2, 2, 11688, 11689, 7, 86, 2, 2, 11689, 11690, 7, 75, 2, 2, 11690, 11691, 7, 78, 2, 2, 11691, 11692, 7, 97, 2, 2, 11692, 11693, 7, 85, 2, 2, 11693, 11694, 7, 83, 2, 2, 11694, 11695, 7, 78, 2, 2, 11695, 11696, 7, 97, 2, 2, 11696, 11697, 7, 86, 2, 2, 11697, 11698, 7, 74, 2, 2, 11698, 11699, 7, 84, 2, 2, 11699, 11700, 7, 71, 2, 2, 11700, 11701, 7, 67, 2, 2, 11701, 11702, 7, 70, 2, 2, 11702, 11703, 7, 97, 2, 2, 11703, 11704, 7, 67, 2, 2, 11704, 11705, 7, 72, 2, 2, 11705, 11706, 7, 86, 2, 2, 11706, 11707, 7, 71, 2, 2, 11707, 11708, 7, 84, 2, 2, 11708, 11709, 7, 97, 2, 2, 11709, 11710, 7, 73, 2, 2, 11710, 11711, 7, 86, 2, 2, 11711, 11712, 7, 75, 2, 2, 11712, 11713, 7, 70, 2, 2, 11713, 11714, 7, 85, 2, 2, 11714, 1974, 3, 2, 2, 2, 11715, 11716, 7, 89, 2, 2, 11716, 11717, 7, 71, 2, 2, 11717, 11718, 7, 71, 2, 2, 11718, 11719, 7, 77, 2, 2, 11719, 11720, 7, 70, 2, 2, 11720, 11721, 7, 67, 2, 2, 11721, 11722, 7, 91, 2, 2, 11722, 1976, 3, 2, 2, 2, 11723, 11724, 7, 89, 2, 2, 11724, 11725, 7, 71, 2, 2, 11725, 11726, 7, 71, 2, 2, 11726, 11727, 7, 77, 2, 2, 11727, 11728, 7, 81, 2, 2, 11728, 11729, 7, 72, 2, 2, 11729, 11730, 7, 91, 2, 2, 11730, 11731, 7, 71, 2, 2, 11731, 11732, 7, 67, 2, 2, 11732, 11733, 7, 84, 2, 2, 11733, 1978, 3, 2, 2, 2, 11734, 11735, 7, 89, 2, 2, 11735, 11736, 7, 71, 2, 2, 11736, 11737, 7, 75, 2, 2, 11737, 11738, 7, 73, 2, 2, 11738, 11739, 7, 74, 2, 2, 11739, 11740, 7, 86, 2, 2, 11740, 11741, 7, 97, 2, 2, 11741, 11742, 7, 85, 2, 2, 11742, 11743, 7, 86, 2, 2, 11743, 11744, 7, 84, 2, 2, 11744, 11745, 7, 75, 2, 2, 11745, 11746, 7, 80, 2, 2, 11746, 11747, 7, 73, 2, 2, 11747, 1980, 3, 2, 2, 2, 11748, 11749, 7, 89, 2, 2, 11749, 11750, 7, 75, 2, 2, 11750, 11751, 7, 86, 2, 2, 11751, 11752, 7, 74, 2, 2, 11752, 11753, 7, 75, 2, 2, 11753, 11754, 7, 80, 2, 2, 11754, 1982, 3, 2, 2, 2, 11755, 11756, 7, 91, 2, 2, 11756, 11757, 7, 71, 2, 2, 11757, 11758, 7, 67, 2, 2, 11758, 11759, 7, 84, 2, 2, 11759, 11760, 7, 89, 2, 2, 11760, 11761, 7, 71, 2, 2, 11761, 11762, 7, 71, 2, 2, 11762, 11763, 7, 77, 2, 2, 11763, 1984, 3, 2, 2, 2, 11764, 11765, 7, 91, 2, 2, 11765, 1986, 3, 2, 2, 2, 11766, 11767, 7, 90, 2, 2, 11767, 1988, 3, 2, 2, 2, 11768, 11769, 7, 60, 2, 2, 11769, 11770, 7, 63, 2, 2, 11770, 1990, 3, 2, 2, 2, 11771, 11772, 7, 45, 2, 2, 11772, 11773, 7, 63, 2, 2, 11773, 1992, 3, 2, 2, 2, 11774, 11775, 7, 47, 2, 2, 11775, 11776, 7, 63, 2, 2, 11776, 1994, 3, 2, 2, 2, 11777, 11778, 7, 44, 2, 2, 11778, 11779, 7, 63, 2, 2, 11779, 1996, 3, 2, 2, 2, 11780, 11781, 7, 49, 2, 2, 11781, 11782, 7, 63, 2, 2, 11782, 1998, 3, 2, 2, 2, 11783, 11784, 7, 39, 2, 2, 11784, 11785, 7, 63, 2, 2, 11785, 2000, 3, 2, 2, 2, 11786, 11787, 7, 40, 2, 2, 11787, 11788, 7, 63, 2, 2, 11788, 2002, 3, 2, 2, 2, 11789, 11790, 7, 96, 2, 2, 11790, 11791, 7, 63, 2, 2, 11791, 2004, 3, 2, 2, 2, 11792, 11793, 7, 126, 2, 2, 11793, 11794, 7, 63, 2, 2, 11794, 2006, 3, 2, 2, 2, 11795, 11796, 7, 44, 2, 2, 11796, 2008, 3, 2, 2, 2, 11797, 11798, 7, 49, 2, 2, 11798, 2010, 3, 2, 2, 2, 11799, 11800, 7, 39, 2, 2, 11800, 2012, 3, 2, 2, 2, 11801, 11802, 7, 45, 2, 2, 11802, 2014, 3, 2, 2, 2, 11803, 11804, 7, 47, 2, 2, 11804, 11805, 7, 47, 2, 2, 11805, 2016, 3, 2, 2, 2, 11806, 11807, 7, 47, 2, 2, 11807, 2018, 3, 2, 2, 2, 11808, 11809, 7, 70, 2, 2, 11809, 11810, 7, 75, 2, 2, 11810, 11811, 7, 88, 2, 2, 11811, 2020, 3, 2, 2, 2, 11812, 11813, 7, 79, 2, 2, 11813, 11814, 7, 81, 2, 2, 11814, 11815, 7, 70, 2, 2, 11815, 2022, 3, 2, 2, 2, 11816, 11817, 7, 63, 2, 2, 11817, 2024, 3, 2, 2, 2, 11818, 11819, 7, 64, 2, 2, 11819, 2026, 3, 2, 2, 2, 11820, 11821, 7, 62, 2, 2, 11821, 2028, 3, 2, 2, 2, 11822, 11823, 7, 35, 2, 2, 11823, 2030, 3, 2, 2, 2, 11824, 11825, 7, 128, 2, 2, 11825, 2032, 3, 2, 2, 2, 11826, 11827, 7, 126, 2, 2, 11827, 2034, 3, 2, 2, 2, 11828, 11829, 7, 40, 2, 2, 11829, 2036, 3, 2, 2, 2, 11830, 11831, 7, 96, 2, 2, 11831, 2038, 3, 2, 2, 2, 11832, 11833, 7, 48, 2, 2, 11833, 2040, 3, 2, 2, 2, 11834, 11835, 7, 42, 2, 2, 11835, 2042, 3, 2, 2, 2, 11836, 11837, 7, 43, 2, 2, 11837, 2044, 3, 2, 2, 2, 11838, 11839, 7, 46, 2, 2, 11839, 2046, 3, 2, 2, 2, 11840, 11841, 7, 61, 2, 2, 11841, 2048, 3, 2, 2, 2, 11842, 11843, 7, 66, 2, 2, 11843, 2050, 3, 2, 2, 2, 11844, 11845, 7, 50, 2, 2, 11845, 2052, 3, 2, 2, 2, 11846, 11847, 7, 51, 2, 2, 11847, 2054, 3, 2, 2, 2, 11848, 11849, 7, 52, 2, 2, 11849, 2056, 3, 2, 2, 2, 11850, 11851, 7, 41, 2, 2, 11851, 2058, 3, 2, 2, 2, 11852, 11853, 7, 36, 2, 2, 11853, 2060, 3, 2, 2, 2, 11854, 11855, 7, 98, 2, 2, 11855, 2062, 3, 2, 2, 2, 11856, 11857, 7, 60, 2, 2, 11857, 2064, 3, 2, 2, 2, 11858, 11862, 5, 2057, 1029, 2, 11859, 11862, 5, 2059, 1030, 2, 11860, 11862, 5, 2061, 1031, 2, 11861, 11858, 3, 2, 2, 2, 11861, 11859, 3, 2, 2, 2, 11861, 11860, 3, 2, 2, 2, 11862, 2066, 3, 2, 2, 2, 11863, 11864, 7, 98, 2, 2, 11864, 11865, 5, 2099, 1050, 2, 11865, 11866, 7, 98, 2, 2, 11866, 2068, 3, 2, 2, 2, 11867, 11869, 5, 2113, 1057, 2, 11868, 11867, 3, 2, 2, 2, 11869, 11870, 3, 2, 2, 2, 11870, 11868, 3, 2, 2, 2, 11870, 11871, 3, 2, 2, 2, 11871, 11872, 3, 2, 2, 2, 11872, 11873, 9, 4, 2, 2, 11873, 2070, 3, 2, 2, 2, 11874, 11875, 7, 80, 2, 2, 11875, 11876, 5, 2107, 1054, 2, 11876, 2072, 3, 2, 2, 2, 11877, 11881, 5, 2105, 1053, 2, 11878, 11881, 5, 2107, 1054, 2, 11879, 11881, 5, 2109, 1055, 2, 11880, 11877, 3, 2, 2, 2, 11880, 11878, 3, 2, 2, 2, 11880, 11879, 3, 2, 2, 2, 11881, 2074, 3, 2, 2, 2, 11882, 11884, 5, 2113, 1057, 2, 11883, 11882, 3, 2, 2, 2, 11884, 11885, 3, 2, 2, 2, 11885, 11883, 3, 2, 2, 2, 11885, 11886, 3, 2, 2, 2, 11886, 2076, 3, 2, 2, 2, 11887, 11888, 7, 90, 2, 2, 11888, 11892, 7, 41, 2, 2, 11889, 11890, 5, 2111, 1056, 2, 11890, 11891, 5, 2111, 1056, 2, 11891, 11893, 3, 2, 2, 2, 11892, 11889, 3, 2, 2, 2, 11893, 11894, 3, 2, 2, 2, 11894, 11892, 3, 2, 2, 2, 11894, 11895, 3, 2, 2, 2, 11895, 11896, 3, 2, 2, 2, 11896, 11897, 7, 41, 2, 2, 11897, 11907, 3, 2, 2, 2, 11898, 11899, 7, 50, 2, 2, 11899, 11900, 7, 90, 2, 2, 11900, 11902, 3, 2, 2, 2, 11901, 11903, 5, 2111, 1056, 2, 11902, 11901, 3, 2, 2, 2, 11903, 11904, 3, 2, 2, 2, 11904, 11902, 3, 2, 2, 2, 11904, 11905, 3, 2, 2, 2, 11905, 11907, 3, 2, 2, 2, 11906, 11887, 3, 2, 2, 2, 11906, 11898, 3, 2, 2, 2, 11907, 2078, 3, 2, 2, 2, 11908, 11910, 5, 2113, 1057, 2, 11909, 11908, 3, 2, 2, 2, 11910, 11911, 3, 2, 2, 2, 11911, 11909, 3, 2, 2, 2, 11911, 11912, 3, 2, 2, 2, 11912, 11914, 3, 2, 2, 2, 11913, 11909, 3, 2, 2, 2, 11913, 11914, 3, 2, 2, 2, 11914, 11915, 3, 2, 2, 2, 11915, 11917, 7, 48, 2, 2, 11916, 11918, 5, 2113, 1057, 2, 11917, 11916, 3, 2, 2, 2, 11918, 11919, 3, 2, 2, 2, 11919, 11917, 3, 2, 2, 2, 11919, 11920, 3, 2, 2, 2, 11920, 11952, 3, 2, 2, 2, 11921, 11923, 5, 2113, 1057, 2, 11922, 11921, 3, 2, 2, 2, 11923, 11924, 3, 2, 2, 2, 11924, 11922, 3, 2, 2, 2, 11924, 11925, 3, 2, 2, 2, 11925, 11926, 3, 2, 2, 2, 11926, 11927, 7, 48, 2, 2, 11927, 11928, 5, 2101, 1051, 2, 11928, 11952, 3, 2, 2, 2, 11929, 11931, 5, 2113, 1057, 2, 11930, 11929, 3, 2, 2, 2, 11931, 11932, 3, 2, 2, 2, 11932, 11930, 3, 2, 2, 2, 11932, 11933, 3, 2, 2, 2, 11933, 11935, 3, 2, 2, 2, 11934, 11930, 3, 2, 2, 2, 11934, 11935, 3, 2, 2, 2, 11935, 11936, 3, 2, 2, 2, 11936, 11938, 7, 48, 2, 2, 11937, 11939, 5, 2113, 1057, 2, 11938, 11937, 3, 2, 2, 2, 11939, 11940, 3, 2, 2, 2, 11940, 11938, 3, 2, 2, 2, 11940, 11941, 3, 2, 2, 2, 11941, 11942, 3, 2, 2, 2, 11942, 11943, 5, 2101, 1051, 2, 11943, 11952, 3, 2, 2, 2, 11944, 11946, 5, 2113, 1057, 2, 11945, 11944, 3, 2, 2, 2, 11946, 11947, 3, 2, 2, 2, 11947, 11945, 3, 2, 2, 2, 11947, 11948, 3, 2, 2, 2, 11948, 11949, 3, 2, 2, 2, 11949, 11950, 5, 2101, 1051, 2, 11950, 11952, 3, 2, 2, 2, 11951, 11913, 3, 2, 2, 2, 11951, 11922, 3, 2, 2, 2, 11951, 11934, 3, 2, 2, 2, 11951, 11945, 3, 2, 2, 2, 11952, 2080, 3, 2, 2, 2, 11953, 11954, 7, 94, 2, 2, 11954, 11955, 7, 80, 2, 2, 11955, 2082, 3, 2, 2, 2, 11956, 11957, 5, 2115, 1058, 2, 11957, 2084, 3, 2, 2, 2, 11958, 11959, 7, 97, 2, 2, 11959, 11960, 5, 2099, 1050, 2, 11960, 2086, 3, 2, 2, 2, 11961, 11962, 7, 48, 2, 2, 11962, 11963, 5, 2103, 1052, 2, 11963, 2088, 3, 2, 2, 2, 11964, 11965, 5, 2103, 1052, 2, 11965, 2090, 3, 2, 2, 2, 11966, 11968, 7, 98, 2, 2, 11967, 11969, 10, 5, 2, 2, 11968, 11967, 3, 2, 2, 2, 11969, 11970, 3, 2, 2, 2, 11970, 11968, 3, 2, 2, 2, 11970, 11971, 3, 2, 2, 2, 11971, 11972, 3, 2, 2, 2, 11972, 11973, 7, 98, 2, 2, 11973, 2092, 3, 2, 2, 2, 11974, 11979, 5, 2107, 1054, 2, 11975, 11979, 5, 2105, 1053, 2, 11976, 11979, 5, 2109, 1055, 2, 11977, 11979, 5, 2103, 1052, 2, 11978, 11974, 3, 2, 2, 2, 11978, 11975, 3, 2, 2, 2, 11978, 11976, 3, 2, 2, 2, 11978, 11977, 3, 2, 2, 2, 11979, 11980, 3, 2, 2, 2, 11980, 11985, 7, 66, 2, 2, 11981, 11986, 5, 2107, 1054, 2, 11982, 11986, 5, 2105, 1053, 2, 11983, 11986, 5, 2109, 1055, 2, 11984, 11986, 5, 2103, 1052, 2, 11985, 11981, 3, 2, 2, 2, 11985, 11982, 3, 2, 2, 2, 11985, 11983, 3, 2, 2, 2, 11985, 11984, 3, 2, 2, 2, 11986, 2094, 3, 2, 2, 2, 11987, 11996, 7, 66, 2, 2, 11988, 11990, 9, 6, 2, 2, 11989, 11988, 3, 2, 2, 2, 11990, 11991, 3, 2, 2, 2, 11991, 11989, 3, 2, 2, 2, 11991, 11992, 3, 2, 2, 2, 11992, 11997, 3, 2, 2, 2, 11993, 11997, 5, 2107, 1054, 2, 11994, 11997, 5, 2105, 1053, 2, 11995, 11997, 5, 2109, 1055, 2, 11996, 11989, 3, 2, 2, 2, 11996, 11993, 3, 2, 2, 2, 11996, 11994, 3, 2, 2, 2, 11996, 11995, 3, 2, 2, 2, 11997, 2096, 3, 2, 2, 2, 11998, 11999, 7, 66, 2, 2, 11999, 12006, 7, 66, 2, 2, 12000, 12002, 9, 6, 2, 2, 12001, 12000, 3, 2, 2, 2, 12002, 12003, 3, 2, 2, 2, 12003, 12001, 3, 2, 2, 2, 12003, 12004, 3, 2, 2, 2, 12004, 12007, 3, 2, 2, 2, 12005, 12007, 5, 2109, 1055, 2, 12006, 12001, 3, 2, 2, 2, 12006, 12005, 3, 2, 2, 2, 12007, 2098, 3, 2, 2, 2, 12008, 12050, 5, 1275, 638, 2, 12009, 12050, 5, 1277, 639, 2, 12010, 12050, 5, 1279, 640, 2, 12011, 12050, 5, 417, 209, 2, 12012, 12050, 5, 1281, 641, 2, 12013, 12050, 5, 1283, 642, 2, 12014, 12050, 5, 1285, 643, 2, 12015, 12050, 5, 1287, 644, 2, 12016, 12050, 5, 1289, 645, 2, 12017, 12050, 5, 1291, 646, 2, 12018, 12050, 5, 1293, 647, 2, 12019, 12050, 5, 1295, 648, 2, 12020, 12050, 5, 1297, 649, 2, 12021, 12050, 5, 1299, 650, 2, 12022, 12050, 5, 1301, 651, 2, 12023, 12050, 5, 1303, 652, 2, 12024, 12050, 5, 1305, 653, 2, 12025, 12050, 5, 1307, 654, 2, 12026, 12050, 5, 1309, 655, 2, 12027, 12050, 5, 1311, 656, 2, 12028, 12050, 5, 1313, 657, 2, 12029, 12050, 5, 1315, 658, 2, 12030, 12050, 5, 1317, 659, 2, 12031, 12050, 5, 1319, 660, 2, 12032, 12050, 5, 1321, 661, 2, 12033, 12050, 5, 1323, 662, 2, 12034, 12050, 5, 1325, 663, 2, 12035, 12050, 5, 1327, 664, 2, 12036, 12050, 5, 1329, 665, 2, 12037, 12050, 5, 1331, 666, 2, 12038, 12050, 5, 1333, 667, 2, 12039, 12050, 5, 1335, 668, 2, 12040, 12050, 5, 1337, 669, 2, 12041, 12050, 5, 1339, 670, 2, 12042, 12050, 5, 1341, 671, 2, 12043, 12050, 5, 1343, 672, 2, 12044, 12050, 5, 1345, 673, 2, 12045, 12050, 5, 1347, 674, 2, 12046, 12050, 5, 1349, 675, 2, 12047, 12050, 5, 1351, 676, 2, 12048, 12050, 5, 1353, 677, 2, 12049, 12008, 3, 2, 2, 2, 12049, 12009, 3, 2, 2, 2, 12049, 12010, 3, 2, 2, 2, 12049, 12011, 3, 2, 2, 2, 12049, 12012, 3, 2, 2, 2, 12049, 12013, 3, 2, 2, 2, 12049, 12014, 3, 2, 2, 2, 12049, 12015, 3, 2, 2, 2, 12049, 12016, 3, 2, 2, 2, 12049, 12017, 3, 2, 2, 2, 12049, 12018, 3, 2, 2, 2, 12049, 12019, 3, 2, 2, 2, 12049, 12020, 3, 2, 2, 2, 12049, 12021, 3, 2, 2, 2, 12049, 12022, 3, 2, 2, 2, 12049, 12023, 3, 2, 2, 2, 12049, 12024, 3, 2, 2, 2, 12049, 12025, 3, 2, 2, 2, 12049, 12026, 3, 2, 2, 2, 12049, 12027, 3, 2, 2, 2, 12049, 12028, 3, 2, 2, 2, 12049, 12029, 3, 2, 2, 2, 12049, 12030, 3, 2, 2, 2, 12049, 12031, 3, 2, 2, 2, 12049, 12032, 3, 2, 2, 2, 12049, 12033, 3, 2, 2, 2, 12049, 12034, 3, 2, 2, 2, 12049, 12035, 3, 2, 2, 2, 12049, 12036, 3, 2, 2, 2, 12049, 12037, 3, 2, 2, 2, 12049, 12038, 3, 2, 2, 2, 12049, 12039, 3, 2, 2, 2, 12049, 12040, 3, 2, 2, 2, 12049, 12041, 3, 2, 2, 2, 12049, 12042, 3, 2, 2, 2, 12049, 12043, 3, 2, 2, 2, 12049, 12044, 3, 2, 2, 2, 12049, 12045, 3, 2, 2, 2, 12049, 12046, 3, 2, 2, 2, 12049, 12047, 3, 2, 2, 2, 12049, 12048, 3, 2, 2, 2, 12050, 2100, 3, 2, 2, 2, 12051, 12053, 7, 71, 2, 2, 12052, 12054, 9, 7, 2, 2, 12053, 12052, 3, 2, 2, 2, 12053, 12054, 3, 2, 2, 2, 12054, 12056, 3, 2, 2, 2, 12055, 12057, 5, 2113, 1057, 2, 12056, 12055, 3, 2, 2, 2, 12057, 12058, 3, 2, 2, 2, 12058, 12056, 3, 2, 2, 2, 12058, 12059, 3, 2, 2, 2, 12059, 2102, 3, 2, 2, 2, 12060, 12062, 9, 8, 2, 2, 12061, 12060, 3, 2, 2, 2, 12062, 12065, 3, 2, 2, 2, 12063, 12064, 3, 2, 2, 2, 12063, 12061, 3, 2, 2, 2, 12064, 12067, 3, 2, 2, 2, 12065, 12063, 3, 2, 2, 2, 12066, 12068, 9, 9, 2, 2, 12067, 12066, 3, 2, 2, 2, 12068, 12069, 3, 2, 2, 2, 12069, 12070, 3, 2, 2, 2, 12069, 12067, 3, 2, 2, 2, 12070, 12074, 3, 2, 2, 2, 12071, 12073, 9, 8, 2, 2, 12072, 12071, 3, 2, 2, 2, 12073, 12076, 3, 2, 2, 2, 12074, 12072, 3, 2, 2, 2, 12074, 12075, 3, 2, 2, 2, 12075, 2104, 3, 2, 2, 2, 12076, 12074, 3, 2, 2, 2, 12077, 12085, 7, 36, 2, 2, 12078, 12079, 7, 94, 2, 2, 12079, 12084, 11, 2, 2, 2, 12080, 12081, 7, 36, 2, 2, 12081, 12084, 7, 36, 2, 2, 12082, 12084, 10, 10, 2, 2, 12083, 12078, 3, 2, 2, 2, 12083, 12080, 3, 2, 2, 2, 12083, 12082, 3, 2, 2, 2, 12084, 12087, 3, 2, 2, 2, 12085, 12083, 3, 2, 2, 2, 12085, 12086, 3, 2, 2, 2, 12086, 12088, 3, 2, 2, 2, 12087, 12085, 3, 2, 2, 2, 12088, 12089, 7, 36, 2, 2, 12089, 2106, 3, 2, 2, 2, 12090, 12098, 7, 41, 2, 2, 12091, 12092, 7, 94, 2, 2, 12092, 12097, 11, 2, 2, 2, 12093, 12094, 7, 41, 2, 2, 12094, 12097, 7, 41, 2, 2, 12095, 12097, 10, 11, 2, 2, 12096, 12091, 3, 2, 2, 2, 12096, 12093, 3, 2, 2, 2, 12096, 12095, 3, 2, 2, 2, 12097, 12100, 3, 2, 2, 2, 12098, 12096, 3, 2, 2, 2, 12098, 12099, 3, 2, 2, 2, 12099, 12101, 3, 2, 2, 2, 12100, 12098, 3, 2, 2, 2, 12101, 12102, 7, 41, 2, 2, 12102, 2108, 3, 2, 2, 2, 12103, 12111, 7, 98, 2, 2, 12104, 12105, 7, 94, 2, 2, 12105, 12110, 11, 2, 2, 2, 12106, 12107, 7, 98, 2, 2, 12107, 12110, 7, 98, 2, 2, 12108, 12110, 10, 12, 2, 2, 12109, 12104, 3, 2, 2, 2, 12109, 12106, 3, 2, 2, 2, 12109, 12108, 3, 2, 2, 2, 12110, 12113, 3, 2, 2, 2, 12111, 12109, 3, 2, 2, 2, 12111, 12112, 3, 2, 2, 2, 12112, 12114, 3, 2, 2, 2, 12113, 12111, 3, 2, 2, 2, 12114, 12115, 7, 98, 2, 2, 12115, 2110, 3, 2, 2, 2, 12116, 12117, 9, 13, 2, 2, 12117, 2112, 3, 2, 2, 2, 12118, 12119, 9, 14, 2, 2, 12119, 2114, 3, 2, 2, 2, 12120, 12121, 7, 68, 2, 2, 12121, 12123, 7, 41, 2, 2, 12122, 12124, 9, 15, 2, 2, 12123, 12122, 3, 2, 2, 2, 12124, 12125, 3, 2, 2, 2, 12125, 12123, 3, 2, 2, 2, 12125, 12126, 3, 2, 2, 2, 12126, 12127, 3, 2, 2, 2, 12127, 12128, 7, 41, 2, 2, 12128, 2116, 3, 2, 2, 2, 12129, 12130, 11, 2, 2, 2, 12130, 12131, 3, 2, 2, 2, 12131, 12132, 8, 1059, 4, 2, 12132, 2118, 3, 2, 2, 2, 51, 2, 2122, 2133, 2146, 2158, 2163, 2167, 2171, 2177, 2181, 2183, 7799, 7826, 11861, 11870, 11880, 11885, 11894, 11904, 11906, 11911, 11913, 11919, 11924, 11932, 11934, 11940, 11947, 11951, 11970, 11978, 11985, 11991, 11996, 12003, 12006, 12049, 12053, 12058, 12063, 12069, 12074, 12083, 12085, 12096, 12098, 12109, 12111, 12125, 5, 2, 3, 2, 2, 4, 2, 2, 5, 2]
\ No newline at end of file
diff --git a/src/lib/generic/SqlLexer.js b/src/lib/generic/SqlLexer.js
new file mode 100644
index 0000000..95a31ac
--- /dev/null
+++ b/src/lib/generic/SqlLexer.js
@@ -0,0 +1,9901 @@
+// Generated from /Users/ziv/Workspace/dt-sql-parser/src/grammar/generic/SqlLexer.g4 by ANTLR 4.8
+// jshint ignore: start
+var antlr4 = require('antlr4/index');
+
+
+
+var serializedATN = ["\u0003\u608b\ua72a\u8133\ub9ed\u417c\u3be7\u7786\u5964",
+ "\u0002\u041a\u2f65\b\u0001\u0004\u0002\t\u0002\u0004\u0003\t\u0003\u0004",
+ "\u0004\t\u0004\u0004\u0005\t\u0005\u0004\u0006\t\u0006\u0004\u0007\t",
+ "\u0007\u0004\b\t\b\u0004\t\t\t\u0004\n\t\n\u0004\u000b\t\u000b\u0004",
+ "\f\t\f\u0004\r\t\r\u0004\u000e\t\u000e\u0004\u000f\t\u000f\u0004\u0010",
+ "\t\u0010\u0004\u0011\t\u0011\u0004\u0012\t\u0012\u0004\u0013\t\u0013",
+ "\u0004\u0014\t\u0014\u0004\u0015\t\u0015\u0004\u0016\t\u0016\u0004\u0017",
+ "\t\u0017\u0004\u0018\t\u0018\u0004\u0019\t\u0019\u0004\u001a\t\u001a",
+ "\u0004\u001b\t\u001b\u0004\u001c\t\u001c\u0004\u001d\t\u001d\u0004\u001e",
+ "\t\u001e\u0004\u001f\t\u001f\u0004 \t \u0004!\t!\u0004\"\t\"\u0004#",
+ "\t#\u0004$\t$\u0004%\t%\u0004&\t&\u0004\'\t\'\u0004(\t(\u0004)\t)\u0004",
+ "*\t*\u0004+\t+\u0004,\t,\u0004-\t-\u0004.\t.\u0004/\t/\u00040\t0\u0004",
+ "1\t1\u00042\t2\u00043\t3\u00044\t4\u00045\t5\u00046\t6\u00047\t7\u0004",
+ "8\t8\u00049\t9\u0004:\t:\u0004;\t;\u0004<\t<\u0004=\t=\u0004>\t>\u0004",
+ "?\t?\u0004@\t@\u0004A\tA\u0004B\tB\u0004C\tC\u0004D\tD\u0004E\tE\u0004",
+ "F\tF\u0004G\tG\u0004H\tH\u0004I\tI\u0004J\tJ\u0004K\tK\u0004L\tL\u0004",
+ "M\tM\u0004N\tN\u0004O\tO\u0004P\tP\u0004Q\tQ\u0004R\tR\u0004S\tS\u0004",
+ "T\tT\u0004U\tU\u0004V\tV\u0004W\tW\u0004X\tX\u0004Y\tY\u0004Z\tZ\u0004",
+ "[\t[\u0004\\\t\\\u0004]\t]\u0004^\t^\u0004_\t_\u0004`\t`\u0004a\ta\u0004",
+ "b\tb\u0004c\tc\u0004d\td\u0004e\te\u0004f\tf\u0004g\tg\u0004h\th\u0004",
+ "i\ti\u0004j\tj\u0004k\tk\u0004l\tl\u0004m\tm\u0004n\tn\u0004o\to\u0004",
+ "p\tp\u0004q\tq\u0004r\tr\u0004s\ts\u0004t\tt\u0004u\tu\u0004v\tv\u0004",
+ "w\tw\u0004x\tx\u0004y\ty\u0004z\tz\u0004{\t{\u0004|\t|\u0004}\t}\u0004",
+ "~\t~\u0004\u007f\t\u007f\u0004\u0080\t\u0080\u0004\u0081\t\u0081\u0004",
+ "\u0082\t\u0082\u0004\u0083\t\u0083\u0004\u0084\t\u0084\u0004\u0085\t",
+ "\u0085\u0004\u0086\t\u0086\u0004\u0087\t\u0087\u0004\u0088\t\u0088\u0004",
+ "\u0089\t\u0089\u0004\u008a\t\u008a\u0004\u008b\t\u008b\u0004\u008c\t",
+ "\u008c\u0004\u008d\t\u008d\u0004\u008e\t\u008e\u0004\u008f\t\u008f\u0004",
+ "\u0090\t\u0090\u0004\u0091\t\u0091\u0004\u0092\t\u0092\u0004\u0093\t",
+ "\u0093\u0004\u0094\t\u0094\u0004\u0095\t\u0095\u0004\u0096\t\u0096\u0004",
+ "\u0097\t\u0097\u0004\u0098\t\u0098\u0004\u0099\t\u0099\u0004\u009a\t",
+ "\u009a\u0004\u009b\t\u009b\u0004\u009c\t\u009c\u0004\u009d\t\u009d\u0004",
+ "\u009e\t\u009e\u0004\u009f\t\u009f\u0004\u00a0\t\u00a0\u0004\u00a1\t",
+ "\u00a1\u0004\u00a2\t\u00a2\u0004\u00a3\t\u00a3\u0004\u00a4\t\u00a4\u0004",
+ "\u00a5\t\u00a5\u0004\u00a6\t\u00a6\u0004\u00a7\t\u00a7\u0004\u00a8\t",
+ "\u00a8\u0004\u00a9\t\u00a9\u0004\u00aa\t\u00aa\u0004\u00ab\t\u00ab\u0004",
+ "\u00ac\t\u00ac\u0004\u00ad\t\u00ad\u0004\u00ae\t\u00ae\u0004\u00af\t",
+ "\u00af\u0004\u00b0\t\u00b0\u0004\u00b1\t\u00b1\u0004\u00b2\t\u00b2\u0004",
+ "\u00b3\t\u00b3\u0004\u00b4\t\u00b4\u0004\u00b5\t\u00b5\u0004\u00b6\t",
+ "\u00b6\u0004\u00b7\t\u00b7\u0004\u00b8\t\u00b8\u0004\u00b9\t\u00b9\u0004",
+ "\u00ba\t\u00ba\u0004\u00bb\t\u00bb\u0004\u00bc\t\u00bc\u0004\u00bd\t",
+ "\u00bd\u0004\u00be\t\u00be\u0004\u00bf\t\u00bf\u0004\u00c0\t\u00c0\u0004",
+ "\u00c1\t\u00c1\u0004\u00c2\t\u00c2\u0004\u00c3\t\u00c3\u0004\u00c4\t",
+ "\u00c4\u0004\u00c5\t\u00c5\u0004\u00c6\t\u00c6\u0004\u00c7\t\u00c7\u0004",
+ "\u00c8\t\u00c8\u0004\u00c9\t\u00c9\u0004\u00ca\t\u00ca\u0004\u00cb\t",
+ "\u00cb\u0004\u00cc\t\u00cc\u0004\u00cd\t\u00cd\u0004\u00ce\t\u00ce\u0004",
+ "\u00cf\t\u00cf\u0004\u00d0\t\u00d0\u0004\u00d1\t\u00d1\u0004\u00d2\t",
+ "\u00d2\u0004\u00d3\t\u00d3\u0004\u00d4\t\u00d4\u0004\u00d5\t\u00d5\u0004",
+ "\u00d6\t\u00d6\u0004\u00d7\t\u00d7\u0004\u00d8\t\u00d8\u0004\u00d9\t",
+ "\u00d9\u0004\u00da\t\u00da\u0004\u00db\t\u00db\u0004\u00dc\t\u00dc\u0004",
+ "\u00dd\t\u00dd\u0004\u00de\t\u00de\u0004\u00df\t\u00df\u0004\u00e0\t",
+ "\u00e0\u0004\u00e1\t\u00e1\u0004\u00e2\t\u00e2\u0004\u00e3\t\u00e3\u0004",
+ "\u00e4\t\u00e4\u0004\u00e5\t\u00e5\u0004\u00e6\t\u00e6\u0004\u00e7\t",
+ "\u00e7\u0004\u00e8\t\u00e8\u0004\u00e9\t\u00e9\u0004\u00ea\t\u00ea\u0004",
+ "\u00eb\t\u00eb\u0004\u00ec\t\u00ec\u0004\u00ed\t\u00ed\u0004\u00ee\t",
+ "\u00ee\u0004\u00ef\t\u00ef\u0004\u00f0\t\u00f0\u0004\u00f1\t\u00f1\u0004",
+ "\u00f2\t\u00f2\u0004\u00f3\t\u00f3\u0004\u00f4\t\u00f4\u0004\u00f5\t",
+ "\u00f5\u0004\u00f6\t\u00f6\u0004\u00f7\t\u00f7\u0004\u00f8\t\u00f8\u0004",
+ "\u00f9\t\u00f9\u0004\u00fa\t\u00fa\u0004\u00fb\t\u00fb\u0004\u00fc\t",
+ "\u00fc\u0004\u00fd\t\u00fd\u0004\u00fe\t\u00fe\u0004\u00ff\t\u00ff\u0004",
+ "\u0100\t\u0100\u0004\u0101\t\u0101\u0004\u0102\t\u0102\u0004\u0103\t",
+ "\u0103\u0004\u0104\t\u0104\u0004\u0105\t\u0105\u0004\u0106\t\u0106\u0004",
+ "\u0107\t\u0107\u0004\u0108\t\u0108\u0004\u0109\t\u0109\u0004\u010a\t",
+ "\u010a\u0004\u010b\t\u010b\u0004\u010c\t\u010c\u0004\u010d\t\u010d\u0004",
+ "\u010e\t\u010e\u0004\u010f\t\u010f\u0004\u0110\t\u0110\u0004\u0111\t",
+ "\u0111\u0004\u0112\t\u0112\u0004\u0113\t\u0113\u0004\u0114\t\u0114\u0004",
+ "\u0115\t\u0115\u0004\u0116\t\u0116\u0004\u0117\t\u0117\u0004\u0118\t",
+ "\u0118\u0004\u0119\t\u0119\u0004\u011a\t\u011a\u0004\u011b\t\u011b\u0004",
+ "\u011c\t\u011c\u0004\u011d\t\u011d\u0004\u011e\t\u011e\u0004\u011f\t",
+ "\u011f\u0004\u0120\t\u0120\u0004\u0121\t\u0121\u0004\u0122\t\u0122\u0004",
+ "\u0123\t\u0123\u0004\u0124\t\u0124\u0004\u0125\t\u0125\u0004\u0126\t",
+ "\u0126\u0004\u0127\t\u0127\u0004\u0128\t\u0128\u0004\u0129\t\u0129\u0004",
+ "\u012a\t\u012a\u0004\u012b\t\u012b\u0004\u012c\t\u012c\u0004\u012d\t",
+ "\u012d\u0004\u012e\t\u012e\u0004\u012f\t\u012f\u0004\u0130\t\u0130\u0004",
+ "\u0131\t\u0131\u0004\u0132\t\u0132\u0004\u0133\t\u0133\u0004\u0134\t",
+ "\u0134\u0004\u0135\t\u0135\u0004\u0136\t\u0136\u0004\u0137\t\u0137\u0004",
+ "\u0138\t\u0138\u0004\u0139\t\u0139\u0004\u013a\t\u013a\u0004\u013b\t",
+ "\u013b\u0004\u013c\t\u013c\u0004\u013d\t\u013d\u0004\u013e\t\u013e\u0004",
+ "\u013f\t\u013f\u0004\u0140\t\u0140\u0004\u0141\t\u0141\u0004\u0142\t",
+ "\u0142\u0004\u0143\t\u0143\u0004\u0144\t\u0144\u0004\u0145\t\u0145\u0004",
+ "\u0146\t\u0146\u0004\u0147\t\u0147\u0004\u0148\t\u0148\u0004\u0149\t",
+ "\u0149\u0004\u014a\t\u014a\u0004\u014b\t\u014b\u0004\u014c\t\u014c\u0004",
+ "\u014d\t\u014d\u0004\u014e\t\u014e\u0004\u014f\t\u014f\u0004\u0150\t",
+ "\u0150\u0004\u0151\t\u0151\u0004\u0152\t\u0152\u0004\u0153\t\u0153\u0004",
+ "\u0154\t\u0154\u0004\u0155\t\u0155\u0004\u0156\t\u0156\u0004\u0157\t",
+ "\u0157\u0004\u0158\t\u0158\u0004\u0159\t\u0159\u0004\u015a\t\u015a\u0004",
+ "\u015b\t\u015b\u0004\u015c\t\u015c\u0004\u015d\t\u015d\u0004\u015e\t",
+ "\u015e\u0004\u015f\t\u015f\u0004\u0160\t\u0160\u0004\u0161\t\u0161\u0004",
+ "\u0162\t\u0162\u0004\u0163\t\u0163\u0004\u0164\t\u0164\u0004\u0165\t",
+ "\u0165\u0004\u0166\t\u0166\u0004\u0167\t\u0167\u0004\u0168\t\u0168\u0004",
+ "\u0169\t\u0169\u0004\u016a\t\u016a\u0004\u016b\t\u016b\u0004\u016c\t",
+ "\u016c\u0004\u016d\t\u016d\u0004\u016e\t\u016e\u0004\u016f\t\u016f\u0004",
+ "\u0170\t\u0170\u0004\u0171\t\u0171\u0004\u0172\t\u0172\u0004\u0173\t",
+ "\u0173\u0004\u0174\t\u0174\u0004\u0175\t\u0175\u0004\u0176\t\u0176\u0004",
+ "\u0177\t\u0177\u0004\u0178\t\u0178\u0004\u0179\t\u0179\u0004\u017a\t",
+ "\u017a\u0004\u017b\t\u017b\u0004\u017c\t\u017c\u0004\u017d\t\u017d\u0004",
+ "\u017e\t\u017e\u0004\u017f\t\u017f\u0004\u0180\t\u0180\u0004\u0181\t",
+ "\u0181\u0004\u0182\t\u0182\u0004\u0183\t\u0183\u0004\u0184\t\u0184\u0004",
+ "\u0185\t\u0185\u0004\u0186\t\u0186\u0004\u0187\t\u0187\u0004\u0188\t",
+ "\u0188\u0004\u0189\t\u0189\u0004\u018a\t\u018a\u0004\u018b\t\u018b\u0004",
+ "\u018c\t\u018c\u0004\u018d\t\u018d\u0004\u018e\t\u018e\u0004\u018f\t",
+ "\u018f\u0004\u0190\t\u0190\u0004\u0191\t\u0191\u0004\u0192\t\u0192\u0004",
+ "\u0193\t\u0193\u0004\u0194\t\u0194\u0004\u0195\t\u0195\u0004\u0196\t",
+ "\u0196\u0004\u0197\t\u0197\u0004\u0198\t\u0198\u0004\u0199\t\u0199\u0004",
+ "\u019a\t\u019a\u0004\u019b\t\u019b\u0004\u019c\t\u019c\u0004\u019d\t",
+ "\u019d\u0004\u019e\t\u019e\u0004\u019f\t\u019f\u0004\u01a0\t\u01a0\u0004",
+ "\u01a1\t\u01a1\u0004\u01a2\t\u01a2\u0004\u01a3\t\u01a3\u0004\u01a4\t",
+ "\u01a4\u0004\u01a5\t\u01a5\u0004\u01a6\t\u01a6\u0004\u01a7\t\u01a7\u0004",
+ "\u01a8\t\u01a8\u0004\u01a9\t\u01a9\u0004\u01aa\t\u01aa\u0004\u01ab\t",
+ "\u01ab\u0004\u01ac\t\u01ac\u0004\u01ad\t\u01ad\u0004\u01ae\t\u01ae\u0004",
+ "\u01af\t\u01af\u0004\u01b0\t\u01b0\u0004\u01b1\t\u01b1\u0004\u01b2\t",
+ "\u01b2\u0004\u01b3\t\u01b3\u0004\u01b4\t\u01b4\u0004\u01b5\t\u01b5\u0004",
+ "\u01b6\t\u01b6\u0004\u01b7\t\u01b7\u0004\u01b8\t\u01b8\u0004\u01b9\t",
+ "\u01b9\u0004\u01ba\t\u01ba\u0004\u01bb\t\u01bb\u0004\u01bc\t\u01bc\u0004",
+ "\u01bd\t\u01bd\u0004\u01be\t\u01be\u0004\u01bf\t\u01bf\u0004\u01c0\t",
+ "\u01c0\u0004\u01c1\t\u01c1\u0004\u01c2\t\u01c2\u0004\u01c3\t\u01c3\u0004",
+ "\u01c4\t\u01c4\u0004\u01c5\t\u01c5\u0004\u01c6\t\u01c6\u0004\u01c7\t",
+ "\u01c7\u0004\u01c8\t\u01c8\u0004\u01c9\t\u01c9\u0004\u01ca\t\u01ca\u0004",
+ "\u01cb\t\u01cb\u0004\u01cc\t\u01cc\u0004\u01cd\t\u01cd\u0004\u01ce\t",
+ "\u01ce\u0004\u01cf\t\u01cf\u0004\u01d0\t\u01d0\u0004\u01d1\t\u01d1\u0004",
+ "\u01d2\t\u01d2\u0004\u01d3\t\u01d3\u0004\u01d4\t\u01d4\u0004\u01d5\t",
+ "\u01d5\u0004\u01d6\t\u01d6\u0004\u01d7\t\u01d7\u0004\u01d8\t\u01d8\u0004",
+ "\u01d9\t\u01d9\u0004\u01da\t\u01da\u0004\u01db\t\u01db\u0004\u01dc\t",
+ "\u01dc\u0004\u01dd\t\u01dd\u0004\u01de\t\u01de\u0004\u01df\t\u01df\u0004",
+ "\u01e0\t\u01e0\u0004\u01e1\t\u01e1\u0004\u01e2\t\u01e2\u0004\u01e3\t",
+ "\u01e3\u0004\u01e4\t\u01e4\u0004\u01e5\t\u01e5\u0004\u01e6\t\u01e6\u0004",
+ "\u01e7\t\u01e7\u0004\u01e8\t\u01e8\u0004\u01e9\t\u01e9\u0004\u01ea\t",
+ "\u01ea\u0004\u01eb\t\u01eb\u0004\u01ec\t\u01ec\u0004\u01ed\t\u01ed\u0004",
+ "\u01ee\t\u01ee\u0004\u01ef\t\u01ef\u0004\u01f0\t\u01f0\u0004\u01f1\t",
+ "\u01f1\u0004\u01f2\t\u01f2\u0004\u01f3\t\u01f3\u0004\u01f4\t\u01f4\u0004",
+ "\u01f5\t\u01f5\u0004\u01f6\t\u01f6\u0004\u01f7\t\u01f7\u0004\u01f8\t",
+ "\u01f8\u0004\u01f9\t\u01f9\u0004\u01fa\t\u01fa\u0004\u01fb\t\u01fb\u0004",
+ "\u01fc\t\u01fc\u0004\u01fd\t\u01fd\u0004\u01fe\t\u01fe\u0004\u01ff\t",
+ "\u01ff\u0004\u0200\t\u0200\u0004\u0201\t\u0201\u0004\u0202\t\u0202\u0004",
+ "\u0203\t\u0203\u0004\u0204\t\u0204\u0004\u0205\t\u0205\u0004\u0206\t",
+ "\u0206\u0004\u0207\t\u0207\u0004\u0208\t\u0208\u0004\u0209\t\u0209\u0004",
+ "\u020a\t\u020a\u0004\u020b\t\u020b\u0004\u020c\t\u020c\u0004\u020d\t",
+ "\u020d\u0004\u020e\t\u020e\u0004\u020f\t\u020f\u0004\u0210\t\u0210\u0004",
+ "\u0211\t\u0211\u0004\u0212\t\u0212\u0004\u0213\t\u0213\u0004\u0214\t",
+ "\u0214\u0004\u0215\t\u0215\u0004\u0216\t\u0216\u0004\u0217\t\u0217\u0004",
+ "\u0218\t\u0218\u0004\u0219\t\u0219\u0004\u021a\t\u021a\u0004\u021b\t",
+ "\u021b\u0004\u021c\t\u021c\u0004\u021d\t\u021d\u0004\u021e\t\u021e\u0004",
+ "\u021f\t\u021f\u0004\u0220\t\u0220\u0004\u0221\t\u0221\u0004\u0222\t",
+ "\u0222\u0004\u0223\t\u0223\u0004\u0224\t\u0224\u0004\u0225\t\u0225\u0004",
+ "\u0226\t\u0226\u0004\u0227\t\u0227\u0004\u0228\t\u0228\u0004\u0229\t",
+ "\u0229\u0004\u022a\t\u022a\u0004\u022b\t\u022b\u0004\u022c\t\u022c\u0004",
+ "\u022d\t\u022d\u0004\u022e\t\u022e\u0004\u022f\t\u022f\u0004\u0230\t",
+ "\u0230\u0004\u0231\t\u0231\u0004\u0232\t\u0232\u0004\u0233\t\u0233\u0004",
+ "\u0234\t\u0234\u0004\u0235\t\u0235\u0004\u0236\t\u0236\u0004\u0237\t",
+ "\u0237\u0004\u0238\t\u0238\u0004\u0239\t\u0239\u0004\u023a\t\u023a\u0004",
+ "\u023b\t\u023b\u0004\u023c\t\u023c\u0004\u023d\t\u023d\u0004\u023e\t",
+ "\u023e\u0004\u023f\t\u023f\u0004\u0240\t\u0240\u0004\u0241\t\u0241\u0004",
+ "\u0242\t\u0242\u0004\u0243\t\u0243\u0004\u0244\t\u0244\u0004\u0245\t",
+ "\u0245\u0004\u0246\t\u0246\u0004\u0247\t\u0247\u0004\u0248\t\u0248\u0004",
+ "\u0249\t\u0249\u0004\u024a\t\u024a\u0004\u024b\t\u024b\u0004\u024c\t",
+ "\u024c\u0004\u024d\t\u024d\u0004\u024e\t\u024e\u0004\u024f\t\u024f\u0004",
+ "\u0250\t\u0250\u0004\u0251\t\u0251\u0004\u0252\t\u0252\u0004\u0253\t",
+ "\u0253\u0004\u0254\t\u0254\u0004\u0255\t\u0255\u0004\u0256\t\u0256\u0004",
+ "\u0257\t\u0257\u0004\u0258\t\u0258\u0004\u0259\t\u0259\u0004\u025a\t",
+ "\u025a\u0004\u025b\t\u025b\u0004\u025c\t\u025c\u0004\u025d\t\u025d\u0004",
+ "\u025e\t\u025e\u0004\u025f\t\u025f\u0004\u0260\t\u0260\u0004\u0261\t",
+ "\u0261\u0004\u0262\t\u0262\u0004\u0263\t\u0263\u0004\u0264\t\u0264\u0004",
+ "\u0265\t\u0265\u0004\u0266\t\u0266\u0004\u0267\t\u0267\u0004\u0268\t",
+ "\u0268\u0004\u0269\t\u0269\u0004\u026a\t\u026a\u0004\u026b\t\u026b\u0004",
+ "\u026c\t\u026c\u0004\u026d\t\u026d\u0004\u026e\t\u026e\u0004\u026f\t",
+ "\u026f\u0004\u0270\t\u0270\u0004\u0271\t\u0271\u0004\u0272\t\u0272\u0004",
+ "\u0273\t\u0273\u0004\u0274\t\u0274\u0004\u0275\t\u0275\u0004\u0276\t",
+ "\u0276\u0004\u0277\t\u0277\u0004\u0278\t\u0278\u0004\u0279\t\u0279\u0004",
+ "\u027a\t\u027a\u0004\u027b\t\u027b\u0004\u027c\t\u027c\u0004\u027d\t",
+ "\u027d\u0004\u027e\t\u027e\u0004\u027f\t\u027f\u0004\u0280\t\u0280\u0004",
+ "\u0281\t\u0281\u0004\u0282\t\u0282\u0004\u0283\t\u0283\u0004\u0284\t",
+ "\u0284\u0004\u0285\t\u0285\u0004\u0286\t\u0286\u0004\u0287\t\u0287\u0004",
+ "\u0288\t\u0288\u0004\u0289\t\u0289\u0004\u028a\t\u028a\u0004\u028b\t",
+ "\u028b\u0004\u028c\t\u028c\u0004\u028d\t\u028d\u0004\u028e\t\u028e\u0004",
+ "\u028f\t\u028f\u0004\u0290\t\u0290\u0004\u0291\t\u0291\u0004\u0292\t",
+ "\u0292\u0004\u0293\t\u0293\u0004\u0294\t\u0294\u0004\u0295\t\u0295\u0004",
+ "\u0296\t\u0296\u0004\u0297\t\u0297\u0004\u0298\t\u0298\u0004\u0299\t",
+ "\u0299\u0004\u029a\t\u029a\u0004\u029b\t\u029b\u0004\u029c\t\u029c\u0004",
+ "\u029d\t\u029d\u0004\u029e\t\u029e\u0004\u029f\t\u029f\u0004\u02a0\t",
+ "\u02a0\u0004\u02a1\t\u02a1\u0004\u02a2\t\u02a2\u0004\u02a3\t\u02a3\u0004",
+ "\u02a4\t\u02a4\u0004\u02a5\t\u02a5\u0004\u02a6\t\u02a6\u0004\u02a7\t",
+ "\u02a7\u0004\u02a8\t\u02a8\u0004\u02a9\t\u02a9\u0004\u02aa\t\u02aa\u0004",
+ "\u02ab\t\u02ab\u0004\u02ac\t\u02ac\u0004\u02ad\t\u02ad\u0004\u02ae\t",
+ "\u02ae\u0004\u02af\t\u02af\u0004\u02b0\t\u02b0\u0004\u02b1\t\u02b1\u0004",
+ "\u02b2\t\u02b2\u0004\u02b3\t\u02b3\u0004\u02b4\t\u02b4\u0004\u02b5\t",
+ "\u02b5\u0004\u02b6\t\u02b6\u0004\u02b7\t\u02b7\u0004\u02b8\t\u02b8\u0004",
+ "\u02b9\t\u02b9\u0004\u02ba\t\u02ba\u0004\u02bb\t\u02bb\u0004\u02bc\t",
+ "\u02bc\u0004\u02bd\t\u02bd\u0004\u02be\t\u02be\u0004\u02bf\t\u02bf\u0004",
+ "\u02c0\t\u02c0\u0004\u02c1\t\u02c1\u0004\u02c2\t\u02c2\u0004\u02c3\t",
+ "\u02c3\u0004\u02c4\t\u02c4\u0004\u02c5\t\u02c5\u0004\u02c6\t\u02c6\u0004",
+ "\u02c7\t\u02c7\u0004\u02c8\t\u02c8\u0004\u02c9\t\u02c9\u0004\u02ca\t",
+ "\u02ca\u0004\u02cb\t\u02cb\u0004\u02cc\t\u02cc\u0004\u02cd\t\u02cd\u0004",
+ "\u02ce\t\u02ce\u0004\u02cf\t\u02cf\u0004\u02d0\t\u02d0\u0004\u02d1\t",
+ "\u02d1\u0004\u02d2\t\u02d2\u0004\u02d3\t\u02d3\u0004\u02d4\t\u02d4\u0004",
+ "\u02d5\t\u02d5\u0004\u02d6\t\u02d6\u0004\u02d7\t\u02d7\u0004\u02d8\t",
+ "\u02d8\u0004\u02d9\t\u02d9\u0004\u02da\t\u02da\u0004\u02db\t\u02db\u0004",
+ "\u02dc\t\u02dc\u0004\u02dd\t\u02dd\u0004\u02de\t\u02de\u0004\u02df\t",
+ "\u02df\u0004\u02e0\t\u02e0\u0004\u02e1\t\u02e1\u0004\u02e2\t\u02e2\u0004",
+ "\u02e3\t\u02e3\u0004\u02e4\t\u02e4\u0004\u02e5\t\u02e5\u0004\u02e6\t",
+ "\u02e6\u0004\u02e7\t\u02e7\u0004\u02e8\t\u02e8\u0004\u02e9\t\u02e9\u0004",
+ "\u02ea\t\u02ea\u0004\u02eb\t\u02eb\u0004\u02ec\t\u02ec\u0004\u02ed\t",
+ "\u02ed\u0004\u02ee\t\u02ee\u0004\u02ef\t\u02ef\u0004\u02f0\t\u02f0\u0004",
+ "\u02f1\t\u02f1\u0004\u02f2\t\u02f2\u0004\u02f3\t\u02f3\u0004\u02f4\t",
+ "\u02f4\u0004\u02f5\t\u02f5\u0004\u02f6\t\u02f6\u0004\u02f7\t\u02f7\u0004",
+ "\u02f8\t\u02f8\u0004\u02f9\t\u02f9\u0004\u02fa\t\u02fa\u0004\u02fb\t",
+ "\u02fb\u0004\u02fc\t\u02fc\u0004\u02fd\t\u02fd\u0004\u02fe\t\u02fe\u0004",
+ "\u02ff\t\u02ff\u0004\u0300\t\u0300\u0004\u0301\t\u0301\u0004\u0302\t",
+ "\u0302\u0004\u0303\t\u0303\u0004\u0304\t\u0304\u0004\u0305\t\u0305\u0004",
+ "\u0306\t\u0306\u0004\u0307\t\u0307\u0004\u0308\t\u0308\u0004\u0309\t",
+ "\u0309\u0004\u030a\t\u030a\u0004\u030b\t\u030b\u0004\u030c\t\u030c\u0004",
+ "\u030d\t\u030d\u0004\u030e\t\u030e\u0004\u030f\t\u030f\u0004\u0310\t",
+ "\u0310\u0004\u0311\t\u0311\u0004\u0312\t\u0312\u0004\u0313\t\u0313\u0004",
+ "\u0314\t\u0314\u0004\u0315\t\u0315\u0004\u0316\t\u0316\u0004\u0317\t",
+ "\u0317\u0004\u0318\t\u0318\u0004\u0319\t\u0319\u0004\u031a\t\u031a\u0004",
+ "\u031b\t\u031b\u0004\u031c\t\u031c\u0004\u031d\t\u031d\u0004\u031e\t",
+ "\u031e\u0004\u031f\t\u031f\u0004\u0320\t\u0320\u0004\u0321\t\u0321\u0004",
+ "\u0322\t\u0322\u0004\u0323\t\u0323\u0004\u0324\t\u0324\u0004\u0325\t",
+ "\u0325\u0004\u0326\t\u0326\u0004\u0327\t\u0327\u0004\u0328\t\u0328\u0004",
+ "\u0329\t\u0329\u0004\u032a\t\u032a\u0004\u032b\t\u032b\u0004\u032c\t",
+ "\u032c\u0004\u032d\t\u032d\u0004\u032e\t\u032e\u0004\u032f\t\u032f\u0004",
+ "\u0330\t\u0330\u0004\u0331\t\u0331\u0004\u0332\t\u0332\u0004\u0333\t",
+ "\u0333\u0004\u0334\t\u0334\u0004\u0335\t\u0335\u0004\u0336\t\u0336\u0004",
+ "\u0337\t\u0337\u0004\u0338\t\u0338\u0004\u0339\t\u0339\u0004\u033a\t",
+ "\u033a\u0004\u033b\t\u033b\u0004\u033c\t\u033c\u0004\u033d\t\u033d\u0004",
+ "\u033e\t\u033e\u0004\u033f\t\u033f\u0004\u0340\t\u0340\u0004\u0341\t",
+ "\u0341\u0004\u0342\t\u0342\u0004\u0343\t\u0343\u0004\u0344\t\u0344\u0004",
+ "\u0345\t\u0345\u0004\u0346\t\u0346\u0004\u0347\t\u0347\u0004\u0348\t",
+ "\u0348\u0004\u0349\t\u0349\u0004\u034a\t\u034a\u0004\u034b\t\u034b\u0004",
+ "\u034c\t\u034c\u0004\u034d\t\u034d\u0004\u034e\t\u034e\u0004\u034f\t",
+ "\u034f\u0004\u0350\t\u0350\u0004\u0351\t\u0351\u0004\u0352\t\u0352\u0004",
+ "\u0353\t\u0353\u0004\u0354\t\u0354\u0004\u0355\t\u0355\u0004\u0356\t",
+ "\u0356\u0004\u0357\t\u0357\u0004\u0358\t\u0358\u0004\u0359\t\u0359\u0004",
+ "\u035a\t\u035a\u0004\u035b\t\u035b\u0004\u035c\t\u035c\u0004\u035d\t",
+ "\u035d\u0004\u035e\t\u035e\u0004\u035f\t\u035f\u0004\u0360\t\u0360\u0004",
+ "\u0361\t\u0361\u0004\u0362\t\u0362\u0004\u0363\t\u0363\u0004\u0364\t",
+ "\u0364\u0004\u0365\t\u0365\u0004\u0366\t\u0366\u0004\u0367\t\u0367\u0004",
+ "\u0368\t\u0368\u0004\u0369\t\u0369\u0004\u036a\t\u036a\u0004\u036b\t",
+ "\u036b\u0004\u036c\t\u036c\u0004\u036d\t\u036d\u0004\u036e\t\u036e\u0004",
+ "\u036f\t\u036f\u0004\u0370\t\u0370\u0004\u0371\t\u0371\u0004\u0372\t",
+ "\u0372\u0004\u0373\t\u0373\u0004\u0374\t\u0374\u0004\u0375\t\u0375\u0004",
+ "\u0376\t\u0376\u0004\u0377\t\u0377\u0004\u0378\t\u0378\u0004\u0379\t",
+ "\u0379\u0004\u037a\t\u037a\u0004\u037b\t\u037b\u0004\u037c\t\u037c\u0004",
+ "\u037d\t\u037d\u0004\u037e\t\u037e\u0004\u037f\t\u037f\u0004\u0380\t",
+ "\u0380\u0004\u0381\t\u0381\u0004\u0382\t\u0382\u0004\u0383\t\u0383\u0004",
+ "\u0384\t\u0384\u0004\u0385\t\u0385\u0004\u0386\t\u0386\u0004\u0387\t",
+ "\u0387\u0004\u0388\t\u0388\u0004\u0389\t\u0389\u0004\u038a\t\u038a\u0004",
+ "\u038b\t\u038b\u0004\u038c\t\u038c\u0004\u038d\t\u038d\u0004\u038e\t",
+ "\u038e\u0004\u038f\t\u038f\u0004\u0390\t\u0390\u0004\u0391\t\u0391\u0004",
+ "\u0392\t\u0392\u0004\u0393\t\u0393\u0004\u0394\t\u0394\u0004\u0395\t",
+ "\u0395\u0004\u0396\t\u0396\u0004\u0397\t\u0397\u0004\u0398\t\u0398\u0004",
+ "\u0399\t\u0399\u0004\u039a\t\u039a\u0004\u039b\t\u039b\u0004\u039c\t",
+ "\u039c\u0004\u039d\t\u039d\u0004\u039e\t\u039e\u0004\u039f\t\u039f\u0004",
+ "\u03a0\t\u03a0\u0004\u03a1\t\u03a1\u0004\u03a2\t\u03a2\u0004\u03a3\t",
+ "\u03a3\u0004\u03a4\t\u03a4\u0004\u03a5\t\u03a5\u0004\u03a6\t\u03a6\u0004",
+ "\u03a7\t\u03a7\u0004\u03a8\t\u03a8\u0004\u03a9\t\u03a9\u0004\u03aa\t",
+ "\u03aa\u0004\u03ab\t\u03ab\u0004\u03ac\t\u03ac\u0004\u03ad\t\u03ad\u0004",
+ "\u03ae\t\u03ae\u0004\u03af\t\u03af\u0004\u03b0\t\u03b0\u0004\u03b1\t",
+ "\u03b1\u0004\u03b2\t\u03b2\u0004\u03b3\t\u03b3\u0004\u03b4\t\u03b4\u0004",
+ "\u03b5\t\u03b5\u0004\u03b6\t\u03b6\u0004\u03b7\t\u03b7\u0004\u03b8\t",
+ "\u03b8\u0004\u03b9\t\u03b9\u0004\u03ba\t\u03ba\u0004\u03bb\t\u03bb\u0004",
+ "\u03bc\t\u03bc\u0004\u03bd\t\u03bd\u0004\u03be\t\u03be\u0004\u03bf\t",
+ "\u03bf\u0004\u03c0\t\u03c0\u0004\u03c1\t\u03c1\u0004\u03c2\t\u03c2\u0004",
+ "\u03c3\t\u03c3\u0004\u03c4\t\u03c4\u0004\u03c5\t\u03c5\u0004\u03c6\t",
+ "\u03c6\u0004\u03c7\t\u03c7\u0004\u03c8\t\u03c8\u0004\u03c9\t\u03c9\u0004",
+ "\u03ca\t\u03ca\u0004\u03cb\t\u03cb\u0004\u03cc\t\u03cc\u0004\u03cd\t",
+ "\u03cd\u0004\u03ce\t\u03ce\u0004\u03cf\t\u03cf\u0004\u03d0\t\u03d0\u0004",
+ "\u03d1\t\u03d1\u0004\u03d2\t\u03d2\u0004\u03d3\t\u03d3\u0004\u03d4\t",
+ "\u03d4\u0004\u03d5\t\u03d5\u0004\u03d6\t\u03d6\u0004\u03d7\t\u03d7\u0004",
+ "\u03d8\t\u03d8\u0004\u03d9\t\u03d9\u0004\u03da\t\u03da\u0004\u03db\t",
+ "\u03db\u0004\u03dc\t\u03dc\u0004\u03dd\t\u03dd\u0004\u03de\t\u03de\u0004",
+ "\u03df\t\u03df\u0004\u03e0\t\u03e0\u0004\u03e1\t\u03e1\u0004\u03e2\t",
+ "\u03e2\u0004\u03e3\t\u03e3\u0004\u03e4\t\u03e4\u0004\u03e5\t\u03e5\u0004",
+ "\u03e6\t\u03e6\u0004\u03e7\t\u03e7\u0004\u03e8\t\u03e8\u0004\u03e9\t",
+ "\u03e9\u0004\u03ea\t\u03ea\u0004\u03eb\t\u03eb\u0004\u03ec\t\u03ec\u0004",
+ "\u03ed\t\u03ed\u0004\u03ee\t\u03ee\u0004\u03ef\t\u03ef\u0004\u03f0\t",
+ "\u03f0\u0004\u03f1\t\u03f1\u0004\u03f2\t\u03f2\u0004\u03f3\t\u03f3\u0004",
+ "\u03f4\t\u03f4\u0004\u03f5\t\u03f5\u0004\u03f6\t\u03f6\u0004\u03f7\t",
+ "\u03f7\u0004\u03f8\t\u03f8\u0004\u03f9\t\u03f9\u0004\u03fa\t\u03fa\u0004",
+ "\u03fb\t\u03fb\u0004\u03fc\t\u03fc\u0004\u03fd\t\u03fd\u0004\u03fe\t",
+ "\u03fe\u0004\u03ff\t\u03ff\u0004\u0400\t\u0400\u0004\u0401\t\u0401\u0004",
+ "\u0402\t\u0402\u0004\u0403\t\u0403\u0004\u0404\t\u0404\u0004\u0405\t",
+ "\u0405\u0004\u0406\t\u0406\u0004\u0407\t\u0407\u0004\u0408\t\u0408\u0004",
+ "\u0409\t\u0409\u0004\u040a\t\u040a\u0004\u040b\t\u040b\u0004\u040c\t",
+ "\u040c\u0004\u040d\t\u040d\u0004\u040e\t\u040e\u0004\u040f\t\u040f\u0004",
+ "\u0410\t\u0410\u0004\u0411\t\u0411\u0004\u0412\t\u0412\u0004\u0413\t",
+ "\u0413\u0004\u0414\t\u0414\u0004\u0415\t\u0415\u0004\u0416\t\u0416\u0004",
+ "\u0417\t\u0417\u0004\u0418\t\u0418\u0004\u0419\t\u0419\u0004\u041a\t",
+ "\u041a\u0004\u041b\t\u041b\u0004\u041c\t\u041c\u0004\u041d\t\u041d\u0004",
+ "\u041e\t\u041e\u0004\u041f\t\u041f\u0004\u0420\t\u0420\u0004\u0421\t",
+ "\u0421\u0004\u0422\t\u0422\u0004\u0423\t\u0423\u0003\u0002\u0006\u0002",
+ "\u0849\n\u0002\r\u0002\u000e\u0002\u084a\u0003\u0002\u0003\u0002\u0003",
+ "\u0003\u0003\u0003\u0003\u0003\u0003\u0003\u0003\u0003\u0006\u0003\u0854",
+ "\n\u0003\r\u0003\u000e\u0003\u0855\u0003\u0003\u0003\u0003\u0003\u0003",
+ "\u0003\u0003\u0003\u0003\u0003\u0004\u0003\u0004\u0003\u0004\u0003\u0004",
+ "\u0007\u0004\u0861\n\u0004\f\u0004\u000e\u0004\u0864\u000b\u0004\u0003",
+ "\u0004\u0003\u0004\u0003\u0004\u0003\u0004\u0003\u0004\u0003\u0005\u0003",
+ "\u0005\u0003\u0005\u0003\u0005\u0005\u0005\u086f\n\u0005\u0003\u0005",
+ "\u0007\u0005\u0872\n\u0005\f\u0005\u000e\u0005\u0875\u000b\u0005\u0003",
+ "\u0005\u0005\u0005\u0878\n\u0005\u0003\u0005\u0003\u0005\u0005\u0005",
+ "\u087c\n\u0005\u0003\u0005\u0003\u0005\u0003\u0005\u0003\u0005\u0005",
+ "\u0005\u0882\n\u0005\u0003\u0005\u0003\u0005\u0005\u0005\u0886\n\u0005",
+ "\u0005\u0005\u0888\n\u0005\u0003\u0005\u0003\u0005\u0003\u0006\u0003",
+ "\u0006\u0003\u0006\u0003\u0006\u0003\u0007\u0003\u0007\u0003\u0007\u0003",
+ "\u0007\u0003\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003\t\u0003",
+ "\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\n\u0003\n\u0003\n\u0003",
+ "\n\u0003\n\u0003\n\u0003\n\u0003\n\u0003\u000b\u0003\u000b\u0003\u000b",
+ "\u0003\u000b\u0003\f\u0003\f\u0003\f\u0003\r\u0003\r\u0003\r\u0003\r",
+ "\u0003\u000e\u0003\u000e\u0003\u000e\u0003\u000e\u0003\u000e\u0003\u000e",
+ "\u0003\u000e\u0003\u000f\u0003\u000f\u0003\u000f\u0003\u000f\u0003\u000f",
+ "\u0003\u000f\u0003\u000f\u0003\u000f\u0003\u0010\u0003\u0010\u0003\u0010",
+ "\u0003\u0010\u0003\u0010\u0003\u0011\u0003\u0011\u0003\u0011\u0003\u0012",
+ "\u0003\u0012\u0003\u0012\u0003\u0012\u0003\u0012\u0003\u0013\u0003\u0013",
+ "\u0003\u0013\u0003\u0013\u0003\u0013\u0003\u0013\u0003\u0013\u0003\u0013",
+ "\u0003\u0014\u0003\u0014\u0003\u0014\u0003\u0014\u0003\u0014\u0003\u0015",
+ "\u0003\u0015\u0003\u0015\u0003\u0015\u0003\u0015\u0003\u0016\u0003\u0016",
+ "\u0003\u0016\u0003\u0016\u0003\u0016\u0003\u0016\u0003\u0016\u0003\u0017",
+ "\u0003\u0017\u0003\u0017\u0003\u0017\u0003\u0017\u0003\u0017\u0003\u0017",
+ "\u0003\u0017\u0003\u0017\u0003\u0017\u0003\u0018\u0003\u0018\u0003\u0018",
+ "\u0003\u0018\u0003\u0018\u0003\u0018\u0003\u0019\u0003\u0019\u0003\u0019",
+ "\u0003\u0019\u0003\u0019\u0003\u0019\u0003\u0019\u0003\u0019\u0003\u001a",
+ "\u0003\u001a\u0003\u001a\u0003\u001a\u0003\u001a\u0003\u001a\u0003\u001a",
+ "\u0003\u001b\u0003\u001b\u0003\u001b\u0003\u001b\u0003\u001b\u0003\u001b",
+ "\u0003\u001b\u0003\u001b\u0003\u001b\u0003\u001b\u0003\u001c\u0003\u001c",
+ "\u0003\u001c\u0003\u001c\u0003\u001c\u0003\u001c\u0003\u001c\u0003\u001c",
+ "\u0003\u001c\u0003\u001c\u0003\u001c\u0003\u001d\u0003\u001d\u0003\u001d",
+ "\u0003\u001d\u0003\u001d\u0003\u001d\u0003\u001d\u0003\u001d\u0003\u001d",
+ "\u0003\u001e\u0003\u001e\u0003\u001e\u0003\u001e\u0003\u001e\u0003\u001e",
+ "\u0003\u001e\u0003\u001e\u0003\u001f\u0003\u001f\u0003\u001f\u0003\u001f",
+ "\u0003\u001f\u0003\u001f\u0003\u001f\u0003 \u0003 \u0003 \u0003 \u0003",
+ " \u0003 \u0003!\u0003!\u0003!\u0003!\u0003!\u0003!\u0003!\u0003!\u0003",
+ "\"\u0003\"\u0003\"\u0003\"\u0003\"\u0003\"\u0003\"\u0003\"\u0003\"\u0003",
+ "\"\u0003\"\u0003\"\u0003\"\u0003#\u0003#\u0003#\u0003#\u0003#\u0003",
+ "#\u0003#\u0003$\u0003$\u0003$\u0003$\u0003$\u0003$\u0003$\u0003$\u0003",
+ "$\u0003%\u0003%\u0003%\u0003%\u0003%\u0003%\u0003%\u0003%\u0003%\u0003",
+ "%\u0003&\u0003&\u0003&\u0003&\u0003&\u0003&\u0003&\u0003&\u0003\'\u0003",
+ "\'\u0003\'\u0003\'\u0003\'\u0003\'\u0003\'\u0003\'\u0003(\u0003(\u0003",
+ "(\u0003(\u0003(\u0003(\u0003(\u0003(\u0003)\u0003)\u0003)\u0003)\u0003",
+ ")\u0003)\u0003)\u0003*\u0003*\u0003*\u0003*\u0003*\u0003+\u0003+\u0003",
+ "+\u0003+\u0003+\u0003+\u0003+\u0003+\u0003+\u0003,\u0003,\u0003,\u0003",
+ ",\u0003,\u0003,\u0003,\u0003,\u0003,\u0003,\u0003,\u0003,\u0003,\u0003",
+ ",\u0003-\u0003-\u0003-\u0003-\u0003-\u0003-\u0003-\u0003-\u0003-\u0003",
+ "-\u0003-\u0003-\u0003.\u0003.\u0003.\u0003.\u0003.\u0003.\u0003.\u0003",
+ ".\u0003.\u0003/\u0003/\u0003/\u0003/\u0003/\u0003/\u0003/\u0003/\u0003",
+ "/\u0003/\u0003/\u0003/\u00030\u00030\u00030\u00030\u00030\u00031\u0003",
+ "1\u00031\u00031\u00031\u00032\u00032\u00032\u00032\u00032\u00033\u0003",
+ "3\u00033\u00033\u00033\u00033\u00033\u00034\u00034\u00034\u00034\u0003",
+ "4\u00034\u00034\u00034\u00034\u00035\u00035\u00035\u00035\u00035\u0003",
+ "5\u00035\u00035\u00036\u00036\u00036\u00036\u00036\u00036\u00036\u0003",
+ "7\u00037\u00037\u00037\u00037\u00038\u00038\u00038\u00038\u00038\u0003",
+ "8\u00038\u00038\u00039\u00039\u00039\u00039\u00039\u00039\u0003:\u0003",
+ ":\u0003:\u0003:\u0003:\u0003:\u0003;\u0003;\u0003;\u0003;\u0003<\u0003",
+ "<\u0003<\u0003<\u0003<\u0003<\u0003=\u0003=\u0003=\u0003=\u0003=\u0003",
+ "=\u0003=\u0003=\u0003>\u0003>\u0003>\u0003>\u0003>\u0003?\u0003?\u0003",
+ "?\u0003?\u0003?\u0003?\u0003?\u0003?\u0003?\u0003@\u0003@\u0003@\u0003",
+ "@\u0003@\u0003@\u0003@\u0003@\u0003@\u0003@\u0003A\u0003A\u0003A\u0003",
+ "A\u0003B\u0003B\u0003B\u0003B\u0003B\u0003B\u0003C\u0003C\u0003C\u0003",
+ "C\u0003C\u0003C\u0003D\u0003D\u0003D\u0003D\u0003D\u0003D\u0003D\u0003",
+ "E\u0003E\u0003E\u0003E\u0003E\u0003E\u0003E\u0003E\u0003E\u0003E\u0003",
+ "E\u0003E\u0003E\u0003E\u0003F\u0003F\u0003F\u0003G\u0003G\u0003G\u0003",
+ "G\u0003G\u0003G\u0003G\u0003H\u0003H\u0003H\u0003I\u0003I\u0003I\u0003",
+ "I\u0003I\u0003I\u0003J\u0003J\u0003J\u0003J\u0003J\u0003J\u0003J\u0003",
+ "K\u0003K\u0003K\u0003K\u0003K\u0003K\u0003L\u0003L\u0003L\u0003L\u0003",
+ "L\u0003L\u0003M\u0003M\u0003M\u0003M\u0003M\u0003M\u0003M\u0003N\u0003",
+ "N\u0003N\u0003N\u0003N\u0003N\u0003N\u0003N\u0003N\u0003O\u0003O\u0003",
+ "O\u0003O\u0003O\u0003P\u0003P\u0003P\u0003Q\u0003Q\u0003Q\u0003Q\u0003",
+ "Q\u0003Q\u0003Q\u0003Q\u0003R\u0003R\u0003R\u0003R\u0003R\u0003S\u0003",
+ "S\u0003S\u0003S\u0003T\u0003T\u0003T\u0003T\u0003T\u0003U\u0003U\u0003",
+ "U\u0003U\u0003U\u0003V\u0003V\u0003V\u0003V\u0003V\u0003V\u0003V\u0003",
+ "V\u0003W\u0003W\u0003W\u0003W\u0003W\u0003W\u0003X\u0003X\u0003X\u0003",
+ "X\u0003X\u0003Y\u0003Y\u0003Y\u0003Y\u0003Y\u0003Z\u0003Z\u0003Z\u0003",
+ "Z\u0003Z\u0003Z\u0003[\u0003[\u0003[\u0003[\u0003[\u0003[\u0003[\u0003",
+ "\\\u0003\\\u0003\\\u0003\\\u0003\\\u0003\\\u0003]\u0003]\u0003]\u0003",
+ "]\u0003]\u0003^\u0003^\u0003^\u0003^\u0003^\u0003_\u0003_\u0003_\u0003",
+ "_\u0003_\u0003`\u0003`\u0003`\u0003`\u0003`\u0003`\u0003`\u0003`\u0003",
+ "`\u0003`\u0003`\u0003`\u0003`\u0003a\u0003a\u0003a\u0003a\u0003a\u0003",
+ "a\u0003a\u0003a\u0003a\u0003a\u0003a\u0003a\u0003b\u0003b\u0003b\u0003",
+ "b\u0003b\u0003b\u0003b\u0003b\u0003b\u0003b\u0003b\u0003b\u0003b\u0003",
+ "b\u0003b\u0003b\u0003b\u0003b\u0003b\u0003b\u0003b\u0003b\u0003b\u0003",
+ "b\u0003b\u0003b\u0003b\u0003b\u0003b\u0003b\u0003c\u0003c\u0003c\u0003",
+ "c\u0003c\u0003c\u0003d\u0003d\u0003d\u0003d\u0003d\u0003d\u0003d\u0003",
+ "d\u0003d\u0003e\u0003e\u0003e\u0003e\u0003e\u0003e\u0003e\u0003e\u0003",
+ "e\u0003f\u0003f\u0003f\u0003f\u0003f\u0003f\u0003f\u0003f\u0003g\u0003",
+ "g\u0003g\u0003g\u0003h\u0003h\u0003h\u0003h\u0003h\u0003h\u0003h\u0003",
+ "h\u0003h\u0003h\u0003h\u0003h\u0003h\u0003h\u0003h\u0003h\u0003h\u0003",
+ "h\u0003h\u0003i\u0003i\u0003i\u0003i\u0003i\u0003j\u0003j\u0003j\u0003",
+ "j\u0003j\u0003j\u0003j\u0003k\u0003k\u0003k\u0003l\u0003l\u0003l\u0003",
+ "l\u0003l\u0003l\u0003l\u0003l\u0003l\u0003m\u0003m\u0003m\u0003m\u0003",
+ "m\u0003m\u0003m\u0003n\u0003n\u0003n\u0003n\u0003n\u0003n\u0003n\u0003",
+ "n\u0003n\u0003n\u0003n\u0003o\u0003o\u0003o\u0003p\u0003p\u0003p\u0003",
+ "p\u0003p\u0003p\u0003q\u0003q\u0003q\u0003q\u0003r\u0003r\u0003r\u0003",
+ "r\u0003r\u0003r\u0003s\u0003s\u0003s\u0003s\u0003s\u0003s\u0003s\u0003",
+ "s\u0003t\u0003t\u0003t\u0003t\u0003t\u0003t\u0003t\u0003t\u0003t\u0003",
+ "t\u0003u\u0003u\u0003u\u0003u\u0003u\u0003u\u0003u\u0003u\u0003v\u0003",
+ "v\u0003v\u0003v\u0003v\u0003v\u0003v\u0003v\u0003v\u0003v\u0003w\u0003",
+ "w\u0003w\u0003w\u0003w\u0003w\u0003x\u0003x\u0003x\u0003x\u0003x\u0003",
+ "x\u0003y\u0003y\u0003y\u0003y\u0003y\u0003z\u0003z\u0003z\u0003z\u0003",
+ "z\u0003z\u0003{\u0003{\u0003{\u0003{\u0003{\u0003{\u0003{\u0003{\u0003",
+ "{\u0003{\u0003{\u0003|\u0003|\u0003|\u0003|\u0003|\u0003|\u0003|\u0003",
+ "}\u0003}\u0003}\u0003}\u0003}\u0003}\u0003}\u0003}\u0003~\u0003~\u0003",
+ "~\u0003~\u0003~\u0003~\u0003~\u0003\u007f\u0003\u007f\u0003\u007f\u0003",
+ "\u007f\u0003\u007f\u0003\u007f\u0003\u007f\u0003\u0080\u0003\u0080\u0003",
+ "\u0080\u0003\u0080\u0003\u0080\u0003\u0080\u0003\u0080\u0003\u0080\u0003",
+ "\u0081\u0003\u0081\u0003\u0081\u0003\u0081\u0003\u0081\u0003\u0081\u0003",
+ "\u0081\u0003\u0081\u0003\u0082\u0003\u0082\u0003\u0082\u0003\u0082\u0003",
+ "\u0082\u0003\u0082\u0003\u0082\u0003\u0082\u0003\u0082\u0003\u0083\u0003",
+ "\u0083\u0003\u0083\u0003\u0083\u0003\u0083\u0003\u0083\u0003\u0083\u0003",
+ "\u0083\u0003\u0083\u0003\u0084\u0003\u0084\u0003\u0084\u0003\u0084\u0003",
+ "\u0084\u0003\u0084\u0003\u0084\u0003\u0085\u0003\u0085\u0003\u0085\u0003",
+ "\u0085\u0003\u0085\u0003\u0085\u0003\u0085\u0003\u0086\u0003\u0086\u0003",
+ "\u0086\u0003\u0086\u0003\u0086\u0003\u0086\u0003\u0087\u0003\u0087\u0003",
+ "\u0087\u0003\u0087\u0003\u0087\u0003\u0087\u0003\u0088\u0003\u0088\u0003",
+ "\u0088\u0003\u0088\u0003\u0088\u0003\u0088\u0003\u0088\u0003\u0089\u0003",
+ "\u0089\u0003\u0089\u0003\u0089\u0003\u0089\u0003\u0089\u0003\u0089\u0003",
+ "\u0089\u0003\u008a\u0003\u008a\u0003\u008a\u0003\u008a\u0003\u008a\u0003",
+ "\u008a\u0003\u008a\u0003\u008b\u0003\u008b\u0003\u008b\u0003\u008b\u0003",
+ "\u008c\u0003\u008c\u0003\u008c\u0003\u008c\u0003\u008c\u0003\u008c\u0003",
+ "\u008c\u0003\u008c\u0003\u008c\u0003\u008c\u0003\u008d\u0003\u008d\u0003",
+ "\u008d\u0003\u008d\u0003\u008d\u0003\u008e\u0003\u008e\u0003\u008e\u0003",
+ "\u008e\u0003\u008e\u0003\u008e\u0003\u008e\u0003\u008f\u0003\u008f\u0003",
+ "\u008f\u0003\u008f\u0003\u008f\u0003\u008f\u0003\u008f\u0003\u008f\u0003",
+ "\u0090\u0003\u0090\u0003\u0090\u0003\u0090\u0003\u0091\u0003\u0091\u0003",
+ "\u0091\u0003\u0091\u0003\u0091\u0003\u0091\u0003\u0091\u0003\u0091\u0003",
+ "\u0091\u0003\u0091\u0003\u0091\u0003\u0091\u0003\u0091\u0003\u0092\u0003",
+ "\u0092\u0003\u0092\u0003\u0092\u0003\u0092\u0003\u0092\u0003\u0092\u0003",
+ "\u0092\u0003\u0092\u0003\u0093\u0003\u0093\u0003\u0093\u0003\u0093\u0003",
+ "\u0093\u0003\u0093\u0003\u0093\u0003\u0093\u0003\u0093\u0003\u0093\u0003",
+ "\u0093\u0003\u0094\u0003\u0094\u0003\u0094\u0003\u0094\u0003\u0094\u0003",
+ "\u0094\u0003\u0094\u0003\u0094\u0003\u0094\u0003\u0094\u0003\u0094\u0003",
+ "\u0094\u0003\u0094\u0003\u0094\u0003\u0094\u0003\u0095\u0003\u0095\u0003",
+ "\u0095\u0003\u0095\u0003\u0095\u0003\u0095\u0003\u0095\u0003\u0095\u0003",
+ "\u0095\u0003\u0095\u0003\u0095\u0003\u0095\u0003\u0095\u0003\u0095\u0003",
+ "\u0095\u0003\u0095\u0003\u0095\u0003\u0095\u0003\u0095\u0003\u0095\u0003",
+ "\u0096\u0003\u0096\u0003\u0096\u0003\u0096\u0003\u0096\u0003\u0096\u0003",
+ "\u0096\u0003\u0096\u0003\u0096\u0003\u0096\u0003\u0096\u0003\u0096\u0003",
+ "\u0096\u0003\u0096\u0003\u0096\u0003\u0096\u0003\u0096\u0003\u0097\u0003",
+ "\u0097\u0003\u0097\u0003\u0097\u0003\u0098\u0003\u0098\u0003\u0098\u0003",
+ "\u0098\u0003\u0098\u0003\u0098\u0003\u0098\u0003\u0098\u0003\u0099\u0003",
+ "\u0099\u0003\u0099\u0003\u0099\u0003\u0099\u0003\u0099\u0003\u0099\u0003",
+ "\u0099\u0003\u0099\u0003\u009a\u0003\u009a\u0003\u009a\u0003\u009a\u0003",
+ "\u009a\u0003\u009a\u0003\u009a\u0003\u009a\u0003\u009a\u0003\u009a\u0003",
+ "\u009a\u0003\u009a\u0003\u009a\u0003\u009a\u0003\u009b\u0003\u009b\u0003",
+ "\u009b\u0003\u009b\u0003\u009b\u0003\u009b\u0003\u009c\u0003\u009c\u0003",
+ "\u009c\u0003\u009c\u0003\u009c\u0003\u009c\u0003\u009c\u0003\u009c\u0003",
+ "\u009c\u0003\u009c\u0003\u009c\u0003\u009d\u0003\u009d\u0003\u009d\u0003",
+ "\u009d\u0003\u009d\u0003\u009e\u0003\u009e\u0003\u009e\u0003\u009f\u0003",
+ "\u009f\u0003\u009f\u0003\u009f\u0003\u009f\u0003\u009f\u0003\u009f\u0003",
+ "\u009f\u0003\u009f\u0003\u00a0\u0003\u00a0\u0003\u00a0\u0003\u00a0\u0003",
+ "\u00a0\u0003\u00a0\u0003\u00a0\u0003\u00a0\u0003\u00a1\u0003\u00a1\u0003",
+ "\u00a1\u0003\u00a1\u0003\u00a1\u0003\u00a2\u0003\u00a2\u0003\u00a2\u0003",
+ "\u00a2\u0003\u00a2\u0003\u00a3\u0003\u00a3\u0003\u00a3\u0003\u00a3\u0003",
+ "\u00a3\u0003\u00a3\u0003\u00a4\u0003\u00a4\u0003\u00a4\u0003\u00a4\u0003",
+ "\u00a4\u0003\u00a4\u0003\u00a4\u0003\u00a5\u0003\u00a5\u0003\u00a5\u0003",
+ "\u00a5\u0003\u00a5\u0003\u00a5\u0003\u00a5\u0003\u00a6\u0003\u00a6\u0003",
+ "\u00a6\u0003\u00a6\u0003\u00a6\u0003\u00a6\u0003\u00a6\u0003\u00a6\u0003",
+ "\u00a6\u0003\u00a7\u0003\u00a7\u0003\u00a7\u0003\u00a7\u0003\u00a7\u0003",
+ "\u00a7\u0003\u00a7\u0003\u00a8\u0003\u00a8\u0003\u00a8\u0003\u00a8\u0003",
+ "\u00a8\u0003\u00a8\u0003\u00a9\u0003\u00a9\u0003\u00a9\u0003\u00a9\u0003",
+ "\u00aa\u0003\u00aa\u0003\u00aa\u0003\u00aa\u0003\u00aa\u0003\u00aa\u0003",
+ "\u00ab\u0003\u00ab\u0003\u00ab\u0003\u00ab\u0003\u00ab\u0003\u00ab\u0003",
+ "\u00ab\u0003\u00ac\u0003\u00ac\u0003\u00ac\u0003\u00ac\u0003\u00ac\u0003",
+ "\u00ad\u0003\u00ad\u0003\u00ad\u0003\u00ad\u0003\u00ad\u0003\u00ad\u0003",
+ "\u00ae\u0003\u00ae\u0003\u00ae\u0003\u00ae\u0003\u00ae\u0003\u00ae\u0003",
+ "\u00af\u0003\u00af\u0003\u00af\u0003\u00af\u0003\u00af\u0003\u00b0\u0003",
+ "\u00b0\u0003\u00b0\u0003\u00b0\u0003\u00b0\u0003\u00b0\u0003\u00b1\u0003",
+ "\u00b1\u0003\u00b1\u0003\u00b1\u0003\u00b2\u0003\u00b2\u0003\u00b2\u0003",
+ "\u00b2\u0003\u00b2\u0003\u00b2\u0003\u00b2\u0003\u00b2\u0003\u00b2\u0003",
+ "\u00b3\u0003\u00b3\u0003\u00b3\u0003\u00b3\u0003\u00b3\u0003\u00b3\u0003",
+ "\u00b3\u0003\u00b3\u0003\u00b4\u0003\u00b4\u0003\u00b4\u0003\u00b4\u0003",
+ "\u00b4\u0003\u00b4\u0003\u00b4\u0003\u00b4\u0003\u00b4\u0003\u00b5\u0003",
+ "\u00b5\u0003\u00b5\u0003\u00b5\u0003\u00b5\u0003\u00b5\u0003\u00b5\u0003",
+ "\u00b5\u0003\u00b5\u0003\u00b5\u0003\u00b6\u0003\u00b6\u0003\u00b6\u0003",
+ "\u00b6\u0003\u00b6\u0003\u00b6\u0003\u00b6\u0003\u00b6\u0003\u00b6\u0003",
+ "\u00b6\u0003\u00b7\u0003\u00b7\u0003\u00b7\u0003\u00b7\u0003\u00b8\u0003",
+ "\u00b8\u0003\u00b8\u0003\u00b8\u0003\u00b8\u0003\u00b9\u0003\u00b9\u0003",
+ "\u00b9\u0003\u00b9\u0003\u00b9\u0003\u00ba\u0003\u00ba\u0003\u00ba\u0003",
+ "\u00ba\u0003\u00ba\u0003\u00bb\u0003\u00bb\u0003\u00bb\u0003\u00bb\u0003",
+ "\u00bb\u0003\u00bc\u0003\u00bc\u0003\u00bc\u0003\u00bc\u0003\u00bc\u0003",
+ "\u00bd\u0003\u00bd\u0003\u00bd\u0003\u00bd\u0003\u00bd\u0003\u00bd\u0003",
+ "\u00bd\u0003\u00bd\u0003\u00be\u0003\u00be\u0003\u00be\u0003\u00be\u0003",
+ "\u00be\u0003\u00be\u0003\u00be\u0003\u00bf\u0003\u00bf\u0003\u00bf\u0003",
+ "\u00bf\u0003\u00bf\u0003\u00c0\u0003\u00c0\u0003\u00c0\u0003\u00c0\u0003",
+ "\u00c0\u0003\u00c0\u0003\u00c0\u0003\u00c1\u0003\u00c1\u0003\u00c1\u0003",
+ "\u00c1\u0003\u00c1\u0003\u00c1\u0003\u00c1\u0003\u00c1\u0003\u00c1\u0003",
+ "\u00c1\u0003\u00c2\u0003\u00c2\u0003\u00c2\u0003\u00c2\u0003\u00c2\u0003",
+ "\u00c2\u0003\u00c3\u0003\u00c3\u0003\u00c3\u0003\u00c3\u0003\u00c3\u0003",
+ "\u00c3\u0003\u00c3\u0003\u00c4\u0003\u00c4\u0003\u00c4\u0003\u00c4\u0003",
+ "\u00c4\u0003\u00c4\u0003\u00c4\u0003\u00c5\u0003\u00c5\u0003\u00c5\u0003",
+ "\u00c5\u0003\u00c5\u0003\u00c5\u0003\u00c5\u0003\u00c5\u0003\u00c6\u0003",
+ "\u00c6\u0003\u00c6\u0003\u00c6\u0003\u00c7\u0003\u00c7\u0003\u00c7\u0003",
+ "\u00c7\u0003\u00c7\u0003\u00c7\u0003\u00c7\u0003\u00c7\u0003\u00c8\u0003",
+ "\u00c8\u0003\u00c8\u0003\u00c8\u0003\u00c8\u0003\u00c9\u0003\u00c9\u0003",
+ "\u00c9\u0003\u00c9\u0003\u00c9\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0003",
+ "\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0003",
+ "\u00ca\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0003",
+ "\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cc\u0003\u00cc\u0003",
+ "\u00cc\u0003\u00cc\u0003\u00cc\u0003\u00cd\u0003\u00cd\u0003\u00cd\u0003",
+ "\u00cd\u0003\u00cd\u0003\u00ce\u0003\u00ce\u0003\u00ce\u0003\u00ce\u0003",
+ "\u00ce\u0003\u00ce\u0003\u00ce\u0003\u00ce\u0003\u00cf\u0003\u00cf\u0003",
+ "\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003",
+ "\u00cf\u0003\u00d0\u0003\u00d0\u0003\u00d0\u0003\u00d0\u0003\u00d0\u0003",
+ "\u00d0\u0003\u00d0\u0003\u00d0\u0003\u00d0\u0003\u00d1\u0003\u00d1\u0003",
+ "\u00d1\u0003\u00d1\u0003\u00d1\u0003\u00d1\u0003\u00d1\u0003\u00d2\u0003",
+ "\u00d2\u0003\u00d2\u0003\u00d2\u0003\u00d2\u0003\u00d2\u0003\u00d2\u0003",
+ "\u00d2\u0003\u00d2\u0003\u00d2\u0003\u00d3\u0003\u00d3\u0003\u00d3\u0003",
+ "\u00d3\u0003\u00d3\u0003\u00d3\u0003\u00d3\u0003\u00d3\u0003\u00d3\u0003",
+ "\u00d4\u0003\u00d4\u0003\u00d4\u0003\u00d4\u0003\u00d4\u0003\u00d5\u0003",
+ "\u00d5\u0003\u00d5\u0003\u00d5\u0003\u00d5\u0003\u00d5\u0003\u00d5\u0003",
+ "\u00d5\u0003\u00d5\u0003\u00d5\u0003\u00d5\u0003\u00d6\u0003\u00d6\u0003",
+ "\u00d6\u0003\u00d6\u0003\u00d6\u0003\u00d7\u0003\u00d7\u0003\u00d7\u0003",
+ "\u00d7\u0003\u00d7\u0003\u00d7\u0003\u00d7\u0003\u00d7\u0003\u00d7\u0003",
+ "\u00d8\u0003\u00d8\u0003\u00d8\u0003\u00d8\u0003\u00d8\u0003\u00d8\u0003",
+ "\u00d8\u0003\u00d8\u0003\u00d8\u0003\u00d9\u0003\u00d9\u0003\u00d9\u0003",
+ "\u00d9\u0003\u00d9\u0003\u00da\u0003\u00da\u0003\u00da\u0003\u00da\u0003",
+ "\u00da\u0003\u00da\u0003\u00da\u0003\u00da\u0003\u00da\u0003\u00da\u0003",
+ "\u00da\u0003\u00db\u0003\u00db\u0003\u00db\u0003\u00db\u0003\u00db\u0003",
+ "\u00db\u0003\u00db\u0003\u00db\u0003\u00db\u0003\u00dc\u0003\u00dc\u0003",
+ "\u00dc\u0003\u00dc\u0003\u00dc\u0003\u00dd\u0003\u00dd\u0003\u00dd\u0003",
+ "\u00dd\u0003\u00dd\u0003\u00dd\u0003\u00dd\u0003\u00dd\u0003\u00de\u0003",
+ "\u00de\u0003\u00de\u0003\u00de\u0003\u00de\u0003\u00de\u0003\u00de\u0003",
+ "\u00df\u0003\u00df\u0003\u00df\u0003\u00df\u0003\u00df\u0003\u00df\u0003",
+ "\u00df\u0003\u00df\u0003\u00df\u0003\u00df\u0003\u00df\u0003\u00e0\u0003",
+ "\u00e0\u0003\u00e0\u0003\u00e0\u0003\u00e0\u0003\u00e0\u0003\u00e0\u0003",
+ "\u00e0\u0003\u00e0\u0003\u00e1\u0003\u00e1\u0003\u00e1\u0003\u00e1\u0003",
+ "\u00e1\u0003\u00e1\u0003\u00e1\u0003\u00e1\u0003\u00e1\u0003\u00e1\u0003",
+ "\u00e1\u0003\u00e2\u0003\u00e2\u0003\u00e2\u0003\u00e2\u0003\u00e2\u0003",
+ "\u00e2\u0003\u00e2\u0003\u00e2\u0003\u00e2\u0003\u00e2\u0003\u00e2\u0003",
+ "\u00e3\u0003\u00e3\u0003\u00e3\u0003\u00e3\u0003\u00e3\u0003\u00e3\u0003",
+ "\u00e3\u0003\u00e3\u0003\u00e3\u0003\u00e3\u0003\u00e3\u0003\u00e3\u0003",
+ "\u00e4\u0003\u00e4\u0003\u00e4\u0003\u00e4\u0003\u00e4\u0003\u00e4\u0003",
+ "\u00e4\u0003\u00e4\u0003\u00e4\u0003\u00e4\u0003\u00e4\u0003\u00e4\u0003",
+ "\u00e5\u0003\u00e5\u0003\u00e5\u0003\u00e5\u0003\u00e5\u0003\u00e5\u0003",
+ "\u00e5\u0003\u00e5\u0003\u00e5\u0003\u00e5\u0003\u00e5\u0003\u00e5\u0003",
+ "\u00e5\u0003\u00e5\u0003\u00e6\u0003\u00e6\u0003\u00e6\u0003\u00e6\u0003",
+ "\u00e6\u0003\u00e6\u0003\u00e6\u0003\u00e6\u0003\u00e6\u0003\u00e6\u0003",
+ "\u00e6\u0003\u00e6\u0003\u00e6\u0003\u00e6\u0003\u00e6\u0003\u00e6\u0003",
+ "\u00e6\u0003\u00e6\u0003\u00e6\u0003\u00e7\u0003\u00e7\u0003\u00e7\u0003",
+ "\u00e7\u0003\u00e7\u0003\u00e7\u0003\u00e7\u0003\u00e7\u0003\u00e7\u0003",
+ "\u00e7\u0003\u00e7\u0003\u00e7\u0003\u00e7\u0003\u00e7\u0003\u00e7\u0003",
+ "\u00e7\u0003\u00e7\u0003\u00e7\u0003\u00e7\u0003\u00e8\u0003\u00e8\u0003",
+ "\u00e8\u0003\u00e8\u0003\u00e8\u0003\u00e8\u0003\u00e8\u0003\u00e8\u0003",
+ "\u00e8\u0003\u00e8\u0003\u00e8\u0003\u00e8\u0003\u00e8\u0003\u00e8\u0003",
+ "\u00e8\u0003\u00e8\u0003\u00e8\u0003\u00e9\u0003\u00e9\u0003\u00e9\u0003",
+ "\u00e9\u0003\u00e9\u0003\u00e9\u0003\u00e9\u0003\u00e9\u0003\u00e9\u0003",
+ "\u00e9\u0003\u00e9\u0003\u00e9\u0003\u00e9\u0003\u00e9\u0003\u00e9\u0003",
+ "\u00e9\u0003\u00ea\u0003\u00ea\u0003\u00ea\u0003\u00ea\u0003\u00ea\u0003",
+ "\u00ea\u0003\u00ea\u0003\u00ea\u0003\u00ea\u0003\u00ea\u0003\u00ea\u0003",
+ "\u00eb\u0003\u00eb\u0003\u00eb\u0003\u00eb\u0003\u00eb\u0003\u00eb\u0003",
+ "\u00eb\u0003\u00eb\u0003\u00eb\u0003\u00eb\u0003\u00eb\u0003\u00eb\u0003",
+ "\u00eb\u0003\u00eb\u0003\u00eb\u0003\u00eb\u0003\u00eb\u0003\u00eb\u0003",
+ "\u00ec\u0003\u00ec\u0003\u00ec\u0003\u00ec\u0003\u00ed\u0003\u00ed\u0003",
+ "\u00ed\u0003\u00ed\u0003\u00ed\u0003\u00ed\u0003\u00ed\u0003\u00ed\u0003",
+ "\u00ee\u0003\u00ee\u0003\u00ee\u0003\u00ee\u0003\u00ee\u0003\u00ee\u0003",
+ "\u00ee\u0003\u00ef\u0003\u00ef\u0003\u00ef\u0003\u00ef\u0003\u00ef\u0003",
+ "\u00ef\u0003\u00ef\u0003\u00ef\u0003\u00f0\u0003\u00f0\u0003\u00f0\u0003",
+ "\u00f0\u0003\u00f0\u0003\u00f0\u0003\u00f1\u0003\u00f1\u0003\u00f1\u0003",
+ "\u00f1\u0003\u00f1\u0003\u00f1\u0003\u00f1\u0003\u00f1\u0003\u00f1\u0003",
+ "\u00f1\u0003\u00f1\u0003\u00f1\u0003\u00f1\u0003\u00f2\u0003\u00f2\u0003",
+ "\u00f2\u0003\u00f2\u0003\u00f3\u0003\u00f3\u0003\u00f3\u0003\u00f3\u0003",
+ "\u00f4\u0003\u00f4\u0003\u00f4\u0003\u00f4\u0003\u00f5\u0003\u00f5\u0003",
+ "\u00f5\u0003\u00f5\u0003\u00f5\u0003\u00f5\u0003\u00f5\u0003\u00f6\u0003",
+ "\u00f6\u0003\u00f6\u0003\u00f6\u0003\u00f6\u0003\u00f6\u0003\u00f6\u0003",
+ "\u00f6\u0003\u00f6\u0003\u00f6\u0003\u00f6\u0003\u00f7\u0003\u00f7\u0003",
+ "\u00f7\u0003\u00f7\u0003\u00f7\u0003\u00f7\u0003\u00f7\u0003\u00f7\u0003",
+ "\u00f7\u0003\u00f7\u0003\u00f7\u0003\u00f7\u0003\u00f8\u0003\u00f8\u0003",
+ "\u00f8\u0003\u00f8\u0003\u00f9\u0003\u00f9\u0003\u00f9\u0003\u00f9\u0003",
+ "\u00f9\u0003\u00f9\u0003\u00f9\u0003\u00f9\u0003\u00fa\u0003\u00fa\u0003",
+ "\u00fa\u0003\u00fa\u0003\u00fa\u0003\u00fa\u0003\u00fa\u0003\u00fa\u0003",
+ "\u00fa\u0003\u00fb\u0003\u00fb\u0003\u00fb\u0003\u00fb\u0003\u00fb\u0003",
+ "\u00fb\u0003\u00fb\u0003\u00fb\u0003\u00fb\u0003\u00fc\u0003\u00fc\u0003",
+ "\u00fc\u0003\u00fc\u0003\u00fc\u0003\u00fc\u0003\u00fc\u0003\u00fc\u0003",
+ "\u00fc\u0003\u00fc\u0003\u00fc\u0003\u00fc\u0003\u00fc\u0003\u00fd\u0003",
+ "\u00fd\u0003\u00fd\u0003\u00fd\u0003\u00fd\u0003\u00fd\u0003\u00fd\u0003",
+ "\u00fd\u0003\u00fd\u0003\u00fd\u0003\u00fd\u0003\u00fd\u0003\u00fd\u0003",
+ "\u00fe\u0003\u00fe\u0003\u00fe\u0003\u00fe\u0003\u00fe\u0003\u00fe\u0003",
+ "\u00fe\u0003\u00fe\u0003\u00fe\u0003\u00fe\u0003\u00fe\u0003\u00fe\u0003",
+ "\u00fe\u0003\u00fe\u0003\u00fe\u0003\u00fe\u0003\u00fe\u0003\u00fe\u0003",
+ "\u00ff\u0003\u00ff\u0003\u00ff\u0003\u00ff\u0003\u00ff\u0003\u00ff\u0003",
+ "\u00ff\u0003\u00ff\u0003\u00ff\u0003\u00ff\u0003\u0100\u0003\u0100\u0003",
+ "\u0100\u0003\u0100\u0003\u0100\u0003\u0100\u0003\u0100\u0003\u0100\u0003",
+ "\u0101\u0003\u0101\u0003\u0101\u0003\u0101\u0003\u0101\u0003\u0101\u0003",
+ "\u0101\u0003\u0101\u0003\u0102\u0003\u0102\u0003\u0102\u0003\u0102\u0003",
+ "\u0102\u0003\u0102\u0003\u0102\u0003\u0102\u0003\u0102\u0003\u0103\u0003",
+ "\u0103\u0003\u0103\u0003\u0103\u0003\u0103\u0003\u0103\u0003\u0103\u0003",
+ "\u0103\u0003\u0103\u0003\u0104\u0003\u0104\u0003\u0104\u0003\u0104\u0003",
+ "\u0104\u0003\u0104\u0003\u0104\u0003\u0104\u0003\u0105\u0003\u0105\u0003",
+ "\u0105\u0003\u0105\u0003\u0105\u0003\u0105\u0003\u0105\u0003\u0105\u0003",
+ "\u0105\u0003\u0105\u0003\u0105\u0003\u0105\u0003\u0105\u0003\u0105\u0003",
+ "\u0105\u0003\u0106\u0003\u0106\u0003\u0106\u0003\u0106\u0003\u0107\u0003",
+ "\u0107\u0003\u0107\u0003\u0107\u0003\u0107\u0003\u0107\u0003\u0107\u0003",
+ "\u0107\u0003\u0107\u0003\u0108\u0003\u0108\u0003\u0108\u0003\u0108\u0003",
+ "\u0108\u0003\u0108\u0003\u0108\u0003\u0109\u0003\u0109\u0003\u0109\u0003",
+ "\u0109\u0003\u0109\u0003\u0109\u0003\u0109\u0003\u0109\u0003\u0109\u0003",
+ "\u0109\u0003\u010a\u0003\u010a\u0003\u010a\u0003\u010a\u0003\u010a\u0003",
+ "\u010a\u0003\u010a\u0003\u010a\u0003\u010b\u0003\u010b\u0003\u010b\u0003",
+ "\u010b\u0003\u010b\u0003\u010c\u0003\u010c\u0003\u010c\u0003\u010c\u0003",
+ "\u010c\u0003\u010c\u0003\u010c\u0003\u010c\u0003\u010c\u0003\u010d\u0003",
+ "\u010d\u0003\u010d\u0003\u010d\u0003\u010d\u0003\u010d\u0003\u010d\u0003",
+ "\u010d\u0003\u010d\u0003\u010e\u0003\u010e\u0003\u010e\u0003\u010e\u0003",
+ "\u010e\u0003\u010e\u0003\u010e\u0003\u010e\u0003\u010e\u0003\u010e\u0003",
+ "\u010e\u0003\u010e\u0003\u010e\u0003\u010e\u0003\u010f\u0003\u010f\u0003",
+ "\u010f\u0003\u010f\u0003\u010f\u0003\u010f\u0003\u010f\u0003\u010f\u0003",
+ "\u0110\u0003\u0110\u0003\u0110\u0003\u0110\u0003\u0110\u0003\u0110\u0003",
+ "\u0110\u0003\u0111\u0003\u0111\u0003\u0111\u0003\u0111\u0003\u0111\u0003",
+ "\u0111\u0003\u0112\u0003\u0112\u0003\u0112\u0003\u0112\u0003\u0112\u0003",
+ "\u0112\u0003\u0112\u0003\u0112\u0003\u0112\u0003\u0112\u0003\u0113\u0003",
+ "\u0113\u0003\u0113\u0003\u0113\u0003\u0113\u0003\u0113\u0003\u0113\u0003",
+ "\u0113\u0003\u0113\u0003\u0113\u0003\u0114\u0003\u0114\u0003\u0114\u0003",
+ "\u0114\u0003\u0115\u0003\u0115\u0003\u0115\u0003\u0116\u0003\u0116\u0003",
+ "\u0116\u0003\u0116\u0003\u0116\u0003\u0116\u0003\u0116\u0003\u0116\u0003",
+ "\u0117\u0003\u0117\u0003\u0117\u0003\u0117\u0003\u0117\u0003\u0117\u0003",
+ "\u0117\u0003\u0117\u0003\u0117\u0003\u0117\u0003\u0117\u0003\u0118\u0003",
+ "\u0118\u0003\u0118\u0003\u0118\u0003\u0118\u0003\u0118\u0003\u0118\u0003",
+ "\u0118\u0003\u0118\u0003\u0118\u0003\u0118\u0003\u0118\u0003\u0118\u0003",
+ "\u0118\u0003\u0118\u0003\u0118\u0003\u0119\u0003\u0119\u0003\u0119\u0003",
+ "\u0119\u0003\u0119\u0003\u0119\u0003\u0119\u0003\u0119\u0003\u0119\u0003",
+ "\u0119\u0003\u0119\u0003\u0119\u0003\u0119\u0003\u0119\u0003\u0119\u0003",
+ "\u011a\u0003\u011a\u0003\u011a\u0003\u011a\u0003\u011a\u0003\u011a\u0003",
+ "\u011a\u0003\u011a\u0003\u011a\u0003\u011a\u0003\u011a\u0003\u011a\u0003",
+ "\u011a\u0003\u011a\u0003\u011a\u0003\u011b\u0003\u011b\u0003\u011b\u0003",
+ "\u011b\u0003\u011b\u0003\u011b\u0003\u011c\u0003\u011c\u0003\u011c\u0003",
+ "\u011c\u0003\u011c\u0003\u011c\u0003\u011c\u0003\u011d\u0003\u011d\u0003",
+ "\u011d\u0003\u011d\u0003\u011e\u0003\u011e\u0003\u011e\u0003\u011e\u0003",
+ "\u011e\u0003\u011e\u0003\u011f\u0003\u011f\u0003\u011f\u0003\u011f\u0003",
+ "\u011f\u0003\u0120\u0003\u0120\u0003\u0120\u0003\u0120\u0003\u0120\u0003",
+ "\u0120\u0003\u0120\u0003\u0120\u0003\u0121\u0003\u0121\u0003\u0121\u0003",
+ "\u0121\u0003\u0121\u0003\u0121\u0003\u0122\u0003\u0122\u0003\u0122\u0003",
+ "\u0122\u0003\u0122\u0003\u0122\u0003\u0123\u0003\u0123\u0003\u0123\u0003",
+ "\u0123\u0003\u0123\u0003\u0123\u0003\u0123\u0003\u0123\u0003\u0123\u0003",
+ "\u0124\u0003\u0124\u0003\u0124\u0003\u0124\u0003\u0124\u0003\u0124\u0003",
+ "\u0125\u0003\u0125\u0003\u0125\u0003\u0125\u0003\u0125\u0003\u0125\u0003",
+ "\u0125\u0003\u0125\u0003\u0126\u0003\u0126\u0003\u0126\u0003\u0126\u0003",
+ "\u0126\u0003\u0126\u0003\u0126\u0003\u0126\u0003\u0127\u0003\u0127\u0003",
+ "\u0127\u0003\u0127\u0003\u0127\u0003\u0127\u0003\u0127\u0003\u0127\u0003",
+ "\u0127\u0003\u0128\u0003\u0128\u0003\u0128\u0003\u0128\u0003\u0128\u0003",
+ "\u0128\u0003\u0128\u0003\u0128\u0003\u0128\u0003\u0128\u0003\u0128\u0003",
+ "\u0128\u0003\u0128\u0003\u0128\u0003\u0129\u0003\u0129\u0003\u0129\u0003",
+ "\u0129\u0003\u0129\u0003\u0129\u0003\u0129\u0003\u012a\u0003\u012a\u0003",
+ "\u012a\u0003\u012a\u0003\u012a\u0003\u012a\u0003\u012a\u0003\u012a\u0003",
+ "\u012a\u0003\u012a\u0003\u012a\u0003\u012a\u0003\u012a\u0003\u012b\u0003",
+ "\u012b\u0003\u012b\u0003\u012b\u0003\u012b\u0003\u012b\u0003\u012b\u0003",
+ "\u012c\u0003\u012c\u0003\u012c\u0003\u012c\u0003\u012c\u0003\u012c\u0003",
+ "\u012d\u0003\u012d\u0003\u012d\u0003\u012d\u0003\u012d\u0003\u012d\u0003",
+ "\u012d\u0003\u012d\u0003\u012d\u0003\u012e\u0003\u012e\u0003\u012e\u0003",
+ "\u012e\u0003\u012e\u0003\u012f\u0003\u012f\u0003\u012f\u0003\u012f\u0003",
+ "\u012f\u0003\u012f\u0003\u012f\u0003\u012f\u0003\u0130\u0003\u0130\u0003",
+ "\u0130\u0003\u0130\u0003\u0130\u0003\u0130\u0003\u0130\u0003\u0130\u0003",
+ "\u0130\u0003\u0130\u0003\u0130\u0003\u0130\u0003\u0130\u0003\u0130\u0003",
+ "\u0131\u0003\u0131\u0003\u0131\u0003\u0131\u0003\u0131\u0003\u0131\u0003",
+ "\u0131\u0003\u0131\u0003\u0131\u0003\u0131\u0003\u0131\u0003\u0131\u0003",
+ "\u0132\u0003\u0132\u0003\u0132\u0003\u0132\u0003\u0132\u0003\u0132\u0003",
+ "\u0132\u0003\u0132\u0003\u0133\u0003\u0133\u0003\u0133\u0003\u0133\u0003",
+ "\u0133\u0003\u0133\u0003\u0133\u0003\u0134\u0003\u0134\u0003\u0134\u0003",
+ "\u0134\u0003\u0134\u0003\u0134\u0003\u0134\u0003\u0134\u0003\u0135\u0003",
+ "\u0135\u0003\u0135\u0003\u0135\u0003\u0135\u0003\u0135\u0003\u0135\u0003",
+ "\u0135\u0003\u0135\u0003\u0135\u0003\u0135\u0003\u0136\u0003\u0136\u0003",
+ "\u0136\u0003\u0136\u0003\u0136\u0003\u0136\u0003\u0136\u0003\u0136\u0003",
+ "\u0136\u0003\u0136\u0003\u0136\u0003\u0137\u0003\u0137\u0003\u0137\u0003",
+ "\u0137\u0003\u0137\u0003\u0137\u0003\u0137\u0003\u0137\u0003\u0137\u0003",
+ "\u0137\u0003\u0137\u0003\u0137\u0003\u0138\u0003\u0138\u0003\u0138\u0003",
+ "\u0138\u0003\u0138\u0003\u0138\u0003\u0138\u0003\u0138\u0003\u0138\u0003",
+ "\u0138\u0003\u0138\u0003\u0139\u0003\u0139\u0003\u0139\u0003\u0139\u0003",
+ "\u0139\u0003\u0139\u0003\u0139\u0003\u0139\u0003\u0139\u0003\u0139\u0003",
+ "\u0139\u0003\u013a\u0003\u013a\u0003\u013a\u0003\u013a\u0003\u013a\u0003",
+ "\u013a\u0003\u013a\u0003\u013a\u0003\u013a\u0003\u013a\u0003\u013a\u0003",
+ "\u013b\u0003\u013b\u0003\u013b\u0003\u013b\u0003\u013b\u0003\u013b\u0003",
+ "\u013b\u0003\u013b\u0003\u013b\u0003\u013b\u0003\u013b\u0003\u013b\u0003",
+ "\u013b\u0003\u013b\u0003\u013b\u0003\u013b\u0003\u013b\u0003\u013b\u0003",
+ "\u013b\u0003\u013c\u0003\u013c\u0003\u013c\u0003\u013c\u0003\u013c\u0003",
+ "\u013c\u0003\u013c\u0003\u013c\u0003\u013c\u0003\u013c\u0003\u013c\u0003",
+ "\u013c\u0003\u013c\u0003\u013c\u0003\u013c\u0003\u013c\u0003\u013c\u0003",
+ "\u013c\u0003\u013d\u0003\u013d\u0003\u013d\u0003\u013d\u0003\u013d\u0003",
+ "\u013d\u0003\u013d\u0003\u013d\u0003\u013d\u0003\u013d\u0003\u013d\u0003",
+ "\u013d\u0003\u013d\u0003\u013d\u0003\u013d\u0003\u013d\u0003\u013e\u0003",
+ "\u013e\u0003\u013e\u0003\u013e\u0003\u013e\u0003\u013e\u0003\u013e\u0003",
+ "\u013e\u0003\u013e\u0003\u013f\u0003\u013f\u0003\u013f\u0003\u013f\u0003",
+ "\u013f\u0003\u013f\u0003\u013f\u0003\u013f\u0003\u0140\u0003\u0140\u0003",
+ "\u0140\u0003\u0140\u0003\u0140\u0003\u0140\u0003\u0140\u0003\u0140\u0003",
+ "\u0140\u0003\u0140\u0003\u0140\u0003\u0140\u0003\u0140\u0003\u0141\u0003",
+ "\u0141\u0003\u0141\u0003\u0141\u0003\u0141\u0003\u0142\u0003\u0142\u0003",
+ "\u0142\u0003\u0142\u0003\u0143\u0003\u0143\u0003\u0143\u0003\u0143\u0003",
+ "\u0143\u0003\u0143\u0003\u0143\u0003\u0143\u0003\u0143\u0003\u0143\u0003",
+ "\u0143\u0003\u0143\u0003\u0144\u0003\u0144\u0003\u0144\u0003\u0144\u0003",
+ "\u0144\u0003\u0145\u0003\u0145\u0003\u0145\u0003\u0145\u0003\u0145\u0003",
+ "\u0145\u0003\u0145\u0003\u0145\u0003\u0145\u0003\u0146\u0003\u0146\u0003",
+ "\u0146\u0003\u0146\u0003\u0146\u0003\u0146\u0003\u0146\u0003\u0146\u0003",
+ "\u0146\u0003\u0146\u0003\u0146\u0003\u0147\u0003\u0147\u0003\u0147\u0003",
+ "\u0147\u0003\u0147\u0003\u0147\u0003\u0147\u0003\u0147\u0003\u0147\u0003",
+ "\u0147\u0003\u0147\u0003\u0147\u0003\u0147\u0003\u0148\u0003\u0148\u0003",
+ "\u0148\u0003\u0148\u0003\u0148\u0003\u0148\u0003\u0148\u0003\u0148\u0003",
+ "\u0149\u0003\u0149\u0003\u0149\u0003\u0149\u0003\u0149\u0003\u0149\u0003",
+ "\u0149\u0003\u0149\u0003\u0149\u0003\u0149\u0003\u0149\u0003\u0149\u0003",
+ "\u0149\u0003\u0149\u0003\u0149\u0003\u0149\u0003\u014a\u0003\u014a\u0003",
+ "\u014a\u0003\u014a\u0003\u014a\u0003\u014a\u0003\u014a\u0003\u014a\u0003",
+ "\u014a\u0003\u014a\u0003\u014a\u0003\u014a\u0003\u014a\u0003\u014b\u0003",
+ "\u014b\u0003\u014b\u0003\u014b\u0003\u014b\u0003\u014b\u0003\u014b\u0003",
+ "\u014b\u0003\u014b\u0003\u014b\u0003\u014c\u0003\u014c\u0003\u014c\u0003",
+ "\u014c\u0003\u014c\u0003\u014c\u0003\u014c\u0003\u014c\u0003\u014d\u0003",
+ "\u014d\u0003\u014d\u0003\u014d\u0003\u014d\u0003\u014d\u0003\u014d\u0003",
+ "\u014d\u0003\u014e\u0003\u014e\u0003\u014e\u0003\u014e\u0003\u014e\u0003",
+ "\u014f\u0003\u014f\u0003\u014f\u0003\u0150\u0003\u0150\u0003\u0150\u0003",
+ "\u0150\u0003\u0150\u0003\u0150\u0003\u0150\u0003\u0150\u0003\u0150\u0003",
+ "\u0151\u0003\u0151\u0003\u0151\u0003\u0151\u0003\u0151\u0003\u0151\u0003",
+ "\u0151\u0003\u0151\u0003\u0151\u0003\u0151\u0003\u0152\u0003\u0152\u0003",
+ "\u0152\u0003\u0152\u0003\u0152\u0003\u0152\u0003\u0152\u0003\u0152\u0003",
+ "\u0153\u0003\u0153\u0003\u0153\u0003\u0153\u0003\u0153\u0003\u0153\u0003",
+ "\u0153\u0003\u0154\u0003\u0154\u0003\u0154\u0003\u0154\u0003\u0154\u0003",
+ "\u0154\u0003\u0154\u0003\u0154\u0003\u0154\u0003\u0154\u0003\u0154\u0003",
+ "\u0155\u0003\u0155\u0003\u0155\u0003\u0155\u0003\u0156\u0003\u0156\u0003",
+ "\u0156\u0003\u0156\u0003\u0156\u0003\u0157\u0003\u0157\u0003\u0157\u0003",
+ "\u0157\u0003\u0157\u0003\u0157\u0003\u0157\u0003\u0158\u0003\u0158\u0003",
+ "\u0158\u0003\u0158\u0003\u0158\u0003\u0158\u0003\u0158\u0003\u0158\u0003",
+ "\u0159\u0003\u0159\u0003\u0159\u0003\u0159\u0003\u0159\u0003\u0159\u0003",
+ "\u015a\u0003\u015a\u0003\u015a\u0003\u015a\u0003\u015a\u0003\u015a\u0003",
+ "\u015a\u0003\u015b\u0003\u015b\u0003\u015b\u0003\u015b\u0003\u015b\u0003",
+ "\u015b\u0003\u015b\u0003\u015c\u0003\u015c\u0003\u015c\u0003\u015c\u0003",
+ "\u015c\u0003\u015d\u0003\u015d\u0003\u015d\u0003\u015d\u0003\u015d\u0003",
+ "\u015d\u0003\u015e\u0003\u015e\u0003\u015e\u0003\u015e\u0003\u015e\u0003",
+ "\u015e\u0003\u015e\u0003\u015f\u0003\u015f\u0003\u015f\u0003\u015f\u0003",
+ "\u015f\u0003\u015f\u0003\u0160\u0003\u0160\u0003\u0160\u0003\u0160\u0003",
+ "\u0160\u0003\u0160\u0003\u0160\u0003\u0160\u0003\u0160\u0003\u0161\u0003",
+ "\u0161\u0003\u0161\u0003\u0161\u0003\u0161\u0003\u0161\u0003\u0161\u0003",
+ "\u0161\u0003\u0161\u0003\u0161\u0003\u0162\u0003\u0162\u0003\u0162\u0003",
+ "\u0162\u0003\u0162\u0003\u0162\u0003\u0162\u0003\u0163\u0003\u0163\u0003",
+ "\u0163\u0003\u0163\u0003\u0163\u0003\u0163\u0003\u0163\u0003\u0164\u0003",
+ "\u0164\u0003\u0164\u0003\u0164\u0003\u0164\u0003\u0164\u0003\u0164\u0003",
+ "\u0164\u0003\u0164\u0003\u0165\u0003\u0165\u0003\u0165\u0003\u0165\u0003",
+ "\u0165\u0003\u0165\u0003\u0165\u0003\u0165\u0003\u0165\u0003\u0165\u0003",
+ "\u0165\u0003\u0165\u0003\u0166\u0003\u0166\u0003\u0166\u0003\u0166\u0003",
+ "\u0166\u0003\u0167\u0003\u0167\u0003\u0167\u0003\u0167\u0003\u0167\u0003",
+ "\u0167\u0003\u0167\u0003\u0168\u0003\u0168\u0003\u0168\u0003\u0168\u0003",
+ "\u0168\u0003\u0168\u0003\u0168\u0003\u0169\u0003\u0169\u0003\u0169\u0003",
+ "\u0169\u0003\u0169\u0003\u0169\u0003\u0169\u0003\u0169\u0003\u0169\u0003",
+ "\u0169\u0003\u0169\u0003\u0169\u0003\u0169\u0003\u0169\u0003\u0169\u0003",
+ "\u0169\u0003\u016a\u0003\u016a\u0003\u016a\u0003\u016a\u0003\u016a\u0003",
+ "\u016a\u0003\u016a\u0003\u016b\u0003\u016b\u0003\u016b\u0003\u016b\u0003",
+ "\u016b\u0003\u016b\u0003\u016c\u0003\u016c\u0003\u016c\u0003\u016c\u0003",
+ "\u016c\u0003\u016c\u0003\u016d\u0003\u016d\u0003\u016d\u0003\u016d\u0003",
+ "\u016d\u0003\u016d\u0003\u016e\u0003\u016e\u0003\u016e\u0003\u016e\u0003",
+ "\u016e\u0003\u016e\u0003\u016e\u0003\u016e\u0003\u016f\u0003\u016f\u0003",
+ "\u016f\u0003\u016f\u0003\u016f\u0003\u016f\u0003\u0170\u0003\u0170\u0003",
+ "\u0170\u0003\u0170\u0003\u0170\u0003\u0171\u0003\u0171\u0003\u0171\u0003",
+ "\u0171\u0003\u0171\u0003\u0171\u0003\u0171\u0003\u0171\u0003\u0171\u0003",
+ "\u0172\u0003\u0172\u0003\u0172\u0003\u0172\u0003\u0172\u0003\u0172\u0003",
+ "\u0172\u0003\u0172\u0003\u0173\u0003\u0173\u0003\u0173\u0003\u0173\u0003",
+ "\u0173\u0003\u0173\u0003\u0173\u0003\u0174\u0003\u0174\u0003\u0174\u0003",
+ "\u0174\u0003\u0174\u0003\u0174\u0003\u0174\u0003\u0175\u0003\u0175\u0003",
+ "\u0175\u0003\u0175\u0003\u0175\u0003\u0175\u0003\u0175\u0003\u0175\u0003",
+ "\u0175\u0003\u0175\u0003\u0175\u0003\u0175\u0003\u0175\u0003\u0175\u0003",
+ "\u0175\u0003\u0175\u0003\u0175\u0003\u0175\u0003\u0176\u0003\u0176\u0003",
+ "\u0176\u0003\u0176\u0003\u0176\u0003\u0176\u0003\u0176\u0003\u0176\u0003",
+ "\u0177\u0003\u0177\u0003\u0177\u0003\u0177\u0003\u0177\u0003\u0178\u0003",
+ "\u0178\u0003\u0178\u0003\u0178\u0003\u0178\u0003\u0179\u0003\u0179\u0003",
+ "\u0179\u0003\u0179\u0003\u0179\u0003\u017a\u0003\u017a\u0003\u017a\u0003",
+ "\u017a\u0003\u017a\u0003\u017a\u0003\u017b\u0003\u017b\u0003\u017b\u0003",
+ "\u017b\u0003\u017b\u0003\u017b\u0003\u017b\u0003\u017b\u0003\u017b\u0003",
+ "\u017b\u0003\u017b\u0003\u017c\u0003\u017c\u0003\u017c\u0003\u017c\u0003",
+ "\u017c\u0003\u017c\u0003\u017c\u0003\u017c\u0003\u017c\u0003\u017c\u0003",
+ "\u017c\u0003\u017c\u0003\u017c\u0003\u017c\u0003\u017c\u0003\u017c\u0003",
+ "\u017c\u0003\u017c\u0003\u017d\u0003\u017d\u0003\u017d\u0003\u017d\u0003",
+ "\u017d\u0003\u017d\u0003\u017d\u0003\u017e\u0003\u017e\u0003\u017e\u0003",
+ "\u017e\u0003\u017e\u0003\u017e\u0003\u017e\u0003\u017e\u0003\u017f\u0003",
+ "\u017f\u0003\u017f\u0003\u017f\u0003\u017f\u0003\u017f\u0003\u017f\u0003",
+ "\u017f\u0003\u017f\u0003\u017f\u0003\u017f\u0003\u017f\u0003\u017f\u0003",
+ "\u0180\u0003\u0180\u0003\u0180\u0003\u0180\u0003\u0180\u0003\u0180\u0003",
+ "\u0180\u0003\u0180\u0003\u0181\u0003\u0181\u0003\u0181\u0003\u0181\u0003",
+ "\u0181\u0003\u0181\u0003\u0181\u0003\u0181\u0003\u0181\u0003\u0181\u0003",
+ "\u0181\u0003\u0181\u0003\u0181\u0003\u0181\u0003\u0182\u0003\u0182\u0003",
+ "\u0182\u0003\u0182\u0003\u0182\u0003\u0182\u0003\u0182\u0003\u0182\u0003",
+ "\u0183\u0003\u0183\u0003\u0183\u0003\u0183\u0003\u0183\u0003\u0183\u0003",
+ "\u0183\u0003\u0183\u0003\u0183\u0003\u0184\u0003\u0184\u0003\u0184\u0003",
+ "\u0184\u0003\u0184\u0003\u0184\u0003\u0184\u0003\u0184\u0003\u0184\u0003",
+ "\u0184\u0003\u0185\u0003\u0185\u0003\u0185\u0003\u0185\u0003\u0185\u0003",
+ "\u0185\u0003\u0185\u0003\u0185\u0003\u0186\u0003\u0186\u0003\u0186\u0003",
+ "\u0187\u0003\u0187\u0003\u0187\u0003\u0187\u0003\u0187\u0003\u0187\u0003",
+ "\u0187\u0003\u0187\u0003\u0187\u0003\u0187\u0003\u0188\u0003\u0188\u0003",
+ "\u0188\u0003\u0188\u0003\u0189\u0003\u0189\u0003\u0189\u0003\u0189\u0003",
+ "\u0189\u0003\u0189\u0003\u0189\u0003\u0189\u0003\u0189\u0003\u0189\u0003",
+ "\u018a\u0003\u018a\u0003\u018a\u0003\u018a\u0003\u018a\u0003\u018a\u0003",
+ "\u018a\u0003\u018b\u0003\u018b\u0003\u018b\u0003\u018b\u0003\u018b\u0003",
+ "\u018c\u0003\u018c\u0003\u018c\u0003\u018c\u0003\u018c\u0003\u018c\u0003",
+ "\u018c\u0003\u018c\u0003\u018c\u0003\u018c\u0003\u018c\u0003\u018c\u0003",
+ "\u018c\u0003\u018c\u0003\u018c\u0003\u018d\u0003\u018d\u0003\u018d\u0003",
+ "\u018d\u0003\u018d\u0003\u018d\u0003\u018d\u0003\u018d\u0003\u018d\u0003",
+ "\u018e\u0003\u018e\u0003\u018e\u0003\u018e\u0003\u018e\u0003\u018f\u0003",
+ "\u018f\u0003\u018f\u0003\u018f\u0003\u018f\u0003\u018f\u0003\u018f\u0003",
+ "\u0190\u0003\u0190\u0003\u0190\u0003\u0190\u0003\u0190\u0003\u0191\u0003",
+ "\u0191\u0003\u0191\u0003\u0191\u0003\u0191\u0003\u0191\u0003\u0192\u0003",
+ "\u0192\u0003\u0192\u0003\u0192\u0003\u0192\u0003\u0193\u0003\u0193\u0003",
+ "\u0193\u0003\u0193\u0003\u0193\u0003\u0193\u0003\u0194\u0003\u0194\u0003",
+ "\u0194\u0003\u0194\u0003\u0194\u0003\u0194\u0003\u0194\u0003\u0194\u0003",
+ "\u0195\u0003\u0195\u0003\u0195\u0003\u0195\u0003\u0195\u0003\u0196\u0003",
+ "\u0196\u0003\u0196\u0003\u0196\u0003\u0196\u0003\u0196\u0003\u0196\u0003",
+ "\u0197\u0003\u0197\u0003\u0197\u0003\u0197\u0003\u0197\u0003\u0197\u0003",
+ "\u0197\u0003\u0197\u0003\u0197\u0003\u0197\u0003\u0197\u0003\u0197\u0003",
+ "\u0197\u0003\u0197\u0003\u0197\u0003\u0197\u0003\u0197\u0003\u0197\u0003",
+ "\u0197\u0003\u0197\u0003\u0197\u0003\u0198\u0003\u0198\u0003\u0198\u0003",
+ "\u0198\u0003\u0198\u0003\u0198\u0003\u0198\u0003\u0198\u0003\u0198\u0003",
+ "\u0198\u0003\u0198\u0003\u0198\u0003\u0198\u0003\u0198\u0003\u0198\u0003",
+ "\u0198\u0003\u0198\u0003\u0198\u0003\u0198\u0003\u0198\u0003\u0198\u0003",
+ "\u0199\u0003\u0199\u0003\u0199\u0003\u0199\u0003\u0199\u0003\u0199\u0003",
+ "\u0199\u0003\u0199\u0003\u0199\u0003\u0199\u0003\u0199\u0003\u0199\u0003",
+ "\u0199\u0003\u019a\u0003\u019a\u0003\u019a\u0003\u019a\u0003\u019a\u0003",
+ "\u019a\u0003\u019a\u0003\u019a\u0003\u019a\u0003\u019a\u0003\u019a\u0003",
+ "\u019a\u0003\u019a\u0003\u019a\u0003\u019a\u0003\u019a\u0003\u019a\u0003",
+ "\u019a\u0003\u019a\u0003\u019a\u0003\u019a\u0003\u019a\u0003\u019a\u0003",
+ "\u019a\u0003\u019b\u0003\u019b\u0003\u019b\u0003\u019b\u0003\u019b\u0003",
+ "\u019b\u0003\u019b\u0003\u019b\u0003\u019b\u0003\u019b\u0003\u019b\u0003",
+ "\u019b\u0003\u019c\u0003\u019c\u0003\u019c\u0003\u019c\u0003\u019c\u0003",
+ "\u019c\u0003\u019c\u0003\u019c\u0003\u019c\u0003\u019c\u0003\u019c\u0003",
+ "\u019c\u0003\u019c\u0003\u019c\u0003\u019c\u0003\u019c\u0003\u019d\u0003",
+ "\u019d\u0003\u019d\u0003\u019d\u0003\u019d\u0003\u019d\u0003\u019d\u0003",
+ "\u019d\u0003\u019d\u0003\u019d\u0003\u019d\u0003\u019d\u0003\u019d\u0003",
+ "\u019d\u0003\u019d\u0003\u019e\u0003\u019e\u0003\u019e\u0003\u019e\u0003",
+ "\u019e\u0003\u019e\u0003\u019e\u0003\u019e\u0003\u019e\u0003\u019e\u0003",
+ "\u019e\u0003\u019e\u0003\u019e\u0003\u019e\u0003\u019e\u0003\u019e\u0003",
+ "\u019f\u0003\u019f\u0003\u019f\u0003\u019f\u0003\u019f\u0003\u019f\u0003",
+ "\u019f\u0003\u019f\u0003\u019f\u0003\u019f\u0003\u019f\u0003\u019f\u0003",
+ "\u01a0\u0003\u01a0\u0003\u01a0\u0003\u01a0\u0003\u01a0\u0003\u01a0\u0003",
+ "\u01a0\u0003\u01a0\u0003\u01a0\u0003\u01a0\u0003\u01a0\u0003\u01a0\u0003",
+ "\u01a0\u0003\u01a0\u0003\u01a0\u0003\u01a0\u0003\u01a0\u0003\u01a0\u0003",
+ "\u01a0\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003",
+ "\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003",
+ "\u01a2\u0003\u01a2\u0003\u01a2\u0003\u01a2\u0003\u01a2\u0003\u01a2\u0003",
+ "\u01a2\u0003\u01a2\u0003\u01a2\u0003\u01a2\u0003\u01a2\u0003\u01a2\u0003",
+ "\u01a2\u0003\u01a2\u0003\u01a3\u0003\u01a3\u0003\u01a3\u0003\u01a3\u0003",
+ "\u01a3\u0003\u01a3\u0003\u01a3\u0003\u01a3\u0003\u01a3\u0003\u01a3\u0003",
+ "\u01a3\u0003\u01a3\u0003\u01a3\u0003\u01a3\u0003\u01a3\u0003\u01a3\u0003",
+ "\u01a3\u0003\u01a3\u0003\u01a4\u0003\u01a4\u0003\u01a4\u0003\u01a4\u0003",
+ "\u01a4\u0003\u01a4\u0003\u01a4\u0003\u01a4\u0003\u01a4\u0003\u01a4\u0003",
+ "\u01a4\u0003\u01a4\u0003\u01a4\u0003\u01a4\u0003\u01a4\u0003\u01a4\u0003",
+ "\u01a5\u0003\u01a5\u0003\u01a5\u0003\u01a5\u0003\u01a5\u0003\u01a5\u0003",
+ "\u01a5\u0003\u01a5\u0003\u01a5\u0003\u01a5\u0003\u01a5\u0003\u01a5\u0003",
+ "\u01a5\u0003\u01a5\u0003\u01a5\u0003\u01a5\u0003\u01a5\u0003\u01a5\u0003",
+ "\u01a6\u0003\u01a6\u0003\u01a6\u0003\u01a6\u0003\u01a6\u0003\u01a6\u0003",
+ "\u01a6\u0003\u01a6\u0003\u01a6\u0003\u01a6\u0003\u01a6\u0003\u01a6\u0003",
+ "\u01a6\u0003\u01a6\u0003\u01a6\u0003\u01a7\u0003\u01a7\u0003\u01a7\u0003",
+ "\u01a7\u0003\u01a7\u0003\u01a7\u0003\u01a7\u0003\u01a7\u0003\u01a7\u0003",
+ "\u01a7\u0003\u01a7\u0003\u01a7\u0003\u01a7\u0003\u01a7\u0003\u01a7\u0003",
+ "\u01a7\u0003\u01a7\u0003\u01a7\u0003\u01a7\u0003\u01a8\u0003\u01a8\u0003",
+ "\u01a8\u0003\u01a8\u0003\u01a8\u0003\u01a8\u0003\u01a8\u0003\u01a8\u0003",
+ "\u01a8\u0003\u01a8\u0003\u01a8\u0003\u01a8\u0003\u01a8\u0003\u01a8\u0003",
+ "\u01a8\u0003\u01a9\u0003\u01a9\u0003\u01a9\u0003\u01a9\u0003\u01a9\u0003",
+ "\u01a9\u0003\u01a9\u0003\u01a9\u0003\u01a9\u0003\u01a9\u0003\u01a9\u0003",
+ "\u01a9\u0003\u01a9\u0003\u01a9\u0003\u01a9\u0003\u01a9\u0003\u01a9\u0003",
+ "\u01a9\u0003\u01a9\u0003\u01aa\u0003\u01aa\u0003\u01aa\u0003\u01aa\u0003",
+ "\u01aa\u0003\u01aa\u0003\u01aa\u0003\u01aa\u0003\u01aa\u0003\u01aa\u0003",
+ "\u01aa\u0003\u01aa\u0003\u01ab\u0003\u01ab\u0003\u01ab\u0003\u01ab\u0003",
+ "\u01ab\u0003\u01ab\u0003\u01ab\u0003\u01ab\u0003\u01ab\u0003\u01ab\u0003",
+ "\u01ab\u0003\u01ab\u0003\u01ab\u0003\u01ab\u0003\u01ab\u0003\u01ab\u0003",
+ "\u01ab\u0003\u01ab\u0003\u01ab\u0003\u01ab\u0003\u01ab\u0003\u01ab\u0003",
+ "\u01ab\u0003\u01ab\u0003\u01ab\u0003\u01ac\u0003\u01ac\u0003\u01ac\u0003",
+ "\u01ac\u0003\u01ac\u0003\u01ac\u0003\u01ac\u0003\u01ac\u0003\u01ac\u0003",
+ "\u01ac\u0003\u01ac\u0003\u01ac\u0003\u01ac\u0003\u01ac\u0003\u01ac\u0003",
+ "\u01ac\u0003\u01ac\u0003\u01ac\u0003\u01ac\u0003\u01ac\u0003\u01ac\u0003",
+ "\u01ad\u0003\u01ad\u0003\u01ad\u0003\u01ad\u0003\u01ad\u0003\u01ad\u0003",
+ "\u01ad\u0003\u01ad\u0003\u01ad\u0003\u01ae\u0003\u01ae\u0003\u01ae\u0003",
+ "\u01ae\u0003\u01ae\u0003\u01ae\u0003\u01ae\u0003\u01ae\u0003\u01ae\u0003",
+ "\u01af\u0003\u01af\u0003\u01af\u0003\u01af\u0003\u01af\u0003\u01af\u0003",
+ "\u01af\u0003\u01af\u0003\u01af\u0003\u01af\u0003\u01af\u0003\u01af\u0003",
+ "\u01af\u0003\u01af\u0003\u01af\u0003\u01af\u0003\u01af\u0003\u01af\u0003",
+ "\u01af\u0003\u01af\u0003\u01af\u0003\u01b0\u0003\u01b0\u0003\u01b0\u0003",
+ "\u01b0\u0003\u01b0\u0003\u01b0\u0003\u01b0\u0003\u01b0\u0003\u01b0\u0003",
+ "\u01b0\u0003\u01b0\u0003\u01b0\u0003\u01b0\u0003\u01b0\u0003\u01b0\u0003",
+ "\u01b0\u0003\u01b0\u0003\u01b0\u0003\u01b0\u0003\u01b0\u0003\u01b0\u0003",
+ "\u01b1\u0003\u01b1\u0003\u01b1\u0003\u01b1\u0003\u01b1\u0003\u01b1\u0003",
+ "\u01b1\u0003\u01b2\u0003\u01b2\u0003\u01b2\u0003\u01b2\u0003\u01b2\u0003",
+ "\u01b2\u0003\u01b3\u0003\u01b3\u0003\u01b3\u0003\u01b3\u0003\u01b3\u0003",
+ "\u01b3\u0003\u01b3\u0003\u01b3\u0003\u01b3\u0003\u01b3\u0003\u01b3\u0003",
+ "\u01b3\u0003\u01b3\u0003\u01b4\u0003\u01b4\u0003\u01b4\u0003\u01b4\u0003",
+ "\u01b5\u0003\u01b5\u0003\u01b5\u0003\u01b5\u0003\u01b5\u0003\u01b5\u0003",
+ "\u01b5\u0003\u01b5\u0003\u01b6\u0003\u01b6\u0003\u01b6\u0003\u01b6\u0003",
+ "\u01b6\u0003\u01b6\u0003\u01b6\u0003\u01b6\u0003\u01b6\u0003\u01b7\u0003",
+ "\u01b7\u0003\u01b7\u0003\u01b7\u0003\u01b7\u0003\u01b8\u0003\u01b8\u0003",
+ "\u01b8\u0003\u01b8\u0003\u01b8\u0003\u01b8\u0003\u01b8\u0003\u01b9\u0003",
+ "\u01b9\u0003\u01b9\u0003\u01b9\u0003\u01b9\u0003\u01b9\u0003\u01ba\u0003",
+ "\u01ba\u0003\u01ba\u0003\u01ba\u0003\u01ba\u0003\u01ba\u0003\u01bb\u0003",
+ "\u01bb\u0003\u01bb\u0003\u01bb\u0003\u01bb\u0003\u01bb\u0003\u01bb\u0003",
+ "\u01bb\u0003\u01bb\u0003\u01bb\u0003\u01bb\u0003\u01bb\u0003\u01bc\u0003",
+ "\u01bc\u0003\u01bc\u0003\u01bc\u0003\u01bc\u0003\u01bd\u0003\u01bd\u0003",
+ "\u01bd\u0003\u01bd\u0003\u01bd\u0003\u01bd\u0003\u01be\u0003\u01be\u0003",
+ "\u01be\u0003\u01be\u0003\u01be\u0003\u01be\u0003\u01bf\u0003\u01bf\u0003",
+ "\u01bf\u0003\u01bf\u0003\u01bf\u0003\u01bf\u0003\u01c0\u0003\u01c0\u0003",
+ "\u01c0\u0003\u01c0\u0003\u01c0\u0003\u01c1\u0003\u01c1\u0003\u01c1\u0003",
+ "\u01c2\u0003\u01c2\u0003\u01c2\u0003\u01c2\u0003\u01c2\u0003\u01c2\u0003",
+ "\u01c2\u0003\u01c2\u0003\u01c2\u0003\u01c2\u0003\u01c3\u0003\u01c3\u0003",
+ "\u01c3\u0003\u01c3\u0003\u01c3\u0003\u01c4\u0003\u01c4\u0003\u01c4\u0003",
+ "\u01c4\u0003\u01c4\u0003\u01c4\u0003\u01c4\u0003\u01c4\u0003\u01c5\u0003",
+ "\u01c5\u0003\u01c5\u0003\u01c5\u0003\u01c5\u0003\u01c5\u0003\u01c5\u0003",
+ "\u01c6\u0003\u01c6\u0003\u01c6\u0003\u01c7\u0003\u01c7\u0003\u01c7\u0003",
+ "\u01c7\u0003\u01c7\u0003\u01c7\u0003\u01c7\u0003\u01c7\u0003\u01c7\u0003",
+ "\u01c7\u0003\u01c7\u0003\u01c7\u0003\u01c7\u0003\u01c8\u0003\u01c8\u0003",
+ "\u01c8\u0003\u01c8\u0003\u01c9\u0003\u01c9\u0003\u01c9\u0003\u01c9\u0003",
+ "\u01c9\u0003\u01c9\u0003\u01c9\u0003\u01ca\u0003\u01ca\u0003\u01ca\u0003",
+ "\u01ca\u0003\u01ca\u0003\u01cb\u0003\u01cb\u0003\u01cb\u0003\u01cb\u0003",
+ "\u01cb\u0003\u01cc\u0003\u01cc\u0003\u01cc\u0003\u01cc\u0003\u01cc\u0003",
+ "\u01cc\u0003\u01cc\u0003\u01cc\u0003\u01cc\u0003\u01cc\u0003\u01cc\u0003",
+ "\u01cc\u0003\u01cc\u0003\u01cc\u0003\u01cc\u0003\u01cc\u0003\u01cd\u0003",
+ "\u01cd\u0003\u01cd\u0003\u01cd\u0003\u01cd\u0003\u01cd\u0003\u01cd\u0003",
+ "\u01cd\u0003\u01ce\u0003\u01ce\u0003\u01ce\u0003\u01ce\u0003\u01ce\u0003",
+ "\u01ce\u0003\u01cf\u0003\u01cf\u0003\u01cf\u0003\u01cf\u0003\u01cf\u0003",
+ "\u01cf\u0003\u01cf\u0003\u01cf\u0003\u01cf\u0003\u01cf\u0003\u01d0\u0003",
+ "\u01d0\u0003\u01d0\u0003\u01d0\u0003\u01d0\u0003\u01d1\u0003\u01d1\u0003",
+ "\u01d1\u0003\u01d1\u0003\u01d1\u0003\u01d1\u0003\u01d1\u0003\u01d2\u0003",
+ "\u01d2\u0003\u01d2\u0003\u01d2\u0003\u01d2\u0003\u01d2\u0003\u01d2\u0003",
+ "\u01d2\u0003\u01d3\u0003\u01d3\u0003\u01d3\u0003\u01d3\u0003\u01d3\u0003",
+ "\u01d3\u0003\u01d3\u0003\u01d3\u0003\u01d3\u0003\u01d3\u0003\u01d3\u0003",
+ "\u01d3\u0003\u01d3\u0003\u01d4\u0003\u01d4\u0003\u01d4\u0003\u01d4\u0003",
+ "\u01d4\u0003\u01d4\u0003\u01d4\u0003\u01d4\u0003\u01d4\u0003\u01d4\u0003",
+ "\u01d4\u0003\u01d5\u0003\u01d5\u0003\u01d5\u0003\u01d5\u0003\u01d5\u0003",
+ "\u01d5\u0003\u01d5\u0003\u01d5\u0003\u01d5\u0003\u01d6\u0003\u01d6\u0003",
+ "\u01d6\u0003\u01d6\u0003\u01d6\u0003\u01d6\u0003\u01d7\u0003\u01d7\u0003",
+ "\u01d7\u0003\u01d7\u0003\u01d7\u0003\u01d7\u0003\u01d7\u0003\u01d8\u0003",
+ "\u01d8\u0003\u01d8\u0003\u01d8\u0003\u01d8\u0003\u01d8\u0003\u01d8\u0003",
+ "\u01d8\u0003\u01d8\u0003\u01d8\u0003\u01d8\u0003\u01d9\u0003\u01d9\u0003",
+ "\u01d9\u0003\u01d9\u0003\u01d9\u0003\u01d9\u0003\u01d9\u0003\u01d9\u0003",
+ "\u01da\u0003\u01da\u0003\u01da\u0003\u01da\u0003\u01da\u0003\u01db\u0003",
+ "\u01db\u0003\u01db\u0003\u01db\u0003\u01db\u0003\u01db\u0003\u01db\u0003",
+ "\u01db\u0003\u01db\u0003\u01dc\u0003\u01dc\u0003\u01dc\u0003\u01dc\u0003",
+ "\u01dc\u0003\u01dc\u0003\u01dc\u0003\u01dc\u0003\u01dd\u0003\u01dd\u0003",
+ "\u01dd\u0003\u01dd\u0003\u01dd\u0003\u01dd\u0003\u01dd\u0003\u01dd\u0003",
+ "\u01dd\u0003\u01de\u0003\u01de\u0003\u01de\u0003\u01de\u0003\u01de\u0003",
+ "\u01df\u0003\u01df\u0003\u01df\u0003\u01df\u0003\u01df\u0003\u01df\u0003",
+ "\u01df\u0003\u01df\u0003\u01df\u0003\u01df\u0003\u01df\u0003\u01df\u0003",
+ "\u01e0\u0003\u01e0\u0003\u01e0\u0003\u01e0\u0003\u01e0\u0003\u01e0\u0003",
+ "\u01e0\u0003\u01e0\u0003\u01e1\u0003\u01e1\u0003\u01e1\u0003\u01e1\u0003",
+ "\u01e1\u0003\u01e1\u0003\u01e1\u0003\u01e1\u0003\u01e1\u0003\u01e2\u0003",
+ "\u01e2\u0003\u01e2\u0003\u01e2\u0003\u01e2\u0003\u01e2\u0003\u01e3\u0003",
+ "\u01e3\u0003\u01e3\u0003\u01e3\u0003\u01e3\u0003\u01e3\u0003\u01e4\u0003",
+ "\u01e4\u0003\u01e4\u0003\u01e4\u0003\u01e4\u0003\u01e4\u0003\u01e5\u0003",
+ "\u01e5\u0003\u01e5\u0003\u01e5\u0003\u01e5\u0003\u01e5\u0003\u01e5\u0003",
+ "\u01e5\u0003\u01e6\u0003\u01e6\u0003\u01e6\u0003\u01e6\u0003\u01e6\u0003",
+ "\u01e6\u0003\u01e6\u0003\u01e6\u0003\u01e7\u0003\u01e7\u0003\u01e7\u0003",
+ "\u01e7\u0003\u01e7\u0003\u01e7\u0003\u01e7\u0003\u01e7\u0003\u01e7\u0003",
+ "\u01e7\u0003\u01e7\u0003\u01e7\u0003\u01e7\u0003\u01e7\u0003\u01e7\u0003",
+ "\u01e7\u0003\u01e7\u0003\u01e8\u0003\u01e8\u0003\u01e8\u0003\u01e8\u0003",
+ "\u01e8\u0003\u01e8\u0003\u01e8\u0003\u01e8\u0003\u01e8\u0003\u01e8\u0003",
+ "\u01e9\u0003\u01e9\u0003\u01e9\u0003\u01e9\u0003\u01e9\u0003\u01e9\u0003",
+ "\u01ea\u0003\u01ea\u0003\u01ea\u0003\u01ea\u0003\u01ea\u0003\u01ea\u0003",
+ "\u01ea\u0003\u01ea\u0003\u01ea\u0003\u01ea\u0003\u01ea\u0003\u01ea\u0003",
+ "\u01ea\u0003\u01ea\u0003\u01ea\u0003\u01eb\u0003\u01eb\u0003\u01eb\u0003",
+ "\u01eb\u0003\u01eb\u0003\u01eb\u0003\u01eb\u0003\u01eb\u0003\u01eb\u0003",
+ "\u01eb\u0003\u01eb\u0003\u01eb\u0003\u01eb\u0003\u01eb\u0003\u01ec\u0003",
+ "\u01ec\u0003\u01ec\u0003\u01ec\u0003\u01ec\u0003\u01ec\u0003\u01ec\u0003",
+ "\u01ec\u0003\u01ec\u0003\u01ed\u0003\u01ed\u0003\u01ed\u0003\u01ed\u0003",
+ "\u01ed\u0003\u01ed\u0003\u01ed\u0003\u01ee\u0003\u01ee\u0003\u01ee\u0003",
+ "\u01ee\u0003\u01ee\u0003\u01ee\u0003\u01ee\u0003\u01ee\u0003\u01ee\u0003",
+ "\u01ee\u0003\u01ee\u0003\u01ef\u0003\u01ef\u0003\u01ef\u0003\u01ef\u0003",
+ "\u01ef\u0003\u01ef\u0003\u01ef\u0003\u01f0\u0003\u01f0\u0003\u01f0\u0003",
+ "\u01f0\u0003\u01f0\u0003\u01f0\u0003\u01f0\u0003\u01f0\u0003\u01f0\u0003",
+ "\u01f0\u0003\u01f0\u0003\u01f0\u0003\u01f0\u0003\u01f0\u0003\u01f0\u0003",
+ "\u01f0\u0003\u01f1\u0003\u01f1\u0003\u01f1\u0003\u01f1\u0003\u01f1\u0003",
+ "\u01f1\u0003\u01f1\u0003\u01f1\u0003\u01f1\u0003\u01f1\u0003\u01f1\u0003",
+ "\u01f1\u0003\u01f1\u0003\u01f1\u0003\u01f1\u0003\u01f1\u0003\u01f1\u0003",
+ "\u01f1\u0003\u01f1\u0003\u01f2\u0003\u01f2\u0003\u01f2\u0003\u01f2\u0003",
+ "\u01f2\u0003\u01f2\u0003\u01f2\u0003\u01f2\u0003\u01f2\u0003\u01f2\u0003",
+ "\u01f2\u0003\u01f2\u0003\u01f2\u0003\u01f2\u0003\u01f2\u0003\u01f2\u0003",
+ "\u01f2\u0003\u01f2\u0003\u01f2\u0003\u01f2\u0003\u01f3\u0003\u01f3\u0003",
+ "\u01f3\u0003\u01f3\u0003\u01f3\u0003\u01f3\u0003\u01f3\u0003\u01f3\u0003",
+ "\u01f3\u0003\u01f3\u0003\u01f3\u0003\u01f3\u0003\u01f3\u0003\u01f3\u0003",
+ "\u01f3\u0003\u01f3\u0003\u01f3\u0003\u01f3\u0003\u01f3\u0003\u01f3\u0003",
+ "\u01f3\u0003\u01f3\u0003\u01f3\u0003\u01f4\u0003\u01f4\u0003\u01f4\u0003",
+ "\u01f4\u0003\u01f4\u0003\u01f4\u0003\u01f4\u0003\u01f4\u0003\u01f4\u0003",
+ "\u01f4\u0003\u01f4\u0003\u01f4\u0003\u01f4\u0003\u01f4\u0003\u01f4\u0003",
+ "\u01f4\u0003\u01f4\u0003\u01f4\u0003\u01f4\u0003\u01f4\u0003\u01f4\u0003",
+ "\u01f5\u0003\u01f5\u0003\u01f5\u0003\u01f5\u0003\u01f5\u0003\u01f5\u0003",
+ "\u01f5\u0003\u01f5\u0003\u01f5\u0003\u01f5\u0003\u01f5\u0003\u01f5\u0003",
+ "\u01f5\u0003\u01f5\u0003\u01f5\u0003\u01f5\u0003\u01f5\u0003\u01f5\u0003",
+ "\u01f5\u0003\u01f5\u0003\u01f5\u0003\u01f5\u0003\u01f5\u0003\u01f5\u0003",
+ "\u01f6\u0003\u01f6\u0003\u01f6\u0003\u01f6\u0003\u01f6\u0003\u01f6\u0003",
+ "\u01f6\u0003\u01f6\u0003\u01f6\u0003\u01f6\u0003\u01f6\u0003\u01f6\u0003",
+ "\u01f6\u0003\u01f6\u0003\u01f6\u0003\u01f6\u0003\u01f6\u0003\u01f6\u0003",
+ "\u01f6\u0003\u01f6\u0003\u01f6\u0003\u01f6\u0003\u01f6\u0003\u01f6\u0003",
+ "\u01f6\u0003\u01f6\u0003\u01f6\u0003\u01f6\u0003\u01f7\u0003\u01f7\u0003",
+ "\u01f7\u0003\u01f7\u0003\u01f7\u0003\u01f7\u0003\u01f7\u0003\u01f7\u0003",
+ "\u01f7\u0003\u01f7\u0003\u01f7\u0003\u01f7\u0003\u01f8\u0003\u01f8\u0003",
+ "\u01f8\u0003\u01f8\u0003\u01f8\u0003\u01f8\u0003\u01f9\u0003\u01f9\u0003",
+ "\u01f9\u0003\u01f9\u0003\u01f9\u0003\u01f9\u0003\u01f9\u0003\u01fa\u0003",
+ "\u01fa\u0003\u01fa\u0003\u01fa\u0003\u01fa\u0003\u01fa\u0003\u01fa\u0003",
+ "\u01fa\u0003\u01fa\u0003\u01fa\u0003\u01fa\u0003\u01fa\u0003\u01fa\u0003",
+ "\u01fa\u0003\u01fa\u0003\u01fa\u0003\u01fa\u0003\u01fa\u0003\u01fb\u0003",
+ "\u01fb\u0003\u01fb\u0003\u01fb\u0003\u01fb\u0003\u01fb\u0003\u01fb\u0003",
+ "\u01fb\u0003\u01fc\u0003\u01fc\u0003\u01fc\u0003\u01fc\u0003\u01fc\u0003",
+ "\u01fd\u0003\u01fd\u0003\u01fd\u0003\u01fd\u0003\u01fd\u0003\u01fd\u0003",
+ "\u01fd\u0003\u01fd\u0003\u01fd\u0003\u01fe\u0003\u01fe\u0003\u01fe\u0003",
+ "\u01fe\u0003\u01fe\u0003\u01fe\u0003\u01fe\u0003\u01ff\u0003\u01ff\u0003",
+ "\u01ff\u0003\u01ff\u0003\u01ff\u0003\u01ff\u0003\u01ff\u0003\u0200\u0003",
+ "\u0200\u0003\u0200\u0003\u0200\u0003\u0201\u0003\u0201\u0003\u0201\u0003",
+ "\u0201\u0003\u0201\u0003\u0202\u0003\u0202\u0003\u0202\u0003\u0202\u0003",
+ "\u0202\u0003\u0202\u0003\u0202\u0003\u0202\u0003\u0202\u0003\u0202\u0003",
+ "\u0202\u0003\u0203\u0003\u0203\u0003\u0203\u0003\u0203\u0003\u0203\u0003",
+ "\u0203\u0003\u0203\u0003\u0203\u0003\u0203\u0003\u0203\u0003\u0204\u0003",
+ "\u0204\u0003\u0204\u0003\u0204\u0003\u0204\u0003\u0204\u0003\u0204\u0003",
+ "\u0204\u0003\u0204\u0003\u0205\u0003\u0205\u0003\u0205\u0003\u0205\u0003",
+ "\u0205\u0003\u0205\u0003\u0205\u0003\u0205\u0003\u0205\u0003\u0206\u0003",
+ "\u0206\u0003\u0206\u0003\u0206\u0003\u0206\u0003\u0206\u0003\u0206\u0003",
+ "\u0207\u0003\u0207\u0003\u0207\u0003\u0207\u0003\u0207\u0003\u0207\u0003",
+ "\u0207\u0003\u0207\u0003\u0208\u0003\u0208\u0003\u0208\u0003\u0208\u0003",
+ "\u0208\u0003\u0208\u0003\u0209\u0003\u0209\u0003\u0209\u0003\u0209\u0003",
+ "\u0209\u0003\u0209\u0003\u0209\u0003\u020a\u0003\u020a\u0003\u020a\u0003",
+ "\u020a\u0003\u020a\u0003\u020a\u0003\u020a\u0003\u020b\u0003\u020b\u0003",
+ "\u020b\u0003\u020b\u0003\u020b\u0003\u020b\u0003\u020b\u0003\u020c\u0003",
+ "\u020c\u0003\u020c\u0003\u020c\u0003\u020c\u0003\u020c\u0003\u020d\u0003",
+ "\u020d\u0003\u020d\u0003\u020d\u0003\u020d\u0003\u020e\u0003\u020e\u0003",
+ "\u020e\u0003\u020e\u0003\u020e\u0003\u020e\u0003\u020e\u0003\u020e\u0003",
+ "\u020e\u0003\u020f\u0003\u020f\u0003\u020f\u0003\u020f\u0003\u020f\u0003",
+ "\u020f\u0003\u020f\u0003\u0210\u0003\u0210\u0003\u0210\u0003\u0210\u0003",
+ "\u0210\u0003\u0211\u0003\u0211\u0003\u0211\u0003\u0211\u0003\u0211\u0003",
+ "\u0211\u0003\u0211\u0003\u0212\u0003\u0212\u0003\u0212\u0003\u0212\u0003",
+ "\u0212\u0003\u0212\u0003\u0212\u0003\u0213\u0003\u0213\u0003\u0213\u0003",
+ "\u0213\u0003\u0213\u0003\u0213\u0003\u0213\u0003\u0214\u0003\u0214\u0003",
+ "\u0214\u0003\u0214\u0003\u0214\u0003\u0214\u0003\u0214\u0003\u0214\u0003",
+ "\u0214\u0003\u0214\u0003\u0214\u0003\u0214\u0003\u0214\u0003\u0214\u0003",
+ "\u0214\u0003\u0214\u0003\u0215\u0003\u0215\u0003\u0215\u0003\u0215\u0003",
+ "\u0215\u0003\u0215\u0003\u0215\u0003\u0215\u0003\u0215\u0003\u0215\u0003",
+ "\u0215\u0003\u0215\u0003\u0215\u0003\u0215\u0003\u0215\u0003\u0215\u0003",
+ "\u0215\u0003\u0215\u0003\u0215\u0003\u0216\u0003\u0216\u0003\u0216\u0003",
+ "\u0216\u0003\u0216\u0003\u0216\u0003\u0216\u0003\u0216\u0003\u0216\u0003",
+ "\u0216\u0003\u0216\u0003\u0216\u0003\u0216\u0003\u0216\u0003\u0216\u0003",
+ "\u0216\u0003\u0216\u0003\u0217\u0003\u0217\u0003\u0217\u0003\u0217\u0003",
+ "\u0217\u0003\u0217\u0003\u0217\u0003\u0217\u0003\u0217\u0003\u0217\u0003",
+ "\u0217\u0003\u0217\u0003\u0217\u0003\u0217\u0003\u0217\u0003\u0217\u0003",
+ "\u0217\u0003\u0217\u0003\u0218\u0003\u0218\u0003\u0218\u0003\u0218\u0003",
+ "\u0218\u0003\u0218\u0003\u0218\u0003\u0218\u0003\u0218\u0003\u0218\u0003",
+ "\u0219\u0003\u0219\u0003\u0219\u0003\u0219\u0003\u0219\u0003\u0219\u0003",
+ "\u0219\u0003\u0219\u0003\u0219\u0003\u0219\u0003\u0219\u0003\u0219\u0003",
+ "\u0219\u0003\u021a\u0003\u021a\u0003\u021a\u0003\u021a\u0003\u021a\u0003",
+ "\u021a\u0003\u021a\u0003\u021a\u0003\u021a\u0003\u021a\u0003\u021a\u0003",
+ "\u021b\u0003\u021b\u0003\u021b\u0003\u021b\u0003\u021b\u0003\u021b\u0003",
+ "\u021c\u0003\u021c\u0003\u021c\u0003\u021c\u0003\u021c\u0003\u021c\u0003",
+ "\u021c\u0003\u021d\u0003\u021d\u0003\u021d\u0003\u021d\u0003\u021d\u0003",
+ "\u021d\u0003\u021d\u0003\u021d\u0003\u021d\u0003\u021d\u0003\u021d\u0003",
+ "\u021d\u0003\u021d\u0003\u021d\u0003\u021d\u0003\u021d\u0003\u021d\u0003",
+ "\u021d\u0003\u021e\u0003\u021e\u0003\u021e\u0003\u021e\u0003\u021e\u0003",
+ "\u021e\u0003\u021e\u0003\u021e\u0003\u021e\u0003\u021e\u0003\u021e\u0003",
+ "\u021e\u0003\u021e\u0003\u021e\u0003\u021e\u0003\u021e\u0003\u021e\u0003",
+ "\u021f\u0003\u021f\u0003\u021f\u0003\u021f\u0003\u021f\u0003\u021f\u0003",
+ "\u021f\u0003\u021f\u0003\u021f\u0003\u021f\u0003\u021f\u0003\u021f\u0003",
+ "\u021f\u0003\u021f\u0003\u021f\u0003\u021f\u0003\u021f\u0003\u021f\u0003",
+ "\u021f\u0003\u0220\u0003\u0220\u0003\u0220\u0003\u0220\u0003\u0220\u0003",
+ "\u0220\u0003\u0220\u0003\u0221\u0003\u0221\u0003\u0221\u0003\u0221\u0003",
+ "\u0221\u0003\u0222\u0003\u0222\u0003\u0222\u0003\u0222\u0003\u0222\u0003",
+ "\u0222\u0003\u0222\u0003\u0222\u0003\u0223\u0003\u0223\u0003\u0223\u0003",
+ "\u0223\u0003\u0223\u0003\u0223\u0003\u0223\u0003\u0224\u0003\u0224\u0003",
+ "\u0224\u0003\u0224\u0003\u0224\u0003\u0224\u0003\u0224\u0003\u0225\u0003",
+ "\u0225\u0003\u0225\u0003\u0225\u0003\u0225\u0003\u0225\u0003\u0225\u0003",
+ "\u0225\u0003\u0225\u0003\u0225\u0003\u0225\u0003\u0225\u0003\u0225\u0003",
+ "\u0225\u0003\u0225\u0003\u0225\u0003\u0226\u0003\u0226\u0003\u0226\u0003",
+ "\u0226\u0003\u0226\u0003\u0226\u0003\u0226\u0003\u0226\u0003\u0227\u0003",
+ "\u0227\u0003\u0227\u0003\u0227\u0003\u0227\u0003\u0227\u0003\u0227\u0003",
+ "\u0227\u0003\u0227\u0003\u0227\u0003\u0227\u0003\u0227\u0003\u0227\u0003",
+ "\u0228\u0003\u0228\u0003\u0228\u0003\u0228\u0003\u0228\u0003\u0228\u0003",
+ "\u0228\u0003\u0228\u0003\u0228\u0003\u0228\u0003\u0228\u0003\u0228\u0003",
+ "\u0228\u0003\u0228\u0003\u0229\u0003\u0229\u0003\u0229\u0003\u0229\u0003",
+ "\u0229\u0003\u0229\u0003\u0229\u0003\u0229\u0003\u022a\u0003\u022a\u0003",
+ "\u022a\u0003\u022a\u0003\u022a\u0003\u022a\u0003\u022b\u0003\u022b\u0003",
+ "\u022b\u0003\u022b\u0003\u022b\u0003\u022b\u0003\u022b\u0003\u022b\u0003",
+ "\u022b\u0003\u022c\u0003\u022c\u0003\u022c\u0003\u022c\u0003\u022c\u0003",
+ "\u022c\u0003\u022c\u0003\u022c\u0003\u022c\u0003\u022c\u0003\u022c\u0003",
+ "\u022d\u0003\u022d\u0003\u022d\u0003\u022d\u0003\u022d\u0003\u022d\u0003",
+ "\u022d\u0003\u022d\u0003\u022d\u0003\u022d\u0003\u022d\u0003\u022e\u0003",
+ "\u022e\u0003\u022e\u0003\u022e\u0003\u022e\u0003\u022e\u0003\u022e\u0003",
+ "\u022e\u0003\u022e\u0003\u022e\u0003\u022f\u0003\u022f\u0003\u022f\u0003",
+ "\u022f\u0003\u022f\u0003\u022f\u0003\u022f\u0003\u022f\u0003\u022f\u0003",
+ "\u022f\u0003\u0230\u0003\u0230\u0003\u0230\u0003\u0230\u0003\u0230\u0003",
+ "\u0231\u0003\u0231\u0003\u0231\u0003\u0231\u0003\u0231\u0003\u0231\u0003",
+ "\u0231\u0003\u0231\u0003\u0231\u0003\u0231\u0003\u0231\u0003\u0231\u0003",
+ "\u0232\u0003\u0232\u0003\u0232\u0003\u0232\u0003\u0232\u0003\u0232\u0003",
+ "\u0232\u0003\u0232\u0003\u0232\u0003\u0232\u0003\u0232\u0003\u0232\u0003",
+ "\u0233\u0003\u0233\u0003\u0233\u0003\u0233\u0003\u0233\u0003\u0233\u0003",
+ "\u0233\u0003\u0233\u0003\u0233\u0003\u0233\u0003\u0233\u0003\u0233\u0003",
+ "\u0233\u0003\u0233\u0003\u0234\u0003\u0234\u0003\u0234\u0003\u0234\u0003",
+ "\u0234\u0003\u0234\u0003\u0234\u0003\u0234\u0003\u0234\u0003\u0235\u0003",
+ "\u0235\u0003\u0235\u0003\u0235\u0003\u0235\u0003\u0235\u0003\u0235\u0003",
+ "\u0235\u0003\u0235\u0003\u0236\u0003\u0236\u0003\u0236\u0003\u0236\u0003",
+ "\u0236\u0003\u0236\u0003\u0236\u0003\u0236\u0003\u0236\u0003\u0236\u0003",
+ "\u0237\u0003\u0237\u0003\u0237\u0003\u0237\u0003\u0237\u0003\u0237\u0003",
+ "\u0237\u0003\u0237\u0003\u0237\u0003\u0238\u0003\u0238\u0003\u0238\u0003",
+ "\u0238\u0003\u0238\u0003\u0238\u0003\u0238\u0003\u0238\u0003\u0238\u0003",
+ "\u0238\u0003\u0238\u0003\u0238\u0003\u0238\u0003\u0238\u0003\u0238\u0003",
+ "\u0238\u0003\u0238\u0003\u0239\u0003\u0239\u0003\u0239\u0003\u0239\u0003",
+ "\u0239\u0003\u0239\u0003\u0239\u0003\u0239\u0003\u0239\u0003\u0239\u0003",
+ "\u023a\u0003\u023a\u0003\u023a\u0003\u023a\u0003\u023a\u0003\u023a\u0003",
+ "\u023a\u0003\u023a\u0003\u023b\u0003\u023b\u0003\u023b\u0003\u023b\u0003",
+ "\u023b\u0003\u023b\u0003\u023c\u0003\u023c\u0003\u023c\u0003\u023c\u0003",
+ "\u023c\u0003\u023c\u0003\u023c\u0003\u023c\u0003\u023d\u0003\u023d\u0003",
+ "\u023d\u0003\u023d\u0003\u023d\u0003\u023e\u0003\u023e\u0003\u023e\u0003",
+ "\u023e\u0003\u023e\u0003\u023e\u0003\u023e\u0003\u023e\u0003\u023f\u0003",
+ "\u023f\u0003\u023f\u0003\u023f\u0003\u023f\u0003\u023f\u0003\u023f\u0003",
+ "\u023f\u0003\u023f\u0003\u023f\u0003\u023f\u0003\u023f\u0003\u023f\u0003",
+ "\u023f\u0003\u023f\u0003\u0240\u0003\u0240\u0003\u0240\u0003\u0240\u0003",
+ "\u0240\u0003\u0240\u0003\u0240\u0003\u0240\u0003\u0240\u0003\u0240\u0003",
+ "\u0240\u0003\u0241\u0003\u0241\u0003\u0241\u0003\u0241\u0003\u0241\u0003",
+ "\u0241\u0003\u0242\u0003\u0242\u0003\u0242\u0003\u0242\u0003\u0242\u0003",
+ "\u0242\u0003\u0242\u0003\u0242\u0003\u0242\u0003\u0242\u0003\u0243\u0003",
+ "\u0243\u0003\u0243\u0003\u0243\u0003\u0243\u0003\u0244\u0003\u0244\u0003",
+ "\u0244\u0003\u0244\u0003\u0244\u0003\u0244\u0003\u0244\u0003\u0244\u0003",
+ "\u0245\u0003\u0245\u0003\u0245\u0003\u0245\u0003\u0245\u0003\u0245\u0003",
+ "\u0245\u0003\u0245\u0003\u0246\u0003\u0246\u0003\u0246\u0003\u0246\u0003",
+ "\u0246\u0003\u0247\u0003\u0247\u0003\u0247\u0003\u0247\u0003\u0247\u0003",
+ "\u0247\u0003\u0247\u0003\u0247\u0003\u0247\u0003\u0248\u0003\u0248\u0003",
+ "\u0248\u0003\u0248\u0003\u0248\u0003\u0248\u0003\u0248\u0003\u0248\u0003",
+ "\u0249\u0003\u0249\u0003\u0249\u0003\u0249\u0003\u0249\u0003\u024a\u0003",
+ "\u024a\u0003\u024a\u0003\u024a\u0003\u024a\u0003\u024a\u0003\u024a\u0003",
+ "\u024a\u0003\u024b\u0003\u024b\u0003\u024b\u0003\u024b\u0003\u024b\u0003",
+ "\u024c\u0003\u024c\u0003\u024c\u0003\u024d\u0003\u024d\u0003\u024d\u0003",
+ "\u024d\u0003\u024e\u0003\u024e\u0003\u024e\u0003\u024e\u0003\u024f\u0003",
+ "\u024f\u0003\u024f\u0003\u024f\u0003\u0250\u0003\u0250\u0003\u0250\u0003",
+ "\u0250\u0003\u0251\u0003\u0251\u0003\u0251\u0003\u0251\u0003\u0252\u0003",
+ "\u0252\u0003\u0252\u0003\u0252\u0003\u0252\u0003\u0252\u0003\u0252\u0003",
+ "\u0252\u0003\u0252\u0003\u0253\u0003\u0253\u0003\u0253\u0003\u0253\u0003",
+ "\u0253\u0003\u0253\u0003\u0253\u0003\u0253\u0003\u0254\u0003\u0254\u0003",
+ "\u0254\u0003\u0254\u0003\u0254\u0003\u0254\u0003\u0255\u0003\u0255\u0003",
+ "\u0255\u0003\u0255\u0003\u0256\u0003\u0256\u0003\u0256\u0003\u0256\u0003",
+ "\u0256\u0003\u0257\u0003\u0257\u0003\u0257\u0003\u0257\u0003\u0257\u0003",
+ "\u0257\u0003\u0257\u0003\u0258\u0003\u0258\u0003\u0258\u0003\u0258\u0003",
+ "\u0258\u0003\u0259\u0003\u0259\u0003\u0259\u0003\u0259\u0003\u0259\u0003",
+ "\u0259\u0003\u0259\u0003\u025a\u0003\u025a\u0003\u025a\u0003\u025a\u0003",
+ "\u025a\u0003\u025a\u0003\u025a\u0003\u025a\u0003\u025a\u0003\u025a\u0003",
+ "\u025a\u0003\u025a\u0003\u025b\u0003\u025b\u0003\u025b\u0003\u025b\u0003",
+ "\u025b\u0003\u025b\u0003\u025b\u0003\u025c\u0003\u025c\u0003\u025c\u0003",
+ "\u025c\u0003\u025c\u0003\u025c\u0003\u025c\u0003\u025c\u0003\u025d\u0003",
+ "\u025d\u0003\u025d\u0003\u025d\u0003\u025d\u0003\u025d\u0003\u025d\u0003",
+ "\u025d\u0003\u025e\u0003\u025e\u0003\u025e\u0003\u025e\u0003\u025e\u0003",
+ "\u025f\u0003\u025f\u0003\u025f\u0003\u025f\u0003\u025f\u0003\u025f\u0003",
+ "\u025f\u0003\u025f\u0003\u0260\u0003\u0260\u0003\u0260\u0003\u0260\u0003",
+ "\u0260\u0003\u0260\u0003\u0260\u0003\u0261\u0003\u0261\u0003\u0261\u0003",
+ "\u0261\u0003\u0261\u0003\u0261\u0003\u0261\u0003\u0261\u0003\u0261\u0003",
+ "\u0262\u0003\u0262\u0003\u0262\u0003\u0262\u0003\u0262\u0003\u0262\u0003",
+ "\u0263\u0003\u0263\u0003\u0263\u0003\u0263\u0003\u0263\u0003\u0263\u0003",
+ "\u0263\u0003\u0263\u0003\u0263\u0003\u0263\u0003\u0263\u0003\u0264\u0003",
+ "\u0264\u0003\u0264\u0003\u0264\u0003\u0264\u0003\u0264\u0003\u0264\u0003",
+ "\u0264\u0003\u0264\u0003\u0264\u0003\u0264\u0003\u0264\u0003\u0264\u0003",
+ "\u0264\u0003\u0264\u0003\u0264\u0003\u0264\u0003\u0264\u0003\u0264\u0003",
+ "\u0264\u0003\u0264\u0003\u0264\u0003\u0264\u0003\u0264\u0003\u0264\u0003",
+ "\u0264\u0003\u0264\u0003\u0265\u0003\u0265\u0003\u0265\u0003\u0265\u0003",
+ "\u0265\u0003\u0265\u0003\u0265\u0003\u0265\u0003\u0265\u0003\u0265\u0003",
+ "\u0265\u0003\u0265\u0003\u0266\u0003\u0266\u0003\u0266\u0003\u0266\u0003",
+ "\u0266\u0003\u0266\u0003\u0266\u0003\u0266\u0003\u0266\u0003\u0266\u0003",
+ "\u0266\u0003\u0266\u0003\u0266\u0003\u0267\u0003\u0267\u0003\u0267\u0003",
+ "\u0267\u0003\u0267\u0003\u0267\u0003\u0267\u0003\u0267\u0003\u0267\u0003",
+ "\u0267\u0003\u0267\u0003\u0267\u0003\u0267\u0003\u0268\u0003\u0268\u0003",
+ "\u0268\u0003\u0268\u0003\u0268\u0003\u0268\u0003\u0268\u0003\u0268\u0003",
+ "\u0268\u0003\u0268\u0003\u0268\u0003\u0268\u0003\u0268\u0003\u0268\u0003",
+ "\u0268\u0003\u0268\u0003\u0268\u0003\u0268\u0003\u0268\u0003\u0268\u0003",
+ "\u0268\u0003\u0268\u0003\u0268\u0003\u0268\u0003\u0269\u0003\u0269\u0003",
+ "\u0269\u0003\u0269\u0003\u0269\u0003\u0269\u0003\u0269\u0003\u0269\u0003",
+ "\u0269\u0003\u0269\u0003\u0269\u0003\u0269\u0003\u026a\u0003\u026a\u0003",
+ "\u026a\u0003\u026a\u0003\u026a\u0003\u026a\u0003\u026a\u0003\u026a\u0003",
+ "\u026a\u0003\u026a\u0003\u026a\u0003\u026a\u0003\u026a\u0003\u026a\u0003",
+ "\u026a\u0003\u026a\u0003\u026a\u0003\u026b\u0003\u026b\u0003\u026b\u0003",
+ "\u026b\u0003\u026b\u0003\u026b\u0003\u026b\u0003\u026b\u0003\u026b\u0003",
+ "\u026b\u0003\u026b\u0003\u026b\u0003\u026b\u0003\u026b\u0003\u026b\u0003",
+ "\u026b\u0003\u026b\u0003\u026b\u0003\u026b\u0003\u026b\u0003\u026b\u0003",
+ "\u026c\u0003\u026c\u0003\u026c\u0003\u026c\u0003\u026c\u0003\u026c\u0003",
+ "\u026c\u0003\u026c\u0003\u026c\u0003\u026c\u0003\u026c\u0003\u026c\u0003",
+ "\u026c\u0003\u026c\u0003\u026c\u0003\u026d\u0003\u026d\u0003\u026d\u0003",
+ "\u026d\u0003\u026d\u0003\u026d\u0003\u026d\u0003\u026d\u0003\u026d\u0003",
+ "\u026d\u0003\u026d\u0003\u026d\u0003\u026d\u0003\u026d\u0003\u026e\u0003",
+ "\u026e\u0003\u026e\u0003\u026e\u0003\u026e\u0003\u026e\u0003\u026e\u0003",
+ "\u026e\u0003\u026e\u0003\u026e\u0003\u026e\u0003\u026e\u0003\u026e\u0003",
+ "\u026e\u0003\u026e\u0003\u026e\u0003\u026e\u0003\u026e\u0003\u026e\u0003",
+ "\u026e\u0003\u026e\u0003\u026e\u0003\u026e\u0003\u026e\u0003\u026f\u0003",
+ "\u026f\u0003\u026f\u0003\u026f\u0003\u026f\u0003\u026f\u0003\u026f\u0003",
+ "\u026f\u0003\u026f\u0003\u026f\u0003\u026f\u0003\u026f\u0003\u026f\u0003",
+ "\u026f\u0003\u026f\u0003\u026f\u0003\u026f\u0003\u026f\u0003\u026f\u0003",
+ "\u026f\u0003\u026f\u0003\u026f\u0003\u026f\u0003\u026f\u0003\u0270\u0003",
+ "\u0270\u0003\u0270\u0003\u0270\u0003\u0270\u0003\u0270\u0003\u0270\u0003",
+ "\u0270\u0003\u0270\u0003\u0270\u0003\u0270\u0003\u0270\u0003\u0270\u0003",
+ "\u0270\u0003\u0270\u0003\u0270\u0003\u0271\u0003\u0271\u0003\u0271\u0003",
+ "\u0271\u0003\u0271\u0003\u0271\u0003\u0271\u0003\u0271\u0003\u0271\u0003",
+ "\u0271\u0003\u0271\u0003\u0271\u0003\u0271\u0003\u0271\u0003\u0271\u0003",
+ "\u0271\u0003\u0271\u0003\u0271\u0003\u0271\u0003\u0271\u0003\u0271\u0003",
+ "\u0271\u0003\u0271\u0003\u0271\u0003\u0271\u0003\u0271\u0003\u0271\u0003",
+ "\u0272\u0003\u0272\u0003\u0272\u0003\u0272\u0003\u0272\u0003\u0272\u0003",
+ "\u0272\u0003\u0272\u0003\u0272\u0003\u0272\u0003\u0272\u0003\u0272\u0003",
+ "\u0272\u0003\u0272\u0003\u0272\u0003\u0272\u0003\u0272\u0003\u0272\u0003",
+ "\u0272\u0003\u0272\u0003\u0273\u0003\u0273\u0003\u0273\u0003\u0273\u0003",
+ "\u0273\u0003\u0273\u0003\u0273\u0003\u0273\u0003\u0273\u0003\u0273\u0003",
+ "\u0273\u0003\u0273\u0003\u0273\u0003\u0273\u0003\u0273\u0003\u0273\u0003",
+ "\u0273\u0003\u0273\u0003\u0273\u0003\u0273\u0003\u0273\u0003\u0273\u0003",
+ "\u0273\u0003\u0273\u0003\u0274\u0003\u0274\u0003\u0274\u0003\u0274\u0003",
+ "\u0274\u0003\u0274\u0003\u0274\u0003\u0274\u0003\u0274\u0003\u0274\u0003",
+ "\u0274\u0003\u0274\u0003\u0274\u0003\u0274\u0003\u0274\u0003\u0274\u0003",
+ "\u0274\u0003\u0274\u0003\u0274\u0003\u0274\u0003\u0274\u0003\u0275\u0003",
+ "\u0275\u0003\u0275\u0003\u0275\u0003\u0275\u0003\u0275\u0003\u0275\u0003",
+ "\u0275\u0003\u0275\u0003\u0275\u0003\u0275\u0003\u0275\u0003\u0275\u0003",
+ "\u0275\u0003\u0275\u0003\u0275\u0003\u0275\u0003\u0275\u0003\u0275\u0003",
+ "\u0275\u0003\u0276\u0003\u0276\u0003\u0276\u0003\u0276\u0003\u0276\u0003",
+ "\u0276\u0003\u0276\u0003\u0276\u0003\u0276\u0003\u0276\u0003\u0276\u0003",
+ "\u0277\u0005\u0277\u1e78\n\u0277\u0003\u0277\u0003\u0277\u0003\u0277",
+ "\u0003\u0277\u0003\u0277\u0003\u0277\u0003\u0277\u0003\u0277\u0003\u0277",
+ "\u0003\u0277\u0003\u0277\u0003\u0277\u0003\u0277\u0003\u0277\u0003\u0277",
+ "\u0003\u0277\u0003\u0277\u0003\u0277\u0003\u0277\u0003\u0277\u0003\u0277",
+ "\u0003\u0277\u0003\u0277\u0003\u0277\u0003\u0277\u0005\u0277\u1e93\n",
+ "\u0277\u0003\u0278\u0003\u0278\u0003\u0278\u0003\u0278\u0003\u0278\u0003",
+ "\u0278\u0003\u0278\u0003\u0278\u0003\u0278\u0003\u0278\u0003\u0278\u0003",
+ "\u0278\u0003\u0279\u0003\u0279\u0003\u0279\u0003\u0279\u0003\u0279\u0003",
+ "\u0279\u0003\u0279\u0003\u0279\u0003\u0279\u0003\u0279\u0003\u0279\u0003",
+ "\u0279\u0003\u0279\u0003\u027a\u0003\u027a\u0003\u027a\u0003\u027a\u0003",
+ "\u027a\u0003\u027a\u0003\u027a\u0003\u027a\u0003\u027a\u0003\u027a\u0003",
+ "\u027a\u0003\u027a\u0003\u027a\u0003\u027a\u0003\u027a\u0003\u027a\u0003",
+ "\u027a\u0003\u027a\u0003\u027a\u0003\u027a\u0003\u027a\u0003\u027a\u0003",
+ "\u027a\u0003\u027b\u0003\u027b\u0003\u027b\u0003\u027b\u0003\u027b\u0003",
+ "\u027b\u0003\u027b\u0003\u027b\u0003\u027b\u0003\u027b\u0003\u027b\u0003",
+ "\u027b\u0003\u027b\u0003\u027b\u0003\u027b\u0003\u027b\u0003\u027b\u0003",
+ "\u027b\u0003\u027b\u0003\u027b\u0003\u027b\u0003\u027b\u0003\u027b\u0003",
+ "\u027c\u0003\u027c\u0003\u027c\u0003\u027c\u0003\u027c\u0003\u027c\u0003",
+ "\u027c\u0003\u027c\u0003\u027c\u0003\u027c\u0003\u027c\u0003\u027c\u0003",
+ "\u027c\u0003\u027c\u0003\u027c\u0003\u027c\u0003\u027c\u0003\u027c\u0003",
+ "\u027c\u0003\u027c\u0003\u027d\u0003\u027d\u0003\u027d\u0003\u027d\u0003",
+ "\u027d\u0003\u027d\u0003\u027d\u0003\u027d\u0003\u027d\u0003\u027d\u0003",
+ "\u027d\u0003\u027d\u0003\u027d\u0003\u027d\u0003\u027d\u0003\u027d\u0003",
+ "\u027d\u0003\u027e\u0003\u027e\u0003\u027e\u0003\u027e\u0003\u027e\u0003",
+ "\u027e\u0003\u027e\u0003\u027e\u0003\u027e\u0003\u027f\u0003\u027f\u0003",
+ "\u027f\u0003\u027f\u0003\u027f\u0003\u027f\u0003\u0280\u0003\u0280\u0003",
+ "\u0280\u0003\u0280\u0003\u0280\u0003\u0281\u0003\u0281\u0003\u0281\u0003",
+ "\u0281\u0003\u0281\u0003\u0281\u0003\u0281\u0003\u0282\u0003\u0282\u0003",
+ "\u0282\u0003\u0282\u0003\u0282\u0003\u0282\u0003\u0282\u0003\u0283\u0003",
+ "\u0283\u0003\u0283\u0003\u0283\u0003\u0283\u0003\u0283\u0003\u0283\u0003",
+ "\u0284\u0003\u0284\u0003\u0284\u0003\u0284\u0003\u0284\u0003\u0284\u0003",
+ "\u0284\u0003\u0285\u0003\u0285\u0003\u0285\u0003\u0285\u0003\u0285\u0003",
+ "\u0285\u0003\u0286\u0003\u0286\u0003\u0286\u0003\u0286\u0003\u0286\u0003",
+ "\u0286\u0003\u0287\u0003\u0287\u0003\u0287\u0003\u0287\u0003\u0287\u0003",
+ "\u0287\u0003\u0288\u0003\u0288\u0003\u0288\u0003\u0288\u0003\u0288\u0003",
+ "\u0288\u0003\u0289\u0003\u0289\u0003\u0289\u0003\u0289\u0003\u0289\u0003",
+ "\u028a\u0003\u028a\u0003\u028a\u0003\u028a\u0003\u028a\u0003\u028a\u0003",
+ "\u028a\u0003\u028a\u0003\u028b\u0003\u028b\u0003\u028b\u0003\u028b\u0003",
+ "\u028b\u0003\u028b\u0003\u028c\u0003\u028c\u0003\u028c\u0003\u028c\u0003",
+ "\u028c\u0003\u028c\u0003\u028c\u0003\u028d\u0003\u028d\u0003\u028d\u0003",
+ "\u028d\u0003\u028e\u0003\u028e\u0003\u028e\u0003\u028e\u0003\u028e\u0003",
+ "\u028e\u0003\u028e\u0003\u028e\u0003\u028f\u0003\u028f\u0003\u028f\u0003",
+ "\u028f\u0003\u028f\u0003\u028f\u0003\u0290\u0003\u0290\u0003\u0290\u0003",
+ "\u0290\u0003\u0290\u0003\u0290\u0003\u0290\u0003\u0291\u0003\u0291\u0003",
+ "\u0291\u0003\u0291\u0003\u0292\u0003\u0292\u0003\u0292\u0003\u0292\u0003",
+ "\u0292\u0003\u0292\u0003\u0292\u0003\u0292\u0003\u0293\u0003\u0293\u0003",
+ "\u0293\u0003\u0293\u0003\u0293\u0003\u0293\u0003\u0294\u0003\u0294\u0003",
+ "\u0294\u0003\u0294\u0003\u0294\u0003\u0294\u0003\u0295\u0003\u0295\u0003",
+ "\u0295\u0003\u0295\u0003\u0295\u0003\u0295\u0003\u0295\u0003\u0296\u0003",
+ "\u0296\u0003\u0296\u0003\u0296\u0003\u0296\u0003\u0296\u0003\u0296\u0003",
+ "\u0297\u0003\u0297\u0003\u0297\u0003\u0297\u0003\u0297\u0003\u0297\u0003",
+ "\u0297\u0003\u0298\u0003\u0298\u0003\u0298\u0003\u0298\u0003\u0298\u0003",
+ "\u0298\u0003\u0298\u0003\u0299\u0003\u0299\u0003\u0299\u0003\u0299\u0003",
+ "\u0299\u0003\u0299\u0003\u029a\u0003\u029a\u0003\u029a\u0003\u029a\u0003",
+ "\u029a\u0003\u029a\u0003\u029a\u0003\u029a\u0003\u029a\u0003\u029b\u0003",
+ "\u029b\u0003\u029b\u0003\u029b\u0003\u029b\u0003\u029c\u0003\u029c\u0003",
+ "\u029c\u0003\u029c\u0003\u029c\u0003\u029d\u0003\u029d\u0003\u029d\u0003",
+ "\u029d\u0003\u029d\u0003\u029d\u0003\u029d\u0003\u029e\u0003\u029e\u0003",
+ "\u029e\u0003\u029e\u0003\u029e\u0003\u029f\u0003\u029f\u0003\u029f\u0003",
+ "\u029f\u0003\u029f\u0003\u02a0\u0003\u02a0\u0003\u02a0\u0003\u02a0\u0003",
+ "\u02a0\u0003\u02a0\u0003\u02a1\u0003\u02a1\u0003\u02a1\u0003\u02a1\u0003",
+ "\u02a1\u0003\u02a1\u0003\u02a1\u0003\u02a1\u0003\u02a2\u0003\u02a2\u0003",
+ "\u02a2\u0003\u02a2\u0003\u02a2\u0003\u02a2\u0003\u02a3\u0003\u02a3\u0003",
+ "\u02a3\u0003\u02a3\u0003\u02a3\u0003\u02a4\u0003\u02a4\u0003\u02a4\u0003",
+ "\u02a4\u0003\u02a4\u0003\u02a4\u0003\u02a4\u0003\u02a4\u0003\u02a5\u0003",
+ "\u02a5\u0003\u02a5\u0003\u02a5\u0003\u02a5\u0003\u02a5\u0003\u02a5\u0003",
+ "\u02a5\u0003\u02a6\u0003\u02a6\u0003\u02a6\u0003\u02a6\u0003\u02a6\u0003",
+ "\u02a6\u0003\u02a6\u0003\u02a6\u0003\u02a7\u0003\u02a7\u0003\u02a7\u0003",
+ "\u02a7\u0003\u02a7\u0003\u02a7\u0003\u02a7\u0003\u02a7\u0003\u02a7\u0003",
+ "\u02a7\u0003\u02a8\u0003\u02a8\u0003\u02a8\u0003\u02a8\u0003\u02a9\u0003",
+ "\u02a9\u0003\u02a9\u0003\u02a9\u0003\u02a9\u0003\u02a9\u0003\u02a9\u0003",
+ "\u02a9\u0003\u02a9\u0003\u02a9\u0003\u02aa\u0003\u02aa\u0003\u02aa\u0003",
+ "\u02aa\u0003\u02aa\u0003\u02aa\u0003\u02aa\u0003\u02ab\u0003\u02ab\u0003",
+ "\u02ab\u0003\u02ab\u0003\u02ab\u0003\u02ab\u0003\u02ab\u0003\u02ac\u0003",
+ "\u02ac\u0003\u02ac\u0003\u02ac\u0003\u02ac\u0003\u02ac\u0003\u02ac\u0003",
+ "\u02ac\u0003\u02ac\u0003\u02ac\u0003\u02ac\u0003\u02ad\u0003\u02ad\u0003",
+ "\u02ad\u0003\u02ad\u0003\u02ad\u0003\u02ad\u0003\u02ad\u0003\u02ae\u0003",
+ "\u02ae\u0003\u02ae\u0003\u02ae\u0003\u02af\u0003\u02af\u0003\u02af\u0003",
+ "\u02af\u0003\u02af\u0003\u02af\u0003\u02af\u0003\u02af\u0003\u02af\u0003",
+ "\u02af\u0003\u02af\u0003\u02b0\u0003\u02b0\u0003\u02b0\u0003\u02b0\u0003",
+ "\u02b0\u0003\u02b0\u0003\u02b0\u0003\u02b0\u0003\u02b0\u0003\u02b0\u0003",
+ "\u02b0\u0003\u02b0\u0003\u02b0\u0003\u02b0\u0003\u02b0\u0003\u02b0\u0003",
+ "\u02b0\u0003\u02b0\u0003\u02b0\u0003\u02b1\u0003\u02b1\u0003\u02b1\u0003",
+ "\u02b1\u0003\u02b1\u0003\u02b1\u0003\u02b1\u0003\u02b2\u0003\u02b2\u0003",
+ "\u02b2\u0003\u02b2\u0003\u02b2\u0003\u02b2\u0003\u02b2\u0003\u02b2\u0003",
+ "\u02b2\u0003\u02b2\u0003\u02b2\u0003\u02b3\u0003\u02b3\u0003\u02b3\u0003",
+ "\u02b3\u0003\u02b3\u0003\u02b3\u0003\u02b3\u0003\u02b3\u0003\u02b3\u0003",
+ "\u02b3\u0003\u02b4\u0003\u02b4\u0003\u02b4\u0003\u02b4\u0003\u02b4\u0003",
+ "\u02b4\u0003\u02b4\u0003\u02b4\u0003\u02b4\u0003\u02b4\u0003\u02b4\u0003",
+ "\u02b4\u0003\u02b5\u0003\u02b5\u0003\u02b5\u0003\u02b5\u0003\u02b5\u0003",
+ "\u02b5\u0003\u02b5\u0003\u02b5\u0003\u02b5\u0003\u02b5\u0003\u02b5\u0003",
+ "\u02b5\u0003\u02b5\u0003\u02b6\u0003\u02b6\u0003\u02b6\u0003\u02b6\u0003",
+ "\u02b6\u0003\u02b6\u0003\u02b6\u0003\u02b6\u0003\u02b6\u0003\u02b6\u0003",
+ "\u02b6\u0003\u02b6\u0003\u02b6\u0003\u02b6\u0003\u02b6\u0003\u02b6\u0003",
+ "\u02b6\u0003\u02b6\u0003\u02b6\u0003\u02b7\u0003\u02b7\u0003\u02b7\u0003",
+ "\u02b7\u0003\u02b7\u0003\u02b7\u0003\u02b7\u0003\u02b7\u0003\u02b7\u0003",
+ "\u02b7\u0003\u02b7\u0003\u02b7\u0003\u02b7\u0003\u02b7\u0003\u02b7\u0003",
+ "\u02b8\u0003\u02b8\u0003\u02b8\u0003\u02b8\u0003\u02b8\u0003\u02b8\u0003",
+ "\u02b8\u0003\u02b8\u0003\u02b8\u0003\u02b9\u0003\u02b9\u0003\u02b9\u0003",
+ "\u02b9\u0003\u02b9\u0003\u02b9\u0003\u02b9\u0003\u02b9\u0003\u02b9\u0003",
+ "\u02b9\u0003\u02b9\u0003\u02ba\u0003\u02ba\u0003\u02ba\u0003\u02ba\u0003",
+ "\u02ba\u0003\u02ba\u0003\u02ba\u0003\u02ba\u0003\u02ba\u0003\u02ba\u0003",
+ "\u02ba\u0003\u02ba\u0003\u02ba\u0003\u02ba\u0003\u02ba\u0003\u02ba\u0003",
+ "\u02bb\u0003\u02bb\u0003\u02bb\u0003\u02bb\u0003\u02bb\u0003\u02bb\u0003",
+ "\u02bb\u0003\u02bb\u0003\u02bb\u0003\u02bb\u0003\u02bb\u0003\u02bc\u0003",
+ "\u02bc\u0003\u02bc\u0003\u02bc\u0003\u02bc\u0003\u02bc\u0003\u02bc\u0003",
+ "\u02bc\u0003\u02bc\u0003\u02bc\u0003\u02bc\u0003\u02bc\u0003\u02bc\u0003",
+ "\u02bd\u0003\u02bd\u0003\u02bd\u0003\u02bd\u0003\u02bd\u0003\u02bd\u0003",
+ "\u02be\u0003\u02be\u0003\u02be\u0003\u02be\u0003\u02be\u0003\u02be\u0003",
+ "\u02be\u0003\u02be\u0003\u02bf\u0003\u02bf\u0003\u02bf\u0003\u02bf\u0003",
+ "\u02c0\u0003\u02c0\u0003\u02c0\u0003\u02c0\u0003\u02c0\u0003\u02c1\u0003",
+ "\u02c1\u0003\u02c1\u0003\u02c1\u0003\u02c1\u0003\u02c1\u0003\u02c1\u0003",
+ "\u02c1\u0003\u02c2\u0003\u02c2\u0003\u02c2\u0003\u02c2\u0003\u02c2\u0003",
+ "\u02c2\u0003\u02c2\u0003\u02c2\u0003\u02c3\u0003\u02c3\u0003\u02c3\u0003",
+ "\u02c3\u0003\u02c3\u0003\u02c3\u0003\u02c3\u0003\u02c3\u0003\u02c3\u0003",
+ "\u02c3\u0003\u02c3\u0003\u02c3\u0003\u02c4\u0003\u02c4\u0003\u02c4\u0003",
+ "\u02c4\u0003\u02c4\u0003\u02c4\u0003\u02c4\u0003\u02c4\u0003\u02c4\u0003",
+ "\u02c4\u0003\u02c4\u0003\u02c4\u0003\u02c5\u0003\u02c5\u0003\u02c5\u0003",
+ "\u02c5\u0003\u02c5\u0003\u02c6\u0003\u02c6\u0003\u02c6\u0003\u02c6\u0003",
+ "\u02c6\u0003\u02c6\u0003\u02c6\u0003\u02c6\u0003\u02c6\u0003\u02c7\u0003",
+ "\u02c7\u0003\u02c7\u0003\u02c7\u0003\u02c7\u0003\u02c8\u0003\u02c8\u0003",
+ "\u02c8\u0003\u02c8\u0003\u02c8\u0003\u02c8\u0003\u02c8\u0003\u02c9\u0003",
+ "\u02c9\u0003\u02c9\u0003\u02c9\u0003\u02c9\u0003\u02c9\u0003\u02ca\u0003",
+ "\u02ca\u0003\u02ca\u0003\u02ca\u0003\u02ca\u0003\u02ca\u0003\u02cb\u0003",
+ "\u02cb\u0003\u02cb\u0003\u02cb\u0003\u02cb\u0003\u02cb\u0003\u02cb\u0003",
+ "\u02cb\u0003\u02cb\u0003\u02cb\u0003\u02cb\u0003\u02cb\u0003\u02cb\u0003",
+ "\u02cb\u0003\u02cb\u0003\u02cb\u0003\u02cb\u0003\u02cb\u0003\u02cb\u0003",
+ "\u02cc\u0003\u02cc\u0003\u02cc\u0003\u02cc\u0003\u02cc\u0003\u02cc\u0003",
+ "\u02cc\u0003\u02cc\u0003\u02cc\u0003\u02cc\u0003\u02cc\u0003\u02cc\u0003",
+ "\u02cc\u0003\u02cc\u0003\u02cc\u0003\u02cc\u0003\u02cc\u0003\u02cc\u0003",
+ "\u02cd\u0003\u02cd\u0003\u02cd\u0003\u02cd\u0003\u02cd\u0003\u02cd\u0003",
+ "\u02cd\u0003\u02cd\u0003\u02cd\u0003\u02cd\u0003\u02cd\u0003\u02cd\u0003",
+ "\u02cd\u0003\u02cd\u0003\u02cd\u0003\u02cd\u0003\u02cd\u0003\u02cd\u0003",
+ "\u02cd\u0003\u02ce\u0003\u02ce\u0003\u02ce\u0003\u02ce\u0003\u02ce\u0003",
+ "\u02ce\u0003\u02ce\u0003\u02ce\u0003\u02ce\u0003\u02ce\u0003\u02ce\u0003",
+ "\u02ce\u0003\u02ce\u0003\u02ce\u0003\u02ce\u0003\u02ce\u0003\u02cf\u0003",
+ "\u02cf\u0003\u02cf\u0003\u02cf\u0003\u02cf\u0003\u02cf\u0003\u02cf\u0003",
+ "\u02cf\u0003\u02cf\u0003\u02cf\u0003\u02cf\u0003\u02cf\u0003\u02cf\u0003",
+ "\u02cf\u0003\u02cf\u0003\u02cf\u0003\u02cf\u0003\u02cf\u0003\u02d0\u0003",
+ "\u02d0\u0003\u02d0\u0003\u02d0\u0003\u02d0\u0003\u02d1\u0003\u02d1\u0003",
+ "\u02d1\u0003\u02d1\u0003\u02d1\u0003\u02d1\u0003\u02d2\u0003\u02d2\u0003",
+ "\u02d2\u0003\u02d2\u0003\u02d2\u0003\u02d2\u0003\u02d2\u0003\u02d2\u0003",
+ "\u02d2\u0003\u02d2\u0003\u02d3\u0003\u02d3\u0003\u02d3\u0003\u02d3\u0003",
+ "\u02d4\u0003\u02d4\u0003\u02d4\u0003\u02d4\u0003\u02d4\u0003\u02d4\u0003",
+ "\u02d4\u0003\u02d4\u0003\u02d4\u0003\u02d4\u0003\u02d5\u0003\u02d5\u0003",
+ "\u02d5\u0003\u02d5\u0003\u02d5\u0003\u02d5\u0003\u02d5\u0003\u02d5\u0003",
+ "\u02d5\u0003\u02d5\u0003\u02d5\u0003\u02d6\u0003\u02d6\u0003\u02d6\u0003",
+ "\u02d6\u0003\u02d6\u0003\u02d6\u0003\u02d6\u0003\u02d7\u0003\u02d7\u0003",
+ "\u02d7\u0003\u02d7\u0003\u02d7\u0003\u02d7\u0003\u02d7\u0003\u02d7\u0003",
+ "\u02d7\u0003\u02d7\u0003\u02d7\u0003\u02d7\u0003\u02d7\u0003\u02d8\u0003",
+ "\u02d8\u0003\u02d8\u0003\u02d8\u0003\u02d8\u0003\u02d9\u0003\u02d9\u0003",
+ "\u02d9\u0003\u02d9\u0003\u02d9\u0003\u02d9\u0003\u02d9\u0003\u02d9\u0003",
+ "\u02da\u0003\u02da\u0003\u02da\u0003\u02da\u0003\u02da\u0003\u02da\u0003",
+ "\u02da\u0003\u02da\u0003\u02da\u0003\u02db\u0003\u02db\u0003\u02db\u0003",
+ "\u02db\u0003\u02db\u0003\u02db\u0003\u02db\u0003\u02db\u0003\u02db\u0003",
+ "\u02db\u0003\u02db\u0003\u02db\u0003\u02db\u0003\u02db\u0003\u02db\u0003",
+ "\u02db\u0003\u02db\u0003\u02dc\u0003\u02dc\u0003\u02dc\u0003\u02dc\u0003",
+ "\u02dc\u0003\u02dc\u0003\u02dc\u0003\u02dc\u0003\u02dd\u0003\u02dd\u0003",
+ "\u02dd\u0003\u02dd\u0003\u02dd\u0003\u02dd\u0003\u02dd\u0003\u02dd\u0003",
+ "\u02dd\u0003\u02dd\u0003\u02dd\u0003\u02dd\u0003\u02de\u0003\u02de\u0003",
+ "\u02de\u0003\u02de\u0003\u02de\u0003\u02de\u0003\u02de\u0003\u02de\u0003",
+ "\u02de\u0003\u02de\u0003\u02de\u0003\u02de\u0003\u02de\u0003\u02df\u0003",
+ "\u02df\u0003\u02df\u0003\u02df\u0003\u02df\u0003\u02df\u0003\u02df\u0003",
+ "\u02df\u0003\u02df\u0003\u02df\u0003\u02e0\u0003\u02e0\u0003\u02e0\u0003",
+ "\u02e0\u0003\u02e0\u0003\u02e0\u0003\u02e0\u0003\u02e0\u0003\u02e0\u0003",
+ "\u02e1\u0003\u02e1\u0003\u02e1\u0003\u02e1\u0003\u02e1\u0003\u02e1\u0003",
+ "\u02e1\u0003\u02e2\u0003\u02e2\u0003\u02e2\u0003\u02e2\u0003\u02e2\u0003",
+ "\u02e2\u0003\u02e2\u0003\u02e2\u0003\u02e2\u0003\u02e2\u0003\u02e3\u0003",
+ "\u02e3\u0003\u02e3\u0003\u02e3\u0003\u02e3\u0003\u02e3\u0003\u02e3\u0003",
+ "\u02e3\u0003\u02e3\u0003\u02e3\u0003\u02e3\u0003\u02e3\u0003\u02e3\u0003",
+ "\u02e3\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003",
+ "\u02e5\u0003\u02e5\u0003\u02e5\u0003\u02e5\u0003\u02e5\u0003\u02e5\u0003",
+ "\u02e5\u0003\u02e5\u0003\u02e5\u0003\u02e5\u0003\u02e5\u0003\u02e6\u0003",
+ "\u02e6\u0003\u02e6\u0003\u02e6\u0003\u02e7\u0003\u02e7\u0003\u02e7\u0003",
+ "\u02e7\u0003\u02e8\u0003\u02e8\u0003\u02e8\u0003\u02e8\u0003\u02e8\u0003",
+ "\u02e8\u0003\u02e9\u0003\u02e9\u0003\u02e9\u0003\u02e9\u0003\u02e9\u0003",
+ "\u02e9\u0003\u02e9\u0003\u02e9\u0003\u02e9\u0003\u02e9\u0003\u02e9\u0003",
+ "\u02e9\u0003\u02e9\u0003\u02e9\u0003\u02e9\u0003\u02e9\u0003\u02e9\u0003",
+ "\u02e9\u0003\u02e9\u0003\u02e9\u0003\u02e9\u0003\u02e9\u0003\u02e9\u0003",
+ "\u02e9\u0003\u02e9\u0003\u02e9\u0003\u02e9\u0003\u02ea\u0003\u02ea\u0003",
+ "\u02ea\u0003\u02ea\u0003\u02ea\u0003\u02ea\u0003\u02ea\u0003\u02ea\u0003",
+ "\u02ea\u0003\u02ea\u0003\u02ea\u0003\u02ea\u0003\u02ea\u0003\u02ea\u0003",
+ "\u02ea\u0003\u02ea\u0003\u02ea\u0003\u02ea\u0003\u02ea\u0003\u02ea\u0003",
+ "\u02ea\u0003\u02ea\u0003\u02ea\u0003\u02ea\u0003\u02ea\u0003\u02ea\u0003",
+ "\u02eb\u0003\u02eb\u0003\u02eb\u0003\u02eb\u0003\u02eb\u0003\u02eb\u0003",
+ "\u02eb\u0003\u02eb\u0003\u02eb\u0003\u02eb\u0003\u02eb\u0003\u02eb\u0003",
+ "\u02eb\u0003\u02eb\u0003\u02eb\u0003\u02eb\u0003\u02eb\u0003\u02eb\u0003",
+ "\u02eb\u0003\u02eb\u0003\u02eb\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003",
+ "\u02ec\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003",
+ "\u02ec\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003\u02ed\u0003",
+ "\u02ed\u0003\u02ed\u0003\u02ed\u0003\u02ed\u0003\u02ed\u0003\u02ed\u0003",
+ "\u02ed\u0003\u02ee\u0003\u02ee\u0003\u02ee\u0003\u02ee\u0003\u02ee\u0003",
+ "\u02ee\u0003\u02ee\u0003\u02ee\u0003\u02ee\u0003\u02ef\u0003\u02ef\u0003",
+ "\u02ef\u0003\u02ef\u0003\u02ef\u0003\u02ef\u0003\u02ef\u0003\u02ef\u0003",
+ "\u02ef\u0003\u02ef\u0003\u02ef\u0003\u02ef\u0003\u02f0\u0003\u02f0\u0003",
+ "\u02f0\u0003\u02f0\u0003\u02f0\u0003\u02f0\u0003\u02f0\u0003\u02f0\u0003",
+ "\u02f1\u0003\u02f1\u0003\u02f1\u0003\u02f1\u0003\u02f1\u0003\u02f1\u0003",
+ "\u02f1\u0003\u02f1\u0003\u02f1\u0003\u02f1\u0003\u02f1\u0003\u02f2\u0003",
+ "\u02f2\u0003\u02f2\u0003\u02f2\u0003\u02f2\u0003\u02f2\u0003\u02f2\u0003",
+ "\u02f2\u0003\u02f2\u0003\u02f2\u0003\u02f3\u0003\u02f3\u0003\u02f3\u0003",
+ "\u02f3\u0003\u02f3\u0003\u02f3\u0003\u02f3\u0003\u02f3\u0003\u02f3\u0003",
+ "\u02f3\u0003\u02f4\u0003\u02f4\u0003\u02f4\u0003\u02f4\u0003\u02f4\u0003",
+ "\u02f4\u0003\u02f4\u0003\u02f5\u0003\u02f5\u0003\u02f5\u0003\u02f5\u0003",
+ "\u02f5\u0003\u02f5\u0003\u02f5\u0003\u02f5\u0003\u02f6\u0003\u02f6\u0003",
+ "\u02f6\u0003\u02f6\u0003\u02f6\u0003\u02f6\u0003\u02f6\u0003\u02f6\u0003",
+ "\u02f6\u0003\u02f6\u0003\u02f6\u0003\u02f6\u0003\u02f7\u0003\u02f7\u0003",
+ "\u02f7\u0003\u02f7\u0003\u02f7\u0003\u02f7\u0003\u02f7\u0003\u02f7\u0003",
+ "\u02f7\u0003\u02f7\u0003\u02f7\u0003\u02f7\u0003\u02f8\u0003\u02f8\u0003",
+ "\u02f8\u0003\u02f8\u0003\u02f8\u0003\u02f8\u0003\u02f8\u0003\u02f8\u0003",
+ "\u02f8\u0003\u02f8\u0003\u02f9\u0003\u02f9\u0003\u02f9\u0003\u02f9\u0003",
+ "\u02f9\u0003\u02f9\u0003\u02f9\u0003\u02f9\u0003\u02f9\u0003\u02fa\u0003",
+ "\u02fa\u0003\u02fa\u0003\u02fa\u0003\u02fb\u0003\u02fb\u0003\u02fb\u0003",
+ "\u02fb\u0003\u02fb\u0003\u02fb\u0003\u02fb\u0003\u02fc\u0003\u02fc\u0003",
+ "\u02fc\u0003\u02fc\u0003\u02fc\u0003\u02fc\u0003\u02fc\u0003\u02fc\u0003",
+ "\u02fd\u0003\u02fd\u0003\u02fd\u0003\u02fd\u0003\u02fd\u0003\u02fd\u0003",
+ "\u02fd\u0003\u02fd\u0003\u02fd\u0003\u02fe\u0003\u02fe\u0003\u02fe\u0003",
+ "\u02fe\u0003\u02fe\u0003\u02fe\u0003\u02fe\u0003\u02fe\u0003\u02fe\u0003",
+ "\u02ff\u0003\u02ff\u0003\u02ff\u0003\u02ff\u0003\u02ff\u0003\u02ff\u0003",
+ "\u02ff\u0003\u0300\u0003\u0300\u0003\u0300\u0003\u0300\u0003\u0301\u0003",
+ "\u0301\u0003\u0301\u0003\u0301\u0003\u0301\u0003\u0301\u0003\u0301\u0003",
+ "\u0301\u0003\u0301\u0003\u0301\u0003\u0301\u0003\u0302\u0003\u0302\u0003",
+ "\u0302\u0003\u0302\u0003\u0302\u0003\u0302\u0003\u0302\u0003\u0302\u0003",
+ "\u0302\u0003\u0302\u0003\u0302\u0003\u0302\u0003\u0302\u0003\u0303\u0003",
+ "\u0303\u0003\u0303\u0003\u0303\u0003\u0303\u0003\u0303\u0003\u0303\u0003",
+ "\u0303\u0003\u0303\u0003\u0303\u0003\u0303\u0003\u0303\u0003\u0303\u0003",
+ "\u0304\u0003\u0304\u0003\u0304\u0003\u0304\u0003\u0304\u0003\u0304\u0003",
+ "\u0305\u0003\u0305\u0003\u0305\u0003\u0305\u0003\u0305\u0003\u0305\u0003",
+ "\u0305\u0003\u0305\u0003\u0305\u0003\u0305\u0003\u0305\u0003\u0305\u0003",
+ "\u0306\u0003\u0306\u0003\u0306\u0003\u0306\u0003\u0306\u0003\u0306\u0003",
+ "\u0307\u0003\u0307\u0003\u0307\u0003\u0307\u0003\u0307\u0003\u0307\u0003",
+ "\u0307\u0003\u0308\u0003\u0308\u0003\u0308\u0003\u0308\u0003\u0308\u0003",
+ "\u0308\u0003\u0308\u0003\u0308\u0003\u0308\u0003\u0308\u0003\u0308\u0003",
+ "\u0309\u0003\u0309\u0003\u0309\u0003\u0309\u0003\u0309\u0003\u0309\u0003",
+ "\u0309\u0003\u0309\u0003\u0309\u0003\u0309\u0003\u0309\u0003\u0309\u0003",
+ "\u030a\u0003\u030a\u0003\u030a\u0003\u030a\u0003\u030a\u0003\u030a\u0003",
+ "\u030a\u0003\u030a\u0003\u030a\u0003\u030a\u0003\u030b\u0003\u030b\u0003",
+ "\u030b\u0003\u030b\u0003\u030b\u0003\u030b\u0003\u030b\u0003\u030b\u0003",
+ "\u030b\u0003\u030b\u0003\u030b\u0003\u030b\u0003\u030b\u0003\u030b\u0003",
+ "\u030c\u0003\u030c\u0003\u030c\u0003\u030c\u0003\u030c\u0003\u030c\u0003",
+ "\u030c\u0003\u030c\u0003\u030c\u0003\u030c\u0003\u030c\u0003\u030c\u0003",
+ "\u030c\u0003\u030c\u0003\u030c\u0003\u030c\u0003\u030c\u0003\u030d\u0003",
+ "\u030d\u0003\u030d\u0003\u030d\u0003\u030d\u0003\u030d\u0003\u030d\u0003",
+ "\u030d\u0003\u030d\u0003\u030d\u0003\u030d\u0003\u030d\u0003\u030d\u0003",
+ "\u030d\u0003\u030d\u0003\u030d\u0003\u030e\u0003\u030e\u0003\u030e\u0003",
+ "\u030e\u0003\u030e\u0003\u030e\u0003\u030e\u0003\u030e\u0003\u030e\u0003",
+ "\u030e\u0003\u030e\u0003\u030e\u0003\u030e\u0003\u030e\u0003\u030e\u0003",
+ "\u030e\u0003\u030e\u0003\u030e\u0003\u030e\u0003\u030e\u0003\u030e\u0003",
+ "\u030e\u0003\u030e\u0003\u030e\u0003\u030e\u0003\u030e\u0003\u030e\u0003",
+ "\u030f\u0003\u030f\u0003\u030f\u0003\u030f\u0003\u030f\u0003\u030f\u0003",
+ "\u030f\u0003\u030f\u0003\u030f\u0003\u030f\u0003\u030f\u0003\u030f\u0003",
+ "\u030f\u0003\u030f\u0003\u030f\u0003\u030f\u0003\u030f\u0003\u030f\u0003",
+ "\u030f\u0003\u030f\u0003\u030f\u0003\u030f\u0003\u030f\u0003\u030f\u0003",
+ "\u030f\u0003\u030f\u0003\u0310\u0003\u0310\u0003\u0310\u0003\u0310\u0003",
+ "\u0310\u0003\u0310\u0003\u0310\u0003\u0310\u0003\u0310\u0003\u0310\u0003",
+ "\u0310\u0003\u0310\u0003\u0310\u0003\u0310\u0003\u0310\u0003\u0310\u0003",
+ "\u0310\u0003\u0311\u0003\u0311\u0003\u0311\u0003\u0311\u0003\u0311\u0003",
+ "\u0311\u0003\u0311\u0003\u0311\u0003\u0311\u0003\u0311\u0003\u0311\u0003",
+ "\u0311\u0003\u0311\u0003\u0311\u0003\u0311\u0003\u0311\u0003\u0312\u0003",
+ "\u0312\u0003\u0312\u0003\u0312\u0003\u0312\u0003\u0312\u0003\u0312\u0003",
+ "\u0312\u0003\u0312\u0003\u0312\u0003\u0313\u0003\u0313\u0003\u0313\u0003",
+ "\u0313\u0003\u0313\u0003\u0313\u0003\u0313\u0003\u0313\u0003\u0313\u0003",
+ "\u0313\u0003\u0313\u0003\u0313\u0003\u0313\u0003\u0314\u0003\u0314\u0003",
+ "\u0314\u0003\u0314\u0003\u0314\u0003\u0314\u0003\u0314\u0003\u0314\u0003",
+ "\u0314\u0003\u0314\u0003\u0314\u0003\u0314\u0003\u0314\u0003\u0315\u0003",
+ "\u0315\u0003\u0315\u0003\u0315\u0003\u0315\u0003\u0315\u0003\u0315\u0003",
+ "\u0315\u0003\u0315\u0003\u0315\u0003\u0315\u0003\u0315\u0003\u0316\u0003",
+ "\u0316\u0003\u0316\u0003\u0316\u0003\u0316\u0003\u0316\u0003\u0316\u0003",
+ "\u0316\u0003\u0316\u0003\u0316\u0003\u0316\u0003\u0317\u0003\u0317\u0003",
+ "\u0317\u0003\u0317\u0003\u0317\u0003\u0317\u0003\u0317\u0003\u0317\u0003",
+ "\u0317\u0003\u0318\u0003\u0318\u0003\u0318\u0003\u0318\u0003\u0318\u0003",
+ "\u0318\u0003\u0318\u0003\u0318\u0003\u0319\u0003\u0319\u0003\u0319\u0003",
+ "\u0319\u0003\u0319\u0003\u0319\u0003\u0319\u0003\u0319\u0003\u0319\u0003",
+ "\u031a\u0003\u031a\u0003\u031a\u0003\u031a\u0003\u031a\u0003\u031a\u0003",
+ "\u031a\u0003\u031a\u0003\u031a\u0003\u031a\u0003\u031a\u0003\u031a\u0003",
+ "\u031b\u0003\u031b\u0003\u031b\u0003\u031b\u0003\u031b\u0003\u031b\u0003",
+ "\u031b\u0003\u031b\u0003\u031b\u0003\u031b\u0003\u031b\u0003\u031b\u0003",
+ "\u031b\u0003\u031b\u0003\u031c\u0003\u031c\u0003\u031c\u0003\u031c\u0003",
+ "\u031d\u0003\u031d\u0003\u031d\u0003\u031d\u0003\u031d\u0003\u031d\u0003",
+ "\u031d\u0003\u031e\u0003\u031e\u0003\u031e\u0003\u031e\u0003\u031e\u0003",
+ "\u031e\u0003\u031e\u0003\u031e\u0003\u031e\u0003\u031e\u0003\u031e\u0003",
+ "\u031f\u0003\u031f\u0003\u031f\u0003\u031f\u0003\u031f\u0003\u031f\u0003",
+ "\u031f\u0003\u031f\u0003\u031f\u0003\u031f\u0003\u031f\u0003\u0320\u0003",
+ "\u0320\u0003\u0320\u0003\u0320\u0003\u0320\u0003\u0320\u0003\u0320\u0003",
+ "\u0320\u0003\u0320\u0003\u0320\u0003\u0321\u0003\u0321\u0003\u0321\u0003",
+ "\u0321\u0003\u0321\u0003\u0321\u0003\u0321\u0003\u0321\u0003\u0321\u0003",
+ "\u0321\u0003\u0322\u0003\u0322\u0003\u0322\u0003\u0322\u0003\u0322\u0003",
+ "\u0322\u0003\u0323\u0003\u0323\u0003\u0323\u0003\u0323\u0003\u0323\u0003",
+ "\u0323\u0003\u0323\u0003\u0323\u0003\u0323\u0003\u0323\u0003\u0323\u0003",
+ "\u0323\u0003\u0323\u0003\u0323\u0003\u0324\u0003\u0324\u0003\u0324\u0003",
+ "\u0324\u0003\u0324\u0003\u0324\u0003\u0324\u0003\u0324\u0003\u0324\u0003",
+ "\u0324\u0003\u0324\u0003\u0325\u0003\u0325\u0003\u0325\u0003\u0325\u0003",
+ "\u0325\u0003\u0325\u0003\u0325\u0003\u0325\u0003\u0325\u0003\u0326\u0003",
+ "\u0326\u0003\u0326\u0003\u0326\u0003\u0326\u0003\u0326\u0003\u0326\u0003",
+ "\u0326\u0003\u0327\u0003\u0327\u0003\u0327\u0003\u0327\u0003\u0327\u0003",
+ "\u0327\u0003\u0327\u0003\u0328\u0003\u0328\u0003\u0328\u0003\u0328\u0003",
+ "\u0328\u0003\u0328\u0003\u0328\u0003\u0328\u0003\u0328\u0003\u0329\u0003",
+ "\u0329\u0003\u0329\u0003\u0329\u0003\u0329\u0003\u0329\u0003\u0329\u0003",
+ "\u0329\u0003\u0329\u0003\u0329\u0003\u0329\u0003\u0329\u0003\u0329\u0003",
+ "\u032a\u0003\u032a\u0003\u032a\u0003\u032a\u0003\u032a\u0003\u032a\u0003",
+ "\u032a\u0003\u032a\u0003\u032b\u0003\u032b\u0003\u032b\u0003\u032b\u0003",
+ "\u032b\u0003\u032b\u0003\u032b\u0003\u032b\u0003\u032b\u0003\u032b\u0003",
+ "\u032b\u0003\u032b\u0003\u032b\u0003\u032b\u0003\u032b\u0003\u032c\u0003",
+ "\u032c\u0003\u032c\u0003\u032c\u0003\u032c\u0003\u032c\u0003\u032c\u0003",
+ "\u032c\u0003\u032c\u0003\u032c\u0003\u032c\u0003\u032c\u0003\u032c\u0003",
+ "\u032c\u0003\u032c\u0003\u032d\u0003\u032d\u0003\u032d\u0003\u032d\u0003",
+ "\u032d\u0003\u032d\u0003\u032d\u0003\u032d\u0003\u032e\u0003\u032e\u0003",
+ "\u032e\u0003\u032e\u0003\u032e\u0003\u032e\u0003\u032e\u0003\u032e\u0003",
+ "\u032e\u0003\u032e\u0003\u032e\u0003\u032e\u0003\u032e\u0003\u032f\u0003",
+ "\u032f\u0003\u032f\u0003\u032f\u0003\u032f\u0003\u032f\u0003\u032f\u0003",
+ "\u032f\u0003\u032f\u0003\u032f\u0003\u032f\u0003\u032f\u0003\u032f\u0003",
+ "\u032f\u0003\u032f\u0003\u0330\u0003\u0330\u0003\u0330\u0003\u0330\u0003",
+ "\u0330\u0003\u0330\u0003\u0331\u0003\u0331\u0003\u0331\u0003\u0331\u0003",
+ "\u0331\u0003\u0331\u0003\u0332\u0003\u0332\u0003\u0332\u0003\u0332\u0003",
+ "\u0332\u0003\u0332\u0003\u0332\u0003\u0333\u0003\u0333\u0003\u0333\u0003",
+ "\u0333\u0003\u0333\u0003\u0333\u0003\u0333\u0003\u0333\u0003\u0333\u0003",
+ "\u0333\u0003\u0333\u0003\u0333\u0003\u0333\u0003\u0334\u0003\u0334\u0003",
+ "\u0334\u0003\u0334\u0003\u0334\u0003\u0334\u0003\u0334\u0003\u0334\u0003",
+ "\u0334\u0003\u0334\u0003\u0334\u0003\u0334\u0003\u0335\u0003\u0335\u0003",
+ "\u0335\u0003\u0335\u0003\u0335\u0003\u0335\u0003\u0335\u0003\u0335\u0003",
+ "\u0335\u0003\u0335\u0003\u0335\u0003\u0335\u0003\u0335\u0003\u0335\u0003",
+ "\u0335\u0003\u0335\u0003\u0335\u0003\u0335\u0003\u0335\u0003\u0336\u0003",
+ "\u0336\u0003\u0336\u0003\u0336\u0003\u0336\u0003\u0336\u0003\u0336\u0003",
+ "\u0336\u0003\u0336\u0003\u0336\u0003\u0336\u0003\u0336\u0003\u0336\u0003",
+ "\u0336\u0003\u0336\u0003\u0336\u0003\u0336\u0003\u0336\u0003\u0337\u0003",
+ "\u0337\u0003\u0337\u0003\u0338\u0003\u0338\u0003\u0338\u0003\u0338\u0003",
+ "\u0338\u0003\u0338\u0003\u0338\u0003\u0338\u0003\u0338\u0003\u0338\u0003",
+ "\u0339\u0003\u0339\u0003\u0339\u0003\u0339\u0003\u0339\u0003\u0339\u0003",
+ "\u0339\u0003\u033a\u0003\u033a\u0003\u033a\u0003\u033a\u0003\u033b\u0003",
+ "\u033b\u0003\u033b\u0003\u033b\u0003\u033b\u0003\u033b\u0003\u033c\u0003",
+ "\u033c\u0003\u033c\u0003\u033c\u0003\u033c\u0003\u033d\u0003\u033d\u0003",
+ "\u033d\u0003\u033d\u0003\u033d\u0003\u033d\u0003\u033e\u0003\u033e\u0003",
+ "\u033e\u0003\u033e\u0003\u033e\u0003\u033f\u0003\u033f\u0003\u033f\u0003",
+ "\u033f\u0003\u033f\u0003\u033f\u0003\u0340\u0003\u0340\u0003\u0340\u0003",
+ "\u0340\u0003\u0340\u0003\u0340\u0003\u0340\u0003\u0340\u0003\u0340\u0003",
+ "\u0341\u0003\u0341\u0003\u0341\u0003\u0341\u0003\u0341\u0003\u0341\u0003",
+ "\u0341\u0003\u0341\u0003\u0341\u0003\u0342\u0003\u0342\u0003\u0342\u0003",
+ "\u0342\u0003\u0342\u0003\u0342\u0003\u0342\u0003\u0342\u0003\u0342\u0003",
+ "\u0343\u0003\u0343\u0003\u0343\u0003\u0343\u0003\u0343\u0003\u0343\u0003",
+ "\u0343\u0003\u0343\u0003\u0343\u0003\u0343\u0003\u0343\u0003\u0343\u0003",
+ "\u0343\u0003\u0343\u0003\u0343\u0003\u0343\u0003\u0344\u0003\u0344\u0003",
+ "\u0344\u0003\u0344\u0003\u0344\u0003\u0344\u0003\u0344\u0003\u0344\u0003",
+ "\u0344\u0003\u0344\u0003\u0344\u0003\u0344\u0003\u0345\u0003\u0345\u0003",
+ "\u0345\u0003\u0345\u0003\u0345\u0003\u0345\u0003\u0345\u0003\u0345\u0003",
+ "\u0345\u0003\u0345\u0003\u0345\u0003\u0345\u0003\u0346\u0003\u0346\u0003",
+ "\u0346\u0003\u0346\u0003\u0346\u0003\u0346\u0003\u0346\u0003\u0346\u0003",
+ "\u0346\u0003\u0347\u0003\u0347\u0003\u0347\u0003\u0347\u0003\u0347\u0003",
+ "\u0347\u0003\u0347\u0003\u0347\u0003\u0347\u0003\u0347\u0003\u0347\u0003",
+ "\u0347\u0003\u0347\u0003\u0347\u0003\u0348\u0003\u0348\u0003\u0348\u0003",
+ "\u0348\u0003\u0348\u0003\u0348\u0003\u0348\u0003\u0348\u0003\u0348\u0003",
+ "\u0348\u0003\u0348\u0003\u0348\u0003\u0349\u0003\u0349\u0003\u0349\u0003",
+ "\u0349\u0003\u0349\u0003\u0349\u0003\u0349\u0003\u0349\u0003\u0349\u0003",
+ "\u0349\u0003\u0349\u0003\u034a\u0003\u034a\u0003\u034a\u0003\u034a\u0003",
+ "\u034a\u0003\u034a\u0003\u034a\u0003\u034a\u0003\u034a\u0003\u034a\u0003",
+ "\u034b\u0003\u034b\u0003\u034b\u0003\u034b\u0003\u034c\u0003\u034c\u0003",
+ "\u034c\u0003\u034c\u0003\u034c\u0003\u034c\u0003\u034c\u0003\u034c\u0003",
+ "\u034c\u0003\u034c\u0003\u034c\u0003\u034c\u0003\u034c\u0003\u034c\u0003",
+ "\u034d\u0003\u034d\u0003\u034d\u0003\u034d\u0003\u034d\u0003\u034d\u0003",
+ "\u034d\u0003\u034d\u0003\u034d\u0003\u034d\u0003\u034d\u0003\u034d\u0003",
+ "\u034d\u0003\u034e\u0003\u034e\u0003\u034e\u0003\u034e\u0003\u034e\u0003",
+ "\u034e\u0003\u034e\u0003\u034e\u0003\u034e\u0003\u034e\u0003\u034f\u0003",
+ "\u034f\u0003\u034f\u0003\u034f\u0003\u034f\u0003\u034f\u0003\u034f\u0003",
+ "\u034f\u0003\u034f\u0003\u034f\u0003\u034f\u0003\u034f\u0003\u034f\u0003",
+ "\u034f\u0003\u034f\u0003\u0350\u0003\u0350\u0003\u0350\u0003\u0350\u0003",
+ "\u0350\u0003\u0350\u0003\u0350\u0003\u0350\u0003\u0350\u0003\u0350\u0003",
+ "\u0350\u0003\u0350\u0003\u0350\u0003\u0350\u0003\u0351\u0003\u0351\u0003",
+ "\u0351\u0003\u0351\u0003\u0351\u0003\u0351\u0003\u0351\u0003\u0351\u0003",
+ "\u0351\u0003\u0351\u0003\u0351\u0003\u0351\u0003\u0351\u0003\u0351\u0003",
+ "\u0352\u0003\u0352\u0003\u0352\u0003\u0352\u0003\u0352\u0003\u0352\u0003",
+ "\u0352\u0003\u0352\u0003\u0352\u0003\u0352\u0003\u0352\u0003\u0352\u0003",
+ "\u0352\u0003\u0353\u0003\u0353\u0003\u0353\u0003\u0353\u0003\u0353\u0003",
+ "\u0353\u0003\u0353\u0003\u0353\u0003\u0353\u0003\u0353\u0003\u0353\u0003",
+ "\u0353\u0003\u0353\u0003\u0353\u0003\u0353\u0003\u0353\u0003\u0353\u0003",
+ "\u0353\u0003\u0353\u0003\u0353\u0003\u0353\u0003\u0353\u0003\u0353\u0003",
+ "\u0353\u0003\u0354\u0003\u0354\u0003\u0354\u0003\u0354\u0003\u0354\u0003",
+ "\u0354\u0003\u0354\u0003\u0354\u0003\u0354\u0003\u0354\u0003\u0354\u0003",
+ "\u0354\u0003\u0354\u0003\u0354\u0003\u0354\u0003\u0354\u0003\u0354\u0003",
+ "\u0354\u0003\u0354\u0003\u0354\u0003\u0354\u0003\u0354\u0003\u0354\u0003",
+ "\u0355\u0003\u0355\u0003\u0355\u0003\u0355\u0003\u0355\u0003\u0355\u0003",
+ "\u0355\u0003\u0355\u0003\u0355\u0003\u0355\u0003\u0355\u0003\u0355\u0003",
+ "\u0355\u0003\u0355\u0003\u0355\u0003\u0355\u0003\u0355\u0003\u0355\u0003",
+ "\u0355\u0003\u0356\u0003\u0356\u0003\u0356\u0003\u0356\u0003\u0356\u0003",
+ "\u0356\u0003\u0356\u0003\u0356\u0003\u0356\u0003\u0356\u0003\u0356\u0003",
+ "\u0356\u0003\u0356\u0003\u0356\u0003\u0356\u0003\u0356\u0003\u0356\u0003",
+ "\u0356\u0003\u0357\u0003\u0357\u0003\u0357\u0003\u0357\u0003\u0357\u0003",
+ "\u0357\u0003\u0357\u0003\u0357\u0003\u0357\u0003\u0357\u0003\u0357\u0003",
+ "\u0357\u0003\u0357\u0003\u0357\u0003\u0357\u0003\u0357\u0003\u0357\u0003",
+ "\u0357\u0003\u0357\u0003\u0357\u0003\u0357\u0003\u0358\u0003\u0358\u0003",
+ "\u0358\u0003\u0358\u0003\u0358\u0003\u0358\u0003\u0358\u0003\u0358\u0003",
+ "\u0358\u0003\u0358\u0003\u0358\u0003\u0358\u0003\u0358\u0003\u0358\u0003",
+ "\u0358\u0003\u0358\u0003\u0358\u0003\u0358\u0003\u0358\u0003\u0358\u0003",
+ "\u0359\u0003\u0359\u0003\u0359\u0003\u0359\u0003\u0359\u0003\u0359\u0003",
+ "\u0359\u0003\u0359\u0003\u0359\u0003\u0359\u0003\u0359\u0003\u035a\u0003",
+ "\u035a\u0003\u035a\u0003\u035a\u0003\u035a\u0003\u035a\u0003\u035a\u0003",
+ "\u035b\u0003\u035b\u0003\u035b\u0003\u035b\u0003\u035b\u0003\u035b\u0003",
+ "\u035b\u0003\u035b\u0003\u035b\u0003\u035b\u0003\u035b\u0003\u035b\u0003",
+ "\u035b\u0003\u035b\u0003\u035c\u0003\u035c\u0003\u035c\u0003\u035c\u0003",
+ "\u035c\u0003\u035c\u0003\u035c\u0003\u035c\u0003\u035c\u0003\u035c\u0003",
+ "\u035c\u0003\u035c\u0003\u035c\u0003\u035c\u0003\u035c\u0003\u035c\u0003",
+ "\u035c\u0003\u035d\u0003\u035d\u0003\u035d\u0003\u035d\u0003\u035d\u0003",
+ "\u035d\u0003\u035d\u0003\u035d\u0003\u035d\u0003\u035d\u0003\u035e\u0003",
+ "\u035e\u0003\u035e\u0003\u035e\u0003\u035f\u0003\u035f\u0003\u035f\u0003",
+ "\u035f\u0003\u035f\u0003\u035f\u0003\u035f\u0003\u035f\u0003\u035f\u0003",
+ "\u035f\u0003\u035f\u0003\u035f\u0003\u035f\u0003\u0360\u0003\u0360\u0003",
+ "\u0360\u0003\u0360\u0003\u0361\u0003\u0361\u0003\u0361\u0003\u0361\u0003",
+ "\u0361\u0003\u0361\u0003\u0361\u0003\u0361\u0003\u0361\u0003\u0362\u0003",
+ "\u0362\u0003\u0362\u0003\u0362\u0003\u0362\u0003\u0362\u0003\u0362\u0003",
+ "\u0362\u0003\u0362\u0003\u0362\u0003\u0362\u0003\u0363\u0003\u0363\u0003",
+ "\u0363\u0003\u0363\u0003\u0363\u0003\u0363\u0003\u0363\u0003\u0363\u0003",
+ "\u0363\u0003\u0363\u0003\u0363\u0003\u0363\u0003\u0364\u0003\u0364\u0003",
+ "\u0364\u0003\u0365\u0003\u0365\u0003\u0365\u0003\u0365\u0003\u0365\u0003",
+ "\u0365\u0003\u0365\u0003\u0365\u0003\u0365\u0003\u0365\u0003\u0365\u0003",
+ "\u0365\u0003\u0365\u0003\u0365\u0003\u0366\u0003\u0366\u0003\u0366\u0003",
+ "\u0366\u0003\u0366\u0003\u0366\u0003\u0366\u0003\u0366\u0003\u0366\u0003",
+ "\u0366\u0003\u0366\u0003\u0366\u0003\u0366\u0003\u0367\u0003\u0367\u0003",
+ "\u0367\u0003\u0367\u0003\u0367\u0003\u0367\u0003\u0367\u0003\u0368\u0003",
+ "\u0368\u0003\u0368\u0003\u0368\u0003\u0368\u0003\u0368\u0003\u0368\u0003",
+ "\u0368\u0003\u0368\u0003\u0368\u0003\u0368\u0003\u0368\u0003\u0368\u0003",
+ "\u0369\u0003\u0369\u0003\u0369\u0003\u0369\u0003\u0369\u0003\u0369\u0003",
+ "\u0369\u0003\u0369\u0003\u0369\u0003\u0369\u0003\u0369\u0003\u0369\u0003",
+ "\u036a\u0003\u036a\u0003\u036a\u0003\u036a\u0003\u036a\u0003\u036a\u0003",
+ "\u036a\u0003\u036a\u0003\u036a\u0003\u036a\u0003\u036a\u0003\u036a\u0003",
+ "\u036a\u0003\u036a\u0003\u036a\u0003\u036a\u0003\u036b\u0003\u036b\u0003",
+ "\u036b\u0003\u036b\u0003\u036b\u0003\u036b\u0003\u036b\u0003\u036b\u0003",
+ "\u036b\u0003\u036b\u0003\u036b\u0003\u036b\u0003\u036b\u0003\u036b\u0003",
+ "\u036b\u0003\u036c\u0003\u036c\u0003\u036c\u0003\u036c\u0003\u036d\u0003",
+ "\u036d\u0003\u036d\u0003\u036d\u0003\u036d\u0003\u036d\u0003\u036e\u0003",
+ "\u036e\u0003\u036e\u0003\u036e\u0003\u036e\u0003\u036e\u0003\u036f\u0003",
+ "\u036f\u0003\u036f\u0003\u036f\u0003\u036f\u0003\u036f\u0003\u036f\u0003",
+ "\u036f\u0003\u0370\u0003\u0370\u0003\u0370\u0003\u0370\u0003\u0370\u0003",
+ "\u0371\u0003\u0371\u0003\u0371\u0003\u0371\u0003\u0371\u0003\u0371\u0003",
+ "\u0371\u0003\u0371\u0003\u0371\u0003\u0371\u0003\u0371\u0003\u0371\u0003",
+ "\u0371\u0003\u0372\u0003\u0372\u0003\u0372\u0003\u0372\u0003\u0372\u0003",
+ "\u0372\u0003\u0372\u0003\u0372\u0003\u0372\u0003\u0372\u0003\u0372\u0003",
+ "\u0372\u0003\u0372\u0003\u0373\u0003\u0373\u0003\u0373\u0003\u0373\u0003",
+ "\u0373\u0003\u0373\u0003\u0373\u0003\u0373\u0003\u0374\u0003\u0374\u0003",
+ "\u0374\u0003\u0374\u0003\u0374\u0003\u0374\u0003\u0375\u0003\u0375\u0003",
+ "\u0375\u0003\u0375\u0003\u0375\u0003\u0375\u0003\u0375\u0003\u0375\u0003",
+ "\u0375\u0003\u0375\u0003\u0376\u0003\u0376\u0003\u0376\u0003\u0376\u0003",
+ "\u0376\u0003\u0377\u0003\u0377\u0003\u0377\u0003\u0377\u0003\u0377\u0003",
+ "\u0377\u0003\u0378\u0003\u0378\u0003\u0378\u0003\u0378\u0003\u0378\u0003",
+ "\u0378\u0003\u0378\u0003\u0378\u0003\u0378\u0003\u0378\u0003\u0378\u0003",
+ "\u0378\u0003\u0379\u0003\u0379\u0003\u0379\u0003\u0379\u0003\u0379\u0003",
+ "\u0379\u0003\u0379\u0003\u0379\u0003\u0379\u0003\u0379\u0003\u0379\u0003",
+ "\u0379\u0003\u0379\u0003\u037a\u0003\u037a\u0003\u037a\u0003\u037a\u0003",
+ "\u037b\u0003\u037b\u0003\u037b\u0003\u037b\u0003\u037b\u0003\u037c\u0003",
+ "\u037c\u0003\u037c\u0003\u037c\u0003\u037c\u0003\u037d\u0003\u037d\u0003",
+ "\u037d\u0003\u037d\u0003\u037d\u0003\u037d\u0003\u037d\u0003\u037d\u0003",
+ "\u037d\u0003\u037d\u0003\u037d\u0003\u037d\u0003\u037e\u0003\u037e\u0003",
+ "\u037e\u0003\u037e\u0003\u037e\u0003\u037f\u0003\u037f\u0003\u037f\u0003",
+ "\u037f\u0003\u0380\u0003\u0380\u0003\u0380\u0003\u0380\u0003\u0380\u0003",
+ "\u0380\u0003\u0381\u0003\u0381\u0003\u0381\u0003\u0381\u0003\u0381\u0003",
+ "\u0381\u0003\u0381\u0003\u0381\u0003\u0382\u0003\u0382\u0003\u0382\u0003",
+ "\u0382\u0003\u0382\u0003\u0382\u0003\u0382\u0003\u0382\u0003\u0382\u0003",
+ "\u0382\u0003\u0382\u0003\u0382\u0003\u0382\u0003\u0382\u0003\u0382\u0003",
+ "\u0382\u0003\u0382\u0003\u0382\u0003\u0382\u0003\u0382\u0003\u0382\u0003",
+ "\u0382\u0003\u0382\u0003\u0382\u0003\u0382\u0003\u0382\u0003\u0382\u0003",
+ "\u0382\u0003\u0383\u0003\u0383\u0003\u0383\u0003\u0383\u0003\u0383\u0003",
+ "\u0384\u0003\u0384\u0003\u0384\u0003\u0384\u0003\u0384\u0003\u0385\u0003",
+ "\u0385\u0003\u0385\u0003\u0385\u0003\u0385\u0003\u0385\u0003\u0385\u0003",
+ "\u0385\u0003\u0385\u0003\u0385\u0003\u0385\u0003\u0386\u0003\u0386\u0003",
+ "\u0386\u0003\u0386\u0003\u0386\u0003\u0386\u0003\u0386\u0003\u0387\u0003",
+ "\u0387\u0003\u0387\u0003\u0387\u0003\u0387\u0003\u0387\u0003\u0387\u0003",
+ "\u0387\u0003\u0387\u0003\u0387\u0003\u0387\u0003\u0387\u0003\u0388\u0003",
+ "\u0388\u0003\u0388\u0003\u0388\u0003\u0388\u0003\u0388\u0003\u0388\u0003",
+ "\u0388\u0003\u0389\u0003\u0389\u0003\u0389\u0003\u0389\u0003\u0389\u0003",
+ "\u0389\u0003\u0389\u0003\u0389\u0003\u0389\u0003\u0389\u0003\u0389\u0003",
+ "\u0389\u0003\u038a\u0003\u038a\u0003\u038a\u0003\u038a\u0003\u038a\u0003",
+ "\u038a\u0003\u038a\u0003\u038a\u0003\u038a\u0003\u038a\u0003\u038b\u0003",
+ "\u038b\u0003\u038b\u0003\u038b\u0003\u038b\u0003\u038b\u0003\u038b\u0003",
+ "\u038b\u0003\u038b\u0003\u038c\u0003\u038c\u0003\u038c\u0003\u038c\u0003",
+ "\u038c\u0003\u038c\u0003\u038c\u0003\u038c\u0003\u038c\u0003\u038d\u0003",
+ "\u038d\u0003\u038d\u0003\u038d\u0003\u038d\u0003\u038d\u0003\u038d\u0003",
+ "\u038d\u0003\u038d\u0003\u038d\u0003\u038e\u0003\u038e\u0003\u038e\u0003",
+ "\u038e\u0003\u038e\u0003\u038e\u0003\u038e\u0003\u038e\u0003\u038e\u0003",
+ "\u038e\u0003\u038e\u0003\u038e\u0003\u038f\u0003\u038f\u0003\u038f\u0003",
+ "\u038f\u0003\u038f\u0003\u038f\u0003\u038f\u0003\u038f\u0003\u038f\u0003",
+ "\u038f\u0003\u038f\u0003\u038f\u0003\u0390\u0003\u0390\u0003\u0390\u0003",
+ "\u0390\u0003\u0390\u0003\u0390\u0003\u0390\u0003\u0390\u0003\u0390\u0003",
+ "\u0390\u0003\u0390\u0003\u0391\u0003\u0391\u0003\u0391\u0003\u0391\u0003",
+ "\u0391\u0003\u0391\u0003\u0391\u0003\u0391\u0003\u0391\u0003\u0391\u0003",
+ "\u0391\u0003\u0391\u0003\u0391\u0003\u0391\u0003\u0392\u0003\u0392\u0003",
+ "\u0392\u0003\u0392\u0003\u0392\u0003\u0392\u0003\u0392\u0003\u0392\u0003",
+ "\u0392\u0003\u0392\u0003\u0392\u0003\u0392\u0003\u0392\u0003\u0393\u0003",
+ "\u0393\u0003\u0393\u0003\u0393\u0003\u0393\u0003\u0393\u0003\u0393\u0003",
+ "\u0393\u0003\u0393\u0003\u0393\u0003\u0393\u0003\u0393\u0003\u0394\u0003",
+ "\u0394\u0003\u0394\u0003\u0394\u0003\u0394\u0003\u0394\u0003\u0394\u0003",
+ "\u0394\u0003\u0394\u0003\u0394\u0003\u0394\u0003\u0394\u0003\u0395\u0003",
+ "\u0395\u0003\u0395\u0003\u0395\u0003\u0395\u0003\u0395\u0003\u0395\u0003",
+ "\u0395\u0003\u0395\u0003\u0395\u0003\u0395\u0003\u0395\u0003\u0396\u0003",
+ "\u0396\u0003\u0396\u0003\u0396\u0003\u0396\u0003\u0396\u0003\u0396\u0003",
+ "\u0396\u0003\u0396\u0003\u0396\u0003\u0396\u0003\u0396\u0003\u0397\u0003",
+ "\u0397\u0003\u0397\u0003\u0397\u0003\u0397\u0003\u0397\u0003\u0397\u0003",
+ "\u0397\u0003\u0397\u0003\u0397\u0003\u0398\u0003\u0398\u0003\u0398\u0003",
+ "\u0398\u0003\u0398\u0003\u0398\u0003\u0398\u0003\u0398\u0003\u0398\u0003",
+ "\u0398\u0003\u0398\u0003\u0398\u0003\u0398\u0003\u0398\u0003\u0398\u0003",
+ "\u0398\u0003\u0399\u0003\u0399\u0003\u0399\u0003\u0399\u0003\u0399\u0003",
+ "\u0399\u0003\u0399\u0003\u0399\u0003\u0399\u0003\u0399\u0003\u0399\u0003",
+ "\u0399\u0003\u0399\u0003\u0399\u0003\u0399\u0003\u0399\u0003\u0399\u0003",
+ "\u0399\u0003\u0399\u0003\u0399\u0003\u039a\u0003\u039a\u0003\u039a\u0003",
+ "\u039a\u0003\u039a\u0003\u039a\u0003\u039a\u0003\u039a\u0003\u039a\u0003",
+ "\u039a\u0003\u039a\u0003\u039a\u0003\u039a\u0003\u039a\u0003\u039a\u0003",
+ "\u039a\u0003\u039a\u0003\u039a\u0003\u039a\u0003\u039b\u0003\u039b\u0003",
+ "\u039b\u0003\u039b\u0003\u039b\u0003\u039b\u0003\u039b\u0003\u039b\u0003",
+ "\u039b\u0003\u039b\u0003\u039b\u0003\u039b\u0003\u039b\u0003\u039b\u0003",
+ "\u039b\u0003\u039b\u0003\u039b\u0003\u039b\u0003\u039b\u0003\u039c\u0003",
+ "\u039c\u0003\u039c\u0003\u039c\u0003\u039c\u0003\u039c\u0003\u039c\u0003",
+ "\u039c\u0003\u039c\u0003\u039c\u0003\u039c\u0003\u039c\u0003\u039c\u0003",
+ "\u039c\u0003\u039c\u0003\u039c\u0003\u039c\u0003\u039c\u0003\u039c\u0003",
+ "\u039c\u0003\u039c\u0003\u039c\u0003\u039c\u0003\u039c\u0003\u039c\u0003",
+ "\u039c\u0003\u039c\u0003\u039c\u0003\u039c\u0003\u039c\u0003\u039d\u0003",
+ "\u039d\u0003\u039d\u0003\u039d\u0003\u039d\u0003\u039d\u0003\u039d\u0003",
+ "\u039d\u0003\u039d\u0003\u039d\u0003\u039d\u0003\u039d\u0003\u039d\u0003",
+ "\u039d\u0003\u039d\u0003\u039d\u0003\u039d\u0003\u039d\u0003\u039d\u0003",
+ "\u039d\u0003\u039d\u0003\u039d\u0003\u039d\u0003\u039d\u0003\u039d\u0003",
+ "\u039d\u0003\u039d\u0003\u039d\u0003\u039d\u0003\u039e\u0003\u039e\u0003",
+ "\u039e\u0003\u039e\u0003\u039e\u0003\u039e\u0003\u039e\u0003\u039e\u0003",
+ "\u039e\u0003\u039e\u0003\u039e\u0003\u039e\u0003\u039e\u0003\u039e\u0003",
+ "\u039e\u0003\u039e\u0003\u039e\u0003\u039e\u0003\u039e\u0003\u039e\u0003",
+ "\u039f\u0003\u039f\u0003\u039f\u0003\u039f\u0003\u039f\u0003\u039f\u0003",
+ "\u039f\u0003\u039f\u0003\u039f\u0003\u039f\u0003\u039f\u0003\u039f\u0003",
+ "\u039f\u0003\u039f\u0003\u039f\u0003\u039f\u0003\u039f\u0003\u039f\u0003",
+ "\u039f\u0003\u03a0\u0003\u03a0\u0003\u03a0\u0003\u03a0\u0003\u03a0\u0003",
+ "\u03a0\u0003\u03a0\u0003\u03a0\u0003\u03a0\u0003\u03a0\u0003\u03a0\u0003",
+ "\u03a0\u0003\u03a0\u0003\u03a1\u0003\u03a1\u0003\u03a1\u0003\u03a1\u0003",
+ "\u03a1\u0003\u03a1\u0003\u03a1\u0003\u03a1\u0003\u03a1\u0003\u03a1\u0003",
+ "\u03a1\u0003\u03a1\u0003\u03a1\u0003\u03a1\u0003\u03a1\u0003\u03a1\u0003",
+ "\u03a2\u0003\u03a2\u0003\u03a2\u0003\u03a2\u0003\u03a2\u0003\u03a2\u0003",
+ "\u03a2\u0003\u03a2\u0003\u03a2\u0003\u03a2\u0003\u03a2\u0003\u03a2\u0003",
+ "\u03a2\u0003\u03a2\u0003\u03a2\u0003\u03a2\u0003\u03a3\u0003\u03a3\u0003",
+ "\u03a3\u0003\u03a3\u0003\u03a3\u0003\u03a3\u0003\u03a3\u0003\u03a3\u0003",
+ "\u03a3\u0003\u03a3\u0003\u03a3\u0003\u03a3\u0003\u03a3\u0003\u03a3\u0003",
+ "\u03a3\u0003\u03a4\u0003\u03a4\u0003\u03a4\u0003\u03a4\u0003\u03a4\u0003",
+ "\u03a4\u0003\u03a4\u0003\u03a4\u0003\u03a4\u0003\u03a4\u0003\u03a4\u0003",
+ "\u03a4\u0003\u03a4\u0003\u03a4\u0003\u03a4\u0003\u03a4\u0003\u03a4\u0003",
+ "\u03a5\u0003\u03a5\u0003\u03a5\u0003\u03a5\u0003\u03a5\u0003\u03a5\u0003",
+ "\u03a5\u0003\u03a5\u0003\u03a5\u0003\u03a5\u0003\u03a5\u0003\u03a5\u0003",
+ "\u03a5\u0003\u03a5\u0003\u03a5\u0003\u03a5\u0003\u03a6\u0003\u03a6\u0003",
+ "\u03a6\u0003\u03a6\u0003\u03a6\u0003\u03a6\u0003\u03a6\u0003\u03a6\u0003",
+ "\u03a6\u0003\u03a6\u0003\u03a6\u0003\u03a6\u0003\u03a6\u0003\u03a6\u0003",
+ "\u03a7\u0003\u03a7\u0003\u03a7\u0003\u03a7\u0003\u03a7\u0003\u03a7\u0003",
+ "\u03a7\u0003\u03a7\u0003\u03a7\u0003\u03a7\u0003\u03a7\u0003\u03a7\u0003",
+ "\u03a8\u0003\u03a8\u0003\u03a8\u0003\u03a8\u0003\u03a8\u0003\u03a8\u0003",
+ "\u03a8\u0003\u03a8\u0003\u03a8\u0003\u03a8\u0003\u03a8\u0003\u03a9\u0003",
+ "\u03a9\u0003\u03a9\u0003\u03a9\u0003\u03a9\u0003\u03a9\u0003\u03a9\u0003",
+ "\u03a9\u0003\u03a9\u0003\u03a9\u0003\u03a9\u0003\u03a9\u0003\u03aa\u0003",
+ "\u03aa\u0003\u03aa\u0003\u03aa\u0003\u03aa\u0003\u03aa\u0003\u03aa\u0003",
+ "\u03aa\u0003\u03aa\u0003\u03aa\u0003\u03aa\u0003\u03aa\u0003\u03aa\u0003",
+ "\u03aa\u0003\u03aa\u0003\u03aa\u0003\u03ab\u0003\u03ab\u0003\u03ab\u0003",
+ "\u03ab\u0003\u03ab\u0003\u03ab\u0003\u03ab\u0003\u03ab\u0003\u03ab\u0003",
+ "\u03ab\u0003\u03ab\u0003\u03ab\u0003\u03ab\u0003\u03ab\u0003\u03ab\u0003",
+ "\u03ac\u0003\u03ac\u0003\u03ac\u0003\u03ac\u0003\u03ac\u0003\u03ac\u0003",
+ "\u03ac\u0003\u03ac\u0003\u03ac\u0003\u03ac\u0003\u03ac\u0003\u03ac\u0003",
+ "\u03ac\u0003\u03ac\u0003\u03ac\u0003\u03ac\u0003\u03ac\u0003\u03ac\u0003",
+ "\u03ac\u0003\u03ac\u0003\u03ac\u0003\u03ac\u0003\u03ad\u0003\u03ad\u0003",
+ "\u03ad\u0003\u03ad\u0003\u03ad\u0003\u03ad\u0003\u03ad\u0003\u03ad\u0003",
+ "\u03ad\u0003\u03ad\u0003\u03ad\u0003\u03ad\u0003\u03ad\u0003\u03ad\u0003",
+ "\u03ad\u0003\u03ad\u0003\u03ad\u0003\u03ad\u0003\u03ad\u0003\u03ad\u0003",
+ "\u03ad\u0003\u03ae\u0003\u03ae\u0003\u03ae\u0003\u03ae\u0003\u03ae\u0003",
+ "\u03ae\u0003\u03ae\u0003\u03ae\u0003\u03ae\u0003\u03ae\u0003\u03ae\u0003",
+ "\u03ae\u0003\u03ae\u0003\u03ae\u0003\u03ae\u0003\u03ae\u0003\u03ae\u0003",
+ "\u03af\u0003\u03af\u0003\u03af\u0003\u03af\u0003\u03af\u0003\u03af\u0003",
+ "\u03af\u0003\u03af\u0003\u03af\u0003\u03af\u0003\u03af\u0003\u03af\u0003",
+ "\u03af\u0003\u03af\u0003\u03af\u0003\u03af\u0003\u03af\u0003\u03af\u0003",
+ "\u03af\u0003\u03b0\u0003\u03b0\u0003\u03b0\u0003\u03b0\u0003\u03b0\u0003",
+ "\u03b0\u0003\u03b0\u0003\u03b0\u0003\u03b0\u0003\u03b0\u0003\u03b0\u0003",
+ "\u03b0\u0003\u03b0\u0003\u03b0\u0003\u03b0\u0003\u03b0\u0003\u03b0\u0003",
+ "\u03b0\u0003\u03b0\u0003\u03b0\u0003\u03b1\u0003\u03b1\u0003\u03b1\u0003",
+ "\u03b1\u0003\u03b1\u0003\u03b1\u0003\u03b1\u0003\u03b1\u0003\u03b1\u0003",
+ "\u03b1\u0003\u03b1\u0003\u03b1\u0003\u03b1\u0003\u03b2\u0003\u03b2\u0003",
+ "\u03b2\u0003\u03b2\u0003\u03b2\u0003\u03b2\u0003\u03b2\u0003\u03b2\u0003",
+ "\u03b2\u0003\u03b2\u0003\u03b2\u0003\u03b2\u0003\u03b3\u0003\u03b3\u0003",
+ "\u03b3\u0003\u03b3\u0003\u03b3\u0003\u03b3\u0003\u03b3\u0003\u03b3\u0003",
+ "\u03b3\u0003\u03b3\u0003\u03b3\u0003\u03b3\u0003\u03b3\u0003\u03b3\u0003",
+ "\u03b3\u0003\u03b3\u0003\u03b3\u0003\u03b4\u0003\u03b4\u0003\u03b4\u0003",
+ "\u03b4\u0003\u03b4\u0003\u03b4\u0003\u03b4\u0003\u03b4\u0003\u03b4\u0003",
+ "\u03b4\u0003\u03b4\u0003\u03b4\u0003\u03b4\u0003\u03b4\u0003\u03b4\u0003",
+ "\u03b4\u0003\u03b5\u0003\u03b5\u0003\u03b5\u0003\u03b5\u0003\u03b5\u0003",
+ "\u03b5\u0003\u03b5\u0003\u03b5\u0003\u03b5\u0003\u03b5\u0003\u03b6\u0003",
+ "\u03b6\u0003\u03b6\u0003\u03b6\u0003\u03b6\u0003\u03b6\u0003\u03b6\u0003",
+ "\u03b6\u0003\u03b6\u0003\u03b6\u0003\u03b6\u0003\u03b6\u0003\u03b6\u0003",
+ "\u03b6\u0003\u03b6\u0003\u03b6\u0003\u03b7\u0003\u03b7\u0003\u03b7\u0003",
+ "\u03b7\u0003\u03b7\u0003\u03b7\u0003\u03b7\u0003\u03b7\u0003\u03b7\u0003",
+ "\u03b7\u0003\u03b7\u0003\u03b7\u0003\u03b7\u0003\u03b7\u0003\u03b7\u0003",
+ "\u03b8\u0003\u03b8\u0003\u03b8\u0003\u03b8\u0003\u03b8\u0003\u03b8\u0003",
+ "\u03b8\u0003\u03b8\u0003\u03b8\u0003\u03b8\u0003\u03b8\u0003\u03b8\u0003",
+ "\u03b8\u0003\u03b8\u0003\u03b8\u0003\u03b8\u0003\u03b8\u0003\u03b8\u0003",
+ "\u03b8\u0003\u03b9\u0003\u03b9\u0003\u03b9\u0003\u03b9\u0003\u03b9\u0003",
+ "\u03b9\u0003\u03b9\u0003\u03b9\u0003\u03b9\u0003\u03b9\u0003\u03b9\u0003",
+ "\u03b9\u0003\u03b9\u0003\u03b9\u0003\u03b9\u0003\u03b9\u0003\u03b9\u0003",
+ "\u03b9\u0003\u03ba\u0003\u03ba\u0003\u03ba\u0003\u03ba\u0003\u03ba\u0003",
+ "\u03ba\u0003\u03ba\u0003\u03ba\u0003\u03bb\u0003\u03bb\u0003\u03bb\u0003",
+ "\u03bb\u0003\u03bb\u0003\u03bb\u0003\u03bb\u0003\u03bb\u0003\u03bb\u0003",
+ "\u03bb\u0003\u03bb\u0003\u03bb\u0003\u03bb\u0003\u03bb\u0003\u03bc\u0003",
+ "\u03bc\u0003\u03bc\u0003\u03bc\u0003\u03bc\u0003\u03bc\u0003\u03bc\u0003",
+ "\u03bc\u0003\u03bc\u0003\u03bc\u0003\u03bc\u0003\u03bc\u0003\u03bc\u0003",
+ "\u03bc\u0003\u03bc\u0003\u03bc\u0003\u03bc\u0003\u03bd\u0003\u03bd\u0003",
+ "\u03bd\u0003\u03bd\u0003\u03bd\u0003\u03bd\u0003\u03bd\u0003\u03bd\u0003",
+ "\u03bd\u0003\u03bd\u0003\u03bd\u0003\u03be\u0003\u03be\u0003\u03be\u0003",
+ "\u03be\u0003\u03be\u0003\u03be\u0003\u03be\u0003\u03be\u0003\u03be\u0003",
+ "\u03bf\u0003\u03bf\u0003\u03bf\u0003\u03bf\u0003\u03bf\u0003\u03bf\u0003",
+ "\u03bf\u0003\u03bf\u0003\u03bf\u0003\u03bf\u0003\u03c0\u0003\u03c0\u0003",
+ "\u03c0\u0003\u03c0\u0003\u03c0\u0003\u03c1\u0003\u03c1\u0003\u03c1\u0003",
+ "\u03c1\u0003\u03c1\u0003\u03c2\u0003\u03c2\u0003\u03c2\u0003\u03c2\u0003",
+ "\u03c2\u0003\u03c2\u0003\u03c2\u0003\u03c2\u0003\u03c3\u0003\u03c3\u0003",
+ "\u03c3\u0003\u03c3\u0003\u03c3\u0003\u03c3\u0003\u03c3\u0003\u03c3\u0003",
+ "\u03c3\u0003\u03c3\u0003\u03c3\u0003\u03c3\u0003\u03c3\u0003\u03c3\u0003",
+ "\u03c3\u0003\u03c3\u0003\u03c4\u0003\u03c4\u0003\u03c4\u0003\u03c4\u0003",
+ "\u03c4\u0003\u03c4\u0003\u03c4\u0003\u03c4\u0003\u03c5\u0003\u03c5\u0003",
+ "\u03c5\u0003\u03c5\u0003\u03c5\u0003\u03c5\u0003\u03c5\u0003\u03c5\u0003",
+ "\u03c5\u0003\u03c5\u0003\u03c5\u0003\u03c5\u0003\u03c6\u0003\u03c6\u0003",
+ "\u03c6\u0003\u03c6\u0003\u03c7\u0003\u03c7\u0003\u03c7\u0003\u03c7\u0003",
+ "\u03c7\u0003\u03c7\u0003\u03c7\u0003\u03c7\u0003\u03c7\u0003\u03c8\u0003",
+ "\u03c8\u0003\u03c8\u0003\u03c8\u0003\u03c8\u0003\u03c8\u0003\u03c8\u0003",
+ "\u03c8\u0003\u03c8\u0003\u03c8\u0003\u03c8\u0003\u03c8\u0003\u03c8\u0003",
+ "\u03c9\u0003\u03c9\u0003\u03c9\u0003\u03c9\u0003\u03c9\u0003\u03c9\u0003",
+ "\u03c9\u0003\u03c9\u0003\u03c9\u0003\u03c9\u0003\u03c9\u0003\u03c9\u0003",
+ "\u03c9\u0003\u03c9\u0003\u03ca\u0003\u03ca\u0003\u03ca\u0003\u03ca\u0003",
+ "\u03ca\u0003\u03ca\u0003\u03ca\u0003\u03ca\u0003\u03ca\u0003\u03ca\u0003",
+ "\u03ca\u0003\u03ca\u0003\u03cb\u0003\u03cb\u0003\u03cb\u0003\u03cb\u0003",
+ "\u03cb\u0003\u03cb\u0003\u03cb\u0003\u03cb\u0003\u03cb\u0003\u03cb\u0003",
+ "\u03cb\u0003\u03cb\u0003\u03cc\u0003\u03cc\u0003\u03cc\u0003\u03cc\u0003",
+ "\u03cc\u0003\u03cc\u0003\u03cc\u0003\u03cc\u0003\u03cd\u0003\u03cd\u0003",
+ "\u03cd\u0003\u03cd\u0003\u03cd\u0003\u03cd\u0003\u03cd\u0003\u03cd\u0003",
+ "\u03cd\u0003\u03cd\u0003\u03ce\u0003\u03ce\u0003\u03ce\u0003\u03ce\u0003",
+ "\u03ce\u0003\u03ce\u0003\u03ce\u0003\u03ce\u0003\u03cf\u0003\u03cf\u0003",
+ "\u03cf\u0003\u03cf\u0003\u03cf\u0003\u03cf\u0003\u03cf\u0003\u03cf\u0003",
+ "\u03cf\u0003\u03cf\u0003\u03cf\u0003\u03d0\u0003\u03d0\u0003\u03d0\u0003",
+ "\u03d0\u0003\u03d0\u0003\u03d0\u0003\u03d1\u0003\u03d1\u0003\u03d1\u0003",
+ "\u03d1\u0003\u03d1\u0003\u03d1\u0003\u03d1\u0003\u03d1\u0003\u03d1\u0003",
+ "\u03d1\u0003\u03d1\u0003\u03d2\u0003\u03d2\u0003\u03d2\u0003\u03d2\u0003",
+ "\u03d2\u0003\u03d2\u0003\u03d2\u0003\u03d2\u0003\u03d2\u0003\u03d2\u0003",
+ "\u03d2\u0003\u03d2\u0003\u03d2\u0003\u03d2\u0003\u03d2\u0003\u03d2\u0003",
+ "\u03d2\u0003\u03d2\u0003\u03d2\u0003\u03d2\u0003\u03d3\u0003\u03d3\u0003",
+ "\u03d3\u0003\u03d3\u0003\u03d3\u0003\u03d3\u0003\u03d4\u0003\u03d4\u0003",
+ "\u03d4\u0003\u03d4\u0003\u03d4\u0003\u03d4\u0003\u03d4\u0003\u03d4\u0003",
+ "\u03d4\u0003\u03d4\u0003\u03d4\u0003\u03d4\u0003\u03d4\u0003\u03d4\u0003",
+ "\u03d4\u0003\u03d5\u0003\u03d5\u0003\u03d5\u0003\u03d5\u0003\u03d5\u0003",
+ "\u03d5\u0003\u03d5\u0003\u03d5\u0003\u03d5\u0003\u03d5\u0003\u03d6\u0003",
+ "\u03d6\u0003\u03d6\u0003\u03d6\u0003\u03d6\u0003\u03d6\u0003\u03d7\u0003",
+ "\u03d7\u0003\u03d7\u0003\u03d7\u0003\u03d7\u0003\u03d8\u0003\u03d8\u0003",
+ "\u03d8\u0003\u03d8\u0003\u03d8\u0003\u03d8\u0003\u03d8\u0003\u03d8\u0003",
+ "\u03d8\u0003\u03d8\u0003\u03d8\u0003\u03d9\u0003\u03d9\u0003\u03d9\u0003",
+ "\u03d9\u0003\u03d9\u0003\u03d9\u0003\u03d9\u0003\u03d9\u0003\u03d9\u0003",
+ "\u03d9\u0003\u03d9\u0003\u03d9\u0003\u03d9\u0003\u03d9\u0003\u03d9\u0003",
+ "\u03d9\u0003\u03d9\u0003\u03d9\u0003\u03d9\u0003\u03d9\u0003\u03d9\u0003",
+ "\u03d9\u0003\u03d9\u0003\u03d9\u0003\u03d9\u0003\u03d9\u0003\u03d9\u0003",
+ "\u03da\u0003\u03da\u0003\u03da\u0003\u03da\u0003\u03da\u0003\u03da\u0003",
+ "\u03da\u0003\u03da\u0003\u03db\u0003\u03db\u0003\u03db\u0003\u03db\u0003",
+ "\u03db\u0003\u03db\u0003\u03db\u0003\u03db\u0003\u03db\u0003\u03db\u0003",
+ "\u03db\u0003\u03db\u0003\u03db\u0003\u03db\u0003\u03db\u0003\u03db\u0003",
+ "\u03db\u0003\u03db\u0003\u03db\u0003\u03db\u0003\u03db\u0003\u03db\u0003",
+ "\u03db\u0003\u03db\u0003\u03db\u0003\u03db\u0003\u03db\u0003\u03db\u0003",
+ "\u03db\u0003\u03db\u0003\u03db\u0003\u03db\u0003\u03db\u0003\u03db\u0003",
+ "\u03dc\u0003\u03dc\u0003\u03dc\u0003\u03dc\u0003\u03dc\u0003\u03dc\u0003",
+ "\u03dc\u0003\u03dc\u0003\u03dd\u0003\u03dd\u0003\u03dd\u0003\u03dd\u0003",
+ "\u03dd\u0003\u03dd\u0003\u03dd\u0003\u03dd\u0003\u03dd\u0003\u03dd\u0003",
+ "\u03dd\u0003\u03de\u0003\u03de\u0003\u03de\u0003\u03de\u0003\u03de\u0003",
+ "\u03de\u0003\u03de\u0003\u03de\u0003\u03de\u0003\u03de\u0003\u03de\u0003",
+ "\u03de\u0003\u03de\u0003\u03de\u0003\u03df\u0003\u03df\u0003\u03df\u0003",
+ "\u03df\u0003\u03df\u0003\u03df\u0003\u03df\u0003\u03e0\u0003\u03e0\u0003",
+ "\u03e0\u0003\u03e0\u0003\u03e0\u0003\u03e0\u0003\u03e0\u0003\u03e0\u0003",
+ "\u03e0\u0003\u03e1\u0003\u03e1\u0003\u03e2\u0003\u03e2\u0003\u03e3\u0003",
+ "\u03e3\u0003\u03e3\u0003\u03e4\u0003\u03e4\u0003\u03e4\u0003\u03e5\u0003",
+ "\u03e5\u0003\u03e5\u0003\u03e6\u0003\u03e6\u0003\u03e6\u0003\u03e7\u0003",
+ "\u03e7\u0003\u03e7\u0003\u03e8\u0003\u03e8\u0003\u03e8\u0003\u03e9\u0003",
+ "\u03e9\u0003\u03e9\u0003\u03ea\u0003\u03ea\u0003\u03ea\u0003\u03eb\u0003",
+ "\u03eb\u0003\u03eb\u0003\u03ec\u0003\u03ec\u0003\u03ed\u0003\u03ed\u0003",
+ "\u03ee\u0003\u03ee\u0003\u03ef\u0003\u03ef\u0003\u03f0\u0003\u03f0\u0003",
+ "\u03f0\u0003\u03f1\u0003\u03f1\u0003\u03f2\u0003\u03f2\u0003\u03f2\u0003",
+ "\u03f2\u0003\u03f3\u0003\u03f3\u0003\u03f3\u0003\u03f3\u0003\u03f4\u0003",
+ "\u03f4\u0003\u03f5\u0003\u03f5\u0003\u03f6\u0003\u03f6\u0003\u03f7\u0003",
+ "\u03f7\u0003\u03f8\u0003\u03f8\u0003\u03f9\u0003\u03f9\u0003\u03fa\u0003",
+ "\u03fa\u0003\u03fb\u0003\u03fb\u0003\u03fc\u0003\u03fc\u0003\u03fd\u0003",
+ "\u03fd\u0003\u03fe\u0003\u03fe\u0003\u03ff\u0003\u03ff\u0003\u0400\u0003",
+ "\u0400\u0003\u0401\u0003\u0401\u0003\u0402\u0003\u0402\u0003\u0403\u0003",
+ "\u0403\u0003\u0404\u0003\u0404\u0003\u0405\u0003\u0405\u0003\u0406\u0003",
+ "\u0406\u0003\u0407\u0003\u0407\u0003\u0408\u0003\u0408\u0003\u0409\u0003",
+ "\u0409\u0003\u0409\u0005\u0409\u2e56\n\u0409\u0003\u040a\u0003\u040a",
+ "\u0003\u040a\u0003\u040a\u0003\u040b\u0006\u040b\u2e5d\n\u040b\r\u040b",
+ "\u000e\u040b\u2e5e\u0003\u040b\u0003\u040b\u0003\u040c\u0003\u040c\u0003",
+ "\u040c\u0003\u040d\u0003\u040d\u0003\u040d\u0005\u040d\u2e69\n\u040d",
+ "\u0003\u040e\u0006\u040e\u2e6c\n\u040e\r\u040e\u000e\u040e\u2e6d\u0003",
+ "\u040f\u0003\u040f\u0003\u040f\u0003\u040f\u0003\u040f\u0006\u040f\u2e75",
+ "\n\u040f\r\u040f\u000e\u040f\u2e76\u0003\u040f\u0003\u040f\u0003\u040f",
+ "\u0003\u040f\u0003\u040f\u0003\u040f\u0006\u040f\u2e7f\n\u040f\r\u040f",
+ "\u000e\u040f\u2e80\u0005\u040f\u2e83\n\u040f\u0003\u0410\u0006\u0410",
+ "\u2e86\n\u0410\r\u0410\u000e\u0410\u2e87\u0005\u0410\u2e8a\n\u0410\u0003",
+ "\u0410\u0003\u0410\u0006\u0410\u2e8e\n\u0410\r\u0410\u000e\u0410\u2e8f",
+ "\u0003\u0410\u0006\u0410\u2e93\n\u0410\r\u0410\u000e\u0410\u2e94\u0003",
+ "\u0410\u0003\u0410\u0003\u0410\u0003\u0410\u0006\u0410\u2e9b\n\u0410",
+ "\r\u0410\u000e\u0410\u2e9c\u0005\u0410\u2e9f\n\u0410\u0003\u0410\u0003",
+ "\u0410\u0006\u0410\u2ea3\n\u0410\r\u0410\u000e\u0410\u2ea4\u0003\u0410",
+ "\u0003\u0410\u0003\u0410\u0006\u0410\u2eaa\n\u0410\r\u0410\u000e\u0410",
+ "\u2eab\u0003\u0410\u0003\u0410\u0005\u0410\u2eb0\n\u0410\u0003\u0411",
+ "\u0003\u0411\u0003\u0411\u0003\u0412\u0003\u0412\u0003\u0413\u0003\u0413",
+ "\u0003\u0413\u0003\u0414\u0003\u0414\u0003\u0414\u0003\u0415\u0003\u0415",
+ "\u0003\u0416\u0003\u0416\u0006\u0416\u2ec1\n\u0416\r\u0416\u000e\u0416",
+ "\u2ec2\u0003\u0416\u0003\u0416\u0003\u0417\u0003\u0417\u0003\u0417\u0003",
+ "\u0417\u0005\u0417\u2ecb\n\u0417\u0003\u0417\u0003\u0417\u0003\u0417",
+ "\u0003\u0417\u0003\u0417\u0005\u0417\u2ed2\n\u0417\u0003\u0418\u0003",
+ "\u0418\u0006\u0418\u2ed6\n\u0418\r\u0418\u000e\u0418\u2ed7\u0003\u0418",
+ "\u0003\u0418\u0003\u0418\u0005\u0418\u2edd\n\u0418\u0003\u0419\u0003",
+ "\u0419\u0003\u0419\u0006\u0419\u2ee2\n\u0419\r\u0419\u000e\u0419\u2ee3",
+ "\u0003\u0419\u0005\u0419\u2ee7\n\u0419\u0003\u041a\u0003\u041a\u0003",
+ "\u041a\u0003\u041a\u0003\u041a\u0003\u041a\u0003\u041a\u0003\u041a\u0003",
+ "\u041a\u0003\u041a\u0003\u041a\u0003\u041a\u0003\u041a\u0003\u041a\u0003",
+ "\u041a\u0003\u041a\u0003\u041a\u0003\u041a\u0003\u041a\u0003\u041a\u0003",
+ "\u041a\u0003\u041a\u0003\u041a\u0003\u041a\u0003\u041a\u0003\u041a\u0003",
+ "\u041a\u0003\u041a\u0003\u041a\u0003\u041a\u0003\u041a\u0003\u041a\u0003",
+ "\u041a\u0003\u041a\u0003\u041a\u0003\u041a\u0003\u041a\u0003\u041a\u0003",
+ "\u041a\u0003\u041a\u0003\u041a\u0005\u041a\u2f12\n\u041a\u0003\u041b",
+ "\u0003\u041b\u0005\u041b\u2f16\n\u041b\u0003\u041b\u0006\u041b\u2f19",
+ "\n\u041b\r\u041b\u000e\u041b\u2f1a\u0003\u041c\u0007\u041c\u2f1e\n\u041c",
+ "\f\u041c\u000e\u041c\u2f21\u000b\u041c\u0003\u041c\u0006\u041c\u2f24",
+ "\n\u041c\r\u041c\u000e\u041c\u2f25\u0003\u041c\u0007\u041c\u2f29\n\u041c",
+ "\f\u041c\u000e\u041c\u2f2c\u000b\u041c\u0003\u041d\u0003\u041d\u0003",
+ "\u041d\u0003\u041d\u0003\u041d\u0003\u041d\u0007\u041d\u2f34\n\u041d",
+ "\f\u041d\u000e\u041d\u2f37\u000b\u041d\u0003\u041d\u0003\u041d\u0003",
+ "\u041e\u0003\u041e\u0003\u041e\u0003\u041e\u0003\u041e\u0003\u041e\u0007",
+ "\u041e\u2f41\n\u041e\f\u041e\u000e\u041e\u2f44\u000b\u041e\u0003\u041e",
+ "\u0003\u041e\u0003\u041f\u0003\u041f\u0003\u041f\u0003\u041f\u0003\u041f",
+ "\u0003\u041f\u0007\u041f\u2f4e\n\u041f\f\u041f\u000e\u041f\u2f51\u000b",
+ "\u041f\u0003\u041f\u0003\u041f\u0003\u0420\u0003\u0420\u0003\u0421\u0003",
+ "\u0421\u0003\u0422\u0003\u0422\u0003\u0422\u0006\u0422\u2f5c\n\u0422",
+ "\r\u0422\u000e\u0422\u2f5d\u0003\u0422\u0003\u0422\u0003\u0423\u0003",
+ "\u0423\u0003\u0423\u0003\u0423\u0006\u0855\u0862\u2f1f\u2f25\u0002\u0424",
+ "\u0003\u0003\u0005\u0004\u0007\u0005\t\u0006\u000b\u0007\r\b\u000f\t",
+ "\u0011\n\u0013\u000b\u0015\f\u0017\r\u0019\u000e\u001b\u000f\u001d\u0010",
+ "\u001f\u0011!\u0012#\u0013%\u0014\'\u0015)\u0016+\u0017-\u0018/\u0019",
+ "1\u001a3\u001b5\u001c7\u001d9\u001e;\u001f= ?!A\"C#E$G%I&K\'M(O)Q*S",
+ "+U,W-Y.[/]0_1a2c3e4g5i6k7m8o9q:s;u{?}@\u007fA\u0081B\u0083C\u0085",
+ "D\u0087E\u0089F\u008bG\u008dH\u008fI\u0091J\u0093K\u0095L\u0097M\u0099",
+ "N\u009bO\u009dP\u009fQ\u00a1R\u00a3S\u00a5T\u00a7U\u00a9V\u00abW\u00ad",
+ "X\u00afY\u00b1Z\u00b3[\u00b5\\\u00b7]\u00b9^\u00bb_\u00bd`\u00bfa\u00c1",
+ "b\u00c3c\u00c5d\u00c7e\u00c9f\u00cbg\u00cdh\u00cfi\u00d1j\u00d3k\u00d5",
+ "l\u00d7m\u00d9n\u00dbo\u00ddp\u00dfq\u00e1r\u00e3s\u00e5t\u00e7u\u00e9",
+ "v\u00ebw\u00edx\u00efy\u00f1z\u00f3{\u00f5|\u00f7}\u00f9~\u00fb\u007f",
+ "\u00fd\u0080\u00ff\u0081\u0101\u0082\u0103\u0083\u0105\u0084\u0107\u0085",
+ "\u0109\u0086\u010b\u0087\u010d\u0088\u010f\u0089\u0111\u008a\u0113\u008b",
+ "\u0115\u008c\u0117\u008d\u0119\u008e\u011b\u008f\u011d\u0090\u011f\u0091",
+ "\u0121\u0092\u0123\u0093\u0125\u0094\u0127\u0095\u0129\u0096\u012b\u0097",
+ "\u012d\u0098\u012f\u0099\u0131\u009a\u0133\u009b\u0135\u009c\u0137\u009d",
+ "\u0139\u009e\u013b\u009f\u013d\u00a0\u013f\u00a1\u0141\u00a2\u0143\u00a3",
+ "\u0145\u00a4\u0147\u00a5\u0149\u00a6\u014b\u00a7\u014d\u00a8\u014f\u00a9",
+ "\u0151\u00aa\u0153\u00ab\u0155\u00ac\u0157\u00ad\u0159\u00ae\u015b\u00af",
+ "\u015d\u00b0\u015f\u00b1\u0161\u00b2\u0163\u00b3\u0165\u00b4\u0167\u00b5",
+ "\u0169\u00b6\u016b\u00b7\u016d\u00b8\u016f\u00b9\u0171\u00ba\u0173\u00bb",
+ "\u0175\u00bc\u0177\u00bd\u0179\u00be\u017b\u00bf\u017d\u00c0\u017f\u00c1",
+ "\u0181\u00c2\u0183\u00c3\u0185\u00c4\u0187\u00c5\u0189\u00c6\u018b\u00c7",
+ "\u018d\u00c8\u018f\u00c9\u0191\u00ca\u0193\u00cb\u0195\u00cc\u0197\u00cd",
+ "\u0199\u00ce\u019b\u00cf\u019d\u00d0\u019f\u00d1\u01a1\u00d2\u01a3\u00d3",
+ "\u01a5\u00d4\u01a7\u00d5\u01a9\u00d6\u01ab\u00d7\u01ad\u00d8\u01af\u00d9",
+ "\u01b1\u00da\u01b3\u00db\u01b5\u00dc\u01b7\u00dd\u01b9\u00de\u01bb\u00df",
+ "\u01bd\u00e0\u01bf\u00e1\u01c1\u00e2\u01c3\u00e3\u01c5\u00e4\u01c7\u00e5",
+ "\u01c9\u00e6\u01cb\u00e7\u01cd\u00e8\u01cf\u00e9\u01d1\u00ea\u01d3\u00eb",
+ "\u01d5\u00ec\u01d7\u00ed\u01d9\u00ee\u01db\u00ef\u01dd\u00f0\u01df\u00f1",
+ "\u01e1\u00f2\u01e3\u00f3\u01e5\u00f4\u01e7\u00f5\u01e9\u00f6\u01eb\u00f7",
+ "\u01ed\u00f8\u01ef\u00f9\u01f1\u00fa\u01f3\u00fb\u01f5\u00fc\u01f7\u00fd",
+ "\u01f9\u00fe\u01fb\u00ff\u01fd\u0100\u01ff\u0101\u0201\u0102\u0203\u0103",
+ "\u0205\u0104\u0207\u0105\u0209\u0106\u020b\u0107\u020d\u0108\u020f\u0109",
+ "\u0211\u010a\u0213\u010b\u0215\u010c\u0217\u010d\u0219\u010e\u021b\u010f",
+ "\u021d\u0110\u021f\u0111\u0221\u0112\u0223\u0113\u0225\u0114\u0227\u0115",
+ "\u0229\u0116\u022b\u0117\u022d\u0118\u022f\u0119\u0231\u011a\u0233\u011b",
+ "\u0235\u011c\u0237\u011d\u0239\u011e\u023b\u011f\u023d\u0120\u023f\u0121",
+ "\u0241\u0122\u0243\u0123\u0245\u0124\u0247\u0125\u0249\u0126\u024b\u0127",
+ "\u024d\u0128\u024f\u0129\u0251\u012a\u0253\u012b\u0255\u012c\u0257\u012d",
+ "\u0259\u012e\u025b\u012f\u025d\u0130\u025f\u0131\u0261\u0132\u0263\u0133",
+ "\u0265\u0134\u0267\u0135\u0269\u0136\u026b\u0137\u026d\u0138\u026f\u0139",
+ "\u0271\u013a\u0273\u013b\u0275\u013c\u0277\u013d\u0279\u013e\u027b\u013f",
+ "\u027d\u0140\u027f\u0141\u0281\u0142\u0283\u0143\u0285\u0144\u0287\u0145",
+ "\u0289\u0146\u028b\u0147\u028d\u0148\u028f\u0149\u0291\u014a\u0293\u014b",
+ "\u0295\u014c\u0297\u014d\u0299\u014e\u029b\u014f\u029d\u0150\u029f\u0151",
+ "\u02a1\u0152\u02a3\u0153\u02a5\u0154\u02a7\u0155\u02a9\u0156\u02ab\u0157",
+ "\u02ad\u0158\u02af\u0159\u02b1\u015a\u02b3\u015b\u02b5\u015c\u02b7\u015d",
+ "\u02b9\u015e\u02bb\u015f\u02bd\u0160\u02bf\u0161\u02c1\u0162\u02c3\u0163",
+ "\u02c5\u0164\u02c7\u0165\u02c9\u0166\u02cb\u0167\u02cd\u0168\u02cf\u0169",
+ "\u02d1\u016a\u02d3\u016b\u02d5\u016c\u02d7\u016d\u02d9\u016e\u02db\u016f",
+ "\u02dd\u0170\u02df\u0171\u02e1\u0172\u02e3\u0173\u02e5\u0174\u02e7\u0175",
+ "\u02e9\u0176\u02eb\u0177\u02ed\u0178\u02ef\u0179\u02f1\u017a\u02f3\u017b",
+ "\u02f5\u017c\u02f7\u017d\u02f9\u017e\u02fb\u017f\u02fd\u0180\u02ff\u0181",
+ "\u0301\u0182\u0303\u0183\u0305\u0184\u0307\u0185\u0309\u0186\u030b\u0187",
+ "\u030d\u0188\u030f\u0189\u0311\u018a\u0313\u018b\u0315\u018c\u0317\u018d",
+ "\u0319\u018e\u031b\u018f\u031d\u0190\u031f\u0191\u0321\u0192\u0323\u0193",
+ "\u0325\u0194\u0327\u0195\u0329\u0196\u032b\u0197\u032d\u0198\u032f\u0199",
+ "\u0331\u019a\u0333\u019b\u0335\u019c\u0337\u019d\u0339\u019e\u033b\u019f",
+ "\u033d\u01a0\u033f\u01a1\u0341\u01a2\u0343\u01a3\u0345\u01a4\u0347\u01a5",
+ "\u0349\u01a6\u034b\u01a7\u034d\u01a8\u034f\u01a9\u0351\u01aa\u0353\u01ab",
+ "\u0355\u01ac\u0357\u01ad\u0359\u01ae\u035b\u01af\u035d\u01b0\u035f\u01b1",
+ "\u0361\u01b2\u0363\u01b3\u0365\u01b4\u0367\u01b5\u0369\u01b6\u036b\u01b7",
+ "\u036d\u01b8\u036f\u01b9\u0371\u01ba\u0373\u01bb\u0375\u01bc\u0377\u01bd",
+ "\u0379\u01be\u037b\u01bf\u037d\u01c0\u037f\u01c1\u0381\u01c2\u0383\u01c3",
+ "\u0385\u01c4\u0387\u01c5\u0389\u01c6\u038b\u01c7\u038d\u01c8\u038f\u01c9",
+ "\u0391\u01ca\u0393\u01cb\u0395\u01cc\u0397\u01cd\u0399\u01ce\u039b\u01cf",
+ "\u039d\u01d0\u039f\u01d1\u03a1\u01d2\u03a3\u01d3\u03a5\u01d4\u03a7\u01d5",
+ "\u03a9\u01d6\u03ab\u01d7\u03ad\u01d8\u03af\u01d9\u03b1\u01da\u03b3\u01db",
+ "\u03b5\u01dc\u03b7\u01dd\u03b9\u01de\u03bb\u01df\u03bd\u01e0\u03bf\u01e1",
+ "\u03c1\u01e2\u03c3\u01e3\u03c5\u01e4\u03c7\u01e5\u03c9\u01e6\u03cb\u01e7",
+ "\u03cd\u01e8\u03cf\u01e9\u03d1\u01ea\u03d3\u01eb\u03d5\u01ec\u03d7\u01ed",
+ "\u03d9\u01ee\u03db\u01ef\u03dd\u01f0\u03df\u01f1\u03e1\u01f2\u03e3\u01f3",
+ "\u03e5\u01f4\u03e7\u01f5\u03e9\u01f6\u03eb\u01f7\u03ed\u01f8\u03ef\u01f9",
+ "\u03f1\u01fa\u03f3\u01fb\u03f5\u01fc\u03f7\u01fd\u03f9\u01fe\u03fb\u01ff",
+ "\u03fd\u0200\u03ff\u0201\u0401\u0202\u0403\u0203\u0405\u0204\u0407\u0205",
+ "\u0409\u0206\u040b\u0207\u040d\u0208\u040f\u0209\u0411\u020a\u0413\u020b",
+ "\u0415\u020c\u0417\u020d\u0419\u020e\u041b\u020f\u041d\u0210\u041f\u0211",
+ "\u0421\u0212\u0423\u0213\u0425\u0214\u0427\u0215\u0429\u0216\u042b\u0217",
+ "\u042d\u0218\u042f\u0219\u0431\u021a\u0433\u021b\u0435\u021c\u0437\u021d",
+ "\u0439\u021e\u043b\u021f\u043d\u0220\u043f\u0221\u0441\u0222\u0443\u0223",
+ "\u0445\u0224\u0447\u0225\u0449\u0226\u044b\u0227\u044d\u0228\u044f\u0229",
+ "\u0451\u022a\u0453\u022b\u0455\u022c\u0457\u022d\u0459\u022e\u045b\u022f",
+ "\u045d\u0230\u045f\u0231\u0461\u0232\u0463\u0233\u0465\u0234\u0467\u0235",
+ "\u0469\u0236\u046b\u0237\u046d\u0238\u046f\u0239\u0471\u023a\u0473\u023b",
+ "\u0475\u023c\u0477\u023d\u0479\u023e\u047b\u023f\u047d\u0240\u047f\u0241",
+ "\u0481\u0242\u0483\u0243\u0485\u0244\u0487\u0245\u0489\u0246\u048b\u0247",
+ "\u048d\u0248\u048f\u0249\u0491\u024a\u0493\u024b\u0495\u024c\u0497\u024d",
+ "\u0499\u024e\u049b\u024f\u049d\u0250\u049f\u0251\u04a1\u0252\u04a3\u0253",
+ "\u04a5\u0254\u04a7\u0255\u04a9\u0256\u04ab\u0257\u04ad\u0258\u04af\u0259",
+ "\u04b1\u025a\u04b3\u025b\u04b5\u025c\u04b7\u025d\u04b9\u025e\u04bb\u025f",
+ "\u04bd\u0260\u04bf\u0261\u04c1\u0262\u04c3\u0263\u04c5\u0264\u04c7\u0265",
+ "\u04c9\u0266\u04cb\u0267\u04cd\u0268\u04cf\u0269\u04d1\u026a\u04d3\u026b",
+ "\u04d5\u026c\u04d7\u026d\u04d9\u026e\u04db\u026f\u04dd\u0270\u04df\u0271",
+ "\u04e1\u0272\u04e3\u0273\u04e5\u0274\u04e7\u0275\u04e9\u0276\u04eb\u0277",
+ "\u04ed\u0278\u04ef\u0279\u04f1\u027a\u04f3\u027b\u04f5\u027c\u04f7\u027d",
+ "\u04f9\u027e\u04fb\u027f\u04fd\u0280\u04ff\u0281\u0501\u0282\u0503\u0283",
+ "\u0505\u0284\u0507\u0285\u0509\u0286\u050b\u0287\u050d\u0288\u050f\u0289",
+ "\u0511\u028a\u0513\u028b\u0515\u028c\u0517\u028d\u0519\u028e\u051b\u028f",
+ "\u051d\u0290\u051f\u0291\u0521\u0292\u0523\u0293\u0525\u0294\u0527\u0295",
+ "\u0529\u0296\u052b\u0297\u052d\u0298\u052f\u0299\u0531\u029a\u0533\u029b",
+ "\u0535\u029c\u0537\u029d\u0539\u029e\u053b\u029f\u053d\u02a0\u053f\u02a1",
+ "\u0541\u02a2\u0543\u02a3\u0545\u02a4\u0547\u02a5\u0549\u02a6\u054b\u02a7",
+ "\u054d\u02a8\u054f\u02a9\u0551\u02aa\u0553\u02ab\u0555\u02ac\u0557\u02ad",
+ "\u0559\u02ae\u055b\u02af\u055d\u02b0\u055f\u02b1\u0561\u02b2\u0563\u02b3",
+ "\u0565\u02b4\u0567\u02b5\u0569\u02b6\u056b\u02b7\u056d\u02b8\u056f\u02b9",
+ "\u0571\u02ba\u0573\u02bb\u0575\u02bc\u0577\u02bd\u0579\u02be\u057b\u02bf",
+ "\u057d\u02c0\u057f\u02c1\u0581\u02c2\u0583\u02c3\u0585\u02c4\u0587\u02c5",
+ "\u0589\u02c6\u058b\u02c7\u058d\u02c8\u058f\u02c9\u0591\u02ca\u0593\u02cb",
+ "\u0595\u02cc\u0597\u02cd\u0599\u02ce\u059b\u02cf\u059d\u02d0\u059f\u02d1",
+ "\u05a1\u02d2\u05a3\u02d3\u05a5\u02d4\u05a7\u02d5\u05a9\u02d6\u05ab\u02d7",
+ "\u05ad\u02d8\u05af\u02d9\u05b1\u02da\u05b3\u02db\u05b5\u02dc\u05b7\u02dd",
+ "\u05b9\u02de\u05bb\u02df\u05bd\u02e0\u05bf\u02e1\u05c1\u02e2\u05c3\u02e3",
+ "\u05c5\u02e4\u05c7\u02e5\u05c9\u02e6\u05cb\u02e7\u05cd\u02e8\u05cf\u02e9",
+ "\u05d1\u02ea\u05d3\u02eb\u05d5\u02ec\u05d7\u02ed\u05d9\u02ee\u05db\u02ef",
+ "\u05dd\u02f0\u05df\u02f1\u05e1\u02f2\u05e3\u02f3\u05e5\u02f4\u05e7\u02f5",
+ "\u05e9\u02f6\u05eb\u02f7\u05ed\u02f8\u05ef\u02f9\u05f1\u02fa\u05f3\u02fb",
+ "\u05f5\u02fc\u05f7\u02fd\u05f9\u02fe\u05fb\u02ff\u05fd\u0300\u05ff\u0301",
+ "\u0601\u0302\u0603\u0303\u0605\u0304\u0607\u0305\u0609\u0306\u060b\u0307",
+ "\u060d\u0308\u060f\u0309\u0611\u030a\u0613\u030b\u0615\u030c\u0617\u030d",
+ "\u0619\u030e\u061b\u030f\u061d\u0310\u061f\u0311\u0621\u0312\u0623\u0313",
+ "\u0625\u0314\u0627\u0315\u0629\u0316\u062b\u0317\u062d\u0318\u062f\u0319",
+ "\u0631\u031a\u0633\u031b\u0635\u031c\u0637\u031d\u0639\u031e\u063b\u031f",
+ "\u063d\u0320\u063f\u0321\u0641\u0322\u0643\u0323\u0645\u0324\u0647\u0325",
+ "\u0649\u0326\u064b\u0327\u064d\u0328\u064f\u0329\u0651\u032a\u0653\u032b",
+ "\u0655\u032c\u0657\u032d\u0659\u032e\u065b\u032f\u065d\u0330\u065f\u0331",
+ "\u0661\u0332\u0663\u0333\u0665\u0334\u0667\u0335\u0669\u0336\u066b\u0337",
+ "\u066d\u0338\u066f\u0339\u0671\u033a\u0673\u033b\u0675\u033c\u0677\u033d",
+ "\u0679\u033e\u067b\u033f\u067d\u0340\u067f\u0341\u0681\u0342\u0683\u0343",
+ "\u0685\u0344\u0687\u0345\u0689\u0346\u068b\u0347\u068d\u0348\u068f\u0349",
+ "\u0691\u034a\u0693\u034b\u0695\u034c\u0697\u034d\u0699\u034e\u069b\u034f",
+ "\u069d\u0350\u069f\u0351\u06a1\u0352\u06a3\u0353\u06a5\u0354\u06a7\u0355",
+ "\u06a9\u0356\u06ab\u0357\u06ad\u0358\u06af\u0359\u06b1\u035a\u06b3\u035b",
+ "\u06b5\u035c\u06b7\u035d\u06b9\u035e\u06bb\u035f\u06bd\u0360\u06bf\u0361",
+ "\u06c1\u0362\u06c3\u0363\u06c5\u0364\u06c7\u0365\u06c9\u0366\u06cb\u0367",
+ "\u06cd\u0368\u06cf\u0369\u06d1\u036a\u06d3\u036b\u06d5\u036c\u06d7\u036d",
+ "\u06d9\u036e\u06db\u036f\u06dd\u0370\u06df\u0371\u06e1\u0372\u06e3\u0373",
+ "\u06e5\u0374\u06e7\u0375\u06e9\u0376\u06eb\u0377\u06ed\u0378\u06ef\u0379",
+ "\u06f1\u037a\u06f3\u037b\u06f5\u037c\u06f7\u037d\u06f9\u037e\u06fb\u037f",
+ "\u06fd\u0380\u06ff\u0381\u0701\u0382\u0703\u0383\u0705\u0384\u0707\u0385",
+ "\u0709\u0386\u070b\u0387\u070d\u0388\u070f\u0389\u0711\u038a\u0713\u038b",
+ "\u0715\u038c\u0717\u038d\u0719\u038e\u071b\u038f\u071d\u0390\u071f\u0391",
+ "\u0721\u0392\u0723\u0393\u0725\u0394\u0727\u0395\u0729\u0396\u072b\u0397",
+ "\u072d\u0398\u072f\u0399\u0731\u039a\u0733\u039b\u0735\u039c\u0737\u039d",
+ "\u0739\u039e\u073b\u039f\u073d\u03a0\u073f\u03a1\u0741\u03a2\u0743\u03a3",
+ "\u0745\u03a4\u0747\u03a5\u0749\u03a6\u074b\u03a7\u074d\u03a8\u074f\u03a9",
+ "\u0751\u03aa\u0753\u03ab\u0755\u03ac\u0757\u03ad\u0759\u03ae\u075b\u03af",
+ "\u075d\u03b0\u075f\u03b1\u0761\u03b2\u0763\u03b3\u0765\u03b4\u0767\u03b5",
+ "\u0769\u03b6\u076b\u03b7\u076d\u03b8\u076f\u03b9\u0771\u03ba\u0773\u03bb",
+ "\u0775\u03bc\u0777\u03bd\u0779\u03be\u077b\u03bf\u077d\u03c0\u077f\u03c1",
+ "\u0781\u03c2\u0783\u03c3\u0785\u03c4\u0787\u03c5\u0789\u03c6\u078b\u03c7",
+ "\u078d\u03c8\u078f\u03c9\u0791\u03ca\u0793\u03cb\u0795\u03cc\u0797\u03cd",
+ "\u0799\u03ce\u079b\u03cf\u079d\u03d0\u079f\u03d1\u07a1\u03d2\u07a3\u03d3",
+ "\u07a5\u03d4\u07a7\u03d5\u07a9\u03d6\u07ab\u03d7\u07ad\u03d8\u07af\u03d9",
+ "\u07b1\u03da\u07b3\u03db\u07b5\u03dc\u07b7\u03dd\u07b9\u03de\u07bb\u03df",
+ "\u07bd\u03e0\u07bf\u03e1\u07c1\u03e2\u07c3\u03e3\u07c5\u03e4\u07c7\u03e5",
+ "\u07c9\u03e6\u07cb\u03e7\u07cd\u03e8\u07cf\u03e9\u07d1\u03ea\u07d3\u03eb",
+ "\u07d5\u03ec\u07d7\u03ed\u07d9\u03ee\u07db\u03ef\u07dd\u03f0\u07df\u03f1",
+ "\u07e1\u03f2\u07e3\u03f3\u07e5\u03f4\u07e7\u03f5\u07e9\u03f6\u07eb\u03f7",
+ "\u07ed\u03f8\u07ef\u03f9\u07f1\u03fa\u07f3\u03fb\u07f5\u03fc\u07f7\u03fd",
+ "\u07f9\u03fe\u07fb\u03ff\u07fd\u0400\u07ff\u0401\u0801\u0402\u0803\u0403",
+ "\u0805\u0404\u0807\u0405\u0809\u0406\u080b\u0407\u080d\u0408\u080f\u0409",
+ "\u0811\u0002\u0813\u040a\u0815\u040b\u0817\u040c\u0819\u040d\u081b\u040e",
+ "\u081d\u040f\u081f\u0410\u0821\u0411\u0823\u0412\u0825\u0413\u0827\u0414",
+ "\u0829\u0415\u082b\u0416\u082d\u0417\u082f\u0418\u0831\u0419\u0833\u0002",
+ "\u0835\u0002\u0837\u0002\u0839\u0002\u083b\u0002\u083d\u0002\u083f\u0002",
+ "\u0841\u0002\u0843\u0002\u0845\u041a\u0003\u0002\u0010\u0005\u0002\u000b",
+ "\f\u000f\u000f\"\"\u0004\u0002\f\f\u000f\u000f\u0006\u0002IIMMOOVV\u0003",
+ "\u0002bb\u0007\u0002&&002;C\\aa\u0004\u0002--//\u0006\u0002&&2;C\\a",
+ "a\u0005\u0002&&C\\aa\u0004\u0002$$^^\u0004\u0002))^^\u0004\u0002^^b",
+ "b\u0004\u00022;CH\u0003\u00022;\u0003\u000223\u0002\u2fbe\u0002\u0003",
+ "\u0003\u0002\u0002\u0002\u0002\u0005\u0003\u0002\u0002\u0002\u0002\u0007",
+ "\u0003\u0002\u0002\u0002\u0002\t\u0003\u0002\u0002\u0002\u0002\u000b",
+ "\u0003\u0002\u0002\u0002\u0002\r\u0003\u0002\u0002\u0002\u0002\u000f",
+ "\u0003\u0002\u0002\u0002\u0002\u0011\u0003\u0002\u0002\u0002\u0002\u0013",
+ "\u0003\u0002\u0002\u0002\u0002\u0015\u0003\u0002\u0002\u0002\u0002\u0017",
+ "\u0003\u0002\u0002\u0002\u0002\u0019\u0003\u0002\u0002\u0002\u0002\u001b",
+ "\u0003\u0002\u0002\u0002\u0002\u001d\u0003\u0002\u0002\u0002\u0002\u001f",
+ "\u0003\u0002\u0002\u0002\u0002!\u0003\u0002\u0002\u0002\u0002#\u0003",
+ "\u0002\u0002\u0002\u0002%\u0003\u0002\u0002\u0002\u0002\'\u0003\u0002",
+ "\u0002\u0002\u0002)\u0003\u0002\u0002\u0002\u0002+\u0003\u0002\u0002",
+ "\u0002\u0002-\u0003\u0002\u0002\u0002\u0002/\u0003\u0002\u0002\u0002",
+ "\u00021\u0003\u0002\u0002\u0002\u00023\u0003\u0002\u0002\u0002\u0002",
+ "5\u0003\u0002\u0002\u0002\u00027\u0003\u0002\u0002\u0002\u00029\u0003",
+ "\u0002\u0002\u0002\u0002;\u0003\u0002\u0002\u0002\u0002=\u0003\u0002",
+ "\u0002\u0002\u0002?\u0003\u0002\u0002\u0002\u0002A\u0003\u0002\u0002",
+ "\u0002\u0002C\u0003\u0002\u0002\u0002\u0002E\u0003\u0002\u0002\u0002",
+ "\u0002G\u0003\u0002\u0002\u0002\u0002I\u0003\u0002\u0002\u0002\u0002",
+ "K\u0003\u0002\u0002\u0002\u0002M\u0003\u0002\u0002\u0002\u0002O\u0003",
+ "\u0002\u0002\u0002\u0002Q\u0003\u0002\u0002\u0002\u0002S\u0003\u0002",
+ "\u0002\u0002\u0002U\u0003\u0002\u0002\u0002\u0002W\u0003\u0002\u0002",
+ "\u0002\u0002Y\u0003\u0002\u0002\u0002\u0002[\u0003\u0002\u0002\u0002",
+ "\u0002]\u0003\u0002\u0002\u0002\u0002_\u0003\u0002\u0002\u0002\u0002",
+ "a\u0003\u0002\u0002\u0002\u0002c\u0003\u0002\u0002\u0002\u0002e\u0003",
+ "\u0002\u0002\u0002\u0002g\u0003\u0002\u0002\u0002\u0002i\u0003\u0002",
+ "\u0002\u0002\u0002k\u0003\u0002\u0002\u0002\u0002m\u0003\u0002\u0002",
+ "\u0002\u0002o\u0003\u0002\u0002\u0002\u0002q\u0003\u0002\u0002\u0002",
+ "\u0002s\u0003\u0002\u0002\u0002\u0002u\u0003\u0002\u0002\u0002\u0002",
+ "w\u0003\u0002\u0002\u0002\u0002y\u0003\u0002\u0002\u0002\u0002{\u0003",
+ "\u0002\u0002\u0002\u0002}\u0003\u0002\u0002\u0002\u0002\u007f\u0003",
+ "\u0002\u0002\u0002\u0002\u0081\u0003\u0002\u0002\u0002\u0002\u0083\u0003",
+ "\u0002\u0002\u0002\u0002\u0085\u0003\u0002\u0002\u0002\u0002\u0087\u0003",
+ "\u0002\u0002\u0002\u0002\u0089\u0003\u0002\u0002\u0002\u0002\u008b\u0003",
+ "\u0002\u0002\u0002\u0002\u008d\u0003\u0002\u0002\u0002\u0002\u008f\u0003",
+ "\u0002\u0002\u0002\u0002\u0091\u0003\u0002\u0002\u0002\u0002\u0093\u0003",
+ "\u0002\u0002\u0002\u0002\u0095\u0003\u0002\u0002\u0002\u0002\u0097\u0003",
+ "\u0002\u0002\u0002\u0002\u0099\u0003\u0002\u0002\u0002\u0002\u009b\u0003",
+ "\u0002\u0002\u0002\u0002\u009d\u0003\u0002\u0002\u0002\u0002\u009f\u0003",
+ "\u0002\u0002\u0002\u0002\u00a1\u0003\u0002\u0002\u0002\u0002\u00a3\u0003",
+ "\u0002\u0002\u0002\u0002\u00a5\u0003\u0002\u0002\u0002\u0002\u00a7\u0003",
+ "\u0002\u0002\u0002\u0002\u00a9\u0003\u0002\u0002\u0002\u0002\u00ab\u0003",
+ "\u0002\u0002\u0002\u0002\u00ad\u0003\u0002\u0002\u0002\u0002\u00af\u0003",
+ "\u0002\u0002\u0002\u0002\u00b1\u0003\u0002\u0002\u0002\u0002\u00b3\u0003",
+ "\u0002\u0002\u0002\u0002\u00b5\u0003\u0002\u0002\u0002\u0002\u00b7\u0003",
+ "\u0002\u0002\u0002\u0002\u00b9\u0003\u0002\u0002\u0002\u0002\u00bb\u0003",
+ "\u0002\u0002\u0002\u0002\u00bd\u0003\u0002\u0002\u0002\u0002\u00bf\u0003",
+ "\u0002\u0002\u0002\u0002\u00c1\u0003\u0002\u0002\u0002\u0002\u00c3\u0003",
+ "\u0002\u0002\u0002\u0002\u00c5\u0003\u0002\u0002\u0002\u0002\u00c7\u0003",
+ "\u0002\u0002\u0002\u0002\u00c9\u0003\u0002\u0002\u0002\u0002\u00cb\u0003",
+ "\u0002\u0002\u0002\u0002\u00cd\u0003\u0002\u0002\u0002\u0002\u00cf\u0003",
+ "\u0002\u0002\u0002\u0002\u00d1\u0003\u0002\u0002\u0002\u0002\u00d3\u0003",
+ "\u0002\u0002\u0002\u0002\u00d5\u0003\u0002\u0002\u0002\u0002\u00d7\u0003",
+ "\u0002\u0002\u0002\u0002\u00d9\u0003\u0002\u0002\u0002\u0002\u00db\u0003",
+ "\u0002\u0002\u0002\u0002\u00dd\u0003\u0002\u0002\u0002\u0002\u00df\u0003",
+ "\u0002\u0002\u0002\u0002\u00e1\u0003\u0002\u0002\u0002\u0002\u00e3\u0003",
+ "\u0002\u0002\u0002\u0002\u00e5\u0003\u0002\u0002\u0002\u0002\u00e7\u0003",
+ "\u0002\u0002\u0002\u0002\u00e9\u0003\u0002\u0002\u0002\u0002\u00eb\u0003",
+ "\u0002\u0002\u0002\u0002\u00ed\u0003\u0002\u0002\u0002\u0002\u00ef\u0003",
+ "\u0002\u0002\u0002\u0002\u00f1\u0003\u0002\u0002\u0002\u0002\u00f3\u0003",
+ "\u0002\u0002\u0002\u0002\u00f5\u0003\u0002\u0002\u0002\u0002\u00f7\u0003",
+ "\u0002\u0002\u0002\u0002\u00f9\u0003\u0002\u0002\u0002\u0002\u00fb\u0003",
+ "\u0002\u0002\u0002\u0002\u00fd\u0003\u0002\u0002\u0002\u0002\u00ff\u0003",
+ "\u0002\u0002\u0002\u0002\u0101\u0003\u0002\u0002\u0002\u0002\u0103\u0003",
+ "\u0002\u0002\u0002\u0002\u0105\u0003\u0002\u0002\u0002\u0002\u0107\u0003",
+ "\u0002\u0002\u0002\u0002\u0109\u0003\u0002\u0002\u0002\u0002\u010b\u0003",
+ "\u0002\u0002\u0002\u0002\u010d\u0003\u0002\u0002\u0002\u0002\u010f\u0003",
+ "\u0002\u0002\u0002\u0002\u0111\u0003\u0002\u0002\u0002\u0002\u0113\u0003",
+ "\u0002\u0002\u0002\u0002\u0115\u0003\u0002\u0002\u0002\u0002\u0117\u0003",
+ "\u0002\u0002\u0002\u0002\u0119\u0003\u0002\u0002\u0002\u0002\u011b\u0003",
+ "\u0002\u0002\u0002\u0002\u011d\u0003\u0002\u0002\u0002\u0002\u011f\u0003",
+ "\u0002\u0002\u0002\u0002\u0121\u0003\u0002\u0002\u0002\u0002\u0123\u0003",
+ "\u0002\u0002\u0002\u0002\u0125\u0003\u0002\u0002\u0002\u0002\u0127\u0003",
+ "\u0002\u0002\u0002\u0002\u0129\u0003\u0002\u0002\u0002\u0002\u012b\u0003",
+ "\u0002\u0002\u0002\u0002\u012d\u0003\u0002\u0002\u0002\u0002\u012f\u0003",
+ "\u0002\u0002\u0002\u0002\u0131\u0003\u0002\u0002\u0002\u0002\u0133\u0003",
+ "\u0002\u0002\u0002\u0002\u0135\u0003\u0002\u0002\u0002\u0002\u0137\u0003",
+ "\u0002\u0002\u0002\u0002\u0139\u0003\u0002\u0002\u0002\u0002\u013b\u0003",
+ "\u0002\u0002\u0002\u0002\u013d\u0003\u0002\u0002\u0002\u0002\u013f\u0003",
+ "\u0002\u0002\u0002\u0002\u0141\u0003\u0002\u0002\u0002\u0002\u0143\u0003",
+ "\u0002\u0002\u0002\u0002\u0145\u0003\u0002\u0002\u0002\u0002\u0147\u0003",
+ "\u0002\u0002\u0002\u0002\u0149\u0003\u0002\u0002\u0002\u0002\u014b\u0003",
+ "\u0002\u0002\u0002\u0002\u014d\u0003\u0002\u0002\u0002\u0002\u014f\u0003",
+ "\u0002\u0002\u0002\u0002\u0151\u0003\u0002\u0002\u0002\u0002\u0153\u0003",
+ "\u0002\u0002\u0002\u0002\u0155\u0003\u0002\u0002\u0002\u0002\u0157\u0003",
+ "\u0002\u0002\u0002\u0002\u0159\u0003\u0002\u0002\u0002\u0002\u015b\u0003",
+ "\u0002\u0002\u0002\u0002\u015d\u0003\u0002\u0002\u0002\u0002\u015f\u0003",
+ "\u0002\u0002\u0002\u0002\u0161\u0003\u0002\u0002\u0002\u0002\u0163\u0003",
+ "\u0002\u0002\u0002\u0002\u0165\u0003\u0002\u0002\u0002\u0002\u0167\u0003",
+ "\u0002\u0002\u0002\u0002\u0169\u0003\u0002\u0002\u0002\u0002\u016b\u0003",
+ "\u0002\u0002\u0002\u0002\u016d\u0003\u0002\u0002\u0002\u0002\u016f\u0003",
+ "\u0002\u0002\u0002\u0002\u0171\u0003\u0002\u0002\u0002\u0002\u0173\u0003",
+ "\u0002\u0002\u0002\u0002\u0175\u0003\u0002\u0002\u0002\u0002\u0177\u0003",
+ "\u0002\u0002\u0002\u0002\u0179\u0003\u0002\u0002\u0002\u0002\u017b\u0003",
+ "\u0002\u0002\u0002\u0002\u017d\u0003\u0002\u0002\u0002\u0002\u017f\u0003",
+ "\u0002\u0002\u0002\u0002\u0181\u0003\u0002\u0002\u0002\u0002\u0183\u0003",
+ "\u0002\u0002\u0002\u0002\u0185\u0003\u0002\u0002\u0002\u0002\u0187\u0003",
+ "\u0002\u0002\u0002\u0002\u0189\u0003\u0002\u0002\u0002\u0002\u018b\u0003",
+ "\u0002\u0002\u0002\u0002\u018d\u0003\u0002\u0002\u0002\u0002\u018f\u0003",
+ "\u0002\u0002\u0002\u0002\u0191\u0003\u0002\u0002\u0002\u0002\u0193\u0003",
+ "\u0002\u0002\u0002\u0002\u0195\u0003\u0002\u0002\u0002\u0002\u0197\u0003",
+ "\u0002\u0002\u0002\u0002\u0199\u0003\u0002\u0002\u0002\u0002\u019b\u0003",
+ "\u0002\u0002\u0002\u0002\u019d\u0003\u0002\u0002\u0002\u0002\u019f\u0003",
+ "\u0002\u0002\u0002\u0002\u01a1\u0003\u0002\u0002\u0002\u0002\u01a3\u0003",
+ "\u0002\u0002\u0002\u0002\u01a5\u0003\u0002\u0002\u0002\u0002\u01a7\u0003",
+ "\u0002\u0002\u0002\u0002\u01a9\u0003\u0002\u0002\u0002\u0002\u01ab\u0003",
+ "\u0002\u0002\u0002\u0002\u01ad\u0003\u0002\u0002\u0002\u0002\u01af\u0003",
+ "\u0002\u0002\u0002\u0002\u01b1\u0003\u0002\u0002\u0002\u0002\u01b3\u0003",
+ "\u0002\u0002\u0002\u0002\u01b5\u0003\u0002\u0002\u0002\u0002\u01b7\u0003",
+ "\u0002\u0002\u0002\u0002\u01b9\u0003\u0002\u0002\u0002\u0002\u01bb\u0003",
+ "\u0002\u0002\u0002\u0002\u01bd\u0003\u0002\u0002\u0002\u0002\u01bf\u0003",
+ "\u0002\u0002\u0002\u0002\u01c1\u0003\u0002\u0002\u0002\u0002\u01c3\u0003",
+ "\u0002\u0002\u0002\u0002\u01c5\u0003\u0002\u0002\u0002\u0002\u01c7\u0003",
+ "\u0002\u0002\u0002\u0002\u01c9\u0003\u0002\u0002\u0002\u0002\u01cb\u0003",
+ "\u0002\u0002\u0002\u0002\u01cd\u0003\u0002\u0002\u0002\u0002\u01cf\u0003",
+ "\u0002\u0002\u0002\u0002\u01d1\u0003\u0002\u0002\u0002\u0002\u01d3\u0003",
+ "\u0002\u0002\u0002\u0002\u01d5\u0003\u0002\u0002\u0002\u0002\u01d7\u0003",
+ "\u0002\u0002\u0002\u0002\u01d9\u0003\u0002\u0002\u0002\u0002\u01db\u0003",
+ "\u0002\u0002\u0002\u0002\u01dd\u0003\u0002\u0002\u0002\u0002\u01df\u0003",
+ "\u0002\u0002\u0002\u0002\u01e1\u0003\u0002\u0002\u0002\u0002\u01e3\u0003",
+ "\u0002\u0002\u0002\u0002\u01e5\u0003\u0002\u0002\u0002\u0002\u01e7\u0003",
+ "\u0002\u0002\u0002\u0002\u01e9\u0003\u0002\u0002\u0002\u0002\u01eb\u0003",
+ "\u0002\u0002\u0002\u0002\u01ed\u0003\u0002\u0002\u0002\u0002\u01ef\u0003",
+ "\u0002\u0002\u0002\u0002\u01f1\u0003\u0002\u0002\u0002\u0002\u01f3\u0003",
+ "\u0002\u0002\u0002\u0002\u01f5\u0003\u0002\u0002\u0002\u0002\u01f7\u0003",
+ "\u0002\u0002\u0002\u0002\u01f9\u0003\u0002\u0002\u0002\u0002\u01fb\u0003",
+ "\u0002\u0002\u0002\u0002\u01fd\u0003\u0002\u0002\u0002\u0002\u01ff\u0003",
+ "\u0002\u0002\u0002\u0002\u0201\u0003\u0002\u0002\u0002\u0002\u0203\u0003",
+ "\u0002\u0002\u0002\u0002\u0205\u0003\u0002\u0002\u0002\u0002\u0207\u0003",
+ "\u0002\u0002\u0002\u0002\u0209\u0003\u0002\u0002\u0002\u0002\u020b\u0003",
+ "\u0002\u0002\u0002\u0002\u020d\u0003\u0002\u0002\u0002\u0002\u020f\u0003",
+ "\u0002\u0002\u0002\u0002\u0211\u0003\u0002\u0002\u0002\u0002\u0213\u0003",
+ "\u0002\u0002\u0002\u0002\u0215\u0003\u0002\u0002\u0002\u0002\u0217\u0003",
+ "\u0002\u0002\u0002\u0002\u0219\u0003\u0002\u0002\u0002\u0002\u021b\u0003",
+ "\u0002\u0002\u0002\u0002\u021d\u0003\u0002\u0002\u0002\u0002\u021f\u0003",
+ "\u0002\u0002\u0002\u0002\u0221\u0003\u0002\u0002\u0002\u0002\u0223\u0003",
+ "\u0002\u0002\u0002\u0002\u0225\u0003\u0002\u0002\u0002\u0002\u0227\u0003",
+ "\u0002\u0002\u0002\u0002\u0229\u0003\u0002\u0002\u0002\u0002\u022b\u0003",
+ "\u0002\u0002\u0002\u0002\u022d\u0003\u0002\u0002\u0002\u0002\u022f\u0003",
+ "\u0002\u0002\u0002\u0002\u0231\u0003\u0002\u0002\u0002\u0002\u0233\u0003",
+ "\u0002\u0002\u0002\u0002\u0235\u0003\u0002\u0002\u0002\u0002\u0237\u0003",
+ "\u0002\u0002\u0002\u0002\u0239\u0003\u0002\u0002\u0002\u0002\u023b\u0003",
+ "\u0002\u0002\u0002\u0002\u023d\u0003\u0002\u0002\u0002\u0002\u023f\u0003",
+ "\u0002\u0002\u0002\u0002\u0241\u0003\u0002\u0002\u0002\u0002\u0243\u0003",
+ "\u0002\u0002\u0002\u0002\u0245\u0003\u0002\u0002\u0002\u0002\u0247\u0003",
+ "\u0002\u0002\u0002\u0002\u0249\u0003\u0002\u0002\u0002\u0002\u024b\u0003",
+ "\u0002\u0002\u0002\u0002\u024d\u0003\u0002\u0002\u0002\u0002\u024f\u0003",
+ "\u0002\u0002\u0002\u0002\u0251\u0003\u0002\u0002\u0002\u0002\u0253\u0003",
+ "\u0002\u0002\u0002\u0002\u0255\u0003\u0002\u0002\u0002\u0002\u0257\u0003",
+ "\u0002\u0002\u0002\u0002\u0259\u0003\u0002\u0002\u0002\u0002\u025b\u0003",
+ "\u0002\u0002\u0002\u0002\u025d\u0003\u0002\u0002\u0002\u0002\u025f\u0003",
+ "\u0002\u0002\u0002\u0002\u0261\u0003\u0002\u0002\u0002\u0002\u0263\u0003",
+ "\u0002\u0002\u0002\u0002\u0265\u0003\u0002\u0002\u0002\u0002\u0267\u0003",
+ "\u0002\u0002\u0002\u0002\u0269\u0003\u0002\u0002\u0002\u0002\u026b\u0003",
+ "\u0002\u0002\u0002\u0002\u026d\u0003\u0002\u0002\u0002\u0002\u026f\u0003",
+ "\u0002\u0002\u0002\u0002\u0271\u0003\u0002\u0002\u0002\u0002\u0273\u0003",
+ "\u0002\u0002\u0002\u0002\u0275\u0003\u0002\u0002\u0002\u0002\u0277\u0003",
+ "\u0002\u0002\u0002\u0002\u0279\u0003\u0002\u0002\u0002\u0002\u027b\u0003",
+ "\u0002\u0002\u0002\u0002\u027d\u0003\u0002\u0002\u0002\u0002\u027f\u0003",
+ "\u0002\u0002\u0002\u0002\u0281\u0003\u0002\u0002\u0002\u0002\u0283\u0003",
+ "\u0002\u0002\u0002\u0002\u0285\u0003\u0002\u0002\u0002\u0002\u0287\u0003",
+ "\u0002\u0002\u0002\u0002\u0289\u0003\u0002\u0002\u0002\u0002\u028b\u0003",
+ "\u0002\u0002\u0002\u0002\u028d\u0003\u0002\u0002\u0002\u0002\u028f\u0003",
+ "\u0002\u0002\u0002\u0002\u0291\u0003\u0002\u0002\u0002\u0002\u0293\u0003",
+ "\u0002\u0002\u0002\u0002\u0295\u0003\u0002\u0002\u0002\u0002\u0297\u0003",
+ "\u0002\u0002\u0002\u0002\u0299\u0003\u0002\u0002\u0002\u0002\u029b\u0003",
+ "\u0002\u0002\u0002\u0002\u029d\u0003\u0002\u0002\u0002\u0002\u029f\u0003",
+ "\u0002\u0002\u0002\u0002\u02a1\u0003\u0002\u0002\u0002\u0002\u02a3\u0003",
+ "\u0002\u0002\u0002\u0002\u02a5\u0003\u0002\u0002\u0002\u0002\u02a7\u0003",
+ "\u0002\u0002\u0002\u0002\u02a9\u0003\u0002\u0002\u0002\u0002\u02ab\u0003",
+ "\u0002\u0002\u0002\u0002\u02ad\u0003\u0002\u0002\u0002\u0002\u02af\u0003",
+ "\u0002\u0002\u0002\u0002\u02b1\u0003\u0002\u0002\u0002\u0002\u02b3\u0003",
+ "\u0002\u0002\u0002\u0002\u02b5\u0003\u0002\u0002\u0002\u0002\u02b7\u0003",
+ "\u0002\u0002\u0002\u0002\u02b9\u0003\u0002\u0002\u0002\u0002\u02bb\u0003",
+ "\u0002\u0002\u0002\u0002\u02bd\u0003\u0002\u0002\u0002\u0002\u02bf\u0003",
+ "\u0002\u0002\u0002\u0002\u02c1\u0003\u0002\u0002\u0002\u0002\u02c3\u0003",
+ "\u0002\u0002\u0002\u0002\u02c5\u0003\u0002\u0002\u0002\u0002\u02c7\u0003",
+ "\u0002\u0002\u0002\u0002\u02c9\u0003\u0002\u0002\u0002\u0002\u02cb\u0003",
+ "\u0002\u0002\u0002\u0002\u02cd\u0003\u0002\u0002\u0002\u0002\u02cf\u0003",
+ "\u0002\u0002\u0002\u0002\u02d1\u0003\u0002\u0002\u0002\u0002\u02d3\u0003",
+ "\u0002\u0002\u0002\u0002\u02d5\u0003\u0002\u0002\u0002\u0002\u02d7\u0003",
+ "\u0002\u0002\u0002\u0002\u02d9\u0003\u0002\u0002\u0002\u0002\u02db\u0003",
+ "\u0002\u0002\u0002\u0002\u02dd\u0003\u0002\u0002\u0002\u0002\u02df\u0003",
+ "\u0002\u0002\u0002\u0002\u02e1\u0003\u0002\u0002\u0002\u0002\u02e3\u0003",
+ "\u0002\u0002\u0002\u0002\u02e5\u0003\u0002\u0002\u0002\u0002\u02e7\u0003",
+ "\u0002\u0002\u0002\u0002\u02e9\u0003\u0002\u0002\u0002\u0002\u02eb\u0003",
+ "\u0002\u0002\u0002\u0002\u02ed\u0003\u0002\u0002\u0002\u0002\u02ef\u0003",
+ "\u0002\u0002\u0002\u0002\u02f1\u0003\u0002\u0002\u0002\u0002\u02f3\u0003",
+ "\u0002\u0002\u0002\u0002\u02f5\u0003\u0002\u0002\u0002\u0002\u02f7\u0003",
+ "\u0002\u0002\u0002\u0002\u02f9\u0003\u0002\u0002\u0002\u0002\u02fb\u0003",
+ "\u0002\u0002\u0002\u0002\u02fd\u0003\u0002\u0002\u0002\u0002\u02ff\u0003",
+ "\u0002\u0002\u0002\u0002\u0301\u0003\u0002\u0002\u0002\u0002\u0303\u0003",
+ "\u0002\u0002\u0002\u0002\u0305\u0003\u0002\u0002\u0002\u0002\u0307\u0003",
+ "\u0002\u0002\u0002\u0002\u0309\u0003\u0002\u0002\u0002\u0002\u030b\u0003",
+ "\u0002\u0002\u0002\u0002\u030d\u0003\u0002\u0002\u0002\u0002\u030f\u0003",
+ "\u0002\u0002\u0002\u0002\u0311\u0003\u0002\u0002\u0002\u0002\u0313\u0003",
+ "\u0002\u0002\u0002\u0002\u0315\u0003\u0002\u0002\u0002\u0002\u0317\u0003",
+ "\u0002\u0002\u0002\u0002\u0319\u0003\u0002\u0002\u0002\u0002\u031b\u0003",
+ "\u0002\u0002\u0002\u0002\u031d\u0003\u0002\u0002\u0002\u0002\u031f\u0003",
+ "\u0002\u0002\u0002\u0002\u0321\u0003\u0002\u0002\u0002\u0002\u0323\u0003",
+ "\u0002\u0002\u0002\u0002\u0325\u0003\u0002\u0002\u0002\u0002\u0327\u0003",
+ "\u0002\u0002\u0002\u0002\u0329\u0003\u0002\u0002\u0002\u0002\u032b\u0003",
+ "\u0002\u0002\u0002\u0002\u032d\u0003\u0002\u0002\u0002\u0002\u032f\u0003",
+ "\u0002\u0002\u0002\u0002\u0331\u0003\u0002\u0002\u0002\u0002\u0333\u0003",
+ "\u0002\u0002\u0002\u0002\u0335\u0003\u0002\u0002\u0002\u0002\u0337\u0003",
+ "\u0002\u0002\u0002\u0002\u0339\u0003\u0002\u0002\u0002\u0002\u033b\u0003",
+ "\u0002\u0002\u0002\u0002\u033d\u0003\u0002\u0002\u0002\u0002\u033f\u0003",
+ "\u0002\u0002\u0002\u0002\u0341\u0003\u0002\u0002\u0002\u0002\u0343\u0003",
+ "\u0002\u0002\u0002\u0002\u0345\u0003\u0002\u0002\u0002\u0002\u0347\u0003",
+ "\u0002\u0002\u0002\u0002\u0349\u0003\u0002\u0002\u0002\u0002\u034b\u0003",
+ "\u0002\u0002\u0002\u0002\u034d\u0003\u0002\u0002\u0002\u0002\u034f\u0003",
+ "\u0002\u0002\u0002\u0002\u0351\u0003\u0002\u0002\u0002\u0002\u0353\u0003",
+ "\u0002\u0002\u0002\u0002\u0355\u0003\u0002\u0002\u0002\u0002\u0357\u0003",
+ "\u0002\u0002\u0002\u0002\u0359\u0003\u0002\u0002\u0002\u0002\u035b\u0003",
+ "\u0002\u0002\u0002\u0002\u035d\u0003\u0002\u0002\u0002\u0002\u035f\u0003",
+ "\u0002\u0002\u0002\u0002\u0361\u0003\u0002\u0002\u0002\u0002\u0363\u0003",
+ "\u0002\u0002\u0002\u0002\u0365\u0003\u0002\u0002\u0002\u0002\u0367\u0003",
+ "\u0002\u0002\u0002\u0002\u0369\u0003\u0002\u0002\u0002\u0002\u036b\u0003",
+ "\u0002\u0002\u0002\u0002\u036d\u0003\u0002\u0002\u0002\u0002\u036f\u0003",
+ "\u0002\u0002\u0002\u0002\u0371\u0003\u0002\u0002\u0002\u0002\u0373\u0003",
+ "\u0002\u0002\u0002\u0002\u0375\u0003\u0002\u0002\u0002\u0002\u0377\u0003",
+ "\u0002\u0002\u0002\u0002\u0379\u0003\u0002\u0002\u0002\u0002\u037b\u0003",
+ "\u0002\u0002\u0002\u0002\u037d\u0003\u0002\u0002\u0002\u0002\u037f\u0003",
+ "\u0002\u0002\u0002\u0002\u0381\u0003\u0002\u0002\u0002\u0002\u0383\u0003",
+ "\u0002\u0002\u0002\u0002\u0385\u0003\u0002\u0002\u0002\u0002\u0387\u0003",
+ "\u0002\u0002\u0002\u0002\u0389\u0003\u0002\u0002\u0002\u0002\u038b\u0003",
+ "\u0002\u0002\u0002\u0002\u038d\u0003\u0002\u0002\u0002\u0002\u038f\u0003",
+ "\u0002\u0002\u0002\u0002\u0391\u0003\u0002\u0002\u0002\u0002\u0393\u0003",
+ "\u0002\u0002\u0002\u0002\u0395\u0003\u0002\u0002\u0002\u0002\u0397\u0003",
+ "\u0002\u0002\u0002\u0002\u0399\u0003\u0002\u0002\u0002\u0002\u039b\u0003",
+ "\u0002\u0002\u0002\u0002\u039d\u0003\u0002\u0002\u0002\u0002\u039f\u0003",
+ "\u0002\u0002\u0002\u0002\u03a1\u0003\u0002\u0002\u0002\u0002\u03a3\u0003",
+ "\u0002\u0002\u0002\u0002\u03a5\u0003\u0002\u0002\u0002\u0002\u03a7\u0003",
+ "\u0002\u0002\u0002\u0002\u03a9\u0003\u0002\u0002\u0002\u0002\u03ab\u0003",
+ "\u0002\u0002\u0002\u0002\u03ad\u0003\u0002\u0002\u0002\u0002\u03af\u0003",
+ "\u0002\u0002\u0002\u0002\u03b1\u0003\u0002\u0002\u0002\u0002\u03b3\u0003",
+ "\u0002\u0002\u0002\u0002\u03b5\u0003\u0002\u0002\u0002\u0002\u03b7\u0003",
+ "\u0002\u0002\u0002\u0002\u03b9\u0003\u0002\u0002\u0002\u0002\u03bb\u0003",
+ "\u0002\u0002\u0002\u0002\u03bd\u0003\u0002\u0002\u0002\u0002\u03bf\u0003",
+ "\u0002\u0002\u0002\u0002\u03c1\u0003\u0002\u0002\u0002\u0002\u03c3\u0003",
+ "\u0002\u0002\u0002\u0002\u03c5\u0003\u0002\u0002\u0002\u0002\u03c7\u0003",
+ "\u0002\u0002\u0002\u0002\u03c9\u0003\u0002\u0002\u0002\u0002\u03cb\u0003",
+ "\u0002\u0002\u0002\u0002\u03cd\u0003\u0002\u0002\u0002\u0002\u03cf\u0003",
+ "\u0002\u0002\u0002\u0002\u03d1\u0003\u0002\u0002\u0002\u0002\u03d3\u0003",
+ "\u0002\u0002\u0002\u0002\u03d5\u0003\u0002\u0002\u0002\u0002\u03d7\u0003",
+ "\u0002\u0002\u0002\u0002\u03d9\u0003\u0002\u0002\u0002\u0002\u03db\u0003",
+ "\u0002\u0002\u0002\u0002\u03dd\u0003\u0002\u0002\u0002\u0002\u03df\u0003",
+ "\u0002\u0002\u0002\u0002\u03e1\u0003\u0002\u0002\u0002\u0002\u03e3\u0003",
+ "\u0002\u0002\u0002\u0002\u03e5\u0003\u0002\u0002\u0002\u0002\u03e7\u0003",
+ "\u0002\u0002\u0002\u0002\u03e9\u0003\u0002\u0002\u0002\u0002\u03eb\u0003",
+ "\u0002\u0002\u0002\u0002\u03ed\u0003\u0002\u0002\u0002\u0002\u03ef\u0003",
+ "\u0002\u0002\u0002\u0002\u03f1\u0003\u0002\u0002\u0002\u0002\u03f3\u0003",
+ "\u0002\u0002\u0002\u0002\u03f5\u0003\u0002\u0002\u0002\u0002\u03f7\u0003",
+ "\u0002\u0002\u0002\u0002\u03f9\u0003\u0002\u0002\u0002\u0002\u03fb\u0003",
+ "\u0002\u0002\u0002\u0002\u03fd\u0003\u0002\u0002\u0002\u0002\u03ff\u0003",
+ "\u0002\u0002\u0002\u0002\u0401\u0003\u0002\u0002\u0002\u0002\u0403\u0003",
+ "\u0002\u0002\u0002\u0002\u0405\u0003\u0002\u0002\u0002\u0002\u0407\u0003",
+ "\u0002\u0002\u0002\u0002\u0409\u0003\u0002\u0002\u0002\u0002\u040b\u0003",
+ "\u0002\u0002\u0002\u0002\u040d\u0003\u0002\u0002\u0002\u0002\u040f\u0003",
+ "\u0002\u0002\u0002\u0002\u0411\u0003\u0002\u0002\u0002\u0002\u0413\u0003",
+ "\u0002\u0002\u0002\u0002\u0415\u0003\u0002\u0002\u0002\u0002\u0417\u0003",
+ "\u0002\u0002\u0002\u0002\u0419\u0003\u0002\u0002\u0002\u0002\u041b\u0003",
+ "\u0002\u0002\u0002\u0002\u041d\u0003\u0002\u0002\u0002\u0002\u041f\u0003",
+ "\u0002\u0002\u0002\u0002\u0421\u0003\u0002\u0002\u0002\u0002\u0423\u0003",
+ "\u0002\u0002\u0002\u0002\u0425\u0003\u0002\u0002\u0002\u0002\u0427\u0003",
+ "\u0002\u0002\u0002\u0002\u0429\u0003\u0002\u0002\u0002\u0002\u042b\u0003",
+ "\u0002\u0002\u0002\u0002\u042d\u0003\u0002\u0002\u0002\u0002\u042f\u0003",
+ "\u0002\u0002\u0002\u0002\u0431\u0003\u0002\u0002\u0002\u0002\u0433\u0003",
+ "\u0002\u0002\u0002\u0002\u0435\u0003\u0002\u0002\u0002\u0002\u0437\u0003",
+ "\u0002\u0002\u0002\u0002\u0439\u0003\u0002\u0002\u0002\u0002\u043b\u0003",
+ "\u0002\u0002\u0002\u0002\u043d\u0003\u0002\u0002\u0002\u0002\u043f\u0003",
+ "\u0002\u0002\u0002\u0002\u0441\u0003\u0002\u0002\u0002\u0002\u0443\u0003",
+ "\u0002\u0002\u0002\u0002\u0445\u0003\u0002\u0002\u0002\u0002\u0447\u0003",
+ "\u0002\u0002\u0002\u0002\u0449\u0003\u0002\u0002\u0002\u0002\u044b\u0003",
+ "\u0002\u0002\u0002\u0002\u044d\u0003\u0002\u0002\u0002\u0002\u044f\u0003",
+ "\u0002\u0002\u0002\u0002\u0451\u0003\u0002\u0002\u0002\u0002\u0453\u0003",
+ "\u0002\u0002\u0002\u0002\u0455\u0003\u0002\u0002\u0002\u0002\u0457\u0003",
+ "\u0002\u0002\u0002\u0002\u0459\u0003\u0002\u0002\u0002\u0002\u045b\u0003",
+ "\u0002\u0002\u0002\u0002\u045d\u0003\u0002\u0002\u0002\u0002\u045f\u0003",
+ "\u0002\u0002\u0002\u0002\u0461\u0003\u0002\u0002\u0002\u0002\u0463\u0003",
+ "\u0002\u0002\u0002\u0002\u0465\u0003\u0002\u0002\u0002\u0002\u0467\u0003",
+ "\u0002\u0002\u0002\u0002\u0469\u0003\u0002\u0002\u0002\u0002\u046b\u0003",
+ "\u0002\u0002\u0002\u0002\u046d\u0003\u0002\u0002\u0002\u0002\u046f\u0003",
+ "\u0002\u0002\u0002\u0002\u0471\u0003\u0002\u0002\u0002\u0002\u0473\u0003",
+ "\u0002\u0002\u0002\u0002\u0475\u0003\u0002\u0002\u0002\u0002\u0477\u0003",
+ "\u0002\u0002\u0002\u0002\u0479\u0003\u0002\u0002\u0002\u0002\u047b\u0003",
+ "\u0002\u0002\u0002\u0002\u047d\u0003\u0002\u0002\u0002\u0002\u047f\u0003",
+ "\u0002\u0002\u0002\u0002\u0481\u0003\u0002\u0002\u0002\u0002\u0483\u0003",
+ "\u0002\u0002\u0002\u0002\u0485\u0003\u0002\u0002\u0002\u0002\u0487\u0003",
+ "\u0002\u0002\u0002\u0002\u0489\u0003\u0002\u0002\u0002\u0002\u048b\u0003",
+ "\u0002\u0002\u0002\u0002\u048d\u0003\u0002\u0002\u0002\u0002\u048f\u0003",
+ "\u0002\u0002\u0002\u0002\u0491\u0003\u0002\u0002\u0002\u0002\u0493\u0003",
+ "\u0002\u0002\u0002\u0002\u0495\u0003\u0002\u0002\u0002\u0002\u0497\u0003",
+ "\u0002\u0002\u0002\u0002\u0499\u0003\u0002\u0002\u0002\u0002\u049b\u0003",
+ "\u0002\u0002\u0002\u0002\u049d\u0003\u0002\u0002\u0002\u0002\u049f\u0003",
+ "\u0002\u0002\u0002\u0002\u04a1\u0003\u0002\u0002\u0002\u0002\u04a3\u0003",
+ "\u0002\u0002\u0002\u0002\u04a5\u0003\u0002\u0002\u0002\u0002\u04a7\u0003",
+ "\u0002\u0002\u0002\u0002\u04a9\u0003\u0002\u0002\u0002\u0002\u04ab\u0003",
+ "\u0002\u0002\u0002\u0002\u04ad\u0003\u0002\u0002\u0002\u0002\u04af\u0003",
+ "\u0002\u0002\u0002\u0002\u04b1\u0003\u0002\u0002\u0002\u0002\u04b3\u0003",
+ "\u0002\u0002\u0002\u0002\u04b5\u0003\u0002\u0002\u0002\u0002\u04b7\u0003",
+ "\u0002\u0002\u0002\u0002\u04b9\u0003\u0002\u0002\u0002\u0002\u04bb\u0003",
+ "\u0002\u0002\u0002\u0002\u04bd\u0003\u0002\u0002\u0002\u0002\u04bf\u0003",
+ "\u0002\u0002\u0002\u0002\u04c1\u0003\u0002\u0002\u0002\u0002\u04c3\u0003",
+ "\u0002\u0002\u0002\u0002\u04c5\u0003\u0002\u0002\u0002\u0002\u04c7\u0003",
+ "\u0002\u0002\u0002\u0002\u04c9\u0003\u0002\u0002\u0002\u0002\u04cb\u0003",
+ "\u0002\u0002\u0002\u0002\u04cd\u0003\u0002\u0002\u0002\u0002\u04cf\u0003",
+ "\u0002\u0002\u0002\u0002\u04d1\u0003\u0002\u0002\u0002\u0002\u04d3\u0003",
+ "\u0002\u0002\u0002\u0002\u04d5\u0003\u0002\u0002\u0002\u0002\u04d7\u0003",
+ "\u0002\u0002\u0002\u0002\u04d9\u0003\u0002\u0002\u0002\u0002\u04db\u0003",
+ "\u0002\u0002\u0002\u0002\u04dd\u0003\u0002\u0002\u0002\u0002\u04df\u0003",
+ "\u0002\u0002\u0002\u0002\u04e1\u0003\u0002\u0002\u0002\u0002\u04e3\u0003",
+ "\u0002\u0002\u0002\u0002\u04e5\u0003\u0002\u0002\u0002\u0002\u04e7\u0003",
+ "\u0002\u0002\u0002\u0002\u04e9\u0003\u0002\u0002\u0002\u0002\u04eb\u0003",
+ "\u0002\u0002\u0002\u0002\u04ed\u0003\u0002\u0002\u0002\u0002\u04ef\u0003",
+ "\u0002\u0002\u0002\u0002\u04f1\u0003\u0002\u0002\u0002\u0002\u04f3\u0003",
+ "\u0002\u0002\u0002\u0002\u04f5\u0003\u0002\u0002\u0002\u0002\u04f7\u0003",
+ "\u0002\u0002\u0002\u0002\u04f9\u0003\u0002\u0002\u0002\u0002\u04fb\u0003",
+ "\u0002\u0002\u0002\u0002\u04fd\u0003\u0002\u0002\u0002\u0002\u04ff\u0003",
+ "\u0002\u0002\u0002\u0002\u0501\u0003\u0002\u0002\u0002\u0002\u0503\u0003",
+ "\u0002\u0002\u0002\u0002\u0505\u0003\u0002\u0002\u0002\u0002\u0507\u0003",
+ "\u0002\u0002\u0002\u0002\u0509\u0003\u0002\u0002\u0002\u0002\u050b\u0003",
+ "\u0002\u0002\u0002\u0002\u050d\u0003\u0002\u0002\u0002\u0002\u050f\u0003",
+ "\u0002\u0002\u0002\u0002\u0511\u0003\u0002\u0002\u0002\u0002\u0513\u0003",
+ "\u0002\u0002\u0002\u0002\u0515\u0003\u0002\u0002\u0002\u0002\u0517\u0003",
+ "\u0002\u0002\u0002\u0002\u0519\u0003\u0002\u0002\u0002\u0002\u051b\u0003",
+ "\u0002\u0002\u0002\u0002\u051d\u0003\u0002\u0002\u0002\u0002\u051f\u0003",
+ "\u0002\u0002\u0002\u0002\u0521\u0003\u0002\u0002\u0002\u0002\u0523\u0003",
+ "\u0002\u0002\u0002\u0002\u0525\u0003\u0002\u0002\u0002\u0002\u0527\u0003",
+ "\u0002\u0002\u0002\u0002\u0529\u0003\u0002\u0002\u0002\u0002\u052b\u0003",
+ "\u0002\u0002\u0002\u0002\u052d\u0003\u0002\u0002\u0002\u0002\u052f\u0003",
+ "\u0002\u0002\u0002\u0002\u0531\u0003\u0002\u0002\u0002\u0002\u0533\u0003",
+ "\u0002\u0002\u0002\u0002\u0535\u0003\u0002\u0002\u0002\u0002\u0537\u0003",
+ "\u0002\u0002\u0002\u0002\u0539\u0003\u0002\u0002\u0002\u0002\u053b\u0003",
+ "\u0002\u0002\u0002\u0002\u053d\u0003\u0002\u0002\u0002\u0002\u053f\u0003",
+ "\u0002\u0002\u0002\u0002\u0541\u0003\u0002\u0002\u0002\u0002\u0543\u0003",
+ "\u0002\u0002\u0002\u0002\u0545\u0003\u0002\u0002\u0002\u0002\u0547\u0003",
+ "\u0002\u0002\u0002\u0002\u0549\u0003\u0002\u0002\u0002\u0002\u054b\u0003",
+ "\u0002\u0002\u0002\u0002\u054d\u0003\u0002\u0002\u0002\u0002\u054f\u0003",
+ "\u0002\u0002\u0002\u0002\u0551\u0003\u0002\u0002\u0002\u0002\u0553\u0003",
+ "\u0002\u0002\u0002\u0002\u0555\u0003\u0002\u0002\u0002\u0002\u0557\u0003",
+ "\u0002\u0002\u0002\u0002\u0559\u0003\u0002\u0002\u0002\u0002\u055b\u0003",
+ "\u0002\u0002\u0002\u0002\u055d\u0003\u0002\u0002\u0002\u0002\u055f\u0003",
+ "\u0002\u0002\u0002\u0002\u0561\u0003\u0002\u0002\u0002\u0002\u0563\u0003",
+ "\u0002\u0002\u0002\u0002\u0565\u0003\u0002\u0002\u0002\u0002\u0567\u0003",
+ "\u0002\u0002\u0002\u0002\u0569\u0003\u0002\u0002\u0002\u0002\u056b\u0003",
+ "\u0002\u0002\u0002\u0002\u056d\u0003\u0002\u0002\u0002\u0002\u056f\u0003",
+ "\u0002\u0002\u0002\u0002\u0571\u0003\u0002\u0002\u0002\u0002\u0573\u0003",
+ "\u0002\u0002\u0002\u0002\u0575\u0003\u0002\u0002\u0002\u0002\u0577\u0003",
+ "\u0002\u0002\u0002\u0002\u0579\u0003\u0002\u0002\u0002\u0002\u057b\u0003",
+ "\u0002\u0002\u0002\u0002\u057d\u0003\u0002\u0002\u0002\u0002\u057f\u0003",
+ "\u0002\u0002\u0002\u0002\u0581\u0003\u0002\u0002\u0002\u0002\u0583\u0003",
+ "\u0002\u0002\u0002\u0002\u0585\u0003\u0002\u0002\u0002\u0002\u0587\u0003",
+ "\u0002\u0002\u0002\u0002\u0589\u0003\u0002\u0002\u0002\u0002\u058b\u0003",
+ "\u0002\u0002\u0002\u0002\u058d\u0003\u0002\u0002\u0002\u0002\u058f\u0003",
+ "\u0002\u0002\u0002\u0002\u0591\u0003\u0002\u0002\u0002\u0002\u0593\u0003",
+ "\u0002\u0002\u0002\u0002\u0595\u0003\u0002\u0002\u0002\u0002\u0597\u0003",
+ "\u0002\u0002\u0002\u0002\u0599\u0003\u0002\u0002\u0002\u0002\u059b\u0003",
+ "\u0002\u0002\u0002\u0002\u059d\u0003\u0002\u0002\u0002\u0002\u059f\u0003",
+ "\u0002\u0002\u0002\u0002\u05a1\u0003\u0002\u0002\u0002\u0002\u05a3\u0003",
+ "\u0002\u0002\u0002\u0002\u05a5\u0003\u0002\u0002\u0002\u0002\u05a7\u0003",
+ "\u0002\u0002\u0002\u0002\u05a9\u0003\u0002\u0002\u0002\u0002\u05ab\u0003",
+ "\u0002\u0002\u0002\u0002\u05ad\u0003\u0002\u0002\u0002\u0002\u05af\u0003",
+ "\u0002\u0002\u0002\u0002\u05b1\u0003\u0002\u0002\u0002\u0002\u05b3\u0003",
+ "\u0002\u0002\u0002\u0002\u05b5\u0003\u0002\u0002\u0002\u0002\u05b7\u0003",
+ "\u0002\u0002\u0002\u0002\u05b9\u0003\u0002\u0002\u0002\u0002\u05bb\u0003",
+ "\u0002\u0002\u0002\u0002\u05bd\u0003\u0002\u0002\u0002\u0002\u05bf\u0003",
+ "\u0002\u0002\u0002\u0002\u05c1\u0003\u0002\u0002\u0002\u0002\u05c3\u0003",
+ "\u0002\u0002\u0002\u0002\u05c5\u0003\u0002\u0002\u0002\u0002\u05c7\u0003",
+ "\u0002\u0002\u0002\u0002\u05c9\u0003\u0002\u0002\u0002\u0002\u05cb\u0003",
+ "\u0002\u0002\u0002\u0002\u05cd\u0003\u0002\u0002\u0002\u0002\u05cf\u0003",
+ "\u0002\u0002\u0002\u0002\u05d1\u0003\u0002\u0002\u0002\u0002\u05d3\u0003",
+ "\u0002\u0002\u0002\u0002\u05d5\u0003\u0002\u0002\u0002\u0002\u05d7\u0003",
+ "\u0002\u0002\u0002\u0002\u05d9\u0003\u0002\u0002\u0002\u0002\u05db\u0003",
+ "\u0002\u0002\u0002\u0002\u05dd\u0003\u0002\u0002\u0002\u0002\u05df\u0003",
+ "\u0002\u0002\u0002\u0002\u05e1\u0003\u0002\u0002\u0002\u0002\u05e3\u0003",
+ "\u0002\u0002\u0002\u0002\u05e5\u0003\u0002\u0002\u0002\u0002\u05e7\u0003",
+ "\u0002\u0002\u0002\u0002\u05e9\u0003\u0002\u0002\u0002\u0002\u05eb\u0003",
+ "\u0002\u0002\u0002\u0002\u05ed\u0003\u0002\u0002\u0002\u0002\u05ef\u0003",
+ "\u0002\u0002\u0002\u0002\u05f1\u0003\u0002\u0002\u0002\u0002\u05f3\u0003",
+ "\u0002\u0002\u0002\u0002\u05f5\u0003\u0002\u0002\u0002\u0002\u05f7\u0003",
+ "\u0002\u0002\u0002\u0002\u05f9\u0003\u0002\u0002\u0002\u0002\u05fb\u0003",
+ "\u0002\u0002\u0002\u0002\u05fd\u0003\u0002\u0002\u0002\u0002\u05ff\u0003",
+ "\u0002\u0002\u0002\u0002\u0601\u0003\u0002\u0002\u0002\u0002\u0603\u0003",
+ "\u0002\u0002\u0002\u0002\u0605\u0003\u0002\u0002\u0002\u0002\u0607\u0003",
+ "\u0002\u0002\u0002\u0002\u0609\u0003\u0002\u0002\u0002\u0002\u060b\u0003",
+ "\u0002\u0002\u0002\u0002\u060d\u0003\u0002\u0002\u0002\u0002\u060f\u0003",
+ "\u0002\u0002\u0002\u0002\u0611\u0003\u0002\u0002\u0002\u0002\u0613\u0003",
+ "\u0002\u0002\u0002\u0002\u0615\u0003\u0002\u0002\u0002\u0002\u0617\u0003",
+ "\u0002\u0002\u0002\u0002\u0619\u0003\u0002\u0002\u0002\u0002\u061b\u0003",
+ "\u0002\u0002\u0002\u0002\u061d\u0003\u0002\u0002\u0002\u0002\u061f\u0003",
+ "\u0002\u0002\u0002\u0002\u0621\u0003\u0002\u0002\u0002\u0002\u0623\u0003",
+ "\u0002\u0002\u0002\u0002\u0625\u0003\u0002\u0002\u0002\u0002\u0627\u0003",
+ "\u0002\u0002\u0002\u0002\u0629\u0003\u0002\u0002\u0002\u0002\u062b\u0003",
+ "\u0002\u0002\u0002\u0002\u062d\u0003\u0002\u0002\u0002\u0002\u062f\u0003",
+ "\u0002\u0002\u0002\u0002\u0631\u0003\u0002\u0002\u0002\u0002\u0633\u0003",
+ "\u0002\u0002\u0002\u0002\u0635\u0003\u0002\u0002\u0002\u0002\u0637\u0003",
+ "\u0002\u0002\u0002\u0002\u0639\u0003\u0002\u0002\u0002\u0002\u063b\u0003",
+ "\u0002\u0002\u0002\u0002\u063d\u0003\u0002\u0002\u0002\u0002\u063f\u0003",
+ "\u0002\u0002\u0002\u0002\u0641\u0003\u0002\u0002\u0002\u0002\u0643\u0003",
+ "\u0002\u0002\u0002\u0002\u0645\u0003\u0002\u0002\u0002\u0002\u0647\u0003",
+ "\u0002\u0002\u0002\u0002\u0649\u0003\u0002\u0002\u0002\u0002\u064b\u0003",
+ "\u0002\u0002\u0002\u0002\u064d\u0003\u0002\u0002\u0002\u0002\u064f\u0003",
+ "\u0002\u0002\u0002\u0002\u0651\u0003\u0002\u0002\u0002\u0002\u0653\u0003",
+ "\u0002\u0002\u0002\u0002\u0655\u0003\u0002\u0002\u0002\u0002\u0657\u0003",
+ "\u0002\u0002\u0002\u0002\u0659\u0003\u0002\u0002\u0002\u0002\u065b\u0003",
+ "\u0002\u0002\u0002\u0002\u065d\u0003\u0002\u0002\u0002\u0002\u065f\u0003",
+ "\u0002\u0002\u0002\u0002\u0661\u0003\u0002\u0002\u0002\u0002\u0663\u0003",
+ "\u0002\u0002\u0002\u0002\u0665\u0003\u0002\u0002\u0002\u0002\u0667\u0003",
+ "\u0002\u0002\u0002\u0002\u0669\u0003\u0002\u0002\u0002\u0002\u066b\u0003",
+ "\u0002\u0002\u0002\u0002\u066d\u0003\u0002\u0002\u0002\u0002\u066f\u0003",
+ "\u0002\u0002\u0002\u0002\u0671\u0003\u0002\u0002\u0002\u0002\u0673\u0003",
+ "\u0002\u0002\u0002\u0002\u0675\u0003\u0002\u0002\u0002\u0002\u0677\u0003",
+ "\u0002\u0002\u0002\u0002\u0679\u0003\u0002\u0002\u0002\u0002\u067b\u0003",
+ "\u0002\u0002\u0002\u0002\u067d\u0003\u0002\u0002\u0002\u0002\u067f\u0003",
+ "\u0002\u0002\u0002\u0002\u0681\u0003\u0002\u0002\u0002\u0002\u0683\u0003",
+ "\u0002\u0002\u0002\u0002\u0685\u0003\u0002\u0002\u0002\u0002\u0687\u0003",
+ "\u0002\u0002\u0002\u0002\u0689\u0003\u0002\u0002\u0002\u0002\u068b\u0003",
+ "\u0002\u0002\u0002\u0002\u068d\u0003\u0002\u0002\u0002\u0002\u068f\u0003",
+ "\u0002\u0002\u0002\u0002\u0691\u0003\u0002\u0002\u0002\u0002\u0693\u0003",
+ "\u0002\u0002\u0002\u0002\u0695\u0003\u0002\u0002\u0002\u0002\u0697\u0003",
+ "\u0002\u0002\u0002\u0002\u0699\u0003\u0002\u0002\u0002\u0002\u069b\u0003",
+ "\u0002\u0002\u0002\u0002\u069d\u0003\u0002\u0002\u0002\u0002\u069f\u0003",
+ "\u0002\u0002\u0002\u0002\u06a1\u0003\u0002\u0002\u0002\u0002\u06a3\u0003",
+ "\u0002\u0002\u0002\u0002\u06a5\u0003\u0002\u0002\u0002\u0002\u06a7\u0003",
+ "\u0002\u0002\u0002\u0002\u06a9\u0003\u0002\u0002\u0002\u0002\u06ab\u0003",
+ "\u0002\u0002\u0002\u0002\u06ad\u0003\u0002\u0002\u0002\u0002\u06af\u0003",
+ "\u0002\u0002\u0002\u0002\u06b1\u0003\u0002\u0002\u0002\u0002\u06b3\u0003",
+ "\u0002\u0002\u0002\u0002\u06b5\u0003\u0002\u0002\u0002\u0002\u06b7\u0003",
+ "\u0002\u0002\u0002\u0002\u06b9\u0003\u0002\u0002\u0002\u0002\u06bb\u0003",
+ "\u0002\u0002\u0002\u0002\u06bd\u0003\u0002\u0002\u0002\u0002\u06bf\u0003",
+ "\u0002\u0002\u0002\u0002\u06c1\u0003\u0002\u0002\u0002\u0002\u06c3\u0003",
+ "\u0002\u0002\u0002\u0002\u06c5\u0003\u0002\u0002\u0002\u0002\u06c7\u0003",
+ "\u0002\u0002\u0002\u0002\u06c9\u0003\u0002\u0002\u0002\u0002\u06cb\u0003",
+ "\u0002\u0002\u0002\u0002\u06cd\u0003\u0002\u0002\u0002\u0002\u06cf\u0003",
+ "\u0002\u0002\u0002\u0002\u06d1\u0003\u0002\u0002\u0002\u0002\u06d3\u0003",
+ "\u0002\u0002\u0002\u0002\u06d5\u0003\u0002\u0002\u0002\u0002\u06d7\u0003",
+ "\u0002\u0002\u0002\u0002\u06d9\u0003\u0002\u0002\u0002\u0002\u06db\u0003",
+ "\u0002\u0002\u0002\u0002\u06dd\u0003\u0002\u0002\u0002\u0002\u06df\u0003",
+ "\u0002\u0002\u0002\u0002\u06e1\u0003\u0002\u0002\u0002\u0002\u06e3\u0003",
+ "\u0002\u0002\u0002\u0002\u06e5\u0003\u0002\u0002\u0002\u0002\u06e7\u0003",
+ "\u0002\u0002\u0002\u0002\u06e9\u0003\u0002\u0002\u0002\u0002\u06eb\u0003",
+ "\u0002\u0002\u0002\u0002\u06ed\u0003\u0002\u0002\u0002\u0002\u06ef\u0003",
+ "\u0002\u0002\u0002\u0002\u06f1\u0003\u0002\u0002\u0002\u0002\u06f3\u0003",
+ "\u0002\u0002\u0002\u0002\u06f5\u0003\u0002\u0002\u0002\u0002\u06f7\u0003",
+ "\u0002\u0002\u0002\u0002\u06f9\u0003\u0002\u0002\u0002\u0002\u06fb\u0003",
+ "\u0002\u0002\u0002\u0002\u06fd\u0003\u0002\u0002\u0002\u0002\u06ff\u0003",
+ "\u0002\u0002\u0002\u0002\u0701\u0003\u0002\u0002\u0002\u0002\u0703\u0003",
+ "\u0002\u0002\u0002\u0002\u0705\u0003\u0002\u0002\u0002\u0002\u0707\u0003",
+ "\u0002\u0002\u0002\u0002\u0709\u0003\u0002\u0002\u0002\u0002\u070b\u0003",
+ "\u0002\u0002\u0002\u0002\u070d\u0003\u0002\u0002\u0002\u0002\u070f\u0003",
+ "\u0002\u0002\u0002\u0002\u0711\u0003\u0002\u0002\u0002\u0002\u0713\u0003",
+ "\u0002\u0002\u0002\u0002\u0715\u0003\u0002\u0002\u0002\u0002\u0717\u0003",
+ "\u0002\u0002\u0002\u0002\u0719\u0003\u0002\u0002\u0002\u0002\u071b\u0003",
+ "\u0002\u0002\u0002\u0002\u071d\u0003\u0002\u0002\u0002\u0002\u071f\u0003",
+ "\u0002\u0002\u0002\u0002\u0721\u0003\u0002\u0002\u0002\u0002\u0723\u0003",
+ "\u0002\u0002\u0002\u0002\u0725\u0003\u0002\u0002\u0002\u0002\u0727\u0003",
+ "\u0002\u0002\u0002\u0002\u0729\u0003\u0002\u0002\u0002\u0002\u072b\u0003",
+ "\u0002\u0002\u0002\u0002\u072d\u0003\u0002\u0002\u0002\u0002\u072f\u0003",
+ "\u0002\u0002\u0002\u0002\u0731\u0003\u0002\u0002\u0002\u0002\u0733\u0003",
+ "\u0002\u0002\u0002\u0002\u0735\u0003\u0002\u0002\u0002\u0002\u0737\u0003",
+ "\u0002\u0002\u0002\u0002\u0739\u0003\u0002\u0002\u0002\u0002\u073b\u0003",
+ "\u0002\u0002\u0002\u0002\u073d\u0003\u0002\u0002\u0002\u0002\u073f\u0003",
+ "\u0002\u0002\u0002\u0002\u0741\u0003\u0002\u0002\u0002\u0002\u0743\u0003",
+ "\u0002\u0002\u0002\u0002\u0745\u0003\u0002\u0002\u0002\u0002\u0747\u0003",
+ "\u0002\u0002\u0002\u0002\u0749\u0003\u0002\u0002\u0002\u0002\u074b\u0003",
+ "\u0002\u0002\u0002\u0002\u074d\u0003\u0002\u0002\u0002\u0002\u074f\u0003",
+ "\u0002\u0002\u0002\u0002\u0751\u0003\u0002\u0002\u0002\u0002\u0753\u0003",
+ "\u0002\u0002\u0002\u0002\u0755\u0003\u0002\u0002\u0002\u0002\u0757\u0003",
+ "\u0002\u0002\u0002\u0002\u0759\u0003\u0002\u0002\u0002\u0002\u075b\u0003",
+ "\u0002\u0002\u0002\u0002\u075d\u0003\u0002\u0002\u0002\u0002\u075f\u0003",
+ "\u0002\u0002\u0002\u0002\u0761\u0003\u0002\u0002\u0002\u0002\u0763\u0003",
+ "\u0002\u0002\u0002\u0002\u0765\u0003\u0002\u0002\u0002\u0002\u0767\u0003",
+ "\u0002\u0002\u0002\u0002\u0769\u0003\u0002\u0002\u0002\u0002\u076b\u0003",
+ "\u0002\u0002\u0002\u0002\u076d\u0003\u0002\u0002\u0002\u0002\u076f\u0003",
+ "\u0002\u0002\u0002\u0002\u0771\u0003\u0002\u0002\u0002\u0002\u0773\u0003",
+ "\u0002\u0002\u0002\u0002\u0775\u0003\u0002\u0002\u0002\u0002\u0777\u0003",
+ "\u0002\u0002\u0002\u0002\u0779\u0003\u0002\u0002\u0002\u0002\u077b\u0003",
+ "\u0002\u0002\u0002\u0002\u077d\u0003\u0002\u0002\u0002\u0002\u077f\u0003",
+ "\u0002\u0002\u0002\u0002\u0781\u0003\u0002\u0002\u0002\u0002\u0783\u0003",
+ "\u0002\u0002\u0002\u0002\u0785\u0003\u0002\u0002\u0002\u0002\u0787\u0003",
+ "\u0002\u0002\u0002\u0002\u0789\u0003\u0002\u0002\u0002\u0002\u078b\u0003",
+ "\u0002\u0002\u0002\u0002\u078d\u0003\u0002\u0002\u0002\u0002\u078f\u0003",
+ "\u0002\u0002\u0002\u0002\u0791\u0003\u0002\u0002\u0002\u0002\u0793\u0003",
+ "\u0002\u0002\u0002\u0002\u0795\u0003\u0002\u0002\u0002\u0002\u0797\u0003",
+ "\u0002\u0002\u0002\u0002\u0799\u0003\u0002\u0002\u0002\u0002\u079b\u0003",
+ "\u0002\u0002\u0002\u0002\u079d\u0003\u0002\u0002\u0002\u0002\u079f\u0003",
+ "\u0002\u0002\u0002\u0002\u07a1\u0003\u0002\u0002\u0002\u0002\u07a3\u0003",
+ "\u0002\u0002\u0002\u0002\u07a5\u0003\u0002\u0002\u0002\u0002\u07a7\u0003",
+ "\u0002\u0002\u0002\u0002\u07a9\u0003\u0002\u0002\u0002\u0002\u07ab\u0003",
+ "\u0002\u0002\u0002\u0002\u07ad\u0003\u0002\u0002\u0002\u0002\u07af\u0003",
+ "\u0002\u0002\u0002\u0002\u07b1\u0003\u0002\u0002\u0002\u0002\u07b3\u0003",
+ "\u0002\u0002\u0002\u0002\u07b5\u0003\u0002\u0002\u0002\u0002\u07b7\u0003",
+ "\u0002\u0002\u0002\u0002\u07b9\u0003\u0002\u0002\u0002\u0002\u07bb\u0003",
+ "\u0002\u0002\u0002\u0002\u07bd\u0003\u0002\u0002\u0002\u0002\u07bf\u0003",
+ "\u0002\u0002\u0002\u0002\u07c1\u0003\u0002\u0002\u0002\u0002\u07c3\u0003",
+ "\u0002\u0002\u0002\u0002\u07c5\u0003\u0002\u0002\u0002\u0002\u07c7\u0003",
+ "\u0002\u0002\u0002\u0002\u07c9\u0003\u0002\u0002\u0002\u0002\u07cb\u0003",
+ "\u0002\u0002\u0002\u0002\u07cd\u0003\u0002\u0002\u0002\u0002\u07cf\u0003",
+ "\u0002\u0002\u0002\u0002\u07d1\u0003\u0002\u0002\u0002\u0002\u07d3\u0003",
+ "\u0002\u0002\u0002\u0002\u07d5\u0003\u0002\u0002\u0002\u0002\u07d7\u0003",
+ "\u0002\u0002\u0002\u0002\u07d9\u0003\u0002\u0002\u0002\u0002\u07db\u0003",
+ "\u0002\u0002\u0002\u0002\u07dd\u0003\u0002\u0002\u0002\u0002\u07df\u0003",
+ "\u0002\u0002\u0002\u0002\u07e1\u0003\u0002\u0002\u0002\u0002\u07e3\u0003",
+ "\u0002\u0002\u0002\u0002\u07e5\u0003\u0002\u0002\u0002\u0002\u07e7\u0003",
+ "\u0002\u0002\u0002\u0002\u07e9\u0003\u0002\u0002\u0002\u0002\u07eb\u0003",
+ "\u0002\u0002\u0002\u0002\u07ed\u0003\u0002\u0002\u0002\u0002\u07ef\u0003",
+ "\u0002\u0002\u0002\u0002\u07f1\u0003\u0002\u0002\u0002\u0002\u07f3\u0003",
+ "\u0002\u0002\u0002\u0002\u07f5\u0003\u0002\u0002\u0002\u0002\u07f7\u0003",
+ "\u0002\u0002\u0002\u0002\u07f9\u0003\u0002\u0002\u0002\u0002\u07fb\u0003",
+ "\u0002\u0002\u0002\u0002\u07fd\u0003\u0002\u0002\u0002\u0002\u07ff\u0003",
+ "\u0002\u0002\u0002\u0002\u0801\u0003\u0002\u0002\u0002\u0002\u0803\u0003",
+ "\u0002\u0002\u0002\u0002\u0805\u0003\u0002\u0002\u0002\u0002\u0807\u0003",
+ "\u0002\u0002\u0002\u0002\u0809\u0003\u0002\u0002\u0002\u0002\u080b\u0003",
+ "\u0002\u0002\u0002\u0002\u080d\u0003\u0002\u0002\u0002\u0002\u080f\u0003",
+ "\u0002\u0002\u0002\u0002\u0813\u0003\u0002\u0002\u0002\u0002\u0815\u0003",
+ "\u0002\u0002\u0002\u0002\u0817\u0003\u0002\u0002\u0002\u0002\u0819\u0003",
+ "\u0002\u0002\u0002\u0002\u081b\u0003\u0002\u0002\u0002\u0002\u081d\u0003",
+ "\u0002\u0002\u0002\u0002\u081f\u0003\u0002\u0002\u0002\u0002\u0821\u0003",
+ "\u0002\u0002\u0002\u0002\u0823\u0003\u0002\u0002\u0002\u0002\u0825\u0003",
+ "\u0002\u0002\u0002\u0002\u0827\u0003\u0002\u0002\u0002\u0002\u0829\u0003",
+ "\u0002\u0002\u0002\u0002\u082b\u0003\u0002\u0002\u0002\u0002\u082d\u0003",
+ "\u0002\u0002\u0002\u0002\u082f\u0003\u0002\u0002\u0002\u0002\u0831\u0003",
+ "\u0002\u0002\u0002\u0002\u0845\u0003\u0002\u0002\u0002\u0003\u0848\u0003",
+ "\u0002\u0002\u0002\u0005\u084e\u0003\u0002\u0002\u0002\u0007\u085c\u0003",
+ "\u0002\u0002\u0002\t\u0887\u0003\u0002\u0002\u0002\u000b\u088b\u0003",
+ "\u0002\u0002\u0002\r\u088f\u0003\u0002\u0002\u0002\u000f\u0893\u0003",
+ "\u0002\u0002\u0002\u0011\u0899\u0003\u0002\u0002\u0002\u0013\u08a0\u0003",
+ "\u0002\u0002\u0002\u0015\u08a8\u0003\u0002\u0002\u0002\u0017\u08ac\u0003",
+ "\u0002\u0002\u0002\u0019\u08af\u0003\u0002\u0002\u0002\u001b\u08b3\u0003",
+ "\u0002\u0002\u0002\u001d\u08ba\u0003\u0002\u0002\u0002\u001f\u08c2\u0003",
+ "\u0002\u0002\u0002!\u08c7\u0003\u0002\u0002\u0002#\u08ca\u0003\u0002",
+ "\u0002\u0002%\u08cf\u0003\u0002\u0002\u0002\'\u08d7\u0003\u0002\u0002",
+ "\u0002)\u08dc\u0003\u0002\u0002\u0002+\u08e1\u0003\u0002\u0002\u0002",
+ "-\u08e8\u0003\u0002\u0002\u0002/\u08f2\u0003\u0002\u0002\u00021\u08f8",
+ "\u0003\u0002\u0002\u00023\u0900\u0003\u0002\u0002\u00025\u0907\u0003",
+ "\u0002\u0002\u00027\u0911\u0003\u0002\u0002\u00029\u091c\u0003\u0002",
+ "\u0002\u0002;\u0925\u0003\u0002\u0002\u0002=\u092d\u0003\u0002\u0002",
+ "\u0002?\u0934\u0003\u0002\u0002\u0002A\u093a\u0003\u0002\u0002\u0002",
+ "C\u0942\u0003\u0002\u0002\u0002E\u094f\u0003\u0002\u0002\u0002G\u0956",
+ "\u0003\u0002\u0002\u0002I\u095f\u0003\u0002\u0002\u0002K\u0969\u0003",
+ "\u0002\u0002\u0002M\u0971\u0003\u0002\u0002\u0002O\u0979\u0003\u0002",
+ "\u0002\u0002Q\u0981\u0003\u0002\u0002\u0002S\u0988\u0003\u0002\u0002",
+ "\u0002U\u098d\u0003\u0002\u0002\u0002W\u0996\u0003\u0002\u0002\u0002",
+ "Y\u09a4\u0003\u0002\u0002\u0002[\u09b0\u0003\u0002\u0002\u0002]\u09b9",
+ "\u0003\u0002\u0002\u0002_\u09c5\u0003\u0002\u0002\u0002a\u09ca\u0003",
+ "\u0002\u0002\u0002c\u09cf\u0003\u0002\u0002\u0002e\u09d4\u0003\u0002",
+ "\u0002\u0002g\u09db\u0003\u0002\u0002\u0002i\u09e4\u0003\u0002\u0002",
+ "\u0002k\u09ec\u0003\u0002\u0002\u0002m\u09f3\u0003\u0002\u0002\u0002",
+ "o\u09f8\u0003\u0002\u0002\u0002q\u0a00\u0003\u0002\u0002\u0002s\u0a06",
+ "\u0003\u0002\u0002\u0002u\u0a0c\u0003\u0002\u0002\u0002w\u0a10\u0003",
+ "\u0002\u0002\u0002y\u0a16\u0003\u0002\u0002\u0002{\u0a1e\u0003\u0002",
+ "\u0002\u0002}\u0a23\u0003\u0002\u0002\u0002\u007f\u0a2c\u0003\u0002",
+ "\u0002\u0002\u0081\u0a36\u0003\u0002\u0002\u0002\u0083\u0a3a\u0003\u0002",
+ "\u0002\u0002\u0085\u0a40\u0003\u0002\u0002\u0002\u0087\u0a46\u0003\u0002",
+ "\u0002\u0002\u0089\u0a4d\u0003\u0002\u0002\u0002\u008b\u0a5b\u0003\u0002",
+ "\u0002\u0002\u008d\u0a5e\u0003\u0002\u0002\u0002\u008f\u0a65\u0003\u0002",
+ "\u0002\u0002\u0091\u0a68\u0003\u0002\u0002\u0002\u0093\u0a6e\u0003\u0002",
+ "\u0002\u0002\u0095\u0a75\u0003\u0002\u0002\u0002\u0097\u0a7b\u0003\u0002",
+ "\u0002\u0002\u0099\u0a81\u0003\u0002\u0002\u0002\u009b\u0a88\u0003\u0002",
+ "\u0002\u0002\u009d\u0a91\u0003\u0002\u0002\u0002\u009f\u0a96\u0003\u0002",
+ "\u0002\u0002\u00a1\u0a99\u0003\u0002\u0002\u0002\u00a3\u0aa1\u0003\u0002",
+ "\u0002\u0002\u00a5\u0aa6\u0003\u0002\u0002\u0002\u00a7\u0aaa\u0003\u0002",
+ "\u0002\u0002\u00a9\u0aaf\u0003\u0002\u0002\u0002\u00ab\u0ab4\u0003\u0002",
+ "\u0002\u0002\u00ad\u0abc\u0003\u0002\u0002\u0002\u00af\u0ac2\u0003\u0002",
+ "\u0002\u0002\u00b1\u0ac7\u0003\u0002\u0002\u0002\u00b3\u0acc\u0003\u0002",
+ "\u0002\u0002\u00b5\u0ad2\u0003\u0002\u0002\u0002\u00b7\u0ad9\u0003\u0002",
+ "\u0002\u0002\u00b9\u0adf\u0003\u0002\u0002\u0002\u00bb\u0ae4\u0003\u0002",
+ "\u0002\u0002\u00bd\u0ae9\u0003\u0002\u0002\u0002\u00bf\u0aee\u0003\u0002",
+ "\u0002\u0002\u00c1\u0afb\u0003\u0002\u0002\u0002\u00c3\u0b07\u0003\u0002",
+ "\u0002\u0002\u00c5\u0b25\u0003\u0002\u0002\u0002\u00c7\u0b2b\u0003\u0002",
+ "\u0002\u0002\u00c9\u0b34\u0003\u0002\u0002\u0002\u00cb\u0b3d\u0003\u0002",
+ "\u0002\u0002\u00cd\u0b45\u0003\u0002\u0002\u0002\u00cf\u0b49\u0003\u0002",
+ "\u0002\u0002\u00d1\u0b5c\u0003\u0002\u0002\u0002\u00d3\u0b61\u0003\u0002",
+ "\u0002\u0002\u00d5\u0b68\u0003\u0002\u0002\u0002\u00d7\u0b6b\u0003\u0002",
+ "\u0002\u0002\u00d9\u0b74\u0003\u0002\u0002\u0002\u00db\u0b7b\u0003\u0002",
+ "\u0002\u0002\u00dd\u0b86\u0003\u0002\u0002\u0002\u00df\u0b89\u0003\u0002",
+ "\u0002\u0002\u00e1\u0b8f\u0003\u0002\u0002\u0002\u00e3\u0b93\u0003\u0002",
+ "\u0002\u0002\u00e5\u0b99\u0003\u0002\u0002\u0002\u00e7\u0ba1\u0003\u0002",
+ "\u0002\u0002\u00e9\u0bab\u0003\u0002\u0002\u0002\u00eb\u0bb3\u0003\u0002",
+ "\u0002\u0002\u00ed\u0bbd\u0003\u0002\u0002\u0002\u00ef\u0bc3\u0003\u0002",
+ "\u0002\u0002\u00f1\u0bc9\u0003\u0002\u0002\u0002\u00f3\u0bce\u0003\u0002",
+ "\u0002\u0002\u00f5\u0bd4\u0003\u0002\u0002\u0002\u00f7\u0bdf\u0003\u0002",
+ "\u0002\u0002\u00f9\u0be6\u0003\u0002\u0002\u0002\u00fb\u0bee\u0003\u0002",
+ "\u0002\u0002\u00fd\u0bf5\u0003\u0002\u0002\u0002\u00ff\u0bfc\u0003\u0002",
+ "\u0002\u0002\u0101\u0c04\u0003\u0002\u0002\u0002\u0103\u0c0c\u0003\u0002",
+ "\u0002\u0002\u0105\u0c15\u0003\u0002\u0002\u0002\u0107\u0c1e\u0003\u0002",
+ "\u0002\u0002\u0109\u0c25\u0003\u0002\u0002\u0002\u010b\u0c2c\u0003\u0002",
+ "\u0002\u0002\u010d\u0c32\u0003\u0002\u0002\u0002\u010f\u0c38\u0003\u0002",
+ "\u0002\u0002\u0111\u0c3f\u0003\u0002\u0002\u0002\u0113\u0c47\u0003\u0002",
+ "\u0002\u0002\u0115\u0c4e\u0003\u0002\u0002\u0002\u0117\u0c52\u0003\u0002",
+ "\u0002\u0002\u0119\u0c5c\u0003\u0002\u0002\u0002\u011b\u0c61\u0003\u0002",
+ "\u0002\u0002\u011d\u0c68\u0003\u0002\u0002\u0002\u011f\u0c70\u0003\u0002",
+ "\u0002\u0002\u0121\u0c74\u0003\u0002\u0002\u0002\u0123\u0c81\u0003\u0002",
+ "\u0002\u0002\u0125\u0c8a\u0003\u0002\u0002\u0002\u0127\u0c95\u0003\u0002",
+ "\u0002\u0002\u0129\u0ca4\u0003\u0002\u0002\u0002\u012b\u0cb8\u0003\u0002",
+ "\u0002\u0002\u012d\u0cc9\u0003\u0002\u0002\u0002\u012f\u0ccd\u0003\u0002",
+ "\u0002\u0002\u0131\u0cd5\u0003\u0002\u0002\u0002\u0133\u0cde\u0003\u0002",
+ "\u0002\u0002\u0135\u0cec\u0003\u0002\u0002\u0002\u0137\u0cf2\u0003\u0002",
+ "\u0002\u0002\u0139\u0cfd\u0003\u0002\u0002\u0002\u013b\u0d02\u0003\u0002",
+ "\u0002\u0002\u013d\u0d05\u0003\u0002\u0002\u0002\u013f\u0d0e\u0003\u0002",
+ "\u0002\u0002\u0141\u0d16\u0003\u0002\u0002\u0002\u0143\u0d1b\u0003\u0002",
+ "\u0002\u0002\u0145\u0d20\u0003\u0002\u0002\u0002\u0147\u0d26\u0003\u0002",
+ "\u0002\u0002\u0149\u0d2d\u0003\u0002\u0002\u0002\u014b\u0d34\u0003\u0002",
+ "\u0002\u0002\u014d\u0d3d\u0003\u0002\u0002\u0002\u014f\u0d44\u0003\u0002",
+ "\u0002\u0002\u0151\u0d4a\u0003\u0002\u0002\u0002\u0153\u0d4e\u0003\u0002",
+ "\u0002\u0002\u0155\u0d54\u0003\u0002\u0002\u0002\u0157\u0d5b\u0003\u0002",
+ "\u0002\u0002\u0159\u0d60\u0003\u0002\u0002\u0002\u015b\u0d66\u0003\u0002",
+ "\u0002\u0002\u015d\u0d6c\u0003\u0002\u0002\u0002\u015f\u0d71\u0003\u0002",
+ "\u0002\u0002\u0161\u0d77\u0003\u0002\u0002\u0002\u0163\u0d7b\u0003\u0002",
+ "\u0002\u0002\u0165\u0d84\u0003\u0002\u0002\u0002\u0167\u0d8c\u0003\u0002",
+ "\u0002\u0002\u0169\u0d95\u0003\u0002\u0002\u0002\u016b\u0d9f\u0003\u0002",
+ "\u0002\u0002\u016d\u0da9\u0003\u0002\u0002\u0002\u016f\u0dad\u0003\u0002",
+ "\u0002\u0002\u0171\u0db2\u0003\u0002\u0002\u0002\u0173\u0db7\u0003\u0002",
+ "\u0002\u0002\u0175\u0dbc\u0003\u0002\u0002\u0002\u0177\u0dc1\u0003\u0002",
+ "\u0002\u0002\u0179\u0dc6\u0003\u0002\u0002\u0002\u017b\u0dce\u0003\u0002",
+ "\u0002\u0002\u017d\u0dd5\u0003\u0002\u0002\u0002\u017f\u0dda\u0003\u0002",
+ "\u0002\u0002\u0181\u0de1\u0003\u0002\u0002\u0002\u0183\u0deb\u0003\u0002",
+ "\u0002\u0002\u0185\u0df1\u0003\u0002\u0002\u0002\u0187\u0df8\u0003\u0002",
+ "\u0002\u0002\u0189\u0dff\u0003\u0002\u0002\u0002\u018b\u0e07\u0003\u0002",
+ "\u0002\u0002\u018d\u0e0b\u0003\u0002\u0002\u0002\u018f\u0e13\u0003\u0002",
+ "\u0002\u0002\u0191\u0e18\u0003\u0002\u0002\u0002\u0193\u0e1d\u0003\u0002",
+ "\u0002\u0002\u0195\u0e27\u0003\u0002\u0002\u0002\u0197\u0e30\u0003\u0002",
+ "\u0002\u0002\u0199\u0e35\u0003\u0002\u0002\u0002\u019b\u0e3a\u0003\u0002",
+ "\u0002\u0002\u019d\u0e42\u0003\u0002\u0002\u0002\u019f\u0e4b\u0003\u0002",
+ "\u0002\u0002\u01a1\u0e54\u0003\u0002\u0002\u0002\u01a3\u0e5b\u0003\u0002",
+ "\u0002\u0002\u01a5\u0e65\u0003\u0002\u0002\u0002\u01a7\u0e6e\u0003\u0002",
+ "\u0002\u0002\u01a9\u0e73\u0003\u0002\u0002\u0002\u01ab\u0e7e\u0003\u0002",
+ "\u0002\u0002\u01ad\u0e83\u0003\u0002\u0002\u0002\u01af\u0e8c\u0003\u0002",
+ "\u0002\u0002\u01b1\u0e95\u0003\u0002\u0002\u0002\u01b3\u0e9a\u0003\u0002",
+ "\u0002\u0002\u01b5\u0ea5\u0003\u0002\u0002\u0002\u01b7\u0eae\u0003\u0002",
+ "\u0002\u0002\u01b9\u0eb3\u0003\u0002\u0002\u0002\u01bb\u0ebb\u0003\u0002",
+ "\u0002\u0002\u01bd\u0ec2\u0003\u0002\u0002\u0002\u01bf\u0ecd\u0003\u0002",
+ "\u0002\u0002\u01c1\u0ed6\u0003\u0002\u0002\u0002\u01c3\u0ee1\u0003\u0002",
+ "\u0002\u0002\u01c5\u0eec\u0003\u0002\u0002\u0002\u01c7\u0ef8\u0003\u0002",
+ "\u0002\u0002\u01c9\u0f04\u0003\u0002\u0002\u0002\u01cb\u0f12\u0003\u0002",
+ "\u0002\u0002\u01cd\u0f25\u0003\u0002\u0002\u0002\u01cf\u0f38\u0003\u0002",
+ "\u0002\u0002\u01d1\u0f49\u0003\u0002\u0002\u0002\u01d3\u0f59\u0003\u0002",
+ "\u0002\u0002\u01d5\u0f64\u0003\u0002\u0002\u0002\u01d7\u0f76\u0003\u0002",
+ "\u0002\u0002\u01d9\u0f7a\u0003\u0002\u0002\u0002\u01db\u0f82\u0003\u0002",
+ "\u0002\u0002\u01dd\u0f89\u0003\u0002\u0002\u0002\u01df\u0f91\u0003\u0002",
+ "\u0002\u0002\u01e1\u0f97\u0003\u0002\u0002\u0002\u01e3\u0fa4\u0003\u0002",
+ "\u0002\u0002\u01e5\u0fa8\u0003\u0002\u0002\u0002\u01e7\u0fac\u0003\u0002",
+ "\u0002\u0002\u01e9\u0fb0\u0003\u0002\u0002\u0002\u01eb\u0fb7\u0003\u0002",
+ "\u0002\u0002\u01ed\u0fc2\u0003\u0002\u0002\u0002\u01ef\u0fce\u0003\u0002",
+ "\u0002\u0002\u01f1\u0fd2\u0003\u0002\u0002\u0002\u01f3\u0fda\u0003\u0002",
+ "\u0002\u0002\u01f5\u0fe3\u0003\u0002\u0002\u0002\u01f7\u0fec\u0003\u0002",
+ "\u0002\u0002\u01f9\u0ff9\u0003\u0002\u0002\u0002\u01fb\u1006\u0003\u0002",
+ "\u0002\u0002\u01fd\u1018\u0003\u0002\u0002\u0002\u01ff\u1022\u0003\u0002",
+ "\u0002\u0002\u0201\u102a\u0003\u0002\u0002\u0002\u0203\u1032\u0003\u0002",
+ "\u0002\u0002\u0205\u103b\u0003\u0002\u0002\u0002\u0207\u1044\u0003\u0002",
+ "\u0002\u0002\u0209\u104c\u0003\u0002\u0002\u0002\u020b\u105b\u0003\u0002",
+ "\u0002\u0002\u020d\u105f\u0003\u0002\u0002\u0002\u020f\u1068\u0003\u0002",
+ "\u0002\u0002\u0211\u106f\u0003\u0002\u0002\u0002\u0213\u1079\u0003\u0002",
+ "\u0002\u0002\u0215\u1081\u0003\u0002\u0002\u0002\u0217\u1086\u0003\u0002",
+ "\u0002\u0002\u0219\u108f\u0003\u0002\u0002\u0002\u021b\u1098\u0003\u0002",
+ "\u0002\u0002\u021d\u10a6\u0003\u0002\u0002\u0002\u021f\u10ae\u0003\u0002",
+ "\u0002\u0002\u0221\u10b5\u0003\u0002\u0002\u0002\u0223\u10bb\u0003\u0002",
+ "\u0002\u0002\u0225\u10c5\u0003\u0002\u0002\u0002\u0227\u10cf\u0003\u0002",
+ "\u0002\u0002\u0229\u10d3\u0003\u0002\u0002\u0002\u022b\u10d6\u0003\u0002",
+ "\u0002\u0002\u022d\u10de\u0003\u0002\u0002\u0002\u022f\u10e9\u0003\u0002",
+ "\u0002\u0002\u0231\u10f9\u0003\u0002\u0002\u0002\u0233\u1108\u0003\u0002",
+ "\u0002\u0002\u0235\u1117\u0003\u0002\u0002\u0002\u0237\u111d\u0003\u0002",
+ "\u0002\u0002\u0239\u1124\u0003\u0002\u0002\u0002\u023b\u1128\u0003\u0002",
+ "\u0002\u0002\u023d\u112e\u0003\u0002\u0002\u0002\u023f\u1133\u0003\u0002",
+ "\u0002\u0002\u0241\u113b\u0003\u0002\u0002\u0002\u0243\u1141\u0003\u0002",
+ "\u0002\u0002\u0245\u1147\u0003\u0002\u0002\u0002\u0247\u1150\u0003\u0002",
+ "\u0002\u0002\u0249\u1156\u0003\u0002\u0002\u0002\u024b\u115e\u0003\u0002",
+ "\u0002\u0002\u024d\u1166\u0003\u0002\u0002\u0002\u024f\u116f\u0003\u0002",
+ "\u0002\u0002\u0251\u117d\u0003\u0002\u0002\u0002\u0253\u1184\u0003\u0002",
+ "\u0002\u0002\u0255\u1191\u0003\u0002\u0002\u0002\u0257\u1198\u0003\u0002",
+ "\u0002\u0002\u0259\u119e\u0003\u0002\u0002\u0002\u025b\u11a7\u0003\u0002",
+ "\u0002\u0002\u025d\u11ac\u0003\u0002\u0002\u0002\u025f\u11b4\u0003\u0002",
+ "\u0002\u0002\u0261\u11c2\u0003\u0002\u0002\u0002\u0263\u11ce\u0003\u0002",
+ "\u0002\u0002\u0265\u11d6\u0003\u0002\u0002\u0002\u0267\u11dd\u0003\u0002",
+ "\u0002\u0002\u0269\u11e5\u0003\u0002\u0002\u0002\u026b\u11f0\u0003\u0002",
+ "\u0002\u0002\u026d\u11fb\u0003\u0002\u0002\u0002\u026f\u1207\u0003\u0002",
+ "\u0002\u0002\u0271\u1212\u0003\u0002\u0002\u0002\u0273\u121d\u0003\u0002",
+ "\u0002\u0002\u0275\u1228\u0003\u0002\u0002\u0002\u0277\u123b\u0003\u0002",
+ "\u0002\u0002\u0279\u124d\u0003\u0002\u0002\u0002\u027b\u125d\u0003\u0002",
+ "\u0002\u0002\u027d\u1266\u0003\u0002\u0002\u0002\u027f\u126e\u0003\u0002",
+ "\u0002\u0002\u0281\u127b\u0003\u0002\u0002\u0002\u0283\u1280\u0003\u0002",
+ "\u0002\u0002\u0285\u1284\u0003\u0002\u0002\u0002\u0287\u1290\u0003\u0002",
+ "\u0002\u0002\u0289\u1295\u0003\u0002\u0002\u0002\u028b\u129e\u0003\u0002",
+ "\u0002\u0002\u028d\u12a9\u0003\u0002\u0002\u0002\u028f\u12b6\u0003\u0002",
+ "\u0002\u0002\u0291\u12be\u0003\u0002\u0002\u0002\u0293\u12ce\u0003\u0002",
+ "\u0002\u0002\u0295\u12db\u0003\u0002\u0002\u0002\u0297\u12e5\u0003\u0002",
+ "\u0002\u0002\u0299\u12ed\u0003\u0002\u0002\u0002\u029b\u12f5\u0003\u0002",
+ "\u0002\u0002\u029d\u12fa\u0003\u0002\u0002\u0002\u029f\u12fd\u0003\u0002",
+ "\u0002\u0002\u02a1\u1306\u0003\u0002\u0002\u0002\u02a3\u1310\u0003\u0002",
+ "\u0002\u0002\u02a5\u1318\u0003\u0002\u0002\u0002\u02a7\u131f\u0003\u0002",
+ "\u0002\u0002\u02a9\u132a\u0003\u0002\u0002\u0002\u02ab\u132e\u0003\u0002",
+ "\u0002\u0002\u02ad\u1333\u0003\u0002\u0002\u0002\u02af\u133a\u0003\u0002",
+ "\u0002\u0002\u02b1\u1342\u0003\u0002\u0002\u0002\u02b3\u1348\u0003\u0002",
+ "\u0002\u0002\u02b5\u134f\u0003\u0002\u0002\u0002\u02b7\u1356\u0003\u0002",
+ "\u0002\u0002\u02b9\u135b\u0003\u0002\u0002\u0002\u02bb\u1361\u0003\u0002",
+ "\u0002\u0002\u02bd\u1368\u0003\u0002\u0002\u0002\u02bf\u136e\u0003\u0002",
+ "\u0002\u0002\u02c1\u1377\u0003\u0002\u0002\u0002\u02c3\u1381\u0003\u0002",
+ "\u0002\u0002\u02c5\u1388\u0003\u0002\u0002\u0002\u02c7\u138f\u0003\u0002",
+ "\u0002\u0002\u02c9\u1398\u0003\u0002\u0002\u0002\u02cb\u13a4\u0003\u0002",
+ "\u0002\u0002\u02cd\u13a9\u0003\u0002\u0002\u0002\u02cf\u13b0\u0003\u0002",
+ "\u0002\u0002\u02d1\u13b7\u0003\u0002\u0002\u0002\u02d3\u13c7\u0003\u0002",
+ "\u0002\u0002\u02d5\u13ce\u0003\u0002\u0002\u0002\u02d7\u13d4\u0003\u0002",
+ "\u0002\u0002\u02d9\u13da\u0003\u0002\u0002\u0002\u02db\u13e0\u0003\u0002",
+ "\u0002\u0002\u02dd\u13e8\u0003\u0002\u0002\u0002\u02df\u13ee\u0003\u0002",
+ "\u0002\u0002\u02e1\u13f3\u0003\u0002\u0002\u0002\u02e3\u13fc\u0003\u0002",
+ "\u0002\u0002\u02e5\u1404\u0003\u0002\u0002\u0002\u02e7\u140b\u0003\u0002",
+ "\u0002\u0002\u02e9\u1412\u0003\u0002\u0002\u0002\u02eb\u1424\u0003\u0002",
+ "\u0002\u0002\u02ed\u142c\u0003\u0002\u0002\u0002\u02ef\u1431\u0003\u0002",
+ "\u0002\u0002\u02f1\u1436\u0003\u0002\u0002\u0002\u02f3\u143b\u0003\u0002",
+ "\u0002\u0002\u02f5\u1441\u0003\u0002\u0002\u0002\u02f7\u144c\u0003\u0002",
+ "\u0002\u0002\u02f9\u145e\u0003\u0002\u0002\u0002\u02fb\u1465\u0003\u0002",
+ "\u0002\u0002\u02fd\u146d\u0003\u0002\u0002\u0002\u02ff\u147a\u0003\u0002",
+ "\u0002\u0002\u0301\u1482\u0003\u0002\u0002\u0002\u0303\u1490\u0003\u0002",
+ "\u0002\u0002\u0305\u1498\u0003\u0002\u0002\u0002\u0307\u14a1\u0003\u0002",
+ "\u0002\u0002\u0309\u14ab\u0003\u0002\u0002\u0002\u030b\u14b3\u0003\u0002",
+ "\u0002\u0002\u030d\u14b6\u0003\u0002\u0002\u0002\u030f\u14c0\u0003\u0002",
+ "\u0002\u0002\u0311\u14c4\u0003\u0002\u0002\u0002\u0313\u14ce\u0003\u0002",
+ "\u0002\u0002\u0315\u14d5\u0003\u0002\u0002\u0002\u0317\u14da\u0003\u0002",
+ "\u0002\u0002\u0319\u14e9\u0003\u0002\u0002\u0002\u031b\u14f2\u0003\u0002",
+ "\u0002\u0002\u031d\u14f7\u0003\u0002\u0002\u0002\u031f\u14fe\u0003\u0002",
+ "\u0002\u0002\u0321\u1503\u0003\u0002\u0002\u0002\u0323\u1509\u0003\u0002",
+ "\u0002\u0002\u0325\u150e\u0003\u0002\u0002\u0002\u0327\u1514\u0003\u0002",
+ "\u0002\u0002\u0329\u151c\u0003\u0002\u0002\u0002\u032b\u1521\u0003\u0002",
+ "\u0002\u0002\u032d\u1528\u0003\u0002\u0002\u0002\u032f\u153d\u0003\u0002",
+ "\u0002\u0002\u0331\u1552\u0003\u0002\u0002\u0002\u0333\u155f\u0003\u0002",
+ "\u0002\u0002\u0335\u1577\u0003\u0002\u0002\u0002\u0337\u1583\u0003\u0002",
+ "\u0002\u0002\u0339\u1593\u0003\u0002\u0002\u0002\u033b\u15a2\u0003\u0002",
+ "\u0002\u0002\u033d\u15b2\u0003\u0002\u0002\u0002\u033f\u15be\u0003\u0002",
+ "\u0002\u0002\u0341\u15d1\u0003\u0002\u0002\u0002\u0343\u15dc\u0003\u0002",
+ "\u0002\u0002\u0345\u15ea\u0003\u0002\u0002\u0002\u0347\u15fc\u0003\u0002",
+ "\u0002\u0002\u0349\u160c\u0003\u0002\u0002\u0002\u034b\u161e\u0003\u0002",
+ "\u0002\u0002\u034d\u162d\u0003\u0002\u0002\u0002\u034f\u1640\u0003\u0002",
+ "\u0002\u0002\u0351\u164f\u0003\u0002\u0002\u0002\u0353\u1662\u0003\u0002",
+ "\u0002\u0002\u0355\u166e\u0003\u0002\u0002\u0002\u0357\u1687\u0003\u0002",
+ "\u0002\u0002\u0359\u169c\u0003\u0002\u0002\u0002\u035b\u16a5\u0003\u0002",
+ "\u0002\u0002\u035d\u16ae\u0003\u0002\u0002\u0002\u035f\u16c3\u0003\u0002",
+ "\u0002\u0002\u0361\u16d8\u0003\u0002\u0002\u0002\u0363\u16df\u0003\u0002",
+ "\u0002\u0002\u0365\u16e5\u0003\u0002\u0002\u0002\u0367\u16f2\u0003\u0002",
+ "\u0002\u0002\u0369\u16f6\u0003\u0002\u0002\u0002\u036b\u16fe\u0003\u0002",
+ "\u0002\u0002\u036d\u1707\u0003\u0002\u0002\u0002\u036f\u170c\u0003\u0002",
+ "\u0002\u0002\u0371\u1713\u0003\u0002\u0002\u0002\u0373\u1719\u0003\u0002",
+ "\u0002\u0002\u0375\u171f\u0003\u0002\u0002\u0002\u0377\u172b\u0003\u0002",
+ "\u0002\u0002\u0379\u1730\u0003\u0002\u0002\u0002\u037b\u1736\u0003\u0002",
+ "\u0002\u0002\u037d\u173c\u0003\u0002\u0002\u0002\u037f\u1742\u0003\u0002",
+ "\u0002\u0002\u0381\u1747\u0003\u0002\u0002\u0002\u0383\u174a\u0003\u0002",
+ "\u0002\u0002\u0385\u1754\u0003\u0002\u0002\u0002\u0387\u1759\u0003\u0002",
+ "\u0002\u0002\u0389\u1761\u0003\u0002\u0002\u0002\u038b\u1768\u0003\u0002",
+ "\u0002\u0002\u038d\u176b\u0003\u0002\u0002\u0002\u038f\u1778\u0003\u0002",
+ "\u0002\u0002\u0391\u177c\u0003\u0002\u0002\u0002\u0393\u1783\u0003\u0002",
+ "\u0002\u0002\u0395\u1788\u0003\u0002\u0002\u0002\u0397\u178d\u0003\u0002",
+ "\u0002\u0002\u0399\u179d\u0003\u0002\u0002\u0002\u039b\u17a5\u0003\u0002",
+ "\u0002\u0002\u039d\u17ab\u0003\u0002\u0002\u0002\u039f\u17b5\u0003\u0002",
+ "\u0002\u0002\u03a1\u17ba\u0003\u0002\u0002\u0002\u03a3\u17c1\u0003\u0002",
+ "\u0002\u0002\u03a5\u17c9\u0003\u0002\u0002\u0002\u03a7\u17d6\u0003\u0002",
+ "\u0002\u0002\u03a9\u17e1\u0003\u0002\u0002\u0002\u03ab\u17ea\u0003\u0002",
+ "\u0002\u0002\u03ad\u17f0\u0003\u0002\u0002\u0002\u03af\u17f7\u0003\u0002",
+ "\u0002\u0002\u03b1\u1802\u0003\u0002\u0002\u0002\u03b3\u180a\u0003\u0002",
+ "\u0002\u0002\u03b5\u180f\u0003\u0002\u0002\u0002\u03b7\u1818\u0003\u0002",
+ "\u0002\u0002\u03b9\u1820\u0003\u0002\u0002\u0002\u03bb\u1829\u0003\u0002",
+ "\u0002\u0002\u03bd\u182e\u0003\u0002\u0002\u0002\u03bf\u183a\u0003\u0002",
+ "\u0002\u0002\u03c1\u1842\u0003\u0002\u0002\u0002\u03c3\u184b\u0003\u0002",
+ "\u0002\u0002\u03c5\u1851\u0003\u0002\u0002\u0002\u03c7\u1857\u0003\u0002",
+ "\u0002\u0002\u03c9\u185d\u0003\u0002\u0002\u0002\u03cb\u1865\u0003\u0002",
+ "\u0002\u0002\u03cd\u186d\u0003\u0002\u0002\u0002\u03cf\u187e\u0003\u0002",
+ "\u0002\u0002\u03d1\u1888\u0003\u0002\u0002\u0002\u03d3\u188e\u0003\u0002",
+ "\u0002\u0002\u03d5\u189d\u0003\u0002\u0002\u0002\u03d7\u18ab\u0003\u0002",
+ "\u0002\u0002\u03d9\u18b4\u0003\u0002\u0002\u0002\u03db\u18bb\u0003\u0002",
+ "\u0002\u0002\u03dd\u18c6\u0003\u0002\u0002\u0002\u03df\u18cd\u0003\u0002",
+ "\u0002\u0002\u03e1\u18dd\u0003\u0002\u0002\u0002\u03e3\u18f0\u0003\u0002",
+ "\u0002\u0002\u03e5\u1904\u0003\u0002\u0002\u0002\u03e7\u191b\u0003\u0002",
+ "\u0002\u0002\u03e9\u1930\u0003\u0002\u0002\u0002\u03eb\u1948\u0003\u0002",
+ "\u0002\u0002\u03ed\u1964\u0003\u0002\u0002\u0002\u03ef\u1970\u0003\u0002",
+ "\u0002\u0002\u03f1\u1976\u0003\u0002\u0002\u0002\u03f3\u197d\u0003\u0002",
+ "\u0002\u0002\u03f5\u198f\u0003\u0002\u0002\u0002\u03f7\u1997\u0003\u0002",
+ "\u0002\u0002\u03f9\u199c\u0003\u0002\u0002\u0002\u03fb\u19a5\u0003\u0002",
+ "\u0002\u0002\u03fd\u19ac\u0003\u0002\u0002\u0002\u03ff\u19b3\u0003\u0002",
+ "\u0002\u0002\u0401\u19b7\u0003\u0002\u0002\u0002\u0403\u19bc\u0003\u0002",
+ "\u0002\u0002\u0405\u19c7\u0003\u0002\u0002\u0002\u0407\u19d1\u0003\u0002",
+ "\u0002\u0002\u0409\u19da\u0003\u0002\u0002\u0002\u040b\u19e3\u0003\u0002",
+ "\u0002\u0002\u040d\u19ea\u0003\u0002\u0002\u0002\u040f\u19f2\u0003\u0002",
+ "\u0002\u0002\u0411\u19f8\u0003\u0002\u0002\u0002\u0413\u19ff\u0003\u0002",
+ "\u0002\u0002\u0415\u1a06\u0003\u0002\u0002\u0002\u0417\u1a0d\u0003\u0002",
+ "\u0002\u0002\u0419\u1a13\u0003\u0002\u0002\u0002\u041b\u1a18\u0003\u0002",
+ "\u0002\u0002\u041d\u1a21\u0003\u0002\u0002\u0002\u041f\u1a28\u0003\u0002",
+ "\u0002\u0002\u0421\u1a2d\u0003\u0002\u0002\u0002\u0423\u1a34\u0003\u0002",
+ "\u0002\u0002\u0425\u1a3b\u0003\u0002\u0002\u0002\u0427\u1a42\u0003\u0002",
+ "\u0002\u0002\u0429\u1a52\u0003\u0002\u0002\u0002\u042b\u1a65\u0003\u0002",
+ "\u0002\u0002\u042d\u1a76\u0003\u0002\u0002\u0002\u042f\u1a88\u0003\u0002",
+ "\u0002\u0002\u0431\u1a92\u0003\u0002\u0002\u0002\u0433\u1a9f\u0003\u0002",
+ "\u0002\u0002\u0435\u1aaa\u0003\u0002\u0002\u0002\u0437\u1ab0\u0003\u0002",
+ "\u0002\u0002\u0439\u1ab7\u0003\u0002\u0002\u0002\u043b\u1ac9\u0003\u0002",
+ "\u0002\u0002\u043d\u1ada\u0003\u0002\u0002\u0002\u043f\u1aed\u0003\u0002",
+ "\u0002\u0002\u0441\u1af4\u0003\u0002\u0002\u0002\u0443\u1af9\u0003\u0002",
+ "\u0002\u0002\u0445\u1b01\u0003\u0002\u0002\u0002\u0447\u1b08\u0003\u0002",
+ "\u0002\u0002\u0449\u1b0f\u0003\u0002\u0002\u0002\u044b\u1b1f\u0003\u0002",
+ "\u0002\u0002\u044d\u1b27\u0003\u0002\u0002\u0002\u044f\u1b34\u0003\u0002",
+ "\u0002\u0002\u0451\u1b42\u0003\u0002\u0002\u0002\u0453\u1b4a\u0003\u0002",
+ "\u0002\u0002\u0455\u1b50\u0003\u0002\u0002\u0002\u0457\u1b59\u0003\u0002",
+ "\u0002\u0002\u0459\u1b64\u0003\u0002\u0002\u0002\u045b\u1b6f\u0003\u0002",
+ "\u0002\u0002\u045d\u1b79\u0003\u0002\u0002\u0002\u045f\u1b83\u0003\u0002",
+ "\u0002\u0002\u0461\u1b88\u0003\u0002\u0002\u0002\u0463\u1b94\u0003\u0002",
+ "\u0002\u0002\u0465\u1ba0\u0003\u0002\u0002\u0002\u0467\u1bae\u0003\u0002",
+ "\u0002\u0002\u0469\u1bb7\u0003\u0002\u0002\u0002\u046b\u1bc0\u0003\u0002",
+ "\u0002\u0002\u046d\u1bca\u0003\u0002\u0002\u0002\u046f\u1bd3\u0003\u0002",
+ "\u0002\u0002\u0471\u1be4\u0003\u0002\u0002\u0002\u0473\u1bee\u0003\u0002",
+ "\u0002\u0002\u0475\u1bf6\u0003\u0002\u0002\u0002\u0477\u1bfc\u0003\u0002",
+ "\u0002\u0002\u0479\u1c04\u0003\u0002\u0002\u0002\u047b\u1c09\u0003\u0002",
+ "\u0002\u0002\u047d\u1c11\u0003\u0002\u0002\u0002\u047f\u1c20\u0003\u0002",
+ "\u0002\u0002\u0481\u1c2b\u0003\u0002\u0002\u0002\u0483\u1c31\u0003\u0002",
+ "\u0002\u0002\u0485\u1c3b\u0003\u0002\u0002\u0002\u0487\u1c40\u0003\u0002",
+ "\u0002\u0002\u0489\u1c48\u0003\u0002\u0002\u0002\u048b\u1c50\u0003\u0002",
+ "\u0002\u0002\u048d\u1c55\u0003\u0002\u0002\u0002\u048f\u1c5e\u0003\u0002",
+ "\u0002\u0002\u0491\u1c66\u0003\u0002\u0002\u0002\u0493\u1c6b\u0003\u0002",
+ "\u0002\u0002\u0495\u1c73\u0003\u0002\u0002\u0002\u0497\u1c78\u0003\u0002",
+ "\u0002\u0002\u0499\u1c7b\u0003\u0002\u0002\u0002\u049b\u1c7f\u0003\u0002",
+ "\u0002\u0002\u049d\u1c83\u0003\u0002\u0002\u0002\u049f\u1c87\u0003\u0002",
+ "\u0002\u0002\u04a1\u1c8b\u0003\u0002\u0002\u0002\u04a3\u1c8f\u0003\u0002",
+ "\u0002\u0002\u04a5\u1c98\u0003\u0002\u0002\u0002\u04a7\u1ca0\u0003\u0002",
+ "\u0002\u0002\u04a9\u1ca6\u0003\u0002\u0002\u0002\u04ab\u1caa\u0003\u0002",
+ "\u0002\u0002\u04ad\u1caf\u0003\u0002\u0002\u0002\u04af\u1cb6\u0003\u0002",
+ "\u0002\u0002\u04b1\u1cbb\u0003\u0002\u0002\u0002\u04b3\u1cc2\u0003\u0002",
+ "\u0002\u0002\u04b5\u1cce\u0003\u0002\u0002\u0002\u04b7\u1cd5\u0003\u0002",
+ "\u0002\u0002\u04b9\u1cdd\u0003\u0002\u0002\u0002\u04bb\u1ce5\u0003\u0002",
+ "\u0002\u0002\u04bd\u1cea\u0003\u0002\u0002\u0002\u04bf\u1cf2\u0003\u0002",
+ "\u0002\u0002\u04c1\u1cf9\u0003\u0002\u0002\u0002\u04c3\u1d02\u0003\u0002",
+ "\u0002\u0002\u04c5\u1d08\u0003\u0002\u0002\u0002\u04c7\u1d13\u0003\u0002",
+ "\u0002\u0002\u04c9\u1d2e\u0003\u0002\u0002\u0002\u04cb\u1d3a\u0003\u0002",
+ "\u0002\u0002\u04cd\u1d47\u0003\u0002\u0002\u0002\u04cf\u1d54\u0003\u0002",
+ "\u0002\u0002\u04d1\u1d6c\u0003\u0002\u0002\u0002\u04d3\u1d78\u0003\u0002",
+ "\u0002\u0002\u04d5\u1d89\u0003\u0002\u0002\u0002\u04d7\u1d9e\u0003\u0002",
+ "\u0002\u0002\u04d9\u1dad\u0003\u0002\u0002\u0002\u04db\u1dbb\u0003\u0002",
+ "\u0002\u0002\u04dd\u1dd3\u0003\u0002\u0002\u0002\u04df\u1deb\u0003\u0002",
+ "\u0002\u0002\u04e1\u1dfb\u0003\u0002\u0002\u0002\u04e3\u1e16\u0003\u0002",
+ "\u0002\u0002\u04e5\u1e2a\u0003\u0002\u0002\u0002\u04e7\u1e42\u0003\u0002",
+ "\u0002\u0002\u04e9\u1e57\u0003\u0002\u0002\u0002\u04eb\u1e6b\u0003\u0002",
+ "\u0002\u0002\u04ed\u1e77\u0003\u0002\u0002\u0002\u04ef\u1e94\u0003\u0002",
+ "\u0002\u0002\u04f1\u1ea0\u0003\u0002\u0002\u0002\u04f3\u1ead\u0003\u0002",
+ "\u0002\u0002\u04f5\u1ec4\u0003\u0002\u0002\u0002\u04f7\u1edb\u0003\u0002",
+ "\u0002\u0002\u04f9\u1eef\u0003\u0002\u0002\u0002\u04fb\u1f00\u0003\u0002",
+ "\u0002\u0002\u04fd\u1f09\u0003\u0002\u0002\u0002\u04ff\u1f0f\u0003\u0002",
+ "\u0002\u0002\u0501\u1f14\u0003\u0002\u0002\u0002\u0503\u1f1b\u0003\u0002",
+ "\u0002\u0002\u0505\u1f22\u0003\u0002\u0002\u0002\u0507\u1f29\u0003\u0002",
+ "\u0002\u0002\u0509\u1f30\u0003\u0002\u0002\u0002\u050b\u1f36\u0003\u0002",
+ "\u0002\u0002\u050d\u1f3c\u0003\u0002\u0002\u0002\u050f\u1f42\u0003\u0002",
+ "\u0002\u0002\u0511\u1f48\u0003\u0002\u0002\u0002\u0513\u1f4d\u0003\u0002",
+ "\u0002\u0002\u0515\u1f55\u0003\u0002\u0002\u0002\u0517\u1f5b\u0003\u0002",
+ "\u0002\u0002\u0519\u1f62\u0003\u0002\u0002\u0002\u051b\u1f66\u0003\u0002",
+ "\u0002\u0002\u051d\u1f6e\u0003\u0002\u0002\u0002\u051f\u1f74\u0003\u0002",
+ "\u0002\u0002\u0521\u1f7b\u0003\u0002\u0002\u0002\u0523\u1f7f\u0003\u0002",
+ "\u0002\u0002\u0525\u1f87\u0003\u0002\u0002\u0002\u0527\u1f8d\u0003\u0002",
+ "\u0002\u0002\u0529\u1f93\u0003\u0002\u0002\u0002\u052b\u1f9a\u0003\u0002",
+ "\u0002\u0002\u052d\u1fa1\u0003\u0002\u0002\u0002\u052f\u1fa8\u0003\u0002",
+ "\u0002\u0002\u0531\u1faf\u0003\u0002\u0002\u0002\u0533\u1fb5\u0003\u0002",
+ "\u0002\u0002\u0535\u1fbe\u0003\u0002\u0002\u0002\u0537\u1fc3\u0003\u0002",
+ "\u0002\u0002\u0539\u1fc8\u0003\u0002\u0002\u0002\u053b\u1fcf\u0003\u0002",
+ "\u0002\u0002\u053d\u1fd4\u0003\u0002\u0002\u0002\u053f\u1fd9\u0003\u0002",
+ "\u0002\u0002\u0541\u1fdf\u0003\u0002\u0002\u0002\u0543\u1fe7\u0003\u0002",
+ "\u0002\u0002\u0545\u1fed\u0003\u0002\u0002\u0002\u0547\u1ff2\u0003\u0002",
+ "\u0002\u0002\u0549\u1ffa\u0003\u0002\u0002\u0002\u054b\u2002\u0003\u0002",
+ "\u0002\u0002\u054d\u200a\u0003\u0002\u0002\u0002\u054f\u2014\u0003\u0002",
+ "\u0002\u0002\u0551\u2018\u0003\u0002\u0002\u0002\u0553\u2022\u0003\u0002",
+ "\u0002\u0002\u0555\u2029\u0003\u0002\u0002\u0002\u0557\u2030\u0003\u0002",
+ "\u0002\u0002\u0559\u203b\u0003\u0002\u0002\u0002\u055b\u2042\u0003\u0002",
+ "\u0002\u0002\u055d\u2046\u0003\u0002\u0002\u0002\u055f\u2051\u0003\u0002",
+ "\u0002\u0002\u0561\u2064\u0003\u0002\u0002\u0002\u0563\u206b\u0003\u0002",
+ "\u0002\u0002\u0565\u2076\u0003\u0002\u0002\u0002\u0567\u2080\u0003\u0002",
+ "\u0002\u0002\u0569\u208c\u0003\u0002\u0002\u0002\u056b\u2099\u0003\u0002",
+ "\u0002\u0002\u056d\u20ac\u0003\u0002\u0002\u0002\u056f\u20bb\u0003\u0002",
+ "\u0002\u0002\u0571\u20c4\u0003\u0002\u0002\u0002\u0573\u20cf\u0003\u0002",
+ "\u0002\u0002\u0575\u20df\u0003\u0002\u0002\u0002\u0577\u20ea\u0003\u0002",
+ "\u0002\u0002\u0579\u20f7\u0003\u0002\u0002\u0002\u057b\u20fd\u0003\u0002",
+ "\u0002\u0002\u057d\u2105\u0003\u0002\u0002\u0002\u057f\u2109\u0003\u0002",
+ "\u0002\u0002\u0581\u210e\u0003\u0002\u0002\u0002\u0583\u2116\u0003\u0002",
+ "\u0002\u0002\u0585\u211e\u0003\u0002\u0002\u0002\u0587\u212a\u0003\u0002",
+ "\u0002\u0002\u0589\u2136\u0003\u0002\u0002\u0002\u058b\u213b\u0003\u0002",
+ "\u0002\u0002\u058d\u2144\u0003\u0002\u0002\u0002\u058f\u2149\u0003\u0002",
+ "\u0002\u0002\u0591\u2150\u0003\u0002\u0002\u0002\u0593\u2156\u0003\u0002",
+ "\u0002\u0002\u0595\u215c\u0003\u0002\u0002\u0002\u0597\u216f\u0003\u0002",
+ "\u0002\u0002\u0599\u2181\u0003\u0002\u0002\u0002\u059b\u2194\u0003\u0002",
+ "\u0002\u0002\u059d\u21a4\u0003\u0002\u0002\u0002\u059f\u21b6\u0003\u0002",
+ "\u0002\u0002\u05a1\u21bb\u0003\u0002\u0002\u0002\u05a3\u21c1\u0003\u0002",
+ "\u0002\u0002\u05a5\u21cb\u0003\u0002\u0002\u0002\u05a7\u21cf\u0003\u0002",
+ "\u0002\u0002\u05a9\u21d9\u0003\u0002\u0002\u0002\u05ab\u21e4\u0003\u0002",
+ "\u0002\u0002\u05ad\u21eb\u0003\u0002\u0002\u0002\u05af\u21f8\u0003\u0002",
+ "\u0002\u0002\u05b1\u21fd\u0003\u0002\u0002\u0002\u05b3\u2205\u0003\u0002",
+ "\u0002\u0002\u05b5\u220e\u0003\u0002\u0002\u0002\u05b7\u221f\u0003\u0002",
+ "\u0002\u0002\u05b9\u2227\u0003\u0002\u0002\u0002\u05bb\u2233\u0003\u0002",
+ "\u0002\u0002\u05bd\u2240\u0003\u0002\u0002\u0002\u05bf\u224a\u0003\u0002",
+ "\u0002\u0002\u05c1\u2253\u0003\u0002\u0002\u0002\u05c3\u225a\u0003\u0002",
+ "\u0002\u0002\u05c5\u2264\u0003\u0002\u0002\u0002\u05c7\u2272\u0003\u0002",
+ "\u0002\u0002\u05c9\u2277\u0003\u0002\u0002\u0002\u05cb\u2282\u0003\u0002",
+ "\u0002\u0002\u05cd\u2286\u0003\u0002\u0002\u0002\u05cf\u228a\u0003\u0002",
+ "\u0002\u0002\u05d1\u2290\u0003\u0002\u0002\u0002\u05d3\u22ab\u0003\u0002",
+ "\u0002\u0002\u05d5\u22c5\u0003\u0002\u0002\u0002\u05d7\u22da\u0003\u0002",
+ "\u0002\u0002\u05d9\u22e8\u0003\u0002\u0002\u0002\u05db\u22f0\u0003\u0002",
+ "\u0002\u0002\u05dd\u22f9\u0003\u0002\u0002\u0002\u05df\u2305\u0003\u0002",
+ "\u0002\u0002\u05e1\u230d\u0003\u0002\u0002\u0002\u05e3\u2318\u0003\u0002",
+ "\u0002\u0002\u05e5\u2322\u0003\u0002\u0002\u0002\u05e7\u232c\u0003\u0002",
+ "\u0002\u0002\u05e9\u2333\u0003\u0002\u0002\u0002\u05eb\u233b\u0003\u0002",
+ "\u0002\u0002\u05ed\u2347\u0003\u0002\u0002\u0002\u05ef\u2353\u0003\u0002",
+ "\u0002\u0002\u05f1\u235d\u0003\u0002\u0002\u0002\u05f3\u2366\u0003\u0002",
+ "\u0002\u0002\u05f5\u236a\u0003\u0002\u0002\u0002\u05f7\u2371\u0003\u0002",
+ "\u0002\u0002\u05f9\u2379\u0003\u0002\u0002\u0002\u05fb\u2382\u0003\u0002",
+ "\u0002\u0002\u05fd\u238b\u0003\u0002\u0002\u0002\u05ff\u2392\u0003\u0002",
+ "\u0002\u0002\u0601\u2396\u0003\u0002\u0002\u0002\u0603\u23a1\u0003\u0002",
+ "\u0002\u0002\u0605\u23ae\u0003\u0002\u0002\u0002\u0607\u23bb\u0003\u0002",
+ "\u0002\u0002\u0609\u23c1\u0003\u0002\u0002\u0002\u060b\u23cd\u0003\u0002",
+ "\u0002\u0002\u060d\u23d3\u0003\u0002\u0002\u0002\u060f\u23da\u0003\u0002",
+ "\u0002\u0002\u0611\u23e5\u0003\u0002\u0002\u0002\u0613\u23f1\u0003\u0002",
+ "\u0002\u0002\u0615\u23fb\u0003\u0002\u0002\u0002\u0617\u2409\u0003\u0002",
+ "\u0002\u0002\u0619\u241a\u0003\u0002\u0002\u0002\u061b\u242a\u0003\u0002",
+ "\u0002\u0002\u061d\u2445\u0003\u0002\u0002\u0002\u061f\u245f\u0003\u0002",
+ "\u0002\u0002\u0621\u2470\u0003\u0002\u0002\u0002\u0623\u2480\u0003\u0002",
+ "\u0002\u0002\u0625\u248a\u0003\u0002\u0002\u0002\u0627\u2497\u0003\u0002",
+ "\u0002\u0002\u0629\u24a4\u0003\u0002\u0002\u0002\u062b\u24b0\u0003\u0002",
+ "\u0002\u0002\u062d\u24bb\u0003\u0002\u0002\u0002\u062f\u24c4\u0003\u0002",
+ "\u0002\u0002\u0631\u24cc\u0003\u0002\u0002\u0002\u0633\u24d5\u0003\u0002",
+ "\u0002\u0002\u0635\u24e1\u0003\u0002\u0002\u0002\u0637\u24ef\u0003\u0002",
+ "\u0002\u0002\u0639\u24f3\u0003\u0002\u0002\u0002\u063b\u24fa\u0003\u0002",
+ "\u0002\u0002\u063d\u2505\u0003\u0002\u0002\u0002\u063f\u2510\u0003\u0002",
+ "\u0002\u0002\u0641\u251a\u0003\u0002\u0002\u0002\u0643\u2524\u0003\u0002",
+ "\u0002\u0002\u0645\u252a\u0003\u0002\u0002\u0002\u0647\u2538\u0003\u0002",
+ "\u0002\u0002\u0649\u2543\u0003\u0002\u0002\u0002\u064b\u254c\u0003\u0002",
+ "\u0002\u0002\u064d\u2554\u0003\u0002\u0002\u0002\u064f\u255b\u0003\u0002",
+ "\u0002\u0002\u0651\u2564\u0003\u0002\u0002\u0002\u0653\u2571\u0003\u0002",
+ "\u0002\u0002\u0655\u2579\u0003\u0002\u0002\u0002\u0657\u2588\u0003\u0002",
+ "\u0002\u0002\u0659\u2597\u0003\u0002\u0002\u0002\u065b\u259f\u0003\u0002",
+ "\u0002\u0002\u065d\u25ac\u0003\u0002\u0002\u0002\u065f\u25bb\u0003\u0002",
+ "\u0002\u0002\u0661\u25c1\u0003\u0002\u0002\u0002\u0663\u25c7\u0003\u0002",
+ "\u0002\u0002\u0665\u25ce\u0003\u0002\u0002\u0002\u0667\u25db\u0003\u0002",
+ "\u0002\u0002\u0669\u25e7\u0003\u0002\u0002\u0002\u066b\u25fa\u0003\u0002",
+ "\u0002\u0002\u066d\u260c\u0003\u0002\u0002\u0002\u066f\u260f\u0003\u0002",
+ "\u0002\u0002\u0671\u2619\u0003\u0002\u0002\u0002\u0673\u2620\u0003\u0002",
+ "\u0002\u0002\u0675\u2624\u0003\u0002\u0002\u0002\u0677\u262a\u0003\u0002",
+ "\u0002\u0002\u0679\u262f\u0003\u0002\u0002\u0002\u067b\u2635\u0003\u0002",
+ "\u0002\u0002\u067d\u263a\u0003\u0002\u0002\u0002\u067f\u2640\u0003\u0002",
+ "\u0002\u0002\u0681\u2649\u0003\u0002\u0002\u0002\u0683\u2652\u0003\u0002",
+ "\u0002\u0002\u0685\u265b\u0003\u0002\u0002\u0002\u0687\u266b\u0003\u0002",
+ "\u0002\u0002\u0689\u2677\u0003\u0002\u0002\u0002\u068b\u2683\u0003\u0002",
+ "\u0002\u0002\u068d\u268c\u0003\u0002\u0002\u0002\u068f\u269a\u0003\u0002",
+ "\u0002\u0002\u0691\u26a6\u0003\u0002\u0002\u0002\u0693\u26b1\u0003\u0002",
+ "\u0002\u0002\u0695\u26bb\u0003\u0002\u0002\u0002\u0697\u26bf\u0003\u0002",
+ "\u0002\u0002\u0699\u26cd\u0003\u0002\u0002\u0002\u069b\u26da\u0003\u0002",
+ "\u0002\u0002\u069d\u26e4\u0003\u0002\u0002\u0002\u069f\u26f3\u0003\u0002",
+ "\u0002\u0002\u06a1\u2701\u0003\u0002\u0002\u0002\u06a3\u270f\u0003\u0002",
+ "\u0002\u0002\u06a5\u271c\u0003\u0002\u0002\u0002\u06a7\u2734\u0003\u0002",
+ "\u0002\u0002\u06a9\u274b\u0003\u0002\u0002\u0002\u06ab\u275e\u0003\u0002",
+ "\u0002\u0002\u06ad\u2770\u0003\u0002\u0002\u0002\u06af\u2785\u0003\u0002",
+ "\u0002\u0002\u06b1\u2799\u0003\u0002\u0002\u0002\u06b3\u27a4\u0003\u0002",
+ "\u0002\u0002\u06b5\u27ab\u0003\u0002\u0002\u0002\u06b7\u27b9\u0003\u0002",
+ "\u0002\u0002\u06b9\u27ca\u0003\u0002\u0002\u0002\u06bb\u27d4\u0003\u0002",
+ "\u0002\u0002\u06bd\u27d8\u0003\u0002\u0002\u0002\u06bf\u27e5\u0003\u0002",
+ "\u0002\u0002\u06c1\u27e9\u0003\u0002\u0002\u0002\u06c3\u27f2\u0003\u0002",
+ "\u0002\u0002\u06c5\u27fd\u0003\u0002\u0002\u0002\u06c7\u2809\u0003\u0002",
+ "\u0002\u0002\u06c9\u280c\u0003\u0002\u0002\u0002\u06cb\u281a\u0003\u0002",
+ "\u0002\u0002\u06cd\u2827\u0003\u0002\u0002\u0002\u06cf\u282e\u0003\u0002",
+ "\u0002\u0002\u06d1\u283b\u0003\u0002\u0002\u0002\u06d3\u2847\u0003\u0002",
+ "\u0002\u0002\u06d5\u2857\u0003\u0002\u0002\u0002\u06d7\u2866\u0003\u0002",
+ "\u0002\u0002\u06d9\u286a\u0003\u0002\u0002\u0002\u06db\u2870\u0003\u0002",
+ "\u0002\u0002\u06dd\u2876\u0003\u0002\u0002\u0002\u06df\u287e\u0003\u0002",
+ "\u0002\u0002\u06e1\u2883\u0003\u0002\u0002\u0002\u06e3\u2890\u0003\u0002",
+ "\u0002\u0002\u06e5\u289d\u0003\u0002\u0002\u0002\u06e7\u28a5\u0003\u0002",
+ "\u0002\u0002\u06e9\u28ab\u0003\u0002\u0002\u0002\u06eb\u28b5\u0003\u0002",
+ "\u0002\u0002\u06ed\u28ba\u0003\u0002\u0002\u0002\u06ef\u28c0\u0003\u0002",
+ "\u0002\u0002\u06f1\u28cc\u0003\u0002\u0002\u0002\u06f3\u28d9\u0003\u0002",
+ "\u0002\u0002\u06f5\u28dd\u0003\u0002\u0002\u0002\u06f7\u28e2\u0003\u0002",
+ "\u0002\u0002\u06f9\u28e7\u0003\u0002\u0002\u0002\u06fb\u28f3\u0003\u0002",
+ "\u0002\u0002\u06fd\u28f8\u0003\u0002\u0002\u0002\u06ff\u28fc\u0003\u0002",
+ "\u0002\u0002\u0701\u2902\u0003\u0002\u0002\u0002\u0703\u290a\u0003\u0002",
+ "\u0002\u0002\u0705\u2926\u0003\u0002\u0002\u0002\u0707\u292b\u0003\u0002",
+ "\u0002\u0002\u0709\u2930\u0003\u0002\u0002\u0002\u070b\u293b\u0003\u0002",
+ "\u0002\u0002\u070d\u2942\u0003\u0002\u0002\u0002\u070f\u294e\u0003\u0002",
+ "\u0002\u0002\u0711\u2956\u0003\u0002\u0002\u0002\u0713\u2962\u0003\u0002",
+ "\u0002\u0002\u0715\u296c\u0003\u0002\u0002\u0002\u0717\u2975\u0003\u0002",
+ "\u0002\u0002\u0719\u297e\u0003\u0002\u0002\u0002\u071b\u2988\u0003\u0002",
+ "\u0002\u0002\u071d\u2994\u0003\u0002\u0002\u0002\u071f\u29a0\u0003\u0002",
+ "\u0002\u0002\u0721\u29ab\u0003\u0002\u0002\u0002\u0723\u29b9\u0003\u0002",
+ "\u0002\u0002\u0725\u29c6\u0003\u0002\u0002\u0002\u0727\u29d2\u0003\u0002",
+ "\u0002\u0002\u0729\u29de\u0003\u0002\u0002\u0002\u072b\u29ea\u0003\u0002",
+ "\u0002\u0002\u072d\u29f6\u0003\u0002\u0002\u0002\u072f\u2a00\u0003\u0002",
+ "\u0002\u0002\u0731\u2a10\u0003\u0002\u0002\u0002\u0733\u2a24\u0003\u0002",
+ "\u0002\u0002\u0735\u2a37\u0003\u0002\u0002\u0002\u0737\u2a4a\u0003\u0002",
+ "\u0002\u0002\u0739\u2a68\u0003\u0002\u0002\u0002\u073b\u2a85\u0003\u0002",
+ "\u0002\u0002\u073d\u2a99\u0003\u0002\u0002\u0002\u073f\u2aac\u0003\u0002",
+ "\u0002\u0002\u0741\u2ab9\u0003\u0002\u0002\u0002\u0743\u2ac9\u0003\u0002",
+ "\u0002\u0002\u0745\u2ad9\u0003\u0002\u0002\u0002\u0747\u2ae8\u0003\u0002",
+ "\u0002\u0002\u0749\u2af9\u0003\u0002\u0002\u0002\u074b\u2b09\u0003\u0002",
+ "\u0002\u0002\u074d\u2b17\u0003\u0002\u0002\u0002\u074f\u2b23\u0003\u0002",
+ "\u0002\u0002\u0751\u2b2e\u0003\u0002\u0002\u0002\u0753\u2b3a\u0003\u0002",
+ "\u0002\u0002\u0755\u2b4a\u0003\u0002\u0002\u0002\u0757\u2b59\u0003\u0002",
+ "\u0002\u0002\u0759\u2b6f\u0003\u0002\u0002\u0002\u075b\u2b84\u0003\u0002",
+ "\u0002\u0002\u075d\u2b95\u0003\u0002\u0002\u0002\u075f\u2ba8\u0003\u0002",
+ "\u0002\u0002\u0761\u2bbc\u0003\u0002\u0002\u0002\u0763\u2bc9\u0003\u0002",
+ "\u0002\u0002\u0765\u2bd5\u0003\u0002\u0002\u0002\u0767\u2be6\u0003\u0002",
+ "\u0002\u0002\u0769\u2bf6\u0003\u0002\u0002\u0002\u076b\u2c00\u0003\u0002",
+ "\u0002\u0002\u076d\u2c10\u0003\u0002\u0002\u0002\u076f\u2c1f\u0003\u0002",
+ "\u0002\u0002\u0771\u2c32\u0003\u0002\u0002\u0002\u0773\u2c44\u0003\u0002",
+ "\u0002\u0002\u0775\u2c4c\u0003\u0002\u0002\u0002\u0777\u2c5a\u0003\u0002",
+ "\u0002\u0002\u0779\u2c6b\u0003\u0002\u0002\u0002\u077b\u2c76\u0003\u0002",
+ "\u0002\u0002\u077d\u2c7f\u0003\u0002\u0002\u0002\u077f\u2c89\u0003\u0002",
+ "\u0002\u0002\u0781\u2c8e\u0003\u0002\u0002\u0002\u0783\u2c93\u0003\u0002",
+ "\u0002\u0002\u0785\u2c9b\u0003\u0002\u0002\u0002\u0787\u2cab\u0003\u0002",
+ "\u0002\u0002\u0789\u2cb3\u0003\u0002\u0002\u0002\u078b\u2cbf\u0003\u0002",
+ "\u0002\u0002\u078d\u2cc3\u0003\u0002\u0002\u0002\u078f\u2ccc\u0003\u0002",
+ "\u0002\u0002\u0791\u2cd9\u0003\u0002\u0002\u0002\u0793\u2ce7\u0003\u0002",
+ "\u0002\u0002\u0795\u2cf3\u0003\u0002\u0002\u0002\u0797\u2cff\u0003\u0002",
+ "\u0002\u0002\u0799\u2d07\u0003\u0002\u0002\u0002\u079b\u2d11\u0003\u0002",
+ "\u0002\u0002\u079d\u2d19\u0003\u0002\u0002\u0002\u079f\u2d24\u0003\u0002",
+ "\u0002\u0002\u07a1\u2d2a\u0003\u0002\u0002\u0002\u07a3\u2d35\u0003\u0002",
+ "\u0002\u0002\u07a5\u2d49\u0003\u0002\u0002\u0002\u07a7\u2d4f\u0003\u0002",
+ "\u0002\u0002\u07a9\u2d5e\u0003\u0002\u0002\u0002\u07ab\u2d68\u0003\u0002",
+ "\u0002\u0002\u07ad\u2d6e\u0003\u0002\u0002\u0002\u07af\u2d73\u0003\u0002",
+ "\u0002\u0002\u07b1\u2d7e\u0003\u0002\u0002\u0002\u07b3\u2d99\u0003\u0002",
+ "\u0002\u0002\u07b5\u2da1\u0003\u0002\u0002\u0002\u07b7\u2dc3\u0003\u0002",
+ "\u0002\u0002\u07b9\u2dcb\u0003\u0002\u0002\u0002\u07bb\u2dd6\u0003\u0002",
+ "\u0002\u0002\u07bd\u2de4\u0003\u0002\u0002\u0002\u07bf\u2deb\u0003\u0002",
+ "\u0002\u0002\u07c1\u2df4\u0003\u0002\u0002\u0002\u07c3\u2df6\u0003\u0002",
+ "\u0002\u0002\u07c5\u2df8\u0003\u0002\u0002\u0002\u07c7\u2dfb\u0003\u0002",
+ "\u0002\u0002\u07c9\u2dfe\u0003\u0002\u0002\u0002\u07cb\u2e01\u0003\u0002",
+ "\u0002\u0002\u07cd\u2e04\u0003\u0002\u0002\u0002\u07cf\u2e07\u0003\u0002",
+ "\u0002\u0002\u07d1\u2e0a\u0003\u0002\u0002\u0002\u07d3\u2e0d\u0003\u0002",
+ "\u0002\u0002\u07d5\u2e10\u0003\u0002\u0002\u0002\u07d7\u2e13\u0003\u0002",
+ "\u0002\u0002\u07d9\u2e15\u0003\u0002\u0002\u0002\u07db\u2e17\u0003\u0002",
+ "\u0002\u0002\u07dd\u2e19\u0003\u0002\u0002\u0002\u07df\u2e1b\u0003\u0002",
+ "\u0002\u0002\u07e1\u2e1e\u0003\u0002\u0002\u0002\u07e3\u2e20\u0003\u0002",
+ "\u0002\u0002\u07e5\u2e24\u0003\u0002\u0002\u0002\u07e7\u2e28\u0003\u0002",
+ "\u0002\u0002\u07e9\u2e2a\u0003\u0002\u0002\u0002\u07eb\u2e2c\u0003\u0002",
+ "\u0002\u0002\u07ed\u2e2e\u0003\u0002\u0002\u0002\u07ef\u2e30\u0003\u0002",
+ "\u0002\u0002\u07f1\u2e32\u0003\u0002\u0002\u0002\u07f3\u2e34\u0003\u0002",
+ "\u0002\u0002\u07f5\u2e36\u0003\u0002\u0002\u0002\u07f7\u2e38\u0003\u0002",
+ "\u0002\u0002\u07f9\u2e3a\u0003\u0002\u0002\u0002\u07fb\u2e3c\u0003\u0002",
+ "\u0002\u0002\u07fd\u2e3e\u0003\u0002\u0002\u0002\u07ff\u2e40\u0003\u0002",
+ "\u0002\u0002\u0801\u2e42\u0003\u0002\u0002\u0002\u0803\u2e44\u0003\u0002",
+ "\u0002\u0002\u0805\u2e46\u0003\u0002\u0002\u0002\u0807\u2e48\u0003\u0002",
+ "\u0002\u0002\u0809\u2e4a\u0003\u0002\u0002\u0002\u080b\u2e4c\u0003\u0002",
+ "\u0002\u0002\u080d\u2e4e\u0003\u0002\u0002\u0002\u080f\u2e50\u0003\u0002",
+ "\u0002\u0002\u0811\u2e55\u0003\u0002\u0002\u0002\u0813\u2e57\u0003\u0002",
+ "\u0002\u0002\u0815\u2e5c\u0003\u0002\u0002\u0002\u0817\u2e62\u0003\u0002",
+ "\u0002\u0002\u0819\u2e68\u0003\u0002\u0002\u0002\u081b\u2e6b\u0003\u0002",
+ "\u0002\u0002\u081d\u2e82\u0003\u0002\u0002\u0002\u081f\u2eaf\u0003\u0002",
+ "\u0002\u0002\u0821\u2eb1\u0003\u0002\u0002\u0002\u0823\u2eb4\u0003\u0002",
+ "\u0002\u0002\u0825\u2eb6\u0003\u0002\u0002\u0002\u0827\u2eb9\u0003\u0002",
+ "\u0002\u0002\u0829\u2ebc\u0003\u0002\u0002\u0002\u082b\u2ebe\u0003\u0002",
+ "\u0002\u0002\u082d\u2eca\u0003\u0002\u0002\u0002\u082f\u2ed3\u0003\u0002",
+ "\u0002\u0002\u0831\u2ede\u0003\u0002\u0002\u0002\u0833\u2f11\u0003\u0002",
+ "\u0002\u0002\u0835\u2f13\u0003\u0002\u0002\u0002\u0837\u2f1f\u0003\u0002",
+ "\u0002\u0002\u0839\u2f2d\u0003\u0002\u0002\u0002\u083b\u2f3a\u0003\u0002",
+ "\u0002\u0002\u083d\u2f47\u0003\u0002\u0002\u0002\u083f\u2f54\u0003\u0002",
+ "\u0002\u0002\u0841\u2f56\u0003\u0002\u0002\u0002\u0843\u2f58\u0003\u0002",
+ "\u0002\u0002\u0845\u2f61\u0003\u0002\u0002\u0002\u0847\u0849\t\u0002",
+ "\u0002\u0002\u0848\u0847\u0003\u0002\u0002\u0002\u0849\u084a\u0003\u0002",
+ "\u0002\u0002\u084a\u0848\u0003\u0002\u0002\u0002\u084a\u084b\u0003\u0002",
+ "\u0002\u0002\u084b\u084c\u0003\u0002\u0002\u0002\u084c\u084d\b\u0002",
+ "\u0002\u0002\u084d\u0004\u0003\u0002\u0002\u0002\u084e\u084f\u00071",
+ "\u0002\u0002\u084f\u0850\u0007,\u0002\u0002\u0850\u0851\u0007#\u0002",
+ "\u0002\u0851\u0853\u0003\u0002\u0002\u0002\u0852\u0854\u000b\u0002\u0002",
+ "\u0002\u0853\u0852\u0003\u0002\u0002\u0002\u0854\u0855\u0003\u0002\u0002",
+ "\u0002\u0855\u0856\u0003\u0002\u0002\u0002\u0855\u0853\u0003\u0002\u0002",
+ "\u0002\u0856\u0857\u0003\u0002\u0002\u0002\u0857\u0858\u0007,\u0002",
+ "\u0002\u0858\u0859\u00071\u0002\u0002\u0859\u085a\u0003\u0002\u0002",
+ "\u0002\u085a\u085b\b\u0003\u0003\u0002\u085b\u0006\u0003\u0002\u0002",
+ "\u0002\u085c\u085d\u00071\u0002\u0002\u085d\u085e\u0007,\u0002\u0002",
+ "\u085e\u0862\u0003\u0002\u0002\u0002\u085f\u0861\u000b\u0002\u0002\u0002",
+ "\u0860\u085f\u0003\u0002\u0002\u0002\u0861\u0864\u0003\u0002\u0002\u0002",
+ "\u0862\u0863\u0003\u0002\u0002\u0002\u0862\u0860\u0003\u0002\u0002\u0002",
+ "\u0863\u0865\u0003\u0002\u0002\u0002\u0864\u0862\u0003\u0002\u0002\u0002",
+ "\u0865\u0866\u0007,\u0002\u0002\u0866\u0867\u00071\u0002\u0002\u0867",
+ "\u0868\u0003\u0002\u0002\u0002\u0868\u0869\b\u0004\u0002\u0002\u0869",
+ "\b\u0003\u0002\u0002\u0002\u086a\u086b\u0007/\u0002\u0002\u086b\u086c",
+ "\u0007/\u0002\u0002\u086c\u086f\u0007\"\u0002\u0002\u086d\u086f\u0007",
+ "%\u0002\u0002\u086e\u086a\u0003\u0002\u0002\u0002\u086e\u086d\u0003",
+ "\u0002\u0002\u0002\u086f\u0873\u0003\u0002\u0002\u0002\u0870\u0872\n",
+ "\u0003\u0002\u0002\u0871\u0870\u0003\u0002\u0002\u0002\u0872\u0875\u0003",
+ "\u0002\u0002\u0002\u0873\u0871\u0003\u0002\u0002\u0002\u0873\u0874\u0003",
+ "\u0002\u0002\u0002\u0874\u087b\u0003\u0002\u0002\u0002\u0875\u0873\u0003",
+ "\u0002\u0002\u0002\u0876\u0878\u0007\u000f\u0002\u0002\u0877\u0876\u0003",
+ "\u0002\u0002\u0002\u0877\u0878\u0003\u0002\u0002\u0002\u0878\u0879\u0003",
+ "\u0002\u0002\u0002\u0879\u087c\u0007\f\u0002\u0002\u087a\u087c\u0007",
+ "\u0002\u0002\u0003\u087b\u0877\u0003\u0002\u0002\u0002\u087b\u087a\u0003",
+ "\u0002\u0002\u0002\u087c\u0888\u0003\u0002\u0002\u0002\u087d\u087e\u0007",
+ "/\u0002\u0002\u087e\u087f\u0007/\u0002\u0002\u087f\u0885\u0003\u0002",
+ "\u0002\u0002\u0880\u0882\u0007\u000f\u0002\u0002\u0881\u0880\u0003\u0002",
+ "\u0002\u0002\u0881\u0882\u0003\u0002\u0002\u0002\u0882\u0883\u0003\u0002",
+ "\u0002\u0002\u0883\u0886\u0007\f\u0002\u0002\u0884\u0886\u0007\u0002",
+ "\u0002\u0003\u0885\u0881\u0003\u0002\u0002\u0002\u0885\u0884\u0003\u0002",
+ "\u0002\u0002\u0886\u0888\u0003\u0002\u0002\u0002\u0887\u086e\u0003\u0002",
+ "\u0002\u0002\u0887\u087d\u0003\u0002\u0002\u0002\u0888\u0889\u0003\u0002",
+ "\u0002\u0002\u0889\u088a\b\u0005\u0002\u0002\u088a\n\u0003\u0002\u0002",
+ "\u0002\u088b\u088c\u0007C\u0002\u0002\u088c\u088d\u0007F\u0002\u0002",
+ "\u088d\u088e\u0007F\u0002\u0002\u088e\f\u0003\u0002\u0002\u0002\u088f",
+ "\u0890\u0007C\u0002\u0002\u0890\u0891\u0007N\u0002\u0002\u0891\u0892",
+ "\u0007N\u0002\u0002\u0892\u000e\u0003\u0002\u0002\u0002\u0893\u0894",
+ "\u0007C\u0002\u0002\u0894\u0895\u0007N\u0002\u0002\u0895\u0896\u0007",
+ "V\u0002\u0002\u0896\u0897\u0007G\u0002\u0002\u0897\u0898\u0007T\u0002",
+ "\u0002\u0898\u0010\u0003\u0002\u0002\u0002\u0899\u089a\u0007C\u0002",
+ "\u0002\u089a\u089b\u0007N\u0002\u0002\u089b\u089c\u0007Y\u0002\u0002",
+ "\u089c\u089d\u0007C\u0002\u0002\u089d\u089e\u0007[\u0002\u0002\u089e",
+ "\u089f\u0007U\u0002\u0002\u089f\u0012\u0003\u0002\u0002\u0002\u08a0",
+ "\u08a1\u0007C\u0002\u0002\u08a1\u08a2\u0007P\u0002\u0002\u08a2\u08a3",
+ "\u0007C\u0002\u0002\u08a3\u08a4\u0007N\u0002\u0002\u08a4\u08a5\u0007",
+ "[\u0002\u0002\u08a5\u08a6\u0007\\\u0002\u0002\u08a6\u08a7\u0007G\u0002",
+ "\u0002\u08a7\u0014\u0003\u0002\u0002\u0002\u08a8\u08a9\u0007C\u0002",
+ "\u0002\u08a9\u08aa\u0007P\u0002\u0002\u08aa\u08ab\u0007F\u0002\u0002",
+ "\u08ab\u0016\u0003\u0002\u0002\u0002\u08ac\u08ad\u0007C\u0002\u0002",
+ "\u08ad\u08ae\u0007U\u0002\u0002\u08ae\u0018\u0003\u0002\u0002\u0002",
+ "\u08af\u08b0\u0007C\u0002\u0002\u08b0\u08b1\u0007U\u0002\u0002\u08b1",
+ "\u08b2\u0007E\u0002\u0002\u08b2\u001a\u0003\u0002\u0002\u0002\u08b3",
+ "\u08b4\u0007D\u0002\u0002\u08b4\u08b5\u0007G\u0002\u0002\u08b5\u08b6",
+ "\u0007H\u0002\u0002\u08b6\u08b7\u0007Q\u0002\u0002\u08b7\u08b8\u0007",
+ "T\u0002\u0002\u08b8\u08b9\u0007G\u0002\u0002\u08b9\u001c\u0003\u0002",
+ "\u0002\u0002\u08ba\u08bb\u0007D\u0002\u0002\u08bb\u08bc\u0007G\u0002",
+ "\u0002\u08bc\u08bd\u0007V\u0002\u0002\u08bd\u08be\u0007Y\u0002\u0002",
+ "\u08be\u08bf\u0007G\u0002\u0002\u08bf\u08c0\u0007G\u0002\u0002\u08c0",
+ "\u08c1\u0007P\u0002\u0002\u08c1\u001e\u0003\u0002\u0002\u0002\u08c2",
+ "\u08c3\u0007D\u0002\u0002\u08c3\u08c4\u0007Q\u0002\u0002\u08c4\u08c5",
+ "\u0007V\u0002\u0002\u08c5\u08c6\u0007J\u0002\u0002\u08c6 \u0003\u0002",
+ "\u0002\u0002\u08c7\u08c8\u0007D\u0002\u0002\u08c8\u08c9\u0007[\u0002",
+ "\u0002\u08c9\"\u0003\u0002\u0002\u0002\u08ca\u08cb\u0007E\u0002\u0002",
+ "\u08cb\u08cc\u0007C\u0002\u0002\u08cc\u08cd\u0007N\u0002\u0002\u08cd",
+ "\u08ce\u0007N\u0002\u0002\u08ce$\u0003\u0002\u0002\u0002\u08cf\u08d0",
+ "\u0007E\u0002\u0002\u08d0\u08d1\u0007C\u0002\u0002\u08d1\u08d2\u0007",
+ "U\u0002\u0002\u08d2\u08d3\u0007E\u0002\u0002\u08d3\u08d4\u0007C\u0002",
+ "\u0002\u08d4\u08d5\u0007F\u0002\u0002\u08d5\u08d6\u0007G\u0002\u0002",
+ "\u08d6&\u0003\u0002\u0002\u0002\u08d7\u08d8\u0007E\u0002\u0002\u08d8",
+ "\u08d9\u0007C\u0002\u0002\u08d9\u08da\u0007U\u0002\u0002\u08da\u08db",
+ "\u0007G\u0002\u0002\u08db(\u0003\u0002\u0002\u0002\u08dc\u08dd\u0007",
+ "E\u0002\u0002\u08dd\u08de\u0007C\u0002\u0002\u08de\u08df\u0007U\u0002",
+ "\u0002\u08df\u08e0\u0007V\u0002\u0002\u08e0*\u0003\u0002\u0002\u0002",
+ "\u08e1\u08e2\u0007E\u0002\u0002\u08e2\u08e3\u0007J\u0002\u0002\u08e3",
+ "\u08e4\u0007C\u0002\u0002\u08e4\u08e5\u0007P\u0002\u0002\u08e5\u08e6",
+ "\u0007I\u0002\u0002\u08e6\u08e7\u0007G\u0002\u0002\u08e7,\u0003\u0002",
+ "\u0002\u0002\u08e8\u08e9\u0007E\u0002\u0002\u08e9\u08ea\u0007J\u0002",
+ "\u0002\u08ea\u08eb\u0007C\u0002\u0002\u08eb\u08ec\u0007T\u0002\u0002",
+ "\u08ec\u08ed\u0007C\u0002\u0002\u08ed\u08ee\u0007E\u0002\u0002\u08ee",
+ "\u08ef\u0007V\u0002\u0002\u08ef\u08f0\u0007G\u0002\u0002\u08f0\u08f1",
+ "\u0007T\u0002\u0002\u08f1.\u0003\u0002\u0002\u0002\u08f2\u08f3\u0007",
+ "E\u0002\u0002\u08f3\u08f4\u0007J\u0002\u0002\u08f4\u08f5\u0007G\u0002",
+ "\u0002\u08f5\u08f6\u0007E\u0002\u0002\u08f6\u08f7\u0007M\u0002\u0002",
+ "\u08f70\u0003\u0002\u0002\u0002\u08f8\u08f9\u0007E\u0002\u0002\u08f9",
+ "\u08fa\u0007Q\u0002\u0002\u08fa\u08fb\u0007N\u0002\u0002\u08fb\u08fc",
+ "\u0007N\u0002\u0002\u08fc\u08fd\u0007C\u0002\u0002\u08fd\u08fe\u0007",
+ "V\u0002\u0002\u08fe\u08ff\u0007G\u0002\u0002\u08ff2\u0003\u0002\u0002",
+ "\u0002\u0900\u0901\u0007E\u0002\u0002\u0901\u0902\u0007Q\u0002\u0002",
+ "\u0902\u0903\u0007N\u0002\u0002\u0903\u0904\u0007W\u0002\u0002\u0904",
+ "\u0905\u0007O\u0002\u0002\u0905\u0906\u0007P\u0002\u0002\u09064\u0003",
+ "\u0002\u0002\u0002\u0907\u0908\u0007E\u0002\u0002\u0908\u0909\u0007",
+ "Q\u0002\u0002\u0909\u090a\u0007P\u0002\u0002\u090a\u090b\u0007F\u0002",
+ "\u0002\u090b\u090c\u0007K\u0002\u0002\u090c\u090d\u0007V\u0002\u0002",
+ "\u090d\u090e\u0007K\u0002\u0002\u090e\u090f\u0007Q\u0002\u0002\u090f",
+ "\u0910\u0007P\u0002\u0002\u09106\u0003\u0002\u0002\u0002\u0911\u0912",
+ "\u0007E\u0002\u0002\u0912\u0913\u0007Q\u0002\u0002\u0913\u0914\u0007",
+ "P\u0002\u0002\u0914\u0915\u0007U\u0002\u0002\u0915\u0916\u0007V\u0002",
+ "\u0002\u0916\u0917\u0007T\u0002\u0002\u0917\u0918\u0007C\u0002\u0002",
+ "\u0918\u0919\u0007K\u0002\u0002\u0919\u091a\u0007P\u0002\u0002\u091a",
+ "\u091b\u0007V\u0002\u0002\u091b8\u0003\u0002\u0002\u0002\u091c\u091d",
+ "\u0007E\u0002\u0002\u091d\u091e\u0007Q\u0002\u0002\u091e\u091f\u0007",
+ "P\u0002\u0002\u091f\u0920\u0007V\u0002\u0002\u0920\u0921\u0007K\u0002",
+ "\u0002\u0921\u0922\u0007P\u0002\u0002\u0922\u0923\u0007W\u0002\u0002",
+ "\u0923\u0924\u0007G\u0002\u0002\u0924:\u0003\u0002\u0002\u0002\u0925",
+ "\u0926\u0007E\u0002\u0002\u0926\u0927\u0007Q\u0002\u0002\u0927\u0928",
+ "\u0007P\u0002\u0002\u0928\u0929\u0007X\u0002\u0002\u0929\u092a\u0007",
+ "G\u0002\u0002\u092a\u092b\u0007T\u0002\u0002\u092b\u092c\u0007V\u0002",
+ "\u0002\u092c<\u0003\u0002\u0002\u0002\u092d\u092e\u0007E\u0002\u0002",
+ "\u092e\u092f\u0007T\u0002\u0002\u092f\u0930\u0007G\u0002\u0002\u0930",
+ "\u0931\u0007C\u0002\u0002\u0931\u0932\u0007V\u0002\u0002\u0932\u0933",
+ "\u0007G\u0002\u0002\u0933>\u0003\u0002\u0002\u0002\u0934\u0935\u0007",
+ "E\u0002\u0002\u0935\u0936\u0007T\u0002\u0002\u0936\u0937\u0007Q\u0002",
+ "\u0002\u0937\u0938\u0007U\u0002\u0002\u0938\u0939\u0007U\u0002\u0002",
+ "\u0939@\u0003\u0002\u0002\u0002\u093a\u093b\u0007E\u0002\u0002\u093b",
+ "\u093c\u0007W\u0002\u0002\u093c\u093d\u0007T\u0002\u0002\u093d\u093e",
+ "\u0007T\u0002\u0002\u093e\u093f\u0007G\u0002\u0002\u093f\u0940\u0007",
+ "P\u0002\u0002\u0940\u0941\u0007V\u0002\u0002\u0941B\u0003\u0002\u0002",
+ "\u0002\u0942\u0943\u0007E\u0002\u0002\u0943\u0944\u0007W\u0002\u0002",
+ "\u0944\u0945\u0007T\u0002\u0002\u0945\u0946\u0007T\u0002\u0002\u0946",
+ "\u0947\u0007G\u0002\u0002\u0947\u0948\u0007P\u0002\u0002\u0948\u0949",
+ "\u0007V\u0002\u0002\u0949\u094a\u0007a\u0002\u0002\u094a\u094b\u0007",
+ "W\u0002\u0002\u094b\u094c\u0007U\u0002\u0002\u094c\u094d\u0007G\u0002",
+ "\u0002\u094d\u094e\u0007T\u0002\u0002\u094eD\u0003\u0002\u0002\u0002",
+ "\u094f\u0950\u0007E\u0002\u0002\u0950\u0951\u0007W\u0002\u0002\u0951",
+ "\u0952\u0007T\u0002\u0002\u0952\u0953\u0007U\u0002\u0002\u0953\u0954",
+ "\u0007Q\u0002\u0002\u0954\u0955\u0007T\u0002\u0002\u0955F\u0003\u0002",
+ "\u0002\u0002\u0956\u0957\u0007F\u0002\u0002\u0957\u0958\u0007C\u0002",
+ "\u0002\u0958\u0959\u0007V\u0002\u0002\u0959\u095a\u0007C\u0002\u0002",
+ "\u095a\u095b\u0007D\u0002\u0002\u095b\u095c\u0007C\u0002\u0002\u095c",
+ "\u095d\u0007U\u0002\u0002\u095d\u095e\u0007G\u0002\u0002\u095eH\u0003",
+ "\u0002\u0002\u0002\u095f\u0960\u0007F\u0002\u0002\u0960\u0961\u0007",
+ "C\u0002\u0002\u0961\u0962\u0007V\u0002\u0002\u0962\u0963\u0007C\u0002",
+ "\u0002\u0963\u0964\u0007D\u0002\u0002\u0964\u0965\u0007C\u0002\u0002",
+ "\u0965\u0966\u0007U\u0002\u0002\u0966\u0967\u0007G\u0002\u0002\u0967",
+ "\u0968\u0007U\u0002\u0002\u0968J\u0003\u0002\u0002\u0002\u0969\u096a",
+ "\u0007F\u0002\u0002\u096a\u096b\u0007G\u0002\u0002\u096b\u096c\u0007",
+ "E\u0002\u0002\u096c\u096d\u0007N\u0002\u0002\u096d\u096e\u0007C\u0002",
+ "\u0002\u096e\u096f\u0007T\u0002\u0002\u096f\u0970\u0007G\u0002\u0002",
+ "\u0970L\u0003\u0002\u0002\u0002\u0971\u0972\u0007F\u0002\u0002\u0972",
+ "\u0973\u0007G\u0002\u0002\u0973\u0974\u0007H\u0002\u0002\u0974\u0975",
+ "\u0007C\u0002\u0002\u0975\u0976\u0007W\u0002\u0002\u0976\u0977\u0007",
+ "N\u0002\u0002\u0977\u0978\u0007V\u0002\u0002\u0978N\u0003\u0002\u0002",
+ "\u0002\u0979\u097a\u0007F\u0002\u0002\u097a\u097b\u0007G\u0002\u0002",
+ "\u097b\u097c\u0007N\u0002\u0002\u097c\u097d\u0007C\u0002\u0002\u097d",
+ "\u097e\u0007[\u0002\u0002\u097e\u097f\u0007G\u0002\u0002\u097f\u0980",
+ "\u0007F\u0002\u0002\u0980P\u0003\u0002\u0002\u0002\u0981\u0982\u0007",
+ "F\u0002\u0002\u0982\u0983\u0007G\u0002\u0002\u0983\u0984\u0007N\u0002",
+ "\u0002\u0984\u0985\u0007G\u0002\u0002\u0985\u0986\u0007V\u0002\u0002",
+ "\u0986\u0987\u0007G\u0002\u0002\u0987R\u0003\u0002\u0002\u0002\u0988",
+ "\u0989\u0007F\u0002\u0002\u0989\u098a\u0007G\u0002\u0002\u098a\u098b",
+ "\u0007U\u0002\u0002\u098b\u098c\u0007E\u0002\u0002\u098cT\u0003\u0002",
+ "\u0002\u0002\u098d\u098e\u0007F\u0002\u0002\u098e\u098f\u0007G\u0002",
+ "\u0002\u098f\u0990\u0007U\u0002\u0002\u0990\u0991\u0007E\u0002\u0002",
+ "\u0991\u0992\u0007T\u0002\u0002\u0992\u0993\u0007K\u0002\u0002\u0993",
+ "\u0994\u0007D\u0002\u0002\u0994\u0995\u0007G\u0002\u0002\u0995V\u0003",
+ "\u0002\u0002\u0002\u0996\u0997\u0007F\u0002\u0002\u0997\u0998\u0007",
+ "G\u0002\u0002\u0998\u0999\u0007V\u0002\u0002\u0999\u099a\u0007G\u0002",
+ "\u0002\u099a\u099b\u0007T\u0002\u0002\u099b\u099c\u0007O\u0002\u0002",
+ "\u099c\u099d\u0007K\u0002\u0002\u099d\u099e\u0007P\u0002\u0002\u099e",
+ "\u099f\u0007K\u0002\u0002\u099f\u09a0\u0007U\u0002\u0002\u09a0\u09a1",
+ "\u0007V\u0002\u0002\u09a1\u09a2\u0007K\u0002\u0002\u09a2\u09a3\u0007",
+ "E\u0002\u0002\u09a3X\u0003\u0002\u0002\u0002\u09a4\u09a5\u0007F\u0002",
+ "\u0002\u09a5\u09a6\u0007K\u0002\u0002\u09a6\u09a7\u0007C\u0002\u0002",
+ "\u09a7\u09a8\u0007I\u0002\u0002\u09a8\u09a9\u0007P\u0002\u0002\u09a9",
+ "\u09aa\u0007Q\u0002\u0002\u09aa\u09ab\u0007U\u0002\u0002\u09ab\u09ac",
+ "\u0007V\u0002\u0002\u09ac\u09ad\u0007K\u0002\u0002\u09ad\u09ae\u0007",
+ "E\u0002\u0002\u09ae\u09af\u0007U\u0002\u0002\u09afZ\u0003\u0002\u0002",
+ "\u0002\u09b0\u09b1\u0007F\u0002\u0002\u09b1\u09b2\u0007K\u0002\u0002",
+ "\u09b2\u09b3\u0007U\u0002\u0002\u09b3\u09b4\u0007V\u0002\u0002\u09b4",
+ "\u09b5\u0007K\u0002\u0002\u09b5\u09b6\u0007P\u0002\u0002\u09b6\u09b7",
+ "\u0007E\u0002\u0002\u09b7\u09b8\u0007V\u0002\u0002\u09b8\\\u0003\u0002",
+ "\u0002\u0002\u09b9\u09ba\u0007F\u0002\u0002\u09ba\u09bb\u0007K\u0002",
+ "\u0002\u09bb\u09bc\u0007U\u0002\u0002\u09bc\u09bd\u0007V\u0002\u0002",
+ "\u09bd\u09be\u0007K\u0002\u0002\u09be\u09bf\u0007P\u0002\u0002\u09bf",
+ "\u09c0\u0007E\u0002\u0002\u09c0\u09c1\u0007V\u0002\u0002\u09c1\u09c2",
+ "\u0007T\u0002\u0002\u09c2\u09c3\u0007Q\u0002\u0002\u09c3\u09c4\u0007",
+ "Y\u0002\u0002\u09c4^\u0003\u0002\u0002\u0002\u09c5\u09c6\u0007F\u0002",
+ "\u0002\u09c6\u09c7\u0007T\u0002\u0002\u09c7\u09c8\u0007Q\u0002\u0002",
+ "\u09c8\u09c9\u0007R\u0002\u0002\u09c9`\u0003\u0002\u0002\u0002\u09ca",
+ "\u09cb\u0007G\u0002\u0002\u09cb\u09cc\u0007C\u0002\u0002\u09cc\u09cd",
+ "\u0007E\u0002\u0002\u09cd\u09ce\u0007J\u0002\u0002\u09ceb\u0003\u0002",
+ "\u0002\u0002\u09cf\u09d0\u0007G\u0002\u0002\u09d0\u09d1\u0007N\u0002",
+ "\u0002\u09d1\u09d2\u0007U\u0002\u0002\u09d2\u09d3\u0007G\u0002\u0002",
+ "\u09d3d\u0003\u0002\u0002\u0002\u09d4\u09d5\u0007G\u0002\u0002\u09d5",
+ "\u09d6\u0007N\u0002\u0002\u09d6\u09d7\u0007U\u0002\u0002\u09d7\u09d8",
+ "\u0007G\u0002\u0002\u09d8\u09d9\u0007K\u0002\u0002\u09d9\u09da\u0007",
+ "H\u0002\u0002\u09daf\u0003\u0002\u0002\u0002\u09db\u09dc\u0007G\u0002",
+ "\u0002\u09dc\u09dd\u0007P\u0002\u0002\u09dd\u09de\u0007E\u0002\u0002",
+ "\u09de\u09df\u0007N\u0002\u0002\u09df\u09e0\u0007Q\u0002\u0002\u09e0",
+ "\u09e1\u0007U\u0002\u0002\u09e1\u09e2\u0007G\u0002\u0002\u09e2\u09e3",
+ "\u0007F\u0002\u0002\u09e3h\u0003\u0002\u0002\u0002\u09e4\u09e5\u0007",
+ "G\u0002\u0002\u09e5\u09e6\u0007U\u0002\u0002\u09e6\u09e7\u0007E\u0002",
+ "\u0002\u09e7\u09e8\u0007C\u0002\u0002\u09e8\u09e9\u0007R\u0002\u0002",
+ "\u09e9\u09ea\u0007G\u0002\u0002\u09ea\u09eb\u0007F\u0002\u0002\u09eb",
+ "j\u0003\u0002\u0002\u0002\u09ec\u09ed\u0007G\u0002\u0002\u09ed\u09ee",
+ "\u0007Z\u0002\u0002\u09ee\u09ef\u0007K\u0002\u0002\u09ef\u09f0\u0007",
+ "U\u0002\u0002\u09f0\u09f1\u0007V\u0002\u0002\u09f1\u09f2\u0007U\u0002",
+ "\u0002\u09f2l\u0003\u0002\u0002\u0002\u09f3\u09f4\u0007G\u0002\u0002",
+ "\u09f4\u09f5\u0007Z\u0002\u0002\u09f5\u09f6\u0007K\u0002\u0002\u09f6",
+ "\u09f7\u0007V\u0002\u0002\u09f7n\u0003\u0002\u0002\u0002\u09f8\u09f9",
+ "\u0007G\u0002\u0002\u09f9\u09fa\u0007Z\u0002\u0002\u09fa\u09fb\u0007",
+ "R\u0002\u0002\u09fb\u09fc\u0007N\u0002\u0002\u09fc\u09fd\u0007C\u0002",
+ "\u0002\u09fd\u09fe\u0007K\u0002\u0002\u09fe\u09ff\u0007P\u0002\u0002",
+ "\u09ffp\u0003\u0002\u0002\u0002\u0a00\u0a01\u0007H\u0002\u0002\u0a01",
+ "\u0a02\u0007C\u0002\u0002\u0a02\u0a03\u0007N\u0002\u0002\u0a03\u0a04",
+ "\u0007U\u0002\u0002\u0a04\u0a05\u0007G\u0002\u0002\u0a05r\u0003\u0002",
+ "\u0002\u0002\u0a06\u0a07\u0007H\u0002\u0002\u0a07\u0a08\u0007G\u0002",
+ "\u0002\u0a08\u0a09\u0007V\u0002\u0002\u0a09\u0a0a\u0007E\u0002\u0002",
+ "\u0a0a\u0a0b\u0007J\u0002\u0002\u0a0bt\u0003\u0002\u0002\u0002\u0a0c",
+ "\u0a0d\u0007H\u0002\u0002\u0a0d\u0a0e\u0007Q\u0002\u0002\u0a0e\u0a0f",
+ "\u0007T\u0002\u0002\u0a0fv\u0003\u0002\u0002\u0002\u0a10\u0a11\u0007",
+ "H\u0002\u0002\u0a11\u0a12\u0007Q\u0002\u0002\u0a12\u0a13\u0007T\u0002",
+ "\u0002\u0a13\u0a14\u0007E\u0002\u0002\u0a14\u0a15\u0007G\u0002\u0002",
+ "\u0a15x\u0003\u0002\u0002\u0002\u0a16\u0a17\u0007H\u0002\u0002\u0a17",
+ "\u0a18\u0007Q\u0002\u0002\u0a18\u0a19\u0007T\u0002\u0002\u0a19\u0a1a",
+ "\u0007G\u0002\u0002\u0a1a\u0a1b\u0007K\u0002\u0002\u0a1b\u0a1c\u0007",
+ "I\u0002\u0002\u0a1c\u0a1d\u0007P\u0002\u0002\u0a1dz\u0003\u0002\u0002",
+ "\u0002\u0a1e\u0a1f\u0007H\u0002\u0002\u0a1f\u0a20\u0007T\u0002\u0002",
+ "\u0a20\u0a21\u0007Q\u0002\u0002\u0a21\u0a22\u0007O\u0002\u0002\u0a22",
+ "|\u0003\u0002\u0002\u0002\u0a23\u0a24\u0007H\u0002\u0002\u0a24\u0a25",
+ "\u0007W\u0002\u0002\u0a25\u0a26\u0007N\u0002\u0002\u0a26\u0a27\u0007",
+ "N\u0002\u0002\u0a27\u0a28\u0007V\u0002\u0002\u0a28\u0a29\u0007G\u0002",
+ "\u0002\u0a29\u0a2a\u0007Z\u0002\u0002\u0a2a\u0a2b\u0007V\u0002\u0002",
+ "\u0a2b~\u0003\u0002\u0002\u0002\u0a2c\u0a2d\u0007I\u0002\u0002\u0a2d",
+ "\u0a2e\u0007G\u0002\u0002\u0a2e\u0a2f\u0007P\u0002\u0002\u0a2f\u0a30",
+ "\u0007G\u0002\u0002\u0a30\u0a31\u0007T\u0002\u0002\u0a31\u0a32\u0007",
+ "C\u0002\u0002\u0a32\u0a33\u0007V\u0002\u0002\u0a33\u0a34\u0007G\u0002",
+ "\u0002\u0a34\u0a35\u0007F\u0002\u0002\u0a35\u0080\u0003\u0002\u0002",
+ "\u0002\u0a36\u0a37\u0007I\u0002\u0002\u0a37\u0a38\u0007G\u0002\u0002",
+ "\u0a38\u0a39\u0007V\u0002\u0002\u0a39\u0082\u0003\u0002\u0002\u0002",
+ "\u0a3a\u0a3b\u0007I\u0002\u0002\u0a3b\u0a3c\u0007T\u0002\u0002\u0a3c",
+ "\u0a3d\u0007C\u0002\u0002\u0a3d\u0a3e\u0007P\u0002\u0002\u0a3e\u0a3f",
+ "\u0007V\u0002\u0002\u0a3f\u0084\u0003\u0002\u0002\u0002\u0a40\u0a41",
+ "\u0007I\u0002\u0002\u0a41\u0a42\u0007T\u0002\u0002\u0a42\u0a43\u0007",
+ "Q\u0002\u0002\u0a43\u0a44\u0007W\u0002\u0002\u0a44\u0a45\u0007R\u0002",
+ "\u0002\u0a45\u0086\u0003\u0002\u0002\u0002\u0a46\u0a47\u0007J\u0002",
+ "\u0002\u0a47\u0a48\u0007C\u0002\u0002\u0a48\u0a49\u0007X\u0002\u0002",
+ "\u0a49\u0a4a\u0007K\u0002\u0002\u0a4a\u0a4b\u0007P\u0002\u0002\u0a4b",
+ "\u0a4c\u0007I\u0002\u0002\u0a4c\u0088\u0003\u0002\u0002\u0002\u0a4d",
+ "\u0a4e\u0007J\u0002\u0002\u0a4e\u0a4f\u0007K\u0002\u0002\u0a4f\u0a50",
+ "\u0007I\u0002\u0002\u0a50\u0a51\u0007J\u0002\u0002\u0a51\u0a52\u0007",
+ "a\u0002\u0002\u0a52\u0a53\u0007R\u0002\u0002\u0a53\u0a54\u0007T\u0002",
+ "\u0002\u0a54\u0a55\u0007K\u0002\u0002\u0a55\u0a56\u0007Q\u0002\u0002",
+ "\u0a56\u0a57\u0007T\u0002\u0002\u0a57\u0a58\u0007K\u0002\u0002\u0a58",
+ "\u0a59\u0007V\u0002\u0002\u0a59\u0a5a\u0007[\u0002\u0002\u0a5a\u008a",
+ "\u0003\u0002\u0002\u0002\u0a5b\u0a5c\u0007K\u0002\u0002\u0a5c\u0a5d",
+ "\u0007H\u0002\u0002\u0a5d\u008c\u0003\u0002\u0002\u0002\u0a5e\u0a5f",
+ "\u0007K\u0002\u0002\u0a5f\u0a60\u0007I\u0002\u0002\u0a60\u0a61\u0007",
+ "P\u0002\u0002\u0a61\u0a62\u0007Q\u0002\u0002\u0a62\u0a63\u0007T\u0002",
+ "\u0002\u0a63\u0a64\u0007G\u0002\u0002\u0a64\u008e\u0003\u0002\u0002",
+ "\u0002\u0a65\u0a66\u0007K\u0002\u0002\u0a66\u0a67\u0007P\u0002\u0002",
+ "\u0a67\u0090\u0003\u0002\u0002\u0002\u0a68\u0a69\u0007K\u0002\u0002",
+ "\u0a69\u0a6a\u0007P\u0002\u0002\u0a6a\u0a6b\u0007F\u0002\u0002\u0a6b",
+ "\u0a6c\u0007G\u0002\u0002\u0a6c\u0a6d\u0007Z\u0002\u0002\u0a6d\u0092",
+ "\u0003\u0002\u0002\u0002\u0a6e\u0a6f\u0007K\u0002\u0002\u0a6f\u0a70",
+ "\u0007P\u0002\u0002\u0a70\u0a71\u0007H\u0002\u0002\u0a71\u0a72\u0007",
+ "K\u0002\u0002\u0a72\u0a73\u0007N\u0002\u0002\u0a73\u0a74\u0007G\u0002",
+ "\u0002\u0a74\u0094\u0003\u0002\u0002\u0002\u0a75\u0a76\u0007K\u0002",
+ "\u0002\u0a76\u0a77\u0007P\u0002\u0002\u0a77\u0a78\u0007P\u0002\u0002",
+ "\u0a78\u0a79\u0007G\u0002\u0002\u0a79\u0a7a\u0007T\u0002\u0002\u0a7a",
+ "\u0096\u0003\u0002\u0002\u0002\u0a7b\u0a7c\u0007K\u0002\u0002\u0a7c",
+ "\u0a7d\u0007P\u0002\u0002\u0a7d\u0a7e\u0007Q\u0002\u0002\u0a7e\u0a7f",
+ "\u0007W\u0002\u0002\u0a7f\u0a80\u0007V\u0002\u0002\u0a80\u0098\u0003",
+ "\u0002\u0002\u0002\u0a81\u0a82\u0007K\u0002\u0002\u0a82\u0a83\u0007",
+ "P\u0002\u0002\u0a83\u0a84\u0007U\u0002\u0002\u0a84\u0a85\u0007G\u0002",
+ "\u0002\u0a85\u0a86\u0007T\u0002\u0002\u0a86\u0a87\u0007V\u0002\u0002",
+ "\u0a87\u009a\u0003\u0002\u0002\u0002\u0a88\u0a89\u0007K\u0002\u0002",
+ "\u0a89\u0a8a\u0007P\u0002\u0002\u0a8a\u0a8b\u0007V\u0002\u0002\u0a8b",
+ "\u0a8c\u0007G\u0002\u0002\u0a8c\u0a8d\u0007T\u0002\u0002\u0a8d\u0a8e",
+ "\u0007X\u0002\u0002\u0a8e\u0a8f\u0007C\u0002\u0002\u0a8f\u0a90\u0007",
+ "N\u0002\u0002\u0a90\u009c\u0003\u0002\u0002\u0002\u0a91\u0a92\u0007",
+ "K\u0002\u0002\u0a92\u0a93\u0007P\u0002\u0002\u0a93\u0a94\u0007V\u0002",
+ "\u0002\u0a94\u0a95\u0007Q\u0002\u0002\u0a95\u009e\u0003\u0002\u0002",
+ "\u0002\u0a96\u0a97\u0007K\u0002\u0002\u0a97\u0a98\u0007U\u0002\u0002",
+ "\u0a98\u00a0\u0003\u0002\u0002\u0002\u0a99\u0a9a\u0007K\u0002\u0002",
+ "\u0a9a\u0a9b\u0007V\u0002\u0002\u0a9b\u0a9c\u0007G\u0002\u0002\u0a9c",
+ "\u0a9d\u0007T\u0002\u0002\u0a9d\u0a9e\u0007C\u0002\u0002\u0a9e\u0a9f",
+ "\u0007V\u0002\u0002\u0a9f\u0aa0\u0007G\u0002\u0002\u0aa0\u00a2\u0003",
+ "\u0002\u0002\u0002\u0aa1\u0aa2\u0007L\u0002\u0002\u0aa2\u0aa3\u0007",
+ "Q\u0002\u0002\u0aa3\u0aa4\u0007K\u0002\u0002\u0aa4\u0aa5\u0007P\u0002",
+ "\u0002\u0aa5\u00a4\u0003\u0002\u0002\u0002\u0aa6\u0aa7\u0007M\u0002",
+ "\u0002\u0aa7\u0aa8\u0007G\u0002\u0002\u0aa8\u0aa9\u0007[\u0002\u0002",
+ "\u0aa9\u00a6\u0003\u0002\u0002\u0002\u0aaa\u0aab\u0007M\u0002\u0002",
+ "\u0aab\u0aac\u0007G\u0002\u0002\u0aac\u0aad\u0007[\u0002\u0002\u0aad",
+ "\u0aae\u0007U\u0002\u0002\u0aae\u00a8\u0003\u0002\u0002\u0002\u0aaf",
+ "\u0ab0\u0007M\u0002\u0002\u0ab0\u0ab1\u0007K\u0002\u0002\u0ab1\u0ab2",
+ "\u0007N\u0002\u0002\u0ab2\u0ab3\u0007N\u0002\u0002\u0ab3\u00aa\u0003",
+ "\u0002\u0002\u0002\u0ab4\u0ab5\u0007N\u0002\u0002\u0ab5\u0ab6\u0007",
+ "G\u0002\u0002\u0ab6\u0ab7\u0007C\u0002\u0002\u0ab7\u0ab8\u0007F\u0002",
+ "\u0002\u0ab8\u0ab9\u0007K\u0002\u0002\u0ab9\u0aba\u0007P\u0002\u0002",
+ "\u0aba\u0abb\u0007I\u0002\u0002\u0abb\u00ac\u0003\u0002\u0002\u0002",
+ "\u0abc\u0abd\u0007N\u0002\u0002\u0abd\u0abe\u0007G\u0002\u0002\u0abe",
+ "\u0abf\u0007C\u0002\u0002\u0abf\u0ac0\u0007X\u0002\u0002\u0ac0\u0ac1",
+ "\u0007G\u0002\u0002\u0ac1\u00ae\u0003\u0002\u0002\u0002\u0ac2\u0ac3",
+ "\u0007N\u0002\u0002\u0ac3\u0ac4\u0007G\u0002\u0002\u0ac4\u0ac5\u0007",
+ "H\u0002\u0002\u0ac5\u0ac6\u0007V\u0002\u0002\u0ac6\u00b0\u0003\u0002",
+ "\u0002\u0002\u0ac7\u0ac8\u0007N\u0002\u0002\u0ac8\u0ac9\u0007K\u0002",
+ "\u0002\u0ac9\u0aca\u0007M\u0002\u0002\u0aca\u0acb\u0007G\u0002\u0002",
+ "\u0acb\u00b2\u0003\u0002\u0002\u0002\u0acc\u0acd\u0007N\u0002\u0002",
+ "\u0acd\u0ace\u0007K\u0002\u0002\u0ace\u0acf\u0007O\u0002\u0002\u0acf",
+ "\u0ad0\u0007K\u0002\u0002\u0ad0\u0ad1\u0007V\u0002\u0002\u0ad1\u00b4",
+ "\u0003\u0002\u0002\u0002\u0ad2\u0ad3\u0007N\u0002\u0002\u0ad3\u0ad4",
+ "\u0007K\u0002\u0002\u0ad4\u0ad5\u0007P\u0002\u0002\u0ad5\u0ad6\u0007",
+ "G\u0002\u0002\u0ad6\u0ad7\u0007C\u0002\u0002\u0ad7\u0ad8\u0007T\u0002",
+ "\u0002\u0ad8\u00b6\u0003\u0002\u0002\u0002\u0ad9\u0ada\u0007N\u0002",
+ "\u0002\u0ada\u0adb\u0007K\u0002\u0002\u0adb\u0adc\u0007P\u0002\u0002",
+ "\u0adc\u0add\u0007G\u0002\u0002\u0add\u0ade\u0007U\u0002\u0002\u0ade",
+ "\u00b8\u0003\u0002\u0002\u0002\u0adf\u0ae0\u0007N\u0002\u0002\u0ae0",
+ "\u0ae1\u0007Q\u0002\u0002\u0ae1\u0ae2\u0007C\u0002\u0002\u0ae2\u0ae3",
+ "\u0007F\u0002\u0002\u0ae3\u00ba\u0003\u0002\u0002\u0002\u0ae4\u0ae5",
+ "\u0007N\u0002\u0002\u0ae5\u0ae6\u0007Q\u0002\u0002\u0ae6\u0ae7\u0007",
+ "E\u0002\u0002\u0ae7\u0ae8\u0007M\u0002\u0002\u0ae8\u00bc\u0003\u0002",
+ "\u0002\u0002\u0ae9\u0aea\u0007N\u0002\u0002\u0aea\u0aeb\u0007Q\u0002",
+ "\u0002\u0aeb\u0aec\u0007Q\u0002\u0002\u0aec\u0aed\u0007R\u0002\u0002",
+ "\u0aed\u00be\u0003\u0002\u0002\u0002\u0aee\u0aef\u0007N\u0002\u0002",
+ "\u0aef\u0af0\u0007Q\u0002\u0002\u0af0\u0af1\u0007Y\u0002\u0002\u0af1",
+ "\u0af2\u0007a\u0002\u0002\u0af2\u0af3\u0007R\u0002\u0002\u0af3\u0af4",
+ "\u0007T\u0002\u0002\u0af4\u0af5\u0007K\u0002\u0002\u0af5\u0af6\u0007",
+ "Q\u0002\u0002\u0af6\u0af7\u0007T\u0002\u0002\u0af7\u0af8\u0007K\u0002",
+ "\u0002\u0af8\u0af9\u0007V\u0002\u0002\u0af9\u0afa\u0007[\u0002\u0002",
+ "\u0afa\u00c0\u0003\u0002\u0002\u0002\u0afb\u0afc\u0007O\u0002\u0002",
+ "\u0afc\u0afd\u0007C\u0002\u0002\u0afd\u0afe\u0007U\u0002\u0002\u0afe",
+ "\u0aff\u0007V\u0002\u0002\u0aff\u0b00\u0007G\u0002\u0002\u0b00\u0b01",
+ "\u0007T\u0002\u0002\u0b01\u0b02\u0007a\u0002\u0002\u0b02\u0b03\u0007",
+ "D\u0002\u0002\u0b03\u0b04\u0007K\u0002\u0002\u0b04\u0b05\u0007P\u0002",
+ "\u0002\u0b05\u0b06\u0007F\u0002\u0002\u0b06\u00c2\u0003\u0002\u0002",
+ "\u0002\u0b07\u0b08\u0007O\u0002\u0002\u0b08\u0b09\u0007C\u0002\u0002",
+ "\u0b09\u0b0a\u0007U\u0002\u0002\u0b0a\u0b0b\u0007V\u0002\u0002\u0b0b",
+ "\u0b0c\u0007G\u0002\u0002\u0b0c\u0b0d\u0007T\u0002\u0002\u0b0d\u0b0e",
+ "\u0007a\u0002\u0002\u0b0e\u0b0f\u0007U\u0002\u0002\u0b0f\u0b10\u0007",
+ "U\u0002\u0002\u0b10\u0b11\u0007N\u0002\u0002\u0b11\u0b12\u0007a\u0002",
+ "\u0002\u0b12\u0b13\u0007X\u0002\u0002\u0b13\u0b14\u0007G\u0002\u0002",
+ "\u0b14\u0b15\u0007T\u0002\u0002\u0b15\u0b16\u0007K\u0002\u0002\u0b16",
+ "\u0b17\u0007H\u0002\u0002\u0b17\u0b18\u0007[\u0002\u0002\u0b18\u0b19",
+ "\u0007a\u0002\u0002\u0b19\u0b1a\u0007U\u0002\u0002\u0b1a\u0b1b\u0007",
+ "G\u0002\u0002\u0b1b\u0b1c\u0007T\u0002\u0002\u0b1c\u0b1d\u0007X\u0002",
+ "\u0002\u0b1d\u0b1e\u0007G\u0002\u0002\u0b1e\u0b1f\u0007T\u0002\u0002",
+ "\u0b1f\u0b20\u0007a\u0002\u0002\u0b20\u0b21\u0007E\u0002\u0002\u0b21",
+ "\u0b22\u0007G\u0002\u0002\u0b22\u0b23\u0007T\u0002\u0002\u0b23\u0b24",
+ "\u0007V\u0002\u0002\u0b24\u00c4\u0003\u0002\u0002\u0002\u0b25\u0b26",
+ "\u0007O\u0002\u0002\u0b26\u0b27\u0007C\u0002\u0002\u0b27\u0b28\u0007",
+ "V\u0002\u0002\u0b28\u0b29\u0007E\u0002\u0002\u0b29\u0b2a\u0007J\u0002",
+ "\u0002\u0b2a\u00c6\u0003\u0002\u0002\u0002\u0b2b\u0b2c\u0007O\u0002",
+ "\u0002\u0b2c\u0b2d\u0007C\u0002\u0002\u0b2d\u0b2e\u0007Z\u0002\u0002",
+ "\u0b2e\u0b2f\u0007X\u0002\u0002\u0b2f\u0b30\u0007C\u0002\u0002\u0b30",
+ "\u0b31\u0007N\u0002\u0002\u0b31\u0b32\u0007W\u0002\u0002\u0b32\u0b33",
+ "\u0007G\u0002\u0002\u0b33\u00c8\u0003\u0002\u0002\u0002\u0b34\u0b35",
+ "\u0007O\u0002\u0002\u0b35\u0b36\u0007Q\u0002\u0002\u0b36\u0b37\u0007",
+ "F\u0002\u0002\u0b37\u0b38\u0007K\u0002\u0002\u0b38\u0b39\u0007H\u0002",
+ "\u0002\u0b39\u0b3a\u0007K\u0002\u0002\u0b3a\u0b3b\u0007G\u0002\u0002",
+ "\u0b3b\u0b3c\u0007U\u0002\u0002\u0b3c\u00ca\u0003\u0002\u0002\u0002",
+ "\u0b3d\u0b3e\u0007P\u0002\u0002\u0b3e\u0b3f\u0007C\u0002\u0002\u0b3f",
+ "\u0b40\u0007V\u0002\u0002\u0b40\u0b41\u0007W\u0002\u0002\u0b41\u0b42",
+ "\u0007T\u0002\u0002\u0b42\u0b43\u0007C\u0002\u0002\u0b43\u0b44\u0007",
+ "N\u0002\u0002\u0b44\u00cc\u0003\u0002\u0002\u0002\u0b45\u0b46\u0007",
+ "P\u0002\u0002\u0b46\u0b47\u0007Q\u0002\u0002\u0b47\u0b48\u0007V\u0002",
+ "\u0002\u0b48\u00ce\u0003\u0002\u0002\u0002\u0b49\u0b4a\u0007P\u0002",
+ "\u0002\u0b4a\u0b4b\u0007Q\u0002\u0002\u0b4b\u0b4c\u0007a\u0002\u0002",
+ "\u0b4c\u0b4d\u0007Y\u0002\u0002\u0b4d\u0b4e\u0007T\u0002\u0002\u0b4e",
+ "\u0b4f\u0007K\u0002\u0002\u0b4f\u0b50\u0007V\u0002\u0002\u0b50\u0b51",
+ "\u0007G\u0002\u0002\u0b51\u0b52\u0007a\u0002\u0002\u0b52\u0b53\u0007",
+ "V\u0002\u0002\u0b53\u0b54\u0007Q\u0002\u0002\u0b54\u0b55\u0007a\u0002",
+ "\u0002\u0b55\u0b56\u0007D\u0002\u0002\u0b56\u0b57\u0007K\u0002\u0002",
+ "\u0b57\u0b58\u0007P\u0002\u0002\u0b58\u0b59\u0007N\u0002\u0002\u0b59",
+ "\u0b5a\u0007Q\u0002\u0002\u0b5a\u0b5b\u0007I\u0002\u0002\u0b5b\u00d0",
+ "\u0003\u0002\u0002\u0002\u0b5c\u0b5d\u0007P\u0002\u0002\u0b5d\u0b5e",
+ "\u0007W\u0002\u0002\u0b5e\u0b5f\u0007N\u0002\u0002\u0b5f\u0b60\u0007",
+ "N\u0002\u0002\u0b60\u00d2\u0003\u0002\u0002\u0002\u0b61\u0b62\u0007",
+ "P\u0002\u0002\u0b62\u0b63\u0007W\u0002\u0002\u0b63\u0b64\u0007O\u0002",
+ "\u0002\u0b64\u0b65\u0007D\u0002\u0002\u0b65\u0b66\u0007G\u0002\u0002",
+ "\u0b66\u0b67\u0007T\u0002\u0002\u0b67\u00d4\u0003\u0002\u0002\u0002",
+ "\u0b68\u0b69\u0007Q\u0002\u0002\u0b69\u0b6a\u0007P\u0002\u0002\u0b6a",
+ "\u00d6\u0003\u0002\u0002\u0002\u0b6b\u0b6c\u0007Q\u0002\u0002\u0b6c",
+ "\u0b6d\u0007R\u0002\u0002\u0b6d\u0b6e\u0007V\u0002\u0002\u0b6e\u0b6f",
+ "\u0007K\u0002\u0002\u0b6f\u0b70\u0007O\u0002\u0002\u0b70\u0b71\u0007",
+ "K\u0002\u0002\u0b71\u0b72\u0007\\\u0002\u0002\u0b72\u0b73\u0007G\u0002",
+ "\u0002\u0b73\u00d8\u0003\u0002\u0002\u0002\u0b74\u0b75\u0007Q\u0002",
+ "\u0002\u0b75\u0b76\u0007R\u0002\u0002\u0b76\u0b77\u0007V\u0002\u0002",
+ "\u0b77\u0b78\u0007K\u0002\u0002\u0b78\u0b79\u0007Q\u0002\u0002\u0b79",
+ "\u0b7a\u0007P\u0002\u0002\u0b7a\u00da\u0003\u0002\u0002\u0002\u0b7b",
+ "\u0b7c\u0007Q\u0002\u0002\u0b7c\u0b7d\u0007R\u0002\u0002\u0b7d\u0b7e",
+ "\u0007V\u0002\u0002\u0b7e\u0b7f\u0007K\u0002\u0002\u0b7f\u0b80\u0007",
+ "Q\u0002\u0002\u0b80\u0b81\u0007P\u0002\u0002\u0b81\u0b82\u0007C\u0002",
+ "\u0002\u0b82\u0b83\u0007N\u0002\u0002\u0b83\u0b84\u0007N\u0002\u0002",
+ "\u0b84\u0b85\u0007[\u0002\u0002\u0b85\u00dc\u0003\u0002\u0002\u0002",
+ "\u0b86\u0b87\u0007Q\u0002\u0002\u0b87\u0b88\u0007T\u0002\u0002\u0b88",
+ "\u00de\u0003\u0002\u0002\u0002\u0b89\u0b8a\u0007Q\u0002\u0002\u0b8a",
+ "\u0b8b\u0007T\u0002\u0002\u0b8b\u0b8c\u0007F\u0002\u0002\u0b8c\u0b8d",
+ "\u0007G\u0002\u0002\u0b8d\u0b8e\u0007T\u0002\u0002\u0b8e\u00e0\u0003",
+ "\u0002\u0002\u0002\u0b8f\u0b90\u0007Q\u0002\u0002\u0b90\u0b91\u0007",
+ "W\u0002\u0002\u0b91\u0b92\u0007V\u0002\u0002\u0b92\u00e2\u0003\u0002",
+ "\u0002\u0002\u0b93\u0b94\u0007Q\u0002\u0002\u0b94\u0b95\u0007W\u0002",
+ "\u0002\u0b95\u0b96\u0007V\u0002\u0002\u0b96\u0b97\u0007G\u0002\u0002",
+ "\u0b97\u0b98\u0007T\u0002\u0002\u0b98\u00e4\u0003\u0002\u0002\u0002",
+ "\u0b99\u0b9a\u0007Q\u0002\u0002\u0b9a\u0b9b\u0007W\u0002\u0002\u0b9b",
+ "\u0b9c\u0007V\u0002\u0002\u0b9c\u0b9d\u0007H\u0002\u0002\u0b9d\u0b9e",
+ "\u0007K\u0002\u0002\u0b9e\u0b9f\u0007N\u0002\u0002\u0b9f\u0ba0\u0007",
+ "G\u0002\u0002\u0ba0\u00e6\u0003\u0002\u0002\u0002\u0ba1\u0ba2\u0007",
+ "R\u0002\u0002\u0ba2\u0ba3\u0007C\u0002\u0002\u0ba3\u0ba4\u0007T\u0002",
+ "\u0002\u0ba4\u0ba5\u0007V\u0002\u0002\u0ba5\u0ba6\u0007K\u0002\u0002",
+ "\u0ba6\u0ba7\u0007V\u0002\u0002\u0ba7\u0ba8\u0007K\u0002\u0002\u0ba8",
+ "\u0ba9\u0007Q\u0002\u0002\u0ba9\u0baa\u0007P\u0002\u0002\u0baa\u00e8",
+ "\u0003\u0002\u0002\u0002\u0bab\u0bac\u0007R\u0002\u0002\u0bac\u0bad",
+ "\u0007T\u0002\u0002\u0bad\u0bae\u0007K\u0002\u0002\u0bae\u0baf\u0007",
+ "O\u0002\u0002\u0baf\u0bb0\u0007C\u0002\u0002\u0bb0\u0bb1\u0007T\u0002",
+ "\u0002\u0bb1\u0bb2\u0007[\u0002\u0002\u0bb2\u00ea\u0003\u0002\u0002",
+ "\u0002\u0bb3\u0bb4\u0007R\u0002\u0002\u0bb4\u0bb5\u0007T\u0002\u0002",
+ "\u0bb5\u0bb6\u0007Q\u0002\u0002\u0bb6\u0bb7\u0007E\u0002\u0002\u0bb7",
+ "\u0bb8\u0007G\u0002\u0002\u0bb8\u0bb9\u0007F\u0002\u0002\u0bb9\u0bba",
+ "\u0007W\u0002\u0002\u0bba\u0bbb\u0007T\u0002\u0002\u0bbb\u0bbc\u0007",
+ "G\u0002\u0002\u0bbc\u00ec\u0003\u0002\u0002\u0002\u0bbd\u0bbe\u0007",
+ "R\u0002\u0002\u0bbe\u0bbf\u0007W\u0002\u0002\u0bbf\u0bc0\u0007T\u0002",
+ "\u0002\u0bc0\u0bc1\u0007I\u0002\u0002\u0bc1\u0bc2\u0007G\u0002\u0002",
+ "\u0bc2\u00ee\u0003\u0002\u0002\u0002\u0bc3\u0bc4\u0007T\u0002\u0002",
+ "\u0bc4\u0bc5\u0007C\u0002\u0002\u0bc5\u0bc6\u0007P\u0002\u0002\u0bc6",
+ "\u0bc7\u0007I\u0002\u0002\u0bc7\u0bc8\u0007G\u0002\u0002\u0bc8\u00f0",
+ "\u0003\u0002\u0002\u0002\u0bc9\u0bca\u0007T\u0002\u0002\u0bca\u0bcb",
+ "\u0007G\u0002\u0002\u0bcb\u0bcc\u0007C\u0002\u0002\u0bcc\u0bcd\u0007",
+ "F\u0002\u0002\u0bcd\u00f2\u0003\u0002\u0002\u0002\u0bce\u0bcf\u0007",
+ "T\u0002\u0002\u0bcf\u0bd0\u0007G\u0002\u0002\u0bd0\u0bd1\u0007C\u0002",
+ "\u0002\u0bd1\u0bd2\u0007F\u0002\u0002\u0bd2\u0bd3\u0007U\u0002\u0002",
+ "\u0bd3\u00f4\u0003\u0002\u0002\u0002\u0bd4\u0bd5\u0007T\u0002\u0002",
+ "\u0bd5\u0bd6\u0007G\u0002\u0002\u0bd6\u0bd7\u0007H\u0002\u0002\u0bd7",
+ "\u0bd8\u0007G\u0002\u0002\u0bd8\u0bd9\u0007T\u0002\u0002\u0bd9\u0bda",
+ "\u0007G\u0002\u0002\u0bda\u0bdb\u0007P\u0002\u0002\u0bdb\u0bdc\u0007",
+ "E\u0002\u0002\u0bdc\u0bdd\u0007G\u0002\u0002\u0bdd\u0bde\u0007U\u0002",
+ "\u0002\u0bde\u00f6\u0003\u0002\u0002\u0002\u0bdf\u0be0\u0007T\u0002",
+ "\u0002\u0be0\u0be1\u0007G\u0002\u0002\u0be1\u0be2\u0007I\u0002\u0002",
+ "\u0be2\u0be3\u0007G\u0002\u0002\u0be3\u0be4\u0007Z\u0002\u0002\u0be4",
+ "\u0be5\u0007R\u0002\u0002\u0be5\u00f8\u0003\u0002\u0002\u0002\u0be6",
+ "\u0be7\u0007T\u0002\u0002\u0be7\u0be8\u0007G\u0002\u0002\u0be8\u0be9",
+ "\u0007N\u0002\u0002\u0be9\u0bea\u0007G\u0002\u0002\u0bea\u0beb\u0007",
+ "C\u0002\u0002\u0beb\u0bec\u0007U\u0002\u0002\u0bec\u0bed\u0007G\u0002",
+ "\u0002\u0bed\u00fa\u0003\u0002\u0002\u0002\u0bee\u0bef\u0007T\u0002",
+ "\u0002\u0bef\u0bf0\u0007G\u0002\u0002\u0bf0\u0bf1\u0007P\u0002\u0002",
+ "\u0bf1\u0bf2\u0007C\u0002\u0002\u0bf2\u0bf3\u0007O\u0002\u0002\u0bf3",
+ "\u0bf4\u0007G\u0002\u0002\u0bf4\u00fc\u0003\u0002\u0002\u0002\u0bf5",
+ "\u0bf6\u0007T\u0002\u0002\u0bf6\u0bf7\u0007G\u0002\u0002\u0bf7\u0bf8",
+ "\u0007R\u0002\u0002\u0bf8\u0bf9\u0007G\u0002\u0002\u0bf9\u0bfa\u0007",
+ "C\u0002\u0002\u0bfa\u0bfb\u0007V\u0002\u0002\u0bfb\u00fe\u0003\u0002",
+ "\u0002\u0002\u0bfc\u0bfd\u0007T\u0002\u0002\u0bfd\u0bfe\u0007G\u0002",
+ "\u0002\u0bfe\u0bff\u0007R\u0002\u0002\u0bff\u0c00\u0007N\u0002\u0002",
+ "\u0c00\u0c01\u0007C\u0002\u0002\u0c01\u0c02\u0007E\u0002\u0002\u0c02",
+ "\u0c03\u0007G\u0002\u0002\u0c03\u0100\u0003\u0002\u0002\u0002\u0c04",
+ "\u0c05\u0007T\u0002\u0002\u0c05\u0c06\u0007G\u0002\u0002\u0c06\u0c07",
+ "\u0007S\u0002\u0002\u0c07\u0c08\u0007W\u0002\u0002\u0c08\u0c09\u0007",
+ "K\u0002\u0002\u0c09\u0c0a\u0007T\u0002\u0002\u0c0a\u0c0b\u0007G\u0002",
+ "\u0002\u0c0b\u0102\u0003\u0002\u0002\u0002\u0c0c\u0c0d\u0007T\u0002",
+ "\u0002\u0c0d\u0c0e\u0007G\u0002\u0002\u0c0e\u0c0f\u0007U\u0002\u0002",
+ "\u0c0f\u0c10\u0007K\u0002\u0002\u0c10\u0c11\u0007I\u0002\u0002\u0c11",
+ "\u0c12\u0007P\u0002\u0002\u0c12\u0c13\u0007C\u0002\u0002\u0c13\u0c14",
+ "\u0007N\u0002\u0002\u0c14\u0104\u0003\u0002\u0002\u0002\u0c15\u0c16",
+ "\u0007T\u0002\u0002\u0c16\u0c17\u0007G\u0002\u0002\u0c17\u0c18\u0007",
+ "U\u0002\u0002\u0c18\u0c19\u0007V\u0002\u0002\u0c19\u0c1a\u0007T\u0002",
+ "\u0002\u0c1a\u0c1b\u0007K\u0002\u0002\u0c1b\u0c1c\u0007E\u0002\u0002",
+ "\u0c1c\u0c1d\u0007V\u0002\u0002\u0c1d\u0106\u0003\u0002\u0002\u0002",
+ "\u0c1e\u0c1f\u0007T\u0002\u0002\u0c1f\u0c20\u0007G\u0002\u0002\u0c20",
+ "\u0c21\u0007V\u0002\u0002\u0c21\u0c22\u0007W\u0002\u0002\u0c22\u0c23",
+ "\u0007T\u0002\u0002\u0c23\u0c24\u0007P\u0002\u0002\u0c24\u0108\u0003",
+ "\u0002\u0002\u0002\u0c25\u0c26\u0007T\u0002\u0002\u0c26\u0c27\u0007",
+ "G\u0002\u0002\u0c27\u0c28\u0007X\u0002\u0002\u0c28\u0c29\u0007Q\u0002",
+ "\u0002\u0c29\u0c2a\u0007M\u0002\u0002\u0c2a\u0c2b\u0007G\u0002\u0002",
+ "\u0c2b\u010a\u0003\u0002\u0002\u0002\u0c2c\u0c2d\u0007T\u0002\u0002",
+ "\u0c2d\u0c2e\u0007K\u0002\u0002\u0c2e\u0c2f\u0007I\u0002\u0002\u0c2f",
+ "\u0c30\u0007J\u0002\u0002\u0c30\u0c31\u0007V\u0002\u0002\u0c31\u010c",
+ "\u0003\u0002\u0002\u0002\u0c32\u0c33\u0007T\u0002\u0002\u0c33\u0c34",
+ "\u0007N\u0002\u0002\u0c34\u0c35\u0007K\u0002\u0002\u0c35\u0c36\u0007",
+ "M\u0002\u0002\u0c36\u0c37\u0007G\u0002\u0002\u0c37\u010e\u0003\u0002",
+ "\u0002\u0002\u0c38\u0c39\u0007U\u0002\u0002\u0c39\u0c3a\u0007E\u0002",
+ "\u0002\u0c3a\u0c3b\u0007J\u0002\u0002\u0c3b\u0c3c\u0007G\u0002\u0002",
+ "\u0c3c\u0c3d\u0007O\u0002\u0002\u0c3d\u0c3e\u0007C\u0002\u0002\u0c3e",
+ "\u0110\u0003\u0002\u0002\u0002\u0c3f\u0c40\u0007U\u0002\u0002\u0c40",
+ "\u0c41\u0007E\u0002\u0002\u0c41\u0c42\u0007J\u0002\u0002\u0c42\u0c43",
+ "\u0007G\u0002\u0002\u0c43\u0c44\u0007O\u0002\u0002\u0c44\u0c45\u0007",
+ "C\u0002\u0002\u0c45\u0c46\u0007U\u0002\u0002\u0c46\u0112\u0003\u0002",
+ "\u0002\u0002\u0c47\u0c48\u0007U\u0002\u0002\u0c48\u0c49\u0007G\u0002",
+ "\u0002\u0c49\u0c4a\u0007N\u0002\u0002\u0c4a\u0c4b\u0007G\u0002\u0002",
+ "\u0c4b\u0c4c\u0007E\u0002\u0002\u0c4c\u0c4d\u0007V\u0002\u0002\u0c4d",
+ "\u0114\u0003\u0002\u0002\u0002\u0c4e\u0c4f\u0007U\u0002\u0002\u0c4f",
+ "\u0c50\u0007G\u0002\u0002\u0c50\u0c51\u0007V\u0002\u0002\u0c51\u0116",
+ "\u0003\u0002\u0002\u0002\u0c52\u0c53\u0007U\u0002\u0002\u0c53\u0c54",
+ "\u0007G\u0002\u0002\u0c54\u0c55\u0007R\u0002\u0002\u0c55\u0c56\u0007",
+ "C\u0002\u0002\u0c56\u0c57\u0007T\u0002\u0002\u0c57\u0c58\u0007C\u0002",
+ "\u0002\u0c58\u0c59\u0007V\u0002\u0002\u0c59\u0c5a\u0007Q\u0002\u0002",
+ "\u0c5a\u0c5b\u0007T\u0002\u0002\u0c5b\u0118\u0003\u0002\u0002\u0002",
+ "\u0c5c\u0c5d\u0007U\u0002\u0002\u0c5d\u0c5e\u0007J\u0002\u0002\u0c5e",
+ "\u0c5f\u0007Q\u0002\u0002\u0c5f\u0c60\u0007Y\u0002\u0002\u0c60\u011a",
+ "\u0003\u0002\u0002\u0002\u0c61\u0c62\u0007U\u0002\u0002\u0c62\u0c63",
+ "\u0007K\u0002\u0002\u0c63\u0c64\u0007I\u0002\u0002\u0c64\u0c65\u0007",
+ "P\u0002\u0002\u0c65\u0c66\u0007C\u0002\u0002\u0c66\u0c67\u0007N\u0002",
+ "\u0002\u0c67\u011c\u0003\u0002\u0002\u0002\u0c68\u0c69\u0007U\u0002",
+ "\u0002\u0c69\u0c6a\u0007R\u0002\u0002\u0c6a\u0c6b\u0007C\u0002\u0002",
+ "\u0c6b\u0c6c\u0007V\u0002\u0002\u0c6c\u0c6d\u0007K\u0002\u0002\u0c6d",
+ "\u0c6e\u0007C\u0002\u0002\u0c6e\u0c6f\u0007N\u0002\u0002\u0c6f\u011e",
+ "\u0003\u0002\u0002\u0002\u0c70\u0c71\u0007U\u0002\u0002\u0c71\u0c72",
+ "\u0007S\u0002\u0002\u0c72\u0c73\u0007N\u0002\u0002\u0c73\u0120\u0003",
+ "\u0002\u0002\u0002\u0c74\u0c75\u0007U\u0002\u0002\u0c75\u0c76\u0007",
+ "S\u0002\u0002\u0c76\u0c77\u0007N\u0002\u0002\u0c77\u0c78\u0007G\u0002",
+ "\u0002\u0c78\u0c79\u0007Z\u0002\u0002\u0c79\u0c7a\u0007E\u0002\u0002",
+ "\u0c7a\u0c7b\u0007G\u0002\u0002\u0c7b\u0c7c\u0007R\u0002\u0002\u0c7c",
+ "\u0c7d\u0007V\u0002\u0002\u0c7d\u0c7e\u0007K\u0002\u0002\u0c7e\u0c7f",
+ "\u0007Q\u0002\u0002\u0c7f\u0c80\u0007P\u0002\u0002\u0c80\u0122\u0003",
+ "\u0002\u0002\u0002\u0c81\u0c82\u0007U\u0002\u0002\u0c82\u0c83\u0007",
+ "S\u0002\u0002\u0c83\u0c84\u0007N\u0002\u0002\u0c84\u0c85\u0007U\u0002",
+ "\u0002\u0c85\u0c86\u0007V\u0002\u0002\u0c86\u0c87\u0007C\u0002\u0002",
+ "\u0c87\u0c88\u0007V\u0002\u0002\u0c88\u0c89\u0007G\u0002\u0002\u0c89",
+ "\u0124\u0003\u0002\u0002\u0002\u0c8a\u0c8b\u0007U\u0002\u0002\u0c8b",
+ "\u0c8c\u0007S\u0002\u0002\u0c8c\u0c8d\u0007N\u0002\u0002\u0c8d\u0c8e",
+ "\u0007Y\u0002\u0002\u0c8e\u0c8f\u0007C\u0002\u0002\u0c8f\u0c90\u0007",
+ "T\u0002\u0002\u0c90\u0c91\u0007P\u0002\u0002\u0c91\u0c92\u0007K\u0002",
+ "\u0002\u0c92\u0c93\u0007P\u0002\u0002\u0c93\u0c94\u0007I\u0002\u0002",
+ "\u0c94\u0126\u0003\u0002\u0002\u0002\u0c95\u0c96\u0007U\u0002\u0002",
+ "\u0c96\u0c97\u0007S\u0002\u0002\u0c97\u0c98\u0007N\u0002\u0002\u0c98",
+ "\u0c99\u0007a\u0002\u0002\u0c99\u0c9a\u0007D\u0002\u0002\u0c9a\u0c9b",
+ "\u0007K\u0002\u0002\u0c9b\u0c9c\u0007I\u0002\u0002\u0c9c\u0c9d\u0007",
+ "a\u0002\u0002\u0c9d\u0c9e\u0007T\u0002\u0002\u0c9e\u0c9f\u0007G\u0002",
+ "\u0002\u0c9f\u0ca0\u0007U\u0002\u0002\u0ca0\u0ca1\u0007W\u0002\u0002",
+ "\u0ca1\u0ca2\u0007N\u0002\u0002\u0ca2\u0ca3\u0007V\u0002\u0002\u0ca3",
+ "\u0128\u0003\u0002\u0002\u0002\u0ca4\u0ca5\u0007U\u0002\u0002\u0ca5",
+ "\u0ca6\u0007S\u0002\u0002\u0ca6\u0ca7\u0007N\u0002\u0002\u0ca7\u0ca8",
+ "\u0007a\u0002\u0002\u0ca8\u0ca9\u0007E\u0002\u0002\u0ca9\u0caa\u0007",
+ "C\u0002\u0002\u0caa\u0cab\u0007N\u0002\u0002\u0cab\u0cac\u0007E\u0002",
+ "\u0002\u0cac\u0cad\u0007a\u0002\u0002\u0cad\u0cae\u0007H\u0002\u0002",
+ "\u0cae\u0caf\u0007Q\u0002\u0002\u0caf\u0cb0\u0007W\u0002\u0002\u0cb0",
+ "\u0cb1\u0007P\u0002\u0002\u0cb1\u0cb2\u0007F\u0002\u0002\u0cb2\u0cb3",
+ "\u0007a\u0002\u0002\u0cb3\u0cb4\u0007T\u0002\u0002\u0cb4\u0cb5\u0007",
+ "Q\u0002\u0002\u0cb5\u0cb6\u0007Y\u0002\u0002\u0cb6\u0cb7\u0007U\u0002",
+ "\u0002\u0cb7\u012a\u0003\u0002\u0002\u0002\u0cb8\u0cb9\u0007U\u0002",
+ "\u0002\u0cb9\u0cba\u0007S\u0002\u0002\u0cba\u0cbb\u0007N\u0002\u0002",
+ "\u0cbb\u0cbc\u0007a\u0002\u0002\u0cbc\u0cbd\u0007U\u0002\u0002\u0cbd",
+ "\u0cbe\u0007O\u0002\u0002\u0cbe\u0cbf\u0007C\u0002\u0002\u0cbf\u0cc0",
+ "\u0007N\u0002\u0002\u0cc0\u0cc1\u0007N\u0002\u0002\u0cc1\u0cc2\u0007",
+ "a\u0002\u0002\u0cc2\u0cc3\u0007T\u0002\u0002\u0cc3\u0cc4\u0007G\u0002",
+ "\u0002\u0cc4\u0cc5\u0007U\u0002\u0002\u0cc5\u0cc6\u0007W\u0002\u0002",
+ "\u0cc6\u0cc7\u0007N\u0002\u0002\u0cc7\u0cc8\u0007V\u0002\u0002\u0cc8",
+ "\u012c\u0003\u0002\u0002\u0002\u0cc9\u0cca\u0007U\u0002\u0002\u0cca",
+ "\u0ccb\u0007U\u0002\u0002\u0ccb\u0ccc\u0007N\u0002\u0002\u0ccc\u012e",
+ "\u0003\u0002\u0002\u0002\u0ccd\u0cce\u0007U\u0002\u0002\u0cce\u0ccf",
+ "\u0007V\u0002\u0002\u0ccf\u0cd0\u0007C\u0002\u0002\u0cd0\u0cd1\u0007",
+ "E\u0002\u0002\u0cd1\u0cd2\u0007M\u0002\u0002\u0cd2\u0cd3\u0007G\u0002",
+ "\u0002\u0cd3\u0cd4\u0007F\u0002\u0002\u0cd4\u0130\u0003\u0002\u0002",
+ "\u0002\u0cd5\u0cd6\u0007U\u0002\u0002\u0cd6\u0cd7\u0007V\u0002\u0002",
+ "\u0cd7\u0cd8\u0007C\u0002\u0002\u0cd8\u0cd9\u0007T\u0002\u0002\u0cd9",
+ "\u0cda\u0007V\u0002\u0002\u0cda\u0cdb\u0007K\u0002\u0002\u0cdb\u0cdc",
+ "\u0007P\u0002\u0002\u0cdc\u0cdd\u0007I\u0002\u0002\u0cdd\u0132\u0003",
+ "\u0002\u0002\u0002\u0cde\u0cdf\u0007U\u0002\u0002\u0cdf\u0ce0\u0007",
+ "V\u0002\u0002\u0ce0\u0ce1\u0007T\u0002\u0002\u0ce1\u0ce2\u0007C\u0002",
+ "\u0002\u0ce2\u0ce3\u0007K\u0002\u0002\u0ce3\u0ce4\u0007I\u0002\u0002",
+ "\u0ce4\u0ce5\u0007J\u0002\u0002\u0ce5\u0ce6\u0007V\u0002\u0002\u0ce6",
+ "\u0ce7\u0007a\u0002\u0002\u0ce7\u0ce8\u0007L\u0002\u0002\u0ce8\u0ce9",
+ "\u0007Q\u0002\u0002\u0ce9\u0cea\u0007K\u0002\u0002\u0cea\u0ceb\u0007",
+ "P\u0002\u0002\u0ceb\u0134\u0003\u0002\u0002\u0002\u0cec\u0ced\u0007",
+ "V\u0002\u0002\u0ced\u0cee\u0007C\u0002\u0002\u0cee\u0cef\u0007D\u0002",
+ "\u0002\u0cef\u0cf0\u0007N\u0002\u0002\u0cf0\u0cf1\u0007G\u0002\u0002",
+ "\u0cf1\u0136\u0003\u0002\u0002\u0002\u0cf2\u0cf3\u0007V\u0002\u0002",
+ "\u0cf3\u0cf4\u0007G\u0002\u0002\u0cf4\u0cf5\u0007T\u0002\u0002\u0cf5",
+ "\u0cf6\u0007O\u0002\u0002\u0cf6\u0cf7\u0007K\u0002\u0002\u0cf7\u0cf8",
+ "\u0007P\u0002\u0002\u0cf8\u0cf9\u0007C\u0002\u0002\u0cf9\u0cfa\u0007",
+ "V\u0002\u0002\u0cfa\u0cfb\u0007G\u0002\u0002\u0cfb\u0cfc\u0007F\u0002",
+ "\u0002\u0cfc\u0138\u0003\u0002\u0002\u0002\u0cfd\u0cfe\u0007V\u0002",
+ "\u0002\u0cfe\u0cff\u0007J\u0002\u0002\u0cff\u0d00\u0007G\u0002\u0002",
+ "\u0d00\u0d01\u0007P\u0002\u0002\u0d01\u013a\u0003\u0002\u0002\u0002",
+ "\u0d02\u0d03\u0007V\u0002\u0002\u0d03\u0d04\u0007Q\u0002\u0002\u0d04",
+ "\u013c\u0003\u0002\u0002\u0002\u0d05\u0d06\u0007V\u0002\u0002\u0d06",
+ "\u0d07\u0007T\u0002\u0002\u0d07\u0d08\u0007C\u0002\u0002\u0d08\u0d09",
+ "\u0007K\u0002\u0002\u0d09\u0d0a\u0007N\u0002\u0002\u0d0a\u0d0b\u0007",
+ "K\u0002\u0002\u0d0b\u0d0c\u0007P\u0002\u0002\u0d0c\u0d0d\u0007I\u0002",
+ "\u0002\u0d0d\u013e\u0003\u0002\u0002\u0002\u0d0e\u0d0f\u0007V\u0002",
+ "\u0002\u0d0f\u0d10\u0007T\u0002\u0002\u0d10\u0d11\u0007K\u0002\u0002",
+ "\u0d11\u0d12\u0007I\u0002\u0002\u0d12\u0d13\u0007I\u0002\u0002\u0d13",
+ "\u0d14\u0007G\u0002\u0002\u0d14\u0d15\u0007T\u0002\u0002\u0d15\u0140",
+ "\u0003\u0002\u0002\u0002\u0d16\u0d17\u0007V\u0002\u0002\u0d17\u0d18",
+ "\u0007T\u0002\u0002\u0d18\u0d19\u0007W\u0002\u0002\u0d19\u0d1a\u0007",
+ "G\u0002\u0002\u0d1a\u0142\u0003\u0002\u0002\u0002\u0d1b\u0d1c\u0007",
+ "W\u0002\u0002\u0d1c\u0d1d\u0007P\u0002\u0002\u0d1d\u0d1e\u0007F\u0002",
+ "\u0002\u0d1e\u0d1f\u0007Q\u0002\u0002\u0d1f\u0144\u0003\u0002\u0002",
+ "\u0002\u0d20\u0d21\u0007W\u0002\u0002\u0d21\u0d22\u0007P\u0002\u0002",
+ "\u0d22\u0d23\u0007K\u0002\u0002\u0d23\u0d24\u0007Q\u0002\u0002\u0d24",
+ "\u0d25\u0007P\u0002\u0002\u0d25\u0146\u0003\u0002\u0002\u0002\u0d26",
+ "\u0d27\u0007W\u0002\u0002\u0d27\u0d28\u0007P\u0002\u0002\u0d28\u0d29",
+ "\u0007K\u0002\u0002\u0d29\u0d2a\u0007S\u0002\u0002\u0d2a\u0d2b\u0007",
+ "W\u0002\u0002\u0d2b\u0d2c\u0007G\u0002\u0002\u0d2c\u0148\u0003\u0002",
+ "\u0002\u0002\u0d2d\u0d2e\u0007W\u0002\u0002\u0d2e\u0d2f\u0007P\u0002",
+ "\u0002\u0d2f\u0d30\u0007N\u0002\u0002\u0d30\u0d31\u0007Q\u0002\u0002",
+ "\u0d31\u0d32\u0007E\u0002\u0002\u0d32\u0d33\u0007M\u0002\u0002\u0d33",
+ "\u014a\u0003\u0002\u0002\u0002\u0d34\u0d35\u0007W\u0002\u0002\u0d35",
+ "\u0d36\u0007P\u0002\u0002\u0d36\u0d37\u0007U\u0002\u0002\u0d37\u0d38",
+ "\u0007K\u0002\u0002\u0d38\u0d39\u0007I\u0002\u0002\u0d39\u0d3a\u0007",
+ "P\u0002\u0002\u0d3a\u0d3b\u0007G\u0002\u0002\u0d3b\u0d3c\u0007F\u0002",
+ "\u0002\u0d3c\u014c\u0003\u0002\u0002\u0002\u0d3d\u0d3e\u0007W\u0002",
+ "\u0002\u0d3e\u0d3f\u0007R\u0002\u0002\u0d3f\u0d40\u0007F\u0002\u0002",
+ "\u0d40\u0d41\u0007C\u0002\u0002\u0d41\u0d42\u0007V\u0002\u0002\u0d42",
+ "\u0d43\u0007G\u0002\u0002\u0d43\u014e\u0003\u0002\u0002\u0002\u0d44",
+ "\u0d45\u0007W\u0002\u0002\u0d45\u0d46\u0007U\u0002\u0002\u0d46\u0d47",
+ "\u0007C\u0002\u0002\u0d47\u0d48\u0007I\u0002\u0002\u0d48\u0d49\u0007",
+ "G\u0002\u0002\u0d49\u0150\u0003\u0002\u0002\u0002\u0d4a\u0d4b\u0007",
+ "W\u0002\u0002\u0d4b\u0d4c\u0007U\u0002\u0002\u0d4c\u0d4d\u0007G\u0002",
+ "\u0002\u0d4d\u0152\u0003\u0002\u0002\u0002\u0d4e\u0d4f\u0007W\u0002",
+ "\u0002\u0d4f\u0d50\u0007U\u0002\u0002\u0d50\u0d51\u0007K\u0002\u0002",
+ "\u0d51\u0d52\u0007P\u0002\u0002\u0d52\u0d53\u0007I\u0002\u0002\u0d53",
+ "\u0154\u0003\u0002\u0002\u0002\u0d54\u0d55\u0007X\u0002\u0002\u0d55",
+ "\u0d56\u0007C\u0002\u0002\u0d56\u0d57\u0007N\u0002\u0002\u0d57\u0d58",
+ "\u0007W\u0002\u0002\u0d58\u0d59\u0007G\u0002\u0002\u0d59\u0d5a\u0007",
+ "U\u0002\u0002\u0d5a\u0156\u0003\u0002\u0002\u0002\u0d5b\u0d5c\u0007",
+ "Y\u0002\u0002\u0d5c\u0d5d\u0007J\u0002\u0002\u0d5d\u0d5e\u0007G\u0002",
+ "\u0002\u0d5e\u0d5f\u0007P\u0002\u0002\u0d5f\u0158\u0003\u0002\u0002",
+ "\u0002\u0d60\u0d61\u0007Y\u0002\u0002\u0d61\u0d62\u0007J\u0002\u0002",
+ "\u0d62\u0d63\u0007G\u0002\u0002\u0d63\u0d64\u0007T\u0002\u0002\u0d64",
+ "\u0d65\u0007G\u0002\u0002\u0d65\u015a\u0003\u0002\u0002\u0002\u0d66",
+ "\u0d67\u0007Y\u0002\u0002\u0d67\u0d68\u0007J\u0002\u0002\u0d68\u0d69",
+ "\u0007K\u0002\u0002\u0d69\u0d6a\u0007N\u0002\u0002\u0d6a\u0d6b\u0007",
+ "G\u0002\u0002\u0d6b\u015c\u0003\u0002\u0002\u0002\u0d6c\u0d6d\u0007",
+ "Y\u0002\u0002\u0d6d\u0d6e\u0007K\u0002\u0002\u0d6e\u0d6f\u0007V\u0002",
+ "\u0002\u0d6f\u0d70\u0007J\u0002\u0002\u0d70\u015e\u0003\u0002\u0002",
+ "\u0002\u0d71\u0d72\u0007Y\u0002\u0002\u0d72\u0d73\u0007T\u0002\u0002",
+ "\u0d73\u0d74\u0007K\u0002\u0002\u0d74\u0d75\u0007V\u0002\u0002\u0d75",
+ "\u0d76\u0007G\u0002\u0002\u0d76\u0160\u0003\u0002\u0002\u0002\u0d77",
+ "\u0d78\u0007Z\u0002\u0002\u0d78\u0d79\u0007Q\u0002\u0002\u0d79\u0d7a",
+ "\u0007T\u0002\u0002\u0d7a\u0162\u0003\u0002\u0002\u0002\u0d7b\u0d7c",
+ "\u0007\\\u0002\u0002\u0d7c\u0d7d\u0007G\u0002\u0002\u0d7d\u0d7e\u0007",
+ "T\u0002\u0002\u0d7e\u0d7f\u0007Q\u0002\u0002\u0d7f\u0d80\u0007H\u0002",
+ "\u0002\u0d80\u0d81\u0007K\u0002\u0002\u0d81\u0d82\u0007N\u0002\u0002",
+ "\u0d82\u0d83\u0007N\u0002\u0002\u0d83\u0164\u0003\u0002\u0002\u0002",
+ "\u0d84\u0d85\u0007V\u0002\u0002\u0d85\u0d86\u0007K\u0002\u0002\u0d86",
+ "\u0d87\u0007P\u0002\u0002\u0d87\u0d88\u0007[\u0002\u0002\u0d88\u0d89",
+ "\u0007K\u0002\u0002\u0d89\u0d8a\u0007P\u0002\u0002\u0d8a\u0d8b\u0007",
+ "V\u0002\u0002\u0d8b\u0166\u0003\u0002\u0002\u0002\u0d8c\u0d8d\u0007",
+ "U\u0002\u0002\u0d8d\u0d8e\u0007O\u0002\u0002\u0d8e\u0d8f\u0007C\u0002",
+ "\u0002\u0d8f\u0d90\u0007N\u0002\u0002\u0d90\u0d91\u0007N\u0002\u0002",
+ "\u0d91\u0d92\u0007K\u0002\u0002\u0d92\u0d93\u0007P\u0002\u0002\u0d93",
+ "\u0d94\u0007V\u0002\u0002\u0d94\u0168\u0003\u0002\u0002\u0002\u0d95",
+ "\u0d96\u0007O\u0002\u0002\u0d96\u0d97\u0007G\u0002\u0002\u0d97\u0d98",
+ "\u0007F\u0002\u0002\u0d98\u0d99\u0007K\u0002\u0002\u0d99\u0d9a\u0007",
+ "W\u0002\u0002\u0d9a\u0d9b\u0007O\u0002\u0002\u0d9b\u0d9c\u0007K\u0002",
+ "\u0002\u0d9c\u0d9d\u0007P\u0002\u0002\u0d9d\u0d9e\u0007V\u0002\u0002",
+ "\u0d9e\u016a\u0003\u0002\u0002\u0002\u0d9f\u0da0\u0007O\u0002\u0002",
+ "\u0da0\u0da1\u0007K\u0002\u0002\u0da1\u0da2\u0007F\u0002\u0002\u0da2",
+ "\u0da3\u0007F\u0002\u0002\u0da3\u0da4\u0007N\u0002\u0002\u0da4\u0da5",
+ "\u0007G\u0002\u0002\u0da5\u0da6\u0007K\u0002\u0002\u0da6\u0da7\u0007",
+ "P\u0002\u0002\u0da7\u0da8\u0007V\u0002\u0002\u0da8\u016c\u0003\u0002",
+ "\u0002\u0002\u0da9\u0daa\u0007K\u0002\u0002\u0daa\u0dab\u0007P\u0002",
+ "\u0002\u0dab\u0dac\u0007V\u0002\u0002\u0dac\u016e\u0003\u0002\u0002",
+ "\u0002\u0dad\u0dae\u0007K\u0002\u0002\u0dae\u0daf\u0007P\u0002\u0002",
+ "\u0daf\u0db0\u0007V\u0002\u0002\u0db0\u0db1\u00073\u0002\u0002\u0db1",
+ "\u0170\u0003\u0002\u0002\u0002\u0db2\u0db3\u0007K\u0002\u0002\u0db3",
+ "\u0db4\u0007P\u0002\u0002\u0db4\u0db5\u0007V\u0002\u0002\u0db5\u0db6",
+ "\u00074\u0002\u0002\u0db6\u0172\u0003\u0002\u0002\u0002\u0db7\u0db8",
+ "\u0007K\u0002\u0002\u0db8\u0db9\u0007P\u0002\u0002\u0db9\u0dba\u0007",
+ "V\u0002\u0002\u0dba\u0dbb\u00075\u0002\u0002\u0dbb\u0174\u0003\u0002",
+ "\u0002\u0002\u0dbc\u0dbd\u0007K\u0002\u0002\u0dbd\u0dbe\u0007P\u0002",
+ "\u0002\u0dbe\u0dbf\u0007V\u0002\u0002\u0dbf\u0dc0\u00076\u0002\u0002",
+ "\u0dc0\u0176\u0003\u0002\u0002\u0002\u0dc1\u0dc2\u0007K\u0002\u0002",
+ "\u0dc2\u0dc3\u0007P\u0002\u0002\u0dc3\u0dc4\u0007V\u0002\u0002\u0dc4",
+ "\u0dc5\u0007:\u0002\u0002\u0dc5\u0178\u0003\u0002\u0002\u0002\u0dc6",
+ "\u0dc7\u0007K\u0002\u0002\u0dc7\u0dc8\u0007P\u0002\u0002\u0dc8\u0dc9",
+ "\u0007V\u0002\u0002\u0dc9\u0dca\u0007G\u0002\u0002\u0dca\u0dcb\u0007",
+ "I\u0002\u0002\u0dcb\u0dcc\u0007G\u0002\u0002\u0dcc\u0dcd\u0007T\u0002",
+ "\u0002\u0dcd\u017a\u0003\u0002\u0002\u0002\u0dce\u0dcf\u0007D\u0002",
+ "\u0002\u0dcf\u0dd0\u0007K\u0002\u0002\u0dd0\u0dd1\u0007I\u0002\u0002",
+ "\u0dd1\u0dd2\u0007K\u0002\u0002\u0dd2\u0dd3\u0007P\u0002\u0002\u0dd3",
+ "\u0dd4\u0007V\u0002\u0002\u0dd4\u017c\u0003\u0002\u0002\u0002\u0dd5",
+ "\u0dd6\u0007T\u0002\u0002\u0dd6\u0dd7\u0007G\u0002\u0002\u0dd7\u0dd8",
+ "\u0007C\u0002\u0002\u0dd8\u0dd9\u0007N\u0002\u0002\u0dd9\u017e\u0003",
+ "\u0002\u0002\u0002\u0dda\u0ddb\u0007F\u0002\u0002\u0ddb\u0ddc\u0007",
+ "Q\u0002\u0002\u0ddc\u0ddd\u0007W\u0002\u0002\u0ddd\u0dde\u0007D\u0002",
+ "\u0002\u0dde\u0ddf\u0007N\u0002\u0002\u0ddf\u0de0\u0007G\u0002\u0002",
+ "\u0de0\u0180\u0003\u0002\u0002\u0002\u0de1\u0de2\u0007R\u0002\u0002",
+ "\u0de2\u0de3\u0007T\u0002\u0002\u0de3\u0de4\u0007G\u0002\u0002\u0de4",
+ "\u0de5\u0007E\u0002\u0002\u0de5\u0de6\u0007K\u0002\u0002\u0de6\u0de7",
+ "\u0007U\u0002\u0002\u0de7\u0de8\u0007K\u0002\u0002\u0de8\u0de9\u0007",
+ "Q\u0002\u0002\u0de9\u0dea\u0007P\u0002\u0002\u0dea\u0182\u0003\u0002",
+ "\u0002\u0002\u0deb\u0dec\u0007H\u0002\u0002\u0dec\u0ded\u0007N\u0002",
+ "\u0002\u0ded\u0dee\u0007Q\u0002\u0002\u0dee\u0def\u0007C\u0002\u0002",
+ "\u0def\u0df0\u0007V\u0002\u0002\u0df0\u0184\u0003\u0002\u0002\u0002",
+ "\u0df1\u0df2\u0007H\u0002\u0002\u0df2\u0df3\u0007N\u0002\u0002\u0df3",
+ "\u0df4\u0007Q\u0002\u0002\u0df4\u0df5\u0007C\u0002\u0002\u0df5\u0df6",
+ "\u0007V\u0002\u0002\u0df6\u0df7\u00076\u0002\u0002\u0df7\u0186\u0003",
+ "\u0002\u0002\u0002\u0df8\u0df9\u0007H\u0002\u0002\u0df9\u0dfa\u0007",
+ "N\u0002\u0002\u0dfa\u0dfb\u0007Q\u0002\u0002\u0dfb\u0dfc\u0007C\u0002",
+ "\u0002\u0dfc\u0dfd\u0007V\u0002\u0002\u0dfd\u0dfe\u0007:\u0002\u0002",
+ "\u0dfe\u0188\u0003\u0002\u0002\u0002\u0dff\u0e00\u0007F\u0002\u0002",
+ "\u0e00\u0e01\u0007G\u0002\u0002\u0e01\u0e02\u0007E\u0002\u0002\u0e02",
+ "\u0e03\u0007K\u0002\u0002\u0e03\u0e04\u0007O\u0002\u0002\u0e04\u0e05",
+ "\u0007C\u0002\u0002\u0e05\u0e06\u0007N\u0002\u0002\u0e06\u018a\u0003",
+ "\u0002\u0002\u0002\u0e07\u0e08\u0007F\u0002\u0002\u0e08\u0e09\u0007",
+ "G\u0002\u0002\u0e09\u0e0a\u0007E\u0002\u0002\u0e0a\u018c\u0003\u0002",
+ "\u0002\u0002\u0e0b\u0e0c\u0007P\u0002\u0002\u0e0c\u0e0d\u0007W\u0002",
+ "\u0002\u0e0d\u0e0e\u0007O\u0002\u0002\u0e0e\u0e0f\u0007G\u0002\u0002",
+ "\u0e0f\u0e10\u0007T\u0002\u0002\u0e10\u0e11\u0007K\u0002\u0002\u0e11",
+ "\u0e12\u0007E\u0002\u0002\u0e12\u018e\u0003\u0002\u0002\u0002\u0e13",
+ "\u0e14\u0007F\u0002\u0002\u0e14\u0e15\u0007C\u0002\u0002\u0e15\u0e16",
+ "\u0007V\u0002\u0002\u0e16\u0e17\u0007G\u0002\u0002\u0e17\u0190\u0003",
+ "\u0002\u0002\u0002\u0e18\u0e19\u0007V\u0002\u0002\u0e19\u0e1a\u0007",
+ "K\u0002\u0002\u0e1a\u0e1b\u0007O\u0002\u0002\u0e1b\u0e1c\u0007G\u0002",
+ "\u0002\u0e1c\u0192\u0003\u0002\u0002\u0002\u0e1d\u0e1e\u0007V\u0002",
+ "\u0002\u0e1e\u0e1f\u0007K\u0002\u0002\u0e1f\u0e20\u0007O\u0002\u0002",
+ "\u0e20\u0e21\u0007G\u0002\u0002\u0e21\u0e22\u0007U\u0002\u0002\u0e22",
+ "\u0e23\u0007V\u0002\u0002\u0e23\u0e24\u0007C\u0002\u0002\u0e24\u0e25",
+ "\u0007O\u0002\u0002\u0e25\u0e26\u0007R\u0002\u0002\u0e26\u0194\u0003",
+ "\u0002\u0002\u0002\u0e27\u0e28\u0007F\u0002\u0002\u0e28\u0e29\u0007",
+ "C\u0002\u0002\u0e29\u0e2a\u0007V\u0002\u0002\u0e2a\u0e2b\u0007G\u0002",
+ "\u0002\u0e2b\u0e2c\u0007V\u0002\u0002\u0e2c\u0e2d\u0007K\u0002\u0002",
+ "\u0e2d\u0e2e\u0007O\u0002\u0002\u0e2e\u0e2f\u0007G\u0002\u0002\u0e2f",
+ "\u0196\u0003\u0002\u0002\u0002\u0e30\u0e31\u0007[\u0002\u0002\u0e31",
+ "\u0e32\u0007G\u0002\u0002\u0e32\u0e33\u0007C\u0002\u0002\u0e33\u0e34",
+ "\u0007T\u0002\u0002\u0e34\u0198\u0003\u0002\u0002\u0002\u0e35\u0e36",
+ "\u0007E\u0002\u0002\u0e36\u0e37\u0007J\u0002\u0002\u0e37\u0e38\u0007",
+ "C\u0002\u0002\u0e38\u0e39\u0007T\u0002\u0002\u0e39\u019a\u0003\u0002",
+ "\u0002\u0002\u0e3a\u0e3b\u0007X\u0002\u0002\u0e3b\u0e3c\u0007C\u0002",
+ "\u0002\u0e3c\u0e3d\u0007T\u0002\u0002\u0e3d\u0e3e\u0007E\u0002\u0002",
+ "\u0e3e\u0e3f\u0007J\u0002\u0002\u0e3f\u0e40\u0007C\u0002\u0002\u0e40",
+ "\u0e41\u0007T\u0002\u0002\u0e41\u019c\u0003\u0002\u0002\u0002\u0e42",
+ "\u0e43\u0007P\u0002\u0002\u0e43\u0e44\u0007X\u0002\u0002\u0e44\u0e45",
+ "\u0007C\u0002\u0002\u0e45\u0e46\u0007T\u0002\u0002\u0e46\u0e47\u0007",
+ "E\u0002\u0002\u0e47\u0e48\u0007J\u0002\u0002\u0e48\u0e49\u0007C\u0002",
+ "\u0002\u0e49\u0e4a\u0007T\u0002\u0002\u0e4a\u019e\u0003\u0002\u0002",
+ "\u0002\u0e4b\u0e4c\u0007P\u0002\u0002\u0e4c\u0e4d\u0007C\u0002\u0002",
+ "\u0e4d\u0e4e\u0007V\u0002\u0002\u0e4e\u0e4f\u0007K\u0002\u0002\u0e4f",
+ "\u0e50\u0007Q\u0002\u0002\u0e50\u0e51\u0007P\u0002\u0002\u0e51\u0e52",
+ "\u0007C\u0002\u0002\u0e52\u0e53\u0007N\u0002\u0002\u0e53\u01a0\u0003",
+ "\u0002\u0002\u0002\u0e54\u0e55\u0007D\u0002\u0002\u0e55\u0e56\u0007",
+ "K\u0002\u0002\u0e56\u0e57\u0007P\u0002\u0002\u0e57\u0e58\u0007C\u0002",
+ "\u0002\u0e58\u0e59\u0007T\u0002\u0002\u0e59\u0e5a\u0007[\u0002\u0002",
+ "\u0e5a\u01a2\u0003\u0002\u0002\u0002\u0e5b\u0e5c\u0007X\u0002\u0002",
+ "\u0e5c\u0e5d\u0007C\u0002\u0002\u0e5d\u0e5e\u0007T\u0002\u0002\u0e5e",
+ "\u0e5f\u0007D\u0002\u0002\u0e5f\u0e60\u0007K\u0002\u0002\u0e60\u0e61",
+ "\u0007P\u0002\u0002\u0e61\u0e62\u0007C\u0002\u0002\u0e62\u0e63\u0007",
+ "T\u0002\u0002\u0e63\u0e64\u0007[\u0002\u0002\u0e64\u01a4\u0003\u0002",
+ "\u0002\u0002\u0e65\u0e66\u0007V\u0002\u0002\u0e66\u0e67\u0007K\u0002",
+ "\u0002\u0e67\u0e68\u0007P\u0002\u0002\u0e68\u0e69\u0007[\u0002\u0002",
+ "\u0e69\u0e6a\u0007D\u0002\u0002\u0e6a\u0e6b\u0007N\u0002\u0002\u0e6b",
+ "\u0e6c\u0007Q\u0002\u0002\u0e6c\u0e6d\u0007D\u0002\u0002\u0e6d\u01a6",
+ "\u0003\u0002\u0002\u0002\u0e6e\u0e6f\u0007D\u0002\u0002\u0e6f\u0e70",
+ "\u0007N\u0002\u0002\u0e70\u0e71\u0007Q\u0002\u0002\u0e71\u0e72\u0007",
+ "D\u0002\u0002\u0e72\u01a8\u0003\u0002\u0002\u0002\u0e73\u0e74\u0007",
+ "O\u0002\u0002\u0e74\u0e75\u0007G\u0002\u0002\u0e75\u0e76\u0007F\u0002",
+ "\u0002\u0e76\u0e77\u0007K\u0002\u0002\u0e77\u0e78\u0007W\u0002\u0002",
+ "\u0e78\u0e79\u0007O\u0002\u0002\u0e79\u0e7a\u0007D\u0002\u0002\u0e7a",
+ "\u0e7b\u0007N\u0002\u0002\u0e7b\u0e7c\u0007Q\u0002\u0002\u0e7c\u0e7d",
+ "\u0007D\u0002\u0002\u0e7d\u01aa\u0003\u0002\u0002\u0002\u0e7e\u0e7f",
+ "\u0007N\u0002\u0002\u0e7f\u0e80\u0007Q\u0002\u0002\u0e80\u0e81\u0007",
+ "P\u0002\u0002\u0e81\u0e82\u0007I\u0002\u0002\u0e82\u01ac\u0003\u0002",
+ "\u0002\u0002\u0e83\u0e84\u0007N\u0002\u0002\u0e84\u0e85\u0007Q\u0002",
+ "\u0002\u0e85\u0e86\u0007P\u0002\u0002\u0e86\u0e87\u0007I\u0002\u0002",
+ "\u0e87\u0e88\u0007D\u0002\u0002\u0e88\u0e89\u0007N\u0002\u0002\u0e89",
+ "\u0e8a\u0007Q\u0002\u0002\u0e8a\u0e8b\u0007D\u0002\u0002\u0e8b\u01ae",
+ "\u0003\u0002\u0002\u0002\u0e8c\u0e8d\u0007V\u0002\u0002\u0e8d\u0e8e",
+ "\u0007K\u0002\u0002\u0e8e\u0e8f\u0007P\u0002\u0002\u0e8f\u0e90\u0007",
+ "[\u0002\u0002\u0e90\u0e91\u0007V\u0002\u0002\u0e91\u0e92\u0007G\u0002",
+ "\u0002\u0e92\u0e93\u0007Z\u0002\u0002\u0e93\u0e94\u0007V\u0002\u0002",
+ "\u0e94\u01b0\u0003\u0002\u0002\u0002\u0e95\u0e96\u0007V\u0002\u0002",
+ "\u0e96\u0e97\u0007G\u0002\u0002\u0e97\u0e98\u0007Z\u0002\u0002\u0e98",
+ "\u0e99\u0007V\u0002\u0002\u0e99\u01b2\u0003\u0002\u0002\u0002\u0e9a",
+ "\u0e9b\u0007O\u0002\u0002\u0e9b\u0e9c\u0007G\u0002\u0002\u0e9c\u0e9d",
+ "\u0007F\u0002\u0002\u0e9d\u0e9e\u0007K\u0002\u0002\u0e9e\u0e9f\u0007",
+ "W\u0002\u0002\u0e9f\u0ea0\u0007O\u0002\u0002\u0ea0\u0ea1\u0007V\u0002",
+ "\u0002\u0ea1\u0ea2\u0007G\u0002\u0002\u0ea2\u0ea3\u0007Z\u0002\u0002",
+ "\u0ea3\u0ea4\u0007V\u0002\u0002\u0ea4\u01b4\u0003\u0002\u0002\u0002",
+ "\u0ea5\u0ea6\u0007N\u0002\u0002\u0ea6\u0ea7\u0007Q\u0002\u0002\u0ea7",
+ "\u0ea8\u0007P\u0002\u0002\u0ea8\u0ea9\u0007I\u0002\u0002\u0ea9\u0eaa",
+ "\u0007V\u0002\u0002\u0eaa\u0eab\u0007G\u0002\u0002\u0eab\u0eac\u0007",
+ "Z\u0002\u0002\u0eac\u0ead\u0007V\u0002\u0002\u0ead\u01b6\u0003\u0002",
+ "\u0002\u0002\u0eae\u0eaf\u0007G\u0002\u0002\u0eaf\u0eb0\u0007P\u0002",
+ "\u0002\u0eb0\u0eb1\u0007W\u0002\u0002\u0eb1\u0eb2\u0007O\u0002\u0002",
+ "\u0eb2\u01b8\u0003\u0002\u0002\u0002\u0eb3\u0eb4\u0007X\u0002\u0002",
+ "\u0eb4\u0eb5\u0007C\u0002\u0002\u0eb5\u0eb6\u0007T\u0002\u0002\u0eb6",
+ "\u0eb7\u0007[\u0002\u0002\u0eb7\u0eb8\u0007K\u0002\u0002\u0eb8\u0eb9",
+ "\u0007P\u0002\u0002\u0eb9\u0eba\u0007I\u0002\u0002\u0eba\u01ba\u0003",
+ "\u0002\u0002\u0002\u0ebb\u0ebc\u0007U\u0002\u0002\u0ebc\u0ebd\u0007",
+ "G\u0002\u0002\u0ebd\u0ebe\u0007T\u0002\u0002\u0ebe\u0ebf\u0007K\u0002",
+ "\u0002\u0ebf\u0ec0\u0007C\u0002\u0002\u0ec0\u0ec1\u0007N\u0002\u0002",
+ "\u0ec1\u01bc\u0003\u0002\u0002\u0002\u0ec2\u0ec3\u0007[\u0002\u0002",
+ "\u0ec3\u0ec4\u0007G\u0002\u0002\u0ec4\u0ec5\u0007C\u0002\u0002\u0ec5",
+ "\u0ec6\u0007T\u0002\u0002\u0ec6\u0ec7\u0007a\u0002\u0002\u0ec7\u0ec8",
+ "\u0007O\u0002\u0002\u0ec8\u0ec9\u0007Q\u0002\u0002\u0ec9\u0eca\u0007",
+ "P\u0002\u0002\u0eca\u0ecb\u0007V\u0002\u0002\u0ecb\u0ecc\u0007J\u0002",
+ "\u0002\u0ecc\u01be\u0003\u0002\u0002\u0002\u0ecd\u0ece\u0007F\u0002",
+ "\u0002\u0ece\u0ecf\u0007C\u0002\u0002\u0ecf\u0ed0\u0007[\u0002\u0002",
+ "\u0ed0\u0ed1\u0007a\u0002\u0002\u0ed1\u0ed2\u0007J\u0002\u0002\u0ed2",
+ "\u0ed3\u0007Q\u0002\u0002\u0ed3\u0ed4\u0007W\u0002\u0002\u0ed4\u0ed5",
+ "\u0007T\u0002\u0002\u0ed5\u01c0\u0003\u0002\u0002\u0002\u0ed6\u0ed7",
+ "\u0007F\u0002\u0002\u0ed7\u0ed8\u0007C\u0002\u0002\u0ed8\u0ed9\u0007",
+ "[\u0002\u0002\u0ed9\u0eda\u0007a\u0002\u0002\u0eda\u0edb\u0007O\u0002",
+ "\u0002\u0edb\u0edc\u0007K\u0002\u0002\u0edc\u0edd\u0007P\u0002\u0002",
+ "\u0edd\u0ede\u0007W\u0002\u0002\u0ede\u0edf\u0007V\u0002\u0002\u0edf",
+ "\u0ee0\u0007G\u0002\u0002\u0ee0\u01c2\u0003\u0002\u0002\u0002\u0ee1",
+ "\u0ee2\u0007F\u0002\u0002\u0ee2\u0ee3\u0007C\u0002\u0002\u0ee3\u0ee4",
+ "\u0007[\u0002\u0002\u0ee4\u0ee5\u0007a\u0002\u0002\u0ee5\u0ee6\u0007",
+ "U\u0002\u0002\u0ee6\u0ee7\u0007G\u0002\u0002\u0ee7\u0ee8\u0007E\u0002",
+ "\u0002\u0ee8\u0ee9\u0007Q\u0002\u0002\u0ee9\u0eea\u0007P\u0002\u0002",
+ "\u0eea\u0eeb\u0007F\u0002\u0002\u0eeb\u01c4\u0003\u0002\u0002\u0002",
+ "\u0eec\u0eed\u0007J\u0002\u0002\u0eed\u0eee\u0007Q\u0002\u0002\u0eee",
+ "\u0eef\u0007W\u0002\u0002\u0eef\u0ef0\u0007T\u0002\u0002\u0ef0\u0ef1",
+ "\u0007a\u0002\u0002\u0ef1\u0ef2\u0007O\u0002\u0002\u0ef2\u0ef3\u0007",
+ "K\u0002\u0002\u0ef3\u0ef4\u0007P\u0002\u0002\u0ef4\u0ef5\u0007W\u0002",
+ "\u0002\u0ef5\u0ef6\u0007V\u0002\u0002\u0ef6\u0ef7\u0007G\u0002\u0002",
+ "\u0ef7\u01c6\u0003\u0002\u0002\u0002\u0ef8\u0ef9\u0007J\u0002\u0002",
+ "\u0ef9\u0efa\u0007Q\u0002\u0002\u0efa\u0efb\u0007W\u0002\u0002\u0efb",
+ "\u0efc\u0007T\u0002\u0002\u0efc\u0efd\u0007a\u0002\u0002\u0efd\u0efe",
+ "\u0007U\u0002\u0002\u0efe\u0eff\u0007G\u0002\u0002\u0eff\u0f00\u0007",
+ "E\u0002\u0002\u0f00\u0f01\u0007Q\u0002\u0002\u0f01\u0f02\u0007P\u0002",
+ "\u0002\u0f02\u0f03\u0007F\u0002\u0002\u0f03\u01c8\u0003\u0002\u0002",
+ "\u0002\u0f04\u0f05\u0007O\u0002\u0002\u0f05\u0f06\u0007K\u0002\u0002",
+ "\u0f06\u0f07\u0007P\u0002\u0002\u0f07\u0f08\u0007W\u0002\u0002\u0f08",
+ "\u0f09\u0007V\u0002\u0002\u0f09\u0f0a\u0007G\u0002\u0002\u0f0a\u0f0b",
+ "\u0007a\u0002\u0002\u0f0b\u0f0c\u0007U\u0002\u0002\u0f0c\u0f0d\u0007",
+ "G\u0002\u0002\u0f0d\u0f0e\u0007E\u0002\u0002\u0f0e\u0f0f\u0007Q\u0002",
+ "\u0002\u0f0f\u0f10\u0007P\u0002\u0002\u0f10\u0f11\u0007F\u0002\u0002",
+ "\u0f11\u01ca\u0003\u0002\u0002\u0002\u0f12\u0f13\u0007U\u0002\u0002",
+ "\u0f13\u0f14\u0007G\u0002\u0002\u0f14\u0f15\u0007E\u0002\u0002\u0f15",
+ "\u0f16\u0007Q\u0002\u0002\u0f16\u0f17\u0007P\u0002\u0002\u0f17\u0f18",
+ "\u0007F\u0002\u0002\u0f18\u0f19\u0007a\u0002\u0002\u0f19\u0f1a\u0007",
+ "O\u0002\u0002\u0f1a\u0f1b\u0007K\u0002\u0002\u0f1b\u0f1c\u0007E\u0002",
+ "\u0002\u0f1c\u0f1d\u0007T\u0002\u0002\u0f1d\u0f1e\u0007Q\u0002\u0002",
+ "\u0f1e\u0f1f\u0007U\u0002\u0002\u0f1f\u0f20\u0007G\u0002\u0002\u0f20",
+ "\u0f21\u0007E\u0002\u0002\u0f21\u0f22\u0007Q\u0002\u0002\u0f22\u0f23",
+ "\u0007P\u0002\u0002\u0f23\u0f24\u0007F\u0002\u0002\u0f24\u01cc\u0003",
+ "\u0002\u0002\u0002\u0f25\u0f26\u0007O\u0002\u0002\u0f26\u0f27\u0007",
+ "K\u0002\u0002\u0f27\u0f28\u0007P\u0002\u0002\u0f28\u0f29\u0007W\u0002",
+ "\u0002\u0f29\u0f2a\u0007V\u0002\u0002\u0f2a\u0f2b\u0007G\u0002\u0002",
+ "\u0f2b\u0f2c\u0007a\u0002\u0002\u0f2c\u0f2d\u0007O\u0002\u0002\u0f2d",
+ "\u0f2e\u0007K\u0002\u0002\u0f2e\u0f2f\u0007E\u0002\u0002\u0f2f\u0f30",
+ "\u0007T\u0002\u0002\u0f30\u0f31\u0007Q\u0002\u0002\u0f31\u0f32\u0007",
+ "U\u0002\u0002\u0f32\u0f33\u0007G\u0002\u0002\u0f33\u0f34\u0007E\u0002",
+ "\u0002\u0f34\u0f35\u0007Q\u0002\u0002\u0f35\u0f36\u0007P\u0002\u0002",
+ "\u0f36\u0f37\u0007F\u0002\u0002\u0f37\u01ce\u0003\u0002\u0002\u0002",
+ "\u0f38\u0f39\u0007J\u0002\u0002\u0f39\u0f3a\u0007Q\u0002\u0002\u0f3a",
+ "\u0f3b\u0007W\u0002\u0002\u0f3b\u0f3c\u0007T\u0002\u0002\u0f3c\u0f3d",
+ "\u0007a\u0002\u0002\u0f3d\u0f3e\u0007O\u0002\u0002\u0f3e\u0f3f\u0007",
+ "K\u0002\u0002\u0f3f\u0f40\u0007E\u0002\u0002\u0f40\u0f41\u0007T\u0002",
+ "\u0002\u0f41\u0f42\u0007Q\u0002\u0002\u0f42\u0f43\u0007U\u0002\u0002",
+ "\u0f43\u0f44\u0007G\u0002\u0002\u0f44\u0f45\u0007E\u0002\u0002\u0f45",
+ "\u0f46\u0007Q\u0002\u0002\u0f46\u0f47\u0007P\u0002\u0002\u0f47\u0f48",
+ "\u0007F\u0002\u0002\u0f48\u01d0\u0003\u0002\u0002\u0002\u0f49\u0f4a",
+ "\u0007F\u0002\u0002\u0f4a\u0f4b\u0007C\u0002\u0002\u0f4b\u0f4c\u0007",
+ "[\u0002\u0002\u0f4c\u0f4d\u0007a\u0002\u0002\u0f4d\u0f4e\u0007O\u0002",
+ "\u0002\u0f4e\u0f4f\u0007K\u0002\u0002\u0f4f\u0f50\u0007E\u0002\u0002",
+ "\u0f50\u0f51\u0007T\u0002\u0002\u0f51\u0f52\u0007Q\u0002\u0002\u0f52",
+ "\u0f53\u0007U\u0002\u0002\u0f53\u0f54\u0007G\u0002\u0002\u0f54\u0f55",
+ "\u0007E\u0002\u0002\u0f55\u0f56\u0007Q\u0002\u0002\u0f56\u0f57\u0007",
+ "P\u0002\u0002\u0f57\u0f58\u0007F\u0002\u0002\u0f58\u01d2\u0003\u0002",
+ "\u0002\u0002\u0f59\u0f5a\u0007L\u0002\u0002\u0f5a\u0f5b\u0007U\u0002",
+ "\u0002\u0f5b\u0f5c\u0007Q\u0002\u0002\u0f5c\u0f5d\u0007P\u0002\u0002",
+ "\u0f5d\u0f5e\u0007a\u0002\u0002\u0f5e\u0f5f\u0007X\u0002\u0002\u0f5f",
+ "\u0f60\u0007C\u0002\u0002\u0f60\u0f61\u0007N\u0002\u0002\u0f61\u0f62",
+ "\u0007K\u0002\u0002\u0f62\u0f63\u0007F\u0002\u0002\u0f63\u01d4\u0003",
+ "\u0002\u0002\u0002\u0f64\u0f65\u0007L\u0002\u0002\u0f65\u0f66\u0007",
+ "U\u0002\u0002\u0f66\u0f67\u0007Q\u0002\u0002\u0f67\u0f68\u0007P\u0002",
+ "\u0002\u0f68\u0f69\u0007a\u0002\u0002\u0f69\u0f6a\u0007U\u0002\u0002",
+ "\u0f6a\u0f6b\u0007E\u0002\u0002\u0f6b\u0f6c\u0007J\u0002\u0002\u0f6c",
+ "\u0f6d\u0007G\u0002\u0002\u0f6d\u0f6e\u0007O\u0002\u0002\u0f6e\u0f6f",
+ "\u0007C\u0002\u0002\u0f6f\u0f70\u0007a\u0002\u0002\u0f70\u0f71\u0007",
+ "X\u0002\u0002\u0f71\u0f72\u0007C\u0002\u0002\u0f72\u0f73\u0007N\u0002",
+ "\u0002\u0f73\u0f74\u0007K\u0002\u0002\u0f74\u0f75\u0007F\u0002\u0002",
+ "\u0f75\u01d6\u0003\u0002\u0002\u0002\u0f76\u0f77\u0007C\u0002\u0002",
+ "\u0f77\u0f78\u0007X\u0002\u0002\u0f78\u0f79\u0007I\u0002\u0002\u0f79",
+ "\u01d8\u0003\u0002\u0002\u0002\u0f7a\u0f7b\u0007D\u0002\u0002\u0f7b",
+ "\u0f7c\u0007K\u0002\u0002\u0f7c\u0f7d\u0007V\u0002\u0002\u0f7d\u0f7e",
+ "\u0007a\u0002\u0002\u0f7e\u0f7f\u0007C\u0002\u0002\u0f7f\u0f80\u0007",
+ "P\u0002\u0002\u0f80\u0f81\u0007F\u0002\u0002\u0f81\u01da\u0003\u0002",
+ "\u0002\u0002\u0f82\u0f83\u0007D\u0002\u0002\u0f83\u0f84\u0007K\u0002",
+ "\u0002\u0f84\u0f85\u0007V\u0002\u0002\u0f85\u0f86\u0007a\u0002\u0002",
+ "\u0f86\u0f87\u0007Q\u0002\u0002\u0f87\u0f88\u0007T\u0002\u0002\u0f88",
+ "\u01dc\u0003\u0002\u0002\u0002\u0f89\u0f8a\u0007D\u0002\u0002\u0f8a",
+ "\u0f8b\u0007K\u0002\u0002\u0f8b\u0f8c\u0007V\u0002\u0002\u0f8c\u0f8d",
+ "\u0007a\u0002\u0002\u0f8d\u0f8e\u0007Z\u0002\u0002\u0f8e\u0f8f\u0007",
+ "Q\u0002\u0002\u0f8f\u0f90\u0007T\u0002\u0002\u0f90\u01de\u0003\u0002",
+ "\u0002\u0002\u0f91\u0f92\u0007E\u0002\u0002\u0f92\u0f93\u0007Q\u0002",
+ "\u0002\u0f93\u0f94\u0007W\u0002\u0002\u0f94\u0f95\u0007P\u0002\u0002",
+ "\u0f95\u0f96\u0007V\u0002\u0002\u0f96\u01e0\u0003\u0002\u0002\u0002",
+ "\u0f97\u0f98\u0007I\u0002\u0002\u0f98\u0f99\u0007T\u0002\u0002\u0f99",
+ "\u0f9a\u0007Q\u0002\u0002\u0f9a\u0f9b\u0007W\u0002\u0002\u0f9b\u0f9c",
+ "\u0007R\u0002\u0002\u0f9c\u0f9d\u0007a\u0002\u0002\u0f9d\u0f9e\u0007",
+ "E\u0002\u0002\u0f9e\u0f9f\u0007Q\u0002\u0002\u0f9f\u0fa0\u0007P\u0002",
+ "\u0002\u0fa0\u0fa1\u0007E\u0002\u0002\u0fa1\u0fa2\u0007C\u0002\u0002",
+ "\u0fa2\u0fa3\u0007V\u0002\u0002\u0fa3\u01e2\u0003\u0002\u0002\u0002",
+ "\u0fa4\u0fa5\u0007O\u0002\u0002\u0fa5\u0fa6\u0007C\u0002\u0002\u0fa6",
+ "\u0fa7\u0007Z\u0002\u0002\u0fa7\u01e4\u0003\u0002\u0002\u0002\u0fa8",
+ "\u0fa9\u0007O\u0002\u0002\u0fa9\u0faa\u0007K\u0002\u0002\u0faa\u0fab",
+ "\u0007P\u0002\u0002\u0fab\u01e6\u0003\u0002\u0002\u0002\u0fac\u0fad",
+ "\u0007U\u0002\u0002\u0fad\u0fae\u0007V\u0002\u0002\u0fae\u0faf\u0007",
+ "F\u0002\u0002\u0faf\u01e8\u0003\u0002\u0002\u0002\u0fb0\u0fb1\u0007",
+ "U\u0002\u0002\u0fb1\u0fb2\u0007V\u0002\u0002\u0fb2\u0fb3\u0007F\u0002",
+ "\u0002\u0fb3\u0fb4\u0007F\u0002\u0002\u0fb4\u0fb5\u0007G\u0002\u0002",
+ "\u0fb5\u0fb6\u0007X\u0002\u0002\u0fb6\u01ea\u0003\u0002\u0002\u0002",
+ "\u0fb7\u0fb8\u0007U\u0002\u0002\u0fb8\u0fb9\u0007V\u0002\u0002\u0fb9",
+ "\u0fba\u0007F\u0002\u0002\u0fba\u0fbb\u0007F\u0002\u0002\u0fbb\u0fbc",
+ "\u0007G\u0002\u0002\u0fbc\u0fbd\u0007X\u0002\u0002\u0fbd\u0fbe\u0007",
+ "a\u0002\u0002\u0fbe\u0fbf\u0007R\u0002\u0002\u0fbf\u0fc0\u0007Q\u0002",
+ "\u0002\u0fc0\u0fc1\u0007R\u0002\u0002\u0fc1\u01ec\u0003\u0002\u0002",
+ "\u0002\u0fc2\u0fc3\u0007U\u0002\u0002\u0fc3\u0fc4\u0007V\u0002\u0002",
+ "\u0fc4\u0fc5\u0007F\u0002\u0002\u0fc5\u0fc6\u0007F\u0002\u0002\u0fc6",
+ "\u0fc7\u0007G\u0002\u0002\u0fc7\u0fc8\u0007X\u0002\u0002\u0fc8\u0fc9",
+ "\u0007a\u0002\u0002\u0fc9\u0fca\u0007U\u0002\u0002\u0fca\u0fcb\u0007",
+ "C\u0002\u0002\u0fcb\u0fcc\u0007O\u0002\u0002\u0fcc\u0fcd\u0007R\u0002",
+ "\u0002\u0fcd\u01ee\u0003\u0002\u0002\u0002\u0fce\u0fcf\u0007U\u0002",
+ "\u0002\u0fcf\u0fd0\u0007W\u0002\u0002\u0fd0\u0fd1\u0007O\u0002\u0002",
+ "\u0fd1\u01f0\u0003\u0002\u0002\u0002\u0fd2\u0fd3\u0007X\u0002\u0002",
+ "\u0fd3\u0fd4\u0007C\u0002\u0002\u0fd4\u0fd5\u0007T\u0002\u0002\u0fd5",
+ "\u0fd6\u0007a\u0002\u0002\u0fd6\u0fd7\u0007R\u0002\u0002\u0fd7\u0fd8",
+ "\u0007Q\u0002\u0002\u0fd8\u0fd9\u0007R\u0002\u0002\u0fd9\u01f2\u0003",
+ "\u0002\u0002\u0002\u0fda\u0fdb\u0007X\u0002\u0002\u0fdb\u0fdc\u0007",
+ "C\u0002\u0002\u0fdc\u0fdd\u0007T\u0002\u0002\u0fdd\u0fde\u0007a\u0002",
+ "\u0002\u0fde\u0fdf\u0007U\u0002\u0002\u0fdf\u0fe0\u0007C\u0002\u0002",
+ "\u0fe0\u0fe1\u0007O\u0002\u0002\u0fe1\u0fe2\u0007R\u0002\u0002\u0fe2",
+ "\u01f4\u0003\u0002\u0002\u0002\u0fe3\u0fe4\u0007X\u0002\u0002\u0fe4",
+ "\u0fe5\u0007C\u0002\u0002\u0fe5\u0fe6\u0007T\u0002\u0002\u0fe6\u0fe7",
+ "\u0007K\u0002\u0002\u0fe7\u0fe8\u0007C\u0002\u0002\u0fe8\u0fe9\u0007",
+ "P\u0002\u0002\u0fe9\u0fea\u0007E\u0002\u0002\u0fea\u0feb\u0007G\u0002",
+ "\u0002\u0feb\u01f6\u0003\u0002\u0002\u0002\u0fec\u0fed\u0007E\u0002",
+ "\u0002\u0fed\u0fee\u0007W\u0002\u0002\u0fee\u0fef\u0007T\u0002\u0002",
+ "\u0fef\u0ff0\u0007T\u0002\u0002\u0ff0\u0ff1\u0007G\u0002\u0002\u0ff1",
+ "\u0ff2\u0007P\u0002\u0002\u0ff2\u0ff3\u0007V\u0002\u0002\u0ff3\u0ff4",
+ "\u0007a\u0002\u0002\u0ff4\u0ff5\u0007F\u0002\u0002\u0ff5\u0ff6\u0007",
+ "C\u0002\u0002\u0ff6\u0ff7\u0007V\u0002\u0002\u0ff7\u0ff8\u0007G\u0002",
+ "\u0002\u0ff8\u01f8\u0003\u0002\u0002\u0002\u0ff9\u0ffa\u0007E\u0002",
+ "\u0002\u0ffa\u0ffb\u0007W\u0002\u0002\u0ffb\u0ffc\u0007T\u0002\u0002",
+ "\u0ffc\u0ffd\u0007T\u0002\u0002\u0ffd\u0ffe\u0007G\u0002\u0002\u0ffe",
+ "\u0fff\u0007P\u0002\u0002\u0fff\u1000\u0007V\u0002\u0002\u1000\u1001",
+ "\u0007a\u0002\u0002\u1001\u1002\u0007V\u0002\u0002\u1002\u1003\u0007",
+ "K\u0002\u0002\u1003\u1004\u0007O\u0002\u0002\u1004\u1005\u0007G\u0002",
+ "\u0002\u1005\u01fa\u0003\u0002\u0002\u0002\u1006\u1007\u0007E\u0002",
+ "\u0002\u1007\u1008\u0007W\u0002\u0002\u1008\u1009\u0007T\u0002\u0002",
+ "\u1009\u100a\u0007T\u0002\u0002\u100a\u100b\u0007G\u0002\u0002\u100b",
+ "\u100c\u0007P\u0002\u0002\u100c\u100d\u0007V\u0002\u0002\u100d\u100e",
+ "\u0007a\u0002\u0002\u100e\u100f\u0007V\u0002\u0002\u100f\u1010\u0007",
+ "K\u0002\u0002\u1010\u1011\u0007O\u0002\u0002\u1011\u1012\u0007G\u0002",
+ "\u0002\u1012\u1013\u0007U\u0002\u0002\u1013\u1014\u0007V\u0002\u0002",
+ "\u1014\u1015\u0007C\u0002\u0002\u1015\u1016\u0007O\u0002\u0002\u1016",
+ "\u1017\u0007R\u0002\u0002\u1017\u01fc\u0003\u0002\u0002\u0002\u1018",
+ "\u1019\u0007N\u0002\u0002\u1019\u101a\u0007Q\u0002\u0002\u101a\u101b",
+ "\u0007E\u0002\u0002\u101b\u101c\u0007C\u0002\u0002\u101c\u101d\u0007",
+ "N\u0002\u0002\u101d\u101e\u0007V\u0002\u0002\u101e\u101f\u0007K\u0002",
+ "\u0002\u101f\u1020\u0007O\u0002\u0002\u1020\u1021\u0007G\u0002\u0002",
+ "\u1021\u01fe\u0003\u0002\u0002\u0002\u1022\u1023\u0007E\u0002\u0002",
+ "\u1023\u1024\u0007W\u0002\u0002\u1024\u1025\u0007T\u0002\u0002\u1025",
+ "\u1026\u0007F\u0002\u0002\u1026\u1027\u0007C\u0002\u0002\u1027\u1028",
+ "\u0007V\u0002\u0002\u1028\u1029\u0007G\u0002\u0002\u1029\u0200\u0003",
+ "\u0002\u0002\u0002\u102a\u102b\u0007E\u0002\u0002\u102b\u102c\u0007",
+ "W\u0002\u0002\u102c\u102d\u0007T\u0002\u0002\u102d\u102e\u0007V\u0002",
+ "\u0002\u102e\u102f\u0007K\u0002\u0002\u102f\u1030\u0007O\u0002\u0002",
+ "\u1030\u1031\u0007G\u0002\u0002\u1031\u0202\u0003\u0002\u0002\u0002",
+ "\u1032\u1033\u0007F\u0002\u0002\u1033\u1034\u0007C\u0002\u0002\u1034",
+ "\u1035\u0007V\u0002\u0002\u1035\u1036\u0007G\u0002\u0002\u1036\u1037",
+ "\u0007a\u0002\u0002\u1037\u1038\u0007C\u0002\u0002\u1038\u1039\u0007",
+ "F\u0002\u0002\u1039\u103a\u0007F\u0002\u0002\u103a\u0204\u0003\u0002",
+ "\u0002\u0002\u103b\u103c\u0007F\u0002\u0002\u103c\u103d\u0007C\u0002",
+ "\u0002\u103d\u103e\u0007V\u0002\u0002\u103e\u103f\u0007G\u0002\u0002",
+ "\u103f\u1040\u0007a\u0002\u0002\u1040\u1041\u0007U\u0002\u0002\u1041",
+ "\u1042\u0007W\u0002\u0002\u1042\u1043\u0007D\u0002\u0002\u1043\u0206",
+ "\u0003\u0002\u0002\u0002\u1044\u1045\u0007G\u0002\u0002\u1045\u1046",
+ "\u0007Z\u0002\u0002\u1046\u1047\u0007V\u0002\u0002\u1047\u1048\u0007",
+ "T\u0002\u0002\u1048\u1049\u0007C\u0002\u0002\u1049\u104a\u0007E\u0002",
+ "\u0002\u104a\u104b\u0007V\u0002\u0002\u104b\u0208\u0003\u0002\u0002",
+ "\u0002\u104c\u104d\u0007N\u0002\u0002\u104d\u104e\u0007Q\u0002\u0002",
+ "\u104e\u104f\u0007E\u0002\u0002\u104f\u1050\u0007C\u0002\u0002\u1050",
+ "\u1051\u0007N\u0002\u0002\u1051\u1052\u0007V\u0002\u0002\u1052\u1053",
+ "\u0007K\u0002\u0002\u1053\u1054\u0007O\u0002\u0002\u1054\u1055\u0007",
+ "G\u0002\u0002\u1055\u1056\u0007U\u0002\u0002\u1056\u1057\u0007V\u0002",
+ "\u0002\u1057\u1058\u0007C\u0002\u0002\u1058\u1059\u0007O\u0002\u0002",
+ "\u1059\u105a\u0007R\u0002\u0002\u105a\u020a\u0003\u0002\u0002\u0002",
+ "\u105b\u105c\u0007P\u0002\u0002\u105c\u105d\u0007Q\u0002\u0002\u105d",
+ "\u105e\u0007Y\u0002\u0002\u105e\u020c\u0003\u0002\u0002\u0002\u105f",
+ "\u1060\u0007R\u0002\u0002\u1060\u1061\u0007Q\u0002\u0002\u1061\u1062",
+ "\u0007U\u0002\u0002\u1062\u1063\u0007K\u0002\u0002\u1063\u1064\u0007",
+ "V\u0002\u0002\u1064\u1065\u0007K\u0002\u0002\u1065\u1066\u0007Q\u0002",
+ "\u0002\u1066\u1067\u0007P\u0002\u0002\u1067\u020e\u0003\u0002\u0002",
+ "\u0002\u1068\u1069\u0007U\u0002\u0002\u1069\u106a\u0007W\u0002\u0002",
+ "\u106a\u106b\u0007D\u0002\u0002\u106b\u106c\u0007U\u0002\u0002\u106c",
+ "\u106d\u0007V\u0002\u0002\u106d\u106e\u0007T\u0002\u0002\u106e\u0210",
+ "\u0003\u0002\u0002\u0002\u106f\u1070\u0007U\u0002\u0002\u1070\u1071",
+ "\u0007W\u0002\u0002\u1071\u1072\u0007D\u0002\u0002\u1072\u1073\u0007",
+ "U\u0002\u0002\u1073\u1074\u0007V\u0002\u0002\u1074\u1075\u0007T\u0002",
+ "\u0002\u1075\u1076\u0007K\u0002\u0002\u1076\u1077\u0007P\u0002\u0002",
+ "\u1077\u1078\u0007I\u0002\u0002\u1078\u0212\u0003\u0002\u0002\u0002",
+ "\u1079\u107a\u0007U\u0002\u0002\u107a\u107b\u0007[\u0002\u0002\u107b",
+ "\u107c\u0007U\u0002\u0002\u107c\u107d\u0007F\u0002\u0002\u107d\u107e",
+ "\u0007C\u0002\u0002\u107e\u107f\u0007V\u0002\u0002\u107f\u1080\u0007",
+ "G\u0002\u0002\u1080\u0214\u0003\u0002\u0002\u0002\u1081\u1082\u0007",
+ "V\u0002\u0002\u1082\u1083\u0007T\u0002\u0002\u1083\u1084\u0007K\u0002",
+ "\u0002\u1084\u1085\u0007O\u0002\u0002\u1085\u0216\u0003\u0002\u0002",
+ "\u0002\u1086\u1087\u0007W\u0002\u0002\u1087\u1088\u0007V\u0002\u0002",
+ "\u1088\u1089\u0007E\u0002\u0002\u1089\u108a\u0007a\u0002\u0002\u108a",
+ "\u108b\u0007F\u0002\u0002\u108b\u108c\u0007C\u0002\u0002\u108c\u108d",
+ "\u0007V\u0002\u0002\u108d\u108e\u0007G\u0002\u0002\u108e\u0218\u0003",
+ "\u0002\u0002\u0002\u108f\u1090\u0007W\u0002\u0002\u1090\u1091\u0007",
+ "V\u0002\u0002\u1091\u1092\u0007E\u0002\u0002\u1092\u1093\u0007a\u0002",
+ "\u0002\u1093\u1094\u0007V\u0002\u0002\u1094\u1095\u0007K\u0002\u0002",
+ "\u1095\u1096\u0007O\u0002\u0002\u1096\u1097\u0007G\u0002\u0002\u1097",
+ "\u021a\u0003\u0002\u0002\u0002\u1098\u1099\u0007W\u0002\u0002\u1099",
+ "\u109a\u0007V\u0002\u0002\u109a\u109b\u0007E\u0002\u0002\u109b\u109c",
+ "\u0007a\u0002\u0002\u109c\u109d\u0007V\u0002\u0002\u109d\u109e\u0007",
+ "K\u0002\u0002\u109e\u109f\u0007O\u0002\u0002\u109f\u10a0\u0007G\u0002",
+ "\u0002\u10a0\u10a1\u0007U\u0002\u0002\u10a1\u10a2\u0007V\u0002\u0002",
+ "\u10a2\u10a3\u0007C\u0002\u0002\u10a3\u10a4\u0007O\u0002\u0002\u10a4",
+ "\u10a5\u0007R\u0002\u0002\u10a5\u021c\u0003\u0002\u0002\u0002\u10a6",
+ "\u10a7\u0007C\u0002\u0002\u10a7\u10a8\u0007E\u0002\u0002\u10a8\u10a9",
+ "\u0007E\u0002\u0002\u10a9\u10aa\u0007Q\u0002\u0002\u10aa\u10ab\u0007",
+ "W\u0002\u0002\u10ab\u10ac\u0007P\u0002\u0002\u10ac\u10ad\u0007V\u0002",
+ "\u0002\u10ad\u021e\u0003\u0002\u0002\u0002\u10ae\u10af\u0007C\u0002",
+ "\u0002\u10af\u10b0\u0007E\u0002\u0002\u10b0\u10b1\u0007V\u0002\u0002",
+ "\u10b1\u10b2\u0007K\u0002\u0002\u10b2\u10b3\u0007Q\u0002\u0002\u10b3",
+ "\u10b4\u0007P\u0002\u0002\u10b4\u0220\u0003\u0002\u0002\u0002\u10b5",
+ "\u10b6\u0007C\u0002\u0002\u10b6\u10b7\u0007H\u0002\u0002\u10b7\u10b8",
+ "\u0007V\u0002\u0002\u10b8\u10b9\u0007G\u0002\u0002\u10b9\u10ba\u0007",
+ "T\u0002\u0002\u10ba\u0222\u0003\u0002\u0002\u0002\u10bb\u10bc\u0007",
+ "C\u0002\u0002\u10bc\u10bd\u0007I\u0002\u0002\u10bd\u10be\u0007I\u0002",
+ "\u0002\u10be\u10bf\u0007T\u0002\u0002\u10bf\u10c0\u0007G\u0002\u0002",
+ "\u10c0\u10c1\u0007I\u0002\u0002\u10c1\u10c2\u0007C\u0002\u0002\u10c2",
+ "\u10c3\u0007V\u0002\u0002\u10c3\u10c4\u0007G\u0002\u0002\u10c4\u0224",
+ "\u0003\u0002\u0002\u0002\u10c5\u10c6\u0007C\u0002\u0002\u10c6\u10c7",
+ "\u0007N\u0002\u0002\u10c7\u10c8\u0007I\u0002\u0002\u10c8\u10c9\u0007",
+ "Q\u0002\u0002\u10c9\u10ca\u0007T\u0002\u0002\u10ca\u10cb\u0007K\u0002",
+ "\u0002\u10cb\u10cc\u0007V\u0002\u0002\u10cc\u10cd\u0007J\u0002\u0002",
+ "\u10cd\u10ce\u0007O\u0002\u0002\u10ce\u0226\u0003\u0002\u0002\u0002",
+ "\u10cf\u10d0\u0007C\u0002\u0002\u10d0\u10d1\u0007P\u0002\u0002\u10d1",
+ "\u10d2\u0007[\u0002\u0002\u10d2\u0228\u0003\u0002\u0002\u0002\u10d3",
+ "\u10d4\u0007C\u0002\u0002\u10d4\u10d5\u0007V\u0002\u0002\u10d5\u022a",
+ "\u0003\u0002\u0002\u0002\u10d6\u10d7\u0007C\u0002\u0002\u10d7\u10d8",
+ "\u0007W\u0002\u0002\u10d8\u10d9\u0007V\u0002\u0002\u10d9\u10da\u0007",
+ "J\u0002\u0002\u10da\u10db\u0007Q\u0002\u0002\u10db\u10dc\u0007T\u0002",
+ "\u0002\u10dc\u10dd\u0007U\u0002\u0002\u10dd\u022c\u0003\u0002\u0002",
+ "\u0002\u10de\u10df\u0007C\u0002\u0002\u10df\u10e0\u0007W\u0002\u0002",
+ "\u10e0\u10e1\u0007V\u0002\u0002\u10e1\u10e2\u0007Q\u0002\u0002\u10e2",
+ "\u10e3\u0007E\u0002\u0002\u10e3\u10e4\u0007Q\u0002\u0002\u10e4\u10e5",
+ "\u0007O\u0002\u0002\u10e5\u10e6\u0007O\u0002\u0002\u10e6\u10e7\u0007",
+ "K\u0002\u0002\u10e7\u10e8\u0007V\u0002\u0002\u10e8\u022e\u0003\u0002",
+ "\u0002\u0002\u10e9\u10ea\u0007C\u0002\u0002\u10ea\u10eb\u0007W\u0002",
+ "\u0002\u10eb\u10ec\u0007V\u0002\u0002\u10ec\u10ed\u0007Q\u0002\u0002",
+ "\u10ed\u10ee\u0007G\u0002\u0002\u10ee\u10ef\u0007Z\u0002\u0002\u10ef",
+ "\u10f0\u0007V\u0002\u0002\u10f0\u10f1\u0007G\u0002\u0002\u10f1\u10f2",
+ "\u0007P\u0002\u0002\u10f2\u10f3\u0007F\u0002\u0002\u10f3\u10f4\u0007",
+ "a\u0002\u0002\u10f4\u10f5\u0007U\u0002\u0002\u10f5\u10f6\u0007K\u0002",
+ "\u0002\u10f6\u10f7\u0007\\\u0002\u0002\u10f7\u10f8\u0007G\u0002\u0002",
+ "\u10f8\u0230\u0003\u0002\u0002\u0002\u10f9\u10fa\u0007C\u0002\u0002",
+ "\u10fa\u10fb\u0007W\u0002\u0002\u10fb\u10fc\u0007V\u0002\u0002\u10fc",
+ "\u10fd\u0007Q\u0002\u0002\u10fd\u10fe\u0007a\u0002\u0002\u10fe\u10ff",
+ "\u0007K\u0002\u0002\u10ff\u1100\u0007P\u0002\u0002\u1100\u1101\u0007",
+ "E\u0002\u0002\u1101\u1102\u0007T\u0002\u0002\u1102\u1103\u0007G\u0002",
+ "\u0002\u1103\u1104\u0007O\u0002\u0002\u1104\u1105\u0007G\u0002\u0002",
+ "\u1105\u1106\u0007P\u0002\u0002\u1106\u1107\u0007V\u0002\u0002\u1107",
+ "\u0232\u0003\u0002\u0002\u0002\u1108\u1109\u0007C\u0002\u0002\u1109",
+ "\u110a\u0007X\u0002\u0002\u110a\u110b\u0007I\u0002\u0002\u110b\u110c",
+ "\u0007a\u0002\u0002\u110c\u110d\u0007T\u0002\u0002\u110d\u110e\u0007",
+ "Q\u0002\u0002\u110e\u110f\u0007Y\u0002\u0002\u110f\u1110\u0007a\u0002",
+ "\u0002\u1110\u1111\u0007N\u0002\u0002\u1111\u1112\u0007G\u0002\u0002",
+ "\u1112\u1113\u0007P\u0002\u0002\u1113\u1114\u0007I\u0002\u0002\u1114",
+ "\u1115\u0007V\u0002\u0002\u1115\u1116\u0007J\u0002\u0002\u1116\u0234",
+ "\u0003\u0002\u0002\u0002\u1117\u1118\u0007D\u0002\u0002\u1118\u1119",
+ "\u0007G\u0002\u0002\u1119\u111a\u0007I\u0002\u0002\u111a\u111b\u0007",
+ "K\u0002\u0002\u111b\u111c\u0007P\u0002\u0002\u111c\u0236\u0003\u0002",
+ "\u0002\u0002\u111d\u111e\u0007D\u0002\u0002\u111e\u111f\u0007K\u0002",
+ "\u0002\u111f\u1120\u0007P\u0002\u0002\u1120\u1121\u0007N\u0002\u0002",
+ "\u1121\u1122\u0007Q\u0002\u0002\u1122\u1123\u0007I\u0002\u0002\u1123",
+ "\u0238\u0003\u0002\u0002\u0002\u1124\u1125\u0007D\u0002\u0002\u1125",
+ "\u1126\u0007K\u0002\u0002\u1126\u1127\u0007V\u0002\u0002\u1127\u023a",
+ "\u0003\u0002\u0002\u0002\u1128\u1129\u0007D\u0002\u0002\u1129\u112a",
+ "\u0007N\u0002\u0002\u112a\u112b\u0007Q\u0002\u0002\u112b\u112c\u0007",
+ "E\u0002\u0002\u112c\u112d\u0007M\u0002\u0002\u112d\u023c\u0003\u0002",
+ "\u0002\u0002\u112e\u112f\u0007D\u0002\u0002\u112f\u1130\u0007Q\u0002",
+ "\u0002\u1130\u1131\u0007Q\u0002\u0002\u1131\u1132\u0007N\u0002\u0002",
+ "\u1132\u023e\u0003\u0002\u0002\u0002\u1133\u1134\u0007D\u0002\u0002",
+ "\u1134\u1135\u0007Q\u0002\u0002\u1135\u1136\u0007Q\u0002\u0002\u1136",
+ "\u1137\u0007N\u0002\u0002\u1137\u1138\u0007G\u0002\u0002\u1138\u1139",
+ "\u0007C\u0002\u0002\u1139\u113a\u0007P\u0002\u0002\u113a\u0240\u0003",
+ "\u0002\u0002\u0002\u113b\u113c\u0007D\u0002\u0002\u113c\u113d\u0007",
+ "V\u0002\u0002\u113d\u113e\u0007T\u0002\u0002\u113e\u113f\u0007G\u0002",
+ "\u0002\u113f\u1140\u0007G\u0002\u0002\u1140\u0242\u0003\u0002\u0002",
+ "\u0002\u1141\u1142\u0007E\u0002\u0002\u1142\u1143\u0007C\u0002\u0002",
+ "\u1143\u1144\u0007E\u0002\u0002\u1144\u1145\u0007J\u0002\u0002\u1145",
+ "\u1146\u0007G\u0002\u0002\u1146\u0244\u0003\u0002\u0002\u0002\u1147",
+ "\u1148\u0007E\u0002\u0002\u1148\u1149\u0007C\u0002\u0002\u1149\u114a",
+ "\u0007U\u0002\u0002\u114a\u114b\u0007E\u0002\u0002\u114b\u114c\u0007",
+ "C\u0002\u0002\u114c\u114d\u0007F\u0002\u0002\u114d\u114e\u0007G\u0002",
+ "\u0002\u114e\u114f\u0007F\u0002\u0002\u114f\u0246\u0003\u0002\u0002",
+ "\u0002\u1150\u1151\u0007E\u0002\u0002\u1151\u1152\u0007J\u0002\u0002",
+ "\u1152\u1153\u0007C\u0002\u0002\u1153\u1154\u0007K\u0002\u0002\u1154",
+ "\u1155\u0007P\u0002\u0002\u1155\u0248\u0003\u0002\u0002\u0002\u1156",
+ "\u1157\u0007E\u0002\u0002\u1157\u1158\u0007J\u0002\u0002\u1158\u1159",
+ "\u0007C\u0002\u0002\u1159\u115a\u0007P\u0002\u0002\u115a\u115b\u0007",
+ "I\u0002\u0002\u115b\u115c\u0007G\u0002\u0002\u115c\u115d\u0007F\u0002",
+ "\u0002\u115d\u024a\u0003\u0002\u0002\u0002\u115e\u115f\u0007E\u0002",
+ "\u0002\u115f\u1160\u0007J\u0002\u0002\u1160\u1161\u0007C\u0002\u0002",
+ "\u1161\u1162\u0007P\u0002\u0002\u1162\u1163\u0007P\u0002\u0002\u1163",
+ "\u1164\u0007G\u0002\u0002\u1164\u1165\u0007N\u0002\u0002\u1165\u024c",
+ "\u0003\u0002\u0002\u0002\u1166\u1167\u0007E\u0002\u0002\u1167\u1168",
+ "\u0007J\u0002\u0002\u1168\u1169\u0007G\u0002\u0002\u1169\u116a\u0007",
+ "E\u0002\u0002\u116a\u116b\u0007M\u0002\u0002\u116b\u116c\u0007U\u0002",
+ "\u0002\u116c\u116d\u0007W\u0002\u0002\u116d\u116e\u0007O\u0002\u0002",
+ "\u116e\u024e\u0003\u0002\u0002\u0002\u116f\u1170\u0007R\u0002\u0002",
+ "\u1170\u1171\u0007C\u0002\u0002\u1171\u1172\u0007I\u0002\u0002\u1172",
+ "\u1173\u0007G\u0002\u0002\u1173\u1174\u0007a\u0002\u0002\u1174\u1175",
+ "\u0007E\u0002\u0002\u1175\u1176\u0007J\u0002\u0002\u1176\u1177\u0007",
+ "G\u0002\u0002\u1177\u1178\u0007E\u0002\u0002\u1178\u1179\u0007M\u0002",
+ "\u0002\u1179\u117a\u0007U\u0002\u0002\u117a\u117b\u0007W\u0002\u0002",
+ "\u117b\u117c\u0007O\u0002\u0002\u117c\u0250\u0003\u0002\u0002\u0002",
+ "\u117d\u117e\u0007E\u0002\u0002\u117e\u117f\u0007K\u0002\u0002\u117f",
+ "\u1180\u0007R\u0002\u0002\u1180\u1181\u0007J\u0002\u0002\u1181\u1182",
+ "\u0007G\u0002\u0002\u1182\u1183\u0007T\u0002\u0002\u1183\u0252\u0003",
+ "\u0002\u0002\u0002\u1184\u1185\u0007E\u0002\u0002\u1185\u1186\u0007",
+ "N\u0002\u0002\u1186\u1187\u0007C\u0002\u0002\u1187\u1188\u0007U\u0002",
+ "\u0002\u1188\u1189\u0007U\u0002\u0002\u1189\u118a\u0007a\u0002\u0002",
+ "\u118a\u118b\u0007Q\u0002\u0002\u118b\u118c\u0007T\u0002\u0002\u118c",
+ "\u118d\u0007K\u0002\u0002\u118d\u118e\u0007I\u0002\u0002\u118e\u118f",
+ "\u0007K\u0002\u0002\u118f\u1190\u0007P\u0002\u0002\u1190\u0254\u0003",
+ "\u0002\u0002\u0002\u1191\u1192\u0007E\u0002\u0002\u1192\u1193\u0007",
+ "N\u0002\u0002\u1193\u1194\u0007K\u0002\u0002\u1194\u1195\u0007G\u0002",
+ "\u0002\u1195\u1196\u0007P\u0002\u0002\u1196\u1197\u0007V\u0002\u0002",
+ "\u1197\u0256\u0003\u0002\u0002\u0002\u1198\u1199\u0007E\u0002\u0002",
+ "\u1199\u119a\u0007N\u0002\u0002\u119a\u119b\u0007Q\u0002\u0002\u119b",
+ "\u119c\u0007U\u0002\u0002\u119c\u119d\u0007G\u0002\u0002\u119d\u0258",
+ "\u0003\u0002\u0002\u0002\u119e\u119f\u0007E\u0002\u0002\u119f\u11a0",
+ "\u0007Q\u0002\u0002\u11a0\u11a1\u0007C\u0002\u0002\u11a1\u11a2\u0007",
+ "N\u0002\u0002\u11a2\u11a3\u0007G\u0002\u0002\u11a3\u11a4\u0007U\u0002",
+ "\u0002\u11a4\u11a5\u0007E\u0002\u0002\u11a5\u11a6\u0007G\u0002\u0002",
+ "\u11a6\u025a\u0003\u0002\u0002\u0002\u11a7\u11a8\u0007E\u0002\u0002",
+ "\u11a8\u11a9\u0007Q\u0002\u0002\u11a9\u11aa\u0007F\u0002\u0002\u11aa",
+ "\u11ab\u0007G\u0002\u0002\u11ab\u025c\u0003\u0002\u0002\u0002\u11ac",
+ "\u11ad\u0007E\u0002\u0002\u11ad\u11ae\u0007Q\u0002\u0002\u11ae\u11af",
+ "\u0007N\u0002\u0002\u11af\u11b0\u0007W\u0002\u0002\u11b0\u11b1\u0007",
+ "O\u0002\u0002\u11b1\u11b2\u0007P\u0002\u0002\u11b2\u11b3\u0007U\u0002",
+ "\u0002\u11b3\u025e\u0003\u0002\u0002\u0002\u11b4\u11b5\u0007E\u0002",
+ "\u0002\u11b5\u11b6\u0007Q\u0002\u0002\u11b6\u11b7\u0007N\u0002\u0002",
+ "\u11b7\u11b8\u0007W\u0002\u0002\u11b8\u11b9\u0007O\u0002\u0002\u11b9",
+ "\u11ba\u0007P\u0002\u0002\u11ba\u11bb\u0007a\u0002\u0002\u11bb\u11bc",
+ "\u0007H\u0002\u0002\u11bc\u11bd\u0007Q\u0002\u0002\u11bd\u11be\u0007",
+ "T\u0002\u0002\u11be\u11bf\u0007O\u0002\u0002\u11bf\u11c0\u0007C\u0002",
+ "\u0002\u11c0\u11c1\u0007V\u0002\u0002\u11c1\u0260\u0003\u0002\u0002",
+ "\u0002\u11c2\u11c3\u0007E\u0002\u0002\u11c3\u11c4\u0007Q\u0002\u0002",
+ "\u11c4\u11c5\u0007N\u0002\u0002\u11c5\u11c6\u0007W\u0002\u0002\u11c6",
+ "\u11c7\u0007O\u0002\u0002\u11c7\u11c8\u0007P\u0002\u0002\u11c8\u11c9",
+ "\u0007a\u0002\u0002\u11c9\u11ca\u0007P\u0002\u0002\u11ca\u11cb\u0007",
+ "C\u0002\u0002\u11cb\u11cc\u0007O\u0002\u0002\u11cc\u11cd\u0007G\u0002",
+ "\u0002\u11cd\u0262\u0003\u0002\u0002\u0002\u11ce\u11cf\u0007E\u0002",
+ "\u0002\u11cf\u11d0\u0007Q\u0002\u0002\u11d0\u11d1\u0007O\u0002\u0002",
+ "\u11d1\u11d2\u0007O\u0002\u0002\u11d2\u11d3\u0007G\u0002\u0002\u11d3",
+ "\u11d4\u0007P\u0002\u0002\u11d4\u11d5\u0007V\u0002\u0002\u11d5\u0264",
+ "\u0003\u0002\u0002\u0002\u11d6\u11d7\u0007E\u0002\u0002\u11d7\u11d8",
+ "\u0007Q\u0002\u0002\u11d8\u11d9\u0007O\u0002\u0002\u11d9\u11da\u0007",
+ "O\u0002\u0002\u11da\u11db\u0007K\u0002\u0002\u11db\u11dc\u0007V\u0002",
+ "\u0002\u11dc\u0266\u0003\u0002\u0002\u0002\u11dd\u11de\u0007E\u0002",
+ "\u0002\u11de\u11df\u0007Q\u0002\u0002\u11df\u11e0\u0007O\u0002\u0002",
+ "\u11e0\u11e1\u0007R\u0002\u0002\u11e1\u11e2\u0007C\u0002\u0002\u11e2",
+ "\u11e3\u0007E\u0002\u0002\u11e3\u11e4\u0007V\u0002\u0002\u11e4\u0268",
+ "\u0003\u0002\u0002\u0002\u11e5\u11e6\u0007E\u0002\u0002\u11e6\u11e7",
+ "\u0007Q\u0002\u0002\u11e7\u11e8\u0007O\u0002\u0002\u11e8\u11e9\u0007",
+ "R\u0002\u0002\u11e9\u11ea\u0007N\u0002\u0002\u11ea\u11eb\u0007G\u0002",
+ "\u0002\u11eb\u11ec\u0007V\u0002\u0002\u11ec\u11ed\u0007K\u0002\u0002",
+ "\u11ed\u11ee\u0007Q\u0002\u0002\u11ee\u11ef\u0007P\u0002\u0002\u11ef",
+ "\u026a\u0003\u0002\u0002\u0002\u11f0\u11f1\u0007E\u0002\u0002\u11f1",
+ "\u11f2\u0007Q\u0002\u0002\u11f2\u11f3\u0007O\u0002\u0002\u11f3\u11f4",
+ "\u0007R\u0002\u0002\u11f4\u11f5\u0007T\u0002\u0002\u11f5\u11f6\u0007",
+ "G\u0002\u0002\u11f6\u11f7\u0007U\u0002\u0002\u11f7\u11f8\u0007U\u0002",
+ "\u0002\u11f8\u11f9\u0007G\u0002\u0002\u11f9\u11fa\u0007F\u0002\u0002",
+ "\u11fa\u026c\u0003\u0002\u0002\u0002\u11fb\u11fc\u0007E\u0002\u0002",
+ "\u11fc\u11fd\u0007Q\u0002\u0002\u11fd\u11fe\u0007O\u0002\u0002\u11fe",
+ "\u11ff\u0007R\u0002\u0002\u11ff\u1200\u0007T\u0002\u0002\u1200\u1201",
+ "\u0007G\u0002\u0002\u1201\u1202\u0007U\u0002\u0002\u1202\u1203\u0007",
+ "U\u0002\u0002\u1203\u1204\u0007K\u0002\u0002\u1204\u1205\u0007Q\u0002",
+ "\u0002\u1205\u1206\u0007P\u0002\u0002\u1206\u026e\u0003\u0002\u0002",
+ "\u0002\u1207\u1208\u0007E\u0002\u0002\u1208\u1209\u0007Q\u0002\u0002",
+ "\u1209\u120a\u0007P\u0002\u0002\u120a\u120b\u0007E\u0002\u0002\u120b",
+ "\u120c\u0007W\u0002\u0002\u120c\u120d\u0007T\u0002\u0002\u120d\u120e",
+ "\u0007T\u0002\u0002\u120e\u120f\u0007G\u0002\u0002\u120f\u1210\u0007",
+ "P\u0002\u0002\u1210\u1211\u0007V\u0002\u0002\u1211\u0270\u0003\u0002",
+ "\u0002\u0002\u1212\u1213\u0007E\u0002\u0002\u1213\u1214\u0007Q\u0002",
+ "\u0002\u1214\u1215\u0007P\u0002\u0002\u1215\u1216\u0007P\u0002\u0002",
+ "\u1216\u1217\u0007G\u0002\u0002\u1217\u1218\u0007E\u0002\u0002\u1218",
+ "\u1219\u0007V\u0002\u0002\u1219\u121a\u0007K\u0002\u0002\u121a\u121b",
+ "\u0007Q\u0002\u0002\u121b\u121c\u0007P\u0002\u0002\u121c\u0272\u0003",
+ "\u0002\u0002\u0002\u121d\u121e\u0007E\u0002\u0002\u121e\u121f\u0007",
+ "Q\u0002\u0002\u121f\u1220\u0007P\u0002\u0002\u1220\u1221\u0007U\u0002",
+ "\u0002\u1221\u1222\u0007K\u0002\u0002\u1222\u1223\u0007U\u0002\u0002",
+ "\u1223\u1224\u0007V\u0002\u0002\u1224\u1225\u0007G\u0002\u0002\u1225",
+ "\u1226\u0007P\u0002\u0002\u1226\u1227\u0007V\u0002\u0002\u1227\u0274",
+ "\u0003\u0002\u0002\u0002\u1228\u1229\u0007E\u0002\u0002\u1229\u122a",
+ "\u0007Q\u0002\u0002\u122a\u122b\u0007P\u0002\u0002\u122b\u122c\u0007",
+ "U\u0002\u0002\u122c\u122d\u0007V\u0002\u0002\u122d\u122e\u0007T\u0002",
+ "\u0002\u122e\u122f\u0007C\u0002\u0002\u122f\u1230\u0007K\u0002\u0002",
+ "\u1230\u1231\u0007P\u0002\u0002\u1231\u1232\u0007V\u0002\u0002\u1232",
+ "\u1233\u0007a\u0002\u0002\u1233\u1234\u0007E\u0002\u0002\u1234\u1235",
+ "\u0007C\u0002\u0002\u1235\u1236\u0007V\u0002\u0002\u1236\u1237\u0007",
+ "C\u0002\u0002\u1237\u1238\u0007N\u0002\u0002\u1238\u1239\u0007Q\u0002",
+ "\u0002\u1239\u123a\u0007I\u0002\u0002\u123a\u0276\u0003\u0002\u0002",
+ "\u0002\u123b\u123c\u0007E\u0002\u0002\u123c\u123d\u0007Q\u0002\u0002",
+ "\u123d\u123e\u0007P\u0002\u0002\u123e\u123f\u0007U\u0002\u0002\u123f",
+ "\u1240\u0007V\u0002\u0002\u1240\u1241\u0007T\u0002\u0002\u1241\u1242",
+ "\u0007C\u0002\u0002\u1242\u1243\u0007K\u0002\u0002\u1243\u1244\u0007",
+ "P\u0002\u0002\u1244\u1245\u0007V\u0002\u0002\u1245\u1246\u0007a\u0002",
+ "\u0002\u1246\u1247\u0007U\u0002\u0002\u1247\u1248\u0007E\u0002\u0002",
+ "\u1248\u1249\u0007J\u0002\u0002\u1249\u124a\u0007G\u0002\u0002\u124a",
+ "\u124b\u0007O\u0002\u0002\u124b\u124c\u0007C\u0002\u0002\u124c\u0278",
+ "\u0003\u0002\u0002\u0002\u124d\u124e\u0007E\u0002\u0002\u124e\u124f",
+ "\u0007Q\u0002\u0002\u124f\u1250\u0007P\u0002\u0002\u1250\u1251\u0007",
+ "U\u0002\u0002\u1251\u1252\u0007V\u0002\u0002\u1252\u1253\u0007T\u0002",
+ "\u0002\u1253\u1254\u0007C\u0002\u0002\u1254\u1255\u0007K\u0002\u0002",
+ "\u1255\u1256\u0007P\u0002\u0002\u1256\u1257\u0007V\u0002\u0002\u1257",
+ "\u1258\u0007a\u0002\u0002\u1258\u1259\u0007P\u0002\u0002\u1259\u125a",
+ "\u0007C\u0002\u0002\u125a\u125b\u0007O\u0002\u0002\u125b\u125c\u0007",
+ "G\u0002\u0002\u125c\u027a\u0003\u0002\u0002\u0002\u125d\u125e\u0007",
+ "E\u0002\u0002\u125e\u125f\u0007Q\u0002\u0002\u125f\u1260\u0007P\u0002",
+ "\u0002\u1260\u1261\u0007V\u0002\u0002\u1261\u1262\u0007C\u0002\u0002",
+ "\u1262\u1263\u0007K\u0002\u0002\u1263\u1264\u0007P\u0002\u0002\u1264",
+ "\u1265\u0007U\u0002\u0002\u1265\u027c\u0003\u0002\u0002\u0002\u1266",
+ "\u1267\u0007E\u0002\u0002\u1267\u1268\u0007Q\u0002\u0002\u1268\u1269",
+ "\u0007P\u0002\u0002\u1269\u126a\u0007V\u0002\u0002\u126a\u126b\u0007",
+ "G\u0002\u0002\u126b\u126c\u0007Z\u0002\u0002\u126c\u126d\u0007V\u0002",
+ "\u0002\u126d\u027e\u0003\u0002\u0002\u0002\u126e\u126f\u0007E\u0002",
+ "\u0002\u126f\u1270\u0007Q\u0002\u0002\u1270\u1271\u0007P\u0002\u0002",
+ "\u1271\u1272\u0007V\u0002\u0002\u1272\u1273\u0007T\u0002\u0002\u1273",
+ "\u1274\u0007K\u0002\u0002\u1274\u1275\u0007D\u0002\u0002\u1275\u1276",
+ "\u0007W\u0002\u0002\u1276\u1277\u0007V\u0002\u0002\u1277\u1278\u0007",
+ "Q\u0002\u0002\u1278\u1279\u0007T\u0002\u0002\u1279\u127a\u0007U\u0002",
+ "\u0002\u127a\u0280\u0003\u0002\u0002\u0002\u127b\u127c\u0007E\u0002",
+ "\u0002\u127c\u127d\u0007Q\u0002\u0002\u127d\u127e\u0007R\u0002\u0002",
+ "\u127e\u127f\u0007[\u0002\u0002\u127f\u0282\u0003\u0002\u0002\u0002",
+ "\u1280\u1281\u0007E\u0002\u0002\u1281\u1282\u0007R\u0002\u0002\u1282",
+ "\u1283\u0007W\u0002\u0002\u1283\u0284\u0003\u0002\u0002\u0002\u1284",
+ "\u1285\u0007E\u0002\u0002\u1285\u1286\u0007W\u0002\u0002\u1286\u1287",
+ "\u0007T\u0002\u0002\u1287\u1288\u0007U\u0002\u0002\u1288\u1289\u0007",
+ "Q\u0002\u0002\u1289\u128a\u0007T\u0002\u0002\u128a\u128b\u0007a\u0002",
+ "\u0002\u128b\u128c\u0007P\u0002\u0002\u128c\u128d\u0007C\u0002\u0002",
+ "\u128d\u128e\u0007O\u0002\u0002\u128e\u128f\u0007G\u0002\u0002\u128f",
+ "\u0286\u0003\u0002\u0002\u0002\u1290\u1291\u0007F\u0002\u0002\u1291",
+ "\u1292\u0007C\u0002\u0002\u1292\u1293\u0007V\u0002\u0002\u1293\u1294",
+ "\u0007C\u0002\u0002\u1294\u0288\u0003\u0002\u0002\u0002\u1295\u1296",
+ "\u0007F\u0002\u0002\u1296\u1297\u0007C\u0002\u0002\u1297\u1298\u0007",
+ "V\u0002\u0002\u1298\u1299\u0007C\u0002\u0002\u1299\u129a\u0007H\u0002",
+ "\u0002\u129a\u129b\u0007K\u0002\u0002\u129b\u129c\u0007N\u0002\u0002",
+ "\u129c\u129d\u0007G\u0002\u0002\u129d\u028a\u0003\u0002\u0002\u0002",
+ "\u129e\u129f\u0007F\u0002\u0002\u129f\u12a0\u0007G\u0002\u0002\u12a0",
+ "\u12a1\u0007C\u0002\u0002\u12a1\u12a2\u0007N\u0002\u0002\u12a2\u12a3",
+ "\u0007N\u0002\u0002\u12a3\u12a4\u0007Q\u0002\u0002\u12a4\u12a5\u0007",
+ "E\u0002\u0002\u12a5\u12a6\u0007C\u0002\u0002\u12a6\u12a7\u0007V\u0002",
+ "\u0002\u12a7\u12a8\u0007G\u0002\u0002\u12a8\u028c\u0003\u0002\u0002",
+ "\u0002\u12a9\u12aa\u0007F\u0002\u0002\u12aa\u12ab\u0007G\u0002\u0002",
+ "\u12ab\u12ac\u0007H\u0002\u0002\u12ac\u12ad\u0007C\u0002\u0002\u12ad",
+ "\u12ae\u0007W\u0002\u0002\u12ae\u12af\u0007N\u0002\u0002\u12af\u12b0",
+ "\u0007V\u0002\u0002\u12b0\u12b1\u0007a\u0002\u0002\u12b1\u12b2\u0007",
+ "C\u0002\u0002\u12b2\u12b3\u0007W\u0002\u0002\u12b3\u12b4\u0007V\u0002",
+ "\u0002\u12b4\u12b5\u0007J\u0002\u0002\u12b5\u028e\u0003\u0002\u0002",
+ "\u0002\u12b6\u12b7\u0007F\u0002\u0002\u12b7\u12b8\u0007G\u0002\u0002",
+ "\u12b8\u12b9\u0007H\u0002\u0002\u12b9\u12ba\u0007K\u0002\u0002\u12ba",
+ "\u12bb\u0007P\u0002\u0002\u12bb\u12bc\u0007G\u0002\u0002\u12bc\u12bd",
+ "\u0007T\u0002\u0002\u12bd\u0290\u0003\u0002\u0002\u0002\u12be\u12bf",
+ "\u0007F\u0002\u0002\u12bf\u12c0\u0007G\u0002\u0002\u12c0\u12c1\u0007",
+ "N\u0002\u0002\u12c1\u12c2\u0007C\u0002\u0002\u12c2\u12c3\u0007[\u0002",
+ "\u0002\u12c3\u12c4\u0007a\u0002\u0002\u12c4\u12c5\u0007M\u0002\u0002",
+ "\u12c5\u12c6\u0007G\u0002\u0002\u12c6\u12c7\u0007[\u0002\u0002\u12c7",
+ "\u12c8\u0007a\u0002\u0002\u12c8\u12c9\u0007Y\u0002\u0002\u12c9\u12ca",
+ "\u0007T\u0002\u0002\u12ca\u12cb\u0007K\u0002\u0002\u12cb\u12cc\u0007",
+ "V\u0002\u0002\u12cc\u12cd\u0007G\u0002\u0002\u12cd\u0292\u0003\u0002",
+ "\u0002\u0002\u12ce\u12cf\u0007F\u0002\u0002\u12cf\u12d0\u0007G\u0002",
+ "\u0002\u12d0\u12d1\u0007U\u0002\u0002\u12d1\u12d2\u0007a\u0002\u0002",
+ "\u12d2\u12d3\u0007M\u0002\u0002\u12d3\u12d4\u0007G\u0002\u0002\u12d4",
+ "\u12d5\u0007[\u0002\u0002\u12d5\u12d6\u0007a\u0002\u0002\u12d6\u12d7",
+ "\u0007H\u0002\u0002\u12d7\u12d8\u0007K\u0002\u0002\u12d8\u12d9\u0007",
+ "N\u0002\u0002\u12d9\u12da\u0007G\u0002\u0002\u12da\u0294\u0003\u0002",
+ "\u0002\u0002\u12db\u12dc\u0007F\u0002\u0002\u12dc\u12dd\u0007K\u0002",
+ "\u0002\u12dd\u12de\u0007T\u0002\u0002\u12de\u12df\u0007G\u0002\u0002",
+ "\u12df\u12e0\u0007E\u0002\u0002\u12e0\u12e1\u0007V\u0002\u0002\u12e1",
+ "\u12e2\u0007Q\u0002\u0002\u12e2\u12e3\u0007T\u0002\u0002\u12e3\u12e4",
+ "\u0007[\u0002\u0002\u12e4\u0296\u0003\u0002\u0002\u0002\u12e5\u12e6",
+ "\u0007F\u0002\u0002\u12e6\u12e7\u0007K\u0002\u0002\u12e7\u12e8\u0007",
+ "U\u0002\u0002\u12e8\u12e9\u0007C\u0002\u0002\u12e9\u12ea\u0007D\u0002",
+ "\u0002\u12ea\u12eb\u0007N\u0002\u0002\u12eb\u12ec\u0007G\u0002\u0002",
+ "\u12ec\u0298\u0003\u0002\u0002\u0002\u12ed\u12ee\u0007F\u0002\u0002",
+ "\u12ee\u12ef\u0007K\u0002\u0002\u12ef\u12f0\u0007U\u0002\u0002\u12f0",
+ "\u12f1\u0007E\u0002\u0002\u12f1\u12f2\u0007C\u0002\u0002\u12f2\u12f3",
+ "\u0007T\u0002\u0002\u12f3\u12f4\u0007F\u0002\u0002\u12f4\u029a\u0003",
+ "\u0002\u0002\u0002\u12f5\u12f6\u0007F\u0002\u0002\u12f6\u12f7\u0007",
+ "K\u0002\u0002\u12f7\u12f8\u0007U\u0002\u0002\u12f8\u12f9\u0007M\u0002",
+ "\u0002\u12f9\u029c\u0003\u0002\u0002\u0002\u12fa\u12fb\u0007F\u0002",
+ "\u0002\u12fb\u12fc\u0007Q\u0002\u0002\u12fc\u029e\u0003\u0002\u0002",
+ "\u0002\u12fd\u12fe\u0007F\u0002\u0002\u12fe\u12ff\u0007W\u0002\u0002",
+ "\u12ff\u1300\u0007O\u0002\u0002\u1300\u1301\u0007R\u0002\u0002\u1301",
+ "\u1302\u0007H\u0002\u0002\u1302\u1303\u0007K\u0002\u0002\u1303\u1304",
+ "\u0007N\u0002\u0002\u1304\u1305\u0007G\u0002\u0002\u1305\u02a0\u0003",
+ "\u0002\u0002\u0002\u1306\u1307\u0007F\u0002\u0002\u1307\u1308\u0007",
+ "W\u0002\u0002\u1308\u1309\u0007R\u0002\u0002\u1309\u130a\u0007N\u0002",
+ "\u0002\u130a\u130b\u0007K\u0002\u0002\u130b\u130c\u0007E\u0002\u0002",
+ "\u130c\u130d\u0007C\u0002\u0002\u130d\u130e\u0007V\u0002\u0002\u130e",
+ "\u130f\u0007G\u0002\u0002\u130f\u02a2\u0003\u0002\u0002\u0002\u1310",
+ "\u1311\u0007F\u0002\u0002\u1311\u1312\u0007[\u0002\u0002\u1312\u1313",
+ "\u0007P\u0002\u0002\u1313\u1314\u0007C\u0002\u0002\u1314\u1315\u0007",
+ "O\u0002\u0002\u1315\u1316\u0007K\u0002\u0002\u1316\u1317\u0007E\u0002",
+ "\u0002\u1317\u02a4\u0003\u0002\u0002\u0002\u1318\u1319\u0007G\u0002",
+ "\u0002\u1319\u131a\u0007P\u0002\u0002\u131a\u131b\u0007C\u0002\u0002",
+ "\u131b\u131c\u0007D\u0002\u0002\u131c\u131d\u0007N\u0002\u0002\u131d",
+ "\u131e\u0007G\u0002\u0002\u131e\u02a6\u0003\u0002\u0002\u0002\u131f",
+ "\u1320\u0007G\u0002\u0002\u1320\u1321\u0007P\u0002\u0002\u1321\u1322",
+ "\u0007E\u0002\u0002\u1322\u1323\u0007T\u0002\u0002\u1323\u1324\u0007",
+ "[\u0002\u0002\u1324\u1325\u0007R\u0002\u0002\u1325\u1326\u0007V\u0002",
+ "\u0002\u1326\u1327\u0007K\u0002\u0002\u1327\u1328\u0007Q\u0002\u0002",
+ "\u1328\u1329\u0007P\u0002\u0002\u1329\u02a8\u0003\u0002\u0002\u0002",
+ "\u132a\u132b\u0007G\u0002\u0002\u132b\u132c\u0007P\u0002\u0002\u132c",
+ "\u132d\u0007F\u0002\u0002\u132d\u02aa\u0003\u0002\u0002\u0002\u132e",
+ "\u132f\u0007G\u0002\u0002\u132f\u1330\u0007P\u0002\u0002\u1330\u1331",
+ "\u0007F\u0002\u0002\u1331\u1332\u0007U\u0002\u0002\u1332\u02ac\u0003",
+ "\u0002\u0002\u0002\u1333\u1334\u0007G\u0002\u0002\u1334\u1335\u0007",
+ "P\u0002\u0002\u1335\u1336\u0007I\u0002\u0002\u1336\u1337\u0007K\u0002",
+ "\u0002\u1337\u1338\u0007P\u0002\u0002\u1338\u1339\u0007G\u0002\u0002",
+ "\u1339\u02ae\u0003\u0002\u0002\u0002\u133a\u133b\u0007G\u0002\u0002",
+ "\u133b\u133c\u0007P\u0002\u0002\u133c\u133d\u0007I\u0002\u0002\u133d",
+ "\u133e\u0007K\u0002\u0002\u133e\u133f\u0007P\u0002\u0002\u133f\u1340",
+ "\u0007G\u0002\u0002\u1340\u1341\u0007U\u0002\u0002\u1341\u02b0\u0003",
+ "\u0002\u0002\u0002\u1342\u1343\u0007G\u0002\u0002\u1343\u1344\u0007",
+ "T\u0002\u0002\u1344\u1345\u0007T\u0002\u0002\u1345\u1346\u0007Q\u0002",
+ "\u0002\u1346\u1347\u0007T\u0002\u0002\u1347\u02b2\u0003\u0002\u0002",
+ "\u0002\u1348\u1349\u0007G\u0002\u0002\u1349\u134a\u0007T\u0002\u0002",
+ "\u134a\u134b\u0007T\u0002\u0002\u134b\u134c\u0007Q\u0002\u0002\u134c",
+ "\u134d\u0007T\u0002\u0002\u134d\u134e\u0007U\u0002\u0002\u134e\u02b4",
+ "\u0003\u0002\u0002\u0002\u134f\u1350\u0007G\u0002\u0002\u1350\u1351",
+ "\u0007U\u0002\u0002\u1351\u1352\u0007E\u0002\u0002\u1352\u1353\u0007",
+ "C\u0002\u0002\u1353\u1354\u0007R\u0002\u0002\u1354\u1355\u0007G\u0002",
+ "\u0002\u1355\u02b6\u0003\u0002\u0002\u0002\u1356\u1357\u0007G\u0002",
+ "\u0002\u1357\u1358\u0007X\u0002\u0002\u1358\u1359\u0007G\u0002\u0002",
+ "\u1359\u135a\u0007P\u0002\u0002\u135a\u02b8\u0003\u0002\u0002\u0002",
+ "\u135b\u135c\u0007G\u0002\u0002\u135c\u135d\u0007X\u0002\u0002\u135d",
+ "\u135e\u0007G\u0002\u0002\u135e\u135f\u0007P\u0002\u0002\u135f\u1360",
+ "\u0007V\u0002\u0002\u1360\u02ba\u0003\u0002\u0002\u0002\u1361\u1362",
+ "\u0007G\u0002\u0002\u1362\u1363\u0007X\u0002\u0002\u1363\u1364\u0007",
+ "G\u0002\u0002\u1364\u1365\u0007P\u0002\u0002\u1365\u1366\u0007V\u0002",
+ "\u0002\u1366\u1367\u0007U\u0002\u0002\u1367\u02bc\u0003\u0002\u0002",
+ "\u0002\u1368\u1369\u0007G\u0002\u0002\u1369\u136a\u0007X\u0002\u0002",
+ "\u136a\u136b\u0007G\u0002\u0002\u136b\u136c\u0007T\u0002\u0002\u136c",
+ "\u136d\u0007[\u0002\u0002\u136d\u02be\u0003\u0002\u0002\u0002\u136e",
+ "\u136f\u0007G\u0002\u0002\u136f\u1370\u0007Z\u0002\u0002\u1370\u1371",
+ "\u0007E\u0002\u0002\u1371\u1372\u0007J\u0002\u0002\u1372\u1373\u0007",
+ "C\u0002\u0002\u1373\u1374\u0007P\u0002\u0002\u1374\u1375\u0007I\u0002",
+ "\u0002\u1375\u1376\u0007G\u0002\u0002\u1376\u02c0\u0003\u0002\u0002",
+ "\u0002\u1377\u1378\u0007G\u0002\u0002\u1378\u1379\u0007Z\u0002\u0002",
+ "\u1379\u137a\u0007E\u0002\u0002\u137a\u137b\u0007N\u0002\u0002\u137b",
+ "\u137c\u0007W\u0002\u0002\u137c\u137d\u0007U\u0002\u0002\u137d\u137e",
+ "\u0007K\u0002\u0002\u137e\u137f\u0007X\u0002\u0002\u137f\u1380\u0007",
+ "G\u0002\u0002\u1380\u02c2\u0003\u0002\u0002\u0002\u1381\u1382\u0007",
+ "G\u0002\u0002\u1382\u1383\u0007Z\u0002\u0002\u1383\u1384\u0007R\u0002",
+ "\u0002\u1384\u1385\u0007K\u0002\u0002\u1385\u1386\u0007T\u0002\u0002",
+ "\u1386\u1387\u0007G\u0002\u0002\u1387\u02c4\u0003\u0002\u0002\u0002",
+ "\u1388\u1389\u0007G\u0002\u0002\u1389\u138a\u0007Z\u0002\u0002\u138a",
+ "\u138b\u0007R\u0002\u0002\u138b\u138c\u0007Q\u0002\u0002\u138c\u138d",
+ "\u0007T\u0002\u0002\u138d\u138e\u0007V\u0002\u0002\u138e\u02c6\u0003",
+ "\u0002\u0002\u0002\u138f\u1390\u0007G\u0002\u0002\u1390\u1391\u0007",
+ "Z\u0002\u0002\u1391\u1392\u0007V\u0002\u0002\u1392\u1393\u0007G\u0002",
+ "\u0002\u1393\u1394\u0007P\u0002\u0002\u1394\u1395\u0007F\u0002\u0002",
+ "\u1395\u1396\u0007G\u0002\u0002\u1396\u1397\u0007F\u0002\u0002\u1397",
+ "\u02c8\u0003\u0002\u0002\u0002\u1398\u1399\u0007G\u0002\u0002\u1399",
+ "\u139a\u0007Z\u0002\u0002\u139a\u139b\u0007V\u0002\u0002\u139b\u139c",
+ "\u0007G\u0002\u0002\u139c\u139d\u0007P\u0002\u0002\u139d\u139e\u0007",
+ "V\u0002\u0002\u139e\u139f\u0007a\u0002\u0002\u139f\u13a0\u0007U\u0002",
+ "\u0002\u13a0\u13a1\u0007K\u0002\u0002\u13a1\u13a2\u0007\\\u0002\u0002",
+ "\u13a2\u13a3\u0007G\u0002\u0002\u13a3\u02ca\u0003\u0002\u0002\u0002",
+ "\u13a4\u13a5\u0007H\u0002\u0002\u13a5\u13a6\u0007C\u0002\u0002\u13a6",
+ "\u13a7\u0007U\u0002\u0002\u13a7\u13a8\u0007V\u0002\u0002\u13a8\u02cc",
+ "\u0003\u0002\u0002\u0002\u13a9\u13aa\u0007H\u0002\u0002\u13aa\u13ab",
+ "\u0007C\u0002\u0002\u13ab\u13ac\u0007W\u0002\u0002\u13ac\u13ad\u0007",
+ "N\u0002\u0002\u13ad\u13ae\u0007V\u0002\u0002\u13ae\u13af\u0007U\u0002",
+ "\u0002\u13af\u02ce\u0003\u0002\u0002\u0002\u13b0\u13b1\u0007H\u0002",
+ "\u0002\u13b1\u13b2\u0007K\u0002\u0002\u13b2\u13b3\u0007G\u0002\u0002",
+ "\u13b3\u13b4\u0007N\u0002\u0002\u13b4\u13b5\u0007F\u0002\u0002\u13b5",
+ "\u13b6\u0007U\u0002\u0002\u13b6\u02d0\u0003\u0002\u0002\u0002\u13b7",
+ "\u13b8\u0007H\u0002\u0002\u13b8\u13b9\u0007K\u0002\u0002\u13b9\u13ba",
+ "\u0007N\u0002\u0002\u13ba\u13bb\u0007G\u0002\u0002\u13bb\u13bc\u0007",
+ "a\u0002\u0002\u13bc\u13bd\u0007D\u0002\u0002\u13bd\u13be\u0007N\u0002",
+ "\u0002\u13be\u13bf\u0007Q\u0002\u0002\u13bf\u13c0\u0007E\u0002\u0002",
+ "\u13c0\u13c1\u0007M\u0002\u0002\u13c1\u13c2\u0007a\u0002\u0002\u13c2",
+ "\u13c3\u0007U\u0002\u0002\u13c3\u13c4\u0007K\u0002\u0002\u13c4\u13c5",
+ "\u0007\\\u0002\u0002\u13c5\u13c6\u0007G\u0002\u0002\u13c6\u02d2\u0003",
+ "\u0002\u0002\u0002\u13c7\u13c8\u0007H\u0002\u0002\u13c8\u13c9\u0007",
+ "K\u0002\u0002\u13c9\u13ca\u0007N\u0002\u0002\u13ca\u13cb\u0007V\u0002",
+ "\u0002\u13cb\u13cc\u0007G\u0002\u0002\u13cc\u13cd\u0007T\u0002\u0002",
+ "\u13cd\u02d4\u0003\u0002\u0002\u0002\u13ce\u13cf\u0007H\u0002\u0002",
+ "\u13cf\u13d0\u0007K\u0002\u0002\u13d0\u13d1\u0007T\u0002\u0002\u13d1",
+ "\u13d2\u0007U\u0002\u0002\u13d2\u13d3\u0007V\u0002\u0002\u13d3\u02d6",
+ "\u0003\u0002\u0002\u0002\u13d4\u13d5\u0007H\u0002\u0002\u13d5\u13d6",
+ "\u0007K\u0002\u0002\u13d6\u13d7\u0007Z\u0002\u0002\u13d7\u13d8\u0007",
+ "G\u0002\u0002\u13d8\u13d9\u0007F\u0002\u0002\u13d9\u02d8\u0003\u0002",
+ "\u0002\u0002\u13da\u13db\u0007H\u0002\u0002\u13db\u13dc\u0007N\u0002",
+ "\u0002\u13dc\u13dd\u0007W\u0002\u0002\u13dd\u13de\u0007U\u0002\u0002",
+ "\u13de\u13df\u0007J\u0002\u0002\u13df\u02da\u0003\u0002\u0002\u0002",
+ "\u13e0\u13e1\u0007H\u0002\u0002\u13e1\u13e2\u0007Q\u0002\u0002\u13e2",
+ "\u13e3\u0007N\u0002\u0002\u13e3\u13e4\u0007N\u0002\u0002\u13e4\u13e5",
+ "\u0007Q\u0002\u0002\u13e5\u13e6\u0007Y\u0002\u0002\u13e6\u13e7\u0007",
+ "U\u0002\u0002\u13e7\u02dc\u0003\u0002\u0002\u0002\u13e8\u13e9\u0007",
+ "H\u0002\u0002\u13e9\u13ea\u0007Q\u0002\u0002\u13ea\u13eb\u0007W\u0002",
+ "\u0002\u13eb\u13ec\u0007P\u0002\u0002\u13ec\u13ed\u0007F\u0002\u0002",
+ "\u13ed\u02de\u0003\u0002\u0002\u0002\u13ee\u13ef\u0007H\u0002\u0002",
+ "\u13ef\u13f0\u0007W\u0002\u0002\u13f0\u13f1\u0007N\u0002\u0002\u13f1",
+ "\u13f2\u0007N\u0002\u0002\u13f2\u02e0\u0003\u0002\u0002\u0002\u13f3",
+ "\u13f4\u0007H\u0002\u0002\u13f4\u13f5\u0007W\u0002\u0002\u13f5\u13f6",
+ "\u0007P\u0002\u0002\u13f6\u13f7\u0007E\u0002\u0002\u13f7\u13f8\u0007",
+ "V\u0002\u0002\u13f8\u13f9\u0007K\u0002\u0002\u13f9\u13fa\u0007Q\u0002",
+ "\u0002\u13fa\u13fb\u0007P\u0002\u0002\u13fb\u02e2\u0003\u0002\u0002",
+ "\u0002\u13fc\u13fd\u0007I\u0002\u0002\u13fd\u13fe\u0007G\u0002\u0002",
+ "\u13fe\u13ff\u0007P\u0002\u0002\u13ff\u1400\u0007G\u0002\u0002\u1400",
+ "\u1401\u0007T\u0002\u0002\u1401\u1402\u0007C\u0002\u0002\u1402\u1403",
+ "\u0007N\u0002\u0002\u1403\u02e4\u0003\u0002\u0002\u0002\u1404\u1405",
+ "\u0007I\u0002\u0002\u1405\u1406\u0007N\u0002\u0002\u1406\u1407\u0007",
+ "Q\u0002\u0002\u1407\u1408\u0007D\u0002\u0002\u1408\u1409\u0007C\u0002",
+ "\u0002\u1409\u140a\u0007N\u0002\u0002\u140a\u02e6\u0003\u0002\u0002",
+ "\u0002\u140b\u140c\u0007I\u0002\u0002\u140c\u140d\u0007T\u0002\u0002",
+ "\u140d\u140e\u0007C\u0002\u0002\u140e\u140f\u0007P\u0002\u0002\u140f",
+ "\u1410\u0007V\u0002\u0002\u1410\u1411\u0007U\u0002\u0002\u1411\u02e8",
+ "\u0003\u0002\u0002\u0002\u1412\u1413\u0007I\u0002\u0002\u1413\u1414",
+ "\u0007T\u0002\u0002\u1414\u1415\u0007Q\u0002\u0002\u1415\u1416\u0007",
+ "W\u0002\u0002\u1416\u1417\u0007R\u0002\u0002\u1417\u1418\u0007a\u0002",
+ "\u0002\u1418\u1419\u0007T\u0002\u0002\u1419\u141a\u0007G\u0002\u0002",
+ "\u141a\u141b\u0007R\u0002\u0002\u141b\u141c\u0007N\u0002\u0002\u141c",
+ "\u141d\u0007K\u0002\u0002\u141d\u141e\u0007E\u0002\u0002\u141e\u141f",
+ "\u0007C\u0002\u0002\u141f\u1420\u0007V\u0002\u0002\u1420\u1421\u0007",
+ "K\u0002\u0002\u1421\u1422\u0007Q\u0002\u0002\u1422\u1423\u0007P\u0002",
+ "\u0002\u1423\u02ea\u0003\u0002\u0002\u0002\u1424\u1425\u0007J\u0002",
+ "\u0002\u1425\u1426\u0007C\u0002\u0002\u1426\u1427\u0007P\u0002\u0002",
+ "\u1427\u1428\u0007F\u0002\u0002\u1428\u1429\u0007N\u0002\u0002\u1429",
+ "\u142a\u0007G\u0002\u0002\u142a\u142b\u0007T\u0002\u0002\u142b\u02ec",
+ "\u0003\u0002\u0002\u0002\u142c\u142d\u0007J\u0002\u0002\u142d\u142e",
+ "\u0007C\u0002\u0002\u142e\u142f\u0007U\u0002\u0002\u142f\u1430\u0007",
+ "J\u0002\u0002\u1430\u02ee\u0003\u0002\u0002\u0002\u1431\u1432\u0007",
+ "J\u0002\u0002\u1432\u1433\u0007G\u0002\u0002\u1433\u1434\u0007N\u0002",
+ "\u0002\u1434\u1435\u0007R\u0002\u0002\u1435\u02f0\u0003\u0002\u0002",
+ "\u0002\u1436\u1437\u0007J\u0002\u0002\u1437\u1438\u0007Q\u0002\u0002",
+ "\u1438\u1439\u0007U\u0002\u0002\u1439\u143a\u0007V\u0002\u0002\u143a",
+ "\u02f2\u0003\u0002\u0002\u0002\u143b\u143c\u0007J\u0002\u0002\u143c",
+ "\u143d\u0007Q\u0002\u0002\u143d\u143e\u0007U\u0002\u0002\u143e\u143f",
+ "\u0007V\u0002\u0002\u143f\u1440\u0007U\u0002\u0002\u1440\u02f4\u0003",
+ "\u0002\u0002\u0002\u1441\u1442\u0007K\u0002\u0002\u1442\u1443\u0007",
+ "F\u0002\u0002\u1443\u1444\u0007G\u0002\u0002\u1444\u1445\u0007P\u0002",
+ "\u0002\u1445\u1446\u0007V\u0002\u0002\u1446\u1447\u0007K\u0002\u0002",
+ "\u1447\u1448\u0007H\u0002\u0002\u1448\u1449\u0007K\u0002\u0002\u1449",
+ "\u144a\u0007G\u0002\u0002\u144a\u144b\u0007F\u0002\u0002\u144b\u02f6",
+ "\u0003\u0002\u0002\u0002\u144c\u144d\u0007K\u0002\u0002\u144d\u144e",
+ "\u0007I\u0002\u0002\u144e\u144f\u0007P\u0002\u0002\u144f\u1450\u0007",
+ "Q\u0002\u0002\u1450\u1451\u0007T\u0002\u0002\u1451\u1452\u0007G\u0002",
+ "\u0002\u1452\u1453\u0007a\u0002\u0002\u1453\u1454\u0007U\u0002\u0002",
+ "\u1454\u1455\u0007G\u0002\u0002\u1455\u1456\u0007T\u0002\u0002\u1456",
+ "\u1457\u0007X\u0002\u0002\u1457\u1458\u0007G\u0002\u0002\u1458\u1459",
+ "\u0007T\u0002\u0002\u1459\u145a\u0007a\u0002\u0002\u145a\u145b\u0007",
+ "K\u0002\u0002\u145b\u145c\u0007F\u0002\u0002\u145c\u145d\u0007U\u0002",
+ "\u0002\u145d\u02f8\u0003\u0002\u0002\u0002\u145e\u145f\u0007K\u0002",
+ "\u0002\u145f\u1460\u0007O\u0002\u0002\u1460\u1461\u0007R\u0002\u0002",
+ "\u1461\u1462\u0007Q\u0002\u0002\u1462\u1463\u0007T\u0002\u0002\u1463",
+ "\u1464\u0007V\u0002\u0002\u1464\u02fa\u0003\u0002\u0002\u0002\u1465",
+ "\u1466\u0007K\u0002\u0002\u1466\u1467\u0007P\u0002\u0002\u1467\u1468",
+ "\u0007F\u0002\u0002\u1468\u1469\u0007G\u0002\u0002\u1469\u146a\u0007",
+ "Z\u0002\u0002\u146a\u146b\u0007G\u0002\u0002\u146b\u146c\u0007U\u0002",
+ "\u0002\u146c\u02fc\u0003\u0002\u0002\u0002\u146d\u146e\u0007K\u0002",
+ "\u0002\u146e\u146f\u0007P\u0002\u0002\u146f\u1470\u0007K\u0002\u0002",
+ "\u1470\u1471\u0007V\u0002\u0002\u1471\u1472\u0007K\u0002\u0002\u1472",
+ "\u1473\u0007C\u0002\u0002\u1473\u1474\u0007N\u0002\u0002\u1474\u1475",
+ "\u0007a\u0002\u0002\u1475\u1476\u0007U\u0002\u0002\u1476\u1477\u0007",
+ "K\u0002\u0002\u1477\u1478\u0007\\\u0002\u0002\u1478\u1479\u0007G\u0002",
+ "\u0002\u1479\u02fe\u0003\u0002\u0002\u0002\u147a\u147b\u0007K\u0002",
+ "\u0002\u147b\u147c\u0007P\u0002\u0002\u147c\u147d\u0007R\u0002\u0002",
+ "\u147d\u147e\u0007N\u0002\u0002\u147e\u147f\u0007C\u0002\u0002\u147f",
+ "\u1480\u0007E\u0002\u0002\u1480\u1481\u0007G\u0002\u0002\u1481\u0300",
+ "\u0003\u0002\u0002\u0002\u1482\u1483\u0007K\u0002\u0002\u1483\u1484",
+ "\u0007P\u0002\u0002\u1484\u1485\u0007U\u0002\u0002\u1485\u1486\u0007",
+ "G\u0002\u0002\u1486\u1487\u0007T\u0002\u0002\u1487\u1488\u0007V\u0002",
+ "\u0002\u1488\u1489\u0007a\u0002\u0002\u1489\u148a\u0007O\u0002\u0002",
+ "\u148a\u148b\u0007G\u0002\u0002\u148b\u148c\u0007V\u0002\u0002\u148c",
+ "\u148d\u0007J\u0002\u0002\u148d\u148e\u0007Q\u0002\u0002\u148e\u148f",
+ "\u0007F\u0002\u0002\u148f\u0302\u0003\u0002\u0002\u0002\u1490\u1491",
+ "\u0007K\u0002\u0002\u1491\u1492\u0007P\u0002\u0002\u1492\u1493\u0007",
+ "U\u0002\u0002\u1493\u1494\u0007V\u0002\u0002\u1494\u1495\u0007C\u0002",
+ "\u0002\u1495\u1496\u0007N\u0002\u0002\u1496\u1497\u0007N\u0002\u0002",
+ "\u1497\u0304\u0003\u0002\u0002\u0002\u1498\u1499\u0007K\u0002\u0002",
+ "\u1499\u149a\u0007P\u0002\u0002\u149a\u149b\u0007U\u0002\u0002\u149b",
+ "\u149c\u0007V\u0002\u0002\u149c\u149d\u0007C\u0002\u0002\u149d\u149e",
+ "\u0007P\u0002\u0002\u149e\u149f\u0007E\u0002\u0002\u149f\u14a0\u0007",
+ "G\u0002\u0002\u14a0\u0306\u0003\u0002\u0002\u0002\u14a1\u14a2\u0007",
+ "K\u0002\u0002\u14a2\u14a3\u0007P\u0002\u0002\u14a3\u14a4\u0007X\u0002",
+ "\u0002\u14a4\u14a5\u0007K\u0002\u0002\u14a5\u14a6\u0007U\u0002\u0002",
+ "\u14a6\u14a7\u0007K\u0002\u0002\u14a7\u14a8\u0007D\u0002\u0002\u14a8",
+ "\u14a9\u0007N\u0002\u0002\u14a9\u14aa\u0007G\u0002\u0002\u14aa\u0308",
+ "\u0003\u0002\u0002\u0002\u14ab\u14ac\u0007K\u0002\u0002\u14ac\u14ad",
+ "\u0007P\u0002\u0002\u14ad\u14ae\u0007X\u0002\u0002\u14ae\u14af\u0007",
+ "Q\u0002\u0002\u14af\u14b0\u0007M\u0002\u0002\u14b0\u14b1\u0007G\u0002",
+ "\u0002\u14b1\u14b2\u0007T\u0002\u0002\u14b2\u030a\u0003\u0002\u0002",
+ "\u0002\u14b3\u14b4\u0007K\u0002\u0002\u14b4\u14b5\u0007Q\u0002\u0002",
+ "\u14b5\u030c\u0003\u0002\u0002\u0002\u14b6\u14b7\u0007K\u0002\u0002",
+ "\u14b7\u14b8\u0007Q\u0002\u0002\u14b8\u14b9\u0007a\u0002\u0002\u14b9",
+ "\u14ba\u0007V\u0002\u0002\u14ba\u14bb\u0007J\u0002\u0002\u14bb\u14bc",
+ "\u0007T\u0002\u0002\u14bc\u14bd\u0007G\u0002\u0002\u14bd\u14be\u0007",
+ "C\u0002\u0002\u14be\u14bf\u0007F\u0002\u0002\u14bf\u030e\u0003\u0002",
+ "\u0002\u0002\u14c0\u14c1\u0007K\u0002\u0002\u14c1\u14c2\u0007R\u0002",
+ "\u0002\u14c2\u14c3\u0007E\u0002\u0002\u14c3\u0310\u0003\u0002\u0002",
+ "\u0002\u14c4\u14c5\u0007K\u0002\u0002\u14c5\u14c6\u0007U\u0002\u0002",
+ "\u14c6\u14c7\u0007Q\u0002\u0002\u14c7\u14c8\u0007N\u0002\u0002\u14c8",
+ "\u14c9\u0007C\u0002\u0002\u14c9\u14ca\u0007V\u0002\u0002\u14ca\u14cb",
+ "\u0007K\u0002\u0002\u14cb\u14cc\u0007Q\u0002\u0002\u14cc\u14cd\u0007",
+ "P\u0002\u0002\u14cd\u0312\u0003\u0002\u0002\u0002\u14ce\u14cf\u0007",
+ "K\u0002\u0002\u14cf\u14d0\u0007U\u0002\u0002\u14d0\u14d1\u0007U\u0002",
+ "\u0002\u14d1\u14d2\u0007W\u0002\u0002\u14d2\u14d3\u0007G\u0002\u0002",
+ "\u14d3\u14d4\u0007T\u0002\u0002\u14d4\u0314\u0003\u0002\u0002\u0002",
+ "\u14d5\u14d6\u0007L\u0002\u0002\u14d6\u14d7\u0007U\u0002\u0002\u14d7",
+ "\u14d8\u0007Q\u0002\u0002\u14d8\u14d9\u0007P\u0002\u0002\u14d9\u0316",
+ "\u0003\u0002\u0002\u0002\u14da\u14db\u0007M\u0002\u0002\u14db\u14dc",
+ "\u0007G\u0002\u0002\u14dc\u14dd\u0007[\u0002\u0002\u14dd\u14de\u0007",
+ "a\u0002\u0002\u14de\u14df\u0007D\u0002\u0002\u14df\u14e0\u0007N\u0002",
+ "\u0002\u14e0\u14e1\u0007Q\u0002\u0002\u14e1\u14e2\u0007E\u0002\u0002",
+ "\u14e2\u14e3\u0007M\u0002\u0002\u14e3\u14e4\u0007a\u0002\u0002\u14e4",
+ "\u14e5\u0007U\u0002\u0002\u14e5\u14e6\u0007K\u0002\u0002\u14e6\u14e7",
+ "\u0007\\\u0002\u0002\u14e7\u14e8\u0007G\u0002\u0002\u14e8\u0318\u0003",
+ "\u0002\u0002\u0002\u14e9\u14ea\u0007N\u0002\u0002\u14ea\u14eb\u0007",
+ "C\u0002\u0002\u14eb\u14ec\u0007P\u0002\u0002\u14ec\u14ed\u0007I\u0002",
+ "\u0002\u14ed\u14ee\u0007W\u0002\u0002\u14ee\u14ef\u0007C\u0002\u0002",
+ "\u14ef\u14f0\u0007I\u0002\u0002\u14f0\u14f1\u0007G\u0002\u0002\u14f1",
+ "\u031a\u0003\u0002\u0002\u0002\u14f2\u14f3\u0007N\u0002\u0002\u14f3",
+ "\u14f4\u0007C\u0002\u0002\u14f4\u14f5\u0007U\u0002\u0002\u14f5\u14f6",
+ "\u0007V\u0002\u0002\u14f6\u031c\u0003\u0002\u0002\u0002\u14f7\u14f8",
+ "\u0007N\u0002\u0002\u14f8\u14f9\u0007G\u0002\u0002\u14f9\u14fa\u0007",
+ "C\u0002\u0002\u14fa\u14fb\u0007X\u0002\u0002\u14fb\u14fc\u0007G\u0002",
+ "\u0002\u14fc\u14fd\u0007U\u0002\u0002\u14fd\u031e\u0003\u0002\u0002",
+ "\u0002\u14fe\u14ff\u0007N\u0002\u0002\u14ff\u1500\u0007G\u0002\u0002",
+ "\u1500\u1501\u0007U\u0002\u0002\u1501\u1502\u0007U\u0002\u0002\u1502",
+ "\u0320\u0003\u0002\u0002\u0002\u1503\u1504\u0007N\u0002\u0002\u1504",
+ "\u1505\u0007G\u0002\u0002\u1505\u1506\u0007X\u0002\u0002\u1506\u1507",
+ "\u0007G\u0002\u0002\u1507\u1508\u0007N\u0002\u0002\u1508\u0322\u0003",
+ "\u0002\u0002\u0002\u1509\u150a\u0007N\u0002\u0002\u150a\u150b\u0007",
+ "K\u0002\u0002\u150b\u150c\u0007U\u0002\u0002\u150c\u150d\u0007V\u0002",
+ "\u0002\u150d\u0324\u0003\u0002\u0002\u0002\u150e\u150f\u0007N\u0002",
+ "\u0002\u150f\u1510\u0007Q\u0002\u0002\u1510\u1511\u0007E\u0002\u0002",
+ "\u1511\u1512\u0007C\u0002\u0002\u1512\u1513\u0007N\u0002\u0002\u1513",
+ "\u0326\u0003\u0002\u0002\u0002\u1514\u1515\u0007N\u0002\u0002\u1515",
+ "\u1516\u0007Q\u0002\u0002\u1516\u1517\u0007I\u0002\u0002\u1517\u1518",
+ "\u0007H\u0002\u0002\u1518\u1519\u0007K\u0002\u0002\u1519\u151a\u0007",
+ "N\u0002\u0002\u151a\u151b\u0007G\u0002\u0002\u151b\u0328\u0003\u0002",
+ "\u0002\u0002\u151c\u151d\u0007N\u0002\u0002\u151d\u151e\u0007Q\u0002",
+ "\u0002\u151e\u151f\u0007I\u0002\u0002\u151f\u1520\u0007U\u0002\u0002",
+ "\u1520\u032a\u0003\u0002\u0002\u0002\u1521\u1522\u0007O\u0002\u0002",
+ "\u1522\u1523\u0007C\u0002\u0002\u1523\u1524\u0007U\u0002\u0002\u1524",
+ "\u1525\u0007V\u0002\u0002\u1525\u1526\u0007G\u0002\u0002\u1526\u1527",
+ "\u0007T\u0002\u0002\u1527\u032c\u0003\u0002\u0002\u0002\u1528\u1529",
+ "\u0007O\u0002\u0002\u1529\u152a\u0007C\u0002\u0002\u152a\u152b\u0007",
+ "U\u0002\u0002\u152b\u152c\u0007V\u0002\u0002\u152c\u152d\u0007G\u0002",
+ "\u0002\u152d\u152e\u0007T\u0002\u0002\u152e\u152f\u0007a\u0002\u0002",
+ "\u152f\u1530\u0007C\u0002\u0002\u1530\u1531\u0007W\u0002\u0002\u1531",
+ "\u1532\u0007V\u0002\u0002\u1532\u1533\u0007Q\u0002\u0002\u1533\u1534",
+ "\u0007a\u0002\u0002\u1534\u1535\u0007R\u0002\u0002\u1535\u1536\u0007",
+ "Q\u0002\u0002\u1536\u1537\u0007U\u0002\u0002\u1537\u1538\u0007K\u0002",
+ "\u0002\u1538\u1539\u0007V\u0002\u0002\u1539\u153a\u0007K\u0002\u0002",
+ "\u153a\u153b\u0007Q\u0002\u0002\u153b\u153c\u0007P\u0002\u0002\u153c",
+ "\u032e\u0003\u0002\u0002\u0002\u153d\u153e\u0007O\u0002\u0002\u153e",
+ "\u153f\u0007C\u0002\u0002\u153f\u1540\u0007U\u0002\u0002\u1540\u1541",
+ "\u0007V\u0002\u0002\u1541\u1542\u0007G\u0002\u0002\u1542\u1543\u0007",
+ "T\u0002\u0002\u1543\u1544\u0007a\u0002\u0002\u1544\u1545\u0007E\u0002",
+ "\u0002\u1545\u1546\u0007Q\u0002\u0002\u1546\u1547\u0007P\u0002\u0002",
+ "\u1547\u1548\u0007P\u0002\u0002\u1548\u1549\u0007G\u0002\u0002\u1549",
+ "\u154a\u0007E\u0002\u0002\u154a\u154b\u0007V\u0002\u0002\u154b\u154c",
+ "\u0007a\u0002\u0002\u154c\u154d\u0007T\u0002\u0002\u154d\u154e\u0007",
+ "G\u0002\u0002\u154e\u154f\u0007V\u0002\u0002\u154f\u1550\u0007T\u0002",
+ "\u0002\u1550\u1551\u0007[\u0002\u0002\u1551\u0330\u0003\u0002\u0002",
+ "\u0002\u1552\u1553\u0007O\u0002\u0002\u1553\u1554\u0007C\u0002\u0002",
+ "\u1554\u1555\u0007U\u0002\u0002\u1555\u1556\u0007V\u0002\u0002\u1556",
+ "\u1557\u0007G\u0002\u0002\u1557\u1558\u0007T\u0002\u0002\u1558\u1559",
+ "\u0007a\u0002\u0002\u1559\u155a\u0007F\u0002\u0002\u155a\u155b\u0007",
+ "G\u0002\u0002\u155b\u155c\u0007N\u0002\u0002\u155c\u155d\u0007C\u0002",
+ "\u0002\u155d\u155e\u0007[\u0002\u0002\u155e\u0332\u0003\u0002\u0002",
+ "\u0002\u155f\u1560\u0007O\u0002\u0002\u1560\u1561\u0007C\u0002\u0002",
+ "\u1561\u1562\u0007U\u0002\u0002\u1562\u1563\u0007V\u0002\u0002\u1563",
+ "\u1564\u0007G\u0002\u0002\u1564\u1565\u0007T\u0002\u0002\u1565\u1566",
+ "\u0007a\u0002\u0002\u1566\u1567\u0007J\u0002\u0002\u1567\u1568\u0007",
+ "G\u0002\u0002\u1568\u1569\u0007C\u0002\u0002\u1569\u156a\u0007T\u0002",
+ "\u0002\u156a\u156b\u0007V\u0002\u0002\u156b\u156c\u0007D\u0002\u0002",
+ "\u156c\u156d\u0007G\u0002\u0002\u156d\u156e\u0007C\u0002\u0002\u156e",
+ "\u156f\u0007V\u0002\u0002\u156f\u1570\u0007a\u0002\u0002\u1570\u1571",
+ "\u0007R\u0002\u0002\u1571\u1572\u0007G\u0002\u0002\u1572\u1573\u0007",
+ "T\u0002\u0002\u1573\u1574\u0007K\u0002\u0002\u1574\u1575\u0007Q\u0002",
+ "\u0002\u1575\u1576\u0007F\u0002\u0002\u1576\u0334\u0003\u0002\u0002",
+ "\u0002\u1577\u1578\u0007O\u0002\u0002\u1578\u1579\u0007C\u0002\u0002",
+ "\u1579\u157a\u0007U\u0002\u0002\u157a\u157b\u0007V\u0002\u0002\u157b",
+ "\u157c\u0007G\u0002\u0002\u157c\u157d\u0007T\u0002\u0002\u157d\u157e",
+ "\u0007a\u0002\u0002\u157e\u157f\u0007J\u0002\u0002\u157f\u1580\u0007",
+ "Q\u0002\u0002\u1580\u1581\u0007U\u0002\u0002\u1581\u1582\u0007V\u0002",
+ "\u0002\u1582\u0336\u0003\u0002\u0002\u0002\u1583\u1584\u0007O\u0002",
+ "\u0002\u1584\u1585\u0007C\u0002\u0002\u1585\u1586\u0007U\u0002\u0002",
+ "\u1586\u1587\u0007V\u0002\u0002\u1587\u1588\u0007G\u0002\u0002\u1588",
+ "\u1589\u0007T\u0002\u0002\u1589\u158a\u0007a\u0002\u0002\u158a\u158b",
+ "\u0007N\u0002\u0002\u158b\u158c\u0007Q\u0002\u0002\u158c\u158d\u0007",
+ "I\u0002\u0002\u158d\u158e\u0007a\u0002\u0002\u158e\u158f\u0007H\u0002",
+ "\u0002\u158f\u1590\u0007K\u0002\u0002\u1590\u1591\u0007N\u0002\u0002",
+ "\u1591\u1592\u0007G\u0002\u0002\u1592\u0338\u0003\u0002\u0002\u0002",
+ "\u1593\u1594\u0007O\u0002\u0002\u1594\u1595\u0007C\u0002\u0002\u1595",
+ "\u1596\u0007U\u0002\u0002\u1596\u1597\u0007V\u0002\u0002\u1597\u1598",
+ "\u0007G\u0002\u0002\u1598\u1599\u0007T\u0002\u0002\u1599\u159a\u0007",
+ "a\u0002\u0002\u159a\u159b\u0007N\u0002\u0002\u159b\u159c\u0007Q\u0002",
+ "\u0002\u159c\u159d\u0007I\u0002\u0002\u159d\u159e\u0007a\u0002\u0002",
+ "\u159e\u159f\u0007R\u0002\u0002\u159f\u15a0\u0007Q\u0002\u0002\u15a0",
+ "\u15a1\u0007U\u0002\u0002\u15a1\u033a\u0003\u0002\u0002\u0002\u15a2",
+ "\u15a3\u0007O\u0002\u0002\u15a3\u15a4\u0007C\u0002\u0002\u15a4\u15a5",
+ "\u0007U\u0002\u0002\u15a5\u15a6\u0007V\u0002\u0002\u15a6\u15a7\u0007",
+ "G\u0002\u0002\u15a7\u15a8\u0007T\u0002\u0002\u15a8\u15a9\u0007a\u0002",
+ "\u0002\u15a9\u15aa\u0007R\u0002\u0002\u15aa\u15ab\u0007C\u0002\u0002",
+ "\u15ab\u15ac\u0007U\u0002\u0002\u15ac\u15ad\u0007U\u0002\u0002\u15ad",
+ "\u15ae\u0007Y\u0002\u0002\u15ae\u15af\u0007Q\u0002\u0002\u15af\u15b0",
+ "\u0007T\u0002\u0002\u15b0\u15b1\u0007F\u0002\u0002\u15b1\u033c\u0003",
+ "\u0002\u0002\u0002\u15b2\u15b3\u0007O\u0002\u0002\u15b3\u15b4\u0007",
+ "C\u0002\u0002\u15b4\u15b5\u0007U\u0002\u0002\u15b5\u15b6\u0007V\u0002",
+ "\u0002\u15b6\u15b7\u0007G\u0002\u0002\u15b7\u15b8\u0007T\u0002\u0002",
+ "\u15b8\u15b9\u0007a\u0002\u0002\u15b9\u15ba\u0007R\u0002\u0002\u15ba",
+ "\u15bb\u0007Q\u0002\u0002\u15bb\u15bc\u0007T\u0002\u0002\u15bc\u15bd",
+ "\u0007V\u0002\u0002\u15bd\u033e\u0003\u0002\u0002\u0002\u15be\u15bf",
+ "\u0007O\u0002\u0002\u15bf\u15c0\u0007C\u0002\u0002\u15c0\u15c1\u0007",
+ "U\u0002\u0002\u15c1\u15c2\u0007V\u0002\u0002\u15c2\u15c3\u0007G\u0002",
+ "\u0002\u15c3\u15c4\u0007T\u0002\u0002\u15c4\u15c5\u0007a\u0002\u0002",
+ "\u15c5\u15c6\u0007T\u0002\u0002\u15c6\u15c7\u0007G\u0002\u0002\u15c7",
+ "\u15c8\u0007V\u0002\u0002\u15c8\u15c9\u0007T\u0002\u0002\u15c9\u15ca",
+ "\u0007[\u0002\u0002\u15ca\u15cb\u0007a\u0002\u0002\u15cb\u15cc\u0007",
+ "E\u0002\u0002\u15cc\u15cd\u0007Q\u0002\u0002\u15cd\u15ce\u0007W\u0002",
+ "\u0002\u15ce\u15cf\u0007P\u0002\u0002\u15cf\u15d0\u0007V\u0002\u0002",
+ "\u15d0\u0340\u0003\u0002\u0002\u0002\u15d1\u15d2\u0007O\u0002\u0002",
+ "\u15d2\u15d3\u0007C\u0002\u0002\u15d3\u15d4\u0007U\u0002\u0002\u15d4",
+ "\u15d5\u0007V\u0002\u0002\u15d5\u15d6\u0007G\u0002\u0002\u15d6\u15d7",
+ "\u0007T\u0002\u0002\u15d7\u15d8\u0007a\u0002\u0002\u15d8\u15d9\u0007",
+ "U\u0002\u0002\u15d9\u15da\u0007U\u0002\u0002\u15da\u15db\u0007N\u0002",
+ "\u0002\u15db\u0342\u0003\u0002\u0002\u0002\u15dc\u15dd\u0007O\u0002",
+ "\u0002\u15dd\u15de\u0007C\u0002\u0002\u15de\u15df\u0007U\u0002\u0002",
+ "\u15df\u15e0\u0007V\u0002\u0002\u15e0\u15e1\u0007G\u0002\u0002\u15e1",
+ "\u15e2\u0007T\u0002\u0002\u15e2\u15e3\u0007a\u0002\u0002\u15e3\u15e4",
+ "\u0007U\u0002\u0002\u15e4\u15e5\u0007U\u0002\u0002\u15e5\u15e6\u0007",
+ "N\u0002\u0002\u15e6\u15e7\u0007a\u0002\u0002\u15e7\u15e8\u0007E\u0002",
+ "\u0002\u15e8\u15e9\u0007C\u0002\u0002\u15e9\u0344\u0003\u0002\u0002",
+ "\u0002\u15ea\u15eb\u0007O\u0002\u0002\u15eb\u15ec\u0007C\u0002\u0002",
+ "\u15ec\u15ed\u0007U\u0002\u0002\u15ed\u15ee\u0007V\u0002\u0002\u15ee",
+ "\u15ef\u0007G\u0002\u0002\u15ef\u15f0\u0007T\u0002\u0002\u15f0\u15f1",
+ "\u0007a\u0002\u0002\u15f1\u15f2\u0007U\u0002\u0002\u15f2\u15f3\u0007",
+ "U\u0002\u0002\u15f3\u15f4\u0007N\u0002\u0002\u15f4\u15f5\u0007a\u0002",
+ "\u0002\u15f5\u15f6\u0007E\u0002\u0002\u15f6\u15f7\u0007C\u0002\u0002",
+ "\u15f7\u15f8\u0007R\u0002\u0002\u15f8\u15f9\u0007C\u0002\u0002\u15f9",
+ "\u15fa\u0007V\u0002\u0002\u15fa\u15fb\u0007J\u0002\u0002\u15fb\u0346",
+ "\u0003\u0002\u0002\u0002\u15fc\u15fd\u0007O\u0002\u0002\u15fd\u15fe",
+ "\u0007C\u0002\u0002\u15fe\u15ff\u0007U\u0002\u0002\u15ff\u1600\u0007",
+ "V\u0002\u0002\u1600\u1601\u0007G\u0002\u0002\u1601\u1602\u0007T\u0002",
+ "\u0002\u1602\u1603\u0007a\u0002\u0002\u1603\u1604\u0007U\u0002\u0002",
+ "\u1604\u1605\u0007U\u0002\u0002\u1605\u1606\u0007N\u0002\u0002\u1606",
+ "\u1607\u0007a\u0002\u0002\u1607\u1608\u0007E\u0002\u0002\u1608\u1609",
+ "\u0007G\u0002\u0002\u1609\u160a\u0007T\u0002\u0002\u160a\u160b\u0007",
+ "V\u0002\u0002\u160b\u0348\u0003\u0002\u0002\u0002\u160c\u160d\u0007",
+ "O\u0002\u0002\u160d\u160e\u0007C\u0002\u0002\u160e\u160f\u0007U\u0002",
+ "\u0002\u160f\u1610\u0007V\u0002\u0002\u1610\u1611\u0007G\u0002\u0002",
+ "\u1611\u1612\u0007T\u0002\u0002\u1612\u1613\u0007a\u0002\u0002\u1613",
+ "\u1614\u0007U\u0002\u0002\u1614\u1615\u0007U\u0002\u0002\u1615\u1616",
+ "\u0007N\u0002\u0002\u1616\u1617\u0007a\u0002\u0002\u1617\u1618\u0007",
+ "E\u0002\u0002\u1618\u1619\u0007K\u0002\u0002\u1619\u161a\u0007R\u0002",
+ "\u0002\u161a\u161b\u0007J\u0002\u0002\u161b\u161c\u0007G\u0002\u0002",
+ "\u161c\u161d\u0007T\u0002\u0002\u161d\u034a\u0003\u0002\u0002\u0002",
+ "\u161e\u161f\u0007O\u0002\u0002\u161f\u1620\u0007C\u0002\u0002\u1620",
+ "\u1621\u0007U\u0002\u0002\u1621\u1622\u0007V\u0002\u0002\u1622\u1623",
+ "\u0007G\u0002\u0002\u1623\u1624\u0007T\u0002\u0002\u1624\u1625\u0007",
+ "a\u0002\u0002\u1625\u1626\u0007U\u0002\u0002\u1626\u1627\u0007U\u0002",
+ "\u0002\u1627\u1628\u0007N\u0002\u0002\u1628\u1629\u0007a\u0002\u0002",
+ "\u1629\u162a\u0007E\u0002\u0002\u162a\u162b\u0007T\u0002\u0002\u162b",
+ "\u162c\u0007N\u0002\u0002\u162c\u034c\u0003\u0002\u0002\u0002\u162d",
+ "\u162e\u0007O\u0002\u0002\u162e\u162f\u0007C\u0002\u0002\u162f\u1630",
+ "\u0007U\u0002\u0002\u1630\u1631\u0007V\u0002\u0002\u1631\u1632\u0007",
+ "G\u0002\u0002\u1632\u1633\u0007T\u0002\u0002\u1633\u1634\u0007a\u0002",
+ "\u0002\u1634\u1635\u0007U\u0002\u0002\u1635\u1636\u0007U\u0002\u0002",
+ "\u1636\u1637\u0007N\u0002\u0002\u1637\u1638\u0007a\u0002\u0002\u1638",
+ "\u1639\u0007E\u0002\u0002\u1639\u163a\u0007T\u0002\u0002\u163a\u163b",
+ "\u0007N\u0002\u0002\u163b\u163c\u0007R\u0002\u0002\u163c\u163d\u0007",
+ "C\u0002\u0002\u163d\u163e\u0007V\u0002\u0002\u163e\u163f\u0007J\u0002",
+ "\u0002\u163f\u034e\u0003\u0002\u0002\u0002\u1640\u1641\u0007O\u0002",
+ "\u0002\u1641\u1642\u0007C\u0002\u0002\u1642\u1643\u0007U\u0002\u0002",
+ "\u1643\u1644\u0007V\u0002\u0002\u1644\u1645\u0007G\u0002\u0002\u1645",
+ "\u1646\u0007T\u0002\u0002\u1646\u1647\u0007a\u0002\u0002\u1647\u1648",
+ "\u0007U\u0002\u0002\u1648\u1649\u0007U\u0002\u0002\u1649\u164a\u0007",
+ "N\u0002\u0002\u164a\u164b\u0007a\u0002\u0002\u164b\u164c\u0007M\u0002",
+ "\u0002\u164c\u164d\u0007G\u0002\u0002\u164d\u164e\u0007[\u0002\u0002",
+ "\u164e\u0350\u0003\u0002\u0002\u0002\u164f\u1650\u0007O\u0002\u0002",
+ "\u1650\u1651\u0007C\u0002\u0002\u1651\u1652\u0007U\u0002\u0002\u1652",
+ "\u1653\u0007V\u0002\u0002\u1653\u1654\u0007G\u0002\u0002\u1654\u1655",
+ "\u0007T\u0002\u0002\u1655\u1656\u0007a\u0002\u0002\u1656\u1657\u0007",
+ "V\u0002\u0002\u1657\u1658\u0007N\u0002\u0002\u1658\u1659\u0007U\u0002",
+ "\u0002\u1659\u165a\u0007a\u0002\u0002\u165a\u165b\u0007X\u0002\u0002",
+ "\u165b\u165c\u0007G\u0002\u0002\u165c\u165d\u0007T\u0002\u0002\u165d",
+ "\u165e\u0007U\u0002\u0002\u165e\u165f\u0007K\u0002\u0002\u165f\u1660",
+ "\u0007Q\u0002\u0002\u1660\u1661\u0007P\u0002\u0002\u1661\u0352\u0003",
+ "\u0002\u0002\u0002\u1662\u1663\u0007O\u0002\u0002\u1663\u1664\u0007",
+ "C\u0002\u0002\u1664\u1665\u0007U\u0002\u0002\u1665\u1666\u0007V\u0002",
+ "\u0002\u1666\u1667\u0007G\u0002\u0002\u1667\u1668\u0007T\u0002\u0002",
+ "\u1668\u1669\u0007a\u0002\u0002\u1669\u166a\u0007W\u0002\u0002\u166a",
+ "\u166b\u0007U\u0002\u0002\u166b\u166c\u0007G\u0002\u0002\u166c\u166d",
+ "\u0007T\u0002\u0002\u166d\u0354\u0003\u0002\u0002\u0002\u166e\u166f",
+ "\u0007O\u0002\u0002\u166f\u1670\u0007C\u0002\u0002\u1670\u1671\u0007",
+ "Z\u0002\u0002\u1671\u1672\u0007a\u0002\u0002\u1672\u1673\u0007E\u0002",
+ "\u0002\u1673\u1674\u0007Q\u0002\u0002\u1674\u1675\u0007P\u0002\u0002",
+ "\u1675\u1676\u0007P\u0002\u0002\u1676\u1677\u0007G\u0002\u0002\u1677",
+ "\u1678\u0007E\u0002\u0002\u1678\u1679\u0007V\u0002\u0002\u1679\u167a",
+ "\u0007K\u0002\u0002\u167a\u167b\u0007Q\u0002\u0002\u167b\u167c\u0007",
+ "P\u0002\u0002\u167c\u167d\u0007U\u0002\u0002\u167d\u167e\u0007a\u0002",
+ "\u0002\u167e\u167f\u0007R\u0002\u0002\u167f\u1680\u0007G\u0002\u0002",
+ "\u1680\u1681\u0007T\u0002\u0002\u1681\u1682\u0007a\u0002\u0002\u1682",
+ "\u1683\u0007J\u0002\u0002\u1683\u1684\u0007Q\u0002\u0002\u1684\u1685",
+ "\u0007W\u0002\u0002\u1685\u1686\u0007T\u0002\u0002\u1686\u0356\u0003",
+ "\u0002\u0002\u0002\u1687\u1688\u0007O\u0002\u0002\u1688\u1689\u0007",
+ "C\u0002\u0002\u1689\u168a\u0007Z\u0002\u0002\u168a\u168b\u0007a\u0002",
+ "\u0002\u168b\u168c\u0007S\u0002\u0002\u168c\u168d\u0007W\u0002\u0002",
+ "\u168d\u168e\u0007G\u0002\u0002\u168e\u168f\u0007T\u0002\u0002\u168f",
+ "\u1690\u0007K\u0002\u0002\u1690\u1691\u0007G\u0002\u0002\u1691\u1692",
+ "\u0007U\u0002\u0002\u1692\u1693\u0007a\u0002\u0002\u1693\u1694\u0007",
+ "R\u0002\u0002\u1694\u1695\u0007G\u0002\u0002\u1695\u1696\u0007T\u0002",
+ "\u0002\u1696\u1697\u0007a\u0002\u0002\u1697\u1698\u0007J\u0002\u0002",
+ "\u1698\u1699\u0007Q\u0002\u0002\u1699\u169a\u0007W\u0002\u0002\u169a",
+ "\u169b\u0007T\u0002\u0002\u169b\u0358\u0003\u0002\u0002\u0002\u169c",
+ "\u169d\u0007O\u0002\u0002\u169d\u169e\u0007C\u0002\u0002\u169e\u169f",
+ "\u0007Z\u0002\u0002\u169f\u16a0\u0007a\u0002\u0002\u16a0\u16a1\u0007",
+ "T\u0002\u0002\u16a1\u16a2\u0007Q\u0002\u0002\u16a2\u16a3\u0007Y\u0002",
+ "\u0002\u16a3\u16a4\u0007U\u0002\u0002\u16a4\u035a\u0003\u0002\u0002",
+ "\u0002\u16a5\u16a6\u0007O\u0002\u0002\u16a6\u16a7\u0007C\u0002\u0002",
+ "\u16a7\u16a8\u0007Z\u0002\u0002\u16a8\u16a9\u0007a\u0002\u0002\u16a9",
+ "\u16aa\u0007U\u0002\u0002\u16aa\u16ab\u0007K\u0002\u0002\u16ab\u16ac",
+ "\u0007\\\u0002\u0002\u16ac\u16ad\u0007G\u0002\u0002\u16ad\u035c\u0003",
+ "\u0002\u0002\u0002\u16ae\u16af\u0007O\u0002\u0002\u16af\u16b0\u0007",
+ "C\u0002\u0002\u16b0\u16b1\u0007Z\u0002\u0002\u16b1\u16b2\u0007a\u0002",
+ "\u0002\u16b2\u16b3\u0007W\u0002\u0002\u16b3\u16b4\u0007R\u0002\u0002",
+ "\u16b4\u16b5\u0007F\u0002\u0002\u16b5\u16b6\u0007C\u0002\u0002\u16b6",
+ "\u16b7\u0007V\u0002\u0002\u16b7\u16b8\u0007G\u0002\u0002\u16b8\u16b9",
+ "\u0007U\u0002\u0002\u16b9\u16ba\u0007a\u0002\u0002\u16ba\u16bb\u0007",
+ "R\u0002\u0002\u16bb\u16bc\u0007G\u0002\u0002\u16bc\u16bd\u0007T\u0002",
+ "\u0002\u16bd\u16be\u0007a\u0002\u0002\u16be\u16bf\u0007J\u0002\u0002",
+ "\u16bf\u16c0\u0007Q\u0002\u0002\u16c0\u16c1\u0007W\u0002\u0002\u16c1",
+ "\u16c2\u0007T\u0002\u0002\u16c2\u035e\u0003\u0002\u0002\u0002\u16c3",
+ "\u16c4\u0007O\u0002\u0002\u16c4\u16c5\u0007C\u0002\u0002\u16c5\u16c6",
+ "\u0007Z\u0002\u0002\u16c6\u16c7\u0007a\u0002\u0002\u16c7\u16c8\u0007",
+ "W\u0002\u0002\u16c8\u16c9\u0007U\u0002\u0002\u16c9\u16ca\u0007G\u0002",
+ "\u0002\u16ca\u16cb\u0007T\u0002\u0002\u16cb\u16cc\u0007a\u0002\u0002",
+ "\u16cc\u16cd\u0007E\u0002\u0002\u16cd\u16ce\u0007Q\u0002\u0002\u16ce",
+ "\u16cf\u0007P\u0002\u0002\u16cf\u16d0\u0007P\u0002\u0002\u16d0\u16d1",
+ "\u0007G\u0002\u0002\u16d1\u16d2\u0007E\u0002\u0002\u16d2\u16d3\u0007",
+ "V\u0002\u0002\u16d3\u16d4\u0007K\u0002\u0002\u16d4\u16d5\u0007Q\u0002",
+ "\u0002\u16d5\u16d6\u0007P\u0002\u0002\u16d6\u16d7\u0007U\u0002\u0002",
+ "\u16d7\u0360\u0003\u0002\u0002\u0002\u16d8\u16d9\u0007O\u0002\u0002",
+ "\u16d9\u16da\u0007G\u0002\u0002\u16da\u16db\u0007F\u0002\u0002\u16db",
+ "\u16dc\u0007K\u0002\u0002\u16dc\u16dd\u0007W\u0002\u0002\u16dd\u16de",
+ "\u0007O\u0002\u0002\u16de\u0362\u0003\u0002\u0002\u0002\u16df\u16e0",
+ "\u0007O\u0002\u0002\u16e0\u16e1\u0007G\u0002\u0002\u16e1\u16e2\u0007",
+ "T\u0002\u0002\u16e2\u16e3\u0007I\u0002\u0002\u16e3\u16e4\u0007G\u0002",
+ "\u0002\u16e4\u0364\u0003\u0002\u0002\u0002\u16e5\u16e6\u0007O\u0002",
+ "\u0002\u16e6\u16e7\u0007G\u0002\u0002\u16e7\u16e8\u0007U\u0002\u0002",
+ "\u16e8\u16e9\u0007U\u0002\u0002\u16e9\u16ea\u0007C\u0002\u0002\u16ea",
+ "\u16eb\u0007I\u0002\u0002\u16eb\u16ec\u0007G\u0002\u0002\u16ec\u16ed",
+ "\u0007a\u0002\u0002\u16ed\u16ee\u0007V\u0002\u0002\u16ee\u16ef\u0007",
+ "G\u0002\u0002\u16ef\u16f0\u0007Z\u0002\u0002\u16f0\u16f1\u0007V\u0002",
+ "\u0002\u16f1\u0366\u0003\u0002\u0002\u0002\u16f2\u16f3\u0007O\u0002",
+ "\u0002\u16f3\u16f4\u0007K\u0002\u0002\u16f4\u16f5\u0007F\u0002\u0002",
+ "\u16f5\u0368\u0003\u0002\u0002\u0002\u16f6\u16f7\u0007O\u0002\u0002",
+ "\u16f7\u16f8\u0007K\u0002\u0002\u16f8\u16f9\u0007I\u0002\u0002\u16f9",
+ "\u16fa\u0007T\u0002\u0002\u16fa\u16fb\u0007C\u0002\u0002\u16fb\u16fc",
+ "\u0007V\u0002\u0002\u16fc\u16fd\u0007G\u0002\u0002\u16fd\u036a\u0003",
+ "\u0002\u0002\u0002\u16fe\u16ff\u0007O\u0002\u0002\u16ff\u1700\u0007",
+ "K\u0002\u0002\u1700\u1701\u0007P\u0002\u0002\u1701\u1702\u0007a\u0002",
+ "\u0002\u1702\u1703\u0007T\u0002\u0002\u1703\u1704\u0007Q\u0002\u0002",
+ "\u1704\u1705\u0007Y\u0002\u0002\u1705\u1706\u0007U\u0002\u0002\u1706",
+ "\u036c\u0003\u0002\u0002\u0002\u1707\u1708\u0007O\u0002\u0002\u1708",
+ "\u1709\u0007Q\u0002\u0002\u1709\u170a\u0007F\u0002\u0002\u170a\u170b",
+ "\u0007G\u0002\u0002\u170b\u036e\u0003\u0002\u0002\u0002\u170c\u170d",
+ "\u0007O\u0002\u0002\u170d\u170e\u0007Q\u0002\u0002\u170e\u170f\u0007",
+ "F\u0002\u0002\u170f\u1710\u0007K\u0002\u0002\u1710\u1711\u0007H\u0002",
+ "\u0002\u1711\u1712\u0007[\u0002\u0002\u1712\u0370\u0003\u0002\u0002",
+ "\u0002\u1713\u1714\u0007O\u0002\u0002\u1714\u1715\u0007W\u0002\u0002",
+ "\u1715\u1716\u0007V\u0002\u0002\u1716\u1717\u0007G\u0002\u0002\u1717",
+ "\u1718\u0007Z\u0002\u0002\u1718\u0372\u0003\u0002\u0002\u0002\u1719",
+ "\u171a\u0007O\u0002\u0002\u171a\u171b\u0007[\u0002\u0002\u171b\u171c",
+ "\u0007U\u0002\u0002\u171c\u171d\u0007S\u0002\u0002\u171d\u171e\u0007",
+ "N\u0002\u0002\u171e\u0374\u0003\u0002\u0002\u0002\u171f\u1720\u0007",
+ "O\u0002\u0002\u1720\u1721\u0007[\u0002\u0002\u1721\u1722\u0007U\u0002",
+ "\u0002\u1722\u1723\u0007S\u0002\u0002\u1723\u1724\u0007N\u0002\u0002",
+ "\u1724\u1725\u0007a\u0002\u0002\u1725\u1726\u0007G\u0002\u0002\u1726",
+ "\u1727\u0007T\u0002\u0002\u1727\u1728\u0007T\u0002\u0002\u1728\u1729",
+ "\u0007P\u0002\u0002\u1729\u172a\u0007Q\u0002\u0002\u172a\u0376\u0003",
+ "\u0002\u0002\u0002\u172b\u172c\u0007P\u0002\u0002\u172c\u172d\u0007",
+ "C\u0002\u0002\u172d\u172e\u0007O\u0002\u0002\u172e\u172f\u0007G\u0002",
+ "\u0002\u172f\u0378\u0003\u0002\u0002\u0002\u1730\u1731\u0007P\u0002",
+ "\u0002\u1731\u1732\u0007C\u0002\u0002\u1732\u1733\u0007O\u0002\u0002",
+ "\u1733\u1734\u0007G\u0002\u0002\u1734\u1735\u0007U\u0002\u0002\u1735",
+ "\u037a\u0003\u0002\u0002\u0002\u1736\u1737\u0007P\u0002\u0002\u1737",
+ "\u1738\u0007E\u0002\u0002\u1738\u1739\u0007J\u0002\u0002\u1739\u173a",
+ "\u0007C\u0002\u0002\u173a\u173b\u0007T\u0002\u0002\u173b\u037c\u0003",
+ "\u0002\u0002\u0002\u173c\u173d\u0007P\u0002\u0002\u173d\u173e\u0007",
+ "G\u0002\u0002\u173e\u173f\u0007X\u0002\u0002\u173f\u1740\u0007G\u0002",
+ "\u0002\u1740\u1741\u0007T\u0002\u0002\u1741\u037e\u0003\u0002\u0002",
+ "\u0002\u1742\u1743\u0007P\u0002\u0002\u1743\u1744\u0007G\u0002\u0002",
+ "\u1744\u1745\u0007Z\u0002\u0002\u1745\u1746\u0007V\u0002\u0002\u1746",
+ "\u0380\u0003\u0002\u0002\u0002\u1747\u1748\u0007P\u0002\u0002\u1748",
+ "\u1749\u0007Q\u0002\u0002\u1749\u0382\u0003\u0002\u0002\u0002\u174a",
+ "\u174b\u0007P\u0002\u0002\u174b\u174c\u0007Q\u0002\u0002\u174c\u174d",
+ "\u0007F\u0002\u0002\u174d\u174e\u0007G\u0002\u0002\u174e\u174f\u0007",
+ "I\u0002\u0002\u174f\u1750\u0007T\u0002\u0002\u1750\u1751\u0007Q\u0002",
+ "\u0002\u1751\u1752\u0007W\u0002\u0002\u1752\u1753\u0007R\u0002\u0002",
+ "\u1753\u0384\u0003\u0002\u0002\u0002\u1754\u1755\u0007P\u0002\u0002",
+ "\u1755\u1756\u0007Q\u0002\u0002\u1756\u1757\u0007P\u0002\u0002\u1757",
+ "\u1758\u0007G\u0002\u0002\u1758\u0386\u0003\u0002\u0002\u0002\u1759",
+ "\u175a\u0007Q\u0002\u0002\u175a\u175b\u0007H\u0002\u0002\u175b\u175c",
+ "\u0007H\u0002\u0002\u175c\u175d\u0007N\u0002\u0002\u175d\u175e\u0007",
+ "K\u0002\u0002\u175e\u175f\u0007P\u0002\u0002\u175f\u1760\u0007G\u0002",
+ "\u0002\u1760\u0388\u0003\u0002\u0002\u0002\u1761\u1762\u0007Q\u0002",
+ "\u0002\u1762\u1763\u0007H\u0002\u0002\u1763\u1764\u0007H\u0002\u0002",
+ "\u1764\u1765\u0007U\u0002\u0002\u1765\u1766\u0007G\u0002\u0002\u1766",
+ "\u1767\u0007V\u0002\u0002\u1767\u038a\u0003\u0002\u0002\u0002\u1768",
+ "\u1769\u0007Q\u0002\u0002\u1769\u176a\u0007L\u0002\u0002\u176a\u038c",
+ "\u0003\u0002\u0002\u0002\u176b\u176c\u0007Q\u0002\u0002\u176c\u176d",
+ "\u0007N\u0002\u0002\u176d\u176e\u0007F\u0002\u0002\u176e\u176f\u0007",
+ "a\u0002\u0002\u176f\u1770\u0007R\u0002\u0002\u1770\u1771\u0007C\u0002",
+ "\u0002\u1771\u1772\u0007U\u0002\u0002\u1772\u1773\u0007U\u0002\u0002",
+ "\u1773\u1774\u0007Y\u0002\u0002\u1774\u1775\u0007Q\u0002\u0002\u1775",
+ "\u1776\u0007T\u0002\u0002\u1776\u1777\u0007F\u0002\u0002\u1777\u038e",
+ "\u0003\u0002\u0002\u0002\u1778\u1779\u0007Q\u0002\u0002\u1779\u177a",
+ "\u0007P\u0002\u0002\u177a\u177b\u0007G\u0002\u0002\u177b\u0390\u0003",
+ "\u0002\u0002\u0002\u177c\u177d\u0007Q\u0002\u0002\u177d\u177e\u0007",
+ "P\u0002\u0002\u177e\u177f\u0007N\u0002\u0002\u177f\u1780\u0007K\u0002",
+ "\u0002\u1780\u1781\u0007P\u0002\u0002\u1781\u1782\u0007G\u0002\u0002",
+ "\u1782\u0392\u0003\u0002\u0002\u0002\u1783\u1784\u0007Q\u0002\u0002",
+ "\u1784\u1785\u0007P\u0002\u0002\u1785\u1786\u0007N\u0002\u0002\u1786",
+ "\u1787\u0007[\u0002\u0002\u1787\u0394\u0003\u0002\u0002\u0002\u1788",
+ "\u1789\u0007Q\u0002\u0002\u1789\u178a\u0007R\u0002\u0002\u178a\u178b",
+ "\u0007G\u0002\u0002\u178b\u178c\u0007P\u0002\u0002\u178c\u0396\u0003",
+ "\u0002\u0002\u0002\u178d\u178e\u0007Q\u0002\u0002\u178e\u178f\u0007",
+ "R\u0002\u0002\u178f\u1790\u0007V\u0002\u0002\u1790\u1791\u0007K\u0002",
+ "\u0002\u1791\u1792\u0007O\u0002\u0002\u1792\u1793\u0007K\u0002\u0002",
+ "\u1793\u1794\u0007\\\u0002\u0002\u1794\u1795\u0007G\u0002\u0002\u1795",
+ "\u1796\u0007T\u0002\u0002\u1796\u1797\u0007a\u0002\u0002\u1797\u1798",
+ "\u0007E\u0002\u0002\u1798\u1799\u0007Q\u0002\u0002\u1799\u179a\u0007",
+ "U\u0002\u0002\u179a\u179b\u0007V\u0002\u0002\u179b\u179c\u0007U\u0002",
+ "\u0002\u179c\u0398\u0003\u0002\u0002\u0002\u179d\u179e\u0007Q\u0002",
+ "\u0002\u179e\u179f\u0007R\u0002\u0002\u179f\u17a0\u0007V\u0002\u0002",
+ "\u17a0\u17a1\u0007K\u0002\u0002\u17a1\u17a2\u0007Q\u0002\u0002\u17a2",
+ "\u17a3\u0007P\u0002\u0002\u17a3\u17a4\u0007U\u0002\u0002\u17a4\u039a",
+ "\u0003\u0002\u0002\u0002\u17a5\u17a6\u0007Q\u0002\u0002\u17a6\u17a7",
+ "\u0007Y\u0002\u0002\u17a7\u17a8\u0007P\u0002\u0002\u17a8\u17a9\u0007",
+ "G\u0002\u0002\u17a9\u17aa\u0007T\u0002\u0002\u17aa\u039c\u0003\u0002",
+ "\u0002\u0002\u17ab\u17ac\u0007R\u0002\u0002\u17ac\u17ad\u0007C\u0002",
+ "\u0002\u17ad\u17ae\u0007E\u0002\u0002\u17ae\u17af\u0007M\u0002\u0002",
+ "\u17af\u17b0\u0007a\u0002\u0002\u17b0\u17b1\u0007M\u0002\u0002\u17b1",
+ "\u17b2\u0007G\u0002\u0002\u17b2\u17b3\u0007[\u0002\u0002\u17b3\u17b4",
+ "\u0007U\u0002\u0002\u17b4\u039e\u0003\u0002\u0002\u0002\u17b5\u17b6",
+ "\u0007R\u0002\u0002\u17b6\u17b7\u0007C\u0002\u0002\u17b7\u17b8\u0007",
+ "I\u0002\u0002\u17b8\u17b9\u0007G\u0002\u0002\u17b9\u03a0\u0003\u0002",
+ "\u0002\u0002\u17ba\u17bb\u0007R\u0002\u0002\u17bb\u17bc\u0007C\u0002",
+ "\u0002\u17bc\u17bd\u0007T\u0002\u0002\u17bd\u17be\u0007U\u0002\u0002",
+ "\u17be\u17bf\u0007G\u0002\u0002\u17bf\u17c0\u0007T\u0002\u0002\u17c0",
+ "\u03a2\u0003\u0002\u0002\u0002\u17c1\u17c2\u0007R\u0002\u0002\u17c2",
+ "\u17c3\u0007C\u0002\u0002\u17c3\u17c4\u0007T\u0002\u0002\u17c4\u17c5",
+ "\u0007V\u0002\u0002\u17c5\u17c6\u0007K\u0002\u0002\u17c6\u17c7\u0007",
+ "C\u0002\u0002\u17c7\u17c8\u0007N\u0002\u0002\u17c8\u03a4\u0003\u0002",
+ "\u0002\u0002\u17c9\u17ca\u0007R\u0002\u0002\u17ca\u17cb\u0007C\u0002",
+ "\u0002\u17cb\u17cc\u0007T\u0002\u0002\u17cc\u17cd\u0007V\u0002\u0002",
+ "\u17cd\u17ce\u0007K\u0002\u0002\u17ce\u17cf\u0007V\u0002\u0002\u17cf",
+ "\u17d0\u0007K\u0002\u0002\u17d0\u17d1\u0007Q\u0002\u0002\u17d1\u17d2",
+ "\u0007P\u0002\u0002\u17d2\u17d3\u0007K\u0002\u0002\u17d3\u17d4\u0007",
+ "P\u0002\u0002\u17d4\u17d5\u0007I\u0002\u0002\u17d5\u03a6\u0003\u0002",
+ "\u0002\u0002\u17d6\u17d7\u0007R\u0002\u0002\u17d7\u17d8\u0007C\u0002",
+ "\u0002\u17d8\u17d9\u0007T\u0002\u0002\u17d9\u17da\u0007V\u0002\u0002",
+ "\u17da\u17db\u0007K\u0002\u0002\u17db\u17dc\u0007V\u0002\u0002\u17dc",
+ "\u17dd\u0007K\u0002\u0002\u17dd\u17de\u0007Q\u0002\u0002\u17de\u17df",
+ "\u0007P\u0002\u0002\u17df\u17e0\u0007U\u0002\u0002\u17e0\u03a8\u0003",
+ "\u0002\u0002\u0002\u17e1\u17e2\u0007R\u0002\u0002\u17e2\u17e3\u0007",
+ "C\u0002\u0002\u17e3\u17e4\u0007U\u0002\u0002\u17e4\u17e5\u0007U\u0002",
+ "\u0002\u17e5\u17e6\u0007Y\u0002\u0002\u17e6\u17e7\u0007Q\u0002\u0002",
+ "\u17e7\u17e8\u0007T\u0002\u0002\u17e8\u17e9\u0007F\u0002\u0002\u17e9",
+ "\u03aa\u0003\u0002\u0002\u0002\u17ea\u17eb\u0007R\u0002\u0002\u17eb",
+ "\u17ec\u0007J\u0002\u0002\u17ec\u17ed\u0007C\u0002\u0002\u17ed\u17ee",
+ "\u0007U\u0002\u0002\u17ee\u17ef\u0007G\u0002\u0002\u17ef\u03ac\u0003",
+ "\u0002\u0002\u0002\u17f0\u17f1\u0007R\u0002\u0002\u17f1\u17f2\u0007",
+ "N\u0002\u0002\u17f2\u17f3\u0007W\u0002\u0002\u17f3\u17f4\u0007I\u0002",
+ "\u0002\u17f4\u17f5\u0007K\u0002\u0002\u17f5\u17f6\u0007P\u0002\u0002",
+ "\u17f6\u03ae\u0003\u0002\u0002\u0002\u17f7\u17f8\u0007R\u0002\u0002",
+ "\u17f8\u17f9\u0007N\u0002\u0002\u17f9\u17fa\u0007W\u0002\u0002\u17fa",
+ "\u17fb\u0007I\u0002\u0002\u17fb\u17fc\u0007K\u0002\u0002\u17fc\u17fd",
+ "\u0007P\u0002\u0002\u17fd\u17fe\u0007a\u0002\u0002\u17fe\u17ff\u0007",
+ "F\u0002\u0002\u17ff\u1800\u0007K\u0002\u0002\u1800\u1801\u0007T\u0002",
+ "\u0002\u1801\u03b0\u0003\u0002\u0002\u0002\u1802\u1803\u0007R\u0002",
+ "\u0002\u1803\u1804\u0007N\u0002\u0002\u1804\u1805\u0007W\u0002\u0002",
+ "\u1805\u1806\u0007I\u0002\u0002\u1806\u1807\u0007K\u0002\u0002\u1807",
+ "\u1808\u0007P\u0002\u0002\u1808\u1809\u0007U\u0002\u0002\u1809\u03b2",
+ "\u0003\u0002\u0002\u0002\u180a\u180b\u0007R\u0002\u0002\u180b\u180c",
+ "\u0007Q\u0002\u0002\u180c\u180d\u0007T\u0002\u0002\u180d\u180e\u0007",
+ "V\u0002\u0002\u180e\u03b4\u0003\u0002\u0002\u0002\u180f\u1810\u0007",
+ "R\u0002\u0002\u1810\u1811\u0007T\u0002\u0002\u1811\u1812\u0007G\u0002",
+ "\u0002\u1812\u1813\u0007E\u0002\u0002\u1813\u1814\u0007G\u0002\u0002",
+ "\u1814\u1815\u0007F\u0002\u0002\u1815\u1816\u0007G\u0002\u0002\u1816",
+ "\u1817\u0007U\u0002\u0002\u1817\u03b6\u0003\u0002\u0002\u0002\u1818",
+ "\u1819\u0007R\u0002\u0002\u1819\u181a\u0007T\u0002\u0002\u181a\u181b",
+ "\u0007G\u0002\u0002\u181b\u181c\u0007R\u0002\u0002\u181c\u181d\u0007",
+ "C\u0002\u0002\u181d\u181e\u0007T\u0002\u0002\u181e\u181f\u0007G\u0002",
+ "\u0002\u181f\u03b8\u0003\u0002\u0002\u0002\u1820\u1821\u0007R\u0002",
+ "\u0002\u1821\u1822\u0007T\u0002\u0002\u1822\u1823\u0007G\u0002\u0002",
+ "\u1823\u1824\u0007U\u0002\u0002\u1824\u1825\u0007G\u0002\u0002\u1825",
+ "\u1826\u0007T\u0002\u0002\u1826\u1827\u0007X\u0002\u0002\u1827\u1828",
+ "\u0007G\u0002\u0002\u1828\u03ba\u0003\u0002\u0002\u0002\u1829\u182a",
+ "\u0007R\u0002\u0002\u182a\u182b\u0007T\u0002\u0002\u182b\u182c\u0007",
+ "G\u0002\u0002\u182c\u182d\u0007X\u0002\u0002\u182d\u03bc\u0003\u0002",
+ "\u0002\u0002\u182e\u182f\u0007R\u0002\u0002\u182f\u1830\u0007T\u0002",
+ "\u0002\u1830\u1831\u0007Q\u0002\u0002\u1831\u1832\u0007E\u0002\u0002",
+ "\u1832\u1833\u0007G\u0002\u0002\u1833\u1834\u0007U\u0002\u0002\u1834",
+ "\u1835\u0007U\u0002\u0002\u1835\u1836\u0007N\u0002\u0002\u1836\u1837",
+ "\u0007K\u0002\u0002\u1837\u1838\u0007U\u0002\u0002\u1838\u1839\u0007",
+ "V\u0002\u0002\u1839\u03be\u0003\u0002\u0002\u0002\u183a\u183b\u0007",
+ "R\u0002\u0002\u183b\u183c\u0007T\u0002\u0002\u183c\u183d\u0007Q\u0002",
+ "\u0002\u183d\u183e\u0007H\u0002\u0002\u183e\u183f\u0007K\u0002\u0002",
+ "\u183f\u1840\u0007N\u0002\u0002\u1840\u1841\u0007G\u0002\u0002\u1841",
+ "\u03c0\u0003\u0002\u0002\u0002\u1842\u1843\u0007R\u0002\u0002\u1843",
+ "\u1844\u0007T\u0002\u0002\u1844\u1845\u0007Q\u0002\u0002\u1845\u1846",
+ "\u0007H\u0002\u0002\u1846\u1847\u0007K\u0002\u0002\u1847\u1848\u0007",
+ "N\u0002\u0002\u1848\u1849\u0007G\u0002\u0002\u1849\u184a\u0007U\u0002",
+ "\u0002\u184a\u03c2\u0003\u0002\u0002\u0002\u184b\u184c\u0007R\u0002",
+ "\u0002\u184c\u184d\u0007T\u0002\u0002\u184d\u184e\u0007Q\u0002\u0002",
+ "\u184e\u184f\u0007Z\u0002\u0002\u184f\u1850\u0007[\u0002\u0002\u1850",
+ "\u03c4\u0003\u0002\u0002\u0002\u1851\u1852\u0007S\u0002\u0002\u1852",
+ "\u1853\u0007W\u0002\u0002\u1853\u1854\u0007G\u0002\u0002\u1854\u1855",
+ "\u0007T\u0002\u0002\u1855\u1856\u0007[\u0002\u0002\u1856\u03c6\u0003",
+ "\u0002\u0002\u0002\u1857\u1858\u0007S\u0002\u0002\u1858\u1859\u0007",
+ "W\u0002\u0002\u1859\u185a\u0007K\u0002\u0002\u185a\u185b\u0007E\u0002",
+ "\u0002\u185b\u185c\u0007M\u0002\u0002\u185c\u03c8\u0003\u0002\u0002",
+ "\u0002\u185d\u185e\u0007T\u0002\u0002\u185e\u185f\u0007G\u0002\u0002",
+ "\u185f\u1860\u0007D\u0002\u0002\u1860\u1861\u0007W\u0002\u0002\u1861",
+ "\u1862\u0007K\u0002\u0002\u1862\u1863\u0007N\u0002\u0002\u1863\u1864",
+ "\u0007F\u0002\u0002\u1864\u03ca\u0003\u0002\u0002\u0002\u1865\u1866",
+ "\u0007T\u0002\u0002\u1866\u1867\u0007G\u0002\u0002\u1867\u1868\u0007",
+ "E\u0002\u0002\u1868\u1869\u0007Q\u0002\u0002\u1869\u186a\u0007X\u0002",
+ "\u0002\u186a\u186b\u0007G\u0002\u0002\u186b\u186c\u0007T\u0002\u0002",
+ "\u186c\u03cc\u0003\u0002\u0002\u0002\u186d\u186e\u0007T\u0002\u0002",
+ "\u186e\u186f\u0007G\u0002\u0002\u186f\u1870\u0007F\u0002\u0002\u1870",
+ "\u1871\u0007Q\u0002\u0002\u1871\u1872\u0007a\u0002\u0002\u1872\u1873",
+ "\u0007D\u0002\u0002\u1873\u1874\u0007W\u0002\u0002\u1874\u1875\u0007",
+ "H\u0002\u0002\u1875\u1876\u0007H\u0002\u0002\u1876\u1877\u0007G\u0002",
+ "\u0002\u1877\u1878\u0007T\u0002\u0002\u1878\u1879\u0007a\u0002\u0002",
+ "\u1879\u187a\u0007U\u0002\u0002\u187a\u187b\u0007K\u0002\u0002\u187b",
+ "\u187c\u0007\\\u0002\u0002\u187c\u187d\u0007G\u0002\u0002\u187d\u03ce",
+ "\u0003\u0002\u0002\u0002\u187e\u187f\u0007T\u0002\u0002\u187f\u1880",
+ "\u0007G\u0002\u0002\u1880\u1881\u0007F\u0002\u0002\u1881\u1882\u0007",
+ "W\u0002\u0002\u1882\u1883\u0007P\u0002\u0002\u1883\u1884\u0007F\u0002",
+ "\u0002\u1884\u1885\u0007C\u0002\u0002\u1885\u1886\u0007P\u0002\u0002",
+ "\u1886\u1887\u0007V\u0002\u0002\u1887\u03d0\u0003\u0002\u0002\u0002",
+ "\u1888\u1889\u0007T\u0002\u0002\u1889\u188a\u0007G\u0002\u0002\u188a",
+ "\u188b\u0007N\u0002\u0002\u188b\u188c\u0007C\u0002\u0002\u188c\u188d",
+ "\u0007[\u0002\u0002\u188d\u03d2\u0003\u0002\u0002\u0002\u188e\u188f",
+ "\u0007T\u0002\u0002\u188f\u1890\u0007G\u0002\u0002\u1890\u1891\u0007",
+ "N\u0002\u0002\u1891\u1892\u0007C\u0002\u0002\u1892\u1893\u0007[\u0002",
+ "\u0002\u1893\u1894\u0007a\u0002\u0002\u1894\u1895\u0007N\u0002\u0002",
+ "\u1895\u1896\u0007Q\u0002\u0002\u1896\u1897\u0007I\u0002\u0002\u1897",
+ "\u1898\u0007a\u0002\u0002\u1898\u1899\u0007H\u0002\u0002\u1899\u189a",
+ "\u0007K\u0002\u0002\u189a\u189b\u0007N\u0002\u0002\u189b\u189c\u0007",
+ "G\u0002\u0002\u189c\u03d4\u0003\u0002\u0002\u0002\u189d\u189e\u0007",
+ "T\u0002\u0002\u189e\u189f\u0007G\u0002\u0002\u189f\u18a0\u0007N\u0002",
+ "\u0002\u18a0\u18a1\u0007C\u0002\u0002\u18a1\u18a2\u0007[\u0002\u0002",
+ "\u18a2\u18a3\u0007a\u0002\u0002\u18a3\u18a4\u0007N\u0002\u0002\u18a4",
+ "\u18a5\u0007Q\u0002\u0002\u18a5\u18a6\u0007I\u0002\u0002\u18a6\u18a7",
+ "\u0007a\u0002\u0002\u18a7\u18a8\u0007R\u0002\u0002\u18a8\u18a9\u0007",
+ "Q\u0002\u0002\u18a9\u18aa\u0007U\u0002\u0002\u18aa\u03d6\u0003\u0002",
+ "\u0002\u0002\u18ab\u18ac\u0007T\u0002\u0002\u18ac\u18ad\u0007G\u0002",
+ "\u0002\u18ad\u18ae\u0007N\u0002\u0002\u18ae\u18af\u0007C\u0002\u0002",
+ "\u18af\u18b0\u0007[\u0002\u0002\u18b0\u18b1\u0007N\u0002\u0002\u18b1",
+ "\u18b2\u0007Q\u0002\u0002\u18b2\u18b3\u0007I\u0002\u0002\u18b3\u03d8",
+ "\u0003\u0002\u0002\u0002\u18b4\u18b5\u0007T\u0002\u0002\u18b5\u18b6",
+ "\u0007G\u0002\u0002\u18b6\u18b7\u0007O\u0002\u0002\u18b7\u18b8\u0007",
+ "Q\u0002\u0002\u18b8\u18b9\u0007X\u0002\u0002\u18b9\u18ba\u0007G\u0002",
+ "\u0002\u18ba\u03da\u0003\u0002\u0002\u0002\u18bb\u18bc\u0007T\u0002",
+ "\u0002\u18bc\u18bd\u0007G\u0002\u0002\u18bd\u18be\u0007Q\u0002\u0002",
+ "\u18be\u18bf\u0007T\u0002\u0002\u18bf\u18c0\u0007I\u0002\u0002\u18c0",
+ "\u18c1\u0007C\u0002\u0002\u18c1\u18c2\u0007P\u0002\u0002\u18c2\u18c3",
+ "\u0007K\u0002\u0002\u18c3\u18c4\u0007\\\u0002\u0002\u18c4\u18c5\u0007",
+ "G\u0002\u0002\u18c5\u03dc\u0003\u0002\u0002\u0002\u18c6\u18c7\u0007",
+ "T\u0002\u0002\u18c7\u18c8\u0007G\u0002\u0002\u18c8\u18c9\u0007R\u0002",
+ "\u0002\u18c9\u18ca\u0007C\u0002\u0002\u18ca\u18cb\u0007K\u0002\u0002",
+ "\u18cb\u18cc\u0007T\u0002\u0002\u18cc\u03de\u0003\u0002\u0002\u0002",
+ "\u18cd\u18ce\u0007T\u0002\u0002\u18ce\u18cf\u0007G\u0002\u0002\u18cf",
+ "\u18d0\u0007R\u0002\u0002\u18d0\u18d1\u0007N\u0002\u0002\u18d1\u18d2",
+ "\u0007K\u0002\u0002\u18d2\u18d3\u0007E\u0002\u0002\u18d3\u18d4\u0007",
+ "C\u0002\u0002\u18d4\u18d5\u0007V\u0002\u0002\u18d5\u18d6\u0007G\u0002",
+ "\u0002\u18d6\u18d7\u0007a\u0002\u0002\u18d7\u18d8\u0007F\u0002\u0002",
+ "\u18d8\u18d9\u0007Q\u0002\u0002\u18d9\u18da\u0007a\u0002\u0002\u18da",
+ "\u18db\u0007F\u0002\u0002\u18db\u18dc\u0007D\u0002\u0002\u18dc\u03e0",
+ "\u0003\u0002\u0002\u0002\u18dd\u18de\u0007T\u0002\u0002\u18de\u18df",
+ "\u0007G\u0002\u0002\u18df\u18e0\u0007R\u0002\u0002\u18e0\u18e1\u0007",
+ "N\u0002\u0002\u18e1\u18e2\u0007K\u0002\u0002\u18e2\u18e3\u0007E\u0002",
+ "\u0002\u18e3\u18e4\u0007C\u0002\u0002\u18e4\u18e5\u0007V\u0002\u0002",
+ "\u18e5\u18e6\u0007G\u0002\u0002\u18e6\u18e7\u0007a\u0002\u0002\u18e7",
+ "\u18e8\u0007F\u0002\u0002\u18e8\u18e9\u0007Q\u0002\u0002\u18e9\u18ea",
+ "\u0007a\u0002\u0002\u18ea\u18eb\u0007V\u0002\u0002\u18eb\u18ec\u0007",
+ "C\u0002\u0002\u18ec\u18ed\u0007D\u0002\u0002\u18ed\u18ee\u0007N\u0002",
+ "\u0002\u18ee\u18ef\u0007G\u0002\u0002\u18ef\u03e2\u0003\u0002\u0002",
+ "\u0002\u18f0\u18f1\u0007T\u0002\u0002\u18f1\u18f2\u0007G\u0002\u0002",
+ "\u18f2\u18f3\u0007R\u0002\u0002\u18f3\u18f4\u0007N\u0002\u0002\u18f4",
+ "\u18f5\u0007K\u0002\u0002\u18f5\u18f6\u0007E\u0002\u0002\u18f6\u18f7",
+ "\u0007C\u0002\u0002\u18f7\u18f8\u0007V\u0002\u0002\u18f8\u18f9\u0007",
+ "G\u0002\u0002\u18f9\u18fa\u0007a\u0002\u0002\u18fa\u18fb\u0007K\u0002",
+ "\u0002\u18fb\u18fc\u0007I\u0002\u0002\u18fc\u18fd\u0007P\u0002\u0002",
+ "\u18fd\u18fe\u0007Q\u0002\u0002\u18fe\u18ff\u0007T\u0002\u0002\u18ff",
+ "\u1900\u0007G\u0002\u0002\u1900\u1901\u0007a\u0002\u0002\u1901\u1902",
+ "\u0007F\u0002\u0002\u1902\u1903\u0007D\u0002\u0002\u1903\u03e4\u0003",
+ "\u0002\u0002\u0002\u1904\u1905\u0007T\u0002\u0002\u1905\u1906\u0007",
+ "G\u0002\u0002\u1906\u1907\u0007R\u0002\u0002\u1907\u1908\u0007N\u0002",
+ "\u0002\u1908\u1909\u0007K\u0002\u0002\u1909\u190a\u0007E\u0002\u0002",
+ "\u190a\u190b\u0007C\u0002\u0002\u190b\u190c\u0007V\u0002\u0002\u190c",
+ "\u190d\u0007G\u0002\u0002\u190d\u190e\u0007a\u0002\u0002\u190e\u190f",
+ "\u0007K\u0002\u0002\u190f\u1910\u0007I\u0002\u0002\u1910\u1911\u0007",
+ "P\u0002\u0002\u1911\u1912\u0007Q\u0002\u0002\u1912\u1913\u0007T\u0002",
+ "\u0002\u1913\u1914\u0007G\u0002\u0002\u1914\u1915\u0007a\u0002\u0002",
+ "\u1915\u1916\u0007V\u0002\u0002\u1916\u1917\u0007C\u0002\u0002\u1917",
+ "\u1918\u0007D\u0002\u0002\u1918\u1919\u0007N\u0002\u0002\u1919\u191a",
+ "\u0007G\u0002\u0002\u191a\u03e6\u0003\u0002\u0002\u0002\u191b\u191c",
+ "\u0007T\u0002\u0002\u191c\u191d\u0007G\u0002\u0002\u191d\u191e\u0007",
+ "R\u0002\u0002\u191e\u191f\u0007N\u0002\u0002\u191f\u1920\u0007K\u0002",
+ "\u0002\u1920\u1921\u0007E\u0002\u0002\u1921\u1922\u0007C\u0002\u0002",
+ "\u1922\u1923\u0007V\u0002\u0002\u1923\u1924\u0007G\u0002\u0002\u1924",
+ "\u1925\u0007a\u0002\u0002\u1925\u1926\u0007T\u0002\u0002\u1926\u1927",
+ "\u0007G\u0002\u0002\u1927\u1928\u0007Y\u0002\u0002\u1928\u1929\u0007",
+ "T\u0002\u0002\u1929\u192a\u0007K\u0002\u0002\u192a\u192b\u0007V\u0002",
+ "\u0002\u192b\u192c\u0007G\u0002\u0002\u192c\u192d\u0007a\u0002\u0002",
+ "\u192d\u192e\u0007F\u0002\u0002\u192e\u192f\u0007D\u0002\u0002\u192f",
+ "\u03e8\u0003\u0002\u0002\u0002\u1930\u1931\u0007T\u0002\u0002\u1931",
+ "\u1932\u0007G\u0002\u0002\u1932\u1933\u0007R\u0002\u0002\u1933\u1934",
+ "\u0007N\u0002\u0002\u1934\u1935\u0007K\u0002\u0002\u1935\u1936\u0007",
+ "E\u0002\u0002\u1936\u1937\u0007C\u0002\u0002\u1937\u1938\u0007V\u0002",
+ "\u0002\u1938\u1939\u0007G\u0002\u0002\u1939\u193a\u0007a\u0002\u0002",
+ "\u193a\u193b\u0007Y\u0002\u0002\u193b\u193c\u0007K\u0002\u0002\u193c",
+ "\u193d\u0007N\u0002\u0002\u193d\u193e\u0007F\u0002\u0002\u193e\u193f",
+ "\u0007a\u0002\u0002\u193f\u1940\u0007F\u0002\u0002\u1940\u1941\u0007",
+ "Q\u0002\u0002\u1941\u1942\u0007a\u0002\u0002\u1942\u1943\u0007V\u0002",
+ "\u0002\u1943\u1944\u0007C\u0002\u0002\u1944\u1945\u0007D\u0002\u0002",
+ "\u1945\u1946\u0007N\u0002\u0002\u1946\u1947\u0007G\u0002\u0002\u1947",
+ "\u03ea\u0003\u0002\u0002\u0002\u1948\u1949\u0007T\u0002\u0002\u1949",
+ "\u194a\u0007G\u0002\u0002\u194a\u194b\u0007R\u0002\u0002\u194b\u194c",
+ "\u0007N\u0002\u0002\u194c\u194d\u0007K\u0002\u0002\u194d\u194e\u0007",
+ "E\u0002\u0002\u194e\u194f\u0007C\u0002\u0002\u194f\u1950\u0007V\u0002",
+ "\u0002\u1950\u1951\u0007G\u0002\u0002\u1951\u1952\u0007a\u0002\u0002",
+ "\u1952\u1953\u0007Y\u0002\u0002\u1953\u1954\u0007K\u0002\u0002\u1954",
+ "\u1955\u0007N\u0002\u0002\u1955\u1956\u0007F\u0002\u0002\u1956\u1957",
+ "\u0007a\u0002\u0002\u1957\u1958\u0007K\u0002\u0002\u1958\u1959\u0007",
+ "I\u0002\u0002\u1959\u195a\u0007P\u0002\u0002\u195a\u195b\u0007Q\u0002",
+ "\u0002\u195b\u195c\u0007T\u0002\u0002\u195c\u195d\u0007G\u0002\u0002",
+ "\u195d\u195e\u0007a\u0002\u0002\u195e\u195f\u0007V\u0002\u0002\u195f",
+ "\u1960\u0007C\u0002\u0002\u1960\u1961\u0007D\u0002\u0002\u1961\u1962",
+ "\u0007N\u0002\u0002\u1962\u1963\u0007G\u0002\u0002\u1963\u03ec\u0003",
+ "\u0002\u0002\u0002\u1964\u1965\u0007T\u0002\u0002\u1965\u1966\u0007",
+ "G\u0002\u0002\u1966\u1967\u0007R\u0002\u0002\u1967\u1968\u0007N\u0002",
+ "\u0002\u1968\u1969\u0007K\u0002\u0002\u1969\u196a\u0007E\u0002\u0002",
+ "\u196a\u196b\u0007C\u0002\u0002\u196b\u196c\u0007V\u0002\u0002\u196c",
+ "\u196d\u0007K\u0002\u0002\u196d\u196e\u0007Q\u0002\u0002\u196e\u196f",
+ "\u0007P\u0002\u0002\u196f\u03ee\u0003\u0002\u0002\u0002\u1970\u1971",
+ "\u0007T\u0002\u0002\u1971\u1972\u0007G\u0002\u0002\u1972\u1973\u0007",
+ "U\u0002\u0002\u1973\u1974\u0007G\u0002\u0002\u1974\u1975\u0007V\u0002",
+ "\u0002\u1975\u03f0\u0003\u0002\u0002\u0002\u1976\u1977\u0007T\u0002",
+ "\u0002\u1977\u1978\u0007G\u0002\u0002\u1978\u1979\u0007U\u0002\u0002",
+ "\u1979\u197a\u0007W\u0002\u0002\u197a\u197b\u0007O\u0002\u0002\u197b",
+ "\u197c\u0007G\u0002\u0002\u197c\u03f2\u0003\u0002\u0002\u0002\u197d",
+ "\u197e\u0007T\u0002\u0002\u197e\u197f\u0007G\u0002\u0002\u197f\u1980",
+ "\u0007V\u0002\u0002\u1980\u1981\u0007W\u0002\u0002\u1981\u1982\u0007",
+ "T\u0002\u0002\u1982\u1983\u0007P\u0002\u0002\u1983\u1984\u0007G\u0002",
+ "\u0002\u1984\u1985\u0007F\u0002\u0002\u1985\u1986\u0007a\u0002\u0002",
+ "\u1986\u1987\u0007U\u0002\u0002\u1987\u1988\u0007S\u0002\u0002\u1988",
+ "\u1989\u0007N\u0002\u0002\u1989\u198a\u0007U\u0002\u0002\u198a\u198b",
+ "\u0007V\u0002\u0002\u198b\u198c\u0007C\u0002\u0002\u198c\u198d\u0007",
+ "V\u0002\u0002\u198d\u198e\u0007G\u0002\u0002\u198e\u03f4\u0003\u0002",
+ "\u0002\u0002\u198f\u1990\u0007T\u0002\u0002\u1990\u1991\u0007G\u0002",
+ "\u0002\u1991\u1992\u0007V\u0002\u0002\u1992\u1993\u0007W\u0002\u0002",
+ "\u1993\u1994\u0007T\u0002\u0002\u1994\u1995\u0007P\u0002\u0002\u1995",
+ "\u1996\u0007U\u0002\u0002\u1996\u03f6\u0003\u0002\u0002\u0002\u1997",
+ "\u1998\u0007T\u0002\u0002\u1998\u1999\u0007Q\u0002\u0002\u1999\u199a",
+ "\u0007N\u0002\u0002\u199a\u199b\u0007G\u0002\u0002\u199b\u03f8\u0003",
+ "\u0002\u0002\u0002\u199c\u199d\u0007T\u0002\u0002\u199d\u199e\u0007",
+ "Q\u0002\u0002\u199e\u199f\u0007N\u0002\u0002\u199f\u19a0\u0007N\u0002",
+ "\u0002\u19a0\u19a1\u0007D\u0002\u0002\u19a1\u19a2\u0007C\u0002\u0002",
+ "\u19a2\u19a3\u0007E\u0002\u0002\u19a3\u19a4\u0007M\u0002\u0002\u19a4",
+ "\u03fa\u0003\u0002\u0002\u0002\u19a5\u19a6\u0007T\u0002\u0002\u19a6",
+ "\u19a7\u0007Q\u0002\u0002\u19a7\u19a8\u0007N\u0002\u0002\u19a8\u19a9",
+ "\u0007N\u0002\u0002\u19a9\u19aa\u0007W\u0002\u0002\u19aa\u19ab\u0007",
+ "R\u0002\u0002\u19ab\u03fc\u0003\u0002\u0002\u0002\u19ac\u19ad\u0007",
+ "T\u0002\u0002\u19ad\u19ae\u0007Q\u0002\u0002\u19ae\u19af\u0007V\u0002",
+ "\u0002\u19af\u19b0\u0007C\u0002\u0002\u19b0\u19b1\u0007V\u0002\u0002",
+ "\u19b1\u19b2\u0007G\u0002\u0002\u19b2\u03fe\u0003\u0002\u0002\u0002",
+ "\u19b3\u19b4\u0007T\u0002\u0002\u19b4\u19b5\u0007Q\u0002\u0002\u19b5",
+ "\u19b6\u0007Y\u0002\u0002\u19b6\u0400\u0003\u0002\u0002\u0002\u19b7",
+ "\u19b8\u0007T\u0002\u0002\u19b8\u19b9\u0007Q\u0002\u0002\u19b9\u19ba",
+ "\u0007Y\u0002\u0002\u19ba\u19bb\u0007U\u0002\u0002\u19bb\u0402\u0003",
+ "\u0002\u0002\u0002\u19bc\u19bd\u0007T\u0002\u0002\u19bd\u19be\u0007",
+ "Q\u0002\u0002\u19be\u19bf\u0007Y\u0002\u0002\u19bf\u19c0\u0007a\u0002",
+ "\u0002\u19c0\u19c1\u0007H\u0002\u0002\u19c1\u19c2\u0007Q\u0002\u0002",
+ "\u19c2\u19c3\u0007T\u0002\u0002\u19c3\u19c4\u0007O\u0002\u0002\u19c4",
+ "\u19c5\u0007C\u0002\u0002\u19c5\u19c6\u0007V\u0002\u0002\u19c6\u0404",
+ "\u0003\u0002\u0002\u0002\u19c7\u19c8\u0007U\u0002\u0002\u19c8\u19c9",
+ "\u0007C\u0002\u0002\u19c9\u19ca\u0007X\u0002\u0002\u19ca\u19cb\u0007",
+ "G\u0002\u0002\u19cb\u19cc\u0007R\u0002\u0002\u19cc\u19cd\u0007Q\u0002",
+ "\u0002\u19cd\u19ce\u0007K\u0002\u0002\u19ce\u19cf\u0007P\u0002\u0002",
+ "\u19cf\u19d0\u0007V\u0002\u0002\u19d0\u0406\u0003\u0002\u0002\u0002",
+ "\u19d1\u19d2\u0007U\u0002\u0002\u19d2\u19d3\u0007E\u0002\u0002\u19d3",
+ "\u19d4\u0007J\u0002\u0002\u19d4\u19d5\u0007G\u0002\u0002\u19d5\u19d6",
+ "\u0007F\u0002\u0002\u19d6\u19d7\u0007W\u0002\u0002\u19d7\u19d8\u0007",
+ "N\u0002\u0002\u19d8\u19d9\u0007G\u0002\u0002\u19d9\u0408\u0003\u0002",
+ "\u0002\u0002\u19da\u19db\u0007U\u0002\u0002\u19db\u19dc\u0007G\u0002",
+ "\u0002\u19dc\u19dd\u0007E\u0002\u0002\u19dd\u19de\u0007W\u0002\u0002",
+ "\u19de\u19df\u0007T\u0002\u0002\u19df\u19e0\u0007K\u0002\u0002\u19e0",
+ "\u19e1\u0007V\u0002\u0002\u19e1\u19e2\u0007[\u0002\u0002\u19e2\u040a",
+ "\u0003\u0002\u0002\u0002\u19e3\u19e4\u0007U\u0002\u0002\u19e4\u19e5",
+ "\u0007G\u0002\u0002\u19e5\u19e6\u0007T\u0002\u0002\u19e6\u19e7\u0007",
+ "X\u0002\u0002\u19e7\u19e8\u0007G\u0002\u0002\u19e8\u19e9\u0007T\u0002",
+ "\u0002\u19e9\u040c\u0003\u0002\u0002\u0002\u19ea\u19eb\u0007U\u0002",
+ "\u0002\u19eb\u19ec\u0007G\u0002\u0002\u19ec\u19ed\u0007U\u0002\u0002",
+ "\u19ed\u19ee\u0007U\u0002\u0002\u19ee\u19ef\u0007K\u0002\u0002\u19ef",
+ "\u19f0\u0007Q\u0002\u0002\u19f0\u19f1\u0007P\u0002\u0002\u19f1\u040e",
+ "\u0003\u0002\u0002\u0002\u19f2\u19f3\u0007U\u0002\u0002\u19f3\u19f4",
+ "\u0007J\u0002\u0002\u19f4\u19f5\u0007C\u0002\u0002\u19f5\u19f6\u0007",
+ "T\u0002\u0002\u19f6\u19f7\u0007G\u0002\u0002\u19f7\u0410\u0003\u0002",
+ "\u0002\u0002\u19f8\u19f9\u0007U\u0002\u0002\u19f9\u19fa\u0007J\u0002",
+ "\u0002\u19fa\u19fb\u0007C\u0002\u0002\u19fb\u19fc\u0007T\u0002\u0002",
+ "\u19fc\u19fd\u0007G\u0002\u0002\u19fd\u19fe\u0007F\u0002\u0002\u19fe",
+ "\u0412\u0003\u0002\u0002\u0002\u19ff\u1a00\u0007U\u0002\u0002\u1a00",
+ "\u1a01\u0007K\u0002\u0002\u1a01\u1a02\u0007I\u0002\u0002\u1a02\u1a03",
+ "\u0007P\u0002\u0002\u1a03\u1a04\u0007G\u0002\u0002\u1a04\u1a05\u0007",
+ "F\u0002\u0002\u1a05\u0414\u0003\u0002\u0002\u0002\u1a06\u1a07\u0007",
+ "U\u0002\u0002\u1a07\u1a08\u0007K\u0002\u0002\u1a08\u1a09\u0007O\u0002",
+ "\u0002\u1a09\u1a0a\u0007R\u0002\u0002\u1a0a\u1a0b\u0007N\u0002\u0002",
+ "\u1a0b\u1a0c\u0007G\u0002\u0002\u1a0c\u0416\u0003\u0002\u0002\u0002",
+ "\u1a0d\u1a0e\u0007U\u0002\u0002\u1a0e\u1a0f\u0007N\u0002\u0002\u1a0f",
+ "\u1a10\u0007C\u0002\u0002\u1a10\u1a11\u0007X\u0002\u0002\u1a11\u1a12",
+ "\u0007G\u0002\u0002\u1a12\u0418\u0003\u0002\u0002\u0002\u1a13\u1a14",
+ "\u0007U\u0002\u0002\u1a14\u1a15\u0007N\u0002\u0002\u1a15\u1a16\u0007",
+ "Q\u0002\u0002\u1a16\u1a17\u0007Y\u0002\u0002\u1a17\u041a\u0003\u0002",
+ "\u0002\u0002\u1a18\u1a19\u0007U\u0002\u0002\u1a19\u1a1a\u0007P\u0002",
+ "\u0002\u1a1a\u1a1b\u0007C\u0002\u0002\u1a1b\u1a1c\u0007R\u0002\u0002",
+ "\u1a1c\u1a1d\u0007U\u0002\u0002\u1a1d\u1a1e\u0007J\u0002\u0002\u1a1e",
+ "\u1a1f\u0007Q\u0002\u0002\u1a1f\u1a20\u0007V\u0002\u0002\u1a20\u041c",
+ "\u0003\u0002\u0002\u0002\u1a21\u1a22\u0007U\u0002\u0002\u1a22\u1a23",
+ "\u0007Q\u0002\u0002\u1a23\u1a24\u0007E\u0002\u0002\u1a24\u1a25\u0007",
+ "M\u0002\u0002\u1a25\u1a26\u0007G\u0002\u0002\u1a26\u1a27\u0007V\u0002",
+ "\u0002\u1a27\u041e\u0003\u0002\u0002\u0002\u1a28\u1a29\u0007U\u0002",
+ "\u0002\u1a29\u1a2a\u0007Q\u0002\u0002\u1a2a\u1a2b\u0007O\u0002\u0002",
+ "\u1a2b\u1a2c\u0007G\u0002\u0002\u1a2c\u0420\u0003\u0002\u0002\u0002",
+ "\u1a2d\u1a2e\u0007U\u0002\u0002\u1a2e\u1a2f\u0007Q\u0002\u0002\u1a2f",
+ "\u1a30\u0007P\u0002\u0002\u1a30\u1a31\u0007C\u0002\u0002\u1a31\u1a32",
+ "\u0007O\u0002\u0002\u1a32\u1a33\u0007G\u0002\u0002\u1a33\u0422\u0003",
+ "\u0002\u0002\u0002\u1a34\u1a35\u0007U\u0002\u0002\u1a35\u1a36\u0007",
+ "Q\u0002\u0002\u1a36\u1a37\u0007W\u0002\u0002\u1a37\u1a38\u0007P\u0002",
+ "\u0002\u1a38\u1a39\u0007F\u0002\u0002\u1a39\u1a3a\u0007U\u0002\u0002",
+ "\u1a3a\u0424\u0003\u0002\u0002\u0002\u1a3b\u1a3c\u0007U\u0002\u0002",
+ "\u1a3c\u1a3d\u0007Q\u0002\u0002\u1a3d\u1a3e\u0007W\u0002\u0002\u1a3e",
+ "\u1a3f\u0007T\u0002\u0002\u1a3f\u1a40\u0007E\u0002\u0002\u1a40\u1a41",
+ "\u0007G\u0002\u0002\u1a41\u0426\u0003\u0002\u0002\u0002\u1a42\u1a43",
+ "\u0007U\u0002\u0002\u1a43\u1a44\u0007S\u0002\u0002\u1a44\u1a45\u0007",
+ "N\u0002\u0002\u1a45\u1a46\u0007a\u0002\u0002\u1a46\u1a47\u0007C\u0002",
+ "\u0002\u1a47\u1a48\u0007H\u0002\u0002\u1a48\u1a49\u0007V\u0002\u0002",
+ "\u1a49\u1a4a\u0007G\u0002\u0002\u1a4a\u1a4b\u0007T\u0002\u0002\u1a4b",
+ "\u1a4c\u0007a\u0002\u0002\u1a4c\u1a4d\u0007I\u0002\u0002\u1a4d\u1a4e",
+ "\u0007V\u0002\u0002\u1a4e\u1a4f\u0007K\u0002\u0002\u1a4f\u1a50\u0007",
+ "F\u0002\u0002\u1a50\u1a51\u0007U\u0002\u0002\u1a51\u0428\u0003\u0002",
+ "\u0002\u0002\u1a52\u1a53\u0007U\u0002\u0002\u1a53\u1a54\u0007S\u0002",
+ "\u0002\u1a54\u1a55\u0007N\u0002\u0002\u1a55\u1a56\u0007a\u0002\u0002",
+ "\u1a56\u1a57\u0007C\u0002\u0002\u1a57\u1a58\u0007H\u0002\u0002\u1a58",
+ "\u1a59\u0007V\u0002\u0002\u1a59\u1a5a\u0007G\u0002\u0002\u1a5a\u1a5b",
+ "\u0007T\u0002\u0002\u1a5b\u1a5c\u0007a\u0002\u0002\u1a5c\u1a5d\u0007",
+ "O\u0002\u0002\u1a5d\u1a5e\u0007V\u0002\u0002\u1a5e\u1a5f\u0007U\u0002",
+ "\u0002\u1a5f\u1a60\u0007a\u0002\u0002\u1a60\u1a61\u0007I\u0002\u0002",
+ "\u1a61\u1a62\u0007C\u0002\u0002\u1a62\u1a63\u0007R\u0002\u0002\u1a63",
+ "\u1a64\u0007U\u0002\u0002\u1a64\u042a\u0003\u0002\u0002\u0002\u1a65",
+ "\u1a66\u0007U\u0002\u0002\u1a66\u1a67\u0007S\u0002\u0002\u1a67\u1a68",
+ "\u0007N\u0002\u0002\u1a68\u1a69\u0007a\u0002\u0002\u1a69\u1a6a\u0007",
+ "D\u0002\u0002\u1a6a\u1a6b\u0007G\u0002\u0002\u1a6b\u1a6c\u0007H\u0002",
+ "\u0002\u1a6c\u1a6d\u0007Q\u0002\u0002\u1a6d\u1a6e\u0007T\u0002\u0002",
+ "\u1a6e\u1a6f\u0007G\u0002\u0002\u1a6f\u1a70\u0007a\u0002\u0002\u1a70",
+ "\u1a71\u0007I\u0002\u0002\u1a71\u1a72\u0007V\u0002\u0002\u1a72\u1a73",
+ "\u0007K\u0002\u0002\u1a73\u1a74\u0007F\u0002\u0002\u1a74\u1a75\u0007",
+ "U\u0002\u0002\u1a75\u042c\u0003\u0002\u0002\u0002\u1a76\u1a77\u0007",
+ "U\u0002\u0002\u1a77\u1a78\u0007S\u0002\u0002\u1a78\u1a79\u0007N\u0002",
+ "\u0002\u1a79\u1a7a\u0007a\u0002\u0002\u1a7a\u1a7b\u0007D\u0002\u0002",
+ "\u1a7b\u1a7c\u0007W\u0002\u0002\u1a7c\u1a7d\u0007H\u0002\u0002\u1a7d",
+ "\u1a7e\u0007H\u0002\u0002\u1a7e\u1a7f\u0007G\u0002\u0002\u1a7f\u1a80",
+ "\u0007T\u0002\u0002\u1a80\u1a81\u0007a\u0002\u0002\u1a81\u1a82\u0007",
+ "T\u0002\u0002\u1a82\u1a83\u0007G\u0002\u0002\u1a83\u1a84\u0007U\u0002",
+ "\u0002\u1a84\u1a85\u0007W\u0002\u0002\u1a85\u1a86\u0007N\u0002\u0002",
+ "\u1a86\u1a87\u0007V\u0002\u0002\u1a87\u042e\u0003\u0002\u0002\u0002",
+ "\u1a88\u1a89\u0007U\u0002\u0002\u1a89\u1a8a\u0007S\u0002\u0002\u1a8a",
+ "\u1a8b\u0007N\u0002\u0002\u1a8b\u1a8c\u0007a\u0002\u0002\u1a8c\u1a8d",
+ "\u0007E\u0002\u0002\u1a8d\u1a8e\u0007C\u0002\u0002\u1a8e\u1a8f\u0007",
+ "E\u0002\u0002\u1a8f\u1a90\u0007J\u0002\u0002\u1a90\u1a91\u0007G\u0002",
+ "\u0002\u1a91\u0430\u0003\u0002\u0002\u0002\u1a92\u1a93\u0007U\u0002",
+ "\u0002\u1a93\u1a94\u0007S\u0002\u0002\u1a94\u1a95\u0007N\u0002\u0002",
+ "\u1a95\u1a96\u0007a\u0002\u0002\u1a96\u1a97\u0007P\u0002\u0002\u1a97",
+ "\u1a98\u0007Q\u0002\u0002\u1a98\u1a99\u0007a\u0002\u0002\u1a99\u1a9a",
+ "\u0007E\u0002\u0002\u1a9a\u1a9b\u0007C\u0002\u0002\u1a9b\u1a9c\u0007",
+ "E\u0002\u0002\u1a9c\u1a9d\u0007J\u0002\u0002\u1a9d\u1a9e\u0007G\u0002",
+ "\u0002\u1a9e\u0432\u0003\u0002\u0002\u0002\u1a9f\u1aa0\u0007U\u0002",
+ "\u0002\u1aa0\u1aa1\u0007S\u0002\u0002\u1aa1\u1aa2\u0007N\u0002\u0002",
+ "\u1aa2\u1aa3\u0007a\u0002\u0002\u1aa3\u1aa4\u0007V\u0002\u0002\u1aa4",
+ "\u1aa5\u0007J\u0002\u0002\u1aa5\u1aa6\u0007T\u0002\u0002\u1aa6\u1aa7",
+ "\u0007G\u0002\u0002\u1aa7\u1aa8\u0007C\u0002\u0002\u1aa8\u1aa9\u0007",
+ "F\u0002\u0002\u1aa9\u0434\u0003\u0002\u0002\u0002\u1aaa\u1aab\u0007",
+ "U\u0002\u0002\u1aab\u1aac\u0007V\u0002\u0002\u1aac\u1aad\u0007C\u0002",
+ "\u0002\u1aad\u1aae\u0007T\u0002\u0002\u1aae\u1aaf\u0007V\u0002\u0002",
+ "\u1aaf\u0436\u0003\u0002\u0002\u0002\u1ab0\u1ab1\u0007U\u0002\u0002",
+ "\u1ab1\u1ab2\u0007V\u0002\u0002\u1ab2\u1ab3\u0007C\u0002\u0002\u1ab3",
+ "\u1ab4\u0007T\u0002\u0002\u1ab4\u1ab5\u0007V\u0002\u0002\u1ab5\u1ab6",
+ "\u0007U\u0002\u0002\u1ab6\u0438\u0003\u0002\u0002\u0002\u1ab7\u1ab8",
+ "\u0007U\u0002\u0002\u1ab8\u1ab9\u0007V\u0002\u0002\u1ab9\u1aba\u0007",
+ "C\u0002\u0002\u1aba\u1abb\u0007V\u0002\u0002\u1abb\u1abc\u0007U\u0002",
+ "\u0002\u1abc\u1abd\u0007a\u0002\u0002\u1abd\u1abe\u0007C\u0002\u0002",
+ "\u1abe\u1abf\u0007W\u0002\u0002\u1abf\u1ac0\u0007V\u0002\u0002\u1ac0",
+ "\u1ac1\u0007Q\u0002\u0002\u1ac1\u1ac2\u0007a\u0002\u0002\u1ac2\u1ac3",
+ "\u0007T\u0002\u0002\u1ac3\u1ac4\u0007G\u0002\u0002\u1ac4\u1ac5\u0007",
+ "E\u0002\u0002\u1ac5\u1ac6\u0007C\u0002\u0002\u1ac6\u1ac7\u0007N\u0002",
+ "\u0002\u1ac7\u1ac8\u0007E\u0002\u0002\u1ac8\u043a\u0003\u0002\u0002",
+ "\u0002\u1ac9\u1aca\u0007U\u0002\u0002\u1aca\u1acb\u0007V\u0002\u0002",
+ "\u1acb\u1acc\u0007C\u0002\u0002\u1acc\u1acd\u0007V\u0002\u0002\u1acd",
+ "\u1ace\u0007U\u0002\u0002\u1ace\u1acf\u0007a\u0002\u0002\u1acf\u1ad0",
+ "\u0007R\u0002\u0002\u1ad0\u1ad1\u0007G\u0002\u0002\u1ad1\u1ad2\u0007",
+ "T\u0002\u0002\u1ad2\u1ad3\u0007U\u0002\u0002\u1ad3\u1ad4\u0007K\u0002",
+ "\u0002\u1ad4\u1ad5\u0007U\u0002\u0002\u1ad5\u1ad6\u0007V\u0002\u0002",
+ "\u1ad6\u1ad7\u0007G\u0002\u0002\u1ad7\u1ad8\u0007P\u0002\u0002\u1ad8",
+ "\u1ad9\u0007V\u0002\u0002\u1ad9\u043c\u0003\u0002\u0002\u0002\u1ada",
+ "\u1adb\u0007U\u0002\u0002\u1adb\u1adc\u0007V\u0002\u0002\u1adc\u1add",
+ "\u0007C\u0002\u0002\u1add\u1ade\u0007V\u0002\u0002\u1ade\u1adf\u0007",
+ "U\u0002\u0002\u1adf\u1ae0\u0007a\u0002\u0002\u1ae0\u1ae1\u0007U\u0002",
+ "\u0002\u1ae1\u1ae2\u0007C\u0002\u0002\u1ae2\u1ae3\u0007O\u0002\u0002",
+ "\u1ae3\u1ae4\u0007R\u0002\u0002\u1ae4\u1ae5\u0007N\u0002\u0002\u1ae5",
+ "\u1ae6\u0007G\u0002\u0002\u1ae6\u1ae7\u0007a\u0002\u0002\u1ae7\u1ae8",
+ "\u0007R\u0002\u0002\u1ae8\u1ae9\u0007C\u0002\u0002\u1ae9\u1aea\u0007",
+ "I\u0002\u0002\u1aea\u1aeb\u0007G\u0002\u0002\u1aeb\u1aec\u0007U\u0002",
+ "\u0002\u1aec\u043e\u0003\u0002\u0002\u0002\u1aed\u1aee\u0007U\u0002",
+ "\u0002\u1aee\u1aef\u0007V\u0002\u0002\u1aef\u1af0\u0007C\u0002\u0002",
+ "\u1af0\u1af1\u0007V\u0002\u0002\u1af1\u1af2\u0007W\u0002\u0002\u1af2",
+ "\u1af3\u0007U\u0002\u0002\u1af3\u0440\u0003\u0002\u0002\u0002\u1af4",
+ "\u1af5\u0007U\u0002\u0002\u1af5\u1af6\u0007V\u0002\u0002\u1af6\u1af7",
+ "\u0007Q\u0002\u0002\u1af7\u1af8\u0007R\u0002\u0002\u1af8\u0442\u0003",
+ "\u0002\u0002\u0002\u1af9\u1afa\u0007U\u0002\u0002\u1afa\u1afb\u0007",
+ "V\u0002\u0002\u1afb\u1afc\u0007Q\u0002\u0002\u1afc\u1afd\u0007T\u0002",
+ "\u0002\u1afd\u1afe\u0007C\u0002\u0002\u1afe\u1aff\u0007I\u0002\u0002",
+ "\u1aff\u1b00\u0007G\u0002\u0002\u1b00\u0444\u0003\u0002\u0002\u0002",
+ "\u1b01\u1b02\u0007U\u0002\u0002\u1b02\u1b03\u0007V\u0002\u0002\u1b03",
+ "\u1b04\u0007Q\u0002\u0002\u1b04\u1b05\u0007T\u0002\u0002\u1b05\u1b06",
+ "\u0007G\u0002\u0002\u1b06\u1b07\u0007F\u0002\u0002\u1b07\u0446\u0003",
+ "\u0002\u0002\u0002\u1b08\u1b09\u0007U\u0002\u0002\u1b09\u1b0a\u0007",
+ "V\u0002\u0002\u1b0a\u1b0b\u0007T\u0002\u0002\u1b0b\u1b0c\u0007K\u0002",
+ "\u0002\u1b0c\u1b0d\u0007P\u0002\u0002\u1b0d\u1b0e\u0007I\u0002\u0002",
+ "\u1b0e\u0448\u0003\u0002\u0002\u0002\u1b0f\u1b10\u0007U\u0002\u0002",
+ "\u1b10\u1b11\u0007W\u0002\u0002\u1b11\u1b12\u0007D\u0002\u0002\u1b12",
+ "\u1b13\u0007E\u0002\u0002\u1b13\u1b14\u0007N\u0002\u0002\u1b14\u1b15",
+ "\u0007C\u0002\u0002\u1b15\u1b16\u0007U\u0002\u0002\u1b16\u1b17\u0007",
+ "U\u0002\u0002\u1b17\u1b18\u0007a\u0002\u0002\u1b18\u1b19\u0007Q\u0002",
+ "\u0002\u1b19\u1b1a\u0007T\u0002\u0002\u1b1a\u1b1b\u0007K\u0002\u0002",
+ "\u1b1b\u1b1c\u0007I\u0002\u0002\u1b1c\u1b1d\u0007K\u0002\u0002\u1b1d",
+ "\u1b1e\u0007P\u0002\u0002\u1b1e\u044a\u0003\u0002\u0002\u0002\u1b1f",
+ "\u1b20\u0007U\u0002\u0002\u1b20\u1b21\u0007W\u0002\u0002\u1b21\u1b22",
+ "\u0007D\u0002\u0002\u1b22\u1b23\u0007L\u0002\u0002\u1b23\u1b24\u0007",
+ "G\u0002\u0002\u1b24\u1b25\u0007E\u0002\u0002\u1b25\u1b26\u0007V\u0002",
+ "\u0002\u1b26\u044c\u0003\u0002\u0002\u0002\u1b27\u1b28\u0007U\u0002",
+ "\u0002\u1b28\u1b29\u0007W\u0002\u0002\u1b29\u1b2a\u0007D\u0002\u0002",
+ "\u1b2a\u1b2b\u0007R\u0002\u0002\u1b2b\u1b2c\u0007C\u0002\u0002\u1b2c",
+ "\u1b2d\u0007T\u0002\u0002\u1b2d\u1b2e\u0007V\u0002\u0002\u1b2e\u1b2f",
+ "\u0007K\u0002\u0002\u1b2f\u1b30\u0007V\u0002\u0002\u1b30\u1b31\u0007",
+ "K\u0002\u0002\u1b31\u1b32\u0007Q\u0002\u0002\u1b32\u1b33\u0007P\u0002",
+ "\u0002\u1b33\u044e\u0003\u0002\u0002\u0002\u1b34\u1b35\u0007U\u0002",
+ "\u0002\u1b35\u1b36\u0007W\u0002\u0002\u1b36\u1b37\u0007D\u0002\u0002",
+ "\u1b37\u1b38\u0007R\u0002\u0002\u1b38\u1b39\u0007C\u0002\u0002\u1b39",
+ "\u1b3a\u0007T\u0002\u0002\u1b3a\u1b3b\u0007V\u0002\u0002\u1b3b\u1b3c",
+ "\u0007K\u0002\u0002\u1b3c\u1b3d\u0007V\u0002\u0002\u1b3d\u1b3e\u0007",
+ "K\u0002\u0002\u1b3e\u1b3f\u0007Q\u0002\u0002\u1b3f\u1b40\u0007P\u0002",
+ "\u0002\u1b40\u1b41\u0007U\u0002\u0002\u1b41\u0450\u0003\u0002\u0002",
+ "\u0002\u1b42\u1b43\u0007U\u0002\u0002\u1b43\u1b44\u0007W\u0002\u0002",
+ "\u1b44\u1b45\u0007U\u0002\u0002\u1b45\u1b46\u0007R\u0002\u0002\u1b46",
+ "\u1b47\u0007G\u0002\u0002\u1b47\u1b48\u0007P\u0002\u0002\u1b48\u1b49",
+ "\u0007F\u0002\u0002\u1b49\u0452\u0003\u0002\u0002\u0002\u1b4a\u1b4b",
+ "\u0007U\u0002\u0002\u1b4b\u1b4c\u0007Y\u0002\u0002\u1b4c\u1b4d\u0007",
+ "C\u0002\u0002\u1b4d\u1b4e\u0007R\u0002\u0002\u1b4e\u1b4f\u0007U\u0002",
+ "\u0002\u1b4f\u0454\u0003\u0002\u0002\u0002\u1b50\u1b51\u0007U\u0002",
+ "\u0002\u1b51\u1b52\u0007Y\u0002\u0002\u1b52\u1b53\u0007K\u0002\u0002",
+ "\u1b53\u1b54\u0007V\u0002\u0002\u1b54\u1b55\u0007E\u0002\u0002\u1b55",
+ "\u1b56\u0007J\u0002\u0002\u1b56\u1b57\u0007G\u0002\u0002\u1b57\u1b58",
+ "\u0007U\u0002\u0002\u1b58\u0456\u0003\u0002\u0002\u0002\u1b59\u1b5a",
+ "\u0007V\u0002\u0002\u1b5a\u1b5b\u0007C\u0002\u0002\u1b5b\u1b5c\u0007",
+ "D\u0002\u0002\u1b5c\u1b5d\u0007N\u0002\u0002\u1b5d\u1b5e\u0007G\u0002",
+ "\u0002\u1b5e\u1b5f\u0007a\u0002\u0002\u1b5f\u1b60\u0007P\u0002\u0002",
+ "\u1b60\u1b61\u0007C\u0002\u0002\u1b61\u1b62\u0007O\u0002\u0002\u1b62",
+ "\u1b63\u0007G\u0002\u0002\u1b63\u0458\u0003\u0002\u0002\u0002\u1b64",
+ "\u1b65\u0007V\u0002\u0002\u1b65\u1b66\u0007C\u0002\u0002\u1b66\u1b67",
+ "\u0007D\u0002\u0002\u1b67\u1b68\u0007N\u0002\u0002\u1b68\u1b69\u0007",
+ "G\u0002\u0002\u1b69\u1b6a\u0007U\u0002\u0002\u1b6a\u1b6b\u0007R\u0002",
+ "\u0002\u1b6b\u1b6c\u0007C\u0002\u0002\u1b6c\u1b6d\u0007E\u0002\u0002",
+ "\u1b6d\u1b6e\u0007G\u0002\u0002\u1b6e\u045a\u0003\u0002\u0002\u0002",
+ "\u1b6f\u1b70\u0007V\u0002\u0002\u1b70\u1b71\u0007G\u0002\u0002\u1b71",
+ "\u1b72\u0007O\u0002\u0002\u1b72\u1b73\u0007R\u0002\u0002\u1b73\u1b74",
+ "\u0007Q\u0002\u0002\u1b74\u1b75\u0007T\u0002\u0002\u1b75\u1b76\u0007",
+ "C\u0002\u0002\u1b76\u1b77\u0007T\u0002\u0002\u1b77\u1b78\u0007[\u0002",
+ "\u0002\u1b78\u045c\u0003\u0002\u0002\u0002\u1b79\u1b7a\u0007V\u0002",
+ "\u0002\u1b7a\u1b7b\u0007G\u0002\u0002\u1b7b\u1b7c\u0007O\u0002\u0002",
+ "\u1b7c\u1b7d\u0007R\u0002\u0002\u1b7d\u1b7e\u0007V\u0002\u0002\u1b7e",
+ "\u1b7f\u0007C\u0002\u0002\u1b7f\u1b80\u0007D\u0002\u0002\u1b80\u1b81",
+ "\u0007N\u0002\u0002\u1b81\u1b82\u0007G\u0002\u0002\u1b82\u045e\u0003",
+ "\u0002\u0002\u0002\u1b83\u1b84\u0007V\u0002\u0002\u1b84\u1b85\u0007",
+ "J\u0002\u0002\u1b85\u1b86\u0007C\u0002\u0002\u1b86\u1b87\u0007P\u0002",
+ "\u0002\u1b87\u0460\u0003\u0002\u0002\u0002\u1b88\u1b89\u0007V\u0002",
+ "\u0002\u1b89\u1b8a\u0007T\u0002\u0002\u1b8a\u1b8b\u0007C\u0002\u0002",
+ "\u1b8b\u1b8c\u0007F\u0002\u0002\u1b8c\u1b8d\u0007K\u0002\u0002\u1b8d",
+ "\u1b8e\u0007V\u0002\u0002\u1b8e\u1b8f\u0007K\u0002\u0002\u1b8f\u1b90",
+ "\u0007Q\u0002\u0002\u1b90\u1b91\u0007P\u0002\u0002\u1b91\u1b92\u0007",
+ "C\u0002\u0002\u1b92\u1b93\u0007N\u0002\u0002\u1b93\u0462\u0003\u0002",
+ "\u0002\u0002\u1b94\u1b95\u0007V\u0002\u0002\u1b95\u1b96\u0007T\u0002",
+ "\u0002\u1b96\u1b97\u0007C\u0002\u0002\u1b97\u1b98\u0007P\u0002\u0002",
+ "\u1b98\u1b99\u0007U\u0002\u0002\u1b99\u1b9a\u0007C\u0002\u0002\u1b9a",
+ "\u1b9b\u0007E\u0002\u0002\u1b9b\u1b9c\u0007V\u0002\u0002\u1b9c\u1b9d",
+ "\u0007K\u0002\u0002\u1b9d\u1b9e\u0007Q\u0002\u0002\u1b9e\u1b9f\u0007",
+ "P\u0002\u0002\u1b9f\u0464\u0003\u0002\u0002\u0002\u1ba0\u1ba1\u0007",
+ "V\u0002\u0002\u1ba1\u1ba2\u0007T\u0002\u0002\u1ba2\u1ba3\u0007C\u0002",
+ "\u0002\u1ba3\u1ba4\u0007P\u0002\u0002\u1ba4\u1ba5\u0007U\u0002\u0002",
+ "\u1ba5\u1ba6\u0007C\u0002\u0002\u1ba6\u1ba7\u0007E\u0002\u0002\u1ba7",
+ "\u1ba8\u0007V\u0002\u0002\u1ba8\u1ba9\u0007K\u0002\u0002\u1ba9\u1baa",
+ "\u0007Q\u0002\u0002\u1baa\u1bab\u0007P\u0002\u0002\u1bab\u1bac\u0007",
+ "C\u0002\u0002\u1bac\u1bad\u0007N\u0002\u0002\u1bad\u0466\u0003\u0002",
+ "\u0002\u0002\u1bae\u1baf\u0007V\u0002\u0002\u1baf\u1bb0\u0007T\u0002",
+ "\u0002\u1bb0\u1bb1\u0007K\u0002\u0002\u1bb1\u1bb2\u0007I\u0002\u0002",
+ "\u1bb2\u1bb3\u0007I\u0002\u0002\u1bb3\u1bb4\u0007G\u0002\u0002\u1bb4",
+ "\u1bb5\u0007T\u0002\u0002\u1bb5\u1bb6\u0007U\u0002\u0002\u1bb6\u0468",
+ "\u0003\u0002\u0002\u0002\u1bb7\u1bb8\u0007V\u0002\u0002\u1bb8\u1bb9",
+ "\u0007T\u0002\u0002\u1bb9\u1bba\u0007W\u0002\u0002\u1bba\u1bbb\u0007",
+ "P\u0002\u0002\u1bbb\u1bbc\u0007E\u0002\u0002\u1bbc\u1bbd\u0007C\u0002",
+ "\u0002\u1bbd\u1bbe\u0007V\u0002\u0002\u1bbe\u1bbf\u0007G\u0002\u0002",
+ "\u1bbf\u046a\u0003\u0002\u0002\u0002\u1bc0\u1bc1\u0007W\u0002\u0002",
+ "\u1bc1\u1bc2\u0007P\u0002\u0002\u1bc2\u1bc3\u0007F\u0002\u0002\u1bc3",
+ "\u1bc4\u0007G\u0002\u0002\u1bc4\u1bc5\u0007H\u0002\u0002\u1bc5\u1bc6",
+ "\u0007K\u0002\u0002\u1bc6\u1bc7\u0007P\u0002\u0002\u1bc7\u1bc8\u0007",
+ "G\u0002\u0002\u1bc8\u1bc9\u0007F\u0002\u0002\u1bc9\u046c\u0003\u0002",
+ "\u0002\u0002\u1bca\u1bcb\u0007W\u0002\u0002\u1bcb\u1bcc\u0007P\u0002",
+ "\u0002\u1bcc\u1bcd\u0007F\u0002\u0002\u1bcd\u1bce\u0007Q\u0002\u0002",
+ "\u1bce\u1bcf\u0007H\u0002\u0002\u1bcf\u1bd0\u0007K\u0002\u0002\u1bd0",
+ "\u1bd1\u0007N\u0002\u0002\u1bd1\u1bd2\u0007G\u0002\u0002\u1bd2\u046e",
+ "\u0003\u0002\u0002\u0002\u1bd3\u1bd4\u0007W\u0002\u0002\u1bd4\u1bd5",
+ "\u0007P\u0002\u0002\u1bd5\u1bd6\u0007F\u0002\u0002\u1bd6\u1bd7\u0007",
+ "Q\u0002\u0002\u1bd7\u1bd8\u0007a\u0002\u0002\u1bd8\u1bd9\u0007D\u0002",
+ "\u0002\u1bd9\u1bda\u0007W\u0002\u0002\u1bda\u1bdb\u0007H\u0002\u0002",
+ "\u1bdb\u1bdc\u0007H\u0002\u0002\u1bdc\u1bdd\u0007G\u0002\u0002\u1bdd",
+ "\u1bde\u0007T\u0002\u0002\u1bde\u1bdf\u0007a\u0002\u0002\u1bdf\u1be0",
+ "\u0007U\u0002\u0002\u1be0\u1be1\u0007K\u0002\u0002\u1be1\u1be2\u0007",
+ "\\\u0002\u0002\u1be2\u1be3\u0007G\u0002\u0002\u1be3\u0470\u0003\u0002",
+ "\u0002\u0002\u1be4\u1be5\u0007W\u0002\u0002\u1be5\u1be6\u0007P\u0002",
+ "\u0002\u1be6\u1be7\u0007K\u0002\u0002\u1be7\u1be8\u0007P\u0002\u0002",
+ "\u1be8\u1be9\u0007U\u0002\u0002\u1be9\u1bea\u0007V\u0002\u0002\u1bea",
+ "\u1beb\u0007C\u0002\u0002\u1beb\u1bec\u0007N\u0002\u0002\u1bec\u1bed",
+ "\u0007N\u0002\u0002\u1bed\u0472\u0003\u0002\u0002\u0002\u1bee\u1bef",
+ "\u0007W\u0002\u0002\u1bef\u1bf0\u0007P\u0002\u0002\u1bf0\u1bf1\u0007",
+ "M\u0002\u0002\u1bf1\u1bf2\u0007P\u0002\u0002\u1bf2\u1bf3\u0007Q\u0002",
+ "\u0002\u1bf3\u1bf4\u0007Y\u0002\u0002\u1bf4\u1bf5\u0007P\u0002\u0002",
+ "\u1bf5\u0474\u0003\u0002\u0002\u0002\u1bf6\u1bf7\u0007W\u0002\u0002",
+ "\u1bf7\u1bf8\u0007P\u0002\u0002\u1bf8\u1bf9\u0007V\u0002\u0002\u1bf9",
+ "\u1bfa\u0007K\u0002\u0002\u1bfa\u1bfb\u0007N\u0002\u0002\u1bfb\u0476",
+ "\u0003\u0002\u0002\u0002\u1bfc\u1bfd\u0007W\u0002\u0002\u1bfd\u1bfe",
+ "\u0007R\u0002\u0002\u1bfe\u1bff\u0007I\u0002\u0002\u1bff\u1c00\u0007",
+ "T\u0002\u0002\u1c00\u1c01\u0007C\u0002\u0002\u1c01\u1c02\u0007F\u0002",
+ "\u0002\u1c02\u1c03\u0007G\u0002\u0002\u1c03\u0478\u0003\u0002\u0002",
+ "\u0002\u1c04\u1c05\u0007W\u0002\u0002\u1c05\u1c06\u0007U\u0002\u0002",
+ "\u1c06\u1c07\u0007G\u0002\u0002\u1c07\u1c08\u0007T\u0002\u0002\u1c08",
+ "\u047a\u0003\u0002\u0002\u0002\u1c09\u1c0a\u0007W\u0002\u0002\u1c0a",
+ "\u1c0b\u0007U\u0002\u0002\u1c0b\u1c0c\u0007G\u0002\u0002\u1c0c\u1c0d",
+ "\u0007a\u0002\u0002\u1c0d\u1c0e\u0007H\u0002\u0002\u1c0e\u1c0f\u0007",
+ "T\u0002\u0002\u1c0f\u1c10\u0007O\u0002\u0002\u1c10\u047c\u0003\u0002",
+ "\u0002\u0002\u1c11\u1c12\u0007W\u0002\u0002\u1c12\u1c13\u0007U\u0002",
+ "\u0002\u1c13\u1c14\u0007G\u0002\u0002\u1c14\u1c15\u0007T\u0002\u0002",
+ "\u1c15\u1c16\u0007a\u0002\u0002\u1c16\u1c17\u0007T\u0002\u0002\u1c17",
+ "\u1c18\u0007G\u0002\u0002\u1c18\u1c19\u0007U\u0002\u0002\u1c19\u1c1a",
+ "\u0007Q\u0002\u0002\u1c1a\u1c1b\u0007W\u0002\u0002\u1c1b\u1c1c\u0007",
+ "T\u0002\u0002\u1c1c\u1c1d\u0007E\u0002\u0002\u1c1d\u1c1e\u0007G\u0002",
+ "\u0002\u1c1e\u1c1f\u0007U\u0002\u0002\u1c1f\u047e\u0003\u0002\u0002",
+ "\u0002\u1c20\u1c21\u0007X\u0002\u0002\u1c21\u1c22\u0007C\u0002\u0002",
+ "\u1c22\u1c23\u0007N\u0002\u0002\u1c23\u1c24\u0007K\u0002\u0002\u1c24",
+ "\u1c25\u0007F\u0002\u0002\u1c25\u1c26\u0007C\u0002\u0002\u1c26\u1c27",
+ "\u0007V\u0002\u0002\u1c27\u1c28\u0007K\u0002\u0002\u1c28\u1c29\u0007",
+ "Q\u0002\u0002\u1c29\u1c2a\u0007P\u0002\u0002\u1c2a\u0480\u0003\u0002",
+ "\u0002\u0002\u1c2b\u1c2c\u0007X\u0002\u0002\u1c2c\u1c2d\u0007C\u0002",
+ "\u0002\u1c2d\u1c2e\u0007N\u0002\u0002\u1c2e\u1c2f\u0007W\u0002\u0002",
+ "\u1c2f\u1c30\u0007G\u0002\u0002\u1c30\u0482\u0003\u0002\u0002\u0002",
+ "\u1c31\u1c32\u0007X\u0002\u0002\u1c32\u1c33\u0007C\u0002\u0002\u1c33",
+ "\u1c34\u0007T\u0002\u0002\u1c34\u1c35\u0007K\u0002\u0002\u1c35\u1c36",
+ "\u0007C\u0002\u0002\u1c36\u1c37\u0007D\u0002\u0002\u1c37\u1c38\u0007",
+ "N\u0002\u0002\u1c38\u1c39\u0007G\u0002\u0002\u1c39\u1c3a\u0007U\u0002",
+ "\u0002\u1c3a\u0484\u0003\u0002\u0002\u0002\u1c3b\u1c3c\u0007X\u0002",
+ "\u0002\u1c3c\u1c3d\u0007K\u0002\u0002\u1c3d\u1c3e\u0007G\u0002\u0002",
+ "\u1c3e\u1c3f\u0007Y\u0002\u0002\u1c3f\u0486\u0003\u0002\u0002\u0002",
+ "\u1c40\u1c41\u0007X\u0002\u0002\u1c41\u1c42\u0007K\u0002\u0002\u1c42",
+ "\u1c43\u0007T\u0002\u0002\u1c43\u1c44\u0007V\u0002\u0002\u1c44\u1c45",
+ "\u0007W\u0002\u0002\u1c45\u1c46\u0007C\u0002\u0002\u1c46\u1c47\u0007",
+ "N\u0002\u0002\u1c47\u0488\u0003\u0002\u0002\u0002\u1c48\u1c49\u0007",
+ "X\u0002\u0002\u1c49\u1c4a\u0007K\u0002\u0002\u1c4a\u1c4b\u0007U\u0002",
+ "\u0002\u1c4b\u1c4c\u0007K\u0002\u0002\u1c4c\u1c4d\u0007D\u0002\u0002",
+ "\u1c4d\u1c4e\u0007N\u0002\u0002\u1c4e\u1c4f\u0007G\u0002\u0002\u1c4f",
+ "\u048a\u0003\u0002\u0002\u0002\u1c50\u1c51\u0007Y\u0002\u0002\u1c51",
+ "\u1c52\u0007C\u0002\u0002\u1c52\u1c53\u0007K\u0002\u0002\u1c53\u1c54",
+ "\u0007V\u0002\u0002\u1c54\u048c\u0003\u0002\u0002\u0002\u1c55\u1c56",
+ "\u0007Y\u0002\u0002\u1c56\u1c57\u0007C\u0002\u0002\u1c57\u1c58\u0007",
+ "T\u0002\u0002\u1c58\u1c59\u0007P\u0002\u0002\u1c59\u1c5a\u0007K\u0002",
+ "\u0002\u1c5a\u1c5b\u0007P\u0002\u0002\u1c5b\u1c5c\u0007I\u0002\u0002",
+ "\u1c5c\u1c5d\u0007U\u0002\u0002\u1c5d\u048e\u0003\u0002\u0002\u0002",
+ "\u1c5e\u1c5f\u0007Y\u0002\u0002\u1c5f\u1c60\u0007K\u0002\u0002\u1c60",
+ "\u1c61\u0007V\u0002\u0002\u1c61\u1c62\u0007J\u0002\u0002\u1c62\u1c63",
+ "\u0007Q\u0002\u0002\u1c63\u1c64\u0007W\u0002\u0002\u1c64\u1c65\u0007",
+ "V\u0002\u0002\u1c65\u0490\u0003\u0002\u0002\u0002\u1c66\u1c67\u0007",
+ "Y\u0002\u0002\u1c67\u1c68\u0007Q\u0002\u0002\u1c68\u1c69\u0007T\u0002",
+ "\u0002\u1c69\u1c6a\u0007M\u0002\u0002\u1c6a\u0492\u0003\u0002\u0002",
+ "\u0002\u1c6b\u1c6c\u0007Y\u0002\u0002\u1c6c\u1c6d\u0007T\u0002\u0002",
+ "\u1c6d\u1c6e\u0007C\u0002\u0002\u1c6e\u1c6f\u0007R\u0002\u0002\u1c6f",
+ "\u1c70\u0007R\u0002\u0002\u1c70\u1c71\u0007G\u0002\u0002\u1c71\u1c72",
+ "\u0007T\u0002\u0002\u1c72\u0494\u0003\u0002\u0002\u0002\u1c73\u1c74",
+ "\u0007Z\u0002\u0002\u1c74\u1c75\u00077\u0002\u0002\u1c75\u1c76\u0007",
+ "2\u0002\u0002\u1c76\u1c77\u0007;\u0002\u0002\u1c77\u0496\u0003\u0002",
+ "\u0002\u0002\u1c78\u1c79\u0007Z\u0002\u0002\u1c79\u1c7a\u0007C\u0002",
+ "\u0002\u1c7a\u0498\u0003\u0002\u0002\u0002\u1c7b\u1c7c\u0007Z\u0002",
+ "\u0002\u1c7c\u1c7d\u0007O\u0002\u0002\u1c7d\u1c7e\u0007N\u0002\u0002",
+ "\u1c7e\u049a\u0003\u0002\u0002\u0002\u1c7f\u1c80\u0007G\u0002\u0002",
+ "\u1c80\u1c81\u0007W\u0002\u0002\u1c81\u1c82\u0007T\u0002\u0002\u1c82",
+ "\u049c\u0003\u0002\u0002\u0002\u1c83\u1c84\u0007W\u0002\u0002\u1c84",
+ "\u1c85\u0007U\u0002\u0002\u1c85\u1c86\u0007C\u0002\u0002\u1c86\u049e",
+ "\u0003\u0002\u0002\u0002\u1c87\u1c88\u0007L\u0002\u0002\u1c88\u1c89",
+ "\u0007K\u0002\u0002\u1c89\u1c8a\u0007U\u0002\u0002\u1c8a\u04a0\u0003",
+ "\u0002\u0002\u0002\u1c8b\u1c8c\u0007K\u0002\u0002\u1c8c\u1c8d\u0007",
+ "U\u0002\u0002\u1c8d\u1c8e\u0007Q\u0002\u0002\u1c8e\u04a2\u0003\u0002",
+ "\u0002\u0002\u1c8f\u1c90\u0007K\u0002\u0002\u1c90\u1c91\u0007P\u0002",
+ "\u0002\u1c91\u1c92\u0007V\u0002\u0002\u1c92\u1c93\u0007G\u0002\u0002",
+ "\u1c93\u1c94\u0007T\u0002\u0002\u1c94\u1c95\u0007P\u0002\u0002\u1c95",
+ "\u1c96\u0007C\u0002\u0002\u1c96\u1c97\u0007N\u0002\u0002\u1c97\u04a4",
+ "\u0003\u0002\u0002\u0002\u1c98\u1c99\u0007S\u0002\u0002\u1c99\u1c9a",
+ "\u0007W\u0002\u0002\u1c9a\u1c9b\u0007C\u0002\u0002\u1c9b\u1c9c\u0007",
+ "T\u0002\u0002\u1c9c\u1c9d\u0007V\u0002\u0002\u1c9d\u1c9e\u0007G\u0002",
+ "\u0002\u1c9e\u1c9f\u0007T\u0002\u0002\u1c9f\u04a6\u0003\u0002\u0002",
+ "\u0002\u1ca0\u1ca1\u0007O\u0002\u0002\u1ca1\u1ca2\u0007Q\u0002\u0002",
+ "\u1ca2\u1ca3\u0007P\u0002\u0002\u1ca3\u1ca4\u0007V\u0002\u0002\u1ca4",
+ "\u1ca5\u0007J\u0002\u0002\u1ca5\u04a8\u0003\u0002\u0002\u0002\u1ca6",
+ "\u1ca7\u0007F\u0002\u0002\u1ca7\u1ca8\u0007C\u0002\u0002\u1ca8\u1ca9",
+ "\u0007[\u0002\u0002\u1ca9\u04aa\u0003\u0002\u0002\u0002\u1caa\u1cab",
+ "\u0007J\u0002\u0002\u1cab\u1cac\u0007Q\u0002\u0002\u1cac\u1cad\u0007",
+ "W\u0002\u0002\u1cad\u1cae\u0007T\u0002\u0002\u1cae\u04ac\u0003\u0002",
+ "\u0002\u0002\u1caf\u1cb0\u0007O\u0002\u0002\u1cb0\u1cb1\u0007K\u0002",
+ "\u0002\u1cb1\u1cb2\u0007P\u0002\u0002\u1cb2\u1cb3\u0007W\u0002\u0002",
+ "\u1cb3\u1cb4\u0007V\u0002\u0002\u1cb4\u1cb5\u0007G\u0002\u0002\u1cb5",
+ "\u04ae\u0003\u0002\u0002\u0002\u1cb6\u1cb7\u0007Y\u0002\u0002\u1cb7",
+ "\u1cb8\u0007G\u0002\u0002\u1cb8\u1cb9\u0007G\u0002\u0002\u1cb9\u1cba",
+ "\u0007M\u0002\u0002\u1cba\u04b0\u0003\u0002\u0002\u0002\u1cbb\u1cbc",
+ "\u0007U\u0002\u0002\u1cbc\u1cbd\u0007G\u0002\u0002\u1cbd\u1cbe\u0007",
+ "E\u0002\u0002\u1cbe\u1cbf\u0007Q\u0002\u0002\u1cbf\u1cc0\u0007P\u0002",
+ "\u0002\u1cc0\u1cc1\u0007F\u0002\u0002\u1cc1\u04b2\u0003\u0002\u0002",
+ "\u0002\u1cc2\u1cc3\u0007O\u0002\u0002\u1cc3\u1cc4\u0007K\u0002\u0002",
+ "\u1cc4\u1cc5\u0007E\u0002\u0002\u1cc5\u1cc6\u0007T\u0002\u0002\u1cc6",
+ "\u1cc7\u0007Q\u0002\u0002\u1cc7\u1cc8\u0007U\u0002\u0002\u1cc8\u1cc9",
+ "\u0007G\u0002\u0002\u1cc9\u1cca\u0007E\u0002\u0002\u1cca\u1ccb\u0007",
+ "Q\u0002\u0002\u1ccb\u1ccc\u0007P\u0002\u0002\u1ccc\u1ccd\u0007F\u0002",
+ "\u0002\u1ccd\u04b4\u0003\u0002\u0002\u0002\u1cce\u1ccf\u0007V\u0002",
+ "\u0002\u1ccf\u1cd0\u0007C\u0002\u0002\u1cd0\u1cd1\u0007D\u0002\u0002",
+ "\u1cd1\u1cd2\u0007N\u0002\u0002\u1cd2\u1cd3\u0007G\u0002\u0002\u1cd3",
+ "\u1cd4\u0007U\u0002\u0002\u1cd4\u04b6\u0003\u0002\u0002\u0002\u1cd5",
+ "\u1cd6\u0007T\u0002\u0002\u1cd6\u1cd7\u0007Q\u0002\u0002\u1cd7\u1cd8",
+ "\u0007W\u0002\u0002\u1cd8\u1cd9\u0007V\u0002\u0002\u1cd9\u1cda\u0007",
+ "K\u0002\u0002\u1cda\u1cdb\u0007P\u0002\u0002\u1cdb\u1cdc\u0007G\u0002",
+ "\u0002\u1cdc\u04b8\u0003\u0002\u0002\u0002\u1cdd\u1cde\u0007G\u0002",
+ "\u0002\u1cde\u1cdf\u0007Z\u0002\u0002\u1cdf\u1ce0\u0007G\u0002\u0002",
+ "\u1ce0\u1ce1\u0007E\u0002\u0002\u1ce1\u1ce2\u0007W\u0002\u0002\u1ce2",
+ "\u1ce3\u0007V\u0002\u0002\u1ce3\u1ce4\u0007G\u0002\u0002\u1ce4\u04ba",
+ "\u0003\u0002\u0002\u0002\u1ce5\u1ce6\u0007H\u0002\u0002\u1ce6\u1ce7",
+ "\u0007K\u0002\u0002\u1ce7\u1ce8\u0007N\u0002\u0002\u1ce8\u1ce9\u0007",
+ "G\u0002\u0002\u1ce9\u04bc\u0003\u0002\u0002\u0002\u1cea\u1ceb\u0007",
+ "R\u0002\u0002\u1ceb\u1cec\u0007T\u0002\u0002\u1cec\u1ced\u0007Q\u0002",
+ "\u0002\u1ced\u1cee\u0007E\u0002\u0002\u1cee\u1cef\u0007G\u0002\u0002",
+ "\u1cef\u1cf0\u0007U\u0002\u0002\u1cf0\u1cf1\u0007U\u0002\u0002\u1cf1",
+ "\u04be\u0003\u0002\u0002\u0002\u1cf2\u1cf3\u0007T\u0002\u0002\u1cf3",
+ "\u1cf4\u0007G\u0002\u0002\u1cf4\u1cf5\u0007N\u0002\u0002\u1cf5\u1cf6",
+ "\u0007Q\u0002\u0002\u1cf6\u1cf7\u0007C\u0002\u0002\u1cf7\u1cf8\u0007",
+ "F\u0002\u0002\u1cf8\u04c0\u0003\u0002\u0002\u0002\u1cf9\u1cfa\u0007",
+ "U\u0002\u0002\u1cfa\u1cfb\u0007J\u0002\u0002\u1cfb\u1cfc\u0007W\u0002",
+ "\u0002\u1cfc\u1cfd\u0007V\u0002\u0002\u1cfd\u1cfe\u0007F\u0002\u0002",
+ "\u1cfe\u1cff\u0007Q\u0002\u0002\u1cff\u1d00\u0007Y\u0002\u0002\u1d00",
+ "\u1d01\u0007P\u0002\u0002\u1d01\u04c2\u0003\u0002\u0002\u0002\u1d02",
+ "\u1d03\u0007U\u0002\u0002\u1d03\u1d04\u0007W\u0002\u0002\u1d04\u1d05",
+ "\u0007R\u0002\u0002\u1d05\u1d06\u0007G\u0002\u0002\u1d06\u1d07\u0007",
+ "T\u0002\u0002\u1d07\u04c4\u0003\u0002\u0002\u0002\u1d08\u1d09\u0007",
+ "R\u0002\u0002\u1d09\u1d0a\u0007T\u0002\u0002\u1d0a\u1d0b\u0007K\u0002",
+ "\u0002\u1d0b\u1d0c\u0007X\u0002\u0002\u1d0c\u1d0d\u0007K\u0002\u0002",
+ "\u1d0d\u1d0e\u0007N\u0002\u0002\u1d0e\u1d0f\u0007G\u0002\u0002\u1d0f",
+ "\u1d10\u0007I\u0002\u0002\u1d10\u1d11\u0007G\u0002\u0002\u1d11\u1d12",
+ "\u0007U\u0002\u0002\u1d12\u04c6\u0003\u0002\u0002\u0002\u1d13\u1d14",
+ "\u0007C\u0002\u0002\u1d14\u1d15\u0007R\u0002\u0002\u1d15\u1d16\u0007",
+ "R\u0002\u0002\u1d16\u1d17\u0007N\u0002\u0002\u1d17\u1d18\u0007K\u0002",
+ "\u0002\u1d18\u1d19\u0007E\u0002\u0002\u1d19\u1d1a\u0007C\u0002\u0002",
+ "\u1d1a\u1d1b\u0007V\u0002\u0002\u1d1b\u1d1c\u0007K\u0002\u0002\u1d1c",
+ "\u1d1d\u0007Q\u0002\u0002\u1d1d\u1d1e\u0007P\u0002\u0002\u1d1e\u1d1f",
+ "\u0007a\u0002\u0002\u1d1f\u1d20\u0007R\u0002\u0002\u1d20\u1d21\u0007",
+ "C\u0002\u0002\u1d21\u1d22\u0007U\u0002\u0002\u1d22\u1d23\u0007U\u0002",
+ "\u0002\u1d23\u1d24\u0007Y\u0002\u0002\u1d24\u1d25\u0007Q\u0002\u0002",
+ "\u1d25\u1d26\u0007T\u0002\u0002\u1d26\u1d27\u0007F\u0002\u0002\u1d27",
+ "\u1d28\u0007a\u0002\u0002\u1d28\u1d29\u0007C\u0002\u0002\u1d29\u1d2a",
+ "\u0007F\u0002\u0002\u1d2a\u1d2b\u0007O\u0002\u0002\u1d2b\u1d2c\u0007",
+ "K\u0002\u0002\u1d2c\u1d2d\u0007P\u0002\u0002\u1d2d\u04c8\u0003\u0002",
+ "\u0002\u0002\u1d2e\u1d2f\u0007C\u0002\u0002\u1d2f\u1d30\u0007W\u0002",
+ "\u0002\u1d30\u1d31\u0007F\u0002\u0002\u1d31\u1d32\u0007K\u0002\u0002",
+ "\u1d32\u1d33\u0007V\u0002\u0002\u1d33\u1d34\u0007a\u0002\u0002\u1d34",
+ "\u1d35\u0007C\u0002\u0002\u1d35\u1d36\u0007F\u0002\u0002\u1d36\u1d37",
+ "\u0007O\u0002\u0002\u1d37\u1d38\u0007K\u0002\u0002\u1d38\u1d39\u0007",
+ "P\u0002\u0002\u1d39\u04ca\u0003\u0002\u0002\u0002\u1d3a\u1d3b\u0007",
+ "D\u0002\u0002\u1d3b\u1d3c\u0007C\u0002\u0002\u1d3c\u1d3d\u0007E\u0002",
+ "\u0002\u1d3d\u1d3e\u0007M\u0002\u0002\u1d3e\u1d3f\u0007W\u0002\u0002",
+ "\u1d3f\u1d40\u0007R\u0002\u0002\u1d40\u1d41\u0007a\u0002\u0002\u1d41",
+ "\u1d42\u0007C\u0002\u0002\u1d42\u1d43\u0007F\u0002\u0002\u1d43\u1d44",
+ "\u0007O\u0002\u0002\u1d44\u1d45\u0007K\u0002\u0002\u1d45\u1d46\u0007",
+ "P\u0002\u0002\u1d46\u04cc\u0003\u0002\u0002\u0002\u1d47\u1d48\u0007",
+ "D\u0002\u0002\u1d48\u1d49\u0007K\u0002\u0002\u1d49\u1d4a\u0007P\u0002",
+ "\u0002\u1d4a\u1d4b\u0007N\u0002\u0002\u1d4b\u1d4c\u0007Q\u0002\u0002",
+ "\u1d4c\u1d4d\u0007I\u0002\u0002\u1d4d\u1d4e\u0007a\u0002\u0002\u1d4e",
+ "\u1d4f\u0007C\u0002\u0002\u1d4f\u1d50\u0007F\u0002\u0002\u1d50\u1d51",
+ "\u0007O\u0002\u0002\u1d51\u1d52\u0007K\u0002\u0002\u1d52\u1d53\u0007",
+ "P\u0002\u0002\u1d53\u04ce\u0003\u0002\u0002\u0002\u1d54\u1d55\u0007",
+ "D\u0002\u0002\u1d55\u1d56\u0007K\u0002\u0002\u1d56\u1d57\u0007P\u0002",
+ "\u0002\u1d57\u1d58\u0007N\u0002\u0002\u1d58\u1d59\u0007Q\u0002\u0002",
+ "\u1d59\u1d5a\u0007I\u0002\u0002\u1d5a\u1d5b\u0007a\u0002\u0002\u1d5b",
+ "\u1d5c\u0007G\u0002\u0002\u1d5c\u1d5d\u0007P\u0002\u0002\u1d5d\u1d5e",
+ "\u0007E\u0002\u0002\u1d5e\u1d5f\u0007T\u0002\u0002\u1d5f\u1d60\u0007",
+ "[\u0002\u0002\u1d60\u1d61\u0007R\u0002\u0002\u1d61\u1d62\u0007V\u0002",
+ "\u0002\u1d62\u1d63\u0007K\u0002\u0002\u1d63\u1d64\u0007Q\u0002\u0002",
+ "\u1d64\u1d65\u0007P\u0002\u0002\u1d65\u1d66\u0007a\u0002\u0002\u1d66",
+ "\u1d67\u0007C\u0002\u0002\u1d67\u1d68\u0007F\u0002\u0002\u1d68\u1d69",
+ "\u0007O\u0002\u0002\u1d69\u1d6a\u0007K\u0002\u0002\u1d6a\u1d6b\u0007",
+ "P\u0002\u0002\u1d6b\u04d0\u0003\u0002\u0002\u0002\u1d6c\u1d6d\u0007",
+ "E\u0002\u0002\u1d6d\u1d6e\u0007N\u0002\u0002\u1d6e\u1d6f\u0007Q\u0002",
+ "\u0002\u1d6f\u1d70\u0007P\u0002\u0002\u1d70\u1d71\u0007G\u0002\u0002",
+ "\u1d71\u1d72\u0007a\u0002\u0002\u1d72\u1d73\u0007C\u0002\u0002\u1d73",
+ "\u1d74\u0007F\u0002\u0002\u1d74\u1d75\u0007O\u0002\u0002\u1d75\u1d76",
+ "\u0007K\u0002\u0002\u1d76\u1d77\u0007P\u0002\u0002\u1d77\u04d2\u0003",
+ "\u0002\u0002\u0002\u1d78\u1d79\u0007E\u0002\u0002\u1d79\u1d7a\u0007",
+ "Q\u0002\u0002\u1d7a\u1d7b\u0007P\u0002\u0002\u1d7b\u1d7c\u0007P\u0002",
+ "\u0002\u1d7c\u1d7d\u0007G\u0002\u0002\u1d7d\u1d7e\u0007E\u0002\u0002",
+ "\u1d7e\u1d7f\u0007V\u0002\u0002\u1d7f\u1d80\u0007K\u0002\u0002\u1d80",
+ "\u1d81\u0007Q\u0002\u0002\u1d81\u1d82\u0007P\u0002\u0002\u1d82\u1d83",
+ "\u0007a\u0002\u0002\u1d83\u1d84\u0007C\u0002\u0002\u1d84\u1d85\u0007",
+ "F\u0002\u0002\u1d85\u1d86\u0007O\u0002\u0002\u1d86\u1d87\u0007K\u0002",
+ "\u0002\u1d87\u1d88\u0007P\u0002\u0002\u1d88\u04d4\u0003\u0002\u0002",
+ "\u0002\u1d89\u1d8a\u0007G\u0002\u0002\u1d8a\u1d8b\u0007P\u0002\u0002",
+ "\u1d8b\u1d8c\u0007E\u0002\u0002\u1d8c\u1d8d\u0007T\u0002\u0002\u1d8d",
+ "\u1d8e\u0007[\u0002\u0002\u1d8e\u1d8f\u0007R\u0002\u0002\u1d8f\u1d90",
+ "\u0007V\u0002\u0002\u1d90\u1d91\u0007K\u0002\u0002\u1d91\u1d92\u0007",
+ "Q\u0002\u0002\u1d92\u1d93\u0007P\u0002\u0002\u1d93\u1d94\u0007a\u0002",
+ "\u0002\u1d94\u1d95\u0007M\u0002\u0002\u1d95\u1d96\u0007G\u0002\u0002",
+ "\u1d96\u1d97\u0007[\u0002\u0002\u1d97\u1d98\u0007a\u0002\u0002\u1d98",
+ "\u1d99\u0007C\u0002\u0002\u1d99\u1d9a\u0007F\u0002\u0002\u1d9a\u1d9b",
+ "\u0007O\u0002\u0002\u1d9b\u1d9c\u0007K\u0002\u0002\u1d9c\u1d9d\u0007",
+ "P\u0002\u0002\u1d9d\u04d6\u0003\u0002\u0002\u0002\u1d9e\u1d9f\u0007",
+ "H\u0002\u0002\u1d9f\u1da0\u0007K\u0002\u0002\u1da0\u1da1\u0007T\u0002",
+ "\u0002\u1da1\u1da2\u0007G\u0002\u0002\u1da2\u1da3\u0007Y\u0002\u0002",
+ "\u1da3\u1da4\u0007C\u0002\u0002\u1da4\u1da5\u0007N\u0002\u0002\u1da5",
+ "\u1da6\u0007N\u0002\u0002\u1da6\u1da7\u0007a\u0002\u0002\u1da7\u1da8",
+ "\u0007C\u0002\u0002\u1da8\u1da9\u0007F\u0002\u0002\u1da9\u1daa\u0007",
+ "O\u0002\u0002\u1daa\u1dab\u0007K\u0002\u0002\u1dab\u1dac\u0007P\u0002",
+ "\u0002\u1dac\u04d8\u0003\u0002\u0002\u0002\u1dad\u1dae\u0007H\u0002",
+ "\u0002\u1dae\u1daf\u0007K\u0002\u0002\u1daf\u1db0\u0007T\u0002\u0002",
+ "\u1db0\u1db1\u0007G\u0002\u0002\u1db1\u1db2\u0007Y\u0002\u0002\u1db2",
+ "\u1db3\u0007C\u0002\u0002\u1db3\u1db4\u0007N\u0002\u0002\u1db4\u1db5",
+ "\u0007N\u0002\u0002\u1db5\u1db6\u0007a\u0002\u0002\u1db6\u1db7\u0007",
+ "W\u0002\u0002\u1db7\u1db8\u0007U\u0002\u0002\u1db8\u1db9\u0007G\u0002",
+ "\u0002\u1db9\u1dba\u0007T\u0002\u0002\u1dba\u04da\u0003\u0002\u0002",
+ "\u0002\u1dbb\u1dbc\u0007I\u0002\u0002\u1dbc\u1dbd\u0007T\u0002\u0002",
+ "\u1dbd\u1dbe\u0007Q\u0002\u0002\u1dbe\u1dbf\u0007W\u0002\u0002\u1dbf",
+ "\u1dc0\u0007R\u0002\u0002\u1dc0\u1dc1\u0007a\u0002\u0002\u1dc1\u1dc2",
+ "\u0007T\u0002\u0002\u1dc2\u1dc3\u0007G\u0002\u0002\u1dc3\u1dc4\u0007",
+ "R\u0002\u0002\u1dc4\u1dc5\u0007N\u0002\u0002\u1dc5\u1dc6\u0007K\u0002",
+ "\u0002\u1dc6\u1dc7\u0007E\u0002\u0002\u1dc7\u1dc8\u0007C\u0002\u0002",
+ "\u1dc8\u1dc9\u0007V\u0002\u0002\u1dc9\u1dca\u0007K\u0002\u0002\u1dca",
+ "\u1dcb\u0007Q\u0002\u0002\u1dcb\u1dcc\u0007P\u0002\u0002\u1dcc\u1dcd",
+ "\u0007a\u0002\u0002\u1dcd\u1dce\u0007C\u0002\u0002\u1dce\u1dcf\u0007",
+ "F\u0002\u0002\u1dcf\u1dd0\u0007O\u0002\u0002\u1dd0\u1dd1\u0007K\u0002",
+ "\u0002\u1dd1\u1dd2\u0007P\u0002\u0002\u1dd2\u04dc\u0003\u0002\u0002",
+ "\u0002\u1dd3\u1dd4\u0007K\u0002\u0002\u1dd4\u1dd5\u0007P\u0002\u0002",
+ "\u1dd5\u1dd6\u0007P\u0002\u0002\u1dd6\u1dd7\u0007Q\u0002\u0002\u1dd7",
+ "\u1dd8\u0007F\u0002\u0002\u1dd8\u1dd9\u0007D\u0002\u0002\u1dd9\u1dda",
+ "\u0007a\u0002\u0002\u1dda\u1ddb\u0007T\u0002\u0002\u1ddb\u1ddc\u0007",
+ "G\u0002\u0002\u1ddc\u1ddd\u0007F\u0002\u0002\u1ddd\u1dde\u0007Q\u0002",
+ "\u0002\u1dde\u1ddf\u0007a\u0002\u0002\u1ddf\u1de0\u0007N\u0002\u0002",
+ "\u1de0\u1de1\u0007Q\u0002\u0002\u1de1\u1de2\u0007I\u0002\u0002\u1de2",
+ "\u1de3\u0007a\u0002\u0002\u1de3\u1de4\u0007C\u0002\u0002\u1de4\u1de5",
+ "\u0007T\u0002\u0002\u1de5\u1de6\u0007E\u0002\u0002\u1de6\u1de7\u0007",
+ "J\u0002\u0002\u1de7\u1de8\u0007K\u0002\u0002\u1de8\u1de9\u0007X\u0002",
+ "\u0002\u1de9\u1dea\u0007G\u0002\u0002\u1dea\u04de\u0003\u0002\u0002",
+ "\u0002\u1deb\u1dec\u0007P\u0002\u0002\u1dec\u1ded\u0007F\u0002\u0002",
+ "\u1ded\u1dee\u0007D\u0002\u0002\u1dee\u1def\u0007a\u0002\u0002\u1def",
+ "\u1df0\u0007U\u0002\u0002\u1df0\u1df1\u0007V\u0002\u0002\u1df1\u1df2",
+ "\u0007Q\u0002\u0002\u1df2\u1df3\u0007T\u0002\u0002\u1df3\u1df4\u0007",
+ "G\u0002\u0002\u1df4\u1df5\u0007F\u0002\u0002\u1df5\u1df6\u0007a\u0002",
+ "\u0002\u1df6\u1df7\u0007W\u0002\u0002\u1df7\u1df8\u0007U\u0002\u0002",
+ "\u1df8\u1df9\u0007G\u0002\u0002\u1df9\u1dfa\u0007T\u0002\u0002\u1dfa",
+ "\u04e0\u0003\u0002\u0002\u0002\u1dfb\u1dfc\u0007R\u0002\u0002\u1dfc",
+ "\u1dfd\u0007G\u0002\u0002\u1dfd\u1dfe\u0007T\u0002\u0002\u1dfe\u1dff",
+ "\u0007U\u0002\u0002\u1dff\u1e00\u0007K\u0002\u0002\u1e00\u1e01\u0007",
+ "U\u0002\u0002\u1e01\u1e02\u0007V\u0002\u0002\u1e02\u1e03\u0007a\u0002",
+ "\u0002\u1e03\u1e04\u0007T\u0002\u0002\u1e04\u1e05\u0007Q\u0002\u0002",
+ "\u1e05\u1e06\u0007a\u0002\u0002\u1e06\u1e07\u0007X\u0002\u0002\u1e07",
+ "\u1e08\u0007C\u0002\u0002\u1e08\u1e09\u0007T\u0002\u0002\u1e09\u1e0a",
+ "\u0007K\u0002\u0002\u1e0a\u1e0b\u0007C\u0002\u0002\u1e0b\u1e0c\u0007",
+ "D\u0002\u0002\u1e0c\u1e0d\u0007N\u0002\u0002\u1e0d\u1e0e\u0007G\u0002",
+ "\u0002\u1e0e\u1e0f\u0007U\u0002\u0002\u1e0f\u1e10\u0007a\u0002\u0002",
+ "\u1e10\u1e11\u0007C\u0002\u0002\u1e11\u1e12\u0007F\u0002\u0002\u1e12",
+ "\u1e13\u0007O\u0002\u0002\u1e13\u1e14\u0007K\u0002\u0002\u1e14\u1e15",
+ "\u0007P\u0002\u0002\u1e15\u04e2\u0003\u0002\u0002\u0002\u1e16\u1e17",
+ "\u0007T\u0002\u0002\u1e17\u1e18\u0007G\u0002\u0002\u1e18\u1e19\u0007",
+ "R\u0002\u0002\u1e19\u1e1a\u0007N\u0002\u0002\u1e1a\u1e1b\u0007K\u0002",
+ "\u0002\u1e1b\u1e1c\u0007E\u0002\u0002\u1e1c\u1e1d\u0007C\u0002\u0002",
+ "\u1e1d\u1e1e\u0007V\u0002\u0002\u1e1e\u1e1f\u0007K\u0002\u0002\u1e1f",
+ "\u1e20\u0007Q\u0002\u0002\u1e20\u1e21\u0007P\u0002\u0002\u1e21\u1e22",
+ "\u0007a\u0002\u0002\u1e22\u1e23\u0007C\u0002\u0002\u1e23\u1e24\u0007",
+ "R\u0002\u0002\u1e24\u1e25\u0007R\u0002\u0002\u1e25\u1e26\u0007N\u0002",
+ "\u0002\u1e26\u1e27\u0007K\u0002\u0002\u1e27\u1e28\u0007G\u0002\u0002",
+ "\u1e28\u1e29\u0007T\u0002\u0002\u1e29\u04e4\u0003\u0002\u0002\u0002",
+ "\u1e2a\u1e2b\u0007T\u0002\u0002\u1e2b\u1e2c\u0007G\u0002\u0002\u1e2c",
+ "\u1e2d\u0007R\u0002\u0002\u1e2d\u1e2e\u0007N\u0002\u0002\u1e2e\u1e2f",
+ "\u0007K\u0002\u0002\u1e2f\u1e30\u0007E\u0002\u0002\u1e30\u1e31\u0007",
+ "C\u0002\u0002\u1e31\u1e32\u0007V\u0002\u0002\u1e32\u1e33\u0007K\u0002",
+ "\u0002\u1e33\u1e34\u0007Q\u0002\u0002\u1e34\u1e35\u0007P\u0002\u0002",
+ "\u1e35\u1e36\u0007a\u0002\u0002\u1e36\u1e37\u0007U\u0002\u0002\u1e37",
+ "\u1e38\u0007N\u0002\u0002\u1e38\u1e39\u0007C\u0002\u0002\u1e39\u1e3a",
+ "\u0007X\u0002\u0002\u1e3a\u1e3b\u0007G\u0002\u0002\u1e3b\u1e3c\u0007",
+ "a\u0002\u0002\u1e3c\u1e3d\u0007C\u0002\u0002\u1e3d\u1e3e\u0007F\u0002",
+ "\u0002\u1e3e\u1e3f\u0007O\u0002\u0002\u1e3f\u1e40\u0007K\u0002\u0002",
+ "\u1e40\u1e41\u0007P\u0002\u0002\u1e41\u04e6\u0003\u0002\u0002\u0002",
+ "\u1e42\u1e43\u0007T\u0002\u0002\u1e43\u1e44\u0007G\u0002\u0002\u1e44",
+ "\u1e45\u0007U\u0002\u0002\u1e45\u1e46\u0007Q\u0002\u0002\u1e46\u1e47",
+ "\u0007W\u0002\u0002\u1e47\u1e48\u0007T\u0002\u0002\u1e48\u1e49\u0007",
+ "E\u0002\u0002\u1e49\u1e4a\u0007G\u0002\u0002\u1e4a\u1e4b\u0007a\u0002",
+ "\u0002\u1e4b\u1e4c\u0007I\u0002\u0002\u1e4c\u1e4d\u0007T\u0002\u0002",
+ "\u1e4d\u1e4e\u0007Q\u0002\u0002\u1e4e\u1e4f\u0007W\u0002\u0002\u1e4f",
+ "\u1e50\u0007R\u0002\u0002\u1e50\u1e51\u0007a\u0002\u0002\u1e51\u1e52",
+ "\u0007C\u0002\u0002\u1e52\u1e53\u0007F\u0002\u0002\u1e53\u1e54\u0007",
+ "O\u0002\u0002\u1e54\u1e55\u0007K\u0002\u0002\u1e55\u1e56\u0007P\u0002",
+ "\u0002\u1e56\u04e8\u0003\u0002\u0002\u0002\u1e57\u1e58\u0007T\u0002",
+ "\u0002\u1e58\u1e59\u0007G\u0002\u0002\u1e59\u1e5a\u0007U\u0002\u0002",
+ "\u1e5a\u1e5b\u0007Q\u0002\u0002\u1e5b\u1e5c\u0007W\u0002\u0002\u1e5c",
+ "\u1e5d\u0007T\u0002\u0002\u1e5d\u1e5e\u0007E\u0002\u0002\u1e5e\u1e5f",
+ "\u0007G\u0002\u0002\u1e5f\u1e60\u0007a\u0002\u0002\u1e60\u1e61\u0007",
+ "I\u0002\u0002\u1e61\u1e62\u0007T\u0002\u0002\u1e62\u1e63\u0007Q\u0002",
+ "\u0002\u1e63\u1e64\u0007W\u0002\u0002\u1e64\u1e65\u0007R\u0002\u0002",
+ "\u1e65\u1e66\u0007a\u0002\u0002\u1e66\u1e67\u0007W\u0002\u0002\u1e67",
+ "\u1e68\u0007U\u0002\u0002\u1e68\u1e69\u0007G\u0002\u0002\u1e69\u1e6a",
+ "\u0007T\u0002\u0002\u1e6a\u04ea\u0003\u0002\u0002\u0002\u1e6b\u1e6c",
+ "\u0007T\u0002\u0002\u1e6c\u1e6d\u0007Q\u0002\u0002\u1e6d\u1e6e\u0007",
+ "N\u0002\u0002\u1e6e\u1e6f\u0007G\u0002\u0002\u1e6f\u1e70\u0007a\u0002",
+ "\u0002\u1e70\u1e71\u0007C\u0002\u0002\u1e71\u1e72\u0007F\u0002\u0002",
+ "\u1e72\u1e73\u0007O\u0002\u0002\u1e73\u1e74\u0007K\u0002\u0002\u1e74",
+ "\u1e75\u0007P\u0002\u0002\u1e75\u04ec\u0003\u0002\u0002\u0002\u1e76",
+ "\u1e78\u0005\u0811\u0409\u0002\u1e77\u1e76\u0003\u0002\u0002\u0002\u1e77",
+ "\u1e78\u0003\u0002\u0002\u0002\u1e78\u1e79\u0003\u0002\u0002\u0002\u1e79",
+ "\u1e7a\u0007U\u0002\u0002\u1e7a\u1e7b\u0007G\u0002\u0002\u1e7b\u1e7c",
+ "\u0007U\u0002\u0002\u1e7c\u1e7d\u0007U\u0002\u0002\u1e7d\u1e7e\u0007",
+ "K\u0002\u0002\u1e7e\u1e7f\u0007Q\u0002\u0002\u1e7f\u1e80\u0007P\u0002",
+ "\u0002\u1e80\u1e81\u0007a\u0002\u0002\u1e81\u1e82\u0007X\u0002\u0002",
+ "\u1e82\u1e83\u0007C\u0002\u0002\u1e83\u1e84\u0007T\u0002\u0002\u1e84",
+ "\u1e85\u0007K\u0002\u0002\u1e85\u1e86\u0007C\u0002\u0002\u1e86\u1e87",
+ "\u0007D\u0002\u0002\u1e87\u1e88\u0007N\u0002\u0002\u1e88\u1e89\u0007",
+ "G\u0002\u0002\u1e89\u1e8a\u0007U\u0002\u0002\u1e8a\u1e8b\u0007a\u0002",
+ "\u0002\u1e8b\u1e8c\u0007C\u0002\u0002\u1e8c\u1e8d\u0007F\u0002\u0002",
+ "\u1e8d\u1e8e\u0007O\u0002\u0002\u1e8e\u1e8f\u0007K\u0002\u0002\u1e8f",
+ "\u1e90\u0007P\u0002\u0002\u1e90\u1e92\u0003\u0002\u0002\u0002\u1e91",
+ "\u1e93\u0005\u0811\u0409\u0002\u1e92\u1e91\u0003\u0002\u0002\u0002\u1e92",
+ "\u1e93\u0003\u0002\u0002\u0002\u1e93\u04ee\u0003\u0002\u0002\u0002\u1e94",
+ "\u1e95\u0007U\u0002\u0002\u1e95\u1e96\u0007G\u0002\u0002\u1e96\u1e97",
+ "\u0007V\u0002\u0002\u1e97\u1e98\u0007a\u0002\u0002\u1e98\u1e99\u0007",
+ "W\u0002\u0002\u1e99\u1e9a\u0007U\u0002\u0002\u1e9a\u1e9b\u0007G\u0002",
+ "\u0002\u1e9b\u1e9c\u0007T\u0002\u0002\u1e9c\u1e9d\u0007a\u0002\u0002",
+ "\u1e9d\u1e9e\u0007K\u0002\u0002\u1e9e\u1e9f\u0007F\u0002\u0002\u1e9f",
+ "\u04f0\u0003\u0002\u0002\u0002\u1ea0\u1ea1\u0007U\u0002\u0002\u1ea1",
+ "\u1ea2\u0007J\u0002\u0002\u1ea2\u1ea3\u0007Q\u0002\u0002\u1ea3\u1ea4",
+ "\u0007Y\u0002\u0002\u1ea4\u1ea5\u0007a\u0002\u0002\u1ea5\u1ea6\u0007",
+ "T\u0002\u0002\u1ea6\u1ea7\u0007Q\u0002\u0002\u1ea7\u1ea8\u0007W\u0002",
+ "\u0002\u1ea8\u1ea9\u0007V\u0002\u0002\u1ea9\u1eaa\u0007K\u0002\u0002",
+ "\u1eaa\u1eab\u0007P\u0002\u0002\u1eab\u1eac\u0007G\u0002\u0002\u1eac",
+ "\u04f2\u0003\u0002\u0002\u0002\u1ead\u1eae\u0007U\u0002\u0002\u1eae",
+ "\u1eaf\u0007[\u0002\u0002\u1eaf\u1eb0\u0007U\u0002\u0002\u1eb0\u1eb1",
+ "\u0007V\u0002\u0002\u1eb1\u1eb2\u0007G\u0002\u0002\u1eb2\u1eb3\u0007",
+ "O\u0002\u0002\u1eb3\u1eb4\u0007a\u0002\u0002\u1eb4\u1eb5\u0007X\u0002",
+ "\u0002\u1eb5\u1eb6\u0007C\u0002\u0002\u1eb6\u1eb7\u0007T\u0002\u0002",
+ "\u1eb7\u1eb8\u0007K\u0002\u0002\u1eb8\u1eb9\u0007C\u0002\u0002\u1eb9",
+ "\u1eba\u0007D\u0002\u0002\u1eba\u1ebb\u0007N\u0002\u0002\u1ebb\u1ebc",
+ "\u0007G\u0002\u0002\u1ebc\u1ebd\u0007U\u0002\u0002\u1ebd\u1ebe\u0007",
+ "a\u0002\u0002\u1ebe\u1ebf\u0007C\u0002\u0002\u1ebf\u1ec0\u0007F\u0002",
+ "\u0002\u1ec0\u1ec1\u0007O\u0002\u0002\u1ec1\u1ec2\u0007K\u0002\u0002",
+ "\u1ec2\u1ec3\u0007P\u0002\u0002\u1ec3\u04f4\u0003\u0002\u0002\u0002",
+ "\u1ec4\u1ec5\u0007V\u0002\u0002\u1ec5\u1ec6\u0007C\u0002\u0002\u1ec6",
+ "\u1ec7\u0007D\u0002\u0002\u1ec7\u1ec8\u0007N\u0002\u0002\u1ec8\u1ec9",
+ "\u0007G\u0002\u0002\u1ec9\u1eca\u0007a\u0002\u0002\u1eca\u1ecb\u0007",
+ "G\u0002\u0002\u1ecb\u1ecc\u0007P\u0002\u0002\u1ecc\u1ecd\u0007E\u0002",
+ "\u0002\u1ecd\u1ece\u0007T\u0002\u0002\u1ece\u1ecf\u0007[\u0002\u0002",
+ "\u1ecf\u1ed0\u0007R\u0002\u0002\u1ed0\u1ed1\u0007V\u0002\u0002\u1ed1",
+ "\u1ed2\u0007K\u0002\u0002\u1ed2\u1ed3\u0007Q\u0002\u0002\u1ed3\u1ed4",
+ "\u0007P\u0002\u0002\u1ed4\u1ed5\u0007a\u0002\u0002\u1ed5\u1ed6\u0007",
+ "C\u0002\u0002\u1ed6\u1ed7\u0007F\u0002\u0002\u1ed7\u1ed8\u0007O\u0002",
+ "\u0002\u1ed8\u1ed9\u0007K\u0002\u0002\u1ed9\u1eda\u0007P\u0002\u0002",
+ "\u1eda\u04f6\u0003\u0002\u0002\u0002\u1edb\u1edc\u0007X\u0002\u0002",
+ "\u1edc\u1edd\u0007G\u0002\u0002\u1edd\u1ede\u0007T\u0002\u0002\u1ede",
+ "\u1edf\u0007U\u0002\u0002\u1edf\u1ee0\u0007K\u0002\u0002\u1ee0\u1ee1",
+ "\u0007Q\u0002\u0002\u1ee1\u1ee2\u0007P\u0002\u0002\u1ee2\u1ee3\u0007",
+ "a\u0002\u0002\u1ee3\u1ee4\u0007V\u0002\u0002\u1ee4\u1ee5\u0007Q\u0002",
+ "\u0002\u1ee5\u1ee6\u0007M\u0002\u0002\u1ee6\u1ee7\u0007G\u0002\u0002",
+ "\u1ee7\u1ee8\u0007P\u0002\u0002\u1ee8\u1ee9\u0007a\u0002\u0002\u1ee9",
+ "\u1eea\u0007C\u0002\u0002\u1eea\u1eeb\u0007F\u0002\u0002\u1eeb\u1eec",
+ "\u0007O\u0002\u0002\u1eec\u1eed\u0007K\u0002\u0002\u1eed\u1eee\u0007",
+ "P\u0002\u0002\u1eee\u04f8\u0003\u0002\u0002\u0002\u1eef\u1ef0\u0007",
+ "Z\u0002\u0002\u1ef0\u1ef1\u0007C\u0002\u0002\u1ef1\u1ef2\u0007a\u0002",
+ "\u0002\u1ef2\u1ef3\u0007T\u0002\u0002\u1ef3\u1ef4\u0007G\u0002\u0002",
+ "\u1ef4\u1ef5\u0007E\u0002\u0002\u1ef5\u1ef6\u0007Q\u0002\u0002\u1ef6",
+ "\u1ef7\u0007X\u0002\u0002\u1ef7\u1ef8\u0007G\u0002\u0002\u1ef8\u1ef9",
+ "\u0007T\u0002\u0002\u1ef9\u1efa\u0007a\u0002\u0002\u1efa\u1efb\u0007",
+ "C\u0002\u0002\u1efb\u1efc\u0007F\u0002\u0002\u1efc\u1efd\u0007O\u0002",
+ "\u0002\u1efd\u1efe\u0007K\u0002\u0002\u1efe\u1eff\u0007P\u0002\u0002",
+ "\u1eff\u04fa\u0003\u0002\u0002\u0002\u1f00\u1f01\u0007C\u0002\u0002",
+ "\u1f01\u1f02\u0007T\u0002\u0002\u1f02\u1f03\u0007O\u0002\u0002\u1f03",
+ "\u1f04\u0007U\u0002\u0002\u1f04\u1f05\u0007E\u0002\u0002\u1f05\u1f06",
+ "\u0007K\u0002\u0002\u1f06\u1f07\u0007K\u0002\u0002\u1f07\u1f08\u0007",
+ ":\u0002\u0002\u1f08\u04fc\u0003\u0002\u0002\u0002\u1f09\u1f0a\u0007",
+ "C\u0002\u0002\u1f0a\u1f0b\u0007U\u0002\u0002\u1f0b\u1f0c\u0007E\u0002",
+ "\u0002\u1f0c\u1f0d\u0007K\u0002\u0002\u1f0d\u1f0e\u0007K\u0002\u0002",
+ "\u1f0e\u04fe\u0003\u0002\u0002\u0002\u1f0f\u1f10\u0007D\u0002\u0002",
+ "\u1f10\u1f11\u0007K\u0002\u0002\u1f11\u1f12\u0007I\u0002\u0002\u1f12",
+ "\u1f13\u00077\u0002\u0002\u1f13\u0500\u0003\u0002\u0002\u0002\u1f14",
+ "\u1f15\u0007E\u0002\u0002\u1f15\u1f16\u0007R\u0002\u0002\u1f16\u1f17",
+ "\u00073\u0002\u0002\u1f17\u1f18\u00074\u0002\u0002\u1f18\u1f19\u0007",
+ "7\u0002\u0002\u1f19\u1f1a\u00072\u0002\u0002\u1f1a\u0502\u0003\u0002",
+ "\u0002\u0002\u1f1b\u1f1c\u0007E\u0002\u0002\u1f1c\u1f1d\u0007R\u0002",
+ "\u0002\u1f1d\u1f1e\u00073\u0002\u0002\u1f1e\u1f1f\u00074\u0002\u0002",
+ "\u1f1f\u1f20\u00077\u0002\u0002\u1f20\u1f21\u00073\u0002\u0002\u1f21",
+ "\u0504\u0003\u0002\u0002\u0002\u1f22\u1f23\u0007E\u0002\u0002\u1f23",
+ "\u1f24\u0007R\u0002\u0002\u1f24\u1f25\u00073\u0002\u0002\u1f25\u1f26",
+ "\u00074\u0002\u0002\u1f26\u1f27\u00077\u0002\u0002\u1f27\u1f28\u0007",
+ "8\u0002\u0002\u1f28\u0506\u0003\u0002\u0002\u0002\u1f29\u1f2a\u0007",
+ "E\u0002\u0002\u1f2a\u1f2b\u0007R\u0002\u0002\u1f2b\u1f2c\u00073\u0002",
+ "\u0002\u1f2c\u1f2d\u00074\u0002\u0002\u1f2d\u1f2e\u00077\u0002\u0002",
+ "\u1f2e\u1f2f\u00079\u0002\u0002\u1f2f\u0508\u0003\u0002\u0002\u0002",
+ "\u1f30\u1f31\u0007E\u0002\u0002\u1f31\u1f32\u0007R\u0002\u0002\u1f32",
+ "\u1f33\u0007:\u0002\u0002\u1f33\u1f34\u00077\u0002\u0002\u1f34\u1f35",
+ "\u00072\u0002\u0002\u1f35\u050a\u0003\u0002\u0002\u0002\u1f36\u1f37",
+ "\u0007E\u0002\u0002\u1f37\u1f38\u0007R\u0002\u0002\u1f38\u1f39\u0007",
+ ":\u0002\u0002\u1f39\u1f3a\u00077\u0002\u0002\u1f3a\u1f3b\u00074\u0002",
+ "\u0002\u1f3b\u050c\u0003\u0002\u0002\u0002\u1f3c\u1f3d\u0007E\u0002",
+ "\u0002\u1f3d\u1f3e\u0007R\u0002\u0002\u1f3e\u1f3f\u0007:\u0002\u0002",
+ "\u1f3f\u1f40\u00078\u0002\u0002\u1f40\u1f41\u00078\u0002\u0002\u1f41",
+ "\u050e\u0003\u0002\u0002\u0002\u1f42\u1f43\u0007E\u0002\u0002\u1f43",
+ "\u1f44\u0007R\u0002\u0002\u1f44\u1f45\u0007;\u0002\u0002\u1f45\u1f46",
+ "\u00075\u0002\u0002\u1f46\u1f47\u00074\u0002\u0002\u1f47\u0510\u0003",
+ "\u0002\u0002\u0002\u1f48\u1f49\u0007F\u0002\u0002\u1f49\u1f4a\u0007",
+ "G\u0002\u0002\u1f4a\u1f4b\u0007E\u0002\u0002\u1f4b\u1f4c\u0007:\u0002",
+ "\u0002\u1f4c\u0512\u0003\u0002\u0002\u0002\u1f4d\u1f4e\u0007G\u0002",
+ "\u0002\u1f4e\u1f4f\u0007W\u0002\u0002\u1f4f\u1f50\u0007E\u0002\u0002",
+ "\u1f50\u1f51\u0007L\u0002\u0002\u1f51\u1f52\u0007R\u0002\u0002\u1f52",
+ "\u1f53\u0007O\u0002\u0002\u1f53\u1f54\u0007U\u0002\u0002\u1f54\u0514",
+ "\u0003\u0002\u0002\u0002\u1f55\u1f56\u0007G\u0002\u0002\u1f56\u1f57",
+ "\u0007W\u0002\u0002\u1f57\u1f58\u0007E\u0002\u0002\u1f58\u1f59\u0007",
+ "M\u0002\u0002\u1f59\u1f5a\u0007T\u0002\u0002\u1f5a\u0516\u0003\u0002",
+ "\u0002\u0002\u1f5b\u1f5c\u0007I\u0002\u0002\u1f5c\u1f5d\u0007D\u0002",
+ "\u0002\u1f5d\u1f5e\u00074\u0002\u0002\u1f5e\u1f5f\u00075\u0002\u0002",
+ "\u1f5f\u1f60\u00073\u0002\u0002\u1f60\u1f61\u00074\u0002\u0002\u1f61",
+ "\u0518\u0003\u0002\u0002\u0002\u1f62\u1f63\u0007I\u0002\u0002\u1f63",
+ "\u1f64\u0007D\u0002\u0002\u1f64\u1f65\u0007M\u0002\u0002\u1f65\u051a",
+ "\u0003\u0002\u0002\u0002\u1f66\u1f67\u0007I\u0002\u0002\u1f67\u1f68",
+ "\u0007G\u0002\u0002\u1f68\u1f69\u0007Q\u0002\u0002\u1f69\u1f6a\u0007",
+ "U\u0002\u0002\u1f6a\u1f6b\u0007V\u0002\u0002\u1f6b\u1f6c\u0007F\u0002",
+ "\u0002\u1f6c\u1f6d\u0007:\u0002\u0002\u1f6d\u051c\u0003\u0002\u0002",
+ "\u0002\u1f6e\u1f6f\u0007I\u0002\u0002\u1f6f\u1f70\u0007T\u0002\u0002",
+ "\u1f70\u1f71\u0007G\u0002\u0002\u1f71\u1f72\u0007G\u0002\u0002\u1f72",
+ "\u1f73\u0007M\u0002\u0002\u1f73\u051e\u0003\u0002\u0002\u0002\u1f74",
+ "\u1f75\u0007J\u0002\u0002\u1f75\u1f76\u0007G\u0002\u0002\u1f76\u1f77",
+ "\u0007D\u0002\u0002\u1f77\u1f78\u0007T\u0002\u0002\u1f78\u1f79\u0007",
+ "G\u0002\u0002\u1f79\u1f7a\u0007Y\u0002\u0002\u1f7a\u0520\u0003\u0002",
+ "\u0002\u0002\u1f7b\u1f7c\u0007J\u0002\u0002\u1f7c\u1f7d\u0007R\u0002",
+ "\u0002\u1f7d\u1f7e\u0007:\u0002\u0002\u1f7e\u0522\u0003\u0002\u0002",
+ "\u0002\u1f7f\u1f80\u0007M\u0002\u0002\u1f80\u1f81\u0007G\u0002\u0002",
+ "\u1f81\u1f82\u0007[\u0002\u0002\u1f82\u1f83\u0007D\u0002\u0002\u1f83",
+ "\u1f84\u0007E\u0002\u0002\u1f84\u1f85\u0007U\u0002\u0002\u1f85\u1f86",
+ "\u00074\u0002\u0002\u1f86\u0524\u0003\u0002\u0002\u0002\u1f87\u1f88",
+ "\u0007M\u0002\u0002\u1f88\u1f89\u0007Q\u0002\u0002\u1f89\u1f8a\u0007",
+ "K\u0002\u0002\u1f8a\u1f8b\u0007:\u0002\u0002\u1f8b\u1f8c\u0007T\u0002",
+ "\u0002\u1f8c\u0526\u0003\u0002\u0002\u0002\u1f8d\u1f8e\u0007M\u0002",
+ "\u0002\u1f8e\u1f8f\u0007Q\u0002\u0002\u1f8f\u1f90\u0007K\u0002\u0002",
+ "\u1f90\u1f91\u0007:\u0002\u0002\u1f91\u1f92\u0007W\u0002\u0002\u1f92",
+ "\u0528\u0003\u0002\u0002\u0002\u1f93\u1f94\u0007N\u0002\u0002\u1f94",
+ "\u1f95\u0007C\u0002\u0002\u1f95\u1f96\u0007V\u0002\u0002\u1f96\u1f97",
+ "\u0007K\u0002\u0002\u1f97\u1f98\u0007P\u0002\u0002\u1f98\u1f99\u0007",
+ "3\u0002\u0002\u1f99\u052a\u0003\u0002\u0002\u0002\u1f9a\u1f9b\u0007",
+ "N\u0002\u0002\u1f9b\u1f9c\u0007C\u0002\u0002\u1f9c\u1f9d\u0007V\u0002",
+ "\u0002\u1f9d\u1f9e\u0007K\u0002\u0002\u1f9e\u1f9f\u0007P\u0002\u0002",
+ "\u1f9f\u1fa0\u00074\u0002\u0002\u1fa0\u052c\u0003\u0002\u0002\u0002",
+ "\u1fa1\u1fa2\u0007N\u0002\u0002\u1fa2\u1fa3\u0007C\u0002\u0002\u1fa3",
+ "\u1fa4\u0007V\u0002\u0002\u1fa4\u1fa5\u0007K\u0002\u0002\u1fa5\u1fa6",
+ "\u0007P\u0002\u0002\u1fa6\u1fa7\u00077\u0002\u0002\u1fa7\u052e\u0003",
+ "\u0002\u0002\u0002\u1fa8\u1fa9\u0007N\u0002\u0002\u1fa9\u1faa\u0007",
+ "C\u0002\u0002\u1faa\u1fab\u0007V\u0002\u0002\u1fab\u1fac\u0007K\u0002",
+ "\u0002\u1fac\u1fad\u0007P\u0002\u0002\u1fad\u1fae\u00079\u0002\u0002",
+ "\u1fae\u0530\u0003\u0002\u0002\u0002\u1faf\u1fb0\u0007O\u0002\u0002",
+ "\u1fb0\u1fb1\u0007C\u0002\u0002\u1fb1\u1fb2\u0007E\u0002\u0002\u1fb2",
+ "\u1fb3\u0007E\u0002\u0002\u1fb3\u1fb4\u0007G\u0002\u0002\u1fb4\u0532",
+ "\u0003\u0002\u0002\u0002\u1fb5\u1fb6\u0007O\u0002\u0002\u1fb6\u1fb7",
+ "\u0007C\u0002\u0002\u1fb7\u1fb8\u0007E\u0002\u0002\u1fb8\u1fb9\u0007",
+ "T\u0002\u0002\u1fb9\u1fba\u0007Q\u0002\u0002\u1fba\u1fbb\u0007O\u0002",
+ "\u0002\u1fbb\u1fbc\u0007C\u0002\u0002\u1fbc\u1fbd\u0007P\u0002\u0002",
+ "\u1fbd\u0534\u0003\u0002\u0002\u0002\u1fbe\u1fbf\u0007U\u0002\u0002",
+ "\u1fbf\u1fc0\u0007L\u0002\u0002\u1fc0\u1fc1\u0007K\u0002\u0002\u1fc1",
+ "\u1fc2\u0007U\u0002\u0002\u1fc2\u0536\u0003\u0002\u0002\u0002\u1fc3",
+ "\u1fc4\u0007U\u0002\u0002\u1fc4\u1fc5\u0007Y\u0002\u0002\u1fc5\u1fc6",
+ "\u0007G\u0002\u0002\u1fc6\u1fc7\u00079\u0002\u0002\u1fc7\u0538\u0003",
+ "\u0002\u0002\u0002\u1fc8\u1fc9\u0007V\u0002\u0002\u1fc9\u1fca\u0007",
+ "K\u0002\u0002\u1fca\u1fcb\u0007U\u0002\u0002\u1fcb\u1fcc\u00078\u0002",
+ "\u0002\u1fcc\u1fcd\u00074\u0002\u0002\u1fcd\u1fce\u00072\u0002\u0002",
+ "\u1fce\u053a\u0003\u0002\u0002\u0002\u1fcf\u1fd0\u0007W\u0002\u0002",
+ "\u1fd0\u1fd1\u0007E\u0002\u0002\u1fd1\u1fd2\u0007U\u0002\u0002\u1fd2",
+ "\u1fd3\u00074\u0002\u0002\u1fd3\u053c\u0003\u0002\u0002\u0002\u1fd4",
+ "\u1fd5\u0007W\u0002\u0002\u1fd5\u1fd6\u0007L\u0002\u0002\u1fd6\u1fd7",
+ "\u0007K\u0002\u0002\u1fd7\u1fd8\u0007U\u0002\u0002\u1fd8\u053e\u0003",
+ "\u0002\u0002\u0002\u1fd9\u1fda\u0007W\u0002\u0002\u1fda\u1fdb\u0007",
+ "V\u0002\u0002\u1fdb\u1fdc\u0007H\u0002\u0002\u1fdc\u1fdd\u00073\u0002",
+ "\u0002\u1fdd\u1fde\u00078\u0002\u0002\u1fde\u0540\u0003\u0002\u0002",
+ "\u0002\u1fdf\u1fe0\u0007W\u0002\u0002\u1fe0\u1fe1\u0007V\u0002\u0002",
+ "\u1fe1\u1fe2\u0007H\u0002\u0002\u1fe2\u1fe3\u00073\u0002\u0002\u1fe3",
+ "\u1fe4\u00078\u0002\u0002\u1fe4\u1fe5\u0007N\u0002\u0002\u1fe5\u1fe6",
+ "\u0007G\u0002\u0002\u1fe6\u0542\u0003\u0002\u0002\u0002\u1fe7\u1fe8",
+ "\u0007W\u0002\u0002\u1fe8\u1fe9\u0007V\u0002\u0002\u1fe9\u1fea\u0007",
+ "H\u0002\u0002\u1fea\u1feb\u00075\u0002\u0002\u1feb\u1fec\u00074\u0002",
+ "\u0002\u1fec\u0544\u0003\u0002\u0002\u0002\u1fed\u1fee\u0007W\u0002",
+ "\u0002\u1fee\u1fef\u0007V\u0002\u0002\u1fef\u1ff0\u0007H\u0002\u0002",
+ "\u1ff0\u1ff1\u0007:\u0002\u0002\u1ff1\u0546\u0003\u0002\u0002\u0002",
+ "\u1ff2\u1ff3\u0007W\u0002\u0002\u1ff3\u1ff4\u0007V\u0002\u0002\u1ff4",
+ "\u1ff5\u0007H\u0002\u0002\u1ff5\u1ff6\u0007:\u0002\u0002\u1ff6\u1ff7",
+ "\u0007O\u0002\u0002\u1ff7\u1ff8\u0007D\u0002\u0002\u1ff8\u1ff9\u0007",
+ "5\u0002\u0002\u1ff9\u0548\u0003\u0002\u0002\u0002\u1ffa\u1ffb\u0007",
+ "W\u0002\u0002\u1ffb\u1ffc\u0007V\u0002\u0002\u1ffc\u1ffd\u0007H\u0002",
+ "\u0002\u1ffd\u1ffe\u0007:\u0002\u0002\u1ffe\u1fff\u0007O\u0002\u0002",
+ "\u1fff\u2000\u0007D\u0002\u0002\u2000\u2001\u00076\u0002\u0002\u2001",
+ "\u054a\u0003\u0002\u0002\u0002\u2002\u2003\u0007C\u0002\u0002\u2003",
+ "\u2004\u0007T\u0002\u0002\u2004\u2005\u0007E\u0002\u0002\u2005\u2006",
+ "\u0007J\u0002\u0002\u2006\u2007\u0007K\u0002\u0002\u2007\u2008\u0007",
+ "X\u0002\u0002\u2008\u2009\u0007G\u0002\u0002\u2009\u054c\u0003\u0002",
+ "\u0002\u0002\u200a\u200b\u0007D\u0002\u0002\u200b\u200c\u0007N\u0002",
+ "\u0002\u200c\u200d\u0007C\u0002\u0002\u200d\u200e\u0007E\u0002\u0002",
+ "\u200e\u200f\u0007M\u0002\u0002\u200f\u2010\u0007J\u0002\u0002\u2010",
+ "\u2011\u0007Q\u0002\u0002\u2011\u2012\u0007N\u0002\u0002\u2012\u2013",
+ "\u0007G\u0002\u0002\u2013\u054e\u0003\u0002\u0002\u0002\u2014\u2015",
+ "\u0007E\u0002\u0002\u2015\u2016\u0007U\u0002\u0002\u2016\u2017\u0007",
+ "X\u0002\u0002\u2017\u0550\u0003\u0002\u0002\u0002\u2018\u2019\u0007",
+ "H\u0002\u0002\u2019\u201a\u0007G\u0002\u0002\u201a\u201b\u0007F\u0002",
+ "\u0002\u201b\u201c\u0007G\u0002\u0002\u201c\u201d\u0007T\u0002\u0002",
+ "\u201d\u201e\u0007C\u0002\u0002\u201e\u201f\u0007V\u0002\u0002\u201f",
+ "\u2020\u0007G\u0002\u0002\u2020\u2021\u0007F\u0002\u0002\u2021\u0552",
+ "\u0003\u0002\u0002\u0002\u2022\u2023\u0007K\u0002\u0002\u2023\u2024",
+ "\u0007P\u0002\u0002\u2024\u2025\u0007P\u0002\u0002\u2025\u2026\u0007",
+ "Q\u0002\u0002\u2026\u2027\u0007F\u0002\u0002\u2027\u2028\u0007D\u0002",
+ "\u0002\u2028\u0554\u0003\u0002\u0002\u0002\u2029\u202a\u0007O\u0002",
+ "\u0002\u202a\u202b\u0007G\u0002\u0002\u202b\u202c\u0007O\u0002\u0002",
+ "\u202c\u202d\u0007Q\u0002\u0002\u202d\u202e\u0007T\u0002\u0002\u202e",
+ "\u202f\u0007[\u0002\u0002\u202f\u0556\u0003\u0002\u0002\u0002\u2030",
+ "\u2031\u0007O\u0002\u0002\u2031\u2032\u0007T\u0002\u0002\u2032\u2033",
+ "\u0007I\u0002\u0002\u2033\u2034\u0007a\u0002\u0002\u2034\u2035\u0007",
+ "O\u0002\u0002\u2035\u2036\u0007[\u0002\u0002\u2036\u2037\u0007K\u0002",
+ "\u0002\u2037\u2038\u0007U\u0002\u0002\u2038\u2039\u0007C\u0002\u0002",
+ "\u2039\u203a\u0007O\u0002\u0002\u203a\u0558\u0003\u0002\u0002\u0002",
+ "\u203b\u203c\u0007O\u0002\u0002\u203c\u203d\u0007[\u0002\u0002\u203d",
+ "\u203e\u0007K\u0002\u0002\u203e\u203f\u0007U\u0002\u0002\u203f\u2040",
+ "\u0007C\u0002\u0002\u2040\u2041\u0007O\u0002\u0002\u2041\u055a\u0003",
+ "\u0002\u0002\u0002\u2042\u2043\u0007P\u0002\u0002\u2043\u2044\u0007",
+ "F\u0002\u0002\u2044\u2045\u0007D\u0002\u0002\u2045\u055c\u0003\u0002",
+ "\u0002\u0002\u2046\u2047\u0007P\u0002\u0002\u2047\u2048\u0007F\u0002",
+ "\u0002\u2048\u2049\u0007D\u0002\u0002\u2049\u204a\u0007E\u0002\u0002",
+ "\u204a\u204b\u0007N\u0002\u0002\u204b\u204c\u0007W\u0002\u0002\u204c",
+ "\u204d\u0007U\u0002\u0002\u204d\u204e\u0007V\u0002\u0002\u204e\u204f",
+ "\u0007G\u0002\u0002\u204f\u2050\u0007T\u0002\u0002\u2050\u055e\u0003",
+ "\u0002\u0002\u0002\u2051\u2052\u0007R\u0002\u0002\u2052\u2053\u0007",
+ "G\u0002\u0002\u2053\u2054\u0007T\u0002\u0002\u2054\u2055\u0007H\u0002",
+ "\u0002\u2055\u2056\u0007Q\u0002\u0002\u2056\u2057\u0007T\u0002\u0002",
+ "\u2057\u2058\u0007O\u0002\u0002\u2058\u2059\u0007C\u0002\u0002\u2059",
+ "\u205a\u0007P\u0002\u0002\u205a\u205b\u0007E\u0002\u0002\u205b\u205c",
+ "\u0007G\u0002\u0002\u205c\u205d\u0007a\u0002\u0002\u205d\u205e\u0007",
+ "U\u0002\u0002\u205e\u205f\u0007E\u0002\u0002\u205f\u2060\u0007J\u0002",
+ "\u0002\u2060\u2061\u0007G\u0002\u0002\u2061\u2062\u0007O\u0002\u0002",
+ "\u2062\u2063\u0007C\u0002\u0002\u2063\u0560\u0003\u0002\u0002\u0002",
+ "\u2064\u2065\u0007V\u0002\u0002\u2065\u2066\u0007Q\u0002\u0002\u2066",
+ "\u2067\u0007M\u0002\u0002\u2067\u2068\u0007W\u0002\u0002\u2068\u2069",
+ "\u0007F\u0002\u0002\u2069\u206a\u0007D\u0002\u0002\u206a\u0562\u0003",
+ "\u0002\u0002\u0002\u206b\u206c\u0007T\u0002\u0002\u206c\u206d\u0007",
+ "G\u0002\u0002\u206d\u206e\u0007R\u0002\u0002\u206e\u206f\u0007G\u0002",
+ "\u0002\u206f\u2070\u0007C\u0002\u0002\u2070\u2071\u0007V\u0002\u0002",
+ "\u2071\u2072\u0007C\u0002\u0002\u2072\u2073\u0007D\u0002\u0002\u2073",
+ "\u2074\u0007N\u0002\u0002\u2074\u2075\u0007G\u0002\u0002\u2075\u0564",
+ "\u0003\u0002\u0002\u0002\u2076\u2077\u0007E\u0002\u0002\u2077\u2078",
+ "\u0007Q\u0002\u0002\u2078\u2079\u0007O\u0002\u0002\u2079\u207a\u0007",
+ "O\u0002\u0002\u207a\u207b\u0007K\u0002\u0002\u207b\u207c\u0007V\u0002",
+ "\u0002\u207c\u207d\u0007V\u0002\u0002\u207d\u207e\u0007G\u0002\u0002",
+ "\u207e\u207f\u0007F\u0002\u0002\u207f\u0566\u0003\u0002\u0002\u0002",
+ "\u2080\u2081\u0007W\u0002\u0002\u2081\u2082\u0007P\u0002\u0002\u2082",
+ "\u2083\u0007E\u0002\u0002\u2083\u2084\u0007Q\u0002\u0002\u2084\u2085",
+ "\u0007O\u0002\u0002\u2085\u2086\u0007O\u0002\u0002\u2086\u2087\u0007",
+ "K\u0002\u0002\u2087\u2088\u0007V\u0002\u0002\u2088\u2089\u0007V\u0002",
+ "\u0002\u2089\u208a\u0007G\u0002\u0002\u208a\u208b\u0007F\u0002\u0002",
+ "\u208b\u0568\u0003\u0002\u0002\u0002\u208c\u208d\u0007U\u0002\u0002",
+ "\u208d\u208e\u0007G\u0002\u0002\u208e\u208f\u0007T\u0002\u0002\u208f",
+ "\u2090\u0007K\u0002\u0002\u2090\u2091\u0007C\u0002\u0002\u2091\u2092",
+ "\u0007N\u0002\u0002\u2092\u2093\u0007K\u0002\u0002\u2093\u2094\u0007",
+ "\\\u0002\u0002\u2094\u2095\u0007C\u0002\u0002\u2095\u2096\u0007D\u0002",
+ "\u0002\u2096\u2097\u0007N\u0002\u0002\u2097\u2098\u0007G\u0002\u0002",
+ "\u2098\u056a\u0003\u0002\u0002\u0002\u2099\u209a\u0007I\u0002\u0002",
+ "\u209a\u209b\u0007G\u0002\u0002\u209b\u209c\u0007Q\u0002\u0002\u209c",
+ "\u209d\u0007O\u0002\u0002\u209d\u209e\u0007G\u0002\u0002\u209e\u209f",
+ "\u0007V\u0002\u0002\u209f\u20a0\u0007T\u0002\u0002\u20a0\u20a1\u0007",
+ "[\u0002\u0002\u20a1\u20a2\u0007E\u0002\u0002\u20a2\u20a3\u0007Q\u0002",
+ "\u0002\u20a3\u20a4\u0007N\u0002\u0002\u20a4\u20a5\u0007N\u0002\u0002",
+ "\u20a5\u20a6\u0007G\u0002\u0002\u20a6\u20a7\u0007E\u0002\u0002\u20a7",
+ "\u20a8\u0007V\u0002\u0002\u20a8\u20a9\u0007K\u0002\u0002\u20a9\u20aa",
+ "\u0007Q\u0002\u0002\u20aa\u20ab\u0007P\u0002\u0002\u20ab\u056c\u0003",
+ "\u0002\u0002\u0002\u20ac\u20ad\u0007I\u0002\u0002\u20ad\u20ae\u0007",
+ "G\u0002\u0002\u20ae\u20af\u0007Q\u0002\u0002\u20af\u20b0\u0007O\u0002",
+ "\u0002\u20b0\u20b1\u0007E\u0002\u0002\u20b1\u20b2\u0007Q\u0002\u0002",
+ "\u20b2\u20b3\u0007N\u0002\u0002\u20b3\u20b4\u0007N\u0002\u0002\u20b4",
+ "\u20b5\u0007G\u0002\u0002\u20b5\u20b6\u0007E\u0002\u0002\u20b6\u20b7",
+ "\u0007V\u0002\u0002\u20b7\u20b8\u0007K\u0002\u0002\u20b8\u20b9\u0007",
+ "Q\u0002\u0002\u20b9\u20ba\u0007P\u0002\u0002\u20ba\u056e\u0003\u0002",
+ "\u0002\u0002\u20bb\u20bc\u0007I\u0002\u0002\u20bc\u20bd\u0007G\u0002",
+ "\u0002\u20bd\u20be\u0007Q\u0002\u0002\u20be\u20bf\u0007O\u0002\u0002",
+ "\u20bf\u20c0\u0007G\u0002\u0002\u20c0\u20c1\u0007V\u0002\u0002\u20c1",
+ "\u20c2\u0007T\u0002\u0002\u20c2\u20c3\u0007[\u0002\u0002\u20c3\u0570",
+ "\u0003\u0002\u0002\u0002\u20c4\u20c5\u0007N\u0002\u0002\u20c5\u20c6",
+ "\u0007K\u0002\u0002\u20c6\u20c7\u0007P\u0002\u0002\u20c7\u20c8\u0007",
+ "G\u0002\u0002\u20c8\u20c9\u0007U\u0002\u0002\u20c9\u20ca\u0007V\u0002",
+ "\u0002\u20ca\u20cb\u0007T\u0002\u0002\u20cb\u20cc\u0007K\u0002\u0002",
+ "\u20cc\u20cd\u0007P\u0002\u0002\u20cd\u20ce\u0007I\u0002\u0002\u20ce",
+ "\u0572\u0003\u0002\u0002\u0002\u20cf\u20d0\u0007O\u0002\u0002\u20d0",
+ "\u20d1\u0007W\u0002\u0002\u20d1\u20d2\u0007N\u0002\u0002\u20d2\u20d3",
+ "\u0007V\u0002\u0002\u20d3\u20d4\u0007K\u0002\u0002\u20d4\u20d5\u0007",
+ "N\u0002\u0002\u20d5\u20d6\u0007K\u0002\u0002\u20d6\u20d7\u0007P\u0002",
+ "\u0002\u20d7\u20d8\u0007G\u0002\u0002\u20d8\u20d9\u0007U\u0002\u0002",
+ "\u20d9\u20da\u0007V\u0002\u0002\u20da\u20db\u0007T\u0002\u0002\u20db",
+ "\u20dc\u0007K\u0002\u0002\u20dc\u20dd\u0007P\u0002\u0002\u20dd\u20de",
+ "\u0007I\u0002\u0002\u20de\u0574\u0003\u0002\u0002\u0002\u20df\u20e0",
+ "\u0007O\u0002\u0002\u20e0\u20e1\u0007W\u0002\u0002\u20e1\u20e2\u0007",
+ "N\u0002\u0002\u20e2\u20e3\u0007V\u0002\u0002\u20e3\u20e4\u0007K\u0002",
+ "\u0002\u20e4\u20e5\u0007R\u0002\u0002\u20e5\u20e6\u0007Q\u0002\u0002",
+ "\u20e6\u20e7\u0007K\u0002\u0002\u20e7\u20e8\u0007P\u0002\u0002\u20e8",
+ "\u20e9\u0007V\u0002\u0002\u20e9\u0576\u0003\u0002\u0002\u0002\u20ea",
+ "\u20eb\u0007O\u0002\u0002\u20eb\u20ec\u0007W\u0002\u0002\u20ec\u20ed",
+ "\u0007N\u0002\u0002\u20ed\u20ee\u0007V\u0002\u0002\u20ee\u20ef\u0007",
+ "K\u0002\u0002\u20ef\u20f0\u0007R\u0002\u0002\u20f0\u20f1\u0007Q\u0002",
+ "\u0002\u20f1\u20f2\u0007N\u0002\u0002\u20f2\u20f3\u0007[\u0002\u0002",
+ "\u20f3\u20f4\u0007I\u0002\u0002\u20f4\u20f5\u0007Q\u0002\u0002\u20f5",
+ "\u20f6\u0007P\u0002\u0002\u20f6\u0578\u0003\u0002\u0002\u0002\u20f7",
+ "\u20f8\u0007R\u0002\u0002\u20f8\u20f9\u0007Q\u0002\u0002\u20f9\u20fa",
+ "\u0007K\u0002\u0002\u20fa\u20fb\u0007P\u0002\u0002\u20fb\u20fc\u0007",
+ "V\u0002\u0002\u20fc\u057a\u0003\u0002\u0002\u0002\u20fd\u20fe\u0007",
+ "R\u0002\u0002\u20fe\u20ff\u0007Q\u0002\u0002\u20ff\u2100\u0007N\u0002",
+ "\u0002\u2100\u2101\u0007[\u0002\u0002\u2101\u2102\u0007I\u0002\u0002",
+ "\u2102\u2103\u0007Q\u0002\u0002\u2103\u2104\u0007P\u0002\u0002\u2104",
+ "\u057c\u0003\u0002\u0002\u0002\u2105\u2106\u0007C\u0002\u0002\u2106",
+ "\u2107\u0007D\u0002\u0002\u2107\u2108\u0007U\u0002\u0002\u2108\u057e",
+ "\u0003\u0002\u0002\u0002\u2109\u210a\u0007C\u0002\u0002\u210a\u210b",
+ "\u0007E\u0002\u0002\u210b\u210c\u0007Q\u0002\u0002\u210c\u210d\u0007",
+ "U\u0002\u0002\u210d\u0580\u0003\u0002\u0002\u0002\u210e\u210f\u0007",
+ "C\u0002\u0002\u210f\u2110\u0007F\u0002\u0002\u2110\u2111\u0007F\u0002",
+ "\u0002\u2111\u2112\u0007F\u0002\u0002\u2112\u2113\u0007C\u0002\u0002",
+ "\u2113\u2114\u0007V\u0002\u0002\u2114\u2115\u0007G\u0002\u0002\u2115",
+ "\u0582\u0003\u0002\u0002\u0002\u2116\u2117\u0007C\u0002\u0002\u2117",
+ "\u2118\u0007F\u0002\u0002\u2118\u2119\u0007F\u0002\u0002\u2119\u211a",
+ "\u0007V\u0002\u0002\u211a\u211b\u0007K\u0002\u0002\u211b\u211c\u0007",
+ "O\u0002\u0002\u211c\u211d\u0007G\u0002\u0002\u211d\u0584\u0003\u0002",
+ "\u0002\u0002\u211e\u211f\u0007C\u0002\u0002\u211f\u2120\u0007G\u0002",
+ "\u0002\u2120\u2121\u0007U\u0002\u0002\u2121\u2122\u0007a\u0002\u0002",
+ "\u2122\u2123\u0007F\u0002\u0002\u2123\u2124\u0007G\u0002\u0002\u2124",
+ "\u2125\u0007E\u0002\u0002\u2125\u2126\u0007T\u0002\u0002\u2126\u2127",
+ "\u0007[\u0002\u0002\u2127\u2128\u0007R\u0002\u0002\u2128\u2129\u0007",
+ "V\u0002\u0002\u2129\u0586\u0003\u0002\u0002\u0002\u212a\u212b\u0007",
+ "C\u0002\u0002\u212b\u212c\u0007G\u0002\u0002\u212c\u212d\u0007U\u0002",
+ "\u0002\u212d\u212e\u0007a\u0002\u0002\u212e\u212f\u0007G\u0002\u0002",
+ "\u212f\u2130\u0007P\u0002\u0002\u2130\u2131\u0007E\u0002\u0002\u2131",
+ "\u2132\u0007T\u0002\u0002\u2132\u2133\u0007[\u0002\u0002\u2133\u2134",
+ "\u0007R\u0002\u0002\u2134\u2135\u0007V\u0002\u0002\u2135\u0588\u0003",
+ "\u0002\u0002\u0002\u2136\u2137\u0007C\u0002\u0002\u2137\u2138\u0007",
+ "T\u0002\u0002\u2138\u2139\u0007G\u0002\u0002\u2139\u213a\u0007C\u0002",
+ "\u0002\u213a\u058a\u0003\u0002\u0002\u0002\u213b\u213c\u0007C\u0002",
+ "\u0002\u213c\u213d\u0007U\u0002\u0002\u213d\u213e\u0007D\u0002\u0002",
+ "\u213e\u213f\u0007K\u0002\u0002\u213f\u2140\u0007P\u0002\u0002\u2140",
+ "\u2141\u0007C\u0002\u0002\u2141\u2142\u0007T\u0002\u0002\u2142\u2143",
+ "\u0007[\u0002\u0002\u2143\u058c\u0003\u0002\u0002\u0002\u2144\u2145",
+ "\u0007C\u0002\u0002\u2145\u2146\u0007U\u0002\u0002\u2146\u2147\u0007",
+ "K\u0002\u0002\u2147\u2148\u0007P\u0002\u0002\u2148\u058e\u0003\u0002",
+ "\u0002\u0002\u2149\u214a\u0007C\u0002\u0002\u214a\u214b\u0007U\u0002",
+ "\u0002\u214b\u214c\u0007V\u0002\u0002\u214c\u214d\u0007G\u0002\u0002",
+ "\u214d\u214e\u0007Z\u0002\u0002\u214e\u214f\u0007V\u0002\u0002\u214f",
+ "\u0590\u0003\u0002\u0002\u0002\u2150\u2151\u0007C\u0002\u0002\u2151",
+ "\u2152\u0007U\u0002\u0002\u2152\u2153\u0007Y\u0002\u0002\u2153\u2154",
+ "\u0007M\u0002\u0002\u2154\u2155\u0007D\u0002\u0002\u2155\u0592\u0003",
+ "\u0002\u0002\u0002\u2156\u2157\u0007C\u0002\u0002\u2157\u2158\u0007",
+ "U\u0002\u0002\u2158\u2159\u0007Y\u0002\u0002\u2159\u215a\u0007M\u0002",
+ "\u0002\u215a\u215b\u0007V\u0002\u0002\u215b\u0594\u0003\u0002\u0002",
+ "\u0002\u215c\u215d\u0007C\u0002\u0002\u215d\u215e\u0007U\u0002\u0002",
+ "\u215e\u215f\u0007[\u0002\u0002\u215f\u2160\u0007O\u0002\u0002\u2160",
+ "\u2161\u0007O\u0002\u0002\u2161\u2162\u0007G\u0002\u0002\u2162\u2163",
+ "\u0007V\u0002\u0002\u2163\u2164\u0007T\u0002\u0002\u2164\u2165\u0007",
+ "K\u0002\u0002\u2165\u2166\u0007E\u0002\u0002\u2166\u2167\u0007a\u0002",
+ "\u0002\u2167\u2168\u0007F\u0002\u0002\u2168\u2169\u0007G\u0002\u0002",
+ "\u2169\u216a\u0007E\u0002\u0002\u216a\u216b\u0007T\u0002\u0002\u216b",
+ "\u216c\u0007[\u0002\u0002\u216c\u216d\u0007R\u0002\u0002\u216d\u216e",
+ "\u0007V\u0002\u0002\u216e\u0596\u0003\u0002\u0002\u0002\u216f\u2170",
+ "\u0007C\u0002\u0002\u2170\u2171\u0007U\u0002\u0002\u2171\u2172\u0007",
+ "[\u0002\u0002\u2172\u2173\u0007O\u0002\u0002\u2173\u2174\u0007O\u0002",
+ "\u0002\u2174\u2175\u0007G\u0002\u0002\u2175\u2176\u0007V\u0002\u0002",
+ "\u2176\u2177\u0007T\u0002\u0002\u2177\u2178\u0007K\u0002\u0002\u2178",
+ "\u2179\u0007E\u0002\u0002\u2179\u217a\u0007a\u0002\u0002\u217a\u217b",
+ "\u0007F\u0002\u0002\u217b\u217c\u0007G\u0002\u0002\u217c\u217d\u0007",
+ "T\u0002\u0002\u217d\u217e\u0007K\u0002\u0002\u217e\u217f\u0007X\u0002",
+ "\u0002\u217f\u2180\u0007G\u0002\u0002\u2180\u0598\u0003\u0002\u0002",
+ "\u0002\u2181\u2182\u0007C\u0002\u0002\u2182\u2183\u0007U\u0002\u0002",
+ "\u2183\u2184\u0007[\u0002\u0002\u2184\u2185\u0007O\u0002\u0002\u2185",
+ "\u2186\u0007O\u0002\u0002\u2186\u2187\u0007G\u0002\u0002\u2187\u2188",
+ "\u0007V\u0002\u0002\u2188\u2189\u0007T\u0002\u0002\u2189\u218a\u0007",
+ "K\u0002\u0002\u218a\u218b\u0007E\u0002\u0002\u218b\u218c\u0007a\u0002",
+ "\u0002\u218c\u218d\u0007G\u0002\u0002\u218d\u218e\u0007P\u0002\u0002",
+ "\u218e\u218f\u0007E\u0002\u0002\u218f\u2190\u0007T\u0002\u0002\u2190",
+ "\u2191\u0007[\u0002\u0002\u2191\u2192\u0007R\u0002\u0002\u2192\u2193",
+ "\u0007V\u0002\u0002\u2193\u059a\u0003\u0002\u0002\u0002\u2194\u2195",
+ "\u0007C\u0002\u0002\u2195\u2196\u0007U\u0002\u0002\u2196\u2197\u0007",
+ "[\u0002\u0002\u2197\u2198\u0007O\u0002\u0002\u2198\u2199\u0007O\u0002",
+ "\u0002\u2199\u219a\u0007G\u0002\u0002\u219a\u219b\u0007V\u0002\u0002",
+ "\u219b\u219c\u0007T\u0002\u0002\u219c\u219d\u0007K\u0002\u0002\u219d",
+ "\u219e\u0007E\u0002\u0002\u219e\u219f\u0007a\u0002\u0002\u219f\u21a0",
+ "\u0007U\u0002\u0002\u21a0\u21a1\u0007K\u0002\u0002\u21a1\u21a2\u0007",
+ "I\u0002\u0002\u21a2\u21a3\u0007P\u0002\u0002\u21a3\u059c\u0003\u0002",
+ "\u0002\u0002\u21a4\u21a5\u0007C\u0002\u0002\u21a5\u21a6\u0007U\u0002",
+ "\u0002\u21a6\u21a7\u0007[\u0002\u0002\u21a7\u21a8\u0007O\u0002\u0002",
+ "\u21a8\u21a9\u0007O\u0002\u0002\u21a9\u21aa\u0007G\u0002\u0002\u21aa",
+ "\u21ab\u0007V\u0002\u0002\u21ab\u21ac\u0007T\u0002\u0002\u21ac\u21ad",
+ "\u0007K\u0002\u0002\u21ad\u21ae\u0007E\u0002\u0002\u21ae\u21af\u0007",
+ "a\u0002\u0002\u21af\u21b0\u0007X\u0002\u0002\u21b0\u21b1\u0007G\u0002",
+ "\u0002\u21b1\u21b2\u0007T\u0002\u0002\u21b2\u21b3\u0007K\u0002\u0002",
+ "\u21b3\u21b4\u0007H\u0002\u0002\u21b4\u21b5\u0007[\u0002\u0002\u21b5",
+ "\u059e\u0003\u0002\u0002\u0002\u21b6\u21b7\u0007C\u0002\u0002\u21b7",
+ "\u21b8\u0007V\u0002\u0002\u21b8\u21b9\u0007C\u0002\u0002\u21b9\u21ba",
+ "\u0007P\u0002\u0002\u21ba\u05a0\u0003\u0002\u0002\u0002\u21bb\u21bc",
+ "\u0007C\u0002\u0002\u21bc\u21bd\u0007V\u0002\u0002\u21bd\u21be\u0007",
+ "C\u0002\u0002\u21be\u21bf\u0007P\u0002\u0002\u21bf\u21c0\u00074\u0002",
+ "\u0002\u21c0\u05a2\u0003\u0002\u0002\u0002\u21c1\u21c2\u0007D\u0002",
+ "\u0002\u21c2\u21c3\u0007G\u0002\u0002\u21c3\u21c4\u0007P\u0002\u0002",
+ "\u21c4\u21c5\u0007E\u0002\u0002\u21c5\u21c6\u0007J\u0002\u0002\u21c6",
+ "\u21c7\u0007O\u0002\u0002\u21c7\u21c8\u0007C\u0002\u0002\u21c8\u21c9",
+ "\u0007T\u0002\u0002\u21c9\u21ca\u0007M\u0002\u0002\u21ca\u05a4\u0003",
+ "\u0002\u0002\u0002\u21cb\u21cc\u0007D\u0002\u0002\u21cc\u21cd\u0007",
+ "K\u0002\u0002\u21cd\u21ce\u0007P\u0002\u0002\u21ce\u05a6\u0003\u0002",
+ "\u0002\u0002\u21cf\u21d0\u0007D\u0002\u0002\u21d0\u21d1\u0007K\u0002",
+ "\u0002\u21d1\u21d2\u0007V\u0002\u0002\u21d2\u21d3\u0007a\u0002\u0002",
+ "\u21d3\u21d4\u0007E\u0002\u0002\u21d4\u21d5\u0007Q\u0002\u0002\u21d5",
+ "\u21d6\u0007W\u0002\u0002\u21d6\u21d7\u0007P\u0002\u0002\u21d7\u21d8",
+ "\u0007V\u0002\u0002\u21d8\u05a8\u0003\u0002\u0002\u0002\u21d9\u21da",
+ "\u0007D\u0002\u0002\u21da\u21db\u0007K\u0002\u0002\u21db\u21dc\u0007",
+ "V\u0002\u0002\u21dc\u21dd\u0007a\u0002\u0002\u21dd\u21de\u0007N\u0002",
+ "\u0002\u21de\u21df\u0007G\u0002\u0002\u21df\u21e0\u0007P\u0002\u0002",
+ "\u21e0\u21e1\u0007I\u0002\u0002\u21e1\u21e2\u0007V\u0002\u0002\u21e2",
+ "\u21e3\u0007J\u0002\u0002\u21e3\u05aa\u0003\u0002\u0002\u0002\u21e4",
+ "\u21e5\u0007D\u0002\u0002\u21e5\u21e6\u0007W\u0002\u0002\u21e6\u21e7",
+ "\u0007H\u0002\u0002\u21e7\u21e8\u0007H\u0002\u0002\u21e8\u21e9\u0007",
+ "G\u0002\u0002\u21e9\u21ea\u0007T\u0002\u0002\u21ea\u05ac\u0003\u0002",
+ "\u0002\u0002\u21eb\u21ec\u0007E\u0002\u0002\u21ec\u21ed\u0007C\u0002",
+ "\u0002\u21ed\u21ee\u0007V\u0002\u0002\u21ee\u21ef\u0007C\u0002\u0002",
+ "\u21ef\u21f0\u0007N\u0002\u0002\u21f0\u21f1\u0007Q\u0002\u0002\u21f1",
+ "\u21f2\u0007I\u0002\u0002\u21f2\u21f3\u0007a\u0002\u0002\u21f3\u21f4",
+ "\u0007P\u0002\u0002\u21f4\u21f5\u0007C\u0002\u0002\u21f5\u21f6\u0007",
+ "O\u0002\u0002\u21f6\u21f7\u0007G\u0002\u0002\u21f7\u05ae\u0003\u0002",
+ "\u0002\u0002\u21f8\u21f9\u0007E\u0002\u0002\u21f9\u21fa\u0007G\u0002",
+ "\u0002\u21fa\u21fb\u0007K\u0002\u0002\u21fb\u21fc\u0007N\u0002\u0002",
+ "\u21fc\u05b0\u0003\u0002\u0002\u0002\u21fd\u21fe\u0007E\u0002\u0002",
+ "\u21fe\u21ff\u0007G\u0002\u0002\u21ff\u2200\u0007K\u0002\u0002\u2200",
+ "\u2201\u0007N\u0002\u0002\u2201\u2202\u0007K\u0002\u0002\u2202\u2203",
+ "\u0007P\u0002\u0002\u2203\u2204\u0007I\u0002\u0002\u2204\u05b2\u0003",
+ "\u0002\u0002\u0002\u2205\u2206\u0007E\u0002\u0002\u2206\u2207\u0007",
+ "G\u0002\u0002\u2207\u2208\u0007P\u0002\u0002\u2208\u2209\u0007V\u0002",
+ "\u0002\u2209\u220a\u0007T\u0002\u0002\u220a\u220b\u0007Q\u0002\u0002",
+ "\u220b\u220c\u0007K\u0002\u0002\u220c\u220d\u0007F\u0002\u0002\u220d",
+ "\u05b4\u0003\u0002\u0002\u0002\u220e\u220f\u0007E\u0002\u0002\u220f",
+ "\u2210\u0007J\u0002\u0002\u2210\u2211\u0007C\u0002\u0002\u2211\u2212",
+ "\u0007T\u0002\u0002\u2212\u2213\u0007C\u0002\u0002\u2213\u2214\u0007",
+ "E\u0002\u0002\u2214\u2215\u0007V\u0002\u0002\u2215\u2216\u0007G\u0002",
+ "\u0002\u2216\u2217\u0007T\u0002\u0002\u2217\u2218\u0007a\u0002\u0002",
+ "\u2218\u2219\u0007N\u0002\u0002\u2219\u221a\u0007G\u0002\u0002\u221a",
+ "\u221b\u0007P\u0002\u0002\u221b\u221c\u0007I\u0002\u0002\u221c\u221d",
+ "\u0007V\u0002\u0002\u221d\u221e\u0007J\u0002\u0002\u221e\u05b6\u0003",
+ "\u0002\u0002\u0002\u221f\u2220\u0007E\u0002\u0002\u2220\u2221\u0007",
+ "J\u0002\u0002\u2221\u2222\u0007C\u0002\u0002\u2222\u2223\u0007T\u0002",
+ "\u0002\u2223\u2224\u0007U\u0002\u0002\u2224\u2225\u0007G\u0002\u0002",
+ "\u2225\u2226\u0007V\u0002\u0002\u2226\u05b8\u0003\u0002\u0002\u0002",
+ "\u2227\u2228\u0007E\u0002\u0002\u2228\u2229\u0007J\u0002\u0002\u2229",
+ "\u222a\u0007C\u0002\u0002\u222a\u222b\u0007T\u0002\u0002\u222b\u222c",
+ "\u0007a\u0002\u0002\u222c\u222d\u0007N\u0002\u0002\u222d\u222e\u0007",
+ "G\u0002\u0002\u222e\u222f\u0007P\u0002\u0002\u222f\u2230\u0007I\u0002",
+ "\u0002\u2230\u2231\u0007V\u0002\u0002\u2231\u2232\u0007J\u0002\u0002",
+ "\u2232\u05ba\u0003\u0002\u0002\u0002\u2233\u2234\u0007E\u0002\u0002",
+ "\u2234\u2235\u0007Q\u0002\u0002\u2235\u2236\u0007G\u0002\u0002\u2236",
+ "\u2237\u0007T\u0002\u0002\u2237\u2238\u0007E\u0002\u0002\u2238\u2239",
+ "\u0007K\u0002\u0002\u2239\u223a\u0007D\u0002\u0002\u223a\u223b\u0007",
+ "K\u0002\u0002\u223b\u223c\u0007N\u0002\u0002\u223c\u223d\u0007K\u0002",
+ "\u0002\u223d\u223e\u0007V\u0002\u0002\u223e\u223f\u0007[\u0002\u0002",
+ "\u223f\u05bc\u0003\u0002\u0002\u0002\u2240\u2241\u0007E\u0002\u0002",
+ "\u2241\u2242\u0007Q\u0002\u0002\u2242\u2243\u0007N\u0002\u0002\u2243",
+ "\u2244\u0007N\u0002\u0002\u2244\u2245\u0007C\u0002\u0002\u2245\u2246",
+ "\u0007V\u0002\u0002\u2246\u2247\u0007K\u0002\u0002\u2247\u2248\u0007",
+ "Q\u0002\u0002\u2248\u2249\u0007P\u0002\u0002\u2249\u05be\u0003\u0002",
+ "\u0002\u0002\u224a\u224b\u0007E\u0002\u0002\u224b\u224c\u0007Q\u0002",
+ "\u0002\u224c\u224d\u0007O\u0002\u0002\u224d\u224e\u0007R\u0002\u0002",
+ "\u224e\u224f\u0007T\u0002\u0002\u224f\u2250\u0007G\u0002\u0002\u2250",
+ "\u2251\u0007U\u0002\u0002\u2251\u2252\u0007U\u0002\u0002\u2252\u05c0",
+ "\u0003\u0002\u0002\u0002\u2253\u2254\u0007E\u0002\u0002\u2254\u2255",
+ "\u0007Q\u0002\u0002\u2255\u2256\u0007P\u0002\u0002\u2256\u2257\u0007",
+ "E\u0002\u0002\u2257\u2258\u0007C\u0002\u0002\u2258\u2259\u0007V\u0002",
+ "\u0002\u2259\u05c2\u0003\u0002\u0002\u0002\u225a\u225b\u0007E\u0002",
+ "\u0002\u225b\u225c\u0007Q\u0002\u0002\u225c\u225d\u0007P\u0002\u0002",
+ "\u225d\u225e\u0007E\u0002\u0002\u225e\u225f\u0007C\u0002\u0002\u225f",
+ "\u2260\u0007V\u0002\u0002\u2260\u2261\u0007a\u0002\u0002\u2261\u2262",
+ "\u0007Y\u0002\u0002\u2262\u2263\u0007U\u0002\u0002\u2263\u05c4\u0003",
+ "\u0002\u0002\u0002\u2264\u2265\u0007E\u0002\u0002\u2265\u2266\u0007",
+ "Q\u0002\u0002\u2266\u2267\u0007P\u0002\u0002\u2267\u2268\u0007P\u0002",
+ "\u0002\u2268\u2269\u0007G\u0002\u0002\u2269\u226a\u0007E\u0002\u0002",
+ "\u226a\u226b\u0007V\u0002\u0002\u226b\u226c\u0007K\u0002\u0002\u226c",
+ "\u226d\u0007Q\u0002\u0002\u226d\u226e\u0007P\u0002\u0002\u226e\u226f",
+ "\u0007a\u0002\u0002\u226f\u2270\u0007K\u0002\u0002\u2270\u2271\u0007",
+ "F\u0002\u0002\u2271\u05c6\u0003\u0002\u0002\u0002\u2272\u2273\u0007",
+ "E\u0002\u0002\u2273\u2274\u0007Q\u0002\u0002\u2274\u2275\u0007P\u0002",
+ "\u0002\u2275\u2276\u0007X\u0002\u0002\u2276\u05c8\u0003\u0002\u0002",
+ "\u0002\u2277\u2278\u0007E\u0002\u0002\u2278\u2279\u0007Q\u0002\u0002",
+ "\u2279\u227a\u0007P\u0002\u0002\u227a\u227b\u0007X\u0002\u0002\u227b",
+ "\u227c\u0007G\u0002\u0002\u227c\u227d\u0007T\u0002\u0002\u227d\u227e",
+ "\u0007V\u0002\u0002\u227e\u227f\u0007a\u0002\u0002\u227f\u2280\u0007",
+ "V\u0002\u0002\u2280\u2281\u0007\\\u0002\u0002\u2281\u05ca\u0003\u0002",
+ "\u0002\u0002\u2282\u2283\u0007E\u0002\u0002\u2283\u2284\u0007Q\u0002",
+ "\u0002\u2284\u2285\u0007U\u0002\u0002\u2285\u05cc\u0003\u0002\u0002",
+ "\u0002\u2286\u2287\u0007E\u0002\u0002\u2287\u2288\u0007Q\u0002\u0002",
+ "\u2288\u2289\u0007V\u0002\u0002\u2289\u05ce\u0003\u0002\u0002\u0002",
+ "\u228a\u228b\u0007E\u0002\u0002\u228b\u228c\u0007T\u0002\u0002\u228c",
+ "\u228d\u0007E\u0002\u0002\u228d\u228e\u00075\u0002\u0002\u228e\u228f",
+ "\u00074\u0002\u0002\u228f\u05d0\u0003\u0002\u0002\u0002\u2290\u2291",
+ "\u0007E\u0002\u0002\u2291\u2292\u0007T\u0002\u0002\u2292\u2293\u0007",
+ "G\u0002\u0002\u2293\u2294\u0007C\u0002\u0002\u2294\u2295\u0007V\u0002",
+ "\u0002\u2295\u2296\u0007G\u0002\u0002\u2296\u2297\u0007a\u0002\u0002",
+ "\u2297\u2298\u0007C\u0002\u0002\u2298\u2299\u0007U\u0002\u0002\u2299",
+ "\u229a\u0007[\u0002\u0002\u229a\u229b\u0007O\u0002\u0002\u229b\u229c",
+ "\u0007O\u0002\u0002\u229c\u229d\u0007G\u0002\u0002\u229d\u229e\u0007",
+ "V\u0002\u0002\u229e\u229f\u0007T\u0002\u0002\u229f\u22a0\u0007K\u0002",
+ "\u0002\u22a0\u22a1\u0007E\u0002\u0002\u22a1\u22a2\u0007a\u0002\u0002",
+ "\u22a2\u22a3\u0007R\u0002\u0002\u22a3\u22a4\u0007T\u0002\u0002\u22a4",
+ "\u22a5\u0007K\u0002\u0002\u22a5\u22a6\u0007X\u0002\u0002\u22a6\u22a7",
+ "\u0007a\u0002\u0002\u22a7\u22a8\u0007M\u0002\u0002\u22a8\u22a9\u0007",
+ "G\u0002\u0002\u22a9\u22aa\u0007[\u0002\u0002\u22aa\u05d2\u0003\u0002",
+ "\u0002\u0002\u22ab\u22ac\u0007E\u0002\u0002\u22ac\u22ad\u0007T\u0002",
+ "\u0002\u22ad\u22ae\u0007G\u0002\u0002\u22ae\u22af\u0007C\u0002\u0002",
+ "\u22af\u22b0\u0007V\u0002\u0002\u22b0\u22b1\u0007G\u0002\u0002\u22b1",
+ "\u22b2\u0007a\u0002\u0002\u22b2\u22b3\u0007C\u0002\u0002\u22b3\u22b4",
+ "\u0007U\u0002\u0002\u22b4\u22b5\u0007[\u0002\u0002\u22b5\u22b6\u0007",
+ "O\u0002\u0002\u22b6\u22b7\u0007O\u0002\u0002\u22b7\u22b8\u0007G\u0002",
+ "\u0002\u22b8\u22b9\u0007V\u0002\u0002\u22b9\u22ba\u0007T\u0002\u0002",
+ "\u22ba\u22bb\u0007K\u0002\u0002\u22bb\u22bc\u0007E\u0002\u0002\u22bc",
+ "\u22bd\u0007a\u0002\u0002\u22bd\u22be\u0007R\u0002\u0002\u22be\u22bf",
+ "\u0007W\u0002\u0002\u22bf\u22c0\u0007D\u0002\u0002\u22c0\u22c1\u0007",
+ "a\u0002\u0002\u22c1\u22c2\u0007M\u0002\u0002\u22c2\u22c3\u0007G\u0002",
+ "\u0002\u22c3\u22c4\u0007[\u0002\u0002\u22c4\u05d4\u0003\u0002\u0002",
+ "\u0002\u22c5\u22c6\u0007E\u0002\u0002\u22c6\u22c7\u0007T\u0002\u0002",
+ "\u22c7\u22c8\u0007G\u0002\u0002\u22c8\u22c9\u0007C\u0002\u0002\u22c9",
+ "\u22ca\u0007V\u0002\u0002\u22ca\u22cb\u0007G\u0002\u0002\u22cb\u22cc",
+ "\u0007a\u0002\u0002\u22cc\u22cd\u0007F\u0002\u0002\u22cd\u22ce\u0007",
+ "J\u0002\u0002\u22ce\u22cf\u0007a\u0002\u0002\u22cf\u22d0\u0007R\u0002",
+ "\u0002\u22d0\u22d1\u0007C\u0002\u0002\u22d1\u22d2\u0007T\u0002\u0002",
+ "\u22d2\u22d3\u0007C\u0002\u0002\u22d3\u22d4\u0007O\u0002\u0002\u22d4",
+ "\u22d5\u0007G\u0002\u0002\u22d5\u22d6\u0007V\u0002\u0002\u22d6\u22d7",
+ "\u0007G\u0002\u0002\u22d7\u22d8\u0007T\u0002\u0002\u22d8\u22d9\u0007",
+ "U\u0002\u0002\u22d9\u05d6\u0003\u0002\u0002\u0002\u22da\u22db\u0007",
+ "E\u0002\u0002\u22db\u22dc\u0007T\u0002\u0002\u22dc\u22dd\u0007G\u0002",
+ "\u0002\u22dd\u22de\u0007C\u0002\u0002\u22de\u22df\u0007V\u0002\u0002",
+ "\u22df\u22e0\u0007G\u0002\u0002\u22e0\u22e1\u0007a\u0002\u0002\u22e1",
+ "\u22e2\u0007F\u0002\u0002\u22e2\u22e3\u0007K\u0002\u0002\u22e3\u22e4",
+ "\u0007I\u0002\u0002\u22e4\u22e5\u0007G\u0002\u0002\u22e5\u22e6\u0007",
+ "U\u0002\u0002\u22e6\u22e7\u0007V\u0002\u0002\u22e7\u05d8\u0003\u0002",
+ "\u0002\u0002\u22e8\u22e9\u0007E\u0002\u0002\u22e9\u22ea\u0007T\u0002",
+ "\u0002\u22ea\u22eb\u0007Q\u0002\u0002\u22eb\u22ec\u0007U\u0002\u0002",
+ "\u22ec\u22ed\u0007U\u0002\u0002\u22ed\u22ee\u0007G\u0002\u0002\u22ee",
+ "\u22ef\u0007U\u0002\u0002\u22ef\u05da\u0003\u0002\u0002\u0002\u22f0",
+ "\u22f1\u0007F\u0002\u0002\u22f1\u22f2\u0007C\u0002\u0002\u22f2\u22f3",
+ "\u0007V\u0002\u0002\u22f3\u22f4\u0007G\u0002\u0002\u22f4\u22f5\u0007",
+ "F\u0002\u0002\u22f5\u22f6\u0007K\u0002\u0002\u22f6\u22f7\u0007H\u0002",
+ "\u0002\u22f7\u22f8\u0007H\u0002\u0002\u22f8\u05dc\u0003\u0002\u0002",
+ "\u0002\u22f9\u22fa\u0007F\u0002\u0002\u22fa\u22fb\u0007C\u0002\u0002",
+ "\u22fb\u22fc\u0007V\u0002\u0002\u22fc\u22fd\u0007G\u0002\u0002\u22fd",
+ "\u22fe\u0007a\u0002\u0002\u22fe\u22ff\u0007H\u0002\u0002\u22ff\u2300",
+ "\u0007Q\u0002\u0002\u2300\u2301\u0007T\u0002\u0002\u2301\u2302\u0007",
+ "O\u0002\u0002\u2302\u2303\u0007C\u0002\u0002\u2303\u2304\u0007V\u0002",
+ "\u0002\u2304\u05de\u0003\u0002\u0002\u0002\u2305\u2306\u0007F\u0002",
+ "\u0002\u2306\u2307\u0007C\u0002\u0002\u2307\u2308\u0007[\u0002\u0002",
+ "\u2308\u2309\u0007P\u0002\u0002\u2309\u230a\u0007C\u0002\u0002\u230a",
+ "\u230b\u0007O\u0002\u0002\u230b\u230c\u0007G\u0002\u0002\u230c\u05e0",
+ "\u0003\u0002\u0002\u0002\u230d\u230e\u0007F\u0002\u0002\u230e\u230f",
+ "\u0007C\u0002\u0002\u230f\u2310\u0007[\u0002\u0002\u2310\u2311\u0007",
+ "Q\u0002\u0002\u2311\u2312\u0007H\u0002\u0002\u2312\u2313\u0007O\u0002",
+ "\u0002\u2313\u2314\u0007Q\u0002\u0002\u2314\u2315\u0007P\u0002\u0002",
+ "\u2315\u2316\u0007V\u0002\u0002\u2316\u2317\u0007J\u0002\u0002\u2317",
+ "\u05e2\u0003\u0002\u0002\u0002\u2318\u2319\u0007F\u0002\u0002\u2319",
+ "\u231a\u0007C\u0002\u0002\u231a\u231b\u0007[\u0002\u0002\u231b\u231c",
+ "\u0007Q\u0002\u0002\u231c\u231d\u0007H\u0002\u0002\u231d\u231e\u0007",
+ "Y\u0002\u0002\u231e\u231f\u0007G\u0002\u0002\u231f\u2320\u0007G\u0002",
+ "\u0002\u2320\u2321\u0007M\u0002\u0002\u2321\u05e4\u0003\u0002\u0002",
+ "\u0002\u2322\u2323\u0007F\u0002\u0002\u2323\u2324\u0007C\u0002\u0002",
+ "\u2324\u2325\u0007[\u0002\u0002\u2325\u2326\u0007Q\u0002\u0002\u2326",
+ "\u2327\u0007H\u0002\u0002\u2327\u2328\u0007[\u0002\u0002\u2328\u2329",
+ "\u0007G\u0002\u0002\u2329\u232a\u0007C\u0002\u0002\u232a\u232b\u0007",
+ "T\u0002\u0002\u232b\u05e6\u0003\u0002\u0002\u0002\u232c\u232d\u0007",
+ "F\u0002\u0002\u232d\u232e\u0007G\u0002\u0002\u232e\u232f\u0007E\u0002",
+ "\u0002\u232f\u2330\u0007Q\u0002\u0002\u2330\u2331\u0007F\u0002\u0002",
+ "\u2331\u2332\u0007G\u0002\u0002\u2332\u05e8\u0003\u0002\u0002\u0002",
+ "\u2333\u2334\u0007F\u0002\u0002\u2334\u2335\u0007G\u0002\u0002\u2335",
+ "\u2336\u0007I\u0002\u0002\u2336\u2337\u0007T\u0002\u0002\u2337\u2338",
+ "\u0007G\u0002\u0002\u2338\u2339\u0007G\u0002\u0002\u2339\u233a\u0007",
+ "U\u0002\u0002\u233a\u05ea\u0003\u0002\u0002\u0002\u233b\u233c\u0007",
+ "F\u0002\u0002\u233c\u233d\u0007G\u0002\u0002\u233d\u233e\u0007U\u0002",
+ "\u0002\u233e\u233f\u0007a\u0002\u0002\u233f\u2340\u0007F\u0002\u0002",
+ "\u2340\u2341\u0007G\u0002\u0002\u2341\u2342\u0007E\u0002\u0002\u2342",
+ "\u2343\u0007T\u0002\u0002\u2343\u2344\u0007[\u0002\u0002\u2344\u2345",
+ "\u0007R\u0002\u0002\u2345\u2346\u0007V\u0002\u0002\u2346\u05ec\u0003",
+ "\u0002\u0002\u0002\u2347\u2348\u0007F\u0002\u0002\u2348\u2349\u0007",
+ "G\u0002\u0002\u2349\u234a\u0007U\u0002\u0002\u234a\u234b\u0007a\u0002",
+ "\u0002\u234b\u234c\u0007G\u0002\u0002\u234c\u234d\u0007P\u0002\u0002",
+ "\u234d\u234e\u0007E\u0002\u0002\u234e\u234f\u0007T\u0002\u0002\u234f",
+ "\u2350\u0007[\u0002\u0002\u2350\u2351\u0007R\u0002\u0002\u2351\u2352",
+ "\u0007V\u0002\u0002\u2352\u05ee\u0003\u0002\u0002\u0002\u2353\u2354",
+ "\u0007F\u0002\u0002\u2354\u2355\u0007K\u0002\u0002\u2355\u2356\u0007",
+ "O\u0002\u0002\u2356\u2357\u0007G\u0002\u0002\u2357\u2358\u0007P\u0002",
+ "\u0002\u2358\u2359\u0007U\u0002\u0002\u2359\u235a\u0007K\u0002\u0002",
+ "\u235a\u235b\u0007Q\u0002\u0002\u235b\u235c\u0007P\u0002\u0002\u235c",
+ "\u05f0\u0003\u0002\u0002\u0002\u235d\u235e\u0007F\u0002\u0002\u235e",
+ "\u235f\u0007K\u0002\u0002\u235f\u2360\u0007U\u0002\u0002\u2360\u2361",
+ "\u0007L\u0002\u0002\u2361\u2362\u0007Q\u0002\u0002\u2362\u2363\u0007",
+ "K\u0002\u0002\u2363\u2364\u0007P\u0002\u0002\u2364\u2365\u0007V\u0002",
+ "\u0002\u2365\u05f2\u0003\u0002\u0002\u0002\u2366\u2367\u0007G\u0002",
+ "\u0002\u2367\u2368\u0007N\u0002\u0002\u2368\u2369\u0007V\u0002\u0002",
+ "\u2369\u05f4\u0003\u0002\u0002\u0002\u236a\u236b\u0007G\u0002\u0002",
+ "\u236b\u236c\u0007P\u0002\u0002\u236c\u236d\u0007E\u0002\u0002\u236d",
+ "\u236e\u0007Q\u0002\u0002\u236e\u236f\u0007F\u0002\u0002\u236f\u2370",
+ "\u0007G\u0002\u0002\u2370\u05f6\u0003\u0002\u0002\u0002\u2371\u2372",
+ "\u0007G\u0002\u0002\u2372\u2373\u0007P\u0002\u0002\u2373\u2374\u0007",
+ "E\u0002\u0002\u2374\u2375\u0007T\u0002\u0002\u2375\u2376\u0007[\u0002",
+ "\u0002\u2376\u2377\u0007R\u0002\u0002\u2377\u2378\u0007V\u0002\u0002",
+ "\u2378\u05f8\u0003\u0002\u0002\u0002\u2379\u237a\u0007G\u0002\u0002",
+ "\u237a\u237b\u0007P\u0002\u0002\u237b\u237c\u0007F\u0002\u0002\u237c",
+ "\u237d\u0007R\u0002\u0002\u237d\u237e\u0007Q\u0002\u0002\u237e\u237f",
+ "\u0007K\u0002\u0002\u237f\u2380\u0007P\u0002\u0002\u2380\u2381\u0007",
+ "V\u0002\u0002\u2381\u05fa\u0003\u0002\u0002\u0002\u2382\u2383\u0007",
+ "G\u0002\u0002\u2383\u2384\u0007P\u0002\u0002\u2384\u2385\u0007X\u0002",
+ "\u0002\u2385\u2386\u0007G\u0002\u0002\u2386\u2387\u0007N\u0002\u0002",
+ "\u2387\u2388\u0007Q\u0002\u0002\u2388\u2389\u0007R\u0002\u0002\u2389",
+ "\u238a\u0007G\u0002\u0002\u238a\u05fc\u0003\u0002\u0002\u0002\u238b",
+ "\u238c\u0007G\u0002\u0002\u238c\u238d\u0007S\u0002\u0002\u238d\u238e",
+ "\u0007W\u0002\u0002\u238e\u238f\u0007C\u0002\u0002\u238f\u2390\u0007",
+ "N\u0002\u0002\u2390\u2391\u0007U\u0002\u0002\u2391\u05fe\u0003\u0002",
+ "\u0002\u0002\u2392\u2393\u0007G\u0002\u0002\u2393\u2394\u0007Z\u0002",
+ "\u0002\u2394\u2395\u0007R\u0002\u0002\u2395\u0600\u0003\u0002\u0002",
+ "\u0002\u2396\u2397\u0007G\u0002\u0002\u2397\u2398\u0007Z\u0002\u0002",
+ "\u2398\u2399\u0007R\u0002\u0002\u2399\u239a\u0007Q\u0002\u0002\u239a",
+ "\u239b\u0007T\u0002\u0002\u239b\u239c\u0007V\u0002\u0002\u239c\u239d",
+ "\u0007a\u0002\u0002\u239d\u239e\u0007U\u0002\u0002\u239e\u239f\u0007",
+ "G\u0002\u0002\u239f\u23a0\u0007V\u0002\u0002\u23a0\u0602\u0003\u0002",
+ "\u0002\u0002\u23a1\u23a2\u0007G\u0002\u0002\u23a2\u23a3\u0007Z\u0002",
+ "\u0002\u23a3\u23a4\u0007V\u0002\u0002\u23a4\u23a5\u0007G\u0002\u0002",
+ "\u23a5\u23a6\u0007T\u0002\u0002\u23a6\u23a7\u0007K\u0002\u0002\u23a7",
+ "\u23a8\u0007Q\u0002\u0002\u23a8\u23a9\u0007T\u0002\u0002\u23a9\u23aa",
+ "\u0007T\u0002\u0002\u23aa\u23ab\u0007K\u0002\u0002\u23ab\u23ac\u0007",
+ "P\u0002\u0002\u23ac\u23ad\u0007I\u0002\u0002\u23ad\u0604\u0003\u0002",
+ "\u0002\u0002\u23ae\u23af\u0007G\u0002\u0002\u23af\u23b0\u0007Z\u0002",
+ "\u0002\u23b0\u23b1\u0007V\u0002\u0002\u23b1\u23b2\u0007T\u0002\u0002",
+ "\u23b2\u23b3\u0007C\u0002\u0002\u23b3\u23b4\u0007E\u0002\u0002\u23b4",
+ "\u23b5\u0007V\u0002\u0002\u23b5\u23b6\u0007X\u0002\u0002\u23b6\u23b7",
+ "\u0007C\u0002\u0002\u23b7\u23b8\u0007N\u0002\u0002\u23b8\u23b9\u0007",
+ "W\u0002\u0002\u23b9\u23ba\u0007G\u0002\u0002\u23ba\u0606\u0003\u0002",
+ "\u0002\u0002\u23bb\u23bc\u0007H\u0002\u0002\u23bc\u23bd\u0007K\u0002",
+ "\u0002\u23bd\u23be\u0007G\u0002\u0002\u23be\u23bf\u0007N\u0002\u0002",
+ "\u23bf\u23c0\u0007F\u0002\u0002\u23c0\u0608\u0003\u0002\u0002\u0002",
+ "\u23c1\u23c2\u0007H\u0002\u0002\u23c2\u23c3\u0007K\u0002\u0002\u23c3",
+ "\u23c4\u0007P\u0002\u0002\u23c4\u23c5\u0007F\u0002\u0002\u23c5\u23c6",
+ "\u0007a\u0002\u0002\u23c6\u23c7\u0007K\u0002\u0002\u23c7\u23c8\u0007",
+ "P\u0002\u0002\u23c8\u23c9\u0007a\u0002\u0002\u23c9\u23ca\u0007U\u0002",
+ "\u0002\u23ca\u23cb\u0007G\u0002\u0002\u23cb\u23cc\u0007V\u0002\u0002",
+ "\u23cc\u060a\u0003\u0002\u0002\u0002\u23cd\u23ce\u0007H\u0002\u0002",
+ "\u23ce\u23cf\u0007N\u0002\u0002\u23cf\u23d0\u0007Q\u0002\u0002\u23d0",
+ "\u23d1\u0007Q\u0002\u0002\u23d1\u23d2\u0007T\u0002\u0002\u23d2\u060c",
+ "\u0003\u0002\u0002\u0002\u23d3\u23d4\u0007H\u0002\u0002\u23d4\u23d5",
+ "\u0007Q\u0002\u0002\u23d5\u23d6\u0007T\u0002\u0002\u23d6\u23d7\u0007",
+ "O\u0002\u0002\u23d7\u23d8\u0007C\u0002\u0002\u23d8\u23d9\u0007V\u0002",
+ "\u0002\u23d9\u060e\u0003\u0002\u0002\u0002\u23da\u23db\u0007H\u0002",
+ "\u0002\u23db\u23dc\u0007Q\u0002\u0002\u23dc\u23dd\u0007W\u0002\u0002",
+ "\u23dd\u23de\u0007P\u0002\u0002\u23de\u23df\u0007F\u0002\u0002\u23df",
+ "\u23e0\u0007a\u0002\u0002\u23e0\u23e1\u0007T\u0002\u0002\u23e1\u23e2",
+ "\u0007Q\u0002\u0002\u23e2\u23e3\u0007Y\u0002\u0002\u23e3\u23e4\u0007",
+ "U\u0002\u0002\u23e4\u0610\u0003\u0002\u0002\u0002\u23e5\u23e6\u0007",
+ "H\u0002\u0002\u23e6\u23e7\u0007T\u0002\u0002\u23e7\u23e8\u0007Q\u0002",
+ "\u0002\u23e8\u23e9\u0007O\u0002\u0002\u23e9\u23ea\u0007a\u0002\u0002",
+ "\u23ea\u23eb\u0007D\u0002\u0002\u23eb\u23ec\u0007C\u0002\u0002\u23ec",
+ "\u23ed\u0007U\u0002\u0002\u23ed\u23ee\u0007G\u0002\u0002\u23ee\u23ef",
+ "\u00078\u0002\u0002\u23ef\u23f0\u00076\u0002\u0002\u23f0\u0612\u0003",
+ "\u0002\u0002\u0002\u23f1\u23f2\u0007H\u0002\u0002\u23f2\u23f3\u0007",
+ "T\u0002\u0002\u23f3\u23f4\u0007Q\u0002\u0002\u23f4\u23f5\u0007O\u0002",
+ "\u0002\u23f5\u23f6\u0007a\u0002\u0002\u23f6\u23f7\u0007F\u0002\u0002",
+ "\u23f7\u23f8\u0007C\u0002\u0002\u23f8\u23f9\u0007[\u0002\u0002\u23f9",
+ "\u23fa\u0007U\u0002\u0002\u23fa\u0614\u0003\u0002\u0002\u0002\u23fb",
+ "\u23fc\u0007H\u0002\u0002\u23fc\u23fd\u0007T\u0002\u0002\u23fd\u23fe",
+ "\u0007Q\u0002\u0002\u23fe\u23ff\u0007O\u0002\u0002\u23ff\u2400\u0007",
+ "a\u0002\u0002\u2400\u2401\u0007W\u0002\u0002\u2401\u2402\u0007P\u0002",
+ "\u0002\u2402\u2403\u0007K\u0002\u0002\u2403\u2404\u0007Z\u0002\u0002",
+ "\u2404\u2405\u0007V\u0002\u0002\u2405\u2406\u0007K\u0002\u0002\u2406",
+ "\u2407\u0007O\u0002\u0002\u2407\u2408\u0007G\u0002\u0002\u2408\u0616",
+ "\u0003\u0002\u0002\u0002\u2409\u240a\u0007I\u0002\u0002\u240a\u240b",
+ "\u0007G\u0002\u0002\u240b\u240c\u0007Q\u0002\u0002\u240c\u240d\u0007",
+ "O\u0002\u0002\u240d\u240e\u0007E\u0002\u0002\u240e\u240f\u0007Q\u0002",
+ "\u0002\u240f\u2410\u0007N\u0002\u0002\u2410\u2411\u0007N\u0002\u0002",
+ "\u2411\u2412\u0007H\u0002\u0002\u2412\u2413\u0007T\u0002\u0002\u2413",
+ "\u2414\u0007Q\u0002\u0002\u2414\u2415\u0007O\u0002\u0002\u2415\u2416",
+ "\u0007V\u0002\u0002\u2416\u2417\u0007G\u0002\u0002\u2417\u2418\u0007",
+ "Z\u0002\u0002\u2418\u2419\u0007V\u0002\u0002\u2419\u0618\u0003\u0002",
+ "\u0002\u0002\u241a\u241b\u0007I\u0002\u0002\u241b\u241c\u0007G\u0002",
+ "\u0002\u241c\u241d\u0007Q\u0002\u0002\u241d\u241e\u0007O\u0002\u0002",
+ "\u241e\u241f\u0007E\u0002\u0002\u241f\u2420\u0007Q\u0002\u0002\u2420",
+ "\u2421\u0007N\u0002\u0002\u2421\u2422\u0007N\u0002\u0002\u2422\u2423",
+ "\u0007H\u0002\u0002\u2423\u2424\u0007T\u0002\u0002\u2424\u2425\u0007",
+ "Q\u0002\u0002\u2425\u2426\u0007O\u0002\u0002\u2426\u2427\u0007Y\u0002",
+ "\u0002\u2427\u2428\u0007M\u0002\u0002\u2428\u2429\u0007D\u0002\u0002",
+ "\u2429\u061a\u0003\u0002\u0002\u0002\u242a\u242b\u0007I\u0002\u0002",
+ "\u242b\u242c\u0007G\u0002\u0002\u242c\u242d\u0007Q\u0002\u0002\u242d",
+ "\u242e\u0007O\u0002\u0002\u242e\u242f\u0007G\u0002\u0002\u242f\u2430",
+ "\u0007V\u0002\u0002\u2430\u2431\u0007T\u0002\u0002\u2431\u2432\u0007",
+ "[\u0002\u0002\u2432\u2433\u0007E\u0002\u0002\u2433\u2434\u0007Q\u0002",
+ "\u0002\u2434\u2435\u0007N\u0002\u0002\u2435\u2436\u0007N\u0002\u0002",
+ "\u2436\u2437\u0007G\u0002\u0002\u2437\u2438\u0007E\u0002\u0002\u2438",
+ "\u2439\u0007V\u0002\u0002\u2439\u243a\u0007K\u0002\u0002\u243a\u243b",
+ "\u0007Q\u0002\u0002\u243b\u243c\u0007P\u0002\u0002\u243c\u243d\u0007",
+ "H\u0002\u0002\u243d\u243e\u0007T\u0002\u0002\u243e\u243f\u0007Q\u0002",
+ "\u0002\u243f\u2440\u0007O\u0002\u0002\u2440\u2441\u0007V\u0002\u0002",
+ "\u2441\u2442\u0007G\u0002\u0002\u2442\u2443\u0007Z\u0002\u0002\u2443",
+ "\u2444\u0007V\u0002\u0002\u2444\u061c\u0003\u0002\u0002\u0002\u2445",
+ "\u2446\u0007I\u0002\u0002\u2446\u2447\u0007G\u0002\u0002\u2447\u2448",
+ "\u0007Q\u0002\u0002\u2448\u2449\u0007O\u0002\u0002\u2449\u244a\u0007",
+ "G\u0002\u0002\u244a\u244b\u0007V\u0002\u0002\u244b\u244c\u0007T\u0002",
+ "\u0002\u244c\u244d\u0007[\u0002\u0002\u244d\u244e\u0007E\u0002\u0002",
+ "\u244e\u244f\u0007Q\u0002\u0002\u244f\u2450\u0007N\u0002\u0002\u2450",
+ "\u2451\u0007N\u0002\u0002\u2451\u2452\u0007G\u0002\u0002\u2452\u2453",
+ "\u0007E\u0002\u0002\u2453\u2454\u0007V\u0002\u0002\u2454\u2455\u0007",
+ "K\u0002\u0002\u2455\u2456\u0007Q\u0002\u0002\u2456\u2457\u0007P\u0002",
+ "\u0002\u2457\u2458\u0007H\u0002\u0002\u2458\u2459\u0007T\u0002\u0002",
+ "\u2459\u245a\u0007Q\u0002\u0002\u245a\u245b\u0007O\u0002\u0002\u245b",
+ "\u245c\u0007Y\u0002\u0002\u245c\u245d\u0007M\u0002\u0002\u245d\u245e",
+ "\u0007D\u0002\u0002\u245e\u061e\u0003\u0002\u0002\u0002\u245f\u2460",
+ "\u0007I\u0002\u0002\u2460\u2461\u0007G\u0002\u0002\u2461\u2462\u0007",
+ "Q\u0002\u0002\u2462\u2463\u0007O\u0002\u0002\u2463\u2464\u0007G\u0002",
+ "\u0002\u2464\u2465\u0007V\u0002\u0002\u2465\u2466\u0007T\u0002\u0002",
+ "\u2466\u2467\u0007[\u0002\u0002\u2467\u2468\u0007H\u0002\u0002\u2468",
+ "\u2469\u0007T\u0002\u0002\u2469\u246a\u0007Q\u0002\u0002\u246a\u246b",
+ "\u0007O\u0002\u0002\u246b\u246c\u0007V\u0002\u0002\u246c\u246d\u0007",
+ "G\u0002\u0002\u246d\u246e\u0007Z\u0002\u0002\u246e\u246f\u0007V\u0002",
+ "\u0002\u246f\u0620\u0003\u0002\u0002\u0002\u2470\u2471\u0007I\u0002",
+ "\u0002\u2471\u2472\u0007G\u0002\u0002\u2472\u2473\u0007Q\u0002\u0002",
+ "\u2473\u2474\u0007O\u0002\u0002\u2474\u2475\u0007G\u0002\u0002\u2475",
+ "\u2476\u0007V\u0002\u0002\u2476\u2477\u0007T\u0002\u0002\u2477\u2478",
+ "\u0007[\u0002\u0002\u2478\u2479\u0007H\u0002\u0002\u2479\u247a\u0007",
+ "T\u0002\u0002\u247a\u247b\u0007Q\u0002\u0002\u247b\u247c\u0007O\u0002",
+ "\u0002\u247c\u247d\u0007Y\u0002\u0002\u247d\u247e\u0007M\u0002\u0002",
+ "\u247e\u247f\u0007D\u0002\u0002\u247f\u0622\u0003\u0002\u0002\u0002",
+ "\u2480\u2481\u0007I\u0002\u0002\u2481\u2482\u0007G\u0002\u0002\u2482",
+ "\u2483\u0007Q\u0002\u0002\u2483\u2484\u0007O\u0002\u0002\u2484\u2485",
+ "\u0007G\u0002\u0002\u2485\u2486\u0007V\u0002\u0002\u2486\u2487\u0007",
+ "T\u0002\u0002\u2487\u2488\u0007[\u0002\u0002\u2488\u2489\u0007P\u0002",
+ "\u0002\u2489\u0624\u0003\u0002\u0002\u0002\u248a\u248b\u0007I\u0002",
+ "\u0002\u248b\u248c\u0007G\u0002\u0002\u248c\u248d\u0007Q\u0002\u0002",
+ "\u248d\u248e\u0007O\u0002\u0002\u248e\u248f\u0007G\u0002\u0002\u248f",
+ "\u2490\u0007V\u0002\u0002\u2490\u2491\u0007T\u0002\u0002\u2491\u2492",
+ "\u0007[\u0002\u0002\u2492\u2493\u0007V\u0002\u0002\u2493\u2494\u0007",
+ "[\u0002\u0002\u2494\u2495\u0007R\u0002\u0002\u2495\u2496\u0007G\u0002",
+ "\u0002\u2496\u0626\u0003\u0002\u0002\u0002\u2497\u2498\u0007I\u0002",
+ "\u0002\u2498\u2499\u0007G\u0002\u0002\u2499\u249a\u0007Q\u0002\u0002",
+ "\u249a\u249b\u0007O\u0002\u0002\u249b\u249c\u0007H\u0002\u0002\u249c",
+ "\u249d\u0007T\u0002\u0002\u249d\u249e\u0007Q\u0002\u0002\u249e\u249f",
+ "\u0007O\u0002\u0002\u249f\u24a0\u0007V\u0002\u0002\u24a0\u24a1\u0007",
+ "G\u0002\u0002\u24a1\u24a2\u0007Z\u0002\u0002\u24a2\u24a3\u0007V\u0002",
+ "\u0002\u24a3\u0628\u0003\u0002\u0002\u0002\u24a4\u24a5\u0007I\u0002",
+ "\u0002\u24a5\u24a6\u0007G\u0002\u0002\u24a6\u24a7\u0007Q\u0002\u0002",
+ "\u24a7\u24a8\u0007O\u0002\u0002\u24a8\u24a9\u0007H\u0002\u0002\u24a9",
+ "\u24aa\u0007T\u0002\u0002\u24aa\u24ab\u0007Q\u0002\u0002\u24ab\u24ac",
+ "\u0007O\u0002\u0002\u24ac\u24ad\u0007Y\u0002\u0002\u24ad\u24ae\u0007",
+ "M\u0002\u0002\u24ae\u24af\u0007D\u0002\u0002\u24af\u062a\u0003\u0002",
+ "\u0002\u0002\u24b0\u24b1\u0007I\u0002\u0002\u24b1\u24b2\u0007G\u0002",
+ "\u0002\u24b2\u24b3\u0007V\u0002\u0002\u24b3\u24b4\u0007a\u0002\u0002",
+ "\u24b4\u24b5\u0007H\u0002\u0002\u24b5\u24b6\u0007Q\u0002\u0002\u24b6",
+ "\u24b7\u0007T\u0002\u0002\u24b7\u24b8\u0007O\u0002\u0002\u24b8\u24b9",
+ "\u0007C\u0002\u0002\u24b9\u24ba\u0007V\u0002\u0002\u24ba\u062c\u0003",
+ "\u0002\u0002\u0002\u24bb\u24bc\u0007I\u0002\u0002\u24bc\u24bd\u0007",
+ "G\u0002\u0002\u24bd\u24be\u0007V\u0002\u0002\u24be\u24bf\u0007a\u0002",
+ "\u0002\u24bf\u24c0\u0007N\u0002\u0002\u24c0\u24c1\u0007Q\u0002\u0002",
+ "\u24c1\u24c2\u0007E\u0002\u0002\u24c2\u24c3\u0007M\u0002\u0002\u24c3",
+ "\u062e\u0003\u0002\u0002\u0002\u24c4\u24c5\u0007I\u0002\u0002\u24c5",
+ "\u24c6\u0007N\u0002\u0002\u24c6\u24c7\u0007G\u0002\u0002\u24c7\u24c8",
+ "\u0007P\u0002\u0002\u24c8\u24c9\u0007I\u0002\u0002\u24c9\u24ca\u0007",
+ "V\u0002\u0002\u24ca\u24cb\u0007J\u0002\u0002\u24cb\u0630\u0003\u0002",
+ "\u0002\u0002\u24cc\u24cd\u0007I\u0002\u0002\u24cd\u24ce\u0007T\u0002",
+ "\u0002\u24ce\u24cf\u0007G\u0002\u0002\u24cf\u24d0\u0007C\u0002\u0002",
+ "\u24d0\u24d1\u0007V\u0002\u0002\u24d1\u24d2\u0007G\u0002\u0002\u24d2",
+ "\u24d3\u0007U\u0002\u0002\u24d3\u24d4\u0007V\u0002\u0002\u24d4\u0632",
+ "\u0003\u0002\u0002\u0002\u24d5\u24d6\u0007I\u0002\u0002\u24d6\u24d7",
+ "\u0007V\u0002\u0002\u24d7\u24d8\u0007K\u0002\u0002\u24d8\u24d9\u0007",
+ "F\u0002\u0002\u24d9\u24da\u0007a\u0002\u0002\u24da\u24db\u0007U\u0002",
+ "\u0002\u24db\u24dc\u0007W\u0002\u0002\u24dc\u24dd\u0007D\u0002\u0002",
+ "\u24dd\u24de\u0007U\u0002\u0002\u24de\u24df\u0007G\u0002\u0002\u24df",
+ "\u24e0\u0007V\u0002\u0002\u24e0\u0634\u0003\u0002\u0002\u0002\u24e1",
+ "\u24e2\u0007I\u0002\u0002\u24e2\u24e3\u0007V\u0002\u0002\u24e3\u24e4",
+ "\u0007K\u0002\u0002\u24e4\u24e5\u0007F\u0002\u0002\u24e5\u24e6\u0007",
+ "a\u0002\u0002\u24e6\u24e7\u0007U\u0002\u0002\u24e7\u24e8\u0007W\u0002",
+ "\u0002\u24e8\u24e9\u0007D\u0002\u0002\u24e9\u24ea\u0007V\u0002\u0002",
+ "\u24ea\u24eb\u0007T\u0002\u0002\u24eb\u24ec\u0007C\u0002\u0002\u24ec",
+ "\u24ed\u0007E\u0002\u0002\u24ed\u24ee\u0007V\u0002\u0002\u24ee\u0636",
+ "\u0003\u0002\u0002\u0002\u24ef\u24f0\u0007J\u0002\u0002\u24f0\u24f1",
+ "\u0007G\u0002\u0002\u24f1\u24f2\u0007Z\u0002\u0002\u24f2\u0638\u0003",
+ "\u0002\u0002\u0002\u24f3\u24f4\u0007K\u0002\u0002\u24f4\u24f5\u0007",
+ "H\u0002\u0002\u24f5\u24f6\u0007P\u0002\u0002\u24f6\u24f7\u0007W\u0002",
+ "\u0002\u24f7\u24f8\u0007N\u0002\u0002\u24f8\u24f9\u0007N\u0002\u0002",
+ "\u24f9\u063a\u0003\u0002\u0002\u0002\u24fa\u24fb\u0007K\u0002\u0002",
+ "\u24fb\u24fc\u0007P\u0002\u0002\u24fc\u24fd\u0007G\u0002\u0002\u24fd",
+ "\u24fe\u0007V\u0002\u0002\u24fe\u24ff\u00078\u0002\u0002\u24ff\u2500",
+ "\u0007a\u0002\u0002\u2500\u2501\u0007C\u0002\u0002\u2501\u2502\u0007",
+ "V\u0002\u0002\u2502\u2503\u0007Q\u0002\u0002\u2503\u2504\u0007P\u0002",
+ "\u0002\u2504\u063c\u0003\u0002\u0002\u0002\u2505\u2506\u0007K\u0002",
+ "\u0002\u2506\u2507\u0007P\u0002\u0002\u2507\u2508\u0007G\u0002\u0002",
+ "\u2508\u2509\u0007V\u0002\u0002\u2509\u250a\u00078\u0002\u0002\u250a",
+ "\u250b\u0007a\u0002\u0002\u250b\u250c\u0007P\u0002\u0002\u250c\u250d",
+ "\u0007V\u0002\u0002\u250d\u250e\u0007Q\u0002\u0002\u250e\u250f\u0007",
+ "C\u0002\u0002\u250f\u063e\u0003\u0002\u0002\u0002\u2510\u2511\u0007",
+ "K\u0002\u0002\u2511\u2512\u0007P\u0002\u0002\u2512\u2513\u0007G\u0002",
+ "\u0002\u2513\u2514\u0007V\u0002\u0002\u2514\u2515\u0007a\u0002\u0002",
+ "\u2515\u2516\u0007C\u0002\u0002\u2516\u2517\u0007V\u0002\u0002\u2517",
+ "\u2518\u0007Q\u0002\u0002\u2518\u2519\u0007P\u0002\u0002\u2519\u0640",
+ "\u0003\u0002\u0002\u0002\u251a\u251b\u0007K\u0002\u0002\u251b\u251c",
+ "\u0007P\u0002\u0002\u251c\u251d\u0007G\u0002\u0002\u251d\u251e\u0007",
+ "V\u0002\u0002\u251e\u251f\u0007a\u0002\u0002\u251f\u2520\u0007P\u0002",
+ "\u0002\u2520\u2521\u0007V\u0002\u0002\u2521\u2522\u0007Q\u0002\u0002",
+ "\u2522\u2523\u0007C\u0002\u0002\u2523\u0642\u0003\u0002\u0002\u0002",
+ "\u2524\u2525\u0007K\u0002\u0002\u2525\u2526\u0007P\u0002\u0002\u2526",
+ "\u2527\u0007U\u0002\u0002\u2527\u2528\u0007V\u0002\u0002\u2528\u2529",
+ "\u0007T\u0002\u0002\u2529\u0644\u0003\u0002\u0002\u0002\u252a\u252b",
+ "\u0007K\u0002\u0002\u252b\u252c\u0007P\u0002\u0002\u252c\u252d\u0007",
+ "V\u0002\u0002\u252d\u252e\u0007G\u0002\u0002\u252e\u252f\u0007T\u0002",
+ "\u0002\u252f\u2530\u0007K\u0002\u0002\u2530\u2531\u0007Q\u0002\u0002",
+ "\u2531\u2532\u0007T\u0002\u0002\u2532\u2533\u0007T\u0002\u0002\u2533",
+ "\u2534\u0007K\u0002\u0002\u2534\u2535\u0007P\u0002\u0002\u2535\u2536",
+ "\u0007I\u0002\u0002\u2536\u2537\u0007P\u0002\u0002\u2537\u0646\u0003",
+ "\u0002\u0002\u0002\u2538\u2539\u0007K\u0002\u0002\u2539\u253a\u0007",
+ "P\u0002\u0002\u253a\u253b\u0007V\u0002\u0002\u253b\u253c\u0007G\u0002",
+ "\u0002\u253c\u253d\u0007T\u0002\u0002\u253d\u253e\u0007U\u0002\u0002",
+ "\u253e\u253f\u0007G\u0002\u0002\u253f\u2540\u0007E\u0002\u0002\u2540",
+ "\u2541\u0007V\u0002\u0002\u2541\u2542\u0007U\u0002\u0002\u2542\u0648",
+ "\u0003\u0002\u0002\u0002\u2543\u2544\u0007K\u0002\u0002\u2544\u2545",
+ "\u0007U\u0002\u0002\u2545\u2546\u0007E\u0002\u0002\u2546\u2547\u0007",
+ "N\u0002\u0002\u2547\u2548\u0007Q\u0002\u0002\u2548\u2549\u0007U\u0002",
+ "\u0002\u2549\u254a\u0007G\u0002\u0002\u254a\u254b\u0007F\u0002\u0002",
+ "\u254b\u064a\u0003\u0002\u0002\u0002\u254c\u254d\u0007K\u0002\u0002",
+ "\u254d\u254e\u0007U\u0002\u0002\u254e\u254f\u0007G\u0002\u0002\u254f",
+ "\u2550\u0007O\u0002\u0002\u2550\u2551\u0007R\u0002\u0002\u2551\u2552",
+ "\u0007V\u0002\u0002\u2552\u2553\u0007[\u0002\u0002\u2553\u064c\u0003",
+ "\u0002\u0002\u0002\u2554\u2555\u0007K\u0002\u0002\u2555\u2556\u0007",
+ "U\u0002\u0002\u2556\u2557\u0007P\u0002\u0002\u2557\u2558\u0007W\u0002",
+ "\u0002\u2558\u2559\u0007N\u0002\u0002\u2559\u255a\u0007N\u0002\u0002",
+ "\u255a\u064e\u0003\u0002\u0002\u0002\u255b\u255c\u0007K\u0002\u0002",
+ "\u255c\u255d\u0007U\u0002\u0002\u255d\u255e\u0007U\u0002\u0002\u255e",
+ "\u255f\u0007K\u0002\u0002\u255f\u2560\u0007O\u0002\u0002\u2560\u2561",
+ "\u0007R\u0002\u0002\u2561\u2562\u0007N\u0002\u0002\u2562\u2563\u0007",
+ "G\u0002\u0002\u2563\u0650\u0003\u0002\u0002\u0002\u2564\u2565\u0007",
+ "K\u0002\u0002\u2565\u2566\u0007U\u0002\u0002\u2566\u2567\u0007a\u0002",
+ "\u0002\u2567\u2568\u0007H\u0002\u0002\u2568\u2569\u0007T\u0002\u0002",
+ "\u2569\u256a\u0007G\u0002\u0002\u256a\u256b\u0007G\u0002\u0002\u256b",
+ "\u256c\u0007a\u0002\u0002\u256c\u256d\u0007N\u0002\u0002\u256d\u256e",
+ "\u0007Q\u0002\u0002\u256e\u256f\u0007E\u0002\u0002\u256f\u2570\u0007",
+ "M\u0002\u0002\u2570\u0652\u0003\u0002\u0002\u0002\u2571\u2572\u0007",
+ "K\u0002\u0002\u2572\u2573\u0007U\u0002\u0002\u2573\u2574\u0007a\u0002",
+ "\u0002\u2574\u2575\u0007K\u0002\u0002\u2575\u2576\u0007R\u0002\u0002",
+ "\u2576\u2577\u0007X\u0002\u0002\u2577\u2578\u00076\u0002\u0002\u2578",
+ "\u0654\u0003\u0002\u0002\u0002\u2579\u257a\u0007K\u0002\u0002\u257a",
+ "\u257b\u0007U\u0002\u0002\u257b\u257c\u0007a\u0002\u0002\u257c\u257d",
+ "\u0007K\u0002\u0002\u257d\u257e\u0007R\u0002\u0002\u257e\u257f\u0007",
+ "X\u0002\u0002\u257f\u2580\u00076\u0002\u0002\u2580\u2581\u0007a\u0002",
+ "\u0002\u2581\u2582\u0007E\u0002\u0002\u2582\u2583\u0007Q\u0002\u0002",
+ "\u2583\u2584\u0007O\u0002\u0002\u2584\u2585\u0007R\u0002\u0002\u2585",
+ "\u2586\u0007C\u0002\u0002\u2586\u2587\u0007V\u0002\u0002\u2587\u0656",
+ "\u0003\u0002\u0002\u0002\u2588\u2589\u0007K\u0002\u0002\u2589\u258a",
+ "\u0007U\u0002\u0002\u258a\u258b\u0007a\u0002\u0002\u258b\u258c\u0007",
+ "K\u0002\u0002\u258c\u258d\u0007R\u0002\u0002\u258d\u258e\u0007X\u0002",
+ "\u0002\u258e\u258f\u00076\u0002\u0002\u258f\u2590\u0007a\u0002\u0002",
+ "\u2590\u2591\u0007O\u0002\u0002\u2591\u2592\u0007C\u0002\u0002\u2592",
+ "\u2593\u0007R\u0002\u0002\u2593\u2594\u0007R\u0002\u0002\u2594\u2595",
+ "\u0007G\u0002\u0002\u2595\u2596\u0007F\u0002\u0002\u2596\u0658\u0003",
+ "\u0002\u0002\u0002\u2597\u2598\u0007K\u0002\u0002\u2598\u2599\u0007",
+ "U\u0002\u0002\u2599\u259a\u0007a\u0002\u0002\u259a\u259b\u0007K\u0002",
+ "\u0002\u259b\u259c\u0007R\u0002\u0002\u259c\u259d\u0007X\u0002\u0002",
+ "\u259d\u259e\u00078\u0002\u0002\u259e\u065a\u0003\u0002\u0002\u0002",
+ "\u259f\u25a0\u0007K\u0002\u0002\u25a0\u25a1\u0007U\u0002\u0002\u25a1",
+ "\u25a2\u0007a\u0002\u0002\u25a2\u25a3\u0007W\u0002\u0002\u25a3\u25a4",
+ "\u0007U\u0002\u0002\u25a4\u25a5\u0007G\u0002\u0002\u25a5\u25a6\u0007",
+ "F\u0002\u0002\u25a6\u25a7\u0007a\u0002\u0002\u25a7\u25a8\u0007N\u0002",
+ "\u0002\u25a8\u25a9\u0007Q\u0002\u0002\u25a9\u25aa\u0007E\u0002\u0002",
+ "\u25aa\u25ab\u0007M\u0002\u0002\u25ab\u065c\u0003\u0002\u0002\u0002",
+ "\u25ac\u25ad\u0007N\u0002\u0002\u25ad\u25ae\u0007C\u0002\u0002\u25ae",
+ "\u25af\u0007U\u0002\u0002\u25af\u25b0\u0007V\u0002\u0002\u25b0\u25b1",
+ "\u0007a\u0002\u0002\u25b1\u25b2\u0007K\u0002\u0002\u25b2\u25b3\u0007",
+ "P\u0002\u0002\u25b3\u25b4\u0007U\u0002\u0002\u25b4\u25b5\u0007G\u0002",
+ "\u0002\u25b5\u25b6\u0007T\u0002\u0002\u25b6\u25b7\u0007V\u0002\u0002",
+ "\u25b7\u25b8\u0007a\u0002\u0002\u25b8\u25b9\u0007K\u0002\u0002\u25b9",
+ "\u25ba\u0007F\u0002\u0002\u25ba\u065e\u0003\u0002\u0002\u0002\u25bb",
+ "\u25bc\u0007N\u0002\u0002\u25bc\u25bd\u0007E\u0002\u0002\u25bd\u25be",
+ "\u0007C\u0002\u0002\u25be\u25bf\u0007U\u0002\u0002\u25bf\u25c0\u0007",
+ "G\u0002\u0002\u25c0\u0660\u0003\u0002\u0002\u0002\u25c1\u25c2\u0007",
+ "N\u0002\u0002\u25c2\u25c3\u0007G\u0002\u0002\u25c3\u25c4\u0007C\u0002",
+ "\u0002\u25c4\u25c5\u0007U\u0002\u0002\u25c5\u25c6\u0007V\u0002\u0002",
+ "\u25c6\u0662\u0003\u0002\u0002\u0002\u25c7\u25c8\u0007N\u0002\u0002",
+ "\u25c8\u25c9\u0007G\u0002\u0002\u25c9\u25ca\u0007P\u0002\u0002\u25ca",
+ "\u25cb\u0007I\u0002\u0002\u25cb\u25cc\u0007V\u0002\u0002\u25cc\u25cd",
+ "\u0007J\u0002\u0002\u25cd\u0664\u0003\u0002\u0002\u0002\u25ce\u25cf",
+ "\u0007N\u0002\u0002\u25cf\u25d0\u0007K\u0002\u0002\u25d0\u25d1\u0007",
+ "P\u0002\u0002\u25d1\u25d2\u0007G\u0002\u0002\u25d2\u25d3\u0007H\u0002",
+ "\u0002\u25d3\u25d4\u0007T\u0002\u0002\u25d4\u25d5\u0007Q\u0002\u0002",
+ "\u25d5\u25d6\u0007O\u0002\u0002\u25d6\u25d7\u0007V\u0002\u0002\u25d7",
+ "\u25d8\u0007G\u0002\u0002\u25d8\u25d9\u0007Z\u0002\u0002\u25d9\u25da",
+ "\u0007V\u0002\u0002\u25da\u0666\u0003\u0002\u0002\u0002\u25db\u25dc",
+ "\u0007N\u0002\u0002\u25dc\u25dd\u0007K\u0002\u0002\u25dd\u25de\u0007",
+ "P\u0002\u0002\u25de\u25df\u0007G\u0002\u0002\u25df\u25e0\u0007H\u0002",
+ "\u0002\u25e0\u25e1\u0007T\u0002\u0002\u25e1\u25e2\u0007Q\u0002\u0002",
+ "\u25e2\u25e3\u0007O\u0002\u0002\u25e3\u25e4\u0007Y\u0002\u0002\u25e4",
+ "\u25e5\u0007M\u0002\u0002\u25e5\u25e6\u0007D\u0002\u0002\u25e6\u0668",
+ "\u0003\u0002\u0002\u0002\u25e7\u25e8\u0007N\u0002\u0002\u25e8\u25e9",
+ "\u0007K\u0002\u0002\u25e9\u25ea\u0007P\u0002\u0002\u25ea\u25eb\u0007",
+ "G\u0002\u0002\u25eb\u25ec\u0007U\u0002\u0002\u25ec\u25ed\u0007V\u0002",
+ "\u0002\u25ed\u25ee\u0007T\u0002\u0002\u25ee\u25ef\u0007K\u0002\u0002",
+ "\u25ef\u25f0\u0007P\u0002\u0002\u25f0\u25f1\u0007I\u0002\u0002\u25f1",
+ "\u25f2\u0007H\u0002\u0002\u25f2\u25f3\u0007T\u0002\u0002\u25f3\u25f4",
+ "\u0007Q\u0002\u0002\u25f4\u25f5\u0007O\u0002\u0002\u25f5\u25f6\u0007",
+ "V\u0002\u0002\u25f6\u25f7\u0007G\u0002\u0002\u25f7\u25f8\u0007Z\u0002",
+ "\u0002\u25f8\u25f9\u0007V\u0002\u0002\u25f9\u066a\u0003\u0002\u0002",
+ "\u0002\u25fa\u25fb\u0007N\u0002\u0002\u25fb\u25fc\u0007K\u0002\u0002",
+ "\u25fc\u25fd\u0007P\u0002\u0002\u25fd\u25fe\u0007G\u0002\u0002\u25fe",
+ "\u25ff\u0007U\u0002\u0002\u25ff\u2600\u0007V\u0002\u0002\u2600\u2601",
+ "\u0007T\u0002\u0002\u2601\u2602\u0007K\u0002\u0002\u2602\u2603\u0007",
+ "P\u0002\u0002\u2603\u2604\u0007I\u0002\u0002\u2604\u2605\u0007H\u0002",
+ "\u0002\u2605\u2606\u0007T\u0002\u0002\u2606\u2607\u0007Q\u0002\u0002",
+ "\u2607\u2608\u0007O\u0002\u0002\u2608\u2609\u0007Y\u0002\u0002\u2609",
+ "\u260a\u0007M\u0002\u0002\u260a\u260b\u0007D\u0002\u0002\u260b\u066c",
+ "\u0003\u0002\u0002\u0002\u260c\u260d\u0007N\u0002\u0002\u260d\u260e",
+ "\u0007P\u0002\u0002\u260e\u066e\u0003\u0002\u0002\u0002\u260f\u2610",
+ "\u0007N\u0002\u0002\u2610\u2611\u0007Q\u0002\u0002\u2611\u2612\u0007",
+ "C\u0002\u0002\u2612\u2613\u0007F\u0002\u0002\u2613\u2614\u0007a\u0002",
+ "\u0002\u2614\u2615\u0007H\u0002\u0002\u2615\u2616\u0007K\u0002\u0002",
+ "\u2616\u2617\u0007N\u0002\u0002\u2617\u2618\u0007G\u0002\u0002\u2618",
+ "\u0670\u0003\u0002\u0002\u0002\u2619\u261a\u0007N\u0002\u0002\u261a",
+ "\u261b\u0007Q\u0002\u0002\u261b\u261c\u0007E\u0002\u0002\u261c\u261d",
+ "\u0007C\u0002\u0002\u261d\u261e\u0007V\u0002\u0002\u261e\u261f\u0007",
+ "G\u0002\u0002\u261f\u0672\u0003\u0002\u0002\u0002\u2620\u2621\u0007",
+ "N\u0002\u0002\u2621\u2622\u0007Q\u0002\u0002\u2622\u2623\u0007I\u0002",
+ "\u0002\u2623\u0674\u0003\u0002\u0002\u0002\u2624\u2625\u0007N\u0002",
+ "\u0002\u2625\u2626\u0007Q\u0002\u0002\u2626\u2627\u0007I\u0002\u0002",
+ "\u2627\u2628\u00073\u0002\u0002\u2628\u2629\u00072\u0002\u0002\u2629",
+ "\u0676\u0003\u0002\u0002\u0002\u262a\u262b\u0007N\u0002\u0002\u262b",
+ "\u262c\u0007Q\u0002\u0002\u262c\u262d\u0007I\u0002\u0002\u262d\u262e",
+ "\u00074\u0002\u0002\u262e\u0678\u0003\u0002\u0002\u0002\u262f\u2630",
+ "\u0007N\u0002\u0002\u2630\u2631\u0007Q\u0002\u0002\u2631\u2632\u0007",
+ "Y\u0002\u0002\u2632\u2633\u0007G\u0002\u0002\u2633\u2634\u0007T\u0002",
+ "\u0002\u2634\u067a\u0003\u0002\u0002\u0002\u2635\u2636\u0007N\u0002",
+ "\u0002\u2636\u2637\u0007R\u0002\u0002\u2637\u2638\u0007C\u0002\u0002",
+ "\u2638\u2639\u0007F\u0002\u0002\u2639\u067c\u0003\u0002\u0002\u0002",
+ "\u263a\u263b\u0007N\u0002\u0002\u263b\u263c\u0007V\u0002\u0002\u263c",
+ "\u263d\u0007T\u0002\u0002\u263d\u263e\u0007K\u0002\u0002\u263e\u263f",
+ "\u0007O\u0002\u0002\u263f\u067e\u0003\u0002\u0002\u0002\u2640\u2641",
+ "\u0007O\u0002\u0002\u2641\u2642\u0007C\u0002\u0002\u2642\u2643\u0007",
+ "M\u0002\u0002\u2643\u2644\u0007G\u0002\u0002\u2644\u2645\u0007F\u0002",
+ "\u0002\u2645\u2646\u0007C\u0002\u0002\u2646\u2647\u0007V\u0002\u0002",
+ "\u2647\u2648\u0007G\u0002\u0002\u2648\u0680\u0003\u0002\u0002\u0002",
+ "\u2649\u264a\u0007O\u0002\u0002\u264a\u264b\u0007C\u0002\u0002\u264b",
+ "\u264c\u0007M\u0002\u0002\u264c\u264d\u0007G\u0002\u0002\u264d\u264e",
+ "\u0007V\u0002\u0002\u264e\u264f\u0007K\u0002\u0002\u264f\u2650\u0007",
+ "O\u0002\u0002\u2650\u2651\u0007G\u0002\u0002\u2651\u0682\u0003\u0002",
+ "\u0002\u0002\u2652\u2653\u0007O\u0002\u0002\u2653\u2654\u0007C\u0002",
+ "\u0002\u2654\u2655\u0007M\u0002\u0002\u2655\u2656\u0007G\u0002\u0002",
+ "\u2656\u2657\u0007a\u0002\u0002\u2657\u2658\u0007U\u0002\u0002\u2658",
+ "\u2659\u0007G\u0002\u0002\u2659\u265a\u0007V\u0002\u0002\u265a\u0684",
+ "\u0003\u0002\u0002\u0002\u265b\u265c\u0007O\u0002\u0002\u265c\u265d",
+ "\u0007C\u0002\u0002\u265d\u265e\u0007U\u0002\u0002\u265e\u265f\u0007",
+ "V\u0002\u0002\u265f\u2660\u0007G\u0002\u0002\u2660\u2661\u0007T\u0002",
+ "\u0002\u2661\u2662\u0007a\u0002\u0002\u2662\u2663\u0007R\u0002\u0002",
+ "\u2663\u2664\u0007Q\u0002\u0002\u2664\u2665\u0007U\u0002\u0002\u2665",
+ "\u2666\u0007a\u0002\u0002\u2666\u2667\u0007Y\u0002\u0002\u2667\u2668",
+ "\u0007C\u0002\u0002\u2668\u2669\u0007K\u0002\u0002\u2669\u266a\u0007",
+ "V\u0002\u0002\u266a\u0686\u0003\u0002\u0002\u0002\u266b\u266c\u0007",
+ "O\u0002\u0002\u266c\u266d\u0007D\u0002\u0002\u266d\u266e\u0007T\u0002",
+ "\u0002\u266e\u266f\u0007E\u0002\u0002\u266f\u2670\u0007Q\u0002\u0002",
+ "\u2670\u2671\u0007P\u0002\u0002\u2671\u2672\u0007V\u0002\u0002\u2672",
+ "\u2673\u0007C\u0002\u0002\u2673\u2674\u0007K\u0002\u0002\u2674\u2675",
+ "\u0007P\u0002\u0002\u2675\u2676\u0007U\u0002\u0002\u2676\u0688\u0003",
+ "\u0002\u0002\u0002\u2677\u2678\u0007O\u0002\u0002\u2678\u2679\u0007",
+ "D\u0002\u0002\u2679\u267a\u0007T\u0002\u0002\u267a\u267b\u0007F\u0002",
+ "\u0002\u267b\u267c\u0007K\u0002\u0002\u267c\u267d\u0007U\u0002\u0002",
+ "\u267d\u267e\u0007L\u0002\u0002\u267e\u267f\u0007Q\u0002\u0002\u267f",
+ "\u2680\u0007K\u0002\u0002\u2680\u2681\u0007P\u0002\u0002\u2681\u2682",
+ "\u0007V\u0002\u0002\u2682\u068a\u0003\u0002\u0002\u0002\u2683\u2684",
+ "\u0007O\u0002\u0002\u2684\u2685\u0007D\u0002\u0002\u2685\u2686\u0007",
+ "T\u0002\u0002\u2686\u2687\u0007G\u0002\u0002\u2687\u2688\u0007S\u0002",
+ "\u0002\u2688\u2689\u0007W\u0002\u0002\u2689\u268a\u0007C\u0002\u0002",
+ "\u268a\u268b\u0007N\u0002\u0002\u268b\u068c\u0003\u0002\u0002\u0002",
+ "\u268c\u268d\u0007O\u0002\u0002\u268d\u268e\u0007D\u0002\u0002\u268e",
+ "\u268f\u0007T\u0002\u0002\u268f\u2690\u0007K\u0002\u0002\u2690\u2691",
+ "\u0007P\u0002\u0002\u2691\u2692\u0007V\u0002\u0002\u2692\u2693\u0007",
+ "G\u0002\u0002\u2693\u2694\u0007T\u0002\u0002\u2694\u2695\u0007U\u0002",
+ "\u0002\u2695\u2696\u0007G\u0002\u0002\u2696\u2697\u0007E\u0002\u0002",
+ "\u2697\u2698\u0007V\u0002\u0002\u2698\u2699\u0007U\u0002\u0002\u2699",
+ "\u068e\u0003\u0002\u0002\u0002\u269a\u269b\u0007O\u0002\u0002\u269b",
+ "\u269c\u0007D\u0002\u0002\u269c\u269d\u0007T\u0002\u0002\u269d\u269e",
+ "\u0007Q\u0002\u0002\u269e\u269f\u0007X\u0002\u0002\u269f\u26a0\u0007",
+ "G\u0002\u0002\u26a0\u26a1\u0007T\u0002\u0002\u26a1\u26a2\u0007N\u0002",
+ "\u0002\u26a2\u26a3\u0007C\u0002\u0002\u26a3\u26a4\u0007R\u0002\u0002",
+ "\u26a4\u26a5\u0007U\u0002\u0002\u26a5\u0690\u0003\u0002\u0002\u0002",
+ "\u26a6\u26a7\u0007O\u0002\u0002\u26a7\u26a8\u0007D\u0002\u0002\u26a8",
+ "\u26a9\u0007T\u0002\u0002\u26a9\u26aa\u0007V\u0002\u0002\u26aa\u26ab",
+ "\u0007Q\u0002\u0002\u26ab\u26ac\u0007W\u0002\u0002\u26ac\u26ad\u0007",
+ "E\u0002\u0002\u26ad\u26ae\u0007J\u0002\u0002\u26ae\u26af\u0007G\u0002",
+ "\u0002\u26af\u26b0\u0007U\u0002\u0002\u26b0\u0692\u0003\u0002\u0002",
+ "\u0002\u26b1\u26b2\u0007O\u0002\u0002\u26b2\u26b3\u0007D\u0002\u0002",
+ "\u26b3\u26b4\u0007T\u0002\u0002\u26b4\u26b5\u0007Y\u0002\u0002\u26b5",
+ "\u26b6\u0007K\u0002\u0002\u26b6\u26b7\u0007V\u0002\u0002\u26b7\u26b8",
+ "\u0007J\u0002\u0002\u26b8\u26b9\u0007K\u0002\u0002\u26b9\u26ba\u0007",
+ "P\u0002\u0002\u26ba\u0694\u0003\u0002\u0002\u0002\u26bb\u26bc\u0007",
+ "O\u0002\u0002\u26bc\u26bd\u0007F\u0002\u0002\u26bd\u26be\u00077\u0002",
+ "\u0002\u26be\u0696\u0003\u0002\u0002\u0002\u26bf\u26c0\u0007O\u0002",
+ "\u0002\u26c0\u26c1\u0007N\u0002\u0002\u26c1\u26c2\u0007K\u0002\u0002",
+ "\u26c2\u26c3\u0007P\u0002\u0002\u26c3\u26c4\u0007G\u0002\u0002\u26c4",
+ "\u26c5\u0007H\u0002\u0002\u26c5\u26c6\u0007T\u0002\u0002\u26c6\u26c7",
+ "\u0007Q\u0002\u0002\u26c7\u26c8\u0007O\u0002\u0002\u26c8\u26c9\u0007",
+ "V\u0002\u0002\u26c9\u26ca\u0007G\u0002\u0002\u26ca\u26cb\u0007Z\u0002",
+ "\u0002\u26cb\u26cc\u0007V\u0002\u0002\u26cc\u0698\u0003\u0002\u0002",
+ "\u0002\u26cd\u26ce\u0007O\u0002\u0002\u26ce\u26cf\u0007N\u0002\u0002",
+ "\u26cf\u26d0\u0007K\u0002\u0002\u26d0\u26d1\u0007P\u0002\u0002\u26d1",
+ "\u26d2\u0007G\u0002\u0002\u26d2\u26d3\u0007H\u0002\u0002\u26d3\u26d4",
+ "\u0007T\u0002\u0002\u26d4\u26d5\u0007Q\u0002\u0002\u26d5\u26d6\u0007",
+ "O\u0002\u0002\u26d6\u26d7\u0007Y\u0002\u0002\u26d7\u26d8\u0007M\u0002",
+ "\u0002\u26d8\u26d9\u0007D\u0002\u0002\u26d9\u069a\u0003\u0002\u0002",
+ "\u0002\u26da\u26db\u0007O\u0002\u0002\u26db\u26dc\u0007Q\u0002\u0002",
+ "\u26dc\u26dd\u0007P\u0002\u0002\u26dd\u26de\u0007V\u0002\u0002\u26de",
+ "\u26df\u0007J\u0002\u0002\u26df\u26e0\u0007P\u0002\u0002\u26e0\u26e1",
+ "\u0007C\u0002\u0002\u26e1\u26e2\u0007O\u0002\u0002\u26e2\u26e3\u0007",
+ "G\u0002\u0002\u26e3\u069c\u0003\u0002\u0002\u0002\u26e4\u26e5\u0007",
+ "O\u0002\u0002\u26e5\u26e6\u0007R\u0002\u0002\u26e6\u26e7\u0007Q\u0002",
+ "\u0002\u26e7\u26e8\u0007K\u0002\u0002\u26e8\u26e9\u0007P\u0002\u0002",
+ "\u26e9\u26ea\u0007V\u0002\u0002\u26ea\u26eb\u0007H\u0002\u0002\u26eb",
+ "\u26ec\u0007T\u0002\u0002\u26ec\u26ed\u0007Q\u0002\u0002\u26ed\u26ee",
+ "\u0007O\u0002\u0002\u26ee\u26ef\u0007V\u0002\u0002\u26ef\u26f0\u0007",
+ "G\u0002\u0002\u26f0\u26f1\u0007Z\u0002\u0002\u26f1\u26f2\u0007V\u0002",
+ "\u0002\u26f2\u069e\u0003\u0002\u0002\u0002\u26f3\u26f4\u0007O\u0002",
+ "\u0002\u26f4\u26f5\u0007R\u0002\u0002\u26f5\u26f6\u0007Q\u0002\u0002",
+ "\u26f6\u26f7\u0007K\u0002\u0002\u26f7\u26f8\u0007P\u0002\u0002\u26f8",
+ "\u26f9\u0007V\u0002\u0002\u26f9\u26fa\u0007H\u0002\u0002\u26fa\u26fb",
+ "\u0007T\u0002\u0002\u26fb\u26fc\u0007Q\u0002\u0002\u26fc\u26fd\u0007",
+ "O\u0002\u0002\u26fd\u26fe\u0007Y\u0002\u0002\u26fe\u26ff\u0007M\u0002",
+ "\u0002\u26ff\u2700\u0007D\u0002\u0002\u2700\u06a0\u0003\u0002\u0002",
+ "\u0002\u2701\u2702\u0007O\u0002\u0002\u2702\u2703\u0007R\u0002\u0002",
+ "\u2703\u2704\u0007Q\u0002\u0002\u2704\u2705\u0007N\u0002\u0002\u2705",
+ "\u2706\u0007[\u0002\u0002\u2706\u2707\u0007H\u0002\u0002\u2707\u2708",
+ "\u0007T\u0002\u0002\u2708\u2709\u0007Q\u0002\u0002\u2709\u270a\u0007",
+ "O\u0002\u0002\u270a\u270b\u0007V\u0002\u0002\u270b\u270c\u0007G\u0002",
+ "\u0002\u270c\u270d\u0007Z\u0002\u0002\u270d\u270e\u0007V\u0002\u0002",
+ "\u270e\u06a2\u0003\u0002\u0002\u0002\u270f\u2710\u0007O\u0002\u0002",
+ "\u2710\u2711\u0007R\u0002\u0002\u2711\u2712\u0007Q\u0002\u0002\u2712",
+ "\u2713\u0007N\u0002\u0002\u2713\u2714\u0007[\u0002\u0002\u2714\u2715",
+ "\u0007H\u0002\u0002\u2715\u2716\u0007T\u0002\u0002\u2716\u2717\u0007",
+ "Q\u0002\u0002\u2717\u2718\u0007O\u0002\u0002\u2718\u2719\u0007Y\u0002",
+ "\u0002\u2719\u271a\u0007M\u0002\u0002\u271a\u271b\u0007D\u0002\u0002",
+ "\u271b\u06a4\u0003\u0002\u0002\u0002\u271c\u271d\u0007O\u0002\u0002",
+ "\u271d\u271e\u0007W\u0002\u0002\u271e\u271f\u0007N\u0002\u0002\u271f",
+ "\u2720\u0007V\u0002\u0002\u2720\u2721\u0007K\u0002\u0002\u2721\u2722",
+ "\u0007N\u0002\u0002\u2722\u2723\u0007K\u0002\u0002\u2723\u2724\u0007",
+ "P\u0002\u0002\u2724\u2725\u0007G\u0002\u0002\u2725\u2726\u0007U\u0002",
+ "\u0002\u2726\u2727\u0007V\u0002\u0002\u2727\u2728\u0007T\u0002\u0002",
+ "\u2728\u2729\u0007K\u0002\u0002\u2729\u272a\u0007P\u0002\u0002\u272a",
+ "\u272b\u0007I\u0002\u0002\u272b\u272c\u0007H\u0002\u0002\u272c\u272d",
+ "\u0007T\u0002\u0002\u272d\u272e\u0007Q\u0002\u0002\u272e\u272f\u0007",
+ "O\u0002\u0002\u272f\u2730\u0007V\u0002\u0002\u2730\u2731\u0007G\u0002",
+ "\u0002\u2731\u2732\u0007Z\u0002\u0002\u2732\u2733\u0007V\u0002\u0002",
+ "\u2733\u06a6\u0003\u0002\u0002\u0002\u2734\u2735\u0007O\u0002\u0002",
+ "\u2735\u2736\u0007W\u0002\u0002\u2736\u2737\u0007N\u0002\u0002\u2737",
+ "\u2738\u0007V\u0002\u0002\u2738\u2739\u0007K\u0002\u0002\u2739\u273a",
+ "\u0007N\u0002\u0002\u273a\u273b\u0007K\u0002\u0002\u273b\u273c\u0007",
+ "P\u0002\u0002\u273c\u273d\u0007G\u0002\u0002\u273d\u273e\u0007U\u0002",
+ "\u0002\u273e\u273f\u0007V\u0002\u0002\u273f\u2740\u0007T\u0002\u0002",
+ "\u2740\u2741\u0007K\u0002\u0002\u2741\u2742\u0007P\u0002\u0002\u2742",
+ "\u2743\u0007I\u0002\u0002\u2743\u2744\u0007H\u0002\u0002\u2744\u2745",
+ "\u0007T\u0002\u0002\u2745\u2746\u0007Q\u0002\u0002\u2746\u2747\u0007",
+ "O\u0002\u0002\u2747\u2748\u0007Y\u0002\u0002\u2748\u2749\u0007M\u0002",
+ "\u0002\u2749\u274a\u0007D\u0002\u0002\u274a\u06a8\u0003\u0002\u0002",
+ "\u0002\u274b\u274c\u0007O\u0002\u0002\u274c\u274d\u0007W\u0002\u0002",
+ "\u274d\u274e\u0007N\u0002\u0002\u274e\u274f\u0007V\u0002\u0002\u274f",
+ "\u2750\u0007K\u0002\u0002\u2750\u2751\u0007R\u0002\u0002\u2751\u2752",
+ "\u0007Q\u0002\u0002\u2752\u2753\u0007K\u0002\u0002\u2753\u2754\u0007",
+ "P\u0002\u0002\u2754\u2755\u0007V\u0002\u0002\u2755\u2756\u0007H\u0002",
+ "\u0002\u2756\u2757\u0007T\u0002\u0002\u2757\u2758\u0007Q\u0002\u0002",
+ "\u2758\u2759\u0007O\u0002\u0002\u2759\u275a\u0007V\u0002\u0002\u275a",
+ "\u275b\u0007G\u0002\u0002\u275b\u275c\u0007Z\u0002\u0002\u275c\u275d",
+ "\u0007V\u0002\u0002\u275d\u06aa\u0003\u0002\u0002\u0002\u275e\u275f",
+ "\u0007O\u0002\u0002\u275f\u2760\u0007W\u0002\u0002\u2760\u2761\u0007",
+ "N\u0002\u0002\u2761\u2762\u0007V\u0002\u0002\u2762\u2763\u0007K\u0002",
+ "\u0002\u2763\u2764\u0007R\u0002\u0002\u2764\u2765\u0007Q\u0002\u0002",
+ "\u2765\u2766\u0007K\u0002\u0002\u2766\u2767\u0007P\u0002\u0002\u2767",
+ "\u2768\u0007V\u0002\u0002\u2768\u2769\u0007H\u0002\u0002\u2769\u276a",
+ "\u0007T\u0002\u0002\u276a\u276b\u0007Q\u0002\u0002\u276b\u276c\u0007",
+ "O\u0002\u0002\u276c\u276d\u0007Y\u0002\u0002\u276d\u276e\u0007M\u0002",
+ "\u0002\u276e\u276f\u0007D\u0002\u0002\u276f\u06ac\u0003\u0002\u0002",
+ "\u0002\u2770\u2771\u0007O\u0002\u0002\u2771\u2772\u0007W\u0002\u0002",
+ "\u2772\u2773\u0007N\u0002\u0002\u2773\u2774\u0007V\u0002\u0002\u2774",
+ "\u2775\u0007K\u0002\u0002\u2775\u2776\u0007R\u0002\u0002\u2776\u2777",
+ "\u0007Q\u0002\u0002\u2777\u2778\u0007N\u0002\u0002\u2778\u2779\u0007",
+ "[\u0002\u0002\u2779\u277a\u0007I\u0002\u0002\u277a\u277b\u0007Q\u0002",
+ "\u0002\u277b\u277c\u0007P\u0002\u0002\u277c\u277d\u0007H\u0002\u0002",
+ "\u277d\u277e\u0007T\u0002\u0002\u277e\u277f\u0007Q\u0002\u0002\u277f",
+ "\u2780\u0007O\u0002\u0002\u2780\u2781\u0007V\u0002\u0002\u2781\u2782",
+ "\u0007G\u0002\u0002\u2782\u2783\u0007Z\u0002\u0002\u2783\u2784\u0007",
+ "V\u0002\u0002\u2784\u06ae\u0003\u0002\u0002\u0002\u2785\u2786\u0007",
+ "O\u0002\u0002\u2786\u2787\u0007W\u0002\u0002\u2787\u2788\u0007N\u0002",
+ "\u0002\u2788\u2789\u0007V\u0002\u0002\u2789\u278a\u0007K\u0002\u0002",
+ "\u278a\u278b\u0007R\u0002\u0002\u278b\u278c\u0007Q\u0002\u0002\u278c",
+ "\u278d\u0007N\u0002\u0002\u278d\u278e\u0007[\u0002\u0002\u278e\u278f",
+ "\u0007I\u0002\u0002\u278f\u2790\u0007Q\u0002\u0002\u2790\u2791\u0007",
+ "P\u0002\u0002\u2791\u2792\u0007H\u0002\u0002\u2792\u2793\u0007T\u0002",
+ "\u0002\u2793\u2794\u0007Q\u0002\u0002\u2794\u2795\u0007O\u0002\u0002",
+ "\u2795\u2796\u0007Y\u0002\u0002\u2796\u2797\u0007M\u0002\u0002\u2797",
+ "\u2798\u0007D\u0002\u0002\u2798\u06b0\u0003\u0002\u0002\u0002\u2799",
+ "\u279a\u0007P\u0002\u0002\u279a\u279b\u0007C\u0002\u0002\u279b\u279c",
+ "\u0007O\u0002\u0002\u279c\u279d\u0007G\u0002\u0002\u279d\u279e\u0007",
+ "a\u0002\u0002\u279e\u279f\u0007E\u0002\u0002\u279f\u27a0\u0007Q\u0002",
+ "\u0002\u27a0\u27a1\u0007P\u0002\u0002\u27a1\u27a2\u0007U\u0002\u0002",
+ "\u27a2\u27a3\u0007V\u0002\u0002\u27a3\u06b2\u0003\u0002\u0002\u0002",
+ "\u27a4\u27a5\u0007P\u0002\u0002\u27a5\u27a6\u0007W\u0002\u0002\u27a6",
+ "\u27a7\u0007N\u0002\u0002\u27a7\u27a8\u0007N\u0002\u0002\u27a8\u27a9",
+ "\u0007K\u0002\u0002\u27a9\u27aa\u0007H\u0002\u0002\u27aa\u06b4\u0003",
+ "\u0002\u0002\u0002\u27ab\u27ac\u0007P\u0002\u0002\u27ac\u27ad\u0007",
+ "W\u0002\u0002\u27ad\u27ae\u0007O\u0002\u0002\u27ae\u27af\u0007I\u0002",
+ "\u0002\u27af\u27b0\u0007G\u0002\u0002\u27b0\u27b1\u0007Q\u0002\u0002",
+ "\u27b1\u27b2\u0007O\u0002\u0002\u27b2\u27b3\u0007G\u0002\u0002\u27b3",
+ "\u27b4\u0007V\u0002\u0002\u27b4\u27b5\u0007T\u0002\u0002\u27b5\u27b6",
+ "\u0007K\u0002\u0002\u27b6\u27b7\u0007G\u0002\u0002\u27b7\u27b8\u0007",
+ "U\u0002\u0002\u27b8\u06b6\u0003\u0002\u0002\u0002\u27b9\u27ba\u0007",
+ "P\u0002\u0002\u27ba\u27bb\u0007W\u0002\u0002\u27bb\u27bc\u0007O\u0002",
+ "\u0002\u27bc\u27bd\u0007K\u0002\u0002\u27bd\u27be\u0007P\u0002\u0002",
+ "\u27be\u27bf\u0007V\u0002\u0002\u27bf\u27c0\u0007G\u0002\u0002\u27c0",
+ "\u27c1\u0007T\u0002\u0002\u27c1\u27c2\u0007K\u0002\u0002\u27c2\u27c3",
+ "\u0007Q\u0002\u0002\u27c3\u27c4\u0007T\u0002\u0002\u27c4\u27c5\u0007",
+ "T\u0002\u0002\u27c5\u27c6\u0007K\u0002\u0002\u27c6\u27c7\u0007P\u0002",
+ "\u0002\u27c7\u27c8\u0007I\u0002\u0002\u27c8\u27c9\u0007U\u0002\u0002",
+ "\u27c9\u06b8\u0003\u0002\u0002\u0002\u27ca\u27cb\u0007P\u0002\u0002",
+ "\u27cb\u27cc\u0007W\u0002\u0002\u27cc\u27cd\u0007O\u0002\u0002\u27cd",
+ "\u27ce\u0007R\u0002\u0002\u27ce\u27cf\u0007Q\u0002\u0002\u27cf\u27d0",
+ "\u0007K\u0002\u0002\u27d0\u27d1\u0007P\u0002\u0002\u27d1\u27d2\u0007",
+ "V\u0002\u0002\u27d2\u27d3\u0007U\u0002\u0002\u27d3\u06ba\u0003\u0002",
+ "\u0002\u0002\u27d4\u27d5\u0007Q\u0002\u0002\u27d5\u27d6\u0007E\u0002",
+ "\u0002\u27d6\u27d7\u0007V\u0002\u0002\u27d7\u06bc\u0003\u0002\u0002",
+ "\u0002\u27d8\u27d9\u0007Q\u0002\u0002\u27d9\u27da\u0007E\u0002\u0002",
+ "\u27da\u27db\u0007V\u0002\u0002\u27db\u27dc\u0007G\u0002\u0002\u27dc",
+ "\u27dd\u0007V\u0002\u0002\u27dd\u27de\u0007a\u0002\u0002\u27de\u27df",
+ "\u0007N\u0002\u0002\u27df\u27e0\u0007G\u0002\u0002\u27e0\u27e1\u0007",
+ "P\u0002\u0002\u27e1\u27e2\u0007I\u0002\u0002\u27e2\u27e3\u0007V\u0002",
+ "\u0002\u27e3\u27e4\u0007J\u0002\u0002\u27e4\u06be\u0003\u0002\u0002",
+ "\u0002\u27e5\u27e6\u0007Q\u0002\u0002\u27e6\u27e7\u0007T\u0002\u0002",
+ "\u27e7\u27e8\u0007F\u0002\u0002\u27e8\u06c0\u0003\u0002\u0002\u0002",
+ "\u27e9\u27ea\u0007Q\u0002\u0002\u27ea\u27eb\u0007X\u0002\u0002\u27eb",
+ "\u27ec\u0007G\u0002\u0002\u27ec\u27ed\u0007T\u0002\u0002\u27ed\u27ee",
+ "\u0007N\u0002\u0002\u27ee\u27ef\u0007C\u0002\u0002\u27ef\u27f0\u0007",
+ "R\u0002\u0002\u27f0\u27f1\u0007U\u0002\u0002\u27f1\u06c2\u0003\u0002",
+ "\u0002\u0002\u27f2\u27f3\u0007R\u0002\u0002\u27f3\u27f4\u0007G\u0002",
+ "\u0002\u27f4\u27f5\u0007T\u0002\u0002\u27f5\u27f6\u0007K\u0002\u0002",
+ "\u27f6\u27f7\u0007Q\u0002\u0002\u27f7\u27f8\u0007F\u0002\u0002\u27f8",
+ "\u27f9\u0007a\u0002\u0002\u27f9\u27fa\u0007C\u0002\u0002\u27fa\u27fb",
+ "\u0007F\u0002\u0002\u27fb\u27fc\u0007F\u0002\u0002\u27fc\u06c4\u0003",
+ "\u0002\u0002\u0002\u27fd\u27fe\u0007R\u0002\u0002\u27fe\u27ff\u0007",
+ "G\u0002\u0002\u27ff\u2800\u0007T\u0002\u0002\u2800\u2801\u0007K\u0002",
+ "\u0002\u2801\u2802\u0007Q\u0002\u0002\u2802\u2803\u0007F\u0002\u0002",
+ "\u2803\u2804\u0007a\u0002\u0002\u2804\u2805\u0007F\u0002\u0002\u2805",
+ "\u2806\u0007K\u0002\u0002\u2806\u2807\u0007H\u0002\u0002\u2807\u2808",
+ "\u0007H\u0002\u0002\u2808\u06c6\u0003\u0002\u0002\u0002\u2809\u280a",
+ "\u0007R\u0002\u0002\u280a\u280b\u0007K\u0002\u0002\u280b\u06c8\u0003",
+ "\u0002\u0002\u0002\u280c\u280d\u0007R\u0002\u0002\u280d\u280e\u0007",
+ "Q\u0002\u0002\u280e\u280f\u0007K\u0002\u0002\u280f\u2810\u0007P\u0002",
+ "\u0002\u2810\u2811\u0007V\u0002\u0002\u2811\u2812\u0007H\u0002\u0002",
+ "\u2812\u2813\u0007T\u0002\u0002\u2813\u2814\u0007Q\u0002\u0002\u2814",
+ "\u2815\u0007O\u0002\u0002\u2815\u2816\u0007V\u0002\u0002\u2816\u2817",
+ "\u0007G\u0002\u0002\u2817\u2818\u0007Z\u0002\u0002\u2818\u2819\u0007",
+ "V\u0002\u0002\u2819\u06ca\u0003\u0002\u0002\u0002\u281a\u281b\u0007",
+ "R\u0002\u0002\u281b\u281c\u0007Q\u0002\u0002\u281c\u281d\u0007K\u0002",
+ "\u0002\u281d\u281e\u0007P\u0002\u0002\u281e\u281f\u0007V\u0002\u0002",
+ "\u281f\u2820\u0007H\u0002\u0002\u2820\u2821\u0007T\u0002\u0002\u2821",
+ "\u2822\u0007Q\u0002\u0002\u2822\u2823\u0007O\u0002\u0002\u2823\u2824",
+ "\u0007Y\u0002\u0002\u2824\u2825\u0007M\u0002\u0002\u2825\u2826\u0007",
+ "D\u0002\u0002\u2826\u06cc\u0003\u0002\u0002\u0002\u2827\u2828\u0007",
+ "R\u0002\u0002\u2828\u2829\u0007Q\u0002\u0002\u2829\u282a\u0007K\u0002",
+ "\u0002\u282a\u282b\u0007P\u0002\u0002\u282b\u282c\u0007V\u0002\u0002",
+ "\u282c\u282d\u0007P\u0002\u0002\u282d\u06ce\u0003\u0002\u0002\u0002",
+ "\u282e\u282f\u0007R\u0002\u0002\u282f\u2830\u0007Q\u0002\u0002\u2830",
+ "\u2831\u0007N\u0002\u0002\u2831\u2832\u0007[\u0002\u0002\u2832\u2833",
+ "\u0007H\u0002\u0002\u2833\u2834\u0007T\u0002\u0002\u2834\u2835\u0007",
+ "Q\u0002\u0002\u2835\u2836\u0007O\u0002\u0002\u2836\u2837\u0007V\u0002",
+ "\u0002\u2837\u2838\u0007G\u0002\u0002\u2838\u2839\u0007Z\u0002\u0002",
+ "\u2839\u283a\u0007V\u0002\u0002\u283a\u06d0\u0003\u0002\u0002\u0002",
+ "\u283b\u283c\u0007R\u0002\u0002\u283c\u283d\u0007Q\u0002\u0002\u283d",
+ "\u283e\u0007N\u0002\u0002\u283e\u283f\u0007[\u0002\u0002\u283f\u2840",
+ "\u0007H\u0002\u0002\u2840\u2841\u0007T\u0002\u0002\u2841\u2842\u0007",
+ "Q\u0002\u0002\u2842\u2843\u0007O\u0002\u0002\u2843\u2844\u0007Y\u0002",
+ "\u0002\u2844\u2845\u0007M\u0002\u0002\u2845\u2846\u0007D\u0002\u0002",
+ "\u2846\u06d2\u0003\u0002\u0002\u0002\u2847\u2848\u0007R\u0002\u0002",
+ "\u2848\u2849\u0007Q\u0002\u0002\u2849\u284a\u0007N\u0002\u0002\u284a",
+ "\u284b\u0007[\u0002\u0002\u284b\u284c\u0007I\u0002\u0002\u284c\u284d",
+ "\u0007Q\u0002\u0002\u284d\u284e\u0007P\u0002\u0002\u284e\u284f\u0007",
+ "H\u0002\u0002\u284f\u2850\u0007T\u0002\u0002\u2850\u2851\u0007Q\u0002",
+ "\u0002\u2851\u2852\u0007O\u0002\u0002\u2852\u2853\u0007V\u0002\u0002",
+ "\u2853\u2854\u0007G\u0002\u0002\u2854\u2855\u0007Z\u0002\u0002\u2855",
+ "\u2856\u0007V\u0002\u0002\u2856\u06d4\u0003\u0002\u0002\u0002\u2857",
+ "\u2858\u0007R\u0002\u0002\u2858\u2859\u0007Q\u0002\u0002\u2859\u285a",
+ "\u0007N\u0002\u0002\u285a\u285b\u0007[\u0002\u0002\u285b\u285c\u0007",
+ "I\u0002\u0002\u285c\u285d\u0007Q\u0002\u0002\u285d\u285e\u0007P\u0002",
+ "\u0002\u285e\u285f\u0007H\u0002\u0002\u285f\u2860\u0007T\u0002\u0002",
+ "\u2860\u2861\u0007Q\u0002\u0002\u2861\u2862\u0007O\u0002\u0002\u2862",
+ "\u2863\u0007Y\u0002\u0002\u2863\u2864\u0007M\u0002\u0002\u2864\u2865",
+ "\u0007D\u0002\u0002\u2865\u06d6\u0003\u0002\u0002\u0002\u2866\u2867",
+ "\u0007R\u0002\u0002\u2867\u2868\u0007Q\u0002\u0002\u2868\u2869\u0007",
+ "Y\u0002\u0002\u2869\u06d8\u0003\u0002\u0002\u0002\u286a\u286b\u0007",
+ "R\u0002\u0002\u286b\u286c\u0007Q\u0002\u0002\u286c\u286d\u0007Y\u0002",
+ "\u0002\u286d\u286e\u0007G\u0002\u0002\u286e\u286f\u0007T\u0002\u0002",
+ "\u286f\u06da\u0003\u0002\u0002\u0002\u2870\u2871\u0007S\u0002\u0002",
+ "\u2871\u2872\u0007W\u0002\u0002\u2872\u2873\u0007Q\u0002\u0002\u2873",
+ "\u2874\u0007V\u0002\u0002\u2874\u2875\u0007G\u0002\u0002\u2875\u06dc",
+ "\u0003\u0002\u0002\u0002\u2876\u2877\u0007T\u0002\u0002\u2877\u2878",
+ "\u0007C\u0002\u0002\u2878\u2879\u0007F\u0002\u0002\u2879\u287a\u0007",
+ "K\u0002\u0002\u287a\u287b\u0007C\u0002\u0002\u287b\u287c\u0007P\u0002",
+ "\u0002\u287c\u287d\u0007U\u0002\u0002\u287d\u06de\u0003\u0002\u0002",
+ "\u0002\u287e\u287f\u0007T\u0002\u0002\u287f\u2880\u0007C\u0002\u0002",
+ "\u2880\u2881\u0007P\u0002\u0002\u2881\u2882\u0007F\u0002\u0002\u2882",
+ "\u06e0\u0003\u0002\u0002\u0002\u2883\u2884\u0007T\u0002\u0002\u2884",
+ "\u2885\u0007C\u0002\u0002\u2885\u2886\u0007P\u0002\u0002\u2886\u2887",
+ "\u0007F\u0002\u0002\u2887\u2888\u0007Q\u0002\u0002\u2888\u2889\u0007",
+ "O\u0002\u0002\u2889\u288a\u0007a\u0002\u0002\u288a\u288b\u0007D\u0002",
+ "\u0002\u288b\u288c\u0007[\u0002\u0002\u288c\u288d\u0007V\u0002\u0002",
+ "\u288d\u288e\u0007G\u0002\u0002\u288e\u288f\u0007U\u0002\u0002\u288f",
+ "\u06e2\u0003\u0002\u0002\u0002\u2890\u2891\u0007T\u0002\u0002\u2891",
+ "\u2892\u0007G\u0002\u0002\u2892\u2893\u0007N\u0002\u0002\u2893\u2894",
+ "\u0007G\u0002\u0002\u2894\u2895\u0007C\u0002\u0002\u2895\u2896\u0007",
+ "U\u0002\u0002\u2896\u2897\u0007G\u0002\u0002\u2897\u2898\u0007a\u0002",
+ "\u0002\u2898\u2899\u0007N\u0002\u0002\u2899\u289a\u0007Q\u0002\u0002",
+ "\u289a\u289b\u0007E\u0002\u0002\u289b\u289c\u0007M\u0002\u0002\u289c",
+ "\u06e4\u0003\u0002\u0002\u0002\u289d\u289e\u0007T\u0002\u0002\u289e",
+ "\u289f\u0007G\u0002\u0002\u289f\u28a0\u0007X\u0002\u0002\u28a0\u28a1",
+ "\u0007G\u0002\u0002\u28a1\u28a2\u0007T\u0002\u0002\u28a2\u28a3\u0007",
+ "U\u0002\u0002\u28a3\u28a4\u0007G\u0002\u0002\u28a4\u06e6\u0003\u0002",
+ "\u0002\u0002\u28a5\u28a6\u0007T\u0002\u0002\u28a6\u28a7\u0007Q\u0002",
+ "\u0002\u28a7\u28a8\u0007W\u0002\u0002\u28a8\u28a9\u0007P\u0002\u0002",
+ "\u28a9\u28aa\u0007F\u0002\u0002\u28aa\u06e8\u0003\u0002\u0002\u0002",
+ "\u28ab\u28ac\u0007T\u0002\u0002\u28ac\u28ad\u0007Q\u0002\u0002\u28ad",
+ "\u28ae\u0007Y\u0002\u0002\u28ae\u28af\u0007a\u0002\u0002\u28af\u28b0",
+ "\u0007E\u0002\u0002\u28b0\u28b1\u0007Q\u0002\u0002\u28b1\u28b2\u0007",
+ "W\u0002\u0002\u28b2\u28b3\u0007P\u0002\u0002\u28b3\u28b4\u0007V\u0002",
+ "\u0002\u28b4\u06ea\u0003\u0002\u0002\u0002\u28b5\u28b6\u0007T\u0002",
+ "\u0002\u28b6\u28b7\u0007R\u0002\u0002\u28b7\u28b8\u0007C\u0002\u0002",
+ "\u28b8\u28b9\u0007F\u0002\u0002\u28b9\u06ec\u0003\u0002\u0002\u0002",
+ "\u28ba\u28bb\u0007T\u0002\u0002\u28bb\u28bc\u0007V\u0002\u0002\u28bc",
+ "\u28bd\u0007T\u0002\u0002\u28bd\u28be\u0007K\u0002\u0002\u28be\u28bf",
+ "\u0007O\u0002\u0002\u28bf\u06ee\u0003\u0002\u0002\u0002\u28c0\u28c1",
+ "\u0007U\u0002\u0002\u28c1\u28c2\u0007G\u0002\u0002\u28c2\u28c3\u0007",
+ "E\u0002\u0002\u28c3\u28c4\u0007a\u0002\u0002\u28c4\u28c5\u0007V\u0002",
+ "\u0002\u28c5\u28c6\u0007Q\u0002\u0002\u28c6\u28c7\u0007a\u0002\u0002",
+ "\u28c7\u28c8\u0007V\u0002\u0002\u28c8\u28c9\u0007K\u0002\u0002\u28c9",
+ "\u28ca\u0007O\u0002\u0002\u28ca\u28cb\u0007G\u0002\u0002\u28cb\u06f0",
+ "\u0003\u0002\u0002\u0002\u28cc\u28cd\u0007U\u0002\u0002\u28cd\u28ce",
+ "\u0007G\u0002\u0002\u28ce\u28cf\u0007U\u0002\u0002\u28cf\u28d0\u0007",
+ "U\u0002\u0002\u28d0\u28d1\u0007K\u0002\u0002\u28d1\u28d2\u0007Q\u0002",
+ "\u0002\u28d2\u28d3\u0007P\u0002\u0002\u28d3\u28d4\u0007a\u0002\u0002",
+ "\u28d4\u28d5\u0007W\u0002\u0002\u28d5\u28d6\u0007U\u0002\u0002\u28d6",
+ "\u28d7\u0007G\u0002\u0002\u28d7\u28d8\u0007T\u0002\u0002\u28d8\u06f2",
+ "\u0003\u0002\u0002\u0002\u28d9\u28da\u0007U\u0002\u0002\u28da\u28db",
+ "\u0007J\u0002\u0002\u28db\u28dc\u0007C\u0002\u0002\u28dc\u06f4\u0003",
+ "\u0002\u0002\u0002\u28dd\u28de\u0007U\u0002\u0002\u28de\u28df\u0007",
+ "J\u0002\u0002\u28df\u28e0\u0007C\u0002\u0002\u28e0\u28e1\u00073\u0002",
+ "\u0002\u28e1\u06f6\u0003\u0002\u0002\u0002\u28e2\u28e3\u0007U\u0002",
+ "\u0002\u28e3\u28e4\u0007J\u0002\u0002\u28e4\u28e5\u0007C\u0002\u0002",
+ "\u28e5\u28e6\u00074\u0002\u0002\u28e6\u06f8\u0003\u0002\u0002\u0002",
+ "\u28e7\u28e8\u0007U\u0002\u0002\u28e8\u28e9\u0007E\u0002\u0002\u28e9",
+ "\u28ea\u0007J\u0002\u0002\u28ea\u28eb\u0007G\u0002\u0002\u28eb\u28ec",
+ "\u0007O\u0002\u0002\u28ec\u28ed\u0007C\u0002\u0002\u28ed\u28ee\u0007",
+ "a\u0002\u0002\u28ee\u28ef\u0007P\u0002\u0002\u28ef\u28f0\u0007C\u0002",
+ "\u0002\u28f0\u28f1\u0007O\u0002\u0002\u28f1\u28f2\u0007G\u0002\u0002",
+ "\u28f2\u06fa\u0003\u0002\u0002\u0002\u28f3\u28f4\u0007U\u0002\u0002",
+ "\u28f4\u28f5\u0007K\u0002\u0002\u28f5\u28f6\u0007I\u0002\u0002\u28f6",
+ "\u28f7\u0007P\u0002\u0002\u28f7\u06fc\u0003\u0002\u0002\u0002\u28f8",
+ "\u28f9\u0007U\u0002\u0002\u28f9\u28fa\u0007K\u0002\u0002\u28fa\u28fb",
+ "\u0007P\u0002\u0002\u28fb\u06fe\u0003\u0002\u0002\u0002\u28fc\u28fd",
+ "\u0007U\u0002\u0002\u28fd\u28fe\u0007N\u0002\u0002\u28fe\u28ff\u0007",
+ "G\u0002\u0002\u28ff\u2900\u0007G\u0002\u0002\u2900\u2901\u0007R\u0002",
+ "\u0002\u2901\u0700\u0003\u0002\u0002\u0002\u2902\u2903\u0007U\u0002",
+ "\u0002\u2903\u2904\u0007Q\u0002\u0002\u2904\u2905\u0007W\u0002\u0002",
+ "\u2905\u2906\u0007P\u0002\u0002\u2906\u2907\u0007F\u0002\u0002\u2907",
+ "\u2908\u0007G\u0002\u0002\u2908\u2909\u0007Z\u0002\u0002\u2909\u0702",
+ "\u0003\u0002\u0002\u0002\u290a\u290b\u0007U\u0002\u0002\u290b\u290c",
+ "\u0007S\u0002\u0002\u290c\u290d\u0007N\u0002\u0002\u290d\u290e\u0007",
+ "a\u0002\u0002\u290e\u290f\u0007V\u0002\u0002\u290f\u2910\u0007J\u0002",
+ "\u0002\u2910\u2911\u0007T\u0002\u0002\u2911\u2912\u0007G\u0002\u0002",
+ "\u2912\u2913\u0007C\u0002\u0002\u2913\u2914\u0007F\u0002\u0002\u2914",
+ "\u2915\u0007a\u0002\u0002\u2915\u2916\u0007Y\u0002\u0002\u2916\u2917",
+ "\u0007C\u0002\u0002\u2917\u2918\u0007K\u0002\u0002\u2918\u2919\u0007",
+ "V\u0002\u0002\u2919\u291a\u0007a\u0002\u0002\u291a\u291b\u0007C\u0002",
+ "\u0002\u291b\u291c\u0007H\u0002\u0002\u291c\u291d\u0007V\u0002\u0002",
+ "\u291d\u291e\u0007G\u0002\u0002\u291e\u291f\u0007T\u0002\u0002\u291f",
+ "\u2920\u0007a\u0002\u0002\u2920\u2921\u0007I\u0002\u0002\u2921\u2922",
+ "\u0007V\u0002\u0002\u2922\u2923\u0007K\u0002\u0002\u2923\u2924\u0007",
+ "F\u0002\u0002\u2924\u2925\u0007U\u0002\u0002\u2925\u0704\u0003\u0002",
+ "\u0002\u0002\u2926\u2927\u0007U\u0002\u0002\u2927\u2928\u0007S\u0002",
+ "\u0002\u2928\u2929\u0007T\u0002\u0002\u2929\u292a\u0007V\u0002\u0002",
+ "\u292a\u0706\u0003\u0002\u0002\u0002\u292b\u292c\u0007U\u0002\u0002",
+ "\u292c\u292d\u0007T\u0002\u0002\u292d\u292e\u0007K\u0002\u0002\u292e",
+ "\u292f\u0007F\u0002\u0002\u292f\u0708\u0003\u0002\u0002\u0002\u2930",
+ "\u2931\u0007U\u0002\u0002\u2931\u2932\u0007V\u0002\u0002\u2932\u2933",
+ "\u0007C\u0002\u0002\u2933\u2934\u0007T\u0002\u0002\u2934\u2935\u0007",
+ "V\u0002\u0002\u2935\u2936\u0007R\u0002\u0002\u2936\u2937\u0007Q\u0002",
+ "\u0002\u2937\u2938\u0007K\u0002\u0002\u2938\u2939\u0007P\u0002\u0002",
+ "\u2939\u293a\u0007V\u0002\u0002\u293a\u070a\u0003\u0002\u0002\u0002",
+ "\u293b\u293c\u0007U\u0002\u0002\u293c\u293d\u0007V\u0002\u0002\u293d",
+ "\u293e\u0007T\u0002\u0002\u293e\u293f\u0007E\u0002\u0002\u293f\u2940",
+ "\u0007O\u0002\u0002\u2940\u2941\u0007R\u0002\u0002\u2941\u070c\u0003",
+ "\u0002\u0002\u0002\u2942\u2943\u0007U\u0002\u0002\u2943\u2944\u0007",
+ "V\u0002\u0002\u2944\u2945\u0007T\u0002\u0002\u2945\u2946\u0007a\u0002",
+ "\u0002\u2946\u2947\u0007V\u0002\u0002\u2947\u2948\u0007Q\u0002\u0002",
+ "\u2948\u2949\u0007a\u0002\u0002\u2949\u294a\u0007F\u0002\u0002\u294a",
+ "\u294b\u0007C\u0002\u0002\u294b\u294c\u0007V\u0002\u0002\u294c\u294d",
+ "\u0007G\u0002\u0002\u294d\u070e\u0003\u0002\u0002\u0002\u294e\u294f",
+ "\u0007U\u0002\u0002\u294f\u2950\u0007V\u0002\u0002\u2950\u2951\u0007",
+ "a\u0002\u0002\u2951\u2952\u0007C\u0002\u0002\u2952\u2953\u0007T\u0002",
+ "\u0002\u2953\u2954\u0007G\u0002\u0002\u2954\u2955\u0007C\u0002\u0002",
+ "\u2955\u0710\u0003\u0002\u0002\u0002\u2956\u2957\u0007U\u0002\u0002",
+ "\u2957\u2958\u0007V\u0002\u0002\u2958\u2959\u0007a\u0002\u0002\u2959",
+ "\u295a\u0007C\u0002\u0002\u295a\u295b\u0007U\u0002\u0002\u295b\u295c",
+ "\u0007D\u0002\u0002\u295c\u295d\u0007K\u0002\u0002\u295d\u295e\u0007",
+ "P\u0002\u0002\u295e\u295f\u0007C\u0002\u0002\u295f\u2960\u0007T\u0002",
+ "\u0002\u2960\u2961\u0007[\u0002\u0002\u2961\u0712\u0003\u0002\u0002",
+ "\u0002\u2962\u2963\u0007U\u0002\u0002\u2963\u2964\u0007V\u0002\u0002",
+ "\u2964\u2965\u0007a\u0002\u0002\u2965\u2966\u0007C\u0002\u0002\u2966",
+ "\u2967\u0007U\u0002\u0002\u2967\u2968\u0007V\u0002\u0002\u2968\u2969",
+ "\u0007G\u0002\u0002\u2969\u296a\u0007Z\u0002\u0002\u296a\u296b\u0007",
+ "V\u0002\u0002\u296b\u0714\u0003\u0002\u0002\u0002\u296c\u296d\u0007",
+ "U\u0002\u0002\u296d\u296e\u0007V\u0002\u0002\u296e\u296f\u0007a\u0002",
+ "\u0002\u296f\u2970\u0007C\u0002\u0002\u2970\u2971\u0007U\u0002\u0002",
+ "\u2971\u2972\u0007Y\u0002\u0002\u2972\u2973\u0007M\u0002\u0002\u2973",
+ "\u2974\u0007D\u0002\u0002\u2974\u0716\u0003\u0002\u0002\u0002\u2975",
+ "\u2976\u0007U\u0002\u0002\u2976\u2977\u0007V\u0002\u0002\u2977\u2978",
+ "\u0007a\u0002\u0002\u2978\u2979\u0007C\u0002\u0002\u2979\u297a\u0007",
+ "U\u0002\u0002\u297a\u297b\u0007Y\u0002\u0002\u297b\u297c\u0007M\u0002",
+ "\u0002\u297c\u297d\u0007V\u0002\u0002\u297d\u0718\u0003\u0002\u0002",
+ "\u0002\u297e\u297f\u0007U\u0002\u0002\u297f\u2980\u0007V\u0002\u0002",
+ "\u2980\u2981\u0007a\u0002\u0002\u2981\u2982\u0007D\u0002\u0002\u2982",
+ "\u2983\u0007W\u0002\u0002\u2983\u2984\u0007H\u0002\u0002\u2984\u2985",
+ "\u0007H\u0002\u0002\u2985\u2986\u0007G\u0002\u0002\u2986\u2987\u0007",
+ "T\u0002\u0002\u2987\u071a\u0003\u0002\u0002\u0002\u2988\u2989\u0007",
+ "U\u0002\u0002\u2989\u298a\u0007V\u0002\u0002\u298a\u298b\u0007a\u0002",
+ "\u0002\u298b\u298c\u0007E\u0002\u0002\u298c\u298d\u0007G\u0002\u0002",
+ "\u298d\u298e\u0007P\u0002\u0002\u298e\u298f\u0007V\u0002\u0002\u298f",
+ "\u2990\u0007T\u0002\u0002\u2990\u2991\u0007Q\u0002\u0002\u2991\u2992",
+ "\u0007K\u0002\u0002\u2992\u2993\u0007F\u0002\u0002\u2993\u071c\u0003",
+ "\u0002\u0002\u0002\u2994\u2995\u0007U\u0002\u0002\u2995\u2996\u0007",
+ "V\u0002\u0002\u2996\u2997\u0007a\u0002\u0002\u2997\u2998\u0007E\u0002",
+ "\u0002\u2998\u2999\u0007Q\u0002\u0002\u2999\u299a\u0007P\u0002\u0002",
+ "\u299a\u299b\u0007V\u0002\u0002\u299b\u299c\u0007C\u0002\u0002\u299c",
+ "\u299d\u0007K\u0002\u0002\u299d\u299e\u0007P\u0002\u0002\u299e\u299f",
+ "\u0007U\u0002\u0002\u299f\u071e\u0003\u0002\u0002\u0002\u29a0\u29a1",
+ "\u0007U\u0002\u0002\u29a1\u29a2\u0007V\u0002\u0002\u29a2\u29a3\u0007",
+ "a\u0002\u0002\u29a3\u29a4\u0007E\u0002\u0002\u29a4\u29a5\u0007T\u0002",
+ "\u0002\u29a5\u29a6\u0007Q\u0002\u0002\u29a6\u29a7\u0007U\u0002\u0002",
+ "\u29a7\u29a8\u0007U\u0002\u0002\u29a8\u29a9\u0007G\u0002\u0002\u29a9",
+ "\u29aa\u0007U\u0002\u0002\u29aa\u0720\u0003\u0002\u0002\u0002\u29ab",
+ "\u29ac\u0007U\u0002\u0002\u29ac\u29ad\u0007V\u0002\u0002\u29ad\u29ae",
+ "\u0007a\u0002\u0002\u29ae\u29af\u0007F\u0002\u0002\u29af\u29b0\u0007",
+ "K\u0002\u0002\u29b0\u29b1\u0007H\u0002\u0002\u29b1\u29b2\u0007H\u0002",
+ "\u0002\u29b2\u29b3\u0007G\u0002\u0002\u29b3\u29b4\u0007T\u0002\u0002",
+ "\u29b4\u29b5\u0007G\u0002\u0002\u29b5\u29b6\u0007P\u0002\u0002\u29b6",
+ "\u29b7\u0007E\u0002\u0002\u29b7\u29b8\u0007G\u0002\u0002\u29b8\u0722",
+ "\u0003\u0002\u0002\u0002\u29b9\u29ba\u0007U\u0002\u0002\u29ba\u29bb",
+ "\u0007V\u0002\u0002\u29bb\u29bc\u0007a\u0002\u0002\u29bc\u29bd\u0007",
+ "F\u0002\u0002\u29bd\u29be\u0007K\u0002\u0002\u29be\u29bf\u0007O\u0002",
+ "\u0002\u29bf\u29c0\u0007G\u0002\u0002\u29c0\u29c1\u0007P\u0002\u0002",
+ "\u29c1\u29c2\u0007U\u0002\u0002\u29c2\u29c3\u0007K\u0002\u0002\u29c3",
+ "\u29c4\u0007Q\u0002\u0002\u29c4\u29c5\u0007P\u0002\u0002\u29c5\u0724",
+ "\u0003\u0002\u0002\u0002\u29c6\u29c7\u0007U\u0002\u0002\u29c7\u29c8",
+ "\u0007V\u0002\u0002\u29c8\u29c9\u0007a\u0002\u0002\u29c9\u29ca\u0007",
+ "F\u0002\u0002\u29ca\u29cb\u0007K\u0002\u0002\u29cb\u29cc\u0007U\u0002",
+ "\u0002\u29cc\u29cd\u0007L\u0002\u0002\u29cd\u29ce\u0007Q\u0002\u0002",
+ "\u29ce\u29cf\u0007K\u0002\u0002\u29cf\u29d0\u0007P\u0002\u0002\u29d0",
+ "\u29d1\u0007V\u0002\u0002\u29d1\u0726\u0003\u0002\u0002\u0002\u29d2",
+ "\u29d3\u0007U\u0002\u0002\u29d3\u29d4\u0007V\u0002\u0002\u29d4\u29d5",
+ "\u0007a\u0002\u0002\u29d5\u29d6\u0007F\u0002\u0002\u29d6\u29d7\u0007",
+ "K\u0002\u0002\u29d7\u29d8\u0007U\u0002\u0002\u29d8\u29d9\u0007V\u0002",
+ "\u0002\u29d9\u29da\u0007C\u0002\u0002\u29da\u29db\u0007P\u0002\u0002",
+ "\u29db\u29dc\u0007E\u0002\u0002\u29dc\u29dd\u0007G\u0002\u0002\u29dd",
+ "\u0728\u0003\u0002\u0002\u0002\u29de\u29df\u0007U\u0002\u0002\u29df",
+ "\u29e0\u0007V\u0002\u0002\u29e0\u29e1\u0007a\u0002\u0002\u29e1\u29e2",
+ "\u0007G\u0002\u0002\u29e2\u29e3\u0007P\u0002\u0002\u29e3\u29e4\u0007",
+ "F\u0002\u0002\u29e4\u29e5\u0007R\u0002\u0002\u29e5\u29e6\u0007Q\u0002",
+ "\u0002\u29e6\u29e7\u0007K\u0002\u0002\u29e7\u29e8\u0007P\u0002\u0002",
+ "\u29e8\u29e9\u0007V\u0002\u0002\u29e9\u072a\u0003\u0002\u0002\u0002",
+ "\u29ea\u29eb\u0007U\u0002\u0002\u29eb\u29ec\u0007V\u0002\u0002\u29ec",
+ "\u29ed\u0007a\u0002\u0002\u29ed\u29ee\u0007G\u0002\u0002\u29ee\u29ef",
+ "\u0007P\u0002\u0002\u29ef\u29f0\u0007X\u0002\u0002\u29f0\u29f1\u0007",
+ "G\u0002\u0002\u29f1\u29f2\u0007N\u0002\u0002\u29f2\u29f3\u0007Q\u0002",
+ "\u0002\u29f3\u29f4\u0007R\u0002\u0002\u29f4\u29f5\u0007G\u0002\u0002",
+ "\u29f5\u072c\u0003\u0002\u0002\u0002\u29f6\u29f7\u0007U\u0002\u0002",
+ "\u29f7\u29f8\u0007V\u0002\u0002\u29f8\u29f9\u0007a\u0002\u0002\u29f9",
+ "\u29fa\u0007G\u0002\u0002\u29fa\u29fb\u0007S\u0002\u0002\u29fb\u29fc",
+ "\u0007W\u0002\u0002\u29fc\u29fd\u0007C\u0002\u0002\u29fd\u29fe\u0007",
+ "N\u0002\u0002\u29fe\u29ff\u0007U\u0002\u0002\u29ff\u072e\u0003\u0002",
+ "\u0002\u0002\u2a00\u2a01\u0007U\u0002\u0002\u2a01\u2a02\u0007V\u0002",
+ "\u0002\u2a02\u2a03\u0007a\u0002\u0002\u2a03\u2a04\u0007G\u0002\u0002",
+ "\u2a04\u2a05\u0007Z\u0002\u0002\u2a05\u2a06\u0007V\u0002\u0002\u2a06",
+ "\u2a07\u0007G\u0002\u0002\u2a07\u2a08\u0007T\u0002\u0002\u2a08\u2a09",
+ "\u0007K\u0002\u0002\u2a09\u2a0a\u0007Q\u0002\u0002\u2a0a\u2a0b\u0007",
+ "T\u0002\u0002\u2a0b\u2a0c\u0007T\u0002\u0002\u2a0c\u2a0d\u0007K\u0002",
+ "\u0002\u2a0d\u2a0e\u0007P\u0002\u0002\u2a0e\u2a0f\u0007I\u0002\u0002",
+ "\u2a0f\u0730\u0003\u0002\u0002\u0002\u2a10\u2a11\u0007U\u0002\u0002",
+ "\u2a11\u2a12\u0007V\u0002\u0002\u2a12\u2a13\u0007a\u0002\u0002\u2a13",
+ "\u2a14\u0007I\u0002\u0002\u2a14\u2a15\u0007G\u0002\u0002\u2a15\u2a16",
+ "\u0007Q\u0002\u0002\u2a16\u2a17\u0007O\u0002\u0002\u2a17\u2a18\u0007",
+ "E\u0002\u0002\u2a18\u2a19\u0007Q\u0002\u0002\u2a19\u2a1a\u0007N\u0002",
+ "\u0002\u2a1a\u2a1b\u0007N\u0002\u0002\u2a1b\u2a1c\u0007H\u0002\u0002",
+ "\u2a1c\u2a1d\u0007T\u0002\u0002\u2a1d\u2a1e\u0007Q\u0002\u0002\u2a1e",
+ "\u2a1f\u0007O\u0002\u0002\u2a1f\u2a20\u0007V\u0002\u0002\u2a20\u2a21",
+ "\u0007G\u0002\u0002\u2a21\u2a22\u0007Z\u0002\u0002\u2a22\u2a23\u0007",
+ "V\u0002\u0002\u2a23\u0732\u0003\u0002\u0002\u0002\u2a24\u2a25\u0007",
+ "U\u0002\u0002\u2a25\u2a26\u0007V\u0002\u0002\u2a26\u2a27\u0007a\u0002",
+ "\u0002\u2a27\u2a28\u0007I\u0002\u0002\u2a28\u2a29\u0007G\u0002\u0002",
+ "\u2a29\u2a2a\u0007Q\u0002\u0002\u2a2a\u2a2b\u0007O\u0002\u0002\u2a2b",
+ "\u2a2c\u0007E\u0002\u0002\u2a2c\u2a2d\u0007Q\u0002\u0002\u2a2d\u2a2e",
+ "\u0007N\u0002\u0002\u2a2e\u2a2f\u0007N\u0002\u0002\u2a2f\u2a30\u0007",
+ "H\u0002\u0002\u2a30\u2a31\u0007T\u0002\u0002\u2a31\u2a32\u0007Q\u0002",
+ "\u0002\u2a32\u2a33\u0007O\u0002\u0002\u2a33\u2a34\u0007V\u0002\u0002",
+ "\u2a34\u2a35\u0007Z\u0002\u0002\u2a35\u2a36\u0007V\u0002\u0002\u2a36",
+ "\u0734\u0003\u0002\u0002\u0002\u2a37\u2a38\u0007U\u0002\u0002\u2a38",
+ "\u2a39\u0007V\u0002\u0002\u2a39\u2a3a\u0007a\u0002\u0002\u2a3a\u2a3b",
+ "\u0007I\u0002\u0002\u2a3b\u2a3c\u0007G\u0002\u0002\u2a3c\u2a3d\u0007",
+ "Q\u0002\u0002\u2a3d\u2a3e\u0007O\u0002\u0002\u2a3e\u2a3f\u0007E\u0002",
+ "\u0002\u2a3f\u2a40\u0007Q\u0002\u0002\u2a40\u2a41\u0007N\u0002\u0002",
+ "\u2a41\u2a42\u0007N\u0002\u0002\u2a42\u2a43\u0007H\u0002\u0002\u2a43",
+ "\u2a44\u0007T\u0002\u0002\u2a44\u2a45\u0007Q\u0002\u0002\u2a45\u2a46",
+ "\u0007O\u0002\u0002\u2a46\u2a47\u0007Y\u0002\u0002\u2a47\u2a48\u0007",
+ "M\u0002\u0002\u2a48\u2a49\u0007D\u0002\u0002\u2a49\u0736\u0003\u0002",
+ "\u0002\u0002\u2a4a\u2a4b\u0007U\u0002\u0002\u2a4b\u2a4c\u0007V\u0002",
+ "\u0002\u2a4c\u2a4d\u0007a\u0002\u0002\u2a4d\u2a4e\u0007I\u0002\u0002",
+ "\u2a4e\u2a4f\u0007G\u0002\u0002\u2a4f\u2a50\u0007Q\u0002\u0002\u2a50",
+ "\u2a51\u0007O\u0002\u0002\u2a51\u2a52\u0007G\u0002\u0002\u2a52\u2a53",
+ "\u0007V\u0002\u0002\u2a53\u2a54\u0007T\u0002\u0002\u2a54\u2a55\u0007",
+ "[\u0002\u0002\u2a55\u2a56\u0007E\u0002\u0002\u2a56\u2a57\u0007Q\u0002",
+ "\u0002\u2a57\u2a58\u0007N\u0002\u0002\u2a58\u2a59\u0007N\u0002\u0002",
+ "\u2a59\u2a5a\u0007G\u0002\u0002\u2a5a\u2a5b\u0007E\u0002\u0002\u2a5b",
+ "\u2a5c\u0007V\u0002\u0002\u2a5c\u2a5d\u0007K\u0002\u0002\u2a5d\u2a5e",
+ "\u0007Q\u0002\u0002\u2a5e\u2a5f\u0007P\u0002\u0002\u2a5f\u2a60\u0007",
+ "H\u0002\u0002\u2a60\u2a61\u0007T\u0002\u0002\u2a61\u2a62\u0007Q\u0002",
+ "\u0002\u2a62\u2a63\u0007O\u0002\u0002\u2a63\u2a64\u0007V\u0002\u0002",
+ "\u2a64\u2a65\u0007G\u0002\u0002\u2a65\u2a66\u0007Z\u0002\u0002\u2a66",
+ "\u2a67\u0007V\u0002\u0002\u2a67\u0738\u0003\u0002\u0002\u0002\u2a68",
+ "\u2a69\u0007U\u0002\u0002\u2a69\u2a6a\u0007V\u0002\u0002\u2a6a\u2a6b",
+ "\u0007a\u0002\u0002\u2a6b\u2a6c\u0007I\u0002\u0002\u2a6c\u2a6d\u0007",
+ "G\u0002\u0002\u2a6d\u2a6e\u0007Q\u0002\u0002\u2a6e\u2a6f\u0007O\u0002",
+ "\u0002\u2a6f\u2a70\u0007G\u0002\u0002\u2a70\u2a71\u0007V\u0002\u0002",
+ "\u2a71\u2a72\u0007T\u0002\u0002\u2a72\u2a73\u0007[\u0002\u0002\u2a73",
+ "\u2a74\u0007E\u0002\u0002\u2a74\u2a75\u0007Q\u0002\u0002\u2a75\u2a76",
+ "\u0007N\u0002\u0002\u2a76\u2a77\u0007N\u0002\u0002\u2a77\u2a78\u0007",
+ "G\u0002\u0002\u2a78\u2a79\u0007E\u0002\u0002\u2a79\u2a7a\u0007V\u0002",
+ "\u0002\u2a7a\u2a7b\u0007K\u0002\u0002\u2a7b\u2a7c\u0007Q\u0002\u0002",
+ "\u2a7c\u2a7d\u0007P\u0002\u0002\u2a7d\u2a7e\u0007H\u0002\u0002\u2a7e",
+ "\u2a7f\u0007T\u0002\u0002\u2a7f\u2a80\u0007Q\u0002\u0002\u2a80\u2a81",
+ "\u0007O\u0002\u0002\u2a81\u2a82\u0007Y\u0002\u0002\u2a82\u2a83\u0007",
+ "M\u0002\u0002\u2a83\u2a84\u0007D\u0002\u0002\u2a84\u073a\u0003\u0002",
+ "\u0002\u0002\u2a85\u2a86\u0007U\u0002\u0002\u2a86\u2a87\u0007V\u0002",
+ "\u0002\u2a87\u2a88\u0007a\u0002\u0002\u2a88\u2a89\u0007I\u0002\u0002",
+ "\u2a89\u2a8a\u0007G\u0002\u0002\u2a8a\u2a8b\u0007Q\u0002\u0002\u2a8b",
+ "\u2a8c\u0007O\u0002\u0002\u2a8c\u2a8d\u0007G\u0002\u0002\u2a8d\u2a8e",
+ "\u0007V\u0002\u0002\u2a8e\u2a8f\u0007T\u0002\u0002\u2a8f\u2a90\u0007",
+ "[\u0002\u0002\u2a90\u2a91\u0007H\u0002\u0002\u2a91\u2a92\u0007T\u0002",
+ "\u0002\u2a92\u2a93\u0007Q\u0002\u0002\u2a93\u2a94\u0007O\u0002\u0002",
+ "\u2a94\u2a95\u0007V\u0002\u0002\u2a95\u2a96\u0007G\u0002\u0002\u2a96",
+ "\u2a97\u0007Z\u0002\u0002\u2a97\u2a98\u0007V\u0002\u0002\u2a98\u073c",
+ "\u0003\u0002\u0002\u0002\u2a99\u2a9a\u0007U\u0002\u0002\u2a9a\u2a9b",
+ "\u0007V\u0002\u0002\u2a9b\u2a9c\u0007a\u0002\u0002\u2a9c\u2a9d\u0007",
+ "I\u0002\u0002\u2a9d\u2a9e\u0007G\u0002\u0002\u2a9e\u2a9f\u0007Q\u0002",
+ "\u0002\u2a9f\u2aa0\u0007O\u0002\u0002\u2aa0\u2aa1\u0007G\u0002\u0002",
+ "\u2aa1\u2aa2\u0007V\u0002\u0002\u2aa2\u2aa3\u0007T\u0002\u0002\u2aa3",
+ "\u2aa4\u0007[\u0002\u0002\u2aa4\u2aa5\u0007H\u0002\u0002\u2aa5\u2aa6",
+ "\u0007T\u0002\u0002\u2aa6\u2aa7\u0007Q\u0002\u0002\u2aa7\u2aa8\u0007",
+ "O\u0002\u0002\u2aa8\u2aa9\u0007Y\u0002\u0002\u2aa9\u2aaa\u0007M\u0002",
+ "\u0002\u2aaa\u2aab\u0007D\u0002\u0002\u2aab\u073e\u0003\u0002\u0002",
+ "\u0002\u2aac\u2aad\u0007U\u0002\u0002\u2aad\u2aae\u0007V\u0002\u0002",
+ "\u2aae\u2aaf\u0007a\u0002\u0002\u2aaf\u2ab0\u0007I\u0002\u0002\u2ab0",
+ "\u2ab1\u0007G\u0002\u0002\u2ab1\u2ab2\u0007Q\u0002\u0002\u2ab2\u2ab3",
+ "\u0007O\u0002\u0002\u2ab3\u2ab4\u0007G\u0002\u0002\u2ab4\u2ab5\u0007",
+ "V\u0002\u0002\u2ab5\u2ab6\u0007T\u0002\u0002\u2ab6\u2ab7\u0007[\u0002",
+ "\u0002\u2ab7\u2ab8\u0007P\u0002\u0002\u2ab8\u0740\u0003\u0002\u0002",
+ "\u0002\u2ab9\u2aba\u0007U\u0002\u0002\u2aba\u2abb\u0007V\u0002\u0002",
+ "\u2abb\u2abc\u0007a\u0002\u0002\u2abc\u2abd\u0007I\u0002\u0002\u2abd",
+ "\u2abe\u0007G\u0002\u0002\u2abe\u2abf\u0007Q\u0002\u0002\u2abf\u2ac0",
+ "\u0007O\u0002\u0002\u2ac0\u2ac1\u0007G\u0002\u0002\u2ac1\u2ac2\u0007",
+ "V\u0002\u0002\u2ac2\u2ac3\u0007T\u0002\u0002\u2ac3\u2ac4\u0007[\u0002",
+ "\u0002\u2ac4\u2ac5\u0007V\u0002\u0002\u2ac5\u2ac6\u0007[\u0002\u0002",
+ "\u2ac6\u2ac7\u0007R\u0002\u0002\u2ac7\u2ac8\u0007G\u0002\u0002\u2ac8",
+ "\u0742\u0003\u0002\u0002\u0002\u2ac9\u2aca\u0007U\u0002\u0002\u2aca",
+ "\u2acb\u0007V\u0002\u0002\u2acb\u2acc\u0007a\u0002\u0002\u2acc\u2acd",
+ "\u0007I\u0002\u0002\u2acd\u2ace\u0007G\u0002\u0002\u2ace\u2acf\u0007",
+ "Q\u0002\u0002\u2acf\u2ad0\u0007O\u0002\u0002\u2ad0\u2ad1\u0007H\u0002",
+ "\u0002\u2ad1\u2ad2\u0007T\u0002\u0002\u2ad2\u2ad3\u0007Q\u0002\u0002",
+ "\u2ad3\u2ad4\u0007O\u0002\u0002\u2ad4\u2ad5\u0007V\u0002\u0002\u2ad5",
+ "\u2ad6\u0007G\u0002\u0002\u2ad6\u2ad7\u0007Z\u0002\u0002\u2ad7\u2ad8",
+ "\u0007V\u0002\u0002\u2ad8\u0744\u0003\u0002\u0002\u0002\u2ad9\u2ada",
+ "\u0007U\u0002\u0002\u2ada\u2adb\u0007V\u0002\u0002\u2adb\u2adc\u0007",
+ "a\u0002\u0002\u2adc\u2add\u0007I\u0002\u0002\u2add\u2ade\u0007G\u0002",
+ "\u0002\u2ade\u2adf\u0007Q\u0002\u0002\u2adf\u2ae0\u0007O\u0002\u0002",
+ "\u2ae0\u2ae1\u0007H\u0002\u0002\u2ae1\u2ae2\u0007T\u0002\u0002\u2ae2",
+ "\u2ae3\u0007Q\u0002\u0002\u2ae3\u2ae4\u0007O\u0002\u0002\u2ae4\u2ae5",
+ "\u0007Y\u0002\u0002\u2ae5\u2ae6\u0007M\u0002\u0002\u2ae6\u2ae7\u0007",
+ "D\u0002\u0002\u2ae7\u0746\u0003\u0002\u0002\u0002\u2ae8\u2ae9\u0007",
+ "U\u0002\u0002\u2ae9\u2aea\u0007V\u0002\u0002\u2aea\u2aeb\u0007a\u0002",
+ "\u0002\u2aeb\u2aec\u0007K\u0002\u0002\u2aec\u2aed\u0007P\u0002\u0002",
+ "\u2aed\u2aee\u0007V\u0002\u0002\u2aee\u2aef\u0007G\u0002\u0002\u2aef",
+ "\u2af0\u0007T\u0002\u0002\u2af0\u2af1\u0007K\u0002\u0002\u2af1\u2af2",
+ "\u0007Q\u0002\u0002\u2af2\u2af3\u0007T\u0002\u0002\u2af3\u2af4\u0007",
+ "T\u0002\u0002\u2af4\u2af5\u0007K\u0002\u0002\u2af5\u2af6\u0007P\u0002",
+ "\u0002\u2af6\u2af7\u0007I\u0002\u0002\u2af7\u2af8\u0007P\u0002\u0002",
+ "\u2af8\u0748\u0003\u0002\u0002\u0002\u2af9\u2afa\u0007U\u0002\u0002",
+ "\u2afa\u2afb\u0007V\u0002\u0002\u2afb\u2afc\u0007a\u0002\u0002\u2afc",
+ "\u2afd\u0007K\u0002\u0002\u2afd\u2afe\u0007P\u0002\u0002\u2afe\u2aff",
+ "\u0007V\u0002\u0002\u2aff\u2b00\u0007G\u0002\u0002\u2b00\u2b01\u0007",
+ "T\u0002\u0002\u2b01\u2b02\u0007U\u0002\u0002\u2b02\u2b03\u0007G\u0002",
+ "\u0002\u2b03\u2b04\u0007E\u0002\u0002\u2b04\u2b05\u0007V\u0002\u0002",
+ "\u2b05\u2b06\u0007K\u0002\u0002\u2b06\u2b07\u0007Q\u0002\u0002\u2b07",
+ "\u2b08\u0007P\u0002\u0002\u2b08\u074a\u0003\u0002\u0002\u0002\u2b09",
+ "\u2b0a\u0007U\u0002\u0002\u2b0a\u2b0b\u0007V\u0002\u0002\u2b0b\u2b0c",
+ "\u0007a\u0002\u0002\u2b0c\u2b0d\u0007K\u0002\u0002\u2b0d\u2b0e\u0007",
+ "P\u0002\u0002\u2b0e\u2b0f\u0007V\u0002\u0002\u2b0f\u2b10\u0007G\u0002",
+ "\u0002\u2b10\u2b11\u0007T\u0002\u0002\u2b11\u2b12\u0007U\u0002\u0002",
+ "\u2b12\u2b13\u0007G\u0002\u0002\u2b13\u2b14\u0007E\u0002\u0002\u2b14",
+ "\u2b15\u0007V\u0002\u0002\u2b15\u2b16\u0007U\u0002\u0002\u2b16\u074c",
+ "\u0003\u0002\u0002\u0002\u2b17\u2b18\u0007U\u0002\u0002\u2b18\u2b19",
+ "\u0007V\u0002\u0002\u2b19\u2b1a\u0007a\u0002\u0002\u2b1a\u2b1b\u0007",
+ "K\u0002\u0002\u2b1b\u2b1c\u0007U\u0002\u0002\u2b1c\u2b1d\u0007E\u0002",
+ "\u0002\u2b1d\u2b1e\u0007N\u0002\u0002\u2b1e\u2b1f\u0007Q\u0002\u0002",
+ "\u2b1f\u2b20\u0007U\u0002\u0002\u2b20\u2b21\u0007G\u0002\u0002\u2b21",
+ "\u2b22\u0007F\u0002\u0002\u2b22\u074e\u0003\u0002\u0002\u0002\u2b23",
+ "\u2b24\u0007U\u0002\u0002\u2b24\u2b25\u0007V\u0002\u0002\u2b25\u2b26",
+ "\u0007a\u0002\u0002\u2b26\u2b27\u0007K\u0002\u0002\u2b27\u2b28\u0007",
+ "U\u0002\u0002\u2b28\u2b29\u0007G\u0002\u0002\u2b29\u2b2a\u0007O\u0002",
+ "\u0002\u2b2a\u2b2b\u0007R\u0002\u0002\u2b2b\u2b2c\u0007V\u0002\u0002",
+ "\u2b2c\u2b2d\u0007[\u0002\u0002\u2b2d\u0750\u0003\u0002\u0002\u0002",
+ "\u2b2e\u2b2f\u0007U\u0002\u0002\u2b2f\u2b30\u0007V\u0002\u0002\u2b30",
+ "\u2b31\u0007a\u0002\u0002\u2b31\u2b32\u0007K\u0002\u0002\u2b32\u2b33",
+ "\u0007U\u0002\u0002\u2b33\u2b34\u0007U\u0002\u0002\u2b34\u2b35\u0007",
+ "K\u0002\u0002\u2b35\u2b36\u0007O\u0002\u0002\u2b36\u2b37\u0007R\u0002",
+ "\u0002\u2b37\u2b38\u0007N\u0002\u0002\u2b38\u2b39\u0007G\u0002\u0002",
+ "\u2b39\u0752\u0003\u0002\u0002\u0002\u2b3a\u2b3b\u0007U\u0002\u0002",
+ "\u2b3b\u2b3c\u0007V\u0002\u0002\u2b3c\u2b3d\u0007a\u0002\u0002\u2b3d",
+ "\u2b3e\u0007N\u0002\u0002\u2b3e\u2b3f\u0007K\u0002\u0002\u2b3f\u2b40",
+ "\u0007P\u0002\u0002\u2b40\u2b41\u0007G\u0002\u0002\u2b41\u2b42\u0007",
+ "H\u0002\u0002\u2b42\u2b43\u0007T\u0002\u0002\u2b43\u2b44\u0007Q\u0002",
+ "\u0002\u2b44\u2b45\u0007O\u0002\u0002\u2b45\u2b46\u0007V\u0002\u0002",
+ "\u2b46\u2b47\u0007G\u0002\u0002\u2b47\u2b48\u0007Z\u0002\u0002\u2b48",
+ "\u2b49\u0007V\u0002\u0002\u2b49\u0754\u0003\u0002\u0002\u0002\u2b4a",
+ "\u2b4b\u0007U\u0002\u0002\u2b4b\u2b4c\u0007V\u0002\u0002\u2b4c\u2b4d",
+ "\u0007a\u0002\u0002\u2b4d\u2b4e\u0007N\u0002\u0002\u2b4e\u2b4f\u0007",
+ "K\u0002\u0002\u2b4f\u2b50\u0007P\u0002\u0002\u2b50\u2b51\u0007G\u0002",
+ "\u0002\u2b51\u2b52\u0007H\u0002\u0002\u2b52\u2b53\u0007T\u0002\u0002",
+ "\u2b53\u2b54\u0007Q\u0002\u0002\u2b54\u2b55\u0007O\u0002\u0002\u2b55",
+ "\u2b56\u0007Y\u0002\u0002\u2b56\u2b57\u0007M\u0002\u0002\u2b57\u2b58",
+ "\u0007D\u0002\u0002\u2b58\u0756\u0003\u0002\u0002\u0002\u2b59\u2b5a",
+ "\u0007U\u0002\u0002\u2b5a\u2b5b\u0007V\u0002\u0002\u2b5b\u2b5c\u0007",
+ "a\u0002\u0002\u2b5c\u2b5d\u0007N\u0002\u0002\u2b5d\u2b5e\u0007K\u0002",
+ "\u0002\u2b5e\u2b5f\u0007P\u0002\u0002\u2b5f\u2b60\u0007G\u0002\u0002",
+ "\u2b60\u2b61\u0007U\u0002\u0002\u2b61\u2b62\u0007V\u0002\u0002\u2b62",
+ "\u2b63\u0007T\u0002\u0002\u2b63\u2b64\u0007K\u0002\u0002\u2b64\u2b65",
+ "\u0007P\u0002\u0002\u2b65\u2b66\u0007I\u0002\u0002\u2b66\u2b67\u0007",
+ "H\u0002\u0002\u2b67\u2b68\u0007T\u0002\u0002\u2b68\u2b69\u0007Q\u0002",
+ "\u0002\u2b69\u2b6a\u0007O\u0002\u0002\u2b6a\u2b6b\u0007V\u0002\u0002",
+ "\u2b6b\u2b6c\u0007G\u0002\u0002\u2b6c\u2b6d\u0007Z\u0002\u0002\u2b6d",
+ "\u2b6e\u0007V\u0002\u0002\u2b6e\u0758\u0003\u0002\u0002\u0002\u2b6f",
+ "\u2b70\u0007U\u0002\u0002\u2b70\u2b71\u0007V\u0002\u0002\u2b71\u2b72",
+ "\u0007a\u0002\u0002\u2b72\u2b73\u0007N\u0002\u0002\u2b73\u2b74\u0007",
+ "K\u0002\u0002\u2b74\u2b75\u0007P\u0002\u0002\u2b75\u2b76\u0007G\u0002",
+ "\u0002\u2b76\u2b77\u0007U\u0002\u0002\u2b77\u2b78\u0007V\u0002\u0002",
+ "\u2b78\u2b79\u0007T\u0002\u0002\u2b79\u2b7a\u0007K\u0002\u0002\u2b7a",
+ "\u2b7b\u0007P\u0002\u0002\u2b7b\u2b7c\u0007I\u0002\u0002\u2b7c\u2b7d",
+ "\u0007H\u0002\u0002\u2b7d\u2b7e\u0007T\u0002\u0002\u2b7e\u2b7f\u0007",
+ "Q\u0002\u0002\u2b7f\u2b80\u0007O\u0002\u0002\u2b80\u2b81\u0007Y\u0002",
+ "\u0002\u2b81\u2b82\u0007M\u0002\u0002\u2b82\u2b83\u0007D\u0002\u0002",
+ "\u2b83\u075a\u0003\u0002\u0002\u0002\u2b84\u2b85\u0007U\u0002\u0002",
+ "\u2b85\u2b86\u0007V\u0002\u0002\u2b86\u2b87\u0007a\u0002\u0002\u2b87",
+ "\u2b88\u0007P\u0002\u0002\u2b88\u2b89\u0007W\u0002\u0002\u2b89\u2b8a",
+ "\u0007O\u0002\u0002\u2b8a\u2b8b\u0007I\u0002\u0002\u2b8b\u2b8c\u0007",
+ "G\u0002\u0002\u2b8c\u2b8d\u0007Q\u0002\u0002\u2b8d\u2b8e\u0007O\u0002",
+ "\u0002\u2b8e\u2b8f\u0007G\u0002\u0002\u2b8f\u2b90\u0007V\u0002\u0002",
+ "\u2b90\u2b91\u0007T\u0002\u0002\u2b91\u2b92\u0007K\u0002\u0002\u2b92",
+ "\u2b93\u0007G\u0002\u0002\u2b93\u2b94\u0007U\u0002\u0002\u2b94\u075c",
+ "\u0003\u0002\u0002\u0002\u2b95\u2b96\u0007U\u0002\u0002\u2b96\u2b97",
+ "\u0007V\u0002\u0002\u2b97\u2b98\u0007a\u0002\u0002\u2b98\u2b99\u0007",
+ "P\u0002\u0002\u2b99\u2b9a\u0007W\u0002\u0002\u2b9a\u2b9b\u0007O\u0002",
+ "\u0002\u2b9b\u2b9c\u0007K\u0002\u0002\u2b9c\u2b9d\u0007P\u0002\u0002",
+ "\u2b9d\u2b9e\u0007V\u0002\u0002\u2b9e\u2b9f\u0007G\u0002\u0002\u2b9f",
+ "\u2ba0\u0007T\u0002\u0002\u2ba0\u2ba1\u0007K\u0002\u0002\u2ba1\u2ba2",
+ "\u0007Q\u0002\u0002\u2ba2\u2ba3\u0007T\u0002\u0002\u2ba3\u2ba4\u0007",
+ "T\u0002\u0002\u2ba4\u2ba5\u0007K\u0002\u0002\u2ba5\u2ba6\u0007P\u0002",
+ "\u0002\u2ba6\u2ba7\u0007I\u0002\u0002\u2ba7\u075e\u0003\u0002\u0002",
+ "\u0002\u2ba8\u2ba9\u0007U\u0002\u0002\u2ba9\u2baa\u0007V\u0002\u0002",
+ "\u2baa\u2bab\u0007a\u0002\u0002\u2bab\u2bac\u0007P\u0002\u0002\u2bac",
+ "\u2bad\u0007W\u0002\u0002\u2bad\u2bae\u0007O\u0002\u0002\u2bae\u2baf",
+ "\u0007K\u0002\u0002\u2baf\u2bb0\u0007P\u0002\u0002\u2bb0\u2bb1\u0007",
+ "V\u0002\u0002\u2bb1\u2bb2\u0007G\u0002\u0002\u2bb2\u2bb3\u0007T\u0002",
+ "\u0002\u2bb3\u2bb4\u0007K\u0002\u0002\u2bb4\u2bb5\u0007Q\u0002\u0002",
+ "\u2bb5\u2bb6\u0007T\u0002\u0002\u2bb6\u2bb7\u0007T\u0002\u0002\u2bb7",
+ "\u2bb8\u0007K\u0002\u0002\u2bb8\u2bb9\u0007P\u0002\u0002\u2bb9\u2bba",
+ "\u0007I\u0002\u0002\u2bba\u2bbb\u0007U\u0002\u0002\u2bbb\u0760\u0003",
+ "\u0002\u0002\u0002\u2bbc\u2bbd\u0007U\u0002\u0002\u2bbd\u2bbe\u0007",
+ "V\u0002\u0002\u2bbe\u2bbf\u0007a\u0002\u0002\u2bbf\u2bc0\u0007P\u0002",
+ "\u0002\u2bc0\u2bc1\u0007W\u0002\u0002\u2bc1\u2bc2\u0007O\u0002\u0002",
+ "\u2bc2\u2bc3\u0007R\u0002\u0002\u2bc3\u2bc4\u0007Q\u0002\u0002\u2bc4",
+ "\u2bc5\u0007K\u0002\u0002\u2bc5\u2bc6\u0007P\u0002\u0002\u2bc6\u2bc7",
+ "\u0007V\u0002\u0002\u2bc7\u2bc8\u0007U\u0002\u0002\u2bc8\u0762\u0003",
+ "\u0002\u0002\u0002\u2bc9\u2bca\u0007U\u0002\u0002\u2bca\u2bcb\u0007",
+ "V\u0002\u0002\u2bcb\u2bcc\u0007a\u0002\u0002\u2bcc\u2bcd\u0007Q\u0002",
+ "\u0002\u2bcd\u2bce\u0007X\u0002\u0002\u2bce\u2bcf\u0007G\u0002\u0002",
+ "\u2bcf\u2bd0\u0007T\u0002\u0002\u2bd0\u2bd1\u0007N\u0002\u0002\u2bd1",
+ "\u2bd2\u0007C\u0002\u0002\u2bd2\u2bd3\u0007R\u0002\u0002\u2bd3\u2bd4",
+ "\u0007U\u0002\u0002\u2bd4\u0764\u0003\u0002\u0002\u0002\u2bd5\u2bd6",
+ "\u0007U\u0002\u0002\u2bd6\u2bd7\u0007V\u0002\u0002\u2bd7\u2bd8\u0007",
+ "a\u0002\u0002\u2bd8\u2bd9\u0007R\u0002\u0002\u2bd9\u2bda\u0007Q\u0002",
+ "\u0002\u2bda\u2bdb\u0007K\u0002\u0002\u2bdb\u2bdc\u0007P\u0002\u0002",
+ "\u2bdc\u2bdd\u0007V\u0002\u0002\u2bdd\u2bde\u0007H\u0002\u0002\u2bde",
+ "\u2bdf\u0007T\u0002\u0002\u2bdf\u2be0\u0007Q\u0002\u0002\u2be0\u2be1",
+ "\u0007O\u0002\u0002\u2be1\u2be2\u0007V\u0002\u0002\u2be2\u2be3\u0007",
+ "G\u0002\u0002\u2be3\u2be4\u0007Z\u0002\u0002\u2be4\u2be5\u0007V\u0002",
+ "\u0002\u2be5\u0766\u0003\u0002\u0002\u0002\u2be6\u2be7\u0007U\u0002",
+ "\u0002\u2be7\u2be8\u0007V\u0002\u0002\u2be8\u2be9\u0007a\u0002\u0002",
+ "\u2be9\u2bea\u0007R\u0002\u0002\u2bea\u2beb\u0007Q\u0002\u0002\u2beb",
+ "\u2bec\u0007K\u0002\u0002\u2bec\u2bed\u0007P\u0002\u0002\u2bed\u2bee",
+ "\u0007V\u0002\u0002\u2bee\u2bef\u0007H\u0002\u0002\u2bef\u2bf0\u0007",
+ "T\u0002\u0002\u2bf0\u2bf1\u0007Q\u0002\u0002\u2bf1\u2bf2\u0007O\u0002",
+ "\u0002\u2bf2\u2bf3\u0007Y\u0002\u0002\u2bf3\u2bf4\u0007M\u0002\u0002",
+ "\u2bf4\u2bf5\u0007D\u0002\u0002\u2bf5\u0768\u0003\u0002\u0002\u0002",
+ "\u2bf6\u2bf7\u0007U\u0002\u0002\u2bf7\u2bf8\u0007V\u0002\u0002\u2bf8",
+ "\u2bf9\u0007a\u0002\u0002\u2bf9\u2bfa\u0007R\u0002\u0002\u2bfa\u2bfb",
+ "\u0007Q\u0002\u0002\u2bfb\u2bfc\u0007K\u0002\u0002\u2bfc\u2bfd\u0007",
+ "P\u0002\u0002\u2bfd\u2bfe\u0007V\u0002\u0002\u2bfe\u2bff\u0007P\u0002",
+ "\u0002\u2bff\u076a\u0003\u0002\u0002\u0002\u2c00\u2c01\u0007U\u0002",
+ "\u0002\u2c01\u2c02\u0007V\u0002\u0002\u2c02\u2c03\u0007a\u0002\u0002",
+ "\u2c03\u2c04\u0007R\u0002\u0002\u2c04\u2c05\u0007Q\u0002\u0002\u2c05",
+ "\u2c06\u0007N\u0002\u0002\u2c06\u2c07\u0007[\u0002\u0002\u2c07\u2c08",
+ "\u0007H\u0002\u0002\u2c08\u2c09\u0007T\u0002\u0002\u2c09\u2c0a\u0007",
+ "Q\u0002\u0002\u2c0a\u2c0b\u0007O\u0002\u0002\u2c0b\u2c0c\u0007V\u0002",
+ "\u0002\u2c0c\u2c0d\u0007G\u0002\u0002\u2c0d\u2c0e\u0007Z\u0002\u0002",
+ "\u2c0e\u2c0f\u0007V\u0002\u0002\u2c0f\u076c\u0003\u0002\u0002\u0002",
+ "\u2c10\u2c11\u0007U\u0002\u0002\u2c11\u2c12\u0007V\u0002\u0002\u2c12",
+ "\u2c13\u0007a\u0002\u0002\u2c13\u2c14\u0007R\u0002\u0002\u2c14\u2c15",
+ "\u0007Q\u0002\u0002\u2c15\u2c16\u0007N\u0002\u0002\u2c16\u2c17\u0007",
+ "[\u0002\u0002\u2c17\u2c18\u0007H\u0002\u0002\u2c18\u2c19\u0007T\u0002",
+ "\u0002\u2c19\u2c1a\u0007Q\u0002\u0002\u2c1a\u2c1b\u0007O\u0002\u0002",
+ "\u2c1b\u2c1c\u0007Y\u0002\u0002\u2c1c\u2c1d\u0007M\u0002\u0002\u2c1d",
+ "\u2c1e\u0007D\u0002\u0002\u2c1e\u076e\u0003\u0002\u0002\u0002\u2c1f",
+ "\u2c20\u0007U\u0002\u0002\u2c20\u2c21\u0007V\u0002\u0002\u2c21\u2c22",
+ "\u0007a\u0002\u0002\u2c22\u2c23\u0007R\u0002\u0002\u2c23\u2c24\u0007",
+ "Q\u0002\u0002\u2c24\u2c25\u0007N\u0002\u0002\u2c25\u2c26\u0007[\u0002",
+ "\u0002\u2c26\u2c27\u0007I\u0002\u0002\u2c27\u2c28\u0007Q\u0002\u0002",
+ "\u2c28\u2c29\u0007P\u0002\u0002\u2c29\u2c2a\u0007H\u0002\u0002\u2c2a",
+ "\u2c2b\u0007T\u0002\u0002\u2c2b\u2c2c\u0007Q\u0002\u0002\u2c2c\u2c2d",
+ "\u0007O\u0002\u0002\u2c2d\u2c2e\u0007V\u0002\u0002\u2c2e\u2c2f\u0007",
+ "G\u0002\u0002\u2c2f\u2c30\u0007Z\u0002\u0002\u2c30\u2c31\u0007V\u0002",
+ "\u0002\u2c31\u0770\u0003\u0002\u0002\u0002\u2c32\u2c33\u0007U\u0002",
+ "\u0002\u2c33\u2c34\u0007V\u0002\u0002\u2c34\u2c35\u0007a\u0002\u0002",
+ "\u2c35\u2c36\u0007R\u0002\u0002\u2c36\u2c37\u0007Q\u0002\u0002\u2c37",
+ "\u2c38\u0007N\u0002\u0002\u2c38\u2c39\u0007[\u0002\u0002\u2c39\u2c3a",
+ "\u0007I\u0002\u0002\u2c3a\u2c3b\u0007Q\u0002\u0002\u2c3b\u2c3c\u0007",
+ "P\u0002\u0002\u2c3c\u2c3d\u0007H\u0002\u0002\u2c3d\u2c3e\u0007T\u0002",
+ "\u0002\u2c3e\u2c3f\u0007Q\u0002\u0002\u2c3f\u2c40\u0007O\u0002\u0002",
+ "\u2c40\u2c41\u0007Y\u0002\u0002\u2c41\u2c42\u0007M\u0002\u0002\u2c42",
+ "\u2c43\u0007D\u0002\u0002\u2c43\u0772\u0003\u0002\u0002\u0002\u2c44",
+ "\u2c45\u0007U\u0002\u0002\u2c45\u2c46\u0007V\u0002\u0002\u2c46\u2c47",
+ "\u0007a\u0002\u0002\u2c47\u2c48\u0007U\u0002\u0002\u2c48\u2c49\u0007",
+ "T\u0002\u0002\u2c49\u2c4a\u0007K\u0002\u0002\u2c4a\u2c4b\u0007F\u0002",
+ "\u0002\u2c4b\u0774\u0003\u0002\u0002\u0002\u2c4c\u2c4d\u0007U\u0002",
+ "\u0002\u2c4d\u2c4e\u0007V\u0002\u0002\u2c4e\u2c4f\u0007a\u0002\u0002",
+ "\u2c4f\u2c50\u0007U\u0002\u0002\u2c50\u2c51\u0007V\u0002\u0002\u2c51",
+ "\u2c52\u0007C\u0002\u0002\u2c52\u2c53\u0007T\u0002\u0002\u2c53\u2c54",
+ "\u0007V\u0002\u0002\u2c54\u2c55\u0007R\u0002\u0002\u2c55\u2c56\u0007",
+ "Q\u0002\u0002\u2c56\u2c57\u0007K\u0002\u0002\u2c57\u2c58\u0007P\u0002",
+ "\u0002\u2c58\u2c59\u0007V\u0002\u0002\u2c59\u0776\u0003\u0002\u0002",
+ "\u0002\u2c5a\u2c5b\u0007U\u0002\u0002\u2c5b\u2c5c\u0007V\u0002\u0002",
+ "\u2c5c\u2c5d\u0007a\u0002\u0002\u2c5d\u2c5e\u0007U\u0002\u0002\u2c5e",
+ "\u2c5f\u0007[\u0002\u0002\u2c5f\u2c60\u0007O\u0002\u0002\u2c60\u2c61",
+ "\u0007F\u0002\u0002\u2c61\u2c62\u0007K\u0002\u0002\u2c62\u2c63\u0007",
+ "H\u0002\u0002\u2c63\u2c64\u0007H\u0002\u0002\u2c64\u2c65\u0007G\u0002",
+ "\u0002\u2c65\u2c66\u0007T\u0002\u0002\u2c66\u2c67\u0007G\u0002\u0002",
+ "\u2c67\u2c68\u0007P\u0002\u0002\u2c68\u2c69\u0007E\u0002\u0002\u2c69",
+ "\u2c6a\u0007G\u0002\u0002\u2c6a\u0778\u0003\u0002\u0002\u0002\u2c6b",
+ "\u2c6c\u0007U\u0002\u0002\u2c6c\u2c6d\u0007V\u0002\u0002\u2c6d\u2c6e",
+ "\u0007a\u0002\u0002\u2c6e\u2c6f\u0007V\u0002\u0002\u2c6f\u2c70\u0007",
+ "Q\u0002\u0002\u2c70\u2c71\u0007W\u0002\u0002\u2c71\u2c72\u0007E\u0002",
+ "\u0002\u2c72\u2c73\u0007J\u0002\u0002\u2c73\u2c74\u0007G\u0002\u0002",
+ "\u2c74\u2c75\u0007U\u0002\u0002\u2c75\u077a\u0003\u0002\u0002\u0002",
+ "\u2c76\u2c77\u0007U\u0002\u0002\u2c77\u2c78\u0007V\u0002\u0002\u2c78",
+ "\u2c79\u0007a\u0002\u0002\u2c79\u2c7a\u0007W\u0002\u0002\u2c7a\u2c7b",
+ "\u0007P\u0002\u0002\u2c7b\u2c7c\u0007K\u0002\u0002\u2c7c\u2c7d\u0007",
+ "Q\u0002\u0002\u2c7d\u2c7e\u0007P\u0002\u0002\u2c7e\u077c\u0003\u0002",
+ "\u0002\u0002\u2c7f\u2c80\u0007U\u0002\u0002\u2c80\u2c81\u0007V\u0002",
+ "\u0002\u2c81\u2c82\u0007a\u0002\u0002\u2c82\u2c83\u0007Y\u0002\u0002",
+ "\u2c83\u2c84\u0007K\u0002\u0002\u2c84\u2c85\u0007V\u0002\u0002\u2c85",
+ "\u2c86\u0007J\u0002\u0002\u2c86\u2c87\u0007K\u0002\u0002\u2c87\u2c88",
+ "\u0007P\u0002\u0002\u2c88\u077e\u0003\u0002\u0002\u0002\u2c89\u2c8a",
+ "\u0007U\u0002\u0002\u2c8a\u2c8b\u0007V\u0002\u0002\u2c8b\u2c8c\u0007",
+ "a\u0002\u0002\u2c8c\u2c8d\u0007Z\u0002\u0002\u2c8d\u0780\u0003\u0002",
+ "\u0002\u0002\u2c8e\u2c8f\u0007U\u0002\u0002\u2c8f\u2c90\u0007V\u0002",
+ "\u0002\u2c90\u2c91\u0007a\u0002\u0002\u2c91\u2c92\u0007[\u0002\u0002",
+ "\u2c92\u0782\u0003\u0002\u0002\u0002\u2c93\u2c94\u0007U\u0002\u0002",
+ "\u2c94\u2c95\u0007W\u0002\u0002\u2c95\u2c96\u0007D\u0002\u0002\u2c96",
+ "\u2c97\u0007F\u0002\u0002\u2c97\u2c98\u0007C\u0002\u0002\u2c98\u2c99",
+ "\u0007V\u0002\u0002\u2c99\u2c9a\u0007G\u0002\u0002\u2c9a\u0784\u0003",
+ "\u0002\u0002\u0002\u2c9b\u2c9c\u0007U\u0002\u0002\u2c9c\u2c9d\u0007",
+ "W\u0002\u0002\u2c9d\u2c9e\u0007D\u0002\u0002\u2c9e\u2c9f\u0007U\u0002",
+ "\u0002\u2c9f\u2ca0\u0007V\u0002\u0002\u2ca0\u2ca1\u0007T\u0002\u0002",
+ "\u2ca1\u2ca2\u0007K\u0002\u0002\u2ca2\u2ca3\u0007P\u0002\u0002\u2ca3",
+ "\u2ca4\u0007I\u0002\u0002\u2ca4\u2ca5\u0007a\u0002\u0002\u2ca5\u2ca6",
+ "\u0007K\u0002\u0002\u2ca6\u2ca7\u0007P\u0002\u0002\u2ca7\u2ca8\u0007",
+ "F\u0002\u0002\u2ca8\u2ca9\u0007G\u0002\u0002\u2ca9\u2caa\u0007Z\u0002",
+ "\u0002\u2caa\u0786\u0003\u0002\u0002\u0002\u2cab\u2cac\u0007U\u0002",
+ "\u0002\u2cac\u2cad\u0007W\u0002\u0002\u2cad\u2cae\u0007D\u0002\u0002",
+ "\u2cae\u2caf\u0007V\u0002\u0002\u2caf\u2cb0\u0007K\u0002\u0002\u2cb0",
+ "\u2cb1\u0007O\u0002\u0002\u2cb1\u2cb2\u0007G\u0002\u0002\u2cb2\u0788",
+ "\u0003\u0002\u0002\u0002\u2cb3\u2cb4\u0007U\u0002\u0002\u2cb4\u2cb5",
+ "\u0007[\u0002\u0002\u2cb5\u2cb6\u0007U\u0002\u0002\u2cb6\u2cb7\u0007",
+ "V\u0002\u0002\u2cb7\u2cb8\u0007G\u0002\u0002\u2cb8\u2cb9\u0007O\u0002",
+ "\u0002\u2cb9\u2cba\u0007a\u0002\u0002\u2cba\u2cbb\u0007W\u0002\u0002",
+ "\u2cbb\u2cbc\u0007U\u0002\u0002\u2cbc\u2cbd\u0007G\u0002\u0002\u2cbd",
+ "\u2cbe\u0007T\u0002\u0002\u2cbe\u078a\u0003\u0002\u0002\u0002\u2cbf",
+ "\u2cc0\u0007V\u0002\u0002\u2cc0\u2cc1\u0007C\u0002\u0002\u2cc1\u2cc2",
+ "\u0007P\u0002\u0002\u2cc2\u078c\u0003\u0002\u0002\u0002\u2cc3\u2cc4",
+ "\u0007V\u0002\u0002\u2cc4\u2cc5\u0007K\u0002\u0002\u2cc5\u2cc6\u0007",
+ "O\u0002\u0002\u2cc6\u2cc7\u0007G\u0002\u0002\u2cc7\u2cc8\u0007F\u0002",
+ "\u0002\u2cc8\u2cc9\u0007K\u0002\u0002\u2cc9\u2cca\u0007H\u0002\u0002",
+ "\u2cca\u2ccb\u0007H\u0002\u0002\u2ccb\u078e\u0003\u0002\u0002\u0002",
+ "\u2ccc\u2ccd\u0007V\u0002\u0002\u2ccd\u2cce\u0007K\u0002\u0002\u2cce",
+ "\u2ccf\u0007O\u0002\u0002\u2ccf\u2cd0\u0007G\u0002\u0002\u2cd0\u2cd1",
+ "\u0007U\u0002\u0002\u2cd1\u2cd2\u0007V\u0002\u0002\u2cd2\u2cd3\u0007",
+ "C\u0002\u0002\u2cd3\u2cd4\u0007O\u0002\u0002\u2cd4\u2cd5\u0007R\u0002",
+ "\u0002\u2cd5\u2cd6\u0007C\u0002\u0002\u2cd6\u2cd7\u0007F\u0002\u0002",
+ "\u2cd7\u2cd8\u0007F\u0002\u0002\u2cd8\u0790\u0003\u0002\u0002\u0002",
+ "\u2cd9\u2cda\u0007V\u0002\u0002\u2cda\u2cdb\u0007K\u0002\u0002\u2cdb",
+ "\u2cdc\u0007O\u0002\u0002\u2cdc\u2cdd\u0007G\u0002\u0002\u2cdd\u2cde",
+ "\u0007U\u0002\u0002\u2cde\u2cdf\u0007V\u0002\u0002\u2cdf\u2ce0\u0007",
+ "C\u0002\u0002\u2ce0\u2ce1\u0007O\u0002\u0002\u2ce1\u2ce2\u0007R\u0002",
+ "\u0002\u2ce2\u2ce3\u0007F\u0002\u0002\u2ce3\u2ce4\u0007K\u0002\u0002",
+ "\u2ce4\u2ce5\u0007H\u0002\u0002\u2ce5\u2ce6\u0007H\u0002\u0002\u2ce6",
+ "\u0792\u0003\u0002\u0002\u0002\u2ce7\u2ce8\u0007V\u0002\u0002\u2ce8",
+ "\u2ce9\u0007K\u0002\u0002\u2ce9\u2cea\u0007O\u0002\u0002\u2cea\u2ceb",
+ "\u0007G\u0002\u0002\u2ceb\u2cec\u0007a\u0002\u0002\u2cec\u2ced\u0007",
+ "H\u0002\u0002\u2ced\u2cee\u0007Q\u0002\u0002\u2cee\u2cef\u0007T\u0002",
+ "\u0002\u2cef\u2cf0\u0007O\u0002\u0002\u2cf0\u2cf1\u0007C\u0002\u0002",
+ "\u2cf1\u2cf2\u0007V\u0002\u0002\u2cf2\u0794\u0003\u0002\u0002\u0002",
+ "\u2cf3\u2cf4\u0007V\u0002\u0002\u2cf4\u2cf5\u0007K\u0002\u0002\u2cf5",
+ "\u2cf6\u0007O\u0002\u0002\u2cf6\u2cf7\u0007G\u0002\u0002\u2cf7\u2cf8",
+ "\u0007a\u0002\u0002\u2cf8\u2cf9\u0007V\u0002\u0002\u2cf9\u2cfa\u0007",
+ "Q\u0002\u0002\u2cfa\u2cfb\u0007a\u0002\u0002\u2cfb\u2cfc\u0007U\u0002",
+ "\u0002\u2cfc\u2cfd\u0007G\u0002\u0002\u2cfd\u2cfe\u0007E\u0002\u0002",
+ "\u2cfe\u0796\u0003\u0002\u0002\u0002\u2cff\u2d00\u0007V\u0002\u0002",
+ "\u2d00\u2d01\u0007Q\u0002\u0002\u2d01\u2d02\u0007W\u0002\u0002\u2d02",
+ "\u2d03\u0007E\u0002\u0002\u2d03\u2d04\u0007J\u0002\u0002\u2d04\u2d05",
+ "\u0007G\u0002\u0002\u2d05\u2d06\u0007U\u0002\u0002\u2d06\u0798\u0003",
+ "\u0002\u0002\u0002\u2d07\u2d08\u0007V\u0002\u0002\u2d08\u2d09\u0007",
+ "Q\u0002\u0002\u2d09\u2d0a\u0007a\u0002\u0002\u2d0a\u2d0b\u0007D\u0002",
+ "\u0002\u2d0b\u2d0c\u0007C\u0002\u0002\u2d0c\u2d0d\u0007U\u0002\u0002",
+ "\u2d0d\u2d0e\u0007G\u0002\u0002\u2d0e\u2d0f\u00078\u0002\u0002\u2d0f",
+ "\u2d10\u00076\u0002\u0002\u2d10\u079a\u0003\u0002\u0002\u0002\u2d11",
+ "\u2d12\u0007V\u0002\u0002\u2d12\u2d13\u0007Q\u0002\u0002\u2d13\u2d14",
+ "\u0007a\u0002\u0002\u2d14\u2d15\u0007F\u0002\u0002\u2d15\u2d16\u0007",
+ "C\u0002\u0002\u2d16\u2d17\u0007[\u0002\u0002\u2d17\u2d18\u0007U\u0002",
+ "\u0002\u2d18\u079c\u0003\u0002\u0002\u0002\u2d19\u2d1a\u0007V\u0002",
+ "\u0002\u2d1a\u2d1b\u0007Q\u0002\u0002\u2d1b\u2d1c\u0007a\u0002\u0002",
+ "\u2d1c\u2d1d\u0007U\u0002\u0002\u2d1d\u2d1e\u0007G\u0002\u0002\u2d1e",
+ "\u2d1f\u0007E\u0002\u0002\u2d1f\u2d20\u0007Q\u0002\u0002\u2d20\u2d21",
+ "\u0007P\u0002\u0002\u2d21\u2d22\u0007F\u0002\u0002\u2d22\u2d23\u0007",
+ "U\u0002\u0002\u2d23\u079e\u0003\u0002\u0002\u0002\u2d24\u2d25\u0007",
+ "W\u0002\u0002\u2d25\u2d26\u0007E\u0002\u0002\u2d26\u2d27\u0007C\u0002",
+ "\u0002\u2d27\u2d28\u0007U\u0002\u0002\u2d28\u2d29\u0007G\u0002\u0002",
+ "\u2d29\u07a0\u0003\u0002\u0002\u0002\u2d2a\u2d2b\u0007W\u0002\u0002",
+ "\u2d2b\u2d2c\u0007P\u0002\u0002\u2d2c\u2d2d\u0007E\u0002\u0002\u2d2d",
+ "\u2d2e\u0007Q\u0002\u0002\u2d2e\u2d2f\u0007O\u0002\u0002\u2d2f\u2d30",
+ "\u0007R\u0002\u0002\u2d30\u2d31\u0007T\u0002\u0002\u2d31\u2d32\u0007",
+ "G\u0002\u0002\u2d32\u2d33\u0007U\u0002\u0002\u2d33\u2d34\u0007U\u0002",
+ "\u0002\u2d34\u07a2\u0003\u0002\u0002\u0002\u2d35\u2d36\u0007W\u0002",
+ "\u0002\u2d36\u2d37\u0007P\u0002\u0002\u2d37\u2d38\u0007E\u0002\u0002",
+ "\u2d38\u2d39\u0007Q\u0002\u0002\u2d39\u2d3a\u0007O\u0002\u0002\u2d3a",
+ "\u2d3b\u0007R\u0002\u0002\u2d3b\u2d3c\u0007T\u0002\u0002\u2d3c\u2d3d",
+ "\u0007G\u0002\u0002\u2d3d\u2d3e\u0007U\u0002\u0002\u2d3e\u2d3f\u0007",
+ "U\u0002\u0002\u2d3f\u2d40\u0007G\u0002\u0002\u2d40\u2d41\u0007F\u0002",
+ "\u0002\u2d41\u2d42\u0007a\u0002\u0002\u2d42\u2d43\u0007N\u0002\u0002",
+ "\u2d43\u2d44\u0007G\u0002\u0002\u2d44\u2d45\u0007P\u0002\u0002\u2d45",
+ "\u2d46\u0007I\u0002\u0002\u2d46\u2d47\u0007V\u0002\u0002\u2d47\u2d48",
+ "\u0007J\u0002\u0002\u2d48\u07a4\u0003\u0002\u0002\u0002\u2d49\u2d4a",
+ "\u0007W\u0002\u0002\u2d4a\u2d4b\u0007P\u0002\u0002\u2d4b\u2d4c\u0007",
+ "J\u0002\u0002\u2d4c\u2d4d\u0007G\u0002\u0002\u2d4d\u2d4e\u0007Z\u0002",
+ "\u0002\u2d4e\u07a6\u0003\u0002\u0002\u0002\u2d4f\u2d50\u0007W\u0002",
+ "\u0002\u2d50\u2d51\u0007P\u0002\u0002\u2d51\u2d52\u0007K\u0002\u0002",
+ "\u2d52\u2d53\u0007Z\u0002\u0002\u2d53\u2d54\u0007a\u0002\u0002\u2d54",
+ "\u2d55\u0007V\u0002\u0002\u2d55\u2d56\u0007K\u0002\u0002\u2d56\u2d57",
+ "\u0007O\u0002\u0002\u2d57\u2d58\u0007G\u0002\u0002\u2d58\u2d59\u0007",
+ "U\u0002\u0002\u2d59\u2d5a\u0007V\u0002\u0002\u2d5a\u2d5b\u0007C\u0002",
+ "\u0002\u2d5b\u2d5c\u0007O\u0002\u0002\u2d5c\u2d5d\u0007R\u0002\u0002",
+ "\u2d5d\u07a8\u0003\u0002\u0002\u0002\u2d5e\u2d5f\u0007W\u0002\u0002",
+ "\u2d5f\u2d60\u0007R\u0002\u0002\u2d60\u2d61\u0007F\u0002\u0002\u2d61",
+ "\u2d62\u0007C\u0002\u0002\u2d62\u2d63\u0007V\u0002\u0002\u2d63\u2d64",
+ "\u0007G\u0002\u0002\u2d64\u2d65\u0007Z\u0002\u0002\u2d65\u2d66\u0007",
+ "O\u0002\u0002\u2d66\u2d67\u0007N\u0002\u0002\u2d67\u07aa\u0003\u0002",
+ "\u0002\u0002\u2d68\u2d69\u0007W\u0002\u0002\u2d69\u2d6a\u0007R\u0002",
+ "\u0002\u2d6a\u2d6b\u0007R\u0002\u0002\u2d6b\u2d6c\u0007G\u0002\u0002",
+ "\u2d6c\u2d6d\u0007T\u0002\u0002\u2d6d\u07ac\u0003\u0002\u0002\u0002",
+ "\u2d6e\u2d6f\u0007W\u0002\u0002\u2d6f\u2d70\u0007W\u0002\u0002\u2d70",
+ "\u2d71\u0007K\u0002\u0002\u2d71\u2d72\u0007F\u0002\u0002\u2d72\u07ae",
+ "\u0003\u0002\u0002\u0002\u2d73\u2d74\u0007W\u0002\u0002\u2d74\u2d75",
+ "\u0007W\u0002\u0002\u2d75\u2d76\u0007K\u0002\u0002\u2d76\u2d77\u0007",
+ "F\u0002\u0002\u2d77\u2d78\u0007a\u0002\u0002\u2d78\u2d79\u0007U\u0002",
+ "\u0002\u2d79\u2d7a\u0007J\u0002\u0002\u2d7a\u2d7b\u0007Q\u0002\u0002",
+ "\u2d7b\u2d7c\u0007T\u0002\u0002\u2d7c\u2d7d\u0007V\u0002\u0002\u2d7d",
+ "\u07b0\u0003\u0002\u0002\u0002\u2d7e\u2d7f\u0007X\u0002\u0002\u2d7f",
+ "\u2d80\u0007C\u0002\u0002\u2d80\u2d81\u0007N\u0002\u0002\u2d81\u2d82",
+ "\u0007K\u0002\u0002\u2d82\u2d83\u0007F\u0002\u0002\u2d83\u2d84\u0007",
+ "C\u0002\u0002\u2d84\u2d85\u0007V\u0002\u0002\u2d85\u2d86\u0007G\u0002",
+ "\u0002\u2d86\u2d87\u0007a\u0002\u0002\u2d87\u2d88\u0007R\u0002\u0002",
+ "\u2d88\u2d89\u0007C\u0002\u0002\u2d89\u2d8a\u0007U\u0002\u0002\u2d8a",
+ "\u2d8b\u0007U\u0002\u0002\u2d8b\u2d8c\u0007Y\u0002\u0002\u2d8c\u2d8d",
+ "\u0007Q\u0002\u0002\u2d8d\u2d8e\u0007T\u0002\u0002\u2d8e\u2d8f\u0007",
+ "F\u0002\u0002\u2d8f\u2d90\u0007a\u0002\u0002\u2d90\u2d91\u0007U\u0002",
+ "\u0002\u2d91\u2d92\u0007V\u0002\u0002\u2d92\u2d93\u0007T\u0002\u0002",
+ "\u2d93\u2d94\u0007G\u0002\u0002\u2d94\u2d95\u0007P\u0002\u0002\u2d95",
+ "\u2d96\u0007I\u0002\u0002\u2d96\u2d97\u0007V\u0002\u0002\u2d97\u2d98",
+ "\u0007J\u0002\u0002\u2d98\u07b2\u0003\u0002\u0002\u0002\u2d99\u2d9a",
+ "\u0007X\u0002\u0002\u2d9a\u2d9b\u0007G\u0002\u0002\u2d9b\u2d9c\u0007",
+ "T\u0002\u0002\u2d9c\u2d9d\u0007U\u0002\u0002\u2d9d\u2d9e\u0007K\u0002",
+ "\u0002\u2d9e\u2d9f\u0007Q\u0002\u0002\u2d9f\u2da0\u0007P\u0002\u0002",
+ "\u2da0\u07b4\u0003\u0002\u0002\u0002\u2da1\u2da2\u0007Y\u0002\u0002",
+ "\u2da2\u2da3\u0007C\u0002\u0002\u2da3\u2da4\u0007K\u0002\u0002\u2da4",
+ "\u2da5\u0007V\u0002\u0002\u2da5\u2da6\u0007a\u0002\u0002\u2da6\u2da7",
+ "\u0007W\u0002\u0002\u2da7\u2da8\u0007P\u0002\u0002\u2da8\u2da9\u0007",
+ "V\u0002\u0002\u2da9\u2daa\u0007K\u0002\u0002\u2daa\u2dab\u0007N\u0002",
+ "\u0002\u2dab\u2dac\u0007a\u0002\u0002\u2dac\u2dad\u0007U\u0002\u0002",
+ "\u2dad\u2dae\u0007S\u0002\u0002\u2dae\u2daf\u0007N\u0002\u0002\u2daf",
+ "\u2db0\u0007a\u0002\u0002\u2db0\u2db1\u0007V\u0002\u0002\u2db1\u2db2",
+ "\u0007J\u0002\u0002\u2db2\u2db3\u0007T\u0002\u0002\u2db3\u2db4\u0007",
+ "G\u0002\u0002\u2db4\u2db5\u0007C\u0002\u0002\u2db5\u2db6\u0007F\u0002",
+ "\u0002\u2db6\u2db7\u0007a\u0002\u0002\u2db7\u2db8\u0007C\u0002\u0002",
+ "\u2db8\u2db9\u0007H\u0002\u0002\u2db9\u2dba\u0007V\u0002\u0002\u2dba",
+ "\u2dbb\u0007G\u0002\u0002\u2dbb\u2dbc\u0007T\u0002\u0002\u2dbc\u2dbd",
+ "\u0007a\u0002\u0002\u2dbd\u2dbe\u0007I\u0002\u0002\u2dbe\u2dbf\u0007",
+ "V\u0002\u0002\u2dbf\u2dc0\u0007K\u0002\u0002\u2dc0\u2dc1\u0007F\u0002",
+ "\u0002\u2dc1\u2dc2\u0007U\u0002\u0002\u2dc2\u07b6\u0003\u0002\u0002",
+ "\u0002\u2dc3\u2dc4\u0007Y\u0002\u0002\u2dc4\u2dc5\u0007G\u0002\u0002",
+ "\u2dc5\u2dc6\u0007G\u0002\u0002\u2dc6\u2dc7\u0007M\u0002\u0002\u2dc7",
+ "\u2dc8\u0007F\u0002\u0002\u2dc8\u2dc9\u0007C\u0002\u0002\u2dc9\u2dca",
+ "\u0007[\u0002\u0002\u2dca\u07b8\u0003\u0002\u0002\u0002\u2dcb\u2dcc",
+ "\u0007Y\u0002\u0002\u2dcc\u2dcd\u0007G\u0002\u0002\u2dcd\u2dce\u0007",
+ "G\u0002\u0002\u2dce\u2dcf\u0007M\u0002\u0002\u2dcf\u2dd0\u0007Q\u0002",
+ "\u0002\u2dd0\u2dd1\u0007H\u0002\u0002\u2dd1\u2dd2\u0007[\u0002\u0002",
+ "\u2dd2\u2dd3\u0007G\u0002\u0002\u2dd3\u2dd4\u0007C\u0002\u0002\u2dd4",
+ "\u2dd5\u0007T\u0002\u0002\u2dd5\u07ba\u0003\u0002\u0002\u0002\u2dd6",
+ "\u2dd7\u0007Y\u0002\u0002\u2dd7\u2dd8\u0007G\u0002\u0002\u2dd8\u2dd9",
+ "\u0007K\u0002\u0002\u2dd9\u2dda\u0007I\u0002\u0002\u2dda\u2ddb\u0007",
+ "J\u0002\u0002\u2ddb\u2ddc\u0007V\u0002\u0002\u2ddc\u2ddd\u0007a\u0002",
+ "\u0002\u2ddd\u2dde\u0007U\u0002\u0002\u2dde\u2ddf\u0007V\u0002\u0002",
+ "\u2ddf\u2de0\u0007T\u0002\u0002\u2de0\u2de1\u0007K\u0002\u0002\u2de1",
+ "\u2de2\u0007P\u0002\u0002\u2de2\u2de3\u0007I\u0002\u0002\u2de3\u07bc",
+ "\u0003\u0002\u0002\u0002\u2de4\u2de5\u0007Y\u0002\u0002\u2de5\u2de6",
+ "\u0007K\u0002\u0002\u2de6\u2de7\u0007V\u0002\u0002\u2de7\u2de8\u0007",
+ "J\u0002\u0002\u2de8\u2de9\u0007K\u0002\u0002\u2de9\u2dea\u0007P\u0002",
+ "\u0002\u2dea\u07be\u0003\u0002\u0002\u0002\u2deb\u2dec\u0007[\u0002",
+ "\u0002\u2dec\u2ded\u0007G\u0002\u0002\u2ded\u2dee\u0007C\u0002\u0002",
+ "\u2dee\u2def\u0007T\u0002\u0002\u2def\u2df0\u0007Y\u0002\u0002\u2df0",
+ "\u2df1\u0007G\u0002\u0002\u2df1\u2df2\u0007G\u0002\u0002\u2df2\u2df3",
+ "\u0007M\u0002\u0002\u2df3\u07c0\u0003\u0002\u0002\u0002\u2df4\u2df5",
+ "\u0007[\u0002\u0002\u2df5\u07c2\u0003\u0002\u0002\u0002\u2df6\u2df7",
+ "\u0007Z\u0002\u0002\u2df7\u07c4\u0003\u0002\u0002\u0002\u2df8\u2df9",
+ "\u0007<\u0002\u0002\u2df9\u2dfa\u0007?\u0002\u0002\u2dfa\u07c6\u0003",
+ "\u0002\u0002\u0002\u2dfb\u2dfc\u0007-\u0002\u0002\u2dfc\u2dfd\u0007",
+ "?\u0002\u0002\u2dfd\u07c8\u0003\u0002\u0002\u0002\u2dfe\u2dff\u0007",
+ "/\u0002\u0002\u2dff\u2e00\u0007?\u0002\u0002\u2e00\u07ca\u0003\u0002",
+ "\u0002\u0002\u2e01\u2e02\u0007,\u0002\u0002\u2e02\u2e03\u0007?\u0002",
+ "\u0002\u2e03\u07cc\u0003\u0002\u0002\u0002\u2e04\u2e05\u00071\u0002",
+ "\u0002\u2e05\u2e06\u0007?\u0002\u0002\u2e06\u07ce\u0003\u0002\u0002",
+ "\u0002\u2e07\u2e08\u0007\'\u0002\u0002\u2e08\u2e09\u0007?\u0002\u0002",
+ "\u2e09\u07d0\u0003\u0002\u0002\u0002\u2e0a\u2e0b\u0007(\u0002\u0002",
+ "\u2e0b\u2e0c\u0007?\u0002\u0002\u2e0c\u07d2\u0003\u0002\u0002\u0002",
+ "\u2e0d\u2e0e\u0007`\u0002\u0002\u2e0e\u2e0f\u0007?\u0002\u0002\u2e0f",
+ "\u07d4\u0003\u0002\u0002\u0002\u2e10\u2e11\u0007~\u0002\u0002\u2e11",
+ "\u2e12\u0007?\u0002\u0002\u2e12\u07d6\u0003\u0002\u0002\u0002\u2e13",
+ "\u2e14\u0007,\u0002\u0002\u2e14\u07d8\u0003\u0002\u0002\u0002\u2e15",
+ "\u2e16\u00071\u0002\u0002\u2e16\u07da\u0003\u0002\u0002\u0002\u2e17",
+ "\u2e18\u0007\'\u0002\u0002\u2e18\u07dc\u0003\u0002\u0002\u0002\u2e19",
+ "\u2e1a\u0007-\u0002\u0002\u2e1a\u07de\u0003\u0002\u0002\u0002\u2e1b",
+ "\u2e1c\u0007/\u0002\u0002\u2e1c\u2e1d\u0007/\u0002\u0002\u2e1d\u07e0",
+ "\u0003\u0002\u0002\u0002\u2e1e\u2e1f\u0007/\u0002\u0002\u2e1f\u07e2",
+ "\u0003\u0002\u0002\u0002\u2e20\u2e21\u0007F\u0002\u0002\u2e21\u2e22",
+ "\u0007K\u0002\u0002\u2e22\u2e23\u0007X\u0002\u0002\u2e23\u07e4\u0003",
+ "\u0002\u0002\u0002\u2e24\u2e25\u0007O\u0002\u0002\u2e25\u2e26\u0007",
+ "Q\u0002\u0002\u2e26\u2e27\u0007F\u0002\u0002\u2e27\u07e6\u0003\u0002",
+ "\u0002\u0002\u2e28\u2e29\u0007?\u0002\u0002\u2e29\u07e8\u0003\u0002",
+ "\u0002\u0002\u2e2a\u2e2b\u0007@\u0002\u0002\u2e2b\u07ea\u0003\u0002",
+ "\u0002\u0002\u2e2c\u2e2d\u0007>\u0002\u0002\u2e2d\u07ec\u0003\u0002",
+ "\u0002\u0002\u2e2e\u2e2f\u0007#\u0002\u0002\u2e2f\u07ee\u0003\u0002",
+ "\u0002\u0002\u2e30\u2e31\u0007\u0080\u0002\u0002\u2e31\u07f0\u0003\u0002",
+ "\u0002\u0002\u2e32\u2e33\u0007~\u0002\u0002\u2e33\u07f2\u0003\u0002",
+ "\u0002\u0002\u2e34\u2e35\u0007(\u0002\u0002\u2e35\u07f4\u0003\u0002",
+ "\u0002\u0002\u2e36\u2e37\u0007`\u0002\u0002\u2e37\u07f6\u0003\u0002",
+ "\u0002\u0002\u2e38\u2e39\u00070\u0002\u0002\u2e39\u07f8\u0003\u0002",
+ "\u0002\u0002\u2e3a\u2e3b\u0007*\u0002\u0002\u2e3b\u07fa\u0003\u0002",
+ "\u0002\u0002\u2e3c\u2e3d\u0007+\u0002\u0002\u2e3d\u07fc\u0003\u0002",
+ "\u0002\u0002\u2e3e\u2e3f\u0007.\u0002\u0002\u2e3f\u07fe\u0003\u0002",
+ "\u0002\u0002\u2e40\u2e41\u0007=\u0002\u0002\u2e41\u0800\u0003\u0002",
+ "\u0002\u0002\u2e42\u2e43\u0007B\u0002\u0002\u2e43\u0802\u0003\u0002",
+ "\u0002\u0002\u2e44\u2e45\u00072\u0002\u0002\u2e45\u0804\u0003\u0002",
+ "\u0002\u0002\u2e46\u2e47\u00073\u0002\u0002\u2e47\u0806\u0003\u0002",
+ "\u0002\u0002\u2e48\u2e49\u00074\u0002\u0002\u2e49\u0808\u0003\u0002",
+ "\u0002\u0002\u2e4a\u2e4b\u0007)\u0002\u0002\u2e4b\u080a\u0003\u0002",
+ "\u0002\u0002\u2e4c\u2e4d\u0007$\u0002\u0002\u2e4d\u080c\u0003\u0002",
+ "\u0002\u0002\u2e4e\u2e4f\u0007b\u0002\u0002\u2e4f\u080e\u0003\u0002",
+ "\u0002\u0002\u2e50\u2e51\u0007<\u0002\u0002\u2e51\u0810\u0003\u0002",
+ "\u0002\u0002\u2e52\u2e56\u0005\u0809\u0405\u0002\u2e53\u2e56\u0005\u080b",
+ "\u0406\u0002\u2e54\u2e56\u0005\u080d\u0407\u0002\u2e55\u2e52\u0003\u0002",
+ "\u0002\u0002\u2e55\u2e53\u0003\u0002\u0002\u0002\u2e55\u2e54\u0003\u0002",
+ "\u0002\u0002\u2e56\u0812\u0003\u0002\u0002\u0002\u2e57\u2e58\u0007b",
+ "\u0002\u0002\u2e58\u2e59\u0005\u0833\u041a\u0002\u2e59\u2e5a\u0007b",
+ "\u0002\u0002\u2e5a\u0814\u0003\u0002\u0002\u0002\u2e5b\u2e5d\u0005\u0841",
+ "\u0421\u0002\u2e5c\u2e5b\u0003\u0002\u0002\u0002\u2e5d\u2e5e\u0003\u0002",
+ "\u0002\u0002\u2e5e\u2e5c\u0003\u0002\u0002\u0002\u2e5e\u2e5f\u0003\u0002",
+ "\u0002\u0002\u2e5f\u2e60\u0003\u0002\u0002\u0002\u2e60\u2e61\t\u0004",
+ "\u0002\u0002\u2e61\u0816\u0003\u0002\u0002\u0002\u2e62\u2e63\u0007P",
+ "\u0002\u0002\u2e63\u2e64\u0005\u083b\u041e\u0002\u2e64\u0818\u0003\u0002",
+ "\u0002\u0002\u2e65\u2e69\u0005\u0839\u041d\u0002\u2e66\u2e69\u0005\u083b",
+ "\u041e\u0002\u2e67\u2e69\u0005\u083d\u041f\u0002\u2e68\u2e65\u0003\u0002",
+ "\u0002\u0002\u2e68\u2e66\u0003\u0002\u0002\u0002\u2e68\u2e67\u0003\u0002",
+ "\u0002\u0002\u2e69\u081a\u0003\u0002\u0002\u0002\u2e6a\u2e6c\u0005\u0841",
+ "\u0421\u0002\u2e6b\u2e6a\u0003\u0002\u0002\u0002\u2e6c\u2e6d\u0003\u0002",
+ "\u0002\u0002\u2e6d\u2e6b\u0003\u0002\u0002\u0002\u2e6d\u2e6e\u0003\u0002",
+ "\u0002\u0002\u2e6e\u081c\u0003\u0002\u0002\u0002\u2e6f\u2e70\u0007Z",
+ "\u0002\u0002\u2e70\u2e74\u0007)\u0002\u0002\u2e71\u2e72\u0005\u083f",
+ "\u0420\u0002\u2e72\u2e73\u0005\u083f\u0420\u0002\u2e73\u2e75\u0003\u0002",
+ "\u0002\u0002\u2e74\u2e71\u0003\u0002\u0002\u0002\u2e75\u2e76\u0003\u0002",
+ "\u0002\u0002\u2e76\u2e74\u0003\u0002\u0002\u0002\u2e76\u2e77\u0003\u0002",
+ "\u0002\u0002\u2e77\u2e78\u0003\u0002\u0002\u0002\u2e78\u2e79\u0007)",
+ "\u0002\u0002\u2e79\u2e83\u0003\u0002\u0002\u0002\u2e7a\u2e7b\u00072",
+ "\u0002\u0002\u2e7b\u2e7c\u0007Z\u0002\u0002\u2e7c\u2e7e\u0003\u0002",
+ "\u0002\u0002\u2e7d\u2e7f\u0005\u083f\u0420\u0002\u2e7e\u2e7d\u0003\u0002",
+ "\u0002\u0002\u2e7f\u2e80\u0003\u0002\u0002\u0002\u2e80\u2e7e\u0003\u0002",
+ "\u0002\u0002\u2e80\u2e81\u0003\u0002\u0002\u0002\u2e81\u2e83\u0003\u0002",
+ "\u0002\u0002\u2e82\u2e6f\u0003\u0002\u0002\u0002\u2e82\u2e7a\u0003\u0002",
+ "\u0002\u0002\u2e83\u081e\u0003\u0002\u0002\u0002\u2e84\u2e86\u0005\u0841",
+ "\u0421\u0002\u2e85\u2e84\u0003\u0002\u0002\u0002\u2e86\u2e87\u0003\u0002",
+ "\u0002\u0002\u2e87\u2e85\u0003\u0002\u0002\u0002\u2e87\u2e88\u0003\u0002",
+ "\u0002\u0002\u2e88\u2e8a\u0003\u0002\u0002\u0002\u2e89\u2e85\u0003\u0002",
+ "\u0002\u0002\u2e89\u2e8a\u0003\u0002\u0002\u0002\u2e8a\u2e8b\u0003\u0002",
+ "\u0002\u0002\u2e8b\u2e8d\u00070\u0002\u0002\u2e8c\u2e8e\u0005\u0841",
+ "\u0421\u0002\u2e8d\u2e8c\u0003\u0002\u0002\u0002\u2e8e\u2e8f\u0003\u0002",
+ "\u0002\u0002\u2e8f\u2e8d\u0003\u0002\u0002\u0002\u2e8f\u2e90\u0003\u0002",
+ "\u0002\u0002\u2e90\u2eb0\u0003\u0002\u0002\u0002\u2e91\u2e93\u0005\u0841",
+ "\u0421\u0002\u2e92\u2e91\u0003\u0002\u0002\u0002\u2e93\u2e94\u0003\u0002",
+ "\u0002\u0002\u2e94\u2e92\u0003\u0002\u0002\u0002\u2e94\u2e95\u0003\u0002",
+ "\u0002\u0002\u2e95\u2e96\u0003\u0002\u0002\u0002\u2e96\u2e97\u00070",
+ "\u0002\u0002\u2e97\u2e98\u0005\u0835\u041b\u0002\u2e98\u2eb0\u0003\u0002",
+ "\u0002\u0002\u2e99\u2e9b\u0005\u0841\u0421\u0002\u2e9a\u2e99\u0003\u0002",
+ "\u0002\u0002\u2e9b\u2e9c\u0003\u0002\u0002\u0002\u2e9c\u2e9a\u0003\u0002",
+ "\u0002\u0002\u2e9c\u2e9d\u0003\u0002\u0002\u0002\u2e9d\u2e9f\u0003\u0002",
+ "\u0002\u0002\u2e9e\u2e9a\u0003\u0002\u0002\u0002\u2e9e\u2e9f\u0003\u0002",
+ "\u0002\u0002\u2e9f\u2ea0\u0003\u0002\u0002\u0002\u2ea0\u2ea2\u00070",
+ "\u0002\u0002\u2ea1\u2ea3\u0005\u0841\u0421\u0002\u2ea2\u2ea1\u0003\u0002",
+ "\u0002\u0002\u2ea3\u2ea4\u0003\u0002\u0002\u0002\u2ea4\u2ea2\u0003\u0002",
+ "\u0002\u0002\u2ea4\u2ea5\u0003\u0002\u0002\u0002\u2ea5\u2ea6\u0003\u0002",
+ "\u0002\u0002\u2ea6\u2ea7\u0005\u0835\u041b\u0002\u2ea7\u2eb0\u0003\u0002",
+ "\u0002\u0002\u2ea8\u2eaa\u0005\u0841\u0421\u0002\u2ea9\u2ea8\u0003\u0002",
+ "\u0002\u0002\u2eaa\u2eab\u0003\u0002\u0002\u0002\u2eab\u2ea9\u0003\u0002",
+ "\u0002\u0002\u2eab\u2eac\u0003\u0002\u0002\u0002\u2eac\u2ead\u0003\u0002",
+ "\u0002\u0002\u2ead\u2eae\u0005\u0835\u041b\u0002\u2eae\u2eb0\u0003\u0002",
+ "\u0002\u0002\u2eaf\u2e89\u0003\u0002\u0002\u0002\u2eaf\u2e92\u0003\u0002",
+ "\u0002\u0002\u2eaf\u2e9e\u0003\u0002\u0002\u0002\u2eaf\u2ea9\u0003\u0002",
+ "\u0002\u0002\u2eb0\u0820\u0003\u0002\u0002\u0002\u2eb1\u2eb2\u0007^",
+ "\u0002\u0002\u2eb2\u2eb3\u0007P\u0002\u0002\u2eb3\u0822\u0003\u0002",
+ "\u0002\u0002\u2eb4\u2eb5\u0005\u0843\u0422\u0002\u2eb5\u0824\u0003\u0002",
+ "\u0002\u0002\u2eb6\u2eb7\u0007a\u0002\u0002\u2eb7\u2eb8\u0005\u0833",
+ "\u041a\u0002\u2eb8\u0826\u0003\u0002\u0002\u0002\u2eb9\u2eba\u00070",
+ "\u0002\u0002\u2eba\u2ebb\u0005\u0837\u041c\u0002\u2ebb\u0828\u0003\u0002",
+ "\u0002\u0002\u2ebc\u2ebd\u0005\u0837\u041c\u0002\u2ebd\u082a\u0003\u0002",
+ "\u0002\u0002\u2ebe\u2ec0\u0007b\u0002\u0002\u2ebf\u2ec1\n\u0005\u0002",
+ "\u0002\u2ec0\u2ebf\u0003\u0002\u0002\u0002\u2ec1\u2ec2\u0003\u0002\u0002",
+ "\u0002\u2ec2\u2ec0\u0003\u0002\u0002\u0002\u2ec2\u2ec3\u0003\u0002\u0002",
+ "\u0002\u2ec3\u2ec4\u0003\u0002\u0002\u0002\u2ec4\u2ec5\u0007b\u0002",
+ "\u0002\u2ec5\u082c\u0003\u0002\u0002\u0002\u2ec6\u2ecb\u0005\u083b\u041e",
+ "\u0002\u2ec7\u2ecb\u0005\u0839\u041d\u0002\u2ec8\u2ecb\u0005\u083d\u041f",
+ "\u0002\u2ec9\u2ecb\u0005\u0837\u041c\u0002\u2eca\u2ec6\u0003\u0002\u0002",
+ "\u0002\u2eca\u2ec7\u0003\u0002\u0002\u0002\u2eca\u2ec8\u0003\u0002\u0002",
+ "\u0002\u2eca\u2ec9\u0003\u0002\u0002\u0002\u2ecb\u2ecc\u0003\u0002\u0002",
+ "\u0002\u2ecc\u2ed1\u0007B\u0002\u0002\u2ecd\u2ed2\u0005\u083b\u041e",
+ "\u0002\u2ece\u2ed2\u0005\u0839\u041d\u0002\u2ecf\u2ed2\u0005\u083d\u041f",
+ "\u0002\u2ed0\u2ed2\u0005\u0837\u041c\u0002\u2ed1\u2ecd\u0003\u0002\u0002",
+ "\u0002\u2ed1\u2ece\u0003\u0002\u0002\u0002\u2ed1\u2ecf\u0003\u0002\u0002",
+ "\u0002\u2ed1\u2ed0\u0003\u0002\u0002\u0002\u2ed2\u082e\u0003\u0002\u0002",
+ "\u0002\u2ed3\u2edc\u0007B\u0002\u0002\u2ed4\u2ed6\t\u0006\u0002\u0002",
+ "\u2ed5\u2ed4\u0003\u0002\u0002\u0002\u2ed6\u2ed7\u0003\u0002\u0002\u0002",
+ "\u2ed7\u2ed5\u0003\u0002\u0002\u0002\u2ed7\u2ed8\u0003\u0002\u0002\u0002",
+ "\u2ed8\u2edd\u0003\u0002\u0002\u0002\u2ed9\u2edd\u0005\u083b\u041e\u0002",
+ "\u2eda\u2edd\u0005\u0839\u041d\u0002\u2edb\u2edd\u0005\u083d\u041f\u0002",
+ "\u2edc\u2ed5\u0003\u0002\u0002\u0002\u2edc\u2ed9\u0003\u0002\u0002\u0002",
+ "\u2edc\u2eda\u0003\u0002\u0002\u0002\u2edc\u2edb\u0003\u0002\u0002\u0002",
+ "\u2edd\u0830\u0003\u0002\u0002\u0002\u2ede\u2edf\u0007B\u0002\u0002",
+ "\u2edf\u2ee6\u0007B\u0002\u0002\u2ee0\u2ee2\t\u0006\u0002\u0002\u2ee1",
+ "\u2ee0\u0003\u0002\u0002\u0002\u2ee2\u2ee3\u0003\u0002\u0002\u0002\u2ee3",
+ "\u2ee1\u0003\u0002\u0002\u0002\u2ee3\u2ee4\u0003\u0002\u0002\u0002\u2ee4",
+ "\u2ee7\u0003\u0002\u0002\u0002\u2ee5\u2ee7\u0005\u083d\u041f\u0002\u2ee6",
+ "\u2ee1\u0003\u0002\u0002\u0002\u2ee6\u2ee5\u0003\u0002\u0002\u0002\u2ee7",
+ "\u0832\u0003\u0002\u0002\u0002\u2ee8\u2f12\u0005\u04fb\u027e\u0002\u2ee9",
+ "\u2f12\u0005\u04fd\u027f\u0002\u2eea\u2f12\u0005\u04ff\u0280\u0002\u2eeb",
+ "\u2f12\u0005\u01a1\u00d1\u0002\u2eec\u2f12\u0005\u0501\u0281\u0002\u2eed",
+ "\u2f12\u0005\u0503\u0282\u0002\u2eee\u2f12\u0005\u0505\u0283\u0002\u2eef",
+ "\u2f12\u0005\u0507\u0284\u0002\u2ef0\u2f12\u0005\u0509\u0285\u0002\u2ef1",
+ "\u2f12\u0005\u050b\u0286\u0002\u2ef2\u2f12\u0005\u050d\u0287\u0002\u2ef3",
+ "\u2f12\u0005\u050f\u0288\u0002\u2ef4\u2f12\u0005\u0511\u0289\u0002\u2ef5",
+ "\u2f12\u0005\u0513\u028a\u0002\u2ef6\u2f12\u0005\u0515\u028b\u0002\u2ef7",
+ "\u2f12\u0005\u0517\u028c\u0002\u2ef8\u2f12\u0005\u0519\u028d\u0002\u2ef9",
+ "\u2f12\u0005\u051b\u028e\u0002\u2efa\u2f12\u0005\u051d\u028f\u0002\u2efb",
+ "\u2f12\u0005\u051f\u0290\u0002\u2efc\u2f12\u0005\u0521\u0291\u0002\u2efd",
+ "\u2f12\u0005\u0523\u0292\u0002\u2efe\u2f12\u0005\u0525\u0293\u0002\u2eff",
+ "\u2f12\u0005\u0527\u0294\u0002\u2f00\u2f12\u0005\u0529\u0295\u0002\u2f01",
+ "\u2f12\u0005\u052b\u0296\u0002\u2f02\u2f12\u0005\u052d\u0297\u0002\u2f03",
+ "\u2f12\u0005\u052f\u0298\u0002\u2f04\u2f12\u0005\u0531\u0299\u0002\u2f05",
+ "\u2f12\u0005\u0533\u029a\u0002\u2f06\u2f12\u0005\u0535\u029b\u0002\u2f07",
+ "\u2f12\u0005\u0537\u029c\u0002\u2f08\u2f12\u0005\u0539\u029d\u0002\u2f09",
+ "\u2f12\u0005\u053b\u029e\u0002\u2f0a\u2f12\u0005\u053d\u029f\u0002\u2f0b",
+ "\u2f12\u0005\u053f\u02a0\u0002\u2f0c\u2f12\u0005\u0541\u02a1\u0002\u2f0d",
+ "\u2f12\u0005\u0543\u02a2\u0002\u2f0e\u2f12\u0005\u0545\u02a3\u0002\u2f0f",
+ "\u2f12\u0005\u0547\u02a4\u0002\u2f10\u2f12\u0005\u0549\u02a5\u0002\u2f11",
+ "\u2ee8\u0003\u0002\u0002\u0002\u2f11\u2ee9\u0003\u0002\u0002\u0002\u2f11",
+ "\u2eea\u0003\u0002\u0002\u0002\u2f11\u2eeb\u0003\u0002\u0002\u0002\u2f11",
+ "\u2eec\u0003\u0002\u0002\u0002\u2f11\u2eed\u0003\u0002\u0002\u0002\u2f11",
+ "\u2eee\u0003\u0002\u0002\u0002\u2f11\u2eef\u0003\u0002\u0002\u0002\u2f11",
+ "\u2ef0\u0003\u0002\u0002\u0002\u2f11\u2ef1\u0003\u0002\u0002\u0002\u2f11",
+ "\u2ef2\u0003\u0002\u0002\u0002\u2f11\u2ef3\u0003\u0002\u0002\u0002\u2f11",
+ "\u2ef4\u0003\u0002\u0002\u0002\u2f11\u2ef5\u0003\u0002\u0002\u0002\u2f11",
+ "\u2ef6\u0003\u0002\u0002\u0002\u2f11\u2ef7\u0003\u0002\u0002\u0002\u2f11",
+ "\u2ef8\u0003\u0002\u0002\u0002\u2f11\u2ef9\u0003\u0002\u0002\u0002\u2f11",
+ "\u2efa\u0003\u0002\u0002\u0002\u2f11\u2efb\u0003\u0002\u0002\u0002\u2f11",
+ "\u2efc\u0003\u0002\u0002\u0002\u2f11\u2efd\u0003\u0002\u0002\u0002\u2f11",
+ "\u2efe\u0003\u0002\u0002\u0002\u2f11\u2eff\u0003\u0002\u0002\u0002\u2f11",
+ "\u2f00\u0003\u0002\u0002\u0002\u2f11\u2f01\u0003\u0002\u0002\u0002\u2f11",
+ "\u2f02\u0003\u0002\u0002\u0002\u2f11\u2f03\u0003\u0002\u0002\u0002\u2f11",
+ "\u2f04\u0003\u0002\u0002\u0002\u2f11\u2f05\u0003\u0002\u0002\u0002\u2f11",
+ "\u2f06\u0003\u0002\u0002\u0002\u2f11\u2f07\u0003\u0002\u0002\u0002\u2f11",
+ "\u2f08\u0003\u0002\u0002\u0002\u2f11\u2f09\u0003\u0002\u0002\u0002\u2f11",
+ "\u2f0a\u0003\u0002\u0002\u0002\u2f11\u2f0b\u0003\u0002\u0002\u0002\u2f11",
+ "\u2f0c\u0003\u0002\u0002\u0002\u2f11\u2f0d\u0003\u0002\u0002\u0002\u2f11",
+ "\u2f0e\u0003\u0002\u0002\u0002\u2f11\u2f0f\u0003\u0002\u0002\u0002\u2f11",
+ "\u2f10\u0003\u0002\u0002\u0002\u2f12\u0834\u0003\u0002\u0002\u0002\u2f13",
+ "\u2f15\u0007G\u0002\u0002\u2f14\u2f16\t\u0007\u0002\u0002\u2f15\u2f14",
+ "\u0003\u0002\u0002\u0002\u2f15\u2f16\u0003\u0002\u0002\u0002\u2f16\u2f18",
+ "\u0003\u0002\u0002\u0002\u2f17\u2f19\u0005\u0841\u0421\u0002\u2f18\u2f17",
+ "\u0003\u0002\u0002\u0002\u2f19\u2f1a\u0003\u0002\u0002\u0002\u2f1a\u2f18",
+ "\u0003\u0002\u0002\u0002\u2f1a\u2f1b\u0003\u0002\u0002\u0002\u2f1b\u0836",
+ "\u0003\u0002\u0002\u0002\u2f1c\u2f1e\t\b\u0002\u0002\u2f1d\u2f1c\u0003",
+ "\u0002\u0002\u0002\u2f1e\u2f21\u0003\u0002\u0002\u0002\u2f1f\u2f20\u0003",
+ "\u0002\u0002\u0002\u2f1f\u2f1d\u0003\u0002\u0002\u0002\u2f20\u2f23\u0003",
+ "\u0002\u0002\u0002\u2f21\u2f1f\u0003\u0002\u0002\u0002\u2f22\u2f24\t",
+ "\t\u0002\u0002\u2f23\u2f22\u0003\u0002\u0002\u0002\u2f24\u2f25\u0003",
+ "\u0002\u0002\u0002\u2f25\u2f26\u0003\u0002\u0002\u0002\u2f25\u2f23\u0003",
+ "\u0002\u0002\u0002\u2f26\u2f2a\u0003\u0002\u0002\u0002\u2f27\u2f29\t",
+ "\b\u0002\u0002\u2f28\u2f27\u0003\u0002\u0002\u0002\u2f29\u2f2c\u0003",
+ "\u0002\u0002\u0002\u2f2a\u2f28\u0003\u0002\u0002\u0002\u2f2a\u2f2b\u0003",
+ "\u0002\u0002\u0002\u2f2b\u0838\u0003\u0002\u0002\u0002\u2f2c\u2f2a\u0003",
+ "\u0002\u0002\u0002\u2f2d\u2f35\u0007$\u0002\u0002\u2f2e\u2f2f\u0007",
+ "^\u0002\u0002\u2f2f\u2f34\u000b\u0002\u0002\u0002\u2f30\u2f31\u0007",
+ "$\u0002\u0002\u2f31\u2f34\u0007$\u0002\u0002\u2f32\u2f34\n\n\u0002\u0002",
+ "\u2f33\u2f2e\u0003\u0002\u0002\u0002\u2f33\u2f30\u0003\u0002\u0002\u0002",
+ "\u2f33\u2f32\u0003\u0002\u0002\u0002\u2f34\u2f37\u0003\u0002\u0002\u0002",
+ "\u2f35\u2f33\u0003\u0002\u0002\u0002\u2f35\u2f36\u0003\u0002\u0002\u0002",
+ "\u2f36\u2f38\u0003\u0002\u0002\u0002\u2f37\u2f35\u0003\u0002\u0002\u0002",
+ "\u2f38\u2f39\u0007$\u0002\u0002\u2f39\u083a\u0003\u0002\u0002\u0002",
+ "\u2f3a\u2f42\u0007)\u0002\u0002\u2f3b\u2f3c\u0007^\u0002\u0002\u2f3c",
+ "\u2f41\u000b\u0002\u0002\u0002\u2f3d\u2f3e\u0007)\u0002\u0002\u2f3e",
+ "\u2f41\u0007)\u0002\u0002\u2f3f\u2f41\n\u000b\u0002\u0002\u2f40\u2f3b",
+ "\u0003\u0002\u0002\u0002\u2f40\u2f3d\u0003\u0002\u0002\u0002\u2f40\u2f3f",
+ "\u0003\u0002\u0002\u0002\u2f41\u2f44\u0003\u0002\u0002\u0002\u2f42\u2f40",
+ "\u0003\u0002\u0002\u0002\u2f42\u2f43\u0003\u0002\u0002\u0002\u2f43\u2f45",
+ "\u0003\u0002\u0002\u0002\u2f44\u2f42\u0003\u0002\u0002\u0002\u2f45\u2f46",
+ "\u0007)\u0002\u0002\u2f46\u083c\u0003\u0002\u0002\u0002\u2f47\u2f4f",
+ "\u0007b\u0002\u0002\u2f48\u2f49\u0007^\u0002\u0002\u2f49\u2f4e\u000b",
+ "\u0002\u0002\u0002\u2f4a\u2f4b\u0007b\u0002\u0002\u2f4b\u2f4e\u0007",
+ "b\u0002\u0002\u2f4c\u2f4e\n\f\u0002\u0002\u2f4d\u2f48\u0003\u0002\u0002",
+ "\u0002\u2f4d\u2f4a\u0003\u0002\u0002\u0002\u2f4d\u2f4c\u0003\u0002\u0002",
+ "\u0002\u2f4e\u2f51\u0003\u0002\u0002\u0002\u2f4f\u2f4d\u0003\u0002\u0002",
+ "\u0002\u2f4f\u2f50\u0003\u0002\u0002\u0002\u2f50\u2f52\u0003\u0002\u0002",
+ "\u0002\u2f51\u2f4f\u0003\u0002\u0002\u0002\u2f52\u2f53\u0007b\u0002",
+ "\u0002\u2f53\u083e\u0003\u0002\u0002\u0002\u2f54\u2f55\t\r\u0002\u0002",
+ "\u2f55\u0840\u0003\u0002\u0002\u0002\u2f56\u2f57\t\u000e\u0002\u0002",
+ "\u2f57\u0842\u0003\u0002\u0002\u0002\u2f58\u2f59\u0007D\u0002\u0002",
+ "\u2f59\u2f5b\u0007)\u0002\u0002\u2f5a\u2f5c\t\u000f\u0002\u0002\u2f5b",
+ "\u2f5a\u0003\u0002\u0002\u0002\u2f5c\u2f5d\u0003\u0002\u0002\u0002\u2f5d",
+ "\u2f5b\u0003\u0002\u0002\u0002\u2f5d\u2f5e\u0003\u0002\u0002\u0002\u2f5e",
+ "\u2f5f\u0003\u0002\u0002\u0002\u2f5f\u2f60\u0007)\u0002\u0002\u2f60",
+ "\u0844\u0003\u0002\u0002\u0002\u2f61\u2f62\u000b\u0002\u0002\u0002\u2f62",
+ "\u2f63\u0003\u0002\u0002\u0002\u2f63\u2f64\b\u0423\u0004\u0002\u2f64",
+ "\u0846\u0003\u0002\u0002\u00023\u0002\u084a\u0855\u0862\u086e\u0873",
+ "\u0877\u087b\u0881\u0885\u0887\u1e77\u1e92\u2e55\u2e5e\u2e68\u2e6d\u2e76",
+ "\u2e80\u2e82\u2e87\u2e89\u2e8f\u2e94\u2e9c\u2e9e\u2ea4\u2eab\u2eaf\u2ec2",
+ "\u2eca\u2ed1\u2ed7\u2edc\u2ee3\u2ee6\u2f11\u2f15\u2f1a\u2f1f\u2f25\u2f2a",
+ "\u2f33\u2f35\u2f40\u2f42\u2f4d\u2f4f\u2f5d\u0005\u0002\u0003\u0002\u0002",
+ "\u0004\u0002\u0002\u0005\u0002"].join("");
+
+
+var atn = new antlr4.atn.ATNDeserializer().deserialize(serializedATN);
+
+var decisionsToDFA = atn.decisionToState.map( function(ds, index) { return new antlr4.dfa.DFA(ds, index); });
+
+function SqlLexer(input) {
+ antlr4.Lexer.call(this, input);
+ this._interp = new antlr4.atn.LexerATNSimulator(this, atn, decisionsToDFA, new antlr4.PredictionContextCache());
+ return this;
+}
+
+SqlLexer.prototype = Object.create(antlr4.Lexer.prototype);
+SqlLexer.prototype.constructor = SqlLexer;
+
+Object.defineProperty(SqlLexer.prototype, "atn", {
+ get : function() {
+ return atn;
+ }
+});
+
+SqlLexer.EOF = antlr4.Token.EOF;
+SqlLexer.SPACE = 1;
+SqlLexer.SPEC_MYSQL_COMMENT = 2;
+SqlLexer.COMMENT_INPUT = 3;
+SqlLexer.LINE_COMMENT = 4;
+SqlLexer.ADD = 5;
+SqlLexer.ALL = 6;
+SqlLexer.ALTER = 7;
+SqlLexer.ALWAYS = 8;
+SqlLexer.ANALYZE = 9;
+SqlLexer.AND = 10;
+SqlLexer.AS = 11;
+SqlLexer.ASC = 12;
+SqlLexer.BEFORE = 13;
+SqlLexer.BETWEEN = 14;
+SqlLexer.BOTH = 15;
+SqlLexer.BY = 16;
+SqlLexer.CALL = 17;
+SqlLexer.CASCADE = 18;
+SqlLexer.CASE = 19;
+SqlLexer.CAST = 20;
+SqlLexer.CHANGE = 21;
+SqlLexer.CHARACTER = 22;
+SqlLexer.CHECK = 23;
+SqlLexer.COLLATE = 24;
+SqlLexer.COLUMN = 25;
+SqlLexer.CONDITION = 26;
+SqlLexer.CONSTRAINT = 27;
+SqlLexer.CONTINUE = 28;
+SqlLexer.CONVERT = 29;
+SqlLexer.CREATE = 30;
+SqlLexer.CROSS = 31;
+SqlLexer.CURRENT = 32;
+SqlLexer.CURRENT_USER = 33;
+SqlLexer.CURSOR = 34;
+SqlLexer.DATABASE = 35;
+SqlLexer.DATABASES = 36;
+SqlLexer.DECLARE = 37;
+SqlLexer.DEFAULT = 38;
+SqlLexer.DELAYED = 39;
+SqlLexer.DELETE = 40;
+SqlLexer.DESC = 41;
+SqlLexer.DESCRIBE = 42;
+SqlLexer.DETERMINISTIC = 43;
+SqlLexer.DIAGNOSTICS = 44;
+SqlLexer.DISTINCT = 45;
+SqlLexer.DISTINCTROW = 46;
+SqlLexer.DROP = 47;
+SqlLexer.EACH = 48;
+SqlLexer.ELSE = 49;
+SqlLexer.ELSEIF = 50;
+SqlLexer.ENCLOSED = 51;
+SqlLexer.ESCAPED = 52;
+SqlLexer.EXISTS = 53;
+SqlLexer.EXIT = 54;
+SqlLexer.EXPLAIN = 55;
+SqlLexer.FALSE = 56;
+SqlLexer.FETCH = 57;
+SqlLexer.FOR = 58;
+SqlLexer.FORCE = 59;
+SqlLexer.FOREIGN = 60;
+SqlLexer.FROM = 61;
+SqlLexer.FULLTEXT = 62;
+SqlLexer.GENERATED = 63;
+SqlLexer.GET = 64;
+SqlLexer.GRANT = 65;
+SqlLexer.GROUP = 66;
+SqlLexer.HAVING = 67;
+SqlLexer.HIGH_PRIORITY = 68;
+SqlLexer.IF = 69;
+SqlLexer.IGNORE = 70;
+SqlLexer.IN = 71;
+SqlLexer.INDEX = 72;
+SqlLexer.INFILE = 73;
+SqlLexer.INNER = 74;
+SqlLexer.INOUT = 75;
+SqlLexer.INSERT = 76;
+SqlLexer.INTERVAL = 77;
+SqlLexer.INTO = 78;
+SqlLexer.IS = 79;
+SqlLexer.ITERATE = 80;
+SqlLexer.JOIN = 81;
+SqlLexer.KEY = 82;
+SqlLexer.KEYS = 83;
+SqlLexer.KILL = 84;
+SqlLexer.LEADING = 85;
+SqlLexer.LEAVE = 86;
+SqlLexer.LEFT = 87;
+SqlLexer.LIKE = 88;
+SqlLexer.LIMIT = 89;
+SqlLexer.LINEAR = 90;
+SqlLexer.LINES = 91;
+SqlLexer.LOAD = 92;
+SqlLexer.LOCK = 93;
+SqlLexer.LOOP = 94;
+SqlLexer.LOW_PRIORITY = 95;
+SqlLexer.MASTER_BIND = 96;
+SqlLexer.MASTER_SSL_VERIFY_SERVER_CERT = 97;
+SqlLexer.MATCH = 98;
+SqlLexer.MAXVALUE = 99;
+SqlLexer.MODIFIES = 100;
+SqlLexer.NATURAL = 101;
+SqlLexer.NOT = 102;
+SqlLexer.NO_WRITE_TO_BINLOG = 103;
+SqlLexer.NULL_LITERAL = 104;
+SqlLexer.NUMBER = 105;
+SqlLexer.ON = 106;
+SqlLexer.OPTIMIZE = 107;
+SqlLexer.OPTION = 108;
+SqlLexer.OPTIONALLY = 109;
+SqlLexer.OR = 110;
+SqlLexer.ORDER = 111;
+SqlLexer.OUT = 112;
+SqlLexer.OUTER = 113;
+SqlLexer.OUTFILE = 114;
+SqlLexer.PARTITION = 115;
+SqlLexer.PRIMARY = 116;
+SqlLexer.PROCEDURE = 117;
+SqlLexer.PURGE = 118;
+SqlLexer.RANGE = 119;
+SqlLexer.READ = 120;
+SqlLexer.READS = 121;
+SqlLexer.REFERENCES = 122;
+SqlLexer.REGEXP = 123;
+SqlLexer.RELEASE = 124;
+SqlLexer.RENAME = 125;
+SqlLexer.REPEAT = 126;
+SqlLexer.REPLACE = 127;
+SqlLexer.REQUIRE = 128;
+SqlLexer.RESIGNAL = 129;
+SqlLexer.RESTRICT = 130;
+SqlLexer.RETURN = 131;
+SqlLexer.REVOKE = 132;
+SqlLexer.RIGHT = 133;
+SqlLexer.RLIKE = 134;
+SqlLexer.SCHEMA = 135;
+SqlLexer.SCHEMAS = 136;
+SqlLexer.SELECT = 137;
+SqlLexer.SET = 138;
+SqlLexer.SEPARATOR = 139;
+SqlLexer.SHOW = 140;
+SqlLexer.SIGNAL = 141;
+SqlLexer.SPATIAL = 142;
+SqlLexer.SQL = 143;
+SqlLexer.SQLEXCEPTION = 144;
+SqlLexer.SQLSTATE = 145;
+SqlLexer.SQLWARNING = 146;
+SqlLexer.SQL_BIG_RESULT = 147;
+SqlLexer.SQL_CALC_FOUND_ROWS = 148;
+SqlLexer.SQL_SMALL_RESULT = 149;
+SqlLexer.SSL = 150;
+SqlLexer.STACKED = 151;
+SqlLexer.STARTING = 152;
+SqlLexer.STRAIGHT_JOIN = 153;
+SqlLexer.TABLE = 154;
+SqlLexer.TERMINATED = 155;
+SqlLexer.THEN = 156;
+SqlLexer.TO = 157;
+SqlLexer.TRAILING = 158;
+SqlLexer.TRIGGER = 159;
+SqlLexer.TRUE = 160;
+SqlLexer.UNDO = 161;
+SqlLexer.UNION = 162;
+SqlLexer.UNIQUE = 163;
+SqlLexer.UNLOCK = 164;
+SqlLexer.UNSIGNED = 165;
+SqlLexer.UPDATE = 166;
+SqlLexer.USAGE = 167;
+SqlLexer.USE = 168;
+SqlLexer.USING = 169;
+SqlLexer.VALUES = 170;
+SqlLexer.WHEN = 171;
+SqlLexer.WHERE = 172;
+SqlLexer.WHILE = 173;
+SqlLexer.WITH = 174;
+SqlLexer.WRITE = 175;
+SqlLexer.XOR = 176;
+SqlLexer.ZEROFILL = 177;
+SqlLexer.TINYINT = 178;
+SqlLexer.SMALLINT = 179;
+SqlLexer.MEDIUMINT = 180;
+SqlLexer.MIDDLEINT = 181;
+SqlLexer.INT = 182;
+SqlLexer.INT1 = 183;
+SqlLexer.INT2 = 184;
+SqlLexer.INT3 = 185;
+SqlLexer.INT4 = 186;
+SqlLexer.INT8 = 187;
+SqlLexer.INTEGER = 188;
+SqlLexer.BIGINT = 189;
+SqlLexer.REAL = 190;
+SqlLexer.DOUBLE = 191;
+SqlLexer.PRECISION = 192;
+SqlLexer.FLOAT = 193;
+SqlLexer.FLOAT4 = 194;
+SqlLexer.FLOAT8 = 195;
+SqlLexer.DECIMAL = 196;
+SqlLexer.DEC = 197;
+SqlLexer.NUMERIC = 198;
+SqlLexer.DATE = 199;
+SqlLexer.TIME = 200;
+SqlLexer.TIMESTAMP = 201;
+SqlLexer.DATETIME = 202;
+SqlLexer.YEAR = 203;
+SqlLexer.CHAR = 204;
+SqlLexer.VARCHAR = 205;
+SqlLexer.NVARCHAR = 206;
+SqlLexer.NATIONAL = 207;
+SqlLexer.BINARY = 208;
+SqlLexer.VARBINARY = 209;
+SqlLexer.TINYBLOB = 210;
+SqlLexer.BLOB = 211;
+SqlLexer.MEDIUMBLOB = 212;
+SqlLexer.LONG = 213;
+SqlLexer.LONGBLOB = 214;
+SqlLexer.TINYTEXT = 215;
+SqlLexer.TEXT = 216;
+SqlLexer.MEDIUMTEXT = 217;
+SqlLexer.LONGTEXT = 218;
+SqlLexer.ENUM = 219;
+SqlLexer.VARYING = 220;
+SqlLexer.SERIAL = 221;
+SqlLexer.YEAR_MONTH = 222;
+SqlLexer.DAY_HOUR = 223;
+SqlLexer.DAY_MINUTE = 224;
+SqlLexer.DAY_SECOND = 225;
+SqlLexer.HOUR_MINUTE = 226;
+SqlLexer.HOUR_SECOND = 227;
+SqlLexer.MINUTE_SECOND = 228;
+SqlLexer.SECOND_MICROSECOND = 229;
+SqlLexer.MINUTE_MICROSECOND = 230;
+SqlLexer.HOUR_MICROSECOND = 231;
+SqlLexer.DAY_MICROSECOND = 232;
+SqlLexer.JSON_VALID = 233;
+SqlLexer.JSON_SCHEMA_VALID = 234;
+SqlLexer.AVG = 235;
+SqlLexer.BIT_AND = 236;
+SqlLexer.BIT_OR = 237;
+SqlLexer.BIT_XOR = 238;
+SqlLexer.COUNT = 239;
+SqlLexer.GROUP_CONCAT = 240;
+SqlLexer.MAX = 241;
+SqlLexer.MIN = 242;
+SqlLexer.STD = 243;
+SqlLexer.STDDEV = 244;
+SqlLexer.STDDEV_POP = 245;
+SqlLexer.STDDEV_SAMP = 246;
+SqlLexer.SUM = 247;
+SqlLexer.VAR_POP = 248;
+SqlLexer.VAR_SAMP = 249;
+SqlLexer.VARIANCE = 250;
+SqlLexer.CURRENT_DATE = 251;
+SqlLexer.CURRENT_TIME = 252;
+SqlLexer.CURRENT_TIMESTAMP = 253;
+SqlLexer.LOCALTIME = 254;
+SqlLexer.CURDATE = 255;
+SqlLexer.CURTIME = 256;
+SqlLexer.DATE_ADD = 257;
+SqlLexer.DATE_SUB = 258;
+SqlLexer.EXTRACT = 259;
+SqlLexer.LOCALTIMESTAMP = 260;
+SqlLexer.NOW = 261;
+SqlLexer.POSITION = 262;
+SqlLexer.SUBSTR = 263;
+SqlLexer.SUBSTRING = 264;
+SqlLexer.SYSDATE = 265;
+SqlLexer.TRIM = 266;
+SqlLexer.UTC_DATE = 267;
+SqlLexer.UTC_TIME = 268;
+SqlLexer.UTC_TIMESTAMP = 269;
+SqlLexer.ACCOUNT = 270;
+SqlLexer.ACTION = 271;
+SqlLexer.AFTER = 272;
+SqlLexer.AGGREGATE = 273;
+SqlLexer.ALGORITHM = 274;
+SqlLexer.ANY = 275;
+SqlLexer.AT = 276;
+SqlLexer.AUTHORS = 277;
+SqlLexer.AUTOCOMMIT = 278;
+SqlLexer.AUTOEXTEND_SIZE = 279;
+SqlLexer.AUTO_INCREMENT = 280;
+SqlLexer.AVG_ROW_LENGTH = 281;
+SqlLexer.BEGIN = 282;
+SqlLexer.BINLOG = 283;
+SqlLexer.BIT = 284;
+SqlLexer.BLOCK = 285;
+SqlLexer.BOOL = 286;
+SqlLexer.BOOLEAN = 287;
+SqlLexer.BTREE = 288;
+SqlLexer.CACHE = 289;
+SqlLexer.CASCADED = 290;
+SqlLexer.CHAIN = 291;
+SqlLexer.CHANGED = 292;
+SqlLexer.CHANNEL = 293;
+SqlLexer.CHECKSUM = 294;
+SqlLexer.PAGE_CHECKSUM = 295;
+SqlLexer.CIPHER = 296;
+SqlLexer.CLASS_ORIGIN = 297;
+SqlLexer.CLIENT = 298;
+SqlLexer.CLOSE = 299;
+SqlLexer.COALESCE = 300;
+SqlLexer.CODE = 301;
+SqlLexer.COLUMNS = 302;
+SqlLexer.COLUMN_FORMAT = 303;
+SqlLexer.COLUMN_NAME = 304;
+SqlLexer.COMMENT = 305;
+SqlLexer.COMMIT = 306;
+SqlLexer.COMPACT = 307;
+SqlLexer.COMPLETION = 308;
+SqlLexer.COMPRESSED = 309;
+SqlLexer.COMPRESSION = 310;
+SqlLexer.CONCURRENT = 311;
+SqlLexer.CONNECTION = 312;
+SqlLexer.CONSISTENT = 313;
+SqlLexer.CONSTRAINT_CATALOG = 314;
+SqlLexer.CONSTRAINT_SCHEMA = 315;
+SqlLexer.CONSTRAINT_NAME = 316;
+SqlLexer.CONTAINS = 317;
+SqlLexer.CONTEXT = 318;
+SqlLexer.CONTRIBUTORS = 319;
+SqlLexer.COPY = 320;
+SqlLexer.CPU = 321;
+SqlLexer.CURSOR_NAME = 322;
+SqlLexer.DATA = 323;
+SqlLexer.DATAFILE = 324;
+SqlLexer.DEALLOCATE = 325;
+SqlLexer.DEFAULT_AUTH = 326;
+SqlLexer.DEFINER = 327;
+SqlLexer.DELAY_KEY_WRITE = 328;
+SqlLexer.DES_KEY_FILE = 329;
+SqlLexer.DIRECTORY = 330;
+SqlLexer.DISABLE = 331;
+SqlLexer.DISCARD = 332;
+SqlLexer.DISK = 333;
+SqlLexer.DO = 334;
+SqlLexer.DUMPFILE = 335;
+SqlLexer.DUPLICATE = 336;
+SqlLexer.DYNAMIC = 337;
+SqlLexer.ENABLE = 338;
+SqlLexer.ENCRYPTION = 339;
+SqlLexer.END = 340;
+SqlLexer.ENDS = 341;
+SqlLexer.ENGINE = 342;
+SqlLexer.ENGINES = 343;
+SqlLexer.ERROR = 344;
+SqlLexer.ERRORS = 345;
+SqlLexer.ESCAPE = 346;
+SqlLexer.EVEN = 347;
+SqlLexer.EVENT = 348;
+SqlLexer.EVENTS = 349;
+SqlLexer.EVERY = 350;
+SqlLexer.EXCHANGE = 351;
+SqlLexer.EXCLUSIVE = 352;
+SqlLexer.EXPIRE = 353;
+SqlLexer.EXPORT = 354;
+SqlLexer.EXTENDED = 355;
+SqlLexer.EXTENT_SIZE = 356;
+SqlLexer.FAST = 357;
+SqlLexer.FAULTS = 358;
+SqlLexer.FIELDS = 359;
+SqlLexer.FILE_BLOCK_SIZE = 360;
+SqlLexer.FILTER = 361;
+SqlLexer.FIRST = 362;
+SqlLexer.FIXED = 363;
+SqlLexer.FLUSH = 364;
+SqlLexer.FOLLOWS = 365;
+SqlLexer.FOUND = 366;
+SqlLexer.FULL = 367;
+SqlLexer.FUNCTION = 368;
+SqlLexer.GENERAL = 369;
+SqlLexer.GLOBAL = 370;
+SqlLexer.GRANTS = 371;
+SqlLexer.GROUP_REPLICATION = 372;
+SqlLexer.HANDLER = 373;
+SqlLexer.HASH = 374;
+SqlLexer.HELP = 375;
+SqlLexer.HOST = 376;
+SqlLexer.HOSTS = 377;
+SqlLexer.IDENTIFIED = 378;
+SqlLexer.IGNORE_SERVER_IDS = 379;
+SqlLexer.IMPORT = 380;
+SqlLexer.INDEXES = 381;
+SqlLexer.INITIAL_SIZE = 382;
+SqlLexer.INPLACE = 383;
+SqlLexer.INSERT_METHOD = 384;
+SqlLexer.INSTALL = 385;
+SqlLexer.INSTANCE = 386;
+SqlLexer.INVISIBLE = 387;
+SqlLexer.INVOKER = 388;
+SqlLexer.IO = 389;
+SqlLexer.IO_THREAD = 390;
+SqlLexer.IPC = 391;
+SqlLexer.ISOLATION = 392;
+SqlLexer.ISSUER = 393;
+SqlLexer.JSON = 394;
+SqlLexer.KEY_BLOCK_SIZE = 395;
+SqlLexer.LANGUAGE = 396;
+SqlLexer.LAST = 397;
+SqlLexer.LEAVES = 398;
+SqlLexer.LESS = 399;
+SqlLexer.LEVEL = 400;
+SqlLexer.LIST = 401;
+SqlLexer.LOCAL = 402;
+SqlLexer.LOGFILE = 403;
+SqlLexer.LOGS = 404;
+SqlLexer.MASTER = 405;
+SqlLexer.MASTER_AUTO_POSITION = 406;
+SqlLexer.MASTER_CONNECT_RETRY = 407;
+SqlLexer.MASTER_DELAY = 408;
+SqlLexer.MASTER_HEARTBEAT_PERIOD = 409;
+SqlLexer.MASTER_HOST = 410;
+SqlLexer.MASTER_LOG_FILE = 411;
+SqlLexer.MASTER_LOG_POS = 412;
+SqlLexer.MASTER_PASSWORD = 413;
+SqlLexer.MASTER_PORT = 414;
+SqlLexer.MASTER_RETRY_COUNT = 415;
+SqlLexer.MASTER_SSL = 416;
+SqlLexer.MASTER_SSL_CA = 417;
+SqlLexer.MASTER_SSL_CAPATH = 418;
+SqlLexer.MASTER_SSL_CERT = 419;
+SqlLexer.MASTER_SSL_CIPHER = 420;
+SqlLexer.MASTER_SSL_CRL = 421;
+SqlLexer.MASTER_SSL_CRLPATH = 422;
+SqlLexer.MASTER_SSL_KEY = 423;
+SqlLexer.MASTER_TLS_VERSION = 424;
+SqlLexer.MASTER_USER = 425;
+SqlLexer.MAX_CONNECTIONS_PER_HOUR = 426;
+SqlLexer.MAX_QUERIES_PER_HOUR = 427;
+SqlLexer.MAX_ROWS = 428;
+SqlLexer.MAX_SIZE = 429;
+SqlLexer.MAX_UPDATES_PER_HOUR = 430;
+SqlLexer.MAX_USER_CONNECTIONS = 431;
+SqlLexer.MEDIUM = 432;
+SqlLexer.MERGE = 433;
+SqlLexer.MESSAGE_TEXT = 434;
+SqlLexer.MID = 435;
+SqlLexer.MIGRATE = 436;
+SqlLexer.MIN_ROWS = 437;
+SqlLexer.MODE = 438;
+SqlLexer.MODIFY = 439;
+SqlLexer.MUTEX = 440;
+SqlLexer.MYSQL = 441;
+SqlLexer.MYSQL_ERRNO = 442;
+SqlLexer.NAME = 443;
+SqlLexer.NAMES = 444;
+SqlLexer.NCHAR = 445;
+SqlLexer.NEVER = 446;
+SqlLexer.NEXT = 447;
+SqlLexer.NO = 448;
+SqlLexer.NODEGROUP = 449;
+SqlLexer.NONE = 450;
+SqlLexer.OFFLINE = 451;
+SqlLexer.OFFSET = 452;
+SqlLexer.OJ = 453;
+SqlLexer.OLD_PASSWORD = 454;
+SqlLexer.ONE = 455;
+SqlLexer.ONLINE = 456;
+SqlLexer.ONLY = 457;
+SqlLexer.OPEN = 458;
+SqlLexer.OPTIMIZER_COSTS = 459;
+SqlLexer.OPTIONS = 460;
+SqlLexer.OWNER = 461;
+SqlLexer.PACK_KEYS = 462;
+SqlLexer.PAGE = 463;
+SqlLexer.PARSER = 464;
+SqlLexer.PARTIAL = 465;
+SqlLexer.PARTITIONING = 466;
+SqlLexer.PARTITIONS = 467;
+SqlLexer.PASSWORD = 468;
+SqlLexer.PHASE = 469;
+SqlLexer.PLUGIN = 470;
+SqlLexer.PLUGIN_DIR = 471;
+SqlLexer.PLUGINS = 472;
+SqlLexer.PORT = 473;
+SqlLexer.PRECEDES = 474;
+SqlLexer.PREPARE = 475;
+SqlLexer.PRESERVE = 476;
+SqlLexer.PREV = 477;
+SqlLexer.PROCESSLIST = 478;
+SqlLexer.PROFILE = 479;
+SqlLexer.PROFILES = 480;
+SqlLexer.PROXY = 481;
+SqlLexer.QUERY = 482;
+SqlLexer.QUICK = 483;
+SqlLexer.REBUILD = 484;
+SqlLexer.RECOVER = 485;
+SqlLexer.REDO_BUFFER_SIZE = 486;
+SqlLexer.REDUNDANT = 487;
+SqlLexer.RELAY = 488;
+SqlLexer.RELAY_LOG_FILE = 489;
+SqlLexer.RELAY_LOG_POS = 490;
+SqlLexer.RELAYLOG = 491;
+SqlLexer.REMOVE = 492;
+SqlLexer.REORGANIZE = 493;
+SqlLexer.REPAIR = 494;
+SqlLexer.REPLICATE_DO_DB = 495;
+SqlLexer.REPLICATE_DO_TABLE = 496;
+SqlLexer.REPLICATE_IGNORE_DB = 497;
+SqlLexer.REPLICATE_IGNORE_TABLE = 498;
+SqlLexer.REPLICATE_REWRITE_DB = 499;
+SqlLexer.REPLICATE_WILD_DO_TABLE = 500;
+SqlLexer.REPLICATE_WILD_IGNORE_TABLE = 501;
+SqlLexer.REPLICATION = 502;
+SqlLexer.RESET = 503;
+SqlLexer.RESUME = 504;
+SqlLexer.RETURNED_SQLSTATE = 505;
+SqlLexer.RETURNS = 506;
+SqlLexer.ROLE = 507;
+SqlLexer.ROLLBACK = 508;
+SqlLexer.ROLLUP = 509;
+SqlLexer.ROTATE = 510;
+SqlLexer.ROW = 511;
+SqlLexer.ROWS = 512;
+SqlLexer.ROW_FORMAT = 513;
+SqlLexer.SAVEPOINT = 514;
+SqlLexer.SCHEDULE = 515;
+SqlLexer.SECURITY = 516;
+SqlLexer.SERVER = 517;
+SqlLexer.SESSION = 518;
+SqlLexer.SHARE = 519;
+SqlLexer.SHARED = 520;
+SqlLexer.SIGNED = 521;
+SqlLexer.SIMPLE = 522;
+SqlLexer.SLAVE = 523;
+SqlLexer.SLOW = 524;
+SqlLexer.SNAPSHOT = 525;
+SqlLexer.SOCKET = 526;
+SqlLexer.SOME = 527;
+SqlLexer.SONAME = 528;
+SqlLexer.SOUNDS = 529;
+SqlLexer.SOURCE = 530;
+SqlLexer.SQL_AFTER_GTIDS = 531;
+SqlLexer.SQL_AFTER_MTS_GAPS = 532;
+SqlLexer.SQL_BEFORE_GTIDS = 533;
+SqlLexer.SQL_BUFFER_RESULT = 534;
+SqlLexer.SQL_CACHE = 535;
+SqlLexer.SQL_NO_CACHE = 536;
+SqlLexer.SQL_THREAD = 537;
+SqlLexer.START = 538;
+SqlLexer.STARTS = 539;
+SqlLexer.STATS_AUTO_RECALC = 540;
+SqlLexer.STATS_PERSISTENT = 541;
+SqlLexer.STATS_SAMPLE_PAGES = 542;
+SqlLexer.STATUS = 543;
+SqlLexer.STOP = 544;
+SqlLexer.STORAGE = 545;
+SqlLexer.STORED = 546;
+SqlLexer.STRING = 547;
+SqlLexer.SUBCLASS_ORIGIN = 548;
+SqlLexer.SUBJECT = 549;
+SqlLexer.SUBPARTITION = 550;
+SqlLexer.SUBPARTITIONS = 551;
+SqlLexer.SUSPEND = 552;
+SqlLexer.SWAPS = 553;
+SqlLexer.SWITCHES = 554;
+SqlLexer.TABLE_NAME = 555;
+SqlLexer.TABLESPACE = 556;
+SqlLexer.TEMPORARY = 557;
+SqlLexer.TEMPTABLE = 558;
+SqlLexer.THAN = 559;
+SqlLexer.TRADITIONAL = 560;
+SqlLexer.TRANSACTION = 561;
+SqlLexer.TRANSACTIONAL = 562;
+SqlLexer.TRIGGERS = 563;
+SqlLexer.TRUNCATE = 564;
+SqlLexer.UNDEFINED = 565;
+SqlLexer.UNDOFILE = 566;
+SqlLexer.UNDO_BUFFER_SIZE = 567;
+SqlLexer.UNINSTALL = 568;
+SqlLexer.UNKNOWN = 569;
+SqlLexer.UNTIL = 570;
+SqlLexer.UPGRADE = 571;
+SqlLexer.USER = 572;
+SqlLexer.USE_FRM = 573;
+SqlLexer.USER_RESOURCES = 574;
+SqlLexer.VALIDATION = 575;
+SqlLexer.VALUE = 576;
+SqlLexer.VARIABLES = 577;
+SqlLexer.VIEW = 578;
+SqlLexer.VIRTUAL = 579;
+SqlLexer.VISIBLE = 580;
+SqlLexer.WAIT = 581;
+SqlLexer.WARNINGS = 582;
+SqlLexer.WITHOUT = 583;
+SqlLexer.WORK = 584;
+SqlLexer.WRAPPER = 585;
+SqlLexer.X509 = 586;
+SqlLexer.XA = 587;
+SqlLexer.XML = 588;
+SqlLexer.EUR = 589;
+SqlLexer.USA = 590;
+SqlLexer.JIS = 591;
+SqlLexer.ISO = 592;
+SqlLexer.INTERNAL = 593;
+SqlLexer.QUARTER = 594;
+SqlLexer.MONTH = 595;
+SqlLexer.DAY = 596;
+SqlLexer.HOUR = 597;
+SqlLexer.MINUTE = 598;
+SqlLexer.WEEK = 599;
+SqlLexer.SECOND = 600;
+SqlLexer.MICROSECOND = 601;
+SqlLexer.TABLES = 602;
+SqlLexer.ROUTINE = 603;
+SqlLexer.EXECUTE = 604;
+SqlLexer.FILE = 605;
+SqlLexer.PROCESS = 606;
+SqlLexer.RELOAD = 607;
+SqlLexer.SHUTDOWN = 608;
+SqlLexer.SUPER = 609;
+SqlLexer.PRIVILEGES = 610;
+SqlLexer.APPLICATION_PASSWORD_ADMIN = 611;
+SqlLexer.AUDIT_ADMIN = 612;
+SqlLexer.BACKUP_ADMIN = 613;
+SqlLexer.BINLOG_ADMIN = 614;
+SqlLexer.BINLOG_ENCRYPTION_ADMIN = 615;
+SqlLexer.CLONE_ADMIN = 616;
+SqlLexer.CONNECTION_ADMIN = 617;
+SqlLexer.ENCRYPTION_KEY_ADMIN = 618;
+SqlLexer.FIREWALL_ADMIN = 619;
+SqlLexer.FIREWALL_USER = 620;
+SqlLexer.GROUP_REPLICATION_ADMIN = 621;
+SqlLexer.INNODB_REDO_LOG_ARCHIVE = 622;
+SqlLexer.NDB_STORED_USER = 623;
+SqlLexer.PERSIST_RO_VARIABLES_ADMIN = 624;
+SqlLexer.REPLICATION_APPLIER = 625;
+SqlLexer.REPLICATION_SLAVE_ADMIN = 626;
+SqlLexer.RESOURCE_GROUP_ADMIN = 627;
+SqlLexer.RESOURCE_GROUP_USER = 628;
+SqlLexer.ROLE_ADMIN = 629;
+SqlLexer.SESSION_VARIABLES_ADMIN = 630;
+SqlLexer.SET_USER_ID = 631;
+SqlLexer.SHOW_ROUTINE = 632;
+SqlLexer.SYSTEM_VARIABLES_ADMIN = 633;
+SqlLexer.TABLE_ENCRYPTION_ADMIN = 634;
+SqlLexer.VERSION_TOKEN_ADMIN = 635;
+SqlLexer.XA_RECOVER_ADMIN = 636;
+SqlLexer.ARMSCII8 = 637;
+SqlLexer.ASCII = 638;
+SqlLexer.BIG5 = 639;
+SqlLexer.CP1250 = 640;
+SqlLexer.CP1251 = 641;
+SqlLexer.CP1256 = 642;
+SqlLexer.CP1257 = 643;
+SqlLexer.CP850 = 644;
+SqlLexer.CP852 = 645;
+SqlLexer.CP866 = 646;
+SqlLexer.CP932 = 647;
+SqlLexer.DEC8 = 648;
+SqlLexer.EUCJPMS = 649;
+SqlLexer.EUCKR = 650;
+SqlLexer.GB2312 = 651;
+SqlLexer.GBK = 652;
+SqlLexer.GEOSTD8 = 653;
+SqlLexer.GREEK = 654;
+SqlLexer.HEBREW = 655;
+SqlLexer.HP8 = 656;
+SqlLexer.KEYBCS2 = 657;
+SqlLexer.KOI8R = 658;
+SqlLexer.KOI8U = 659;
+SqlLexer.LATIN1 = 660;
+SqlLexer.LATIN2 = 661;
+SqlLexer.LATIN5 = 662;
+SqlLexer.LATIN7 = 663;
+SqlLexer.MACCE = 664;
+SqlLexer.MACROMAN = 665;
+SqlLexer.SJIS = 666;
+SqlLexer.SWE7 = 667;
+SqlLexer.TIS620 = 668;
+SqlLexer.UCS2 = 669;
+SqlLexer.UJIS = 670;
+SqlLexer.UTF16 = 671;
+SqlLexer.UTF16LE = 672;
+SqlLexer.UTF32 = 673;
+SqlLexer.UTF8 = 674;
+SqlLexer.UTF8MB3 = 675;
+SqlLexer.UTF8MB4 = 676;
+SqlLexer.ARCHIVE = 677;
+SqlLexer.BLACKHOLE = 678;
+SqlLexer.CSV = 679;
+SqlLexer.FEDERATED = 680;
+SqlLexer.INNODB = 681;
+SqlLexer.MEMORY = 682;
+SqlLexer.MRG_MYISAM = 683;
+SqlLexer.MYISAM = 684;
+SqlLexer.NDB = 685;
+SqlLexer.NDBCLUSTER = 686;
+SqlLexer.PERFORMANCE_SCHEMA = 687;
+SqlLexer.TOKUDB = 688;
+SqlLexer.REPEATABLE = 689;
+SqlLexer.COMMITTED = 690;
+SqlLexer.UNCOMMITTED = 691;
+SqlLexer.SERIALIZABLE = 692;
+SqlLexer.GEOMETRYCOLLECTION = 693;
+SqlLexer.GEOMCOLLECTION = 694;
+SqlLexer.GEOMETRY = 695;
+SqlLexer.LINESTRING = 696;
+SqlLexer.MULTILINESTRING = 697;
+SqlLexer.MULTIPOINT = 698;
+SqlLexer.MULTIPOLYGON = 699;
+SqlLexer.POINT = 700;
+SqlLexer.POLYGON = 701;
+SqlLexer.ABS = 702;
+SqlLexer.ACOS = 703;
+SqlLexer.ADDDATE = 704;
+SqlLexer.ADDTIME = 705;
+SqlLexer.AES_DECRYPT = 706;
+SqlLexer.AES_ENCRYPT = 707;
+SqlLexer.AREA = 708;
+SqlLexer.ASBINARY = 709;
+SqlLexer.ASIN = 710;
+SqlLexer.ASTEXT = 711;
+SqlLexer.ASWKB = 712;
+SqlLexer.ASWKT = 713;
+SqlLexer.ASYMMETRIC_DECRYPT = 714;
+SqlLexer.ASYMMETRIC_DERIVE = 715;
+SqlLexer.ASYMMETRIC_ENCRYPT = 716;
+SqlLexer.ASYMMETRIC_SIGN = 717;
+SqlLexer.ASYMMETRIC_VERIFY = 718;
+SqlLexer.ATAN = 719;
+SqlLexer.ATAN2 = 720;
+SqlLexer.BENCHMARK = 721;
+SqlLexer.BIN = 722;
+SqlLexer.BIT_COUNT = 723;
+SqlLexer.BIT_LENGTH = 724;
+SqlLexer.BUFFER = 725;
+SqlLexer.CATALOG_NAME = 726;
+SqlLexer.CEIL = 727;
+SqlLexer.CEILING = 728;
+SqlLexer.CENTROID = 729;
+SqlLexer.CHARACTER_LENGTH = 730;
+SqlLexer.CHARSET = 731;
+SqlLexer.CHAR_LENGTH = 732;
+SqlLexer.COERCIBILITY = 733;
+SqlLexer.COLLATION = 734;
+SqlLexer.COMPRESS = 735;
+SqlLexer.CONCAT = 736;
+SqlLexer.CONCAT_WS = 737;
+SqlLexer.CONNECTION_ID = 738;
+SqlLexer.CONV = 739;
+SqlLexer.CONVERT_TZ = 740;
+SqlLexer.COS = 741;
+SqlLexer.COT = 742;
+SqlLexer.CRC32 = 743;
+SqlLexer.CREATE_ASYMMETRIC_PRIV_KEY = 744;
+SqlLexer.CREATE_ASYMMETRIC_PUB_KEY = 745;
+SqlLexer.CREATE_DH_PARAMETERS = 746;
+SqlLexer.CREATE_DIGEST = 747;
+SqlLexer.CROSSES = 748;
+SqlLexer.DATEDIFF = 749;
+SqlLexer.DATE_FORMAT = 750;
+SqlLexer.DAYNAME = 751;
+SqlLexer.DAYOFMONTH = 752;
+SqlLexer.DAYOFWEEK = 753;
+SqlLexer.DAYOFYEAR = 754;
+SqlLexer.DECODE = 755;
+SqlLexer.DEGREES = 756;
+SqlLexer.DES_DECRYPT = 757;
+SqlLexer.DES_ENCRYPT = 758;
+SqlLexer.DIMENSION = 759;
+SqlLexer.DISJOINT = 760;
+SqlLexer.ELT = 761;
+SqlLexer.ENCODE = 762;
+SqlLexer.ENCRYPT = 763;
+SqlLexer.ENDPOINT = 764;
+SqlLexer.ENVELOPE = 765;
+SqlLexer.EQUALS = 766;
+SqlLexer.EXP = 767;
+SqlLexer.EXPORT_SET = 768;
+SqlLexer.EXTERIORRING = 769;
+SqlLexer.EXTRACTVALUE = 770;
+SqlLexer.FIELD = 771;
+SqlLexer.FIND_IN_SET = 772;
+SqlLexer.FLOOR = 773;
+SqlLexer.FORMAT = 774;
+SqlLexer.FOUND_ROWS = 775;
+SqlLexer.FROM_BASE64 = 776;
+SqlLexer.FROM_DAYS = 777;
+SqlLexer.FROM_UNIXTIME = 778;
+SqlLexer.GEOMCOLLFROMTEXT = 779;
+SqlLexer.GEOMCOLLFROMWKB = 780;
+SqlLexer.GEOMETRYCOLLECTIONFROMTEXT = 781;
+SqlLexer.GEOMETRYCOLLECTIONFROMWKB = 782;
+SqlLexer.GEOMETRYFROMTEXT = 783;
+SqlLexer.GEOMETRYFROMWKB = 784;
+SqlLexer.GEOMETRYN = 785;
+SqlLexer.GEOMETRYTYPE = 786;
+SqlLexer.GEOMFROMTEXT = 787;
+SqlLexer.GEOMFROMWKB = 788;
+SqlLexer.GET_FORMAT = 789;
+SqlLexer.GET_LOCK = 790;
+SqlLexer.GLENGTH = 791;
+SqlLexer.GREATEST = 792;
+SqlLexer.GTID_SUBSET = 793;
+SqlLexer.GTID_SUBTRACT = 794;
+SqlLexer.HEX = 795;
+SqlLexer.IFNULL = 796;
+SqlLexer.INET6_ATON = 797;
+SqlLexer.INET6_NTOA = 798;
+SqlLexer.INET_ATON = 799;
+SqlLexer.INET_NTOA = 800;
+SqlLexer.INSTR = 801;
+SqlLexer.INTERIORRINGN = 802;
+SqlLexer.INTERSECTS = 803;
+SqlLexer.ISCLOSED = 804;
+SqlLexer.ISEMPTY = 805;
+SqlLexer.ISNULL = 806;
+SqlLexer.ISSIMPLE = 807;
+SqlLexer.IS_FREE_LOCK = 808;
+SqlLexer.IS_IPV4 = 809;
+SqlLexer.IS_IPV4_COMPAT = 810;
+SqlLexer.IS_IPV4_MAPPED = 811;
+SqlLexer.IS_IPV6 = 812;
+SqlLexer.IS_USED_LOCK = 813;
+SqlLexer.LAST_INSERT_ID = 814;
+SqlLexer.LCASE = 815;
+SqlLexer.LEAST = 816;
+SqlLexer.LENGTH = 817;
+SqlLexer.LINEFROMTEXT = 818;
+SqlLexer.LINEFROMWKB = 819;
+SqlLexer.LINESTRINGFROMTEXT = 820;
+SqlLexer.LINESTRINGFROMWKB = 821;
+SqlLexer.LN = 822;
+SqlLexer.LOAD_FILE = 823;
+SqlLexer.LOCATE = 824;
+SqlLexer.LOG = 825;
+SqlLexer.LOG10 = 826;
+SqlLexer.LOG2 = 827;
+SqlLexer.LOWER = 828;
+SqlLexer.LPAD = 829;
+SqlLexer.LTRIM = 830;
+SqlLexer.MAKEDATE = 831;
+SqlLexer.MAKETIME = 832;
+SqlLexer.MAKE_SET = 833;
+SqlLexer.MASTER_POS_WAIT = 834;
+SqlLexer.MBRCONTAINS = 835;
+SqlLexer.MBRDISJOINT = 836;
+SqlLexer.MBREQUAL = 837;
+SqlLexer.MBRINTERSECTS = 838;
+SqlLexer.MBROVERLAPS = 839;
+SqlLexer.MBRTOUCHES = 840;
+SqlLexer.MBRWITHIN = 841;
+SqlLexer.MD5 = 842;
+SqlLexer.MLINEFROMTEXT = 843;
+SqlLexer.MLINEFROMWKB = 844;
+SqlLexer.MONTHNAME = 845;
+SqlLexer.MPOINTFROMTEXT = 846;
+SqlLexer.MPOINTFROMWKB = 847;
+SqlLexer.MPOLYFROMTEXT = 848;
+SqlLexer.MPOLYFROMWKB = 849;
+SqlLexer.MULTILINESTRINGFROMTEXT = 850;
+SqlLexer.MULTILINESTRINGFROMWKB = 851;
+SqlLexer.MULTIPOINTFROMTEXT = 852;
+SqlLexer.MULTIPOINTFROMWKB = 853;
+SqlLexer.MULTIPOLYGONFROMTEXT = 854;
+SqlLexer.MULTIPOLYGONFROMWKB = 855;
+SqlLexer.NAME_CONST = 856;
+SqlLexer.NULLIF = 857;
+SqlLexer.NUMGEOMETRIES = 858;
+SqlLexer.NUMINTERIORRINGS = 859;
+SqlLexer.NUMPOINTS = 860;
+SqlLexer.OCT = 861;
+SqlLexer.OCTET_LENGTH = 862;
+SqlLexer.ORD = 863;
+SqlLexer.OVERLAPS = 864;
+SqlLexer.PERIOD_ADD = 865;
+SqlLexer.PERIOD_DIFF = 866;
+SqlLexer.PI = 867;
+SqlLexer.POINTFROMTEXT = 868;
+SqlLexer.POINTFROMWKB = 869;
+SqlLexer.POINTN = 870;
+SqlLexer.POLYFROMTEXT = 871;
+SqlLexer.POLYFROMWKB = 872;
+SqlLexer.POLYGONFROMTEXT = 873;
+SqlLexer.POLYGONFROMWKB = 874;
+SqlLexer.POW = 875;
+SqlLexer.POWER = 876;
+SqlLexer.QUOTE = 877;
+SqlLexer.RADIANS = 878;
+SqlLexer.RAND = 879;
+SqlLexer.RANDOM_BYTES = 880;
+SqlLexer.RELEASE_LOCK = 881;
+SqlLexer.REVERSE = 882;
+SqlLexer.ROUND = 883;
+SqlLexer.ROW_COUNT = 884;
+SqlLexer.RPAD = 885;
+SqlLexer.RTRIM = 886;
+SqlLexer.SEC_TO_TIME = 887;
+SqlLexer.SESSION_USER = 888;
+SqlLexer.SHA = 889;
+SqlLexer.SHA1 = 890;
+SqlLexer.SHA2 = 891;
+SqlLexer.SCHEMA_NAME = 892;
+SqlLexer.SIGN = 893;
+SqlLexer.SIN = 894;
+SqlLexer.SLEEP = 895;
+SqlLexer.SOUNDEX = 896;
+SqlLexer.SQL_THREAD_WAIT_AFTER_GTIDS = 897;
+SqlLexer.SQRT = 898;
+SqlLexer.SRID = 899;
+SqlLexer.STARTPOINT = 900;
+SqlLexer.STRCMP = 901;
+SqlLexer.STR_TO_DATE = 902;
+SqlLexer.ST_AREA = 903;
+SqlLexer.ST_ASBINARY = 904;
+SqlLexer.ST_ASTEXT = 905;
+SqlLexer.ST_ASWKB = 906;
+SqlLexer.ST_ASWKT = 907;
+SqlLexer.ST_BUFFER = 908;
+SqlLexer.ST_CENTROID = 909;
+SqlLexer.ST_CONTAINS = 910;
+SqlLexer.ST_CROSSES = 911;
+SqlLexer.ST_DIFFERENCE = 912;
+SqlLexer.ST_DIMENSION = 913;
+SqlLexer.ST_DISJOINT = 914;
+SqlLexer.ST_DISTANCE = 915;
+SqlLexer.ST_ENDPOINT = 916;
+SqlLexer.ST_ENVELOPE = 917;
+SqlLexer.ST_EQUALS = 918;
+SqlLexer.ST_EXTERIORRING = 919;
+SqlLexer.ST_GEOMCOLLFROMTEXT = 920;
+SqlLexer.ST_GEOMCOLLFROMTXT = 921;
+SqlLexer.ST_GEOMCOLLFROMWKB = 922;
+SqlLexer.ST_GEOMETRYCOLLECTIONFROMTEXT = 923;
+SqlLexer.ST_GEOMETRYCOLLECTIONFROMWKB = 924;
+SqlLexer.ST_GEOMETRYFROMTEXT = 925;
+SqlLexer.ST_GEOMETRYFROMWKB = 926;
+SqlLexer.ST_GEOMETRYN = 927;
+SqlLexer.ST_GEOMETRYTYPE = 928;
+SqlLexer.ST_GEOMFROMTEXT = 929;
+SqlLexer.ST_GEOMFROMWKB = 930;
+SqlLexer.ST_INTERIORRINGN = 931;
+SqlLexer.ST_INTERSECTION = 932;
+SqlLexer.ST_INTERSECTS = 933;
+SqlLexer.ST_ISCLOSED = 934;
+SqlLexer.ST_ISEMPTY = 935;
+SqlLexer.ST_ISSIMPLE = 936;
+SqlLexer.ST_LINEFROMTEXT = 937;
+SqlLexer.ST_LINEFROMWKB = 938;
+SqlLexer.ST_LINESTRINGFROMTEXT = 939;
+SqlLexer.ST_LINESTRINGFROMWKB = 940;
+SqlLexer.ST_NUMGEOMETRIES = 941;
+SqlLexer.ST_NUMINTERIORRING = 942;
+SqlLexer.ST_NUMINTERIORRINGS = 943;
+SqlLexer.ST_NUMPOINTS = 944;
+SqlLexer.ST_OVERLAPS = 945;
+SqlLexer.ST_POINTFROMTEXT = 946;
+SqlLexer.ST_POINTFROMWKB = 947;
+SqlLexer.ST_POINTN = 948;
+SqlLexer.ST_POLYFROMTEXT = 949;
+SqlLexer.ST_POLYFROMWKB = 950;
+SqlLexer.ST_POLYGONFROMTEXT = 951;
+SqlLexer.ST_POLYGONFROMWKB = 952;
+SqlLexer.ST_SRID = 953;
+SqlLexer.ST_STARTPOINT = 954;
+SqlLexer.ST_SYMDIFFERENCE = 955;
+SqlLexer.ST_TOUCHES = 956;
+SqlLexer.ST_UNION = 957;
+SqlLexer.ST_WITHIN = 958;
+SqlLexer.ST_X = 959;
+SqlLexer.ST_Y = 960;
+SqlLexer.SUBDATE = 961;
+SqlLexer.SUBSTRING_INDEX = 962;
+SqlLexer.SUBTIME = 963;
+SqlLexer.SYSTEM_USER = 964;
+SqlLexer.TAN = 965;
+SqlLexer.TIMEDIFF = 966;
+SqlLexer.TIMESTAMPADD = 967;
+SqlLexer.TIMESTAMPDIFF = 968;
+SqlLexer.TIME_FORMAT = 969;
+SqlLexer.TIME_TO_SEC = 970;
+SqlLexer.TOUCHES = 971;
+SqlLexer.TO_BASE64 = 972;
+SqlLexer.TO_DAYS = 973;
+SqlLexer.TO_SECONDS = 974;
+SqlLexer.UCASE = 975;
+SqlLexer.UNCOMPRESS = 976;
+SqlLexer.UNCOMPRESSED_LENGTH = 977;
+SqlLexer.UNHEX = 978;
+SqlLexer.UNIX_TIMESTAMP = 979;
+SqlLexer.UPDATEXML = 980;
+SqlLexer.UPPER = 981;
+SqlLexer.UUID = 982;
+SqlLexer.UUID_SHORT = 983;
+SqlLexer.VALIDATE_PASSWORD_STRENGTH = 984;
+SqlLexer.VERSION = 985;
+SqlLexer.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS = 986;
+SqlLexer.WEEKDAY = 987;
+SqlLexer.WEEKOFYEAR = 988;
+SqlLexer.WEIGHT_STRING = 989;
+SqlLexer.WITHIN = 990;
+SqlLexer.YEARWEEK = 991;
+SqlLexer.Y_FUNCTION = 992;
+SqlLexer.X_FUNCTION = 993;
+SqlLexer.VAR_ASSIGN = 994;
+SqlLexer.PLUS_ASSIGN = 995;
+SqlLexer.MINUS_ASSIGN = 996;
+SqlLexer.MULT_ASSIGN = 997;
+SqlLexer.DIV_ASSIGN = 998;
+SqlLexer.MOD_ASSIGN = 999;
+SqlLexer.AND_ASSIGN = 1000;
+SqlLexer.XOR_ASSIGN = 1001;
+SqlLexer.OR_ASSIGN = 1002;
+SqlLexer.STAR = 1003;
+SqlLexer.DIVIDE = 1004;
+SqlLexer.MODULE = 1005;
+SqlLexer.PLUS = 1006;
+SqlLexer.MINUSMINUS = 1007;
+SqlLexer.MINUS = 1008;
+SqlLexer.DIV = 1009;
+SqlLexer.MOD = 1010;
+SqlLexer.EQUAL_SYMBOL = 1011;
+SqlLexer.GREATER_SYMBOL = 1012;
+SqlLexer.LESS_SYMBOL = 1013;
+SqlLexer.EXCLAMATION_SYMBOL = 1014;
+SqlLexer.BIT_NOT_OP = 1015;
+SqlLexer.BIT_OR_OP = 1016;
+SqlLexer.BIT_AND_OP = 1017;
+SqlLexer.BIT_XOR_OP = 1018;
+SqlLexer.DOT = 1019;
+SqlLexer.LR_BRACKET = 1020;
+SqlLexer.RR_BRACKET = 1021;
+SqlLexer.COMMA = 1022;
+SqlLexer.SEMI = 1023;
+SqlLexer.AT_SIGN = 1024;
+SqlLexer.ZERO_DECIMAL = 1025;
+SqlLexer.ONE_DECIMAL = 1026;
+SqlLexer.TWO_DECIMAL = 1027;
+SqlLexer.SINGLE_QUOTE_SYMB = 1028;
+SqlLexer.DOUBLE_QUOTE_SYMB = 1029;
+SqlLexer.REVERSE_QUOTE_SYMB = 1030;
+SqlLexer.COLON_SYMB = 1031;
+SqlLexer.CHARSET_REVERSE_QOUTE_STRING = 1032;
+SqlLexer.FILESIZE_LITERAL = 1033;
+SqlLexer.START_NATIONAL_STRING_LITERAL = 1034;
+SqlLexer.STRING_LITERAL = 1035;
+SqlLexer.DECIMAL_LITERAL = 1036;
+SqlLexer.HEXADECIMAL_LITERAL = 1037;
+SqlLexer.REAL_LITERAL = 1038;
+SqlLexer.NULL_SPEC_LITERAL = 1039;
+SqlLexer.BIT_STRING = 1040;
+SqlLexer.STRING_CHARSET_NAME = 1041;
+SqlLexer.DOT_ID = 1042;
+SqlLexer.ID = 1043;
+SqlLexer.REVERSE_QUOTE_ID = 1044;
+SqlLexer.STRING_USER_NAME = 1045;
+SqlLexer.LOCAL_ID = 1046;
+SqlLexer.GLOBAL_ID = 1047;
+SqlLexer.ERROR_RECONGNIGION = 1048;
+
+SqlLexer.MYSQLCOMMENT = 2;
+SqlLexer.ERRORCHANNEL = 3;
+
+SqlLexer.prototype.channelNames = [ "DEFAULT_TOKEN_CHANNEL", "HIDDEN", "MYSQLCOMMENT",
+ "ERRORCHANNEL" ];
+
+SqlLexer.prototype.modeNames = [ "DEFAULT_MODE" ];
+
+SqlLexer.prototype.literalNames = [ null, null, null, null, null, "'ADD'",
+ "'ALL'", "'ALTER'", "'ALWAYS'", "'ANALYZE'",
+ "'AND'", "'AS'", "'ASC'", "'BEFORE'",
+ "'BETWEEN'", "'BOTH'", "'BY'", "'CALL'",
+ "'CASCADE'", "'CASE'", "'CAST'", "'CHANGE'",
+ "'CHARACTER'", "'CHECK'", "'COLLATE'",
+ "'COLUMN'", "'CONDITION'", "'CONSTRAINT'",
+ "'CONTINUE'", "'CONVERT'", "'CREATE'",
+ "'CROSS'", "'CURRENT'", "'CURRENT_USER'",
+ "'CURSOR'", "'DATABASE'", "'DATABASES'",
+ "'DECLARE'", "'DEFAULT'", "'DELAYED'",
+ "'DELETE'", "'DESC'", "'DESCRIBE'",
+ "'DETERMINISTIC'", "'DIAGNOSTICS'",
+ "'DISTINCT'", "'DISTINCTROW'", "'DROP'",
+ "'EACH'", "'ELSE'", "'ELSEIF'", "'ENCLOSED'",
+ "'ESCAPED'", "'EXISTS'", "'EXIT'", "'EXPLAIN'",
+ "'FALSE'", "'FETCH'", "'FOR'", "'FORCE'",
+ "'FOREIGN'", "'FROM'", "'FULLTEXT'",
+ "'GENERATED'", "'GET'", "'GRANT'", "'GROUP'",
+ "'HAVING'", "'HIGH_PRIORITY'", "'IF'",
+ "'IGNORE'", "'IN'", "'INDEX'", "'INFILE'",
+ "'INNER'", "'INOUT'", "'INSERT'", "'INTERVAL'",
+ "'INTO'", "'IS'", "'ITERATE'", "'JOIN'",
+ "'KEY'", "'KEYS'", "'KILL'", "'LEADING'",
+ "'LEAVE'", "'LEFT'", "'LIKE'", "'LIMIT'",
+ "'LINEAR'", "'LINES'", "'LOAD'", "'LOCK'",
+ "'LOOP'", "'LOW_PRIORITY'", "'MASTER_BIND'",
+ "'MASTER_SSL_VERIFY_SERVER_CERT'", "'MATCH'",
+ "'MAXVALUE'", "'MODIFIES'", "'NATURAL'",
+ "'NOT'", "'NO_WRITE_TO_BINLOG'", "'NULL'",
+ "'NUMBER'", "'ON'", "'OPTIMIZE'", "'OPTION'",
+ "'OPTIONALLY'", "'OR'", "'ORDER'", "'OUT'",
+ "'OUTER'", "'OUTFILE'", "'PARTITION'",
+ "'PRIMARY'", "'PROCEDURE'", "'PURGE'",
+ "'RANGE'", "'READ'", "'READS'", "'REFERENCES'",
+ "'REGEXP'", "'RELEASE'", "'RENAME'",
+ "'REPEAT'", "'REPLACE'", "'REQUIRE'",
+ "'RESIGNAL'", "'RESTRICT'", "'RETURN'",
+ "'REVOKE'", "'RIGHT'", "'RLIKE'", "'SCHEMA'",
+ "'SCHEMAS'", "'SELECT'", "'SET'", "'SEPARATOR'",
+ "'SHOW'", "'SIGNAL'", "'SPATIAL'", "'SQL'",
+ "'SQLEXCEPTION'", "'SQLSTATE'", "'SQLWARNING'",
+ "'SQL_BIG_RESULT'", "'SQL_CALC_FOUND_ROWS'",
+ "'SQL_SMALL_RESULT'", "'SSL'", "'STACKED'",
+ "'STARTING'", "'STRAIGHT_JOIN'", "'TABLE'",
+ "'TERMINATED'", "'THEN'", "'TO'", "'TRAILING'",
+ "'TRIGGER'", "'TRUE'", "'UNDO'", "'UNION'",
+ "'UNIQUE'", "'UNLOCK'", "'UNSIGNED'",
+ "'UPDATE'", "'USAGE'", "'USE'", "'USING'",
+ "'VALUES'", "'WHEN'", "'WHERE'", "'WHILE'",
+ "'WITH'", "'WRITE'", "'XOR'", "'ZEROFILL'",
+ "'TINYINT'", "'SMALLINT'", "'MEDIUMINT'",
+ "'MIDDLEINT'", "'INT'", "'INT1'", "'INT2'",
+ "'INT3'", "'INT4'", "'INT8'", "'INTEGER'",
+ "'BIGINT'", "'REAL'", "'DOUBLE'", "'PRECISION'",
+ "'FLOAT'", "'FLOAT4'", "'FLOAT8'", "'DECIMAL'",
+ "'DEC'", "'NUMERIC'", "'DATE'", "'TIME'",
+ "'TIMESTAMP'", "'DATETIME'", "'YEAR'",
+ "'CHAR'", "'VARCHAR'", "'NVARCHAR'",
+ "'NATIONAL'", "'BINARY'", "'VARBINARY'",
+ "'TINYBLOB'", "'BLOB'", "'MEDIUMBLOB'",
+ "'LONG'", "'LONGBLOB'", "'TINYTEXT'",
+ "'TEXT'", "'MEDIUMTEXT'", "'LONGTEXT'",
+ "'ENUM'", "'VARYING'", "'SERIAL'", "'YEAR_MONTH'",
+ "'DAY_HOUR'", "'DAY_MINUTE'", "'DAY_SECOND'",
+ "'HOUR_MINUTE'", "'HOUR_SECOND'", "'MINUTE_SECOND'",
+ "'SECOND_MICROSECOND'", "'MINUTE_MICROSECOND'",
+ "'HOUR_MICROSECOND'", "'DAY_MICROSECOND'",
+ "'JSON_VALID'", "'JSON_SCHEMA_VALID'",
+ "'AVG'", "'BIT_AND'", "'BIT_OR'", "'BIT_XOR'",
+ "'COUNT'", "'GROUP_CONCAT'", "'MAX'",
+ "'MIN'", "'STD'", "'STDDEV'", "'STDDEV_POP'",
+ "'STDDEV_SAMP'", "'SUM'", "'VAR_POP'",
+ "'VAR_SAMP'", "'VARIANCE'", "'CURRENT_DATE'",
+ "'CURRENT_TIME'", "'CURRENT_TIMESTAMP'",
+ "'LOCALTIME'", "'CURDATE'", "'CURTIME'",
+ "'DATE_ADD'", "'DATE_SUB'", "'EXTRACT'",
+ "'LOCALTIMESTAMP'", "'NOW'", "'POSITION'",
+ "'SUBSTR'", "'SUBSTRING'", "'SYSDATE'",
+ "'TRIM'", "'UTC_DATE'", "'UTC_TIME'",
+ "'UTC_TIMESTAMP'", "'ACCOUNT'", "'ACTION'",
+ "'AFTER'", "'AGGREGATE'", "'ALGORITHM'",
+ "'ANY'", "'AT'", "'AUTHORS'", "'AUTOCOMMIT'",
+ "'AUTOEXTEND_SIZE'", "'AUTO_INCREMENT'",
+ "'AVG_ROW_LENGTH'", "'BEGIN'", "'BINLOG'",
+ "'BIT'", "'BLOCK'", "'BOOL'", "'BOOLEAN'",
+ "'BTREE'", "'CACHE'", "'CASCADED'",
+ "'CHAIN'", "'CHANGED'", "'CHANNEL'",
+ "'CHECKSUM'", "'PAGE_CHECKSUM'", "'CIPHER'",
+ "'CLASS_ORIGIN'", "'CLIENT'", "'CLOSE'",
+ "'COALESCE'", "'CODE'", "'COLUMNS'",
+ "'COLUMN_FORMAT'", "'COLUMN_NAME'",
+ "'COMMENT'", "'COMMIT'", "'COMPACT'",
+ "'COMPLETION'", "'COMPRESSED'", "'COMPRESSION'",
+ "'CONCURRENT'", "'CONNECTION'", "'CONSISTENT'",
+ "'CONSTRAINT_CATALOG'", "'CONSTRAINT_SCHEMA'",
+ "'CONSTRAINT_NAME'", "'CONTAINS'", "'CONTEXT'",
+ "'CONTRIBUTORS'", "'COPY'", "'CPU'",
+ "'CURSOR_NAME'", "'DATA'", "'DATAFILE'",
+ "'DEALLOCATE'", "'DEFAULT_AUTH'", "'DEFINER'",
+ "'DELAY_KEY_WRITE'", "'DES_KEY_FILE'",
+ "'DIRECTORY'", "'DISABLE'", "'DISCARD'",
+ "'DISK'", "'DO'", "'DUMPFILE'", "'DUPLICATE'",
+ "'DYNAMIC'", "'ENABLE'", "'ENCRYPTION'",
+ "'END'", "'ENDS'", "'ENGINE'", "'ENGINES'",
+ "'ERROR'", "'ERRORS'", "'ESCAPE'", "'EVEN'",
+ "'EVENT'", "'EVENTS'", "'EVERY'", "'EXCHANGE'",
+ "'EXCLUSIVE'", "'EXPIRE'", "'EXPORT'",
+ "'EXTENDED'", "'EXTENT_SIZE'", "'FAST'",
+ "'FAULTS'", "'FIELDS'", "'FILE_BLOCK_SIZE'",
+ "'FILTER'", "'FIRST'", "'FIXED'", "'FLUSH'",
+ "'FOLLOWS'", "'FOUND'", "'FULL'", "'FUNCTION'",
+ "'GENERAL'", "'GLOBAL'", "'GRANTS'",
+ "'GROUP_REPLICATION'", "'HANDLER'",
+ "'HASH'", "'HELP'", "'HOST'", "'HOSTS'",
+ "'IDENTIFIED'", "'IGNORE_SERVER_IDS'",
+ "'IMPORT'", "'INDEXES'", "'INITIAL_SIZE'",
+ "'INPLACE'", "'INSERT_METHOD'", "'INSTALL'",
+ "'INSTANCE'", "'INVISIBLE'", "'INVOKER'",
+ "'IO'", "'IO_THREAD'", "'IPC'", "'ISOLATION'",
+ "'ISSUER'", "'JSON'", "'KEY_BLOCK_SIZE'",
+ "'LANGUAGE'", "'LAST'", "'LEAVES'",
+ "'LESS'", "'LEVEL'", "'LIST'", "'LOCAL'",
+ "'LOGFILE'", "'LOGS'", "'MASTER'", "'MASTER_AUTO_POSITION'",
+ "'MASTER_CONNECT_RETRY'", "'MASTER_DELAY'",
+ "'MASTER_HEARTBEAT_PERIOD'", "'MASTER_HOST'",
+ "'MASTER_LOG_FILE'", "'MASTER_LOG_POS'",
+ "'MASTER_PASSWORD'", "'MASTER_PORT'",
+ "'MASTER_RETRY_COUNT'", "'MASTER_SSL'",
+ "'MASTER_SSL_CA'", "'MASTER_SSL_CAPATH'",
+ "'MASTER_SSL_CERT'", "'MASTER_SSL_CIPHER'",
+ "'MASTER_SSL_CRL'", "'MASTER_SSL_CRLPATH'",
+ "'MASTER_SSL_KEY'", "'MASTER_TLS_VERSION'",
+ "'MASTER_USER'", "'MAX_CONNECTIONS_PER_HOUR'",
+ "'MAX_QUERIES_PER_HOUR'", "'MAX_ROWS'",
+ "'MAX_SIZE'", "'MAX_UPDATES_PER_HOUR'",
+ "'MAX_USER_CONNECTIONS'", "'MEDIUM'",
+ "'MERGE'", "'MESSAGE_TEXT'", "'MID'",
+ "'MIGRATE'", "'MIN_ROWS'", "'MODE'",
+ "'MODIFY'", "'MUTEX'", "'MYSQL'", "'MYSQL_ERRNO'",
+ "'NAME'", "'NAMES'", "'NCHAR'", "'NEVER'",
+ "'NEXT'", "'NO'", "'NODEGROUP'", "'NONE'",
+ "'OFFLINE'", "'OFFSET'", "'OJ'", "'OLD_PASSWORD'",
+ "'ONE'", "'ONLINE'", "'ONLY'", "'OPEN'",
+ "'OPTIMIZER_COSTS'", "'OPTIONS'", "'OWNER'",
+ "'PACK_KEYS'", "'PAGE'", "'PARSER'",
+ "'PARTIAL'", "'PARTITIONING'", "'PARTITIONS'",
+ "'PASSWORD'", "'PHASE'", "'PLUGIN'",
+ "'PLUGIN_DIR'", "'PLUGINS'", "'PORT'",
+ "'PRECEDES'", "'PREPARE'", "'PRESERVE'",
+ "'PREV'", "'PROCESSLIST'", "'PROFILE'",
+ "'PROFILES'", "'PROXY'", "'QUERY'",
+ "'QUICK'", "'REBUILD'", "'RECOVER'",
+ "'REDO_BUFFER_SIZE'", "'REDUNDANT'",
+ "'RELAY'", "'RELAY_LOG_FILE'", "'RELAY_LOG_POS'",
+ "'RELAYLOG'", "'REMOVE'", "'REORGANIZE'",
+ "'REPAIR'", "'REPLICATE_DO_DB'", "'REPLICATE_DO_TABLE'",
+ "'REPLICATE_IGNORE_DB'", "'REPLICATE_IGNORE_TABLE'",
+ "'REPLICATE_REWRITE_DB'", "'REPLICATE_WILD_DO_TABLE'",
+ "'REPLICATE_WILD_IGNORE_TABLE'", "'REPLICATION'",
+ "'RESET'", "'RESUME'", "'RETURNED_SQLSTATE'",
+ "'RETURNS'", "'ROLE'", "'ROLLBACK'",
+ "'ROLLUP'", "'ROTATE'", "'ROW'", "'ROWS'",
+ "'ROW_FORMAT'", "'SAVEPOINT'", "'SCHEDULE'",
+ "'SECURITY'", "'SERVER'", "'SESSION'",
+ "'SHARE'", "'SHARED'", "'SIGNED'", "'SIMPLE'",
+ "'SLAVE'", "'SLOW'", "'SNAPSHOT'", "'SOCKET'",
+ "'SOME'", "'SONAME'", "'SOUNDS'", "'SOURCE'",
+ "'SQL_AFTER_GTIDS'", "'SQL_AFTER_MTS_GAPS'",
+ "'SQL_BEFORE_GTIDS'", "'SQL_BUFFER_RESULT'",
+ "'SQL_CACHE'", "'SQL_NO_CACHE'", "'SQL_THREAD'",
+ "'START'", "'STARTS'", "'STATS_AUTO_RECALC'",
+ "'STATS_PERSISTENT'", "'STATS_SAMPLE_PAGES'",
+ "'STATUS'", "'STOP'", "'STORAGE'", "'STORED'",
+ "'STRING'", "'SUBCLASS_ORIGIN'", "'SUBJECT'",
+ "'SUBPARTITION'", "'SUBPARTITIONS'",
+ "'SUSPEND'", "'SWAPS'", "'SWITCHES'",
+ "'TABLE_NAME'", "'TABLESPACE'", "'TEMPORARY'",
+ "'TEMPTABLE'", "'THAN'", "'TRADITIONAL'",
+ "'TRANSACTION'", "'TRANSACTIONAL'",
+ "'TRIGGERS'", "'TRUNCATE'", "'UNDEFINED'",
+ "'UNDOFILE'", "'UNDO_BUFFER_SIZE'",
+ "'UNINSTALL'", "'UNKNOWN'", "'UNTIL'",
+ "'UPGRADE'", "'USER'", "'USE_FRM'",
+ "'USER_RESOURCES'", "'VALIDATION'",
+ "'VALUE'", "'VARIABLES'", "'VIEW'",
+ "'VIRTUAL'", "'VISIBLE'", "'WAIT'",
+ "'WARNINGS'", "'WITHOUT'", "'WORK'",
+ "'WRAPPER'", "'X509'", "'XA'", "'XML'",
+ "'EUR'", "'USA'", "'JIS'", "'ISO'",
+ "'INTERNAL'", "'QUARTER'", "'MONTH'",
+ "'DAY'", "'HOUR'", "'MINUTE'", "'WEEK'",
+ "'SECOND'", "'MICROSECOND'", "'TABLES'",
+ "'ROUTINE'", "'EXECUTE'", "'FILE'",
+ "'PROCESS'", "'RELOAD'", "'SHUTDOWN'",
+ "'SUPER'", "'PRIVILEGES'", "'APPLICATION_PASSWORD_ADMIN'",
+ "'AUDIT_ADMIN'", "'BACKUP_ADMIN'", "'BINLOG_ADMIN'",
+ "'BINLOG_ENCRYPTION_ADMIN'", "'CLONE_ADMIN'",
+ "'CONNECTION_ADMIN'", "'ENCRYPTION_KEY_ADMIN'",
+ "'FIREWALL_ADMIN'", "'FIREWALL_USER'",
+ "'GROUP_REPLICATION_ADMIN'", "'INNODB_REDO_LOG_ARCHIVE'",
+ "'NDB_STORED_USER'", "'PERSIST_RO_VARIABLES_ADMIN'",
+ "'REPLICATION_APPLIER'", "'REPLICATION_SLAVE_ADMIN'",
+ "'RESOURCE_GROUP_ADMIN'", "'RESOURCE_GROUP_USER'",
+ "'ROLE_ADMIN'", null, "'SET_USER_ID'",
+ "'SHOW_ROUTINE'", "'SYSTEM_VARIABLES_ADMIN'",
+ "'TABLE_ENCRYPTION_ADMIN'", "'VERSION_TOKEN_ADMIN'",
+ "'XA_RECOVER_ADMIN'", "'ARMSCII8'",
+ "'ASCII'", "'BIG5'", "'CP1250'", "'CP1251'",
+ "'CP1256'", "'CP1257'", "'CP850'", "'CP852'",
+ "'CP866'", "'CP932'", "'DEC8'", "'EUCJPMS'",
+ "'EUCKR'", "'GB2312'", "'GBK'", "'GEOSTD8'",
+ "'GREEK'", "'HEBREW'", "'HP8'", "'KEYBCS2'",
+ "'KOI8R'", "'KOI8U'", "'LATIN1'", "'LATIN2'",
+ "'LATIN5'", "'LATIN7'", "'MACCE'", "'MACROMAN'",
+ "'SJIS'", "'SWE7'", "'TIS620'", "'UCS2'",
+ "'UJIS'", "'UTF16'", "'UTF16LE'", "'UTF32'",
+ "'UTF8'", "'UTF8MB3'", "'UTF8MB4'",
+ "'ARCHIVE'", "'BLACKHOLE'", "'CSV'",
+ "'FEDERATED'", "'INNODB'", "'MEMORY'",
+ "'MRG_MYISAM'", "'MYISAM'", "'NDB'",
+ "'NDBCLUSTER'", "'PERFORMANCE_SCHEMA'",
+ "'TOKUDB'", "'REPEATABLE'", "'COMMITTED'",
+ "'UNCOMMITTED'", "'SERIALIZABLE'", "'GEOMETRYCOLLECTION'",
+ "'GEOMCOLLECTION'", "'GEOMETRY'", "'LINESTRING'",
+ "'MULTILINESTRING'", "'MULTIPOINT'",
+ "'MULTIPOLYGON'", "'POINT'", "'POLYGON'",
+ "'ABS'", "'ACOS'", "'ADDDATE'", "'ADDTIME'",
+ "'AES_DECRYPT'", "'AES_ENCRYPT'", "'AREA'",
+ "'ASBINARY'", "'ASIN'", "'ASTEXT'",
+ "'ASWKB'", "'ASWKT'", "'ASYMMETRIC_DECRYPT'",
+ "'ASYMMETRIC_DERIVE'", "'ASYMMETRIC_ENCRYPT'",
+ "'ASYMMETRIC_SIGN'", "'ASYMMETRIC_VERIFY'",
+ "'ATAN'", "'ATAN2'", "'BENCHMARK'",
+ "'BIN'", "'BIT_COUNT'", "'BIT_LENGTH'",
+ "'BUFFER'", "'CATALOG_NAME'", "'CEIL'",
+ "'CEILING'", "'CENTROID'", "'CHARACTER_LENGTH'",
+ "'CHARSET'", "'CHAR_LENGTH'", "'COERCIBILITY'",
+ "'COLLATION'", "'COMPRESS'", "'CONCAT'",
+ "'CONCAT_WS'", "'CONNECTION_ID'", "'CONV'",
+ "'CONVERT_TZ'", "'COS'", "'COT'", "'CRC32'",
+ "'CREATE_ASYMMETRIC_PRIV_KEY'", "'CREATE_ASYMMETRIC_PUB_KEY'",
+ "'CREATE_DH_PARAMETERS'", "'CREATE_DIGEST'",
+ "'CROSSES'", "'DATEDIFF'", "'DATE_FORMAT'",
+ "'DAYNAME'", "'DAYOFMONTH'", "'DAYOFWEEK'",
+ "'DAYOFYEAR'", "'DECODE'", "'DEGREES'",
+ "'DES_DECRYPT'", "'DES_ENCRYPT'", "'DIMENSION'",
+ "'DISJOINT'", "'ELT'", "'ENCODE'", "'ENCRYPT'",
+ "'ENDPOINT'", "'ENVELOPE'", "'EQUALS'",
+ "'EXP'", "'EXPORT_SET'", "'EXTERIORRING'",
+ "'EXTRACTVALUE'", "'FIELD'", "'FIND_IN_SET'",
+ "'FLOOR'", "'FORMAT'", "'FOUND_ROWS'",
+ "'FROM_BASE64'", "'FROM_DAYS'", "'FROM_UNIXTIME'",
+ "'GEOMCOLLFROMTEXT'", "'GEOMCOLLFROMWKB'",
+ "'GEOMETRYCOLLECTIONFROMTEXT'", "'GEOMETRYCOLLECTIONFROMWKB'",
+ "'GEOMETRYFROMTEXT'", "'GEOMETRYFROMWKB'",
+ "'GEOMETRYN'", "'GEOMETRYTYPE'", "'GEOMFROMTEXT'",
+ "'GEOMFROMWKB'", "'GET_FORMAT'", "'GET_LOCK'",
+ "'GLENGTH'", "'GREATEST'", "'GTID_SUBSET'",
+ "'GTID_SUBTRACT'", "'HEX'", "'IFNULL'",
+ "'INET6_ATON'", "'INET6_NTOA'", "'INET_ATON'",
+ "'INET_NTOA'", "'INSTR'", "'INTERIORRINGN'",
+ "'INTERSECTS'", "'ISCLOSED'", "'ISEMPTY'",
+ "'ISNULL'", "'ISSIMPLE'", "'IS_FREE_LOCK'",
+ "'IS_IPV4'", "'IS_IPV4_COMPAT'", "'IS_IPV4_MAPPED'",
+ "'IS_IPV6'", "'IS_USED_LOCK'", "'LAST_INSERT_ID'",
+ "'LCASE'", "'LEAST'", "'LENGTH'", "'LINEFROMTEXT'",
+ "'LINEFROMWKB'", "'LINESTRINGFROMTEXT'",
+ "'LINESTRINGFROMWKB'", "'LN'", "'LOAD_FILE'",
+ "'LOCATE'", "'LOG'", "'LOG10'", "'LOG2'",
+ "'LOWER'", "'LPAD'", "'LTRIM'", "'MAKEDATE'",
+ "'MAKETIME'", "'MAKE_SET'", "'MASTER_POS_WAIT'",
+ "'MBRCONTAINS'", "'MBRDISJOINT'", "'MBREQUAL'",
+ "'MBRINTERSECTS'", "'MBROVERLAPS'",
+ "'MBRTOUCHES'", "'MBRWITHIN'", "'MD5'",
+ "'MLINEFROMTEXT'", "'MLINEFROMWKB'",
+ "'MONTHNAME'", "'MPOINTFROMTEXT'", "'MPOINTFROMWKB'",
+ "'MPOLYFROMTEXT'", "'MPOLYFROMWKB'",
+ "'MULTILINESTRINGFROMTEXT'", "'MULTILINESTRINGFROMWKB'",
+ "'MULTIPOINTFROMTEXT'", "'MULTIPOINTFROMWKB'",
+ "'MULTIPOLYGONFROMTEXT'", "'MULTIPOLYGONFROMWKB'",
+ "'NAME_CONST'", "'NULLIF'", "'NUMGEOMETRIES'",
+ "'NUMINTERIORRINGS'", "'NUMPOINTS'",
+ "'OCT'", "'OCTET_LENGTH'", "'ORD'",
+ "'OVERLAPS'", "'PERIOD_ADD'", "'PERIOD_DIFF'",
+ "'PI'", "'POINTFROMTEXT'", "'POINTFROMWKB'",
+ "'POINTN'", "'POLYFROMTEXT'", "'POLYFROMWKB'",
+ "'POLYGONFROMTEXT'", "'POLYGONFROMWKB'",
+ "'POW'", "'POWER'", "'QUOTE'", "'RADIANS'",
+ "'RAND'", "'RANDOM_BYTES'", "'RELEASE_LOCK'",
+ "'REVERSE'", "'ROUND'", "'ROW_COUNT'",
+ "'RPAD'", "'RTRIM'", "'SEC_TO_TIME'",
+ "'SESSION_USER'", "'SHA'", "'SHA1'",
+ "'SHA2'", "'SCHEMA_NAME'", "'SIGN'",
+ "'SIN'", "'SLEEP'", "'SOUNDEX'", "'SQL_THREAD_WAIT_AFTER_GTIDS'",
+ "'SQRT'", "'SRID'", "'STARTPOINT'",
+ "'STRCMP'", "'STR_TO_DATE'", "'ST_AREA'",
+ "'ST_ASBINARY'", "'ST_ASTEXT'", "'ST_ASWKB'",
+ "'ST_ASWKT'", "'ST_BUFFER'", "'ST_CENTROID'",
+ "'ST_CONTAINS'", "'ST_CROSSES'", "'ST_DIFFERENCE'",
+ "'ST_DIMENSION'", "'ST_DISJOINT'", "'ST_DISTANCE'",
+ "'ST_ENDPOINT'", "'ST_ENVELOPE'", "'ST_EQUALS'",
+ "'ST_EXTERIORRING'", "'ST_GEOMCOLLFROMTEXT'",
+ "'ST_GEOMCOLLFROMTXT'", "'ST_GEOMCOLLFROMWKB'",
+ "'ST_GEOMETRYCOLLECTIONFROMTEXT'", "'ST_GEOMETRYCOLLECTIONFROMWKB'",
+ "'ST_GEOMETRYFROMTEXT'", "'ST_GEOMETRYFROMWKB'",
+ "'ST_GEOMETRYN'", "'ST_GEOMETRYTYPE'",
+ "'ST_GEOMFROMTEXT'", "'ST_GEOMFROMWKB'",
+ "'ST_INTERIORRINGN'", "'ST_INTERSECTION'",
+ "'ST_INTERSECTS'", "'ST_ISCLOSED'",
+ "'ST_ISEMPTY'", "'ST_ISSIMPLE'", "'ST_LINEFROMTEXT'",
+ "'ST_LINEFROMWKB'", "'ST_LINESTRINGFROMTEXT'",
+ "'ST_LINESTRINGFROMWKB'", "'ST_NUMGEOMETRIES'",
+ "'ST_NUMINTERIORRING'", "'ST_NUMINTERIORRINGS'",
+ "'ST_NUMPOINTS'", "'ST_OVERLAPS'", "'ST_POINTFROMTEXT'",
+ "'ST_POINTFROMWKB'", "'ST_POINTN'",
+ "'ST_POLYFROMTEXT'", "'ST_POLYFROMWKB'",
+ "'ST_POLYGONFROMTEXT'", "'ST_POLYGONFROMWKB'",
+ "'ST_SRID'", "'ST_STARTPOINT'", "'ST_SYMDIFFERENCE'",
+ "'ST_TOUCHES'", "'ST_UNION'", "'ST_WITHIN'",
+ "'ST_X'", "'ST_Y'", "'SUBDATE'", "'SUBSTRING_INDEX'",
+ "'SUBTIME'", "'SYSTEM_USER'", "'TAN'",
+ "'TIMEDIFF'", "'TIMESTAMPADD'", "'TIMESTAMPDIFF'",
+ "'TIME_FORMAT'", "'TIME_TO_SEC'", "'TOUCHES'",
+ "'TO_BASE64'", "'TO_DAYS'", "'TO_SECONDS'",
+ "'UCASE'", "'UNCOMPRESS'", "'UNCOMPRESSED_LENGTH'",
+ "'UNHEX'", "'UNIX_TIMESTAMP'", "'UPDATEXML'",
+ "'UPPER'", "'UUID'", "'UUID_SHORT'",
+ "'VALIDATE_PASSWORD_STRENGTH'", "'VERSION'",
+ "'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS'",
+ "'WEEKDAY'", "'WEEKOFYEAR'", "'WEIGHT_STRING'",
+ "'WITHIN'", "'YEARWEEK'", "'Y'", "'X'",
+ "':='", "'+='", "'-='", "'*='", "'/='",
+ "'%='", "'&='", "'^='", "'|='", "'*'",
+ "'/'", "'%'", "'+'", "'--'", "'-'",
+ "'DIV'", "'MOD'", "'='", "'>'", "'<'",
+ "'!'", "'~'", "'|'", "'&'", "'^'", "'.'",
+ "'('", "')'", "','", "';'", "'@'", "'0'",
+ "'1'", "'2'", "'''", "'\"'", "'`'",
+ "':'" ];
+
+SqlLexer.prototype.symbolicNames = [ null, "SPACE", "SPEC_MYSQL_COMMENT",
+ "COMMENT_INPUT", "LINE_COMMENT", "ADD",
+ "ALL", "ALTER", "ALWAYS", "ANALYZE",
+ "AND", "AS", "ASC", "BEFORE", "BETWEEN",
+ "BOTH", "BY", "CALL", "CASCADE", "CASE",
+ "CAST", "CHANGE", "CHARACTER", "CHECK",
+ "COLLATE", "COLUMN", "CONDITION", "CONSTRAINT",
+ "CONTINUE", "CONVERT", "CREATE", "CROSS",
+ "CURRENT", "CURRENT_USER", "CURSOR",
+ "DATABASE", "DATABASES", "DECLARE",
+ "DEFAULT", "DELAYED", "DELETE", "DESC",
+ "DESCRIBE", "DETERMINISTIC", "DIAGNOSTICS",
+ "DISTINCT", "DISTINCTROW", "DROP",
+ "EACH", "ELSE", "ELSEIF", "ENCLOSED",
+ "ESCAPED", "EXISTS", "EXIT", "EXPLAIN",
+ "FALSE", "FETCH", "FOR", "FORCE", "FOREIGN",
+ "FROM", "FULLTEXT", "GENERATED", "GET",
+ "GRANT", "GROUP", "HAVING", "HIGH_PRIORITY",
+ "IF", "IGNORE", "IN", "INDEX", "INFILE",
+ "INNER", "INOUT", "INSERT", "INTERVAL",
+ "INTO", "IS", "ITERATE", "JOIN", "KEY",
+ "KEYS", "KILL", "LEADING", "LEAVE",
+ "LEFT", "LIKE", "LIMIT", "LINEAR",
+ "LINES", "LOAD", "LOCK", "LOOP", "LOW_PRIORITY",
+ "MASTER_BIND", "MASTER_SSL_VERIFY_SERVER_CERT",
+ "MATCH", "MAXVALUE", "MODIFIES", "NATURAL",
+ "NOT", "NO_WRITE_TO_BINLOG", "NULL_LITERAL",
+ "NUMBER", "ON", "OPTIMIZE", "OPTION",
+ "OPTIONALLY", "OR", "ORDER", "OUT",
+ "OUTER", "OUTFILE", "PARTITION", "PRIMARY",
+ "PROCEDURE", "PURGE", "RANGE", "READ",
+ "READS", "REFERENCES", "REGEXP", "RELEASE",
+ "RENAME", "REPEAT", "REPLACE", "REQUIRE",
+ "RESIGNAL", "RESTRICT", "RETURN", "REVOKE",
+ "RIGHT", "RLIKE", "SCHEMA", "SCHEMAS",
+ "SELECT", "SET", "SEPARATOR", "SHOW",
+ "SIGNAL", "SPATIAL", "SQL", "SQLEXCEPTION",
+ "SQLSTATE", "SQLWARNING", "SQL_BIG_RESULT",
+ "SQL_CALC_FOUND_ROWS", "SQL_SMALL_RESULT",
+ "SSL", "STACKED", "STARTING", "STRAIGHT_JOIN",
+ "TABLE", "TERMINATED", "THEN", "TO",
+ "TRAILING", "TRIGGER", "TRUE", "UNDO",
+ "UNION", "UNIQUE", "UNLOCK", "UNSIGNED",
+ "UPDATE", "USAGE", "USE", "USING",
+ "VALUES", "WHEN", "WHERE", "WHILE",
+ "WITH", "WRITE", "XOR", "ZEROFILL",
+ "TINYINT", "SMALLINT", "MEDIUMINT",
+ "MIDDLEINT", "INT", "INT1", "INT2",
+ "INT3", "INT4", "INT8", "INTEGER",
+ "BIGINT", "REAL", "DOUBLE", "PRECISION",
+ "FLOAT", "FLOAT4", "FLOAT8", "DECIMAL",
+ "DEC", "NUMERIC", "DATE", "TIME", "TIMESTAMP",
+ "DATETIME", "YEAR", "CHAR", "VARCHAR",
+ "NVARCHAR", "NATIONAL", "BINARY", "VARBINARY",
+ "TINYBLOB", "BLOB", "MEDIUMBLOB", "LONG",
+ "LONGBLOB", "TINYTEXT", "TEXT", "MEDIUMTEXT",
+ "LONGTEXT", "ENUM", "VARYING", "SERIAL",
+ "YEAR_MONTH", "DAY_HOUR", "DAY_MINUTE",
+ "DAY_SECOND", "HOUR_MINUTE", "HOUR_SECOND",
+ "MINUTE_SECOND", "SECOND_MICROSECOND",
+ "MINUTE_MICROSECOND", "HOUR_MICROSECOND",
+ "DAY_MICROSECOND", "JSON_VALID", "JSON_SCHEMA_VALID",
+ "AVG", "BIT_AND", "BIT_OR", "BIT_XOR",
+ "COUNT", "GROUP_CONCAT", "MAX", "MIN",
+ "STD", "STDDEV", "STDDEV_POP", "STDDEV_SAMP",
+ "SUM", "VAR_POP", "VAR_SAMP", "VARIANCE",
+ "CURRENT_DATE", "CURRENT_TIME", "CURRENT_TIMESTAMP",
+ "LOCALTIME", "CURDATE", "CURTIME",
+ "DATE_ADD", "DATE_SUB", "EXTRACT",
+ "LOCALTIMESTAMP", "NOW", "POSITION",
+ "SUBSTR", "SUBSTRING", "SYSDATE", "TRIM",
+ "UTC_DATE", "UTC_TIME", "UTC_TIMESTAMP",
+ "ACCOUNT", "ACTION", "AFTER", "AGGREGATE",
+ "ALGORITHM", "ANY", "AT", "AUTHORS",
+ "AUTOCOMMIT", "AUTOEXTEND_SIZE", "AUTO_INCREMENT",
+ "AVG_ROW_LENGTH", "BEGIN", "BINLOG",
+ "BIT", "BLOCK", "BOOL", "BOOLEAN",
+ "BTREE", "CACHE", "CASCADED", "CHAIN",
+ "CHANGED", "CHANNEL", "CHECKSUM", "PAGE_CHECKSUM",
+ "CIPHER", "CLASS_ORIGIN", "CLIENT",
+ "CLOSE", "COALESCE", "CODE", "COLUMNS",
+ "COLUMN_FORMAT", "COLUMN_NAME", "COMMENT",
+ "COMMIT", "COMPACT", "COMPLETION",
+ "COMPRESSED", "COMPRESSION", "CONCURRENT",
+ "CONNECTION", "CONSISTENT", "CONSTRAINT_CATALOG",
+ "CONSTRAINT_SCHEMA", "CONSTRAINT_NAME",
+ "CONTAINS", "CONTEXT", "CONTRIBUTORS",
+ "COPY", "CPU", "CURSOR_NAME", "DATA",
+ "DATAFILE", "DEALLOCATE", "DEFAULT_AUTH",
+ "DEFINER", "DELAY_KEY_WRITE", "DES_KEY_FILE",
+ "DIRECTORY", "DISABLE", "DISCARD",
+ "DISK", "DO", "DUMPFILE", "DUPLICATE",
+ "DYNAMIC", "ENABLE", "ENCRYPTION",
+ "END", "ENDS", "ENGINE", "ENGINES",
+ "ERROR", "ERRORS", "ESCAPE", "EVEN",
+ "EVENT", "EVENTS", "EVERY", "EXCHANGE",
+ "EXCLUSIVE", "EXPIRE", "EXPORT", "EXTENDED",
+ "EXTENT_SIZE", "FAST", "FAULTS", "FIELDS",
+ "FILE_BLOCK_SIZE", "FILTER", "FIRST",
+ "FIXED", "FLUSH", "FOLLOWS", "FOUND",
+ "FULL", "FUNCTION", "GENERAL", "GLOBAL",
+ "GRANTS", "GROUP_REPLICATION", "HANDLER",
+ "HASH", "HELP", "HOST", "HOSTS", "IDENTIFIED",
+ "IGNORE_SERVER_IDS", "IMPORT", "INDEXES",
+ "INITIAL_SIZE", "INPLACE", "INSERT_METHOD",
+ "INSTALL", "INSTANCE", "INVISIBLE",
+ "INVOKER", "IO", "IO_THREAD", "IPC",
+ "ISOLATION", "ISSUER", "JSON", "KEY_BLOCK_SIZE",
+ "LANGUAGE", "LAST", "LEAVES", "LESS",
+ "LEVEL", "LIST", "LOCAL", "LOGFILE",
+ "LOGS", "MASTER", "MASTER_AUTO_POSITION",
+ "MASTER_CONNECT_RETRY", "MASTER_DELAY",
+ "MASTER_HEARTBEAT_PERIOD", "MASTER_HOST",
+ "MASTER_LOG_FILE", "MASTER_LOG_POS",
+ "MASTER_PASSWORD", "MASTER_PORT", "MASTER_RETRY_COUNT",
+ "MASTER_SSL", "MASTER_SSL_CA", "MASTER_SSL_CAPATH",
+ "MASTER_SSL_CERT", "MASTER_SSL_CIPHER",
+ "MASTER_SSL_CRL", "MASTER_SSL_CRLPATH",
+ "MASTER_SSL_KEY", "MASTER_TLS_VERSION",
+ "MASTER_USER", "MAX_CONNECTIONS_PER_HOUR",
+ "MAX_QUERIES_PER_HOUR", "MAX_ROWS",
+ "MAX_SIZE", "MAX_UPDATES_PER_HOUR",
+ "MAX_USER_CONNECTIONS", "MEDIUM", "MERGE",
+ "MESSAGE_TEXT", "MID", "MIGRATE", "MIN_ROWS",
+ "MODE", "MODIFY", "MUTEX", "MYSQL",
+ "MYSQL_ERRNO", "NAME", "NAMES", "NCHAR",
+ "NEVER", "NEXT", "NO", "NODEGROUP",
+ "NONE", "OFFLINE", "OFFSET", "OJ",
+ "OLD_PASSWORD", "ONE", "ONLINE", "ONLY",
+ "OPEN", "OPTIMIZER_COSTS", "OPTIONS",
+ "OWNER", "PACK_KEYS", "PAGE", "PARSER",
+ "PARTIAL", "PARTITIONING", "PARTITIONS",
+ "PASSWORD", "PHASE", "PLUGIN", "PLUGIN_DIR",
+ "PLUGINS", "PORT", "PRECEDES", "PREPARE",
+ "PRESERVE", "PREV", "PROCESSLIST",
+ "PROFILE", "PROFILES", "PROXY", "QUERY",
+ "QUICK", "REBUILD", "RECOVER", "REDO_BUFFER_SIZE",
+ "REDUNDANT", "RELAY", "RELAY_LOG_FILE",
+ "RELAY_LOG_POS", "RELAYLOG", "REMOVE",
+ "REORGANIZE", "REPAIR", "REPLICATE_DO_DB",
+ "REPLICATE_DO_TABLE", "REPLICATE_IGNORE_DB",
+ "REPLICATE_IGNORE_TABLE", "REPLICATE_REWRITE_DB",
+ "REPLICATE_WILD_DO_TABLE", "REPLICATE_WILD_IGNORE_TABLE",
+ "REPLICATION", "RESET", "RESUME", "RETURNED_SQLSTATE",
+ "RETURNS", "ROLE", "ROLLBACK", "ROLLUP",
+ "ROTATE", "ROW", "ROWS", "ROW_FORMAT",
+ "SAVEPOINT", "SCHEDULE", "SECURITY",
+ "SERVER", "SESSION", "SHARE", "SHARED",
+ "SIGNED", "SIMPLE", "SLAVE", "SLOW",
+ "SNAPSHOT", "SOCKET", "SOME", "SONAME",
+ "SOUNDS", "SOURCE", "SQL_AFTER_GTIDS",
+ "SQL_AFTER_MTS_GAPS", "SQL_BEFORE_GTIDS",
+ "SQL_BUFFER_RESULT", "SQL_CACHE", "SQL_NO_CACHE",
+ "SQL_THREAD", "START", "STARTS", "STATS_AUTO_RECALC",
+ "STATS_PERSISTENT", "STATS_SAMPLE_PAGES",
+ "STATUS", "STOP", "STORAGE", "STORED",
+ "STRING", "SUBCLASS_ORIGIN", "SUBJECT",
+ "SUBPARTITION", "SUBPARTITIONS", "SUSPEND",
+ "SWAPS", "SWITCHES", "TABLE_NAME",
+ "TABLESPACE", "TEMPORARY", "TEMPTABLE",
+ "THAN", "TRADITIONAL", "TRANSACTION",
+ "TRANSACTIONAL", "TRIGGERS", "TRUNCATE",
+ "UNDEFINED", "UNDOFILE", "UNDO_BUFFER_SIZE",
+ "UNINSTALL", "UNKNOWN", "UNTIL", "UPGRADE",
+ "USER", "USE_FRM", "USER_RESOURCES",
+ "VALIDATION", "VALUE", "VARIABLES",
+ "VIEW", "VIRTUAL", "VISIBLE", "WAIT",
+ "WARNINGS", "WITHOUT", "WORK", "WRAPPER",
+ "X509", "XA", "XML", "EUR", "USA",
+ "JIS", "ISO", "INTERNAL", "QUARTER",
+ "MONTH", "DAY", "HOUR", "MINUTE", "WEEK",
+ "SECOND", "MICROSECOND", "TABLES",
+ "ROUTINE", "EXECUTE", "FILE", "PROCESS",
+ "RELOAD", "SHUTDOWN", "SUPER", "PRIVILEGES",
+ "APPLICATION_PASSWORD_ADMIN", "AUDIT_ADMIN",
+ "BACKUP_ADMIN", "BINLOG_ADMIN", "BINLOG_ENCRYPTION_ADMIN",
+ "CLONE_ADMIN", "CONNECTION_ADMIN",
+ "ENCRYPTION_KEY_ADMIN", "FIREWALL_ADMIN",
+ "FIREWALL_USER", "GROUP_REPLICATION_ADMIN",
+ "INNODB_REDO_LOG_ARCHIVE", "NDB_STORED_USER",
+ "PERSIST_RO_VARIABLES_ADMIN", "REPLICATION_APPLIER",
+ "REPLICATION_SLAVE_ADMIN", "RESOURCE_GROUP_ADMIN",
+ "RESOURCE_GROUP_USER", "ROLE_ADMIN",
+ "SESSION_VARIABLES_ADMIN", "SET_USER_ID",
+ "SHOW_ROUTINE", "SYSTEM_VARIABLES_ADMIN",
+ "TABLE_ENCRYPTION_ADMIN", "VERSION_TOKEN_ADMIN",
+ "XA_RECOVER_ADMIN", "ARMSCII8", "ASCII",
+ "BIG5", "CP1250", "CP1251", "CP1256",
+ "CP1257", "CP850", "CP852", "CP866",
+ "CP932", "DEC8", "EUCJPMS", "EUCKR",
+ "GB2312", "GBK", "GEOSTD8", "GREEK",
+ "HEBREW", "HP8", "KEYBCS2", "KOI8R",
+ "KOI8U", "LATIN1", "LATIN2", "LATIN5",
+ "LATIN7", "MACCE", "MACROMAN", "SJIS",
+ "SWE7", "TIS620", "UCS2", "UJIS", "UTF16",
+ "UTF16LE", "UTF32", "UTF8", "UTF8MB3",
+ "UTF8MB4", "ARCHIVE", "BLACKHOLE",
+ "CSV", "FEDERATED", "INNODB", "MEMORY",
+ "MRG_MYISAM", "MYISAM", "NDB", "NDBCLUSTER",
+ "PERFORMANCE_SCHEMA", "TOKUDB", "REPEATABLE",
+ "COMMITTED", "UNCOMMITTED", "SERIALIZABLE",
+ "GEOMETRYCOLLECTION", "GEOMCOLLECTION",
+ "GEOMETRY", "LINESTRING", "MULTILINESTRING",
+ "MULTIPOINT", "MULTIPOLYGON", "POINT",
+ "POLYGON", "ABS", "ACOS", "ADDDATE",
+ "ADDTIME", "AES_DECRYPT", "AES_ENCRYPT",
+ "AREA", "ASBINARY", "ASIN", "ASTEXT",
+ "ASWKB", "ASWKT", "ASYMMETRIC_DECRYPT",
+ "ASYMMETRIC_DERIVE", "ASYMMETRIC_ENCRYPT",
+ "ASYMMETRIC_SIGN", "ASYMMETRIC_VERIFY",
+ "ATAN", "ATAN2", "BENCHMARK", "BIN",
+ "BIT_COUNT", "BIT_LENGTH", "BUFFER",
+ "CATALOG_NAME", "CEIL", "CEILING",
+ "CENTROID", "CHARACTER_LENGTH", "CHARSET",
+ "CHAR_LENGTH", "COERCIBILITY", "COLLATION",
+ "COMPRESS", "CONCAT", "CONCAT_WS",
+ "CONNECTION_ID", "CONV", "CONVERT_TZ",
+ "COS", "COT", "CRC32", "CREATE_ASYMMETRIC_PRIV_KEY",
+ "CREATE_ASYMMETRIC_PUB_KEY", "CREATE_DH_PARAMETERS",
+ "CREATE_DIGEST", "CROSSES", "DATEDIFF",
+ "DATE_FORMAT", "DAYNAME", "DAYOFMONTH",
+ "DAYOFWEEK", "DAYOFYEAR", "DECODE",
+ "DEGREES", "DES_DECRYPT", "DES_ENCRYPT",
+ "DIMENSION", "DISJOINT", "ELT", "ENCODE",
+ "ENCRYPT", "ENDPOINT", "ENVELOPE",
+ "EQUALS", "EXP", "EXPORT_SET", "EXTERIORRING",
+ "EXTRACTVALUE", "FIELD", "FIND_IN_SET",
+ "FLOOR", "FORMAT", "FOUND_ROWS", "FROM_BASE64",
+ "FROM_DAYS", "FROM_UNIXTIME", "GEOMCOLLFROMTEXT",
+ "GEOMCOLLFROMWKB", "GEOMETRYCOLLECTIONFROMTEXT",
+ "GEOMETRYCOLLECTIONFROMWKB", "GEOMETRYFROMTEXT",
+ "GEOMETRYFROMWKB", "GEOMETRYN", "GEOMETRYTYPE",
+ "GEOMFROMTEXT", "GEOMFROMWKB", "GET_FORMAT",
+ "GET_LOCK", "GLENGTH", "GREATEST",
+ "GTID_SUBSET", "GTID_SUBTRACT", "HEX",
+ "IFNULL", "INET6_ATON", "INET6_NTOA",
+ "INET_ATON", "INET_NTOA", "INSTR",
+ "INTERIORRINGN", "INTERSECTS", "ISCLOSED",
+ "ISEMPTY", "ISNULL", "ISSIMPLE", "IS_FREE_LOCK",
+ "IS_IPV4", "IS_IPV4_COMPAT", "IS_IPV4_MAPPED",
+ "IS_IPV6", "IS_USED_LOCK", "LAST_INSERT_ID",
+ "LCASE", "LEAST", "LENGTH", "LINEFROMTEXT",
+ "LINEFROMWKB", "LINESTRINGFROMTEXT",
+ "LINESTRINGFROMWKB", "LN", "LOAD_FILE",
+ "LOCATE", "LOG", "LOG10", "LOG2", "LOWER",
+ "LPAD", "LTRIM", "MAKEDATE", "MAKETIME",
+ "MAKE_SET", "MASTER_POS_WAIT", "MBRCONTAINS",
+ "MBRDISJOINT", "MBREQUAL", "MBRINTERSECTS",
+ "MBROVERLAPS", "MBRTOUCHES", "MBRWITHIN",
+ "MD5", "MLINEFROMTEXT", "MLINEFROMWKB",
+ "MONTHNAME", "MPOINTFROMTEXT", "MPOINTFROMWKB",
+ "MPOLYFROMTEXT", "MPOLYFROMWKB", "MULTILINESTRINGFROMTEXT",
+ "MULTILINESTRINGFROMWKB", "MULTIPOINTFROMTEXT",
+ "MULTIPOINTFROMWKB", "MULTIPOLYGONFROMTEXT",
+ "MULTIPOLYGONFROMWKB", "NAME_CONST",
+ "NULLIF", "NUMGEOMETRIES", "NUMINTERIORRINGS",
+ "NUMPOINTS", "OCT", "OCTET_LENGTH",
+ "ORD", "OVERLAPS", "PERIOD_ADD", "PERIOD_DIFF",
+ "PI", "POINTFROMTEXT", "POINTFROMWKB",
+ "POINTN", "POLYFROMTEXT", "POLYFROMWKB",
+ "POLYGONFROMTEXT", "POLYGONFROMWKB",
+ "POW", "POWER", "QUOTE", "RADIANS",
+ "RAND", "RANDOM_BYTES", "RELEASE_LOCK",
+ "REVERSE", "ROUND", "ROW_COUNT", "RPAD",
+ "RTRIM", "SEC_TO_TIME", "SESSION_USER",
+ "SHA", "SHA1", "SHA2", "SCHEMA_NAME",
+ "SIGN", "SIN", "SLEEP", "SOUNDEX",
+ "SQL_THREAD_WAIT_AFTER_GTIDS", "SQRT",
+ "SRID", "STARTPOINT", "STRCMP", "STR_TO_DATE",
+ "ST_AREA", "ST_ASBINARY", "ST_ASTEXT",
+ "ST_ASWKB", "ST_ASWKT", "ST_BUFFER",
+ "ST_CENTROID", "ST_CONTAINS", "ST_CROSSES",
+ "ST_DIFFERENCE", "ST_DIMENSION", "ST_DISJOINT",
+ "ST_DISTANCE", "ST_ENDPOINT", "ST_ENVELOPE",
+ "ST_EQUALS", "ST_EXTERIORRING", "ST_GEOMCOLLFROMTEXT",
+ "ST_GEOMCOLLFROMTXT", "ST_GEOMCOLLFROMWKB",
+ "ST_GEOMETRYCOLLECTIONFROMTEXT", "ST_GEOMETRYCOLLECTIONFROMWKB",
+ "ST_GEOMETRYFROMTEXT", "ST_GEOMETRYFROMWKB",
+ "ST_GEOMETRYN", "ST_GEOMETRYTYPE",
+ "ST_GEOMFROMTEXT", "ST_GEOMFROMWKB",
+ "ST_INTERIORRINGN", "ST_INTERSECTION",
+ "ST_INTERSECTS", "ST_ISCLOSED", "ST_ISEMPTY",
+ "ST_ISSIMPLE", "ST_LINEFROMTEXT", "ST_LINEFROMWKB",
+ "ST_LINESTRINGFROMTEXT", "ST_LINESTRINGFROMWKB",
+ "ST_NUMGEOMETRIES", "ST_NUMINTERIORRING",
+ "ST_NUMINTERIORRINGS", "ST_NUMPOINTS",
+ "ST_OVERLAPS", "ST_POINTFROMTEXT",
+ "ST_POINTFROMWKB", "ST_POINTN", "ST_POLYFROMTEXT",
+ "ST_POLYFROMWKB", "ST_POLYGONFROMTEXT",
+ "ST_POLYGONFROMWKB", "ST_SRID", "ST_STARTPOINT",
+ "ST_SYMDIFFERENCE", "ST_TOUCHES", "ST_UNION",
+ "ST_WITHIN", "ST_X", "ST_Y", "SUBDATE",
+ "SUBSTRING_INDEX", "SUBTIME", "SYSTEM_USER",
+ "TAN", "TIMEDIFF", "TIMESTAMPADD",
+ "TIMESTAMPDIFF", "TIME_FORMAT", "TIME_TO_SEC",
+ "TOUCHES", "TO_BASE64", "TO_DAYS",
+ "TO_SECONDS", "UCASE", "UNCOMPRESS",
+ "UNCOMPRESSED_LENGTH", "UNHEX", "UNIX_TIMESTAMP",
+ "UPDATEXML", "UPPER", "UUID", "UUID_SHORT",
+ "VALIDATE_PASSWORD_STRENGTH", "VERSION",
+ "WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS",
+ "WEEKDAY", "WEEKOFYEAR", "WEIGHT_STRING",
+ "WITHIN", "YEARWEEK", "Y_FUNCTION",
+ "X_FUNCTION", "VAR_ASSIGN", "PLUS_ASSIGN",
+ "MINUS_ASSIGN", "MULT_ASSIGN", "DIV_ASSIGN",
+ "MOD_ASSIGN", "AND_ASSIGN", "XOR_ASSIGN",
+ "OR_ASSIGN", "STAR", "DIVIDE", "MODULE",
+ "PLUS", "MINUSMINUS", "MINUS", "DIV",
+ "MOD", "EQUAL_SYMBOL", "GREATER_SYMBOL",
+ "LESS_SYMBOL", "EXCLAMATION_SYMBOL",
+ "BIT_NOT_OP", "BIT_OR_OP", "BIT_AND_OP",
+ "BIT_XOR_OP", "DOT", "LR_BRACKET",
+ "RR_BRACKET", "COMMA", "SEMI", "AT_SIGN",
+ "ZERO_DECIMAL", "ONE_DECIMAL", "TWO_DECIMAL",
+ "SINGLE_QUOTE_SYMB", "DOUBLE_QUOTE_SYMB",
+ "REVERSE_QUOTE_SYMB", "COLON_SYMB",
+ "CHARSET_REVERSE_QOUTE_STRING", "FILESIZE_LITERAL",
+ "START_NATIONAL_STRING_LITERAL", "STRING_LITERAL",
+ "DECIMAL_LITERAL", "HEXADECIMAL_LITERAL",
+ "REAL_LITERAL", "NULL_SPEC_LITERAL",
+ "BIT_STRING", "STRING_CHARSET_NAME",
+ "DOT_ID", "ID", "REVERSE_QUOTE_ID",
+ "STRING_USER_NAME", "LOCAL_ID", "GLOBAL_ID",
+ "ERROR_RECONGNIGION" ];
+
+SqlLexer.prototype.ruleNames = [ "SPACE", "SPEC_MYSQL_COMMENT", "COMMENT_INPUT",
+ "LINE_COMMENT", "ADD", "ALL", "ALTER",
+ "ALWAYS", "ANALYZE", "AND", "AS", "ASC",
+ "BEFORE", "BETWEEN", "BOTH", "BY", "CALL",
+ "CASCADE", "CASE", "CAST", "CHANGE", "CHARACTER",
+ "CHECK", "COLLATE", "COLUMN", "CONDITION",
+ "CONSTRAINT", "CONTINUE", "CONVERT", "CREATE",
+ "CROSS", "CURRENT", "CURRENT_USER", "CURSOR",
+ "DATABASE", "DATABASES", "DECLARE", "DEFAULT",
+ "DELAYED", "DELETE", "DESC", "DESCRIBE",
+ "DETERMINISTIC", "DIAGNOSTICS", "DISTINCT",
+ "DISTINCTROW", "DROP", "EACH", "ELSE",
+ "ELSEIF", "ENCLOSED", "ESCAPED", "EXISTS",
+ "EXIT", "EXPLAIN", "FALSE", "FETCH", "FOR",
+ "FORCE", "FOREIGN", "FROM", "FULLTEXT",
+ "GENERATED", "GET", "GRANT", "GROUP", "HAVING",
+ "HIGH_PRIORITY", "IF", "IGNORE", "IN",
+ "INDEX", "INFILE", "INNER", "INOUT", "INSERT",
+ "INTERVAL", "INTO", "IS", "ITERATE", "JOIN",
+ "KEY", "KEYS", "KILL", "LEADING", "LEAVE",
+ "LEFT", "LIKE", "LIMIT", "LINEAR", "LINES",
+ "LOAD", "LOCK", "LOOP", "LOW_PRIORITY",
+ "MASTER_BIND", "MASTER_SSL_VERIFY_SERVER_CERT",
+ "MATCH", "MAXVALUE", "MODIFIES", "NATURAL",
+ "NOT", "NO_WRITE_TO_BINLOG", "NULL_LITERAL",
+ "NUMBER", "ON", "OPTIMIZE", "OPTION", "OPTIONALLY",
+ "OR", "ORDER", "OUT", "OUTER", "OUTFILE",
+ "PARTITION", "PRIMARY", "PROCEDURE", "PURGE",
+ "RANGE", "READ", "READS", "REFERENCES",
+ "REGEXP", "RELEASE", "RENAME", "REPEAT",
+ "REPLACE", "REQUIRE", "RESIGNAL", "RESTRICT",
+ "RETURN", "REVOKE", "RIGHT", "RLIKE", "SCHEMA",
+ "SCHEMAS", "SELECT", "SET", "SEPARATOR",
+ "SHOW", "SIGNAL", "SPATIAL", "SQL", "SQLEXCEPTION",
+ "SQLSTATE", "SQLWARNING", "SQL_BIG_RESULT",
+ "SQL_CALC_FOUND_ROWS", "SQL_SMALL_RESULT",
+ "SSL", "STACKED", "STARTING", "STRAIGHT_JOIN",
+ "TABLE", "TERMINATED", "THEN", "TO", "TRAILING",
+ "TRIGGER", "TRUE", "UNDO", "UNION", "UNIQUE",
+ "UNLOCK", "UNSIGNED", "UPDATE", "USAGE",
+ "USE", "USING", "VALUES", "WHEN", "WHERE",
+ "WHILE", "WITH", "WRITE", "XOR", "ZEROFILL",
+ "TINYINT", "SMALLINT", "MEDIUMINT", "MIDDLEINT",
+ "INT", "INT1", "INT2", "INT3", "INT4",
+ "INT8", "INTEGER", "BIGINT", "REAL", "DOUBLE",
+ "PRECISION", "FLOAT", "FLOAT4", "FLOAT8",
+ "DECIMAL", "DEC", "NUMERIC", "DATE", "TIME",
+ "TIMESTAMP", "DATETIME", "YEAR", "CHAR",
+ "VARCHAR", "NVARCHAR", "NATIONAL", "BINARY",
+ "VARBINARY", "TINYBLOB", "BLOB", "MEDIUMBLOB",
+ "LONG", "LONGBLOB", "TINYTEXT", "TEXT",
+ "MEDIUMTEXT", "LONGTEXT", "ENUM", "VARYING",
+ "SERIAL", "YEAR_MONTH", "DAY_HOUR", "DAY_MINUTE",
+ "DAY_SECOND", "HOUR_MINUTE", "HOUR_SECOND",
+ "MINUTE_SECOND", "SECOND_MICROSECOND",
+ "MINUTE_MICROSECOND", "HOUR_MICROSECOND",
+ "DAY_MICROSECOND", "JSON_VALID", "JSON_SCHEMA_VALID",
+ "AVG", "BIT_AND", "BIT_OR", "BIT_XOR",
+ "COUNT", "GROUP_CONCAT", "MAX", "MIN",
+ "STD", "STDDEV", "STDDEV_POP", "STDDEV_SAMP",
+ "SUM", "VAR_POP", "VAR_SAMP", "VARIANCE",
+ "CURRENT_DATE", "CURRENT_TIME", "CURRENT_TIMESTAMP",
+ "LOCALTIME", "CURDATE", "CURTIME", "DATE_ADD",
+ "DATE_SUB", "EXTRACT", "LOCALTIMESTAMP",
+ "NOW", "POSITION", "SUBSTR", "SUBSTRING",
+ "SYSDATE", "TRIM", "UTC_DATE", "UTC_TIME",
+ "UTC_TIMESTAMP", "ACCOUNT", "ACTION", "AFTER",
+ "AGGREGATE", "ALGORITHM", "ANY", "AT",
+ "AUTHORS", "AUTOCOMMIT", "AUTOEXTEND_SIZE",
+ "AUTO_INCREMENT", "AVG_ROW_LENGTH", "BEGIN",
+ "BINLOG", "BIT", "BLOCK", "BOOL", "BOOLEAN",
+ "BTREE", "CACHE", "CASCADED", "CHAIN",
+ "CHANGED", "CHANNEL", "CHECKSUM", "PAGE_CHECKSUM",
+ "CIPHER", "CLASS_ORIGIN", "CLIENT", "CLOSE",
+ "COALESCE", "CODE", "COLUMNS", "COLUMN_FORMAT",
+ "COLUMN_NAME", "COMMENT", "COMMIT", "COMPACT",
+ "COMPLETION", "COMPRESSED", "COMPRESSION",
+ "CONCURRENT", "CONNECTION", "CONSISTENT",
+ "CONSTRAINT_CATALOG", "CONSTRAINT_SCHEMA",
+ "CONSTRAINT_NAME", "CONTAINS", "CONTEXT",
+ "CONTRIBUTORS", "COPY", "CPU", "CURSOR_NAME",
+ "DATA", "DATAFILE", "DEALLOCATE", "DEFAULT_AUTH",
+ "DEFINER", "DELAY_KEY_WRITE", "DES_KEY_FILE",
+ "DIRECTORY", "DISABLE", "DISCARD", "DISK",
+ "DO", "DUMPFILE", "DUPLICATE", "DYNAMIC",
+ "ENABLE", "ENCRYPTION", "END", "ENDS",
+ "ENGINE", "ENGINES", "ERROR", "ERRORS",
+ "ESCAPE", "EVEN", "EVENT", "EVENTS", "EVERY",
+ "EXCHANGE", "EXCLUSIVE", "EXPIRE", "EXPORT",
+ "EXTENDED", "EXTENT_SIZE", "FAST", "FAULTS",
+ "FIELDS", "FILE_BLOCK_SIZE", "FILTER",
+ "FIRST", "FIXED", "FLUSH", "FOLLOWS", "FOUND",
+ "FULL", "FUNCTION", "GENERAL", "GLOBAL",
+ "GRANTS", "GROUP_REPLICATION", "HANDLER",
+ "HASH", "HELP", "HOST", "HOSTS", "IDENTIFIED",
+ "IGNORE_SERVER_IDS", "IMPORT", "INDEXES",
+ "INITIAL_SIZE", "INPLACE", "INSERT_METHOD",
+ "INSTALL", "INSTANCE", "INVISIBLE", "INVOKER",
+ "IO", "IO_THREAD", "IPC", "ISOLATION",
+ "ISSUER", "JSON", "KEY_BLOCK_SIZE", "LANGUAGE",
+ "LAST", "LEAVES", "LESS", "LEVEL", "LIST",
+ "LOCAL", "LOGFILE", "LOGS", "MASTER", "MASTER_AUTO_POSITION",
+ "MASTER_CONNECT_RETRY", "MASTER_DELAY",
+ "MASTER_HEARTBEAT_PERIOD", "MASTER_HOST",
+ "MASTER_LOG_FILE", "MASTER_LOG_POS", "MASTER_PASSWORD",
+ "MASTER_PORT", "MASTER_RETRY_COUNT", "MASTER_SSL",
+ "MASTER_SSL_CA", "MASTER_SSL_CAPATH", "MASTER_SSL_CERT",
+ "MASTER_SSL_CIPHER", "MASTER_SSL_CRL",
+ "MASTER_SSL_CRLPATH", "MASTER_SSL_KEY",
+ "MASTER_TLS_VERSION", "MASTER_USER", "MAX_CONNECTIONS_PER_HOUR",
+ "MAX_QUERIES_PER_HOUR", "MAX_ROWS", "MAX_SIZE",
+ "MAX_UPDATES_PER_HOUR", "MAX_USER_CONNECTIONS",
+ "MEDIUM", "MERGE", "MESSAGE_TEXT", "MID",
+ "MIGRATE", "MIN_ROWS", "MODE", "MODIFY",
+ "MUTEX", "MYSQL", "MYSQL_ERRNO", "NAME",
+ "NAMES", "NCHAR", "NEVER", "NEXT", "NO",
+ "NODEGROUP", "NONE", "OFFLINE", "OFFSET",
+ "OJ", "OLD_PASSWORD", "ONE", "ONLINE",
+ "ONLY", "OPEN", "OPTIMIZER_COSTS", "OPTIONS",
+ "OWNER", "PACK_KEYS", "PAGE", "PARSER",
+ "PARTIAL", "PARTITIONING", "PARTITIONS",
+ "PASSWORD", "PHASE", "PLUGIN", "PLUGIN_DIR",
+ "PLUGINS", "PORT", "PRECEDES", "PREPARE",
+ "PRESERVE", "PREV", "PROCESSLIST", "PROFILE",
+ "PROFILES", "PROXY", "QUERY", "QUICK",
+ "REBUILD", "RECOVER", "REDO_BUFFER_SIZE",
+ "REDUNDANT", "RELAY", "RELAY_LOG_FILE",
+ "RELAY_LOG_POS", "RELAYLOG", "REMOVE",
+ "REORGANIZE", "REPAIR", "REPLICATE_DO_DB",
+ "REPLICATE_DO_TABLE", "REPLICATE_IGNORE_DB",
+ "REPLICATE_IGNORE_TABLE", "REPLICATE_REWRITE_DB",
+ "REPLICATE_WILD_DO_TABLE", "REPLICATE_WILD_IGNORE_TABLE",
+ "REPLICATION", "RESET", "RESUME", "RETURNED_SQLSTATE",
+ "RETURNS", "ROLE", "ROLLBACK", "ROLLUP",
+ "ROTATE", "ROW", "ROWS", "ROW_FORMAT",
+ "SAVEPOINT", "SCHEDULE", "SECURITY", "SERVER",
+ "SESSION", "SHARE", "SHARED", "SIGNED",
+ "SIMPLE", "SLAVE", "SLOW", "SNAPSHOT",
+ "SOCKET", "SOME", "SONAME", "SOUNDS", "SOURCE",
+ "SQL_AFTER_GTIDS", "SQL_AFTER_MTS_GAPS",
+ "SQL_BEFORE_GTIDS", "SQL_BUFFER_RESULT",
+ "SQL_CACHE", "SQL_NO_CACHE", "SQL_THREAD",
+ "START", "STARTS", "STATS_AUTO_RECALC",
+ "STATS_PERSISTENT", "STATS_SAMPLE_PAGES",
+ "STATUS", "STOP", "STORAGE", "STORED",
+ "STRING", "SUBCLASS_ORIGIN", "SUBJECT",
+ "SUBPARTITION", "SUBPARTITIONS", "SUSPEND",
+ "SWAPS", "SWITCHES", "TABLE_NAME", "TABLESPACE",
+ "TEMPORARY", "TEMPTABLE", "THAN", "TRADITIONAL",
+ "TRANSACTION", "TRANSACTIONAL", "TRIGGERS",
+ "TRUNCATE", "UNDEFINED", "UNDOFILE", "UNDO_BUFFER_SIZE",
+ "UNINSTALL", "UNKNOWN", "UNTIL", "UPGRADE",
+ "USER", "USE_FRM", "USER_RESOURCES", "VALIDATION",
+ "VALUE", "VARIABLES", "VIEW", "VIRTUAL",
+ "VISIBLE", "WAIT", "WARNINGS", "WITHOUT",
+ "WORK", "WRAPPER", "X509", "XA", "XML",
+ "EUR", "USA", "JIS", "ISO", "INTERNAL",
+ "QUARTER", "MONTH", "DAY", "HOUR", "MINUTE",
+ "WEEK", "SECOND", "MICROSECOND", "TABLES",
+ "ROUTINE", "EXECUTE", "FILE", "PROCESS",
+ "RELOAD", "SHUTDOWN", "SUPER", "PRIVILEGES",
+ "APPLICATION_PASSWORD_ADMIN", "AUDIT_ADMIN",
+ "BACKUP_ADMIN", "BINLOG_ADMIN", "BINLOG_ENCRYPTION_ADMIN",
+ "CLONE_ADMIN", "CONNECTION_ADMIN", "ENCRYPTION_KEY_ADMIN",
+ "FIREWALL_ADMIN", "FIREWALL_USER", "GROUP_REPLICATION_ADMIN",
+ "INNODB_REDO_LOG_ARCHIVE", "NDB_STORED_USER",
+ "PERSIST_RO_VARIABLES_ADMIN", "REPLICATION_APPLIER",
+ "REPLICATION_SLAVE_ADMIN", "RESOURCE_GROUP_ADMIN",
+ "RESOURCE_GROUP_USER", "ROLE_ADMIN", "SESSION_VARIABLES_ADMIN",
+ "SET_USER_ID", "SHOW_ROUTINE", "SYSTEM_VARIABLES_ADMIN",
+ "TABLE_ENCRYPTION_ADMIN", "VERSION_TOKEN_ADMIN",
+ "XA_RECOVER_ADMIN", "ARMSCII8", "ASCII",
+ "BIG5", "CP1250", "CP1251", "CP1256", "CP1257",
+ "CP850", "CP852", "CP866", "CP932", "DEC8",
+ "EUCJPMS", "EUCKR", "GB2312", "GBK", "GEOSTD8",
+ "GREEK", "HEBREW", "HP8", "KEYBCS2", "KOI8R",
+ "KOI8U", "LATIN1", "LATIN2", "LATIN5",
+ "LATIN7", "MACCE", "MACROMAN", "SJIS",
+ "SWE7", "TIS620", "UCS2", "UJIS", "UTF16",
+ "UTF16LE", "UTF32", "UTF8", "UTF8MB3",
+ "UTF8MB4", "ARCHIVE", "BLACKHOLE", "CSV",
+ "FEDERATED", "INNODB", "MEMORY", "MRG_MYISAM",
+ "MYISAM", "NDB", "NDBCLUSTER", "PERFORMANCE_SCHEMA",
+ "TOKUDB", "REPEATABLE", "COMMITTED", "UNCOMMITTED",
+ "SERIALIZABLE", "GEOMETRYCOLLECTION", "GEOMCOLLECTION",
+ "GEOMETRY", "LINESTRING", "MULTILINESTRING",
+ "MULTIPOINT", "MULTIPOLYGON", "POINT",
+ "POLYGON", "ABS", "ACOS", "ADDDATE", "ADDTIME",
+ "AES_DECRYPT", "AES_ENCRYPT", "AREA", "ASBINARY",
+ "ASIN", "ASTEXT", "ASWKB", "ASWKT", "ASYMMETRIC_DECRYPT",
+ "ASYMMETRIC_DERIVE", "ASYMMETRIC_ENCRYPT",
+ "ASYMMETRIC_SIGN", "ASYMMETRIC_VERIFY",
+ "ATAN", "ATAN2", "BENCHMARK", "BIN", "BIT_COUNT",
+ "BIT_LENGTH", "BUFFER", "CATALOG_NAME",
+ "CEIL", "CEILING", "CENTROID", "CHARACTER_LENGTH",
+ "CHARSET", "CHAR_LENGTH", "COERCIBILITY",
+ "COLLATION", "COMPRESS", "CONCAT", "CONCAT_WS",
+ "CONNECTION_ID", "CONV", "CONVERT_TZ",
+ "COS", "COT", "CRC32", "CREATE_ASYMMETRIC_PRIV_KEY",
+ "CREATE_ASYMMETRIC_PUB_KEY", "CREATE_DH_PARAMETERS",
+ "CREATE_DIGEST", "CROSSES", "DATEDIFF",
+ "DATE_FORMAT", "DAYNAME", "DAYOFMONTH",
+ "DAYOFWEEK", "DAYOFYEAR", "DECODE", "DEGREES",
+ "DES_DECRYPT", "DES_ENCRYPT", "DIMENSION",
+ "DISJOINT", "ELT", "ENCODE", "ENCRYPT",
+ "ENDPOINT", "ENVELOPE", "EQUALS", "EXP",
+ "EXPORT_SET", "EXTERIORRING", "EXTRACTVALUE",
+ "FIELD", "FIND_IN_SET", "FLOOR", "FORMAT",
+ "FOUND_ROWS", "FROM_BASE64", "FROM_DAYS",
+ "FROM_UNIXTIME", "GEOMCOLLFROMTEXT", "GEOMCOLLFROMWKB",
+ "GEOMETRYCOLLECTIONFROMTEXT", "GEOMETRYCOLLECTIONFROMWKB",
+ "GEOMETRYFROMTEXT", "GEOMETRYFROMWKB",
+ "GEOMETRYN", "GEOMETRYTYPE", "GEOMFROMTEXT",
+ "GEOMFROMWKB", "GET_FORMAT", "GET_LOCK",
+ "GLENGTH", "GREATEST", "GTID_SUBSET", "GTID_SUBTRACT",
+ "HEX", "IFNULL", "INET6_ATON", "INET6_NTOA",
+ "INET_ATON", "INET_NTOA", "INSTR", "INTERIORRINGN",
+ "INTERSECTS", "ISCLOSED", "ISEMPTY", "ISNULL",
+ "ISSIMPLE", "IS_FREE_LOCK", "IS_IPV4",
+ "IS_IPV4_COMPAT", "IS_IPV4_MAPPED", "IS_IPV6",
+ "IS_USED_LOCK", "LAST_INSERT_ID", "LCASE",
+ "LEAST", "LENGTH", "LINEFROMTEXT", "LINEFROMWKB",
+ "LINESTRINGFROMTEXT", "LINESTRINGFROMWKB",
+ "LN", "LOAD_FILE", "LOCATE", "LOG", "LOG10",
+ "LOG2", "LOWER", "LPAD", "LTRIM", "MAKEDATE",
+ "MAKETIME", "MAKE_SET", "MASTER_POS_WAIT",
+ "MBRCONTAINS", "MBRDISJOINT", "MBREQUAL",
+ "MBRINTERSECTS", "MBROVERLAPS", "MBRTOUCHES",
+ "MBRWITHIN", "MD5", "MLINEFROMTEXT", "MLINEFROMWKB",
+ "MONTHNAME", "MPOINTFROMTEXT", "MPOINTFROMWKB",
+ "MPOLYFROMTEXT", "MPOLYFROMWKB", "MULTILINESTRINGFROMTEXT",
+ "MULTILINESTRINGFROMWKB", "MULTIPOINTFROMTEXT",
+ "MULTIPOINTFROMWKB", "MULTIPOLYGONFROMTEXT",
+ "MULTIPOLYGONFROMWKB", "NAME_CONST", "NULLIF",
+ "NUMGEOMETRIES", "NUMINTERIORRINGS", "NUMPOINTS",
+ "OCT", "OCTET_LENGTH", "ORD", "OVERLAPS",
+ "PERIOD_ADD", "PERIOD_DIFF", "PI", "POINTFROMTEXT",
+ "POINTFROMWKB", "POINTN", "POLYFROMTEXT",
+ "POLYFROMWKB", "POLYGONFROMTEXT", "POLYGONFROMWKB",
+ "POW", "POWER", "QUOTE", "RADIANS", "RAND",
+ "RANDOM_BYTES", "RELEASE_LOCK", "REVERSE",
+ "ROUND", "ROW_COUNT", "RPAD", "RTRIM",
+ "SEC_TO_TIME", "SESSION_USER", "SHA", "SHA1",
+ "SHA2", "SCHEMA_NAME", "SIGN", "SIN", "SLEEP",
+ "SOUNDEX", "SQL_THREAD_WAIT_AFTER_GTIDS",
+ "SQRT", "SRID", "STARTPOINT", "STRCMP",
+ "STR_TO_DATE", "ST_AREA", "ST_ASBINARY",
+ "ST_ASTEXT", "ST_ASWKB", "ST_ASWKT", "ST_BUFFER",
+ "ST_CENTROID", "ST_CONTAINS", "ST_CROSSES",
+ "ST_DIFFERENCE", "ST_DIMENSION", "ST_DISJOINT",
+ "ST_DISTANCE", "ST_ENDPOINT", "ST_ENVELOPE",
+ "ST_EQUALS", "ST_EXTERIORRING", "ST_GEOMCOLLFROMTEXT",
+ "ST_GEOMCOLLFROMTXT", "ST_GEOMCOLLFROMWKB",
+ "ST_GEOMETRYCOLLECTIONFROMTEXT", "ST_GEOMETRYCOLLECTIONFROMWKB",
+ "ST_GEOMETRYFROMTEXT", "ST_GEOMETRYFROMWKB",
+ "ST_GEOMETRYN", "ST_GEOMETRYTYPE", "ST_GEOMFROMTEXT",
+ "ST_GEOMFROMWKB", "ST_INTERIORRINGN", "ST_INTERSECTION",
+ "ST_INTERSECTS", "ST_ISCLOSED", "ST_ISEMPTY",
+ "ST_ISSIMPLE", "ST_LINEFROMTEXT", "ST_LINEFROMWKB",
+ "ST_LINESTRINGFROMTEXT", "ST_LINESTRINGFROMWKB",
+ "ST_NUMGEOMETRIES", "ST_NUMINTERIORRING",
+ "ST_NUMINTERIORRINGS", "ST_NUMPOINTS",
+ "ST_OVERLAPS", "ST_POINTFROMTEXT", "ST_POINTFROMWKB",
+ "ST_POINTN", "ST_POLYFROMTEXT", "ST_POLYFROMWKB",
+ "ST_POLYGONFROMTEXT", "ST_POLYGONFROMWKB",
+ "ST_SRID", "ST_STARTPOINT", "ST_SYMDIFFERENCE",
+ "ST_TOUCHES", "ST_UNION", "ST_WITHIN",
+ "ST_X", "ST_Y", "SUBDATE", "SUBSTRING_INDEX",
+ "SUBTIME", "SYSTEM_USER", "TAN", "TIMEDIFF",
+ "TIMESTAMPADD", "TIMESTAMPDIFF", "TIME_FORMAT",
+ "TIME_TO_SEC", "TOUCHES", "TO_BASE64",
+ "TO_DAYS", "TO_SECONDS", "UCASE", "UNCOMPRESS",
+ "UNCOMPRESSED_LENGTH", "UNHEX", "UNIX_TIMESTAMP",
+ "UPDATEXML", "UPPER", "UUID", "UUID_SHORT",
+ "VALIDATE_PASSWORD_STRENGTH", "VERSION",
+ "WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS", "WEEKDAY",
+ "WEEKOFYEAR", "WEIGHT_STRING", "WITHIN",
+ "YEARWEEK", "Y_FUNCTION", "X_FUNCTION",
+ "VAR_ASSIGN", "PLUS_ASSIGN", "MINUS_ASSIGN",
+ "MULT_ASSIGN", "DIV_ASSIGN", "MOD_ASSIGN",
+ "AND_ASSIGN", "XOR_ASSIGN", "OR_ASSIGN",
+ "STAR", "DIVIDE", "MODULE", "PLUS", "MINUSMINUS",
+ "MINUS", "DIV", "MOD", "EQUAL_SYMBOL",
+ "GREATER_SYMBOL", "LESS_SYMBOL", "EXCLAMATION_SYMBOL",
+ "BIT_NOT_OP", "BIT_OR_OP", "BIT_AND_OP",
+ "BIT_XOR_OP", "DOT", "LR_BRACKET", "RR_BRACKET",
+ "COMMA", "SEMI", "AT_SIGN", "ZERO_DECIMAL",
+ "ONE_DECIMAL", "TWO_DECIMAL", "SINGLE_QUOTE_SYMB",
+ "DOUBLE_QUOTE_SYMB", "REVERSE_QUOTE_SYMB",
+ "COLON_SYMB", "QUOTE_SYMB", "CHARSET_REVERSE_QOUTE_STRING",
+ "FILESIZE_LITERAL", "START_NATIONAL_STRING_LITERAL",
+ "STRING_LITERAL", "DECIMAL_LITERAL", "HEXADECIMAL_LITERAL",
+ "REAL_LITERAL", "NULL_SPEC_LITERAL", "BIT_STRING",
+ "STRING_CHARSET_NAME", "DOT_ID", "ID",
+ "REVERSE_QUOTE_ID", "STRING_USER_NAME",
+ "LOCAL_ID", "GLOBAL_ID", "CHARSET_NAME",
+ "EXPONENT_NUM_PART", "ID_LITERAL", "DQUOTA_STRING",
+ "SQUOTA_STRING", "BQUOTA_STRING", "HEX_DIGIT",
+ "DEC_DIGIT", "BIT_STRING_L", "ERROR_RECONGNIGION" ];
+
+SqlLexer.prototype.grammarFileName = "SqlLexer.g4";
+
+
+exports.SqlLexer = SqlLexer;
+
diff --git a/src/lib/generic/SqlLexer.tokens b/src/lib/generic/SqlLexer.tokens
new file mode 100644
index 0000000..57b4669
--- /dev/null
+++ b/src/lib/generic/SqlLexer.tokens
@@ -0,0 +1,2074 @@
+SPACE=1
+SPEC_MYSQL_COMMENT=2
+COMMENT_INPUT=3
+LINE_COMMENT=4
+ADD=5
+ALL=6
+ALTER=7
+ALWAYS=8
+ANALYZE=9
+AND=10
+AS=11
+ASC=12
+BEFORE=13
+BETWEEN=14
+BOTH=15
+BY=16
+CALL=17
+CASCADE=18
+CASE=19
+CAST=20
+CHANGE=21
+CHARACTER=22
+CHECK=23
+COLLATE=24
+COLUMN=25
+CONDITION=26
+CONSTRAINT=27
+CONTINUE=28
+CONVERT=29
+CREATE=30
+CROSS=31
+CURRENT=32
+CURRENT_USER=33
+CURSOR=34
+DATABASE=35
+DATABASES=36
+DECLARE=37
+DEFAULT=38
+DELAYED=39
+DELETE=40
+DESC=41
+DESCRIBE=42
+DETERMINISTIC=43
+DIAGNOSTICS=44
+DISTINCT=45
+DISTINCTROW=46
+DROP=47
+EACH=48
+ELSE=49
+ELSEIF=50
+ENCLOSED=51
+ESCAPED=52
+EXISTS=53
+EXIT=54
+EXPLAIN=55
+FALSE=56
+FETCH=57
+FOR=58
+FORCE=59
+FOREIGN=60
+FROM=61
+FULLTEXT=62
+GENERATED=63
+GET=64
+GRANT=65
+GROUP=66
+HAVING=67
+HIGH_PRIORITY=68
+IF=69
+IGNORE=70
+IN=71
+INDEX=72
+INFILE=73
+INNER=74
+INOUT=75
+INSERT=76
+INTERVAL=77
+INTO=78
+IS=79
+ITERATE=80
+JOIN=81
+KEY=82
+KEYS=83
+KILL=84
+LEADING=85
+LEAVE=86
+LEFT=87
+LIKE=88
+LIMIT=89
+LINEAR=90
+LINES=91
+LOAD=92
+LOCK=93
+LOOP=94
+LOW_PRIORITY=95
+MASTER_BIND=96
+MASTER_SSL_VERIFY_SERVER_CERT=97
+MATCH=98
+MAXVALUE=99
+MODIFIES=100
+NATURAL=101
+NOT=102
+NO_WRITE_TO_BINLOG=103
+NULL_LITERAL=104
+NUMBER=105
+ON=106
+OPTIMIZE=107
+OPTION=108
+OPTIONALLY=109
+OR=110
+ORDER=111
+OUT=112
+OUTER=113
+OUTFILE=114
+PARTITION=115
+PRIMARY=116
+PROCEDURE=117
+PURGE=118
+RANGE=119
+READ=120
+READS=121
+REFERENCES=122
+REGEXP=123
+RELEASE=124
+RENAME=125
+REPEAT=126
+REPLACE=127
+REQUIRE=128
+RESIGNAL=129
+RESTRICT=130
+RETURN=131
+REVOKE=132
+RIGHT=133
+RLIKE=134
+SCHEMA=135
+SCHEMAS=136
+SELECT=137
+SET=138
+SEPARATOR=139
+SHOW=140
+SIGNAL=141
+SPATIAL=142
+SQL=143
+SQLEXCEPTION=144
+SQLSTATE=145
+SQLWARNING=146
+SQL_BIG_RESULT=147
+SQL_CALC_FOUND_ROWS=148
+SQL_SMALL_RESULT=149
+SSL=150
+STACKED=151
+STARTING=152
+STRAIGHT_JOIN=153
+TABLE=154
+TERMINATED=155
+THEN=156
+TO=157
+TRAILING=158
+TRIGGER=159
+TRUE=160
+UNDO=161
+UNION=162
+UNIQUE=163
+UNLOCK=164
+UNSIGNED=165
+UPDATE=166
+USAGE=167
+USE=168
+USING=169
+VALUES=170
+WHEN=171
+WHERE=172
+WHILE=173
+WITH=174
+WRITE=175
+XOR=176
+ZEROFILL=177
+TINYINT=178
+SMALLINT=179
+MEDIUMINT=180
+MIDDLEINT=181
+INT=182
+INT1=183
+INT2=184
+INT3=185
+INT4=186
+INT8=187
+INTEGER=188
+BIGINT=189
+REAL=190
+DOUBLE=191
+PRECISION=192
+FLOAT=193
+FLOAT4=194
+FLOAT8=195
+DECIMAL=196
+DEC=197
+NUMERIC=198
+DATE=199
+TIME=200
+TIMESTAMP=201
+DATETIME=202
+YEAR=203
+CHAR=204
+VARCHAR=205
+NVARCHAR=206
+NATIONAL=207
+BINARY=208
+VARBINARY=209
+TINYBLOB=210
+BLOB=211
+MEDIUMBLOB=212
+LONG=213
+LONGBLOB=214
+TINYTEXT=215
+TEXT=216
+MEDIUMTEXT=217
+LONGTEXT=218
+ENUM=219
+VARYING=220
+SERIAL=221
+YEAR_MONTH=222
+DAY_HOUR=223
+DAY_MINUTE=224
+DAY_SECOND=225
+HOUR_MINUTE=226
+HOUR_SECOND=227
+MINUTE_SECOND=228
+SECOND_MICROSECOND=229
+MINUTE_MICROSECOND=230
+HOUR_MICROSECOND=231
+DAY_MICROSECOND=232
+JSON_VALID=233
+JSON_SCHEMA_VALID=234
+AVG=235
+BIT_AND=236
+BIT_OR=237
+BIT_XOR=238
+COUNT=239
+GROUP_CONCAT=240
+MAX=241
+MIN=242
+STD=243
+STDDEV=244
+STDDEV_POP=245
+STDDEV_SAMP=246
+SUM=247
+VAR_POP=248
+VAR_SAMP=249
+VARIANCE=250
+CURRENT_DATE=251
+CURRENT_TIME=252
+CURRENT_TIMESTAMP=253
+LOCALTIME=254
+CURDATE=255
+CURTIME=256
+DATE_ADD=257
+DATE_SUB=258
+EXTRACT=259
+LOCALTIMESTAMP=260
+NOW=261
+POSITION=262
+SUBSTR=263
+SUBSTRING=264
+SYSDATE=265
+TRIM=266
+UTC_DATE=267
+UTC_TIME=268
+UTC_TIMESTAMP=269
+ACCOUNT=270
+ACTION=271
+AFTER=272
+AGGREGATE=273
+ALGORITHM=274
+ANY=275
+AT=276
+AUTHORS=277
+AUTOCOMMIT=278
+AUTOEXTEND_SIZE=279
+AUTO_INCREMENT=280
+AVG_ROW_LENGTH=281
+BEGIN=282
+BINLOG=283
+BIT=284
+BLOCK=285
+BOOL=286
+BOOLEAN=287
+BTREE=288
+CACHE=289
+CASCADED=290
+CHAIN=291
+CHANGED=292
+CHANNEL=293
+CHECKSUM=294
+PAGE_CHECKSUM=295
+CIPHER=296
+CLASS_ORIGIN=297
+CLIENT=298
+CLOSE=299
+COALESCE=300
+CODE=301
+COLUMNS=302
+COLUMN_FORMAT=303
+COLUMN_NAME=304
+COMMENT=305
+COMMIT=306
+COMPACT=307
+COMPLETION=308
+COMPRESSED=309
+COMPRESSION=310
+CONCURRENT=311
+CONNECTION=312
+CONSISTENT=313
+CONSTRAINT_CATALOG=314
+CONSTRAINT_SCHEMA=315
+CONSTRAINT_NAME=316
+CONTAINS=317
+CONTEXT=318
+CONTRIBUTORS=319
+COPY=320
+CPU=321
+CURSOR_NAME=322
+DATA=323
+DATAFILE=324
+DEALLOCATE=325
+DEFAULT_AUTH=326
+DEFINER=327
+DELAY_KEY_WRITE=328
+DES_KEY_FILE=329
+DIRECTORY=330
+DISABLE=331
+DISCARD=332
+DISK=333
+DO=334
+DUMPFILE=335
+DUPLICATE=336
+DYNAMIC=337
+ENABLE=338
+ENCRYPTION=339
+END=340
+ENDS=341
+ENGINE=342
+ENGINES=343
+ERROR=344
+ERRORS=345
+ESCAPE=346
+EVEN=347
+EVENT=348
+EVENTS=349
+EVERY=350
+EXCHANGE=351
+EXCLUSIVE=352
+EXPIRE=353
+EXPORT=354
+EXTENDED=355
+EXTENT_SIZE=356
+FAST=357
+FAULTS=358
+FIELDS=359
+FILE_BLOCK_SIZE=360
+FILTER=361
+FIRST=362
+FIXED=363
+FLUSH=364
+FOLLOWS=365
+FOUND=366
+FULL=367
+FUNCTION=368
+GENERAL=369
+GLOBAL=370
+GRANTS=371
+GROUP_REPLICATION=372
+HANDLER=373
+HASH=374
+HELP=375
+HOST=376
+HOSTS=377
+IDENTIFIED=378
+IGNORE_SERVER_IDS=379
+IMPORT=380
+INDEXES=381
+INITIAL_SIZE=382
+INPLACE=383
+INSERT_METHOD=384
+INSTALL=385
+INSTANCE=386
+INVISIBLE=387
+INVOKER=388
+IO=389
+IO_THREAD=390
+IPC=391
+ISOLATION=392
+ISSUER=393
+JSON=394
+KEY_BLOCK_SIZE=395
+LANGUAGE=396
+LAST=397
+LEAVES=398
+LESS=399
+LEVEL=400
+LIST=401
+LOCAL=402
+LOGFILE=403
+LOGS=404
+MASTER=405
+MASTER_AUTO_POSITION=406
+MASTER_CONNECT_RETRY=407
+MASTER_DELAY=408
+MASTER_HEARTBEAT_PERIOD=409
+MASTER_HOST=410
+MASTER_LOG_FILE=411
+MASTER_LOG_POS=412
+MASTER_PASSWORD=413
+MASTER_PORT=414
+MASTER_RETRY_COUNT=415
+MASTER_SSL=416
+MASTER_SSL_CA=417
+MASTER_SSL_CAPATH=418
+MASTER_SSL_CERT=419
+MASTER_SSL_CIPHER=420
+MASTER_SSL_CRL=421
+MASTER_SSL_CRLPATH=422
+MASTER_SSL_KEY=423
+MASTER_TLS_VERSION=424
+MASTER_USER=425
+MAX_CONNECTIONS_PER_HOUR=426
+MAX_QUERIES_PER_HOUR=427
+MAX_ROWS=428
+MAX_SIZE=429
+MAX_UPDATES_PER_HOUR=430
+MAX_USER_CONNECTIONS=431
+MEDIUM=432
+MERGE=433
+MESSAGE_TEXT=434
+MID=435
+MIGRATE=436
+MIN_ROWS=437
+MODE=438
+MODIFY=439
+MUTEX=440
+MYSQL=441
+MYSQL_ERRNO=442
+NAME=443
+NAMES=444
+NCHAR=445
+NEVER=446
+NEXT=447
+NO=448
+NODEGROUP=449
+NONE=450
+OFFLINE=451
+OFFSET=452
+OJ=453
+OLD_PASSWORD=454
+ONE=455
+ONLINE=456
+ONLY=457
+OPEN=458
+OPTIMIZER_COSTS=459
+OPTIONS=460
+OWNER=461
+PACK_KEYS=462
+PAGE=463
+PARSER=464
+PARTIAL=465
+PARTITIONING=466
+PARTITIONS=467
+PASSWORD=468
+PHASE=469
+PLUGIN=470
+PLUGIN_DIR=471
+PLUGINS=472
+PORT=473
+PRECEDES=474
+PREPARE=475
+PRESERVE=476
+PREV=477
+PROCESSLIST=478
+PROFILE=479
+PROFILES=480
+PROXY=481
+QUERY=482
+QUICK=483
+REBUILD=484
+RECOVER=485
+REDO_BUFFER_SIZE=486
+REDUNDANT=487
+RELAY=488
+RELAY_LOG_FILE=489
+RELAY_LOG_POS=490
+RELAYLOG=491
+REMOVE=492
+REORGANIZE=493
+REPAIR=494
+REPLICATE_DO_DB=495
+REPLICATE_DO_TABLE=496
+REPLICATE_IGNORE_DB=497
+REPLICATE_IGNORE_TABLE=498
+REPLICATE_REWRITE_DB=499
+REPLICATE_WILD_DO_TABLE=500
+REPLICATE_WILD_IGNORE_TABLE=501
+REPLICATION=502
+RESET=503
+RESUME=504
+RETURNED_SQLSTATE=505
+RETURNS=506
+ROLE=507
+ROLLBACK=508
+ROLLUP=509
+ROTATE=510
+ROW=511
+ROWS=512
+ROW_FORMAT=513
+SAVEPOINT=514
+SCHEDULE=515
+SECURITY=516
+SERVER=517
+SESSION=518
+SHARE=519
+SHARED=520
+SIGNED=521
+SIMPLE=522
+SLAVE=523
+SLOW=524
+SNAPSHOT=525
+SOCKET=526
+SOME=527
+SONAME=528
+SOUNDS=529
+SOURCE=530
+SQL_AFTER_GTIDS=531
+SQL_AFTER_MTS_GAPS=532
+SQL_BEFORE_GTIDS=533
+SQL_BUFFER_RESULT=534
+SQL_CACHE=535
+SQL_NO_CACHE=536
+SQL_THREAD=537
+START=538
+STARTS=539
+STATS_AUTO_RECALC=540
+STATS_PERSISTENT=541
+STATS_SAMPLE_PAGES=542
+STATUS=543
+STOP=544
+STORAGE=545
+STORED=546
+STRING=547
+SUBCLASS_ORIGIN=548
+SUBJECT=549
+SUBPARTITION=550
+SUBPARTITIONS=551
+SUSPEND=552
+SWAPS=553
+SWITCHES=554
+TABLE_NAME=555
+TABLESPACE=556
+TEMPORARY=557
+TEMPTABLE=558
+THAN=559
+TRADITIONAL=560
+TRANSACTION=561
+TRANSACTIONAL=562
+TRIGGERS=563
+TRUNCATE=564
+UNDEFINED=565
+UNDOFILE=566
+UNDO_BUFFER_SIZE=567
+UNINSTALL=568
+UNKNOWN=569
+UNTIL=570
+UPGRADE=571
+USER=572
+USE_FRM=573
+USER_RESOURCES=574
+VALIDATION=575
+VALUE=576
+VARIABLES=577
+VIEW=578
+VIRTUAL=579
+VISIBLE=580
+WAIT=581
+WARNINGS=582
+WITHOUT=583
+WORK=584
+WRAPPER=585
+X509=586
+XA=587
+XML=588
+EUR=589
+USA=590
+JIS=591
+ISO=592
+INTERNAL=593
+QUARTER=594
+MONTH=595
+DAY=596
+HOUR=597
+MINUTE=598
+WEEK=599
+SECOND=600
+MICROSECOND=601
+TABLES=602
+ROUTINE=603
+EXECUTE=604
+FILE=605
+PROCESS=606
+RELOAD=607
+SHUTDOWN=608
+SUPER=609
+PRIVILEGES=610
+APPLICATION_PASSWORD_ADMIN=611
+AUDIT_ADMIN=612
+BACKUP_ADMIN=613
+BINLOG_ADMIN=614
+BINLOG_ENCRYPTION_ADMIN=615
+CLONE_ADMIN=616
+CONNECTION_ADMIN=617
+ENCRYPTION_KEY_ADMIN=618
+FIREWALL_ADMIN=619
+FIREWALL_USER=620
+GROUP_REPLICATION_ADMIN=621
+INNODB_REDO_LOG_ARCHIVE=622
+NDB_STORED_USER=623
+PERSIST_RO_VARIABLES_ADMIN=624
+REPLICATION_APPLIER=625
+REPLICATION_SLAVE_ADMIN=626
+RESOURCE_GROUP_ADMIN=627
+RESOURCE_GROUP_USER=628
+ROLE_ADMIN=629
+SESSION_VARIABLES_ADMIN=630
+SET_USER_ID=631
+SHOW_ROUTINE=632
+SYSTEM_VARIABLES_ADMIN=633
+TABLE_ENCRYPTION_ADMIN=634
+VERSION_TOKEN_ADMIN=635
+XA_RECOVER_ADMIN=636
+ARMSCII8=637
+ASCII=638
+BIG5=639
+CP1250=640
+CP1251=641
+CP1256=642
+CP1257=643
+CP850=644
+CP852=645
+CP866=646
+CP932=647
+DEC8=648
+EUCJPMS=649
+EUCKR=650
+GB2312=651
+GBK=652
+GEOSTD8=653
+GREEK=654
+HEBREW=655
+HP8=656
+KEYBCS2=657
+KOI8R=658
+KOI8U=659
+LATIN1=660
+LATIN2=661
+LATIN5=662
+LATIN7=663
+MACCE=664
+MACROMAN=665
+SJIS=666
+SWE7=667
+TIS620=668
+UCS2=669
+UJIS=670
+UTF16=671
+UTF16LE=672
+UTF32=673
+UTF8=674
+UTF8MB3=675
+UTF8MB4=676
+ARCHIVE=677
+BLACKHOLE=678
+CSV=679
+FEDERATED=680
+INNODB=681
+MEMORY=682
+MRG_MYISAM=683
+MYISAM=684
+NDB=685
+NDBCLUSTER=686
+PERFORMANCE_SCHEMA=687
+TOKUDB=688
+REPEATABLE=689
+COMMITTED=690
+UNCOMMITTED=691
+SERIALIZABLE=692
+GEOMETRYCOLLECTION=693
+GEOMCOLLECTION=694
+GEOMETRY=695
+LINESTRING=696
+MULTILINESTRING=697
+MULTIPOINT=698
+MULTIPOLYGON=699
+POINT=700
+POLYGON=701
+ABS=702
+ACOS=703
+ADDDATE=704
+ADDTIME=705
+AES_DECRYPT=706
+AES_ENCRYPT=707
+AREA=708
+ASBINARY=709
+ASIN=710
+ASTEXT=711
+ASWKB=712
+ASWKT=713
+ASYMMETRIC_DECRYPT=714
+ASYMMETRIC_DERIVE=715
+ASYMMETRIC_ENCRYPT=716
+ASYMMETRIC_SIGN=717
+ASYMMETRIC_VERIFY=718
+ATAN=719
+ATAN2=720
+BENCHMARK=721
+BIN=722
+BIT_COUNT=723
+BIT_LENGTH=724
+BUFFER=725
+CATALOG_NAME=726
+CEIL=727
+CEILING=728
+CENTROID=729
+CHARACTER_LENGTH=730
+CHARSET=731
+CHAR_LENGTH=732
+COERCIBILITY=733
+COLLATION=734
+COMPRESS=735
+CONCAT=736
+CONCAT_WS=737
+CONNECTION_ID=738
+CONV=739
+CONVERT_TZ=740
+COS=741
+COT=742
+CRC32=743
+CREATE_ASYMMETRIC_PRIV_KEY=744
+CREATE_ASYMMETRIC_PUB_KEY=745
+CREATE_DH_PARAMETERS=746
+CREATE_DIGEST=747
+CROSSES=748
+DATEDIFF=749
+DATE_FORMAT=750
+DAYNAME=751
+DAYOFMONTH=752
+DAYOFWEEK=753
+DAYOFYEAR=754
+DECODE=755
+DEGREES=756
+DES_DECRYPT=757
+DES_ENCRYPT=758
+DIMENSION=759
+DISJOINT=760
+ELT=761
+ENCODE=762
+ENCRYPT=763
+ENDPOINT=764
+ENVELOPE=765
+EQUALS=766
+EXP=767
+EXPORT_SET=768
+EXTERIORRING=769
+EXTRACTVALUE=770
+FIELD=771
+FIND_IN_SET=772
+FLOOR=773
+FORMAT=774
+FOUND_ROWS=775
+FROM_BASE64=776
+FROM_DAYS=777
+FROM_UNIXTIME=778
+GEOMCOLLFROMTEXT=779
+GEOMCOLLFROMWKB=780
+GEOMETRYCOLLECTIONFROMTEXT=781
+GEOMETRYCOLLECTIONFROMWKB=782
+GEOMETRYFROMTEXT=783
+GEOMETRYFROMWKB=784
+GEOMETRYN=785
+GEOMETRYTYPE=786
+GEOMFROMTEXT=787
+GEOMFROMWKB=788
+GET_FORMAT=789
+GET_LOCK=790
+GLENGTH=791
+GREATEST=792
+GTID_SUBSET=793
+GTID_SUBTRACT=794
+HEX=795
+IFNULL=796
+INET6_ATON=797
+INET6_NTOA=798
+INET_ATON=799
+INET_NTOA=800
+INSTR=801
+INTERIORRINGN=802
+INTERSECTS=803
+ISCLOSED=804
+ISEMPTY=805
+ISNULL=806
+ISSIMPLE=807
+IS_FREE_LOCK=808
+IS_IPV4=809
+IS_IPV4_COMPAT=810
+IS_IPV4_MAPPED=811
+IS_IPV6=812
+IS_USED_LOCK=813
+LAST_INSERT_ID=814
+LCASE=815
+LEAST=816
+LENGTH=817
+LINEFROMTEXT=818
+LINEFROMWKB=819
+LINESTRINGFROMTEXT=820
+LINESTRINGFROMWKB=821
+LN=822
+LOAD_FILE=823
+LOCATE=824
+LOG=825
+LOG10=826
+LOG2=827
+LOWER=828
+LPAD=829
+LTRIM=830
+MAKEDATE=831
+MAKETIME=832
+MAKE_SET=833
+MASTER_POS_WAIT=834
+MBRCONTAINS=835
+MBRDISJOINT=836
+MBREQUAL=837
+MBRINTERSECTS=838
+MBROVERLAPS=839
+MBRTOUCHES=840
+MBRWITHIN=841
+MD5=842
+MLINEFROMTEXT=843
+MLINEFROMWKB=844
+MONTHNAME=845
+MPOINTFROMTEXT=846
+MPOINTFROMWKB=847
+MPOLYFROMTEXT=848
+MPOLYFROMWKB=849
+MULTILINESTRINGFROMTEXT=850
+MULTILINESTRINGFROMWKB=851
+MULTIPOINTFROMTEXT=852
+MULTIPOINTFROMWKB=853
+MULTIPOLYGONFROMTEXT=854
+MULTIPOLYGONFROMWKB=855
+NAME_CONST=856
+NULLIF=857
+NUMGEOMETRIES=858
+NUMINTERIORRINGS=859
+NUMPOINTS=860
+OCT=861
+OCTET_LENGTH=862
+ORD=863
+OVERLAPS=864
+PERIOD_ADD=865
+PERIOD_DIFF=866
+PI=867
+POINTFROMTEXT=868
+POINTFROMWKB=869
+POINTN=870
+POLYFROMTEXT=871
+POLYFROMWKB=872
+POLYGONFROMTEXT=873
+POLYGONFROMWKB=874
+POW=875
+POWER=876
+QUOTE=877
+RADIANS=878
+RAND=879
+RANDOM_BYTES=880
+RELEASE_LOCK=881
+REVERSE=882
+ROUND=883
+ROW_COUNT=884
+RPAD=885
+RTRIM=886
+SEC_TO_TIME=887
+SESSION_USER=888
+SHA=889
+SHA1=890
+SHA2=891
+SCHEMA_NAME=892
+SIGN=893
+SIN=894
+SLEEP=895
+SOUNDEX=896
+SQL_THREAD_WAIT_AFTER_GTIDS=897
+SQRT=898
+SRID=899
+STARTPOINT=900
+STRCMP=901
+STR_TO_DATE=902
+ST_AREA=903
+ST_ASBINARY=904
+ST_ASTEXT=905
+ST_ASWKB=906
+ST_ASWKT=907
+ST_BUFFER=908
+ST_CENTROID=909
+ST_CONTAINS=910
+ST_CROSSES=911
+ST_DIFFERENCE=912
+ST_DIMENSION=913
+ST_DISJOINT=914
+ST_DISTANCE=915
+ST_ENDPOINT=916
+ST_ENVELOPE=917
+ST_EQUALS=918
+ST_EXTERIORRING=919
+ST_GEOMCOLLFROMTEXT=920
+ST_GEOMCOLLFROMTXT=921
+ST_GEOMCOLLFROMWKB=922
+ST_GEOMETRYCOLLECTIONFROMTEXT=923
+ST_GEOMETRYCOLLECTIONFROMWKB=924
+ST_GEOMETRYFROMTEXT=925
+ST_GEOMETRYFROMWKB=926
+ST_GEOMETRYN=927
+ST_GEOMETRYTYPE=928
+ST_GEOMFROMTEXT=929
+ST_GEOMFROMWKB=930
+ST_INTERIORRINGN=931
+ST_INTERSECTION=932
+ST_INTERSECTS=933
+ST_ISCLOSED=934
+ST_ISEMPTY=935
+ST_ISSIMPLE=936
+ST_LINEFROMTEXT=937
+ST_LINEFROMWKB=938
+ST_LINESTRINGFROMTEXT=939
+ST_LINESTRINGFROMWKB=940
+ST_NUMGEOMETRIES=941
+ST_NUMINTERIORRING=942
+ST_NUMINTERIORRINGS=943
+ST_NUMPOINTS=944
+ST_OVERLAPS=945
+ST_POINTFROMTEXT=946
+ST_POINTFROMWKB=947
+ST_POINTN=948
+ST_POLYFROMTEXT=949
+ST_POLYFROMWKB=950
+ST_POLYGONFROMTEXT=951
+ST_POLYGONFROMWKB=952
+ST_SRID=953
+ST_STARTPOINT=954
+ST_SYMDIFFERENCE=955
+ST_TOUCHES=956
+ST_UNION=957
+ST_WITHIN=958
+ST_X=959
+ST_Y=960
+SUBDATE=961
+SUBSTRING_INDEX=962
+SUBTIME=963
+SYSTEM_USER=964
+TAN=965
+TIMEDIFF=966
+TIMESTAMPADD=967
+TIMESTAMPDIFF=968
+TIME_FORMAT=969
+TIME_TO_SEC=970
+TOUCHES=971
+TO_BASE64=972
+TO_DAYS=973
+TO_SECONDS=974
+UCASE=975
+UNCOMPRESS=976
+UNCOMPRESSED_LENGTH=977
+UNHEX=978
+UNIX_TIMESTAMP=979
+UPDATEXML=980
+UPPER=981
+UUID=982
+UUID_SHORT=983
+VALIDATE_PASSWORD_STRENGTH=984
+VERSION=985
+WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS=986
+WEEKDAY=987
+WEEKOFYEAR=988
+WEIGHT_STRING=989
+WITHIN=990
+YEARWEEK=991
+Y_FUNCTION=992
+X_FUNCTION=993
+VAR_ASSIGN=994
+PLUS_ASSIGN=995
+MINUS_ASSIGN=996
+MULT_ASSIGN=997
+DIV_ASSIGN=998
+MOD_ASSIGN=999
+AND_ASSIGN=1000
+XOR_ASSIGN=1001
+OR_ASSIGN=1002
+STAR=1003
+DIVIDE=1004
+MODULE=1005
+PLUS=1006
+MINUSMINUS=1007
+MINUS=1008
+DIV=1009
+MOD=1010
+EQUAL_SYMBOL=1011
+GREATER_SYMBOL=1012
+LESS_SYMBOL=1013
+EXCLAMATION_SYMBOL=1014
+BIT_NOT_OP=1015
+BIT_OR_OP=1016
+BIT_AND_OP=1017
+BIT_XOR_OP=1018
+DOT=1019
+LR_BRACKET=1020
+RR_BRACKET=1021
+COMMA=1022
+SEMI=1023
+AT_SIGN=1024
+ZERO_DECIMAL=1025
+ONE_DECIMAL=1026
+TWO_DECIMAL=1027
+SINGLE_QUOTE_SYMB=1028
+DOUBLE_QUOTE_SYMB=1029
+REVERSE_QUOTE_SYMB=1030
+COLON_SYMB=1031
+CHARSET_REVERSE_QOUTE_STRING=1032
+FILESIZE_LITERAL=1033
+START_NATIONAL_STRING_LITERAL=1034
+STRING_LITERAL=1035
+DECIMAL_LITERAL=1036
+HEXADECIMAL_LITERAL=1037
+REAL_LITERAL=1038
+NULL_SPEC_LITERAL=1039
+BIT_STRING=1040
+STRING_CHARSET_NAME=1041
+DOT_ID=1042
+ID=1043
+REVERSE_QUOTE_ID=1044
+STRING_USER_NAME=1045
+LOCAL_ID=1046
+GLOBAL_ID=1047
+ERROR_RECONGNIGION=1048
+'ADD'=5
+'ALL'=6
+'ALTER'=7
+'ALWAYS'=8
+'ANALYZE'=9
+'AND'=10
+'AS'=11
+'ASC'=12
+'BEFORE'=13
+'BETWEEN'=14
+'BOTH'=15
+'BY'=16
+'CALL'=17
+'CASCADE'=18
+'CASE'=19
+'CAST'=20
+'CHANGE'=21
+'CHARACTER'=22
+'CHECK'=23
+'COLLATE'=24
+'COLUMN'=25
+'CONDITION'=26
+'CONSTRAINT'=27
+'CONTINUE'=28
+'CONVERT'=29
+'CREATE'=30
+'CROSS'=31
+'CURRENT'=32
+'CURRENT_USER'=33
+'CURSOR'=34
+'DATABASE'=35
+'DATABASES'=36
+'DECLARE'=37
+'DEFAULT'=38
+'DELAYED'=39
+'DELETE'=40
+'DESC'=41
+'DESCRIBE'=42
+'DETERMINISTIC'=43
+'DIAGNOSTICS'=44
+'DISTINCT'=45
+'DISTINCTROW'=46
+'DROP'=47
+'EACH'=48
+'ELSE'=49
+'ELSEIF'=50
+'ENCLOSED'=51
+'ESCAPED'=52
+'EXISTS'=53
+'EXIT'=54
+'EXPLAIN'=55
+'FALSE'=56
+'FETCH'=57
+'FOR'=58
+'FORCE'=59
+'FOREIGN'=60
+'FROM'=61
+'FULLTEXT'=62
+'GENERATED'=63
+'GET'=64
+'GRANT'=65
+'GROUP'=66
+'HAVING'=67
+'HIGH_PRIORITY'=68
+'IF'=69
+'IGNORE'=70
+'IN'=71
+'INDEX'=72
+'INFILE'=73
+'INNER'=74
+'INOUT'=75
+'INSERT'=76
+'INTERVAL'=77
+'INTO'=78
+'IS'=79
+'ITERATE'=80
+'JOIN'=81
+'KEY'=82
+'KEYS'=83
+'KILL'=84
+'LEADING'=85
+'LEAVE'=86
+'LEFT'=87
+'LIKE'=88
+'LIMIT'=89
+'LINEAR'=90
+'LINES'=91
+'LOAD'=92
+'LOCK'=93
+'LOOP'=94
+'LOW_PRIORITY'=95
+'MASTER_BIND'=96
+'MASTER_SSL_VERIFY_SERVER_CERT'=97
+'MATCH'=98
+'MAXVALUE'=99
+'MODIFIES'=100
+'NATURAL'=101
+'NOT'=102
+'NO_WRITE_TO_BINLOG'=103
+'NULL'=104
+'NUMBER'=105
+'ON'=106
+'OPTIMIZE'=107
+'OPTION'=108
+'OPTIONALLY'=109
+'OR'=110
+'ORDER'=111
+'OUT'=112
+'OUTER'=113
+'OUTFILE'=114
+'PARTITION'=115
+'PRIMARY'=116
+'PROCEDURE'=117
+'PURGE'=118
+'RANGE'=119
+'READ'=120
+'READS'=121
+'REFERENCES'=122
+'REGEXP'=123
+'RELEASE'=124
+'RENAME'=125
+'REPEAT'=126
+'REPLACE'=127
+'REQUIRE'=128
+'RESIGNAL'=129
+'RESTRICT'=130
+'RETURN'=131
+'REVOKE'=132
+'RIGHT'=133
+'RLIKE'=134
+'SCHEMA'=135
+'SCHEMAS'=136
+'SELECT'=137
+'SET'=138
+'SEPARATOR'=139
+'SHOW'=140
+'SIGNAL'=141
+'SPATIAL'=142
+'SQL'=143
+'SQLEXCEPTION'=144
+'SQLSTATE'=145
+'SQLWARNING'=146
+'SQL_BIG_RESULT'=147
+'SQL_CALC_FOUND_ROWS'=148
+'SQL_SMALL_RESULT'=149
+'SSL'=150
+'STACKED'=151
+'STARTING'=152
+'STRAIGHT_JOIN'=153
+'TABLE'=154
+'TERMINATED'=155
+'THEN'=156
+'TO'=157
+'TRAILING'=158
+'TRIGGER'=159
+'TRUE'=160
+'UNDO'=161
+'UNION'=162
+'UNIQUE'=163
+'UNLOCK'=164
+'UNSIGNED'=165
+'UPDATE'=166
+'USAGE'=167
+'USE'=168
+'USING'=169
+'VALUES'=170
+'WHEN'=171
+'WHERE'=172
+'WHILE'=173
+'WITH'=174
+'WRITE'=175
+'XOR'=176
+'ZEROFILL'=177
+'TINYINT'=178
+'SMALLINT'=179
+'MEDIUMINT'=180
+'MIDDLEINT'=181
+'INT'=182
+'INT1'=183
+'INT2'=184
+'INT3'=185
+'INT4'=186
+'INT8'=187
+'INTEGER'=188
+'BIGINT'=189
+'REAL'=190
+'DOUBLE'=191
+'PRECISION'=192
+'FLOAT'=193
+'FLOAT4'=194
+'FLOAT8'=195
+'DECIMAL'=196
+'DEC'=197
+'NUMERIC'=198
+'DATE'=199
+'TIME'=200
+'TIMESTAMP'=201
+'DATETIME'=202
+'YEAR'=203
+'CHAR'=204
+'VARCHAR'=205
+'NVARCHAR'=206
+'NATIONAL'=207
+'BINARY'=208
+'VARBINARY'=209
+'TINYBLOB'=210
+'BLOB'=211
+'MEDIUMBLOB'=212
+'LONG'=213
+'LONGBLOB'=214
+'TINYTEXT'=215
+'TEXT'=216
+'MEDIUMTEXT'=217
+'LONGTEXT'=218
+'ENUM'=219
+'VARYING'=220
+'SERIAL'=221
+'YEAR_MONTH'=222
+'DAY_HOUR'=223
+'DAY_MINUTE'=224
+'DAY_SECOND'=225
+'HOUR_MINUTE'=226
+'HOUR_SECOND'=227
+'MINUTE_SECOND'=228
+'SECOND_MICROSECOND'=229
+'MINUTE_MICROSECOND'=230
+'HOUR_MICROSECOND'=231
+'DAY_MICROSECOND'=232
+'JSON_VALID'=233
+'JSON_SCHEMA_VALID'=234
+'AVG'=235
+'BIT_AND'=236
+'BIT_OR'=237
+'BIT_XOR'=238
+'COUNT'=239
+'GROUP_CONCAT'=240
+'MAX'=241
+'MIN'=242
+'STD'=243
+'STDDEV'=244
+'STDDEV_POP'=245
+'STDDEV_SAMP'=246
+'SUM'=247
+'VAR_POP'=248
+'VAR_SAMP'=249
+'VARIANCE'=250
+'CURRENT_DATE'=251
+'CURRENT_TIME'=252
+'CURRENT_TIMESTAMP'=253
+'LOCALTIME'=254
+'CURDATE'=255
+'CURTIME'=256
+'DATE_ADD'=257
+'DATE_SUB'=258
+'EXTRACT'=259
+'LOCALTIMESTAMP'=260
+'NOW'=261
+'POSITION'=262
+'SUBSTR'=263
+'SUBSTRING'=264
+'SYSDATE'=265
+'TRIM'=266
+'UTC_DATE'=267
+'UTC_TIME'=268
+'UTC_TIMESTAMP'=269
+'ACCOUNT'=270
+'ACTION'=271
+'AFTER'=272
+'AGGREGATE'=273
+'ALGORITHM'=274
+'ANY'=275
+'AT'=276
+'AUTHORS'=277
+'AUTOCOMMIT'=278
+'AUTOEXTEND_SIZE'=279
+'AUTO_INCREMENT'=280
+'AVG_ROW_LENGTH'=281
+'BEGIN'=282
+'BINLOG'=283
+'BIT'=284
+'BLOCK'=285
+'BOOL'=286
+'BOOLEAN'=287
+'BTREE'=288
+'CACHE'=289
+'CASCADED'=290
+'CHAIN'=291
+'CHANGED'=292
+'CHANNEL'=293
+'CHECKSUM'=294
+'PAGE_CHECKSUM'=295
+'CIPHER'=296
+'CLASS_ORIGIN'=297
+'CLIENT'=298
+'CLOSE'=299
+'COALESCE'=300
+'CODE'=301
+'COLUMNS'=302
+'COLUMN_FORMAT'=303
+'COLUMN_NAME'=304
+'COMMENT'=305
+'COMMIT'=306
+'COMPACT'=307
+'COMPLETION'=308
+'COMPRESSED'=309
+'COMPRESSION'=310
+'CONCURRENT'=311
+'CONNECTION'=312
+'CONSISTENT'=313
+'CONSTRAINT_CATALOG'=314
+'CONSTRAINT_SCHEMA'=315
+'CONSTRAINT_NAME'=316
+'CONTAINS'=317
+'CONTEXT'=318
+'CONTRIBUTORS'=319
+'COPY'=320
+'CPU'=321
+'CURSOR_NAME'=322
+'DATA'=323
+'DATAFILE'=324
+'DEALLOCATE'=325
+'DEFAULT_AUTH'=326
+'DEFINER'=327
+'DELAY_KEY_WRITE'=328
+'DES_KEY_FILE'=329
+'DIRECTORY'=330
+'DISABLE'=331
+'DISCARD'=332
+'DISK'=333
+'DO'=334
+'DUMPFILE'=335
+'DUPLICATE'=336
+'DYNAMIC'=337
+'ENABLE'=338
+'ENCRYPTION'=339
+'END'=340
+'ENDS'=341
+'ENGINE'=342
+'ENGINES'=343
+'ERROR'=344
+'ERRORS'=345
+'ESCAPE'=346
+'EVEN'=347
+'EVENT'=348
+'EVENTS'=349
+'EVERY'=350
+'EXCHANGE'=351
+'EXCLUSIVE'=352
+'EXPIRE'=353
+'EXPORT'=354
+'EXTENDED'=355
+'EXTENT_SIZE'=356
+'FAST'=357
+'FAULTS'=358
+'FIELDS'=359
+'FILE_BLOCK_SIZE'=360
+'FILTER'=361
+'FIRST'=362
+'FIXED'=363
+'FLUSH'=364
+'FOLLOWS'=365
+'FOUND'=366
+'FULL'=367
+'FUNCTION'=368
+'GENERAL'=369
+'GLOBAL'=370
+'GRANTS'=371
+'GROUP_REPLICATION'=372
+'HANDLER'=373
+'HASH'=374
+'HELP'=375
+'HOST'=376
+'HOSTS'=377
+'IDENTIFIED'=378
+'IGNORE_SERVER_IDS'=379
+'IMPORT'=380
+'INDEXES'=381
+'INITIAL_SIZE'=382
+'INPLACE'=383
+'INSERT_METHOD'=384
+'INSTALL'=385
+'INSTANCE'=386
+'INVISIBLE'=387
+'INVOKER'=388
+'IO'=389
+'IO_THREAD'=390
+'IPC'=391
+'ISOLATION'=392
+'ISSUER'=393
+'JSON'=394
+'KEY_BLOCK_SIZE'=395
+'LANGUAGE'=396
+'LAST'=397
+'LEAVES'=398
+'LESS'=399
+'LEVEL'=400
+'LIST'=401
+'LOCAL'=402
+'LOGFILE'=403
+'LOGS'=404
+'MASTER'=405
+'MASTER_AUTO_POSITION'=406
+'MASTER_CONNECT_RETRY'=407
+'MASTER_DELAY'=408
+'MASTER_HEARTBEAT_PERIOD'=409
+'MASTER_HOST'=410
+'MASTER_LOG_FILE'=411
+'MASTER_LOG_POS'=412
+'MASTER_PASSWORD'=413
+'MASTER_PORT'=414
+'MASTER_RETRY_COUNT'=415
+'MASTER_SSL'=416
+'MASTER_SSL_CA'=417
+'MASTER_SSL_CAPATH'=418
+'MASTER_SSL_CERT'=419
+'MASTER_SSL_CIPHER'=420
+'MASTER_SSL_CRL'=421
+'MASTER_SSL_CRLPATH'=422
+'MASTER_SSL_KEY'=423
+'MASTER_TLS_VERSION'=424
+'MASTER_USER'=425
+'MAX_CONNECTIONS_PER_HOUR'=426
+'MAX_QUERIES_PER_HOUR'=427
+'MAX_ROWS'=428
+'MAX_SIZE'=429
+'MAX_UPDATES_PER_HOUR'=430
+'MAX_USER_CONNECTIONS'=431
+'MEDIUM'=432
+'MERGE'=433
+'MESSAGE_TEXT'=434
+'MID'=435
+'MIGRATE'=436
+'MIN_ROWS'=437
+'MODE'=438
+'MODIFY'=439
+'MUTEX'=440
+'MYSQL'=441
+'MYSQL_ERRNO'=442
+'NAME'=443
+'NAMES'=444
+'NCHAR'=445
+'NEVER'=446
+'NEXT'=447
+'NO'=448
+'NODEGROUP'=449
+'NONE'=450
+'OFFLINE'=451
+'OFFSET'=452
+'OJ'=453
+'OLD_PASSWORD'=454
+'ONE'=455
+'ONLINE'=456
+'ONLY'=457
+'OPEN'=458
+'OPTIMIZER_COSTS'=459
+'OPTIONS'=460
+'OWNER'=461
+'PACK_KEYS'=462
+'PAGE'=463
+'PARSER'=464
+'PARTIAL'=465
+'PARTITIONING'=466
+'PARTITIONS'=467
+'PASSWORD'=468
+'PHASE'=469
+'PLUGIN'=470
+'PLUGIN_DIR'=471
+'PLUGINS'=472
+'PORT'=473
+'PRECEDES'=474
+'PREPARE'=475
+'PRESERVE'=476
+'PREV'=477
+'PROCESSLIST'=478
+'PROFILE'=479
+'PROFILES'=480
+'PROXY'=481
+'QUERY'=482
+'QUICK'=483
+'REBUILD'=484
+'RECOVER'=485
+'REDO_BUFFER_SIZE'=486
+'REDUNDANT'=487
+'RELAY'=488
+'RELAY_LOG_FILE'=489
+'RELAY_LOG_POS'=490
+'RELAYLOG'=491
+'REMOVE'=492
+'REORGANIZE'=493
+'REPAIR'=494
+'REPLICATE_DO_DB'=495
+'REPLICATE_DO_TABLE'=496
+'REPLICATE_IGNORE_DB'=497
+'REPLICATE_IGNORE_TABLE'=498
+'REPLICATE_REWRITE_DB'=499
+'REPLICATE_WILD_DO_TABLE'=500
+'REPLICATE_WILD_IGNORE_TABLE'=501
+'REPLICATION'=502
+'RESET'=503
+'RESUME'=504
+'RETURNED_SQLSTATE'=505
+'RETURNS'=506
+'ROLE'=507
+'ROLLBACK'=508
+'ROLLUP'=509
+'ROTATE'=510
+'ROW'=511
+'ROWS'=512
+'ROW_FORMAT'=513
+'SAVEPOINT'=514
+'SCHEDULE'=515
+'SECURITY'=516
+'SERVER'=517
+'SESSION'=518
+'SHARE'=519
+'SHARED'=520
+'SIGNED'=521
+'SIMPLE'=522
+'SLAVE'=523
+'SLOW'=524
+'SNAPSHOT'=525
+'SOCKET'=526
+'SOME'=527
+'SONAME'=528
+'SOUNDS'=529
+'SOURCE'=530
+'SQL_AFTER_GTIDS'=531
+'SQL_AFTER_MTS_GAPS'=532
+'SQL_BEFORE_GTIDS'=533
+'SQL_BUFFER_RESULT'=534
+'SQL_CACHE'=535
+'SQL_NO_CACHE'=536
+'SQL_THREAD'=537
+'START'=538
+'STARTS'=539
+'STATS_AUTO_RECALC'=540
+'STATS_PERSISTENT'=541
+'STATS_SAMPLE_PAGES'=542
+'STATUS'=543
+'STOP'=544
+'STORAGE'=545
+'STORED'=546
+'STRING'=547
+'SUBCLASS_ORIGIN'=548
+'SUBJECT'=549
+'SUBPARTITION'=550
+'SUBPARTITIONS'=551
+'SUSPEND'=552
+'SWAPS'=553
+'SWITCHES'=554
+'TABLE_NAME'=555
+'TABLESPACE'=556
+'TEMPORARY'=557
+'TEMPTABLE'=558
+'THAN'=559
+'TRADITIONAL'=560
+'TRANSACTION'=561
+'TRANSACTIONAL'=562
+'TRIGGERS'=563
+'TRUNCATE'=564
+'UNDEFINED'=565
+'UNDOFILE'=566
+'UNDO_BUFFER_SIZE'=567
+'UNINSTALL'=568
+'UNKNOWN'=569
+'UNTIL'=570
+'UPGRADE'=571
+'USER'=572
+'USE_FRM'=573
+'USER_RESOURCES'=574
+'VALIDATION'=575
+'VALUE'=576
+'VARIABLES'=577
+'VIEW'=578
+'VIRTUAL'=579
+'VISIBLE'=580
+'WAIT'=581
+'WARNINGS'=582
+'WITHOUT'=583
+'WORK'=584
+'WRAPPER'=585
+'X509'=586
+'XA'=587
+'XML'=588
+'EUR'=589
+'USA'=590
+'JIS'=591
+'ISO'=592
+'INTERNAL'=593
+'QUARTER'=594
+'MONTH'=595
+'DAY'=596
+'HOUR'=597
+'MINUTE'=598
+'WEEK'=599
+'SECOND'=600
+'MICROSECOND'=601
+'TABLES'=602
+'ROUTINE'=603
+'EXECUTE'=604
+'FILE'=605
+'PROCESS'=606
+'RELOAD'=607
+'SHUTDOWN'=608
+'SUPER'=609
+'PRIVILEGES'=610
+'APPLICATION_PASSWORD_ADMIN'=611
+'AUDIT_ADMIN'=612
+'BACKUP_ADMIN'=613
+'BINLOG_ADMIN'=614
+'BINLOG_ENCRYPTION_ADMIN'=615
+'CLONE_ADMIN'=616
+'CONNECTION_ADMIN'=617
+'ENCRYPTION_KEY_ADMIN'=618
+'FIREWALL_ADMIN'=619
+'FIREWALL_USER'=620
+'GROUP_REPLICATION_ADMIN'=621
+'INNODB_REDO_LOG_ARCHIVE'=622
+'NDB_STORED_USER'=623
+'PERSIST_RO_VARIABLES_ADMIN'=624
+'REPLICATION_APPLIER'=625
+'REPLICATION_SLAVE_ADMIN'=626
+'RESOURCE_GROUP_ADMIN'=627
+'RESOURCE_GROUP_USER'=628
+'ROLE_ADMIN'=629
+'SET_USER_ID'=631
+'SHOW_ROUTINE'=632
+'SYSTEM_VARIABLES_ADMIN'=633
+'TABLE_ENCRYPTION_ADMIN'=634
+'VERSION_TOKEN_ADMIN'=635
+'XA_RECOVER_ADMIN'=636
+'ARMSCII8'=637
+'ASCII'=638
+'BIG5'=639
+'CP1250'=640
+'CP1251'=641
+'CP1256'=642
+'CP1257'=643
+'CP850'=644
+'CP852'=645
+'CP866'=646
+'CP932'=647
+'DEC8'=648
+'EUCJPMS'=649
+'EUCKR'=650
+'GB2312'=651
+'GBK'=652
+'GEOSTD8'=653
+'GREEK'=654
+'HEBREW'=655
+'HP8'=656
+'KEYBCS2'=657
+'KOI8R'=658
+'KOI8U'=659
+'LATIN1'=660
+'LATIN2'=661
+'LATIN5'=662
+'LATIN7'=663
+'MACCE'=664
+'MACROMAN'=665
+'SJIS'=666
+'SWE7'=667
+'TIS620'=668
+'UCS2'=669
+'UJIS'=670
+'UTF16'=671
+'UTF16LE'=672
+'UTF32'=673
+'UTF8'=674
+'UTF8MB3'=675
+'UTF8MB4'=676
+'ARCHIVE'=677
+'BLACKHOLE'=678
+'CSV'=679
+'FEDERATED'=680
+'INNODB'=681
+'MEMORY'=682
+'MRG_MYISAM'=683
+'MYISAM'=684
+'NDB'=685
+'NDBCLUSTER'=686
+'PERFORMANCE_SCHEMA'=687
+'TOKUDB'=688
+'REPEATABLE'=689
+'COMMITTED'=690
+'UNCOMMITTED'=691
+'SERIALIZABLE'=692
+'GEOMETRYCOLLECTION'=693
+'GEOMCOLLECTION'=694
+'GEOMETRY'=695
+'LINESTRING'=696
+'MULTILINESTRING'=697
+'MULTIPOINT'=698
+'MULTIPOLYGON'=699
+'POINT'=700
+'POLYGON'=701
+'ABS'=702
+'ACOS'=703
+'ADDDATE'=704
+'ADDTIME'=705
+'AES_DECRYPT'=706
+'AES_ENCRYPT'=707
+'AREA'=708
+'ASBINARY'=709
+'ASIN'=710
+'ASTEXT'=711
+'ASWKB'=712
+'ASWKT'=713
+'ASYMMETRIC_DECRYPT'=714
+'ASYMMETRIC_DERIVE'=715
+'ASYMMETRIC_ENCRYPT'=716
+'ASYMMETRIC_SIGN'=717
+'ASYMMETRIC_VERIFY'=718
+'ATAN'=719
+'ATAN2'=720
+'BENCHMARK'=721
+'BIN'=722
+'BIT_COUNT'=723
+'BIT_LENGTH'=724
+'BUFFER'=725
+'CATALOG_NAME'=726
+'CEIL'=727
+'CEILING'=728
+'CENTROID'=729
+'CHARACTER_LENGTH'=730
+'CHARSET'=731
+'CHAR_LENGTH'=732
+'COERCIBILITY'=733
+'COLLATION'=734
+'COMPRESS'=735
+'CONCAT'=736
+'CONCAT_WS'=737
+'CONNECTION_ID'=738
+'CONV'=739
+'CONVERT_TZ'=740
+'COS'=741
+'COT'=742
+'CRC32'=743
+'CREATE_ASYMMETRIC_PRIV_KEY'=744
+'CREATE_ASYMMETRIC_PUB_KEY'=745
+'CREATE_DH_PARAMETERS'=746
+'CREATE_DIGEST'=747
+'CROSSES'=748
+'DATEDIFF'=749
+'DATE_FORMAT'=750
+'DAYNAME'=751
+'DAYOFMONTH'=752
+'DAYOFWEEK'=753
+'DAYOFYEAR'=754
+'DECODE'=755
+'DEGREES'=756
+'DES_DECRYPT'=757
+'DES_ENCRYPT'=758
+'DIMENSION'=759
+'DISJOINT'=760
+'ELT'=761
+'ENCODE'=762
+'ENCRYPT'=763
+'ENDPOINT'=764
+'ENVELOPE'=765
+'EQUALS'=766
+'EXP'=767
+'EXPORT_SET'=768
+'EXTERIORRING'=769
+'EXTRACTVALUE'=770
+'FIELD'=771
+'FIND_IN_SET'=772
+'FLOOR'=773
+'FORMAT'=774
+'FOUND_ROWS'=775
+'FROM_BASE64'=776
+'FROM_DAYS'=777
+'FROM_UNIXTIME'=778
+'GEOMCOLLFROMTEXT'=779
+'GEOMCOLLFROMWKB'=780
+'GEOMETRYCOLLECTIONFROMTEXT'=781
+'GEOMETRYCOLLECTIONFROMWKB'=782
+'GEOMETRYFROMTEXT'=783
+'GEOMETRYFROMWKB'=784
+'GEOMETRYN'=785
+'GEOMETRYTYPE'=786
+'GEOMFROMTEXT'=787
+'GEOMFROMWKB'=788
+'GET_FORMAT'=789
+'GET_LOCK'=790
+'GLENGTH'=791
+'GREATEST'=792
+'GTID_SUBSET'=793
+'GTID_SUBTRACT'=794
+'HEX'=795
+'IFNULL'=796
+'INET6_ATON'=797
+'INET6_NTOA'=798
+'INET_ATON'=799
+'INET_NTOA'=800
+'INSTR'=801
+'INTERIORRINGN'=802
+'INTERSECTS'=803
+'ISCLOSED'=804
+'ISEMPTY'=805
+'ISNULL'=806
+'ISSIMPLE'=807
+'IS_FREE_LOCK'=808
+'IS_IPV4'=809
+'IS_IPV4_COMPAT'=810
+'IS_IPV4_MAPPED'=811
+'IS_IPV6'=812
+'IS_USED_LOCK'=813
+'LAST_INSERT_ID'=814
+'LCASE'=815
+'LEAST'=816
+'LENGTH'=817
+'LINEFROMTEXT'=818
+'LINEFROMWKB'=819
+'LINESTRINGFROMTEXT'=820
+'LINESTRINGFROMWKB'=821
+'LN'=822
+'LOAD_FILE'=823
+'LOCATE'=824
+'LOG'=825
+'LOG10'=826
+'LOG2'=827
+'LOWER'=828
+'LPAD'=829
+'LTRIM'=830
+'MAKEDATE'=831
+'MAKETIME'=832
+'MAKE_SET'=833
+'MASTER_POS_WAIT'=834
+'MBRCONTAINS'=835
+'MBRDISJOINT'=836
+'MBREQUAL'=837
+'MBRINTERSECTS'=838
+'MBROVERLAPS'=839
+'MBRTOUCHES'=840
+'MBRWITHIN'=841
+'MD5'=842
+'MLINEFROMTEXT'=843
+'MLINEFROMWKB'=844
+'MONTHNAME'=845
+'MPOINTFROMTEXT'=846
+'MPOINTFROMWKB'=847
+'MPOLYFROMTEXT'=848
+'MPOLYFROMWKB'=849
+'MULTILINESTRINGFROMTEXT'=850
+'MULTILINESTRINGFROMWKB'=851
+'MULTIPOINTFROMTEXT'=852
+'MULTIPOINTFROMWKB'=853
+'MULTIPOLYGONFROMTEXT'=854
+'MULTIPOLYGONFROMWKB'=855
+'NAME_CONST'=856
+'NULLIF'=857
+'NUMGEOMETRIES'=858
+'NUMINTERIORRINGS'=859
+'NUMPOINTS'=860
+'OCT'=861
+'OCTET_LENGTH'=862
+'ORD'=863
+'OVERLAPS'=864
+'PERIOD_ADD'=865
+'PERIOD_DIFF'=866
+'PI'=867
+'POINTFROMTEXT'=868
+'POINTFROMWKB'=869
+'POINTN'=870
+'POLYFROMTEXT'=871
+'POLYFROMWKB'=872
+'POLYGONFROMTEXT'=873
+'POLYGONFROMWKB'=874
+'POW'=875
+'POWER'=876
+'QUOTE'=877
+'RADIANS'=878
+'RAND'=879
+'RANDOM_BYTES'=880
+'RELEASE_LOCK'=881
+'REVERSE'=882
+'ROUND'=883
+'ROW_COUNT'=884
+'RPAD'=885
+'RTRIM'=886
+'SEC_TO_TIME'=887
+'SESSION_USER'=888
+'SHA'=889
+'SHA1'=890
+'SHA2'=891
+'SCHEMA_NAME'=892
+'SIGN'=893
+'SIN'=894
+'SLEEP'=895
+'SOUNDEX'=896
+'SQL_THREAD_WAIT_AFTER_GTIDS'=897
+'SQRT'=898
+'SRID'=899
+'STARTPOINT'=900
+'STRCMP'=901
+'STR_TO_DATE'=902
+'ST_AREA'=903
+'ST_ASBINARY'=904
+'ST_ASTEXT'=905
+'ST_ASWKB'=906
+'ST_ASWKT'=907
+'ST_BUFFER'=908
+'ST_CENTROID'=909
+'ST_CONTAINS'=910
+'ST_CROSSES'=911
+'ST_DIFFERENCE'=912
+'ST_DIMENSION'=913
+'ST_DISJOINT'=914
+'ST_DISTANCE'=915
+'ST_ENDPOINT'=916
+'ST_ENVELOPE'=917
+'ST_EQUALS'=918
+'ST_EXTERIORRING'=919
+'ST_GEOMCOLLFROMTEXT'=920
+'ST_GEOMCOLLFROMTXT'=921
+'ST_GEOMCOLLFROMWKB'=922
+'ST_GEOMETRYCOLLECTIONFROMTEXT'=923
+'ST_GEOMETRYCOLLECTIONFROMWKB'=924
+'ST_GEOMETRYFROMTEXT'=925
+'ST_GEOMETRYFROMWKB'=926
+'ST_GEOMETRYN'=927
+'ST_GEOMETRYTYPE'=928
+'ST_GEOMFROMTEXT'=929
+'ST_GEOMFROMWKB'=930
+'ST_INTERIORRINGN'=931
+'ST_INTERSECTION'=932
+'ST_INTERSECTS'=933
+'ST_ISCLOSED'=934
+'ST_ISEMPTY'=935
+'ST_ISSIMPLE'=936
+'ST_LINEFROMTEXT'=937
+'ST_LINEFROMWKB'=938
+'ST_LINESTRINGFROMTEXT'=939
+'ST_LINESTRINGFROMWKB'=940
+'ST_NUMGEOMETRIES'=941
+'ST_NUMINTERIORRING'=942
+'ST_NUMINTERIORRINGS'=943
+'ST_NUMPOINTS'=944
+'ST_OVERLAPS'=945
+'ST_POINTFROMTEXT'=946
+'ST_POINTFROMWKB'=947
+'ST_POINTN'=948
+'ST_POLYFROMTEXT'=949
+'ST_POLYFROMWKB'=950
+'ST_POLYGONFROMTEXT'=951
+'ST_POLYGONFROMWKB'=952
+'ST_SRID'=953
+'ST_STARTPOINT'=954
+'ST_SYMDIFFERENCE'=955
+'ST_TOUCHES'=956
+'ST_UNION'=957
+'ST_WITHIN'=958
+'ST_X'=959
+'ST_Y'=960
+'SUBDATE'=961
+'SUBSTRING_INDEX'=962
+'SUBTIME'=963
+'SYSTEM_USER'=964
+'TAN'=965
+'TIMEDIFF'=966
+'TIMESTAMPADD'=967
+'TIMESTAMPDIFF'=968
+'TIME_FORMAT'=969
+'TIME_TO_SEC'=970
+'TOUCHES'=971
+'TO_BASE64'=972
+'TO_DAYS'=973
+'TO_SECONDS'=974
+'UCASE'=975
+'UNCOMPRESS'=976
+'UNCOMPRESSED_LENGTH'=977
+'UNHEX'=978
+'UNIX_TIMESTAMP'=979
+'UPDATEXML'=980
+'UPPER'=981
+'UUID'=982
+'UUID_SHORT'=983
+'VALIDATE_PASSWORD_STRENGTH'=984
+'VERSION'=985
+'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS'=986
+'WEEKDAY'=987
+'WEEKOFYEAR'=988
+'WEIGHT_STRING'=989
+'WITHIN'=990
+'YEARWEEK'=991
+'Y'=992
+'X'=993
+':='=994
+'+='=995
+'-='=996
+'*='=997
+'/='=998
+'%='=999
+'&='=1000
+'^='=1001
+'|='=1002
+'*'=1003
+'/'=1004
+'%'=1005
+'+'=1006
+'--'=1007
+'-'=1008
+'DIV'=1009
+'MOD'=1010
+'='=1011
+'>'=1012
+'<'=1013
+'!'=1014
+'~'=1015
+'|'=1016
+'&'=1017
+'^'=1018
+'.'=1019
+'('=1020
+')'=1021
+','=1022
+';'=1023
+'@'=1024
+'0'=1025
+'1'=1026
+'2'=1027
+'\''=1028
+'"'=1029
+'`'=1030
+':'=1031
diff --git a/src/lib/generic/SqlParser.interp b/src/lib/generic/SqlParser.interp
new file mode 100644
index 0000000..99e8acf
--- /dev/null
+++ b/src/lib/generic/SqlParser.interp
@@ -0,0 +1,2423 @@
+token literal names:
+null
+null
+null
+null
+null
+'ADD'
+'ALL'
+'ALTER'
+'ALWAYS'
+'ANALYZE'
+'AND'
+'AS'
+'ASC'
+'BEFORE'
+'BETWEEN'
+'BOTH'
+'BY'
+'CALL'
+'CASCADE'
+'CASE'
+'CAST'
+'CHANGE'
+'CHARACTER'
+'CHECK'
+'COLLATE'
+'COLUMN'
+'CONDITION'
+'CONSTRAINT'
+'CONTINUE'
+'CONVERT'
+'CREATE'
+'CROSS'
+'CURRENT'
+'CURRENT_USER'
+'CURSOR'
+'DATABASE'
+'DATABASES'
+'DECLARE'
+'DEFAULT'
+'DELAYED'
+'DELETE'
+'DESC'
+'DESCRIBE'
+'DETERMINISTIC'
+'DIAGNOSTICS'
+'DISTINCT'
+'DISTINCTROW'
+'DROP'
+'EACH'
+'ELSE'
+'ELSEIF'
+'ENCLOSED'
+'ESCAPED'
+'EXISTS'
+'EXIT'
+'EXPLAIN'
+'FALSE'
+'FETCH'
+'FOR'
+'FORCE'
+'FOREIGN'
+'FROM'
+'FULLTEXT'
+'GENERATED'
+'GET'
+'GRANT'
+'GROUP'
+'HAVING'
+'HIGH_PRIORITY'
+'IF'
+'IGNORE'
+'IN'
+'INDEX'
+'INFILE'
+'INNER'
+'INOUT'
+'INSERT'
+'INTERVAL'
+'INTO'
+'IS'
+'ITERATE'
+'JOIN'
+'KEY'
+'KEYS'
+'KILL'
+'LEADING'
+'LEAVE'
+'LEFT'
+'LIKE'
+'LIMIT'
+'LINEAR'
+'LINES'
+'LOAD'
+'LOCK'
+'LOOP'
+'LOW_PRIORITY'
+'MASTER_BIND'
+'MASTER_SSL_VERIFY_SERVER_CERT'
+'MATCH'
+'MAXVALUE'
+'MODIFIES'
+'NATURAL'
+'NOT'
+'NO_WRITE_TO_BINLOG'
+'NULL'
+'NUMBER'
+'ON'
+'OPTIMIZE'
+'OPTION'
+'OPTIONALLY'
+'OR'
+'ORDER'
+'OUT'
+'OUTER'
+'OUTFILE'
+'PARTITION'
+'PRIMARY'
+'PROCEDURE'
+'PURGE'
+'RANGE'
+'READ'
+'READS'
+'REFERENCES'
+'REGEXP'
+'RELEASE'
+'RENAME'
+'REPEAT'
+'REPLACE'
+'REQUIRE'
+'RESIGNAL'
+'RESTRICT'
+'RETURN'
+'REVOKE'
+'RIGHT'
+'RLIKE'
+'SCHEMA'
+'SCHEMAS'
+'SELECT'
+'SET'
+'SEPARATOR'
+'SHOW'
+'SIGNAL'
+'SPATIAL'
+'SQL'
+'SQLEXCEPTION'
+'SQLSTATE'
+'SQLWARNING'
+'SQL_BIG_RESULT'
+'SQL_CALC_FOUND_ROWS'
+'SQL_SMALL_RESULT'
+'SSL'
+'STACKED'
+'STARTING'
+'STRAIGHT_JOIN'
+'TABLE'
+'TERMINATED'
+'THEN'
+'TO'
+'TRAILING'
+'TRIGGER'
+'TRUE'
+'UNDO'
+'UNION'
+'UNIQUE'
+'UNLOCK'
+'UNSIGNED'
+'UPDATE'
+'USAGE'
+'USE'
+'USING'
+'VALUES'
+'WHEN'
+'WHERE'
+'WHILE'
+'WITH'
+'WRITE'
+'XOR'
+'ZEROFILL'
+'TINYINT'
+'SMALLINT'
+'MEDIUMINT'
+'MIDDLEINT'
+'INT'
+'INT1'
+'INT2'
+'INT3'
+'INT4'
+'INT8'
+'INTEGER'
+'BIGINT'
+'REAL'
+'DOUBLE'
+'PRECISION'
+'FLOAT'
+'FLOAT4'
+'FLOAT8'
+'DECIMAL'
+'DEC'
+'NUMERIC'
+'DATE'
+'TIME'
+'TIMESTAMP'
+'DATETIME'
+'YEAR'
+'CHAR'
+'VARCHAR'
+'NVARCHAR'
+'NATIONAL'
+'BINARY'
+'VARBINARY'
+'TINYBLOB'
+'BLOB'
+'MEDIUMBLOB'
+'LONG'
+'LONGBLOB'
+'TINYTEXT'
+'TEXT'
+'MEDIUMTEXT'
+'LONGTEXT'
+'ENUM'
+'VARYING'
+'SERIAL'
+'YEAR_MONTH'
+'DAY_HOUR'
+'DAY_MINUTE'
+'DAY_SECOND'
+'HOUR_MINUTE'
+'HOUR_SECOND'
+'MINUTE_SECOND'
+'SECOND_MICROSECOND'
+'MINUTE_MICROSECOND'
+'HOUR_MICROSECOND'
+'DAY_MICROSECOND'
+'JSON_VALID'
+'JSON_SCHEMA_VALID'
+'AVG'
+'BIT_AND'
+'BIT_OR'
+'BIT_XOR'
+'COUNT'
+'GROUP_CONCAT'
+'MAX'
+'MIN'
+'STD'
+'STDDEV'
+'STDDEV_POP'
+'STDDEV_SAMP'
+'SUM'
+'VAR_POP'
+'VAR_SAMP'
+'VARIANCE'
+'CURRENT_DATE'
+'CURRENT_TIME'
+'CURRENT_TIMESTAMP'
+'LOCALTIME'
+'CURDATE'
+'CURTIME'
+'DATE_ADD'
+'DATE_SUB'
+'EXTRACT'
+'LOCALTIMESTAMP'
+'NOW'
+'POSITION'
+'SUBSTR'
+'SUBSTRING'
+'SYSDATE'
+'TRIM'
+'UTC_DATE'
+'UTC_TIME'
+'UTC_TIMESTAMP'
+'ACCOUNT'
+'ACTION'
+'AFTER'
+'AGGREGATE'
+'ALGORITHM'
+'ANY'
+'AT'
+'AUTHORS'
+'AUTOCOMMIT'
+'AUTOEXTEND_SIZE'
+'AUTO_INCREMENT'
+'AVG_ROW_LENGTH'
+'BEGIN'
+'BINLOG'
+'BIT'
+'BLOCK'
+'BOOL'
+'BOOLEAN'
+'BTREE'
+'CACHE'
+'CASCADED'
+'CHAIN'
+'CHANGED'
+'CHANNEL'
+'CHECKSUM'
+'PAGE_CHECKSUM'
+'CIPHER'
+'CLASS_ORIGIN'
+'CLIENT'
+'CLOSE'
+'COALESCE'
+'CODE'
+'COLUMNS'
+'COLUMN_FORMAT'
+'COLUMN_NAME'
+'COMMENT'
+'COMMIT'
+'COMPACT'
+'COMPLETION'
+'COMPRESSED'
+'COMPRESSION'
+'CONCURRENT'
+'CONNECTION'
+'CONSISTENT'
+'CONSTRAINT_CATALOG'
+'CONSTRAINT_SCHEMA'
+'CONSTRAINT_NAME'
+'CONTAINS'
+'CONTEXT'
+'CONTRIBUTORS'
+'COPY'
+'CPU'
+'CURSOR_NAME'
+'DATA'
+'DATAFILE'
+'DEALLOCATE'
+'DEFAULT_AUTH'
+'DEFINER'
+'DELAY_KEY_WRITE'
+'DES_KEY_FILE'
+'DIRECTORY'
+'DISABLE'
+'DISCARD'
+'DISK'
+'DO'
+'DUMPFILE'
+'DUPLICATE'
+'DYNAMIC'
+'ENABLE'
+'ENCRYPTION'
+'END'
+'ENDS'
+'ENGINE'
+'ENGINES'
+'ERROR'
+'ERRORS'
+'ESCAPE'
+'EVEN'
+'EVENT'
+'EVENTS'
+'EVERY'
+'EXCHANGE'
+'EXCLUSIVE'
+'EXPIRE'
+'EXPORT'
+'EXTENDED'
+'EXTENT_SIZE'
+'FAST'
+'FAULTS'
+'FIELDS'
+'FILE_BLOCK_SIZE'
+'FILTER'
+'FIRST'
+'FIXED'
+'FLUSH'
+'FOLLOWS'
+'FOUND'
+'FULL'
+'FUNCTION'
+'GENERAL'
+'GLOBAL'
+'GRANTS'
+'GROUP_REPLICATION'
+'HANDLER'
+'HASH'
+'HELP'
+'HOST'
+'HOSTS'
+'IDENTIFIED'
+'IGNORE_SERVER_IDS'
+'IMPORT'
+'INDEXES'
+'INITIAL_SIZE'
+'INPLACE'
+'INSERT_METHOD'
+'INSTALL'
+'INSTANCE'
+'INVISIBLE'
+'INVOKER'
+'IO'
+'IO_THREAD'
+'IPC'
+'ISOLATION'
+'ISSUER'
+'JSON'
+'KEY_BLOCK_SIZE'
+'LANGUAGE'
+'LAST'
+'LEAVES'
+'LESS'
+'LEVEL'
+'LIST'
+'LOCAL'
+'LOGFILE'
+'LOGS'
+'MASTER'
+'MASTER_AUTO_POSITION'
+'MASTER_CONNECT_RETRY'
+'MASTER_DELAY'
+'MASTER_HEARTBEAT_PERIOD'
+'MASTER_HOST'
+'MASTER_LOG_FILE'
+'MASTER_LOG_POS'
+'MASTER_PASSWORD'
+'MASTER_PORT'
+'MASTER_RETRY_COUNT'
+'MASTER_SSL'
+'MASTER_SSL_CA'
+'MASTER_SSL_CAPATH'
+'MASTER_SSL_CERT'
+'MASTER_SSL_CIPHER'
+'MASTER_SSL_CRL'
+'MASTER_SSL_CRLPATH'
+'MASTER_SSL_KEY'
+'MASTER_TLS_VERSION'
+'MASTER_USER'
+'MAX_CONNECTIONS_PER_HOUR'
+'MAX_QUERIES_PER_HOUR'
+'MAX_ROWS'
+'MAX_SIZE'
+'MAX_UPDATES_PER_HOUR'
+'MAX_USER_CONNECTIONS'
+'MEDIUM'
+'MERGE'
+'MESSAGE_TEXT'
+'MID'
+'MIGRATE'
+'MIN_ROWS'
+'MODE'
+'MODIFY'
+'MUTEX'
+'MYSQL'
+'MYSQL_ERRNO'
+'NAME'
+'NAMES'
+'NCHAR'
+'NEVER'
+'NEXT'
+'NO'
+'NODEGROUP'
+'NONE'
+'OFFLINE'
+'OFFSET'
+'OJ'
+'OLD_PASSWORD'
+'ONE'
+'ONLINE'
+'ONLY'
+'OPEN'
+'OPTIMIZER_COSTS'
+'OPTIONS'
+'OWNER'
+'PACK_KEYS'
+'PAGE'
+'PARSER'
+'PARTIAL'
+'PARTITIONING'
+'PARTITIONS'
+'PASSWORD'
+'PHASE'
+'PLUGIN'
+'PLUGIN_DIR'
+'PLUGINS'
+'PORT'
+'PRECEDES'
+'PREPARE'
+'PRESERVE'
+'PREV'
+'PROCESSLIST'
+'PROFILE'
+'PROFILES'
+'PROXY'
+'QUERY'
+'QUICK'
+'REBUILD'
+'RECOVER'
+'REDO_BUFFER_SIZE'
+'REDUNDANT'
+'RELAY'
+'RELAY_LOG_FILE'
+'RELAY_LOG_POS'
+'RELAYLOG'
+'REMOVE'
+'REORGANIZE'
+'REPAIR'
+'REPLICATE_DO_DB'
+'REPLICATE_DO_TABLE'
+'REPLICATE_IGNORE_DB'
+'REPLICATE_IGNORE_TABLE'
+'REPLICATE_REWRITE_DB'
+'REPLICATE_WILD_DO_TABLE'
+'REPLICATE_WILD_IGNORE_TABLE'
+'REPLICATION'
+'RESET'
+'RESUME'
+'RETURNED_SQLSTATE'
+'RETURNS'
+'ROLE'
+'ROLLBACK'
+'ROLLUP'
+'ROTATE'
+'ROW'
+'ROWS'
+'ROW_FORMAT'
+'SAVEPOINT'
+'SCHEDULE'
+'SECURITY'
+'SERVER'
+'SESSION'
+'SHARE'
+'SHARED'
+'SIGNED'
+'SIMPLE'
+'SLAVE'
+'SLOW'
+'SNAPSHOT'
+'SOCKET'
+'SOME'
+'SONAME'
+'SOUNDS'
+'SOURCE'
+'SQL_AFTER_GTIDS'
+'SQL_AFTER_MTS_GAPS'
+'SQL_BEFORE_GTIDS'
+'SQL_BUFFER_RESULT'
+'SQL_CACHE'
+'SQL_NO_CACHE'
+'SQL_THREAD'
+'START'
+'STARTS'
+'STATS_AUTO_RECALC'
+'STATS_PERSISTENT'
+'STATS_SAMPLE_PAGES'
+'STATUS'
+'STOP'
+'STORAGE'
+'STORED'
+'STRING'
+'SUBCLASS_ORIGIN'
+'SUBJECT'
+'SUBPARTITION'
+'SUBPARTITIONS'
+'SUSPEND'
+'SWAPS'
+'SWITCHES'
+'TABLE_NAME'
+'TABLESPACE'
+'TEMPORARY'
+'TEMPTABLE'
+'THAN'
+'TRADITIONAL'
+'TRANSACTION'
+'TRANSACTIONAL'
+'TRIGGERS'
+'TRUNCATE'
+'UNDEFINED'
+'UNDOFILE'
+'UNDO_BUFFER_SIZE'
+'UNINSTALL'
+'UNKNOWN'
+'UNTIL'
+'UPGRADE'
+'USER'
+'USE_FRM'
+'USER_RESOURCES'
+'VALIDATION'
+'VALUE'
+'VARIABLES'
+'VIEW'
+'VIRTUAL'
+'VISIBLE'
+'WAIT'
+'WARNINGS'
+'WITHOUT'
+'WORK'
+'WRAPPER'
+'X509'
+'XA'
+'XML'
+'EUR'
+'USA'
+'JIS'
+'ISO'
+'INTERNAL'
+'QUARTER'
+'MONTH'
+'DAY'
+'HOUR'
+'MINUTE'
+'WEEK'
+'SECOND'
+'MICROSECOND'
+'TABLES'
+'ROUTINE'
+'EXECUTE'
+'FILE'
+'PROCESS'
+'RELOAD'
+'SHUTDOWN'
+'SUPER'
+'PRIVILEGES'
+'APPLICATION_PASSWORD_ADMIN'
+'AUDIT_ADMIN'
+'BACKUP_ADMIN'
+'BINLOG_ADMIN'
+'BINLOG_ENCRYPTION_ADMIN'
+'CLONE_ADMIN'
+'CONNECTION_ADMIN'
+'ENCRYPTION_KEY_ADMIN'
+'FIREWALL_ADMIN'
+'FIREWALL_USER'
+'GROUP_REPLICATION_ADMIN'
+'INNODB_REDO_LOG_ARCHIVE'
+'NDB_STORED_USER'
+'PERSIST_RO_VARIABLES_ADMIN'
+'REPLICATION_APPLIER'
+'REPLICATION_SLAVE_ADMIN'
+'RESOURCE_GROUP_ADMIN'
+'RESOURCE_GROUP_USER'
+'ROLE_ADMIN'
+null
+'SET_USER_ID'
+'SHOW_ROUTINE'
+'SYSTEM_VARIABLES_ADMIN'
+'TABLE_ENCRYPTION_ADMIN'
+'VERSION_TOKEN_ADMIN'
+'XA_RECOVER_ADMIN'
+'ARMSCII8'
+'ASCII'
+'BIG5'
+'CP1250'
+'CP1251'
+'CP1256'
+'CP1257'
+'CP850'
+'CP852'
+'CP866'
+'CP932'
+'DEC8'
+'EUCJPMS'
+'EUCKR'
+'GB2312'
+'GBK'
+'GEOSTD8'
+'GREEK'
+'HEBREW'
+'HP8'
+'KEYBCS2'
+'KOI8R'
+'KOI8U'
+'LATIN1'
+'LATIN2'
+'LATIN5'
+'LATIN7'
+'MACCE'
+'MACROMAN'
+'SJIS'
+'SWE7'
+'TIS620'
+'UCS2'
+'UJIS'
+'UTF16'
+'UTF16LE'
+'UTF32'
+'UTF8'
+'UTF8MB3'
+'UTF8MB4'
+'ARCHIVE'
+'BLACKHOLE'
+'CSV'
+'FEDERATED'
+'INNODB'
+'MEMORY'
+'MRG_MYISAM'
+'MYISAM'
+'NDB'
+'NDBCLUSTER'
+'PERFORMANCE_SCHEMA'
+'TOKUDB'
+'REPEATABLE'
+'COMMITTED'
+'UNCOMMITTED'
+'SERIALIZABLE'
+'GEOMETRYCOLLECTION'
+'GEOMCOLLECTION'
+'GEOMETRY'
+'LINESTRING'
+'MULTILINESTRING'
+'MULTIPOINT'
+'MULTIPOLYGON'
+'POINT'
+'POLYGON'
+'ABS'
+'ACOS'
+'ADDDATE'
+'ADDTIME'
+'AES_DECRYPT'
+'AES_ENCRYPT'
+'AREA'
+'ASBINARY'
+'ASIN'
+'ASTEXT'
+'ASWKB'
+'ASWKT'
+'ASYMMETRIC_DECRYPT'
+'ASYMMETRIC_DERIVE'
+'ASYMMETRIC_ENCRYPT'
+'ASYMMETRIC_SIGN'
+'ASYMMETRIC_VERIFY'
+'ATAN'
+'ATAN2'
+'BENCHMARK'
+'BIN'
+'BIT_COUNT'
+'BIT_LENGTH'
+'BUFFER'
+'CATALOG_NAME'
+'CEIL'
+'CEILING'
+'CENTROID'
+'CHARACTER_LENGTH'
+'CHARSET'
+'CHAR_LENGTH'
+'COERCIBILITY'
+'COLLATION'
+'COMPRESS'
+'CONCAT'
+'CONCAT_WS'
+'CONNECTION_ID'
+'CONV'
+'CONVERT_TZ'
+'COS'
+'COT'
+'CRC32'
+'CREATE_ASYMMETRIC_PRIV_KEY'
+'CREATE_ASYMMETRIC_PUB_KEY'
+'CREATE_DH_PARAMETERS'
+'CREATE_DIGEST'
+'CROSSES'
+'DATEDIFF'
+'DATE_FORMAT'
+'DAYNAME'
+'DAYOFMONTH'
+'DAYOFWEEK'
+'DAYOFYEAR'
+'DECODE'
+'DEGREES'
+'DES_DECRYPT'
+'DES_ENCRYPT'
+'DIMENSION'
+'DISJOINT'
+'ELT'
+'ENCODE'
+'ENCRYPT'
+'ENDPOINT'
+'ENVELOPE'
+'EQUALS'
+'EXP'
+'EXPORT_SET'
+'EXTERIORRING'
+'EXTRACTVALUE'
+'FIELD'
+'FIND_IN_SET'
+'FLOOR'
+'FORMAT'
+'FOUND_ROWS'
+'FROM_BASE64'
+'FROM_DAYS'
+'FROM_UNIXTIME'
+'GEOMCOLLFROMTEXT'
+'GEOMCOLLFROMWKB'
+'GEOMETRYCOLLECTIONFROMTEXT'
+'GEOMETRYCOLLECTIONFROMWKB'
+'GEOMETRYFROMTEXT'
+'GEOMETRYFROMWKB'
+'GEOMETRYN'
+'GEOMETRYTYPE'
+'GEOMFROMTEXT'
+'GEOMFROMWKB'
+'GET_FORMAT'
+'GET_LOCK'
+'GLENGTH'
+'GREATEST'
+'GTID_SUBSET'
+'GTID_SUBTRACT'
+'HEX'
+'IFNULL'
+'INET6_ATON'
+'INET6_NTOA'
+'INET_ATON'
+'INET_NTOA'
+'INSTR'
+'INTERIORRINGN'
+'INTERSECTS'
+'ISCLOSED'
+'ISEMPTY'
+'ISNULL'
+'ISSIMPLE'
+'IS_FREE_LOCK'
+'IS_IPV4'
+'IS_IPV4_COMPAT'
+'IS_IPV4_MAPPED'
+'IS_IPV6'
+'IS_USED_LOCK'
+'LAST_INSERT_ID'
+'LCASE'
+'LEAST'
+'LENGTH'
+'LINEFROMTEXT'
+'LINEFROMWKB'
+'LINESTRINGFROMTEXT'
+'LINESTRINGFROMWKB'
+'LN'
+'LOAD_FILE'
+'LOCATE'
+'LOG'
+'LOG10'
+'LOG2'
+'LOWER'
+'LPAD'
+'LTRIM'
+'MAKEDATE'
+'MAKETIME'
+'MAKE_SET'
+'MASTER_POS_WAIT'
+'MBRCONTAINS'
+'MBRDISJOINT'
+'MBREQUAL'
+'MBRINTERSECTS'
+'MBROVERLAPS'
+'MBRTOUCHES'
+'MBRWITHIN'
+'MD5'
+'MLINEFROMTEXT'
+'MLINEFROMWKB'
+'MONTHNAME'
+'MPOINTFROMTEXT'
+'MPOINTFROMWKB'
+'MPOLYFROMTEXT'
+'MPOLYFROMWKB'
+'MULTILINESTRINGFROMTEXT'
+'MULTILINESTRINGFROMWKB'
+'MULTIPOINTFROMTEXT'
+'MULTIPOINTFROMWKB'
+'MULTIPOLYGONFROMTEXT'
+'MULTIPOLYGONFROMWKB'
+'NAME_CONST'
+'NULLIF'
+'NUMGEOMETRIES'
+'NUMINTERIORRINGS'
+'NUMPOINTS'
+'OCT'
+'OCTET_LENGTH'
+'ORD'
+'OVERLAPS'
+'PERIOD_ADD'
+'PERIOD_DIFF'
+'PI'
+'POINTFROMTEXT'
+'POINTFROMWKB'
+'POINTN'
+'POLYFROMTEXT'
+'POLYFROMWKB'
+'POLYGONFROMTEXT'
+'POLYGONFROMWKB'
+'POW'
+'POWER'
+'QUOTE'
+'RADIANS'
+'RAND'
+'RANDOM_BYTES'
+'RELEASE_LOCK'
+'REVERSE'
+'ROUND'
+'ROW_COUNT'
+'RPAD'
+'RTRIM'
+'SEC_TO_TIME'
+'SESSION_USER'
+'SHA'
+'SHA1'
+'SHA2'
+'SCHEMA_NAME'
+'SIGN'
+'SIN'
+'SLEEP'
+'SOUNDEX'
+'SQL_THREAD_WAIT_AFTER_GTIDS'
+'SQRT'
+'SRID'
+'STARTPOINT'
+'STRCMP'
+'STR_TO_DATE'
+'ST_AREA'
+'ST_ASBINARY'
+'ST_ASTEXT'
+'ST_ASWKB'
+'ST_ASWKT'
+'ST_BUFFER'
+'ST_CENTROID'
+'ST_CONTAINS'
+'ST_CROSSES'
+'ST_DIFFERENCE'
+'ST_DIMENSION'
+'ST_DISJOINT'
+'ST_DISTANCE'
+'ST_ENDPOINT'
+'ST_ENVELOPE'
+'ST_EQUALS'
+'ST_EXTERIORRING'
+'ST_GEOMCOLLFROMTEXT'
+'ST_GEOMCOLLFROMTXT'
+'ST_GEOMCOLLFROMWKB'
+'ST_GEOMETRYCOLLECTIONFROMTEXT'
+'ST_GEOMETRYCOLLECTIONFROMWKB'
+'ST_GEOMETRYFROMTEXT'
+'ST_GEOMETRYFROMWKB'
+'ST_GEOMETRYN'
+'ST_GEOMETRYTYPE'
+'ST_GEOMFROMTEXT'
+'ST_GEOMFROMWKB'
+'ST_INTERIORRINGN'
+'ST_INTERSECTION'
+'ST_INTERSECTS'
+'ST_ISCLOSED'
+'ST_ISEMPTY'
+'ST_ISSIMPLE'
+'ST_LINEFROMTEXT'
+'ST_LINEFROMWKB'
+'ST_LINESTRINGFROMTEXT'
+'ST_LINESTRINGFROMWKB'
+'ST_NUMGEOMETRIES'
+'ST_NUMINTERIORRING'
+'ST_NUMINTERIORRINGS'
+'ST_NUMPOINTS'
+'ST_OVERLAPS'
+'ST_POINTFROMTEXT'
+'ST_POINTFROMWKB'
+'ST_POINTN'
+'ST_POLYFROMTEXT'
+'ST_POLYFROMWKB'
+'ST_POLYGONFROMTEXT'
+'ST_POLYGONFROMWKB'
+'ST_SRID'
+'ST_STARTPOINT'
+'ST_SYMDIFFERENCE'
+'ST_TOUCHES'
+'ST_UNION'
+'ST_WITHIN'
+'ST_X'
+'ST_Y'
+'SUBDATE'
+'SUBSTRING_INDEX'
+'SUBTIME'
+'SYSTEM_USER'
+'TAN'
+'TIMEDIFF'
+'TIMESTAMPADD'
+'TIMESTAMPDIFF'
+'TIME_FORMAT'
+'TIME_TO_SEC'
+'TOUCHES'
+'TO_BASE64'
+'TO_DAYS'
+'TO_SECONDS'
+'UCASE'
+'UNCOMPRESS'
+'UNCOMPRESSED_LENGTH'
+'UNHEX'
+'UNIX_TIMESTAMP'
+'UPDATEXML'
+'UPPER'
+'UUID'
+'UUID_SHORT'
+'VALIDATE_PASSWORD_STRENGTH'
+'VERSION'
+'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS'
+'WEEKDAY'
+'WEEKOFYEAR'
+'WEIGHT_STRING'
+'WITHIN'
+'YEARWEEK'
+'Y'
+'X'
+':='
+'+='
+'-='
+'*='
+'/='
+'%='
+'&='
+'^='
+'|='
+'*'
+'/'
+'%'
+'+'
+'--'
+'-'
+'DIV'
+'MOD'
+'='
+'>'
+'<'
+'!'
+'~'
+'|'
+'&'
+'^'
+'.'
+'('
+')'
+','
+';'
+'@'
+'0'
+'1'
+'2'
+'\''
+'"'
+'`'
+':'
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+
+token symbolic names:
+null
+SPACE
+SPEC_MYSQL_COMMENT
+COMMENT_INPUT
+LINE_COMMENT
+ADD
+ALL
+ALTER
+ALWAYS
+ANALYZE
+AND
+AS
+ASC
+BEFORE
+BETWEEN
+BOTH
+BY
+CALL
+CASCADE
+CASE
+CAST
+CHANGE
+CHARACTER
+CHECK
+COLLATE
+COLUMN
+CONDITION
+CONSTRAINT
+CONTINUE
+CONVERT
+CREATE
+CROSS
+CURRENT
+CURRENT_USER
+CURSOR
+DATABASE
+DATABASES
+DECLARE
+DEFAULT
+DELAYED
+DELETE
+DESC
+DESCRIBE
+DETERMINISTIC
+DIAGNOSTICS
+DISTINCT
+DISTINCTROW
+DROP
+EACH
+ELSE
+ELSEIF
+ENCLOSED
+ESCAPED
+EXISTS
+EXIT
+EXPLAIN
+FALSE
+FETCH
+FOR
+FORCE
+FOREIGN
+FROM
+FULLTEXT
+GENERATED
+GET
+GRANT
+GROUP
+HAVING
+HIGH_PRIORITY
+IF
+IGNORE
+IN
+INDEX
+INFILE
+INNER
+INOUT
+INSERT
+INTERVAL
+INTO
+IS
+ITERATE
+JOIN
+KEY
+KEYS
+KILL
+LEADING
+LEAVE
+LEFT
+LIKE
+LIMIT
+LINEAR
+LINES
+LOAD
+LOCK
+LOOP
+LOW_PRIORITY
+MASTER_BIND
+MASTER_SSL_VERIFY_SERVER_CERT
+MATCH
+MAXVALUE
+MODIFIES
+NATURAL
+NOT
+NO_WRITE_TO_BINLOG
+NULL_LITERAL
+NUMBER
+ON
+OPTIMIZE
+OPTION
+OPTIONALLY
+OR
+ORDER
+OUT
+OUTER
+OUTFILE
+PARTITION
+PRIMARY
+PROCEDURE
+PURGE
+RANGE
+READ
+READS
+REFERENCES
+REGEXP
+RELEASE
+RENAME
+REPEAT
+REPLACE
+REQUIRE
+RESIGNAL
+RESTRICT
+RETURN
+REVOKE
+RIGHT
+RLIKE
+SCHEMA
+SCHEMAS
+SELECT
+SET
+SEPARATOR
+SHOW
+SIGNAL
+SPATIAL
+SQL
+SQLEXCEPTION
+SQLSTATE
+SQLWARNING
+SQL_BIG_RESULT
+SQL_CALC_FOUND_ROWS
+SQL_SMALL_RESULT
+SSL
+STACKED
+STARTING
+STRAIGHT_JOIN
+TABLE
+TERMINATED
+THEN
+TO
+TRAILING
+TRIGGER
+TRUE
+UNDO
+UNION
+UNIQUE
+UNLOCK
+UNSIGNED
+UPDATE
+USAGE
+USE
+USING
+VALUES
+WHEN
+WHERE
+WHILE
+WITH
+WRITE
+XOR
+ZEROFILL
+TINYINT
+SMALLINT
+MEDIUMINT
+MIDDLEINT
+INT
+INT1
+INT2
+INT3
+INT4
+INT8
+INTEGER
+BIGINT
+REAL
+DOUBLE
+PRECISION
+FLOAT
+FLOAT4
+FLOAT8
+DECIMAL
+DEC
+NUMERIC
+DATE
+TIME
+TIMESTAMP
+DATETIME
+YEAR
+CHAR
+VARCHAR
+NVARCHAR
+NATIONAL
+BINARY
+VARBINARY
+TINYBLOB
+BLOB
+MEDIUMBLOB
+LONG
+LONGBLOB
+TINYTEXT
+TEXT
+MEDIUMTEXT
+LONGTEXT
+ENUM
+VARYING
+SERIAL
+YEAR_MONTH
+DAY_HOUR
+DAY_MINUTE
+DAY_SECOND
+HOUR_MINUTE
+HOUR_SECOND
+MINUTE_SECOND
+SECOND_MICROSECOND
+MINUTE_MICROSECOND
+HOUR_MICROSECOND
+DAY_MICROSECOND
+JSON_VALID
+JSON_SCHEMA_VALID
+AVG
+BIT_AND
+BIT_OR
+BIT_XOR
+COUNT
+GROUP_CONCAT
+MAX
+MIN
+STD
+STDDEV
+STDDEV_POP
+STDDEV_SAMP
+SUM
+VAR_POP
+VAR_SAMP
+VARIANCE
+CURRENT_DATE
+CURRENT_TIME
+CURRENT_TIMESTAMP
+LOCALTIME
+CURDATE
+CURTIME
+DATE_ADD
+DATE_SUB
+EXTRACT
+LOCALTIMESTAMP
+NOW
+POSITION
+SUBSTR
+SUBSTRING
+SYSDATE
+TRIM
+UTC_DATE
+UTC_TIME
+UTC_TIMESTAMP
+ACCOUNT
+ACTION
+AFTER
+AGGREGATE
+ALGORITHM
+ANY
+AT
+AUTHORS
+AUTOCOMMIT
+AUTOEXTEND_SIZE
+AUTO_INCREMENT
+AVG_ROW_LENGTH
+BEGIN
+BINLOG
+BIT
+BLOCK
+BOOL
+BOOLEAN
+BTREE
+CACHE
+CASCADED
+CHAIN
+CHANGED
+CHANNEL
+CHECKSUM
+PAGE_CHECKSUM
+CIPHER
+CLASS_ORIGIN
+CLIENT
+CLOSE
+COALESCE
+CODE
+COLUMNS
+COLUMN_FORMAT
+COLUMN_NAME
+COMMENT
+COMMIT
+COMPACT
+COMPLETION
+COMPRESSED
+COMPRESSION
+CONCURRENT
+CONNECTION
+CONSISTENT
+CONSTRAINT_CATALOG
+CONSTRAINT_SCHEMA
+CONSTRAINT_NAME
+CONTAINS
+CONTEXT
+CONTRIBUTORS
+COPY
+CPU
+CURSOR_NAME
+DATA
+DATAFILE
+DEALLOCATE
+DEFAULT_AUTH
+DEFINER
+DELAY_KEY_WRITE
+DES_KEY_FILE
+DIRECTORY
+DISABLE
+DISCARD
+DISK
+DO
+DUMPFILE
+DUPLICATE
+DYNAMIC
+ENABLE
+ENCRYPTION
+END
+ENDS
+ENGINE
+ENGINES
+ERROR
+ERRORS
+ESCAPE
+EVEN
+EVENT
+EVENTS
+EVERY
+EXCHANGE
+EXCLUSIVE
+EXPIRE
+EXPORT
+EXTENDED
+EXTENT_SIZE
+FAST
+FAULTS
+FIELDS
+FILE_BLOCK_SIZE
+FILTER
+FIRST
+FIXED
+FLUSH
+FOLLOWS
+FOUND
+FULL
+FUNCTION
+GENERAL
+GLOBAL
+GRANTS
+GROUP_REPLICATION
+HANDLER
+HASH
+HELP
+HOST
+HOSTS
+IDENTIFIED
+IGNORE_SERVER_IDS
+IMPORT
+INDEXES
+INITIAL_SIZE
+INPLACE
+INSERT_METHOD
+INSTALL
+INSTANCE
+INVISIBLE
+INVOKER
+IO
+IO_THREAD
+IPC
+ISOLATION
+ISSUER
+JSON
+KEY_BLOCK_SIZE
+LANGUAGE
+LAST
+LEAVES
+LESS
+LEVEL
+LIST
+LOCAL
+LOGFILE
+LOGS
+MASTER
+MASTER_AUTO_POSITION
+MASTER_CONNECT_RETRY
+MASTER_DELAY
+MASTER_HEARTBEAT_PERIOD
+MASTER_HOST
+MASTER_LOG_FILE
+MASTER_LOG_POS
+MASTER_PASSWORD
+MASTER_PORT
+MASTER_RETRY_COUNT
+MASTER_SSL
+MASTER_SSL_CA
+MASTER_SSL_CAPATH
+MASTER_SSL_CERT
+MASTER_SSL_CIPHER
+MASTER_SSL_CRL
+MASTER_SSL_CRLPATH
+MASTER_SSL_KEY
+MASTER_TLS_VERSION
+MASTER_USER
+MAX_CONNECTIONS_PER_HOUR
+MAX_QUERIES_PER_HOUR
+MAX_ROWS
+MAX_SIZE
+MAX_UPDATES_PER_HOUR
+MAX_USER_CONNECTIONS
+MEDIUM
+MERGE
+MESSAGE_TEXT
+MID
+MIGRATE
+MIN_ROWS
+MODE
+MODIFY
+MUTEX
+MYSQL
+MYSQL_ERRNO
+NAME
+NAMES
+NCHAR
+NEVER
+NEXT
+NO
+NODEGROUP
+NONE
+OFFLINE
+OFFSET
+OJ
+OLD_PASSWORD
+ONE
+ONLINE
+ONLY
+OPEN
+OPTIMIZER_COSTS
+OPTIONS
+OWNER
+PACK_KEYS
+PAGE
+PARSER
+PARTIAL
+PARTITIONING
+PARTITIONS
+PASSWORD
+PHASE
+PLUGIN
+PLUGIN_DIR
+PLUGINS
+PORT
+PRECEDES
+PREPARE
+PRESERVE
+PREV
+PROCESSLIST
+PROFILE
+PROFILES
+PROXY
+QUERY
+QUICK
+REBUILD
+RECOVER
+REDO_BUFFER_SIZE
+REDUNDANT
+RELAY
+RELAY_LOG_FILE
+RELAY_LOG_POS
+RELAYLOG
+REMOVE
+REORGANIZE
+REPAIR
+REPLICATE_DO_DB
+REPLICATE_DO_TABLE
+REPLICATE_IGNORE_DB
+REPLICATE_IGNORE_TABLE
+REPLICATE_REWRITE_DB
+REPLICATE_WILD_DO_TABLE
+REPLICATE_WILD_IGNORE_TABLE
+REPLICATION
+RESET
+RESUME
+RETURNED_SQLSTATE
+RETURNS
+ROLE
+ROLLBACK
+ROLLUP
+ROTATE
+ROW
+ROWS
+ROW_FORMAT
+SAVEPOINT
+SCHEDULE
+SECURITY
+SERVER
+SESSION
+SHARE
+SHARED
+SIGNED
+SIMPLE
+SLAVE
+SLOW
+SNAPSHOT
+SOCKET
+SOME
+SONAME
+SOUNDS
+SOURCE
+SQL_AFTER_GTIDS
+SQL_AFTER_MTS_GAPS
+SQL_BEFORE_GTIDS
+SQL_BUFFER_RESULT
+SQL_CACHE
+SQL_NO_CACHE
+SQL_THREAD
+START
+STARTS
+STATS_AUTO_RECALC
+STATS_PERSISTENT
+STATS_SAMPLE_PAGES
+STATUS
+STOP
+STORAGE
+STORED
+STRING
+SUBCLASS_ORIGIN
+SUBJECT
+SUBPARTITION
+SUBPARTITIONS
+SUSPEND
+SWAPS
+SWITCHES
+TABLE_NAME
+TABLESPACE
+TEMPORARY
+TEMPTABLE
+THAN
+TRADITIONAL
+TRANSACTION
+TRANSACTIONAL
+TRIGGERS
+TRUNCATE
+UNDEFINED
+UNDOFILE
+UNDO_BUFFER_SIZE
+UNINSTALL
+UNKNOWN
+UNTIL
+UPGRADE
+USER
+USE_FRM
+USER_RESOURCES
+VALIDATION
+VALUE
+VARIABLES
+VIEW
+VIRTUAL
+VISIBLE
+WAIT
+WARNINGS
+WITHOUT
+WORK
+WRAPPER
+X509
+XA
+XML
+EUR
+USA
+JIS
+ISO
+INTERNAL
+QUARTER
+MONTH
+DAY
+HOUR
+MINUTE
+WEEK
+SECOND
+MICROSECOND
+TABLES
+ROUTINE
+EXECUTE
+FILE
+PROCESS
+RELOAD
+SHUTDOWN
+SUPER
+PRIVILEGES
+APPLICATION_PASSWORD_ADMIN
+AUDIT_ADMIN
+BACKUP_ADMIN
+BINLOG_ADMIN
+BINLOG_ENCRYPTION_ADMIN
+CLONE_ADMIN
+CONNECTION_ADMIN
+ENCRYPTION_KEY_ADMIN
+FIREWALL_ADMIN
+FIREWALL_USER
+GROUP_REPLICATION_ADMIN
+INNODB_REDO_LOG_ARCHIVE
+NDB_STORED_USER
+PERSIST_RO_VARIABLES_ADMIN
+REPLICATION_APPLIER
+REPLICATION_SLAVE_ADMIN
+RESOURCE_GROUP_ADMIN
+RESOURCE_GROUP_USER
+ROLE_ADMIN
+SESSION_VARIABLES_ADMIN
+SET_USER_ID
+SHOW_ROUTINE
+SYSTEM_VARIABLES_ADMIN
+TABLE_ENCRYPTION_ADMIN
+VERSION_TOKEN_ADMIN
+XA_RECOVER_ADMIN
+ARMSCII8
+ASCII
+BIG5
+CP1250
+CP1251
+CP1256
+CP1257
+CP850
+CP852
+CP866
+CP932
+DEC8
+EUCJPMS
+EUCKR
+GB2312
+GBK
+GEOSTD8
+GREEK
+HEBREW
+HP8
+KEYBCS2
+KOI8R
+KOI8U
+LATIN1
+LATIN2
+LATIN5
+LATIN7
+MACCE
+MACROMAN
+SJIS
+SWE7
+TIS620
+UCS2
+UJIS
+UTF16
+UTF16LE
+UTF32
+UTF8
+UTF8MB3
+UTF8MB4
+ARCHIVE
+BLACKHOLE
+CSV
+FEDERATED
+INNODB
+MEMORY
+MRG_MYISAM
+MYISAM
+NDB
+NDBCLUSTER
+PERFORMANCE_SCHEMA
+TOKUDB
+REPEATABLE
+COMMITTED
+UNCOMMITTED
+SERIALIZABLE
+GEOMETRYCOLLECTION
+GEOMCOLLECTION
+GEOMETRY
+LINESTRING
+MULTILINESTRING
+MULTIPOINT
+MULTIPOLYGON
+POINT
+POLYGON
+ABS
+ACOS
+ADDDATE
+ADDTIME
+AES_DECRYPT
+AES_ENCRYPT
+AREA
+ASBINARY
+ASIN
+ASTEXT
+ASWKB
+ASWKT
+ASYMMETRIC_DECRYPT
+ASYMMETRIC_DERIVE
+ASYMMETRIC_ENCRYPT
+ASYMMETRIC_SIGN
+ASYMMETRIC_VERIFY
+ATAN
+ATAN2
+BENCHMARK
+BIN
+BIT_COUNT
+BIT_LENGTH
+BUFFER
+CATALOG_NAME
+CEIL
+CEILING
+CENTROID
+CHARACTER_LENGTH
+CHARSET
+CHAR_LENGTH
+COERCIBILITY
+COLLATION
+COMPRESS
+CONCAT
+CONCAT_WS
+CONNECTION_ID
+CONV
+CONVERT_TZ
+COS
+COT
+CRC32
+CREATE_ASYMMETRIC_PRIV_KEY
+CREATE_ASYMMETRIC_PUB_KEY
+CREATE_DH_PARAMETERS
+CREATE_DIGEST
+CROSSES
+DATEDIFF
+DATE_FORMAT
+DAYNAME
+DAYOFMONTH
+DAYOFWEEK
+DAYOFYEAR
+DECODE
+DEGREES
+DES_DECRYPT
+DES_ENCRYPT
+DIMENSION
+DISJOINT
+ELT
+ENCODE
+ENCRYPT
+ENDPOINT
+ENVELOPE
+EQUALS
+EXP
+EXPORT_SET
+EXTERIORRING
+EXTRACTVALUE
+FIELD
+FIND_IN_SET
+FLOOR
+FORMAT
+FOUND_ROWS
+FROM_BASE64
+FROM_DAYS
+FROM_UNIXTIME
+GEOMCOLLFROMTEXT
+GEOMCOLLFROMWKB
+GEOMETRYCOLLECTIONFROMTEXT
+GEOMETRYCOLLECTIONFROMWKB
+GEOMETRYFROMTEXT
+GEOMETRYFROMWKB
+GEOMETRYN
+GEOMETRYTYPE
+GEOMFROMTEXT
+GEOMFROMWKB
+GET_FORMAT
+GET_LOCK
+GLENGTH
+GREATEST
+GTID_SUBSET
+GTID_SUBTRACT
+HEX
+IFNULL
+INET6_ATON
+INET6_NTOA
+INET_ATON
+INET_NTOA
+INSTR
+INTERIORRINGN
+INTERSECTS
+ISCLOSED
+ISEMPTY
+ISNULL
+ISSIMPLE
+IS_FREE_LOCK
+IS_IPV4
+IS_IPV4_COMPAT
+IS_IPV4_MAPPED
+IS_IPV6
+IS_USED_LOCK
+LAST_INSERT_ID
+LCASE
+LEAST
+LENGTH
+LINEFROMTEXT
+LINEFROMWKB
+LINESTRINGFROMTEXT
+LINESTRINGFROMWKB
+LN
+LOAD_FILE
+LOCATE
+LOG
+LOG10
+LOG2
+LOWER
+LPAD
+LTRIM
+MAKEDATE
+MAKETIME
+MAKE_SET
+MASTER_POS_WAIT
+MBRCONTAINS
+MBRDISJOINT
+MBREQUAL
+MBRINTERSECTS
+MBROVERLAPS
+MBRTOUCHES
+MBRWITHIN
+MD5
+MLINEFROMTEXT
+MLINEFROMWKB
+MONTHNAME
+MPOINTFROMTEXT
+MPOINTFROMWKB
+MPOLYFROMTEXT
+MPOLYFROMWKB
+MULTILINESTRINGFROMTEXT
+MULTILINESTRINGFROMWKB
+MULTIPOINTFROMTEXT
+MULTIPOINTFROMWKB
+MULTIPOLYGONFROMTEXT
+MULTIPOLYGONFROMWKB
+NAME_CONST
+NULLIF
+NUMGEOMETRIES
+NUMINTERIORRINGS
+NUMPOINTS
+OCT
+OCTET_LENGTH
+ORD
+OVERLAPS
+PERIOD_ADD
+PERIOD_DIFF
+PI
+POINTFROMTEXT
+POINTFROMWKB
+POINTN
+POLYFROMTEXT
+POLYFROMWKB
+POLYGONFROMTEXT
+POLYGONFROMWKB
+POW
+POWER
+QUOTE
+RADIANS
+RAND
+RANDOM_BYTES
+RELEASE_LOCK
+REVERSE
+ROUND
+ROW_COUNT
+RPAD
+RTRIM
+SEC_TO_TIME
+SESSION_USER
+SHA
+SHA1
+SHA2
+SCHEMA_NAME
+SIGN
+SIN
+SLEEP
+SOUNDEX
+SQL_THREAD_WAIT_AFTER_GTIDS
+SQRT
+SRID
+STARTPOINT
+STRCMP
+STR_TO_DATE
+ST_AREA
+ST_ASBINARY
+ST_ASTEXT
+ST_ASWKB
+ST_ASWKT
+ST_BUFFER
+ST_CENTROID
+ST_CONTAINS
+ST_CROSSES
+ST_DIFFERENCE
+ST_DIMENSION
+ST_DISJOINT
+ST_DISTANCE
+ST_ENDPOINT
+ST_ENVELOPE
+ST_EQUALS
+ST_EXTERIORRING
+ST_GEOMCOLLFROMTEXT
+ST_GEOMCOLLFROMTXT
+ST_GEOMCOLLFROMWKB
+ST_GEOMETRYCOLLECTIONFROMTEXT
+ST_GEOMETRYCOLLECTIONFROMWKB
+ST_GEOMETRYFROMTEXT
+ST_GEOMETRYFROMWKB
+ST_GEOMETRYN
+ST_GEOMETRYTYPE
+ST_GEOMFROMTEXT
+ST_GEOMFROMWKB
+ST_INTERIORRINGN
+ST_INTERSECTION
+ST_INTERSECTS
+ST_ISCLOSED
+ST_ISEMPTY
+ST_ISSIMPLE
+ST_LINEFROMTEXT
+ST_LINEFROMWKB
+ST_LINESTRINGFROMTEXT
+ST_LINESTRINGFROMWKB
+ST_NUMGEOMETRIES
+ST_NUMINTERIORRING
+ST_NUMINTERIORRINGS
+ST_NUMPOINTS
+ST_OVERLAPS
+ST_POINTFROMTEXT
+ST_POINTFROMWKB
+ST_POINTN
+ST_POLYFROMTEXT
+ST_POLYFROMWKB
+ST_POLYGONFROMTEXT
+ST_POLYGONFROMWKB
+ST_SRID
+ST_STARTPOINT
+ST_SYMDIFFERENCE
+ST_TOUCHES
+ST_UNION
+ST_WITHIN
+ST_X
+ST_Y
+SUBDATE
+SUBSTRING_INDEX
+SUBTIME
+SYSTEM_USER
+TAN
+TIMEDIFF
+TIMESTAMPADD
+TIMESTAMPDIFF
+TIME_FORMAT
+TIME_TO_SEC
+TOUCHES
+TO_BASE64
+TO_DAYS
+TO_SECONDS
+UCASE
+UNCOMPRESS
+UNCOMPRESSED_LENGTH
+UNHEX
+UNIX_TIMESTAMP
+UPDATEXML
+UPPER
+UUID
+UUID_SHORT
+VALIDATE_PASSWORD_STRENGTH
+VERSION
+WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS
+WEEKDAY
+WEEKOFYEAR
+WEIGHT_STRING
+WITHIN
+YEARWEEK
+Y_FUNCTION
+X_FUNCTION
+VAR_ASSIGN
+PLUS_ASSIGN
+MINUS_ASSIGN
+MULT_ASSIGN
+DIV_ASSIGN
+MOD_ASSIGN
+AND_ASSIGN
+XOR_ASSIGN
+OR_ASSIGN
+STAR
+DIVIDE
+MODULE
+PLUS
+MINUSMINUS
+MINUS
+DIV
+MOD
+EQUAL_SYMBOL
+GREATER_SYMBOL
+LESS_SYMBOL
+EXCLAMATION_SYMBOL
+BIT_NOT_OP
+BIT_OR_OP
+BIT_AND_OP
+BIT_XOR_OP
+DOT
+LR_BRACKET
+RR_BRACKET
+COMMA
+SEMI
+AT_SIGN
+ZERO_DECIMAL
+ONE_DECIMAL
+TWO_DECIMAL
+SINGLE_QUOTE_SYMB
+DOUBLE_QUOTE_SYMB
+REVERSE_QUOTE_SYMB
+COLON_SYMB
+CHARSET_REVERSE_QOUTE_STRING
+FILESIZE_LITERAL
+START_NATIONAL_STRING_LITERAL
+STRING_LITERAL
+DECIMAL_LITERAL
+HEXADECIMAL_LITERAL
+REAL_LITERAL
+NULL_SPEC_LITERAL
+BIT_STRING
+STRING_CHARSET_NAME
+DOT_ID
+ID
+REVERSE_QUOTE_ID
+STRING_USER_NAME
+LOCAL_ID
+GLOBAL_ID
+ERROR_RECONGNIGION
+
+rule names:
+program
+statement
+sqlStatements
+sqlStatement
+emptyStatement
+ddlStatement
+dmlStatement
+transactionStatement
+replicationStatement
+preparedStatement
+compoundStatement
+administrationStatement
+utilityStatement
+createDatabase
+createEvent
+createIndex
+createLogfileGroup
+createProcedure
+createFunction
+createServer
+createTable
+createTablespaceInnodb
+createTablespaceNdb
+createTrigger
+createView
+createDatabaseOption
+ownerStatement
+scheduleExpression
+timestampValue
+intervalExpr
+intervalType
+enableType
+indexType
+indexOption
+procedureParameter
+functionParameter
+routineOption
+serverOption
+createDefinitions
+createDefinition
+columnDefinition
+columnConstraint
+tableConstraint
+referenceDefinition
+referenceAction
+referenceControlType
+indexColumnDefinition
+tableOption
+tablespaceStorage
+partitionDefinitions
+partitionFunctionDefinition
+subpartitionFunctionDefinition
+partitionDefinition
+partitionDefinerAtom
+partitionDefinerVector
+subpartitionDefinition
+partitionOption
+alterDatabase
+alterEvent
+alterFunction
+alterInstance
+alterLogfileGroup
+alterProcedure
+alterServer
+alterTable
+alterTablespace
+alterView
+alterSpecification
+dropDatabase
+dropEvent
+dropIndex
+dropLogfileGroup
+dropProcedure
+dropFunction
+dropServer
+dropTable
+dropTablespace
+dropTrigger
+dropView
+renameTable
+renameTableClause
+truncateTable
+callStatement
+deleteStatement
+doStatement
+handlerStatement
+insertStatement
+loadDataStatement
+loadXmlStatement
+replaceStatement
+selectStatement
+updateStatement
+insertStatementValue
+updatedElement
+assignmentField
+lockClause
+singleDeleteStatement
+multipleDeleteStatement
+handlerOpenStatement
+handlerReadIndexStatement
+handlerReadStatement
+handlerCloseStatement
+singleUpdateStatement
+multipleUpdateStatement
+orderByClause
+orderByExpression
+tableSources
+tableSource
+tableSourceItem
+indexHint
+indexHintType
+joinPart
+queryExpression
+queryExpressionNointo
+querySpecification
+querySpecificationNointo
+unionParenthesis
+unionStatement
+selectSpec
+selectElements
+selectElement
+selectIntoExpression
+selectFieldsInto
+selectLinesInto
+fromClause
+groupByItem
+limitClause
+limitClauseAtom
+startTransaction
+beginWork
+commitWork
+rollbackWork
+savepointStatement
+rollbackStatement
+releaseStatement
+lockTables
+unlockTables
+setAutocommitStatement
+setTransactionStatement
+transactionMode
+lockTableElement
+lockAction
+transactionOption
+transactionLevel
+changeMaster
+changeReplicationFilter
+purgeBinaryLogs
+resetMaster
+resetSlave
+startSlave
+stopSlave
+startGroupReplication
+stopGroupReplication
+masterOption
+stringMasterOption
+decimalMasterOption
+boolMasterOption
+channelOption
+replicationFilter
+tablePair
+threadType
+untilOption
+connectionOption
+gtuidSet
+xaStartTransaction
+xaEndTransaction
+xaPrepareStatement
+xaCommitWork
+xaRollbackWork
+xaRecoverWork
+prepareStatement
+executeStatement
+deallocatePrepare
+routineBody
+blockStatement
+caseStatement
+ifStatement
+iterateStatement
+leaveStatement
+loopStatement
+repeatStatement
+returnStatement
+whileStatement
+cursorStatement
+declareVariable
+declareCondition
+declareCursor
+declareHandler
+handlerConditionValue
+procedureSqlStatement
+caseAlternative
+elifAlternative
+alterUser
+createUser
+dropUser
+grantStatement
+grantProxy
+renameUser
+revokeStatement
+revokeProxy
+setPasswordStatement
+userSpecification
+userAuthOption
+tlsOption
+userResourceOption
+userPasswordOption
+userLockOption
+privelegeClause
+privilege
+privilegeLevel
+renameUserClause
+analyzeTable
+checkTable
+checksumTable
+optimizeTable
+repairTable
+checkTableOption
+createUdfunction
+installPlugin
+uninstallPlugin
+setStatement
+showStatement
+variableClause
+showCommonEntity
+showFilter
+showGlobalInfoClause
+showSchemaEntity
+showProfileType
+binlogStatement
+cacheIndexStatement
+flushStatement
+killStatement
+loadIndexIntoCache
+resetStatement
+shutdownStatement
+tableIndexes
+flushOption
+flushTableOption
+loadedTableIndexes
+simpleDescribeStatement
+fullDescribeStatement
+helpStatement
+useStatement
+signalStatement
+resignalStatement
+signalConditionInformation
+diagnosticsStatement
+diagnosticsConditionInformationName
+describeObjectClause
+fullId
+tableName
+fullColumnName
+indexColumnName
+userName
+mysqlVariable
+charsetName
+collationName
+engineName
+uuidSet
+xid
+xuidStringId
+authPlugin
+uid
+simpleId
+dottedId
+decimalLiteral
+fileSizeLiteral
+stringLiteral
+booleanLiteral
+hexadecimalLiteral
+nullNotnull
+constant
+dataType
+collectionOptions
+convertedDataType
+lengthOneDimension
+lengthTwoDimension
+lengthTwoOptionalDimension
+uidList
+tables
+indexColumnNames
+expressions
+expressionsWithDefaults
+constants
+simpleStrings
+userVariables
+defaultValue
+currentTimestamp
+expressionOrDefault
+ifExists
+ifNotExists
+functionCall
+specificFunction
+caseFuncAlternative
+levelsInWeightString
+levelInWeightListElement
+aggregateWindowedFunction
+scalarFunctionName
+passwordFunctionClause
+functionArgs
+functionArg
+expression
+predicate
+expressionAtom
+unaryOperator
+comparisonOperator
+logicalOperator
+bitOperator
+mathOperator
+charsetNameBase
+transactionLevelBase
+privilegesBase
+intervalTypeBase
+dataTypeBase
+keywordsCanBeId
+functionNameBase
+
+
+atn:
+[3, 24715, 42794, 33075, 47597, 16764, 15335, 30598, 22884, 3, 1050, 6384, 4, 2, 9, 2, 4, 3, 9, 3, 4, 4, 9, 4, 4, 5, 9, 5, 4, 6, 9, 6, 4, 7, 9, 7, 4, 8, 9, 8, 4, 9, 9, 9, 4, 10, 9, 10, 4, 11, 9, 11, 4, 12, 9, 12, 4, 13, 9, 13, 4, 14, 9, 14, 4, 15, 9, 15, 4, 16, 9, 16, 4, 17, 9, 17, 4, 18, 9, 18, 4, 19, 9, 19, 4, 20, 9, 20, 4, 21, 9, 21, 4, 22, 9, 22, 4, 23, 9, 23, 4, 24, 9, 24, 4, 25, 9, 25, 4, 26, 9, 26, 4, 27, 9, 27, 4, 28, 9, 28, 4, 29, 9, 29, 4, 30, 9, 30, 4, 31, 9, 31, 4, 32, 9, 32, 4, 33, 9, 33, 4, 34, 9, 34, 4, 35, 9, 35, 4, 36, 9, 36, 4, 37, 9, 37, 4, 38, 9, 38, 4, 39, 9, 39, 4, 40, 9, 40, 4, 41, 9, 41, 4, 42, 9, 42, 4, 43, 9, 43, 4, 44, 9, 44, 4, 45, 9, 45, 4, 46, 9, 46, 4, 47, 9, 47, 4, 48, 9, 48, 4, 49, 9, 49, 4, 50, 9, 50, 4, 51, 9, 51, 4, 52, 9, 52, 4, 53, 9, 53, 4, 54, 9, 54, 4, 55, 9, 55, 4, 56, 9, 56, 4, 57, 9, 57, 4, 58, 9, 58, 4, 59, 9, 59, 4, 60, 9, 60, 4, 61, 9, 61, 4, 62, 9, 62, 4, 63, 9, 63, 4, 64, 9, 64, 4, 65, 9, 65, 4, 66, 9, 66, 4, 67, 9, 67, 4, 68, 9, 68, 4, 69, 9, 69, 4, 70, 9, 70, 4, 71, 9, 71, 4, 72, 9, 72, 4, 73, 9, 73, 4, 74, 9, 74, 4, 75, 9, 75, 4, 76, 9, 76, 4, 77, 9, 77, 4, 78, 9, 78, 4, 79, 9, 79, 4, 80, 9, 80, 4, 81, 9, 81, 4, 82, 9, 82, 4, 83, 9, 83, 4, 84, 9, 84, 4, 85, 9, 85, 4, 86, 9, 86, 4, 87, 9, 87, 4, 88, 9, 88, 4, 89, 9, 89, 4, 90, 9, 90, 4, 91, 9, 91, 4, 92, 9, 92, 4, 93, 9, 93, 4, 94, 9, 94, 4, 95, 9, 95, 4, 96, 9, 96, 4, 97, 9, 97, 4, 98, 9, 98, 4, 99, 9, 99, 4, 100, 9, 100, 4, 101, 9, 101, 4, 102, 9, 102, 4, 103, 9, 103, 4, 104, 9, 104, 4, 105, 9, 105, 4, 106, 9, 106, 4, 107, 9, 107, 4, 108, 9, 108, 4, 109, 9, 109, 4, 110, 9, 110, 4, 111, 9, 111, 4, 112, 9, 112, 4, 113, 9, 113, 4, 114, 9, 114, 4, 115, 9, 115, 4, 116, 9, 116, 4, 117, 9, 117, 4, 118, 9, 118, 4, 119, 9, 119, 4, 120, 9, 120, 4, 121, 9, 121, 4, 122, 9, 122, 4, 123, 9, 123, 4, 124, 9, 124, 4, 125, 9, 125, 4, 126, 9, 126, 4, 127, 9, 127, 4, 128, 9, 128, 4, 129, 9, 129, 4, 130, 9, 130, 4, 131, 9, 131, 4, 132, 9, 132, 4, 133, 9, 133, 4, 134, 9, 134, 4, 135, 9, 135, 4, 136, 9, 136, 4, 137, 9, 137, 4, 138, 9, 138, 4, 139, 9, 139, 4, 140, 9, 140, 4, 141, 9, 141, 4, 142, 9, 142, 4, 143, 9, 143, 4, 144, 9, 144, 4, 145, 9, 145, 4, 146, 9, 146, 4, 147, 9, 147, 4, 148, 9, 148, 4, 149, 9, 149, 4, 150, 9, 150, 4, 151, 9, 151, 4, 152, 9, 152, 4, 153, 9, 153, 4, 154, 9, 154, 4, 155, 9, 155, 4, 156, 9, 156, 4, 157, 9, 157, 4, 158, 9, 158, 4, 159, 9, 159, 4, 160, 9, 160, 4, 161, 9, 161, 4, 162, 9, 162, 4, 163, 9, 163, 4, 164, 9, 164, 4, 165, 9, 165, 4, 166, 9, 166, 4, 167, 9, 167, 4, 168, 9, 168, 4, 169, 9, 169, 4, 170, 9, 170, 4, 171, 9, 171, 4, 172, 9, 172, 4, 173, 9, 173, 4, 174, 9, 174, 4, 175, 9, 175, 4, 176, 9, 176, 4, 177, 9, 177, 4, 178, 9, 178, 4, 179, 9, 179, 4, 180, 9, 180, 4, 181, 9, 181, 4, 182, 9, 182, 4, 183, 9, 183, 4, 184, 9, 184, 4, 185, 9, 185, 4, 186, 9, 186, 4, 187, 9, 187, 4, 188, 9, 188, 4, 189, 9, 189, 4, 190, 9, 190, 4, 191, 9, 191, 4, 192, 9, 192, 4, 193, 9, 193, 4, 194, 9, 194, 4, 195, 9, 195, 4, 196, 9, 196, 4, 197, 9, 197, 4, 198, 9, 198, 4, 199, 9, 199, 4, 200, 9, 200, 4, 201, 9, 201, 4, 202, 9, 202, 4, 203, 9, 203, 4, 204, 9, 204, 4, 205, 9, 205, 4, 206, 9, 206, 4, 207, 9, 207, 4, 208, 9, 208, 4, 209, 9, 209, 4, 210, 9, 210, 4, 211, 9, 211, 4, 212, 9, 212, 4, 213, 9, 213, 4, 214, 9, 214, 4, 215, 9, 215, 4, 216, 9, 216, 4, 217, 9, 217, 4, 218, 9, 218, 4, 219, 9, 219, 4, 220, 9, 220, 4, 221, 9, 221, 4, 222, 9, 222, 4, 223, 9, 223, 4, 224, 9, 224, 4, 225, 9, 225, 4, 226, 9, 226, 4, 227, 9, 227, 4, 228, 9, 228, 4, 229, 9, 229, 4, 230, 9, 230, 4, 231, 9, 231, 4, 232, 9, 232, 4, 233, 9, 233, 4, 234, 9, 234, 4, 235, 9, 235, 4, 236, 9, 236, 4, 237, 9, 237, 4, 238, 9, 238, 4, 239, 9, 239, 4, 240, 9, 240, 4, 241, 9, 241, 4, 242, 9, 242, 4, 243, 9, 243, 4, 244, 9, 244, 4, 245, 9, 245, 4, 246, 9, 246, 4, 247, 9, 247, 4, 248, 9, 248, 4, 249, 9, 249, 4, 250, 9, 250, 4, 251, 9, 251, 4, 252, 9, 252, 4, 253, 9, 253, 4, 254, 9, 254, 4, 255, 9, 255, 4, 256, 9, 256, 4, 257, 9, 257, 4, 258, 9, 258, 4, 259, 9, 259, 4, 260, 9, 260, 4, 261, 9, 261, 4, 262, 9, 262, 4, 263, 9, 263, 4, 264, 9, 264, 4, 265, 9, 265, 4, 266, 9, 266, 4, 267, 9, 267, 4, 268, 9, 268, 4, 269, 9, 269, 4, 270, 9, 270, 4, 271, 9, 271, 4, 272, 9, 272, 4, 273, 9, 273, 4, 274, 9, 274, 4, 275, 9, 275, 4, 276, 9, 276, 4, 277, 9, 277, 4, 278, 9, 278, 4, 279, 9, 279, 4, 280, 9, 280, 4, 281, 9, 281, 4, 282, 9, 282, 4, 283, 9, 283, 4, 284, 9, 284, 4, 285, 9, 285, 4, 286, 9, 286, 4, 287, 9, 287, 4, 288, 9, 288, 4, 289, 9, 289, 4, 290, 9, 290, 4, 291, 9, 291, 4, 292, 9, 292, 4, 293, 9, 293, 4, 294, 9, 294, 4, 295, 9, 295, 4, 296, 9, 296, 4, 297, 9, 297, 4, 298, 9, 298, 4, 299, 9, 299, 4, 300, 9, 300, 4, 301, 9, 301, 4, 302, 9, 302, 4, 303, 9, 303, 4, 304, 9, 304, 4, 305, 9, 305, 4, 306, 9, 306, 4, 307, 9, 307, 4, 308, 9, 308, 4, 309, 9, 309, 4, 310, 9, 310, 4, 311, 9, 311, 4, 312, 9, 312, 4, 313, 9, 313, 4, 314, 9, 314, 4, 315, 9, 315, 4, 316, 9, 316, 4, 317, 9, 317, 3, 2, 3, 2, 3, 2, 3, 3, 5, 3, 639, 10, 3, 3, 3, 5, 3, 642, 10, 3, 3, 3, 3, 3, 3, 4, 3, 4, 5, 4, 648, 10, 4, 3, 4, 5, 4, 651, 10, 4, 3, 4, 7, 4, 654, 10, 4, 12, 4, 14, 4, 657, 11, 4, 3, 4, 3, 4, 5, 4, 661, 10, 4, 3, 4, 5, 4, 664, 10, 4, 3, 4, 5, 4, 667, 10, 4, 3, 5, 3, 5, 3, 5, 3, 5, 3, 5, 3, 5, 3, 5, 5, 5, 676, 10, 5, 3, 6, 3, 6, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 5, 7, 715, 10, 7, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 5, 8, 727, 10, 8, 3, 9, 3, 9, 3, 9, 3, 9, 3, 9, 3, 9, 3, 9, 3, 9, 3, 9, 5, 9, 738, 10, 9, 3, 10, 3, 10, 3, 10, 3, 10, 3, 10, 3, 10, 3, 10, 3, 10, 3, 10, 3, 10, 3, 10, 3, 10, 3, 10, 3, 10, 3, 10, 5, 10, 755, 10, 10, 3, 11, 3, 11, 3, 11, 5, 11, 760, 10, 11, 3, 12, 3, 12, 3, 12, 3, 12, 3, 12, 3, 12, 3, 12, 3, 12, 3, 12, 3, 12, 5, 12, 772, 10, 12, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 5, 13, 799, 10, 13, 3, 14, 3, 14, 3, 14, 3, 14, 3, 14, 3, 14, 3, 14, 5, 14, 808, 10, 14, 3, 15, 3, 15, 3, 15, 5, 15, 813, 10, 15, 3, 15, 3, 15, 7, 15, 817, 10, 15, 12, 15, 14, 15, 820, 11, 15, 3, 16, 3, 16, 5, 16, 824, 10, 16, 3, 16, 3, 16, 5, 16, 828, 10, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 5, 16, 837, 10, 16, 3, 16, 5, 16, 840, 10, 16, 3, 16, 5, 16, 843, 10, 16, 3, 16, 3, 16, 5, 16, 847, 10, 16, 3, 16, 3, 16, 3, 16, 3, 17, 3, 17, 5, 17, 854, 10, 17, 3, 17, 5, 17, 857, 10, 17, 3, 17, 3, 17, 3, 17, 5, 17, 862, 10, 17, 3, 17, 3, 17, 3, 17, 3, 17, 7, 17, 868, 10, 17, 12, 17, 14, 17, 871, 11, 17, 3, 17, 3, 17, 5, 17, 875, 10, 17, 3, 17, 3, 17, 3, 17, 5, 17, 880, 10, 17, 3, 17, 7, 17, 883, 10, 17, 12, 17, 14, 17, 886, 11, 17, 3, 18, 3, 18, 3, 18, 3, 18, 3, 18, 3, 18, 3, 18, 3, 18, 3, 18, 5, 18, 897, 10, 18, 3, 18, 5, 18, 900, 10, 18, 3, 18, 3, 18, 5, 18, 904, 10, 18, 3, 18, 5, 18, 907, 10, 18, 3, 18, 3, 18, 5, 18, 911, 10, 18, 3, 18, 5, 18, 914, 10, 18, 3, 18, 3, 18, 5, 18, 918, 10, 18, 3, 18, 5, 18, 921, 10, 18, 3, 18, 5, 18, 924, 10, 18, 3, 18, 3, 18, 5, 18, 928, 10, 18, 3, 18, 5, 18, 931, 10, 18, 3, 18, 3, 18, 5, 18, 935, 10, 18, 3, 18, 3, 18, 3, 19, 3, 19, 5, 19, 941, 10, 19, 3, 19, 3, 19, 3, 19, 3, 19, 5, 19, 947, 10, 19, 3, 19, 3, 19, 7, 19, 951, 10, 19, 12, 19, 14, 19, 954, 11, 19, 3, 19, 3, 19, 7, 19, 958, 10, 19, 12, 19, 14, 19, 961, 11, 19, 3, 19, 3, 19, 3, 20, 3, 20, 5, 20, 967, 10, 20, 3, 20, 3, 20, 3, 20, 3, 20, 5, 20, 973, 10, 20, 3, 20, 3, 20, 7, 20, 977, 10, 20, 12, 20, 14, 20, 980, 11, 20, 3, 20, 3, 20, 3, 20, 3, 20, 7, 20, 986, 10, 20, 12, 20, 14, 20, 989, 11, 20, 3, 20, 3, 20, 5, 20, 993, 10, 20, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 7, 21, 1007, 10, 21, 12, 21, 14, 21, 1010, 11, 21, 3, 21, 3, 21, 3, 22, 3, 22, 5, 22, 1016, 10, 22, 3, 22, 3, 22, 5, 22, 1020, 10, 22, 3, 22, 3, 22, 3, 22, 3, 22, 3, 22, 3, 22, 3, 22, 3, 22, 5, 22, 1030, 10, 22, 3, 22, 3, 22, 5, 22, 1034, 10, 22, 3, 22, 3, 22, 5, 22, 1038, 10, 22, 3, 22, 3, 22, 5, 22, 1042, 10, 22, 3, 22, 3, 22, 5, 22, 1046, 10, 22, 3, 22, 7, 22, 1049, 10, 22, 12, 22, 14, 22, 1052, 11, 22, 5, 22, 1054, 10, 22, 3, 22, 5, 22, 1057, 10, 22, 3, 22, 5, 22, 1060, 10, 22, 3, 22, 5, 22, 1063, 10, 22, 3, 22, 3, 22, 3, 22, 3, 22, 5, 22, 1069, 10, 22, 3, 22, 3, 22, 5, 22, 1073, 10, 22, 3, 22, 3, 22, 3, 22, 3, 22, 5, 22, 1079, 10, 22, 3, 22, 7, 22, 1082, 10, 22, 12, 22, 14, 22, 1085, 11, 22, 5, 22, 1087, 10, 22, 3, 22, 5, 22, 1090, 10, 22, 5, 22, 1092, 10, 22, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 5, 23, 1103, 10, 23, 3, 23, 3, 23, 5, 23, 1107, 10, 23, 3, 23, 5, 23, 1110, 10, 23, 3, 24, 3, 24, 3, 24, 3, 24, 3, 24, 3, 24, 3, 24, 3, 24, 3, 24, 3, 24, 3, 24, 3, 24, 5, 24, 1124, 10, 24, 3, 24, 5, 24, 1127, 10, 24, 3, 24, 3, 24, 5, 24, 1131, 10, 24, 3, 24, 5, 24, 1134, 10, 24, 3, 24, 3, 24, 5, 24, 1138, 10, 24, 3, 24, 5, 24, 1141, 10, 24, 3, 24, 3, 24, 5, 24, 1145, 10, 24, 3, 24, 5, 24, 1148, 10, 24, 3, 24, 3, 24, 5, 24, 1152, 10, 24, 3, 24, 5, 24, 1155, 10, 24, 3, 24, 5, 24, 1158, 10, 24, 3, 24, 3, 24, 5, 24, 1162, 10, 24, 3, 24, 5, 24, 1165, 10, 24, 3, 24, 3, 24, 5, 24, 1169, 10, 24, 3, 24, 3, 24, 3, 25, 3, 25, 5, 25, 1175, 10, 25, 3, 25, 3, 25, 3, 25, 3, 25, 3, 25, 3, 25, 3, 25, 3, 25, 3, 25, 3, 25, 3, 25, 5, 25, 1188, 10, 25, 3, 25, 3, 25, 3, 26, 3, 26, 3, 26, 5, 26, 1195, 10, 26, 3, 26, 3, 26, 3, 26, 5, 26, 1200, 10, 26, 3, 26, 5, 26, 1203, 10, 26, 3, 26, 3, 26, 3, 26, 5, 26, 1208, 10, 26, 3, 26, 3, 26, 3, 26, 3, 26, 3, 26, 3, 26, 5, 26, 1216, 10, 26, 3, 26, 3, 26, 3, 26, 3, 26, 5, 26, 1222, 10, 26, 3, 26, 3, 26, 5, 26, 1226, 10, 26, 3, 27, 5, 27, 1229, 10, 27, 3, 27, 3, 27, 3, 27, 5, 27, 1234, 10, 27, 3, 27, 5, 27, 1237, 10, 27, 3, 27, 3, 27, 5, 27, 1241, 10, 27, 3, 27, 5, 27, 1244, 10, 27, 3, 27, 3, 27, 5, 27, 1248, 10, 27, 3, 27, 5, 27, 1251, 10, 27, 3, 28, 3, 28, 3, 28, 3, 28, 3, 28, 3, 28, 5, 28, 1259, 10, 28, 5, 28, 1261, 10, 28, 3, 29, 3, 29, 3, 29, 7, 29, 1266, 10, 29, 12, 29, 14, 29, 1269, 11, 29, 3, 29, 3, 29, 3, 29, 5, 29, 1274, 10, 29, 3, 29, 3, 29, 3, 29, 3, 29, 7, 29, 1280, 10, 29, 12, 29, 14, 29, 1283, 11, 29, 5, 29, 1285, 10, 29, 3, 29, 3, 29, 3, 29, 7, 29, 1290, 10, 29, 12, 29, 14, 29, 1293, 11, 29, 5, 29, 1295, 10, 29, 5, 29, 1297, 10, 29, 3, 30, 3, 30, 3, 30, 3, 30, 5, 30, 1303, 10, 30, 3, 31, 3, 31, 3, 31, 3, 31, 5, 31, 1309, 10, 31, 3, 31, 3, 31, 3, 32, 3, 32, 3, 32, 3, 32, 3, 32, 3, 32, 3, 32, 3, 32, 3, 32, 3, 32, 3, 32, 3, 32, 3, 32, 5, 32, 1326, 10, 32, 3, 33, 3, 33, 3, 33, 3, 33, 3, 33, 5, 33, 1333, 10, 33, 3, 34, 3, 34, 3, 34, 3, 35, 3, 35, 5, 35, 1340, 10, 35, 3, 35, 3, 35, 3, 35, 3, 35, 3, 35, 3, 35, 3, 35, 3, 35, 3, 35, 5, 35, 1351, 10, 35, 3, 36, 5, 36, 1354, 10, 36, 3, 36, 3, 36, 3, 36, 3, 37, 3, 37, 3, 37, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 5, 38, 1367, 10, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 5, 38, 1380, 10, 38, 3, 38, 3, 38, 3, 38, 5, 38, 1385, 10, 38, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 5, 39, 1401, 10, 39, 3, 40, 3, 40, 3, 40, 3, 40, 7, 40, 1407, 10, 40, 12, 40, 14, 40, 1410, 11, 40, 3, 40, 3, 40, 3, 41, 3, 41, 3, 41, 3, 41, 3, 41, 5, 41, 1419, 10, 41, 3, 42, 3, 42, 7, 42, 1423, 10, 42, 12, 42, 14, 42, 1426, 11, 42, 3, 43, 3, 43, 3, 43, 3, 43, 3, 43, 3, 43, 3, 43, 5, 43, 1435, 10, 43, 3, 43, 5, 43, 1438, 10, 43, 3, 43, 3, 43, 3, 43, 5, 43, 1443, 10, 43, 3, 43, 3, 43, 3, 43, 3, 43, 3, 43, 3, 43, 3, 43, 3, 43, 3, 43, 3, 43, 3, 43, 5, 43, 1456, 10, 43, 3, 43, 3, 43, 3, 43, 3, 43, 3, 43, 5, 43, 1463, 10, 43, 3, 43, 3, 43, 3, 43, 3, 43, 3, 43, 5, 43, 1470, 10, 43, 5, 43, 1472, 10, 43, 3, 43, 3, 43, 3, 43, 3, 43, 3, 43, 5, 43, 1479, 10, 43, 3, 44, 3, 44, 5, 44, 1483, 10, 44, 5, 44, 1485, 10, 44, 3, 44, 3, 44, 3, 44, 5, 44, 1490, 10, 44, 3, 44, 5, 44, 1493, 10, 44, 3, 44, 3, 44, 7, 44, 1497, 10, 44, 12, 44, 14, 44, 1500, 11, 44, 3, 44, 3, 44, 5, 44, 1504, 10, 44, 5, 44, 1506, 10, 44, 3, 44, 3, 44, 5, 44, 1510, 10, 44, 3, 44, 5, 44, 1513, 10, 44, 3, 44, 5, 44, 1516, 10, 44, 3, 44, 3, 44, 7, 44, 1520, 10, 44, 12, 44, 14, 44, 1523, 11, 44, 3, 44, 3, 44, 5, 44, 1527, 10, 44, 5, 44, 1529, 10, 44, 3, 44, 3, 44, 3, 44, 5, 44, 1534, 10, 44, 3, 44, 3, 44, 3, 44, 3, 44, 3, 44, 5, 44, 1541, 10, 44, 5, 44, 1543, 10, 44, 3, 44, 3, 44, 3, 44, 3, 44, 3, 44, 5, 44, 1550, 10, 44, 3, 45, 3, 45, 3, 45, 5, 45, 1555, 10, 45, 3, 45, 3, 45, 5, 45, 1559, 10, 45, 3, 45, 5, 45, 1562, 10, 45, 3, 46, 3, 46, 3, 46, 3, 46, 3, 46, 3, 46, 5, 46, 1570, 10, 46, 3, 46, 3, 46, 3, 46, 3, 46, 3, 46, 3, 46, 5, 46, 1578, 10, 46, 5, 46, 1580, 10, 46, 3, 47, 3, 47, 3, 47, 3, 47, 3, 47, 3, 47, 5, 47, 1588, 10, 47, 3, 48, 3, 48, 5, 48, 1592, 10, 48, 3, 48, 5, 48, 1595, 10, 48, 3, 48, 3, 48, 7, 48, 1599, 10, 48, 12, 48, 14, 48, 1602, 11, 48, 3, 48, 3, 48, 5, 48, 1606, 10, 48, 3, 48, 5, 48, 1609, 10, 48, 3, 48, 3, 48, 7, 48, 1613, 10, 48, 12, 48, 14, 48, 1616, 11, 48, 5, 48, 1618, 10, 48, 3, 49, 3, 49, 5, 49, 1622, 10, 49, 3, 49, 3, 49, 3, 49, 5, 49, 1627, 10, 49, 3, 49, 3, 49, 3, 49, 5, 49, 1632, 10, 49, 3, 49, 3, 49, 5, 49, 1636, 10, 49, 3, 49, 3, 49, 3, 49, 5, 49, 1641, 10, 49, 3, 49, 5, 49, 1644, 10, 49, 3, 49, 3, 49, 5, 49, 1648, 10, 49, 3, 49, 3, 49, 5, 49, 1652, 10, 49, 3, 49, 3, 49, 5, 49, 1656, 10, 49, 3, 49, 3, 49, 5, 49, 1660, 10, 49, 3, 49, 3, 49, 3, 49, 5, 49, 1665, 10, 49, 3, 49, 3, 49, 3, 49, 5, 49, 1670, 10, 49, 3, 49, 3, 49, 3, 49, 5, 49, 1675, 10, 49, 3, 49, 3, 49, 3, 49, 3, 49, 5, 49, 1681, 10, 49, 3, 49, 3, 49, 3, 49, 5, 49, 1686, 10, 49, 3, 49, 3, 49, 3, 49, 5, 49, 1691, 10, 49, 3, 49, 3, 49, 3, 49, 3, 49, 5, 49, 1697, 10, 49, 3, 49, 3, 49, 3, 49, 5, 49, 1702, 10, 49, 3, 49, 3, 49, 3, 49, 5, 49, 1707, 10, 49, 3, 49, 3, 49, 3, 49, 5, 49, 1712, 10, 49, 3, 49, 3, 49, 3, 49, 5, 49, 1717, 10, 49, 3, 49, 3, 49, 3, 49, 5, 49, 1722, 10, 49, 3, 49, 3, 49, 3, 49, 5, 49, 1727, 10, 49, 3, 49, 3, 49, 3, 49, 5, 49, 1732, 10, 49, 3, 49, 3, 49, 3, 49, 5, 49, 1737, 10, 49, 3, 49, 3, 49, 3, 49, 5, 49, 1742, 10, 49, 3, 49, 3, 49, 3, 49, 5, 49, 1747, 10, 49, 3, 49, 3, 49, 3, 49, 3, 49, 5, 49, 1753, 10, 49, 3, 49, 3, 49, 3, 49, 5, 49, 1758, 10, 49, 3, 49, 3, 49, 3, 49, 3, 49, 5, 49, 1764, 10, 49, 3, 50, 3, 50, 3, 50, 3, 51, 3, 51, 3, 51, 3, 51, 3, 51, 5, 51, 1774, 10, 51, 3, 51, 3, 51, 3, 51, 3, 51, 3, 51, 5, 51, 1781, 10, 51, 5, 51, 1783, 10, 51, 3, 51, 3, 51, 3, 51, 3, 51, 7, 51, 1789, 10, 51, 12, 51, 14, 51, 1792, 11, 51, 3, 51, 3, 51, 5, 51, 1796, 10, 51, 3, 52, 5, 52, 1799, 10, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 5, 52, 1807, 10, 52, 3, 52, 3, 52, 3, 52, 3, 52, 5, 52, 1813, 10, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 5, 52, 1829, 10, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 5, 52, 1841, 10, 52, 5, 52, 1843, 10, 52, 3, 53, 5, 53, 1846, 10, 53, 3, 53, 3, 53, 3, 53, 3, 53, 3, 53, 3, 53, 5, 53, 1854, 10, 53, 3, 53, 3, 53, 3, 53, 3, 53, 5, 53, 1860, 10, 53, 3, 53, 3, 53, 3, 53, 3, 53, 5, 53, 1866, 10, 53, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 7, 54, 1877, 10, 54, 12, 54, 14, 54, 1880, 11, 54, 3, 54, 3, 54, 7, 54, 1884, 10, 54, 12, 54, 14, 54, 1887, 11, 54, 3, 54, 3, 54, 3, 54, 7, 54, 1892, 10, 54, 12, 54, 14, 54, 1895, 11, 54, 5, 54, 1897, 10, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 7, 54, 1906, 10, 54, 12, 54, 14, 54, 1909, 11, 54, 3, 54, 3, 54, 3, 54, 7, 54, 1914, 10, 54, 12, 54, 14, 54, 1917, 11, 54, 5, 54, 1919, 10, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 7, 54, 1929, 10, 54, 12, 54, 14, 54, 1932, 11, 54, 3, 54, 3, 54, 7, 54, 1936, 10, 54, 12, 54, 14, 54, 1939, 11, 54, 3, 54, 3, 54, 3, 54, 7, 54, 1944, 10, 54, 12, 54, 14, 54, 1947, 11, 54, 5, 54, 1949, 10, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 7, 54, 1959, 10, 54, 12, 54, 14, 54, 1962, 11, 54, 3, 54, 3, 54, 7, 54, 1966, 10, 54, 12, 54, 14, 54, 1969, 11, 54, 3, 54, 3, 54, 3, 54, 7, 54, 1974, 10, 54, 12, 54, 14, 54, 1977, 11, 54, 5, 54, 1979, 10, 54, 3, 54, 3, 54, 3, 54, 7, 54, 1984, 10, 54, 12, 54, 14, 54, 1987, 11, 54, 3, 54, 3, 54, 3, 54, 7, 54, 1992, 10, 54, 12, 54, 14, 54, 1995, 11, 54, 5, 54, 1997, 10, 54, 5, 54, 1999, 10, 54, 3, 55, 3, 55, 3, 55, 5, 55, 2004, 10, 55, 3, 56, 3, 56, 3, 56, 3, 56, 6, 56, 2010, 10, 56, 13, 56, 14, 56, 2011, 3, 56, 3, 56, 3, 57, 3, 57, 3, 57, 7, 57, 2019, 10, 57, 12, 57, 14, 57, 2022, 11, 57, 3, 58, 5, 58, 2025, 10, 58, 3, 58, 3, 58, 5, 58, 2029, 10, 58, 3, 58, 3, 58, 3, 58, 5, 58, 2034, 10, 58, 3, 58, 3, 58, 3, 58, 3, 58, 5, 58, 2040, 10, 58, 3, 58, 3, 58, 3, 58, 3, 58, 5, 58, 2046, 10, 58, 3, 58, 3, 58, 3, 58, 5, 58, 2051, 10, 58, 3, 58, 3, 58, 3, 58, 5, 58, 2056, 10, 58, 3, 58, 3, 58, 3, 58, 5, 58, 2061, 10, 58, 3, 58, 3, 58, 3, 58, 5, 58, 2066, 10, 58, 3, 58, 5, 58, 2069, 10, 58, 3, 59, 3, 59, 3, 59, 5, 59, 2074, 10, 59, 3, 59, 6, 59, 2077, 10, 59, 13, 59, 14, 59, 2078, 3, 59, 3, 59, 3, 59, 3, 59, 3, 59, 3, 59, 3, 59, 3, 59, 5, 59, 2089, 10, 59, 3, 60, 3, 60, 5, 60, 2093, 10, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 5, 60, 2100, 10, 60, 3, 60, 3, 60, 3, 60, 5, 60, 2105, 10, 60, 3, 60, 5, 60, 2108, 10, 60, 3, 60, 3, 60, 3, 60, 5, 60, 2113, 10, 60, 3, 60, 5, 60, 2116, 10, 60, 3, 60, 3, 60, 5, 60, 2120, 10, 60, 3, 60, 3, 60, 5, 60, 2124, 10, 60, 3, 61, 3, 61, 3, 61, 3, 61, 7, 61, 2130, 10, 61, 12, 61, 14, 61, 2133, 11, 61, 3, 62, 3, 62, 3, 62, 3, 62, 3, 62, 3, 62, 3, 62, 3, 63, 3, 63, 3, 63, 3, 63, 3, 63, 3, 63, 3, 63, 3, 63, 3, 63, 5, 63, 2151, 10, 63, 3, 63, 5, 63, 2154, 10, 63, 3, 63, 5, 63, 2157, 10, 63, 3, 63, 3, 63, 5, 63, 2161, 10, 63, 3, 63, 3, 63, 3, 64, 3, 64, 3, 64, 3, 64, 7, 64, 2169, 10, 64, 12, 64, 14, 64, 2172, 11, 64, 3, 65, 3, 65, 3, 65, 3, 65, 3, 65, 3, 65, 3, 65, 3, 65, 7, 65, 2182, 10, 65, 12, 65, 14, 65, 2185, 11, 65, 3, 65, 3, 65, 3, 66, 3, 66, 5, 66, 2191, 10, 66, 3, 66, 5, 66, 2194, 10, 66, 3, 66, 3, 66, 3, 66, 3, 66, 3, 66, 7, 66, 2201, 10, 66, 12, 66, 14, 66, 2204, 11, 66, 5, 66, 2206, 10, 66, 3, 66, 5, 66, 2209, 10, 66, 3, 67, 3, 67, 3, 67, 3, 67, 3, 67, 3, 67, 3, 67, 3, 67, 3, 67, 5, 67, 2220, 10, 67, 3, 67, 5, 67, 2223, 10, 67, 3, 67, 3, 67, 5, 67, 2227, 10, 67, 3, 67, 3, 67, 3, 68, 3, 68, 3, 68, 3, 68, 5, 68, 2235, 10, 68, 3, 68, 5, 68, 2238, 10, 68, 3, 68, 3, 68, 3, 68, 5, 68, 2243, 10, 68, 3, 68, 3, 68, 3, 68, 3, 68, 3, 68, 3, 68, 5, 68, 2251, 10, 68, 3, 68, 3, 68, 3, 68, 3, 68, 5, 68, 2257, 10, 68, 3, 68, 3, 68, 5, 68, 2261, 10, 68, 3, 69, 3, 69, 5, 69, 2265, 10, 69, 3, 69, 7, 69, 2268, 10, 69, 12, 69, 14, 69, 2271, 11, 69, 3, 69, 3, 69, 5, 69, 2275, 10, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 5, 69, 2282, 10, 69, 3, 69, 3, 69, 5, 69, 2286, 10, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 7, 69, 2295, 10, 69, 12, 69, 14, 69, 2298, 11, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 5, 69, 2305, 10, 69, 3, 69, 5, 69, 2308, 10, 69, 3, 69, 3, 69, 7, 69, 2312, 10, 69, 12, 69, 14, 69, 2315, 11, 69, 3, 69, 3, 69, 3, 69, 5, 69, 2320, 10, 69, 5, 69, 2322, 10, 69, 3, 69, 3, 69, 3, 69, 5, 69, 2327, 10, 69, 3, 69, 5, 69, 2330, 10, 69, 3, 69, 3, 69, 7, 69, 2334, 10, 69, 12, 69, 14, 69, 2337, 11, 69, 3, 69, 3, 69, 3, 69, 5, 69, 2342, 10, 69, 5, 69, 2344, 10, 69, 3, 69, 3, 69, 5, 69, 2348, 10, 69, 3, 69, 5, 69, 2351, 10, 69, 3, 69, 5, 69, 2354, 10, 69, 3, 69, 3, 69, 7, 69, 2358, 10, 69, 12, 69, 14, 69, 2361, 11, 69, 3, 69, 3, 69, 3, 69, 5, 69, 2366, 10, 69, 3, 69, 5, 69, 2369, 10, 69, 3, 69, 3, 69, 7, 69, 2373, 10, 69, 12, 69, 14, 69, 2376, 11, 69, 3, 69, 3, 69, 3, 69, 5, 69, 2381, 10, 69, 5, 69, 2383, 10, 69, 3, 69, 3, 69, 3, 69, 5, 69, 2388, 10, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 5, 69, 2396, 10, 69, 5, 69, 2398, 10, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 5, 69, 2407, 10, 69, 3, 69, 3, 69, 3, 69, 5, 69, 2412, 10, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 5, 69, 2420, 10, 69, 3, 69, 3, 69, 5, 69, 2424, 10, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 5, 69, 2432, 10, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 5, 69, 2442, 10, 69, 3, 69, 3, 69, 3, 69, 5, 69, 2447, 10, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 5, 69, 2454, 10, 69, 3, 69, 3, 69, 5, 69, 2458, 10, 69, 3, 69, 3, 69, 5, 69, 2462, 10, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 5, 69, 2491, 10, 69, 3, 69, 3, 69, 5, 69, 2495, 10, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 5, 69, 2507, 10, 69, 3, 69, 5, 69, 2510, 10, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 5, 69, 2519, 10, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 7, 69, 2534, 10, 69, 12, 69, 14, 69, 2537, 11, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 5, 69, 2548, 10, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 5, 69, 2555, 10, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 5, 69, 2562, 10, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 7, 69, 2575, 10, 69, 12, 69, 14, 69, 2578, 11, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 5, 69, 2590, 10, 69, 3, 69, 3, 69, 3, 69, 3, 69, 5, 69, 2596, 10, 69, 3, 69, 3, 69, 3, 69, 3, 69, 5, 69, 2602, 10, 69, 3, 69, 3, 69, 3, 69, 3, 69, 5, 69, 2608, 10, 69, 3, 69, 3, 69, 3, 69, 3, 69, 5, 69, 2614, 10, 69, 3, 69, 3, 69, 3, 69, 3, 69, 5, 69, 2620, 10, 69, 3, 69, 3, 69, 3, 69, 3, 69, 5, 69, 2626, 10, 69, 3, 70, 3, 70, 3, 70, 5, 70, 2631, 10, 70, 3, 70, 3, 70, 3, 71, 3, 71, 3, 71, 5, 71, 2638, 10, 71, 3, 71, 3, 71, 3, 72, 3, 72, 3, 72, 5, 72, 2645, 10, 72, 3, 72, 3, 72, 3, 72, 3, 72, 3, 72, 5, 72, 2652, 10, 72, 3, 72, 3, 72, 3, 72, 5, 72, 2657, 10, 72, 3, 72, 7, 72, 2660, 10, 72, 12, 72, 14, 72, 2663, 11, 72, 3, 73, 3, 73, 3, 73, 3, 73, 3, 73, 3, 73, 3, 73, 3, 73, 3, 74, 3, 74, 3, 74, 5, 74, 2676, 10, 74, 3, 74, 3, 74, 3, 75, 3, 75, 3, 75, 5, 75, 2683, 10, 75, 3, 75, 3, 75, 3, 76, 3, 76, 3, 76, 5, 76, 2690, 10, 76, 3, 76, 3, 76, 3, 77, 3, 77, 5, 77, 2696, 10, 77, 3, 77, 3, 77, 5, 77, 2700, 10, 77, 3, 77, 3, 77, 5, 77, 2704, 10, 77, 3, 78, 3, 78, 3, 78, 3, 78, 3, 78, 5, 78, 2711, 10, 78, 3, 78, 5, 78, 2714, 10, 78, 3, 79, 3, 79, 3, 79, 5, 79, 2719, 10, 79, 3, 79, 3, 79, 3, 80, 3, 80, 3, 80, 5, 80, 2726, 10, 80, 3, 80, 3, 80, 3, 80, 7, 80, 2731, 10, 80, 12, 80, 14, 80, 2734, 11, 80, 3, 80, 5, 80, 2737, 10, 80, 3, 81, 3, 81, 3, 81, 3, 81, 3, 81, 7, 81, 2744, 10, 81, 12, 81, 14, 81, 2747, 11, 81, 3, 82, 3, 82, 3, 82, 3, 82, 3, 83, 3, 83, 5, 83, 2755, 10, 83, 3, 83, 3, 83, 3, 84, 3, 84, 3, 84, 3, 84, 3, 84, 5, 84, 2764, 10, 84, 3, 84, 5, 84, 2767, 10, 84, 3, 85, 3, 85, 5, 85, 2771, 10, 85, 3, 86, 3, 86, 3, 86, 3, 87, 3, 87, 3, 87, 3, 87, 5, 87, 2780, 10, 87, 3, 88, 3, 88, 5, 88, 2784, 10, 88, 3, 88, 5, 88, 2787, 10, 88, 3, 88, 5, 88, 2790, 10, 88, 3, 88, 3, 88, 3, 88, 3, 88, 5, 88, 2796, 10, 88, 3, 88, 5, 88, 2799, 10, 88, 3, 88, 3, 88, 3, 88, 3, 88, 5, 88, 2805, 10, 88, 3, 88, 3, 88, 3, 88, 3, 88, 3, 88, 7, 88, 2812, 10, 88, 12, 88, 14, 88, 2815, 11, 88, 5, 88, 2817, 10, 88, 3, 88, 3, 88, 3, 88, 3, 88, 3, 88, 3, 88, 3, 88, 7, 88, 2826, 10, 88, 12, 88, 14, 88, 2829, 11, 88, 5, 88, 2831, 10, 88, 3, 89, 3, 89, 3, 89, 5, 89, 2836, 10, 89, 3, 89, 5, 89, 2839, 10, 89, 3, 89, 3, 89, 3, 89, 5, 89, 2844, 10, 89, 3, 89, 3, 89, 3, 89, 3, 89, 3, 89, 3, 89, 3, 89, 3, 89, 5, 89, 2854, 10, 89, 3, 89, 3, 89, 3, 89, 5, 89, 2859, 10, 89, 3, 89, 3, 89, 6, 89, 2863, 10, 89, 13, 89, 14, 89, 2864, 5, 89, 2867, 10, 89, 3, 89, 3, 89, 6, 89, 2871, 10, 89, 13, 89, 14, 89, 2872, 5, 89, 2875, 10, 89, 3, 89, 3, 89, 3, 89, 3, 89, 5, 89, 2881, 10, 89, 3, 89, 3, 89, 3, 89, 3, 89, 7, 89, 2887, 10, 89, 12, 89, 14, 89, 2890, 11, 89, 3, 89, 3, 89, 5, 89, 2894, 10, 89, 3, 89, 3, 89, 3, 89, 3, 89, 7, 89, 2900, 10, 89, 12, 89, 14, 89, 2903, 11, 89, 5, 89, 2905, 10, 89, 3, 90, 3, 90, 3, 90, 5, 90, 2910, 10, 90, 3, 90, 5, 90, 2913, 10, 90, 3, 90, 3, 90, 3, 90, 5, 90, 2918, 10, 90, 3, 90, 3, 90, 3, 90, 3, 90, 3, 90, 3, 90, 5, 90, 2926, 10, 90, 3, 90, 3, 90, 3, 90, 3, 90, 3, 90, 3, 90, 5, 90, 2934, 10, 90, 3, 90, 3, 90, 3, 90, 3, 90, 5, 90, 2940, 10, 90, 3, 90, 3, 90, 3, 90, 3, 90, 7, 90, 2946, 10, 90, 12, 90, 14, 90, 2949, 11, 90, 3, 90, 3, 90, 5, 90, 2953, 10, 90, 3, 90, 3, 90, 3, 90, 3, 90, 7, 90, 2959, 10, 90, 12, 90, 14, 90, 2962, 11, 90, 5, 90, 2964, 10, 90, 3, 91, 3, 91, 5, 91, 2968, 10, 91, 3, 91, 5, 91, 2971, 10, 91, 3, 91, 3, 91, 3, 91, 3, 91, 3, 91, 3, 91, 5, 91, 2979, 10, 91, 3, 91, 3, 91, 3, 91, 3, 91, 5, 91, 2985, 10, 91, 3, 91, 3, 91, 3, 91, 3, 91, 3, 91, 7, 91, 2992, 10, 91, 12, 91, 14, 91, 2995, 11, 91, 5, 91, 2997, 10, 91, 3, 92, 3, 92, 5, 92, 3001, 10, 92, 3, 92, 3, 92, 5, 92, 3005, 10, 92, 3, 92, 3, 92, 6, 92, 3009, 10, 92, 13, 92, 14, 92, 3010, 3, 92, 3, 92, 5, 92, 3015, 10, 92, 3, 92, 3, 92, 5, 92, 3019, 10, 92, 5, 92, 3021, 10, 92, 3, 92, 5, 92, 3024, 10, 92, 3, 92, 5, 92, 3027, 10, 92, 3, 92, 5, 92, 3030, 10, 92, 3, 92, 3, 92, 6, 92, 3034, 10, 92, 13, 92, 14, 92, 3035, 3, 92, 3, 92, 5, 92, 3040, 10, 92, 3, 92, 5, 92, 3043, 10, 92, 3, 92, 5, 92, 3046, 10, 92, 3, 92, 5, 92, 3049, 10, 92, 3, 92, 5, 92, 3052, 10, 92, 5, 92, 3054, 10, 92, 3, 93, 3, 93, 5, 93, 3058, 10, 93, 3, 94, 3, 94, 3, 94, 3, 94, 5, 94, 3064, 10, 94, 3, 94, 3, 94, 3, 94, 3, 94, 5, 94, 3070, 10, 94, 3, 94, 7, 94, 3073, 10, 94, 12, 94, 14, 94, 3076, 11, 94, 5, 94, 3078, 10, 94, 3, 95, 3, 95, 3, 95, 3, 95, 5, 95, 3084, 10, 95, 3, 96, 3, 96, 5, 96, 3088, 10, 96, 3, 97, 3, 97, 3, 97, 3, 97, 3, 97, 3, 97, 5, 97, 3096, 10, 97, 3, 98, 3, 98, 5, 98, 3100, 10, 98, 3, 98, 5, 98, 3103, 10, 98, 3, 98, 5, 98, 3106, 10, 98, 3, 98, 3, 98, 3, 98, 3, 98, 3, 98, 3, 98, 3, 98, 5, 98, 3115, 10, 98, 3, 98, 3, 98, 5, 98, 3119, 10, 98, 3, 98, 5, 98, 3122, 10, 98, 3, 98, 3, 98, 5, 98, 3126, 10, 98, 3, 99, 3, 99, 5, 99, 3130, 10, 99, 3, 99, 5, 99, 3133, 10, 99, 3, 99, 5, 99, 3136, 10, 99, 3, 99, 3, 99, 3, 99, 5, 99, 3141, 10, 99, 3, 99, 3, 99, 3, 99, 3, 99, 5, 99, 3147, 10, 99, 7, 99, 3149, 10, 99, 12, 99, 14, 99, 3152, 11, 99, 3, 99, 3, 99, 3, 99, 3, 99, 3, 99, 3, 99, 3, 99, 5, 99, 3161, 10, 99, 3, 99, 3, 99, 3, 99, 3, 99, 5, 99, 3167, 10, 99, 7, 99, 3169, 10, 99, 12, 99, 14, 99, 3172, 11, 99, 3, 99, 3, 99, 3, 99, 5, 99, 3177, 10, 99, 3, 99, 3, 99, 5, 99, 3181, 10, 99, 3, 100, 3, 100, 3, 100, 3, 100, 5, 100, 3187, 10, 100, 3, 100, 5, 100, 3190, 10, 100, 3, 101, 3, 101, 3, 101, 3, 101, 3, 101, 3, 101, 3, 101, 3, 101, 3, 101, 3, 101, 5, 101, 3202, 10, 101, 3, 101, 3, 101, 5, 101, 3206, 10, 101, 3, 101, 3, 101, 5, 101, 3210, 10, 101, 3, 102, 3, 102, 3, 102, 3, 102, 3, 102, 3, 102, 5, 102, 3218, 10, 102, 3, 102, 3, 102, 5, 102, 3222, 10, 102, 3, 103, 3, 103, 3, 103, 3, 103, 3, 104, 3, 104, 5, 104, 3230, 10, 104, 3, 104, 5, 104, 3233, 10, 104, 3, 104, 3, 104, 5, 104, 3237, 10, 104, 3, 104, 5, 104, 3240, 10, 104, 3, 104, 3, 104, 3, 104, 3, 104, 7, 104, 3246, 10, 104, 12, 104, 14, 104, 3249, 11, 104, 3, 104, 3, 104, 5, 104, 3253, 10, 104, 3, 104, 5, 104, 3256, 10, 104, 3, 104, 5, 104, 3259, 10, 104, 3, 105, 3, 105, 5, 105, 3263, 10, 105, 3, 105, 5, 105, 3266, 10, 105, 3, 105, 3, 105, 3, 105, 3, 105, 3, 105, 7, 105, 3273, 10, 105, 12, 105, 14, 105, 3276, 11, 105, 3, 105, 3, 105, 5, 105, 3280, 10, 105, 3, 106, 3, 106, 3, 106, 3, 106, 3, 106, 7, 106, 3287, 10, 106, 12, 106, 14, 106, 3290, 11, 106, 3, 107, 3, 107, 5, 107, 3294, 10, 107, 3, 108, 3, 108, 3, 108, 7, 108, 3299, 10, 108, 12, 108, 14, 108, 3302, 11, 108, 3, 109, 3, 109, 7, 109, 3306, 10, 109, 12, 109, 14, 109, 3309, 11, 109, 3, 109, 3, 109, 3, 109, 7, 109, 3314, 10, 109, 12, 109, 14, 109, 3317, 11, 109, 3, 109, 3, 109, 5, 109, 3321, 10, 109, 3, 110, 3, 110, 3, 110, 3, 110, 3, 110, 3, 110, 5, 110, 3329, 10, 110, 3, 110, 5, 110, 3332, 10, 110, 3, 110, 5, 110, 3335, 10, 110, 3, 110, 3, 110, 3, 110, 7, 110, 3340, 10, 110, 12, 110, 14, 110, 3343, 11, 110, 5, 110, 3345, 10, 110, 3, 110, 3, 110, 3, 110, 3, 110, 3, 110, 5, 110, 3352, 10, 110, 3, 110, 5, 110, 3355, 10, 110, 3, 110, 3, 110, 3, 110, 3, 110, 3, 110, 3, 110, 5, 110, 3363, 10, 110, 3, 111, 3, 111, 3, 111, 3, 111, 5, 111, 3369, 10, 111, 3, 111, 3, 111, 3, 111, 3, 111, 3, 112, 3, 112, 3, 112, 3, 112, 3, 112, 5, 112, 3380, 10, 112, 3, 113, 5, 113, 3383, 10, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 5, 113, 3394, 10, 113, 3, 113, 3, 113, 3, 113, 3, 113, 5, 113, 3400, 10, 113, 3, 113, 3, 113, 5, 113, 3404, 10, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 5, 113, 3415, 10, 113, 3, 113, 3, 113, 3, 113, 5, 113, 3420, 10, 113, 5, 113, 3422, 10, 113, 3, 113, 3, 113, 5, 113, 3426, 10, 113, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 5, 114, 3436, 10, 114, 3, 115, 3, 115, 3, 115, 3, 115, 3, 115, 3, 115, 3, 115, 3, 115, 5, 115, 3446, 10, 115, 3, 116, 3, 116, 7, 116, 3450, 10, 116, 12, 116, 14, 116, 3453, 11, 116, 3, 116, 3, 116, 5, 116, 3457, 10, 116, 3, 116, 5, 116, 3460, 10, 116, 3, 116, 5, 116, 3463, 10, 116, 3, 116, 5, 116, 3466, 10, 116, 3, 116, 3, 116, 7, 116, 3470, 10, 116, 12, 116, 14, 116, 3473, 11, 116, 3, 116, 3, 116, 5, 116, 3477, 10, 116, 3, 116, 5, 116, 3480, 10, 116, 3, 116, 5, 116, 3483, 10, 116, 3, 116, 5, 116, 3486, 10, 116, 5, 116, 3488, 10, 116, 3, 117, 3, 117, 7, 117, 3492, 10, 117, 12, 117, 14, 117, 3495, 11, 117, 3, 117, 3, 117, 5, 117, 3499, 10, 117, 3, 117, 5, 117, 3502, 10, 117, 3, 117, 5, 117, 3505, 10, 117, 3, 118, 3, 118, 5, 118, 3509, 10, 118, 3, 118, 3, 118, 3, 119, 3, 119, 5, 119, 3515, 10, 119, 3, 119, 3, 119, 5, 119, 3519, 10, 119, 3, 120, 3, 120, 3, 120, 3, 120, 3, 120, 3, 120, 3, 120, 3, 120, 5, 120, 3529, 10, 120, 3, 121, 3, 121, 5, 121, 3533, 10, 121, 3, 121, 3, 121, 7, 121, 3537, 10, 121, 12, 121, 14, 121, 3540, 11, 121, 3, 122, 3, 122, 3, 122, 3, 122, 3, 122, 3, 122, 5, 122, 3548, 10, 122, 3, 122, 5, 122, 3551, 10, 122, 3, 122, 3, 122, 5, 122, 3555, 10, 122, 3, 122, 5, 122, 3558, 10, 122, 3, 122, 3, 122, 5, 122, 3562, 10, 122, 3, 122, 3, 122, 5, 122, 3566, 10, 122, 3, 122, 5, 122, 3569, 10, 122, 5, 122, 3571, 10, 122, 3, 123, 3, 123, 3, 123, 3, 123, 7, 123, 3577, 10, 123, 12, 123, 14, 123, 3580, 11, 123, 3, 123, 3, 123, 3, 123, 3, 123, 3, 123, 3, 123, 3, 123, 3, 123, 3, 123, 5, 123, 3591, 10, 123, 3, 123, 3, 123, 6, 123, 3595, 10, 123, 13, 123, 14, 123, 3596, 5, 123, 3599, 10, 123, 3, 123, 3, 123, 6, 123, 3603, 10, 123, 13, 123, 14, 123, 3604, 5, 123, 3607, 10, 123, 5, 123, 3609, 10, 123, 3, 124, 3, 124, 3, 124, 3, 124, 5, 124, 3615, 10, 124, 3, 124, 3, 124, 3, 124, 3, 124, 3, 124, 3, 124, 5, 124, 3623, 10, 124, 3, 125, 3, 125, 3, 125, 3, 125, 3, 125, 3, 125, 5, 125, 3631, 10, 125, 3, 126, 3, 126, 3, 126, 3, 126, 5, 126, 3637, 10, 126, 3, 126, 3, 126, 3, 126, 3, 126, 3, 126, 7, 126, 3644, 10, 126, 12, 126, 14, 126, 3647, 11, 126, 3, 126, 3, 126, 5, 126, 3651, 10, 126, 5, 126, 3653, 10, 126, 3, 126, 3, 126, 5, 126, 3657, 10, 126, 3, 127, 3, 127, 5, 127, 3661, 10, 127, 3, 128, 3, 128, 3, 128, 3, 128, 5, 128, 3667, 10, 128, 3, 128, 3, 128, 3, 128, 3, 128, 3, 128, 5, 128, 3674, 10, 128, 3, 129, 3, 129, 5, 129, 3678, 10, 129, 3, 130, 3, 130, 3, 130, 3, 130, 3, 130, 7, 130, 3685, 10, 130, 12, 130, 14, 130, 3688, 11, 130, 5, 130, 3690, 10, 130, 3, 131, 3, 131, 5, 131, 3694, 10, 131, 3, 132, 3, 132, 5, 132, 3698, 10, 132, 3, 132, 3, 132, 5, 132, 3702, 10, 132, 3, 132, 5, 132, 3705, 10, 132, 3, 132, 5, 132, 3708, 10, 132, 3, 132, 5, 132, 3711, 10, 132, 3, 133, 3, 133, 5, 133, 3715, 10, 133, 3, 133, 3, 133, 5, 133, 3719, 10, 133, 3, 133, 5, 133, 3722, 10, 133, 3, 133, 5, 133, 3725, 10, 133, 3, 133, 5, 133, 3728, 10, 133, 3, 134, 3, 134, 3, 134, 3, 135, 3, 135, 5, 135, 3735, 10, 135, 3, 135, 3, 135, 5, 135, 3739, 10, 135, 3, 135, 3, 135, 3, 136, 3, 136, 3, 136, 3, 136, 3, 137, 3, 137, 3, 137, 3, 137, 3, 137, 7, 137, 3752, 10, 137, 12, 137, 14, 137, 3755, 11, 137, 3, 138, 3, 138, 3, 138, 3, 139, 3, 139, 3, 139, 3, 139, 3, 139, 3, 140, 3, 140, 5, 140, 3767, 10, 140, 3, 140, 3, 140, 3, 140, 3, 140, 7, 140, 3773, 10, 140, 12, 140, 14, 140, 3776, 11, 140, 3, 141, 3, 141, 3, 141, 3, 141, 3, 141, 3, 141, 3, 141, 5, 141, 3785, 10, 141, 3, 142, 3, 142, 5, 142, 3789, 10, 142, 3, 142, 5, 142, 3792, 10, 142, 3, 142, 3, 142, 3, 143, 3, 143, 5, 143, 3798, 10, 143, 3, 143, 5, 143, 3801, 10, 143, 3, 143, 5, 143, 3804, 10, 143, 3, 144, 3, 144, 3, 144, 3, 144, 3, 144, 3, 144, 3, 144, 5, 144, 3813, 10, 144, 3, 145, 3, 145, 3, 145, 3, 145, 3, 145, 3, 145, 3, 145, 5, 145, 3822, 10, 145, 3, 146, 3, 146, 3, 146, 3, 146, 3, 146, 3, 146, 7, 146, 3830, 10, 146, 12, 146, 14, 146, 3833, 11, 146, 3, 146, 5, 146, 3836, 10, 146, 3, 147, 3, 147, 3, 147, 3, 147, 3, 147, 3, 147, 7, 147, 3844, 10, 147, 12, 147, 14, 147, 3847, 11, 147, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 5, 148, 3856, 10, 148, 3, 149, 3, 149, 3, 149, 3, 150, 3, 150, 3, 150, 5, 150, 3864, 10, 150, 3, 150, 5, 150, 3867, 10, 150, 3, 151, 3, 151, 3, 151, 3, 151, 3, 151, 7, 151, 3874, 10, 151, 12, 151, 14, 151, 3877, 11, 151, 5, 151, 3879, 10, 151, 3, 151, 3, 151, 5, 151, 3883, 10, 151, 3, 151, 7, 151, 3886, 10, 151, 12, 151, 14, 151, 3889, 11, 151, 3, 151, 5, 151, 3892, 10, 151, 3, 152, 3, 152, 3, 152, 3, 152, 3, 152, 7, 152, 3899, 10, 152, 12, 152, 14, 152, 3902, 11, 152, 5, 152, 3904, 10, 152, 3, 153, 3, 153, 3, 153, 3, 154, 3, 154, 3, 154, 3, 155, 3, 155, 3, 155, 3, 155, 3, 155, 3, 155, 3, 155, 3, 155, 3, 155, 3, 155, 3, 155, 3, 155, 3, 155, 3, 155, 3, 155, 3, 155, 3, 155, 3, 155, 3, 155, 3, 155, 3, 155, 7, 155, 3933, 10, 155, 12, 155, 14, 155, 3936, 11, 155, 5, 155, 3938, 10, 155, 3, 155, 5, 155, 3941, 10, 155, 3, 156, 3, 156, 3, 157, 3, 157, 3, 158, 3, 158, 3, 159, 3, 159, 3, 159, 3, 159, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 7, 160, 3995, 10, 160, 12, 160, 14, 160, 3998, 11, 160, 3, 160, 3, 160, 5, 160, 4002, 10, 160, 3, 161, 3, 161, 3, 161, 3, 161, 3, 161, 3, 161, 3, 162, 3, 162, 3, 163, 3, 163, 3, 163, 3, 163, 3, 163, 3, 163, 3, 163, 3, 163, 3, 163, 3, 163, 3, 163, 3, 163, 3, 163, 3, 163, 3, 163, 3, 163, 3, 163, 3, 163, 5, 163, 4030, 10, 163, 3, 164, 3, 164, 3, 164, 3, 164, 3, 164, 3, 164, 3, 164, 3, 164, 3, 164, 3, 164, 3, 164, 3, 164, 5, 164, 4044, 10, 164, 3, 165, 3, 165, 3, 165, 7, 165, 4049, 10, 165, 12, 165, 14, 165, 4052, 11, 165, 3, 165, 5, 165, 4055, 10, 165, 3, 166, 3, 166, 3, 166, 3, 166, 5, 166, 4061, 10, 166, 3, 167, 3, 167, 3, 167, 3, 167, 3, 167, 3, 167, 5, 167, 4069, 10, 167, 5, 167, 4071, 10, 167, 3, 168, 3, 168, 3, 168, 3, 168, 3, 169, 3, 169, 3, 169, 3, 169, 3, 169, 5, 169, 4082, 10, 169, 3, 170, 3, 170, 3, 170, 3, 170, 3, 171, 3, 171, 3, 171, 3, 171, 5, 171, 4092, 10, 171, 3, 172, 3, 172, 3, 172, 3, 172, 3, 172, 5, 172, 4099, 10, 172, 3, 173, 3, 173, 3, 173, 3, 173, 5, 173, 4105, 10, 173, 3, 174, 3, 174, 3, 174, 3, 174, 3, 175, 3, 175, 5, 175, 4113, 10, 175, 3, 176, 3, 176, 3, 176, 5, 176, 4118, 10, 176, 3, 176, 3, 176, 3, 176, 3, 176, 7, 176, 4124, 10, 176, 12, 176, 14, 176, 4127, 11, 176, 3, 176, 3, 176, 3, 176, 7, 176, 4132, 10, 176, 12, 176, 14, 176, 4135, 11, 176, 3, 176, 3, 176, 3, 176, 7, 176, 4140, 10, 176, 12, 176, 14, 176, 4143, 11, 176, 3, 176, 3, 176, 3, 176, 7, 176, 4148, 10, 176, 12, 176, 14, 176, 4151, 11, 176, 3, 176, 7, 176, 4154, 10, 176, 12, 176, 14, 176, 4157, 11, 176, 5, 176, 4159, 10, 176, 3, 176, 3, 176, 5, 176, 4163, 10, 176, 3, 177, 3, 177, 3, 177, 5, 177, 4168, 10, 177, 3, 177, 6, 177, 4171, 10, 177, 13, 177, 14, 177, 4172, 3, 177, 3, 177, 6, 177, 4177, 10, 177, 13, 177, 14, 177, 4178, 5, 177, 4181, 10, 177, 3, 177, 3, 177, 3, 177, 3, 178, 3, 178, 3, 178, 3, 178, 6, 178, 4190, 10, 178, 13, 178, 14, 178, 4191, 3, 178, 7, 178, 4195, 10, 178, 12, 178, 14, 178, 4198, 11, 178, 3, 178, 3, 178, 6, 178, 4202, 10, 178, 13, 178, 14, 178, 4203, 5, 178, 4206, 10, 178, 3, 178, 3, 178, 3, 178, 3, 179, 3, 179, 3, 179, 3, 180, 3, 180, 3, 180, 3, 181, 3, 181, 3, 181, 5, 181, 4220, 10, 181, 3, 181, 3, 181, 6, 181, 4224, 10, 181, 13, 181, 14, 181, 4225, 3, 181, 3, 181, 3, 181, 5, 181, 4231, 10, 181, 3, 182, 3, 182, 3, 182, 5, 182, 4236, 10, 182, 3, 182, 3, 182, 6, 182, 4240, 10, 182, 13, 182, 14, 182, 4241, 3, 182, 3, 182, 3, 182, 3, 182, 3, 182, 5, 182, 4249, 10, 182, 3, 183, 3, 183, 3, 183, 3, 184, 3, 184, 3, 184, 5, 184, 4257, 10, 184, 3, 184, 3, 184, 3, 184, 3, 184, 6, 184, 4263, 10, 184, 13, 184, 14, 184, 4264, 3, 184, 3, 184, 3, 184, 5, 184, 4270, 10, 184, 3, 185, 3, 185, 3, 185, 3, 185, 5, 185, 4276, 10, 185, 3, 185, 5, 185, 4279, 10, 185, 3, 185, 3, 185, 3, 185, 3, 185, 3, 185, 3, 185, 5, 185, 4287, 10, 185, 3, 186, 3, 186, 3, 186, 3, 186, 3, 186, 5, 186, 4294, 10, 186, 3, 187, 3, 187, 3, 187, 3, 187, 3, 187, 3, 187, 3, 187, 5, 187, 4303, 10, 187, 3, 187, 5, 187, 4306, 10, 187, 3, 188, 3, 188, 3, 188, 3, 188, 3, 188, 3, 188, 3, 189, 3, 189, 3, 189, 3, 189, 3, 189, 3, 189, 3, 189, 7, 189, 4321, 10, 189, 12, 189, 14, 189, 4324, 11, 189, 3, 189, 3, 189, 3, 190, 3, 190, 3, 190, 5, 190, 4331, 10, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 5, 190, 4339, 10, 190, 3, 191, 3, 191, 5, 191, 4343, 10, 191, 3, 191, 3, 191, 3, 192, 3, 192, 3, 192, 5, 192, 4350, 10, 192, 3, 192, 3, 192, 6, 192, 4354, 10, 192, 13, 192, 14, 192, 4355, 3, 193, 3, 193, 3, 193, 3, 193, 6, 193, 4362, 10, 193, 13, 193, 14, 193, 4363, 3, 194, 3, 194, 3, 194, 3, 194, 3, 194, 7, 194, 4371, 10, 194, 12, 194, 14, 194, 4374, 11, 194, 3, 194, 3, 194, 3, 194, 5, 194, 4379, 10, 194, 3, 194, 3, 194, 3, 194, 7, 194, 4384, 10, 194, 12, 194, 14, 194, 4387, 11, 194, 3, 194, 3, 194, 3, 194, 3, 194, 5, 194, 4393, 10, 194, 3, 194, 7, 194, 4396, 10, 194, 12, 194, 14, 194, 4399, 11, 194, 5, 194, 4401, 10, 194, 5, 194, 4403, 10, 194, 3, 194, 3, 194, 6, 194, 4407, 10, 194, 13, 194, 14, 194, 4408, 5, 194, 4411, 10, 194, 3, 194, 3, 194, 7, 194, 4415, 10, 194, 12, 194, 14, 194, 4418, 11, 194, 5, 194, 4420, 10, 194, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 7, 195, 4427, 10, 195, 12, 195, 14, 195, 4430, 11, 195, 3, 195, 3, 195, 3, 195, 5, 195, 4435, 10, 195, 3, 195, 3, 195, 3, 195, 7, 195, 4440, 10, 195, 12, 195, 14, 195, 4443, 11, 195, 3, 195, 3, 195, 3, 195, 3, 195, 5, 195, 4449, 10, 195, 3, 195, 7, 195, 4452, 10, 195, 12, 195, 14, 195, 4455, 11, 195, 5, 195, 4457, 10, 195, 5, 195, 4459, 10, 195, 3, 195, 3, 195, 6, 195, 4463, 10, 195, 13, 195, 14, 195, 4464, 5, 195, 4467, 10, 195, 3, 195, 3, 195, 7, 195, 4471, 10, 195, 12, 195, 14, 195, 4474, 11, 195, 5, 195, 4476, 10, 195, 3, 196, 3, 196, 3, 196, 5, 196, 4481, 10, 196, 3, 196, 3, 196, 3, 196, 7, 196, 4486, 10, 196, 12, 196, 14, 196, 4489, 11, 196, 3, 197, 3, 197, 3, 197, 3, 197, 7, 197, 4495, 10, 197, 12, 197, 14, 197, 4498, 11, 197, 3, 197, 3, 197, 5, 197, 4502, 10, 197, 3, 197, 3, 197, 3, 197, 3, 197, 3, 197, 7, 197, 4509, 10, 197, 12, 197, 14, 197, 4512, 11, 197, 3, 197, 3, 197, 3, 197, 3, 197, 5, 197, 4518, 10, 197, 3, 197, 7, 197, 4521, 10, 197, 12, 197, 14, 197, 4524, 11, 197, 5, 197, 4526, 10, 197, 5, 197, 4528, 10, 197, 3, 197, 3, 197, 3, 197, 3, 197, 7, 197, 4534, 10, 197, 12, 197, 14, 197, 4537, 11, 197, 5, 197, 4539, 10, 197, 3, 198, 3, 198, 3, 198, 3, 198, 3, 198, 3, 198, 3, 198, 3, 198, 7, 198, 4549, 10, 198, 12, 198, 14, 198, 4552, 11, 198, 3, 198, 3, 198, 3, 198, 5, 198, 4557, 10, 198, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 7, 199, 4564, 10, 199, 12, 199, 14, 199, 4567, 11, 199, 3, 200, 3, 200, 3, 200, 3, 200, 7, 200, 4573, 10, 200, 12, 200, 14, 200, 4576, 11, 200, 3, 200, 3, 200, 5, 200, 4580, 10, 200, 3, 200, 3, 200, 3, 200, 3, 200, 3, 200, 7, 200, 4587, 10, 200, 12, 200, 14, 200, 4590, 11, 200, 3, 200, 3, 200, 3, 200, 5, 200, 4595, 10, 200, 3, 200, 3, 200, 3, 200, 3, 200, 3, 200, 3, 200, 3, 200, 7, 200, 4604, 10, 200, 12, 200, 14, 200, 4607, 11, 200, 5, 200, 4609, 10, 200, 3, 201, 3, 201, 3, 201, 3, 201, 3, 201, 3, 201, 3, 201, 3, 201, 7, 201, 4619, 10, 201, 12, 201, 14, 201, 4622, 11, 201, 3, 202, 3, 202, 3, 202, 3, 202, 5, 202, 4628, 10, 202, 3, 202, 3, 202, 3, 202, 5, 202, 4633, 10, 202, 3, 203, 3, 203, 3, 203, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 5, 204, 4648, 10, 204, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 5, 204, 4659, 10, 204, 3, 204, 5, 204, 4662, 10, 204, 3, 205, 3, 205, 3, 205, 3, 205, 3, 205, 3, 205, 3, 205, 3, 205, 5, 205, 4672, 10, 205, 3, 206, 3, 206, 3, 206, 3, 206, 3, 206, 3, 206, 3, 206, 3, 206, 5, 206, 4682, 10, 206, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 5, 207, 4692, 10, 207, 3, 208, 3, 208, 3, 208, 3, 209, 3, 209, 3, 209, 3, 209, 3, 209, 5, 209, 4702, 10, 209, 3, 210, 3, 210, 5, 210, 4706, 10, 210, 3, 210, 3, 210, 5, 210, 4710, 10, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 5, 210, 4720, 10, 210, 3, 210, 3, 210, 3, 210, 5, 210, 4725, 10, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 5, 210, 4775, 10, 210, 3, 211, 3, 211, 3, 211, 3, 211, 3, 211, 3, 211, 3, 211, 3, 211, 3, 211, 3, 211, 3, 211, 3, 211, 3, 211, 3, 211, 3, 211, 3, 211, 5, 211, 4793, 10, 211, 3, 212, 3, 212, 3, 212, 3, 212, 3, 213, 3, 213, 5, 213, 4801, 10, 213, 3, 213, 3, 213, 3, 213, 3, 214, 3, 214, 3, 214, 3, 214, 7, 214, 4810, 10, 214, 12, 214, 14, 214, 4813, 11, 214, 3, 215, 3, 215, 3, 215, 3, 215, 5, 215, 4819, 10, 215, 3, 216, 3, 216, 5, 216, 4823, 10, 216, 3, 216, 3, 216, 3, 216, 3, 217, 3, 217, 5, 217, 4830, 10, 217, 3, 217, 3, 217, 3, 217, 5, 217, 4835, 10, 217, 3, 217, 5, 217, 4838, 10, 217, 3, 217, 5, 217, 4841, 10, 217, 3, 218, 3, 218, 3, 218, 3, 218, 3, 218, 3, 218, 3, 218, 5, 218, 4850, 10, 218, 3, 219, 3, 219, 5, 219, 4854, 10, 219, 3, 219, 3, 219, 3, 219, 3, 219, 3, 219, 3, 219, 3, 219, 3, 220, 3, 220, 3, 220, 3, 220, 3, 220, 3, 220, 3, 221, 3, 221, 3, 221, 3, 221, 3, 222, 3, 222, 3, 222, 3, 222, 3, 222, 3, 222, 3, 222, 3, 222, 3, 222, 7, 222, 4882, 10, 222, 12, 222, 14, 222, 4885, 11, 222, 3, 222, 3, 222, 3, 222, 3, 222, 5, 222, 4891, 10, 222, 3, 222, 3, 222, 5, 222, 4895, 10, 222, 3, 222, 3, 222, 3, 222, 3, 222, 3, 222, 5, 222, 4902, 10, 222, 3, 222, 5, 222, 4905, 10, 222, 3, 222, 3, 222, 3, 222, 3, 222, 3, 222, 3, 222, 3, 222, 3, 222, 3, 222, 3, 222, 3, 222, 3, 222, 7, 222, 4919, 10, 222, 12, 222, 14, 222, 4922, 11, 222, 5, 222, 4924, 10, 222, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 5, 223, 4934, 10, 223, 3, 223, 3, 223, 5, 223, 4938, 10, 223, 3, 223, 3, 223, 3, 223, 3, 223, 5, 223, 4944, 10, 223, 3, 223, 5, 223, 4947, 10, 223, 3, 223, 3, 223, 3, 223, 5, 223, 4952, 10, 223, 3, 223, 3, 223, 5, 223, 4956, 10, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 5, 223, 4963, 10, 223, 3, 223, 5, 223, 4966, 10, 223, 3, 223, 3, 223, 3, 223, 3, 223, 5, 223, 4972, 10, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 5, 223, 4996, 10, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 5, 223, 5009, 10, 223, 3, 223, 5, 223, 5012, 10, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 5, 223, 5022, 10, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 5, 223, 5030, 10, 223, 3, 223, 3, 223, 5, 223, 5034, 10, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 5, 223, 5041, 10, 223, 3, 223, 5, 223, 5044, 10, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 7, 223, 5051, 10, 223, 12, 223, 14, 223, 5054, 11, 223, 3, 223, 3, 223, 3, 223, 5, 223, 5059, 10, 223, 3, 223, 3, 223, 3, 223, 3, 223, 5, 223, 5065, 10, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 5, 223, 5075, 10, 223, 5, 223, 5077, 10, 223, 3, 224, 3, 224, 3, 224, 3, 224, 5, 224, 5083, 10, 224, 3, 224, 5, 224, 5086, 10, 224, 3, 224, 5, 224, 5089, 10, 224, 3, 225, 3, 225, 3, 225, 3, 225, 3, 225, 3, 225, 3, 225, 3, 225, 3, 225, 3, 225, 5, 225, 5101, 10, 225, 3, 225, 5, 225, 5104, 10, 225, 3, 226, 3, 226, 3, 226, 3, 226, 5, 226, 5110, 10, 226, 3, 227, 5, 227, 5113, 10, 227, 3, 227, 3, 227, 3, 227, 3, 227, 3, 227, 3, 227, 5, 227, 5121, 10, 227, 3, 227, 3, 227, 3, 227, 3, 227, 3, 227, 3, 227, 5, 227, 5129, 10, 227, 3, 228, 3, 228, 3, 228, 3, 228, 5, 228, 5135, 10, 228, 3, 228, 3, 228, 5, 228, 5139, 10, 228, 3, 229, 3, 229, 3, 229, 3, 229, 3, 229, 3, 229, 3, 229, 3, 229, 3, 229, 3, 229, 3, 229, 3, 229, 5, 229, 5153, 10, 229, 3, 230, 3, 230, 3, 230, 3, 231, 3, 231, 3, 231, 3, 231, 3, 231, 7, 231, 5163, 10, 231, 12, 231, 14, 231, 5166, 11, 231, 3, 231, 3, 231, 3, 231, 3, 231, 5, 231, 5172, 10, 231, 3, 231, 5, 231, 5175, 10, 231, 3, 231, 3, 231, 3, 231, 3, 232, 3, 232, 5, 232, 5182, 10, 232, 3, 232, 3, 232, 3, 232, 7, 232, 5187, 10, 232, 12, 232, 14, 232, 5190, 11, 232, 3, 233, 3, 233, 5, 233, 5194, 10, 233, 3, 233, 6, 233, 5197, 10, 233, 13, 233, 14, 233, 5198, 3, 234, 3, 234, 3, 234, 3, 234, 3, 234, 3, 234, 3, 234, 7, 234, 5208, 10, 234, 12, 234, 14, 234, 5211, 11, 234, 3, 235, 3, 235, 3, 235, 3, 235, 3, 236, 3, 236, 3, 237, 3, 237, 5, 237, 5221, 10, 237, 3, 237, 3, 237, 3, 237, 3, 237, 5, 237, 5227, 10, 237, 3, 238, 3, 238, 3, 238, 5, 238, 5232, 10, 238, 3, 238, 3, 238, 3, 238, 3, 238, 3, 238, 3, 238, 3, 238, 3, 238, 3, 238, 3, 238, 3, 238, 5, 238, 5245, 10, 238, 5, 238, 5247, 10, 238, 3, 238, 3, 238, 3, 238, 5, 238, 5252, 10, 238, 3, 238, 3, 238, 3, 238, 5, 238, 5257, 10, 238, 5, 238, 5259, 10, 238, 3, 239, 3, 239, 3, 239, 3, 239, 3, 239, 5, 239, 5266, 10, 239, 3, 240, 3, 240, 3, 240, 3, 240, 3, 240, 5, 240, 5273, 10, 240, 3, 240, 5, 240, 5276, 10, 240, 3, 240, 5, 240, 5279, 10, 240, 3, 240, 3, 240, 3, 240, 3, 240, 5, 240, 5285, 10, 240, 3, 240, 3, 240, 5, 240, 5289, 10, 240, 3, 241, 3, 241, 3, 241, 3, 241, 5, 241, 5295, 10, 241, 3, 242, 3, 242, 3, 242, 3, 242, 5, 242, 5301, 10, 242, 3, 242, 3, 242, 3, 243, 3, 243, 3, 243, 3, 244, 3, 244, 3, 244, 3, 245, 3, 245, 3, 245, 5, 245, 5314, 10, 245, 3, 245, 3, 245, 3, 245, 5, 245, 5319, 10, 245, 3, 245, 3, 245, 3, 245, 3, 245, 7, 245, 5325, 10, 245, 12, 245, 14, 245, 5328, 11, 245, 5, 245, 5330, 10, 245, 3, 246, 3, 246, 3, 246, 5, 246, 5335, 10, 246, 3, 246, 3, 246, 3, 246, 5, 246, 5340, 10, 246, 3, 246, 3, 246, 3, 246, 3, 246, 7, 246, 5346, 10, 246, 12, 246, 14, 246, 5349, 11, 246, 5, 246, 5351, 10, 246, 3, 247, 3, 247, 3, 247, 3, 247, 5, 247, 5357, 10, 247, 3, 248, 3, 248, 5, 248, 5361, 10, 248, 3, 248, 3, 248, 3, 248, 3, 248, 3, 248, 3, 248, 3, 248, 3, 248, 3, 248, 7, 248, 5372, 10, 248, 12, 248, 14, 248, 5375, 11, 248, 3, 248, 3, 248, 3, 248, 5, 248, 5380, 10, 248, 3, 248, 3, 248, 3, 248, 3, 248, 3, 248, 3, 248, 3, 248, 3, 248, 7, 248, 5390, 10, 248, 12, 248, 14, 248, 5393, 11, 248, 5, 248, 5395, 10, 248, 3, 249, 3, 249, 3, 250, 3, 250, 3, 250, 3, 250, 3, 250, 5, 250, 5404, 10, 250, 3, 250, 3, 250, 3, 250, 5, 250, 5409, 10, 250, 3, 251, 3, 251, 3, 251, 3, 251, 5, 251, 5415, 10, 251, 3, 252, 3, 252, 3, 253, 3, 253, 3, 253, 5, 253, 5422, 10, 253, 5, 253, 5424, 10, 253, 3, 254, 3, 254, 5, 254, 5428, 10, 254, 3, 254, 3, 254, 3, 254, 3, 254, 5, 254, 5434, 10, 254, 3, 254, 5, 254, 5437, 10, 254, 3, 255, 3, 255, 3, 256, 3, 256, 3, 257, 3, 257, 3, 257, 3, 257, 5, 257, 5447, 10, 257, 3, 258, 3, 258, 5, 258, 5451, 10, 258, 3, 259, 3, 259, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 6, 260, 5469, 10, 260, 13, 260, 14, 260, 5470, 3, 261, 3, 261, 3, 261, 3, 261, 3, 261, 5, 261, 5478, 10, 261, 5, 261, 5480, 10, 261, 3, 262, 3, 262, 3, 262, 6, 262, 5485, 10, 262, 13, 262, 14, 262, 5486, 5, 262, 5489, 10, 262, 3, 263, 3, 263, 5, 263, 5493, 10, 263, 3, 264, 3, 264, 3, 264, 5, 264, 5498, 10, 264, 3, 265, 3, 265, 3, 265, 3, 265, 3, 265, 3, 265, 3, 265, 3, 265, 3, 265, 5, 265, 5509, 10, 265, 3, 266, 3, 266, 3, 266, 5, 266, 5514, 10, 266, 3, 267, 3, 267, 3, 268, 3, 268, 5, 268, 5520, 10, 268, 3, 269, 5, 269, 5523, 10, 269, 3, 269, 3, 269, 5, 269, 5527, 10, 269, 3, 269, 6, 269, 5530, 10, 269, 13, 269, 14, 269, 5531, 3, 269, 5, 269, 5535, 10, 269, 3, 269, 3, 269, 5, 269, 5539, 10, 269, 3, 269, 3, 269, 5, 269, 5543, 10, 269, 5, 269, 5545, 10, 269, 3, 270, 3, 270, 3, 271, 5, 271, 5550, 10, 271, 3, 271, 3, 271, 3, 272, 5, 272, 5555, 10, 272, 3, 272, 3, 272, 3, 273, 3, 273, 3, 273, 3, 273, 3, 273, 3, 273, 3, 273, 3, 273, 3, 273, 5, 273, 5568, 10, 273, 3, 273, 5, 273, 5571, 10, 273, 3, 274, 3, 274, 5, 274, 5575, 10, 274, 3, 274, 5, 274, 5578, 10, 274, 3, 274, 3, 274, 3, 274, 5, 274, 5583, 10, 274, 3, 274, 5, 274, 5586, 10, 274, 3, 274, 3, 274, 5, 274, 5590, 10, 274, 3, 274, 3, 274, 3, 274, 5, 274, 5595, 10, 274, 3, 274, 5, 274, 5598, 10, 274, 3, 274, 3, 274, 3, 274, 5, 274, 5603, 10, 274, 3, 274, 5, 274, 5606, 10, 274, 3, 274, 3, 274, 3, 274, 3, 274, 5, 274, 5612, 10, 274, 3, 274, 5, 274, 5615, 10, 274, 3, 274, 3, 274, 5, 274, 5619, 10, 274, 3, 274, 5, 274, 5622, 10, 274, 3, 274, 5, 274, 5625, 10, 274, 3, 274, 3, 274, 5, 274, 5629, 10, 274, 3, 274, 5, 274, 5632, 10, 274, 3, 274, 5, 274, 5635, 10, 274, 3, 274, 3, 274, 5, 274, 5639, 10, 274, 3, 274, 5, 274, 5642, 10, 274, 3, 274, 5, 274, 5645, 10, 274, 3, 274, 5, 274, 5648, 10, 274, 3, 274, 3, 274, 5, 274, 5652, 10, 274, 3, 274, 5, 274, 5655, 10, 274, 3, 274, 5, 274, 5658, 10, 274, 3, 274, 3, 274, 3, 274, 5, 274, 5663, 10, 274, 3, 274, 3, 274, 3, 274, 5, 274, 5668, 10, 274, 3, 274, 3, 274, 3, 274, 5, 274, 5673, 10, 274, 3, 274, 5, 274, 5676, 10, 274, 3, 274, 3, 274, 3, 274, 5, 274, 5681, 10, 274, 3, 274, 5, 274, 5684, 10, 274, 3, 274, 3, 274, 3, 274, 5, 274, 5689, 10, 274, 3, 274, 5, 274, 5692, 10, 274, 3, 274, 3, 274, 5, 274, 5696, 10, 274, 3, 274, 3, 274, 5, 274, 5700, 10, 274, 3, 275, 3, 275, 3, 275, 3, 275, 7, 275, 5706, 10, 275, 12, 275, 14, 275, 5709, 11, 275, 3, 275, 3, 275, 3, 276, 3, 276, 5, 276, 5715, 10, 276, 3, 276, 3, 276, 5, 276, 5719, 10, 276, 3, 276, 3, 276, 3, 276, 5, 276, 5724, 10, 276, 3, 276, 5, 276, 5727, 10, 276, 3, 276, 3, 276, 3, 276, 5, 276, 5732, 10, 276, 3, 276, 3, 276, 5, 276, 5736, 10, 276, 5, 276, 5738, 10, 276, 3, 277, 3, 277, 3, 277, 3, 277, 3, 278, 3, 278, 3, 278, 3, 278, 3, 278, 3, 278, 3, 279, 3, 279, 3, 279, 3, 279, 5, 279, 5754, 10, 279, 3, 279, 3, 279, 3, 280, 3, 280, 3, 280, 7, 280, 5761, 10, 280, 12, 280, 14, 280, 5764, 11, 280, 3, 281, 3, 281, 3, 281, 7, 281, 5769, 10, 281, 12, 281, 14, 281, 5772, 11, 281, 3, 282, 3, 282, 3, 282, 3, 282, 7, 282, 5778, 10, 282, 12, 282, 14, 282, 5781, 11, 282, 3, 282, 3, 282, 3, 283, 3, 283, 3, 283, 7, 283, 5788, 10, 283, 12, 283, 14, 283, 5791, 11, 283, 3, 284, 3, 284, 3, 284, 7, 284, 5796, 10, 284, 12, 284, 14, 284, 5799, 11, 284, 3, 285, 3, 285, 3, 285, 7, 285, 5804, 10, 285, 12, 285, 14, 285, 5807, 11, 285, 3, 286, 3, 286, 3, 286, 7, 286, 5812, 10, 286, 12, 286, 14, 286, 5815, 11, 286, 3, 287, 3, 287, 3, 287, 7, 287, 5820, 10, 287, 12, 287, 14, 287, 5823, 11, 287, 3, 288, 3, 288, 5, 288, 5827, 10, 288, 3, 288, 3, 288, 3, 288, 3, 288, 3, 288, 5, 288, 5834, 10, 288, 5, 288, 5836, 10, 288, 3, 289, 3, 289, 3, 289, 5, 289, 5841, 10, 289, 3, 289, 5, 289, 5844, 10, 289, 3, 289, 3, 289, 3, 289, 5, 289, 5849, 10, 289, 3, 289, 5, 289, 5852, 10, 289, 3, 290, 3, 290, 5, 290, 5856, 10, 290, 3, 291, 3, 291, 3, 291, 3, 292, 3, 292, 3, 292, 3, 292, 3, 293, 3, 293, 3, 293, 3, 293, 3, 293, 5, 293, 5870, 10, 293, 3, 293, 3, 293, 3, 293, 3, 293, 3, 293, 5, 293, 5877, 10, 293, 3, 293, 3, 293, 3, 293, 5, 293, 5882, 10, 293, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 6, 294, 5914, 10, 294, 13, 294, 14, 294, 5915, 3, 294, 3, 294, 5, 294, 5920, 10, 294, 3, 294, 3, 294, 3, 294, 3, 294, 6, 294, 5926, 10, 294, 13, 294, 14, 294, 5927, 3, 294, 3, 294, 5, 294, 5932, 10, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 5, 294, 5941, 10, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 5, 294, 5949, 10, 294, 3, 294, 3, 294, 3, 294, 5, 294, 5954, 10, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 5, 294, 5962, 10, 294, 3, 294, 3, 294, 3, 294, 5, 294, 5967, 10, 294, 3, 294, 3, 294, 3, 294, 5, 294, 5972, 10, 294, 5, 294, 5974, 10, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 5, 294, 5983, 10, 294, 3, 294, 3, 294, 3, 294, 5, 294, 5988, 10, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 5, 294, 5996, 10, 294, 3, 294, 3, 294, 3, 294, 5, 294, 6001, 10, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 5, 294, 6009, 10, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 5, 294, 6017, 10, 294, 3, 294, 5, 294, 6020, 10, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 5, 294, 6030, 10, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 5, 294, 6041, 10, 294, 3, 295, 3, 295, 3, 295, 3, 295, 3, 295, 3, 296, 3, 296, 3, 296, 3, 296, 7, 296, 6052, 10, 296, 12, 296, 14, 296, 6055, 11, 296, 3, 296, 3, 296, 3, 296, 3, 296, 3, 296, 5, 296, 6062, 10, 296, 3, 297, 3, 297, 5, 297, 6066, 10, 297, 3, 298, 3, 298, 3, 298, 5, 298, 6071, 10, 298, 3, 298, 3, 298, 3, 298, 3, 298, 3, 298, 3, 298, 3, 298, 5, 298, 6080, 10, 298, 3, 298, 5, 298, 6083, 10, 298, 3, 298, 3, 298, 3, 298, 3, 298, 3, 298, 3, 298, 3, 298, 3, 298, 3, 298, 3, 298, 5, 298, 6095, 10, 298, 3, 298, 3, 298, 3, 298, 3, 298, 3, 298, 3, 298, 5, 298, 6103, 10, 298, 3, 298, 3, 298, 3, 298, 3, 298, 3, 298, 3, 298, 7, 298, 6111, 10, 298, 12, 298, 14, 298, 6114, 11, 298, 5, 298, 6116, 10, 298, 3, 298, 3, 298, 5, 298, 6120, 10, 298, 3, 298, 3, 298, 5, 298, 6124, 10, 298, 3, 299, 3, 299, 3, 299, 3, 299, 3, 299, 3, 299, 3, 299, 3, 299, 3, 299, 3, 299, 3, 299, 3, 299, 3, 299, 3, 299, 3, 299, 3, 299, 3, 299, 3, 299, 3, 299, 3, 299, 3, 299, 3, 299, 3, 299, 5, 299, 6149, 10, 299, 3, 300, 3, 300, 3, 300, 3, 300, 3, 300, 3, 301, 3, 301, 3, 301, 3, 301, 5, 301, 6160, 10, 301, 3, 301, 3, 301, 3, 301, 3, 301, 3, 301, 5, 301, 6167, 10, 301, 7, 301, 6169, 10, 301, 12, 301, 14, 301, 6172, 11, 301, 3, 302, 3, 302, 3, 302, 3, 302, 5, 302, 6178, 10, 302, 3, 303, 3, 303, 3, 303, 3, 303, 3, 303, 3, 303, 5, 303, 6186, 10, 303, 3, 303, 3, 303, 3, 303, 5, 303, 6191, 10, 303, 3, 303, 3, 303, 3, 303, 3, 303, 7, 303, 6197, 10, 303, 12, 303, 14, 303, 6200, 11, 303, 3, 304, 3, 304, 3, 304, 5, 304, 6205, 10, 304, 3, 304, 3, 304, 3, 304, 3, 304, 3, 304, 3, 304, 3, 304, 3, 304, 5, 304, 6215, 10, 304, 3, 304, 3, 304, 3, 304, 3, 304, 3, 304, 3, 304, 3, 304, 3, 304, 3, 304, 3, 304, 3, 304, 5, 304, 6228, 10, 304, 3, 304, 3, 304, 3, 304, 3, 304, 5, 304, 6234, 10, 304, 3, 304, 3, 304, 3, 304, 3, 304, 5, 304, 6240, 10, 304, 3, 304, 3, 304, 3, 304, 3, 304, 3, 304, 3, 304, 3, 304, 3, 304, 3, 304, 3, 304, 3, 304, 3, 304, 3, 304, 3, 304, 5, 304, 6256, 10, 304, 3, 304, 3, 304, 3, 304, 3, 304, 5, 304, 6262, 10, 304, 7, 304, 6264, 10, 304, 12, 304, 14, 304, 6267, 11, 304, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 7, 305, 6283, 10, 305, 12, 305, 14, 305, 6286, 11, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 6, 305, 6295, 10, 305, 13, 305, 14, 305, 6296, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 5, 305, 6314, 10, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 7, 305, 6327, 10, 305, 12, 305, 14, 305, 6330, 11, 305, 3, 306, 3, 306, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 5, 307, 6348, 10, 307, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 5, 308, 6357, 10, 308, 3, 309, 3, 309, 3, 309, 3, 309, 3, 309, 3, 309, 3, 309, 5, 309, 6366, 10, 309, 3, 310, 3, 310, 3, 311, 3, 311, 3, 312, 3, 312, 3, 313, 3, 313, 3, 314, 3, 314, 3, 315, 3, 315, 3, 316, 3, 316, 3, 317, 3, 317, 3, 317, 2, 5, 604, 606, 608, 318, 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, 2, 128, 4, 2, 37, 37, 137, 137, 4, 2, 453, 453, 458, 458, 5, 2, 64, 64, 144, 144, 165, 165, 5, 2, 40, 40, 322, 322, 385, 385, 6, 2, 40, 40, 354, 354, 452, 452, 522, 522, 4, 2, 443, 443, 1037, 1037, 4, 2, 72, 72, 129, 129, 4, 2, 15, 15, 274, 274, 5, 2, 42, 42, 78, 78, 168, 168, 4, 2, 367, 367, 476, 476, 5, 2, 435, 435, 560, 560, 567, 567, 4, 2, 329, 329, 390, 390, 4, 2, 292, 292, 404, 404, 4, 2, 290, 290, 376, 376, 5, 2, 73, 73, 77, 77, 114, 114, 5, 2, 40, 40, 339, 339, 365, 365, 5, 2, 40, 40, 335, 335, 684, 684, 4, 2, 548, 548, 581, 581, 4, 2, 74, 74, 84, 84, 5, 2, 369, 369, 467, 467, 524, 524, 4, 2, 64, 64, 144, 144, 3, 2, 296, 297, 3, 2, 1027, 1028, 4, 2, 1037, 1037, 1045, 1045, 5, 2, 364, 364, 399, 399, 450, 450, 4, 2, 40, 40, 1027, 1028, 8, 2, 40, 40, 309, 309, 311, 311, 339, 339, 365, 365, 489, 489, 3, 2, 1028, 1029, 4, 2, 7, 7, 49, 49, 4, 2, 389, 389, 582, 582, 4, 2, 13, 13, 159, 159, 4, 2, 176, 176, 585, 585, 4, 2, 20, 20, 132, 132, 5, 2, 41, 41, 70, 70, 97, 97, 4, 2, 97, 97, 313, 313, 4, 2, 304, 304, 361, 361, 4, 2, 93, 93, 514, 514, 4, 2, 41, 41, 97, 97, 4, 2, 8, 8, 47, 47, 4, 2, 172, 172, 578, 578, 6, 2, 364, 364, 399, 399, 449, 449, 479, 479, 4, 2, 364, 364, 449, 449, 4, 2, 14, 14, 43, 43, 5, 2, 61, 61, 72, 72, 170, 170, 4, 2, 33, 33, 76, 76, 4, 2, 89, 89, 135, 135, 4, 2, 8, 8, 47, 48, 3, 2, 537, 538, 4, 2, 372, 372, 520, 520, 4, 2, 210, 210, 407, 407, 7, 2, 98, 98, 412, 413, 415, 415, 419, 427, 491, 491, 6, 2, 409, 410, 414, 414, 416, 417, 492, 492, 5, 2, 99, 99, 408, 408, 418, 418, 4, 2, 392, 392, 539, 539, 4, 2, 533, 533, 535, 535, 4, 2, 284, 284, 540, 540, 4, 2, 83, 83, 506, 506, 4, 2, 49, 49, 327, 327, 5, 2, 30, 30, 56, 56, 163, 163, 5, 2, 119, 119, 156, 156, 370, 370, 4, 2, 95, 95, 166, 166, 4, 2, 300, 300, 525, 525, 4, 2, 38, 38, 580, 580, 4, 2, 105, 105, 404, 404, 4, 2, 357, 357, 485, 485, 6, 2, 190, 190, 192, 192, 198, 198, 549, 549, 4, 2, 996, 996, 1013, 1013, 4, 2, 285, 285, 493, 493, 4, 2, 63, 63, 73, 73, 8, 2, 119, 119, 156, 156, 161, 161, 350, 350, 370, 370, 580, 580, 4, 2, 442, 442, 545, 545, 4, 2, 347, 347, 584, 584, 4, 2, 119, 119, 370, 370, 5, 2, 74, 74, 85, 85, 383, 383, 5, 2, 372, 372, 404, 404, 520, 520, 4, 2, 545, 545, 579, 579, 4, 2, 314, 314, 484, 484, 8, 2, 210, 210, 344, 344, 346, 346, 371, 371, 490, 490, 526, 526, 4, 2, 43, 44, 57, 57, 5, 2, 357, 357, 469, 469, 776, 776, 4, 2, 396, 396, 562, 562, 12, 2, 299, 299, 306, 306, 316, 318, 324, 324, 436, 436, 444, 444, 550, 550, 557, 557, 728, 728, 894, 894, 4, 2, 34, 34, 153, 153, 4, 2, 107, 107, 886, 886, 13, 2, 299, 299, 306, 306, 316, 318, 324, 324, 436, 436, 444, 444, 507, 507, 550, 550, 557, 557, 728, 728, 894, 894, 5, 2, 1037, 1037, 1045, 1045, 1047, 1047, 3, 2, 1048, 1049, 5, 2, 679, 690, 1037, 1037, 1045, 1046, 4, 2, 1027, 1029, 1038, 1038, 4, 2, 58, 58, 162, 162, 4, 2, 106, 106, 1041, 1041, 7, 2, 24, 24, 206, 208, 215, 215, 217, 220, 447, 447, 4, 2, 24, 24, 207, 207, 4, 2, 24, 24, 206, 206, 3, 2, 180, 191, 4, 2, 167, 167, 523, 523, 4, 2, 195, 200, 365, 365, 7, 2, 201, 201, 212, 214, 216, 216, 223, 223, 288, 289, 5, 2, 202, 205, 210, 211, 286, 286, 4, 2, 140, 140, 221, 221, 4, 2, 396, 396, 695, 703, 4, 2, 210, 210, 447, 447, 5, 2, 201, 202, 204, 204, 396, 396, 4, 2, 255, 256, 262, 262, 4, 2, 35, 35, 253, 256, 3, 2, 265, 266, 5, 2, 17, 17, 87, 87, 160, 160, 4, 2, 206, 206, 210, 210, 4, 2, 201, 202, 204, 204, 5, 2, 14, 14, 43, 43, 884, 884, 5, 2, 237, 237, 243, 244, 249, 249, 5, 2, 238, 240, 245, 248, 250, 252, 4, 2, 456, 456, 470, 470, 4, 2, 104, 104, 1016, 1016, 5, 2, 58, 58, 162, 162, 571, 571, 4, 2, 125, 125, 136, 136, 5, 2, 8, 8, 277, 277, 529, 529, 6, 2, 104, 104, 1008, 1008, 1010, 1010, 1016, 1017, 3, 2, 1005, 1012, 3, 2, 639, 678, 3, 2, 691, 694, 3, 2, 604, 612, 3, 2, 596, 603, 5, 2, 201, 205, 218, 218, 221, 221, 16, 2, 34, 34, 46, 46, 107, 107, 153, 153, 223, 223, 272, 388, 390, 547, 549, 580, 583, 590, 595, 595, 614, 638, 684, 684, 728, 728, 894, 894, 18, 2, 37, 37, 89, 89, 135, 135, 201, 203, 205, 205, 235, 236, 241, 241, 264, 264, 389, 389, 582, 582, 596, 603, 632, 632, 695, 695, 698, 727, 729, 893, 895, 995, 2, 7505, 2, 634, 3, 2, 2, 2, 4, 638, 3, 2, 2, 2, 6, 655, 3, 2, 2, 2, 8, 675, 3, 2, 2, 2, 10, 677, 3, 2, 2, 2, 12, 714, 3, 2, 2, 2, 14, 726, 3, 2, 2, 2, 16, 737, 3, 2, 2, 2, 18, 754, 3, 2, 2, 2, 20, 759, 3, 2, 2, 2, 22, 771, 3, 2, 2, 2, 24, 798, 3, 2, 2, 2, 26, 807, 3, 2, 2, 2, 28, 809, 3, 2, 2, 2, 30, 821, 3, 2, 2, 2, 32, 851, 3, 2, 2, 2, 34, 887, 3, 2, 2, 2, 36, 938, 3, 2, 2, 2, 38, 964, 3, 2, 2, 2, 40, 994, 3, 2, 2, 2, 42, 1091, 3, 2, 2, 2, 44, 1093, 3, 2, 2, 2, 46, 1111, 3, 2, 2, 2, 48, 1172, 3, 2, 2, 2, 50, 1191, 3, 2, 2, 2, 52, 1250, 3, 2, 2, 2, 54, 1252, 3, 2, 2, 2, 56, 1296, 3, 2, 2, 2, 58, 1302, 3, 2, 2, 2, 60, 1304, 3, 2, 2, 2, 62, 1325, 3, 2, 2, 2, 64, 1332, 3, 2, 2, 2, 66, 1334, 3, 2, 2, 2, 68, 1350, 3, 2, 2, 2, 70, 1353, 3, 2, 2, 2, 72, 1358, 3, 2, 2, 2, 74, 1384, 3, 2, 2, 2, 76, 1400, 3, 2, 2, 2, 78, 1402, 3, 2, 2, 2, 80, 1418, 3, 2, 2, 2, 82, 1420, 3, 2, 2, 2, 84, 1478, 3, 2, 2, 2, 86, 1549, 3, 2, 2, 2, 88, 1551, 3, 2, 2, 2, 90, 1579, 3, 2, 2, 2, 92, 1587, 3, 2, 2, 2, 94, 1617, 3, 2, 2, 2, 96, 1763, 3, 2, 2, 2, 98, 1765, 3, 2, 2, 2, 100, 1768, 3, 2, 2, 2, 102, 1842, 3, 2, 2, 2, 104, 1865, 3, 2, 2, 2, 106, 1998, 3, 2, 2, 2, 108, 2003, 3, 2, 2, 2, 110, 2005, 3, 2, 2, 2, 112, 2015, 3, 2, 2, 2, 114, 2068, 3, 2, 2, 2, 116, 2088, 3, 2, 2, 2, 118, 2090, 3, 2, 2, 2, 120, 2125, 3, 2, 2, 2, 122, 2134, 3, 2, 2, 2, 124, 2141, 3, 2, 2, 2, 126, 2164, 3, 2, 2, 2, 128, 2173, 3, 2, 2, 2, 130, 2188, 3, 2, 2, 2, 132, 2210, 3, 2, 2, 2, 134, 2230, 3, 2, 2, 2, 136, 2625, 3, 2, 2, 2, 138, 2627, 3, 2, 2, 2, 140, 2634, 3, 2, 2, 2, 142, 2641, 3, 2, 2, 2, 144, 2664, 3, 2, 2, 2, 146, 2672, 3, 2, 2, 2, 148, 2679, 3, 2, 2, 2, 150, 2686, 3, 2, 2, 2, 152, 2693, 3, 2, 2, 2, 154, 2705, 3, 2, 2, 2, 156, 2715, 3, 2, 2, 2, 158, 2722, 3, 2, 2, 2, 160, 2738, 3, 2, 2, 2, 162, 2748, 3, 2, 2, 2, 164, 2752, 3, 2, 2, 2, 166, 2758, 3, 2, 2, 2, 168, 2770, 3, 2, 2, 2, 170, 2772, 3, 2, 2, 2, 172, 2779, 3, 2, 2, 2, 174, 2781, 3, 2, 2, 2, 176, 2832, 3, 2, 2, 2, 178, 2906, 3, 2, 2, 2, 180, 2965, 3, 2, 2, 2, 182, 3053, 3, 2, 2, 2, 184, 3057, 3, 2, 2, 2, 186, 3077, 3, 2, 2, 2, 188, 3079, 3, 2, 2, 2, 190, 3087, 3, 2, 2, 2, 192, 3095, 3, 2, 2, 2, 194, 3097, 3, 2, 2, 2, 196, 3127, 3, 2, 2, 2, 198, 3182, 3, 2, 2, 2, 200, 3191, 3, 2, 2, 2, 202, 3211, 3, 2, 2, 2, 204, 3223, 3, 2, 2, 2, 206, 3227, 3, 2, 2, 2, 208, 3260, 3, 2, 2, 2, 210, 3281, 3, 2, 2, 2, 212, 3291, 3, 2, 2, 2, 214, 3295, 3, 2, 2, 2, 216, 3320, 3, 2, 2, 2, 218, 3362, 3, 2, 2, 2, 220, 3364, 3, 2, 2, 2, 222, 3379, 3, 2, 2, 2, 224, 3425, 3, 2, 2, 2, 226, 3435, 3, 2, 2, 2, 228, 3445, 3, 2, 2, 2, 230, 3487, 3, 2, 2, 2, 232, 3489, 3, 2, 2, 2, 234, 3506, 3, 2, 2, 2, 236, 3512, 3, 2, 2, 2, 238, 3528, 3, 2, 2, 2, 240, 3532, 3, 2, 2, 2, 242, 3570, 3, 2, 2, 2, 244, 3608, 3, 2, 2, 2, 246, 3622, 3, 2, 2, 2, 248, 3630, 3, 2, 2, 2, 250, 3632, 3, 2, 2, 2, 252, 3658, 3, 2, 2, 2, 254, 3662, 3, 2, 2, 2, 256, 3677, 3, 2, 2, 2, 258, 3679, 3, 2, 2, 2, 260, 3691, 3, 2, 2, 2, 262, 3695, 3, 2, 2, 2, 264, 3712, 3, 2, 2, 2, 266, 3729, 3, 2, 2, 2, 268, 3732, 3, 2, 2, 2, 270, 3742, 3, 2, 2, 2, 272, 3746, 3, 2, 2, 2, 274, 3756, 3, 2, 2, 2, 276, 3759, 3, 2, 2, 2, 278, 3764, 3, 2, 2, 2, 280, 3784, 3, 2, 2, 2, 282, 3786, 3, 2, 2, 2, 284, 3803, 3, 2, 2, 2, 286, 3812, 3, 2, 2, 2, 288, 3821, 3, 2, 2, 2, 290, 3823, 3, 2, 2, 2, 292, 3837, 3, 2, 2, 2, 294, 3848, 3, 2, 2, 2, 296, 3857, 3, 2, 2, 2, 298, 3860, 3, 2, 2, 2, 300, 3868, 3, 2, 2, 2, 302, 3893, 3, 2, 2, 2, 304, 3905, 3, 2, 2, 2, 306, 3908, 3, 2, 2, 2, 308, 3940, 3, 2, 2, 2, 310, 3942, 3, 2, 2, 2, 312, 3944, 3, 2, 2, 2, 314, 3946, 3, 2, 2, 2, 316, 3948, 3, 2, 2, 2, 318, 4001, 3, 2, 2, 2, 320, 4003, 3, 2, 2, 2, 322, 4009, 3, 2, 2, 2, 324, 4029, 3, 2, 2, 2, 326, 4043, 3, 2, 2, 2, 328, 4054, 3, 2, 2, 2, 330, 4056, 3, 2, 2, 2, 332, 4062, 3, 2, 2, 2, 334, 4072, 3, 2, 2, 2, 336, 4076, 3, 2, 2, 2, 338, 4083, 3, 2, 2, 2, 340, 4087, 3, 2, 2, 2, 342, 4093, 3, 2, 2, 2, 344, 4100, 3, 2, 2, 2, 346, 4106, 3, 2, 2, 2, 348, 4112, 3, 2, 2, 2, 350, 4117, 3, 2, 2, 2, 352, 4164, 3, 2, 2, 2, 354, 4185, 3, 2, 2, 2, 356, 4210, 3, 2, 2, 2, 358, 4213, 3, 2, 2, 2, 360, 4219, 3, 2, 2, 2, 362, 4235, 3, 2, 2, 2, 364, 4250, 3, 2, 2, 2, 366, 4256, 3, 2, 2, 2, 368, 4286, 3, 2, 2, 2, 370, 4288, 3, 2, 2, 2, 372, 4295, 3, 2, 2, 2, 374, 4307, 3, 2, 2, 2, 376, 4313, 3, 2, 2, 2, 378, 4338, 3, 2, 2, 2, 380, 4342, 3, 2, 2, 2, 382, 4346, 3, 2, 2, 2, 384, 4357, 3, 2, 2, 2, 386, 4419, 3, 2, 2, 2, 388, 4475, 3, 2, 2, 2, 390, 4477, 3, 2, 2, 2, 392, 4490, 3, 2, 2, 2, 394, 4540, 3, 2, 2, 2, 396, 4558, 3, 2, 2, 2, 398, 4608, 3, 2, 2, 2, 400, 4610, 3, 2, 2, 2, 402, 4623, 3, 2, 2, 2, 404, 4634, 3, 2, 2, 2, 406, 4661, 3, 2, 2, 2, 408, 4671, 3, 2, 2, 2, 410, 4681, 3, 2, 2, 2, 412, 4683, 3, 2, 2, 2, 414, 4693, 3, 2, 2, 2, 416, 4696, 3, 2, 2, 2, 418, 4774, 3, 2, 2, 2, 420, 4792, 3, 2, 2, 2, 422, 4794, 3, 2, 2, 2, 424, 4798, 3, 2, 2, 2, 426, 4805, 3, 2, 2, 2, 428, 4814, 3, 2, 2, 2, 430, 4820, 3, 2, 2, 2, 432, 4827, 3, 2, 2, 2, 434, 4849, 3, 2, 2, 2, 436, 4851, 3, 2, 2, 2, 438, 4862, 3, 2, 2, 2, 440, 4868, 3, 2, 2, 2, 442, 4923, 3, 2, 2, 2, 444, 5076, 3, 2, 2, 2, 446, 5088, 3, 2, 2, 2, 448, 5103, 3, 2, 2, 2, 450, 5109, 3, 2, 2, 2, 452, 5128, 3, 2, 2, 2, 454, 5138, 3, 2, 2, 2, 456, 5152, 3, 2, 2, 2, 458, 5154, 3, 2, 2, 2, 460, 5157, 3, 2, 2, 2, 462, 5179, 3, 2, 2, 2, 464, 5191, 3, 2, 2, 2, 466, 5200, 3, 2, 2, 2, 468, 5212, 3, 2, 2, 2, 470, 5216, 3, 2, 2, 2, 472, 5218, 3, 2, 2, 2, 474, 5258, 3, 2, 2, 2, 476, 5265, 3, 2, 2, 2, 478, 5267, 3, 2, 2, 2, 480, 5290, 3, 2, 2, 2, 482, 5296, 3, 2, 2, 2, 484, 5304, 3, 2, 2, 2, 486, 5307, 3, 2, 2, 2, 488, 5310, 3, 2, 2, 2, 490, 5331, 3, 2, 2, 2, 492, 5352, 3, 2, 2, 2, 494, 5358, 3, 2, 2, 2, 496, 5396, 3, 2, 2, 2, 498, 5408, 3, 2, 2, 2, 500, 5410, 3, 2, 2, 2, 502, 5416, 3, 2, 2, 2, 504, 5418, 3, 2, 2, 2, 506, 5427, 3, 2, 2, 2, 508, 5438, 3, 2, 2, 2, 510, 5440, 3, 2, 2, 2, 512, 5446, 3, 2, 2, 2, 514, 5450, 3, 2, 2, 2, 516, 5452, 3, 2, 2, 2, 518, 5454, 3, 2, 2, 2, 520, 5472, 3, 2, 2, 2, 522, 5488, 3, 2, 2, 2, 524, 5492, 3, 2, 2, 2, 526, 5497, 3, 2, 2, 2, 528, 5508, 3, 2, 2, 2, 530, 5513, 3, 2, 2, 2, 532, 5515, 3, 2, 2, 2, 534, 5519, 3, 2, 2, 2, 536, 5544, 3, 2, 2, 2, 538, 5546, 3, 2, 2, 2, 540, 5549, 3, 2, 2, 2, 542, 5554, 3, 2, 2, 2, 544, 5570, 3, 2, 2, 2, 546, 5699, 3, 2, 2, 2, 548, 5701, 3, 2, 2, 2, 550, 5737, 3, 2, 2, 2, 552, 5739, 3, 2, 2, 2, 554, 5743, 3, 2, 2, 2, 556, 5749, 3, 2, 2, 2, 558, 5757, 3, 2, 2, 2, 560, 5765, 3, 2, 2, 2, 562, 5773, 3, 2, 2, 2, 564, 5784, 3, 2, 2, 2, 566, 5792, 3, 2, 2, 2, 568, 5800, 3, 2, 2, 2, 570, 5808, 3, 2, 2, 2, 572, 5816, 3, 2, 2, 2, 574, 5835, 3, 2, 2, 2, 576, 5851, 3, 2, 2, 2, 578, 5855, 3, 2, 2, 2, 580, 5857, 3, 2, 2, 2, 582, 5860, 3, 2, 2, 2, 584, 5881, 3, 2, 2, 2, 586, 6040, 3, 2, 2, 2, 588, 6042, 3, 2, 2, 2, 590, 6061, 3, 2, 2, 2, 592, 6063, 3, 2, 2, 2, 594, 6123, 3, 2, 2, 2, 596, 6148, 3, 2, 2, 2, 598, 6150, 3, 2, 2, 2, 600, 6159, 3, 2, 2, 2, 602, 6177, 3, 2, 2, 2, 604, 6190, 3, 2, 2, 2, 606, 6201, 3, 2, 2, 2, 608, 6313, 3, 2, 2, 2, 610, 6331, 3, 2, 2, 2, 612, 6347, 3, 2, 2, 2, 614, 6356, 3, 2, 2, 2, 616, 6365, 3, 2, 2, 2, 618, 6367, 3, 2, 2, 2, 620, 6369, 3, 2, 2, 2, 622, 6371, 3, 2, 2, 2, 624, 6373, 3, 2, 2, 2, 626, 6375, 3, 2, 2, 2, 628, 6377, 3, 2, 2, 2, 630, 6379, 3, 2, 2, 2, 632, 6381, 3, 2, 2, 2, 634, 635, 5, 4, 3, 2, 635, 636, 7, 2, 2, 3, 636, 3, 3, 2, 2, 2, 637, 639, 5, 6, 4, 2, 638, 637, 3, 2, 2, 2, 638, 639, 3, 2, 2, 2, 639, 641, 3, 2, 2, 2, 640, 642, 7, 1009, 2, 2, 641, 640, 3, 2, 2, 2, 641, 642, 3, 2, 2, 2, 642, 643, 3, 2, 2, 2, 643, 644, 7, 2, 2, 3, 644, 5, 3, 2, 2, 2, 645, 647, 5, 8, 5, 2, 646, 648, 7, 1009, 2, 2, 647, 646, 3, 2, 2, 2, 647, 648, 3, 2, 2, 2, 648, 650, 3, 2, 2, 2, 649, 651, 7, 1025, 2, 2, 650, 649, 3, 2, 2, 2, 650, 651, 3, 2, 2, 2, 651, 654, 3, 2, 2, 2, 652, 654, 5, 10, 6, 2, 653, 645, 3, 2, 2, 2, 653, 652, 3, 2, 2, 2, 654, 657, 3, 2, 2, 2, 655, 653, 3, 2, 2, 2, 655, 656, 3, 2, 2, 2, 656, 666, 3, 2, 2, 2, 657, 655, 3, 2, 2, 2, 658, 663, 5, 8, 5, 2, 659, 661, 7, 1009, 2, 2, 660, 659, 3, 2, 2, 2, 660, 661, 3, 2, 2, 2, 661, 662, 3, 2, 2, 2, 662, 664, 7, 1025, 2, 2, 663, 660, 3, 2, 2, 2, 663, 664, 3, 2, 2, 2, 664, 667, 3, 2, 2, 2, 665, 667, 5, 10, 6, 2, 666, 658, 3, 2, 2, 2, 666, 665, 3, 2, 2, 2, 667, 7, 3, 2, 2, 2, 668, 676, 5, 12, 7, 2, 669, 676, 5, 14, 8, 2, 670, 676, 5, 16, 9, 2, 671, 676, 5, 18, 10, 2, 672, 676, 5, 20, 11, 2, 673, 676, 5, 24, 13, 2, 674, 676, 5, 26, 14, 2, 675, 668, 3, 2, 2, 2, 675, 669, 3, 2, 2, 2, 675, 670, 3, 2, 2, 2, 675, 671, 3, 2, 2, 2, 675, 672, 3, 2, 2, 2, 675, 673, 3, 2, 2, 2, 675, 674, 3, 2, 2, 2, 676, 9, 3, 2, 2, 2, 677, 678, 7, 1025, 2, 2, 678, 11, 3, 2, 2, 2, 679, 715, 5, 28, 15, 2, 680, 715, 5, 30, 16, 2, 681, 715, 5, 32, 17, 2, 682, 715, 5, 34, 18, 2, 683, 715, 5, 36, 19, 2, 684, 715, 5, 38, 20, 2, 685, 715, 5, 40, 21, 2, 686, 715, 5, 42, 22, 2, 687, 715, 5, 44, 23, 2, 688, 715, 5, 46, 24, 2, 689, 715, 5, 48, 25, 2, 690, 715, 5, 50, 26, 2, 691, 715, 5, 116, 59, 2, 692, 715, 5, 118, 60, 2, 693, 715, 5, 120, 61, 2, 694, 715, 5, 122, 62, 2, 695, 715, 5, 124, 63, 2, 696, 715, 5, 126, 64, 2, 697, 715, 5, 128, 65, 2, 698, 715, 5, 130, 66, 2, 699, 715, 5, 132, 67, 2, 700, 715, 5, 134, 68, 2, 701, 715, 5, 138, 70, 2, 702, 715, 5, 140, 71, 2, 703, 715, 5, 142, 72, 2, 704, 715, 5, 144, 73, 2, 705, 715, 5, 146, 74, 2, 706, 715, 5, 148, 75, 2, 707, 715, 5, 150, 76, 2, 708, 715, 5, 152, 77, 2, 709, 715, 5, 154, 78, 2, 710, 715, 5, 156, 79, 2, 711, 715, 5, 158, 80, 2, 712, 715, 5, 160, 81, 2, 713, 715, 5, 164, 83, 2, 714, 679, 3, 2, 2, 2, 714, 680, 3, 2, 2, 2, 714, 681, 3, 2, 2, 2, 714, 682, 3, 2, 2, 2, 714, 683, 3, 2, 2, 2, 714, 684, 3, 2, 2, 2, 714, 685, 3, 2, 2, 2, 714, 686, 3, 2, 2, 2, 714, 687, 3, 2, 2, 2, 714, 688, 3, 2, 2, 2, 714, 689, 3, 2, 2, 2, 714, 690, 3, 2, 2, 2, 714, 691, 3, 2, 2, 2, 714, 692, 3, 2, 2, 2, 714, 693, 3, 2, 2, 2, 714, 694, 3, 2, 2, 2, 714, 695, 3, 2, 2, 2, 714, 696, 3, 2, 2, 2, 714, 697, 3, 2, 2, 2, 714, 698, 3, 2, 2, 2, 714, 699, 3, 2, 2, 2, 714, 700, 3, 2, 2, 2, 714, 701, 3, 2, 2, 2, 714, 702, 3, 2, 2, 2, 714, 703, 3, 2, 2, 2, 714, 704, 3, 2, 2, 2, 714, 705, 3, 2, 2, 2, 714, 706, 3, 2, 2, 2, 714, 707, 3, 2, 2, 2, 714, 708, 3, 2, 2, 2, 714, 709, 3, 2, 2, 2, 714, 710, 3, 2, 2, 2, 714, 711, 3, 2, 2, 2, 714, 712, 3, 2, 2, 2, 714, 713, 3, 2, 2, 2, 715, 13, 3, 2, 2, 2, 716, 727, 5, 182, 92, 2, 717, 727, 5, 174, 88, 2, 718, 727, 5, 184, 93, 2, 719, 727, 5, 168, 85, 2, 720, 727, 5, 180, 91, 2, 721, 727, 5, 166, 84, 2, 722, 727, 5, 176, 89, 2, 723, 727, 5, 178, 90, 2, 724, 727, 5, 170, 86, 2, 725, 727, 5, 172, 87, 2, 726, 716, 3, 2, 2, 2, 726, 717, 3, 2, 2, 2, 726, 718, 3, 2, 2, 2, 726, 719, 3, 2, 2, 2, 726, 720, 3, 2, 2, 2, 726, 721, 3, 2, 2, 2, 726, 722, 3, 2, 2, 2, 726, 723, 3, 2, 2, 2, 726, 724, 3, 2, 2, 2, 726, 725, 3, 2, 2, 2, 727, 15, 3, 2, 2, 2, 728, 738, 5, 258, 130, 2, 729, 738, 5, 260, 131, 2, 730, 738, 5, 262, 132, 2, 731, 738, 5, 264, 133, 2, 732, 738, 5, 266, 134, 2, 733, 738, 5, 268, 135, 2, 734, 738, 5, 270, 136, 2, 735, 738, 5, 272, 137, 2, 736, 738, 5, 274, 138, 2, 737, 728, 3, 2, 2, 2, 737, 729, 3, 2, 2, 2, 737, 730, 3, 2, 2, 2, 737, 731, 3, 2, 2, 2, 737, 732, 3, 2, 2, 2, 737, 733, 3, 2, 2, 2, 737, 734, 3, 2, 2, 2, 737, 735, 3, 2, 2, 2, 737, 736, 3, 2, 2, 2, 738, 17, 3, 2, 2, 2, 739, 755, 5, 290, 146, 2, 740, 755, 5, 292, 147, 2, 741, 755, 5, 294, 148, 2, 742, 755, 5, 296, 149, 2, 743, 755, 5, 298, 150, 2, 744, 755, 5, 300, 151, 2, 745, 755, 5, 302, 152, 2, 746, 755, 5, 304, 153, 2, 747, 755, 5, 306, 154, 2, 748, 755, 5, 330, 166, 2, 749, 755, 5, 332, 167, 2, 750, 755, 5, 334, 168, 2, 751, 755, 5, 336, 169, 2, 752, 755, 5, 338, 170, 2, 753, 755, 5, 340, 171, 2, 754, 739, 3, 2, 2, 2, 754, 740, 3, 2, 2, 2, 754, 741, 3, 2, 2, 2, 754, 742, 3, 2, 2, 2, 754, 743, 3, 2, 2, 2, 754, 744, 3, 2, 2, 2, 754, 745, 3, 2, 2, 2, 754, 746, 3, 2, 2, 2, 754, 747, 3, 2, 2, 2, 754, 748, 3, 2, 2, 2, 754, 749, 3, 2, 2, 2, 754, 750, 3, 2, 2, 2, 754, 751, 3, 2, 2, 2, 754, 752, 3, 2, 2, 2, 754, 753, 3, 2, 2, 2, 755, 19, 3, 2, 2, 2, 756, 760, 5, 342, 172, 2, 757, 760, 5, 344, 173, 2, 758, 760, 5, 346, 174, 2, 759, 756, 3, 2, 2, 2, 759, 757, 3, 2, 2, 2, 759, 758, 3, 2, 2, 2, 760, 21, 3, 2, 2, 2, 761, 772, 5, 350, 176, 2, 762, 772, 5, 352, 177, 2, 763, 772, 5, 354, 178, 2, 764, 772, 5, 358, 180, 2, 765, 772, 5, 360, 181, 2, 766, 772, 5, 362, 182, 2, 767, 772, 5, 366, 184, 2, 768, 772, 5, 356, 179, 2, 769, 772, 5, 364, 183, 2, 770, 772, 5, 368, 185, 2, 771, 761, 3, 2, 2, 2, 771, 762, 3, 2, 2, 2, 771, 763, 3, 2, 2, 2, 771, 764, 3, 2, 2, 2, 771, 765, 3, 2, 2, 2, 771, 766, 3, 2, 2, 2, 771, 767, 3, 2, 2, 2, 771, 768, 3, 2, 2, 2, 771, 769, 3, 2, 2, 2, 771, 770, 3, 2, 2, 2, 772, 23, 3, 2, 2, 2, 773, 799, 5, 386, 194, 2, 774, 799, 5, 388, 195, 2, 775, 799, 5, 390, 196, 2, 776, 799, 5, 392, 197, 2, 777, 799, 5, 394, 198, 2, 778, 799, 5, 396, 199, 2, 779, 799, 5, 398, 200, 2, 780, 799, 5, 400, 201, 2, 781, 799, 5, 424, 213, 2, 782, 799, 5, 426, 214, 2, 783, 799, 5, 428, 215, 2, 784, 799, 5, 430, 216, 2, 785, 799, 5, 432, 217, 2, 786, 799, 5, 436, 219, 2, 787, 799, 5, 438, 220, 2, 788, 799, 5, 440, 221, 2, 789, 799, 5, 442, 222, 2, 790, 799, 5, 444, 223, 2, 791, 799, 5, 458, 230, 2, 792, 799, 5, 460, 231, 2, 793, 799, 5, 462, 232, 2, 794, 799, 5, 464, 233, 2, 795, 799, 5, 466, 234, 2, 796, 799, 5, 468, 235, 2, 797, 799, 5, 470, 236, 2, 798, 773, 3, 2, 2, 2, 798, 774, 3, 2, 2, 2, 798, 775, 3, 2, 2, 2, 798, 776, 3, 2, 2, 2, 798, 777, 3, 2, 2, 2, 798, 778, 3, 2, 2, 2, 798, 779, 3, 2, 2, 2, 798, 780, 3, 2, 2, 2, 798, 781, 3, 2, 2, 2, 798, 782, 3, 2, 2, 2, 798, 783, 3, 2, 2, 2, 798, 784, 3, 2, 2, 2, 798, 785, 3, 2, 2, 2, 798, 786, 3, 2, 2, 2, 798, 787, 3, 2, 2, 2, 798, 788, 3, 2, 2, 2, 798, 789, 3, 2, 2, 2, 798, 790, 3, 2, 2, 2, 798, 791, 3, 2, 2, 2, 798, 792, 3, 2, 2, 2, 798, 793, 3, 2, 2, 2, 798, 794, 3, 2, 2, 2, 798, 795, 3, 2, 2, 2, 798, 796, 3, 2, 2, 2, 798, 797, 3, 2, 2, 2, 799, 25, 3, 2, 2, 2, 800, 808, 5, 480, 241, 2, 801, 808, 5, 482, 242, 2, 802, 808, 5, 484, 243, 2, 803, 808, 5, 486, 244, 2, 804, 808, 5, 488, 245, 2, 805, 808, 5, 490, 246, 2, 806, 808, 5, 494, 248, 2, 807, 800, 3, 2, 2, 2, 807, 801, 3, 2, 2, 2, 807, 802, 3, 2, 2, 2, 807, 803, 3, 2, 2, 2, 807, 804, 3, 2, 2, 2, 807, 805, 3, 2, 2, 2, 807, 806, 3, 2, 2, 2, 808, 27, 3, 2, 2, 2, 809, 810, 7, 32, 2, 2, 810, 812, 9, 2, 2, 2, 811, 813, 5, 582, 292, 2, 812, 811, 3, 2, 2, 2, 812, 813, 3, 2, 2, 2, 813, 814, 3, 2, 2, 2, 814, 818, 5, 526, 264, 2, 815, 817, 5, 52, 27, 2, 816, 815, 3, 2, 2, 2, 817, 820, 3, 2, 2, 2, 818, 816, 3, 2, 2, 2, 818, 819, 3, 2, 2, 2, 819, 29, 3, 2, 2, 2, 820, 818, 3, 2, 2, 2, 821, 823, 7, 32, 2, 2, 822, 824, 5, 54, 28, 2, 823, 822, 3, 2, 2, 2, 823, 824, 3, 2, 2, 2, 824, 825, 3, 2, 2, 2, 825, 827, 7, 350, 2, 2, 826, 828, 5, 582, 292, 2, 827, 826, 3, 2, 2, 2, 827, 828, 3, 2, 2, 2, 828, 829, 3, 2, 2, 2, 829, 830, 5, 500, 251, 2, 830, 831, 7, 108, 2, 2, 831, 832, 7, 517, 2, 2, 832, 839, 5, 56, 29, 2, 833, 834, 7, 108, 2, 2, 834, 836, 7, 310, 2, 2, 835, 837, 7, 104, 2, 2, 836, 835, 3, 2, 2, 2, 836, 837, 3, 2, 2, 2, 837, 838, 3, 2, 2, 2, 838, 840, 7, 478, 2, 2, 839, 833, 3, 2, 2, 2, 839, 840, 3, 2, 2, 2, 840, 842, 3, 2, 2, 2, 841, 843, 5, 64, 33, 2, 842, 841, 3, 2, 2, 2, 842, 843, 3, 2, 2, 2, 843, 846, 3, 2, 2, 2, 844, 845, 7, 307, 2, 2, 845, 847, 7, 1037, 2, 2, 846, 844, 3, 2, 2, 2, 846, 847, 3, 2, 2, 2, 847, 848, 3, 2, 2, 2, 848, 849, 7, 336, 2, 2, 849, 850, 5, 348, 175, 2, 850, 31, 3, 2, 2, 2, 851, 853, 7, 32, 2, 2, 852, 854, 9, 3, 2, 2, 853, 852, 3, 2, 2, 2, 853, 854, 3, 2, 2, 2, 854, 856, 3, 2, 2, 2, 855, 857, 9, 4, 2, 2, 856, 855, 3, 2, 2, 2, 856, 857, 3, 2, 2, 2, 857, 858, 3, 2, 2, 2, 858, 859, 7, 74, 2, 2, 859, 861, 5, 526, 264, 2, 860, 862, 5, 66, 34, 2, 861, 860, 3, 2, 2, 2, 861, 862, 3, 2, 2, 2, 862, 863, 3, 2, 2, 2, 863, 864, 7, 108, 2, 2, 864, 865, 5, 502, 252, 2, 865, 869, 5, 562, 282, 2, 866, 868, 5, 68, 35, 2, 867, 866, 3, 2, 2, 2, 868, 871, 3, 2, 2, 2, 869, 867, 3, 2, 2, 2, 869, 870, 3, 2, 2, 2, 870, 884, 3, 2, 2, 2, 871, 869, 3, 2, 2, 2, 872, 874, 7, 276, 2, 2, 873, 875, 7, 1013, 2, 2, 874, 873, 3, 2, 2, 2, 874, 875, 3, 2, 2, 2, 875, 876, 3, 2, 2, 2, 876, 883, 9, 5, 2, 2, 877, 879, 7, 95, 2, 2, 878, 880, 7, 1013, 2, 2, 879, 878, 3, 2, 2, 2, 879, 880, 3, 2, 2, 2, 880, 881, 3, 2, 2, 2, 881, 883, 9, 6, 2, 2, 882, 872, 3, 2, 2, 2, 882, 877, 3, 2, 2, 2, 883, 886, 3, 2, 2, 2, 884, 882, 3, 2, 2, 2, 884, 885, 3, 2, 2, 2, 885, 33, 3, 2, 2, 2, 886, 884, 3, 2, 2, 2, 887, 888, 7, 32, 2, 2, 888, 889, 7, 405, 2, 2, 889, 890, 7, 68, 2, 2, 890, 891, 5, 526, 264, 2, 891, 892, 7, 7, 2, 2, 892, 893, 7, 568, 2, 2, 893, 899, 7, 1037, 2, 2, 894, 896, 7, 384, 2, 2, 895, 897, 7, 1013, 2, 2, 896, 895, 3, 2, 2, 2, 896, 897, 3, 2, 2, 2, 897, 898, 3, 2, 2, 2, 898, 900, 5, 534, 268, 2, 899, 894, 3, 2, 2, 2, 899, 900, 3, 2, 2, 2, 900, 906, 3, 2, 2, 2, 901, 903, 7, 569, 2, 2, 902, 904, 7, 1013, 2, 2, 903, 902, 3, 2, 2, 2, 903, 904, 3, 2, 2, 2, 904, 905, 3, 2, 2, 2, 905, 907, 5, 534, 268, 2, 906, 901, 3, 2, 2, 2, 906, 907, 3, 2, 2, 2, 907, 913, 3, 2, 2, 2, 908, 910, 7, 488, 2, 2, 909, 911, 7, 1013, 2, 2, 910, 909, 3, 2, 2, 2, 910, 911, 3, 2, 2, 2, 911, 912, 3, 2, 2, 2, 912, 914, 5, 534, 268, 2, 913, 908, 3, 2, 2, 2, 913, 914, 3, 2, 2, 2, 914, 920, 3, 2, 2, 2, 915, 917, 7, 451, 2, 2, 916, 918, 7, 1013, 2, 2, 917, 916, 3, 2, 2, 2, 917, 918, 3, 2, 2, 2, 918, 919, 3, 2, 2, 2, 919, 921, 5, 526, 264, 2, 920, 915, 3, 2, 2, 2, 920, 921, 3, 2, 2, 2, 921, 923, 3, 2, 2, 2, 922, 924, 7, 583, 2, 2, 923, 922, 3, 2, 2, 2, 923, 924, 3, 2, 2, 2, 924, 930, 3, 2, 2, 2, 925, 927, 7, 307, 2, 2, 926, 928, 7, 1013, 2, 2, 927, 926, 3, 2, 2, 2, 927, 928, 3, 2, 2, 2, 928, 929, 3, 2, 2, 2, 929, 931, 7, 1037, 2, 2, 930, 925, 3, 2, 2, 2, 930, 931, 3, 2, 2, 2, 931, 932, 3, 2, 2, 2, 932, 934, 7, 344, 2, 2, 933, 935, 7, 1013, 2, 2, 934, 933, 3, 2, 2, 2, 934, 935, 3, 2, 2, 2, 935, 936, 3, 2, 2, 2, 936, 937, 5, 516, 259, 2, 937, 35, 3, 2, 2, 2, 938, 940, 7, 32, 2, 2, 939, 941, 5, 54, 28, 2, 940, 939, 3, 2, 2, 2, 940, 941, 3, 2, 2, 2, 941, 942, 3, 2, 2, 2, 942, 943, 7, 119, 2, 2, 943, 944, 5, 500, 251, 2, 944, 946, 7, 1022, 2, 2, 945, 947, 5, 70, 36, 2, 946, 945, 3, 2, 2, 2, 946, 947, 3, 2, 2, 2, 947, 952, 3, 2, 2, 2, 948, 949, 7, 1024, 2, 2, 949, 951, 5, 70, 36, 2, 950, 948, 3, 2, 2, 2, 951, 954, 3, 2, 2, 2, 952, 950, 3, 2, 2, 2, 952, 953, 3, 2, 2, 2, 953, 955, 3, 2, 2, 2, 954, 952, 3, 2, 2, 2, 955, 959, 7, 1023, 2, 2, 956, 958, 5, 74, 38, 2, 957, 956, 3, 2, 2, 2, 958, 961, 3, 2, 2, 2, 959, 957, 3, 2, 2, 2, 959, 960, 3, 2, 2, 2, 960, 962, 3, 2, 2, 2, 961, 959, 3, 2, 2, 2, 962, 963, 5, 348, 175, 2, 963, 37, 3, 2, 2, 2, 964, 966, 7, 32, 2, 2, 965, 967, 5, 54, 28, 2, 966, 965, 3, 2, 2, 2, 966, 967, 3, 2, 2, 2, 967, 968, 3, 2, 2, 2, 968, 969, 7, 370, 2, 2, 969, 970, 5, 500, 251, 2, 970, 972, 7, 1022, 2, 2, 971, 973, 5, 72, 37, 2, 972, 971, 3, 2, 2, 2, 972, 973, 3, 2, 2, 2, 973, 978, 3, 2, 2, 2, 974, 975, 7, 1024, 2, 2, 975, 977, 5, 72, 37, 2, 976, 974, 3, 2, 2, 2, 977, 980, 3, 2, 2, 2, 978, 976, 3, 2, 2, 2, 978, 979, 3, 2, 2, 2, 979, 981, 3, 2, 2, 2, 980, 978, 3, 2, 2, 2, 981, 982, 7, 1023, 2, 2, 982, 983, 7, 508, 2, 2, 983, 987, 5, 546, 274, 2, 984, 986, 5, 74, 38, 2, 985, 984, 3, 2, 2, 2, 986, 989, 3, 2, 2, 2, 987, 985, 3, 2, 2, 2, 987, 988, 3, 2, 2, 2, 988, 992, 3, 2, 2, 2, 989, 987, 3, 2, 2, 2, 990, 993, 5, 348, 175, 2, 991, 993, 5, 364, 183, 2, 992, 990, 3, 2, 2, 2, 992, 991, 3, 2, 2, 2, 993, 39, 3, 2, 2, 2, 994, 995, 7, 32, 2, 2, 995, 996, 7, 519, 2, 2, 996, 997, 5, 526, 264, 2, 997, 998, 7, 62, 2, 2, 998, 999, 7, 325, 2, 2, 999, 1000, 7, 587, 2, 2, 1000, 1001, 9, 7, 2, 2, 1001, 1002, 7, 462, 2, 2, 1002, 1003, 7, 1022, 2, 2, 1003, 1008, 5, 76, 39, 2, 1004, 1005, 7, 1024, 2, 2, 1005, 1007, 5, 76, 39, 2, 1006, 1004, 3, 2, 2, 2, 1007, 1010, 3, 2, 2, 2, 1008, 1006, 3, 2, 2, 2, 1008, 1009, 3, 2, 2, 2, 1009, 1011, 3, 2, 2, 2, 1010, 1008, 3, 2, 2, 2, 1011, 1012, 7, 1023, 2, 2, 1012, 41, 3, 2, 2, 2, 1013, 1015, 7, 32, 2, 2, 1014, 1016, 7, 559, 2, 2, 1015, 1014, 3, 2, 2, 2, 1015, 1016, 3, 2, 2, 2, 1016, 1017, 3, 2, 2, 2, 1017, 1019, 7, 156, 2, 2, 1018, 1020, 5, 582, 292, 2, 1019, 1018, 3, 2, 2, 2, 1019, 1020, 3, 2, 2, 2, 1020, 1021, 3, 2, 2, 2, 1021, 1029, 5, 502, 252, 2, 1022, 1023, 7, 90, 2, 2, 1023, 1030, 5, 502, 252, 2, 1024, 1025, 7, 1022, 2, 2, 1025, 1026, 7, 90, 2, 2, 1026, 1027, 5, 502, 252, 2, 1027, 1028, 7, 1023, 2, 2, 1028, 1030, 3, 2, 2, 2, 1029, 1022, 3, 2, 2, 2, 1029, 1024, 3, 2, 2, 2, 1030, 1092, 3, 2, 2, 2, 1031, 1033, 7, 32, 2, 2, 1032, 1034, 7, 559, 2, 2, 1033, 1032, 3, 2, 2, 2, 1033, 1034, 3, 2, 2, 2, 1034, 1035, 3, 2, 2, 2, 1035, 1037, 7, 156, 2, 2, 1036, 1038, 5, 582, 292, 2, 1037, 1036, 3, 2, 2, 2, 1037, 1038, 3, 2, 2, 2, 1038, 1039, 3, 2, 2, 2, 1039, 1041, 5, 502, 252, 2, 1040, 1042, 5, 78, 40, 2, 1041, 1040, 3, 2, 2, 2, 1041, 1042, 3, 2, 2, 2, 1042, 1053, 3, 2, 2, 2, 1043, 1050, 5, 96, 49, 2, 1044, 1046, 7, 1024, 2, 2, 1045, 1044, 3, 2, 2, 2, 1045, 1046, 3, 2, 2, 2, 1046, 1047, 3, 2, 2, 2, 1047, 1049, 5, 96, 49, 2, 1048, 1045, 3, 2, 2, 2, 1049, 1052, 3, 2, 2, 2, 1050, 1048, 3, 2, 2, 2, 1050, 1051, 3, 2, 2, 2, 1051, 1054, 3, 2, 2, 2, 1052, 1050, 3, 2, 2, 2, 1053, 1043, 3, 2, 2, 2, 1053, 1054, 3, 2, 2, 2, 1054, 1056, 3, 2, 2, 2, 1055, 1057, 5, 100, 51, 2, 1056, 1055, 3, 2, 2, 2, 1056, 1057, 3, 2, 2, 2, 1057, 1059, 3, 2, 2, 2, 1058, 1060, 9, 8, 2, 2, 1059, 1058, 3, 2, 2, 2, 1059, 1060, 3, 2, 2, 2, 1060, 1062, 3, 2, 2, 2, 1061, 1063, 7, 13, 2, 2, 1062, 1061, 3, 2, 2, 2, 1062, 1063, 3, 2, 2, 2, 1063, 1064, 3, 2, 2, 2, 1064, 1065, 5, 182, 92, 2, 1065, 1092, 3, 2, 2, 2, 1066, 1068, 7, 32, 2, 2, 1067, 1069, 7, 559, 2, 2, 1068, 1067, 3, 2, 2, 2, 1068, 1069, 3, 2, 2, 2, 1069, 1070, 3, 2, 2, 2, 1070, 1072, 7, 156, 2, 2, 1071, 1073, 5, 582, 292, 2, 1072, 1071, 3, 2, 2, 2, 1072, 1073, 3, 2, 2, 2, 1073, 1074, 3, 2, 2, 2, 1074, 1075, 5, 502, 252, 2, 1075, 1086, 5, 78, 40, 2, 1076, 1083, 5, 96, 49, 2, 1077, 1079, 7, 1024, 2, 2, 1078, 1077, 3, 2, 2, 2, 1078, 1079, 3, 2, 2, 2, 1079, 1080, 3, 2, 2, 2, 1080, 1082, 5, 96, 49, 2, 1081, 1078, 3, 2, 2, 2, 1082, 1085, 3, 2, 2, 2, 1083, 1081, 3, 2, 2, 2, 1083, 1084, 3, 2, 2, 2, 1084, 1087, 3, 2, 2, 2, 1085, 1083, 3, 2, 2, 2, 1086, 1076, 3, 2, 2, 2, 1086, 1087, 3, 2, 2, 2, 1087, 1089, 3, 2, 2, 2, 1088, 1090, 5, 100, 51, 2, 1089, 1088, 3, 2, 2, 2, 1089, 1090, 3, 2, 2, 2, 1090, 1092, 3, 2, 2, 2, 1091, 1013, 3, 2, 2, 2, 1091, 1031, 3, 2, 2, 2, 1091, 1066, 3, 2, 2, 2, 1092, 43, 3, 2, 2, 2, 1093, 1094, 7, 32, 2, 2, 1094, 1095, 7, 558, 2, 2, 1095, 1096, 5, 526, 264, 2, 1096, 1097, 7, 7, 2, 2, 1097, 1098, 7, 326, 2, 2, 1098, 1102, 7, 1037, 2, 2, 1099, 1100, 7, 362, 2, 2, 1100, 1101, 7, 1013, 2, 2, 1101, 1103, 5, 534, 268, 2, 1102, 1099, 3, 2, 2, 2, 1102, 1103, 3, 2, 2, 2, 1103, 1109, 3, 2, 2, 2, 1104, 1106, 7, 344, 2, 2, 1105, 1107, 7, 1013, 2, 2, 1106, 1105, 3, 2, 2, 2, 1106, 1107, 3, 2, 2, 2, 1107, 1108, 3, 2, 2, 2, 1108, 1110, 5, 516, 259, 2, 1109, 1104, 3, 2, 2, 2, 1109, 1110, 3, 2, 2, 2, 1110, 45, 3, 2, 2, 2, 1111, 1112, 7, 32, 2, 2, 1112, 1113, 7, 558, 2, 2, 1113, 1114, 5, 526, 264, 2, 1114, 1115, 7, 7, 2, 2, 1115, 1116, 7, 326, 2, 2, 1116, 1117, 7, 1037, 2, 2, 1117, 1118, 7, 170, 2, 2, 1118, 1119, 7, 405, 2, 2, 1119, 1120, 7, 68, 2, 2, 1120, 1126, 5, 526, 264, 2, 1121, 1123, 7, 358, 2, 2, 1122, 1124, 7, 1013, 2, 2, 1123, 1122, 3, 2, 2, 2, 1123, 1124, 3, 2, 2, 2, 1124, 1125, 3, 2, 2, 2, 1125, 1127, 5, 534, 268, 2, 1126, 1121, 3, 2, 2, 2, 1126, 1127, 3, 2, 2, 2, 1127, 1133, 3, 2, 2, 2, 1128, 1130, 7, 384, 2, 2, 1129, 1131, 7, 1013, 2, 2, 1130, 1129, 3, 2, 2, 2, 1130, 1131, 3, 2, 2, 2, 1131, 1132, 3, 2, 2, 2, 1132, 1134, 5, 534, 268, 2, 1133, 1128, 3, 2, 2, 2, 1133, 1134, 3, 2, 2, 2, 1134, 1140, 3, 2, 2, 2, 1135, 1137, 7, 281, 2, 2, 1136, 1138, 7, 1013, 2, 2, 1137, 1136, 3, 2, 2, 2, 1137, 1138, 3, 2, 2, 2, 1138, 1139, 3, 2, 2, 2, 1139, 1141, 5, 534, 268, 2, 1140, 1135, 3, 2, 2, 2, 1140, 1141, 3, 2, 2, 2, 1141, 1147, 3, 2, 2, 2, 1142, 1144, 7, 431, 2, 2, 1143, 1145, 7, 1013, 2, 2, 1144, 1143, 3, 2, 2, 2, 1144, 1145, 3, 2, 2, 2, 1145, 1146, 3, 2, 2, 2, 1146, 1148, 5, 534, 268, 2, 1147, 1142, 3, 2, 2, 2, 1147, 1148, 3, 2, 2, 2, 1148, 1154, 3, 2, 2, 2, 1149, 1151, 7, 451, 2, 2, 1150, 1152, 7, 1013, 2, 2, 1151, 1150, 3, 2, 2, 2, 1151, 1152, 3, 2, 2, 2, 1152, 1153, 3, 2, 2, 2, 1153, 1155, 5, 526, 264, 2, 1154, 1149, 3, 2, 2, 2, 1154, 1155, 3, 2, 2, 2, 1155, 1157, 3, 2, 2, 2, 1156, 1158, 7, 583, 2, 2, 1157, 1156, 3, 2, 2, 2, 1157, 1158, 3, 2, 2, 2, 1158, 1164, 3, 2, 2, 2, 1159, 1161, 7, 307, 2, 2, 1160, 1162, 7, 1013, 2, 2, 1161, 1160, 3, 2, 2, 2, 1161, 1162, 3, 2, 2, 2, 1162, 1163, 3, 2, 2, 2, 1163, 1165, 7, 1037, 2, 2, 1164, 1159, 3, 2, 2, 2, 1164, 1165, 3, 2, 2, 2, 1165, 1166, 3, 2, 2, 2, 1166, 1168, 7, 344, 2, 2, 1167, 1169, 7, 1013, 2, 2, 1168, 1167, 3, 2, 2, 2, 1168, 1169, 3, 2, 2, 2, 1169, 1170, 3, 2, 2, 2, 1170, 1171, 5, 516, 259, 2, 1171, 47, 3, 2, 2, 2, 1172, 1174, 7, 32, 2, 2, 1173, 1175, 5, 54, 28, 2, 1174, 1173, 3, 2, 2, 2, 1174, 1175, 3, 2, 2, 2, 1175, 1176, 3, 2, 2, 2, 1176, 1177, 7, 161, 2, 2, 1177, 1178, 5, 500, 251, 2, 1178, 1179, 9, 9, 2, 2, 1179, 1180, 9, 10, 2, 2, 1180, 1181, 7, 108, 2, 2, 1181, 1182, 5, 502, 252, 2, 1182, 1183, 7, 60, 2, 2, 1183, 1184, 7, 50, 2, 2, 1184, 1187, 7, 513, 2, 2, 1185, 1186, 9, 11, 2, 2, 1186, 1188, 5, 500, 251, 2, 1187, 1185, 3, 2, 2, 2, 1187, 1188, 3, 2, 2, 2, 1188, 1189, 3, 2, 2, 2, 1189, 1190, 5, 348, 175, 2, 1190, 49, 3, 2, 2, 2, 1191, 1194, 7, 32, 2, 2, 1192, 1193, 7, 112, 2, 2, 1193, 1195, 7, 129, 2, 2, 1194, 1192, 3, 2, 2, 2, 1194, 1195, 3, 2, 2, 2, 1195, 1199, 3, 2, 2, 2, 1196, 1197, 7, 276, 2, 2, 1197, 1198, 7, 1013, 2, 2, 1198, 1200, 9, 12, 2, 2, 1199, 1196, 3, 2, 2, 2, 1199, 1200, 3, 2, 2, 2, 1200, 1202, 3, 2, 2, 2, 1201, 1203, 5, 54, 28, 2, 1202, 1201, 3, 2, 2, 2, 1202, 1203, 3, 2, 2, 2, 1203, 1207, 3, 2, 2, 2, 1204, 1205, 7, 145, 2, 2, 1205, 1206, 7, 518, 2, 2, 1206, 1208, 9, 13, 2, 2, 1207, 1204, 3, 2, 2, 2, 1207, 1208, 3, 2, 2, 2, 1208, 1209, 3, 2, 2, 2, 1209, 1210, 7, 580, 2, 2, 1210, 1215, 5, 500, 251, 2, 1211, 1212, 7, 1022, 2, 2, 1212, 1213, 5, 558, 280, 2, 1213, 1214, 7, 1023, 2, 2, 1214, 1216, 3, 2, 2, 2, 1215, 1211, 3, 2, 2, 2, 1215, 1216, 3, 2, 2, 2, 1216, 1217, 3, 2, 2, 2, 1217, 1218, 7, 13, 2, 2, 1218, 1225, 5, 182, 92, 2, 1219, 1221, 7, 176, 2, 2, 1220, 1222, 9, 14, 2, 2, 1221, 1220, 3, 2, 2, 2, 1221, 1222, 3, 2, 2, 2, 1222, 1223, 3, 2, 2, 2, 1223, 1224, 7, 25, 2, 2, 1224, 1226, 7, 110, 2, 2, 1225, 1219, 3, 2, 2, 2, 1225, 1226, 3, 2, 2, 2, 1226, 51, 3, 2, 2, 2, 1227, 1229, 7, 40, 2, 2, 1228, 1227, 3, 2, 2, 2, 1228, 1229, 3, 2, 2, 2, 1229, 1233, 3, 2, 2, 2, 1230, 1231, 7, 24, 2, 2, 1231, 1234, 7, 140, 2, 2, 1232, 1234, 7, 733, 2, 2, 1233, 1230, 3, 2, 2, 2, 1233, 1232, 3, 2, 2, 2, 1234, 1236, 3, 2, 2, 2, 1235, 1237, 7, 1013, 2, 2, 1236, 1235, 3, 2, 2, 2, 1236, 1237, 3, 2, 2, 2, 1237, 1240, 3, 2, 2, 2, 1238, 1241, 5, 512, 257, 2, 1239, 1241, 7, 40, 2, 2, 1240, 1238, 3, 2, 2, 2, 1240, 1239, 3, 2, 2, 2, 1241, 1251, 3, 2, 2, 2, 1242, 1244, 7, 40, 2, 2, 1243, 1242, 3, 2, 2, 2, 1243, 1244, 3, 2, 2, 2, 1244, 1245, 3, 2, 2, 2, 1245, 1247, 7, 26, 2, 2, 1246, 1248, 7, 1013, 2, 2, 1247, 1246, 3, 2, 2, 2, 1247, 1248, 3, 2, 2, 2, 1248, 1249, 3, 2, 2, 2, 1249, 1251, 5, 514, 258, 2, 1250, 1228, 3, 2, 2, 2, 1250, 1243, 3, 2, 2, 2, 1251, 53, 3, 2, 2, 2, 1252, 1253, 7, 329, 2, 2, 1253, 1260, 7, 1013, 2, 2, 1254, 1261, 5, 508, 255, 2, 1255, 1258, 7, 35, 2, 2, 1256, 1257, 7, 1022, 2, 2, 1257, 1259, 7, 1023, 2, 2, 1258, 1256, 3, 2, 2, 2, 1258, 1259, 3, 2, 2, 2, 1259, 1261, 3, 2, 2, 2, 1260, 1254, 3, 2, 2, 2, 1260, 1255, 3, 2, 2, 2, 1261, 55, 3, 2, 2, 2, 1262, 1263, 7, 278, 2, 2, 1263, 1267, 5, 58, 30, 2, 1264, 1266, 5, 60, 31, 2, 1265, 1264, 3, 2, 2, 2, 1266, 1269, 3, 2, 2, 2, 1267, 1265, 3, 2, 2, 2, 1267, 1268, 3, 2, 2, 2, 1268, 1297, 3, 2, 2, 2, 1269, 1267, 3, 2, 2, 2, 1270, 1273, 7, 352, 2, 2, 1271, 1274, 5, 532, 267, 2, 1272, 1274, 5, 604, 303, 2, 1273, 1271, 3, 2, 2, 2, 1273, 1272, 3, 2, 2, 2, 1274, 1275, 3, 2, 2, 2, 1275, 1284, 5, 62, 32, 2, 1276, 1277, 7, 541, 2, 2, 1277, 1281, 5, 58, 30, 2, 1278, 1280, 5, 60, 31, 2, 1279, 1278, 3, 2, 2, 2, 1280, 1283, 3, 2, 2, 2, 1281, 1279, 3, 2, 2, 2, 1281, 1282, 3, 2, 2, 2, 1282, 1285, 3, 2, 2, 2, 1283, 1281, 3, 2, 2, 2, 1284, 1276, 3, 2, 2, 2, 1284, 1285, 3, 2, 2, 2, 1285, 1294, 3, 2, 2, 2, 1286, 1287, 7, 343, 2, 2, 1287, 1291, 5, 58, 30, 2, 1288, 1290, 5, 60, 31, 2, 1289, 1288, 3, 2, 2, 2, 1290, 1293, 3, 2, 2, 2, 1291, 1289, 3, 2, 2, 2, 1291, 1292, 3, 2, 2, 2, 1292, 1295, 3, 2, 2, 2, 1293, 1291, 3, 2, 2, 2, 1294, 1286, 3, 2, 2, 2, 1294, 1295, 3, 2, 2, 2, 1295, 1297, 3, 2, 2, 2, 1296, 1262, 3, 2, 2, 2, 1296, 1270, 3, 2, 2, 2, 1297, 57, 3, 2, 2, 2, 1298, 1303, 7, 255, 2, 2, 1299, 1303, 5, 536, 269, 2, 1300, 1303, 5, 532, 267, 2, 1301, 1303, 5, 604, 303, 2, 1302, 1298, 3, 2, 2, 2, 1302, 1299, 3, 2, 2, 2, 1302, 1300, 3, 2, 2, 2, 1302, 1301, 3, 2, 2, 2, 1303, 59, 3, 2, 2, 2, 1304, 1305, 7, 1008, 2, 2, 1305, 1308, 7, 79, 2, 2, 1306, 1309, 5, 532, 267, 2, 1307, 1309, 5, 604, 303, 2, 1308, 1306, 3, 2, 2, 2, 1308, 1307, 3, 2, 2, 2, 1309, 1310, 3, 2, 2, 2, 1310, 1311, 5, 62, 32, 2, 1311, 61, 3, 2, 2, 2, 1312, 1326, 5, 626, 314, 2, 1313, 1326, 7, 205, 2, 2, 1314, 1326, 7, 224, 2, 2, 1315, 1326, 7, 225, 2, 2, 1316, 1326, 7, 226, 2, 2, 1317, 1326, 7, 227, 2, 2, 1318, 1326, 7, 228, 2, 2, 1319, 1326, 7, 229, 2, 2, 1320, 1326, 7, 230, 2, 2, 1321, 1326, 7, 231, 2, 2, 1322, 1326, 7, 232, 2, 2, 1323, 1326, 7, 233, 2, 2, 1324, 1326, 7, 234, 2, 2, 1325, 1312, 3, 2, 2, 2, 1325, 1313, 3, 2, 2, 2, 1325, 1314, 3, 2, 2, 2, 1325, 1315, 3, 2, 2, 2, 1325, 1316, 3, 2, 2, 2, 1325, 1317, 3, 2, 2, 2, 1325, 1318, 3, 2, 2, 2, 1325, 1319, 3, 2, 2, 2, 1325, 1320, 3, 2, 2, 2, 1325, 1321, 3, 2, 2, 2, 1325, 1322, 3, 2, 2, 2, 1325, 1323, 3, 2, 2, 2, 1325, 1324, 3, 2, 2, 2, 1326, 63, 3, 2, 2, 2, 1327, 1333, 7, 340, 2, 2, 1328, 1333, 7, 333, 2, 2, 1329, 1330, 7, 333, 2, 2, 1330, 1331, 7, 108, 2, 2, 1331, 1333, 7, 525, 2, 2, 1332, 1327, 3, 2, 2, 2, 1332, 1328, 3, 2, 2, 2, 1332, 1329, 3, 2, 2, 2, 1333, 65, 3, 2, 2, 2, 1334, 1335, 7, 171, 2, 2, 1335, 1336, 9, 15, 2, 2, 1336, 67, 3, 2, 2, 2, 1337, 1339, 7, 397, 2, 2, 1338, 1340, 7, 1013, 2, 2, 1339, 1338, 3, 2, 2, 2, 1339, 1340, 3, 2, 2, 2, 1340, 1341, 3, 2, 2, 2, 1341, 1351, 5, 534, 268, 2, 1342, 1351, 5, 66, 34, 2, 1343, 1344, 7, 176, 2, 2, 1344, 1345, 7, 466, 2, 2, 1345, 1351, 5, 526, 264, 2, 1346, 1347, 7, 307, 2, 2, 1347, 1351, 7, 1037, 2, 2, 1348, 1351, 7, 389, 2, 2, 1349, 1351, 7, 582, 2, 2, 1350, 1337, 3, 2, 2, 2, 1350, 1342, 3, 2, 2, 2, 1350, 1343, 3, 2, 2, 2, 1350, 1346, 3, 2, 2, 2, 1350, 1348, 3, 2, 2, 2, 1350, 1349, 3, 2, 2, 2, 1351, 69, 3, 2, 2, 2, 1352, 1354, 9, 16, 2, 2, 1353, 1352, 3, 2, 2, 2, 1353, 1354, 3, 2, 2, 2, 1354, 1355, 3, 2, 2, 2, 1355, 1356, 5, 526, 264, 2, 1356, 1357, 5, 546, 274, 2, 1357, 71, 3, 2, 2, 2, 1358, 1359, 5, 526, 264, 2, 1359, 1360, 5, 546, 274, 2, 1360, 73, 3, 2, 2, 2, 1361, 1362, 7, 307, 2, 2, 1362, 1385, 7, 1037, 2, 2, 1363, 1364, 7, 398, 2, 2, 1364, 1385, 7, 145, 2, 2, 1365, 1367, 7, 104, 2, 2, 1366, 1365, 3, 2, 2, 2, 1366, 1367, 3, 2, 2, 2, 1367, 1368, 3, 2, 2, 2, 1368, 1385, 7, 45, 2, 2, 1369, 1370, 7, 319, 2, 2, 1370, 1380, 7, 145, 2, 2, 1371, 1372, 7, 450, 2, 2, 1372, 1380, 7, 145, 2, 2, 1373, 1374, 7, 123, 2, 2, 1374, 1375, 7, 145, 2, 2, 1375, 1380, 7, 325, 2, 2, 1376, 1377, 7, 102, 2, 2, 1377, 1378, 7, 145, 2, 2, 1378, 1380, 7, 325, 2, 2, 1379, 1369, 3, 2, 2, 2, 1379, 1371, 3, 2, 2, 2, 1379, 1373, 3, 2, 2, 2, 1379, 1376, 3, 2, 2, 2, 1380, 1385, 3, 2, 2, 2, 1381, 1382, 7, 145, 2, 2, 1382, 1383, 7, 518, 2, 2, 1383, 1385, 9, 13, 2, 2, 1384, 1361, 3, 2, 2, 2, 1384, 1363, 3, 2, 2, 2, 1384, 1366, 3, 2, 2, 2, 1384, 1379, 3, 2, 2, 2, 1384, 1381, 3, 2, 2, 2, 1385, 75, 3, 2, 2, 2, 1386, 1387, 7, 378, 2, 2, 1387, 1401, 7, 1037, 2, 2, 1388, 1389, 7, 37, 2, 2, 1389, 1401, 7, 1037, 2, 2, 1390, 1391, 7, 574, 2, 2, 1391, 1401, 7, 1037, 2, 2, 1392, 1393, 7, 470, 2, 2, 1393, 1401, 7, 1037, 2, 2, 1394, 1395, 7, 528, 2, 2, 1395, 1401, 7, 1037, 2, 2, 1396, 1397, 7, 463, 2, 2, 1397, 1401, 7, 1037, 2, 2, 1398, 1399, 7, 475, 2, 2, 1399, 1401, 5, 532, 267, 2, 1400, 1386, 3, 2, 2, 2, 1400, 1388, 3, 2, 2, 2, 1400, 1390, 3, 2, 2, 2, 1400, 1392, 3, 2, 2, 2, 1400, 1394, 3, 2, 2, 2, 1400, 1396, 3, 2, 2, 2, 1400, 1398, 3, 2, 2, 2, 1401, 77, 3, 2, 2, 2, 1402, 1403, 7, 1022, 2, 2, 1403, 1408, 5, 80, 41, 2, 1404, 1405, 7, 1024, 2, 2, 1405, 1407, 5, 80, 41, 2, 1406, 1404, 3, 2, 2, 2, 1407, 1410, 3, 2, 2, 2, 1408, 1406, 3, 2, 2, 2, 1408, 1409, 3, 2, 2, 2, 1409, 1411, 3, 2, 2, 2, 1410, 1408, 3, 2, 2, 2, 1411, 1412, 7, 1023, 2, 2, 1412, 79, 3, 2, 2, 2, 1413, 1414, 5, 526, 264, 2, 1414, 1415, 5, 82, 42, 2, 1415, 1419, 3, 2, 2, 2, 1416, 1419, 5, 86, 44, 2, 1417, 1419, 5, 94, 48, 2, 1418, 1413, 3, 2, 2, 2, 1418, 1416, 3, 2, 2, 2, 1418, 1417, 3, 2, 2, 2, 1419, 81, 3, 2, 2, 2, 1420, 1424, 5, 546, 274, 2, 1421, 1423, 5, 84, 43, 2, 1422, 1421, 3, 2, 2, 2, 1423, 1426, 3, 2, 2, 2, 1424, 1422, 3, 2, 2, 2, 1424, 1425, 3, 2, 2, 2, 1425, 83, 3, 2, 2, 2, 1426, 1424, 3, 2, 2, 2, 1427, 1479, 5, 542, 272, 2, 1428, 1429, 7, 40, 2, 2, 1429, 1479, 5, 574, 288, 2, 1430, 1435, 7, 282, 2, 2, 1431, 1432, 7, 108, 2, 2, 1432, 1433, 7, 168, 2, 2, 1433, 1435, 5, 576, 289, 2, 1434, 1430, 3, 2, 2, 2, 1434, 1431, 3, 2, 2, 2, 1435, 1479, 3, 2, 2, 2, 1436, 1438, 7, 118, 2, 2, 1437, 1436, 3, 2, 2, 2, 1437, 1438, 3, 2, 2, 2, 1438, 1439, 3, 2, 2, 2, 1439, 1479, 7, 84, 2, 2, 1440, 1442, 7, 165, 2, 2, 1441, 1443, 7, 84, 2, 2, 1442, 1441, 3, 2, 2, 2, 1442, 1443, 3, 2, 2, 2, 1443, 1479, 3, 2, 2, 2, 1444, 1445, 7, 307, 2, 2, 1445, 1479, 7, 1037, 2, 2, 1446, 1447, 7, 305, 2, 2, 1447, 1479, 9, 17, 2, 2, 1448, 1449, 7, 547, 2, 2, 1449, 1479, 9, 18, 2, 2, 1450, 1479, 5, 88, 45, 2, 1451, 1452, 7, 26, 2, 2, 1452, 1479, 5, 514, 258, 2, 1453, 1454, 7, 65, 2, 2, 1454, 1456, 7, 10, 2, 2, 1455, 1453, 3, 2, 2, 2, 1455, 1456, 3, 2, 2, 2, 1456, 1457, 3, 2, 2, 2, 1457, 1458, 7, 13, 2, 2, 1458, 1459, 7, 1022, 2, 2, 1459, 1460, 5, 604, 303, 2, 1460, 1462, 7, 1023, 2, 2, 1461, 1463, 9, 19, 2, 2, 1462, 1461, 3, 2, 2, 2, 1462, 1463, 3, 2, 2, 2, 1463, 1479, 3, 2, 2, 2, 1464, 1465, 7, 223, 2, 2, 1465, 1466, 7, 40, 2, 2, 1466, 1479, 7, 578, 2, 2, 1467, 1469, 7, 29, 2, 2, 1468, 1470, 5, 526, 264, 2, 1469, 1468, 3, 2, 2, 2, 1469, 1470, 3, 2, 2, 2, 1470, 1472, 3, 2, 2, 2, 1471, 1467, 3, 2, 2, 2, 1471, 1472, 3, 2, 2, 2, 1472, 1473, 3, 2, 2, 2, 1473, 1474, 7, 25, 2, 2, 1474, 1475, 7, 1022, 2, 2, 1475, 1476, 5, 604, 303, 2, 1476, 1477, 7, 1023, 2, 2, 1477, 1479, 3, 2, 2, 2, 1478, 1427, 3, 2, 2, 2, 1478, 1428, 3, 2, 2, 2, 1478, 1434, 3, 2, 2, 2, 1478, 1437, 3, 2, 2, 2, 1478, 1440, 3, 2, 2, 2, 1478, 1444, 3, 2, 2, 2, 1478, 1446, 3, 2, 2, 2, 1478, 1448, 3, 2, 2, 2, 1478, 1450, 3, 2, 2, 2, 1478, 1451, 3, 2, 2, 2, 1478, 1455, 3, 2, 2, 2, 1478, 1464, 3, 2, 2, 2, 1478, 1471, 3, 2, 2, 2, 1479, 85, 3, 2, 2, 2, 1480, 1482, 7, 29, 2, 2, 1481, 1483, 5, 526, 264, 2, 1482, 1481, 3, 2, 2, 2, 1482, 1483, 3, 2, 2, 2, 1483, 1485, 3, 2, 2, 2, 1484, 1480, 3, 2, 2, 2, 1484, 1485, 3, 2, 2, 2, 1485, 1486, 3, 2, 2, 2, 1486, 1487, 7, 118, 2, 2, 1487, 1489, 7, 84, 2, 2, 1488, 1490, 5, 526, 264, 2, 1489, 1488, 3, 2, 2, 2, 1489, 1490, 3, 2, 2, 2, 1490, 1492, 3, 2, 2, 2, 1491, 1493, 5, 66, 34, 2, 1492, 1491, 3, 2, 2, 2, 1492, 1493, 3, 2, 2, 2, 1493, 1494, 3, 2, 2, 2, 1494, 1498, 5, 562, 282, 2, 1495, 1497, 5, 68, 35, 2, 1496, 1495, 3, 2, 2, 2, 1497, 1500, 3, 2, 2, 2, 1498, 1496, 3, 2, 2, 2, 1498, 1499, 3, 2, 2, 2, 1499, 1550, 3, 2, 2, 2, 1500, 1498, 3, 2, 2, 2, 1501, 1503, 7, 29, 2, 2, 1502, 1504, 5, 526, 264, 2, 1503, 1502, 3, 2, 2, 2, 1503, 1504, 3, 2, 2, 2, 1504, 1506, 3, 2, 2, 2, 1505, 1501, 3, 2, 2, 2, 1505, 1506, 3, 2, 2, 2, 1506, 1507, 3, 2, 2, 2, 1507, 1509, 7, 165, 2, 2, 1508, 1510, 9, 20, 2, 2, 1509, 1508, 3, 2, 2, 2, 1509, 1510, 3, 2, 2, 2, 1510, 1512, 3, 2, 2, 2, 1511, 1513, 5, 526, 264, 2, 1512, 1511, 3, 2, 2, 2, 1512, 1513, 3, 2, 2, 2, 1513, 1515, 3, 2, 2, 2, 1514, 1516, 5, 66, 34, 2, 1515, 1514, 3, 2, 2, 2, 1515, 1516, 3, 2, 2, 2, 1516, 1517, 3, 2, 2, 2, 1517, 1521, 5, 562, 282, 2, 1518, 1520, 5, 68, 35, 2, 1519, 1518, 3, 2, 2, 2, 1520, 1523, 3, 2, 2, 2, 1521, 1519, 3, 2, 2, 2, 1521, 1522, 3, 2, 2, 2, 1522, 1550, 3, 2, 2, 2, 1523, 1521, 3, 2, 2, 2, 1524, 1526, 7, 29, 2, 2, 1525, 1527, 5, 526, 264, 2, 1526, 1525, 3, 2, 2, 2, 1526, 1527, 3, 2, 2, 2, 1527, 1529, 3, 2, 2, 2, 1528, 1524, 3, 2, 2, 2, 1528, 1529, 3, 2, 2, 2, 1529, 1530, 3, 2, 2, 2, 1530, 1531, 7, 62, 2, 2, 1531, 1533, 7, 84, 2, 2, 1532, 1534, 5, 526, 264, 2, 1533, 1532, 3, 2, 2, 2, 1533, 1534, 3, 2, 2, 2, 1534, 1535, 3, 2, 2, 2, 1535, 1536, 5, 562, 282, 2, 1536, 1537, 5, 88, 45, 2, 1537, 1550, 3, 2, 2, 2, 1538, 1540, 7, 29, 2, 2, 1539, 1541, 5, 526, 264, 2, 1540, 1539, 3, 2, 2, 2, 1540, 1541, 3, 2, 2, 2, 1541, 1543, 3, 2, 2, 2, 1542, 1538, 3, 2, 2, 2, 1542, 1543, 3, 2, 2, 2, 1543, 1544, 3, 2, 2, 2, 1544, 1545, 7, 25, 2, 2, 1545, 1546, 7, 1022, 2, 2, 1546, 1547, 5, 604, 303, 2, 1547, 1548, 7, 1023, 2, 2, 1548, 1550, 3, 2, 2, 2, 1549, 1484, 3, 2, 2, 2, 1549, 1505, 3, 2, 2, 2, 1549, 1528, 3, 2, 2, 2, 1549, 1542, 3, 2, 2, 2, 1550, 87, 3, 2, 2, 2, 1551, 1552, 7, 124, 2, 2, 1552, 1554, 5, 502, 252, 2, 1553, 1555, 5, 562, 282, 2, 1554, 1553, 3, 2, 2, 2, 1554, 1555, 3, 2, 2, 2, 1555, 1558, 3, 2, 2, 2, 1556, 1557, 7, 100, 2, 2, 1557, 1559, 9, 21, 2, 2, 1558, 1556, 3, 2, 2, 2, 1558, 1559, 3, 2, 2, 2, 1559, 1561, 3, 2, 2, 2, 1560, 1562, 5, 90, 46, 2, 1561, 1560, 3, 2, 2, 2, 1561, 1562, 3, 2, 2, 2, 1562, 89, 3, 2, 2, 2, 1563, 1564, 7, 108, 2, 2, 1564, 1565, 7, 42, 2, 2, 1565, 1569, 5, 92, 47, 2, 1566, 1567, 7, 108, 2, 2, 1567, 1568, 7, 168, 2, 2, 1568, 1570, 5, 92, 47, 2, 1569, 1566, 3, 2, 2, 2, 1569, 1570, 3, 2, 2, 2, 1570, 1580, 3, 2, 2, 2, 1571, 1572, 7, 108, 2, 2, 1572, 1573, 7, 168, 2, 2, 1573, 1577, 5, 92, 47, 2, 1574, 1575, 7, 108, 2, 2, 1575, 1576, 7, 42, 2, 2, 1576, 1578, 5, 92, 47, 2, 1577, 1574, 3, 2, 2, 2, 1577, 1578, 3, 2, 2, 2, 1578, 1580, 3, 2, 2, 2, 1579, 1563, 3, 2, 2, 2, 1579, 1571, 3, 2, 2, 2, 1580, 91, 3, 2, 2, 2, 1581, 1588, 7, 132, 2, 2, 1582, 1588, 7, 20, 2, 2, 1583, 1584, 7, 140, 2, 2, 1584, 1588, 7, 106, 2, 2, 1585, 1586, 7, 450, 2, 2, 1586, 1588, 7, 273, 2, 2, 1587, 1581, 3, 2, 2, 2, 1587, 1582, 3, 2, 2, 2, 1587, 1583, 3, 2, 2, 2, 1587, 1585, 3, 2, 2, 2, 1588, 93, 3, 2, 2, 2, 1589, 1591, 9, 20, 2, 2, 1590, 1592, 5, 526, 264, 2, 1591, 1590, 3, 2, 2, 2, 1591, 1592, 3, 2, 2, 2, 1592, 1594, 3, 2, 2, 2, 1593, 1595, 5, 66, 34, 2, 1594, 1593, 3, 2, 2, 2, 1594, 1595, 3, 2, 2, 2, 1595, 1596, 3, 2, 2, 2, 1596, 1600, 5, 562, 282, 2, 1597, 1599, 5, 68, 35, 2, 1598, 1597, 3, 2, 2, 2, 1599, 1602, 3, 2, 2, 2, 1600, 1598, 3, 2, 2, 2, 1600, 1601, 3, 2, 2, 2, 1601, 1618, 3, 2, 2, 2, 1602, 1600, 3, 2, 2, 2, 1603, 1605, 9, 22, 2, 2, 1604, 1606, 9, 20, 2, 2, 1605, 1604, 3, 2, 2, 2, 1605, 1606, 3, 2, 2, 2, 1606, 1608, 3, 2, 2, 2, 1607, 1609, 5, 526, 264, 2, 1608, 1607, 3, 2, 2, 2, 1608, 1609, 3, 2, 2, 2, 1609, 1610, 3, 2, 2, 2, 1610, 1614, 5, 562, 282, 2, 1611, 1613, 5, 68, 35, 2, 1612, 1611, 3, 2, 2, 2, 1613, 1616, 3, 2, 2, 2, 1614, 1612, 3, 2, 2, 2, 1614, 1615, 3, 2, 2, 2, 1615, 1618, 3, 2, 2, 2, 1616, 1614, 3, 2, 2, 2, 1617, 1589, 3, 2, 2, 2, 1617, 1603, 3, 2, 2, 2, 1618, 95, 3, 2, 2, 2, 1619, 1621, 7, 344, 2, 2, 1620, 1622, 7, 1013, 2, 2, 1621, 1620, 3, 2, 2, 2, 1621, 1622, 3, 2, 2, 2, 1622, 1623, 3, 2, 2, 2, 1623, 1764, 5, 516, 259, 2, 1624, 1626, 7, 282, 2, 2, 1625, 1627, 7, 1013, 2, 2, 1626, 1625, 3, 2, 2, 2, 1626, 1627, 3, 2, 2, 2, 1627, 1628, 3, 2, 2, 2, 1628, 1764, 5, 532, 267, 2, 1629, 1631, 7, 283, 2, 2, 1630, 1632, 7, 1013, 2, 2, 1631, 1630, 3, 2, 2, 2, 1631, 1632, 3, 2, 2, 2, 1632, 1633, 3, 2, 2, 2, 1633, 1764, 5, 532, 267, 2, 1634, 1636, 7, 40, 2, 2, 1635, 1634, 3, 2, 2, 2, 1635, 1636, 3, 2, 2, 2, 1636, 1640, 3, 2, 2, 2, 1637, 1638, 7, 24, 2, 2, 1638, 1641, 7, 140, 2, 2, 1639, 1641, 7, 733, 2, 2, 1640, 1637, 3, 2, 2, 2, 1640, 1639, 3, 2, 2, 2, 1641, 1643, 3, 2, 2, 2, 1642, 1644, 7, 1013, 2, 2, 1643, 1642, 3, 2, 2, 2, 1643, 1644, 3, 2, 2, 2, 1644, 1647, 3, 2, 2, 2, 1645, 1648, 5, 512, 257, 2, 1646, 1648, 7, 40, 2, 2, 1647, 1645, 3, 2, 2, 2, 1647, 1646, 3, 2, 2, 2, 1648, 1764, 3, 2, 2, 2, 1649, 1651, 9, 23, 2, 2, 1650, 1652, 7, 1013, 2, 2, 1651, 1650, 3, 2, 2, 2, 1651, 1652, 3, 2, 2, 2, 1652, 1653, 3, 2, 2, 2, 1653, 1764, 9, 24, 2, 2, 1654, 1656, 7, 40, 2, 2, 1655, 1654, 3, 2, 2, 2, 1655, 1656, 3, 2, 2, 2, 1656, 1657, 3, 2, 2, 2, 1657, 1659, 7, 26, 2, 2, 1658, 1660, 7, 1013, 2, 2, 1659, 1658, 3, 2, 2, 2, 1659, 1660, 3, 2, 2, 2, 1660, 1661, 3, 2, 2, 2, 1661, 1764, 5, 514, 258, 2, 1662, 1664, 7, 307, 2, 2, 1663, 1665, 7, 1013, 2, 2, 1664, 1663, 3, 2, 2, 2, 1664, 1665, 3, 2, 2, 2, 1665, 1666, 3, 2, 2, 2, 1666, 1764, 7, 1037, 2, 2, 1667, 1669, 7, 312, 2, 2, 1668, 1670, 7, 1013, 2, 2, 1669, 1668, 3, 2, 2, 2, 1669, 1670, 3, 2, 2, 2, 1670, 1671, 3, 2, 2, 2, 1671, 1764, 9, 25, 2, 2, 1672, 1674, 7, 314, 2, 2, 1673, 1675, 7, 1013, 2, 2, 1674, 1673, 3, 2, 2, 2, 1674, 1675, 3, 2, 2, 2, 1675, 1676, 3, 2, 2, 2, 1676, 1764, 7, 1037, 2, 2, 1677, 1678, 7, 325, 2, 2, 1678, 1680, 7, 332, 2, 2, 1679, 1681, 7, 1013, 2, 2, 1680, 1679, 3, 2, 2, 2, 1680, 1681, 3, 2, 2, 2, 1681, 1682, 3, 2, 2, 2, 1682, 1764, 7, 1037, 2, 2, 1683, 1685, 7, 330, 2, 2, 1684, 1686, 7, 1013, 2, 2, 1685, 1684, 3, 2, 2, 2, 1685, 1686, 3, 2, 2, 2, 1686, 1687, 3, 2, 2, 2, 1687, 1764, 9, 24, 2, 2, 1688, 1690, 7, 341, 2, 2, 1689, 1691, 7, 1013, 2, 2, 1690, 1689, 3, 2, 2, 2, 1690, 1691, 3, 2, 2, 2, 1691, 1692, 3, 2, 2, 2, 1692, 1764, 7, 1037, 2, 2, 1693, 1694, 7, 74, 2, 2, 1694, 1696, 7, 332, 2, 2, 1695, 1697, 7, 1013, 2, 2, 1696, 1695, 3, 2, 2, 2, 1696, 1697, 3, 2, 2, 2, 1697, 1698, 3, 2, 2, 2, 1698, 1764, 7, 1037, 2, 2, 1699, 1701, 7, 386, 2, 2, 1700, 1702, 7, 1013, 2, 2, 1701, 1700, 3, 2, 2, 2, 1701, 1702, 3, 2, 2, 2, 1702, 1703, 3, 2, 2, 2, 1703, 1764, 9, 26, 2, 2, 1704, 1706, 7, 397, 2, 2, 1705, 1707, 7, 1013, 2, 2, 1706, 1705, 3, 2, 2, 2, 1706, 1707, 3, 2, 2, 2, 1707, 1708, 3, 2, 2, 2, 1708, 1764, 5, 534, 268, 2, 1709, 1711, 7, 430, 2, 2, 1710, 1712, 7, 1013, 2, 2, 1711, 1710, 3, 2, 2, 2, 1711, 1712, 3, 2, 2, 2, 1712, 1713, 3, 2, 2, 2, 1713, 1764, 5, 532, 267, 2, 1714, 1716, 7, 439, 2, 2, 1715, 1717, 7, 1013, 2, 2, 1716, 1715, 3, 2, 2, 2, 1716, 1717, 3, 2, 2, 2, 1717, 1718, 3, 2, 2, 2, 1718, 1764, 5, 532, 267, 2, 1719, 1721, 7, 464, 2, 2, 1720, 1722, 7, 1013, 2, 2, 1721, 1720, 3, 2, 2, 2, 1721, 1722, 3, 2, 2, 2, 1722, 1723, 3, 2, 2, 2, 1723, 1764, 9, 27, 2, 2, 1724, 1726, 7, 470, 2, 2, 1725, 1727, 7, 1013, 2, 2, 1726, 1725, 3, 2, 2, 2, 1726, 1727, 3, 2, 2, 2, 1727, 1728, 3, 2, 2, 2, 1728, 1764, 7, 1037, 2, 2, 1729, 1731, 7, 515, 2, 2, 1730, 1732, 7, 1013, 2, 2, 1731, 1730, 3, 2, 2, 2, 1731, 1732, 3, 2, 2, 2, 1732, 1733, 3, 2, 2, 2, 1733, 1764, 9, 28, 2, 2, 1734, 1736, 7, 542, 2, 2, 1735, 1737, 7, 1013, 2, 2, 1736, 1735, 3, 2, 2, 2, 1736, 1737, 3, 2, 2, 2, 1737, 1738, 3, 2, 2, 2, 1738, 1764, 9, 27, 2, 2, 1739, 1741, 7, 543, 2, 2, 1740, 1742, 7, 1013, 2, 2, 1741, 1740, 3, 2, 2, 2, 1741, 1742, 3, 2, 2, 2, 1742, 1743, 3, 2, 2, 2, 1743, 1764, 9, 27, 2, 2, 1744, 1746, 7, 544, 2, 2, 1745, 1747, 7, 1013, 2, 2, 1746, 1745, 3, 2, 2, 2, 1746, 1747, 3, 2, 2, 2, 1747, 1748, 3, 2, 2, 2, 1748, 1764, 5, 532, 267, 2, 1749, 1750, 7, 558, 2, 2, 1750, 1752, 5, 526, 264, 2, 1751, 1753, 5, 98, 50, 2, 1752, 1751, 3, 2, 2, 2, 1752, 1753, 3, 2, 2, 2, 1753, 1764, 3, 2, 2, 2, 1754, 1764, 5, 98, 50, 2, 1755, 1757, 7, 164, 2, 2, 1756, 1758, 7, 1013, 2, 2, 1757, 1756, 3, 2, 2, 2, 1757, 1758, 3, 2, 2, 2, 1758, 1759, 3, 2, 2, 2, 1759, 1760, 7, 1022, 2, 2, 1760, 1761, 5, 560, 281, 2, 1761, 1762, 7, 1023, 2, 2, 1762, 1764, 3, 2, 2, 2, 1763, 1619, 3, 2, 2, 2, 1763, 1624, 3, 2, 2, 2, 1763, 1629, 3, 2, 2, 2, 1763, 1635, 3, 2, 2, 2, 1763, 1649, 3, 2, 2, 2, 1763, 1655, 3, 2, 2, 2, 1763, 1662, 3, 2, 2, 2, 1763, 1667, 3, 2, 2, 2, 1763, 1672, 3, 2, 2, 2, 1763, 1677, 3, 2, 2, 2, 1763, 1683, 3, 2, 2, 2, 1763, 1688, 3, 2, 2, 2, 1763, 1693, 3, 2, 2, 2, 1763, 1699, 3, 2, 2, 2, 1763, 1704, 3, 2, 2, 2, 1763, 1709, 3, 2, 2, 2, 1763, 1714, 3, 2, 2, 2, 1763, 1719, 3, 2, 2, 2, 1763, 1724, 3, 2, 2, 2, 1763, 1729, 3, 2, 2, 2, 1763, 1734, 3, 2, 2, 2, 1763, 1739, 3, 2, 2, 2, 1763, 1744, 3, 2, 2, 2, 1763, 1749, 3, 2, 2, 2, 1763, 1754, 3, 2, 2, 2, 1763, 1755, 3, 2, 2, 2, 1764, 97, 3, 2, 2, 2, 1765, 1766, 7, 547, 2, 2, 1766, 1767, 9, 18, 2, 2, 1767, 99, 3, 2, 2, 2, 1768, 1769, 7, 117, 2, 2, 1769, 1770, 7, 18, 2, 2, 1770, 1773, 5, 102, 52, 2, 1771, 1772, 7, 469, 2, 2, 1772, 1774, 5, 532, 267, 2, 1773, 1771, 3, 2, 2, 2, 1773, 1774, 3, 2, 2, 2, 1774, 1782, 3, 2, 2, 2, 1775, 1776, 7, 552, 2, 2, 1776, 1777, 7, 18, 2, 2, 1777, 1780, 5, 104, 53, 2, 1778, 1779, 7, 553, 2, 2, 1779, 1781, 5, 532, 267, 2, 1780, 1778, 3, 2, 2, 2, 1780, 1781, 3, 2, 2, 2, 1781, 1783, 3, 2, 2, 2, 1782, 1775, 3, 2, 2, 2, 1782, 1783, 3, 2, 2, 2, 1783, 1795, 3, 2, 2, 2, 1784, 1785, 7, 1022, 2, 2, 1785, 1790, 5, 106, 54, 2, 1786, 1787, 7, 1024, 2, 2, 1787, 1789, 5, 106, 54, 2, 1788, 1786, 3, 2, 2, 2, 1789, 1792, 3, 2, 2, 2, 1790, 1788, 3, 2, 2, 2, 1790, 1791, 3, 2, 2, 2, 1791, 1793, 3, 2, 2, 2, 1792, 1790, 3, 2, 2, 2, 1793, 1794, 7, 1023, 2, 2, 1794, 1796, 3, 2, 2, 2, 1795, 1784, 3, 2, 2, 2, 1795, 1796, 3, 2, 2, 2, 1796, 101, 3, 2, 2, 2, 1797, 1799, 7, 92, 2, 2, 1798, 1797, 3, 2, 2, 2, 1798, 1799, 3, 2, 2, 2, 1799, 1800, 3, 2, 2, 2, 1800, 1801, 7, 376, 2, 2, 1801, 1802, 7, 1022, 2, 2, 1802, 1803, 5, 604, 303, 2, 1803, 1804, 7, 1023, 2, 2, 1804, 1843, 3, 2, 2, 2, 1805, 1807, 7, 92, 2, 2, 1806, 1805, 3, 2, 2, 2, 1806, 1807, 3, 2, 2, 2, 1807, 1808, 3, 2, 2, 2, 1808, 1812, 7, 84, 2, 2, 1809, 1810, 7, 276, 2, 2, 1810, 1811, 7, 1013, 2, 2, 1811, 1813, 9, 29, 2, 2, 1812, 1809, 3, 2, 2, 2, 1812, 1813, 3, 2, 2, 2, 1813, 1814, 3, 2, 2, 2, 1814, 1815, 7, 1022, 2, 2, 1815, 1816, 5, 558, 280, 2, 1816, 1817, 7, 1023, 2, 2, 1817, 1843, 3, 2, 2, 2, 1818, 1828, 7, 121, 2, 2, 1819, 1820, 7, 1022, 2, 2, 1820, 1821, 5, 604, 303, 2, 1821, 1822, 7, 1023, 2, 2, 1822, 1829, 3, 2, 2, 2, 1823, 1824, 7, 304, 2, 2, 1824, 1825, 7, 1022, 2, 2, 1825, 1826, 5, 558, 280, 2, 1826, 1827, 7, 1023, 2, 2, 1827, 1829, 3, 2, 2, 2, 1828, 1819, 3, 2, 2, 2, 1828, 1823, 3, 2, 2, 2, 1829, 1843, 3, 2, 2, 2, 1830, 1840, 7, 403, 2, 2, 1831, 1832, 7, 1022, 2, 2, 1832, 1833, 5, 604, 303, 2, 1833, 1834, 7, 1023, 2, 2, 1834, 1841, 3, 2, 2, 2, 1835, 1836, 7, 304, 2, 2, 1836, 1837, 7, 1022, 2, 2, 1837, 1838, 5, 558, 280, 2, 1838, 1839, 7, 1023, 2, 2, 1839, 1841, 3, 2, 2, 2, 1840, 1831, 3, 2, 2, 2, 1840, 1835, 3, 2, 2, 2, 1841, 1843, 3, 2, 2, 2, 1842, 1798, 3, 2, 2, 2, 1842, 1806, 3, 2, 2, 2, 1842, 1818, 3, 2, 2, 2, 1842, 1830, 3, 2, 2, 2, 1843, 103, 3, 2, 2, 2, 1844, 1846, 7, 92, 2, 2, 1845, 1844, 3, 2, 2, 2, 1845, 1846, 3, 2, 2, 2, 1846, 1847, 3, 2, 2, 2, 1847, 1848, 7, 376, 2, 2, 1848, 1849, 7, 1022, 2, 2, 1849, 1850, 5, 604, 303, 2, 1850, 1851, 7, 1023, 2, 2, 1851, 1866, 3, 2, 2, 2, 1852, 1854, 7, 92, 2, 2, 1853, 1852, 3, 2, 2, 2, 1853, 1854, 3, 2, 2, 2, 1854, 1855, 3, 2, 2, 2, 1855, 1859, 7, 84, 2, 2, 1856, 1857, 7, 276, 2, 2, 1857, 1858, 7, 1013, 2, 2, 1858, 1860, 9, 29, 2, 2, 1859, 1856, 3, 2, 2, 2, 1859, 1860, 3, 2, 2, 2, 1860, 1861, 3, 2, 2, 2, 1861, 1862, 7, 1022, 2, 2, 1862, 1863, 5, 558, 280, 2, 1863, 1864, 7, 1023, 2, 2, 1864, 1866, 3, 2, 2, 2, 1865, 1845, 3, 2, 2, 2, 1865, 1853, 3, 2, 2, 2, 1866, 105, 3, 2, 2, 2, 1867, 1868, 7, 117, 2, 2, 1868, 1869, 5, 526, 264, 2, 1869, 1870, 7, 172, 2, 2, 1870, 1871, 7, 401, 2, 2, 1871, 1872, 7, 561, 2, 2, 1872, 1873, 7, 1022, 2, 2, 1873, 1878, 5, 108, 55, 2, 1874, 1875, 7, 1024, 2, 2, 1875, 1877, 5, 108, 55, 2, 1876, 1874, 3, 2, 2, 2, 1877, 1880, 3, 2, 2, 2, 1878, 1876, 3, 2, 2, 2, 1878, 1879, 3, 2, 2, 2, 1879, 1881, 3, 2, 2, 2, 1880, 1878, 3, 2, 2, 2, 1881, 1885, 7, 1023, 2, 2, 1882, 1884, 5, 114, 58, 2, 1883, 1882, 3, 2, 2, 2, 1884, 1887, 3, 2, 2, 2, 1885, 1883, 3, 2, 2, 2, 1885, 1886, 3, 2, 2, 2, 1886, 1896, 3, 2, 2, 2, 1887, 1885, 3, 2, 2, 2, 1888, 1893, 5, 112, 57, 2, 1889, 1890, 7, 1024, 2, 2, 1890, 1892, 5, 112, 57, 2, 1891, 1889, 3, 2, 2, 2, 1892, 1895, 3, 2, 2, 2, 1893, 1891, 3, 2, 2, 2, 1893, 1894, 3, 2, 2, 2, 1894, 1897, 3, 2, 2, 2, 1895, 1893, 3, 2, 2, 2, 1896, 1888, 3, 2, 2, 2, 1896, 1897, 3, 2, 2, 2, 1897, 1999, 3, 2, 2, 2, 1898, 1899, 7, 117, 2, 2, 1899, 1900, 5, 526, 264, 2, 1900, 1901, 7, 172, 2, 2, 1901, 1902, 7, 401, 2, 2, 1902, 1903, 7, 561, 2, 2, 1903, 1907, 5, 108, 55, 2, 1904, 1906, 5, 114, 58, 2, 1905, 1904, 3, 2, 2, 2, 1906, 1909, 3, 2, 2, 2, 1907, 1905, 3, 2, 2, 2, 1907, 1908, 3, 2, 2, 2, 1908, 1918, 3, 2, 2, 2, 1909, 1907, 3, 2, 2, 2, 1910, 1915, 5, 112, 57, 2, 1911, 1912, 7, 1024, 2, 2, 1912, 1914, 5, 112, 57, 2, 1913, 1911, 3, 2, 2, 2, 1914, 1917, 3, 2, 2, 2, 1915, 1913, 3, 2, 2, 2, 1915, 1916, 3, 2, 2, 2, 1916, 1919, 3, 2, 2, 2, 1917, 1915, 3, 2, 2, 2, 1918, 1910, 3, 2, 2, 2, 1918, 1919, 3, 2, 2, 2, 1919, 1999, 3, 2, 2, 2, 1920, 1921, 7, 117, 2, 2, 1921, 1922, 5, 526, 264, 2, 1922, 1923, 7, 172, 2, 2, 1923, 1924, 7, 73, 2, 2, 1924, 1925, 7, 1022, 2, 2, 1925, 1930, 5, 108, 55, 2, 1926, 1927, 7, 1024, 2, 2, 1927, 1929, 5, 108, 55, 2, 1928, 1926, 3, 2, 2, 2, 1929, 1932, 3, 2, 2, 2, 1930, 1928, 3, 2, 2, 2, 1930, 1931, 3, 2, 2, 2, 1931, 1933, 3, 2, 2, 2, 1932, 1930, 3, 2, 2, 2, 1933, 1937, 7, 1023, 2, 2, 1934, 1936, 5, 114, 58, 2, 1935, 1934, 3, 2, 2, 2, 1936, 1939, 3, 2, 2, 2, 1937, 1935, 3, 2, 2, 2, 1937, 1938, 3, 2, 2, 2, 1938, 1948, 3, 2, 2, 2, 1939, 1937, 3, 2, 2, 2, 1940, 1945, 5, 112, 57, 2, 1941, 1942, 7, 1024, 2, 2, 1942, 1944, 5, 112, 57, 2, 1943, 1941, 3, 2, 2, 2, 1944, 1947, 3, 2, 2, 2, 1945, 1943, 3, 2, 2, 2, 1945, 1946, 3, 2, 2, 2, 1946, 1949, 3, 2, 2, 2, 1947, 1945, 3, 2, 2, 2, 1948, 1940, 3, 2, 2, 2, 1948, 1949, 3, 2, 2, 2, 1949, 1999, 3, 2, 2, 2, 1950, 1951, 7, 117, 2, 2, 1951, 1952, 5, 526, 264, 2, 1952, 1953, 7, 172, 2, 2, 1953, 1954, 7, 73, 2, 2, 1954, 1955, 7, 1022, 2, 2, 1955, 1960, 5, 110, 56, 2, 1956, 1957, 7, 1024, 2, 2, 1957, 1959, 5, 110, 56, 2, 1958, 1956, 3, 2, 2, 2, 1959, 1962, 3, 2, 2, 2, 1960, 1958, 3, 2, 2, 2, 1960, 1961, 3, 2, 2, 2, 1961, 1963, 3, 2, 2, 2, 1962, 1960, 3, 2, 2, 2, 1963, 1967, 7, 1023, 2, 2, 1964, 1966, 5, 114, 58, 2, 1965, 1964, 3, 2, 2, 2, 1966, 1969, 3, 2, 2, 2, 1967, 1965, 3, 2, 2, 2, 1967, 1968, 3, 2, 2, 2, 1968, 1978, 3, 2, 2, 2, 1969, 1967, 3, 2, 2, 2, 1970, 1975, 5, 112, 57, 2, 1971, 1972, 7, 1024, 2, 2, 1972, 1974, 5, 112, 57, 2, 1973, 1971, 3, 2, 2, 2, 1974, 1977, 3, 2, 2, 2, 1975, 1973, 3, 2, 2, 2, 1975, 1976, 3, 2, 2, 2, 1976, 1979, 3, 2, 2, 2, 1977, 1975, 3, 2, 2, 2, 1978, 1970, 3, 2, 2, 2, 1978, 1979, 3, 2, 2, 2, 1979, 1999, 3, 2, 2, 2, 1980, 1981, 7, 117, 2, 2, 1981, 1985, 5, 526, 264, 2, 1982, 1984, 5, 114, 58, 2, 1983, 1982, 3, 2, 2, 2, 1984, 1987, 3, 2, 2, 2, 1985, 1983, 3, 2, 2, 2, 1985, 1986, 3, 2, 2, 2, 1986, 1996, 3, 2, 2, 2, 1987, 1985, 3, 2, 2, 2, 1988, 1993, 5, 112, 57, 2, 1989, 1990, 7, 1024, 2, 2, 1990, 1992, 5, 112, 57, 2, 1991, 1989, 3, 2, 2, 2, 1992, 1995, 3, 2, 2, 2, 1993, 1991, 3, 2, 2, 2, 1993, 1994, 3, 2, 2, 2, 1994, 1997, 3, 2, 2, 2, 1995, 1993, 3, 2, 2, 2, 1996, 1988, 3, 2, 2, 2, 1996, 1997, 3, 2, 2, 2, 1997, 1999, 3, 2, 2, 2, 1998, 1867, 3, 2, 2, 2, 1998, 1898, 3, 2, 2, 2, 1998, 1920, 3, 2, 2, 2, 1998, 1950, 3, 2, 2, 2, 1998, 1980, 3, 2, 2, 2, 1999, 107, 3, 2, 2, 2, 2000, 2004, 5, 544, 273, 2, 2001, 2004, 5, 604, 303, 2, 2002, 2004, 7, 101, 2, 2, 2003, 2000, 3, 2, 2, 2, 2003, 2001, 3, 2, 2, 2, 2003, 2002, 3, 2, 2, 2, 2004, 109, 3, 2, 2, 2, 2005, 2006, 7, 1022, 2, 2, 2006, 2009, 5, 108, 55, 2, 2007, 2008, 7, 1024, 2, 2, 2008, 2010, 5, 108, 55, 2, 2009, 2007, 3, 2, 2, 2, 2010, 2011, 3, 2, 2, 2, 2011, 2009, 3, 2, 2, 2, 2011, 2012, 3, 2, 2, 2, 2012, 2013, 3, 2, 2, 2, 2013, 2014, 7, 1023, 2, 2, 2014, 111, 3, 2, 2, 2, 2015, 2016, 7, 552, 2, 2, 2016, 2020, 5, 526, 264, 2, 2017, 2019, 5, 114, 58, 2, 2018, 2017, 3, 2, 2, 2, 2019, 2022, 3, 2, 2, 2, 2020, 2018, 3, 2, 2, 2, 2020, 2021, 3, 2, 2, 2, 2021, 113, 3, 2, 2, 2, 2022, 2020, 3, 2, 2, 2, 2023, 2025, 7, 547, 2, 2, 2024, 2023, 3, 2, 2, 2, 2024, 2025, 3, 2, 2, 2, 2025, 2026, 3, 2, 2, 2, 2026, 2028, 7, 344, 2, 2, 2027, 2029, 7, 1013, 2, 2, 2028, 2027, 3, 2, 2, 2, 2028, 2029, 3, 2, 2, 2, 2029, 2030, 3, 2, 2, 2, 2030, 2069, 5, 516, 259, 2, 2031, 2033, 7, 307, 2, 2, 2032, 2034, 7, 1013, 2, 2, 2033, 2032, 3, 2, 2, 2, 2033, 2034, 3, 2, 2, 2, 2034, 2035, 3, 2, 2, 2, 2035, 2069, 7, 1037, 2, 2, 2036, 2037, 7, 325, 2, 2, 2037, 2039, 7, 332, 2, 2, 2038, 2040, 7, 1013, 2, 2, 2039, 2038, 3, 2, 2, 2, 2039, 2040, 3, 2, 2, 2, 2040, 2041, 3, 2, 2, 2, 2041, 2069, 7, 1037, 2, 2, 2042, 2043, 7, 74, 2, 2, 2043, 2045, 7, 332, 2, 2, 2044, 2046, 7, 1013, 2, 2, 2045, 2044, 3, 2, 2, 2, 2045, 2046, 3, 2, 2, 2, 2046, 2047, 3, 2, 2, 2, 2047, 2069, 7, 1037, 2, 2, 2048, 2050, 7, 430, 2, 2, 2049, 2051, 7, 1013, 2, 2, 2050, 2049, 3, 2, 2, 2, 2050, 2051, 3, 2, 2, 2, 2051, 2052, 3, 2, 2, 2, 2052, 2069, 5, 532, 267, 2, 2053, 2055, 7, 439, 2, 2, 2054, 2056, 7, 1013, 2, 2, 2055, 2054, 3, 2, 2, 2, 2055, 2056, 3, 2, 2, 2, 2056, 2057, 3, 2, 2, 2, 2057, 2069, 5, 532, 267, 2, 2058, 2060, 7, 558, 2, 2, 2059, 2061, 7, 1013, 2, 2, 2060, 2059, 3, 2, 2, 2, 2060, 2061, 3, 2, 2, 2, 2061, 2062, 3, 2, 2, 2, 2062, 2069, 5, 526, 264, 2, 2063, 2065, 7, 451, 2, 2, 2064, 2066, 7, 1013, 2, 2, 2065, 2064, 3, 2, 2, 2, 2065, 2066, 3, 2, 2, 2, 2066, 2067, 3, 2, 2, 2, 2067, 2069, 5, 526, 264, 2, 2068, 2024, 3, 2, 2, 2, 2068, 2031, 3, 2, 2, 2, 2068, 2036, 3, 2, 2, 2, 2068, 2042, 3, 2, 2, 2, 2068, 2048, 3, 2, 2, 2, 2068, 2053, 3, 2, 2, 2, 2068, 2058, 3, 2, 2, 2, 2068, 2063, 3, 2, 2, 2, 2069, 115, 3, 2, 2, 2, 2070, 2071, 7, 9, 2, 2, 2071, 2073, 9, 2, 2, 2, 2072, 2074, 5, 526, 264, 2, 2073, 2072, 3, 2, 2, 2, 2073, 2074, 3, 2, 2, 2, 2074, 2076, 3, 2, 2, 2, 2075, 2077, 5, 52, 27, 2, 2076, 2075, 3, 2, 2, 2, 2077, 2078, 3, 2, 2, 2, 2078, 2076, 3, 2, 2, 2, 2078, 2079, 3, 2, 2, 2, 2079, 2089, 3, 2, 2, 2, 2080, 2081, 7, 9, 2, 2, 2081, 2082, 9, 2, 2, 2, 2082, 2083, 5, 526, 264, 2, 2083, 2084, 7, 573, 2, 2, 2084, 2085, 7, 325, 2, 2, 2085, 2086, 7, 332, 2, 2, 2086, 2087, 7, 445, 2, 2, 2087, 2089, 3, 2, 2, 2, 2088, 2070, 3, 2, 2, 2, 2088, 2080, 3, 2, 2, 2, 2089, 117, 3, 2, 2, 2, 2090, 2092, 7, 9, 2, 2, 2091, 2093, 5, 54, 28, 2, 2092, 2091, 3, 2, 2, 2, 2092, 2093, 3, 2, 2, 2, 2093, 2094, 3, 2, 2, 2, 2094, 2095, 7, 350, 2, 2, 2095, 2099, 5, 500, 251, 2, 2096, 2097, 7, 108, 2, 2, 2097, 2098, 7, 517, 2, 2, 2098, 2100, 5, 56, 29, 2, 2099, 2096, 3, 2, 2, 2, 2099, 2100, 3, 2, 2, 2, 2100, 2107, 3, 2, 2, 2, 2101, 2102, 7, 108, 2, 2, 2102, 2104, 7, 310, 2, 2, 2103, 2105, 7, 104, 2, 2, 2104, 2103, 3, 2, 2, 2, 2104, 2105, 3, 2, 2, 2, 2105, 2106, 3, 2, 2, 2, 2106, 2108, 7, 478, 2, 2, 2107, 2101, 3, 2, 2, 2, 2107, 2108, 3, 2, 2, 2, 2108, 2112, 3, 2, 2, 2, 2109, 2110, 7, 127, 2, 2, 2110, 2111, 7, 159, 2, 2, 2111, 2113, 5, 500, 251, 2, 2112, 2109, 3, 2, 2, 2, 2112, 2113, 3, 2, 2, 2, 2113, 2115, 3, 2, 2, 2, 2114, 2116, 5, 64, 33, 2, 2115, 2114, 3, 2, 2, 2, 2115, 2116, 3, 2, 2, 2, 2116, 2119, 3, 2, 2, 2, 2117, 2118, 7, 307, 2, 2, 2118, 2120, 7, 1037, 2, 2, 2119, 2117, 3, 2, 2, 2, 2119, 2120, 3, 2, 2, 2, 2120, 2123, 3, 2, 2, 2, 2121, 2122, 7, 336, 2, 2, 2122, 2124, 5, 348, 175, 2, 2123, 2121, 3, 2, 2, 2, 2123, 2124, 3, 2, 2, 2, 2124, 119, 3, 2, 2, 2, 2125, 2126, 7, 9, 2, 2, 2126, 2127, 7, 370, 2, 2, 2127, 2131, 5, 500, 251, 2, 2128, 2130, 5, 74, 38, 2, 2129, 2128, 3, 2, 2, 2, 2130, 2133, 3, 2, 2, 2, 2131, 2129, 3, 2, 2, 2, 2131, 2132, 3, 2, 2, 2, 2132, 121, 3, 2, 2, 2, 2133, 2131, 3, 2, 2, 2, 2134, 2135, 7, 9, 2, 2, 2135, 2136, 7, 388, 2, 2, 2136, 2137, 7, 512, 2, 2, 2137, 2138, 7, 683, 2, 2, 2138, 2139, 7, 407, 2, 2, 2139, 2140, 7, 84, 2, 2, 2140, 123, 3, 2, 2, 2, 2141, 2142, 7, 9, 2, 2, 2142, 2143, 7, 405, 2, 2, 2143, 2144, 7, 68, 2, 2, 2144, 2145, 5, 526, 264, 2, 2145, 2146, 7, 7, 2, 2, 2146, 2147, 7, 568, 2, 2, 2147, 2153, 7, 1037, 2, 2, 2148, 2150, 7, 384, 2, 2, 2149, 2151, 7, 1013, 2, 2, 2150, 2149, 3, 2, 2, 2, 2150, 2151, 3, 2, 2, 2, 2151, 2152, 3, 2, 2, 2, 2152, 2154, 5, 534, 268, 2, 2153, 2148, 3, 2, 2, 2, 2153, 2154, 3, 2, 2, 2, 2154, 2156, 3, 2, 2, 2, 2155, 2157, 7, 583, 2, 2, 2156, 2155, 3, 2, 2, 2, 2156, 2157, 3, 2, 2, 2, 2157, 2158, 3, 2, 2, 2, 2158, 2160, 7, 344, 2, 2, 2159, 2161, 7, 1013, 2, 2, 2160, 2159, 3, 2, 2, 2, 2160, 2161, 3, 2, 2, 2, 2161, 2162, 3, 2, 2, 2, 2162, 2163, 5, 516, 259, 2, 2163, 125, 3, 2, 2, 2, 2164, 2165, 7, 9, 2, 2, 2165, 2166, 7, 119, 2, 2, 2166, 2170, 5, 500, 251, 2, 2167, 2169, 5, 74, 38, 2, 2168, 2167, 3, 2, 2, 2, 2169, 2172, 3, 2, 2, 2, 2170, 2168, 3, 2, 2, 2, 2170, 2171, 3, 2, 2, 2, 2171, 127, 3, 2, 2, 2, 2172, 2170, 3, 2, 2, 2, 2173, 2174, 7, 9, 2, 2, 2174, 2175, 7, 519, 2, 2, 2175, 2176, 5, 526, 264, 2, 2176, 2177, 7, 462, 2, 2, 2177, 2178, 7, 1022, 2, 2, 2178, 2183, 5, 76, 39, 2, 2179, 2180, 7, 1024, 2, 2, 2180, 2182, 5, 76, 39, 2, 2181, 2179, 3, 2, 2, 2, 2182, 2185, 3, 2, 2, 2, 2183, 2181, 3, 2, 2, 2, 2183, 2184, 3, 2, 2, 2, 2184, 2186, 3, 2, 2, 2, 2185, 2183, 3, 2, 2, 2, 2186, 2187, 7, 1023, 2, 2, 2187, 129, 3, 2, 2, 2, 2188, 2190, 7, 9, 2, 2, 2189, 2191, 9, 3, 2, 2, 2190, 2189, 3, 2, 2, 2, 2190, 2191, 3, 2, 2, 2, 2191, 2193, 3, 2, 2, 2, 2192, 2194, 7, 72, 2, 2, 2193, 2192, 3, 2, 2, 2, 2193, 2194, 3, 2, 2, 2, 2194, 2195, 3, 2, 2, 2, 2195, 2196, 7, 156, 2, 2, 2196, 2205, 5, 502, 252, 2, 2197, 2202, 5, 136, 69, 2, 2198, 2199, 7, 1024, 2, 2, 2199, 2201, 5, 136, 69, 2, 2200, 2198, 3, 2, 2, 2, 2201, 2204, 3, 2, 2, 2, 2202, 2200, 3, 2, 2, 2, 2202, 2203, 3, 2, 2, 2, 2203, 2206, 3, 2, 2, 2, 2204, 2202, 3, 2, 2, 2, 2205, 2197, 3, 2, 2, 2, 2205, 2206, 3, 2, 2, 2, 2206, 2208, 3, 2, 2, 2, 2207, 2209, 5, 100, 51, 2, 2208, 2207, 3, 2, 2, 2, 2208, 2209, 3, 2, 2, 2, 2209, 131, 3, 2, 2, 2, 2210, 2211, 7, 9, 2, 2, 2211, 2212, 7, 558, 2, 2, 2212, 2213, 5, 526, 264, 2, 2213, 2214, 9, 30, 2, 2, 2214, 2215, 7, 326, 2, 2, 2215, 2219, 7, 1037, 2, 2, 2216, 2217, 7, 384, 2, 2, 2217, 2218, 7, 1013, 2, 2, 2218, 2220, 5, 534, 268, 2, 2219, 2216, 3, 2, 2, 2, 2219, 2220, 3, 2, 2, 2, 2220, 2222, 3, 2, 2, 2, 2221, 2223, 7, 583, 2, 2, 2222, 2221, 3, 2, 2, 2, 2222, 2223, 3, 2, 2, 2, 2223, 2224, 3, 2, 2, 2, 2224, 2226, 7, 344, 2, 2, 2225, 2227, 7, 1013, 2, 2, 2226, 2225, 3, 2, 2, 2, 2226, 2227, 3, 2, 2, 2, 2227, 2228, 3, 2, 2, 2, 2228, 2229, 5, 516, 259, 2, 2229, 133, 3, 2, 2, 2, 2230, 2234, 7, 9, 2, 2, 2231, 2232, 7, 276, 2, 2, 2232, 2233, 7, 1013, 2, 2, 2233, 2235, 9, 12, 2, 2, 2234, 2231, 3, 2, 2, 2, 2234, 2235, 3, 2, 2, 2, 2235, 2237, 3, 2, 2, 2, 2236, 2238, 5, 54, 28, 2, 2237, 2236, 3, 2, 2, 2, 2237, 2238, 3, 2, 2, 2, 2238, 2242, 3, 2, 2, 2, 2239, 2240, 7, 145, 2, 2, 2240, 2241, 7, 518, 2, 2, 2241, 2243, 9, 13, 2, 2, 2242, 2239, 3, 2, 2, 2, 2242, 2243, 3, 2, 2, 2, 2243, 2244, 3, 2, 2, 2, 2244, 2245, 7, 580, 2, 2, 2245, 2250, 5, 500, 251, 2, 2246, 2247, 7, 1022, 2, 2, 2247, 2248, 5, 558, 280, 2, 2248, 2249, 7, 1023, 2, 2, 2249, 2251, 3, 2, 2, 2, 2250, 2246, 3, 2, 2, 2, 2250, 2251, 3, 2, 2, 2, 2251, 2252, 3, 2, 2, 2, 2252, 2253, 7, 13, 2, 2, 2253, 2260, 5, 182, 92, 2, 2254, 2256, 7, 176, 2, 2, 2255, 2257, 9, 14, 2, 2, 2256, 2255, 3, 2, 2, 2, 2256, 2257, 3, 2, 2, 2, 2257, 2258, 3, 2, 2, 2, 2258, 2259, 7, 25, 2, 2, 2259, 2261, 7, 110, 2, 2, 2260, 2254, 3, 2, 2, 2, 2260, 2261, 3, 2, 2, 2, 2261, 135, 3, 2, 2, 2, 2262, 2269, 5, 96, 49, 2, 2263, 2265, 7, 1024, 2, 2, 2264, 2263, 3, 2, 2, 2, 2264, 2265, 3, 2, 2, 2, 2265, 2266, 3, 2, 2, 2, 2266, 2268, 5, 96, 49, 2, 2267, 2264, 3, 2, 2, 2, 2268, 2271, 3, 2, 2, 2, 2269, 2267, 3, 2, 2, 2, 2269, 2270, 3, 2, 2, 2, 2270, 2626, 3, 2, 2, 2, 2271, 2269, 3, 2, 2, 2, 2272, 2274, 7, 7, 2, 2, 2273, 2275, 7, 27, 2, 2, 2274, 2273, 3, 2, 2, 2, 2274, 2275, 3, 2, 2, 2, 2275, 2276, 3, 2, 2, 2, 2276, 2277, 5, 526, 264, 2, 2277, 2281, 5, 82, 42, 2, 2278, 2282, 7, 364, 2, 2, 2279, 2280, 7, 274, 2, 2, 2280, 2282, 5, 526, 264, 2, 2281, 2278, 3, 2, 2, 2, 2281, 2279, 3, 2, 2, 2, 2281, 2282, 3, 2, 2, 2, 2282, 2626, 3, 2, 2, 2, 2283, 2285, 7, 7, 2, 2, 2284, 2286, 7, 27, 2, 2, 2285, 2284, 3, 2, 2, 2, 2285, 2286, 3, 2, 2, 2, 2286, 2287, 3, 2, 2, 2, 2287, 2288, 7, 1022, 2, 2, 2288, 2289, 5, 526, 264, 2, 2289, 2296, 5, 82, 42, 2, 2290, 2291, 7, 1024, 2, 2, 2291, 2292, 5, 526, 264, 2, 2292, 2293, 5, 82, 42, 2, 2293, 2295, 3, 2, 2, 2, 2294, 2290, 3, 2, 2, 2, 2295, 2298, 3, 2, 2, 2, 2296, 2294, 3, 2, 2, 2, 2296, 2297, 3, 2, 2, 2, 2297, 2299, 3, 2, 2, 2, 2298, 2296, 3, 2, 2, 2, 2299, 2300, 7, 1023, 2, 2, 2300, 2626, 3, 2, 2, 2, 2301, 2302, 7, 7, 2, 2, 2302, 2304, 9, 20, 2, 2, 2303, 2305, 5, 526, 264, 2, 2304, 2303, 3, 2, 2, 2, 2304, 2305, 3, 2, 2, 2, 2305, 2307, 3, 2, 2, 2, 2306, 2308, 5, 66, 34, 2, 2307, 2306, 3, 2, 2, 2, 2307, 2308, 3, 2, 2, 2, 2308, 2309, 3, 2, 2, 2, 2309, 2313, 5, 562, 282, 2, 2310, 2312, 5, 68, 35, 2, 2311, 2310, 3, 2, 2, 2, 2312, 2315, 3, 2, 2, 2, 2313, 2311, 3, 2, 2, 2, 2313, 2314, 3, 2, 2, 2, 2314, 2626, 3, 2, 2, 2, 2315, 2313, 3, 2, 2, 2, 2316, 2321, 7, 7, 2, 2, 2317, 2319, 7, 29, 2, 2, 2318, 2320, 5, 526, 264, 2, 2319, 2318, 3, 2, 2, 2, 2319, 2320, 3, 2, 2, 2, 2320, 2322, 3, 2, 2, 2, 2321, 2317, 3, 2, 2, 2, 2321, 2322, 3, 2, 2, 2, 2322, 2323, 3, 2, 2, 2, 2323, 2324, 7, 118, 2, 2, 2324, 2326, 7, 84, 2, 2, 2325, 2327, 5, 526, 264, 2, 2326, 2325, 3, 2, 2, 2, 2326, 2327, 3, 2, 2, 2, 2327, 2329, 3, 2, 2, 2, 2328, 2330, 5, 66, 34, 2, 2329, 2328, 3, 2, 2, 2, 2329, 2330, 3, 2, 2, 2, 2330, 2331, 3, 2, 2, 2, 2331, 2335, 5, 562, 282, 2, 2332, 2334, 5, 68, 35, 2, 2333, 2332, 3, 2, 2, 2, 2334, 2337, 3, 2, 2, 2, 2335, 2333, 3, 2, 2, 2, 2335, 2336, 3, 2, 2, 2, 2336, 2626, 3, 2, 2, 2, 2337, 2335, 3, 2, 2, 2, 2338, 2343, 7, 7, 2, 2, 2339, 2341, 7, 29, 2, 2, 2340, 2342, 5, 526, 264, 2, 2341, 2340, 3, 2, 2, 2, 2341, 2342, 3, 2, 2, 2, 2342, 2344, 3, 2, 2, 2, 2343, 2339, 3, 2, 2, 2, 2343, 2344, 3, 2, 2, 2, 2344, 2345, 3, 2, 2, 2, 2345, 2347, 7, 165, 2, 2, 2346, 2348, 9, 20, 2, 2, 2347, 2346, 3, 2, 2, 2, 2347, 2348, 3, 2, 2, 2, 2348, 2350, 3, 2, 2, 2, 2349, 2351, 5, 526, 264, 2, 2350, 2349, 3, 2, 2, 2, 2350, 2351, 3, 2, 2, 2, 2351, 2353, 3, 2, 2, 2, 2352, 2354, 5, 66, 34, 2, 2353, 2352, 3, 2, 2, 2, 2353, 2354, 3, 2, 2, 2, 2354, 2355, 3, 2, 2, 2, 2355, 2359, 5, 562, 282, 2, 2356, 2358, 5, 68, 35, 2, 2357, 2356, 3, 2, 2, 2, 2358, 2361, 3, 2, 2, 2, 2359, 2357, 3, 2, 2, 2, 2359, 2360, 3, 2, 2, 2, 2360, 2626, 3, 2, 2, 2, 2361, 2359, 3, 2, 2, 2, 2362, 2363, 7, 7, 2, 2, 2363, 2365, 9, 22, 2, 2, 2364, 2366, 9, 20, 2, 2, 2365, 2364, 3, 2, 2, 2, 2365, 2366, 3, 2, 2, 2, 2366, 2368, 3, 2, 2, 2, 2367, 2369, 5, 526, 264, 2, 2368, 2367, 3, 2, 2, 2, 2368, 2369, 3, 2, 2, 2, 2369, 2370, 3, 2, 2, 2, 2370, 2374, 5, 562, 282, 2, 2371, 2373, 5, 68, 35, 2, 2372, 2371, 3, 2, 2, 2, 2373, 2376, 3, 2, 2, 2, 2374, 2372, 3, 2, 2, 2, 2374, 2375, 3, 2, 2, 2, 2375, 2626, 3, 2, 2, 2, 2376, 2374, 3, 2, 2, 2, 2377, 2382, 7, 7, 2, 2, 2378, 2380, 7, 29, 2, 2, 2379, 2381, 5, 526, 264, 2, 2380, 2379, 3, 2, 2, 2, 2380, 2381, 3, 2, 2, 2, 2381, 2383, 3, 2, 2, 2, 2382, 2378, 3, 2, 2, 2, 2382, 2383, 3, 2, 2, 2, 2383, 2384, 3, 2, 2, 2, 2384, 2385, 7, 62, 2, 2, 2385, 2387, 7, 84, 2, 2, 2386, 2388, 5, 526, 264, 2, 2387, 2386, 3, 2, 2, 2, 2387, 2388, 3, 2, 2, 2, 2388, 2389, 3, 2, 2, 2, 2389, 2390, 5, 562, 282, 2, 2390, 2391, 5, 88, 45, 2, 2391, 2626, 3, 2, 2, 2, 2392, 2397, 7, 7, 2, 2, 2393, 2395, 7, 29, 2, 2, 2394, 2396, 5, 526, 264, 2, 2395, 2394, 3, 2, 2, 2, 2395, 2396, 3, 2, 2, 2, 2396, 2398, 3, 2, 2, 2, 2397, 2393, 3, 2, 2, 2, 2397, 2398, 3, 2, 2, 2, 2398, 2399, 3, 2, 2, 2, 2399, 2400, 7, 25, 2, 2, 2400, 2401, 7, 1022, 2, 2, 2401, 2402, 5, 604, 303, 2, 2402, 2403, 7, 1023, 2, 2, 2403, 2626, 3, 2, 2, 2, 2404, 2406, 7, 276, 2, 2, 2405, 2407, 7, 1013, 2, 2, 2406, 2405, 3, 2, 2, 2, 2406, 2407, 3, 2, 2, 2, 2407, 2408, 3, 2, 2, 2, 2408, 2626, 9, 5, 2, 2, 2409, 2411, 7, 9, 2, 2, 2410, 2412, 7, 27, 2, 2, 2411, 2410, 3, 2, 2, 2, 2411, 2412, 3, 2, 2, 2, 2412, 2413, 3, 2, 2, 2, 2413, 2419, 5, 526, 264, 2, 2414, 2415, 7, 140, 2, 2, 2415, 2416, 7, 40, 2, 2, 2416, 2420, 5, 574, 288, 2, 2417, 2418, 7, 49, 2, 2, 2418, 2420, 7, 40, 2, 2, 2419, 2414, 3, 2, 2, 2, 2419, 2417, 3, 2, 2, 2, 2420, 2626, 3, 2, 2, 2, 2421, 2423, 7, 23, 2, 2, 2422, 2424, 7, 27, 2, 2, 2423, 2422, 3, 2, 2, 2, 2423, 2424, 3, 2, 2, 2, 2424, 2425, 3, 2, 2, 2, 2425, 2426, 5, 526, 264, 2, 2426, 2427, 5, 526, 264, 2, 2427, 2431, 5, 82, 42, 2, 2428, 2432, 7, 364, 2, 2, 2429, 2430, 7, 274, 2, 2, 2430, 2432, 5, 526, 264, 2, 2431, 2428, 3, 2, 2, 2, 2431, 2429, 3, 2, 2, 2, 2431, 2432, 3, 2, 2, 2, 2432, 2626, 3, 2, 2, 2, 2433, 2434, 7, 127, 2, 2, 2434, 2435, 7, 27, 2, 2, 2435, 2436, 5, 526, 264, 2, 2436, 2437, 7, 159, 2, 2, 2437, 2438, 5, 526, 264, 2, 2438, 2626, 3, 2, 2, 2, 2439, 2441, 7, 95, 2, 2, 2440, 2442, 7, 1013, 2, 2, 2441, 2440, 3, 2, 2, 2, 2441, 2442, 3, 2, 2, 2, 2442, 2443, 3, 2, 2, 2, 2443, 2626, 9, 6, 2, 2, 2444, 2446, 7, 441, 2, 2, 2445, 2447, 7, 27, 2, 2, 2446, 2445, 3, 2, 2, 2, 2446, 2447, 3, 2, 2, 2, 2447, 2448, 3, 2, 2, 2, 2448, 2449, 5, 526, 264, 2, 2449, 2453, 5, 82, 42, 2, 2450, 2454, 7, 364, 2, 2, 2451, 2452, 7, 274, 2, 2, 2452, 2454, 5, 526, 264, 2, 2453, 2450, 3, 2, 2, 2, 2453, 2451, 3, 2, 2, 2, 2453, 2454, 3, 2, 2, 2, 2454, 2626, 3, 2, 2, 2, 2455, 2457, 7, 49, 2, 2, 2456, 2458, 7, 27, 2, 2, 2457, 2456, 3, 2, 2, 2, 2457, 2458, 3, 2, 2, 2, 2458, 2459, 3, 2, 2, 2, 2459, 2461, 5, 526, 264, 2, 2460, 2462, 7, 132, 2, 2, 2461, 2460, 3, 2, 2, 2, 2461, 2462, 3, 2, 2, 2, 2462, 2626, 3, 2, 2, 2, 2463, 2464, 7, 49, 2, 2, 2464, 2465, 7, 118, 2, 2, 2465, 2626, 7, 84, 2, 2, 2466, 2467, 7, 127, 2, 2, 2467, 2468, 9, 20, 2, 2, 2468, 2469, 5, 526, 264, 2, 2469, 2470, 7, 159, 2, 2, 2470, 2471, 5, 526, 264, 2, 2471, 2626, 3, 2, 2, 2, 2472, 2473, 7, 9, 2, 2, 2473, 2474, 7, 74, 2, 2, 2474, 2475, 5, 526, 264, 2, 2475, 2476, 9, 31, 2, 2, 2476, 2626, 3, 2, 2, 2, 2477, 2478, 7, 49, 2, 2, 2478, 2479, 9, 20, 2, 2, 2479, 2626, 5, 526, 264, 2, 2480, 2481, 7, 49, 2, 2, 2481, 2482, 7, 62, 2, 2, 2482, 2483, 7, 84, 2, 2, 2483, 2626, 5, 526, 264, 2, 2484, 2485, 7, 333, 2, 2, 2485, 2626, 7, 85, 2, 2, 2486, 2487, 7, 340, 2, 2, 2487, 2626, 7, 85, 2, 2, 2488, 2490, 7, 127, 2, 2, 2489, 2491, 9, 32, 2, 2, 2490, 2489, 3, 2, 2, 2, 2490, 2491, 3, 2, 2, 2, 2491, 2494, 3, 2, 2, 2, 2492, 2495, 5, 526, 264, 2, 2493, 2495, 5, 500, 251, 2, 2494, 2492, 3, 2, 2, 2, 2494, 2493, 3, 2, 2, 2, 2495, 2626, 3, 2, 2, 2, 2496, 2497, 7, 113, 2, 2, 2497, 2498, 7, 18, 2, 2, 2498, 2626, 5, 558, 280, 2, 2499, 2500, 7, 31, 2, 2, 2500, 2501, 7, 159, 2, 2, 2501, 2502, 7, 24, 2, 2, 2502, 2503, 7, 140, 2, 2, 2503, 2506, 5, 512, 257, 2, 2504, 2505, 7, 26, 2, 2, 2505, 2507, 5, 514, 258, 2, 2506, 2504, 3, 2, 2, 2, 2506, 2507, 3, 2, 2, 2, 2507, 2626, 3, 2, 2, 2, 2508, 2510, 7, 40, 2, 2, 2509, 2508, 3, 2, 2, 2, 2509, 2510, 3, 2, 2, 2, 2510, 2511, 3, 2, 2, 2, 2511, 2512, 7, 24, 2, 2, 2512, 2513, 7, 140, 2, 2, 2513, 2514, 7, 1013, 2, 2, 2514, 2518, 5, 512, 257, 2, 2515, 2516, 7, 26, 2, 2, 2516, 2517, 7, 1013, 2, 2, 2517, 2519, 5, 514, 258, 2, 2518, 2515, 3, 2, 2, 2, 2518, 2519, 3, 2, 2, 2, 2519, 2626, 3, 2, 2, 2, 2520, 2521, 7, 334, 2, 2, 2521, 2626, 7, 558, 2, 2, 2522, 2523, 7, 382, 2, 2, 2523, 2626, 7, 558, 2, 2, 2524, 2626, 7, 61, 2, 2, 2525, 2526, 9, 33, 2, 2, 2526, 2626, 7, 577, 2, 2, 2527, 2528, 7, 7, 2, 2, 2528, 2529, 7, 117, 2, 2, 2529, 2530, 7, 1022, 2, 2, 2530, 2535, 5, 106, 54, 2, 2531, 2532, 7, 1024, 2, 2, 2532, 2534, 5, 106, 54, 2, 2533, 2531, 3, 2, 2, 2, 2534, 2537, 3, 2, 2, 2, 2535, 2533, 3, 2, 2, 2, 2535, 2536, 3, 2, 2, 2, 2536, 2538, 3, 2, 2, 2, 2537, 2535, 3, 2, 2, 2, 2538, 2539, 7, 1023, 2, 2, 2539, 2626, 3, 2, 2, 2, 2540, 2541, 7, 49, 2, 2, 2541, 2542, 7, 117, 2, 2, 2542, 2626, 5, 558, 280, 2, 2543, 2544, 7, 334, 2, 2, 2544, 2547, 7, 117, 2, 2, 2545, 2548, 5, 558, 280, 2, 2546, 2548, 7, 8, 2, 2, 2547, 2545, 3, 2, 2, 2, 2547, 2546, 3, 2, 2, 2, 2548, 2549, 3, 2, 2, 2, 2549, 2626, 7, 558, 2, 2, 2550, 2551, 7, 382, 2, 2, 2551, 2554, 7, 117, 2, 2, 2552, 2555, 5, 558, 280, 2, 2553, 2555, 7, 8, 2, 2, 2554, 2552, 3, 2, 2, 2, 2554, 2553, 3, 2, 2, 2, 2555, 2556, 3, 2, 2, 2, 2556, 2626, 7, 558, 2, 2, 2557, 2558, 7, 566, 2, 2, 2558, 2561, 7, 117, 2, 2, 2559, 2562, 5, 558, 280, 2, 2560, 2562, 7, 8, 2, 2, 2561, 2559, 3, 2, 2, 2, 2561, 2560, 3, 2, 2, 2, 2562, 2626, 3, 2, 2, 2, 2563, 2564, 7, 302, 2, 2, 2564, 2565, 7, 117, 2, 2, 2565, 2626, 5, 532, 267, 2, 2566, 2567, 7, 495, 2, 2, 2567, 2568, 7, 117, 2, 2, 2568, 2569, 5, 558, 280, 2, 2569, 2570, 7, 80, 2, 2, 2570, 2571, 7, 1022, 2, 2, 2571, 2576, 5, 106, 54, 2, 2572, 2573, 7, 1024, 2, 2, 2573, 2575, 5, 106, 54, 2, 2574, 2572, 3, 2, 2, 2, 2575, 2578, 3, 2, 2, 2, 2576, 2574, 3, 2, 2, 2, 2576, 2577, 3, 2, 2, 2, 2577, 2579, 3, 2, 2, 2, 2578, 2576, 3, 2, 2, 2, 2579, 2580, 7, 1023, 2, 2, 2580, 2626, 3, 2, 2, 2, 2581, 2582, 7, 353, 2, 2, 2582, 2583, 7, 117, 2, 2, 2583, 2584, 5, 526, 264, 2, 2584, 2585, 7, 176, 2, 2, 2585, 2586, 7, 156, 2, 2, 2586, 2589, 5, 502, 252, 2, 2587, 2588, 9, 33, 2, 2, 2588, 2590, 7, 577, 2, 2, 2589, 2587, 3, 2, 2, 2, 2589, 2590, 3, 2, 2, 2, 2590, 2626, 3, 2, 2, 2, 2591, 2592, 7, 11, 2, 2, 2592, 2595, 7, 117, 2, 2, 2593, 2596, 5, 558, 280, 2, 2594, 2596, 7, 8, 2, 2, 2595, 2593, 3, 2, 2, 2, 2595, 2594, 3, 2, 2, 2, 2596, 2626, 3, 2, 2, 2, 2597, 2598, 7, 25, 2, 2, 2598, 2601, 7, 117, 2, 2, 2599, 2602, 5, 558, 280, 2, 2600, 2602, 7, 8, 2, 2, 2601, 2599, 3, 2, 2, 2, 2601, 2600, 3, 2, 2, 2, 2602, 2626, 3, 2, 2, 2, 2603, 2604, 7, 109, 2, 2, 2604, 2607, 7, 117, 2, 2, 2605, 2608, 5, 558, 280, 2, 2606, 2608, 7, 8, 2, 2, 2607, 2605, 3, 2, 2, 2, 2607, 2606, 3, 2, 2, 2, 2608, 2626, 3, 2, 2, 2, 2609, 2610, 7, 486, 2, 2, 2610, 2613, 7, 117, 2, 2, 2611, 2614, 5, 558, 280, 2, 2612, 2614, 7, 8, 2, 2, 2613, 2611, 3, 2, 2, 2, 2613, 2612, 3, 2, 2, 2, 2614, 2626, 3, 2, 2, 2, 2615, 2616, 7, 496, 2, 2, 2616, 2619, 7, 117, 2, 2, 2617, 2620, 5, 558, 280, 2, 2618, 2620, 7, 8, 2, 2, 2619, 2617, 3, 2, 2, 2, 2619, 2618, 3, 2, 2, 2, 2620, 2626, 3, 2, 2, 2, 2621, 2622, 7, 494, 2, 2, 2622, 2626, 7, 468, 2, 2, 2623, 2624, 7, 573, 2, 2, 2624, 2626, 7, 468, 2, 2, 2625, 2262, 3, 2, 2, 2, 2625, 2272, 3, 2, 2, 2, 2625, 2283, 3, 2, 2, 2, 2625, 2301, 3, 2, 2, 2, 2625, 2316, 3, 2, 2, 2, 2625, 2338, 3, 2, 2, 2, 2625, 2362, 3, 2, 2, 2, 2625, 2377, 3, 2, 2, 2, 2625, 2392, 3, 2, 2, 2, 2625, 2404, 3, 2, 2, 2, 2625, 2409, 3, 2, 2, 2, 2625, 2421, 3, 2, 2, 2, 2625, 2433, 3, 2, 2, 2, 2625, 2439, 3, 2, 2, 2, 2625, 2444, 3, 2, 2, 2, 2625, 2455, 3, 2, 2, 2, 2625, 2463, 3, 2, 2, 2, 2625, 2466, 3, 2, 2, 2, 2625, 2472, 3, 2, 2, 2, 2625, 2477, 3, 2, 2, 2, 2625, 2480, 3, 2, 2, 2, 2625, 2484, 3, 2, 2, 2, 2625, 2486, 3, 2, 2, 2, 2625, 2488, 3, 2, 2, 2, 2625, 2496, 3, 2, 2, 2, 2625, 2499, 3, 2, 2, 2, 2625, 2509, 3, 2, 2, 2, 2625, 2520, 3, 2, 2, 2, 2625, 2522, 3, 2, 2, 2, 2625, 2524, 3, 2, 2, 2, 2625, 2525, 3, 2, 2, 2, 2625, 2527, 3, 2, 2, 2, 2625, 2540, 3, 2, 2, 2, 2625, 2543, 3, 2, 2, 2, 2625, 2550, 3, 2, 2, 2, 2625, 2557, 3, 2, 2, 2, 2625, 2563, 3, 2, 2, 2, 2625, 2566, 3, 2, 2, 2, 2625, 2581, 3, 2, 2, 2, 2625, 2591, 3, 2, 2, 2, 2625, 2597, 3, 2, 2, 2, 2625, 2603, 3, 2, 2, 2, 2625, 2609, 3, 2, 2, 2, 2625, 2615, 3, 2, 2, 2, 2625, 2621, 3, 2, 2, 2, 2625, 2623, 3, 2, 2, 2, 2626, 137, 3, 2, 2, 2, 2627, 2628, 7, 49, 2, 2, 2628, 2630, 9, 2, 2, 2, 2629, 2631, 5, 580, 291, 2, 2630, 2629, 3, 2, 2, 2, 2630, 2631, 3, 2, 2, 2, 2631, 2632, 3, 2, 2, 2, 2632, 2633, 5, 526, 264, 2, 2633, 139, 3, 2, 2, 2, 2634, 2635, 7, 49, 2, 2, 2635, 2637, 7, 350, 2, 2, 2636, 2638, 5, 580, 291, 2, 2637, 2636, 3, 2, 2, 2, 2637, 2638, 3, 2, 2, 2, 2638, 2639, 3, 2, 2, 2, 2639, 2640, 5, 500, 251, 2, 2640, 141, 3, 2, 2, 2, 2641, 2642, 7, 49, 2, 2, 2642, 2644, 7, 74, 2, 2, 2643, 2645, 9, 3, 2, 2, 2644, 2643, 3, 2, 2, 2, 2644, 2645, 3, 2, 2, 2, 2645, 2646, 3, 2, 2, 2, 2646, 2647, 5, 526, 264, 2, 2647, 2648, 7, 108, 2, 2, 2648, 2661, 5, 502, 252, 2, 2649, 2651, 7, 276, 2, 2, 2650, 2652, 7, 1013, 2, 2, 2651, 2650, 3, 2, 2, 2, 2651, 2652, 3, 2, 2, 2, 2652, 2653, 3, 2, 2, 2, 2653, 2660, 9, 5, 2, 2, 2654, 2656, 7, 95, 2, 2, 2655, 2657, 7, 1013, 2, 2, 2656, 2655, 3, 2, 2, 2, 2656, 2657, 3, 2, 2, 2, 2657, 2658, 3, 2, 2, 2, 2658, 2660, 9, 6, 2, 2, 2659, 2649, 3, 2, 2, 2, 2659, 2654, 3, 2, 2, 2, 2660, 2663, 3, 2, 2, 2, 2661, 2659, 3, 2, 2, 2, 2661, 2662, 3, 2, 2, 2, 2662, 143, 3, 2, 2, 2, 2663, 2661, 3, 2, 2, 2, 2664, 2665, 7, 49, 2, 2, 2665, 2666, 7, 405, 2, 2, 2666, 2667, 7, 68, 2, 2, 2667, 2668, 5, 526, 264, 2, 2668, 2669, 7, 344, 2, 2, 2669, 2670, 7, 1013, 2, 2, 2670, 2671, 5, 516, 259, 2, 2671, 145, 3, 2, 2, 2, 2672, 2673, 7, 49, 2, 2, 2673, 2675, 7, 119, 2, 2, 2674, 2676, 5, 580, 291, 2, 2675, 2674, 3, 2, 2, 2, 2675, 2676, 3, 2, 2, 2, 2676, 2677, 3, 2, 2, 2, 2677, 2678, 5, 500, 251, 2, 2678, 147, 3, 2, 2, 2, 2679, 2680, 7, 49, 2, 2, 2680, 2682, 7, 370, 2, 2, 2681, 2683, 5, 580, 291, 2, 2682, 2681, 3, 2, 2, 2, 2682, 2683, 3, 2, 2, 2, 2683, 2684, 3, 2, 2, 2, 2684, 2685, 5, 500, 251, 2, 2685, 149, 3, 2, 2, 2, 2686, 2687, 7, 49, 2, 2, 2687, 2689, 7, 519, 2, 2, 2688, 2690, 5, 580, 291, 2, 2689, 2688, 3, 2, 2, 2, 2689, 2690, 3, 2, 2, 2, 2690, 2691, 3, 2, 2, 2, 2691, 2692, 5, 526, 264, 2, 2692, 151, 3, 2, 2, 2, 2693, 2695, 7, 49, 2, 2, 2694, 2696, 7, 559, 2, 2, 2695, 2694, 3, 2, 2, 2, 2695, 2696, 3, 2, 2, 2, 2696, 2697, 3, 2, 2, 2, 2697, 2699, 7, 156, 2, 2, 2698, 2700, 5, 580, 291, 2, 2699, 2698, 3, 2, 2, 2, 2699, 2700, 3, 2, 2, 2, 2700, 2701, 3, 2, 2, 2, 2701, 2703, 5, 560, 281, 2, 2702, 2704, 9, 34, 2, 2, 2703, 2702, 3, 2, 2, 2, 2703, 2704, 3, 2, 2, 2, 2704, 153, 3, 2, 2, 2, 2705, 2706, 7, 49, 2, 2, 2706, 2707, 7, 558, 2, 2, 2707, 2713, 5, 526, 264, 2, 2708, 2710, 7, 344, 2, 2, 2709, 2711, 7, 1013, 2, 2, 2710, 2709, 3, 2, 2, 2, 2710, 2711, 3, 2, 2, 2, 2711, 2712, 3, 2, 2, 2, 2712, 2714, 5, 516, 259, 2, 2713, 2708, 3, 2, 2, 2, 2713, 2714, 3, 2, 2, 2, 2714, 155, 3, 2, 2, 2, 2715, 2716, 7, 49, 2, 2, 2716, 2718, 7, 161, 2, 2, 2717, 2719, 5, 580, 291, 2, 2718, 2717, 3, 2, 2, 2, 2718, 2719, 3, 2, 2, 2, 2719, 2720, 3, 2, 2, 2, 2720, 2721, 5, 500, 251, 2, 2721, 157, 3, 2, 2, 2, 2722, 2723, 7, 49, 2, 2, 2723, 2725, 7, 580, 2, 2, 2724, 2726, 5, 580, 291, 2, 2725, 2724, 3, 2, 2, 2, 2725, 2726, 3, 2, 2, 2, 2726, 2727, 3, 2, 2, 2, 2727, 2732, 5, 500, 251, 2, 2728, 2729, 7, 1024, 2, 2, 2729, 2731, 5, 500, 251, 2, 2730, 2728, 3, 2, 2, 2, 2731, 2734, 3, 2, 2, 2, 2732, 2730, 3, 2, 2, 2, 2732, 2733, 3, 2, 2, 2, 2733, 2736, 3, 2, 2, 2, 2734, 2732, 3, 2, 2, 2, 2735, 2737, 9, 34, 2, 2, 2736, 2735, 3, 2, 2, 2, 2736, 2737, 3, 2, 2, 2, 2737, 159, 3, 2, 2, 2, 2738, 2739, 7, 127, 2, 2, 2739, 2740, 7, 156, 2, 2, 2740, 2745, 5, 162, 82, 2, 2741, 2742, 7, 1024, 2, 2, 2742, 2744, 5, 162, 82, 2, 2743, 2741, 3, 2, 2, 2, 2744, 2747, 3, 2, 2, 2, 2745, 2743, 3, 2, 2, 2, 2745, 2746, 3, 2, 2, 2, 2746, 161, 3, 2, 2, 2, 2747, 2745, 3, 2, 2, 2, 2748, 2749, 5, 502, 252, 2, 2749, 2750, 7, 159, 2, 2, 2750, 2751, 5, 502, 252, 2, 2751, 163, 3, 2, 2, 2, 2752, 2754, 7, 566, 2, 2, 2753, 2755, 7, 156, 2, 2, 2754, 2753, 3, 2, 2, 2, 2754, 2755, 3, 2, 2, 2, 2755, 2756, 3, 2, 2, 2, 2756, 2757, 5, 502, 252, 2, 2757, 165, 3, 2, 2, 2, 2758, 2759, 7, 19, 2, 2, 2759, 2766, 5, 500, 251, 2, 2760, 2763, 7, 1022, 2, 2, 2761, 2764, 5, 568, 285, 2, 2762, 2764, 5, 564, 283, 2, 2763, 2761, 3, 2, 2, 2, 2763, 2762, 3, 2, 2, 2, 2763, 2764, 3, 2, 2, 2, 2764, 2765, 3, 2, 2, 2, 2765, 2767, 7, 1023, 2, 2, 2766, 2760, 3, 2, 2, 2, 2766, 2767, 3, 2, 2, 2, 2767, 167, 3, 2, 2, 2, 2768, 2771, 5, 194, 98, 2, 2769, 2771, 5, 196, 99, 2, 2770, 2768, 3, 2, 2, 2, 2770, 2769, 3, 2, 2, 2, 2771, 169, 3, 2, 2, 2, 2772, 2773, 7, 336, 2, 2, 2773, 2774, 5, 564, 283, 2, 2774, 171, 3, 2, 2, 2, 2775, 2780, 5, 198, 100, 2, 2776, 2780, 5, 200, 101, 2, 2777, 2780, 5, 202, 102, 2, 2778, 2780, 5, 204, 103, 2, 2779, 2775, 3, 2, 2, 2, 2779, 2776, 3, 2, 2, 2, 2779, 2777, 3, 2, 2, 2, 2779, 2778, 3, 2, 2, 2, 2780, 173, 3, 2, 2, 2, 2781, 2783, 7, 78, 2, 2, 2782, 2784, 9, 35, 2, 2, 2783, 2782, 3, 2, 2, 2, 2783, 2784, 3, 2, 2, 2, 2784, 2786, 3, 2, 2, 2, 2785, 2787, 7, 72, 2, 2, 2786, 2785, 3, 2, 2, 2, 2786, 2787, 3, 2, 2, 2, 2787, 2789, 3, 2, 2, 2, 2788, 2790, 7, 80, 2, 2, 2789, 2788, 3, 2, 2, 2, 2789, 2790, 3, 2, 2, 2, 2790, 2791, 3, 2, 2, 2, 2791, 2798, 5, 502, 252, 2, 2792, 2793, 7, 117, 2, 2, 2793, 2795, 7, 1022, 2, 2, 2794, 2796, 5, 558, 280, 2, 2795, 2794, 3, 2, 2, 2, 2795, 2796, 3, 2, 2, 2, 2796, 2797, 3, 2, 2, 2, 2797, 2799, 7, 1023, 2, 2, 2798, 2792, 3, 2, 2, 2, 2798, 2799, 3, 2, 2, 2, 2799, 2816, 3, 2, 2, 2, 2800, 2801, 7, 1022, 2, 2, 2801, 2802, 5, 558, 280, 2, 2802, 2803, 7, 1023, 2, 2, 2803, 2805, 3, 2, 2, 2, 2804, 2800, 3, 2, 2, 2, 2804, 2805, 3, 2, 2, 2, 2805, 2806, 3, 2, 2, 2, 2806, 2817, 5, 186, 94, 2, 2807, 2808, 7, 140, 2, 2, 2808, 2813, 5, 188, 95, 2, 2809, 2810, 7, 1024, 2, 2, 2810, 2812, 5, 188, 95, 2, 2811, 2809, 3, 2, 2, 2, 2812, 2815, 3, 2, 2, 2, 2813, 2811, 3, 2, 2, 2, 2813, 2814, 3, 2, 2, 2, 2814, 2817, 3, 2, 2, 2, 2815, 2813, 3, 2, 2, 2, 2816, 2804, 3, 2, 2, 2, 2816, 2807, 3, 2, 2, 2, 2817, 2830, 3, 2, 2, 2, 2818, 2819, 7, 108, 2, 2, 2819, 2820, 7, 338, 2, 2, 2820, 2821, 7, 84, 2, 2, 2821, 2822, 7, 168, 2, 2, 2822, 2827, 5, 188, 95, 2, 2823, 2824, 7, 1024, 2, 2, 2824, 2826, 5, 188, 95, 2, 2825, 2823, 3, 2, 2, 2, 2826, 2829, 3, 2, 2, 2, 2827, 2825, 3, 2, 2, 2, 2827, 2828, 3, 2, 2, 2, 2828, 2831, 3, 2, 2, 2, 2829, 2827, 3, 2, 2, 2, 2830, 2818, 3, 2, 2, 2, 2830, 2831, 3, 2, 2, 2, 2831, 175, 3, 2, 2, 2, 2832, 2833, 7, 94, 2, 2, 2833, 2835, 7, 325, 2, 2, 2834, 2836, 9, 36, 2, 2, 2835, 2834, 3, 2, 2, 2, 2835, 2836, 3, 2, 2, 2, 2836, 2838, 3, 2, 2, 2, 2837, 2839, 7, 404, 2, 2, 2838, 2837, 3, 2, 2, 2, 2838, 2839, 3, 2, 2, 2, 2839, 2840, 3, 2, 2, 2, 2840, 2841, 7, 75, 2, 2, 2841, 2843, 7, 1037, 2, 2, 2842, 2844, 9, 8, 2, 2, 2843, 2842, 3, 2, 2, 2, 2843, 2844, 3, 2, 2, 2, 2844, 2845, 3, 2, 2, 2, 2845, 2846, 7, 80, 2, 2, 2846, 2847, 7, 156, 2, 2, 2847, 2853, 5, 502, 252, 2, 2848, 2849, 7, 117, 2, 2, 2849, 2850, 7, 1022, 2, 2, 2850, 2851, 5, 558, 280, 2, 2851, 2852, 7, 1023, 2, 2, 2852, 2854, 3, 2, 2, 2, 2853, 2848, 3, 2, 2, 2, 2853, 2854, 3, 2, 2, 2, 2854, 2858, 3, 2, 2, 2, 2855, 2856, 7, 24, 2, 2, 2856, 2857, 7, 140, 2, 2, 2857, 2859, 5, 512, 257, 2, 2858, 2855, 3, 2, 2, 2, 2858, 2859, 3, 2, 2, 2, 2859, 2866, 3, 2, 2, 2, 2860, 2862, 9, 37, 2, 2, 2861, 2863, 5, 246, 124, 2, 2862, 2861, 3, 2, 2, 2, 2863, 2864, 3, 2, 2, 2, 2864, 2862, 3, 2, 2, 2, 2864, 2865, 3, 2, 2, 2, 2865, 2867, 3, 2, 2, 2, 2866, 2860, 3, 2, 2, 2, 2866, 2867, 3, 2, 2, 2, 2867, 2874, 3, 2, 2, 2, 2868, 2870, 7, 93, 2, 2, 2869, 2871, 5, 248, 125, 2, 2870, 2869, 3, 2, 2, 2, 2871, 2872, 3, 2, 2, 2, 2872, 2870, 3, 2, 2, 2, 2872, 2873, 3, 2, 2, 2, 2873, 2875, 3, 2, 2, 2, 2874, 2868, 3, 2, 2, 2, 2874, 2875, 3, 2, 2, 2, 2875, 2880, 3, 2, 2, 2, 2876, 2877, 7, 72, 2, 2, 2877, 2878, 5, 532, 267, 2, 2878, 2879, 9, 38, 2, 2, 2879, 2881, 3, 2, 2, 2, 2880, 2876, 3, 2, 2, 2, 2880, 2881, 3, 2, 2, 2, 2881, 2893, 3, 2, 2, 2, 2882, 2883, 7, 1022, 2, 2, 2883, 2888, 5, 190, 96, 2, 2884, 2885, 7, 1024, 2, 2, 2885, 2887, 5, 190, 96, 2, 2886, 2884, 3, 2, 2, 2, 2887, 2890, 3, 2, 2, 2, 2888, 2886, 3, 2, 2, 2, 2888, 2889, 3, 2, 2, 2, 2889, 2891, 3, 2, 2, 2, 2890, 2888, 3, 2, 2, 2, 2891, 2892, 7, 1023, 2, 2, 2892, 2894, 3, 2, 2, 2, 2893, 2882, 3, 2, 2, 2, 2893, 2894, 3, 2, 2, 2, 2894, 2904, 3, 2, 2, 2, 2895, 2896, 7, 140, 2, 2, 2896, 2901, 5, 188, 95, 2, 2897, 2898, 7, 1024, 2, 2, 2898, 2900, 5, 188, 95, 2, 2899, 2897, 3, 2, 2, 2, 2900, 2903, 3, 2, 2, 2, 2901, 2899, 3, 2, 2, 2, 2901, 2902, 3, 2, 2, 2, 2902, 2905, 3, 2, 2, 2, 2903, 2901, 3, 2, 2, 2, 2904, 2895, 3, 2, 2, 2, 2904, 2905, 3, 2, 2, 2, 2905, 177, 3, 2, 2, 2, 2906, 2907, 7, 94, 2, 2, 2907, 2909, 7, 590, 2, 2, 2908, 2910, 9, 36, 2, 2, 2909, 2908, 3, 2, 2, 2, 2909, 2910, 3, 2, 2, 2, 2910, 2912, 3, 2, 2, 2, 2911, 2913, 7, 404, 2, 2, 2912, 2911, 3, 2, 2, 2, 2912, 2913, 3, 2, 2, 2, 2913, 2914, 3, 2, 2, 2, 2914, 2915, 7, 75, 2, 2, 2915, 2917, 7, 1037, 2, 2, 2916, 2918, 9, 8, 2, 2, 2917, 2916, 3, 2, 2, 2, 2917, 2918, 3, 2, 2, 2, 2918, 2919, 3, 2, 2, 2, 2919, 2920, 7, 80, 2, 2, 2920, 2921, 7, 156, 2, 2, 2921, 2925, 5, 502, 252, 2, 2922, 2923, 7, 24, 2, 2, 2923, 2924, 7, 140, 2, 2, 2924, 2926, 5, 512, 257, 2, 2925, 2922, 3, 2, 2, 2, 2925, 2926, 3, 2, 2, 2, 2926, 2933, 3, 2, 2, 2, 2927, 2928, 7, 514, 2, 2, 2928, 2929, 7, 380, 2, 2, 2929, 2930, 7, 18, 2, 2, 2930, 2931, 7, 1015, 2, 2, 2931, 2932, 7, 1037, 2, 2, 2932, 2934, 7, 1014, 2, 2, 2933, 2927, 3, 2, 2, 2, 2933, 2934, 3, 2, 2, 2, 2934, 2939, 3, 2, 2, 2, 2935, 2936, 7, 72, 2, 2, 2936, 2937, 5, 532, 267, 2, 2937, 2938, 9, 38, 2, 2, 2938, 2940, 3, 2, 2, 2, 2939, 2935, 3, 2, 2, 2, 2939, 2940, 3, 2, 2, 2, 2940, 2952, 3, 2, 2, 2, 2941, 2942, 7, 1022, 2, 2, 2942, 2947, 5, 190, 96, 2, 2943, 2944, 7, 1024, 2, 2, 2944, 2946, 5, 190, 96, 2, 2945, 2943, 3, 2, 2, 2, 2946, 2949, 3, 2, 2, 2, 2947, 2945, 3, 2, 2, 2, 2947, 2948, 3, 2, 2, 2, 2948, 2950, 3, 2, 2, 2, 2949, 2947, 3, 2, 2, 2, 2950, 2951, 7, 1023, 2, 2, 2951, 2953, 3, 2, 2, 2, 2952, 2941, 3, 2, 2, 2, 2952, 2953, 3, 2, 2, 2, 2953, 2963, 3, 2, 2, 2, 2954, 2955, 7, 140, 2, 2, 2955, 2960, 5, 188, 95, 2, 2956, 2957, 7, 1024, 2, 2, 2957, 2959, 5, 188, 95, 2, 2958, 2956, 3, 2, 2, 2, 2959, 2962, 3, 2, 2, 2, 2960, 2958, 3, 2, 2, 2, 2960, 2961, 3, 2, 2, 2, 2961, 2964, 3, 2, 2, 2, 2962, 2960, 3, 2, 2, 2, 2963, 2954, 3, 2, 2, 2, 2963, 2964, 3, 2, 2, 2, 2964, 179, 3, 2, 2, 2, 2965, 2967, 7, 129, 2, 2, 2966, 2968, 9, 39, 2, 2, 2967, 2966, 3, 2, 2, 2, 2967, 2968, 3, 2, 2, 2, 2968, 2970, 3, 2, 2, 2, 2969, 2971, 7, 80, 2, 2, 2970, 2969, 3, 2, 2, 2, 2970, 2971, 3, 2, 2, 2, 2971, 2972, 3, 2, 2, 2, 2972, 2978, 5, 502, 252, 2, 2973, 2974, 7, 117, 2, 2, 2974, 2975, 7, 1022, 2, 2, 2975, 2976, 5, 558, 280, 2, 2976, 2977, 7, 1023, 2, 2, 2977, 2979, 3, 2, 2, 2, 2978, 2973, 3, 2, 2, 2, 2978, 2979, 3, 2, 2, 2, 2979, 2996, 3, 2, 2, 2, 2980, 2981, 7, 1022, 2, 2, 2981, 2982, 5, 558, 280, 2, 2982, 2983, 7, 1023, 2, 2, 2983, 2985, 3, 2, 2, 2, 2984, 2980, 3, 2, 2, 2, 2984, 2985, 3, 2, 2, 2, 2985, 2986, 3, 2, 2, 2, 2986, 2997, 5, 186, 94, 2, 2987, 2988, 7, 140, 2, 2, 2988, 2993, 5, 188, 95, 2, 2989, 2990, 7, 1024, 2, 2, 2990, 2992, 5, 188, 95, 2, 2991, 2989, 3, 2, 2, 2, 2992, 2995, 3, 2, 2, 2, 2993, 2991, 3, 2, 2, 2, 2993, 2994, 3, 2, 2, 2, 2994, 2997, 3, 2, 2, 2, 2995, 2993, 3, 2, 2, 2, 2996, 2984, 3, 2, 2, 2, 2996, 2987, 3, 2, 2, 2, 2997, 181, 3, 2, 2, 2, 2998, 3000, 5, 230, 116, 2, 2999, 3001, 5, 192, 97, 2, 3000, 2999, 3, 2, 2, 2, 3000, 3001, 3, 2, 2, 2, 3001, 3054, 3, 2, 2, 2, 3002, 3004, 5, 226, 114, 2, 3003, 3005, 5, 192, 97, 2, 3004, 3003, 3, 2, 2, 2, 3004, 3005, 3, 2, 2, 2, 3005, 3054, 3, 2, 2, 2, 3006, 3008, 5, 232, 117, 2, 3007, 3009, 5, 236, 119, 2, 3008, 3007, 3, 2, 2, 2, 3009, 3010, 3, 2, 2, 2, 3010, 3008, 3, 2, 2, 2, 3010, 3011, 3, 2, 2, 2, 3011, 3020, 3, 2, 2, 2, 3012, 3014, 7, 164, 2, 2, 3013, 3015, 9, 40, 2, 2, 3014, 3013, 3, 2, 2, 2, 3014, 3015, 3, 2, 2, 2, 3015, 3018, 3, 2, 2, 2, 3016, 3019, 5, 230, 116, 2, 3017, 3019, 5, 226, 114, 2, 3018, 3016, 3, 2, 2, 2, 3018, 3017, 3, 2, 2, 2, 3019, 3021, 3, 2, 2, 2, 3020, 3012, 3, 2, 2, 2, 3020, 3021, 3, 2, 2, 2, 3021, 3023, 3, 2, 2, 2, 3022, 3024, 5, 210, 106, 2, 3023, 3022, 3, 2, 2, 2, 3023, 3024, 3, 2, 2, 2, 3024, 3026, 3, 2, 2, 2, 3025, 3027, 5, 254, 128, 2, 3026, 3025, 3, 2, 2, 2, 3026, 3027, 3, 2, 2, 2, 3027, 3029, 3, 2, 2, 2, 3028, 3030, 5, 192, 97, 2, 3029, 3028, 3, 2, 2, 2, 3029, 3030, 3, 2, 2, 2, 3030, 3054, 3, 2, 2, 2, 3031, 3033, 5, 228, 115, 2, 3032, 3034, 5, 234, 118, 2, 3033, 3032, 3, 2, 2, 2, 3034, 3035, 3, 2, 2, 2, 3035, 3033, 3, 2, 2, 2, 3035, 3036, 3, 2, 2, 2, 3036, 3042, 3, 2, 2, 2, 3037, 3039, 7, 164, 2, 2, 3038, 3040, 9, 40, 2, 2, 3039, 3038, 3, 2, 2, 2, 3039, 3040, 3, 2, 2, 2, 3040, 3041, 3, 2, 2, 2, 3041, 3043, 5, 226, 114, 2, 3042, 3037, 3, 2, 2, 2, 3042, 3043, 3, 2, 2, 2, 3043, 3045, 3, 2, 2, 2, 3044, 3046, 5, 210, 106, 2, 3045, 3044, 3, 2, 2, 2, 3045, 3046, 3, 2, 2, 2, 3046, 3048, 3, 2, 2, 2, 3047, 3049, 5, 254, 128, 2, 3048, 3047, 3, 2, 2, 2, 3048, 3049, 3, 2, 2, 2, 3049, 3051, 3, 2, 2, 2, 3050, 3052, 5, 192, 97, 2, 3051, 3050, 3, 2, 2, 2, 3051, 3052, 3, 2, 2, 2, 3052, 3054, 3, 2, 2, 2, 3053, 2998, 3, 2, 2, 2, 3053, 3002, 3, 2, 2, 2, 3053, 3006, 3, 2, 2, 2, 3053, 3031, 3, 2, 2, 2, 3054, 183, 3, 2, 2, 2, 3055, 3058, 5, 206, 104, 2, 3056, 3058, 5, 208, 105, 2, 3057, 3055, 3, 2, 2, 2, 3057, 3056, 3, 2, 2, 2, 3058, 185, 3, 2, 2, 2, 3059, 3078, 5, 182, 92, 2, 3060, 3061, 9, 41, 2, 2, 3061, 3063, 7, 1022, 2, 2, 3062, 3064, 5, 566, 284, 2, 3063, 3062, 3, 2, 2, 2, 3063, 3064, 3, 2, 2, 2, 3064, 3065, 3, 2, 2, 2, 3065, 3074, 7, 1023, 2, 2, 3066, 3067, 7, 1024, 2, 2, 3067, 3069, 7, 1022, 2, 2, 3068, 3070, 5, 566, 284, 2, 3069, 3068, 3, 2, 2, 2, 3069, 3070, 3, 2, 2, 2, 3070, 3071, 3, 2, 2, 2, 3071, 3073, 7, 1023, 2, 2, 3072, 3066, 3, 2, 2, 2, 3073, 3076, 3, 2, 2, 2, 3074, 3072, 3, 2, 2, 2, 3074, 3075, 3, 2, 2, 2, 3075, 3078, 3, 2, 2, 2, 3076, 3074, 3, 2, 2, 2, 3077, 3059, 3, 2, 2, 2, 3077, 3060, 3, 2, 2, 2, 3078, 187, 3, 2, 2, 2, 3079, 3080, 5, 504, 253, 2, 3080, 3083, 7, 1013, 2, 2, 3081, 3084, 5, 604, 303, 2, 3082, 3084, 7, 40, 2, 2, 3083, 3081, 3, 2, 2, 2, 3083, 3082, 3, 2, 2, 2, 3084, 189, 3, 2, 2, 2, 3085, 3088, 5, 526, 264, 2, 3086, 3088, 7, 1048, 2, 2, 3087, 3085, 3, 2, 2, 2, 3087, 3086, 3, 2, 2, 2, 3088, 191, 3, 2, 2, 2, 3089, 3090, 7, 60, 2, 2, 3090, 3096, 7, 168, 2, 2, 3091, 3092, 7, 95, 2, 2, 3092, 3093, 7, 73, 2, 2, 3093, 3094, 7, 521, 2, 2, 3094, 3096, 7, 440, 2, 2, 3095, 3089, 3, 2, 2, 2, 3095, 3091, 3, 2, 2, 2, 3096, 193, 3, 2, 2, 2, 3097, 3099, 7, 42, 2, 2, 3098, 3100, 7, 97, 2, 2, 3099, 3098, 3, 2, 2, 2, 3099, 3100, 3, 2, 2, 2, 3100, 3102, 3, 2, 2, 2, 3101, 3103, 7, 485, 2, 2, 3102, 3101, 3, 2, 2, 2, 3102, 3103, 3, 2, 2, 2, 3103, 3105, 3, 2, 2, 2, 3104, 3106, 7, 72, 2, 2, 3105, 3104, 3, 2, 2, 2, 3105, 3106, 3, 2, 2, 2, 3106, 3107, 3, 2, 2, 2, 3107, 3108, 7, 63, 2, 2, 3108, 3114, 5, 502, 252, 2, 3109, 3110, 7, 117, 2, 2, 3110, 3111, 7, 1022, 2, 2, 3111, 3112, 5, 558, 280, 2, 3112, 3113, 7, 1023, 2, 2, 3113, 3115, 3, 2, 2, 2, 3114, 3109, 3, 2, 2, 2, 3114, 3115, 3, 2, 2, 2, 3115, 3118, 3, 2, 2, 2, 3116, 3117, 7, 174, 2, 2, 3117, 3119, 5, 604, 303, 2, 3118, 3116, 3, 2, 2, 2, 3118, 3119, 3, 2, 2, 2, 3119, 3121, 3, 2, 2, 2, 3120, 3122, 5, 210, 106, 2, 3121, 3120, 3, 2, 2, 2, 3121, 3122, 3, 2, 2, 2, 3122, 3125, 3, 2, 2, 2, 3123, 3124, 7, 91, 2, 2, 3124, 3126, 5, 256, 129, 2, 3125, 3123, 3, 2, 2, 2, 3125, 3126, 3, 2, 2, 2, 3126, 195, 3, 2, 2, 2, 3127, 3129, 7, 42, 2, 2, 3128, 3130, 7, 97, 2, 2, 3129, 3128, 3, 2, 2, 2, 3129, 3130, 3, 2, 2, 2, 3130, 3132, 3, 2, 2, 2, 3131, 3133, 7, 485, 2, 2, 3132, 3131, 3, 2, 2, 2, 3132, 3133, 3, 2, 2, 2, 3133, 3135, 3, 2, 2, 2, 3134, 3136, 7, 72, 2, 2, 3135, 3134, 3, 2, 2, 2, 3135, 3136, 3, 2, 2, 2, 3136, 3176, 3, 2, 2, 2, 3137, 3140, 5, 502, 252, 2, 3138, 3139, 7, 1021, 2, 2, 3139, 3141, 7, 1005, 2, 2, 3140, 3138, 3, 2, 2, 2, 3140, 3141, 3, 2, 2, 2, 3141, 3150, 3, 2, 2, 2, 3142, 3143, 7, 1024, 2, 2, 3143, 3146, 5, 502, 252, 2, 3144, 3145, 7, 1021, 2, 2, 3145, 3147, 7, 1005, 2, 2, 3146, 3144, 3, 2, 2, 2, 3146, 3147, 3, 2, 2, 2, 3147, 3149, 3, 2, 2, 2, 3148, 3142, 3, 2, 2, 2, 3149, 3152, 3, 2, 2, 2, 3150, 3148, 3, 2, 2, 2, 3150, 3151, 3, 2, 2, 2, 3151, 3153, 3, 2, 2, 2, 3152, 3150, 3, 2, 2, 2, 3153, 3154, 7, 63, 2, 2, 3154, 3155, 5, 214, 108, 2, 3155, 3177, 3, 2, 2, 2, 3156, 3157, 7, 63, 2, 2, 3157, 3160, 5, 502, 252, 2, 3158, 3159, 7, 1021, 2, 2, 3159, 3161, 7, 1005, 2, 2, 3160, 3158, 3, 2, 2, 2, 3160, 3161, 3, 2, 2, 2, 3161, 3170, 3, 2, 2, 2, 3162, 3163, 7, 1024, 2, 2, 3163, 3166, 5, 502, 252, 2, 3164, 3165, 7, 1021, 2, 2, 3165, 3167, 7, 1005, 2, 2, 3166, 3164, 3, 2, 2, 2, 3166, 3167, 3, 2, 2, 2, 3167, 3169, 3, 2, 2, 2, 3168, 3162, 3, 2, 2, 2, 3169, 3172, 3, 2, 2, 2, 3170, 3168, 3, 2, 2, 2, 3170, 3171, 3, 2, 2, 2, 3171, 3173, 3, 2, 2, 2, 3172, 3170, 3, 2, 2, 2, 3173, 3174, 7, 171, 2, 2, 3174, 3175, 5, 214, 108, 2, 3175, 3177, 3, 2, 2, 2, 3176, 3137, 3, 2, 2, 2, 3176, 3156, 3, 2, 2, 2, 3177, 3180, 3, 2, 2, 2, 3178, 3179, 7, 174, 2, 2, 3179, 3181, 5, 604, 303, 2, 3180, 3178, 3, 2, 2, 2, 3180, 3181, 3, 2, 2, 2, 3181, 197, 3, 2, 2, 2, 3182, 3183, 7, 375, 2, 2, 3183, 3184, 5, 502, 252, 2, 3184, 3189, 7, 460, 2, 2, 3185, 3187, 7, 13, 2, 2, 3186, 3185, 3, 2, 2, 2, 3186, 3187, 3, 2, 2, 2, 3187, 3188, 3, 2, 2, 2, 3188, 3190, 5, 526, 264, 2, 3189, 3186, 3, 2, 2, 2, 3189, 3190, 3, 2, 2, 2, 3190, 199, 3, 2, 2, 2, 3191, 3192, 7, 375, 2, 2, 3192, 3193, 5, 502, 252, 2, 3193, 3194, 7, 122, 2, 2, 3194, 3201, 5, 526, 264, 2, 3195, 3196, 5, 612, 307, 2, 3196, 3197, 7, 1022, 2, 2, 3197, 3198, 5, 568, 285, 2, 3198, 3199, 7, 1023, 2, 2, 3199, 3202, 3, 2, 2, 2, 3200, 3202, 9, 42, 2, 2, 3201, 3195, 3, 2, 2, 2, 3201, 3200, 3, 2, 2, 2, 3202, 3205, 3, 2, 2, 2, 3203, 3204, 7, 174, 2, 2, 3204, 3206, 5, 604, 303, 2, 3205, 3203, 3, 2, 2, 2, 3205, 3206, 3, 2, 2, 2, 3206, 3209, 3, 2, 2, 2, 3207, 3208, 7, 91, 2, 2, 3208, 3210, 5, 256, 129, 2, 3209, 3207, 3, 2, 2, 2, 3209, 3210, 3, 2, 2, 2, 3210, 201, 3, 2, 2, 2, 3211, 3212, 7, 375, 2, 2, 3212, 3213, 5, 502, 252, 2, 3213, 3214, 7, 122, 2, 2, 3214, 3217, 9, 43, 2, 2, 3215, 3216, 7, 174, 2, 2, 3216, 3218, 5, 604, 303, 2, 3217, 3215, 3, 2, 2, 2, 3217, 3218, 3, 2, 2, 2, 3218, 3221, 3, 2, 2, 2, 3219, 3220, 7, 91, 2, 2, 3220, 3222, 5, 256, 129, 2, 3221, 3219, 3, 2, 2, 2, 3221, 3222, 3, 2, 2, 2, 3222, 203, 3, 2, 2, 2, 3223, 3224, 7, 375, 2, 2, 3224, 3225, 5, 502, 252, 2, 3225, 3226, 7, 301, 2, 2, 3226, 205, 3, 2, 2, 2, 3227, 3229, 7, 168, 2, 2, 3228, 3230, 7, 97, 2, 2, 3229, 3228, 3, 2, 2, 2, 3229, 3230, 3, 2, 2, 2, 3230, 3232, 3, 2, 2, 2, 3231, 3233, 7, 72, 2, 2, 3232, 3231, 3, 2, 2, 2, 3232, 3233, 3, 2, 2, 2, 3233, 3234, 3, 2, 2, 2, 3234, 3239, 5, 502, 252, 2, 3235, 3237, 7, 13, 2, 2, 3236, 3235, 3, 2, 2, 2, 3236, 3237, 3, 2, 2, 2, 3237, 3238, 3, 2, 2, 2, 3238, 3240, 5, 526, 264, 2, 3239, 3236, 3, 2, 2, 2, 3239, 3240, 3, 2, 2, 2, 3240, 3241, 3, 2, 2, 2, 3241, 3242, 7, 140, 2, 2, 3242, 3247, 5, 188, 95, 2, 3243, 3244, 7, 1024, 2, 2, 3244, 3246, 5, 188, 95, 2, 3245, 3243, 3, 2, 2, 2, 3246, 3249, 3, 2, 2, 2, 3247, 3245, 3, 2, 2, 2, 3247, 3248, 3, 2, 2, 2, 3248, 3252, 3, 2, 2, 2, 3249, 3247, 3, 2, 2, 2, 3250, 3251, 7, 174, 2, 2, 3251, 3253, 5, 604, 303, 2, 3252, 3250, 3, 2, 2, 2, 3252, 3253, 3, 2, 2, 2, 3253, 3255, 3, 2, 2, 2, 3254, 3256, 5, 210, 106, 2, 3255, 3254, 3, 2, 2, 2, 3255, 3256, 3, 2, 2, 2, 3256, 3258, 3, 2, 2, 2, 3257, 3259, 5, 254, 128, 2, 3258, 3257, 3, 2, 2, 2, 3258, 3259, 3, 2, 2, 2, 3259, 207, 3, 2, 2, 2, 3260, 3262, 7, 168, 2, 2, 3261, 3263, 7, 97, 2, 2, 3262, 3261, 3, 2, 2, 2, 3262, 3263, 3, 2, 2, 2, 3263, 3265, 3, 2, 2, 2, 3264, 3266, 7, 72, 2, 2, 3265, 3264, 3, 2, 2, 2, 3265, 3266, 3, 2, 2, 2, 3266, 3267, 3, 2, 2, 2, 3267, 3268, 5, 214, 108, 2, 3268, 3269, 7, 140, 2, 2, 3269, 3274, 5, 188, 95, 2, 3270, 3271, 7, 1024, 2, 2, 3271, 3273, 5, 188, 95, 2, 3272, 3270, 3, 2, 2, 2, 3273, 3276, 3, 2, 2, 2, 3274, 3272, 3, 2, 2, 2, 3274, 3275, 3, 2, 2, 2, 3275, 3279, 3, 2, 2, 2, 3276, 3274, 3, 2, 2, 2, 3277, 3278, 7, 174, 2, 2, 3278, 3280, 5, 604, 303, 2, 3279, 3277, 3, 2, 2, 2, 3279, 3280, 3, 2, 2, 2, 3280, 209, 3, 2, 2, 2, 3281, 3282, 7, 113, 2, 2, 3282, 3283, 7, 18, 2, 2, 3283, 3288, 5, 212, 107, 2, 3284, 3285, 7, 1024, 2, 2, 3285, 3287, 5, 212, 107, 2, 3286, 3284, 3, 2, 2, 2, 3287, 3290, 3, 2, 2, 2, 3288, 3286, 3, 2, 2, 2, 3288, 3289, 3, 2, 2, 2, 3289, 211, 3, 2, 2, 2, 3290, 3288, 3, 2, 2, 2, 3291, 3293, 5, 604, 303, 2, 3292, 3294, 9, 44, 2, 2, 3293, 3292, 3, 2, 2, 2, 3293, 3294, 3, 2, 2, 2, 3294, 213, 3, 2, 2, 2, 3295, 3300, 5, 216, 109, 2, 3296, 3297, 7, 1024, 2, 2, 3297, 3299, 5, 216, 109, 2, 3298, 3296, 3, 2, 2, 2, 3299, 3302, 3, 2, 2, 2, 3300, 3298, 3, 2, 2, 2, 3300, 3301, 3, 2, 2, 2, 3301, 215, 3, 2, 2, 2, 3302, 3300, 3, 2, 2, 2, 3303, 3307, 5, 218, 110, 2, 3304, 3306, 5, 224, 113, 2, 3305, 3304, 3, 2, 2, 2, 3306, 3309, 3, 2, 2, 2, 3307, 3305, 3, 2, 2, 2, 3307, 3308, 3, 2, 2, 2, 3308, 3321, 3, 2, 2, 2, 3309, 3307, 3, 2, 2, 2, 3310, 3311, 7, 1022, 2, 2, 3311, 3315, 5, 218, 110, 2, 3312, 3314, 5, 224, 113, 2, 3313, 3312, 3, 2, 2, 2, 3314, 3317, 3, 2, 2, 2, 3315, 3313, 3, 2, 2, 2, 3315, 3316, 3, 2, 2, 2, 3316, 3318, 3, 2, 2, 2, 3317, 3315, 3, 2, 2, 2, 3318, 3319, 7, 1023, 2, 2, 3319, 3321, 3, 2, 2, 2, 3320, 3303, 3, 2, 2, 2, 3320, 3310, 3, 2, 2, 2, 3321, 217, 3, 2, 2, 2, 3322, 3328, 5, 502, 252, 2, 3323, 3324, 7, 117, 2, 2, 3324, 3325, 7, 1022, 2, 2, 3325, 3326, 5, 558, 280, 2, 3326, 3327, 7, 1023, 2, 2, 3327, 3329, 3, 2, 2, 2, 3328, 3323, 3, 2, 2, 2, 3328, 3329, 3, 2, 2, 2, 3329, 3334, 3, 2, 2, 2, 3330, 3332, 7, 13, 2, 2, 3331, 3330, 3, 2, 2, 2, 3331, 3332, 3, 2, 2, 2, 3332, 3333, 3, 2, 2, 2, 3333, 3335, 5, 526, 264, 2, 3334, 3331, 3, 2, 2, 2, 3334, 3335, 3, 2, 2, 2, 3335, 3344, 3, 2, 2, 2, 3336, 3341, 5, 220, 111, 2, 3337, 3338, 7, 1024, 2, 2, 3338, 3340, 5, 220, 111, 2, 3339, 3337, 3, 2, 2, 2, 3340, 3343, 3, 2, 2, 2, 3341, 3339, 3, 2, 2, 2, 3341, 3342, 3, 2, 2, 2, 3342, 3345, 3, 2, 2, 2, 3343, 3341, 3, 2, 2, 2, 3344, 3336, 3, 2, 2, 2, 3344, 3345, 3, 2, 2, 2, 3345, 3363, 3, 2, 2, 2, 3346, 3352, 5, 182, 92, 2, 3347, 3348, 7, 1022, 2, 2, 3348, 3349, 5, 182, 92, 2, 3349, 3350, 7, 1023, 2, 2, 3350, 3352, 3, 2, 2, 2, 3351, 3346, 3, 2, 2, 2, 3351, 3347, 3, 2, 2, 2, 3352, 3354, 3, 2, 2, 2, 3353, 3355, 7, 13, 2, 2, 3354, 3353, 3, 2, 2, 2, 3354, 3355, 3, 2, 2, 2, 3355, 3356, 3, 2, 2, 2, 3356, 3357, 5, 526, 264, 2, 3357, 3363, 3, 2, 2, 2, 3358, 3359, 7, 1022, 2, 2, 3359, 3360, 5, 214, 108, 2, 3360, 3361, 7, 1023, 2, 2, 3361, 3363, 3, 2, 2, 2, 3362, 3322, 3, 2, 2, 2, 3362, 3351, 3, 2, 2, 2, 3362, 3358, 3, 2, 2, 2, 3363, 219, 3, 2, 2, 2, 3364, 3365, 9, 45, 2, 2, 3365, 3368, 9, 20, 2, 2, 3366, 3367, 7, 60, 2, 2, 3367, 3369, 5, 222, 112, 2, 3368, 3366, 3, 2, 2, 2, 3368, 3369, 3, 2, 2, 2, 3369, 3370, 3, 2, 2, 2, 3370, 3371, 7, 1022, 2, 2, 3371, 3372, 5, 558, 280, 2, 3372, 3373, 7, 1023, 2, 2, 3373, 221, 3, 2, 2, 2, 3374, 3380, 7, 83, 2, 2, 3375, 3376, 7, 113, 2, 2, 3376, 3380, 7, 18, 2, 2, 3377, 3378, 7, 68, 2, 2, 3378, 3380, 7, 18, 2, 2, 3379, 3374, 3, 2, 2, 2, 3379, 3375, 3, 2, 2, 2, 3379, 3377, 3, 2, 2, 2, 3380, 223, 3, 2, 2, 2, 3381, 3383, 9, 46, 2, 2, 3382, 3381, 3, 2, 2, 2, 3382, 3383, 3, 2, 2, 2, 3383, 3384, 3, 2, 2, 2, 3384, 3385, 7, 83, 2, 2, 3385, 3393, 5, 218, 110, 2, 3386, 3387, 7, 108, 2, 2, 3387, 3394, 5, 604, 303, 2, 3388, 3389, 7, 171, 2, 2, 3389, 3390, 7, 1022, 2, 2, 3390, 3391, 5, 558, 280, 2, 3391, 3392, 7, 1023, 2, 2, 3392, 3394, 3, 2, 2, 2, 3393, 3386, 3, 2, 2, 2, 3393, 3388, 3, 2, 2, 2, 3393, 3394, 3, 2, 2, 2, 3394, 3426, 3, 2, 2, 2, 3395, 3396, 7, 155, 2, 2, 3396, 3399, 5, 218, 110, 2, 3397, 3398, 7, 108, 2, 2, 3398, 3400, 5, 604, 303, 2, 3399, 3397, 3, 2, 2, 2, 3399, 3400, 3, 2, 2, 2, 3400, 3426, 3, 2, 2, 2, 3401, 3403, 9, 47, 2, 2, 3402, 3404, 7, 115, 2, 2, 3403, 3402, 3, 2, 2, 2, 3403, 3404, 3, 2, 2, 2, 3404, 3405, 3, 2, 2, 2, 3405, 3406, 7, 83, 2, 2, 3406, 3414, 5, 218, 110, 2, 3407, 3408, 7, 108, 2, 2, 3408, 3415, 5, 604, 303, 2, 3409, 3410, 7, 171, 2, 2, 3410, 3411, 7, 1022, 2, 2, 3411, 3412, 5, 558, 280, 2, 3412, 3413, 7, 1023, 2, 2, 3413, 3415, 3, 2, 2, 2, 3414, 3407, 3, 2, 2, 2, 3414, 3409, 3, 2, 2, 2, 3415, 3426, 3, 2, 2, 2, 3416, 3421, 7, 103, 2, 2, 3417, 3419, 9, 47, 2, 2, 3418, 3420, 7, 115, 2, 2, 3419, 3418, 3, 2, 2, 2, 3419, 3420, 3, 2, 2, 2, 3420, 3422, 3, 2, 2, 2, 3421, 3417, 3, 2, 2, 2, 3421, 3422, 3, 2, 2, 2, 3422, 3423, 3, 2, 2, 2, 3423, 3424, 7, 83, 2, 2, 3424, 3426, 5, 218, 110, 2, 3425, 3382, 3, 2, 2, 2, 3425, 3395, 3, 2, 2, 2, 3425, 3401, 3, 2, 2, 2, 3425, 3416, 3, 2, 2, 2, 3426, 225, 3, 2, 2, 2, 3427, 3428, 7, 1022, 2, 2, 3428, 3429, 5, 230, 116, 2, 3429, 3430, 7, 1023, 2, 2, 3430, 3436, 3, 2, 2, 2, 3431, 3432, 7, 1022, 2, 2, 3432, 3433, 5, 226, 114, 2, 3433, 3434, 7, 1023, 2, 2, 3434, 3436, 3, 2, 2, 2, 3435, 3427, 3, 2, 2, 2, 3435, 3431, 3, 2, 2, 2, 3436, 227, 3, 2, 2, 2, 3437, 3438, 7, 1022, 2, 2, 3438, 3439, 5, 232, 117, 2, 3439, 3440, 7, 1023, 2, 2, 3440, 3446, 3, 2, 2, 2, 3441, 3442, 7, 1022, 2, 2, 3442, 3443, 5, 228, 115, 2, 3443, 3444, 7, 1023, 2, 2, 3444, 3446, 3, 2, 2, 2, 3445, 3437, 3, 2, 2, 2, 3445, 3441, 3, 2, 2, 2, 3446, 229, 3, 2, 2, 2, 3447, 3451, 7, 139, 2, 2, 3448, 3450, 5, 238, 120, 2, 3449, 3448, 3, 2, 2, 2, 3450, 3453, 3, 2, 2, 2, 3451, 3449, 3, 2, 2, 2, 3451, 3452, 3, 2, 2, 2, 3452, 3454, 3, 2, 2, 2, 3453, 3451, 3, 2, 2, 2, 3454, 3456, 5, 240, 121, 2, 3455, 3457, 5, 244, 123, 2, 3456, 3455, 3, 2, 2, 2, 3456, 3457, 3, 2, 2, 2, 3457, 3459, 3, 2, 2, 2, 3458, 3460, 5, 250, 126, 2, 3459, 3458, 3, 2, 2, 2, 3459, 3460, 3, 2, 2, 2, 3460, 3462, 3, 2, 2, 2, 3461, 3463, 5, 210, 106, 2, 3462, 3461, 3, 2, 2, 2, 3462, 3463, 3, 2, 2, 2, 3463, 3465, 3, 2, 2, 2, 3464, 3466, 5, 254, 128, 2, 3465, 3464, 3, 2, 2, 2, 3465, 3466, 3, 2, 2, 2, 3466, 3488, 3, 2, 2, 2, 3467, 3471, 7, 139, 2, 2, 3468, 3470, 5, 238, 120, 2, 3469, 3468, 3, 2, 2, 2, 3470, 3473, 3, 2, 2, 2, 3471, 3469, 3, 2, 2, 2, 3471, 3472, 3, 2, 2, 2, 3472, 3474, 3, 2, 2, 2, 3473, 3471, 3, 2, 2, 2, 3474, 3476, 5, 240, 121, 2, 3475, 3477, 5, 250, 126, 2, 3476, 3475, 3, 2, 2, 2, 3476, 3477, 3, 2, 2, 2, 3477, 3479, 3, 2, 2, 2, 3478, 3480, 5, 210, 106, 2, 3479, 3478, 3, 2, 2, 2, 3479, 3480, 3, 2, 2, 2, 3480, 3482, 3, 2, 2, 2, 3481, 3483, 5, 254, 128, 2, 3482, 3481, 3, 2, 2, 2, 3482, 3483, 3, 2, 2, 2, 3483, 3485, 3, 2, 2, 2, 3484, 3486, 5, 244, 123, 2, 3485, 3484, 3, 2, 2, 2, 3485, 3486, 3, 2, 2, 2, 3486, 3488, 3, 2, 2, 2, 3487, 3447, 3, 2, 2, 2, 3487, 3467, 3, 2, 2, 2, 3488, 231, 3, 2, 2, 2, 3489, 3493, 7, 139, 2, 2, 3490, 3492, 5, 238, 120, 2, 3491, 3490, 3, 2, 2, 2, 3492, 3495, 3, 2, 2, 2, 3493, 3491, 3, 2, 2, 2, 3493, 3494, 3, 2, 2, 2, 3494, 3496, 3, 2, 2, 2, 3495, 3493, 3, 2, 2, 2, 3496, 3498, 5, 240, 121, 2, 3497, 3499, 5, 250, 126, 2, 3498, 3497, 3, 2, 2, 2, 3498, 3499, 3, 2, 2, 2, 3499, 3501, 3, 2, 2, 2, 3500, 3502, 5, 210, 106, 2, 3501, 3500, 3, 2, 2, 2, 3501, 3502, 3, 2, 2, 2, 3502, 3504, 3, 2, 2, 2, 3503, 3505, 5, 254, 128, 2, 3504, 3503, 3, 2, 2, 2, 3504, 3505, 3, 2, 2, 2, 3505, 233, 3, 2, 2, 2, 3506, 3508, 7, 164, 2, 2, 3507, 3509, 9, 40, 2, 2, 3508, 3507, 3, 2, 2, 2, 3508, 3509, 3, 2, 2, 2, 3509, 3510, 3, 2, 2, 2, 3510, 3511, 5, 228, 115, 2, 3511, 235, 3, 2, 2, 2, 3512, 3514, 7, 164, 2, 2, 3513, 3515, 9, 40, 2, 2, 3514, 3513, 3, 2, 2, 2, 3514, 3515, 3, 2, 2, 2, 3515, 3518, 3, 2, 2, 2, 3516, 3519, 5, 232, 117, 2, 3517, 3519, 5, 228, 115, 2, 3518, 3516, 3, 2, 2, 2, 3518, 3517, 3, 2, 2, 2, 3519, 237, 3, 2, 2, 2, 3520, 3529, 9, 48, 2, 2, 3521, 3529, 7, 70, 2, 2, 3522, 3529, 7, 155, 2, 2, 3523, 3529, 7, 151, 2, 2, 3524, 3529, 7, 149, 2, 2, 3525, 3529, 7, 536, 2, 2, 3526, 3529, 9, 49, 2, 2, 3527, 3529, 7, 150, 2, 2, 3528, 3520, 3, 2, 2, 2, 3528, 3521, 3, 2, 2, 2, 3528, 3522, 3, 2, 2, 2, 3528, 3523, 3, 2, 2, 2, 3528, 3524, 3, 2, 2, 2, 3528, 3525, 3, 2, 2, 2, 3528, 3526, 3, 2, 2, 2, 3528, 3527, 3, 2, 2, 2, 3529, 239, 3, 2, 2, 2, 3530, 3533, 7, 1005, 2, 2, 3531, 3533, 5, 242, 122, 2, 3532, 3530, 3, 2, 2, 2, 3532, 3531, 3, 2, 2, 2, 3533, 3538, 3, 2, 2, 2, 3534, 3535, 7, 1024, 2, 2, 3535, 3537, 5, 242, 122, 2, 3536, 3534, 3, 2, 2, 2, 3537, 3540, 3, 2, 2, 2, 3538, 3536, 3, 2, 2, 2, 3538, 3539, 3, 2, 2, 2, 3539, 241, 3, 2, 2, 2, 3540, 3538, 3, 2, 2, 2, 3541, 3542, 5, 500, 251, 2, 3542, 3543, 7, 1021, 2, 2, 3543, 3544, 7, 1005, 2, 2, 3544, 3571, 3, 2, 2, 2, 3545, 3550, 5, 504, 253, 2, 3546, 3548, 7, 13, 2, 2, 3547, 3546, 3, 2, 2, 2, 3547, 3548, 3, 2, 2, 2, 3548, 3549, 3, 2, 2, 2, 3549, 3551, 5, 526, 264, 2, 3550, 3547, 3, 2, 2, 2, 3550, 3551, 3, 2, 2, 2, 3551, 3571, 3, 2, 2, 2, 3552, 3557, 5, 584, 293, 2, 3553, 3555, 7, 13, 2, 2, 3554, 3553, 3, 2, 2, 2, 3554, 3555, 3, 2, 2, 2, 3555, 3556, 3, 2, 2, 2, 3556, 3558, 5, 526, 264, 2, 3557, 3554, 3, 2, 2, 2, 3557, 3558, 3, 2, 2, 2, 3558, 3571, 3, 2, 2, 2, 3559, 3560, 7, 1048, 2, 2, 3560, 3562, 7, 996, 2, 2, 3561, 3559, 3, 2, 2, 2, 3561, 3562, 3, 2, 2, 2, 3562, 3563, 3, 2, 2, 2, 3563, 3568, 5, 604, 303, 2, 3564, 3566, 7, 13, 2, 2, 3565, 3564, 3, 2, 2, 2, 3565, 3566, 3, 2, 2, 2, 3566, 3567, 3, 2, 2, 2, 3567, 3569, 5, 526, 264, 2, 3568, 3565, 3, 2, 2, 2, 3568, 3569, 3, 2, 2, 2, 3569, 3571, 3, 2, 2, 2, 3570, 3541, 3, 2, 2, 2, 3570, 3545, 3, 2, 2, 2, 3570, 3552, 3, 2, 2, 2, 3570, 3561, 3, 2, 2, 2, 3571, 243, 3, 2, 2, 2, 3572, 3573, 7, 80, 2, 2, 3573, 3578, 5, 190, 96, 2, 3574, 3575, 7, 1024, 2, 2, 3575, 3577, 5, 190, 96, 2, 3576, 3574, 3, 2, 2, 2, 3577, 3580, 3, 2, 2, 2, 3578, 3576, 3, 2, 2, 2, 3578, 3579, 3, 2, 2, 2, 3579, 3609, 3, 2, 2, 2, 3580, 3578, 3, 2, 2, 2, 3581, 3582, 7, 80, 2, 2, 3582, 3583, 7, 337, 2, 2, 3583, 3609, 7, 1037, 2, 2, 3584, 3585, 7, 80, 2, 2, 3585, 3586, 7, 116, 2, 2, 3586, 3590, 7, 1037, 2, 2, 3587, 3588, 7, 24, 2, 2, 3588, 3589, 7, 140, 2, 2, 3589, 3591, 5, 512, 257, 2, 3590, 3587, 3, 2, 2, 2, 3590, 3591, 3, 2, 2, 2, 3591, 3598, 3, 2, 2, 2, 3592, 3594, 9, 37, 2, 2, 3593, 3595, 5, 246, 124, 2, 3594, 3593, 3, 2, 2, 2, 3595, 3596, 3, 2, 2, 2, 3596, 3594, 3, 2, 2, 2, 3596, 3597, 3, 2, 2, 2, 3597, 3599, 3, 2, 2, 2, 3598, 3592, 3, 2, 2, 2, 3598, 3599, 3, 2, 2, 2, 3599, 3606, 3, 2, 2, 2, 3600, 3602, 7, 93, 2, 2, 3601, 3603, 5, 248, 125, 2, 3602, 3601, 3, 2, 2, 2, 3603, 3604, 3, 2, 2, 2, 3604, 3602, 3, 2, 2, 2, 3604, 3605, 3, 2, 2, 2, 3605, 3607, 3, 2, 2, 2, 3606, 3600, 3, 2, 2, 2, 3606, 3607, 3, 2, 2, 2, 3607, 3609, 3, 2, 2, 2, 3608, 3572, 3, 2, 2, 2, 3608, 3581, 3, 2, 2, 2, 3608, 3584, 3, 2, 2, 2, 3609, 245, 3, 2, 2, 2, 3610, 3611, 7, 157, 2, 2, 3611, 3612, 7, 18, 2, 2, 3612, 3623, 7, 1037, 2, 2, 3613, 3615, 7, 111, 2, 2, 3614, 3613, 3, 2, 2, 2, 3614, 3615, 3, 2, 2, 2, 3615, 3616, 3, 2, 2, 2, 3616, 3617, 7, 53, 2, 2, 3617, 3618, 7, 18, 2, 2, 3618, 3623, 7, 1037, 2, 2, 3619, 3620, 7, 54, 2, 2, 3620, 3621, 7, 18, 2, 2, 3621, 3623, 7, 1037, 2, 2, 3622, 3610, 3, 2, 2, 2, 3622, 3614, 3, 2, 2, 2, 3622, 3619, 3, 2, 2, 2, 3623, 247, 3, 2, 2, 2, 3624, 3625, 7, 154, 2, 2, 3625, 3626, 7, 18, 2, 2, 3626, 3631, 7, 1037, 2, 2, 3627, 3628, 7, 157, 2, 2, 3628, 3629, 7, 18, 2, 2, 3629, 3631, 7, 1037, 2, 2, 3630, 3624, 3, 2, 2, 2, 3630, 3627, 3, 2, 2, 2, 3631, 249, 3, 2, 2, 2, 3632, 3633, 7, 63, 2, 2, 3633, 3636, 5, 214, 108, 2, 3634, 3635, 7, 174, 2, 2, 3635, 3637, 5, 604, 303, 2, 3636, 3634, 3, 2, 2, 2, 3636, 3637, 3, 2, 2, 2, 3637, 3652, 3, 2, 2, 2, 3638, 3639, 7, 68, 2, 2, 3639, 3640, 7, 18, 2, 2, 3640, 3645, 5, 252, 127, 2, 3641, 3642, 7, 1024, 2, 2, 3642, 3644, 5, 252, 127, 2, 3643, 3641, 3, 2, 2, 2, 3644, 3647, 3, 2, 2, 2, 3645, 3643, 3, 2, 2, 2, 3645, 3646, 3, 2, 2, 2, 3646, 3650, 3, 2, 2, 2, 3647, 3645, 3, 2, 2, 2, 3648, 3649, 7, 176, 2, 2, 3649, 3651, 7, 511, 2, 2, 3650, 3648, 3, 2, 2, 2, 3650, 3651, 3, 2, 2, 2, 3651, 3653, 3, 2, 2, 2, 3652, 3638, 3, 2, 2, 2, 3652, 3653, 3, 2, 2, 2, 3653, 3656, 3, 2, 2, 2, 3654, 3655, 7, 69, 2, 2, 3655, 3657, 5, 604, 303, 2, 3656, 3654, 3, 2, 2, 2, 3656, 3657, 3, 2, 2, 2, 3657, 251, 3, 2, 2, 2, 3658, 3660, 5, 604, 303, 2, 3659, 3661, 9, 44, 2, 2, 3660, 3659, 3, 2, 2, 2, 3660, 3661, 3, 2, 2, 2, 3661, 253, 3, 2, 2, 2, 3662, 3673, 7, 91, 2, 2, 3663, 3664, 5, 256, 129, 2, 3664, 3665, 7, 1024, 2, 2, 3665, 3667, 3, 2, 2, 2, 3666, 3663, 3, 2, 2, 2, 3666, 3667, 3, 2, 2, 2, 3667, 3668, 3, 2, 2, 2, 3668, 3674, 5, 256, 129, 2, 3669, 3670, 5, 256, 129, 2, 3670, 3671, 7, 454, 2, 2, 3671, 3672, 5, 256, 129, 2, 3672, 3674, 3, 2, 2, 2, 3673, 3666, 3, 2, 2, 2, 3673, 3669, 3, 2, 2, 2, 3674, 255, 3, 2, 2, 2, 3675, 3678, 5, 532, 267, 2, 3676, 3678, 5, 510, 256, 2, 3677, 3675, 3, 2, 2, 2, 3677, 3676, 3, 2, 2, 2, 3678, 257, 3, 2, 2, 2, 3679, 3680, 7, 540, 2, 2, 3680, 3689, 7, 563, 2, 2, 3681, 3686, 5, 280, 141, 2, 3682, 3683, 7, 1024, 2, 2, 3683, 3685, 5, 280, 141, 2, 3684, 3682, 3, 2, 2, 2, 3685, 3688, 3, 2, 2, 2, 3686, 3684, 3, 2, 2, 2, 3686, 3687, 3, 2, 2, 2, 3687, 3690, 3, 2, 2, 2, 3688, 3686, 3, 2, 2, 2, 3689, 3681, 3, 2, 2, 2, 3689, 3690, 3, 2, 2, 2, 3690, 259, 3, 2, 2, 2, 3691, 3693, 7, 284, 2, 2, 3692, 3694, 7, 586, 2, 2, 3693, 3692, 3, 2, 2, 2, 3693, 3694, 3, 2, 2, 2, 3694, 261, 3, 2, 2, 2, 3695, 3697, 7, 308, 2, 2, 3696, 3698, 7, 586, 2, 2, 3697, 3696, 3, 2, 2, 2, 3697, 3698, 3, 2, 2, 2, 3698, 3704, 3, 2, 2, 2, 3699, 3701, 7, 12, 2, 2, 3700, 3702, 7, 450, 2, 2, 3701, 3700, 3, 2, 2, 2, 3701, 3702, 3, 2, 2, 2, 3702, 3703, 3, 2, 2, 2, 3703, 3705, 7, 293, 2, 2, 3704, 3699, 3, 2, 2, 2, 3704, 3705, 3, 2, 2, 2, 3705, 3710, 3, 2, 2, 2, 3706, 3708, 7, 450, 2, 2, 3707, 3706, 3, 2, 2, 2, 3707, 3708, 3, 2, 2, 2, 3708, 3709, 3, 2, 2, 2, 3709, 3711, 7, 126, 2, 2, 3710, 3707, 3, 2, 2, 2, 3710, 3711, 3, 2, 2, 2, 3711, 263, 3, 2, 2, 2, 3712, 3714, 7, 510, 2, 2, 3713, 3715, 7, 586, 2, 2, 3714, 3713, 3, 2, 2, 2, 3714, 3715, 3, 2, 2, 2, 3715, 3721, 3, 2, 2, 2, 3716, 3718, 7, 12, 2, 2, 3717, 3719, 7, 450, 2, 2, 3718, 3717, 3, 2, 2, 2, 3718, 3719, 3, 2, 2, 2, 3719, 3720, 3, 2, 2, 2, 3720, 3722, 7, 293, 2, 2, 3721, 3716, 3, 2, 2, 2, 3721, 3722, 3, 2, 2, 2, 3722, 3727, 3, 2, 2, 2, 3723, 3725, 7, 450, 2, 2, 3724, 3723, 3, 2, 2, 2, 3724, 3725, 3, 2, 2, 2, 3725, 3726, 3, 2, 2, 2, 3726, 3728, 7, 126, 2, 2, 3727, 3724, 3, 2, 2, 2, 3727, 3728, 3, 2, 2, 2, 3728, 265, 3, 2, 2, 2, 3729, 3730, 7, 516, 2, 2, 3730, 3731, 5, 526, 264, 2, 3731, 267, 3, 2, 2, 2, 3732, 3734, 7, 510, 2, 2, 3733, 3735, 7, 586, 2, 2, 3734, 3733, 3, 2, 2, 2, 3734, 3735, 3, 2, 2, 2, 3735, 3736, 3, 2, 2, 2, 3736, 3738, 7, 159, 2, 2, 3737, 3739, 7, 516, 2, 2, 3738, 3737, 3, 2, 2, 2, 3738, 3739, 3, 2, 2, 2, 3739, 3740, 3, 2, 2, 2, 3740, 3741, 5, 526, 264, 2, 3741, 269, 3, 2, 2, 2, 3742, 3743, 7, 126, 2, 2, 3743, 3744, 7, 516, 2, 2, 3744, 3745, 5, 526, 264, 2, 3745, 271, 3, 2, 2, 2, 3746, 3747, 7, 95, 2, 2, 3747, 3748, 7, 604, 2, 2, 3748, 3753, 5, 282, 142, 2, 3749, 3750, 7, 1024, 2, 2, 3750, 3752, 5, 282, 142, 2, 3751, 3749, 3, 2, 2, 2, 3752, 3755, 3, 2, 2, 2, 3753, 3751, 3, 2, 2, 2, 3753, 3754, 3, 2, 2, 2, 3754, 273, 3, 2, 2, 2, 3755, 3753, 3, 2, 2, 2, 3756, 3757, 7, 166, 2, 2, 3757, 3758, 7, 604, 2, 2, 3758, 275, 3, 2, 2, 2, 3759, 3760, 7, 140, 2, 2, 3760, 3761, 7, 280, 2, 2, 3761, 3762, 7, 1013, 2, 2, 3762, 3763, 9, 24, 2, 2, 3763, 277, 3, 2, 2, 2, 3764, 3766, 7, 140, 2, 2, 3765, 3767, 9, 50, 2, 2, 3766, 3765, 3, 2, 2, 2, 3766, 3767, 3, 2, 2, 2, 3767, 3768, 3, 2, 2, 2, 3768, 3769, 7, 563, 2, 2, 3769, 3774, 5, 286, 144, 2, 3770, 3771, 7, 1024, 2, 2, 3771, 3773, 5, 286, 144, 2, 3772, 3770, 3, 2, 2, 2, 3773, 3776, 3, 2, 2, 2, 3774, 3772, 3, 2, 2, 2, 3774, 3775, 3, 2, 2, 2, 3775, 279, 3, 2, 2, 2, 3776, 3774, 3, 2, 2, 2, 3777, 3778, 7, 176, 2, 2, 3778, 3779, 7, 315, 2, 2, 3779, 3785, 7, 527, 2, 2, 3780, 3781, 7, 122, 2, 2, 3781, 3785, 7, 177, 2, 2, 3782, 3783, 7, 122, 2, 2, 3783, 3785, 7, 459, 2, 2, 3784, 3777, 3, 2, 2, 2, 3784, 3780, 3, 2, 2, 2, 3784, 3782, 3, 2, 2, 2, 3785, 281, 3, 2, 2, 2, 3786, 3791, 5, 502, 252, 2, 3787, 3789, 7, 13, 2, 2, 3788, 3787, 3, 2, 2, 2, 3788, 3789, 3, 2, 2, 2, 3789, 3790, 3, 2, 2, 2, 3790, 3792, 5, 526, 264, 2, 3791, 3788, 3, 2, 2, 2, 3791, 3792, 3, 2, 2, 2, 3792, 3793, 3, 2, 2, 2, 3793, 3794, 5, 284, 143, 2, 3794, 283, 3, 2, 2, 2, 3795, 3797, 7, 122, 2, 2, 3796, 3798, 7, 404, 2, 2, 3797, 3796, 3, 2, 2, 2, 3797, 3798, 3, 2, 2, 2, 3798, 3804, 3, 2, 2, 2, 3799, 3801, 7, 97, 2, 2, 3800, 3799, 3, 2, 2, 2, 3800, 3801, 3, 2, 2, 2, 3801, 3802, 3, 2, 2, 2, 3802, 3804, 7, 177, 2, 2, 3803, 3795, 3, 2, 2, 2, 3803, 3800, 3, 2, 2, 2, 3804, 285, 3, 2, 2, 2, 3805, 3806, 7, 394, 2, 2, 3806, 3807, 7, 402, 2, 2, 3807, 3813, 5, 288, 145, 2, 3808, 3809, 7, 122, 2, 2, 3809, 3813, 7, 177, 2, 2, 3810, 3811, 7, 122, 2, 2, 3811, 3813, 7, 459, 2, 2, 3812, 3805, 3, 2, 2, 2, 3812, 3808, 3, 2, 2, 2, 3812, 3810, 3, 2, 2, 2, 3813, 287, 3, 2, 2, 2, 3814, 3815, 7, 691, 2, 2, 3815, 3822, 7, 122, 2, 2, 3816, 3817, 7, 122, 2, 2, 3817, 3822, 7, 692, 2, 2, 3818, 3819, 7, 122, 2, 2, 3819, 3822, 7, 693, 2, 2, 3820, 3822, 7, 694, 2, 2, 3821, 3814, 3, 2, 2, 2, 3821, 3816, 3, 2, 2, 2, 3821, 3818, 3, 2, 2, 2, 3821, 3820, 3, 2, 2, 2, 3822, 289, 3, 2, 2, 2, 3823, 3824, 7, 23, 2, 2, 3824, 3825, 7, 407, 2, 2, 3825, 3826, 7, 159, 2, 2, 3826, 3831, 5, 308, 155, 2, 3827, 3828, 7, 1024, 2, 2, 3828, 3830, 5, 308, 155, 2, 3829, 3827, 3, 2, 2, 2, 3830, 3833, 3, 2, 2, 2, 3831, 3829, 3, 2, 2, 2, 3831, 3832, 3, 2, 2, 2, 3832, 3835, 3, 2, 2, 2, 3833, 3831, 3, 2, 2, 2, 3834, 3836, 5, 316, 159, 2, 3835, 3834, 3, 2, 2, 2, 3835, 3836, 3, 2, 2, 2, 3836, 291, 3, 2, 2, 2, 3837, 3838, 7, 23, 2, 2, 3838, 3839, 7, 504, 2, 2, 3839, 3840, 7, 363, 2, 2, 3840, 3845, 5, 318, 160, 2, 3841, 3842, 7, 1024, 2, 2, 3842, 3844, 5, 318, 160, 2, 3843, 3841, 3, 2, 2, 2, 3844, 3847, 3, 2, 2, 2, 3845, 3843, 3, 2, 2, 2, 3845, 3846, 3, 2, 2, 2, 3846, 293, 3, 2, 2, 2, 3847, 3845, 3, 2, 2, 2, 3848, 3849, 7, 120, 2, 2, 3849, 3850, 9, 51, 2, 2, 3850, 3855, 7, 406, 2, 2, 3851, 3852, 7, 159, 2, 2, 3852, 3856, 7, 1037, 2, 2, 3853, 3854, 7, 15, 2, 2, 3854, 3856, 7, 1037, 2, 2, 3855, 3851, 3, 2, 2, 2, 3855, 3853, 3, 2, 2, 2, 3856, 295, 3, 2, 2, 2, 3857, 3858, 7, 505, 2, 2, 3858, 3859, 7, 407, 2, 2, 3859, 297, 3, 2, 2, 2, 3860, 3861, 7, 505, 2, 2, 3861, 3863, 7, 525, 2, 2, 3862, 3864, 7, 8, 2, 2, 3863, 3862, 3, 2, 2, 2, 3863, 3864, 3, 2, 2, 2, 3864, 3866, 3, 2, 2, 2, 3865, 3867, 5, 316, 159, 2, 3866, 3865, 3, 2, 2, 2, 3866, 3867, 3, 2, 2, 2, 3867, 299, 3, 2, 2, 2, 3868, 3869, 7, 540, 2, 2, 3869, 3878, 7, 525, 2, 2, 3870, 3875, 5, 322, 162, 2, 3871, 3872, 7, 1024, 2, 2, 3872, 3874, 5, 322, 162, 2, 3873, 3871, 3, 2, 2, 2, 3874, 3877, 3, 2, 2, 2, 3875, 3873, 3, 2, 2, 2, 3875, 3876, 3, 2, 2, 2, 3876, 3879, 3, 2, 2, 2, 3877, 3875, 3, 2, 2, 2, 3878, 3870, 3, 2, 2, 2, 3878, 3879, 3, 2, 2, 2, 3879, 3882, 3, 2, 2, 2, 3880, 3881, 7, 572, 2, 2, 3881, 3883, 5, 324, 163, 2, 3882, 3880, 3, 2, 2, 2, 3882, 3883, 3, 2, 2, 2, 3883, 3887, 3, 2, 2, 2, 3884, 3886, 5, 326, 164, 2, 3885, 3884, 3, 2, 2, 2, 3886, 3889, 3, 2, 2, 2, 3887, 3885, 3, 2, 2, 2, 3887, 3888, 3, 2, 2, 2, 3888, 3891, 3, 2, 2, 2, 3889, 3887, 3, 2, 2, 2, 3890, 3892, 5, 316, 159, 2, 3891, 3890, 3, 2, 2, 2, 3891, 3892, 3, 2, 2, 2, 3892, 301, 3, 2, 2, 2, 3893, 3894, 7, 546, 2, 2, 3894, 3903, 7, 525, 2, 2, 3895, 3900, 5, 322, 162, 2, 3896, 3897, 7, 1024, 2, 2, 3897, 3899, 5, 322, 162, 2, 3898, 3896, 3, 2, 2, 2, 3899, 3902, 3, 2, 2, 2, 3900, 3898, 3, 2, 2, 2, 3900, 3901, 3, 2, 2, 2, 3901, 3904, 3, 2, 2, 2, 3902, 3900, 3, 2, 2, 2, 3903, 3895, 3, 2, 2, 2, 3903, 3904, 3, 2, 2, 2, 3904, 303, 3, 2, 2, 2, 3905, 3906, 7, 540, 2, 2, 3906, 3907, 7, 374, 2, 2, 3907, 305, 3, 2, 2, 2, 3908, 3909, 7, 546, 2, 2, 3909, 3910, 7, 374, 2, 2, 3910, 307, 3, 2, 2, 2, 3911, 3912, 5, 310, 156, 2, 3912, 3913, 7, 1013, 2, 2, 3913, 3914, 7, 1037, 2, 2, 3914, 3941, 3, 2, 2, 2, 3915, 3916, 5, 312, 157, 2, 3916, 3917, 7, 1013, 2, 2, 3917, 3918, 5, 532, 267, 2, 3918, 3941, 3, 2, 2, 2, 3919, 3920, 5, 314, 158, 2, 3920, 3921, 7, 1013, 2, 2, 3921, 3922, 9, 24, 2, 2, 3922, 3941, 3, 2, 2, 2, 3923, 3924, 7, 411, 2, 2, 3924, 3925, 7, 1013, 2, 2, 3925, 3941, 7, 1040, 2, 2, 3926, 3927, 7, 381, 2, 2, 3927, 3928, 7, 1013, 2, 2, 3928, 3937, 7, 1022, 2, 2, 3929, 3934, 5, 526, 264, 2, 3930, 3931, 7, 1024, 2, 2, 3931, 3933, 5, 526, 264, 2, 3932, 3930, 3, 2, 2, 2, 3933, 3936, 3, 2, 2, 2, 3934, 3932, 3, 2, 2, 2, 3934, 3935, 3, 2, 2, 2, 3935, 3938, 3, 2, 2, 2, 3936, 3934, 3, 2, 2, 2, 3937, 3929, 3, 2, 2, 2, 3937, 3938, 3, 2, 2, 2, 3938, 3939, 3, 2, 2, 2, 3939, 3941, 7, 1023, 2, 2, 3940, 3911, 3, 2, 2, 2, 3940, 3915, 3, 2, 2, 2, 3940, 3919, 3, 2, 2, 2, 3940, 3923, 3, 2, 2, 2, 3940, 3926, 3, 2, 2, 2, 3941, 309, 3, 2, 2, 2, 3942, 3943, 9, 52, 2, 2, 3943, 311, 3, 2, 2, 2, 3944, 3945, 9, 53, 2, 2, 3945, 313, 3, 2, 2, 2, 3946, 3947, 9, 54, 2, 2, 3947, 315, 3, 2, 2, 2, 3948, 3949, 7, 60, 2, 2, 3949, 3950, 7, 295, 2, 2, 3950, 3951, 7, 1037, 2, 2, 3951, 317, 3, 2, 2, 2, 3952, 3953, 7, 497, 2, 2, 3953, 3954, 7, 1013, 2, 2, 3954, 3955, 7, 1022, 2, 2, 3955, 3956, 5, 558, 280, 2, 3956, 3957, 7, 1023, 2, 2, 3957, 4002, 3, 2, 2, 2, 3958, 3959, 7, 499, 2, 2, 3959, 3960, 7, 1013, 2, 2, 3960, 3961, 7, 1022, 2, 2, 3961, 3962, 5, 558, 280, 2, 3962, 3963, 7, 1023, 2, 2, 3963, 4002, 3, 2, 2, 2, 3964, 3965, 7, 498, 2, 2, 3965, 3966, 7, 1013, 2, 2, 3966, 3967, 7, 1022, 2, 2, 3967, 3968, 5, 560, 281, 2, 3968, 3969, 7, 1023, 2, 2, 3969, 4002, 3, 2, 2, 2, 3970, 3971, 7, 500, 2, 2, 3971, 3972, 7, 1013, 2, 2, 3972, 3973, 7, 1022, 2, 2, 3973, 3974, 5, 560, 281, 2, 3974, 3975, 7, 1023, 2, 2, 3975, 4002, 3, 2, 2, 2, 3976, 3977, 7, 502, 2, 2, 3977, 3978, 7, 1013, 2, 2, 3978, 3979, 7, 1022, 2, 2, 3979, 3980, 5, 570, 286, 2, 3980, 3981, 7, 1023, 2, 2, 3981, 4002, 3, 2, 2, 2, 3982, 3983, 7, 503, 2, 2, 3983, 3984, 7, 1013, 2, 2, 3984, 3985, 7, 1022, 2, 2, 3985, 3986, 5, 570, 286, 2, 3986, 3987, 7, 1023, 2, 2, 3987, 4002, 3, 2, 2, 2, 3988, 3989, 7, 501, 2, 2, 3989, 3990, 7, 1013, 2, 2, 3990, 3991, 7, 1022, 2, 2, 3991, 3996, 5, 320, 161, 2, 3992, 3993, 7, 1024, 2, 2, 3993, 3995, 5, 320, 161, 2, 3994, 3992, 3, 2, 2, 2, 3995, 3998, 3, 2, 2, 2, 3996, 3994, 3, 2, 2, 2, 3996, 3997, 3, 2, 2, 2, 3997, 3999, 3, 2, 2, 2, 3998, 3996, 3, 2, 2, 2, 3999, 4000, 7, 1023, 2, 2, 4000, 4002, 3, 2, 2, 2, 4001, 3952, 3, 2, 2, 2, 4001, 3958, 3, 2, 2, 2, 4001, 3964, 3, 2, 2, 2, 4001, 3970, 3, 2, 2, 2, 4001, 3976, 3, 2, 2, 2, 4001, 3982, 3, 2, 2, 2, 4001, 3988, 3, 2, 2, 2, 4002, 319, 3, 2, 2, 2, 4003, 4004, 7, 1022, 2, 2, 4004, 4005, 5, 502, 252, 2, 4005, 4006, 7, 1024, 2, 2, 4006, 4007, 5, 502, 252, 2, 4007, 4008, 7, 1023, 2, 2, 4008, 321, 3, 2, 2, 2, 4009, 4010, 9, 55, 2, 2, 4010, 323, 3, 2, 2, 2, 4011, 4012, 9, 56, 2, 2, 4012, 4013, 7, 1013, 2, 2, 4013, 4030, 5, 328, 165, 2, 4014, 4015, 7, 413, 2, 2, 4015, 4016, 7, 1013, 2, 2, 4016, 4017, 7, 1037, 2, 2, 4017, 4018, 7, 1024, 2, 2, 4018, 4019, 7, 414, 2, 2, 4019, 4020, 7, 1013, 2, 2, 4020, 4030, 5, 532, 267, 2, 4021, 4022, 7, 491, 2, 2, 4022, 4023, 7, 1013, 2, 2, 4023, 4024, 7, 1037, 2, 2, 4024, 4025, 7, 1024, 2, 2, 4025, 4026, 7, 492, 2, 2, 4026, 4027, 7, 1013, 2, 2, 4027, 4030, 5, 532, 267, 2, 4028, 4030, 7, 534, 2, 2, 4029, 4011, 3, 2, 2, 2, 4029, 4014, 3, 2, 2, 2, 4029, 4021, 3, 2, 2, 2, 4029, 4028, 3, 2, 2, 2, 4030, 325, 3, 2, 2, 2, 4031, 4032, 7, 574, 2, 2, 4032, 4033, 7, 1013, 2, 2, 4033, 4044, 7, 1037, 2, 2, 4034, 4035, 7, 470, 2, 2, 4035, 4036, 7, 1013, 2, 2, 4036, 4044, 7, 1037, 2, 2, 4037, 4038, 7, 328, 2, 2, 4038, 4039, 7, 1013, 2, 2, 4039, 4044, 7, 1037, 2, 2, 4040, 4041, 7, 473, 2, 2, 4041, 4042, 7, 1013, 2, 2, 4042, 4044, 7, 1037, 2, 2, 4043, 4031, 3, 2, 2, 2, 4043, 4034, 3, 2, 2, 2, 4043, 4037, 3, 2, 2, 2, 4043, 4040, 3, 2, 2, 2, 4044, 327, 3, 2, 2, 2, 4045, 4050, 5, 518, 260, 2, 4046, 4047, 7, 1024, 2, 2, 4047, 4049, 5, 518, 260, 2, 4048, 4046, 3, 2, 2, 2, 4049, 4052, 3, 2, 2, 2, 4050, 4048, 3, 2, 2, 2, 4050, 4051, 3, 2, 2, 2, 4051, 4055, 3, 2, 2, 2, 4052, 4050, 3, 2, 2, 2, 4053, 4055, 7, 1037, 2, 2, 4054, 4045, 3, 2, 2, 2, 4054, 4053, 3, 2, 2, 2, 4055, 329, 3, 2, 2, 2, 4056, 4057, 7, 589, 2, 2, 4057, 4058, 9, 57, 2, 2, 4058, 4060, 5, 520, 261, 2, 4059, 4061, 9, 58, 2, 2, 4060, 4059, 3, 2, 2, 2, 4060, 4061, 3, 2, 2, 2, 4061, 331, 3, 2, 2, 2, 4062, 4063, 7, 589, 2, 2, 4063, 4064, 7, 342, 2, 2, 4064, 4070, 5, 520, 261, 2, 4065, 4068, 7, 554, 2, 2, 4066, 4067, 7, 60, 2, 2, 4067, 4069, 7, 438, 2, 2, 4068, 4066, 3, 2, 2, 2, 4068, 4069, 3, 2, 2, 2, 4069, 4071, 3, 2, 2, 2, 4070, 4065, 3, 2, 2, 2, 4070, 4071, 3, 2, 2, 2, 4071, 333, 3, 2, 2, 2, 4072, 4073, 7, 589, 2, 2, 4073, 4074, 7, 477, 2, 2, 4074, 4075, 5, 520, 261, 2, 4075, 335, 3, 2, 2, 2, 4076, 4077, 7, 589, 2, 2, 4077, 4078, 7, 308, 2, 2, 4078, 4081, 5, 520, 261, 2, 4079, 4080, 7, 457, 2, 2, 4080, 4082, 7, 471, 2, 2, 4081, 4079, 3, 2, 2, 2, 4081, 4082, 3, 2, 2, 2, 4082, 337, 3, 2, 2, 2, 4083, 4084, 7, 589, 2, 2, 4084, 4085, 7, 510, 2, 2, 4085, 4086, 5, 520, 261, 2, 4086, 339, 3, 2, 2, 2, 4087, 4088, 7, 589, 2, 2, 4088, 4091, 7, 487, 2, 2, 4089, 4090, 7, 31, 2, 2, 4090, 4092, 5, 520, 261, 2, 4091, 4089, 3, 2, 2, 2, 4091, 4092, 3, 2, 2, 2, 4092, 341, 3, 2, 2, 2, 4093, 4094, 7, 477, 2, 2, 4094, 4095, 5, 526, 264, 2, 4095, 4098, 7, 63, 2, 2, 4096, 4099, 7, 1037, 2, 2, 4097, 4099, 7, 1048, 2, 2, 4098, 4096, 3, 2, 2, 2, 4098, 4097, 3, 2, 2, 2, 4099, 343, 3, 2, 2, 2, 4100, 4101, 7, 606, 2, 2, 4101, 4104, 5, 526, 264, 2, 4102, 4103, 7, 171, 2, 2, 4103, 4105, 5, 572, 287, 2, 4104, 4102, 3, 2, 2, 2, 4104, 4105, 3, 2, 2, 2, 4105, 345, 3, 2, 2, 2, 4106, 4107, 9, 59, 2, 2, 4107, 4108, 7, 477, 2, 2, 4108, 4109, 5, 526, 264, 2, 4109, 347, 3, 2, 2, 2, 4110, 4113, 5, 350, 176, 2, 4111, 4113, 5, 8, 5, 2, 4112, 4110, 3, 2, 2, 2, 4112, 4111, 3, 2, 2, 2, 4113, 349, 3, 2, 2, 2, 4114, 4115, 5, 526, 264, 2, 4115, 4116, 7, 1033, 2, 2, 4116, 4118, 3, 2, 2, 2, 4117, 4114, 3, 2, 2, 2, 4117, 4118, 3, 2, 2, 2, 4118, 4119, 3, 2, 2, 2, 4119, 4158, 7, 284, 2, 2, 4120, 4121, 5, 370, 186, 2, 4121, 4122, 7, 1025, 2, 2, 4122, 4124, 3, 2, 2, 2, 4123, 4120, 3, 2, 2, 2, 4124, 4127, 3, 2, 2, 2, 4125, 4123, 3, 2, 2, 2, 4125, 4126, 3, 2, 2, 2, 4126, 4133, 3, 2, 2, 2, 4127, 4125, 3, 2, 2, 2, 4128, 4129, 5, 372, 187, 2, 4129, 4130, 7, 1025, 2, 2, 4130, 4132, 3, 2, 2, 2, 4131, 4128, 3, 2, 2, 2, 4132, 4135, 3, 2, 2, 2, 4133, 4131, 3, 2, 2, 2, 4133, 4134, 3, 2, 2, 2, 4134, 4141, 3, 2, 2, 2, 4135, 4133, 3, 2, 2, 2, 4136, 4137, 5, 374, 188, 2, 4137, 4138, 7, 1025, 2, 2, 4138, 4140, 3, 2, 2, 2, 4139, 4136, 3, 2, 2, 2, 4140, 4143, 3, 2, 2, 2, 4141, 4139, 3, 2, 2, 2, 4141, 4142, 3, 2, 2, 2, 4142, 4149, 3, 2, 2, 2, 4143, 4141, 3, 2, 2, 2, 4144, 4145, 5, 376, 189, 2, 4145, 4146, 7, 1025, 2, 2, 4146, 4148, 3, 2, 2, 2, 4147, 4144, 3, 2, 2, 2, 4148, 4151, 3, 2, 2, 2, 4149, 4147, 3, 2, 2, 2, 4149, 4150, 3, 2, 2, 2, 4150, 4155, 3, 2, 2, 2, 4151, 4149, 3, 2, 2, 2, 4152, 4154, 5, 380, 191, 2, 4153, 4152, 3, 2, 2, 2, 4154, 4157, 3, 2, 2, 2, 4155, 4153, 3, 2, 2, 2, 4155, 4156, 3, 2, 2, 2, 4156, 4159, 3, 2, 2, 2, 4157, 4155, 3, 2, 2, 2, 4158, 4125, 3, 2, 2, 2, 4158, 4159, 3, 2, 2, 2, 4159, 4160, 3, 2, 2, 2, 4160, 4162, 7, 342, 2, 2, 4161, 4163, 5, 526, 264, 2, 4162, 4161, 3, 2, 2, 2, 4162, 4163, 3, 2, 2, 2, 4163, 351, 3, 2, 2, 2, 4164, 4167, 7, 21, 2, 2, 4165, 4168, 5, 526, 264, 2, 4166, 4168, 5, 604, 303, 2, 4167, 4165, 3, 2, 2, 2, 4167, 4166, 3, 2, 2, 2, 4167, 4168, 3, 2, 2, 2, 4168, 4170, 3, 2, 2, 2, 4169, 4171, 5, 382, 192, 2, 4170, 4169, 3, 2, 2, 2, 4171, 4172, 3, 2, 2, 2, 4172, 4170, 3, 2, 2, 2, 4172, 4173, 3, 2, 2, 2, 4173, 4180, 3, 2, 2, 2, 4174, 4176, 7, 51, 2, 2, 4175, 4177, 5, 380, 191, 2, 4176, 4175, 3, 2, 2, 2, 4177, 4178, 3, 2, 2, 2, 4178, 4176, 3, 2, 2, 2, 4178, 4179, 3, 2, 2, 2, 4179, 4181, 3, 2, 2, 2, 4180, 4174, 3, 2, 2, 2, 4180, 4181, 3, 2, 2, 2, 4181, 4182, 3, 2, 2, 2, 4182, 4183, 7, 342, 2, 2, 4183, 4184, 7, 21, 2, 2, 4184, 353, 3, 2, 2, 2, 4185, 4186, 7, 71, 2, 2, 4186, 4187, 5, 604, 303, 2, 4187, 4189, 7, 158, 2, 2, 4188, 4190, 5, 380, 191, 2, 4189, 4188, 3, 2, 2, 2, 4190, 4191, 3, 2, 2, 2, 4191, 4189, 3, 2, 2, 2, 4191, 4192, 3, 2, 2, 2, 4192, 4196, 3, 2, 2, 2, 4193, 4195, 5, 384, 193, 2, 4194, 4193, 3, 2, 2, 2, 4195, 4198, 3, 2, 2, 2, 4196, 4194, 3, 2, 2, 2, 4196, 4197, 3, 2, 2, 2, 4197, 4205, 3, 2, 2, 2, 4198, 4196, 3, 2, 2, 2, 4199, 4201, 7, 51, 2, 2, 4200, 4202, 5, 380, 191, 2, 4201, 4200, 3, 2, 2, 2, 4202, 4203, 3, 2, 2, 2, 4203, 4201, 3, 2, 2, 2, 4203, 4204, 3, 2, 2, 2, 4204, 4206, 3, 2, 2, 2, 4205, 4199, 3, 2, 2, 2, 4205, 4206, 3, 2, 2, 2, 4206, 4207, 3, 2, 2, 2, 4207, 4208, 7, 342, 2, 2, 4208, 4209, 7, 71, 2, 2, 4209, 355, 3, 2, 2, 2, 4210, 4211, 7, 82, 2, 2, 4211, 4212, 5, 526, 264, 2, 4212, 357, 3, 2, 2, 2, 4213, 4214, 7, 88, 2, 2, 4214, 4215, 5, 526, 264, 2, 4215, 359, 3, 2, 2, 2, 4216, 4217, 5, 526, 264, 2, 4217, 4218, 7, 1033, 2, 2, 4218, 4220, 3, 2, 2, 2, 4219, 4216, 3, 2, 2, 2, 4219, 4220, 3, 2, 2, 2, 4220, 4221, 3, 2, 2, 2, 4221, 4223, 7, 96, 2, 2, 4222, 4224, 5, 380, 191, 2, 4223, 4222, 3, 2, 2, 2, 4224, 4225, 3, 2, 2, 2, 4225, 4223, 3, 2, 2, 2, 4225, 4226, 3, 2, 2, 2, 4226, 4227, 3, 2, 2, 2, 4227, 4228, 7, 342, 2, 2, 4228, 4230, 7, 96, 2, 2, 4229, 4231, 5, 526, 264, 2, 4230, 4229, 3, 2, 2, 2, 4230, 4231, 3, 2, 2, 2, 4231, 361, 3, 2, 2, 2, 4232, 4233, 5, 526, 264, 2, 4233, 4234, 7, 1033, 2, 2, 4234, 4236, 3, 2, 2, 2, 4235, 4232, 3, 2, 2, 2, 4235, 4236, 3, 2, 2, 2, 4236, 4237, 3, 2, 2, 2, 4237, 4239, 7, 128, 2, 2, 4238, 4240, 5, 380, 191, 2, 4239, 4238, 3, 2, 2, 2, 4240, 4241, 3, 2, 2, 2, 4241, 4239, 3, 2, 2, 2, 4241, 4242, 3, 2, 2, 2, 4242, 4243, 3, 2, 2, 2, 4243, 4244, 7, 572, 2, 2, 4244, 4245, 5, 604, 303, 2, 4245, 4246, 7, 342, 2, 2, 4246, 4248, 7, 128, 2, 2, 4247, 4249, 5, 526, 264, 2, 4248, 4247, 3, 2, 2, 2, 4248, 4249, 3, 2, 2, 2, 4249, 363, 3, 2, 2, 2, 4250, 4251, 7, 133, 2, 2, 4251, 4252, 5, 604, 303, 2, 4252, 365, 3, 2, 2, 2, 4253, 4254, 5, 526, 264, 2, 4254, 4255, 7, 1033, 2, 2, 4255, 4257, 3, 2, 2, 2, 4256, 4253, 3, 2, 2, 2, 4256, 4257, 3, 2, 2, 2, 4257, 4258, 3, 2, 2, 2, 4258, 4259, 7, 175, 2, 2, 4259, 4260, 5, 604, 303, 2, 4260, 4262, 7, 336, 2, 2, 4261, 4263, 5, 380, 191, 2, 4262, 4261, 3, 2, 2, 2, 4263, 4264, 3, 2, 2, 2, 4264, 4262, 3, 2, 2, 2, 4264, 4265, 3, 2, 2, 2, 4265, 4266, 3, 2, 2, 2, 4266, 4267, 7, 342, 2, 2, 4267, 4269, 7, 175, 2, 2, 4268, 4270, 5, 526, 264, 2, 4269, 4268, 3, 2, 2, 2, 4269, 4270, 3, 2, 2, 2, 4270, 367, 3, 2, 2, 2, 4271, 4272, 7, 301, 2, 2, 4272, 4287, 5, 526, 264, 2, 4273, 4278, 7, 59, 2, 2, 4274, 4276, 7, 449, 2, 2, 4275, 4274, 3, 2, 2, 2, 4275, 4276, 3, 2, 2, 2, 4276, 4277, 3, 2, 2, 2, 4277, 4279, 7, 63, 2, 2, 4278, 4275, 3, 2, 2, 2, 4278, 4279, 3, 2, 2, 2, 4279, 4280, 3, 2, 2, 2, 4280, 4281, 5, 526, 264, 2, 4281, 4282, 7, 80, 2, 2, 4282, 4283, 5, 558, 280, 2, 4283, 4287, 3, 2, 2, 2, 4284, 4285, 7, 460, 2, 2, 4285, 4287, 5, 526, 264, 2, 4286, 4271, 3, 2, 2, 2, 4286, 4273, 3, 2, 2, 2, 4286, 4284, 3, 2, 2, 2, 4287, 369, 3, 2, 2, 2, 4288, 4289, 7, 39, 2, 2, 4289, 4290, 5, 558, 280, 2, 4290, 4293, 5, 546, 274, 2, 4291, 4292, 7, 40, 2, 2, 4292, 4294, 5, 574, 288, 2, 4293, 4291, 3, 2, 2, 2, 4293, 4294, 3, 2, 2, 2, 4294, 371, 3, 2, 2, 2, 4295, 4296, 7, 39, 2, 2, 4296, 4297, 5, 526, 264, 2, 4297, 4298, 7, 28, 2, 2, 4298, 4305, 7, 60, 2, 2, 4299, 4306, 5, 532, 267, 2, 4300, 4302, 7, 147, 2, 2, 4301, 4303, 7, 578, 2, 2, 4302, 4301, 3, 2, 2, 2, 4302, 4303, 3, 2, 2, 2, 4303, 4304, 3, 2, 2, 2, 4304, 4306, 7, 1037, 2, 2, 4305, 4299, 3, 2, 2, 2, 4305, 4300, 3, 2, 2, 2, 4306, 373, 3, 2, 2, 2, 4307, 4308, 7, 39, 2, 2, 4308, 4309, 5, 526, 264, 2, 4309, 4310, 7, 36, 2, 2, 4310, 4311, 7, 60, 2, 2, 4311, 4312, 5, 182, 92, 2, 4312, 375, 3, 2, 2, 2, 4313, 4314, 7, 39, 2, 2, 4314, 4315, 9, 60, 2, 2, 4315, 4316, 7, 375, 2, 2, 4316, 4317, 7, 60, 2, 2, 4317, 4322, 5, 378, 190, 2, 4318, 4319, 7, 1024, 2, 2, 4319, 4321, 5, 378, 190, 2, 4320, 4318, 3, 2, 2, 2, 4321, 4324, 3, 2, 2, 2, 4322, 4320, 3, 2, 2, 2, 4322, 4323, 3, 2, 2, 2, 4323, 4325, 3, 2, 2, 2, 4324, 4322, 3, 2, 2, 2, 4325, 4326, 5, 348, 175, 2, 4326, 377, 3, 2, 2, 2, 4327, 4339, 5, 532, 267, 2, 4328, 4330, 7, 147, 2, 2, 4329, 4331, 7, 578, 2, 2, 4330, 4329, 3, 2, 2, 2, 4330, 4331, 3, 2, 2, 2, 4331, 4332, 3, 2, 2, 2, 4332, 4339, 7, 1037, 2, 2, 4333, 4339, 5, 526, 264, 2, 4334, 4339, 7, 148, 2, 2, 4335, 4336, 7, 104, 2, 2, 4336, 4339, 7, 368, 2, 2, 4337, 4339, 7, 146, 2, 2, 4338, 4327, 3, 2, 2, 2, 4338, 4328, 3, 2, 2, 2, 4338, 4333, 3, 2, 2, 2, 4338, 4334, 3, 2, 2, 2, 4338, 4335, 3, 2, 2, 2, 4338, 4337, 3, 2, 2, 2, 4339, 379, 3, 2, 2, 2, 4340, 4343, 5, 22, 12, 2, 4341, 4343, 5, 8, 5, 2, 4342, 4340, 3, 2, 2, 2, 4342, 4341, 3, 2, 2, 2, 4343, 4344, 3, 2, 2, 2, 4344, 4345, 7, 1025, 2, 2, 4345, 381, 3, 2, 2, 2, 4346, 4349, 7, 173, 2, 2, 4347, 4350, 5, 544, 273, 2, 4348, 4350, 5, 604, 303, 2, 4349, 4347, 3, 2, 2, 2, 4349, 4348, 3, 2, 2, 2, 4350, 4351, 3, 2, 2, 2, 4351, 4353, 7, 158, 2, 2, 4352, 4354, 5, 380, 191, 2, 4353, 4352, 3, 2, 2, 2, 4354, 4355, 3, 2, 2, 2, 4355, 4353, 3, 2, 2, 2, 4355, 4356, 3, 2, 2, 2, 4356, 383, 3, 2, 2, 2, 4357, 4358, 7, 52, 2, 2, 4358, 4359, 5, 604, 303, 2, 4359, 4361, 7, 158, 2, 2, 4360, 4362, 5, 380, 191, 2, 4361, 4360, 3, 2, 2, 2, 4362, 4363, 3, 2, 2, 2, 4363, 4361, 3, 2, 2, 2, 4363, 4364, 3, 2, 2, 2, 4364, 385, 3, 2, 2, 2, 4365, 4366, 7, 9, 2, 2, 4366, 4367, 7, 574, 2, 2, 4367, 4372, 5, 404, 203, 2, 4368, 4369, 7, 1024, 2, 2, 4369, 4371, 5, 404, 203, 2, 4370, 4368, 3, 2, 2, 2, 4371, 4374, 3, 2, 2, 2, 4372, 4370, 3, 2, 2, 2, 4372, 4373, 3, 2, 2, 2, 4373, 4420, 3, 2, 2, 2, 4374, 4372, 3, 2, 2, 2, 4375, 4376, 7, 9, 2, 2, 4376, 4378, 7, 574, 2, 2, 4377, 4379, 5, 580, 291, 2, 4378, 4377, 3, 2, 2, 2, 4378, 4379, 3, 2, 2, 2, 4379, 4380, 3, 2, 2, 2, 4380, 4385, 5, 406, 204, 2, 4381, 4382, 7, 1024, 2, 2, 4382, 4384, 5, 406, 204, 2, 4383, 4381, 3, 2, 2, 2, 4384, 4387, 3, 2, 2, 2, 4385, 4383, 3, 2, 2, 2, 4385, 4386, 3, 2, 2, 2, 4386, 4402, 3, 2, 2, 2, 4387, 4385, 3, 2, 2, 2, 4388, 4400, 7, 130, 2, 2, 4389, 4401, 7, 452, 2, 2, 4390, 4397, 5, 408, 205, 2, 4391, 4393, 7, 12, 2, 2, 4392, 4391, 3, 2, 2, 2, 4392, 4393, 3, 2, 2, 2, 4393, 4394, 3, 2, 2, 2, 4394, 4396, 5, 408, 205, 2, 4395, 4392, 3, 2, 2, 2, 4396, 4399, 3, 2, 2, 2, 4397, 4395, 3, 2, 2, 2, 4397, 4398, 3, 2, 2, 2, 4398, 4401, 3, 2, 2, 2, 4399, 4397, 3, 2, 2, 2, 4400, 4389, 3, 2, 2, 2, 4400, 4390, 3, 2, 2, 2, 4401, 4403, 3, 2, 2, 2, 4402, 4388, 3, 2, 2, 2, 4402, 4403, 3, 2, 2, 2, 4403, 4410, 3, 2, 2, 2, 4404, 4406, 7, 176, 2, 2, 4405, 4407, 5, 410, 206, 2, 4406, 4405, 3, 2, 2, 2, 4407, 4408, 3, 2, 2, 2, 4408, 4406, 3, 2, 2, 2, 4408, 4409, 3, 2, 2, 2, 4409, 4411, 3, 2, 2, 2, 4410, 4404, 3, 2, 2, 2, 4410, 4411, 3, 2, 2, 2, 4411, 4416, 3, 2, 2, 2, 4412, 4415, 5, 412, 207, 2, 4413, 4415, 5, 414, 208, 2, 4414, 4412, 3, 2, 2, 2, 4414, 4413, 3, 2, 2, 2, 4415, 4418, 3, 2, 2, 2, 4416, 4414, 3, 2, 2, 2, 4416, 4417, 3, 2, 2, 2, 4417, 4420, 3, 2, 2, 2, 4418, 4416, 3, 2, 2, 2, 4419, 4365, 3, 2, 2, 2, 4419, 4375, 3, 2, 2, 2, 4420, 387, 3, 2, 2, 2, 4421, 4422, 7, 32, 2, 2, 4422, 4423, 7, 574, 2, 2, 4423, 4428, 5, 406, 204, 2, 4424, 4425, 7, 1024, 2, 2, 4425, 4427, 5, 406, 204, 2, 4426, 4424, 3, 2, 2, 2, 4427, 4430, 3, 2, 2, 2, 4428, 4426, 3, 2, 2, 2, 4428, 4429, 3, 2, 2, 2, 4429, 4476, 3, 2, 2, 2, 4430, 4428, 3, 2, 2, 2, 4431, 4432, 7, 32, 2, 2, 4432, 4434, 7, 574, 2, 2, 4433, 4435, 5, 582, 292, 2, 4434, 4433, 3, 2, 2, 2, 4434, 4435, 3, 2, 2, 2, 4435, 4436, 3, 2, 2, 2, 4436, 4441, 5, 406, 204, 2, 4437, 4438, 7, 1024, 2, 2, 4438, 4440, 5, 406, 204, 2, 4439, 4437, 3, 2, 2, 2, 4440, 4443, 3, 2, 2, 2, 4441, 4439, 3, 2, 2, 2, 4441, 4442, 3, 2, 2, 2, 4442, 4458, 3, 2, 2, 2, 4443, 4441, 3, 2, 2, 2, 4444, 4456, 7, 130, 2, 2, 4445, 4457, 7, 452, 2, 2, 4446, 4453, 5, 408, 205, 2, 4447, 4449, 7, 12, 2, 2, 4448, 4447, 3, 2, 2, 2, 4448, 4449, 3, 2, 2, 2, 4449, 4450, 3, 2, 2, 2, 4450, 4452, 5, 408, 205, 2, 4451, 4448, 3, 2, 2, 2, 4452, 4455, 3, 2, 2, 2, 4453, 4451, 3, 2, 2, 2, 4453, 4454, 3, 2, 2, 2, 4454, 4457, 3, 2, 2, 2, 4455, 4453, 3, 2, 2, 2, 4456, 4445, 3, 2, 2, 2, 4456, 4446, 3, 2, 2, 2, 4457, 4459, 3, 2, 2, 2, 4458, 4444, 3, 2, 2, 2, 4458, 4459, 3, 2, 2, 2, 4459, 4466, 3, 2, 2, 2, 4460, 4462, 7, 176, 2, 2, 4461, 4463, 5, 410, 206, 2, 4462, 4461, 3, 2, 2, 2, 4463, 4464, 3, 2, 2, 2, 4464, 4462, 3, 2, 2, 2, 4464, 4465, 3, 2, 2, 2, 4465, 4467, 3, 2, 2, 2, 4466, 4460, 3, 2, 2, 2, 4466, 4467, 3, 2, 2, 2, 4467, 4472, 3, 2, 2, 2, 4468, 4471, 5, 412, 207, 2, 4469, 4471, 5, 414, 208, 2, 4470, 4468, 3, 2, 2, 2, 4470, 4469, 3, 2, 2, 2, 4471, 4474, 3, 2, 2, 2, 4472, 4470, 3, 2, 2, 2, 4472, 4473, 3, 2, 2, 2, 4473, 4476, 3, 2, 2, 2, 4474, 4472, 3, 2, 2, 2, 4475, 4421, 3, 2, 2, 2, 4475, 4431, 3, 2, 2, 2, 4476, 389, 3, 2, 2, 2, 4477, 4478, 7, 49, 2, 2, 4478, 4480, 7, 574, 2, 2, 4479, 4481, 5, 580, 291, 2, 4480, 4479, 3, 2, 2, 2, 4480, 4481, 3, 2, 2, 2, 4481, 4482, 3, 2, 2, 2, 4482, 4487, 5, 508, 255, 2, 4483, 4484, 7, 1024, 2, 2, 4484, 4486, 5, 508, 255, 2, 4485, 4483, 3, 2, 2, 2, 4486, 4489, 3, 2, 2, 2, 4487, 4485, 3, 2, 2, 2, 4487, 4488, 3, 2, 2, 2, 4488, 391, 3, 2, 2, 2, 4489, 4487, 3, 2, 2, 2, 4490, 4491, 7, 67, 2, 2, 4491, 4496, 5, 416, 209, 2, 4492, 4493, 7, 1024, 2, 2, 4493, 4495, 5, 416, 209, 2, 4494, 4492, 3, 2, 2, 2, 4495, 4498, 3, 2, 2, 2, 4496, 4494, 3, 2, 2, 2, 4496, 4497, 3, 2, 2, 2, 4497, 4499, 3, 2, 2, 2, 4498, 4496, 3, 2, 2, 2, 4499, 4501, 7, 108, 2, 2, 4500, 4502, 9, 61, 2, 2, 4501, 4500, 3, 2, 2, 2, 4501, 4502, 3, 2, 2, 2, 4502, 4503, 3, 2, 2, 2, 4503, 4504, 5, 420, 211, 2, 4504, 4505, 7, 159, 2, 2, 4505, 4510, 5, 406, 204, 2, 4506, 4507, 7, 1024, 2, 2, 4507, 4509, 5, 406, 204, 2, 4508, 4506, 3, 2, 2, 2, 4509, 4512, 3, 2, 2, 2, 4510, 4508, 3, 2, 2, 2, 4510, 4511, 3, 2, 2, 2, 4511, 4527, 3, 2, 2, 2, 4512, 4510, 3, 2, 2, 2, 4513, 4525, 7, 130, 2, 2, 4514, 4526, 7, 452, 2, 2, 4515, 4522, 5, 408, 205, 2, 4516, 4518, 7, 12, 2, 2, 4517, 4516, 3, 2, 2, 2, 4517, 4518, 3, 2, 2, 2, 4518, 4519, 3, 2, 2, 2, 4519, 4521, 5, 408, 205, 2, 4520, 4517, 3, 2, 2, 2, 4521, 4524, 3, 2, 2, 2, 4522, 4520, 3, 2, 2, 2, 4522, 4523, 3, 2, 2, 2, 4523, 4526, 3, 2, 2, 2, 4524, 4522, 3, 2, 2, 2, 4525, 4514, 3, 2, 2, 2, 4525, 4515, 3, 2, 2, 2, 4526, 4528, 3, 2, 2, 2, 4527, 4513, 3, 2, 2, 2, 4527, 4528, 3, 2, 2, 2, 4528, 4538, 3, 2, 2, 2, 4529, 4535, 7, 176, 2, 2, 4530, 4531, 7, 67, 2, 2, 4531, 4534, 7, 110, 2, 2, 4532, 4534, 5, 410, 206, 2, 4533, 4530, 3, 2, 2, 2, 4533, 4532, 3, 2, 2, 2, 4534, 4537, 3, 2, 2, 2, 4535, 4533, 3, 2, 2, 2, 4535, 4536, 3, 2, 2, 2, 4536, 4539, 3, 2, 2, 2, 4537, 4535, 3, 2, 2, 2, 4538, 4529, 3, 2, 2, 2, 4538, 4539, 3, 2, 2, 2, 4539, 393, 3, 2, 2, 2, 4540, 4541, 7, 67, 2, 2, 4541, 4542, 7, 483, 2, 2, 4542, 4543, 7, 108, 2, 2, 4543, 4544, 5, 508, 255, 2, 4544, 4545, 7, 159, 2, 2, 4545, 4550, 5, 508, 255, 2, 4546, 4547, 7, 1024, 2, 2, 4547, 4549, 5, 508, 255, 2, 4548, 4546, 3, 2, 2, 2, 4549, 4552, 3, 2, 2, 2, 4550, 4548, 3, 2, 2, 2, 4550, 4551, 3, 2, 2, 2, 4551, 4556, 3, 2, 2, 2, 4552, 4550, 3, 2, 2, 2, 4553, 4554, 7, 176, 2, 2, 4554, 4555, 7, 67, 2, 2, 4555, 4557, 7, 110, 2, 2, 4556, 4553, 3, 2, 2, 2, 4556, 4557, 3, 2, 2, 2, 4557, 395, 3, 2, 2, 2, 4558, 4559, 7, 127, 2, 2, 4559, 4560, 7, 574, 2, 2, 4560, 4565, 5, 422, 212, 2, 4561, 4562, 7, 1024, 2, 2, 4562, 4564, 5, 422, 212, 2, 4563, 4561, 3, 2, 2, 2, 4564, 4567, 3, 2, 2, 2, 4565, 4563, 3, 2, 2, 2, 4565, 4566, 3, 2, 2, 2, 4566, 397, 3, 2, 2, 2, 4567, 4565, 3, 2, 2, 2, 4568, 4569, 7, 134, 2, 2, 4569, 4574, 5, 416, 209, 2, 4570, 4571, 7, 1024, 2, 2, 4571, 4573, 5, 416, 209, 2, 4572, 4570, 3, 2, 2, 2, 4573, 4576, 3, 2, 2, 2, 4574, 4572, 3, 2, 2, 2, 4574, 4575, 3, 2, 2, 2, 4575, 4577, 3, 2, 2, 2, 4576, 4574, 3, 2, 2, 2, 4577, 4579, 7, 108, 2, 2, 4578, 4580, 9, 61, 2, 2, 4579, 4578, 3, 2, 2, 2, 4579, 4580, 3, 2, 2, 2, 4580, 4581, 3, 2, 2, 2, 4581, 4582, 5, 420, 211, 2, 4582, 4583, 7, 63, 2, 2, 4583, 4588, 5, 508, 255, 2, 4584, 4585, 7, 1024, 2, 2, 4585, 4587, 5, 508, 255, 2, 4586, 4584, 3, 2, 2, 2, 4587, 4590, 3, 2, 2, 2, 4588, 4586, 3, 2, 2, 2, 4588, 4589, 3, 2, 2, 2, 4589, 4609, 3, 2, 2, 2, 4590, 4588, 3, 2, 2, 2, 4591, 4592, 7, 134, 2, 2, 4592, 4594, 7, 8, 2, 2, 4593, 4595, 7, 612, 2, 2, 4594, 4593, 3, 2, 2, 2, 4594, 4595, 3, 2, 2, 2, 4595, 4596, 3, 2, 2, 2, 4596, 4597, 7, 1024, 2, 2, 4597, 4598, 7, 67, 2, 2, 4598, 4599, 7, 110, 2, 2, 4599, 4600, 7, 63, 2, 2, 4600, 4605, 5, 508, 255, 2, 4601, 4602, 7, 1024, 2, 2, 4602, 4604, 5, 508, 255, 2, 4603, 4601, 3, 2, 2, 2, 4604, 4607, 3, 2, 2, 2, 4605, 4603, 3, 2, 2, 2, 4605, 4606, 3, 2, 2, 2, 4606, 4609, 3, 2, 2, 2, 4607, 4605, 3, 2, 2, 2, 4608, 4568, 3, 2, 2, 2, 4608, 4591, 3, 2, 2, 2, 4609, 399, 3, 2, 2, 2, 4610, 4611, 7, 134, 2, 2, 4611, 4612, 7, 483, 2, 2, 4612, 4613, 7, 108, 2, 2, 4613, 4614, 5, 508, 255, 2, 4614, 4615, 7, 63, 2, 2, 4615, 4620, 5, 508, 255, 2, 4616, 4617, 7, 1024, 2, 2, 4617, 4619, 5, 508, 255, 2, 4618, 4616, 3, 2, 2, 2, 4619, 4622, 3, 2, 2, 2, 4620, 4618, 3, 2, 2, 2, 4620, 4621, 3, 2, 2, 2, 4621, 401, 3, 2, 2, 2, 4622, 4620, 3, 2, 2, 2, 4623, 4624, 7, 140, 2, 2, 4624, 4627, 7, 470, 2, 2, 4625, 4626, 7, 60, 2, 2, 4626, 4628, 5, 508, 255, 2, 4627, 4625, 3, 2, 2, 2, 4627, 4628, 3, 2, 2, 2, 4628, 4629, 3, 2, 2, 2, 4629, 4632, 7, 1013, 2, 2, 4630, 4633, 5, 598, 300, 2, 4631, 4633, 7, 1037, 2, 2, 4632, 4630, 3, 2, 2, 2, 4632, 4631, 3, 2, 2, 2, 4633, 403, 3, 2, 2, 2, 4634, 4635, 5, 508, 255, 2, 4635, 4636, 5, 412, 207, 2, 4636, 405, 3, 2, 2, 2, 4637, 4638, 5, 508, 255, 2, 4638, 4639, 7, 380, 2, 2, 4639, 4640, 7, 18, 2, 2, 4640, 4641, 7, 470, 2, 2, 4641, 4642, 7, 1037, 2, 2, 4642, 4662, 3, 2, 2, 2, 4643, 4644, 5, 508, 255, 2, 4644, 4647, 7, 380, 2, 2, 4645, 4646, 7, 176, 2, 2, 4646, 4648, 5, 524, 263, 2, 4647, 4645, 3, 2, 2, 2, 4647, 4648, 3, 2, 2, 2, 4648, 4649, 3, 2, 2, 2, 4649, 4650, 7, 18, 2, 2, 4650, 4651, 7, 1037, 2, 2, 4651, 4662, 3, 2, 2, 2, 4652, 4653, 5, 508, 255, 2, 4653, 4654, 7, 380, 2, 2, 4654, 4655, 7, 176, 2, 2, 4655, 4658, 5, 524, 263, 2, 4656, 4657, 7, 13, 2, 2, 4657, 4659, 7, 1037, 2, 2, 4658, 4656, 3, 2, 2, 2, 4658, 4659, 3, 2, 2, 2, 4659, 4662, 3, 2, 2, 2, 4660, 4662, 5, 508, 255, 2, 4661, 4637, 3, 2, 2, 2, 4661, 4643, 3, 2, 2, 2, 4661, 4652, 3, 2, 2, 2, 4661, 4660, 3, 2, 2, 2, 4662, 407, 3, 2, 2, 2, 4663, 4672, 7, 152, 2, 2, 4664, 4672, 7, 588, 2, 2, 4665, 4666, 7, 298, 2, 2, 4666, 4672, 7, 1037, 2, 2, 4667, 4668, 7, 395, 2, 2, 4668, 4672, 7, 1037, 2, 2, 4669, 4670, 7, 551, 2, 2, 4670, 4672, 7, 1037, 2, 2, 4671, 4663, 3, 2, 2, 2, 4671, 4664, 3, 2, 2, 2, 4671, 4665, 3, 2, 2, 2, 4671, 4667, 3, 2, 2, 2, 4671, 4669, 3, 2, 2, 2, 4672, 409, 3, 2, 2, 2, 4673, 4674, 7, 429, 2, 2, 4674, 4682, 5, 532, 267, 2, 4675, 4676, 7, 432, 2, 2, 4676, 4682, 5, 532, 267, 2, 4677, 4678, 7, 428, 2, 2, 4678, 4682, 5, 532, 267, 2, 4679, 4680, 7, 433, 2, 2, 4680, 4682, 5, 532, 267, 2, 4681, 4673, 3, 2, 2, 2, 4681, 4675, 3, 2, 2, 2, 4681, 4677, 3, 2, 2, 2, 4681, 4679, 3, 2, 2, 2, 4682, 411, 3, 2, 2, 2, 4683, 4684, 7, 470, 2, 2, 4684, 4691, 7, 355, 2, 2, 4685, 4692, 7, 40, 2, 2, 4686, 4692, 7, 448, 2, 2, 4687, 4688, 7, 79, 2, 2, 4688, 4689, 5, 532, 267, 2, 4689, 4690, 7, 598, 2, 2, 4690, 4692, 3, 2, 2, 2, 4691, 4685, 3, 2, 2, 2, 4691, 4686, 3, 2, 2, 2, 4691, 4687, 3, 2, 2, 2, 4691, 4692, 3, 2, 2, 2, 4692, 413, 3, 2, 2, 2, 4693, 4694, 7, 272, 2, 2, 4694, 4695, 9, 62, 2, 2, 4695, 415, 3, 2, 2, 2, 4696, 4701, 5, 418, 210, 2, 4697, 4698, 7, 1022, 2, 2, 4698, 4699, 5, 558, 280, 2, 4699, 4700, 7, 1023, 2, 2, 4700, 4702, 3, 2, 2, 2, 4701, 4697, 3, 2, 2, 2, 4701, 4702, 3, 2, 2, 2, 4702, 417, 3, 2, 2, 2, 4703, 4705, 7, 8, 2, 2, 4704, 4706, 7, 612, 2, 2, 4705, 4704, 3, 2, 2, 2, 4705, 4706, 3, 2, 2, 2, 4706, 4775, 3, 2, 2, 2, 4707, 4709, 7, 9, 2, 2, 4708, 4710, 7, 605, 2, 2, 4709, 4708, 3, 2, 2, 2, 4709, 4710, 3, 2, 2, 2, 4710, 4775, 3, 2, 2, 2, 4711, 4719, 7, 32, 2, 2, 4712, 4713, 7, 559, 2, 2, 4713, 4720, 7, 604, 2, 2, 4714, 4720, 7, 605, 2, 2, 4715, 4720, 7, 580, 2, 2, 4716, 4720, 7, 574, 2, 2, 4717, 4720, 7, 558, 2, 2, 4718, 4720, 7, 509, 2, 2, 4719, 4712, 3, 2, 2, 2, 4719, 4714, 3, 2, 2, 2, 4719, 4715, 3, 2, 2, 2, 4719, 4716, 3, 2, 2, 2, 4719, 4717, 3, 2, 2, 2, 4719, 4718, 3, 2, 2, 2, 4719, 4720, 3, 2, 2, 2, 4720, 4775, 3, 2, 2, 2, 4721, 4775, 7, 42, 2, 2, 4722, 4724, 7, 49, 2, 2, 4723, 4725, 7, 509, 2, 2, 4724, 4723, 3, 2, 2, 2, 4724, 4725, 3, 2, 2, 2, 4725, 4775, 3, 2, 2, 2, 4726, 4775, 7, 350, 2, 2, 4727, 4775, 7, 606, 2, 2, 4728, 4775, 7, 607, 2, 2, 4729, 4730, 7, 67, 2, 2, 4730, 4775, 7, 110, 2, 2, 4731, 4775, 7, 74, 2, 2, 4732, 4775, 7, 78, 2, 2, 4733, 4734, 7, 95, 2, 2, 4734, 4775, 7, 604, 2, 2, 4735, 4775, 7, 608, 2, 2, 4736, 4775, 7, 483, 2, 2, 4737, 4775, 7, 124, 2, 2, 4738, 4775, 7, 609, 2, 2, 4739, 4740, 7, 504, 2, 2, 4740, 4775, 9, 63, 2, 2, 4741, 4775, 7, 139, 2, 2, 4742, 4743, 7, 142, 2, 2, 4743, 4775, 9, 64, 2, 2, 4744, 4775, 7, 610, 2, 2, 4745, 4775, 7, 611, 2, 2, 4746, 4775, 7, 161, 2, 2, 4747, 4775, 7, 168, 2, 2, 4748, 4775, 7, 169, 2, 2, 4749, 4775, 7, 614, 2, 2, 4750, 4775, 7, 615, 2, 2, 4751, 4775, 7, 616, 2, 2, 4752, 4775, 7, 617, 2, 2, 4753, 4775, 7, 618, 2, 2, 4754, 4775, 7, 619, 2, 2, 4755, 4775, 7, 620, 2, 2, 4756, 4775, 7, 621, 2, 2, 4757, 4775, 7, 622, 2, 2, 4758, 4775, 7, 623, 2, 2, 4759, 4775, 7, 624, 2, 2, 4760, 4775, 7, 625, 2, 2, 4761, 4775, 7, 626, 2, 2, 4762, 4775, 7, 627, 2, 2, 4763, 4775, 7, 628, 2, 2, 4764, 4775, 7, 629, 2, 2, 4765, 4775, 7, 630, 2, 2, 4766, 4775, 7, 631, 2, 2, 4767, 4775, 7, 632, 2, 2, 4768, 4775, 7, 633, 2, 2, 4769, 4775, 7, 634, 2, 2, 4770, 4775, 7, 635, 2, 2, 4771, 4775, 7, 636, 2, 2, 4772, 4775, 7, 637, 2, 2, 4773, 4775, 7, 638, 2, 2, 4774, 4703, 3, 2, 2, 2, 4774, 4707, 3, 2, 2, 2, 4774, 4711, 3, 2, 2, 2, 4774, 4721, 3, 2, 2, 2, 4774, 4722, 3, 2, 2, 2, 4774, 4726, 3, 2, 2, 2, 4774, 4727, 3, 2, 2, 2, 4774, 4728, 3, 2, 2, 2, 4774, 4729, 3, 2, 2, 2, 4774, 4731, 3, 2, 2, 2, 4774, 4732, 3, 2, 2, 2, 4774, 4733, 3, 2, 2, 2, 4774, 4735, 3, 2, 2, 2, 4774, 4736, 3, 2, 2, 2, 4774, 4737, 3, 2, 2, 2, 4774, 4738, 3, 2, 2, 2, 4774, 4739, 3, 2, 2, 2, 4774, 4741, 3, 2, 2, 2, 4774, 4742, 3, 2, 2, 2, 4774, 4744, 3, 2, 2, 2, 4774, 4745, 3, 2, 2, 2, 4774, 4746, 3, 2, 2, 2, 4774, 4747, 3, 2, 2, 2, 4774, 4748, 3, 2, 2, 2, 4774, 4749, 3, 2, 2, 2, 4774, 4750, 3, 2, 2, 2, 4774, 4751, 3, 2, 2, 2, 4774, 4752, 3, 2, 2, 2, 4774, 4753, 3, 2, 2, 2, 4774, 4754, 3, 2, 2, 2, 4774, 4755, 3, 2, 2, 2, 4774, 4756, 3, 2, 2, 2, 4774, 4757, 3, 2, 2, 2, 4774, 4758, 3, 2, 2, 2, 4774, 4759, 3, 2, 2, 2, 4774, 4760, 3, 2, 2, 2, 4774, 4761, 3, 2, 2, 2, 4774, 4762, 3, 2, 2, 2, 4774, 4763, 3, 2, 2, 2, 4774, 4764, 3, 2, 2, 2, 4774, 4765, 3, 2, 2, 2, 4774, 4766, 3, 2, 2, 2, 4774, 4767, 3, 2, 2, 2, 4774, 4768, 3, 2, 2, 2, 4774, 4769, 3, 2, 2, 2, 4774, 4770, 3, 2, 2, 2, 4774, 4771, 3, 2, 2, 2, 4774, 4772, 3, 2, 2, 2, 4774, 4773, 3, 2, 2, 2, 4775, 419, 3, 2, 2, 2, 4776, 4793, 7, 1005, 2, 2, 4777, 4778, 7, 1005, 2, 2, 4778, 4779, 7, 1021, 2, 2, 4779, 4793, 7, 1005, 2, 2, 4780, 4781, 5, 526, 264, 2, 4781, 4782, 7, 1021, 2, 2, 4782, 4783, 7, 1005, 2, 2, 4783, 4793, 3, 2, 2, 2, 4784, 4785, 5, 526, 264, 2, 4785, 4786, 7, 1021, 2, 2, 4786, 4787, 5, 526, 264, 2, 4787, 4793, 3, 2, 2, 2, 4788, 4789, 5, 526, 264, 2, 4789, 4790, 5, 530, 266, 2, 4790, 4793, 3, 2, 2, 2, 4791, 4793, 5, 526, 264, 2, 4792, 4776, 3, 2, 2, 2, 4792, 4777, 3, 2, 2, 2, 4792, 4780, 3, 2, 2, 2, 4792, 4784, 3, 2, 2, 2, 4792, 4788, 3, 2, 2, 2, 4792, 4791, 3, 2, 2, 2, 4793, 421, 3, 2, 2, 2, 4794, 4795, 5, 508, 255, 2, 4795, 4796, 7, 159, 2, 2, 4796, 4797, 5, 508, 255, 2, 4797, 423, 3, 2, 2, 2, 4798, 4800, 7, 11, 2, 2, 4799, 4801, 9, 65, 2, 2, 4800, 4799, 3, 2, 2, 2, 4800, 4801, 3, 2, 2, 2, 4801, 4802, 3, 2, 2, 2, 4802, 4803, 7, 156, 2, 2, 4803, 4804, 5, 560, 281, 2, 4804, 425, 3, 2, 2, 2, 4805, 4806, 7, 25, 2, 2, 4806, 4807, 7, 156, 2, 2, 4807, 4811, 5, 560, 281, 2, 4808, 4810, 5, 434, 218, 2, 4809, 4808, 3, 2, 2, 2, 4810, 4813, 3, 2, 2, 2, 4811, 4809, 3, 2, 2, 2, 4811, 4812, 3, 2, 2, 2, 4812, 427, 3, 2, 2, 2, 4813, 4811, 3, 2, 2, 2, 4814, 4815, 7, 296, 2, 2, 4815, 4816, 7, 156, 2, 2, 4816, 4818, 5, 560, 281, 2, 4817, 4819, 9, 66, 2, 2, 4818, 4817, 3, 2, 2, 2, 4818, 4819, 3, 2, 2, 2, 4819, 429, 3, 2, 2, 2, 4820, 4822, 7, 109, 2, 2, 4821, 4823, 9, 65, 2, 2, 4822, 4821, 3, 2, 2, 2, 4822, 4823, 3, 2, 2, 2, 4823, 4824, 3, 2, 2, 2, 4824, 4825, 7, 156, 2, 2, 4825, 4826, 5, 560, 281, 2, 4826, 431, 3, 2, 2, 2, 4827, 4829, 7, 496, 2, 2, 4828, 4830, 9, 65, 2, 2, 4829, 4828, 3, 2, 2, 2, 4829, 4830, 3, 2, 2, 2, 4830, 4831, 3, 2, 2, 2, 4831, 4832, 7, 156, 2, 2, 4832, 4834, 5, 560, 281, 2, 4833, 4835, 7, 485, 2, 2, 4834, 4833, 3, 2, 2, 2, 4834, 4835, 3, 2, 2, 2, 4835, 4837, 3, 2, 2, 2, 4836, 4838, 7, 357, 2, 2, 4837, 4836, 3, 2, 2, 2, 4837, 4838, 3, 2, 2, 2, 4838, 4840, 3, 2, 2, 2, 4839, 4841, 7, 575, 2, 2, 4840, 4839, 3, 2, 2, 2, 4840, 4841, 3, 2, 2, 2, 4841, 433, 3, 2, 2, 2, 4842, 4843, 7, 60, 2, 2, 4843, 4850, 7, 573, 2, 2, 4844, 4850, 7, 485, 2, 2, 4845, 4850, 7, 359, 2, 2, 4846, 4850, 7, 434, 2, 2, 4847, 4850, 7, 357, 2, 2, 4848, 4850, 7, 294, 2, 2, 4849, 4842, 3, 2, 2, 2, 4849, 4844, 3, 2, 2, 2, 4849, 4845, 3, 2, 2, 2, 4849, 4846, 3, 2, 2, 2, 4849, 4847, 3, 2, 2, 2, 4849, 4848, 3, 2, 2, 2, 4850, 435, 3, 2, 2, 2, 4851, 4853, 7, 32, 2, 2, 4852, 4854, 7, 275, 2, 2, 4853, 4852, 3, 2, 2, 2, 4853, 4854, 3, 2, 2, 2, 4854, 4855, 3, 2, 2, 2, 4855, 4856, 7, 370, 2, 2, 4856, 4857, 5, 526, 264, 2, 4857, 4858, 7, 508, 2, 2, 4858, 4859, 9, 67, 2, 2, 4859, 4860, 7, 530, 2, 2, 4860, 4861, 7, 1037, 2, 2, 4861, 437, 3, 2, 2, 2, 4862, 4863, 7, 387, 2, 2, 4863, 4864, 7, 472, 2, 2, 4864, 4865, 5, 526, 264, 2, 4865, 4866, 7, 530, 2, 2, 4866, 4867, 7, 1037, 2, 2, 4867, 439, 3, 2, 2, 2, 4868, 4869, 7, 570, 2, 2, 4869, 4870, 7, 472, 2, 2, 4870, 4871, 5, 526, 264, 2, 4871, 441, 3, 2, 2, 2, 4872, 4873, 7, 140, 2, 2, 4873, 4874, 5, 446, 224, 2, 4874, 4875, 9, 68, 2, 2, 4875, 4883, 5, 604, 303, 2, 4876, 4877, 7, 1024, 2, 2, 4877, 4878, 5, 446, 224, 2, 4878, 4879, 9, 68, 2, 2, 4879, 4880, 5, 604, 303, 2, 4880, 4882, 3, 2, 2, 2, 4881, 4876, 3, 2, 2, 2, 4882, 4885, 3, 2, 2, 2, 4883, 4881, 3, 2, 2, 2, 4883, 4884, 3, 2, 2, 2, 4884, 4924, 3, 2, 2, 2, 4885, 4883, 3, 2, 2, 2, 4886, 4890, 7, 140, 2, 2, 4887, 4888, 7, 24, 2, 2, 4888, 4891, 7, 140, 2, 2, 4889, 4891, 7, 733, 2, 2, 4890, 4887, 3, 2, 2, 2, 4890, 4889, 3, 2, 2, 2, 4891, 4894, 3, 2, 2, 2, 4892, 4895, 5, 512, 257, 2, 4893, 4895, 7, 40, 2, 2, 4894, 4892, 3, 2, 2, 2, 4894, 4893, 3, 2, 2, 2, 4895, 4924, 3, 2, 2, 2, 4896, 4897, 7, 140, 2, 2, 4897, 4904, 7, 446, 2, 2, 4898, 4901, 5, 512, 257, 2, 4899, 4900, 7, 26, 2, 2, 4900, 4902, 5, 514, 258, 2, 4901, 4899, 3, 2, 2, 2, 4901, 4902, 3, 2, 2, 2, 4902, 4905, 3, 2, 2, 2, 4903, 4905, 7, 40, 2, 2, 4904, 4898, 3, 2, 2, 2, 4904, 4903, 3, 2, 2, 2, 4905, 4924, 3, 2, 2, 2, 4906, 4924, 5, 402, 202, 2, 4907, 4924, 5, 278, 140, 2, 4908, 4924, 5, 276, 139, 2, 4909, 4910, 7, 140, 2, 2, 4910, 4911, 5, 500, 251, 2, 4911, 4912, 9, 68, 2, 2, 4912, 4920, 5, 604, 303, 2, 4913, 4914, 7, 1024, 2, 2, 4914, 4915, 5, 500, 251, 2, 4915, 4916, 9, 68, 2, 2, 4916, 4917, 5, 604, 303, 2, 4917, 4919, 3, 2, 2, 2, 4918, 4913, 3, 2, 2, 2, 4919, 4922, 3, 2, 2, 2, 4920, 4918, 3, 2, 2, 2, 4920, 4921, 3, 2, 2, 2, 4921, 4924, 3, 2, 2, 2, 4922, 4920, 3, 2, 2, 2, 4923, 4872, 3, 2, 2, 2, 4923, 4886, 3, 2, 2, 2, 4923, 4896, 3, 2, 2, 2, 4923, 4906, 3, 2, 2, 2, 4923, 4907, 3, 2, 2, 2, 4923, 4908, 3, 2, 2, 2, 4923, 4909, 3, 2, 2, 2, 4924, 443, 3, 2, 2, 2, 4925, 4926, 7, 142, 2, 2, 4926, 4927, 9, 51, 2, 2, 4927, 5077, 7, 406, 2, 2, 4928, 4929, 7, 142, 2, 2, 4929, 4930, 9, 69, 2, 2, 4930, 4933, 7, 351, 2, 2, 4931, 4932, 7, 73, 2, 2, 4932, 4934, 7, 1037, 2, 2, 4933, 4931, 3, 2, 2, 2, 4933, 4934, 3, 2, 2, 2, 4934, 4937, 3, 2, 2, 2, 4935, 4936, 7, 63, 2, 2, 4936, 4938, 5, 532, 267, 2, 4937, 4935, 3, 2, 2, 2, 4937, 4938, 3, 2, 2, 2, 4938, 4946, 3, 2, 2, 2, 4939, 4943, 7, 91, 2, 2, 4940, 4941, 5, 532, 267, 2, 4941, 4942, 7, 1024, 2, 2, 4942, 4944, 3, 2, 2, 2, 4943, 4940, 3, 2, 2, 2, 4943, 4944, 3, 2, 2, 2, 4944, 4945, 3, 2, 2, 2, 4945, 4947, 5, 532, 267, 2, 4946, 4939, 3, 2, 2, 2, 4946, 4947, 3, 2, 2, 2, 4947, 5077, 3, 2, 2, 2, 4948, 4949, 7, 142, 2, 2, 4949, 4951, 5, 448, 225, 2, 4950, 4952, 5, 450, 226, 2, 4951, 4950, 3, 2, 2, 2, 4951, 4952, 3, 2, 2, 2, 4952, 5077, 3, 2, 2, 2, 4953, 4955, 7, 142, 2, 2, 4954, 4956, 7, 369, 2, 2, 4955, 4954, 3, 2, 2, 2, 4955, 4956, 3, 2, 2, 2, 4956, 4957, 3, 2, 2, 2, 4957, 4958, 9, 37, 2, 2, 4958, 4959, 9, 70, 2, 2, 4959, 4962, 5, 502, 252, 2, 4960, 4961, 9, 70, 2, 2, 4961, 4963, 5, 526, 264, 2, 4962, 4960, 3, 2, 2, 2, 4962, 4963, 3, 2, 2, 2, 4963, 4965, 3, 2, 2, 2, 4964, 4966, 5, 450, 226, 2, 4965, 4964, 3, 2, 2, 2, 4965, 4966, 3, 2, 2, 2, 4966, 5077, 3, 2, 2, 2, 4967, 4968, 7, 142, 2, 2, 4968, 4969, 7, 32, 2, 2, 4969, 4971, 9, 2, 2, 2, 4970, 4972, 5, 582, 292, 2, 4971, 4970, 3, 2, 2, 2, 4971, 4972, 3, 2, 2, 2, 4972, 4973, 3, 2, 2, 2, 4973, 5077, 5, 526, 264, 2, 4974, 4975, 7, 142, 2, 2, 4975, 4976, 7, 32, 2, 2, 4976, 4977, 9, 71, 2, 2, 4977, 5077, 5, 500, 251, 2, 4978, 4979, 7, 142, 2, 2, 4979, 4980, 7, 32, 2, 2, 4980, 4981, 7, 574, 2, 2, 4981, 5077, 5, 508, 255, 2, 4982, 4983, 7, 142, 2, 2, 4983, 4984, 7, 344, 2, 2, 4984, 4985, 5, 516, 259, 2, 4985, 4986, 9, 72, 2, 2, 4986, 5077, 3, 2, 2, 2, 4987, 4988, 7, 142, 2, 2, 4988, 5077, 5, 452, 227, 2, 4989, 4990, 7, 142, 2, 2, 4990, 4991, 9, 73, 2, 2, 4991, 4995, 7, 91, 2, 2, 4992, 4993, 5, 532, 267, 2, 4993, 4994, 7, 1024, 2, 2, 4994, 4996, 3, 2, 2, 2, 4995, 4992, 3, 2, 2, 2, 4995, 4996, 3, 2, 2, 2, 4996, 4997, 3, 2, 2, 2, 4997, 5077, 5, 532, 267, 2, 4998, 4999, 7, 142, 2, 2, 4999, 5000, 7, 241, 2, 2, 5000, 5001, 7, 1022, 2, 2, 5001, 5002, 7, 1005, 2, 2, 5002, 5003, 7, 1023, 2, 2, 5003, 5077, 9, 73, 2, 2, 5004, 5005, 7, 142, 2, 2, 5005, 5008, 5, 454, 228, 2, 5006, 5007, 9, 70, 2, 2, 5007, 5009, 5, 526, 264, 2, 5008, 5006, 3, 2, 2, 2, 5008, 5009, 3, 2, 2, 2, 5009, 5011, 3, 2, 2, 2, 5010, 5012, 5, 450, 226, 2, 5011, 5010, 3, 2, 2, 2, 5011, 5012, 3, 2, 2, 2, 5012, 5077, 3, 2, 2, 2, 5013, 5014, 7, 142, 2, 2, 5014, 5015, 9, 74, 2, 2, 5015, 5016, 7, 303, 2, 2, 5016, 5077, 5, 500, 251, 2, 5017, 5018, 7, 142, 2, 2, 5018, 5021, 7, 373, 2, 2, 5019, 5020, 7, 60, 2, 2, 5020, 5022, 5, 508, 255, 2, 5021, 5019, 3, 2, 2, 2, 5021, 5022, 3, 2, 2, 2, 5022, 5077, 3, 2, 2, 2, 5023, 5024, 7, 142, 2, 2, 5024, 5025, 9, 75, 2, 2, 5025, 5026, 9, 70, 2, 2, 5026, 5029, 5, 502, 252, 2, 5027, 5028, 9, 70, 2, 2, 5028, 5030, 5, 526, 264, 2, 5029, 5027, 3, 2, 2, 2, 5029, 5030, 3, 2, 2, 2, 5030, 5033, 3, 2, 2, 2, 5031, 5032, 7, 174, 2, 2, 5032, 5034, 5, 604, 303, 2, 5033, 5031, 3, 2, 2, 2, 5033, 5034, 3, 2, 2, 2, 5034, 5077, 3, 2, 2, 2, 5035, 5036, 7, 142, 2, 2, 5036, 5037, 7, 460, 2, 2, 5037, 5040, 7, 604, 2, 2, 5038, 5039, 9, 70, 2, 2, 5039, 5041, 5, 526, 264, 2, 5040, 5038, 3, 2, 2, 2, 5040, 5041, 3, 2, 2, 2, 5041, 5043, 3, 2, 2, 2, 5042, 5044, 5, 450, 226, 2, 5043, 5042, 3, 2, 2, 2, 5043, 5044, 3, 2, 2, 2, 5044, 5077, 3, 2, 2, 2, 5045, 5046, 7, 142, 2, 2, 5046, 5047, 7, 481, 2, 2, 5047, 5052, 5, 456, 229, 2, 5048, 5049, 7, 1024, 2, 2, 5049, 5051, 5, 456, 229, 2, 5050, 5048, 3, 2, 2, 2, 5051, 5054, 3, 2, 2, 2, 5052, 5050, 3, 2, 2, 2, 5052, 5053, 3, 2, 2, 2, 5053, 5058, 3, 2, 2, 2, 5054, 5052, 3, 2, 2, 2, 5055, 5056, 7, 60, 2, 2, 5056, 5057, 7, 484, 2, 2, 5057, 5059, 5, 532, 267, 2, 5058, 5055, 3, 2, 2, 2, 5058, 5059, 3, 2, 2, 2, 5059, 5060, 3, 2, 2, 2, 5060, 5064, 7, 91, 2, 2, 5061, 5062, 5, 532, 267, 2, 5062, 5063, 7, 1024, 2, 2, 5063, 5065, 3, 2, 2, 2, 5064, 5061, 3, 2, 2, 2, 5064, 5065, 3, 2, 2, 2, 5065, 5066, 3, 2, 2, 2, 5066, 5067, 5, 532, 267, 2, 5067, 5077, 3, 2, 2, 2, 5068, 5069, 7, 142, 2, 2, 5069, 5070, 7, 525, 2, 2, 5070, 5074, 7, 545, 2, 2, 5071, 5072, 7, 60, 2, 2, 5072, 5073, 7, 295, 2, 2, 5073, 5075, 7, 1037, 2, 2, 5074, 5071, 3, 2, 2, 2, 5074, 5075, 3, 2, 2, 2, 5075, 5077, 3, 2, 2, 2, 5076, 4925, 3, 2, 2, 2, 5076, 4928, 3, 2, 2, 2, 5076, 4948, 3, 2, 2, 2, 5076, 4953, 3, 2, 2, 2, 5076, 4967, 3, 2, 2, 2, 5076, 4974, 3, 2, 2, 2, 5076, 4978, 3, 2, 2, 2, 5076, 4982, 3, 2, 2, 2, 5076, 4987, 3, 2, 2, 2, 5076, 4989, 3, 2, 2, 2, 5076, 4998, 3, 2, 2, 2, 5076, 5004, 3, 2, 2, 2, 5076, 5013, 3, 2, 2, 2, 5076, 5017, 3, 2, 2, 2, 5076, 5023, 3, 2, 2, 2, 5076, 5035, 3, 2, 2, 2, 5076, 5045, 3, 2, 2, 2, 5076, 5068, 3, 2, 2, 2, 5077, 445, 3, 2, 2, 2, 5078, 5089, 7, 1048, 2, 2, 5079, 5089, 7, 1049, 2, 2, 5080, 5081, 7, 1026, 2, 2, 5081, 5083, 7, 1026, 2, 2, 5082, 5080, 3, 2, 2, 2, 5082, 5083, 3, 2, 2, 2, 5083, 5084, 3, 2, 2, 2, 5084, 5086, 9, 76, 2, 2, 5085, 5082, 3, 2, 2, 2, 5085, 5086, 3, 2, 2, 2, 5086, 5087, 3, 2, 2, 2, 5087, 5089, 5, 526, 264, 2, 5088, 5078, 3, 2, 2, 2, 5088, 5079, 3, 2, 2, 2, 5088, 5085, 3, 2, 2, 2, 5089, 447, 3, 2, 2, 2, 5090, 5091, 7, 24, 2, 2, 5091, 5104, 7, 140, 2, 2, 5092, 5104, 7, 736, 2, 2, 5093, 5104, 7, 38, 2, 2, 5094, 5104, 7, 138, 2, 2, 5095, 5096, 7, 370, 2, 2, 5096, 5104, 7, 545, 2, 2, 5097, 5098, 7, 119, 2, 2, 5098, 5104, 7, 545, 2, 2, 5099, 5101, 9, 50, 2, 2, 5100, 5099, 3, 2, 2, 2, 5100, 5101, 3, 2, 2, 2, 5101, 5102, 3, 2, 2, 2, 5102, 5104, 9, 77, 2, 2, 5103, 5090, 3, 2, 2, 2, 5103, 5092, 3, 2, 2, 2, 5103, 5093, 3, 2, 2, 2, 5103, 5094, 3, 2, 2, 2, 5103, 5095, 3, 2, 2, 2, 5103, 5097, 3, 2, 2, 2, 5103, 5100, 3, 2, 2, 2, 5104, 449, 3, 2, 2, 2, 5105, 5106, 7, 90, 2, 2, 5106, 5110, 7, 1037, 2, 2, 5107, 5108, 7, 174, 2, 2, 5108, 5110, 5, 604, 303, 2, 5109, 5105, 3, 2, 2, 2, 5109, 5107, 3, 2, 2, 2, 5110, 451, 3, 2, 2, 2, 5111, 5113, 7, 547, 2, 2, 5112, 5111, 3, 2, 2, 2, 5112, 5113, 3, 2, 2, 2, 5113, 5114, 3, 2, 2, 2, 5114, 5129, 7, 345, 2, 2, 5115, 5116, 7, 407, 2, 2, 5116, 5129, 7, 545, 2, 2, 5117, 5129, 7, 474, 2, 2, 5118, 5129, 7, 612, 2, 2, 5119, 5121, 7, 369, 2, 2, 5120, 5119, 3, 2, 2, 2, 5120, 5121, 3, 2, 2, 2, 5121, 5122, 3, 2, 2, 2, 5122, 5129, 7, 480, 2, 2, 5123, 5129, 7, 482, 2, 2, 5124, 5125, 7, 525, 2, 2, 5125, 5129, 7, 379, 2, 2, 5126, 5129, 7, 279, 2, 2, 5127, 5129, 7, 321, 2, 2, 5128, 5112, 3, 2, 2, 2, 5128, 5115, 3, 2, 2, 2, 5128, 5117, 3, 2, 2, 2, 5128, 5118, 3, 2, 2, 2, 5128, 5120, 3, 2, 2, 2, 5128, 5123, 3, 2, 2, 2, 5128, 5124, 3, 2, 2, 2, 5128, 5126, 3, 2, 2, 2, 5128, 5127, 3, 2, 2, 2, 5129, 453, 3, 2, 2, 2, 5130, 5139, 7, 351, 2, 2, 5131, 5132, 7, 156, 2, 2, 5132, 5139, 7, 545, 2, 2, 5133, 5135, 7, 369, 2, 2, 5134, 5133, 3, 2, 2, 2, 5134, 5135, 3, 2, 2, 2, 5135, 5136, 3, 2, 2, 2, 5136, 5139, 7, 604, 2, 2, 5137, 5139, 7, 565, 2, 2, 5138, 5130, 3, 2, 2, 2, 5138, 5131, 3, 2, 2, 2, 5138, 5134, 3, 2, 2, 2, 5138, 5137, 3, 2, 2, 2, 5139, 455, 3, 2, 2, 2, 5140, 5153, 7, 8, 2, 2, 5141, 5142, 7, 287, 2, 2, 5142, 5153, 7, 391, 2, 2, 5143, 5144, 7, 320, 2, 2, 5144, 5153, 7, 556, 2, 2, 5145, 5153, 7, 323, 2, 2, 5146, 5153, 7, 393, 2, 2, 5147, 5153, 7, 684, 2, 2, 5148, 5149, 7, 465, 2, 2, 5149, 5153, 7, 360, 2, 2, 5150, 5153, 7, 532, 2, 2, 5151, 5153, 7, 555, 2, 2, 5152, 5140, 3, 2, 2, 2, 5152, 5141, 3, 2, 2, 2, 5152, 5143, 3, 2, 2, 2, 5152, 5145, 3, 2, 2, 2, 5152, 5146, 3, 2, 2, 2, 5152, 5147, 3, 2, 2, 2, 5152, 5148, 3, 2, 2, 2, 5152, 5150, 3, 2, 2, 2, 5152, 5151, 3, 2, 2, 2, 5153, 457, 3, 2, 2, 2, 5154, 5155, 7, 285, 2, 2, 5155, 5156, 7, 1037, 2, 2, 5156, 459, 3, 2, 2, 2, 5157, 5158, 7, 291, 2, 2, 5158, 5159, 7, 74, 2, 2, 5159, 5164, 5, 472, 237, 2, 5160, 5161, 7, 1024, 2, 2, 5161, 5163, 5, 472, 237, 2, 5162, 5160, 3, 2, 2, 2, 5163, 5166, 3, 2, 2, 2, 5164, 5162, 3, 2, 2, 2, 5164, 5165, 3, 2, 2, 2, 5165, 5174, 3, 2, 2, 2, 5166, 5164, 3, 2, 2, 2, 5167, 5168, 7, 117, 2, 2, 5168, 5171, 7, 1022, 2, 2, 5169, 5172, 5, 558, 280, 2, 5170, 5172, 7, 8, 2, 2, 5171, 5169, 3, 2, 2, 2, 5171, 5170, 3, 2, 2, 2, 5172, 5173, 3, 2, 2, 2, 5173, 5175, 7, 1023, 2, 2, 5174, 5167, 3, 2, 2, 2, 5174, 5175, 3, 2, 2, 2, 5175, 5176, 3, 2, 2, 2, 5176, 5177, 7, 73, 2, 2, 5177, 5178, 5, 526, 264, 2, 5178, 461, 3, 2, 2, 2, 5179, 5181, 7, 366, 2, 2, 5180, 5182, 9, 65, 2, 2, 5181, 5180, 3, 2, 2, 2, 5181, 5182, 3, 2, 2, 2, 5182, 5183, 3, 2, 2, 2, 5183, 5188, 5, 474, 238, 2, 5184, 5185, 7, 1024, 2, 2, 5185, 5187, 5, 474, 238, 2, 5186, 5184, 3, 2, 2, 2, 5187, 5190, 3, 2, 2, 2, 5188, 5186, 3, 2, 2, 2, 5188, 5189, 3, 2, 2, 2, 5189, 463, 3, 2, 2, 2, 5190, 5188, 3, 2, 2, 2, 5191, 5193, 7, 86, 2, 2, 5192, 5194, 9, 78, 2, 2, 5193, 5192, 3, 2, 2, 2, 5193, 5194, 3, 2, 2, 2, 5194, 5196, 3, 2, 2, 2, 5195, 5197, 5, 532, 267, 2, 5196, 5195, 3, 2, 2, 2, 5197, 5198, 3, 2, 2, 2, 5198, 5196, 3, 2, 2, 2, 5198, 5199, 3, 2, 2, 2, 5199, 465, 3, 2, 2, 2, 5200, 5201, 7, 94, 2, 2, 5201, 5202, 7, 74, 2, 2, 5202, 5203, 7, 80, 2, 2, 5203, 5204, 7, 291, 2, 2, 5204, 5209, 5, 478, 240, 2, 5205, 5206, 7, 1024, 2, 2, 5206, 5208, 5, 478, 240, 2, 5207, 5205, 3, 2, 2, 2, 5208, 5211, 3, 2, 2, 2, 5209, 5207, 3, 2, 2, 2, 5209, 5210, 3, 2, 2, 2, 5210, 467, 3, 2, 2, 2, 5211, 5209, 3, 2, 2, 2, 5212, 5213, 7, 505, 2, 2, 5213, 5214, 7, 484, 2, 2, 5214, 5215, 7, 291, 2, 2, 5215, 469, 3, 2, 2, 2, 5216, 5217, 7, 610, 2, 2, 5217, 471, 3, 2, 2, 2, 5218, 5226, 5, 502, 252, 2, 5219, 5221, 9, 20, 2, 2, 5220, 5219, 3, 2, 2, 2, 5220, 5221, 3, 2, 2, 2, 5221, 5222, 3, 2, 2, 2, 5222, 5223, 7, 1022, 2, 2, 5223, 5224, 5, 558, 280, 2, 5224, 5225, 7, 1023, 2, 2, 5225, 5227, 3, 2, 2, 2, 5226, 5220, 3, 2, 2, 2, 5226, 5227, 3, 2, 2, 2, 5227, 473, 3, 2, 2, 2, 5228, 5247, 7, 331, 2, 2, 5229, 5247, 7, 379, 2, 2, 5230, 5232, 9, 79, 2, 2, 5231, 5230, 3, 2, 2, 2, 5231, 5232, 3, 2, 2, 2, 5232, 5233, 3, 2, 2, 2, 5233, 5247, 7, 406, 2, 2, 5234, 5247, 7, 461, 2, 2, 5235, 5247, 7, 612, 2, 2, 5236, 5237, 7, 484, 2, 2, 5237, 5247, 7, 291, 2, 2, 5238, 5247, 7, 545, 2, 2, 5239, 5247, 7, 576, 2, 2, 5240, 5244, 7, 604, 2, 2, 5241, 5242, 7, 176, 2, 2, 5242, 5243, 7, 122, 2, 2, 5243, 5245, 7, 95, 2, 2, 5244, 5241, 3, 2, 2, 2, 5244, 5245, 3, 2, 2, 2, 5245, 5247, 3, 2, 2, 2, 5246, 5228, 3, 2, 2, 2, 5246, 5229, 3, 2, 2, 2, 5246, 5231, 3, 2, 2, 2, 5246, 5234, 3, 2, 2, 2, 5246, 5235, 3, 2, 2, 2, 5246, 5236, 3, 2, 2, 2, 5246, 5238, 3, 2, 2, 2, 5246, 5239, 3, 2, 2, 2, 5246, 5240, 3, 2, 2, 2, 5247, 5259, 3, 2, 2, 2, 5248, 5249, 7, 490, 2, 2, 5249, 5251, 7, 406, 2, 2, 5250, 5252, 5, 316, 159, 2, 5251, 5250, 3, 2, 2, 2, 5251, 5252, 3, 2, 2, 2, 5252, 5259, 3, 2, 2, 2, 5253, 5254, 7, 604, 2, 2, 5254, 5256, 5, 560, 281, 2, 5255, 5257, 5, 476, 239, 2, 5256, 5255, 3, 2, 2, 2, 5256, 5257, 3, 2, 2, 2, 5257, 5259, 3, 2, 2, 2, 5258, 5246, 3, 2, 2, 2, 5258, 5248, 3, 2, 2, 2, 5258, 5253, 3, 2, 2, 2, 5259, 475, 3, 2, 2, 2, 5260, 5261, 7, 176, 2, 2, 5261, 5262, 7, 122, 2, 2, 5262, 5266, 7, 95, 2, 2, 5263, 5264, 7, 60, 2, 2, 5264, 5266, 7, 356, 2, 2, 5265, 5260, 3, 2, 2, 2, 5265, 5263, 3, 2, 2, 2, 5266, 477, 3, 2, 2, 2, 5267, 5275, 5, 502, 252, 2, 5268, 5269, 7, 117, 2, 2, 5269, 5272, 7, 1022, 2, 2, 5270, 5273, 5, 558, 280, 2, 5271, 5273, 7, 8, 2, 2, 5272, 5270, 3, 2, 2, 2, 5272, 5271, 3, 2, 2, 2, 5273, 5274, 3, 2, 2, 2, 5274, 5276, 7, 1023, 2, 2, 5275, 5268, 3, 2, 2, 2, 5275, 5276, 3, 2, 2, 2, 5276, 5284, 3, 2, 2, 2, 5277, 5279, 9, 20, 2, 2, 5278, 5277, 3, 2, 2, 2, 5278, 5279, 3, 2, 2, 2, 5279, 5280, 3, 2, 2, 2, 5280, 5281, 7, 1022, 2, 2, 5281, 5282, 5, 558, 280, 2, 5282, 5283, 7, 1023, 2, 2, 5283, 5285, 3, 2, 2, 2, 5284, 5278, 3, 2, 2, 2, 5284, 5285, 3, 2, 2, 2, 5285, 5288, 3, 2, 2, 2, 5286, 5287, 7, 72, 2, 2, 5287, 5289, 7, 400, 2, 2, 5288, 5286, 3, 2, 2, 2, 5288, 5289, 3, 2, 2, 2, 5289, 479, 3, 2, 2, 2, 5290, 5291, 9, 80, 2, 2, 5291, 5294, 5, 502, 252, 2, 5292, 5295, 5, 526, 264, 2, 5293, 5295, 7, 1037, 2, 2, 5294, 5292, 3, 2, 2, 2, 5294, 5293, 3, 2, 2, 2, 5294, 5295, 3, 2, 2, 2, 5295, 481, 3, 2, 2, 2, 5296, 5300, 9, 80, 2, 2, 5297, 5298, 9, 81, 2, 2, 5298, 5299, 7, 1013, 2, 2, 5299, 5301, 9, 82, 2, 2, 5300, 5297, 3, 2, 2, 2, 5300, 5301, 3, 2, 2, 2, 5301, 5302, 3, 2, 2, 2, 5302, 5303, 5, 498, 250, 2, 5303, 483, 3, 2, 2, 2, 5304, 5305, 7, 377, 2, 2, 5305, 5306, 7, 1037, 2, 2, 5306, 485, 3, 2, 2, 2, 5307, 5308, 7, 170, 2, 2, 5308, 5309, 5, 526, 264, 2, 5309, 487, 3, 2, 2, 2, 5310, 5318, 7, 143, 2, 2, 5311, 5313, 7, 147, 2, 2, 5312, 5314, 7, 578, 2, 2, 5313, 5312, 3, 2, 2, 2, 5313, 5314, 3, 2, 2, 2, 5314, 5315, 3, 2, 2, 2, 5315, 5319, 5, 536, 269, 2, 5316, 5319, 7, 1045, 2, 2, 5317, 5319, 7, 1046, 2, 2, 5318, 5311, 3, 2, 2, 2, 5318, 5316, 3, 2, 2, 2, 5318, 5317, 3, 2, 2, 2, 5319, 5329, 3, 2, 2, 2, 5320, 5321, 7, 140, 2, 2, 5321, 5326, 5, 492, 247, 2, 5322, 5323, 7, 1024, 2, 2, 5323, 5325, 5, 492, 247, 2, 5324, 5322, 3, 2, 2, 2, 5325, 5328, 3, 2, 2, 2, 5326, 5324, 3, 2, 2, 2, 5326, 5327, 3, 2, 2, 2, 5327, 5330, 3, 2, 2, 2, 5328, 5326, 3, 2, 2, 2, 5329, 5320, 3, 2, 2, 2, 5329, 5330, 3, 2, 2, 2, 5330, 489, 3, 2, 2, 2, 5331, 5339, 7, 131, 2, 2, 5332, 5334, 7, 147, 2, 2, 5333, 5335, 7, 578, 2, 2, 5334, 5333, 3, 2, 2, 2, 5334, 5335, 3, 2, 2, 2, 5335, 5336, 3, 2, 2, 2, 5336, 5340, 5, 536, 269, 2, 5337, 5340, 7, 1045, 2, 2, 5338, 5340, 7, 1046, 2, 2, 5339, 5332, 3, 2, 2, 2, 5339, 5337, 3, 2, 2, 2, 5339, 5338, 3, 2, 2, 2, 5339, 5340, 3, 2, 2, 2, 5340, 5350, 3, 2, 2, 2, 5341, 5342, 7, 140, 2, 2, 5342, 5347, 5, 492, 247, 2, 5343, 5344, 7, 1024, 2, 2, 5344, 5346, 5, 492, 247, 2, 5345, 5343, 3, 2, 2, 2, 5346, 5349, 3, 2, 2, 2, 5347, 5345, 3, 2, 2, 2, 5347, 5348, 3, 2, 2, 2, 5348, 5351, 3, 2, 2, 2, 5349, 5347, 3, 2, 2, 2, 5350, 5341, 3, 2, 2, 2, 5350, 5351, 3, 2, 2, 2, 5351, 491, 3, 2, 2, 2, 5352, 5353, 9, 83, 2, 2, 5353, 5356, 7, 1013, 2, 2, 5354, 5357, 5, 536, 269, 2, 5355, 5357, 7, 1038, 2, 2, 5356, 5354, 3, 2, 2, 2, 5356, 5355, 3, 2, 2, 2, 5357, 493, 3, 2, 2, 2, 5358, 5360, 7, 66, 2, 2, 5359, 5361, 9, 84, 2, 2, 5360, 5359, 3, 2, 2, 2, 5360, 5361, 3, 2, 2, 2, 5361, 5362, 3, 2, 2, 2, 5362, 5394, 7, 46, 2, 2, 5363, 5364, 5, 446, 224, 2, 5364, 5365, 7, 1013, 2, 2, 5365, 5373, 9, 85, 2, 2, 5366, 5367, 7, 1024, 2, 2, 5367, 5368, 5, 446, 224, 2, 5368, 5369, 7, 1013, 2, 2, 5369, 5370, 9, 85, 2, 2, 5370, 5372, 3, 2, 2, 2, 5371, 5366, 3, 2, 2, 2, 5372, 5375, 3, 2, 2, 2, 5373, 5371, 3, 2, 2, 2, 5373, 5374, 3, 2, 2, 2, 5374, 5395, 3, 2, 2, 2, 5375, 5373, 3, 2, 2, 2, 5376, 5379, 7, 28, 2, 2, 5377, 5380, 5, 532, 267, 2, 5378, 5380, 5, 446, 224, 2, 5379, 5377, 3, 2, 2, 2, 5379, 5378, 3, 2, 2, 2, 5380, 5381, 3, 2, 2, 2, 5381, 5382, 5, 446, 224, 2, 5382, 5383, 7, 1013, 2, 2, 5383, 5391, 5, 496, 249, 2, 5384, 5385, 7, 1024, 2, 2, 5385, 5386, 5, 446, 224, 2, 5386, 5387, 7, 1013, 2, 2, 5387, 5388, 5, 496, 249, 2, 5388, 5390, 3, 2, 2, 2, 5389, 5384, 3, 2, 2, 2, 5390, 5393, 3, 2, 2, 2, 5391, 5389, 3, 2, 2, 2, 5391, 5392, 3, 2, 2, 2, 5392, 5395, 3, 2, 2, 2, 5393, 5391, 3, 2, 2, 2, 5394, 5363, 3, 2, 2, 2, 5394, 5376, 3, 2, 2, 2, 5395, 495, 3, 2, 2, 2, 5396, 5397, 9, 86, 2, 2, 5397, 497, 3, 2, 2, 2, 5398, 5404, 5, 182, 92, 2, 5399, 5404, 5, 168, 85, 2, 5400, 5404, 5, 174, 88, 2, 5401, 5404, 5, 180, 91, 2, 5402, 5404, 5, 184, 93, 2, 5403, 5398, 3, 2, 2, 2, 5403, 5399, 3, 2, 2, 2, 5403, 5400, 3, 2, 2, 2, 5403, 5401, 3, 2, 2, 2, 5403, 5402, 3, 2, 2, 2, 5404, 5409, 3, 2, 2, 2, 5405, 5406, 7, 60, 2, 2, 5406, 5407, 7, 314, 2, 2, 5407, 5409, 5, 526, 264, 2, 5408, 5403, 3, 2, 2, 2, 5408, 5405, 3, 2, 2, 2, 5409, 499, 3, 2, 2, 2, 5410, 5414, 5, 526, 264, 2, 5411, 5415, 7, 1044, 2, 2, 5412, 5413, 7, 1021, 2, 2, 5413, 5415, 5, 526, 264, 2, 5414, 5411, 3, 2, 2, 2, 5414, 5412, 3, 2, 2, 2, 5414, 5415, 3, 2, 2, 2, 5415, 501, 3, 2, 2, 2, 5416, 5417, 5, 500, 251, 2, 5417, 503, 3, 2, 2, 2, 5418, 5423, 5, 526, 264, 2, 5419, 5421, 5, 530, 266, 2, 5420, 5422, 5, 530, 266, 2, 5421, 5420, 3, 2, 2, 2, 5421, 5422, 3, 2, 2, 2, 5422, 5424, 3, 2, 2, 2, 5423, 5419, 3, 2, 2, 2, 5423, 5424, 3, 2, 2, 2, 5424, 505, 3, 2, 2, 2, 5425, 5428, 5, 526, 264, 2, 5426, 5428, 7, 1037, 2, 2, 5427, 5425, 3, 2, 2, 2, 5427, 5426, 3, 2, 2, 2, 5428, 5433, 3, 2, 2, 2, 5429, 5430, 7, 1022, 2, 2, 5430, 5431, 5, 532, 267, 2, 5431, 5432, 7, 1023, 2, 2, 5432, 5434, 3, 2, 2, 2, 5433, 5429, 3, 2, 2, 2, 5433, 5434, 3, 2, 2, 2, 5434, 5436, 3, 2, 2, 2, 5435, 5437, 9, 44, 2, 2, 5436, 5435, 3, 2, 2, 2, 5436, 5437, 3, 2, 2, 2, 5437, 507, 3, 2, 2, 2, 5438, 5439, 9, 87, 2, 2, 5439, 509, 3, 2, 2, 2, 5440, 5441, 9, 88, 2, 2, 5441, 511, 3, 2, 2, 2, 5442, 5447, 7, 210, 2, 2, 5443, 5447, 5, 620, 311, 2, 5444, 5447, 7, 1037, 2, 2, 5445, 5447, 7, 1034, 2, 2, 5446, 5442, 3, 2, 2, 2, 5446, 5443, 3, 2, 2, 2, 5446, 5444, 3, 2, 2, 2, 5446, 5445, 3, 2, 2, 2, 5447, 513, 3, 2, 2, 2, 5448, 5451, 5, 526, 264, 2, 5449, 5451, 7, 1037, 2, 2, 5450, 5448, 3, 2, 2, 2, 5450, 5449, 3, 2, 2, 2, 5451, 515, 3, 2, 2, 2, 5452, 5453, 9, 89, 2, 2, 5453, 517, 3, 2, 2, 2, 5454, 5455, 5, 532, 267, 2, 5455, 5456, 7, 1010, 2, 2, 5456, 5457, 5, 532, 267, 2, 5457, 5458, 7, 1010, 2, 2, 5458, 5459, 5, 532, 267, 2, 5459, 5460, 7, 1010, 2, 2, 5460, 5461, 5, 532, 267, 2, 5461, 5462, 7, 1010, 2, 2, 5462, 5468, 5, 532, 267, 2, 5463, 5464, 7, 1033, 2, 2, 5464, 5465, 5, 532, 267, 2, 5465, 5466, 7, 1010, 2, 2, 5466, 5467, 5, 532, 267, 2, 5467, 5469, 3, 2, 2, 2, 5468, 5463, 3, 2, 2, 2, 5469, 5470, 3, 2, 2, 2, 5470, 5468, 3, 2, 2, 2, 5470, 5471, 3, 2, 2, 2, 5471, 519, 3, 2, 2, 2, 5472, 5479, 5, 522, 262, 2, 5473, 5474, 7, 1024, 2, 2, 5474, 5477, 5, 522, 262, 2, 5475, 5476, 7, 1024, 2, 2, 5476, 5478, 5, 532, 267, 2, 5477, 5475, 3, 2, 2, 2, 5477, 5478, 3, 2, 2, 2, 5478, 5480, 3, 2, 2, 2, 5479, 5473, 3, 2, 2, 2, 5479, 5480, 3, 2, 2, 2, 5480, 521, 3, 2, 2, 2, 5481, 5489, 7, 1037, 2, 2, 5482, 5489, 7, 1042, 2, 2, 5483, 5485, 7, 1039, 2, 2, 5484, 5483, 3, 2, 2, 2, 5485, 5486, 3, 2, 2, 2, 5486, 5484, 3, 2, 2, 2, 5486, 5487, 3, 2, 2, 2, 5487, 5489, 3, 2, 2, 2, 5488, 5481, 3, 2, 2, 2, 5488, 5482, 3, 2, 2, 2, 5488, 5484, 3, 2, 2, 2, 5489, 523, 3, 2, 2, 2, 5490, 5493, 5, 526, 264, 2, 5491, 5493, 7, 1037, 2, 2, 5492, 5490, 3, 2, 2, 2, 5492, 5491, 3, 2, 2, 2, 5493, 525, 3, 2, 2, 2, 5494, 5498, 5, 528, 265, 2, 5495, 5498, 7, 1046, 2, 2, 5496, 5498, 7, 1034, 2, 2, 5497, 5494, 3, 2, 2, 2, 5497, 5495, 3, 2, 2, 2, 5497, 5496, 3, 2, 2, 2, 5498, 527, 3, 2, 2, 2, 5499, 5509, 7, 1045, 2, 2, 5500, 5509, 5, 620, 311, 2, 5501, 5509, 5, 622, 312, 2, 5502, 5509, 5, 516, 259, 2, 5503, 5509, 5, 624, 313, 2, 5504, 5509, 5, 626, 314, 2, 5505, 5509, 5, 628, 315, 2, 5506, 5509, 5, 630, 316, 2, 5507, 5509, 5, 632, 317, 2, 5508, 5499, 3, 2, 2, 2, 5508, 5500, 3, 2, 2, 2, 5508, 5501, 3, 2, 2, 2, 5508, 5502, 3, 2, 2, 2, 5508, 5503, 3, 2, 2, 2, 5508, 5504, 3, 2, 2, 2, 5508, 5505, 3, 2, 2, 2, 5508, 5506, 3, 2, 2, 2, 5508, 5507, 3, 2, 2, 2, 5509, 529, 3, 2, 2, 2, 5510, 5514, 7, 1044, 2, 2, 5511, 5512, 7, 1021, 2, 2, 5512, 5514, 5, 526, 264, 2, 5513, 5510, 3, 2, 2, 2, 5513, 5511, 3, 2, 2, 2, 5514, 531, 3, 2, 2, 2, 5515, 5516, 9, 90, 2, 2, 5516, 533, 3, 2, 2, 2, 5517, 5520, 7, 1035, 2, 2, 5518, 5520, 5, 532, 267, 2, 5519, 5517, 3, 2, 2, 2, 5519, 5518, 3, 2, 2, 2, 5520, 535, 3, 2, 2, 2, 5521, 5523, 7, 1043, 2, 2, 5522, 5521, 3, 2, 2, 2, 5522, 5523, 3, 2, 2, 2, 5523, 5524, 3, 2, 2, 2, 5524, 5527, 7, 1037, 2, 2, 5525, 5527, 7, 1036, 2, 2, 5526, 5522, 3, 2, 2, 2, 5526, 5525, 3, 2, 2, 2, 5527, 5529, 3, 2, 2, 2, 5528, 5530, 7, 1037, 2, 2, 5529, 5528, 3, 2, 2, 2, 5530, 5531, 3, 2, 2, 2, 5531, 5529, 3, 2, 2, 2, 5531, 5532, 3, 2, 2, 2, 5532, 5545, 3, 2, 2, 2, 5533, 5535, 7, 1043, 2, 2, 5534, 5533, 3, 2, 2, 2, 5534, 5535, 3, 2, 2, 2, 5535, 5536, 3, 2, 2, 2, 5536, 5539, 7, 1037, 2, 2, 5537, 5539, 7, 1036, 2, 2, 5538, 5534, 3, 2, 2, 2, 5538, 5537, 3, 2, 2, 2, 5539, 5542, 3, 2, 2, 2, 5540, 5541, 7, 26, 2, 2, 5541, 5543, 5, 514, 258, 2, 5542, 5540, 3, 2, 2, 2, 5542, 5543, 3, 2, 2, 2, 5543, 5545, 3, 2, 2, 2, 5544, 5526, 3, 2, 2, 2, 5544, 5538, 3, 2, 2, 2, 5545, 537, 3, 2, 2, 2, 5546, 5547, 9, 91, 2, 2, 5547, 539, 3, 2, 2, 2, 5548, 5550, 7, 1043, 2, 2, 5549, 5548, 3, 2, 2, 2, 5549, 5550, 3, 2, 2, 2, 5550, 5551, 3, 2, 2, 2, 5551, 5552, 7, 1039, 2, 2, 5552, 541, 3, 2, 2, 2, 5553, 5555, 7, 104, 2, 2, 5554, 5553, 3, 2, 2, 2, 5554, 5555, 3, 2, 2, 2, 5555, 5556, 3, 2, 2, 2, 5556, 5557, 9, 92, 2, 2, 5557, 543, 3, 2, 2, 2, 5558, 5571, 5, 536, 269, 2, 5559, 5571, 5, 532, 267, 2, 5560, 5561, 7, 1010, 2, 2, 5561, 5571, 5, 532, 267, 2, 5562, 5571, 5, 540, 271, 2, 5563, 5571, 5, 538, 270, 2, 5564, 5571, 7, 1040, 2, 2, 5565, 5571, 7, 1042, 2, 2, 5566, 5568, 7, 104, 2, 2, 5567, 5566, 3, 2, 2, 2, 5567, 5568, 3, 2, 2, 2, 5568, 5569, 3, 2, 2, 2, 5569, 5571, 9, 92, 2, 2, 5570, 5558, 3, 2, 2, 2, 5570, 5559, 3, 2, 2, 2, 5570, 5560, 3, 2, 2, 2, 5570, 5562, 3, 2, 2, 2, 5570, 5563, 3, 2, 2, 2, 5570, 5564, 3, 2, 2, 2, 5570, 5565, 3, 2, 2, 2, 5570, 5567, 3, 2, 2, 2, 5571, 545, 3, 2, 2, 2, 5572, 5574, 9, 93, 2, 2, 5573, 5575, 5, 552, 277, 2, 5574, 5573, 3, 2, 2, 2, 5574, 5575, 3, 2, 2, 2, 5575, 5577, 3, 2, 2, 2, 5576, 5578, 7, 210, 2, 2, 5577, 5576, 3, 2, 2, 2, 5577, 5578, 3, 2, 2, 2, 5578, 5585, 3, 2, 2, 2, 5579, 5580, 7, 24, 2, 2, 5580, 5583, 7, 140, 2, 2, 5581, 5583, 7, 733, 2, 2, 5582, 5579, 3, 2, 2, 2, 5582, 5581, 3, 2, 2, 2, 5583, 5584, 3, 2, 2, 2, 5584, 5586, 5, 512, 257, 2, 5585, 5582, 3, 2, 2, 2, 5585, 5586, 3, 2, 2, 2, 5586, 5589, 3, 2, 2, 2, 5587, 5588, 7, 26, 2, 2, 5588, 5590, 5, 514, 258, 2, 5589, 5587, 3, 2, 2, 2, 5589, 5590, 3, 2, 2, 2, 5590, 5700, 3, 2, 2, 2, 5591, 5592, 7, 209, 2, 2, 5592, 5594, 9, 94, 2, 2, 5593, 5595, 5, 552, 277, 2, 5594, 5593, 3, 2, 2, 2, 5594, 5595, 3, 2, 2, 2, 5595, 5597, 3, 2, 2, 2, 5596, 5598, 7, 210, 2, 2, 5597, 5596, 3, 2, 2, 2, 5597, 5598, 3, 2, 2, 2, 5598, 5700, 3, 2, 2, 2, 5599, 5600, 7, 447, 2, 2, 5600, 5602, 7, 207, 2, 2, 5601, 5603, 5, 552, 277, 2, 5602, 5601, 3, 2, 2, 2, 5602, 5603, 3, 2, 2, 2, 5603, 5605, 3, 2, 2, 2, 5604, 5606, 7, 210, 2, 2, 5605, 5604, 3, 2, 2, 2, 5605, 5606, 3, 2, 2, 2, 5606, 5700, 3, 2, 2, 2, 5607, 5608, 7, 209, 2, 2, 5608, 5609, 9, 95, 2, 2, 5609, 5611, 7, 222, 2, 2, 5610, 5612, 5, 552, 277, 2, 5611, 5610, 3, 2, 2, 2, 5611, 5612, 3, 2, 2, 2, 5612, 5614, 3, 2, 2, 2, 5613, 5615, 7, 210, 2, 2, 5614, 5613, 3, 2, 2, 2, 5614, 5615, 3, 2, 2, 2, 5615, 5700, 3, 2, 2, 2, 5616, 5618, 9, 96, 2, 2, 5617, 5619, 5, 552, 277, 2, 5618, 5617, 3, 2, 2, 2, 5618, 5619, 3, 2, 2, 2, 5619, 5621, 3, 2, 2, 2, 5620, 5622, 9, 97, 2, 2, 5621, 5620, 3, 2, 2, 2, 5621, 5622, 3, 2, 2, 2, 5622, 5624, 3, 2, 2, 2, 5623, 5625, 7, 179, 2, 2, 5624, 5623, 3, 2, 2, 2, 5624, 5625, 3, 2, 2, 2, 5625, 5700, 3, 2, 2, 2, 5626, 5628, 7, 192, 2, 2, 5627, 5629, 5, 554, 278, 2, 5628, 5627, 3, 2, 2, 2, 5628, 5629, 3, 2, 2, 2, 5629, 5631, 3, 2, 2, 2, 5630, 5632, 9, 97, 2, 2, 5631, 5630, 3, 2, 2, 2, 5631, 5632, 3, 2, 2, 2, 5632, 5634, 3, 2, 2, 2, 5633, 5635, 7, 179, 2, 2, 5634, 5633, 3, 2, 2, 2, 5634, 5635, 3, 2, 2, 2, 5635, 5700, 3, 2, 2, 2, 5636, 5638, 7, 193, 2, 2, 5637, 5639, 7, 194, 2, 2, 5638, 5637, 3, 2, 2, 2, 5638, 5639, 3, 2, 2, 2, 5639, 5641, 3, 2, 2, 2, 5640, 5642, 5, 554, 278, 2, 5641, 5640, 3, 2, 2, 2, 5641, 5642, 3, 2, 2, 2, 5642, 5644, 3, 2, 2, 2, 5643, 5645, 9, 97, 2, 2, 5644, 5643, 3, 2, 2, 2, 5644, 5645, 3, 2, 2, 2, 5645, 5647, 3, 2, 2, 2, 5646, 5648, 7, 179, 2, 2, 5647, 5646, 3, 2, 2, 2, 5647, 5648, 3, 2, 2, 2, 5648, 5700, 3, 2, 2, 2, 5649, 5651, 9, 98, 2, 2, 5650, 5652, 5, 556, 279, 2, 5651, 5650, 3, 2, 2, 2, 5651, 5652, 3, 2, 2, 2, 5652, 5654, 3, 2, 2, 2, 5653, 5655, 9, 97, 2, 2, 5654, 5653, 3, 2, 2, 2, 5654, 5655, 3, 2, 2, 2, 5655, 5657, 3, 2, 2, 2, 5656, 5658, 7, 179, 2, 2, 5657, 5656, 3, 2, 2, 2, 5657, 5658, 3, 2, 2, 2, 5658, 5700, 3, 2, 2, 2, 5659, 5700, 9, 99, 2, 2, 5660, 5662, 9, 100, 2, 2, 5661, 5663, 5, 552, 277, 2, 5662, 5661, 3, 2, 2, 2, 5662, 5663, 3, 2, 2, 2, 5663, 5700, 3, 2, 2, 2, 5664, 5665, 9, 101, 2, 2, 5665, 5667, 5, 548, 275, 2, 5666, 5668, 7, 210, 2, 2, 5667, 5666, 3, 2, 2, 2, 5667, 5668, 3, 2, 2, 2, 5668, 5675, 3, 2, 2, 2, 5669, 5670, 7, 24, 2, 2, 5670, 5673, 7, 140, 2, 2, 5671, 5673, 7, 733, 2, 2, 5672, 5669, 3, 2, 2, 2, 5672, 5671, 3, 2, 2, 2, 5673, 5674, 3, 2, 2, 2, 5674, 5676, 5, 512, 257, 2, 5675, 5672, 3, 2, 2, 2, 5675, 5676, 3, 2, 2, 2, 5676, 5700, 3, 2, 2, 2, 5677, 5700, 9, 102, 2, 2, 5678, 5680, 7, 215, 2, 2, 5679, 5681, 7, 207, 2, 2, 5680, 5679, 3, 2, 2, 2, 5680, 5681, 3, 2, 2, 2, 5681, 5683, 3, 2, 2, 2, 5682, 5684, 7, 210, 2, 2, 5683, 5682, 3, 2, 2, 2, 5683, 5684, 3, 2, 2, 2, 5684, 5691, 3, 2, 2, 2, 5685, 5686, 7, 24, 2, 2, 5686, 5689, 7, 140, 2, 2, 5687, 5689, 7, 733, 2, 2, 5688, 5685, 3, 2, 2, 2, 5688, 5687, 3, 2, 2, 2, 5689, 5690, 3, 2, 2, 2, 5690, 5692, 5, 512, 257, 2, 5691, 5688, 3, 2, 2, 2, 5691, 5692, 3, 2, 2, 2, 5692, 5695, 3, 2, 2, 2, 5693, 5694, 7, 26, 2, 2, 5694, 5696, 5, 514, 258, 2, 5695, 5693, 3, 2, 2, 2, 5695, 5696, 3, 2, 2, 2, 5696, 5700, 3, 2, 2, 2, 5697, 5698, 7, 215, 2, 2, 5698, 5700, 7, 211, 2, 2, 5699, 5572, 3, 2, 2, 2, 5699, 5591, 3, 2, 2, 2, 5699, 5599, 3, 2, 2, 2, 5699, 5607, 3, 2, 2, 2, 5699, 5616, 3, 2, 2, 2, 5699, 5626, 3, 2, 2, 2, 5699, 5636, 3, 2, 2, 2, 5699, 5649, 3, 2, 2, 2, 5699, 5659, 3, 2, 2, 2, 5699, 5660, 3, 2, 2, 2, 5699, 5664, 3, 2, 2, 2, 5699, 5677, 3, 2, 2, 2, 5699, 5678, 3, 2, 2, 2, 5699, 5697, 3, 2, 2, 2, 5700, 547, 3, 2, 2, 2, 5701, 5702, 7, 1022, 2, 2, 5702, 5707, 7, 1037, 2, 2, 5703, 5704, 7, 1024, 2, 2, 5704, 5706, 7, 1037, 2, 2, 5705, 5703, 3, 2, 2, 2, 5706, 5709, 3, 2, 2, 2, 5707, 5705, 3, 2, 2, 2, 5707, 5708, 3, 2, 2, 2, 5708, 5710, 3, 2, 2, 2, 5709, 5707, 3, 2, 2, 2, 5710, 5711, 7, 1023, 2, 2, 5711, 549, 3, 2, 2, 2, 5712, 5714, 9, 103, 2, 2, 5713, 5715, 5, 552, 277, 2, 5714, 5713, 3, 2, 2, 2, 5714, 5715, 3, 2, 2, 2, 5715, 5738, 3, 2, 2, 2, 5716, 5718, 7, 206, 2, 2, 5717, 5719, 5, 552, 277, 2, 5718, 5717, 3, 2, 2, 2, 5718, 5719, 3, 2, 2, 2, 5719, 5726, 3, 2, 2, 2, 5720, 5721, 7, 24, 2, 2, 5721, 5724, 7, 140, 2, 2, 5722, 5724, 7, 733, 2, 2, 5723, 5720, 3, 2, 2, 2, 5723, 5722, 3, 2, 2, 2, 5724, 5725, 3, 2, 2, 2, 5725, 5727, 5, 512, 257, 2, 5726, 5723, 3, 2, 2, 2, 5726, 5727, 3, 2, 2, 2, 5727, 5738, 3, 2, 2, 2, 5728, 5738, 9, 104, 2, 2, 5729, 5731, 7, 198, 2, 2, 5730, 5732, 5, 554, 278, 2, 5731, 5730, 3, 2, 2, 2, 5731, 5732, 3, 2, 2, 2, 5732, 5738, 3, 2, 2, 2, 5733, 5735, 9, 97, 2, 2, 5734, 5736, 7, 190, 2, 2, 5735, 5734, 3, 2, 2, 2, 5735, 5736, 3, 2, 2, 2, 5736, 5738, 3, 2, 2, 2, 5737, 5712, 3, 2, 2, 2, 5737, 5716, 3, 2, 2, 2, 5737, 5728, 3, 2, 2, 2, 5737, 5729, 3, 2, 2, 2, 5737, 5733, 3, 2, 2, 2, 5738, 551, 3, 2, 2, 2, 5739, 5740, 7, 1022, 2, 2, 5740, 5741, 5, 532, 267, 2, 5741, 5742, 7, 1023, 2, 2, 5742, 553, 3, 2, 2, 2, 5743, 5744, 7, 1022, 2, 2, 5744, 5745, 5, 532, 267, 2, 5745, 5746, 7, 1024, 2, 2, 5746, 5747, 5, 532, 267, 2, 5747, 5748, 7, 1023, 2, 2, 5748, 555, 3, 2, 2, 2, 5749, 5750, 7, 1022, 2, 2, 5750, 5753, 5, 532, 267, 2, 5751, 5752, 7, 1024, 2, 2, 5752, 5754, 5, 532, 267, 2, 5753, 5751, 3, 2, 2, 2, 5753, 5754, 3, 2, 2, 2, 5754, 5755, 3, 2, 2, 2, 5755, 5756, 7, 1023, 2, 2, 5756, 557, 3, 2, 2, 2, 5757, 5762, 5, 526, 264, 2, 5758, 5759, 7, 1024, 2, 2, 5759, 5761, 5, 526, 264, 2, 5760, 5758, 3, 2, 2, 2, 5761, 5764, 3, 2, 2, 2, 5762, 5760, 3, 2, 2, 2, 5762, 5763, 3, 2, 2, 2, 5763, 559, 3, 2, 2, 2, 5764, 5762, 3, 2, 2, 2, 5765, 5770, 5, 502, 252, 2, 5766, 5767, 7, 1024, 2, 2, 5767, 5769, 5, 502, 252, 2, 5768, 5766, 3, 2, 2, 2, 5769, 5772, 3, 2, 2, 2, 5770, 5768, 3, 2, 2, 2, 5770, 5771, 3, 2, 2, 2, 5771, 561, 3, 2, 2, 2, 5772, 5770, 3, 2, 2, 2, 5773, 5774, 7, 1022, 2, 2, 5774, 5779, 5, 506, 254, 2, 5775, 5776, 7, 1024, 2, 2, 5776, 5778, 5, 506, 254, 2, 5777, 5775, 3, 2, 2, 2, 5778, 5781, 3, 2, 2, 2, 5779, 5777, 3, 2, 2, 2, 5779, 5780, 3, 2, 2, 2, 5780, 5782, 3, 2, 2, 2, 5781, 5779, 3, 2, 2, 2, 5782, 5783, 7, 1023, 2, 2, 5783, 563, 3, 2, 2, 2, 5784, 5789, 5, 604, 303, 2, 5785, 5786, 7, 1024, 2, 2, 5786, 5788, 5, 604, 303, 2, 5787, 5785, 3, 2, 2, 2, 5788, 5791, 3, 2, 2, 2, 5789, 5787, 3, 2, 2, 2, 5789, 5790, 3, 2, 2, 2, 5790, 565, 3, 2, 2, 2, 5791, 5789, 3, 2, 2, 2, 5792, 5797, 5, 578, 290, 2, 5793, 5794, 7, 1024, 2, 2, 5794, 5796, 5, 578, 290, 2, 5795, 5793, 3, 2, 2, 2, 5796, 5799, 3, 2, 2, 2, 5797, 5795, 3, 2, 2, 2, 5797, 5798, 3, 2, 2, 2, 5798, 567, 3, 2, 2, 2, 5799, 5797, 3, 2, 2, 2, 5800, 5805, 5, 544, 273, 2, 5801, 5802, 7, 1024, 2, 2, 5802, 5804, 5, 544, 273, 2, 5803, 5801, 3, 2, 2, 2, 5804, 5807, 3, 2, 2, 2, 5805, 5803, 3, 2, 2, 2, 5805, 5806, 3, 2, 2, 2, 5806, 569, 3, 2, 2, 2, 5807, 5805, 3, 2, 2, 2, 5808, 5813, 7, 1037, 2, 2, 5809, 5810, 7, 1024, 2, 2, 5810, 5812, 7, 1037, 2, 2, 5811, 5809, 3, 2, 2, 2, 5812, 5815, 3, 2, 2, 2, 5813, 5811, 3, 2, 2, 2, 5813, 5814, 3, 2, 2, 2, 5814, 571, 3, 2, 2, 2, 5815, 5813, 3, 2, 2, 2, 5816, 5821, 7, 1048, 2, 2, 5817, 5818, 7, 1024, 2, 2, 5818, 5820, 7, 1048, 2, 2, 5819, 5817, 3, 2, 2, 2, 5820, 5823, 3, 2, 2, 2, 5821, 5819, 3, 2, 2, 2, 5821, 5822, 3, 2, 2, 2, 5822, 573, 3, 2, 2, 2, 5823, 5821, 3, 2, 2, 2, 5824, 5836, 7, 106, 2, 2, 5825, 5827, 5, 610, 306, 2, 5826, 5825, 3, 2, 2, 2, 5826, 5827, 3, 2, 2, 2, 5827, 5828, 3, 2, 2, 2, 5828, 5836, 5, 544, 273, 2, 5829, 5833, 5, 576, 289, 2, 5830, 5831, 7, 108, 2, 2, 5831, 5832, 7, 168, 2, 2, 5832, 5834, 5, 576, 289, 2, 5833, 5830, 3, 2, 2, 2, 5833, 5834, 3, 2, 2, 2, 5834, 5836, 3, 2, 2, 2, 5835, 5824, 3, 2, 2, 2, 5835, 5826, 3, 2, 2, 2, 5835, 5829, 3, 2, 2, 2, 5836, 575, 3, 2, 2, 2, 5837, 5843, 9, 105, 2, 2, 5838, 5840, 7, 1022, 2, 2, 5839, 5841, 5, 532, 267, 2, 5840, 5839, 3, 2, 2, 2, 5840, 5841, 3, 2, 2, 2, 5841, 5842, 3, 2, 2, 2, 5842, 5844, 7, 1023, 2, 2, 5843, 5838, 3, 2, 2, 2, 5843, 5844, 3, 2, 2, 2, 5844, 5852, 3, 2, 2, 2, 5845, 5846, 7, 263, 2, 2, 5846, 5848, 7, 1022, 2, 2, 5847, 5849, 5, 532, 267, 2, 5848, 5847, 3, 2, 2, 2, 5848, 5849, 3, 2, 2, 2, 5849, 5850, 3, 2, 2, 2, 5850, 5852, 7, 1023, 2, 2, 5851, 5837, 3, 2, 2, 2, 5851, 5845, 3, 2, 2, 2, 5852, 577, 3, 2, 2, 2, 5853, 5856, 5, 604, 303, 2, 5854, 5856, 7, 40, 2, 2, 5855, 5853, 3, 2, 2, 2, 5855, 5854, 3, 2, 2, 2, 5856, 579, 3, 2, 2, 2, 5857, 5858, 7, 71, 2, 2, 5858, 5859, 7, 55, 2, 2, 5859, 581, 3, 2, 2, 2, 5860, 5861, 7, 71, 2, 2, 5861, 5862, 7, 104, 2, 2, 5862, 5863, 7, 55, 2, 2, 5863, 583, 3, 2, 2, 2, 5864, 5882, 5, 586, 294, 2, 5865, 5882, 5, 594, 298, 2, 5866, 5867, 5, 596, 299, 2, 5867, 5869, 7, 1022, 2, 2, 5868, 5870, 5, 600, 301, 2, 5869, 5868, 3, 2, 2, 2, 5869, 5870, 3, 2, 2, 2, 5870, 5871, 3, 2, 2, 2, 5871, 5872, 7, 1023, 2, 2, 5872, 5882, 3, 2, 2, 2, 5873, 5874, 5, 500, 251, 2, 5874, 5876, 7, 1022, 2, 2, 5875, 5877, 5, 600, 301, 2, 5876, 5875, 3, 2, 2, 2, 5876, 5877, 3, 2, 2, 2, 5877, 5878, 3, 2, 2, 2, 5878, 5879, 7, 1023, 2, 2, 5879, 5882, 3, 2, 2, 2, 5880, 5882, 5, 598, 300, 2, 5881, 5864, 3, 2, 2, 2, 5881, 5865, 3, 2, 2, 2, 5881, 5866, 3, 2, 2, 2, 5881, 5873, 3, 2, 2, 2, 5881, 5880, 3, 2, 2, 2, 5882, 585, 3, 2, 2, 2, 5883, 6041, 9, 106, 2, 2, 5884, 5885, 7, 31, 2, 2, 5885, 5886, 7, 1022, 2, 2, 5886, 5887, 5, 604, 303, 2, 5887, 5888, 7, 1024, 2, 2, 5888, 5889, 5, 550, 276, 2, 5889, 5890, 7, 1023, 2, 2, 5890, 6041, 3, 2, 2, 2, 5891, 5892, 7, 31, 2, 2, 5892, 5893, 7, 1022, 2, 2, 5893, 5894, 5, 604, 303, 2, 5894, 5895, 7, 171, 2, 2, 5895, 5896, 5, 512, 257, 2, 5896, 5897, 7, 1023, 2, 2, 5897, 6041, 3, 2, 2, 2, 5898, 5899, 7, 22, 2, 2, 5899, 5900, 7, 1022, 2, 2, 5900, 5901, 5, 604, 303, 2, 5901, 5902, 7, 13, 2, 2, 5902, 5903, 5, 550, 276, 2, 5903, 5904, 7, 1023, 2, 2, 5904, 6041, 3, 2, 2, 2, 5905, 5906, 7, 172, 2, 2, 5906, 5907, 7, 1022, 2, 2, 5907, 5908, 5, 504, 253, 2, 5908, 5909, 7, 1023, 2, 2, 5909, 6041, 3, 2, 2, 2, 5910, 5911, 7, 21, 2, 2, 5911, 5913, 5, 604, 303, 2, 5912, 5914, 5, 588, 295, 2, 5913, 5912, 3, 2, 2, 2, 5914, 5915, 3, 2, 2, 2, 5915, 5913, 3, 2, 2, 2, 5915, 5916, 3, 2, 2, 2, 5916, 5919, 3, 2, 2, 2, 5917, 5918, 7, 51, 2, 2, 5918, 5920, 5, 602, 302, 2, 5919, 5917, 3, 2, 2, 2, 5919, 5920, 3, 2, 2, 2, 5920, 5921, 3, 2, 2, 2, 5921, 5922, 7, 342, 2, 2, 5922, 6041, 3, 2, 2, 2, 5923, 5925, 7, 21, 2, 2, 5924, 5926, 5, 588, 295, 2, 5925, 5924, 3, 2, 2, 2, 5926, 5927, 3, 2, 2, 2, 5927, 5925, 3, 2, 2, 2, 5927, 5928, 3, 2, 2, 2, 5928, 5931, 3, 2, 2, 2, 5929, 5930, 7, 51, 2, 2, 5930, 5932, 5, 602, 302, 2, 5931, 5929, 3, 2, 2, 2, 5931, 5932, 3, 2, 2, 2, 5932, 5933, 3, 2, 2, 2, 5933, 5934, 7, 342, 2, 2, 5934, 6041, 3, 2, 2, 2, 5935, 5936, 7, 206, 2, 2, 5936, 5937, 7, 1022, 2, 2, 5937, 5940, 5, 600, 301, 2, 5938, 5939, 7, 171, 2, 2, 5939, 5941, 5, 512, 257, 2, 5940, 5938, 3, 2, 2, 2, 5940, 5941, 3, 2, 2, 2, 5941, 5942, 3, 2, 2, 2, 5942, 5943, 7, 1023, 2, 2, 5943, 6041, 3, 2, 2, 2, 5944, 5945, 7, 264, 2, 2, 5945, 5948, 7, 1022, 2, 2, 5946, 5949, 5, 536, 269, 2, 5947, 5949, 5, 604, 303, 2, 5948, 5946, 3, 2, 2, 2, 5948, 5947, 3, 2, 2, 2, 5949, 5950, 3, 2, 2, 2, 5950, 5953, 7, 73, 2, 2, 5951, 5954, 5, 536, 269, 2, 5952, 5954, 5, 604, 303, 2, 5953, 5951, 3, 2, 2, 2, 5953, 5952, 3, 2, 2, 2, 5954, 5955, 3, 2, 2, 2, 5955, 5956, 7, 1023, 2, 2, 5956, 6041, 3, 2, 2, 2, 5957, 5958, 9, 107, 2, 2, 5958, 5961, 7, 1022, 2, 2, 5959, 5962, 5, 536, 269, 2, 5960, 5962, 5, 604, 303, 2, 5961, 5959, 3, 2, 2, 2, 5961, 5960, 3, 2, 2, 2, 5962, 5963, 3, 2, 2, 2, 5963, 5966, 7, 63, 2, 2, 5964, 5967, 5, 532, 267, 2, 5965, 5967, 5, 604, 303, 2, 5966, 5964, 3, 2, 2, 2, 5966, 5965, 3, 2, 2, 2, 5967, 5973, 3, 2, 2, 2, 5968, 5971, 7, 60, 2, 2, 5969, 5972, 5, 532, 267, 2, 5970, 5972, 5, 604, 303, 2, 5971, 5969, 3, 2, 2, 2, 5971, 5970, 3, 2, 2, 2, 5972, 5974, 3, 2, 2, 2, 5973, 5968, 3, 2, 2, 2, 5973, 5974, 3, 2, 2, 2, 5974, 5975, 3, 2, 2, 2, 5975, 5976, 7, 1023, 2, 2, 5976, 6041, 3, 2, 2, 2, 5977, 5978, 7, 268, 2, 2, 5978, 5979, 7, 1022, 2, 2, 5979, 5982, 9, 108, 2, 2, 5980, 5983, 5, 536, 269, 2, 5981, 5983, 5, 604, 303, 2, 5982, 5980, 3, 2, 2, 2, 5982, 5981, 3, 2, 2, 2, 5982, 5983, 3, 2, 2, 2, 5983, 5984, 3, 2, 2, 2, 5984, 5987, 7, 63, 2, 2, 5985, 5988, 5, 536, 269, 2, 5986, 5988, 5, 604, 303, 2, 5987, 5985, 3, 2, 2, 2, 5987, 5986, 3, 2, 2, 2, 5988, 5989, 3, 2, 2, 2, 5989, 5990, 7, 1023, 2, 2, 5990, 6041, 3, 2, 2, 2, 5991, 5992, 7, 268, 2, 2, 5992, 5995, 7, 1022, 2, 2, 5993, 5996, 5, 536, 269, 2, 5994, 5996, 5, 604, 303, 2, 5995, 5993, 3, 2, 2, 2, 5995, 5994, 3, 2, 2, 2, 5996, 5997, 3, 2, 2, 2, 5997, 6000, 7, 63, 2, 2, 5998, 6001, 5, 536, 269, 2, 5999, 6001, 5, 604, 303, 2, 6000, 5998, 3, 2, 2, 2, 6000, 5999, 3, 2, 2, 2, 6001, 6002, 3, 2, 2, 2, 6002, 6003, 7, 1023, 2, 2, 6003, 6041, 3, 2, 2, 2, 6004, 6005, 7, 991, 2, 2, 6005, 6008, 7, 1022, 2, 2, 6006, 6009, 5, 536, 269, 2, 6007, 6009, 5, 604, 303, 2, 6008, 6006, 3, 2, 2, 2, 6008, 6007, 3, 2, 2, 2, 6009, 6016, 3, 2, 2, 2, 6010, 6011, 7, 13, 2, 2, 6011, 6012, 9, 109, 2, 2, 6012, 6013, 7, 1022, 2, 2, 6013, 6014, 5, 532, 267, 2, 6014, 6015, 7, 1023, 2, 2, 6015, 6017, 3, 2, 2, 2, 6016, 6010, 3, 2, 2, 2, 6016, 6017, 3, 2, 2, 2, 6017, 6019, 3, 2, 2, 2, 6018, 6020, 5, 590, 296, 2, 6019, 6018, 3, 2, 2, 2, 6019, 6020, 3, 2, 2, 2, 6020, 6021, 3, 2, 2, 2, 6021, 6022, 7, 1023, 2, 2, 6022, 6041, 3, 2, 2, 2, 6023, 6024, 7, 261, 2, 2, 6024, 6025, 7, 1022, 2, 2, 6025, 6026, 5, 62, 32, 2, 6026, 6029, 7, 63, 2, 2, 6027, 6030, 5, 536, 269, 2, 6028, 6030, 5, 604, 303, 2, 6029, 6027, 3, 2, 2, 2, 6029, 6028, 3, 2, 2, 2, 6030, 6031, 3, 2, 2, 2, 6031, 6032, 7, 1023, 2, 2, 6032, 6041, 3, 2, 2, 2, 6033, 6034, 7, 791, 2, 2, 6034, 6035, 7, 1022, 2, 2, 6035, 6036, 9, 110, 2, 2, 6036, 6037, 7, 1024, 2, 2, 6037, 6038, 5, 536, 269, 2, 6038, 6039, 7, 1023, 2, 2, 6039, 6041, 3, 2, 2, 2, 6040, 5883, 3, 2, 2, 2, 6040, 5884, 3, 2, 2, 2, 6040, 5891, 3, 2, 2, 2, 6040, 5898, 3, 2, 2, 2, 6040, 5905, 3, 2, 2, 2, 6040, 5910, 3, 2, 2, 2, 6040, 5923, 3, 2, 2, 2, 6040, 5935, 3, 2, 2, 2, 6040, 5944, 3, 2, 2, 2, 6040, 5957, 3, 2, 2, 2, 6040, 5977, 3, 2, 2, 2, 6040, 5991, 3, 2, 2, 2, 6040, 6004, 3, 2, 2, 2, 6040, 6023, 3, 2, 2, 2, 6040, 6033, 3, 2, 2, 2, 6041, 587, 3, 2, 2, 2, 6042, 6043, 7, 173, 2, 2, 6043, 6044, 5, 602, 302, 2, 6044, 6045, 7, 158, 2, 2, 6045, 6046, 5, 602, 302, 2, 6046, 589, 3, 2, 2, 2, 6047, 6048, 7, 402, 2, 2, 6048, 6053, 5, 592, 297, 2, 6049, 6050, 7, 1024, 2, 2, 6050, 6052, 5, 592, 297, 2, 6051, 6049, 3, 2, 2, 2, 6052, 6055, 3, 2, 2, 2, 6053, 6051, 3, 2, 2, 2, 6053, 6054, 3, 2, 2, 2, 6054, 6062, 3, 2, 2, 2, 6055, 6053, 3, 2, 2, 2, 6056, 6057, 7, 402, 2, 2, 6057, 6058, 5, 532, 267, 2, 6058, 6059, 7, 1010, 2, 2, 6059, 6060, 5, 532, 267, 2, 6060, 6062, 3, 2, 2, 2, 6061, 6047, 3, 2, 2, 2, 6061, 6056, 3, 2, 2, 2, 6062, 591, 3, 2, 2, 2, 6063, 6065, 5, 532, 267, 2, 6064, 6066, 9, 111, 2, 2, 6065, 6064, 3, 2, 2, 2, 6065, 6066, 3, 2, 2, 2, 6066, 593, 3, 2, 2, 2, 6067, 6068, 9, 112, 2, 2, 6068, 6070, 7, 1022, 2, 2, 6069, 6071, 9, 40, 2, 2, 6070, 6069, 3, 2, 2, 2, 6070, 6071, 3, 2, 2, 2, 6071, 6072, 3, 2, 2, 2, 6072, 6073, 5, 602, 302, 2, 6073, 6074, 7, 1023, 2, 2, 6074, 6124, 3, 2, 2, 2, 6075, 6076, 7, 241, 2, 2, 6076, 6082, 7, 1022, 2, 2, 6077, 6083, 7, 1005, 2, 2, 6078, 6080, 7, 8, 2, 2, 6079, 6078, 3, 2, 2, 2, 6079, 6080, 3, 2, 2, 2, 6080, 6081, 3, 2, 2, 2, 6081, 6083, 5, 602, 302, 2, 6082, 6077, 3, 2, 2, 2, 6082, 6079, 3, 2, 2, 2, 6083, 6084, 3, 2, 2, 2, 6084, 6124, 7, 1023, 2, 2, 6085, 6086, 7, 241, 2, 2, 6086, 6087, 7, 1022, 2, 2, 6087, 6088, 7, 47, 2, 2, 6088, 6089, 5, 600, 301, 2, 6089, 6090, 7, 1023, 2, 2, 6090, 6124, 3, 2, 2, 2, 6091, 6092, 9, 113, 2, 2, 6092, 6094, 7, 1022, 2, 2, 6093, 6095, 7, 8, 2, 2, 6094, 6093, 3, 2, 2, 2, 6094, 6095, 3, 2, 2, 2, 6095, 6096, 3, 2, 2, 2, 6096, 6097, 5, 602, 302, 2, 6097, 6098, 7, 1023, 2, 2, 6098, 6124, 3, 2, 2, 2, 6099, 6100, 7, 242, 2, 2, 6100, 6102, 7, 1022, 2, 2, 6101, 6103, 7, 47, 2, 2, 6102, 6101, 3, 2, 2, 2, 6102, 6103, 3, 2, 2, 2, 6103, 6104, 3, 2, 2, 2, 6104, 6115, 5, 600, 301, 2, 6105, 6106, 7, 113, 2, 2, 6106, 6107, 7, 18, 2, 2, 6107, 6112, 5, 212, 107, 2, 6108, 6109, 7, 1024, 2, 2, 6109, 6111, 5, 212, 107, 2, 6110, 6108, 3, 2, 2, 2, 6111, 6114, 3, 2, 2, 2, 6112, 6110, 3, 2, 2, 2, 6112, 6113, 3, 2, 2, 2, 6113, 6116, 3, 2, 2, 2, 6114, 6112, 3, 2, 2, 2, 6115, 6105, 3, 2, 2, 2, 6115, 6116, 3, 2, 2, 2, 6116, 6119, 3, 2, 2, 2, 6117, 6118, 7, 141, 2, 2, 6118, 6120, 7, 1037, 2, 2, 6119, 6117, 3, 2, 2, 2, 6119, 6120, 3, 2, 2, 2, 6120, 6121, 3, 2, 2, 2, 6121, 6122, 7, 1023, 2, 2, 6122, 6124, 3, 2, 2, 2, 6123, 6067, 3, 2, 2, 2, 6123, 6075, 3, 2, 2, 2, 6123, 6085, 3, 2, 2, 2, 6123, 6091, 3, 2, 2, 2, 6123, 6099, 3, 2, 2, 2, 6124, 595, 3, 2, 2, 2, 6125, 6149, 5, 632, 317, 2, 6126, 6149, 7, 640, 2, 2, 6127, 6149, 7, 257, 2, 2, 6128, 6149, 7, 253, 2, 2, 6129, 6149, 7, 254, 2, 2, 6130, 6149, 7, 255, 2, 2, 6131, 6149, 7, 258, 2, 2, 6132, 6149, 7, 259, 2, 2, 6133, 6149, 7, 260, 2, 2, 6134, 6149, 7, 71, 2, 2, 6135, 6149, 7, 78, 2, 2, 6136, 6149, 7, 256, 2, 2, 6137, 6149, 7, 262, 2, 2, 6138, 6149, 7, 437, 2, 2, 6139, 6149, 7, 263, 2, 2, 6140, 6149, 7, 129, 2, 2, 6141, 6149, 7, 265, 2, 2, 6142, 6149, 7, 266, 2, 2, 6143, 6149, 7, 267, 2, 2, 6144, 6149, 7, 268, 2, 2, 6145, 6149, 7, 269, 2, 2, 6146, 6149, 7, 270, 2, 2, 6147, 6149, 7, 271, 2, 2, 6148, 6125, 3, 2, 2, 2, 6148, 6126, 3, 2, 2, 2, 6148, 6127, 3, 2, 2, 2, 6148, 6128, 3, 2, 2, 2, 6148, 6129, 3, 2, 2, 2, 6148, 6130, 3, 2, 2, 2, 6148, 6131, 3, 2, 2, 2, 6148, 6132, 3, 2, 2, 2, 6148, 6133, 3, 2, 2, 2, 6148, 6134, 3, 2, 2, 2, 6148, 6135, 3, 2, 2, 2, 6148, 6136, 3, 2, 2, 2, 6148, 6137, 3, 2, 2, 2, 6148, 6138, 3, 2, 2, 2, 6148, 6139, 3, 2, 2, 2, 6148, 6140, 3, 2, 2, 2, 6148, 6141, 3, 2, 2, 2, 6148, 6142, 3, 2, 2, 2, 6148, 6143, 3, 2, 2, 2, 6148, 6144, 3, 2, 2, 2, 6148, 6145, 3, 2, 2, 2, 6148, 6146, 3, 2, 2, 2, 6148, 6147, 3, 2, 2, 2, 6149, 597, 3, 2, 2, 2, 6150, 6151, 9, 114, 2, 2, 6151, 6152, 7, 1022, 2, 2, 6152, 6153, 5, 602, 302, 2, 6153, 6154, 7, 1023, 2, 2, 6154, 599, 3, 2, 2, 2, 6155, 6160, 5, 544, 273, 2, 6156, 6160, 5, 504, 253, 2, 6157, 6160, 5, 584, 293, 2, 6158, 6160, 5, 604, 303, 2, 6159, 6155, 3, 2, 2, 2, 6159, 6156, 3, 2, 2, 2, 6159, 6157, 3, 2, 2, 2, 6159, 6158, 3, 2, 2, 2, 6160, 6170, 3, 2, 2, 2, 6161, 6166, 7, 1024, 2, 2, 6162, 6167, 5, 544, 273, 2, 6163, 6167, 5, 504, 253, 2, 6164, 6167, 5, 584, 293, 2, 6165, 6167, 5, 604, 303, 2, 6166, 6162, 3, 2, 2, 2, 6166, 6163, 3, 2, 2, 2, 6166, 6164, 3, 2, 2, 2, 6166, 6165, 3, 2, 2, 2, 6167, 6169, 3, 2, 2, 2, 6168, 6161, 3, 2, 2, 2, 6169, 6172, 3, 2, 2, 2, 6170, 6168, 3, 2, 2, 2, 6170, 6171, 3, 2, 2, 2, 6171, 601, 3, 2, 2, 2, 6172, 6170, 3, 2, 2, 2, 6173, 6178, 5, 544, 273, 2, 6174, 6178, 5, 504, 253, 2, 6175, 6178, 5, 584, 293, 2, 6176, 6178, 5, 604, 303, 2, 6177, 6173, 3, 2, 2, 2, 6177, 6174, 3, 2, 2, 2, 6177, 6175, 3, 2, 2, 2, 6177, 6176, 3, 2, 2, 2, 6178, 603, 3, 2, 2, 2, 6179, 6180, 8, 303, 1, 2, 6180, 6181, 9, 115, 2, 2, 6181, 6191, 5, 604, 303, 6, 6182, 6183, 5, 606, 304, 2, 6183, 6185, 7, 81, 2, 2, 6184, 6186, 7, 104, 2, 2, 6185, 6184, 3, 2, 2, 2, 6185, 6186, 3, 2, 2, 2, 6186, 6187, 3, 2, 2, 2, 6187, 6188, 9, 116, 2, 2, 6188, 6191, 3, 2, 2, 2, 6189, 6191, 5, 606, 304, 2, 6190, 6179, 3, 2, 2, 2, 6190, 6182, 3, 2, 2, 2, 6190, 6189, 3, 2, 2, 2, 6191, 6198, 3, 2, 2, 2, 6192, 6193, 12, 5, 2, 2, 6193, 6194, 5, 614, 308, 2, 6194, 6195, 5, 604, 303, 6, 6195, 6197, 3, 2, 2, 2, 6196, 6192, 3, 2, 2, 2, 6197, 6200, 3, 2, 2, 2, 6198, 6196, 3, 2, 2, 2, 6198, 6199, 3, 2, 2, 2, 6199, 605, 3, 2, 2, 2, 6200, 6198, 3, 2, 2, 2, 6201, 6204, 8, 304, 1, 2, 6202, 6203, 7, 1048, 2, 2, 6203, 6205, 7, 996, 2, 2, 6204, 6202, 3, 2, 2, 2, 6204, 6205, 3, 2, 2, 2, 6205, 6206, 3, 2, 2, 2, 6206, 6207, 5, 608, 305, 2, 6207, 6265, 3, 2, 2, 2, 6208, 6209, 12, 9, 2, 2, 6209, 6210, 5, 612, 307, 2, 6210, 6211, 5, 606, 304, 10, 6211, 6264, 3, 2, 2, 2, 6212, 6214, 12, 7, 2, 2, 6213, 6215, 7, 104, 2, 2, 6214, 6213, 3, 2, 2, 2, 6214, 6215, 3, 2, 2, 2, 6215, 6216, 3, 2, 2, 2, 6216, 6217, 7, 16, 2, 2, 6217, 6218, 5, 606, 304, 2, 6218, 6219, 7, 12, 2, 2, 6219, 6220, 5, 606, 304, 8, 6220, 6264, 3, 2, 2, 2, 6221, 6222, 12, 6, 2, 2, 6222, 6223, 7, 531, 2, 2, 6223, 6224, 7, 90, 2, 2, 6224, 6264, 5, 606, 304, 7, 6225, 6227, 12, 4, 2, 2, 6226, 6228, 7, 104, 2, 2, 6227, 6226, 3, 2, 2, 2, 6227, 6228, 3, 2, 2, 2, 6228, 6229, 3, 2, 2, 2, 6229, 6230, 9, 117, 2, 2, 6230, 6264, 5, 606, 304, 5, 6231, 6233, 12, 11, 2, 2, 6232, 6234, 7, 104, 2, 2, 6233, 6232, 3, 2, 2, 2, 6233, 6234, 3, 2, 2, 2, 6234, 6235, 3, 2, 2, 2, 6235, 6236, 7, 73, 2, 2, 6236, 6239, 7, 1022, 2, 2, 6237, 6240, 5, 182, 92, 2, 6238, 6240, 5, 564, 283, 2, 6239, 6237, 3, 2, 2, 2, 6239, 6238, 3, 2, 2, 2, 6240, 6241, 3, 2, 2, 2, 6241, 6242, 7, 1023, 2, 2, 6242, 6264, 3, 2, 2, 2, 6243, 6244, 12, 10, 2, 2, 6244, 6245, 7, 81, 2, 2, 6245, 6264, 5, 542, 272, 2, 6246, 6247, 12, 8, 2, 2, 6247, 6248, 5, 612, 307, 2, 6248, 6249, 9, 118, 2, 2, 6249, 6250, 7, 1022, 2, 2, 6250, 6251, 5, 182, 92, 2, 6251, 6252, 7, 1023, 2, 2, 6252, 6264, 3, 2, 2, 2, 6253, 6255, 12, 5, 2, 2, 6254, 6256, 7, 104, 2, 2, 6255, 6254, 3, 2, 2, 2, 6255, 6256, 3, 2, 2, 2, 6256, 6257, 3, 2, 2, 2, 6257, 6258, 7, 90, 2, 2, 6258, 6261, 5, 606, 304, 2, 6259, 6260, 7, 348, 2, 2, 6260, 6262, 7, 1037, 2, 2, 6261, 6259, 3, 2, 2, 2, 6261, 6262, 3, 2, 2, 2, 6262, 6264, 3, 2, 2, 2, 6263, 6208, 3, 2, 2, 2, 6263, 6212, 3, 2, 2, 2, 6263, 6221, 3, 2, 2, 2, 6263, 6225, 3, 2, 2, 2, 6263, 6231, 3, 2, 2, 2, 6263, 6243, 3, 2, 2, 2, 6263, 6246, 3, 2, 2, 2, 6263, 6253, 3, 2, 2, 2, 6264, 6267, 3, 2, 2, 2, 6265, 6263, 3, 2, 2, 2, 6265, 6266, 3, 2, 2, 2, 6266, 607, 3, 2, 2, 2, 6267, 6265, 3, 2, 2, 2, 6268, 6269, 8, 305, 1, 2, 6269, 6314, 5, 544, 273, 2, 6270, 6314, 5, 504, 253, 2, 6271, 6314, 5, 584, 293, 2, 6272, 6314, 5, 510, 256, 2, 6273, 6274, 5, 610, 306, 2, 6274, 6275, 5, 608, 305, 11, 6275, 6314, 3, 2, 2, 2, 6276, 6277, 7, 210, 2, 2, 6277, 6314, 5, 608, 305, 10, 6278, 6279, 7, 1022, 2, 2, 6279, 6284, 5, 604, 303, 2, 6280, 6281, 7, 1024, 2, 2, 6281, 6283, 5, 604, 303, 2, 6282, 6280, 3, 2, 2, 2, 6283, 6286, 3, 2, 2, 2, 6284, 6282, 3, 2, 2, 2, 6284, 6285, 3, 2, 2, 2, 6285, 6287, 3, 2, 2, 2, 6286, 6284, 3, 2, 2, 2, 6287, 6288, 7, 1023, 2, 2, 6288, 6314, 3, 2, 2, 2, 6289, 6290, 7, 513, 2, 2, 6290, 6291, 7, 1022, 2, 2, 6291, 6294, 5, 604, 303, 2, 6292, 6293, 7, 1024, 2, 2, 6293, 6295, 5, 604, 303, 2, 6294, 6292, 3, 2, 2, 2, 6295, 6296, 3, 2, 2, 2, 6296, 6294, 3, 2, 2, 2, 6296, 6297, 3, 2, 2, 2, 6297, 6298, 3, 2, 2, 2, 6298, 6299, 7, 1023, 2, 2, 6299, 6314, 3, 2, 2, 2, 6300, 6301, 7, 55, 2, 2, 6301, 6302, 7, 1022, 2, 2, 6302, 6303, 5, 182, 92, 2, 6303, 6304, 7, 1023, 2, 2, 6304, 6314, 3, 2, 2, 2, 6305, 6306, 7, 1022, 2, 2, 6306, 6307, 5, 182, 92, 2, 6307, 6308, 7, 1023, 2, 2, 6308, 6314, 3, 2, 2, 2, 6309, 6310, 7, 79, 2, 2, 6310, 6311, 5, 604, 303, 2, 6311, 6312, 5, 62, 32, 2, 6312, 6314, 3, 2, 2, 2, 6313, 6268, 3, 2, 2, 2, 6313, 6270, 3, 2, 2, 2, 6313, 6271, 3, 2, 2, 2, 6313, 6272, 3, 2, 2, 2, 6313, 6273, 3, 2, 2, 2, 6313, 6276, 3, 2, 2, 2, 6313, 6278, 3, 2, 2, 2, 6313, 6289, 3, 2, 2, 2, 6313, 6300, 3, 2, 2, 2, 6313, 6305, 3, 2, 2, 2, 6313, 6309, 3, 2, 2, 2, 6314, 6328, 3, 2, 2, 2, 6315, 6316, 12, 4, 2, 2, 6316, 6317, 5, 616, 309, 2, 6317, 6318, 5, 608, 305, 5, 6318, 6327, 3, 2, 2, 2, 6319, 6320, 12, 3, 2, 2, 6320, 6321, 5, 618, 310, 2, 6321, 6322, 5, 608, 305, 4, 6322, 6327, 3, 2, 2, 2, 6323, 6324, 12, 13, 2, 2, 6324, 6325, 7, 26, 2, 2, 6325, 6327, 5, 514, 258, 2, 6326, 6315, 3, 2, 2, 2, 6326, 6319, 3, 2, 2, 2, 6326, 6323, 3, 2, 2, 2, 6327, 6330, 3, 2, 2, 2, 6328, 6326, 3, 2, 2, 2, 6328, 6329, 3, 2, 2, 2, 6329, 609, 3, 2, 2, 2, 6330, 6328, 3, 2, 2, 2, 6331, 6332, 9, 119, 2, 2, 6332, 611, 3, 2, 2, 2, 6333, 6348, 7, 1013, 2, 2, 6334, 6348, 7, 1014, 2, 2, 6335, 6348, 7, 1015, 2, 2, 6336, 6337, 7, 1015, 2, 2, 6337, 6348, 7, 1013, 2, 2, 6338, 6339, 7, 1014, 2, 2, 6339, 6348, 7, 1013, 2, 2, 6340, 6341, 7, 1015, 2, 2, 6341, 6348, 7, 1014, 2, 2, 6342, 6343, 7, 1016, 2, 2, 6343, 6348, 7, 1013, 2, 2, 6344, 6345, 7, 1015, 2, 2, 6345, 6346, 7, 1013, 2, 2, 6346, 6348, 7, 1014, 2, 2, 6347, 6333, 3, 2, 2, 2, 6347, 6334, 3, 2, 2, 2, 6347, 6335, 3, 2, 2, 2, 6347, 6336, 3, 2, 2, 2, 6347, 6338, 3, 2, 2, 2, 6347, 6340, 3, 2, 2, 2, 6347, 6342, 3, 2, 2, 2, 6347, 6344, 3, 2, 2, 2, 6348, 613, 3, 2, 2, 2, 6349, 6357, 7, 12, 2, 2, 6350, 6351, 7, 1019, 2, 2, 6351, 6357, 7, 1019, 2, 2, 6352, 6357, 7, 178, 2, 2, 6353, 6357, 7, 112, 2, 2, 6354, 6355, 7, 1018, 2, 2, 6355, 6357, 7, 1018, 2, 2, 6356, 6349, 3, 2, 2, 2, 6356, 6350, 3, 2, 2, 2, 6356, 6352, 3, 2, 2, 2, 6356, 6353, 3, 2, 2, 2, 6356, 6354, 3, 2, 2, 2, 6357, 615, 3, 2, 2, 2, 6358, 6359, 7, 1015, 2, 2, 6359, 6366, 7, 1015, 2, 2, 6360, 6361, 7, 1014, 2, 2, 6361, 6366, 7, 1014, 2, 2, 6362, 6366, 7, 1019, 2, 2, 6363, 6366, 7, 1020, 2, 2, 6364, 6366, 7, 1018, 2, 2, 6365, 6358, 3, 2, 2, 2, 6365, 6360, 3, 2, 2, 2, 6365, 6362, 3, 2, 2, 2, 6365, 6363, 3, 2, 2, 2, 6365, 6364, 3, 2, 2, 2, 6366, 617, 3, 2, 2, 2, 6367, 6368, 9, 120, 2, 2, 6368, 619, 3, 2, 2, 2, 6369, 6370, 9, 121, 2, 2, 6370, 621, 3, 2, 2, 2, 6371, 6372, 9, 122, 2, 2, 6372, 623, 3, 2, 2, 2, 6373, 6374, 9, 123, 2, 2, 6374, 625, 3, 2, 2, 2, 6375, 6376, 9, 124, 2, 2, 6376, 627, 3, 2, 2, 2, 6377, 6378, 9, 125, 2, 2, 6378, 629, 3, 2, 2, 2, 6379, 6380, 9, 126, 2, 2, 6380, 631, 3, 2, 2, 2, 6381, 6382, 9, 127, 2, 2, 6382, 633, 3, 2, 2, 2, 930, 638, 641, 647, 650, 653, 655, 660, 663, 666, 675, 714, 726, 737, 754, 759, 771, 798, 807, 812, 818, 823, 827, 836, 839, 842, 846, 853, 856, 861, 869, 874, 879, 882, 884, 896, 899, 903, 906, 910, 913, 917, 920, 923, 927, 930, 934, 940, 946, 952, 959, 966, 972, 978, 987, 992, 1008, 1015, 1019, 1029, 1033, 1037, 1041, 1045, 1050, 1053, 1056, 1059, 1062, 1068, 1072, 1078, 1083, 1086, 1089, 1091, 1102, 1106, 1109, 1123, 1126, 1130, 1133, 1137, 1140, 1144, 1147, 1151, 1154, 1157, 1161, 1164, 1168, 1174, 1187, 1194, 1199, 1202, 1207, 1215, 1221, 1225, 1228, 1233, 1236, 1240, 1243, 1247, 1250, 1258, 1260, 1267, 1273, 1281, 1284, 1291, 1294, 1296, 1302, 1308, 1325, 1332, 1339, 1350, 1353, 1366, 1379, 1384, 1400, 1408, 1418, 1424, 1434, 1437, 1442, 1455, 1462, 1469, 1471, 1478, 1482, 1484, 1489, 1492, 1498, 1503, 1505, 1509, 1512, 1515, 1521, 1526, 1528, 1533, 1540, 1542, 1549, 1554, 1558, 1561, 1569, 1577, 1579, 1587, 1591, 1594, 1600, 1605, 1608, 1614, 1617, 1621, 1626, 1631, 1635, 1640, 1643, 1647, 1651, 1655, 1659, 1664, 1669, 1674, 1680, 1685, 1690, 1696, 1701, 1706, 1711, 1716, 1721, 1726, 1731, 1736, 1741, 1746, 1752, 1757, 1763, 1773, 1780, 1782, 1790, 1795, 1798, 1806, 1812, 1828, 1840, 1842, 1845, 1853, 1859, 1865, 1878, 1885, 1893, 1896, 1907, 1915, 1918, 1930, 1937, 1945, 1948, 1960, 1967, 1975, 1978, 1985, 1993, 1996, 1998, 2003, 2011, 2020, 2024, 2028, 2033, 2039, 2045, 2050, 2055, 2060, 2065, 2068, 2073, 2078, 2088, 2092, 2099, 2104, 2107, 2112, 2115, 2119, 2123, 2131, 2150, 2153, 2156, 2160, 2170, 2183, 2190, 2193, 2202, 2205, 2208, 2219, 2222, 2226, 2234, 2237, 2242, 2250, 2256, 2260, 2264, 2269, 2274, 2281, 2285, 2296, 2304, 2307, 2313, 2319, 2321, 2326, 2329, 2335, 2341, 2343, 2347, 2350, 2353, 2359, 2365, 2368, 2374, 2380, 2382, 2387, 2395, 2397, 2406, 2411, 2419, 2423, 2431, 2441, 2446, 2453, 2457, 2461, 2490, 2494, 2506, 2509, 2518, 2535, 2547, 2554, 2561, 2576, 2589, 2595, 2601, 2607, 2613, 2619, 2625, 2630, 2637, 2644, 2651, 2656, 2659, 2661, 2675, 2682, 2689, 2695, 2699, 2703, 2710, 2713, 2718, 2725, 2732, 2736, 2745, 2754, 2763, 2766, 2770, 2779, 2783, 2786, 2789, 2795, 2798, 2804, 2813, 2816, 2827, 2830, 2835, 2838, 2843, 2853, 2858, 2864, 2866, 2872, 2874, 2880, 2888, 2893, 2901, 2904, 2909, 2912, 2917, 2925, 2933, 2939, 2947, 2952, 2960, 2963, 2967, 2970, 2978, 2984, 2993, 2996, 3000, 3004, 3010, 3014, 3018, 3020, 3023, 3026, 3029, 3035, 3039, 3042, 3045, 3048, 3051, 3053, 3057, 3063, 3069, 3074, 3077, 3083, 3087, 3095, 3099, 3102, 3105, 3114, 3118, 3121, 3125, 3129, 3132, 3135, 3140, 3146, 3150, 3160, 3166, 3170, 3176, 3180, 3186, 3189, 3201, 3205, 3209, 3217, 3221, 3229, 3232, 3236, 3239, 3247, 3252, 3255, 3258, 3262, 3265, 3274, 3279, 3288, 3293, 3300, 3307, 3315, 3320, 3328, 3331, 3334, 3341, 3344, 3351, 3354, 3362, 3368, 3379, 3382, 3393, 3399, 3403, 3414, 3419, 3421, 3425, 3435, 3445, 3451, 3456, 3459, 3462, 3465, 3471, 3476, 3479, 3482, 3485, 3487, 3493, 3498, 3501, 3504, 3508, 3514, 3518, 3528, 3532, 3538, 3547, 3550, 3554, 3557, 3561, 3565, 3568, 3570, 3578, 3590, 3596, 3598, 3604, 3606, 3608, 3614, 3622, 3630, 3636, 3645, 3650, 3652, 3656, 3660, 3666, 3673, 3677, 3686, 3689, 3693, 3697, 3701, 3704, 3707, 3710, 3714, 3718, 3721, 3724, 3727, 3734, 3738, 3753, 3766, 3774, 3784, 3788, 3791, 3797, 3800, 3803, 3812, 3821, 3831, 3835, 3845, 3855, 3863, 3866, 3875, 3878, 3882, 3887, 3891, 3900, 3903, 3934, 3937, 3940, 3996, 4001, 4029, 4043, 4050, 4054, 4060, 4068, 4070, 4081, 4091, 4098, 4104, 4112, 4117, 4125, 4133, 4141, 4149, 4155, 4158, 4162, 4167, 4172, 4178, 4180, 4191, 4196, 4203, 4205, 4219, 4225, 4230, 4235, 4241, 4248, 4256, 4264, 4269, 4275, 4278, 4286, 4293, 4302, 4305, 4322, 4330, 4338, 4342, 4349, 4355, 4363, 4372, 4378, 4385, 4392, 4397, 4400, 4402, 4408, 4410, 4414, 4416, 4419, 4428, 4434, 4441, 4448, 4453, 4456, 4458, 4464, 4466, 4470, 4472, 4475, 4480, 4487, 4496, 4501, 4510, 4517, 4522, 4525, 4527, 4533, 4535, 4538, 4550, 4556, 4565, 4574, 4579, 4588, 4594, 4605, 4608, 4620, 4627, 4632, 4647, 4658, 4661, 4671, 4681, 4691, 4701, 4705, 4709, 4719, 4724, 4774, 4792, 4800, 4811, 4818, 4822, 4829, 4834, 4837, 4840, 4849, 4853, 4883, 4890, 4894, 4901, 4904, 4920, 4923, 4933, 4937, 4943, 4946, 4951, 4955, 4962, 4965, 4971, 4995, 5008, 5011, 5021, 5029, 5033, 5040, 5043, 5052, 5058, 5064, 5074, 5076, 5082, 5085, 5088, 5100, 5103, 5109, 5112, 5120, 5128, 5134, 5138, 5152, 5164, 5171, 5174, 5181, 5188, 5193, 5198, 5209, 5220, 5226, 5231, 5244, 5246, 5251, 5256, 5258, 5265, 5272, 5275, 5278, 5284, 5288, 5294, 5300, 5313, 5318, 5326, 5329, 5334, 5339, 5347, 5350, 5356, 5360, 5373, 5379, 5391, 5394, 5403, 5408, 5414, 5421, 5423, 5427, 5433, 5436, 5446, 5450, 5470, 5477, 5479, 5486, 5488, 5492, 5497, 5508, 5513, 5519, 5522, 5526, 5531, 5534, 5538, 5542, 5544, 5549, 5554, 5567, 5570, 5574, 5577, 5582, 5585, 5589, 5594, 5597, 5602, 5605, 5611, 5614, 5618, 5621, 5624, 5628, 5631, 5634, 5638, 5641, 5644, 5647, 5651, 5654, 5657, 5662, 5667, 5672, 5675, 5680, 5683, 5688, 5691, 5695, 5699, 5707, 5714, 5718, 5723, 5726, 5731, 5735, 5737, 5753, 5762, 5770, 5779, 5789, 5797, 5805, 5813, 5821, 5826, 5833, 5835, 5840, 5843, 5848, 5851, 5855, 5869, 5876, 5881, 5915, 5919, 5927, 5931, 5940, 5948, 5953, 5961, 5966, 5971, 5973, 5982, 5987, 5995, 6000, 6008, 6016, 6019, 6029, 6040, 6053, 6061, 6065, 6070, 6079, 6082, 6094, 6102, 6112, 6115, 6119, 6123, 6148, 6159, 6166, 6170, 6177, 6185, 6190, 6198, 6204, 6214, 6227, 6233, 6239, 6255, 6261, 6263, 6265, 6284, 6296, 6313, 6326, 6328, 6347, 6356, 6365]
\ No newline at end of file
diff --git a/src/lib/generic/SqlParser.js b/src/lib/generic/SqlParser.js
new file mode 100644
index 0000000..bc863ac
--- /dev/null
+++ b/src/lib/generic/SqlParser.js
@@ -0,0 +1,87886 @@
+// Generated from /Users/ziv/Workspace/dt-sql-parser/src/grammar/generic/SqlParser.g4 by ANTLR 4.8
+// jshint ignore: start
+var antlr4 = require('antlr4/index');
+var SqlParserListener = require('./SqlParserListener').SqlParserListener;
+var SqlParserVisitor = require('./SqlParserVisitor').SqlParserVisitor;
+
+var grammarFileName = "SqlParser.g4";
+
+
+var serializedATN = ["\u0003\u608b\ua72a\u8133\ub9ed\u417c\u3be7\u7786\u5964",
+ "\u0003\u041a\u18f0\u0004\u0002\t\u0002\u0004\u0003\t\u0003\u0004\u0004",
+ "\t\u0004\u0004\u0005\t\u0005\u0004\u0006\t\u0006\u0004\u0007\t\u0007",
+ "\u0004\b\t\b\u0004\t\t\t\u0004\n\t\n\u0004\u000b\t\u000b\u0004\f\t\f",
+ "\u0004\r\t\r\u0004\u000e\t\u000e\u0004\u000f\t\u000f\u0004\u0010\t\u0010",
+ "\u0004\u0011\t\u0011\u0004\u0012\t\u0012\u0004\u0013\t\u0013\u0004\u0014",
+ "\t\u0014\u0004\u0015\t\u0015\u0004\u0016\t\u0016\u0004\u0017\t\u0017",
+ "\u0004\u0018\t\u0018\u0004\u0019\t\u0019\u0004\u001a\t\u001a\u0004\u001b",
+ "\t\u001b\u0004\u001c\t\u001c\u0004\u001d\t\u001d\u0004\u001e\t\u001e",
+ "\u0004\u001f\t\u001f\u0004 \t \u0004!\t!\u0004\"\t\"\u0004#\t#\u0004",
+ "$\t$\u0004%\t%\u0004&\t&\u0004\'\t\'\u0004(\t(\u0004)\t)\u0004*\t*\u0004",
+ "+\t+\u0004,\t,\u0004-\t-\u0004.\t.\u0004/\t/\u00040\t0\u00041\t1\u0004",
+ "2\t2\u00043\t3\u00044\t4\u00045\t5\u00046\t6\u00047\t7\u00048\t8\u0004",
+ "9\t9\u0004:\t:\u0004;\t;\u0004<\t<\u0004=\t=\u0004>\t>\u0004?\t?\u0004",
+ "@\t@\u0004A\tA\u0004B\tB\u0004C\tC\u0004D\tD\u0004E\tE\u0004F\tF\u0004",
+ "G\tG\u0004H\tH\u0004I\tI\u0004J\tJ\u0004K\tK\u0004L\tL\u0004M\tM\u0004",
+ "N\tN\u0004O\tO\u0004P\tP\u0004Q\tQ\u0004R\tR\u0004S\tS\u0004T\tT\u0004",
+ "U\tU\u0004V\tV\u0004W\tW\u0004X\tX\u0004Y\tY\u0004Z\tZ\u0004[\t[\u0004",
+ "\\\t\\\u0004]\t]\u0004^\t^\u0004_\t_\u0004`\t`\u0004a\ta\u0004b\tb\u0004",
+ "c\tc\u0004d\td\u0004e\te\u0004f\tf\u0004g\tg\u0004h\th\u0004i\ti\u0004",
+ "j\tj\u0004k\tk\u0004l\tl\u0004m\tm\u0004n\tn\u0004o\to\u0004p\tp\u0004",
+ "q\tq\u0004r\tr\u0004s\ts\u0004t\tt\u0004u\tu\u0004v\tv\u0004w\tw\u0004",
+ "x\tx\u0004y\ty\u0004z\tz\u0004{\t{\u0004|\t|\u0004}\t}\u0004~\t~\u0004",
+ "\u007f\t\u007f\u0004\u0080\t\u0080\u0004\u0081\t\u0081\u0004\u0082\t",
+ "\u0082\u0004\u0083\t\u0083\u0004\u0084\t\u0084\u0004\u0085\t\u0085\u0004",
+ "\u0086\t\u0086\u0004\u0087\t\u0087\u0004\u0088\t\u0088\u0004\u0089\t",
+ "\u0089\u0004\u008a\t\u008a\u0004\u008b\t\u008b\u0004\u008c\t\u008c\u0004",
+ "\u008d\t\u008d\u0004\u008e\t\u008e\u0004\u008f\t\u008f\u0004\u0090\t",
+ "\u0090\u0004\u0091\t\u0091\u0004\u0092\t\u0092\u0004\u0093\t\u0093\u0004",
+ "\u0094\t\u0094\u0004\u0095\t\u0095\u0004\u0096\t\u0096\u0004\u0097\t",
+ "\u0097\u0004\u0098\t\u0098\u0004\u0099\t\u0099\u0004\u009a\t\u009a\u0004",
+ "\u009b\t\u009b\u0004\u009c\t\u009c\u0004\u009d\t\u009d\u0004\u009e\t",
+ "\u009e\u0004\u009f\t\u009f\u0004\u00a0\t\u00a0\u0004\u00a1\t\u00a1\u0004",
+ "\u00a2\t\u00a2\u0004\u00a3\t\u00a3\u0004\u00a4\t\u00a4\u0004\u00a5\t",
+ "\u00a5\u0004\u00a6\t\u00a6\u0004\u00a7\t\u00a7\u0004\u00a8\t\u00a8\u0004",
+ "\u00a9\t\u00a9\u0004\u00aa\t\u00aa\u0004\u00ab\t\u00ab\u0004\u00ac\t",
+ "\u00ac\u0004\u00ad\t\u00ad\u0004\u00ae\t\u00ae\u0004\u00af\t\u00af\u0004",
+ "\u00b0\t\u00b0\u0004\u00b1\t\u00b1\u0004\u00b2\t\u00b2\u0004\u00b3\t",
+ "\u00b3\u0004\u00b4\t\u00b4\u0004\u00b5\t\u00b5\u0004\u00b6\t\u00b6\u0004",
+ "\u00b7\t\u00b7\u0004\u00b8\t\u00b8\u0004\u00b9\t\u00b9\u0004\u00ba\t",
+ "\u00ba\u0004\u00bb\t\u00bb\u0004\u00bc\t\u00bc\u0004\u00bd\t\u00bd\u0004",
+ "\u00be\t\u00be\u0004\u00bf\t\u00bf\u0004\u00c0\t\u00c0\u0004\u00c1\t",
+ "\u00c1\u0004\u00c2\t\u00c2\u0004\u00c3\t\u00c3\u0004\u00c4\t\u00c4\u0004",
+ "\u00c5\t\u00c5\u0004\u00c6\t\u00c6\u0004\u00c7\t\u00c7\u0004\u00c8\t",
+ "\u00c8\u0004\u00c9\t\u00c9\u0004\u00ca\t\u00ca\u0004\u00cb\t\u00cb\u0004",
+ "\u00cc\t\u00cc\u0004\u00cd\t\u00cd\u0004\u00ce\t\u00ce\u0004\u00cf\t",
+ "\u00cf\u0004\u00d0\t\u00d0\u0004\u00d1\t\u00d1\u0004\u00d2\t\u00d2\u0004",
+ "\u00d3\t\u00d3\u0004\u00d4\t\u00d4\u0004\u00d5\t\u00d5\u0004\u00d6\t",
+ "\u00d6\u0004\u00d7\t\u00d7\u0004\u00d8\t\u00d8\u0004\u00d9\t\u00d9\u0004",
+ "\u00da\t\u00da\u0004\u00db\t\u00db\u0004\u00dc\t\u00dc\u0004\u00dd\t",
+ "\u00dd\u0004\u00de\t\u00de\u0004\u00df\t\u00df\u0004\u00e0\t\u00e0\u0004",
+ "\u00e1\t\u00e1\u0004\u00e2\t\u00e2\u0004\u00e3\t\u00e3\u0004\u00e4\t",
+ "\u00e4\u0004\u00e5\t\u00e5\u0004\u00e6\t\u00e6\u0004\u00e7\t\u00e7\u0004",
+ "\u00e8\t\u00e8\u0004\u00e9\t\u00e9\u0004\u00ea\t\u00ea\u0004\u00eb\t",
+ "\u00eb\u0004\u00ec\t\u00ec\u0004\u00ed\t\u00ed\u0004\u00ee\t\u00ee\u0004",
+ "\u00ef\t\u00ef\u0004\u00f0\t\u00f0\u0004\u00f1\t\u00f1\u0004\u00f2\t",
+ "\u00f2\u0004\u00f3\t\u00f3\u0004\u00f4\t\u00f4\u0004\u00f5\t\u00f5\u0004",
+ "\u00f6\t\u00f6\u0004\u00f7\t\u00f7\u0004\u00f8\t\u00f8\u0004\u00f9\t",
+ "\u00f9\u0004\u00fa\t\u00fa\u0004\u00fb\t\u00fb\u0004\u00fc\t\u00fc\u0004",
+ "\u00fd\t\u00fd\u0004\u00fe\t\u00fe\u0004\u00ff\t\u00ff\u0004\u0100\t",
+ "\u0100\u0004\u0101\t\u0101\u0004\u0102\t\u0102\u0004\u0103\t\u0103\u0004",
+ "\u0104\t\u0104\u0004\u0105\t\u0105\u0004\u0106\t\u0106\u0004\u0107\t",
+ "\u0107\u0004\u0108\t\u0108\u0004\u0109\t\u0109\u0004\u010a\t\u010a\u0004",
+ "\u010b\t\u010b\u0004\u010c\t\u010c\u0004\u010d\t\u010d\u0004\u010e\t",
+ "\u010e\u0004\u010f\t\u010f\u0004\u0110\t\u0110\u0004\u0111\t\u0111\u0004",
+ "\u0112\t\u0112\u0004\u0113\t\u0113\u0004\u0114\t\u0114\u0004\u0115\t",
+ "\u0115\u0004\u0116\t\u0116\u0004\u0117\t\u0117\u0004\u0118\t\u0118\u0004",
+ "\u0119\t\u0119\u0004\u011a\t\u011a\u0004\u011b\t\u011b\u0004\u011c\t",
+ "\u011c\u0004\u011d\t\u011d\u0004\u011e\t\u011e\u0004\u011f\t\u011f\u0004",
+ "\u0120\t\u0120\u0004\u0121\t\u0121\u0004\u0122\t\u0122\u0004\u0123\t",
+ "\u0123\u0004\u0124\t\u0124\u0004\u0125\t\u0125\u0004\u0126\t\u0126\u0004",
+ "\u0127\t\u0127\u0004\u0128\t\u0128\u0004\u0129\t\u0129\u0004\u012a\t",
+ "\u012a\u0004\u012b\t\u012b\u0004\u012c\t\u012c\u0004\u012d\t\u012d\u0004",
+ "\u012e\t\u012e\u0004\u012f\t\u012f\u0004\u0130\t\u0130\u0004\u0131\t",
+ "\u0131\u0004\u0132\t\u0132\u0004\u0133\t\u0133\u0004\u0134\t\u0134\u0004",
+ "\u0135\t\u0135\u0004\u0136\t\u0136\u0004\u0137\t\u0137\u0004\u0138\t",
+ "\u0138\u0004\u0139\t\u0139\u0004\u013a\t\u013a\u0004\u013b\t\u013b\u0004",
+ "\u013c\t\u013c\u0004\u013d\t\u013d\u0003\u0002\u0003\u0002\u0003\u0002",
+ "\u0003\u0003\u0005\u0003\u027f\n\u0003\u0003\u0003\u0005\u0003\u0282",
+ "\n\u0003\u0003\u0003\u0003\u0003\u0003\u0004\u0003\u0004\u0005\u0004",
+ "\u0288\n\u0004\u0003\u0004\u0005\u0004\u028b\n\u0004\u0003\u0004\u0007",
+ "\u0004\u028e\n\u0004\f\u0004\u000e\u0004\u0291\u000b\u0004\u0003\u0004",
+ "\u0003\u0004\u0005\u0004\u0295\n\u0004\u0003\u0004\u0005\u0004\u0298",
+ "\n\u0004\u0003\u0004\u0005\u0004\u029b\n\u0004\u0003\u0005\u0003\u0005",
+ "\u0003\u0005\u0003\u0005\u0003\u0005\u0003\u0005\u0003\u0005\u0005\u0005",
+ "\u02a4\n\u0005\u0003\u0006\u0003\u0006\u0003\u0007\u0003\u0007\u0003",
+ "\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003",
+ "\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003",
+ "\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003",
+ "\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003",
+ "\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003",
+ "\u0007\u0003\u0007\u0003\u0007\u0005\u0007\u02cb\n\u0007\u0003\b\u0003",
+ "\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003\b\u0005",
+ "\b\u02d7\n\b\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t",
+ "\u0003\t\u0003\t\u0005\t\u02e2\n\t\u0003\n\u0003\n\u0003\n\u0003\n\u0003",
+ "\n\u0003\n\u0003\n\u0003\n\u0003\n\u0003\n\u0003\n\u0003\n\u0003\n\u0003",
+ "\n\u0003\n\u0005\n\u02f3\n\n\u0003\u000b\u0003\u000b\u0003\u000b\u0005",
+ "\u000b\u02f8\n\u000b\u0003\f\u0003\f\u0003\f\u0003\f\u0003\f\u0003\f",
+ "\u0003\f\u0003\f\u0003\f\u0003\f\u0005\f\u0304\n\f\u0003\r\u0003\r\u0003",
+ "\r\u0003\r\u0003\r\u0003\r\u0003\r\u0003\r\u0003\r\u0003\r\u0003\r\u0003",
+ "\r\u0003\r\u0003\r\u0003\r\u0003\r\u0003\r\u0003\r\u0003\r\u0003\r\u0003",
+ "\r\u0003\r\u0003\r\u0003\r\u0003\r\u0005\r\u031f\n\r\u0003\u000e\u0003",
+ "\u000e\u0003\u000e\u0003\u000e\u0003\u000e\u0003\u000e\u0003\u000e\u0005",
+ "\u000e\u0328\n\u000e\u0003\u000f\u0003\u000f\u0003\u000f\u0005\u000f",
+ "\u032d\n\u000f\u0003\u000f\u0003\u000f\u0007\u000f\u0331\n\u000f\f\u000f",
+ "\u000e\u000f\u0334\u000b\u000f\u0003\u0010\u0003\u0010\u0005\u0010\u0338",
+ "\n\u0010\u0003\u0010\u0003\u0010\u0005\u0010\u033c\n\u0010\u0003\u0010",
+ "\u0003\u0010\u0003\u0010\u0003\u0010\u0003\u0010\u0003\u0010\u0003\u0010",
+ "\u0005\u0010\u0345\n\u0010\u0003\u0010\u0005\u0010\u0348\n\u0010\u0003",
+ "\u0010\u0005\u0010\u034b\n\u0010\u0003\u0010\u0003\u0010\u0005\u0010",
+ "\u034f\n\u0010\u0003\u0010\u0003\u0010\u0003\u0010\u0003\u0011\u0003",
+ "\u0011\u0005\u0011\u0356\n\u0011\u0003\u0011\u0005\u0011\u0359\n\u0011",
+ "\u0003\u0011\u0003\u0011\u0003\u0011\u0005\u0011\u035e\n\u0011\u0003",
+ "\u0011\u0003\u0011\u0003\u0011\u0003\u0011\u0007\u0011\u0364\n\u0011",
+ "\f\u0011\u000e\u0011\u0367\u000b\u0011\u0003\u0011\u0003\u0011\u0005",
+ "\u0011\u036b\n\u0011\u0003\u0011\u0003\u0011\u0003\u0011\u0005\u0011",
+ "\u0370\n\u0011\u0003\u0011\u0007\u0011\u0373\n\u0011\f\u0011\u000e\u0011",
+ "\u0376\u000b\u0011\u0003\u0012\u0003\u0012\u0003\u0012\u0003\u0012\u0003",
+ "\u0012\u0003\u0012\u0003\u0012\u0003\u0012\u0003\u0012\u0005\u0012\u0381",
+ "\n\u0012\u0003\u0012\u0005\u0012\u0384\n\u0012\u0003\u0012\u0003\u0012",
+ "\u0005\u0012\u0388\n\u0012\u0003\u0012\u0005\u0012\u038b\n\u0012\u0003",
+ "\u0012\u0003\u0012\u0005\u0012\u038f\n\u0012\u0003\u0012\u0005\u0012",
+ "\u0392\n\u0012\u0003\u0012\u0003\u0012\u0005\u0012\u0396\n\u0012\u0003",
+ "\u0012\u0005\u0012\u0399\n\u0012\u0003\u0012\u0005\u0012\u039c\n\u0012",
+ "\u0003\u0012\u0003\u0012\u0005\u0012\u03a0\n\u0012\u0003\u0012\u0005",
+ "\u0012\u03a3\n\u0012\u0003\u0012\u0003\u0012\u0005\u0012\u03a7\n\u0012",
+ "\u0003\u0012\u0003\u0012\u0003\u0013\u0003\u0013\u0005\u0013\u03ad\n",
+ "\u0013\u0003\u0013\u0003\u0013\u0003\u0013\u0003\u0013\u0005\u0013\u03b3",
+ "\n\u0013\u0003\u0013\u0003\u0013\u0007\u0013\u03b7\n\u0013\f\u0013\u000e",
+ "\u0013\u03ba\u000b\u0013\u0003\u0013\u0003\u0013\u0007\u0013\u03be\n",
+ "\u0013\f\u0013\u000e\u0013\u03c1\u000b\u0013\u0003\u0013\u0003\u0013",
+ "\u0003\u0014\u0003\u0014\u0005\u0014\u03c7\n\u0014\u0003\u0014\u0003",
+ "\u0014\u0003\u0014\u0003\u0014\u0005\u0014\u03cd\n\u0014\u0003\u0014",
+ "\u0003\u0014\u0007\u0014\u03d1\n\u0014\f\u0014\u000e\u0014\u03d4\u000b",
+ "\u0014\u0003\u0014\u0003\u0014\u0003\u0014\u0003\u0014\u0007\u0014\u03da",
+ "\n\u0014\f\u0014\u000e\u0014\u03dd\u000b\u0014\u0003\u0014\u0003\u0014",
+ "\u0005\u0014\u03e1\n\u0014\u0003\u0015\u0003\u0015\u0003\u0015\u0003",
+ "\u0015\u0003\u0015\u0003\u0015\u0003\u0015\u0003\u0015\u0003\u0015\u0003",
+ "\u0015\u0003\u0015\u0003\u0015\u0007\u0015\u03ef\n\u0015\f\u0015\u000e",
+ "\u0015\u03f2\u000b\u0015\u0003\u0015\u0003\u0015\u0003\u0016\u0003\u0016",
+ "\u0005\u0016\u03f8\n\u0016\u0003\u0016\u0003\u0016\u0005\u0016\u03fc",
+ "\n\u0016\u0003\u0016\u0003\u0016\u0003\u0016\u0003\u0016\u0003\u0016",
+ "\u0003\u0016\u0003\u0016\u0003\u0016\u0005\u0016\u0406\n\u0016\u0003",
+ "\u0016\u0003\u0016\u0005\u0016\u040a\n\u0016\u0003\u0016\u0003\u0016",
+ "\u0005\u0016\u040e\n\u0016\u0003\u0016\u0003\u0016\u0005\u0016\u0412",
+ "\n\u0016\u0003\u0016\u0003\u0016\u0005\u0016\u0416\n\u0016\u0003\u0016",
+ "\u0007\u0016\u0419\n\u0016\f\u0016\u000e\u0016\u041c\u000b\u0016\u0005",
+ "\u0016\u041e\n\u0016\u0003\u0016\u0005\u0016\u0421\n\u0016\u0003\u0016",
+ "\u0005\u0016\u0424\n\u0016\u0003\u0016\u0005\u0016\u0427\n\u0016\u0003",
+ "\u0016\u0003\u0016\u0003\u0016\u0003\u0016\u0005\u0016\u042d\n\u0016",
+ "\u0003\u0016\u0003\u0016\u0005\u0016\u0431\n\u0016\u0003\u0016\u0003",
+ "\u0016\u0003\u0016\u0003\u0016\u0005\u0016\u0437\n\u0016\u0003\u0016",
+ "\u0007\u0016\u043a\n\u0016\f\u0016\u000e\u0016\u043d\u000b\u0016\u0005",
+ "\u0016\u043f\n\u0016\u0003\u0016\u0005\u0016\u0442\n\u0016\u0005\u0016",
+ "\u0444\n\u0016\u0003\u0017\u0003\u0017\u0003\u0017\u0003\u0017\u0003",
+ "\u0017\u0003\u0017\u0003\u0017\u0003\u0017\u0003\u0017\u0005\u0017\u044f",
+ "\n\u0017\u0003\u0017\u0003\u0017\u0005\u0017\u0453\n\u0017\u0003\u0017",
+ "\u0005\u0017\u0456\n\u0017\u0003\u0018\u0003\u0018\u0003\u0018\u0003",
+ "\u0018\u0003\u0018\u0003\u0018\u0003\u0018\u0003\u0018\u0003\u0018\u0003",
+ "\u0018\u0003\u0018\u0003\u0018\u0005\u0018\u0464\n\u0018\u0003\u0018",
+ "\u0005\u0018\u0467\n\u0018\u0003\u0018\u0003\u0018\u0005\u0018\u046b",
+ "\n\u0018\u0003\u0018\u0005\u0018\u046e\n\u0018\u0003\u0018\u0003\u0018",
+ "\u0005\u0018\u0472\n\u0018\u0003\u0018\u0005\u0018\u0475\n\u0018\u0003",
+ "\u0018\u0003\u0018\u0005\u0018\u0479\n\u0018\u0003\u0018\u0005\u0018",
+ "\u047c\n\u0018\u0003\u0018\u0003\u0018\u0005\u0018\u0480\n\u0018\u0003",
+ "\u0018\u0005\u0018\u0483\n\u0018\u0003\u0018\u0005\u0018\u0486\n\u0018",
+ "\u0003\u0018\u0003\u0018\u0005\u0018\u048a\n\u0018\u0003\u0018\u0005",
+ "\u0018\u048d\n\u0018\u0003\u0018\u0003\u0018\u0005\u0018\u0491\n\u0018",
+ "\u0003\u0018\u0003\u0018\u0003\u0019\u0003\u0019\u0005\u0019\u0497\n",
+ "\u0019\u0003\u0019\u0003\u0019\u0003\u0019\u0003\u0019\u0003\u0019\u0003",
+ "\u0019\u0003\u0019\u0003\u0019\u0003\u0019\u0003\u0019\u0003\u0019\u0005",
+ "\u0019\u04a4\n\u0019\u0003\u0019\u0003\u0019\u0003\u001a\u0003\u001a",
+ "\u0003\u001a\u0005\u001a\u04ab\n\u001a\u0003\u001a\u0003\u001a\u0003",
+ "\u001a\u0005\u001a\u04b0\n\u001a\u0003\u001a\u0005\u001a\u04b3\n\u001a",
+ "\u0003\u001a\u0003\u001a\u0003\u001a\u0005\u001a\u04b8\n\u001a\u0003",
+ "\u001a\u0003\u001a\u0003\u001a\u0003\u001a\u0003\u001a\u0003\u001a\u0005",
+ "\u001a\u04c0\n\u001a\u0003\u001a\u0003\u001a\u0003\u001a\u0003\u001a",
+ "\u0005\u001a\u04c6\n\u001a\u0003\u001a\u0003\u001a\u0005\u001a\u04ca",
+ "\n\u001a\u0003\u001b\u0005\u001b\u04cd\n\u001b\u0003\u001b\u0003\u001b",
+ "\u0003\u001b\u0005\u001b\u04d2\n\u001b\u0003\u001b\u0005\u001b\u04d5",
+ "\n\u001b\u0003\u001b\u0003\u001b\u0005\u001b\u04d9\n\u001b\u0003\u001b",
+ "\u0005\u001b\u04dc\n\u001b\u0003\u001b\u0003\u001b\u0005\u001b\u04e0",
+ "\n\u001b\u0003\u001b\u0005\u001b\u04e3\n\u001b\u0003\u001c\u0003\u001c",
+ "\u0003\u001c\u0003\u001c\u0003\u001c\u0003\u001c\u0005\u001c\u04eb\n",
+ "\u001c\u0005\u001c\u04ed\n\u001c\u0003\u001d\u0003\u001d\u0003\u001d",
+ "\u0007\u001d\u04f2\n\u001d\f\u001d\u000e\u001d\u04f5\u000b\u001d\u0003",
+ "\u001d\u0003\u001d\u0003\u001d\u0005\u001d\u04fa\n\u001d\u0003\u001d",
+ "\u0003\u001d\u0003\u001d\u0003\u001d\u0007\u001d\u0500\n\u001d\f\u001d",
+ "\u000e\u001d\u0503\u000b\u001d\u0005\u001d\u0505\n\u001d\u0003\u001d",
+ "\u0003\u001d\u0003\u001d\u0007\u001d\u050a\n\u001d\f\u001d\u000e\u001d",
+ "\u050d\u000b\u001d\u0005\u001d\u050f\n\u001d\u0005\u001d\u0511\n\u001d",
+ "\u0003\u001e\u0003\u001e\u0003\u001e\u0003\u001e\u0005\u001e\u0517\n",
+ "\u001e\u0003\u001f\u0003\u001f\u0003\u001f\u0003\u001f\u0005\u001f\u051d",
+ "\n\u001f\u0003\u001f\u0003\u001f\u0003 \u0003 \u0003 \u0003 \u0003 ",
+ "\u0003 \u0003 \u0003 \u0003 \u0003 \u0003 \u0003 \u0003 \u0005 \u052e",
+ "\n \u0003!\u0003!\u0003!\u0003!\u0003!\u0005!\u0535\n!\u0003\"\u0003",
+ "\"\u0003\"\u0003#\u0003#\u0005#\u053c\n#\u0003#\u0003#\u0003#\u0003",
+ "#\u0003#\u0003#\u0003#\u0003#\u0003#\u0005#\u0547\n#\u0003$\u0005$\u054a",
+ "\n$\u0003$\u0003$\u0003$\u0003%\u0003%\u0003%\u0003&\u0003&\u0003&\u0003",
+ "&\u0003&\u0005&\u0557\n&\u0003&\u0003&\u0003&\u0003&\u0003&\u0003&\u0003",
+ "&\u0003&\u0003&\u0003&\u0003&\u0005&\u0564\n&\u0003&\u0003&\u0003&\u0005",
+ "&\u0569\n&\u0003\'\u0003\'\u0003\'\u0003\'\u0003\'\u0003\'\u0003\'\u0003",
+ "\'\u0003\'\u0003\'\u0003\'\u0003\'\u0003\'\u0003\'\u0005\'\u0579\n\'",
+ "\u0003(\u0003(\u0003(\u0003(\u0007(\u057f\n(\f(\u000e(\u0582\u000b(",
+ "\u0003(\u0003(\u0003)\u0003)\u0003)\u0003)\u0003)\u0005)\u058b\n)\u0003",
+ "*\u0003*\u0007*\u058f\n*\f*\u000e*\u0592\u000b*\u0003+\u0003+\u0003",
+ "+\u0003+\u0003+\u0003+\u0003+\u0005+\u059b\n+\u0003+\u0005+\u059e\n",
+ "+\u0003+\u0003+\u0003+\u0005+\u05a3\n+\u0003+\u0003+\u0003+\u0003+\u0003",
+ "+\u0003+\u0003+\u0003+\u0003+\u0003+\u0003+\u0005+\u05b0\n+\u0003+\u0003",
+ "+\u0003+\u0003+\u0003+\u0005+\u05b7\n+\u0003+\u0003+\u0003+\u0003+\u0003",
+ "+\u0005+\u05be\n+\u0005+\u05c0\n+\u0003+\u0003+\u0003+\u0003+\u0003",
+ "+\u0005+\u05c7\n+\u0003,\u0003,\u0005,\u05cb\n,\u0005,\u05cd\n,\u0003",
+ ",\u0003,\u0003,\u0005,\u05d2\n,\u0003,\u0005,\u05d5\n,\u0003,\u0003",
+ ",\u0007,\u05d9\n,\f,\u000e,\u05dc\u000b,\u0003,\u0003,\u0005,\u05e0",
+ "\n,\u0005,\u05e2\n,\u0003,\u0003,\u0005,\u05e6\n,\u0003,\u0005,\u05e9",
+ "\n,\u0003,\u0005,\u05ec\n,\u0003,\u0003,\u0007,\u05f0\n,\f,\u000e,\u05f3",
+ "\u000b,\u0003,\u0003,\u0005,\u05f7\n,\u0005,\u05f9\n,\u0003,\u0003,",
+ "\u0003,\u0005,\u05fe\n,\u0003,\u0003,\u0003,\u0003,\u0003,\u0005,\u0605",
+ "\n,\u0005,\u0607\n,\u0003,\u0003,\u0003,\u0003,\u0003,\u0005,\u060e",
+ "\n,\u0003-\u0003-\u0003-\u0005-\u0613\n-\u0003-\u0003-\u0005-\u0617",
+ "\n-\u0003-\u0005-\u061a\n-\u0003.\u0003.\u0003.\u0003.\u0003.\u0003",
+ ".\u0005.\u0622\n.\u0003.\u0003.\u0003.\u0003.\u0003.\u0003.\u0005.\u062a",
+ "\n.\u0005.\u062c\n.\u0003/\u0003/\u0003/\u0003/\u0003/\u0003/\u0005",
+ "/\u0634\n/\u00030\u00030\u00050\u0638\n0\u00030\u00050\u063b\n0\u0003",
+ "0\u00030\u00070\u063f\n0\f0\u000e0\u0642\u000b0\u00030\u00030\u0005",
+ "0\u0646\n0\u00030\u00050\u0649\n0\u00030\u00030\u00070\u064d\n0\f0\u000e",
+ "0\u0650\u000b0\u00050\u0652\n0\u00031\u00031\u00051\u0656\n1\u00031",
+ "\u00031\u00031\u00051\u065b\n1\u00031\u00031\u00031\u00051\u0660\n1",
+ "\u00031\u00031\u00051\u0664\n1\u00031\u00031\u00031\u00051\u0669\n1",
+ "\u00031\u00051\u066c\n1\u00031\u00031\u00051\u0670\n1\u00031\u00031",
+ "\u00051\u0674\n1\u00031\u00031\u00051\u0678\n1\u00031\u00031\u00051",
+ "\u067c\n1\u00031\u00031\u00031\u00051\u0681\n1\u00031\u00031\u00031",
+ "\u00051\u0686\n1\u00031\u00031\u00031\u00051\u068b\n1\u00031\u00031",
+ "\u00031\u00031\u00051\u0691\n1\u00031\u00031\u00031\u00051\u0696\n1",
+ "\u00031\u00031\u00031\u00051\u069b\n1\u00031\u00031\u00031\u00031\u0005",
+ "1\u06a1\n1\u00031\u00031\u00031\u00051\u06a6\n1\u00031\u00031\u0003",
+ "1\u00051\u06ab\n1\u00031\u00031\u00031\u00051\u06b0\n1\u00031\u0003",
+ "1\u00031\u00051\u06b5\n1\u00031\u00031\u00031\u00051\u06ba\n1\u0003",
+ "1\u00031\u00031\u00051\u06bf\n1\u00031\u00031\u00031\u00051\u06c4\n",
+ "1\u00031\u00031\u00031\u00051\u06c9\n1\u00031\u00031\u00031\u00051\u06ce",
+ "\n1\u00031\u00031\u00031\u00051\u06d3\n1\u00031\u00031\u00031\u0003",
+ "1\u00051\u06d9\n1\u00031\u00031\u00031\u00051\u06de\n1\u00031\u0003",
+ "1\u00031\u00031\u00051\u06e4\n1\u00032\u00032\u00032\u00033\u00033\u0003",
+ "3\u00033\u00033\u00053\u06ee\n3\u00033\u00033\u00033\u00033\u00033\u0005",
+ "3\u06f5\n3\u00053\u06f7\n3\u00033\u00033\u00033\u00033\u00073\u06fd",
+ "\n3\f3\u000e3\u0700\u000b3\u00033\u00033\u00053\u0704\n3\u00034\u0005",
+ "4\u0707\n4\u00034\u00034\u00034\u00034\u00034\u00034\u00054\u070f\n",
+ "4\u00034\u00034\u00034\u00034\u00054\u0715\n4\u00034\u00034\u00034\u0003",
+ "4\u00034\u00034\u00034\u00034\u00034\u00034\u00034\u00034\u00034\u0003",
+ "4\u00054\u0725\n4\u00034\u00034\u00034\u00034\u00034\u00034\u00034\u0003",
+ "4\u00034\u00034\u00054\u0731\n4\u00054\u0733\n4\u00035\u00055\u0736",
+ "\n5\u00035\u00035\u00035\u00035\u00035\u00035\u00055\u073e\n5\u0003",
+ "5\u00035\u00035\u00035\u00055\u0744\n5\u00035\u00035\u00035\u00035\u0005",
+ "5\u074a\n5\u00036\u00036\u00036\u00036\u00036\u00036\u00036\u00036\u0003",
+ "6\u00076\u0755\n6\f6\u000e6\u0758\u000b6\u00036\u00036\u00076\u075c",
+ "\n6\f6\u000e6\u075f\u000b6\u00036\u00036\u00036\u00076\u0764\n6\f6\u000e",
+ "6\u0767\u000b6\u00056\u0769\n6\u00036\u00036\u00036\u00036\u00036\u0003",
+ "6\u00036\u00076\u0772\n6\f6\u000e6\u0775\u000b6\u00036\u00036\u0003",
+ "6\u00076\u077a\n6\f6\u000e6\u077d\u000b6\u00056\u077f\n6\u00036\u0003",
+ "6\u00036\u00036\u00036\u00036\u00036\u00036\u00076\u0789\n6\f6\u000e",
+ "6\u078c\u000b6\u00036\u00036\u00076\u0790\n6\f6\u000e6\u0793\u000b6",
+ "\u00036\u00036\u00036\u00076\u0798\n6\f6\u000e6\u079b\u000b6\u00056",
+ "\u079d\n6\u00036\u00036\u00036\u00036\u00036\u00036\u00036\u00036\u0007",
+ "6\u07a7\n6\f6\u000e6\u07aa\u000b6\u00036\u00036\u00076\u07ae\n6\f6\u000e",
+ "6\u07b1\u000b6\u00036\u00036\u00036\u00076\u07b6\n6\f6\u000e6\u07b9",
+ "\u000b6\u00056\u07bb\n6\u00036\u00036\u00036\u00076\u07c0\n6\f6\u000e",
+ "6\u07c3\u000b6\u00036\u00036\u00036\u00076\u07c8\n6\f6\u000e6\u07cb",
+ "\u000b6\u00056\u07cd\n6\u00056\u07cf\n6\u00037\u00037\u00037\u00057",
+ "\u07d4\n7\u00038\u00038\u00038\u00038\u00068\u07da\n8\r8\u000e8\u07db",
+ "\u00038\u00038\u00039\u00039\u00039\u00079\u07e3\n9\f9\u000e9\u07e6",
+ "\u000b9\u0003:\u0005:\u07e9\n:\u0003:\u0003:\u0005:\u07ed\n:\u0003:",
+ "\u0003:\u0003:\u0005:\u07f2\n:\u0003:\u0003:\u0003:\u0003:\u0005:\u07f8",
+ "\n:\u0003:\u0003:\u0003:\u0003:\u0005:\u07fe\n:\u0003:\u0003:\u0003",
+ ":\u0005:\u0803\n:\u0003:\u0003:\u0003:\u0005:\u0808\n:\u0003:\u0003",
+ ":\u0003:\u0005:\u080d\n:\u0003:\u0003:\u0003:\u0005:\u0812\n:\u0003",
+ ":\u0005:\u0815\n:\u0003;\u0003;\u0003;\u0005;\u081a\n;\u0003;\u0006",
+ ";\u081d\n;\r;\u000e;\u081e\u0003;\u0003;\u0003;\u0003;\u0003;\u0003",
+ ";\u0003;\u0003;\u0005;\u0829\n;\u0003<\u0003<\u0005<\u082d\n<\u0003",
+ "<\u0003<\u0003<\u0003<\u0003<\u0005<\u0834\n<\u0003<\u0003<\u0003<\u0005",
+ "<\u0839\n<\u0003<\u0005<\u083c\n<\u0003<\u0003<\u0003<\u0005<\u0841",
+ "\n<\u0003<\u0005<\u0844\n<\u0003<\u0003<\u0005<\u0848\n<\u0003<\u0003",
+ "<\u0005<\u084c\n<\u0003=\u0003=\u0003=\u0003=\u0007=\u0852\n=\f=\u000e",
+ "=\u0855\u000b=\u0003>\u0003>\u0003>\u0003>\u0003>\u0003>\u0003>\u0003",
+ "?\u0003?\u0003?\u0003?\u0003?\u0003?\u0003?\u0003?\u0003?\u0005?\u0867",
+ "\n?\u0003?\u0005?\u086a\n?\u0003?\u0005?\u086d\n?\u0003?\u0003?\u0005",
+ "?\u0871\n?\u0003?\u0003?\u0003@\u0003@\u0003@\u0003@\u0007@\u0879\n",
+ "@\f@\u000e@\u087c\u000b@\u0003A\u0003A\u0003A\u0003A\u0003A\u0003A\u0003",
+ "A\u0003A\u0007A\u0886\nA\fA\u000eA\u0889\u000bA\u0003A\u0003A\u0003",
+ "B\u0003B\u0005B\u088f\nB\u0003B\u0005B\u0892\nB\u0003B\u0003B\u0003",
+ "B\u0003B\u0003B\u0007B\u0899\nB\fB\u000eB\u089c\u000bB\u0005B\u089e",
+ "\nB\u0003B\u0005B\u08a1\nB\u0003C\u0003C\u0003C\u0003C\u0003C\u0003",
+ "C\u0003C\u0003C\u0003C\u0005C\u08ac\nC\u0003C\u0005C\u08af\nC\u0003",
+ "C\u0003C\u0005C\u08b3\nC\u0003C\u0003C\u0003D\u0003D\u0003D\u0003D\u0005",
+ "D\u08bb\nD\u0003D\u0005D\u08be\nD\u0003D\u0003D\u0003D\u0005D\u08c3",
+ "\nD\u0003D\u0003D\u0003D\u0003D\u0003D\u0003D\u0005D\u08cb\nD\u0003",
+ "D\u0003D\u0003D\u0003D\u0005D\u08d1\nD\u0003D\u0003D\u0005D\u08d5\n",
+ "D\u0003E\u0003E\u0005E\u08d9\nE\u0003E\u0007E\u08dc\nE\fE\u000eE\u08df",
+ "\u000bE\u0003E\u0003E\u0005E\u08e3\nE\u0003E\u0003E\u0003E\u0003E\u0003",
+ "E\u0005E\u08ea\nE\u0003E\u0003E\u0005E\u08ee\nE\u0003E\u0003E\u0003",
+ "E\u0003E\u0003E\u0003E\u0003E\u0007E\u08f7\nE\fE\u000eE\u08fa\u000b",
+ "E\u0003E\u0003E\u0003E\u0003E\u0003E\u0005E\u0901\nE\u0003E\u0005E\u0904",
+ "\nE\u0003E\u0003E\u0007E\u0908\nE\fE\u000eE\u090b\u000bE\u0003E\u0003",
+ "E\u0003E\u0005E\u0910\nE\u0005E\u0912\nE\u0003E\u0003E\u0003E\u0005",
+ "E\u0917\nE\u0003E\u0005E\u091a\nE\u0003E\u0003E\u0007E\u091e\nE\fE\u000e",
+ "E\u0921\u000bE\u0003E\u0003E\u0003E\u0005E\u0926\nE\u0005E\u0928\nE",
+ "\u0003E\u0003E\u0005E\u092c\nE\u0003E\u0005E\u092f\nE\u0003E\u0005E",
+ "\u0932\nE\u0003E\u0003E\u0007E\u0936\nE\fE\u000eE\u0939\u000bE\u0003",
+ "E\u0003E\u0003E\u0005E\u093e\nE\u0003E\u0005E\u0941\nE\u0003E\u0003",
+ "E\u0007E\u0945\nE\fE\u000eE\u0948\u000bE\u0003E\u0003E\u0003E\u0005",
+ "E\u094d\nE\u0005E\u094f\nE\u0003E\u0003E\u0003E\u0005E\u0954\nE\u0003",
+ "E\u0003E\u0003E\u0003E\u0003E\u0003E\u0005E\u095c\nE\u0005E\u095e\n",
+ "E\u0003E\u0003E\u0003E\u0003E\u0003E\u0003E\u0003E\u0005E\u0967\nE\u0003",
+ "E\u0003E\u0003E\u0005E\u096c\nE\u0003E\u0003E\u0003E\u0003E\u0003E\u0003",
+ "E\u0005E\u0974\nE\u0003E\u0003E\u0005E\u0978\nE\u0003E\u0003E\u0003",
+ "E\u0003E\u0003E\u0003E\u0005E\u0980\nE\u0003E\u0003E\u0003E\u0003E\u0003",
+ "E\u0003E\u0003E\u0003E\u0005E\u098a\nE\u0003E\u0003E\u0003E\u0005E\u098f",
+ "\nE\u0003E\u0003E\u0003E\u0003E\u0003E\u0005E\u0996\nE\u0003E\u0003",
+ "E\u0005E\u099a\nE\u0003E\u0003E\u0005E\u099e\nE\u0003E\u0003E\u0003",
+ "E\u0003E\u0003E\u0003E\u0003E\u0003E\u0003E\u0003E\u0003E\u0003E\u0003",
+ "E\u0003E\u0003E\u0003E\u0003E\u0003E\u0003E\u0003E\u0003E\u0003E\u0003",
+ "E\u0003E\u0003E\u0003E\u0003E\u0005E\u09bb\nE\u0003E\u0003E\u0005E\u09bf",
+ "\nE\u0003E\u0003E\u0003E\u0003E\u0003E\u0003E\u0003E\u0003E\u0003E\u0003",
+ "E\u0005E\u09cb\nE\u0003E\u0005E\u09ce\nE\u0003E\u0003E\u0003E\u0003",
+ "E\u0003E\u0003E\u0003E\u0005E\u09d7\nE\u0003E\u0003E\u0003E\u0003E\u0003",
+ "E\u0003E\u0003E\u0003E\u0003E\u0003E\u0003E\u0003E\u0003E\u0007E\u09e6",
+ "\nE\fE\u000eE\u09e9\u000bE\u0003E\u0003E\u0003E\u0003E\u0003E\u0003",
+ "E\u0003E\u0003E\u0003E\u0005E\u09f4\nE\u0003E\u0003E\u0003E\u0003E\u0003",
+ "E\u0005E\u09fb\nE\u0003E\u0003E\u0003E\u0003E\u0003E\u0005E\u0a02\n",
+ "E\u0003E\u0003E\u0003E\u0003E\u0003E\u0003E\u0003E\u0003E\u0003E\u0003",
+ "E\u0003E\u0007E\u0a0f\nE\fE\u000eE\u0a12\u000bE\u0003E\u0003E\u0003",
+ "E\u0003E\u0003E\u0003E\u0003E\u0003E\u0003E\u0003E\u0005E\u0a1e\nE\u0003",
+ "E\u0003E\u0003E\u0003E\u0005E\u0a24\nE\u0003E\u0003E\u0003E\u0003E\u0005",
+ "E\u0a2a\nE\u0003E\u0003E\u0003E\u0003E\u0005E\u0a30\nE\u0003E\u0003",
+ "E\u0003E\u0003E\u0005E\u0a36\nE\u0003E\u0003E\u0003E\u0003E\u0005E\u0a3c",
+ "\nE\u0003E\u0003E\u0003E\u0003E\u0005E\u0a42\nE\u0003F\u0003F\u0003",
+ "F\u0005F\u0a47\nF\u0003F\u0003F\u0003G\u0003G\u0003G\u0005G\u0a4e\n",
+ "G\u0003G\u0003G\u0003H\u0003H\u0003H\u0005H\u0a55\nH\u0003H\u0003H\u0003",
+ "H\u0003H\u0003H\u0005H\u0a5c\nH\u0003H\u0003H\u0003H\u0005H\u0a61\n",
+ "H\u0003H\u0007H\u0a64\nH\fH\u000eH\u0a67\u000bH\u0003I\u0003I\u0003",
+ "I\u0003I\u0003I\u0003I\u0003I\u0003I\u0003J\u0003J\u0003J\u0005J\u0a74",
+ "\nJ\u0003J\u0003J\u0003K\u0003K\u0003K\u0005K\u0a7b\nK\u0003K\u0003",
+ "K\u0003L\u0003L\u0003L\u0005L\u0a82\nL\u0003L\u0003L\u0003M\u0003M\u0005",
+ "M\u0a88\nM\u0003M\u0003M\u0005M\u0a8c\nM\u0003M\u0003M\u0005M\u0a90",
+ "\nM\u0003N\u0003N\u0003N\u0003N\u0003N\u0005N\u0a97\nN\u0003N\u0005",
+ "N\u0a9a\nN\u0003O\u0003O\u0003O\u0005O\u0a9f\nO\u0003O\u0003O\u0003",
+ "P\u0003P\u0003P\u0005P\u0aa6\nP\u0003P\u0003P\u0003P\u0007P\u0aab\n",
+ "P\fP\u000eP\u0aae\u000bP\u0003P\u0005P\u0ab1\nP\u0003Q\u0003Q\u0003",
+ "Q\u0003Q\u0003Q\u0007Q\u0ab8\nQ\fQ\u000eQ\u0abb\u000bQ\u0003R\u0003",
+ "R\u0003R\u0003R\u0003S\u0003S\u0005S\u0ac3\nS\u0003S\u0003S\u0003T\u0003",
+ "T\u0003T\u0003T\u0003T\u0005T\u0acc\nT\u0003T\u0005T\u0acf\nT\u0003",
+ "U\u0003U\u0005U\u0ad3\nU\u0003V\u0003V\u0003V\u0003W\u0003W\u0003W\u0003",
+ "W\u0005W\u0adc\nW\u0003X\u0003X\u0005X\u0ae0\nX\u0003X\u0005X\u0ae3",
+ "\nX\u0003X\u0005X\u0ae6\nX\u0003X\u0003X\u0003X\u0003X\u0005X\u0aec",
+ "\nX\u0003X\u0005X\u0aef\nX\u0003X\u0003X\u0003X\u0003X\u0005X\u0af5",
+ "\nX\u0003X\u0003X\u0003X\u0003X\u0003X\u0007X\u0afc\nX\fX\u000eX\u0aff",
+ "\u000bX\u0005X\u0b01\nX\u0003X\u0003X\u0003X\u0003X\u0003X\u0003X\u0003",
+ "X\u0007X\u0b0a\nX\fX\u000eX\u0b0d\u000bX\u0005X\u0b0f\nX\u0003Y\u0003",
+ "Y\u0003Y\u0005Y\u0b14\nY\u0003Y\u0005Y\u0b17\nY\u0003Y\u0003Y\u0003",
+ "Y\u0005Y\u0b1c\nY\u0003Y\u0003Y\u0003Y\u0003Y\u0003Y\u0003Y\u0003Y\u0003",
+ "Y\u0005Y\u0b26\nY\u0003Y\u0003Y\u0003Y\u0005Y\u0b2b\nY\u0003Y\u0003",
+ "Y\u0006Y\u0b2f\nY\rY\u000eY\u0b30\u0005Y\u0b33\nY\u0003Y\u0003Y\u0006",
+ "Y\u0b37\nY\rY\u000eY\u0b38\u0005Y\u0b3b\nY\u0003Y\u0003Y\u0003Y\u0003",
+ "Y\u0005Y\u0b41\nY\u0003Y\u0003Y\u0003Y\u0003Y\u0007Y\u0b47\nY\fY\u000e",
+ "Y\u0b4a\u000bY\u0003Y\u0003Y\u0005Y\u0b4e\nY\u0003Y\u0003Y\u0003Y\u0003",
+ "Y\u0007Y\u0b54\nY\fY\u000eY\u0b57\u000bY\u0005Y\u0b59\nY\u0003Z\u0003",
+ "Z\u0003Z\u0005Z\u0b5e\nZ\u0003Z\u0005Z\u0b61\nZ\u0003Z\u0003Z\u0003",
+ "Z\u0005Z\u0b66\nZ\u0003Z\u0003Z\u0003Z\u0003Z\u0003Z\u0003Z\u0005Z\u0b6e",
+ "\nZ\u0003Z\u0003Z\u0003Z\u0003Z\u0003Z\u0003Z\u0005Z\u0b76\nZ\u0003",
+ "Z\u0003Z\u0003Z\u0003Z\u0005Z\u0b7c\nZ\u0003Z\u0003Z\u0003Z\u0003Z\u0007",
+ "Z\u0b82\nZ\fZ\u000eZ\u0b85\u000bZ\u0003Z\u0003Z\u0005Z\u0b89\nZ\u0003",
+ "Z\u0003Z\u0003Z\u0003Z\u0007Z\u0b8f\nZ\fZ\u000eZ\u0b92\u000bZ\u0005",
+ "Z\u0b94\nZ\u0003[\u0003[\u0005[\u0b98\n[\u0003[\u0005[\u0b9b\n[\u0003",
+ "[\u0003[\u0003[\u0003[\u0003[\u0003[\u0005[\u0ba3\n[\u0003[\u0003[\u0003",
+ "[\u0003[\u0005[\u0ba9\n[\u0003[\u0003[\u0003[\u0003[\u0003[\u0007[\u0bb0",
+ "\n[\f[\u000e[\u0bb3\u000b[\u0005[\u0bb5\n[\u0003\\\u0003\\\u0005\\\u0bb9",
+ "\n\\\u0003\\\u0003\\\u0005\\\u0bbd\n\\\u0003\\\u0003\\\u0006\\\u0bc1",
+ "\n\\\r\\\u000e\\\u0bc2\u0003\\\u0003\\\u0005\\\u0bc7\n\\\u0003\\\u0003",
+ "\\\u0005\\\u0bcb\n\\\u0005\\\u0bcd\n\\\u0003\\\u0005\\\u0bd0\n\\\u0003",
+ "\\\u0005\\\u0bd3\n\\\u0003\\\u0005\\\u0bd6\n\\\u0003\\\u0003\\\u0006",
+ "\\\u0bda\n\\\r\\\u000e\\\u0bdb\u0003\\\u0003\\\u0005\\\u0be0\n\\\u0003",
+ "\\\u0005\\\u0be3\n\\\u0003\\\u0005\\\u0be6\n\\\u0003\\\u0005\\\u0be9",
+ "\n\\\u0003\\\u0005\\\u0bec\n\\\u0005\\\u0bee\n\\\u0003]\u0003]\u0005",
+ "]\u0bf2\n]\u0003^\u0003^\u0003^\u0003^\u0005^\u0bf8\n^\u0003^\u0003",
+ "^\u0003^\u0003^\u0005^\u0bfe\n^\u0003^\u0007^\u0c01\n^\f^\u000e^\u0c04",
+ "\u000b^\u0005^\u0c06\n^\u0003_\u0003_\u0003_\u0003_\u0005_\u0c0c\n_",
+ "\u0003`\u0003`\u0005`\u0c10\n`\u0003a\u0003a\u0003a\u0003a\u0003a\u0003",
+ "a\u0005a\u0c18\na\u0003b\u0003b\u0005b\u0c1c\nb\u0003b\u0005b\u0c1f",
+ "\nb\u0003b\u0005b\u0c22\nb\u0003b\u0003b\u0003b\u0003b\u0003b\u0003",
+ "b\u0003b\u0005b\u0c2b\nb\u0003b\u0003b\u0005b\u0c2f\nb\u0003b\u0005",
+ "b\u0c32\nb\u0003b\u0003b\u0005b\u0c36\nb\u0003c\u0003c\u0005c\u0c3a",
+ "\nc\u0003c\u0005c\u0c3d\nc\u0003c\u0005c\u0c40\nc\u0003c\u0003c\u0003",
+ "c\u0005c\u0c45\nc\u0003c\u0003c\u0003c\u0003c\u0005c\u0c4b\nc\u0007",
+ "c\u0c4d\nc\fc\u000ec\u0c50\u000bc\u0003c\u0003c\u0003c\u0003c\u0003",
+ "c\u0003c\u0003c\u0005c\u0c59\nc\u0003c\u0003c\u0003c\u0003c\u0005c\u0c5f",
+ "\nc\u0007c\u0c61\nc\fc\u000ec\u0c64\u000bc\u0003c\u0003c\u0003c\u0005",
+ "c\u0c69\nc\u0003c\u0003c\u0005c\u0c6d\nc\u0003d\u0003d\u0003d\u0003",
+ "d\u0005d\u0c73\nd\u0003d\u0005d\u0c76\nd\u0003e\u0003e\u0003e\u0003",
+ "e\u0003e\u0003e\u0003e\u0003e\u0003e\u0003e\u0005e\u0c82\ne\u0003e\u0003",
+ "e\u0005e\u0c86\ne\u0003e\u0003e\u0005e\u0c8a\ne\u0003f\u0003f\u0003",
+ "f\u0003f\u0003f\u0003f\u0005f\u0c92\nf\u0003f\u0003f\u0005f\u0c96\n",
+ "f\u0003g\u0003g\u0003g\u0003g\u0003h\u0003h\u0005h\u0c9e\nh\u0003h\u0005",
+ "h\u0ca1\nh\u0003h\u0003h\u0005h\u0ca5\nh\u0003h\u0005h\u0ca8\nh\u0003",
+ "h\u0003h\u0003h\u0003h\u0007h\u0cae\nh\fh\u000eh\u0cb1\u000bh\u0003",
+ "h\u0003h\u0005h\u0cb5\nh\u0003h\u0005h\u0cb8\nh\u0003h\u0005h\u0cbb",
+ "\nh\u0003i\u0003i\u0005i\u0cbf\ni\u0003i\u0005i\u0cc2\ni\u0003i\u0003",
+ "i\u0003i\u0003i\u0003i\u0007i\u0cc9\ni\fi\u000ei\u0ccc\u000bi\u0003",
+ "i\u0003i\u0005i\u0cd0\ni\u0003j\u0003j\u0003j\u0003j\u0003j\u0007j\u0cd7",
+ "\nj\fj\u000ej\u0cda\u000bj\u0003k\u0003k\u0005k\u0cde\nk\u0003l\u0003",
+ "l\u0003l\u0007l\u0ce3\nl\fl\u000el\u0ce6\u000bl\u0003m\u0003m\u0007",
+ "m\u0cea\nm\fm\u000em\u0ced\u000bm\u0003m\u0003m\u0003m\u0007m\u0cf2",
+ "\nm\fm\u000em\u0cf5\u000bm\u0003m\u0003m\u0005m\u0cf9\nm\u0003n\u0003",
+ "n\u0003n\u0003n\u0003n\u0003n\u0005n\u0d01\nn\u0003n\u0005n\u0d04\n",
+ "n\u0003n\u0005n\u0d07\nn\u0003n\u0003n\u0003n\u0007n\u0d0c\nn\fn\u000e",
+ "n\u0d0f\u000bn\u0005n\u0d11\nn\u0003n\u0003n\u0003n\u0003n\u0003n\u0005",
+ "n\u0d18\nn\u0003n\u0005n\u0d1b\nn\u0003n\u0003n\u0003n\u0003n\u0003",
+ "n\u0003n\u0005n\u0d23\nn\u0003o\u0003o\u0003o\u0003o\u0005o\u0d29\n",
+ "o\u0003o\u0003o\u0003o\u0003o\u0003p\u0003p\u0003p\u0003p\u0003p\u0005",
+ "p\u0d34\np\u0003q\u0005q\u0d37\nq\u0003q\u0003q\u0003q\u0003q\u0003",
+ "q\u0003q\u0003q\u0003q\u0003q\u0005q\u0d42\nq\u0003q\u0003q\u0003q\u0003",
+ "q\u0005q\u0d48\nq\u0003q\u0003q\u0005q\u0d4c\nq\u0003q\u0003q\u0003",
+ "q\u0003q\u0003q\u0003q\u0003q\u0003q\u0003q\u0005q\u0d57\nq\u0003q\u0003",
+ "q\u0003q\u0005q\u0d5c\nq\u0005q\u0d5e\nq\u0003q\u0003q\u0005q\u0d62",
+ "\nq\u0003r\u0003r\u0003r\u0003r\u0003r\u0003r\u0003r\u0003r\u0005r\u0d6c",
+ "\nr\u0003s\u0003s\u0003s\u0003s\u0003s\u0003s\u0003s\u0003s\u0005s\u0d76",
+ "\ns\u0003t\u0003t\u0007t\u0d7a\nt\ft\u000et\u0d7d\u000bt\u0003t\u0003",
+ "t\u0005t\u0d81\nt\u0003t\u0005t\u0d84\nt\u0003t\u0005t\u0d87\nt\u0003",
+ "t\u0005t\u0d8a\nt\u0003t\u0003t\u0007t\u0d8e\nt\ft\u000et\u0d91\u000b",
+ "t\u0003t\u0003t\u0005t\u0d95\nt\u0003t\u0005t\u0d98\nt\u0003t\u0005",
+ "t\u0d9b\nt\u0003t\u0005t\u0d9e\nt\u0005t\u0da0\nt\u0003u\u0003u\u0007",
+ "u\u0da4\nu\fu\u000eu\u0da7\u000bu\u0003u\u0003u\u0005u\u0dab\nu\u0003",
+ "u\u0005u\u0dae\nu\u0003u\u0005u\u0db1\nu\u0003v\u0003v\u0005v\u0db5",
+ "\nv\u0003v\u0003v\u0003w\u0003w\u0005w\u0dbb\nw\u0003w\u0003w\u0005",
+ "w\u0dbf\nw\u0003x\u0003x\u0003x\u0003x\u0003x\u0003x\u0003x\u0003x\u0005",
+ "x\u0dc9\nx\u0003y\u0003y\u0005y\u0dcd\ny\u0003y\u0003y\u0007y\u0dd1",
+ "\ny\fy\u000ey\u0dd4\u000by\u0003z\u0003z\u0003z\u0003z\u0003z\u0003",
+ "z\u0005z\u0ddc\nz\u0003z\u0005z\u0ddf\nz\u0003z\u0003z\u0005z\u0de3",
+ "\nz\u0003z\u0005z\u0de6\nz\u0003z\u0003z\u0005z\u0dea\nz\u0003z\u0003",
+ "z\u0005z\u0dee\nz\u0003z\u0005z\u0df1\nz\u0005z\u0df3\nz\u0003{\u0003",
+ "{\u0003{\u0003{\u0007{\u0df9\n{\f{\u000e{\u0dfc\u000b{\u0003{\u0003",
+ "{\u0003{\u0003{\u0003{\u0003{\u0003{\u0003{\u0003{\u0005{\u0e07\n{\u0003",
+ "{\u0003{\u0006{\u0e0b\n{\r{\u000e{\u0e0c\u0005{\u0e0f\n{\u0003{\u0003",
+ "{\u0006{\u0e13\n{\r{\u000e{\u0e14\u0005{\u0e17\n{\u0005{\u0e19\n{\u0003",
+ "|\u0003|\u0003|\u0003|\u0005|\u0e1f\n|\u0003|\u0003|\u0003|\u0003|\u0003",
+ "|\u0003|\u0005|\u0e27\n|\u0003}\u0003}\u0003}\u0003}\u0003}\u0003}\u0005",
+ "}\u0e2f\n}\u0003~\u0003~\u0003~\u0003~\u0005~\u0e35\n~\u0003~\u0003",
+ "~\u0003~\u0003~\u0003~\u0007~\u0e3c\n~\f~\u000e~\u0e3f\u000b~\u0003",
+ "~\u0003~\u0005~\u0e43\n~\u0005~\u0e45\n~\u0003~\u0003~\u0005~\u0e49",
+ "\n~\u0003\u007f\u0003\u007f\u0005\u007f\u0e4d\n\u007f\u0003\u0080\u0003",
+ "\u0080\u0003\u0080\u0003\u0080\u0005\u0080\u0e53\n\u0080\u0003\u0080",
+ "\u0003\u0080\u0003\u0080\u0003\u0080\u0003\u0080\u0005\u0080\u0e5a\n",
+ "\u0080\u0003\u0081\u0003\u0081\u0005\u0081\u0e5e\n\u0081\u0003\u0082",
+ "\u0003\u0082\u0003\u0082\u0003\u0082\u0003\u0082\u0007\u0082\u0e65\n",
+ "\u0082\f\u0082\u000e\u0082\u0e68\u000b\u0082\u0005\u0082\u0e6a\n\u0082",
+ "\u0003\u0083\u0003\u0083\u0005\u0083\u0e6e\n\u0083\u0003\u0084\u0003",
+ "\u0084\u0005\u0084\u0e72\n\u0084\u0003\u0084\u0003\u0084\u0005\u0084",
+ "\u0e76\n\u0084\u0003\u0084\u0005\u0084\u0e79\n\u0084\u0003\u0084\u0005",
+ "\u0084\u0e7c\n\u0084\u0003\u0084\u0005\u0084\u0e7f\n\u0084\u0003\u0085",
+ "\u0003\u0085\u0005\u0085\u0e83\n\u0085\u0003\u0085\u0003\u0085\u0005",
+ "\u0085\u0e87\n\u0085\u0003\u0085\u0005\u0085\u0e8a\n\u0085\u0003\u0085",
+ "\u0005\u0085\u0e8d\n\u0085\u0003\u0085\u0005\u0085\u0e90\n\u0085\u0003",
+ "\u0086\u0003\u0086\u0003\u0086\u0003\u0087\u0003\u0087\u0005\u0087\u0e97",
+ "\n\u0087\u0003\u0087\u0003\u0087\u0005\u0087\u0e9b\n\u0087\u0003\u0087",
+ "\u0003\u0087\u0003\u0088\u0003\u0088\u0003\u0088\u0003\u0088\u0003\u0089",
+ "\u0003\u0089\u0003\u0089\u0003\u0089\u0003\u0089\u0007\u0089\u0ea8\n",
+ "\u0089\f\u0089\u000e\u0089\u0eab\u000b\u0089\u0003\u008a\u0003\u008a",
+ "\u0003\u008a\u0003\u008b\u0003\u008b\u0003\u008b\u0003\u008b\u0003\u008b",
+ "\u0003\u008c\u0003\u008c\u0005\u008c\u0eb7\n\u008c\u0003\u008c\u0003",
+ "\u008c\u0003\u008c\u0003\u008c\u0007\u008c\u0ebd\n\u008c\f\u008c\u000e",
+ "\u008c\u0ec0\u000b\u008c\u0003\u008d\u0003\u008d\u0003\u008d\u0003\u008d",
+ "\u0003\u008d\u0003\u008d\u0003\u008d\u0005\u008d\u0ec9\n\u008d\u0003",
+ "\u008e\u0003\u008e\u0005\u008e\u0ecd\n\u008e\u0003\u008e\u0005\u008e",
+ "\u0ed0\n\u008e\u0003\u008e\u0003\u008e\u0003\u008f\u0003\u008f\u0005",
+ "\u008f\u0ed6\n\u008f\u0003\u008f\u0005\u008f\u0ed9\n\u008f\u0003\u008f",
+ "\u0005\u008f\u0edc\n\u008f\u0003\u0090\u0003\u0090\u0003\u0090\u0003",
+ "\u0090\u0003\u0090\u0003\u0090\u0003\u0090\u0005\u0090\u0ee5\n\u0090",
+ "\u0003\u0091\u0003\u0091\u0003\u0091\u0003\u0091\u0003\u0091\u0003\u0091",
+ "\u0003\u0091\u0005\u0091\u0eee\n\u0091\u0003\u0092\u0003\u0092\u0003",
+ "\u0092\u0003\u0092\u0003\u0092\u0003\u0092\u0007\u0092\u0ef6\n\u0092",
+ "\f\u0092\u000e\u0092\u0ef9\u000b\u0092\u0003\u0092\u0005\u0092\u0efc",
+ "\n\u0092\u0003\u0093\u0003\u0093\u0003\u0093\u0003\u0093\u0003\u0093",
+ "\u0003\u0093\u0007\u0093\u0f04\n\u0093\f\u0093\u000e\u0093\u0f07\u000b",
+ "\u0093\u0003\u0094\u0003\u0094\u0003\u0094\u0003\u0094\u0003\u0094\u0003",
+ "\u0094\u0003\u0094\u0005\u0094\u0f10\n\u0094\u0003\u0095\u0003\u0095",
+ "\u0003\u0095\u0003\u0096\u0003\u0096\u0003\u0096\u0005\u0096\u0f18\n",
+ "\u0096\u0003\u0096\u0005\u0096\u0f1b\n\u0096\u0003\u0097\u0003\u0097",
+ "\u0003\u0097\u0003\u0097\u0003\u0097\u0007\u0097\u0f22\n\u0097\f\u0097",
+ "\u000e\u0097\u0f25\u000b\u0097\u0005\u0097\u0f27\n\u0097\u0003\u0097",
+ "\u0003\u0097\u0005\u0097\u0f2b\n\u0097\u0003\u0097\u0007\u0097\u0f2e",
+ "\n\u0097\f\u0097\u000e\u0097\u0f31\u000b\u0097\u0003\u0097\u0005\u0097",
+ "\u0f34\n\u0097\u0003\u0098\u0003\u0098\u0003\u0098\u0003\u0098\u0003",
+ "\u0098\u0007\u0098\u0f3b\n\u0098\f\u0098\u000e\u0098\u0f3e\u000b\u0098",
+ "\u0005\u0098\u0f40\n\u0098\u0003\u0099\u0003\u0099\u0003\u0099\u0003",
+ "\u009a\u0003\u009a\u0003\u009a\u0003\u009b\u0003\u009b\u0003\u009b\u0003",
+ "\u009b\u0003\u009b\u0003\u009b\u0003\u009b\u0003\u009b\u0003\u009b\u0003",
+ "\u009b\u0003\u009b\u0003\u009b\u0003\u009b\u0003\u009b\u0003\u009b\u0003",
+ "\u009b\u0003\u009b\u0003\u009b\u0003\u009b\u0003\u009b\u0003\u009b\u0007",
+ "\u009b\u0f5d\n\u009b\f\u009b\u000e\u009b\u0f60\u000b\u009b\u0005\u009b",
+ "\u0f62\n\u009b\u0003\u009b\u0005\u009b\u0f65\n\u009b\u0003\u009c\u0003",
+ "\u009c\u0003\u009d\u0003\u009d\u0003\u009e\u0003\u009e\u0003\u009f\u0003",
+ "\u009f\u0003\u009f\u0003\u009f\u0003\u00a0\u0003\u00a0\u0003\u00a0\u0003",
+ "\u00a0\u0003\u00a0\u0003\u00a0\u0003\u00a0\u0003\u00a0\u0003\u00a0\u0003",
+ "\u00a0\u0003\u00a0\u0003\u00a0\u0003\u00a0\u0003\u00a0\u0003\u00a0\u0003",
+ "\u00a0\u0003\u00a0\u0003\u00a0\u0003\u00a0\u0003\u00a0\u0003\u00a0\u0003",
+ "\u00a0\u0003\u00a0\u0003\u00a0\u0003\u00a0\u0003\u00a0\u0003\u00a0\u0003",
+ "\u00a0\u0003\u00a0\u0003\u00a0\u0003\u00a0\u0003\u00a0\u0003\u00a0\u0003",
+ "\u00a0\u0003\u00a0\u0003\u00a0\u0003\u00a0\u0003\u00a0\u0003\u00a0\u0003",
+ "\u00a0\u0003\u00a0\u0003\u00a0\u0007\u00a0\u0f9b\n\u00a0\f\u00a0\u000e",
+ "\u00a0\u0f9e\u000b\u00a0\u0003\u00a0\u0003\u00a0\u0005\u00a0\u0fa2\n",
+ "\u00a0\u0003\u00a1\u0003\u00a1\u0003\u00a1\u0003\u00a1\u0003\u00a1\u0003",
+ "\u00a1\u0003\u00a2\u0003\u00a2\u0003\u00a3\u0003\u00a3\u0003\u00a3\u0003",
+ "\u00a3\u0003\u00a3\u0003\u00a3\u0003\u00a3\u0003\u00a3\u0003\u00a3\u0003",
+ "\u00a3\u0003\u00a3\u0003\u00a3\u0003\u00a3\u0003\u00a3\u0003\u00a3\u0003",
+ "\u00a3\u0003\u00a3\u0003\u00a3\u0005\u00a3\u0fbe\n\u00a3\u0003\u00a4",
+ "\u0003\u00a4\u0003\u00a4\u0003\u00a4\u0003\u00a4\u0003\u00a4\u0003\u00a4",
+ "\u0003\u00a4\u0003\u00a4\u0003\u00a4\u0003\u00a4\u0003\u00a4\u0005\u00a4",
+ "\u0fcc\n\u00a4\u0003\u00a5\u0003\u00a5\u0003\u00a5\u0007\u00a5\u0fd1",
+ "\n\u00a5\f\u00a5\u000e\u00a5\u0fd4\u000b\u00a5\u0003\u00a5\u0005\u00a5",
+ "\u0fd7\n\u00a5\u0003\u00a6\u0003\u00a6\u0003\u00a6\u0003\u00a6\u0005",
+ "\u00a6\u0fdd\n\u00a6\u0003\u00a7\u0003\u00a7\u0003\u00a7\u0003\u00a7",
+ "\u0003\u00a7\u0003\u00a7\u0005\u00a7\u0fe5\n\u00a7\u0005\u00a7\u0fe7",
+ "\n\u00a7\u0003\u00a8\u0003\u00a8\u0003\u00a8\u0003\u00a8\u0003\u00a9",
+ "\u0003\u00a9\u0003\u00a9\u0003\u00a9\u0003\u00a9\u0005\u00a9\u0ff2\n",
+ "\u00a9\u0003\u00aa\u0003\u00aa\u0003\u00aa\u0003\u00aa\u0003\u00ab\u0003",
+ "\u00ab\u0003\u00ab\u0003\u00ab\u0005\u00ab\u0ffc\n\u00ab\u0003\u00ac",
+ "\u0003\u00ac\u0003\u00ac\u0003\u00ac\u0003\u00ac\u0005\u00ac\u1003\n",
+ "\u00ac\u0003\u00ad\u0003\u00ad\u0003\u00ad\u0003\u00ad\u0005\u00ad\u1009",
+ "\n\u00ad\u0003\u00ae\u0003\u00ae\u0003\u00ae\u0003\u00ae\u0003\u00af",
+ "\u0003\u00af\u0005\u00af\u1011\n\u00af\u0003\u00b0\u0003\u00b0\u0003",
+ "\u00b0\u0005\u00b0\u1016\n\u00b0\u0003\u00b0\u0003\u00b0\u0003\u00b0",
+ "\u0003\u00b0\u0007\u00b0\u101c\n\u00b0\f\u00b0\u000e\u00b0\u101f\u000b",
+ "\u00b0\u0003\u00b0\u0003\u00b0\u0003\u00b0\u0007\u00b0\u1024\n\u00b0",
+ "\f\u00b0\u000e\u00b0\u1027\u000b\u00b0\u0003\u00b0\u0003\u00b0\u0003",
+ "\u00b0\u0007\u00b0\u102c\n\u00b0\f\u00b0\u000e\u00b0\u102f\u000b\u00b0",
+ "\u0003\u00b0\u0003\u00b0\u0003\u00b0\u0007\u00b0\u1034\n\u00b0\f\u00b0",
+ "\u000e\u00b0\u1037\u000b\u00b0\u0003\u00b0\u0007\u00b0\u103a\n\u00b0",
+ "\f\u00b0\u000e\u00b0\u103d\u000b\u00b0\u0005\u00b0\u103f\n\u00b0\u0003",
+ "\u00b0\u0003\u00b0\u0005\u00b0\u1043\n\u00b0\u0003\u00b1\u0003\u00b1",
+ "\u0003\u00b1\u0005\u00b1\u1048\n\u00b1\u0003\u00b1\u0006\u00b1\u104b",
+ "\n\u00b1\r\u00b1\u000e\u00b1\u104c\u0003\u00b1\u0003\u00b1\u0006\u00b1",
+ "\u1051\n\u00b1\r\u00b1\u000e\u00b1\u1052\u0005\u00b1\u1055\n\u00b1\u0003",
+ "\u00b1\u0003\u00b1\u0003\u00b1\u0003\u00b2\u0003\u00b2\u0003\u00b2\u0003",
+ "\u00b2\u0006\u00b2\u105e\n\u00b2\r\u00b2\u000e\u00b2\u105f\u0003\u00b2",
+ "\u0007\u00b2\u1063\n\u00b2\f\u00b2\u000e\u00b2\u1066\u000b\u00b2\u0003",
+ "\u00b2\u0003\u00b2\u0006\u00b2\u106a\n\u00b2\r\u00b2\u000e\u00b2\u106b",
+ "\u0005\u00b2\u106e\n\u00b2\u0003\u00b2\u0003\u00b2\u0003\u00b2\u0003",
+ "\u00b3\u0003\u00b3\u0003\u00b3\u0003\u00b4\u0003\u00b4\u0003\u00b4\u0003",
+ "\u00b5\u0003\u00b5\u0003\u00b5\u0005\u00b5\u107c\n\u00b5\u0003\u00b5",
+ "\u0003\u00b5\u0006\u00b5\u1080\n\u00b5\r\u00b5\u000e\u00b5\u1081\u0003",
+ "\u00b5\u0003\u00b5\u0003\u00b5\u0005\u00b5\u1087\n\u00b5\u0003\u00b6",
+ "\u0003\u00b6\u0003\u00b6\u0005\u00b6\u108c\n\u00b6\u0003\u00b6\u0003",
+ "\u00b6\u0006\u00b6\u1090\n\u00b6\r\u00b6\u000e\u00b6\u1091\u0003\u00b6",
+ "\u0003\u00b6\u0003\u00b6\u0003\u00b6\u0003\u00b6\u0005\u00b6\u1099\n",
+ "\u00b6\u0003\u00b7\u0003\u00b7\u0003\u00b7\u0003\u00b8\u0003\u00b8\u0003",
+ "\u00b8\u0005\u00b8\u10a1\n\u00b8\u0003\u00b8\u0003\u00b8\u0003\u00b8",
+ "\u0003\u00b8\u0006\u00b8\u10a7\n\u00b8\r\u00b8\u000e\u00b8\u10a8\u0003",
+ "\u00b8\u0003\u00b8\u0003\u00b8\u0005\u00b8\u10ae\n\u00b8\u0003\u00b9",
+ "\u0003\u00b9\u0003\u00b9\u0003\u00b9\u0005\u00b9\u10b4\n\u00b9\u0003",
+ "\u00b9\u0005\u00b9\u10b7\n\u00b9\u0003\u00b9\u0003\u00b9\u0003\u00b9",
+ "\u0003\u00b9\u0003\u00b9\u0003\u00b9\u0005\u00b9\u10bf\n\u00b9\u0003",
+ "\u00ba\u0003\u00ba\u0003\u00ba\u0003\u00ba\u0003\u00ba\u0005\u00ba\u10c6",
+ "\n\u00ba\u0003\u00bb\u0003\u00bb\u0003\u00bb\u0003\u00bb\u0003\u00bb",
+ "\u0003\u00bb\u0003\u00bb\u0005\u00bb\u10cf\n\u00bb\u0003\u00bb\u0005",
+ "\u00bb\u10d2\n\u00bb\u0003\u00bc\u0003\u00bc\u0003\u00bc\u0003\u00bc",
+ "\u0003\u00bc\u0003\u00bc\u0003\u00bd\u0003\u00bd\u0003\u00bd\u0003\u00bd",
+ "\u0003\u00bd\u0003\u00bd\u0003\u00bd\u0007\u00bd\u10e1\n\u00bd\f\u00bd",
+ "\u000e\u00bd\u10e4\u000b\u00bd\u0003\u00bd\u0003\u00bd\u0003\u00be\u0003",
+ "\u00be\u0003\u00be\u0005\u00be\u10eb\n\u00be\u0003\u00be\u0003\u00be",
+ "\u0003\u00be\u0003\u00be\u0003\u00be\u0003\u00be\u0005\u00be\u10f3\n",
+ "\u00be\u0003\u00bf\u0003\u00bf\u0005\u00bf\u10f7\n\u00bf\u0003\u00bf",
+ "\u0003\u00bf\u0003\u00c0\u0003\u00c0\u0003\u00c0\u0005\u00c0\u10fe\n",
+ "\u00c0\u0003\u00c0\u0003\u00c0\u0006\u00c0\u1102\n\u00c0\r\u00c0\u000e",
+ "\u00c0\u1103\u0003\u00c1\u0003\u00c1\u0003\u00c1\u0003\u00c1\u0006\u00c1",
+ "\u110a\n\u00c1\r\u00c1\u000e\u00c1\u110b\u0003\u00c2\u0003\u00c2\u0003",
+ "\u00c2\u0003\u00c2\u0003\u00c2\u0007\u00c2\u1113\n\u00c2\f\u00c2\u000e",
+ "\u00c2\u1116\u000b\u00c2\u0003\u00c2\u0003\u00c2\u0003\u00c2\u0005\u00c2",
+ "\u111b\n\u00c2\u0003\u00c2\u0003\u00c2\u0003\u00c2\u0007\u00c2\u1120",
+ "\n\u00c2\f\u00c2\u000e\u00c2\u1123\u000b\u00c2\u0003\u00c2\u0003\u00c2",
+ "\u0003\u00c2\u0003\u00c2\u0005\u00c2\u1129\n\u00c2\u0003\u00c2\u0007",
+ "\u00c2\u112c\n\u00c2\f\u00c2\u000e\u00c2\u112f\u000b\u00c2\u0005\u00c2",
+ "\u1131\n\u00c2\u0005\u00c2\u1133\n\u00c2\u0003\u00c2\u0003\u00c2\u0006",
+ "\u00c2\u1137\n\u00c2\r\u00c2\u000e\u00c2\u1138\u0005\u00c2\u113b\n\u00c2",
+ "\u0003\u00c2\u0003\u00c2\u0007\u00c2\u113f\n\u00c2\f\u00c2\u000e\u00c2",
+ "\u1142\u000b\u00c2\u0005\u00c2\u1144\n\u00c2\u0003\u00c3\u0003\u00c3",
+ "\u0003\u00c3\u0003\u00c3\u0003\u00c3\u0007\u00c3\u114b\n\u00c3\f\u00c3",
+ "\u000e\u00c3\u114e\u000b\u00c3\u0003\u00c3\u0003\u00c3\u0003\u00c3\u0005",
+ "\u00c3\u1153\n\u00c3\u0003\u00c3\u0003\u00c3\u0003\u00c3\u0007\u00c3",
+ "\u1158\n\u00c3\f\u00c3\u000e\u00c3\u115b\u000b\u00c3\u0003\u00c3\u0003",
+ "\u00c3\u0003\u00c3\u0003\u00c3\u0005\u00c3\u1161\n\u00c3\u0003\u00c3",
+ "\u0007\u00c3\u1164\n\u00c3\f\u00c3\u000e\u00c3\u1167\u000b\u00c3\u0005",
+ "\u00c3\u1169\n\u00c3\u0005\u00c3\u116b\n\u00c3\u0003\u00c3\u0003\u00c3",
+ "\u0006\u00c3\u116f\n\u00c3\r\u00c3\u000e\u00c3\u1170\u0005\u00c3\u1173",
+ "\n\u00c3\u0003\u00c3\u0003\u00c3\u0007\u00c3\u1177\n\u00c3\f\u00c3\u000e",
+ "\u00c3\u117a\u000b\u00c3\u0005\u00c3\u117c\n\u00c3\u0003\u00c4\u0003",
+ "\u00c4\u0003\u00c4\u0005\u00c4\u1181\n\u00c4\u0003\u00c4\u0003\u00c4",
+ "\u0003\u00c4\u0007\u00c4\u1186\n\u00c4\f\u00c4\u000e\u00c4\u1189\u000b",
+ "\u00c4\u0003\u00c5\u0003\u00c5\u0003\u00c5\u0003\u00c5\u0007\u00c5\u118f",
+ "\n\u00c5\f\u00c5\u000e\u00c5\u1192\u000b\u00c5\u0003\u00c5\u0003\u00c5",
+ "\u0005\u00c5\u1196\n\u00c5\u0003\u00c5\u0003\u00c5\u0003\u00c5\u0003",
+ "\u00c5\u0003\u00c5\u0007\u00c5\u119d\n\u00c5\f\u00c5\u000e\u00c5\u11a0",
+ "\u000b\u00c5\u0003\u00c5\u0003\u00c5\u0003\u00c5\u0003\u00c5\u0005\u00c5",
+ "\u11a6\n\u00c5\u0003\u00c5\u0007\u00c5\u11a9\n\u00c5\f\u00c5\u000e\u00c5",
+ "\u11ac\u000b\u00c5\u0005\u00c5\u11ae\n\u00c5\u0005\u00c5\u11b0\n\u00c5",
+ "\u0003\u00c5\u0003\u00c5\u0003\u00c5\u0003\u00c5\u0007\u00c5\u11b6\n",
+ "\u00c5\f\u00c5\u000e\u00c5\u11b9\u000b\u00c5\u0005\u00c5\u11bb\n\u00c5",
+ "\u0003\u00c6\u0003\u00c6\u0003\u00c6\u0003\u00c6\u0003\u00c6\u0003\u00c6",
+ "\u0003\u00c6\u0003\u00c6\u0007\u00c6\u11c5\n\u00c6\f\u00c6\u000e\u00c6",
+ "\u11c8\u000b\u00c6\u0003\u00c6\u0003\u00c6\u0003\u00c6\u0005\u00c6\u11cd",
+ "\n\u00c6\u0003\u00c7\u0003\u00c7\u0003\u00c7\u0003\u00c7\u0003\u00c7",
+ "\u0007\u00c7\u11d4\n\u00c7\f\u00c7\u000e\u00c7\u11d7\u000b\u00c7\u0003",
+ "\u00c8\u0003\u00c8\u0003\u00c8\u0003\u00c8\u0007\u00c8\u11dd\n\u00c8",
+ "\f\u00c8\u000e\u00c8\u11e0\u000b\u00c8\u0003\u00c8\u0003\u00c8\u0005",
+ "\u00c8\u11e4\n\u00c8\u0003\u00c8\u0003\u00c8\u0003\u00c8\u0003\u00c8",
+ "\u0003\u00c8\u0007\u00c8\u11eb\n\u00c8\f\u00c8\u000e\u00c8\u11ee\u000b",
+ "\u00c8\u0003\u00c8\u0003\u00c8\u0003\u00c8\u0005\u00c8\u11f3\n\u00c8",
+ "\u0003\u00c8\u0003\u00c8\u0003\u00c8\u0003\u00c8\u0003\u00c8\u0003\u00c8",
+ "\u0003\u00c8\u0007\u00c8\u11fc\n\u00c8\f\u00c8\u000e\u00c8\u11ff\u000b",
+ "\u00c8\u0005\u00c8\u1201\n\u00c8\u0003\u00c9\u0003\u00c9\u0003\u00c9",
+ "\u0003\u00c9\u0003\u00c9\u0003\u00c9\u0003\u00c9\u0003\u00c9\u0007\u00c9",
+ "\u120b\n\u00c9\f\u00c9\u000e\u00c9\u120e\u000b\u00c9\u0003\u00ca\u0003",
+ "\u00ca\u0003\u00ca\u0003\u00ca\u0005\u00ca\u1214\n\u00ca\u0003\u00ca",
+ "\u0003\u00ca\u0003\u00ca\u0005\u00ca\u1219\n\u00ca\u0003\u00cb\u0003",
+ "\u00cb\u0003\u00cb\u0003\u00cc\u0003\u00cc\u0003\u00cc\u0003\u00cc\u0003",
+ "\u00cc\u0003\u00cc\u0003\u00cc\u0003\u00cc\u0003\u00cc\u0003\u00cc\u0005",
+ "\u00cc\u1228\n\u00cc\u0003\u00cc\u0003\u00cc\u0003\u00cc\u0003\u00cc",
+ "\u0003\u00cc\u0003\u00cc\u0003\u00cc\u0003\u00cc\u0003\u00cc\u0005\u00cc",
+ "\u1233\n\u00cc\u0003\u00cc\u0005\u00cc\u1236\n\u00cc\u0003\u00cd\u0003",
+ "\u00cd\u0003\u00cd\u0003\u00cd\u0003\u00cd\u0003\u00cd\u0003\u00cd\u0003",
+ "\u00cd\u0005\u00cd\u1240\n\u00cd\u0003\u00ce\u0003\u00ce\u0003\u00ce",
+ "\u0003\u00ce\u0003\u00ce\u0003\u00ce\u0003\u00ce\u0003\u00ce\u0005\u00ce",
+ "\u124a\n\u00ce\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003",
+ "\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0005\u00cf\u1254\n\u00cf",
+ "\u0003\u00d0\u0003\u00d0\u0003\u00d0\u0003\u00d1\u0003\u00d1\u0003\u00d1",
+ "\u0003\u00d1\u0003\u00d1\u0005\u00d1\u125e\n\u00d1\u0003\u00d2\u0003",
+ "\u00d2\u0005\u00d2\u1262\n\u00d2\u0003\u00d2\u0003\u00d2\u0005\u00d2",
+ "\u1266\n\u00d2\u0003\u00d2\u0003\u00d2\u0003\u00d2\u0003\u00d2\u0003",
+ "\u00d2\u0003\u00d2\u0003\u00d2\u0003\u00d2\u0005\u00d2\u1270\n\u00d2",
+ "\u0003\u00d2\u0003\u00d2\u0003\u00d2\u0005\u00d2\u1275\n\u00d2\u0003",
+ "\u00d2\u0003\u00d2\u0003\u00d2\u0003\u00d2\u0003\u00d2\u0003\u00d2\u0003",
+ "\u00d2\u0003\u00d2\u0003\u00d2\u0003\u00d2\u0003\u00d2\u0003\u00d2\u0003",
+ "\u00d2\u0003\u00d2\u0003\u00d2\u0003\u00d2\u0003\u00d2\u0003\u00d2\u0003",
+ "\u00d2\u0003\u00d2\u0003\u00d2\u0003\u00d2\u0003\u00d2\u0003\u00d2\u0003",
+ "\u00d2\u0003\u00d2\u0003\u00d2\u0003\u00d2\u0003\u00d2\u0003\u00d2\u0003",
+ "\u00d2\u0003\u00d2\u0003\u00d2\u0003\u00d2\u0003\u00d2\u0003\u00d2\u0003",
+ "\u00d2\u0003\u00d2\u0003\u00d2\u0003\u00d2\u0003\u00d2\u0003\u00d2\u0003",
+ "\u00d2\u0003\u00d2\u0003\u00d2\u0003\u00d2\u0003\u00d2\u0003\u00d2\u0005",
+ "\u00d2\u12a7\n\u00d2\u0003\u00d3\u0003\u00d3\u0003\u00d3\u0003\u00d3",
+ "\u0003\u00d3\u0003\u00d3\u0003\u00d3\u0003\u00d3\u0003\u00d3\u0003\u00d3",
+ "\u0003\u00d3\u0003\u00d3\u0003\u00d3\u0003\u00d3\u0003\u00d3\u0003\u00d3",
+ "\u0005\u00d3\u12b9\n\u00d3\u0003\u00d4\u0003\u00d4\u0003\u00d4\u0003",
+ "\u00d4\u0003\u00d5\u0003\u00d5\u0005\u00d5\u12c1\n\u00d5\u0003\u00d5",
+ "\u0003\u00d5\u0003\u00d5\u0003\u00d6\u0003\u00d6\u0003\u00d6\u0003\u00d6",
+ "\u0007\u00d6\u12ca\n\u00d6\f\u00d6\u000e\u00d6\u12cd\u000b\u00d6\u0003",
+ "\u00d7\u0003\u00d7\u0003\u00d7\u0003\u00d7\u0005\u00d7\u12d3\n\u00d7",
+ "\u0003\u00d8\u0003\u00d8\u0005\u00d8\u12d7\n\u00d8\u0003\u00d8\u0003",
+ "\u00d8\u0003\u00d8\u0003\u00d9\u0003\u00d9\u0005\u00d9\u12de\n\u00d9",
+ "\u0003\u00d9\u0003\u00d9\u0003\u00d9\u0005\u00d9\u12e3\n\u00d9\u0003",
+ "\u00d9\u0005\u00d9\u12e6\n\u00d9\u0003\u00d9\u0005\u00d9\u12e9\n\u00d9",
+ "\u0003\u00da\u0003\u00da\u0003\u00da\u0003\u00da\u0003\u00da\u0003\u00da",
+ "\u0003\u00da\u0005\u00da\u12f2\n\u00da\u0003\u00db\u0003\u00db\u0005",
+ "\u00db\u12f6\n\u00db\u0003\u00db\u0003\u00db\u0003\u00db\u0003\u00db",
+ "\u0003\u00db\u0003\u00db\u0003\u00db\u0003\u00dc\u0003\u00dc\u0003\u00dc",
+ "\u0003\u00dc\u0003\u00dc\u0003\u00dc\u0003\u00dd\u0003\u00dd\u0003\u00dd",
+ "\u0003\u00dd\u0003\u00de\u0003\u00de\u0003\u00de\u0003\u00de\u0003\u00de",
+ "\u0003\u00de\u0003\u00de\u0003\u00de\u0003\u00de\u0007\u00de\u1312\n",
+ "\u00de\f\u00de\u000e\u00de\u1315\u000b\u00de\u0003\u00de\u0003\u00de",
+ "\u0003\u00de\u0003\u00de\u0005\u00de\u131b\n\u00de\u0003\u00de\u0003",
+ "\u00de\u0005\u00de\u131f\n\u00de\u0003\u00de\u0003\u00de\u0003\u00de",
+ "\u0003\u00de\u0003\u00de\u0005\u00de\u1326\n\u00de\u0003\u00de\u0005",
+ "\u00de\u1329\n\u00de\u0003\u00de\u0003\u00de\u0003\u00de\u0003\u00de",
+ "\u0003\u00de\u0003\u00de\u0003\u00de\u0003\u00de\u0003\u00de\u0003\u00de",
+ "\u0003\u00de\u0003\u00de\u0007\u00de\u1337\n\u00de\f\u00de\u000e\u00de",
+ "\u133a\u000b\u00de\u0005\u00de\u133c\n\u00de\u0003\u00df\u0003\u00df",
+ "\u0003\u00df\u0003\u00df\u0003\u00df\u0003\u00df\u0003\u00df\u0003\u00df",
+ "\u0005\u00df\u1346\n\u00df\u0003\u00df\u0003\u00df\u0005\u00df\u134a",
+ "\n\u00df\u0003\u00df\u0003\u00df\u0003\u00df\u0003\u00df\u0005\u00df",
+ "\u1350\n\u00df\u0003\u00df\u0005\u00df\u1353\n\u00df\u0003\u00df\u0003",
+ "\u00df\u0003\u00df\u0005\u00df\u1358\n\u00df\u0003\u00df\u0003\u00df",
+ "\u0005\u00df\u135c\n\u00df\u0003\u00df\u0003\u00df\u0003\u00df\u0003",
+ "\u00df\u0003\u00df\u0005\u00df\u1363\n\u00df\u0003\u00df\u0005\u00df",
+ "\u1366\n\u00df\u0003\u00df\u0003\u00df\u0003\u00df\u0003\u00df\u0005",
+ "\u00df\u136c\n\u00df\u0003\u00df\u0003\u00df\u0003\u00df\u0003\u00df",
+ "\u0003\u00df\u0003\u00df\u0003\u00df\u0003\u00df\u0003\u00df\u0003\u00df",
+ "\u0003\u00df\u0003\u00df\u0003\u00df\u0003\u00df\u0003\u00df\u0003\u00df",
+ "\u0003\u00df\u0003\u00df\u0003\u00df\u0003\u00df\u0003\u00df\u0003\u00df",
+ "\u0005\u00df\u1384\n\u00df\u0003\u00df\u0003\u00df\u0003\u00df\u0003",
+ "\u00df\u0003\u00df\u0003\u00df\u0003\u00df\u0003\u00df\u0003\u00df\u0003",
+ "\u00df\u0003\u00df\u0005\u00df\u1391\n\u00df\u0003\u00df\u0005\u00df",
+ "\u1394\n\u00df\u0003\u00df\u0003\u00df\u0003\u00df\u0003\u00df\u0003",
+ "\u00df\u0003\u00df\u0003\u00df\u0003\u00df\u0005\u00df\u139e\n\u00df",
+ "\u0003\u00df\u0003\u00df\u0003\u00df\u0003\u00df\u0003\u00df\u0003\u00df",
+ "\u0005\u00df\u13a6\n\u00df\u0003\u00df\u0003\u00df\u0005\u00df\u13aa",
+ "\n\u00df\u0003\u00df\u0003\u00df\u0003\u00df\u0003\u00df\u0003\u00df",
+ "\u0005\u00df\u13b1\n\u00df\u0003\u00df\u0005\u00df\u13b4\n\u00df\u0003",
+ "\u00df\u0003\u00df\u0003\u00df\u0003\u00df\u0003\u00df\u0007\u00df\u13bb",
+ "\n\u00df\f\u00df\u000e\u00df\u13be\u000b\u00df\u0003\u00df\u0003\u00df",
+ "\u0003\u00df\u0005\u00df\u13c3\n\u00df\u0003\u00df\u0003\u00df\u0003",
+ "\u00df\u0003\u00df\u0005\u00df\u13c9\n\u00df\u0003\u00df\u0003\u00df",
+ "\u0003\u00df\u0003\u00df\u0003\u00df\u0003\u00df\u0003\u00df\u0003\u00df",
+ "\u0005\u00df\u13d3\n\u00df\u0005\u00df\u13d5\n\u00df\u0003\u00e0\u0003",
+ "\u00e0\u0003\u00e0\u0003\u00e0\u0005\u00e0\u13db\n\u00e0\u0003\u00e0",
+ "\u0005\u00e0\u13de\n\u00e0\u0003\u00e0\u0005\u00e0\u13e1\n\u00e0\u0003",
+ "\u00e1\u0003\u00e1\u0003\u00e1\u0003\u00e1\u0003\u00e1\u0003\u00e1\u0003",
+ "\u00e1\u0003\u00e1\u0003\u00e1\u0003\u00e1\u0005\u00e1\u13ed\n\u00e1",
+ "\u0003\u00e1\u0005\u00e1\u13f0\n\u00e1\u0003\u00e2\u0003\u00e2\u0003",
+ "\u00e2\u0003\u00e2\u0005\u00e2\u13f6\n\u00e2\u0003\u00e3\u0005\u00e3",
+ "\u13f9\n\u00e3\u0003\u00e3\u0003\u00e3\u0003\u00e3\u0003\u00e3\u0003",
+ "\u00e3\u0003\u00e3\u0005\u00e3\u1401\n\u00e3\u0003\u00e3\u0003\u00e3",
+ "\u0003\u00e3\u0003\u00e3\u0003\u00e3\u0003\u00e3\u0005\u00e3\u1409\n",
+ "\u00e3\u0003\u00e4\u0003\u00e4\u0003\u00e4\u0003\u00e4\u0005\u00e4\u140f",
+ "\n\u00e4\u0003\u00e4\u0003\u00e4\u0005\u00e4\u1413\n\u00e4\u0003\u00e5",
+ "\u0003\u00e5\u0003\u00e5\u0003\u00e5\u0003\u00e5\u0003\u00e5\u0003\u00e5",
+ "\u0003\u00e5\u0003\u00e5\u0003\u00e5\u0003\u00e5\u0003\u00e5\u0005\u00e5",
+ "\u1421\n\u00e5\u0003\u00e6\u0003\u00e6\u0003\u00e6\u0003\u00e7\u0003",
+ "\u00e7\u0003\u00e7\u0003\u00e7\u0003\u00e7\u0007\u00e7\u142b\n\u00e7",
+ "\f\u00e7\u000e\u00e7\u142e\u000b\u00e7\u0003\u00e7\u0003\u00e7\u0003",
+ "\u00e7\u0003\u00e7\u0005\u00e7\u1434\n\u00e7\u0003\u00e7\u0005\u00e7",
+ "\u1437\n\u00e7\u0003\u00e7\u0003\u00e7\u0003\u00e7\u0003\u00e8\u0003",
+ "\u00e8\u0005\u00e8\u143e\n\u00e8\u0003\u00e8\u0003\u00e8\u0003\u00e8",
+ "\u0007\u00e8\u1443\n\u00e8\f\u00e8\u000e\u00e8\u1446\u000b\u00e8\u0003",
+ "\u00e9\u0003\u00e9\u0005\u00e9\u144a\n\u00e9\u0003\u00e9\u0006\u00e9",
+ "\u144d\n\u00e9\r\u00e9\u000e\u00e9\u144e\u0003\u00ea\u0003\u00ea\u0003",
+ "\u00ea\u0003\u00ea\u0003\u00ea\u0003\u00ea\u0003\u00ea\u0007\u00ea\u1458",
+ "\n\u00ea\f\u00ea\u000e\u00ea\u145b\u000b\u00ea\u0003\u00eb\u0003\u00eb",
+ "\u0003\u00eb\u0003\u00eb\u0003\u00ec\u0003\u00ec\u0003\u00ed\u0003\u00ed",
+ "\u0005\u00ed\u1465\n\u00ed\u0003\u00ed\u0003\u00ed\u0003\u00ed\u0003",
+ "\u00ed\u0005\u00ed\u146b\n\u00ed\u0003\u00ee\u0003\u00ee\u0003\u00ee",
+ "\u0005\u00ee\u1470\n\u00ee\u0003\u00ee\u0003\u00ee\u0003\u00ee\u0003",
+ "\u00ee\u0003\u00ee\u0003\u00ee\u0003\u00ee\u0003\u00ee\u0003\u00ee\u0003",
+ "\u00ee\u0003\u00ee\u0005\u00ee\u147d\n\u00ee\u0005\u00ee\u147f\n\u00ee",
+ "\u0003\u00ee\u0003\u00ee\u0003\u00ee\u0005\u00ee\u1484\n\u00ee\u0003",
+ "\u00ee\u0003\u00ee\u0003\u00ee\u0005\u00ee\u1489\n\u00ee\u0005\u00ee",
+ "\u148b\n\u00ee\u0003\u00ef\u0003\u00ef\u0003\u00ef\u0003\u00ef\u0003",
+ "\u00ef\u0005\u00ef\u1492\n\u00ef\u0003\u00f0\u0003\u00f0\u0003\u00f0",
+ "\u0003\u00f0\u0003\u00f0\u0005\u00f0\u1499\n\u00f0\u0003\u00f0\u0005",
+ "\u00f0\u149c\n\u00f0\u0003\u00f0\u0005\u00f0\u149f\n\u00f0\u0003\u00f0",
+ "\u0003\u00f0\u0003\u00f0\u0003\u00f0\u0005\u00f0\u14a5\n\u00f0\u0003",
+ "\u00f0\u0003\u00f0\u0005\u00f0\u14a9\n\u00f0\u0003\u00f1\u0003\u00f1",
+ "\u0003\u00f1\u0003\u00f1\u0005\u00f1\u14af\n\u00f1\u0003\u00f2\u0003",
+ "\u00f2\u0003\u00f2\u0003\u00f2\u0005\u00f2\u14b5\n\u00f2\u0003\u00f2",
+ "\u0003\u00f2\u0003\u00f3\u0003\u00f3\u0003\u00f3\u0003\u00f4\u0003\u00f4",
+ "\u0003\u00f4\u0003\u00f5\u0003\u00f5\u0003\u00f5\u0005\u00f5\u14c2\n",
+ "\u00f5\u0003\u00f5\u0003\u00f5\u0003\u00f5\u0005\u00f5\u14c7\n\u00f5",
+ "\u0003\u00f5\u0003\u00f5\u0003\u00f5\u0003\u00f5\u0007\u00f5\u14cd\n",
+ "\u00f5\f\u00f5\u000e\u00f5\u14d0\u000b\u00f5\u0005\u00f5\u14d2\n\u00f5",
+ "\u0003\u00f6\u0003\u00f6\u0003\u00f6\u0005\u00f6\u14d7\n\u00f6\u0003",
+ "\u00f6\u0003\u00f6\u0003\u00f6\u0005\u00f6\u14dc\n\u00f6\u0003\u00f6",
+ "\u0003\u00f6\u0003\u00f6\u0003\u00f6\u0007\u00f6\u14e2\n\u00f6\f\u00f6",
+ "\u000e\u00f6\u14e5\u000b\u00f6\u0005\u00f6\u14e7\n\u00f6\u0003\u00f7",
+ "\u0003\u00f7\u0003\u00f7\u0003\u00f7\u0005\u00f7\u14ed\n\u00f7\u0003",
+ "\u00f8\u0003\u00f8\u0005\u00f8\u14f1\n\u00f8\u0003\u00f8\u0003\u00f8",
+ "\u0003\u00f8\u0003\u00f8\u0003\u00f8\u0003\u00f8\u0003\u00f8\u0003\u00f8",
+ "\u0003\u00f8\u0007\u00f8\u14fc\n\u00f8\f\u00f8\u000e\u00f8\u14ff\u000b",
+ "\u00f8\u0003\u00f8\u0003\u00f8\u0003\u00f8\u0005\u00f8\u1504\n\u00f8",
+ "\u0003\u00f8\u0003\u00f8\u0003\u00f8\u0003\u00f8\u0003\u00f8\u0003\u00f8",
+ "\u0003\u00f8\u0003\u00f8\u0007\u00f8\u150e\n\u00f8\f\u00f8\u000e\u00f8",
+ "\u1511\u000b\u00f8\u0005\u00f8\u1513\n\u00f8\u0003\u00f9\u0003\u00f9",
+ "\u0003\u00fa\u0003\u00fa\u0003\u00fa\u0003\u00fa\u0003\u00fa\u0005\u00fa",
+ "\u151c\n\u00fa\u0003\u00fa\u0003\u00fa\u0003\u00fa\u0005\u00fa\u1521",
+ "\n\u00fa\u0003\u00fb\u0003\u00fb\u0003\u00fb\u0003\u00fb\u0005\u00fb",
+ "\u1527\n\u00fb\u0003\u00fc\u0003\u00fc\u0003\u00fd\u0003\u00fd\u0003",
+ "\u00fd\u0005\u00fd\u152e\n\u00fd\u0005\u00fd\u1530\n\u00fd\u0003\u00fe",
+ "\u0003\u00fe\u0005\u00fe\u1534\n\u00fe\u0003\u00fe\u0003\u00fe\u0003",
+ "\u00fe\u0003\u00fe\u0005\u00fe\u153a\n\u00fe\u0003\u00fe\u0005\u00fe",
+ "\u153d\n\u00fe\u0003\u00ff\u0003\u00ff\u0003\u0100\u0003\u0100\u0003",
+ "\u0101\u0003\u0101\u0003\u0101\u0003\u0101\u0005\u0101\u1547\n\u0101",
+ "\u0003\u0102\u0003\u0102\u0005\u0102\u154b\n\u0102\u0003\u0103\u0003",
+ "\u0103\u0003\u0104\u0003\u0104\u0003\u0104\u0003\u0104\u0003\u0104\u0003",
+ "\u0104\u0003\u0104\u0003\u0104\u0003\u0104\u0003\u0104\u0003\u0104\u0003",
+ "\u0104\u0003\u0104\u0003\u0104\u0006\u0104\u155d\n\u0104\r\u0104\u000e",
+ "\u0104\u155e\u0003\u0105\u0003\u0105\u0003\u0105\u0003\u0105\u0003\u0105",
+ "\u0005\u0105\u1566\n\u0105\u0005\u0105\u1568\n\u0105\u0003\u0106\u0003",
+ "\u0106\u0003\u0106\u0006\u0106\u156d\n\u0106\r\u0106\u000e\u0106\u156e",
+ "\u0005\u0106\u1571\n\u0106\u0003\u0107\u0003\u0107\u0005\u0107\u1575",
+ "\n\u0107\u0003\u0108\u0003\u0108\u0003\u0108\u0005\u0108\u157a\n\u0108",
+ "\u0003\u0109\u0003\u0109\u0003\u0109\u0003\u0109\u0003\u0109\u0003\u0109",
+ "\u0003\u0109\u0003\u0109\u0003\u0109\u0005\u0109\u1585\n\u0109\u0003",
+ "\u010a\u0003\u010a\u0003\u010a\u0005\u010a\u158a\n\u010a\u0003\u010b",
+ "\u0003\u010b\u0003\u010c\u0003\u010c\u0005\u010c\u1590\n\u010c\u0003",
+ "\u010d\u0005\u010d\u1593\n\u010d\u0003\u010d\u0003\u010d\u0005\u010d",
+ "\u1597\n\u010d\u0003\u010d\u0006\u010d\u159a\n\u010d\r\u010d\u000e\u010d",
+ "\u159b\u0003\u010d\u0005\u010d\u159f\n\u010d\u0003\u010d\u0003\u010d",
+ "\u0005\u010d\u15a3\n\u010d\u0003\u010d\u0003\u010d\u0005\u010d\u15a7",
+ "\n\u010d\u0005\u010d\u15a9\n\u010d\u0003\u010e\u0003\u010e\u0003\u010f",
+ "\u0005\u010f\u15ae\n\u010f\u0003\u010f\u0003\u010f\u0003\u0110\u0005",
+ "\u0110\u15b3\n\u0110\u0003\u0110\u0003\u0110\u0003\u0111\u0003\u0111",
+ "\u0003\u0111\u0003\u0111\u0003\u0111\u0003\u0111\u0003\u0111\u0003\u0111",
+ "\u0003\u0111\u0005\u0111\u15c0\n\u0111\u0003\u0111\u0005\u0111\u15c3",
+ "\n\u0111\u0003\u0112\u0003\u0112\u0005\u0112\u15c7\n\u0112\u0003\u0112",
+ "\u0005\u0112\u15ca\n\u0112\u0003\u0112\u0003\u0112\u0003\u0112\u0005",
+ "\u0112\u15cf\n\u0112\u0003\u0112\u0005\u0112\u15d2\n\u0112\u0003\u0112",
+ "\u0003\u0112\u0005\u0112\u15d6\n\u0112\u0003\u0112\u0003\u0112\u0003",
+ "\u0112\u0005\u0112\u15db\n\u0112\u0003\u0112\u0005\u0112\u15de\n\u0112",
+ "\u0003\u0112\u0003\u0112\u0003\u0112\u0005\u0112\u15e3\n\u0112\u0003",
+ "\u0112\u0005\u0112\u15e6\n\u0112\u0003\u0112\u0003\u0112\u0003\u0112",
+ "\u0003\u0112\u0005\u0112\u15ec\n\u0112\u0003\u0112\u0005\u0112\u15ef",
+ "\n\u0112\u0003\u0112\u0003\u0112\u0005\u0112\u15f3\n\u0112\u0003\u0112",
+ "\u0005\u0112\u15f6\n\u0112\u0003\u0112\u0005\u0112\u15f9\n\u0112\u0003",
+ "\u0112\u0003\u0112\u0005\u0112\u15fd\n\u0112\u0003\u0112\u0005\u0112",
+ "\u1600\n\u0112\u0003\u0112\u0005\u0112\u1603\n\u0112\u0003\u0112\u0003",
+ "\u0112\u0005\u0112\u1607\n\u0112\u0003\u0112\u0005\u0112\u160a\n\u0112",
+ "\u0003\u0112\u0005\u0112\u160d\n\u0112\u0003\u0112\u0005\u0112\u1610",
+ "\n\u0112\u0003\u0112\u0003\u0112\u0005\u0112\u1614\n\u0112\u0003\u0112",
+ "\u0005\u0112\u1617\n\u0112\u0003\u0112\u0005\u0112\u161a\n\u0112\u0003",
+ "\u0112\u0003\u0112\u0003\u0112\u0005\u0112\u161f\n\u0112\u0003\u0112",
+ "\u0003\u0112\u0003\u0112\u0005\u0112\u1624\n\u0112\u0003\u0112\u0003",
+ "\u0112\u0003\u0112\u0005\u0112\u1629\n\u0112\u0003\u0112\u0005\u0112",
+ "\u162c\n\u0112\u0003\u0112\u0003\u0112\u0003\u0112\u0005\u0112\u1631",
+ "\n\u0112\u0003\u0112\u0005\u0112\u1634\n\u0112\u0003\u0112\u0003\u0112",
+ "\u0003\u0112\u0005\u0112\u1639\n\u0112\u0003\u0112\u0005\u0112\u163c",
+ "\n\u0112\u0003\u0112\u0003\u0112\u0005\u0112\u1640\n\u0112\u0003\u0112",
+ "\u0003\u0112\u0005\u0112\u1644\n\u0112\u0003\u0113\u0003\u0113\u0003",
+ "\u0113\u0003\u0113\u0007\u0113\u164a\n\u0113\f\u0113\u000e\u0113\u164d",
+ "\u000b\u0113\u0003\u0113\u0003\u0113\u0003\u0114\u0003\u0114\u0005\u0114",
+ "\u1653\n\u0114\u0003\u0114\u0003\u0114\u0005\u0114\u1657\n\u0114\u0003",
+ "\u0114\u0003\u0114\u0003\u0114\u0005\u0114\u165c\n\u0114\u0003\u0114",
+ "\u0005\u0114\u165f\n\u0114\u0003\u0114\u0003\u0114\u0003\u0114\u0005",
+ "\u0114\u1664\n\u0114\u0003\u0114\u0003\u0114\u0005\u0114\u1668\n\u0114",
+ "\u0005\u0114\u166a\n\u0114\u0003\u0115\u0003\u0115\u0003\u0115\u0003",
+ "\u0115\u0003\u0116\u0003\u0116\u0003\u0116\u0003\u0116\u0003\u0116\u0003",
+ "\u0116\u0003\u0117\u0003\u0117\u0003\u0117\u0003\u0117\u0005\u0117\u167a",
+ "\n\u0117\u0003\u0117\u0003\u0117\u0003\u0118\u0003\u0118\u0003\u0118",
+ "\u0007\u0118\u1681\n\u0118\f\u0118\u000e\u0118\u1684\u000b\u0118\u0003",
+ "\u0119\u0003\u0119\u0003\u0119\u0007\u0119\u1689\n\u0119\f\u0119\u000e",
+ "\u0119\u168c\u000b\u0119\u0003\u011a\u0003\u011a\u0003\u011a\u0003\u011a",
+ "\u0007\u011a\u1692\n\u011a\f\u011a\u000e\u011a\u1695\u000b\u011a\u0003",
+ "\u011a\u0003\u011a\u0003\u011b\u0003\u011b\u0003\u011b\u0007\u011b\u169c",
+ "\n\u011b\f\u011b\u000e\u011b\u169f\u000b\u011b\u0003\u011c\u0003\u011c",
+ "\u0003\u011c\u0007\u011c\u16a4\n\u011c\f\u011c\u000e\u011c\u16a7\u000b",
+ "\u011c\u0003\u011d\u0003\u011d\u0003\u011d\u0007\u011d\u16ac\n\u011d",
+ "\f\u011d\u000e\u011d\u16af\u000b\u011d\u0003\u011e\u0003\u011e\u0003",
+ "\u011e\u0007\u011e\u16b4\n\u011e\f\u011e\u000e\u011e\u16b7\u000b\u011e",
+ "\u0003\u011f\u0003\u011f\u0003\u011f\u0007\u011f\u16bc\n\u011f\f\u011f",
+ "\u000e\u011f\u16bf\u000b\u011f\u0003\u0120\u0003\u0120\u0005\u0120\u16c3",
+ "\n\u0120\u0003\u0120\u0003\u0120\u0003\u0120\u0003\u0120\u0003\u0120",
+ "\u0005\u0120\u16ca\n\u0120\u0005\u0120\u16cc\n\u0120\u0003\u0121\u0003",
+ "\u0121\u0003\u0121\u0005\u0121\u16d1\n\u0121\u0003\u0121\u0005\u0121",
+ "\u16d4\n\u0121\u0003\u0121\u0003\u0121\u0003\u0121\u0005\u0121\u16d9",
+ "\n\u0121\u0003\u0121\u0005\u0121\u16dc\n\u0121\u0003\u0122\u0003\u0122",
+ "\u0005\u0122\u16e0\n\u0122\u0003\u0123\u0003\u0123\u0003\u0123\u0003",
+ "\u0124\u0003\u0124\u0003\u0124\u0003\u0124\u0003\u0125\u0003\u0125\u0003",
+ "\u0125\u0003\u0125\u0003\u0125\u0005\u0125\u16ee\n\u0125\u0003\u0125",
+ "\u0003\u0125\u0003\u0125\u0003\u0125\u0003\u0125\u0005\u0125\u16f5\n",
+ "\u0125\u0003\u0125\u0003\u0125\u0003\u0125\u0005\u0125\u16fa\n\u0125",
+ "\u0003\u0126\u0003\u0126\u0003\u0126\u0003\u0126\u0003\u0126\u0003\u0126",
+ "\u0003\u0126\u0003\u0126\u0003\u0126\u0003\u0126\u0003\u0126\u0003\u0126",
+ "\u0003\u0126\u0003\u0126\u0003\u0126\u0003\u0126\u0003\u0126\u0003\u0126",
+ "\u0003\u0126\u0003\u0126\u0003\u0126\u0003\u0126\u0003\u0126\u0003\u0126",
+ "\u0003\u0126\u0003\u0126\u0003\u0126\u0003\u0126\u0003\u0126\u0003\u0126",
+ "\u0006\u0126\u171a\n\u0126\r\u0126\u000e\u0126\u171b\u0003\u0126\u0003",
+ "\u0126\u0005\u0126\u1720\n\u0126\u0003\u0126\u0003\u0126\u0003\u0126",
+ "\u0003\u0126\u0006\u0126\u1726\n\u0126\r\u0126\u000e\u0126\u1727\u0003",
+ "\u0126\u0003\u0126\u0005\u0126\u172c\n\u0126\u0003\u0126\u0003\u0126",
+ "\u0003\u0126\u0003\u0126\u0003\u0126\u0003\u0126\u0003\u0126\u0005\u0126",
+ "\u1735\n\u0126\u0003\u0126\u0003\u0126\u0003\u0126\u0003\u0126\u0003",
+ "\u0126\u0003\u0126\u0005\u0126\u173d\n\u0126\u0003\u0126\u0003\u0126",
+ "\u0003\u0126\u0005\u0126\u1742\n\u0126\u0003\u0126\u0003\u0126\u0003",
+ "\u0126\u0003\u0126\u0003\u0126\u0003\u0126\u0005\u0126\u174a\n\u0126",
+ "\u0003\u0126\u0003\u0126\u0003\u0126\u0005\u0126\u174f\n\u0126\u0003",
+ "\u0126\u0003\u0126\u0003\u0126\u0005\u0126\u1754\n\u0126\u0005\u0126",
+ "\u1756\n\u0126\u0003\u0126\u0003\u0126\u0003\u0126\u0003\u0126\u0003",
+ "\u0126\u0003\u0126\u0003\u0126\u0005\u0126\u175f\n\u0126\u0003\u0126",
+ "\u0003\u0126\u0003\u0126\u0005\u0126\u1764\n\u0126\u0003\u0126\u0003",
+ "\u0126\u0003\u0126\u0003\u0126\u0003\u0126\u0003\u0126\u0005\u0126\u176c",
+ "\n\u0126\u0003\u0126\u0003\u0126\u0003\u0126\u0005\u0126\u1771\n\u0126",
+ "\u0003\u0126\u0003\u0126\u0003\u0126\u0003\u0126\u0003\u0126\u0003\u0126",
+ "\u0005\u0126\u1779\n\u0126\u0003\u0126\u0003\u0126\u0003\u0126\u0003",
+ "\u0126\u0003\u0126\u0003\u0126\u0005\u0126\u1781\n\u0126\u0003\u0126",
+ "\u0005\u0126\u1784\n\u0126\u0003\u0126\u0003\u0126\u0003\u0126\u0003",
+ "\u0126\u0003\u0126\u0003\u0126\u0003\u0126\u0003\u0126\u0005\u0126\u178e",
+ "\n\u0126\u0003\u0126\u0003\u0126\u0003\u0126\u0003\u0126\u0003\u0126",
+ "\u0003\u0126\u0003\u0126\u0003\u0126\u0003\u0126\u0005\u0126\u1799\n",
+ "\u0126\u0003\u0127\u0003\u0127\u0003\u0127\u0003\u0127\u0003\u0127\u0003",
+ "\u0128\u0003\u0128\u0003\u0128\u0003\u0128\u0007\u0128\u17a4\n\u0128",
+ "\f\u0128\u000e\u0128\u17a7\u000b\u0128\u0003\u0128\u0003\u0128\u0003",
+ "\u0128\u0003\u0128\u0003\u0128\u0005\u0128\u17ae\n\u0128\u0003\u0129",
+ "\u0003\u0129\u0005\u0129\u17b2\n\u0129\u0003\u012a\u0003\u012a\u0003",
+ "\u012a\u0005\u012a\u17b7\n\u012a\u0003\u012a\u0003\u012a\u0003\u012a",
+ "\u0003\u012a\u0003\u012a\u0003\u012a\u0003\u012a\u0005\u012a\u17c0\n",
+ "\u012a\u0003\u012a\u0005\u012a\u17c3\n\u012a\u0003\u012a\u0003\u012a",
+ "\u0003\u012a\u0003\u012a\u0003\u012a\u0003\u012a\u0003\u012a\u0003\u012a",
+ "\u0003\u012a\u0003\u012a\u0005\u012a\u17cf\n\u012a\u0003\u012a\u0003",
+ "\u012a\u0003\u012a\u0003\u012a\u0003\u012a\u0003\u012a\u0005\u012a\u17d7",
+ "\n\u012a\u0003\u012a\u0003\u012a\u0003\u012a\u0003\u012a\u0003\u012a",
+ "\u0003\u012a\u0007\u012a\u17df\n\u012a\f\u012a\u000e\u012a\u17e2\u000b",
+ "\u012a\u0005\u012a\u17e4\n\u012a\u0003\u012a\u0003\u012a\u0005\u012a",
+ "\u17e8\n\u012a\u0003\u012a\u0003\u012a\u0005\u012a\u17ec\n\u012a\u0003",
+ "\u012b\u0003\u012b\u0003\u012b\u0003\u012b\u0003\u012b\u0003\u012b\u0003",
+ "\u012b\u0003\u012b\u0003\u012b\u0003\u012b\u0003\u012b\u0003\u012b\u0003",
+ "\u012b\u0003\u012b\u0003\u012b\u0003\u012b\u0003\u012b\u0003\u012b\u0003",
+ "\u012b\u0003\u012b\u0003\u012b\u0003\u012b\u0003\u012b\u0005\u012b\u1805",
+ "\n\u012b\u0003\u012c\u0003\u012c\u0003\u012c\u0003\u012c\u0003\u012c",
+ "\u0003\u012d\u0003\u012d\u0003\u012d\u0003\u012d\u0005\u012d\u1810\n",
+ "\u012d\u0003\u012d\u0003\u012d\u0003\u012d\u0003\u012d\u0003\u012d\u0005",
+ "\u012d\u1817\n\u012d\u0007\u012d\u1819\n\u012d\f\u012d\u000e\u012d\u181c",
+ "\u000b\u012d\u0003\u012e\u0003\u012e\u0003\u012e\u0003\u012e\u0005\u012e",
+ "\u1822\n\u012e\u0003\u012f\u0003\u012f\u0003\u012f\u0003\u012f\u0003",
+ "\u012f\u0003\u012f\u0005\u012f\u182a\n\u012f\u0003\u012f\u0003\u012f",
+ "\u0003\u012f\u0005\u012f\u182f\n\u012f\u0003\u012f\u0003\u012f\u0003",
+ "\u012f\u0003\u012f\u0007\u012f\u1835\n\u012f\f\u012f\u000e\u012f\u1838",
+ "\u000b\u012f\u0003\u0130\u0003\u0130\u0003\u0130\u0005\u0130\u183d\n",
+ "\u0130\u0003\u0130\u0003\u0130\u0003\u0130\u0003\u0130\u0003\u0130\u0003",
+ "\u0130\u0003\u0130\u0003\u0130\u0005\u0130\u1847\n\u0130\u0003\u0130",
+ "\u0003\u0130\u0003\u0130\u0003\u0130\u0003\u0130\u0003\u0130\u0003\u0130",
+ "\u0003\u0130\u0003\u0130\u0003\u0130\u0003\u0130\u0005\u0130\u1854\n",
+ "\u0130\u0003\u0130\u0003\u0130\u0003\u0130\u0003\u0130\u0005\u0130\u185a",
+ "\n\u0130\u0003\u0130\u0003\u0130\u0003\u0130\u0003\u0130\u0005\u0130",
+ "\u1860\n\u0130\u0003\u0130\u0003\u0130\u0003\u0130\u0003\u0130\u0003",
+ "\u0130\u0003\u0130\u0003\u0130\u0003\u0130\u0003\u0130\u0003\u0130\u0003",
+ "\u0130\u0003\u0130\u0003\u0130\u0003\u0130\u0005\u0130\u1870\n\u0130",
+ "\u0003\u0130\u0003\u0130\u0003\u0130\u0003\u0130\u0005\u0130\u1876\n",
+ "\u0130\u0007\u0130\u1878\n\u0130\f\u0130\u000e\u0130\u187b\u000b\u0130",
+ "\u0003\u0131\u0003\u0131\u0003\u0131\u0003\u0131\u0003\u0131\u0003\u0131",
+ "\u0003\u0131\u0003\u0131\u0003\u0131\u0003\u0131\u0003\u0131\u0003\u0131",
+ "\u0003\u0131\u0003\u0131\u0007\u0131\u188b\n\u0131\f\u0131\u000e\u0131",
+ "\u188e\u000b\u0131\u0003\u0131\u0003\u0131\u0003\u0131\u0003\u0131\u0003",
+ "\u0131\u0003\u0131\u0003\u0131\u0006\u0131\u1897\n\u0131\r\u0131\u000e",
+ "\u0131\u1898\u0003\u0131\u0003\u0131\u0003\u0131\u0003\u0131\u0003\u0131",
+ "\u0003\u0131\u0003\u0131\u0003\u0131\u0003\u0131\u0003\u0131\u0003\u0131",
+ "\u0003\u0131\u0003\u0131\u0003\u0131\u0003\u0131\u0005\u0131\u18aa\n",
+ "\u0131\u0003\u0131\u0003\u0131\u0003\u0131\u0003\u0131\u0003\u0131\u0003",
+ "\u0131\u0003\u0131\u0003\u0131\u0003\u0131\u0003\u0131\u0003\u0131\u0007",
+ "\u0131\u18b7\n\u0131\f\u0131\u000e\u0131\u18ba\u000b\u0131\u0003\u0132",
+ "\u0003\u0132\u0003\u0133\u0003\u0133\u0003\u0133\u0003\u0133\u0003\u0133",
+ "\u0003\u0133\u0003\u0133\u0003\u0133\u0003\u0133\u0003\u0133\u0003\u0133",
+ "\u0003\u0133\u0003\u0133\u0003\u0133\u0005\u0133\u18cc\n\u0133\u0003",
+ "\u0134\u0003\u0134\u0003\u0134\u0003\u0134\u0003\u0134\u0003\u0134\u0003",
+ "\u0134\u0005\u0134\u18d5\n\u0134\u0003\u0135\u0003\u0135\u0003\u0135",
+ "\u0003\u0135\u0003\u0135\u0003\u0135\u0003\u0135\u0005\u0135\u18de\n",
+ "\u0135\u0003\u0136\u0003\u0136\u0003\u0137\u0003\u0137\u0003\u0138\u0003",
+ "\u0138\u0003\u0139\u0003\u0139\u0003\u013a\u0003\u013a\u0003\u013b\u0003",
+ "\u013b\u0003\u013c\u0003\u013c\u0003\u013d\u0003\u013d\u0003\u013d\u0002",
+ "\u0005\u025c\u025e\u0260\u013e\u0002\u0004\u0006\b\n\f\u000e\u0010\u0012",
+ "\u0014\u0016\u0018\u001a\u001c\u001e \"$&(*,.02468:<>@BDFHJLNPRTVXZ",
+ "\\^`bdfhjlnprtvxz|~\u0080\u0082\u0084\u0086\u0088\u008a\u008c\u008e",
+ "\u0090\u0092\u0094\u0096\u0098\u009a\u009c\u009e\u00a0\u00a2\u00a4\u00a6",
+ "\u00a8\u00aa\u00ac\u00ae\u00b0\u00b2\u00b4\u00b6\u00b8\u00ba\u00bc\u00be",
+ "\u00c0\u00c2\u00c4\u00c6\u00c8\u00ca\u00cc\u00ce\u00d0\u00d2\u00d4\u00d6",
+ "\u00d8\u00da\u00dc\u00de\u00e0\u00e2\u00e4\u00e6\u00e8\u00ea\u00ec\u00ee",
+ "\u00f0\u00f2\u00f4\u00f6\u00f8\u00fa\u00fc\u00fe\u0100\u0102\u0104\u0106",
+ "\u0108\u010a\u010c\u010e\u0110\u0112\u0114\u0116\u0118\u011a\u011c\u011e",
+ "\u0120\u0122\u0124\u0126\u0128\u012a\u012c\u012e\u0130\u0132\u0134\u0136",
+ "\u0138\u013a\u013c\u013e\u0140\u0142\u0144\u0146\u0148\u014a\u014c\u014e",
+ "\u0150\u0152\u0154\u0156\u0158\u015a\u015c\u015e\u0160\u0162\u0164\u0166",
+ "\u0168\u016a\u016c\u016e\u0170\u0172\u0174\u0176\u0178\u017a\u017c\u017e",
+ "\u0180\u0182\u0184\u0186\u0188\u018a\u018c\u018e\u0190\u0192\u0194\u0196",
+ "\u0198\u019a\u019c\u019e\u01a0\u01a2\u01a4\u01a6\u01a8\u01aa\u01ac\u01ae",
+ "\u01b0\u01b2\u01b4\u01b6\u01b8\u01ba\u01bc\u01be\u01c0\u01c2\u01c4\u01c6",
+ "\u01c8\u01ca\u01cc\u01ce\u01d0\u01d2\u01d4\u01d6\u01d8\u01da\u01dc\u01de",
+ "\u01e0\u01e2\u01e4\u01e6\u01e8\u01ea\u01ec\u01ee\u01f0\u01f2\u01f4\u01f6",
+ "\u01f8\u01fa\u01fc\u01fe\u0200\u0202\u0204\u0206\u0208\u020a\u020c\u020e",
+ "\u0210\u0212\u0214\u0216\u0218\u021a\u021c\u021e\u0220\u0222\u0224\u0226",
+ "\u0228\u022a\u022c\u022e\u0230\u0232\u0234\u0236\u0238\u023a\u023c\u023e",
+ "\u0240\u0242\u0244\u0246\u0248\u024a\u024c\u024e\u0250\u0252\u0254\u0256",
+ "\u0258\u025a\u025c\u025e\u0260\u0262\u0264\u0266\u0268\u026a\u026c\u026e",
+ "\u0270\u0272\u0274\u0276\u0278\u0002\u0080\u0004\u0002%%\u0089\u0089",
+ "\u0004\u0002\u01c5\u01c5\u01ca\u01ca\u0005\u0002@@\u0090\u0090\u00a5",
+ "\u00a5\u0005\u0002((\u0142\u0142\u0181\u0181\u0006\u0002((\u0162\u0162",
+ "\u01c4\u01c4\u020a\u020a\u0004\u0002\u01bb\u01bb\u040d\u040d\u0004\u0002",
+ "HH\u0081\u0081\u0004\u0002\u000f\u000f\u0112\u0112\u0005\u0002**NN\u00a8",
+ "\u00a8\u0004\u0002\u016f\u016f\u01dc\u01dc\u0005\u0002\u01b3\u01b3\u0230",
+ "\u0230\u0237\u0237\u0004\u0002\u0149\u0149\u0186\u0186\u0004\u0002\u0124",
+ "\u0124\u0194\u0194\u0004\u0002\u0122\u0122\u0178\u0178\u0005\u0002I",
+ "IMMrr\u0005\u0002((\u0153\u0153\u016d\u016d\u0005\u0002((\u014f\u014f",
+ "\u02ac\u02ac\u0004\u0002\u0224\u0224\u0245\u0245\u0004\u0002JJTT\u0005",
+ "\u0002\u0171\u0171\u01d3\u01d3\u020c\u020c\u0004\u0002@@\u0090\u0090",
+ "\u0003\u0002\u0128\u0129\u0003\u0002\u0403\u0404\u0004\u0002\u040d\u040d",
+ "\u0415\u0415\u0005\u0002\u016c\u016c\u018f\u018f\u01c2\u01c2\u0004\u0002",
+ "((\u0403\u0404\b\u0002((\u0135\u0135\u0137\u0137\u0153\u0153\u016d\u016d",
+ "\u01e9\u01e9\u0003\u0002\u0404\u0405\u0004\u0002\u0007\u000711\u0004",
+ "\u0002\u0185\u0185\u0246\u0246\u0004\u0002\r\r\u009f\u009f\u0004\u0002",
+ "\u00b0\u00b0\u0249\u0249\u0004\u0002\u0014\u0014\u0084\u0084\u0005\u0002",
+ "))FFaa\u0004\u0002aa\u0139\u0139\u0004\u0002\u0130\u0130\u0169\u0169",
+ "\u0004\u0002]]\u0202\u0202\u0004\u0002))aa\u0004\u0002\b\b//\u0004\u0002",
+ "\u00ac\u00ac\u0242\u0242\u0006\u0002\u016c\u016c\u018f\u018f\u01c1\u01c1",
+ "\u01df\u01df\u0004\u0002\u016c\u016c\u01c1\u01c1\u0004\u0002\u000e\u000e",
+ "++\u0005\u0002==HH\u00aa\u00aa\u0004\u0002!!LL\u0004\u0002YY\u0087\u0087",
+ "\u0004\u0002\b\b/0\u0003\u0002\u0219\u021a\u0004\u0002\u0174\u0174\u0208",
+ "\u0208\u0004\u0002\u00d2\u00d2\u0197\u0197\u0007\u0002bb\u019c\u019d",
+ "\u019f\u019f\u01a3\u01ab\u01eb\u01eb\u0006\u0002\u0199\u019a\u019e\u019e",
+ "\u01a0\u01a1\u01ec\u01ec\u0005\u0002cc\u0198\u0198\u01a2\u01a2\u0004",
+ "\u0002\u0188\u0188\u021b\u021b\u0004\u0002\u0215\u0215\u0217\u0217\u0004",
+ "\u0002\u011c\u011c\u021c\u021c\u0004\u0002SS\u01fa\u01fa\u0004\u0002",
+ "11\u0147\u0147\u0005\u0002\u001e\u001e88\u00a3\u00a3\u0005\u0002ww\u009c",
+ "\u009c\u0172\u0172\u0004\u0002__\u00a6\u00a6\u0004\u0002\u012c\u012c",
+ "\u020d\u020d\u0004\u0002&&\u0244\u0244\u0004\u0002ii\u0194\u0194\u0004",
+ "\u0002\u0165\u0165\u01e5\u01e5\u0006\u0002\u00be\u00be\u00c0\u00c0\u00c6",
+ "\u00c6\u0225\u0225\u0004\u0002\u03e4\u03e4\u03f5\u03f5\u0004\u0002\u011d",
+ "\u011d\u01ed\u01ed\u0004\u0002??II\b\u0002ww\u009c\u009c\u00a1\u00a1",
+ "\u015e\u015e\u0172\u0172\u0244\u0244\u0004\u0002\u01ba\u01ba\u0221\u0221",
+ "\u0004\u0002\u015b\u015b\u0248\u0248\u0004\u0002ww\u0172\u0172\u0005",
+ "\u0002JJUU\u017f\u017f\u0005\u0002\u0174\u0174\u0194\u0194\u0208\u0208",
+ "\u0004\u0002\u0221\u0221\u0243\u0243\u0004\u0002\u013a\u013a\u01e4\u01e4",
+ "\b\u0002\u00d2\u00d2\u0158\u0158\u015a\u015a\u0173\u0173\u01ea\u01ea",
+ "\u020e\u020e\u0004\u0002+,99\u0005\u0002\u0165\u0165\u01d5\u01d5\u0308",
+ "\u0308\u0004\u0002\u018c\u018c\u0232\u0232\f\u0002\u012b\u012b\u0132",
+ "\u0132\u013c\u013e\u0144\u0144\u01b4\u01b4\u01bc\u01bc\u0226\u0226\u022d",
+ "\u022d\u02d8\u02d8\u037e\u037e\u0004\u0002\"\"\u0099\u0099\u0004\u0002",
+ "kk\u0376\u0376\r\u0002\u012b\u012b\u0132\u0132\u013c\u013e\u0144\u0144",
+ "\u01b4\u01b4\u01bc\u01bc\u01fb\u01fb\u0226\u0226\u022d\u022d\u02d8\u02d8",
+ "\u037e\u037e\u0005\u0002\u040d\u040d\u0415\u0415\u0417\u0417\u0003\u0002",
+ "\u0418\u0419\u0005\u0002\u02a7\u02b2\u040d\u040d\u0415\u0416\u0004\u0002",
+ "\u0403\u0405\u040e\u040e\u0004\u0002::\u00a2\u00a2\u0004\u0002jj\u0411",
+ "\u0411\u0007\u0002\u0018\u0018\u00ce\u00d0\u00d7\u00d7\u00d9\u00dc\u01bf",
+ "\u01bf\u0004\u0002\u0018\u0018\u00cf\u00cf\u0004\u0002\u0018\u0018\u00ce",
+ "\u00ce\u0003\u0002\u00b4\u00bf\u0004\u0002\u00a7\u00a7\u020b\u020b\u0004",
+ "\u0002\u00c3\u00c8\u016d\u016d\u0007\u0002\u00c9\u00c9\u00d4\u00d6\u00d8",
+ "\u00d8\u00df\u00df\u0120\u0121\u0005\u0002\u00ca\u00cd\u00d2\u00d3\u011e",
+ "\u011e\u0004\u0002\u008c\u008c\u00dd\u00dd\u0004\u0002\u018c\u018c\u02b7",
+ "\u02bf\u0004\u0002\u00d2\u00d2\u01bf\u01bf\u0005\u0002\u00c9\u00ca\u00cc",
+ "\u00cc\u018c\u018c\u0004\u0002\u00ff\u0100\u0106\u0106\u0004\u0002#",
+ "#\u00fd\u0100\u0003\u0002\u0109\u010a\u0005\u0002\u0011\u0011WW\u00a0",
+ "\u00a0\u0004\u0002\u00ce\u00ce\u00d2\u00d2\u0004\u0002\u00c9\u00ca\u00cc",
+ "\u00cc\u0005\u0002\u000e\u000e++\u0374\u0374\u0005\u0002\u00ed\u00ed",
+ "\u00f3\u00f4\u00f9\u00f9\u0005\u0002\u00ee\u00f0\u00f5\u00f8\u00fa\u00fc",
+ "\u0004\u0002\u01c8\u01c8\u01d6\u01d6\u0004\u0002hh\u03f8\u03f8\u0005",
+ "\u0002::\u00a2\u00a2\u023b\u023b\u0004\u0002}}\u0088\u0088\u0005\u0002",
+ "\b\b\u0115\u0115\u0211\u0211\u0006\u0002hh\u03f0\u03f0\u03f2\u03f2\u03f8",
+ "\u03f9\u0003\u0002\u03ed\u03f4\u0003\u0002\u027f\u02a6\u0003\u0002\u02b3",
+ "\u02b6\u0003\u0002\u025c\u0264\u0003\u0002\u0254\u025b\u0005\u0002\u00c9",
+ "\u00cd\u00da\u00da\u00dd\u00dd\u0010\u0002\"\"..kk\u0099\u0099\u00df",
+ "\u00df\u0110\u0184\u0186\u0223\u0225\u0244\u0247\u024e\u0253\u0253\u0266",
+ "\u027e\u02ac\u02ac\u02d8\u02d8\u037e\u037e\u0012\u0002%%YY\u0087\u0087",
+ "\u00c9\u00cb\u00cd\u00cd\u00eb\u00ec\u00f1\u00f1\u0108\u0108\u0185\u0185",
+ "\u0246\u0246\u0254\u025b\u0278\u0278\u02b7\u02b7\u02ba\u02d7\u02d9\u037d",
+ "\u037f\u03e3\u0002\u1d51\u0002\u027a\u0003\u0002\u0002\u0002\u0004\u027e",
+ "\u0003\u0002\u0002\u0002\u0006\u028f\u0003\u0002\u0002\u0002\b\u02a3",
+ "\u0003\u0002\u0002\u0002\n\u02a5\u0003\u0002\u0002\u0002\f\u02ca\u0003",
+ "\u0002\u0002\u0002\u000e\u02d6\u0003\u0002\u0002\u0002\u0010\u02e1\u0003",
+ "\u0002\u0002\u0002\u0012\u02f2\u0003\u0002\u0002\u0002\u0014\u02f7\u0003",
+ "\u0002\u0002\u0002\u0016\u0303\u0003\u0002\u0002\u0002\u0018\u031e\u0003",
+ "\u0002\u0002\u0002\u001a\u0327\u0003\u0002\u0002\u0002\u001c\u0329\u0003",
+ "\u0002\u0002\u0002\u001e\u0335\u0003\u0002\u0002\u0002 \u0353\u0003",
+ "\u0002\u0002\u0002\"\u0377\u0003\u0002\u0002\u0002$\u03aa\u0003\u0002",
+ "\u0002\u0002&\u03c4\u0003\u0002\u0002\u0002(\u03e2\u0003\u0002\u0002",
+ "\u0002*\u0443\u0003\u0002\u0002\u0002,\u0445\u0003\u0002\u0002\u0002",
+ ".\u0457\u0003\u0002\u0002\u00020\u0494\u0003\u0002\u0002\u00022\u04a7",
+ "\u0003\u0002\u0002\u00024\u04e2\u0003\u0002\u0002\u00026\u04e4\u0003",
+ "\u0002\u0002\u00028\u0510\u0003\u0002\u0002\u0002:\u0516\u0003\u0002",
+ "\u0002\u0002<\u0518\u0003\u0002\u0002\u0002>\u052d\u0003\u0002\u0002",
+ "\u0002@\u0534\u0003\u0002\u0002\u0002B\u0536\u0003\u0002\u0002\u0002",
+ "D\u0546\u0003\u0002\u0002\u0002F\u0549\u0003\u0002\u0002\u0002H\u054e",
+ "\u0003\u0002\u0002\u0002J\u0568\u0003\u0002\u0002\u0002L\u0578\u0003",
+ "\u0002\u0002\u0002N\u057a\u0003\u0002\u0002\u0002P\u058a\u0003\u0002",
+ "\u0002\u0002R\u058c\u0003\u0002\u0002\u0002T\u05c6\u0003\u0002\u0002",
+ "\u0002V\u060d\u0003\u0002\u0002\u0002X\u060f\u0003\u0002\u0002\u0002",
+ "Z\u062b\u0003\u0002\u0002\u0002\\\u0633\u0003\u0002\u0002\u0002^\u0651",
+ "\u0003\u0002\u0002\u0002`\u06e3\u0003\u0002\u0002\u0002b\u06e5\u0003",
+ "\u0002\u0002\u0002d\u06e8\u0003\u0002\u0002\u0002f\u0732\u0003\u0002",
+ "\u0002\u0002h\u0749\u0003\u0002\u0002\u0002j\u07ce\u0003\u0002\u0002",
+ "\u0002l\u07d3\u0003\u0002\u0002\u0002n\u07d5\u0003\u0002\u0002\u0002",
+ "p\u07df\u0003\u0002\u0002\u0002r\u0814\u0003\u0002\u0002\u0002t\u0828",
+ "\u0003\u0002\u0002\u0002v\u082a\u0003\u0002\u0002\u0002x\u084d\u0003",
+ "\u0002\u0002\u0002z\u0856\u0003\u0002\u0002\u0002|\u085d\u0003\u0002",
+ "\u0002\u0002~\u0874\u0003\u0002\u0002\u0002\u0080\u087d\u0003\u0002",
+ "\u0002\u0002\u0082\u088c\u0003\u0002\u0002\u0002\u0084\u08a2\u0003\u0002",
+ "\u0002\u0002\u0086\u08b6\u0003\u0002\u0002\u0002\u0088\u0a41\u0003\u0002",
+ "\u0002\u0002\u008a\u0a43\u0003\u0002\u0002\u0002\u008c\u0a4a\u0003\u0002",
+ "\u0002\u0002\u008e\u0a51\u0003\u0002\u0002\u0002\u0090\u0a68\u0003\u0002",
+ "\u0002\u0002\u0092\u0a70\u0003\u0002\u0002\u0002\u0094\u0a77\u0003\u0002",
+ "\u0002\u0002\u0096\u0a7e\u0003\u0002\u0002\u0002\u0098\u0a85\u0003\u0002",
+ "\u0002\u0002\u009a\u0a91\u0003\u0002\u0002\u0002\u009c\u0a9b\u0003\u0002",
+ "\u0002\u0002\u009e\u0aa2\u0003\u0002\u0002\u0002\u00a0\u0ab2\u0003\u0002",
+ "\u0002\u0002\u00a2\u0abc\u0003\u0002\u0002\u0002\u00a4\u0ac0\u0003\u0002",
+ "\u0002\u0002\u00a6\u0ac6\u0003\u0002\u0002\u0002\u00a8\u0ad2\u0003\u0002",
+ "\u0002\u0002\u00aa\u0ad4\u0003\u0002\u0002\u0002\u00ac\u0adb\u0003\u0002",
+ "\u0002\u0002\u00ae\u0add\u0003\u0002\u0002\u0002\u00b0\u0b10\u0003\u0002",
+ "\u0002\u0002\u00b2\u0b5a\u0003\u0002\u0002\u0002\u00b4\u0b95\u0003\u0002",
+ "\u0002\u0002\u00b6\u0bed\u0003\u0002\u0002\u0002\u00b8\u0bf1\u0003\u0002",
+ "\u0002\u0002\u00ba\u0c05\u0003\u0002\u0002\u0002\u00bc\u0c07\u0003\u0002",
+ "\u0002\u0002\u00be\u0c0f\u0003\u0002\u0002\u0002\u00c0\u0c17\u0003\u0002",
+ "\u0002\u0002\u00c2\u0c19\u0003\u0002\u0002\u0002\u00c4\u0c37\u0003\u0002",
+ "\u0002\u0002\u00c6\u0c6e\u0003\u0002\u0002\u0002\u00c8\u0c77\u0003\u0002",
+ "\u0002\u0002\u00ca\u0c8b\u0003\u0002\u0002\u0002\u00cc\u0c97\u0003\u0002",
+ "\u0002\u0002\u00ce\u0c9b\u0003\u0002\u0002\u0002\u00d0\u0cbc\u0003\u0002",
+ "\u0002\u0002\u00d2\u0cd1\u0003\u0002\u0002\u0002\u00d4\u0cdb\u0003\u0002",
+ "\u0002\u0002\u00d6\u0cdf\u0003\u0002\u0002\u0002\u00d8\u0cf8\u0003\u0002",
+ "\u0002\u0002\u00da\u0d22\u0003\u0002\u0002\u0002\u00dc\u0d24\u0003\u0002",
+ "\u0002\u0002\u00de\u0d33\u0003\u0002\u0002\u0002\u00e0\u0d61\u0003\u0002",
+ "\u0002\u0002\u00e2\u0d6b\u0003\u0002\u0002\u0002\u00e4\u0d75\u0003\u0002",
+ "\u0002\u0002\u00e6\u0d9f\u0003\u0002\u0002\u0002\u00e8\u0da1\u0003\u0002",
+ "\u0002\u0002\u00ea\u0db2\u0003\u0002\u0002\u0002\u00ec\u0db8\u0003\u0002",
+ "\u0002\u0002\u00ee\u0dc8\u0003\u0002\u0002\u0002\u00f0\u0dcc\u0003\u0002",
+ "\u0002\u0002\u00f2\u0df2\u0003\u0002\u0002\u0002\u00f4\u0e18\u0003\u0002",
+ "\u0002\u0002\u00f6\u0e26\u0003\u0002\u0002\u0002\u00f8\u0e2e\u0003\u0002",
+ "\u0002\u0002\u00fa\u0e30\u0003\u0002\u0002\u0002\u00fc\u0e4a\u0003\u0002",
+ "\u0002\u0002\u00fe\u0e4e\u0003\u0002\u0002\u0002\u0100\u0e5d\u0003\u0002",
+ "\u0002\u0002\u0102\u0e5f\u0003\u0002\u0002\u0002\u0104\u0e6b\u0003\u0002",
+ "\u0002\u0002\u0106\u0e6f\u0003\u0002\u0002\u0002\u0108\u0e80\u0003\u0002",
+ "\u0002\u0002\u010a\u0e91\u0003\u0002\u0002\u0002\u010c\u0e94\u0003\u0002",
+ "\u0002\u0002\u010e\u0e9e\u0003\u0002\u0002\u0002\u0110\u0ea2\u0003\u0002",
+ "\u0002\u0002\u0112\u0eac\u0003\u0002\u0002\u0002\u0114\u0eaf\u0003\u0002",
+ "\u0002\u0002\u0116\u0eb4\u0003\u0002\u0002\u0002\u0118\u0ec8\u0003\u0002",
+ "\u0002\u0002\u011a\u0eca\u0003\u0002\u0002\u0002\u011c\u0edb\u0003\u0002",
+ "\u0002\u0002\u011e\u0ee4\u0003\u0002\u0002\u0002\u0120\u0eed\u0003\u0002",
+ "\u0002\u0002\u0122\u0eef\u0003\u0002\u0002\u0002\u0124\u0efd\u0003\u0002",
+ "\u0002\u0002\u0126\u0f08\u0003\u0002\u0002\u0002\u0128\u0f11\u0003\u0002",
+ "\u0002\u0002\u012a\u0f14\u0003\u0002\u0002\u0002\u012c\u0f1c\u0003\u0002",
+ "\u0002\u0002\u012e\u0f35\u0003\u0002\u0002\u0002\u0130\u0f41\u0003\u0002",
+ "\u0002\u0002\u0132\u0f44\u0003\u0002\u0002\u0002\u0134\u0f64\u0003\u0002",
+ "\u0002\u0002\u0136\u0f66\u0003\u0002\u0002\u0002\u0138\u0f68\u0003\u0002",
+ "\u0002\u0002\u013a\u0f6a\u0003\u0002\u0002\u0002\u013c\u0f6c\u0003\u0002",
+ "\u0002\u0002\u013e\u0fa1\u0003\u0002\u0002\u0002\u0140\u0fa3\u0003\u0002",
+ "\u0002\u0002\u0142\u0fa9\u0003\u0002\u0002\u0002\u0144\u0fbd\u0003\u0002",
+ "\u0002\u0002\u0146\u0fcb\u0003\u0002\u0002\u0002\u0148\u0fd6\u0003\u0002",
+ "\u0002\u0002\u014a\u0fd8\u0003\u0002\u0002\u0002\u014c\u0fde\u0003\u0002",
+ "\u0002\u0002\u014e\u0fe8\u0003\u0002\u0002\u0002\u0150\u0fec\u0003\u0002",
+ "\u0002\u0002\u0152\u0ff3\u0003\u0002\u0002\u0002\u0154\u0ff7\u0003\u0002",
+ "\u0002\u0002\u0156\u0ffd\u0003\u0002\u0002\u0002\u0158\u1004\u0003\u0002",
+ "\u0002\u0002\u015a\u100a\u0003\u0002\u0002\u0002\u015c\u1010\u0003\u0002",
+ "\u0002\u0002\u015e\u1015\u0003\u0002\u0002\u0002\u0160\u1044\u0003\u0002",
+ "\u0002\u0002\u0162\u1059\u0003\u0002\u0002\u0002\u0164\u1072\u0003\u0002",
+ "\u0002\u0002\u0166\u1075\u0003\u0002\u0002\u0002\u0168\u107b\u0003\u0002",
+ "\u0002\u0002\u016a\u108b\u0003\u0002\u0002\u0002\u016c\u109a\u0003\u0002",
+ "\u0002\u0002\u016e\u10a0\u0003\u0002\u0002\u0002\u0170\u10be\u0003\u0002",
+ "\u0002\u0002\u0172\u10c0\u0003\u0002\u0002\u0002\u0174\u10c7\u0003\u0002",
+ "\u0002\u0002\u0176\u10d3\u0003\u0002\u0002\u0002\u0178\u10d9\u0003\u0002",
+ "\u0002\u0002\u017a\u10f2\u0003\u0002\u0002\u0002\u017c\u10f6\u0003\u0002",
+ "\u0002\u0002\u017e\u10fa\u0003\u0002\u0002\u0002\u0180\u1105\u0003\u0002",
+ "\u0002\u0002\u0182\u1143\u0003\u0002\u0002\u0002\u0184\u117b\u0003\u0002",
+ "\u0002\u0002\u0186\u117d\u0003\u0002\u0002\u0002\u0188\u118a\u0003\u0002",
+ "\u0002\u0002\u018a\u11bc\u0003\u0002\u0002\u0002\u018c\u11ce\u0003\u0002",
+ "\u0002\u0002\u018e\u1200\u0003\u0002\u0002\u0002\u0190\u1202\u0003\u0002",
+ "\u0002\u0002\u0192\u120f\u0003\u0002\u0002\u0002\u0194\u121a\u0003\u0002",
+ "\u0002\u0002\u0196\u1235\u0003\u0002\u0002\u0002\u0198\u123f\u0003\u0002",
+ "\u0002\u0002\u019a\u1249\u0003\u0002\u0002\u0002\u019c\u124b\u0003\u0002",
+ "\u0002\u0002\u019e\u1255\u0003\u0002\u0002\u0002\u01a0\u1258\u0003\u0002",
+ "\u0002\u0002\u01a2\u12a6\u0003\u0002\u0002\u0002\u01a4\u12b8\u0003\u0002",
+ "\u0002\u0002\u01a6\u12ba\u0003\u0002\u0002\u0002\u01a8\u12be\u0003\u0002",
+ "\u0002\u0002\u01aa\u12c5\u0003\u0002\u0002\u0002\u01ac\u12ce\u0003\u0002",
+ "\u0002\u0002\u01ae\u12d4\u0003\u0002\u0002\u0002\u01b0\u12db\u0003\u0002",
+ "\u0002\u0002\u01b2\u12f1\u0003\u0002\u0002\u0002\u01b4\u12f3\u0003\u0002",
+ "\u0002\u0002\u01b6\u12fe\u0003\u0002\u0002\u0002\u01b8\u1304\u0003\u0002",
+ "\u0002\u0002\u01ba\u133b\u0003\u0002\u0002\u0002\u01bc\u13d4\u0003\u0002",
+ "\u0002\u0002\u01be\u13e0\u0003\u0002\u0002\u0002\u01c0\u13ef\u0003\u0002",
+ "\u0002\u0002\u01c2\u13f5\u0003\u0002\u0002\u0002\u01c4\u1408\u0003\u0002",
+ "\u0002\u0002\u01c6\u1412\u0003\u0002\u0002\u0002\u01c8\u1420\u0003\u0002",
+ "\u0002\u0002\u01ca\u1422\u0003\u0002\u0002\u0002\u01cc\u1425\u0003\u0002",
+ "\u0002\u0002\u01ce\u143b\u0003\u0002\u0002\u0002\u01d0\u1447\u0003\u0002",
+ "\u0002\u0002\u01d2\u1450\u0003\u0002\u0002\u0002\u01d4\u145c\u0003\u0002",
+ "\u0002\u0002\u01d6\u1460\u0003\u0002\u0002\u0002\u01d8\u1462\u0003\u0002",
+ "\u0002\u0002\u01da\u148a\u0003\u0002\u0002\u0002\u01dc\u1491\u0003\u0002",
+ "\u0002\u0002\u01de\u1493\u0003\u0002\u0002\u0002\u01e0\u14aa\u0003\u0002",
+ "\u0002\u0002\u01e2\u14b0\u0003\u0002\u0002\u0002\u01e4\u14b8\u0003\u0002",
+ "\u0002\u0002\u01e6\u14bb\u0003\u0002\u0002\u0002\u01e8\u14be\u0003\u0002",
+ "\u0002\u0002\u01ea\u14d3\u0003\u0002\u0002\u0002\u01ec\u14e8\u0003\u0002",
+ "\u0002\u0002\u01ee\u14ee\u0003\u0002\u0002\u0002\u01f0\u1514\u0003\u0002",
+ "\u0002\u0002\u01f2\u1520\u0003\u0002\u0002\u0002\u01f4\u1522\u0003\u0002",
+ "\u0002\u0002\u01f6\u1528\u0003\u0002\u0002\u0002\u01f8\u152a\u0003\u0002",
+ "\u0002\u0002\u01fa\u1533\u0003\u0002\u0002\u0002\u01fc\u153e\u0003\u0002",
+ "\u0002\u0002\u01fe\u1540\u0003\u0002\u0002\u0002\u0200\u1546\u0003\u0002",
+ "\u0002\u0002\u0202\u154a\u0003\u0002\u0002\u0002\u0204\u154c\u0003\u0002",
+ "\u0002\u0002\u0206\u154e\u0003\u0002\u0002\u0002\u0208\u1560\u0003\u0002",
+ "\u0002\u0002\u020a\u1570\u0003\u0002\u0002\u0002\u020c\u1574\u0003\u0002",
+ "\u0002\u0002\u020e\u1579\u0003\u0002\u0002\u0002\u0210\u1584\u0003\u0002",
+ "\u0002\u0002\u0212\u1589\u0003\u0002\u0002\u0002\u0214\u158b\u0003\u0002",
+ "\u0002\u0002\u0216\u158f\u0003\u0002\u0002\u0002\u0218\u15a8\u0003\u0002",
+ "\u0002\u0002\u021a\u15aa\u0003\u0002\u0002\u0002\u021c\u15ad\u0003\u0002",
+ "\u0002\u0002\u021e\u15b2\u0003\u0002\u0002\u0002\u0220\u15c2\u0003\u0002",
+ "\u0002\u0002\u0222\u1643\u0003\u0002\u0002\u0002\u0224\u1645\u0003\u0002",
+ "\u0002\u0002\u0226\u1669\u0003\u0002\u0002\u0002\u0228\u166b\u0003\u0002",
+ "\u0002\u0002\u022a\u166f\u0003\u0002\u0002\u0002\u022c\u1675\u0003\u0002",
+ "\u0002\u0002\u022e\u167d\u0003\u0002\u0002\u0002\u0230\u1685\u0003\u0002",
+ "\u0002\u0002\u0232\u168d\u0003\u0002\u0002\u0002\u0234\u1698\u0003\u0002",
+ "\u0002\u0002\u0236\u16a0\u0003\u0002\u0002\u0002\u0238\u16a8\u0003\u0002",
+ "\u0002\u0002\u023a\u16b0\u0003\u0002\u0002\u0002\u023c\u16b8\u0003\u0002",
+ "\u0002\u0002\u023e\u16cb\u0003\u0002\u0002\u0002\u0240\u16db\u0003\u0002",
+ "\u0002\u0002\u0242\u16df\u0003\u0002\u0002\u0002\u0244\u16e1\u0003\u0002",
+ "\u0002\u0002\u0246\u16e4\u0003\u0002\u0002\u0002\u0248\u16f9\u0003\u0002",
+ "\u0002\u0002\u024a\u1798\u0003\u0002\u0002\u0002\u024c\u179a\u0003\u0002",
+ "\u0002\u0002\u024e\u17ad\u0003\u0002\u0002\u0002\u0250\u17af\u0003\u0002",
+ "\u0002\u0002\u0252\u17eb\u0003\u0002\u0002\u0002\u0254\u1804\u0003\u0002",
+ "\u0002\u0002\u0256\u1806\u0003\u0002\u0002\u0002\u0258\u180f\u0003\u0002",
+ "\u0002\u0002\u025a\u1821\u0003\u0002\u0002\u0002\u025c\u182e\u0003\u0002",
+ "\u0002\u0002\u025e\u1839\u0003\u0002\u0002\u0002\u0260\u18a9\u0003\u0002",
+ "\u0002\u0002\u0262\u18bb\u0003\u0002\u0002\u0002\u0264\u18cb\u0003\u0002",
+ "\u0002\u0002\u0266\u18d4\u0003\u0002\u0002\u0002\u0268\u18dd\u0003\u0002",
+ "\u0002\u0002\u026a\u18df\u0003\u0002\u0002\u0002\u026c\u18e1\u0003\u0002",
+ "\u0002\u0002\u026e\u18e3\u0003\u0002\u0002\u0002\u0270\u18e5\u0003\u0002",
+ "\u0002\u0002\u0272\u18e7\u0003\u0002\u0002\u0002\u0274\u18e9\u0003\u0002",
+ "\u0002\u0002\u0276\u18eb\u0003\u0002\u0002\u0002\u0278\u18ed\u0003\u0002",
+ "\u0002\u0002\u027a\u027b\u0005\u0004\u0003\u0002\u027b\u027c\u0007\u0002",
+ "\u0002\u0003\u027c\u0003\u0003\u0002\u0002\u0002\u027d\u027f\u0005\u0006",
+ "\u0004\u0002\u027e\u027d\u0003\u0002\u0002\u0002\u027e\u027f\u0003\u0002",
+ "\u0002\u0002\u027f\u0281\u0003\u0002\u0002\u0002\u0280\u0282\u0007\u03f1",
+ "\u0002\u0002\u0281\u0280\u0003\u0002\u0002\u0002\u0281\u0282\u0003\u0002",
+ "\u0002\u0002\u0282\u0283\u0003\u0002\u0002\u0002\u0283\u0284\u0007\u0002",
+ "\u0002\u0003\u0284\u0005\u0003\u0002\u0002\u0002\u0285\u0287\u0005\b",
+ "\u0005\u0002\u0286\u0288\u0007\u03f1\u0002\u0002\u0287\u0286\u0003\u0002",
+ "\u0002\u0002\u0287\u0288\u0003\u0002\u0002\u0002\u0288\u028a\u0003\u0002",
+ "\u0002\u0002\u0289\u028b\u0007\u0401\u0002\u0002\u028a\u0289\u0003\u0002",
+ "\u0002\u0002\u028a\u028b\u0003\u0002\u0002\u0002\u028b\u028e\u0003\u0002",
+ "\u0002\u0002\u028c\u028e\u0005\n\u0006\u0002\u028d\u0285\u0003\u0002",
+ "\u0002\u0002\u028d\u028c\u0003\u0002\u0002\u0002\u028e\u0291\u0003\u0002",
+ "\u0002\u0002\u028f\u028d\u0003\u0002\u0002\u0002\u028f\u0290\u0003\u0002",
+ "\u0002\u0002\u0290\u029a\u0003\u0002\u0002\u0002\u0291\u028f\u0003\u0002",
+ "\u0002\u0002\u0292\u0297\u0005\b\u0005\u0002\u0293\u0295\u0007\u03f1",
+ "\u0002\u0002\u0294\u0293\u0003\u0002\u0002\u0002\u0294\u0295\u0003\u0002",
+ "\u0002\u0002\u0295\u0296\u0003\u0002\u0002\u0002\u0296\u0298\u0007\u0401",
+ "\u0002\u0002\u0297\u0294\u0003\u0002\u0002\u0002\u0297\u0298\u0003\u0002",
+ "\u0002\u0002\u0298\u029b\u0003\u0002\u0002\u0002\u0299\u029b\u0005\n",
+ "\u0006\u0002\u029a\u0292\u0003\u0002\u0002\u0002\u029a\u0299\u0003\u0002",
+ "\u0002\u0002\u029b\u0007\u0003\u0002\u0002\u0002\u029c\u02a4\u0005\f",
+ "\u0007\u0002\u029d\u02a4\u0005\u000e\b\u0002\u029e\u02a4\u0005\u0010",
+ "\t\u0002\u029f\u02a4\u0005\u0012\n\u0002\u02a0\u02a4\u0005\u0014\u000b",
+ "\u0002\u02a1\u02a4\u0005\u0018\r\u0002\u02a2\u02a4\u0005\u001a\u000e",
+ "\u0002\u02a3\u029c\u0003\u0002\u0002\u0002\u02a3\u029d\u0003\u0002\u0002",
+ "\u0002\u02a3\u029e\u0003\u0002\u0002\u0002\u02a3\u029f\u0003\u0002\u0002",
+ "\u0002\u02a3\u02a0\u0003\u0002\u0002\u0002\u02a3\u02a1\u0003\u0002\u0002",
+ "\u0002\u02a3\u02a2\u0003\u0002\u0002\u0002\u02a4\t\u0003\u0002\u0002",
+ "\u0002\u02a5\u02a6\u0007\u0401\u0002\u0002\u02a6\u000b\u0003\u0002\u0002",
+ "\u0002\u02a7\u02cb\u0005\u001c\u000f\u0002\u02a8\u02cb\u0005\u001e\u0010",
+ "\u0002\u02a9\u02cb\u0005 \u0011\u0002\u02aa\u02cb\u0005\"\u0012\u0002",
+ "\u02ab\u02cb\u0005$\u0013\u0002\u02ac\u02cb\u0005&\u0014\u0002\u02ad",
+ "\u02cb\u0005(\u0015\u0002\u02ae\u02cb\u0005*\u0016\u0002\u02af\u02cb",
+ "\u0005,\u0017\u0002\u02b0\u02cb\u0005.\u0018\u0002\u02b1\u02cb\u0005",
+ "0\u0019\u0002\u02b2\u02cb\u00052\u001a\u0002\u02b3\u02cb\u0005t;\u0002",
+ "\u02b4\u02cb\u0005v<\u0002\u02b5\u02cb\u0005x=\u0002\u02b6\u02cb\u0005",
+ "z>\u0002\u02b7\u02cb\u0005|?\u0002\u02b8\u02cb\u0005~@\u0002\u02b9\u02cb",
+ "\u0005\u0080A\u0002\u02ba\u02cb\u0005\u0082B\u0002\u02bb\u02cb\u0005",
+ "\u0084C\u0002\u02bc\u02cb\u0005\u0086D\u0002\u02bd\u02cb\u0005\u008a",
+ "F\u0002\u02be\u02cb\u0005\u008cG\u0002\u02bf\u02cb\u0005\u008eH\u0002",
+ "\u02c0\u02cb\u0005\u0090I\u0002\u02c1\u02cb\u0005\u0092J\u0002\u02c2",
+ "\u02cb\u0005\u0094K\u0002\u02c3\u02cb\u0005\u0096L\u0002\u02c4\u02cb",
+ "\u0005\u0098M\u0002\u02c5\u02cb\u0005\u009aN\u0002\u02c6\u02cb\u0005",
+ "\u009cO\u0002\u02c7\u02cb\u0005\u009eP\u0002\u02c8\u02cb\u0005\u00a0",
+ "Q\u0002\u02c9\u02cb\u0005\u00a4S\u0002\u02ca\u02a7\u0003\u0002\u0002",
+ "\u0002\u02ca\u02a8\u0003\u0002\u0002\u0002\u02ca\u02a9\u0003\u0002\u0002",
+ "\u0002\u02ca\u02aa\u0003\u0002\u0002\u0002\u02ca\u02ab\u0003\u0002\u0002",
+ "\u0002\u02ca\u02ac\u0003\u0002\u0002\u0002\u02ca\u02ad\u0003\u0002\u0002",
+ "\u0002\u02ca\u02ae\u0003\u0002\u0002\u0002\u02ca\u02af\u0003\u0002\u0002",
+ "\u0002\u02ca\u02b0\u0003\u0002\u0002\u0002\u02ca\u02b1\u0003\u0002\u0002",
+ "\u0002\u02ca\u02b2\u0003\u0002\u0002\u0002\u02ca\u02b3\u0003\u0002\u0002",
+ "\u0002\u02ca\u02b4\u0003\u0002\u0002\u0002\u02ca\u02b5\u0003\u0002\u0002",
+ "\u0002\u02ca\u02b6\u0003\u0002\u0002\u0002\u02ca\u02b7\u0003\u0002\u0002",
+ "\u0002\u02ca\u02b8\u0003\u0002\u0002\u0002\u02ca\u02b9\u0003\u0002\u0002",
+ "\u0002\u02ca\u02ba\u0003\u0002\u0002\u0002\u02ca\u02bb\u0003\u0002\u0002",
+ "\u0002\u02ca\u02bc\u0003\u0002\u0002\u0002\u02ca\u02bd\u0003\u0002\u0002",
+ "\u0002\u02ca\u02be\u0003\u0002\u0002\u0002\u02ca\u02bf\u0003\u0002\u0002",
+ "\u0002\u02ca\u02c0\u0003\u0002\u0002\u0002\u02ca\u02c1\u0003\u0002\u0002",
+ "\u0002\u02ca\u02c2\u0003\u0002\u0002\u0002\u02ca\u02c3\u0003\u0002\u0002",
+ "\u0002\u02ca\u02c4\u0003\u0002\u0002\u0002\u02ca\u02c5\u0003\u0002\u0002",
+ "\u0002\u02ca\u02c6\u0003\u0002\u0002\u0002\u02ca\u02c7\u0003\u0002\u0002",
+ "\u0002\u02ca\u02c8\u0003\u0002\u0002\u0002\u02ca\u02c9\u0003\u0002\u0002",
+ "\u0002\u02cb\r\u0003\u0002\u0002\u0002\u02cc\u02d7\u0005\u00b6\\\u0002",
+ "\u02cd\u02d7\u0005\u00aeX\u0002\u02ce\u02d7\u0005\u00b8]\u0002\u02cf",
+ "\u02d7\u0005\u00a8U\u0002\u02d0\u02d7\u0005\u00b4[\u0002\u02d1\u02d7",
+ "\u0005\u00a6T\u0002\u02d2\u02d7\u0005\u00b0Y\u0002\u02d3\u02d7\u0005",
+ "\u00b2Z\u0002\u02d4\u02d7\u0005\u00aaV\u0002\u02d5\u02d7\u0005\u00ac",
+ "W\u0002\u02d6\u02cc\u0003\u0002\u0002\u0002\u02d6\u02cd\u0003\u0002",
+ "\u0002\u0002\u02d6\u02ce\u0003\u0002\u0002\u0002\u02d6\u02cf\u0003\u0002",
+ "\u0002\u0002\u02d6\u02d0\u0003\u0002\u0002\u0002\u02d6\u02d1\u0003\u0002",
+ "\u0002\u0002\u02d6\u02d2\u0003\u0002\u0002\u0002\u02d6\u02d3\u0003\u0002",
+ "\u0002\u0002\u02d6\u02d4\u0003\u0002\u0002\u0002\u02d6\u02d5\u0003\u0002",
+ "\u0002\u0002\u02d7\u000f\u0003\u0002\u0002\u0002\u02d8\u02e2\u0005\u0102",
+ "\u0082\u0002\u02d9\u02e2\u0005\u0104\u0083\u0002\u02da\u02e2\u0005\u0106",
+ "\u0084\u0002\u02db\u02e2\u0005\u0108\u0085\u0002\u02dc\u02e2\u0005\u010a",
+ "\u0086\u0002\u02dd\u02e2\u0005\u010c\u0087\u0002\u02de\u02e2\u0005\u010e",
+ "\u0088\u0002\u02df\u02e2\u0005\u0110\u0089\u0002\u02e0\u02e2\u0005\u0112",
+ "\u008a\u0002\u02e1\u02d8\u0003\u0002\u0002\u0002\u02e1\u02d9\u0003\u0002",
+ "\u0002\u0002\u02e1\u02da\u0003\u0002\u0002\u0002\u02e1\u02db\u0003\u0002",
+ "\u0002\u0002\u02e1\u02dc\u0003\u0002\u0002\u0002\u02e1\u02dd\u0003\u0002",
+ "\u0002\u0002\u02e1\u02de\u0003\u0002\u0002\u0002\u02e1\u02df\u0003\u0002",
+ "\u0002\u0002\u02e1\u02e0\u0003\u0002\u0002\u0002\u02e2\u0011\u0003\u0002",
+ "\u0002\u0002\u02e3\u02f3\u0005\u0122\u0092\u0002\u02e4\u02f3\u0005\u0124",
+ "\u0093\u0002\u02e5\u02f3\u0005\u0126\u0094\u0002\u02e6\u02f3\u0005\u0128",
+ "\u0095\u0002\u02e7\u02f3\u0005\u012a\u0096\u0002\u02e8\u02f3\u0005\u012c",
+ "\u0097\u0002\u02e9\u02f3\u0005\u012e\u0098\u0002\u02ea\u02f3\u0005\u0130",
+ "\u0099\u0002\u02eb\u02f3\u0005\u0132\u009a\u0002\u02ec\u02f3\u0005\u014a",
+ "\u00a6\u0002\u02ed\u02f3\u0005\u014c\u00a7\u0002\u02ee\u02f3\u0005\u014e",
+ "\u00a8\u0002\u02ef\u02f3\u0005\u0150\u00a9\u0002\u02f0\u02f3\u0005\u0152",
+ "\u00aa\u0002\u02f1\u02f3\u0005\u0154\u00ab\u0002\u02f2\u02e3\u0003\u0002",
+ "\u0002\u0002\u02f2\u02e4\u0003\u0002\u0002\u0002\u02f2\u02e5\u0003\u0002",
+ "\u0002\u0002\u02f2\u02e6\u0003\u0002\u0002\u0002\u02f2\u02e7\u0003\u0002",
+ "\u0002\u0002\u02f2\u02e8\u0003\u0002\u0002\u0002\u02f2\u02e9\u0003\u0002",
+ "\u0002\u0002\u02f2\u02ea\u0003\u0002\u0002\u0002\u02f2\u02eb\u0003\u0002",
+ "\u0002\u0002\u02f2\u02ec\u0003\u0002\u0002\u0002\u02f2\u02ed\u0003\u0002",
+ "\u0002\u0002\u02f2\u02ee\u0003\u0002\u0002\u0002\u02f2\u02ef\u0003\u0002",
+ "\u0002\u0002\u02f2\u02f0\u0003\u0002\u0002\u0002\u02f2\u02f1\u0003\u0002",
+ "\u0002\u0002\u02f3\u0013\u0003\u0002\u0002\u0002\u02f4\u02f8\u0005\u0156",
+ "\u00ac\u0002\u02f5\u02f8\u0005\u0158\u00ad\u0002\u02f6\u02f8\u0005\u015a",
+ "\u00ae\u0002\u02f7\u02f4\u0003\u0002\u0002\u0002\u02f7\u02f5\u0003\u0002",
+ "\u0002\u0002\u02f7\u02f6\u0003\u0002\u0002\u0002\u02f8\u0015\u0003\u0002",
+ "\u0002\u0002\u02f9\u0304\u0005\u015e\u00b0\u0002\u02fa\u0304\u0005\u0160",
+ "\u00b1\u0002\u02fb\u0304\u0005\u0162\u00b2\u0002\u02fc\u0304\u0005\u0166",
+ "\u00b4\u0002\u02fd\u0304\u0005\u0168\u00b5\u0002\u02fe\u0304\u0005\u016a",
+ "\u00b6\u0002\u02ff\u0304\u0005\u016e\u00b8\u0002\u0300\u0304\u0005\u0164",
+ "\u00b3\u0002\u0301\u0304\u0005\u016c\u00b7\u0002\u0302\u0304\u0005\u0170",
+ "\u00b9\u0002\u0303\u02f9\u0003\u0002\u0002\u0002\u0303\u02fa\u0003\u0002",
+ "\u0002\u0002\u0303\u02fb\u0003\u0002\u0002\u0002\u0303\u02fc\u0003\u0002",
+ "\u0002\u0002\u0303\u02fd\u0003\u0002\u0002\u0002\u0303\u02fe\u0003\u0002",
+ "\u0002\u0002\u0303\u02ff\u0003\u0002\u0002\u0002\u0303\u0300\u0003\u0002",
+ "\u0002\u0002\u0303\u0301\u0003\u0002\u0002\u0002\u0303\u0302\u0003\u0002",
+ "\u0002\u0002\u0304\u0017\u0003\u0002\u0002\u0002\u0305\u031f\u0005\u0182",
+ "\u00c2\u0002\u0306\u031f\u0005\u0184\u00c3\u0002\u0307\u031f\u0005\u0186",
+ "\u00c4\u0002\u0308\u031f\u0005\u0188\u00c5\u0002\u0309\u031f\u0005\u018a",
+ "\u00c6\u0002\u030a\u031f\u0005\u018c\u00c7\u0002\u030b\u031f\u0005\u018e",
+ "\u00c8\u0002\u030c\u031f\u0005\u0190\u00c9\u0002\u030d\u031f\u0005\u01a8",
+ "\u00d5\u0002\u030e\u031f\u0005\u01aa\u00d6\u0002\u030f\u031f\u0005\u01ac",
+ "\u00d7\u0002\u0310\u031f\u0005\u01ae\u00d8\u0002\u0311\u031f\u0005\u01b0",
+ "\u00d9\u0002\u0312\u031f\u0005\u01b4\u00db\u0002\u0313\u031f\u0005\u01b6",
+ "\u00dc\u0002\u0314\u031f\u0005\u01b8\u00dd\u0002\u0315\u031f\u0005\u01ba",
+ "\u00de\u0002\u0316\u031f\u0005\u01bc\u00df\u0002\u0317\u031f\u0005\u01ca",
+ "\u00e6\u0002\u0318\u031f\u0005\u01cc\u00e7\u0002\u0319\u031f\u0005\u01ce",
+ "\u00e8\u0002\u031a\u031f\u0005\u01d0\u00e9\u0002\u031b\u031f\u0005\u01d2",
+ "\u00ea\u0002\u031c\u031f\u0005\u01d4\u00eb\u0002\u031d\u031f\u0005\u01d6",
+ "\u00ec\u0002\u031e\u0305\u0003\u0002\u0002\u0002\u031e\u0306\u0003\u0002",
+ "\u0002\u0002\u031e\u0307\u0003\u0002\u0002\u0002\u031e\u0308\u0003\u0002",
+ "\u0002\u0002\u031e\u0309\u0003\u0002\u0002\u0002\u031e\u030a\u0003\u0002",
+ "\u0002\u0002\u031e\u030b\u0003\u0002\u0002\u0002\u031e\u030c\u0003\u0002",
+ "\u0002\u0002\u031e\u030d\u0003\u0002\u0002\u0002\u031e\u030e\u0003\u0002",
+ "\u0002\u0002\u031e\u030f\u0003\u0002\u0002\u0002\u031e\u0310\u0003\u0002",
+ "\u0002\u0002\u031e\u0311\u0003\u0002\u0002\u0002\u031e\u0312\u0003\u0002",
+ "\u0002\u0002\u031e\u0313\u0003\u0002\u0002\u0002\u031e\u0314\u0003\u0002",
+ "\u0002\u0002\u031e\u0315\u0003\u0002\u0002\u0002\u031e\u0316\u0003\u0002",
+ "\u0002\u0002\u031e\u0317\u0003\u0002\u0002\u0002\u031e\u0318\u0003\u0002",
+ "\u0002\u0002\u031e\u0319\u0003\u0002\u0002\u0002\u031e\u031a\u0003\u0002",
+ "\u0002\u0002\u031e\u031b\u0003\u0002\u0002\u0002\u031e\u031c\u0003\u0002",
+ "\u0002\u0002\u031e\u031d\u0003\u0002\u0002\u0002\u031f\u0019\u0003\u0002",
+ "\u0002\u0002\u0320\u0328\u0005\u01e0\u00f1\u0002\u0321\u0328\u0005\u01e2",
+ "\u00f2\u0002\u0322\u0328\u0005\u01e4\u00f3\u0002\u0323\u0328\u0005\u01e6",
+ "\u00f4\u0002\u0324\u0328\u0005\u01e8\u00f5\u0002\u0325\u0328\u0005\u01ea",
+ "\u00f6\u0002\u0326\u0328\u0005\u01ee\u00f8\u0002\u0327\u0320\u0003\u0002",
+ "\u0002\u0002\u0327\u0321\u0003\u0002\u0002\u0002\u0327\u0322\u0003\u0002",
+ "\u0002\u0002\u0327\u0323\u0003\u0002\u0002\u0002\u0327\u0324\u0003\u0002",
+ "\u0002\u0002\u0327\u0325\u0003\u0002\u0002\u0002\u0327\u0326\u0003\u0002",
+ "\u0002\u0002\u0328\u001b\u0003\u0002\u0002\u0002\u0329\u032a\u0007 ",
+ "\u0002\u0002\u032a\u032c\t\u0002\u0002\u0002\u032b\u032d\u0005\u0246",
+ "\u0124\u0002\u032c\u032b\u0003\u0002\u0002\u0002\u032c\u032d\u0003\u0002",
+ "\u0002\u0002\u032d\u032e\u0003\u0002\u0002\u0002\u032e\u0332\u0005\u020e",
+ "\u0108\u0002\u032f\u0331\u00054\u001b\u0002\u0330\u032f\u0003\u0002",
+ "\u0002\u0002\u0331\u0334\u0003\u0002\u0002\u0002\u0332\u0330\u0003\u0002",
+ "\u0002\u0002\u0332\u0333\u0003\u0002\u0002\u0002\u0333\u001d\u0003\u0002",
+ "\u0002\u0002\u0334\u0332\u0003\u0002\u0002\u0002\u0335\u0337\u0007 ",
+ "\u0002\u0002\u0336\u0338\u00056\u001c\u0002\u0337\u0336\u0003\u0002",
+ "\u0002\u0002\u0337\u0338\u0003\u0002\u0002\u0002\u0338\u0339\u0003\u0002",
+ "\u0002\u0002\u0339\u033b\u0007\u015e\u0002\u0002\u033a\u033c\u0005\u0246",
+ "\u0124\u0002\u033b\u033a\u0003\u0002\u0002\u0002\u033b\u033c\u0003\u0002",
+ "\u0002\u0002\u033c\u033d\u0003\u0002\u0002\u0002\u033d\u033e\u0005\u01f4",
+ "\u00fb\u0002\u033e\u033f\u0007l\u0002\u0002\u033f\u0340\u0007\u0205",
+ "\u0002\u0002\u0340\u0347\u00058\u001d\u0002\u0341\u0342\u0007l\u0002",
+ "\u0002\u0342\u0344\u0007\u0136\u0002\u0002\u0343\u0345\u0007h\u0002",
+ "\u0002\u0344\u0343\u0003\u0002\u0002\u0002\u0344\u0345\u0003\u0002\u0002",
+ "\u0002\u0345\u0346\u0003\u0002\u0002\u0002\u0346\u0348\u0007\u01de\u0002",
+ "\u0002\u0347\u0341\u0003\u0002\u0002\u0002\u0347\u0348\u0003\u0002\u0002",
+ "\u0002\u0348\u034a\u0003\u0002\u0002\u0002\u0349\u034b\u0005@!\u0002",
+ "\u034a\u0349\u0003\u0002\u0002\u0002\u034a\u034b\u0003\u0002\u0002\u0002",
+ "\u034b\u034e\u0003\u0002\u0002\u0002\u034c\u034d\u0007\u0133\u0002\u0002",
+ "\u034d\u034f\u0007\u040d\u0002\u0002\u034e\u034c\u0003\u0002\u0002\u0002",
+ "\u034e\u034f\u0003\u0002\u0002\u0002\u034f\u0350\u0003\u0002\u0002\u0002",
+ "\u0350\u0351\u0007\u0150\u0002\u0002\u0351\u0352\u0005\u015c\u00af\u0002",
+ "\u0352\u001f\u0003\u0002\u0002\u0002\u0353\u0355\u0007 \u0002\u0002",
+ "\u0354\u0356\t\u0003\u0002\u0002\u0355\u0354\u0003\u0002\u0002\u0002",
+ "\u0355\u0356\u0003\u0002\u0002\u0002\u0356\u0358\u0003\u0002\u0002\u0002",
+ "\u0357\u0359\t\u0004\u0002\u0002\u0358\u0357\u0003\u0002\u0002\u0002",
+ "\u0358\u0359\u0003\u0002\u0002\u0002\u0359\u035a\u0003\u0002\u0002\u0002",
+ "\u035a\u035b\u0007J\u0002\u0002\u035b\u035d\u0005\u020e\u0108\u0002",
+ "\u035c\u035e\u0005B\"\u0002\u035d\u035c\u0003\u0002\u0002\u0002\u035d",
+ "\u035e\u0003\u0002\u0002\u0002\u035e\u035f\u0003\u0002\u0002\u0002\u035f",
+ "\u0360\u0007l\u0002\u0002\u0360\u0361\u0005\u01f6\u00fc\u0002\u0361",
+ "\u0365\u0005\u0232\u011a\u0002\u0362\u0364\u0005D#\u0002\u0363\u0362",
+ "\u0003\u0002\u0002\u0002\u0364\u0367\u0003\u0002\u0002\u0002\u0365\u0363",
+ "\u0003\u0002\u0002\u0002\u0365\u0366\u0003\u0002\u0002\u0002\u0366\u0374",
+ "\u0003\u0002\u0002\u0002\u0367\u0365\u0003\u0002\u0002\u0002\u0368\u036a",
+ "\u0007\u0114\u0002\u0002\u0369\u036b\u0007\u03f5\u0002\u0002\u036a\u0369",
+ "\u0003\u0002\u0002\u0002\u036a\u036b\u0003\u0002\u0002\u0002\u036b\u036c",
+ "\u0003\u0002\u0002\u0002\u036c\u0373\t\u0005\u0002\u0002\u036d\u036f",
+ "\u0007_\u0002\u0002\u036e\u0370\u0007\u03f5\u0002\u0002\u036f\u036e",
+ "\u0003\u0002\u0002\u0002\u036f\u0370\u0003\u0002\u0002\u0002\u0370\u0371",
+ "\u0003\u0002\u0002\u0002\u0371\u0373\t\u0006\u0002\u0002\u0372\u0368",
+ "\u0003\u0002\u0002\u0002\u0372\u036d\u0003\u0002\u0002\u0002\u0373\u0376",
+ "\u0003\u0002\u0002\u0002\u0374\u0372\u0003\u0002\u0002\u0002\u0374\u0375",
+ "\u0003\u0002\u0002\u0002\u0375!\u0003\u0002\u0002\u0002\u0376\u0374",
+ "\u0003\u0002\u0002\u0002\u0377\u0378\u0007 \u0002\u0002\u0378\u0379",
+ "\u0007\u0195\u0002\u0002\u0379\u037a\u0007D\u0002\u0002\u037a\u037b",
+ "\u0005\u020e\u0108\u0002\u037b\u037c\u0007\u0007\u0002\u0002\u037c\u037d",
+ "\u0007\u0238\u0002\u0002\u037d\u0383\u0007\u040d\u0002\u0002\u037e\u0380",
+ "\u0007\u0180\u0002\u0002\u037f\u0381\u0007\u03f5\u0002\u0002\u0380\u037f",
+ "\u0003\u0002\u0002\u0002\u0380\u0381\u0003\u0002\u0002\u0002\u0381\u0382",
+ "\u0003\u0002\u0002\u0002\u0382\u0384\u0005\u0216\u010c\u0002\u0383\u037e",
+ "\u0003\u0002\u0002\u0002\u0383\u0384\u0003\u0002\u0002\u0002\u0384\u038a",
+ "\u0003\u0002\u0002\u0002\u0385\u0387\u0007\u0239\u0002\u0002\u0386\u0388",
+ "\u0007\u03f5\u0002\u0002\u0387\u0386\u0003\u0002\u0002\u0002\u0387\u0388",
+ "\u0003\u0002\u0002\u0002\u0388\u0389\u0003\u0002\u0002\u0002\u0389\u038b",
+ "\u0005\u0216\u010c\u0002\u038a\u0385\u0003\u0002\u0002\u0002\u038a\u038b",
+ "\u0003\u0002\u0002\u0002\u038b\u0391\u0003\u0002\u0002\u0002\u038c\u038e",
+ "\u0007\u01e8\u0002\u0002\u038d\u038f\u0007\u03f5\u0002\u0002\u038e\u038d",
+ "\u0003\u0002\u0002\u0002\u038e\u038f\u0003\u0002\u0002\u0002\u038f\u0390",
+ "\u0003\u0002\u0002\u0002\u0390\u0392\u0005\u0216\u010c\u0002\u0391\u038c",
+ "\u0003\u0002\u0002\u0002\u0391\u0392\u0003\u0002\u0002\u0002\u0392\u0398",
+ "\u0003\u0002\u0002\u0002\u0393\u0395\u0007\u01c3\u0002\u0002\u0394\u0396",
+ "\u0007\u03f5\u0002\u0002\u0395\u0394\u0003\u0002\u0002\u0002\u0395\u0396",
+ "\u0003\u0002\u0002\u0002\u0396\u0397\u0003\u0002\u0002\u0002\u0397\u0399",
+ "\u0005\u020e\u0108\u0002\u0398\u0393\u0003\u0002\u0002\u0002\u0398\u0399",
+ "\u0003\u0002\u0002\u0002\u0399\u039b\u0003\u0002\u0002\u0002\u039a\u039c",
+ "\u0007\u0247\u0002\u0002\u039b\u039a\u0003\u0002\u0002\u0002\u039b\u039c",
+ "\u0003\u0002\u0002\u0002\u039c\u03a2\u0003\u0002\u0002\u0002\u039d\u039f",
+ "\u0007\u0133\u0002\u0002\u039e\u03a0\u0007\u03f5\u0002\u0002\u039f\u039e",
+ "\u0003\u0002\u0002\u0002\u039f\u03a0\u0003\u0002\u0002\u0002\u03a0\u03a1",
+ "\u0003\u0002\u0002\u0002\u03a1\u03a3\u0007\u040d\u0002\u0002\u03a2\u039d",
+ "\u0003\u0002\u0002\u0002\u03a2\u03a3\u0003\u0002\u0002\u0002\u03a3\u03a4",
+ "\u0003\u0002\u0002\u0002\u03a4\u03a6\u0007\u0158\u0002\u0002\u03a5\u03a7",
+ "\u0007\u03f5\u0002\u0002\u03a6\u03a5\u0003\u0002\u0002\u0002\u03a6\u03a7",
+ "\u0003\u0002\u0002\u0002\u03a7\u03a8\u0003\u0002\u0002\u0002\u03a8\u03a9",
+ "\u0005\u0204\u0103\u0002\u03a9#\u0003\u0002\u0002\u0002\u03aa\u03ac",
+ "\u0007 \u0002\u0002\u03ab\u03ad\u00056\u001c\u0002\u03ac\u03ab\u0003",
+ "\u0002\u0002\u0002\u03ac\u03ad\u0003\u0002\u0002\u0002\u03ad\u03ae\u0003",
+ "\u0002\u0002\u0002\u03ae\u03af\u0007w\u0002\u0002\u03af\u03b0\u0005",
+ "\u01f4\u00fb\u0002\u03b0\u03b2\u0007\u03fe\u0002\u0002\u03b1\u03b3\u0005",
+ "F$\u0002\u03b2\u03b1\u0003\u0002\u0002\u0002\u03b2\u03b3\u0003\u0002",
+ "\u0002\u0002\u03b3\u03b8\u0003\u0002\u0002\u0002\u03b4\u03b5\u0007\u0400",
+ "\u0002\u0002\u03b5\u03b7\u0005F$\u0002\u03b6\u03b4\u0003\u0002\u0002",
+ "\u0002\u03b7\u03ba\u0003\u0002\u0002\u0002\u03b8\u03b6\u0003\u0002\u0002",
+ "\u0002\u03b8\u03b9\u0003\u0002\u0002\u0002\u03b9\u03bb\u0003\u0002\u0002",
+ "\u0002\u03ba\u03b8\u0003\u0002\u0002\u0002\u03bb\u03bf\u0007\u03ff\u0002",
+ "\u0002\u03bc\u03be\u0005J&\u0002\u03bd\u03bc\u0003\u0002\u0002\u0002",
+ "\u03be\u03c1\u0003\u0002\u0002\u0002\u03bf\u03bd\u0003\u0002\u0002\u0002",
+ "\u03bf\u03c0\u0003\u0002\u0002\u0002\u03c0\u03c2\u0003\u0002\u0002\u0002",
+ "\u03c1\u03bf\u0003\u0002\u0002\u0002\u03c2\u03c3\u0005\u015c\u00af\u0002",
+ "\u03c3%\u0003\u0002\u0002\u0002\u03c4\u03c6\u0007 \u0002\u0002\u03c5",
+ "\u03c7\u00056\u001c\u0002\u03c6\u03c5\u0003\u0002\u0002\u0002\u03c6",
+ "\u03c7\u0003\u0002\u0002\u0002\u03c7\u03c8\u0003\u0002\u0002\u0002\u03c8",
+ "\u03c9\u0007\u0172\u0002\u0002\u03c9\u03ca\u0005\u01f4\u00fb\u0002\u03ca",
+ "\u03cc\u0007\u03fe\u0002\u0002\u03cb\u03cd\u0005H%\u0002\u03cc\u03cb",
+ "\u0003\u0002\u0002\u0002\u03cc\u03cd\u0003\u0002\u0002\u0002\u03cd\u03d2",
+ "\u0003\u0002\u0002\u0002\u03ce\u03cf\u0007\u0400\u0002\u0002\u03cf\u03d1",
+ "\u0005H%\u0002\u03d0\u03ce\u0003\u0002\u0002\u0002\u03d1\u03d4\u0003",
+ "\u0002\u0002\u0002\u03d2\u03d0\u0003\u0002\u0002\u0002\u03d2\u03d3\u0003",
+ "\u0002\u0002\u0002\u03d3\u03d5\u0003\u0002\u0002\u0002\u03d4\u03d2\u0003",
+ "\u0002\u0002\u0002\u03d5\u03d6\u0007\u03ff\u0002\u0002\u03d6\u03d7\u0007",
+ "\u01fc\u0002\u0002\u03d7\u03db\u0005\u0222\u0112\u0002\u03d8\u03da\u0005",
+ "J&\u0002\u03d9\u03d8\u0003\u0002\u0002\u0002\u03da\u03dd\u0003\u0002",
+ "\u0002\u0002\u03db\u03d9\u0003\u0002\u0002\u0002\u03db\u03dc\u0003\u0002",
+ "\u0002\u0002\u03dc\u03e0\u0003\u0002\u0002\u0002\u03dd\u03db\u0003\u0002",
+ "\u0002\u0002\u03de\u03e1\u0005\u015c\u00af\u0002\u03df\u03e1\u0005\u016c",
+ "\u00b7\u0002\u03e0\u03de\u0003\u0002\u0002\u0002\u03e0\u03df\u0003\u0002",
+ "\u0002\u0002\u03e1\'\u0003\u0002\u0002\u0002\u03e2\u03e3\u0007 \u0002",
+ "\u0002\u03e3\u03e4\u0007\u0207\u0002\u0002\u03e4\u03e5\u0005\u020e\u0108",
+ "\u0002\u03e5\u03e6\u0007>\u0002\u0002\u03e6\u03e7\u0007\u0145\u0002",
+ "\u0002\u03e7\u03e8\u0007\u024b\u0002\u0002\u03e8\u03e9\t\u0007\u0002",
+ "\u0002\u03e9\u03ea\u0007\u01ce\u0002\u0002\u03ea\u03eb\u0007\u03fe\u0002",
+ "\u0002\u03eb\u03f0\u0005L\'\u0002\u03ec\u03ed\u0007\u0400\u0002\u0002",
+ "\u03ed\u03ef\u0005L\'\u0002\u03ee\u03ec\u0003\u0002\u0002\u0002\u03ef",
+ "\u03f2\u0003\u0002\u0002\u0002\u03f0\u03ee\u0003\u0002\u0002\u0002\u03f0",
+ "\u03f1\u0003\u0002\u0002\u0002\u03f1\u03f3\u0003\u0002\u0002\u0002\u03f2",
+ "\u03f0\u0003\u0002\u0002\u0002\u03f3\u03f4\u0007\u03ff\u0002\u0002\u03f4",
+ ")\u0003\u0002\u0002\u0002\u03f5\u03f7\u0007 \u0002\u0002\u03f6\u03f8",
+ "\u0007\u022f\u0002\u0002\u03f7\u03f6\u0003\u0002\u0002\u0002\u03f7\u03f8",
+ "\u0003\u0002\u0002\u0002\u03f8\u03f9\u0003\u0002\u0002\u0002\u03f9\u03fb",
+ "\u0007\u009c\u0002\u0002\u03fa\u03fc\u0005\u0246\u0124\u0002\u03fb\u03fa",
+ "\u0003\u0002\u0002\u0002\u03fb\u03fc\u0003\u0002\u0002\u0002\u03fc\u03fd",
+ "\u0003\u0002\u0002\u0002\u03fd\u0405\u0005\u01f6\u00fc\u0002\u03fe\u03ff",
+ "\u0007Z\u0002\u0002\u03ff\u0406\u0005\u01f6\u00fc\u0002\u0400\u0401",
+ "\u0007\u03fe\u0002\u0002\u0401\u0402\u0007Z\u0002\u0002\u0402\u0403",
+ "\u0005\u01f6\u00fc\u0002\u0403\u0404\u0007\u03ff\u0002\u0002\u0404\u0406",
+ "\u0003\u0002\u0002\u0002\u0405\u03fe\u0003\u0002\u0002\u0002\u0405\u0400",
+ "\u0003\u0002\u0002\u0002\u0406\u0444\u0003\u0002\u0002\u0002\u0407\u0409",
+ "\u0007 \u0002\u0002\u0408\u040a\u0007\u022f\u0002\u0002\u0409\u0408",
+ "\u0003\u0002\u0002\u0002\u0409\u040a\u0003\u0002\u0002\u0002\u040a\u040b",
+ "\u0003\u0002\u0002\u0002\u040b\u040d\u0007\u009c\u0002\u0002\u040c\u040e",
+ "\u0005\u0246\u0124\u0002\u040d\u040c\u0003\u0002\u0002\u0002\u040d\u040e",
+ "\u0003\u0002\u0002\u0002\u040e\u040f\u0003\u0002\u0002\u0002\u040f\u0411",
+ "\u0005\u01f6\u00fc\u0002\u0410\u0412\u0005N(\u0002\u0411\u0410\u0003",
+ "\u0002\u0002\u0002\u0411\u0412\u0003\u0002\u0002\u0002\u0412\u041d\u0003",
+ "\u0002\u0002\u0002\u0413\u041a\u0005`1\u0002\u0414\u0416\u0007\u0400",
+ "\u0002\u0002\u0415\u0414\u0003\u0002\u0002\u0002\u0415\u0416\u0003\u0002",
+ "\u0002\u0002\u0416\u0417\u0003\u0002\u0002\u0002\u0417\u0419\u0005`",
+ "1\u0002\u0418\u0415\u0003\u0002\u0002\u0002\u0419\u041c\u0003\u0002",
+ "\u0002\u0002\u041a\u0418\u0003\u0002\u0002\u0002\u041a\u041b\u0003\u0002",
+ "\u0002\u0002\u041b\u041e\u0003\u0002\u0002\u0002\u041c\u041a\u0003\u0002",
+ "\u0002\u0002\u041d\u0413\u0003\u0002\u0002\u0002\u041d\u041e\u0003\u0002",
+ "\u0002\u0002\u041e\u0420\u0003\u0002\u0002\u0002\u041f\u0421\u0005d",
+ "3\u0002\u0420\u041f\u0003\u0002\u0002\u0002\u0420\u0421\u0003\u0002",
+ "\u0002\u0002\u0421\u0423\u0003\u0002\u0002\u0002\u0422\u0424\t\b\u0002",
+ "\u0002\u0423\u0422\u0003\u0002\u0002\u0002\u0423\u0424\u0003\u0002\u0002",
+ "\u0002\u0424\u0426\u0003\u0002\u0002\u0002\u0425\u0427\u0007\r\u0002",
+ "\u0002\u0426\u0425\u0003\u0002\u0002\u0002\u0426\u0427\u0003\u0002\u0002",
+ "\u0002\u0427\u0428\u0003\u0002\u0002\u0002\u0428\u0429\u0005\u00b6\\",
+ "\u0002\u0429\u0444\u0003\u0002\u0002\u0002\u042a\u042c\u0007 \u0002",
+ "\u0002\u042b\u042d\u0007\u022f\u0002\u0002\u042c\u042b\u0003\u0002\u0002",
+ "\u0002\u042c\u042d\u0003\u0002\u0002\u0002\u042d\u042e\u0003\u0002\u0002",
+ "\u0002\u042e\u0430\u0007\u009c\u0002\u0002\u042f\u0431\u0005\u0246\u0124",
+ "\u0002\u0430\u042f\u0003\u0002\u0002\u0002\u0430\u0431\u0003\u0002\u0002",
+ "\u0002\u0431\u0432\u0003\u0002\u0002\u0002\u0432\u0433\u0005\u01f6\u00fc",
+ "\u0002\u0433\u043e\u0005N(\u0002\u0434\u043b\u0005`1\u0002\u0435\u0437",
+ "\u0007\u0400\u0002\u0002\u0436\u0435\u0003\u0002\u0002\u0002\u0436\u0437",
+ "\u0003\u0002\u0002\u0002\u0437\u0438\u0003\u0002\u0002\u0002\u0438\u043a",
+ "\u0005`1\u0002\u0439\u0436\u0003\u0002\u0002\u0002\u043a\u043d\u0003",
+ "\u0002\u0002\u0002\u043b\u0439\u0003\u0002\u0002\u0002\u043b\u043c\u0003",
+ "\u0002\u0002\u0002\u043c\u043f\u0003\u0002\u0002\u0002\u043d\u043b\u0003",
+ "\u0002\u0002\u0002\u043e\u0434\u0003\u0002\u0002\u0002\u043e\u043f\u0003",
+ "\u0002\u0002\u0002\u043f\u0441\u0003\u0002\u0002\u0002\u0440\u0442\u0005",
+ "d3\u0002\u0441\u0440\u0003\u0002\u0002\u0002\u0441\u0442\u0003\u0002",
+ "\u0002\u0002\u0442\u0444\u0003\u0002\u0002\u0002\u0443\u03f5\u0003\u0002",
+ "\u0002\u0002\u0443\u0407\u0003\u0002\u0002\u0002\u0443\u042a\u0003\u0002",
+ "\u0002\u0002\u0444+\u0003\u0002\u0002\u0002\u0445\u0446\u0007 \u0002",
+ "\u0002\u0446\u0447\u0007\u022e\u0002\u0002\u0447\u0448\u0005\u020e\u0108",
+ "\u0002\u0448\u0449\u0007\u0007\u0002\u0002\u0449\u044a\u0007\u0146\u0002",
+ "\u0002\u044a\u044e\u0007\u040d\u0002\u0002\u044b\u044c\u0007\u016a\u0002",
+ "\u0002\u044c\u044d\u0007\u03f5\u0002\u0002\u044d\u044f\u0005\u0216\u010c",
+ "\u0002\u044e\u044b\u0003\u0002\u0002\u0002\u044e\u044f\u0003\u0002\u0002",
+ "\u0002\u044f\u0455\u0003\u0002\u0002\u0002\u0450\u0452\u0007\u0158\u0002",
+ "\u0002\u0451\u0453\u0007\u03f5\u0002\u0002\u0452\u0451\u0003\u0002\u0002",
+ "\u0002\u0452\u0453\u0003\u0002\u0002\u0002\u0453\u0454\u0003\u0002\u0002",
+ "\u0002\u0454\u0456\u0005\u0204\u0103\u0002\u0455\u0450\u0003\u0002\u0002",
+ "\u0002\u0455\u0456\u0003\u0002\u0002\u0002\u0456-\u0003\u0002\u0002",
+ "\u0002\u0457\u0458\u0007 \u0002\u0002\u0458\u0459\u0007\u022e\u0002",
+ "\u0002\u0459\u045a\u0005\u020e\u0108\u0002\u045a\u045b\u0007\u0007\u0002",
+ "\u0002\u045b\u045c\u0007\u0146\u0002\u0002\u045c\u045d\u0007\u040d\u0002",
+ "\u0002\u045d\u045e\u0007\u00aa\u0002\u0002\u045e\u045f\u0007\u0195\u0002",
+ "\u0002\u045f\u0460\u0007D\u0002\u0002\u0460\u0466\u0005\u020e\u0108",
+ "\u0002\u0461\u0463\u0007\u0166\u0002\u0002\u0462\u0464\u0007\u03f5\u0002",
+ "\u0002\u0463\u0462\u0003\u0002\u0002\u0002\u0463\u0464\u0003\u0002\u0002",
+ "\u0002\u0464\u0465\u0003\u0002\u0002\u0002\u0465\u0467\u0005\u0216\u010c",
+ "\u0002\u0466\u0461\u0003\u0002\u0002\u0002\u0466\u0467\u0003\u0002\u0002",
+ "\u0002\u0467\u046d\u0003\u0002\u0002\u0002\u0468\u046a\u0007\u0180\u0002",
+ "\u0002\u0469\u046b\u0007\u03f5\u0002\u0002\u046a\u0469\u0003\u0002\u0002",
+ "\u0002\u046a\u046b\u0003\u0002\u0002\u0002\u046b\u046c\u0003\u0002\u0002",
+ "\u0002\u046c\u046e\u0005\u0216\u010c\u0002\u046d\u0468\u0003\u0002\u0002",
+ "\u0002\u046d\u046e\u0003\u0002\u0002\u0002\u046e\u0474\u0003\u0002\u0002",
+ "\u0002\u046f\u0471\u0007\u0119\u0002\u0002\u0470\u0472\u0007\u03f5\u0002",
+ "\u0002\u0471\u0470\u0003\u0002\u0002\u0002\u0471\u0472\u0003\u0002\u0002",
+ "\u0002\u0472\u0473\u0003\u0002\u0002\u0002\u0473\u0475\u0005\u0216\u010c",
+ "\u0002\u0474\u046f\u0003\u0002\u0002\u0002\u0474\u0475\u0003\u0002\u0002",
+ "\u0002\u0475\u047b\u0003\u0002\u0002\u0002\u0476\u0478\u0007\u01af\u0002",
+ "\u0002\u0477\u0479\u0007\u03f5\u0002\u0002\u0478\u0477\u0003\u0002\u0002",
+ "\u0002\u0478\u0479\u0003\u0002\u0002\u0002\u0479\u047a\u0003\u0002\u0002",
+ "\u0002\u047a\u047c\u0005\u0216\u010c\u0002\u047b\u0476\u0003\u0002\u0002",
+ "\u0002\u047b\u047c\u0003\u0002\u0002\u0002\u047c\u0482\u0003\u0002\u0002",
+ "\u0002\u047d\u047f\u0007\u01c3\u0002\u0002\u047e\u0480\u0007\u03f5\u0002",
+ "\u0002\u047f\u047e\u0003\u0002\u0002\u0002\u047f\u0480\u0003\u0002\u0002",
+ "\u0002\u0480\u0481\u0003\u0002\u0002\u0002\u0481\u0483\u0005\u020e\u0108",
+ "\u0002\u0482\u047d\u0003\u0002\u0002\u0002\u0482\u0483\u0003\u0002\u0002",
+ "\u0002\u0483\u0485\u0003\u0002\u0002\u0002\u0484\u0486\u0007\u0247\u0002",
+ "\u0002\u0485\u0484\u0003\u0002\u0002\u0002\u0485\u0486\u0003\u0002\u0002",
+ "\u0002\u0486\u048c\u0003\u0002\u0002\u0002\u0487\u0489\u0007\u0133\u0002",
+ "\u0002\u0488\u048a\u0007\u03f5\u0002\u0002\u0489\u0488\u0003\u0002\u0002",
+ "\u0002\u0489\u048a\u0003\u0002\u0002\u0002\u048a\u048b\u0003\u0002\u0002",
+ "\u0002\u048b\u048d\u0007\u040d\u0002\u0002\u048c\u0487\u0003\u0002\u0002",
+ "\u0002\u048c\u048d\u0003\u0002\u0002\u0002\u048d\u048e\u0003\u0002\u0002",
+ "\u0002\u048e\u0490\u0007\u0158\u0002\u0002\u048f\u0491\u0007\u03f5\u0002",
+ "\u0002\u0490\u048f\u0003\u0002\u0002\u0002\u0490\u0491\u0003\u0002\u0002",
+ "\u0002\u0491\u0492\u0003\u0002\u0002\u0002\u0492\u0493\u0005\u0204\u0103",
+ "\u0002\u0493/\u0003\u0002\u0002\u0002\u0494\u0496\u0007 \u0002\u0002",
+ "\u0495\u0497\u00056\u001c\u0002\u0496\u0495\u0003\u0002\u0002\u0002",
+ "\u0496\u0497\u0003\u0002\u0002\u0002\u0497\u0498\u0003\u0002\u0002\u0002",
+ "\u0498\u0499\u0007\u00a1\u0002\u0002\u0499\u049a\u0005\u01f4\u00fb\u0002",
+ "\u049a\u049b\t\t\u0002\u0002\u049b\u049c\t\n\u0002\u0002\u049c\u049d",
+ "\u0007l\u0002\u0002\u049d\u049e\u0005\u01f6\u00fc\u0002\u049e\u049f",
+ "\u0007<\u0002\u0002\u049f\u04a0\u00072\u0002\u0002\u04a0\u04a3\u0007",
+ "\u0201\u0002\u0002\u04a1\u04a2\t\u000b\u0002\u0002\u04a2\u04a4\u0005",
+ "\u01f4\u00fb\u0002\u04a3\u04a1\u0003\u0002\u0002\u0002\u04a3\u04a4\u0003",
+ "\u0002\u0002\u0002\u04a4\u04a5\u0003\u0002\u0002\u0002\u04a5\u04a6\u0005",
+ "\u015c\u00af\u0002\u04a61\u0003\u0002\u0002\u0002\u04a7\u04aa\u0007",
+ " \u0002\u0002\u04a8\u04a9\u0007p\u0002\u0002\u04a9\u04ab\u0007\u0081",
+ "\u0002\u0002\u04aa\u04a8\u0003\u0002\u0002\u0002\u04aa\u04ab\u0003\u0002",
+ "\u0002\u0002\u04ab\u04af\u0003\u0002\u0002\u0002\u04ac\u04ad\u0007\u0114",
+ "\u0002\u0002\u04ad\u04ae\u0007\u03f5\u0002\u0002\u04ae\u04b0\t\f\u0002",
+ "\u0002\u04af\u04ac\u0003\u0002\u0002\u0002\u04af\u04b0\u0003\u0002\u0002",
+ "\u0002\u04b0\u04b2\u0003\u0002\u0002\u0002\u04b1\u04b3\u00056\u001c",
+ "\u0002\u04b2\u04b1\u0003\u0002\u0002\u0002\u04b2\u04b3\u0003\u0002\u0002",
+ "\u0002\u04b3\u04b7\u0003\u0002\u0002\u0002\u04b4\u04b5\u0007\u0091\u0002",
+ "\u0002\u04b5\u04b6\u0007\u0206\u0002\u0002\u04b6\u04b8\t\r\u0002\u0002",
+ "\u04b7\u04b4\u0003\u0002\u0002\u0002\u04b7\u04b8\u0003\u0002\u0002\u0002",
+ "\u04b8\u04b9\u0003\u0002\u0002\u0002\u04b9\u04ba\u0007\u0244\u0002\u0002",
+ "\u04ba\u04bf\u0005\u01f4\u00fb\u0002\u04bb\u04bc\u0007\u03fe\u0002\u0002",
+ "\u04bc\u04bd\u0005\u022e\u0118\u0002\u04bd\u04be\u0007\u03ff\u0002\u0002",
+ "\u04be\u04c0\u0003\u0002\u0002\u0002\u04bf\u04bb\u0003\u0002\u0002\u0002",
+ "\u04bf\u04c0\u0003\u0002\u0002\u0002\u04c0\u04c1\u0003\u0002\u0002\u0002",
+ "\u04c1\u04c2\u0007\r\u0002\u0002\u04c2\u04c9\u0005\u00b6\\\u0002\u04c3",
+ "\u04c5\u0007\u00b0\u0002\u0002\u04c4\u04c6\t\u000e\u0002\u0002\u04c5",
+ "\u04c4\u0003\u0002\u0002\u0002\u04c5\u04c6\u0003\u0002\u0002\u0002\u04c6",
+ "\u04c7\u0003\u0002\u0002\u0002\u04c7\u04c8\u0007\u0019\u0002\u0002\u04c8",
+ "\u04ca\u0007n\u0002\u0002\u04c9\u04c3\u0003\u0002\u0002\u0002\u04c9",
+ "\u04ca\u0003\u0002\u0002\u0002\u04ca3\u0003\u0002\u0002\u0002\u04cb",
+ "\u04cd\u0007(\u0002\u0002\u04cc\u04cb\u0003\u0002\u0002\u0002\u04cc",
+ "\u04cd\u0003\u0002\u0002\u0002\u04cd\u04d1\u0003\u0002\u0002\u0002\u04ce",
+ "\u04cf\u0007\u0018\u0002\u0002\u04cf\u04d2\u0007\u008c\u0002\u0002\u04d0",
+ "\u04d2\u0007\u02dd\u0002\u0002\u04d1\u04ce\u0003\u0002\u0002\u0002\u04d1",
+ "\u04d0\u0003\u0002\u0002\u0002\u04d2\u04d4\u0003\u0002\u0002\u0002\u04d3",
+ "\u04d5\u0007\u03f5\u0002\u0002\u04d4\u04d3\u0003\u0002\u0002\u0002\u04d4",
+ "\u04d5\u0003\u0002\u0002\u0002\u04d5\u04d8\u0003\u0002\u0002\u0002\u04d6",
+ "\u04d9\u0005\u0200\u0101\u0002\u04d7\u04d9\u0007(\u0002\u0002\u04d8",
+ "\u04d6\u0003\u0002\u0002\u0002\u04d8\u04d7\u0003\u0002\u0002\u0002\u04d9",
+ "\u04e3\u0003\u0002\u0002\u0002\u04da\u04dc\u0007(\u0002\u0002\u04db",
+ "\u04da\u0003\u0002\u0002\u0002\u04db\u04dc\u0003\u0002\u0002\u0002\u04dc",
+ "\u04dd\u0003\u0002\u0002\u0002\u04dd\u04df\u0007\u001a\u0002\u0002\u04de",
+ "\u04e0\u0007\u03f5\u0002\u0002\u04df\u04de\u0003\u0002\u0002\u0002\u04df",
+ "\u04e0\u0003\u0002\u0002\u0002\u04e0\u04e1\u0003\u0002\u0002\u0002\u04e1",
+ "\u04e3\u0005\u0202\u0102\u0002\u04e2\u04cc\u0003\u0002\u0002\u0002\u04e2",
+ "\u04db\u0003\u0002\u0002\u0002\u04e35\u0003\u0002\u0002\u0002\u04e4",
+ "\u04e5\u0007\u0149\u0002\u0002\u04e5\u04ec\u0007\u03f5\u0002\u0002\u04e6",
+ "\u04ed\u0005\u01fc\u00ff\u0002\u04e7\u04ea\u0007#\u0002\u0002\u04e8",
+ "\u04e9\u0007\u03fe\u0002\u0002\u04e9\u04eb\u0007\u03ff\u0002\u0002\u04ea",
+ "\u04e8\u0003\u0002\u0002\u0002\u04ea\u04eb\u0003\u0002\u0002\u0002\u04eb",
+ "\u04ed\u0003\u0002\u0002\u0002\u04ec\u04e6\u0003\u0002\u0002\u0002\u04ec",
+ "\u04e7\u0003\u0002\u0002\u0002\u04ed7\u0003\u0002\u0002\u0002\u04ee",
+ "\u04ef\u0007\u0116\u0002\u0002\u04ef\u04f3\u0005:\u001e\u0002\u04f0",
+ "\u04f2\u0005<\u001f\u0002\u04f1\u04f0\u0003\u0002\u0002\u0002\u04f2",
+ "\u04f5\u0003\u0002\u0002\u0002\u04f3\u04f1\u0003\u0002\u0002\u0002\u04f3",
+ "\u04f4\u0003\u0002\u0002\u0002\u04f4\u0511\u0003\u0002\u0002\u0002\u04f5",
+ "\u04f3\u0003\u0002\u0002\u0002\u04f6\u04f9\u0007\u0160\u0002\u0002\u04f7",
+ "\u04fa\u0005\u0214\u010b\u0002\u04f8\u04fa\u0005\u025c\u012f\u0002\u04f9",
+ "\u04f7\u0003\u0002\u0002\u0002\u04f9\u04f8\u0003\u0002\u0002\u0002\u04fa",
+ "\u04fb\u0003\u0002\u0002\u0002\u04fb\u0504\u0005> \u0002\u04fc\u04fd",
+ "\u0007\u021d\u0002\u0002\u04fd\u0501\u0005:\u001e\u0002\u04fe\u0500",
+ "\u0005<\u001f\u0002\u04ff\u04fe\u0003\u0002\u0002\u0002\u0500\u0503",
+ "\u0003\u0002\u0002\u0002\u0501\u04ff\u0003\u0002\u0002\u0002\u0501\u0502",
+ "\u0003\u0002\u0002\u0002\u0502\u0505\u0003\u0002\u0002\u0002\u0503\u0501",
+ "\u0003\u0002\u0002\u0002\u0504\u04fc\u0003\u0002\u0002\u0002\u0504\u0505",
+ "\u0003\u0002\u0002\u0002\u0505\u050e\u0003\u0002\u0002\u0002\u0506\u0507",
+ "\u0007\u0157\u0002\u0002\u0507\u050b\u0005:\u001e\u0002\u0508\u050a",
+ "\u0005<\u001f\u0002\u0509\u0508\u0003\u0002\u0002\u0002\u050a\u050d",
+ "\u0003\u0002\u0002\u0002\u050b\u0509\u0003\u0002\u0002\u0002\u050b\u050c",
+ "\u0003\u0002\u0002\u0002\u050c\u050f\u0003\u0002\u0002\u0002\u050d\u050b",
+ "\u0003\u0002\u0002\u0002\u050e\u0506\u0003\u0002\u0002\u0002\u050e\u050f",
+ "\u0003\u0002\u0002\u0002\u050f\u0511\u0003\u0002\u0002\u0002\u0510\u04ee",
+ "\u0003\u0002\u0002\u0002\u0510\u04f6\u0003\u0002\u0002\u0002\u05119",
+ "\u0003\u0002\u0002\u0002\u0512\u0517\u0007\u00ff\u0002\u0002\u0513\u0517",
+ "\u0005\u0218\u010d\u0002\u0514\u0517\u0005\u0214\u010b\u0002\u0515\u0517",
+ "\u0005\u025c\u012f\u0002\u0516\u0512\u0003\u0002\u0002\u0002\u0516\u0513",
+ "\u0003\u0002\u0002\u0002\u0516\u0514\u0003\u0002\u0002\u0002\u0516\u0515",
+ "\u0003\u0002\u0002\u0002\u0517;\u0003\u0002\u0002\u0002\u0518\u0519",
+ "\u0007\u03f0\u0002\u0002\u0519\u051c\u0007O\u0002\u0002\u051a\u051d",
+ "\u0005\u0214\u010b\u0002\u051b\u051d\u0005\u025c\u012f\u0002\u051c\u051a",
+ "\u0003\u0002\u0002\u0002\u051c\u051b\u0003\u0002\u0002\u0002\u051d\u051e",
+ "\u0003\u0002\u0002\u0002\u051e\u051f\u0005> \u0002\u051f=\u0003\u0002",
+ "\u0002\u0002\u0520\u052e\u0005\u0272\u013a\u0002\u0521\u052e\u0007\u00cd",
+ "\u0002\u0002\u0522\u052e\u0007\u00e0\u0002\u0002\u0523\u052e\u0007\u00e1",
+ "\u0002\u0002\u0524\u052e\u0007\u00e2\u0002\u0002\u0525\u052e\u0007\u00e3",
+ "\u0002\u0002\u0526\u052e\u0007\u00e4\u0002\u0002\u0527\u052e\u0007\u00e5",
+ "\u0002\u0002\u0528\u052e\u0007\u00e6\u0002\u0002\u0529\u052e\u0007\u00e7",
+ "\u0002\u0002\u052a\u052e\u0007\u00e8\u0002\u0002\u052b\u052e\u0007\u00e9",
+ "\u0002\u0002\u052c\u052e\u0007\u00ea\u0002\u0002\u052d\u0520\u0003\u0002",
+ "\u0002\u0002\u052d\u0521\u0003\u0002\u0002\u0002\u052d\u0522\u0003\u0002",
+ "\u0002\u0002\u052d\u0523\u0003\u0002\u0002\u0002\u052d\u0524\u0003\u0002",
+ "\u0002\u0002\u052d\u0525\u0003\u0002\u0002\u0002\u052d\u0526\u0003\u0002",
+ "\u0002\u0002\u052d\u0527\u0003\u0002\u0002\u0002\u052d\u0528\u0003\u0002",
+ "\u0002\u0002\u052d\u0529\u0003\u0002\u0002\u0002\u052d\u052a\u0003\u0002",
+ "\u0002\u0002\u052d\u052b\u0003\u0002\u0002\u0002\u052d\u052c\u0003\u0002",
+ "\u0002\u0002\u052e?\u0003\u0002\u0002\u0002\u052f\u0535\u0007\u0154",
+ "\u0002\u0002\u0530\u0535\u0007\u014d\u0002\u0002\u0531\u0532\u0007\u014d",
+ "\u0002\u0002\u0532\u0533\u0007l\u0002\u0002\u0533\u0535\u0007\u020d",
+ "\u0002\u0002\u0534\u052f\u0003\u0002\u0002\u0002\u0534\u0530\u0003\u0002",
+ "\u0002\u0002\u0534\u0531\u0003\u0002\u0002\u0002\u0535A\u0003\u0002",
+ "\u0002\u0002\u0536\u0537\u0007\u00ab\u0002\u0002\u0537\u0538\t\u000f",
+ "\u0002\u0002\u0538C\u0003\u0002\u0002\u0002\u0539\u053b\u0007\u018d",
+ "\u0002\u0002\u053a\u053c\u0007\u03f5\u0002\u0002\u053b\u053a\u0003\u0002",
+ "\u0002\u0002\u053b\u053c\u0003\u0002\u0002\u0002\u053c\u053d\u0003\u0002",
+ "\u0002\u0002\u053d\u0547\u0005\u0216\u010c\u0002\u053e\u0547\u0005B",
+ "\"\u0002\u053f\u0540\u0007\u00b0\u0002\u0002\u0540\u0541\u0007\u01d2",
+ "\u0002\u0002\u0541\u0547\u0005\u020e\u0108\u0002\u0542\u0543\u0007\u0133",
+ "\u0002\u0002\u0543\u0547\u0007\u040d\u0002\u0002\u0544\u0547\u0007\u0185",
+ "\u0002\u0002\u0545\u0547\u0007\u0246\u0002\u0002\u0546\u0539\u0003\u0002",
+ "\u0002\u0002\u0546\u053e\u0003\u0002\u0002\u0002\u0546\u053f\u0003\u0002",
+ "\u0002\u0002\u0546\u0542\u0003\u0002\u0002\u0002\u0546\u0544\u0003\u0002",
+ "\u0002\u0002\u0546\u0545\u0003\u0002\u0002\u0002\u0547E\u0003\u0002",
+ "\u0002\u0002\u0548\u054a\t\u0010\u0002\u0002\u0549\u0548\u0003\u0002",
+ "\u0002\u0002\u0549\u054a\u0003\u0002\u0002\u0002\u054a\u054b\u0003\u0002",
+ "\u0002\u0002\u054b\u054c\u0005\u020e\u0108\u0002\u054c\u054d\u0005\u0222",
+ "\u0112\u0002\u054dG\u0003\u0002\u0002\u0002\u054e\u054f\u0005\u020e",
+ "\u0108\u0002\u054f\u0550\u0005\u0222\u0112\u0002\u0550I\u0003\u0002",
+ "\u0002\u0002\u0551\u0552\u0007\u0133\u0002\u0002\u0552\u0569\u0007\u040d",
+ "\u0002\u0002\u0553\u0554\u0007\u018e\u0002\u0002\u0554\u0569\u0007\u0091",
+ "\u0002\u0002\u0555\u0557\u0007h\u0002\u0002\u0556\u0555\u0003\u0002",
+ "\u0002\u0002\u0556\u0557\u0003\u0002\u0002\u0002\u0557\u0558\u0003\u0002",
+ "\u0002\u0002\u0558\u0569\u0007-\u0002\u0002\u0559\u055a\u0007\u013f",
+ "\u0002\u0002\u055a\u0564\u0007\u0091\u0002\u0002\u055b\u055c\u0007\u01c2",
+ "\u0002\u0002\u055c\u0564\u0007\u0091\u0002\u0002\u055d\u055e\u0007{",
+ "\u0002\u0002\u055e\u055f\u0007\u0091\u0002\u0002\u055f\u0564\u0007\u0145",
+ "\u0002\u0002\u0560\u0561\u0007f\u0002\u0002\u0561\u0562\u0007\u0091",
+ "\u0002\u0002\u0562\u0564\u0007\u0145\u0002\u0002\u0563\u0559\u0003\u0002",
+ "\u0002\u0002\u0563\u055b\u0003\u0002\u0002\u0002\u0563\u055d\u0003\u0002",
+ "\u0002\u0002\u0563\u0560\u0003\u0002\u0002\u0002\u0564\u0569\u0003\u0002",
+ "\u0002\u0002\u0565\u0566\u0007\u0091\u0002\u0002\u0566\u0567\u0007\u0206",
+ "\u0002\u0002\u0567\u0569\t\r\u0002\u0002\u0568\u0551\u0003\u0002\u0002",
+ "\u0002\u0568\u0553\u0003\u0002\u0002\u0002\u0568\u0556\u0003\u0002\u0002",
+ "\u0002\u0568\u0563\u0003\u0002\u0002\u0002\u0568\u0565\u0003\u0002\u0002",
+ "\u0002\u0569K\u0003\u0002\u0002\u0002\u056a\u056b\u0007\u017a\u0002",
+ "\u0002\u056b\u0579\u0007\u040d\u0002\u0002\u056c\u056d\u0007%\u0002",
+ "\u0002\u056d\u0579\u0007\u040d\u0002\u0002\u056e\u056f\u0007\u023e\u0002",
+ "\u0002\u056f\u0579\u0007\u040d\u0002\u0002\u0570\u0571\u0007\u01d6\u0002",
+ "\u0002\u0571\u0579\u0007\u040d\u0002\u0002\u0572\u0573\u0007\u0210\u0002",
+ "\u0002\u0573\u0579\u0007\u040d\u0002\u0002\u0574\u0575\u0007\u01cf\u0002",
+ "\u0002\u0575\u0579\u0007\u040d\u0002\u0002\u0576\u0577\u0007\u01db\u0002",
+ "\u0002\u0577\u0579\u0005\u0214\u010b\u0002\u0578\u056a\u0003\u0002\u0002",
+ "\u0002\u0578\u056c\u0003\u0002\u0002\u0002\u0578\u056e\u0003\u0002\u0002",
+ "\u0002\u0578\u0570\u0003\u0002\u0002\u0002\u0578\u0572\u0003\u0002\u0002",
+ "\u0002\u0578\u0574\u0003\u0002\u0002\u0002\u0578\u0576\u0003\u0002\u0002",
+ "\u0002\u0579M\u0003\u0002\u0002\u0002\u057a\u057b\u0007\u03fe\u0002",
+ "\u0002\u057b\u0580\u0005P)\u0002\u057c\u057d\u0007\u0400\u0002\u0002",
+ "\u057d\u057f\u0005P)\u0002\u057e\u057c\u0003\u0002\u0002\u0002\u057f",
+ "\u0582\u0003\u0002\u0002\u0002\u0580\u057e\u0003\u0002\u0002\u0002\u0580",
+ "\u0581\u0003\u0002\u0002\u0002\u0581\u0583\u0003\u0002\u0002\u0002\u0582",
+ "\u0580\u0003\u0002\u0002\u0002\u0583\u0584\u0007\u03ff\u0002\u0002\u0584",
+ "O\u0003\u0002\u0002\u0002\u0585\u0586\u0005\u020e\u0108\u0002\u0586",
+ "\u0587\u0005R*\u0002\u0587\u058b\u0003\u0002\u0002\u0002\u0588\u058b",
+ "\u0005V,\u0002\u0589\u058b\u0005^0\u0002\u058a\u0585\u0003\u0002\u0002",
+ "\u0002\u058a\u0588\u0003\u0002\u0002\u0002\u058a\u0589\u0003\u0002\u0002",
+ "\u0002\u058bQ\u0003\u0002\u0002\u0002\u058c\u0590\u0005\u0222\u0112",
+ "\u0002\u058d\u058f\u0005T+\u0002\u058e\u058d\u0003\u0002\u0002\u0002",
+ "\u058f\u0592\u0003\u0002\u0002\u0002\u0590\u058e\u0003\u0002\u0002\u0002",
+ "\u0590\u0591\u0003\u0002\u0002\u0002\u0591S\u0003\u0002\u0002\u0002",
+ "\u0592\u0590\u0003\u0002\u0002\u0002\u0593\u05c7\u0005\u021e\u0110\u0002",
+ "\u0594\u0595\u0007(\u0002\u0002\u0595\u05c7\u0005\u023e\u0120\u0002",
+ "\u0596\u059b\u0007\u011a\u0002\u0002\u0597\u0598\u0007l\u0002\u0002",
+ "\u0598\u0599\u0007\u00a8\u0002\u0002\u0599\u059b\u0005\u0240\u0121\u0002",
+ "\u059a\u0596\u0003\u0002\u0002\u0002\u059a\u0597\u0003\u0002\u0002\u0002",
+ "\u059b\u05c7\u0003\u0002\u0002\u0002\u059c\u059e\u0007v\u0002\u0002",
+ "\u059d\u059c\u0003\u0002\u0002\u0002\u059d\u059e\u0003\u0002\u0002\u0002",
+ "\u059e\u059f\u0003\u0002\u0002\u0002\u059f\u05c7\u0007T\u0002\u0002",
+ "\u05a0\u05a2\u0007\u00a5\u0002\u0002\u05a1\u05a3\u0007T\u0002\u0002",
+ "\u05a2\u05a1\u0003\u0002\u0002\u0002\u05a2\u05a3\u0003\u0002\u0002\u0002",
+ "\u05a3\u05c7\u0003\u0002\u0002\u0002\u05a4\u05a5\u0007\u0133\u0002\u0002",
+ "\u05a5\u05c7\u0007\u040d\u0002\u0002\u05a6\u05a7\u0007\u0131\u0002\u0002",
+ "\u05a7\u05c7\t\u0011\u0002\u0002\u05a8\u05a9\u0007\u0223\u0002\u0002",
+ "\u05a9\u05c7\t\u0012\u0002\u0002\u05aa\u05c7\u0005X-\u0002\u05ab\u05ac",
+ "\u0007\u001a\u0002\u0002\u05ac\u05c7\u0005\u0202\u0102\u0002\u05ad\u05ae",
+ "\u0007A\u0002\u0002\u05ae\u05b0\u0007\n\u0002\u0002\u05af\u05ad\u0003",
+ "\u0002\u0002\u0002\u05af\u05b0\u0003\u0002\u0002\u0002\u05b0\u05b1\u0003",
+ "\u0002\u0002\u0002\u05b1\u05b2\u0007\r\u0002\u0002\u05b2\u05b3\u0007",
+ "\u03fe\u0002\u0002\u05b3\u05b4\u0005\u025c\u012f\u0002\u05b4\u05b6\u0007",
+ "\u03ff\u0002\u0002\u05b5\u05b7\t\u0013\u0002\u0002\u05b6\u05b5\u0003",
+ "\u0002\u0002\u0002\u05b6\u05b7\u0003\u0002\u0002\u0002\u05b7\u05c7\u0003",
+ "\u0002\u0002\u0002\u05b8\u05b9\u0007\u00df\u0002\u0002\u05b9\u05ba\u0007",
+ "(\u0002\u0002\u05ba\u05c7\u0007\u0242\u0002\u0002\u05bb\u05bd\u0007",
+ "\u001d\u0002\u0002\u05bc\u05be\u0005\u020e\u0108\u0002\u05bd\u05bc\u0003",
+ "\u0002\u0002\u0002\u05bd\u05be\u0003\u0002\u0002\u0002\u05be\u05c0\u0003",
+ "\u0002\u0002\u0002\u05bf\u05bb\u0003\u0002\u0002\u0002\u05bf\u05c0\u0003",
+ "\u0002\u0002\u0002\u05c0\u05c1\u0003\u0002\u0002\u0002\u05c1\u05c2\u0007",
+ "\u0019\u0002\u0002\u05c2\u05c3\u0007\u03fe\u0002\u0002\u05c3\u05c4\u0005",
+ "\u025c\u012f\u0002\u05c4\u05c5\u0007\u03ff\u0002\u0002\u05c5\u05c7\u0003",
+ "\u0002\u0002\u0002\u05c6\u0593\u0003\u0002\u0002\u0002\u05c6\u0594\u0003",
+ "\u0002\u0002\u0002\u05c6\u059a\u0003\u0002\u0002\u0002\u05c6\u059d\u0003",
+ "\u0002\u0002\u0002\u05c6\u05a0\u0003\u0002\u0002\u0002\u05c6\u05a4\u0003",
+ "\u0002\u0002\u0002\u05c6\u05a6\u0003\u0002\u0002\u0002\u05c6\u05a8\u0003",
+ "\u0002\u0002\u0002\u05c6\u05aa\u0003\u0002\u0002\u0002\u05c6\u05ab\u0003",
+ "\u0002\u0002\u0002\u05c6\u05af\u0003\u0002\u0002\u0002\u05c6\u05b8\u0003",
+ "\u0002\u0002\u0002\u05c6\u05bf\u0003\u0002\u0002\u0002\u05c7U\u0003",
+ "\u0002\u0002\u0002\u05c8\u05ca\u0007\u001d\u0002\u0002\u05c9\u05cb\u0005",
+ "\u020e\u0108\u0002\u05ca\u05c9\u0003\u0002\u0002\u0002\u05ca\u05cb\u0003",
+ "\u0002\u0002\u0002\u05cb\u05cd\u0003\u0002\u0002\u0002\u05cc\u05c8\u0003",
+ "\u0002\u0002\u0002\u05cc\u05cd\u0003\u0002\u0002\u0002\u05cd\u05ce\u0003",
+ "\u0002\u0002\u0002\u05ce\u05cf\u0007v\u0002\u0002\u05cf\u05d1\u0007",
+ "T\u0002\u0002\u05d0\u05d2\u0005\u020e\u0108\u0002\u05d1\u05d0\u0003",
+ "\u0002\u0002\u0002\u05d1\u05d2\u0003\u0002\u0002\u0002\u05d2\u05d4\u0003",
+ "\u0002\u0002\u0002\u05d3\u05d5\u0005B\"\u0002\u05d4\u05d3\u0003\u0002",
+ "\u0002\u0002\u05d4\u05d5\u0003\u0002\u0002\u0002\u05d5\u05d6\u0003\u0002",
+ "\u0002\u0002\u05d6\u05da\u0005\u0232\u011a\u0002\u05d7\u05d9\u0005D",
+ "#\u0002\u05d8\u05d7\u0003\u0002\u0002\u0002\u05d9\u05dc\u0003\u0002",
+ "\u0002\u0002\u05da\u05d8\u0003\u0002\u0002\u0002\u05da\u05db\u0003\u0002",
+ "\u0002\u0002\u05db\u060e\u0003\u0002\u0002\u0002\u05dc\u05da\u0003\u0002",
+ "\u0002\u0002\u05dd\u05df\u0007\u001d\u0002\u0002\u05de\u05e0\u0005\u020e",
+ "\u0108\u0002\u05df\u05de\u0003\u0002\u0002\u0002\u05df\u05e0\u0003\u0002",
+ "\u0002\u0002\u05e0\u05e2\u0003\u0002\u0002\u0002\u05e1\u05dd\u0003\u0002",
+ "\u0002\u0002\u05e1\u05e2\u0003\u0002\u0002\u0002\u05e2\u05e3\u0003\u0002",
+ "\u0002\u0002\u05e3\u05e5\u0007\u00a5\u0002\u0002\u05e4\u05e6\t\u0014",
+ "\u0002\u0002\u05e5\u05e4\u0003\u0002\u0002\u0002\u05e5\u05e6\u0003\u0002",
+ "\u0002\u0002\u05e6\u05e8\u0003\u0002\u0002\u0002\u05e7\u05e9\u0005\u020e",
+ "\u0108\u0002\u05e8\u05e7\u0003\u0002\u0002\u0002\u05e8\u05e9\u0003\u0002",
+ "\u0002\u0002\u05e9\u05eb\u0003\u0002\u0002\u0002\u05ea\u05ec\u0005B",
+ "\"\u0002\u05eb\u05ea\u0003\u0002\u0002\u0002\u05eb\u05ec\u0003\u0002",
+ "\u0002\u0002\u05ec\u05ed\u0003\u0002\u0002\u0002\u05ed\u05f1\u0005\u0232",
+ "\u011a\u0002\u05ee\u05f0\u0005D#\u0002\u05ef\u05ee\u0003\u0002\u0002",
+ "\u0002\u05f0\u05f3\u0003\u0002\u0002\u0002\u05f1\u05ef\u0003\u0002\u0002",
+ "\u0002\u05f1\u05f2\u0003\u0002\u0002\u0002\u05f2\u060e\u0003\u0002\u0002",
+ "\u0002\u05f3\u05f1\u0003\u0002\u0002\u0002\u05f4\u05f6\u0007\u001d\u0002",
+ "\u0002\u05f5\u05f7\u0005\u020e\u0108\u0002\u05f6\u05f5\u0003\u0002\u0002",
+ "\u0002\u05f6\u05f7\u0003\u0002\u0002\u0002\u05f7\u05f9\u0003\u0002\u0002",
+ "\u0002\u05f8\u05f4\u0003\u0002\u0002\u0002\u05f8\u05f9\u0003\u0002\u0002",
+ "\u0002\u05f9\u05fa\u0003\u0002\u0002\u0002\u05fa\u05fb\u0007>\u0002",
+ "\u0002\u05fb\u05fd\u0007T\u0002\u0002\u05fc\u05fe\u0005\u020e\u0108",
+ "\u0002\u05fd\u05fc\u0003\u0002\u0002\u0002\u05fd\u05fe\u0003\u0002\u0002",
+ "\u0002\u05fe\u05ff\u0003\u0002\u0002\u0002\u05ff\u0600\u0005\u0232\u011a",
+ "\u0002\u0600\u0601\u0005X-\u0002\u0601\u060e\u0003\u0002\u0002\u0002",
+ "\u0602\u0604\u0007\u001d\u0002\u0002\u0603\u0605\u0005\u020e\u0108\u0002",
+ "\u0604\u0603\u0003\u0002\u0002\u0002\u0604\u0605\u0003\u0002\u0002\u0002",
+ "\u0605\u0607\u0003\u0002\u0002\u0002\u0606\u0602\u0003\u0002\u0002\u0002",
+ "\u0606\u0607\u0003\u0002\u0002\u0002\u0607\u0608\u0003\u0002\u0002\u0002",
+ "\u0608\u0609\u0007\u0019\u0002\u0002\u0609\u060a\u0007\u03fe\u0002\u0002",
+ "\u060a\u060b\u0005\u025c\u012f\u0002\u060b\u060c\u0007\u03ff\u0002\u0002",
+ "\u060c\u060e\u0003\u0002\u0002\u0002\u060d\u05cc\u0003\u0002\u0002\u0002",
+ "\u060d\u05e1\u0003\u0002\u0002\u0002\u060d\u05f8\u0003\u0002\u0002\u0002",
+ "\u060d\u0606\u0003\u0002\u0002\u0002\u060eW\u0003\u0002\u0002\u0002",
+ "\u060f\u0610\u0007|\u0002\u0002\u0610\u0612\u0005\u01f6\u00fc\u0002",
+ "\u0611\u0613\u0005\u0232\u011a\u0002\u0612\u0611\u0003\u0002\u0002\u0002",
+ "\u0612\u0613\u0003\u0002\u0002\u0002\u0613\u0616\u0003\u0002\u0002\u0002",
+ "\u0614\u0615\u0007d\u0002\u0002\u0615\u0617\t\u0015\u0002\u0002\u0616",
+ "\u0614\u0003\u0002\u0002\u0002\u0616\u0617\u0003\u0002\u0002\u0002\u0617",
+ "\u0619\u0003\u0002\u0002\u0002\u0618\u061a\u0005Z.\u0002\u0619\u0618",
+ "\u0003\u0002\u0002\u0002\u0619\u061a\u0003\u0002\u0002\u0002\u061aY",
+ "\u0003\u0002\u0002\u0002\u061b\u061c\u0007l\u0002\u0002\u061c\u061d",
+ "\u0007*\u0002\u0002\u061d\u0621\u0005\\/\u0002\u061e\u061f\u0007l\u0002",
+ "\u0002\u061f\u0620\u0007\u00a8\u0002\u0002\u0620\u0622\u0005\\/\u0002",
+ "\u0621\u061e\u0003\u0002\u0002\u0002\u0621\u0622\u0003\u0002\u0002\u0002",
+ "\u0622\u062c\u0003\u0002\u0002\u0002\u0623\u0624\u0007l\u0002\u0002",
+ "\u0624\u0625\u0007\u00a8\u0002\u0002\u0625\u0629\u0005\\/\u0002\u0626",
+ "\u0627\u0007l\u0002\u0002\u0627\u0628\u0007*\u0002\u0002\u0628\u062a",
+ "\u0005\\/\u0002\u0629\u0626\u0003\u0002\u0002\u0002\u0629\u062a\u0003",
+ "\u0002\u0002\u0002\u062a\u062c\u0003\u0002\u0002\u0002\u062b\u061b\u0003",
+ "\u0002\u0002\u0002\u062b\u0623\u0003\u0002\u0002\u0002\u062c[\u0003",
+ "\u0002\u0002\u0002\u062d\u0634\u0007\u0084\u0002\u0002\u062e\u0634\u0007",
+ "\u0014\u0002\u0002\u062f\u0630\u0007\u008c\u0002\u0002\u0630\u0634\u0007",
+ "j\u0002\u0002\u0631\u0632\u0007\u01c2\u0002\u0002\u0632\u0634\u0007",
+ "\u0111\u0002\u0002\u0633\u062d\u0003\u0002\u0002\u0002\u0633\u062e\u0003",
+ "\u0002\u0002\u0002\u0633\u062f\u0003\u0002\u0002\u0002\u0633\u0631\u0003",
+ "\u0002\u0002\u0002\u0634]\u0003\u0002\u0002\u0002\u0635\u0637\t\u0014",
+ "\u0002\u0002\u0636\u0638\u0005\u020e\u0108\u0002\u0637\u0636\u0003\u0002",
+ "\u0002\u0002\u0637\u0638\u0003\u0002\u0002\u0002\u0638\u063a\u0003\u0002",
+ "\u0002\u0002\u0639\u063b\u0005B\"\u0002\u063a\u0639\u0003\u0002\u0002",
+ "\u0002\u063a\u063b\u0003\u0002\u0002\u0002\u063b\u063c\u0003\u0002\u0002",
+ "\u0002\u063c\u0640\u0005\u0232\u011a\u0002\u063d\u063f\u0005D#\u0002",
+ "\u063e\u063d\u0003\u0002\u0002\u0002\u063f\u0642\u0003\u0002\u0002\u0002",
+ "\u0640\u063e\u0003\u0002\u0002\u0002\u0640\u0641\u0003\u0002\u0002\u0002",
+ "\u0641\u0652\u0003\u0002\u0002\u0002\u0642\u0640\u0003\u0002\u0002\u0002",
+ "\u0643\u0645\t\u0016\u0002\u0002\u0644\u0646\t\u0014\u0002\u0002\u0645",
+ "\u0644\u0003\u0002\u0002\u0002\u0645\u0646\u0003\u0002\u0002\u0002\u0646",
+ "\u0648\u0003\u0002\u0002\u0002\u0647\u0649\u0005\u020e\u0108\u0002\u0648",
+ "\u0647\u0003\u0002\u0002\u0002\u0648\u0649\u0003\u0002\u0002\u0002\u0649",
+ "\u064a\u0003\u0002\u0002\u0002\u064a\u064e\u0005\u0232\u011a\u0002\u064b",
+ "\u064d\u0005D#\u0002\u064c\u064b\u0003\u0002\u0002\u0002\u064d\u0650",
+ "\u0003\u0002\u0002\u0002\u064e\u064c\u0003\u0002\u0002\u0002\u064e\u064f",
+ "\u0003\u0002\u0002\u0002\u064f\u0652\u0003\u0002\u0002\u0002\u0650\u064e",
+ "\u0003\u0002\u0002\u0002\u0651\u0635\u0003\u0002\u0002\u0002\u0651\u0643",
+ "\u0003\u0002\u0002\u0002\u0652_\u0003\u0002\u0002\u0002\u0653\u0655",
+ "\u0007\u0158\u0002\u0002\u0654\u0656\u0007\u03f5\u0002\u0002\u0655\u0654",
+ "\u0003\u0002\u0002\u0002\u0655\u0656\u0003\u0002\u0002\u0002\u0656\u0657",
+ "\u0003\u0002\u0002\u0002\u0657\u06e4\u0005\u0204\u0103\u0002\u0658\u065a",
+ "\u0007\u011a\u0002\u0002\u0659\u065b\u0007\u03f5\u0002\u0002\u065a\u0659",
+ "\u0003\u0002\u0002\u0002\u065a\u065b\u0003\u0002\u0002\u0002\u065b\u065c",
+ "\u0003\u0002\u0002\u0002\u065c\u06e4\u0005\u0214\u010b\u0002\u065d\u065f",
+ "\u0007\u011b\u0002\u0002\u065e\u0660\u0007\u03f5\u0002\u0002\u065f\u065e",
+ "\u0003\u0002\u0002\u0002\u065f\u0660\u0003\u0002\u0002\u0002\u0660\u0661",
+ "\u0003\u0002\u0002\u0002\u0661\u06e4\u0005\u0214\u010b\u0002\u0662\u0664",
+ "\u0007(\u0002\u0002\u0663\u0662\u0003\u0002\u0002\u0002\u0663\u0664",
+ "\u0003\u0002\u0002\u0002\u0664\u0668\u0003\u0002\u0002\u0002\u0665\u0666",
+ "\u0007\u0018\u0002\u0002\u0666\u0669\u0007\u008c\u0002\u0002\u0667\u0669",
+ "\u0007\u02dd\u0002\u0002\u0668\u0665\u0003\u0002\u0002\u0002\u0668\u0667",
+ "\u0003\u0002\u0002\u0002\u0669\u066b\u0003\u0002\u0002\u0002\u066a\u066c",
+ "\u0007\u03f5\u0002\u0002\u066b\u066a\u0003\u0002\u0002\u0002\u066b\u066c",
+ "\u0003\u0002\u0002\u0002\u066c\u066f\u0003\u0002\u0002\u0002\u066d\u0670",
+ "\u0005\u0200\u0101\u0002\u066e\u0670\u0007(\u0002\u0002\u066f\u066d",
+ "\u0003\u0002\u0002\u0002\u066f\u066e\u0003\u0002\u0002\u0002\u0670\u06e4",
+ "\u0003\u0002\u0002\u0002\u0671\u0673\t\u0017\u0002\u0002\u0672\u0674",
+ "\u0007\u03f5\u0002\u0002\u0673\u0672\u0003\u0002\u0002\u0002\u0673\u0674",
+ "\u0003\u0002\u0002\u0002\u0674\u0675\u0003\u0002\u0002\u0002\u0675\u06e4",
+ "\t\u0018\u0002\u0002\u0676\u0678\u0007(\u0002\u0002\u0677\u0676\u0003",
+ "\u0002\u0002\u0002\u0677\u0678\u0003\u0002\u0002\u0002\u0678\u0679\u0003",
+ "\u0002\u0002\u0002\u0679\u067b\u0007\u001a\u0002\u0002\u067a\u067c\u0007",
+ "\u03f5\u0002\u0002\u067b\u067a\u0003\u0002\u0002\u0002\u067b\u067c\u0003",
+ "\u0002\u0002\u0002\u067c\u067d\u0003\u0002\u0002\u0002\u067d\u06e4\u0005",
+ "\u0202\u0102\u0002\u067e\u0680\u0007\u0133\u0002\u0002\u067f\u0681\u0007",
+ "\u03f5\u0002\u0002\u0680\u067f\u0003\u0002\u0002\u0002\u0680\u0681\u0003",
+ "\u0002\u0002\u0002\u0681\u0682\u0003\u0002\u0002\u0002\u0682\u06e4\u0007",
+ "\u040d\u0002\u0002\u0683\u0685\u0007\u0138\u0002\u0002\u0684\u0686\u0007",
+ "\u03f5\u0002\u0002\u0685\u0684\u0003\u0002\u0002\u0002\u0685\u0686\u0003",
+ "\u0002\u0002\u0002\u0686\u0687\u0003\u0002\u0002\u0002\u0687\u06e4\t",
+ "\u0019\u0002\u0002\u0688\u068a\u0007\u013a\u0002\u0002\u0689\u068b\u0007",
+ "\u03f5\u0002\u0002\u068a\u0689\u0003\u0002\u0002\u0002\u068a\u068b\u0003",
+ "\u0002\u0002\u0002\u068b\u068c\u0003\u0002\u0002\u0002\u068c\u06e4\u0007",
+ "\u040d\u0002\u0002\u068d\u068e\u0007\u0145\u0002\u0002\u068e\u0690\u0007",
+ "\u014c\u0002\u0002\u068f\u0691\u0007\u03f5\u0002\u0002\u0690\u068f\u0003",
+ "\u0002\u0002\u0002\u0690\u0691\u0003\u0002\u0002\u0002\u0691\u0692\u0003",
+ "\u0002\u0002\u0002\u0692\u06e4\u0007\u040d\u0002\u0002\u0693\u0695\u0007",
+ "\u014a\u0002\u0002\u0694\u0696\u0007\u03f5\u0002\u0002\u0695\u0694\u0003",
+ "\u0002\u0002\u0002\u0695\u0696\u0003\u0002\u0002\u0002\u0696\u0697\u0003",
+ "\u0002\u0002\u0002\u0697\u06e4\t\u0018\u0002\u0002\u0698\u069a\u0007",
+ "\u0155\u0002\u0002\u0699\u069b\u0007\u03f5\u0002\u0002\u069a\u0699\u0003",
+ "\u0002\u0002\u0002\u069a\u069b\u0003\u0002\u0002\u0002\u069b\u069c\u0003",
+ "\u0002\u0002\u0002\u069c\u06e4\u0007\u040d\u0002\u0002\u069d\u069e\u0007",
+ "J\u0002\u0002\u069e\u06a0\u0007\u014c\u0002\u0002\u069f\u06a1\u0007",
+ "\u03f5\u0002\u0002\u06a0\u069f\u0003\u0002\u0002\u0002\u06a0\u06a1\u0003",
+ "\u0002\u0002\u0002\u06a1\u06a2\u0003\u0002\u0002\u0002\u06a2\u06e4\u0007",
+ "\u040d\u0002\u0002\u06a3\u06a5\u0007\u0182\u0002\u0002\u06a4\u06a6\u0007",
+ "\u03f5\u0002\u0002\u06a5\u06a4\u0003\u0002\u0002\u0002\u06a5\u06a6\u0003",
+ "\u0002\u0002\u0002\u06a6\u06a7\u0003\u0002\u0002\u0002\u06a7\u06e4\t",
+ "\u001a\u0002\u0002\u06a8\u06aa\u0007\u018d\u0002\u0002\u06a9\u06ab\u0007",
+ "\u03f5\u0002\u0002\u06aa\u06a9\u0003\u0002\u0002\u0002\u06aa\u06ab\u0003",
+ "\u0002\u0002\u0002\u06ab\u06ac\u0003\u0002\u0002\u0002\u06ac\u06e4\u0005",
+ "\u0216\u010c\u0002\u06ad\u06af\u0007\u01ae\u0002\u0002\u06ae\u06b0\u0007",
+ "\u03f5\u0002\u0002\u06af\u06ae\u0003\u0002\u0002\u0002\u06af\u06b0\u0003",
+ "\u0002\u0002\u0002\u06b0\u06b1\u0003\u0002\u0002\u0002\u06b1\u06e4\u0005",
+ "\u0214\u010b\u0002\u06b2\u06b4\u0007\u01b7\u0002\u0002\u06b3\u06b5\u0007",
+ "\u03f5\u0002\u0002\u06b4\u06b3\u0003\u0002\u0002\u0002\u06b4\u06b5\u0003",
+ "\u0002\u0002\u0002\u06b5\u06b6\u0003\u0002\u0002\u0002\u06b6\u06e4\u0005",
+ "\u0214\u010b\u0002\u06b7\u06b9\u0007\u01d0\u0002\u0002\u06b8\u06ba\u0007",
+ "\u03f5\u0002\u0002\u06b9\u06b8\u0003\u0002\u0002\u0002\u06b9\u06ba\u0003",
+ "\u0002\u0002\u0002\u06ba\u06bb\u0003\u0002\u0002\u0002\u06bb\u06e4\t",
+ "\u001b\u0002\u0002\u06bc\u06be\u0007\u01d6\u0002\u0002\u06bd\u06bf\u0007",
+ "\u03f5\u0002\u0002\u06be\u06bd\u0003\u0002\u0002\u0002\u06be\u06bf\u0003",
+ "\u0002\u0002\u0002\u06bf\u06c0\u0003\u0002\u0002\u0002\u06c0\u06e4\u0007",
+ "\u040d\u0002\u0002\u06c1\u06c3\u0007\u0203\u0002\u0002\u06c2\u06c4\u0007",
+ "\u03f5\u0002\u0002\u06c3\u06c2\u0003\u0002\u0002\u0002\u06c3\u06c4\u0003",
+ "\u0002\u0002\u0002\u06c4\u06c5\u0003\u0002\u0002\u0002\u06c5\u06e4\t",
+ "\u001c\u0002\u0002\u06c6\u06c8\u0007\u021e\u0002\u0002\u06c7\u06c9\u0007",
+ "\u03f5\u0002\u0002\u06c8\u06c7\u0003\u0002\u0002\u0002\u06c8\u06c9\u0003",
+ "\u0002\u0002\u0002\u06c9\u06ca\u0003\u0002\u0002\u0002\u06ca\u06e4\t",
+ "\u001b\u0002\u0002\u06cb\u06cd\u0007\u021f\u0002\u0002\u06cc\u06ce\u0007",
+ "\u03f5\u0002\u0002\u06cd\u06cc\u0003\u0002\u0002\u0002\u06cd\u06ce\u0003",
+ "\u0002\u0002\u0002\u06ce\u06cf\u0003\u0002\u0002\u0002\u06cf\u06e4\t",
+ "\u001b\u0002\u0002\u06d0\u06d2\u0007\u0220\u0002\u0002\u06d1\u06d3\u0007",
+ "\u03f5\u0002\u0002\u06d2\u06d1\u0003\u0002\u0002\u0002\u06d2\u06d3\u0003",
+ "\u0002\u0002\u0002\u06d3\u06d4\u0003\u0002\u0002\u0002\u06d4\u06e4\u0005",
+ "\u0214\u010b\u0002\u06d5\u06d6\u0007\u022e\u0002\u0002\u06d6\u06d8\u0005",
+ "\u020e\u0108\u0002\u06d7\u06d9\u0005b2\u0002\u06d8\u06d7\u0003\u0002",
+ "\u0002\u0002\u06d8\u06d9\u0003\u0002\u0002\u0002\u06d9\u06e4\u0003\u0002",
+ "\u0002\u0002\u06da\u06e4\u0005b2\u0002\u06db\u06dd\u0007\u00a4\u0002",
+ "\u0002\u06dc\u06de\u0007\u03f5\u0002\u0002\u06dd\u06dc\u0003\u0002\u0002",
+ "\u0002\u06dd\u06de\u0003\u0002\u0002\u0002\u06de\u06df\u0003\u0002\u0002",
+ "\u0002\u06df\u06e0\u0007\u03fe\u0002\u0002\u06e0\u06e1\u0005\u0230\u0119",
+ "\u0002\u06e1\u06e2\u0007\u03ff\u0002\u0002\u06e2\u06e4\u0003\u0002\u0002",
+ "\u0002\u06e3\u0653\u0003\u0002\u0002\u0002\u06e3\u0658\u0003\u0002\u0002",
+ "\u0002\u06e3\u065d\u0003\u0002\u0002\u0002\u06e3\u0663\u0003\u0002\u0002",
+ "\u0002\u06e3\u0671\u0003\u0002\u0002\u0002\u06e3\u0677\u0003\u0002\u0002",
+ "\u0002\u06e3\u067e\u0003\u0002\u0002\u0002\u06e3\u0683\u0003\u0002\u0002",
+ "\u0002\u06e3\u0688\u0003\u0002\u0002\u0002\u06e3\u068d\u0003\u0002\u0002",
+ "\u0002\u06e3\u0693\u0003\u0002\u0002\u0002\u06e3\u0698\u0003\u0002\u0002",
+ "\u0002\u06e3\u069d\u0003\u0002\u0002\u0002\u06e3\u06a3\u0003\u0002\u0002",
+ "\u0002\u06e3\u06a8\u0003\u0002\u0002\u0002\u06e3\u06ad\u0003\u0002\u0002",
+ "\u0002\u06e3\u06b2\u0003\u0002\u0002\u0002\u06e3\u06b7\u0003\u0002\u0002",
+ "\u0002\u06e3\u06bc\u0003\u0002\u0002\u0002\u06e3\u06c1\u0003\u0002\u0002",
+ "\u0002\u06e3\u06c6\u0003\u0002\u0002\u0002\u06e3\u06cb\u0003\u0002\u0002",
+ "\u0002\u06e3\u06d0\u0003\u0002\u0002\u0002\u06e3\u06d5\u0003\u0002\u0002",
+ "\u0002\u06e3\u06da\u0003\u0002\u0002\u0002\u06e3\u06db\u0003\u0002\u0002",
+ "\u0002\u06e4a\u0003\u0002\u0002\u0002\u06e5\u06e6\u0007\u0223\u0002",
+ "\u0002\u06e6\u06e7\t\u0012\u0002\u0002\u06e7c\u0003\u0002\u0002\u0002",
+ "\u06e8\u06e9\u0007u\u0002\u0002\u06e9\u06ea\u0007\u0012\u0002\u0002",
+ "\u06ea\u06ed\u0005f4\u0002\u06eb\u06ec\u0007\u01d5\u0002\u0002\u06ec",
+ "\u06ee\u0005\u0214\u010b\u0002\u06ed\u06eb\u0003\u0002\u0002\u0002\u06ed",
+ "\u06ee\u0003\u0002\u0002\u0002\u06ee\u06f6\u0003\u0002\u0002\u0002\u06ef",
+ "\u06f0\u0007\u0228\u0002\u0002\u06f0\u06f1\u0007\u0012\u0002\u0002\u06f1",
+ "\u06f4\u0005h5\u0002\u06f2\u06f3\u0007\u0229\u0002\u0002\u06f3\u06f5",
+ "\u0005\u0214\u010b\u0002\u06f4\u06f2\u0003\u0002\u0002\u0002\u06f4\u06f5",
+ "\u0003\u0002\u0002\u0002\u06f5\u06f7\u0003\u0002\u0002\u0002\u06f6\u06ef",
+ "\u0003\u0002\u0002\u0002\u06f6\u06f7\u0003\u0002\u0002\u0002\u06f7\u0703",
+ "\u0003\u0002\u0002\u0002\u06f8\u06f9\u0007\u03fe\u0002\u0002\u06f9\u06fe",
+ "\u0005j6\u0002\u06fa\u06fb\u0007\u0400\u0002\u0002\u06fb\u06fd\u0005",
+ "j6\u0002\u06fc\u06fa\u0003\u0002\u0002\u0002\u06fd\u0700\u0003\u0002",
+ "\u0002\u0002\u06fe\u06fc\u0003\u0002\u0002\u0002\u06fe\u06ff\u0003\u0002",
+ "\u0002\u0002\u06ff\u0701\u0003\u0002\u0002\u0002\u0700\u06fe\u0003\u0002",
+ "\u0002\u0002\u0701\u0702\u0007\u03ff\u0002\u0002\u0702\u0704\u0003\u0002",
+ "\u0002\u0002\u0703\u06f8\u0003\u0002\u0002\u0002\u0703\u0704\u0003\u0002",
+ "\u0002\u0002\u0704e\u0003\u0002\u0002\u0002\u0705\u0707\u0007\\\u0002",
+ "\u0002\u0706\u0705\u0003\u0002\u0002\u0002\u0706\u0707\u0003\u0002\u0002",
+ "\u0002\u0707\u0708\u0003\u0002\u0002\u0002\u0708\u0709\u0007\u0178\u0002",
+ "\u0002\u0709\u070a\u0007\u03fe\u0002\u0002\u070a\u070b\u0005\u025c\u012f",
+ "\u0002\u070b\u070c\u0007\u03ff\u0002\u0002\u070c\u0733\u0003\u0002\u0002",
+ "\u0002\u070d\u070f\u0007\\\u0002\u0002\u070e\u070d\u0003\u0002\u0002",
+ "\u0002\u070e\u070f\u0003\u0002\u0002\u0002\u070f\u0710\u0003\u0002\u0002",
+ "\u0002\u0710\u0714\u0007T\u0002\u0002\u0711\u0712\u0007\u0114\u0002",
+ "\u0002\u0712\u0713\u0007\u03f5\u0002\u0002\u0713\u0715\t\u001d\u0002",
+ "\u0002\u0714\u0711\u0003\u0002\u0002\u0002\u0714\u0715\u0003\u0002\u0002",
+ "\u0002\u0715\u0716\u0003\u0002\u0002\u0002\u0716\u0717\u0007\u03fe\u0002",
+ "\u0002\u0717\u0718\u0005\u022e\u0118\u0002\u0718\u0719\u0007\u03ff\u0002",
+ "\u0002\u0719\u0733\u0003\u0002\u0002\u0002\u071a\u0724\u0007y\u0002",
+ "\u0002\u071b\u071c\u0007\u03fe\u0002\u0002\u071c\u071d\u0005\u025c\u012f",
+ "\u0002\u071d\u071e\u0007\u03ff\u0002\u0002\u071e\u0725\u0003\u0002\u0002",
+ "\u0002\u071f\u0720\u0007\u0130\u0002\u0002\u0720\u0721\u0007\u03fe\u0002",
+ "\u0002\u0721\u0722\u0005\u022e\u0118\u0002\u0722\u0723\u0007\u03ff\u0002",
+ "\u0002\u0723\u0725\u0003\u0002\u0002\u0002\u0724\u071b\u0003\u0002\u0002",
+ "\u0002\u0724\u071f\u0003\u0002\u0002\u0002\u0725\u0733\u0003\u0002\u0002",
+ "\u0002\u0726\u0730\u0007\u0193\u0002\u0002\u0727\u0728\u0007\u03fe\u0002",
+ "\u0002\u0728\u0729\u0005\u025c\u012f\u0002\u0729\u072a\u0007\u03ff\u0002",
+ "\u0002\u072a\u0731\u0003\u0002\u0002\u0002\u072b\u072c\u0007\u0130\u0002",
+ "\u0002\u072c\u072d\u0007\u03fe\u0002\u0002\u072d\u072e\u0005\u022e\u0118",
+ "\u0002\u072e\u072f\u0007\u03ff\u0002\u0002\u072f\u0731\u0003\u0002\u0002",
+ "\u0002\u0730\u0727\u0003\u0002\u0002\u0002\u0730\u072b\u0003\u0002\u0002",
+ "\u0002\u0731\u0733\u0003\u0002\u0002\u0002\u0732\u0706\u0003\u0002\u0002",
+ "\u0002\u0732\u070e\u0003\u0002\u0002\u0002\u0732\u071a\u0003\u0002\u0002",
+ "\u0002\u0732\u0726\u0003\u0002\u0002\u0002\u0733g\u0003\u0002\u0002",
+ "\u0002\u0734\u0736\u0007\\\u0002\u0002\u0735\u0734\u0003\u0002\u0002",
+ "\u0002\u0735\u0736\u0003\u0002\u0002\u0002\u0736\u0737\u0003\u0002\u0002",
+ "\u0002\u0737\u0738\u0007\u0178\u0002\u0002\u0738\u0739\u0007\u03fe\u0002",
+ "\u0002\u0739\u073a\u0005\u025c\u012f\u0002\u073a\u073b\u0007\u03ff\u0002",
+ "\u0002\u073b\u074a\u0003\u0002\u0002\u0002\u073c\u073e\u0007\\\u0002",
+ "\u0002\u073d\u073c\u0003\u0002\u0002\u0002\u073d\u073e\u0003\u0002\u0002",
+ "\u0002\u073e\u073f\u0003\u0002\u0002\u0002\u073f\u0743\u0007T\u0002",
+ "\u0002\u0740\u0741\u0007\u0114\u0002\u0002\u0741\u0742\u0007\u03f5\u0002",
+ "\u0002\u0742\u0744\t\u001d\u0002\u0002\u0743\u0740\u0003\u0002\u0002",
+ "\u0002\u0743\u0744\u0003\u0002\u0002\u0002\u0744\u0745\u0003\u0002\u0002",
+ "\u0002\u0745\u0746\u0007\u03fe\u0002\u0002\u0746\u0747\u0005\u022e\u0118",
+ "\u0002\u0747\u0748\u0007\u03ff\u0002\u0002\u0748\u074a\u0003\u0002\u0002",
+ "\u0002\u0749\u0735\u0003\u0002\u0002\u0002\u0749\u073d\u0003\u0002\u0002",
+ "\u0002\u074ai\u0003\u0002\u0002\u0002\u074b\u074c\u0007u\u0002\u0002",
+ "\u074c\u074d\u0005\u020e\u0108\u0002\u074d\u074e\u0007\u00ac\u0002\u0002",
+ "\u074e\u074f\u0007\u0191\u0002\u0002\u074f\u0750\u0007\u0231\u0002\u0002",
+ "\u0750\u0751\u0007\u03fe\u0002\u0002\u0751\u0756\u0005l7\u0002\u0752",
+ "\u0753\u0007\u0400\u0002\u0002\u0753\u0755\u0005l7\u0002\u0754\u0752",
+ "\u0003\u0002\u0002\u0002\u0755\u0758\u0003\u0002\u0002\u0002\u0756\u0754",
+ "\u0003\u0002\u0002\u0002\u0756\u0757\u0003\u0002\u0002\u0002\u0757\u0759",
+ "\u0003\u0002\u0002\u0002\u0758\u0756\u0003\u0002\u0002\u0002\u0759\u075d",
+ "\u0007\u03ff\u0002\u0002\u075a\u075c\u0005r:\u0002\u075b\u075a\u0003",
+ "\u0002\u0002\u0002\u075c\u075f\u0003\u0002\u0002\u0002\u075d\u075b\u0003",
+ "\u0002\u0002\u0002\u075d\u075e\u0003\u0002\u0002\u0002\u075e\u0768\u0003",
+ "\u0002\u0002\u0002\u075f\u075d\u0003\u0002\u0002\u0002\u0760\u0765\u0005",
+ "p9\u0002\u0761\u0762\u0007\u0400\u0002\u0002\u0762\u0764\u0005p9\u0002",
+ "\u0763\u0761\u0003\u0002\u0002\u0002\u0764\u0767\u0003\u0002\u0002\u0002",
+ "\u0765\u0763\u0003\u0002\u0002\u0002\u0765\u0766\u0003\u0002\u0002\u0002",
+ "\u0766\u0769\u0003\u0002\u0002\u0002\u0767\u0765\u0003\u0002\u0002\u0002",
+ "\u0768\u0760\u0003\u0002\u0002\u0002\u0768\u0769\u0003\u0002\u0002\u0002",
+ "\u0769\u07cf\u0003\u0002\u0002\u0002\u076a\u076b\u0007u\u0002\u0002",
+ "\u076b\u076c\u0005\u020e\u0108\u0002\u076c\u076d\u0007\u00ac\u0002\u0002",
+ "\u076d\u076e\u0007\u0191\u0002\u0002\u076e\u076f\u0007\u0231\u0002\u0002",
+ "\u076f\u0773\u0005l7\u0002\u0770\u0772\u0005r:\u0002\u0771\u0770\u0003",
+ "\u0002\u0002\u0002\u0772\u0775\u0003\u0002\u0002\u0002\u0773\u0771\u0003",
+ "\u0002\u0002\u0002\u0773\u0774\u0003\u0002\u0002\u0002\u0774\u077e\u0003",
+ "\u0002\u0002\u0002\u0775\u0773\u0003\u0002\u0002\u0002\u0776\u077b\u0005",
+ "p9\u0002\u0777\u0778\u0007\u0400\u0002\u0002\u0778\u077a\u0005p9\u0002",
+ "\u0779\u0777\u0003\u0002\u0002\u0002\u077a\u077d\u0003\u0002\u0002\u0002",
+ "\u077b\u0779\u0003\u0002\u0002\u0002\u077b\u077c\u0003\u0002\u0002\u0002",
+ "\u077c\u077f\u0003\u0002\u0002\u0002\u077d\u077b\u0003\u0002\u0002\u0002",
+ "\u077e\u0776\u0003\u0002\u0002\u0002\u077e\u077f\u0003\u0002\u0002\u0002",
+ "\u077f\u07cf\u0003\u0002\u0002\u0002\u0780\u0781\u0007u\u0002\u0002",
+ "\u0781\u0782\u0005\u020e\u0108\u0002\u0782\u0783\u0007\u00ac\u0002\u0002",
+ "\u0783\u0784\u0007I\u0002\u0002\u0784\u0785\u0007\u03fe\u0002\u0002",
+ "\u0785\u078a\u0005l7\u0002\u0786\u0787\u0007\u0400\u0002\u0002\u0787",
+ "\u0789\u0005l7\u0002\u0788\u0786\u0003\u0002\u0002\u0002\u0789\u078c",
+ "\u0003\u0002\u0002\u0002\u078a\u0788\u0003\u0002\u0002\u0002\u078a\u078b",
+ "\u0003\u0002\u0002\u0002\u078b\u078d\u0003\u0002\u0002\u0002\u078c\u078a",
+ "\u0003\u0002\u0002\u0002\u078d\u0791\u0007\u03ff\u0002\u0002\u078e\u0790",
+ "\u0005r:\u0002\u078f\u078e\u0003\u0002\u0002\u0002\u0790\u0793\u0003",
+ "\u0002\u0002\u0002\u0791\u078f\u0003\u0002\u0002\u0002\u0791\u0792\u0003",
+ "\u0002\u0002\u0002\u0792\u079c\u0003\u0002\u0002\u0002\u0793\u0791\u0003",
+ "\u0002\u0002\u0002\u0794\u0799\u0005p9\u0002\u0795\u0796\u0007\u0400",
+ "\u0002\u0002\u0796\u0798\u0005p9\u0002\u0797\u0795\u0003\u0002\u0002",
+ "\u0002\u0798\u079b\u0003\u0002\u0002\u0002\u0799\u0797\u0003\u0002\u0002",
+ "\u0002\u0799\u079a\u0003\u0002\u0002\u0002\u079a\u079d\u0003\u0002\u0002",
+ "\u0002\u079b\u0799\u0003\u0002\u0002\u0002\u079c\u0794\u0003\u0002\u0002",
+ "\u0002\u079c\u079d\u0003\u0002\u0002\u0002\u079d\u07cf\u0003\u0002\u0002",
+ "\u0002\u079e\u079f\u0007u\u0002\u0002\u079f\u07a0\u0005\u020e\u0108",
+ "\u0002\u07a0\u07a1\u0007\u00ac\u0002\u0002\u07a1\u07a2\u0007I\u0002",
+ "\u0002\u07a2\u07a3\u0007\u03fe\u0002\u0002\u07a3\u07a8\u0005n8\u0002",
+ "\u07a4\u07a5\u0007\u0400\u0002\u0002\u07a5\u07a7\u0005n8\u0002\u07a6",
+ "\u07a4\u0003\u0002\u0002\u0002\u07a7\u07aa\u0003\u0002\u0002\u0002\u07a8",
+ "\u07a6\u0003\u0002\u0002\u0002\u07a8\u07a9\u0003\u0002\u0002\u0002\u07a9",
+ "\u07ab\u0003\u0002\u0002\u0002\u07aa\u07a8\u0003\u0002\u0002\u0002\u07ab",
+ "\u07af\u0007\u03ff\u0002\u0002\u07ac\u07ae\u0005r:\u0002\u07ad\u07ac",
+ "\u0003\u0002\u0002\u0002\u07ae\u07b1\u0003\u0002\u0002\u0002\u07af\u07ad",
+ "\u0003\u0002\u0002\u0002\u07af\u07b0\u0003\u0002\u0002\u0002\u07b0\u07ba",
+ "\u0003\u0002\u0002\u0002\u07b1\u07af\u0003\u0002\u0002\u0002\u07b2\u07b7",
+ "\u0005p9\u0002\u07b3\u07b4\u0007\u0400\u0002\u0002\u07b4\u07b6\u0005",
+ "p9\u0002\u07b5\u07b3\u0003\u0002\u0002\u0002\u07b6\u07b9\u0003\u0002",
+ "\u0002\u0002\u07b7\u07b5\u0003\u0002\u0002\u0002\u07b7\u07b8\u0003\u0002",
+ "\u0002\u0002\u07b8\u07bb\u0003\u0002\u0002\u0002\u07b9\u07b7\u0003\u0002",
+ "\u0002\u0002\u07ba\u07b2\u0003\u0002\u0002\u0002\u07ba\u07bb\u0003\u0002",
+ "\u0002\u0002\u07bb\u07cf\u0003\u0002\u0002\u0002\u07bc\u07bd\u0007u",
+ "\u0002\u0002\u07bd\u07c1\u0005\u020e\u0108\u0002\u07be\u07c0\u0005r",
+ ":\u0002\u07bf\u07be\u0003\u0002\u0002\u0002\u07c0\u07c3\u0003\u0002",
+ "\u0002\u0002\u07c1\u07bf\u0003\u0002\u0002\u0002\u07c1\u07c2\u0003\u0002",
+ "\u0002\u0002\u07c2\u07cc\u0003\u0002\u0002\u0002\u07c3\u07c1\u0003\u0002",
+ "\u0002\u0002\u07c4\u07c9\u0005p9\u0002\u07c5\u07c6\u0007\u0400\u0002",
+ "\u0002\u07c6\u07c8\u0005p9\u0002\u07c7\u07c5\u0003\u0002\u0002\u0002",
+ "\u07c8\u07cb\u0003\u0002\u0002\u0002\u07c9\u07c7\u0003\u0002\u0002\u0002",
+ "\u07c9\u07ca\u0003\u0002\u0002\u0002\u07ca\u07cd\u0003\u0002\u0002\u0002",
+ "\u07cb\u07c9\u0003\u0002\u0002\u0002\u07cc\u07c4\u0003\u0002\u0002\u0002",
+ "\u07cc\u07cd\u0003\u0002\u0002\u0002\u07cd\u07cf\u0003\u0002\u0002\u0002",
+ "\u07ce\u074b\u0003\u0002\u0002\u0002\u07ce\u076a\u0003\u0002\u0002\u0002",
+ "\u07ce\u0780\u0003\u0002\u0002\u0002\u07ce\u079e\u0003\u0002\u0002\u0002",
+ "\u07ce\u07bc\u0003\u0002\u0002\u0002\u07cfk\u0003\u0002\u0002\u0002",
+ "\u07d0\u07d4\u0005\u0220\u0111\u0002\u07d1\u07d4\u0005\u025c\u012f\u0002",
+ "\u07d2\u07d4\u0007e\u0002\u0002\u07d3\u07d0\u0003\u0002\u0002\u0002",
+ "\u07d3\u07d1\u0003\u0002\u0002\u0002\u07d3\u07d2\u0003\u0002\u0002\u0002",
+ "\u07d4m\u0003\u0002\u0002\u0002\u07d5\u07d6\u0007\u03fe\u0002\u0002",
+ "\u07d6\u07d9\u0005l7\u0002\u07d7\u07d8\u0007\u0400\u0002\u0002\u07d8",
+ "\u07da\u0005l7\u0002\u07d9\u07d7\u0003\u0002\u0002\u0002\u07da\u07db",
+ "\u0003\u0002\u0002\u0002\u07db\u07d9\u0003\u0002\u0002\u0002\u07db\u07dc",
+ "\u0003\u0002\u0002\u0002\u07dc\u07dd\u0003\u0002\u0002\u0002\u07dd\u07de",
+ "\u0007\u03ff\u0002\u0002\u07deo\u0003\u0002\u0002\u0002\u07df\u07e0",
+ "\u0007\u0228\u0002\u0002\u07e0\u07e4\u0005\u020e\u0108\u0002\u07e1\u07e3",
+ "\u0005r:\u0002\u07e2\u07e1\u0003\u0002\u0002\u0002\u07e3\u07e6\u0003",
+ "\u0002\u0002\u0002\u07e4\u07e2\u0003\u0002\u0002\u0002\u07e4\u07e5\u0003",
+ "\u0002\u0002\u0002\u07e5q\u0003\u0002\u0002\u0002\u07e6\u07e4\u0003",
+ "\u0002\u0002\u0002\u07e7\u07e9\u0007\u0223\u0002\u0002\u07e8\u07e7\u0003",
+ "\u0002\u0002\u0002\u07e8\u07e9\u0003\u0002\u0002\u0002\u07e9\u07ea\u0003",
+ "\u0002\u0002\u0002\u07ea\u07ec\u0007\u0158\u0002\u0002\u07eb\u07ed\u0007",
+ "\u03f5\u0002\u0002\u07ec\u07eb\u0003\u0002\u0002\u0002\u07ec\u07ed\u0003",
+ "\u0002\u0002\u0002\u07ed\u07ee\u0003\u0002\u0002\u0002\u07ee\u0815\u0005",
+ "\u0204\u0103\u0002\u07ef\u07f1\u0007\u0133\u0002\u0002\u07f0\u07f2\u0007",
+ "\u03f5\u0002\u0002\u07f1\u07f0\u0003\u0002\u0002\u0002\u07f1\u07f2\u0003",
+ "\u0002\u0002\u0002\u07f2\u07f3\u0003\u0002\u0002\u0002\u07f3\u0815\u0007",
+ "\u040d\u0002\u0002\u07f4\u07f5\u0007\u0145\u0002\u0002\u07f5\u07f7\u0007",
+ "\u014c\u0002\u0002\u07f6\u07f8\u0007\u03f5\u0002\u0002\u07f7\u07f6\u0003",
+ "\u0002\u0002\u0002\u07f7\u07f8\u0003\u0002\u0002\u0002\u07f8\u07f9\u0003",
+ "\u0002\u0002\u0002\u07f9\u0815\u0007\u040d\u0002\u0002\u07fa\u07fb\u0007",
+ "J\u0002\u0002\u07fb\u07fd\u0007\u014c\u0002\u0002\u07fc\u07fe\u0007",
+ "\u03f5\u0002\u0002\u07fd\u07fc\u0003\u0002\u0002\u0002\u07fd\u07fe\u0003",
+ "\u0002\u0002\u0002\u07fe\u07ff\u0003\u0002\u0002\u0002\u07ff\u0815\u0007",
+ "\u040d\u0002\u0002\u0800\u0802\u0007\u01ae\u0002\u0002\u0801\u0803\u0007",
+ "\u03f5\u0002\u0002\u0802\u0801\u0003\u0002\u0002\u0002\u0802\u0803\u0003",
+ "\u0002\u0002\u0002\u0803\u0804\u0003\u0002\u0002\u0002\u0804\u0815\u0005",
+ "\u0214\u010b\u0002\u0805\u0807\u0007\u01b7\u0002\u0002\u0806\u0808\u0007",
+ "\u03f5\u0002\u0002\u0807\u0806\u0003\u0002\u0002\u0002\u0807\u0808\u0003",
+ "\u0002\u0002\u0002\u0808\u0809\u0003\u0002\u0002\u0002\u0809\u0815\u0005",
+ "\u0214\u010b\u0002\u080a\u080c\u0007\u022e\u0002\u0002\u080b\u080d\u0007",
+ "\u03f5\u0002\u0002\u080c\u080b\u0003\u0002\u0002\u0002\u080c\u080d\u0003",
+ "\u0002\u0002\u0002\u080d\u080e\u0003\u0002\u0002\u0002\u080e\u0815\u0005",
+ "\u020e\u0108\u0002\u080f\u0811\u0007\u01c3\u0002\u0002\u0810\u0812\u0007",
+ "\u03f5\u0002\u0002\u0811\u0810\u0003\u0002\u0002\u0002\u0811\u0812\u0003",
+ "\u0002\u0002\u0002\u0812\u0813\u0003\u0002\u0002\u0002\u0813\u0815\u0005",
+ "\u020e\u0108\u0002\u0814\u07e8\u0003\u0002\u0002\u0002\u0814\u07ef\u0003",
+ "\u0002\u0002\u0002\u0814\u07f4\u0003\u0002\u0002\u0002\u0814\u07fa\u0003",
+ "\u0002\u0002\u0002\u0814\u0800\u0003\u0002\u0002\u0002\u0814\u0805\u0003",
+ "\u0002\u0002\u0002\u0814\u080a\u0003\u0002\u0002\u0002\u0814\u080f\u0003",
+ "\u0002\u0002\u0002\u0815s\u0003\u0002\u0002\u0002\u0816\u0817\u0007",
+ "\t\u0002\u0002\u0817\u0819\t\u0002\u0002\u0002\u0818\u081a\u0005\u020e",
+ "\u0108\u0002\u0819\u0818\u0003\u0002\u0002\u0002\u0819\u081a\u0003\u0002",
+ "\u0002\u0002\u081a\u081c\u0003\u0002\u0002\u0002\u081b\u081d\u00054",
+ "\u001b\u0002\u081c\u081b\u0003\u0002\u0002\u0002\u081d\u081e\u0003\u0002",
+ "\u0002\u0002\u081e\u081c\u0003\u0002\u0002\u0002\u081e\u081f\u0003\u0002",
+ "\u0002\u0002\u081f\u0829\u0003\u0002\u0002\u0002\u0820\u0821\u0007\t",
+ "\u0002\u0002\u0821\u0822\t\u0002\u0002\u0002\u0822\u0823\u0005\u020e",
+ "\u0108\u0002\u0823\u0824\u0007\u023d\u0002\u0002\u0824\u0825\u0007\u0145",
+ "\u0002\u0002\u0825\u0826\u0007\u014c\u0002\u0002\u0826\u0827\u0007\u01bd",
+ "\u0002\u0002\u0827\u0829\u0003\u0002\u0002\u0002\u0828\u0816\u0003\u0002",
+ "\u0002\u0002\u0828\u0820\u0003\u0002\u0002\u0002\u0829u\u0003\u0002",
+ "\u0002\u0002\u082a\u082c\u0007\t\u0002\u0002\u082b\u082d\u00056\u001c",
+ "\u0002\u082c\u082b\u0003\u0002\u0002\u0002\u082c\u082d\u0003\u0002\u0002",
+ "\u0002\u082d\u082e\u0003\u0002\u0002\u0002\u082e\u082f\u0007\u015e\u0002",
+ "\u0002\u082f\u0833\u0005\u01f4\u00fb\u0002\u0830\u0831\u0007l\u0002",
+ "\u0002\u0831\u0832\u0007\u0205\u0002\u0002\u0832\u0834\u00058\u001d",
+ "\u0002\u0833\u0830\u0003\u0002\u0002\u0002\u0833\u0834\u0003\u0002\u0002",
+ "\u0002\u0834\u083b\u0003\u0002\u0002\u0002\u0835\u0836\u0007l\u0002",
+ "\u0002\u0836\u0838\u0007\u0136\u0002\u0002\u0837\u0839\u0007h\u0002",
+ "\u0002\u0838\u0837\u0003\u0002\u0002\u0002\u0838\u0839\u0003\u0002\u0002",
+ "\u0002\u0839\u083a\u0003\u0002\u0002\u0002\u083a\u083c\u0007\u01de\u0002",
+ "\u0002\u083b\u0835\u0003\u0002\u0002\u0002\u083b\u083c\u0003\u0002\u0002",
+ "\u0002\u083c\u0840\u0003\u0002\u0002\u0002\u083d\u083e\u0007\u007f\u0002",
+ "\u0002\u083e\u083f\u0007\u009f\u0002\u0002\u083f\u0841\u0005\u01f4\u00fb",
+ "\u0002\u0840\u083d\u0003\u0002\u0002\u0002\u0840\u0841\u0003\u0002\u0002",
+ "\u0002\u0841\u0843\u0003\u0002\u0002\u0002\u0842\u0844\u0005@!\u0002",
+ "\u0843\u0842\u0003\u0002\u0002\u0002\u0843\u0844\u0003\u0002\u0002\u0002",
+ "\u0844\u0847\u0003\u0002\u0002\u0002\u0845\u0846\u0007\u0133\u0002\u0002",
+ "\u0846\u0848\u0007\u040d\u0002\u0002\u0847\u0845\u0003\u0002\u0002\u0002",
+ "\u0847\u0848\u0003\u0002\u0002\u0002\u0848\u084b\u0003\u0002\u0002\u0002",
+ "\u0849\u084a\u0007\u0150\u0002\u0002\u084a\u084c\u0005\u015c\u00af\u0002",
+ "\u084b\u0849\u0003\u0002\u0002\u0002\u084b\u084c\u0003\u0002\u0002\u0002",
+ "\u084cw\u0003\u0002\u0002\u0002\u084d\u084e\u0007\t\u0002\u0002\u084e",
+ "\u084f\u0007\u0172\u0002\u0002\u084f\u0853\u0005\u01f4\u00fb\u0002\u0850",
+ "\u0852\u0005J&\u0002\u0851\u0850\u0003\u0002\u0002\u0002\u0852\u0855",
+ "\u0003\u0002\u0002\u0002\u0853\u0851\u0003\u0002\u0002\u0002\u0853\u0854",
+ "\u0003\u0002\u0002\u0002\u0854y\u0003\u0002\u0002\u0002\u0855\u0853",
+ "\u0003\u0002\u0002\u0002\u0856\u0857\u0007\t\u0002\u0002\u0857\u0858",
+ "\u0007\u0184\u0002\u0002\u0858\u0859\u0007\u0200\u0002\u0002\u0859\u085a",
+ "\u0007\u02ab\u0002\u0002\u085a\u085b\u0007\u0197\u0002\u0002\u085b\u085c",
+ "\u0007T\u0002\u0002\u085c{\u0003\u0002\u0002\u0002\u085d\u085e\u0007",
+ "\t\u0002\u0002\u085e\u085f\u0007\u0195\u0002\u0002\u085f\u0860\u0007",
+ "D\u0002\u0002\u0860\u0861\u0005\u020e\u0108\u0002\u0861\u0862\u0007",
+ "\u0007\u0002\u0002\u0862\u0863\u0007\u0238\u0002\u0002\u0863\u0869\u0007",
+ "\u040d\u0002\u0002\u0864\u0866\u0007\u0180\u0002\u0002\u0865\u0867\u0007",
+ "\u03f5\u0002\u0002\u0866\u0865\u0003\u0002\u0002\u0002\u0866\u0867\u0003",
+ "\u0002\u0002\u0002\u0867\u0868\u0003\u0002\u0002\u0002\u0868\u086a\u0005",
+ "\u0216\u010c\u0002\u0869\u0864\u0003\u0002\u0002\u0002\u0869\u086a\u0003",
+ "\u0002\u0002\u0002\u086a\u086c\u0003\u0002\u0002\u0002\u086b\u086d\u0007",
+ "\u0247\u0002\u0002\u086c\u086b\u0003\u0002\u0002\u0002\u086c\u086d\u0003",
+ "\u0002\u0002\u0002\u086d\u086e\u0003\u0002\u0002\u0002\u086e\u0870\u0007",
+ "\u0158\u0002\u0002\u086f\u0871\u0007\u03f5\u0002\u0002\u0870\u086f\u0003",
+ "\u0002\u0002\u0002\u0870\u0871\u0003\u0002\u0002\u0002\u0871\u0872\u0003",
+ "\u0002\u0002\u0002\u0872\u0873\u0005\u0204\u0103\u0002\u0873}\u0003",
+ "\u0002\u0002\u0002\u0874\u0875\u0007\t\u0002\u0002\u0875\u0876\u0007",
+ "w\u0002\u0002\u0876\u087a\u0005\u01f4\u00fb\u0002\u0877\u0879\u0005",
+ "J&\u0002\u0878\u0877\u0003\u0002\u0002\u0002\u0879\u087c\u0003\u0002",
+ "\u0002\u0002\u087a\u0878\u0003\u0002\u0002\u0002\u087a\u087b\u0003\u0002",
+ "\u0002\u0002\u087b\u007f\u0003\u0002\u0002\u0002\u087c\u087a\u0003\u0002",
+ "\u0002\u0002\u087d\u087e\u0007\t\u0002\u0002\u087e\u087f\u0007\u0207",
+ "\u0002\u0002\u087f\u0880\u0005\u020e\u0108\u0002\u0880\u0881\u0007\u01ce",
+ "\u0002\u0002\u0881\u0882\u0007\u03fe\u0002\u0002\u0882\u0887\u0005L",
+ "\'\u0002\u0883\u0884\u0007\u0400\u0002\u0002\u0884\u0886\u0005L\'\u0002",
+ "\u0885\u0883\u0003\u0002\u0002\u0002\u0886\u0889\u0003\u0002\u0002\u0002",
+ "\u0887\u0885\u0003\u0002\u0002\u0002\u0887\u0888\u0003\u0002\u0002\u0002",
+ "\u0888\u088a\u0003\u0002\u0002\u0002\u0889\u0887\u0003\u0002\u0002\u0002",
+ "\u088a\u088b\u0007\u03ff\u0002\u0002\u088b\u0081\u0003\u0002\u0002\u0002",
+ "\u088c\u088e\u0007\t\u0002\u0002\u088d\u088f\t\u0003\u0002\u0002\u088e",
+ "\u088d\u0003\u0002\u0002\u0002\u088e\u088f\u0003\u0002\u0002\u0002\u088f",
+ "\u0891\u0003\u0002\u0002\u0002\u0890\u0892\u0007H\u0002\u0002\u0891",
+ "\u0890\u0003\u0002\u0002\u0002\u0891\u0892\u0003\u0002\u0002\u0002\u0892",
+ "\u0893\u0003\u0002\u0002\u0002\u0893\u0894\u0007\u009c\u0002\u0002\u0894",
+ "\u089d\u0005\u01f6\u00fc\u0002\u0895\u089a\u0005\u0088E\u0002\u0896",
+ "\u0897\u0007\u0400\u0002\u0002\u0897\u0899\u0005\u0088E\u0002\u0898",
+ "\u0896\u0003\u0002\u0002\u0002\u0899\u089c\u0003\u0002\u0002\u0002\u089a",
+ "\u0898\u0003\u0002\u0002\u0002\u089a\u089b\u0003\u0002\u0002\u0002\u089b",
+ "\u089e\u0003\u0002\u0002\u0002\u089c\u089a\u0003\u0002\u0002\u0002\u089d",
+ "\u0895\u0003\u0002\u0002\u0002\u089d\u089e\u0003\u0002\u0002\u0002\u089e",
+ "\u08a0\u0003\u0002\u0002\u0002\u089f\u08a1\u0005d3\u0002\u08a0\u089f",
+ "\u0003\u0002\u0002\u0002\u08a0\u08a1\u0003\u0002\u0002\u0002\u08a1\u0083",
+ "\u0003\u0002\u0002\u0002\u08a2\u08a3\u0007\t\u0002\u0002\u08a3\u08a4",
+ "\u0007\u022e\u0002\u0002\u08a4\u08a5\u0005\u020e\u0108\u0002\u08a5\u08a6",
+ "\t\u001e\u0002\u0002\u08a6\u08a7\u0007\u0146\u0002\u0002\u08a7\u08ab",
+ "\u0007\u040d\u0002\u0002\u08a8\u08a9\u0007\u0180\u0002\u0002\u08a9\u08aa",
+ "\u0007\u03f5\u0002\u0002\u08aa\u08ac\u0005\u0216\u010c\u0002\u08ab\u08a8",
+ "\u0003\u0002\u0002\u0002\u08ab\u08ac\u0003\u0002\u0002\u0002\u08ac\u08ae",
+ "\u0003\u0002\u0002\u0002\u08ad\u08af\u0007\u0247\u0002\u0002\u08ae\u08ad",
+ "\u0003\u0002\u0002\u0002\u08ae\u08af\u0003\u0002\u0002\u0002\u08af\u08b0",
+ "\u0003\u0002\u0002\u0002\u08b0\u08b2\u0007\u0158\u0002\u0002\u08b1\u08b3",
+ "\u0007\u03f5\u0002\u0002\u08b2\u08b1\u0003\u0002\u0002\u0002\u08b2\u08b3",
+ "\u0003\u0002\u0002\u0002\u08b3\u08b4\u0003\u0002\u0002\u0002\u08b4\u08b5",
+ "\u0005\u0204\u0103\u0002\u08b5\u0085\u0003\u0002\u0002\u0002\u08b6\u08ba",
+ "\u0007\t\u0002\u0002\u08b7\u08b8\u0007\u0114\u0002\u0002\u08b8\u08b9",
+ "\u0007\u03f5\u0002\u0002\u08b9\u08bb\t\f\u0002\u0002\u08ba\u08b7\u0003",
+ "\u0002\u0002\u0002\u08ba\u08bb\u0003\u0002\u0002\u0002\u08bb\u08bd\u0003",
+ "\u0002\u0002\u0002\u08bc\u08be\u00056\u001c\u0002\u08bd\u08bc\u0003",
+ "\u0002\u0002\u0002\u08bd\u08be\u0003\u0002\u0002\u0002\u08be\u08c2\u0003",
+ "\u0002\u0002\u0002\u08bf\u08c0\u0007\u0091\u0002\u0002\u08c0\u08c1\u0007",
+ "\u0206\u0002\u0002\u08c1\u08c3\t\r\u0002\u0002\u08c2\u08bf\u0003\u0002",
+ "\u0002\u0002\u08c2\u08c3\u0003\u0002\u0002\u0002\u08c3\u08c4\u0003\u0002",
+ "\u0002\u0002\u08c4\u08c5\u0007\u0244\u0002\u0002\u08c5\u08ca\u0005\u01f4",
+ "\u00fb\u0002\u08c6\u08c7\u0007\u03fe\u0002\u0002\u08c7\u08c8\u0005\u022e",
+ "\u0118\u0002\u08c8\u08c9\u0007\u03ff\u0002\u0002\u08c9\u08cb\u0003\u0002",
+ "\u0002\u0002\u08ca\u08c6\u0003\u0002\u0002\u0002\u08ca\u08cb\u0003\u0002",
+ "\u0002\u0002\u08cb\u08cc\u0003\u0002\u0002\u0002\u08cc\u08cd\u0007\r",
+ "\u0002\u0002\u08cd\u08d4\u0005\u00b6\\\u0002\u08ce\u08d0\u0007\u00b0",
+ "\u0002\u0002\u08cf\u08d1\t\u000e\u0002\u0002\u08d0\u08cf\u0003\u0002",
+ "\u0002\u0002\u08d0\u08d1\u0003\u0002\u0002\u0002\u08d1\u08d2\u0003\u0002",
+ "\u0002\u0002\u08d2\u08d3\u0007\u0019\u0002\u0002\u08d3\u08d5\u0007n",
+ "\u0002\u0002\u08d4\u08ce\u0003\u0002\u0002\u0002\u08d4\u08d5\u0003\u0002",
+ "\u0002\u0002\u08d5\u0087\u0003\u0002\u0002\u0002\u08d6\u08dd\u0005`",
+ "1\u0002\u08d7\u08d9\u0007\u0400\u0002\u0002\u08d8\u08d7\u0003\u0002",
+ "\u0002\u0002\u08d8\u08d9\u0003\u0002\u0002\u0002\u08d9\u08da\u0003\u0002",
+ "\u0002\u0002\u08da\u08dc\u0005`1\u0002\u08db\u08d8\u0003\u0002\u0002",
+ "\u0002\u08dc\u08df\u0003\u0002\u0002\u0002\u08dd\u08db\u0003\u0002\u0002",
+ "\u0002\u08dd\u08de\u0003\u0002\u0002\u0002\u08de\u0a42\u0003\u0002\u0002",
+ "\u0002\u08df\u08dd\u0003\u0002\u0002\u0002\u08e0\u08e2\u0007\u0007\u0002",
+ "\u0002\u08e1\u08e3\u0007\u001b\u0002\u0002\u08e2\u08e1\u0003\u0002\u0002",
+ "\u0002\u08e2\u08e3\u0003\u0002\u0002\u0002\u08e3\u08e4\u0003\u0002\u0002",
+ "\u0002\u08e4\u08e5\u0005\u020e\u0108\u0002\u08e5\u08e9\u0005R*\u0002",
+ "\u08e6\u08ea\u0007\u016c\u0002\u0002\u08e7\u08e8\u0007\u0112\u0002\u0002",
+ "\u08e8\u08ea\u0005\u020e\u0108\u0002\u08e9\u08e6\u0003\u0002\u0002\u0002",
+ "\u08e9\u08e7\u0003\u0002\u0002\u0002\u08e9\u08ea\u0003\u0002\u0002\u0002",
+ "\u08ea\u0a42\u0003\u0002\u0002\u0002\u08eb\u08ed\u0007\u0007\u0002\u0002",
+ "\u08ec\u08ee\u0007\u001b\u0002\u0002\u08ed\u08ec\u0003\u0002\u0002\u0002",
+ "\u08ed\u08ee\u0003\u0002\u0002\u0002\u08ee\u08ef\u0003\u0002\u0002\u0002",
+ "\u08ef\u08f0\u0007\u03fe\u0002\u0002\u08f0\u08f1\u0005\u020e\u0108\u0002",
+ "\u08f1\u08f8\u0005R*\u0002\u08f2\u08f3\u0007\u0400\u0002\u0002\u08f3",
+ "\u08f4\u0005\u020e\u0108\u0002\u08f4\u08f5\u0005R*\u0002\u08f5\u08f7",
+ "\u0003\u0002\u0002\u0002\u08f6\u08f2\u0003\u0002\u0002\u0002\u08f7\u08fa",
+ "\u0003\u0002\u0002\u0002\u08f8\u08f6\u0003\u0002\u0002\u0002\u08f8\u08f9",
+ "\u0003\u0002\u0002\u0002\u08f9\u08fb\u0003\u0002\u0002\u0002\u08fa\u08f8",
+ "\u0003\u0002\u0002\u0002\u08fb\u08fc\u0007\u03ff\u0002\u0002\u08fc\u0a42",
+ "\u0003\u0002\u0002\u0002\u08fd\u08fe\u0007\u0007\u0002\u0002\u08fe\u0900",
+ "\t\u0014\u0002\u0002\u08ff\u0901\u0005\u020e\u0108\u0002\u0900\u08ff",
+ "\u0003\u0002\u0002\u0002\u0900\u0901\u0003\u0002\u0002\u0002\u0901\u0903",
+ "\u0003\u0002\u0002\u0002\u0902\u0904\u0005B\"\u0002\u0903\u0902\u0003",
+ "\u0002\u0002\u0002\u0903\u0904\u0003\u0002\u0002\u0002\u0904\u0905\u0003",
+ "\u0002\u0002\u0002\u0905\u0909\u0005\u0232\u011a\u0002\u0906\u0908\u0005",
+ "D#\u0002\u0907\u0906\u0003\u0002\u0002\u0002\u0908\u090b\u0003\u0002",
+ "\u0002\u0002\u0909\u0907\u0003\u0002\u0002\u0002\u0909\u090a\u0003\u0002",
+ "\u0002\u0002\u090a\u0a42\u0003\u0002\u0002\u0002\u090b\u0909\u0003\u0002",
+ "\u0002\u0002\u090c\u0911\u0007\u0007\u0002\u0002\u090d\u090f\u0007\u001d",
+ "\u0002\u0002\u090e\u0910\u0005\u020e\u0108\u0002\u090f\u090e\u0003\u0002",
+ "\u0002\u0002\u090f\u0910\u0003\u0002\u0002\u0002\u0910\u0912\u0003\u0002",
+ "\u0002\u0002\u0911\u090d\u0003\u0002\u0002\u0002\u0911\u0912\u0003\u0002",
+ "\u0002\u0002\u0912\u0913\u0003\u0002\u0002\u0002\u0913\u0914\u0007v",
+ "\u0002\u0002\u0914\u0916\u0007T\u0002\u0002\u0915\u0917\u0005\u020e",
+ "\u0108\u0002\u0916\u0915\u0003\u0002\u0002\u0002\u0916\u0917\u0003\u0002",
+ "\u0002\u0002\u0917\u0919\u0003\u0002\u0002\u0002\u0918\u091a\u0005B",
+ "\"\u0002\u0919\u0918\u0003\u0002\u0002\u0002\u0919\u091a\u0003\u0002",
+ "\u0002\u0002\u091a\u091b\u0003\u0002\u0002\u0002\u091b\u091f\u0005\u0232",
+ "\u011a\u0002\u091c\u091e\u0005D#\u0002\u091d\u091c\u0003\u0002\u0002",
+ "\u0002\u091e\u0921\u0003\u0002\u0002\u0002\u091f\u091d\u0003\u0002\u0002",
+ "\u0002\u091f\u0920\u0003\u0002\u0002\u0002\u0920\u0a42\u0003\u0002\u0002",
+ "\u0002\u0921\u091f\u0003\u0002\u0002\u0002\u0922\u0927\u0007\u0007\u0002",
+ "\u0002\u0923\u0925\u0007\u001d\u0002\u0002\u0924\u0926\u0005\u020e\u0108",
+ "\u0002\u0925\u0924\u0003\u0002\u0002\u0002\u0925\u0926\u0003\u0002\u0002",
+ "\u0002\u0926\u0928\u0003\u0002\u0002\u0002\u0927\u0923\u0003\u0002\u0002",
+ "\u0002\u0927\u0928\u0003\u0002\u0002\u0002\u0928\u0929\u0003\u0002\u0002",
+ "\u0002\u0929\u092b\u0007\u00a5\u0002\u0002\u092a\u092c\t\u0014\u0002",
+ "\u0002\u092b\u092a\u0003\u0002\u0002\u0002\u092b\u092c\u0003\u0002\u0002",
+ "\u0002\u092c\u092e\u0003\u0002\u0002\u0002\u092d\u092f\u0005\u020e\u0108",
+ "\u0002\u092e\u092d\u0003\u0002\u0002\u0002\u092e\u092f\u0003\u0002\u0002",
+ "\u0002\u092f\u0931\u0003\u0002\u0002\u0002\u0930\u0932\u0005B\"\u0002",
+ "\u0931\u0930\u0003\u0002\u0002\u0002\u0931\u0932\u0003\u0002\u0002\u0002",
+ "\u0932\u0933\u0003\u0002\u0002\u0002\u0933\u0937\u0005\u0232\u011a\u0002",
+ "\u0934\u0936\u0005D#\u0002\u0935\u0934\u0003\u0002\u0002\u0002\u0936",
+ "\u0939\u0003\u0002\u0002\u0002\u0937\u0935\u0003\u0002\u0002\u0002\u0937",
+ "\u0938\u0003\u0002\u0002\u0002\u0938\u0a42\u0003\u0002\u0002\u0002\u0939",
+ "\u0937\u0003\u0002\u0002\u0002\u093a\u093b\u0007\u0007\u0002\u0002\u093b",
+ "\u093d\t\u0016\u0002\u0002\u093c\u093e\t\u0014\u0002\u0002\u093d\u093c",
+ "\u0003\u0002\u0002\u0002\u093d\u093e\u0003\u0002\u0002\u0002\u093e\u0940",
+ "\u0003\u0002\u0002\u0002\u093f\u0941\u0005\u020e\u0108\u0002\u0940\u093f",
+ "\u0003\u0002\u0002\u0002\u0940\u0941\u0003\u0002\u0002\u0002\u0941\u0942",
+ "\u0003\u0002\u0002\u0002\u0942\u0946\u0005\u0232\u011a\u0002\u0943\u0945",
+ "\u0005D#\u0002\u0944\u0943\u0003\u0002\u0002\u0002\u0945\u0948\u0003",
+ "\u0002\u0002\u0002\u0946\u0944\u0003\u0002\u0002\u0002\u0946\u0947\u0003",
+ "\u0002\u0002\u0002\u0947\u0a42\u0003\u0002\u0002\u0002\u0948\u0946\u0003",
+ "\u0002\u0002\u0002\u0949\u094e\u0007\u0007\u0002\u0002\u094a\u094c\u0007",
+ "\u001d\u0002\u0002\u094b\u094d\u0005\u020e\u0108\u0002\u094c\u094b\u0003",
+ "\u0002\u0002\u0002\u094c\u094d\u0003\u0002\u0002\u0002\u094d\u094f\u0003",
+ "\u0002\u0002\u0002\u094e\u094a\u0003\u0002\u0002\u0002\u094e\u094f\u0003",
+ "\u0002\u0002\u0002\u094f\u0950\u0003\u0002\u0002\u0002\u0950\u0951\u0007",
+ ">\u0002\u0002\u0951\u0953\u0007T\u0002\u0002\u0952\u0954\u0005\u020e",
+ "\u0108\u0002\u0953\u0952\u0003\u0002\u0002\u0002\u0953\u0954\u0003\u0002",
+ "\u0002\u0002\u0954\u0955\u0003\u0002\u0002\u0002\u0955\u0956\u0005\u0232",
+ "\u011a\u0002\u0956\u0957\u0005X-\u0002\u0957\u0a42\u0003\u0002\u0002",
+ "\u0002\u0958\u095d\u0007\u0007\u0002\u0002\u0959\u095b\u0007\u001d\u0002",
+ "\u0002\u095a\u095c\u0005\u020e\u0108\u0002\u095b\u095a\u0003\u0002\u0002",
+ "\u0002\u095b\u095c\u0003\u0002\u0002\u0002\u095c\u095e\u0003\u0002\u0002",
+ "\u0002\u095d\u0959\u0003\u0002\u0002\u0002\u095d\u095e\u0003\u0002\u0002",
+ "\u0002\u095e\u095f\u0003\u0002\u0002\u0002\u095f\u0960\u0007\u0019\u0002",
+ "\u0002\u0960\u0961\u0007\u03fe\u0002\u0002\u0961\u0962\u0005\u025c\u012f",
+ "\u0002\u0962\u0963\u0007\u03ff\u0002\u0002\u0963\u0a42\u0003\u0002\u0002",
+ "\u0002\u0964\u0966\u0007\u0114\u0002\u0002\u0965\u0967\u0007\u03f5\u0002",
+ "\u0002\u0966\u0965\u0003\u0002\u0002\u0002\u0966\u0967\u0003\u0002\u0002",
+ "\u0002\u0967\u0968\u0003\u0002\u0002\u0002\u0968\u0a42\t\u0005\u0002",
+ "\u0002\u0969\u096b\u0007\t\u0002\u0002\u096a\u096c\u0007\u001b\u0002",
+ "\u0002\u096b\u096a\u0003\u0002\u0002\u0002\u096b\u096c\u0003\u0002\u0002",
+ "\u0002\u096c\u096d\u0003\u0002\u0002\u0002\u096d\u0973\u0005\u020e\u0108",
+ "\u0002\u096e\u096f\u0007\u008c\u0002\u0002\u096f\u0970\u0007(\u0002",
+ "\u0002\u0970\u0974\u0005\u023e\u0120\u0002\u0971\u0972\u00071\u0002",
+ "\u0002\u0972\u0974\u0007(\u0002\u0002\u0973\u096e\u0003\u0002\u0002",
+ "\u0002\u0973\u0971\u0003\u0002\u0002\u0002\u0974\u0a42\u0003\u0002\u0002",
+ "\u0002\u0975\u0977\u0007\u0017\u0002\u0002\u0976\u0978\u0007\u001b\u0002",
+ "\u0002\u0977\u0976\u0003\u0002\u0002\u0002\u0977\u0978\u0003\u0002\u0002",
+ "\u0002\u0978\u0979\u0003\u0002\u0002\u0002\u0979\u097a\u0005\u020e\u0108",
+ "\u0002\u097a\u097b\u0005\u020e\u0108\u0002\u097b\u097f\u0005R*\u0002",
+ "\u097c\u0980\u0007\u016c\u0002\u0002\u097d\u097e\u0007\u0112\u0002\u0002",
+ "\u097e\u0980\u0005\u020e\u0108\u0002\u097f\u097c\u0003\u0002\u0002\u0002",
+ "\u097f\u097d\u0003\u0002\u0002\u0002\u097f\u0980\u0003\u0002\u0002\u0002",
+ "\u0980\u0a42\u0003\u0002\u0002\u0002\u0981\u0982\u0007\u007f\u0002\u0002",
+ "\u0982\u0983\u0007\u001b\u0002\u0002\u0983\u0984\u0005\u020e\u0108\u0002",
+ "\u0984\u0985\u0007\u009f\u0002\u0002\u0985\u0986\u0005\u020e\u0108\u0002",
+ "\u0986\u0a42\u0003\u0002\u0002\u0002\u0987\u0989\u0007_\u0002\u0002",
+ "\u0988\u098a\u0007\u03f5\u0002\u0002\u0989\u0988\u0003\u0002\u0002\u0002",
+ "\u0989\u098a\u0003\u0002\u0002\u0002\u098a\u098b\u0003\u0002\u0002\u0002",
+ "\u098b\u0a42\t\u0006\u0002\u0002\u098c\u098e\u0007\u01b9\u0002\u0002",
+ "\u098d\u098f\u0007\u001b\u0002\u0002\u098e\u098d\u0003\u0002\u0002\u0002",
+ "\u098e\u098f\u0003\u0002\u0002\u0002\u098f\u0990\u0003\u0002\u0002\u0002",
+ "\u0990\u0991\u0005\u020e\u0108\u0002\u0991\u0995\u0005R*\u0002\u0992",
+ "\u0996\u0007\u016c\u0002\u0002\u0993\u0994\u0007\u0112\u0002\u0002\u0994",
+ "\u0996\u0005\u020e\u0108\u0002\u0995\u0992\u0003\u0002\u0002\u0002\u0995",
+ "\u0993\u0003\u0002\u0002\u0002\u0995\u0996\u0003\u0002\u0002\u0002\u0996",
+ "\u0a42\u0003\u0002\u0002\u0002\u0997\u0999\u00071\u0002\u0002\u0998",
+ "\u099a\u0007\u001b\u0002\u0002\u0999\u0998\u0003\u0002\u0002\u0002\u0999",
+ "\u099a\u0003\u0002\u0002\u0002\u099a\u099b\u0003\u0002\u0002\u0002\u099b",
+ "\u099d\u0005\u020e\u0108\u0002\u099c\u099e\u0007\u0084\u0002\u0002\u099d",
+ "\u099c\u0003\u0002\u0002\u0002\u099d\u099e\u0003\u0002\u0002\u0002\u099e",
+ "\u0a42\u0003\u0002\u0002\u0002\u099f\u09a0\u00071\u0002\u0002\u09a0",
+ "\u09a1\u0007v\u0002\u0002\u09a1\u0a42\u0007T\u0002\u0002\u09a2\u09a3",
+ "\u0007\u007f\u0002\u0002\u09a3\u09a4\t\u0014\u0002\u0002\u09a4\u09a5",
+ "\u0005\u020e\u0108\u0002\u09a5\u09a6\u0007\u009f\u0002\u0002\u09a6\u09a7",
+ "\u0005\u020e\u0108\u0002\u09a7\u0a42\u0003\u0002\u0002\u0002\u09a8\u09a9",
+ "\u0007\t\u0002\u0002\u09a9\u09aa\u0007J\u0002\u0002\u09aa\u09ab\u0005",
+ "\u020e\u0108\u0002\u09ab\u09ac\t\u001f\u0002\u0002\u09ac\u0a42\u0003",
+ "\u0002\u0002\u0002\u09ad\u09ae\u00071\u0002\u0002\u09ae\u09af\t\u0014",
+ "\u0002\u0002\u09af\u0a42\u0005\u020e\u0108\u0002\u09b0\u09b1\u00071",
+ "\u0002\u0002\u09b1\u09b2\u0007>\u0002\u0002\u09b2\u09b3\u0007T\u0002",
+ "\u0002\u09b3\u0a42\u0005\u020e\u0108\u0002\u09b4\u09b5\u0007\u014d\u0002",
+ "\u0002\u09b5\u0a42\u0007U\u0002\u0002\u09b6\u09b7\u0007\u0154\u0002",
+ "\u0002\u09b7\u0a42\u0007U\u0002\u0002\u09b8\u09ba\u0007\u007f\u0002",
+ "\u0002\u09b9\u09bb\t \u0002\u0002\u09ba\u09b9\u0003\u0002\u0002\u0002",
+ "\u09ba\u09bb\u0003\u0002\u0002\u0002\u09bb\u09be\u0003\u0002\u0002\u0002",
+ "\u09bc\u09bf\u0005\u020e\u0108\u0002\u09bd\u09bf\u0005\u01f4\u00fb\u0002",
+ "\u09be\u09bc\u0003\u0002\u0002\u0002\u09be\u09bd\u0003\u0002\u0002\u0002",
+ "\u09bf\u0a42\u0003\u0002\u0002\u0002\u09c0\u09c1\u0007q\u0002\u0002",
+ "\u09c1\u09c2\u0007\u0012\u0002\u0002\u09c2\u0a42\u0005\u022e\u0118\u0002",
+ "\u09c3\u09c4\u0007\u001f\u0002\u0002\u09c4\u09c5\u0007\u009f\u0002\u0002",
+ "\u09c5\u09c6\u0007\u0018\u0002\u0002\u09c6\u09c7\u0007\u008c\u0002\u0002",
+ "\u09c7\u09ca\u0005\u0200\u0101\u0002\u09c8\u09c9\u0007\u001a\u0002\u0002",
+ "\u09c9\u09cb\u0005\u0202\u0102\u0002\u09ca\u09c8\u0003\u0002\u0002\u0002",
+ "\u09ca\u09cb\u0003\u0002\u0002\u0002\u09cb\u0a42\u0003\u0002\u0002\u0002",
+ "\u09cc\u09ce\u0007(\u0002\u0002\u09cd\u09cc\u0003\u0002\u0002\u0002",
+ "\u09cd\u09ce\u0003\u0002\u0002\u0002\u09ce\u09cf\u0003\u0002\u0002\u0002",
+ "\u09cf\u09d0\u0007\u0018\u0002\u0002\u09d0\u09d1\u0007\u008c\u0002\u0002",
+ "\u09d1\u09d2\u0007\u03f5\u0002\u0002\u09d2\u09d6\u0005\u0200\u0101\u0002",
+ "\u09d3\u09d4\u0007\u001a\u0002\u0002\u09d4\u09d5\u0007\u03f5\u0002\u0002",
+ "\u09d5\u09d7\u0005\u0202\u0102\u0002\u09d6\u09d3\u0003\u0002\u0002\u0002",
+ "\u09d6\u09d7\u0003\u0002\u0002\u0002\u09d7\u0a42\u0003\u0002\u0002\u0002",
+ "\u09d8\u09d9\u0007\u014e\u0002\u0002\u09d9\u0a42\u0007\u022e\u0002\u0002",
+ "\u09da\u09db\u0007\u017e\u0002\u0002\u09db\u0a42\u0007\u022e\u0002\u0002",
+ "\u09dc\u0a42\u0007=\u0002\u0002\u09dd\u09de\t!\u0002\u0002\u09de\u0a42",
+ "\u0007\u0241\u0002\u0002\u09df\u09e0\u0007\u0007\u0002\u0002\u09e0\u09e1",
+ "\u0007u\u0002\u0002\u09e1\u09e2\u0007\u03fe\u0002\u0002\u09e2\u09e7",
+ "\u0005j6\u0002\u09e3\u09e4\u0007\u0400\u0002\u0002\u09e4\u09e6\u0005",
+ "j6\u0002\u09e5\u09e3\u0003\u0002\u0002\u0002\u09e6\u09e9\u0003\u0002",
+ "\u0002\u0002\u09e7\u09e5\u0003\u0002\u0002\u0002\u09e7\u09e8\u0003\u0002",
+ "\u0002\u0002\u09e8\u09ea\u0003\u0002\u0002\u0002\u09e9\u09e7\u0003\u0002",
+ "\u0002\u0002\u09ea\u09eb\u0007\u03ff\u0002\u0002\u09eb\u0a42\u0003\u0002",
+ "\u0002\u0002\u09ec\u09ed\u00071\u0002\u0002\u09ed\u09ee\u0007u\u0002",
+ "\u0002\u09ee\u0a42\u0005\u022e\u0118\u0002\u09ef\u09f0\u0007\u014e\u0002",
+ "\u0002\u09f0\u09f3\u0007u\u0002\u0002\u09f1\u09f4\u0005\u022e\u0118",
+ "\u0002\u09f2\u09f4\u0007\b\u0002\u0002\u09f3\u09f1\u0003\u0002\u0002",
+ "\u0002\u09f3\u09f2\u0003\u0002\u0002\u0002\u09f4\u09f5\u0003\u0002\u0002",
+ "\u0002\u09f5\u0a42\u0007\u022e\u0002\u0002\u09f6\u09f7\u0007\u017e\u0002",
+ "\u0002\u09f7\u09fa\u0007u\u0002\u0002\u09f8\u09fb\u0005\u022e\u0118",
+ "\u0002\u09f9\u09fb\u0007\b\u0002\u0002\u09fa\u09f8\u0003\u0002\u0002",
+ "\u0002\u09fa\u09f9\u0003\u0002\u0002\u0002\u09fb\u09fc\u0003\u0002\u0002",
+ "\u0002\u09fc\u0a42\u0007\u022e\u0002\u0002\u09fd\u09fe\u0007\u0236\u0002",
+ "\u0002\u09fe\u0a01\u0007u\u0002\u0002\u09ff\u0a02\u0005\u022e\u0118",
+ "\u0002\u0a00\u0a02\u0007\b\u0002\u0002\u0a01\u09ff\u0003\u0002\u0002",
+ "\u0002\u0a01\u0a00\u0003\u0002\u0002\u0002\u0a02\u0a42\u0003\u0002\u0002",
+ "\u0002\u0a03\u0a04\u0007\u012e\u0002\u0002\u0a04\u0a05\u0007u\u0002",
+ "\u0002\u0a05\u0a42\u0005\u0214\u010b\u0002\u0a06\u0a07\u0007\u01ef\u0002",
+ "\u0002\u0a07\u0a08\u0007u\u0002\u0002\u0a08\u0a09\u0005\u022e\u0118",
+ "\u0002\u0a09\u0a0a\u0007P\u0002\u0002\u0a0a\u0a0b\u0007\u03fe\u0002",
+ "\u0002\u0a0b\u0a10\u0005j6\u0002\u0a0c\u0a0d\u0007\u0400\u0002\u0002",
+ "\u0a0d\u0a0f\u0005j6\u0002\u0a0e\u0a0c\u0003\u0002\u0002\u0002\u0a0f",
+ "\u0a12\u0003\u0002\u0002\u0002\u0a10\u0a0e\u0003\u0002\u0002\u0002\u0a10",
+ "\u0a11\u0003\u0002\u0002\u0002\u0a11\u0a13\u0003\u0002\u0002\u0002\u0a12",
+ "\u0a10\u0003\u0002\u0002\u0002\u0a13\u0a14\u0007\u03ff\u0002\u0002\u0a14",
+ "\u0a42\u0003\u0002\u0002\u0002\u0a15\u0a16\u0007\u0161\u0002\u0002\u0a16",
+ "\u0a17\u0007u\u0002\u0002\u0a17\u0a18\u0005\u020e\u0108\u0002\u0a18",
+ "\u0a19\u0007\u00b0\u0002\u0002\u0a19\u0a1a\u0007\u009c\u0002\u0002\u0a1a",
+ "\u0a1d\u0005\u01f6\u00fc\u0002\u0a1b\u0a1c\t!\u0002\u0002\u0a1c\u0a1e",
+ "\u0007\u0241\u0002\u0002\u0a1d\u0a1b\u0003\u0002\u0002\u0002\u0a1d\u0a1e",
+ "\u0003\u0002\u0002\u0002\u0a1e\u0a42\u0003\u0002\u0002\u0002\u0a1f\u0a20",
+ "\u0007\u000b\u0002\u0002\u0a20\u0a23\u0007u\u0002\u0002\u0a21\u0a24",
+ "\u0005\u022e\u0118\u0002\u0a22\u0a24\u0007\b\u0002\u0002\u0a23\u0a21",
+ "\u0003\u0002\u0002\u0002\u0a23\u0a22\u0003\u0002\u0002\u0002\u0a24\u0a42",
+ "\u0003\u0002\u0002\u0002\u0a25\u0a26\u0007\u0019\u0002\u0002\u0a26\u0a29",
+ "\u0007u\u0002\u0002\u0a27\u0a2a\u0005\u022e\u0118\u0002\u0a28\u0a2a",
+ "\u0007\b\u0002\u0002\u0a29\u0a27\u0003\u0002\u0002\u0002\u0a29\u0a28",
+ "\u0003\u0002\u0002\u0002\u0a2a\u0a42\u0003\u0002\u0002\u0002\u0a2b\u0a2c",
+ "\u0007m\u0002\u0002\u0a2c\u0a2f\u0007u\u0002\u0002\u0a2d\u0a30\u0005",
+ "\u022e\u0118\u0002\u0a2e\u0a30\u0007\b\u0002\u0002\u0a2f\u0a2d\u0003",
+ "\u0002\u0002\u0002\u0a2f\u0a2e\u0003\u0002\u0002\u0002\u0a30\u0a42\u0003",
+ "\u0002\u0002\u0002\u0a31\u0a32\u0007\u01e6\u0002\u0002\u0a32\u0a35\u0007",
+ "u\u0002\u0002\u0a33\u0a36\u0005\u022e\u0118\u0002\u0a34\u0a36\u0007",
+ "\b\u0002\u0002\u0a35\u0a33\u0003\u0002\u0002\u0002\u0a35\u0a34\u0003",
+ "\u0002\u0002\u0002\u0a36\u0a42\u0003\u0002\u0002\u0002\u0a37\u0a38\u0007",
+ "\u01f0\u0002\u0002\u0a38\u0a3b\u0007u\u0002\u0002\u0a39\u0a3c\u0005",
+ "\u022e\u0118\u0002\u0a3a\u0a3c\u0007\b\u0002\u0002\u0a3b\u0a39\u0003",
+ "\u0002\u0002\u0002\u0a3b\u0a3a\u0003\u0002\u0002\u0002\u0a3c\u0a42\u0003",
+ "\u0002\u0002\u0002\u0a3d\u0a3e\u0007\u01ee\u0002\u0002\u0a3e\u0a42\u0007",
+ "\u01d4\u0002\u0002\u0a3f\u0a40\u0007\u023d\u0002\u0002\u0a40\u0a42\u0007",
+ "\u01d4\u0002\u0002\u0a41\u08d6\u0003\u0002\u0002\u0002\u0a41\u08e0\u0003",
+ "\u0002\u0002\u0002\u0a41\u08eb\u0003\u0002\u0002\u0002\u0a41\u08fd\u0003",
+ "\u0002\u0002\u0002\u0a41\u090c\u0003\u0002\u0002\u0002\u0a41\u0922\u0003",
+ "\u0002\u0002\u0002\u0a41\u093a\u0003\u0002\u0002\u0002\u0a41\u0949\u0003",
+ "\u0002\u0002\u0002\u0a41\u0958\u0003\u0002\u0002\u0002\u0a41\u0964\u0003",
+ "\u0002\u0002\u0002\u0a41\u0969\u0003\u0002\u0002\u0002\u0a41\u0975\u0003",
+ "\u0002\u0002\u0002\u0a41\u0981\u0003\u0002\u0002\u0002\u0a41\u0987\u0003",
+ "\u0002\u0002\u0002\u0a41\u098c\u0003\u0002\u0002\u0002\u0a41\u0997\u0003",
+ "\u0002\u0002\u0002\u0a41\u099f\u0003\u0002\u0002\u0002\u0a41\u09a2\u0003",
+ "\u0002\u0002\u0002\u0a41\u09a8\u0003\u0002\u0002\u0002\u0a41\u09ad\u0003",
+ "\u0002\u0002\u0002\u0a41\u09b0\u0003\u0002\u0002\u0002\u0a41\u09b4\u0003",
+ "\u0002\u0002\u0002\u0a41\u09b6\u0003\u0002\u0002\u0002\u0a41\u09b8\u0003",
+ "\u0002\u0002\u0002\u0a41\u09c0\u0003\u0002\u0002\u0002\u0a41\u09c3\u0003",
+ "\u0002\u0002\u0002\u0a41\u09cd\u0003\u0002\u0002\u0002\u0a41\u09d8\u0003",
+ "\u0002\u0002\u0002\u0a41\u09da\u0003\u0002\u0002\u0002\u0a41\u09dc\u0003",
+ "\u0002\u0002\u0002\u0a41\u09dd\u0003\u0002\u0002\u0002\u0a41\u09df\u0003",
+ "\u0002\u0002\u0002\u0a41\u09ec\u0003\u0002\u0002\u0002\u0a41\u09ef\u0003",
+ "\u0002\u0002\u0002\u0a41\u09f6\u0003\u0002\u0002\u0002\u0a41\u09fd\u0003",
+ "\u0002\u0002\u0002\u0a41\u0a03\u0003\u0002\u0002\u0002\u0a41\u0a06\u0003",
+ "\u0002\u0002\u0002\u0a41\u0a15\u0003\u0002\u0002\u0002\u0a41\u0a1f\u0003",
+ "\u0002\u0002\u0002\u0a41\u0a25\u0003\u0002\u0002\u0002\u0a41\u0a2b\u0003",
+ "\u0002\u0002\u0002\u0a41\u0a31\u0003\u0002\u0002\u0002\u0a41\u0a37\u0003",
+ "\u0002\u0002\u0002\u0a41\u0a3d\u0003\u0002\u0002\u0002\u0a41\u0a3f\u0003",
+ "\u0002\u0002\u0002\u0a42\u0089\u0003\u0002\u0002\u0002\u0a43\u0a44\u0007",
+ "1\u0002\u0002\u0a44\u0a46\t\u0002\u0002\u0002\u0a45\u0a47\u0005\u0244",
+ "\u0123\u0002\u0a46\u0a45\u0003\u0002\u0002\u0002\u0a46\u0a47\u0003\u0002",
+ "\u0002\u0002\u0a47\u0a48\u0003\u0002\u0002\u0002\u0a48\u0a49\u0005\u020e",
+ "\u0108\u0002\u0a49\u008b\u0003\u0002\u0002\u0002\u0a4a\u0a4b\u00071",
+ "\u0002\u0002\u0a4b\u0a4d\u0007\u015e\u0002\u0002\u0a4c\u0a4e\u0005\u0244",
+ "\u0123\u0002\u0a4d\u0a4c\u0003\u0002\u0002\u0002\u0a4d\u0a4e\u0003\u0002",
+ "\u0002\u0002\u0a4e\u0a4f\u0003\u0002\u0002\u0002\u0a4f\u0a50\u0005\u01f4",
+ "\u00fb\u0002\u0a50\u008d\u0003\u0002\u0002\u0002\u0a51\u0a52\u00071",
+ "\u0002\u0002\u0a52\u0a54\u0007J\u0002\u0002\u0a53\u0a55\t\u0003\u0002",
+ "\u0002\u0a54\u0a53\u0003\u0002\u0002\u0002\u0a54\u0a55\u0003\u0002\u0002",
+ "\u0002\u0a55\u0a56\u0003\u0002\u0002\u0002\u0a56\u0a57\u0005\u020e\u0108",
+ "\u0002\u0a57\u0a58\u0007l\u0002\u0002\u0a58\u0a65\u0005\u01f6\u00fc",
+ "\u0002\u0a59\u0a5b\u0007\u0114\u0002\u0002\u0a5a\u0a5c\u0007\u03f5\u0002",
+ "\u0002\u0a5b\u0a5a\u0003\u0002\u0002\u0002\u0a5b\u0a5c\u0003\u0002\u0002",
+ "\u0002\u0a5c\u0a5d\u0003\u0002\u0002\u0002\u0a5d\u0a64\t\u0005\u0002",
+ "\u0002\u0a5e\u0a60\u0007_\u0002\u0002\u0a5f\u0a61\u0007\u03f5\u0002",
+ "\u0002\u0a60\u0a5f\u0003\u0002\u0002\u0002\u0a60\u0a61\u0003\u0002\u0002",
+ "\u0002\u0a61\u0a62\u0003\u0002\u0002\u0002\u0a62\u0a64\t\u0006\u0002",
+ "\u0002\u0a63\u0a59\u0003\u0002\u0002\u0002\u0a63\u0a5e\u0003\u0002\u0002",
+ "\u0002\u0a64\u0a67\u0003\u0002\u0002\u0002\u0a65\u0a63\u0003\u0002\u0002",
+ "\u0002\u0a65\u0a66\u0003\u0002\u0002\u0002\u0a66\u008f\u0003\u0002\u0002",
+ "\u0002\u0a67\u0a65\u0003\u0002\u0002\u0002\u0a68\u0a69\u00071\u0002",
+ "\u0002\u0a69\u0a6a\u0007\u0195\u0002\u0002\u0a6a\u0a6b\u0007D\u0002",
+ "\u0002\u0a6b\u0a6c\u0005\u020e\u0108\u0002\u0a6c\u0a6d\u0007\u0158\u0002",
+ "\u0002\u0a6d\u0a6e\u0007\u03f5\u0002\u0002\u0a6e\u0a6f\u0005\u0204\u0103",
+ "\u0002\u0a6f\u0091\u0003\u0002\u0002\u0002\u0a70\u0a71\u00071\u0002",
+ "\u0002\u0a71\u0a73\u0007w\u0002\u0002\u0a72\u0a74\u0005\u0244\u0123",
+ "\u0002\u0a73\u0a72\u0003\u0002\u0002\u0002\u0a73\u0a74\u0003\u0002\u0002",
+ "\u0002\u0a74\u0a75\u0003\u0002\u0002\u0002\u0a75\u0a76\u0005\u01f4\u00fb",
+ "\u0002\u0a76\u0093\u0003\u0002\u0002\u0002\u0a77\u0a78\u00071\u0002",
+ "\u0002\u0a78\u0a7a\u0007\u0172\u0002\u0002\u0a79\u0a7b\u0005\u0244\u0123",
+ "\u0002\u0a7a\u0a79\u0003\u0002\u0002\u0002\u0a7a\u0a7b\u0003\u0002\u0002",
+ "\u0002\u0a7b\u0a7c\u0003\u0002\u0002\u0002\u0a7c\u0a7d\u0005\u01f4\u00fb",
+ "\u0002\u0a7d\u0095\u0003\u0002\u0002\u0002\u0a7e\u0a7f\u00071\u0002",
+ "\u0002\u0a7f\u0a81\u0007\u0207\u0002\u0002\u0a80\u0a82\u0005\u0244\u0123",
+ "\u0002\u0a81\u0a80\u0003\u0002\u0002\u0002\u0a81\u0a82\u0003\u0002\u0002",
+ "\u0002\u0a82\u0a83\u0003\u0002\u0002\u0002\u0a83\u0a84\u0005\u020e\u0108",
+ "\u0002\u0a84\u0097\u0003\u0002\u0002\u0002\u0a85\u0a87\u00071\u0002",
+ "\u0002\u0a86\u0a88\u0007\u022f\u0002\u0002\u0a87\u0a86\u0003\u0002\u0002",
+ "\u0002\u0a87\u0a88\u0003\u0002\u0002\u0002\u0a88\u0a89\u0003\u0002\u0002",
+ "\u0002\u0a89\u0a8b\u0007\u009c\u0002\u0002\u0a8a\u0a8c\u0005\u0244\u0123",
+ "\u0002\u0a8b\u0a8a\u0003\u0002\u0002\u0002\u0a8b\u0a8c\u0003\u0002\u0002",
+ "\u0002\u0a8c\u0a8d\u0003\u0002\u0002\u0002\u0a8d\u0a8f\u0005\u0230\u0119",
+ "\u0002\u0a8e\u0a90\t\"\u0002\u0002\u0a8f\u0a8e\u0003\u0002\u0002\u0002",
+ "\u0a8f\u0a90\u0003\u0002\u0002\u0002\u0a90\u0099\u0003\u0002\u0002\u0002",
+ "\u0a91\u0a92\u00071\u0002\u0002\u0a92\u0a93\u0007\u022e\u0002\u0002",
+ "\u0a93\u0a99\u0005\u020e\u0108\u0002\u0a94\u0a96\u0007\u0158\u0002\u0002",
+ "\u0a95\u0a97\u0007\u03f5\u0002\u0002\u0a96\u0a95\u0003\u0002\u0002\u0002",
+ "\u0a96\u0a97\u0003\u0002\u0002\u0002\u0a97\u0a98\u0003\u0002\u0002\u0002",
+ "\u0a98\u0a9a\u0005\u0204\u0103\u0002\u0a99\u0a94\u0003\u0002\u0002\u0002",
+ "\u0a99\u0a9a\u0003\u0002\u0002\u0002\u0a9a\u009b\u0003\u0002\u0002\u0002",
+ "\u0a9b\u0a9c\u00071\u0002\u0002\u0a9c\u0a9e\u0007\u00a1\u0002\u0002",
+ "\u0a9d\u0a9f\u0005\u0244\u0123\u0002\u0a9e\u0a9d\u0003\u0002\u0002\u0002",
+ "\u0a9e\u0a9f\u0003\u0002\u0002\u0002\u0a9f\u0aa0\u0003\u0002\u0002\u0002",
+ "\u0aa0\u0aa1\u0005\u01f4\u00fb\u0002\u0aa1\u009d\u0003\u0002\u0002\u0002",
+ "\u0aa2\u0aa3\u00071\u0002\u0002\u0aa3\u0aa5\u0007\u0244\u0002\u0002",
+ "\u0aa4\u0aa6\u0005\u0244\u0123\u0002\u0aa5\u0aa4\u0003\u0002\u0002\u0002",
+ "\u0aa5\u0aa6\u0003\u0002\u0002\u0002\u0aa6\u0aa7\u0003\u0002\u0002\u0002",
+ "\u0aa7\u0aac\u0005\u01f4\u00fb\u0002\u0aa8\u0aa9\u0007\u0400\u0002\u0002",
+ "\u0aa9\u0aab\u0005\u01f4\u00fb\u0002\u0aaa\u0aa8\u0003\u0002\u0002\u0002",
+ "\u0aab\u0aae\u0003\u0002\u0002\u0002\u0aac\u0aaa\u0003\u0002\u0002\u0002",
+ "\u0aac\u0aad\u0003\u0002\u0002\u0002\u0aad\u0ab0\u0003\u0002\u0002\u0002",
+ "\u0aae\u0aac\u0003\u0002\u0002\u0002\u0aaf\u0ab1\t\"\u0002\u0002\u0ab0",
+ "\u0aaf\u0003\u0002\u0002\u0002\u0ab0\u0ab1\u0003\u0002\u0002\u0002\u0ab1",
+ "\u009f\u0003\u0002\u0002\u0002\u0ab2\u0ab3\u0007\u007f\u0002\u0002\u0ab3",
+ "\u0ab4\u0007\u009c\u0002\u0002\u0ab4\u0ab9\u0005\u00a2R\u0002\u0ab5",
+ "\u0ab6\u0007\u0400\u0002\u0002\u0ab6\u0ab8\u0005\u00a2R\u0002\u0ab7",
+ "\u0ab5\u0003\u0002\u0002\u0002\u0ab8\u0abb\u0003\u0002\u0002\u0002\u0ab9",
+ "\u0ab7\u0003\u0002\u0002\u0002\u0ab9\u0aba\u0003\u0002\u0002\u0002\u0aba",
+ "\u00a1\u0003\u0002\u0002\u0002\u0abb\u0ab9\u0003\u0002\u0002\u0002\u0abc",
+ "\u0abd\u0005\u01f6\u00fc\u0002\u0abd\u0abe\u0007\u009f\u0002\u0002\u0abe",
+ "\u0abf\u0005\u01f6\u00fc\u0002\u0abf\u00a3\u0003\u0002\u0002\u0002\u0ac0",
+ "\u0ac2\u0007\u0236\u0002\u0002\u0ac1\u0ac3\u0007\u009c\u0002\u0002\u0ac2",
+ "\u0ac1\u0003\u0002\u0002\u0002\u0ac2\u0ac3\u0003\u0002\u0002\u0002\u0ac3",
+ "\u0ac4\u0003\u0002\u0002\u0002\u0ac4\u0ac5\u0005\u01f6\u00fc\u0002\u0ac5",
+ "\u00a5\u0003\u0002\u0002\u0002\u0ac6\u0ac7\u0007\u0013\u0002\u0002\u0ac7",
+ "\u0ace\u0005\u01f4\u00fb\u0002\u0ac8\u0acb\u0007\u03fe\u0002\u0002\u0ac9",
+ "\u0acc\u0005\u0238\u011d\u0002\u0aca\u0acc\u0005\u0234\u011b\u0002\u0acb",
+ "\u0ac9\u0003\u0002\u0002\u0002\u0acb\u0aca\u0003\u0002\u0002\u0002\u0acb",
+ "\u0acc\u0003\u0002\u0002\u0002\u0acc\u0acd\u0003\u0002\u0002\u0002\u0acd",
+ "\u0acf\u0007\u03ff\u0002\u0002\u0ace\u0ac8\u0003\u0002\u0002\u0002\u0ace",
+ "\u0acf\u0003\u0002\u0002\u0002\u0acf\u00a7\u0003\u0002\u0002\u0002\u0ad0",
+ "\u0ad3\u0005\u00c2b\u0002\u0ad1\u0ad3\u0005\u00c4c\u0002\u0ad2\u0ad0",
+ "\u0003\u0002\u0002\u0002\u0ad2\u0ad1\u0003\u0002\u0002\u0002\u0ad3\u00a9",
+ "\u0003\u0002\u0002\u0002\u0ad4\u0ad5\u0007\u0150\u0002\u0002\u0ad5\u0ad6",
+ "\u0005\u0234\u011b\u0002\u0ad6\u00ab\u0003\u0002\u0002\u0002\u0ad7\u0adc",
+ "\u0005\u00c6d\u0002\u0ad8\u0adc\u0005\u00c8e\u0002\u0ad9\u0adc\u0005",
+ "\u00caf\u0002\u0ada\u0adc\u0005\u00ccg\u0002\u0adb\u0ad7\u0003\u0002",
+ "\u0002\u0002\u0adb\u0ad8\u0003\u0002\u0002\u0002\u0adb\u0ad9\u0003\u0002",
+ "\u0002\u0002\u0adb\u0ada\u0003\u0002\u0002\u0002\u0adc\u00ad\u0003\u0002",
+ "\u0002\u0002\u0add\u0adf\u0007N\u0002\u0002\u0ade\u0ae0\t#\u0002\u0002",
+ "\u0adf\u0ade\u0003\u0002\u0002\u0002\u0adf\u0ae0\u0003\u0002\u0002\u0002",
+ "\u0ae0\u0ae2\u0003\u0002\u0002\u0002\u0ae1\u0ae3\u0007H\u0002\u0002",
+ "\u0ae2\u0ae1\u0003\u0002\u0002\u0002\u0ae2\u0ae3\u0003\u0002\u0002\u0002",
+ "\u0ae3\u0ae5\u0003\u0002\u0002\u0002\u0ae4\u0ae6\u0007P\u0002\u0002",
+ "\u0ae5\u0ae4\u0003\u0002\u0002\u0002\u0ae5\u0ae6\u0003\u0002\u0002\u0002",
+ "\u0ae6\u0ae7\u0003\u0002\u0002\u0002\u0ae7\u0aee\u0005\u01f6\u00fc\u0002",
+ "\u0ae8\u0ae9\u0007u\u0002\u0002\u0ae9\u0aeb\u0007\u03fe\u0002\u0002",
+ "\u0aea\u0aec\u0005\u022e\u0118\u0002\u0aeb\u0aea\u0003\u0002\u0002\u0002",
+ "\u0aeb\u0aec\u0003\u0002\u0002\u0002\u0aec\u0aed\u0003\u0002\u0002\u0002",
+ "\u0aed\u0aef\u0007\u03ff\u0002\u0002\u0aee\u0ae8\u0003\u0002\u0002\u0002",
+ "\u0aee\u0aef\u0003\u0002\u0002\u0002\u0aef\u0b00\u0003\u0002\u0002\u0002",
+ "\u0af0\u0af1\u0007\u03fe\u0002\u0002\u0af1\u0af2\u0005\u022e\u0118\u0002",
+ "\u0af2\u0af3\u0007\u03ff\u0002\u0002\u0af3\u0af5\u0003\u0002\u0002\u0002",
+ "\u0af4\u0af0\u0003\u0002\u0002\u0002\u0af4\u0af5\u0003\u0002\u0002\u0002",
+ "\u0af5\u0af6\u0003\u0002\u0002\u0002\u0af6\u0b01\u0005\u00ba^\u0002",
+ "\u0af7\u0af8\u0007\u008c\u0002\u0002\u0af8\u0afd\u0005\u00bc_\u0002",
+ "\u0af9\u0afa\u0007\u0400\u0002\u0002\u0afa\u0afc\u0005\u00bc_\u0002",
+ "\u0afb\u0af9\u0003\u0002\u0002\u0002\u0afc\u0aff\u0003\u0002\u0002\u0002",
+ "\u0afd\u0afb\u0003\u0002\u0002\u0002\u0afd\u0afe\u0003\u0002\u0002\u0002",
+ "\u0afe\u0b01\u0003\u0002\u0002\u0002\u0aff\u0afd\u0003\u0002\u0002\u0002",
+ "\u0b00\u0af4\u0003\u0002\u0002\u0002\u0b00\u0af7\u0003\u0002\u0002\u0002",
+ "\u0b01\u0b0e\u0003\u0002\u0002\u0002\u0b02\u0b03\u0007l\u0002\u0002",
+ "\u0b03\u0b04\u0007\u0152\u0002\u0002\u0b04\u0b05\u0007T\u0002\u0002",
+ "\u0b05\u0b06\u0007\u00a8\u0002\u0002\u0b06\u0b0b\u0005\u00bc_\u0002",
+ "\u0b07\u0b08\u0007\u0400\u0002\u0002\u0b08\u0b0a\u0005\u00bc_\u0002",
+ "\u0b09\u0b07\u0003\u0002\u0002\u0002\u0b0a\u0b0d\u0003\u0002\u0002\u0002",
+ "\u0b0b\u0b09\u0003\u0002\u0002\u0002\u0b0b\u0b0c\u0003\u0002\u0002\u0002",
+ "\u0b0c\u0b0f\u0003\u0002\u0002\u0002\u0b0d\u0b0b\u0003\u0002\u0002\u0002",
+ "\u0b0e\u0b02\u0003\u0002\u0002\u0002\u0b0e\u0b0f\u0003\u0002\u0002\u0002",
+ "\u0b0f\u00af\u0003\u0002\u0002\u0002\u0b10\u0b11\u0007^\u0002\u0002",
+ "\u0b11\u0b13\u0007\u0145\u0002\u0002\u0b12\u0b14\t$\u0002\u0002\u0b13",
+ "\u0b12\u0003\u0002\u0002\u0002\u0b13\u0b14\u0003\u0002\u0002\u0002\u0b14",
+ "\u0b16\u0003\u0002\u0002\u0002\u0b15\u0b17\u0007\u0194\u0002\u0002\u0b16",
+ "\u0b15\u0003\u0002\u0002\u0002\u0b16\u0b17\u0003\u0002\u0002\u0002\u0b17",
+ "\u0b18\u0003\u0002\u0002\u0002\u0b18\u0b19\u0007K\u0002\u0002\u0b19",
+ "\u0b1b\u0007\u040d\u0002\u0002\u0b1a\u0b1c\t\b\u0002\u0002\u0b1b\u0b1a",
+ "\u0003\u0002\u0002\u0002\u0b1b\u0b1c\u0003\u0002\u0002\u0002\u0b1c\u0b1d",
+ "\u0003\u0002\u0002\u0002\u0b1d\u0b1e\u0007P\u0002\u0002\u0b1e\u0b1f",
+ "\u0007\u009c\u0002\u0002\u0b1f\u0b25\u0005\u01f6\u00fc\u0002\u0b20\u0b21",
+ "\u0007u\u0002\u0002\u0b21\u0b22\u0007\u03fe\u0002\u0002\u0b22\u0b23",
+ "\u0005\u022e\u0118\u0002\u0b23\u0b24\u0007\u03ff\u0002\u0002\u0b24\u0b26",
+ "\u0003\u0002\u0002\u0002\u0b25\u0b20\u0003\u0002\u0002\u0002\u0b25\u0b26",
+ "\u0003\u0002\u0002\u0002\u0b26\u0b2a\u0003\u0002\u0002\u0002\u0b27\u0b28",
+ "\u0007\u0018\u0002\u0002\u0b28\u0b29\u0007\u008c\u0002\u0002\u0b29\u0b2b",
+ "\u0005\u0200\u0101\u0002\u0b2a\u0b27\u0003\u0002\u0002\u0002\u0b2a\u0b2b",
+ "\u0003\u0002\u0002\u0002\u0b2b\u0b32\u0003\u0002\u0002\u0002\u0b2c\u0b2e",
+ "\t%\u0002\u0002\u0b2d\u0b2f\u0005\u00f6|\u0002\u0b2e\u0b2d\u0003\u0002",
+ "\u0002\u0002\u0b2f\u0b30\u0003\u0002\u0002\u0002\u0b30\u0b2e\u0003\u0002",
+ "\u0002\u0002\u0b30\u0b31\u0003\u0002\u0002\u0002\u0b31\u0b33\u0003\u0002",
+ "\u0002\u0002\u0b32\u0b2c\u0003\u0002\u0002\u0002\u0b32\u0b33\u0003\u0002",
+ "\u0002\u0002\u0b33\u0b3a\u0003\u0002\u0002\u0002\u0b34\u0b36\u0007]",
+ "\u0002\u0002\u0b35\u0b37\u0005\u00f8}\u0002\u0b36\u0b35\u0003\u0002",
+ "\u0002\u0002\u0b37\u0b38\u0003\u0002\u0002\u0002\u0b38\u0b36\u0003\u0002",
+ "\u0002\u0002\u0b38\u0b39\u0003\u0002\u0002\u0002\u0b39\u0b3b\u0003\u0002",
+ "\u0002\u0002\u0b3a\u0b34\u0003\u0002\u0002\u0002\u0b3a\u0b3b\u0003\u0002",
+ "\u0002\u0002\u0b3b\u0b40\u0003\u0002\u0002\u0002\u0b3c\u0b3d\u0007H",
+ "\u0002\u0002\u0b3d\u0b3e\u0005\u0214\u010b\u0002\u0b3e\u0b3f\t&\u0002",
+ "\u0002\u0b3f\u0b41\u0003\u0002\u0002\u0002\u0b40\u0b3c\u0003\u0002\u0002",
+ "\u0002\u0b40\u0b41\u0003\u0002\u0002\u0002\u0b41\u0b4d\u0003\u0002\u0002",
+ "\u0002\u0b42\u0b43\u0007\u03fe\u0002\u0002\u0b43\u0b48\u0005\u00be`",
+ "\u0002\u0b44\u0b45\u0007\u0400\u0002\u0002\u0b45\u0b47\u0005\u00be`",
+ "\u0002\u0b46\u0b44\u0003\u0002\u0002\u0002\u0b47\u0b4a\u0003\u0002\u0002",
+ "\u0002\u0b48\u0b46\u0003\u0002\u0002\u0002\u0b48\u0b49\u0003\u0002\u0002",
+ "\u0002\u0b49\u0b4b\u0003\u0002\u0002\u0002\u0b4a\u0b48\u0003\u0002\u0002",
+ "\u0002\u0b4b\u0b4c\u0007\u03ff\u0002\u0002\u0b4c\u0b4e\u0003\u0002\u0002",
+ "\u0002\u0b4d\u0b42\u0003\u0002\u0002\u0002\u0b4d\u0b4e\u0003\u0002\u0002",
+ "\u0002\u0b4e\u0b58\u0003\u0002\u0002\u0002\u0b4f\u0b50\u0007\u008c\u0002",
+ "\u0002\u0b50\u0b55\u0005\u00bc_\u0002\u0b51\u0b52\u0007\u0400\u0002",
+ "\u0002\u0b52\u0b54\u0005\u00bc_\u0002\u0b53\u0b51\u0003\u0002\u0002",
+ "\u0002\u0b54\u0b57\u0003\u0002\u0002\u0002\u0b55\u0b53\u0003\u0002\u0002",
+ "\u0002\u0b55\u0b56\u0003\u0002\u0002\u0002\u0b56\u0b59\u0003\u0002\u0002",
+ "\u0002\u0b57\u0b55\u0003\u0002\u0002\u0002\u0b58\u0b4f\u0003\u0002\u0002",
+ "\u0002\u0b58\u0b59\u0003\u0002\u0002\u0002\u0b59\u00b1\u0003\u0002\u0002",
+ "\u0002\u0b5a\u0b5b\u0007^\u0002\u0002\u0b5b\u0b5d\u0007\u024e\u0002",
+ "\u0002\u0b5c\u0b5e\t$\u0002\u0002\u0b5d\u0b5c\u0003\u0002\u0002\u0002",
+ "\u0b5d\u0b5e\u0003\u0002\u0002\u0002\u0b5e\u0b60\u0003\u0002\u0002\u0002",
+ "\u0b5f\u0b61\u0007\u0194\u0002\u0002\u0b60\u0b5f\u0003\u0002\u0002\u0002",
+ "\u0b60\u0b61\u0003\u0002\u0002\u0002\u0b61\u0b62\u0003\u0002\u0002\u0002",
+ "\u0b62\u0b63\u0007K\u0002\u0002\u0b63\u0b65\u0007\u040d\u0002\u0002",
+ "\u0b64\u0b66\t\b\u0002\u0002\u0b65\u0b64\u0003\u0002\u0002\u0002\u0b65",
+ "\u0b66\u0003\u0002\u0002\u0002\u0b66\u0b67\u0003\u0002\u0002\u0002\u0b67",
+ "\u0b68\u0007P\u0002\u0002\u0b68\u0b69\u0007\u009c\u0002\u0002\u0b69",
+ "\u0b6d\u0005\u01f6\u00fc\u0002\u0b6a\u0b6b\u0007\u0018\u0002\u0002\u0b6b",
+ "\u0b6c\u0007\u008c\u0002\u0002\u0b6c\u0b6e\u0005\u0200\u0101\u0002\u0b6d",
+ "\u0b6a\u0003\u0002\u0002\u0002\u0b6d\u0b6e\u0003\u0002\u0002\u0002\u0b6e",
+ "\u0b75\u0003\u0002\u0002\u0002\u0b6f\u0b70\u0007\u0202\u0002\u0002\u0b70",
+ "\u0b71\u0007\u017c\u0002\u0002\u0b71\u0b72\u0007\u0012\u0002\u0002\u0b72",
+ "\u0b73\u0007\u03f7\u0002\u0002\u0b73\u0b74\u0007\u040d\u0002\u0002\u0b74",
+ "\u0b76\u0007\u03f6\u0002\u0002\u0b75\u0b6f\u0003\u0002\u0002\u0002\u0b75",
+ "\u0b76\u0003\u0002\u0002\u0002\u0b76\u0b7b\u0003\u0002\u0002\u0002\u0b77",
+ "\u0b78\u0007H\u0002\u0002\u0b78\u0b79\u0005\u0214\u010b\u0002\u0b79",
+ "\u0b7a\t&\u0002\u0002\u0b7a\u0b7c\u0003\u0002\u0002\u0002\u0b7b\u0b77",
+ "\u0003\u0002\u0002\u0002\u0b7b\u0b7c\u0003\u0002\u0002\u0002\u0b7c\u0b88",
+ "\u0003\u0002\u0002\u0002\u0b7d\u0b7e\u0007\u03fe\u0002\u0002\u0b7e\u0b83",
+ "\u0005\u00be`\u0002\u0b7f\u0b80\u0007\u0400\u0002\u0002\u0b80\u0b82",
+ "\u0005\u00be`\u0002\u0b81\u0b7f\u0003\u0002\u0002\u0002\u0b82\u0b85",
+ "\u0003\u0002\u0002\u0002\u0b83\u0b81\u0003\u0002\u0002\u0002\u0b83\u0b84",
+ "\u0003\u0002\u0002\u0002\u0b84\u0b86\u0003\u0002\u0002\u0002\u0b85\u0b83",
+ "\u0003\u0002\u0002\u0002\u0b86\u0b87\u0007\u03ff\u0002\u0002\u0b87\u0b89",
+ "\u0003\u0002\u0002\u0002\u0b88\u0b7d\u0003\u0002\u0002\u0002\u0b88\u0b89",
+ "\u0003\u0002\u0002\u0002\u0b89\u0b93\u0003\u0002\u0002\u0002\u0b8a\u0b8b",
+ "\u0007\u008c\u0002\u0002\u0b8b\u0b90\u0005\u00bc_\u0002\u0b8c\u0b8d",
+ "\u0007\u0400\u0002\u0002\u0b8d\u0b8f\u0005\u00bc_\u0002\u0b8e\u0b8c",
+ "\u0003\u0002\u0002\u0002\u0b8f\u0b92\u0003\u0002\u0002\u0002\u0b90\u0b8e",
+ "\u0003\u0002\u0002\u0002\u0b90\u0b91\u0003\u0002\u0002\u0002\u0b91\u0b94",
+ "\u0003\u0002\u0002\u0002\u0b92\u0b90\u0003\u0002\u0002\u0002\u0b93\u0b8a",
+ "\u0003\u0002\u0002\u0002\u0b93\u0b94\u0003\u0002\u0002\u0002\u0b94\u00b3",
+ "\u0003\u0002\u0002\u0002\u0b95\u0b97\u0007\u0081\u0002\u0002\u0b96\u0b98",
+ "\t\'\u0002\u0002\u0b97\u0b96\u0003\u0002\u0002\u0002\u0b97\u0b98\u0003",
+ "\u0002\u0002\u0002\u0b98\u0b9a\u0003\u0002\u0002\u0002\u0b99\u0b9b\u0007",
+ "P\u0002\u0002\u0b9a\u0b99\u0003\u0002\u0002\u0002\u0b9a\u0b9b\u0003",
+ "\u0002\u0002\u0002\u0b9b\u0b9c\u0003\u0002\u0002\u0002\u0b9c\u0ba2\u0005",
+ "\u01f6\u00fc\u0002\u0b9d\u0b9e\u0007u\u0002\u0002\u0b9e\u0b9f\u0007",
+ "\u03fe\u0002\u0002\u0b9f\u0ba0\u0005\u022e\u0118\u0002\u0ba0\u0ba1\u0007",
+ "\u03ff\u0002\u0002\u0ba1\u0ba3\u0003\u0002\u0002\u0002\u0ba2\u0b9d\u0003",
+ "\u0002\u0002\u0002\u0ba2\u0ba3\u0003\u0002\u0002\u0002\u0ba3\u0bb4\u0003",
+ "\u0002\u0002\u0002\u0ba4\u0ba5\u0007\u03fe\u0002\u0002\u0ba5\u0ba6\u0005",
+ "\u022e\u0118\u0002\u0ba6\u0ba7\u0007\u03ff\u0002\u0002\u0ba7\u0ba9\u0003",
+ "\u0002\u0002\u0002\u0ba8\u0ba4\u0003\u0002\u0002\u0002\u0ba8\u0ba9\u0003",
+ "\u0002\u0002\u0002\u0ba9\u0baa\u0003\u0002\u0002\u0002\u0baa\u0bb5\u0005",
+ "\u00ba^\u0002\u0bab\u0bac\u0007\u008c\u0002\u0002\u0bac\u0bb1\u0005",
+ "\u00bc_\u0002\u0bad\u0bae\u0007\u0400\u0002\u0002\u0bae\u0bb0\u0005",
+ "\u00bc_\u0002\u0baf\u0bad\u0003\u0002\u0002\u0002\u0bb0\u0bb3\u0003",
+ "\u0002\u0002\u0002\u0bb1\u0baf\u0003\u0002\u0002\u0002\u0bb1\u0bb2\u0003",
+ "\u0002\u0002\u0002\u0bb2\u0bb5\u0003\u0002\u0002\u0002\u0bb3\u0bb1\u0003",
+ "\u0002\u0002\u0002\u0bb4\u0ba8\u0003\u0002\u0002\u0002\u0bb4\u0bab\u0003",
+ "\u0002\u0002\u0002\u0bb5\u00b5\u0003\u0002\u0002\u0002\u0bb6\u0bb8\u0005",
+ "\u00e6t\u0002\u0bb7\u0bb9\u0005\u00c0a\u0002\u0bb8\u0bb7\u0003\u0002",
+ "\u0002\u0002\u0bb8\u0bb9\u0003\u0002\u0002\u0002\u0bb9\u0bee\u0003\u0002",
+ "\u0002\u0002\u0bba\u0bbc\u0005\u00e2r\u0002\u0bbb\u0bbd\u0005\u00c0",
+ "a\u0002\u0bbc\u0bbb\u0003\u0002\u0002\u0002\u0bbc\u0bbd\u0003\u0002",
+ "\u0002\u0002\u0bbd\u0bee\u0003\u0002\u0002\u0002\u0bbe\u0bc0\u0005\u00e8",
+ "u\u0002\u0bbf\u0bc1\u0005\u00ecw\u0002\u0bc0\u0bbf\u0003\u0002\u0002",
+ "\u0002\u0bc1\u0bc2\u0003\u0002\u0002\u0002\u0bc2\u0bc0\u0003\u0002\u0002",
+ "\u0002\u0bc2\u0bc3\u0003\u0002\u0002\u0002\u0bc3\u0bcc\u0003\u0002\u0002",
+ "\u0002\u0bc4\u0bc6\u0007\u00a4\u0002\u0002\u0bc5\u0bc7\t(\u0002\u0002",
+ "\u0bc6\u0bc5\u0003\u0002\u0002\u0002\u0bc6\u0bc7\u0003\u0002\u0002\u0002",
+ "\u0bc7\u0bca\u0003\u0002\u0002\u0002\u0bc8\u0bcb\u0005\u00e6t\u0002",
+ "\u0bc9\u0bcb\u0005\u00e2r\u0002\u0bca\u0bc8\u0003\u0002\u0002\u0002",
+ "\u0bca\u0bc9\u0003\u0002\u0002\u0002\u0bcb\u0bcd\u0003\u0002\u0002\u0002",
+ "\u0bcc\u0bc4\u0003\u0002\u0002\u0002\u0bcc\u0bcd\u0003\u0002\u0002\u0002",
+ "\u0bcd\u0bcf\u0003\u0002\u0002\u0002\u0bce\u0bd0\u0005\u00d2j\u0002",
+ "\u0bcf\u0bce\u0003\u0002\u0002\u0002\u0bcf\u0bd0\u0003\u0002\u0002\u0002",
+ "\u0bd0\u0bd2\u0003\u0002\u0002\u0002\u0bd1\u0bd3\u0005\u00fe\u0080\u0002",
+ "\u0bd2\u0bd1\u0003\u0002\u0002\u0002\u0bd2\u0bd3\u0003\u0002\u0002\u0002",
+ "\u0bd3\u0bd5\u0003\u0002\u0002\u0002\u0bd4\u0bd6\u0005\u00c0a\u0002",
+ "\u0bd5\u0bd4\u0003\u0002\u0002\u0002\u0bd5\u0bd6\u0003\u0002\u0002\u0002",
+ "\u0bd6\u0bee\u0003\u0002\u0002\u0002\u0bd7\u0bd9\u0005\u00e4s\u0002",
+ "\u0bd8\u0bda\u0005\u00eav\u0002\u0bd9\u0bd8\u0003\u0002\u0002\u0002",
+ "\u0bda\u0bdb\u0003\u0002\u0002\u0002\u0bdb\u0bd9\u0003\u0002\u0002\u0002",
+ "\u0bdb\u0bdc\u0003\u0002\u0002\u0002\u0bdc\u0be2\u0003\u0002\u0002\u0002",
+ "\u0bdd\u0bdf\u0007\u00a4\u0002\u0002\u0bde\u0be0\t(\u0002\u0002\u0bdf",
+ "\u0bde\u0003\u0002\u0002\u0002\u0bdf\u0be0\u0003\u0002\u0002\u0002\u0be0",
+ "\u0be1\u0003\u0002\u0002\u0002\u0be1\u0be3\u0005\u00e2r\u0002\u0be2",
+ "\u0bdd\u0003\u0002\u0002\u0002\u0be2\u0be3\u0003\u0002\u0002\u0002\u0be3",
+ "\u0be5\u0003\u0002\u0002\u0002\u0be4\u0be6\u0005\u00d2j\u0002\u0be5",
+ "\u0be4\u0003\u0002\u0002\u0002\u0be5\u0be6\u0003\u0002\u0002\u0002\u0be6",
+ "\u0be8\u0003\u0002\u0002\u0002\u0be7\u0be9\u0005\u00fe\u0080\u0002\u0be8",
+ "\u0be7\u0003\u0002\u0002\u0002\u0be8\u0be9\u0003\u0002\u0002\u0002\u0be9",
+ "\u0beb\u0003\u0002\u0002\u0002\u0bea\u0bec\u0005\u00c0a\u0002\u0beb",
+ "\u0bea\u0003\u0002\u0002\u0002\u0beb\u0bec\u0003\u0002\u0002\u0002\u0bec",
+ "\u0bee\u0003\u0002\u0002\u0002\u0bed\u0bb6\u0003\u0002\u0002\u0002\u0bed",
+ "\u0bba\u0003\u0002\u0002\u0002\u0bed\u0bbe\u0003\u0002\u0002\u0002\u0bed",
+ "\u0bd7\u0003\u0002\u0002\u0002\u0bee\u00b7\u0003\u0002\u0002\u0002\u0bef",
+ "\u0bf2\u0005\u00ceh\u0002\u0bf0\u0bf2\u0005\u00d0i\u0002\u0bf1\u0bef",
+ "\u0003\u0002\u0002\u0002\u0bf1\u0bf0\u0003\u0002\u0002\u0002\u0bf2\u00b9",
+ "\u0003\u0002\u0002\u0002\u0bf3\u0c06\u0005\u00b6\\\u0002\u0bf4\u0bf5",
+ "\t)\u0002\u0002\u0bf5\u0bf7\u0007\u03fe\u0002\u0002\u0bf6\u0bf8\u0005",
+ "\u0236\u011c\u0002\u0bf7\u0bf6\u0003\u0002\u0002\u0002\u0bf7\u0bf8\u0003",
+ "\u0002\u0002\u0002\u0bf8\u0bf9\u0003\u0002\u0002\u0002\u0bf9\u0c02\u0007",
+ "\u03ff\u0002\u0002\u0bfa\u0bfb\u0007\u0400\u0002\u0002\u0bfb\u0bfd\u0007",
+ "\u03fe\u0002\u0002\u0bfc\u0bfe\u0005\u0236\u011c\u0002\u0bfd\u0bfc\u0003",
+ "\u0002\u0002\u0002\u0bfd\u0bfe\u0003\u0002\u0002\u0002\u0bfe\u0bff\u0003",
+ "\u0002\u0002\u0002\u0bff\u0c01\u0007\u03ff\u0002\u0002\u0c00\u0bfa\u0003",
+ "\u0002\u0002\u0002\u0c01\u0c04\u0003\u0002\u0002\u0002\u0c02\u0c00\u0003",
+ "\u0002\u0002\u0002\u0c02\u0c03\u0003\u0002\u0002\u0002\u0c03\u0c06\u0003",
+ "\u0002\u0002\u0002\u0c04\u0c02\u0003\u0002\u0002\u0002\u0c05\u0bf3\u0003",
+ "\u0002\u0002\u0002\u0c05\u0bf4\u0003\u0002\u0002\u0002\u0c06\u00bb\u0003",
+ "\u0002\u0002\u0002\u0c07\u0c08\u0005\u01f8\u00fd\u0002\u0c08\u0c0b\u0007",
+ "\u03f5\u0002\u0002\u0c09\u0c0c\u0005\u025c\u012f\u0002\u0c0a\u0c0c\u0007",
+ "(\u0002\u0002\u0c0b\u0c09\u0003\u0002\u0002\u0002\u0c0b\u0c0a\u0003",
+ "\u0002\u0002\u0002\u0c0c\u00bd\u0003\u0002\u0002\u0002\u0c0d\u0c10\u0005",
+ "\u020e\u0108\u0002\u0c0e\u0c10\u0007\u0418\u0002\u0002\u0c0f\u0c0d\u0003",
+ "\u0002\u0002\u0002\u0c0f\u0c0e\u0003\u0002\u0002\u0002\u0c10\u00bf\u0003",
+ "\u0002\u0002\u0002\u0c11\u0c12\u0007<\u0002\u0002\u0c12\u0c18\u0007",
+ "\u00a8\u0002\u0002\u0c13\u0c14\u0007_\u0002\u0002\u0c14\u0c15\u0007",
+ "I\u0002\u0002\u0c15\u0c16\u0007\u0209\u0002\u0002\u0c16\u0c18\u0007",
+ "\u01b8\u0002\u0002\u0c17\u0c11\u0003\u0002\u0002\u0002\u0c17\u0c13\u0003",
+ "\u0002\u0002\u0002\u0c18\u00c1\u0003\u0002\u0002\u0002\u0c19\u0c1b\u0007",
+ "*\u0002\u0002\u0c1a\u0c1c\u0007a\u0002\u0002\u0c1b\u0c1a\u0003\u0002",
+ "\u0002\u0002\u0c1b\u0c1c\u0003\u0002\u0002\u0002\u0c1c\u0c1e\u0003\u0002",
+ "\u0002\u0002\u0c1d\u0c1f\u0007\u01e5\u0002\u0002\u0c1e\u0c1d\u0003\u0002",
+ "\u0002\u0002\u0c1e\u0c1f\u0003\u0002\u0002\u0002\u0c1f\u0c21\u0003\u0002",
+ "\u0002\u0002\u0c20\u0c22\u0007H\u0002\u0002\u0c21\u0c20\u0003\u0002",
+ "\u0002\u0002\u0c21\u0c22\u0003\u0002\u0002\u0002\u0c22\u0c23\u0003\u0002",
+ "\u0002\u0002\u0c23\u0c24\u0007?\u0002\u0002\u0c24\u0c2a\u0005\u01f6",
+ "\u00fc\u0002\u0c25\u0c26\u0007u\u0002\u0002\u0c26\u0c27\u0007\u03fe",
+ "\u0002\u0002\u0c27\u0c28\u0005\u022e\u0118\u0002\u0c28\u0c29\u0007\u03ff",
+ "\u0002\u0002\u0c29\u0c2b\u0003\u0002\u0002\u0002\u0c2a\u0c25\u0003\u0002",
+ "\u0002\u0002\u0c2a\u0c2b\u0003\u0002\u0002\u0002\u0c2b\u0c2e\u0003\u0002",
+ "\u0002\u0002\u0c2c\u0c2d\u0007\u00ae\u0002\u0002\u0c2d\u0c2f\u0005\u025c",
+ "\u012f\u0002\u0c2e\u0c2c\u0003\u0002\u0002\u0002\u0c2e\u0c2f\u0003\u0002",
+ "\u0002\u0002\u0c2f\u0c31\u0003\u0002\u0002\u0002\u0c30\u0c32\u0005\u00d2",
+ "j\u0002\u0c31\u0c30\u0003\u0002\u0002\u0002\u0c31\u0c32\u0003\u0002",
+ "\u0002\u0002\u0c32\u0c35\u0003\u0002\u0002\u0002\u0c33\u0c34\u0007[",
+ "\u0002\u0002\u0c34\u0c36\u0005\u0100\u0081\u0002\u0c35\u0c33\u0003\u0002",
+ "\u0002\u0002\u0c35\u0c36\u0003\u0002\u0002\u0002\u0c36\u00c3\u0003\u0002",
+ "\u0002\u0002\u0c37\u0c39\u0007*\u0002\u0002\u0c38\u0c3a\u0007a\u0002",
+ "\u0002\u0c39\u0c38\u0003\u0002\u0002\u0002\u0c39\u0c3a\u0003\u0002\u0002",
+ "\u0002\u0c3a\u0c3c\u0003\u0002\u0002\u0002\u0c3b\u0c3d\u0007\u01e5\u0002",
+ "\u0002\u0c3c\u0c3b\u0003\u0002\u0002\u0002\u0c3c\u0c3d\u0003\u0002\u0002",
+ "\u0002\u0c3d\u0c3f\u0003\u0002\u0002\u0002\u0c3e\u0c40\u0007H\u0002",
+ "\u0002\u0c3f\u0c3e\u0003\u0002\u0002\u0002\u0c3f\u0c40\u0003\u0002\u0002",
+ "\u0002\u0c40\u0c68\u0003\u0002\u0002\u0002\u0c41\u0c44\u0005\u01f6\u00fc",
+ "\u0002\u0c42\u0c43\u0007\u03fd\u0002\u0002\u0c43\u0c45\u0007\u03ed\u0002",
+ "\u0002\u0c44\u0c42\u0003\u0002\u0002\u0002\u0c44\u0c45\u0003\u0002\u0002",
+ "\u0002\u0c45\u0c4e\u0003\u0002\u0002\u0002\u0c46\u0c47\u0007\u0400\u0002",
+ "\u0002\u0c47\u0c4a\u0005\u01f6\u00fc\u0002\u0c48\u0c49\u0007\u03fd\u0002",
+ "\u0002\u0c49\u0c4b\u0007\u03ed\u0002\u0002\u0c4a\u0c48\u0003\u0002\u0002",
+ "\u0002\u0c4a\u0c4b\u0003\u0002\u0002\u0002\u0c4b\u0c4d\u0003\u0002\u0002",
+ "\u0002\u0c4c\u0c46\u0003\u0002\u0002\u0002\u0c4d\u0c50\u0003\u0002\u0002",
+ "\u0002\u0c4e\u0c4c\u0003\u0002\u0002\u0002\u0c4e\u0c4f\u0003\u0002\u0002",
+ "\u0002\u0c4f\u0c51\u0003\u0002\u0002\u0002\u0c50\u0c4e\u0003\u0002\u0002",
+ "\u0002\u0c51\u0c52\u0007?\u0002\u0002\u0c52\u0c53\u0005\u00d6l\u0002",
+ "\u0c53\u0c69\u0003\u0002\u0002\u0002\u0c54\u0c55\u0007?\u0002\u0002",
+ "\u0c55\u0c58\u0005\u01f6\u00fc\u0002\u0c56\u0c57\u0007\u03fd\u0002\u0002",
+ "\u0c57\u0c59\u0007\u03ed\u0002\u0002\u0c58\u0c56\u0003\u0002\u0002\u0002",
+ "\u0c58\u0c59\u0003\u0002\u0002\u0002\u0c59\u0c62\u0003\u0002\u0002\u0002",
+ "\u0c5a\u0c5b\u0007\u0400\u0002\u0002\u0c5b\u0c5e\u0005\u01f6\u00fc\u0002",
+ "\u0c5c\u0c5d\u0007\u03fd\u0002\u0002\u0c5d\u0c5f\u0007\u03ed\u0002\u0002",
+ "\u0c5e\u0c5c\u0003\u0002\u0002\u0002\u0c5e\u0c5f\u0003\u0002\u0002\u0002",
+ "\u0c5f\u0c61\u0003\u0002\u0002\u0002\u0c60\u0c5a\u0003\u0002\u0002\u0002",
+ "\u0c61\u0c64\u0003\u0002\u0002\u0002\u0c62\u0c60\u0003\u0002\u0002\u0002",
+ "\u0c62\u0c63\u0003\u0002\u0002\u0002\u0c63\u0c65\u0003\u0002\u0002\u0002",
+ "\u0c64\u0c62\u0003\u0002\u0002\u0002\u0c65\u0c66\u0007\u00ab\u0002\u0002",
+ "\u0c66\u0c67\u0005\u00d6l\u0002\u0c67\u0c69\u0003\u0002\u0002\u0002",
+ "\u0c68\u0c41\u0003\u0002\u0002\u0002\u0c68\u0c54\u0003\u0002\u0002\u0002",
+ "\u0c69\u0c6c\u0003\u0002\u0002\u0002\u0c6a\u0c6b\u0007\u00ae\u0002\u0002",
+ "\u0c6b\u0c6d\u0005\u025c\u012f\u0002\u0c6c\u0c6a\u0003\u0002\u0002\u0002",
+ "\u0c6c\u0c6d\u0003\u0002\u0002\u0002\u0c6d\u00c5\u0003\u0002\u0002\u0002",
+ "\u0c6e\u0c6f\u0007\u0177\u0002\u0002\u0c6f\u0c70\u0005\u01f6\u00fc\u0002",
+ "\u0c70\u0c75\u0007\u01cc\u0002\u0002\u0c71\u0c73\u0007\r\u0002\u0002",
+ "\u0c72\u0c71\u0003\u0002\u0002\u0002\u0c72\u0c73\u0003\u0002\u0002\u0002",
+ "\u0c73\u0c74\u0003\u0002\u0002\u0002\u0c74\u0c76\u0005\u020e\u0108\u0002",
+ "\u0c75\u0c72\u0003\u0002\u0002\u0002\u0c75\u0c76\u0003\u0002\u0002\u0002",
+ "\u0c76\u00c7\u0003\u0002\u0002\u0002\u0c77\u0c78\u0007\u0177\u0002\u0002",
+ "\u0c78\u0c79\u0005\u01f6\u00fc\u0002\u0c79\u0c7a\u0007z\u0002\u0002",
+ "\u0c7a\u0c81\u0005\u020e\u0108\u0002\u0c7b\u0c7c\u0005\u0264\u0133\u0002",
+ "\u0c7c\u0c7d\u0007\u03fe\u0002\u0002\u0c7d\u0c7e\u0005\u0238\u011d\u0002",
+ "\u0c7e\u0c7f\u0007\u03ff\u0002\u0002\u0c7f\u0c82\u0003\u0002\u0002\u0002",
+ "\u0c80\u0c82\t*\u0002\u0002\u0c81\u0c7b\u0003\u0002\u0002\u0002\u0c81",
+ "\u0c80\u0003\u0002\u0002\u0002\u0c82\u0c85\u0003\u0002\u0002\u0002\u0c83",
+ "\u0c84\u0007\u00ae\u0002\u0002\u0c84\u0c86\u0005\u025c\u012f\u0002\u0c85",
+ "\u0c83\u0003\u0002\u0002\u0002\u0c85\u0c86\u0003\u0002\u0002\u0002\u0c86",
+ "\u0c89\u0003\u0002\u0002\u0002\u0c87\u0c88\u0007[\u0002\u0002\u0c88",
+ "\u0c8a\u0005\u0100\u0081\u0002\u0c89\u0c87\u0003\u0002\u0002\u0002\u0c89",
+ "\u0c8a\u0003\u0002\u0002\u0002\u0c8a\u00c9\u0003\u0002\u0002\u0002\u0c8b",
+ "\u0c8c\u0007\u0177\u0002\u0002\u0c8c\u0c8d\u0005\u01f6\u00fc\u0002\u0c8d",
+ "\u0c8e\u0007z\u0002\u0002\u0c8e\u0c91\t+\u0002\u0002\u0c8f\u0c90\u0007",
+ "\u00ae\u0002\u0002\u0c90\u0c92\u0005\u025c\u012f\u0002\u0c91\u0c8f\u0003",
+ "\u0002\u0002\u0002\u0c91\u0c92\u0003\u0002\u0002\u0002\u0c92\u0c95\u0003",
+ "\u0002\u0002\u0002\u0c93\u0c94\u0007[\u0002\u0002\u0c94\u0c96\u0005",
+ "\u0100\u0081\u0002\u0c95\u0c93\u0003\u0002\u0002\u0002\u0c95\u0c96\u0003",
+ "\u0002\u0002\u0002\u0c96\u00cb\u0003\u0002\u0002\u0002\u0c97\u0c98\u0007",
+ "\u0177\u0002\u0002\u0c98\u0c99\u0005\u01f6\u00fc\u0002\u0c99\u0c9a\u0007",
+ "\u012d\u0002\u0002\u0c9a\u00cd\u0003\u0002\u0002\u0002\u0c9b\u0c9d\u0007",
+ "\u00a8\u0002\u0002\u0c9c\u0c9e\u0007a\u0002\u0002\u0c9d\u0c9c\u0003",
+ "\u0002\u0002\u0002\u0c9d\u0c9e\u0003\u0002\u0002\u0002\u0c9e\u0ca0\u0003",
+ "\u0002\u0002\u0002\u0c9f\u0ca1\u0007H\u0002\u0002\u0ca0\u0c9f\u0003",
+ "\u0002\u0002\u0002\u0ca0\u0ca1\u0003\u0002\u0002\u0002\u0ca1\u0ca2\u0003",
+ "\u0002\u0002\u0002\u0ca2\u0ca7\u0005\u01f6\u00fc\u0002\u0ca3\u0ca5\u0007",
+ "\r\u0002\u0002\u0ca4\u0ca3\u0003\u0002\u0002\u0002\u0ca4\u0ca5\u0003",
+ "\u0002\u0002\u0002\u0ca5\u0ca6\u0003\u0002\u0002\u0002\u0ca6\u0ca8\u0005",
+ "\u020e\u0108\u0002\u0ca7\u0ca4\u0003\u0002\u0002\u0002\u0ca7\u0ca8\u0003",
+ "\u0002\u0002\u0002\u0ca8\u0ca9\u0003\u0002\u0002\u0002\u0ca9\u0caa\u0007",
+ "\u008c\u0002\u0002\u0caa\u0caf\u0005\u00bc_\u0002\u0cab\u0cac\u0007",
+ "\u0400\u0002\u0002\u0cac\u0cae\u0005\u00bc_\u0002\u0cad\u0cab\u0003",
+ "\u0002\u0002\u0002\u0cae\u0cb1\u0003\u0002\u0002\u0002\u0caf\u0cad\u0003",
+ "\u0002\u0002\u0002\u0caf\u0cb0\u0003\u0002\u0002\u0002\u0cb0\u0cb4\u0003",
+ "\u0002\u0002\u0002\u0cb1\u0caf\u0003\u0002\u0002\u0002\u0cb2\u0cb3\u0007",
+ "\u00ae\u0002\u0002\u0cb3\u0cb5\u0005\u025c\u012f\u0002\u0cb4\u0cb2\u0003",
+ "\u0002\u0002\u0002\u0cb4\u0cb5\u0003\u0002\u0002\u0002\u0cb5\u0cb7\u0003",
+ "\u0002\u0002\u0002\u0cb6\u0cb8\u0005\u00d2j\u0002\u0cb7\u0cb6\u0003",
+ "\u0002\u0002\u0002\u0cb7\u0cb8\u0003\u0002\u0002\u0002\u0cb8\u0cba\u0003",
+ "\u0002\u0002\u0002\u0cb9\u0cbb\u0005\u00fe\u0080\u0002\u0cba\u0cb9\u0003",
+ "\u0002\u0002\u0002\u0cba\u0cbb\u0003\u0002\u0002\u0002\u0cbb\u00cf\u0003",
+ "\u0002\u0002\u0002\u0cbc\u0cbe\u0007\u00a8\u0002\u0002\u0cbd\u0cbf\u0007",
+ "a\u0002\u0002\u0cbe\u0cbd\u0003\u0002\u0002\u0002\u0cbe\u0cbf\u0003",
+ "\u0002\u0002\u0002\u0cbf\u0cc1\u0003\u0002\u0002\u0002\u0cc0\u0cc2\u0007",
+ "H\u0002\u0002\u0cc1\u0cc0\u0003\u0002\u0002\u0002\u0cc1\u0cc2\u0003",
+ "\u0002\u0002\u0002\u0cc2\u0cc3\u0003\u0002\u0002\u0002\u0cc3\u0cc4\u0005",
+ "\u00d6l\u0002\u0cc4\u0cc5\u0007\u008c\u0002\u0002\u0cc5\u0cca\u0005",
+ "\u00bc_\u0002\u0cc6\u0cc7\u0007\u0400\u0002\u0002\u0cc7\u0cc9\u0005",
+ "\u00bc_\u0002\u0cc8\u0cc6\u0003\u0002\u0002\u0002\u0cc9\u0ccc\u0003",
+ "\u0002\u0002\u0002\u0cca\u0cc8\u0003\u0002\u0002\u0002\u0cca\u0ccb\u0003",
+ "\u0002\u0002\u0002\u0ccb\u0ccf\u0003\u0002\u0002\u0002\u0ccc\u0cca\u0003",
+ "\u0002\u0002\u0002\u0ccd\u0cce\u0007\u00ae\u0002\u0002\u0cce\u0cd0\u0005",
+ "\u025c\u012f\u0002\u0ccf\u0ccd\u0003\u0002\u0002\u0002\u0ccf\u0cd0\u0003",
+ "\u0002\u0002\u0002\u0cd0\u00d1\u0003\u0002\u0002\u0002\u0cd1\u0cd2\u0007",
+ "q\u0002\u0002\u0cd2\u0cd3\u0007\u0012\u0002\u0002\u0cd3\u0cd8\u0005",
+ "\u00d4k\u0002\u0cd4\u0cd5\u0007\u0400\u0002\u0002\u0cd5\u0cd7\u0005",
+ "\u00d4k\u0002\u0cd6\u0cd4\u0003\u0002\u0002\u0002\u0cd7\u0cda\u0003",
+ "\u0002\u0002\u0002\u0cd8\u0cd6\u0003\u0002\u0002\u0002\u0cd8\u0cd9\u0003",
+ "\u0002\u0002\u0002\u0cd9\u00d3\u0003\u0002\u0002\u0002\u0cda\u0cd8\u0003",
+ "\u0002\u0002\u0002\u0cdb\u0cdd\u0005\u025c\u012f\u0002\u0cdc\u0cde\t",
+ ",\u0002\u0002\u0cdd\u0cdc\u0003\u0002\u0002\u0002\u0cdd\u0cde\u0003",
+ "\u0002\u0002\u0002\u0cde\u00d5\u0003\u0002\u0002\u0002\u0cdf\u0ce4\u0005",
+ "\u00d8m\u0002\u0ce0\u0ce1\u0007\u0400\u0002\u0002\u0ce1\u0ce3\u0005",
+ "\u00d8m\u0002\u0ce2\u0ce0\u0003\u0002\u0002\u0002\u0ce3\u0ce6\u0003",
+ "\u0002\u0002\u0002\u0ce4\u0ce2\u0003\u0002\u0002\u0002\u0ce4\u0ce5\u0003",
+ "\u0002\u0002\u0002\u0ce5\u00d7\u0003\u0002\u0002\u0002\u0ce6\u0ce4\u0003",
+ "\u0002\u0002\u0002\u0ce7\u0ceb\u0005\u00dan\u0002\u0ce8\u0cea\u0005",
+ "\u00e0q\u0002\u0ce9\u0ce8\u0003\u0002\u0002\u0002\u0cea\u0ced\u0003",
+ "\u0002\u0002\u0002\u0ceb\u0ce9\u0003\u0002\u0002\u0002\u0ceb\u0cec\u0003",
+ "\u0002\u0002\u0002\u0cec\u0cf9\u0003\u0002\u0002\u0002\u0ced\u0ceb\u0003",
+ "\u0002\u0002\u0002\u0cee\u0cef\u0007\u03fe\u0002\u0002\u0cef\u0cf3\u0005",
+ "\u00dan\u0002\u0cf0\u0cf2\u0005\u00e0q\u0002\u0cf1\u0cf0\u0003\u0002",
+ "\u0002\u0002\u0cf2\u0cf5\u0003\u0002\u0002\u0002\u0cf3\u0cf1\u0003\u0002",
+ "\u0002\u0002\u0cf3\u0cf4\u0003\u0002\u0002\u0002\u0cf4\u0cf6\u0003\u0002",
+ "\u0002\u0002\u0cf5\u0cf3\u0003\u0002\u0002\u0002\u0cf6\u0cf7\u0007\u03ff",
+ "\u0002\u0002\u0cf7\u0cf9\u0003\u0002\u0002\u0002\u0cf8\u0ce7\u0003\u0002",
+ "\u0002\u0002\u0cf8\u0cee\u0003\u0002\u0002\u0002\u0cf9\u00d9\u0003\u0002",
+ "\u0002\u0002\u0cfa\u0d00\u0005\u01f6\u00fc\u0002\u0cfb\u0cfc\u0007u",
+ "\u0002\u0002\u0cfc\u0cfd\u0007\u03fe\u0002\u0002\u0cfd\u0cfe\u0005\u022e",
+ "\u0118\u0002\u0cfe\u0cff\u0007\u03ff\u0002\u0002\u0cff\u0d01\u0003\u0002",
+ "\u0002\u0002\u0d00\u0cfb\u0003\u0002\u0002\u0002\u0d00\u0d01\u0003\u0002",
+ "\u0002\u0002\u0d01\u0d06\u0003\u0002\u0002\u0002\u0d02\u0d04\u0007\r",
+ "\u0002\u0002\u0d03\u0d02\u0003\u0002\u0002\u0002\u0d03\u0d04\u0003\u0002",
+ "\u0002\u0002\u0d04\u0d05\u0003\u0002\u0002\u0002\u0d05\u0d07\u0005\u020e",
+ "\u0108\u0002\u0d06\u0d03\u0003\u0002\u0002\u0002\u0d06\u0d07\u0003\u0002",
+ "\u0002\u0002\u0d07\u0d10\u0003\u0002\u0002\u0002\u0d08\u0d0d\u0005\u00dc",
+ "o\u0002\u0d09\u0d0a\u0007\u0400\u0002\u0002\u0d0a\u0d0c\u0005\u00dc",
+ "o\u0002\u0d0b\u0d09\u0003\u0002\u0002\u0002\u0d0c\u0d0f\u0003\u0002",
+ "\u0002\u0002\u0d0d\u0d0b\u0003\u0002\u0002\u0002\u0d0d\u0d0e\u0003\u0002",
+ "\u0002\u0002\u0d0e\u0d11\u0003\u0002\u0002\u0002\u0d0f\u0d0d\u0003\u0002",
+ "\u0002\u0002\u0d10\u0d08\u0003\u0002\u0002\u0002\u0d10\u0d11\u0003\u0002",
+ "\u0002\u0002\u0d11\u0d23\u0003\u0002\u0002\u0002\u0d12\u0d18\u0005\u00b6",
+ "\\\u0002\u0d13\u0d14\u0007\u03fe\u0002\u0002\u0d14\u0d15\u0005\u00b6",
+ "\\\u0002\u0d15\u0d16\u0007\u03ff\u0002\u0002\u0d16\u0d18\u0003\u0002",
+ "\u0002\u0002\u0d17\u0d12\u0003\u0002\u0002\u0002\u0d17\u0d13\u0003\u0002",
+ "\u0002\u0002\u0d18\u0d1a\u0003\u0002\u0002\u0002\u0d19\u0d1b\u0007\r",
+ "\u0002\u0002\u0d1a\u0d19\u0003\u0002\u0002\u0002\u0d1a\u0d1b\u0003\u0002",
+ "\u0002\u0002\u0d1b\u0d1c\u0003\u0002\u0002\u0002\u0d1c\u0d1d\u0005\u020e",
+ "\u0108\u0002\u0d1d\u0d23\u0003\u0002\u0002\u0002\u0d1e\u0d1f\u0007\u03fe",
+ "\u0002\u0002\u0d1f\u0d20\u0005\u00d6l\u0002\u0d20\u0d21\u0007\u03ff",
+ "\u0002\u0002\u0d21\u0d23\u0003\u0002\u0002\u0002\u0d22\u0cfa\u0003\u0002",
+ "\u0002\u0002\u0d22\u0d17\u0003\u0002\u0002\u0002\u0d22\u0d1e\u0003\u0002",
+ "\u0002\u0002\u0d23\u00db\u0003\u0002\u0002\u0002\u0d24\u0d25\t-\u0002",
+ "\u0002\u0d25\u0d28\t\u0014\u0002\u0002\u0d26\u0d27\u0007<\u0002\u0002",
+ "\u0d27\u0d29\u0005\u00dep\u0002\u0d28\u0d26\u0003\u0002\u0002\u0002",
+ "\u0d28\u0d29\u0003\u0002\u0002\u0002\u0d29\u0d2a\u0003\u0002\u0002\u0002",
+ "\u0d2a\u0d2b\u0007\u03fe\u0002\u0002\u0d2b\u0d2c\u0005\u022e\u0118\u0002",
+ "\u0d2c\u0d2d\u0007\u03ff\u0002\u0002\u0d2d\u00dd\u0003\u0002\u0002\u0002",
+ "\u0d2e\u0d34\u0007S\u0002\u0002\u0d2f\u0d30\u0007q\u0002\u0002\u0d30",
+ "\u0d34\u0007\u0012\u0002\u0002\u0d31\u0d32\u0007D\u0002\u0002\u0d32",
+ "\u0d34\u0007\u0012\u0002\u0002\u0d33\u0d2e\u0003\u0002\u0002\u0002\u0d33",
+ "\u0d2f\u0003\u0002\u0002\u0002\u0d33\u0d31\u0003\u0002\u0002\u0002\u0d34",
+ "\u00df\u0003\u0002\u0002\u0002\u0d35\u0d37\t.\u0002\u0002\u0d36\u0d35",
+ "\u0003\u0002\u0002\u0002\u0d36\u0d37\u0003\u0002\u0002\u0002\u0d37\u0d38",
+ "\u0003\u0002\u0002\u0002\u0d38\u0d39\u0007S\u0002\u0002\u0d39\u0d41",
+ "\u0005\u00dan\u0002\u0d3a\u0d3b\u0007l\u0002\u0002\u0d3b\u0d42\u0005",
+ "\u025c\u012f\u0002\u0d3c\u0d3d\u0007\u00ab\u0002\u0002\u0d3d\u0d3e\u0007",
+ "\u03fe\u0002\u0002\u0d3e\u0d3f\u0005\u022e\u0118\u0002\u0d3f\u0d40\u0007",
+ "\u03ff\u0002\u0002\u0d40\u0d42\u0003\u0002\u0002\u0002\u0d41\u0d3a\u0003",
+ "\u0002\u0002\u0002\u0d41\u0d3c\u0003\u0002\u0002\u0002\u0d41\u0d42\u0003",
+ "\u0002\u0002\u0002\u0d42\u0d62\u0003\u0002\u0002\u0002\u0d43\u0d44\u0007",
+ "\u009b\u0002\u0002\u0d44\u0d47\u0005\u00dan\u0002\u0d45\u0d46\u0007",
+ "l\u0002\u0002\u0d46\u0d48\u0005\u025c\u012f\u0002\u0d47\u0d45\u0003",
+ "\u0002\u0002\u0002\u0d47\u0d48\u0003\u0002\u0002\u0002\u0d48\u0d62\u0003",
+ "\u0002\u0002\u0002\u0d49\u0d4b\t/\u0002\u0002\u0d4a\u0d4c\u0007s\u0002",
+ "\u0002\u0d4b\u0d4a\u0003\u0002\u0002\u0002\u0d4b\u0d4c\u0003\u0002\u0002",
+ "\u0002\u0d4c\u0d4d\u0003\u0002\u0002\u0002\u0d4d\u0d4e\u0007S\u0002",
+ "\u0002\u0d4e\u0d56\u0005\u00dan\u0002\u0d4f\u0d50\u0007l\u0002\u0002",
+ "\u0d50\u0d57\u0005\u025c\u012f\u0002\u0d51\u0d52\u0007\u00ab\u0002\u0002",
+ "\u0d52\u0d53\u0007\u03fe\u0002\u0002\u0d53\u0d54\u0005\u022e\u0118\u0002",
+ "\u0d54\u0d55\u0007\u03ff\u0002\u0002\u0d55\u0d57\u0003\u0002\u0002\u0002",
+ "\u0d56\u0d4f\u0003\u0002\u0002\u0002\u0d56\u0d51\u0003\u0002\u0002\u0002",
+ "\u0d57\u0d62\u0003\u0002\u0002\u0002\u0d58\u0d5d\u0007g\u0002\u0002",
+ "\u0d59\u0d5b\t/\u0002\u0002\u0d5a\u0d5c\u0007s\u0002\u0002\u0d5b\u0d5a",
+ "\u0003\u0002\u0002\u0002\u0d5b\u0d5c\u0003\u0002\u0002\u0002\u0d5c\u0d5e",
+ "\u0003\u0002\u0002\u0002\u0d5d\u0d59\u0003\u0002\u0002\u0002\u0d5d\u0d5e",
+ "\u0003\u0002\u0002\u0002\u0d5e\u0d5f\u0003\u0002\u0002\u0002\u0d5f\u0d60",
+ "\u0007S\u0002\u0002\u0d60\u0d62\u0005\u00dan\u0002\u0d61\u0d36\u0003",
+ "\u0002\u0002\u0002\u0d61\u0d43\u0003\u0002\u0002\u0002\u0d61\u0d49\u0003",
+ "\u0002\u0002\u0002\u0d61\u0d58\u0003\u0002\u0002\u0002\u0d62\u00e1\u0003",
+ "\u0002\u0002\u0002\u0d63\u0d64\u0007\u03fe\u0002\u0002\u0d64\u0d65\u0005",
+ "\u00e6t\u0002\u0d65\u0d66\u0007\u03ff\u0002\u0002\u0d66\u0d6c\u0003",
+ "\u0002\u0002\u0002\u0d67\u0d68\u0007\u03fe\u0002\u0002\u0d68\u0d69\u0005",
+ "\u00e2r\u0002\u0d69\u0d6a\u0007\u03ff\u0002\u0002\u0d6a\u0d6c\u0003",
+ "\u0002\u0002\u0002\u0d6b\u0d63\u0003\u0002\u0002\u0002\u0d6b\u0d67\u0003",
+ "\u0002\u0002\u0002\u0d6c\u00e3\u0003\u0002\u0002\u0002\u0d6d\u0d6e\u0007",
+ "\u03fe\u0002\u0002\u0d6e\u0d6f\u0005\u00e8u\u0002\u0d6f\u0d70\u0007",
+ "\u03ff\u0002\u0002\u0d70\u0d76\u0003\u0002\u0002\u0002\u0d71\u0d72\u0007",
+ "\u03fe\u0002\u0002\u0d72\u0d73\u0005\u00e4s\u0002\u0d73\u0d74\u0007",
+ "\u03ff\u0002\u0002\u0d74\u0d76\u0003\u0002\u0002\u0002\u0d75\u0d6d\u0003",
+ "\u0002\u0002\u0002\u0d75\u0d71\u0003\u0002\u0002\u0002\u0d76\u00e5\u0003",
+ "\u0002\u0002\u0002\u0d77\u0d7b\u0007\u008b\u0002\u0002\u0d78\u0d7a\u0005",
+ "\u00eex\u0002\u0d79\u0d78\u0003\u0002\u0002\u0002\u0d7a\u0d7d\u0003",
+ "\u0002\u0002\u0002\u0d7b\u0d79\u0003\u0002\u0002\u0002\u0d7b\u0d7c\u0003",
+ "\u0002\u0002\u0002\u0d7c\u0d7e\u0003\u0002\u0002\u0002\u0d7d\u0d7b\u0003",
+ "\u0002\u0002\u0002\u0d7e\u0d80\u0005\u00f0y\u0002\u0d7f\u0d81\u0005",
+ "\u00f4{\u0002\u0d80\u0d7f\u0003\u0002\u0002\u0002\u0d80\u0d81\u0003",
+ "\u0002\u0002\u0002\u0d81\u0d83\u0003\u0002\u0002\u0002\u0d82\u0d84\u0005",
+ "\u00fa~\u0002\u0d83\u0d82\u0003\u0002\u0002\u0002\u0d83\u0d84\u0003",
+ "\u0002\u0002\u0002\u0d84\u0d86\u0003\u0002\u0002\u0002\u0d85\u0d87\u0005",
+ "\u00d2j\u0002\u0d86\u0d85\u0003\u0002\u0002\u0002\u0d86\u0d87\u0003",
+ "\u0002\u0002\u0002\u0d87\u0d89\u0003\u0002\u0002\u0002\u0d88\u0d8a\u0005",
+ "\u00fe\u0080\u0002\u0d89\u0d88\u0003\u0002\u0002\u0002\u0d89\u0d8a\u0003",
+ "\u0002\u0002\u0002\u0d8a\u0da0\u0003\u0002\u0002\u0002\u0d8b\u0d8f\u0007",
+ "\u008b\u0002\u0002\u0d8c\u0d8e\u0005\u00eex\u0002\u0d8d\u0d8c\u0003",
+ "\u0002\u0002\u0002\u0d8e\u0d91\u0003\u0002\u0002\u0002\u0d8f\u0d8d\u0003",
+ "\u0002\u0002\u0002\u0d8f\u0d90\u0003\u0002\u0002\u0002\u0d90\u0d92\u0003",
+ "\u0002\u0002\u0002\u0d91\u0d8f\u0003\u0002\u0002\u0002\u0d92\u0d94\u0005",
+ "\u00f0y\u0002\u0d93\u0d95\u0005\u00fa~\u0002\u0d94\u0d93\u0003\u0002",
+ "\u0002\u0002\u0d94\u0d95\u0003\u0002\u0002\u0002\u0d95\u0d97\u0003\u0002",
+ "\u0002\u0002\u0d96\u0d98\u0005\u00d2j\u0002\u0d97\u0d96\u0003\u0002",
+ "\u0002\u0002\u0d97\u0d98\u0003\u0002\u0002\u0002\u0d98\u0d9a\u0003\u0002",
+ "\u0002\u0002\u0d99\u0d9b\u0005\u00fe\u0080\u0002\u0d9a\u0d99\u0003\u0002",
+ "\u0002\u0002\u0d9a\u0d9b\u0003\u0002\u0002\u0002\u0d9b\u0d9d\u0003\u0002",
+ "\u0002\u0002\u0d9c\u0d9e\u0005\u00f4{\u0002\u0d9d\u0d9c\u0003\u0002",
+ "\u0002\u0002\u0d9d\u0d9e\u0003\u0002\u0002\u0002\u0d9e\u0da0\u0003\u0002",
+ "\u0002\u0002\u0d9f\u0d77\u0003\u0002\u0002\u0002\u0d9f\u0d8b\u0003\u0002",
+ "\u0002\u0002\u0da0\u00e7\u0003\u0002\u0002\u0002\u0da1\u0da5\u0007\u008b",
+ "\u0002\u0002\u0da2\u0da4\u0005\u00eex\u0002\u0da3\u0da2\u0003\u0002",
+ "\u0002\u0002\u0da4\u0da7\u0003\u0002\u0002\u0002\u0da5\u0da3\u0003\u0002",
+ "\u0002\u0002\u0da5\u0da6\u0003\u0002\u0002\u0002\u0da6\u0da8\u0003\u0002",
+ "\u0002\u0002\u0da7\u0da5\u0003\u0002\u0002\u0002\u0da8\u0daa\u0005\u00f0",
+ "y\u0002\u0da9\u0dab\u0005\u00fa~\u0002\u0daa\u0da9\u0003\u0002\u0002",
+ "\u0002\u0daa\u0dab\u0003\u0002\u0002\u0002\u0dab\u0dad\u0003\u0002\u0002",
+ "\u0002\u0dac\u0dae\u0005\u00d2j\u0002\u0dad\u0dac\u0003\u0002\u0002",
+ "\u0002\u0dad\u0dae\u0003\u0002\u0002\u0002\u0dae\u0db0\u0003\u0002\u0002",
+ "\u0002\u0daf\u0db1\u0005\u00fe\u0080\u0002\u0db0\u0daf\u0003\u0002\u0002",
+ "\u0002\u0db0\u0db1\u0003\u0002\u0002\u0002\u0db1\u00e9\u0003\u0002\u0002",
+ "\u0002\u0db2\u0db4\u0007\u00a4\u0002\u0002\u0db3\u0db5\t(\u0002\u0002",
+ "\u0db4\u0db3\u0003\u0002\u0002\u0002\u0db4\u0db5\u0003\u0002\u0002\u0002",
+ "\u0db5\u0db6\u0003\u0002\u0002\u0002\u0db6\u0db7\u0005\u00e4s\u0002",
+ "\u0db7\u00eb\u0003\u0002\u0002\u0002\u0db8\u0dba\u0007\u00a4\u0002\u0002",
+ "\u0db9\u0dbb\t(\u0002\u0002\u0dba\u0db9\u0003\u0002\u0002\u0002\u0dba",
+ "\u0dbb\u0003\u0002\u0002\u0002\u0dbb\u0dbe\u0003\u0002\u0002\u0002\u0dbc",
+ "\u0dbf\u0005\u00e8u\u0002\u0dbd\u0dbf\u0005\u00e4s\u0002\u0dbe\u0dbc",
+ "\u0003\u0002\u0002\u0002\u0dbe\u0dbd\u0003\u0002\u0002\u0002\u0dbf\u00ed",
+ "\u0003\u0002\u0002\u0002\u0dc0\u0dc9\t0\u0002\u0002\u0dc1\u0dc9\u0007",
+ "F\u0002\u0002\u0dc2\u0dc9\u0007\u009b\u0002\u0002\u0dc3\u0dc9\u0007",
+ "\u0097\u0002\u0002\u0dc4\u0dc9\u0007\u0095\u0002\u0002\u0dc5\u0dc9\u0007",
+ "\u0218\u0002\u0002\u0dc6\u0dc9\t1\u0002\u0002\u0dc7\u0dc9\u0007\u0096",
+ "\u0002\u0002\u0dc8\u0dc0\u0003\u0002\u0002\u0002\u0dc8\u0dc1\u0003\u0002",
+ "\u0002\u0002\u0dc8\u0dc2\u0003\u0002\u0002\u0002\u0dc8\u0dc3\u0003\u0002",
+ "\u0002\u0002\u0dc8\u0dc4\u0003\u0002\u0002\u0002\u0dc8\u0dc5\u0003\u0002",
+ "\u0002\u0002\u0dc8\u0dc6\u0003\u0002\u0002\u0002\u0dc8\u0dc7\u0003\u0002",
+ "\u0002\u0002\u0dc9\u00ef\u0003\u0002\u0002\u0002\u0dca\u0dcd\u0007\u03ed",
+ "\u0002\u0002\u0dcb\u0dcd\u0005\u00f2z\u0002\u0dcc\u0dca\u0003\u0002",
+ "\u0002\u0002\u0dcc\u0dcb\u0003\u0002\u0002\u0002\u0dcd\u0dd2\u0003\u0002",
+ "\u0002\u0002\u0dce\u0dcf\u0007\u0400\u0002\u0002\u0dcf\u0dd1\u0005\u00f2",
+ "z\u0002\u0dd0\u0dce\u0003\u0002\u0002\u0002\u0dd1\u0dd4\u0003\u0002",
+ "\u0002\u0002\u0dd2\u0dd0\u0003\u0002\u0002\u0002\u0dd2\u0dd3\u0003\u0002",
+ "\u0002\u0002\u0dd3\u00f1\u0003\u0002\u0002\u0002\u0dd4\u0dd2\u0003\u0002",
+ "\u0002\u0002\u0dd5\u0dd6\u0005\u01f4\u00fb\u0002\u0dd6\u0dd7\u0007\u03fd",
+ "\u0002\u0002\u0dd7\u0dd8\u0007\u03ed\u0002\u0002\u0dd8\u0df3\u0003\u0002",
+ "\u0002\u0002\u0dd9\u0dde\u0005\u01f8\u00fd\u0002\u0dda\u0ddc\u0007\r",
+ "\u0002\u0002\u0ddb\u0dda\u0003\u0002\u0002\u0002\u0ddb\u0ddc\u0003\u0002",
+ "\u0002\u0002\u0ddc\u0ddd\u0003\u0002\u0002\u0002\u0ddd\u0ddf\u0005\u020e",
+ "\u0108\u0002\u0dde\u0ddb\u0003\u0002\u0002\u0002\u0dde\u0ddf\u0003\u0002",
+ "\u0002\u0002\u0ddf\u0df3\u0003\u0002\u0002\u0002\u0de0\u0de5\u0005\u0248",
+ "\u0125\u0002\u0de1\u0de3\u0007\r\u0002\u0002\u0de2\u0de1\u0003\u0002",
+ "\u0002\u0002\u0de2\u0de3\u0003\u0002\u0002\u0002\u0de3\u0de4\u0003\u0002",
+ "\u0002\u0002\u0de4\u0de6\u0005\u020e\u0108\u0002\u0de5\u0de2\u0003\u0002",
+ "\u0002\u0002\u0de5\u0de6\u0003\u0002\u0002\u0002\u0de6\u0df3\u0003\u0002",
+ "\u0002\u0002\u0de7\u0de8\u0007\u0418\u0002\u0002\u0de8\u0dea\u0007\u03e4",
+ "\u0002\u0002\u0de9\u0de7\u0003\u0002\u0002\u0002\u0de9\u0dea\u0003\u0002",
+ "\u0002\u0002\u0dea\u0deb\u0003\u0002\u0002\u0002\u0deb\u0df0\u0005\u025c",
+ "\u012f\u0002\u0dec\u0dee\u0007\r\u0002\u0002\u0ded\u0dec\u0003\u0002",
+ "\u0002\u0002\u0ded\u0dee\u0003\u0002\u0002\u0002\u0dee\u0def\u0003\u0002",
+ "\u0002\u0002\u0def\u0df1\u0005\u020e\u0108\u0002\u0df0\u0ded\u0003\u0002",
+ "\u0002\u0002\u0df0\u0df1\u0003\u0002\u0002\u0002\u0df1\u0df3\u0003\u0002",
+ "\u0002\u0002\u0df2\u0dd5\u0003\u0002\u0002\u0002\u0df2\u0dd9\u0003\u0002",
+ "\u0002\u0002\u0df2\u0de0\u0003\u0002\u0002\u0002\u0df2\u0de9\u0003\u0002",
+ "\u0002\u0002\u0df3\u00f3\u0003\u0002\u0002\u0002\u0df4\u0df5\u0007P",
+ "\u0002\u0002\u0df5\u0dfa\u0005\u00be`\u0002\u0df6\u0df7\u0007\u0400",
+ "\u0002\u0002\u0df7\u0df9\u0005\u00be`\u0002\u0df8\u0df6\u0003\u0002",
+ "\u0002\u0002\u0df9\u0dfc\u0003\u0002\u0002\u0002\u0dfa\u0df8\u0003\u0002",
+ "\u0002\u0002\u0dfa\u0dfb\u0003\u0002\u0002\u0002\u0dfb\u0e19\u0003\u0002",
+ "\u0002\u0002\u0dfc\u0dfa\u0003\u0002\u0002\u0002\u0dfd\u0dfe\u0007P",
+ "\u0002\u0002\u0dfe\u0dff\u0007\u0151\u0002\u0002\u0dff\u0e19\u0007\u040d",
+ "\u0002\u0002\u0e00\u0e01\u0007P\u0002\u0002\u0e01\u0e02\u0007t\u0002",
+ "\u0002\u0e02\u0e06\u0007\u040d\u0002\u0002\u0e03\u0e04\u0007\u0018\u0002",
+ "\u0002\u0e04\u0e05\u0007\u008c\u0002\u0002\u0e05\u0e07\u0005\u0200\u0101",
+ "\u0002\u0e06\u0e03\u0003\u0002\u0002\u0002\u0e06\u0e07\u0003\u0002\u0002",
+ "\u0002\u0e07\u0e0e\u0003\u0002\u0002\u0002\u0e08\u0e0a\t%\u0002\u0002",
+ "\u0e09\u0e0b\u0005\u00f6|\u0002\u0e0a\u0e09\u0003\u0002\u0002\u0002",
+ "\u0e0b\u0e0c\u0003\u0002\u0002\u0002\u0e0c\u0e0a\u0003\u0002\u0002\u0002",
+ "\u0e0c\u0e0d\u0003\u0002\u0002\u0002\u0e0d\u0e0f\u0003\u0002\u0002\u0002",
+ "\u0e0e\u0e08\u0003\u0002\u0002\u0002\u0e0e\u0e0f\u0003\u0002\u0002\u0002",
+ "\u0e0f\u0e16\u0003\u0002\u0002\u0002\u0e10\u0e12\u0007]\u0002\u0002",
+ "\u0e11\u0e13\u0005\u00f8}\u0002\u0e12\u0e11\u0003\u0002\u0002\u0002",
+ "\u0e13\u0e14\u0003\u0002\u0002\u0002\u0e14\u0e12\u0003\u0002\u0002\u0002",
+ "\u0e14\u0e15\u0003\u0002\u0002\u0002\u0e15\u0e17\u0003\u0002\u0002\u0002",
+ "\u0e16\u0e10\u0003\u0002\u0002\u0002\u0e16\u0e17\u0003\u0002\u0002\u0002",
+ "\u0e17\u0e19\u0003\u0002\u0002\u0002\u0e18\u0df4\u0003\u0002\u0002\u0002",
+ "\u0e18\u0dfd\u0003\u0002\u0002\u0002\u0e18\u0e00\u0003\u0002\u0002\u0002",
+ "\u0e19\u00f5\u0003\u0002\u0002\u0002\u0e1a\u0e1b\u0007\u009d\u0002\u0002",
+ "\u0e1b\u0e1c\u0007\u0012\u0002\u0002\u0e1c\u0e27\u0007\u040d\u0002\u0002",
+ "\u0e1d\u0e1f\u0007o\u0002\u0002\u0e1e\u0e1d\u0003\u0002\u0002\u0002",
+ "\u0e1e\u0e1f\u0003\u0002\u0002\u0002\u0e1f\u0e20\u0003\u0002\u0002\u0002",
+ "\u0e20\u0e21\u00075\u0002\u0002\u0e21\u0e22\u0007\u0012\u0002\u0002",
+ "\u0e22\u0e27\u0007\u040d\u0002\u0002\u0e23\u0e24\u00076\u0002\u0002",
+ "\u0e24\u0e25\u0007\u0012\u0002\u0002\u0e25\u0e27\u0007\u040d\u0002\u0002",
+ "\u0e26\u0e1a\u0003\u0002\u0002\u0002\u0e26\u0e1e\u0003\u0002\u0002\u0002",
+ "\u0e26\u0e23\u0003\u0002\u0002\u0002\u0e27\u00f7\u0003\u0002\u0002\u0002",
+ "\u0e28\u0e29\u0007\u009a\u0002\u0002\u0e29\u0e2a\u0007\u0012\u0002\u0002",
+ "\u0e2a\u0e2f\u0007\u040d\u0002\u0002\u0e2b\u0e2c\u0007\u009d\u0002\u0002",
+ "\u0e2c\u0e2d\u0007\u0012\u0002\u0002\u0e2d\u0e2f\u0007\u040d\u0002\u0002",
+ "\u0e2e\u0e28\u0003\u0002\u0002\u0002\u0e2e\u0e2b\u0003\u0002\u0002\u0002",
+ "\u0e2f\u00f9\u0003\u0002\u0002\u0002\u0e30\u0e31\u0007?\u0002\u0002",
+ "\u0e31\u0e34\u0005\u00d6l\u0002\u0e32\u0e33\u0007\u00ae\u0002\u0002",
+ "\u0e33\u0e35\u0005\u025c\u012f\u0002\u0e34\u0e32\u0003\u0002\u0002\u0002",
+ "\u0e34\u0e35\u0003\u0002\u0002\u0002\u0e35\u0e44\u0003\u0002\u0002\u0002",
+ "\u0e36\u0e37\u0007D\u0002\u0002\u0e37\u0e38\u0007\u0012\u0002\u0002",
+ "\u0e38\u0e3d\u0005\u00fc\u007f\u0002\u0e39\u0e3a\u0007\u0400\u0002\u0002",
+ "\u0e3a\u0e3c\u0005\u00fc\u007f\u0002\u0e3b\u0e39\u0003\u0002\u0002\u0002",
+ "\u0e3c\u0e3f\u0003\u0002\u0002\u0002\u0e3d\u0e3b\u0003\u0002\u0002\u0002",
+ "\u0e3d\u0e3e\u0003\u0002\u0002\u0002\u0e3e\u0e42\u0003\u0002\u0002\u0002",
+ "\u0e3f\u0e3d\u0003\u0002\u0002\u0002\u0e40\u0e41\u0007\u00b0\u0002\u0002",
+ "\u0e41\u0e43\u0007\u01ff\u0002\u0002\u0e42\u0e40\u0003\u0002\u0002\u0002",
+ "\u0e42\u0e43\u0003\u0002\u0002\u0002\u0e43\u0e45\u0003\u0002\u0002\u0002",
+ "\u0e44\u0e36\u0003\u0002\u0002\u0002\u0e44\u0e45\u0003\u0002\u0002\u0002",
+ "\u0e45\u0e48\u0003\u0002\u0002\u0002\u0e46\u0e47\u0007E\u0002\u0002",
+ "\u0e47\u0e49\u0005\u025c\u012f\u0002\u0e48\u0e46\u0003\u0002\u0002\u0002",
+ "\u0e48\u0e49\u0003\u0002\u0002\u0002\u0e49\u00fb\u0003\u0002\u0002\u0002",
+ "\u0e4a\u0e4c\u0005\u025c\u012f\u0002\u0e4b\u0e4d\t,\u0002\u0002\u0e4c",
+ "\u0e4b\u0003\u0002\u0002\u0002\u0e4c\u0e4d\u0003\u0002\u0002\u0002\u0e4d",
+ "\u00fd\u0003\u0002\u0002\u0002\u0e4e\u0e59\u0007[\u0002\u0002\u0e4f",
+ "\u0e50\u0005\u0100\u0081\u0002\u0e50\u0e51\u0007\u0400\u0002\u0002\u0e51",
+ "\u0e53\u0003\u0002\u0002\u0002\u0e52\u0e4f\u0003\u0002\u0002\u0002\u0e52",
+ "\u0e53\u0003\u0002\u0002\u0002\u0e53\u0e54\u0003\u0002\u0002\u0002\u0e54",
+ "\u0e5a\u0005\u0100\u0081\u0002\u0e55\u0e56\u0005\u0100\u0081\u0002\u0e56",
+ "\u0e57\u0007\u01c6\u0002\u0002\u0e57\u0e58\u0005\u0100\u0081\u0002\u0e58",
+ "\u0e5a\u0003\u0002\u0002\u0002\u0e59\u0e52\u0003\u0002\u0002\u0002\u0e59",
+ "\u0e55\u0003\u0002\u0002\u0002\u0e5a\u00ff\u0003\u0002\u0002\u0002\u0e5b",
+ "\u0e5e\u0005\u0214\u010b\u0002\u0e5c\u0e5e\u0005\u01fe\u0100\u0002\u0e5d",
+ "\u0e5b\u0003\u0002\u0002\u0002\u0e5d\u0e5c\u0003\u0002\u0002\u0002\u0e5e",
+ "\u0101\u0003\u0002\u0002\u0002\u0e5f\u0e60\u0007\u021c\u0002\u0002\u0e60",
+ "\u0e69\u0007\u0233\u0002\u0002\u0e61\u0e66\u0005\u0118\u008d\u0002\u0e62",
+ "\u0e63\u0007\u0400\u0002\u0002\u0e63\u0e65\u0005\u0118\u008d\u0002\u0e64",
+ "\u0e62\u0003\u0002\u0002\u0002\u0e65\u0e68\u0003\u0002\u0002\u0002\u0e66",
+ "\u0e64\u0003\u0002\u0002\u0002\u0e66\u0e67\u0003\u0002\u0002\u0002\u0e67",
+ "\u0e6a\u0003\u0002\u0002\u0002\u0e68\u0e66\u0003\u0002\u0002\u0002\u0e69",
+ "\u0e61\u0003\u0002\u0002\u0002\u0e69\u0e6a\u0003\u0002\u0002\u0002\u0e6a",
+ "\u0103\u0003\u0002\u0002\u0002\u0e6b\u0e6d\u0007\u011c\u0002\u0002\u0e6c",
+ "\u0e6e\u0007\u024a\u0002\u0002\u0e6d\u0e6c\u0003\u0002\u0002\u0002\u0e6d",
+ "\u0e6e\u0003\u0002\u0002\u0002\u0e6e\u0105\u0003\u0002\u0002\u0002\u0e6f",
+ "\u0e71\u0007\u0134\u0002\u0002\u0e70\u0e72\u0007\u024a\u0002\u0002\u0e71",
+ "\u0e70\u0003\u0002\u0002\u0002\u0e71\u0e72\u0003\u0002\u0002\u0002\u0e72",
+ "\u0e78\u0003\u0002\u0002\u0002\u0e73\u0e75\u0007\f\u0002\u0002\u0e74",
+ "\u0e76\u0007\u01c2\u0002\u0002\u0e75\u0e74\u0003\u0002\u0002\u0002\u0e75",
+ "\u0e76\u0003\u0002\u0002\u0002\u0e76\u0e77\u0003\u0002\u0002\u0002\u0e77",
+ "\u0e79\u0007\u0125\u0002\u0002\u0e78\u0e73\u0003\u0002\u0002\u0002\u0e78",
+ "\u0e79\u0003\u0002\u0002\u0002\u0e79\u0e7e\u0003\u0002\u0002\u0002\u0e7a",
+ "\u0e7c\u0007\u01c2\u0002\u0002\u0e7b\u0e7a\u0003\u0002\u0002\u0002\u0e7b",
+ "\u0e7c\u0003\u0002\u0002\u0002\u0e7c\u0e7d\u0003\u0002\u0002\u0002\u0e7d",
+ "\u0e7f\u0007~\u0002\u0002\u0e7e\u0e7b\u0003\u0002\u0002\u0002\u0e7e",
+ "\u0e7f\u0003\u0002\u0002\u0002\u0e7f\u0107\u0003\u0002\u0002\u0002\u0e80",
+ "\u0e82\u0007\u01fe\u0002\u0002\u0e81\u0e83\u0007\u024a\u0002\u0002\u0e82",
+ "\u0e81\u0003\u0002\u0002\u0002\u0e82\u0e83\u0003\u0002\u0002\u0002\u0e83",
+ "\u0e89\u0003\u0002\u0002\u0002\u0e84\u0e86\u0007\f\u0002\u0002\u0e85",
+ "\u0e87\u0007\u01c2\u0002\u0002\u0e86\u0e85\u0003\u0002\u0002\u0002\u0e86",
+ "\u0e87\u0003\u0002\u0002\u0002\u0e87\u0e88\u0003\u0002\u0002\u0002\u0e88",
+ "\u0e8a\u0007\u0125\u0002\u0002\u0e89\u0e84\u0003\u0002\u0002\u0002\u0e89",
+ "\u0e8a\u0003\u0002\u0002\u0002\u0e8a\u0e8f\u0003\u0002\u0002\u0002\u0e8b",
+ "\u0e8d\u0007\u01c2\u0002\u0002\u0e8c\u0e8b\u0003\u0002\u0002\u0002\u0e8c",
+ "\u0e8d\u0003\u0002\u0002\u0002\u0e8d\u0e8e\u0003\u0002\u0002\u0002\u0e8e",
+ "\u0e90\u0007~\u0002\u0002\u0e8f\u0e8c\u0003\u0002\u0002\u0002\u0e8f",
+ "\u0e90\u0003\u0002\u0002\u0002\u0e90\u0109\u0003\u0002\u0002\u0002\u0e91",
+ "\u0e92\u0007\u0204\u0002\u0002\u0e92\u0e93\u0005\u020e\u0108\u0002\u0e93",
+ "\u010b\u0003\u0002\u0002\u0002\u0e94\u0e96\u0007\u01fe\u0002\u0002\u0e95",
+ "\u0e97\u0007\u024a\u0002\u0002\u0e96\u0e95\u0003\u0002\u0002\u0002\u0e96",
+ "\u0e97\u0003\u0002\u0002\u0002\u0e97\u0e98\u0003\u0002\u0002\u0002\u0e98",
+ "\u0e9a\u0007\u009f\u0002\u0002\u0e99\u0e9b\u0007\u0204\u0002\u0002\u0e9a",
+ "\u0e99\u0003\u0002\u0002\u0002\u0e9a\u0e9b\u0003\u0002\u0002\u0002\u0e9b",
+ "\u0e9c\u0003\u0002\u0002\u0002\u0e9c\u0e9d\u0005\u020e\u0108\u0002\u0e9d",
+ "\u010d\u0003\u0002\u0002\u0002\u0e9e\u0e9f\u0007~\u0002\u0002\u0e9f",
+ "\u0ea0\u0007\u0204\u0002\u0002\u0ea0\u0ea1\u0005\u020e\u0108\u0002\u0ea1",
+ "\u010f\u0003\u0002\u0002\u0002\u0ea2\u0ea3\u0007_\u0002\u0002\u0ea3",
+ "\u0ea4\u0007\u025c\u0002\u0002\u0ea4\u0ea9\u0005\u011a\u008e\u0002\u0ea5",
+ "\u0ea6\u0007\u0400\u0002\u0002\u0ea6\u0ea8\u0005\u011a\u008e\u0002\u0ea7",
+ "\u0ea5\u0003\u0002\u0002\u0002\u0ea8\u0eab\u0003\u0002\u0002\u0002\u0ea9",
+ "\u0ea7\u0003\u0002\u0002\u0002\u0ea9\u0eaa\u0003\u0002\u0002\u0002\u0eaa",
+ "\u0111\u0003\u0002\u0002\u0002\u0eab\u0ea9\u0003\u0002\u0002\u0002\u0eac",
+ "\u0ead\u0007\u00a6\u0002\u0002\u0ead\u0eae\u0007\u025c\u0002\u0002\u0eae",
+ "\u0113\u0003\u0002\u0002\u0002\u0eaf\u0eb0\u0007\u008c\u0002\u0002\u0eb0",
+ "\u0eb1\u0007\u0118\u0002\u0002\u0eb1\u0eb2\u0007\u03f5\u0002\u0002\u0eb2",
+ "\u0eb3\t\u0018\u0002\u0002\u0eb3\u0115\u0003\u0002\u0002\u0002\u0eb4",
+ "\u0eb6\u0007\u008c\u0002\u0002\u0eb5\u0eb7\t2\u0002\u0002\u0eb6\u0eb5",
+ "\u0003\u0002\u0002\u0002\u0eb6\u0eb7\u0003\u0002\u0002\u0002\u0eb7\u0eb8",
+ "\u0003\u0002\u0002\u0002\u0eb8\u0eb9\u0007\u0233\u0002\u0002\u0eb9\u0ebe",
+ "\u0005\u011e\u0090\u0002\u0eba\u0ebb\u0007\u0400\u0002\u0002\u0ebb\u0ebd",
+ "\u0005\u011e\u0090\u0002\u0ebc\u0eba\u0003\u0002\u0002\u0002\u0ebd\u0ec0",
+ "\u0003\u0002\u0002\u0002\u0ebe\u0ebc\u0003\u0002\u0002\u0002\u0ebe\u0ebf",
+ "\u0003\u0002\u0002\u0002\u0ebf\u0117\u0003\u0002\u0002\u0002\u0ec0\u0ebe",
+ "\u0003\u0002\u0002\u0002\u0ec1\u0ec2\u0007\u00b0\u0002\u0002\u0ec2\u0ec3",
+ "\u0007\u013b\u0002\u0002\u0ec3\u0ec9\u0007\u020f\u0002\u0002\u0ec4\u0ec5",
+ "\u0007z\u0002\u0002\u0ec5\u0ec9\u0007\u00b1\u0002\u0002\u0ec6\u0ec7",
+ "\u0007z\u0002\u0002\u0ec7\u0ec9\u0007\u01cb\u0002\u0002\u0ec8\u0ec1",
+ "\u0003\u0002\u0002\u0002\u0ec8\u0ec4\u0003\u0002\u0002\u0002\u0ec8\u0ec6",
+ "\u0003\u0002\u0002\u0002\u0ec9\u0119\u0003\u0002\u0002\u0002\u0eca\u0ecf",
+ "\u0005\u01f6\u00fc\u0002\u0ecb\u0ecd\u0007\r\u0002\u0002\u0ecc\u0ecb",
+ "\u0003\u0002\u0002\u0002\u0ecc\u0ecd\u0003\u0002\u0002\u0002\u0ecd\u0ece",
+ "\u0003\u0002\u0002\u0002\u0ece\u0ed0\u0005\u020e\u0108\u0002\u0ecf\u0ecc",
+ "\u0003\u0002\u0002\u0002\u0ecf\u0ed0\u0003\u0002\u0002\u0002\u0ed0\u0ed1",
+ "\u0003\u0002\u0002\u0002\u0ed1\u0ed2\u0005\u011c\u008f\u0002\u0ed2\u011b",
+ "\u0003\u0002\u0002\u0002\u0ed3\u0ed5\u0007z\u0002\u0002\u0ed4\u0ed6",
+ "\u0007\u0194\u0002\u0002\u0ed5\u0ed4\u0003\u0002\u0002\u0002\u0ed5\u0ed6",
+ "\u0003\u0002\u0002\u0002\u0ed6\u0edc\u0003\u0002\u0002\u0002\u0ed7\u0ed9",
+ "\u0007a\u0002\u0002\u0ed8\u0ed7\u0003\u0002\u0002\u0002\u0ed8\u0ed9",
+ "\u0003\u0002\u0002\u0002\u0ed9\u0eda\u0003\u0002\u0002\u0002\u0eda\u0edc",
+ "\u0007\u00b1\u0002\u0002\u0edb\u0ed3\u0003\u0002\u0002\u0002\u0edb\u0ed8",
+ "\u0003\u0002\u0002\u0002\u0edc\u011d\u0003\u0002\u0002\u0002\u0edd\u0ede",
+ "\u0007\u018a\u0002\u0002\u0ede\u0edf\u0007\u0192\u0002\u0002\u0edf\u0ee5",
+ "\u0005\u0120\u0091\u0002\u0ee0\u0ee1\u0007z\u0002\u0002\u0ee1\u0ee5",
+ "\u0007\u00b1\u0002\u0002\u0ee2\u0ee3\u0007z\u0002\u0002\u0ee3\u0ee5",
+ "\u0007\u01cb\u0002\u0002\u0ee4\u0edd\u0003\u0002\u0002\u0002\u0ee4\u0ee0",
+ "\u0003\u0002\u0002\u0002\u0ee4\u0ee2\u0003\u0002\u0002\u0002\u0ee5\u011f",
+ "\u0003\u0002\u0002\u0002\u0ee6\u0ee7\u0007\u02b3\u0002\u0002\u0ee7\u0eee",
+ "\u0007z\u0002\u0002\u0ee8\u0ee9\u0007z\u0002\u0002\u0ee9\u0eee\u0007",
+ "\u02b4\u0002\u0002\u0eea\u0eeb\u0007z\u0002\u0002\u0eeb\u0eee\u0007",
+ "\u02b5\u0002\u0002\u0eec\u0eee\u0007\u02b6\u0002\u0002\u0eed\u0ee6\u0003",
+ "\u0002\u0002\u0002\u0eed\u0ee8\u0003\u0002\u0002\u0002\u0eed\u0eea\u0003",
+ "\u0002\u0002\u0002\u0eed\u0eec\u0003\u0002\u0002\u0002\u0eee\u0121\u0003",
+ "\u0002\u0002\u0002\u0eef\u0ef0\u0007\u0017\u0002\u0002\u0ef0\u0ef1\u0007",
+ "\u0197\u0002\u0002\u0ef1\u0ef2\u0007\u009f\u0002\u0002\u0ef2\u0ef7\u0005",
+ "\u0134\u009b\u0002\u0ef3\u0ef4\u0007\u0400\u0002\u0002\u0ef4\u0ef6\u0005",
+ "\u0134\u009b\u0002\u0ef5\u0ef3\u0003\u0002\u0002\u0002\u0ef6\u0ef9\u0003",
+ "\u0002\u0002\u0002\u0ef7\u0ef5\u0003\u0002\u0002\u0002\u0ef7\u0ef8\u0003",
+ "\u0002\u0002\u0002\u0ef8\u0efb\u0003\u0002\u0002\u0002\u0ef9\u0ef7\u0003",
+ "\u0002\u0002\u0002\u0efa\u0efc\u0005\u013c\u009f\u0002\u0efb\u0efa\u0003",
+ "\u0002\u0002\u0002\u0efb\u0efc\u0003\u0002\u0002\u0002\u0efc\u0123\u0003",
+ "\u0002\u0002\u0002\u0efd\u0efe\u0007\u0017\u0002\u0002\u0efe\u0eff\u0007",
+ "\u01f8\u0002\u0002\u0eff\u0f00\u0007\u016b\u0002\u0002\u0f00\u0f05\u0005",
+ "\u013e\u00a0\u0002\u0f01\u0f02\u0007\u0400\u0002\u0002\u0f02\u0f04\u0005",
+ "\u013e\u00a0\u0002\u0f03\u0f01\u0003\u0002\u0002\u0002\u0f04\u0f07\u0003",
+ "\u0002\u0002\u0002\u0f05\u0f03\u0003\u0002\u0002\u0002\u0f05\u0f06\u0003",
+ "\u0002\u0002\u0002\u0f06\u0125\u0003\u0002\u0002\u0002\u0f07\u0f05\u0003",
+ "\u0002\u0002\u0002\u0f08\u0f09\u0007x\u0002\u0002\u0f09\u0f0a\t3\u0002",
+ "\u0002\u0f0a\u0f0f\u0007\u0196\u0002\u0002\u0f0b\u0f0c\u0007\u009f\u0002",
+ "\u0002\u0f0c\u0f10\u0007\u040d\u0002\u0002\u0f0d\u0f0e\u0007\u000f\u0002",
+ "\u0002\u0f0e\u0f10\u0007\u040d\u0002\u0002\u0f0f\u0f0b\u0003\u0002\u0002",
+ "\u0002\u0f0f\u0f0d\u0003\u0002\u0002\u0002\u0f10\u0127\u0003\u0002\u0002",
+ "\u0002\u0f11\u0f12\u0007\u01f9\u0002\u0002\u0f12\u0f13\u0007\u0197\u0002",
+ "\u0002\u0f13\u0129\u0003\u0002\u0002\u0002\u0f14\u0f15\u0007\u01f9\u0002",
+ "\u0002\u0f15\u0f17\u0007\u020d\u0002\u0002\u0f16\u0f18\u0007\b\u0002",
+ "\u0002\u0f17\u0f16\u0003\u0002\u0002\u0002\u0f17\u0f18\u0003\u0002\u0002",
+ "\u0002\u0f18\u0f1a\u0003\u0002\u0002\u0002\u0f19\u0f1b\u0005\u013c\u009f",
+ "\u0002\u0f1a\u0f19\u0003\u0002\u0002\u0002\u0f1a\u0f1b\u0003\u0002\u0002",
+ "\u0002\u0f1b\u012b\u0003\u0002\u0002\u0002\u0f1c\u0f1d\u0007\u021c\u0002",
+ "\u0002\u0f1d\u0f26\u0007\u020d\u0002\u0002\u0f1e\u0f23\u0005\u0142\u00a2",
+ "\u0002\u0f1f\u0f20\u0007\u0400\u0002\u0002\u0f20\u0f22\u0005\u0142\u00a2",
+ "\u0002\u0f21\u0f1f\u0003\u0002\u0002\u0002\u0f22\u0f25\u0003\u0002\u0002",
+ "\u0002\u0f23\u0f21\u0003\u0002\u0002\u0002\u0f23\u0f24\u0003\u0002\u0002",
+ "\u0002\u0f24\u0f27\u0003\u0002\u0002\u0002\u0f25\u0f23\u0003\u0002\u0002",
+ "\u0002\u0f26\u0f1e\u0003\u0002\u0002\u0002\u0f26\u0f27\u0003\u0002\u0002",
+ "\u0002\u0f27\u0f2a\u0003\u0002\u0002\u0002\u0f28\u0f29\u0007\u023c\u0002",
+ "\u0002\u0f29\u0f2b\u0005\u0144\u00a3\u0002\u0f2a\u0f28\u0003\u0002\u0002",
+ "\u0002\u0f2a\u0f2b\u0003\u0002\u0002\u0002\u0f2b\u0f2f\u0003\u0002\u0002",
+ "\u0002\u0f2c\u0f2e\u0005\u0146\u00a4\u0002\u0f2d\u0f2c\u0003\u0002\u0002",
+ "\u0002\u0f2e\u0f31\u0003\u0002\u0002\u0002\u0f2f\u0f2d\u0003\u0002\u0002",
+ "\u0002\u0f2f\u0f30\u0003\u0002\u0002\u0002\u0f30\u0f33\u0003\u0002\u0002",
+ "\u0002\u0f31\u0f2f\u0003\u0002\u0002\u0002\u0f32\u0f34\u0005\u013c\u009f",
+ "\u0002\u0f33\u0f32\u0003\u0002\u0002\u0002\u0f33\u0f34\u0003\u0002\u0002",
+ "\u0002\u0f34\u012d\u0003\u0002\u0002\u0002\u0f35\u0f36\u0007\u0222\u0002",
+ "\u0002\u0f36\u0f3f\u0007\u020d\u0002\u0002\u0f37\u0f3c\u0005\u0142\u00a2",
+ "\u0002\u0f38\u0f39\u0007\u0400\u0002\u0002\u0f39\u0f3b\u0005\u0142\u00a2",
+ "\u0002\u0f3a\u0f38\u0003\u0002\u0002\u0002\u0f3b\u0f3e\u0003\u0002\u0002",
+ "\u0002\u0f3c\u0f3a\u0003\u0002\u0002\u0002\u0f3c\u0f3d\u0003\u0002\u0002",
+ "\u0002\u0f3d\u0f40\u0003\u0002\u0002\u0002\u0f3e\u0f3c\u0003\u0002\u0002",
+ "\u0002\u0f3f\u0f37\u0003\u0002\u0002\u0002\u0f3f\u0f40\u0003\u0002\u0002",
+ "\u0002\u0f40\u012f\u0003\u0002\u0002\u0002\u0f41\u0f42\u0007\u021c\u0002",
+ "\u0002\u0f42\u0f43\u0007\u0176\u0002\u0002\u0f43\u0131\u0003\u0002\u0002",
+ "\u0002\u0f44\u0f45\u0007\u0222\u0002\u0002\u0f45\u0f46\u0007\u0176\u0002",
+ "\u0002\u0f46\u0133\u0003\u0002\u0002\u0002\u0f47\u0f48\u0005\u0136\u009c",
+ "\u0002\u0f48\u0f49\u0007\u03f5\u0002\u0002\u0f49\u0f4a\u0007\u040d\u0002",
+ "\u0002\u0f4a\u0f65\u0003\u0002\u0002\u0002\u0f4b\u0f4c\u0005\u0138\u009d",
+ "\u0002\u0f4c\u0f4d\u0007\u03f5\u0002\u0002\u0f4d\u0f4e\u0005\u0214\u010b",
+ "\u0002\u0f4e\u0f65\u0003\u0002\u0002\u0002\u0f4f\u0f50\u0005\u013a\u009e",
+ "\u0002\u0f50\u0f51\u0007\u03f5\u0002\u0002\u0f51\u0f52\t\u0018\u0002",
+ "\u0002\u0f52\u0f65\u0003\u0002\u0002\u0002\u0f53\u0f54\u0007\u019b\u0002",
+ "\u0002\u0f54\u0f55\u0007\u03f5\u0002\u0002\u0f55\u0f65\u0007\u0410\u0002",
+ "\u0002\u0f56\u0f57\u0007\u017d\u0002\u0002\u0f57\u0f58\u0007\u03f5\u0002",
+ "\u0002\u0f58\u0f61\u0007\u03fe\u0002\u0002\u0f59\u0f5e\u0005\u020e\u0108",
+ "\u0002\u0f5a\u0f5b\u0007\u0400\u0002\u0002\u0f5b\u0f5d\u0005\u020e\u0108",
+ "\u0002\u0f5c\u0f5a\u0003\u0002\u0002\u0002\u0f5d\u0f60\u0003\u0002\u0002",
+ "\u0002\u0f5e\u0f5c\u0003\u0002\u0002\u0002\u0f5e\u0f5f\u0003\u0002\u0002",
+ "\u0002\u0f5f\u0f62\u0003\u0002\u0002\u0002\u0f60\u0f5e\u0003\u0002\u0002",
+ "\u0002\u0f61\u0f59\u0003\u0002\u0002\u0002\u0f61\u0f62\u0003\u0002\u0002",
+ "\u0002\u0f62\u0f63\u0003\u0002\u0002\u0002\u0f63\u0f65\u0007\u03ff\u0002",
+ "\u0002\u0f64\u0f47\u0003\u0002\u0002\u0002\u0f64\u0f4b\u0003\u0002\u0002",
+ "\u0002\u0f64\u0f4f\u0003\u0002\u0002\u0002\u0f64\u0f53\u0003\u0002\u0002",
+ "\u0002\u0f64\u0f56\u0003\u0002\u0002\u0002\u0f65\u0135\u0003\u0002\u0002",
+ "\u0002\u0f66\u0f67\t4\u0002\u0002\u0f67\u0137\u0003\u0002\u0002\u0002",
+ "\u0f68\u0f69\t5\u0002\u0002\u0f69\u0139\u0003\u0002\u0002\u0002\u0f6a",
+ "\u0f6b\t6\u0002\u0002\u0f6b\u013b\u0003\u0002\u0002\u0002\u0f6c\u0f6d",
+ "\u0007<\u0002\u0002\u0f6d\u0f6e\u0007\u0127\u0002\u0002\u0f6e\u0f6f",
+ "\u0007\u040d\u0002\u0002\u0f6f\u013d\u0003\u0002\u0002\u0002\u0f70\u0f71",
+ "\u0007\u01f1\u0002\u0002\u0f71\u0f72\u0007\u03f5\u0002\u0002\u0f72\u0f73",
+ "\u0007\u03fe\u0002\u0002\u0f73\u0f74\u0005\u022e\u0118\u0002\u0f74\u0f75",
+ "\u0007\u03ff\u0002\u0002\u0f75\u0fa2\u0003\u0002\u0002\u0002\u0f76\u0f77",
+ "\u0007\u01f3\u0002\u0002\u0f77\u0f78\u0007\u03f5\u0002\u0002\u0f78\u0f79",
+ "\u0007\u03fe\u0002\u0002\u0f79\u0f7a\u0005\u022e\u0118\u0002\u0f7a\u0f7b",
+ "\u0007\u03ff\u0002\u0002\u0f7b\u0fa2\u0003\u0002\u0002\u0002\u0f7c\u0f7d",
+ "\u0007\u01f2\u0002\u0002\u0f7d\u0f7e\u0007\u03f5\u0002\u0002\u0f7e\u0f7f",
+ "\u0007\u03fe\u0002\u0002\u0f7f\u0f80\u0005\u0230\u0119\u0002\u0f80\u0f81",
+ "\u0007\u03ff\u0002\u0002\u0f81\u0fa2\u0003\u0002\u0002\u0002\u0f82\u0f83",
+ "\u0007\u01f4\u0002\u0002\u0f83\u0f84\u0007\u03f5\u0002\u0002\u0f84\u0f85",
+ "\u0007\u03fe\u0002\u0002\u0f85\u0f86\u0005\u0230\u0119\u0002\u0f86\u0f87",
+ "\u0007\u03ff\u0002\u0002\u0f87\u0fa2\u0003\u0002\u0002\u0002\u0f88\u0f89",
+ "\u0007\u01f6\u0002\u0002\u0f89\u0f8a\u0007\u03f5\u0002\u0002\u0f8a\u0f8b",
+ "\u0007\u03fe\u0002\u0002\u0f8b\u0f8c\u0005\u023a\u011e\u0002\u0f8c\u0f8d",
+ "\u0007\u03ff\u0002\u0002\u0f8d\u0fa2\u0003\u0002\u0002\u0002\u0f8e\u0f8f",
+ "\u0007\u01f7\u0002\u0002\u0f8f\u0f90\u0007\u03f5\u0002\u0002\u0f90\u0f91",
+ "\u0007\u03fe\u0002\u0002\u0f91\u0f92\u0005\u023a\u011e\u0002\u0f92\u0f93",
+ "\u0007\u03ff\u0002\u0002\u0f93\u0fa2\u0003\u0002\u0002\u0002\u0f94\u0f95",
+ "\u0007\u01f5\u0002\u0002\u0f95\u0f96\u0007\u03f5\u0002\u0002\u0f96\u0f97",
+ "\u0007\u03fe\u0002\u0002\u0f97\u0f9c\u0005\u0140\u00a1\u0002\u0f98\u0f99",
+ "\u0007\u0400\u0002\u0002\u0f99\u0f9b\u0005\u0140\u00a1\u0002\u0f9a\u0f98",
+ "\u0003\u0002\u0002\u0002\u0f9b\u0f9e\u0003\u0002\u0002\u0002\u0f9c\u0f9a",
+ "\u0003\u0002\u0002\u0002\u0f9c\u0f9d\u0003\u0002\u0002\u0002\u0f9d\u0f9f",
+ "\u0003\u0002\u0002\u0002\u0f9e\u0f9c\u0003\u0002\u0002\u0002\u0f9f\u0fa0",
+ "\u0007\u03ff\u0002\u0002\u0fa0\u0fa2\u0003\u0002\u0002\u0002\u0fa1\u0f70",
+ "\u0003\u0002\u0002\u0002\u0fa1\u0f76\u0003\u0002\u0002\u0002\u0fa1\u0f7c",
+ "\u0003\u0002\u0002\u0002\u0fa1\u0f82\u0003\u0002\u0002\u0002\u0fa1\u0f88",
+ "\u0003\u0002\u0002\u0002\u0fa1\u0f8e\u0003\u0002\u0002\u0002\u0fa1\u0f94",
+ "\u0003\u0002\u0002\u0002\u0fa2\u013f\u0003\u0002\u0002\u0002\u0fa3\u0fa4",
+ "\u0007\u03fe\u0002\u0002\u0fa4\u0fa5\u0005\u01f6\u00fc\u0002\u0fa5\u0fa6",
+ "\u0007\u0400\u0002\u0002\u0fa6\u0fa7\u0005\u01f6\u00fc\u0002\u0fa7\u0fa8",
+ "\u0007\u03ff\u0002\u0002\u0fa8\u0141\u0003\u0002\u0002\u0002\u0fa9\u0faa",
+ "\t7\u0002\u0002\u0faa\u0143\u0003\u0002\u0002\u0002\u0fab\u0fac\t8\u0002",
+ "\u0002\u0fac\u0fad\u0007\u03f5\u0002\u0002\u0fad\u0fbe\u0005\u0148\u00a5",
+ "\u0002\u0fae\u0faf\u0007\u019d\u0002\u0002\u0faf\u0fb0\u0007\u03f5\u0002",
+ "\u0002\u0fb0\u0fb1\u0007\u040d\u0002\u0002\u0fb1\u0fb2\u0007\u0400\u0002",
+ "\u0002\u0fb2\u0fb3\u0007\u019e\u0002\u0002\u0fb3\u0fb4\u0007\u03f5\u0002",
+ "\u0002\u0fb4\u0fbe\u0005\u0214\u010b\u0002\u0fb5\u0fb6\u0007\u01eb\u0002",
+ "\u0002\u0fb6\u0fb7\u0007\u03f5\u0002\u0002\u0fb7\u0fb8\u0007\u040d\u0002",
+ "\u0002\u0fb8\u0fb9\u0007\u0400\u0002\u0002\u0fb9\u0fba\u0007\u01ec\u0002",
+ "\u0002\u0fba\u0fbb\u0007\u03f5\u0002\u0002\u0fbb\u0fbe\u0005\u0214\u010b",
+ "\u0002\u0fbc\u0fbe\u0007\u0216\u0002\u0002\u0fbd\u0fab\u0003\u0002\u0002",
+ "\u0002\u0fbd\u0fae\u0003\u0002\u0002\u0002\u0fbd\u0fb5\u0003\u0002\u0002",
+ "\u0002\u0fbd\u0fbc\u0003\u0002\u0002\u0002\u0fbe\u0145\u0003\u0002\u0002",
+ "\u0002\u0fbf\u0fc0\u0007\u023e\u0002\u0002\u0fc0\u0fc1\u0007\u03f5\u0002",
+ "\u0002\u0fc1\u0fcc\u0007\u040d\u0002\u0002\u0fc2\u0fc3\u0007\u01d6\u0002",
+ "\u0002\u0fc3\u0fc4\u0007\u03f5\u0002\u0002\u0fc4\u0fcc\u0007\u040d\u0002",
+ "\u0002\u0fc5\u0fc6\u0007\u0148\u0002\u0002\u0fc6\u0fc7\u0007\u03f5\u0002",
+ "\u0002\u0fc7\u0fcc\u0007\u040d\u0002\u0002\u0fc8\u0fc9\u0007\u01d9\u0002",
+ "\u0002\u0fc9\u0fca\u0007\u03f5\u0002\u0002\u0fca\u0fcc\u0007\u040d\u0002",
+ "\u0002\u0fcb\u0fbf\u0003\u0002\u0002\u0002\u0fcb\u0fc2\u0003\u0002\u0002",
+ "\u0002\u0fcb\u0fc5\u0003\u0002\u0002\u0002\u0fcb\u0fc8\u0003\u0002\u0002",
+ "\u0002\u0fcc\u0147\u0003\u0002\u0002\u0002\u0fcd\u0fd2\u0005\u0206\u0104",
+ "\u0002\u0fce\u0fcf\u0007\u0400\u0002\u0002\u0fcf\u0fd1\u0005\u0206\u0104",
+ "\u0002\u0fd0\u0fce\u0003\u0002\u0002\u0002\u0fd1\u0fd4\u0003\u0002\u0002",
+ "\u0002\u0fd2\u0fd0\u0003\u0002\u0002\u0002\u0fd2\u0fd3\u0003\u0002\u0002",
+ "\u0002\u0fd3\u0fd7\u0003\u0002\u0002\u0002\u0fd4\u0fd2\u0003\u0002\u0002",
+ "\u0002\u0fd5\u0fd7\u0007\u040d\u0002\u0002\u0fd6\u0fcd\u0003\u0002\u0002",
+ "\u0002\u0fd6\u0fd5\u0003\u0002\u0002\u0002\u0fd7\u0149\u0003\u0002\u0002",
+ "\u0002\u0fd8\u0fd9\u0007\u024d\u0002\u0002\u0fd9\u0fda\t9\u0002\u0002",
+ "\u0fda\u0fdc\u0005\u0208\u0105\u0002\u0fdb\u0fdd\t:\u0002\u0002\u0fdc",
+ "\u0fdb\u0003\u0002\u0002\u0002\u0fdc\u0fdd\u0003\u0002\u0002\u0002\u0fdd",
+ "\u014b\u0003\u0002\u0002\u0002\u0fde\u0fdf\u0007\u024d\u0002\u0002\u0fdf",
+ "\u0fe0\u0007\u0156\u0002\u0002\u0fe0\u0fe6\u0005\u0208\u0105\u0002\u0fe1",
+ "\u0fe4\u0007\u022a\u0002\u0002\u0fe2\u0fe3\u0007<\u0002\u0002\u0fe3",
+ "\u0fe5\u0007\u01b6\u0002\u0002\u0fe4\u0fe2\u0003\u0002\u0002\u0002\u0fe4",
+ "\u0fe5\u0003\u0002\u0002\u0002\u0fe5\u0fe7\u0003\u0002\u0002\u0002\u0fe6",
+ "\u0fe1\u0003\u0002\u0002\u0002\u0fe6\u0fe7\u0003\u0002\u0002\u0002\u0fe7",
+ "\u014d\u0003\u0002\u0002\u0002\u0fe8\u0fe9\u0007\u024d\u0002\u0002\u0fe9",
+ "\u0fea\u0007\u01dd\u0002\u0002\u0fea\u0feb\u0005\u0208\u0105\u0002\u0feb",
+ "\u014f\u0003\u0002\u0002\u0002\u0fec\u0fed\u0007\u024d\u0002\u0002\u0fed",
+ "\u0fee\u0007\u0134\u0002\u0002\u0fee\u0ff1\u0005\u0208\u0105\u0002\u0fef",
+ "\u0ff0\u0007\u01c9\u0002\u0002\u0ff0\u0ff2\u0007\u01d7\u0002\u0002\u0ff1",
+ "\u0fef\u0003\u0002\u0002\u0002\u0ff1\u0ff2\u0003\u0002\u0002\u0002\u0ff2",
+ "\u0151\u0003\u0002\u0002\u0002\u0ff3\u0ff4\u0007\u024d\u0002\u0002\u0ff4",
+ "\u0ff5\u0007\u01fe\u0002\u0002\u0ff5\u0ff6\u0005\u0208\u0105\u0002\u0ff6",
+ "\u0153\u0003\u0002\u0002\u0002\u0ff7\u0ff8\u0007\u024d\u0002\u0002\u0ff8",
+ "\u0ffb\u0007\u01e7\u0002\u0002\u0ff9\u0ffa\u0007\u001f\u0002\u0002\u0ffa",
+ "\u0ffc\u0005\u0208\u0105\u0002\u0ffb\u0ff9\u0003\u0002\u0002\u0002\u0ffb",
+ "\u0ffc\u0003\u0002\u0002\u0002\u0ffc\u0155\u0003\u0002\u0002\u0002\u0ffd",
+ "\u0ffe\u0007\u01dd\u0002\u0002\u0ffe\u0fff\u0005\u020e\u0108\u0002\u0fff",
+ "\u1002\u0007?\u0002\u0002\u1000\u1003\u0007\u040d\u0002\u0002\u1001",
+ "\u1003\u0007\u0418\u0002\u0002\u1002\u1000\u0003\u0002\u0002\u0002\u1002",
+ "\u1001\u0003\u0002\u0002\u0002\u1003\u0157\u0003\u0002\u0002\u0002\u1004",
+ "\u1005\u0007\u025e\u0002\u0002\u1005\u1008\u0005\u020e\u0108\u0002\u1006",
+ "\u1007\u0007\u00ab\u0002\u0002\u1007\u1009\u0005\u023c\u011f\u0002\u1008",
+ "\u1006\u0003\u0002\u0002\u0002\u1008\u1009\u0003\u0002\u0002\u0002\u1009",
+ "\u0159\u0003\u0002\u0002\u0002\u100a\u100b\t;\u0002\u0002\u100b\u100c",
+ "\u0007\u01dd\u0002\u0002\u100c\u100d\u0005\u020e\u0108\u0002\u100d\u015b",
+ "\u0003\u0002\u0002\u0002\u100e\u1011\u0005\u015e\u00b0\u0002\u100f\u1011",
+ "\u0005\b\u0005\u0002\u1010\u100e\u0003\u0002\u0002\u0002\u1010\u100f",
+ "\u0003\u0002\u0002\u0002\u1011\u015d\u0003\u0002\u0002\u0002\u1012\u1013",
+ "\u0005\u020e\u0108\u0002\u1013\u1014\u0007\u0409\u0002\u0002\u1014\u1016",
+ "\u0003\u0002\u0002\u0002\u1015\u1012\u0003\u0002\u0002\u0002\u1015\u1016",
+ "\u0003\u0002\u0002\u0002\u1016\u1017\u0003\u0002\u0002\u0002\u1017\u103e",
+ "\u0007\u011c\u0002\u0002\u1018\u1019\u0005\u0172\u00ba\u0002\u1019\u101a",
+ "\u0007\u0401\u0002\u0002\u101a\u101c\u0003\u0002\u0002\u0002\u101b\u1018",
+ "\u0003\u0002\u0002\u0002\u101c\u101f\u0003\u0002\u0002\u0002\u101d\u101b",
+ "\u0003\u0002\u0002\u0002\u101d\u101e\u0003\u0002\u0002\u0002\u101e\u1025",
+ "\u0003\u0002\u0002\u0002\u101f\u101d\u0003\u0002\u0002\u0002\u1020\u1021",
+ "\u0005\u0174\u00bb\u0002\u1021\u1022\u0007\u0401\u0002\u0002\u1022\u1024",
+ "\u0003\u0002\u0002\u0002\u1023\u1020\u0003\u0002\u0002\u0002\u1024\u1027",
+ "\u0003\u0002\u0002\u0002\u1025\u1023\u0003\u0002\u0002\u0002\u1025\u1026",
+ "\u0003\u0002\u0002\u0002\u1026\u102d\u0003\u0002\u0002\u0002\u1027\u1025",
+ "\u0003\u0002\u0002\u0002\u1028\u1029\u0005\u0176\u00bc\u0002\u1029\u102a",
+ "\u0007\u0401\u0002\u0002\u102a\u102c\u0003\u0002\u0002\u0002\u102b\u1028",
+ "\u0003\u0002\u0002\u0002\u102c\u102f\u0003\u0002\u0002\u0002\u102d\u102b",
+ "\u0003\u0002\u0002\u0002\u102d\u102e\u0003\u0002\u0002\u0002\u102e\u1035",
+ "\u0003\u0002\u0002\u0002\u102f\u102d\u0003\u0002\u0002\u0002\u1030\u1031",
+ "\u0005\u0178\u00bd\u0002\u1031\u1032\u0007\u0401\u0002\u0002\u1032\u1034",
+ "\u0003\u0002\u0002\u0002\u1033\u1030\u0003\u0002\u0002\u0002\u1034\u1037",
+ "\u0003\u0002\u0002\u0002\u1035\u1033\u0003\u0002\u0002\u0002\u1035\u1036",
+ "\u0003\u0002\u0002\u0002\u1036\u103b\u0003\u0002\u0002\u0002\u1037\u1035",
+ "\u0003\u0002\u0002\u0002\u1038\u103a\u0005\u017c\u00bf\u0002\u1039\u1038",
+ "\u0003\u0002\u0002\u0002\u103a\u103d\u0003\u0002\u0002\u0002\u103b\u1039",
+ "\u0003\u0002\u0002\u0002\u103b\u103c\u0003\u0002\u0002\u0002\u103c\u103f",
+ "\u0003\u0002\u0002\u0002\u103d\u103b\u0003\u0002\u0002\u0002\u103e\u101d",
+ "\u0003\u0002\u0002\u0002\u103e\u103f\u0003\u0002\u0002\u0002\u103f\u1040",
+ "\u0003\u0002\u0002\u0002\u1040\u1042\u0007\u0156\u0002\u0002\u1041\u1043",
+ "\u0005\u020e\u0108\u0002\u1042\u1041\u0003\u0002\u0002\u0002\u1042\u1043",
+ "\u0003\u0002\u0002\u0002\u1043\u015f\u0003\u0002\u0002\u0002\u1044\u1047",
+ "\u0007\u0015\u0002\u0002\u1045\u1048\u0005\u020e\u0108\u0002\u1046\u1048",
+ "\u0005\u025c\u012f\u0002\u1047\u1045\u0003\u0002\u0002\u0002\u1047\u1046",
+ "\u0003\u0002\u0002\u0002\u1047\u1048\u0003\u0002\u0002\u0002\u1048\u104a",
+ "\u0003\u0002\u0002\u0002\u1049\u104b\u0005\u017e\u00c0\u0002\u104a\u1049",
+ "\u0003\u0002\u0002\u0002\u104b\u104c\u0003\u0002\u0002\u0002\u104c\u104a",
+ "\u0003\u0002\u0002\u0002\u104c\u104d\u0003\u0002\u0002\u0002\u104d\u1054",
+ "\u0003\u0002\u0002\u0002\u104e\u1050\u00073\u0002\u0002\u104f\u1051",
+ "\u0005\u017c\u00bf\u0002\u1050\u104f\u0003\u0002\u0002\u0002\u1051\u1052",
+ "\u0003\u0002\u0002\u0002\u1052\u1050\u0003\u0002\u0002\u0002\u1052\u1053",
+ "\u0003\u0002\u0002\u0002\u1053\u1055\u0003\u0002\u0002\u0002\u1054\u104e",
+ "\u0003\u0002\u0002\u0002\u1054\u1055\u0003\u0002\u0002\u0002\u1055\u1056",
+ "\u0003\u0002\u0002\u0002\u1056\u1057\u0007\u0156\u0002\u0002\u1057\u1058",
+ "\u0007\u0015\u0002\u0002\u1058\u0161\u0003\u0002\u0002\u0002\u1059\u105a",
+ "\u0007G\u0002\u0002\u105a\u105b\u0005\u025c\u012f\u0002\u105b\u105d",
+ "\u0007\u009e\u0002\u0002\u105c\u105e\u0005\u017c\u00bf\u0002\u105d\u105c",
+ "\u0003\u0002\u0002\u0002\u105e\u105f\u0003\u0002\u0002\u0002\u105f\u105d",
+ "\u0003\u0002\u0002\u0002\u105f\u1060\u0003\u0002\u0002\u0002\u1060\u1064",
+ "\u0003\u0002\u0002\u0002\u1061\u1063\u0005\u0180\u00c1\u0002\u1062\u1061",
+ "\u0003\u0002\u0002\u0002\u1063\u1066\u0003\u0002\u0002\u0002\u1064\u1062",
+ "\u0003\u0002\u0002\u0002\u1064\u1065\u0003\u0002\u0002\u0002\u1065\u106d",
+ "\u0003\u0002\u0002\u0002\u1066\u1064\u0003\u0002\u0002\u0002\u1067\u1069",
+ "\u00073\u0002\u0002\u1068\u106a\u0005\u017c\u00bf\u0002\u1069\u1068",
+ "\u0003\u0002\u0002\u0002\u106a\u106b\u0003\u0002\u0002\u0002\u106b\u1069",
+ "\u0003\u0002\u0002\u0002\u106b\u106c\u0003\u0002\u0002\u0002\u106c\u106e",
+ "\u0003\u0002\u0002\u0002\u106d\u1067\u0003\u0002\u0002\u0002\u106d\u106e",
+ "\u0003\u0002\u0002\u0002\u106e\u106f\u0003\u0002\u0002\u0002\u106f\u1070",
+ "\u0007\u0156\u0002\u0002\u1070\u1071\u0007G\u0002\u0002\u1071\u0163",
+ "\u0003\u0002\u0002\u0002\u1072\u1073\u0007R\u0002\u0002\u1073\u1074",
+ "\u0005\u020e\u0108\u0002\u1074\u0165\u0003\u0002\u0002\u0002\u1075\u1076",
+ "\u0007X\u0002\u0002\u1076\u1077\u0005\u020e\u0108\u0002\u1077\u0167",
+ "\u0003\u0002\u0002\u0002\u1078\u1079\u0005\u020e\u0108\u0002\u1079\u107a",
+ "\u0007\u0409\u0002\u0002\u107a\u107c\u0003\u0002\u0002\u0002\u107b\u1078",
+ "\u0003\u0002\u0002\u0002\u107b\u107c\u0003\u0002\u0002\u0002\u107c\u107d",
+ "\u0003\u0002\u0002\u0002\u107d\u107f\u0007`\u0002\u0002\u107e\u1080",
+ "\u0005\u017c\u00bf\u0002\u107f\u107e\u0003\u0002\u0002\u0002\u1080\u1081",
+ "\u0003\u0002\u0002\u0002\u1081\u107f\u0003\u0002\u0002\u0002\u1081\u1082",
+ "\u0003\u0002\u0002\u0002\u1082\u1083\u0003\u0002\u0002\u0002\u1083\u1084",
+ "\u0007\u0156\u0002\u0002\u1084\u1086\u0007`\u0002\u0002\u1085\u1087",
+ "\u0005\u020e\u0108\u0002\u1086\u1085\u0003\u0002\u0002\u0002\u1086\u1087",
+ "\u0003\u0002\u0002\u0002\u1087\u0169\u0003\u0002\u0002\u0002\u1088\u1089",
+ "\u0005\u020e\u0108\u0002\u1089\u108a\u0007\u0409\u0002\u0002\u108a\u108c",
+ "\u0003\u0002\u0002\u0002\u108b\u1088\u0003\u0002\u0002\u0002\u108b\u108c",
+ "\u0003\u0002\u0002\u0002\u108c\u108d\u0003\u0002\u0002\u0002\u108d\u108f",
+ "\u0007\u0080\u0002\u0002\u108e\u1090\u0005\u017c\u00bf\u0002\u108f\u108e",
+ "\u0003\u0002\u0002\u0002\u1090\u1091\u0003\u0002\u0002\u0002\u1091\u108f",
+ "\u0003\u0002\u0002\u0002\u1091\u1092\u0003\u0002\u0002\u0002\u1092\u1093",
+ "\u0003\u0002\u0002\u0002\u1093\u1094\u0007\u023c\u0002\u0002\u1094\u1095",
+ "\u0005\u025c\u012f\u0002\u1095\u1096\u0007\u0156\u0002\u0002\u1096\u1098",
+ "\u0007\u0080\u0002\u0002\u1097\u1099\u0005\u020e\u0108\u0002\u1098\u1097",
+ "\u0003\u0002\u0002\u0002\u1098\u1099\u0003\u0002\u0002\u0002\u1099\u016b",
+ "\u0003\u0002\u0002\u0002\u109a\u109b\u0007\u0085\u0002\u0002\u109b\u109c",
+ "\u0005\u025c\u012f\u0002\u109c\u016d\u0003\u0002\u0002\u0002\u109d\u109e",
+ "\u0005\u020e\u0108\u0002\u109e\u109f\u0007\u0409\u0002\u0002\u109f\u10a1",
+ "\u0003\u0002\u0002\u0002\u10a0\u109d\u0003\u0002\u0002\u0002\u10a0\u10a1",
+ "\u0003\u0002\u0002\u0002\u10a1\u10a2\u0003\u0002\u0002\u0002\u10a2\u10a3",
+ "\u0007\u00af\u0002\u0002\u10a3\u10a4\u0005\u025c\u012f\u0002\u10a4\u10a6",
+ "\u0007\u0150\u0002\u0002\u10a5\u10a7\u0005\u017c\u00bf\u0002\u10a6\u10a5",
+ "\u0003\u0002\u0002\u0002\u10a7\u10a8\u0003\u0002\u0002\u0002\u10a8\u10a6",
+ "\u0003\u0002\u0002\u0002\u10a8\u10a9\u0003\u0002\u0002\u0002\u10a9\u10aa",
+ "\u0003\u0002\u0002\u0002\u10aa\u10ab\u0007\u0156\u0002\u0002\u10ab\u10ad",
+ "\u0007\u00af\u0002\u0002\u10ac\u10ae\u0005\u020e\u0108\u0002\u10ad\u10ac",
+ "\u0003\u0002\u0002\u0002\u10ad\u10ae\u0003\u0002\u0002\u0002\u10ae\u016f",
+ "\u0003\u0002\u0002\u0002\u10af\u10b0\u0007\u012d\u0002\u0002\u10b0\u10bf",
+ "\u0005\u020e\u0108\u0002\u10b1\u10b6\u0007;\u0002\u0002\u10b2\u10b4",
+ "\u0007\u01c1\u0002\u0002\u10b3\u10b2\u0003\u0002\u0002\u0002\u10b3\u10b4",
+ "\u0003\u0002\u0002\u0002\u10b4\u10b5\u0003\u0002\u0002\u0002\u10b5\u10b7",
+ "\u0007?\u0002\u0002\u10b6\u10b3\u0003\u0002\u0002\u0002\u10b6\u10b7",
+ "\u0003\u0002\u0002\u0002\u10b7\u10b8\u0003\u0002\u0002\u0002\u10b8\u10b9",
+ "\u0005\u020e\u0108\u0002\u10b9\u10ba\u0007P\u0002\u0002\u10ba\u10bb",
+ "\u0005\u022e\u0118\u0002\u10bb\u10bf\u0003\u0002\u0002\u0002\u10bc\u10bd",
+ "\u0007\u01cc\u0002\u0002\u10bd\u10bf\u0005\u020e\u0108\u0002\u10be\u10af",
+ "\u0003\u0002\u0002\u0002\u10be\u10b1\u0003\u0002\u0002\u0002\u10be\u10bc",
+ "\u0003\u0002\u0002\u0002\u10bf\u0171\u0003\u0002\u0002\u0002\u10c0\u10c1",
+ "\u0007\'\u0002\u0002\u10c1\u10c2\u0005\u022e\u0118\u0002\u10c2\u10c5",
+ "\u0005\u0222\u0112\u0002\u10c3\u10c4\u0007(\u0002\u0002\u10c4\u10c6",
+ "\u0005\u023e\u0120\u0002\u10c5\u10c3\u0003\u0002\u0002\u0002\u10c5\u10c6",
+ "\u0003\u0002\u0002\u0002\u10c6\u0173\u0003\u0002\u0002\u0002\u10c7\u10c8",
+ "\u0007\'\u0002\u0002\u10c8\u10c9\u0005\u020e\u0108\u0002\u10c9\u10ca",
+ "\u0007\u001c\u0002\u0002\u10ca\u10d1\u0007<\u0002\u0002\u10cb\u10d2",
+ "\u0005\u0214\u010b\u0002\u10cc\u10ce\u0007\u0093\u0002\u0002\u10cd\u10cf",
+ "\u0007\u0242\u0002\u0002\u10ce\u10cd\u0003\u0002\u0002\u0002\u10ce\u10cf",
+ "\u0003\u0002\u0002\u0002\u10cf\u10d0\u0003\u0002\u0002\u0002\u10d0\u10d2",
+ "\u0007\u040d\u0002\u0002\u10d1\u10cb\u0003\u0002\u0002\u0002\u10d1\u10cc",
+ "\u0003\u0002\u0002\u0002\u10d2\u0175\u0003\u0002\u0002\u0002\u10d3\u10d4",
+ "\u0007\'\u0002\u0002\u10d4\u10d5\u0005\u020e\u0108\u0002\u10d5\u10d6",
+ "\u0007$\u0002\u0002\u10d6\u10d7\u0007<\u0002\u0002\u10d7\u10d8\u0005",
+ "\u00b6\\\u0002\u10d8\u0177\u0003\u0002\u0002\u0002\u10d9\u10da\u0007",
+ "\'\u0002\u0002\u10da\u10db\t<\u0002\u0002\u10db\u10dc\u0007\u0177\u0002",
+ "\u0002\u10dc\u10dd\u0007<\u0002\u0002\u10dd\u10e2\u0005\u017a\u00be",
+ "\u0002\u10de\u10df\u0007\u0400\u0002\u0002\u10df\u10e1\u0005\u017a\u00be",
+ "\u0002\u10e0\u10de\u0003\u0002\u0002\u0002\u10e1\u10e4\u0003\u0002\u0002",
+ "\u0002\u10e2\u10e0\u0003\u0002\u0002\u0002\u10e2\u10e3\u0003\u0002\u0002",
+ "\u0002\u10e3\u10e5\u0003\u0002\u0002\u0002\u10e4\u10e2\u0003\u0002\u0002",
+ "\u0002\u10e5\u10e6\u0005\u015c\u00af\u0002\u10e6\u0179\u0003\u0002\u0002",
+ "\u0002\u10e7\u10f3\u0005\u0214\u010b\u0002\u10e8\u10ea\u0007\u0093\u0002",
+ "\u0002\u10e9\u10eb\u0007\u0242\u0002\u0002\u10ea\u10e9\u0003\u0002\u0002",
+ "\u0002\u10ea\u10eb\u0003\u0002\u0002\u0002\u10eb\u10ec\u0003\u0002\u0002",
+ "\u0002\u10ec\u10f3\u0007\u040d\u0002\u0002\u10ed\u10f3\u0005\u020e\u0108",
+ "\u0002\u10ee\u10f3\u0007\u0094\u0002\u0002\u10ef\u10f0\u0007h\u0002",
+ "\u0002\u10f0\u10f3\u0007\u0170\u0002\u0002\u10f1\u10f3\u0007\u0092\u0002",
+ "\u0002\u10f2\u10e7\u0003\u0002\u0002\u0002\u10f2\u10e8\u0003\u0002\u0002",
+ "\u0002\u10f2\u10ed\u0003\u0002\u0002\u0002\u10f2\u10ee\u0003\u0002\u0002",
+ "\u0002\u10f2\u10ef\u0003\u0002\u0002\u0002\u10f2\u10f1\u0003\u0002\u0002",
+ "\u0002\u10f3\u017b\u0003\u0002\u0002\u0002\u10f4\u10f7\u0005\u0016\f",
+ "\u0002\u10f5\u10f7\u0005\b\u0005\u0002\u10f6\u10f4\u0003\u0002\u0002",
+ "\u0002\u10f6\u10f5\u0003\u0002\u0002\u0002\u10f7\u10f8\u0003\u0002\u0002",
+ "\u0002\u10f8\u10f9\u0007\u0401\u0002\u0002\u10f9\u017d\u0003\u0002\u0002",
+ "\u0002\u10fa\u10fd\u0007\u00ad\u0002\u0002\u10fb\u10fe\u0005\u0220\u0111",
+ "\u0002\u10fc\u10fe\u0005\u025c\u012f\u0002\u10fd\u10fb\u0003\u0002\u0002",
+ "\u0002\u10fd\u10fc\u0003\u0002\u0002\u0002\u10fe\u10ff\u0003\u0002\u0002",
+ "\u0002\u10ff\u1101\u0007\u009e\u0002\u0002\u1100\u1102\u0005\u017c\u00bf",
+ "\u0002\u1101\u1100\u0003\u0002\u0002\u0002\u1102\u1103\u0003\u0002\u0002",
+ "\u0002\u1103\u1101\u0003\u0002\u0002\u0002\u1103\u1104\u0003\u0002\u0002",
+ "\u0002\u1104\u017f\u0003\u0002\u0002\u0002\u1105\u1106\u00074\u0002",
+ "\u0002\u1106\u1107\u0005\u025c\u012f\u0002\u1107\u1109\u0007\u009e\u0002",
+ "\u0002\u1108\u110a\u0005\u017c\u00bf\u0002\u1109\u1108\u0003\u0002\u0002",
+ "\u0002\u110a\u110b\u0003\u0002\u0002\u0002\u110b\u1109\u0003\u0002\u0002",
+ "\u0002\u110b\u110c\u0003\u0002\u0002\u0002\u110c\u0181\u0003\u0002\u0002",
+ "\u0002\u110d\u110e\u0007\t\u0002\u0002\u110e\u110f\u0007\u023e\u0002",
+ "\u0002\u110f\u1114\u0005\u0194\u00cb\u0002\u1110\u1111\u0007\u0400\u0002",
+ "\u0002\u1111\u1113\u0005\u0194\u00cb\u0002\u1112\u1110\u0003\u0002\u0002",
+ "\u0002\u1113\u1116\u0003\u0002\u0002\u0002\u1114\u1112\u0003\u0002\u0002",
+ "\u0002\u1114\u1115\u0003\u0002\u0002\u0002\u1115\u1144\u0003\u0002\u0002",
+ "\u0002\u1116\u1114\u0003\u0002\u0002\u0002\u1117\u1118\u0007\t\u0002",
+ "\u0002\u1118\u111a\u0007\u023e\u0002\u0002\u1119\u111b\u0005\u0244\u0123",
+ "\u0002\u111a\u1119\u0003\u0002\u0002\u0002\u111a\u111b\u0003\u0002\u0002",
+ "\u0002\u111b\u111c\u0003\u0002\u0002\u0002\u111c\u1121\u0005\u0196\u00cc",
+ "\u0002\u111d\u111e\u0007\u0400\u0002\u0002\u111e\u1120\u0005\u0196\u00cc",
+ "\u0002\u111f\u111d\u0003\u0002\u0002\u0002\u1120\u1123\u0003\u0002\u0002",
+ "\u0002\u1121\u111f\u0003\u0002\u0002\u0002\u1121\u1122\u0003\u0002\u0002",
+ "\u0002\u1122\u1132\u0003\u0002\u0002\u0002\u1123\u1121\u0003\u0002\u0002",
+ "\u0002\u1124\u1130\u0007\u0082\u0002\u0002\u1125\u1131\u0007\u01c4\u0002",
+ "\u0002\u1126\u112d\u0005\u0198\u00cd\u0002\u1127\u1129\u0007\f\u0002",
+ "\u0002\u1128\u1127\u0003\u0002\u0002\u0002\u1128\u1129\u0003\u0002\u0002",
+ "\u0002\u1129\u112a\u0003\u0002\u0002\u0002\u112a\u112c\u0005\u0198\u00cd",
+ "\u0002\u112b\u1128\u0003\u0002\u0002\u0002\u112c\u112f\u0003\u0002\u0002",
+ "\u0002\u112d\u112b\u0003\u0002\u0002\u0002\u112d\u112e\u0003\u0002\u0002",
+ "\u0002\u112e\u1131\u0003\u0002\u0002\u0002\u112f\u112d\u0003\u0002\u0002",
+ "\u0002\u1130\u1125\u0003\u0002\u0002\u0002\u1130\u1126\u0003\u0002\u0002",
+ "\u0002\u1131\u1133\u0003\u0002\u0002\u0002\u1132\u1124\u0003\u0002\u0002",
+ "\u0002\u1132\u1133\u0003\u0002\u0002\u0002\u1133\u113a\u0003\u0002\u0002",
+ "\u0002\u1134\u1136\u0007\u00b0\u0002\u0002\u1135\u1137\u0005\u019a\u00ce",
+ "\u0002\u1136\u1135\u0003\u0002\u0002\u0002\u1137\u1138\u0003\u0002\u0002",
+ "\u0002\u1138\u1136\u0003\u0002\u0002\u0002\u1138\u1139\u0003\u0002\u0002",
+ "\u0002\u1139\u113b\u0003\u0002\u0002\u0002\u113a\u1134\u0003\u0002\u0002",
+ "\u0002\u113a\u113b\u0003\u0002\u0002\u0002\u113b\u1140\u0003\u0002\u0002",
+ "\u0002\u113c\u113f\u0005\u019c\u00cf\u0002\u113d\u113f\u0005\u019e\u00d0",
+ "\u0002\u113e\u113c\u0003\u0002\u0002\u0002\u113e\u113d\u0003\u0002\u0002",
+ "\u0002\u113f\u1142\u0003\u0002\u0002\u0002\u1140\u113e\u0003\u0002\u0002",
+ "\u0002\u1140\u1141\u0003\u0002\u0002\u0002\u1141\u1144\u0003\u0002\u0002",
+ "\u0002\u1142\u1140\u0003\u0002\u0002\u0002\u1143\u110d\u0003\u0002\u0002",
+ "\u0002\u1143\u1117\u0003\u0002\u0002\u0002\u1144\u0183\u0003\u0002\u0002",
+ "\u0002\u1145\u1146\u0007 \u0002\u0002\u1146\u1147\u0007\u023e\u0002",
+ "\u0002\u1147\u114c\u0005\u0196\u00cc\u0002\u1148\u1149\u0007\u0400\u0002",
+ "\u0002\u1149\u114b\u0005\u0196\u00cc\u0002\u114a\u1148\u0003\u0002\u0002",
+ "\u0002\u114b\u114e\u0003\u0002\u0002\u0002\u114c\u114a\u0003\u0002\u0002",
+ "\u0002\u114c\u114d\u0003\u0002\u0002\u0002\u114d\u117c\u0003\u0002\u0002",
+ "\u0002\u114e\u114c\u0003\u0002\u0002\u0002\u114f\u1150\u0007 \u0002",
+ "\u0002\u1150\u1152\u0007\u023e\u0002\u0002\u1151\u1153\u0005\u0246\u0124",
+ "\u0002\u1152\u1151\u0003\u0002\u0002\u0002\u1152\u1153\u0003\u0002\u0002",
+ "\u0002\u1153\u1154\u0003\u0002\u0002\u0002\u1154\u1159\u0005\u0196\u00cc",
+ "\u0002\u1155\u1156\u0007\u0400\u0002\u0002\u1156\u1158\u0005\u0196\u00cc",
+ "\u0002\u1157\u1155\u0003\u0002\u0002\u0002\u1158\u115b\u0003\u0002\u0002",
+ "\u0002\u1159\u1157\u0003\u0002\u0002\u0002\u1159\u115a\u0003\u0002\u0002",
+ "\u0002\u115a\u116a\u0003\u0002\u0002\u0002\u115b\u1159\u0003\u0002\u0002",
+ "\u0002\u115c\u1168\u0007\u0082\u0002\u0002\u115d\u1169\u0007\u01c4\u0002",
+ "\u0002\u115e\u1165\u0005\u0198\u00cd\u0002\u115f\u1161\u0007\f\u0002",
+ "\u0002\u1160\u115f\u0003\u0002\u0002\u0002\u1160\u1161\u0003\u0002\u0002",
+ "\u0002\u1161\u1162\u0003\u0002\u0002\u0002\u1162\u1164\u0005\u0198\u00cd",
+ "\u0002\u1163\u1160\u0003\u0002\u0002\u0002\u1164\u1167\u0003\u0002\u0002",
+ "\u0002\u1165\u1163\u0003\u0002\u0002\u0002\u1165\u1166\u0003\u0002\u0002",
+ "\u0002\u1166\u1169\u0003\u0002\u0002\u0002\u1167\u1165\u0003\u0002\u0002",
+ "\u0002\u1168\u115d\u0003\u0002\u0002\u0002\u1168\u115e\u0003\u0002\u0002",
+ "\u0002\u1169\u116b\u0003\u0002\u0002\u0002\u116a\u115c\u0003\u0002\u0002",
+ "\u0002\u116a\u116b\u0003\u0002\u0002\u0002\u116b\u1172\u0003\u0002\u0002",
+ "\u0002\u116c\u116e\u0007\u00b0\u0002\u0002\u116d\u116f\u0005\u019a\u00ce",
+ "\u0002\u116e\u116d\u0003\u0002\u0002\u0002\u116f\u1170\u0003\u0002\u0002",
+ "\u0002\u1170\u116e\u0003\u0002\u0002\u0002\u1170\u1171\u0003\u0002\u0002",
+ "\u0002\u1171\u1173\u0003\u0002\u0002\u0002\u1172\u116c\u0003\u0002\u0002",
+ "\u0002\u1172\u1173\u0003\u0002\u0002\u0002\u1173\u1178\u0003\u0002\u0002",
+ "\u0002\u1174\u1177\u0005\u019c\u00cf\u0002\u1175\u1177\u0005\u019e\u00d0",
+ "\u0002\u1176\u1174\u0003\u0002\u0002\u0002\u1176\u1175\u0003\u0002\u0002",
+ "\u0002\u1177\u117a\u0003\u0002\u0002\u0002\u1178\u1176\u0003\u0002\u0002",
+ "\u0002\u1178\u1179\u0003\u0002\u0002\u0002\u1179\u117c\u0003\u0002\u0002",
+ "\u0002\u117a\u1178\u0003\u0002\u0002\u0002\u117b\u1145\u0003\u0002\u0002",
+ "\u0002\u117b\u114f\u0003\u0002\u0002\u0002\u117c\u0185\u0003\u0002\u0002",
+ "\u0002\u117d\u117e\u00071\u0002\u0002\u117e\u1180\u0007\u023e\u0002",
+ "\u0002\u117f\u1181\u0005\u0244\u0123\u0002\u1180\u117f\u0003\u0002\u0002",
+ "\u0002\u1180\u1181\u0003\u0002\u0002\u0002\u1181\u1182\u0003\u0002\u0002",
+ "\u0002\u1182\u1187\u0005\u01fc\u00ff\u0002\u1183\u1184\u0007\u0400\u0002",
+ "\u0002\u1184\u1186\u0005\u01fc\u00ff\u0002\u1185\u1183\u0003\u0002\u0002",
+ "\u0002\u1186\u1189\u0003\u0002\u0002\u0002\u1187\u1185\u0003\u0002\u0002",
+ "\u0002\u1187\u1188\u0003\u0002\u0002\u0002\u1188\u0187\u0003\u0002\u0002",
+ "\u0002\u1189\u1187\u0003\u0002\u0002\u0002\u118a\u118b\u0007C\u0002",
+ "\u0002\u118b\u1190\u0005\u01a0\u00d1\u0002\u118c\u118d\u0007\u0400\u0002",
+ "\u0002\u118d\u118f\u0005\u01a0\u00d1\u0002\u118e\u118c\u0003\u0002\u0002",
+ "\u0002\u118f\u1192\u0003\u0002\u0002\u0002\u1190\u118e\u0003\u0002\u0002",
+ "\u0002\u1190\u1191\u0003\u0002\u0002\u0002\u1191\u1193\u0003\u0002\u0002",
+ "\u0002\u1192\u1190\u0003\u0002\u0002\u0002\u1193\u1195\u0007l\u0002",
+ "\u0002\u1194\u1196\t=\u0002\u0002\u1195\u1194\u0003\u0002\u0002\u0002",
+ "\u1195\u1196\u0003\u0002\u0002\u0002\u1196\u1197\u0003\u0002\u0002\u0002",
+ "\u1197\u1198\u0005\u01a4\u00d3\u0002\u1198\u1199\u0007\u009f\u0002\u0002",
+ "\u1199\u119e\u0005\u0196\u00cc\u0002\u119a\u119b\u0007\u0400\u0002\u0002",
+ "\u119b\u119d\u0005\u0196\u00cc\u0002\u119c\u119a\u0003\u0002\u0002\u0002",
+ "\u119d\u11a0\u0003\u0002\u0002\u0002\u119e\u119c\u0003\u0002\u0002\u0002",
+ "\u119e\u119f\u0003\u0002\u0002\u0002\u119f\u11af\u0003\u0002\u0002\u0002",
+ "\u11a0\u119e\u0003\u0002\u0002\u0002\u11a1\u11ad\u0007\u0082\u0002\u0002",
+ "\u11a2\u11ae\u0007\u01c4\u0002\u0002\u11a3\u11aa\u0005\u0198\u00cd\u0002",
+ "\u11a4\u11a6\u0007\f\u0002\u0002\u11a5\u11a4\u0003\u0002\u0002\u0002",
+ "\u11a5\u11a6\u0003\u0002\u0002\u0002\u11a6\u11a7\u0003\u0002\u0002\u0002",
+ "\u11a7\u11a9\u0005\u0198\u00cd\u0002\u11a8\u11a5\u0003\u0002\u0002\u0002",
+ "\u11a9\u11ac\u0003\u0002\u0002\u0002\u11aa\u11a8\u0003\u0002\u0002\u0002",
+ "\u11aa\u11ab\u0003\u0002\u0002\u0002\u11ab\u11ae\u0003\u0002\u0002\u0002",
+ "\u11ac\u11aa\u0003\u0002\u0002\u0002\u11ad\u11a2\u0003\u0002\u0002\u0002",
+ "\u11ad\u11a3\u0003\u0002\u0002\u0002\u11ae\u11b0\u0003\u0002\u0002\u0002",
+ "\u11af\u11a1\u0003\u0002\u0002\u0002\u11af\u11b0\u0003\u0002\u0002\u0002",
+ "\u11b0\u11ba\u0003\u0002\u0002\u0002\u11b1\u11b7\u0007\u00b0\u0002\u0002",
+ "\u11b2\u11b3\u0007C\u0002\u0002\u11b3\u11b6\u0007n\u0002\u0002\u11b4",
+ "\u11b6\u0005\u019a\u00ce\u0002\u11b5\u11b2\u0003\u0002\u0002\u0002\u11b5",
+ "\u11b4\u0003\u0002\u0002\u0002\u11b6\u11b9\u0003\u0002\u0002\u0002\u11b7",
+ "\u11b5\u0003\u0002\u0002\u0002\u11b7\u11b8\u0003\u0002\u0002\u0002\u11b8",
+ "\u11bb\u0003\u0002\u0002\u0002\u11b9\u11b7\u0003\u0002\u0002\u0002\u11ba",
+ "\u11b1\u0003\u0002\u0002\u0002\u11ba\u11bb\u0003\u0002\u0002\u0002\u11bb",
+ "\u0189\u0003\u0002\u0002\u0002\u11bc\u11bd\u0007C\u0002\u0002\u11bd",
+ "\u11be\u0007\u01e3\u0002\u0002\u11be\u11bf\u0007l\u0002\u0002\u11bf",
+ "\u11c0\u0005\u01fc\u00ff\u0002\u11c0\u11c1\u0007\u009f\u0002\u0002\u11c1",
+ "\u11c6\u0005\u01fc\u00ff\u0002\u11c2\u11c3\u0007\u0400\u0002\u0002\u11c3",
+ "\u11c5\u0005\u01fc\u00ff\u0002\u11c4\u11c2\u0003\u0002\u0002\u0002\u11c5",
+ "\u11c8\u0003\u0002\u0002\u0002\u11c6\u11c4\u0003\u0002\u0002\u0002\u11c6",
+ "\u11c7\u0003\u0002\u0002\u0002\u11c7\u11cc\u0003\u0002\u0002\u0002\u11c8",
+ "\u11c6\u0003\u0002\u0002\u0002\u11c9\u11ca\u0007\u00b0\u0002\u0002\u11ca",
+ "\u11cb\u0007C\u0002\u0002\u11cb\u11cd\u0007n\u0002\u0002\u11cc\u11c9",
+ "\u0003\u0002\u0002\u0002\u11cc\u11cd\u0003\u0002\u0002\u0002\u11cd\u018b",
+ "\u0003\u0002\u0002\u0002\u11ce\u11cf\u0007\u007f\u0002\u0002\u11cf\u11d0",
+ "\u0007\u023e\u0002\u0002\u11d0\u11d5\u0005\u01a6\u00d4\u0002\u11d1\u11d2",
+ "\u0007\u0400\u0002\u0002\u11d2\u11d4\u0005\u01a6\u00d4\u0002\u11d3\u11d1",
+ "\u0003\u0002\u0002\u0002\u11d4\u11d7\u0003\u0002\u0002\u0002\u11d5\u11d3",
+ "\u0003\u0002\u0002\u0002\u11d5\u11d6\u0003\u0002\u0002\u0002\u11d6\u018d",
+ "\u0003\u0002\u0002\u0002\u11d7\u11d5\u0003\u0002\u0002\u0002\u11d8\u11d9",
+ "\u0007\u0086\u0002\u0002\u11d9\u11de\u0005\u01a0\u00d1\u0002\u11da\u11db",
+ "\u0007\u0400\u0002\u0002\u11db\u11dd\u0005\u01a0\u00d1\u0002\u11dc\u11da",
+ "\u0003\u0002\u0002\u0002\u11dd\u11e0\u0003\u0002\u0002\u0002\u11de\u11dc",
+ "\u0003\u0002\u0002\u0002\u11de\u11df\u0003\u0002\u0002\u0002\u11df\u11e1",
+ "\u0003\u0002\u0002\u0002\u11e0\u11de\u0003\u0002\u0002\u0002\u11e1\u11e3",
+ "\u0007l\u0002\u0002\u11e2\u11e4\t=\u0002\u0002\u11e3\u11e2\u0003\u0002",
+ "\u0002\u0002\u11e3\u11e4\u0003\u0002\u0002\u0002\u11e4\u11e5\u0003\u0002",
+ "\u0002\u0002\u11e5\u11e6\u0005\u01a4\u00d3\u0002\u11e6\u11e7\u0007?",
+ "\u0002\u0002\u11e7\u11ec\u0005\u01fc\u00ff\u0002\u11e8\u11e9\u0007\u0400",
+ "\u0002\u0002\u11e9\u11eb\u0005\u01fc\u00ff\u0002\u11ea\u11e8\u0003\u0002",
+ "\u0002\u0002\u11eb\u11ee\u0003\u0002\u0002\u0002\u11ec\u11ea\u0003\u0002",
+ "\u0002\u0002\u11ec\u11ed\u0003\u0002\u0002\u0002\u11ed\u1201\u0003\u0002",
+ "\u0002\u0002\u11ee\u11ec\u0003\u0002\u0002\u0002\u11ef\u11f0\u0007\u0086",
+ "\u0002\u0002\u11f0\u11f2\u0007\b\u0002\u0002\u11f1\u11f3\u0007\u0264",
+ "\u0002\u0002\u11f2\u11f1\u0003\u0002\u0002\u0002\u11f2\u11f3\u0003\u0002",
+ "\u0002\u0002\u11f3\u11f4\u0003\u0002\u0002\u0002\u11f4\u11f5\u0007\u0400",
+ "\u0002\u0002\u11f5\u11f6\u0007C\u0002\u0002\u11f6\u11f7\u0007n\u0002",
+ "\u0002\u11f7\u11f8\u0007?\u0002\u0002\u11f8\u11fd\u0005\u01fc\u00ff",
+ "\u0002\u11f9\u11fa\u0007\u0400\u0002\u0002\u11fa\u11fc\u0005\u01fc\u00ff",
+ "\u0002\u11fb\u11f9\u0003\u0002\u0002\u0002\u11fc\u11ff\u0003\u0002\u0002",
+ "\u0002\u11fd\u11fb\u0003\u0002\u0002\u0002\u11fd\u11fe\u0003\u0002\u0002",
+ "\u0002\u11fe\u1201\u0003\u0002\u0002\u0002\u11ff\u11fd\u0003\u0002\u0002",
+ "\u0002\u1200\u11d8\u0003\u0002\u0002\u0002\u1200\u11ef\u0003\u0002\u0002",
+ "\u0002\u1201\u018f\u0003\u0002\u0002\u0002\u1202\u1203\u0007\u0086\u0002",
+ "\u0002\u1203\u1204\u0007\u01e3\u0002\u0002\u1204\u1205\u0007l\u0002",
+ "\u0002\u1205\u1206\u0005\u01fc\u00ff\u0002\u1206\u1207\u0007?\u0002",
+ "\u0002\u1207\u120c\u0005\u01fc\u00ff\u0002\u1208\u1209\u0007\u0400\u0002",
+ "\u0002\u1209\u120b\u0005\u01fc\u00ff\u0002\u120a\u1208\u0003\u0002\u0002",
+ "\u0002\u120b\u120e\u0003\u0002\u0002\u0002\u120c\u120a\u0003\u0002\u0002",
+ "\u0002\u120c\u120d\u0003\u0002\u0002\u0002\u120d\u0191\u0003\u0002\u0002",
+ "\u0002\u120e\u120c\u0003\u0002\u0002\u0002\u120f\u1210\u0007\u008c\u0002",
+ "\u0002\u1210\u1213\u0007\u01d6\u0002\u0002\u1211\u1212\u0007<\u0002",
+ "\u0002\u1212\u1214\u0005\u01fc\u00ff\u0002\u1213\u1211\u0003\u0002\u0002",
+ "\u0002\u1213\u1214\u0003\u0002\u0002\u0002\u1214\u1215\u0003\u0002\u0002",
+ "\u0002\u1215\u1218\u0007\u03f5\u0002\u0002\u1216\u1219\u0005\u0256\u012c",
+ "\u0002\u1217\u1219\u0007\u040d\u0002\u0002\u1218\u1216\u0003\u0002\u0002",
+ "\u0002\u1218\u1217\u0003\u0002\u0002\u0002\u1219\u0193\u0003\u0002\u0002",
+ "\u0002\u121a\u121b\u0005\u01fc\u00ff\u0002\u121b\u121c\u0005\u019c\u00cf",
+ "\u0002\u121c\u0195\u0003\u0002\u0002\u0002\u121d\u121e\u0005\u01fc\u00ff",
+ "\u0002\u121e\u121f\u0007\u017c\u0002\u0002\u121f\u1220\u0007\u0012\u0002",
+ "\u0002\u1220\u1221\u0007\u01d6\u0002\u0002\u1221\u1222\u0007\u040d\u0002",
+ "\u0002\u1222\u1236\u0003\u0002\u0002\u0002\u1223\u1224\u0005\u01fc\u00ff",
+ "\u0002\u1224\u1227\u0007\u017c\u0002\u0002\u1225\u1226\u0007\u00b0\u0002",
+ "\u0002\u1226\u1228\u0005\u020c\u0107\u0002\u1227\u1225\u0003\u0002\u0002",
+ "\u0002\u1227\u1228\u0003\u0002\u0002\u0002\u1228\u1229\u0003\u0002\u0002",
+ "\u0002\u1229\u122a\u0007\u0012\u0002\u0002\u122a\u122b\u0007\u040d\u0002",
+ "\u0002\u122b\u1236\u0003\u0002\u0002\u0002\u122c\u122d\u0005\u01fc\u00ff",
+ "\u0002\u122d\u122e\u0007\u017c\u0002\u0002\u122e\u122f\u0007\u00b0\u0002",
+ "\u0002\u122f\u1232\u0005\u020c\u0107\u0002\u1230\u1231\u0007\r\u0002",
+ "\u0002\u1231\u1233\u0007\u040d\u0002\u0002\u1232\u1230\u0003\u0002\u0002",
+ "\u0002\u1232\u1233\u0003\u0002\u0002\u0002\u1233\u1236\u0003\u0002\u0002",
+ "\u0002\u1234\u1236\u0005\u01fc\u00ff\u0002\u1235\u121d\u0003\u0002\u0002",
+ "\u0002\u1235\u1223\u0003\u0002\u0002\u0002\u1235\u122c\u0003\u0002\u0002",
+ "\u0002\u1235\u1234\u0003\u0002\u0002\u0002\u1236\u0197\u0003\u0002\u0002",
+ "\u0002\u1237\u1240\u0007\u0098\u0002\u0002\u1238\u1240\u0007\u024c\u0002",
+ "\u0002\u1239\u123a\u0007\u012a\u0002\u0002\u123a\u1240\u0007\u040d\u0002",
+ "\u0002\u123b\u123c\u0007\u018b\u0002\u0002\u123c\u1240\u0007\u040d\u0002",
+ "\u0002\u123d\u123e\u0007\u0227\u0002\u0002\u123e\u1240\u0007\u040d\u0002",
+ "\u0002\u123f\u1237\u0003\u0002\u0002\u0002\u123f\u1238\u0003\u0002\u0002",
+ "\u0002\u123f\u1239\u0003\u0002\u0002\u0002\u123f\u123b\u0003\u0002\u0002",
+ "\u0002\u123f\u123d\u0003\u0002\u0002\u0002\u1240\u0199\u0003\u0002\u0002",
+ "\u0002\u1241\u1242\u0007\u01ad\u0002\u0002\u1242\u124a\u0005\u0214\u010b",
+ "\u0002\u1243\u1244\u0007\u01b0\u0002\u0002\u1244\u124a\u0005\u0214\u010b",
+ "\u0002\u1245\u1246\u0007\u01ac\u0002\u0002\u1246\u124a\u0005\u0214\u010b",
+ "\u0002\u1247\u1248\u0007\u01b1\u0002\u0002\u1248\u124a\u0005\u0214\u010b",
+ "\u0002\u1249\u1241\u0003\u0002\u0002\u0002\u1249\u1243\u0003\u0002\u0002",
+ "\u0002\u1249\u1245\u0003\u0002\u0002\u0002\u1249\u1247\u0003\u0002\u0002",
+ "\u0002\u124a\u019b\u0003\u0002\u0002\u0002\u124b\u124c\u0007\u01d6\u0002",
+ "\u0002\u124c\u1253\u0007\u0163\u0002\u0002\u124d\u1254\u0007(\u0002",
+ "\u0002\u124e\u1254\u0007\u01c0\u0002\u0002\u124f\u1250\u0007O\u0002",
+ "\u0002\u1250\u1251\u0005\u0214\u010b\u0002\u1251\u1252\u0007\u0256\u0002",
+ "\u0002\u1252\u1254\u0003\u0002\u0002\u0002\u1253\u124d\u0003\u0002\u0002",
+ "\u0002\u1253\u124e\u0003\u0002\u0002\u0002\u1253\u124f\u0003\u0002\u0002",
+ "\u0002\u1253\u1254\u0003\u0002\u0002\u0002\u1254\u019d\u0003\u0002\u0002",
+ "\u0002\u1255\u1256\u0007\u0110\u0002\u0002\u1256\u1257\t>\u0002\u0002",
+ "\u1257\u019f\u0003\u0002\u0002\u0002\u1258\u125d\u0005\u01a2\u00d2\u0002",
+ "\u1259\u125a\u0007\u03fe\u0002\u0002\u125a\u125b\u0005\u022e\u0118\u0002",
+ "\u125b\u125c\u0007\u03ff\u0002\u0002\u125c\u125e\u0003\u0002\u0002\u0002",
+ "\u125d\u1259\u0003\u0002\u0002\u0002\u125d\u125e\u0003\u0002\u0002\u0002",
+ "\u125e\u01a1\u0003\u0002\u0002\u0002\u125f\u1261\u0007\b\u0002\u0002",
+ "\u1260\u1262\u0007\u0264\u0002\u0002\u1261\u1260\u0003\u0002\u0002\u0002",
+ "\u1261\u1262\u0003\u0002\u0002\u0002\u1262\u12a7\u0003\u0002\u0002\u0002",
+ "\u1263\u1265\u0007\t\u0002\u0002\u1264\u1266\u0007\u025d\u0002\u0002",
+ "\u1265\u1264\u0003\u0002\u0002\u0002\u1265\u1266\u0003\u0002\u0002\u0002",
+ "\u1266\u12a7\u0003\u0002\u0002\u0002\u1267\u126f\u0007 \u0002\u0002",
+ "\u1268\u1269\u0007\u022f\u0002\u0002\u1269\u1270\u0007\u025c\u0002\u0002",
+ "\u126a\u1270\u0007\u025d\u0002\u0002\u126b\u1270\u0007\u0244\u0002\u0002",
+ "\u126c\u1270\u0007\u023e\u0002\u0002\u126d\u1270\u0007\u022e\u0002\u0002",
+ "\u126e\u1270\u0007\u01fd\u0002\u0002\u126f\u1268\u0003\u0002\u0002\u0002",
+ "\u126f\u126a\u0003\u0002\u0002\u0002\u126f\u126b\u0003\u0002\u0002\u0002",
+ "\u126f\u126c\u0003\u0002\u0002\u0002\u126f\u126d\u0003\u0002\u0002\u0002",
+ "\u126f\u126e\u0003\u0002\u0002\u0002\u126f\u1270\u0003\u0002\u0002\u0002",
+ "\u1270\u12a7\u0003\u0002\u0002\u0002\u1271\u12a7\u0007*\u0002\u0002",
+ "\u1272\u1274\u00071\u0002\u0002\u1273\u1275\u0007\u01fd\u0002\u0002",
+ "\u1274\u1273\u0003\u0002\u0002\u0002\u1274\u1275\u0003\u0002\u0002\u0002",
+ "\u1275\u12a7\u0003\u0002\u0002\u0002\u1276\u12a7\u0007\u015e\u0002\u0002",
+ "\u1277\u12a7\u0007\u025e\u0002\u0002\u1278\u12a7\u0007\u025f\u0002\u0002",
+ "\u1279\u127a\u0007C\u0002\u0002\u127a\u12a7\u0007n\u0002\u0002\u127b",
+ "\u12a7\u0007J\u0002\u0002\u127c\u12a7\u0007N\u0002\u0002\u127d\u127e",
+ "\u0007_\u0002\u0002\u127e\u12a7\u0007\u025c\u0002\u0002\u127f\u12a7",
+ "\u0007\u0260\u0002\u0002\u1280\u12a7\u0007\u01e3\u0002\u0002\u1281\u12a7",
+ "\u0007|\u0002\u0002\u1282\u12a7\u0007\u0261\u0002\u0002\u1283\u1284",
+ "\u0007\u01f8\u0002\u0002\u1284\u12a7\t?\u0002\u0002\u1285\u12a7\u0007",
+ "\u008b\u0002\u0002\u1286\u1287\u0007\u008e\u0002\u0002\u1287\u12a7\t",
+ "@\u0002\u0002\u1288\u12a7\u0007\u0262\u0002\u0002\u1289\u12a7\u0007",
+ "\u0263\u0002\u0002\u128a\u12a7\u0007\u00a1\u0002\u0002\u128b\u12a7\u0007",
+ "\u00a8\u0002\u0002\u128c\u12a7\u0007\u00a9\u0002\u0002\u128d\u12a7\u0007",
+ "\u0266\u0002\u0002\u128e\u12a7\u0007\u0267\u0002\u0002\u128f\u12a7\u0007",
+ "\u0268\u0002\u0002\u1290\u12a7\u0007\u0269\u0002\u0002\u1291\u12a7\u0007",
+ "\u026a\u0002\u0002\u1292\u12a7\u0007\u026b\u0002\u0002\u1293\u12a7\u0007",
+ "\u026c\u0002\u0002\u1294\u12a7\u0007\u026d\u0002\u0002\u1295\u12a7\u0007",
+ "\u026e\u0002\u0002\u1296\u12a7\u0007\u026f\u0002\u0002\u1297\u12a7\u0007",
+ "\u0270\u0002\u0002\u1298\u12a7\u0007\u0271\u0002\u0002\u1299\u12a7\u0007",
+ "\u0272\u0002\u0002\u129a\u12a7\u0007\u0273\u0002\u0002\u129b\u12a7\u0007",
+ "\u0274\u0002\u0002\u129c\u12a7\u0007\u0275\u0002\u0002\u129d\u12a7\u0007",
+ "\u0276\u0002\u0002\u129e\u12a7\u0007\u0277\u0002\u0002\u129f\u12a7\u0007",
+ "\u0278\u0002\u0002\u12a0\u12a7\u0007\u0279\u0002\u0002\u12a1\u12a7\u0007",
+ "\u027a\u0002\u0002\u12a2\u12a7\u0007\u027b\u0002\u0002\u12a3\u12a7\u0007",
+ "\u027c\u0002\u0002\u12a4\u12a7\u0007\u027d\u0002\u0002\u12a5\u12a7\u0007",
+ "\u027e\u0002\u0002\u12a6\u125f\u0003\u0002\u0002\u0002\u12a6\u1263\u0003",
+ "\u0002\u0002\u0002\u12a6\u1267\u0003\u0002\u0002\u0002\u12a6\u1271\u0003",
+ "\u0002\u0002\u0002\u12a6\u1272\u0003\u0002\u0002\u0002\u12a6\u1276\u0003",
+ "\u0002\u0002\u0002\u12a6\u1277\u0003\u0002\u0002\u0002\u12a6\u1278\u0003",
+ "\u0002\u0002\u0002\u12a6\u1279\u0003\u0002\u0002\u0002\u12a6\u127b\u0003",
+ "\u0002\u0002\u0002\u12a6\u127c\u0003\u0002\u0002\u0002\u12a6\u127d\u0003",
+ "\u0002\u0002\u0002\u12a6\u127f\u0003\u0002\u0002\u0002\u12a6\u1280\u0003",
+ "\u0002\u0002\u0002\u12a6\u1281\u0003\u0002\u0002\u0002\u12a6\u1282\u0003",
+ "\u0002\u0002\u0002\u12a6\u1283\u0003\u0002\u0002\u0002\u12a6\u1285\u0003",
+ "\u0002\u0002\u0002\u12a6\u1286\u0003\u0002\u0002\u0002\u12a6\u1288\u0003",
+ "\u0002\u0002\u0002\u12a6\u1289\u0003\u0002\u0002\u0002\u12a6\u128a\u0003",
+ "\u0002\u0002\u0002\u12a6\u128b\u0003\u0002\u0002\u0002\u12a6\u128c\u0003",
+ "\u0002\u0002\u0002\u12a6\u128d\u0003\u0002\u0002\u0002\u12a6\u128e\u0003",
+ "\u0002\u0002\u0002\u12a6\u128f\u0003\u0002\u0002\u0002\u12a6\u1290\u0003",
+ "\u0002\u0002\u0002\u12a6\u1291\u0003\u0002\u0002\u0002\u12a6\u1292\u0003",
+ "\u0002\u0002\u0002\u12a6\u1293\u0003\u0002\u0002\u0002\u12a6\u1294\u0003",
+ "\u0002\u0002\u0002\u12a6\u1295\u0003\u0002\u0002\u0002\u12a6\u1296\u0003",
+ "\u0002\u0002\u0002\u12a6\u1297\u0003\u0002\u0002\u0002\u12a6\u1298\u0003",
+ "\u0002\u0002\u0002\u12a6\u1299\u0003\u0002\u0002\u0002\u12a6\u129a\u0003",
+ "\u0002\u0002\u0002\u12a6\u129b\u0003\u0002\u0002\u0002\u12a6\u129c\u0003",
+ "\u0002\u0002\u0002\u12a6\u129d\u0003\u0002\u0002\u0002\u12a6\u129e\u0003",
+ "\u0002\u0002\u0002\u12a6\u129f\u0003\u0002\u0002\u0002\u12a6\u12a0\u0003",
+ "\u0002\u0002\u0002\u12a6\u12a1\u0003\u0002\u0002\u0002\u12a6\u12a2\u0003",
+ "\u0002\u0002\u0002\u12a6\u12a3\u0003\u0002\u0002\u0002\u12a6\u12a4\u0003",
+ "\u0002\u0002\u0002\u12a6\u12a5\u0003\u0002\u0002\u0002\u12a7\u01a3\u0003",
+ "\u0002\u0002\u0002\u12a8\u12b9\u0007\u03ed\u0002\u0002\u12a9\u12aa\u0007",
+ "\u03ed\u0002\u0002\u12aa\u12ab\u0007\u03fd\u0002\u0002\u12ab\u12b9\u0007",
+ "\u03ed\u0002\u0002\u12ac\u12ad\u0005\u020e\u0108\u0002\u12ad\u12ae\u0007",
+ "\u03fd\u0002\u0002\u12ae\u12af\u0007\u03ed\u0002\u0002\u12af\u12b9\u0003",
+ "\u0002\u0002\u0002\u12b0\u12b1\u0005\u020e\u0108\u0002\u12b1\u12b2\u0007",
+ "\u03fd\u0002\u0002\u12b2\u12b3\u0005\u020e\u0108\u0002\u12b3\u12b9\u0003",
+ "\u0002\u0002\u0002\u12b4\u12b5\u0005\u020e\u0108\u0002\u12b5\u12b6\u0005",
+ "\u0212\u010a\u0002\u12b6\u12b9\u0003\u0002\u0002\u0002\u12b7\u12b9\u0005",
+ "\u020e\u0108\u0002\u12b8\u12a8\u0003\u0002\u0002\u0002\u12b8\u12a9\u0003",
+ "\u0002\u0002\u0002\u12b8\u12ac\u0003\u0002\u0002\u0002\u12b8\u12b0\u0003",
+ "\u0002\u0002\u0002\u12b8\u12b4\u0003\u0002\u0002\u0002\u12b8\u12b7\u0003",
+ "\u0002\u0002\u0002\u12b9\u01a5\u0003\u0002\u0002\u0002\u12ba\u12bb\u0005",
+ "\u01fc\u00ff\u0002\u12bb\u12bc\u0007\u009f\u0002\u0002\u12bc\u12bd\u0005",
+ "\u01fc\u00ff\u0002\u12bd\u01a7\u0003\u0002\u0002\u0002\u12be\u12c0\u0007",
+ "\u000b\u0002\u0002\u12bf\u12c1\tA\u0002\u0002\u12c0\u12bf\u0003\u0002",
+ "\u0002\u0002\u12c0\u12c1\u0003\u0002\u0002\u0002\u12c1\u12c2\u0003\u0002",
+ "\u0002\u0002\u12c2\u12c3\u0007\u009c\u0002\u0002\u12c3\u12c4\u0005\u0230",
+ "\u0119\u0002\u12c4\u01a9\u0003\u0002\u0002\u0002\u12c5\u12c6\u0007\u0019",
+ "\u0002\u0002\u12c6\u12c7\u0007\u009c\u0002\u0002\u12c7\u12cb\u0005\u0230",
+ "\u0119\u0002\u12c8\u12ca\u0005\u01b2\u00da\u0002\u12c9\u12c8\u0003\u0002",
+ "\u0002\u0002\u12ca\u12cd\u0003\u0002\u0002\u0002\u12cb\u12c9\u0003\u0002",
+ "\u0002\u0002\u12cb\u12cc\u0003\u0002\u0002\u0002\u12cc\u01ab\u0003\u0002",
+ "\u0002\u0002\u12cd\u12cb\u0003\u0002\u0002\u0002\u12ce\u12cf\u0007\u0128",
+ "\u0002\u0002\u12cf\u12d0\u0007\u009c\u0002\u0002\u12d0\u12d2\u0005\u0230",
+ "\u0119\u0002\u12d1\u12d3\tB\u0002\u0002\u12d2\u12d1\u0003\u0002\u0002",
+ "\u0002\u12d2\u12d3\u0003\u0002\u0002\u0002\u12d3\u01ad\u0003\u0002\u0002",
+ "\u0002\u12d4\u12d6\u0007m\u0002\u0002\u12d5\u12d7\tA\u0002\u0002\u12d6",
+ "\u12d5\u0003\u0002\u0002\u0002\u12d6\u12d7\u0003\u0002\u0002\u0002\u12d7",
+ "\u12d8\u0003\u0002\u0002\u0002\u12d8\u12d9\u0007\u009c\u0002\u0002\u12d9",
+ "\u12da\u0005\u0230\u0119\u0002\u12da\u01af\u0003\u0002\u0002\u0002\u12db",
+ "\u12dd\u0007\u01f0\u0002\u0002\u12dc\u12de\tA\u0002\u0002\u12dd\u12dc",
+ "\u0003\u0002\u0002\u0002\u12dd\u12de\u0003\u0002\u0002\u0002\u12de\u12df",
+ "\u0003\u0002\u0002\u0002\u12df\u12e0\u0007\u009c\u0002\u0002\u12e0\u12e2",
+ "\u0005\u0230\u0119\u0002\u12e1\u12e3\u0007\u01e5\u0002\u0002\u12e2\u12e1",
+ "\u0003\u0002\u0002\u0002\u12e2\u12e3\u0003\u0002\u0002\u0002\u12e3\u12e5",
+ "\u0003\u0002\u0002\u0002\u12e4\u12e6\u0007\u0165\u0002\u0002\u12e5\u12e4",
+ "\u0003\u0002\u0002\u0002\u12e5\u12e6\u0003\u0002\u0002\u0002\u12e6\u12e8",
+ "\u0003\u0002\u0002\u0002\u12e7\u12e9\u0007\u023f\u0002\u0002\u12e8\u12e7",
+ "\u0003\u0002\u0002\u0002\u12e8\u12e9\u0003\u0002\u0002\u0002\u12e9\u01b1",
+ "\u0003\u0002\u0002\u0002\u12ea\u12eb\u0007<\u0002\u0002\u12eb\u12f2",
+ "\u0007\u023d\u0002\u0002\u12ec\u12f2\u0007\u01e5\u0002\u0002\u12ed\u12f2",
+ "\u0007\u0167\u0002\u0002\u12ee\u12f2\u0007\u01b2\u0002\u0002\u12ef\u12f2",
+ "\u0007\u0165\u0002\u0002\u12f0\u12f2\u0007\u0126\u0002\u0002\u12f1\u12ea",
+ "\u0003\u0002\u0002\u0002\u12f1\u12ec\u0003\u0002\u0002\u0002\u12f1\u12ed",
+ "\u0003\u0002\u0002\u0002\u12f1\u12ee\u0003\u0002\u0002\u0002\u12f1\u12ef",
+ "\u0003\u0002\u0002\u0002\u12f1\u12f0\u0003\u0002\u0002\u0002\u12f2\u01b3",
+ "\u0003\u0002\u0002\u0002\u12f3\u12f5\u0007 \u0002\u0002\u12f4\u12f6",
+ "\u0007\u0113\u0002\u0002\u12f5\u12f4\u0003\u0002\u0002\u0002\u12f5\u12f6",
+ "\u0003\u0002\u0002\u0002\u12f6\u12f7\u0003\u0002\u0002\u0002\u12f7\u12f8",
+ "\u0007\u0172\u0002\u0002\u12f8\u12f9\u0005\u020e\u0108\u0002\u12f9\u12fa",
+ "\u0007\u01fc\u0002\u0002\u12fa\u12fb\tC\u0002\u0002\u12fb\u12fc\u0007",
+ "\u0212\u0002\u0002\u12fc\u12fd\u0007\u040d\u0002\u0002\u12fd\u01b5\u0003",
+ "\u0002\u0002\u0002\u12fe\u12ff\u0007\u0183\u0002\u0002\u12ff\u1300\u0007",
+ "\u01d8\u0002\u0002\u1300\u1301\u0005\u020e\u0108\u0002\u1301\u1302\u0007",
+ "\u0212\u0002\u0002\u1302\u1303\u0007\u040d\u0002\u0002\u1303\u01b7\u0003",
+ "\u0002\u0002\u0002\u1304\u1305\u0007\u023a\u0002\u0002\u1305\u1306\u0007",
+ "\u01d8\u0002\u0002\u1306\u1307\u0005\u020e\u0108\u0002\u1307\u01b9\u0003",
+ "\u0002\u0002\u0002\u1308\u1309\u0007\u008c\u0002\u0002\u1309\u130a\u0005",
+ "\u01be\u00e0\u0002\u130a\u130b\tD\u0002\u0002\u130b\u1313\u0005\u025c",
+ "\u012f\u0002\u130c\u130d\u0007\u0400\u0002\u0002\u130d\u130e\u0005\u01be",
+ "\u00e0\u0002\u130e\u130f\tD\u0002\u0002\u130f\u1310\u0005\u025c\u012f",
+ "\u0002\u1310\u1312\u0003\u0002\u0002\u0002\u1311\u130c\u0003\u0002\u0002",
+ "\u0002\u1312\u1315\u0003\u0002\u0002\u0002\u1313\u1311\u0003\u0002\u0002",
+ "\u0002\u1313\u1314\u0003\u0002\u0002\u0002\u1314\u133c\u0003\u0002\u0002",
+ "\u0002\u1315\u1313\u0003\u0002\u0002\u0002\u1316\u131a\u0007\u008c\u0002",
+ "\u0002\u1317\u1318\u0007\u0018\u0002\u0002\u1318\u131b\u0007\u008c\u0002",
+ "\u0002\u1319\u131b\u0007\u02dd\u0002\u0002\u131a\u1317\u0003\u0002\u0002",
+ "\u0002\u131a\u1319\u0003\u0002\u0002\u0002\u131b\u131e\u0003\u0002\u0002",
+ "\u0002\u131c\u131f\u0005\u0200\u0101\u0002\u131d\u131f\u0007(\u0002",
+ "\u0002\u131e\u131c\u0003\u0002\u0002\u0002\u131e\u131d\u0003\u0002\u0002",
+ "\u0002\u131f\u133c\u0003\u0002\u0002\u0002\u1320\u1321\u0007\u008c\u0002",
+ "\u0002\u1321\u1328\u0007\u01be\u0002\u0002\u1322\u1325\u0005\u0200\u0101",
+ "\u0002\u1323\u1324\u0007\u001a\u0002\u0002\u1324\u1326\u0005\u0202\u0102",
+ "\u0002\u1325\u1323\u0003\u0002\u0002\u0002\u1325\u1326\u0003\u0002\u0002",
+ "\u0002\u1326\u1329\u0003\u0002\u0002\u0002\u1327\u1329\u0007(\u0002",
+ "\u0002\u1328\u1322\u0003\u0002\u0002\u0002\u1328\u1327\u0003\u0002\u0002",
+ "\u0002\u1329\u133c\u0003\u0002\u0002\u0002\u132a\u133c\u0005\u0192\u00ca",
+ "\u0002\u132b\u133c\u0005\u0116\u008c\u0002\u132c\u133c\u0005\u0114\u008b",
+ "\u0002\u132d\u132e\u0007\u008c\u0002\u0002\u132e\u132f\u0005\u01f4\u00fb",
+ "\u0002\u132f\u1330\tD\u0002\u0002\u1330\u1338\u0005\u025c\u012f\u0002",
+ "\u1331\u1332\u0007\u0400\u0002\u0002\u1332\u1333\u0005\u01f4\u00fb\u0002",
+ "\u1333\u1334\tD\u0002\u0002\u1334\u1335\u0005\u025c\u012f\u0002\u1335",
+ "\u1337\u0003\u0002\u0002\u0002\u1336\u1331\u0003\u0002\u0002\u0002\u1337",
+ "\u133a\u0003\u0002\u0002\u0002\u1338\u1336\u0003\u0002\u0002\u0002\u1338",
+ "\u1339\u0003\u0002\u0002\u0002\u1339\u133c\u0003\u0002\u0002\u0002\u133a",
+ "\u1338\u0003\u0002\u0002\u0002\u133b\u1308\u0003\u0002\u0002\u0002\u133b",
+ "\u1316\u0003\u0002\u0002\u0002\u133b\u1320\u0003\u0002\u0002\u0002\u133b",
+ "\u132a\u0003\u0002\u0002\u0002\u133b\u132b\u0003\u0002\u0002\u0002\u133b",
+ "\u132c\u0003\u0002\u0002\u0002\u133b\u132d\u0003\u0002\u0002\u0002\u133c",
+ "\u01bb\u0003\u0002\u0002\u0002\u133d\u133e\u0007\u008e\u0002\u0002\u133e",
+ "\u133f\t3\u0002\u0002\u133f\u13d5\u0007\u0196\u0002\u0002\u1340\u1341",
+ "\u0007\u008e\u0002\u0002\u1341\u1342\tE\u0002\u0002\u1342\u1345\u0007",
+ "\u015f\u0002\u0002\u1343\u1344\u0007I\u0002\u0002\u1344\u1346\u0007",
+ "\u040d\u0002\u0002\u1345\u1343\u0003\u0002\u0002\u0002\u1345\u1346\u0003",
+ "\u0002\u0002\u0002\u1346\u1349\u0003\u0002\u0002\u0002\u1347\u1348\u0007",
+ "?\u0002\u0002\u1348\u134a\u0005\u0214\u010b\u0002\u1349\u1347\u0003",
+ "\u0002\u0002\u0002\u1349\u134a\u0003\u0002\u0002\u0002\u134a\u1352\u0003",
+ "\u0002\u0002\u0002\u134b\u134f\u0007[\u0002\u0002\u134c\u134d\u0005",
+ "\u0214\u010b\u0002\u134d\u134e\u0007\u0400\u0002\u0002\u134e\u1350\u0003",
+ "\u0002\u0002\u0002\u134f\u134c\u0003\u0002\u0002\u0002\u134f\u1350\u0003",
+ "\u0002\u0002\u0002\u1350\u1351\u0003\u0002\u0002\u0002\u1351\u1353\u0005",
+ "\u0214\u010b\u0002\u1352\u134b\u0003\u0002\u0002\u0002\u1352\u1353\u0003",
+ "\u0002\u0002\u0002\u1353\u13d5\u0003\u0002\u0002\u0002\u1354\u1355\u0007",
+ "\u008e\u0002\u0002\u1355\u1357\u0005\u01c0\u00e1\u0002\u1356\u1358\u0005",
+ "\u01c2\u00e2\u0002\u1357\u1356\u0003\u0002\u0002\u0002\u1357\u1358\u0003",
+ "\u0002\u0002\u0002\u1358\u13d5\u0003\u0002\u0002\u0002\u1359\u135b\u0007",
+ "\u008e\u0002\u0002\u135a\u135c\u0007\u0171\u0002\u0002\u135b\u135a\u0003",
+ "\u0002\u0002\u0002\u135b\u135c\u0003\u0002\u0002\u0002\u135c\u135d\u0003",
+ "\u0002\u0002\u0002\u135d\u135e\t%\u0002\u0002\u135e\u135f\tF\u0002\u0002",
+ "\u135f\u1362\u0005\u01f6\u00fc\u0002\u1360\u1361\tF\u0002\u0002\u1361",
+ "\u1363\u0005\u020e\u0108\u0002\u1362\u1360\u0003\u0002\u0002\u0002\u1362",
+ "\u1363\u0003\u0002\u0002\u0002\u1363\u1365\u0003\u0002\u0002\u0002\u1364",
+ "\u1366\u0005\u01c2\u00e2\u0002\u1365\u1364\u0003\u0002\u0002\u0002\u1365",
+ "\u1366\u0003\u0002\u0002\u0002\u1366\u13d5\u0003\u0002\u0002\u0002\u1367",
+ "\u1368\u0007\u008e\u0002\u0002\u1368\u1369\u0007 \u0002\u0002\u1369",
+ "\u136b\t\u0002\u0002\u0002\u136a\u136c\u0005\u0246\u0124\u0002\u136b",
+ "\u136a\u0003\u0002\u0002\u0002\u136b\u136c\u0003\u0002\u0002\u0002\u136c",
+ "\u136d\u0003\u0002\u0002\u0002\u136d\u13d5\u0005\u020e\u0108\u0002\u136e",
+ "\u136f\u0007\u008e\u0002\u0002\u136f\u1370\u0007 \u0002\u0002\u1370",
+ "\u1371\tG\u0002\u0002\u1371\u13d5\u0005\u01f4\u00fb\u0002\u1372\u1373",
+ "\u0007\u008e\u0002\u0002\u1373\u1374\u0007 \u0002\u0002\u1374\u1375",
+ "\u0007\u023e\u0002\u0002\u1375\u13d5\u0005\u01fc\u00ff\u0002\u1376\u1377",
+ "\u0007\u008e\u0002\u0002\u1377\u1378\u0007\u0158\u0002\u0002\u1378\u1379",
+ "\u0005\u0204\u0103\u0002\u1379\u137a\tH\u0002\u0002\u137a\u13d5\u0003",
+ "\u0002\u0002\u0002\u137b\u137c\u0007\u008e\u0002\u0002\u137c\u13d5\u0005",
+ "\u01c4\u00e3\u0002\u137d\u137e\u0007\u008e\u0002\u0002\u137e\u137f\t",
+ "I\u0002\u0002\u137f\u1383\u0007[\u0002\u0002\u1380\u1381\u0005\u0214",
+ "\u010b\u0002\u1381\u1382\u0007\u0400\u0002\u0002\u1382\u1384\u0003\u0002",
+ "\u0002\u0002\u1383\u1380\u0003\u0002\u0002\u0002\u1383\u1384\u0003\u0002",
+ "\u0002\u0002\u1384\u1385\u0003\u0002\u0002\u0002\u1385\u13d5\u0005\u0214",
+ "\u010b\u0002\u1386\u1387\u0007\u008e\u0002\u0002\u1387\u1388\u0007\u00f1",
+ "\u0002\u0002\u1388\u1389\u0007\u03fe\u0002\u0002\u1389\u138a\u0007\u03ed",
+ "\u0002\u0002\u138a\u138b\u0007\u03ff\u0002\u0002\u138b\u13d5\tI\u0002",
+ "\u0002\u138c\u138d\u0007\u008e\u0002\u0002\u138d\u1390\u0005\u01c6\u00e4",
+ "\u0002\u138e\u138f\tF\u0002\u0002\u138f\u1391\u0005\u020e\u0108\u0002",
+ "\u1390\u138e\u0003\u0002\u0002\u0002\u1390\u1391\u0003\u0002\u0002\u0002",
+ "\u1391\u1393\u0003\u0002\u0002\u0002\u1392\u1394\u0005\u01c2\u00e2\u0002",
+ "\u1393\u1392\u0003\u0002\u0002\u0002\u1393\u1394\u0003\u0002\u0002\u0002",
+ "\u1394\u13d5\u0003\u0002\u0002\u0002\u1395\u1396\u0007\u008e\u0002\u0002",
+ "\u1396\u1397\tJ\u0002\u0002\u1397\u1398\u0007\u012f\u0002\u0002\u1398",
+ "\u13d5\u0005\u01f4\u00fb\u0002\u1399\u139a\u0007\u008e\u0002\u0002\u139a",
+ "\u139d\u0007\u0175\u0002\u0002\u139b\u139c\u0007<\u0002\u0002\u139c",
+ "\u139e\u0005\u01fc\u00ff\u0002\u139d\u139b\u0003\u0002\u0002\u0002\u139d",
+ "\u139e\u0003\u0002\u0002\u0002\u139e\u13d5\u0003\u0002\u0002\u0002\u139f",
+ "\u13a0\u0007\u008e\u0002\u0002\u13a0\u13a1\tK\u0002\u0002\u13a1\u13a2",
+ "\tF\u0002\u0002\u13a2\u13a5\u0005\u01f6\u00fc\u0002\u13a3\u13a4\tF\u0002",
+ "\u0002\u13a4\u13a6\u0005\u020e\u0108\u0002\u13a5\u13a3\u0003\u0002\u0002",
+ "\u0002\u13a5\u13a6\u0003\u0002\u0002\u0002\u13a6\u13a9\u0003\u0002\u0002",
+ "\u0002\u13a7\u13a8\u0007\u00ae\u0002\u0002\u13a8\u13aa\u0005\u025c\u012f",
+ "\u0002\u13a9\u13a7\u0003\u0002\u0002\u0002\u13a9\u13aa\u0003\u0002\u0002",
+ "\u0002\u13aa\u13d5\u0003\u0002\u0002\u0002\u13ab\u13ac\u0007\u008e\u0002",
+ "\u0002\u13ac\u13ad\u0007\u01cc\u0002\u0002\u13ad\u13b0\u0007\u025c\u0002",
+ "\u0002\u13ae\u13af\tF\u0002\u0002\u13af\u13b1\u0005\u020e\u0108\u0002",
+ "\u13b0\u13ae\u0003\u0002\u0002\u0002\u13b0\u13b1\u0003\u0002\u0002\u0002",
+ "\u13b1\u13b3\u0003\u0002\u0002\u0002\u13b2\u13b4\u0005\u01c2\u00e2\u0002",
+ "\u13b3\u13b2\u0003\u0002\u0002\u0002\u13b3\u13b4\u0003\u0002\u0002\u0002",
+ "\u13b4\u13d5\u0003\u0002\u0002\u0002\u13b5\u13b6\u0007\u008e\u0002\u0002",
+ "\u13b6\u13b7\u0007\u01e1\u0002\u0002\u13b7\u13bc\u0005\u01c8\u00e5\u0002",
+ "\u13b8\u13b9\u0007\u0400\u0002\u0002\u13b9\u13bb\u0005\u01c8\u00e5\u0002",
+ "\u13ba\u13b8\u0003\u0002\u0002\u0002\u13bb\u13be\u0003\u0002\u0002\u0002",
+ "\u13bc\u13ba\u0003\u0002\u0002\u0002\u13bc\u13bd\u0003\u0002\u0002\u0002",
+ "\u13bd\u13c2\u0003\u0002\u0002\u0002\u13be\u13bc\u0003\u0002\u0002\u0002",
+ "\u13bf\u13c0\u0007<\u0002\u0002\u13c0\u13c1\u0007\u01e4\u0002\u0002",
+ "\u13c1\u13c3\u0005\u0214\u010b\u0002\u13c2\u13bf\u0003\u0002\u0002\u0002",
+ "\u13c2\u13c3\u0003\u0002\u0002\u0002\u13c3\u13c4\u0003\u0002\u0002\u0002",
+ "\u13c4\u13c8\u0007[\u0002\u0002\u13c5\u13c6\u0005\u0214\u010b\u0002",
+ "\u13c6\u13c7\u0007\u0400\u0002\u0002\u13c7\u13c9\u0003\u0002\u0002\u0002",
+ "\u13c8\u13c5\u0003\u0002\u0002\u0002\u13c8\u13c9\u0003\u0002\u0002\u0002",
+ "\u13c9\u13ca\u0003\u0002\u0002\u0002\u13ca\u13cb\u0005\u0214\u010b\u0002",
+ "\u13cb\u13d5\u0003\u0002\u0002\u0002\u13cc\u13cd\u0007\u008e\u0002\u0002",
+ "\u13cd\u13ce\u0007\u020d\u0002\u0002\u13ce\u13d2\u0007\u0221\u0002\u0002",
+ "\u13cf\u13d0\u0007<\u0002\u0002\u13d0\u13d1\u0007\u0127\u0002\u0002",
+ "\u13d1\u13d3\u0007\u040d\u0002\u0002\u13d2\u13cf\u0003\u0002\u0002\u0002",
+ "\u13d2\u13d3\u0003\u0002\u0002\u0002\u13d3\u13d5\u0003\u0002\u0002\u0002",
+ "\u13d4\u133d\u0003\u0002\u0002\u0002\u13d4\u1340\u0003\u0002\u0002\u0002",
+ "\u13d4\u1354\u0003\u0002\u0002\u0002\u13d4\u1359\u0003\u0002\u0002\u0002",
+ "\u13d4\u1367\u0003\u0002\u0002\u0002\u13d4\u136e\u0003\u0002\u0002\u0002",
+ "\u13d4\u1372\u0003\u0002\u0002\u0002\u13d4\u1376\u0003\u0002\u0002\u0002",
+ "\u13d4\u137b\u0003\u0002\u0002\u0002\u13d4\u137d\u0003\u0002\u0002\u0002",
+ "\u13d4\u1386\u0003\u0002\u0002\u0002\u13d4\u138c\u0003\u0002\u0002\u0002",
+ "\u13d4\u1395\u0003\u0002\u0002\u0002\u13d4\u1399\u0003\u0002\u0002\u0002",
+ "\u13d4\u139f\u0003\u0002\u0002\u0002\u13d4\u13ab\u0003\u0002\u0002\u0002",
+ "\u13d4\u13b5\u0003\u0002\u0002\u0002\u13d4\u13cc\u0003\u0002\u0002\u0002",
+ "\u13d5\u01bd\u0003\u0002\u0002\u0002\u13d6\u13e1\u0007\u0418\u0002\u0002",
+ "\u13d7\u13e1\u0007\u0419\u0002\u0002\u13d8\u13d9\u0007\u0402\u0002\u0002",
+ "\u13d9\u13db\u0007\u0402\u0002\u0002\u13da\u13d8\u0003\u0002\u0002\u0002",
+ "\u13da\u13db\u0003\u0002\u0002\u0002\u13db\u13dc\u0003\u0002\u0002\u0002",
+ "\u13dc\u13de\tL\u0002\u0002\u13dd\u13da\u0003\u0002\u0002\u0002\u13dd",
+ "\u13de\u0003\u0002\u0002\u0002\u13de\u13df\u0003\u0002\u0002\u0002\u13df",
+ "\u13e1\u0005\u020e\u0108\u0002\u13e0\u13d6\u0003\u0002\u0002\u0002\u13e0",
+ "\u13d7\u0003\u0002\u0002\u0002\u13e0\u13dd\u0003\u0002\u0002\u0002\u13e1",
+ "\u01bf\u0003\u0002\u0002\u0002\u13e2\u13e3\u0007\u0018\u0002\u0002\u13e3",
+ "\u13f0\u0007\u008c\u0002\u0002\u13e4\u13f0\u0007\u02e0\u0002\u0002\u13e5",
+ "\u13f0\u0007&\u0002\u0002\u13e6\u13f0\u0007\u008a\u0002\u0002\u13e7",
+ "\u13e8\u0007\u0172\u0002\u0002\u13e8\u13f0\u0007\u0221\u0002\u0002\u13e9",
+ "\u13ea\u0007w\u0002\u0002\u13ea\u13f0\u0007\u0221\u0002\u0002\u13eb",
+ "\u13ed\t2\u0002\u0002\u13ec\u13eb\u0003\u0002\u0002\u0002\u13ec\u13ed",
+ "\u0003\u0002\u0002\u0002\u13ed\u13ee\u0003\u0002\u0002\u0002\u13ee\u13f0",
+ "\tM\u0002\u0002\u13ef\u13e2\u0003\u0002\u0002\u0002\u13ef\u13e4\u0003",
+ "\u0002\u0002\u0002\u13ef\u13e5\u0003\u0002\u0002\u0002\u13ef\u13e6\u0003",
+ "\u0002\u0002\u0002\u13ef\u13e7\u0003\u0002\u0002\u0002\u13ef\u13e9\u0003",
+ "\u0002\u0002\u0002\u13ef\u13ec\u0003\u0002\u0002\u0002\u13f0\u01c1\u0003",
+ "\u0002\u0002\u0002\u13f1\u13f2\u0007Z\u0002\u0002\u13f2\u13f6\u0007",
+ "\u040d\u0002\u0002\u13f3\u13f4\u0007\u00ae\u0002\u0002\u13f4\u13f6\u0005",
+ "\u025c\u012f\u0002\u13f5\u13f1\u0003\u0002\u0002\u0002\u13f5\u13f3\u0003",
+ "\u0002\u0002\u0002\u13f6\u01c3\u0003\u0002\u0002\u0002\u13f7\u13f9\u0007",
+ "\u0223\u0002\u0002\u13f8\u13f7\u0003\u0002\u0002\u0002\u13f8\u13f9\u0003",
+ "\u0002\u0002\u0002\u13f9\u13fa\u0003\u0002\u0002\u0002\u13fa\u1409\u0007",
+ "\u0159\u0002\u0002\u13fb\u13fc\u0007\u0197\u0002\u0002\u13fc\u1409\u0007",
+ "\u0221\u0002\u0002\u13fd\u1409\u0007\u01da\u0002\u0002\u13fe\u1409\u0007",
+ "\u0264\u0002\u0002\u13ff\u1401\u0007\u0171\u0002\u0002\u1400\u13ff\u0003",
+ "\u0002\u0002\u0002\u1400\u1401\u0003\u0002\u0002\u0002\u1401\u1402\u0003",
+ "\u0002\u0002\u0002\u1402\u1409\u0007\u01e0\u0002\u0002\u1403\u1409\u0007",
+ "\u01e2\u0002\u0002\u1404\u1405\u0007\u020d\u0002\u0002\u1405\u1409\u0007",
+ "\u017b\u0002\u0002\u1406\u1409\u0007\u0117\u0002\u0002\u1407\u1409\u0007",
+ "\u0141\u0002\u0002\u1408\u13f8\u0003\u0002\u0002\u0002\u1408\u13fb\u0003",
+ "\u0002\u0002\u0002\u1408\u13fd\u0003\u0002\u0002\u0002\u1408\u13fe\u0003",
+ "\u0002\u0002\u0002\u1408\u1400\u0003\u0002\u0002\u0002\u1408\u1403\u0003",
+ "\u0002\u0002\u0002\u1408\u1404\u0003\u0002\u0002\u0002\u1408\u1406\u0003",
+ "\u0002\u0002\u0002\u1408\u1407\u0003\u0002\u0002\u0002\u1409\u01c5\u0003",
+ "\u0002\u0002\u0002\u140a\u1413\u0007\u015f\u0002\u0002\u140b\u140c\u0007",
+ "\u009c\u0002\u0002\u140c\u1413\u0007\u0221\u0002\u0002\u140d\u140f\u0007",
+ "\u0171\u0002\u0002\u140e\u140d\u0003\u0002\u0002\u0002\u140e\u140f\u0003",
+ "\u0002\u0002\u0002\u140f\u1410\u0003\u0002\u0002\u0002\u1410\u1413\u0007",
+ "\u025c\u0002\u0002\u1411\u1413\u0007\u0235\u0002\u0002\u1412\u140a\u0003",
+ "\u0002\u0002\u0002\u1412\u140b\u0003\u0002\u0002\u0002\u1412\u140e\u0003",
+ "\u0002\u0002\u0002\u1412\u1411\u0003\u0002\u0002\u0002\u1413\u01c7\u0003",
+ "\u0002\u0002\u0002\u1414\u1421\u0007\b\u0002\u0002\u1415\u1416\u0007",
+ "\u011f\u0002\u0002\u1416\u1421\u0007\u0187\u0002\u0002\u1417\u1418\u0007",
+ "\u0140\u0002\u0002\u1418\u1421\u0007\u022c\u0002\u0002\u1419\u1421\u0007",
+ "\u0143\u0002\u0002\u141a\u1421\u0007\u0189\u0002\u0002\u141b\u1421\u0007",
+ "\u02ac\u0002\u0002\u141c\u141d\u0007\u01d1\u0002\u0002\u141d\u1421\u0007",
+ "\u0168\u0002\u0002\u141e\u1421\u0007\u0214\u0002\u0002\u141f\u1421\u0007",
+ "\u022b\u0002\u0002\u1420\u1414\u0003\u0002\u0002\u0002\u1420\u1415\u0003",
+ "\u0002\u0002\u0002\u1420\u1417\u0003\u0002\u0002\u0002\u1420\u1419\u0003",
+ "\u0002\u0002\u0002\u1420\u141a\u0003\u0002\u0002\u0002\u1420\u141b\u0003",
+ "\u0002\u0002\u0002\u1420\u141c\u0003\u0002\u0002\u0002\u1420\u141e\u0003",
+ "\u0002\u0002\u0002\u1420\u141f\u0003\u0002\u0002\u0002\u1421\u01c9\u0003",
+ "\u0002\u0002\u0002\u1422\u1423\u0007\u011d\u0002\u0002\u1423\u1424\u0007",
+ "\u040d\u0002\u0002\u1424\u01cb\u0003\u0002\u0002\u0002\u1425\u1426\u0007",
+ "\u0123\u0002\u0002\u1426\u1427\u0007J\u0002\u0002\u1427\u142c\u0005",
+ "\u01d8\u00ed\u0002\u1428\u1429\u0007\u0400\u0002\u0002\u1429\u142b\u0005",
+ "\u01d8\u00ed\u0002\u142a\u1428\u0003\u0002\u0002\u0002\u142b\u142e\u0003",
+ "\u0002\u0002\u0002\u142c\u142a\u0003\u0002\u0002\u0002\u142c\u142d\u0003",
+ "\u0002\u0002\u0002\u142d\u1436\u0003\u0002\u0002\u0002\u142e\u142c\u0003",
+ "\u0002\u0002\u0002\u142f\u1430\u0007u\u0002\u0002\u1430\u1433\u0007",
+ "\u03fe\u0002\u0002\u1431\u1434\u0005\u022e\u0118\u0002\u1432\u1434\u0007",
+ "\b\u0002\u0002\u1433\u1431\u0003\u0002\u0002\u0002\u1433\u1432\u0003",
+ "\u0002\u0002\u0002\u1434\u1435\u0003\u0002\u0002\u0002\u1435\u1437\u0007",
+ "\u03ff\u0002\u0002\u1436\u142f\u0003\u0002\u0002\u0002\u1436\u1437\u0003",
+ "\u0002\u0002\u0002\u1437\u1438\u0003\u0002\u0002\u0002\u1438\u1439\u0007",
+ "I\u0002\u0002\u1439\u143a\u0005\u020e\u0108\u0002\u143a\u01cd\u0003",
+ "\u0002\u0002\u0002\u143b\u143d\u0007\u016e\u0002\u0002\u143c\u143e\t",
+ "A\u0002\u0002\u143d\u143c\u0003\u0002\u0002\u0002\u143d\u143e\u0003",
+ "\u0002\u0002\u0002\u143e\u143f\u0003\u0002\u0002\u0002\u143f\u1444\u0005",
+ "\u01da\u00ee\u0002\u1440\u1441\u0007\u0400\u0002\u0002\u1441\u1443\u0005",
+ "\u01da\u00ee\u0002\u1442\u1440\u0003\u0002\u0002\u0002\u1443\u1446\u0003",
+ "\u0002\u0002\u0002\u1444\u1442\u0003\u0002\u0002\u0002\u1444\u1445\u0003",
+ "\u0002\u0002\u0002\u1445\u01cf\u0003\u0002\u0002\u0002\u1446\u1444\u0003",
+ "\u0002\u0002\u0002\u1447\u1449\u0007V\u0002\u0002\u1448\u144a\tN\u0002",
+ "\u0002\u1449\u1448\u0003\u0002\u0002\u0002\u1449\u144a\u0003\u0002\u0002",
+ "\u0002\u144a\u144c\u0003\u0002\u0002\u0002\u144b\u144d\u0005\u0214\u010b",
+ "\u0002\u144c\u144b\u0003\u0002\u0002\u0002\u144d\u144e\u0003\u0002\u0002",
+ "\u0002\u144e\u144c\u0003\u0002\u0002\u0002\u144e\u144f\u0003\u0002\u0002",
+ "\u0002\u144f\u01d1\u0003\u0002\u0002\u0002\u1450\u1451\u0007^\u0002",
+ "\u0002\u1451\u1452\u0007J\u0002\u0002\u1452\u1453\u0007P\u0002\u0002",
+ "\u1453\u1454\u0007\u0123\u0002\u0002\u1454\u1459\u0005\u01de\u00f0\u0002",
+ "\u1455\u1456\u0007\u0400\u0002\u0002\u1456\u1458\u0005\u01de\u00f0\u0002",
+ "\u1457\u1455\u0003\u0002\u0002\u0002\u1458\u145b\u0003\u0002\u0002\u0002",
+ "\u1459\u1457\u0003\u0002\u0002\u0002\u1459\u145a\u0003\u0002\u0002\u0002",
+ "\u145a\u01d3\u0003\u0002\u0002\u0002\u145b\u1459\u0003\u0002\u0002\u0002",
+ "\u145c\u145d\u0007\u01f9\u0002\u0002\u145d\u145e\u0007\u01e4\u0002\u0002",
+ "\u145e\u145f\u0007\u0123\u0002\u0002\u145f\u01d5\u0003\u0002\u0002\u0002",
+ "\u1460\u1461\u0007\u0262\u0002\u0002\u1461\u01d7\u0003\u0002\u0002\u0002",
+ "\u1462\u146a\u0005\u01f6\u00fc\u0002\u1463\u1465\t\u0014\u0002\u0002",
+ "\u1464\u1463\u0003\u0002\u0002\u0002\u1464\u1465\u0003\u0002\u0002\u0002",
+ "\u1465\u1466\u0003\u0002\u0002\u0002\u1466\u1467\u0007\u03fe\u0002\u0002",
+ "\u1467\u1468\u0005\u022e\u0118\u0002\u1468\u1469\u0007\u03ff\u0002\u0002",
+ "\u1469\u146b\u0003\u0002\u0002\u0002\u146a\u1464\u0003\u0002\u0002\u0002",
+ "\u146a\u146b\u0003\u0002\u0002\u0002\u146b\u01d9\u0003\u0002\u0002\u0002",
+ "\u146c\u147f\u0007\u014b\u0002\u0002\u146d\u147f\u0007\u017b\u0002\u0002",
+ "\u146e\u1470\tO\u0002\u0002\u146f\u146e\u0003\u0002\u0002\u0002\u146f",
+ "\u1470\u0003\u0002\u0002\u0002\u1470\u1471\u0003\u0002\u0002\u0002\u1471",
+ "\u147f\u0007\u0196\u0002\u0002\u1472\u147f\u0007\u01cd\u0002\u0002\u1473",
+ "\u147f\u0007\u0264\u0002\u0002\u1474\u1475\u0007\u01e4\u0002\u0002\u1475",
+ "\u147f\u0007\u0123\u0002\u0002\u1476\u147f\u0007\u0221\u0002\u0002\u1477",
+ "\u147f\u0007\u0240\u0002\u0002\u1478\u147c\u0007\u025c\u0002\u0002\u1479",
+ "\u147a\u0007\u00b0\u0002\u0002\u147a\u147b\u0007z\u0002\u0002\u147b",
+ "\u147d\u0007_\u0002\u0002\u147c\u1479\u0003\u0002\u0002\u0002\u147c",
+ "\u147d\u0003\u0002\u0002\u0002\u147d\u147f\u0003\u0002\u0002\u0002\u147e",
+ "\u146c\u0003\u0002\u0002\u0002\u147e\u146d\u0003\u0002\u0002\u0002\u147e",
+ "\u146f\u0003\u0002\u0002\u0002\u147e\u1472\u0003\u0002\u0002\u0002\u147e",
+ "\u1473\u0003\u0002\u0002\u0002\u147e\u1474\u0003\u0002\u0002\u0002\u147e",
+ "\u1476\u0003\u0002\u0002\u0002\u147e\u1477\u0003\u0002\u0002\u0002\u147e",
+ "\u1478\u0003\u0002\u0002\u0002\u147f\u148b\u0003\u0002\u0002\u0002\u1480",
+ "\u1481\u0007\u01ea\u0002\u0002\u1481\u1483\u0007\u0196\u0002\u0002\u1482",
+ "\u1484\u0005\u013c\u009f\u0002\u1483\u1482\u0003\u0002\u0002\u0002\u1483",
+ "\u1484\u0003\u0002\u0002\u0002\u1484\u148b\u0003\u0002\u0002\u0002\u1485",
+ "\u1486\u0007\u025c\u0002\u0002\u1486\u1488\u0005\u0230\u0119\u0002\u1487",
+ "\u1489\u0005\u01dc\u00ef\u0002\u1488\u1487\u0003\u0002\u0002\u0002\u1488",
+ "\u1489\u0003\u0002\u0002\u0002\u1489\u148b\u0003\u0002\u0002\u0002\u148a",
+ "\u147e\u0003\u0002\u0002\u0002\u148a\u1480\u0003\u0002\u0002\u0002\u148a",
+ "\u1485\u0003\u0002\u0002\u0002\u148b\u01db\u0003\u0002\u0002\u0002\u148c",
+ "\u148d\u0007\u00b0\u0002\u0002\u148d\u148e\u0007z\u0002\u0002\u148e",
+ "\u1492\u0007_\u0002\u0002\u148f\u1490\u0007<\u0002\u0002\u1490\u1492",
+ "\u0007\u0164\u0002\u0002\u1491\u148c\u0003\u0002\u0002\u0002\u1491\u148f",
+ "\u0003\u0002\u0002\u0002\u1492\u01dd\u0003\u0002\u0002\u0002\u1493\u149b",
+ "\u0005\u01f6\u00fc\u0002\u1494\u1495\u0007u\u0002\u0002\u1495\u1498",
+ "\u0007\u03fe\u0002\u0002\u1496\u1499\u0005\u022e\u0118\u0002\u1497\u1499",
+ "\u0007\b\u0002\u0002\u1498\u1496\u0003\u0002\u0002\u0002\u1498\u1497",
+ "\u0003\u0002\u0002\u0002\u1499\u149a\u0003\u0002\u0002\u0002\u149a\u149c",
+ "\u0007\u03ff\u0002\u0002\u149b\u1494\u0003\u0002\u0002\u0002\u149b\u149c",
+ "\u0003\u0002\u0002\u0002\u149c\u14a4\u0003\u0002\u0002\u0002\u149d\u149f",
+ "\t\u0014\u0002\u0002\u149e\u149d\u0003\u0002\u0002\u0002\u149e\u149f",
+ "\u0003\u0002\u0002\u0002\u149f\u14a0\u0003\u0002\u0002\u0002\u14a0\u14a1",
+ "\u0007\u03fe\u0002\u0002\u14a1\u14a2\u0005\u022e\u0118\u0002\u14a2\u14a3",
+ "\u0007\u03ff\u0002\u0002\u14a3\u14a5\u0003\u0002\u0002\u0002\u14a4\u149e",
+ "\u0003\u0002\u0002\u0002\u14a4\u14a5\u0003\u0002\u0002\u0002\u14a5\u14a8",
+ "\u0003\u0002\u0002\u0002\u14a6\u14a7\u0007H\u0002\u0002\u14a7\u14a9",
+ "\u0007\u0190\u0002\u0002\u14a8\u14a6\u0003\u0002\u0002\u0002\u14a8\u14a9",
+ "\u0003\u0002\u0002\u0002\u14a9\u01df\u0003\u0002\u0002\u0002\u14aa\u14ab",
+ "\tP\u0002\u0002\u14ab\u14ae\u0005\u01f6\u00fc\u0002\u14ac\u14af\u0005",
+ "\u020e\u0108\u0002\u14ad\u14af\u0007\u040d\u0002\u0002\u14ae\u14ac\u0003",
+ "\u0002\u0002\u0002\u14ae\u14ad\u0003\u0002\u0002\u0002\u14ae\u14af\u0003",
+ "\u0002\u0002\u0002\u14af\u01e1\u0003\u0002\u0002\u0002\u14b0\u14b4\t",
+ "P\u0002\u0002\u14b1\u14b2\tQ\u0002\u0002\u14b2\u14b3\u0007\u03f5\u0002",
+ "\u0002\u14b3\u14b5\tR\u0002\u0002\u14b4\u14b1\u0003\u0002\u0002\u0002",
+ "\u14b4\u14b5\u0003\u0002\u0002\u0002\u14b5\u14b6\u0003\u0002\u0002\u0002",
+ "\u14b6\u14b7\u0005\u01f2\u00fa\u0002\u14b7\u01e3\u0003\u0002\u0002\u0002",
+ "\u14b8\u14b9\u0007\u0179\u0002\u0002\u14b9\u14ba\u0007\u040d\u0002\u0002",
+ "\u14ba\u01e5\u0003\u0002\u0002\u0002\u14bb\u14bc\u0007\u00aa\u0002\u0002",
+ "\u14bc\u14bd\u0005\u020e\u0108\u0002\u14bd\u01e7\u0003\u0002\u0002\u0002",
+ "\u14be\u14c6\u0007\u008f\u0002\u0002\u14bf\u14c1\u0007\u0093\u0002\u0002",
+ "\u14c0\u14c2\u0007\u0242\u0002\u0002\u14c1\u14c0\u0003\u0002\u0002\u0002",
+ "\u14c1\u14c2\u0003\u0002\u0002\u0002\u14c2\u14c3\u0003\u0002\u0002\u0002",
+ "\u14c3\u14c7\u0005\u0218\u010d\u0002\u14c4\u14c7\u0007\u0415\u0002\u0002",
+ "\u14c5\u14c7\u0007\u0416\u0002\u0002\u14c6\u14bf\u0003\u0002\u0002\u0002",
+ "\u14c6\u14c4\u0003\u0002\u0002\u0002\u14c6\u14c5\u0003\u0002\u0002\u0002",
+ "\u14c7\u14d1\u0003\u0002\u0002\u0002\u14c8\u14c9\u0007\u008c\u0002\u0002",
+ "\u14c9\u14ce\u0005\u01ec\u00f7\u0002\u14ca\u14cb\u0007\u0400\u0002\u0002",
+ "\u14cb\u14cd\u0005\u01ec\u00f7\u0002\u14cc\u14ca\u0003\u0002\u0002\u0002",
+ "\u14cd\u14d0\u0003\u0002\u0002\u0002\u14ce\u14cc\u0003\u0002\u0002\u0002",
+ "\u14ce\u14cf\u0003\u0002\u0002\u0002\u14cf\u14d2\u0003\u0002\u0002\u0002",
+ "\u14d0\u14ce\u0003\u0002\u0002\u0002\u14d1\u14c8\u0003\u0002\u0002\u0002",
+ "\u14d1\u14d2\u0003\u0002\u0002\u0002\u14d2\u01e9\u0003\u0002\u0002\u0002",
+ "\u14d3\u14db\u0007\u0083\u0002\u0002\u14d4\u14d6\u0007\u0093\u0002\u0002",
+ "\u14d5\u14d7\u0007\u0242\u0002\u0002\u14d6\u14d5\u0003\u0002\u0002\u0002",
+ "\u14d6\u14d7\u0003\u0002\u0002\u0002\u14d7\u14d8\u0003\u0002\u0002\u0002",
+ "\u14d8\u14dc\u0005\u0218\u010d\u0002\u14d9\u14dc\u0007\u0415\u0002\u0002",
+ "\u14da\u14dc\u0007\u0416\u0002\u0002\u14db\u14d4\u0003\u0002\u0002\u0002",
+ "\u14db\u14d9\u0003\u0002\u0002\u0002\u14db\u14da\u0003\u0002\u0002\u0002",
+ "\u14db\u14dc\u0003\u0002\u0002\u0002\u14dc\u14e6\u0003\u0002\u0002\u0002",
+ "\u14dd\u14de\u0007\u008c\u0002\u0002\u14de\u14e3\u0005\u01ec\u00f7\u0002",
+ "\u14df\u14e0\u0007\u0400\u0002\u0002\u14e0\u14e2\u0005\u01ec\u00f7\u0002",
+ "\u14e1\u14df\u0003\u0002\u0002\u0002\u14e2\u14e5\u0003\u0002\u0002\u0002",
+ "\u14e3\u14e1\u0003\u0002\u0002\u0002\u14e3\u14e4\u0003\u0002\u0002\u0002",
+ "\u14e4\u14e7\u0003\u0002\u0002\u0002\u14e5\u14e3\u0003\u0002\u0002\u0002",
+ "\u14e6\u14dd\u0003\u0002\u0002\u0002\u14e6\u14e7\u0003\u0002\u0002\u0002",
+ "\u14e7\u01eb\u0003\u0002\u0002\u0002\u14e8\u14e9\tS\u0002\u0002\u14e9",
+ "\u14ec\u0007\u03f5\u0002\u0002\u14ea\u14ed\u0005\u0218\u010d\u0002\u14eb",
+ "\u14ed\u0007\u040e\u0002\u0002\u14ec\u14ea\u0003\u0002\u0002\u0002\u14ec",
+ "\u14eb\u0003\u0002\u0002\u0002\u14ed\u01ed\u0003\u0002\u0002\u0002\u14ee",
+ "\u14f0\u0007B\u0002\u0002\u14ef\u14f1\tT\u0002\u0002\u14f0\u14ef\u0003",
+ "\u0002\u0002\u0002\u14f0\u14f1\u0003\u0002\u0002\u0002\u14f1\u14f2\u0003",
+ "\u0002\u0002\u0002\u14f2\u1512\u0007.\u0002\u0002\u14f3\u14f4\u0005",
+ "\u01be\u00e0\u0002\u14f4\u14f5\u0007\u03f5\u0002\u0002\u14f5\u14fd\t",
+ "U\u0002\u0002\u14f6\u14f7\u0007\u0400\u0002\u0002\u14f7\u14f8\u0005",
+ "\u01be\u00e0\u0002\u14f8\u14f9\u0007\u03f5\u0002\u0002\u14f9\u14fa\t",
+ "U\u0002\u0002\u14fa\u14fc\u0003\u0002\u0002\u0002\u14fb\u14f6\u0003",
+ "\u0002\u0002\u0002\u14fc\u14ff\u0003\u0002\u0002\u0002\u14fd\u14fb\u0003",
+ "\u0002\u0002\u0002\u14fd\u14fe\u0003\u0002\u0002\u0002\u14fe\u1513\u0003",
+ "\u0002\u0002\u0002\u14ff\u14fd\u0003\u0002\u0002\u0002\u1500\u1503\u0007",
+ "\u001c\u0002\u0002\u1501\u1504\u0005\u0214\u010b\u0002\u1502\u1504\u0005",
+ "\u01be\u00e0\u0002\u1503\u1501\u0003\u0002\u0002\u0002\u1503\u1502\u0003",
+ "\u0002\u0002\u0002\u1504\u1505\u0003\u0002\u0002\u0002\u1505\u1506\u0005",
+ "\u01be\u00e0\u0002\u1506\u1507\u0007\u03f5\u0002\u0002\u1507\u150f\u0005",
+ "\u01f0\u00f9\u0002\u1508\u1509\u0007\u0400\u0002\u0002\u1509\u150a\u0005",
+ "\u01be\u00e0\u0002\u150a\u150b\u0007\u03f5\u0002\u0002\u150b\u150c\u0005",
+ "\u01f0\u00f9\u0002\u150c\u150e\u0003\u0002\u0002\u0002\u150d\u1508\u0003",
+ "\u0002\u0002\u0002\u150e\u1511\u0003\u0002\u0002\u0002\u150f\u150d\u0003",
+ "\u0002\u0002\u0002\u150f\u1510\u0003\u0002\u0002\u0002\u1510\u1513\u0003",
+ "\u0002\u0002\u0002\u1511\u150f\u0003\u0002\u0002\u0002\u1512\u14f3\u0003",
+ "\u0002\u0002\u0002\u1512\u1500\u0003\u0002\u0002\u0002\u1513\u01ef\u0003",
+ "\u0002\u0002\u0002\u1514\u1515\tV\u0002\u0002\u1515\u01f1\u0003\u0002",
+ "\u0002\u0002\u1516\u151c\u0005\u00b6\\\u0002\u1517\u151c\u0005\u00a8",
+ "U\u0002\u1518\u151c\u0005\u00aeX\u0002\u1519\u151c\u0005\u00b4[\u0002",
+ "\u151a\u151c\u0005\u00b8]\u0002\u151b\u1516\u0003\u0002\u0002\u0002",
+ "\u151b\u1517\u0003\u0002\u0002\u0002\u151b\u1518\u0003\u0002\u0002\u0002",
+ "\u151b\u1519\u0003\u0002\u0002\u0002\u151b\u151a\u0003\u0002\u0002\u0002",
+ "\u151c\u1521\u0003\u0002\u0002\u0002\u151d\u151e\u0007<\u0002\u0002",
+ "\u151e\u151f\u0007\u013a\u0002\u0002\u151f\u1521\u0005\u020e\u0108\u0002",
+ "\u1520\u151b\u0003\u0002\u0002\u0002\u1520\u151d\u0003\u0002\u0002\u0002",
+ "\u1521\u01f3\u0003\u0002\u0002\u0002\u1522\u1526\u0005\u020e\u0108\u0002",
+ "\u1523\u1527\u0007\u0414\u0002\u0002\u1524\u1525\u0007\u03fd\u0002\u0002",
+ "\u1525\u1527\u0005\u020e\u0108\u0002\u1526\u1523\u0003\u0002\u0002\u0002",
+ "\u1526\u1524\u0003\u0002\u0002\u0002\u1526\u1527\u0003\u0002\u0002\u0002",
+ "\u1527\u01f5\u0003\u0002\u0002\u0002\u1528\u1529\u0005\u01f4\u00fb\u0002",
+ "\u1529\u01f7\u0003\u0002\u0002\u0002\u152a\u152f\u0005\u020e\u0108\u0002",
+ "\u152b\u152d\u0005\u0212\u010a\u0002\u152c\u152e\u0005\u0212\u010a\u0002",
+ "\u152d\u152c\u0003\u0002\u0002\u0002\u152d\u152e\u0003\u0002\u0002\u0002",
+ "\u152e\u1530\u0003\u0002\u0002\u0002\u152f\u152b\u0003\u0002\u0002\u0002",
+ "\u152f\u1530\u0003\u0002\u0002\u0002\u1530\u01f9\u0003\u0002\u0002\u0002",
+ "\u1531\u1534\u0005\u020e\u0108\u0002\u1532\u1534\u0007\u040d\u0002\u0002",
+ "\u1533\u1531\u0003\u0002\u0002\u0002\u1533\u1532\u0003\u0002\u0002\u0002",
+ "\u1534\u1539\u0003\u0002\u0002\u0002\u1535\u1536\u0007\u03fe\u0002\u0002",
+ "\u1536\u1537\u0005\u0214\u010b\u0002\u1537\u1538\u0007\u03ff\u0002\u0002",
+ "\u1538\u153a\u0003\u0002\u0002\u0002\u1539\u1535\u0003\u0002\u0002\u0002",
+ "\u1539\u153a\u0003\u0002\u0002\u0002\u153a\u153c\u0003\u0002\u0002\u0002",
+ "\u153b\u153d\t,\u0002\u0002\u153c\u153b\u0003\u0002\u0002\u0002\u153c",
+ "\u153d\u0003\u0002\u0002\u0002\u153d\u01fb\u0003\u0002\u0002\u0002\u153e",
+ "\u153f\tW\u0002\u0002\u153f\u01fd\u0003\u0002\u0002\u0002\u1540\u1541",
+ "\tX\u0002\u0002\u1541\u01ff\u0003\u0002\u0002\u0002\u1542\u1547\u0007",
+ "\u00d2\u0002\u0002\u1543\u1547\u0005\u026c\u0137\u0002\u1544\u1547\u0007",
+ "\u040d\u0002\u0002\u1545\u1547\u0007\u040a\u0002\u0002\u1546\u1542\u0003",
+ "\u0002\u0002\u0002\u1546\u1543\u0003\u0002\u0002\u0002\u1546\u1544\u0003",
+ "\u0002\u0002\u0002\u1546\u1545\u0003\u0002\u0002\u0002\u1547\u0201\u0003",
+ "\u0002\u0002\u0002\u1548\u154b\u0005\u020e\u0108\u0002\u1549\u154b\u0007",
+ "\u040d\u0002\u0002\u154a\u1548\u0003\u0002\u0002\u0002\u154a\u1549\u0003",
+ "\u0002\u0002\u0002\u154b\u0203\u0003\u0002\u0002\u0002\u154c\u154d\t",
+ "Y\u0002\u0002\u154d\u0205\u0003\u0002\u0002\u0002\u154e\u154f\u0005",
+ "\u0214\u010b\u0002\u154f\u1550\u0007\u03f2\u0002\u0002\u1550\u1551\u0005",
+ "\u0214\u010b\u0002\u1551\u1552\u0007\u03f2\u0002\u0002\u1552\u1553\u0005",
+ "\u0214\u010b\u0002\u1553\u1554\u0007\u03f2\u0002\u0002\u1554\u1555\u0005",
+ "\u0214\u010b\u0002\u1555\u1556\u0007\u03f2\u0002\u0002\u1556\u155c\u0005",
+ "\u0214\u010b\u0002\u1557\u1558\u0007\u0409\u0002\u0002\u1558\u1559\u0005",
+ "\u0214\u010b\u0002\u1559\u155a\u0007\u03f2\u0002\u0002\u155a\u155b\u0005",
+ "\u0214\u010b\u0002\u155b\u155d\u0003\u0002\u0002\u0002\u155c\u1557\u0003",
+ "\u0002\u0002\u0002\u155d\u155e\u0003\u0002\u0002\u0002\u155e\u155c\u0003",
+ "\u0002\u0002\u0002\u155e\u155f\u0003\u0002\u0002\u0002\u155f\u0207\u0003",
+ "\u0002\u0002\u0002\u1560\u1567\u0005\u020a\u0106\u0002\u1561\u1562\u0007",
+ "\u0400\u0002\u0002\u1562\u1565\u0005\u020a\u0106\u0002\u1563\u1564\u0007",
+ "\u0400\u0002\u0002\u1564\u1566\u0005\u0214\u010b\u0002\u1565\u1563\u0003",
+ "\u0002\u0002\u0002\u1565\u1566\u0003\u0002\u0002\u0002\u1566\u1568\u0003",
+ "\u0002\u0002\u0002\u1567\u1561\u0003\u0002\u0002\u0002\u1567\u1568\u0003",
+ "\u0002\u0002\u0002\u1568\u0209\u0003\u0002\u0002\u0002\u1569\u1571\u0007",
+ "\u040d\u0002\u0002\u156a\u1571\u0007\u0412\u0002\u0002\u156b\u156d\u0007",
+ "\u040f\u0002\u0002\u156c\u156b\u0003\u0002\u0002\u0002\u156d\u156e\u0003",
+ "\u0002\u0002\u0002\u156e\u156c\u0003\u0002\u0002\u0002\u156e\u156f\u0003",
+ "\u0002\u0002\u0002\u156f\u1571\u0003\u0002\u0002\u0002\u1570\u1569\u0003",
+ "\u0002\u0002\u0002\u1570\u156a\u0003\u0002\u0002\u0002\u1570\u156c\u0003",
+ "\u0002\u0002\u0002\u1571\u020b\u0003\u0002\u0002\u0002\u1572\u1575\u0005",
+ "\u020e\u0108\u0002\u1573\u1575\u0007\u040d\u0002\u0002\u1574\u1572\u0003",
+ "\u0002\u0002\u0002\u1574\u1573\u0003\u0002\u0002\u0002\u1575\u020d\u0003",
+ "\u0002\u0002\u0002\u1576\u157a\u0005\u0210\u0109\u0002\u1577\u157a\u0007",
+ "\u0416\u0002\u0002\u1578\u157a\u0007\u040a\u0002\u0002\u1579\u1576\u0003",
+ "\u0002\u0002\u0002\u1579\u1577\u0003\u0002\u0002\u0002\u1579\u1578\u0003",
+ "\u0002\u0002\u0002\u157a\u020f\u0003\u0002\u0002\u0002\u157b\u1585\u0007",
+ "\u0415\u0002\u0002\u157c\u1585\u0005\u026c\u0137\u0002\u157d\u1585\u0005",
+ "\u026e\u0138\u0002\u157e\u1585\u0005\u0204\u0103\u0002\u157f\u1585\u0005",
+ "\u0270\u0139\u0002\u1580\u1585\u0005\u0272\u013a\u0002\u1581\u1585\u0005",
+ "\u0274\u013b\u0002\u1582\u1585\u0005\u0276\u013c\u0002\u1583\u1585\u0005",
+ "\u0278\u013d\u0002\u1584\u157b\u0003\u0002\u0002\u0002\u1584\u157c\u0003",
+ "\u0002\u0002\u0002\u1584\u157d\u0003\u0002\u0002\u0002\u1584\u157e\u0003",
+ "\u0002\u0002\u0002\u1584\u157f\u0003\u0002\u0002\u0002\u1584\u1580\u0003",
+ "\u0002\u0002\u0002\u1584\u1581\u0003\u0002\u0002\u0002\u1584\u1582\u0003",
+ "\u0002\u0002\u0002\u1584\u1583\u0003\u0002\u0002\u0002\u1585\u0211\u0003",
+ "\u0002\u0002\u0002\u1586\u158a\u0007\u0414\u0002\u0002\u1587\u1588\u0007",
+ "\u03fd\u0002\u0002\u1588\u158a\u0005\u020e\u0108\u0002\u1589\u1586\u0003",
+ "\u0002\u0002\u0002\u1589\u1587\u0003\u0002\u0002\u0002\u158a\u0213\u0003",
+ "\u0002\u0002\u0002\u158b\u158c\tZ\u0002\u0002\u158c\u0215\u0003\u0002",
+ "\u0002\u0002\u158d\u1590\u0007\u040b\u0002\u0002\u158e\u1590\u0005\u0214",
+ "\u010b\u0002\u158f\u158d\u0003\u0002\u0002\u0002\u158f\u158e\u0003\u0002",
+ "\u0002\u0002\u1590\u0217\u0003\u0002\u0002\u0002\u1591\u1593\u0007\u0413",
+ "\u0002\u0002\u1592\u1591\u0003\u0002\u0002\u0002\u1592\u1593\u0003\u0002",
+ "\u0002\u0002\u1593\u1594\u0003\u0002\u0002\u0002\u1594\u1597\u0007\u040d",
+ "\u0002\u0002\u1595\u1597\u0007\u040c\u0002\u0002\u1596\u1592\u0003\u0002",
+ "\u0002\u0002\u1596\u1595\u0003\u0002\u0002\u0002\u1597\u1599\u0003\u0002",
+ "\u0002\u0002\u1598\u159a\u0007\u040d\u0002\u0002\u1599\u1598\u0003\u0002",
+ "\u0002\u0002\u159a\u159b\u0003\u0002\u0002\u0002\u159b\u1599\u0003\u0002",
+ "\u0002\u0002\u159b\u159c\u0003\u0002\u0002\u0002\u159c\u15a9\u0003\u0002",
+ "\u0002\u0002\u159d\u159f\u0007\u0413\u0002\u0002\u159e\u159d\u0003\u0002",
+ "\u0002\u0002\u159e\u159f\u0003\u0002\u0002\u0002\u159f\u15a0\u0003\u0002",
+ "\u0002\u0002\u15a0\u15a3\u0007\u040d\u0002\u0002\u15a1\u15a3\u0007\u040c",
+ "\u0002\u0002\u15a2\u159e\u0003\u0002\u0002\u0002\u15a2\u15a1\u0003\u0002",
+ "\u0002\u0002\u15a3\u15a6\u0003\u0002\u0002\u0002\u15a4\u15a5\u0007\u001a",
+ "\u0002\u0002\u15a5\u15a7\u0005\u0202\u0102\u0002\u15a6\u15a4\u0003\u0002",
+ "\u0002\u0002\u15a6\u15a7\u0003\u0002\u0002\u0002\u15a7\u15a9\u0003\u0002",
+ "\u0002\u0002\u15a8\u1596\u0003\u0002\u0002\u0002\u15a8\u15a2\u0003\u0002",
+ "\u0002\u0002\u15a9\u0219\u0003\u0002\u0002\u0002\u15aa\u15ab\t[\u0002",
+ "\u0002\u15ab\u021b\u0003\u0002\u0002\u0002\u15ac\u15ae\u0007\u0413\u0002",
+ "\u0002\u15ad\u15ac\u0003\u0002\u0002\u0002\u15ad\u15ae\u0003\u0002\u0002",
+ "\u0002\u15ae\u15af\u0003\u0002\u0002\u0002\u15af\u15b0\u0007\u040f\u0002",
+ "\u0002\u15b0\u021d\u0003\u0002\u0002\u0002\u15b1\u15b3\u0007h\u0002",
+ "\u0002\u15b2\u15b1\u0003\u0002\u0002\u0002\u15b2\u15b3\u0003\u0002\u0002",
+ "\u0002\u15b3\u15b4\u0003\u0002\u0002\u0002\u15b4\u15b5\t\\\u0002\u0002",
+ "\u15b5\u021f\u0003\u0002\u0002\u0002\u15b6\u15c3\u0005\u0218\u010d\u0002",
+ "\u15b7\u15c3\u0005\u0214\u010b\u0002\u15b8\u15b9\u0007\u03f2\u0002\u0002",
+ "\u15b9\u15c3\u0005\u0214\u010b\u0002\u15ba\u15c3\u0005\u021c\u010f\u0002",
+ "\u15bb\u15c3\u0005\u021a\u010e\u0002\u15bc\u15c3\u0007\u0410\u0002\u0002",
+ "\u15bd\u15c3\u0007\u0412\u0002\u0002\u15be\u15c0\u0007h\u0002\u0002",
+ "\u15bf\u15be\u0003\u0002\u0002\u0002\u15bf\u15c0\u0003\u0002\u0002\u0002",
+ "\u15c0\u15c1\u0003\u0002\u0002\u0002\u15c1\u15c3\t\\\u0002\u0002\u15c2",
+ "\u15b6\u0003\u0002\u0002\u0002\u15c2\u15b7\u0003\u0002\u0002\u0002\u15c2",
+ "\u15b8\u0003\u0002\u0002\u0002\u15c2\u15ba\u0003\u0002\u0002\u0002\u15c2",
+ "\u15bb\u0003\u0002\u0002\u0002\u15c2\u15bc\u0003\u0002\u0002\u0002\u15c2",
+ "\u15bd\u0003\u0002\u0002\u0002\u15c2\u15bf\u0003\u0002\u0002\u0002\u15c3",
+ "\u0221\u0003\u0002\u0002\u0002\u15c4\u15c6\t]\u0002\u0002\u15c5\u15c7",
+ "\u0005\u0228\u0115\u0002\u15c6\u15c5\u0003\u0002\u0002\u0002\u15c6\u15c7",
+ "\u0003\u0002\u0002\u0002\u15c7\u15c9\u0003\u0002\u0002\u0002\u15c8\u15ca",
+ "\u0007\u00d2\u0002\u0002\u15c9\u15c8\u0003\u0002\u0002\u0002\u15c9\u15ca",
+ "\u0003\u0002\u0002\u0002\u15ca\u15d1\u0003\u0002\u0002\u0002\u15cb\u15cc",
+ "\u0007\u0018\u0002\u0002\u15cc\u15cf\u0007\u008c\u0002\u0002\u15cd\u15cf",
+ "\u0007\u02dd\u0002\u0002\u15ce\u15cb\u0003\u0002\u0002\u0002\u15ce\u15cd",
+ "\u0003\u0002\u0002\u0002\u15cf\u15d0\u0003\u0002\u0002\u0002\u15d0\u15d2",
+ "\u0005\u0200\u0101\u0002\u15d1\u15ce\u0003\u0002\u0002\u0002\u15d1\u15d2",
+ "\u0003\u0002\u0002\u0002\u15d2\u15d5\u0003\u0002\u0002\u0002\u15d3\u15d4",
+ "\u0007\u001a\u0002\u0002\u15d4\u15d6\u0005\u0202\u0102\u0002\u15d5\u15d3",
+ "\u0003\u0002\u0002\u0002\u15d5\u15d6\u0003\u0002\u0002\u0002\u15d6\u1644",
+ "\u0003\u0002\u0002\u0002\u15d7\u15d8\u0007\u00d1\u0002\u0002\u15d8\u15da",
+ "\t^\u0002\u0002\u15d9\u15db\u0005\u0228\u0115\u0002\u15da\u15d9\u0003",
+ "\u0002\u0002\u0002\u15da\u15db\u0003\u0002\u0002\u0002\u15db\u15dd\u0003",
+ "\u0002\u0002\u0002\u15dc\u15de\u0007\u00d2\u0002\u0002\u15dd\u15dc\u0003",
+ "\u0002\u0002\u0002\u15dd\u15de\u0003\u0002\u0002\u0002\u15de\u1644\u0003",
+ "\u0002\u0002\u0002\u15df\u15e0\u0007\u01bf\u0002\u0002\u15e0\u15e2\u0007",
+ "\u00cf\u0002\u0002\u15e1\u15e3\u0005\u0228\u0115\u0002\u15e2\u15e1\u0003",
+ "\u0002\u0002\u0002\u15e2\u15e3\u0003\u0002\u0002\u0002\u15e3\u15e5\u0003",
+ "\u0002\u0002\u0002\u15e4\u15e6\u0007\u00d2\u0002\u0002\u15e5\u15e4\u0003",
+ "\u0002\u0002\u0002\u15e5\u15e6\u0003\u0002\u0002\u0002\u15e6\u1644\u0003",
+ "\u0002\u0002\u0002\u15e7\u15e8\u0007\u00d1\u0002\u0002\u15e8\u15e9\t",
+ "_\u0002\u0002\u15e9\u15eb\u0007\u00de\u0002\u0002\u15ea\u15ec\u0005",
+ "\u0228\u0115\u0002\u15eb\u15ea\u0003\u0002\u0002\u0002\u15eb\u15ec\u0003",
+ "\u0002\u0002\u0002\u15ec\u15ee\u0003\u0002\u0002\u0002\u15ed\u15ef\u0007",
+ "\u00d2\u0002\u0002\u15ee\u15ed\u0003\u0002\u0002\u0002\u15ee\u15ef\u0003",
+ "\u0002\u0002\u0002\u15ef\u1644\u0003\u0002\u0002\u0002\u15f0\u15f2\t",
+ "`\u0002\u0002\u15f1\u15f3\u0005\u0228\u0115\u0002\u15f2\u15f1\u0003",
+ "\u0002\u0002\u0002\u15f2\u15f3\u0003\u0002\u0002\u0002\u15f3\u15f5\u0003",
+ "\u0002\u0002\u0002\u15f4\u15f6\ta\u0002\u0002\u15f5\u15f4\u0003\u0002",
+ "\u0002\u0002\u15f5\u15f6\u0003\u0002\u0002\u0002\u15f6\u15f8\u0003\u0002",
+ "\u0002\u0002\u15f7\u15f9\u0007\u00b3\u0002\u0002\u15f8\u15f7\u0003\u0002",
+ "\u0002\u0002\u15f8\u15f9\u0003\u0002\u0002\u0002\u15f9\u1644\u0003\u0002",
+ "\u0002\u0002\u15fa\u15fc\u0007\u00c0\u0002\u0002\u15fb\u15fd\u0005\u022a",
+ "\u0116\u0002\u15fc\u15fb\u0003\u0002\u0002\u0002\u15fc\u15fd\u0003\u0002",
+ "\u0002\u0002\u15fd\u15ff\u0003\u0002\u0002\u0002\u15fe\u1600\ta\u0002",
+ "\u0002\u15ff\u15fe\u0003\u0002\u0002\u0002\u15ff\u1600\u0003\u0002\u0002",
+ "\u0002\u1600\u1602\u0003\u0002\u0002\u0002\u1601\u1603\u0007\u00b3\u0002",
+ "\u0002\u1602\u1601\u0003\u0002\u0002\u0002\u1602\u1603\u0003\u0002\u0002",
+ "\u0002\u1603\u1644\u0003\u0002\u0002\u0002\u1604\u1606\u0007\u00c1\u0002",
+ "\u0002\u1605\u1607\u0007\u00c2\u0002\u0002\u1606\u1605\u0003\u0002\u0002",
+ "\u0002\u1606\u1607\u0003\u0002\u0002\u0002\u1607\u1609\u0003\u0002\u0002",
+ "\u0002\u1608\u160a\u0005\u022a\u0116\u0002\u1609\u1608\u0003\u0002\u0002",
+ "\u0002\u1609\u160a\u0003\u0002\u0002\u0002\u160a\u160c\u0003\u0002\u0002",
+ "\u0002\u160b\u160d\ta\u0002\u0002\u160c\u160b\u0003\u0002\u0002\u0002",
+ "\u160c\u160d\u0003\u0002\u0002\u0002\u160d\u160f\u0003\u0002\u0002\u0002",
+ "\u160e\u1610\u0007\u00b3\u0002\u0002\u160f\u160e\u0003\u0002\u0002\u0002",
+ "\u160f\u1610\u0003\u0002\u0002\u0002\u1610\u1644\u0003\u0002\u0002\u0002",
+ "\u1611\u1613\tb\u0002\u0002\u1612\u1614\u0005\u022c\u0117\u0002\u1613",
+ "\u1612\u0003\u0002\u0002\u0002\u1613\u1614\u0003\u0002\u0002\u0002\u1614",
+ "\u1616\u0003\u0002\u0002\u0002\u1615\u1617\ta\u0002\u0002\u1616\u1615",
+ "\u0003\u0002\u0002\u0002\u1616\u1617\u0003\u0002\u0002\u0002\u1617\u1619",
+ "\u0003\u0002\u0002\u0002\u1618\u161a\u0007\u00b3\u0002\u0002\u1619\u1618",
+ "\u0003\u0002\u0002\u0002\u1619\u161a\u0003\u0002\u0002\u0002\u161a\u1644",
+ "\u0003\u0002\u0002\u0002\u161b\u1644\tc\u0002\u0002\u161c\u161e\td\u0002",
+ "\u0002\u161d\u161f\u0005\u0228\u0115\u0002\u161e\u161d\u0003\u0002\u0002",
+ "\u0002\u161e\u161f\u0003\u0002\u0002\u0002\u161f\u1644\u0003\u0002\u0002",
+ "\u0002\u1620\u1621\te\u0002\u0002\u1621\u1623\u0005\u0224\u0113\u0002",
+ "\u1622\u1624\u0007\u00d2\u0002\u0002\u1623\u1622\u0003\u0002\u0002\u0002",
+ "\u1623\u1624\u0003\u0002\u0002\u0002\u1624\u162b\u0003\u0002\u0002\u0002",
+ "\u1625\u1626\u0007\u0018\u0002\u0002\u1626\u1629\u0007\u008c\u0002\u0002",
+ "\u1627\u1629\u0007\u02dd\u0002\u0002\u1628\u1625\u0003\u0002\u0002\u0002",
+ "\u1628\u1627\u0003\u0002\u0002\u0002\u1629\u162a\u0003\u0002\u0002\u0002",
+ "\u162a\u162c\u0005\u0200\u0101\u0002\u162b\u1628\u0003\u0002\u0002\u0002",
+ "\u162b\u162c\u0003\u0002\u0002\u0002\u162c\u1644\u0003\u0002\u0002\u0002",
+ "\u162d\u1644\tf\u0002\u0002\u162e\u1630\u0007\u00d7\u0002\u0002\u162f",
+ "\u1631\u0007\u00cf\u0002\u0002\u1630\u162f\u0003\u0002\u0002\u0002\u1630",
+ "\u1631\u0003\u0002\u0002\u0002\u1631\u1633\u0003\u0002\u0002\u0002\u1632",
+ "\u1634\u0007\u00d2\u0002\u0002\u1633\u1632\u0003\u0002\u0002\u0002\u1633",
+ "\u1634\u0003\u0002\u0002\u0002\u1634\u163b\u0003\u0002\u0002\u0002\u1635",
+ "\u1636\u0007\u0018\u0002\u0002\u1636\u1639\u0007\u008c\u0002\u0002\u1637",
+ "\u1639\u0007\u02dd\u0002\u0002\u1638\u1635\u0003\u0002\u0002\u0002\u1638",
+ "\u1637\u0003\u0002\u0002\u0002\u1639\u163a\u0003\u0002\u0002\u0002\u163a",
+ "\u163c\u0005\u0200\u0101\u0002\u163b\u1638\u0003\u0002\u0002\u0002\u163b",
+ "\u163c\u0003\u0002\u0002\u0002\u163c\u163f\u0003\u0002\u0002\u0002\u163d",
+ "\u163e\u0007\u001a\u0002\u0002\u163e\u1640\u0005\u0202\u0102\u0002\u163f",
+ "\u163d\u0003\u0002\u0002\u0002\u163f\u1640\u0003\u0002\u0002\u0002\u1640",
+ "\u1644\u0003\u0002\u0002\u0002\u1641\u1642\u0007\u00d7\u0002\u0002\u1642",
+ "\u1644\u0007\u00d3\u0002\u0002\u1643\u15c4\u0003\u0002\u0002\u0002\u1643",
+ "\u15d7\u0003\u0002\u0002\u0002\u1643\u15df\u0003\u0002\u0002\u0002\u1643",
+ "\u15e7\u0003\u0002\u0002\u0002\u1643\u15f0\u0003\u0002\u0002\u0002\u1643",
+ "\u15fa\u0003\u0002\u0002\u0002\u1643\u1604\u0003\u0002\u0002\u0002\u1643",
+ "\u1611\u0003\u0002\u0002\u0002\u1643\u161b\u0003\u0002\u0002\u0002\u1643",
+ "\u161c\u0003\u0002\u0002\u0002\u1643\u1620\u0003\u0002\u0002\u0002\u1643",
+ "\u162d\u0003\u0002\u0002\u0002\u1643\u162e\u0003\u0002\u0002\u0002\u1643",
+ "\u1641\u0003\u0002\u0002\u0002\u1644\u0223\u0003\u0002\u0002\u0002\u1645",
+ "\u1646\u0007\u03fe\u0002\u0002\u1646\u164b\u0007\u040d\u0002\u0002\u1647",
+ "\u1648\u0007\u0400\u0002\u0002\u1648\u164a\u0007\u040d\u0002\u0002\u1649",
+ "\u1647\u0003\u0002\u0002\u0002\u164a\u164d\u0003\u0002\u0002\u0002\u164b",
+ "\u1649\u0003\u0002\u0002\u0002\u164b\u164c\u0003\u0002\u0002\u0002\u164c",
+ "\u164e\u0003\u0002\u0002\u0002\u164d\u164b\u0003\u0002\u0002\u0002\u164e",
+ "\u164f\u0007\u03ff\u0002\u0002\u164f\u0225\u0003\u0002\u0002\u0002\u1650",
+ "\u1652\tg\u0002\u0002\u1651\u1653\u0005\u0228\u0115\u0002\u1652\u1651",
+ "\u0003\u0002\u0002\u0002\u1652\u1653\u0003\u0002\u0002\u0002\u1653\u166a",
+ "\u0003\u0002\u0002\u0002\u1654\u1656\u0007\u00ce\u0002\u0002\u1655\u1657",
+ "\u0005\u0228\u0115\u0002\u1656\u1655\u0003\u0002\u0002\u0002\u1656\u1657",
+ "\u0003\u0002\u0002\u0002\u1657\u165e\u0003\u0002\u0002\u0002\u1658\u1659",
+ "\u0007\u0018\u0002\u0002\u1659\u165c\u0007\u008c\u0002\u0002\u165a\u165c",
+ "\u0007\u02dd\u0002\u0002\u165b\u1658\u0003\u0002\u0002\u0002\u165b\u165a",
+ "\u0003\u0002\u0002\u0002\u165c\u165d\u0003\u0002\u0002\u0002\u165d\u165f",
+ "\u0005\u0200\u0101\u0002\u165e\u165b\u0003\u0002\u0002\u0002\u165e\u165f",
+ "\u0003\u0002\u0002\u0002\u165f\u166a\u0003\u0002\u0002\u0002\u1660\u166a",
+ "\th\u0002\u0002\u1661\u1663\u0007\u00c6\u0002\u0002\u1662\u1664\u0005",
+ "\u022a\u0116\u0002\u1663\u1662\u0003\u0002\u0002\u0002\u1663\u1664\u0003",
+ "\u0002\u0002\u0002\u1664\u166a\u0003\u0002\u0002\u0002\u1665\u1667\t",
+ "a\u0002\u0002\u1666\u1668\u0007\u00be\u0002\u0002\u1667\u1666\u0003",
+ "\u0002\u0002\u0002\u1667\u1668\u0003\u0002\u0002\u0002\u1668\u166a\u0003",
+ "\u0002\u0002\u0002\u1669\u1650\u0003\u0002\u0002\u0002\u1669\u1654\u0003",
+ "\u0002\u0002\u0002\u1669\u1660\u0003\u0002\u0002\u0002\u1669\u1661\u0003",
+ "\u0002\u0002\u0002\u1669\u1665\u0003\u0002\u0002\u0002\u166a\u0227\u0003",
+ "\u0002\u0002\u0002\u166b\u166c\u0007\u03fe\u0002\u0002\u166c\u166d\u0005",
+ "\u0214\u010b\u0002\u166d\u166e\u0007\u03ff\u0002\u0002\u166e\u0229\u0003",
+ "\u0002\u0002\u0002\u166f\u1670\u0007\u03fe\u0002\u0002\u1670\u1671\u0005",
+ "\u0214\u010b\u0002\u1671\u1672\u0007\u0400\u0002\u0002\u1672\u1673\u0005",
+ "\u0214\u010b\u0002\u1673\u1674\u0007\u03ff\u0002\u0002\u1674\u022b\u0003",
+ "\u0002\u0002\u0002\u1675\u1676\u0007\u03fe\u0002\u0002\u1676\u1679\u0005",
+ "\u0214\u010b\u0002\u1677\u1678\u0007\u0400\u0002\u0002\u1678\u167a\u0005",
+ "\u0214\u010b\u0002\u1679\u1677\u0003\u0002\u0002\u0002\u1679\u167a\u0003",
+ "\u0002\u0002\u0002\u167a\u167b\u0003\u0002\u0002\u0002\u167b\u167c\u0007",
+ "\u03ff\u0002\u0002\u167c\u022d\u0003\u0002\u0002\u0002\u167d\u1682\u0005",
+ "\u020e\u0108\u0002\u167e\u167f\u0007\u0400\u0002\u0002\u167f\u1681\u0005",
+ "\u020e\u0108\u0002\u1680\u167e\u0003\u0002\u0002\u0002\u1681\u1684\u0003",
+ "\u0002\u0002\u0002\u1682\u1680\u0003\u0002\u0002\u0002\u1682\u1683\u0003",
+ "\u0002\u0002\u0002\u1683\u022f\u0003\u0002\u0002\u0002\u1684\u1682\u0003",
+ "\u0002\u0002\u0002\u1685\u168a\u0005\u01f6\u00fc\u0002\u1686\u1687\u0007",
+ "\u0400\u0002\u0002\u1687\u1689\u0005\u01f6\u00fc\u0002\u1688\u1686\u0003",
+ "\u0002\u0002\u0002\u1689\u168c\u0003\u0002\u0002\u0002\u168a\u1688\u0003",
+ "\u0002\u0002\u0002\u168a\u168b\u0003\u0002\u0002\u0002\u168b\u0231\u0003",
+ "\u0002\u0002\u0002\u168c\u168a\u0003\u0002\u0002\u0002\u168d\u168e\u0007",
+ "\u03fe\u0002\u0002\u168e\u1693\u0005\u01fa\u00fe\u0002\u168f\u1690\u0007",
+ "\u0400\u0002\u0002\u1690\u1692\u0005\u01fa\u00fe\u0002\u1691\u168f\u0003",
+ "\u0002\u0002\u0002\u1692\u1695\u0003\u0002\u0002\u0002\u1693\u1691\u0003",
+ "\u0002\u0002\u0002\u1693\u1694\u0003\u0002\u0002\u0002\u1694\u1696\u0003",
+ "\u0002\u0002\u0002\u1695\u1693\u0003\u0002\u0002\u0002\u1696\u1697\u0007",
+ "\u03ff\u0002\u0002\u1697\u0233\u0003\u0002\u0002\u0002\u1698\u169d\u0005",
+ "\u025c\u012f\u0002\u1699\u169a\u0007\u0400\u0002\u0002\u169a\u169c\u0005",
+ "\u025c\u012f\u0002\u169b\u1699\u0003\u0002\u0002\u0002\u169c\u169f\u0003",
+ "\u0002\u0002\u0002\u169d\u169b\u0003\u0002\u0002\u0002\u169d\u169e\u0003",
+ "\u0002\u0002\u0002\u169e\u0235\u0003\u0002\u0002\u0002\u169f\u169d\u0003",
+ "\u0002\u0002\u0002\u16a0\u16a5\u0005\u0242\u0122\u0002\u16a1\u16a2\u0007",
+ "\u0400\u0002\u0002\u16a2\u16a4\u0005\u0242\u0122\u0002\u16a3\u16a1\u0003",
+ "\u0002\u0002\u0002\u16a4\u16a7\u0003\u0002\u0002\u0002\u16a5\u16a3\u0003",
+ "\u0002\u0002\u0002\u16a5\u16a6\u0003\u0002\u0002\u0002\u16a6\u0237\u0003",
+ "\u0002\u0002\u0002\u16a7\u16a5\u0003\u0002\u0002\u0002\u16a8\u16ad\u0005",
+ "\u0220\u0111\u0002\u16a9\u16aa\u0007\u0400\u0002\u0002\u16aa\u16ac\u0005",
+ "\u0220\u0111\u0002\u16ab\u16a9\u0003\u0002\u0002\u0002\u16ac\u16af\u0003",
+ "\u0002\u0002\u0002\u16ad\u16ab\u0003\u0002\u0002\u0002\u16ad\u16ae\u0003",
+ "\u0002\u0002\u0002\u16ae\u0239\u0003\u0002\u0002\u0002\u16af\u16ad\u0003",
+ "\u0002\u0002\u0002\u16b0\u16b5\u0007\u040d\u0002\u0002\u16b1\u16b2\u0007",
+ "\u0400\u0002\u0002\u16b2\u16b4\u0007\u040d\u0002\u0002\u16b3\u16b1\u0003",
+ "\u0002\u0002\u0002\u16b4\u16b7\u0003\u0002\u0002\u0002\u16b5\u16b3\u0003",
+ "\u0002\u0002\u0002\u16b5\u16b6\u0003\u0002\u0002\u0002\u16b6\u023b\u0003",
+ "\u0002\u0002\u0002\u16b7\u16b5\u0003\u0002\u0002\u0002\u16b8\u16bd\u0007",
+ "\u0418\u0002\u0002\u16b9\u16ba\u0007\u0400\u0002\u0002\u16ba\u16bc\u0007",
+ "\u0418\u0002\u0002\u16bb\u16b9\u0003\u0002\u0002\u0002\u16bc\u16bf\u0003",
+ "\u0002\u0002\u0002\u16bd\u16bb\u0003\u0002\u0002\u0002\u16bd\u16be\u0003",
+ "\u0002\u0002\u0002\u16be\u023d\u0003\u0002\u0002\u0002\u16bf\u16bd\u0003",
+ "\u0002\u0002\u0002\u16c0\u16cc\u0007j\u0002\u0002\u16c1\u16c3\u0005",
+ "\u0262\u0132\u0002\u16c2\u16c1\u0003\u0002\u0002\u0002\u16c2\u16c3\u0003",
+ "\u0002\u0002\u0002\u16c3\u16c4\u0003\u0002\u0002\u0002\u16c4\u16cc\u0005",
+ "\u0220\u0111\u0002\u16c5\u16c9\u0005\u0240\u0121\u0002\u16c6\u16c7\u0007",
+ "l\u0002\u0002\u16c7\u16c8\u0007\u00a8\u0002\u0002\u16c8\u16ca\u0005",
+ "\u0240\u0121\u0002\u16c9\u16c6\u0003\u0002\u0002\u0002\u16c9\u16ca\u0003",
+ "\u0002\u0002\u0002\u16ca\u16cc\u0003\u0002\u0002\u0002\u16cb\u16c0\u0003",
+ "\u0002\u0002\u0002\u16cb\u16c2\u0003\u0002\u0002\u0002\u16cb\u16c5\u0003",
+ "\u0002\u0002\u0002\u16cc\u023f\u0003\u0002\u0002\u0002\u16cd\u16d3\t",
+ "i\u0002\u0002\u16ce\u16d0\u0007\u03fe\u0002\u0002\u16cf\u16d1\u0005",
+ "\u0214\u010b\u0002\u16d0\u16cf\u0003\u0002\u0002\u0002\u16d0\u16d1\u0003",
+ "\u0002\u0002\u0002\u16d1\u16d2\u0003\u0002\u0002\u0002\u16d2\u16d4\u0007",
+ "\u03ff\u0002\u0002\u16d3\u16ce\u0003\u0002\u0002\u0002\u16d3\u16d4\u0003",
+ "\u0002\u0002\u0002\u16d4\u16dc\u0003\u0002\u0002\u0002\u16d5\u16d6\u0007",
+ "\u0107\u0002\u0002\u16d6\u16d8\u0007\u03fe\u0002\u0002\u16d7\u16d9\u0005",
+ "\u0214\u010b\u0002\u16d8\u16d7\u0003\u0002\u0002\u0002\u16d8\u16d9\u0003",
+ "\u0002\u0002\u0002\u16d9\u16da\u0003\u0002\u0002\u0002\u16da\u16dc\u0007",
+ "\u03ff\u0002\u0002\u16db\u16cd\u0003\u0002\u0002\u0002\u16db\u16d5\u0003",
+ "\u0002\u0002\u0002\u16dc\u0241\u0003\u0002\u0002\u0002\u16dd\u16e0\u0005",
+ "\u025c\u012f\u0002\u16de\u16e0\u0007(\u0002\u0002\u16df\u16dd\u0003",
+ "\u0002\u0002\u0002\u16df\u16de\u0003\u0002\u0002\u0002\u16e0\u0243\u0003",
+ "\u0002\u0002\u0002\u16e1\u16e2\u0007G\u0002\u0002\u16e2\u16e3\u0007",
+ "7\u0002\u0002\u16e3\u0245\u0003\u0002\u0002\u0002\u16e4\u16e5\u0007",
+ "G\u0002\u0002\u16e5\u16e6\u0007h\u0002\u0002\u16e6\u16e7\u00077\u0002",
+ "\u0002\u16e7\u0247\u0003\u0002\u0002\u0002\u16e8\u16fa\u0005\u024a\u0126",
+ "\u0002\u16e9\u16fa\u0005\u0252\u012a\u0002\u16ea\u16eb\u0005\u0254\u012b",
+ "\u0002\u16eb\u16ed\u0007\u03fe\u0002\u0002\u16ec\u16ee\u0005\u0258\u012d",
+ "\u0002\u16ed\u16ec\u0003\u0002\u0002\u0002\u16ed\u16ee\u0003\u0002\u0002",
+ "\u0002\u16ee\u16ef\u0003\u0002\u0002\u0002\u16ef\u16f0\u0007\u03ff\u0002",
+ "\u0002\u16f0\u16fa\u0003\u0002\u0002\u0002\u16f1\u16f2\u0005\u01f4\u00fb",
+ "\u0002\u16f2\u16f4\u0007\u03fe\u0002\u0002\u16f3\u16f5\u0005\u0258\u012d",
+ "\u0002\u16f4\u16f3\u0003\u0002\u0002\u0002\u16f4\u16f5\u0003\u0002\u0002",
+ "\u0002\u16f5\u16f6\u0003\u0002\u0002\u0002\u16f6\u16f7\u0007\u03ff\u0002",
+ "\u0002\u16f7\u16fa\u0003\u0002\u0002\u0002\u16f8\u16fa\u0005\u0256\u012c",
+ "\u0002\u16f9\u16e8\u0003\u0002\u0002\u0002\u16f9\u16e9\u0003\u0002\u0002",
+ "\u0002\u16f9\u16ea\u0003\u0002\u0002\u0002\u16f9\u16f1\u0003\u0002\u0002",
+ "\u0002\u16f9\u16f8\u0003\u0002\u0002\u0002\u16fa\u0249\u0003\u0002\u0002",
+ "\u0002\u16fb\u1799\tj\u0002\u0002\u16fc\u16fd\u0007\u001f\u0002\u0002",
+ "\u16fd\u16fe\u0007\u03fe\u0002\u0002\u16fe\u16ff\u0005\u025c\u012f\u0002",
+ "\u16ff\u1700\u0007\u0400\u0002\u0002\u1700\u1701\u0005\u0226\u0114\u0002",
+ "\u1701\u1702\u0007\u03ff\u0002\u0002\u1702\u1799\u0003\u0002\u0002\u0002",
+ "\u1703\u1704\u0007\u001f\u0002\u0002\u1704\u1705\u0007\u03fe\u0002\u0002",
+ "\u1705\u1706\u0005\u025c\u012f\u0002\u1706\u1707\u0007\u00ab\u0002\u0002",
+ "\u1707\u1708\u0005\u0200\u0101\u0002\u1708\u1709\u0007\u03ff\u0002\u0002",
+ "\u1709\u1799\u0003\u0002\u0002\u0002\u170a\u170b\u0007\u0016\u0002\u0002",
+ "\u170b\u170c\u0007\u03fe\u0002\u0002\u170c\u170d\u0005\u025c\u012f\u0002",
+ "\u170d\u170e\u0007\r\u0002\u0002\u170e\u170f\u0005\u0226\u0114\u0002",
+ "\u170f\u1710\u0007\u03ff\u0002\u0002\u1710\u1799\u0003\u0002\u0002\u0002",
+ "\u1711\u1712\u0007\u00ac\u0002\u0002\u1712\u1713\u0007\u03fe\u0002\u0002",
+ "\u1713\u1714\u0005\u01f8\u00fd\u0002\u1714\u1715\u0007\u03ff\u0002\u0002",
+ "\u1715\u1799\u0003\u0002\u0002\u0002\u1716\u1717\u0007\u0015\u0002\u0002",
+ "\u1717\u1719\u0005\u025c\u012f\u0002\u1718\u171a\u0005\u024c\u0127\u0002",
+ "\u1719\u1718\u0003\u0002\u0002\u0002\u171a\u171b\u0003\u0002\u0002\u0002",
+ "\u171b\u1719\u0003\u0002\u0002\u0002\u171b\u171c\u0003\u0002\u0002\u0002",
+ "\u171c\u171f\u0003\u0002\u0002\u0002\u171d\u171e\u00073\u0002\u0002",
+ "\u171e\u1720\u0005\u025a\u012e\u0002\u171f\u171d\u0003\u0002\u0002\u0002",
+ "\u171f\u1720\u0003\u0002\u0002\u0002\u1720\u1721\u0003\u0002\u0002\u0002",
+ "\u1721\u1722\u0007\u0156\u0002\u0002\u1722\u1799\u0003\u0002\u0002\u0002",
+ "\u1723\u1725\u0007\u0015\u0002\u0002\u1724\u1726\u0005\u024c\u0127\u0002",
+ "\u1725\u1724\u0003\u0002\u0002\u0002\u1726\u1727\u0003\u0002\u0002\u0002",
+ "\u1727\u1725\u0003\u0002\u0002\u0002\u1727\u1728\u0003\u0002\u0002\u0002",
+ "\u1728\u172b\u0003\u0002\u0002\u0002\u1729\u172a\u00073\u0002\u0002",
+ "\u172a\u172c\u0005\u025a\u012e\u0002\u172b\u1729\u0003\u0002\u0002\u0002",
+ "\u172b\u172c\u0003\u0002\u0002\u0002\u172c\u172d\u0003\u0002\u0002\u0002",
+ "\u172d\u172e\u0007\u0156\u0002\u0002\u172e\u1799\u0003\u0002\u0002\u0002",
+ "\u172f\u1730\u0007\u00ce\u0002\u0002\u1730\u1731\u0007\u03fe\u0002\u0002",
+ "\u1731\u1734\u0005\u0258\u012d\u0002\u1732\u1733\u0007\u00ab\u0002\u0002",
+ "\u1733\u1735\u0005\u0200\u0101\u0002\u1734\u1732\u0003\u0002\u0002\u0002",
+ "\u1734\u1735\u0003\u0002\u0002\u0002\u1735\u1736\u0003\u0002\u0002\u0002",
+ "\u1736\u1737\u0007\u03ff\u0002\u0002\u1737\u1799\u0003\u0002\u0002\u0002",
+ "\u1738\u1739\u0007\u0108\u0002\u0002\u1739\u173c\u0007\u03fe\u0002\u0002",
+ "\u173a\u173d\u0005\u0218\u010d\u0002\u173b\u173d\u0005\u025c\u012f\u0002",
+ "\u173c\u173a\u0003\u0002\u0002\u0002\u173c\u173b\u0003\u0002\u0002\u0002",
+ "\u173d\u173e\u0003\u0002\u0002\u0002\u173e\u1741\u0007I\u0002\u0002",
+ "\u173f\u1742\u0005\u0218\u010d\u0002\u1740\u1742\u0005\u025c\u012f\u0002",
+ "\u1741\u173f\u0003\u0002\u0002\u0002\u1741\u1740\u0003\u0002\u0002\u0002",
+ "\u1742\u1743\u0003\u0002\u0002\u0002\u1743\u1744\u0007\u03ff\u0002\u0002",
+ "\u1744\u1799\u0003\u0002\u0002\u0002\u1745\u1746\tk\u0002\u0002\u1746",
+ "\u1749\u0007\u03fe\u0002\u0002\u1747\u174a\u0005\u0218\u010d\u0002\u1748",
+ "\u174a\u0005\u025c\u012f\u0002\u1749\u1747\u0003\u0002\u0002\u0002\u1749",
+ "\u1748\u0003\u0002\u0002\u0002\u174a\u174b\u0003\u0002\u0002\u0002\u174b",
+ "\u174e\u0007?\u0002\u0002\u174c\u174f\u0005\u0214\u010b\u0002\u174d",
+ "\u174f\u0005\u025c\u012f\u0002\u174e\u174c\u0003\u0002\u0002\u0002\u174e",
+ "\u174d\u0003\u0002\u0002\u0002\u174f\u1755\u0003\u0002\u0002\u0002\u1750",
+ "\u1753\u0007<\u0002\u0002\u1751\u1754\u0005\u0214\u010b\u0002\u1752",
+ "\u1754\u0005\u025c\u012f\u0002\u1753\u1751\u0003\u0002\u0002\u0002\u1753",
+ "\u1752\u0003\u0002\u0002\u0002\u1754\u1756\u0003\u0002\u0002\u0002\u1755",
+ "\u1750\u0003\u0002\u0002\u0002\u1755\u1756\u0003\u0002\u0002\u0002\u1756",
+ "\u1757\u0003\u0002\u0002\u0002\u1757\u1758\u0007\u03ff\u0002\u0002\u1758",
+ "\u1799\u0003\u0002\u0002\u0002\u1759\u175a\u0007\u010c\u0002\u0002\u175a",
+ "\u175b\u0007\u03fe\u0002\u0002\u175b\u175e\tl\u0002\u0002\u175c\u175f",
+ "\u0005\u0218\u010d\u0002\u175d\u175f\u0005\u025c\u012f\u0002\u175e\u175c",
+ "\u0003\u0002\u0002\u0002\u175e\u175d\u0003\u0002\u0002\u0002\u175e\u175f",
+ "\u0003\u0002\u0002\u0002\u175f\u1760\u0003\u0002\u0002\u0002\u1760\u1763",
+ "\u0007?\u0002\u0002\u1761\u1764\u0005\u0218\u010d\u0002\u1762\u1764",
+ "\u0005\u025c\u012f\u0002\u1763\u1761\u0003\u0002\u0002\u0002\u1763\u1762",
+ "\u0003\u0002\u0002\u0002\u1764\u1765\u0003\u0002\u0002\u0002\u1765\u1766",
+ "\u0007\u03ff\u0002\u0002\u1766\u1799\u0003\u0002\u0002\u0002\u1767\u1768",
+ "\u0007\u010c\u0002\u0002\u1768\u176b\u0007\u03fe\u0002\u0002\u1769\u176c",
+ "\u0005\u0218\u010d\u0002\u176a\u176c\u0005\u025c\u012f\u0002\u176b\u1769",
+ "\u0003\u0002\u0002\u0002\u176b\u176a\u0003\u0002\u0002\u0002\u176c\u176d",
+ "\u0003\u0002\u0002\u0002\u176d\u1770\u0007?\u0002\u0002\u176e\u1771",
+ "\u0005\u0218\u010d\u0002\u176f\u1771\u0005\u025c\u012f\u0002\u1770\u176e",
+ "\u0003\u0002\u0002\u0002\u1770\u176f\u0003\u0002\u0002\u0002\u1771\u1772",
+ "\u0003\u0002\u0002\u0002\u1772\u1773\u0007\u03ff\u0002\u0002\u1773\u1799",
+ "\u0003\u0002\u0002\u0002\u1774\u1775\u0007\u03df\u0002\u0002\u1775\u1778",
+ "\u0007\u03fe\u0002\u0002\u1776\u1779\u0005\u0218\u010d\u0002\u1777\u1779",
+ "\u0005\u025c\u012f\u0002\u1778\u1776\u0003\u0002\u0002\u0002\u1778\u1777",
+ "\u0003\u0002\u0002\u0002\u1779\u1780\u0003\u0002\u0002\u0002\u177a\u177b",
+ "\u0007\r\u0002\u0002\u177b\u177c\tm\u0002\u0002\u177c\u177d\u0007\u03fe",
+ "\u0002\u0002\u177d\u177e\u0005\u0214\u010b\u0002\u177e\u177f\u0007\u03ff",
+ "\u0002\u0002\u177f\u1781\u0003\u0002\u0002\u0002\u1780\u177a\u0003\u0002",
+ "\u0002\u0002\u1780\u1781\u0003\u0002\u0002\u0002\u1781\u1783\u0003\u0002",
+ "\u0002\u0002\u1782\u1784\u0005\u024e\u0128\u0002\u1783\u1782\u0003\u0002",
+ "\u0002\u0002\u1783\u1784\u0003\u0002\u0002\u0002\u1784\u1785\u0003\u0002",
+ "\u0002\u0002\u1785\u1786\u0007\u03ff\u0002\u0002\u1786\u1799\u0003\u0002",
+ "\u0002\u0002\u1787\u1788\u0007\u0105\u0002\u0002\u1788\u1789\u0007\u03fe",
+ "\u0002\u0002\u1789\u178a\u0005> \u0002\u178a\u178d\u0007?\u0002\u0002",
+ "\u178b\u178e\u0005\u0218\u010d\u0002\u178c\u178e\u0005\u025c\u012f\u0002",
+ "\u178d\u178b\u0003\u0002\u0002\u0002\u178d\u178c\u0003\u0002\u0002\u0002",
+ "\u178e\u178f\u0003\u0002\u0002\u0002\u178f\u1790\u0007\u03ff\u0002\u0002",
+ "\u1790\u1799\u0003\u0002\u0002\u0002\u1791\u1792\u0007\u0317\u0002\u0002",
+ "\u1792\u1793\u0007\u03fe\u0002\u0002\u1793\u1794\tn\u0002\u0002\u1794",
+ "\u1795\u0007\u0400\u0002\u0002\u1795\u1796\u0005\u0218\u010d\u0002\u1796",
+ "\u1797\u0007\u03ff\u0002\u0002\u1797\u1799\u0003\u0002\u0002\u0002\u1798",
+ "\u16fb\u0003\u0002\u0002\u0002\u1798\u16fc\u0003\u0002\u0002\u0002\u1798",
+ "\u1703\u0003\u0002\u0002\u0002\u1798\u170a\u0003\u0002\u0002\u0002\u1798",
+ "\u1711\u0003\u0002\u0002\u0002\u1798\u1716\u0003\u0002\u0002\u0002\u1798",
+ "\u1723\u0003\u0002\u0002\u0002\u1798\u172f\u0003\u0002\u0002\u0002\u1798",
+ "\u1738\u0003\u0002\u0002\u0002\u1798\u1745\u0003\u0002\u0002\u0002\u1798",
+ "\u1759\u0003\u0002\u0002\u0002\u1798\u1767\u0003\u0002\u0002\u0002\u1798",
+ "\u1774\u0003\u0002\u0002\u0002\u1798\u1787\u0003\u0002\u0002\u0002\u1798",
+ "\u1791\u0003\u0002\u0002\u0002\u1799\u024b\u0003\u0002\u0002\u0002\u179a",
+ "\u179b\u0007\u00ad\u0002\u0002\u179b\u179c\u0005\u025a\u012e\u0002\u179c",
+ "\u179d\u0007\u009e\u0002\u0002\u179d\u179e\u0005\u025a\u012e\u0002\u179e",
+ "\u024d\u0003\u0002\u0002\u0002\u179f\u17a0\u0007\u0192\u0002\u0002\u17a0",
+ "\u17a5\u0005\u0250\u0129\u0002\u17a1\u17a2\u0007\u0400\u0002\u0002\u17a2",
+ "\u17a4\u0005\u0250\u0129\u0002\u17a3\u17a1\u0003\u0002\u0002\u0002\u17a4",
+ "\u17a7\u0003\u0002\u0002\u0002\u17a5\u17a3\u0003\u0002\u0002\u0002\u17a5",
+ "\u17a6\u0003\u0002\u0002\u0002\u17a6\u17ae\u0003\u0002\u0002\u0002\u17a7",
+ "\u17a5\u0003\u0002\u0002\u0002\u17a8\u17a9\u0007\u0192\u0002\u0002\u17a9",
+ "\u17aa\u0005\u0214\u010b\u0002\u17aa\u17ab\u0007\u03f2\u0002\u0002\u17ab",
+ "\u17ac\u0005\u0214\u010b\u0002\u17ac\u17ae\u0003\u0002\u0002\u0002\u17ad",
+ "\u179f\u0003\u0002\u0002\u0002\u17ad\u17a8\u0003\u0002\u0002\u0002\u17ae",
+ "\u024f\u0003\u0002\u0002\u0002\u17af\u17b1\u0005\u0214\u010b\u0002\u17b0",
+ "\u17b2\to\u0002\u0002\u17b1\u17b0\u0003\u0002\u0002\u0002\u17b1\u17b2",
+ "\u0003\u0002\u0002\u0002\u17b2\u0251\u0003\u0002\u0002\u0002\u17b3\u17b4",
+ "\tp\u0002\u0002\u17b4\u17b6\u0007\u03fe\u0002\u0002\u17b5\u17b7\t(\u0002",
+ "\u0002\u17b6\u17b5\u0003\u0002\u0002\u0002\u17b6\u17b7\u0003\u0002\u0002",
+ "\u0002\u17b7\u17b8\u0003\u0002\u0002\u0002\u17b8\u17b9\u0005\u025a\u012e",
+ "\u0002\u17b9\u17ba\u0007\u03ff\u0002\u0002\u17ba\u17ec\u0003\u0002\u0002",
+ "\u0002\u17bb\u17bc\u0007\u00f1\u0002\u0002\u17bc\u17c2\u0007\u03fe\u0002",
+ "\u0002\u17bd\u17c3\u0007\u03ed\u0002\u0002\u17be\u17c0\u0007\b\u0002",
+ "\u0002\u17bf\u17be\u0003\u0002\u0002\u0002\u17bf\u17c0\u0003\u0002\u0002",
+ "\u0002\u17c0\u17c1\u0003\u0002\u0002\u0002\u17c1\u17c3\u0005\u025a\u012e",
+ "\u0002\u17c2\u17bd\u0003\u0002\u0002\u0002\u17c2\u17bf\u0003\u0002\u0002",
+ "\u0002\u17c3\u17c4\u0003\u0002\u0002\u0002\u17c4\u17ec\u0007\u03ff\u0002",
+ "\u0002\u17c5\u17c6\u0007\u00f1\u0002\u0002\u17c6\u17c7\u0007\u03fe\u0002",
+ "\u0002\u17c7\u17c8\u0007/\u0002\u0002\u17c8\u17c9\u0005\u0258\u012d",
+ "\u0002\u17c9\u17ca\u0007\u03ff\u0002\u0002\u17ca\u17ec\u0003\u0002\u0002",
+ "\u0002\u17cb\u17cc\tq\u0002\u0002\u17cc\u17ce\u0007\u03fe\u0002\u0002",
+ "\u17cd\u17cf\u0007\b\u0002\u0002\u17ce\u17cd\u0003\u0002\u0002\u0002",
+ "\u17ce\u17cf\u0003\u0002\u0002\u0002\u17cf\u17d0\u0003\u0002\u0002\u0002",
+ "\u17d0\u17d1\u0005\u025a\u012e\u0002\u17d1\u17d2\u0007\u03ff\u0002\u0002",
+ "\u17d2\u17ec\u0003\u0002\u0002\u0002\u17d3\u17d4\u0007\u00f2\u0002\u0002",
+ "\u17d4\u17d6\u0007\u03fe\u0002\u0002\u17d5\u17d7\u0007/\u0002\u0002",
+ "\u17d6\u17d5\u0003\u0002\u0002\u0002\u17d6\u17d7\u0003\u0002\u0002\u0002",
+ "\u17d7\u17d8\u0003\u0002\u0002\u0002\u17d8\u17e3\u0005\u0258\u012d\u0002",
+ "\u17d9\u17da\u0007q\u0002\u0002\u17da\u17db\u0007\u0012\u0002\u0002",
+ "\u17db\u17e0\u0005\u00d4k\u0002\u17dc\u17dd\u0007\u0400\u0002\u0002",
+ "\u17dd\u17df\u0005\u00d4k\u0002\u17de\u17dc\u0003\u0002\u0002\u0002",
+ "\u17df\u17e2\u0003\u0002\u0002\u0002\u17e0\u17de\u0003\u0002\u0002\u0002",
+ "\u17e0\u17e1\u0003\u0002\u0002\u0002\u17e1\u17e4\u0003\u0002\u0002\u0002",
+ "\u17e2\u17e0\u0003\u0002\u0002\u0002\u17e3\u17d9\u0003\u0002\u0002\u0002",
+ "\u17e3\u17e4\u0003\u0002\u0002\u0002\u17e4\u17e7\u0003\u0002\u0002\u0002",
+ "\u17e5\u17e6\u0007\u008d\u0002\u0002\u17e6\u17e8\u0007\u040d\u0002\u0002",
+ "\u17e7\u17e5\u0003\u0002\u0002\u0002\u17e7\u17e8\u0003\u0002\u0002\u0002",
+ "\u17e8\u17e9\u0003\u0002\u0002\u0002\u17e9\u17ea\u0007\u03ff\u0002\u0002",
+ "\u17ea\u17ec\u0003\u0002\u0002\u0002\u17eb\u17b3\u0003\u0002\u0002\u0002",
+ "\u17eb\u17bb\u0003\u0002\u0002\u0002\u17eb\u17c5\u0003\u0002\u0002\u0002",
+ "\u17eb\u17cb\u0003\u0002\u0002\u0002\u17eb\u17d3\u0003\u0002\u0002\u0002",
+ "\u17ec\u0253\u0003\u0002\u0002\u0002\u17ed\u1805\u0005\u0278\u013d\u0002",
+ "\u17ee\u1805\u0007\u0280\u0002\u0002\u17ef\u1805\u0007\u0101\u0002\u0002",
+ "\u17f0\u1805\u0007\u00fd\u0002\u0002\u17f1\u1805\u0007\u00fe\u0002\u0002",
+ "\u17f2\u1805\u0007\u00ff\u0002\u0002\u17f3\u1805\u0007\u0102\u0002\u0002",
+ "\u17f4\u1805\u0007\u0103\u0002\u0002\u17f5\u1805\u0007\u0104\u0002\u0002",
+ "\u17f6\u1805\u0007G\u0002\u0002\u17f7\u1805\u0007N\u0002\u0002\u17f8",
+ "\u1805\u0007\u0100\u0002\u0002\u17f9\u1805\u0007\u0106\u0002\u0002\u17fa",
+ "\u1805\u0007\u01b5\u0002\u0002\u17fb\u1805\u0007\u0107\u0002\u0002\u17fc",
+ "\u1805\u0007\u0081\u0002\u0002\u17fd\u1805\u0007\u0109\u0002\u0002\u17fe",
+ "\u1805\u0007\u010a\u0002\u0002\u17ff\u1805\u0007\u010b\u0002\u0002\u1800",
+ "\u1805\u0007\u010c\u0002\u0002\u1801\u1805\u0007\u010d\u0002\u0002\u1802",
+ "\u1805\u0007\u010e\u0002\u0002\u1803\u1805\u0007\u010f\u0002\u0002\u1804",
+ "\u17ed\u0003\u0002\u0002\u0002\u1804\u17ee\u0003\u0002\u0002\u0002\u1804",
+ "\u17ef\u0003\u0002\u0002\u0002\u1804\u17f0\u0003\u0002\u0002\u0002\u1804",
+ "\u17f1\u0003\u0002\u0002\u0002\u1804\u17f2\u0003\u0002\u0002\u0002\u1804",
+ "\u17f3\u0003\u0002\u0002\u0002\u1804\u17f4\u0003\u0002\u0002\u0002\u1804",
+ "\u17f5\u0003\u0002\u0002\u0002\u1804\u17f6\u0003\u0002\u0002\u0002\u1804",
+ "\u17f7\u0003\u0002\u0002\u0002\u1804\u17f8\u0003\u0002\u0002\u0002\u1804",
+ "\u17f9\u0003\u0002\u0002\u0002\u1804\u17fa\u0003\u0002\u0002\u0002\u1804",
+ "\u17fb\u0003\u0002\u0002\u0002\u1804\u17fc\u0003\u0002\u0002\u0002\u1804",
+ "\u17fd\u0003\u0002\u0002\u0002\u1804\u17fe\u0003\u0002\u0002\u0002\u1804",
+ "\u17ff\u0003\u0002\u0002\u0002\u1804\u1800\u0003\u0002\u0002\u0002\u1804",
+ "\u1801\u0003\u0002\u0002\u0002\u1804\u1802\u0003\u0002\u0002\u0002\u1804",
+ "\u1803\u0003\u0002\u0002\u0002\u1805\u0255\u0003\u0002\u0002\u0002\u1806",
+ "\u1807\tr\u0002\u0002\u1807\u1808\u0007\u03fe\u0002\u0002\u1808\u1809",
+ "\u0005\u025a\u012e\u0002\u1809\u180a\u0007\u03ff\u0002\u0002\u180a\u0257",
+ "\u0003\u0002\u0002\u0002\u180b\u1810\u0005\u0220\u0111\u0002\u180c\u1810",
+ "\u0005\u01f8\u00fd\u0002\u180d\u1810\u0005\u0248\u0125\u0002\u180e\u1810",
+ "\u0005\u025c\u012f\u0002\u180f\u180b\u0003\u0002\u0002\u0002\u180f\u180c",
+ "\u0003\u0002\u0002\u0002\u180f\u180d\u0003\u0002\u0002\u0002\u180f\u180e",
+ "\u0003\u0002\u0002\u0002\u1810\u181a\u0003\u0002\u0002\u0002\u1811\u1816",
+ "\u0007\u0400\u0002\u0002\u1812\u1817\u0005\u0220\u0111\u0002\u1813\u1817",
+ "\u0005\u01f8\u00fd\u0002\u1814\u1817\u0005\u0248\u0125\u0002\u1815\u1817",
+ "\u0005\u025c\u012f\u0002\u1816\u1812\u0003\u0002\u0002\u0002\u1816\u1813",
+ "\u0003\u0002\u0002\u0002\u1816\u1814\u0003\u0002\u0002\u0002\u1816\u1815",
+ "\u0003\u0002\u0002\u0002\u1817\u1819\u0003\u0002\u0002\u0002\u1818\u1811",
+ "\u0003\u0002\u0002\u0002\u1819\u181c\u0003\u0002\u0002\u0002\u181a\u1818",
+ "\u0003\u0002\u0002\u0002\u181a\u181b\u0003\u0002\u0002\u0002\u181b\u0259",
+ "\u0003\u0002\u0002\u0002\u181c\u181a\u0003\u0002\u0002\u0002\u181d\u1822",
+ "\u0005\u0220\u0111\u0002\u181e\u1822\u0005\u01f8\u00fd\u0002\u181f\u1822",
+ "\u0005\u0248\u0125\u0002\u1820\u1822\u0005\u025c\u012f\u0002\u1821\u181d",
+ "\u0003\u0002\u0002\u0002\u1821\u181e\u0003\u0002\u0002\u0002\u1821\u181f",
+ "\u0003\u0002\u0002\u0002\u1821\u1820\u0003\u0002\u0002\u0002\u1822\u025b",
+ "\u0003\u0002\u0002\u0002\u1823\u1824\b\u012f\u0001\u0002\u1824\u1825",
+ "\ts\u0002\u0002\u1825\u182f\u0005\u025c\u012f\u0006\u1826\u1827\u0005",
+ "\u025e\u0130\u0002\u1827\u1829\u0007Q\u0002\u0002\u1828\u182a\u0007",
+ "h\u0002\u0002\u1829\u1828\u0003\u0002\u0002\u0002\u1829\u182a\u0003",
+ "\u0002\u0002\u0002\u182a\u182b\u0003\u0002\u0002\u0002\u182b\u182c\t",
+ "t\u0002\u0002\u182c\u182f\u0003\u0002\u0002\u0002\u182d\u182f\u0005",
+ "\u025e\u0130\u0002\u182e\u1823\u0003\u0002\u0002\u0002\u182e\u1826\u0003",
+ "\u0002\u0002\u0002\u182e\u182d\u0003\u0002\u0002\u0002\u182f\u1836\u0003",
+ "\u0002\u0002\u0002\u1830\u1831\f\u0005\u0002\u0002\u1831\u1832\u0005",
+ "\u0266\u0134\u0002\u1832\u1833\u0005\u025c\u012f\u0006\u1833\u1835\u0003",
+ "\u0002\u0002\u0002\u1834\u1830\u0003\u0002\u0002\u0002\u1835\u1838\u0003",
+ "\u0002\u0002\u0002\u1836\u1834\u0003\u0002\u0002\u0002\u1836\u1837\u0003",
+ "\u0002\u0002\u0002\u1837\u025d\u0003\u0002\u0002\u0002\u1838\u1836\u0003",
+ "\u0002\u0002\u0002\u1839\u183c\b\u0130\u0001\u0002\u183a\u183b\u0007",
+ "\u0418\u0002\u0002\u183b\u183d\u0007\u03e4\u0002\u0002\u183c\u183a\u0003",
+ "\u0002\u0002\u0002\u183c\u183d\u0003\u0002\u0002\u0002\u183d\u183e\u0003",
+ "\u0002\u0002\u0002\u183e\u183f\u0005\u0260\u0131\u0002\u183f\u1879\u0003",
+ "\u0002\u0002\u0002\u1840\u1841\f\t\u0002\u0002\u1841\u1842\u0005\u0264",
+ "\u0133\u0002\u1842\u1843\u0005\u025e\u0130\n\u1843\u1878\u0003\u0002",
+ "\u0002\u0002\u1844\u1846\f\u0007\u0002\u0002\u1845\u1847\u0007h\u0002",
+ "\u0002\u1846\u1845\u0003\u0002\u0002\u0002\u1846\u1847\u0003\u0002\u0002",
+ "\u0002\u1847\u1848\u0003\u0002\u0002\u0002\u1848\u1849\u0007\u0010\u0002",
+ "\u0002\u1849\u184a\u0005\u025e\u0130\u0002\u184a\u184b\u0007\f\u0002",
+ "\u0002\u184b\u184c\u0005\u025e\u0130\b\u184c\u1878\u0003\u0002\u0002",
+ "\u0002\u184d\u184e\f\u0006\u0002\u0002\u184e\u184f\u0007\u0213\u0002",
+ "\u0002\u184f\u1850\u0007Z\u0002\u0002\u1850\u1878\u0005\u025e\u0130",
+ "\u0007\u1851\u1853\f\u0004\u0002\u0002\u1852\u1854\u0007h\u0002\u0002",
+ "\u1853\u1852\u0003\u0002\u0002\u0002\u1853\u1854\u0003\u0002\u0002\u0002",
+ "\u1854\u1855\u0003\u0002\u0002\u0002\u1855\u1856\tu\u0002\u0002\u1856",
+ "\u1878\u0005\u025e\u0130\u0005\u1857\u1859\f\u000b\u0002\u0002\u1858",
+ "\u185a\u0007h\u0002\u0002\u1859\u1858\u0003\u0002\u0002\u0002\u1859",
+ "\u185a\u0003\u0002\u0002\u0002\u185a\u185b\u0003\u0002\u0002\u0002\u185b",
+ "\u185c\u0007I\u0002\u0002\u185c\u185f\u0007\u03fe\u0002\u0002\u185d",
+ "\u1860\u0005\u00b6\\\u0002\u185e\u1860\u0005\u0234\u011b\u0002\u185f",
+ "\u185d\u0003\u0002\u0002\u0002\u185f\u185e\u0003\u0002\u0002\u0002\u1860",
+ "\u1861\u0003\u0002\u0002\u0002\u1861\u1862\u0007\u03ff\u0002\u0002\u1862",
+ "\u1878\u0003\u0002\u0002\u0002\u1863\u1864\f\n\u0002\u0002\u1864\u1865",
+ "\u0007Q\u0002\u0002\u1865\u1878\u0005\u021e\u0110\u0002\u1866\u1867",
+ "\f\b\u0002\u0002\u1867\u1868\u0005\u0264\u0133\u0002\u1868\u1869\tv",
+ "\u0002\u0002\u1869\u186a\u0007\u03fe\u0002\u0002\u186a\u186b\u0005\u00b6",
+ "\\\u0002\u186b\u186c\u0007\u03ff\u0002\u0002\u186c\u1878\u0003\u0002",
+ "\u0002\u0002\u186d\u186f\f\u0005\u0002\u0002\u186e\u1870\u0007h\u0002",
+ "\u0002\u186f\u186e\u0003\u0002\u0002\u0002\u186f\u1870\u0003\u0002\u0002",
+ "\u0002\u1870\u1871\u0003\u0002\u0002\u0002\u1871\u1872\u0007Z\u0002",
+ "\u0002\u1872\u1875\u0005\u025e\u0130\u0002\u1873\u1874\u0007\u015c\u0002",
+ "\u0002\u1874\u1876\u0007\u040d\u0002\u0002\u1875\u1873\u0003\u0002\u0002",
+ "\u0002\u1875\u1876\u0003\u0002\u0002\u0002\u1876\u1878\u0003\u0002\u0002",
+ "\u0002\u1877\u1840\u0003\u0002\u0002\u0002\u1877\u1844\u0003\u0002\u0002",
+ "\u0002\u1877\u184d\u0003\u0002\u0002\u0002\u1877\u1851\u0003\u0002\u0002",
+ "\u0002\u1877\u1857\u0003\u0002\u0002\u0002\u1877\u1863\u0003\u0002\u0002",
+ "\u0002\u1877\u1866\u0003\u0002\u0002\u0002\u1877\u186d\u0003\u0002\u0002",
+ "\u0002\u1878\u187b\u0003\u0002\u0002\u0002\u1879\u1877\u0003\u0002\u0002",
+ "\u0002\u1879\u187a\u0003\u0002\u0002\u0002\u187a\u025f\u0003\u0002\u0002",
+ "\u0002\u187b\u1879\u0003\u0002\u0002\u0002\u187c\u187d\b\u0131\u0001",
+ "\u0002\u187d\u18aa\u0005\u0220\u0111\u0002\u187e\u18aa\u0005\u01f8\u00fd",
+ "\u0002\u187f\u18aa\u0005\u0248\u0125\u0002\u1880\u18aa\u0005\u01fe\u0100",
+ "\u0002\u1881\u1882\u0005\u0262\u0132\u0002\u1882\u1883\u0005\u0260\u0131",
+ "\u000b\u1883\u18aa\u0003\u0002\u0002\u0002\u1884\u1885\u0007\u00d2\u0002",
+ "\u0002\u1885\u18aa\u0005\u0260\u0131\n\u1886\u1887\u0007\u03fe\u0002",
+ "\u0002\u1887\u188c\u0005\u025c\u012f\u0002\u1888\u1889\u0007\u0400\u0002",
+ "\u0002\u1889\u188b\u0005\u025c\u012f\u0002\u188a\u1888\u0003\u0002\u0002",
+ "\u0002\u188b\u188e\u0003\u0002\u0002\u0002\u188c\u188a\u0003\u0002\u0002",
+ "\u0002\u188c\u188d\u0003\u0002\u0002\u0002\u188d\u188f\u0003\u0002\u0002",
+ "\u0002\u188e\u188c\u0003\u0002\u0002\u0002\u188f\u1890\u0007\u03ff\u0002",
+ "\u0002\u1890\u18aa\u0003\u0002\u0002\u0002\u1891\u1892\u0007\u0201\u0002",
+ "\u0002\u1892\u1893\u0007\u03fe\u0002\u0002\u1893\u1896\u0005\u025c\u012f",
+ "\u0002\u1894\u1895\u0007\u0400\u0002\u0002\u1895\u1897\u0005\u025c\u012f",
+ "\u0002\u1896\u1894\u0003\u0002\u0002\u0002\u1897\u1898\u0003\u0002\u0002",
+ "\u0002\u1898\u1896\u0003\u0002\u0002\u0002\u1898\u1899\u0003\u0002\u0002",
+ "\u0002\u1899\u189a\u0003\u0002\u0002\u0002\u189a\u189b\u0007\u03ff\u0002",
+ "\u0002\u189b\u18aa\u0003\u0002\u0002\u0002\u189c\u189d\u00077\u0002",
+ "\u0002\u189d\u189e\u0007\u03fe\u0002\u0002\u189e\u189f\u0005\u00b6\\",
+ "\u0002\u189f\u18a0\u0007\u03ff\u0002\u0002\u18a0\u18aa\u0003\u0002\u0002",
+ "\u0002\u18a1\u18a2\u0007\u03fe\u0002\u0002\u18a2\u18a3\u0005\u00b6\\",
+ "\u0002\u18a3\u18a4\u0007\u03ff\u0002\u0002\u18a4\u18aa\u0003\u0002\u0002",
+ "\u0002\u18a5\u18a6\u0007O\u0002\u0002\u18a6\u18a7\u0005\u025c\u012f",
+ "\u0002\u18a7\u18a8\u0005> \u0002\u18a8\u18aa\u0003\u0002\u0002\u0002",
+ "\u18a9\u187c\u0003\u0002\u0002\u0002\u18a9\u187e\u0003\u0002\u0002\u0002",
+ "\u18a9\u187f\u0003\u0002\u0002\u0002\u18a9\u1880\u0003\u0002\u0002\u0002",
+ "\u18a9\u1881\u0003\u0002\u0002\u0002\u18a9\u1884\u0003\u0002\u0002\u0002",
+ "\u18a9\u1886\u0003\u0002\u0002\u0002\u18a9\u1891\u0003\u0002\u0002\u0002",
+ "\u18a9\u189c\u0003\u0002\u0002\u0002\u18a9\u18a1\u0003\u0002\u0002\u0002",
+ "\u18a9\u18a5\u0003\u0002\u0002\u0002\u18aa\u18b8\u0003\u0002\u0002\u0002",
+ "\u18ab\u18ac\f\u0004\u0002\u0002\u18ac\u18ad\u0005\u0268\u0135\u0002",
+ "\u18ad\u18ae\u0005\u0260\u0131\u0005\u18ae\u18b7\u0003\u0002\u0002\u0002",
+ "\u18af\u18b0\f\u0003\u0002\u0002\u18b0\u18b1\u0005\u026a\u0136\u0002",
+ "\u18b1\u18b2\u0005\u0260\u0131\u0004\u18b2\u18b7\u0003\u0002\u0002\u0002",
+ "\u18b3\u18b4\f\r\u0002\u0002\u18b4\u18b5\u0007\u001a\u0002\u0002\u18b5",
+ "\u18b7\u0005\u0202\u0102\u0002\u18b6\u18ab\u0003\u0002\u0002\u0002\u18b6",
+ "\u18af\u0003\u0002\u0002\u0002\u18b6\u18b3\u0003\u0002\u0002\u0002\u18b7",
+ "\u18ba\u0003\u0002\u0002\u0002\u18b8\u18b6\u0003\u0002\u0002\u0002\u18b8",
+ "\u18b9\u0003\u0002\u0002\u0002\u18b9\u0261\u0003\u0002\u0002\u0002\u18ba",
+ "\u18b8\u0003\u0002\u0002\u0002\u18bb\u18bc\tw\u0002\u0002\u18bc\u0263",
+ "\u0003\u0002\u0002\u0002\u18bd\u18cc\u0007\u03f5\u0002\u0002\u18be\u18cc",
+ "\u0007\u03f6\u0002\u0002\u18bf\u18cc\u0007\u03f7\u0002\u0002\u18c0\u18c1",
+ "\u0007\u03f7\u0002\u0002\u18c1\u18cc\u0007\u03f5\u0002\u0002\u18c2\u18c3",
+ "\u0007\u03f6\u0002\u0002\u18c3\u18cc\u0007\u03f5\u0002\u0002\u18c4\u18c5",
+ "\u0007\u03f7\u0002\u0002\u18c5\u18cc\u0007\u03f6\u0002\u0002\u18c6\u18c7",
+ "\u0007\u03f8\u0002\u0002\u18c7\u18cc\u0007\u03f5\u0002\u0002\u18c8\u18c9",
+ "\u0007\u03f7\u0002\u0002\u18c9\u18ca\u0007\u03f5\u0002\u0002\u18ca\u18cc",
+ "\u0007\u03f6\u0002\u0002\u18cb\u18bd\u0003\u0002\u0002\u0002\u18cb\u18be",
+ "\u0003\u0002\u0002\u0002\u18cb\u18bf\u0003\u0002\u0002\u0002\u18cb\u18c0",
+ "\u0003\u0002\u0002\u0002\u18cb\u18c2\u0003\u0002\u0002\u0002\u18cb\u18c4",
+ "\u0003\u0002\u0002\u0002\u18cb\u18c6\u0003\u0002\u0002\u0002\u18cb\u18c8",
+ "\u0003\u0002\u0002\u0002\u18cc\u0265\u0003\u0002\u0002\u0002\u18cd\u18d5",
+ "\u0007\f\u0002\u0002\u18ce\u18cf\u0007\u03fb\u0002\u0002\u18cf\u18d5",
+ "\u0007\u03fb\u0002\u0002\u18d0\u18d5\u0007\u00b2\u0002\u0002\u18d1\u18d5",
+ "\u0007p\u0002\u0002\u18d2\u18d3\u0007\u03fa\u0002\u0002\u18d3\u18d5",
+ "\u0007\u03fa\u0002\u0002\u18d4\u18cd\u0003\u0002\u0002\u0002\u18d4\u18ce",
+ "\u0003\u0002\u0002\u0002\u18d4\u18d0\u0003\u0002\u0002\u0002\u18d4\u18d1",
+ "\u0003\u0002\u0002\u0002\u18d4\u18d2\u0003\u0002\u0002\u0002\u18d5\u0267",
+ "\u0003\u0002\u0002\u0002\u18d6\u18d7\u0007\u03f7\u0002\u0002\u18d7\u18de",
+ "\u0007\u03f7\u0002\u0002\u18d8\u18d9\u0007\u03f6\u0002\u0002\u18d9\u18de",
+ "\u0007\u03f6\u0002\u0002\u18da\u18de\u0007\u03fb\u0002\u0002\u18db\u18de",
+ "\u0007\u03fc\u0002\u0002\u18dc\u18de\u0007\u03fa\u0002\u0002\u18dd\u18d6",
+ "\u0003\u0002\u0002\u0002\u18dd\u18d8\u0003\u0002\u0002\u0002\u18dd\u18da",
+ "\u0003\u0002\u0002\u0002\u18dd\u18db\u0003\u0002\u0002\u0002\u18dd\u18dc",
+ "\u0003\u0002\u0002\u0002\u18de\u0269\u0003\u0002\u0002\u0002\u18df\u18e0",
+ "\tx\u0002\u0002\u18e0\u026b\u0003\u0002\u0002\u0002\u18e1\u18e2\ty\u0002",
+ "\u0002\u18e2\u026d\u0003\u0002\u0002\u0002\u18e3\u18e4\tz\u0002\u0002",
+ "\u18e4\u026f\u0003\u0002\u0002\u0002\u18e5\u18e6\t{\u0002\u0002\u18e6",
+ "\u0271\u0003\u0002\u0002\u0002\u18e7\u18e8\t|\u0002\u0002\u18e8\u0273",
+ "\u0003\u0002\u0002\u0002\u18e9\u18ea\t}\u0002\u0002\u18ea\u0275\u0003",
+ "\u0002\u0002\u0002\u18eb\u18ec\t~\u0002\u0002\u18ec\u0277\u0003\u0002",
+ "\u0002\u0002\u18ed\u18ee\t\u007f\u0002\u0002\u18ee\u0279\u0003\u0002",
+ "\u0002\u0002\u03a2\u027e\u0281\u0287\u028a\u028d\u028f\u0294\u0297\u029a",
+ "\u02a3\u02ca\u02d6\u02e1\u02f2\u02f7\u0303\u031e\u0327\u032c\u0332\u0337",
+ "\u033b\u0344\u0347\u034a\u034e\u0355\u0358\u035d\u0365\u036a\u036f\u0372",
+ "\u0374\u0380\u0383\u0387\u038a\u038e\u0391\u0395\u0398\u039b\u039f\u03a2",
+ "\u03a6\u03ac\u03b2\u03b8\u03bf\u03c6\u03cc\u03d2\u03db\u03e0\u03f0\u03f7",
+ "\u03fb\u0405\u0409\u040d\u0411\u0415\u041a\u041d\u0420\u0423\u0426\u042c",
+ "\u0430\u0436\u043b\u043e\u0441\u0443\u044e\u0452\u0455\u0463\u0466\u046a",
+ "\u046d\u0471\u0474\u0478\u047b\u047f\u0482\u0485\u0489\u048c\u0490\u0496",
+ "\u04a3\u04aa\u04af\u04b2\u04b7\u04bf\u04c5\u04c9\u04cc\u04d1\u04d4\u04d8",
+ "\u04db\u04df\u04e2\u04ea\u04ec\u04f3\u04f9\u0501\u0504\u050b\u050e\u0510",
+ "\u0516\u051c\u052d\u0534\u053b\u0546\u0549\u0556\u0563\u0568\u0578\u0580",
+ "\u058a\u0590\u059a\u059d\u05a2\u05af\u05b6\u05bd\u05bf\u05c6\u05ca\u05cc",
+ "\u05d1\u05d4\u05da\u05df\u05e1\u05e5\u05e8\u05eb\u05f1\u05f6\u05f8\u05fd",
+ "\u0604\u0606\u060d\u0612\u0616\u0619\u0621\u0629\u062b\u0633\u0637\u063a",
+ "\u0640\u0645\u0648\u064e\u0651\u0655\u065a\u065f\u0663\u0668\u066b\u066f",
+ "\u0673\u0677\u067b\u0680\u0685\u068a\u0690\u0695\u069a\u06a0\u06a5\u06aa",
+ "\u06af\u06b4\u06b9\u06be\u06c3\u06c8\u06cd\u06d2\u06d8\u06dd\u06e3\u06ed",
+ "\u06f4\u06f6\u06fe\u0703\u0706\u070e\u0714\u0724\u0730\u0732\u0735\u073d",
+ "\u0743\u0749\u0756\u075d\u0765\u0768\u0773\u077b\u077e\u078a\u0791\u0799",
+ "\u079c\u07a8\u07af\u07b7\u07ba\u07c1\u07c9\u07cc\u07ce\u07d3\u07db\u07e4",
+ "\u07e8\u07ec\u07f1\u07f7\u07fd\u0802\u0807\u080c\u0811\u0814\u0819\u081e",
+ "\u0828\u082c\u0833\u0838\u083b\u0840\u0843\u0847\u084b\u0853\u0866\u0869",
+ "\u086c\u0870\u087a\u0887\u088e\u0891\u089a\u089d\u08a0\u08ab\u08ae\u08b2",
+ "\u08ba\u08bd\u08c2\u08ca\u08d0\u08d4\u08d8\u08dd\u08e2\u08e9\u08ed\u08f8",
+ "\u0900\u0903\u0909\u090f\u0911\u0916\u0919\u091f\u0925\u0927\u092b\u092e",
+ "\u0931\u0937\u093d\u0940\u0946\u094c\u094e\u0953\u095b\u095d\u0966\u096b",
+ "\u0973\u0977\u097f\u0989\u098e\u0995\u0999\u099d\u09ba\u09be\u09ca\u09cd",
+ "\u09d6\u09e7\u09f3\u09fa\u0a01\u0a10\u0a1d\u0a23\u0a29\u0a2f\u0a35\u0a3b",
+ "\u0a41\u0a46\u0a4d\u0a54\u0a5b\u0a60\u0a63\u0a65\u0a73\u0a7a\u0a81\u0a87",
+ "\u0a8b\u0a8f\u0a96\u0a99\u0a9e\u0aa5\u0aac\u0ab0\u0ab9\u0ac2\u0acb\u0ace",
+ "\u0ad2\u0adb\u0adf\u0ae2\u0ae5\u0aeb\u0aee\u0af4\u0afd\u0b00\u0b0b\u0b0e",
+ "\u0b13\u0b16\u0b1b\u0b25\u0b2a\u0b30\u0b32\u0b38\u0b3a\u0b40\u0b48\u0b4d",
+ "\u0b55\u0b58\u0b5d\u0b60\u0b65\u0b6d\u0b75\u0b7b\u0b83\u0b88\u0b90\u0b93",
+ "\u0b97\u0b9a\u0ba2\u0ba8\u0bb1\u0bb4\u0bb8\u0bbc\u0bc2\u0bc6\u0bca\u0bcc",
+ "\u0bcf\u0bd2\u0bd5\u0bdb\u0bdf\u0be2\u0be5\u0be8\u0beb\u0bed\u0bf1\u0bf7",
+ "\u0bfd\u0c02\u0c05\u0c0b\u0c0f\u0c17\u0c1b\u0c1e\u0c21\u0c2a\u0c2e\u0c31",
+ "\u0c35\u0c39\u0c3c\u0c3f\u0c44\u0c4a\u0c4e\u0c58\u0c5e\u0c62\u0c68\u0c6c",
+ "\u0c72\u0c75\u0c81\u0c85\u0c89\u0c91\u0c95\u0c9d\u0ca0\u0ca4\u0ca7\u0caf",
+ "\u0cb4\u0cb7\u0cba\u0cbe\u0cc1\u0cca\u0ccf\u0cd8\u0cdd\u0ce4\u0ceb\u0cf3",
+ "\u0cf8\u0d00\u0d03\u0d06\u0d0d\u0d10\u0d17\u0d1a\u0d22\u0d28\u0d33\u0d36",
+ "\u0d41\u0d47\u0d4b\u0d56\u0d5b\u0d5d\u0d61\u0d6b\u0d75\u0d7b\u0d80\u0d83",
+ "\u0d86\u0d89\u0d8f\u0d94\u0d97\u0d9a\u0d9d\u0d9f\u0da5\u0daa\u0dad\u0db0",
+ "\u0db4\u0dba\u0dbe\u0dc8\u0dcc\u0dd2\u0ddb\u0dde\u0de2\u0de5\u0de9\u0ded",
+ "\u0df0\u0df2\u0dfa\u0e06\u0e0c\u0e0e\u0e14\u0e16\u0e18\u0e1e\u0e26\u0e2e",
+ "\u0e34\u0e3d\u0e42\u0e44\u0e48\u0e4c\u0e52\u0e59\u0e5d\u0e66\u0e69\u0e6d",
+ "\u0e71\u0e75\u0e78\u0e7b\u0e7e\u0e82\u0e86\u0e89\u0e8c\u0e8f\u0e96\u0e9a",
+ "\u0ea9\u0eb6\u0ebe\u0ec8\u0ecc\u0ecf\u0ed5\u0ed8\u0edb\u0ee4\u0eed\u0ef7",
+ "\u0efb\u0f05\u0f0f\u0f17\u0f1a\u0f23\u0f26\u0f2a\u0f2f\u0f33\u0f3c\u0f3f",
+ "\u0f5e\u0f61\u0f64\u0f9c\u0fa1\u0fbd\u0fcb\u0fd2\u0fd6\u0fdc\u0fe4\u0fe6",
+ "\u0ff1\u0ffb\u1002\u1008\u1010\u1015\u101d\u1025\u102d\u1035\u103b\u103e",
+ "\u1042\u1047\u104c\u1052\u1054\u105f\u1064\u106b\u106d\u107b\u1081\u1086",
+ "\u108b\u1091\u1098\u10a0\u10a8\u10ad\u10b3\u10b6\u10be\u10c5\u10ce\u10d1",
+ "\u10e2\u10ea\u10f2\u10f6\u10fd\u1103\u110b\u1114\u111a\u1121\u1128\u112d",
+ "\u1130\u1132\u1138\u113a\u113e\u1140\u1143\u114c\u1152\u1159\u1160\u1165",
+ "\u1168\u116a\u1170\u1172\u1176\u1178\u117b\u1180\u1187\u1190\u1195\u119e",
+ "\u11a5\u11aa\u11ad\u11af\u11b5\u11b7\u11ba\u11c6\u11cc\u11d5\u11de\u11e3",
+ "\u11ec\u11f2\u11fd\u1200\u120c\u1213\u1218\u1227\u1232\u1235\u123f\u1249",
+ "\u1253\u125d\u1261\u1265\u126f\u1274\u12a6\u12b8\u12c0\u12cb\u12d2\u12d6",
+ "\u12dd\u12e2\u12e5\u12e8\u12f1\u12f5\u1313\u131a\u131e\u1325\u1328\u1338",
+ "\u133b\u1345\u1349\u134f\u1352\u1357\u135b\u1362\u1365\u136b\u1383\u1390",
+ "\u1393\u139d\u13a5\u13a9\u13b0\u13b3\u13bc\u13c2\u13c8\u13d2\u13d4\u13da",
+ "\u13dd\u13e0\u13ec\u13ef\u13f5\u13f8\u1400\u1408\u140e\u1412\u1420\u142c",
+ "\u1433\u1436\u143d\u1444\u1449\u144e\u1459\u1464\u146a\u146f\u147c\u147e",
+ "\u1483\u1488\u148a\u1491\u1498\u149b\u149e\u14a4\u14a8\u14ae\u14b4\u14c1",
+ "\u14c6\u14ce\u14d1\u14d6\u14db\u14e3\u14e6\u14ec\u14f0\u14fd\u1503\u150f",
+ "\u1512\u151b\u1520\u1526\u152d\u152f\u1533\u1539\u153c\u1546\u154a\u155e",
+ "\u1565\u1567\u156e\u1570\u1574\u1579\u1584\u1589\u158f\u1592\u1596\u159b",
+ "\u159e\u15a2\u15a6\u15a8\u15ad\u15b2\u15bf\u15c2\u15c6\u15c9\u15ce\u15d1",
+ "\u15d5\u15da\u15dd\u15e2\u15e5\u15eb\u15ee\u15f2\u15f5\u15f8\u15fc\u15ff",
+ "\u1602\u1606\u1609\u160c\u160f\u1613\u1616\u1619\u161e\u1623\u1628\u162b",
+ "\u1630\u1633\u1638\u163b\u163f\u1643\u164b\u1652\u1656\u165b\u165e\u1663",
+ "\u1667\u1669\u1679\u1682\u168a\u1693\u169d\u16a5\u16ad\u16b5\u16bd\u16c2",
+ "\u16c9\u16cb\u16d0\u16d3\u16d8\u16db\u16df\u16ed\u16f4\u16f9\u171b\u171f",
+ "\u1727\u172b\u1734\u173c\u1741\u1749\u174e\u1753\u1755\u175e\u1763\u176b",
+ "\u1770\u1778\u1780\u1783\u178d\u1798\u17a5\u17ad\u17b1\u17b6\u17bf\u17c2",
+ "\u17ce\u17d6\u17e0\u17e3\u17e7\u17eb\u1804\u180f\u1816\u181a\u1821\u1829",
+ "\u182e\u1836\u183c\u1846\u1853\u1859\u185f\u186f\u1875\u1877\u1879\u188c",
+ "\u1898\u18a9\u18b6\u18b8\u18cb\u18d4\u18dd"].join("");
+
+
+var atn = new antlr4.atn.ATNDeserializer().deserialize(serializedATN);
+
+var decisionsToDFA = atn.decisionToState.map( function(ds, index) { return new antlr4.dfa.DFA(ds, index); });
+
+var sharedContextCache = new antlr4.PredictionContextCache();
+
+var literalNames = [ null, null, null, null, null, "'ADD'", "'ALL'", "'ALTER'",
+ "'ALWAYS'", "'ANALYZE'", "'AND'", "'AS'", "'ASC'",
+ "'BEFORE'", "'BETWEEN'", "'BOTH'", "'BY'", "'CALL'",
+ "'CASCADE'", "'CASE'", "'CAST'", "'CHANGE'", "'CHARACTER'",
+ "'CHECK'", "'COLLATE'", "'COLUMN'", "'CONDITION'",
+ "'CONSTRAINT'", "'CONTINUE'", "'CONVERT'", "'CREATE'",
+ "'CROSS'", "'CURRENT'", "'CURRENT_USER'", "'CURSOR'",
+ "'DATABASE'", "'DATABASES'", "'DECLARE'", "'DEFAULT'",
+ "'DELAYED'", "'DELETE'", "'DESC'", "'DESCRIBE'", "'DETERMINISTIC'",
+ "'DIAGNOSTICS'", "'DISTINCT'", "'DISTINCTROW'", "'DROP'",
+ "'EACH'", "'ELSE'", "'ELSEIF'", "'ENCLOSED'", "'ESCAPED'",
+ "'EXISTS'", "'EXIT'", "'EXPLAIN'", "'FALSE'", "'FETCH'",
+ "'FOR'", "'FORCE'", "'FOREIGN'", "'FROM'", "'FULLTEXT'",
+ "'GENERATED'", "'GET'", "'GRANT'", "'GROUP'", "'HAVING'",
+ "'HIGH_PRIORITY'", "'IF'", "'IGNORE'", "'IN'", "'INDEX'",
+ "'INFILE'", "'INNER'", "'INOUT'", "'INSERT'", "'INTERVAL'",
+ "'INTO'", "'IS'", "'ITERATE'", "'JOIN'", "'KEY'", "'KEYS'",
+ "'KILL'", "'LEADING'", "'LEAVE'", "'LEFT'", "'LIKE'",
+ "'LIMIT'", "'LINEAR'", "'LINES'", "'LOAD'", "'LOCK'",
+ "'LOOP'", "'LOW_PRIORITY'", "'MASTER_BIND'", "'MASTER_SSL_VERIFY_SERVER_CERT'",
+ "'MATCH'", "'MAXVALUE'", "'MODIFIES'", "'NATURAL'",
+ "'NOT'", "'NO_WRITE_TO_BINLOG'", "'NULL'", "'NUMBER'",
+ "'ON'", "'OPTIMIZE'", "'OPTION'", "'OPTIONALLY'", "'OR'",
+ "'ORDER'", "'OUT'", "'OUTER'", "'OUTFILE'", "'PARTITION'",
+ "'PRIMARY'", "'PROCEDURE'", "'PURGE'", "'RANGE'", "'READ'",
+ "'READS'", "'REFERENCES'", "'REGEXP'", "'RELEASE'",
+ "'RENAME'", "'REPEAT'", "'REPLACE'", "'REQUIRE'", "'RESIGNAL'",
+ "'RESTRICT'", "'RETURN'", "'REVOKE'", "'RIGHT'", "'RLIKE'",
+ "'SCHEMA'", "'SCHEMAS'", "'SELECT'", "'SET'", "'SEPARATOR'",
+ "'SHOW'", "'SIGNAL'", "'SPATIAL'", "'SQL'", "'SQLEXCEPTION'",
+ "'SQLSTATE'", "'SQLWARNING'", "'SQL_BIG_RESULT'", "'SQL_CALC_FOUND_ROWS'",
+ "'SQL_SMALL_RESULT'", "'SSL'", "'STACKED'", "'STARTING'",
+ "'STRAIGHT_JOIN'", "'TABLE'", "'TERMINATED'", "'THEN'",
+ "'TO'", "'TRAILING'", "'TRIGGER'", "'TRUE'", "'UNDO'",
+ "'UNION'", "'UNIQUE'", "'UNLOCK'", "'UNSIGNED'", "'UPDATE'",
+ "'USAGE'", "'USE'", "'USING'", "'VALUES'", "'WHEN'",
+ "'WHERE'", "'WHILE'", "'WITH'", "'WRITE'", "'XOR'",
+ "'ZEROFILL'", "'TINYINT'", "'SMALLINT'", "'MEDIUMINT'",
+ "'MIDDLEINT'", "'INT'", "'INT1'", "'INT2'", "'INT3'",
+ "'INT4'", "'INT8'", "'INTEGER'", "'BIGINT'", "'REAL'",
+ "'DOUBLE'", "'PRECISION'", "'FLOAT'", "'FLOAT4'", "'FLOAT8'",
+ "'DECIMAL'", "'DEC'", "'NUMERIC'", "'DATE'", "'TIME'",
+ "'TIMESTAMP'", "'DATETIME'", "'YEAR'", "'CHAR'", "'VARCHAR'",
+ "'NVARCHAR'", "'NATIONAL'", "'BINARY'", "'VARBINARY'",
+ "'TINYBLOB'", "'BLOB'", "'MEDIUMBLOB'", "'LONG'", "'LONGBLOB'",
+ "'TINYTEXT'", "'TEXT'", "'MEDIUMTEXT'", "'LONGTEXT'",
+ "'ENUM'", "'VARYING'", "'SERIAL'", "'YEAR_MONTH'",
+ "'DAY_HOUR'", "'DAY_MINUTE'", "'DAY_SECOND'", "'HOUR_MINUTE'",
+ "'HOUR_SECOND'", "'MINUTE_SECOND'", "'SECOND_MICROSECOND'",
+ "'MINUTE_MICROSECOND'", "'HOUR_MICROSECOND'", "'DAY_MICROSECOND'",
+ "'JSON_VALID'", "'JSON_SCHEMA_VALID'", "'AVG'", "'BIT_AND'",
+ "'BIT_OR'", "'BIT_XOR'", "'COUNT'", "'GROUP_CONCAT'",
+ "'MAX'", "'MIN'", "'STD'", "'STDDEV'", "'STDDEV_POP'",
+ "'STDDEV_SAMP'", "'SUM'", "'VAR_POP'", "'VAR_SAMP'",
+ "'VARIANCE'", "'CURRENT_DATE'", "'CURRENT_TIME'", "'CURRENT_TIMESTAMP'",
+ "'LOCALTIME'", "'CURDATE'", "'CURTIME'", "'DATE_ADD'",
+ "'DATE_SUB'", "'EXTRACT'", "'LOCALTIMESTAMP'", "'NOW'",
+ "'POSITION'", "'SUBSTR'", "'SUBSTRING'", "'SYSDATE'",
+ "'TRIM'", "'UTC_DATE'", "'UTC_TIME'", "'UTC_TIMESTAMP'",
+ "'ACCOUNT'", "'ACTION'", "'AFTER'", "'AGGREGATE'",
+ "'ALGORITHM'", "'ANY'", "'AT'", "'AUTHORS'", "'AUTOCOMMIT'",
+ "'AUTOEXTEND_SIZE'", "'AUTO_INCREMENT'", "'AVG_ROW_LENGTH'",
+ "'BEGIN'", "'BINLOG'", "'BIT'", "'BLOCK'", "'BOOL'",
+ "'BOOLEAN'", "'BTREE'", "'CACHE'", "'CASCADED'", "'CHAIN'",
+ "'CHANGED'", "'CHANNEL'", "'CHECKSUM'", "'PAGE_CHECKSUM'",
+ "'CIPHER'", "'CLASS_ORIGIN'", "'CLIENT'", "'CLOSE'",
+ "'COALESCE'", "'CODE'", "'COLUMNS'", "'COLUMN_FORMAT'",
+ "'COLUMN_NAME'", "'COMMENT'", "'COMMIT'", "'COMPACT'",
+ "'COMPLETION'", "'COMPRESSED'", "'COMPRESSION'", "'CONCURRENT'",
+ "'CONNECTION'", "'CONSISTENT'", "'CONSTRAINT_CATALOG'",
+ "'CONSTRAINT_SCHEMA'", "'CONSTRAINT_NAME'", "'CONTAINS'",
+ "'CONTEXT'", "'CONTRIBUTORS'", "'COPY'", "'CPU'", "'CURSOR_NAME'",
+ "'DATA'", "'DATAFILE'", "'DEALLOCATE'", "'DEFAULT_AUTH'",
+ "'DEFINER'", "'DELAY_KEY_WRITE'", "'DES_KEY_FILE'",
+ "'DIRECTORY'", "'DISABLE'", "'DISCARD'", "'DISK'",
+ "'DO'", "'DUMPFILE'", "'DUPLICATE'", "'DYNAMIC'", "'ENABLE'",
+ "'ENCRYPTION'", "'END'", "'ENDS'", "'ENGINE'", "'ENGINES'",
+ "'ERROR'", "'ERRORS'", "'ESCAPE'", "'EVEN'", "'EVENT'",
+ "'EVENTS'", "'EVERY'", "'EXCHANGE'", "'EXCLUSIVE'",
+ "'EXPIRE'", "'EXPORT'", "'EXTENDED'", "'EXTENT_SIZE'",
+ "'FAST'", "'FAULTS'", "'FIELDS'", "'FILE_BLOCK_SIZE'",
+ "'FILTER'", "'FIRST'", "'FIXED'", "'FLUSH'", "'FOLLOWS'",
+ "'FOUND'", "'FULL'", "'FUNCTION'", "'GENERAL'", "'GLOBAL'",
+ "'GRANTS'", "'GROUP_REPLICATION'", "'HANDLER'", "'HASH'",
+ "'HELP'", "'HOST'", "'HOSTS'", "'IDENTIFIED'", "'IGNORE_SERVER_IDS'",
+ "'IMPORT'", "'INDEXES'", "'INITIAL_SIZE'", "'INPLACE'",
+ "'INSERT_METHOD'", "'INSTALL'", "'INSTANCE'", "'INVISIBLE'",
+ "'INVOKER'", "'IO'", "'IO_THREAD'", "'IPC'", "'ISOLATION'",
+ "'ISSUER'", "'JSON'", "'KEY_BLOCK_SIZE'", "'LANGUAGE'",
+ "'LAST'", "'LEAVES'", "'LESS'", "'LEVEL'", "'LIST'",
+ "'LOCAL'", "'LOGFILE'", "'LOGS'", "'MASTER'", "'MASTER_AUTO_POSITION'",
+ "'MASTER_CONNECT_RETRY'", "'MASTER_DELAY'", "'MASTER_HEARTBEAT_PERIOD'",
+ "'MASTER_HOST'", "'MASTER_LOG_FILE'", "'MASTER_LOG_POS'",
+ "'MASTER_PASSWORD'", "'MASTER_PORT'", "'MASTER_RETRY_COUNT'",
+ "'MASTER_SSL'", "'MASTER_SSL_CA'", "'MASTER_SSL_CAPATH'",
+ "'MASTER_SSL_CERT'", "'MASTER_SSL_CIPHER'", "'MASTER_SSL_CRL'",
+ "'MASTER_SSL_CRLPATH'", "'MASTER_SSL_KEY'", "'MASTER_TLS_VERSION'",
+ "'MASTER_USER'", "'MAX_CONNECTIONS_PER_HOUR'", "'MAX_QUERIES_PER_HOUR'",
+ "'MAX_ROWS'", "'MAX_SIZE'", "'MAX_UPDATES_PER_HOUR'",
+ "'MAX_USER_CONNECTIONS'", "'MEDIUM'", "'MERGE'", "'MESSAGE_TEXT'",
+ "'MID'", "'MIGRATE'", "'MIN_ROWS'", "'MODE'", "'MODIFY'",
+ "'MUTEX'", "'MYSQL'", "'MYSQL_ERRNO'", "'NAME'", "'NAMES'",
+ "'NCHAR'", "'NEVER'", "'NEXT'", "'NO'", "'NODEGROUP'",
+ "'NONE'", "'OFFLINE'", "'OFFSET'", "'OJ'", "'OLD_PASSWORD'",
+ "'ONE'", "'ONLINE'", "'ONLY'", "'OPEN'", "'OPTIMIZER_COSTS'",
+ "'OPTIONS'", "'OWNER'", "'PACK_KEYS'", "'PAGE'", "'PARSER'",
+ "'PARTIAL'", "'PARTITIONING'", "'PARTITIONS'", "'PASSWORD'",
+ "'PHASE'", "'PLUGIN'", "'PLUGIN_DIR'", "'PLUGINS'",
+ "'PORT'", "'PRECEDES'", "'PREPARE'", "'PRESERVE'",
+ "'PREV'", "'PROCESSLIST'", "'PROFILE'", "'PROFILES'",
+ "'PROXY'", "'QUERY'", "'QUICK'", "'REBUILD'", "'RECOVER'",
+ "'REDO_BUFFER_SIZE'", "'REDUNDANT'", "'RELAY'", "'RELAY_LOG_FILE'",
+ "'RELAY_LOG_POS'", "'RELAYLOG'", "'REMOVE'", "'REORGANIZE'",
+ "'REPAIR'", "'REPLICATE_DO_DB'", "'REPLICATE_DO_TABLE'",
+ "'REPLICATE_IGNORE_DB'", "'REPLICATE_IGNORE_TABLE'",
+ "'REPLICATE_REWRITE_DB'", "'REPLICATE_WILD_DO_TABLE'",
+ "'REPLICATE_WILD_IGNORE_TABLE'", "'REPLICATION'", "'RESET'",
+ "'RESUME'", "'RETURNED_SQLSTATE'", "'RETURNS'", "'ROLE'",
+ "'ROLLBACK'", "'ROLLUP'", "'ROTATE'", "'ROW'", "'ROWS'",
+ "'ROW_FORMAT'", "'SAVEPOINT'", "'SCHEDULE'", "'SECURITY'",
+ "'SERVER'", "'SESSION'", "'SHARE'", "'SHARED'", "'SIGNED'",
+ "'SIMPLE'", "'SLAVE'", "'SLOW'", "'SNAPSHOT'", "'SOCKET'",
+ "'SOME'", "'SONAME'", "'SOUNDS'", "'SOURCE'", "'SQL_AFTER_GTIDS'",
+ "'SQL_AFTER_MTS_GAPS'", "'SQL_BEFORE_GTIDS'", "'SQL_BUFFER_RESULT'",
+ "'SQL_CACHE'", "'SQL_NO_CACHE'", "'SQL_THREAD'", "'START'",
+ "'STARTS'", "'STATS_AUTO_RECALC'", "'STATS_PERSISTENT'",
+ "'STATS_SAMPLE_PAGES'", "'STATUS'", "'STOP'", "'STORAGE'",
+ "'STORED'", "'STRING'", "'SUBCLASS_ORIGIN'", "'SUBJECT'",
+ "'SUBPARTITION'", "'SUBPARTITIONS'", "'SUSPEND'", "'SWAPS'",
+ "'SWITCHES'", "'TABLE_NAME'", "'TABLESPACE'", "'TEMPORARY'",
+ "'TEMPTABLE'", "'THAN'", "'TRADITIONAL'", "'TRANSACTION'",
+ "'TRANSACTIONAL'", "'TRIGGERS'", "'TRUNCATE'", "'UNDEFINED'",
+ "'UNDOFILE'", "'UNDO_BUFFER_SIZE'", "'UNINSTALL'",
+ "'UNKNOWN'", "'UNTIL'", "'UPGRADE'", "'USER'", "'USE_FRM'",
+ "'USER_RESOURCES'", "'VALIDATION'", "'VALUE'", "'VARIABLES'",
+ "'VIEW'", "'VIRTUAL'", "'VISIBLE'", "'WAIT'", "'WARNINGS'",
+ "'WITHOUT'", "'WORK'", "'WRAPPER'", "'X509'", "'XA'",
+ "'XML'", "'EUR'", "'USA'", "'JIS'", "'ISO'", "'INTERNAL'",
+ "'QUARTER'", "'MONTH'", "'DAY'", "'HOUR'", "'MINUTE'",
+ "'WEEK'", "'SECOND'", "'MICROSECOND'", "'TABLES'",
+ "'ROUTINE'", "'EXECUTE'", "'FILE'", "'PROCESS'", "'RELOAD'",
+ "'SHUTDOWN'", "'SUPER'", "'PRIVILEGES'", "'APPLICATION_PASSWORD_ADMIN'",
+ "'AUDIT_ADMIN'", "'BACKUP_ADMIN'", "'BINLOG_ADMIN'",
+ "'BINLOG_ENCRYPTION_ADMIN'", "'CLONE_ADMIN'", "'CONNECTION_ADMIN'",
+ "'ENCRYPTION_KEY_ADMIN'", "'FIREWALL_ADMIN'", "'FIREWALL_USER'",
+ "'GROUP_REPLICATION_ADMIN'", "'INNODB_REDO_LOG_ARCHIVE'",
+ "'NDB_STORED_USER'", "'PERSIST_RO_VARIABLES_ADMIN'",
+ "'REPLICATION_APPLIER'", "'REPLICATION_SLAVE_ADMIN'",
+ "'RESOURCE_GROUP_ADMIN'", "'RESOURCE_GROUP_USER'",
+ "'ROLE_ADMIN'", null, "'SET_USER_ID'", "'SHOW_ROUTINE'",
+ "'SYSTEM_VARIABLES_ADMIN'", "'TABLE_ENCRYPTION_ADMIN'",
+ "'VERSION_TOKEN_ADMIN'", "'XA_RECOVER_ADMIN'", "'ARMSCII8'",
+ "'ASCII'", "'BIG5'", "'CP1250'", "'CP1251'", "'CP1256'",
+ "'CP1257'", "'CP850'", "'CP852'", "'CP866'", "'CP932'",
+ "'DEC8'", "'EUCJPMS'", "'EUCKR'", "'GB2312'", "'GBK'",
+ "'GEOSTD8'", "'GREEK'", "'HEBREW'", "'HP8'", "'KEYBCS2'",
+ "'KOI8R'", "'KOI8U'", "'LATIN1'", "'LATIN2'", "'LATIN5'",
+ "'LATIN7'", "'MACCE'", "'MACROMAN'", "'SJIS'", "'SWE7'",
+ "'TIS620'", "'UCS2'", "'UJIS'", "'UTF16'", "'UTF16LE'",
+ "'UTF32'", "'UTF8'", "'UTF8MB3'", "'UTF8MB4'", "'ARCHIVE'",
+ "'BLACKHOLE'", "'CSV'", "'FEDERATED'", "'INNODB'",
+ "'MEMORY'", "'MRG_MYISAM'", "'MYISAM'", "'NDB'", "'NDBCLUSTER'",
+ "'PERFORMANCE_SCHEMA'", "'TOKUDB'", "'REPEATABLE'",
+ "'COMMITTED'", "'UNCOMMITTED'", "'SERIALIZABLE'", "'GEOMETRYCOLLECTION'",
+ "'GEOMCOLLECTION'", "'GEOMETRY'", "'LINESTRING'", "'MULTILINESTRING'",
+ "'MULTIPOINT'", "'MULTIPOLYGON'", "'POINT'", "'POLYGON'",
+ "'ABS'", "'ACOS'", "'ADDDATE'", "'ADDTIME'", "'AES_DECRYPT'",
+ "'AES_ENCRYPT'", "'AREA'", "'ASBINARY'", "'ASIN'",
+ "'ASTEXT'", "'ASWKB'", "'ASWKT'", "'ASYMMETRIC_DECRYPT'",
+ "'ASYMMETRIC_DERIVE'", "'ASYMMETRIC_ENCRYPT'", "'ASYMMETRIC_SIGN'",
+ "'ASYMMETRIC_VERIFY'", "'ATAN'", "'ATAN2'", "'BENCHMARK'",
+ "'BIN'", "'BIT_COUNT'", "'BIT_LENGTH'", "'BUFFER'",
+ "'CATALOG_NAME'", "'CEIL'", "'CEILING'", "'CENTROID'",
+ "'CHARACTER_LENGTH'", "'CHARSET'", "'CHAR_LENGTH'",
+ "'COERCIBILITY'", "'COLLATION'", "'COMPRESS'", "'CONCAT'",
+ "'CONCAT_WS'", "'CONNECTION_ID'", "'CONV'", "'CONVERT_TZ'",
+ "'COS'", "'COT'", "'CRC32'", "'CREATE_ASYMMETRIC_PRIV_KEY'",
+ "'CREATE_ASYMMETRIC_PUB_KEY'", "'CREATE_DH_PARAMETERS'",
+ "'CREATE_DIGEST'", "'CROSSES'", "'DATEDIFF'", "'DATE_FORMAT'",
+ "'DAYNAME'", "'DAYOFMONTH'", "'DAYOFWEEK'", "'DAYOFYEAR'",
+ "'DECODE'", "'DEGREES'", "'DES_DECRYPT'", "'DES_ENCRYPT'",
+ "'DIMENSION'", "'DISJOINT'", "'ELT'", "'ENCODE'", "'ENCRYPT'",
+ "'ENDPOINT'", "'ENVELOPE'", "'EQUALS'", "'EXP'", "'EXPORT_SET'",
+ "'EXTERIORRING'", "'EXTRACTVALUE'", "'FIELD'", "'FIND_IN_SET'",
+ "'FLOOR'", "'FORMAT'", "'FOUND_ROWS'", "'FROM_BASE64'",
+ "'FROM_DAYS'", "'FROM_UNIXTIME'", "'GEOMCOLLFROMTEXT'",
+ "'GEOMCOLLFROMWKB'", "'GEOMETRYCOLLECTIONFROMTEXT'",
+ "'GEOMETRYCOLLECTIONFROMWKB'", "'GEOMETRYFROMTEXT'",
+ "'GEOMETRYFROMWKB'", "'GEOMETRYN'", "'GEOMETRYTYPE'",
+ "'GEOMFROMTEXT'", "'GEOMFROMWKB'", "'GET_FORMAT'",
+ "'GET_LOCK'", "'GLENGTH'", "'GREATEST'", "'GTID_SUBSET'",
+ "'GTID_SUBTRACT'", "'HEX'", "'IFNULL'", "'INET6_ATON'",
+ "'INET6_NTOA'", "'INET_ATON'", "'INET_NTOA'", "'INSTR'",
+ "'INTERIORRINGN'", "'INTERSECTS'", "'ISCLOSED'", "'ISEMPTY'",
+ "'ISNULL'", "'ISSIMPLE'", "'IS_FREE_LOCK'", "'IS_IPV4'",
+ "'IS_IPV4_COMPAT'", "'IS_IPV4_MAPPED'", "'IS_IPV6'",
+ "'IS_USED_LOCK'", "'LAST_INSERT_ID'", "'LCASE'", "'LEAST'",
+ "'LENGTH'", "'LINEFROMTEXT'", "'LINEFROMWKB'", "'LINESTRINGFROMTEXT'",
+ "'LINESTRINGFROMWKB'", "'LN'", "'LOAD_FILE'", "'LOCATE'",
+ "'LOG'", "'LOG10'", "'LOG2'", "'LOWER'", "'LPAD'",
+ "'LTRIM'", "'MAKEDATE'", "'MAKETIME'", "'MAKE_SET'",
+ "'MASTER_POS_WAIT'", "'MBRCONTAINS'", "'MBRDISJOINT'",
+ "'MBREQUAL'", "'MBRINTERSECTS'", "'MBROVERLAPS'", "'MBRTOUCHES'",
+ "'MBRWITHIN'", "'MD5'", "'MLINEFROMTEXT'", "'MLINEFROMWKB'",
+ "'MONTHNAME'", "'MPOINTFROMTEXT'", "'MPOINTFROMWKB'",
+ "'MPOLYFROMTEXT'", "'MPOLYFROMWKB'", "'MULTILINESTRINGFROMTEXT'",
+ "'MULTILINESTRINGFROMWKB'", "'MULTIPOINTFROMTEXT'",
+ "'MULTIPOINTFROMWKB'", "'MULTIPOLYGONFROMTEXT'", "'MULTIPOLYGONFROMWKB'",
+ "'NAME_CONST'", "'NULLIF'", "'NUMGEOMETRIES'", "'NUMINTERIORRINGS'",
+ "'NUMPOINTS'", "'OCT'", "'OCTET_LENGTH'", "'ORD'",
+ "'OVERLAPS'", "'PERIOD_ADD'", "'PERIOD_DIFF'", "'PI'",
+ "'POINTFROMTEXT'", "'POINTFROMWKB'", "'POINTN'", "'POLYFROMTEXT'",
+ "'POLYFROMWKB'", "'POLYGONFROMTEXT'", "'POLYGONFROMWKB'",
+ "'POW'", "'POWER'", "'QUOTE'", "'RADIANS'", "'RAND'",
+ "'RANDOM_BYTES'", "'RELEASE_LOCK'", "'REVERSE'", "'ROUND'",
+ "'ROW_COUNT'", "'RPAD'", "'RTRIM'", "'SEC_TO_TIME'",
+ "'SESSION_USER'", "'SHA'", "'SHA1'", "'SHA2'", "'SCHEMA_NAME'",
+ "'SIGN'", "'SIN'", "'SLEEP'", "'SOUNDEX'", "'SQL_THREAD_WAIT_AFTER_GTIDS'",
+ "'SQRT'", "'SRID'", "'STARTPOINT'", "'STRCMP'", "'STR_TO_DATE'",
+ "'ST_AREA'", "'ST_ASBINARY'", "'ST_ASTEXT'", "'ST_ASWKB'",
+ "'ST_ASWKT'", "'ST_BUFFER'", "'ST_CENTROID'", "'ST_CONTAINS'",
+ "'ST_CROSSES'", "'ST_DIFFERENCE'", "'ST_DIMENSION'",
+ "'ST_DISJOINT'", "'ST_DISTANCE'", "'ST_ENDPOINT'",
+ "'ST_ENVELOPE'", "'ST_EQUALS'", "'ST_EXTERIORRING'",
+ "'ST_GEOMCOLLFROMTEXT'", "'ST_GEOMCOLLFROMTXT'", "'ST_GEOMCOLLFROMWKB'",
+ "'ST_GEOMETRYCOLLECTIONFROMTEXT'", "'ST_GEOMETRYCOLLECTIONFROMWKB'",
+ "'ST_GEOMETRYFROMTEXT'", "'ST_GEOMETRYFROMWKB'", "'ST_GEOMETRYN'",
+ "'ST_GEOMETRYTYPE'", "'ST_GEOMFROMTEXT'", "'ST_GEOMFROMWKB'",
+ "'ST_INTERIORRINGN'", "'ST_INTERSECTION'", "'ST_INTERSECTS'",
+ "'ST_ISCLOSED'", "'ST_ISEMPTY'", "'ST_ISSIMPLE'", "'ST_LINEFROMTEXT'",
+ "'ST_LINEFROMWKB'", "'ST_LINESTRINGFROMTEXT'", "'ST_LINESTRINGFROMWKB'",
+ "'ST_NUMGEOMETRIES'", "'ST_NUMINTERIORRING'", "'ST_NUMINTERIORRINGS'",
+ "'ST_NUMPOINTS'", "'ST_OVERLAPS'", "'ST_POINTFROMTEXT'",
+ "'ST_POINTFROMWKB'", "'ST_POINTN'", "'ST_POLYFROMTEXT'",
+ "'ST_POLYFROMWKB'", "'ST_POLYGONFROMTEXT'", "'ST_POLYGONFROMWKB'",
+ "'ST_SRID'", "'ST_STARTPOINT'", "'ST_SYMDIFFERENCE'",
+ "'ST_TOUCHES'", "'ST_UNION'", "'ST_WITHIN'", "'ST_X'",
+ "'ST_Y'", "'SUBDATE'", "'SUBSTRING_INDEX'", "'SUBTIME'",
+ "'SYSTEM_USER'", "'TAN'", "'TIMEDIFF'", "'TIMESTAMPADD'",
+ "'TIMESTAMPDIFF'", "'TIME_FORMAT'", "'TIME_TO_SEC'",
+ "'TOUCHES'", "'TO_BASE64'", "'TO_DAYS'", "'TO_SECONDS'",
+ "'UCASE'", "'UNCOMPRESS'", "'UNCOMPRESSED_LENGTH'",
+ "'UNHEX'", "'UNIX_TIMESTAMP'", "'UPDATEXML'", "'UPPER'",
+ "'UUID'", "'UUID_SHORT'", "'VALIDATE_PASSWORD_STRENGTH'",
+ "'VERSION'", "'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS'",
+ "'WEEKDAY'", "'WEEKOFYEAR'", "'WEIGHT_STRING'", "'WITHIN'",
+ "'YEARWEEK'", "'Y'", "'X'", "':='", "'+='", "'-='",
+ "'*='", "'/='", "'%='", "'&='", "'^='", "'|='", "'*'",
+ "'/'", "'%'", "'+'", "'--'", "'-'", "'DIV'", "'MOD'",
+ "'='", "'>'", "'<'", "'!'", "'~'", "'|'", "'&'", "'^'",
+ "'.'", "'('", "')'", "','", "';'", "'@'", "'0'", "'1'",
+ "'2'", "'''", "'\"'", "'`'", "':'" ];
+
+var symbolicNames = [ null, "SPACE", "SPEC_MYSQL_COMMENT", "COMMENT_INPUT",
+ "LINE_COMMENT", "ADD", "ALL", "ALTER", "ALWAYS", "ANALYZE",
+ "AND", "AS", "ASC", "BEFORE", "BETWEEN", "BOTH", "BY",
+ "CALL", "CASCADE", "CASE", "CAST", "CHANGE", "CHARACTER",
+ "CHECK", "COLLATE", "COLUMN", "CONDITION", "CONSTRAINT",
+ "CONTINUE", "CONVERT", "CREATE", "CROSS", "CURRENT",
+ "CURRENT_USER", "CURSOR", "DATABASE", "DATABASES",
+ "DECLARE", "DEFAULT", "DELAYED", "DELETE", "DESC",
+ "DESCRIBE", "DETERMINISTIC", "DIAGNOSTICS", "DISTINCT",
+ "DISTINCTROW", "DROP", "EACH", "ELSE", "ELSEIF", "ENCLOSED",
+ "ESCAPED", "EXISTS", "EXIT", "EXPLAIN", "FALSE", "FETCH",
+ "FOR", "FORCE", "FOREIGN", "FROM", "FULLTEXT", "GENERATED",
+ "GET", "GRANT", "GROUP", "HAVING", "HIGH_PRIORITY",
+ "IF", "IGNORE", "IN", "INDEX", "INFILE", "INNER",
+ "INOUT", "INSERT", "INTERVAL", "INTO", "IS", "ITERATE",
+ "JOIN", "KEY", "KEYS", "KILL", "LEADING", "LEAVE",
+ "LEFT", "LIKE", "LIMIT", "LINEAR", "LINES", "LOAD",
+ "LOCK", "LOOP", "LOW_PRIORITY", "MASTER_BIND", "MASTER_SSL_VERIFY_SERVER_CERT",
+ "MATCH", "MAXVALUE", "MODIFIES", "NATURAL", "NOT",
+ "NO_WRITE_TO_BINLOG", "NULL_LITERAL", "NUMBER", "ON",
+ "OPTIMIZE", "OPTION", "OPTIONALLY", "OR", "ORDER",
+ "OUT", "OUTER", "OUTFILE", "PARTITION", "PRIMARY",
+ "PROCEDURE", "PURGE", "RANGE", "READ", "READS", "REFERENCES",
+ "REGEXP", "RELEASE", "RENAME", "REPEAT", "REPLACE",
+ "REQUIRE", "RESIGNAL", "RESTRICT", "RETURN", "REVOKE",
+ "RIGHT", "RLIKE", "SCHEMA", "SCHEMAS", "SELECT", "SET",
+ "SEPARATOR", "SHOW", "SIGNAL", "SPATIAL", "SQL", "SQLEXCEPTION",
+ "SQLSTATE", "SQLWARNING", "SQL_BIG_RESULT", "SQL_CALC_FOUND_ROWS",
+ "SQL_SMALL_RESULT", "SSL", "STACKED", "STARTING",
+ "STRAIGHT_JOIN", "TABLE", "TERMINATED", "THEN", "TO",
+ "TRAILING", "TRIGGER", "TRUE", "UNDO", "UNION", "UNIQUE",
+ "UNLOCK", "UNSIGNED", "UPDATE", "USAGE", "USE", "USING",
+ "VALUES", "WHEN", "WHERE", "WHILE", "WITH", "WRITE",
+ "XOR", "ZEROFILL", "TINYINT", "SMALLINT", "MEDIUMINT",
+ "MIDDLEINT", "INT", "INT1", "INT2", "INT3", "INT4",
+ "INT8", "INTEGER", "BIGINT", "REAL", "DOUBLE", "PRECISION",
+ "FLOAT", "FLOAT4", "FLOAT8", "DECIMAL", "DEC", "NUMERIC",
+ "DATE", "TIME", "TIMESTAMP", "DATETIME", "YEAR", "CHAR",
+ "VARCHAR", "NVARCHAR", "NATIONAL", "BINARY", "VARBINARY",
+ "TINYBLOB", "BLOB", "MEDIUMBLOB", "LONG", "LONGBLOB",
+ "TINYTEXT", "TEXT", "MEDIUMTEXT", "LONGTEXT", "ENUM",
+ "VARYING", "SERIAL", "YEAR_MONTH", "DAY_HOUR", "DAY_MINUTE",
+ "DAY_SECOND", "HOUR_MINUTE", "HOUR_SECOND", "MINUTE_SECOND",
+ "SECOND_MICROSECOND", "MINUTE_MICROSECOND", "HOUR_MICROSECOND",
+ "DAY_MICROSECOND", "JSON_VALID", "JSON_SCHEMA_VALID",
+ "AVG", "BIT_AND", "BIT_OR", "BIT_XOR", "COUNT", "GROUP_CONCAT",
+ "MAX", "MIN", "STD", "STDDEV", "STDDEV_POP", "STDDEV_SAMP",
+ "SUM", "VAR_POP", "VAR_SAMP", "VARIANCE", "CURRENT_DATE",
+ "CURRENT_TIME", "CURRENT_TIMESTAMP", "LOCALTIME",
+ "CURDATE", "CURTIME", "DATE_ADD", "DATE_SUB", "EXTRACT",
+ "LOCALTIMESTAMP", "NOW", "POSITION", "SUBSTR", "SUBSTRING",
+ "SYSDATE", "TRIM", "UTC_DATE", "UTC_TIME", "UTC_TIMESTAMP",
+ "ACCOUNT", "ACTION", "AFTER", "AGGREGATE", "ALGORITHM",
+ "ANY", "AT", "AUTHORS", "AUTOCOMMIT", "AUTOEXTEND_SIZE",
+ "AUTO_INCREMENT", "AVG_ROW_LENGTH", "BEGIN", "BINLOG",
+ "BIT", "BLOCK", "BOOL", "BOOLEAN", "BTREE", "CACHE",
+ "CASCADED", "CHAIN", "CHANGED", "CHANNEL", "CHECKSUM",
+ "PAGE_CHECKSUM", "CIPHER", "CLASS_ORIGIN", "CLIENT",
+ "CLOSE", "COALESCE", "CODE", "COLUMNS", "COLUMN_FORMAT",
+ "COLUMN_NAME", "COMMENT", "COMMIT", "COMPACT", "COMPLETION",
+ "COMPRESSED", "COMPRESSION", "CONCURRENT", "CONNECTION",
+ "CONSISTENT", "CONSTRAINT_CATALOG", "CONSTRAINT_SCHEMA",
+ "CONSTRAINT_NAME", "CONTAINS", "CONTEXT", "CONTRIBUTORS",
+ "COPY", "CPU", "CURSOR_NAME", "DATA", "DATAFILE",
+ "DEALLOCATE", "DEFAULT_AUTH", "DEFINER", "DELAY_KEY_WRITE",
+ "DES_KEY_FILE", "DIRECTORY", "DISABLE", "DISCARD",
+ "DISK", "DO", "DUMPFILE", "DUPLICATE", "DYNAMIC",
+ "ENABLE", "ENCRYPTION", "END", "ENDS", "ENGINE", "ENGINES",
+ "ERROR", "ERRORS", "ESCAPE", "EVEN", "EVENT", "EVENTS",
+ "EVERY", "EXCHANGE", "EXCLUSIVE", "EXPIRE", "EXPORT",
+ "EXTENDED", "EXTENT_SIZE", "FAST", "FAULTS", "FIELDS",
+ "FILE_BLOCK_SIZE", "FILTER", "FIRST", "FIXED", "FLUSH",
+ "FOLLOWS", "FOUND", "FULL", "FUNCTION", "GENERAL",
+ "GLOBAL", "GRANTS", "GROUP_REPLICATION", "HANDLER",
+ "HASH", "HELP", "HOST", "HOSTS", "IDENTIFIED", "IGNORE_SERVER_IDS",
+ "IMPORT", "INDEXES", "INITIAL_SIZE", "INPLACE", "INSERT_METHOD",
+ "INSTALL", "INSTANCE", "INVISIBLE", "INVOKER", "IO",
+ "IO_THREAD", "IPC", "ISOLATION", "ISSUER", "JSON",
+ "KEY_BLOCK_SIZE", "LANGUAGE", "LAST", "LEAVES", "LESS",
+ "LEVEL", "LIST", "LOCAL", "LOGFILE", "LOGS", "MASTER",
+ "MASTER_AUTO_POSITION", "MASTER_CONNECT_RETRY", "MASTER_DELAY",
+ "MASTER_HEARTBEAT_PERIOD", "MASTER_HOST", "MASTER_LOG_FILE",
+ "MASTER_LOG_POS", "MASTER_PASSWORD", "MASTER_PORT",
+ "MASTER_RETRY_COUNT", "MASTER_SSL", "MASTER_SSL_CA",
+ "MASTER_SSL_CAPATH", "MASTER_SSL_CERT", "MASTER_SSL_CIPHER",
+ "MASTER_SSL_CRL", "MASTER_SSL_CRLPATH", "MASTER_SSL_KEY",
+ "MASTER_TLS_VERSION", "MASTER_USER", "MAX_CONNECTIONS_PER_HOUR",
+ "MAX_QUERIES_PER_HOUR", "MAX_ROWS", "MAX_SIZE", "MAX_UPDATES_PER_HOUR",
+ "MAX_USER_CONNECTIONS", "MEDIUM", "MERGE", "MESSAGE_TEXT",
+ "MID", "MIGRATE", "MIN_ROWS", "MODE", "MODIFY", "MUTEX",
+ "MYSQL", "MYSQL_ERRNO", "NAME", "NAMES", "NCHAR",
+ "NEVER", "NEXT", "NO", "NODEGROUP", "NONE", "OFFLINE",
+ "OFFSET", "OJ", "OLD_PASSWORD", "ONE", "ONLINE", "ONLY",
+ "OPEN", "OPTIMIZER_COSTS", "OPTIONS", "OWNER", "PACK_KEYS",
+ "PAGE", "PARSER", "PARTIAL", "PARTITIONING", "PARTITIONS",
+ "PASSWORD", "PHASE", "PLUGIN", "PLUGIN_DIR", "PLUGINS",
+ "PORT", "PRECEDES", "PREPARE", "PRESERVE", "PREV",
+ "PROCESSLIST", "PROFILE", "PROFILES", "PROXY", "QUERY",
+ "QUICK", "REBUILD", "RECOVER", "REDO_BUFFER_SIZE",
+ "REDUNDANT", "RELAY", "RELAY_LOG_FILE", "RELAY_LOG_POS",
+ "RELAYLOG", "REMOVE", "REORGANIZE", "REPAIR", "REPLICATE_DO_DB",
+ "REPLICATE_DO_TABLE", "REPLICATE_IGNORE_DB", "REPLICATE_IGNORE_TABLE",
+ "REPLICATE_REWRITE_DB", "REPLICATE_WILD_DO_TABLE",
+ "REPLICATE_WILD_IGNORE_TABLE", "REPLICATION", "RESET",
+ "RESUME", "RETURNED_SQLSTATE", "RETURNS", "ROLE",
+ "ROLLBACK", "ROLLUP", "ROTATE", "ROW", "ROWS", "ROW_FORMAT",
+ "SAVEPOINT", "SCHEDULE", "SECURITY", "SERVER", "SESSION",
+ "SHARE", "SHARED", "SIGNED", "SIMPLE", "SLAVE", "SLOW",
+ "SNAPSHOT", "SOCKET", "SOME", "SONAME", "SOUNDS",
+ "SOURCE", "SQL_AFTER_GTIDS", "SQL_AFTER_MTS_GAPS",
+ "SQL_BEFORE_GTIDS", "SQL_BUFFER_RESULT", "SQL_CACHE",
+ "SQL_NO_CACHE", "SQL_THREAD", "START", "STARTS", "STATS_AUTO_RECALC",
+ "STATS_PERSISTENT", "STATS_SAMPLE_PAGES", "STATUS",
+ "STOP", "STORAGE", "STORED", "STRING", "SUBCLASS_ORIGIN",
+ "SUBJECT", "SUBPARTITION", "SUBPARTITIONS", "SUSPEND",
+ "SWAPS", "SWITCHES", "TABLE_NAME", "TABLESPACE", "TEMPORARY",
+ "TEMPTABLE", "THAN", "TRADITIONAL", "TRANSACTION",
+ "TRANSACTIONAL", "TRIGGERS", "TRUNCATE", "UNDEFINED",
+ "UNDOFILE", "UNDO_BUFFER_SIZE", "UNINSTALL", "UNKNOWN",
+ "UNTIL", "UPGRADE", "USER", "USE_FRM", "USER_RESOURCES",
+ "VALIDATION", "VALUE", "VARIABLES", "VIEW", "VIRTUAL",
+ "VISIBLE", "WAIT", "WARNINGS", "WITHOUT", "WORK",
+ "WRAPPER", "X509", "XA", "XML", "EUR", "USA", "JIS",
+ "ISO", "INTERNAL", "QUARTER", "MONTH", "DAY", "HOUR",
+ "MINUTE", "WEEK", "SECOND", "MICROSECOND", "TABLES",
+ "ROUTINE", "EXECUTE", "FILE", "PROCESS", "RELOAD",
+ "SHUTDOWN", "SUPER", "PRIVILEGES", "APPLICATION_PASSWORD_ADMIN",
+ "AUDIT_ADMIN", "BACKUP_ADMIN", "BINLOG_ADMIN", "BINLOG_ENCRYPTION_ADMIN",
+ "CLONE_ADMIN", "CONNECTION_ADMIN", "ENCRYPTION_KEY_ADMIN",
+ "FIREWALL_ADMIN", "FIREWALL_USER", "GROUP_REPLICATION_ADMIN",
+ "INNODB_REDO_LOG_ARCHIVE", "NDB_STORED_USER", "PERSIST_RO_VARIABLES_ADMIN",
+ "REPLICATION_APPLIER", "REPLICATION_SLAVE_ADMIN",
+ "RESOURCE_GROUP_ADMIN", "RESOURCE_GROUP_USER", "ROLE_ADMIN",
+ "SESSION_VARIABLES_ADMIN", "SET_USER_ID", "SHOW_ROUTINE",
+ "SYSTEM_VARIABLES_ADMIN", "TABLE_ENCRYPTION_ADMIN",
+ "VERSION_TOKEN_ADMIN", "XA_RECOVER_ADMIN", "ARMSCII8",
+ "ASCII", "BIG5", "CP1250", "CP1251", "CP1256", "CP1257",
+ "CP850", "CP852", "CP866", "CP932", "DEC8", "EUCJPMS",
+ "EUCKR", "GB2312", "GBK", "GEOSTD8", "GREEK", "HEBREW",
+ "HP8", "KEYBCS2", "KOI8R", "KOI8U", "LATIN1", "LATIN2",
+ "LATIN5", "LATIN7", "MACCE", "MACROMAN", "SJIS", "SWE7",
+ "TIS620", "UCS2", "UJIS", "UTF16", "UTF16LE", "UTF32",
+ "UTF8", "UTF8MB3", "UTF8MB4", "ARCHIVE", "BLACKHOLE",
+ "CSV", "FEDERATED", "INNODB", "MEMORY", "MRG_MYISAM",
+ "MYISAM", "NDB", "NDBCLUSTER", "PERFORMANCE_SCHEMA",
+ "TOKUDB", "REPEATABLE", "COMMITTED", "UNCOMMITTED",
+ "SERIALIZABLE", "GEOMETRYCOLLECTION", "GEOMCOLLECTION",
+ "GEOMETRY", "LINESTRING", "MULTILINESTRING", "MULTIPOINT",
+ "MULTIPOLYGON", "POINT", "POLYGON", "ABS", "ACOS",
+ "ADDDATE", "ADDTIME", "AES_DECRYPT", "AES_ENCRYPT",
+ "AREA", "ASBINARY", "ASIN", "ASTEXT", "ASWKB", "ASWKT",
+ "ASYMMETRIC_DECRYPT", "ASYMMETRIC_DERIVE", "ASYMMETRIC_ENCRYPT",
+ "ASYMMETRIC_SIGN", "ASYMMETRIC_VERIFY", "ATAN", "ATAN2",
+ "BENCHMARK", "BIN", "BIT_COUNT", "BIT_LENGTH", "BUFFER",
+ "CATALOG_NAME", "CEIL", "CEILING", "CENTROID", "CHARACTER_LENGTH",
+ "CHARSET", "CHAR_LENGTH", "COERCIBILITY", "COLLATION",
+ "COMPRESS", "CONCAT", "CONCAT_WS", "CONNECTION_ID",
+ "CONV", "CONVERT_TZ", "COS", "COT", "CRC32", "CREATE_ASYMMETRIC_PRIV_KEY",
+ "CREATE_ASYMMETRIC_PUB_KEY", "CREATE_DH_PARAMETERS",
+ "CREATE_DIGEST", "CROSSES", "DATEDIFF", "DATE_FORMAT",
+ "DAYNAME", "DAYOFMONTH", "DAYOFWEEK", "DAYOFYEAR",
+ "DECODE", "DEGREES", "DES_DECRYPT", "DES_ENCRYPT",
+ "DIMENSION", "DISJOINT", "ELT", "ENCODE", "ENCRYPT",
+ "ENDPOINT", "ENVELOPE", "EQUALS", "EXP", "EXPORT_SET",
+ "EXTERIORRING", "EXTRACTVALUE", "FIELD", "FIND_IN_SET",
+ "FLOOR", "FORMAT", "FOUND_ROWS", "FROM_BASE64", "FROM_DAYS",
+ "FROM_UNIXTIME", "GEOMCOLLFROMTEXT", "GEOMCOLLFROMWKB",
+ "GEOMETRYCOLLECTIONFROMTEXT", "GEOMETRYCOLLECTIONFROMWKB",
+ "GEOMETRYFROMTEXT", "GEOMETRYFROMWKB", "GEOMETRYN",
+ "GEOMETRYTYPE", "GEOMFROMTEXT", "GEOMFROMWKB", "GET_FORMAT",
+ "GET_LOCK", "GLENGTH", "GREATEST", "GTID_SUBSET",
+ "GTID_SUBTRACT", "HEX", "IFNULL", "INET6_ATON", "INET6_NTOA",
+ "INET_ATON", "INET_NTOA", "INSTR", "INTERIORRINGN",
+ "INTERSECTS", "ISCLOSED", "ISEMPTY", "ISNULL", "ISSIMPLE",
+ "IS_FREE_LOCK", "IS_IPV4", "IS_IPV4_COMPAT", "IS_IPV4_MAPPED",
+ "IS_IPV6", "IS_USED_LOCK", "LAST_INSERT_ID", "LCASE",
+ "LEAST", "LENGTH", "LINEFROMTEXT", "LINEFROMWKB",
+ "LINESTRINGFROMTEXT", "LINESTRINGFROMWKB", "LN", "LOAD_FILE",
+ "LOCATE", "LOG", "LOG10", "LOG2", "LOWER", "LPAD",
+ "LTRIM", "MAKEDATE", "MAKETIME", "MAKE_SET", "MASTER_POS_WAIT",
+ "MBRCONTAINS", "MBRDISJOINT", "MBREQUAL", "MBRINTERSECTS",
+ "MBROVERLAPS", "MBRTOUCHES", "MBRWITHIN", "MD5", "MLINEFROMTEXT",
+ "MLINEFROMWKB", "MONTHNAME", "MPOINTFROMTEXT", "MPOINTFROMWKB",
+ "MPOLYFROMTEXT", "MPOLYFROMWKB", "MULTILINESTRINGFROMTEXT",
+ "MULTILINESTRINGFROMWKB", "MULTIPOINTFROMTEXT", "MULTIPOINTFROMWKB",
+ "MULTIPOLYGONFROMTEXT", "MULTIPOLYGONFROMWKB", "NAME_CONST",
+ "NULLIF", "NUMGEOMETRIES", "NUMINTERIORRINGS", "NUMPOINTS",
+ "OCT", "OCTET_LENGTH", "ORD", "OVERLAPS", "PERIOD_ADD",
+ "PERIOD_DIFF", "PI", "POINTFROMTEXT", "POINTFROMWKB",
+ "POINTN", "POLYFROMTEXT", "POLYFROMWKB", "POLYGONFROMTEXT",
+ "POLYGONFROMWKB", "POW", "POWER", "QUOTE", "RADIANS",
+ "RAND", "RANDOM_BYTES", "RELEASE_LOCK", "REVERSE",
+ "ROUND", "ROW_COUNT", "RPAD", "RTRIM", "SEC_TO_TIME",
+ "SESSION_USER", "SHA", "SHA1", "SHA2", "SCHEMA_NAME",
+ "SIGN", "SIN", "SLEEP", "SOUNDEX", "SQL_THREAD_WAIT_AFTER_GTIDS",
+ "SQRT", "SRID", "STARTPOINT", "STRCMP", "STR_TO_DATE",
+ "ST_AREA", "ST_ASBINARY", "ST_ASTEXT", "ST_ASWKB",
+ "ST_ASWKT", "ST_BUFFER", "ST_CENTROID", "ST_CONTAINS",
+ "ST_CROSSES", "ST_DIFFERENCE", "ST_DIMENSION", "ST_DISJOINT",
+ "ST_DISTANCE", "ST_ENDPOINT", "ST_ENVELOPE", "ST_EQUALS",
+ "ST_EXTERIORRING", "ST_GEOMCOLLFROMTEXT", "ST_GEOMCOLLFROMTXT",
+ "ST_GEOMCOLLFROMWKB", "ST_GEOMETRYCOLLECTIONFROMTEXT",
+ "ST_GEOMETRYCOLLECTIONFROMWKB", "ST_GEOMETRYFROMTEXT",
+ "ST_GEOMETRYFROMWKB", "ST_GEOMETRYN", "ST_GEOMETRYTYPE",
+ "ST_GEOMFROMTEXT", "ST_GEOMFROMWKB", "ST_INTERIORRINGN",
+ "ST_INTERSECTION", "ST_INTERSECTS", "ST_ISCLOSED",
+ "ST_ISEMPTY", "ST_ISSIMPLE", "ST_LINEFROMTEXT", "ST_LINEFROMWKB",
+ "ST_LINESTRINGFROMTEXT", "ST_LINESTRINGFROMWKB", "ST_NUMGEOMETRIES",
+ "ST_NUMINTERIORRING", "ST_NUMINTERIORRINGS", "ST_NUMPOINTS",
+ "ST_OVERLAPS", "ST_POINTFROMTEXT", "ST_POINTFROMWKB",
+ "ST_POINTN", "ST_POLYFROMTEXT", "ST_POLYFROMWKB",
+ "ST_POLYGONFROMTEXT", "ST_POLYGONFROMWKB", "ST_SRID",
+ "ST_STARTPOINT", "ST_SYMDIFFERENCE", "ST_TOUCHES",
+ "ST_UNION", "ST_WITHIN", "ST_X", "ST_Y", "SUBDATE",
+ "SUBSTRING_INDEX", "SUBTIME", "SYSTEM_USER", "TAN",
+ "TIMEDIFF", "TIMESTAMPADD", "TIMESTAMPDIFF", "TIME_FORMAT",
+ "TIME_TO_SEC", "TOUCHES", "TO_BASE64", "TO_DAYS",
+ "TO_SECONDS", "UCASE", "UNCOMPRESS", "UNCOMPRESSED_LENGTH",
+ "UNHEX", "UNIX_TIMESTAMP", "UPDATEXML", "UPPER", "UUID",
+ "UUID_SHORT", "VALIDATE_PASSWORD_STRENGTH", "VERSION",
+ "WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS", "WEEKDAY", "WEEKOFYEAR",
+ "WEIGHT_STRING", "WITHIN", "YEARWEEK", "Y_FUNCTION",
+ "X_FUNCTION", "VAR_ASSIGN", "PLUS_ASSIGN", "MINUS_ASSIGN",
+ "MULT_ASSIGN", "DIV_ASSIGN", "MOD_ASSIGN", "AND_ASSIGN",
+ "XOR_ASSIGN", "OR_ASSIGN", "STAR", "DIVIDE", "MODULE",
+ "PLUS", "MINUSMINUS", "MINUS", "DIV", "MOD", "EQUAL_SYMBOL",
+ "GREATER_SYMBOL", "LESS_SYMBOL", "EXCLAMATION_SYMBOL",
+ "BIT_NOT_OP", "BIT_OR_OP", "BIT_AND_OP", "BIT_XOR_OP",
+ "DOT", "LR_BRACKET", "RR_BRACKET", "COMMA", "SEMI",
+ "AT_SIGN", "ZERO_DECIMAL", "ONE_DECIMAL", "TWO_DECIMAL",
+ "SINGLE_QUOTE_SYMB", "DOUBLE_QUOTE_SYMB", "REVERSE_QUOTE_SYMB",
+ "COLON_SYMB", "CHARSET_REVERSE_QOUTE_STRING", "FILESIZE_LITERAL",
+ "START_NATIONAL_STRING_LITERAL", "STRING_LITERAL",
+ "DECIMAL_LITERAL", "HEXADECIMAL_LITERAL", "REAL_LITERAL",
+ "NULL_SPEC_LITERAL", "BIT_STRING", "STRING_CHARSET_NAME",
+ "DOT_ID", "ID", "REVERSE_QUOTE_ID", "STRING_USER_NAME",
+ "LOCAL_ID", "GLOBAL_ID", "ERROR_RECONGNIGION" ];
+
+var ruleNames = [ "program", "statement", "sqlStatements", "sqlStatement",
+ "emptyStatement", "ddlStatement", "dmlStatement", "transactionStatement",
+ "replicationStatement", "preparedStatement", "compoundStatement",
+ "administrationStatement", "utilityStatement", "createDatabase",
+ "createEvent", "createIndex", "createLogfileGroup", "createProcedure",
+ "createFunction", "createServer", "createTable", "createTablespaceInnodb",
+ "createTablespaceNdb", "createTrigger", "createView",
+ "createDatabaseOption", "ownerStatement", "scheduleExpression",
+ "timestampValue", "intervalExpr", "intervalType", "enableType",
+ "indexType", "indexOption", "procedureParameter", "functionParameter",
+ "routineOption", "serverOption", "createDefinitions",
+ "createDefinition", "columnDefinition", "columnConstraint",
+ "tableConstraint", "referenceDefinition", "referenceAction",
+ "referenceControlType", "indexColumnDefinition", "tableOption",
+ "tablespaceStorage", "partitionDefinitions", "partitionFunctionDefinition",
+ "subpartitionFunctionDefinition", "partitionDefinition",
+ "partitionDefinerAtom", "partitionDefinerVector", "subpartitionDefinition",
+ "partitionOption", "alterDatabase", "alterEvent", "alterFunction",
+ "alterInstance", "alterLogfileGroup", "alterProcedure",
+ "alterServer", "alterTable", "alterTablespace", "alterView",
+ "alterSpecification", "dropDatabase", "dropEvent", "dropIndex",
+ "dropLogfileGroup", "dropProcedure", "dropFunction",
+ "dropServer", "dropTable", "dropTablespace", "dropTrigger",
+ "dropView", "renameTable", "renameTableClause", "truncateTable",
+ "callStatement", "deleteStatement", "doStatement", "handlerStatement",
+ "insertStatement", "loadDataStatement", "loadXmlStatement",
+ "replaceStatement", "selectStatement", "updateStatement",
+ "insertStatementValue", "updatedElement", "assignmentField",
+ "lockClause", "singleDeleteStatement", "multipleDeleteStatement",
+ "handlerOpenStatement", "handlerReadIndexStatement",
+ "handlerReadStatement", "handlerCloseStatement", "singleUpdateStatement",
+ "multipleUpdateStatement", "orderByClause", "orderByExpression",
+ "tableSources", "tableSource", "tableSourceItem", "indexHint",
+ "indexHintType", "joinPart", "queryExpression", "queryExpressionNointo",
+ "querySpecification", "querySpecificationNointo", "unionParenthesis",
+ "unionStatement", "selectSpec", "selectElements", "selectElement",
+ "selectIntoExpression", "selectFieldsInto", "selectLinesInto",
+ "fromClause", "groupByItem", "limitClause", "limitClauseAtom",
+ "startTransaction", "beginWork", "commitWork", "rollbackWork",
+ "savepointStatement", "rollbackStatement", "releaseStatement",
+ "lockTables", "unlockTables", "setAutocommitStatement",
+ "setTransactionStatement", "transactionMode", "lockTableElement",
+ "lockAction", "transactionOption", "transactionLevel",
+ "changeMaster", "changeReplicationFilter", "purgeBinaryLogs",
+ "resetMaster", "resetSlave", "startSlave", "stopSlave",
+ "startGroupReplication", "stopGroupReplication", "masterOption",
+ "stringMasterOption", "decimalMasterOption", "boolMasterOption",
+ "channelOption", "replicationFilter", "tablePair", "threadType",
+ "untilOption", "connectionOption", "gtuidSet", "xaStartTransaction",
+ "xaEndTransaction", "xaPrepareStatement", "xaCommitWork",
+ "xaRollbackWork", "xaRecoverWork", "prepareStatement",
+ "executeStatement", "deallocatePrepare", "routineBody",
+ "blockStatement", "caseStatement", "ifStatement", "iterateStatement",
+ "leaveStatement", "loopStatement", "repeatStatement",
+ "returnStatement", "whileStatement", "cursorStatement",
+ "declareVariable", "declareCondition", "declareCursor",
+ "declareHandler", "handlerConditionValue", "procedureSqlStatement",
+ "caseAlternative", "elifAlternative", "alterUser", "createUser",
+ "dropUser", "grantStatement", "grantProxy", "renameUser",
+ "revokeStatement", "revokeProxy", "setPasswordStatement",
+ "userSpecification", "userAuthOption", "tlsOption", "userResourceOption",
+ "userPasswordOption", "userLockOption", "privelegeClause",
+ "privilege", "privilegeLevel", "renameUserClause", "analyzeTable",
+ "checkTable", "checksumTable", "optimizeTable", "repairTable",
+ "checkTableOption", "createUdfunction", "installPlugin",
+ "uninstallPlugin", "setStatement", "showStatement", "variableClause",
+ "showCommonEntity", "showFilter", "showGlobalInfoClause",
+ "showSchemaEntity", "showProfileType", "binlogStatement",
+ "cacheIndexStatement", "flushStatement", "killStatement",
+ "loadIndexIntoCache", "resetStatement", "shutdownStatement",
+ "tableIndexes", "flushOption", "flushTableOption", "loadedTableIndexes",
+ "simpleDescribeStatement", "fullDescribeStatement", "helpStatement",
+ "useStatement", "signalStatement", "resignalStatement",
+ "signalConditionInformation", "diagnosticsStatement",
+ "diagnosticsConditionInformationName", "describeObjectClause",
+ "fullId", "tableName", "fullColumnName", "indexColumnName",
+ "userName", "mysqlVariable", "charsetName", "collationName",
+ "engineName", "uuidSet", "xid", "xuidStringId", "authPlugin",
+ "uid", "simpleId", "dottedId", "decimalLiteral", "fileSizeLiteral",
+ "stringLiteral", "booleanLiteral", "hexadecimalLiteral",
+ "nullNotnull", "constant", "dataType", "collectionOptions",
+ "convertedDataType", "lengthOneDimension", "lengthTwoDimension",
+ "lengthTwoOptionalDimension", "uidList", "tables", "indexColumnNames",
+ "expressions", "expressionsWithDefaults", "constants",
+ "simpleStrings", "userVariables", "defaultValue", "currentTimestamp",
+ "expressionOrDefault", "ifExists", "ifNotExists", "functionCall",
+ "specificFunction", "caseFuncAlternative", "levelsInWeightString",
+ "levelInWeightListElement", "aggregateWindowedFunction",
+ "scalarFunctionName", "passwordFunctionClause", "functionArgs",
+ "functionArg", "expression", "predicate", "expressionAtom",
+ "unaryOperator", "comparisonOperator", "logicalOperator",
+ "bitOperator", "mathOperator", "charsetNameBase", "transactionLevelBase",
+ "privilegesBase", "intervalTypeBase", "dataTypeBase",
+ "keywordsCanBeId", "functionNameBase" ];
+
+function SqlParser (input) {
+ antlr4.Parser.call(this, input);
+ this._interp = new antlr4.atn.ParserATNSimulator(this, atn, decisionsToDFA, sharedContextCache);
+ this.ruleNames = ruleNames;
+ this.literalNames = literalNames;
+ this.symbolicNames = symbolicNames;
+ return this;
+}
+
+SqlParser.prototype = Object.create(antlr4.Parser.prototype);
+SqlParser.prototype.constructor = SqlParser;
+
+Object.defineProperty(SqlParser.prototype, "atn", {
+ get : function() {
+ return atn;
+ }
+});
+
+SqlParser.EOF = antlr4.Token.EOF;
+SqlParser.SPACE = 1;
+SqlParser.SPEC_MYSQL_COMMENT = 2;
+SqlParser.COMMENT_INPUT = 3;
+SqlParser.LINE_COMMENT = 4;
+SqlParser.ADD = 5;
+SqlParser.ALL = 6;
+SqlParser.ALTER = 7;
+SqlParser.ALWAYS = 8;
+SqlParser.ANALYZE = 9;
+SqlParser.AND = 10;
+SqlParser.AS = 11;
+SqlParser.ASC = 12;
+SqlParser.BEFORE = 13;
+SqlParser.BETWEEN = 14;
+SqlParser.BOTH = 15;
+SqlParser.BY = 16;
+SqlParser.CALL = 17;
+SqlParser.CASCADE = 18;
+SqlParser.CASE = 19;
+SqlParser.CAST = 20;
+SqlParser.CHANGE = 21;
+SqlParser.CHARACTER = 22;
+SqlParser.CHECK = 23;
+SqlParser.COLLATE = 24;
+SqlParser.COLUMN = 25;
+SqlParser.CONDITION = 26;
+SqlParser.CONSTRAINT = 27;
+SqlParser.CONTINUE = 28;
+SqlParser.CONVERT = 29;
+SqlParser.CREATE = 30;
+SqlParser.CROSS = 31;
+SqlParser.CURRENT = 32;
+SqlParser.CURRENT_USER = 33;
+SqlParser.CURSOR = 34;
+SqlParser.DATABASE = 35;
+SqlParser.DATABASES = 36;
+SqlParser.DECLARE = 37;
+SqlParser.DEFAULT = 38;
+SqlParser.DELAYED = 39;
+SqlParser.DELETE = 40;
+SqlParser.DESC = 41;
+SqlParser.DESCRIBE = 42;
+SqlParser.DETERMINISTIC = 43;
+SqlParser.DIAGNOSTICS = 44;
+SqlParser.DISTINCT = 45;
+SqlParser.DISTINCTROW = 46;
+SqlParser.DROP = 47;
+SqlParser.EACH = 48;
+SqlParser.ELSE = 49;
+SqlParser.ELSEIF = 50;
+SqlParser.ENCLOSED = 51;
+SqlParser.ESCAPED = 52;
+SqlParser.EXISTS = 53;
+SqlParser.EXIT = 54;
+SqlParser.EXPLAIN = 55;
+SqlParser.FALSE = 56;
+SqlParser.FETCH = 57;
+SqlParser.FOR = 58;
+SqlParser.FORCE = 59;
+SqlParser.FOREIGN = 60;
+SqlParser.FROM = 61;
+SqlParser.FULLTEXT = 62;
+SqlParser.GENERATED = 63;
+SqlParser.GET = 64;
+SqlParser.GRANT = 65;
+SqlParser.GROUP = 66;
+SqlParser.HAVING = 67;
+SqlParser.HIGH_PRIORITY = 68;
+SqlParser.IF = 69;
+SqlParser.IGNORE = 70;
+SqlParser.IN = 71;
+SqlParser.INDEX = 72;
+SqlParser.INFILE = 73;
+SqlParser.INNER = 74;
+SqlParser.INOUT = 75;
+SqlParser.INSERT = 76;
+SqlParser.INTERVAL = 77;
+SqlParser.INTO = 78;
+SqlParser.IS = 79;
+SqlParser.ITERATE = 80;
+SqlParser.JOIN = 81;
+SqlParser.KEY = 82;
+SqlParser.KEYS = 83;
+SqlParser.KILL = 84;
+SqlParser.LEADING = 85;
+SqlParser.LEAVE = 86;
+SqlParser.LEFT = 87;
+SqlParser.LIKE = 88;
+SqlParser.LIMIT = 89;
+SqlParser.LINEAR = 90;
+SqlParser.LINES = 91;
+SqlParser.LOAD = 92;
+SqlParser.LOCK = 93;
+SqlParser.LOOP = 94;
+SqlParser.LOW_PRIORITY = 95;
+SqlParser.MASTER_BIND = 96;
+SqlParser.MASTER_SSL_VERIFY_SERVER_CERT = 97;
+SqlParser.MATCH = 98;
+SqlParser.MAXVALUE = 99;
+SqlParser.MODIFIES = 100;
+SqlParser.NATURAL = 101;
+SqlParser.NOT = 102;
+SqlParser.NO_WRITE_TO_BINLOG = 103;
+SqlParser.NULL_LITERAL = 104;
+SqlParser.NUMBER = 105;
+SqlParser.ON = 106;
+SqlParser.OPTIMIZE = 107;
+SqlParser.OPTION = 108;
+SqlParser.OPTIONALLY = 109;
+SqlParser.OR = 110;
+SqlParser.ORDER = 111;
+SqlParser.OUT = 112;
+SqlParser.OUTER = 113;
+SqlParser.OUTFILE = 114;
+SqlParser.PARTITION = 115;
+SqlParser.PRIMARY = 116;
+SqlParser.PROCEDURE = 117;
+SqlParser.PURGE = 118;
+SqlParser.RANGE = 119;
+SqlParser.READ = 120;
+SqlParser.READS = 121;
+SqlParser.REFERENCES = 122;
+SqlParser.REGEXP = 123;
+SqlParser.RELEASE = 124;
+SqlParser.RENAME = 125;
+SqlParser.REPEAT = 126;
+SqlParser.REPLACE = 127;
+SqlParser.REQUIRE = 128;
+SqlParser.RESIGNAL = 129;
+SqlParser.RESTRICT = 130;
+SqlParser.RETURN = 131;
+SqlParser.REVOKE = 132;
+SqlParser.RIGHT = 133;
+SqlParser.RLIKE = 134;
+SqlParser.SCHEMA = 135;
+SqlParser.SCHEMAS = 136;
+SqlParser.SELECT = 137;
+SqlParser.SET = 138;
+SqlParser.SEPARATOR = 139;
+SqlParser.SHOW = 140;
+SqlParser.SIGNAL = 141;
+SqlParser.SPATIAL = 142;
+SqlParser.SQL = 143;
+SqlParser.SQLEXCEPTION = 144;
+SqlParser.SQLSTATE = 145;
+SqlParser.SQLWARNING = 146;
+SqlParser.SQL_BIG_RESULT = 147;
+SqlParser.SQL_CALC_FOUND_ROWS = 148;
+SqlParser.SQL_SMALL_RESULT = 149;
+SqlParser.SSL = 150;
+SqlParser.STACKED = 151;
+SqlParser.STARTING = 152;
+SqlParser.STRAIGHT_JOIN = 153;
+SqlParser.TABLE = 154;
+SqlParser.TERMINATED = 155;
+SqlParser.THEN = 156;
+SqlParser.TO = 157;
+SqlParser.TRAILING = 158;
+SqlParser.TRIGGER = 159;
+SqlParser.TRUE = 160;
+SqlParser.UNDO = 161;
+SqlParser.UNION = 162;
+SqlParser.UNIQUE = 163;
+SqlParser.UNLOCK = 164;
+SqlParser.UNSIGNED = 165;
+SqlParser.UPDATE = 166;
+SqlParser.USAGE = 167;
+SqlParser.USE = 168;
+SqlParser.USING = 169;
+SqlParser.VALUES = 170;
+SqlParser.WHEN = 171;
+SqlParser.WHERE = 172;
+SqlParser.WHILE = 173;
+SqlParser.WITH = 174;
+SqlParser.WRITE = 175;
+SqlParser.XOR = 176;
+SqlParser.ZEROFILL = 177;
+SqlParser.TINYINT = 178;
+SqlParser.SMALLINT = 179;
+SqlParser.MEDIUMINT = 180;
+SqlParser.MIDDLEINT = 181;
+SqlParser.INT = 182;
+SqlParser.INT1 = 183;
+SqlParser.INT2 = 184;
+SqlParser.INT3 = 185;
+SqlParser.INT4 = 186;
+SqlParser.INT8 = 187;
+SqlParser.INTEGER = 188;
+SqlParser.BIGINT = 189;
+SqlParser.REAL = 190;
+SqlParser.DOUBLE = 191;
+SqlParser.PRECISION = 192;
+SqlParser.FLOAT = 193;
+SqlParser.FLOAT4 = 194;
+SqlParser.FLOAT8 = 195;
+SqlParser.DECIMAL = 196;
+SqlParser.DEC = 197;
+SqlParser.NUMERIC = 198;
+SqlParser.DATE = 199;
+SqlParser.TIME = 200;
+SqlParser.TIMESTAMP = 201;
+SqlParser.DATETIME = 202;
+SqlParser.YEAR = 203;
+SqlParser.CHAR = 204;
+SqlParser.VARCHAR = 205;
+SqlParser.NVARCHAR = 206;
+SqlParser.NATIONAL = 207;
+SqlParser.BINARY = 208;
+SqlParser.VARBINARY = 209;
+SqlParser.TINYBLOB = 210;
+SqlParser.BLOB = 211;
+SqlParser.MEDIUMBLOB = 212;
+SqlParser.LONG = 213;
+SqlParser.LONGBLOB = 214;
+SqlParser.TINYTEXT = 215;
+SqlParser.TEXT = 216;
+SqlParser.MEDIUMTEXT = 217;
+SqlParser.LONGTEXT = 218;
+SqlParser.ENUM = 219;
+SqlParser.VARYING = 220;
+SqlParser.SERIAL = 221;
+SqlParser.YEAR_MONTH = 222;
+SqlParser.DAY_HOUR = 223;
+SqlParser.DAY_MINUTE = 224;
+SqlParser.DAY_SECOND = 225;
+SqlParser.HOUR_MINUTE = 226;
+SqlParser.HOUR_SECOND = 227;
+SqlParser.MINUTE_SECOND = 228;
+SqlParser.SECOND_MICROSECOND = 229;
+SqlParser.MINUTE_MICROSECOND = 230;
+SqlParser.HOUR_MICROSECOND = 231;
+SqlParser.DAY_MICROSECOND = 232;
+SqlParser.JSON_VALID = 233;
+SqlParser.JSON_SCHEMA_VALID = 234;
+SqlParser.AVG = 235;
+SqlParser.BIT_AND = 236;
+SqlParser.BIT_OR = 237;
+SqlParser.BIT_XOR = 238;
+SqlParser.COUNT = 239;
+SqlParser.GROUP_CONCAT = 240;
+SqlParser.MAX = 241;
+SqlParser.MIN = 242;
+SqlParser.STD = 243;
+SqlParser.STDDEV = 244;
+SqlParser.STDDEV_POP = 245;
+SqlParser.STDDEV_SAMP = 246;
+SqlParser.SUM = 247;
+SqlParser.VAR_POP = 248;
+SqlParser.VAR_SAMP = 249;
+SqlParser.VARIANCE = 250;
+SqlParser.CURRENT_DATE = 251;
+SqlParser.CURRENT_TIME = 252;
+SqlParser.CURRENT_TIMESTAMP = 253;
+SqlParser.LOCALTIME = 254;
+SqlParser.CURDATE = 255;
+SqlParser.CURTIME = 256;
+SqlParser.DATE_ADD = 257;
+SqlParser.DATE_SUB = 258;
+SqlParser.EXTRACT = 259;
+SqlParser.LOCALTIMESTAMP = 260;
+SqlParser.NOW = 261;
+SqlParser.POSITION = 262;
+SqlParser.SUBSTR = 263;
+SqlParser.SUBSTRING = 264;
+SqlParser.SYSDATE = 265;
+SqlParser.TRIM = 266;
+SqlParser.UTC_DATE = 267;
+SqlParser.UTC_TIME = 268;
+SqlParser.UTC_TIMESTAMP = 269;
+SqlParser.ACCOUNT = 270;
+SqlParser.ACTION = 271;
+SqlParser.AFTER = 272;
+SqlParser.AGGREGATE = 273;
+SqlParser.ALGORITHM = 274;
+SqlParser.ANY = 275;
+SqlParser.AT = 276;
+SqlParser.AUTHORS = 277;
+SqlParser.AUTOCOMMIT = 278;
+SqlParser.AUTOEXTEND_SIZE = 279;
+SqlParser.AUTO_INCREMENT = 280;
+SqlParser.AVG_ROW_LENGTH = 281;
+SqlParser.BEGIN = 282;
+SqlParser.BINLOG = 283;
+SqlParser.BIT = 284;
+SqlParser.BLOCK = 285;
+SqlParser.BOOL = 286;
+SqlParser.BOOLEAN = 287;
+SqlParser.BTREE = 288;
+SqlParser.CACHE = 289;
+SqlParser.CASCADED = 290;
+SqlParser.CHAIN = 291;
+SqlParser.CHANGED = 292;
+SqlParser.CHANNEL = 293;
+SqlParser.CHECKSUM = 294;
+SqlParser.PAGE_CHECKSUM = 295;
+SqlParser.CIPHER = 296;
+SqlParser.CLASS_ORIGIN = 297;
+SqlParser.CLIENT = 298;
+SqlParser.CLOSE = 299;
+SqlParser.COALESCE = 300;
+SqlParser.CODE = 301;
+SqlParser.COLUMNS = 302;
+SqlParser.COLUMN_FORMAT = 303;
+SqlParser.COLUMN_NAME = 304;
+SqlParser.COMMENT = 305;
+SqlParser.COMMIT = 306;
+SqlParser.COMPACT = 307;
+SqlParser.COMPLETION = 308;
+SqlParser.COMPRESSED = 309;
+SqlParser.COMPRESSION = 310;
+SqlParser.CONCURRENT = 311;
+SqlParser.CONNECTION = 312;
+SqlParser.CONSISTENT = 313;
+SqlParser.CONSTRAINT_CATALOG = 314;
+SqlParser.CONSTRAINT_SCHEMA = 315;
+SqlParser.CONSTRAINT_NAME = 316;
+SqlParser.CONTAINS = 317;
+SqlParser.CONTEXT = 318;
+SqlParser.CONTRIBUTORS = 319;
+SqlParser.COPY = 320;
+SqlParser.CPU = 321;
+SqlParser.CURSOR_NAME = 322;
+SqlParser.DATA = 323;
+SqlParser.DATAFILE = 324;
+SqlParser.DEALLOCATE = 325;
+SqlParser.DEFAULT_AUTH = 326;
+SqlParser.DEFINER = 327;
+SqlParser.DELAY_KEY_WRITE = 328;
+SqlParser.DES_KEY_FILE = 329;
+SqlParser.DIRECTORY = 330;
+SqlParser.DISABLE = 331;
+SqlParser.DISCARD = 332;
+SqlParser.DISK = 333;
+SqlParser.DO = 334;
+SqlParser.DUMPFILE = 335;
+SqlParser.DUPLICATE = 336;
+SqlParser.DYNAMIC = 337;
+SqlParser.ENABLE = 338;
+SqlParser.ENCRYPTION = 339;
+SqlParser.END = 340;
+SqlParser.ENDS = 341;
+SqlParser.ENGINE = 342;
+SqlParser.ENGINES = 343;
+SqlParser.ERROR = 344;
+SqlParser.ERRORS = 345;
+SqlParser.ESCAPE = 346;
+SqlParser.EVEN = 347;
+SqlParser.EVENT = 348;
+SqlParser.EVENTS = 349;
+SqlParser.EVERY = 350;
+SqlParser.EXCHANGE = 351;
+SqlParser.EXCLUSIVE = 352;
+SqlParser.EXPIRE = 353;
+SqlParser.EXPORT = 354;
+SqlParser.EXTENDED = 355;
+SqlParser.EXTENT_SIZE = 356;
+SqlParser.FAST = 357;
+SqlParser.FAULTS = 358;
+SqlParser.FIELDS = 359;
+SqlParser.FILE_BLOCK_SIZE = 360;
+SqlParser.FILTER = 361;
+SqlParser.FIRST = 362;
+SqlParser.FIXED = 363;
+SqlParser.FLUSH = 364;
+SqlParser.FOLLOWS = 365;
+SqlParser.FOUND = 366;
+SqlParser.FULL = 367;
+SqlParser.FUNCTION = 368;
+SqlParser.GENERAL = 369;
+SqlParser.GLOBAL = 370;
+SqlParser.GRANTS = 371;
+SqlParser.GROUP_REPLICATION = 372;
+SqlParser.HANDLER = 373;
+SqlParser.HASH = 374;
+SqlParser.HELP = 375;
+SqlParser.HOST = 376;
+SqlParser.HOSTS = 377;
+SqlParser.IDENTIFIED = 378;
+SqlParser.IGNORE_SERVER_IDS = 379;
+SqlParser.IMPORT = 380;
+SqlParser.INDEXES = 381;
+SqlParser.INITIAL_SIZE = 382;
+SqlParser.INPLACE = 383;
+SqlParser.INSERT_METHOD = 384;
+SqlParser.INSTALL = 385;
+SqlParser.INSTANCE = 386;
+SqlParser.INVISIBLE = 387;
+SqlParser.INVOKER = 388;
+SqlParser.IO = 389;
+SqlParser.IO_THREAD = 390;
+SqlParser.IPC = 391;
+SqlParser.ISOLATION = 392;
+SqlParser.ISSUER = 393;
+SqlParser.JSON = 394;
+SqlParser.KEY_BLOCK_SIZE = 395;
+SqlParser.LANGUAGE = 396;
+SqlParser.LAST = 397;
+SqlParser.LEAVES = 398;
+SqlParser.LESS = 399;
+SqlParser.LEVEL = 400;
+SqlParser.LIST = 401;
+SqlParser.LOCAL = 402;
+SqlParser.LOGFILE = 403;
+SqlParser.LOGS = 404;
+SqlParser.MASTER = 405;
+SqlParser.MASTER_AUTO_POSITION = 406;
+SqlParser.MASTER_CONNECT_RETRY = 407;
+SqlParser.MASTER_DELAY = 408;
+SqlParser.MASTER_HEARTBEAT_PERIOD = 409;
+SqlParser.MASTER_HOST = 410;
+SqlParser.MASTER_LOG_FILE = 411;
+SqlParser.MASTER_LOG_POS = 412;
+SqlParser.MASTER_PASSWORD = 413;
+SqlParser.MASTER_PORT = 414;
+SqlParser.MASTER_RETRY_COUNT = 415;
+SqlParser.MASTER_SSL = 416;
+SqlParser.MASTER_SSL_CA = 417;
+SqlParser.MASTER_SSL_CAPATH = 418;
+SqlParser.MASTER_SSL_CERT = 419;
+SqlParser.MASTER_SSL_CIPHER = 420;
+SqlParser.MASTER_SSL_CRL = 421;
+SqlParser.MASTER_SSL_CRLPATH = 422;
+SqlParser.MASTER_SSL_KEY = 423;
+SqlParser.MASTER_TLS_VERSION = 424;
+SqlParser.MASTER_USER = 425;
+SqlParser.MAX_CONNECTIONS_PER_HOUR = 426;
+SqlParser.MAX_QUERIES_PER_HOUR = 427;
+SqlParser.MAX_ROWS = 428;
+SqlParser.MAX_SIZE = 429;
+SqlParser.MAX_UPDATES_PER_HOUR = 430;
+SqlParser.MAX_USER_CONNECTIONS = 431;
+SqlParser.MEDIUM = 432;
+SqlParser.MERGE = 433;
+SqlParser.MESSAGE_TEXT = 434;
+SqlParser.MID = 435;
+SqlParser.MIGRATE = 436;
+SqlParser.MIN_ROWS = 437;
+SqlParser.MODE = 438;
+SqlParser.MODIFY = 439;
+SqlParser.MUTEX = 440;
+SqlParser.MYSQL = 441;
+SqlParser.MYSQL_ERRNO = 442;
+SqlParser.NAME = 443;
+SqlParser.NAMES = 444;
+SqlParser.NCHAR = 445;
+SqlParser.NEVER = 446;
+SqlParser.NEXT = 447;
+SqlParser.NO = 448;
+SqlParser.NODEGROUP = 449;
+SqlParser.NONE = 450;
+SqlParser.OFFLINE = 451;
+SqlParser.OFFSET = 452;
+SqlParser.OJ = 453;
+SqlParser.OLD_PASSWORD = 454;
+SqlParser.ONE = 455;
+SqlParser.ONLINE = 456;
+SqlParser.ONLY = 457;
+SqlParser.OPEN = 458;
+SqlParser.OPTIMIZER_COSTS = 459;
+SqlParser.OPTIONS = 460;
+SqlParser.OWNER = 461;
+SqlParser.PACK_KEYS = 462;
+SqlParser.PAGE = 463;
+SqlParser.PARSER = 464;
+SqlParser.PARTIAL = 465;
+SqlParser.PARTITIONING = 466;
+SqlParser.PARTITIONS = 467;
+SqlParser.PASSWORD = 468;
+SqlParser.PHASE = 469;
+SqlParser.PLUGIN = 470;
+SqlParser.PLUGIN_DIR = 471;
+SqlParser.PLUGINS = 472;
+SqlParser.PORT = 473;
+SqlParser.PRECEDES = 474;
+SqlParser.PREPARE = 475;
+SqlParser.PRESERVE = 476;
+SqlParser.PREV = 477;
+SqlParser.PROCESSLIST = 478;
+SqlParser.PROFILE = 479;
+SqlParser.PROFILES = 480;
+SqlParser.PROXY = 481;
+SqlParser.QUERY = 482;
+SqlParser.QUICK = 483;
+SqlParser.REBUILD = 484;
+SqlParser.RECOVER = 485;
+SqlParser.REDO_BUFFER_SIZE = 486;
+SqlParser.REDUNDANT = 487;
+SqlParser.RELAY = 488;
+SqlParser.RELAY_LOG_FILE = 489;
+SqlParser.RELAY_LOG_POS = 490;
+SqlParser.RELAYLOG = 491;
+SqlParser.REMOVE = 492;
+SqlParser.REORGANIZE = 493;
+SqlParser.REPAIR = 494;
+SqlParser.REPLICATE_DO_DB = 495;
+SqlParser.REPLICATE_DO_TABLE = 496;
+SqlParser.REPLICATE_IGNORE_DB = 497;
+SqlParser.REPLICATE_IGNORE_TABLE = 498;
+SqlParser.REPLICATE_REWRITE_DB = 499;
+SqlParser.REPLICATE_WILD_DO_TABLE = 500;
+SqlParser.REPLICATE_WILD_IGNORE_TABLE = 501;
+SqlParser.REPLICATION = 502;
+SqlParser.RESET = 503;
+SqlParser.RESUME = 504;
+SqlParser.RETURNED_SQLSTATE = 505;
+SqlParser.RETURNS = 506;
+SqlParser.ROLE = 507;
+SqlParser.ROLLBACK = 508;
+SqlParser.ROLLUP = 509;
+SqlParser.ROTATE = 510;
+SqlParser.ROW = 511;
+SqlParser.ROWS = 512;
+SqlParser.ROW_FORMAT = 513;
+SqlParser.SAVEPOINT = 514;
+SqlParser.SCHEDULE = 515;
+SqlParser.SECURITY = 516;
+SqlParser.SERVER = 517;
+SqlParser.SESSION = 518;
+SqlParser.SHARE = 519;
+SqlParser.SHARED = 520;
+SqlParser.SIGNED = 521;
+SqlParser.SIMPLE = 522;
+SqlParser.SLAVE = 523;
+SqlParser.SLOW = 524;
+SqlParser.SNAPSHOT = 525;
+SqlParser.SOCKET = 526;
+SqlParser.SOME = 527;
+SqlParser.SONAME = 528;
+SqlParser.SOUNDS = 529;
+SqlParser.SOURCE = 530;
+SqlParser.SQL_AFTER_GTIDS = 531;
+SqlParser.SQL_AFTER_MTS_GAPS = 532;
+SqlParser.SQL_BEFORE_GTIDS = 533;
+SqlParser.SQL_BUFFER_RESULT = 534;
+SqlParser.SQL_CACHE = 535;
+SqlParser.SQL_NO_CACHE = 536;
+SqlParser.SQL_THREAD = 537;
+SqlParser.START = 538;
+SqlParser.STARTS = 539;
+SqlParser.STATS_AUTO_RECALC = 540;
+SqlParser.STATS_PERSISTENT = 541;
+SqlParser.STATS_SAMPLE_PAGES = 542;
+SqlParser.STATUS = 543;
+SqlParser.STOP = 544;
+SqlParser.STORAGE = 545;
+SqlParser.STORED = 546;
+SqlParser.STRING = 547;
+SqlParser.SUBCLASS_ORIGIN = 548;
+SqlParser.SUBJECT = 549;
+SqlParser.SUBPARTITION = 550;
+SqlParser.SUBPARTITIONS = 551;
+SqlParser.SUSPEND = 552;
+SqlParser.SWAPS = 553;
+SqlParser.SWITCHES = 554;
+SqlParser.TABLE_NAME = 555;
+SqlParser.TABLESPACE = 556;
+SqlParser.TEMPORARY = 557;
+SqlParser.TEMPTABLE = 558;
+SqlParser.THAN = 559;
+SqlParser.TRADITIONAL = 560;
+SqlParser.TRANSACTION = 561;
+SqlParser.TRANSACTIONAL = 562;
+SqlParser.TRIGGERS = 563;
+SqlParser.TRUNCATE = 564;
+SqlParser.UNDEFINED = 565;
+SqlParser.UNDOFILE = 566;
+SqlParser.UNDO_BUFFER_SIZE = 567;
+SqlParser.UNINSTALL = 568;
+SqlParser.UNKNOWN = 569;
+SqlParser.UNTIL = 570;
+SqlParser.UPGRADE = 571;
+SqlParser.USER = 572;
+SqlParser.USE_FRM = 573;
+SqlParser.USER_RESOURCES = 574;
+SqlParser.VALIDATION = 575;
+SqlParser.VALUE = 576;
+SqlParser.VARIABLES = 577;
+SqlParser.VIEW = 578;
+SqlParser.VIRTUAL = 579;
+SqlParser.VISIBLE = 580;
+SqlParser.WAIT = 581;
+SqlParser.WARNINGS = 582;
+SqlParser.WITHOUT = 583;
+SqlParser.WORK = 584;
+SqlParser.WRAPPER = 585;
+SqlParser.X509 = 586;
+SqlParser.XA = 587;
+SqlParser.XML = 588;
+SqlParser.EUR = 589;
+SqlParser.USA = 590;
+SqlParser.JIS = 591;
+SqlParser.ISO = 592;
+SqlParser.INTERNAL = 593;
+SqlParser.QUARTER = 594;
+SqlParser.MONTH = 595;
+SqlParser.DAY = 596;
+SqlParser.HOUR = 597;
+SqlParser.MINUTE = 598;
+SqlParser.WEEK = 599;
+SqlParser.SECOND = 600;
+SqlParser.MICROSECOND = 601;
+SqlParser.TABLES = 602;
+SqlParser.ROUTINE = 603;
+SqlParser.EXECUTE = 604;
+SqlParser.FILE = 605;
+SqlParser.PROCESS = 606;
+SqlParser.RELOAD = 607;
+SqlParser.SHUTDOWN = 608;
+SqlParser.SUPER = 609;
+SqlParser.PRIVILEGES = 610;
+SqlParser.APPLICATION_PASSWORD_ADMIN = 611;
+SqlParser.AUDIT_ADMIN = 612;
+SqlParser.BACKUP_ADMIN = 613;
+SqlParser.BINLOG_ADMIN = 614;
+SqlParser.BINLOG_ENCRYPTION_ADMIN = 615;
+SqlParser.CLONE_ADMIN = 616;
+SqlParser.CONNECTION_ADMIN = 617;
+SqlParser.ENCRYPTION_KEY_ADMIN = 618;
+SqlParser.FIREWALL_ADMIN = 619;
+SqlParser.FIREWALL_USER = 620;
+SqlParser.GROUP_REPLICATION_ADMIN = 621;
+SqlParser.INNODB_REDO_LOG_ARCHIVE = 622;
+SqlParser.NDB_STORED_USER = 623;
+SqlParser.PERSIST_RO_VARIABLES_ADMIN = 624;
+SqlParser.REPLICATION_APPLIER = 625;
+SqlParser.REPLICATION_SLAVE_ADMIN = 626;
+SqlParser.RESOURCE_GROUP_ADMIN = 627;
+SqlParser.RESOURCE_GROUP_USER = 628;
+SqlParser.ROLE_ADMIN = 629;
+SqlParser.SESSION_VARIABLES_ADMIN = 630;
+SqlParser.SET_USER_ID = 631;
+SqlParser.SHOW_ROUTINE = 632;
+SqlParser.SYSTEM_VARIABLES_ADMIN = 633;
+SqlParser.TABLE_ENCRYPTION_ADMIN = 634;
+SqlParser.VERSION_TOKEN_ADMIN = 635;
+SqlParser.XA_RECOVER_ADMIN = 636;
+SqlParser.ARMSCII8 = 637;
+SqlParser.ASCII = 638;
+SqlParser.BIG5 = 639;
+SqlParser.CP1250 = 640;
+SqlParser.CP1251 = 641;
+SqlParser.CP1256 = 642;
+SqlParser.CP1257 = 643;
+SqlParser.CP850 = 644;
+SqlParser.CP852 = 645;
+SqlParser.CP866 = 646;
+SqlParser.CP932 = 647;
+SqlParser.DEC8 = 648;
+SqlParser.EUCJPMS = 649;
+SqlParser.EUCKR = 650;
+SqlParser.GB2312 = 651;
+SqlParser.GBK = 652;
+SqlParser.GEOSTD8 = 653;
+SqlParser.GREEK = 654;
+SqlParser.HEBREW = 655;
+SqlParser.HP8 = 656;
+SqlParser.KEYBCS2 = 657;
+SqlParser.KOI8R = 658;
+SqlParser.KOI8U = 659;
+SqlParser.LATIN1 = 660;
+SqlParser.LATIN2 = 661;
+SqlParser.LATIN5 = 662;
+SqlParser.LATIN7 = 663;
+SqlParser.MACCE = 664;
+SqlParser.MACROMAN = 665;
+SqlParser.SJIS = 666;
+SqlParser.SWE7 = 667;
+SqlParser.TIS620 = 668;
+SqlParser.UCS2 = 669;
+SqlParser.UJIS = 670;
+SqlParser.UTF16 = 671;
+SqlParser.UTF16LE = 672;
+SqlParser.UTF32 = 673;
+SqlParser.UTF8 = 674;
+SqlParser.UTF8MB3 = 675;
+SqlParser.UTF8MB4 = 676;
+SqlParser.ARCHIVE = 677;
+SqlParser.BLACKHOLE = 678;
+SqlParser.CSV = 679;
+SqlParser.FEDERATED = 680;
+SqlParser.INNODB = 681;
+SqlParser.MEMORY = 682;
+SqlParser.MRG_MYISAM = 683;
+SqlParser.MYISAM = 684;
+SqlParser.NDB = 685;
+SqlParser.NDBCLUSTER = 686;
+SqlParser.PERFORMANCE_SCHEMA = 687;
+SqlParser.TOKUDB = 688;
+SqlParser.REPEATABLE = 689;
+SqlParser.COMMITTED = 690;
+SqlParser.UNCOMMITTED = 691;
+SqlParser.SERIALIZABLE = 692;
+SqlParser.GEOMETRYCOLLECTION = 693;
+SqlParser.GEOMCOLLECTION = 694;
+SqlParser.GEOMETRY = 695;
+SqlParser.LINESTRING = 696;
+SqlParser.MULTILINESTRING = 697;
+SqlParser.MULTIPOINT = 698;
+SqlParser.MULTIPOLYGON = 699;
+SqlParser.POINT = 700;
+SqlParser.POLYGON = 701;
+SqlParser.ABS = 702;
+SqlParser.ACOS = 703;
+SqlParser.ADDDATE = 704;
+SqlParser.ADDTIME = 705;
+SqlParser.AES_DECRYPT = 706;
+SqlParser.AES_ENCRYPT = 707;
+SqlParser.AREA = 708;
+SqlParser.ASBINARY = 709;
+SqlParser.ASIN = 710;
+SqlParser.ASTEXT = 711;
+SqlParser.ASWKB = 712;
+SqlParser.ASWKT = 713;
+SqlParser.ASYMMETRIC_DECRYPT = 714;
+SqlParser.ASYMMETRIC_DERIVE = 715;
+SqlParser.ASYMMETRIC_ENCRYPT = 716;
+SqlParser.ASYMMETRIC_SIGN = 717;
+SqlParser.ASYMMETRIC_VERIFY = 718;
+SqlParser.ATAN = 719;
+SqlParser.ATAN2 = 720;
+SqlParser.BENCHMARK = 721;
+SqlParser.BIN = 722;
+SqlParser.BIT_COUNT = 723;
+SqlParser.BIT_LENGTH = 724;
+SqlParser.BUFFER = 725;
+SqlParser.CATALOG_NAME = 726;
+SqlParser.CEIL = 727;
+SqlParser.CEILING = 728;
+SqlParser.CENTROID = 729;
+SqlParser.CHARACTER_LENGTH = 730;
+SqlParser.CHARSET = 731;
+SqlParser.CHAR_LENGTH = 732;
+SqlParser.COERCIBILITY = 733;
+SqlParser.COLLATION = 734;
+SqlParser.COMPRESS = 735;
+SqlParser.CONCAT = 736;
+SqlParser.CONCAT_WS = 737;
+SqlParser.CONNECTION_ID = 738;
+SqlParser.CONV = 739;
+SqlParser.CONVERT_TZ = 740;
+SqlParser.COS = 741;
+SqlParser.COT = 742;
+SqlParser.CRC32 = 743;
+SqlParser.CREATE_ASYMMETRIC_PRIV_KEY = 744;
+SqlParser.CREATE_ASYMMETRIC_PUB_KEY = 745;
+SqlParser.CREATE_DH_PARAMETERS = 746;
+SqlParser.CREATE_DIGEST = 747;
+SqlParser.CROSSES = 748;
+SqlParser.DATEDIFF = 749;
+SqlParser.DATE_FORMAT = 750;
+SqlParser.DAYNAME = 751;
+SqlParser.DAYOFMONTH = 752;
+SqlParser.DAYOFWEEK = 753;
+SqlParser.DAYOFYEAR = 754;
+SqlParser.DECODE = 755;
+SqlParser.DEGREES = 756;
+SqlParser.DES_DECRYPT = 757;
+SqlParser.DES_ENCRYPT = 758;
+SqlParser.DIMENSION = 759;
+SqlParser.DISJOINT = 760;
+SqlParser.ELT = 761;
+SqlParser.ENCODE = 762;
+SqlParser.ENCRYPT = 763;
+SqlParser.ENDPOINT = 764;
+SqlParser.ENVELOPE = 765;
+SqlParser.EQUALS = 766;
+SqlParser.EXP = 767;
+SqlParser.EXPORT_SET = 768;
+SqlParser.EXTERIORRING = 769;
+SqlParser.EXTRACTVALUE = 770;
+SqlParser.FIELD = 771;
+SqlParser.FIND_IN_SET = 772;
+SqlParser.FLOOR = 773;
+SqlParser.FORMAT = 774;
+SqlParser.FOUND_ROWS = 775;
+SqlParser.FROM_BASE64 = 776;
+SqlParser.FROM_DAYS = 777;
+SqlParser.FROM_UNIXTIME = 778;
+SqlParser.GEOMCOLLFROMTEXT = 779;
+SqlParser.GEOMCOLLFROMWKB = 780;
+SqlParser.GEOMETRYCOLLECTIONFROMTEXT = 781;
+SqlParser.GEOMETRYCOLLECTIONFROMWKB = 782;
+SqlParser.GEOMETRYFROMTEXT = 783;
+SqlParser.GEOMETRYFROMWKB = 784;
+SqlParser.GEOMETRYN = 785;
+SqlParser.GEOMETRYTYPE = 786;
+SqlParser.GEOMFROMTEXT = 787;
+SqlParser.GEOMFROMWKB = 788;
+SqlParser.GET_FORMAT = 789;
+SqlParser.GET_LOCK = 790;
+SqlParser.GLENGTH = 791;
+SqlParser.GREATEST = 792;
+SqlParser.GTID_SUBSET = 793;
+SqlParser.GTID_SUBTRACT = 794;
+SqlParser.HEX = 795;
+SqlParser.IFNULL = 796;
+SqlParser.INET6_ATON = 797;
+SqlParser.INET6_NTOA = 798;
+SqlParser.INET_ATON = 799;
+SqlParser.INET_NTOA = 800;
+SqlParser.INSTR = 801;
+SqlParser.INTERIORRINGN = 802;
+SqlParser.INTERSECTS = 803;
+SqlParser.ISCLOSED = 804;
+SqlParser.ISEMPTY = 805;
+SqlParser.ISNULL = 806;
+SqlParser.ISSIMPLE = 807;
+SqlParser.IS_FREE_LOCK = 808;
+SqlParser.IS_IPV4 = 809;
+SqlParser.IS_IPV4_COMPAT = 810;
+SqlParser.IS_IPV4_MAPPED = 811;
+SqlParser.IS_IPV6 = 812;
+SqlParser.IS_USED_LOCK = 813;
+SqlParser.LAST_INSERT_ID = 814;
+SqlParser.LCASE = 815;
+SqlParser.LEAST = 816;
+SqlParser.LENGTH = 817;
+SqlParser.LINEFROMTEXT = 818;
+SqlParser.LINEFROMWKB = 819;
+SqlParser.LINESTRINGFROMTEXT = 820;
+SqlParser.LINESTRINGFROMWKB = 821;
+SqlParser.LN = 822;
+SqlParser.LOAD_FILE = 823;
+SqlParser.LOCATE = 824;
+SqlParser.LOG = 825;
+SqlParser.LOG10 = 826;
+SqlParser.LOG2 = 827;
+SqlParser.LOWER = 828;
+SqlParser.LPAD = 829;
+SqlParser.LTRIM = 830;
+SqlParser.MAKEDATE = 831;
+SqlParser.MAKETIME = 832;
+SqlParser.MAKE_SET = 833;
+SqlParser.MASTER_POS_WAIT = 834;
+SqlParser.MBRCONTAINS = 835;
+SqlParser.MBRDISJOINT = 836;
+SqlParser.MBREQUAL = 837;
+SqlParser.MBRINTERSECTS = 838;
+SqlParser.MBROVERLAPS = 839;
+SqlParser.MBRTOUCHES = 840;
+SqlParser.MBRWITHIN = 841;
+SqlParser.MD5 = 842;
+SqlParser.MLINEFROMTEXT = 843;
+SqlParser.MLINEFROMWKB = 844;
+SqlParser.MONTHNAME = 845;
+SqlParser.MPOINTFROMTEXT = 846;
+SqlParser.MPOINTFROMWKB = 847;
+SqlParser.MPOLYFROMTEXT = 848;
+SqlParser.MPOLYFROMWKB = 849;
+SqlParser.MULTILINESTRINGFROMTEXT = 850;
+SqlParser.MULTILINESTRINGFROMWKB = 851;
+SqlParser.MULTIPOINTFROMTEXT = 852;
+SqlParser.MULTIPOINTFROMWKB = 853;
+SqlParser.MULTIPOLYGONFROMTEXT = 854;
+SqlParser.MULTIPOLYGONFROMWKB = 855;
+SqlParser.NAME_CONST = 856;
+SqlParser.NULLIF = 857;
+SqlParser.NUMGEOMETRIES = 858;
+SqlParser.NUMINTERIORRINGS = 859;
+SqlParser.NUMPOINTS = 860;
+SqlParser.OCT = 861;
+SqlParser.OCTET_LENGTH = 862;
+SqlParser.ORD = 863;
+SqlParser.OVERLAPS = 864;
+SqlParser.PERIOD_ADD = 865;
+SqlParser.PERIOD_DIFF = 866;
+SqlParser.PI = 867;
+SqlParser.POINTFROMTEXT = 868;
+SqlParser.POINTFROMWKB = 869;
+SqlParser.POINTN = 870;
+SqlParser.POLYFROMTEXT = 871;
+SqlParser.POLYFROMWKB = 872;
+SqlParser.POLYGONFROMTEXT = 873;
+SqlParser.POLYGONFROMWKB = 874;
+SqlParser.POW = 875;
+SqlParser.POWER = 876;
+SqlParser.QUOTE = 877;
+SqlParser.RADIANS = 878;
+SqlParser.RAND = 879;
+SqlParser.RANDOM_BYTES = 880;
+SqlParser.RELEASE_LOCK = 881;
+SqlParser.REVERSE = 882;
+SqlParser.ROUND = 883;
+SqlParser.ROW_COUNT = 884;
+SqlParser.RPAD = 885;
+SqlParser.RTRIM = 886;
+SqlParser.SEC_TO_TIME = 887;
+SqlParser.SESSION_USER = 888;
+SqlParser.SHA = 889;
+SqlParser.SHA1 = 890;
+SqlParser.SHA2 = 891;
+SqlParser.SCHEMA_NAME = 892;
+SqlParser.SIGN = 893;
+SqlParser.SIN = 894;
+SqlParser.SLEEP = 895;
+SqlParser.SOUNDEX = 896;
+SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS = 897;
+SqlParser.SQRT = 898;
+SqlParser.SRID = 899;
+SqlParser.STARTPOINT = 900;
+SqlParser.STRCMP = 901;
+SqlParser.STR_TO_DATE = 902;
+SqlParser.ST_AREA = 903;
+SqlParser.ST_ASBINARY = 904;
+SqlParser.ST_ASTEXT = 905;
+SqlParser.ST_ASWKB = 906;
+SqlParser.ST_ASWKT = 907;
+SqlParser.ST_BUFFER = 908;
+SqlParser.ST_CENTROID = 909;
+SqlParser.ST_CONTAINS = 910;
+SqlParser.ST_CROSSES = 911;
+SqlParser.ST_DIFFERENCE = 912;
+SqlParser.ST_DIMENSION = 913;
+SqlParser.ST_DISJOINT = 914;
+SqlParser.ST_DISTANCE = 915;
+SqlParser.ST_ENDPOINT = 916;
+SqlParser.ST_ENVELOPE = 917;
+SqlParser.ST_EQUALS = 918;
+SqlParser.ST_EXTERIORRING = 919;
+SqlParser.ST_GEOMCOLLFROMTEXT = 920;
+SqlParser.ST_GEOMCOLLFROMTXT = 921;
+SqlParser.ST_GEOMCOLLFROMWKB = 922;
+SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT = 923;
+SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB = 924;
+SqlParser.ST_GEOMETRYFROMTEXT = 925;
+SqlParser.ST_GEOMETRYFROMWKB = 926;
+SqlParser.ST_GEOMETRYN = 927;
+SqlParser.ST_GEOMETRYTYPE = 928;
+SqlParser.ST_GEOMFROMTEXT = 929;
+SqlParser.ST_GEOMFROMWKB = 930;
+SqlParser.ST_INTERIORRINGN = 931;
+SqlParser.ST_INTERSECTION = 932;
+SqlParser.ST_INTERSECTS = 933;
+SqlParser.ST_ISCLOSED = 934;
+SqlParser.ST_ISEMPTY = 935;
+SqlParser.ST_ISSIMPLE = 936;
+SqlParser.ST_LINEFROMTEXT = 937;
+SqlParser.ST_LINEFROMWKB = 938;
+SqlParser.ST_LINESTRINGFROMTEXT = 939;
+SqlParser.ST_LINESTRINGFROMWKB = 940;
+SqlParser.ST_NUMGEOMETRIES = 941;
+SqlParser.ST_NUMINTERIORRING = 942;
+SqlParser.ST_NUMINTERIORRINGS = 943;
+SqlParser.ST_NUMPOINTS = 944;
+SqlParser.ST_OVERLAPS = 945;
+SqlParser.ST_POINTFROMTEXT = 946;
+SqlParser.ST_POINTFROMWKB = 947;
+SqlParser.ST_POINTN = 948;
+SqlParser.ST_POLYFROMTEXT = 949;
+SqlParser.ST_POLYFROMWKB = 950;
+SqlParser.ST_POLYGONFROMTEXT = 951;
+SqlParser.ST_POLYGONFROMWKB = 952;
+SqlParser.ST_SRID = 953;
+SqlParser.ST_STARTPOINT = 954;
+SqlParser.ST_SYMDIFFERENCE = 955;
+SqlParser.ST_TOUCHES = 956;
+SqlParser.ST_UNION = 957;
+SqlParser.ST_WITHIN = 958;
+SqlParser.ST_X = 959;
+SqlParser.ST_Y = 960;
+SqlParser.SUBDATE = 961;
+SqlParser.SUBSTRING_INDEX = 962;
+SqlParser.SUBTIME = 963;
+SqlParser.SYSTEM_USER = 964;
+SqlParser.TAN = 965;
+SqlParser.TIMEDIFF = 966;
+SqlParser.TIMESTAMPADD = 967;
+SqlParser.TIMESTAMPDIFF = 968;
+SqlParser.TIME_FORMAT = 969;
+SqlParser.TIME_TO_SEC = 970;
+SqlParser.TOUCHES = 971;
+SqlParser.TO_BASE64 = 972;
+SqlParser.TO_DAYS = 973;
+SqlParser.TO_SECONDS = 974;
+SqlParser.UCASE = 975;
+SqlParser.UNCOMPRESS = 976;
+SqlParser.UNCOMPRESSED_LENGTH = 977;
+SqlParser.UNHEX = 978;
+SqlParser.UNIX_TIMESTAMP = 979;
+SqlParser.UPDATEXML = 980;
+SqlParser.UPPER = 981;
+SqlParser.UUID = 982;
+SqlParser.UUID_SHORT = 983;
+SqlParser.VALIDATE_PASSWORD_STRENGTH = 984;
+SqlParser.VERSION = 985;
+SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS = 986;
+SqlParser.WEEKDAY = 987;
+SqlParser.WEEKOFYEAR = 988;
+SqlParser.WEIGHT_STRING = 989;
+SqlParser.WITHIN = 990;
+SqlParser.YEARWEEK = 991;
+SqlParser.Y_FUNCTION = 992;
+SqlParser.X_FUNCTION = 993;
+SqlParser.VAR_ASSIGN = 994;
+SqlParser.PLUS_ASSIGN = 995;
+SqlParser.MINUS_ASSIGN = 996;
+SqlParser.MULT_ASSIGN = 997;
+SqlParser.DIV_ASSIGN = 998;
+SqlParser.MOD_ASSIGN = 999;
+SqlParser.AND_ASSIGN = 1000;
+SqlParser.XOR_ASSIGN = 1001;
+SqlParser.OR_ASSIGN = 1002;
+SqlParser.STAR = 1003;
+SqlParser.DIVIDE = 1004;
+SqlParser.MODULE = 1005;
+SqlParser.PLUS = 1006;
+SqlParser.MINUSMINUS = 1007;
+SqlParser.MINUS = 1008;
+SqlParser.DIV = 1009;
+SqlParser.MOD = 1010;
+SqlParser.EQUAL_SYMBOL = 1011;
+SqlParser.GREATER_SYMBOL = 1012;
+SqlParser.LESS_SYMBOL = 1013;
+SqlParser.EXCLAMATION_SYMBOL = 1014;
+SqlParser.BIT_NOT_OP = 1015;
+SqlParser.BIT_OR_OP = 1016;
+SqlParser.BIT_AND_OP = 1017;
+SqlParser.BIT_XOR_OP = 1018;
+SqlParser.DOT = 1019;
+SqlParser.LR_BRACKET = 1020;
+SqlParser.RR_BRACKET = 1021;
+SqlParser.COMMA = 1022;
+SqlParser.SEMI = 1023;
+SqlParser.AT_SIGN = 1024;
+SqlParser.ZERO_DECIMAL = 1025;
+SqlParser.ONE_DECIMAL = 1026;
+SqlParser.TWO_DECIMAL = 1027;
+SqlParser.SINGLE_QUOTE_SYMB = 1028;
+SqlParser.DOUBLE_QUOTE_SYMB = 1029;
+SqlParser.REVERSE_QUOTE_SYMB = 1030;
+SqlParser.COLON_SYMB = 1031;
+SqlParser.CHARSET_REVERSE_QOUTE_STRING = 1032;
+SqlParser.FILESIZE_LITERAL = 1033;
+SqlParser.START_NATIONAL_STRING_LITERAL = 1034;
+SqlParser.STRING_LITERAL = 1035;
+SqlParser.DECIMAL_LITERAL = 1036;
+SqlParser.HEXADECIMAL_LITERAL = 1037;
+SqlParser.REAL_LITERAL = 1038;
+SqlParser.NULL_SPEC_LITERAL = 1039;
+SqlParser.BIT_STRING = 1040;
+SqlParser.STRING_CHARSET_NAME = 1041;
+SqlParser.DOT_ID = 1042;
+SqlParser.ID = 1043;
+SqlParser.REVERSE_QUOTE_ID = 1044;
+SqlParser.STRING_USER_NAME = 1045;
+SqlParser.LOCAL_ID = 1046;
+SqlParser.GLOBAL_ID = 1047;
+SqlParser.ERROR_RECONGNIGION = 1048;
+
+SqlParser.RULE_program = 0;
+SqlParser.RULE_statement = 1;
+SqlParser.RULE_sqlStatements = 2;
+SqlParser.RULE_sqlStatement = 3;
+SqlParser.RULE_emptyStatement = 4;
+SqlParser.RULE_ddlStatement = 5;
+SqlParser.RULE_dmlStatement = 6;
+SqlParser.RULE_transactionStatement = 7;
+SqlParser.RULE_replicationStatement = 8;
+SqlParser.RULE_preparedStatement = 9;
+SqlParser.RULE_compoundStatement = 10;
+SqlParser.RULE_administrationStatement = 11;
+SqlParser.RULE_utilityStatement = 12;
+SqlParser.RULE_createDatabase = 13;
+SqlParser.RULE_createEvent = 14;
+SqlParser.RULE_createIndex = 15;
+SqlParser.RULE_createLogfileGroup = 16;
+SqlParser.RULE_createProcedure = 17;
+SqlParser.RULE_createFunction = 18;
+SqlParser.RULE_createServer = 19;
+SqlParser.RULE_createTable = 20;
+SqlParser.RULE_createTablespaceInnodb = 21;
+SqlParser.RULE_createTablespaceNdb = 22;
+SqlParser.RULE_createTrigger = 23;
+SqlParser.RULE_createView = 24;
+SqlParser.RULE_createDatabaseOption = 25;
+SqlParser.RULE_ownerStatement = 26;
+SqlParser.RULE_scheduleExpression = 27;
+SqlParser.RULE_timestampValue = 28;
+SqlParser.RULE_intervalExpr = 29;
+SqlParser.RULE_intervalType = 30;
+SqlParser.RULE_enableType = 31;
+SqlParser.RULE_indexType = 32;
+SqlParser.RULE_indexOption = 33;
+SqlParser.RULE_procedureParameter = 34;
+SqlParser.RULE_functionParameter = 35;
+SqlParser.RULE_routineOption = 36;
+SqlParser.RULE_serverOption = 37;
+SqlParser.RULE_createDefinitions = 38;
+SqlParser.RULE_createDefinition = 39;
+SqlParser.RULE_columnDefinition = 40;
+SqlParser.RULE_columnConstraint = 41;
+SqlParser.RULE_tableConstraint = 42;
+SqlParser.RULE_referenceDefinition = 43;
+SqlParser.RULE_referenceAction = 44;
+SqlParser.RULE_referenceControlType = 45;
+SqlParser.RULE_indexColumnDefinition = 46;
+SqlParser.RULE_tableOption = 47;
+SqlParser.RULE_tablespaceStorage = 48;
+SqlParser.RULE_partitionDefinitions = 49;
+SqlParser.RULE_partitionFunctionDefinition = 50;
+SqlParser.RULE_subpartitionFunctionDefinition = 51;
+SqlParser.RULE_partitionDefinition = 52;
+SqlParser.RULE_partitionDefinerAtom = 53;
+SqlParser.RULE_partitionDefinerVector = 54;
+SqlParser.RULE_subpartitionDefinition = 55;
+SqlParser.RULE_partitionOption = 56;
+SqlParser.RULE_alterDatabase = 57;
+SqlParser.RULE_alterEvent = 58;
+SqlParser.RULE_alterFunction = 59;
+SqlParser.RULE_alterInstance = 60;
+SqlParser.RULE_alterLogfileGroup = 61;
+SqlParser.RULE_alterProcedure = 62;
+SqlParser.RULE_alterServer = 63;
+SqlParser.RULE_alterTable = 64;
+SqlParser.RULE_alterTablespace = 65;
+SqlParser.RULE_alterView = 66;
+SqlParser.RULE_alterSpecification = 67;
+SqlParser.RULE_dropDatabase = 68;
+SqlParser.RULE_dropEvent = 69;
+SqlParser.RULE_dropIndex = 70;
+SqlParser.RULE_dropLogfileGroup = 71;
+SqlParser.RULE_dropProcedure = 72;
+SqlParser.RULE_dropFunction = 73;
+SqlParser.RULE_dropServer = 74;
+SqlParser.RULE_dropTable = 75;
+SqlParser.RULE_dropTablespace = 76;
+SqlParser.RULE_dropTrigger = 77;
+SqlParser.RULE_dropView = 78;
+SqlParser.RULE_renameTable = 79;
+SqlParser.RULE_renameTableClause = 80;
+SqlParser.RULE_truncateTable = 81;
+SqlParser.RULE_callStatement = 82;
+SqlParser.RULE_deleteStatement = 83;
+SqlParser.RULE_doStatement = 84;
+SqlParser.RULE_handlerStatement = 85;
+SqlParser.RULE_insertStatement = 86;
+SqlParser.RULE_loadDataStatement = 87;
+SqlParser.RULE_loadXmlStatement = 88;
+SqlParser.RULE_replaceStatement = 89;
+SqlParser.RULE_selectStatement = 90;
+SqlParser.RULE_updateStatement = 91;
+SqlParser.RULE_insertStatementValue = 92;
+SqlParser.RULE_updatedElement = 93;
+SqlParser.RULE_assignmentField = 94;
+SqlParser.RULE_lockClause = 95;
+SqlParser.RULE_singleDeleteStatement = 96;
+SqlParser.RULE_multipleDeleteStatement = 97;
+SqlParser.RULE_handlerOpenStatement = 98;
+SqlParser.RULE_handlerReadIndexStatement = 99;
+SqlParser.RULE_handlerReadStatement = 100;
+SqlParser.RULE_handlerCloseStatement = 101;
+SqlParser.RULE_singleUpdateStatement = 102;
+SqlParser.RULE_multipleUpdateStatement = 103;
+SqlParser.RULE_orderByClause = 104;
+SqlParser.RULE_orderByExpression = 105;
+SqlParser.RULE_tableSources = 106;
+SqlParser.RULE_tableSource = 107;
+SqlParser.RULE_tableSourceItem = 108;
+SqlParser.RULE_indexHint = 109;
+SqlParser.RULE_indexHintType = 110;
+SqlParser.RULE_joinPart = 111;
+SqlParser.RULE_queryExpression = 112;
+SqlParser.RULE_queryExpressionNointo = 113;
+SqlParser.RULE_querySpecification = 114;
+SqlParser.RULE_querySpecificationNointo = 115;
+SqlParser.RULE_unionParenthesis = 116;
+SqlParser.RULE_unionStatement = 117;
+SqlParser.RULE_selectSpec = 118;
+SqlParser.RULE_selectElements = 119;
+SqlParser.RULE_selectElement = 120;
+SqlParser.RULE_selectIntoExpression = 121;
+SqlParser.RULE_selectFieldsInto = 122;
+SqlParser.RULE_selectLinesInto = 123;
+SqlParser.RULE_fromClause = 124;
+SqlParser.RULE_groupByItem = 125;
+SqlParser.RULE_limitClause = 126;
+SqlParser.RULE_limitClauseAtom = 127;
+SqlParser.RULE_startTransaction = 128;
+SqlParser.RULE_beginWork = 129;
+SqlParser.RULE_commitWork = 130;
+SqlParser.RULE_rollbackWork = 131;
+SqlParser.RULE_savepointStatement = 132;
+SqlParser.RULE_rollbackStatement = 133;
+SqlParser.RULE_releaseStatement = 134;
+SqlParser.RULE_lockTables = 135;
+SqlParser.RULE_unlockTables = 136;
+SqlParser.RULE_setAutocommitStatement = 137;
+SqlParser.RULE_setTransactionStatement = 138;
+SqlParser.RULE_transactionMode = 139;
+SqlParser.RULE_lockTableElement = 140;
+SqlParser.RULE_lockAction = 141;
+SqlParser.RULE_transactionOption = 142;
+SqlParser.RULE_transactionLevel = 143;
+SqlParser.RULE_changeMaster = 144;
+SqlParser.RULE_changeReplicationFilter = 145;
+SqlParser.RULE_purgeBinaryLogs = 146;
+SqlParser.RULE_resetMaster = 147;
+SqlParser.RULE_resetSlave = 148;
+SqlParser.RULE_startSlave = 149;
+SqlParser.RULE_stopSlave = 150;
+SqlParser.RULE_startGroupReplication = 151;
+SqlParser.RULE_stopGroupReplication = 152;
+SqlParser.RULE_masterOption = 153;
+SqlParser.RULE_stringMasterOption = 154;
+SqlParser.RULE_decimalMasterOption = 155;
+SqlParser.RULE_boolMasterOption = 156;
+SqlParser.RULE_channelOption = 157;
+SqlParser.RULE_replicationFilter = 158;
+SqlParser.RULE_tablePair = 159;
+SqlParser.RULE_threadType = 160;
+SqlParser.RULE_untilOption = 161;
+SqlParser.RULE_connectionOption = 162;
+SqlParser.RULE_gtuidSet = 163;
+SqlParser.RULE_xaStartTransaction = 164;
+SqlParser.RULE_xaEndTransaction = 165;
+SqlParser.RULE_xaPrepareStatement = 166;
+SqlParser.RULE_xaCommitWork = 167;
+SqlParser.RULE_xaRollbackWork = 168;
+SqlParser.RULE_xaRecoverWork = 169;
+SqlParser.RULE_prepareStatement = 170;
+SqlParser.RULE_executeStatement = 171;
+SqlParser.RULE_deallocatePrepare = 172;
+SqlParser.RULE_routineBody = 173;
+SqlParser.RULE_blockStatement = 174;
+SqlParser.RULE_caseStatement = 175;
+SqlParser.RULE_ifStatement = 176;
+SqlParser.RULE_iterateStatement = 177;
+SqlParser.RULE_leaveStatement = 178;
+SqlParser.RULE_loopStatement = 179;
+SqlParser.RULE_repeatStatement = 180;
+SqlParser.RULE_returnStatement = 181;
+SqlParser.RULE_whileStatement = 182;
+SqlParser.RULE_cursorStatement = 183;
+SqlParser.RULE_declareVariable = 184;
+SqlParser.RULE_declareCondition = 185;
+SqlParser.RULE_declareCursor = 186;
+SqlParser.RULE_declareHandler = 187;
+SqlParser.RULE_handlerConditionValue = 188;
+SqlParser.RULE_procedureSqlStatement = 189;
+SqlParser.RULE_caseAlternative = 190;
+SqlParser.RULE_elifAlternative = 191;
+SqlParser.RULE_alterUser = 192;
+SqlParser.RULE_createUser = 193;
+SqlParser.RULE_dropUser = 194;
+SqlParser.RULE_grantStatement = 195;
+SqlParser.RULE_grantProxy = 196;
+SqlParser.RULE_renameUser = 197;
+SqlParser.RULE_revokeStatement = 198;
+SqlParser.RULE_revokeProxy = 199;
+SqlParser.RULE_setPasswordStatement = 200;
+SqlParser.RULE_userSpecification = 201;
+SqlParser.RULE_userAuthOption = 202;
+SqlParser.RULE_tlsOption = 203;
+SqlParser.RULE_userResourceOption = 204;
+SqlParser.RULE_userPasswordOption = 205;
+SqlParser.RULE_userLockOption = 206;
+SqlParser.RULE_privelegeClause = 207;
+SqlParser.RULE_privilege = 208;
+SqlParser.RULE_privilegeLevel = 209;
+SqlParser.RULE_renameUserClause = 210;
+SqlParser.RULE_analyzeTable = 211;
+SqlParser.RULE_checkTable = 212;
+SqlParser.RULE_checksumTable = 213;
+SqlParser.RULE_optimizeTable = 214;
+SqlParser.RULE_repairTable = 215;
+SqlParser.RULE_checkTableOption = 216;
+SqlParser.RULE_createUdfunction = 217;
+SqlParser.RULE_installPlugin = 218;
+SqlParser.RULE_uninstallPlugin = 219;
+SqlParser.RULE_setStatement = 220;
+SqlParser.RULE_showStatement = 221;
+SqlParser.RULE_variableClause = 222;
+SqlParser.RULE_showCommonEntity = 223;
+SqlParser.RULE_showFilter = 224;
+SqlParser.RULE_showGlobalInfoClause = 225;
+SqlParser.RULE_showSchemaEntity = 226;
+SqlParser.RULE_showProfileType = 227;
+SqlParser.RULE_binlogStatement = 228;
+SqlParser.RULE_cacheIndexStatement = 229;
+SqlParser.RULE_flushStatement = 230;
+SqlParser.RULE_killStatement = 231;
+SqlParser.RULE_loadIndexIntoCache = 232;
+SqlParser.RULE_resetStatement = 233;
+SqlParser.RULE_shutdownStatement = 234;
+SqlParser.RULE_tableIndexes = 235;
+SqlParser.RULE_flushOption = 236;
+SqlParser.RULE_flushTableOption = 237;
+SqlParser.RULE_loadedTableIndexes = 238;
+SqlParser.RULE_simpleDescribeStatement = 239;
+SqlParser.RULE_fullDescribeStatement = 240;
+SqlParser.RULE_helpStatement = 241;
+SqlParser.RULE_useStatement = 242;
+SqlParser.RULE_signalStatement = 243;
+SqlParser.RULE_resignalStatement = 244;
+SqlParser.RULE_signalConditionInformation = 245;
+SqlParser.RULE_diagnosticsStatement = 246;
+SqlParser.RULE_diagnosticsConditionInformationName = 247;
+SqlParser.RULE_describeObjectClause = 248;
+SqlParser.RULE_fullId = 249;
+SqlParser.RULE_tableName = 250;
+SqlParser.RULE_fullColumnName = 251;
+SqlParser.RULE_indexColumnName = 252;
+SqlParser.RULE_userName = 253;
+SqlParser.RULE_mysqlVariable = 254;
+SqlParser.RULE_charsetName = 255;
+SqlParser.RULE_collationName = 256;
+SqlParser.RULE_engineName = 257;
+SqlParser.RULE_uuidSet = 258;
+SqlParser.RULE_xid = 259;
+SqlParser.RULE_xuidStringId = 260;
+SqlParser.RULE_authPlugin = 261;
+SqlParser.RULE_uid = 262;
+SqlParser.RULE_simpleId = 263;
+SqlParser.RULE_dottedId = 264;
+SqlParser.RULE_decimalLiteral = 265;
+SqlParser.RULE_fileSizeLiteral = 266;
+SqlParser.RULE_stringLiteral = 267;
+SqlParser.RULE_booleanLiteral = 268;
+SqlParser.RULE_hexadecimalLiteral = 269;
+SqlParser.RULE_nullNotnull = 270;
+SqlParser.RULE_constant = 271;
+SqlParser.RULE_dataType = 272;
+SqlParser.RULE_collectionOptions = 273;
+SqlParser.RULE_convertedDataType = 274;
+SqlParser.RULE_lengthOneDimension = 275;
+SqlParser.RULE_lengthTwoDimension = 276;
+SqlParser.RULE_lengthTwoOptionalDimension = 277;
+SqlParser.RULE_uidList = 278;
+SqlParser.RULE_tables = 279;
+SqlParser.RULE_indexColumnNames = 280;
+SqlParser.RULE_expressions = 281;
+SqlParser.RULE_expressionsWithDefaults = 282;
+SqlParser.RULE_constants = 283;
+SqlParser.RULE_simpleStrings = 284;
+SqlParser.RULE_userVariables = 285;
+SqlParser.RULE_defaultValue = 286;
+SqlParser.RULE_currentTimestamp = 287;
+SqlParser.RULE_expressionOrDefault = 288;
+SqlParser.RULE_ifExists = 289;
+SqlParser.RULE_ifNotExists = 290;
+SqlParser.RULE_functionCall = 291;
+SqlParser.RULE_specificFunction = 292;
+SqlParser.RULE_caseFuncAlternative = 293;
+SqlParser.RULE_levelsInWeightString = 294;
+SqlParser.RULE_levelInWeightListElement = 295;
+SqlParser.RULE_aggregateWindowedFunction = 296;
+SqlParser.RULE_scalarFunctionName = 297;
+SqlParser.RULE_passwordFunctionClause = 298;
+SqlParser.RULE_functionArgs = 299;
+SqlParser.RULE_functionArg = 300;
+SqlParser.RULE_expression = 301;
+SqlParser.RULE_predicate = 302;
+SqlParser.RULE_expressionAtom = 303;
+SqlParser.RULE_unaryOperator = 304;
+SqlParser.RULE_comparisonOperator = 305;
+SqlParser.RULE_logicalOperator = 306;
+SqlParser.RULE_bitOperator = 307;
+SqlParser.RULE_mathOperator = 308;
+SqlParser.RULE_charsetNameBase = 309;
+SqlParser.RULE_transactionLevelBase = 310;
+SqlParser.RULE_privilegesBase = 311;
+SqlParser.RULE_intervalTypeBase = 312;
+SqlParser.RULE_dataTypeBase = 313;
+SqlParser.RULE_keywordsCanBeId = 314;
+SqlParser.RULE_functionNameBase = 315;
+
+
+function ProgramContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_program;
+ return this;
+}
+
+ProgramContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+ProgramContext.prototype.constructor = ProgramContext;
+
+ProgramContext.prototype.statement = function() {
+ return this.getTypedRuleContext(StatementContext,0);
+};
+
+ProgramContext.prototype.EOF = function() {
+ return this.getToken(SqlParser.EOF, 0);
+};
+
+ProgramContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterProgram(this);
+ }
+};
+
+ProgramContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitProgram(this);
+ }
+};
+
+ProgramContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitProgram(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.ProgramContext = ProgramContext;
+
+SqlParser.prototype.program = function() {
+
+ var localctx = new ProgramContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 0, SqlParser.RULE_program);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 632;
+ this.statement();
+ this.state = 633;
+ this.match(SqlParser.EOF);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function StatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_statement;
+ return this;
+}
+
+StatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+StatementContext.prototype.constructor = StatementContext;
+
+StatementContext.prototype.EOF = function() {
+ return this.getToken(SqlParser.EOF, 0);
+};
+
+StatementContext.prototype.sqlStatements = function() {
+ return this.getTypedRuleContext(SqlStatementsContext,0);
+};
+
+StatementContext.prototype.MINUSMINUS = function() {
+ return this.getToken(SqlParser.MINUSMINUS, 0);
+};
+
+StatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterStatement(this);
+ }
+};
+
+StatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitStatement(this);
+ }
+};
+
+StatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.StatementContext = StatementContext;
+
+SqlParser.prototype.statement = function() {
+
+ var localctx = new StatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 2, SqlParser.RULE_statement);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 636;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if((((_la) & ~0x1f) == 0 && ((1 << _la) & ((1 << SqlParser.ALTER) | (1 << SqlParser.ANALYZE) | (1 << SqlParser.CALL) | (1 << SqlParser.CHANGE) | (1 << SqlParser.CHECK) | (1 << SqlParser.CREATE))) !== 0) || ((((_la - 40)) & ~0x1f) == 0 && ((1 << (_la - 40)) & ((1 << (SqlParser.DELETE - 40)) | (1 << (SqlParser.DESC - 40)) | (1 << (SqlParser.DESCRIBE - 40)) | (1 << (SqlParser.DROP - 40)) | (1 << (SqlParser.EXPLAIN - 40)) | (1 << (SqlParser.GET - 40)) | (1 << (SqlParser.GRANT - 40)))) !== 0) || ((((_la - 76)) & ~0x1f) == 0 && ((1 << (_la - 76)) & ((1 << (SqlParser.INSERT - 76)) | (1 << (SqlParser.KILL - 76)) | (1 << (SqlParser.LOAD - 76)) | (1 << (SqlParser.LOCK - 76)) | (1 << (SqlParser.OPTIMIZE - 76)))) !== 0) || ((((_la - 118)) & ~0x1f) == 0 && ((1 << (_la - 118)) & ((1 << (SqlParser.PURGE - 118)) | (1 << (SqlParser.RELEASE - 118)) | (1 << (SqlParser.RENAME - 118)) | (1 << (SqlParser.REPLACE - 118)) | (1 << (SqlParser.RESIGNAL - 118)) | (1 << (SqlParser.REVOKE - 118)) | (1 << (SqlParser.SELECT - 118)) | (1 << (SqlParser.SET - 118)) | (1 << (SqlParser.SHOW - 118)) | (1 << (SqlParser.SIGNAL - 118)))) !== 0) || ((((_la - 164)) & ~0x1f) == 0 && ((1 << (_la - 164)) & ((1 << (SqlParser.UNLOCK - 164)) | (1 << (SqlParser.UPDATE - 164)) | (1 << (SqlParser.USE - 164)))) !== 0) || ((((_la - 282)) & ~0x1f) == 0 && ((1 << (_la - 282)) & ((1 << (SqlParser.BEGIN - 282)) | (1 << (SqlParser.BINLOG - 282)) | (1 << (SqlParser.CACHE - 282)) | (1 << (SqlParser.CHECKSUM - 282)) | (1 << (SqlParser.COMMIT - 282)))) !== 0) || _la===SqlParser.DEALLOCATE || _la===SqlParser.DO || ((((_la - 364)) & ~0x1f) == 0 && ((1 << (_la - 364)) & ((1 << (SqlParser.FLUSH - 364)) | (1 << (SqlParser.HANDLER - 364)) | (1 << (SqlParser.HELP - 364)) | (1 << (SqlParser.INSTALL - 364)))) !== 0) || ((((_la - 475)) & ~0x1f) == 0 && ((1 << (_la - 475)) & ((1 << (SqlParser.PREPARE - 475)) | (1 << (SqlParser.REPAIR - 475)) | (1 << (SqlParser.RESET - 475)))) !== 0) || ((((_la - 508)) & ~0x1f) == 0 && ((1 << (_la - 508)) & ((1 << (SqlParser.ROLLBACK - 508)) | (1 << (SqlParser.SAVEPOINT - 508)) | (1 << (SqlParser.START - 508)))) !== 0) || ((((_la - 544)) & ~0x1f) == 0 && ((1 << (_la - 544)) & ((1 << (SqlParser.STOP - 544)) | (1 << (SqlParser.TRUNCATE - 544)) | (1 << (SqlParser.UNINSTALL - 544)))) !== 0) || ((((_la - 587)) & ~0x1f) == 0 && ((1 << (_la - 587)) & ((1 << (SqlParser.XA - 587)) | (1 << (SqlParser.EXECUTE - 587)) | (1 << (SqlParser.SHUTDOWN - 587)))) !== 0) || _la===SqlParser.LR_BRACKET || _la===SqlParser.SEMI) {
+ this.state = 635;
+ this.sqlStatements();
+ }
+
+ this.state = 639;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.MINUSMINUS) {
+ this.state = 638;
+ this.match(SqlParser.MINUSMINUS);
+ }
+
+ this.state = 641;
+ this.match(SqlParser.EOF);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function SqlStatementsContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_sqlStatements;
+ return this;
+}
+
+SqlStatementsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+SqlStatementsContext.prototype.constructor = SqlStatementsContext;
+
+SqlStatementsContext.prototype.sqlStatement = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(SqlStatementContext);
+ } else {
+ return this.getTypedRuleContext(SqlStatementContext,i);
+ }
+};
+
+SqlStatementsContext.prototype.emptyStatement = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(EmptyStatementContext);
+ } else {
+ return this.getTypedRuleContext(EmptyStatementContext,i);
+ }
+};
+
+SqlStatementsContext.prototype.SEMI = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.SEMI);
+ } else {
+ return this.getToken(SqlParser.SEMI, i);
+ }
+};
+
+
+SqlStatementsContext.prototype.MINUSMINUS = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.MINUSMINUS);
+ } else {
+ return this.getToken(SqlParser.MINUSMINUS, i);
+ }
+};
+
+
+SqlStatementsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSqlStatements(this);
+ }
+};
+
+SqlStatementsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSqlStatements(this);
+ }
+};
+
+SqlStatementsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSqlStatements(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.SqlStatementsContext = SqlStatementsContext;
+
+SqlParser.prototype.sqlStatements = function() {
+
+ var localctx = new SqlStatementsContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 4, SqlParser.RULE_sqlStatements);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 653;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,5,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 651;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.ALTER:
+ case SqlParser.ANALYZE:
+ case SqlParser.CALL:
+ case SqlParser.CHANGE:
+ case SqlParser.CHECK:
+ case SqlParser.CREATE:
+ case SqlParser.DELETE:
+ case SqlParser.DESC:
+ case SqlParser.DESCRIBE:
+ case SqlParser.DROP:
+ case SqlParser.EXPLAIN:
+ case SqlParser.GET:
+ case SqlParser.GRANT:
+ case SqlParser.INSERT:
+ case SqlParser.KILL:
+ case SqlParser.LOAD:
+ case SqlParser.LOCK:
+ case SqlParser.OPTIMIZE:
+ case SqlParser.PURGE:
+ case SqlParser.RELEASE:
+ case SqlParser.RENAME:
+ case SqlParser.REPLACE:
+ case SqlParser.RESIGNAL:
+ case SqlParser.REVOKE:
+ case SqlParser.SELECT:
+ case SqlParser.SET:
+ case SqlParser.SHOW:
+ case SqlParser.SIGNAL:
+ case SqlParser.UNLOCK:
+ case SqlParser.UPDATE:
+ case SqlParser.USE:
+ case SqlParser.BEGIN:
+ case SqlParser.BINLOG:
+ case SqlParser.CACHE:
+ case SqlParser.CHECKSUM:
+ case SqlParser.COMMIT:
+ case SqlParser.DEALLOCATE:
+ case SqlParser.DO:
+ case SqlParser.FLUSH:
+ case SqlParser.HANDLER:
+ case SqlParser.HELP:
+ case SqlParser.INSTALL:
+ case SqlParser.PREPARE:
+ case SqlParser.REPAIR:
+ case SqlParser.RESET:
+ case SqlParser.ROLLBACK:
+ case SqlParser.SAVEPOINT:
+ case SqlParser.START:
+ case SqlParser.STOP:
+ case SqlParser.TRUNCATE:
+ case SqlParser.UNINSTALL:
+ case SqlParser.XA:
+ case SqlParser.EXECUTE:
+ case SqlParser.SHUTDOWN:
+ case SqlParser.LR_BRACKET:
+ this.state = 643;
+ this.sqlStatement();
+ this.state = 645;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.MINUSMINUS) {
+ this.state = 644;
+ this.match(SqlParser.MINUSMINUS);
+ }
+
+ this.state = 648;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,3,this._ctx);
+ if(la_===1) {
+ this.state = 647;
+ this.match(SqlParser.SEMI);
+
+ }
+ break;
+ case SqlParser.SEMI:
+ this.state = 650;
+ this.emptyStatement();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ }
+ this.state = 655;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,5,this._ctx);
+ }
+
+ this.state = 664;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.ALTER:
+ case SqlParser.ANALYZE:
+ case SqlParser.CALL:
+ case SqlParser.CHANGE:
+ case SqlParser.CHECK:
+ case SqlParser.CREATE:
+ case SqlParser.DELETE:
+ case SqlParser.DESC:
+ case SqlParser.DESCRIBE:
+ case SqlParser.DROP:
+ case SqlParser.EXPLAIN:
+ case SqlParser.GET:
+ case SqlParser.GRANT:
+ case SqlParser.INSERT:
+ case SqlParser.KILL:
+ case SqlParser.LOAD:
+ case SqlParser.LOCK:
+ case SqlParser.OPTIMIZE:
+ case SqlParser.PURGE:
+ case SqlParser.RELEASE:
+ case SqlParser.RENAME:
+ case SqlParser.REPLACE:
+ case SqlParser.RESIGNAL:
+ case SqlParser.REVOKE:
+ case SqlParser.SELECT:
+ case SqlParser.SET:
+ case SqlParser.SHOW:
+ case SqlParser.SIGNAL:
+ case SqlParser.UNLOCK:
+ case SqlParser.UPDATE:
+ case SqlParser.USE:
+ case SqlParser.BEGIN:
+ case SqlParser.BINLOG:
+ case SqlParser.CACHE:
+ case SqlParser.CHECKSUM:
+ case SqlParser.COMMIT:
+ case SqlParser.DEALLOCATE:
+ case SqlParser.DO:
+ case SqlParser.FLUSH:
+ case SqlParser.HANDLER:
+ case SqlParser.HELP:
+ case SqlParser.INSTALL:
+ case SqlParser.PREPARE:
+ case SqlParser.REPAIR:
+ case SqlParser.RESET:
+ case SqlParser.ROLLBACK:
+ case SqlParser.SAVEPOINT:
+ case SqlParser.START:
+ case SqlParser.STOP:
+ case SqlParser.TRUNCATE:
+ case SqlParser.UNINSTALL:
+ case SqlParser.XA:
+ case SqlParser.EXECUTE:
+ case SqlParser.SHUTDOWN:
+ case SqlParser.LR_BRACKET:
+ this.state = 656;
+ this.sqlStatement();
+ this.state = 661;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,7,this._ctx);
+ if(la_===1) {
+ this.state = 658;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.MINUSMINUS) {
+ this.state = 657;
+ this.match(SqlParser.MINUSMINUS);
+ }
+
+ this.state = 660;
+ this.match(SqlParser.SEMI);
+
+ }
+ break;
+ case SqlParser.SEMI:
+ this.state = 663;
+ this.emptyStatement();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function SqlStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_sqlStatement;
+ return this;
+}
+
+SqlStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+SqlStatementContext.prototype.constructor = SqlStatementContext;
+
+SqlStatementContext.prototype.ddlStatement = function() {
+ return this.getTypedRuleContext(DdlStatementContext,0);
+};
+
+SqlStatementContext.prototype.dmlStatement = function() {
+ return this.getTypedRuleContext(DmlStatementContext,0);
+};
+
+SqlStatementContext.prototype.transactionStatement = function() {
+ return this.getTypedRuleContext(TransactionStatementContext,0);
+};
+
+SqlStatementContext.prototype.replicationStatement = function() {
+ return this.getTypedRuleContext(ReplicationStatementContext,0);
+};
+
+SqlStatementContext.prototype.preparedStatement = function() {
+ return this.getTypedRuleContext(PreparedStatementContext,0);
+};
+
+SqlStatementContext.prototype.administrationStatement = function() {
+ return this.getTypedRuleContext(AdministrationStatementContext,0);
+};
+
+SqlStatementContext.prototype.utilityStatement = function() {
+ return this.getTypedRuleContext(UtilityStatementContext,0);
+};
+
+SqlStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSqlStatement(this);
+ }
+};
+
+SqlStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSqlStatement(this);
+ }
+};
+
+SqlStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSqlStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.SqlStatementContext = SqlStatementContext;
+
+SqlParser.prototype.sqlStatement = function() {
+
+ var localctx = new SqlStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 6, SqlParser.RULE_sqlStatement);
+ try {
+ this.state = 673;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,9,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 666;
+ this.ddlStatement();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 667;
+ this.dmlStatement();
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 668;
+ this.transactionStatement();
+ break;
+
+ case 4:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 669;
+ this.replicationStatement();
+ break;
+
+ case 5:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 670;
+ this.preparedStatement();
+ break;
+
+ case 6:
+ this.enterOuterAlt(localctx, 6);
+ this.state = 671;
+ this.administrationStatement();
+ break;
+
+ case 7:
+ this.enterOuterAlt(localctx, 7);
+ this.state = 672;
+ this.utilityStatement();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function EmptyStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_emptyStatement;
+ return this;
+}
+
+EmptyStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+EmptyStatementContext.prototype.constructor = EmptyStatementContext;
+
+EmptyStatementContext.prototype.SEMI = function() {
+ return this.getToken(SqlParser.SEMI, 0);
+};
+
+EmptyStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterEmptyStatement(this);
+ }
+};
+
+EmptyStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitEmptyStatement(this);
+ }
+};
+
+EmptyStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitEmptyStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.EmptyStatementContext = EmptyStatementContext;
+
+SqlParser.prototype.emptyStatement = function() {
+
+ var localctx = new EmptyStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 8, SqlParser.RULE_emptyStatement);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 675;
+ this.match(SqlParser.SEMI);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function DdlStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_ddlStatement;
+ return this;
+}
+
+DdlStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+DdlStatementContext.prototype.constructor = DdlStatementContext;
+
+DdlStatementContext.prototype.createDatabase = function() {
+ return this.getTypedRuleContext(CreateDatabaseContext,0);
+};
+
+DdlStatementContext.prototype.createEvent = function() {
+ return this.getTypedRuleContext(CreateEventContext,0);
+};
+
+DdlStatementContext.prototype.createIndex = function() {
+ return this.getTypedRuleContext(CreateIndexContext,0);
+};
+
+DdlStatementContext.prototype.createLogfileGroup = function() {
+ return this.getTypedRuleContext(CreateLogfileGroupContext,0);
+};
+
+DdlStatementContext.prototype.createProcedure = function() {
+ return this.getTypedRuleContext(CreateProcedureContext,0);
+};
+
+DdlStatementContext.prototype.createFunction = function() {
+ return this.getTypedRuleContext(CreateFunctionContext,0);
+};
+
+DdlStatementContext.prototype.createServer = function() {
+ return this.getTypedRuleContext(CreateServerContext,0);
+};
+
+DdlStatementContext.prototype.createTable = function() {
+ return this.getTypedRuleContext(CreateTableContext,0);
+};
+
+DdlStatementContext.prototype.createTablespaceInnodb = function() {
+ return this.getTypedRuleContext(CreateTablespaceInnodbContext,0);
+};
+
+DdlStatementContext.prototype.createTablespaceNdb = function() {
+ return this.getTypedRuleContext(CreateTablespaceNdbContext,0);
+};
+
+DdlStatementContext.prototype.createTrigger = function() {
+ return this.getTypedRuleContext(CreateTriggerContext,0);
+};
+
+DdlStatementContext.prototype.createView = function() {
+ return this.getTypedRuleContext(CreateViewContext,0);
+};
+
+DdlStatementContext.prototype.alterDatabase = function() {
+ return this.getTypedRuleContext(AlterDatabaseContext,0);
+};
+
+DdlStatementContext.prototype.alterEvent = function() {
+ return this.getTypedRuleContext(AlterEventContext,0);
+};
+
+DdlStatementContext.prototype.alterFunction = function() {
+ return this.getTypedRuleContext(AlterFunctionContext,0);
+};
+
+DdlStatementContext.prototype.alterInstance = function() {
+ return this.getTypedRuleContext(AlterInstanceContext,0);
+};
+
+DdlStatementContext.prototype.alterLogfileGroup = function() {
+ return this.getTypedRuleContext(AlterLogfileGroupContext,0);
+};
+
+DdlStatementContext.prototype.alterProcedure = function() {
+ return this.getTypedRuleContext(AlterProcedureContext,0);
+};
+
+DdlStatementContext.prototype.alterServer = function() {
+ return this.getTypedRuleContext(AlterServerContext,0);
+};
+
+DdlStatementContext.prototype.alterTable = function() {
+ return this.getTypedRuleContext(AlterTableContext,0);
+};
+
+DdlStatementContext.prototype.alterTablespace = function() {
+ return this.getTypedRuleContext(AlterTablespaceContext,0);
+};
+
+DdlStatementContext.prototype.alterView = function() {
+ return this.getTypedRuleContext(AlterViewContext,0);
+};
+
+DdlStatementContext.prototype.dropDatabase = function() {
+ return this.getTypedRuleContext(DropDatabaseContext,0);
+};
+
+DdlStatementContext.prototype.dropEvent = function() {
+ return this.getTypedRuleContext(DropEventContext,0);
+};
+
+DdlStatementContext.prototype.dropIndex = function() {
+ return this.getTypedRuleContext(DropIndexContext,0);
+};
+
+DdlStatementContext.prototype.dropLogfileGroup = function() {
+ return this.getTypedRuleContext(DropLogfileGroupContext,0);
+};
+
+DdlStatementContext.prototype.dropProcedure = function() {
+ return this.getTypedRuleContext(DropProcedureContext,0);
+};
+
+DdlStatementContext.prototype.dropFunction = function() {
+ return this.getTypedRuleContext(DropFunctionContext,0);
+};
+
+DdlStatementContext.prototype.dropServer = function() {
+ return this.getTypedRuleContext(DropServerContext,0);
+};
+
+DdlStatementContext.prototype.dropTable = function() {
+ return this.getTypedRuleContext(DropTableContext,0);
+};
+
+DdlStatementContext.prototype.dropTablespace = function() {
+ return this.getTypedRuleContext(DropTablespaceContext,0);
+};
+
+DdlStatementContext.prototype.dropTrigger = function() {
+ return this.getTypedRuleContext(DropTriggerContext,0);
+};
+
+DdlStatementContext.prototype.dropView = function() {
+ return this.getTypedRuleContext(DropViewContext,0);
+};
+
+DdlStatementContext.prototype.renameTable = function() {
+ return this.getTypedRuleContext(RenameTableContext,0);
+};
+
+DdlStatementContext.prototype.truncateTable = function() {
+ return this.getTypedRuleContext(TruncateTableContext,0);
+};
+
+DdlStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterDdlStatement(this);
+ }
+};
+
+DdlStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitDdlStatement(this);
+ }
+};
+
+DdlStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitDdlStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.DdlStatementContext = DdlStatementContext;
+
+SqlParser.prototype.ddlStatement = function() {
+
+ var localctx = new DdlStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 10, SqlParser.RULE_ddlStatement);
+ try {
+ this.state = 712;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,10,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 677;
+ this.createDatabase();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 678;
+ this.createEvent();
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 679;
+ this.createIndex();
+ break;
+
+ case 4:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 680;
+ this.createLogfileGroup();
+ break;
+
+ case 5:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 681;
+ this.createProcedure();
+ break;
+
+ case 6:
+ this.enterOuterAlt(localctx, 6);
+ this.state = 682;
+ this.createFunction();
+ break;
+
+ case 7:
+ this.enterOuterAlt(localctx, 7);
+ this.state = 683;
+ this.createServer();
+ break;
+
+ case 8:
+ this.enterOuterAlt(localctx, 8);
+ this.state = 684;
+ this.createTable();
+ break;
+
+ case 9:
+ this.enterOuterAlt(localctx, 9);
+ this.state = 685;
+ this.createTablespaceInnodb();
+ break;
+
+ case 10:
+ this.enterOuterAlt(localctx, 10);
+ this.state = 686;
+ this.createTablespaceNdb();
+ break;
+
+ case 11:
+ this.enterOuterAlt(localctx, 11);
+ this.state = 687;
+ this.createTrigger();
+ break;
+
+ case 12:
+ this.enterOuterAlt(localctx, 12);
+ this.state = 688;
+ this.createView();
+ break;
+
+ case 13:
+ this.enterOuterAlt(localctx, 13);
+ this.state = 689;
+ this.alterDatabase();
+ break;
+
+ case 14:
+ this.enterOuterAlt(localctx, 14);
+ this.state = 690;
+ this.alterEvent();
+ break;
+
+ case 15:
+ this.enterOuterAlt(localctx, 15);
+ this.state = 691;
+ this.alterFunction();
+ break;
+
+ case 16:
+ this.enterOuterAlt(localctx, 16);
+ this.state = 692;
+ this.alterInstance();
+ break;
+
+ case 17:
+ this.enterOuterAlt(localctx, 17);
+ this.state = 693;
+ this.alterLogfileGroup();
+ break;
+
+ case 18:
+ this.enterOuterAlt(localctx, 18);
+ this.state = 694;
+ this.alterProcedure();
+ break;
+
+ case 19:
+ this.enterOuterAlt(localctx, 19);
+ this.state = 695;
+ this.alterServer();
+ break;
+
+ case 20:
+ this.enterOuterAlt(localctx, 20);
+ this.state = 696;
+ this.alterTable();
+ break;
+
+ case 21:
+ this.enterOuterAlt(localctx, 21);
+ this.state = 697;
+ this.alterTablespace();
+ break;
+
+ case 22:
+ this.enterOuterAlt(localctx, 22);
+ this.state = 698;
+ this.alterView();
+ break;
+
+ case 23:
+ this.enterOuterAlt(localctx, 23);
+ this.state = 699;
+ this.dropDatabase();
+ break;
+
+ case 24:
+ this.enterOuterAlt(localctx, 24);
+ this.state = 700;
+ this.dropEvent();
+ break;
+
+ case 25:
+ this.enterOuterAlt(localctx, 25);
+ this.state = 701;
+ this.dropIndex();
+ break;
+
+ case 26:
+ this.enterOuterAlt(localctx, 26);
+ this.state = 702;
+ this.dropLogfileGroup();
+ break;
+
+ case 27:
+ this.enterOuterAlt(localctx, 27);
+ this.state = 703;
+ this.dropProcedure();
+ break;
+
+ case 28:
+ this.enterOuterAlt(localctx, 28);
+ this.state = 704;
+ this.dropFunction();
+ break;
+
+ case 29:
+ this.enterOuterAlt(localctx, 29);
+ this.state = 705;
+ this.dropServer();
+ break;
+
+ case 30:
+ this.enterOuterAlt(localctx, 30);
+ this.state = 706;
+ this.dropTable();
+ break;
+
+ case 31:
+ this.enterOuterAlt(localctx, 31);
+ this.state = 707;
+ this.dropTablespace();
+ break;
+
+ case 32:
+ this.enterOuterAlt(localctx, 32);
+ this.state = 708;
+ this.dropTrigger();
+ break;
+
+ case 33:
+ this.enterOuterAlt(localctx, 33);
+ this.state = 709;
+ this.dropView();
+ break;
+
+ case 34:
+ this.enterOuterAlt(localctx, 34);
+ this.state = 710;
+ this.renameTable();
+ break;
+
+ case 35:
+ this.enterOuterAlt(localctx, 35);
+ this.state = 711;
+ this.truncateTable();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function DmlStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_dmlStatement;
+ return this;
+}
+
+DmlStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+DmlStatementContext.prototype.constructor = DmlStatementContext;
+
+DmlStatementContext.prototype.selectStatement = function() {
+ return this.getTypedRuleContext(SelectStatementContext,0);
+};
+
+DmlStatementContext.prototype.insertStatement = function() {
+ return this.getTypedRuleContext(InsertStatementContext,0);
+};
+
+DmlStatementContext.prototype.updateStatement = function() {
+ return this.getTypedRuleContext(UpdateStatementContext,0);
+};
+
+DmlStatementContext.prototype.deleteStatement = function() {
+ return this.getTypedRuleContext(DeleteStatementContext,0);
+};
+
+DmlStatementContext.prototype.replaceStatement = function() {
+ return this.getTypedRuleContext(ReplaceStatementContext,0);
+};
+
+DmlStatementContext.prototype.callStatement = function() {
+ return this.getTypedRuleContext(CallStatementContext,0);
+};
+
+DmlStatementContext.prototype.loadDataStatement = function() {
+ return this.getTypedRuleContext(LoadDataStatementContext,0);
+};
+
+DmlStatementContext.prototype.loadXmlStatement = function() {
+ return this.getTypedRuleContext(LoadXmlStatementContext,0);
+};
+
+DmlStatementContext.prototype.doStatement = function() {
+ return this.getTypedRuleContext(DoStatementContext,0);
+};
+
+DmlStatementContext.prototype.handlerStatement = function() {
+ return this.getTypedRuleContext(HandlerStatementContext,0);
+};
+
+DmlStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterDmlStatement(this);
+ }
+};
+
+DmlStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitDmlStatement(this);
+ }
+};
+
+DmlStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitDmlStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.DmlStatementContext = DmlStatementContext;
+
+SqlParser.prototype.dmlStatement = function() {
+
+ var localctx = new DmlStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 12, SqlParser.RULE_dmlStatement);
+ try {
+ this.state = 724;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,11,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 714;
+ this.selectStatement();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 715;
+ this.insertStatement();
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 716;
+ this.updateStatement();
+ break;
+
+ case 4:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 717;
+ this.deleteStatement();
+ break;
+
+ case 5:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 718;
+ this.replaceStatement();
+ break;
+
+ case 6:
+ this.enterOuterAlt(localctx, 6);
+ this.state = 719;
+ this.callStatement();
+ break;
+
+ case 7:
+ this.enterOuterAlt(localctx, 7);
+ this.state = 720;
+ this.loadDataStatement();
+ break;
+
+ case 8:
+ this.enterOuterAlt(localctx, 8);
+ this.state = 721;
+ this.loadXmlStatement();
+ break;
+
+ case 9:
+ this.enterOuterAlt(localctx, 9);
+ this.state = 722;
+ this.doStatement();
+ break;
+
+ case 10:
+ this.enterOuterAlt(localctx, 10);
+ this.state = 723;
+ this.handlerStatement();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function TransactionStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_transactionStatement;
+ return this;
+}
+
+TransactionStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+TransactionStatementContext.prototype.constructor = TransactionStatementContext;
+
+TransactionStatementContext.prototype.startTransaction = function() {
+ return this.getTypedRuleContext(StartTransactionContext,0);
+};
+
+TransactionStatementContext.prototype.beginWork = function() {
+ return this.getTypedRuleContext(BeginWorkContext,0);
+};
+
+TransactionStatementContext.prototype.commitWork = function() {
+ return this.getTypedRuleContext(CommitWorkContext,0);
+};
+
+TransactionStatementContext.prototype.rollbackWork = function() {
+ return this.getTypedRuleContext(RollbackWorkContext,0);
+};
+
+TransactionStatementContext.prototype.savepointStatement = function() {
+ return this.getTypedRuleContext(SavepointStatementContext,0);
+};
+
+TransactionStatementContext.prototype.rollbackStatement = function() {
+ return this.getTypedRuleContext(RollbackStatementContext,0);
+};
+
+TransactionStatementContext.prototype.releaseStatement = function() {
+ return this.getTypedRuleContext(ReleaseStatementContext,0);
+};
+
+TransactionStatementContext.prototype.lockTables = function() {
+ return this.getTypedRuleContext(LockTablesContext,0);
+};
+
+TransactionStatementContext.prototype.unlockTables = function() {
+ return this.getTypedRuleContext(UnlockTablesContext,0);
+};
+
+TransactionStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterTransactionStatement(this);
+ }
+};
+
+TransactionStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitTransactionStatement(this);
+ }
+};
+
+TransactionStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitTransactionStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.TransactionStatementContext = TransactionStatementContext;
+
+SqlParser.prototype.transactionStatement = function() {
+
+ var localctx = new TransactionStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 14, SqlParser.RULE_transactionStatement);
+ try {
+ this.state = 735;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,12,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 726;
+ this.startTransaction();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 727;
+ this.beginWork();
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 728;
+ this.commitWork();
+ break;
+
+ case 4:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 729;
+ this.rollbackWork();
+ break;
+
+ case 5:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 730;
+ this.savepointStatement();
+ break;
+
+ case 6:
+ this.enterOuterAlt(localctx, 6);
+ this.state = 731;
+ this.rollbackStatement();
+ break;
+
+ case 7:
+ this.enterOuterAlt(localctx, 7);
+ this.state = 732;
+ this.releaseStatement();
+ break;
+
+ case 8:
+ this.enterOuterAlt(localctx, 8);
+ this.state = 733;
+ this.lockTables();
+ break;
+
+ case 9:
+ this.enterOuterAlt(localctx, 9);
+ this.state = 734;
+ this.unlockTables();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function ReplicationStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_replicationStatement;
+ return this;
+}
+
+ReplicationStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+ReplicationStatementContext.prototype.constructor = ReplicationStatementContext;
+
+ReplicationStatementContext.prototype.changeMaster = function() {
+ return this.getTypedRuleContext(ChangeMasterContext,0);
+};
+
+ReplicationStatementContext.prototype.changeReplicationFilter = function() {
+ return this.getTypedRuleContext(ChangeReplicationFilterContext,0);
+};
+
+ReplicationStatementContext.prototype.purgeBinaryLogs = function() {
+ return this.getTypedRuleContext(PurgeBinaryLogsContext,0);
+};
+
+ReplicationStatementContext.prototype.resetMaster = function() {
+ return this.getTypedRuleContext(ResetMasterContext,0);
+};
+
+ReplicationStatementContext.prototype.resetSlave = function() {
+ return this.getTypedRuleContext(ResetSlaveContext,0);
+};
+
+ReplicationStatementContext.prototype.startSlave = function() {
+ return this.getTypedRuleContext(StartSlaveContext,0);
+};
+
+ReplicationStatementContext.prototype.stopSlave = function() {
+ return this.getTypedRuleContext(StopSlaveContext,0);
+};
+
+ReplicationStatementContext.prototype.startGroupReplication = function() {
+ return this.getTypedRuleContext(StartGroupReplicationContext,0);
+};
+
+ReplicationStatementContext.prototype.stopGroupReplication = function() {
+ return this.getTypedRuleContext(StopGroupReplicationContext,0);
+};
+
+ReplicationStatementContext.prototype.xaStartTransaction = function() {
+ return this.getTypedRuleContext(XaStartTransactionContext,0);
+};
+
+ReplicationStatementContext.prototype.xaEndTransaction = function() {
+ return this.getTypedRuleContext(XaEndTransactionContext,0);
+};
+
+ReplicationStatementContext.prototype.xaPrepareStatement = function() {
+ return this.getTypedRuleContext(XaPrepareStatementContext,0);
+};
+
+ReplicationStatementContext.prototype.xaCommitWork = function() {
+ return this.getTypedRuleContext(XaCommitWorkContext,0);
+};
+
+ReplicationStatementContext.prototype.xaRollbackWork = function() {
+ return this.getTypedRuleContext(XaRollbackWorkContext,0);
+};
+
+ReplicationStatementContext.prototype.xaRecoverWork = function() {
+ return this.getTypedRuleContext(XaRecoverWorkContext,0);
+};
+
+ReplicationStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterReplicationStatement(this);
+ }
+};
+
+ReplicationStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitReplicationStatement(this);
+ }
+};
+
+ReplicationStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitReplicationStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.ReplicationStatementContext = ReplicationStatementContext;
+
+SqlParser.prototype.replicationStatement = function() {
+
+ var localctx = new ReplicationStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 16, SqlParser.RULE_replicationStatement);
+ try {
+ this.state = 752;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,13,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 737;
+ this.changeMaster();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 738;
+ this.changeReplicationFilter();
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 739;
+ this.purgeBinaryLogs();
+ break;
+
+ case 4:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 740;
+ this.resetMaster();
+ break;
+
+ case 5:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 741;
+ this.resetSlave();
+ break;
+
+ case 6:
+ this.enterOuterAlt(localctx, 6);
+ this.state = 742;
+ this.startSlave();
+ break;
+
+ case 7:
+ this.enterOuterAlt(localctx, 7);
+ this.state = 743;
+ this.stopSlave();
+ break;
+
+ case 8:
+ this.enterOuterAlt(localctx, 8);
+ this.state = 744;
+ this.startGroupReplication();
+ break;
+
+ case 9:
+ this.enterOuterAlt(localctx, 9);
+ this.state = 745;
+ this.stopGroupReplication();
+ break;
+
+ case 10:
+ this.enterOuterAlt(localctx, 10);
+ this.state = 746;
+ this.xaStartTransaction();
+ break;
+
+ case 11:
+ this.enterOuterAlt(localctx, 11);
+ this.state = 747;
+ this.xaEndTransaction();
+ break;
+
+ case 12:
+ this.enterOuterAlt(localctx, 12);
+ this.state = 748;
+ this.xaPrepareStatement();
+ break;
+
+ case 13:
+ this.enterOuterAlt(localctx, 13);
+ this.state = 749;
+ this.xaCommitWork();
+ break;
+
+ case 14:
+ this.enterOuterAlt(localctx, 14);
+ this.state = 750;
+ this.xaRollbackWork();
+ break;
+
+ case 15:
+ this.enterOuterAlt(localctx, 15);
+ this.state = 751;
+ this.xaRecoverWork();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function PreparedStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_preparedStatement;
+ return this;
+}
+
+PreparedStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+PreparedStatementContext.prototype.constructor = PreparedStatementContext;
+
+PreparedStatementContext.prototype.prepareStatement = function() {
+ return this.getTypedRuleContext(PrepareStatementContext,0);
+};
+
+PreparedStatementContext.prototype.executeStatement = function() {
+ return this.getTypedRuleContext(ExecuteStatementContext,0);
+};
+
+PreparedStatementContext.prototype.deallocatePrepare = function() {
+ return this.getTypedRuleContext(DeallocatePrepareContext,0);
+};
+
+PreparedStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterPreparedStatement(this);
+ }
+};
+
+PreparedStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitPreparedStatement(this);
+ }
+};
+
+PreparedStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitPreparedStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.PreparedStatementContext = PreparedStatementContext;
+
+SqlParser.prototype.preparedStatement = function() {
+
+ var localctx = new PreparedStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 18, SqlParser.RULE_preparedStatement);
+ try {
+ this.state = 757;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.PREPARE:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 754;
+ this.prepareStatement();
+ break;
+ case SqlParser.EXECUTE:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 755;
+ this.executeStatement();
+ break;
+ case SqlParser.DROP:
+ case SqlParser.DEALLOCATE:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 756;
+ this.deallocatePrepare();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function CompoundStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_compoundStatement;
+ return this;
+}
+
+CompoundStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+CompoundStatementContext.prototype.constructor = CompoundStatementContext;
+
+CompoundStatementContext.prototype.blockStatement = function() {
+ return this.getTypedRuleContext(BlockStatementContext,0);
+};
+
+CompoundStatementContext.prototype.caseStatement = function() {
+ return this.getTypedRuleContext(CaseStatementContext,0);
+};
+
+CompoundStatementContext.prototype.ifStatement = function() {
+ return this.getTypedRuleContext(IfStatementContext,0);
+};
+
+CompoundStatementContext.prototype.leaveStatement = function() {
+ return this.getTypedRuleContext(LeaveStatementContext,0);
+};
+
+CompoundStatementContext.prototype.loopStatement = function() {
+ return this.getTypedRuleContext(LoopStatementContext,0);
+};
+
+CompoundStatementContext.prototype.repeatStatement = function() {
+ return this.getTypedRuleContext(RepeatStatementContext,0);
+};
+
+CompoundStatementContext.prototype.whileStatement = function() {
+ return this.getTypedRuleContext(WhileStatementContext,0);
+};
+
+CompoundStatementContext.prototype.iterateStatement = function() {
+ return this.getTypedRuleContext(IterateStatementContext,0);
+};
+
+CompoundStatementContext.prototype.returnStatement = function() {
+ return this.getTypedRuleContext(ReturnStatementContext,0);
+};
+
+CompoundStatementContext.prototype.cursorStatement = function() {
+ return this.getTypedRuleContext(CursorStatementContext,0);
+};
+
+CompoundStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterCompoundStatement(this);
+ }
+};
+
+CompoundStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitCompoundStatement(this);
+ }
+};
+
+CompoundStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitCompoundStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.CompoundStatementContext = CompoundStatementContext;
+
+SqlParser.prototype.compoundStatement = function() {
+
+ var localctx = new CompoundStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 20, SqlParser.RULE_compoundStatement);
+ try {
+ this.state = 769;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,15,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 759;
+ this.blockStatement();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 760;
+ this.caseStatement();
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 761;
+ this.ifStatement();
+ break;
+
+ case 4:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 762;
+ this.leaveStatement();
+ break;
+
+ case 5:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 763;
+ this.loopStatement();
+ break;
+
+ case 6:
+ this.enterOuterAlt(localctx, 6);
+ this.state = 764;
+ this.repeatStatement();
+ break;
+
+ case 7:
+ this.enterOuterAlt(localctx, 7);
+ this.state = 765;
+ this.whileStatement();
+ break;
+
+ case 8:
+ this.enterOuterAlt(localctx, 8);
+ this.state = 766;
+ this.iterateStatement();
+ break;
+
+ case 9:
+ this.enterOuterAlt(localctx, 9);
+ this.state = 767;
+ this.returnStatement();
+ break;
+
+ case 10:
+ this.enterOuterAlt(localctx, 10);
+ this.state = 768;
+ this.cursorStatement();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function AdministrationStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_administrationStatement;
+ return this;
+}
+
+AdministrationStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+AdministrationStatementContext.prototype.constructor = AdministrationStatementContext;
+
+AdministrationStatementContext.prototype.alterUser = function() {
+ return this.getTypedRuleContext(AlterUserContext,0);
+};
+
+AdministrationStatementContext.prototype.createUser = function() {
+ return this.getTypedRuleContext(CreateUserContext,0);
+};
+
+AdministrationStatementContext.prototype.dropUser = function() {
+ return this.getTypedRuleContext(DropUserContext,0);
+};
+
+AdministrationStatementContext.prototype.grantStatement = function() {
+ return this.getTypedRuleContext(GrantStatementContext,0);
+};
+
+AdministrationStatementContext.prototype.grantProxy = function() {
+ return this.getTypedRuleContext(GrantProxyContext,0);
+};
+
+AdministrationStatementContext.prototype.renameUser = function() {
+ return this.getTypedRuleContext(RenameUserContext,0);
+};
+
+AdministrationStatementContext.prototype.revokeStatement = function() {
+ return this.getTypedRuleContext(RevokeStatementContext,0);
+};
+
+AdministrationStatementContext.prototype.revokeProxy = function() {
+ return this.getTypedRuleContext(RevokeProxyContext,0);
+};
+
+AdministrationStatementContext.prototype.analyzeTable = function() {
+ return this.getTypedRuleContext(AnalyzeTableContext,0);
+};
+
+AdministrationStatementContext.prototype.checkTable = function() {
+ return this.getTypedRuleContext(CheckTableContext,0);
+};
+
+AdministrationStatementContext.prototype.checksumTable = function() {
+ return this.getTypedRuleContext(ChecksumTableContext,0);
+};
+
+AdministrationStatementContext.prototype.optimizeTable = function() {
+ return this.getTypedRuleContext(OptimizeTableContext,0);
+};
+
+AdministrationStatementContext.prototype.repairTable = function() {
+ return this.getTypedRuleContext(RepairTableContext,0);
+};
+
+AdministrationStatementContext.prototype.createUdfunction = function() {
+ return this.getTypedRuleContext(CreateUdfunctionContext,0);
+};
+
+AdministrationStatementContext.prototype.installPlugin = function() {
+ return this.getTypedRuleContext(InstallPluginContext,0);
+};
+
+AdministrationStatementContext.prototype.uninstallPlugin = function() {
+ return this.getTypedRuleContext(UninstallPluginContext,0);
+};
+
+AdministrationStatementContext.prototype.setStatement = function() {
+ return this.getTypedRuleContext(SetStatementContext,0);
+};
+
+AdministrationStatementContext.prototype.showStatement = function() {
+ return this.getTypedRuleContext(ShowStatementContext,0);
+};
+
+AdministrationStatementContext.prototype.binlogStatement = function() {
+ return this.getTypedRuleContext(BinlogStatementContext,0);
+};
+
+AdministrationStatementContext.prototype.cacheIndexStatement = function() {
+ return this.getTypedRuleContext(CacheIndexStatementContext,0);
+};
+
+AdministrationStatementContext.prototype.flushStatement = function() {
+ return this.getTypedRuleContext(FlushStatementContext,0);
+};
+
+AdministrationStatementContext.prototype.killStatement = function() {
+ return this.getTypedRuleContext(KillStatementContext,0);
+};
+
+AdministrationStatementContext.prototype.loadIndexIntoCache = function() {
+ return this.getTypedRuleContext(LoadIndexIntoCacheContext,0);
+};
+
+AdministrationStatementContext.prototype.resetStatement = function() {
+ return this.getTypedRuleContext(ResetStatementContext,0);
+};
+
+AdministrationStatementContext.prototype.shutdownStatement = function() {
+ return this.getTypedRuleContext(ShutdownStatementContext,0);
+};
+
+AdministrationStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAdministrationStatement(this);
+ }
+};
+
+AdministrationStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAdministrationStatement(this);
+ }
+};
+
+AdministrationStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAdministrationStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.AdministrationStatementContext = AdministrationStatementContext;
+
+SqlParser.prototype.administrationStatement = function() {
+
+ var localctx = new AdministrationStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 22, SqlParser.RULE_administrationStatement);
+ try {
+ this.state = 796;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,16,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 771;
+ this.alterUser();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 772;
+ this.createUser();
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 773;
+ this.dropUser();
+ break;
+
+ case 4:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 774;
+ this.grantStatement();
+ break;
+
+ case 5:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 775;
+ this.grantProxy();
+ break;
+
+ case 6:
+ this.enterOuterAlt(localctx, 6);
+ this.state = 776;
+ this.renameUser();
+ break;
+
+ case 7:
+ this.enterOuterAlt(localctx, 7);
+ this.state = 777;
+ this.revokeStatement();
+ break;
+
+ case 8:
+ this.enterOuterAlt(localctx, 8);
+ this.state = 778;
+ this.revokeProxy();
+ break;
+
+ case 9:
+ this.enterOuterAlt(localctx, 9);
+ this.state = 779;
+ this.analyzeTable();
+ break;
+
+ case 10:
+ this.enterOuterAlt(localctx, 10);
+ this.state = 780;
+ this.checkTable();
+ break;
+
+ case 11:
+ this.enterOuterAlt(localctx, 11);
+ this.state = 781;
+ this.checksumTable();
+ break;
+
+ case 12:
+ this.enterOuterAlt(localctx, 12);
+ this.state = 782;
+ this.optimizeTable();
+ break;
+
+ case 13:
+ this.enterOuterAlt(localctx, 13);
+ this.state = 783;
+ this.repairTable();
+ break;
+
+ case 14:
+ this.enterOuterAlt(localctx, 14);
+ this.state = 784;
+ this.createUdfunction();
+ break;
+
+ case 15:
+ this.enterOuterAlt(localctx, 15);
+ this.state = 785;
+ this.installPlugin();
+ break;
+
+ case 16:
+ this.enterOuterAlt(localctx, 16);
+ this.state = 786;
+ this.uninstallPlugin();
+ break;
+
+ case 17:
+ this.enterOuterAlt(localctx, 17);
+ this.state = 787;
+ this.setStatement();
+ break;
+
+ case 18:
+ this.enterOuterAlt(localctx, 18);
+ this.state = 788;
+ this.showStatement();
+ break;
+
+ case 19:
+ this.enterOuterAlt(localctx, 19);
+ this.state = 789;
+ this.binlogStatement();
+ break;
+
+ case 20:
+ this.enterOuterAlt(localctx, 20);
+ this.state = 790;
+ this.cacheIndexStatement();
+ break;
+
+ case 21:
+ this.enterOuterAlt(localctx, 21);
+ this.state = 791;
+ this.flushStatement();
+ break;
+
+ case 22:
+ this.enterOuterAlt(localctx, 22);
+ this.state = 792;
+ this.killStatement();
+ break;
+
+ case 23:
+ this.enterOuterAlt(localctx, 23);
+ this.state = 793;
+ this.loadIndexIntoCache();
+ break;
+
+ case 24:
+ this.enterOuterAlt(localctx, 24);
+ this.state = 794;
+ this.resetStatement();
+ break;
+
+ case 25:
+ this.enterOuterAlt(localctx, 25);
+ this.state = 795;
+ this.shutdownStatement();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function UtilityStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_utilityStatement;
+ return this;
+}
+
+UtilityStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+UtilityStatementContext.prototype.constructor = UtilityStatementContext;
+
+UtilityStatementContext.prototype.simpleDescribeStatement = function() {
+ return this.getTypedRuleContext(SimpleDescribeStatementContext,0);
+};
+
+UtilityStatementContext.prototype.fullDescribeStatement = function() {
+ return this.getTypedRuleContext(FullDescribeStatementContext,0);
+};
+
+UtilityStatementContext.prototype.helpStatement = function() {
+ return this.getTypedRuleContext(HelpStatementContext,0);
+};
+
+UtilityStatementContext.prototype.useStatement = function() {
+ return this.getTypedRuleContext(UseStatementContext,0);
+};
+
+UtilityStatementContext.prototype.signalStatement = function() {
+ return this.getTypedRuleContext(SignalStatementContext,0);
+};
+
+UtilityStatementContext.prototype.resignalStatement = function() {
+ return this.getTypedRuleContext(ResignalStatementContext,0);
+};
+
+UtilityStatementContext.prototype.diagnosticsStatement = function() {
+ return this.getTypedRuleContext(DiagnosticsStatementContext,0);
+};
+
+UtilityStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterUtilityStatement(this);
+ }
+};
+
+UtilityStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitUtilityStatement(this);
+ }
+};
+
+UtilityStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitUtilityStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.UtilityStatementContext = UtilityStatementContext;
+
+SqlParser.prototype.utilityStatement = function() {
+
+ var localctx = new UtilityStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 24, SqlParser.RULE_utilityStatement);
+ try {
+ this.state = 805;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,17,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 798;
+ this.simpleDescribeStatement();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 799;
+ this.fullDescribeStatement();
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 800;
+ this.helpStatement();
+ break;
+
+ case 4:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 801;
+ this.useStatement();
+ break;
+
+ case 5:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 802;
+ this.signalStatement();
+ break;
+
+ case 6:
+ this.enterOuterAlt(localctx, 6);
+ this.state = 803;
+ this.resignalStatement();
+ break;
+
+ case 7:
+ this.enterOuterAlt(localctx, 7);
+ this.state = 804;
+ this.diagnosticsStatement();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function CreateDatabaseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_createDatabase;
+ this.dbFormat = null; // Token
+ return this;
+}
+
+CreateDatabaseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+CreateDatabaseContext.prototype.constructor = CreateDatabaseContext;
+
+CreateDatabaseContext.prototype.CREATE = function() {
+ return this.getToken(SqlParser.CREATE, 0);
+};
+
+CreateDatabaseContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+CreateDatabaseContext.prototype.DATABASE = function() {
+ return this.getToken(SqlParser.DATABASE, 0);
+};
+
+CreateDatabaseContext.prototype.SCHEMA = function() {
+ return this.getToken(SqlParser.SCHEMA, 0);
+};
+
+CreateDatabaseContext.prototype.ifNotExists = function() {
+ return this.getTypedRuleContext(IfNotExistsContext,0);
+};
+
+CreateDatabaseContext.prototype.createDatabaseOption = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(CreateDatabaseOptionContext);
+ } else {
+ return this.getTypedRuleContext(CreateDatabaseOptionContext,i);
+ }
+};
+
+CreateDatabaseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterCreateDatabase(this);
+ }
+};
+
+CreateDatabaseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitCreateDatabase(this);
+ }
+};
+
+CreateDatabaseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitCreateDatabase(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.CreateDatabaseContext = CreateDatabaseContext;
+
+SqlParser.prototype.createDatabase = function() {
+
+ var localctx = new CreateDatabaseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 26, SqlParser.RULE_createDatabase);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 807;
+ this.match(SqlParser.CREATE);
+ this.state = 808;
+ localctx.dbFormat = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.DATABASE || _la===SqlParser.SCHEMA)) {
+ localctx.dbFormat = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 810;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.IF) {
+ this.state = 809;
+ this.ifNotExists();
+ }
+
+ this.state = 812;
+ this.uid();
+ this.state = 816;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(((((_la - 22)) & ~0x1f) == 0 && ((1 << (_la - 22)) & ((1 << (SqlParser.CHARACTER - 22)) | (1 << (SqlParser.COLLATE - 22)) | (1 << (SqlParser.DEFAULT - 22)))) !== 0) || _la===SqlParser.CHARSET) {
+ this.state = 813;
+ this.createDatabaseOption();
+ this.state = 818;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function CreateEventContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_createEvent;
+ return this;
+}
+
+CreateEventContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+CreateEventContext.prototype.constructor = CreateEventContext;
+
+CreateEventContext.prototype.CREATE = function() {
+ return this.getToken(SqlParser.CREATE, 0);
+};
+
+CreateEventContext.prototype.EVENT = function() {
+ return this.getToken(SqlParser.EVENT, 0);
+};
+
+CreateEventContext.prototype.fullId = function() {
+ return this.getTypedRuleContext(FullIdContext,0);
+};
+
+CreateEventContext.prototype.ON = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.ON);
+ } else {
+ return this.getToken(SqlParser.ON, i);
+ }
+};
+
+
+CreateEventContext.prototype.SCHEDULE = function() {
+ return this.getToken(SqlParser.SCHEDULE, 0);
+};
+
+CreateEventContext.prototype.scheduleExpression = function() {
+ return this.getTypedRuleContext(ScheduleExpressionContext,0);
+};
+
+CreateEventContext.prototype.DO = function() {
+ return this.getToken(SqlParser.DO, 0);
+};
+
+CreateEventContext.prototype.routineBody = function() {
+ return this.getTypedRuleContext(RoutineBodyContext,0);
+};
+
+CreateEventContext.prototype.ownerStatement = function() {
+ return this.getTypedRuleContext(OwnerStatementContext,0);
+};
+
+CreateEventContext.prototype.ifNotExists = function() {
+ return this.getTypedRuleContext(IfNotExistsContext,0);
+};
+
+CreateEventContext.prototype.COMPLETION = function() {
+ return this.getToken(SqlParser.COMPLETION, 0);
+};
+
+CreateEventContext.prototype.PRESERVE = function() {
+ return this.getToken(SqlParser.PRESERVE, 0);
+};
+
+CreateEventContext.prototype.enableType = function() {
+ return this.getTypedRuleContext(EnableTypeContext,0);
+};
+
+CreateEventContext.prototype.COMMENT = function() {
+ return this.getToken(SqlParser.COMMENT, 0);
+};
+
+CreateEventContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+CreateEventContext.prototype.NOT = function() {
+ return this.getToken(SqlParser.NOT, 0);
+};
+
+CreateEventContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterCreateEvent(this);
+ }
+};
+
+CreateEventContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitCreateEvent(this);
+ }
+};
+
+CreateEventContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitCreateEvent(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.CreateEventContext = CreateEventContext;
+
+SqlParser.prototype.createEvent = function() {
+
+ var localctx = new CreateEventContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 28, SqlParser.RULE_createEvent);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 819;
+ this.match(SqlParser.CREATE);
+ this.state = 821;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.DEFINER) {
+ this.state = 820;
+ this.ownerStatement();
+ }
+
+ this.state = 823;
+ this.match(SqlParser.EVENT);
+ this.state = 825;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.IF) {
+ this.state = 824;
+ this.ifNotExists();
+ }
+
+ this.state = 827;
+ this.fullId();
+ this.state = 828;
+ this.match(SqlParser.ON);
+ this.state = 829;
+ this.match(SqlParser.SCHEDULE);
+ this.state = 830;
+ this.scheduleExpression();
+ this.state = 837;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.ON) {
+ this.state = 831;
+ this.match(SqlParser.ON);
+ this.state = 832;
+ this.match(SqlParser.COMPLETION);
+ this.state = 834;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.NOT) {
+ this.state = 833;
+ this.match(SqlParser.NOT);
+ }
+
+ this.state = 836;
+ this.match(SqlParser.PRESERVE);
+ }
+
+ this.state = 840;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.DISABLE || _la===SqlParser.ENABLE) {
+ this.state = 839;
+ this.enableType();
+ }
+
+ this.state = 844;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.COMMENT) {
+ this.state = 842;
+ this.match(SqlParser.COMMENT);
+ this.state = 843;
+ this.match(SqlParser.STRING_LITERAL);
+ }
+
+ this.state = 846;
+ this.match(SqlParser.DO);
+ this.state = 847;
+ this.routineBody();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function CreateIndexContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_createIndex;
+ this.intimeAction = null; // Token
+ this.indexCategory = null; // Token
+ this.algType = null; // Token
+ this.lockType = null; // Token
+ return this;
+}
+
+CreateIndexContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+CreateIndexContext.prototype.constructor = CreateIndexContext;
+
+CreateIndexContext.prototype.CREATE = function() {
+ return this.getToken(SqlParser.CREATE, 0);
+};
+
+CreateIndexContext.prototype.INDEX = function() {
+ return this.getToken(SqlParser.INDEX, 0);
+};
+
+CreateIndexContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+CreateIndexContext.prototype.ON = function() {
+ return this.getToken(SqlParser.ON, 0);
+};
+
+CreateIndexContext.prototype.tableName = function() {
+ return this.getTypedRuleContext(TableNameContext,0);
+};
+
+CreateIndexContext.prototype.indexColumnNames = function() {
+ return this.getTypedRuleContext(IndexColumnNamesContext,0);
+};
+
+CreateIndexContext.prototype.indexType = function() {
+ return this.getTypedRuleContext(IndexTypeContext,0);
+};
+
+CreateIndexContext.prototype.indexOption = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(IndexOptionContext);
+ } else {
+ return this.getTypedRuleContext(IndexOptionContext,i);
+ }
+};
+
+CreateIndexContext.prototype.ALGORITHM = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.ALGORITHM);
+ } else {
+ return this.getToken(SqlParser.ALGORITHM, i);
+ }
+};
+
+
+CreateIndexContext.prototype.LOCK = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.LOCK);
+ } else {
+ return this.getToken(SqlParser.LOCK, i);
+ }
+};
+
+
+CreateIndexContext.prototype.ONLINE = function() {
+ return this.getToken(SqlParser.ONLINE, 0);
+};
+
+CreateIndexContext.prototype.OFFLINE = function() {
+ return this.getToken(SqlParser.OFFLINE, 0);
+};
+
+CreateIndexContext.prototype.UNIQUE = function() {
+ return this.getToken(SqlParser.UNIQUE, 0);
+};
+
+CreateIndexContext.prototype.FULLTEXT = function() {
+ return this.getToken(SqlParser.FULLTEXT, 0);
+};
+
+CreateIndexContext.prototype.SPATIAL = function() {
+ return this.getToken(SqlParser.SPATIAL, 0);
+};
+
+CreateIndexContext.prototype.DEFAULT = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.DEFAULT);
+ } else {
+ return this.getToken(SqlParser.DEFAULT, i);
+ }
+};
+
+
+CreateIndexContext.prototype.INPLACE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.INPLACE);
+ } else {
+ return this.getToken(SqlParser.INPLACE, i);
+ }
+};
+
+
+CreateIndexContext.prototype.COPY = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COPY);
+ } else {
+ return this.getToken(SqlParser.COPY, i);
+ }
+};
+
+
+CreateIndexContext.prototype.NONE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.NONE);
+ } else {
+ return this.getToken(SqlParser.NONE, i);
+ }
+};
+
+
+CreateIndexContext.prototype.SHARED = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.SHARED);
+ } else {
+ return this.getToken(SqlParser.SHARED, i);
+ }
+};
+
+
+CreateIndexContext.prototype.EXCLUSIVE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.EXCLUSIVE);
+ } else {
+ return this.getToken(SqlParser.EXCLUSIVE, i);
+ }
+};
+
+
+CreateIndexContext.prototype.EQUAL_SYMBOL = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.EQUAL_SYMBOL);
+ } else {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, i);
+ }
+};
+
+
+CreateIndexContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterCreateIndex(this);
+ }
+};
+
+CreateIndexContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitCreateIndex(this);
+ }
+};
+
+CreateIndexContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitCreateIndex(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.CreateIndexContext = CreateIndexContext;
+
+SqlParser.prototype.createIndex = function() {
+
+ var localctx = new CreateIndexContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 30, SqlParser.RULE_createIndex);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 849;
+ this.match(SqlParser.CREATE);
+ this.state = 851;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.OFFLINE || _la===SqlParser.ONLINE) {
+ this.state = 850;
+ localctx.intimeAction = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.OFFLINE || _la===SqlParser.ONLINE)) {
+ localctx.intimeAction = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 854;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.FULLTEXT || _la===SqlParser.SPATIAL || _la===SqlParser.UNIQUE) {
+ this.state = 853;
+ localctx.indexCategory = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.FULLTEXT || _la===SqlParser.SPATIAL || _la===SqlParser.UNIQUE)) {
+ localctx.indexCategory = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 856;
+ this.match(SqlParser.INDEX);
+ this.state = 857;
+ this.uid();
+ this.state = 859;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.USING) {
+ this.state = 858;
+ this.indexType();
+ }
+
+ this.state = 861;
+ this.match(SqlParser.ON);
+ this.state = 862;
+ this.tableName();
+ this.state = 863;
+ this.indexColumnNames();
+ this.state = 867;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.USING || _la===SqlParser.WITH || _la===SqlParser.COMMENT || _la===SqlParser.INVISIBLE || _la===SqlParser.KEY_BLOCK_SIZE || _la===SqlParser.VISIBLE) {
+ this.state = 864;
+ this.indexOption();
+ this.state = 869;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 882;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,33,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 880;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.ALGORITHM:
+ this.state = 870;
+ this.match(SqlParser.ALGORITHM);
+ this.state = 872;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 871;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 874;
+ localctx.algType = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.DEFAULT || _la===SqlParser.COPY || _la===SqlParser.INPLACE)) {
+ localctx.algType = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+ case SqlParser.LOCK:
+ this.state = 875;
+ this.match(SqlParser.LOCK);
+ this.state = 877;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 876;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 879;
+ localctx.lockType = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.DEFAULT || _la===SqlParser.EXCLUSIVE || _la===SqlParser.NONE || _la===SqlParser.SHARED)) {
+ localctx.lockType = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ }
+ this.state = 884;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,33,this._ctx);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function CreateLogfileGroupContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_createLogfileGroup;
+ this.undoFile = null; // Token
+ this.initSize = null; // FileSizeLiteralContext
+ this.undoSize = null; // FileSizeLiteralContext
+ this.redoSize = null; // FileSizeLiteralContext
+ this.comment = null; // Token
+ return this;
+}
+
+CreateLogfileGroupContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+CreateLogfileGroupContext.prototype.constructor = CreateLogfileGroupContext;
+
+CreateLogfileGroupContext.prototype.CREATE = function() {
+ return this.getToken(SqlParser.CREATE, 0);
+};
+
+CreateLogfileGroupContext.prototype.LOGFILE = function() {
+ return this.getToken(SqlParser.LOGFILE, 0);
+};
+
+CreateLogfileGroupContext.prototype.GROUP = function() {
+ return this.getToken(SqlParser.GROUP, 0);
+};
+
+CreateLogfileGroupContext.prototype.uid = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UidContext);
+ } else {
+ return this.getTypedRuleContext(UidContext,i);
+ }
+};
+
+CreateLogfileGroupContext.prototype.ADD = function() {
+ return this.getToken(SqlParser.ADD, 0);
+};
+
+CreateLogfileGroupContext.prototype.UNDOFILE = function() {
+ return this.getToken(SqlParser.UNDOFILE, 0);
+};
+
+CreateLogfileGroupContext.prototype.ENGINE = function() {
+ return this.getToken(SqlParser.ENGINE, 0);
+};
+
+CreateLogfileGroupContext.prototype.engineName = function() {
+ return this.getTypedRuleContext(EngineNameContext,0);
+};
+
+CreateLogfileGroupContext.prototype.STRING_LITERAL = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.STRING_LITERAL);
+ } else {
+ return this.getToken(SqlParser.STRING_LITERAL, i);
+ }
+};
+
+
+CreateLogfileGroupContext.prototype.INITIAL_SIZE = function() {
+ return this.getToken(SqlParser.INITIAL_SIZE, 0);
+};
+
+CreateLogfileGroupContext.prototype.UNDO_BUFFER_SIZE = function() {
+ return this.getToken(SqlParser.UNDO_BUFFER_SIZE, 0);
+};
+
+CreateLogfileGroupContext.prototype.REDO_BUFFER_SIZE = function() {
+ return this.getToken(SqlParser.REDO_BUFFER_SIZE, 0);
+};
+
+CreateLogfileGroupContext.prototype.NODEGROUP = function() {
+ return this.getToken(SqlParser.NODEGROUP, 0);
+};
+
+CreateLogfileGroupContext.prototype.WAIT = function() {
+ return this.getToken(SqlParser.WAIT, 0);
+};
+
+CreateLogfileGroupContext.prototype.COMMENT = function() {
+ return this.getToken(SqlParser.COMMENT, 0);
+};
+
+CreateLogfileGroupContext.prototype.EQUAL_SYMBOL = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.EQUAL_SYMBOL);
+ } else {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, i);
+ }
+};
+
+
+CreateLogfileGroupContext.prototype.fileSizeLiteral = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(FileSizeLiteralContext);
+ } else {
+ return this.getTypedRuleContext(FileSizeLiteralContext,i);
+ }
+};
+
+CreateLogfileGroupContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterCreateLogfileGroup(this);
+ }
+};
+
+CreateLogfileGroupContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitCreateLogfileGroup(this);
+ }
+};
+
+CreateLogfileGroupContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitCreateLogfileGroup(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.CreateLogfileGroupContext = CreateLogfileGroupContext;
+
+SqlParser.prototype.createLogfileGroup = function() {
+
+ var localctx = new CreateLogfileGroupContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 32, SqlParser.RULE_createLogfileGroup);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 885;
+ this.match(SqlParser.CREATE);
+ this.state = 886;
+ this.match(SqlParser.LOGFILE);
+ this.state = 887;
+ this.match(SqlParser.GROUP);
+ this.state = 888;
+ this.uid();
+ this.state = 889;
+ this.match(SqlParser.ADD);
+ this.state = 890;
+ this.match(SqlParser.UNDOFILE);
+ this.state = 891;
+ localctx.undoFile = this.match(SqlParser.STRING_LITERAL);
+ this.state = 897;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.INITIAL_SIZE) {
+ this.state = 892;
+ this.match(SqlParser.INITIAL_SIZE);
+ this.state = 894;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 893;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 896;
+ localctx.initSize = this.fileSizeLiteral();
+ }
+
+ this.state = 904;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.UNDO_BUFFER_SIZE) {
+ this.state = 899;
+ this.match(SqlParser.UNDO_BUFFER_SIZE);
+ this.state = 901;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 900;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 903;
+ localctx.undoSize = this.fileSizeLiteral();
+ }
+
+ this.state = 911;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.REDO_BUFFER_SIZE) {
+ this.state = 906;
+ this.match(SqlParser.REDO_BUFFER_SIZE);
+ this.state = 908;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 907;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 910;
+ localctx.redoSize = this.fileSizeLiteral();
+ }
+
+ this.state = 918;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.NODEGROUP) {
+ this.state = 913;
+ this.match(SqlParser.NODEGROUP);
+ this.state = 915;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 914;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 917;
+ this.uid();
+ }
+
+ this.state = 921;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.WAIT) {
+ this.state = 920;
+ this.match(SqlParser.WAIT);
+ }
+
+ this.state = 928;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.COMMENT) {
+ this.state = 923;
+ this.match(SqlParser.COMMENT);
+ this.state = 925;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 924;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 927;
+ localctx.comment = this.match(SqlParser.STRING_LITERAL);
+ }
+
+ this.state = 930;
+ this.match(SqlParser.ENGINE);
+ this.state = 932;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 931;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 934;
+ this.engineName();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function CreateProcedureContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_createProcedure;
+ return this;
+}
+
+CreateProcedureContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+CreateProcedureContext.prototype.constructor = CreateProcedureContext;
+
+CreateProcedureContext.prototype.CREATE = function() {
+ return this.getToken(SqlParser.CREATE, 0);
+};
+
+CreateProcedureContext.prototype.PROCEDURE = function() {
+ return this.getToken(SqlParser.PROCEDURE, 0);
+};
+
+CreateProcedureContext.prototype.fullId = function() {
+ return this.getTypedRuleContext(FullIdContext,0);
+};
+
+CreateProcedureContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+CreateProcedureContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+CreateProcedureContext.prototype.routineBody = function() {
+ return this.getTypedRuleContext(RoutineBodyContext,0);
+};
+
+CreateProcedureContext.prototype.ownerStatement = function() {
+ return this.getTypedRuleContext(OwnerStatementContext,0);
+};
+
+CreateProcedureContext.prototype.procedureParameter = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ProcedureParameterContext);
+ } else {
+ return this.getTypedRuleContext(ProcedureParameterContext,i);
+ }
+};
+
+CreateProcedureContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+CreateProcedureContext.prototype.routineOption = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(RoutineOptionContext);
+ } else {
+ return this.getTypedRuleContext(RoutineOptionContext,i);
+ }
+};
+
+CreateProcedureContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterCreateProcedure(this);
+ }
+};
+
+CreateProcedureContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitCreateProcedure(this);
+ }
+};
+
+CreateProcedureContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitCreateProcedure(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.CreateProcedureContext = CreateProcedureContext;
+
+SqlParser.prototype.createProcedure = function() {
+
+ var localctx = new CreateProcedureContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 34, SqlParser.RULE_createProcedure);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 936;
+ this.match(SqlParser.CREATE);
+ this.state = 938;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.DEFINER) {
+ this.state = 937;
+ this.ownerStatement();
+ }
+
+ this.state = 940;
+ this.match(SqlParser.PROCEDURE);
+ this.state = 941;
+ this.fullId();
+ this.state = 942;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 944;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (SqlParser.CURRENT - 32)) | (1 << (SqlParser.DATABASE - 32)) | (1 << (SqlParser.DIAGNOSTICS - 32)))) !== 0) || ((((_la - 71)) & ~0x1f) == 0 && ((1 << (_la - 71)) & ((1 << (SqlParser.IN - 71)) | (1 << (SqlParser.INOUT - 71)) | (1 << (SqlParser.LEFT - 71)))) !== 0) || ((((_la - 105)) & ~0x1f) == 0 && ((1 << (_la - 105)) & ((1 << (SqlParser.NUMBER - 105)) | (1 << (SqlParser.OUT - 105)) | (1 << (SqlParser.RIGHT - 105)))) !== 0) || _la===SqlParser.STACKED || ((((_la - 199)) & ~0x1f) == 0 && ((1 << (_la - 199)) & ((1 << (SqlParser.DATE - 199)) | (1 << (SqlParser.TIME - 199)) | (1 << (SqlParser.TIMESTAMP - 199)) | (1 << (SqlParser.DATETIME - 199)) | (1 << (SqlParser.YEAR - 199)) | (1 << (SqlParser.TEXT - 199)) | (1 << (SqlParser.ENUM - 199)) | (1 << (SqlParser.SERIAL - 199)))) !== 0) || ((((_la - 233)) & ~0x1f) == 0 && ((1 << (_la - 233)) & ((1 << (SqlParser.JSON_VALID - 233)) | (1 << (SqlParser.JSON_SCHEMA_VALID - 233)) | (1 << (SqlParser.COUNT - 233)) | (1 << (SqlParser.POSITION - 233)))) !== 0) || ((((_la - 270)) & ~0x1f) == 0 && ((1 << (_la - 270)) & ((1 << (SqlParser.ACCOUNT - 270)) | (1 << (SqlParser.ACTION - 270)) | (1 << (SqlParser.AFTER - 270)) | (1 << (SqlParser.AGGREGATE - 270)) | (1 << (SqlParser.ALGORITHM - 270)) | (1 << (SqlParser.ANY - 270)) | (1 << (SqlParser.AT - 270)) | (1 << (SqlParser.AUTHORS - 270)) | (1 << (SqlParser.AUTOCOMMIT - 270)) | (1 << (SqlParser.AUTOEXTEND_SIZE - 270)) | (1 << (SqlParser.AUTO_INCREMENT - 270)) | (1 << (SqlParser.AVG_ROW_LENGTH - 270)) | (1 << (SqlParser.BEGIN - 270)) | (1 << (SqlParser.BINLOG - 270)) | (1 << (SqlParser.BIT - 270)) | (1 << (SqlParser.BLOCK - 270)) | (1 << (SqlParser.BOOL - 270)) | (1 << (SqlParser.BOOLEAN - 270)) | (1 << (SqlParser.BTREE - 270)) | (1 << (SqlParser.CACHE - 270)) | (1 << (SqlParser.CASCADED - 270)) | (1 << (SqlParser.CHAIN - 270)) | (1 << (SqlParser.CHANGED - 270)) | (1 << (SqlParser.CHANNEL - 270)) | (1 << (SqlParser.CHECKSUM - 270)) | (1 << (SqlParser.PAGE_CHECKSUM - 270)) | (1 << (SqlParser.CIPHER - 270)) | (1 << (SqlParser.CLASS_ORIGIN - 270)) | (1 << (SqlParser.CLIENT - 270)) | (1 << (SqlParser.CLOSE - 270)) | (1 << (SqlParser.COALESCE - 270)) | (1 << (SqlParser.CODE - 270)))) !== 0) || ((((_la - 302)) & ~0x1f) == 0 && ((1 << (_la - 302)) & ((1 << (SqlParser.COLUMNS - 302)) | (1 << (SqlParser.COLUMN_FORMAT - 302)) | (1 << (SqlParser.COLUMN_NAME - 302)) | (1 << (SqlParser.COMMENT - 302)) | (1 << (SqlParser.COMMIT - 302)) | (1 << (SqlParser.COMPACT - 302)) | (1 << (SqlParser.COMPLETION - 302)) | (1 << (SqlParser.COMPRESSED - 302)) | (1 << (SqlParser.COMPRESSION - 302)) | (1 << (SqlParser.CONCURRENT - 302)) | (1 << (SqlParser.CONNECTION - 302)) | (1 << (SqlParser.CONSISTENT - 302)) | (1 << (SqlParser.CONSTRAINT_CATALOG - 302)) | (1 << (SqlParser.CONSTRAINT_SCHEMA - 302)) | (1 << (SqlParser.CONSTRAINT_NAME - 302)) | (1 << (SqlParser.CONTAINS - 302)) | (1 << (SqlParser.CONTEXT - 302)) | (1 << (SqlParser.CONTRIBUTORS - 302)) | (1 << (SqlParser.COPY - 302)) | (1 << (SqlParser.CPU - 302)) | (1 << (SqlParser.CURSOR_NAME - 302)) | (1 << (SqlParser.DATA - 302)) | (1 << (SqlParser.DATAFILE - 302)) | (1 << (SqlParser.DEALLOCATE - 302)) | (1 << (SqlParser.DEFAULT_AUTH - 302)) | (1 << (SqlParser.DEFINER - 302)) | (1 << (SqlParser.DELAY_KEY_WRITE - 302)) | (1 << (SqlParser.DES_KEY_FILE - 302)) | (1 << (SqlParser.DIRECTORY - 302)) | (1 << (SqlParser.DISABLE - 302)) | (1 << (SqlParser.DISCARD - 302)) | (1 << (SqlParser.DISK - 302)))) !== 0) || ((((_la - 334)) & ~0x1f) == 0 && ((1 << (_la - 334)) & ((1 << (SqlParser.DO - 334)) | (1 << (SqlParser.DUMPFILE - 334)) | (1 << (SqlParser.DUPLICATE - 334)) | (1 << (SqlParser.DYNAMIC - 334)) | (1 << (SqlParser.ENABLE - 334)) | (1 << (SqlParser.ENCRYPTION - 334)) | (1 << (SqlParser.END - 334)) | (1 << (SqlParser.ENDS - 334)) | (1 << (SqlParser.ENGINE - 334)) | (1 << (SqlParser.ENGINES - 334)) | (1 << (SqlParser.ERROR - 334)) | (1 << (SqlParser.ERRORS - 334)) | (1 << (SqlParser.ESCAPE - 334)) | (1 << (SqlParser.EVEN - 334)) | (1 << (SqlParser.EVENT - 334)) | (1 << (SqlParser.EVENTS - 334)) | (1 << (SqlParser.EVERY - 334)) | (1 << (SqlParser.EXCHANGE - 334)) | (1 << (SqlParser.EXCLUSIVE - 334)) | (1 << (SqlParser.EXPIRE - 334)) | (1 << (SqlParser.EXPORT - 334)) | (1 << (SqlParser.EXTENDED - 334)) | (1 << (SqlParser.EXTENT_SIZE - 334)) | (1 << (SqlParser.FAST - 334)) | (1 << (SqlParser.FAULTS - 334)) | (1 << (SqlParser.FIELDS - 334)) | (1 << (SqlParser.FILE_BLOCK_SIZE - 334)) | (1 << (SqlParser.FILTER - 334)) | (1 << (SqlParser.FIRST - 334)) | (1 << (SqlParser.FIXED - 334)) | (1 << (SqlParser.FLUSH - 334)) | (1 << (SqlParser.FOLLOWS - 334)))) !== 0) || ((((_la - 366)) & ~0x1f) == 0 && ((1 << (_la - 366)) & ((1 << (SqlParser.FOUND - 366)) | (1 << (SqlParser.FULL - 366)) | (1 << (SqlParser.FUNCTION - 366)) | (1 << (SqlParser.GENERAL - 366)) | (1 << (SqlParser.GLOBAL - 366)) | (1 << (SqlParser.GRANTS - 366)) | (1 << (SqlParser.GROUP_REPLICATION - 366)) | (1 << (SqlParser.HANDLER - 366)) | (1 << (SqlParser.HASH - 366)) | (1 << (SqlParser.HELP - 366)) | (1 << (SqlParser.HOST - 366)) | (1 << (SqlParser.HOSTS - 366)) | (1 << (SqlParser.IDENTIFIED - 366)) | (1 << (SqlParser.IGNORE_SERVER_IDS - 366)) | (1 << (SqlParser.IMPORT - 366)) | (1 << (SqlParser.INDEXES - 366)) | (1 << (SqlParser.INITIAL_SIZE - 366)) | (1 << (SqlParser.INPLACE - 366)) | (1 << (SqlParser.INSERT_METHOD - 366)) | (1 << (SqlParser.INSTALL - 366)) | (1 << (SqlParser.INSTANCE - 366)) | (1 << (SqlParser.INVISIBLE - 366)) | (1 << (SqlParser.INVOKER - 366)) | (1 << (SqlParser.IO - 366)) | (1 << (SqlParser.IO_THREAD - 366)) | (1 << (SqlParser.IPC - 366)) | (1 << (SqlParser.ISOLATION - 366)) | (1 << (SqlParser.ISSUER - 366)) | (1 << (SqlParser.JSON - 366)) | (1 << (SqlParser.KEY_BLOCK_SIZE - 366)) | (1 << (SqlParser.LANGUAGE - 366)) | (1 << (SqlParser.LAST - 366)))) !== 0) || ((((_la - 398)) & ~0x1f) == 0 && ((1 << (_la - 398)) & ((1 << (SqlParser.LEAVES - 398)) | (1 << (SqlParser.LESS - 398)) | (1 << (SqlParser.LEVEL - 398)) | (1 << (SqlParser.LIST - 398)) | (1 << (SqlParser.LOCAL - 398)) | (1 << (SqlParser.LOGFILE - 398)) | (1 << (SqlParser.LOGS - 398)) | (1 << (SqlParser.MASTER - 398)) | (1 << (SqlParser.MASTER_AUTO_POSITION - 398)) | (1 << (SqlParser.MASTER_CONNECT_RETRY - 398)) | (1 << (SqlParser.MASTER_DELAY - 398)) | (1 << (SqlParser.MASTER_HEARTBEAT_PERIOD - 398)) | (1 << (SqlParser.MASTER_HOST - 398)) | (1 << (SqlParser.MASTER_LOG_FILE - 398)) | (1 << (SqlParser.MASTER_LOG_POS - 398)) | (1 << (SqlParser.MASTER_PASSWORD - 398)) | (1 << (SqlParser.MASTER_PORT - 398)) | (1 << (SqlParser.MASTER_RETRY_COUNT - 398)) | (1 << (SqlParser.MASTER_SSL - 398)) | (1 << (SqlParser.MASTER_SSL_CA - 398)) | (1 << (SqlParser.MASTER_SSL_CAPATH - 398)) | (1 << (SqlParser.MASTER_SSL_CERT - 398)) | (1 << (SqlParser.MASTER_SSL_CIPHER - 398)) | (1 << (SqlParser.MASTER_SSL_CRL - 398)) | (1 << (SqlParser.MASTER_SSL_CRLPATH - 398)) | (1 << (SqlParser.MASTER_SSL_KEY - 398)) | (1 << (SqlParser.MASTER_TLS_VERSION - 398)) | (1 << (SqlParser.MASTER_USER - 398)) | (1 << (SqlParser.MAX_CONNECTIONS_PER_HOUR - 398)) | (1 << (SqlParser.MAX_QUERIES_PER_HOUR - 398)) | (1 << (SqlParser.MAX_ROWS - 398)) | (1 << (SqlParser.MAX_SIZE - 398)))) !== 0) || ((((_la - 430)) & ~0x1f) == 0 && ((1 << (_la - 430)) & ((1 << (SqlParser.MAX_UPDATES_PER_HOUR - 430)) | (1 << (SqlParser.MAX_USER_CONNECTIONS - 430)) | (1 << (SqlParser.MEDIUM - 430)) | (1 << (SqlParser.MERGE - 430)) | (1 << (SqlParser.MESSAGE_TEXT - 430)) | (1 << (SqlParser.MID - 430)) | (1 << (SqlParser.MIGRATE - 430)) | (1 << (SqlParser.MIN_ROWS - 430)) | (1 << (SqlParser.MODE - 430)) | (1 << (SqlParser.MODIFY - 430)) | (1 << (SqlParser.MUTEX - 430)) | (1 << (SqlParser.MYSQL - 430)) | (1 << (SqlParser.MYSQL_ERRNO - 430)) | (1 << (SqlParser.NAME - 430)) | (1 << (SqlParser.NAMES - 430)) | (1 << (SqlParser.NCHAR - 430)) | (1 << (SqlParser.NEVER - 430)) | (1 << (SqlParser.NEXT - 430)) | (1 << (SqlParser.NO - 430)) | (1 << (SqlParser.NODEGROUP - 430)) | (1 << (SqlParser.NONE - 430)) | (1 << (SqlParser.OFFLINE - 430)) | (1 << (SqlParser.OFFSET - 430)) | (1 << (SqlParser.OJ - 430)) | (1 << (SqlParser.OLD_PASSWORD - 430)) | (1 << (SqlParser.ONE - 430)) | (1 << (SqlParser.ONLINE - 430)) | (1 << (SqlParser.ONLY - 430)) | (1 << (SqlParser.OPEN - 430)) | (1 << (SqlParser.OPTIMIZER_COSTS - 430)) | (1 << (SqlParser.OPTIONS - 430)) | (1 << (SqlParser.OWNER - 430)))) !== 0) || ((((_la - 462)) & ~0x1f) == 0 && ((1 << (_la - 462)) & ((1 << (SqlParser.PACK_KEYS - 462)) | (1 << (SqlParser.PAGE - 462)) | (1 << (SqlParser.PARSER - 462)) | (1 << (SqlParser.PARTIAL - 462)) | (1 << (SqlParser.PARTITIONING - 462)) | (1 << (SqlParser.PARTITIONS - 462)) | (1 << (SqlParser.PASSWORD - 462)) | (1 << (SqlParser.PHASE - 462)) | (1 << (SqlParser.PLUGIN - 462)) | (1 << (SqlParser.PLUGIN_DIR - 462)) | (1 << (SqlParser.PLUGINS - 462)) | (1 << (SqlParser.PORT - 462)) | (1 << (SqlParser.PRECEDES - 462)) | (1 << (SqlParser.PREPARE - 462)) | (1 << (SqlParser.PRESERVE - 462)) | (1 << (SqlParser.PREV - 462)) | (1 << (SqlParser.PROCESSLIST - 462)) | (1 << (SqlParser.PROFILE - 462)) | (1 << (SqlParser.PROFILES - 462)) | (1 << (SqlParser.PROXY - 462)) | (1 << (SqlParser.QUERY - 462)) | (1 << (SqlParser.QUICK - 462)) | (1 << (SqlParser.REBUILD - 462)) | (1 << (SqlParser.RECOVER - 462)) | (1 << (SqlParser.REDO_BUFFER_SIZE - 462)) | (1 << (SqlParser.REDUNDANT - 462)) | (1 << (SqlParser.RELAY - 462)) | (1 << (SqlParser.RELAY_LOG_FILE - 462)) | (1 << (SqlParser.RELAY_LOG_POS - 462)) | (1 << (SqlParser.RELAYLOG - 462)) | (1 << (SqlParser.REMOVE - 462)) | (1 << (SqlParser.REORGANIZE - 462)))) !== 0) || ((((_la - 494)) & ~0x1f) == 0 && ((1 << (_la - 494)) & ((1 << (SqlParser.REPAIR - 494)) | (1 << (SqlParser.REPLICATE_DO_DB - 494)) | (1 << (SqlParser.REPLICATE_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_DB - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATE_REWRITE_DB - 494)) | (1 << (SqlParser.REPLICATE_WILD_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_WILD_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATION - 494)) | (1 << (SqlParser.RESET - 494)) | (1 << (SqlParser.RESUME - 494)) | (1 << (SqlParser.RETURNED_SQLSTATE - 494)) | (1 << (SqlParser.RETURNS - 494)) | (1 << (SqlParser.ROLE - 494)) | (1 << (SqlParser.ROLLBACK - 494)) | (1 << (SqlParser.ROLLUP - 494)) | (1 << (SqlParser.ROTATE - 494)) | (1 << (SqlParser.ROW - 494)) | (1 << (SqlParser.ROWS - 494)) | (1 << (SqlParser.ROW_FORMAT - 494)) | (1 << (SqlParser.SAVEPOINT - 494)) | (1 << (SqlParser.SCHEDULE - 494)) | (1 << (SqlParser.SECURITY - 494)) | (1 << (SqlParser.SERVER - 494)) | (1 << (SqlParser.SESSION - 494)) | (1 << (SqlParser.SHARE - 494)) | (1 << (SqlParser.SHARED - 494)) | (1 << (SqlParser.SIGNED - 494)) | (1 << (SqlParser.SIMPLE - 494)) | (1 << (SqlParser.SLAVE - 494)) | (1 << (SqlParser.SLOW - 494)) | (1 << (SqlParser.SNAPSHOT - 494)))) !== 0) || ((((_la - 526)) & ~0x1f) == 0 && ((1 << (_la - 526)) & ((1 << (SqlParser.SOCKET - 526)) | (1 << (SqlParser.SOME - 526)) | (1 << (SqlParser.SONAME - 526)) | (1 << (SqlParser.SOUNDS - 526)) | (1 << (SqlParser.SOURCE - 526)) | (1 << (SqlParser.SQL_AFTER_GTIDS - 526)) | (1 << (SqlParser.SQL_AFTER_MTS_GAPS - 526)) | (1 << (SqlParser.SQL_BEFORE_GTIDS - 526)) | (1 << (SqlParser.SQL_BUFFER_RESULT - 526)) | (1 << (SqlParser.SQL_CACHE - 526)) | (1 << (SqlParser.SQL_NO_CACHE - 526)) | (1 << (SqlParser.SQL_THREAD - 526)) | (1 << (SqlParser.START - 526)) | (1 << (SqlParser.STARTS - 526)) | (1 << (SqlParser.STATS_AUTO_RECALC - 526)) | (1 << (SqlParser.STATS_PERSISTENT - 526)) | (1 << (SqlParser.STATS_SAMPLE_PAGES - 526)) | (1 << (SqlParser.STATUS - 526)) | (1 << (SqlParser.STOP - 526)) | (1 << (SqlParser.STORAGE - 526)) | (1 << (SqlParser.STRING - 526)) | (1 << (SqlParser.SUBCLASS_ORIGIN - 526)) | (1 << (SqlParser.SUBJECT - 526)) | (1 << (SqlParser.SUBPARTITION - 526)) | (1 << (SqlParser.SUBPARTITIONS - 526)) | (1 << (SqlParser.SUSPEND - 526)) | (1 << (SqlParser.SWAPS - 526)) | (1 << (SqlParser.SWITCHES - 526)) | (1 << (SqlParser.TABLE_NAME - 526)) | (1 << (SqlParser.TABLESPACE - 526)) | (1 << (SqlParser.TEMPORARY - 526)))) !== 0) || ((((_la - 558)) & ~0x1f) == 0 && ((1 << (_la - 558)) & ((1 << (SqlParser.TEMPTABLE - 558)) | (1 << (SqlParser.THAN - 558)) | (1 << (SqlParser.TRADITIONAL - 558)) | (1 << (SqlParser.TRANSACTION - 558)) | (1 << (SqlParser.TRANSACTIONAL - 558)) | (1 << (SqlParser.TRIGGERS - 558)) | (1 << (SqlParser.TRUNCATE - 558)) | (1 << (SqlParser.UNDEFINED - 558)) | (1 << (SqlParser.UNDOFILE - 558)) | (1 << (SqlParser.UNDO_BUFFER_SIZE - 558)) | (1 << (SqlParser.UNINSTALL - 558)) | (1 << (SqlParser.UNKNOWN - 558)) | (1 << (SqlParser.UNTIL - 558)) | (1 << (SqlParser.UPGRADE - 558)) | (1 << (SqlParser.USER - 558)) | (1 << (SqlParser.USE_FRM - 558)) | (1 << (SqlParser.USER_RESOURCES - 558)) | (1 << (SqlParser.VALIDATION - 558)) | (1 << (SqlParser.VALUE - 558)) | (1 << (SqlParser.VARIABLES - 558)) | (1 << (SqlParser.VIEW - 558)) | (1 << (SqlParser.VISIBLE - 558)) | (1 << (SqlParser.WAIT - 558)) | (1 << (SqlParser.WARNINGS - 558)) | (1 << (SqlParser.WITHOUT - 558)) | (1 << (SqlParser.WORK - 558)) | (1 << (SqlParser.WRAPPER - 558)) | (1 << (SqlParser.X509 - 558)) | (1 << (SqlParser.XA - 558)) | (1 << (SqlParser.XML - 558)))) !== 0) || ((((_la - 593)) & ~0x1f) == 0 && ((1 << (_la - 593)) & ((1 << (SqlParser.INTERNAL - 593)) | (1 << (SqlParser.QUARTER - 593)) | (1 << (SqlParser.MONTH - 593)) | (1 << (SqlParser.DAY - 593)) | (1 << (SqlParser.HOUR - 593)) | (1 << (SqlParser.MINUTE - 593)) | (1 << (SqlParser.WEEK - 593)) | (1 << (SqlParser.SECOND - 593)) | (1 << (SqlParser.MICROSECOND - 593)) | (1 << (SqlParser.TABLES - 593)) | (1 << (SqlParser.ROUTINE - 593)) | (1 << (SqlParser.EXECUTE - 593)) | (1 << (SqlParser.FILE - 593)) | (1 << (SqlParser.PROCESS - 593)) | (1 << (SqlParser.RELOAD - 593)) | (1 << (SqlParser.SHUTDOWN - 593)) | (1 << (SqlParser.SUPER - 593)) | (1 << (SqlParser.PRIVILEGES - 593)) | (1 << (SqlParser.AUDIT_ADMIN - 593)) | (1 << (SqlParser.BACKUP_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ENCRYPTION_ADMIN - 593)) | (1 << (SqlParser.CLONE_ADMIN - 593)) | (1 << (SqlParser.CONNECTION_ADMIN - 593)) | (1 << (SqlParser.ENCRYPTION_KEY_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_USER - 593)) | (1 << (SqlParser.GROUP_REPLICATION_ADMIN - 593)) | (1 << (SqlParser.INNODB_REDO_LOG_ARCHIVE - 593)) | (1 << (SqlParser.NDB_STORED_USER - 593)) | (1 << (SqlParser.PERSIST_RO_VARIABLES_ADMIN - 593)))) !== 0) || ((((_la - 625)) & ~0x1f) == 0 && ((1 << (_la - 625)) & ((1 << (SqlParser.REPLICATION_APPLIER - 625)) | (1 << (SqlParser.REPLICATION_SLAVE_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_USER - 625)) | (1 << (SqlParser.ROLE_ADMIN - 625)) | (1 << (SqlParser.SESSION_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.SET_USER_ID - 625)) | (1 << (SqlParser.SHOW_ROUTINE - 625)) | (1 << (SqlParser.SYSTEM_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.TABLE_ENCRYPTION_ADMIN - 625)) | (1 << (SqlParser.VERSION_TOKEN_ADMIN - 625)) | (1 << (SqlParser.XA_RECOVER_ADMIN - 625)) | (1 << (SqlParser.ARMSCII8 - 625)) | (1 << (SqlParser.ASCII - 625)) | (1 << (SqlParser.BIG5 - 625)) | (1 << (SqlParser.CP1250 - 625)) | (1 << (SqlParser.CP1251 - 625)) | (1 << (SqlParser.CP1256 - 625)) | (1 << (SqlParser.CP1257 - 625)) | (1 << (SqlParser.CP850 - 625)) | (1 << (SqlParser.CP852 - 625)) | (1 << (SqlParser.CP866 - 625)) | (1 << (SqlParser.CP932 - 625)) | (1 << (SqlParser.DEC8 - 625)) | (1 << (SqlParser.EUCJPMS - 625)) | (1 << (SqlParser.EUCKR - 625)) | (1 << (SqlParser.GB2312 - 625)) | (1 << (SqlParser.GBK - 625)) | (1 << (SqlParser.GEOSTD8 - 625)) | (1 << (SqlParser.GREEK - 625)) | (1 << (SqlParser.HEBREW - 625)) | (1 << (SqlParser.HP8 - 625)))) !== 0) || ((((_la - 657)) & ~0x1f) == 0 && ((1 << (_la - 657)) & ((1 << (SqlParser.KEYBCS2 - 657)) | (1 << (SqlParser.KOI8R - 657)) | (1 << (SqlParser.KOI8U - 657)) | (1 << (SqlParser.LATIN1 - 657)) | (1 << (SqlParser.LATIN2 - 657)) | (1 << (SqlParser.LATIN5 - 657)) | (1 << (SqlParser.LATIN7 - 657)) | (1 << (SqlParser.MACCE - 657)) | (1 << (SqlParser.MACROMAN - 657)) | (1 << (SqlParser.SJIS - 657)) | (1 << (SqlParser.SWE7 - 657)) | (1 << (SqlParser.TIS620 - 657)) | (1 << (SqlParser.UCS2 - 657)) | (1 << (SqlParser.UJIS - 657)) | (1 << (SqlParser.UTF16 - 657)) | (1 << (SqlParser.UTF16LE - 657)) | (1 << (SqlParser.UTF32 - 657)) | (1 << (SqlParser.UTF8 - 657)) | (1 << (SqlParser.UTF8MB3 - 657)) | (1 << (SqlParser.UTF8MB4 - 657)) | (1 << (SqlParser.ARCHIVE - 657)) | (1 << (SqlParser.BLACKHOLE - 657)) | (1 << (SqlParser.CSV - 657)) | (1 << (SqlParser.FEDERATED - 657)) | (1 << (SqlParser.INNODB - 657)) | (1 << (SqlParser.MEMORY - 657)) | (1 << (SqlParser.MRG_MYISAM - 657)) | (1 << (SqlParser.MYISAM - 657)) | (1 << (SqlParser.NDB - 657)) | (1 << (SqlParser.NDBCLUSTER - 657)) | (1 << (SqlParser.PERFORMANCE_SCHEMA - 657)) | (1 << (SqlParser.TOKUDB - 657)))) !== 0) || ((((_la - 689)) & ~0x1f) == 0 && ((1 << (_la - 689)) & ((1 << (SqlParser.REPEATABLE - 689)) | (1 << (SqlParser.COMMITTED - 689)) | (1 << (SqlParser.UNCOMMITTED - 689)) | (1 << (SqlParser.SERIALIZABLE - 689)) | (1 << (SqlParser.GEOMETRYCOLLECTION - 689)) | (1 << (SqlParser.LINESTRING - 689)) | (1 << (SqlParser.MULTILINESTRING - 689)) | (1 << (SqlParser.MULTIPOINT - 689)) | (1 << (SqlParser.MULTIPOLYGON - 689)) | (1 << (SqlParser.POINT - 689)) | (1 << (SqlParser.POLYGON - 689)) | (1 << (SqlParser.ABS - 689)) | (1 << (SqlParser.ACOS - 689)) | (1 << (SqlParser.ADDDATE - 689)) | (1 << (SqlParser.ADDTIME - 689)) | (1 << (SqlParser.AES_DECRYPT - 689)) | (1 << (SqlParser.AES_ENCRYPT - 689)) | (1 << (SqlParser.AREA - 689)) | (1 << (SqlParser.ASBINARY - 689)) | (1 << (SqlParser.ASIN - 689)) | (1 << (SqlParser.ASTEXT - 689)) | (1 << (SqlParser.ASWKB - 689)) | (1 << (SqlParser.ASWKT - 689)) | (1 << (SqlParser.ASYMMETRIC_DECRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_DERIVE - 689)) | (1 << (SqlParser.ASYMMETRIC_ENCRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_SIGN - 689)) | (1 << (SqlParser.ASYMMETRIC_VERIFY - 689)) | (1 << (SqlParser.ATAN - 689)) | (1 << (SqlParser.ATAN2 - 689)))) !== 0) || ((((_la - 721)) & ~0x1f) == 0 && ((1 << (_la - 721)) & ((1 << (SqlParser.BENCHMARK - 721)) | (1 << (SqlParser.BIN - 721)) | (1 << (SqlParser.BIT_COUNT - 721)) | (1 << (SqlParser.BIT_LENGTH - 721)) | (1 << (SqlParser.BUFFER - 721)) | (1 << (SqlParser.CATALOG_NAME - 721)) | (1 << (SqlParser.CEIL - 721)) | (1 << (SqlParser.CEILING - 721)) | (1 << (SqlParser.CENTROID - 721)) | (1 << (SqlParser.CHARACTER_LENGTH - 721)) | (1 << (SqlParser.CHARSET - 721)) | (1 << (SqlParser.CHAR_LENGTH - 721)) | (1 << (SqlParser.COERCIBILITY - 721)) | (1 << (SqlParser.COLLATION - 721)) | (1 << (SqlParser.COMPRESS - 721)) | (1 << (SqlParser.CONCAT - 721)) | (1 << (SqlParser.CONCAT_WS - 721)) | (1 << (SqlParser.CONNECTION_ID - 721)) | (1 << (SqlParser.CONV - 721)) | (1 << (SqlParser.CONVERT_TZ - 721)) | (1 << (SqlParser.COS - 721)) | (1 << (SqlParser.COT - 721)) | (1 << (SqlParser.CRC32 - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PRIV_KEY - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PUB_KEY - 721)) | (1 << (SqlParser.CREATE_DH_PARAMETERS - 721)) | (1 << (SqlParser.CREATE_DIGEST - 721)) | (1 << (SqlParser.CROSSES - 721)) | (1 << (SqlParser.DATEDIFF - 721)) | (1 << (SqlParser.DATE_FORMAT - 721)) | (1 << (SqlParser.DAYNAME - 721)) | (1 << (SqlParser.DAYOFMONTH - 721)))) !== 0) || ((((_la - 753)) & ~0x1f) == 0 && ((1 << (_la - 753)) & ((1 << (SqlParser.DAYOFWEEK - 753)) | (1 << (SqlParser.DAYOFYEAR - 753)) | (1 << (SqlParser.DECODE - 753)) | (1 << (SqlParser.DEGREES - 753)) | (1 << (SqlParser.DES_DECRYPT - 753)) | (1 << (SqlParser.DES_ENCRYPT - 753)) | (1 << (SqlParser.DIMENSION - 753)) | (1 << (SqlParser.DISJOINT - 753)) | (1 << (SqlParser.ELT - 753)) | (1 << (SqlParser.ENCODE - 753)) | (1 << (SqlParser.ENCRYPT - 753)) | (1 << (SqlParser.ENDPOINT - 753)) | (1 << (SqlParser.ENVELOPE - 753)) | (1 << (SqlParser.EQUALS - 753)) | (1 << (SqlParser.EXP - 753)) | (1 << (SqlParser.EXPORT_SET - 753)) | (1 << (SqlParser.EXTERIORRING - 753)) | (1 << (SqlParser.EXTRACTVALUE - 753)) | (1 << (SqlParser.FIELD - 753)) | (1 << (SqlParser.FIND_IN_SET - 753)) | (1 << (SqlParser.FLOOR - 753)) | (1 << (SqlParser.FORMAT - 753)) | (1 << (SqlParser.FOUND_ROWS - 753)) | (1 << (SqlParser.FROM_BASE64 - 753)) | (1 << (SqlParser.FROM_DAYS - 753)) | (1 << (SqlParser.FROM_UNIXTIME - 753)) | (1 << (SqlParser.GEOMCOLLFROMTEXT - 753)) | (1 << (SqlParser.GEOMCOLLFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYFROMWKB - 753)))) !== 0) || ((((_la - 785)) & ~0x1f) == 0 && ((1 << (_la - 785)) & ((1 << (SqlParser.GEOMETRYN - 785)) | (1 << (SqlParser.GEOMETRYTYPE - 785)) | (1 << (SqlParser.GEOMFROMTEXT - 785)) | (1 << (SqlParser.GEOMFROMWKB - 785)) | (1 << (SqlParser.GET_FORMAT - 785)) | (1 << (SqlParser.GET_LOCK - 785)) | (1 << (SqlParser.GLENGTH - 785)) | (1 << (SqlParser.GREATEST - 785)) | (1 << (SqlParser.GTID_SUBSET - 785)) | (1 << (SqlParser.GTID_SUBTRACT - 785)) | (1 << (SqlParser.HEX - 785)) | (1 << (SqlParser.IFNULL - 785)) | (1 << (SqlParser.INET6_ATON - 785)) | (1 << (SqlParser.INET6_NTOA - 785)) | (1 << (SqlParser.INET_ATON - 785)) | (1 << (SqlParser.INET_NTOA - 785)) | (1 << (SqlParser.INSTR - 785)) | (1 << (SqlParser.INTERIORRINGN - 785)) | (1 << (SqlParser.INTERSECTS - 785)) | (1 << (SqlParser.ISCLOSED - 785)) | (1 << (SqlParser.ISEMPTY - 785)) | (1 << (SqlParser.ISNULL - 785)) | (1 << (SqlParser.ISSIMPLE - 785)) | (1 << (SqlParser.IS_FREE_LOCK - 785)) | (1 << (SqlParser.IS_IPV4 - 785)) | (1 << (SqlParser.IS_IPV4_COMPAT - 785)) | (1 << (SqlParser.IS_IPV4_MAPPED - 785)) | (1 << (SqlParser.IS_IPV6 - 785)) | (1 << (SqlParser.IS_USED_LOCK - 785)) | (1 << (SqlParser.LAST_INSERT_ID - 785)) | (1 << (SqlParser.LCASE - 785)) | (1 << (SqlParser.LEAST - 785)))) !== 0) || ((((_la - 817)) & ~0x1f) == 0 && ((1 << (_la - 817)) & ((1 << (SqlParser.LENGTH - 817)) | (1 << (SqlParser.LINEFROMTEXT - 817)) | (1 << (SqlParser.LINEFROMWKB - 817)) | (1 << (SqlParser.LINESTRINGFROMTEXT - 817)) | (1 << (SqlParser.LINESTRINGFROMWKB - 817)) | (1 << (SqlParser.LN - 817)) | (1 << (SqlParser.LOAD_FILE - 817)) | (1 << (SqlParser.LOCATE - 817)) | (1 << (SqlParser.LOG - 817)) | (1 << (SqlParser.LOG10 - 817)) | (1 << (SqlParser.LOG2 - 817)) | (1 << (SqlParser.LOWER - 817)) | (1 << (SqlParser.LPAD - 817)) | (1 << (SqlParser.LTRIM - 817)) | (1 << (SqlParser.MAKEDATE - 817)) | (1 << (SqlParser.MAKETIME - 817)) | (1 << (SqlParser.MAKE_SET - 817)) | (1 << (SqlParser.MASTER_POS_WAIT - 817)) | (1 << (SqlParser.MBRCONTAINS - 817)) | (1 << (SqlParser.MBRDISJOINT - 817)) | (1 << (SqlParser.MBREQUAL - 817)) | (1 << (SqlParser.MBRINTERSECTS - 817)) | (1 << (SqlParser.MBROVERLAPS - 817)) | (1 << (SqlParser.MBRTOUCHES - 817)) | (1 << (SqlParser.MBRWITHIN - 817)) | (1 << (SqlParser.MD5 - 817)) | (1 << (SqlParser.MLINEFROMTEXT - 817)) | (1 << (SqlParser.MLINEFROMWKB - 817)) | (1 << (SqlParser.MONTHNAME - 817)) | (1 << (SqlParser.MPOINTFROMTEXT - 817)) | (1 << (SqlParser.MPOINTFROMWKB - 817)) | (1 << (SqlParser.MPOLYFROMTEXT - 817)))) !== 0) || ((((_la - 849)) & ~0x1f) == 0 && ((1 << (_la - 849)) & ((1 << (SqlParser.MPOLYFROMWKB - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMTEXT - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMWKB - 849)) | (1 << (SqlParser.MULTIPOINTFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOINTFROMWKB - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMWKB - 849)) | (1 << (SqlParser.NAME_CONST - 849)) | (1 << (SqlParser.NULLIF - 849)) | (1 << (SqlParser.NUMGEOMETRIES - 849)) | (1 << (SqlParser.NUMINTERIORRINGS - 849)) | (1 << (SqlParser.NUMPOINTS - 849)) | (1 << (SqlParser.OCT - 849)) | (1 << (SqlParser.OCTET_LENGTH - 849)) | (1 << (SqlParser.ORD - 849)) | (1 << (SqlParser.OVERLAPS - 849)) | (1 << (SqlParser.PERIOD_ADD - 849)) | (1 << (SqlParser.PERIOD_DIFF - 849)) | (1 << (SqlParser.PI - 849)) | (1 << (SqlParser.POINTFROMTEXT - 849)) | (1 << (SqlParser.POINTFROMWKB - 849)) | (1 << (SqlParser.POINTN - 849)) | (1 << (SqlParser.POLYFROMTEXT - 849)) | (1 << (SqlParser.POLYFROMWKB - 849)) | (1 << (SqlParser.POLYGONFROMTEXT - 849)) | (1 << (SqlParser.POLYGONFROMWKB - 849)) | (1 << (SqlParser.POW - 849)) | (1 << (SqlParser.POWER - 849)) | (1 << (SqlParser.QUOTE - 849)) | (1 << (SqlParser.RADIANS - 849)) | (1 << (SqlParser.RAND - 849)) | (1 << (SqlParser.RANDOM_BYTES - 849)))) !== 0) || ((((_la - 881)) & ~0x1f) == 0 && ((1 << (_la - 881)) & ((1 << (SqlParser.RELEASE_LOCK - 881)) | (1 << (SqlParser.REVERSE - 881)) | (1 << (SqlParser.ROUND - 881)) | (1 << (SqlParser.ROW_COUNT - 881)) | (1 << (SqlParser.RPAD - 881)) | (1 << (SqlParser.RTRIM - 881)) | (1 << (SqlParser.SEC_TO_TIME - 881)) | (1 << (SqlParser.SESSION_USER - 881)) | (1 << (SqlParser.SHA - 881)) | (1 << (SqlParser.SHA1 - 881)) | (1 << (SqlParser.SHA2 - 881)) | (1 << (SqlParser.SCHEMA_NAME - 881)) | (1 << (SqlParser.SIGN - 881)) | (1 << (SqlParser.SIN - 881)) | (1 << (SqlParser.SLEEP - 881)) | (1 << (SqlParser.SOUNDEX - 881)) | (1 << (SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS - 881)) | (1 << (SqlParser.SQRT - 881)) | (1 << (SqlParser.SRID - 881)) | (1 << (SqlParser.STARTPOINT - 881)) | (1 << (SqlParser.STRCMP - 881)) | (1 << (SqlParser.STR_TO_DATE - 881)) | (1 << (SqlParser.ST_AREA - 881)) | (1 << (SqlParser.ST_ASBINARY - 881)) | (1 << (SqlParser.ST_ASTEXT - 881)) | (1 << (SqlParser.ST_ASWKB - 881)) | (1 << (SqlParser.ST_ASWKT - 881)) | (1 << (SqlParser.ST_BUFFER - 881)) | (1 << (SqlParser.ST_CENTROID - 881)) | (1 << (SqlParser.ST_CONTAINS - 881)) | (1 << (SqlParser.ST_CROSSES - 881)) | (1 << (SqlParser.ST_DIFFERENCE - 881)))) !== 0) || ((((_la - 913)) & ~0x1f) == 0 && ((1 << (_la - 913)) & ((1 << (SqlParser.ST_DIMENSION - 913)) | (1 << (SqlParser.ST_DISJOINT - 913)) | (1 << (SqlParser.ST_DISTANCE - 913)) | (1 << (SqlParser.ST_ENDPOINT - 913)) | (1 << (SqlParser.ST_ENVELOPE - 913)) | (1 << (SqlParser.ST_EQUALS - 913)) | (1 << (SqlParser.ST_EXTERIORRING - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYN - 913)) | (1 << (SqlParser.ST_GEOMETRYTYPE - 913)) | (1 << (SqlParser.ST_GEOMFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMFROMWKB - 913)) | (1 << (SqlParser.ST_INTERIORRINGN - 913)) | (1 << (SqlParser.ST_INTERSECTION - 913)) | (1 << (SqlParser.ST_INTERSECTS - 913)) | (1 << (SqlParser.ST_ISCLOSED - 913)) | (1 << (SqlParser.ST_ISEMPTY - 913)) | (1 << (SqlParser.ST_ISSIMPLE - 913)) | (1 << (SqlParser.ST_LINEFROMTEXT - 913)) | (1 << (SqlParser.ST_LINEFROMWKB - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMTEXT - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMWKB - 913)) | (1 << (SqlParser.ST_NUMGEOMETRIES - 913)) | (1 << (SqlParser.ST_NUMINTERIORRING - 913)) | (1 << (SqlParser.ST_NUMINTERIORRINGS - 913)) | (1 << (SqlParser.ST_NUMPOINTS - 913)))) !== 0) || ((((_la - 945)) & ~0x1f) == 0 && ((1 << (_la - 945)) & ((1 << (SqlParser.ST_OVERLAPS - 945)) | (1 << (SqlParser.ST_POINTFROMTEXT - 945)) | (1 << (SqlParser.ST_POINTFROMWKB - 945)) | (1 << (SqlParser.ST_POINTN - 945)) | (1 << (SqlParser.ST_POLYFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYFROMWKB - 945)) | (1 << (SqlParser.ST_POLYGONFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYGONFROMWKB - 945)) | (1 << (SqlParser.ST_SRID - 945)) | (1 << (SqlParser.ST_STARTPOINT - 945)) | (1 << (SqlParser.ST_SYMDIFFERENCE - 945)) | (1 << (SqlParser.ST_TOUCHES - 945)) | (1 << (SqlParser.ST_UNION - 945)) | (1 << (SqlParser.ST_WITHIN - 945)) | (1 << (SqlParser.ST_X - 945)) | (1 << (SqlParser.ST_Y - 945)) | (1 << (SqlParser.SUBDATE - 945)) | (1 << (SqlParser.SUBSTRING_INDEX - 945)) | (1 << (SqlParser.SUBTIME - 945)) | (1 << (SqlParser.SYSTEM_USER - 945)) | (1 << (SqlParser.TAN - 945)) | (1 << (SqlParser.TIMEDIFF - 945)) | (1 << (SqlParser.TIMESTAMPADD - 945)) | (1 << (SqlParser.TIMESTAMPDIFF - 945)) | (1 << (SqlParser.TIME_FORMAT - 945)) | (1 << (SqlParser.TIME_TO_SEC - 945)) | (1 << (SqlParser.TOUCHES - 945)) | (1 << (SqlParser.TO_BASE64 - 945)) | (1 << (SqlParser.TO_DAYS - 945)) | (1 << (SqlParser.TO_SECONDS - 945)) | (1 << (SqlParser.UCASE - 945)) | (1 << (SqlParser.UNCOMPRESS - 945)))) !== 0) || ((((_la - 977)) & ~0x1f) == 0 && ((1 << (_la - 977)) & ((1 << (SqlParser.UNCOMPRESSED_LENGTH - 977)) | (1 << (SqlParser.UNHEX - 977)) | (1 << (SqlParser.UNIX_TIMESTAMP - 977)) | (1 << (SqlParser.UPDATEXML - 977)) | (1 << (SqlParser.UPPER - 977)) | (1 << (SqlParser.UUID - 977)) | (1 << (SqlParser.UUID_SHORT - 977)) | (1 << (SqlParser.VALIDATE_PASSWORD_STRENGTH - 977)) | (1 << (SqlParser.VERSION - 977)) | (1 << (SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS - 977)) | (1 << (SqlParser.WEEKDAY - 977)) | (1 << (SqlParser.WEEKOFYEAR - 977)) | (1 << (SqlParser.WEIGHT_STRING - 977)) | (1 << (SqlParser.WITHIN - 977)) | (1 << (SqlParser.YEARWEEK - 977)) | (1 << (SqlParser.Y_FUNCTION - 977)) | (1 << (SqlParser.X_FUNCTION - 977)))) !== 0) || ((((_la - 1032)) & ~0x1f) == 0 && ((1 << (_la - 1032)) & ((1 << (SqlParser.CHARSET_REVERSE_QOUTE_STRING - 1032)) | (1 << (SqlParser.STRING_LITERAL - 1032)) | (1 << (SqlParser.ID - 1032)) | (1 << (SqlParser.REVERSE_QUOTE_ID - 1032)))) !== 0)) {
+ this.state = 943;
+ this.procedureParameter();
+ }
+
+ this.state = 950;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 946;
+ this.match(SqlParser.COMMA);
+ this.state = 947;
+ this.procedureParameter();
+ this.state = 952;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 953;
+ this.match(SqlParser.RR_BRACKET);
+ this.state = 957;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,49,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 954;
+ this.routineOption();
+ }
+ this.state = 959;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,49,this._ctx);
+ }
+
+ this.state = 960;
+ this.routineBody();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function CreateFunctionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_createFunction;
+ return this;
+}
+
+CreateFunctionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+CreateFunctionContext.prototype.constructor = CreateFunctionContext;
+
+CreateFunctionContext.prototype.CREATE = function() {
+ return this.getToken(SqlParser.CREATE, 0);
+};
+
+CreateFunctionContext.prototype.FUNCTION = function() {
+ return this.getToken(SqlParser.FUNCTION, 0);
+};
+
+CreateFunctionContext.prototype.fullId = function() {
+ return this.getTypedRuleContext(FullIdContext,0);
+};
+
+CreateFunctionContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+CreateFunctionContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+CreateFunctionContext.prototype.RETURNS = function() {
+ return this.getToken(SqlParser.RETURNS, 0);
+};
+
+CreateFunctionContext.prototype.dataType = function() {
+ return this.getTypedRuleContext(DataTypeContext,0);
+};
+
+CreateFunctionContext.prototype.routineBody = function() {
+ return this.getTypedRuleContext(RoutineBodyContext,0);
+};
+
+CreateFunctionContext.prototype.returnStatement = function() {
+ return this.getTypedRuleContext(ReturnStatementContext,0);
+};
+
+CreateFunctionContext.prototype.ownerStatement = function() {
+ return this.getTypedRuleContext(OwnerStatementContext,0);
+};
+
+CreateFunctionContext.prototype.functionParameter = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(FunctionParameterContext);
+ } else {
+ return this.getTypedRuleContext(FunctionParameterContext,i);
+ }
+};
+
+CreateFunctionContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+CreateFunctionContext.prototype.routineOption = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(RoutineOptionContext);
+ } else {
+ return this.getTypedRuleContext(RoutineOptionContext,i);
+ }
+};
+
+CreateFunctionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterCreateFunction(this);
+ }
+};
+
+CreateFunctionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitCreateFunction(this);
+ }
+};
+
+CreateFunctionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitCreateFunction(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.CreateFunctionContext = CreateFunctionContext;
+
+SqlParser.prototype.createFunction = function() {
+
+ var localctx = new CreateFunctionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 36, SqlParser.RULE_createFunction);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 962;
+ this.match(SqlParser.CREATE);
+ this.state = 964;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.DEFINER) {
+ this.state = 963;
+ this.ownerStatement();
+ }
+
+ this.state = 966;
+ this.match(SqlParser.FUNCTION);
+ this.state = 967;
+ this.fullId();
+ this.state = 968;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 970;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (SqlParser.CURRENT - 32)) | (1 << (SqlParser.DATABASE - 32)) | (1 << (SqlParser.DIAGNOSTICS - 32)))) !== 0) || _la===SqlParser.LEFT || _la===SqlParser.NUMBER || _la===SqlParser.RIGHT || _la===SqlParser.STACKED || ((((_la - 199)) & ~0x1f) == 0 && ((1 << (_la - 199)) & ((1 << (SqlParser.DATE - 199)) | (1 << (SqlParser.TIME - 199)) | (1 << (SqlParser.TIMESTAMP - 199)) | (1 << (SqlParser.DATETIME - 199)) | (1 << (SqlParser.YEAR - 199)) | (1 << (SqlParser.TEXT - 199)) | (1 << (SqlParser.ENUM - 199)) | (1 << (SqlParser.SERIAL - 199)))) !== 0) || ((((_la - 233)) & ~0x1f) == 0 && ((1 << (_la - 233)) & ((1 << (SqlParser.JSON_VALID - 233)) | (1 << (SqlParser.JSON_SCHEMA_VALID - 233)) | (1 << (SqlParser.COUNT - 233)) | (1 << (SqlParser.POSITION - 233)))) !== 0) || ((((_la - 270)) & ~0x1f) == 0 && ((1 << (_la - 270)) & ((1 << (SqlParser.ACCOUNT - 270)) | (1 << (SqlParser.ACTION - 270)) | (1 << (SqlParser.AFTER - 270)) | (1 << (SqlParser.AGGREGATE - 270)) | (1 << (SqlParser.ALGORITHM - 270)) | (1 << (SqlParser.ANY - 270)) | (1 << (SqlParser.AT - 270)) | (1 << (SqlParser.AUTHORS - 270)) | (1 << (SqlParser.AUTOCOMMIT - 270)) | (1 << (SqlParser.AUTOEXTEND_SIZE - 270)) | (1 << (SqlParser.AUTO_INCREMENT - 270)) | (1 << (SqlParser.AVG_ROW_LENGTH - 270)) | (1 << (SqlParser.BEGIN - 270)) | (1 << (SqlParser.BINLOG - 270)) | (1 << (SqlParser.BIT - 270)) | (1 << (SqlParser.BLOCK - 270)) | (1 << (SqlParser.BOOL - 270)) | (1 << (SqlParser.BOOLEAN - 270)) | (1 << (SqlParser.BTREE - 270)) | (1 << (SqlParser.CACHE - 270)) | (1 << (SqlParser.CASCADED - 270)) | (1 << (SqlParser.CHAIN - 270)) | (1 << (SqlParser.CHANGED - 270)) | (1 << (SqlParser.CHANNEL - 270)) | (1 << (SqlParser.CHECKSUM - 270)) | (1 << (SqlParser.PAGE_CHECKSUM - 270)) | (1 << (SqlParser.CIPHER - 270)) | (1 << (SqlParser.CLASS_ORIGIN - 270)) | (1 << (SqlParser.CLIENT - 270)) | (1 << (SqlParser.CLOSE - 270)) | (1 << (SqlParser.COALESCE - 270)) | (1 << (SqlParser.CODE - 270)))) !== 0) || ((((_la - 302)) & ~0x1f) == 0 && ((1 << (_la - 302)) & ((1 << (SqlParser.COLUMNS - 302)) | (1 << (SqlParser.COLUMN_FORMAT - 302)) | (1 << (SqlParser.COLUMN_NAME - 302)) | (1 << (SqlParser.COMMENT - 302)) | (1 << (SqlParser.COMMIT - 302)) | (1 << (SqlParser.COMPACT - 302)) | (1 << (SqlParser.COMPLETION - 302)) | (1 << (SqlParser.COMPRESSED - 302)) | (1 << (SqlParser.COMPRESSION - 302)) | (1 << (SqlParser.CONCURRENT - 302)) | (1 << (SqlParser.CONNECTION - 302)) | (1 << (SqlParser.CONSISTENT - 302)) | (1 << (SqlParser.CONSTRAINT_CATALOG - 302)) | (1 << (SqlParser.CONSTRAINT_SCHEMA - 302)) | (1 << (SqlParser.CONSTRAINT_NAME - 302)) | (1 << (SqlParser.CONTAINS - 302)) | (1 << (SqlParser.CONTEXT - 302)) | (1 << (SqlParser.CONTRIBUTORS - 302)) | (1 << (SqlParser.COPY - 302)) | (1 << (SqlParser.CPU - 302)) | (1 << (SqlParser.CURSOR_NAME - 302)) | (1 << (SqlParser.DATA - 302)) | (1 << (SqlParser.DATAFILE - 302)) | (1 << (SqlParser.DEALLOCATE - 302)) | (1 << (SqlParser.DEFAULT_AUTH - 302)) | (1 << (SqlParser.DEFINER - 302)) | (1 << (SqlParser.DELAY_KEY_WRITE - 302)) | (1 << (SqlParser.DES_KEY_FILE - 302)) | (1 << (SqlParser.DIRECTORY - 302)) | (1 << (SqlParser.DISABLE - 302)) | (1 << (SqlParser.DISCARD - 302)) | (1 << (SqlParser.DISK - 302)))) !== 0) || ((((_la - 334)) & ~0x1f) == 0 && ((1 << (_la - 334)) & ((1 << (SqlParser.DO - 334)) | (1 << (SqlParser.DUMPFILE - 334)) | (1 << (SqlParser.DUPLICATE - 334)) | (1 << (SqlParser.DYNAMIC - 334)) | (1 << (SqlParser.ENABLE - 334)) | (1 << (SqlParser.ENCRYPTION - 334)) | (1 << (SqlParser.END - 334)) | (1 << (SqlParser.ENDS - 334)) | (1 << (SqlParser.ENGINE - 334)) | (1 << (SqlParser.ENGINES - 334)) | (1 << (SqlParser.ERROR - 334)) | (1 << (SqlParser.ERRORS - 334)) | (1 << (SqlParser.ESCAPE - 334)) | (1 << (SqlParser.EVEN - 334)) | (1 << (SqlParser.EVENT - 334)) | (1 << (SqlParser.EVENTS - 334)) | (1 << (SqlParser.EVERY - 334)) | (1 << (SqlParser.EXCHANGE - 334)) | (1 << (SqlParser.EXCLUSIVE - 334)) | (1 << (SqlParser.EXPIRE - 334)) | (1 << (SqlParser.EXPORT - 334)) | (1 << (SqlParser.EXTENDED - 334)) | (1 << (SqlParser.EXTENT_SIZE - 334)) | (1 << (SqlParser.FAST - 334)) | (1 << (SqlParser.FAULTS - 334)) | (1 << (SqlParser.FIELDS - 334)) | (1 << (SqlParser.FILE_BLOCK_SIZE - 334)) | (1 << (SqlParser.FILTER - 334)) | (1 << (SqlParser.FIRST - 334)) | (1 << (SqlParser.FIXED - 334)) | (1 << (SqlParser.FLUSH - 334)) | (1 << (SqlParser.FOLLOWS - 334)))) !== 0) || ((((_la - 366)) & ~0x1f) == 0 && ((1 << (_la - 366)) & ((1 << (SqlParser.FOUND - 366)) | (1 << (SqlParser.FULL - 366)) | (1 << (SqlParser.FUNCTION - 366)) | (1 << (SqlParser.GENERAL - 366)) | (1 << (SqlParser.GLOBAL - 366)) | (1 << (SqlParser.GRANTS - 366)) | (1 << (SqlParser.GROUP_REPLICATION - 366)) | (1 << (SqlParser.HANDLER - 366)) | (1 << (SqlParser.HASH - 366)) | (1 << (SqlParser.HELP - 366)) | (1 << (SqlParser.HOST - 366)) | (1 << (SqlParser.HOSTS - 366)) | (1 << (SqlParser.IDENTIFIED - 366)) | (1 << (SqlParser.IGNORE_SERVER_IDS - 366)) | (1 << (SqlParser.IMPORT - 366)) | (1 << (SqlParser.INDEXES - 366)) | (1 << (SqlParser.INITIAL_SIZE - 366)) | (1 << (SqlParser.INPLACE - 366)) | (1 << (SqlParser.INSERT_METHOD - 366)) | (1 << (SqlParser.INSTALL - 366)) | (1 << (SqlParser.INSTANCE - 366)) | (1 << (SqlParser.INVISIBLE - 366)) | (1 << (SqlParser.INVOKER - 366)) | (1 << (SqlParser.IO - 366)) | (1 << (SqlParser.IO_THREAD - 366)) | (1 << (SqlParser.IPC - 366)) | (1 << (SqlParser.ISOLATION - 366)) | (1 << (SqlParser.ISSUER - 366)) | (1 << (SqlParser.JSON - 366)) | (1 << (SqlParser.KEY_BLOCK_SIZE - 366)) | (1 << (SqlParser.LANGUAGE - 366)) | (1 << (SqlParser.LAST - 366)))) !== 0) || ((((_la - 398)) & ~0x1f) == 0 && ((1 << (_la - 398)) & ((1 << (SqlParser.LEAVES - 398)) | (1 << (SqlParser.LESS - 398)) | (1 << (SqlParser.LEVEL - 398)) | (1 << (SqlParser.LIST - 398)) | (1 << (SqlParser.LOCAL - 398)) | (1 << (SqlParser.LOGFILE - 398)) | (1 << (SqlParser.LOGS - 398)) | (1 << (SqlParser.MASTER - 398)) | (1 << (SqlParser.MASTER_AUTO_POSITION - 398)) | (1 << (SqlParser.MASTER_CONNECT_RETRY - 398)) | (1 << (SqlParser.MASTER_DELAY - 398)) | (1 << (SqlParser.MASTER_HEARTBEAT_PERIOD - 398)) | (1 << (SqlParser.MASTER_HOST - 398)) | (1 << (SqlParser.MASTER_LOG_FILE - 398)) | (1 << (SqlParser.MASTER_LOG_POS - 398)) | (1 << (SqlParser.MASTER_PASSWORD - 398)) | (1 << (SqlParser.MASTER_PORT - 398)) | (1 << (SqlParser.MASTER_RETRY_COUNT - 398)) | (1 << (SqlParser.MASTER_SSL - 398)) | (1 << (SqlParser.MASTER_SSL_CA - 398)) | (1 << (SqlParser.MASTER_SSL_CAPATH - 398)) | (1 << (SqlParser.MASTER_SSL_CERT - 398)) | (1 << (SqlParser.MASTER_SSL_CIPHER - 398)) | (1 << (SqlParser.MASTER_SSL_CRL - 398)) | (1 << (SqlParser.MASTER_SSL_CRLPATH - 398)) | (1 << (SqlParser.MASTER_SSL_KEY - 398)) | (1 << (SqlParser.MASTER_TLS_VERSION - 398)) | (1 << (SqlParser.MASTER_USER - 398)) | (1 << (SqlParser.MAX_CONNECTIONS_PER_HOUR - 398)) | (1 << (SqlParser.MAX_QUERIES_PER_HOUR - 398)) | (1 << (SqlParser.MAX_ROWS - 398)) | (1 << (SqlParser.MAX_SIZE - 398)))) !== 0) || ((((_la - 430)) & ~0x1f) == 0 && ((1 << (_la - 430)) & ((1 << (SqlParser.MAX_UPDATES_PER_HOUR - 430)) | (1 << (SqlParser.MAX_USER_CONNECTIONS - 430)) | (1 << (SqlParser.MEDIUM - 430)) | (1 << (SqlParser.MERGE - 430)) | (1 << (SqlParser.MESSAGE_TEXT - 430)) | (1 << (SqlParser.MID - 430)) | (1 << (SqlParser.MIGRATE - 430)) | (1 << (SqlParser.MIN_ROWS - 430)) | (1 << (SqlParser.MODE - 430)) | (1 << (SqlParser.MODIFY - 430)) | (1 << (SqlParser.MUTEX - 430)) | (1 << (SqlParser.MYSQL - 430)) | (1 << (SqlParser.MYSQL_ERRNO - 430)) | (1 << (SqlParser.NAME - 430)) | (1 << (SqlParser.NAMES - 430)) | (1 << (SqlParser.NCHAR - 430)) | (1 << (SqlParser.NEVER - 430)) | (1 << (SqlParser.NEXT - 430)) | (1 << (SqlParser.NO - 430)) | (1 << (SqlParser.NODEGROUP - 430)) | (1 << (SqlParser.NONE - 430)) | (1 << (SqlParser.OFFLINE - 430)) | (1 << (SqlParser.OFFSET - 430)) | (1 << (SqlParser.OJ - 430)) | (1 << (SqlParser.OLD_PASSWORD - 430)) | (1 << (SqlParser.ONE - 430)) | (1 << (SqlParser.ONLINE - 430)) | (1 << (SqlParser.ONLY - 430)) | (1 << (SqlParser.OPEN - 430)) | (1 << (SqlParser.OPTIMIZER_COSTS - 430)) | (1 << (SqlParser.OPTIONS - 430)) | (1 << (SqlParser.OWNER - 430)))) !== 0) || ((((_la - 462)) & ~0x1f) == 0 && ((1 << (_la - 462)) & ((1 << (SqlParser.PACK_KEYS - 462)) | (1 << (SqlParser.PAGE - 462)) | (1 << (SqlParser.PARSER - 462)) | (1 << (SqlParser.PARTIAL - 462)) | (1 << (SqlParser.PARTITIONING - 462)) | (1 << (SqlParser.PARTITIONS - 462)) | (1 << (SqlParser.PASSWORD - 462)) | (1 << (SqlParser.PHASE - 462)) | (1 << (SqlParser.PLUGIN - 462)) | (1 << (SqlParser.PLUGIN_DIR - 462)) | (1 << (SqlParser.PLUGINS - 462)) | (1 << (SqlParser.PORT - 462)) | (1 << (SqlParser.PRECEDES - 462)) | (1 << (SqlParser.PREPARE - 462)) | (1 << (SqlParser.PRESERVE - 462)) | (1 << (SqlParser.PREV - 462)) | (1 << (SqlParser.PROCESSLIST - 462)) | (1 << (SqlParser.PROFILE - 462)) | (1 << (SqlParser.PROFILES - 462)) | (1 << (SqlParser.PROXY - 462)) | (1 << (SqlParser.QUERY - 462)) | (1 << (SqlParser.QUICK - 462)) | (1 << (SqlParser.REBUILD - 462)) | (1 << (SqlParser.RECOVER - 462)) | (1 << (SqlParser.REDO_BUFFER_SIZE - 462)) | (1 << (SqlParser.REDUNDANT - 462)) | (1 << (SqlParser.RELAY - 462)) | (1 << (SqlParser.RELAY_LOG_FILE - 462)) | (1 << (SqlParser.RELAY_LOG_POS - 462)) | (1 << (SqlParser.RELAYLOG - 462)) | (1 << (SqlParser.REMOVE - 462)) | (1 << (SqlParser.REORGANIZE - 462)))) !== 0) || ((((_la - 494)) & ~0x1f) == 0 && ((1 << (_la - 494)) & ((1 << (SqlParser.REPAIR - 494)) | (1 << (SqlParser.REPLICATE_DO_DB - 494)) | (1 << (SqlParser.REPLICATE_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_DB - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATE_REWRITE_DB - 494)) | (1 << (SqlParser.REPLICATE_WILD_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_WILD_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATION - 494)) | (1 << (SqlParser.RESET - 494)) | (1 << (SqlParser.RESUME - 494)) | (1 << (SqlParser.RETURNED_SQLSTATE - 494)) | (1 << (SqlParser.RETURNS - 494)) | (1 << (SqlParser.ROLE - 494)) | (1 << (SqlParser.ROLLBACK - 494)) | (1 << (SqlParser.ROLLUP - 494)) | (1 << (SqlParser.ROTATE - 494)) | (1 << (SqlParser.ROW - 494)) | (1 << (SqlParser.ROWS - 494)) | (1 << (SqlParser.ROW_FORMAT - 494)) | (1 << (SqlParser.SAVEPOINT - 494)) | (1 << (SqlParser.SCHEDULE - 494)) | (1 << (SqlParser.SECURITY - 494)) | (1 << (SqlParser.SERVER - 494)) | (1 << (SqlParser.SESSION - 494)) | (1 << (SqlParser.SHARE - 494)) | (1 << (SqlParser.SHARED - 494)) | (1 << (SqlParser.SIGNED - 494)) | (1 << (SqlParser.SIMPLE - 494)) | (1 << (SqlParser.SLAVE - 494)) | (1 << (SqlParser.SLOW - 494)) | (1 << (SqlParser.SNAPSHOT - 494)))) !== 0) || ((((_la - 526)) & ~0x1f) == 0 && ((1 << (_la - 526)) & ((1 << (SqlParser.SOCKET - 526)) | (1 << (SqlParser.SOME - 526)) | (1 << (SqlParser.SONAME - 526)) | (1 << (SqlParser.SOUNDS - 526)) | (1 << (SqlParser.SOURCE - 526)) | (1 << (SqlParser.SQL_AFTER_GTIDS - 526)) | (1 << (SqlParser.SQL_AFTER_MTS_GAPS - 526)) | (1 << (SqlParser.SQL_BEFORE_GTIDS - 526)) | (1 << (SqlParser.SQL_BUFFER_RESULT - 526)) | (1 << (SqlParser.SQL_CACHE - 526)) | (1 << (SqlParser.SQL_NO_CACHE - 526)) | (1 << (SqlParser.SQL_THREAD - 526)) | (1 << (SqlParser.START - 526)) | (1 << (SqlParser.STARTS - 526)) | (1 << (SqlParser.STATS_AUTO_RECALC - 526)) | (1 << (SqlParser.STATS_PERSISTENT - 526)) | (1 << (SqlParser.STATS_SAMPLE_PAGES - 526)) | (1 << (SqlParser.STATUS - 526)) | (1 << (SqlParser.STOP - 526)) | (1 << (SqlParser.STORAGE - 526)) | (1 << (SqlParser.STRING - 526)) | (1 << (SqlParser.SUBCLASS_ORIGIN - 526)) | (1 << (SqlParser.SUBJECT - 526)) | (1 << (SqlParser.SUBPARTITION - 526)) | (1 << (SqlParser.SUBPARTITIONS - 526)) | (1 << (SqlParser.SUSPEND - 526)) | (1 << (SqlParser.SWAPS - 526)) | (1 << (SqlParser.SWITCHES - 526)) | (1 << (SqlParser.TABLE_NAME - 526)) | (1 << (SqlParser.TABLESPACE - 526)) | (1 << (SqlParser.TEMPORARY - 526)))) !== 0) || ((((_la - 558)) & ~0x1f) == 0 && ((1 << (_la - 558)) & ((1 << (SqlParser.TEMPTABLE - 558)) | (1 << (SqlParser.THAN - 558)) | (1 << (SqlParser.TRADITIONAL - 558)) | (1 << (SqlParser.TRANSACTION - 558)) | (1 << (SqlParser.TRANSACTIONAL - 558)) | (1 << (SqlParser.TRIGGERS - 558)) | (1 << (SqlParser.TRUNCATE - 558)) | (1 << (SqlParser.UNDEFINED - 558)) | (1 << (SqlParser.UNDOFILE - 558)) | (1 << (SqlParser.UNDO_BUFFER_SIZE - 558)) | (1 << (SqlParser.UNINSTALL - 558)) | (1 << (SqlParser.UNKNOWN - 558)) | (1 << (SqlParser.UNTIL - 558)) | (1 << (SqlParser.UPGRADE - 558)) | (1 << (SqlParser.USER - 558)) | (1 << (SqlParser.USE_FRM - 558)) | (1 << (SqlParser.USER_RESOURCES - 558)) | (1 << (SqlParser.VALIDATION - 558)) | (1 << (SqlParser.VALUE - 558)) | (1 << (SqlParser.VARIABLES - 558)) | (1 << (SqlParser.VIEW - 558)) | (1 << (SqlParser.VISIBLE - 558)) | (1 << (SqlParser.WAIT - 558)) | (1 << (SqlParser.WARNINGS - 558)) | (1 << (SqlParser.WITHOUT - 558)) | (1 << (SqlParser.WORK - 558)) | (1 << (SqlParser.WRAPPER - 558)) | (1 << (SqlParser.X509 - 558)) | (1 << (SqlParser.XA - 558)) | (1 << (SqlParser.XML - 558)))) !== 0) || ((((_la - 593)) & ~0x1f) == 0 && ((1 << (_la - 593)) & ((1 << (SqlParser.INTERNAL - 593)) | (1 << (SqlParser.QUARTER - 593)) | (1 << (SqlParser.MONTH - 593)) | (1 << (SqlParser.DAY - 593)) | (1 << (SqlParser.HOUR - 593)) | (1 << (SqlParser.MINUTE - 593)) | (1 << (SqlParser.WEEK - 593)) | (1 << (SqlParser.SECOND - 593)) | (1 << (SqlParser.MICROSECOND - 593)) | (1 << (SqlParser.TABLES - 593)) | (1 << (SqlParser.ROUTINE - 593)) | (1 << (SqlParser.EXECUTE - 593)) | (1 << (SqlParser.FILE - 593)) | (1 << (SqlParser.PROCESS - 593)) | (1 << (SqlParser.RELOAD - 593)) | (1 << (SqlParser.SHUTDOWN - 593)) | (1 << (SqlParser.SUPER - 593)) | (1 << (SqlParser.PRIVILEGES - 593)) | (1 << (SqlParser.AUDIT_ADMIN - 593)) | (1 << (SqlParser.BACKUP_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ENCRYPTION_ADMIN - 593)) | (1 << (SqlParser.CLONE_ADMIN - 593)) | (1 << (SqlParser.CONNECTION_ADMIN - 593)) | (1 << (SqlParser.ENCRYPTION_KEY_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_USER - 593)) | (1 << (SqlParser.GROUP_REPLICATION_ADMIN - 593)) | (1 << (SqlParser.INNODB_REDO_LOG_ARCHIVE - 593)) | (1 << (SqlParser.NDB_STORED_USER - 593)) | (1 << (SqlParser.PERSIST_RO_VARIABLES_ADMIN - 593)))) !== 0) || ((((_la - 625)) & ~0x1f) == 0 && ((1 << (_la - 625)) & ((1 << (SqlParser.REPLICATION_APPLIER - 625)) | (1 << (SqlParser.REPLICATION_SLAVE_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_USER - 625)) | (1 << (SqlParser.ROLE_ADMIN - 625)) | (1 << (SqlParser.SESSION_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.SET_USER_ID - 625)) | (1 << (SqlParser.SHOW_ROUTINE - 625)) | (1 << (SqlParser.SYSTEM_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.TABLE_ENCRYPTION_ADMIN - 625)) | (1 << (SqlParser.VERSION_TOKEN_ADMIN - 625)) | (1 << (SqlParser.XA_RECOVER_ADMIN - 625)) | (1 << (SqlParser.ARMSCII8 - 625)) | (1 << (SqlParser.ASCII - 625)) | (1 << (SqlParser.BIG5 - 625)) | (1 << (SqlParser.CP1250 - 625)) | (1 << (SqlParser.CP1251 - 625)) | (1 << (SqlParser.CP1256 - 625)) | (1 << (SqlParser.CP1257 - 625)) | (1 << (SqlParser.CP850 - 625)) | (1 << (SqlParser.CP852 - 625)) | (1 << (SqlParser.CP866 - 625)) | (1 << (SqlParser.CP932 - 625)) | (1 << (SqlParser.DEC8 - 625)) | (1 << (SqlParser.EUCJPMS - 625)) | (1 << (SqlParser.EUCKR - 625)) | (1 << (SqlParser.GB2312 - 625)) | (1 << (SqlParser.GBK - 625)) | (1 << (SqlParser.GEOSTD8 - 625)) | (1 << (SqlParser.GREEK - 625)) | (1 << (SqlParser.HEBREW - 625)) | (1 << (SqlParser.HP8 - 625)))) !== 0) || ((((_la - 657)) & ~0x1f) == 0 && ((1 << (_la - 657)) & ((1 << (SqlParser.KEYBCS2 - 657)) | (1 << (SqlParser.KOI8R - 657)) | (1 << (SqlParser.KOI8U - 657)) | (1 << (SqlParser.LATIN1 - 657)) | (1 << (SqlParser.LATIN2 - 657)) | (1 << (SqlParser.LATIN5 - 657)) | (1 << (SqlParser.LATIN7 - 657)) | (1 << (SqlParser.MACCE - 657)) | (1 << (SqlParser.MACROMAN - 657)) | (1 << (SqlParser.SJIS - 657)) | (1 << (SqlParser.SWE7 - 657)) | (1 << (SqlParser.TIS620 - 657)) | (1 << (SqlParser.UCS2 - 657)) | (1 << (SqlParser.UJIS - 657)) | (1 << (SqlParser.UTF16 - 657)) | (1 << (SqlParser.UTF16LE - 657)) | (1 << (SqlParser.UTF32 - 657)) | (1 << (SqlParser.UTF8 - 657)) | (1 << (SqlParser.UTF8MB3 - 657)) | (1 << (SqlParser.UTF8MB4 - 657)) | (1 << (SqlParser.ARCHIVE - 657)) | (1 << (SqlParser.BLACKHOLE - 657)) | (1 << (SqlParser.CSV - 657)) | (1 << (SqlParser.FEDERATED - 657)) | (1 << (SqlParser.INNODB - 657)) | (1 << (SqlParser.MEMORY - 657)) | (1 << (SqlParser.MRG_MYISAM - 657)) | (1 << (SqlParser.MYISAM - 657)) | (1 << (SqlParser.NDB - 657)) | (1 << (SqlParser.NDBCLUSTER - 657)) | (1 << (SqlParser.PERFORMANCE_SCHEMA - 657)) | (1 << (SqlParser.TOKUDB - 657)))) !== 0) || ((((_la - 689)) & ~0x1f) == 0 && ((1 << (_la - 689)) & ((1 << (SqlParser.REPEATABLE - 689)) | (1 << (SqlParser.COMMITTED - 689)) | (1 << (SqlParser.UNCOMMITTED - 689)) | (1 << (SqlParser.SERIALIZABLE - 689)) | (1 << (SqlParser.GEOMETRYCOLLECTION - 689)) | (1 << (SqlParser.LINESTRING - 689)) | (1 << (SqlParser.MULTILINESTRING - 689)) | (1 << (SqlParser.MULTIPOINT - 689)) | (1 << (SqlParser.MULTIPOLYGON - 689)) | (1 << (SqlParser.POINT - 689)) | (1 << (SqlParser.POLYGON - 689)) | (1 << (SqlParser.ABS - 689)) | (1 << (SqlParser.ACOS - 689)) | (1 << (SqlParser.ADDDATE - 689)) | (1 << (SqlParser.ADDTIME - 689)) | (1 << (SqlParser.AES_DECRYPT - 689)) | (1 << (SqlParser.AES_ENCRYPT - 689)) | (1 << (SqlParser.AREA - 689)) | (1 << (SqlParser.ASBINARY - 689)) | (1 << (SqlParser.ASIN - 689)) | (1 << (SqlParser.ASTEXT - 689)) | (1 << (SqlParser.ASWKB - 689)) | (1 << (SqlParser.ASWKT - 689)) | (1 << (SqlParser.ASYMMETRIC_DECRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_DERIVE - 689)) | (1 << (SqlParser.ASYMMETRIC_ENCRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_SIGN - 689)) | (1 << (SqlParser.ASYMMETRIC_VERIFY - 689)) | (1 << (SqlParser.ATAN - 689)) | (1 << (SqlParser.ATAN2 - 689)))) !== 0) || ((((_la - 721)) & ~0x1f) == 0 && ((1 << (_la - 721)) & ((1 << (SqlParser.BENCHMARK - 721)) | (1 << (SqlParser.BIN - 721)) | (1 << (SqlParser.BIT_COUNT - 721)) | (1 << (SqlParser.BIT_LENGTH - 721)) | (1 << (SqlParser.BUFFER - 721)) | (1 << (SqlParser.CATALOG_NAME - 721)) | (1 << (SqlParser.CEIL - 721)) | (1 << (SqlParser.CEILING - 721)) | (1 << (SqlParser.CENTROID - 721)) | (1 << (SqlParser.CHARACTER_LENGTH - 721)) | (1 << (SqlParser.CHARSET - 721)) | (1 << (SqlParser.CHAR_LENGTH - 721)) | (1 << (SqlParser.COERCIBILITY - 721)) | (1 << (SqlParser.COLLATION - 721)) | (1 << (SqlParser.COMPRESS - 721)) | (1 << (SqlParser.CONCAT - 721)) | (1 << (SqlParser.CONCAT_WS - 721)) | (1 << (SqlParser.CONNECTION_ID - 721)) | (1 << (SqlParser.CONV - 721)) | (1 << (SqlParser.CONVERT_TZ - 721)) | (1 << (SqlParser.COS - 721)) | (1 << (SqlParser.COT - 721)) | (1 << (SqlParser.CRC32 - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PRIV_KEY - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PUB_KEY - 721)) | (1 << (SqlParser.CREATE_DH_PARAMETERS - 721)) | (1 << (SqlParser.CREATE_DIGEST - 721)) | (1 << (SqlParser.CROSSES - 721)) | (1 << (SqlParser.DATEDIFF - 721)) | (1 << (SqlParser.DATE_FORMAT - 721)) | (1 << (SqlParser.DAYNAME - 721)) | (1 << (SqlParser.DAYOFMONTH - 721)))) !== 0) || ((((_la - 753)) & ~0x1f) == 0 && ((1 << (_la - 753)) & ((1 << (SqlParser.DAYOFWEEK - 753)) | (1 << (SqlParser.DAYOFYEAR - 753)) | (1 << (SqlParser.DECODE - 753)) | (1 << (SqlParser.DEGREES - 753)) | (1 << (SqlParser.DES_DECRYPT - 753)) | (1 << (SqlParser.DES_ENCRYPT - 753)) | (1 << (SqlParser.DIMENSION - 753)) | (1 << (SqlParser.DISJOINT - 753)) | (1 << (SqlParser.ELT - 753)) | (1 << (SqlParser.ENCODE - 753)) | (1 << (SqlParser.ENCRYPT - 753)) | (1 << (SqlParser.ENDPOINT - 753)) | (1 << (SqlParser.ENVELOPE - 753)) | (1 << (SqlParser.EQUALS - 753)) | (1 << (SqlParser.EXP - 753)) | (1 << (SqlParser.EXPORT_SET - 753)) | (1 << (SqlParser.EXTERIORRING - 753)) | (1 << (SqlParser.EXTRACTVALUE - 753)) | (1 << (SqlParser.FIELD - 753)) | (1 << (SqlParser.FIND_IN_SET - 753)) | (1 << (SqlParser.FLOOR - 753)) | (1 << (SqlParser.FORMAT - 753)) | (1 << (SqlParser.FOUND_ROWS - 753)) | (1 << (SqlParser.FROM_BASE64 - 753)) | (1 << (SqlParser.FROM_DAYS - 753)) | (1 << (SqlParser.FROM_UNIXTIME - 753)) | (1 << (SqlParser.GEOMCOLLFROMTEXT - 753)) | (1 << (SqlParser.GEOMCOLLFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYFROMWKB - 753)))) !== 0) || ((((_la - 785)) & ~0x1f) == 0 && ((1 << (_la - 785)) & ((1 << (SqlParser.GEOMETRYN - 785)) | (1 << (SqlParser.GEOMETRYTYPE - 785)) | (1 << (SqlParser.GEOMFROMTEXT - 785)) | (1 << (SqlParser.GEOMFROMWKB - 785)) | (1 << (SqlParser.GET_FORMAT - 785)) | (1 << (SqlParser.GET_LOCK - 785)) | (1 << (SqlParser.GLENGTH - 785)) | (1 << (SqlParser.GREATEST - 785)) | (1 << (SqlParser.GTID_SUBSET - 785)) | (1 << (SqlParser.GTID_SUBTRACT - 785)) | (1 << (SqlParser.HEX - 785)) | (1 << (SqlParser.IFNULL - 785)) | (1 << (SqlParser.INET6_ATON - 785)) | (1 << (SqlParser.INET6_NTOA - 785)) | (1 << (SqlParser.INET_ATON - 785)) | (1 << (SqlParser.INET_NTOA - 785)) | (1 << (SqlParser.INSTR - 785)) | (1 << (SqlParser.INTERIORRINGN - 785)) | (1 << (SqlParser.INTERSECTS - 785)) | (1 << (SqlParser.ISCLOSED - 785)) | (1 << (SqlParser.ISEMPTY - 785)) | (1 << (SqlParser.ISNULL - 785)) | (1 << (SqlParser.ISSIMPLE - 785)) | (1 << (SqlParser.IS_FREE_LOCK - 785)) | (1 << (SqlParser.IS_IPV4 - 785)) | (1 << (SqlParser.IS_IPV4_COMPAT - 785)) | (1 << (SqlParser.IS_IPV4_MAPPED - 785)) | (1 << (SqlParser.IS_IPV6 - 785)) | (1 << (SqlParser.IS_USED_LOCK - 785)) | (1 << (SqlParser.LAST_INSERT_ID - 785)) | (1 << (SqlParser.LCASE - 785)) | (1 << (SqlParser.LEAST - 785)))) !== 0) || ((((_la - 817)) & ~0x1f) == 0 && ((1 << (_la - 817)) & ((1 << (SqlParser.LENGTH - 817)) | (1 << (SqlParser.LINEFROMTEXT - 817)) | (1 << (SqlParser.LINEFROMWKB - 817)) | (1 << (SqlParser.LINESTRINGFROMTEXT - 817)) | (1 << (SqlParser.LINESTRINGFROMWKB - 817)) | (1 << (SqlParser.LN - 817)) | (1 << (SqlParser.LOAD_FILE - 817)) | (1 << (SqlParser.LOCATE - 817)) | (1 << (SqlParser.LOG - 817)) | (1 << (SqlParser.LOG10 - 817)) | (1 << (SqlParser.LOG2 - 817)) | (1 << (SqlParser.LOWER - 817)) | (1 << (SqlParser.LPAD - 817)) | (1 << (SqlParser.LTRIM - 817)) | (1 << (SqlParser.MAKEDATE - 817)) | (1 << (SqlParser.MAKETIME - 817)) | (1 << (SqlParser.MAKE_SET - 817)) | (1 << (SqlParser.MASTER_POS_WAIT - 817)) | (1 << (SqlParser.MBRCONTAINS - 817)) | (1 << (SqlParser.MBRDISJOINT - 817)) | (1 << (SqlParser.MBREQUAL - 817)) | (1 << (SqlParser.MBRINTERSECTS - 817)) | (1 << (SqlParser.MBROVERLAPS - 817)) | (1 << (SqlParser.MBRTOUCHES - 817)) | (1 << (SqlParser.MBRWITHIN - 817)) | (1 << (SqlParser.MD5 - 817)) | (1 << (SqlParser.MLINEFROMTEXT - 817)) | (1 << (SqlParser.MLINEFROMWKB - 817)) | (1 << (SqlParser.MONTHNAME - 817)) | (1 << (SqlParser.MPOINTFROMTEXT - 817)) | (1 << (SqlParser.MPOINTFROMWKB - 817)) | (1 << (SqlParser.MPOLYFROMTEXT - 817)))) !== 0) || ((((_la - 849)) & ~0x1f) == 0 && ((1 << (_la - 849)) & ((1 << (SqlParser.MPOLYFROMWKB - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMTEXT - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMWKB - 849)) | (1 << (SqlParser.MULTIPOINTFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOINTFROMWKB - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMWKB - 849)) | (1 << (SqlParser.NAME_CONST - 849)) | (1 << (SqlParser.NULLIF - 849)) | (1 << (SqlParser.NUMGEOMETRIES - 849)) | (1 << (SqlParser.NUMINTERIORRINGS - 849)) | (1 << (SqlParser.NUMPOINTS - 849)) | (1 << (SqlParser.OCT - 849)) | (1 << (SqlParser.OCTET_LENGTH - 849)) | (1 << (SqlParser.ORD - 849)) | (1 << (SqlParser.OVERLAPS - 849)) | (1 << (SqlParser.PERIOD_ADD - 849)) | (1 << (SqlParser.PERIOD_DIFF - 849)) | (1 << (SqlParser.PI - 849)) | (1 << (SqlParser.POINTFROMTEXT - 849)) | (1 << (SqlParser.POINTFROMWKB - 849)) | (1 << (SqlParser.POINTN - 849)) | (1 << (SqlParser.POLYFROMTEXT - 849)) | (1 << (SqlParser.POLYFROMWKB - 849)) | (1 << (SqlParser.POLYGONFROMTEXT - 849)) | (1 << (SqlParser.POLYGONFROMWKB - 849)) | (1 << (SqlParser.POW - 849)) | (1 << (SqlParser.POWER - 849)) | (1 << (SqlParser.QUOTE - 849)) | (1 << (SqlParser.RADIANS - 849)) | (1 << (SqlParser.RAND - 849)) | (1 << (SqlParser.RANDOM_BYTES - 849)))) !== 0) || ((((_la - 881)) & ~0x1f) == 0 && ((1 << (_la - 881)) & ((1 << (SqlParser.RELEASE_LOCK - 881)) | (1 << (SqlParser.REVERSE - 881)) | (1 << (SqlParser.ROUND - 881)) | (1 << (SqlParser.ROW_COUNT - 881)) | (1 << (SqlParser.RPAD - 881)) | (1 << (SqlParser.RTRIM - 881)) | (1 << (SqlParser.SEC_TO_TIME - 881)) | (1 << (SqlParser.SESSION_USER - 881)) | (1 << (SqlParser.SHA - 881)) | (1 << (SqlParser.SHA1 - 881)) | (1 << (SqlParser.SHA2 - 881)) | (1 << (SqlParser.SCHEMA_NAME - 881)) | (1 << (SqlParser.SIGN - 881)) | (1 << (SqlParser.SIN - 881)) | (1 << (SqlParser.SLEEP - 881)) | (1 << (SqlParser.SOUNDEX - 881)) | (1 << (SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS - 881)) | (1 << (SqlParser.SQRT - 881)) | (1 << (SqlParser.SRID - 881)) | (1 << (SqlParser.STARTPOINT - 881)) | (1 << (SqlParser.STRCMP - 881)) | (1 << (SqlParser.STR_TO_DATE - 881)) | (1 << (SqlParser.ST_AREA - 881)) | (1 << (SqlParser.ST_ASBINARY - 881)) | (1 << (SqlParser.ST_ASTEXT - 881)) | (1 << (SqlParser.ST_ASWKB - 881)) | (1 << (SqlParser.ST_ASWKT - 881)) | (1 << (SqlParser.ST_BUFFER - 881)) | (1 << (SqlParser.ST_CENTROID - 881)) | (1 << (SqlParser.ST_CONTAINS - 881)) | (1 << (SqlParser.ST_CROSSES - 881)) | (1 << (SqlParser.ST_DIFFERENCE - 881)))) !== 0) || ((((_la - 913)) & ~0x1f) == 0 && ((1 << (_la - 913)) & ((1 << (SqlParser.ST_DIMENSION - 913)) | (1 << (SqlParser.ST_DISJOINT - 913)) | (1 << (SqlParser.ST_DISTANCE - 913)) | (1 << (SqlParser.ST_ENDPOINT - 913)) | (1 << (SqlParser.ST_ENVELOPE - 913)) | (1 << (SqlParser.ST_EQUALS - 913)) | (1 << (SqlParser.ST_EXTERIORRING - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYN - 913)) | (1 << (SqlParser.ST_GEOMETRYTYPE - 913)) | (1 << (SqlParser.ST_GEOMFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMFROMWKB - 913)) | (1 << (SqlParser.ST_INTERIORRINGN - 913)) | (1 << (SqlParser.ST_INTERSECTION - 913)) | (1 << (SqlParser.ST_INTERSECTS - 913)) | (1 << (SqlParser.ST_ISCLOSED - 913)) | (1 << (SqlParser.ST_ISEMPTY - 913)) | (1 << (SqlParser.ST_ISSIMPLE - 913)) | (1 << (SqlParser.ST_LINEFROMTEXT - 913)) | (1 << (SqlParser.ST_LINEFROMWKB - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMTEXT - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMWKB - 913)) | (1 << (SqlParser.ST_NUMGEOMETRIES - 913)) | (1 << (SqlParser.ST_NUMINTERIORRING - 913)) | (1 << (SqlParser.ST_NUMINTERIORRINGS - 913)) | (1 << (SqlParser.ST_NUMPOINTS - 913)))) !== 0) || ((((_la - 945)) & ~0x1f) == 0 && ((1 << (_la - 945)) & ((1 << (SqlParser.ST_OVERLAPS - 945)) | (1 << (SqlParser.ST_POINTFROMTEXT - 945)) | (1 << (SqlParser.ST_POINTFROMWKB - 945)) | (1 << (SqlParser.ST_POINTN - 945)) | (1 << (SqlParser.ST_POLYFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYFROMWKB - 945)) | (1 << (SqlParser.ST_POLYGONFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYGONFROMWKB - 945)) | (1 << (SqlParser.ST_SRID - 945)) | (1 << (SqlParser.ST_STARTPOINT - 945)) | (1 << (SqlParser.ST_SYMDIFFERENCE - 945)) | (1 << (SqlParser.ST_TOUCHES - 945)) | (1 << (SqlParser.ST_UNION - 945)) | (1 << (SqlParser.ST_WITHIN - 945)) | (1 << (SqlParser.ST_X - 945)) | (1 << (SqlParser.ST_Y - 945)) | (1 << (SqlParser.SUBDATE - 945)) | (1 << (SqlParser.SUBSTRING_INDEX - 945)) | (1 << (SqlParser.SUBTIME - 945)) | (1 << (SqlParser.SYSTEM_USER - 945)) | (1 << (SqlParser.TAN - 945)) | (1 << (SqlParser.TIMEDIFF - 945)) | (1 << (SqlParser.TIMESTAMPADD - 945)) | (1 << (SqlParser.TIMESTAMPDIFF - 945)) | (1 << (SqlParser.TIME_FORMAT - 945)) | (1 << (SqlParser.TIME_TO_SEC - 945)) | (1 << (SqlParser.TOUCHES - 945)) | (1 << (SqlParser.TO_BASE64 - 945)) | (1 << (SqlParser.TO_DAYS - 945)) | (1 << (SqlParser.TO_SECONDS - 945)) | (1 << (SqlParser.UCASE - 945)) | (1 << (SqlParser.UNCOMPRESS - 945)))) !== 0) || ((((_la - 977)) & ~0x1f) == 0 && ((1 << (_la - 977)) & ((1 << (SqlParser.UNCOMPRESSED_LENGTH - 977)) | (1 << (SqlParser.UNHEX - 977)) | (1 << (SqlParser.UNIX_TIMESTAMP - 977)) | (1 << (SqlParser.UPDATEXML - 977)) | (1 << (SqlParser.UPPER - 977)) | (1 << (SqlParser.UUID - 977)) | (1 << (SqlParser.UUID_SHORT - 977)) | (1 << (SqlParser.VALIDATE_PASSWORD_STRENGTH - 977)) | (1 << (SqlParser.VERSION - 977)) | (1 << (SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS - 977)) | (1 << (SqlParser.WEEKDAY - 977)) | (1 << (SqlParser.WEEKOFYEAR - 977)) | (1 << (SqlParser.WEIGHT_STRING - 977)) | (1 << (SqlParser.WITHIN - 977)) | (1 << (SqlParser.YEARWEEK - 977)) | (1 << (SqlParser.Y_FUNCTION - 977)) | (1 << (SqlParser.X_FUNCTION - 977)))) !== 0) || ((((_la - 1032)) & ~0x1f) == 0 && ((1 << (_la - 1032)) & ((1 << (SqlParser.CHARSET_REVERSE_QOUTE_STRING - 1032)) | (1 << (SqlParser.STRING_LITERAL - 1032)) | (1 << (SqlParser.ID - 1032)) | (1 << (SqlParser.REVERSE_QUOTE_ID - 1032)))) !== 0)) {
+ this.state = 969;
+ this.functionParameter();
+ }
+
+ this.state = 976;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 972;
+ this.match(SqlParser.COMMA);
+ this.state = 973;
+ this.functionParameter();
+ this.state = 978;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 979;
+ this.match(SqlParser.RR_BRACKET);
+ this.state = 980;
+ this.match(SqlParser.RETURNS);
+ this.state = 981;
+ this.dataType();
+ this.state = 985;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,53,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 982;
+ this.routineOption();
+ }
+ this.state = 987;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,53,this._ctx);
+ }
+
+ this.state = 990;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.ALTER:
+ case SqlParser.ANALYZE:
+ case SqlParser.CALL:
+ case SqlParser.CHANGE:
+ case SqlParser.CHECK:
+ case SqlParser.CREATE:
+ case SqlParser.CURRENT:
+ case SqlParser.DATABASE:
+ case SqlParser.DELETE:
+ case SqlParser.DESC:
+ case SqlParser.DESCRIBE:
+ case SqlParser.DIAGNOSTICS:
+ case SqlParser.DROP:
+ case SqlParser.EXPLAIN:
+ case SqlParser.GET:
+ case SqlParser.GRANT:
+ case SqlParser.INSERT:
+ case SqlParser.KILL:
+ case SqlParser.LEFT:
+ case SqlParser.LOAD:
+ case SqlParser.LOCK:
+ case SqlParser.NUMBER:
+ case SqlParser.OPTIMIZE:
+ case SqlParser.PURGE:
+ case SqlParser.RELEASE:
+ case SqlParser.RENAME:
+ case SqlParser.REPLACE:
+ case SqlParser.RESIGNAL:
+ case SqlParser.REVOKE:
+ case SqlParser.RIGHT:
+ case SqlParser.SELECT:
+ case SqlParser.SET:
+ case SqlParser.SHOW:
+ case SqlParser.SIGNAL:
+ case SqlParser.STACKED:
+ case SqlParser.UNLOCK:
+ case SqlParser.UPDATE:
+ case SqlParser.USE:
+ case SqlParser.DATE:
+ case SqlParser.TIME:
+ case SqlParser.TIMESTAMP:
+ case SqlParser.DATETIME:
+ case SqlParser.YEAR:
+ case SqlParser.TEXT:
+ case SqlParser.ENUM:
+ case SqlParser.SERIAL:
+ case SqlParser.JSON_VALID:
+ case SqlParser.JSON_SCHEMA_VALID:
+ case SqlParser.COUNT:
+ case SqlParser.POSITION:
+ case SqlParser.ACCOUNT:
+ case SqlParser.ACTION:
+ case SqlParser.AFTER:
+ case SqlParser.AGGREGATE:
+ case SqlParser.ALGORITHM:
+ case SqlParser.ANY:
+ case SqlParser.AT:
+ case SqlParser.AUTHORS:
+ case SqlParser.AUTOCOMMIT:
+ case SqlParser.AUTOEXTEND_SIZE:
+ case SqlParser.AUTO_INCREMENT:
+ case SqlParser.AVG_ROW_LENGTH:
+ case SqlParser.BEGIN:
+ case SqlParser.BINLOG:
+ case SqlParser.BIT:
+ case SqlParser.BLOCK:
+ case SqlParser.BOOL:
+ case SqlParser.BOOLEAN:
+ case SqlParser.BTREE:
+ case SqlParser.CACHE:
+ case SqlParser.CASCADED:
+ case SqlParser.CHAIN:
+ case SqlParser.CHANGED:
+ case SqlParser.CHANNEL:
+ case SqlParser.CHECKSUM:
+ case SqlParser.PAGE_CHECKSUM:
+ case SqlParser.CIPHER:
+ case SqlParser.CLASS_ORIGIN:
+ case SqlParser.CLIENT:
+ case SqlParser.CLOSE:
+ case SqlParser.COALESCE:
+ case SqlParser.CODE:
+ case SqlParser.COLUMNS:
+ case SqlParser.COLUMN_FORMAT:
+ case SqlParser.COLUMN_NAME:
+ case SqlParser.COMMENT:
+ case SqlParser.COMMIT:
+ case SqlParser.COMPACT:
+ case SqlParser.COMPLETION:
+ case SqlParser.COMPRESSED:
+ case SqlParser.COMPRESSION:
+ case SqlParser.CONCURRENT:
+ case SqlParser.CONNECTION:
+ case SqlParser.CONSISTENT:
+ case SqlParser.CONSTRAINT_CATALOG:
+ case SqlParser.CONSTRAINT_SCHEMA:
+ case SqlParser.CONSTRAINT_NAME:
+ case SqlParser.CONTAINS:
+ case SqlParser.CONTEXT:
+ case SqlParser.CONTRIBUTORS:
+ case SqlParser.COPY:
+ case SqlParser.CPU:
+ case SqlParser.CURSOR_NAME:
+ case SqlParser.DATA:
+ case SqlParser.DATAFILE:
+ case SqlParser.DEALLOCATE:
+ case SqlParser.DEFAULT_AUTH:
+ case SqlParser.DEFINER:
+ case SqlParser.DELAY_KEY_WRITE:
+ case SqlParser.DES_KEY_FILE:
+ case SqlParser.DIRECTORY:
+ case SqlParser.DISABLE:
+ case SqlParser.DISCARD:
+ case SqlParser.DISK:
+ case SqlParser.DO:
+ case SqlParser.DUMPFILE:
+ case SqlParser.DUPLICATE:
+ case SqlParser.DYNAMIC:
+ case SqlParser.ENABLE:
+ case SqlParser.ENCRYPTION:
+ case SqlParser.END:
+ case SqlParser.ENDS:
+ case SqlParser.ENGINE:
+ case SqlParser.ENGINES:
+ case SqlParser.ERROR:
+ case SqlParser.ERRORS:
+ case SqlParser.ESCAPE:
+ case SqlParser.EVEN:
+ case SqlParser.EVENT:
+ case SqlParser.EVENTS:
+ case SqlParser.EVERY:
+ case SqlParser.EXCHANGE:
+ case SqlParser.EXCLUSIVE:
+ case SqlParser.EXPIRE:
+ case SqlParser.EXPORT:
+ case SqlParser.EXTENDED:
+ case SqlParser.EXTENT_SIZE:
+ case SqlParser.FAST:
+ case SqlParser.FAULTS:
+ case SqlParser.FIELDS:
+ case SqlParser.FILE_BLOCK_SIZE:
+ case SqlParser.FILTER:
+ case SqlParser.FIRST:
+ case SqlParser.FIXED:
+ case SqlParser.FLUSH:
+ case SqlParser.FOLLOWS:
+ case SqlParser.FOUND:
+ case SqlParser.FULL:
+ case SqlParser.FUNCTION:
+ case SqlParser.GENERAL:
+ case SqlParser.GLOBAL:
+ case SqlParser.GRANTS:
+ case SqlParser.GROUP_REPLICATION:
+ case SqlParser.HANDLER:
+ case SqlParser.HASH:
+ case SqlParser.HELP:
+ case SqlParser.HOST:
+ case SqlParser.HOSTS:
+ case SqlParser.IDENTIFIED:
+ case SqlParser.IGNORE_SERVER_IDS:
+ case SqlParser.IMPORT:
+ case SqlParser.INDEXES:
+ case SqlParser.INITIAL_SIZE:
+ case SqlParser.INPLACE:
+ case SqlParser.INSERT_METHOD:
+ case SqlParser.INSTALL:
+ case SqlParser.INSTANCE:
+ case SqlParser.INVISIBLE:
+ case SqlParser.INVOKER:
+ case SqlParser.IO:
+ case SqlParser.IO_THREAD:
+ case SqlParser.IPC:
+ case SqlParser.ISOLATION:
+ case SqlParser.ISSUER:
+ case SqlParser.JSON:
+ case SqlParser.KEY_BLOCK_SIZE:
+ case SqlParser.LANGUAGE:
+ case SqlParser.LAST:
+ case SqlParser.LEAVES:
+ case SqlParser.LESS:
+ case SqlParser.LEVEL:
+ case SqlParser.LIST:
+ case SqlParser.LOCAL:
+ case SqlParser.LOGFILE:
+ case SqlParser.LOGS:
+ case SqlParser.MASTER:
+ case SqlParser.MASTER_AUTO_POSITION:
+ case SqlParser.MASTER_CONNECT_RETRY:
+ case SqlParser.MASTER_DELAY:
+ case SqlParser.MASTER_HEARTBEAT_PERIOD:
+ case SqlParser.MASTER_HOST:
+ case SqlParser.MASTER_LOG_FILE:
+ case SqlParser.MASTER_LOG_POS:
+ case SqlParser.MASTER_PASSWORD:
+ case SqlParser.MASTER_PORT:
+ case SqlParser.MASTER_RETRY_COUNT:
+ case SqlParser.MASTER_SSL:
+ case SqlParser.MASTER_SSL_CA:
+ case SqlParser.MASTER_SSL_CAPATH:
+ case SqlParser.MASTER_SSL_CERT:
+ case SqlParser.MASTER_SSL_CIPHER:
+ case SqlParser.MASTER_SSL_CRL:
+ case SqlParser.MASTER_SSL_CRLPATH:
+ case SqlParser.MASTER_SSL_KEY:
+ case SqlParser.MASTER_TLS_VERSION:
+ case SqlParser.MASTER_USER:
+ case SqlParser.MAX_CONNECTIONS_PER_HOUR:
+ case SqlParser.MAX_QUERIES_PER_HOUR:
+ case SqlParser.MAX_ROWS:
+ case SqlParser.MAX_SIZE:
+ case SqlParser.MAX_UPDATES_PER_HOUR:
+ case SqlParser.MAX_USER_CONNECTIONS:
+ case SqlParser.MEDIUM:
+ case SqlParser.MERGE:
+ case SqlParser.MESSAGE_TEXT:
+ case SqlParser.MID:
+ case SqlParser.MIGRATE:
+ case SqlParser.MIN_ROWS:
+ case SqlParser.MODE:
+ case SqlParser.MODIFY:
+ case SqlParser.MUTEX:
+ case SqlParser.MYSQL:
+ case SqlParser.MYSQL_ERRNO:
+ case SqlParser.NAME:
+ case SqlParser.NAMES:
+ case SqlParser.NCHAR:
+ case SqlParser.NEVER:
+ case SqlParser.NEXT:
+ case SqlParser.NO:
+ case SqlParser.NODEGROUP:
+ case SqlParser.NONE:
+ case SqlParser.OFFLINE:
+ case SqlParser.OFFSET:
+ case SqlParser.OJ:
+ case SqlParser.OLD_PASSWORD:
+ case SqlParser.ONE:
+ case SqlParser.ONLINE:
+ case SqlParser.ONLY:
+ case SqlParser.OPEN:
+ case SqlParser.OPTIMIZER_COSTS:
+ case SqlParser.OPTIONS:
+ case SqlParser.OWNER:
+ case SqlParser.PACK_KEYS:
+ case SqlParser.PAGE:
+ case SqlParser.PARSER:
+ case SqlParser.PARTIAL:
+ case SqlParser.PARTITIONING:
+ case SqlParser.PARTITIONS:
+ case SqlParser.PASSWORD:
+ case SqlParser.PHASE:
+ case SqlParser.PLUGIN:
+ case SqlParser.PLUGIN_DIR:
+ case SqlParser.PLUGINS:
+ case SqlParser.PORT:
+ case SqlParser.PRECEDES:
+ case SqlParser.PREPARE:
+ case SqlParser.PRESERVE:
+ case SqlParser.PREV:
+ case SqlParser.PROCESSLIST:
+ case SqlParser.PROFILE:
+ case SqlParser.PROFILES:
+ case SqlParser.PROXY:
+ case SqlParser.QUERY:
+ case SqlParser.QUICK:
+ case SqlParser.REBUILD:
+ case SqlParser.RECOVER:
+ case SqlParser.REDO_BUFFER_SIZE:
+ case SqlParser.REDUNDANT:
+ case SqlParser.RELAY:
+ case SqlParser.RELAY_LOG_FILE:
+ case SqlParser.RELAY_LOG_POS:
+ case SqlParser.RELAYLOG:
+ case SqlParser.REMOVE:
+ case SqlParser.REORGANIZE:
+ case SqlParser.REPAIR:
+ case SqlParser.REPLICATE_DO_DB:
+ case SqlParser.REPLICATE_DO_TABLE:
+ case SqlParser.REPLICATE_IGNORE_DB:
+ case SqlParser.REPLICATE_IGNORE_TABLE:
+ case SqlParser.REPLICATE_REWRITE_DB:
+ case SqlParser.REPLICATE_WILD_DO_TABLE:
+ case SqlParser.REPLICATE_WILD_IGNORE_TABLE:
+ case SqlParser.REPLICATION:
+ case SqlParser.RESET:
+ case SqlParser.RESUME:
+ case SqlParser.RETURNED_SQLSTATE:
+ case SqlParser.RETURNS:
+ case SqlParser.ROLE:
+ case SqlParser.ROLLBACK:
+ case SqlParser.ROLLUP:
+ case SqlParser.ROTATE:
+ case SqlParser.ROW:
+ case SqlParser.ROWS:
+ case SqlParser.ROW_FORMAT:
+ case SqlParser.SAVEPOINT:
+ case SqlParser.SCHEDULE:
+ case SqlParser.SECURITY:
+ case SqlParser.SERVER:
+ case SqlParser.SESSION:
+ case SqlParser.SHARE:
+ case SqlParser.SHARED:
+ case SqlParser.SIGNED:
+ case SqlParser.SIMPLE:
+ case SqlParser.SLAVE:
+ case SqlParser.SLOW:
+ case SqlParser.SNAPSHOT:
+ case SqlParser.SOCKET:
+ case SqlParser.SOME:
+ case SqlParser.SONAME:
+ case SqlParser.SOUNDS:
+ case SqlParser.SOURCE:
+ case SqlParser.SQL_AFTER_GTIDS:
+ case SqlParser.SQL_AFTER_MTS_GAPS:
+ case SqlParser.SQL_BEFORE_GTIDS:
+ case SqlParser.SQL_BUFFER_RESULT:
+ case SqlParser.SQL_CACHE:
+ case SqlParser.SQL_NO_CACHE:
+ case SqlParser.SQL_THREAD:
+ case SqlParser.START:
+ case SqlParser.STARTS:
+ case SqlParser.STATS_AUTO_RECALC:
+ case SqlParser.STATS_PERSISTENT:
+ case SqlParser.STATS_SAMPLE_PAGES:
+ case SqlParser.STATUS:
+ case SqlParser.STOP:
+ case SqlParser.STORAGE:
+ case SqlParser.STRING:
+ case SqlParser.SUBCLASS_ORIGIN:
+ case SqlParser.SUBJECT:
+ case SqlParser.SUBPARTITION:
+ case SqlParser.SUBPARTITIONS:
+ case SqlParser.SUSPEND:
+ case SqlParser.SWAPS:
+ case SqlParser.SWITCHES:
+ case SqlParser.TABLE_NAME:
+ case SqlParser.TABLESPACE:
+ case SqlParser.TEMPORARY:
+ case SqlParser.TEMPTABLE:
+ case SqlParser.THAN:
+ case SqlParser.TRADITIONAL:
+ case SqlParser.TRANSACTION:
+ case SqlParser.TRANSACTIONAL:
+ case SqlParser.TRIGGERS:
+ case SqlParser.TRUNCATE:
+ case SqlParser.UNDEFINED:
+ case SqlParser.UNDOFILE:
+ case SqlParser.UNDO_BUFFER_SIZE:
+ case SqlParser.UNINSTALL:
+ case SqlParser.UNKNOWN:
+ case SqlParser.UNTIL:
+ case SqlParser.UPGRADE:
+ case SqlParser.USER:
+ case SqlParser.USE_FRM:
+ case SqlParser.USER_RESOURCES:
+ case SqlParser.VALIDATION:
+ case SqlParser.VALUE:
+ case SqlParser.VARIABLES:
+ case SqlParser.VIEW:
+ case SqlParser.VISIBLE:
+ case SqlParser.WAIT:
+ case SqlParser.WARNINGS:
+ case SqlParser.WITHOUT:
+ case SqlParser.WORK:
+ case SqlParser.WRAPPER:
+ case SqlParser.X509:
+ case SqlParser.XA:
+ case SqlParser.XML:
+ case SqlParser.INTERNAL:
+ case SqlParser.QUARTER:
+ case SqlParser.MONTH:
+ case SqlParser.DAY:
+ case SqlParser.HOUR:
+ case SqlParser.MINUTE:
+ case SqlParser.WEEK:
+ case SqlParser.SECOND:
+ case SqlParser.MICROSECOND:
+ case SqlParser.TABLES:
+ case SqlParser.ROUTINE:
+ case SqlParser.EXECUTE:
+ case SqlParser.FILE:
+ case SqlParser.PROCESS:
+ case SqlParser.RELOAD:
+ case SqlParser.SHUTDOWN:
+ case SqlParser.SUPER:
+ case SqlParser.PRIVILEGES:
+ case SqlParser.AUDIT_ADMIN:
+ case SqlParser.BACKUP_ADMIN:
+ case SqlParser.BINLOG_ADMIN:
+ case SqlParser.BINLOG_ENCRYPTION_ADMIN:
+ case SqlParser.CLONE_ADMIN:
+ case SqlParser.CONNECTION_ADMIN:
+ case SqlParser.ENCRYPTION_KEY_ADMIN:
+ case SqlParser.FIREWALL_ADMIN:
+ case SqlParser.FIREWALL_USER:
+ case SqlParser.GROUP_REPLICATION_ADMIN:
+ case SqlParser.INNODB_REDO_LOG_ARCHIVE:
+ case SqlParser.NDB_STORED_USER:
+ case SqlParser.PERSIST_RO_VARIABLES_ADMIN:
+ case SqlParser.REPLICATION_APPLIER:
+ case SqlParser.REPLICATION_SLAVE_ADMIN:
+ case SqlParser.RESOURCE_GROUP_ADMIN:
+ case SqlParser.RESOURCE_GROUP_USER:
+ case SqlParser.ROLE_ADMIN:
+ case SqlParser.SESSION_VARIABLES_ADMIN:
+ case SqlParser.SET_USER_ID:
+ case SqlParser.SHOW_ROUTINE:
+ case SqlParser.SYSTEM_VARIABLES_ADMIN:
+ case SqlParser.TABLE_ENCRYPTION_ADMIN:
+ case SqlParser.VERSION_TOKEN_ADMIN:
+ case SqlParser.XA_RECOVER_ADMIN:
+ case SqlParser.ARMSCII8:
+ case SqlParser.ASCII:
+ case SqlParser.BIG5:
+ case SqlParser.CP1250:
+ case SqlParser.CP1251:
+ case SqlParser.CP1256:
+ case SqlParser.CP1257:
+ case SqlParser.CP850:
+ case SqlParser.CP852:
+ case SqlParser.CP866:
+ case SqlParser.CP932:
+ case SqlParser.DEC8:
+ case SqlParser.EUCJPMS:
+ case SqlParser.EUCKR:
+ case SqlParser.GB2312:
+ case SqlParser.GBK:
+ case SqlParser.GEOSTD8:
+ case SqlParser.GREEK:
+ case SqlParser.HEBREW:
+ case SqlParser.HP8:
+ case SqlParser.KEYBCS2:
+ case SqlParser.KOI8R:
+ case SqlParser.KOI8U:
+ case SqlParser.LATIN1:
+ case SqlParser.LATIN2:
+ case SqlParser.LATIN5:
+ case SqlParser.LATIN7:
+ case SqlParser.MACCE:
+ case SqlParser.MACROMAN:
+ case SqlParser.SJIS:
+ case SqlParser.SWE7:
+ case SqlParser.TIS620:
+ case SqlParser.UCS2:
+ case SqlParser.UJIS:
+ case SqlParser.UTF16:
+ case SqlParser.UTF16LE:
+ case SqlParser.UTF32:
+ case SqlParser.UTF8:
+ case SqlParser.UTF8MB3:
+ case SqlParser.UTF8MB4:
+ case SqlParser.ARCHIVE:
+ case SqlParser.BLACKHOLE:
+ case SqlParser.CSV:
+ case SqlParser.FEDERATED:
+ case SqlParser.INNODB:
+ case SqlParser.MEMORY:
+ case SqlParser.MRG_MYISAM:
+ case SqlParser.MYISAM:
+ case SqlParser.NDB:
+ case SqlParser.NDBCLUSTER:
+ case SqlParser.PERFORMANCE_SCHEMA:
+ case SqlParser.TOKUDB:
+ case SqlParser.REPEATABLE:
+ case SqlParser.COMMITTED:
+ case SqlParser.UNCOMMITTED:
+ case SqlParser.SERIALIZABLE:
+ case SqlParser.GEOMETRYCOLLECTION:
+ case SqlParser.LINESTRING:
+ case SqlParser.MULTILINESTRING:
+ case SqlParser.MULTIPOINT:
+ case SqlParser.MULTIPOLYGON:
+ case SqlParser.POINT:
+ case SqlParser.POLYGON:
+ case SqlParser.ABS:
+ case SqlParser.ACOS:
+ case SqlParser.ADDDATE:
+ case SqlParser.ADDTIME:
+ case SqlParser.AES_DECRYPT:
+ case SqlParser.AES_ENCRYPT:
+ case SqlParser.AREA:
+ case SqlParser.ASBINARY:
+ case SqlParser.ASIN:
+ case SqlParser.ASTEXT:
+ case SqlParser.ASWKB:
+ case SqlParser.ASWKT:
+ case SqlParser.ASYMMETRIC_DECRYPT:
+ case SqlParser.ASYMMETRIC_DERIVE:
+ case SqlParser.ASYMMETRIC_ENCRYPT:
+ case SqlParser.ASYMMETRIC_SIGN:
+ case SqlParser.ASYMMETRIC_VERIFY:
+ case SqlParser.ATAN:
+ case SqlParser.ATAN2:
+ case SqlParser.BENCHMARK:
+ case SqlParser.BIN:
+ case SqlParser.BIT_COUNT:
+ case SqlParser.BIT_LENGTH:
+ case SqlParser.BUFFER:
+ case SqlParser.CATALOG_NAME:
+ case SqlParser.CEIL:
+ case SqlParser.CEILING:
+ case SqlParser.CENTROID:
+ case SqlParser.CHARACTER_LENGTH:
+ case SqlParser.CHARSET:
+ case SqlParser.CHAR_LENGTH:
+ case SqlParser.COERCIBILITY:
+ case SqlParser.COLLATION:
+ case SqlParser.COMPRESS:
+ case SqlParser.CONCAT:
+ case SqlParser.CONCAT_WS:
+ case SqlParser.CONNECTION_ID:
+ case SqlParser.CONV:
+ case SqlParser.CONVERT_TZ:
+ case SqlParser.COS:
+ case SqlParser.COT:
+ case SqlParser.CRC32:
+ case SqlParser.CREATE_ASYMMETRIC_PRIV_KEY:
+ case SqlParser.CREATE_ASYMMETRIC_PUB_KEY:
+ case SqlParser.CREATE_DH_PARAMETERS:
+ case SqlParser.CREATE_DIGEST:
+ case SqlParser.CROSSES:
+ case SqlParser.DATEDIFF:
+ case SqlParser.DATE_FORMAT:
+ case SqlParser.DAYNAME:
+ case SqlParser.DAYOFMONTH:
+ case SqlParser.DAYOFWEEK:
+ case SqlParser.DAYOFYEAR:
+ case SqlParser.DECODE:
+ case SqlParser.DEGREES:
+ case SqlParser.DES_DECRYPT:
+ case SqlParser.DES_ENCRYPT:
+ case SqlParser.DIMENSION:
+ case SqlParser.DISJOINT:
+ case SqlParser.ELT:
+ case SqlParser.ENCODE:
+ case SqlParser.ENCRYPT:
+ case SqlParser.ENDPOINT:
+ case SqlParser.ENVELOPE:
+ case SqlParser.EQUALS:
+ case SqlParser.EXP:
+ case SqlParser.EXPORT_SET:
+ case SqlParser.EXTERIORRING:
+ case SqlParser.EXTRACTVALUE:
+ case SqlParser.FIELD:
+ case SqlParser.FIND_IN_SET:
+ case SqlParser.FLOOR:
+ case SqlParser.FORMAT:
+ case SqlParser.FOUND_ROWS:
+ case SqlParser.FROM_BASE64:
+ case SqlParser.FROM_DAYS:
+ case SqlParser.FROM_UNIXTIME:
+ case SqlParser.GEOMCOLLFROMTEXT:
+ case SqlParser.GEOMCOLLFROMWKB:
+ case SqlParser.GEOMETRYCOLLECTIONFROMTEXT:
+ case SqlParser.GEOMETRYCOLLECTIONFROMWKB:
+ case SqlParser.GEOMETRYFROMTEXT:
+ case SqlParser.GEOMETRYFROMWKB:
+ case SqlParser.GEOMETRYN:
+ case SqlParser.GEOMETRYTYPE:
+ case SqlParser.GEOMFROMTEXT:
+ case SqlParser.GEOMFROMWKB:
+ case SqlParser.GET_FORMAT:
+ case SqlParser.GET_LOCK:
+ case SqlParser.GLENGTH:
+ case SqlParser.GREATEST:
+ case SqlParser.GTID_SUBSET:
+ case SqlParser.GTID_SUBTRACT:
+ case SqlParser.HEX:
+ case SqlParser.IFNULL:
+ case SqlParser.INET6_ATON:
+ case SqlParser.INET6_NTOA:
+ case SqlParser.INET_ATON:
+ case SqlParser.INET_NTOA:
+ case SqlParser.INSTR:
+ case SqlParser.INTERIORRINGN:
+ case SqlParser.INTERSECTS:
+ case SqlParser.ISCLOSED:
+ case SqlParser.ISEMPTY:
+ case SqlParser.ISNULL:
+ case SqlParser.ISSIMPLE:
+ case SqlParser.IS_FREE_LOCK:
+ case SqlParser.IS_IPV4:
+ case SqlParser.IS_IPV4_COMPAT:
+ case SqlParser.IS_IPV4_MAPPED:
+ case SqlParser.IS_IPV6:
+ case SqlParser.IS_USED_LOCK:
+ case SqlParser.LAST_INSERT_ID:
+ case SqlParser.LCASE:
+ case SqlParser.LEAST:
+ case SqlParser.LENGTH:
+ case SqlParser.LINEFROMTEXT:
+ case SqlParser.LINEFROMWKB:
+ case SqlParser.LINESTRINGFROMTEXT:
+ case SqlParser.LINESTRINGFROMWKB:
+ case SqlParser.LN:
+ case SqlParser.LOAD_FILE:
+ case SqlParser.LOCATE:
+ case SqlParser.LOG:
+ case SqlParser.LOG10:
+ case SqlParser.LOG2:
+ case SqlParser.LOWER:
+ case SqlParser.LPAD:
+ case SqlParser.LTRIM:
+ case SqlParser.MAKEDATE:
+ case SqlParser.MAKETIME:
+ case SqlParser.MAKE_SET:
+ case SqlParser.MASTER_POS_WAIT:
+ case SqlParser.MBRCONTAINS:
+ case SqlParser.MBRDISJOINT:
+ case SqlParser.MBREQUAL:
+ case SqlParser.MBRINTERSECTS:
+ case SqlParser.MBROVERLAPS:
+ case SqlParser.MBRTOUCHES:
+ case SqlParser.MBRWITHIN:
+ case SqlParser.MD5:
+ case SqlParser.MLINEFROMTEXT:
+ case SqlParser.MLINEFROMWKB:
+ case SqlParser.MONTHNAME:
+ case SqlParser.MPOINTFROMTEXT:
+ case SqlParser.MPOINTFROMWKB:
+ case SqlParser.MPOLYFROMTEXT:
+ case SqlParser.MPOLYFROMWKB:
+ case SqlParser.MULTILINESTRINGFROMTEXT:
+ case SqlParser.MULTILINESTRINGFROMWKB:
+ case SqlParser.MULTIPOINTFROMTEXT:
+ case SqlParser.MULTIPOINTFROMWKB:
+ case SqlParser.MULTIPOLYGONFROMTEXT:
+ case SqlParser.MULTIPOLYGONFROMWKB:
+ case SqlParser.NAME_CONST:
+ case SqlParser.NULLIF:
+ case SqlParser.NUMGEOMETRIES:
+ case SqlParser.NUMINTERIORRINGS:
+ case SqlParser.NUMPOINTS:
+ case SqlParser.OCT:
+ case SqlParser.OCTET_LENGTH:
+ case SqlParser.ORD:
+ case SqlParser.OVERLAPS:
+ case SqlParser.PERIOD_ADD:
+ case SqlParser.PERIOD_DIFF:
+ case SqlParser.PI:
+ case SqlParser.POINTFROMTEXT:
+ case SqlParser.POINTFROMWKB:
+ case SqlParser.POINTN:
+ case SqlParser.POLYFROMTEXT:
+ case SqlParser.POLYFROMWKB:
+ case SqlParser.POLYGONFROMTEXT:
+ case SqlParser.POLYGONFROMWKB:
+ case SqlParser.POW:
+ case SqlParser.POWER:
+ case SqlParser.QUOTE:
+ case SqlParser.RADIANS:
+ case SqlParser.RAND:
+ case SqlParser.RANDOM_BYTES:
+ case SqlParser.RELEASE_LOCK:
+ case SqlParser.REVERSE:
+ case SqlParser.ROUND:
+ case SqlParser.ROW_COUNT:
+ case SqlParser.RPAD:
+ case SqlParser.RTRIM:
+ case SqlParser.SEC_TO_TIME:
+ case SqlParser.SESSION_USER:
+ case SqlParser.SHA:
+ case SqlParser.SHA1:
+ case SqlParser.SHA2:
+ case SqlParser.SCHEMA_NAME:
+ case SqlParser.SIGN:
+ case SqlParser.SIN:
+ case SqlParser.SLEEP:
+ case SqlParser.SOUNDEX:
+ case SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS:
+ case SqlParser.SQRT:
+ case SqlParser.SRID:
+ case SqlParser.STARTPOINT:
+ case SqlParser.STRCMP:
+ case SqlParser.STR_TO_DATE:
+ case SqlParser.ST_AREA:
+ case SqlParser.ST_ASBINARY:
+ case SqlParser.ST_ASTEXT:
+ case SqlParser.ST_ASWKB:
+ case SqlParser.ST_ASWKT:
+ case SqlParser.ST_BUFFER:
+ case SqlParser.ST_CENTROID:
+ case SqlParser.ST_CONTAINS:
+ case SqlParser.ST_CROSSES:
+ case SqlParser.ST_DIFFERENCE:
+ case SqlParser.ST_DIMENSION:
+ case SqlParser.ST_DISJOINT:
+ case SqlParser.ST_DISTANCE:
+ case SqlParser.ST_ENDPOINT:
+ case SqlParser.ST_ENVELOPE:
+ case SqlParser.ST_EQUALS:
+ case SqlParser.ST_EXTERIORRING:
+ case SqlParser.ST_GEOMCOLLFROMTEXT:
+ case SqlParser.ST_GEOMCOLLFROMTXT:
+ case SqlParser.ST_GEOMCOLLFROMWKB:
+ case SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT:
+ case SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB:
+ case SqlParser.ST_GEOMETRYFROMTEXT:
+ case SqlParser.ST_GEOMETRYFROMWKB:
+ case SqlParser.ST_GEOMETRYN:
+ case SqlParser.ST_GEOMETRYTYPE:
+ case SqlParser.ST_GEOMFROMTEXT:
+ case SqlParser.ST_GEOMFROMWKB:
+ case SqlParser.ST_INTERIORRINGN:
+ case SqlParser.ST_INTERSECTION:
+ case SqlParser.ST_INTERSECTS:
+ case SqlParser.ST_ISCLOSED:
+ case SqlParser.ST_ISEMPTY:
+ case SqlParser.ST_ISSIMPLE:
+ case SqlParser.ST_LINEFROMTEXT:
+ case SqlParser.ST_LINEFROMWKB:
+ case SqlParser.ST_LINESTRINGFROMTEXT:
+ case SqlParser.ST_LINESTRINGFROMWKB:
+ case SqlParser.ST_NUMGEOMETRIES:
+ case SqlParser.ST_NUMINTERIORRING:
+ case SqlParser.ST_NUMINTERIORRINGS:
+ case SqlParser.ST_NUMPOINTS:
+ case SqlParser.ST_OVERLAPS:
+ case SqlParser.ST_POINTFROMTEXT:
+ case SqlParser.ST_POINTFROMWKB:
+ case SqlParser.ST_POINTN:
+ case SqlParser.ST_POLYFROMTEXT:
+ case SqlParser.ST_POLYFROMWKB:
+ case SqlParser.ST_POLYGONFROMTEXT:
+ case SqlParser.ST_POLYGONFROMWKB:
+ case SqlParser.ST_SRID:
+ case SqlParser.ST_STARTPOINT:
+ case SqlParser.ST_SYMDIFFERENCE:
+ case SqlParser.ST_TOUCHES:
+ case SqlParser.ST_UNION:
+ case SqlParser.ST_WITHIN:
+ case SqlParser.ST_X:
+ case SqlParser.ST_Y:
+ case SqlParser.SUBDATE:
+ case SqlParser.SUBSTRING_INDEX:
+ case SqlParser.SUBTIME:
+ case SqlParser.SYSTEM_USER:
+ case SqlParser.TAN:
+ case SqlParser.TIMEDIFF:
+ case SqlParser.TIMESTAMPADD:
+ case SqlParser.TIMESTAMPDIFF:
+ case SqlParser.TIME_FORMAT:
+ case SqlParser.TIME_TO_SEC:
+ case SqlParser.TOUCHES:
+ case SqlParser.TO_BASE64:
+ case SqlParser.TO_DAYS:
+ case SqlParser.TO_SECONDS:
+ case SqlParser.UCASE:
+ case SqlParser.UNCOMPRESS:
+ case SqlParser.UNCOMPRESSED_LENGTH:
+ case SqlParser.UNHEX:
+ case SqlParser.UNIX_TIMESTAMP:
+ case SqlParser.UPDATEXML:
+ case SqlParser.UPPER:
+ case SqlParser.UUID:
+ case SqlParser.UUID_SHORT:
+ case SqlParser.VALIDATE_PASSWORD_STRENGTH:
+ case SqlParser.VERSION:
+ case SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS:
+ case SqlParser.WEEKDAY:
+ case SqlParser.WEEKOFYEAR:
+ case SqlParser.WEIGHT_STRING:
+ case SqlParser.WITHIN:
+ case SqlParser.YEARWEEK:
+ case SqlParser.Y_FUNCTION:
+ case SqlParser.X_FUNCTION:
+ case SqlParser.LR_BRACKET:
+ case SqlParser.CHARSET_REVERSE_QOUTE_STRING:
+ case SqlParser.STRING_LITERAL:
+ case SqlParser.ID:
+ case SqlParser.REVERSE_QUOTE_ID:
+ this.state = 988;
+ this.routineBody();
+ break;
+ case SqlParser.RETURN:
+ this.state = 989;
+ this.returnStatement();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function CreateServerContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_createServer;
+ this.wrapperName = null; // Token
+ return this;
+}
+
+CreateServerContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+CreateServerContext.prototype.constructor = CreateServerContext;
+
+CreateServerContext.prototype.CREATE = function() {
+ return this.getToken(SqlParser.CREATE, 0);
+};
+
+CreateServerContext.prototype.SERVER = function() {
+ return this.getToken(SqlParser.SERVER, 0);
+};
+
+CreateServerContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+CreateServerContext.prototype.FOREIGN = function() {
+ return this.getToken(SqlParser.FOREIGN, 0);
+};
+
+CreateServerContext.prototype.DATA = function() {
+ return this.getToken(SqlParser.DATA, 0);
+};
+
+CreateServerContext.prototype.WRAPPER = function() {
+ return this.getToken(SqlParser.WRAPPER, 0);
+};
+
+CreateServerContext.prototype.OPTIONS = function() {
+ return this.getToken(SqlParser.OPTIONS, 0);
+};
+
+CreateServerContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+CreateServerContext.prototype.serverOption = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ServerOptionContext);
+ } else {
+ return this.getTypedRuleContext(ServerOptionContext,i);
+ }
+};
+
+CreateServerContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+CreateServerContext.prototype.MYSQL = function() {
+ return this.getToken(SqlParser.MYSQL, 0);
+};
+
+CreateServerContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+CreateServerContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+CreateServerContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterCreateServer(this);
+ }
+};
+
+CreateServerContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitCreateServer(this);
+ }
+};
+
+CreateServerContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitCreateServer(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.CreateServerContext = CreateServerContext;
+
+SqlParser.prototype.createServer = function() {
+
+ var localctx = new CreateServerContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 38, SqlParser.RULE_createServer);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 992;
+ this.match(SqlParser.CREATE);
+ this.state = 993;
+ this.match(SqlParser.SERVER);
+ this.state = 994;
+ this.uid();
+ this.state = 995;
+ this.match(SqlParser.FOREIGN);
+ this.state = 996;
+ this.match(SqlParser.DATA);
+ this.state = 997;
+ this.match(SqlParser.WRAPPER);
+ this.state = 998;
+ localctx.wrapperName = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.MYSQL || _la===SqlParser.STRING_LITERAL)) {
+ localctx.wrapperName = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 999;
+ this.match(SqlParser.OPTIONS);
+ this.state = 1000;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 1001;
+ this.serverOption();
+ this.state = 1006;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 1002;
+ this.match(SqlParser.COMMA);
+ this.state = 1003;
+ this.serverOption();
+ this.state = 1008;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 1009;
+ this.match(SqlParser.RR_BRACKET);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function CreateTableContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_createTable;
+ return this;
+}
+
+CreateTableContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+CreateTableContext.prototype.constructor = CreateTableContext;
+
+
+
+CreateTableContext.prototype.copyFrom = function(ctx) {
+ antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx);
+};
+
+
+function CopyCreateTableContext(parser, ctx) {
+ CreateTableContext.call(this, parser);
+ this.parenthesisTable = null; // TableNameContext;
+ CreateTableContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+CopyCreateTableContext.prototype = Object.create(CreateTableContext.prototype);
+CopyCreateTableContext.prototype.constructor = CopyCreateTableContext;
+
+SqlParser.CopyCreateTableContext = CopyCreateTableContext;
+
+CopyCreateTableContext.prototype.CREATE = function() {
+ return this.getToken(SqlParser.CREATE, 0);
+};
+
+CopyCreateTableContext.prototype.TABLE = function() {
+ return this.getToken(SqlParser.TABLE, 0);
+};
+
+CopyCreateTableContext.prototype.tableName = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(TableNameContext);
+ } else {
+ return this.getTypedRuleContext(TableNameContext,i);
+ }
+};
+
+CopyCreateTableContext.prototype.LIKE = function() {
+ return this.getToken(SqlParser.LIKE, 0);
+};
+
+CopyCreateTableContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+CopyCreateTableContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+CopyCreateTableContext.prototype.TEMPORARY = function() {
+ return this.getToken(SqlParser.TEMPORARY, 0);
+};
+
+CopyCreateTableContext.prototype.ifNotExists = function() {
+ return this.getTypedRuleContext(IfNotExistsContext,0);
+};
+CopyCreateTableContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterCopyCreateTable(this);
+ }
+};
+
+CopyCreateTableContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitCopyCreateTable(this);
+ }
+};
+
+CopyCreateTableContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitCopyCreateTable(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function ColumnCreateTableContext(parser, ctx) {
+ CreateTableContext.call(this, parser);
+ CreateTableContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+ColumnCreateTableContext.prototype = Object.create(CreateTableContext.prototype);
+ColumnCreateTableContext.prototype.constructor = ColumnCreateTableContext;
+
+SqlParser.ColumnCreateTableContext = ColumnCreateTableContext;
+
+ColumnCreateTableContext.prototype.CREATE = function() {
+ return this.getToken(SqlParser.CREATE, 0);
+};
+
+ColumnCreateTableContext.prototype.TABLE = function() {
+ return this.getToken(SqlParser.TABLE, 0);
+};
+
+ColumnCreateTableContext.prototype.tableName = function() {
+ return this.getTypedRuleContext(TableNameContext,0);
+};
+
+ColumnCreateTableContext.prototype.createDefinitions = function() {
+ return this.getTypedRuleContext(CreateDefinitionsContext,0);
+};
+
+ColumnCreateTableContext.prototype.TEMPORARY = function() {
+ return this.getToken(SqlParser.TEMPORARY, 0);
+};
+
+ColumnCreateTableContext.prototype.ifNotExists = function() {
+ return this.getTypedRuleContext(IfNotExistsContext,0);
+};
+
+ColumnCreateTableContext.prototype.tableOption = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(TableOptionContext);
+ } else {
+ return this.getTypedRuleContext(TableOptionContext,i);
+ }
+};
+
+ColumnCreateTableContext.prototype.partitionDefinitions = function() {
+ return this.getTypedRuleContext(PartitionDefinitionsContext,0);
+};
+
+ColumnCreateTableContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+ColumnCreateTableContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterColumnCreateTable(this);
+ }
+};
+
+ColumnCreateTableContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitColumnCreateTable(this);
+ }
+};
+
+ColumnCreateTableContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitColumnCreateTable(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function QueryCreateTableContext(parser, ctx) {
+ CreateTableContext.call(this, parser);
+ this.keyViolate = null; // Token;
+ CreateTableContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+QueryCreateTableContext.prototype = Object.create(CreateTableContext.prototype);
+QueryCreateTableContext.prototype.constructor = QueryCreateTableContext;
+
+SqlParser.QueryCreateTableContext = QueryCreateTableContext;
+
+QueryCreateTableContext.prototype.CREATE = function() {
+ return this.getToken(SqlParser.CREATE, 0);
+};
+
+QueryCreateTableContext.prototype.TABLE = function() {
+ return this.getToken(SqlParser.TABLE, 0);
+};
+
+QueryCreateTableContext.prototype.tableName = function() {
+ return this.getTypedRuleContext(TableNameContext,0);
+};
+
+QueryCreateTableContext.prototype.selectStatement = function() {
+ return this.getTypedRuleContext(SelectStatementContext,0);
+};
+
+QueryCreateTableContext.prototype.TEMPORARY = function() {
+ return this.getToken(SqlParser.TEMPORARY, 0);
+};
+
+QueryCreateTableContext.prototype.ifNotExists = function() {
+ return this.getTypedRuleContext(IfNotExistsContext,0);
+};
+
+QueryCreateTableContext.prototype.createDefinitions = function() {
+ return this.getTypedRuleContext(CreateDefinitionsContext,0);
+};
+
+QueryCreateTableContext.prototype.tableOption = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(TableOptionContext);
+ } else {
+ return this.getTypedRuleContext(TableOptionContext,i);
+ }
+};
+
+QueryCreateTableContext.prototype.partitionDefinitions = function() {
+ return this.getTypedRuleContext(PartitionDefinitionsContext,0);
+};
+
+QueryCreateTableContext.prototype.AS = function() {
+ return this.getToken(SqlParser.AS, 0);
+};
+
+QueryCreateTableContext.prototype.IGNORE = function() {
+ return this.getToken(SqlParser.IGNORE, 0);
+};
+
+QueryCreateTableContext.prototype.REPLACE = function() {
+ return this.getToken(SqlParser.REPLACE, 0);
+};
+
+QueryCreateTableContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+QueryCreateTableContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterQueryCreateTable(this);
+ }
+};
+
+QueryCreateTableContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitQueryCreateTable(this);
+ }
+};
+
+QueryCreateTableContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitQueryCreateTable(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+SqlParser.CreateTableContext = CreateTableContext;
+
+SqlParser.prototype.createTable = function() {
+
+ var localctx = new CreateTableContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 40, SqlParser.RULE_createTable);
+ var _la = 0; // Token type
+ try {
+ this.state = 1089;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,74,this._ctx);
+ switch(la_) {
+ case 1:
+ localctx = new CopyCreateTableContext(this, localctx);
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1011;
+ this.match(SqlParser.CREATE);
+ this.state = 1013;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.TEMPORARY) {
+ this.state = 1012;
+ this.match(SqlParser.TEMPORARY);
+ }
+
+ this.state = 1015;
+ this.match(SqlParser.TABLE);
+ this.state = 1017;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.IF) {
+ this.state = 1016;
+ this.ifNotExists();
+ }
+
+ this.state = 1019;
+ this.tableName();
+ this.state = 1027;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.LIKE:
+ this.state = 1020;
+ this.match(SqlParser.LIKE);
+ this.state = 1021;
+ this.tableName();
+ break;
+ case SqlParser.LR_BRACKET:
+ this.state = 1022;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 1023;
+ this.match(SqlParser.LIKE);
+ this.state = 1024;
+ localctx.parenthesisTable = this.tableName();
+ this.state = 1025;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ break;
+
+ case 2:
+ localctx = new QueryCreateTableContext(this, localctx);
+ this.enterOuterAlt(localctx, 2);
+ this.state = 1029;
+ this.match(SqlParser.CREATE);
+ this.state = 1031;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.TEMPORARY) {
+ this.state = 1030;
+ this.match(SqlParser.TEMPORARY);
+ }
+
+ this.state = 1033;
+ this.match(SqlParser.TABLE);
+ this.state = 1035;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.IF) {
+ this.state = 1034;
+ this.ifNotExists();
+ }
+
+ this.state = 1037;
+ this.tableName();
+ this.state = 1039;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,61,this._ctx);
+ if(la_===1) {
+ this.state = 1038;
+ this.createDefinitions();
+
+ }
+ this.state = 1051;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(((((_la - 22)) & ~0x1f) == 0 && ((1 << (_la - 22)) & ((1 << (SqlParser.CHARACTER - 22)) | (1 << (SqlParser.COLLATE - 22)) | (1 << (SqlParser.DEFAULT - 22)))) !== 0) || _la===SqlParser.INDEX || _la===SqlParser.UNION || ((((_la - 280)) & ~0x1f) == 0 && ((1 << (_la - 280)) & ((1 << (SqlParser.AUTO_INCREMENT - 280)) | (1 << (SqlParser.AVG_ROW_LENGTH - 280)) | (1 << (SqlParser.CHECKSUM - 280)) | (1 << (SqlParser.PAGE_CHECKSUM - 280)) | (1 << (SqlParser.COMMENT - 280)) | (1 << (SqlParser.COMPRESSION - 280)))) !== 0) || ((((_la - 312)) & ~0x1f) == 0 && ((1 << (_la - 312)) & ((1 << (SqlParser.CONNECTION - 312)) | (1 << (SqlParser.DATA - 312)) | (1 << (SqlParser.DELAY_KEY_WRITE - 312)) | (1 << (SqlParser.ENCRYPTION - 312)) | (1 << (SqlParser.ENGINE - 312)))) !== 0) || _la===SqlParser.INSERT_METHOD || _la===SqlParser.KEY_BLOCK_SIZE || _la===SqlParser.MAX_ROWS || _la===SqlParser.MIN_ROWS || _la===SqlParser.PACK_KEYS || _la===SqlParser.PASSWORD || ((((_la - 513)) & ~0x1f) == 0 && ((1 << (_la - 513)) & ((1 << (SqlParser.ROW_FORMAT - 513)) | (1 << (SqlParser.STATS_AUTO_RECALC - 513)) | (1 << (SqlParser.STATS_PERSISTENT - 513)) | (1 << (SqlParser.STATS_SAMPLE_PAGES - 513)))) !== 0) || _la===SqlParser.STORAGE || _la===SqlParser.TABLESPACE || _la===SqlParser.CHARSET) {
+ this.state = 1041;
+ this.tableOption();
+ this.state = 1048;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(((((_la - 22)) & ~0x1f) == 0 && ((1 << (_la - 22)) & ((1 << (SqlParser.CHARACTER - 22)) | (1 << (SqlParser.COLLATE - 22)) | (1 << (SqlParser.DEFAULT - 22)))) !== 0) || _la===SqlParser.INDEX || _la===SqlParser.UNION || ((((_la - 280)) & ~0x1f) == 0 && ((1 << (_la - 280)) & ((1 << (SqlParser.AUTO_INCREMENT - 280)) | (1 << (SqlParser.AVG_ROW_LENGTH - 280)) | (1 << (SqlParser.CHECKSUM - 280)) | (1 << (SqlParser.PAGE_CHECKSUM - 280)) | (1 << (SqlParser.COMMENT - 280)) | (1 << (SqlParser.COMPRESSION - 280)))) !== 0) || ((((_la - 312)) & ~0x1f) == 0 && ((1 << (_la - 312)) & ((1 << (SqlParser.CONNECTION - 312)) | (1 << (SqlParser.DATA - 312)) | (1 << (SqlParser.DELAY_KEY_WRITE - 312)) | (1 << (SqlParser.ENCRYPTION - 312)) | (1 << (SqlParser.ENGINE - 312)))) !== 0) || _la===SqlParser.INSERT_METHOD || _la===SqlParser.KEY_BLOCK_SIZE || _la===SqlParser.MAX_ROWS || _la===SqlParser.MIN_ROWS || _la===SqlParser.PACK_KEYS || _la===SqlParser.PASSWORD || ((((_la - 513)) & ~0x1f) == 0 && ((1 << (_la - 513)) & ((1 << (SqlParser.ROW_FORMAT - 513)) | (1 << (SqlParser.STATS_AUTO_RECALC - 513)) | (1 << (SqlParser.STATS_PERSISTENT - 513)) | (1 << (SqlParser.STATS_SAMPLE_PAGES - 513)))) !== 0) || _la===SqlParser.STORAGE || _la===SqlParser.TABLESPACE || _la===SqlParser.CHARSET || _la===SqlParser.COMMA) {
+ this.state = 1043;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.COMMA) {
+ this.state = 1042;
+ this.match(SqlParser.COMMA);
+ }
+
+ this.state = 1045;
+ this.tableOption();
+ this.state = 1050;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ }
+
+ this.state = 1054;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.PARTITION) {
+ this.state = 1053;
+ this.partitionDefinitions();
+ }
+
+ this.state = 1057;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.IGNORE || _la===SqlParser.REPLACE) {
+ this.state = 1056;
+ localctx.keyViolate = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.IGNORE || _la===SqlParser.REPLACE)) {
+ localctx.keyViolate = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 1060;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.AS) {
+ this.state = 1059;
+ this.match(SqlParser.AS);
+ }
+
+ this.state = 1062;
+ this.selectStatement();
+ break;
+
+ case 3:
+ localctx = new ColumnCreateTableContext(this, localctx);
+ this.enterOuterAlt(localctx, 3);
+ this.state = 1064;
+ this.match(SqlParser.CREATE);
+ this.state = 1066;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.TEMPORARY) {
+ this.state = 1065;
+ this.match(SqlParser.TEMPORARY);
+ }
+
+ this.state = 1068;
+ this.match(SqlParser.TABLE);
+ this.state = 1070;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.IF) {
+ this.state = 1069;
+ this.ifNotExists();
+ }
+
+ this.state = 1072;
+ this.tableName();
+ this.state = 1073;
+ this.createDefinitions();
+ this.state = 1084;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,72,this._ctx);
+ if(la_===1) {
+ this.state = 1074;
+ this.tableOption();
+ this.state = 1081;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,71,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 1076;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.COMMA) {
+ this.state = 1075;
+ this.match(SqlParser.COMMA);
+ }
+
+ this.state = 1078;
+ this.tableOption();
+ }
+ this.state = 1083;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,71,this._ctx);
+ }
+
+
+ }
+ this.state = 1087;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.PARTITION) {
+ this.state = 1086;
+ this.partitionDefinitions();
+ }
+
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function CreateTablespaceInnodbContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_createTablespaceInnodb;
+ this.datafile = null; // Token
+ this.fileBlockSize = null; // FileSizeLiteralContext
+ return this;
+}
+
+CreateTablespaceInnodbContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+CreateTablespaceInnodbContext.prototype.constructor = CreateTablespaceInnodbContext;
+
+CreateTablespaceInnodbContext.prototype.CREATE = function() {
+ return this.getToken(SqlParser.CREATE, 0);
+};
+
+CreateTablespaceInnodbContext.prototype.TABLESPACE = function() {
+ return this.getToken(SqlParser.TABLESPACE, 0);
+};
+
+CreateTablespaceInnodbContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+CreateTablespaceInnodbContext.prototype.ADD = function() {
+ return this.getToken(SqlParser.ADD, 0);
+};
+
+CreateTablespaceInnodbContext.prototype.DATAFILE = function() {
+ return this.getToken(SqlParser.DATAFILE, 0);
+};
+
+CreateTablespaceInnodbContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+CreateTablespaceInnodbContext.prototype.FILE_BLOCK_SIZE = function() {
+ return this.getToken(SqlParser.FILE_BLOCK_SIZE, 0);
+};
+
+CreateTablespaceInnodbContext.prototype.EQUAL_SYMBOL = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.EQUAL_SYMBOL);
+ } else {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, i);
+ }
+};
+
+
+CreateTablespaceInnodbContext.prototype.ENGINE = function() {
+ return this.getToken(SqlParser.ENGINE, 0);
+};
+
+CreateTablespaceInnodbContext.prototype.engineName = function() {
+ return this.getTypedRuleContext(EngineNameContext,0);
+};
+
+CreateTablespaceInnodbContext.prototype.fileSizeLiteral = function() {
+ return this.getTypedRuleContext(FileSizeLiteralContext,0);
+};
+
+CreateTablespaceInnodbContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterCreateTablespaceInnodb(this);
+ }
+};
+
+CreateTablespaceInnodbContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitCreateTablespaceInnodb(this);
+ }
+};
+
+CreateTablespaceInnodbContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitCreateTablespaceInnodb(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.CreateTablespaceInnodbContext = CreateTablespaceInnodbContext;
+
+SqlParser.prototype.createTablespaceInnodb = function() {
+
+ var localctx = new CreateTablespaceInnodbContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 42, SqlParser.RULE_createTablespaceInnodb);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1091;
+ this.match(SqlParser.CREATE);
+ this.state = 1092;
+ this.match(SqlParser.TABLESPACE);
+ this.state = 1093;
+ this.uid();
+ this.state = 1094;
+ this.match(SqlParser.ADD);
+ this.state = 1095;
+ this.match(SqlParser.DATAFILE);
+ this.state = 1096;
+ localctx.datafile = this.match(SqlParser.STRING_LITERAL);
+ this.state = 1100;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.FILE_BLOCK_SIZE) {
+ this.state = 1097;
+ this.match(SqlParser.FILE_BLOCK_SIZE);
+ this.state = 1098;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ this.state = 1099;
+ localctx.fileBlockSize = this.fileSizeLiteral();
+ }
+
+ this.state = 1107;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.ENGINE) {
+ this.state = 1102;
+ this.match(SqlParser.ENGINE);
+ this.state = 1104;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 1103;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 1106;
+ this.engineName();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function CreateTablespaceNdbContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_createTablespaceNdb;
+ this.datafile = null; // Token
+ this.extentSize = null; // FileSizeLiteralContext
+ this.initialSize = null; // FileSizeLiteralContext
+ this.autoextendSize = null; // FileSizeLiteralContext
+ this.maxSize = null; // FileSizeLiteralContext
+ this.comment = null; // Token
+ return this;
+}
+
+CreateTablespaceNdbContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+CreateTablespaceNdbContext.prototype.constructor = CreateTablespaceNdbContext;
+
+CreateTablespaceNdbContext.prototype.CREATE = function() {
+ return this.getToken(SqlParser.CREATE, 0);
+};
+
+CreateTablespaceNdbContext.prototype.TABLESPACE = function() {
+ return this.getToken(SqlParser.TABLESPACE, 0);
+};
+
+CreateTablespaceNdbContext.prototype.uid = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UidContext);
+ } else {
+ return this.getTypedRuleContext(UidContext,i);
+ }
+};
+
+CreateTablespaceNdbContext.prototype.ADD = function() {
+ return this.getToken(SqlParser.ADD, 0);
+};
+
+CreateTablespaceNdbContext.prototype.DATAFILE = function() {
+ return this.getToken(SqlParser.DATAFILE, 0);
+};
+
+CreateTablespaceNdbContext.prototype.USE = function() {
+ return this.getToken(SqlParser.USE, 0);
+};
+
+CreateTablespaceNdbContext.prototype.LOGFILE = function() {
+ return this.getToken(SqlParser.LOGFILE, 0);
+};
+
+CreateTablespaceNdbContext.prototype.GROUP = function() {
+ return this.getToken(SqlParser.GROUP, 0);
+};
+
+CreateTablespaceNdbContext.prototype.ENGINE = function() {
+ return this.getToken(SqlParser.ENGINE, 0);
+};
+
+CreateTablespaceNdbContext.prototype.engineName = function() {
+ return this.getTypedRuleContext(EngineNameContext,0);
+};
+
+CreateTablespaceNdbContext.prototype.STRING_LITERAL = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.STRING_LITERAL);
+ } else {
+ return this.getToken(SqlParser.STRING_LITERAL, i);
+ }
+};
+
+
+CreateTablespaceNdbContext.prototype.EXTENT_SIZE = function() {
+ return this.getToken(SqlParser.EXTENT_SIZE, 0);
+};
+
+CreateTablespaceNdbContext.prototype.INITIAL_SIZE = function() {
+ return this.getToken(SqlParser.INITIAL_SIZE, 0);
+};
+
+CreateTablespaceNdbContext.prototype.AUTOEXTEND_SIZE = function() {
+ return this.getToken(SqlParser.AUTOEXTEND_SIZE, 0);
+};
+
+CreateTablespaceNdbContext.prototype.MAX_SIZE = function() {
+ return this.getToken(SqlParser.MAX_SIZE, 0);
+};
+
+CreateTablespaceNdbContext.prototype.NODEGROUP = function() {
+ return this.getToken(SqlParser.NODEGROUP, 0);
+};
+
+CreateTablespaceNdbContext.prototype.WAIT = function() {
+ return this.getToken(SqlParser.WAIT, 0);
+};
+
+CreateTablespaceNdbContext.prototype.COMMENT = function() {
+ return this.getToken(SqlParser.COMMENT, 0);
+};
+
+CreateTablespaceNdbContext.prototype.EQUAL_SYMBOL = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.EQUAL_SYMBOL);
+ } else {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, i);
+ }
+};
+
+
+CreateTablespaceNdbContext.prototype.fileSizeLiteral = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(FileSizeLiteralContext);
+ } else {
+ return this.getTypedRuleContext(FileSizeLiteralContext,i);
+ }
+};
+
+CreateTablespaceNdbContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterCreateTablespaceNdb(this);
+ }
+};
+
+CreateTablespaceNdbContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitCreateTablespaceNdb(this);
+ }
+};
+
+CreateTablespaceNdbContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitCreateTablespaceNdb(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.CreateTablespaceNdbContext = CreateTablespaceNdbContext;
+
+SqlParser.prototype.createTablespaceNdb = function() {
+
+ var localctx = new CreateTablespaceNdbContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 44, SqlParser.RULE_createTablespaceNdb);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1109;
+ this.match(SqlParser.CREATE);
+ this.state = 1110;
+ this.match(SqlParser.TABLESPACE);
+ this.state = 1111;
+ this.uid();
+ this.state = 1112;
+ this.match(SqlParser.ADD);
+ this.state = 1113;
+ this.match(SqlParser.DATAFILE);
+ this.state = 1114;
+ localctx.datafile = this.match(SqlParser.STRING_LITERAL);
+ this.state = 1115;
+ this.match(SqlParser.USE);
+ this.state = 1116;
+ this.match(SqlParser.LOGFILE);
+ this.state = 1117;
+ this.match(SqlParser.GROUP);
+ this.state = 1118;
+ this.uid();
+ this.state = 1124;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EXTENT_SIZE) {
+ this.state = 1119;
+ this.match(SqlParser.EXTENT_SIZE);
+ this.state = 1121;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 1120;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 1123;
+ localctx.extentSize = this.fileSizeLiteral();
+ }
+
+ this.state = 1131;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.INITIAL_SIZE) {
+ this.state = 1126;
+ this.match(SqlParser.INITIAL_SIZE);
+ this.state = 1128;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 1127;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 1130;
+ localctx.initialSize = this.fileSizeLiteral();
+ }
+
+ this.state = 1138;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.AUTOEXTEND_SIZE) {
+ this.state = 1133;
+ this.match(SqlParser.AUTOEXTEND_SIZE);
+ this.state = 1135;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 1134;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 1137;
+ localctx.autoextendSize = this.fileSizeLiteral();
+ }
+
+ this.state = 1145;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.MAX_SIZE) {
+ this.state = 1140;
+ this.match(SqlParser.MAX_SIZE);
+ this.state = 1142;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 1141;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 1144;
+ localctx.maxSize = this.fileSizeLiteral();
+ }
+
+ this.state = 1152;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.NODEGROUP) {
+ this.state = 1147;
+ this.match(SqlParser.NODEGROUP);
+ this.state = 1149;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 1148;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 1151;
+ this.uid();
+ }
+
+ this.state = 1155;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.WAIT) {
+ this.state = 1154;
+ this.match(SqlParser.WAIT);
+ }
+
+ this.state = 1162;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.COMMENT) {
+ this.state = 1157;
+ this.match(SqlParser.COMMENT);
+ this.state = 1159;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 1158;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 1161;
+ localctx.comment = this.match(SqlParser.STRING_LITERAL);
+ }
+
+ this.state = 1164;
+ this.match(SqlParser.ENGINE);
+ this.state = 1166;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 1165;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 1168;
+ this.engineName();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function CreateTriggerContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_createTrigger;
+ this.thisTrigger = null; // FullIdContext
+ this.triggerTime = null; // Token
+ this.triggerEvent = null; // Token
+ this.triggerPlace = null; // Token
+ this.otherTrigger = null; // FullIdContext
+ return this;
+}
+
+CreateTriggerContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+CreateTriggerContext.prototype.constructor = CreateTriggerContext;
+
+CreateTriggerContext.prototype.CREATE = function() {
+ return this.getToken(SqlParser.CREATE, 0);
+};
+
+CreateTriggerContext.prototype.TRIGGER = function() {
+ return this.getToken(SqlParser.TRIGGER, 0);
+};
+
+CreateTriggerContext.prototype.ON = function() {
+ return this.getToken(SqlParser.ON, 0);
+};
+
+CreateTriggerContext.prototype.tableName = function() {
+ return this.getTypedRuleContext(TableNameContext,0);
+};
+
+CreateTriggerContext.prototype.FOR = function() {
+ return this.getToken(SqlParser.FOR, 0);
+};
+
+CreateTriggerContext.prototype.EACH = function() {
+ return this.getToken(SqlParser.EACH, 0);
+};
+
+CreateTriggerContext.prototype.ROW = function() {
+ return this.getToken(SqlParser.ROW, 0);
+};
+
+CreateTriggerContext.prototype.routineBody = function() {
+ return this.getTypedRuleContext(RoutineBodyContext,0);
+};
+
+CreateTriggerContext.prototype.fullId = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(FullIdContext);
+ } else {
+ return this.getTypedRuleContext(FullIdContext,i);
+ }
+};
+
+CreateTriggerContext.prototype.BEFORE = function() {
+ return this.getToken(SqlParser.BEFORE, 0);
+};
+
+CreateTriggerContext.prototype.AFTER = function() {
+ return this.getToken(SqlParser.AFTER, 0);
+};
+
+CreateTriggerContext.prototype.INSERT = function() {
+ return this.getToken(SqlParser.INSERT, 0);
+};
+
+CreateTriggerContext.prototype.UPDATE = function() {
+ return this.getToken(SqlParser.UPDATE, 0);
+};
+
+CreateTriggerContext.prototype.DELETE = function() {
+ return this.getToken(SqlParser.DELETE, 0);
+};
+
+CreateTriggerContext.prototype.ownerStatement = function() {
+ return this.getTypedRuleContext(OwnerStatementContext,0);
+};
+
+CreateTriggerContext.prototype.FOLLOWS = function() {
+ return this.getToken(SqlParser.FOLLOWS, 0);
+};
+
+CreateTriggerContext.prototype.PRECEDES = function() {
+ return this.getToken(SqlParser.PRECEDES, 0);
+};
+
+CreateTriggerContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterCreateTrigger(this);
+ }
+};
+
+CreateTriggerContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitCreateTrigger(this);
+ }
+};
+
+CreateTriggerContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitCreateTrigger(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.CreateTriggerContext = CreateTriggerContext;
+
+SqlParser.prototype.createTrigger = function() {
+
+ var localctx = new CreateTriggerContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 46, SqlParser.RULE_createTrigger);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1170;
+ this.match(SqlParser.CREATE);
+ this.state = 1172;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.DEFINER) {
+ this.state = 1171;
+ this.ownerStatement();
+ }
+
+ this.state = 1174;
+ this.match(SqlParser.TRIGGER);
+ this.state = 1175;
+ localctx.thisTrigger = this.fullId();
+ this.state = 1176;
+ localctx.triggerTime = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.BEFORE || _la===SqlParser.AFTER)) {
+ localctx.triggerTime = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 1177;
+ localctx.triggerEvent = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.DELETE || _la===SqlParser.INSERT || _la===SqlParser.UPDATE)) {
+ localctx.triggerEvent = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 1178;
+ this.match(SqlParser.ON);
+ this.state = 1179;
+ this.tableName();
+ this.state = 1180;
+ this.match(SqlParser.FOR);
+ this.state = 1181;
+ this.match(SqlParser.EACH);
+ this.state = 1182;
+ this.match(SqlParser.ROW);
+ this.state = 1185;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,93,this._ctx);
+ if(la_===1) {
+ this.state = 1183;
+ localctx.triggerPlace = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.FOLLOWS || _la===SqlParser.PRECEDES)) {
+ localctx.triggerPlace = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 1184;
+ localctx.otherTrigger = this.fullId();
+
+ }
+ this.state = 1187;
+ this.routineBody();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function CreateViewContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_createView;
+ this.algType = null; // Token
+ this.secContext = null; // Token
+ this.checkOption = null; // Token
+ return this;
+}
+
+CreateViewContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+CreateViewContext.prototype.constructor = CreateViewContext;
+
+CreateViewContext.prototype.CREATE = function() {
+ return this.getToken(SqlParser.CREATE, 0);
+};
+
+CreateViewContext.prototype.VIEW = function() {
+ return this.getToken(SqlParser.VIEW, 0);
+};
+
+CreateViewContext.prototype.fullId = function() {
+ return this.getTypedRuleContext(FullIdContext,0);
+};
+
+CreateViewContext.prototype.AS = function() {
+ return this.getToken(SqlParser.AS, 0);
+};
+
+CreateViewContext.prototype.selectStatement = function() {
+ return this.getTypedRuleContext(SelectStatementContext,0);
+};
+
+CreateViewContext.prototype.OR = function() {
+ return this.getToken(SqlParser.OR, 0);
+};
+
+CreateViewContext.prototype.REPLACE = function() {
+ return this.getToken(SqlParser.REPLACE, 0);
+};
+
+CreateViewContext.prototype.ALGORITHM = function() {
+ return this.getToken(SqlParser.ALGORITHM, 0);
+};
+
+CreateViewContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+
+CreateViewContext.prototype.ownerStatement = function() {
+ return this.getTypedRuleContext(OwnerStatementContext,0);
+};
+
+CreateViewContext.prototype.SQL = function() {
+ return this.getToken(SqlParser.SQL, 0);
+};
+
+CreateViewContext.prototype.SECURITY = function() {
+ return this.getToken(SqlParser.SECURITY, 0);
+};
+
+CreateViewContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+CreateViewContext.prototype.uidList = function() {
+ return this.getTypedRuleContext(UidListContext,0);
+};
+
+CreateViewContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+CreateViewContext.prototype.WITH = function() {
+ return this.getToken(SqlParser.WITH, 0);
+};
+
+CreateViewContext.prototype.CHECK = function() {
+ return this.getToken(SqlParser.CHECK, 0);
+};
+
+CreateViewContext.prototype.OPTION = function() {
+ return this.getToken(SqlParser.OPTION, 0);
+};
+
+CreateViewContext.prototype.UNDEFINED = function() {
+ return this.getToken(SqlParser.UNDEFINED, 0);
+};
+
+CreateViewContext.prototype.MERGE = function() {
+ return this.getToken(SqlParser.MERGE, 0);
+};
+
+CreateViewContext.prototype.TEMPTABLE = function() {
+ return this.getToken(SqlParser.TEMPTABLE, 0);
+};
+
+CreateViewContext.prototype.DEFINER = function() {
+ return this.getToken(SqlParser.DEFINER, 0);
+};
+
+CreateViewContext.prototype.INVOKER = function() {
+ return this.getToken(SqlParser.INVOKER, 0);
+};
+
+CreateViewContext.prototype.CASCADED = function() {
+ return this.getToken(SqlParser.CASCADED, 0);
+};
+
+CreateViewContext.prototype.LOCAL = function() {
+ return this.getToken(SqlParser.LOCAL, 0);
+};
+
+CreateViewContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterCreateView(this);
+ }
+};
+
+CreateViewContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitCreateView(this);
+ }
+};
+
+CreateViewContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitCreateView(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.CreateViewContext = CreateViewContext;
+
+SqlParser.prototype.createView = function() {
+
+ var localctx = new CreateViewContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 48, SqlParser.RULE_createView);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1189;
+ this.match(SqlParser.CREATE);
+ this.state = 1192;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.OR) {
+ this.state = 1190;
+ this.match(SqlParser.OR);
+ this.state = 1191;
+ this.match(SqlParser.REPLACE);
+ }
+
+ this.state = 1197;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.ALGORITHM) {
+ this.state = 1194;
+ this.match(SqlParser.ALGORITHM);
+ this.state = 1195;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ this.state = 1196;
+ localctx.algType = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.MERGE || _la===SqlParser.TEMPTABLE || _la===SqlParser.UNDEFINED)) {
+ localctx.algType = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 1200;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.DEFINER) {
+ this.state = 1199;
+ this.ownerStatement();
+ }
+
+ this.state = 1205;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.SQL) {
+ this.state = 1202;
+ this.match(SqlParser.SQL);
+ this.state = 1203;
+ this.match(SqlParser.SECURITY);
+ this.state = 1204;
+ localctx.secContext = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.DEFINER || _la===SqlParser.INVOKER)) {
+ localctx.secContext = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 1207;
+ this.match(SqlParser.VIEW);
+ this.state = 1208;
+ this.fullId();
+ this.state = 1213;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.LR_BRACKET) {
+ this.state = 1209;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 1210;
+ this.uidList();
+ this.state = 1211;
+ this.match(SqlParser.RR_BRACKET);
+ }
+
+ this.state = 1215;
+ this.match(SqlParser.AS);
+ this.state = 1216;
+ this.selectStatement();
+ this.state = 1223;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.WITH) {
+ this.state = 1217;
+ this.match(SqlParser.WITH);
+ this.state = 1219;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.CASCADED || _la===SqlParser.LOCAL) {
+ this.state = 1218;
+ localctx.checkOption = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.CASCADED || _la===SqlParser.LOCAL)) {
+ localctx.checkOption = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 1221;
+ this.match(SqlParser.CHECK);
+ this.state = 1222;
+ this.match(SqlParser.OPTION);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function CreateDatabaseOptionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_createDatabaseOption;
+ return this;
+}
+
+CreateDatabaseOptionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+CreateDatabaseOptionContext.prototype.constructor = CreateDatabaseOptionContext;
+
+CreateDatabaseOptionContext.prototype.CHARACTER = function() {
+ return this.getToken(SqlParser.CHARACTER, 0);
+};
+
+CreateDatabaseOptionContext.prototype.SET = function() {
+ return this.getToken(SqlParser.SET, 0);
+};
+
+CreateDatabaseOptionContext.prototype.CHARSET = function() {
+ return this.getToken(SqlParser.CHARSET, 0);
+};
+
+CreateDatabaseOptionContext.prototype.charsetName = function() {
+ return this.getTypedRuleContext(CharsetNameContext,0);
+};
+
+CreateDatabaseOptionContext.prototype.DEFAULT = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.DEFAULT);
+ } else {
+ return this.getToken(SqlParser.DEFAULT, i);
+ }
+};
+
+
+CreateDatabaseOptionContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+
+CreateDatabaseOptionContext.prototype.COLLATE = function() {
+ return this.getToken(SqlParser.COLLATE, 0);
+};
+
+CreateDatabaseOptionContext.prototype.collationName = function() {
+ return this.getTypedRuleContext(CollationNameContext,0);
+};
+
+CreateDatabaseOptionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterCreateDatabaseOption(this);
+ }
+};
+
+CreateDatabaseOptionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitCreateDatabaseOption(this);
+ }
+};
+
+CreateDatabaseOptionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitCreateDatabaseOption(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.CreateDatabaseOptionContext = CreateDatabaseOptionContext;
+
+SqlParser.prototype.createDatabaseOption = function() {
+
+ var localctx = new CreateDatabaseOptionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 50, SqlParser.RULE_createDatabaseOption);
+ var _la = 0; // Token type
+ try {
+ this.state = 1248;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,107,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1226;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.DEFAULT) {
+ this.state = 1225;
+ this.match(SqlParser.DEFAULT);
+ }
+
+ this.state = 1231;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.CHARACTER:
+ this.state = 1228;
+ this.match(SqlParser.CHARACTER);
+ this.state = 1229;
+ this.match(SqlParser.SET);
+ break;
+ case SqlParser.CHARSET:
+ this.state = 1230;
+ this.match(SqlParser.CHARSET);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 1234;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 1233;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 1238;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.BINARY:
+ case SqlParser.ARMSCII8:
+ case SqlParser.ASCII:
+ case SqlParser.BIG5:
+ case SqlParser.CP1250:
+ case SqlParser.CP1251:
+ case SqlParser.CP1256:
+ case SqlParser.CP1257:
+ case SqlParser.CP850:
+ case SqlParser.CP852:
+ case SqlParser.CP866:
+ case SqlParser.CP932:
+ case SqlParser.DEC8:
+ case SqlParser.EUCJPMS:
+ case SqlParser.EUCKR:
+ case SqlParser.GB2312:
+ case SqlParser.GBK:
+ case SqlParser.GEOSTD8:
+ case SqlParser.GREEK:
+ case SqlParser.HEBREW:
+ case SqlParser.HP8:
+ case SqlParser.KEYBCS2:
+ case SqlParser.KOI8R:
+ case SqlParser.KOI8U:
+ case SqlParser.LATIN1:
+ case SqlParser.LATIN2:
+ case SqlParser.LATIN5:
+ case SqlParser.LATIN7:
+ case SqlParser.MACCE:
+ case SqlParser.MACROMAN:
+ case SqlParser.SJIS:
+ case SqlParser.SWE7:
+ case SqlParser.TIS620:
+ case SqlParser.UCS2:
+ case SqlParser.UJIS:
+ case SqlParser.UTF16:
+ case SqlParser.UTF16LE:
+ case SqlParser.UTF32:
+ case SqlParser.UTF8:
+ case SqlParser.UTF8MB3:
+ case SqlParser.UTF8MB4:
+ case SqlParser.CHARSET_REVERSE_QOUTE_STRING:
+ case SqlParser.STRING_LITERAL:
+ this.state = 1236;
+ this.charsetName();
+ break;
+ case SqlParser.DEFAULT:
+ this.state = 1237;
+ this.match(SqlParser.DEFAULT);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 1241;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.DEFAULT) {
+ this.state = 1240;
+ this.match(SqlParser.DEFAULT);
+ }
+
+ this.state = 1243;
+ this.match(SqlParser.COLLATE);
+ this.state = 1245;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 1244;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 1247;
+ this.collationName();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function OwnerStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_ownerStatement;
+ return this;
+}
+
+OwnerStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+OwnerStatementContext.prototype.constructor = OwnerStatementContext;
+
+OwnerStatementContext.prototype.DEFINER = function() {
+ return this.getToken(SqlParser.DEFINER, 0);
+};
+
+OwnerStatementContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+
+OwnerStatementContext.prototype.userName = function() {
+ return this.getTypedRuleContext(UserNameContext,0);
+};
+
+OwnerStatementContext.prototype.CURRENT_USER = function() {
+ return this.getToken(SqlParser.CURRENT_USER, 0);
+};
+
+OwnerStatementContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+OwnerStatementContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+OwnerStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterOwnerStatement(this);
+ }
+};
+
+OwnerStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitOwnerStatement(this);
+ }
+};
+
+OwnerStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitOwnerStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.OwnerStatementContext = OwnerStatementContext;
+
+SqlParser.prototype.ownerStatement = function() {
+
+ var localctx = new OwnerStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 52, SqlParser.RULE_ownerStatement);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1250;
+ this.match(SqlParser.DEFINER);
+ this.state = 1251;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ this.state = 1258;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.STRING_LITERAL:
+ case SqlParser.ID:
+ case SqlParser.STRING_USER_NAME:
+ this.state = 1252;
+ this.userName();
+ break;
+ case SqlParser.CURRENT_USER:
+ this.state = 1253;
+ this.match(SqlParser.CURRENT_USER);
+ this.state = 1256;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.LR_BRACKET) {
+ this.state = 1254;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 1255;
+ this.match(SqlParser.RR_BRACKET);
+ }
+
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function ScheduleExpressionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_scheduleExpression;
+ return this;
+}
+
+ScheduleExpressionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+ScheduleExpressionContext.prototype.constructor = ScheduleExpressionContext;
+
+
+
+ScheduleExpressionContext.prototype.copyFrom = function(ctx) {
+ antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx);
+};
+
+
+function PreciseScheduleContext(parser, ctx) {
+ ScheduleExpressionContext.call(this, parser);
+ ScheduleExpressionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+PreciseScheduleContext.prototype = Object.create(ScheduleExpressionContext.prototype);
+PreciseScheduleContext.prototype.constructor = PreciseScheduleContext;
+
+SqlParser.PreciseScheduleContext = PreciseScheduleContext;
+
+PreciseScheduleContext.prototype.AT = function() {
+ return this.getToken(SqlParser.AT, 0);
+};
+
+PreciseScheduleContext.prototype.timestampValue = function() {
+ return this.getTypedRuleContext(TimestampValueContext,0);
+};
+
+PreciseScheduleContext.prototype.intervalExpr = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(IntervalExprContext);
+ } else {
+ return this.getTypedRuleContext(IntervalExprContext,i);
+ }
+};
+PreciseScheduleContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterPreciseSchedule(this);
+ }
+};
+
+PreciseScheduleContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitPreciseSchedule(this);
+ }
+};
+
+PreciseScheduleContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitPreciseSchedule(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function IntervalScheduleContext(parser, ctx) {
+ ScheduleExpressionContext.call(this, parser);
+ this.startTimestamp = null; // TimestampValueContext;
+ this._intervalExpr = null; // IntervalExprContext;
+ this.startIntervals = []; // of IntervalExprContexts;
+ this.endTimestamp = null; // TimestampValueContext;
+ this.endIntervals = []; // of IntervalExprContexts;
+ ScheduleExpressionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+IntervalScheduleContext.prototype = Object.create(ScheduleExpressionContext.prototype);
+IntervalScheduleContext.prototype.constructor = IntervalScheduleContext;
+
+SqlParser.IntervalScheduleContext = IntervalScheduleContext;
+
+IntervalScheduleContext.prototype.EVERY = function() {
+ return this.getToken(SqlParser.EVERY, 0);
+};
+
+IntervalScheduleContext.prototype.intervalType = function() {
+ return this.getTypedRuleContext(IntervalTypeContext,0);
+};
+
+IntervalScheduleContext.prototype.decimalLiteral = function() {
+ return this.getTypedRuleContext(DecimalLiteralContext,0);
+};
+
+IntervalScheduleContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+IntervalScheduleContext.prototype.STARTS = function() {
+ return this.getToken(SqlParser.STARTS, 0);
+};
+
+IntervalScheduleContext.prototype.ENDS = function() {
+ return this.getToken(SqlParser.ENDS, 0);
+};
+
+IntervalScheduleContext.prototype.timestampValue = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(TimestampValueContext);
+ } else {
+ return this.getTypedRuleContext(TimestampValueContext,i);
+ }
+};
+
+IntervalScheduleContext.prototype.intervalExpr = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(IntervalExprContext);
+ } else {
+ return this.getTypedRuleContext(IntervalExprContext,i);
+ }
+};
+IntervalScheduleContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterIntervalSchedule(this);
+ }
+};
+
+IntervalScheduleContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitIntervalSchedule(this);
+ }
+};
+
+IntervalScheduleContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitIntervalSchedule(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+SqlParser.ScheduleExpressionContext = ScheduleExpressionContext;
+
+SqlParser.prototype.scheduleExpression = function() {
+
+ var localctx = new ScheduleExpressionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 54, SqlParser.RULE_scheduleExpression);
+ var _la = 0; // Token type
+ try {
+ this.state = 1294;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.AT:
+ localctx = new PreciseScheduleContext(this, localctx);
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1260;
+ this.match(SqlParser.AT);
+ this.state = 1261;
+ this.timestampValue();
+ this.state = 1265;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.PLUS) {
+ this.state = 1262;
+ this.intervalExpr();
+ this.state = 1267;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+ case SqlParser.EVERY:
+ localctx = new IntervalScheduleContext(this, localctx);
+ this.enterOuterAlt(localctx, 2);
+ this.state = 1268;
+ this.match(SqlParser.EVERY);
+ this.state = 1271;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,111,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 1269;
+ this.decimalLiteral();
+ break;
+
+ case 2:
+ this.state = 1270;
+ this.expression(0);
+ break;
+
+ }
+ this.state = 1273;
+ this.intervalType();
+ this.state = 1282;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.STARTS) {
+ this.state = 1274;
+ this.match(SqlParser.STARTS);
+ this.state = 1275;
+ localctx.startTimestamp = this.timestampValue();
+ this.state = 1279;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.PLUS) {
+ this.state = 1276;
+ localctx._intervalExpr = this.intervalExpr();
+ localctx.startIntervals.push(localctx._intervalExpr);
+ this.state = 1281;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ }
+
+ this.state = 1292;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.ENDS) {
+ this.state = 1284;
+ this.match(SqlParser.ENDS);
+ this.state = 1285;
+ localctx.endTimestamp = this.timestampValue();
+ this.state = 1289;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.PLUS) {
+ this.state = 1286;
+ localctx._intervalExpr = this.intervalExpr();
+ localctx.endIntervals.push(localctx._intervalExpr);
+ this.state = 1291;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ }
+
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function TimestampValueContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_timestampValue;
+ return this;
+}
+
+TimestampValueContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+TimestampValueContext.prototype.constructor = TimestampValueContext;
+
+TimestampValueContext.prototype.CURRENT_TIMESTAMP = function() {
+ return this.getToken(SqlParser.CURRENT_TIMESTAMP, 0);
+};
+
+TimestampValueContext.prototype.stringLiteral = function() {
+ return this.getTypedRuleContext(StringLiteralContext,0);
+};
+
+TimestampValueContext.prototype.decimalLiteral = function() {
+ return this.getTypedRuleContext(DecimalLiteralContext,0);
+};
+
+TimestampValueContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+TimestampValueContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterTimestampValue(this);
+ }
+};
+
+TimestampValueContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitTimestampValue(this);
+ }
+};
+
+TimestampValueContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitTimestampValue(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.TimestampValueContext = TimestampValueContext;
+
+SqlParser.prototype.timestampValue = function() {
+
+ var localctx = new TimestampValueContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 56, SqlParser.RULE_timestampValue);
+ try {
+ this.state = 1300;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,117,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1296;
+ this.match(SqlParser.CURRENT_TIMESTAMP);
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 1297;
+ this.stringLiteral();
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 1298;
+ this.decimalLiteral();
+ break;
+
+ case 4:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 1299;
+ this.expression(0);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function IntervalExprContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_intervalExpr;
+ return this;
+}
+
+IntervalExprContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+IntervalExprContext.prototype.constructor = IntervalExprContext;
+
+IntervalExprContext.prototype.PLUS = function() {
+ return this.getToken(SqlParser.PLUS, 0);
+};
+
+IntervalExprContext.prototype.INTERVAL = function() {
+ return this.getToken(SqlParser.INTERVAL, 0);
+};
+
+IntervalExprContext.prototype.intervalType = function() {
+ return this.getTypedRuleContext(IntervalTypeContext,0);
+};
+
+IntervalExprContext.prototype.decimalLiteral = function() {
+ return this.getTypedRuleContext(DecimalLiteralContext,0);
+};
+
+IntervalExprContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+IntervalExprContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterIntervalExpr(this);
+ }
+};
+
+IntervalExprContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitIntervalExpr(this);
+ }
+};
+
+IntervalExprContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitIntervalExpr(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.IntervalExprContext = IntervalExprContext;
+
+SqlParser.prototype.intervalExpr = function() {
+
+ var localctx = new IntervalExprContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 58, SqlParser.RULE_intervalExpr);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1302;
+ this.match(SqlParser.PLUS);
+ this.state = 1303;
+ this.match(SqlParser.INTERVAL);
+ this.state = 1306;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,118,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 1304;
+ this.decimalLiteral();
+ break;
+
+ case 2:
+ this.state = 1305;
+ this.expression(0);
+ break;
+
+ }
+ this.state = 1308;
+ this.intervalType();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function IntervalTypeContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_intervalType;
+ return this;
+}
+
+IntervalTypeContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+IntervalTypeContext.prototype.constructor = IntervalTypeContext;
+
+IntervalTypeContext.prototype.intervalTypeBase = function() {
+ return this.getTypedRuleContext(IntervalTypeBaseContext,0);
+};
+
+IntervalTypeContext.prototype.YEAR = function() {
+ return this.getToken(SqlParser.YEAR, 0);
+};
+
+IntervalTypeContext.prototype.YEAR_MONTH = function() {
+ return this.getToken(SqlParser.YEAR_MONTH, 0);
+};
+
+IntervalTypeContext.prototype.DAY_HOUR = function() {
+ return this.getToken(SqlParser.DAY_HOUR, 0);
+};
+
+IntervalTypeContext.prototype.DAY_MINUTE = function() {
+ return this.getToken(SqlParser.DAY_MINUTE, 0);
+};
+
+IntervalTypeContext.prototype.DAY_SECOND = function() {
+ return this.getToken(SqlParser.DAY_SECOND, 0);
+};
+
+IntervalTypeContext.prototype.HOUR_MINUTE = function() {
+ return this.getToken(SqlParser.HOUR_MINUTE, 0);
+};
+
+IntervalTypeContext.prototype.HOUR_SECOND = function() {
+ return this.getToken(SqlParser.HOUR_SECOND, 0);
+};
+
+IntervalTypeContext.prototype.MINUTE_SECOND = function() {
+ return this.getToken(SqlParser.MINUTE_SECOND, 0);
+};
+
+IntervalTypeContext.prototype.SECOND_MICROSECOND = function() {
+ return this.getToken(SqlParser.SECOND_MICROSECOND, 0);
+};
+
+IntervalTypeContext.prototype.MINUTE_MICROSECOND = function() {
+ return this.getToken(SqlParser.MINUTE_MICROSECOND, 0);
+};
+
+IntervalTypeContext.prototype.HOUR_MICROSECOND = function() {
+ return this.getToken(SqlParser.HOUR_MICROSECOND, 0);
+};
+
+IntervalTypeContext.prototype.DAY_MICROSECOND = function() {
+ return this.getToken(SqlParser.DAY_MICROSECOND, 0);
+};
+
+IntervalTypeContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterIntervalType(this);
+ }
+};
+
+IntervalTypeContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitIntervalType(this);
+ }
+};
+
+IntervalTypeContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitIntervalType(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.IntervalTypeContext = IntervalTypeContext;
+
+SqlParser.prototype.intervalType = function() {
+
+ var localctx = new IntervalTypeContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 60, SqlParser.RULE_intervalType);
+ try {
+ this.state = 1323;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.QUARTER:
+ case SqlParser.MONTH:
+ case SqlParser.DAY:
+ case SqlParser.HOUR:
+ case SqlParser.MINUTE:
+ case SqlParser.WEEK:
+ case SqlParser.SECOND:
+ case SqlParser.MICROSECOND:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1310;
+ this.intervalTypeBase();
+ break;
+ case SqlParser.YEAR:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 1311;
+ this.match(SqlParser.YEAR);
+ break;
+ case SqlParser.YEAR_MONTH:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 1312;
+ this.match(SqlParser.YEAR_MONTH);
+ break;
+ case SqlParser.DAY_HOUR:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 1313;
+ this.match(SqlParser.DAY_HOUR);
+ break;
+ case SqlParser.DAY_MINUTE:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 1314;
+ this.match(SqlParser.DAY_MINUTE);
+ break;
+ case SqlParser.DAY_SECOND:
+ this.enterOuterAlt(localctx, 6);
+ this.state = 1315;
+ this.match(SqlParser.DAY_SECOND);
+ break;
+ case SqlParser.HOUR_MINUTE:
+ this.enterOuterAlt(localctx, 7);
+ this.state = 1316;
+ this.match(SqlParser.HOUR_MINUTE);
+ break;
+ case SqlParser.HOUR_SECOND:
+ this.enterOuterAlt(localctx, 8);
+ this.state = 1317;
+ this.match(SqlParser.HOUR_SECOND);
+ break;
+ case SqlParser.MINUTE_SECOND:
+ this.enterOuterAlt(localctx, 9);
+ this.state = 1318;
+ this.match(SqlParser.MINUTE_SECOND);
+ break;
+ case SqlParser.SECOND_MICROSECOND:
+ this.enterOuterAlt(localctx, 10);
+ this.state = 1319;
+ this.match(SqlParser.SECOND_MICROSECOND);
+ break;
+ case SqlParser.MINUTE_MICROSECOND:
+ this.enterOuterAlt(localctx, 11);
+ this.state = 1320;
+ this.match(SqlParser.MINUTE_MICROSECOND);
+ break;
+ case SqlParser.HOUR_MICROSECOND:
+ this.enterOuterAlt(localctx, 12);
+ this.state = 1321;
+ this.match(SqlParser.HOUR_MICROSECOND);
+ break;
+ case SqlParser.DAY_MICROSECOND:
+ this.enterOuterAlt(localctx, 13);
+ this.state = 1322;
+ this.match(SqlParser.DAY_MICROSECOND);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function EnableTypeContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_enableType;
+ return this;
+}
+
+EnableTypeContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+EnableTypeContext.prototype.constructor = EnableTypeContext;
+
+EnableTypeContext.prototype.ENABLE = function() {
+ return this.getToken(SqlParser.ENABLE, 0);
+};
+
+EnableTypeContext.prototype.DISABLE = function() {
+ return this.getToken(SqlParser.DISABLE, 0);
+};
+
+EnableTypeContext.prototype.ON = function() {
+ return this.getToken(SqlParser.ON, 0);
+};
+
+EnableTypeContext.prototype.SLAVE = function() {
+ return this.getToken(SqlParser.SLAVE, 0);
+};
+
+EnableTypeContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterEnableType(this);
+ }
+};
+
+EnableTypeContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitEnableType(this);
+ }
+};
+
+EnableTypeContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitEnableType(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.EnableTypeContext = EnableTypeContext;
+
+SqlParser.prototype.enableType = function() {
+
+ var localctx = new EnableTypeContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 62, SqlParser.RULE_enableType);
+ try {
+ this.state = 1330;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,120,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1325;
+ this.match(SqlParser.ENABLE);
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 1326;
+ this.match(SqlParser.DISABLE);
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 1327;
+ this.match(SqlParser.DISABLE);
+ this.state = 1328;
+ this.match(SqlParser.ON);
+ this.state = 1329;
+ this.match(SqlParser.SLAVE);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function IndexTypeContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_indexType;
+ return this;
+}
+
+IndexTypeContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+IndexTypeContext.prototype.constructor = IndexTypeContext;
+
+IndexTypeContext.prototype.USING = function() {
+ return this.getToken(SqlParser.USING, 0);
+};
+
+IndexTypeContext.prototype.BTREE = function() {
+ return this.getToken(SqlParser.BTREE, 0);
+};
+
+IndexTypeContext.prototype.HASH = function() {
+ return this.getToken(SqlParser.HASH, 0);
+};
+
+IndexTypeContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterIndexType(this);
+ }
+};
+
+IndexTypeContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitIndexType(this);
+ }
+};
+
+IndexTypeContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitIndexType(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.IndexTypeContext = IndexTypeContext;
+
+SqlParser.prototype.indexType = function() {
+
+ var localctx = new IndexTypeContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 64, SqlParser.RULE_indexType);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1332;
+ this.match(SqlParser.USING);
+ this.state = 1333;
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.BTREE || _la===SqlParser.HASH)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function IndexOptionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_indexOption;
+ return this;
+}
+
+IndexOptionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+IndexOptionContext.prototype.constructor = IndexOptionContext;
+
+IndexOptionContext.prototype.KEY_BLOCK_SIZE = function() {
+ return this.getToken(SqlParser.KEY_BLOCK_SIZE, 0);
+};
+
+IndexOptionContext.prototype.fileSizeLiteral = function() {
+ return this.getTypedRuleContext(FileSizeLiteralContext,0);
+};
+
+IndexOptionContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+
+IndexOptionContext.prototype.indexType = function() {
+ return this.getTypedRuleContext(IndexTypeContext,0);
+};
+
+IndexOptionContext.prototype.WITH = function() {
+ return this.getToken(SqlParser.WITH, 0);
+};
+
+IndexOptionContext.prototype.PARSER = function() {
+ return this.getToken(SqlParser.PARSER, 0);
+};
+
+IndexOptionContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+IndexOptionContext.prototype.COMMENT = function() {
+ return this.getToken(SqlParser.COMMENT, 0);
+};
+
+IndexOptionContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+IndexOptionContext.prototype.INVISIBLE = function() {
+ return this.getToken(SqlParser.INVISIBLE, 0);
+};
+
+IndexOptionContext.prototype.VISIBLE = function() {
+ return this.getToken(SqlParser.VISIBLE, 0);
+};
+
+IndexOptionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterIndexOption(this);
+ }
+};
+
+IndexOptionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitIndexOption(this);
+ }
+};
+
+IndexOptionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitIndexOption(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.IndexOptionContext = IndexOptionContext;
+
+SqlParser.prototype.indexOption = function() {
+
+ var localctx = new IndexOptionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 66, SqlParser.RULE_indexOption);
+ var _la = 0; // Token type
+ try {
+ this.state = 1348;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.KEY_BLOCK_SIZE:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1335;
+ this.match(SqlParser.KEY_BLOCK_SIZE);
+ this.state = 1337;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 1336;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 1339;
+ this.fileSizeLiteral();
+ break;
+ case SqlParser.USING:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 1340;
+ this.indexType();
+ break;
+ case SqlParser.WITH:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 1341;
+ this.match(SqlParser.WITH);
+ this.state = 1342;
+ this.match(SqlParser.PARSER);
+ this.state = 1343;
+ this.uid();
+ break;
+ case SqlParser.COMMENT:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 1344;
+ this.match(SqlParser.COMMENT);
+ this.state = 1345;
+ this.match(SqlParser.STRING_LITERAL);
+ break;
+ case SqlParser.INVISIBLE:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 1346;
+ this.match(SqlParser.INVISIBLE);
+ break;
+ case SqlParser.VISIBLE:
+ this.enterOuterAlt(localctx, 6);
+ this.state = 1347;
+ this.match(SqlParser.VISIBLE);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function ProcedureParameterContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_procedureParameter;
+ this.direction = null; // Token
+ return this;
+}
+
+ProcedureParameterContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+ProcedureParameterContext.prototype.constructor = ProcedureParameterContext;
+
+ProcedureParameterContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+ProcedureParameterContext.prototype.dataType = function() {
+ return this.getTypedRuleContext(DataTypeContext,0);
+};
+
+ProcedureParameterContext.prototype.IN = function() {
+ return this.getToken(SqlParser.IN, 0);
+};
+
+ProcedureParameterContext.prototype.OUT = function() {
+ return this.getToken(SqlParser.OUT, 0);
+};
+
+ProcedureParameterContext.prototype.INOUT = function() {
+ return this.getToken(SqlParser.INOUT, 0);
+};
+
+ProcedureParameterContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterProcedureParameter(this);
+ }
+};
+
+ProcedureParameterContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitProcedureParameter(this);
+ }
+};
+
+ProcedureParameterContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitProcedureParameter(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.ProcedureParameterContext = ProcedureParameterContext;
+
+SqlParser.prototype.procedureParameter = function() {
+
+ var localctx = new ProcedureParameterContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 68, SqlParser.RULE_procedureParameter);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1351;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.IN || _la===SqlParser.INOUT || _la===SqlParser.OUT) {
+ this.state = 1350;
+ localctx.direction = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.IN || _la===SqlParser.INOUT || _la===SqlParser.OUT)) {
+ localctx.direction = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 1353;
+ this.uid();
+ this.state = 1354;
+ this.dataType();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function FunctionParameterContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_functionParameter;
+ return this;
+}
+
+FunctionParameterContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+FunctionParameterContext.prototype.constructor = FunctionParameterContext;
+
+FunctionParameterContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+FunctionParameterContext.prototype.dataType = function() {
+ return this.getTypedRuleContext(DataTypeContext,0);
+};
+
+FunctionParameterContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterFunctionParameter(this);
+ }
+};
+
+FunctionParameterContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitFunctionParameter(this);
+ }
+};
+
+FunctionParameterContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitFunctionParameter(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.FunctionParameterContext = FunctionParameterContext;
+
+SqlParser.prototype.functionParameter = function() {
+
+ var localctx = new FunctionParameterContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 70, SqlParser.RULE_functionParameter);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1356;
+ this.uid();
+ this.state = 1357;
+ this.dataType();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function RoutineOptionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_routineOption;
+ return this;
+}
+
+RoutineOptionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+RoutineOptionContext.prototype.constructor = RoutineOptionContext;
+
+
+
+RoutineOptionContext.prototype.copyFrom = function(ctx) {
+ antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx);
+};
+
+
+function RoutineBehaviorContext(parser, ctx) {
+ RoutineOptionContext.call(this, parser);
+ RoutineOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+RoutineBehaviorContext.prototype = Object.create(RoutineOptionContext.prototype);
+RoutineBehaviorContext.prototype.constructor = RoutineBehaviorContext;
+
+SqlParser.RoutineBehaviorContext = RoutineBehaviorContext;
+
+RoutineBehaviorContext.prototype.DETERMINISTIC = function() {
+ return this.getToken(SqlParser.DETERMINISTIC, 0);
+};
+
+RoutineBehaviorContext.prototype.NOT = function() {
+ return this.getToken(SqlParser.NOT, 0);
+};
+RoutineBehaviorContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterRoutineBehavior(this);
+ }
+};
+
+RoutineBehaviorContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitRoutineBehavior(this);
+ }
+};
+
+RoutineBehaviorContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitRoutineBehavior(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function RoutineLanguageContext(parser, ctx) {
+ RoutineOptionContext.call(this, parser);
+ RoutineOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+RoutineLanguageContext.prototype = Object.create(RoutineOptionContext.prototype);
+RoutineLanguageContext.prototype.constructor = RoutineLanguageContext;
+
+SqlParser.RoutineLanguageContext = RoutineLanguageContext;
+
+RoutineLanguageContext.prototype.LANGUAGE = function() {
+ return this.getToken(SqlParser.LANGUAGE, 0);
+};
+
+RoutineLanguageContext.prototype.SQL = function() {
+ return this.getToken(SqlParser.SQL, 0);
+};
+RoutineLanguageContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterRoutineLanguage(this);
+ }
+};
+
+RoutineLanguageContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitRoutineLanguage(this);
+ }
+};
+
+RoutineLanguageContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitRoutineLanguage(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function RoutineCommentContext(parser, ctx) {
+ RoutineOptionContext.call(this, parser);
+ RoutineOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+RoutineCommentContext.prototype = Object.create(RoutineOptionContext.prototype);
+RoutineCommentContext.prototype.constructor = RoutineCommentContext;
+
+SqlParser.RoutineCommentContext = RoutineCommentContext;
+
+RoutineCommentContext.prototype.COMMENT = function() {
+ return this.getToken(SqlParser.COMMENT, 0);
+};
+
+RoutineCommentContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+RoutineCommentContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterRoutineComment(this);
+ }
+};
+
+RoutineCommentContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitRoutineComment(this);
+ }
+};
+
+RoutineCommentContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitRoutineComment(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function RoutineSecurityContext(parser, ctx) {
+ RoutineOptionContext.call(this, parser);
+ this.context = null; // Token;
+ RoutineOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+RoutineSecurityContext.prototype = Object.create(RoutineOptionContext.prototype);
+RoutineSecurityContext.prototype.constructor = RoutineSecurityContext;
+
+SqlParser.RoutineSecurityContext = RoutineSecurityContext;
+
+RoutineSecurityContext.prototype.SQL = function() {
+ return this.getToken(SqlParser.SQL, 0);
+};
+
+RoutineSecurityContext.prototype.SECURITY = function() {
+ return this.getToken(SqlParser.SECURITY, 0);
+};
+
+RoutineSecurityContext.prototype.DEFINER = function() {
+ return this.getToken(SqlParser.DEFINER, 0);
+};
+
+RoutineSecurityContext.prototype.INVOKER = function() {
+ return this.getToken(SqlParser.INVOKER, 0);
+};
+RoutineSecurityContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterRoutineSecurity(this);
+ }
+};
+
+RoutineSecurityContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitRoutineSecurity(this);
+ }
+};
+
+RoutineSecurityContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitRoutineSecurity(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function RoutineDataContext(parser, ctx) {
+ RoutineOptionContext.call(this, parser);
+ RoutineOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+RoutineDataContext.prototype = Object.create(RoutineOptionContext.prototype);
+RoutineDataContext.prototype.constructor = RoutineDataContext;
+
+SqlParser.RoutineDataContext = RoutineDataContext;
+
+RoutineDataContext.prototype.CONTAINS = function() {
+ return this.getToken(SqlParser.CONTAINS, 0);
+};
+
+RoutineDataContext.prototype.SQL = function() {
+ return this.getToken(SqlParser.SQL, 0);
+};
+
+RoutineDataContext.prototype.NO = function() {
+ return this.getToken(SqlParser.NO, 0);
+};
+
+RoutineDataContext.prototype.READS = function() {
+ return this.getToken(SqlParser.READS, 0);
+};
+
+RoutineDataContext.prototype.DATA = function() {
+ return this.getToken(SqlParser.DATA, 0);
+};
+
+RoutineDataContext.prototype.MODIFIES = function() {
+ return this.getToken(SqlParser.MODIFIES, 0);
+};
+RoutineDataContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterRoutineData(this);
+ }
+};
+
+RoutineDataContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitRoutineData(this);
+ }
+};
+
+RoutineDataContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitRoutineData(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+SqlParser.RoutineOptionContext = RoutineOptionContext;
+
+SqlParser.prototype.routineOption = function() {
+
+ var localctx = new RoutineOptionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 72, SqlParser.RULE_routineOption);
+ var _la = 0; // Token type
+ try {
+ this.state = 1382;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.COMMENT:
+ localctx = new RoutineCommentContext(this, localctx);
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1359;
+ this.match(SqlParser.COMMENT);
+ this.state = 1360;
+ this.match(SqlParser.STRING_LITERAL);
+ break;
+ case SqlParser.LANGUAGE:
+ localctx = new RoutineLanguageContext(this, localctx);
+ this.enterOuterAlt(localctx, 2);
+ this.state = 1361;
+ this.match(SqlParser.LANGUAGE);
+ this.state = 1362;
+ this.match(SqlParser.SQL);
+ break;
+ case SqlParser.DETERMINISTIC:
+ case SqlParser.NOT:
+ localctx = new RoutineBehaviorContext(this, localctx);
+ this.enterOuterAlt(localctx, 3);
+ this.state = 1364;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.NOT) {
+ this.state = 1363;
+ this.match(SqlParser.NOT);
+ }
+
+ this.state = 1366;
+ this.match(SqlParser.DETERMINISTIC);
+ break;
+ case SqlParser.MODIFIES:
+ case SqlParser.READS:
+ case SqlParser.CONTAINS:
+ case SqlParser.NO:
+ localctx = new RoutineDataContext(this, localctx);
+ this.enterOuterAlt(localctx, 4);
+ this.state = 1377;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.CONTAINS:
+ this.state = 1367;
+ this.match(SqlParser.CONTAINS);
+ this.state = 1368;
+ this.match(SqlParser.SQL);
+ break;
+ case SqlParser.NO:
+ this.state = 1369;
+ this.match(SqlParser.NO);
+ this.state = 1370;
+ this.match(SqlParser.SQL);
+ break;
+ case SqlParser.READS:
+ this.state = 1371;
+ this.match(SqlParser.READS);
+ this.state = 1372;
+ this.match(SqlParser.SQL);
+ this.state = 1373;
+ this.match(SqlParser.DATA);
+ break;
+ case SqlParser.MODIFIES:
+ this.state = 1374;
+ this.match(SqlParser.MODIFIES);
+ this.state = 1375;
+ this.match(SqlParser.SQL);
+ this.state = 1376;
+ this.match(SqlParser.DATA);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ break;
+ case SqlParser.SQL:
+ localctx = new RoutineSecurityContext(this, localctx);
+ this.enterOuterAlt(localctx, 5);
+ this.state = 1379;
+ this.match(SqlParser.SQL);
+ this.state = 1380;
+ this.match(SqlParser.SECURITY);
+ this.state = 1381;
+ localctx.context = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.DEFINER || _la===SqlParser.INVOKER)) {
+ localctx.context = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function ServerOptionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_serverOption;
+ return this;
+}
+
+ServerOptionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+ServerOptionContext.prototype.constructor = ServerOptionContext;
+
+ServerOptionContext.prototype.HOST = function() {
+ return this.getToken(SqlParser.HOST, 0);
+};
+
+ServerOptionContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+ServerOptionContext.prototype.DATABASE = function() {
+ return this.getToken(SqlParser.DATABASE, 0);
+};
+
+ServerOptionContext.prototype.USER = function() {
+ return this.getToken(SqlParser.USER, 0);
+};
+
+ServerOptionContext.prototype.PASSWORD = function() {
+ return this.getToken(SqlParser.PASSWORD, 0);
+};
+
+ServerOptionContext.prototype.SOCKET = function() {
+ return this.getToken(SqlParser.SOCKET, 0);
+};
+
+ServerOptionContext.prototype.OWNER = function() {
+ return this.getToken(SqlParser.OWNER, 0);
+};
+
+ServerOptionContext.prototype.PORT = function() {
+ return this.getToken(SqlParser.PORT, 0);
+};
+
+ServerOptionContext.prototype.decimalLiteral = function() {
+ return this.getTypedRuleContext(DecimalLiteralContext,0);
+};
+
+ServerOptionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterServerOption(this);
+ }
+};
+
+ServerOptionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitServerOption(this);
+ }
+};
+
+ServerOptionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitServerOption(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.ServerOptionContext = ServerOptionContext;
+
+SqlParser.prototype.serverOption = function() {
+
+ var localctx = new ServerOptionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 74, SqlParser.RULE_serverOption);
+ try {
+ this.state = 1398;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.HOST:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1384;
+ this.match(SqlParser.HOST);
+ this.state = 1385;
+ this.match(SqlParser.STRING_LITERAL);
+ break;
+ case SqlParser.DATABASE:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 1386;
+ this.match(SqlParser.DATABASE);
+ this.state = 1387;
+ this.match(SqlParser.STRING_LITERAL);
+ break;
+ case SqlParser.USER:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 1388;
+ this.match(SqlParser.USER);
+ this.state = 1389;
+ this.match(SqlParser.STRING_LITERAL);
+ break;
+ case SqlParser.PASSWORD:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 1390;
+ this.match(SqlParser.PASSWORD);
+ this.state = 1391;
+ this.match(SqlParser.STRING_LITERAL);
+ break;
+ case SqlParser.SOCKET:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 1392;
+ this.match(SqlParser.SOCKET);
+ this.state = 1393;
+ this.match(SqlParser.STRING_LITERAL);
+ break;
+ case SqlParser.OWNER:
+ this.enterOuterAlt(localctx, 6);
+ this.state = 1394;
+ this.match(SqlParser.OWNER);
+ this.state = 1395;
+ this.match(SqlParser.STRING_LITERAL);
+ break;
+ case SqlParser.PORT:
+ this.enterOuterAlt(localctx, 7);
+ this.state = 1396;
+ this.match(SqlParser.PORT);
+ this.state = 1397;
+ this.decimalLiteral();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function CreateDefinitionsContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_createDefinitions;
+ return this;
+}
+
+CreateDefinitionsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+CreateDefinitionsContext.prototype.constructor = CreateDefinitionsContext;
+
+CreateDefinitionsContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+CreateDefinitionsContext.prototype.createDefinition = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(CreateDefinitionContext);
+ } else {
+ return this.getTypedRuleContext(CreateDefinitionContext,i);
+ }
+};
+
+CreateDefinitionsContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+CreateDefinitionsContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+CreateDefinitionsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterCreateDefinitions(this);
+ }
+};
+
+CreateDefinitionsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitCreateDefinitions(this);
+ }
+};
+
+CreateDefinitionsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitCreateDefinitions(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.CreateDefinitionsContext = CreateDefinitionsContext;
+
+SqlParser.prototype.createDefinitions = function() {
+
+ var localctx = new CreateDefinitionsContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 76, SqlParser.RULE_createDefinitions);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1400;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 1401;
+ this.createDefinition();
+ this.state = 1406;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 1402;
+ this.match(SqlParser.COMMA);
+ this.state = 1403;
+ this.createDefinition();
+ this.state = 1408;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 1409;
+ this.match(SqlParser.RR_BRACKET);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function CreateDefinitionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_createDefinition;
+ return this;
+}
+
+CreateDefinitionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+CreateDefinitionContext.prototype.constructor = CreateDefinitionContext;
+
+
+
+CreateDefinitionContext.prototype.copyFrom = function(ctx) {
+ antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx);
+};
+
+
+function ColumnDeclarationContext(parser, ctx) {
+ CreateDefinitionContext.call(this, parser);
+ CreateDefinitionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+ColumnDeclarationContext.prototype = Object.create(CreateDefinitionContext.prototype);
+ColumnDeclarationContext.prototype.constructor = ColumnDeclarationContext;
+
+SqlParser.ColumnDeclarationContext = ColumnDeclarationContext;
+
+ColumnDeclarationContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+ColumnDeclarationContext.prototype.columnDefinition = function() {
+ return this.getTypedRuleContext(ColumnDefinitionContext,0);
+};
+ColumnDeclarationContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterColumnDeclaration(this);
+ }
+};
+
+ColumnDeclarationContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitColumnDeclaration(this);
+ }
+};
+
+ColumnDeclarationContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitColumnDeclaration(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function ConstraintDeclarationContext(parser, ctx) {
+ CreateDefinitionContext.call(this, parser);
+ CreateDefinitionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+ConstraintDeclarationContext.prototype = Object.create(CreateDefinitionContext.prototype);
+ConstraintDeclarationContext.prototype.constructor = ConstraintDeclarationContext;
+
+SqlParser.ConstraintDeclarationContext = ConstraintDeclarationContext;
+
+ConstraintDeclarationContext.prototype.tableConstraint = function() {
+ return this.getTypedRuleContext(TableConstraintContext,0);
+};
+ConstraintDeclarationContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterConstraintDeclaration(this);
+ }
+};
+
+ConstraintDeclarationContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitConstraintDeclaration(this);
+ }
+};
+
+ConstraintDeclarationContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitConstraintDeclaration(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function IndexDeclarationContext(parser, ctx) {
+ CreateDefinitionContext.call(this, parser);
+ CreateDefinitionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+IndexDeclarationContext.prototype = Object.create(CreateDefinitionContext.prototype);
+IndexDeclarationContext.prototype.constructor = IndexDeclarationContext;
+
+SqlParser.IndexDeclarationContext = IndexDeclarationContext;
+
+IndexDeclarationContext.prototype.indexColumnDefinition = function() {
+ return this.getTypedRuleContext(IndexColumnDefinitionContext,0);
+};
+IndexDeclarationContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterIndexDeclaration(this);
+ }
+};
+
+IndexDeclarationContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitIndexDeclaration(this);
+ }
+};
+
+IndexDeclarationContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitIndexDeclaration(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+SqlParser.CreateDefinitionContext = CreateDefinitionContext;
+
+SqlParser.prototype.createDefinition = function() {
+
+ var localctx = new CreateDefinitionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 78, SqlParser.RULE_createDefinition);
+ try {
+ this.state = 1416;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.CURRENT:
+ case SqlParser.DATABASE:
+ case SqlParser.DIAGNOSTICS:
+ case SqlParser.LEFT:
+ case SqlParser.NUMBER:
+ case SqlParser.RIGHT:
+ case SqlParser.STACKED:
+ case SqlParser.DATE:
+ case SqlParser.TIME:
+ case SqlParser.TIMESTAMP:
+ case SqlParser.DATETIME:
+ case SqlParser.YEAR:
+ case SqlParser.TEXT:
+ case SqlParser.ENUM:
+ case SqlParser.SERIAL:
+ case SqlParser.JSON_VALID:
+ case SqlParser.JSON_SCHEMA_VALID:
+ case SqlParser.COUNT:
+ case SqlParser.POSITION:
+ case SqlParser.ACCOUNT:
+ case SqlParser.ACTION:
+ case SqlParser.AFTER:
+ case SqlParser.AGGREGATE:
+ case SqlParser.ALGORITHM:
+ case SqlParser.ANY:
+ case SqlParser.AT:
+ case SqlParser.AUTHORS:
+ case SqlParser.AUTOCOMMIT:
+ case SqlParser.AUTOEXTEND_SIZE:
+ case SqlParser.AUTO_INCREMENT:
+ case SqlParser.AVG_ROW_LENGTH:
+ case SqlParser.BEGIN:
+ case SqlParser.BINLOG:
+ case SqlParser.BIT:
+ case SqlParser.BLOCK:
+ case SqlParser.BOOL:
+ case SqlParser.BOOLEAN:
+ case SqlParser.BTREE:
+ case SqlParser.CACHE:
+ case SqlParser.CASCADED:
+ case SqlParser.CHAIN:
+ case SqlParser.CHANGED:
+ case SqlParser.CHANNEL:
+ case SqlParser.CHECKSUM:
+ case SqlParser.PAGE_CHECKSUM:
+ case SqlParser.CIPHER:
+ case SqlParser.CLASS_ORIGIN:
+ case SqlParser.CLIENT:
+ case SqlParser.CLOSE:
+ case SqlParser.COALESCE:
+ case SqlParser.CODE:
+ case SqlParser.COLUMNS:
+ case SqlParser.COLUMN_FORMAT:
+ case SqlParser.COLUMN_NAME:
+ case SqlParser.COMMENT:
+ case SqlParser.COMMIT:
+ case SqlParser.COMPACT:
+ case SqlParser.COMPLETION:
+ case SqlParser.COMPRESSED:
+ case SqlParser.COMPRESSION:
+ case SqlParser.CONCURRENT:
+ case SqlParser.CONNECTION:
+ case SqlParser.CONSISTENT:
+ case SqlParser.CONSTRAINT_CATALOG:
+ case SqlParser.CONSTRAINT_SCHEMA:
+ case SqlParser.CONSTRAINT_NAME:
+ case SqlParser.CONTAINS:
+ case SqlParser.CONTEXT:
+ case SqlParser.CONTRIBUTORS:
+ case SqlParser.COPY:
+ case SqlParser.CPU:
+ case SqlParser.CURSOR_NAME:
+ case SqlParser.DATA:
+ case SqlParser.DATAFILE:
+ case SqlParser.DEALLOCATE:
+ case SqlParser.DEFAULT_AUTH:
+ case SqlParser.DEFINER:
+ case SqlParser.DELAY_KEY_WRITE:
+ case SqlParser.DES_KEY_FILE:
+ case SqlParser.DIRECTORY:
+ case SqlParser.DISABLE:
+ case SqlParser.DISCARD:
+ case SqlParser.DISK:
+ case SqlParser.DO:
+ case SqlParser.DUMPFILE:
+ case SqlParser.DUPLICATE:
+ case SqlParser.DYNAMIC:
+ case SqlParser.ENABLE:
+ case SqlParser.ENCRYPTION:
+ case SqlParser.END:
+ case SqlParser.ENDS:
+ case SqlParser.ENGINE:
+ case SqlParser.ENGINES:
+ case SqlParser.ERROR:
+ case SqlParser.ERRORS:
+ case SqlParser.ESCAPE:
+ case SqlParser.EVEN:
+ case SqlParser.EVENT:
+ case SqlParser.EVENTS:
+ case SqlParser.EVERY:
+ case SqlParser.EXCHANGE:
+ case SqlParser.EXCLUSIVE:
+ case SqlParser.EXPIRE:
+ case SqlParser.EXPORT:
+ case SqlParser.EXTENDED:
+ case SqlParser.EXTENT_SIZE:
+ case SqlParser.FAST:
+ case SqlParser.FAULTS:
+ case SqlParser.FIELDS:
+ case SqlParser.FILE_BLOCK_SIZE:
+ case SqlParser.FILTER:
+ case SqlParser.FIRST:
+ case SqlParser.FIXED:
+ case SqlParser.FLUSH:
+ case SqlParser.FOLLOWS:
+ case SqlParser.FOUND:
+ case SqlParser.FULL:
+ case SqlParser.FUNCTION:
+ case SqlParser.GENERAL:
+ case SqlParser.GLOBAL:
+ case SqlParser.GRANTS:
+ case SqlParser.GROUP_REPLICATION:
+ case SqlParser.HANDLER:
+ case SqlParser.HASH:
+ case SqlParser.HELP:
+ case SqlParser.HOST:
+ case SqlParser.HOSTS:
+ case SqlParser.IDENTIFIED:
+ case SqlParser.IGNORE_SERVER_IDS:
+ case SqlParser.IMPORT:
+ case SqlParser.INDEXES:
+ case SqlParser.INITIAL_SIZE:
+ case SqlParser.INPLACE:
+ case SqlParser.INSERT_METHOD:
+ case SqlParser.INSTALL:
+ case SqlParser.INSTANCE:
+ case SqlParser.INVISIBLE:
+ case SqlParser.INVOKER:
+ case SqlParser.IO:
+ case SqlParser.IO_THREAD:
+ case SqlParser.IPC:
+ case SqlParser.ISOLATION:
+ case SqlParser.ISSUER:
+ case SqlParser.JSON:
+ case SqlParser.KEY_BLOCK_SIZE:
+ case SqlParser.LANGUAGE:
+ case SqlParser.LAST:
+ case SqlParser.LEAVES:
+ case SqlParser.LESS:
+ case SqlParser.LEVEL:
+ case SqlParser.LIST:
+ case SqlParser.LOCAL:
+ case SqlParser.LOGFILE:
+ case SqlParser.LOGS:
+ case SqlParser.MASTER:
+ case SqlParser.MASTER_AUTO_POSITION:
+ case SqlParser.MASTER_CONNECT_RETRY:
+ case SqlParser.MASTER_DELAY:
+ case SqlParser.MASTER_HEARTBEAT_PERIOD:
+ case SqlParser.MASTER_HOST:
+ case SqlParser.MASTER_LOG_FILE:
+ case SqlParser.MASTER_LOG_POS:
+ case SqlParser.MASTER_PASSWORD:
+ case SqlParser.MASTER_PORT:
+ case SqlParser.MASTER_RETRY_COUNT:
+ case SqlParser.MASTER_SSL:
+ case SqlParser.MASTER_SSL_CA:
+ case SqlParser.MASTER_SSL_CAPATH:
+ case SqlParser.MASTER_SSL_CERT:
+ case SqlParser.MASTER_SSL_CIPHER:
+ case SqlParser.MASTER_SSL_CRL:
+ case SqlParser.MASTER_SSL_CRLPATH:
+ case SqlParser.MASTER_SSL_KEY:
+ case SqlParser.MASTER_TLS_VERSION:
+ case SqlParser.MASTER_USER:
+ case SqlParser.MAX_CONNECTIONS_PER_HOUR:
+ case SqlParser.MAX_QUERIES_PER_HOUR:
+ case SqlParser.MAX_ROWS:
+ case SqlParser.MAX_SIZE:
+ case SqlParser.MAX_UPDATES_PER_HOUR:
+ case SqlParser.MAX_USER_CONNECTIONS:
+ case SqlParser.MEDIUM:
+ case SqlParser.MERGE:
+ case SqlParser.MESSAGE_TEXT:
+ case SqlParser.MID:
+ case SqlParser.MIGRATE:
+ case SqlParser.MIN_ROWS:
+ case SqlParser.MODE:
+ case SqlParser.MODIFY:
+ case SqlParser.MUTEX:
+ case SqlParser.MYSQL:
+ case SqlParser.MYSQL_ERRNO:
+ case SqlParser.NAME:
+ case SqlParser.NAMES:
+ case SqlParser.NCHAR:
+ case SqlParser.NEVER:
+ case SqlParser.NEXT:
+ case SqlParser.NO:
+ case SqlParser.NODEGROUP:
+ case SqlParser.NONE:
+ case SqlParser.OFFLINE:
+ case SqlParser.OFFSET:
+ case SqlParser.OJ:
+ case SqlParser.OLD_PASSWORD:
+ case SqlParser.ONE:
+ case SqlParser.ONLINE:
+ case SqlParser.ONLY:
+ case SqlParser.OPEN:
+ case SqlParser.OPTIMIZER_COSTS:
+ case SqlParser.OPTIONS:
+ case SqlParser.OWNER:
+ case SqlParser.PACK_KEYS:
+ case SqlParser.PAGE:
+ case SqlParser.PARSER:
+ case SqlParser.PARTIAL:
+ case SqlParser.PARTITIONING:
+ case SqlParser.PARTITIONS:
+ case SqlParser.PASSWORD:
+ case SqlParser.PHASE:
+ case SqlParser.PLUGIN:
+ case SqlParser.PLUGIN_DIR:
+ case SqlParser.PLUGINS:
+ case SqlParser.PORT:
+ case SqlParser.PRECEDES:
+ case SqlParser.PREPARE:
+ case SqlParser.PRESERVE:
+ case SqlParser.PREV:
+ case SqlParser.PROCESSLIST:
+ case SqlParser.PROFILE:
+ case SqlParser.PROFILES:
+ case SqlParser.PROXY:
+ case SqlParser.QUERY:
+ case SqlParser.QUICK:
+ case SqlParser.REBUILD:
+ case SqlParser.RECOVER:
+ case SqlParser.REDO_BUFFER_SIZE:
+ case SqlParser.REDUNDANT:
+ case SqlParser.RELAY:
+ case SqlParser.RELAY_LOG_FILE:
+ case SqlParser.RELAY_LOG_POS:
+ case SqlParser.RELAYLOG:
+ case SqlParser.REMOVE:
+ case SqlParser.REORGANIZE:
+ case SqlParser.REPAIR:
+ case SqlParser.REPLICATE_DO_DB:
+ case SqlParser.REPLICATE_DO_TABLE:
+ case SqlParser.REPLICATE_IGNORE_DB:
+ case SqlParser.REPLICATE_IGNORE_TABLE:
+ case SqlParser.REPLICATE_REWRITE_DB:
+ case SqlParser.REPLICATE_WILD_DO_TABLE:
+ case SqlParser.REPLICATE_WILD_IGNORE_TABLE:
+ case SqlParser.REPLICATION:
+ case SqlParser.RESET:
+ case SqlParser.RESUME:
+ case SqlParser.RETURNED_SQLSTATE:
+ case SqlParser.RETURNS:
+ case SqlParser.ROLE:
+ case SqlParser.ROLLBACK:
+ case SqlParser.ROLLUP:
+ case SqlParser.ROTATE:
+ case SqlParser.ROW:
+ case SqlParser.ROWS:
+ case SqlParser.ROW_FORMAT:
+ case SqlParser.SAVEPOINT:
+ case SqlParser.SCHEDULE:
+ case SqlParser.SECURITY:
+ case SqlParser.SERVER:
+ case SqlParser.SESSION:
+ case SqlParser.SHARE:
+ case SqlParser.SHARED:
+ case SqlParser.SIGNED:
+ case SqlParser.SIMPLE:
+ case SqlParser.SLAVE:
+ case SqlParser.SLOW:
+ case SqlParser.SNAPSHOT:
+ case SqlParser.SOCKET:
+ case SqlParser.SOME:
+ case SqlParser.SONAME:
+ case SqlParser.SOUNDS:
+ case SqlParser.SOURCE:
+ case SqlParser.SQL_AFTER_GTIDS:
+ case SqlParser.SQL_AFTER_MTS_GAPS:
+ case SqlParser.SQL_BEFORE_GTIDS:
+ case SqlParser.SQL_BUFFER_RESULT:
+ case SqlParser.SQL_CACHE:
+ case SqlParser.SQL_NO_CACHE:
+ case SqlParser.SQL_THREAD:
+ case SqlParser.START:
+ case SqlParser.STARTS:
+ case SqlParser.STATS_AUTO_RECALC:
+ case SqlParser.STATS_PERSISTENT:
+ case SqlParser.STATS_SAMPLE_PAGES:
+ case SqlParser.STATUS:
+ case SqlParser.STOP:
+ case SqlParser.STORAGE:
+ case SqlParser.STRING:
+ case SqlParser.SUBCLASS_ORIGIN:
+ case SqlParser.SUBJECT:
+ case SqlParser.SUBPARTITION:
+ case SqlParser.SUBPARTITIONS:
+ case SqlParser.SUSPEND:
+ case SqlParser.SWAPS:
+ case SqlParser.SWITCHES:
+ case SqlParser.TABLE_NAME:
+ case SqlParser.TABLESPACE:
+ case SqlParser.TEMPORARY:
+ case SqlParser.TEMPTABLE:
+ case SqlParser.THAN:
+ case SqlParser.TRADITIONAL:
+ case SqlParser.TRANSACTION:
+ case SqlParser.TRANSACTIONAL:
+ case SqlParser.TRIGGERS:
+ case SqlParser.TRUNCATE:
+ case SqlParser.UNDEFINED:
+ case SqlParser.UNDOFILE:
+ case SqlParser.UNDO_BUFFER_SIZE:
+ case SqlParser.UNINSTALL:
+ case SqlParser.UNKNOWN:
+ case SqlParser.UNTIL:
+ case SqlParser.UPGRADE:
+ case SqlParser.USER:
+ case SqlParser.USE_FRM:
+ case SqlParser.USER_RESOURCES:
+ case SqlParser.VALIDATION:
+ case SqlParser.VALUE:
+ case SqlParser.VARIABLES:
+ case SqlParser.VIEW:
+ case SqlParser.VISIBLE:
+ case SqlParser.WAIT:
+ case SqlParser.WARNINGS:
+ case SqlParser.WITHOUT:
+ case SqlParser.WORK:
+ case SqlParser.WRAPPER:
+ case SqlParser.X509:
+ case SqlParser.XA:
+ case SqlParser.XML:
+ case SqlParser.INTERNAL:
+ case SqlParser.QUARTER:
+ case SqlParser.MONTH:
+ case SqlParser.DAY:
+ case SqlParser.HOUR:
+ case SqlParser.MINUTE:
+ case SqlParser.WEEK:
+ case SqlParser.SECOND:
+ case SqlParser.MICROSECOND:
+ case SqlParser.TABLES:
+ case SqlParser.ROUTINE:
+ case SqlParser.EXECUTE:
+ case SqlParser.FILE:
+ case SqlParser.PROCESS:
+ case SqlParser.RELOAD:
+ case SqlParser.SHUTDOWN:
+ case SqlParser.SUPER:
+ case SqlParser.PRIVILEGES:
+ case SqlParser.AUDIT_ADMIN:
+ case SqlParser.BACKUP_ADMIN:
+ case SqlParser.BINLOG_ADMIN:
+ case SqlParser.BINLOG_ENCRYPTION_ADMIN:
+ case SqlParser.CLONE_ADMIN:
+ case SqlParser.CONNECTION_ADMIN:
+ case SqlParser.ENCRYPTION_KEY_ADMIN:
+ case SqlParser.FIREWALL_ADMIN:
+ case SqlParser.FIREWALL_USER:
+ case SqlParser.GROUP_REPLICATION_ADMIN:
+ case SqlParser.INNODB_REDO_LOG_ARCHIVE:
+ case SqlParser.NDB_STORED_USER:
+ case SqlParser.PERSIST_RO_VARIABLES_ADMIN:
+ case SqlParser.REPLICATION_APPLIER:
+ case SqlParser.REPLICATION_SLAVE_ADMIN:
+ case SqlParser.RESOURCE_GROUP_ADMIN:
+ case SqlParser.RESOURCE_GROUP_USER:
+ case SqlParser.ROLE_ADMIN:
+ case SqlParser.SESSION_VARIABLES_ADMIN:
+ case SqlParser.SET_USER_ID:
+ case SqlParser.SHOW_ROUTINE:
+ case SqlParser.SYSTEM_VARIABLES_ADMIN:
+ case SqlParser.TABLE_ENCRYPTION_ADMIN:
+ case SqlParser.VERSION_TOKEN_ADMIN:
+ case SqlParser.XA_RECOVER_ADMIN:
+ case SqlParser.ARMSCII8:
+ case SqlParser.ASCII:
+ case SqlParser.BIG5:
+ case SqlParser.CP1250:
+ case SqlParser.CP1251:
+ case SqlParser.CP1256:
+ case SqlParser.CP1257:
+ case SqlParser.CP850:
+ case SqlParser.CP852:
+ case SqlParser.CP866:
+ case SqlParser.CP932:
+ case SqlParser.DEC8:
+ case SqlParser.EUCJPMS:
+ case SqlParser.EUCKR:
+ case SqlParser.GB2312:
+ case SqlParser.GBK:
+ case SqlParser.GEOSTD8:
+ case SqlParser.GREEK:
+ case SqlParser.HEBREW:
+ case SqlParser.HP8:
+ case SqlParser.KEYBCS2:
+ case SqlParser.KOI8R:
+ case SqlParser.KOI8U:
+ case SqlParser.LATIN1:
+ case SqlParser.LATIN2:
+ case SqlParser.LATIN5:
+ case SqlParser.LATIN7:
+ case SqlParser.MACCE:
+ case SqlParser.MACROMAN:
+ case SqlParser.SJIS:
+ case SqlParser.SWE7:
+ case SqlParser.TIS620:
+ case SqlParser.UCS2:
+ case SqlParser.UJIS:
+ case SqlParser.UTF16:
+ case SqlParser.UTF16LE:
+ case SqlParser.UTF32:
+ case SqlParser.UTF8:
+ case SqlParser.UTF8MB3:
+ case SqlParser.UTF8MB4:
+ case SqlParser.ARCHIVE:
+ case SqlParser.BLACKHOLE:
+ case SqlParser.CSV:
+ case SqlParser.FEDERATED:
+ case SqlParser.INNODB:
+ case SqlParser.MEMORY:
+ case SqlParser.MRG_MYISAM:
+ case SqlParser.MYISAM:
+ case SqlParser.NDB:
+ case SqlParser.NDBCLUSTER:
+ case SqlParser.PERFORMANCE_SCHEMA:
+ case SqlParser.TOKUDB:
+ case SqlParser.REPEATABLE:
+ case SqlParser.COMMITTED:
+ case SqlParser.UNCOMMITTED:
+ case SqlParser.SERIALIZABLE:
+ case SqlParser.GEOMETRYCOLLECTION:
+ case SqlParser.LINESTRING:
+ case SqlParser.MULTILINESTRING:
+ case SqlParser.MULTIPOINT:
+ case SqlParser.MULTIPOLYGON:
+ case SqlParser.POINT:
+ case SqlParser.POLYGON:
+ case SqlParser.ABS:
+ case SqlParser.ACOS:
+ case SqlParser.ADDDATE:
+ case SqlParser.ADDTIME:
+ case SqlParser.AES_DECRYPT:
+ case SqlParser.AES_ENCRYPT:
+ case SqlParser.AREA:
+ case SqlParser.ASBINARY:
+ case SqlParser.ASIN:
+ case SqlParser.ASTEXT:
+ case SqlParser.ASWKB:
+ case SqlParser.ASWKT:
+ case SqlParser.ASYMMETRIC_DECRYPT:
+ case SqlParser.ASYMMETRIC_DERIVE:
+ case SqlParser.ASYMMETRIC_ENCRYPT:
+ case SqlParser.ASYMMETRIC_SIGN:
+ case SqlParser.ASYMMETRIC_VERIFY:
+ case SqlParser.ATAN:
+ case SqlParser.ATAN2:
+ case SqlParser.BENCHMARK:
+ case SqlParser.BIN:
+ case SqlParser.BIT_COUNT:
+ case SqlParser.BIT_LENGTH:
+ case SqlParser.BUFFER:
+ case SqlParser.CATALOG_NAME:
+ case SqlParser.CEIL:
+ case SqlParser.CEILING:
+ case SqlParser.CENTROID:
+ case SqlParser.CHARACTER_LENGTH:
+ case SqlParser.CHARSET:
+ case SqlParser.CHAR_LENGTH:
+ case SqlParser.COERCIBILITY:
+ case SqlParser.COLLATION:
+ case SqlParser.COMPRESS:
+ case SqlParser.CONCAT:
+ case SqlParser.CONCAT_WS:
+ case SqlParser.CONNECTION_ID:
+ case SqlParser.CONV:
+ case SqlParser.CONVERT_TZ:
+ case SqlParser.COS:
+ case SqlParser.COT:
+ case SqlParser.CRC32:
+ case SqlParser.CREATE_ASYMMETRIC_PRIV_KEY:
+ case SqlParser.CREATE_ASYMMETRIC_PUB_KEY:
+ case SqlParser.CREATE_DH_PARAMETERS:
+ case SqlParser.CREATE_DIGEST:
+ case SqlParser.CROSSES:
+ case SqlParser.DATEDIFF:
+ case SqlParser.DATE_FORMAT:
+ case SqlParser.DAYNAME:
+ case SqlParser.DAYOFMONTH:
+ case SqlParser.DAYOFWEEK:
+ case SqlParser.DAYOFYEAR:
+ case SqlParser.DECODE:
+ case SqlParser.DEGREES:
+ case SqlParser.DES_DECRYPT:
+ case SqlParser.DES_ENCRYPT:
+ case SqlParser.DIMENSION:
+ case SqlParser.DISJOINT:
+ case SqlParser.ELT:
+ case SqlParser.ENCODE:
+ case SqlParser.ENCRYPT:
+ case SqlParser.ENDPOINT:
+ case SqlParser.ENVELOPE:
+ case SqlParser.EQUALS:
+ case SqlParser.EXP:
+ case SqlParser.EXPORT_SET:
+ case SqlParser.EXTERIORRING:
+ case SqlParser.EXTRACTVALUE:
+ case SqlParser.FIELD:
+ case SqlParser.FIND_IN_SET:
+ case SqlParser.FLOOR:
+ case SqlParser.FORMAT:
+ case SqlParser.FOUND_ROWS:
+ case SqlParser.FROM_BASE64:
+ case SqlParser.FROM_DAYS:
+ case SqlParser.FROM_UNIXTIME:
+ case SqlParser.GEOMCOLLFROMTEXT:
+ case SqlParser.GEOMCOLLFROMWKB:
+ case SqlParser.GEOMETRYCOLLECTIONFROMTEXT:
+ case SqlParser.GEOMETRYCOLLECTIONFROMWKB:
+ case SqlParser.GEOMETRYFROMTEXT:
+ case SqlParser.GEOMETRYFROMWKB:
+ case SqlParser.GEOMETRYN:
+ case SqlParser.GEOMETRYTYPE:
+ case SqlParser.GEOMFROMTEXT:
+ case SqlParser.GEOMFROMWKB:
+ case SqlParser.GET_FORMAT:
+ case SqlParser.GET_LOCK:
+ case SqlParser.GLENGTH:
+ case SqlParser.GREATEST:
+ case SqlParser.GTID_SUBSET:
+ case SqlParser.GTID_SUBTRACT:
+ case SqlParser.HEX:
+ case SqlParser.IFNULL:
+ case SqlParser.INET6_ATON:
+ case SqlParser.INET6_NTOA:
+ case SqlParser.INET_ATON:
+ case SqlParser.INET_NTOA:
+ case SqlParser.INSTR:
+ case SqlParser.INTERIORRINGN:
+ case SqlParser.INTERSECTS:
+ case SqlParser.ISCLOSED:
+ case SqlParser.ISEMPTY:
+ case SqlParser.ISNULL:
+ case SqlParser.ISSIMPLE:
+ case SqlParser.IS_FREE_LOCK:
+ case SqlParser.IS_IPV4:
+ case SqlParser.IS_IPV4_COMPAT:
+ case SqlParser.IS_IPV4_MAPPED:
+ case SqlParser.IS_IPV6:
+ case SqlParser.IS_USED_LOCK:
+ case SqlParser.LAST_INSERT_ID:
+ case SqlParser.LCASE:
+ case SqlParser.LEAST:
+ case SqlParser.LENGTH:
+ case SqlParser.LINEFROMTEXT:
+ case SqlParser.LINEFROMWKB:
+ case SqlParser.LINESTRINGFROMTEXT:
+ case SqlParser.LINESTRINGFROMWKB:
+ case SqlParser.LN:
+ case SqlParser.LOAD_FILE:
+ case SqlParser.LOCATE:
+ case SqlParser.LOG:
+ case SqlParser.LOG10:
+ case SqlParser.LOG2:
+ case SqlParser.LOWER:
+ case SqlParser.LPAD:
+ case SqlParser.LTRIM:
+ case SqlParser.MAKEDATE:
+ case SqlParser.MAKETIME:
+ case SqlParser.MAKE_SET:
+ case SqlParser.MASTER_POS_WAIT:
+ case SqlParser.MBRCONTAINS:
+ case SqlParser.MBRDISJOINT:
+ case SqlParser.MBREQUAL:
+ case SqlParser.MBRINTERSECTS:
+ case SqlParser.MBROVERLAPS:
+ case SqlParser.MBRTOUCHES:
+ case SqlParser.MBRWITHIN:
+ case SqlParser.MD5:
+ case SqlParser.MLINEFROMTEXT:
+ case SqlParser.MLINEFROMWKB:
+ case SqlParser.MONTHNAME:
+ case SqlParser.MPOINTFROMTEXT:
+ case SqlParser.MPOINTFROMWKB:
+ case SqlParser.MPOLYFROMTEXT:
+ case SqlParser.MPOLYFROMWKB:
+ case SqlParser.MULTILINESTRINGFROMTEXT:
+ case SqlParser.MULTILINESTRINGFROMWKB:
+ case SqlParser.MULTIPOINTFROMTEXT:
+ case SqlParser.MULTIPOINTFROMWKB:
+ case SqlParser.MULTIPOLYGONFROMTEXT:
+ case SqlParser.MULTIPOLYGONFROMWKB:
+ case SqlParser.NAME_CONST:
+ case SqlParser.NULLIF:
+ case SqlParser.NUMGEOMETRIES:
+ case SqlParser.NUMINTERIORRINGS:
+ case SqlParser.NUMPOINTS:
+ case SqlParser.OCT:
+ case SqlParser.OCTET_LENGTH:
+ case SqlParser.ORD:
+ case SqlParser.OVERLAPS:
+ case SqlParser.PERIOD_ADD:
+ case SqlParser.PERIOD_DIFF:
+ case SqlParser.PI:
+ case SqlParser.POINTFROMTEXT:
+ case SqlParser.POINTFROMWKB:
+ case SqlParser.POINTN:
+ case SqlParser.POLYFROMTEXT:
+ case SqlParser.POLYFROMWKB:
+ case SqlParser.POLYGONFROMTEXT:
+ case SqlParser.POLYGONFROMWKB:
+ case SqlParser.POW:
+ case SqlParser.POWER:
+ case SqlParser.QUOTE:
+ case SqlParser.RADIANS:
+ case SqlParser.RAND:
+ case SqlParser.RANDOM_BYTES:
+ case SqlParser.RELEASE_LOCK:
+ case SqlParser.REVERSE:
+ case SqlParser.ROUND:
+ case SqlParser.ROW_COUNT:
+ case SqlParser.RPAD:
+ case SqlParser.RTRIM:
+ case SqlParser.SEC_TO_TIME:
+ case SqlParser.SESSION_USER:
+ case SqlParser.SHA:
+ case SqlParser.SHA1:
+ case SqlParser.SHA2:
+ case SqlParser.SCHEMA_NAME:
+ case SqlParser.SIGN:
+ case SqlParser.SIN:
+ case SqlParser.SLEEP:
+ case SqlParser.SOUNDEX:
+ case SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS:
+ case SqlParser.SQRT:
+ case SqlParser.SRID:
+ case SqlParser.STARTPOINT:
+ case SqlParser.STRCMP:
+ case SqlParser.STR_TO_DATE:
+ case SqlParser.ST_AREA:
+ case SqlParser.ST_ASBINARY:
+ case SqlParser.ST_ASTEXT:
+ case SqlParser.ST_ASWKB:
+ case SqlParser.ST_ASWKT:
+ case SqlParser.ST_BUFFER:
+ case SqlParser.ST_CENTROID:
+ case SqlParser.ST_CONTAINS:
+ case SqlParser.ST_CROSSES:
+ case SqlParser.ST_DIFFERENCE:
+ case SqlParser.ST_DIMENSION:
+ case SqlParser.ST_DISJOINT:
+ case SqlParser.ST_DISTANCE:
+ case SqlParser.ST_ENDPOINT:
+ case SqlParser.ST_ENVELOPE:
+ case SqlParser.ST_EQUALS:
+ case SqlParser.ST_EXTERIORRING:
+ case SqlParser.ST_GEOMCOLLFROMTEXT:
+ case SqlParser.ST_GEOMCOLLFROMTXT:
+ case SqlParser.ST_GEOMCOLLFROMWKB:
+ case SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT:
+ case SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB:
+ case SqlParser.ST_GEOMETRYFROMTEXT:
+ case SqlParser.ST_GEOMETRYFROMWKB:
+ case SqlParser.ST_GEOMETRYN:
+ case SqlParser.ST_GEOMETRYTYPE:
+ case SqlParser.ST_GEOMFROMTEXT:
+ case SqlParser.ST_GEOMFROMWKB:
+ case SqlParser.ST_INTERIORRINGN:
+ case SqlParser.ST_INTERSECTION:
+ case SqlParser.ST_INTERSECTS:
+ case SqlParser.ST_ISCLOSED:
+ case SqlParser.ST_ISEMPTY:
+ case SqlParser.ST_ISSIMPLE:
+ case SqlParser.ST_LINEFROMTEXT:
+ case SqlParser.ST_LINEFROMWKB:
+ case SqlParser.ST_LINESTRINGFROMTEXT:
+ case SqlParser.ST_LINESTRINGFROMWKB:
+ case SqlParser.ST_NUMGEOMETRIES:
+ case SqlParser.ST_NUMINTERIORRING:
+ case SqlParser.ST_NUMINTERIORRINGS:
+ case SqlParser.ST_NUMPOINTS:
+ case SqlParser.ST_OVERLAPS:
+ case SqlParser.ST_POINTFROMTEXT:
+ case SqlParser.ST_POINTFROMWKB:
+ case SqlParser.ST_POINTN:
+ case SqlParser.ST_POLYFROMTEXT:
+ case SqlParser.ST_POLYFROMWKB:
+ case SqlParser.ST_POLYGONFROMTEXT:
+ case SqlParser.ST_POLYGONFROMWKB:
+ case SqlParser.ST_SRID:
+ case SqlParser.ST_STARTPOINT:
+ case SqlParser.ST_SYMDIFFERENCE:
+ case SqlParser.ST_TOUCHES:
+ case SqlParser.ST_UNION:
+ case SqlParser.ST_WITHIN:
+ case SqlParser.ST_X:
+ case SqlParser.ST_Y:
+ case SqlParser.SUBDATE:
+ case SqlParser.SUBSTRING_INDEX:
+ case SqlParser.SUBTIME:
+ case SqlParser.SYSTEM_USER:
+ case SqlParser.TAN:
+ case SqlParser.TIMEDIFF:
+ case SqlParser.TIMESTAMPADD:
+ case SqlParser.TIMESTAMPDIFF:
+ case SqlParser.TIME_FORMAT:
+ case SqlParser.TIME_TO_SEC:
+ case SqlParser.TOUCHES:
+ case SqlParser.TO_BASE64:
+ case SqlParser.TO_DAYS:
+ case SqlParser.TO_SECONDS:
+ case SqlParser.UCASE:
+ case SqlParser.UNCOMPRESS:
+ case SqlParser.UNCOMPRESSED_LENGTH:
+ case SqlParser.UNHEX:
+ case SqlParser.UNIX_TIMESTAMP:
+ case SqlParser.UPDATEXML:
+ case SqlParser.UPPER:
+ case SqlParser.UUID:
+ case SqlParser.UUID_SHORT:
+ case SqlParser.VALIDATE_PASSWORD_STRENGTH:
+ case SqlParser.VERSION:
+ case SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS:
+ case SqlParser.WEEKDAY:
+ case SqlParser.WEEKOFYEAR:
+ case SqlParser.WEIGHT_STRING:
+ case SqlParser.WITHIN:
+ case SqlParser.YEARWEEK:
+ case SqlParser.Y_FUNCTION:
+ case SqlParser.X_FUNCTION:
+ case SqlParser.CHARSET_REVERSE_QOUTE_STRING:
+ case SqlParser.STRING_LITERAL:
+ case SqlParser.ID:
+ case SqlParser.REVERSE_QUOTE_ID:
+ localctx = new ColumnDeclarationContext(this, localctx);
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1411;
+ this.uid();
+ this.state = 1412;
+ this.columnDefinition();
+ break;
+ case SqlParser.CHECK:
+ case SqlParser.CONSTRAINT:
+ case SqlParser.FOREIGN:
+ case SqlParser.PRIMARY:
+ case SqlParser.UNIQUE:
+ localctx = new ConstraintDeclarationContext(this, localctx);
+ this.enterOuterAlt(localctx, 2);
+ this.state = 1414;
+ this.tableConstraint();
+ break;
+ case SqlParser.FULLTEXT:
+ case SqlParser.INDEX:
+ case SqlParser.KEY:
+ case SqlParser.SPATIAL:
+ localctx = new IndexDeclarationContext(this, localctx);
+ this.enterOuterAlt(localctx, 3);
+ this.state = 1415;
+ this.indexColumnDefinition();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function ColumnDefinitionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_columnDefinition;
+ return this;
+}
+
+ColumnDefinitionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+ColumnDefinitionContext.prototype.constructor = ColumnDefinitionContext;
+
+ColumnDefinitionContext.prototype.dataType = function() {
+ return this.getTypedRuleContext(DataTypeContext,0);
+};
+
+ColumnDefinitionContext.prototype.columnConstraint = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ColumnConstraintContext);
+ } else {
+ return this.getTypedRuleContext(ColumnConstraintContext,i);
+ }
+};
+
+ColumnDefinitionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterColumnDefinition(this);
+ }
+};
+
+ColumnDefinitionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitColumnDefinition(this);
+ }
+};
+
+ColumnDefinitionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitColumnDefinition(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.ColumnDefinitionContext = ColumnDefinitionContext;
+
+SqlParser.prototype.columnDefinition = function() {
+
+ var localctx = new ColumnDefinitionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 80, SqlParser.RULE_columnDefinition);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1418;
+ this.dataType();
+ this.state = 1422;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,130,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 1419;
+ this.columnConstraint();
+ }
+ this.state = 1424;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,130,this._ctx);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function ColumnConstraintContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_columnConstraint;
+ return this;
+}
+
+ColumnConstraintContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+ColumnConstraintContext.prototype.constructor = ColumnConstraintContext;
+
+
+
+ColumnConstraintContext.prototype.copyFrom = function(ctx) {
+ antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx);
+};
+
+
+function StorageColumnConstraintContext(parser, ctx) {
+ ColumnConstraintContext.call(this, parser);
+ this.storageval = null; // Token;
+ ColumnConstraintContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+StorageColumnConstraintContext.prototype = Object.create(ColumnConstraintContext.prototype);
+StorageColumnConstraintContext.prototype.constructor = StorageColumnConstraintContext;
+
+SqlParser.StorageColumnConstraintContext = StorageColumnConstraintContext;
+
+StorageColumnConstraintContext.prototype.STORAGE = function() {
+ return this.getToken(SqlParser.STORAGE, 0);
+};
+
+StorageColumnConstraintContext.prototype.DISK = function() {
+ return this.getToken(SqlParser.DISK, 0);
+};
+
+StorageColumnConstraintContext.prototype.MEMORY = function() {
+ return this.getToken(SqlParser.MEMORY, 0);
+};
+
+StorageColumnConstraintContext.prototype.DEFAULT = function() {
+ return this.getToken(SqlParser.DEFAULT, 0);
+};
+StorageColumnConstraintContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterStorageColumnConstraint(this);
+ }
+};
+
+StorageColumnConstraintContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitStorageColumnConstraint(this);
+ }
+};
+
+StorageColumnConstraintContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitStorageColumnConstraint(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AutoIncrementColumnConstraintContext(parser, ctx) {
+ ColumnConstraintContext.call(this, parser);
+ ColumnConstraintContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AutoIncrementColumnConstraintContext.prototype = Object.create(ColumnConstraintContext.prototype);
+AutoIncrementColumnConstraintContext.prototype.constructor = AutoIncrementColumnConstraintContext;
+
+SqlParser.AutoIncrementColumnConstraintContext = AutoIncrementColumnConstraintContext;
+
+AutoIncrementColumnConstraintContext.prototype.AUTO_INCREMENT = function() {
+ return this.getToken(SqlParser.AUTO_INCREMENT, 0);
+};
+
+AutoIncrementColumnConstraintContext.prototype.ON = function() {
+ return this.getToken(SqlParser.ON, 0);
+};
+
+AutoIncrementColumnConstraintContext.prototype.UPDATE = function() {
+ return this.getToken(SqlParser.UPDATE, 0);
+};
+
+AutoIncrementColumnConstraintContext.prototype.currentTimestamp = function() {
+ return this.getTypedRuleContext(CurrentTimestampContext,0);
+};
+AutoIncrementColumnConstraintContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAutoIncrementColumnConstraint(this);
+ }
+};
+
+AutoIncrementColumnConstraintContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAutoIncrementColumnConstraint(this);
+ }
+};
+
+AutoIncrementColumnConstraintContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAutoIncrementColumnConstraint(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function CommentColumnConstraintContext(parser, ctx) {
+ ColumnConstraintContext.call(this, parser);
+ ColumnConstraintContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+CommentColumnConstraintContext.prototype = Object.create(ColumnConstraintContext.prototype);
+CommentColumnConstraintContext.prototype.constructor = CommentColumnConstraintContext;
+
+SqlParser.CommentColumnConstraintContext = CommentColumnConstraintContext;
+
+CommentColumnConstraintContext.prototype.COMMENT = function() {
+ return this.getToken(SqlParser.COMMENT, 0);
+};
+
+CommentColumnConstraintContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+CommentColumnConstraintContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterCommentColumnConstraint(this);
+ }
+};
+
+CommentColumnConstraintContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitCommentColumnConstraint(this);
+ }
+};
+
+CommentColumnConstraintContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitCommentColumnConstraint(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function UniqueKeyColumnConstraintContext(parser, ctx) {
+ ColumnConstraintContext.call(this, parser);
+ ColumnConstraintContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+UniqueKeyColumnConstraintContext.prototype = Object.create(ColumnConstraintContext.prototype);
+UniqueKeyColumnConstraintContext.prototype.constructor = UniqueKeyColumnConstraintContext;
+
+SqlParser.UniqueKeyColumnConstraintContext = UniqueKeyColumnConstraintContext;
+
+UniqueKeyColumnConstraintContext.prototype.UNIQUE = function() {
+ return this.getToken(SqlParser.UNIQUE, 0);
+};
+
+UniqueKeyColumnConstraintContext.prototype.KEY = function() {
+ return this.getToken(SqlParser.KEY, 0);
+};
+UniqueKeyColumnConstraintContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterUniqueKeyColumnConstraint(this);
+ }
+};
+
+UniqueKeyColumnConstraintContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitUniqueKeyColumnConstraint(this);
+ }
+};
+
+UniqueKeyColumnConstraintContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitUniqueKeyColumnConstraint(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function SerialDefaultColumnConstraintContext(parser, ctx) {
+ ColumnConstraintContext.call(this, parser);
+ ColumnConstraintContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+SerialDefaultColumnConstraintContext.prototype = Object.create(ColumnConstraintContext.prototype);
+SerialDefaultColumnConstraintContext.prototype.constructor = SerialDefaultColumnConstraintContext;
+
+SqlParser.SerialDefaultColumnConstraintContext = SerialDefaultColumnConstraintContext;
+
+SerialDefaultColumnConstraintContext.prototype.SERIAL = function() {
+ return this.getToken(SqlParser.SERIAL, 0);
+};
+
+SerialDefaultColumnConstraintContext.prototype.DEFAULT = function() {
+ return this.getToken(SqlParser.DEFAULT, 0);
+};
+
+SerialDefaultColumnConstraintContext.prototype.VALUE = function() {
+ return this.getToken(SqlParser.VALUE, 0);
+};
+SerialDefaultColumnConstraintContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSerialDefaultColumnConstraint(this);
+ }
+};
+
+SerialDefaultColumnConstraintContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSerialDefaultColumnConstraint(this);
+ }
+};
+
+SerialDefaultColumnConstraintContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSerialDefaultColumnConstraint(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function GeneratedColumnConstraintContext(parser, ctx) {
+ ColumnConstraintContext.call(this, parser);
+ ColumnConstraintContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+GeneratedColumnConstraintContext.prototype = Object.create(ColumnConstraintContext.prototype);
+GeneratedColumnConstraintContext.prototype.constructor = GeneratedColumnConstraintContext;
+
+SqlParser.GeneratedColumnConstraintContext = GeneratedColumnConstraintContext;
+
+GeneratedColumnConstraintContext.prototype.AS = function() {
+ return this.getToken(SqlParser.AS, 0);
+};
+
+GeneratedColumnConstraintContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+GeneratedColumnConstraintContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+GeneratedColumnConstraintContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+GeneratedColumnConstraintContext.prototype.GENERATED = function() {
+ return this.getToken(SqlParser.GENERATED, 0);
+};
+
+GeneratedColumnConstraintContext.prototype.ALWAYS = function() {
+ return this.getToken(SqlParser.ALWAYS, 0);
+};
+
+GeneratedColumnConstraintContext.prototype.VIRTUAL = function() {
+ return this.getToken(SqlParser.VIRTUAL, 0);
+};
+
+GeneratedColumnConstraintContext.prototype.STORED = function() {
+ return this.getToken(SqlParser.STORED, 0);
+};
+GeneratedColumnConstraintContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterGeneratedColumnConstraint(this);
+ }
+};
+
+GeneratedColumnConstraintContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitGeneratedColumnConstraint(this);
+ }
+};
+
+GeneratedColumnConstraintContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitGeneratedColumnConstraint(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function FormatColumnConstraintContext(parser, ctx) {
+ ColumnConstraintContext.call(this, parser);
+ this.colformat = null; // Token;
+ ColumnConstraintContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+FormatColumnConstraintContext.prototype = Object.create(ColumnConstraintContext.prototype);
+FormatColumnConstraintContext.prototype.constructor = FormatColumnConstraintContext;
+
+SqlParser.FormatColumnConstraintContext = FormatColumnConstraintContext;
+
+FormatColumnConstraintContext.prototype.COLUMN_FORMAT = function() {
+ return this.getToken(SqlParser.COLUMN_FORMAT, 0);
+};
+
+FormatColumnConstraintContext.prototype.FIXED = function() {
+ return this.getToken(SqlParser.FIXED, 0);
+};
+
+FormatColumnConstraintContext.prototype.DYNAMIC = function() {
+ return this.getToken(SqlParser.DYNAMIC, 0);
+};
+
+FormatColumnConstraintContext.prototype.DEFAULT = function() {
+ return this.getToken(SqlParser.DEFAULT, 0);
+};
+FormatColumnConstraintContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterFormatColumnConstraint(this);
+ }
+};
+
+FormatColumnConstraintContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitFormatColumnConstraint(this);
+ }
+};
+
+FormatColumnConstraintContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitFormatColumnConstraint(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function CollateColumnConstraintContext(parser, ctx) {
+ ColumnConstraintContext.call(this, parser);
+ ColumnConstraintContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+CollateColumnConstraintContext.prototype = Object.create(ColumnConstraintContext.prototype);
+CollateColumnConstraintContext.prototype.constructor = CollateColumnConstraintContext;
+
+SqlParser.CollateColumnConstraintContext = CollateColumnConstraintContext;
+
+CollateColumnConstraintContext.prototype.COLLATE = function() {
+ return this.getToken(SqlParser.COLLATE, 0);
+};
+
+CollateColumnConstraintContext.prototype.collationName = function() {
+ return this.getTypedRuleContext(CollationNameContext,0);
+};
+CollateColumnConstraintContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterCollateColumnConstraint(this);
+ }
+};
+
+CollateColumnConstraintContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitCollateColumnConstraint(this);
+ }
+};
+
+CollateColumnConstraintContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitCollateColumnConstraint(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function PrimaryKeyColumnConstraintContext(parser, ctx) {
+ ColumnConstraintContext.call(this, parser);
+ ColumnConstraintContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+PrimaryKeyColumnConstraintContext.prototype = Object.create(ColumnConstraintContext.prototype);
+PrimaryKeyColumnConstraintContext.prototype.constructor = PrimaryKeyColumnConstraintContext;
+
+SqlParser.PrimaryKeyColumnConstraintContext = PrimaryKeyColumnConstraintContext;
+
+PrimaryKeyColumnConstraintContext.prototype.KEY = function() {
+ return this.getToken(SqlParser.KEY, 0);
+};
+
+PrimaryKeyColumnConstraintContext.prototype.PRIMARY = function() {
+ return this.getToken(SqlParser.PRIMARY, 0);
+};
+PrimaryKeyColumnConstraintContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterPrimaryKeyColumnConstraint(this);
+ }
+};
+
+PrimaryKeyColumnConstraintContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitPrimaryKeyColumnConstraint(this);
+ }
+};
+
+PrimaryKeyColumnConstraintContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitPrimaryKeyColumnConstraint(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function CheckColumnConstraintContext(parser, ctx) {
+ ColumnConstraintContext.call(this, parser);
+ this.name = null; // UidContext;
+ ColumnConstraintContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+CheckColumnConstraintContext.prototype = Object.create(ColumnConstraintContext.prototype);
+CheckColumnConstraintContext.prototype.constructor = CheckColumnConstraintContext;
+
+SqlParser.CheckColumnConstraintContext = CheckColumnConstraintContext;
+
+CheckColumnConstraintContext.prototype.CHECK = function() {
+ return this.getToken(SqlParser.CHECK, 0);
+};
+
+CheckColumnConstraintContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+CheckColumnConstraintContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+CheckColumnConstraintContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+CheckColumnConstraintContext.prototype.CONSTRAINT = function() {
+ return this.getToken(SqlParser.CONSTRAINT, 0);
+};
+
+CheckColumnConstraintContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+CheckColumnConstraintContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterCheckColumnConstraint(this);
+ }
+};
+
+CheckColumnConstraintContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitCheckColumnConstraint(this);
+ }
+};
+
+CheckColumnConstraintContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitCheckColumnConstraint(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function NullColumnConstraintContext(parser, ctx) {
+ ColumnConstraintContext.call(this, parser);
+ ColumnConstraintContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+NullColumnConstraintContext.prototype = Object.create(ColumnConstraintContext.prototype);
+NullColumnConstraintContext.prototype.constructor = NullColumnConstraintContext;
+
+SqlParser.NullColumnConstraintContext = NullColumnConstraintContext;
+
+NullColumnConstraintContext.prototype.nullNotnull = function() {
+ return this.getTypedRuleContext(NullNotnullContext,0);
+};
+NullColumnConstraintContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterNullColumnConstraint(this);
+ }
+};
+
+NullColumnConstraintContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitNullColumnConstraint(this);
+ }
+};
+
+NullColumnConstraintContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitNullColumnConstraint(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function DefaultColumnConstraintContext(parser, ctx) {
+ ColumnConstraintContext.call(this, parser);
+ ColumnConstraintContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+DefaultColumnConstraintContext.prototype = Object.create(ColumnConstraintContext.prototype);
+DefaultColumnConstraintContext.prototype.constructor = DefaultColumnConstraintContext;
+
+SqlParser.DefaultColumnConstraintContext = DefaultColumnConstraintContext;
+
+DefaultColumnConstraintContext.prototype.DEFAULT = function() {
+ return this.getToken(SqlParser.DEFAULT, 0);
+};
+
+DefaultColumnConstraintContext.prototype.defaultValue = function() {
+ return this.getTypedRuleContext(DefaultValueContext,0);
+};
+DefaultColumnConstraintContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterDefaultColumnConstraint(this);
+ }
+};
+
+DefaultColumnConstraintContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitDefaultColumnConstraint(this);
+ }
+};
+
+DefaultColumnConstraintContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitDefaultColumnConstraint(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function ReferenceColumnConstraintContext(parser, ctx) {
+ ColumnConstraintContext.call(this, parser);
+ ColumnConstraintContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+ReferenceColumnConstraintContext.prototype = Object.create(ColumnConstraintContext.prototype);
+ReferenceColumnConstraintContext.prototype.constructor = ReferenceColumnConstraintContext;
+
+SqlParser.ReferenceColumnConstraintContext = ReferenceColumnConstraintContext;
+
+ReferenceColumnConstraintContext.prototype.referenceDefinition = function() {
+ return this.getTypedRuleContext(ReferenceDefinitionContext,0);
+};
+ReferenceColumnConstraintContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterReferenceColumnConstraint(this);
+ }
+};
+
+ReferenceColumnConstraintContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitReferenceColumnConstraint(this);
+ }
+};
+
+ReferenceColumnConstraintContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitReferenceColumnConstraint(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+SqlParser.ColumnConstraintContext = ColumnConstraintContext;
+
+SqlParser.prototype.columnConstraint = function() {
+
+ var localctx = new ColumnConstraintContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 82, SqlParser.RULE_columnConstraint);
+ var _la = 0; // Token type
+ try {
+ this.state = 1476;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.NOT:
+ case SqlParser.NULL_LITERAL:
+ case SqlParser.NULL_SPEC_LITERAL:
+ localctx = new NullColumnConstraintContext(this, localctx);
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1425;
+ this.nullNotnull();
+ break;
+ case SqlParser.DEFAULT:
+ localctx = new DefaultColumnConstraintContext(this, localctx);
+ this.enterOuterAlt(localctx, 2);
+ this.state = 1426;
+ this.match(SqlParser.DEFAULT);
+ this.state = 1427;
+ this.defaultValue();
+ break;
+ case SqlParser.ON:
+ case SqlParser.AUTO_INCREMENT:
+ localctx = new AutoIncrementColumnConstraintContext(this, localctx);
+ this.enterOuterAlt(localctx, 3);
+ this.state = 1432;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.AUTO_INCREMENT:
+ this.state = 1428;
+ this.match(SqlParser.AUTO_INCREMENT);
+ break;
+ case SqlParser.ON:
+ this.state = 1429;
+ this.match(SqlParser.ON);
+ this.state = 1430;
+ this.match(SqlParser.UPDATE);
+ this.state = 1431;
+ this.currentTimestamp();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ break;
+ case SqlParser.KEY:
+ case SqlParser.PRIMARY:
+ localctx = new PrimaryKeyColumnConstraintContext(this, localctx);
+ this.enterOuterAlt(localctx, 4);
+ this.state = 1435;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.PRIMARY) {
+ this.state = 1434;
+ this.match(SqlParser.PRIMARY);
+ }
+
+ this.state = 1437;
+ this.match(SqlParser.KEY);
+ break;
+ case SqlParser.UNIQUE:
+ localctx = new UniqueKeyColumnConstraintContext(this, localctx);
+ this.enterOuterAlt(localctx, 5);
+ this.state = 1438;
+ this.match(SqlParser.UNIQUE);
+ this.state = 1440;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,133,this._ctx);
+ if(la_===1) {
+ this.state = 1439;
+ this.match(SqlParser.KEY);
+
+ }
+ break;
+ case SqlParser.COMMENT:
+ localctx = new CommentColumnConstraintContext(this, localctx);
+ this.enterOuterAlt(localctx, 6);
+ this.state = 1442;
+ this.match(SqlParser.COMMENT);
+ this.state = 1443;
+ this.match(SqlParser.STRING_LITERAL);
+ break;
+ case SqlParser.COLUMN_FORMAT:
+ localctx = new FormatColumnConstraintContext(this, localctx);
+ this.enterOuterAlt(localctx, 7);
+ this.state = 1444;
+ this.match(SqlParser.COLUMN_FORMAT);
+ this.state = 1445;
+ localctx.colformat = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.DEFAULT || _la===SqlParser.DYNAMIC || _la===SqlParser.FIXED)) {
+ localctx.colformat = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+ case SqlParser.STORAGE:
+ localctx = new StorageColumnConstraintContext(this, localctx);
+ this.enterOuterAlt(localctx, 8);
+ this.state = 1446;
+ this.match(SqlParser.STORAGE);
+ this.state = 1447;
+ localctx.storageval = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.DEFAULT || _la===SqlParser.DISK || _la===SqlParser.MEMORY)) {
+ localctx.storageval = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+ case SqlParser.REFERENCES:
+ localctx = new ReferenceColumnConstraintContext(this, localctx);
+ this.enterOuterAlt(localctx, 9);
+ this.state = 1448;
+ this.referenceDefinition();
+ break;
+ case SqlParser.COLLATE:
+ localctx = new CollateColumnConstraintContext(this, localctx);
+ this.enterOuterAlt(localctx, 10);
+ this.state = 1449;
+ this.match(SqlParser.COLLATE);
+ this.state = 1450;
+ this.collationName();
+ break;
+ case SqlParser.AS:
+ case SqlParser.GENERATED:
+ localctx = new GeneratedColumnConstraintContext(this, localctx);
+ this.enterOuterAlt(localctx, 11);
+ this.state = 1453;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.GENERATED) {
+ this.state = 1451;
+ this.match(SqlParser.GENERATED);
+ this.state = 1452;
+ this.match(SqlParser.ALWAYS);
+ }
+
+ this.state = 1455;
+ this.match(SqlParser.AS);
+ this.state = 1456;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 1457;
+ this.expression(0);
+ this.state = 1458;
+ this.match(SqlParser.RR_BRACKET);
+ this.state = 1460;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.STORED || _la===SqlParser.VIRTUAL) {
+ this.state = 1459;
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.STORED || _la===SqlParser.VIRTUAL)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ break;
+ case SqlParser.SERIAL:
+ localctx = new SerialDefaultColumnConstraintContext(this, localctx);
+ this.enterOuterAlt(localctx, 12);
+ this.state = 1462;
+ this.match(SqlParser.SERIAL);
+ this.state = 1463;
+ this.match(SqlParser.DEFAULT);
+ this.state = 1464;
+ this.match(SqlParser.VALUE);
+ break;
+ case SqlParser.CHECK:
+ case SqlParser.CONSTRAINT:
+ localctx = new CheckColumnConstraintContext(this, localctx);
+ this.enterOuterAlt(localctx, 13);
+ this.state = 1469;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.CONSTRAINT) {
+ this.state = 1465;
+ this.match(SqlParser.CONSTRAINT);
+ this.state = 1467;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (SqlParser.CURRENT - 32)) | (1 << (SqlParser.DATABASE - 32)) | (1 << (SqlParser.DIAGNOSTICS - 32)))) !== 0) || _la===SqlParser.LEFT || _la===SqlParser.NUMBER || _la===SqlParser.RIGHT || _la===SqlParser.STACKED || ((((_la - 199)) & ~0x1f) == 0 && ((1 << (_la - 199)) & ((1 << (SqlParser.DATE - 199)) | (1 << (SqlParser.TIME - 199)) | (1 << (SqlParser.TIMESTAMP - 199)) | (1 << (SqlParser.DATETIME - 199)) | (1 << (SqlParser.YEAR - 199)) | (1 << (SqlParser.TEXT - 199)) | (1 << (SqlParser.ENUM - 199)) | (1 << (SqlParser.SERIAL - 199)))) !== 0) || ((((_la - 233)) & ~0x1f) == 0 && ((1 << (_la - 233)) & ((1 << (SqlParser.JSON_VALID - 233)) | (1 << (SqlParser.JSON_SCHEMA_VALID - 233)) | (1 << (SqlParser.COUNT - 233)) | (1 << (SqlParser.POSITION - 233)))) !== 0) || ((((_la - 270)) & ~0x1f) == 0 && ((1 << (_la - 270)) & ((1 << (SqlParser.ACCOUNT - 270)) | (1 << (SqlParser.ACTION - 270)) | (1 << (SqlParser.AFTER - 270)) | (1 << (SqlParser.AGGREGATE - 270)) | (1 << (SqlParser.ALGORITHM - 270)) | (1 << (SqlParser.ANY - 270)) | (1 << (SqlParser.AT - 270)) | (1 << (SqlParser.AUTHORS - 270)) | (1 << (SqlParser.AUTOCOMMIT - 270)) | (1 << (SqlParser.AUTOEXTEND_SIZE - 270)) | (1 << (SqlParser.AUTO_INCREMENT - 270)) | (1 << (SqlParser.AVG_ROW_LENGTH - 270)) | (1 << (SqlParser.BEGIN - 270)) | (1 << (SqlParser.BINLOG - 270)) | (1 << (SqlParser.BIT - 270)) | (1 << (SqlParser.BLOCK - 270)) | (1 << (SqlParser.BOOL - 270)) | (1 << (SqlParser.BOOLEAN - 270)) | (1 << (SqlParser.BTREE - 270)) | (1 << (SqlParser.CACHE - 270)) | (1 << (SqlParser.CASCADED - 270)) | (1 << (SqlParser.CHAIN - 270)) | (1 << (SqlParser.CHANGED - 270)) | (1 << (SqlParser.CHANNEL - 270)) | (1 << (SqlParser.CHECKSUM - 270)) | (1 << (SqlParser.PAGE_CHECKSUM - 270)) | (1 << (SqlParser.CIPHER - 270)) | (1 << (SqlParser.CLASS_ORIGIN - 270)) | (1 << (SqlParser.CLIENT - 270)) | (1 << (SqlParser.CLOSE - 270)) | (1 << (SqlParser.COALESCE - 270)) | (1 << (SqlParser.CODE - 270)))) !== 0) || ((((_la - 302)) & ~0x1f) == 0 && ((1 << (_la - 302)) & ((1 << (SqlParser.COLUMNS - 302)) | (1 << (SqlParser.COLUMN_FORMAT - 302)) | (1 << (SqlParser.COLUMN_NAME - 302)) | (1 << (SqlParser.COMMENT - 302)) | (1 << (SqlParser.COMMIT - 302)) | (1 << (SqlParser.COMPACT - 302)) | (1 << (SqlParser.COMPLETION - 302)) | (1 << (SqlParser.COMPRESSED - 302)) | (1 << (SqlParser.COMPRESSION - 302)) | (1 << (SqlParser.CONCURRENT - 302)) | (1 << (SqlParser.CONNECTION - 302)) | (1 << (SqlParser.CONSISTENT - 302)) | (1 << (SqlParser.CONSTRAINT_CATALOG - 302)) | (1 << (SqlParser.CONSTRAINT_SCHEMA - 302)) | (1 << (SqlParser.CONSTRAINT_NAME - 302)) | (1 << (SqlParser.CONTAINS - 302)) | (1 << (SqlParser.CONTEXT - 302)) | (1 << (SqlParser.CONTRIBUTORS - 302)) | (1 << (SqlParser.COPY - 302)) | (1 << (SqlParser.CPU - 302)) | (1 << (SqlParser.CURSOR_NAME - 302)) | (1 << (SqlParser.DATA - 302)) | (1 << (SqlParser.DATAFILE - 302)) | (1 << (SqlParser.DEALLOCATE - 302)) | (1 << (SqlParser.DEFAULT_AUTH - 302)) | (1 << (SqlParser.DEFINER - 302)) | (1 << (SqlParser.DELAY_KEY_WRITE - 302)) | (1 << (SqlParser.DES_KEY_FILE - 302)) | (1 << (SqlParser.DIRECTORY - 302)) | (1 << (SqlParser.DISABLE - 302)) | (1 << (SqlParser.DISCARD - 302)) | (1 << (SqlParser.DISK - 302)))) !== 0) || ((((_la - 334)) & ~0x1f) == 0 && ((1 << (_la - 334)) & ((1 << (SqlParser.DO - 334)) | (1 << (SqlParser.DUMPFILE - 334)) | (1 << (SqlParser.DUPLICATE - 334)) | (1 << (SqlParser.DYNAMIC - 334)) | (1 << (SqlParser.ENABLE - 334)) | (1 << (SqlParser.ENCRYPTION - 334)) | (1 << (SqlParser.END - 334)) | (1 << (SqlParser.ENDS - 334)) | (1 << (SqlParser.ENGINE - 334)) | (1 << (SqlParser.ENGINES - 334)) | (1 << (SqlParser.ERROR - 334)) | (1 << (SqlParser.ERRORS - 334)) | (1 << (SqlParser.ESCAPE - 334)) | (1 << (SqlParser.EVEN - 334)) | (1 << (SqlParser.EVENT - 334)) | (1 << (SqlParser.EVENTS - 334)) | (1 << (SqlParser.EVERY - 334)) | (1 << (SqlParser.EXCHANGE - 334)) | (1 << (SqlParser.EXCLUSIVE - 334)) | (1 << (SqlParser.EXPIRE - 334)) | (1 << (SqlParser.EXPORT - 334)) | (1 << (SqlParser.EXTENDED - 334)) | (1 << (SqlParser.EXTENT_SIZE - 334)) | (1 << (SqlParser.FAST - 334)) | (1 << (SqlParser.FAULTS - 334)) | (1 << (SqlParser.FIELDS - 334)) | (1 << (SqlParser.FILE_BLOCK_SIZE - 334)) | (1 << (SqlParser.FILTER - 334)) | (1 << (SqlParser.FIRST - 334)) | (1 << (SqlParser.FIXED - 334)) | (1 << (SqlParser.FLUSH - 334)) | (1 << (SqlParser.FOLLOWS - 334)))) !== 0) || ((((_la - 366)) & ~0x1f) == 0 && ((1 << (_la - 366)) & ((1 << (SqlParser.FOUND - 366)) | (1 << (SqlParser.FULL - 366)) | (1 << (SqlParser.FUNCTION - 366)) | (1 << (SqlParser.GENERAL - 366)) | (1 << (SqlParser.GLOBAL - 366)) | (1 << (SqlParser.GRANTS - 366)) | (1 << (SqlParser.GROUP_REPLICATION - 366)) | (1 << (SqlParser.HANDLER - 366)) | (1 << (SqlParser.HASH - 366)) | (1 << (SqlParser.HELP - 366)) | (1 << (SqlParser.HOST - 366)) | (1 << (SqlParser.HOSTS - 366)) | (1 << (SqlParser.IDENTIFIED - 366)) | (1 << (SqlParser.IGNORE_SERVER_IDS - 366)) | (1 << (SqlParser.IMPORT - 366)) | (1 << (SqlParser.INDEXES - 366)) | (1 << (SqlParser.INITIAL_SIZE - 366)) | (1 << (SqlParser.INPLACE - 366)) | (1 << (SqlParser.INSERT_METHOD - 366)) | (1 << (SqlParser.INSTALL - 366)) | (1 << (SqlParser.INSTANCE - 366)) | (1 << (SqlParser.INVISIBLE - 366)) | (1 << (SqlParser.INVOKER - 366)) | (1 << (SqlParser.IO - 366)) | (1 << (SqlParser.IO_THREAD - 366)) | (1 << (SqlParser.IPC - 366)) | (1 << (SqlParser.ISOLATION - 366)) | (1 << (SqlParser.ISSUER - 366)) | (1 << (SqlParser.JSON - 366)) | (1 << (SqlParser.KEY_BLOCK_SIZE - 366)) | (1 << (SqlParser.LANGUAGE - 366)) | (1 << (SqlParser.LAST - 366)))) !== 0) || ((((_la - 398)) & ~0x1f) == 0 && ((1 << (_la - 398)) & ((1 << (SqlParser.LEAVES - 398)) | (1 << (SqlParser.LESS - 398)) | (1 << (SqlParser.LEVEL - 398)) | (1 << (SqlParser.LIST - 398)) | (1 << (SqlParser.LOCAL - 398)) | (1 << (SqlParser.LOGFILE - 398)) | (1 << (SqlParser.LOGS - 398)) | (1 << (SqlParser.MASTER - 398)) | (1 << (SqlParser.MASTER_AUTO_POSITION - 398)) | (1 << (SqlParser.MASTER_CONNECT_RETRY - 398)) | (1 << (SqlParser.MASTER_DELAY - 398)) | (1 << (SqlParser.MASTER_HEARTBEAT_PERIOD - 398)) | (1 << (SqlParser.MASTER_HOST - 398)) | (1 << (SqlParser.MASTER_LOG_FILE - 398)) | (1 << (SqlParser.MASTER_LOG_POS - 398)) | (1 << (SqlParser.MASTER_PASSWORD - 398)) | (1 << (SqlParser.MASTER_PORT - 398)) | (1 << (SqlParser.MASTER_RETRY_COUNT - 398)) | (1 << (SqlParser.MASTER_SSL - 398)) | (1 << (SqlParser.MASTER_SSL_CA - 398)) | (1 << (SqlParser.MASTER_SSL_CAPATH - 398)) | (1 << (SqlParser.MASTER_SSL_CERT - 398)) | (1 << (SqlParser.MASTER_SSL_CIPHER - 398)) | (1 << (SqlParser.MASTER_SSL_CRL - 398)) | (1 << (SqlParser.MASTER_SSL_CRLPATH - 398)) | (1 << (SqlParser.MASTER_SSL_KEY - 398)) | (1 << (SqlParser.MASTER_TLS_VERSION - 398)) | (1 << (SqlParser.MASTER_USER - 398)) | (1 << (SqlParser.MAX_CONNECTIONS_PER_HOUR - 398)) | (1 << (SqlParser.MAX_QUERIES_PER_HOUR - 398)) | (1 << (SqlParser.MAX_ROWS - 398)) | (1 << (SqlParser.MAX_SIZE - 398)))) !== 0) || ((((_la - 430)) & ~0x1f) == 0 && ((1 << (_la - 430)) & ((1 << (SqlParser.MAX_UPDATES_PER_HOUR - 430)) | (1 << (SqlParser.MAX_USER_CONNECTIONS - 430)) | (1 << (SqlParser.MEDIUM - 430)) | (1 << (SqlParser.MERGE - 430)) | (1 << (SqlParser.MESSAGE_TEXT - 430)) | (1 << (SqlParser.MID - 430)) | (1 << (SqlParser.MIGRATE - 430)) | (1 << (SqlParser.MIN_ROWS - 430)) | (1 << (SqlParser.MODE - 430)) | (1 << (SqlParser.MODIFY - 430)) | (1 << (SqlParser.MUTEX - 430)) | (1 << (SqlParser.MYSQL - 430)) | (1 << (SqlParser.MYSQL_ERRNO - 430)) | (1 << (SqlParser.NAME - 430)) | (1 << (SqlParser.NAMES - 430)) | (1 << (SqlParser.NCHAR - 430)) | (1 << (SqlParser.NEVER - 430)) | (1 << (SqlParser.NEXT - 430)) | (1 << (SqlParser.NO - 430)) | (1 << (SqlParser.NODEGROUP - 430)) | (1 << (SqlParser.NONE - 430)) | (1 << (SqlParser.OFFLINE - 430)) | (1 << (SqlParser.OFFSET - 430)) | (1 << (SqlParser.OJ - 430)) | (1 << (SqlParser.OLD_PASSWORD - 430)) | (1 << (SqlParser.ONE - 430)) | (1 << (SqlParser.ONLINE - 430)) | (1 << (SqlParser.ONLY - 430)) | (1 << (SqlParser.OPEN - 430)) | (1 << (SqlParser.OPTIMIZER_COSTS - 430)) | (1 << (SqlParser.OPTIONS - 430)) | (1 << (SqlParser.OWNER - 430)))) !== 0) || ((((_la - 462)) & ~0x1f) == 0 && ((1 << (_la - 462)) & ((1 << (SqlParser.PACK_KEYS - 462)) | (1 << (SqlParser.PAGE - 462)) | (1 << (SqlParser.PARSER - 462)) | (1 << (SqlParser.PARTIAL - 462)) | (1 << (SqlParser.PARTITIONING - 462)) | (1 << (SqlParser.PARTITIONS - 462)) | (1 << (SqlParser.PASSWORD - 462)) | (1 << (SqlParser.PHASE - 462)) | (1 << (SqlParser.PLUGIN - 462)) | (1 << (SqlParser.PLUGIN_DIR - 462)) | (1 << (SqlParser.PLUGINS - 462)) | (1 << (SqlParser.PORT - 462)) | (1 << (SqlParser.PRECEDES - 462)) | (1 << (SqlParser.PREPARE - 462)) | (1 << (SqlParser.PRESERVE - 462)) | (1 << (SqlParser.PREV - 462)) | (1 << (SqlParser.PROCESSLIST - 462)) | (1 << (SqlParser.PROFILE - 462)) | (1 << (SqlParser.PROFILES - 462)) | (1 << (SqlParser.PROXY - 462)) | (1 << (SqlParser.QUERY - 462)) | (1 << (SqlParser.QUICK - 462)) | (1 << (SqlParser.REBUILD - 462)) | (1 << (SqlParser.RECOVER - 462)) | (1 << (SqlParser.REDO_BUFFER_SIZE - 462)) | (1 << (SqlParser.REDUNDANT - 462)) | (1 << (SqlParser.RELAY - 462)) | (1 << (SqlParser.RELAY_LOG_FILE - 462)) | (1 << (SqlParser.RELAY_LOG_POS - 462)) | (1 << (SqlParser.RELAYLOG - 462)) | (1 << (SqlParser.REMOVE - 462)) | (1 << (SqlParser.REORGANIZE - 462)))) !== 0) || ((((_la - 494)) & ~0x1f) == 0 && ((1 << (_la - 494)) & ((1 << (SqlParser.REPAIR - 494)) | (1 << (SqlParser.REPLICATE_DO_DB - 494)) | (1 << (SqlParser.REPLICATE_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_DB - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATE_REWRITE_DB - 494)) | (1 << (SqlParser.REPLICATE_WILD_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_WILD_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATION - 494)) | (1 << (SqlParser.RESET - 494)) | (1 << (SqlParser.RESUME - 494)) | (1 << (SqlParser.RETURNED_SQLSTATE - 494)) | (1 << (SqlParser.RETURNS - 494)) | (1 << (SqlParser.ROLE - 494)) | (1 << (SqlParser.ROLLBACK - 494)) | (1 << (SqlParser.ROLLUP - 494)) | (1 << (SqlParser.ROTATE - 494)) | (1 << (SqlParser.ROW - 494)) | (1 << (SqlParser.ROWS - 494)) | (1 << (SqlParser.ROW_FORMAT - 494)) | (1 << (SqlParser.SAVEPOINT - 494)) | (1 << (SqlParser.SCHEDULE - 494)) | (1 << (SqlParser.SECURITY - 494)) | (1 << (SqlParser.SERVER - 494)) | (1 << (SqlParser.SESSION - 494)) | (1 << (SqlParser.SHARE - 494)) | (1 << (SqlParser.SHARED - 494)) | (1 << (SqlParser.SIGNED - 494)) | (1 << (SqlParser.SIMPLE - 494)) | (1 << (SqlParser.SLAVE - 494)) | (1 << (SqlParser.SLOW - 494)) | (1 << (SqlParser.SNAPSHOT - 494)))) !== 0) || ((((_la - 526)) & ~0x1f) == 0 && ((1 << (_la - 526)) & ((1 << (SqlParser.SOCKET - 526)) | (1 << (SqlParser.SOME - 526)) | (1 << (SqlParser.SONAME - 526)) | (1 << (SqlParser.SOUNDS - 526)) | (1 << (SqlParser.SOURCE - 526)) | (1 << (SqlParser.SQL_AFTER_GTIDS - 526)) | (1 << (SqlParser.SQL_AFTER_MTS_GAPS - 526)) | (1 << (SqlParser.SQL_BEFORE_GTIDS - 526)) | (1 << (SqlParser.SQL_BUFFER_RESULT - 526)) | (1 << (SqlParser.SQL_CACHE - 526)) | (1 << (SqlParser.SQL_NO_CACHE - 526)) | (1 << (SqlParser.SQL_THREAD - 526)) | (1 << (SqlParser.START - 526)) | (1 << (SqlParser.STARTS - 526)) | (1 << (SqlParser.STATS_AUTO_RECALC - 526)) | (1 << (SqlParser.STATS_PERSISTENT - 526)) | (1 << (SqlParser.STATS_SAMPLE_PAGES - 526)) | (1 << (SqlParser.STATUS - 526)) | (1 << (SqlParser.STOP - 526)) | (1 << (SqlParser.STORAGE - 526)) | (1 << (SqlParser.STRING - 526)) | (1 << (SqlParser.SUBCLASS_ORIGIN - 526)) | (1 << (SqlParser.SUBJECT - 526)) | (1 << (SqlParser.SUBPARTITION - 526)) | (1 << (SqlParser.SUBPARTITIONS - 526)) | (1 << (SqlParser.SUSPEND - 526)) | (1 << (SqlParser.SWAPS - 526)) | (1 << (SqlParser.SWITCHES - 526)) | (1 << (SqlParser.TABLE_NAME - 526)) | (1 << (SqlParser.TABLESPACE - 526)) | (1 << (SqlParser.TEMPORARY - 526)))) !== 0) || ((((_la - 558)) & ~0x1f) == 0 && ((1 << (_la - 558)) & ((1 << (SqlParser.TEMPTABLE - 558)) | (1 << (SqlParser.THAN - 558)) | (1 << (SqlParser.TRADITIONAL - 558)) | (1 << (SqlParser.TRANSACTION - 558)) | (1 << (SqlParser.TRANSACTIONAL - 558)) | (1 << (SqlParser.TRIGGERS - 558)) | (1 << (SqlParser.TRUNCATE - 558)) | (1 << (SqlParser.UNDEFINED - 558)) | (1 << (SqlParser.UNDOFILE - 558)) | (1 << (SqlParser.UNDO_BUFFER_SIZE - 558)) | (1 << (SqlParser.UNINSTALL - 558)) | (1 << (SqlParser.UNKNOWN - 558)) | (1 << (SqlParser.UNTIL - 558)) | (1 << (SqlParser.UPGRADE - 558)) | (1 << (SqlParser.USER - 558)) | (1 << (SqlParser.USE_FRM - 558)) | (1 << (SqlParser.USER_RESOURCES - 558)) | (1 << (SqlParser.VALIDATION - 558)) | (1 << (SqlParser.VALUE - 558)) | (1 << (SqlParser.VARIABLES - 558)) | (1 << (SqlParser.VIEW - 558)) | (1 << (SqlParser.VISIBLE - 558)) | (1 << (SqlParser.WAIT - 558)) | (1 << (SqlParser.WARNINGS - 558)) | (1 << (SqlParser.WITHOUT - 558)) | (1 << (SqlParser.WORK - 558)) | (1 << (SqlParser.WRAPPER - 558)) | (1 << (SqlParser.X509 - 558)) | (1 << (SqlParser.XA - 558)) | (1 << (SqlParser.XML - 558)))) !== 0) || ((((_la - 593)) & ~0x1f) == 0 && ((1 << (_la - 593)) & ((1 << (SqlParser.INTERNAL - 593)) | (1 << (SqlParser.QUARTER - 593)) | (1 << (SqlParser.MONTH - 593)) | (1 << (SqlParser.DAY - 593)) | (1 << (SqlParser.HOUR - 593)) | (1 << (SqlParser.MINUTE - 593)) | (1 << (SqlParser.WEEK - 593)) | (1 << (SqlParser.SECOND - 593)) | (1 << (SqlParser.MICROSECOND - 593)) | (1 << (SqlParser.TABLES - 593)) | (1 << (SqlParser.ROUTINE - 593)) | (1 << (SqlParser.EXECUTE - 593)) | (1 << (SqlParser.FILE - 593)) | (1 << (SqlParser.PROCESS - 593)) | (1 << (SqlParser.RELOAD - 593)) | (1 << (SqlParser.SHUTDOWN - 593)) | (1 << (SqlParser.SUPER - 593)) | (1 << (SqlParser.PRIVILEGES - 593)) | (1 << (SqlParser.AUDIT_ADMIN - 593)) | (1 << (SqlParser.BACKUP_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ENCRYPTION_ADMIN - 593)) | (1 << (SqlParser.CLONE_ADMIN - 593)) | (1 << (SqlParser.CONNECTION_ADMIN - 593)) | (1 << (SqlParser.ENCRYPTION_KEY_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_USER - 593)) | (1 << (SqlParser.GROUP_REPLICATION_ADMIN - 593)) | (1 << (SqlParser.INNODB_REDO_LOG_ARCHIVE - 593)) | (1 << (SqlParser.NDB_STORED_USER - 593)) | (1 << (SqlParser.PERSIST_RO_VARIABLES_ADMIN - 593)))) !== 0) || ((((_la - 625)) & ~0x1f) == 0 && ((1 << (_la - 625)) & ((1 << (SqlParser.REPLICATION_APPLIER - 625)) | (1 << (SqlParser.REPLICATION_SLAVE_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_USER - 625)) | (1 << (SqlParser.ROLE_ADMIN - 625)) | (1 << (SqlParser.SESSION_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.SET_USER_ID - 625)) | (1 << (SqlParser.SHOW_ROUTINE - 625)) | (1 << (SqlParser.SYSTEM_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.TABLE_ENCRYPTION_ADMIN - 625)) | (1 << (SqlParser.VERSION_TOKEN_ADMIN - 625)) | (1 << (SqlParser.XA_RECOVER_ADMIN - 625)) | (1 << (SqlParser.ARMSCII8 - 625)) | (1 << (SqlParser.ASCII - 625)) | (1 << (SqlParser.BIG5 - 625)) | (1 << (SqlParser.CP1250 - 625)) | (1 << (SqlParser.CP1251 - 625)) | (1 << (SqlParser.CP1256 - 625)) | (1 << (SqlParser.CP1257 - 625)) | (1 << (SqlParser.CP850 - 625)) | (1 << (SqlParser.CP852 - 625)) | (1 << (SqlParser.CP866 - 625)) | (1 << (SqlParser.CP932 - 625)) | (1 << (SqlParser.DEC8 - 625)) | (1 << (SqlParser.EUCJPMS - 625)) | (1 << (SqlParser.EUCKR - 625)) | (1 << (SqlParser.GB2312 - 625)) | (1 << (SqlParser.GBK - 625)) | (1 << (SqlParser.GEOSTD8 - 625)) | (1 << (SqlParser.GREEK - 625)) | (1 << (SqlParser.HEBREW - 625)) | (1 << (SqlParser.HP8 - 625)))) !== 0) || ((((_la - 657)) & ~0x1f) == 0 && ((1 << (_la - 657)) & ((1 << (SqlParser.KEYBCS2 - 657)) | (1 << (SqlParser.KOI8R - 657)) | (1 << (SqlParser.KOI8U - 657)) | (1 << (SqlParser.LATIN1 - 657)) | (1 << (SqlParser.LATIN2 - 657)) | (1 << (SqlParser.LATIN5 - 657)) | (1 << (SqlParser.LATIN7 - 657)) | (1 << (SqlParser.MACCE - 657)) | (1 << (SqlParser.MACROMAN - 657)) | (1 << (SqlParser.SJIS - 657)) | (1 << (SqlParser.SWE7 - 657)) | (1 << (SqlParser.TIS620 - 657)) | (1 << (SqlParser.UCS2 - 657)) | (1 << (SqlParser.UJIS - 657)) | (1 << (SqlParser.UTF16 - 657)) | (1 << (SqlParser.UTF16LE - 657)) | (1 << (SqlParser.UTF32 - 657)) | (1 << (SqlParser.UTF8 - 657)) | (1 << (SqlParser.UTF8MB3 - 657)) | (1 << (SqlParser.UTF8MB4 - 657)) | (1 << (SqlParser.ARCHIVE - 657)) | (1 << (SqlParser.BLACKHOLE - 657)) | (1 << (SqlParser.CSV - 657)) | (1 << (SqlParser.FEDERATED - 657)) | (1 << (SqlParser.INNODB - 657)) | (1 << (SqlParser.MEMORY - 657)) | (1 << (SqlParser.MRG_MYISAM - 657)) | (1 << (SqlParser.MYISAM - 657)) | (1 << (SqlParser.NDB - 657)) | (1 << (SqlParser.NDBCLUSTER - 657)) | (1 << (SqlParser.PERFORMANCE_SCHEMA - 657)) | (1 << (SqlParser.TOKUDB - 657)))) !== 0) || ((((_la - 689)) & ~0x1f) == 0 && ((1 << (_la - 689)) & ((1 << (SqlParser.REPEATABLE - 689)) | (1 << (SqlParser.COMMITTED - 689)) | (1 << (SqlParser.UNCOMMITTED - 689)) | (1 << (SqlParser.SERIALIZABLE - 689)) | (1 << (SqlParser.GEOMETRYCOLLECTION - 689)) | (1 << (SqlParser.LINESTRING - 689)) | (1 << (SqlParser.MULTILINESTRING - 689)) | (1 << (SqlParser.MULTIPOINT - 689)) | (1 << (SqlParser.MULTIPOLYGON - 689)) | (1 << (SqlParser.POINT - 689)) | (1 << (SqlParser.POLYGON - 689)) | (1 << (SqlParser.ABS - 689)) | (1 << (SqlParser.ACOS - 689)) | (1 << (SqlParser.ADDDATE - 689)) | (1 << (SqlParser.ADDTIME - 689)) | (1 << (SqlParser.AES_DECRYPT - 689)) | (1 << (SqlParser.AES_ENCRYPT - 689)) | (1 << (SqlParser.AREA - 689)) | (1 << (SqlParser.ASBINARY - 689)) | (1 << (SqlParser.ASIN - 689)) | (1 << (SqlParser.ASTEXT - 689)) | (1 << (SqlParser.ASWKB - 689)) | (1 << (SqlParser.ASWKT - 689)) | (1 << (SqlParser.ASYMMETRIC_DECRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_DERIVE - 689)) | (1 << (SqlParser.ASYMMETRIC_ENCRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_SIGN - 689)) | (1 << (SqlParser.ASYMMETRIC_VERIFY - 689)) | (1 << (SqlParser.ATAN - 689)) | (1 << (SqlParser.ATAN2 - 689)))) !== 0) || ((((_la - 721)) & ~0x1f) == 0 && ((1 << (_la - 721)) & ((1 << (SqlParser.BENCHMARK - 721)) | (1 << (SqlParser.BIN - 721)) | (1 << (SqlParser.BIT_COUNT - 721)) | (1 << (SqlParser.BIT_LENGTH - 721)) | (1 << (SqlParser.BUFFER - 721)) | (1 << (SqlParser.CATALOG_NAME - 721)) | (1 << (SqlParser.CEIL - 721)) | (1 << (SqlParser.CEILING - 721)) | (1 << (SqlParser.CENTROID - 721)) | (1 << (SqlParser.CHARACTER_LENGTH - 721)) | (1 << (SqlParser.CHARSET - 721)) | (1 << (SqlParser.CHAR_LENGTH - 721)) | (1 << (SqlParser.COERCIBILITY - 721)) | (1 << (SqlParser.COLLATION - 721)) | (1 << (SqlParser.COMPRESS - 721)) | (1 << (SqlParser.CONCAT - 721)) | (1 << (SqlParser.CONCAT_WS - 721)) | (1 << (SqlParser.CONNECTION_ID - 721)) | (1 << (SqlParser.CONV - 721)) | (1 << (SqlParser.CONVERT_TZ - 721)) | (1 << (SqlParser.COS - 721)) | (1 << (SqlParser.COT - 721)) | (1 << (SqlParser.CRC32 - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PRIV_KEY - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PUB_KEY - 721)) | (1 << (SqlParser.CREATE_DH_PARAMETERS - 721)) | (1 << (SqlParser.CREATE_DIGEST - 721)) | (1 << (SqlParser.CROSSES - 721)) | (1 << (SqlParser.DATEDIFF - 721)) | (1 << (SqlParser.DATE_FORMAT - 721)) | (1 << (SqlParser.DAYNAME - 721)) | (1 << (SqlParser.DAYOFMONTH - 721)))) !== 0) || ((((_la - 753)) & ~0x1f) == 0 && ((1 << (_la - 753)) & ((1 << (SqlParser.DAYOFWEEK - 753)) | (1 << (SqlParser.DAYOFYEAR - 753)) | (1 << (SqlParser.DECODE - 753)) | (1 << (SqlParser.DEGREES - 753)) | (1 << (SqlParser.DES_DECRYPT - 753)) | (1 << (SqlParser.DES_ENCRYPT - 753)) | (1 << (SqlParser.DIMENSION - 753)) | (1 << (SqlParser.DISJOINT - 753)) | (1 << (SqlParser.ELT - 753)) | (1 << (SqlParser.ENCODE - 753)) | (1 << (SqlParser.ENCRYPT - 753)) | (1 << (SqlParser.ENDPOINT - 753)) | (1 << (SqlParser.ENVELOPE - 753)) | (1 << (SqlParser.EQUALS - 753)) | (1 << (SqlParser.EXP - 753)) | (1 << (SqlParser.EXPORT_SET - 753)) | (1 << (SqlParser.EXTERIORRING - 753)) | (1 << (SqlParser.EXTRACTVALUE - 753)) | (1 << (SqlParser.FIELD - 753)) | (1 << (SqlParser.FIND_IN_SET - 753)) | (1 << (SqlParser.FLOOR - 753)) | (1 << (SqlParser.FORMAT - 753)) | (1 << (SqlParser.FOUND_ROWS - 753)) | (1 << (SqlParser.FROM_BASE64 - 753)) | (1 << (SqlParser.FROM_DAYS - 753)) | (1 << (SqlParser.FROM_UNIXTIME - 753)) | (1 << (SqlParser.GEOMCOLLFROMTEXT - 753)) | (1 << (SqlParser.GEOMCOLLFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYFROMWKB - 753)))) !== 0) || ((((_la - 785)) & ~0x1f) == 0 && ((1 << (_la - 785)) & ((1 << (SqlParser.GEOMETRYN - 785)) | (1 << (SqlParser.GEOMETRYTYPE - 785)) | (1 << (SqlParser.GEOMFROMTEXT - 785)) | (1 << (SqlParser.GEOMFROMWKB - 785)) | (1 << (SqlParser.GET_FORMAT - 785)) | (1 << (SqlParser.GET_LOCK - 785)) | (1 << (SqlParser.GLENGTH - 785)) | (1 << (SqlParser.GREATEST - 785)) | (1 << (SqlParser.GTID_SUBSET - 785)) | (1 << (SqlParser.GTID_SUBTRACT - 785)) | (1 << (SqlParser.HEX - 785)) | (1 << (SqlParser.IFNULL - 785)) | (1 << (SqlParser.INET6_ATON - 785)) | (1 << (SqlParser.INET6_NTOA - 785)) | (1 << (SqlParser.INET_ATON - 785)) | (1 << (SqlParser.INET_NTOA - 785)) | (1 << (SqlParser.INSTR - 785)) | (1 << (SqlParser.INTERIORRINGN - 785)) | (1 << (SqlParser.INTERSECTS - 785)) | (1 << (SqlParser.ISCLOSED - 785)) | (1 << (SqlParser.ISEMPTY - 785)) | (1 << (SqlParser.ISNULL - 785)) | (1 << (SqlParser.ISSIMPLE - 785)) | (1 << (SqlParser.IS_FREE_LOCK - 785)) | (1 << (SqlParser.IS_IPV4 - 785)) | (1 << (SqlParser.IS_IPV4_COMPAT - 785)) | (1 << (SqlParser.IS_IPV4_MAPPED - 785)) | (1 << (SqlParser.IS_IPV6 - 785)) | (1 << (SqlParser.IS_USED_LOCK - 785)) | (1 << (SqlParser.LAST_INSERT_ID - 785)) | (1 << (SqlParser.LCASE - 785)) | (1 << (SqlParser.LEAST - 785)))) !== 0) || ((((_la - 817)) & ~0x1f) == 0 && ((1 << (_la - 817)) & ((1 << (SqlParser.LENGTH - 817)) | (1 << (SqlParser.LINEFROMTEXT - 817)) | (1 << (SqlParser.LINEFROMWKB - 817)) | (1 << (SqlParser.LINESTRINGFROMTEXT - 817)) | (1 << (SqlParser.LINESTRINGFROMWKB - 817)) | (1 << (SqlParser.LN - 817)) | (1 << (SqlParser.LOAD_FILE - 817)) | (1 << (SqlParser.LOCATE - 817)) | (1 << (SqlParser.LOG - 817)) | (1 << (SqlParser.LOG10 - 817)) | (1 << (SqlParser.LOG2 - 817)) | (1 << (SqlParser.LOWER - 817)) | (1 << (SqlParser.LPAD - 817)) | (1 << (SqlParser.LTRIM - 817)) | (1 << (SqlParser.MAKEDATE - 817)) | (1 << (SqlParser.MAKETIME - 817)) | (1 << (SqlParser.MAKE_SET - 817)) | (1 << (SqlParser.MASTER_POS_WAIT - 817)) | (1 << (SqlParser.MBRCONTAINS - 817)) | (1 << (SqlParser.MBRDISJOINT - 817)) | (1 << (SqlParser.MBREQUAL - 817)) | (1 << (SqlParser.MBRINTERSECTS - 817)) | (1 << (SqlParser.MBROVERLAPS - 817)) | (1 << (SqlParser.MBRTOUCHES - 817)) | (1 << (SqlParser.MBRWITHIN - 817)) | (1 << (SqlParser.MD5 - 817)) | (1 << (SqlParser.MLINEFROMTEXT - 817)) | (1 << (SqlParser.MLINEFROMWKB - 817)) | (1 << (SqlParser.MONTHNAME - 817)) | (1 << (SqlParser.MPOINTFROMTEXT - 817)) | (1 << (SqlParser.MPOINTFROMWKB - 817)) | (1 << (SqlParser.MPOLYFROMTEXT - 817)))) !== 0) || ((((_la - 849)) & ~0x1f) == 0 && ((1 << (_la - 849)) & ((1 << (SqlParser.MPOLYFROMWKB - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMTEXT - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMWKB - 849)) | (1 << (SqlParser.MULTIPOINTFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOINTFROMWKB - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMWKB - 849)) | (1 << (SqlParser.NAME_CONST - 849)) | (1 << (SqlParser.NULLIF - 849)) | (1 << (SqlParser.NUMGEOMETRIES - 849)) | (1 << (SqlParser.NUMINTERIORRINGS - 849)) | (1 << (SqlParser.NUMPOINTS - 849)) | (1 << (SqlParser.OCT - 849)) | (1 << (SqlParser.OCTET_LENGTH - 849)) | (1 << (SqlParser.ORD - 849)) | (1 << (SqlParser.OVERLAPS - 849)) | (1 << (SqlParser.PERIOD_ADD - 849)) | (1 << (SqlParser.PERIOD_DIFF - 849)) | (1 << (SqlParser.PI - 849)) | (1 << (SqlParser.POINTFROMTEXT - 849)) | (1 << (SqlParser.POINTFROMWKB - 849)) | (1 << (SqlParser.POINTN - 849)) | (1 << (SqlParser.POLYFROMTEXT - 849)) | (1 << (SqlParser.POLYFROMWKB - 849)) | (1 << (SqlParser.POLYGONFROMTEXT - 849)) | (1 << (SqlParser.POLYGONFROMWKB - 849)) | (1 << (SqlParser.POW - 849)) | (1 << (SqlParser.POWER - 849)) | (1 << (SqlParser.QUOTE - 849)) | (1 << (SqlParser.RADIANS - 849)) | (1 << (SqlParser.RAND - 849)) | (1 << (SqlParser.RANDOM_BYTES - 849)))) !== 0) || ((((_la - 881)) & ~0x1f) == 0 && ((1 << (_la - 881)) & ((1 << (SqlParser.RELEASE_LOCK - 881)) | (1 << (SqlParser.REVERSE - 881)) | (1 << (SqlParser.ROUND - 881)) | (1 << (SqlParser.ROW_COUNT - 881)) | (1 << (SqlParser.RPAD - 881)) | (1 << (SqlParser.RTRIM - 881)) | (1 << (SqlParser.SEC_TO_TIME - 881)) | (1 << (SqlParser.SESSION_USER - 881)) | (1 << (SqlParser.SHA - 881)) | (1 << (SqlParser.SHA1 - 881)) | (1 << (SqlParser.SHA2 - 881)) | (1 << (SqlParser.SCHEMA_NAME - 881)) | (1 << (SqlParser.SIGN - 881)) | (1 << (SqlParser.SIN - 881)) | (1 << (SqlParser.SLEEP - 881)) | (1 << (SqlParser.SOUNDEX - 881)) | (1 << (SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS - 881)) | (1 << (SqlParser.SQRT - 881)) | (1 << (SqlParser.SRID - 881)) | (1 << (SqlParser.STARTPOINT - 881)) | (1 << (SqlParser.STRCMP - 881)) | (1 << (SqlParser.STR_TO_DATE - 881)) | (1 << (SqlParser.ST_AREA - 881)) | (1 << (SqlParser.ST_ASBINARY - 881)) | (1 << (SqlParser.ST_ASTEXT - 881)) | (1 << (SqlParser.ST_ASWKB - 881)) | (1 << (SqlParser.ST_ASWKT - 881)) | (1 << (SqlParser.ST_BUFFER - 881)) | (1 << (SqlParser.ST_CENTROID - 881)) | (1 << (SqlParser.ST_CONTAINS - 881)) | (1 << (SqlParser.ST_CROSSES - 881)) | (1 << (SqlParser.ST_DIFFERENCE - 881)))) !== 0) || ((((_la - 913)) & ~0x1f) == 0 && ((1 << (_la - 913)) & ((1 << (SqlParser.ST_DIMENSION - 913)) | (1 << (SqlParser.ST_DISJOINT - 913)) | (1 << (SqlParser.ST_DISTANCE - 913)) | (1 << (SqlParser.ST_ENDPOINT - 913)) | (1 << (SqlParser.ST_ENVELOPE - 913)) | (1 << (SqlParser.ST_EQUALS - 913)) | (1 << (SqlParser.ST_EXTERIORRING - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYN - 913)) | (1 << (SqlParser.ST_GEOMETRYTYPE - 913)) | (1 << (SqlParser.ST_GEOMFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMFROMWKB - 913)) | (1 << (SqlParser.ST_INTERIORRINGN - 913)) | (1 << (SqlParser.ST_INTERSECTION - 913)) | (1 << (SqlParser.ST_INTERSECTS - 913)) | (1 << (SqlParser.ST_ISCLOSED - 913)) | (1 << (SqlParser.ST_ISEMPTY - 913)) | (1 << (SqlParser.ST_ISSIMPLE - 913)) | (1 << (SqlParser.ST_LINEFROMTEXT - 913)) | (1 << (SqlParser.ST_LINEFROMWKB - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMTEXT - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMWKB - 913)) | (1 << (SqlParser.ST_NUMGEOMETRIES - 913)) | (1 << (SqlParser.ST_NUMINTERIORRING - 913)) | (1 << (SqlParser.ST_NUMINTERIORRINGS - 913)) | (1 << (SqlParser.ST_NUMPOINTS - 913)))) !== 0) || ((((_la - 945)) & ~0x1f) == 0 && ((1 << (_la - 945)) & ((1 << (SqlParser.ST_OVERLAPS - 945)) | (1 << (SqlParser.ST_POINTFROMTEXT - 945)) | (1 << (SqlParser.ST_POINTFROMWKB - 945)) | (1 << (SqlParser.ST_POINTN - 945)) | (1 << (SqlParser.ST_POLYFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYFROMWKB - 945)) | (1 << (SqlParser.ST_POLYGONFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYGONFROMWKB - 945)) | (1 << (SqlParser.ST_SRID - 945)) | (1 << (SqlParser.ST_STARTPOINT - 945)) | (1 << (SqlParser.ST_SYMDIFFERENCE - 945)) | (1 << (SqlParser.ST_TOUCHES - 945)) | (1 << (SqlParser.ST_UNION - 945)) | (1 << (SqlParser.ST_WITHIN - 945)) | (1 << (SqlParser.ST_X - 945)) | (1 << (SqlParser.ST_Y - 945)) | (1 << (SqlParser.SUBDATE - 945)) | (1 << (SqlParser.SUBSTRING_INDEX - 945)) | (1 << (SqlParser.SUBTIME - 945)) | (1 << (SqlParser.SYSTEM_USER - 945)) | (1 << (SqlParser.TAN - 945)) | (1 << (SqlParser.TIMEDIFF - 945)) | (1 << (SqlParser.TIMESTAMPADD - 945)) | (1 << (SqlParser.TIMESTAMPDIFF - 945)) | (1 << (SqlParser.TIME_FORMAT - 945)) | (1 << (SqlParser.TIME_TO_SEC - 945)) | (1 << (SqlParser.TOUCHES - 945)) | (1 << (SqlParser.TO_BASE64 - 945)) | (1 << (SqlParser.TO_DAYS - 945)) | (1 << (SqlParser.TO_SECONDS - 945)) | (1 << (SqlParser.UCASE - 945)) | (1 << (SqlParser.UNCOMPRESS - 945)))) !== 0) || ((((_la - 977)) & ~0x1f) == 0 && ((1 << (_la - 977)) & ((1 << (SqlParser.UNCOMPRESSED_LENGTH - 977)) | (1 << (SqlParser.UNHEX - 977)) | (1 << (SqlParser.UNIX_TIMESTAMP - 977)) | (1 << (SqlParser.UPDATEXML - 977)) | (1 << (SqlParser.UPPER - 977)) | (1 << (SqlParser.UUID - 977)) | (1 << (SqlParser.UUID_SHORT - 977)) | (1 << (SqlParser.VALIDATE_PASSWORD_STRENGTH - 977)) | (1 << (SqlParser.VERSION - 977)) | (1 << (SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS - 977)) | (1 << (SqlParser.WEEKDAY - 977)) | (1 << (SqlParser.WEEKOFYEAR - 977)) | (1 << (SqlParser.WEIGHT_STRING - 977)) | (1 << (SqlParser.WITHIN - 977)) | (1 << (SqlParser.YEARWEEK - 977)) | (1 << (SqlParser.Y_FUNCTION - 977)) | (1 << (SqlParser.X_FUNCTION - 977)))) !== 0) || ((((_la - 1032)) & ~0x1f) == 0 && ((1 << (_la - 1032)) & ((1 << (SqlParser.CHARSET_REVERSE_QOUTE_STRING - 1032)) | (1 << (SqlParser.STRING_LITERAL - 1032)) | (1 << (SqlParser.ID - 1032)) | (1 << (SqlParser.REVERSE_QUOTE_ID - 1032)))) !== 0)) {
+ this.state = 1466;
+ localctx.name = this.uid();
+ }
+
+ }
+
+ this.state = 1471;
+ this.match(SqlParser.CHECK);
+ this.state = 1472;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 1473;
+ this.expression(0);
+ this.state = 1474;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function TableConstraintContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_tableConstraint;
+ return this;
+}
+
+TableConstraintContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+TableConstraintContext.prototype.constructor = TableConstraintContext;
+
+
+
+TableConstraintContext.prototype.copyFrom = function(ctx) {
+ antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx);
+};
+
+
+function UniqueKeyTableConstraintContext(parser, ctx) {
+ TableConstraintContext.call(this, parser);
+ this.name = null; // UidContext;
+ this.indexFormat = null; // Token;
+ this.index = null; // UidContext;
+ TableConstraintContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+UniqueKeyTableConstraintContext.prototype = Object.create(TableConstraintContext.prototype);
+UniqueKeyTableConstraintContext.prototype.constructor = UniqueKeyTableConstraintContext;
+
+SqlParser.UniqueKeyTableConstraintContext = UniqueKeyTableConstraintContext;
+
+UniqueKeyTableConstraintContext.prototype.UNIQUE = function() {
+ return this.getToken(SqlParser.UNIQUE, 0);
+};
+
+UniqueKeyTableConstraintContext.prototype.indexColumnNames = function() {
+ return this.getTypedRuleContext(IndexColumnNamesContext,0);
+};
+
+UniqueKeyTableConstraintContext.prototype.CONSTRAINT = function() {
+ return this.getToken(SqlParser.CONSTRAINT, 0);
+};
+
+UniqueKeyTableConstraintContext.prototype.indexType = function() {
+ return this.getTypedRuleContext(IndexTypeContext,0);
+};
+
+UniqueKeyTableConstraintContext.prototype.indexOption = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(IndexOptionContext);
+ } else {
+ return this.getTypedRuleContext(IndexOptionContext,i);
+ }
+};
+
+UniqueKeyTableConstraintContext.prototype.uid = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UidContext);
+ } else {
+ return this.getTypedRuleContext(UidContext,i);
+ }
+};
+
+UniqueKeyTableConstraintContext.prototype.INDEX = function() {
+ return this.getToken(SqlParser.INDEX, 0);
+};
+
+UniqueKeyTableConstraintContext.prototype.KEY = function() {
+ return this.getToken(SqlParser.KEY, 0);
+};
+UniqueKeyTableConstraintContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterUniqueKeyTableConstraint(this);
+ }
+};
+
+UniqueKeyTableConstraintContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitUniqueKeyTableConstraint(this);
+ }
+};
+
+UniqueKeyTableConstraintContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitUniqueKeyTableConstraint(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function CheckTableConstraintContext(parser, ctx) {
+ TableConstraintContext.call(this, parser);
+ this.name = null; // UidContext;
+ TableConstraintContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+CheckTableConstraintContext.prototype = Object.create(TableConstraintContext.prototype);
+CheckTableConstraintContext.prototype.constructor = CheckTableConstraintContext;
+
+SqlParser.CheckTableConstraintContext = CheckTableConstraintContext;
+
+CheckTableConstraintContext.prototype.CHECK = function() {
+ return this.getToken(SqlParser.CHECK, 0);
+};
+
+CheckTableConstraintContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+CheckTableConstraintContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+CheckTableConstraintContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+CheckTableConstraintContext.prototype.CONSTRAINT = function() {
+ return this.getToken(SqlParser.CONSTRAINT, 0);
+};
+
+CheckTableConstraintContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+CheckTableConstraintContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterCheckTableConstraint(this);
+ }
+};
+
+CheckTableConstraintContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitCheckTableConstraint(this);
+ }
+};
+
+CheckTableConstraintContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitCheckTableConstraint(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function PrimaryKeyTableConstraintContext(parser, ctx) {
+ TableConstraintContext.call(this, parser);
+ this.name = null; // UidContext;
+ this.index = null; // UidContext;
+ TableConstraintContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+PrimaryKeyTableConstraintContext.prototype = Object.create(TableConstraintContext.prototype);
+PrimaryKeyTableConstraintContext.prototype.constructor = PrimaryKeyTableConstraintContext;
+
+SqlParser.PrimaryKeyTableConstraintContext = PrimaryKeyTableConstraintContext;
+
+PrimaryKeyTableConstraintContext.prototype.PRIMARY = function() {
+ return this.getToken(SqlParser.PRIMARY, 0);
+};
+
+PrimaryKeyTableConstraintContext.prototype.KEY = function() {
+ return this.getToken(SqlParser.KEY, 0);
+};
+
+PrimaryKeyTableConstraintContext.prototype.indexColumnNames = function() {
+ return this.getTypedRuleContext(IndexColumnNamesContext,0);
+};
+
+PrimaryKeyTableConstraintContext.prototype.CONSTRAINT = function() {
+ return this.getToken(SqlParser.CONSTRAINT, 0);
+};
+
+PrimaryKeyTableConstraintContext.prototype.indexType = function() {
+ return this.getTypedRuleContext(IndexTypeContext,0);
+};
+
+PrimaryKeyTableConstraintContext.prototype.indexOption = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(IndexOptionContext);
+ } else {
+ return this.getTypedRuleContext(IndexOptionContext,i);
+ }
+};
+
+PrimaryKeyTableConstraintContext.prototype.uid = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UidContext);
+ } else {
+ return this.getTypedRuleContext(UidContext,i);
+ }
+};
+PrimaryKeyTableConstraintContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterPrimaryKeyTableConstraint(this);
+ }
+};
+
+PrimaryKeyTableConstraintContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitPrimaryKeyTableConstraint(this);
+ }
+};
+
+PrimaryKeyTableConstraintContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitPrimaryKeyTableConstraint(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function ForeignKeyTableConstraintContext(parser, ctx) {
+ TableConstraintContext.call(this, parser);
+ this.name = null; // UidContext;
+ this.index = null; // UidContext;
+ TableConstraintContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+ForeignKeyTableConstraintContext.prototype = Object.create(TableConstraintContext.prototype);
+ForeignKeyTableConstraintContext.prototype.constructor = ForeignKeyTableConstraintContext;
+
+SqlParser.ForeignKeyTableConstraintContext = ForeignKeyTableConstraintContext;
+
+ForeignKeyTableConstraintContext.prototype.FOREIGN = function() {
+ return this.getToken(SqlParser.FOREIGN, 0);
+};
+
+ForeignKeyTableConstraintContext.prototype.KEY = function() {
+ return this.getToken(SqlParser.KEY, 0);
+};
+
+ForeignKeyTableConstraintContext.prototype.indexColumnNames = function() {
+ return this.getTypedRuleContext(IndexColumnNamesContext,0);
+};
+
+ForeignKeyTableConstraintContext.prototype.referenceDefinition = function() {
+ return this.getTypedRuleContext(ReferenceDefinitionContext,0);
+};
+
+ForeignKeyTableConstraintContext.prototype.CONSTRAINT = function() {
+ return this.getToken(SqlParser.CONSTRAINT, 0);
+};
+
+ForeignKeyTableConstraintContext.prototype.uid = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UidContext);
+ } else {
+ return this.getTypedRuleContext(UidContext,i);
+ }
+};
+ForeignKeyTableConstraintContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterForeignKeyTableConstraint(this);
+ }
+};
+
+ForeignKeyTableConstraintContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitForeignKeyTableConstraint(this);
+ }
+};
+
+ForeignKeyTableConstraintContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitForeignKeyTableConstraint(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+SqlParser.TableConstraintContext = TableConstraintContext;
+
+SqlParser.prototype.tableConstraint = function() {
+
+ var localctx = new TableConstraintContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 84, SqlParser.RULE_tableConstraint);
+ var _la = 0; // Token type
+ try {
+ this.state = 1547;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,155,this._ctx);
+ switch(la_) {
+ case 1:
+ localctx = new PrimaryKeyTableConstraintContext(this, localctx);
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1482;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.CONSTRAINT) {
+ this.state = 1478;
+ this.match(SqlParser.CONSTRAINT);
+ this.state = 1480;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (SqlParser.CURRENT - 32)) | (1 << (SqlParser.DATABASE - 32)) | (1 << (SqlParser.DIAGNOSTICS - 32)))) !== 0) || _la===SqlParser.LEFT || _la===SqlParser.NUMBER || _la===SqlParser.RIGHT || _la===SqlParser.STACKED || ((((_la - 199)) & ~0x1f) == 0 && ((1 << (_la - 199)) & ((1 << (SqlParser.DATE - 199)) | (1 << (SqlParser.TIME - 199)) | (1 << (SqlParser.TIMESTAMP - 199)) | (1 << (SqlParser.DATETIME - 199)) | (1 << (SqlParser.YEAR - 199)) | (1 << (SqlParser.TEXT - 199)) | (1 << (SqlParser.ENUM - 199)) | (1 << (SqlParser.SERIAL - 199)))) !== 0) || ((((_la - 233)) & ~0x1f) == 0 && ((1 << (_la - 233)) & ((1 << (SqlParser.JSON_VALID - 233)) | (1 << (SqlParser.JSON_SCHEMA_VALID - 233)) | (1 << (SqlParser.COUNT - 233)) | (1 << (SqlParser.POSITION - 233)))) !== 0) || ((((_la - 270)) & ~0x1f) == 0 && ((1 << (_la - 270)) & ((1 << (SqlParser.ACCOUNT - 270)) | (1 << (SqlParser.ACTION - 270)) | (1 << (SqlParser.AFTER - 270)) | (1 << (SqlParser.AGGREGATE - 270)) | (1 << (SqlParser.ALGORITHM - 270)) | (1 << (SqlParser.ANY - 270)) | (1 << (SqlParser.AT - 270)) | (1 << (SqlParser.AUTHORS - 270)) | (1 << (SqlParser.AUTOCOMMIT - 270)) | (1 << (SqlParser.AUTOEXTEND_SIZE - 270)) | (1 << (SqlParser.AUTO_INCREMENT - 270)) | (1 << (SqlParser.AVG_ROW_LENGTH - 270)) | (1 << (SqlParser.BEGIN - 270)) | (1 << (SqlParser.BINLOG - 270)) | (1 << (SqlParser.BIT - 270)) | (1 << (SqlParser.BLOCK - 270)) | (1 << (SqlParser.BOOL - 270)) | (1 << (SqlParser.BOOLEAN - 270)) | (1 << (SqlParser.BTREE - 270)) | (1 << (SqlParser.CACHE - 270)) | (1 << (SqlParser.CASCADED - 270)) | (1 << (SqlParser.CHAIN - 270)) | (1 << (SqlParser.CHANGED - 270)) | (1 << (SqlParser.CHANNEL - 270)) | (1 << (SqlParser.CHECKSUM - 270)) | (1 << (SqlParser.PAGE_CHECKSUM - 270)) | (1 << (SqlParser.CIPHER - 270)) | (1 << (SqlParser.CLASS_ORIGIN - 270)) | (1 << (SqlParser.CLIENT - 270)) | (1 << (SqlParser.CLOSE - 270)) | (1 << (SqlParser.COALESCE - 270)) | (1 << (SqlParser.CODE - 270)))) !== 0) || ((((_la - 302)) & ~0x1f) == 0 && ((1 << (_la - 302)) & ((1 << (SqlParser.COLUMNS - 302)) | (1 << (SqlParser.COLUMN_FORMAT - 302)) | (1 << (SqlParser.COLUMN_NAME - 302)) | (1 << (SqlParser.COMMENT - 302)) | (1 << (SqlParser.COMMIT - 302)) | (1 << (SqlParser.COMPACT - 302)) | (1 << (SqlParser.COMPLETION - 302)) | (1 << (SqlParser.COMPRESSED - 302)) | (1 << (SqlParser.COMPRESSION - 302)) | (1 << (SqlParser.CONCURRENT - 302)) | (1 << (SqlParser.CONNECTION - 302)) | (1 << (SqlParser.CONSISTENT - 302)) | (1 << (SqlParser.CONSTRAINT_CATALOG - 302)) | (1 << (SqlParser.CONSTRAINT_SCHEMA - 302)) | (1 << (SqlParser.CONSTRAINT_NAME - 302)) | (1 << (SqlParser.CONTAINS - 302)) | (1 << (SqlParser.CONTEXT - 302)) | (1 << (SqlParser.CONTRIBUTORS - 302)) | (1 << (SqlParser.COPY - 302)) | (1 << (SqlParser.CPU - 302)) | (1 << (SqlParser.CURSOR_NAME - 302)) | (1 << (SqlParser.DATA - 302)) | (1 << (SqlParser.DATAFILE - 302)) | (1 << (SqlParser.DEALLOCATE - 302)) | (1 << (SqlParser.DEFAULT_AUTH - 302)) | (1 << (SqlParser.DEFINER - 302)) | (1 << (SqlParser.DELAY_KEY_WRITE - 302)) | (1 << (SqlParser.DES_KEY_FILE - 302)) | (1 << (SqlParser.DIRECTORY - 302)) | (1 << (SqlParser.DISABLE - 302)) | (1 << (SqlParser.DISCARD - 302)) | (1 << (SqlParser.DISK - 302)))) !== 0) || ((((_la - 334)) & ~0x1f) == 0 && ((1 << (_la - 334)) & ((1 << (SqlParser.DO - 334)) | (1 << (SqlParser.DUMPFILE - 334)) | (1 << (SqlParser.DUPLICATE - 334)) | (1 << (SqlParser.DYNAMIC - 334)) | (1 << (SqlParser.ENABLE - 334)) | (1 << (SqlParser.ENCRYPTION - 334)) | (1 << (SqlParser.END - 334)) | (1 << (SqlParser.ENDS - 334)) | (1 << (SqlParser.ENGINE - 334)) | (1 << (SqlParser.ENGINES - 334)) | (1 << (SqlParser.ERROR - 334)) | (1 << (SqlParser.ERRORS - 334)) | (1 << (SqlParser.ESCAPE - 334)) | (1 << (SqlParser.EVEN - 334)) | (1 << (SqlParser.EVENT - 334)) | (1 << (SqlParser.EVENTS - 334)) | (1 << (SqlParser.EVERY - 334)) | (1 << (SqlParser.EXCHANGE - 334)) | (1 << (SqlParser.EXCLUSIVE - 334)) | (1 << (SqlParser.EXPIRE - 334)) | (1 << (SqlParser.EXPORT - 334)) | (1 << (SqlParser.EXTENDED - 334)) | (1 << (SqlParser.EXTENT_SIZE - 334)) | (1 << (SqlParser.FAST - 334)) | (1 << (SqlParser.FAULTS - 334)) | (1 << (SqlParser.FIELDS - 334)) | (1 << (SqlParser.FILE_BLOCK_SIZE - 334)) | (1 << (SqlParser.FILTER - 334)) | (1 << (SqlParser.FIRST - 334)) | (1 << (SqlParser.FIXED - 334)) | (1 << (SqlParser.FLUSH - 334)) | (1 << (SqlParser.FOLLOWS - 334)))) !== 0) || ((((_la - 366)) & ~0x1f) == 0 && ((1 << (_la - 366)) & ((1 << (SqlParser.FOUND - 366)) | (1 << (SqlParser.FULL - 366)) | (1 << (SqlParser.FUNCTION - 366)) | (1 << (SqlParser.GENERAL - 366)) | (1 << (SqlParser.GLOBAL - 366)) | (1 << (SqlParser.GRANTS - 366)) | (1 << (SqlParser.GROUP_REPLICATION - 366)) | (1 << (SqlParser.HANDLER - 366)) | (1 << (SqlParser.HASH - 366)) | (1 << (SqlParser.HELP - 366)) | (1 << (SqlParser.HOST - 366)) | (1 << (SqlParser.HOSTS - 366)) | (1 << (SqlParser.IDENTIFIED - 366)) | (1 << (SqlParser.IGNORE_SERVER_IDS - 366)) | (1 << (SqlParser.IMPORT - 366)) | (1 << (SqlParser.INDEXES - 366)) | (1 << (SqlParser.INITIAL_SIZE - 366)) | (1 << (SqlParser.INPLACE - 366)) | (1 << (SqlParser.INSERT_METHOD - 366)) | (1 << (SqlParser.INSTALL - 366)) | (1 << (SqlParser.INSTANCE - 366)) | (1 << (SqlParser.INVISIBLE - 366)) | (1 << (SqlParser.INVOKER - 366)) | (1 << (SqlParser.IO - 366)) | (1 << (SqlParser.IO_THREAD - 366)) | (1 << (SqlParser.IPC - 366)) | (1 << (SqlParser.ISOLATION - 366)) | (1 << (SqlParser.ISSUER - 366)) | (1 << (SqlParser.JSON - 366)) | (1 << (SqlParser.KEY_BLOCK_SIZE - 366)) | (1 << (SqlParser.LANGUAGE - 366)) | (1 << (SqlParser.LAST - 366)))) !== 0) || ((((_la - 398)) & ~0x1f) == 0 && ((1 << (_la - 398)) & ((1 << (SqlParser.LEAVES - 398)) | (1 << (SqlParser.LESS - 398)) | (1 << (SqlParser.LEVEL - 398)) | (1 << (SqlParser.LIST - 398)) | (1 << (SqlParser.LOCAL - 398)) | (1 << (SqlParser.LOGFILE - 398)) | (1 << (SqlParser.LOGS - 398)) | (1 << (SqlParser.MASTER - 398)) | (1 << (SqlParser.MASTER_AUTO_POSITION - 398)) | (1 << (SqlParser.MASTER_CONNECT_RETRY - 398)) | (1 << (SqlParser.MASTER_DELAY - 398)) | (1 << (SqlParser.MASTER_HEARTBEAT_PERIOD - 398)) | (1 << (SqlParser.MASTER_HOST - 398)) | (1 << (SqlParser.MASTER_LOG_FILE - 398)) | (1 << (SqlParser.MASTER_LOG_POS - 398)) | (1 << (SqlParser.MASTER_PASSWORD - 398)) | (1 << (SqlParser.MASTER_PORT - 398)) | (1 << (SqlParser.MASTER_RETRY_COUNT - 398)) | (1 << (SqlParser.MASTER_SSL - 398)) | (1 << (SqlParser.MASTER_SSL_CA - 398)) | (1 << (SqlParser.MASTER_SSL_CAPATH - 398)) | (1 << (SqlParser.MASTER_SSL_CERT - 398)) | (1 << (SqlParser.MASTER_SSL_CIPHER - 398)) | (1 << (SqlParser.MASTER_SSL_CRL - 398)) | (1 << (SqlParser.MASTER_SSL_CRLPATH - 398)) | (1 << (SqlParser.MASTER_SSL_KEY - 398)) | (1 << (SqlParser.MASTER_TLS_VERSION - 398)) | (1 << (SqlParser.MASTER_USER - 398)) | (1 << (SqlParser.MAX_CONNECTIONS_PER_HOUR - 398)) | (1 << (SqlParser.MAX_QUERIES_PER_HOUR - 398)) | (1 << (SqlParser.MAX_ROWS - 398)) | (1 << (SqlParser.MAX_SIZE - 398)))) !== 0) || ((((_la - 430)) & ~0x1f) == 0 && ((1 << (_la - 430)) & ((1 << (SqlParser.MAX_UPDATES_PER_HOUR - 430)) | (1 << (SqlParser.MAX_USER_CONNECTIONS - 430)) | (1 << (SqlParser.MEDIUM - 430)) | (1 << (SqlParser.MERGE - 430)) | (1 << (SqlParser.MESSAGE_TEXT - 430)) | (1 << (SqlParser.MID - 430)) | (1 << (SqlParser.MIGRATE - 430)) | (1 << (SqlParser.MIN_ROWS - 430)) | (1 << (SqlParser.MODE - 430)) | (1 << (SqlParser.MODIFY - 430)) | (1 << (SqlParser.MUTEX - 430)) | (1 << (SqlParser.MYSQL - 430)) | (1 << (SqlParser.MYSQL_ERRNO - 430)) | (1 << (SqlParser.NAME - 430)) | (1 << (SqlParser.NAMES - 430)) | (1 << (SqlParser.NCHAR - 430)) | (1 << (SqlParser.NEVER - 430)) | (1 << (SqlParser.NEXT - 430)) | (1 << (SqlParser.NO - 430)) | (1 << (SqlParser.NODEGROUP - 430)) | (1 << (SqlParser.NONE - 430)) | (1 << (SqlParser.OFFLINE - 430)) | (1 << (SqlParser.OFFSET - 430)) | (1 << (SqlParser.OJ - 430)) | (1 << (SqlParser.OLD_PASSWORD - 430)) | (1 << (SqlParser.ONE - 430)) | (1 << (SqlParser.ONLINE - 430)) | (1 << (SqlParser.ONLY - 430)) | (1 << (SqlParser.OPEN - 430)) | (1 << (SqlParser.OPTIMIZER_COSTS - 430)) | (1 << (SqlParser.OPTIONS - 430)) | (1 << (SqlParser.OWNER - 430)))) !== 0) || ((((_la - 462)) & ~0x1f) == 0 && ((1 << (_la - 462)) & ((1 << (SqlParser.PACK_KEYS - 462)) | (1 << (SqlParser.PAGE - 462)) | (1 << (SqlParser.PARSER - 462)) | (1 << (SqlParser.PARTIAL - 462)) | (1 << (SqlParser.PARTITIONING - 462)) | (1 << (SqlParser.PARTITIONS - 462)) | (1 << (SqlParser.PASSWORD - 462)) | (1 << (SqlParser.PHASE - 462)) | (1 << (SqlParser.PLUGIN - 462)) | (1 << (SqlParser.PLUGIN_DIR - 462)) | (1 << (SqlParser.PLUGINS - 462)) | (1 << (SqlParser.PORT - 462)) | (1 << (SqlParser.PRECEDES - 462)) | (1 << (SqlParser.PREPARE - 462)) | (1 << (SqlParser.PRESERVE - 462)) | (1 << (SqlParser.PREV - 462)) | (1 << (SqlParser.PROCESSLIST - 462)) | (1 << (SqlParser.PROFILE - 462)) | (1 << (SqlParser.PROFILES - 462)) | (1 << (SqlParser.PROXY - 462)) | (1 << (SqlParser.QUERY - 462)) | (1 << (SqlParser.QUICK - 462)) | (1 << (SqlParser.REBUILD - 462)) | (1 << (SqlParser.RECOVER - 462)) | (1 << (SqlParser.REDO_BUFFER_SIZE - 462)) | (1 << (SqlParser.REDUNDANT - 462)) | (1 << (SqlParser.RELAY - 462)) | (1 << (SqlParser.RELAY_LOG_FILE - 462)) | (1 << (SqlParser.RELAY_LOG_POS - 462)) | (1 << (SqlParser.RELAYLOG - 462)) | (1 << (SqlParser.REMOVE - 462)) | (1 << (SqlParser.REORGANIZE - 462)))) !== 0) || ((((_la - 494)) & ~0x1f) == 0 && ((1 << (_la - 494)) & ((1 << (SqlParser.REPAIR - 494)) | (1 << (SqlParser.REPLICATE_DO_DB - 494)) | (1 << (SqlParser.REPLICATE_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_DB - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATE_REWRITE_DB - 494)) | (1 << (SqlParser.REPLICATE_WILD_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_WILD_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATION - 494)) | (1 << (SqlParser.RESET - 494)) | (1 << (SqlParser.RESUME - 494)) | (1 << (SqlParser.RETURNED_SQLSTATE - 494)) | (1 << (SqlParser.RETURNS - 494)) | (1 << (SqlParser.ROLE - 494)) | (1 << (SqlParser.ROLLBACK - 494)) | (1 << (SqlParser.ROLLUP - 494)) | (1 << (SqlParser.ROTATE - 494)) | (1 << (SqlParser.ROW - 494)) | (1 << (SqlParser.ROWS - 494)) | (1 << (SqlParser.ROW_FORMAT - 494)) | (1 << (SqlParser.SAVEPOINT - 494)) | (1 << (SqlParser.SCHEDULE - 494)) | (1 << (SqlParser.SECURITY - 494)) | (1 << (SqlParser.SERVER - 494)) | (1 << (SqlParser.SESSION - 494)) | (1 << (SqlParser.SHARE - 494)) | (1 << (SqlParser.SHARED - 494)) | (1 << (SqlParser.SIGNED - 494)) | (1 << (SqlParser.SIMPLE - 494)) | (1 << (SqlParser.SLAVE - 494)) | (1 << (SqlParser.SLOW - 494)) | (1 << (SqlParser.SNAPSHOT - 494)))) !== 0) || ((((_la - 526)) & ~0x1f) == 0 && ((1 << (_la - 526)) & ((1 << (SqlParser.SOCKET - 526)) | (1 << (SqlParser.SOME - 526)) | (1 << (SqlParser.SONAME - 526)) | (1 << (SqlParser.SOUNDS - 526)) | (1 << (SqlParser.SOURCE - 526)) | (1 << (SqlParser.SQL_AFTER_GTIDS - 526)) | (1 << (SqlParser.SQL_AFTER_MTS_GAPS - 526)) | (1 << (SqlParser.SQL_BEFORE_GTIDS - 526)) | (1 << (SqlParser.SQL_BUFFER_RESULT - 526)) | (1 << (SqlParser.SQL_CACHE - 526)) | (1 << (SqlParser.SQL_NO_CACHE - 526)) | (1 << (SqlParser.SQL_THREAD - 526)) | (1 << (SqlParser.START - 526)) | (1 << (SqlParser.STARTS - 526)) | (1 << (SqlParser.STATS_AUTO_RECALC - 526)) | (1 << (SqlParser.STATS_PERSISTENT - 526)) | (1 << (SqlParser.STATS_SAMPLE_PAGES - 526)) | (1 << (SqlParser.STATUS - 526)) | (1 << (SqlParser.STOP - 526)) | (1 << (SqlParser.STORAGE - 526)) | (1 << (SqlParser.STRING - 526)) | (1 << (SqlParser.SUBCLASS_ORIGIN - 526)) | (1 << (SqlParser.SUBJECT - 526)) | (1 << (SqlParser.SUBPARTITION - 526)) | (1 << (SqlParser.SUBPARTITIONS - 526)) | (1 << (SqlParser.SUSPEND - 526)) | (1 << (SqlParser.SWAPS - 526)) | (1 << (SqlParser.SWITCHES - 526)) | (1 << (SqlParser.TABLE_NAME - 526)) | (1 << (SqlParser.TABLESPACE - 526)) | (1 << (SqlParser.TEMPORARY - 526)))) !== 0) || ((((_la - 558)) & ~0x1f) == 0 && ((1 << (_la - 558)) & ((1 << (SqlParser.TEMPTABLE - 558)) | (1 << (SqlParser.THAN - 558)) | (1 << (SqlParser.TRADITIONAL - 558)) | (1 << (SqlParser.TRANSACTION - 558)) | (1 << (SqlParser.TRANSACTIONAL - 558)) | (1 << (SqlParser.TRIGGERS - 558)) | (1 << (SqlParser.TRUNCATE - 558)) | (1 << (SqlParser.UNDEFINED - 558)) | (1 << (SqlParser.UNDOFILE - 558)) | (1 << (SqlParser.UNDO_BUFFER_SIZE - 558)) | (1 << (SqlParser.UNINSTALL - 558)) | (1 << (SqlParser.UNKNOWN - 558)) | (1 << (SqlParser.UNTIL - 558)) | (1 << (SqlParser.UPGRADE - 558)) | (1 << (SqlParser.USER - 558)) | (1 << (SqlParser.USE_FRM - 558)) | (1 << (SqlParser.USER_RESOURCES - 558)) | (1 << (SqlParser.VALIDATION - 558)) | (1 << (SqlParser.VALUE - 558)) | (1 << (SqlParser.VARIABLES - 558)) | (1 << (SqlParser.VIEW - 558)) | (1 << (SqlParser.VISIBLE - 558)) | (1 << (SqlParser.WAIT - 558)) | (1 << (SqlParser.WARNINGS - 558)) | (1 << (SqlParser.WITHOUT - 558)) | (1 << (SqlParser.WORK - 558)) | (1 << (SqlParser.WRAPPER - 558)) | (1 << (SqlParser.X509 - 558)) | (1 << (SqlParser.XA - 558)) | (1 << (SqlParser.XML - 558)))) !== 0) || ((((_la - 593)) & ~0x1f) == 0 && ((1 << (_la - 593)) & ((1 << (SqlParser.INTERNAL - 593)) | (1 << (SqlParser.QUARTER - 593)) | (1 << (SqlParser.MONTH - 593)) | (1 << (SqlParser.DAY - 593)) | (1 << (SqlParser.HOUR - 593)) | (1 << (SqlParser.MINUTE - 593)) | (1 << (SqlParser.WEEK - 593)) | (1 << (SqlParser.SECOND - 593)) | (1 << (SqlParser.MICROSECOND - 593)) | (1 << (SqlParser.TABLES - 593)) | (1 << (SqlParser.ROUTINE - 593)) | (1 << (SqlParser.EXECUTE - 593)) | (1 << (SqlParser.FILE - 593)) | (1 << (SqlParser.PROCESS - 593)) | (1 << (SqlParser.RELOAD - 593)) | (1 << (SqlParser.SHUTDOWN - 593)) | (1 << (SqlParser.SUPER - 593)) | (1 << (SqlParser.PRIVILEGES - 593)) | (1 << (SqlParser.AUDIT_ADMIN - 593)) | (1 << (SqlParser.BACKUP_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ENCRYPTION_ADMIN - 593)) | (1 << (SqlParser.CLONE_ADMIN - 593)) | (1 << (SqlParser.CONNECTION_ADMIN - 593)) | (1 << (SqlParser.ENCRYPTION_KEY_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_USER - 593)) | (1 << (SqlParser.GROUP_REPLICATION_ADMIN - 593)) | (1 << (SqlParser.INNODB_REDO_LOG_ARCHIVE - 593)) | (1 << (SqlParser.NDB_STORED_USER - 593)) | (1 << (SqlParser.PERSIST_RO_VARIABLES_ADMIN - 593)))) !== 0) || ((((_la - 625)) & ~0x1f) == 0 && ((1 << (_la - 625)) & ((1 << (SqlParser.REPLICATION_APPLIER - 625)) | (1 << (SqlParser.REPLICATION_SLAVE_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_USER - 625)) | (1 << (SqlParser.ROLE_ADMIN - 625)) | (1 << (SqlParser.SESSION_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.SET_USER_ID - 625)) | (1 << (SqlParser.SHOW_ROUTINE - 625)) | (1 << (SqlParser.SYSTEM_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.TABLE_ENCRYPTION_ADMIN - 625)) | (1 << (SqlParser.VERSION_TOKEN_ADMIN - 625)) | (1 << (SqlParser.XA_RECOVER_ADMIN - 625)) | (1 << (SqlParser.ARMSCII8 - 625)) | (1 << (SqlParser.ASCII - 625)) | (1 << (SqlParser.BIG5 - 625)) | (1 << (SqlParser.CP1250 - 625)) | (1 << (SqlParser.CP1251 - 625)) | (1 << (SqlParser.CP1256 - 625)) | (1 << (SqlParser.CP1257 - 625)) | (1 << (SqlParser.CP850 - 625)) | (1 << (SqlParser.CP852 - 625)) | (1 << (SqlParser.CP866 - 625)) | (1 << (SqlParser.CP932 - 625)) | (1 << (SqlParser.DEC8 - 625)) | (1 << (SqlParser.EUCJPMS - 625)) | (1 << (SqlParser.EUCKR - 625)) | (1 << (SqlParser.GB2312 - 625)) | (1 << (SqlParser.GBK - 625)) | (1 << (SqlParser.GEOSTD8 - 625)) | (1 << (SqlParser.GREEK - 625)) | (1 << (SqlParser.HEBREW - 625)) | (1 << (SqlParser.HP8 - 625)))) !== 0) || ((((_la - 657)) & ~0x1f) == 0 && ((1 << (_la - 657)) & ((1 << (SqlParser.KEYBCS2 - 657)) | (1 << (SqlParser.KOI8R - 657)) | (1 << (SqlParser.KOI8U - 657)) | (1 << (SqlParser.LATIN1 - 657)) | (1 << (SqlParser.LATIN2 - 657)) | (1 << (SqlParser.LATIN5 - 657)) | (1 << (SqlParser.LATIN7 - 657)) | (1 << (SqlParser.MACCE - 657)) | (1 << (SqlParser.MACROMAN - 657)) | (1 << (SqlParser.SJIS - 657)) | (1 << (SqlParser.SWE7 - 657)) | (1 << (SqlParser.TIS620 - 657)) | (1 << (SqlParser.UCS2 - 657)) | (1 << (SqlParser.UJIS - 657)) | (1 << (SqlParser.UTF16 - 657)) | (1 << (SqlParser.UTF16LE - 657)) | (1 << (SqlParser.UTF32 - 657)) | (1 << (SqlParser.UTF8 - 657)) | (1 << (SqlParser.UTF8MB3 - 657)) | (1 << (SqlParser.UTF8MB4 - 657)) | (1 << (SqlParser.ARCHIVE - 657)) | (1 << (SqlParser.BLACKHOLE - 657)) | (1 << (SqlParser.CSV - 657)) | (1 << (SqlParser.FEDERATED - 657)) | (1 << (SqlParser.INNODB - 657)) | (1 << (SqlParser.MEMORY - 657)) | (1 << (SqlParser.MRG_MYISAM - 657)) | (1 << (SqlParser.MYISAM - 657)) | (1 << (SqlParser.NDB - 657)) | (1 << (SqlParser.NDBCLUSTER - 657)) | (1 << (SqlParser.PERFORMANCE_SCHEMA - 657)) | (1 << (SqlParser.TOKUDB - 657)))) !== 0) || ((((_la - 689)) & ~0x1f) == 0 && ((1 << (_la - 689)) & ((1 << (SqlParser.REPEATABLE - 689)) | (1 << (SqlParser.COMMITTED - 689)) | (1 << (SqlParser.UNCOMMITTED - 689)) | (1 << (SqlParser.SERIALIZABLE - 689)) | (1 << (SqlParser.GEOMETRYCOLLECTION - 689)) | (1 << (SqlParser.LINESTRING - 689)) | (1 << (SqlParser.MULTILINESTRING - 689)) | (1 << (SqlParser.MULTIPOINT - 689)) | (1 << (SqlParser.MULTIPOLYGON - 689)) | (1 << (SqlParser.POINT - 689)) | (1 << (SqlParser.POLYGON - 689)) | (1 << (SqlParser.ABS - 689)) | (1 << (SqlParser.ACOS - 689)) | (1 << (SqlParser.ADDDATE - 689)) | (1 << (SqlParser.ADDTIME - 689)) | (1 << (SqlParser.AES_DECRYPT - 689)) | (1 << (SqlParser.AES_ENCRYPT - 689)) | (1 << (SqlParser.AREA - 689)) | (1 << (SqlParser.ASBINARY - 689)) | (1 << (SqlParser.ASIN - 689)) | (1 << (SqlParser.ASTEXT - 689)) | (1 << (SqlParser.ASWKB - 689)) | (1 << (SqlParser.ASWKT - 689)) | (1 << (SqlParser.ASYMMETRIC_DECRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_DERIVE - 689)) | (1 << (SqlParser.ASYMMETRIC_ENCRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_SIGN - 689)) | (1 << (SqlParser.ASYMMETRIC_VERIFY - 689)) | (1 << (SqlParser.ATAN - 689)) | (1 << (SqlParser.ATAN2 - 689)))) !== 0) || ((((_la - 721)) & ~0x1f) == 0 && ((1 << (_la - 721)) & ((1 << (SqlParser.BENCHMARK - 721)) | (1 << (SqlParser.BIN - 721)) | (1 << (SqlParser.BIT_COUNT - 721)) | (1 << (SqlParser.BIT_LENGTH - 721)) | (1 << (SqlParser.BUFFER - 721)) | (1 << (SqlParser.CATALOG_NAME - 721)) | (1 << (SqlParser.CEIL - 721)) | (1 << (SqlParser.CEILING - 721)) | (1 << (SqlParser.CENTROID - 721)) | (1 << (SqlParser.CHARACTER_LENGTH - 721)) | (1 << (SqlParser.CHARSET - 721)) | (1 << (SqlParser.CHAR_LENGTH - 721)) | (1 << (SqlParser.COERCIBILITY - 721)) | (1 << (SqlParser.COLLATION - 721)) | (1 << (SqlParser.COMPRESS - 721)) | (1 << (SqlParser.CONCAT - 721)) | (1 << (SqlParser.CONCAT_WS - 721)) | (1 << (SqlParser.CONNECTION_ID - 721)) | (1 << (SqlParser.CONV - 721)) | (1 << (SqlParser.CONVERT_TZ - 721)) | (1 << (SqlParser.COS - 721)) | (1 << (SqlParser.COT - 721)) | (1 << (SqlParser.CRC32 - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PRIV_KEY - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PUB_KEY - 721)) | (1 << (SqlParser.CREATE_DH_PARAMETERS - 721)) | (1 << (SqlParser.CREATE_DIGEST - 721)) | (1 << (SqlParser.CROSSES - 721)) | (1 << (SqlParser.DATEDIFF - 721)) | (1 << (SqlParser.DATE_FORMAT - 721)) | (1 << (SqlParser.DAYNAME - 721)) | (1 << (SqlParser.DAYOFMONTH - 721)))) !== 0) || ((((_la - 753)) & ~0x1f) == 0 && ((1 << (_la - 753)) & ((1 << (SqlParser.DAYOFWEEK - 753)) | (1 << (SqlParser.DAYOFYEAR - 753)) | (1 << (SqlParser.DECODE - 753)) | (1 << (SqlParser.DEGREES - 753)) | (1 << (SqlParser.DES_DECRYPT - 753)) | (1 << (SqlParser.DES_ENCRYPT - 753)) | (1 << (SqlParser.DIMENSION - 753)) | (1 << (SqlParser.DISJOINT - 753)) | (1 << (SqlParser.ELT - 753)) | (1 << (SqlParser.ENCODE - 753)) | (1 << (SqlParser.ENCRYPT - 753)) | (1 << (SqlParser.ENDPOINT - 753)) | (1 << (SqlParser.ENVELOPE - 753)) | (1 << (SqlParser.EQUALS - 753)) | (1 << (SqlParser.EXP - 753)) | (1 << (SqlParser.EXPORT_SET - 753)) | (1 << (SqlParser.EXTERIORRING - 753)) | (1 << (SqlParser.EXTRACTVALUE - 753)) | (1 << (SqlParser.FIELD - 753)) | (1 << (SqlParser.FIND_IN_SET - 753)) | (1 << (SqlParser.FLOOR - 753)) | (1 << (SqlParser.FORMAT - 753)) | (1 << (SqlParser.FOUND_ROWS - 753)) | (1 << (SqlParser.FROM_BASE64 - 753)) | (1 << (SqlParser.FROM_DAYS - 753)) | (1 << (SqlParser.FROM_UNIXTIME - 753)) | (1 << (SqlParser.GEOMCOLLFROMTEXT - 753)) | (1 << (SqlParser.GEOMCOLLFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYFROMWKB - 753)))) !== 0) || ((((_la - 785)) & ~0x1f) == 0 && ((1 << (_la - 785)) & ((1 << (SqlParser.GEOMETRYN - 785)) | (1 << (SqlParser.GEOMETRYTYPE - 785)) | (1 << (SqlParser.GEOMFROMTEXT - 785)) | (1 << (SqlParser.GEOMFROMWKB - 785)) | (1 << (SqlParser.GET_FORMAT - 785)) | (1 << (SqlParser.GET_LOCK - 785)) | (1 << (SqlParser.GLENGTH - 785)) | (1 << (SqlParser.GREATEST - 785)) | (1 << (SqlParser.GTID_SUBSET - 785)) | (1 << (SqlParser.GTID_SUBTRACT - 785)) | (1 << (SqlParser.HEX - 785)) | (1 << (SqlParser.IFNULL - 785)) | (1 << (SqlParser.INET6_ATON - 785)) | (1 << (SqlParser.INET6_NTOA - 785)) | (1 << (SqlParser.INET_ATON - 785)) | (1 << (SqlParser.INET_NTOA - 785)) | (1 << (SqlParser.INSTR - 785)) | (1 << (SqlParser.INTERIORRINGN - 785)) | (1 << (SqlParser.INTERSECTS - 785)) | (1 << (SqlParser.ISCLOSED - 785)) | (1 << (SqlParser.ISEMPTY - 785)) | (1 << (SqlParser.ISNULL - 785)) | (1 << (SqlParser.ISSIMPLE - 785)) | (1 << (SqlParser.IS_FREE_LOCK - 785)) | (1 << (SqlParser.IS_IPV4 - 785)) | (1 << (SqlParser.IS_IPV4_COMPAT - 785)) | (1 << (SqlParser.IS_IPV4_MAPPED - 785)) | (1 << (SqlParser.IS_IPV6 - 785)) | (1 << (SqlParser.IS_USED_LOCK - 785)) | (1 << (SqlParser.LAST_INSERT_ID - 785)) | (1 << (SqlParser.LCASE - 785)) | (1 << (SqlParser.LEAST - 785)))) !== 0) || ((((_la - 817)) & ~0x1f) == 0 && ((1 << (_la - 817)) & ((1 << (SqlParser.LENGTH - 817)) | (1 << (SqlParser.LINEFROMTEXT - 817)) | (1 << (SqlParser.LINEFROMWKB - 817)) | (1 << (SqlParser.LINESTRINGFROMTEXT - 817)) | (1 << (SqlParser.LINESTRINGFROMWKB - 817)) | (1 << (SqlParser.LN - 817)) | (1 << (SqlParser.LOAD_FILE - 817)) | (1 << (SqlParser.LOCATE - 817)) | (1 << (SqlParser.LOG - 817)) | (1 << (SqlParser.LOG10 - 817)) | (1 << (SqlParser.LOG2 - 817)) | (1 << (SqlParser.LOWER - 817)) | (1 << (SqlParser.LPAD - 817)) | (1 << (SqlParser.LTRIM - 817)) | (1 << (SqlParser.MAKEDATE - 817)) | (1 << (SqlParser.MAKETIME - 817)) | (1 << (SqlParser.MAKE_SET - 817)) | (1 << (SqlParser.MASTER_POS_WAIT - 817)) | (1 << (SqlParser.MBRCONTAINS - 817)) | (1 << (SqlParser.MBRDISJOINT - 817)) | (1 << (SqlParser.MBREQUAL - 817)) | (1 << (SqlParser.MBRINTERSECTS - 817)) | (1 << (SqlParser.MBROVERLAPS - 817)) | (1 << (SqlParser.MBRTOUCHES - 817)) | (1 << (SqlParser.MBRWITHIN - 817)) | (1 << (SqlParser.MD5 - 817)) | (1 << (SqlParser.MLINEFROMTEXT - 817)) | (1 << (SqlParser.MLINEFROMWKB - 817)) | (1 << (SqlParser.MONTHNAME - 817)) | (1 << (SqlParser.MPOINTFROMTEXT - 817)) | (1 << (SqlParser.MPOINTFROMWKB - 817)) | (1 << (SqlParser.MPOLYFROMTEXT - 817)))) !== 0) || ((((_la - 849)) & ~0x1f) == 0 && ((1 << (_la - 849)) & ((1 << (SqlParser.MPOLYFROMWKB - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMTEXT - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMWKB - 849)) | (1 << (SqlParser.MULTIPOINTFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOINTFROMWKB - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMWKB - 849)) | (1 << (SqlParser.NAME_CONST - 849)) | (1 << (SqlParser.NULLIF - 849)) | (1 << (SqlParser.NUMGEOMETRIES - 849)) | (1 << (SqlParser.NUMINTERIORRINGS - 849)) | (1 << (SqlParser.NUMPOINTS - 849)) | (1 << (SqlParser.OCT - 849)) | (1 << (SqlParser.OCTET_LENGTH - 849)) | (1 << (SqlParser.ORD - 849)) | (1 << (SqlParser.OVERLAPS - 849)) | (1 << (SqlParser.PERIOD_ADD - 849)) | (1 << (SqlParser.PERIOD_DIFF - 849)) | (1 << (SqlParser.PI - 849)) | (1 << (SqlParser.POINTFROMTEXT - 849)) | (1 << (SqlParser.POINTFROMWKB - 849)) | (1 << (SqlParser.POINTN - 849)) | (1 << (SqlParser.POLYFROMTEXT - 849)) | (1 << (SqlParser.POLYFROMWKB - 849)) | (1 << (SqlParser.POLYGONFROMTEXT - 849)) | (1 << (SqlParser.POLYGONFROMWKB - 849)) | (1 << (SqlParser.POW - 849)) | (1 << (SqlParser.POWER - 849)) | (1 << (SqlParser.QUOTE - 849)) | (1 << (SqlParser.RADIANS - 849)) | (1 << (SqlParser.RAND - 849)) | (1 << (SqlParser.RANDOM_BYTES - 849)))) !== 0) || ((((_la - 881)) & ~0x1f) == 0 && ((1 << (_la - 881)) & ((1 << (SqlParser.RELEASE_LOCK - 881)) | (1 << (SqlParser.REVERSE - 881)) | (1 << (SqlParser.ROUND - 881)) | (1 << (SqlParser.ROW_COUNT - 881)) | (1 << (SqlParser.RPAD - 881)) | (1 << (SqlParser.RTRIM - 881)) | (1 << (SqlParser.SEC_TO_TIME - 881)) | (1 << (SqlParser.SESSION_USER - 881)) | (1 << (SqlParser.SHA - 881)) | (1 << (SqlParser.SHA1 - 881)) | (1 << (SqlParser.SHA2 - 881)) | (1 << (SqlParser.SCHEMA_NAME - 881)) | (1 << (SqlParser.SIGN - 881)) | (1 << (SqlParser.SIN - 881)) | (1 << (SqlParser.SLEEP - 881)) | (1 << (SqlParser.SOUNDEX - 881)) | (1 << (SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS - 881)) | (1 << (SqlParser.SQRT - 881)) | (1 << (SqlParser.SRID - 881)) | (1 << (SqlParser.STARTPOINT - 881)) | (1 << (SqlParser.STRCMP - 881)) | (1 << (SqlParser.STR_TO_DATE - 881)) | (1 << (SqlParser.ST_AREA - 881)) | (1 << (SqlParser.ST_ASBINARY - 881)) | (1 << (SqlParser.ST_ASTEXT - 881)) | (1 << (SqlParser.ST_ASWKB - 881)) | (1 << (SqlParser.ST_ASWKT - 881)) | (1 << (SqlParser.ST_BUFFER - 881)) | (1 << (SqlParser.ST_CENTROID - 881)) | (1 << (SqlParser.ST_CONTAINS - 881)) | (1 << (SqlParser.ST_CROSSES - 881)) | (1 << (SqlParser.ST_DIFFERENCE - 881)))) !== 0) || ((((_la - 913)) & ~0x1f) == 0 && ((1 << (_la - 913)) & ((1 << (SqlParser.ST_DIMENSION - 913)) | (1 << (SqlParser.ST_DISJOINT - 913)) | (1 << (SqlParser.ST_DISTANCE - 913)) | (1 << (SqlParser.ST_ENDPOINT - 913)) | (1 << (SqlParser.ST_ENVELOPE - 913)) | (1 << (SqlParser.ST_EQUALS - 913)) | (1 << (SqlParser.ST_EXTERIORRING - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYN - 913)) | (1 << (SqlParser.ST_GEOMETRYTYPE - 913)) | (1 << (SqlParser.ST_GEOMFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMFROMWKB - 913)) | (1 << (SqlParser.ST_INTERIORRINGN - 913)) | (1 << (SqlParser.ST_INTERSECTION - 913)) | (1 << (SqlParser.ST_INTERSECTS - 913)) | (1 << (SqlParser.ST_ISCLOSED - 913)) | (1 << (SqlParser.ST_ISEMPTY - 913)) | (1 << (SqlParser.ST_ISSIMPLE - 913)) | (1 << (SqlParser.ST_LINEFROMTEXT - 913)) | (1 << (SqlParser.ST_LINEFROMWKB - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMTEXT - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMWKB - 913)) | (1 << (SqlParser.ST_NUMGEOMETRIES - 913)) | (1 << (SqlParser.ST_NUMINTERIORRING - 913)) | (1 << (SqlParser.ST_NUMINTERIORRINGS - 913)) | (1 << (SqlParser.ST_NUMPOINTS - 913)))) !== 0) || ((((_la - 945)) & ~0x1f) == 0 && ((1 << (_la - 945)) & ((1 << (SqlParser.ST_OVERLAPS - 945)) | (1 << (SqlParser.ST_POINTFROMTEXT - 945)) | (1 << (SqlParser.ST_POINTFROMWKB - 945)) | (1 << (SqlParser.ST_POINTN - 945)) | (1 << (SqlParser.ST_POLYFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYFROMWKB - 945)) | (1 << (SqlParser.ST_POLYGONFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYGONFROMWKB - 945)) | (1 << (SqlParser.ST_SRID - 945)) | (1 << (SqlParser.ST_STARTPOINT - 945)) | (1 << (SqlParser.ST_SYMDIFFERENCE - 945)) | (1 << (SqlParser.ST_TOUCHES - 945)) | (1 << (SqlParser.ST_UNION - 945)) | (1 << (SqlParser.ST_WITHIN - 945)) | (1 << (SqlParser.ST_X - 945)) | (1 << (SqlParser.ST_Y - 945)) | (1 << (SqlParser.SUBDATE - 945)) | (1 << (SqlParser.SUBSTRING_INDEX - 945)) | (1 << (SqlParser.SUBTIME - 945)) | (1 << (SqlParser.SYSTEM_USER - 945)) | (1 << (SqlParser.TAN - 945)) | (1 << (SqlParser.TIMEDIFF - 945)) | (1 << (SqlParser.TIMESTAMPADD - 945)) | (1 << (SqlParser.TIMESTAMPDIFF - 945)) | (1 << (SqlParser.TIME_FORMAT - 945)) | (1 << (SqlParser.TIME_TO_SEC - 945)) | (1 << (SqlParser.TOUCHES - 945)) | (1 << (SqlParser.TO_BASE64 - 945)) | (1 << (SqlParser.TO_DAYS - 945)) | (1 << (SqlParser.TO_SECONDS - 945)) | (1 << (SqlParser.UCASE - 945)) | (1 << (SqlParser.UNCOMPRESS - 945)))) !== 0) || ((((_la - 977)) & ~0x1f) == 0 && ((1 << (_la - 977)) & ((1 << (SqlParser.UNCOMPRESSED_LENGTH - 977)) | (1 << (SqlParser.UNHEX - 977)) | (1 << (SqlParser.UNIX_TIMESTAMP - 977)) | (1 << (SqlParser.UPDATEXML - 977)) | (1 << (SqlParser.UPPER - 977)) | (1 << (SqlParser.UUID - 977)) | (1 << (SqlParser.UUID_SHORT - 977)) | (1 << (SqlParser.VALIDATE_PASSWORD_STRENGTH - 977)) | (1 << (SqlParser.VERSION - 977)) | (1 << (SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS - 977)) | (1 << (SqlParser.WEEKDAY - 977)) | (1 << (SqlParser.WEEKOFYEAR - 977)) | (1 << (SqlParser.WEIGHT_STRING - 977)) | (1 << (SqlParser.WITHIN - 977)) | (1 << (SqlParser.YEARWEEK - 977)) | (1 << (SqlParser.Y_FUNCTION - 977)) | (1 << (SqlParser.X_FUNCTION - 977)))) !== 0) || ((((_la - 1032)) & ~0x1f) == 0 && ((1 << (_la - 1032)) & ((1 << (SqlParser.CHARSET_REVERSE_QOUTE_STRING - 1032)) | (1 << (SqlParser.STRING_LITERAL - 1032)) | (1 << (SqlParser.ID - 1032)) | (1 << (SqlParser.REVERSE_QUOTE_ID - 1032)))) !== 0)) {
+ this.state = 1479;
+ localctx.name = this.uid();
+ }
+
+ }
+
+ this.state = 1484;
+ this.match(SqlParser.PRIMARY);
+ this.state = 1485;
+ this.match(SqlParser.KEY);
+ this.state = 1487;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (SqlParser.CURRENT - 32)) | (1 << (SqlParser.DATABASE - 32)) | (1 << (SqlParser.DIAGNOSTICS - 32)))) !== 0) || _la===SqlParser.LEFT || _la===SqlParser.NUMBER || _la===SqlParser.RIGHT || _la===SqlParser.STACKED || ((((_la - 199)) & ~0x1f) == 0 && ((1 << (_la - 199)) & ((1 << (SqlParser.DATE - 199)) | (1 << (SqlParser.TIME - 199)) | (1 << (SqlParser.TIMESTAMP - 199)) | (1 << (SqlParser.DATETIME - 199)) | (1 << (SqlParser.YEAR - 199)) | (1 << (SqlParser.TEXT - 199)) | (1 << (SqlParser.ENUM - 199)) | (1 << (SqlParser.SERIAL - 199)))) !== 0) || ((((_la - 233)) & ~0x1f) == 0 && ((1 << (_la - 233)) & ((1 << (SqlParser.JSON_VALID - 233)) | (1 << (SqlParser.JSON_SCHEMA_VALID - 233)) | (1 << (SqlParser.COUNT - 233)) | (1 << (SqlParser.POSITION - 233)))) !== 0) || ((((_la - 270)) & ~0x1f) == 0 && ((1 << (_la - 270)) & ((1 << (SqlParser.ACCOUNT - 270)) | (1 << (SqlParser.ACTION - 270)) | (1 << (SqlParser.AFTER - 270)) | (1 << (SqlParser.AGGREGATE - 270)) | (1 << (SqlParser.ALGORITHM - 270)) | (1 << (SqlParser.ANY - 270)) | (1 << (SqlParser.AT - 270)) | (1 << (SqlParser.AUTHORS - 270)) | (1 << (SqlParser.AUTOCOMMIT - 270)) | (1 << (SqlParser.AUTOEXTEND_SIZE - 270)) | (1 << (SqlParser.AUTO_INCREMENT - 270)) | (1 << (SqlParser.AVG_ROW_LENGTH - 270)) | (1 << (SqlParser.BEGIN - 270)) | (1 << (SqlParser.BINLOG - 270)) | (1 << (SqlParser.BIT - 270)) | (1 << (SqlParser.BLOCK - 270)) | (1 << (SqlParser.BOOL - 270)) | (1 << (SqlParser.BOOLEAN - 270)) | (1 << (SqlParser.BTREE - 270)) | (1 << (SqlParser.CACHE - 270)) | (1 << (SqlParser.CASCADED - 270)) | (1 << (SqlParser.CHAIN - 270)) | (1 << (SqlParser.CHANGED - 270)) | (1 << (SqlParser.CHANNEL - 270)) | (1 << (SqlParser.CHECKSUM - 270)) | (1 << (SqlParser.PAGE_CHECKSUM - 270)) | (1 << (SqlParser.CIPHER - 270)) | (1 << (SqlParser.CLASS_ORIGIN - 270)) | (1 << (SqlParser.CLIENT - 270)) | (1 << (SqlParser.CLOSE - 270)) | (1 << (SqlParser.COALESCE - 270)) | (1 << (SqlParser.CODE - 270)))) !== 0) || ((((_la - 302)) & ~0x1f) == 0 && ((1 << (_la - 302)) & ((1 << (SqlParser.COLUMNS - 302)) | (1 << (SqlParser.COLUMN_FORMAT - 302)) | (1 << (SqlParser.COLUMN_NAME - 302)) | (1 << (SqlParser.COMMENT - 302)) | (1 << (SqlParser.COMMIT - 302)) | (1 << (SqlParser.COMPACT - 302)) | (1 << (SqlParser.COMPLETION - 302)) | (1 << (SqlParser.COMPRESSED - 302)) | (1 << (SqlParser.COMPRESSION - 302)) | (1 << (SqlParser.CONCURRENT - 302)) | (1 << (SqlParser.CONNECTION - 302)) | (1 << (SqlParser.CONSISTENT - 302)) | (1 << (SqlParser.CONSTRAINT_CATALOG - 302)) | (1 << (SqlParser.CONSTRAINT_SCHEMA - 302)) | (1 << (SqlParser.CONSTRAINT_NAME - 302)) | (1 << (SqlParser.CONTAINS - 302)) | (1 << (SqlParser.CONTEXT - 302)) | (1 << (SqlParser.CONTRIBUTORS - 302)) | (1 << (SqlParser.COPY - 302)) | (1 << (SqlParser.CPU - 302)) | (1 << (SqlParser.CURSOR_NAME - 302)) | (1 << (SqlParser.DATA - 302)) | (1 << (SqlParser.DATAFILE - 302)) | (1 << (SqlParser.DEALLOCATE - 302)) | (1 << (SqlParser.DEFAULT_AUTH - 302)) | (1 << (SqlParser.DEFINER - 302)) | (1 << (SqlParser.DELAY_KEY_WRITE - 302)) | (1 << (SqlParser.DES_KEY_FILE - 302)) | (1 << (SqlParser.DIRECTORY - 302)) | (1 << (SqlParser.DISABLE - 302)) | (1 << (SqlParser.DISCARD - 302)) | (1 << (SqlParser.DISK - 302)))) !== 0) || ((((_la - 334)) & ~0x1f) == 0 && ((1 << (_la - 334)) & ((1 << (SqlParser.DO - 334)) | (1 << (SqlParser.DUMPFILE - 334)) | (1 << (SqlParser.DUPLICATE - 334)) | (1 << (SqlParser.DYNAMIC - 334)) | (1 << (SqlParser.ENABLE - 334)) | (1 << (SqlParser.ENCRYPTION - 334)) | (1 << (SqlParser.END - 334)) | (1 << (SqlParser.ENDS - 334)) | (1 << (SqlParser.ENGINE - 334)) | (1 << (SqlParser.ENGINES - 334)) | (1 << (SqlParser.ERROR - 334)) | (1 << (SqlParser.ERRORS - 334)) | (1 << (SqlParser.ESCAPE - 334)) | (1 << (SqlParser.EVEN - 334)) | (1 << (SqlParser.EVENT - 334)) | (1 << (SqlParser.EVENTS - 334)) | (1 << (SqlParser.EVERY - 334)) | (1 << (SqlParser.EXCHANGE - 334)) | (1 << (SqlParser.EXCLUSIVE - 334)) | (1 << (SqlParser.EXPIRE - 334)) | (1 << (SqlParser.EXPORT - 334)) | (1 << (SqlParser.EXTENDED - 334)) | (1 << (SqlParser.EXTENT_SIZE - 334)) | (1 << (SqlParser.FAST - 334)) | (1 << (SqlParser.FAULTS - 334)) | (1 << (SqlParser.FIELDS - 334)) | (1 << (SqlParser.FILE_BLOCK_SIZE - 334)) | (1 << (SqlParser.FILTER - 334)) | (1 << (SqlParser.FIRST - 334)) | (1 << (SqlParser.FIXED - 334)) | (1 << (SqlParser.FLUSH - 334)) | (1 << (SqlParser.FOLLOWS - 334)))) !== 0) || ((((_la - 366)) & ~0x1f) == 0 && ((1 << (_la - 366)) & ((1 << (SqlParser.FOUND - 366)) | (1 << (SqlParser.FULL - 366)) | (1 << (SqlParser.FUNCTION - 366)) | (1 << (SqlParser.GENERAL - 366)) | (1 << (SqlParser.GLOBAL - 366)) | (1 << (SqlParser.GRANTS - 366)) | (1 << (SqlParser.GROUP_REPLICATION - 366)) | (1 << (SqlParser.HANDLER - 366)) | (1 << (SqlParser.HASH - 366)) | (1 << (SqlParser.HELP - 366)) | (1 << (SqlParser.HOST - 366)) | (1 << (SqlParser.HOSTS - 366)) | (1 << (SqlParser.IDENTIFIED - 366)) | (1 << (SqlParser.IGNORE_SERVER_IDS - 366)) | (1 << (SqlParser.IMPORT - 366)) | (1 << (SqlParser.INDEXES - 366)) | (1 << (SqlParser.INITIAL_SIZE - 366)) | (1 << (SqlParser.INPLACE - 366)) | (1 << (SqlParser.INSERT_METHOD - 366)) | (1 << (SqlParser.INSTALL - 366)) | (1 << (SqlParser.INSTANCE - 366)) | (1 << (SqlParser.INVISIBLE - 366)) | (1 << (SqlParser.INVOKER - 366)) | (1 << (SqlParser.IO - 366)) | (1 << (SqlParser.IO_THREAD - 366)) | (1 << (SqlParser.IPC - 366)) | (1 << (SqlParser.ISOLATION - 366)) | (1 << (SqlParser.ISSUER - 366)) | (1 << (SqlParser.JSON - 366)) | (1 << (SqlParser.KEY_BLOCK_SIZE - 366)) | (1 << (SqlParser.LANGUAGE - 366)) | (1 << (SqlParser.LAST - 366)))) !== 0) || ((((_la - 398)) & ~0x1f) == 0 && ((1 << (_la - 398)) & ((1 << (SqlParser.LEAVES - 398)) | (1 << (SqlParser.LESS - 398)) | (1 << (SqlParser.LEVEL - 398)) | (1 << (SqlParser.LIST - 398)) | (1 << (SqlParser.LOCAL - 398)) | (1 << (SqlParser.LOGFILE - 398)) | (1 << (SqlParser.LOGS - 398)) | (1 << (SqlParser.MASTER - 398)) | (1 << (SqlParser.MASTER_AUTO_POSITION - 398)) | (1 << (SqlParser.MASTER_CONNECT_RETRY - 398)) | (1 << (SqlParser.MASTER_DELAY - 398)) | (1 << (SqlParser.MASTER_HEARTBEAT_PERIOD - 398)) | (1 << (SqlParser.MASTER_HOST - 398)) | (1 << (SqlParser.MASTER_LOG_FILE - 398)) | (1 << (SqlParser.MASTER_LOG_POS - 398)) | (1 << (SqlParser.MASTER_PASSWORD - 398)) | (1 << (SqlParser.MASTER_PORT - 398)) | (1 << (SqlParser.MASTER_RETRY_COUNT - 398)) | (1 << (SqlParser.MASTER_SSL - 398)) | (1 << (SqlParser.MASTER_SSL_CA - 398)) | (1 << (SqlParser.MASTER_SSL_CAPATH - 398)) | (1 << (SqlParser.MASTER_SSL_CERT - 398)) | (1 << (SqlParser.MASTER_SSL_CIPHER - 398)) | (1 << (SqlParser.MASTER_SSL_CRL - 398)) | (1 << (SqlParser.MASTER_SSL_CRLPATH - 398)) | (1 << (SqlParser.MASTER_SSL_KEY - 398)) | (1 << (SqlParser.MASTER_TLS_VERSION - 398)) | (1 << (SqlParser.MASTER_USER - 398)) | (1 << (SqlParser.MAX_CONNECTIONS_PER_HOUR - 398)) | (1 << (SqlParser.MAX_QUERIES_PER_HOUR - 398)) | (1 << (SqlParser.MAX_ROWS - 398)) | (1 << (SqlParser.MAX_SIZE - 398)))) !== 0) || ((((_la - 430)) & ~0x1f) == 0 && ((1 << (_la - 430)) & ((1 << (SqlParser.MAX_UPDATES_PER_HOUR - 430)) | (1 << (SqlParser.MAX_USER_CONNECTIONS - 430)) | (1 << (SqlParser.MEDIUM - 430)) | (1 << (SqlParser.MERGE - 430)) | (1 << (SqlParser.MESSAGE_TEXT - 430)) | (1 << (SqlParser.MID - 430)) | (1 << (SqlParser.MIGRATE - 430)) | (1 << (SqlParser.MIN_ROWS - 430)) | (1 << (SqlParser.MODE - 430)) | (1 << (SqlParser.MODIFY - 430)) | (1 << (SqlParser.MUTEX - 430)) | (1 << (SqlParser.MYSQL - 430)) | (1 << (SqlParser.MYSQL_ERRNO - 430)) | (1 << (SqlParser.NAME - 430)) | (1 << (SqlParser.NAMES - 430)) | (1 << (SqlParser.NCHAR - 430)) | (1 << (SqlParser.NEVER - 430)) | (1 << (SqlParser.NEXT - 430)) | (1 << (SqlParser.NO - 430)) | (1 << (SqlParser.NODEGROUP - 430)) | (1 << (SqlParser.NONE - 430)) | (1 << (SqlParser.OFFLINE - 430)) | (1 << (SqlParser.OFFSET - 430)) | (1 << (SqlParser.OJ - 430)) | (1 << (SqlParser.OLD_PASSWORD - 430)) | (1 << (SqlParser.ONE - 430)) | (1 << (SqlParser.ONLINE - 430)) | (1 << (SqlParser.ONLY - 430)) | (1 << (SqlParser.OPEN - 430)) | (1 << (SqlParser.OPTIMIZER_COSTS - 430)) | (1 << (SqlParser.OPTIONS - 430)) | (1 << (SqlParser.OWNER - 430)))) !== 0) || ((((_la - 462)) & ~0x1f) == 0 && ((1 << (_la - 462)) & ((1 << (SqlParser.PACK_KEYS - 462)) | (1 << (SqlParser.PAGE - 462)) | (1 << (SqlParser.PARSER - 462)) | (1 << (SqlParser.PARTIAL - 462)) | (1 << (SqlParser.PARTITIONING - 462)) | (1 << (SqlParser.PARTITIONS - 462)) | (1 << (SqlParser.PASSWORD - 462)) | (1 << (SqlParser.PHASE - 462)) | (1 << (SqlParser.PLUGIN - 462)) | (1 << (SqlParser.PLUGIN_DIR - 462)) | (1 << (SqlParser.PLUGINS - 462)) | (1 << (SqlParser.PORT - 462)) | (1 << (SqlParser.PRECEDES - 462)) | (1 << (SqlParser.PREPARE - 462)) | (1 << (SqlParser.PRESERVE - 462)) | (1 << (SqlParser.PREV - 462)) | (1 << (SqlParser.PROCESSLIST - 462)) | (1 << (SqlParser.PROFILE - 462)) | (1 << (SqlParser.PROFILES - 462)) | (1 << (SqlParser.PROXY - 462)) | (1 << (SqlParser.QUERY - 462)) | (1 << (SqlParser.QUICK - 462)) | (1 << (SqlParser.REBUILD - 462)) | (1 << (SqlParser.RECOVER - 462)) | (1 << (SqlParser.REDO_BUFFER_SIZE - 462)) | (1 << (SqlParser.REDUNDANT - 462)) | (1 << (SqlParser.RELAY - 462)) | (1 << (SqlParser.RELAY_LOG_FILE - 462)) | (1 << (SqlParser.RELAY_LOG_POS - 462)) | (1 << (SqlParser.RELAYLOG - 462)) | (1 << (SqlParser.REMOVE - 462)) | (1 << (SqlParser.REORGANIZE - 462)))) !== 0) || ((((_la - 494)) & ~0x1f) == 0 && ((1 << (_la - 494)) & ((1 << (SqlParser.REPAIR - 494)) | (1 << (SqlParser.REPLICATE_DO_DB - 494)) | (1 << (SqlParser.REPLICATE_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_DB - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATE_REWRITE_DB - 494)) | (1 << (SqlParser.REPLICATE_WILD_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_WILD_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATION - 494)) | (1 << (SqlParser.RESET - 494)) | (1 << (SqlParser.RESUME - 494)) | (1 << (SqlParser.RETURNED_SQLSTATE - 494)) | (1 << (SqlParser.RETURNS - 494)) | (1 << (SqlParser.ROLE - 494)) | (1 << (SqlParser.ROLLBACK - 494)) | (1 << (SqlParser.ROLLUP - 494)) | (1 << (SqlParser.ROTATE - 494)) | (1 << (SqlParser.ROW - 494)) | (1 << (SqlParser.ROWS - 494)) | (1 << (SqlParser.ROW_FORMAT - 494)) | (1 << (SqlParser.SAVEPOINT - 494)) | (1 << (SqlParser.SCHEDULE - 494)) | (1 << (SqlParser.SECURITY - 494)) | (1 << (SqlParser.SERVER - 494)) | (1 << (SqlParser.SESSION - 494)) | (1 << (SqlParser.SHARE - 494)) | (1 << (SqlParser.SHARED - 494)) | (1 << (SqlParser.SIGNED - 494)) | (1 << (SqlParser.SIMPLE - 494)) | (1 << (SqlParser.SLAVE - 494)) | (1 << (SqlParser.SLOW - 494)) | (1 << (SqlParser.SNAPSHOT - 494)))) !== 0) || ((((_la - 526)) & ~0x1f) == 0 && ((1 << (_la - 526)) & ((1 << (SqlParser.SOCKET - 526)) | (1 << (SqlParser.SOME - 526)) | (1 << (SqlParser.SONAME - 526)) | (1 << (SqlParser.SOUNDS - 526)) | (1 << (SqlParser.SOURCE - 526)) | (1 << (SqlParser.SQL_AFTER_GTIDS - 526)) | (1 << (SqlParser.SQL_AFTER_MTS_GAPS - 526)) | (1 << (SqlParser.SQL_BEFORE_GTIDS - 526)) | (1 << (SqlParser.SQL_BUFFER_RESULT - 526)) | (1 << (SqlParser.SQL_CACHE - 526)) | (1 << (SqlParser.SQL_NO_CACHE - 526)) | (1 << (SqlParser.SQL_THREAD - 526)) | (1 << (SqlParser.START - 526)) | (1 << (SqlParser.STARTS - 526)) | (1 << (SqlParser.STATS_AUTO_RECALC - 526)) | (1 << (SqlParser.STATS_PERSISTENT - 526)) | (1 << (SqlParser.STATS_SAMPLE_PAGES - 526)) | (1 << (SqlParser.STATUS - 526)) | (1 << (SqlParser.STOP - 526)) | (1 << (SqlParser.STORAGE - 526)) | (1 << (SqlParser.STRING - 526)) | (1 << (SqlParser.SUBCLASS_ORIGIN - 526)) | (1 << (SqlParser.SUBJECT - 526)) | (1 << (SqlParser.SUBPARTITION - 526)) | (1 << (SqlParser.SUBPARTITIONS - 526)) | (1 << (SqlParser.SUSPEND - 526)) | (1 << (SqlParser.SWAPS - 526)) | (1 << (SqlParser.SWITCHES - 526)) | (1 << (SqlParser.TABLE_NAME - 526)) | (1 << (SqlParser.TABLESPACE - 526)) | (1 << (SqlParser.TEMPORARY - 526)))) !== 0) || ((((_la - 558)) & ~0x1f) == 0 && ((1 << (_la - 558)) & ((1 << (SqlParser.TEMPTABLE - 558)) | (1 << (SqlParser.THAN - 558)) | (1 << (SqlParser.TRADITIONAL - 558)) | (1 << (SqlParser.TRANSACTION - 558)) | (1 << (SqlParser.TRANSACTIONAL - 558)) | (1 << (SqlParser.TRIGGERS - 558)) | (1 << (SqlParser.TRUNCATE - 558)) | (1 << (SqlParser.UNDEFINED - 558)) | (1 << (SqlParser.UNDOFILE - 558)) | (1 << (SqlParser.UNDO_BUFFER_SIZE - 558)) | (1 << (SqlParser.UNINSTALL - 558)) | (1 << (SqlParser.UNKNOWN - 558)) | (1 << (SqlParser.UNTIL - 558)) | (1 << (SqlParser.UPGRADE - 558)) | (1 << (SqlParser.USER - 558)) | (1 << (SqlParser.USE_FRM - 558)) | (1 << (SqlParser.USER_RESOURCES - 558)) | (1 << (SqlParser.VALIDATION - 558)) | (1 << (SqlParser.VALUE - 558)) | (1 << (SqlParser.VARIABLES - 558)) | (1 << (SqlParser.VIEW - 558)) | (1 << (SqlParser.VISIBLE - 558)) | (1 << (SqlParser.WAIT - 558)) | (1 << (SqlParser.WARNINGS - 558)) | (1 << (SqlParser.WITHOUT - 558)) | (1 << (SqlParser.WORK - 558)) | (1 << (SqlParser.WRAPPER - 558)) | (1 << (SqlParser.X509 - 558)) | (1 << (SqlParser.XA - 558)) | (1 << (SqlParser.XML - 558)))) !== 0) || ((((_la - 593)) & ~0x1f) == 0 && ((1 << (_la - 593)) & ((1 << (SqlParser.INTERNAL - 593)) | (1 << (SqlParser.QUARTER - 593)) | (1 << (SqlParser.MONTH - 593)) | (1 << (SqlParser.DAY - 593)) | (1 << (SqlParser.HOUR - 593)) | (1 << (SqlParser.MINUTE - 593)) | (1 << (SqlParser.WEEK - 593)) | (1 << (SqlParser.SECOND - 593)) | (1 << (SqlParser.MICROSECOND - 593)) | (1 << (SqlParser.TABLES - 593)) | (1 << (SqlParser.ROUTINE - 593)) | (1 << (SqlParser.EXECUTE - 593)) | (1 << (SqlParser.FILE - 593)) | (1 << (SqlParser.PROCESS - 593)) | (1 << (SqlParser.RELOAD - 593)) | (1 << (SqlParser.SHUTDOWN - 593)) | (1 << (SqlParser.SUPER - 593)) | (1 << (SqlParser.PRIVILEGES - 593)) | (1 << (SqlParser.AUDIT_ADMIN - 593)) | (1 << (SqlParser.BACKUP_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ENCRYPTION_ADMIN - 593)) | (1 << (SqlParser.CLONE_ADMIN - 593)) | (1 << (SqlParser.CONNECTION_ADMIN - 593)) | (1 << (SqlParser.ENCRYPTION_KEY_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_USER - 593)) | (1 << (SqlParser.GROUP_REPLICATION_ADMIN - 593)) | (1 << (SqlParser.INNODB_REDO_LOG_ARCHIVE - 593)) | (1 << (SqlParser.NDB_STORED_USER - 593)) | (1 << (SqlParser.PERSIST_RO_VARIABLES_ADMIN - 593)))) !== 0) || ((((_la - 625)) & ~0x1f) == 0 && ((1 << (_la - 625)) & ((1 << (SqlParser.REPLICATION_APPLIER - 625)) | (1 << (SqlParser.REPLICATION_SLAVE_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_USER - 625)) | (1 << (SqlParser.ROLE_ADMIN - 625)) | (1 << (SqlParser.SESSION_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.SET_USER_ID - 625)) | (1 << (SqlParser.SHOW_ROUTINE - 625)) | (1 << (SqlParser.SYSTEM_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.TABLE_ENCRYPTION_ADMIN - 625)) | (1 << (SqlParser.VERSION_TOKEN_ADMIN - 625)) | (1 << (SqlParser.XA_RECOVER_ADMIN - 625)) | (1 << (SqlParser.ARMSCII8 - 625)) | (1 << (SqlParser.ASCII - 625)) | (1 << (SqlParser.BIG5 - 625)) | (1 << (SqlParser.CP1250 - 625)) | (1 << (SqlParser.CP1251 - 625)) | (1 << (SqlParser.CP1256 - 625)) | (1 << (SqlParser.CP1257 - 625)) | (1 << (SqlParser.CP850 - 625)) | (1 << (SqlParser.CP852 - 625)) | (1 << (SqlParser.CP866 - 625)) | (1 << (SqlParser.CP932 - 625)) | (1 << (SqlParser.DEC8 - 625)) | (1 << (SqlParser.EUCJPMS - 625)) | (1 << (SqlParser.EUCKR - 625)) | (1 << (SqlParser.GB2312 - 625)) | (1 << (SqlParser.GBK - 625)) | (1 << (SqlParser.GEOSTD8 - 625)) | (1 << (SqlParser.GREEK - 625)) | (1 << (SqlParser.HEBREW - 625)) | (1 << (SqlParser.HP8 - 625)))) !== 0) || ((((_la - 657)) & ~0x1f) == 0 && ((1 << (_la - 657)) & ((1 << (SqlParser.KEYBCS2 - 657)) | (1 << (SqlParser.KOI8R - 657)) | (1 << (SqlParser.KOI8U - 657)) | (1 << (SqlParser.LATIN1 - 657)) | (1 << (SqlParser.LATIN2 - 657)) | (1 << (SqlParser.LATIN5 - 657)) | (1 << (SqlParser.LATIN7 - 657)) | (1 << (SqlParser.MACCE - 657)) | (1 << (SqlParser.MACROMAN - 657)) | (1 << (SqlParser.SJIS - 657)) | (1 << (SqlParser.SWE7 - 657)) | (1 << (SqlParser.TIS620 - 657)) | (1 << (SqlParser.UCS2 - 657)) | (1 << (SqlParser.UJIS - 657)) | (1 << (SqlParser.UTF16 - 657)) | (1 << (SqlParser.UTF16LE - 657)) | (1 << (SqlParser.UTF32 - 657)) | (1 << (SqlParser.UTF8 - 657)) | (1 << (SqlParser.UTF8MB3 - 657)) | (1 << (SqlParser.UTF8MB4 - 657)) | (1 << (SqlParser.ARCHIVE - 657)) | (1 << (SqlParser.BLACKHOLE - 657)) | (1 << (SqlParser.CSV - 657)) | (1 << (SqlParser.FEDERATED - 657)) | (1 << (SqlParser.INNODB - 657)) | (1 << (SqlParser.MEMORY - 657)) | (1 << (SqlParser.MRG_MYISAM - 657)) | (1 << (SqlParser.MYISAM - 657)) | (1 << (SqlParser.NDB - 657)) | (1 << (SqlParser.NDBCLUSTER - 657)) | (1 << (SqlParser.PERFORMANCE_SCHEMA - 657)) | (1 << (SqlParser.TOKUDB - 657)))) !== 0) || ((((_la - 689)) & ~0x1f) == 0 && ((1 << (_la - 689)) & ((1 << (SqlParser.REPEATABLE - 689)) | (1 << (SqlParser.COMMITTED - 689)) | (1 << (SqlParser.UNCOMMITTED - 689)) | (1 << (SqlParser.SERIALIZABLE - 689)) | (1 << (SqlParser.GEOMETRYCOLLECTION - 689)) | (1 << (SqlParser.LINESTRING - 689)) | (1 << (SqlParser.MULTILINESTRING - 689)) | (1 << (SqlParser.MULTIPOINT - 689)) | (1 << (SqlParser.MULTIPOLYGON - 689)) | (1 << (SqlParser.POINT - 689)) | (1 << (SqlParser.POLYGON - 689)) | (1 << (SqlParser.ABS - 689)) | (1 << (SqlParser.ACOS - 689)) | (1 << (SqlParser.ADDDATE - 689)) | (1 << (SqlParser.ADDTIME - 689)) | (1 << (SqlParser.AES_DECRYPT - 689)) | (1 << (SqlParser.AES_ENCRYPT - 689)) | (1 << (SqlParser.AREA - 689)) | (1 << (SqlParser.ASBINARY - 689)) | (1 << (SqlParser.ASIN - 689)) | (1 << (SqlParser.ASTEXT - 689)) | (1 << (SqlParser.ASWKB - 689)) | (1 << (SqlParser.ASWKT - 689)) | (1 << (SqlParser.ASYMMETRIC_DECRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_DERIVE - 689)) | (1 << (SqlParser.ASYMMETRIC_ENCRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_SIGN - 689)) | (1 << (SqlParser.ASYMMETRIC_VERIFY - 689)) | (1 << (SqlParser.ATAN - 689)) | (1 << (SqlParser.ATAN2 - 689)))) !== 0) || ((((_la - 721)) & ~0x1f) == 0 && ((1 << (_la - 721)) & ((1 << (SqlParser.BENCHMARK - 721)) | (1 << (SqlParser.BIN - 721)) | (1 << (SqlParser.BIT_COUNT - 721)) | (1 << (SqlParser.BIT_LENGTH - 721)) | (1 << (SqlParser.BUFFER - 721)) | (1 << (SqlParser.CATALOG_NAME - 721)) | (1 << (SqlParser.CEIL - 721)) | (1 << (SqlParser.CEILING - 721)) | (1 << (SqlParser.CENTROID - 721)) | (1 << (SqlParser.CHARACTER_LENGTH - 721)) | (1 << (SqlParser.CHARSET - 721)) | (1 << (SqlParser.CHAR_LENGTH - 721)) | (1 << (SqlParser.COERCIBILITY - 721)) | (1 << (SqlParser.COLLATION - 721)) | (1 << (SqlParser.COMPRESS - 721)) | (1 << (SqlParser.CONCAT - 721)) | (1 << (SqlParser.CONCAT_WS - 721)) | (1 << (SqlParser.CONNECTION_ID - 721)) | (1 << (SqlParser.CONV - 721)) | (1 << (SqlParser.CONVERT_TZ - 721)) | (1 << (SqlParser.COS - 721)) | (1 << (SqlParser.COT - 721)) | (1 << (SqlParser.CRC32 - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PRIV_KEY - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PUB_KEY - 721)) | (1 << (SqlParser.CREATE_DH_PARAMETERS - 721)) | (1 << (SqlParser.CREATE_DIGEST - 721)) | (1 << (SqlParser.CROSSES - 721)) | (1 << (SqlParser.DATEDIFF - 721)) | (1 << (SqlParser.DATE_FORMAT - 721)) | (1 << (SqlParser.DAYNAME - 721)) | (1 << (SqlParser.DAYOFMONTH - 721)))) !== 0) || ((((_la - 753)) & ~0x1f) == 0 && ((1 << (_la - 753)) & ((1 << (SqlParser.DAYOFWEEK - 753)) | (1 << (SqlParser.DAYOFYEAR - 753)) | (1 << (SqlParser.DECODE - 753)) | (1 << (SqlParser.DEGREES - 753)) | (1 << (SqlParser.DES_DECRYPT - 753)) | (1 << (SqlParser.DES_ENCRYPT - 753)) | (1 << (SqlParser.DIMENSION - 753)) | (1 << (SqlParser.DISJOINT - 753)) | (1 << (SqlParser.ELT - 753)) | (1 << (SqlParser.ENCODE - 753)) | (1 << (SqlParser.ENCRYPT - 753)) | (1 << (SqlParser.ENDPOINT - 753)) | (1 << (SqlParser.ENVELOPE - 753)) | (1 << (SqlParser.EQUALS - 753)) | (1 << (SqlParser.EXP - 753)) | (1 << (SqlParser.EXPORT_SET - 753)) | (1 << (SqlParser.EXTERIORRING - 753)) | (1 << (SqlParser.EXTRACTVALUE - 753)) | (1 << (SqlParser.FIELD - 753)) | (1 << (SqlParser.FIND_IN_SET - 753)) | (1 << (SqlParser.FLOOR - 753)) | (1 << (SqlParser.FORMAT - 753)) | (1 << (SqlParser.FOUND_ROWS - 753)) | (1 << (SqlParser.FROM_BASE64 - 753)) | (1 << (SqlParser.FROM_DAYS - 753)) | (1 << (SqlParser.FROM_UNIXTIME - 753)) | (1 << (SqlParser.GEOMCOLLFROMTEXT - 753)) | (1 << (SqlParser.GEOMCOLLFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYFROMWKB - 753)))) !== 0) || ((((_la - 785)) & ~0x1f) == 0 && ((1 << (_la - 785)) & ((1 << (SqlParser.GEOMETRYN - 785)) | (1 << (SqlParser.GEOMETRYTYPE - 785)) | (1 << (SqlParser.GEOMFROMTEXT - 785)) | (1 << (SqlParser.GEOMFROMWKB - 785)) | (1 << (SqlParser.GET_FORMAT - 785)) | (1 << (SqlParser.GET_LOCK - 785)) | (1 << (SqlParser.GLENGTH - 785)) | (1 << (SqlParser.GREATEST - 785)) | (1 << (SqlParser.GTID_SUBSET - 785)) | (1 << (SqlParser.GTID_SUBTRACT - 785)) | (1 << (SqlParser.HEX - 785)) | (1 << (SqlParser.IFNULL - 785)) | (1 << (SqlParser.INET6_ATON - 785)) | (1 << (SqlParser.INET6_NTOA - 785)) | (1 << (SqlParser.INET_ATON - 785)) | (1 << (SqlParser.INET_NTOA - 785)) | (1 << (SqlParser.INSTR - 785)) | (1 << (SqlParser.INTERIORRINGN - 785)) | (1 << (SqlParser.INTERSECTS - 785)) | (1 << (SqlParser.ISCLOSED - 785)) | (1 << (SqlParser.ISEMPTY - 785)) | (1 << (SqlParser.ISNULL - 785)) | (1 << (SqlParser.ISSIMPLE - 785)) | (1 << (SqlParser.IS_FREE_LOCK - 785)) | (1 << (SqlParser.IS_IPV4 - 785)) | (1 << (SqlParser.IS_IPV4_COMPAT - 785)) | (1 << (SqlParser.IS_IPV4_MAPPED - 785)) | (1 << (SqlParser.IS_IPV6 - 785)) | (1 << (SqlParser.IS_USED_LOCK - 785)) | (1 << (SqlParser.LAST_INSERT_ID - 785)) | (1 << (SqlParser.LCASE - 785)) | (1 << (SqlParser.LEAST - 785)))) !== 0) || ((((_la - 817)) & ~0x1f) == 0 && ((1 << (_la - 817)) & ((1 << (SqlParser.LENGTH - 817)) | (1 << (SqlParser.LINEFROMTEXT - 817)) | (1 << (SqlParser.LINEFROMWKB - 817)) | (1 << (SqlParser.LINESTRINGFROMTEXT - 817)) | (1 << (SqlParser.LINESTRINGFROMWKB - 817)) | (1 << (SqlParser.LN - 817)) | (1 << (SqlParser.LOAD_FILE - 817)) | (1 << (SqlParser.LOCATE - 817)) | (1 << (SqlParser.LOG - 817)) | (1 << (SqlParser.LOG10 - 817)) | (1 << (SqlParser.LOG2 - 817)) | (1 << (SqlParser.LOWER - 817)) | (1 << (SqlParser.LPAD - 817)) | (1 << (SqlParser.LTRIM - 817)) | (1 << (SqlParser.MAKEDATE - 817)) | (1 << (SqlParser.MAKETIME - 817)) | (1 << (SqlParser.MAKE_SET - 817)) | (1 << (SqlParser.MASTER_POS_WAIT - 817)) | (1 << (SqlParser.MBRCONTAINS - 817)) | (1 << (SqlParser.MBRDISJOINT - 817)) | (1 << (SqlParser.MBREQUAL - 817)) | (1 << (SqlParser.MBRINTERSECTS - 817)) | (1 << (SqlParser.MBROVERLAPS - 817)) | (1 << (SqlParser.MBRTOUCHES - 817)) | (1 << (SqlParser.MBRWITHIN - 817)) | (1 << (SqlParser.MD5 - 817)) | (1 << (SqlParser.MLINEFROMTEXT - 817)) | (1 << (SqlParser.MLINEFROMWKB - 817)) | (1 << (SqlParser.MONTHNAME - 817)) | (1 << (SqlParser.MPOINTFROMTEXT - 817)) | (1 << (SqlParser.MPOINTFROMWKB - 817)) | (1 << (SqlParser.MPOLYFROMTEXT - 817)))) !== 0) || ((((_la - 849)) & ~0x1f) == 0 && ((1 << (_la - 849)) & ((1 << (SqlParser.MPOLYFROMWKB - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMTEXT - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMWKB - 849)) | (1 << (SqlParser.MULTIPOINTFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOINTFROMWKB - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMWKB - 849)) | (1 << (SqlParser.NAME_CONST - 849)) | (1 << (SqlParser.NULLIF - 849)) | (1 << (SqlParser.NUMGEOMETRIES - 849)) | (1 << (SqlParser.NUMINTERIORRINGS - 849)) | (1 << (SqlParser.NUMPOINTS - 849)) | (1 << (SqlParser.OCT - 849)) | (1 << (SqlParser.OCTET_LENGTH - 849)) | (1 << (SqlParser.ORD - 849)) | (1 << (SqlParser.OVERLAPS - 849)) | (1 << (SqlParser.PERIOD_ADD - 849)) | (1 << (SqlParser.PERIOD_DIFF - 849)) | (1 << (SqlParser.PI - 849)) | (1 << (SqlParser.POINTFROMTEXT - 849)) | (1 << (SqlParser.POINTFROMWKB - 849)) | (1 << (SqlParser.POINTN - 849)) | (1 << (SqlParser.POLYFROMTEXT - 849)) | (1 << (SqlParser.POLYFROMWKB - 849)) | (1 << (SqlParser.POLYGONFROMTEXT - 849)) | (1 << (SqlParser.POLYGONFROMWKB - 849)) | (1 << (SqlParser.POW - 849)) | (1 << (SqlParser.POWER - 849)) | (1 << (SqlParser.QUOTE - 849)) | (1 << (SqlParser.RADIANS - 849)) | (1 << (SqlParser.RAND - 849)) | (1 << (SqlParser.RANDOM_BYTES - 849)))) !== 0) || ((((_la - 881)) & ~0x1f) == 0 && ((1 << (_la - 881)) & ((1 << (SqlParser.RELEASE_LOCK - 881)) | (1 << (SqlParser.REVERSE - 881)) | (1 << (SqlParser.ROUND - 881)) | (1 << (SqlParser.ROW_COUNT - 881)) | (1 << (SqlParser.RPAD - 881)) | (1 << (SqlParser.RTRIM - 881)) | (1 << (SqlParser.SEC_TO_TIME - 881)) | (1 << (SqlParser.SESSION_USER - 881)) | (1 << (SqlParser.SHA - 881)) | (1 << (SqlParser.SHA1 - 881)) | (1 << (SqlParser.SHA2 - 881)) | (1 << (SqlParser.SCHEMA_NAME - 881)) | (1 << (SqlParser.SIGN - 881)) | (1 << (SqlParser.SIN - 881)) | (1 << (SqlParser.SLEEP - 881)) | (1 << (SqlParser.SOUNDEX - 881)) | (1 << (SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS - 881)) | (1 << (SqlParser.SQRT - 881)) | (1 << (SqlParser.SRID - 881)) | (1 << (SqlParser.STARTPOINT - 881)) | (1 << (SqlParser.STRCMP - 881)) | (1 << (SqlParser.STR_TO_DATE - 881)) | (1 << (SqlParser.ST_AREA - 881)) | (1 << (SqlParser.ST_ASBINARY - 881)) | (1 << (SqlParser.ST_ASTEXT - 881)) | (1 << (SqlParser.ST_ASWKB - 881)) | (1 << (SqlParser.ST_ASWKT - 881)) | (1 << (SqlParser.ST_BUFFER - 881)) | (1 << (SqlParser.ST_CENTROID - 881)) | (1 << (SqlParser.ST_CONTAINS - 881)) | (1 << (SqlParser.ST_CROSSES - 881)) | (1 << (SqlParser.ST_DIFFERENCE - 881)))) !== 0) || ((((_la - 913)) & ~0x1f) == 0 && ((1 << (_la - 913)) & ((1 << (SqlParser.ST_DIMENSION - 913)) | (1 << (SqlParser.ST_DISJOINT - 913)) | (1 << (SqlParser.ST_DISTANCE - 913)) | (1 << (SqlParser.ST_ENDPOINT - 913)) | (1 << (SqlParser.ST_ENVELOPE - 913)) | (1 << (SqlParser.ST_EQUALS - 913)) | (1 << (SqlParser.ST_EXTERIORRING - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYN - 913)) | (1 << (SqlParser.ST_GEOMETRYTYPE - 913)) | (1 << (SqlParser.ST_GEOMFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMFROMWKB - 913)) | (1 << (SqlParser.ST_INTERIORRINGN - 913)) | (1 << (SqlParser.ST_INTERSECTION - 913)) | (1 << (SqlParser.ST_INTERSECTS - 913)) | (1 << (SqlParser.ST_ISCLOSED - 913)) | (1 << (SqlParser.ST_ISEMPTY - 913)) | (1 << (SqlParser.ST_ISSIMPLE - 913)) | (1 << (SqlParser.ST_LINEFROMTEXT - 913)) | (1 << (SqlParser.ST_LINEFROMWKB - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMTEXT - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMWKB - 913)) | (1 << (SqlParser.ST_NUMGEOMETRIES - 913)) | (1 << (SqlParser.ST_NUMINTERIORRING - 913)) | (1 << (SqlParser.ST_NUMINTERIORRINGS - 913)) | (1 << (SqlParser.ST_NUMPOINTS - 913)))) !== 0) || ((((_la - 945)) & ~0x1f) == 0 && ((1 << (_la - 945)) & ((1 << (SqlParser.ST_OVERLAPS - 945)) | (1 << (SqlParser.ST_POINTFROMTEXT - 945)) | (1 << (SqlParser.ST_POINTFROMWKB - 945)) | (1 << (SqlParser.ST_POINTN - 945)) | (1 << (SqlParser.ST_POLYFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYFROMWKB - 945)) | (1 << (SqlParser.ST_POLYGONFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYGONFROMWKB - 945)) | (1 << (SqlParser.ST_SRID - 945)) | (1 << (SqlParser.ST_STARTPOINT - 945)) | (1 << (SqlParser.ST_SYMDIFFERENCE - 945)) | (1 << (SqlParser.ST_TOUCHES - 945)) | (1 << (SqlParser.ST_UNION - 945)) | (1 << (SqlParser.ST_WITHIN - 945)) | (1 << (SqlParser.ST_X - 945)) | (1 << (SqlParser.ST_Y - 945)) | (1 << (SqlParser.SUBDATE - 945)) | (1 << (SqlParser.SUBSTRING_INDEX - 945)) | (1 << (SqlParser.SUBTIME - 945)) | (1 << (SqlParser.SYSTEM_USER - 945)) | (1 << (SqlParser.TAN - 945)) | (1 << (SqlParser.TIMEDIFF - 945)) | (1 << (SqlParser.TIMESTAMPADD - 945)) | (1 << (SqlParser.TIMESTAMPDIFF - 945)) | (1 << (SqlParser.TIME_FORMAT - 945)) | (1 << (SqlParser.TIME_TO_SEC - 945)) | (1 << (SqlParser.TOUCHES - 945)) | (1 << (SqlParser.TO_BASE64 - 945)) | (1 << (SqlParser.TO_DAYS - 945)) | (1 << (SqlParser.TO_SECONDS - 945)) | (1 << (SqlParser.UCASE - 945)) | (1 << (SqlParser.UNCOMPRESS - 945)))) !== 0) || ((((_la - 977)) & ~0x1f) == 0 && ((1 << (_la - 977)) & ((1 << (SqlParser.UNCOMPRESSED_LENGTH - 977)) | (1 << (SqlParser.UNHEX - 977)) | (1 << (SqlParser.UNIX_TIMESTAMP - 977)) | (1 << (SqlParser.UPDATEXML - 977)) | (1 << (SqlParser.UPPER - 977)) | (1 << (SqlParser.UUID - 977)) | (1 << (SqlParser.UUID_SHORT - 977)) | (1 << (SqlParser.VALIDATE_PASSWORD_STRENGTH - 977)) | (1 << (SqlParser.VERSION - 977)) | (1 << (SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS - 977)) | (1 << (SqlParser.WEEKDAY - 977)) | (1 << (SqlParser.WEEKOFYEAR - 977)) | (1 << (SqlParser.WEIGHT_STRING - 977)) | (1 << (SqlParser.WITHIN - 977)) | (1 << (SqlParser.YEARWEEK - 977)) | (1 << (SqlParser.Y_FUNCTION - 977)) | (1 << (SqlParser.X_FUNCTION - 977)))) !== 0) || ((((_la - 1032)) & ~0x1f) == 0 && ((1 << (_la - 1032)) & ((1 << (SqlParser.CHARSET_REVERSE_QOUTE_STRING - 1032)) | (1 << (SqlParser.STRING_LITERAL - 1032)) | (1 << (SqlParser.ID - 1032)) | (1 << (SqlParser.REVERSE_QUOTE_ID - 1032)))) !== 0)) {
+ this.state = 1486;
+ localctx.index = this.uid();
+ }
+
+ this.state = 1490;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.USING) {
+ this.state = 1489;
+ this.indexType();
+ }
+
+ this.state = 1492;
+ this.indexColumnNames();
+ this.state = 1496;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.USING || _la===SqlParser.WITH || _la===SqlParser.COMMENT || _la===SqlParser.INVISIBLE || _la===SqlParser.KEY_BLOCK_SIZE || _la===SqlParser.VISIBLE) {
+ this.state = 1493;
+ this.indexOption();
+ this.state = 1498;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+
+ case 2:
+ localctx = new UniqueKeyTableConstraintContext(this, localctx);
+ this.enterOuterAlt(localctx, 2);
+ this.state = 1503;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.CONSTRAINT) {
+ this.state = 1499;
+ this.match(SqlParser.CONSTRAINT);
+ this.state = 1501;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (SqlParser.CURRENT - 32)) | (1 << (SqlParser.DATABASE - 32)) | (1 << (SqlParser.DIAGNOSTICS - 32)))) !== 0) || _la===SqlParser.LEFT || _la===SqlParser.NUMBER || _la===SqlParser.RIGHT || _la===SqlParser.STACKED || ((((_la - 199)) & ~0x1f) == 0 && ((1 << (_la - 199)) & ((1 << (SqlParser.DATE - 199)) | (1 << (SqlParser.TIME - 199)) | (1 << (SqlParser.TIMESTAMP - 199)) | (1 << (SqlParser.DATETIME - 199)) | (1 << (SqlParser.YEAR - 199)) | (1 << (SqlParser.TEXT - 199)) | (1 << (SqlParser.ENUM - 199)) | (1 << (SqlParser.SERIAL - 199)))) !== 0) || ((((_la - 233)) & ~0x1f) == 0 && ((1 << (_la - 233)) & ((1 << (SqlParser.JSON_VALID - 233)) | (1 << (SqlParser.JSON_SCHEMA_VALID - 233)) | (1 << (SqlParser.COUNT - 233)) | (1 << (SqlParser.POSITION - 233)))) !== 0) || ((((_la - 270)) & ~0x1f) == 0 && ((1 << (_la - 270)) & ((1 << (SqlParser.ACCOUNT - 270)) | (1 << (SqlParser.ACTION - 270)) | (1 << (SqlParser.AFTER - 270)) | (1 << (SqlParser.AGGREGATE - 270)) | (1 << (SqlParser.ALGORITHM - 270)) | (1 << (SqlParser.ANY - 270)) | (1 << (SqlParser.AT - 270)) | (1 << (SqlParser.AUTHORS - 270)) | (1 << (SqlParser.AUTOCOMMIT - 270)) | (1 << (SqlParser.AUTOEXTEND_SIZE - 270)) | (1 << (SqlParser.AUTO_INCREMENT - 270)) | (1 << (SqlParser.AVG_ROW_LENGTH - 270)) | (1 << (SqlParser.BEGIN - 270)) | (1 << (SqlParser.BINLOG - 270)) | (1 << (SqlParser.BIT - 270)) | (1 << (SqlParser.BLOCK - 270)) | (1 << (SqlParser.BOOL - 270)) | (1 << (SqlParser.BOOLEAN - 270)) | (1 << (SqlParser.BTREE - 270)) | (1 << (SqlParser.CACHE - 270)) | (1 << (SqlParser.CASCADED - 270)) | (1 << (SqlParser.CHAIN - 270)) | (1 << (SqlParser.CHANGED - 270)) | (1 << (SqlParser.CHANNEL - 270)) | (1 << (SqlParser.CHECKSUM - 270)) | (1 << (SqlParser.PAGE_CHECKSUM - 270)) | (1 << (SqlParser.CIPHER - 270)) | (1 << (SqlParser.CLASS_ORIGIN - 270)) | (1 << (SqlParser.CLIENT - 270)) | (1 << (SqlParser.CLOSE - 270)) | (1 << (SqlParser.COALESCE - 270)) | (1 << (SqlParser.CODE - 270)))) !== 0) || ((((_la - 302)) & ~0x1f) == 0 && ((1 << (_la - 302)) & ((1 << (SqlParser.COLUMNS - 302)) | (1 << (SqlParser.COLUMN_FORMAT - 302)) | (1 << (SqlParser.COLUMN_NAME - 302)) | (1 << (SqlParser.COMMENT - 302)) | (1 << (SqlParser.COMMIT - 302)) | (1 << (SqlParser.COMPACT - 302)) | (1 << (SqlParser.COMPLETION - 302)) | (1 << (SqlParser.COMPRESSED - 302)) | (1 << (SqlParser.COMPRESSION - 302)) | (1 << (SqlParser.CONCURRENT - 302)) | (1 << (SqlParser.CONNECTION - 302)) | (1 << (SqlParser.CONSISTENT - 302)) | (1 << (SqlParser.CONSTRAINT_CATALOG - 302)) | (1 << (SqlParser.CONSTRAINT_SCHEMA - 302)) | (1 << (SqlParser.CONSTRAINT_NAME - 302)) | (1 << (SqlParser.CONTAINS - 302)) | (1 << (SqlParser.CONTEXT - 302)) | (1 << (SqlParser.CONTRIBUTORS - 302)) | (1 << (SqlParser.COPY - 302)) | (1 << (SqlParser.CPU - 302)) | (1 << (SqlParser.CURSOR_NAME - 302)) | (1 << (SqlParser.DATA - 302)) | (1 << (SqlParser.DATAFILE - 302)) | (1 << (SqlParser.DEALLOCATE - 302)) | (1 << (SqlParser.DEFAULT_AUTH - 302)) | (1 << (SqlParser.DEFINER - 302)) | (1 << (SqlParser.DELAY_KEY_WRITE - 302)) | (1 << (SqlParser.DES_KEY_FILE - 302)) | (1 << (SqlParser.DIRECTORY - 302)) | (1 << (SqlParser.DISABLE - 302)) | (1 << (SqlParser.DISCARD - 302)) | (1 << (SqlParser.DISK - 302)))) !== 0) || ((((_la - 334)) & ~0x1f) == 0 && ((1 << (_la - 334)) & ((1 << (SqlParser.DO - 334)) | (1 << (SqlParser.DUMPFILE - 334)) | (1 << (SqlParser.DUPLICATE - 334)) | (1 << (SqlParser.DYNAMIC - 334)) | (1 << (SqlParser.ENABLE - 334)) | (1 << (SqlParser.ENCRYPTION - 334)) | (1 << (SqlParser.END - 334)) | (1 << (SqlParser.ENDS - 334)) | (1 << (SqlParser.ENGINE - 334)) | (1 << (SqlParser.ENGINES - 334)) | (1 << (SqlParser.ERROR - 334)) | (1 << (SqlParser.ERRORS - 334)) | (1 << (SqlParser.ESCAPE - 334)) | (1 << (SqlParser.EVEN - 334)) | (1 << (SqlParser.EVENT - 334)) | (1 << (SqlParser.EVENTS - 334)) | (1 << (SqlParser.EVERY - 334)) | (1 << (SqlParser.EXCHANGE - 334)) | (1 << (SqlParser.EXCLUSIVE - 334)) | (1 << (SqlParser.EXPIRE - 334)) | (1 << (SqlParser.EXPORT - 334)) | (1 << (SqlParser.EXTENDED - 334)) | (1 << (SqlParser.EXTENT_SIZE - 334)) | (1 << (SqlParser.FAST - 334)) | (1 << (SqlParser.FAULTS - 334)) | (1 << (SqlParser.FIELDS - 334)) | (1 << (SqlParser.FILE_BLOCK_SIZE - 334)) | (1 << (SqlParser.FILTER - 334)) | (1 << (SqlParser.FIRST - 334)) | (1 << (SqlParser.FIXED - 334)) | (1 << (SqlParser.FLUSH - 334)) | (1 << (SqlParser.FOLLOWS - 334)))) !== 0) || ((((_la - 366)) & ~0x1f) == 0 && ((1 << (_la - 366)) & ((1 << (SqlParser.FOUND - 366)) | (1 << (SqlParser.FULL - 366)) | (1 << (SqlParser.FUNCTION - 366)) | (1 << (SqlParser.GENERAL - 366)) | (1 << (SqlParser.GLOBAL - 366)) | (1 << (SqlParser.GRANTS - 366)) | (1 << (SqlParser.GROUP_REPLICATION - 366)) | (1 << (SqlParser.HANDLER - 366)) | (1 << (SqlParser.HASH - 366)) | (1 << (SqlParser.HELP - 366)) | (1 << (SqlParser.HOST - 366)) | (1 << (SqlParser.HOSTS - 366)) | (1 << (SqlParser.IDENTIFIED - 366)) | (1 << (SqlParser.IGNORE_SERVER_IDS - 366)) | (1 << (SqlParser.IMPORT - 366)) | (1 << (SqlParser.INDEXES - 366)) | (1 << (SqlParser.INITIAL_SIZE - 366)) | (1 << (SqlParser.INPLACE - 366)) | (1 << (SqlParser.INSERT_METHOD - 366)) | (1 << (SqlParser.INSTALL - 366)) | (1 << (SqlParser.INSTANCE - 366)) | (1 << (SqlParser.INVISIBLE - 366)) | (1 << (SqlParser.INVOKER - 366)) | (1 << (SqlParser.IO - 366)) | (1 << (SqlParser.IO_THREAD - 366)) | (1 << (SqlParser.IPC - 366)) | (1 << (SqlParser.ISOLATION - 366)) | (1 << (SqlParser.ISSUER - 366)) | (1 << (SqlParser.JSON - 366)) | (1 << (SqlParser.KEY_BLOCK_SIZE - 366)) | (1 << (SqlParser.LANGUAGE - 366)) | (1 << (SqlParser.LAST - 366)))) !== 0) || ((((_la - 398)) & ~0x1f) == 0 && ((1 << (_la - 398)) & ((1 << (SqlParser.LEAVES - 398)) | (1 << (SqlParser.LESS - 398)) | (1 << (SqlParser.LEVEL - 398)) | (1 << (SqlParser.LIST - 398)) | (1 << (SqlParser.LOCAL - 398)) | (1 << (SqlParser.LOGFILE - 398)) | (1 << (SqlParser.LOGS - 398)) | (1 << (SqlParser.MASTER - 398)) | (1 << (SqlParser.MASTER_AUTO_POSITION - 398)) | (1 << (SqlParser.MASTER_CONNECT_RETRY - 398)) | (1 << (SqlParser.MASTER_DELAY - 398)) | (1 << (SqlParser.MASTER_HEARTBEAT_PERIOD - 398)) | (1 << (SqlParser.MASTER_HOST - 398)) | (1 << (SqlParser.MASTER_LOG_FILE - 398)) | (1 << (SqlParser.MASTER_LOG_POS - 398)) | (1 << (SqlParser.MASTER_PASSWORD - 398)) | (1 << (SqlParser.MASTER_PORT - 398)) | (1 << (SqlParser.MASTER_RETRY_COUNT - 398)) | (1 << (SqlParser.MASTER_SSL - 398)) | (1 << (SqlParser.MASTER_SSL_CA - 398)) | (1 << (SqlParser.MASTER_SSL_CAPATH - 398)) | (1 << (SqlParser.MASTER_SSL_CERT - 398)) | (1 << (SqlParser.MASTER_SSL_CIPHER - 398)) | (1 << (SqlParser.MASTER_SSL_CRL - 398)) | (1 << (SqlParser.MASTER_SSL_CRLPATH - 398)) | (1 << (SqlParser.MASTER_SSL_KEY - 398)) | (1 << (SqlParser.MASTER_TLS_VERSION - 398)) | (1 << (SqlParser.MASTER_USER - 398)) | (1 << (SqlParser.MAX_CONNECTIONS_PER_HOUR - 398)) | (1 << (SqlParser.MAX_QUERIES_PER_HOUR - 398)) | (1 << (SqlParser.MAX_ROWS - 398)) | (1 << (SqlParser.MAX_SIZE - 398)))) !== 0) || ((((_la - 430)) & ~0x1f) == 0 && ((1 << (_la - 430)) & ((1 << (SqlParser.MAX_UPDATES_PER_HOUR - 430)) | (1 << (SqlParser.MAX_USER_CONNECTIONS - 430)) | (1 << (SqlParser.MEDIUM - 430)) | (1 << (SqlParser.MERGE - 430)) | (1 << (SqlParser.MESSAGE_TEXT - 430)) | (1 << (SqlParser.MID - 430)) | (1 << (SqlParser.MIGRATE - 430)) | (1 << (SqlParser.MIN_ROWS - 430)) | (1 << (SqlParser.MODE - 430)) | (1 << (SqlParser.MODIFY - 430)) | (1 << (SqlParser.MUTEX - 430)) | (1 << (SqlParser.MYSQL - 430)) | (1 << (SqlParser.MYSQL_ERRNO - 430)) | (1 << (SqlParser.NAME - 430)) | (1 << (SqlParser.NAMES - 430)) | (1 << (SqlParser.NCHAR - 430)) | (1 << (SqlParser.NEVER - 430)) | (1 << (SqlParser.NEXT - 430)) | (1 << (SqlParser.NO - 430)) | (1 << (SqlParser.NODEGROUP - 430)) | (1 << (SqlParser.NONE - 430)) | (1 << (SqlParser.OFFLINE - 430)) | (1 << (SqlParser.OFFSET - 430)) | (1 << (SqlParser.OJ - 430)) | (1 << (SqlParser.OLD_PASSWORD - 430)) | (1 << (SqlParser.ONE - 430)) | (1 << (SqlParser.ONLINE - 430)) | (1 << (SqlParser.ONLY - 430)) | (1 << (SqlParser.OPEN - 430)) | (1 << (SqlParser.OPTIMIZER_COSTS - 430)) | (1 << (SqlParser.OPTIONS - 430)) | (1 << (SqlParser.OWNER - 430)))) !== 0) || ((((_la - 462)) & ~0x1f) == 0 && ((1 << (_la - 462)) & ((1 << (SqlParser.PACK_KEYS - 462)) | (1 << (SqlParser.PAGE - 462)) | (1 << (SqlParser.PARSER - 462)) | (1 << (SqlParser.PARTIAL - 462)) | (1 << (SqlParser.PARTITIONING - 462)) | (1 << (SqlParser.PARTITIONS - 462)) | (1 << (SqlParser.PASSWORD - 462)) | (1 << (SqlParser.PHASE - 462)) | (1 << (SqlParser.PLUGIN - 462)) | (1 << (SqlParser.PLUGIN_DIR - 462)) | (1 << (SqlParser.PLUGINS - 462)) | (1 << (SqlParser.PORT - 462)) | (1 << (SqlParser.PRECEDES - 462)) | (1 << (SqlParser.PREPARE - 462)) | (1 << (SqlParser.PRESERVE - 462)) | (1 << (SqlParser.PREV - 462)) | (1 << (SqlParser.PROCESSLIST - 462)) | (1 << (SqlParser.PROFILE - 462)) | (1 << (SqlParser.PROFILES - 462)) | (1 << (SqlParser.PROXY - 462)) | (1 << (SqlParser.QUERY - 462)) | (1 << (SqlParser.QUICK - 462)) | (1 << (SqlParser.REBUILD - 462)) | (1 << (SqlParser.RECOVER - 462)) | (1 << (SqlParser.REDO_BUFFER_SIZE - 462)) | (1 << (SqlParser.REDUNDANT - 462)) | (1 << (SqlParser.RELAY - 462)) | (1 << (SqlParser.RELAY_LOG_FILE - 462)) | (1 << (SqlParser.RELAY_LOG_POS - 462)) | (1 << (SqlParser.RELAYLOG - 462)) | (1 << (SqlParser.REMOVE - 462)) | (1 << (SqlParser.REORGANIZE - 462)))) !== 0) || ((((_la - 494)) & ~0x1f) == 0 && ((1 << (_la - 494)) & ((1 << (SqlParser.REPAIR - 494)) | (1 << (SqlParser.REPLICATE_DO_DB - 494)) | (1 << (SqlParser.REPLICATE_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_DB - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATE_REWRITE_DB - 494)) | (1 << (SqlParser.REPLICATE_WILD_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_WILD_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATION - 494)) | (1 << (SqlParser.RESET - 494)) | (1 << (SqlParser.RESUME - 494)) | (1 << (SqlParser.RETURNED_SQLSTATE - 494)) | (1 << (SqlParser.RETURNS - 494)) | (1 << (SqlParser.ROLE - 494)) | (1 << (SqlParser.ROLLBACK - 494)) | (1 << (SqlParser.ROLLUP - 494)) | (1 << (SqlParser.ROTATE - 494)) | (1 << (SqlParser.ROW - 494)) | (1 << (SqlParser.ROWS - 494)) | (1 << (SqlParser.ROW_FORMAT - 494)) | (1 << (SqlParser.SAVEPOINT - 494)) | (1 << (SqlParser.SCHEDULE - 494)) | (1 << (SqlParser.SECURITY - 494)) | (1 << (SqlParser.SERVER - 494)) | (1 << (SqlParser.SESSION - 494)) | (1 << (SqlParser.SHARE - 494)) | (1 << (SqlParser.SHARED - 494)) | (1 << (SqlParser.SIGNED - 494)) | (1 << (SqlParser.SIMPLE - 494)) | (1 << (SqlParser.SLAVE - 494)) | (1 << (SqlParser.SLOW - 494)) | (1 << (SqlParser.SNAPSHOT - 494)))) !== 0) || ((((_la - 526)) & ~0x1f) == 0 && ((1 << (_la - 526)) & ((1 << (SqlParser.SOCKET - 526)) | (1 << (SqlParser.SOME - 526)) | (1 << (SqlParser.SONAME - 526)) | (1 << (SqlParser.SOUNDS - 526)) | (1 << (SqlParser.SOURCE - 526)) | (1 << (SqlParser.SQL_AFTER_GTIDS - 526)) | (1 << (SqlParser.SQL_AFTER_MTS_GAPS - 526)) | (1 << (SqlParser.SQL_BEFORE_GTIDS - 526)) | (1 << (SqlParser.SQL_BUFFER_RESULT - 526)) | (1 << (SqlParser.SQL_CACHE - 526)) | (1 << (SqlParser.SQL_NO_CACHE - 526)) | (1 << (SqlParser.SQL_THREAD - 526)) | (1 << (SqlParser.START - 526)) | (1 << (SqlParser.STARTS - 526)) | (1 << (SqlParser.STATS_AUTO_RECALC - 526)) | (1 << (SqlParser.STATS_PERSISTENT - 526)) | (1 << (SqlParser.STATS_SAMPLE_PAGES - 526)) | (1 << (SqlParser.STATUS - 526)) | (1 << (SqlParser.STOP - 526)) | (1 << (SqlParser.STORAGE - 526)) | (1 << (SqlParser.STRING - 526)) | (1 << (SqlParser.SUBCLASS_ORIGIN - 526)) | (1 << (SqlParser.SUBJECT - 526)) | (1 << (SqlParser.SUBPARTITION - 526)) | (1 << (SqlParser.SUBPARTITIONS - 526)) | (1 << (SqlParser.SUSPEND - 526)) | (1 << (SqlParser.SWAPS - 526)) | (1 << (SqlParser.SWITCHES - 526)) | (1 << (SqlParser.TABLE_NAME - 526)) | (1 << (SqlParser.TABLESPACE - 526)) | (1 << (SqlParser.TEMPORARY - 526)))) !== 0) || ((((_la - 558)) & ~0x1f) == 0 && ((1 << (_la - 558)) & ((1 << (SqlParser.TEMPTABLE - 558)) | (1 << (SqlParser.THAN - 558)) | (1 << (SqlParser.TRADITIONAL - 558)) | (1 << (SqlParser.TRANSACTION - 558)) | (1 << (SqlParser.TRANSACTIONAL - 558)) | (1 << (SqlParser.TRIGGERS - 558)) | (1 << (SqlParser.TRUNCATE - 558)) | (1 << (SqlParser.UNDEFINED - 558)) | (1 << (SqlParser.UNDOFILE - 558)) | (1 << (SqlParser.UNDO_BUFFER_SIZE - 558)) | (1 << (SqlParser.UNINSTALL - 558)) | (1 << (SqlParser.UNKNOWN - 558)) | (1 << (SqlParser.UNTIL - 558)) | (1 << (SqlParser.UPGRADE - 558)) | (1 << (SqlParser.USER - 558)) | (1 << (SqlParser.USE_FRM - 558)) | (1 << (SqlParser.USER_RESOURCES - 558)) | (1 << (SqlParser.VALIDATION - 558)) | (1 << (SqlParser.VALUE - 558)) | (1 << (SqlParser.VARIABLES - 558)) | (1 << (SqlParser.VIEW - 558)) | (1 << (SqlParser.VISIBLE - 558)) | (1 << (SqlParser.WAIT - 558)) | (1 << (SqlParser.WARNINGS - 558)) | (1 << (SqlParser.WITHOUT - 558)) | (1 << (SqlParser.WORK - 558)) | (1 << (SqlParser.WRAPPER - 558)) | (1 << (SqlParser.X509 - 558)) | (1 << (SqlParser.XA - 558)) | (1 << (SqlParser.XML - 558)))) !== 0) || ((((_la - 593)) & ~0x1f) == 0 && ((1 << (_la - 593)) & ((1 << (SqlParser.INTERNAL - 593)) | (1 << (SqlParser.QUARTER - 593)) | (1 << (SqlParser.MONTH - 593)) | (1 << (SqlParser.DAY - 593)) | (1 << (SqlParser.HOUR - 593)) | (1 << (SqlParser.MINUTE - 593)) | (1 << (SqlParser.WEEK - 593)) | (1 << (SqlParser.SECOND - 593)) | (1 << (SqlParser.MICROSECOND - 593)) | (1 << (SqlParser.TABLES - 593)) | (1 << (SqlParser.ROUTINE - 593)) | (1 << (SqlParser.EXECUTE - 593)) | (1 << (SqlParser.FILE - 593)) | (1 << (SqlParser.PROCESS - 593)) | (1 << (SqlParser.RELOAD - 593)) | (1 << (SqlParser.SHUTDOWN - 593)) | (1 << (SqlParser.SUPER - 593)) | (1 << (SqlParser.PRIVILEGES - 593)) | (1 << (SqlParser.AUDIT_ADMIN - 593)) | (1 << (SqlParser.BACKUP_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ENCRYPTION_ADMIN - 593)) | (1 << (SqlParser.CLONE_ADMIN - 593)) | (1 << (SqlParser.CONNECTION_ADMIN - 593)) | (1 << (SqlParser.ENCRYPTION_KEY_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_USER - 593)) | (1 << (SqlParser.GROUP_REPLICATION_ADMIN - 593)) | (1 << (SqlParser.INNODB_REDO_LOG_ARCHIVE - 593)) | (1 << (SqlParser.NDB_STORED_USER - 593)) | (1 << (SqlParser.PERSIST_RO_VARIABLES_ADMIN - 593)))) !== 0) || ((((_la - 625)) & ~0x1f) == 0 && ((1 << (_la - 625)) & ((1 << (SqlParser.REPLICATION_APPLIER - 625)) | (1 << (SqlParser.REPLICATION_SLAVE_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_USER - 625)) | (1 << (SqlParser.ROLE_ADMIN - 625)) | (1 << (SqlParser.SESSION_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.SET_USER_ID - 625)) | (1 << (SqlParser.SHOW_ROUTINE - 625)) | (1 << (SqlParser.SYSTEM_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.TABLE_ENCRYPTION_ADMIN - 625)) | (1 << (SqlParser.VERSION_TOKEN_ADMIN - 625)) | (1 << (SqlParser.XA_RECOVER_ADMIN - 625)) | (1 << (SqlParser.ARMSCII8 - 625)) | (1 << (SqlParser.ASCII - 625)) | (1 << (SqlParser.BIG5 - 625)) | (1 << (SqlParser.CP1250 - 625)) | (1 << (SqlParser.CP1251 - 625)) | (1 << (SqlParser.CP1256 - 625)) | (1 << (SqlParser.CP1257 - 625)) | (1 << (SqlParser.CP850 - 625)) | (1 << (SqlParser.CP852 - 625)) | (1 << (SqlParser.CP866 - 625)) | (1 << (SqlParser.CP932 - 625)) | (1 << (SqlParser.DEC8 - 625)) | (1 << (SqlParser.EUCJPMS - 625)) | (1 << (SqlParser.EUCKR - 625)) | (1 << (SqlParser.GB2312 - 625)) | (1 << (SqlParser.GBK - 625)) | (1 << (SqlParser.GEOSTD8 - 625)) | (1 << (SqlParser.GREEK - 625)) | (1 << (SqlParser.HEBREW - 625)) | (1 << (SqlParser.HP8 - 625)))) !== 0) || ((((_la - 657)) & ~0x1f) == 0 && ((1 << (_la - 657)) & ((1 << (SqlParser.KEYBCS2 - 657)) | (1 << (SqlParser.KOI8R - 657)) | (1 << (SqlParser.KOI8U - 657)) | (1 << (SqlParser.LATIN1 - 657)) | (1 << (SqlParser.LATIN2 - 657)) | (1 << (SqlParser.LATIN5 - 657)) | (1 << (SqlParser.LATIN7 - 657)) | (1 << (SqlParser.MACCE - 657)) | (1 << (SqlParser.MACROMAN - 657)) | (1 << (SqlParser.SJIS - 657)) | (1 << (SqlParser.SWE7 - 657)) | (1 << (SqlParser.TIS620 - 657)) | (1 << (SqlParser.UCS2 - 657)) | (1 << (SqlParser.UJIS - 657)) | (1 << (SqlParser.UTF16 - 657)) | (1 << (SqlParser.UTF16LE - 657)) | (1 << (SqlParser.UTF32 - 657)) | (1 << (SqlParser.UTF8 - 657)) | (1 << (SqlParser.UTF8MB3 - 657)) | (1 << (SqlParser.UTF8MB4 - 657)) | (1 << (SqlParser.ARCHIVE - 657)) | (1 << (SqlParser.BLACKHOLE - 657)) | (1 << (SqlParser.CSV - 657)) | (1 << (SqlParser.FEDERATED - 657)) | (1 << (SqlParser.INNODB - 657)) | (1 << (SqlParser.MEMORY - 657)) | (1 << (SqlParser.MRG_MYISAM - 657)) | (1 << (SqlParser.MYISAM - 657)) | (1 << (SqlParser.NDB - 657)) | (1 << (SqlParser.NDBCLUSTER - 657)) | (1 << (SqlParser.PERFORMANCE_SCHEMA - 657)) | (1 << (SqlParser.TOKUDB - 657)))) !== 0) || ((((_la - 689)) & ~0x1f) == 0 && ((1 << (_la - 689)) & ((1 << (SqlParser.REPEATABLE - 689)) | (1 << (SqlParser.COMMITTED - 689)) | (1 << (SqlParser.UNCOMMITTED - 689)) | (1 << (SqlParser.SERIALIZABLE - 689)) | (1 << (SqlParser.GEOMETRYCOLLECTION - 689)) | (1 << (SqlParser.LINESTRING - 689)) | (1 << (SqlParser.MULTILINESTRING - 689)) | (1 << (SqlParser.MULTIPOINT - 689)) | (1 << (SqlParser.MULTIPOLYGON - 689)) | (1 << (SqlParser.POINT - 689)) | (1 << (SqlParser.POLYGON - 689)) | (1 << (SqlParser.ABS - 689)) | (1 << (SqlParser.ACOS - 689)) | (1 << (SqlParser.ADDDATE - 689)) | (1 << (SqlParser.ADDTIME - 689)) | (1 << (SqlParser.AES_DECRYPT - 689)) | (1 << (SqlParser.AES_ENCRYPT - 689)) | (1 << (SqlParser.AREA - 689)) | (1 << (SqlParser.ASBINARY - 689)) | (1 << (SqlParser.ASIN - 689)) | (1 << (SqlParser.ASTEXT - 689)) | (1 << (SqlParser.ASWKB - 689)) | (1 << (SqlParser.ASWKT - 689)) | (1 << (SqlParser.ASYMMETRIC_DECRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_DERIVE - 689)) | (1 << (SqlParser.ASYMMETRIC_ENCRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_SIGN - 689)) | (1 << (SqlParser.ASYMMETRIC_VERIFY - 689)) | (1 << (SqlParser.ATAN - 689)) | (1 << (SqlParser.ATAN2 - 689)))) !== 0) || ((((_la - 721)) & ~0x1f) == 0 && ((1 << (_la - 721)) & ((1 << (SqlParser.BENCHMARK - 721)) | (1 << (SqlParser.BIN - 721)) | (1 << (SqlParser.BIT_COUNT - 721)) | (1 << (SqlParser.BIT_LENGTH - 721)) | (1 << (SqlParser.BUFFER - 721)) | (1 << (SqlParser.CATALOG_NAME - 721)) | (1 << (SqlParser.CEIL - 721)) | (1 << (SqlParser.CEILING - 721)) | (1 << (SqlParser.CENTROID - 721)) | (1 << (SqlParser.CHARACTER_LENGTH - 721)) | (1 << (SqlParser.CHARSET - 721)) | (1 << (SqlParser.CHAR_LENGTH - 721)) | (1 << (SqlParser.COERCIBILITY - 721)) | (1 << (SqlParser.COLLATION - 721)) | (1 << (SqlParser.COMPRESS - 721)) | (1 << (SqlParser.CONCAT - 721)) | (1 << (SqlParser.CONCAT_WS - 721)) | (1 << (SqlParser.CONNECTION_ID - 721)) | (1 << (SqlParser.CONV - 721)) | (1 << (SqlParser.CONVERT_TZ - 721)) | (1 << (SqlParser.COS - 721)) | (1 << (SqlParser.COT - 721)) | (1 << (SqlParser.CRC32 - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PRIV_KEY - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PUB_KEY - 721)) | (1 << (SqlParser.CREATE_DH_PARAMETERS - 721)) | (1 << (SqlParser.CREATE_DIGEST - 721)) | (1 << (SqlParser.CROSSES - 721)) | (1 << (SqlParser.DATEDIFF - 721)) | (1 << (SqlParser.DATE_FORMAT - 721)) | (1 << (SqlParser.DAYNAME - 721)) | (1 << (SqlParser.DAYOFMONTH - 721)))) !== 0) || ((((_la - 753)) & ~0x1f) == 0 && ((1 << (_la - 753)) & ((1 << (SqlParser.DAYOFWEEK - 753)) | (1 << (SqlParser.DAYOFYEAR - 753)) | (1 << (SqlParser.DECODE - 753)) | (1 << (SqlParser.DEGREES - 753)) | (1 << (SqlParser.DES_DECRYPT - 753)) | (1 << (SqlParser.DES_ENCRYPT - 753)) | (1 << (SqlParser.DIMENSION - 753)) | (1 << (SqlParser.DISJOINT - 753)) | (1 << (SqlParser.ELT - 753)) | (1 << (SqlParser.ENCODE - 753)) | (1 << (SqlParser.ENCRYPT - 753)) | (1 << (SqlParser.ENDPOINT - 753)) | (1 << (SqlParser.ENVELOPE - 753)) | (1 << (SqlParser.EQUALS - 753)) | (1 << (SqlParser.EXP - 753)) | (1 << (SqlParser.EXPORT_SET - 753)) | (1 << (SqlParser.EXTERIORRING - 753)) | (1 << (SqlParser.EXTRACTVALUE - 753)) | (1 << (SqlParser.FIELD - 753)) | (1 << (SqlParser.FIND_IN_SET - 753)) | (1 << (SqlParser.FLOOR - 753)) | (1 << (SqlParser.FORMAT - 753)) | (1 << (SqlParser.FOUND_ROWS - 753)) | (1 << (SqlParser.FROM_BASE64 - 753)) | (1 << (SqlParser.FROM_DAYS - 753)) | (1 << (SqlParser.FROM_UNIXTIME - 753)) | (1 << (SqlParser.GEOMCOLLFROMTEXT - 753)) | (1 << (SqlParser.GEOMCOLLFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYFROMWKB - 753)))) !== 0) || ((((_la - 785)) & ~0x1f) == 0 && ((1 << (_la - 785)) & ((1 << (SqlParser.GEOMETRYN - 785)) | (1 << (SqlParser.GEOMETRYTYPE - 785)) | (1 << (SqlParser.GEOMFROMTEXT - 785)) | (1 << (SqlParser.GEOMFROMWKB - 785)) | (1 << (SqlParser.GET_FORMAT - 785)) | (1 << (SqlParser.GET_LOCK - 785)) | (1 << (SqlParser.GLENGTH - 785)) | (1 << (SqlParser.GREATEST - 785)) | (1 << (SqlParser.GTID_SUBSET - 785)) | (1 << (SqlParser.GTID_SUBTRACT - 785)) | (1 << (SqlParser.HEX - 785)) | (1 << (SqlParser.IFNULL - 785)) | (1 << (SqlParser.INET6_ATON - 785)) | (1 << (SqlParser.INET6_NTOA - 785)) | (1 << (SqlParser.INET_ATON - 785)) | (1 << (SqlParser.INET_NTOA - 785)) | (1 << (SqlParser.INSTR - 785)) | (1 << (SqlParser.INTERIORRINGN - 785)) | (1 << (SqlParser.INTERSECTS - 785)) | (1 << (SqlParser.ISCLOSED - 785)) | (1 << (SqlParser.ISEMPTY - 785)) | (1 << (SqlParser.ISNULL - 785)) | (1 << (SqlParser.ISSIMPLE - 785)) | (1 << (SqlParser.IS_FREE_LOCK - 785)) | (1 << (SqlParser.IS_IPV4 - 785)) | (1 << (SqlParser.IS_IPV4_COMPAT - 785)) | (1 << (SqlParser.IS_IPV4_MAPPED - 785)) | (1 << (SqlParser.IS_IPV6 - 785)) | (1 << (SqlParser.IS_USED_LOCK - 785)) | (1 << (SqlParser.LAST_INSERT_ID - 785)) | (1 << (SqlParser.LCASE - 785)) | (1 << (SqlParser.LEAST - 785)))) !== 0) || ((((_la - 817)) & ~0x1f) == 0 && ((1 << (_la - 817)) & ((1 << (SqlParser.LENGTH - 817)) | (1 << (SqlParser.LINEFROMTEXT - 817)) | (1 << (SqlParser.LINEFROMWKB - 817)) | (1 << (SqlParser.LINESTRINGFROMTEXT - 817)) | (1 << (SqlParser.LINESTRINGFROMWKB - 817)) | (1 << (SqlParser.LN - 817)) | (1 << (SqlParser.LOAD_FILE - 817)) | (1 << (SqlParser.LOCATE - 817)) | (1 << (SqlParser.LOG - 817)) | (1 << (SqlParser.LOG10 - 817)) | (1 << (SqlParser.LOG2 - 817)) | (1 << (SqlParser.LOWER - 817)) | (1 << (SqlParser.LPAD - 817)) | (1 << (SqlParser.LTRIM - 817)) | (1 << (SqlParser.MAKEDATE - 817)) | (1 << (SqlParser.MAKETIME - 817)) | (1 << (SqlParser.MAKE_SET - 817)) | (1 << (SqlParser.MASTER_POS_WAIT - 817)) | (1 << (SqlParser.MBRCONTAINS - 817)) | (1 << (SqlParser.MBRDISJOINT - 817)) | (1 << (SqlParser.MBREQUAL - 817)) | (1 << (SqlParser.MBRINTERSECTS - 817)) | (1 << (SqlParser.MBROVERLAPS - 817)) | (1 << (SqlParser.MBRTOUCHES - 817)) | (1 << (SqlParser.MBRWITHIN - 817)) | (1 << (SqlParser.MD5 - 817)) | (1 << (SqlParser.MLINEFROMTEXT - 817)) | (1 << (SqlParser.MLINEFROMWKB - 817)) | (1 << (SqlParser.MONTHNAME - 817)) | (1 << (SqlParser.MPOINTFROMTEXT - 817)) | (1 << (SqlParser.MPOINTFROMWKB - 817)) | (1 << (SqlParser.MPOLYFROMTEXT - 817)))) !== 0) || ((((_la - 849)) & ~0x1f) == 0 && ((1 << (_la - 849)) & ((1 << (SqlParser.MPOLYFROMWKB - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMTEXT - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMWKB - 849)) | (1 << (SqlParser.MULTIPOINTFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOINTFROMWKB - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMWKB - 849)) | (1 << (SqlParser.NAME_CONST - 849)) | (1 << (SqlParser.NULLIF - 849)) | (1 << (SqlParser.NUMGEOMETRIES - 849)) | (1 << (SqlParser.NUMINTERIORRINGS - 849)) | (1 << (SqlParser.NUMPOINTS - 849)) | (1 << (SqlParser.OCT - 849)) | (1 << (SqlParser.OCTET_LENGTH - 849)) | (1 << (SqlParser.ORD - 849)) | (1 << (SqlParser.OVERLAPS - 849)) | (1 << (SqlParser.PERIOD_ADD - 849)) | (1 << (SqlParser.PERIOD_DIFF - 849)) | (1 << (SqlParser.PI - 849)) | (1 << (SqlParser.POINTFROMTEXT - 849)) | (1 << (SqlParser.POINTFROMWKB - 849)) | (1 << (SqlParser.POINTN - 849)) | (1 << (SqlParser.POLYFROMTEXT - 849)) | (1 << (SqlParser.POLYFROMWKB - 849)) | (1 << (SqlParser.POLYGONFROMTEXT - 849)) | (1 << (SqlParser.POLYGONFROMWKB - 849)) | (1 << (SqlParser.POW - 849)) | (1 << (SqlParser.POWER - 849)) | (1 << (SqlParser.QUOTE - 849)) | (1 << (SqlParser.RADIANS - 849)) | (1 << (SqlParser.RAND - 849)) | (1 << (SqlParser.RANDOM_BYTES - 849)))) !== 0) || ((((_la - 881)) & ~0x1f) == 0 && ((1 << (_la - 881)) & ((1 << (SqlParser.RELEASE_LOCK - 881)) | (1 << (SqlParser.REVERSE - 881)) | (1 << (SqlParser.ROUND - 881)) | (1 << (SqlParser.ROW_COUNT - 881)) | (1 << (SqlParser.RPAD - 881)) | (1 << (SqlParser.RTRIM - 881)) | (1 << (SqlParser.SEC_TO_TIME - 881)) | (1 << (SqlParser.SESSION_USER - 881)) | (1 << (SqlParser.SHA - 881)) | (1 << (SqlParser.SHA1 - 881)) | (1 << (SqlParser.SHA2 - 881)) | (1 << (SqlParser.SCHEMA_NAME - 881)) | (1 << (SqlParser.SIGN - 881)) | (1 << (SqlParser.SIN - 881)) | (1 << (SqlParser.SLEEP - 881)) | (1 << (SqlParser.SOUNDEX - 881)) | (1 << (SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS - 881)) | (1 << (SqlParser.SQRT - 881)) | (1 << (SqlParser.SRID - 881)) | (1 << (SqlParser.STARTPOINT - 881)) | (1 << (SqlParser.STRCMP - 881)) | (1 << (SqlParser.STR_TO_DATE - 881)) | (1 << (SqlParser.ST_AREA - 881)) | (1 << (SqlParser.ST_ASBINARY - 881)) | (1 << (SqlParser.ST_ASTEXT - 881)) | (1 << (SqlParser.ST_ASWKB - 881)) | (1 << (SqlParser.ST_ASWKT - 881)) | (1 << (SqlParser.ST_BUFFER - 881)) | (1 << (SqlParser.ST_CENTROID - 881)) | (1 << (SqlParser.ST_CONTAINS - 881)) | (1 << (SqlParser.ST_CROSSES - 881)) | (1 << (SqlParser.ST_DIFFERENCE - 881)))) !== 0) || ((((_la - 913)) & ~0x1f) == 0 && ((1 << (_la - 913)) & ((1 << (SqlParser.ST_DIMENSION - 913)) | (1 << (SqlParser.ST_DISJOINT - 913)) | (1 << (SqlParser.ST_DISTANCE - 913)) | (1 << (SqlParser.ST_ENDPOINT - 913)) | (1 << (SqlParser.ST_ENVELOPE - 913)) | (1 << (SqlParser.ST_EQUALS - 913)) | (1 << (SqlParser.ST_EXTERIORRING - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYN - 913)) | (1 << (SqlParser.ST_GEOMETRYTYPE - 913)) | (1 << (SqlParser.ST_GEOMFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMFROMWKB - 913)) | (1 << (SqlParser.ST_INTERIORRINGN - 913)) | (1 << (SqlParser.ST_INTERSECTION - 913)) | (1 << (SqlParser.ST_INTERSECTS - 913)) | (1 << (SqlParser.ST_ISCLOSED - 913)) | (1 << (SqlParser.ST_ISEMPTY - 913)) | (1 << (SqlParser.ST_ISSIMPLE - 913)) | (1 << (SqlParser.ST_LINEFROMTEXT - 913)) | (1 << (SqlParser.ST_LINEFROMWKB - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMTEXT - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMWKB - 913)) | (1 << (SqlParser.ST_NUMGEOMETRIES - 913)) | (1 << (SqlParser.ST_NUMINTERIORRING - 913)) | (1 << (SqlParser.ST_NUMINTERIORRINGS - 913)) | (1 << (SqlParser.ST_NUMPOINTS - 913)))) !== 0) || ((((_la - 945)) & ~0x1f) == 0 && ((1 << (_la - 945)) & ((1 << (SqlParser.ST_OVERLAPS - 945)) | (1 << (SqlParser.ST_POINTFROMTEXT - 945)) | (1 << (SqlParser.ST_POINTFROMWKB - 945)) | (1 << (SqlParser.ST_POINTN - 945)) | (1 << (SqlParser.ST_POLYFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYFROMWKB - 945)) | (1 << (SqlParser.ST_POLYGONFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYGONFROMWKB - 945)) | (1 << (SqlParser.ST_SRID - 945)) | (1 << (SqlParser.ST_STARTPOINT - 945)) | (1 << (SqlParser.ST_SYMDIFFERENCE - 945)) | (1 << (SqlParser.ST_TOUCHES - 945)) | (1 << (SqlParser.ST_UNION - 945)) | (1 << (SqlParser.ST_WITHIN - 945)) | (1 << (SqlParser.ST_X - 945)) | (1 << (SqlParser.ST_Y - 945)) | (1 << (SqlParser.SUBDATE - 945)) | (1 << (SqlParser.SUBSTRING_INDEX - 945)) | (1 << (SqlParser.SUBTIME - 945)) | (1 << (SqlParser.SYSTEM_USER - 945)) | (1 << (SqlParser.TAN - 945)) | (1 << (SqlParser.TIMEDIFF - 945)) | (1 << (SqlParser.TIMESTAMPADD - 945)) | (1 << (SqlParser.TIMESTAMPDIFF - 945)) | (1 << (SqlParser.TIME_FORMAT - 945)) | (1 << (SqlParser.TIME_TO_SEC - 945)) | (1 << (SqlParser.TOUCHES - 945)) | (1 << (SqlParser.TO_BASE64 - 945)) | (1 << (SqlParser.TO_DAYS - 945)) | (1 << (SqlParser.TO_SECONDS - 945)) | (1 << (SqlParser.UCASE - 945)) | (1 << (SqlParser.UNCOMPRESS - 945)))) !== 0) || ((((_la - 977)) & ~0x1f) == 0 && ((1 << (_la - 977)) & ((1 << (SqlParser.UNCOMPRESSED_LENGTH - 977)) | (1 << (SqlParser.UNHEX - 977)) | (1 << (SqlParser.UNIX_TIMESTAMP - 977)) | (1 << (SqlParser.UPDATEXML - 977)) | (1 << (SqlParser.UPPER - 977)) | (1 << (SqlParser.UUID - 977)) | (1 << (SqlParser.UUID_SHORT - 977)) | (1 << (SqlParser.VALIDATE_PASSWORD_STRENGTH - 977)) | (1 << (SqlParser.VERSION - 977)) | (1 << (SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS - 977)) | (1 << (SqlParser.WEEKDAY - 977)) | (1 << (SqlParser.WEEKOFYEAR - 977)) | (1 << (SqlParser.WEIGHT_STRING - 977)) | (1 << (SqlParser.WITHIN - 977)) | (1 << (SqlParser.YEARWEEK - 977)) | (1 << (SqlParser.Y_FUNCTION - 977)) | (1 << (SqlParser.X_FUNCTION - 977)))) !== 0) || ((((_la - 1032)) & ~0x1f) == 0 && ((1 << (_la - 1032)) & ((1 << (SqlParser.CHARSET_REVERSE_QOUTE_STRING - 1032)) | (1 << (SqlParser.STRING_LITERAL - 1032)) | (1 << (SqlParser.ID - 1032)) | (1 << (SqlParser.REVERSE_QUOTE_ID - 1032)))) !== 0)) {
+ this.state = 1500;
+ localctx.name = this.uid();
+ }
+
+ }
+
+ this.state = 1505;
+ this.match(SqlParser.UNIQUE);
+ this.state = 1507;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.INDEX || _la===SqlParser.KEY) {
+ this.state = 1506;
+ localctx.indexFormat = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.INDEX || _la===SqlParser.KEY)) {
+ localctx.indexFormat = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 1510;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (SqlParser.CURRENT - 32)) | (1 << (SqlParser.DATABASE - 32)) | (1 << (SqlParser.DIAGNOSTICS - 32)))) !== 0) || _la===SqlParser.LEFT || _la===SqlParser.NUMBER || _la===SqlParser.RIGHT || _la===SqlParser.STACKED || ((((_la - 199)) & ~0x1f) == 0 && ((1 << (_la - 199)) & ((1 << (SqlParser.DATE - 199)) | (1 << (SqlParser.TIME - 199)) | (1 << (SqlParser.TIMESTAMP - 199)) | (1 << (SqlParser.DATETIME - 199)) | (1 << (SqlParser.YEAR - 199)) | (1 << (SqlParser.TEXT - 199)) | (1 << (SqlParser.ENUM - 199)) | (1 << (SqlParser.SERIAL - 199)))) !== 0) || ((((_la - 233)) & ~0x1f) == 0 && ((1 << (_la - 233)) & ((1 << (SqlParser.JSON_VALID - 233)) | (1 << (SqlParser.JSON_SCHEMA_VALID - 233)) | (1 << (SqlParser.COUNT - 233)) | (1 << (SqlParser.POSITION - 233)))) !== 0) || ((((_la - 270)) & ~0x1f) == 0 && ((1 << (_la - 270)) & ((1 << (SqlParser.ACCOUNT - 270)) | (1 << (SqlParser.ACTION - 270)) | (1 << (SqlParser.AFTER - 270)) | (1 << (SqlParser.AGGREGATE - 270)) | (1 << (SqlParser.ALGORITHM - 270)) | (1 << (SqlParser.ANY - 270)) | (1 << (SqlParser.AT - 270)) | (1 << (SqlParser.AUTHORS - 270)) | (1 << (SqlParser.AUTOCOMMIT - 270)) | (1 << (SqlParser.AUTOEXTEND_SIZE - 270)) | (1 << (SqlParser.AUTO_INCREMENT - 270)) | (1 << (SqlParser.AVG_ROW_LENGTH - 270)) | (1 << (SqlParser.BEGIN - 270)) | (1 << (SqlParser.BINLOG - 270)) | (1 << (SqlParser.BIT - 270)) | (1 << (SqlParser.BLOCK - 270)) | (1 << (SqlParser.BOOL - 270)) | (1 << (SqlParser.BOOLEAN - 270)) | (1 << (SqlParser.BTREE - 270)) | (1 << (SqlParser.CACHE - 270)) | (1 << (SqlParser.CASCADED - 270)) | (1 << (SqlParser.CHAIN - 270)) | (1 << (SqlParser.CHANGED - 270)) | (1 << (SqlParser.CHANNEL - 270)) | (1 << (SqlParser.CHECKSUM - 270)) | (1 << (SqlParser.PAGE_CHECKSUM - 270)) | (1 << (SqlParser.CIPHER - 270)) | (1 << (SqlParser.CLASS_ORIGIN - 270)) | (1 << (SqlParser.CLIENT - 270)) | (1 << (SqlParser.CLOSE - 270)) | (1 << (SqlParser.COALESCE - 270)) | (1 << (SqlParser.CODE - 270)))) !== 0) || ((((_la - 302)) & ~0x1f) == 0 && ((1 << (_la - 302)) & ((1 << (SqlParser.COLUMNS - 302)) | (1 << (SqlParser.COLUMN_FORMAT - 302)) | (1 << (SqlParser.COLUMN_NAME - 302)) | (1 << (SqlParser.COMMENT - 302)) | (1 << (SqlParser.COMMIT - 302)) | (1 << (SqlParser.COMPACT - 302)) | (1 << (SqlParser.COMPLETION - 302)) | (1 << (SqlParser.COMPRESSED - 302)) | (1 << (SqlParser.COMPRESSION - 302)) | (1 << (SqlParser.CONCURRENT - 302)) | (1 << (SqlParser.CONNECTION - 302)) | (1 << (SqlParser.CONSISTENT - 302)) | (1 << (SqlParser.CONSTRAINT_CATALOG - 302)) | (1 << (SqlParser.CONSTRAINT_SCHEMA - 302)) | (1 << (SqlParser.CONSTRAINT_NAME - 302)) | (1 << (SqlParser.CONTAINS - 302)) | (1 << (SqlParser.CONTEXT - 302)) | (1 << (SqlParser.CONTRIBUTORS - 302)) | (1 << (SqlParser.COPY - 302)) | (1 << (SqlParser.CPU - 302)) | (1 << (SqlParser.CURSOR_NAME - 302)) | (1 << (SqlParser.DATA - 302)) | (1 << (SqlParser.DATAFILE - 302)) | (1 << (SqlParser.DEALLOCATE - 302)) | (1 << (SqlParser.DEFAULT_AUTH - 302)) | (1 << (SqlParser.DEFINER - 302)) | (1 << (SqlParser.DELAY_KEY_WRITE - 302)) | (1 << (SqlParser.DES_KEY_FILE - 302)) | (1 << (SqlParser.DIRECTORY - 302)) | (1 << (SqlParser.DISABLE - 302)) | (1 << (SqlParser.DISCARD - 302)) | (1 << (SqlParser.DISK - 302)))) !== 0) || ((((_la - 334)) & ~0x1f) == 0 && ((1 << (_la - 334)) & ((1 << (SqlParser.DO - 334)) | (1 << (SqlParser.DUMPFILE - 334)) | (1 << (SqlParser.DUPLICATE - 334)) | (1 << (SqlParser.DYNAMIC - 334)) | (1 << (SqlParser.ENABLE - 334)) | (1 << (SqlParser.ENCRYPTION - 334)) | (1 << (SqlParser.END - 334)) | (1 << (SqlParser.ENDS - 334)) | (1 << (SqlParser.ENGINE - 334)) | (1 << (SqlParser.ENGINES - 334)) | (1 << (SqlParser.ERROR - 334)) | (1 << (SqlParser.ERRORS - 334)) | (1 << (SqlParser.ESCAPE - 334)) | (1 << (SqlParser.EVEN - 334)) | (1 << (SqlParser.EVENT - 334)) | (1 << (SqlParser.EVENTS - 334)) | (1 << (SqlParser.EVERY - 334)) | (1 << (SqlParser.EXCHANGE - 334)) | (1 << (SqlParser.EXCLUSIVE - 334)) | (1 << (SqlParser.EXPIRE - 334)) | (1 << (SqlParser.EXPORT - 334)) | (1 << (SqlParser.EXTENDED - 334)) | (1 << (SqlParser.EXTENT_SIZE - 334)) | (1 << (SqlParser.FAST - 334)) | (1 << (SqlParser.FAULTS - 334)) | (1 << (SqlParser.FIELDS - 334)) | (1 << (SqlParser.FILE_BLOCK_SIZE - 334)) | (1 << (SqlParser.FILTER - 334)) | (1 << (SqlParser.FIRST - 334)) | (1 << (SqlParser.FIXED - 334)) | (1 << (SqlParser.FLUSH - 334)) | (1 << (SqlParser.FOLLOWS - 334)))) !== 0) || ((((_la - 366)) & ~0x1f) == 0 && ((1 << (_la - 366)) & ((1 << (SqlParser.FOUND - 366)) | (1 << (SqlParser.FULL - 366)) | (1 << (SqlParser.FUNCTION - 366)) | (1 << (SqlParser.GENERAL - 366)) | (1 << (SqlParser.GLOBAL - 366)) | (1 << (SqlParser.GRANTS - 366)) | (1 << (SqlParser.GROUP_REPLICATION - 366)) | (1 << (SqlParser.HANDLER - 366)) | (1 << (SqlParser.HASH - 366)) | (1 << (SqlParser.HELP - 366)) | (1 << (SqlParser.HOST - 366)) | (1 << (SqlParser.HOSTS - 366)) | (1 << (SqlParser.IDENTIFIED - 366)) | (1 << (SqlParser.IGNORE_SERVER_IDS - 366)) | (1 << (SqlParser.IMPORT - 366)) | (1 << (SqlParser.INDEXES - 366)) | (1 << (SqlParser.INITIAL_SIZE - 366)) | (1 << (SqlParser.INPLACE - 366)) | (1 << (SqlParser.INSERT_METHOD - 366)) | (1 << (SqlParser.INSTALL - 366)) | (1 << (SqlParser.INSTANCE - 366)) | (1 << (SqlParser.INVISIBLE - 366)) | (1 << (SqlParser.INVOKER - 366)) | (1 << (SqlParser.IO - 366)) | (1 << (SqlParser.IO_THREAD - 366)) | (1 << (SqlParser.IPC - 366)) | (1 << (SqlParser.ISOLATION - 366)) | (1 << (SqlParser.ISSUER - 366)) | (1 << (SqlParser.JSON - 366)) | (1 << (SqlParser.KEY_BLOCK_SIZE - 366)) | (1 << (SqlParser.LANGUAGE - 366)) | (1 << (SqlParser.LAST - 366)))) !== 0) || ((((_la - 398)) & ~0x1f) == 0 && ((1 << (_la - 398)) & ((1 << (SqlParser.LEAVES - 398)) | (1 << (SqlParser.LESS - 398)) | (1 << (SqlParser.LEVEL - 398)) | (1 << (SqlParser.LIST - 398)) | (1 << (SqlParser.LOCAL - 398)) | (1 << (SqlParser.LOGFILE - 398)) | (1 << (SqlParser.LOGS - 398)) | (1 << (SqlParser.MASTER - 398)) | (1 << (SqlParser.MASTER_AUTO_POSITION - 398)) | (1 << (SqlParser.MASTER_CONNECT_RETRY - 398)) | (1 << (SqlParser.MASTER_DELAY - 398)) | (1 << (SqlParser.MASTER_HEARTBEAT_PERIOD - 398)) | (1 << (SqlParser.MASTER_HOST - 398)) | (1 << (SqlParser.MASTER_LOG_FILE - 398)) | (1 << (SqlParser.MASTER_LOG_POS - 398)) | (1 << (SqlParser.MASTER_PASSWORD - 398)) | (1 << (SqlParser.MASTER_PORT - 398)) | (1 << (SqlParser.MASTER_RETRY_COUNT - 398)) | (1 << (SqlParser.MASTER_SSL - 398)) | (1 << (SqlParser.MASTER_SSL_CA - 398)) | (1 << (SqlParser.MASTER_SSL_CAPATH - 398)) | (1 << (SqlParser.MASTER_SSL_CERT - 398)) | (1 << (SqlParser.MASTER_SSL_CIPHER - 398)) | (1 << (SqlParser.MASTER_SSL_CRL - 398)) | (1 << (SqlParser.MASTER_SSL_CRLPATH - 398)) | (1 << (SqlParser.MASTER_SSL_KEY - 398)) | (1 << (SqlParser.MASTER_TLS_VERSION - 398)) | (1 << (SqlParser.MASTER_USER - 398)) | (1 << (SqlParser.MAX_CONNECTIONS_PER_HOUR - 398)) | (1 << (SqlParser.MAX_QUERIES_PER_HOUR - 398)) | (1 << (SqlParser.MAX_ROWS - 398)) | (1 << (SqlParser.MAX_SIZE - 398)))) !== 0) || ((((_la - 430)) & ~0x1f) == 0 && ((1 << (_la - 430)) & ((1 << (SqlParser.MAX_UPDATES_PER_HOUR - 430)) | (1 << (SqlParser.MAX_USER_CONNECTIONS - 430)) | (1 << (SqlParser.MEDIUM - 430)) | (1 << (SqlParser.MERGE - 430)) | (1 << (SqlParser.MESSAGE_TEXT - 430)) | (1 << (SqlParser.MID - 430)) | (1 << (SqlParser.MIGRATE - 430)) | (1 << (SqlParser.MIN_ROWS - 430)) | (1 << (SqlParser.MODE - 430)) | (1 << (SqlParser.MODIFY - 430)) | (1 << (SqlParser.MUTEX - 430)) | (1 << (SqlParser.MYSQL - 430)) | (1 << (SqlParser.MYSQL_ERRNO - 430)) | (1 << (SqlParser.NAME - 430)) | (1 << (SqlParser.NAMES - 430)) | (1 << (SqlParser.NCHAR - 430)) | (1 << (SqlParser.NEVER - 430)) | (1 << (SqlParser.NEXT - 430)) | (1 << (SqlParser.NO - 430)) | (1 << (SqlParser.NODEGROUP - 430)) | (1 << (SqlParser.NONE - 430)) | (1 << (SqlParser.OFFLINE - 430)) | (1 << (SqlParser.OFFSET - 430)) | (1 << (SqlParser.OJ - 430)) | (1 << (SqlParser.OLD_PASSWORD - 430)) | (1 << (SqlParser.ONE - 430)) | (1 << (SqlParser.ONLINE - 430)) | (1 << (SqlParser.ONLY - 430)) | (1 << (SqlParser.OPEN - 430)) | (1 << (SqlParser.OPTIMIZER_COSTS - 430)) | (1 << (SqlParser.OPTIONS - 430)) | (1 << (SqlParser.OWNER - 430)))) !== 0) || ((((_la - 462)) & ~0x1f) == 0 && ((1 << (_la - 462)) & ((1 << (SqlParser.PACK_KEYS - 462)) | (1 << (SqlParser.PAGE - 462)) | (1 << (SqlParser.PARSER - 462)) | (1 << (SqlParser.PARTIAL - 462)) | (1 << (SqlParser.PARTITIONING - 462)) | (1 << (SqlParser.PARTITIONS - 462)) | (1 << (SqlParser.PASSWORD - 462)) | (1 << (SqlParser.PHASE - 462)) | (1 << (SqlParser.PLUGIN - 462)) | (1 << (SqlParser.PLUGIN_DIR - 462)) | (1 << (SqlParser.PLUGINS - 462)) | (1 << (SqlParser.PORT - 462)) | (1 << (SqlParser.PRECEDES - 462)) | (1 << (SqlParser.PREPARE - 462)) | (1 << (SqlParser.PRESERVE - 462)) | (1 << (SqlParser.PREV - 462)) | (1 << (SqlParser.PROCESSLIST - 462)) | (1 << (SqlParser.PROFILE - 462)) | (1 << (SqlParser.PROFILES - 462)) | (1 << (SqlParser.PROXY - 462)) | (1 << (SqlParser.QUERY - 462)) | (1 << (SqlParser.QUICK - 462)) | (1 << (SqlParser.REBUILD - 462)) | (1 << (SqlParser.RECOVER - 462)) | (1 << (SqlParser.REDO_BUFFER_SIZE - 462)) | (1 << (SqlParser.REDUNDANT - 462)) | (1 << (SqlParser.RELAY - 462)) | (1 << (SqlParser.RELAY_LOG_FILE - 462)) | (1 << (SqlParser.RELAY_LOG_POS - 462)) | (1 << (SqlParser.RELAYLOG - 462)) | (1 << (SqlParser.REMOVE - 462)) | (1 << (SqlParser.REORGANIZE - 462)))) !== 0) || ((((_la - 494)) & ~0x1f) == 0 && ((1 << (_la - 494)) & ((1 << (SqlParser.REPAIR - 494)) | (1 << (SqlParser.REPLICATE_DO_DB - 494)) | (1 << (SqlParser.REPLICATE_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_DB - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATE_REWRITE_DB - 494)) | (1 << (SqlParser.REPLICATE_WILD_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_WILD_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATION - 494)) | (1 << (SqlParser.RESET - 494)) | (1 << (SqlParser.RESUME - 494)) | (1 << (SqlParser.RETURNED_SQLSTATE - 494)) | (1 << (SqlParser.RETURNS - 494)) | (1 << (SqlParser.ROLE - 494)) | (1 << (SqlParser.ROLLBACK - 494)) | (1 << (SqlParser.ROLLUP - 494)) | (1 << (SqlParser.ROTATE - 494)) | (1 << (SqlParser.ROW - 494)) | (1 << (SqlParser.ROWS - 494)) | (1 << (SqlParser.ROW_FORMAT - 494)) | (1 << (SqlParser.SAVEPOINT - 494)) | (1 << (SqlParser.SCHEDULE - 494)) | (1 << (SqlParser.SECURITY - 494)) | (1 << (SqlParser.SERVER - 494)) | (1 << (SqlParser.SESSION - 494)) | (1 << (SqlParser.SHARE - 494)) | (1 << (SqlParser.SHARED - 494)) | (1 << (SqlParser.SIGNED - 494)) | (1 << (SqlParser.SIMPLE - 494)) | (1 << (SqlParser.SLAVE - 494)) | (1 << (SqlParser.SLOW - 494)) | (1 << (SqlParser.SNAPSHOT - 494)))) !== 0) || ((((_la - 526)) & ~0x1f) == 0 && ((1 << (_la - 526)) & ((1 << (SqlParser.SOCKET - 526)) | (1 << (SqlParser.SOME - 526)) | (1 << (SqlParser.SONAME - 526)) | (1 << (SqlParser.SOUNDS - 526)) | (1 << (SqlParser.SOURCE - 526)) | (1 << (SqlParser.SQL_AFTER_GTIDS - 526)) | (1 << (SqlParser.SQL_AFTER_MTS_GAPS - 526)) | (1 << (SqlParser.SQL_BEFORE_GTIDS - 526)) | (1 << (SqlParser.SQL_BUFFER_RESULT - 526)) | (1 << (SqlParser.SQL_CACHE - 526)) | (1 << (SqlParser.SQL_NO_CACHE - 526)) | (1 << (SqlParser.SQL_THREAD - 526)) | (1 << (SqlParser.START - 526)) | (1 << (SqlParser.STARTS - 526)) | (1 << (SqlParser.STATS_AUTO_RECALC - 526)) | (1 << (SqlParser.STATS_PERSISTENT - 526)) | (1 << (SqlParser.STATS_SAMPLE_PAGES - 526)) | (1 << (SqlParser.STATUS - 526)) | (1 << (SqlParser.STOP - 526)) | (1 << (SqlParser.STORAGE - 526)) | (1 << (SqlParser.STRING - 526)) | (1 << (SqlParser.SUBCLASS_ORIGIN - 526)) | (1 << (SqlParser.SUBJECT - 526)) | (1 << (SqlParser.SUBPARTITION - 526)) | (1 << (SqlParser.SUBPARTITIONS - 526)) | (1 << (SqlParser.SUSPEND - 526)) | (1 << (SqlParser.SWAPS - 526)) | (1 << (SqlParser.SWITCHES - 526)) | (1 << (SqlParser.TABLE_NAME - 526)) | (1 << (SqlParser.TABLESPACE - 526)) | (1 << (SqlParser.TEMPORARY - 526)))) !== 0) || ((((_la - 558)) & ~0x1f) == 0 && ((1 << (_la - 558)) & ((1 << (SqlParser.TEMPTABLE - 558)) | (1 << (SqlParser.THAN - 558)) | (1 << (SqlParser.TRADITIONAL - 558)) | (1 << (SqlParser.TRANSACTION - 558)) | (1 << (SqlParser.TRANSACTIONAL - 558)) | (1 << (SqlParser.TRIGGERS - 558)) | (1 << (SqlParser.TRUNCATE - 558)) | (1 << (SqlParser.UNDEFINED - 558)) | (1 << (SqlParser.UNDOFILE - 558)) | (1 << (SqlParser.UNDO_BUFFER_SIZE - 558)) | (1 << (SqlParser.UNINSTALL - 558)) | (1 << (SqlParser.UNKNOWN - 558)) | (1 << (SqlParser.UNTIL - 558)) | (1 << (SqlParser.UPGRADE - 558)) | (1 << (SqlParser.USER - 558)) | (1 << (SqlParser.USE_FRM - 558)) | (1 << (SqlParser.USER_RESOURCES - 558)) | (1 << (SqlParser.VALIDATION - 558)) | (1 << (SqlParser.VALUE - 558)) | (1 << (SqlParser.VARIABLES - 558)) | (1 << (SqlParser.VIEW - 558)) | (1 << (SqlParser.VISIBLE - 558)) | (1 << (SqlParser.WAIT - 558)) | (1 << (SqlParser.WARNINGS - 558)) | (1 << (SqlParser.WITHOUT - 558)) | (1 << (SqlParser.WORK - 558)) | (1 << (SqlParser.WRAPPER - 558)) | (1 << (SqlParser.X509 - 558)) | (1 << (SqlParser.XA - 558)) | (1 << (SqlParser.XML - 558)))) !== 0) || ((((_la - 593)) & ~0x1f) == 0 && ((1 << (_la - 593)) & ((1 << (SqlParser.INTERNAL - 593)) | (1 << (SqlParser.QUARTER - 593)) | (1 << (SqlParser.MONTH - 593)) | (1 << (SqlParser.DAY - 593)) | (1 << (SqlParser.HOUR - 593)) | (1 << (SqlParser.MINUTE - 593)) | (1 << (SqlParser.WEEK - 593)) | (1 << (SqlParser.SECOND - 593)) | (1 << (SqlParser.MICROSECOND - 593)) | (1 << (SqlParser.TABLES - 593)) | (1 << (SqlParser.ROUTINE - 593)) | (1 << (SqlParser.EXECUTE - 593)) | (1 << (SqlParser.FILE - 593)) | (1 << (SqlParser.PROCESS - 593)) | (1 << (SqlParser.RELOAD - 593)) | (1 << (SqlParser.SHUTDOWN - 593)) | (1 << (SqlParser.SUPER - 593)) | (1 << (SqlParser.PRIVILEGES - 593)) | (1 << (SqlParser.AUDIT_ADMIN - 593)) | (1 << (SqlParser.BACKUP_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ENCRYPTION_ADMIN - 593)) | (1 << (SqlParser.CLONE_ADMIN - 593)) | (1 << (SqlParser.CONNECTION_ADMIN - 593)) | (1 << (SqlParser.ENCRYPTION_KEY_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_USER - 593)) | (1 << (SqlParser.GROUP_REPLICATION_ADMIN - 593)) | (1 << (SqlParser.INNODB_REDO_LOG_ARCHIVE - 593)) | (1 << (SqlParser.NDB_STORED_USER - 593)) | (1 << (SqlParser.PERSIST_RO_VARIABLES_ADMIN - 593)))) !== 0) || ((((_la - 625)) & ~0x1f) == 0 && ((1 << (_la - 625)) & ((1 << (SqlParser.REPLICATION_APPLIER - 625)) | (1 << (SqlParser.REPLICATION_SLAVE_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_USER - 625)) | (1 << (SqlParser.ROLE_ADMIN - 625)) | (1 << (SqlParser.SESSION_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.SET_USER_ID - 625)) | (1 << (SqlParser.SHOW_ROUTINE - 625)) | (1 << (SqlParser.SYSTEM_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.TABLE_ENCRYPTION_ADMIN - 625)) | (1 << (SqlParser.VERSION_TOKEN_ADMIN - 625)) | (1 << (SqlParser.XA_RECOVER_ADMIN - 625)) | (1 << (SqlParser.ARMSCII8 - 625)) | (1 << (SqlParser.ASCII - 625)) | (1 << (SqlParser.BIG5 - 625)) | (1 << (SqlParser.CP1250 - 625)) | (1 << (SqlParser.CP1251 - 625)) | (1 << (SqlParser.CP1256 - 625)) | (1 << (SqlParser.CP1257 - 625)) | (1 << (SqlParser.CP850 - 625)) | (1 << (SqlParser.CP852 - 625)) | (1 << (SqlParser.CP866 - 625)) | (1 << (SqlParser.CP932 - 625)) | (1 << (SqlParser.DEC8 - 625)) | (1 << (SqlParser.EUCJPMS - 625)) | (1 << (SqlParser.EUCKR - 625)) | (1 << (SqlParser.GB2312 - 625)) | (1 << (SqlParser.GBK - 625)) | (1 << (SqlParser.GEOSTD8 - 625)) | (1 << (SqlParser.GREEK - 625)) | (1 << (SqlParser.HEBREW - 625)) | (1 << (SqlParser.HP8 - 625)))) !== 0) || ((((_la - 657)) & ~0x1f) == 0 && ((1 << (_la - 657)) & ((1 << (SqlParser.KEYBCS2 - 657)) | (1 << (SqlParser.KOI8R - 657)) | (1 << (SqlParser.KOI8U - 657)) | (1 << (SqlParser.LATIN1 - 657)) | (1 << (SqlParser.LATIN2 - 657)) | (1 << (SqlParser.LATIN5 - 657)) | (1 << (SqlParser.LATIN7 - 657)) | (1 << (SqlParser.MACCE - 657)) | (1 << (SqlParser.MACROMAN - 657)) | (1 << (SqlParser.SJIS - 657)) | (1 << (SqlParser.SWE7 - 657)) | (1 << (SqlParser.TIS620 - 657)) | (1 << (SqlParser.UCS2 - 657)) | (1 << (SqlParser.UJIS - 657)) | (1 << (SqlParser.UTF16 - 657)) | (1 << (SqlParser.UTF16LE - 657)) | (1 << (SqlParser.UTF32 - 657)) | (1 << (SqlParser.UTF8 - 657)) | (1 << (SqlParser.UTF8MB3 - 657)) | (1 << (SqlParser.UTF8MB4 - 657)) | (1 << (SqlParser.ARCHIVE - 657)) | (1 << (SqlParser.BLACKHOLE - 657)) | (1 << (SqlParser.CSV - 657)) | (1 << (SqlParser.FEDERATED - 657)) | (1 << (SqlParser.INNODB - 657)) | (1 << (SqlParser.MEMORY - 657)) | (1 << (SqlParser.MRG_MYISAM - 657)) | (1 << (SqlParser.MYISAM - 657)) | (1 << (SqlParser.NDB - 657)) | (1 << (SqlParser.NDBCLUSTER - 657)) | (1 << (SqlParser.PERFORMANCE_SCHEMA - 657)) | (1 << (SqlParser.TOKUDB - 657)))) !== 0) || ((((_la - 689)) & ~0x1f) == 0 && ((1 << (_la - 689)) & ((1 << (SqlParser.REPEATABLE - 689)) | (1 << (SqlParser.COMMITTED - 689)) | (1 << (SqlParser.UNCOMMITTED - 689)) | (1 << (SqlParser.SERIALIZABLE - 689)) | (1 << (SqlParser.GEOMETRYCOLLECTION - 689)) | (1 << (SqlParser.LINESTRING - 689)) | (1 << (SqlParser.MULTILINESTRING - 689)) | (1 << (SqlParser.MULTIPOINT - 689)) | (1 << (SqlParser.MULTIPOLYGON - 689)) | (1 << (SqlParser.POINT - 689)) | (1 << (SqlParser.POLYGON - 689)) | (1 << (SqlParser.ABS - 689)) | (1 << (SqlParser.ACOS - 689)) | (1 << (SqlParser.ADDDATE - 689)) | (1 << (SqlParser.ADDTIME - 689)) | (1 << (SqlParser.AES_DECRYPT - 689)) | (1 << (SqlParser.AES_ENCRYPT - 689)) | (1 << (SqlParser.AREA - 689)) | (1 << (SqlParser.ASBINARY - 689)) | (1 << (SqlParser.ASIN - 689)) | (1 << (SqlParser.ASTEXT - 689)) | (1 << (SqlParser.ASWKB - 689)) | (1 << (SqlParser.ASWKT - 689)) | (1 << (SqlParser.ASYMMETRIC_DECRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_DERIVE - 689)) | (1 << (SqlParser.ASYMMETRIC_ENCRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_SIGN - 689)) | (1 << (SqlParser.ASYMMETRIC_VERIFY - 689)) | (1 << (SqlParser.ATAN - 689)) | (1 << (SqlParser.ATAN2 - 689)))) !== 0) || ((((_la - 721)) & ~0x1f) == 0 && ((1 << (_la - 721)) & ((1 << (SqlParser.BENCHMARK - 721)) | (1 << (SqlParser.BIN - 721)) | (1 << (SqlParser.BIT_COUNT - 721)) | (1 << (SqlParser.BIT_LENGTH - 721)) | (1 << (SqlParser.BUFFER - 721)) | (1 << (SqlParser.CATALOG_NAME - 721)) | (1 << (SqlParser.CEIL - 721)) | (1 << (SqlParser.CEILING - 721)) | (1 << (SqlParser.CENTROID - 721)) | (1 << (SqlParser.CHARACTER_LENGTH - 721)) | (1 << (SqlParser.CHARSET - 721)) | (1 << (SqlParser.CHAR_LENGTH - 721)) | (1 << (SqlParser.COERCIBILITY - 721)) | (1 << (SqlParser.COLLATION - 721)) | (1 << (SqlParser.COMPRESS - 721)) | (1 << (SqlParser.CONCAT - 721)) | (1 << (SqlParser.CONCAT_WS - 721)) | (1 << (SqlParser.CONNECTION_ID - 721)) | (1 << (SqlParser.CONV - 721)) | (1 << (SqlParser.CONVERT_TZ - 721)) | (1 << (SqlParser.COS - 721)) | (1 << (SqlParser.COT - 721)) | (1 << (SqlParser.CRC32 - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PRIV_KEY - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PUB_KEY - 721)) | (1 << (SqlParser.CREATE_DH_PARAMETERS - 721)) | (1 << (SqlParser.CREATE_DIGEST - 721)) | (1 << (SqlParser.CROSSES - 721)) | (1 << (SqlParser.DATEDIFF - 721)) | (1 << (SqlParser.DATE_FORMAT - 721)) | (1 << (SqlParser.DAYNAME - 721)) | (1 << (SqlParser.DAYOFMONTH - 721)))) !== 0) || ((((_la - 753)) & ~0x1f) == 0 && ((1 << (_la - 753)) & ((1 << (SqlParser.DAYOFWEEK - 753)) | (1 << (SqlParser.DAYOFYEAR - 753)) | (1 << (SqlParser.DECODE - 753)) | (1 << (SqlParser.DEGREES - 753)) | (1 << (SqlParser.DES_DECRYPT - 753)) | (1 << (SqlParser.DES_ENCRYPT - 753)) | (1 << (SqlParser.DIMENSION - 753)) | (1 << (SqlParser.DISJOINT - 753)) | (1 << (SqlParser.ELT - 753)) | (1 << (SqlParser.ENCODE - 753)) | (1 << (SqlParser.ENCRYPT - 753)) | (1 << (SqlParser.ENDPOINT - 753)) | (1 << (SqlParser.ENVELOPE - 753)) | (1 << (SqlParser.EQUALS - 753)) | (1 << (SqlParser.EXP - 753)) | (1 << (SqlParser.EXPORT_SET - 753)) | (1 << (SqlParser.EXTERIORRING - 753)) | (1 << (SqlParser.EXTRACTVALUE - 753)) | (1 << (SqlParser.FIELD - 753)) | (1 << (SqlParser.FIND_IN_SET - 753)) | (1 << (SqlParser.FLOOR - 753)) | (1 << (SqlParser.FORMAT - 753)) | (1 << (SqlParser.FOUND_ROWS - 753)) | (1 << (SqlParser.FROM_BASE64 - 753)) | (1 << (SqlParser.FROM_DAYS - 753)) | (1 << (SqlParser.FROM_UNIXTIME - 753)) | (1 << (SqlParser.GEOMCOLLFROMTEXT - 753)) | (1 << (SqlParser.GEOMCOLLFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYFROMWKB - 753)))) !== 0) || ((((_la - 785)) & ~0x1f) == 0 && ((1 << (_la - 785)) & ((1 << (SqlParser.GEOMETRYN - 785)) | (1 << (SqlParser.GEOMETRYTYPE - 785)) | (1 << (SqlParser.GEOMFROMTEXT - 785)) | (1 << (SqlParser.GEOMFROMWKB - 785)) | (1 << (SqlParser.GET_FORMAT - 785)) | (1 << (SqlParser.GET_LOCK - 785)) | (1 << (SqlParser.GLENGTH - 785)) | (1 << (SqlParser.GREATEST - 785)) | (1 << (SqlParser.GTID_SUBSET - 785)) | (1 << (SqlParser.GTID_SUBTRACT - 785)) | (1 << (SqlParser.HEX - 785)) | (1 << (SqlParser.IFNULL - 785)) | (1 << (SqlParser.INET6_ATON - 785)) | (1 << (SqlParser.INET6_NTOA - 785)) | (1 << (SqlParser.INET_ATON - 785)) | (1 << (SqlParser.INET_NTOA - 785)) | (1 << (SqlParser.INSTR - 785)) | (1 << (SqlParser.INTERIORRINGN - 785)) | (1 << (SqlParser.INTERSECTS - 785)) | (1 << (SqlParser.ISCLOSED - 785)) | (1 << (SqlParser.ISEMPTY - 785)) | (1 << (SqlParser.ISNULL - 785)) | (1 << (SqlParser.ISSIMPLE - 785)) | (1 << (SqlParser.IS_FREE_LOCK - 785)) | (1 << (SqlParser.IS_IPV4 - 785)) | (1 << (SqlParser.IS_IPV4_COMPAT - 785)) | (1 << (SqlParser.IS_IPV4_MAPPED - 785)) | (1 << (SqlParser.IS_IPV6 - 785)) | (1 << (SqlParser.IS_USED_LOCK - 785)) | (1 << (SqlParser.LAST_INSERT_ID - 785)) | (1 << (SqlParser.LCASE - 785)) | (1 << (SqlParser.LEAST - 785)))) !== 0) || ((((_la - 817)) & ~0x1f) == 0 && ((1 << (_la - 817)) & ((1 << (SqlParser.LENGTH - 817)) | (1 << (SqlParser.LINEFROMTEXT - 817)) | (1 << (SqlParser.LINEFROMWKB - 817)) | (1 << (SqlParser.LINESTRINGFROMTEXT - 817)) | (1 << (SqlParser.LINESTRINGFROMWKB - 817)) | (1 << (SqlParser.LN - 817)) | (1 << (SqlParser.LOAD_FILE - 817)) | (1 << (SqlParser.LOCATE - 817)) | (1 << (SqlParser.LOG - 817)) | (1 << (SqlParser.LOG10 - 817)) | (1 << (SqlParser.LOG2 - 817)) | (1 << (SqlParser.LOWER - 817)) | (1 << (SqlParser.LPAD - 817)) | (1 << (SqlParser.LTRIM - 817)) | (1 << (SqlParser.MAKEDATE - 817)) | (1 << (SqlParser.MAKETIME - 817)) | (1 << (SqlParser.MAKE_SET - 817)) | (1 << (SqlParser.MASTER_POS_WAIT - 817)) | (1 << (SqlParser.MBRCONTAINS - 817)) | (1 << (SqlParser.MBRDISJOINT - 817)) | (1 << (SqlParser.MBREQUAL - 817)) | (1 << (SqlParser.MBRINTERSECTS - 817)) | (1 << (SqlParser.MBROVERLAPS - 817)) | (1 << (SqlParser.MBRTOUCHES - 817)) | (1 << (SqlParser.MBRWITHIN - 817)) | (1 << (SqlParser.MD5 - 817)) | (1 << (SqlParser.MLINEFROMTEXT - 817)) | (1 << (SqlParser.MLINEFROMWKB - 817)) | (1 << (SqlParser.MONTHNAME - 817)) | (1 << (SqlParser.MPOINTFROMTEXT - 817)) | (1 << (SqlParser.MPOINTFROMWKB - 817)) | (1 << (SqlParser.MPOLYFROMTEXT - 817)))) !== 0) || ((((_la - 849)) & ~0x1f) == 0 && ((1 << (_la - 849)) & ((1 << (SqlParser.MPOLYFROMWKB - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMTEXT - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMWKB - 849)) | (1 << (SqlParser.MULTIPOINTFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOINTFROMWKB - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMWKB - 849)) | (1 << (SqlParser.NAME_CONST - 849)) | (1 << (SqlParser.NULLIF - 849)) | (1 << (SqlParser.NUMGEOMETRIES - 849)) | (1 << (SqlParser.NUMINTERIORRINGS - 849)) | (1 << (SqlParser.NUMPOINTS - 849)) | (1 << (SqlParser.OCT - 849)) | (1 << (SqlParser.OCTET_LENGTH - 849)) | (1 << (SqlParser.ORD - 849)) | (1 << (SqlParser.OVERLAPS - 849)) | (1 << (SqlParser.PERIOD_ADD - 849)) | (1 << (SqlParser.PERIOD_DIFF - 849)) | (1 << (SqlParser.PI - 849)) | (1 << (SqlParser.POINTFROMTEXT - 849)) | (1 << (SqlParser.POINTFROMWKB - 849)) | (1 << (SqlParser.POINTN - 849)) | (1 << (SqlParser.POLYFROMTEXT - 849)) | (1 << (SqlParser.POLYFROMWKB - 849)) | (1 << (SqlParser.POLYGONFROMTEXT - 849)) | (1 << (SqlParser.POLYGONFROMWKB - 849)) | (1 << (SqlParser.POW - 849)) | (1 << (SqlParser.POWER - 849)) | (1 << (SqlParser.QUOTE - 849)) | (1 << (SqlParser.RADIANS - 849)) | (1 << (SqlParser.RAND - 849)) | (1 << (SqlParser.RANDOM_BYTES - 849)))) !== 0) || ((((_la - 881)) & ~0x1f) == 0 && ((1 << (_la - 881)) & ((1 << (SqlParser.RELEASE_LOCK - 881)) | (1 << (SqlParser.REVERSE - 881)) | (1 << (SqlParser.ROUND - 881)) | (1 << (SqlParser.ROW_COUNT - 881)) | (1 << (SqlParser.RPAD - 881)) | (1 << (SqlParser.RTRIM - 881)) | (1 << (SqlParser.SEC_TO_TIME - 881)) | (1 << (SqlParser.SESSION_USER - 881)) | (1 << (SqlParser.SHA - 881)) | (1 << (SqlParser.SHA1 - 881)) | (1 << (SqlParser.SHA2 - 881)) | (1 << (SqlParser.SCHEMA_NAME - 881)) | (1 << (SqlParser.SIGN - 881)) | (1 << (SqlParser.SIN - 881)) | (1 << (SqlParser.SLEEP - 881)) | (1 << (SqlParser.SOUNDEX - 881)) | (1 << (SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS - 881)) | (1 << (SqlParser.SQRT - 881)) | (1 << (SqlParser.SRID - 881)) | (1 << (SqlParser.STARTPOINT - 881)) | (1 << (SqlParser.STRCMP - 881)) | (1 << (SqlParser.STR_TO_DATE - 881)) | (1 << (SqlParser.ST_AREA - 881)) | (1 << (SqlParser.ST_ASBINARY - 881)) | (1 << (SqlParser.ST_ASTEXT - 881)) | (1 << (SqlParser.ST_ASWKB - 881)) | (1 << (SqlParser.ST_ASWKT - 881)) | (1 << (SqlParser.ST_BUFFER - 881)) | (1 << (SqlParser.ST_CENTROID - 881)) | (1 << (SqlParser.ST_CONTAINS - 881)) | (1 << (SqlParser.ST_CROSSES - 881)) | (1 << (SqlParser.ST_DIFFERENCE - 881)))) !== 0) || ((((_la - 913)) & ~0x1f) == 0 && ((1 << (_la - 913)) & ((1 << (SqlParser.ST_DIMENSION - 913)) | (1 << (SqlParser.ST_DISJOINT - 913)) | (1 << (SqlParser.ST_DISTANCE - 913)) | (1 << (SqlParser.ST_ENDPOINT - 913)) | (1 << (SqlParser.ST_ENVELOPE - 913)) | (1 << (SqlParser.ST_EQUALS - 913)) | (1 << (SqlParser.ST_EXTERIORRING - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYN - 913)) | (1 << (SqlParser.ST_GEOMETRYTYPE - 913)) | (1 << (SqlParser.ST_GEOMFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMFROMWKB - 913)) | (1 << (SqlParser.ST_INTERIORRINGN - 913)) | (1 << (SqlParser.ST_INTERSECTION - 913)) | (1 << (SqlParser.ST_INTERSECTS - 913)) | (1 << (SqlParser.ST_ISCLOSED - 913)) | (1 << (SqlParser.ST_ISEMPTY - 913)) | (1 << (SqlParser.ST_ISSIMPLE - 913)) | (1 << (SqlParser.ST_LINEFROMTEXT - 913)) | (1 << (SqlParser.ST_LINEFROMWKB - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMTEXT - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMWKB - 913)) | (1 << (SqlParser.ST_NUMGEOMETRIES - 913)) | (1 << (SqlParser.ST_NUMINTERIORRING - 913)) | (1 << (SqlParser.ST_NUMINTERIORRINGS - 913)) | (1 << (SqlParser.ST_NUMPOINTS - 913)))) !== 0) || ((((_la - 945)) & ~0x1f) == 0 && ((1 << (_la - 945)) & ((1 << (SqlParser.ST_OVERLAPS - 945)) | (1 << (SqlParser.ST_POINTFROMTEXT - 945)) | (1 << (SqlParser.ST_POINTFROMWKB - 945)) | (1 << (SqlParser.ST_POINTN - 945)) | (1 << (SqlParser.ST_POLYFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYFROMWKB - 945)) | (1 << (SqlParser.ST_POLYGONFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYGONFROMWKB - 945)) | (1 << (SqlParser.ST_SRID - 945)) | (1 << (SqlParser.ST_STARTPOINT - 945)) | (1 << (SqlParser.ST_SYMDIFFERENCE - 945)) | (1 << (SqlParser.ST_TOUCHES - 945)) | (1 << (SqlParser.ST_UNION - 945)) | (1 << (SqlParser.ST_WITHIN - 945)) | (1 << (SqlParser.ST_X - 945)) | (1 << (SqlParser.ST_Y - 945)) | (1 << (SqlParser.SUBDATE - 945)) | (1 << (SqlParser.SUBSTRING_INDEX - 945)) | (1 << (SqlParser.SUBTIME - 945)) | (1 << (SqlParser.SYSTEM_USER - 945)) | (1 << (SqlParser.TAN - 945)) | (1 << (SqlParser.TIMEDIFF - 945)) | (1 << (SqlParser.TIMESTAMPADD - 945)) | (1 << (SqlParser.TIMESTAMPDIFF - 945)) | (1 << (SqlParser.TIME_FORMAT - 945)) | (1 << (SqlParser.TIME_TO_SEC - 945)) | (1 << (SqlParser.TOUCHES - 945)) | (1 << (SqlParser.TO_BASE64 - 945)) | (1 << (SqlParser.TO_DAYS - 945)) | (1 << (SqlParser.TO_SECONDS - 945)) | (1 << (SqlParser.UCASE - 945)) | (1 << (SqlParser.UNCOMPRESS - 945)))) !== 0) || ((((_la - 977)) & ~0x1f) == 0 && ((1 << (_la - 977)) & ((1 << (SqlParser.UNCOMPRESSED_LENGTH - 977)) | (1 << (SqlParser.UNHEX - 977)) | (1 << (SqlParser.UNIX_TIMESTAMP - 977)) | (1 << (SqlParser.UPDATEXML - 977)) | (1 << (SqlParser.UPPER - 977)) | (1 << (SqlParser.UUID - 977)) | (1 << (SqlParser.UUID_SHORT - 977)) | (1 << (SqlParser.VALIDATE_PASSWORD_STRENGTH - 977)) | (1 << (SqlParser.VERSION - 977)) | (1 << (SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS - 977)) | (1 << (SqlParser.WEEKDAY - 977)) | (1 << (SqlParser.WEEKOFYEAR - 977)) | (1 << (SqlParser.WEIGHT_STRING - 977)) | (1 << (SqlParser.WITHIN - 977)) | (1 << (SqlParser.YEARWEEK - 977)) | (1 << (SqlParser.Y_FUNCTION - 977)) | (1 << (SqlParser.X_FUNCTION - 977)))) !== 0) || ((((_la - 1032)) & ~0x1f) == 0 && ((1 << (_la - 1032)) & ((1 << (SqlParser.CHARSET_REVERSE_QOUTE_STRING - 1032)) | (1 << (SqlParser.STRING_LITERAL - 1032)) | (1 << (SqlParser.ID - 1032)) | (1 << (SqlParser.REVERSE_QUOTE_ID - 1032)))) !== 0)) {
+ this.state = 1509;
+ localctx.index = this.uid();
+ }
+
+ this.state = 1513;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.USING) {
+ this.state = 1512;
+ this.indexType();
+ }
+
+ this.state = 1515;
+ this.indexColumnNames();
+ this.state = 1519;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.USING || _la===SqlParser.WITH || _la===SqlParser.COMMENT || _la===SqlParser.INVISIBLE || _la===SqlParser.KEY_BLOCK_SIZE || _la===SqlParser.VISIBLE) {
+ this.state = 1516;
+ this.indexOption();
+ this.state = 1521;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+
+ case 3:
+ localctx = new ForeignKeyTableConstraintContext(this, localctx);
+ this.enterOuterAlt(localctx, 3);
+ this.state = 1526;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.CONSTRAINT) {
+ this.state = 1522;
+ this.match(SqlParser.CONSTRAINT);
+ this.state = 1524;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (SqlParser.CURRENT - 32)) | (1 << (SqlParser.DATABASE - 32)) | (1 << (SqlParser.DIAGNOSTICS - 32)))) !== 0) || _la===SqlParser.LEFT || _la===SqlParser.NUMBER || _la===SqlParser.RIGHT || _la===SqlParser.STACKED || ((((_la - 199)) & ~0x1f) == 0 && ((1 << (_la - 199)) & ((1 << (SqlParser.DATE - 199)) | (1 << (SqlParser.TIME - 199)) | (1 << (SqlParser.TIMESTAMP - 199)) | (1 << (SqlParser.DATETIME - 199)) | (1 << (SqlParser.YEAR - 199)) | (1 << (SqlParser.TEXT - 199)) | (1 << (SqlParser.ENUM - 199)) | (1 << (SqlParser.SERIAL - 199)))) !== 0) || ((((_la - 233)) & ~0x1f) == 0 && ((1 << (_la - 233)) & ((1 << (SqlParser.JSON_VALID - 233)) | (1 << (SqlParser.JSON_SCHEMA_VALID - 233)) | (1 << (SqlParser.COUNT - 233)) | (1 << (SqlParser.POSITION - 233)))) !== 0) || ((((_la - 270)) & ~0x1f) == 0 && ((1 << (_la - 270)) & ((1 << (SqlParser.ACCOUNT - 270)) | (1 << (SqlParser.ACTION - 270)) | (1 << (SqlParser.AFTER - 270)) | (1 << (SqlParser.AGGREGATE - 270)) | (1 << (SqlParser.ALGORITHM - 270)) | (1 << (SqlParser.ANY - 270)) | (1 << (SqlParser.AT - 270)) | (1 << (SqlParser.AUTHORS - 270)) | (1 << (SqlParser.AUTOCOMMIT - 270)) | (1 << (SqlParser.AUTOEXTEND_SIZE - 270)) | (1 << (SqlParser.AUTO_INCREMENT - 270)) | (1 << (SqlParser.AVG_ROW_LENGTH - 270)) | (1 << (SqlParser.BEGIN - 270)) | (1 << (SqlParser.BINLOG - 270)) | (1 << (SqlParser.BIT - 270)) | (1 << (SqlParser.BLOCK - 270)) | (1 << (SqlParser.BOOL - 270)) | (1 << (SqlParser.BOOLEAN - 270)) | (1 << (SqlParser.BTREE - 270)) | (1 << (SqlParser.CACHE - 270)) | (1 << (SqlParser.CASCADED - 270)) | (1 << (SqlParser.CHAIN - 270)) | (1 << (SqlParser.CHANGED - 270)) | (1 << (SqlParser.CHANNEL - 270)) | (1 << (SqlParser.CHECKSUM - 270)) | (1 << (SqlParser.PAGE_CHECKSUM - 270)) | (1 << (SqlParser.CIPHER - 270)) | (1 << (SqlParser.CLASS_ORIGIN - 270)) | (1 << (SqlParser.CLIENT - 270)) | (1 << (SqlParser.CLOSE - 270)) | (1 << (SqlParser.COALESCE - 270)) | (1 << (SqlParser.CODE - 270)))) !== 0) || ((((_la - 302)) & ~0x1f) == 0 && ((1 << (_la - 302)) & ((1 << (SqlParser.COLUMNS - 302)) | (1 << (SqlParser.COLUMN_FORMAT - 302)) | (1 << (SqlParser.COLUMN_NAME - 302)) | (1 << (SqlParser.COMMENT - 302)) | (1 << (SqlParser.COMMIT - 302)) | (1 << (SqlParser.COMPACT - 302)) | (1 << (SqlParser.COMPLETION - 302)) | (1 << (SqlParser.COMPRESSED - 302)) | (1 << (SqlParser.COMPRESSION - 302)) | (1 << (SqlParser.CONCURRENT - 302)) | (1 << (SqlParser.CONNECTION - 302)) | (1 << (SqlParser.CONSISTENT - 302)) | (1 << (SqlParser.CONSTRAINT_CATALOG - 302)) | (1 << (SqlParser.CONSTRAINT_SCHEMA - 302)) | (1 << (SqlParser.CONSTRAINT_NAME - 302)) | (1 << (SqlParser.CONTAINS - 302)) | (1 << (SqlParser.CONTEXT - 302)) | (1 << (SqlParser.CONTRIBUTORS - 302)) | (1 << (SqlParser.COPY - 302)) | (1 << (SqlParser.CPU - 302)) | (1 << (SqlParser.CURSOR_NAME - 302)) | (1 << (SqlParser.DATA - 302)) | (1 << (SqlParser.DATAFILE - 302)) | (1 << (SqlParser.DEALLOCATE - 302)) | (1 << (SqlParser.DEFAULT_AUTH - 302)) | (1 << (SqlParser.DEFINER - 302)) | (1 << (SqlParser.DELAY_KEY_WRITE - 302)) | (1 << (SqlParser.DES_KEY_FILE - 302)) | (1 << (SqlParser.DIRECTORY - 302)) | (1 << (SqlParser.DISABLE - 302)) | (1 << (SqlParser.DISCARD - 302)) | (1 << (SqlParser.DISK - 302)))) !== 0) || ((((_la - 334)) & ~0x1f) == 0 && ((1 << (_la - 334)) & ((1 << (SqlParser.DO - 334)) | (1 << (SqlParser.DUMPFILE - 334)) | (1 << (SqlParser.DUPLICATE - 334)) | (1 << (SqlParser.DYNAMIC - 334)) | (1 << (SqlParser.ENABLE - 334)) | (1 << (SqlParser.ENCRYPTION - 334)) | (1 << (SqlParser.END - 334)) | (1 << (SqlParser.ENDS - 334)) | (1 << (SqlParser.ENGINE - 334)) | (1 << (SqlParser.ENGINES - 334)) | (1 << (SqlParser.ERROR - 334)) | (1 << (SqlParser.ERRORS - 334)) | (1 << (SqlParser.ESCAPE - 334)) | (1 << (SqlParser.EVEN - 334)) | (1 << (SqlParser.EVENT - 334)) | (1 << (SqlParser.EVENTS - 334)) | (1 << (SqlParser.EVERY - 334)) | (1 << (SqlParser.EXCHANGE - 334)) | (1 << (SqlParser.EXCLUSIVE - 334)) | (1 << (SqlParser.EXPIRE - 334)) | (1 << (SqlParser.EXPORT - 334)) | (1 << (SqlParser.EXTENDED - 334)) | (1 << (SqlParser.EXTENT_SIZE - 334)) | (1 << (SqlParser.FAST - 334)) | (1 << (SqlParser.FAULTS - 334)) | (1 << (SqlParser.FIELDS - 334)) | (1 << (SqlParser.FILE_BLOCK_SIZE - 334)) | (1 << (SqlParser.FILTER - 334)) | (1 << (SqlParser.FIRST - 334)) | (1 << (SqlParser.FIXED - 334)) | (1 << (SqlParser.FLUSH - 334)) | (1 << (SqlParser.FOLLOWS - 334)))) !== 0) || ((((_la - 366)) & ~0x1f) == 0 && ((1 << (_la - 366)) & ((1 << (SqlParser.FOUND - 366)) | (1 << (SqlParser.FULL - 366)) | (1 << (SqlParser.FUNCTION - 366)) | (1 << (SqlParser.GENERAL - 366)) | (1 << (SqlParser.GLOBAL - 366)) | (1 << (SqlParser.GRANTS - 366)) | (1 << (SqlParser.GROUP_REPLICATION - 366)) | (1 << (SqlParser.HANDLER - 366)) | (1 << (SqlParser.HASH - 366)) | (1 << (SqlParser.HELP - 366)) | (1 << (SqlParser.HOST - 366)) | (1 << (SqlParser.HOSTS - 366)) | (1 << (SqlParser.IDENTIFIED - 366)) | (1 << (SqlParser.IGNORE_SERVER_IDS - 366)) | (1 << (SqlParser.IMPORT - 366)) | (1 << (SqlParser.INDEXES - 366)) | (1 << (SqlParser.INITIAL_SIZE - 366)) | (1 << (SqlParser.INPLACE - 366)) | (1 << (SqlParser.INSERT_METHOD - 366)) | (1 << (SqlParser.INSTALL - 366)) | (1 << (SqlParser.INSTANCE - 366)) | (1 << (SqlParser.INVISIBLE - 366)) | (1 << (SqlParser.INVOKER - 366)) | (1 << (SqlParser.IO - 366)) | (1 << (SqlParser.IO_THREAD - 366)) | (1 << (SqlParser.IPC - 366)) | (1 << (SqlParser.ISOLATION - 366)) | (1 << (SqlParser.ISSUER - 366)) | (1 << (SqlParser.JSON - 366)) | (1 << (SqlParser.KEY_BLOCK_SIZE - 366)) | (1 << (SqlParser.LANGUAGE - 366)) | (1 << (SqlParser.LAST - 366)))) !== 0) || ((((_la - 398)) & ~0x1f) == 0 && ((1 << (_la - 398)) & ((1 << (SqlParser.LEAVES - 398)) | (1 << (SqlParser.LESS - 398)) | (1 << (SqlParser.LEVEL - 398)) | (1 << (SqlParser.LIST - 398)) | (1 << (SqlParser.LOCAL - 398)) | (1 << (SqlParser.LOGFILE - 398)) | (1 << (SqlParser.LOGS - 398)) | (1 << (SqlParser.MASTER - 398)) | (1 << (SqlParser.MASTER_AUTO_POSITION - 398)) | (1 << (SqlParser.MASTER_CONNECT_RETRY - 398)) | (1 << (SqlParser.MASTER_DELAY - 398)) | (1 << (SqlParser.MASTER_HEARTBEAT_PERIOD - 398)) | (1 << (SqlParser.MASTER_HOST - 398)) | (1 << (SqlParser.MASTER_LOG_FILE - 398)) | (1 << (SqlParser.MASTER_LOG_POS - 398)) | (1 << (SqlParser.MASTER_PASSWORD - 398)) | (1 << (SqlParser.MASTER_PORT - 398)) | (1 << (SqlParser.MASTER_RETRY_COUNT - 398)) | (1 << (SqlParser.MASTER_SSL - 398)) | (1 << (SqlParser.MASTER_SSL_CA - 398)) | (1 << (SqlParser.MASTER_SSL_CAPATH - 398)) | (1 << (SqlParser.MASTER_SSL_CERT - 398)) | (1 << (SqlParser.MASTER_SSL_CIPHER - 398)) | (1 << (SqlParser.MASTER_SSL_CRL - 398)) | (1 << (SqlParser.MASTER_SSL_CRLPATH - 398)) | (1 << (SqlParser.MASTER_SSL_KEY - 398)) | (1 << (SqlParser.MASTER_TLS_VERSION - 398)) | (1 << (SqlParser.MASTER_USER - 398)) | (1 << (SqlParser.MAX_CONNECTIONS_PER_HOUR - 398)) | (1 << (SqlParser.MAX_QUERIES_PER_HOUR - 398)) | (1 << (SqlParser.MAX_ROWS - 398)) | (1 << (SqlParser.MAX_SIZE - 398)))) !== 0) || ((((_la - 430)) & ~0x1f) == 0 && ((1 << (_la - 430)) & ((1 << (SqlParser.MAX_UPDATES_PER_HOUR - 430)) | (1 << (SqlParser.MAX_USER_CONNECTIONS - 430)) | (1 << (SqlParser.MEDIUM - 430)) | (1 << (SqlParser.MERGE - 430)) | (1 << (SqlParser.MESSAGE_TEXT - 430)) | (1 << (SqlParser.MID - 430)) | (1 << (SqlParser.MIGRATE - 430)) | (1 << (SqlParser.MIN_ROWS - 430)) | (1 << (SqlParser.MODE - 430)) | (1 << (SqlParser.MODIFY - 430)) | (1 << (SqlParser.MUTEX - 430)) | (1 << (SqlParser.MYSQL - 430)) | (1 << (SqlParser.MYSQL_ERRNO - 430)) | (1 << (SqlParser.NAME - 430)) | (1 << (SqlParser.NAMES - 430)) | (1 << (SqlParser.NCHAR - 430)) | (1 << (SqlParser.NEVER - 430)) | (1 << (SqlParser.NEXT - 430)) | (1 << (SqlParser.NO - 430)) | (1 << (SqlParser.NODEGROUP - 430)) | (1 << (SqlParser.NONE - 430)) | (1 << (SqlParser.OFFLINE - 430)) | (1 << (SqlParser.OFFSET - 430)) | (1 << (SqlParser.OJ - 430)) | (1 << (SqlParser.OLD_PASSWORD - 430)) | (1 << (SqlParser.ONE - 430)) | (1 << (SqlParser.ONLINE - 430)) | (1 << (SqlParser.ONLY - 430)) | (1 << (SqlParser.OPEN - 430)) | (1 << (SqlParser.OPTIMIZER_COSTS - 430)) | (1 << (SqlParser.OPTIONS - 430)) | (1 << (SqlParser.OWNER - 430)))) !== 0) || ((((_la - 462)) & ~0x1f) == 0 && ((1 << (_la - 462)) & ((1 << (SqlParser.PACK_KEYS - 462)) | (1 << (SqlParser.PAGE - 462)) | (1 << (SqlParser.PARSER - 462)) | (1 << (SqlParser.PARTIAL - 462)) | (1 << (SqlParser.PARTITIONING - 462)) | (1 << (SqlParser.PARTITIONS - 462)) | (1 << (SqlParser.PASSWORD - 462)) | (1 << (SqlParser.PHASE - 462)) | (1 << (SqlParser.PLUGIN - 462)) | (1 << (SqlParser.PLUGIN_DIR - 462)) | (1 << (SqlParser.PLUGINS - 462)) | (1 << (SqlParser.PORT - 462)) | (1 << (SqlParser.PRECEDES - 462)) | (1 << (SqlParser.PREPARE - 462)) | (1 << (SqlParser.PRESERVE - 462)) | (1 << (SqlParser.PREV - 462)) | (1 << (SqlParser.PROCESSLIST - 462)) | (1 << (SqlParser.PROFILE - 462)) | (1 << (SqlParser.PROFILES - 462)) | (1 << (SqlParser.PROXY - 462)) | (1 << (SqlParser.QUERY - 462)) | (1 << (SqlParser.QUICK - 462)) | (1 << (SqlParser.REBUILD - 462)) | (1 << (SqlParser.RECOVER - 462)) | (1 << (SqlParser.REDO_BUFFER_SIZE - 462)) | (1 << (SqlParser.REDUNDANT - 462)) | (1 << (SqlParser.RELAY - 462)) | (1 << (SqlParser.RELAY_LOG_FILE - 462)) | (1 << (SqlParser.RELAY_LOG_POS - 462)) | (1 << (SqlParser.RELAYLOG - 462)) | (1 << (SqlParser.REMOVE - 462)) | (1 << (SqlParser.REORGANIZE - 462)))) !== 0) || ((((_la - 494)) & ~0x1f) == 0 && ((1 << (_la - 494)) & ((1 << (SqlParser.REPAIR - 494)) | (1 << (SqlParser.REPLICATE_DO_DB - 494)) | (1 << (SqlParser.REPLICATE_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_DB - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATE_REWRITE_DB - 494)) | (1 << (SqlParser.REPLICATE_WILD_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_WILD_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATION - 494)) | (1 << (SqlParser.RESET - 494)) | (1 << (SqlParser.RESUME - 494)) | (1 << (SqlParser.RETURNED_SQLSTATE - 494)) | (1 << (SqlParser.RETURNS - 494)) | (1 << (SqlParser.ROLE - 494)) | (1 << (SqlParser.ROLLBACK - 494)) | (1 << (SqlParser.ROLLUP - 494)) | (1 << (SqlParser.ROTATE - 494)) | (1 << (SqlParser.ROW - 494)) | (1 << (SqlParser.ROWS - 494)) | (1 << (SqlParser.ROW_FORMAT - 494)) | (1 << (SqlParser.SAVEPOINT - 494)) | (1 << (SqlParser.SCHEDULE - 494)) | (1 << (SqlParser.SECURITY - 494)) | (1 << (SqlParser.SERVER - 494)) | (1 << (SqlParser.SESSION - 494)) | (1 << (SqlParser.SHARE - 494)) | (1 << (SqlParser.SHARED - 494)) | (1 << (SqlParser.SIGNED - 494)) | (1 << (SqlParser.SIMPLE - 494)) | (1 << (SqlParser.SLAVE - 494)) | (1 << (SqlParser.SLOW - 494)) | (1 << (SqlParser.SNAPSHOT - 494)))) !== 0) || ((((_la - 526)) & ~0x1f) == 0 && ((1 << (_la - 526)) & ((1 << (SqlParser.SOCKET - 526)) | (1 << (SqlParser.SOME - 526)) | (1 << (SqlParser.SONAME - 526)) | (1 << (SqlParser.SOUNDS - 526)) | (1 << (SqlParser.SOURCE - 526)) | (1 << (SqlParser.SQL_AFTER_GTIDS - 526)) | (1 << (SqlParser.SQL_AFTER_MTS_GAPS - 526)) | (1 << (SqlParser.SQL_BEFORE_GTIDS - 526)) | (1 << (SqlParser.SQL_BUFFER_RESULT - 526)) | (1 << (SqlParser.SQL_CACHE - 526)) | (1 << (SqlParser.SQL_NO_CACHE - 526)) | (1 << (SqlParser.SQL_THREAD - 526)) | (1 << (SqlParser.START - 526)) | (1 << (SqlParser.STARTS - 526)) | (1 << (SqlParser.STATS_AUTO_RECALC - 526)) | (1 << (SqlParser.STATS_PERSISTENT - 526)) | (1 << (SqlParser.STATS_SAMPLE_PAGES - 526)) | (1 << (SqlParser.STATUS - 526)) | (1 << (SqlParser.STOP - 526)) | (1 << (SqlParser.STORAGE - 526)) | (1 << (SqlParser.STRING - 526)) | (1 << (SqlParser.SUBCLASS_ORIGIN - 526)) | (1 << (SqlParser.SUBJECT - 526)) | (1 << (SqlParser.SUBPARTITION - 526)) | (1 << (SqlParser.SUBPARTITIONS - 526)) | (1 << (SqlParser.SUSPEND - 526)) | (1 << (SqlParser.SWAPS - 526)) | (1 << (SqlParser.SWITCHES - 526)) | (1 << (SqlParser.TABLE_NAME - 526)) | (1 << (SqlParser.TABLESPACE - 526)) | (1 << (SqlParser.TEMPORARY - 526)))) !== 0) || ((((_la - 558)) & ~0x1f) == 0 && ((1 << (_la - 558)) & ((1 << (SqlParser.TEMPTABLE - 558)) | (1 << (SqlParser.THAN - 558)) | (1 << (SqlParser.TRADITIONAL - 558)) | (1 << (SqlParser.TRANSACTION - 558)) | (1 << (SqlParser.TRANSACTIONAL - 558)) | (1 << (SqlParser.TRIGGERS - 558)) | (1 << (SqlParser.TRUNCATE - 558)) | (1 << (SqlParser.UNDEFINED - 558)) | (1 << (SqlParser.UNDOFILE - 558)) | (1 << (SqlParser.UNDO_BUFFER_SIZE - 558)) | (1 << (SqlParser.UNINSTALL - 558)) | (1 << (SqlParser.UNKNOWN - 558)) | (1 << (SqlParser.UNTIL - 558)) | (1 << (SqlParser.UPGRADE - 558)) | (1 << (SqlParser.USER - 558)) | (1 << (SqlParser.USE_FRM - 558)) | (1 << (SqlParser.USER_RESOURCES - 558)) | (1 << (SqlParser.VALIDATION - 558)) | (1 << (SqlParser.VALUE - 558)) | (1 << (SqlParser.VARIABLES - 558)) | (1 << (SqlParser.VIEW - 558)) | (1 << (SqlParser.VISIBLE - 558)) | (1 << (SqlParser.WAIT - 558)) | (1 << (SqlParser.WARNINGS - 558)) | (1 << (SqlParser.WITHOUT - 558)) | (1 << (SqlParser.WORK - 558)) | (1 << (SqlParser.WRAPPER - 558)) | (1 << (SqlParser.X509 - 558)) | (1 << (SqlParser.XA - 558)) | (1 << (SqlParser.XML - 558)))) !== 0) || ((((_la - 593)) & ~0x1f) == 0 && ((1 << (_la - 593)) & ((1 << (SqlParser.INTERNAL - 593)) | (1 << (SqlParser.QUARTER - 593)) | (1 << (SqlParser.MONTH - 593)) | (1 << (SqlParser.DAY - 593)) | (1 << (SqlParser.HOUR - 593)) | (1 << (SqlParser.MINUTE - 593)) | (1 << (SqlParser.WEEK - 593)) | (1 << (SqlParser.SECOND - 593)) | (1 << (SqlParser.MICROSECOND - 593)) | (1 << (SqlParser.TABLES - 593)) | (1 << (SqlParser.ROUTINE - 593)) | (1 << (SqlParser.EXECUTE - 593)) | (1 << (SqlParser.FILE - 593)) | (1 << (SqlParser.PROCESS - 593)) | (1 << (SqlParser.RELOAD - 593)) | (1 << (SqlParser.SHUTDOWN - 593)) | (1 << (SqlParser.SUPER - 593)) | (1 << (SqlParser.PRIVILEGES - 593)) | (1 << (SqlParser.AUDIT_ADMIN - 593)) | (1 << (SqlParser.BACKUP_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ENCRYPTION_ADMIN - 593)) | (1 << (SqlParser.CLONE_ADMIN - 593)) | (1 << (SqlParser.CONNECTION_ADMIN - 593)) | (1 << (SqlParser.ENCRYPTION_KEY_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_USER - 593)) | (1 << (SqlParser.GROUP_REPLICATION_ADMIN - 593)) | (1 << (SqlParser.INNODB_REDO_LOG_ARCHIVE - 593)) | (1 << (SqlParser.NDB_STORED_USER - 593)) | (1 << (SqlParser.PERSIST_RO_VARIABLES_ADMIN - 593)))) !== 0) || ((((_la - 625)) & ~0x1f) == 0 && ((1 << (_la - 625)) & ((1 << (SqlParser.REPLICATION_APPLIER - 625)) | (1 << (SqlParser.REPLICATION_SLAVE_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_USER - 625)) | (1 << (SqlParser.ROLE_ADMIN - 625)) | (1 << (SqlParser.SESSION_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.SET_USER_ID - 625)) | (1 << (SqlParser.SHOW_ROUTINE - 625)) | (1 << (SqlParser.SYSTEM_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.TABLE_ENCRYPTION_ADMIN - 625)) | (1 << (SqlParser.VERSION_TOKEN_ADMIN - 625)) | (1 << (SqlParser.XA_RECOVER_ADMIN - 625)) | (1 << (SqlParser.ARMSCII8 - 625)) | (1 << (SqlParser.ASCII - 625)) | (1 << (SqlParser.BIG5 - 625)) | (1 << (SqlParser.CP1250 - 625)) | (1 << (SqlParser.CP1251 - 625)) | (1 << (SqlParser.CP1256 - 625)) | (1 << (SqlParser.CP1257 - 625)) | (1 << (SqlParser.CP850 - 625)) | (1 << (SqlParser.CP852 - 625)) | (1 << (SqlParser.CP866 - 625)) | (1 << (SqlParser.CP932 - 625)) | (1 << (SqlParser.DEC8 - 625)) | (1 << (SqlParser.EUCJPMS - 625)) | (1 << (SqlParser.EUCKR - 625)) | (1 << (SqlParser.GB2312 - 625)) | (1 << (SqlParser.GBK - 625)) | (1 << (SqlParser.GEOSTD8 - 625)) | (1 << (SqlParser.GREEK - 625)) | (1 << (SqlParser.HEBREW - 625)) | (1 << (SqlParser.HP8 - 625)))) !== 0) || ((((_la - 657)) & ~0x1f) == 0 && ((1 << (_la - 657)) & ((1 << (SqlParser.KEYBCS2 - 657)) | (1 << (SqlParser.KOI8R - 657)) | (1 << (SqlParser.KOI8U - 657)) | (1 << (SqlParser.LATIN1 - 657)) | (1 << (SqlParser.LATIN2 - 657)) | (1 << (SqlParser.LATIN5 - 657)) | (1 << (SqlParser.LATIN7 - 657)) | (1 << (SqlParser.MACCE - 657)) | (1 << (SqlParser.MACROMAN - 657)) | (1 << (SqlParser.SJIS - 657)) | (1 << (SqlParser.SWE7 - 657)) | (1 << (SqlParser.TIS620 - 657)) | (1 << (SqlParser.UCS2 - 657)) | (1 << (SqlParser.UJIS - 657)) | (1 << (SqlParser.UTF16 - 657)) | (1 << (SqlParser.UTF16LE - 657)) | (1 << (SqlParser.UTF32 - 657)) | (1 << (SqlParser.UTF8 - 657)) | (1 << (SqlParser.UTF8MB3 - 657)) | (1 << (SqlParser.UTF8MB4 - 657)) | (1 << (SqlParser.ARCHIVE - 657)) | (1 << (SqlParser.BLACKHOLE - 657)) | (1 << (SqlParser.CSV - 657)) | (1 << (SqlParser.FEDERATED - 657)) | (1 << (SqlParser.INNODB - 657)) | (1 << (SqlParser.MEMORY - 657)) | (1 << (SqlParser.MRG_MYISAM - 657)) | (1 << (SqlParser.MYISAM - 657)) | (1 << (SqlParser.NDB - 657)) | (1 << (SqlParser.NDBCLUSTER - 657)) | (1 << (SqlParser.PERFORMANCE_SCHEMA - 657)) | (1 << (SqlParser.TOKUDB - 657)))) !== 0) || ((((_la - 689)) & ~0x1f) == 0 && ((1 << (_la - 689)) & ((1 << (SqlParser.REPEATABLE - 689)) | (1 << (SqlParser.COMMITTED - 689)) | (1 << (SqlParser.UNCOMMITTED - 689)) | (1 << (SqlParser.SERIALIZABLE - 689)) | (1 << (SqlParser.GEOMETRYCOLLECTION - 689)) | (1 << (SqlParser.LINESTRING - 689)) | (1 << (SqlParser.MULTILINESTRING - 689)) | (1 << (SqlParser.MULTIPOINT - 689)) | (1 << (SqlParser.MULTIPOLYGON - 689)) | (1 << (SqlParser.POINT - 689)) | (1 << (SqlParser.POLYGON - 689)) | (1 << (SqlParser.ABS - 689)) | (1 << (SqlParser.ACOS - 689)) | (1 << (SqlParser.ADDDATE - 689)) | (1 << (SqlParser.ADDTIME - 689)) | (1 << (SqlParser.AES_DECRYPT - 689)) | (1 << (SqlParser.AES_ENCRYPT - 689)) | (1 << (SqlParser.AREA - 689)) | (1 << (SqlParser.ASBINARY - 689)) | (1 << (SqlParser.ASIN - 689)) | (1 << (SqlParser.ASTEXT - 689)) | (1 << (SqlParser.ASWKB - 689)) | (1 << (SqlParser.ASWKT - 689)) | (1 << (SqlParser.ASYMMETRIC_DECRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_DERIVE - 689)) | (1 << (SqlParser.ASYMMETRIC_ENCRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_SIGN - 689)) | (1 << (SqlParser.ASYMMETRIC_VERIFY - 689)) | (1 << (SqlParser.ATAN - 689)) | (1 << (SqlParser.ATAN2 - 689)))) !== 0) || ((((_la - 721)) & ~0x1f) == 0 && ((1 << (_la - 721)) & ((1 << (SqlParser.BENCHMARK - 721)) | (1 << (SqlParser.BIN - 721)) | (1 << (SqlParser.BIT_COUNT - 721)) | (1 << (SqlParser.BIT_LENGTH - 721)) | (1 << (SqlParser.BUFFER - 721)) | (1 << (SqlParser.CATALOG_NAME - 721)) | (1 << (SqlParser.CEIL - 721)) | (1 << (SqlParser.CEILING - 721)) | (1 << (SqlParser.CENTROID - 721)) | (1 << (SqlParser.CHARACTER_LENGTH - 721)) | (1 << (SqlParser.CHARSET - 721)) | (1 << (SqlParser.CHAR_LENGTH - 721)) | (1 << (SqlParser.COERCIBILITY - 721)) | (1 << (SqlParser.COLLATION - 721)) | (1 << (SqlParser.COMPRESS - 721)) | (1 << (SqlParser.CONCAT - 721)) | (1 << (SqlParser.CONCAT_WS - 721)) | (1 << (SqlParser.CONNECTION_ID - 721)) | (1 << (SqlParser.CONV - 721)) | (1 << (SqlParser.CONVERT_TZ - 721)) | (1 << (SqlParser.COS - 721)) | (1 << (SqlParser.COT - 721)) | (1 << (SqlParser.CRC32 - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PRIV_KEY - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PUB_KEY - 721)) | (1 << (SqlParser.CREATE_DH_PARAMETERS - 721)) | (1 << (SqlParser.CREATE_DIGEST - 721)) | (1 << (SqlParser.CROSSES - 721)) | (1 << (SqlParser.DATEDIFF - 721)) | (1 << (SqlParser.DATE_FORMAT - 721)) | (1 << (SqlParser.DAYNAME - 721)) | (1 << (SqlParser.DAYOFMONTH - 721)))) !== 0) || ((((_la - 753)) & ~0x1f) == 0 && ((1 << (_la - 753)) & ((1 << (SqlParser.DAYOFWEEK - 753)) | (1 << (SqlParser.DAYOFYEAR - 753)) | (1 << (SqlParser.DECODE - 753)) | (1 << (SqlParser.DEGREES - 753)) | (1 << (SqlParser.DES_DECRYPT - 753)) | (1 << (SqlParser.DES_ENCRYPT - 753)) | (1 << (SqlParser.DIMENSION - 753)) | (1 << (SqlParser.DISJOINT - 753)) | (1 << (SqlParser.ELT - 753)) | (1 << (SqlParser.ENCODE - 753)) | (1 << (SqlParser.ENCRYPT - 753)) | (1 << (SqlParser.ENDPOINT - 753)) | (1 << (SqlParser.ENVELOPE - 753)) | (1 << (SqlParser.EQUALS - 753)) | (1 << (SqlParser.EXP - 753)) | (1 << (SqlParser.EXPORT_SET - 753)) | (1 << (SqlParser.EXTERIORRING - 753)) | (1 << (SqlParser.EXTRACTVALUE - 753)) | (1 << (SqlParser.FIELD - 753)) | (1 << (SqlParser.FIND_IN_SET - 753)) | (1 << (SqlParser.FLOOR - 753)) | (1 << (SqlParser.FORMAT - 753)) | (1 << (SqlParser.FOUND_ROWS - 753)) | (1 << (SqlParser.FROM_BASE64 - 753)) | (1 << (SqlParser.FROM_DAYS - 753)) | (1 << (SqlParser.FROM_UNIXTIME - 753)) | (1 << (SqlParser.GEOMCOLLFROMTEXT - 753)) | (1 << (SqlParser.GEOMCOLLFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYFROMWKB - 753)))) !== 0) || ((((_la - 785)) & ~0x1f) == 0 && ((1 << (_la - 785)) & ((1 << (SqlParser.GEOMETRYN - 785)) | (1 << (SqlParser.GEOMETRYTYPE - 785)) | (1 << (SqlParser.GEOMFROMTEXT - 785)) | (1 << (SqlParser.GEOMFROMWKB - 785)) | (1 << (SqlParser.GET_FORMAT - 785)) | (1 << (SqlParser.GET_LOCK - 785)) | (1 << (SqlParser.GLENGTH - 785)) | (1 << (SqlParser.GREATEST - 785)) | (1 << (SqlParser.GTID_SUBSET - 785)) | (1 << (SqlParser.GTID_SUBTRACT - 785)) | (1 << (SqlParser.HEX - 785)) | (1 << (SqlParser.IFNULL - 785)) | (1 << (SqlParser.INET6_ATON - 785)) | (1 << (SqlParser.INET6_NTOA - 785)) | (1 << (SqlParser.INET_ATON - 785)) | (1 << (SqlParser.INET_NTOA - 785)) | (1 << (SqlParser.INSTR - 785)) | (1 << (SqlParser.INTERIORRINGN - 785)) | (1 << (SqlParser.INTERSECTS - 785)) | (1 << (SqlParser.ISCLOSED - 785)) | (1 << (SqlParser.ISEMPTY - 785)) | (1 << (SqlParser.ISNULL - 785)) | (1 << (SqlParser.ISSIMPLE - 785)) | (1 << (SqlParser.IS_FREE_LOCK - 785)) | (1 << (SqlParser.IS_IPV4 - 785)) | (1 << (SqlParser.IS_IPV4_COMPAT - 785)) | (1 << (SqlParser.IS_IPV4_MAPPED - 785)) | (1 << (SqlParser.IS_IPV6 - 785)) | (1 << (SqlParser.IS_USED_LOCK - 785)) | (1 << (SqlParser.LAST_INSERT_ID - 785)) | (1 << (SqlParser.LCASE - 785)) | (1 << (SqlParser.LEAST - 785)))) !== 0) || ((((_la - 817)) & ~0x1f) == 0 && ((1 << (_la - 817)) & ((1 << (SqlParser.LENGTH - 817)) | (1 << (SqlParser.LINEFROMTEXT - 817)) | (1 << (SqlParser.LINEFROMWKB - 817)) | (1 << (SqlParser.LINESTRINGFROMTEXT - 817)) | (1 << (SqlParser.LINESTRINGFROMWKB - 817)) | (1 << (SqlParser.LN - 817)) | (1 << (SqlParser.LOAD_FILE - 817)) | (1 << (SqlParser.LOCATE - 817)) | (1 << (SqlParser.LOG - 817)) | (1 << (SqlParser.LOG10 - 817)) | (1 << (SqlParser.LOG2 - 817)) | (1 << (SqlParser.LOWER - 817)) | (1 << (SqlParser.LPAD - 817)) | (1 << (SqlParser.LTRIM - 817)) | (1 << (SqlParser.MAKEDATE - 817)) | (1 << (SqlParser.MAKETIME - 817)) | (1 << (SqlParser.MAKE_SET - 817)) | (1 << (SqlParser.MASTER_POS_WAIT - 817)) | (1 << (SqlParser.MBRCONTAINS - 817)) | (1 << (SqlParser.MBRDISJOINT - 817)) | (1 << (SqlParser.MBREQUAL - 817)) | (1 << (SqlParser.MBRINTERSECTS - 817)) | (1 << (SqlParser.MBROVERLAPS - 817)) | (1 << (SqlParser.MBRTOUCHES - 817)) | (1 << (SqlParser.MBRWITHIN - 817)) | (1 << (SqlParser.MD5 - 817)) | (1 << (SqlParser.MLINEFROMTEXT - 817)) | (1 << (SqlParser.MLINEFROMWKB - 817)) | (1 << (SqlParser.MONTHNAME - 817)) | (1 << (SqlParser.MPOINTFROMTEXT - 817)) | (1 << (SqlParser.MPOINTFROMWKB - 817)) | (1 << (SqlParser.MPOLYFROMTEXT - 817)))) !== 0) || ((((_la - 849)) & ~0x1f) == 0 && ((1 << (_la - 849)) & ((1 << (SqlParser.MPOLYFROMWKB - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMTEXT - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMWKB - 849)) | (1 << (SqlParser.MULTIPOINTFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOINTFROMWKB - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMWKB - 849)) | (1 << (SqlParser.NAME_CONST - 849)) | (1 << (SqlParser.NULLIF - 849)) | (1 << (SqlParser.NUMGEOMETRIES - 849)) | (1 << (SqlParser.NUMINTERIORRINGS - 849)) | (1 << (SqlParser.NUMPOINTS - 849)) | (1 << (SqlParser.OCT - 849)) | (1 << (SqlParser.OCTET_LENGTH - 849)) | (1 << (SqlParser.ORD - 849)) | (1 << (SqlParser.OVERLAPS - 849)) | (1 << (SqlParser.PERIOD_ADD - 849)) | (1 << (SqlParser.PERIOD_DIFF - 849)) | (1 << (SqlParser.PI - 849)) | (1 << (SqlParser.POINTFROMTEXT - 849)) | (1 << (SqlParser.POINTFROMWKB - 849)) | (1 << (SqlParser.POINTN - 849)) | (1 << (SqlParser.POLYFROMTEXT - 849)) | (1 << (SqlParser.POLYFROMWKB - 849)) | (1 << (SqlParser.POLYGONFROMTEXT - 849)) | (1 << (SqlParser.POLYGONFROMWKB - 849)) | (1 << (SqlParser.POW - 849)) | (1 << (SqlParser.POWER - 849)) | (1 << (SqlParser.QUOTE - 849)) | (1 << (SqlParser.RADIANS - 849)) | (1 << (SqlParser.RAND - 849)) | (1 << (SqlParser.RANDOM_BYTES - 849)))) !== 0) || ((((_la - 881)) & ~0x1f) == 0 && ((1 << (_la - 881)) & ((1 << (SqlParser.RELEASE_LOCK - 881)) | (1 << (SqlParser.REVERSE - 881)) | (1 << (SqlParser.ROUND - 881)) | (1 << (SqlParser.ROW_COUNT - 881)) | (1 << (SqlParser.RPAD - 881)) | (1 << (SqlParser.RTRIM - 881)) | (1 << (SqlParser.SEC_TO_TIME - 881)) | (1 << (SqlParser.SESSION_USER - 881)) | (1 << (SqlParser.SHA - 881)) | (1 << (SqlParser.SHA1 - 881)) | (1 << (SqlParser.SHA2 - 881)) | (1 << (SqlParser.SCHEMA_NAME - 881)) | (1 << (SqlParser.SIGN - 881)) | (1 << (SqlParser.SIN - 881)) | (1 << (SqlParser.SLEEP - 881)) | (1 << (SqlParser.SOUNDEX - 881)) | (1 << (SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS - 881)) | (1 << (SqlParser.SQRT - 881)) | (1 << (SqlParser.SRID - 881)) | (1 << (SqlParser.STARTPOINT - 881)) | (1 << (SqlParser.STRCMP - 881)) | (1 << (SqlParser.STR_TO_DATE - 881)) | (1 << (SqlParser.ST_AREA - 881)) | (1 << (SqlParser.ST_ASBINARY - 881)) | (1 << (SqlParser.ST_ASTEXT - 881)) | (1 << (SqlParser.ST_ASWKB - 881)) | (1 << (SqlParser.ST_ASWKT - 881)) | (1 << (SqlParser.ST_BUFFER - 881)) | (1 << (SqlParser.ST_CENTROID - 881)) | (1 << (SqlParser.ST_CONTAINS - 881)) | (1 << (SqlParser.ST_CROSSES - 881)) | (1 << (SqlParser.ST_DIFFERENCE - 881)))) !== 0) || ((((_la - 913)) & ~0x1f) == 0 && ((1 << (_la - 913)) & ((1 << (SqlParser.ST_DIMENSION - 913)) | (1 << (SqlParser.ST_DISJOINT - 913)) | (1 << (SqlParser.ST_DISTANCE - 913)) | (1 << (SqlParser.ST_ENDPOINT - 913)) | (1 << (SqlParser.ST_ENVELOPE - 913)) | (1 << (SqlParser.ST_EQUALS - 913)) | (1 << (SqlParser.ST_EXTERIORRING - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYN - 913)) | (1 << (SqlParser.ST_GEOMETRYTYPE - 913)) | (1 << (SqlParser.ST_GEOMFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMFROMWKB - 913)) | (1 << (SqlParser.ST_INTERIORRINGN - 913)) | (1 << (SqlParser.ST_INTERSECTION - 913)) | (1 << (SqlParser.ST_INTERSECTS - 913)) | (1 << (SqlParser.ST_ISCLOSED - 913)) | (1 << (SqlParser.ST_ISEMPTY - 913)) | (1 << (SqlParser.ST_ISSIMPLE - 913)) | (1 << (SqlParser.ST_LINEFROMTEXT - 913)) | (1 << (SqlParser.ST_LINEFROMWKB - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMTEXT - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMWKB - 913)) | (1 << (SqlParser.ST_NUMGEOMETRIES - 913)) | (1 << (SqlParser.ST_NUMINTERIORRING - 913)) | (1 << (SqlParser.ST_NUMINTERIORRINGS - 913)) | (1 << (SqlParser.ST_NUMPOINTS - 913)))) !== 0) || ((((_la - 945)) & ~0x1f) == 0 && ((1 << (_la - 945)) & ((1 << (SqlParser.ST_OVERLAPS - 945)) | (1 << (SqlParser.ST_POINTFROMTEXT - 945)) | (1 << (SqlParser.ST_POINTFROMWKB - 945)) | (1 << (SqlParser.ST_POINTN - 945)) | (1 << (SqlParser.ST_POLYFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYFROMWKB - 945)) | (1 << (SqlParser.ST_POLYGONFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYGONFROMWKB - 945)) | (1 << (SqlParser.ST_SRID - 945)) | (1 << (SqlParser.ST_STARTPOINT - 945)) | (1 << (SqlParser.ST_SYMDIFFERENCE - 945)) | (1 << (SqlParser.ST_TOUCHES - 945)) | (1 << (SqlParser.ST_UNION - 945)) | (1 << (SqlParser.ST_WITHIN - 945)) | (1 << (SqlParser.ST_X - 945)) | (1 << (SqlParser.ST_Y - 945)) | (1 << (SqlParser.SUBDATE - 945)) | (1 << (SqlParser.SUBSTRING_INDEX - 945)) | (1 << (SqlParser.SUBTIME - 945)) | (1 << (SqlParser.SYSTEM_USER - 945)) | (1 << (SqlParser.TAN - 945)) | (1 << (SqlParser.TIMEDIFF - 945)) | (1 << (SqlParser.TIMESTAMPADD - 945)) | (1 << (SqlParser.TIMESTAMPDIFF - 945)) | (1 << (SqlParser.TIME_FORMAT - 945)) | (1 << (SqlParser.TIME_TO_SEC - 945)) | (1 << (SqlParser.TOUCHES - 945)) | (1 << (SqlParser.TO_BASE64 - 945)) | (1 << (SqlParser.TO_DAYS - 945)) | (1 << (SqlParser.TO_SECONDS - 945)) | (1 << (SqlParser.UCASE - 945)) | (1 << (SqlParser.UNCOMPRESS - 945)))) !== 0) || ((((_la - 977)) & ~0x1f) == 0 && ((1 << (_la - 977)) & ((1 << (SqlParser.UNCOMPRESSED_LENGTH - 977)) | (1 << (SqlParser.UNHEX - 977)) | (1 << (SqlParser.UNIX_TIMESTAMP - 977)) | (1 << (SqlParser.UPDATEXML - 977)) | (1 << (SqlParser.UPPER - 977)) | (1 << (SqlParser.UUID - 977)) | (1 << (SqlParser.UUID_SHORT - 977)) | (1 << (SqlParser.VALIDATE_PASSWORD_STRENGTH - 977)) | (1 << (SqlParser.VERSION - 977)) | (1 << (SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS - 977)) | (1 << (SqlParser.WEEKDAY - 977)) | (1 << (SqlParser.WEEKOFYEAR - 977)) | (1 << (SqlParser.WEIGHT_STRING - 977)) | (1 << (SqlParser.WITHIN - 977)) | (1 << (SqlParser.YEARWEEK - 977)) | (1 << (SqlParser.Y_FUNCTION - 977)) | (1 << (SqlParser.X_FUNCTION - 977)))) !== 0) || ((((_la - 1032)) & ~0x1f) == 0 && ((1 << (_la - 1032)) & ((1 << (SqlParser.CHARSET_REVERSE_QOUTE_STRING - 1032)) | (1 << (SqlParser.STRING_LITERAL - 1032)) | (1 << (SqlParser.ID - 1032)) | (1 << (SqlParser.REVERSE_QUOTE_ID - 1032)))) !== 0)) {
+ this.state = 1523;
+ localctx.name = this.uid();
+ }
+
+ }
+
+ this.state = 1528;
+ this.match(SqlParser.FOREIGN);
+ this.state = 1529;
+ this.match(SqlParser.KEY);
+ this.state = 1531;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (SqlParser.CURRENT - 32)) | (1 << (SqlParser.DATABASE - 32)) | (1 << (SqlParser.DIAGNOSTICS - 32)))) !== 0) || _la===SqlParser.LEFT || _la===SqlParser.NUMBER || _la===SqlParser.RIGHT || _la===SqlParser.STACKED || ((((_la - 199)) & ~0x1f) == 0 && ((1 << (_la - 199)) & ((1 << (SqlParser.DATE - 199)) | (1 << (SqlParser.TIME - 199)) | (1 << (SqlParser.TIMESTAMP - 199)) | (1 << (SqlParser.DATETIME - 199)) | (1 << (SqlParser.YEAR - 199)) | (1 << (SqlParser.TEXT - 199)) | (1 << (SqlParser.ENUM - 199)) | (1 << (SqlParser.SERIAL - 199)))) !== 0) || ((((_la - 233)) & ~0x1f) == 0 && ((1 << (_la - 233)) & ((1 << (SqlParser.JSON_VALID - 233)) | (1 << (SqlParser.JSON_SCHEMA_VALID - 233)) | (1 << (SqlParser.COUNT - 233)) | (1 << (SqlParser.POSITION - 233)))) !== 0) || ((((_la - 270)) & ~0x1f) == 0 && ((1 << (_la - 270)) & ((1 << (SqlParser.ACCOUNT - 270)) | (1 << (SqlParser.ACTION - 270)) | (1 << (SqlParser.AFTER - 270)) | (1 << (SqlParser.AGGREGATE - 270)) | (1 << (SqlParser.ALGORITHM - 270)) | (1 << (SqlParser.ANY - 270)) | (1 << (SqlParser.AT - 270)) | (1 << (SqlParser.AUTHORS - 270)) | (1 << (SqlParser.AUTOCOMMIT - 270)) | (1 << (SqlParser.AUTOEXTEND_SIZE - 270)) | (1 << (SqlParser.AUTO_INCREMENT - 270)) | (1 << (SqlParser.AVG_ROW_LENGTH - 270)) | (1 << (SqlParser.BEGIN - 270)) | (1 << (SqlParser.BINLOG - 270)) | (1 << (SqlParser.BIT - 270)) | (1 << (SqlParser.BLOCK - 270)) | (1 << (SqlParser.BOOL - 270)) | (1 << (SqlParser.BOOLEAN - 270)) | (1 << (SqlParser.BTREE - 270)) | (1 << (SqlParser.CACHE - 270)) | (1 << (SqlParser.CASCADED - 270)) | (1 << (SqlParser.CHAIN - 270)) | (1 << (SqlParser.CHANGED - 270)) | (1 << (SqlParser.CHANNEL - 270)) | (1 << (SqlParser.CHECKSUM - 270)) | (1 << (SqlParser.PAGE_CHECKSUM - 270)) | (1 << (SqlParser.CIPHER - 270)) | (1 << (SqlParser.CLASS_ORIGIN - 270)) | (1 << (SqlParser.CLIENT - 270)) | (1 << (SqlParser.CLOSE - 270)) | (1 << (SqlParser.COALESCE - 270)) | (1 << (SqlParser.CODE - 270)))) !== 0) || ((((_la - 302)) & ~0x1f) == 0 && ((1 << (_la - 302)) & ((1 << (SqlParser.COLUMNS - 302)) | (1 << (SqlParser.COLUMN_FORMAT - 302)) | (1 << (SqlParser.COLUMN_NAME - 302)) | (1 << (SqlParser.COMMENT - 302)) | (1 << (SqlParser.COMMIT - 302)) | (1 << (SqlParser.COMPACT - 302)) | (1 << (SqlParser.COMPLETION - 302)) | (1 << (SqlParser.COMPRESSED - 302)) | (1 << (SqlParser.COMPRESSION - 302)) | (1 << (SqlParser.CONCURRENT - 302)) | (1 << (SqlParser.CONNECTION - 302)) | (1 << (SqlParser.CONSISTENT - 302)) | (1 << (SqlParser.CONSTRAINT_CATALOG - 302)) | (1 << (SqlParser.CONSTRAINT_SCHEMA - 302)) | (1 << (SqlParser.CONSTRAINT_NAME - 302)) | (1 << (SqlParser.CONTAINS - 302)) | (1 << (SqlParser.CONTEXT - 302)) | (1 << (SqlParser.CONTRIBUTORS - 302)) | (1 << (SqlParser.COPY - 302)) | (1 << (SqlParser.CPU - 302)) | (1 << (SqlParser.CURSOR_NAME - 302)) | (1 << (SqlParser.DATA - 302)) | (1 << (SqlParser.DATAFILE - 302)) | (1 << (SqlParser.DEALLOCATE - 302)) | (1 << (SqlParser.DEFAULT_AUTH - 302)) | (1 << (SqlParser.DEFINER - 302)) | (1 << (SqlParser.DELAY_KEY_WRITE - 302)) | (1 << (SqlParser.DES_KEY_FILE - 302)) | (1 << (SqlParser.DIRECTORY - 302)) | (1 << (SqlParser.DISABLE - 302)) | (1 << (SqlParser.DISCARD - 302)) | (1 << (SqlParser.DISK - 302)))) !== 0) || ((((_la - 334)) & ~0x1f) == 0 && ((1 << (_la - 334)) & ((1 << (SqlParser.DO - 334)) | (1 << (SqlParser.DUMPFILE - 334)) | (1 << (SqlParser.DUPLICATE - 334)) | (1 << (SqlParser.DYNAMIC - 334)) | (1 << (SqlParser.ENABLE - 334)) | (1 << (SqlParser.ENCRYPTION - 334)) | (1 << (SqlParser.END - 334)) | (1 << (SqlParser.ENDS - 334)) | (1 << (SqlParser.ENGINE - 334)) | (1 << (SqlParser.ENGINES - 334)) | (1 << (SqlParser.ERROR - 334)) | (1 << (SqlParser.ERRORS - 334)) | (1 << (SqlParser.ESCAPE - 334)) | (1 << (SqlParser.EVEN - 334)) | (1 << (SqlParser.EVENT - 334)) | (1 << (SqlParser.EVENTS - 334)) | (1 << (SqlParser.EVERY - 334)) | (1 << (SqlParser.EXCHANGE - 334)) | (1 << (SqlParser.EXCLUSIVE - 334)) | (1 << (SqlParser.EXPIRE - 334)) | (1 << (SqlParser.EXPORT - 334)) | (1 << (SqlParser.EXTENDED - 334)) | (1 << (SqlParser.EXTENT_SIZE - 334)) | (1 << (SqlParser.FAST - 334)) | (1 << (SqlParser.FAULTS - 334)) | (1 << (SqlParser.FIELDS - 334)) | (1 << (SqlParser.FILE_BLOCK_SIZE - 334)) | (1 << (SqlParser.FILTER - 334)) | (1 << (SqlParser.FIRST - 334)) | (1 << (SqlParser.FIXED - 334)) | (1 << (SqlParser.FLUSH - 334)) | (1 << (SqlParser.FOLLOWS - 334)))) !== 0) || ((((_la - 366)) & ~0x1f) == 0 && ((1 << (_la - 366)) & ((1 << (SqlParser.FOUND - 366)) | (1 << (SqlParser.FULL - 366)) | (1 << (SqlParser.FUNCTION - 366)) | (1 << (SqlParser.GENERAL - 366)) | (1 << (SqlParser.GLOBAL - 366)) | (1 << (SqlParser.GRANTS - 366)) | (1 << (SqlParser.GROUP_REPLICATION - 366)) | (1 << (SqlParser.HANDLER - 366)) | (1 << (SqlParser.HASH - 366)) | (1 << (SqlParser.HELP - 366)) | (1 << (SqlParser.HOST - 366)) | (1 << (SqlParser.HOSTS - 366)) | (1 << (SqlParser.IDENTIFIED - 366)) | (1 << (SqlParser.IGNORE_SERVER_IDS - 366)) | (1 << (SqlParser.IMPORT - 366)) | (1 << (SqlParser.INDEXES - 366)) | (1 << (SqlParser.INITIAL_SIZE - 366)) | (1 << (SqlParser.INPLACE - 366)) | (1 << (SqlParser.INSERT_METHOD - 366)) | (1 << (SqlParser.INSTALL - 366)) | (1 << (SqlParser.INSTANCE - 366)) | (1 << (SqlParser.INVISIBLE - 366)) | (1 << (SqlParser.INVOKER - 366)) | (1 << (SqlParser.IO - 366)) | (1 << (SqlParser.IO_THREAD - 366)) | (1 << (SqlParser.IPC - 366)) | (1 << (SqlParser.ISOLATION - 366)) | (1 << (SqlParser.ISSUER - 366)) | (1 << (SqlParser.JSON - 366)) | (1 << (SqlParser.KEY_BLOCK_SIZE - 366)) | (1 << (SqlParser.LANGUAGE - 366)) | (1 << (SqlParser.LAST - 366)))) !== 0) || ((((_la - 398)) & ~0x1f) == 0 && ((1 << (_la - 398)) & ((1 << (SqlParser.LEAVES - 398)) | (1 << (SqlParser.LESS - 398)) | (1 << (SqlParser.LEVEL - 398)) | (1 << (SqlParser.LIST - 398)) | (1 << (SqlParser.LOCAL - 398)) | (1 << (SqlParser.LOGFILE - 398)) | (1 << (SqlParser.LOGS - 398)) | (1 << (SqlParser.MASTER - 398)) | (1 << (SqlParser.MASTER_AUTO_POSITION - 398)) | (1 << (SqlParser.MASTER_CONNECT_RETRY - 398)) | (1 << (SqlParser.MASTER_DELAY - 398)) | (1 << (SqlParser.MASTER_HEARTBEAT_PERIOD - 398)) | (1 << (SqlParser.MASTER_HOST - 398)) | (1 << (SqlParser.MASTER_LOG_FILE - 398)) | (1 << (SqlParser.MASTER_LOG_POS - 398)) | (1 << (SqlParser.MASTER_PASSWORD - 398)) | (1 << (SqlParser.MASTER_PORT - 398)) | (1 << (SqlParser.MASTER_RETRY_COUNT - 398)) | (1 << (SqlParser.MASTER_SSL - 398)) | (1 << (SqlParser.MASTER_SSL_CA - 398)) | (1 << (SqlParser.MASTER_SSL_CAPATH - 398)) | (1 << (SqlParser.MASTER_SSL_CERT - 398)) | (1 << (SqlParser.MASTER_SSL_CIPHER - 398)) | (1 << (SqlParser.MASTER_SSL_CRL - 398)) | (1 << (SqlParser.MASTER_SSL_CRLPATH - 398)) | (1 << (SqlParser.MASTER_SSL_KEY - 398)) | (1 << (SqlParser.MASTER_TLS_VERSION - 398)) | (1 << (SqlParser.MASTER_USER - 398)) | (1 << (SqlParser.MAX_CONNECTIONS_PER_HOUR - 398)) | (1 << (SqlParser.MAX_QUERIES_PER_HOUR - 398)) | (1 << (SqlParser.MAX_ROWS - 398)) | (1 << (SqlParser.MAX_SIZE - 398)))) !== 0) || ((((_la - 430)) & ~0x1f) == 0 && ((1 << (_la - 430)) & ((1 << (SqlParser.MAX_UPDATES_PER_HOUR - 430)) | (1 << (SqlParser.MAX_USER_CONNECTIONS - 430)) | (1 << (SqlParser.MEDIUM - 430)) | (1 << (SqlParser.MERGE - 430)) | (1 << (SqlParser.MESSAGE_TEXT - 430)) | (1 << (SqlParser.MID - 430)) | (1 << (SqlParser.MIGRATE - 430)) | (1 << (SqlParser.MIN_ROWS - 430)) | (1 << (SqlParser.MODE - 430)) | (1 << (SqlParser.MODIFY - 430)) | (1 << (SqlParser.MUTEX - 430)) | (1 << (SqlParser.MYSQL - 430)) | (1 << (SqlParser.MYSQL_ERRNO - 430)) | (1 << (SqlParser.NAME - 430)) | (1 << (SqlParser.NAMES - 430)) | (1 << (SqlParser.NCHAR - 430)) | (1 << (SqlParser.NEVER - 430)) | (1 << (SqlParser.NEXT - 430)) | (1 << (SqlParser.NO - 430)) | (1 << (SqlParser.NODEGROUP - 430)) | (1 << (SqlParser.NONE - 430)) | (1 << (SqlParser.OFFLINE - 430)) | (1 << (SqlParser.OFFSET - 430)) | (1 << (SqlParser.OJ - 430)) | (1 << (SqlParser.OLD_PASSWORD - 430)) | (1 << (SqlParser.ONE - 430)) | (1 << (SqlParser.ONLINE - 430)) | (1 << (SqlParser.ONLY - 430)) | (1 << (SqlParser.OPEN - 430)) | (1 << (SqlParser.OPTIMIZER_COSTS - 430)) | (1 << (SqlParser.OPTIONS - 430)) | (1 << (SqlParser.OWNER - 430)))) !== 0) || ((((_la - 462)) & ~0x1f) == 0 && ((1 << (_la - 462)) & ((1 << (SqlParser.PACK_KEYS - 462)) | (1 << (SqlParser.PAGE - 462)) | (1 << (SqlParser.PARSER - 462)) | (1 << (SqlParser.PARTIAL - 462)) | (1 << (SqlParser.PARTITIONING - 462)) | (1 << (SqlParser.PARTITIONS - 462)) | (1 << (SqlParser.PASSWORD - 462)) | (1 << (SqlParser.PHASE - 462)) | (1 << (SqlParser.PLUGIN - 462)) | (1 << (SqlParser.PLUGIN_DIR - 462)) | (1 << (SqlParser.PLUGINS - 462)) | (1 << (SqlParser.PORT - 462)) | (1 << (SqlParser.PRECEDES - 462)) | (1 << (SqlParser.PREPARE - 462)) | (1 << (SqlParser.PRESERVE - 462)) | (1 << (SqlParser.PREV - 462)) | (1 << (SqlParser.PROCESSLIST - 462)) | (1 << (SqlParser.PROFILE - 462)) | (1 << (SqlParser.PROFILES - 462)) | (1 << (SqlParser.PROXY - 462)) | (1 << (SqlParser.QUERY - 462)) | (1 << (SqlParser.QUICK - 462)) | (1 << (SqlParser.REBUILD - 462)) | (1 << (SqlParser.RECOVER - 462)) | (1 << (SqlParser.REDO_BUFFER_SIZE - 462)) | (1 << (SqlParser.REDUNDANT - 462)) | (1 << (SqlParser.RELAY - 462)) | (1 << (SqlParser.RELAY_LOG_FILE - 462)) | (1 << (SqlParser.RELAY_LOG_POS - 462)) | (1 << (SqlParser.RELAYLOG - 462)) | (1 << (SqlParser.REMOVE - 462)) | (1 << (SqlParser.REORGANIZE - 462)))) !== 0) || ((((_la - 494)) & ~0x1f) == 0 && ((1 << (_la - 494)) & ((1 << (SqlParser.REPAIR - 494)) | (1 << (SqlParser.REPLICATE_DO_DB - 494)) | (1 << (SqlParser.REPLICATE_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_DB - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATE_REWRITE_DB - 494)) | (1 << (SqlParser.REPLICATE_WILD_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_WILD_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATION - 494)) | (1 << (SqlParser.RESET - 494)) | (1 << (SqlParser.RESUME - 494)) | (1 << (SqlParser.RETURNED_SQLSTATE - 494)) | (1 << (SqlParser.RETURNS - 494)) | (1 << (SqlParser.ROLE - 494)) | (1 << (SqlParser.ROLLBACK - 494)) | (1 << (SqlParser.ROLLUP - 494)) | (1 << (SqlParser.ROTATE - 494)) | (1 << (SqlParser.ROW - 494)) | (1 << (SqlParser.ROWS - 494)) | (1 << (SqlParser.ROW_FORMAT - 494)) | (1 << (SqlParser.SAVEPOINT - 494)) | (1 << (SqlParser.SCHEDULE - 494)) | (1 << (SqlParser.SECURITY - 494)) | (1 << (SqlParser.SERVER - 494)) | (1 << (SqlParser.SESSION - 494)) | (1 << (SqlParser.SHARE - 494)) | (1 << (SqlParser.SHARED - 494)) | (1 << (SqlParser.SIGNED - 494)) | (1 << (SqlParser.SIMPLE - 494)) | (1 << (SqlParser.SLAVE - 494)) | (1 << (SqlParser.SLOW - 494)) | (1 << (SqlParser.SNAPSHOT - 494)))) !== 0) || ((((_la - 526)) & ~0x1f) == 0 && ((1 << (_la - 526)) & ((1 << (SqlParser.SOCKET - 526)) | (1 << (SqlParser.SOME - 526)) | (1 << (SqlParser.SONAME - 526)) | (1 << (SqlParser.SOUNDS - 526)) | (1 << (SqlParser.SOURCE - 526)) | (1 << (SqlParser.SQL_AFTER_GTIDS - 526)) | (1 << (SqlParser.SQL_AFTER_MTS_GAPS - 526)) | (1 << (SqlParser.SQL_BEFORE_GTIDS - 526)) | (1 << (SqlParser.SQL_BUFFER_RESULT - 526)) | (1 << (SqlParser.SQL_CACHE - 526)) | (1 << (SqlParser.SQL_NO_CACHE - 526)) | (1 << (SqlParser.SQL_THREAD - 526)) | (1 << (SqlParser.START - 526)) | (1 << (SqlParser.STARTS - 526)) | (1 << (SqlParser.STATS_AUTO_RECALC - 526)) | (1 << (SqlParser.STATS_PERSISTENT - 526)) | (1 << (SqlParser.STATS_SAMPLE_PAGES - 526)) | (1 << (SqlParser.STATUS - 526)) | (1 << (SqlParser.STOP - 526)) | (1 << (SqlParser.STORAGE - 526)) | (1 << (SqlParser.STRING - 526)) | (1 << (SqlParser.SUBCLASS_ORIGIN - 526)) | (1 << (SqlParser.SUBJECT - 526)) | (1 << (SqlParser.SUBPARTITION - 526)) | (1 << (SqlParser.SUBPARTITIONS - 526)) | (1 << (SqlParser.SUSPEND - 526)) | (1 << (SqlParser.SWAPS - 526)) | (1 << (SqlParser.SWITCHES - 526)) | (1 << (SqlParser.TABLE_NAME - 526)) | (1 << (SqlParser.TABLESPACE - 526)) | (1 << (SqlParser.TEMPORARY - 526)))) !== 0) || ((((_la - 558)) & ~0x1f) == 0 && ((1 << (_la - 558)) & ((1 << (SqlParser.TEMPTABLE - 558)) | (1 << (SqlParser.THAN - 558)) | (1 << (SqlParser.TRADITIONAL - 558)) | (1 << (SqlParser.TRANSACTION - 558)) | (1 << (SqlParser.TRANSACTIONAL - 558)) | (1 << (SqlParser.TRIGGERS - 558)) | (1 << (SqlParser.TRUNCATE - 558)) | (1 << (SqlParser.UNDEFINED - 558)) | (1 << (SqlParser.UNDOFILE - 558)) | (1 << (SqlParser.UNDO_BUFFER_SIZE - 558)) | (1 << (SqlParser.UNINSTALL - 558)) | (1 << (SqlParser.UNKNOWN - 558)) | (1 << (SqlParser.UNTIL - 558)) | (1 << (SqlParser.UPGRADE - 558)) | (1 << (SqlParser.USER - 558)) | (1 << (SqlParser.USE_FRM - 558)) | (1 << (SqlParser.USER_RESOURCES - 558)) | (1 << (SqlParser.VALIDATION - 558)) | (1 << (SqlParser.VALUE - 558)) | (1 << (SqlParser.VARIABLES - 558)) | (1 << (SqlParser.VIEW - 558)) | (1 << (SqlParser.VISIBLE - 558)) | (1 << (SqlParser.WAIT - 558)) | (1 << (SqlParser.WARNINGS - 558)) | (1 << (SqlParser.WITHOUT - 558)) | (1 << (SqlParser.WORK - 558)) | (1 << (SqlParser.WRAPPER - 558)) | (1 << (SqlParser.X509 - 558)) | (1 << (SqlParser.XA - 558)) | (1 << (SqlParser.XML - 558)))) !== 0) || ((((_la - 593)) & ~0x1f) == 0 && ((1 << (_la - 593)) & ((1 << (SqlParser.INTERNAL - 593)) | (1 << (SqlParser.QUARTER - 593)) | (1 << (SqlParser.MONTH - 593)) | (1 << (SqlParser.DAY - 593)) | (1 << (SqlParser.HOUR - 593)) | (1 << (SqlParser.MINUTE - 593)) | (1 << (SqlParser.WEEK - 593)) | (1 << (SqlParser.SECOND - 593)) | (1 << (SqlParser.MICROSECOND - 593)) | (1 << (SqlParser.TABLES - 593)) | (1 << (SqlParser.ROUTINE - 593)) | (1 << (SqlParser.EXECUTE - 593)) | (1 << (SqlParser.FILE - 593)) | (1 << (SqlParser.PROCESS - 593)) | (1 << (SqlParser.RELOAD - 593)) | (1 << (SqlParser.SHUTDOWN - 593)) | (1 << (SqlParser.SUPER - 593)) | (1 << (SqlParser.PRIVILEGES - 593)) | (1 << (SqlParser.AUDIT_ADMIN - 593)) | (1 << (SqlParser.BACKUP_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ENCRYPTION_ADMIN - 593)) | (1 << (SqlParser.CLONE_ADMIN - 593)) | (1 << (SqlParser.CONNECTION_ADMIN - 593)) | (1 << (SqlParser.ENCRYPTION_KEY_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_USER - 593)) | (1 << (SqlParser.GROUP_REPLICATION_ADMIN - 593)) | (1 << (SqlParser.INNODB_REDO_LOG_ARCHIVE - 593)) | (1 << (SqlParser.NDB_STORED_USER - 593)) | (1 << (SqlParser.PERSIST_RO_VARIABLES_ADMIN - 593)))) !== 0) || ((((_la - 625)) & ~0x1f) == 0 && ((1 << (_la - 625)) & ((1 << (SqlParser.REPLICATION_APPLIER - 625)) | (1 << (SqlParser.REPLICATION_SLAVE_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_USER - 625)) | (1 << (SqlParser.ROLE_ADMIN - 625)) | (1 << (SqlParser.SESSION_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.SET_USER_ID - 625)) | (1 << (SqlParser.SHOW_ROUTINE - 625)) | (1 << (SqlParser.SYSTEM_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.TABLE_ENCRYPTION_ADMIN - 625)) | (1 << (SqlParser.VERSION_TOKEN_ADMIN - 625)) | (1 << (SqlParser.XA_RECOVER_ADMIN - 625)) | (1 << (SqlParser.ARMSCII8 - 625)) | (1 << (SqlParser.ASCII - 625)) | (1 << (SqlParser.BIG5 - 625)) | (1 << (SqlParser.CP1250 - 625)) | (1 << (SqlParser.CP1251 - 625)) | (1 << (SqlParser.CP1256 - 625)) | (1 << (SqlParser.CP1257 - 625)) | (1 << (SqlParser.CP850 - 625)) | (1 << (SqlParser.CP852 - 625)) | (1 << (SqlParser.CP866 - 625)) | (1 << (SqlParser.CP932 - 625)) | (1 << (SqlParser.DEC8 - 625)) | (1 << (SqlParser.EUCJPMS - 625)) | (1 << (SqlParser.EUCKR - 625)) | (1 << (SqlParser.GB2312 - 625)) | (1 << (SqlParser.GBK - 625)) | (1 << (SqlParser.GEOSTD8 - 625)) | (1 << (SqlParser.GREEK - 625)) | (1 << (SqlParser.HEBREW - 625)) | (1 << (SqlParser.HP8 - 625)))) !== 0) || ((((_la - 657)) & ~0x1f) == 0 && ((1 << (_la - 657)) & ((1 << (SqlParser.KEYBCS2 - 657)) | (1 << (SqlParser.KOI8R - 657)) | (1 << (SqlParser.KOI8U - 657)) | (1 << (SqlParser.LATIN1 - 657)) | (1 << (SqlParser.LATIN2 - 657)) | (1 << (SqlParser.LATIN5 - 657)) | (1 << (SqlParser.LATIN7 - 657)) | (1 << (SqlParser.MACCE - 657)) | (1 << (SqlParser.MACROMAN - 657)) | (1 << (SqlParser.SJIS - 657)) | (1 << (SqlParser.SWE7 - 657)) | (1 << (SqlParser.TIS620 - 657)) | (1 << (SqlParser.UCS2 - 657)) | (1 << (SqlParser.UJIS - 657)) | (1 << (SqlParser.UTF16 - 657)) | (1 << (SqlParser.UTF16LE - 657)) | (1 << (SqlParser.UTF32 - 657)) | (1 << (SqlParser.UTF8 - 657)) | (1 << (SqlParser.UTF8MB3 - 657)) | (1 << (SqlParser.UTF8MB4 - 657)) | (1 << (SqlParser.ARCHIVE - 657)) | (1 << (SqlParser.BLACKHOLE - 657)) | (1 << (SqlParser.CSV - 657)) | (1 << (SqlParser.FEDERATED - 657)) | (1 << (SqlParser.INNODB - 657)) | (1 << (SqlParser.MEMORY - 657)) | (1 << (SqlParser.MRG_MYISAM - 657)) | (1 << (SqlParser.MYISAM - 657)) | (1 << (SqlParser.NDB - 657)) | (1 << (SqlParser.NDBCLUSTER - 657)) | (1 << (SqlParser.PERFORMANCE_SCHEMA - 657)) | (1 << (SqlParser.TOKUDB - 657)))) !== 0) || ((((_la - 689)) & ~0x1f) == 0 && ((1 << (_la - 689)) & ((1 << (SqlParser.REPEATABLE - 689)) | (1 << (SqlParser.COMMITTED - 689)) | (1 << (SqlParser.UNCOMMITTED - 689)) | (1 << (SqlParser.SERIALIZABLE - 689)) | (1 << (SqlParser.GEOMETRYCOLLECTION - 689)) | (1 << (SqlParser.LINESTRING - 689)) | (1 << (SqlParser.MULTILINESTRING - 689)) | (1 << (SqlParser.MULTIPOINT - 689)) | (1 << (SqlParser.MULTIPOLYGON - 689)) | (1 << (SqlParser.POINT - 689)) | (1 << (SqlParser.POLYGON - 689)) | (1 << (SqlParser.ABS - 689)) | (1 << (SqlParser.ACOS - 689)) | (1 << (SqlParser.ADDDATE - 689)) | (1 << (SqlParser.ADDTIME - 689)) | (1 << (SqlParser.AES_DECRYPT - 689)) | (1 << (SqlParser.AES_ENCRYPT - 689)) | (1 << (SqlParser.AREA - 689)) | (1 << (SqlParser.ASBINARY - 689)) | (1 << (SqlParser.ASIN - 689)) | (1 << (SqlParser.ASTEXT - 689)) | (1 << (SqlParser.ASWKB - 689)) | (1 << (SqlParser.ASWKT - 689)) | (1 << (SqlParser.ASYMMETRIC_DECRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_DERIVE - 689)) | (1 << (SqlParser.ASYMMETRIC_ENCRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_SIGN - 689)) | (1 << (SqlParser.ASYMMETRIC_VERIFY - 689)) | (1 << (SqlParser.ATAN - 689)) | (1 << (SqlParser.ATAN2 - 689)))) !== 0) || ((((_la - 721)) & ~0x1f) == 0 && ((1 << (_la - 721)) & ((1 << (SqlParser.BENCHMARK - 721)) | (1 << (SqlParser.BIN - 721)) | (1 << (SqlParser.BIT_COUNT - 721)) | (1 << (SqlParser.BIT_LENGTH - 721)) | (1 << (SqlParser.BUFFER - 721)) | (1 << (SqlParser.CATALOG_NAME - 721)) | (1 << (SqlParser.CEIL - 721)) | (1 << (SqlParser.CEILING - 721)) | (1 << (SqlParser.CENTROID - 721)) | (1 << (SqlParser.CHARACTER_LENGTH - 721)) | (1 << (SqlParser.CHARSET - 721)) | (1 << (SqlParser.CHAR_LENGTH - 721)) | (1 << (SqlParser.COERCIBILITY - 721)) | (1 << (SqlParser.COLLATION - 721)) | (1 << (SqlParser.COMPRESS - 721)) | (1 << (SqlParser.CONCAT - 721)) | (1 << (SqlParser.CONCAT_WS - 721)) | (1 << (SqlParser.CONNECTION_ID - 721)) | (1 << (SqlParser.CONV - 721)) | (1 << (SqlParser.CONVERT_TZ - 721)) | (1 << (SqlParser.COS - 721)) | (1 << (SqlParser.COT - 721)) | (1 << (SqlParser.CRC32 - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PRIV_KEY - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PUB_KEY - 721)) | (1 << (SqlParser.CREATE_DH_PARAMETERS - 721)) | (1 << (SqlParser.CREATE_DIGEST - 721)) | (1 << (SqlParser.CROSSES - 721)) | (1 << (SqlParser.DATEDIFF - 721)) | (1 << (SqlParser.DATE_FORMAT - 721)) | (1 << (SqlParser.DAYNAME - 721)) | (1 << (SqlParser.DAYOFMONTH - 721)))) !== 0) || ((((_la - 753)) & ~0x1f) == 0 && ((1 << (_la - 753)) & ((1 << (SqlParser.DAYOFWEEK - 753)) | (1 << (SqlParser.DAYOFYEAR - 753)) | (1 << (SqlParser.DECODE - 753)) | (1 << (SqlParser.DEGREES - 753)) | (1 << (SqlParser.DES_DECRYPT - 753)) | (1 << (SqlParser.DES_ENCRYPT - 753)) | (1 << (SqlParser.DIMENSION - 753)) | (1 << (SqlParser.DISJOINT - 753)) | (1 << (SqlParser.ELT - 753)) | (1 << (SqlParser.ENCODE - 753)) | (1 << (SqlParser.ENCRYPT - 753)) | (1 << (SqlParser.ENDPOINT - 753)) | (1 << (SqlParser.ENVELOPE - 753)) | (1 << (SqlParser.EQUALS - 753)) | (1 << (SqlParser.EXP - 753)) | (1 << (SqlParser.EXPORT_SET - 753)) | (1 << (SqlParser.EXTERIORRING - 753)) | (1 << (SqlParser.EXTRACTVALUE - 753)) | (1 << (SqlParser.FIELD - 753)) | (1 << (SqlParser.FIND_IN_SET - 753)) | (1 << (SqlParser.FLOOR - 753)) | (1 << (SqlParser.FORMAT - 753)) | (1 << (SqlParser.FOUND_ROWS - 753)) | (1 << (SqlParser.FROM_BASE64 - 753)) | (1 << (SqlParser.FROM_DAYS - 753)) | (1 << (SqlParser.FROM_UNIXTIME - 753)) | (1 << (SqlParser.GEOMCOLLFROMTEXT - 753)) | (1 << (SqlParser.GEOMCOLLFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYFROMWKB - 753)))) !== 0) || ((((_la - 785)) & ~0x1f) == 0 && ((1 << (_la - 785)) & ((1 << (SqlParser.GEOMETRYN - 785)) | (1 << (SqlParser.GEOMETRYTYPE - 785)) | (1 << (SqlParser.GEOMFROMTEXT - 785)) | (1 << (SqlParser.GEOMFROMWKB - 785)) | (1 << (SqlParser.GET_FORMAT - 785)) | (1 << (SqlParser.GET_LOCK - 785)) | (1 << (SqlParser.GLENGTH - 785)) | (1 << (SqlParser.GREATEST - 785)) | (1 << (SqlParser.GTID_SUBSET - 785)) | (1 << (SqlParser.GTID_SUBTRACT - 785)) | (1 << (SqlParser.HEX - 785)) | (1 << (SqlParser.IFNULL - 785)) | (1 << (SqlParser.INET6_ATON - 785)) | (1 << (SqlParser.INET6_NTOA - 785)) | (1 << (SqlParser.INET_ATON - 785)) | (1 << (SqlParser.INET_NTOA - 785)) | (1 << (SqlParser.INSTR - 785)) | (1 << (SqlParser.INTERIORRINGN - 785)) | (1 << (SqlParser.INTERSECTS - 785)) | (1 << (SqlParser.ISCLOSED - 785)) | (1 << (SqlParser.ISEMPTY - 785)) | (1 << (SqlParser.ISNULL - 785)) | (1 << (SqlParser.ISSIMPLE - 785)) | (1 << (SqlParser.IS_FREE_LOCK - 785)) | (1 << (SqlParser.IS_IPV4 - 785)) | (1 << (SqlParser.IS_IPV4_COMPAT - 785)) | (1 << (SqlParser.IS_IPV4_MAPPED - 785)) | (1 << (SqlParser.IS_IPV6 - 785)) | (1 << (SqlParser.IS_USED_LOCK - 785)) | (1 << (SqlParser.LAST_INSERT_ID - 785)) | (1 << (SqlParser.LCASE - 785)) | (1 << (SqlParser.LEAST - 785)))) !== 0) || ((((_la - 817)) & ~0x1f) == 0 && ((1 << (_la - 817)) & ((1 << (SqlParser.LENGTH - 817)) | (1 << (SqlParser.LINEFROMTEXT - 817)) | (1 << (SqlParser.LINEFROMWKB - 817)) | (1 << (SqlParser.LINESTRINGFROMTEXT - 817)) | (1 << (SqlParser.LINESTRINGFROMWKB - 817)) | (1 << (SqlParser.LN - 817)) | (1 << (SqlParser.LOAD_FILE - 817)) | (1 << (SqlParser.LOCATE - 817)) | (1 << (SqlParser.LOG - 817)) | (1 << (SqlParser.LOG10 - 817)) | (1 << (SqlParser.LOG2 - 817)) | (1 << (SqlParser.LOWER - 817)) | (1 << (SqlParser.LPAD - 817)) | (1 << (SqlParser.LTRIM - 817)) | (1 << (SqlParser.MAKEDATE - 817)) | (1 << (SqlParser.MAKETIME - 817)) | (1 << (SqlParser.MAKE_SET - 817)) | (1 << (SqlParser.MASTER_POS_WAIT - 817)) | (1 << (SqlParser.MBRCONTAINS - 817)) | (1 << (SqlParser.MBRDISJOINT - 817)) | (1 << (SqlParser.MBREQUAL - 817)) | (1 << (SqlParser.MBRINTERSECTS - 817)) | (1 << (SqlParser.MBROVERLAPS - 817)) | (1 << (SqlParser.MBRTOUCHES - 817)) | (1 << (SqlParser.MBRWITHIN - 817)) | (1 << (SqlParser.MD5 - 817)) | (1 << (SqlParser.MLINEFROMTEXT - 817)) | (1 << (SqlParser.MLINEFROMWKB - 817)) | (1 << (SqlParser.MONTHNAME - 817)) | (1 << (SqlParser.MPOINTFROMTEXT - 817)) | (1 << (SqlParser.MPOINTFROMWKB - 817)) | (1 << (SqlParser.MPOLYFROMTEXT - 817)))) !== 0) || ((((_la - 849)) & ~0x1f) == 0 && ((1 << (_la - 849)) & ((1 << (SqlParser.MPOLYFROMWKB - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMTEXT - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMWKB - 849)) | (1 << (SqlParser.MULTIPOINTFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOINTFROMWKB - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMWKB - 849)) | (1 << (SqlParser.NAME_CONST - 849)) | (1 << (SqlParser.NULLIF - 849)) | (1 << (SqlParser.NUMGEOMETRIES - 849)) | (1 << (SqlParser.NUMINTERIORRINGS - 849)) | (1 << (SqlParser.NUMPOINTS - 849)) | (1 << (SqlParser.OCT - 849)) | (1 << (SqlParser.OCTET_LENGTH - 849)) | (1 << (SqlParser.ORD - 849)) | (1 << (SqlParser.OVERLAPS - 849)) | (1 << (SqlParser.PERIOD_ADD - 849)) | (1 << (SqlParser.PERIOD_DIFF - 849)) | (1 << (SqlParser.PI - 849)) | (1 << (SqlParser.POINTFROMTEXT - 849)) | (1 << (SqlParser.POINTFROMWKB - 849)) | (1 << (SqlParser.POINTN - 849)) | (1 << (SqlParser.POLYFROMTEXT - 849)) | (1 << (SqlParser.POLYFROMWKB - 849)) | (1 << (SqlParser.POLYGONFROMTEXT - 849)) | (1 << (SqlParser.POLYGONFROMWKB - 849)) | (1 << (SqlParser.POW - 849)) | (1 << (SqlParser.POWER - 849)) | (1 << (SqlParser.QUOTE - 849)) | (1 << (SqlParser.RADIANS - 849)) | (1 << (SqlParser.RAND - 849)) | (1 << (SqlParser.RANDOM_BYTES - 849)))) !== 0) || ((((_la - 881)) & ~0x1f) == 0 && ((1 << (_la - 881)) & ((1 << (SqlParser.RELEASE_LOCK - 881)) | (1 << (SqlParser.REVERSE - 881)) | (1 << (SqlParser.ROUND - 881)) | (1 << (SqlParser.ROW_COUNT - 881)) | (1 << (SqlParser.RPAD - 881)) | (1 << (SqlParser.RTRIM - 881)) | (1 << (SqlParser.SEC_TO_TIME - 881)) | (1 << (SqlParser.SESSION_USER - 881)) | (1 << (SqlParser.SHA - 881)) | (1 << (SqlParser.SHA1 - 881)) | (1 << (SqlParser.SHA2 - 881)) | (1 << (SqlParser.SCHEMA_NAME - 881)) | (1 << (SqlParser.SIGN - 881)) | (1 << (SqlParser.SIN - 881)) | (1 << (SqlParser.SLEEP - 881)) | (1 << (SqlParser.SOUNDEX - 881)) | (1 << (SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS - 881)) | (1 << (SqlParser.SQRT - 881)) | (1 << (SqlParser.SRID - 881)) | (1 << (SqlParser.STARTPOINT - 881)) | (1 << (SqlParser.STRCMP - 881)) | (1 << (SqlParser.STR_TO_DATE - 881)) | (1 << (SqlParser.ST_AREA - 881)) | (1 << (SqlParser.ST_ASBINARY - 881)) | (1 << (SqlParser.ST_ASTEXT - 881)) | (1 << (SqlParser.ST_ASWKB - 881)) | (1 << (SqlParser.ST_ASWKT - 881)) | (1 << (SqlParser.ST_BUFFER - 881)) | (1 << (SqlParser.ST_CENTROID - 881)) | (1 << (SqlParser.ST_CONTAINS - 881)) | (1 << (SqlParser.ST_CROSSES - 881)) | (1 << (SqlParser.ST_DIFFERENCE - 881)))) !== 0) || ((((_la - 913)) & ~0x1f) == 0 && ((1 << (_la - 913)) & ((1 << (SqlParser.ST_DIMENSION - 913)) | (1 << (SqlParser.ST_DISJOINT - 913)) | (1 << (SqlParser.ST_DISTANCE - 913)) | (1 << (SqlParser.ST_ENDPOINT - 913)) | (1 << (SqlParser.ST_ENVELOPE - 913)) | (1 << (SqlParser.ST_EQUALS - 913)) | (1 << (SqlParser.ST_EXTERIORRING - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYN - 913)) | (1 << (SqlParser.ST_GEOMETRYTYPE - 913)) | (1 << (SqlParser.ST_GEOMFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMFROMWKB - 913)) | (1 << (SqlParser.ST_INTERIORRINGN - 913)) | (1 << (SqlParser.ST_INTERSECTION - 913)) | (1 << (SqlParser.ST_INTERSECTS - 913)) | (1 << (SqlParser.ST_ISCLOSED - 913)) | (1 << (SqlParser.ST_ISEMPTY - 913)) | (1 << (SqlParser.ST_ISSIMPLE - 913)) | (1 << (SqlParser.ST_LINEFROMTEXT - 913)) | (1 << (SqlParser.ST_LINEFROMWKB - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMTEXT - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMWKB - 913)) | (1 << (SqlParser.ST_NUMGEOMETRIES - 913)) | (1 << (SqlParser.ST_NUMINTERIORRING - 913)) | (1 << (SqlParser.ST_NUMINTERIORRINGS - 913)) | (1 << (SqlParser.ST_NUMPOINTS - 913)))) !== 0) || ((((_la - 945)) & ~0x1f) == 0 && ((1 << (_la - 945)) & ((1 << (SqlParser.ST_OVERLAPS - 945)) | (1 << (SqlParser.ST_POINTFROMTEXT - 945)) | (1 << (SqlParser.ST_POINTFROMWKB - 945)) | (1 << (SqlParser.ST_POINTN - 945)) | (1 << (SqlParser.ST_POLYFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYFROMWKB - 945)) | (1 << (SqlParser.ST_POLYGONFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYGONFROMWKB - 945)) | (1 << (SqlParser.ST_SRID - 945)) | (1 << (SqlParser.ST_STARTPOINT - 945)) | (1 << (SqlParser.ST_SYMDIFFERENCE - 945)) | (1 << (SqlParser.ST_TOUCHES - 945)) | (1 << (SqlParser.ST_UNION - 945)) | (1 << (SqlParser.ST_WITHIN - 945)) | (1 << (SqlParser.ST_X - 945)) | (1 << (SqlParser.ST_Y - 945)) | (1 << (SqlParser.SUBDATE - 945)) | (1 << (SqlParser.SUBSTRING_INDEX - 945)) | (1 << (SqlParser.SUBTIME - 945)) | (1 << (SqlParser.SYSTEM_USER - 945)) | (1 << (SqlParser.TAN - 945)) | (1 << (SqlParser.TIMEDIFF - 945)) | (1 << (SqlParser.TIMESTAMPADD - 945)) | (1 << (SqlParser.TIMESTAMPDIFF - 945)) | (1 << (SqlParser.TIME_FORMAT - 945)) | (1 << (SqlParser.TIME_TO_SEC - 945)) | (1 << (SqlParser.TOUCHES - 945)) | (1 << (SqlParser.TO_BASE64 - 945)) | (1 << (SqlParser.TO_DAYS - 945)) | (1 << (SqlParser.TO_SECONDS - 945)) | (1 << (SqlParser.UCASE - 945)) | (1 << (SqlParser.UNCOMPRESS - 945)))) !== 0) || ((((_la - 977)) & ~0x1f) == 0 && ((1 << (_la - 977)) & ((1 << (SqlParser.UNCOMPRESSED_LENGTH - 977)) | (1 << (SqlParser.UNHEX - 977)) | (1 << (SqlParser.UNIX_TIMESTAMP - 977)) | (1 << (SqlParser.UPDATEXML - 977)) | (1 << (SqlParser.UPPER - 977)) | (1 << (SqlParser.UUID - 977)) | (1 << (SqlParser.UUID_SHORT - 977)) | (1 << (SqlParser.VALIDATE_PASSWORD_STRENGTH - 977)) | (1 << (SqlParser.VERSION - 977)) | (1 << (SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS - 977)) | (1 << (SqlParser.WEEKDAY - 977)) | (1 << (SqlParser.WEEKOFYEAR - 977)) | (1 << (SqlParser.WEIGHT_STRING - 977)) | (1 << (SqlParser.WITHIN - 977)) | (1 << (SqlParser.YEARWEEK - 977)) | (1 << (SqlParser.Y_FUNCTION - 977)) | (1 << (SqlParser.X_FUNCTION - 977)))) !== 0) || ((((_la - 1032)) & ~0x1f) == 0 && ((1 << (_la - 1032)) & ((1 << (SqlParser.CHARSET_REVERSE_QOUTE_STRING - 1032)) | (1 << (SqlParser.STRING_LITERAL - 1032)) | (1 << (SqlParser.ID - 1032)) | (1 << (SqlParser.REVERSE_QUOTE_ID - 1032)))) !== 0)) {
+ this.state = 1530;
+ localctx.index = this.uid();
+ }
+
+ this.state = 1533;
+ this.indexColumnNames();
+ this.state = 1534;
+ this.referenceDefinition();
+ break;
+
+ case 4:
+ localctx = new CheckTableConstraintContext(this, localctx);
+ this.enterOuterAlt(localctx, 4);
+ this.state = 1540;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.CONSTRAINT) {
+ this.state = 1536;
+ this.match(SqlParser.CONSTRAINT);
+ this.state = 1538;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (SqlParser.CURRENT - 32)) | (1 << (SqlParser.DATABASE - 32)) | (1 << (SqlParser.DIAGNOSTICS - 32)))) !== 0) || _la===SqlParser.LEFT || _la===SqlParser.NUMBER || _la===SqlParser.RIGHT || _la===SqlParser.STACKED || ((((_la - 199)) & ~0x1f) == 0 && ((1 << (_la - 199)) & ((1 << (SqlParser.DATE - 199)) | (1 << (SqlParser.TIME - 199)) | (1 << (SqlParser.TIMESTAMP - 199)) | (1 << (SqlParser.DATETIME - 199)) | (1 << (SqlParser.YEAR - 199)) | (1 << (SqlParser.TEXT - 199)) | (1 << (SqlParser.ENUM - 199)) | (1 << (SqlParser.SERIAL - 199)))) !== 0) || ((((_la - 233)) & ~0x1f) == 0 && ((1 << (_la - 233)) & ((1 << (SqlParser.JSON_VALID - 233)) | (1 << (SqlParser.JSON_SCHEMA_VALID - 233)) | (1 << (SqlParser.COUNT - 233)) | (1 << (SqlParser.POSITION - 233)))) !== 0) || ((((_la - 270)) & ~0x1f) == 0 && ((1 << (_la - 270)) & ((1 << (SqlParser.ACCOUNT - 270)) | (1 << (SqlParser.ACTION - 270)) | (1 << (SqlParser.AFTER - 270)) | (1 << (SqlParser.AGGREGATE - 270)) | (1 << (SqlParser.ALGORITHM - 270)) | (1 << (SqlParser.ANY - 270)) | (1 << (SqlParser.AT - 270)) | (1 << (SqlParser.AUTHORS - 270)) | (1 << (SqlParser.AUTOCOMMIT - 270)) | (1 << (SqlParser.AUTOEXTEND_SIZE - 270)) | (1 << (SqlParser.AUTO_INCREMENT - 270)) | (1 << (SqlParser.AVG_ROW_LENGTH - 270)) | (1 << (SqlParser.BEGIN - 270)) | (1 << (SqlParser.BINLOG - 270)) | (1 << (SqlParser.BIT - 270)) | (1 << (SqlParser.BLOCK - 270)) | (1 << (SqlParser.BOOL - 270)) | (1 << (SqlParser.BOOLEAN - 270)) | (1 << (SqlParser.BTREE - 270)) | (1 << (SqlParser.CACHE - 270)) | (1 << (SqlParser.CASCADED - 270)) | (1 << (SqlParser.CHAIN - 270)) | (1 << (SqlParser.CHANGED - 270)) | (1 << (SqlParser.CHANNEL - 270)) | (1 << (SqlParser.CHECKSUM - 270)) | (1 << (SqlParser.PAGE_CHECKSUM - 270)) | (1 << (SqlParser.CIPHER - 270)) | (1 << (SqlParser.CLASS_ORIGIN - 270)) | (1 << (SqlParser.CLIENT - 270)) | (1 << (SqlParser.CLOSE - 270)) | (1 << (SqlParser.COALESCE - 270)) | (1 << (SqlParser.CODE - 270)))) !== 0) || ((((_la - 302)) & ~0x1f) == 0 && ((1 << (_la - 302)) & ((1 << (SqlParser.COLUMNS - 302)) | (1 << (SqlParser.COLUMN_FORMAT - 302)) | (1 << (SqlParser.COLUMN_NAME - 302)) | (1 << (SqlParser.COMMENT - 302)) | (1 << (SqlParser.COMMIT - 302)) | (1 << (SqlParser.COMPACT - 302)) | (1 << (SqlParser.COMPLETION - 302)) | (1 << (SqlParser.COMPRESSED - 302)) | (1 << (SqlParser.COMPRESSION - 302)) | (1 << (SqlParser.CONCURRENT - 302)) | (1 << (SqlParser.CONNECTION - 302)) | (1 << (SqlParser.CONSISTENT - 302)) | (1 << (SqlParser.CONSTRAINT_CATALOG - 302)) | (1 << (SqlParser.CONSTRAINT_SCHEMA - 302)) | (1 << (SqlParser.CONSTRAINT_NAME - 302)) | (1 << (SqlParser.CONTAINS - 302)) | (1 << (SqlParser.CONTEXT - 302)) | (1 << (SqlParser.CONTRIBUTORS - 302)) | (1 << (SqlParser.COPY - 302)) | (1 << (SqlParser.CPU - 302)) | (1 << (SqlParser.CURSOR_NAME - 302)) | (1 << (SqlParser.DATA - 302)) | (1 << (SqlParser.DATAFILE - 302)) | (1 << (SqlParser.DEALLOCATE - 302)) | (1 << (SqlParser.DEFAULT_AUTH - 302)) | (1 << (SqlParser.DEFINER - 302)) | (1 << (SqlParser.DELAY_KEY_WRITE - 302)) | (1 << (SqlParser.DES_KEY_FILE - 302)) | (1 << (SqlParser.DIRECTORY - 302)) | (1 << (SqlParser.DISABLE - 302)) | (1 << (SqlParser.DISCARD - 302)) | (1 << (SqlParser.DISK - 302)))) !== 0) || ((((_la - 334)) & ~0x1f) == 0 && ((1 << (_la - 334)) & ((1 << (SqlParser.DO - 334)) | (1 << (SqlParser.DUMPFILE - 334)) | (1 << (SqlParser.DUPLICATE - 334)) | (1 << (SqlParser.DYNAMIC - 334)) | (1 << (SqlParser.ENABLE - 334)) | (1 << (SqlParser.ENCRYPTION - 334)) | (1 << (SqlParser.END - 334)) | (1 << (SqlParser.ENDS - 334)) | (1 << (SqlParser.ENGINE - 334)) | (1 << (SqlParser.ENGINES - 334)) | (1 << (SqlParser.ERROR - 334)) | (1 << (SqlParser.ERRORS - 334)) | (1 << (SqlParser.ESCAPE - 334)) | (1 << (SqlParser.EVEN - 334)) | (1 << (SqlParser.EVENT - 334)) | (1 << (SqlParser.EVENTS - 334)) | (1 << (SqlParser.EVERY - 334)) | (1 << (SqlParser.EXCHANGE - 334)) | (1 << (SqlParser.EXCLUSIVE - 334)) | (1 << (SqlParser.EXPIRE - 334)) | (1 << (SqlParser.EXPORT - 334)) | (1 << (SqlParser.EXTENDED - 334)) | (1 << (SqlParser.EXTENT_SIZE - 334)) | (1 << (SqlParser.FAST - 334)) | (1 << (SqlParser.FAULTS - 334)) | (1 << (SqlParser.FIELDS - 334)) | (1 << (SqlParser.FILE_BLOCK_SIZE - 334)) | (1 << (SqlParser.FILTER - 334)) | (1 << (SqlParser.FIRST - 334)) | (1 << (SqlParser.FIXED - 334)) | (1 << (SqlParser.FLUSH - 334)) | (1 << (SqlParser.FOLLOWS - 334)))) !== 0) || ((((_la - 366)) & ~0x1f) == 0 && ((1 << (_la - 366)) & ((1 << (SqlParser.FOUND - 366)) | (1 << (SqlParser.FULL - 366)) | (1 << (SqlParser.FUNCTION - 366)) | (1 << (SqlParser.GENERAL - 366)) | (1 << (SqlParser.GLOBAL - 366)) | (1 << (SqlParser.GRANTS - 366)) | (1 << (SqlParser.GROUP_REPLICATION - 366)) | (1 << (SqlParser.HANDLER - 366)) | (1 << (SqlParser.HASH - 366)) | (1 << (SqlParser.HELP - 366)) | (1 << (SqlParser.HOST - 366)) | (1 << (SqlParser.HOSTS - 366)) | (1 << (SqlParser.IDENTIFIED - 366)) | (1 << (SqlParser.IGNORE_SERVER_IDS - 366)) | (1 << (SqlParser.IMPORT - 366)) | (1 << (SqlParser.INDEXES - 366)) | (1 << (SqlParser.INITIAL_SIZE - 366)) | (1 << (SqlParser.INPLACE - 366)) | (1 << (SqlParser.INSERT_METHOD - 366)) | (1 << (SqlParser.INSTALL - 366)) | (1 << (SqlParser.INSTANCE - 366)) | (1 << (SqlParser.INVISIBLE - 366)) | (1 << (SqlParser.INVOKER - 366)) | (1 << (SqlParser.IO - 366)) | (1 << (SqlParser.IO_THREAD - 366)) | (1 << (SqlParser.IPC - 366)) | (1 << (SqlParser.ISOLATION - 366)) | (1 << (SqlParser.ISSUER - 366)) | (1 << (SqlParser.JSON - 366)) | (1 << (SqlParser.KEY_BLOCK_SIZE - 366)) | (1 << (SqlParser.LANGUAGE - 366)) | (1 << (SqlParser.LAST - 366)))) !== 0) || ((((_la - 398)) & ~0x1f) == 0 && ((1 << (_la - 398)) & ((1 << (SqlParser.LEAVES - 398)) | (1 << (SqlParser.LESS - 398)) | (1 << (SqlParser.LEVEL - 398)) | (1 << (SqlParser.LIST - 398)) | (1 << (SqlParser.LOCAL - 398)) | (1 << (SqlParser.LOGFILE - 398)) | (1 << (SqlParser.LOGS - 398)) | (1 << (SqlParser.MASTER - 398)) | (1 << (SqlParser.MASTER_AUTO_POSITION - 398)) | (1 << (SqlParser.MASTER_CONNECT_RETRY - 398)) | (1 << (SqlParser.MASTER_DELAY - 398)) | (1 << (SqlParser.MASTER_HEARTBEAT_PERIOD - 398)) | (1 << (SqlParser.MASTER_HOST - 398)) | (1 << (SqlParser.MASTER_LOG_FILE - 398)) | (1 << (SqlParser.MASTER_LOG_POS - 398)) | (1 << (SqlParser.MASTER_PASSWORD - 398)) | (1 << (SqlParser.MASTER_PORT - 398)) | (1 << (SqlParser.MASTER_RETRY_COUNT - 398)) | (1 << (SqlParser.MASTER_SSL - 398)) | (1 << (SqlParser.MASTER_SSL_CA - 398)) | (1 << (SqlParser.MASTER_SSL_CAPATH - 398)) | (1 << (SqlParser.MASTER_SSL_CERT - 398)) | (1 << (SqlParser.MASTER_SSL_CIPHER - 398)) | (1 << (SqlParser.MASTER_SSL_CRL - 398)) | (1 << (SqlParser.MASTER_SSL_CRLPATH - 398)) | (1 << (SqlParser.MASTER_SSL_KEY - 398)) | (1 << (SqlParser.MASTER_TLS_VERSION - 398)) | (1 << (SqlParser.MASTER_USER - 398)) | (1 << (SqlParser.MAX_CONNECTIONS_PER_HOUR - 398)) | (1 << (SqlParser.MAX_QUERIES_PER_HOUR - 398)) | (1 << (SqlParser.MAX_ROWS - 398)) | (1 << (SqlParser.MAX_SIZE - 398)))) !== 0) || ((((_la - 430)) & ~0x1f) == 0 && ((1 << (_la - 430)) & ((1 << (SqlParser.MAX_UPDATES_PER_HOUR - 430)) | (1 << (SqlParser.MAX_USER_CONNECTIONS - 430)) | (1 << (SqlParser.MEDIUM - 430)) | (1 << (SqlParser.MERGE - 430)) | (1 << (SqlParser.MESSAGE_TEXT - 430)) | (1 << (SqlParser.MID - 430)) | (1 << (SqlParser.MIGRATE - 430)) | (1 << (SqlParser.MIN_ROWS - 430)) | (1 << (SqlParser.MODE - 430)) | (1 << (SqlParser.MODIFY - 430)) | (1 << (SqlParser.MUTEX - 430)) | (1 << (SqlParser.MYSQL - 430)) | (1 << (SqlParser.MYSQL_ERRNO - 430)) | (1 << (SqlParser.NAME - 430)) | (1 << (SqlParser.NAMES - 430)) | (1 << (SqlParser.NCHAR - 430)) | (1 << (SqlParser.NEVER - 430)) | (1 << (SqlParser.NEXT - 430)) | (1 << (SqlParser.NO - 430)) | (1 << (SqlParser.NODEGROUP - 430)) | (1 << (SqlParser.NONE - 430)) | (1 << (SqlParser.OFFLINE - 430)) | (1 << (SqlParser.OFFSET - 430)) | (1 << (SqlParser.OJ - 430)) | (1 << (SqlParser.OLD_PASSWORD - 430)) | (1 << (SqlParser.ONE - 430)) | (1 << (SqlParser.ONLINE - 430)) | (1 << (SqlParser.ONLY - 430)) | (1 << (SqlParser.OPEN - 430)) | (1 << (SqlParser.OPTIMIZER_COSTS - 430)) | (1 << (SqlParser.OPTIONS - 430)) | (1 << (SqlParser.OWNER - 430)))) !== 0) || ((((_la - 462)) & ~0x1f) == 0 && ((1 << (_la - 462)) & ((1 << (SqlParser.PACK_KEYS - 462)) | (1 << (SqlParser.PAGE - 462)) | (1 << (SqlParser.PARSER - 462)) | (1 << (SqlParser.PARTIAL - 462)) | (1 << (SqlParser.PARTITIONING - 462)) | (1 << (SqlParser.PARTITIONS - 462)) | (1 << (SqlParser.PASSWORD - 462)) | (1 << (SqlParser.PHASE - 462)) | (1 << (SqlParser.PLUGIN - 462)) | (1 << (SqlParser.PLUGIN_DIR - 462)) | (1 << (SqlParser.PLUGINS - 462)) | (1 << (SqlParser.PORT - 462)) | (1 << (SqlParser.PRECEDES - 462)) | (1 << (SqlParser.PREPARE - 462)) | (1 << (SqlParser.PRESERVE - 462)) | (1 << (SqlParser.PREV - 462)) | (1 << (SqlParser.PROCESSLIST - 462)) | (1 << (SqlParser.PROFILE - 462)) | (1 << (SqlParser.PROFILES - 462)) | (1 << (SqlParser.PROXY - 462)) | (1 << (SqlParser.QUERY - 462)) | (1 << (SqlParser.QUICK - 462)) | (1 << (SqlParser.REBUILD - 462)) | (1 << (SqlParser.RECOVER - 462)) | (1 << (SqlParser.REDO_BUFFER_SIZE - 462)) | (1 << (SqlParser.REDUNDANT - 462)) | (1 << (SqlParser.RELAY - 462)) | (1 << (SqlParser.RELAY_LOG_FILE - 462)) | (1 << (SqlParser.RELAY_LOG_POS - 462)) | (1 << (SqlParser.RELAYLOG - 462)) | (1 << (SqlParser.REMOVE - 462)) | (1 << (SqlParser.REORGANIZE - 462)))) !== 0) || ((((_la - 494)) & ~0x1f) == 0 && ((1 << (_la - 494)) & ((1 << (SqlParser.REPAIR - 494)) | (1 << (SqlParser.REPLICATE_DO_DB - 494)) | (1 << (SqlParser.REPLICATE_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_DB - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATE_REWRITE_DB - 494)) | (1 << (SqlParser.REPLICATE_WILD_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_WILD_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATION - 494)) | (1 << (SqlParser.RESET - 494)) | (1 << (SqlParser.RESUME - 494)) | (1 << (SqlParser.RETURNED_SQLSTATE - 494)) | (1 << (SqlParser.RETURNS - 494)) | (1 << (SqlParser.ROLE - 494)) | (1 << (SqlParser.ROLLBACK - 494)) | (1 << (SqlParser.ROLLUP - 494)) | (1 << (SqlParser.ROTATE - 494)) | (1 << (SqlParser.ROW - 494)) | (1 << (SqlParser.ROWS - 494)) | (1 << (SqlParser.ROW_FORMAT - 494)) | (1 << (SqlParser.SAVEPOINT - 494)) | (1 << (SqlParser.SCHEDULE - 494)) | (1 << (SqlParser.SECURITY - 494)) | (1 << (SqlParser.SERVER - 494)) | (1 << (SqlParser.SESSION - 494)) | (1 << (SqlParser.SHARE - 494)) | (1 << (SqlParser.SHARED - 494)) | (1 << (SqlParser.SIGNED - 494)) | (1 << (SqlParser.SIMPLE - 494)) | (1 << (SqlParser.SLAVE - 494)) | (1 << (SqlParser.SLOW - 494)) | (1 << (SqlParser.SNAPSHOT - 494)))) !== 0) || ((((_la - 526)) & ~0x1f) == 0 && ((1 << (_la - 526)) & ((1 << (SqlParser.SOCKET - 526)) | (1 << (SqlParser.SOME - 526)) | (1 << (SqlParser.SONAME - 526)) | (1 << (SqlParser.SOUNDS - 526)) | (1 << (SqlParser.SOURCE - 526)) | (1 << (SqlParser.SQL_AFTER_GTIDS - 526)) | (1 << (SqlParser.SQL_AFTER_MTS_GAPS - 526)) | (1 << (SqlParser.SQL_BEFORE_GTIDS - 526)) | (1 << (SqlParser.SQL_BUFFER_RESULT - 526)) | (1 << (SqlParser.SQL_CACHE - 526)) | (1 << (SqlParser.SQL_NO_CACHE - 526)) | (1 << (SqlParser.SQL_THREAD - 526)) | (1 << (SqlParser.START - 526)) | (1 << (SqlParser.STARTS - 526)) | (1 << (SqlParser.STATS_AUTO_RECALC - 526)) | (1 << (SqlParser.STATS_PERSISTENT - 526)) | (1 << (SqlParser.STATS_SAMPLE_PAGES - 526)) | (1 << (SqlParser.STATUS - 526)) | (1 << (SqlParser.STOP - 526)) | (1 << (SqlParser.STORAGE - 526)) | (1 << (SqlParser.STRING - 526)) | (1 << (SqlParser.SUBCLASS_ORIGIN - 526)) | (1 << (SqlParser.SUBJECT - 526)) | (1 << (SqlParser.SUBPARTITION - 526)) | (1 << (SqlParser.SUBPARTITIONS - 526)) | (1 << (SqlParser.SUSPEND - 526)) | (1 << (SqlParser.SWAPS - 526)) | (1 << (SqlParser.SWITCHES - 526)) | (1 << (SqlParser.TABLE_NAME - 526)) | (1 << (SqlParser.TABLESPACE - 526)) | (1 << (SqlParser.TEMPORARY - 526)))) !== 0) || ((((_la - 558)) & ~0x1f) == 0 && ((1 << (_la - 558)) & ((1 << (SqlParser.TEMPTABLE - 558)) | (1 << (SqlParser.THAN - 558)) | (1 << (SqlParser.TRADITIONAL - 558)) | (1 << (SqlParser.TRANSACTION - 558)) | (1 << (SqlParser.TRANSACTIONAL - 558)) | (1 << (SqlParser.TRIGGERS - 558)) | (1 << (SqlParser.TRUNCATE - 558)) | (1 << (SqlParser.UNDEFINED - 558)) | (1 << (SqlParser.UNDOFILE - 558)) | (1 << (SqlParser.UNDO_BUFFER_SIZE - 558)) | (1 << (SqlParser.UNINSTALL - 558)) | (1 << (SqlParser.UNKNOWN - 558)) | (1 << (SqlParser.UNTIL - 558)) | (1 << (SqlParser.UPGRADE - 558)) | (1 << (SqlParser.USER - 558)) | (1 << (SqlParser.USE_FRM - 558)) | (1 << (SqlParser.USER_RESOURCES - 558)) | (1 << (SqlParser.VALIDATION - 558)) | (1 << (SqlParser.VALUE - 558)) | (1 << (SqlParser.VARIABLES - 558)) | (1 << (SqlParser.VIEW - 558)) | (1 << (SqlParser.VISIBLE - 558)) | (1 << (SqlParser.WAIT - 558)) | (1 << (SqlParser.WARNINGS - 558)) | (1 << (SqlParser.WITHOUT - 558)) | (1 << (SqlParser.WORK - 558)) | (1 << (SqlParser.WRAPPER - 558)) | (1 << (SqlParser.X509 - 558)) | (1 << (SqlParser.XA - 558)) | (1 << (SqlParser.XML - 558)))) !== 0) || ((((_la - 593)) & ~0x1f) == 0 && ((1 << (_la - 593)) & ((1 << (SqlParser.INTERNAL - 593)) | (1 << (SqlParser.QUARTER - 593)) | (1 << (SqlParser.MONTH - 593)) | (1 << (SqlParser.DAY - 593)) | (1 << (SqlParser.HOUR - 593)) | (1 << (SqlParser.MINUTE - 593)) | (1 << (SqlParser.WEEK - 593)) | (1 << (SqlParser.SECOND - 593)) | (1 << (SqlParser.MICROSECOND - 593)) | (1 << (SqlParser.TABLES - 593)) | (1 << (SqlParser.ROUTINE - 593)) | (1 << (SqlParser.EXECUTE - 593)) | (1 << (SqlParser.FILE - 593)) | (1 << (SqlParser.PROCESS - 593)) | (1 << (SqlParser.RELOAD - 593)) | (1 << (SqlParser.SHUTDOWN - 593)) | (1 << (SqlParser.SUPER - 593)) | (1 << (SqlParser.PRIVILEGES - 593)) | (1 << (SqlParser.AUDIT_ADMIN - 593)) | (1 << (SqlParser.BACKUP_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ENCRYPTION_ADMIN - 593)) | (1 << (SqlParser.CLONE_ADMIN - 593)) | (1 << (SqlParser.CONNECTION_ADMIN - 593)) | (1 << (SqlParser.ENCRYPTION_KEY_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_USER - 593)) | (1 << (SqlParser.GROUP_REPLICATION_ADMIN - 593)) | (1 << (SqlParser.INNODB_REDO_LOG_ARCHIVE - 593)) | (1 << (SqlParser.NDB_STORED_USER - 593)) | (1 << (SqlParser.PERSIST_RO_VARIABLES_ADMIN - 593)))) !== 0) || ((((_la - 625)) & ~0x1f) == 0 && ((1 << (_la - 625)) & ((1 << (SqlParser.REPLICATION_APPLIER - 625)) | (1 << (SqlParser.REPLICATION_SLAVE_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_USER - 625)) | (1 << (SqlParser.ROLE_ADMIN - 625)) | (1 << (SqlParser.SESSION_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.SET_USER_ID - 625)) | (1 << (SqlParser.SHOW_ROUTINE - 625)) | (1 << (SqlParser.SYSTEM_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.TABLE_ENCRYPTION_ADMIN - 625)) | (1 << (SqlParser.VERSION_TOKEN_ADMIN - 625)) | (1 << (SqlParser.XA_RECOVER_ADMIN - 625)) | (1 << (SqlParser.ARMSCII8 - 625)) | (1 << (SqlParser.ASCII - 625)) | (1 << (SqlParser.BIG5 - 625)) | (1 << (SqlParser.CP1250 - 625)) | (1 << (SqlParser.CP1251 - 625)) | (1 << (SqlParser.CP1256 - 625)) | (1 << (SqlParser.CP1257 - 625)) | (1 << (SqlParser.CP850 - 625)) | (1 << (SqlParser.CP852 - 625)) | (1 << (SqlParser.CP866 - 625)) | (1 << (SqlParser.CP932 - 625)) | (1 << (SqlParser.DEC8 - 625)) | (1 << (SqlParser.EUCJPMS - 625)) | (1 << (SqlParser.EUCKR - 625)) | (1 << (SqlParser.GB2312 - 625)) | (1 << (SqlParser.GBK - 625)) | (1 << (SqlParser.GEOSTD8 - 625)) | (1 << (SqlParser.GREEK - 625)) | (1 << (SqlParser.HEBREW - 625)) | (1 << (SqlParser.HP8 - 625)))) !== 0) || ((((_la - 657)) & ~0x1f) == 0 && ((1 << (_la - 657)) & ((1 << (SqlParser.KEYBCS2 - 657)) | (1 << (SqlParser.KOI8R - 657)) | (1 << (SqlParser.KOI8U - 657)) | (1 << (SqlParser.LATIN1 - 657)) | (1 << (SqlParser.LATIN2 - 657)) | (1 << (SqlParser.LATIN5 - 657)) | (1 << (SqlParser.LATIN7 - 657)) | (1 << (SqlParser.MACCE - 657)) | (1 << (SqlParser.MACROMAN - 657)) | (1 << (SqlParser.SJIS - 657)) | (1 << (SqlParser.SWE7 - 657)) | (1 << (SqlParser.TIS620 - 657)) | (1 << (SqlParser.UCS2 - 657)) | (1 << (SqlParser.UJIS - 657)) | (1 << (SqlParser.UTF16 - 657)) | (1 << (SqlParser.UTF16LE - 657)) | (1 << (SqlParser.UTF32 - 657)) | (1 << (SqlParser.UTF8 - 657)) | (1 << (SqlParser.UTF8MB3 - 657)) | (1 << (SqlParser.UTF8MB4 - 657)) | (1 << (SqlParser.ARCHIVE - 657)) | (1 << (SqlParser.BLACKHOLE - 657)) | (1 << (SqlParser.CSV - 657)) | (1 << (SqlParser.FEDERATED - 657)) | (1 << (SqlParser.INNODB - 657)) | (1 << (SqlParser.MEMORY - 657)) | (1 << (SqlParser.MRG_MYISAM - 657)) | (1 << (SqlParser.MYISAM - 657)) | (1 << (SqlParser.NDB - 657)) | (1 << (SqlParser.NDBCLUSTER - 657)) | (1 << (SqlParser.PERFORMANCE_SCHEMA - 657)) | (1 << (SqlParser.TOKUDB - 657)))) !== 0) || ((((_la - 689)) & ~0x1f) == 0 && ((1 << (_la - 689)) & ((1 << (SqlParser.REPEATABLE - 689)) | (1 << (SqlParser.COMMITTED - 689)) | (1 << (SqlParser.UNCOMMITTED - 689)) | (1 << (SqlParser.SERIALIZABLE - 689)) | (1 << (SqlParser.GEOMETRYCOLLECTION - 689)) | (1 << (SqlParser.LINESTRING - 689)) | (1 << (SqlParser.MULTILINESTRING - 689)) | (1 << (SqlParser.MULTIPOINT - 689)) | (1 << (SqlParser.MULTIPOLYGON - 689)) | (1 << (SqlParser.POINT - 689)) | (1 << (SqlParser.POLYGON - 689)) | (1 << (SqlParser.ABS - 689)) | (1 << (SqlParser.ACOS - 689)) | (1 << (SqlParser.ADDDATE - 689)) | (1 << (SqlParser.ADDTIME - 689)) | (1 << (SqlParser.AES_DECRYPT - 689)) | (1 << (SqlParser.AES_ENCRYPT - 689)) | (1 << (SqlParser.AREA - 689)) | (1 << (SqlParser.ASBINARY - 689)) | (1 << (SqlParser.ASIN - 689)) | (1 << (SqlParser.ASTEXT - 689)) | (1 << (SqlParser.ASWKB - 689)) | (1 << (SqlParser.ASWKT - 689)) | (1 << (SqlParser.ASYMMETRIC_DECRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_DERIVE - 689)) | (1 << (SqlParser.ASYMMETRIC_ENCRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_SIGN - 689)) | (1 << (SqlParser.ASYMMETRIC_VERIFY - 689)) | (1 << (SqlParser.ATAN - 689)) | (1 << (SqlParser.ATAN2 - 689)))) !== 0) || ((((_la - 721)) & ~0x1f) == 0 && ((1 << (_la - 721)) & ((1 << (SqlParser.BENCHMARK - 721)) | (1 << (SqlParser.BIN - 721)) | (1 << (SqlParser.BIT_COUNT - 721)) | (1 << (SqlParser.BIT_LENGTH - 721)) | (1 << (SqlParser.BUFFER - 721)) | (1 << (SqlParser.CATALOG_NAME - 721)) | (1 << (SqlParser.CEIL - 721)) | (1 << (SqlParser.CEILING - 721)) | (1 << (SqlParser.CENTROID - 721)) | (1 << (SqlParser.CHARACTER_LENGTH - 721)) | (1 << (SqlParser.CHARSET - 721)) | (1 << (SqlParser.CHAR_LENGTH - 721)) | (1 << (SqlParser.COERCIBILITY - 721)) | (1 << (SqlParser.COLLATION - 721)) | (1 << (SqlParser.COMPRESS - 721)) | (1 << (SqlParser.CONCAT - 721)) | (1 << (SqlParser.CONCAT_WS - 721)) | (1 << (SqlParser.CONNECTION_ID - 721)) | (1 << (SqlParser.CONV - 721)) | (1 << (SqlParser.CONVERT_TZ - 721)) | (1 << (SqlParser.COS - 721)) | (1 << (SqlParser.COT - 721)) | (1 << (SqlParser.CRC32 - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PRIV_KEY - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PUB_KEY - 721)) | (1 << (SqlParser.CREATE_DH_PARAMETERS - 721)) | (1 << (SqlParser.CREATE_DIGEST - 721)) | (1 << (SqlParser.CROSSES - 721)) | (1 << (SqlParser.DATEDIFF - 721)) | (1 << (SqlParser.DATE_FORMAT - 721)) | (1 << (SqlParser.DAYNAME - 721)) | (1 << (SqlParser.DAYOFMONTH - 721)))) !== 0) || ((((_la - 753)) & ~0x1f) == 0 && ((1 << (_la - 753)) & ((1 << (SqlParser.DAYOFWEEK - 753)) | (1 << (SqlParser.DAYOFYEAR - 753)) | (1 << (SqlParser.DECODE - 753)) | (1 << (SqlParser.DEGREES - 753)) | (1 << (SqlParser.DES_DECRYPT - 753)) | (1 << (SqlParser.DES_ENCRYPT - 753)) | (1 << (SqlParser.DIMENSION - 753)) | (1 << (SqlParser.DISJOINT - 753)) | (1 << (SqlParser.ELT - 753)) | (1 << (SqlParser.ENCODE - 753)) | (1 << (SqlParser.ENCRYPT - 753)) | (1 << (SqlParser.ENDPOINT - 753)) | (1 << (SqlParser.ENVELOPE - 753)) | (1 << (SqlParser.EQUALS - 753)) | (1 << (SqlParser.EXP - 753)) | (1 << (SqlParser.EXPORT_SET - 753)) | (1 << (SqlParser.EXTERIORRING - 753)) | (1 << (SqlParser.EXTRACTVALUE - 753)) | (1 << (SqlParser.FIELD - 753)) | (1 << (SqlParser.FIND_IN_SET - 753)) | (1 << (SqlParser.FLOOR - 753)) | (1 << (SqlParser.FORMAT - 753)) | (1 << (SqlParser.FOUND_ROWS - 753)) | (1 << (SqlParser.FROM_BASE64 - 753)) | (1 << (SqlParser.FROM_DAYS - 753)) | (1 << (SqlParser.FROM_UNIXTIME - 753)) | (1 << (SqlParser.GEOMCOLLFROMTEXT - 753)) | (1 << (SqlParser.GEOMCOLLFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYFROMWKB - 753)))) !== 0) || ((((_la - 785)) & ~0x1f) == 0 && ((1 << (_la - 785)) & ((1 << (SqlParser.GEOMETRYN - 785)) | (1 << (SqlParser.GEOMETRYTYPE - 785)) | (1 << (SqlParser.GEOMFROMTEXT - 785)) | (1 << (SqlParser.GEOMFROMWKB - 785)) | (1 << (SqlParser.GET_FORMAT - 785)) | (1 << (SqlParser.GET_LOCK - 785)) | (1 << (SqlParser.GLENGTH - 785)) | (1 << (SqlParser.GREATEST - 785)) | (1 << (SqlParser.GTID_SUBSET - 785)) | (1 << (SqlParser.GTID_SUBTRACT - 785)) | (1 << (SqlParser.HEX - 785)) | (1 << (SqlParser.IFNULL - 785)) | (1 << (SqlParser.INET6_ATON - 785)) | (1 << (SqlParser.INET6_NTOA - 785)) | (1 << (SqlParser.INET_ATON - 785)) | (1 << (SqlParser.INET_NTOA - 785)) | (1 << (SqlParser.INSTR - 785)) | (1 << (SqlParser.INTERIORRINGN - 785)) | (1 << (SqlParser.INTERSECTS - 785)) | (1 << (SqlParser.ISCLOSED - 785)) | (1 << (SqlParser.ISEMPTY - 785)) | (1 << (SqlParser.ISNULL - 785)) | (1 << (SqlParser.ISSIMPLE - 785)) | (1 << (SqlParser.IS_FREE_LOCK - 785)) | (1 << (SqlParser.IS_IPV4 - 785)) | (1 << (SqlParser.IS_IPV4_COMPAT - 785)) | (1 << (SqlParser.IS_IPV4_MAPPED - 785)) | (1 << (SqlParser.IS_IPV6 - 785)) | (1 << (SqlParser.IS_USED_LOCK - 785)) | (1 << (SqlParser.LAST_INSERT_ID - 785)) | (1 << (SqlParser.LCASE - 785)) | (1 << (SqlParser.LEAST - 785)))) !== 0) || ((((_la - 817)) & ~0x1f) == 0 && ((1 << (_la - 817)) & ((1 << (SqlParser.LENGTH - 817)) | (1 << (SqlParser.LINEFROMTEXT - 817)) | (1 << (SqlParser.LINEFROMWKB - 817)) | (1 << (SqlParser.LINESTRINGFROMTEXT - 817)) | (1 << (SqlParser.LINESTRINGFROMWKB - 817)) | (1 << (SqlParser.LN - 817)) | (1 << (SqlParser.LOAD_FILE - 817)) | (1 << (SqlParser.LOCATE - 817)) | (1 << (SqlParser.LOG - 817)) | (1 << (SqlParser.LOG10 - 817)) | (1 << (SqlParser.LOG2 - 817)) | (1 << (SqlParser.LOWER - 817)) | (1 << (SqlParser.LPAD - 817)) | (1 << (SqlParser.LTRIM - 817)) | (1 << (SqlParser.MAKEDATE - 817)) | (1 << (SqlParser.MAKETIME - 817)) | (1 << (SqlParser.MAKE_SET - 817)) | (1 << (SqlParser.MASTER_POS_WAIT - 817)) | (1 << (SqlParser.MBRCONTAINS - 817)) | (1 << (SqlParser.MBRDISJOINT - 817)) | (1 << (SqlParser.MBREQUAL - 817)) | (1 << (SqlParser.MBRINTERSECTS - 817)) | (1 << (SqlParser.MBROVERLAPS - 817)) | (1 << (SqlParser.MBRTOUCHES - 817)) | (1 << (SqlParser.MBRWITHIN - 817)) | (1 << (SqlParser.MD5 - 817)) | (1 << (SqlParser.MLINEFROMTEXT - 817)) | (1 << (SqlParser.MLINEFROMWKB - 817)) | (1 << (SqlParser.MONTHNAME - 817)) | (1 << (SqlParser.MPOINTFROMTEXT - 817)) | (1 << (SqlParser.MPOINTFROMWKB - 817)) | (1 << (SqlParser.MPOLYFROMTEXT - 817)))) !== 0) || ((((_la - 849)) & ~0x1f) == 0 && ((1 << (_la - 849)) & ((1 << (SqlParser.MPOLYFROMWKB - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMTEXT - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMWKB - 849)) | (1 << (SqlParser.MULTIPOINTFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOINTFROMWKB - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMWKB - 849)) | (1 << (SqlParser.NAME_CONST - 849)) | (1 << (SqlParser.NULLIF - 849)) | (1 << (SqlParser.NUMGEOMETRIES - 849)) | (1 << (SqlParser.NUMINTERIORRINGS - 849)) | (1 << (SqlParser.NUMPOINTS - 849)) | (1 << (SqlParser.OCT - 849)) | (1 << (SqlParser.OCTET_LENGTH - 849)) | (1 << (SqlParser.ORD - 849)) | (1 << (SqlParser.OVERLAPS - 849)) | (1 << (SqlParser.PERIOD_ADD - 849)) | (1 << (SqlParser.PERIOD_DIFF - 849)) | (1 << (SqlParser.PI - 849)) | (1 << (SqlParser.POINTFROMTEXT - 849)) | (1 << (SqlParser.POINTFROMWKB - 849)) | (1 << (SqlParser.POINTN - 849)) | (1 << (SqlParser.POLYFROMTEXT - 849)) | (1 << (SqlParser.POLYFROMWKB - 849)) | (1 << (SqlParser.POLYGONFROMTEXT - 849)) | (1 << (SqlParser.POLYGONFROMWKB - 849)) | (1 << (SqlParser.POW - 849)) | (1 << (SqlParser.POWER - 849)) | (1 << (SqlParser.QUOTE - 849)) | (1 << (SqlParser.RADIANS - 849)) | (1 << (SqlParser.RAND - 849)) | (1 << (SqlParser.RANDOM_BYTES - 849)))) !== 0) || ((((_la - 881)) & ~0x1f) == 0 && ((1 << (_la - 881)) & ((1 << (SqlParser.RELEASE_LOCK - 881)) | (1 << (SqlParser.REVERSE - 881)) | (1 << (SqlParser.ROUND - 881)) | (1 << (SqlParser.ROW_COUNT - 881)) | (1 << (SqlParser.RPAD - 881)) | (1 << (SqlParser.RTRIM - 881)) | (1 << (SqlParser.SEC_TO_TIME - 881)) | (1 << (SqlParser.SESSION_USER - 881)) | (1 << (SqlParser.SHA - 881)) | (1 << (SqlParser.SHA1 - 881)) | (1 << (SqlParser.SHA2 - 881)) | (1 << (SqlParser.SCHEMA_NAME - 881)) | (1 << (SqlParser.SIGN - 881)) | (1 << (SqlParser.SIN - 881)) | (1 << (SqlParser.SLEEP - 881)) | (1 << (SqlParser.SOUNDEX - 881)) | (1 << (SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS - 881)) | (1 << (SqlParser.SQRT - 881)) | (1 << (SqlParser.SRID - 881)) | (1 << (SqlParser.STARTPOINT - 881)) | (1 << (SqlParser.STRCMP - 881)) | (1 << (SqlParser.STR_TO_DATE - 881)) | (1 << (SqlParser.ST_AREA - 881)) | (1 << (SqlParser.ST_ASBINARY - 881)) | (1 << (SqlParser.ST_ASTEXT - 881)) | (1 << (SqlParser.ST_ASWKB - 881)) | (1 << (SqlParser.ST_ASWKT - 881)) | (1 << (SqlParser.ST_BUFFER - 881)) | (1 << (SqlParser.ST_CENTROID - 881)) | (1 << (SqlParser.ST_CONTAINS - 881)) | (1 << (SqlParser.ST_CROSSES - 881)) | (1 << (SqlParser.ST_DIFFERENCE - 881)))) !== 0) || ((((_la - 913)) & ~0x1f) == 0 && ((1 << (_la - 913)) & ((1 << (SqlParser.ST_DIMENSION - 913)) | (1 << (SqlParser.ST_DISJOINT - 913)) | (1 << (SqlParser.ST_DISTANCE - 913)) | (1 << (SqlParser.ST_ENDPOINT - 913)) | (1 << (SqlParser.ST_ENVELOPE - 913)) | (1 << (SqlParser.ST_EQUALS - 913)) | (1 << (SqlParser.ST_EXTERIORRING - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYN - 913)) | (1 << (SqlParser.ST_GEOMETRYTYPE - 913)) | (1 << (SqlParser.ST_GEOMFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMFROMWKB - 913)) | (1 << (SqlParser.ST_INTERIORRINGN - 913)) | (1 << (SqlParser.ST_INTERSECTION - 913)) | (1 << (SqlParser.ST_INTERSECTS - 913)) | (1 << (SqlParser.ST_ISCLOSED - 913)) | (1 << (SqlParser.ST_ISEMPTY - 913)) | (1 << (SqlParser.ST_ISSIMPLE - 913)) | (1 << (SqlParser.ST_LINEFROMTEXT - 913)) | (1 << (SqlParser.ST_LINEFROMWKB - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMTEXT - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMWKB - 913)) | (1 << (SqlParser.ST_NUMGEOMETRIES - 913)) | (1 << (SqlParser.ST_NUMINTERIORRING - 913)) | (1 << (SqlParser.ST_NUMINTERIORRINGS - 913)) | (1 << (SqlParser.ST_NUMPOINTS - 913)))) !== 0) || ((((_la - 945)) & ~0x1f) == 0 && ((1 << (_la - 945)) & ((1 << (SqlParser.ST_OVERLAPS - 945)) | (1 << (SqlParser.ST_POINTFROMTEXT - 945)) | (1 << (SqlParser.ST_POINTFROMWKB - 945)) | (1 << (SqlParser.ST_POINTN - 945)) | (1 << (SqlParser.ST_POLYFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYFROMWKB - 945)) | (1 << (SqlParser.ST_POLYGONFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYGONFROMWKB - 945)) | (1 << (SqlParser.ST_SRID - 945)) | (1 << (SqlParser.ST_STARTPOINT - 945)) | (1 << (SqlParser.ST_SYMDIFFERENCE - 945)) | (1 << (SqlParser.ST_TOUCHES - 945)) | (1 << (SqlParser.ST_UNION - 945)) | (1 << (SqlParser.ST_WITHIN - 945)) | (1 << (SqlParser.ST_X - 945)) | (1 << (SqlParser.ST_Y - 945)) | (1 << (SqlParser.SUBDATE - 945)) | (1 << (SqlParser.SUBSTRING_INDEX - 945)) | (1 << (SqlParser.SUBTIME - 945)) | (1 << (SqlParser.SYSTEM_USER - 945)) | (1 << (SqlParser.TAN - 945)) | (1 << (SqlParser.TIMEDIFF - 945)) | (1 << (SqlParser.TIMESTAMPADD - 945)) | (1 << (SqlParser.TIMESTAMPDIFF - 945)) | (1 << (SqlParser.TIME_FORMAT - 945)) | (1 << (SqlParser.TIME_TO_SEC - 945)) | (1 << (SqlParser.TOUCHES - 945)) | (1 << (SqlParser.TO_BASE64 - 945)) | (1 << (SqlParser.TO_DAYS - 945)) | (1 << (SqlParser.TO_SECONDS - 945)) | (1 << (SqlParser.UCASE - 945)) | (1 << (SqlParser.UNCOMPRESS - 945)))) !== 0) || ((((_la - 977)) & ~0x1f) == 0 && ((1 << (_la - 977)) & ((1 << (SqlParser.UNCOMPRESSED_LENGTH - 977)) | (1 << (SqlParser.UNHEX - 977)) | (1 << (SqlParser.UNIX_TIMESTAMP - 977)) | (1 << (SqlParser.UPDATEXML - 977)) | (1 << (SqlParser.UPPER - 977)) | (1 << (SqlParser.UUID - 977)) | (1 << (SqlParser.UUID_SHORT - 977)) | (1 << (SqlParser.VALIDATE_PASSWORD_STRENGTH - 977)) | (1 << (SqlParser.VERSION - 977)) | (1 << (SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS - 977)) | (1 << (SqlParser.WEEKDAY - 977)) | (1 << (SqlParser.WEEKOFYEAR - 977)) | (1 << (SqlParser.WEIGHT_STRING - 977)) | (1 << (SqlParser.WITHIN - 977)) | (1 << (SqlParser.YEARWEEK - 977)) | (1 << (SqlParser.Y_FUNCTION - 977)) | (1 << (SqlParser.X_FUNCTION - 977)))) !== 0) || ((((_la - 1032)) & ~0x1f) == 0 && ((1 << (_la - 1032)) & ((1 << (SqlParser.CHARSET_REVERSE_QOUTE_STRING - 1032)) | (1 << (SqlParser.STRING_LITERAL - 1032)) | (1 << (SqlParser.ID - 1032)) | (1 << (SqlParser.REVERSE_QUOTE_ID - 1032)))) !== 0)) {
+ this.state = 1537;
+ localctx.name = this.uid();
+ }
+
+ }
+
+ this.state = 1542;
+ this.match(SqlParser.CHECK);
+ this.state = 1543;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 1544;
+ this.expression(0);
+ this.state = 1545;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function ReferenceDefinitionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_referenceDefinition;
+ this.matchType = null; // Token
+ return this;
+}
+
+ReferenceDefinitionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+ReferenceDefinitionContext.prototype.constructor = ReferenceDefinitionContext;
+
+ReferenceDefinitionContext.prototype.REFERENCES = function() {
+ return this.getToken(SqlParser.REFERENCES, 0);
+};
+
+ReferenceDefinitionContext.prototype.tableName = function() {
+ return this.getTypedRuleContext(TableNameContext,0);
+};
+
+ReferenceDefinitionContext.prototype.indexColumnNames = function() {
+ return this.getTypedRuleContext(IndexColumnNamesContext,0);
+};
+
+ReferenceDefinitionContext.prototype.MATCH = function() {
+ return this.getToken(SqlParser.MATCH, 0);
+};
+
+ReferenceDefinitionContext.prototype.referenceAction = function() {
+ return this.getTypedRuleContext(ReferenceActionContext,0);
+};
+
+ReferenceDefinitionContext.prototype.FULL = function() {
+ return this.getToken(SqlParser.FULL, 0);
+};
+
+ReferenceDefinitionContext.prototype.PARTIAL = function() {
+ return this.getToken(SqlParser.PARTIAL, 0);
+};
+
+ReferenceDefinitionContext.prototype.SIMPLE = function() {
+ return this.getToken(SqlParser.SIMPLE, 0);
+};
+
+ReferenceDefinitionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterReferenceDefinition(this);
+ }
+};
+
+ReferenceDefinitionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitReferenceDefinition(this);
+ }
+};
+
+ReferenceDefinitionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitReferenceDefinition(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.ReferenceDefinitionContext = ReferenceDefinitionContext;
+
+SqlParser.prototype.referenceDefinition = function() {
+
+ var localctx = new ReferenceDefinitionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 86, SqlParser.RULE_referenceDefinition);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1549;
+ this.match(SqlParser.REFERENCES);
+ this.state = 1550;
+ this.tableName();
+ this.state = 1552;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,156,this._ctx);
+ if(la_===1) {
+ this.state = 1551;
+ this.indexColumnNames();
+
+ }
+ this.state = 1556;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.MATCH) {
+ this.state = 1554;
+ this.match(SqlParser.MATCH);
+ this.state = 1555;
+ localctx.matchType = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.FULL || _la===SqlParser.PARTIAL || _la===SqlParser.SIMPLE)) {
+ localctx.matchType = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 1559;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,158,this._ctx);
+ if(la_===1) {
+ this.state = 1558;
+ this.referenceAction();
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function ReferenceActionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_referenceAction;
+ this.onDelete = null; // ReferenceControlTypeContext
+ this.onUpdate = null; // ReferenceControlTypeContext
+ return this;
+}
+
+ReferenceActionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+ReferenceActionContext.prototype.constructor = ReferenceActionContext;
+
+ReferenceActionContext.prototype.ON = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.ON);
+ } else {
+ return this.getToken(SqlParser.ON, i);
+ }
+};
+
+
+ReferenceActionContext.prototype.DELETE = function() {
+ return this.getToken(SqlParser.DELETE, 0);
+};
+
+ReferenceActionContext.prototype.referenceControlType = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ReferenceControlTypeContext);
+ } else {
+ return this.getTypedRuleContext(ReferenceControlTypeContext,i);
+ }
+};
+
+ReferenceActionContext.prototype.UPDATE = function() {
+ return this.getToken(SqlParser.UPDATE, 0);
+};
+
+ReferenceActionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterReferenceAction(this);
+ }
+};
+
+ReferenceActionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitReferenceAction(this);
+ }
+};
+
+ReferenceActionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitReferenceAction(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.ReferenceActionContext = ReferenceActionContext;
+
+SqlParser.prototype.referenceAction = function() {
+
+ var localctx = new ReferenceActionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 88, SqlParser.RULE_referenceAction);
+ try {
+ this.state = 1577;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,161,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1561;
+ this.match(SqlParser.ON);
+ this.state = 1562;
+ this.match(SqlParser.DELETE);
+ this.state = 1563;
+ localctx.onDelete = this.referenceControlType();
+ this.state = 1567;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,159,this._ctx);
+ if(la_===1) {
+ this.state = 1564;
+ this.match(SqlParser.ON);
+ this.state = 1565;
+ this.match(SqlParser.UPDATE);
+ this.state = 1566;
+ localctx.onUpdate = this.referenceControlType();
+
+ }
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 1569;
+ this.match(SqlParser.ON);
+ this.state = 1570;
+ this.match(SqlParser.UPDATE);
+ this.state = 1571;
+ localctx.onUpdate = this.referenceControlType();
+ this.state = 1575;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,160,this._ctx);
+ if(la_===1) {
+ this.state = 1572;
+ this.match(SqlParser.ON);
+ this.state = 1573;
+ this.match(SqlParser.DELETE);
+ this.state = 1574;
+ localctx.onDelete = this.referenceControlType();
+
+ }
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function ReferenceControlTypeContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_referenceControlType;
+ return this;
+}
+
+ReferenceControlTypeContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+ReferenceControlTypeContext.prototype.constructor = ReferenceControlTypeContext;
+
+ReferenceControlTypeContext.prototype.RESTRICT = function() {
+ return this.getToken(SqlParser.RESTRICT, 0);
+};
+
+ReferenceControlTypeContext.prototype.CASCADE = function() {
+ return this.getToken(SqlParser.CASCADE, 0);
+};
+
+ReferenceControlTypeContext.prototype.SET = function() {
+ return this.getToken(SqlParser.SET, 0);
+};
+
+ReferenceControlTypeContext.prototype.NULL_LITERAL = function() {
+ return this.getToken(SqlParser.NULL_LITERAL, 0);
+};
+
+ReferenceControlTypeContext.prototype.NO = function() {
+ return this.getToken(SqlParser.NO, 0);
+};
+
+ReferenceControlTypeContext.prototype.ACTION = function() {
+ return this.getToken(SqlParser.ACTION, 0);
+};
+
+ReferenceControlTypeContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterReferenceControlType(this);
+ }
+};
+
+ReferenceControlTypeContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitReferenceControlType(this);
+ }
+};
+
+ReferenceControlTypeContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitReferenceControlType(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.ReferenceControlTypeContext = ReferenceControlTypeContext;
+
+SqlParser.prototype.referenceControlType = function() {
+
+ var localctx = new ReferenceControlTypeContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 90, SqlParser.RULE_referenceControlType);
+ try {
+ this.state = 1585;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.RESTRICT:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1579;
+ this.match(SqlParser.RESTRICT);
+ break;
+ case SqlParser.CASCADE:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 1580;
+ this.match(SqlParser.CASCADE);
+ break;
+ case SqlParser.SET:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 1581;
+ this.match(SqlParser.SET);
+ this.state = 1582;
+ this.match(SqlParser.NULL_LITERAL);
+ break;
+ case SqlParser.NO:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 1583;
+ this.match(SqlParser.NO);
+ this.state = 1584;
+ this.match(SqlParser.ACTION);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function IndexColumnDefinitionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_indexColumnDefinition;
+ return this;
+}
+
+IndexColumnDefinitionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+IndexColumnDefinitionContext.prototype.constructor = IndexColumnDefinitionContext;
+
+
+
+IndexColumnDefinitionContext.prototype.copyFrom = function(ctx) {
+ antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx);
+};
+
+
+function SpecialIndexDeclarationContext(parser, ctx) {
+ IndexColumnDefinitionContext.call(this, parser);
+ this.indexFormat = null; // Token;
+ IndexColumnDefinitionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+SpecialIndexDeclarationContext.prototype = Object.create(IndexColumnDefinitionContext.prototype);
+SpecialIndexDeclarationContext.prototype.constructor = SpecialIndexDeclarationContext;
+
+SqlParser.SpecialIndexDeclarationContext = SpecialIndexDeclarationContext;
+
+SpecialIndexDeclarationContext.prototype.indexColumnNames = function() {
+ return this.getTypedRuleContext(IndexColumnNamesContext,0);
+};
+
+SpecialIndexDeclarationContext.prototype.FULLTEXT = function() {
+ return this.getToken(SqlParser.FULLTEXT, 0);
+};
+
+SpecialIndexDeclarationContext.prototype.SPATIAL = function() {
+ return this.getToken(SqlParser.SPATIAL, 0);
+};
+
+SpecialIndexDeclarationContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+SpecialIndexDeclarationContext.prototype.indexOption = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(IndexOptionContext);
+ } else {
+ return this.getTypedRuleContext(IndexOptionContext,i);
+ }
+};
+
+SpecialIndexDeclarationContext.prototype.INDEX = function() {
+ return this.getToken(SqlParser.INDEX, 0);
+};
+
+SpecialIndexDeclarationContext.prototype.KEY = function() {
+ return this.getToken(SqlParser.KEY, 0);
+};
+SpecialIndexDeclarationContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSpecialIndexDeclaration(this);
+ }
+};
+
+SpecialIndexDeclarationContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSpecialIndexDeclaration(this);
+ }
+};
+
+SpecialIndexDeclarationContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSpecialIndexDeclaration(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function SimpleIndexDeclarationContext(parser, ctx) {
+ IndexColumnDefinitionContext.call(this, parser);
+ this.indexFormat = null; // Token;
+ IndexColumnDefinitionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+SimpleIndexDeclarationContext.prototype = Object.create(IndexColumnDefinitionContext.prototype);
+SimpleIndexDeclarationContext.prototype.constructor = SimpleIndexDeclarationContext;
+
+SqlParser.SimpleIndexDeclarationContext = SimpleIndexDeclarationContext;
+
+SimpleIndexDeclarationContext.prototype.indexColumnNames = function() {
+ return this.getTypedRuleContext(IndexColumnNamesContext,0);
+};
+
+SimpleIndexDeclarationContext.prototype.INDEX = function() {
+ return this.getToken(SqlParser.INDEX, 0);
+};
+
+SimpleIndexDeclarationContext.prototype.KEY = function() {
+ return this.getToken(SqlParser.KEY, 0);
+};
+
+SimpleIndexDeclarationContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+SimpleIndexDeclarationContext.prototype.indexType = function() {
+ return this.getTypedRuleContext(IndexTypeContext,0);
+};
+
+SimpleIndexDeclarationContext.prototype.indexOption = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(IndexOptionContext);
+ } else {
+ return this.getTypedRuleContext(IndexOptionContext,i);
+ }
+};
+SimpleIndexDeclarationContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSimpleIndexDeclaration(this);
+ }
+};
+
+SimpleIndexDeclarationContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSimpleIndexDeclaration(this);
+ }
+};
+
+SimpleIndexDeclarationContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSimpleIndexDeclaration(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+SqlParser.IndexColumnDefinitionContext = IndexColumnDefinitionContext;
+
+SqlParser.prototype.indexColumnDefinition = function() {
+
+ var localctx = new IndexColumnDefinitionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 92, SqlParser.RULE_indexColumnDefinition);
+ var _la = 0; // Token type
+ try {
+ this.state = 1615;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.INDEX:
+ case SqlParser.KEY:
+ localctx = new SimpleIndexDeclarationContext(this, localctx);
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1587;
+ localctx.indexFormat = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.INDEX || _la===SqlParser.KEY)) {
+ localctx.indexFormat = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 1589;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (SqlParser.CURRENT - 32)) | (1 << (SqlParser.DATABASE - 32)) | (1 << (SqlParser.DIAGNOSTICS - 32)))) !== 0) || _la===SqlParser.LEFT || _la===SqlParser.NUMBER || _la===SqlParser.RIGHT || _la===SqlParser.STACKED || ((((_la - 199)) & ~0x1f) == 0 && ((1 << (_la - 199)) & ((1 << (SqlParser.DATE - 199)) | (1 << (SqlParser.TIME - 199)) | (1 << (SqlParser.TIMESTAMP - 199)) | (1 << (SqlParser.DATETIME - 199)) | (1 << (SqlParser.YEAR - 199)) | (1 << (SqlParser.TEXT - 199)) | (1 << (SqlParser.ENUM - 199)) | (1 << (SqlParser.SERIAL - 199)))) !== 0) || ((((_la - 233)) & ~0x1f) == 0 && ((1 << (_la - 233)) & ((1 << (SqlParser.JSON_VALID - 233)) | (1 << (SqlParser.JSON_SCHEMA_VALID - 233)) | (1 << (SqlParser.COUNT - 233)) | (1 << (SqlParser.POSITION - 233)))) !== 0) || ((((_la - 270)) & ~0x1f) == 0 && ((1 << (_la - 270)) & ((1 << (SqlParser.ACCOUNT - 270)) | (1 << (SqlParser.ACTION - 270)) | (1 << (SqlParser.AFTER - 270)) | (1 << (SqlParser.AGGREGATE - 270)) | (1 << (SqlParser.ALGORITHM - 270)) | (1 << (SqlParser.ANY - 270)) | (1 << (SqlParser.AT - 270)) | (1 << (SqlParser.AUTHORS - 270)) | (1 << (SqlParser.AUTOCOMMIT - 270)) | (1 << (SqlParser.AUTOEXTEND_SIZE - 270)) | (1 << (SqlParser.AUTO_INCREMENT - 270)) | (1 << (SqlParser.AVG_ROW_LENGTH - 270)) | (1 << (SqlParser.BEGIN - 270)) | (1 << (SqlParser.BINLOG - 270)) | (1 << (SqlParser.BIT - 270)) | (1 << (SqlParser.BLOCK - 270)) | (1 << (SqlParser.BOOL - 270)) | (1 << (SqlParser.BOOLEAN - 270)) | (1 << (SqlParser.BTREE - 270)) | (1 << (SqlParser.CACHE - 270)) | (1 << (SqlParser.CASCADED - 270)) | (1 << (SqlParser.CHAIN - 270)) | (1 << (SqlParser.CHANGED - 270)) | (1 << (SqlParser.CHANNEL - 270)) | (1 << (SqlParser.CHECKSUM - 270)) | (1 << (SqlParser.PAGE_CHECKSUM - 270)) | (1 << (SqlParser.CIPHER - 270)) | (1 << (SqlParser.CLASS_ORIGIN - 270)) | (1 << (SqlParser.CLIENT - 270)) | (1 << (SqlParser.CLOSE - 270)) | (1 << (SqlParser.COALESCE - 270)) | (1 << (SqlParser.CODE - 270)))) !== 0) || ((((_la - 302)) & ~0x1f) == 0 && ((1 << (_la - 302)) & ((1 << (SqlParser.COLUMNS - 302)) | (1 << (SqlParser.COLUMN_FORMAT - 302)) | (1 << (SqlParser.COLUMN_NAME - 302)) | (1 << (SqlParser.COMMENT - 302)) | (1 << (SqlParser.COMMIT - 302)) | (1 << (SqlParser.COMPACT - 302)) | (1 << (SqlParser.COMPLETION - 302)) | (1 << (SqlParser.COMPRESSED - 302)) | (1 << (SqlParser.COMPRESSION - 302)) | (1 << (SqlParser.CONCURRENT - 302)) | (1 << (SqlParser.CONNECTION - 302)) | (1 << (SqlParser.CONSISTENT - 302)) | (1 << (SqlParser.CONSTRAINT_CATALOG - 302)) | (1 << (SqlParser.CONSTRAINT_SCHEMA - 302)) | (1 << (SqlParser.CONSTRAINT_NAME - 302)) | (1 << (SqlParser.CONTAINS - 302)) | (1 << (SqlParser.CONTEXT - 302)) | (1 << (SqlParser.CONTRIBUTORS - 302)) | (1 << (SqlParser.COPY - 302)) | (1 << (SqlParser.CPU - 302)) | (1 << (SqlParser.CURSOR_NAME - 302)) | (1 << (SqlParser.DATA - 302)) | (1 << (SqlParser.DATAFILE - 302)) | (1 << (SqlParser.DEALLOCATE - 302)) | (1 << (SqlParser.DEFAULT_AUTH - 302)) | (1 << (SqlParser.DEFINER - 302)) | (1 << (SqlParser.DELAY_KEY_WRITE - 302)) | (1 << (SqlParser.DES_KEY_FILE - 302)) | (1 << (SqlParser.DIRECTORY - 302)) | (1 << (SqlParser.DISABLE - 302)) | (1 << (SqlParser.DISCARD - 302)) | (1 << (SqlParser.DISK - 302)))) !== 0) || ((((_la - 334)) & ~0x1f) == 0 && ((1 << (_la - 334)) & ((1 << (SqlParser.DO - 334)) | (1 << (SqlParser.DUMPFILE - 334)) | (1 << (SqlParser.DUPLICATE - 334)) | (1 << (SqlParser.DYNAMIC - 334)) | (1 << (SqlParser.ENABLE - 334)) | (1 << (SqlParser.ENCRYPTION - 334)) | (1 << (SqlParser.END - 334)) | (1 << (SqlParser.ENDS - 334)) | (1 << (SqlParser.ENGINE - 334)) | (1 << (SqlParser.ENGINES - 334)) | (1 << (SqlParser.ERROR - 334)) | (1 << (SqlParser.ERRORS - 334)) | (1 << (SqlParser.ESCAPE - 334)) | (1 << (SqlParser.EVEN - 334)) | (1 << (SqlParser.EVENT - 334)) | (1 << (SqlParser.EVENTS - 334)) | (1 << (SqlParser.EVERY - 334)) | (1 << (SqlParser.EXCHANGE - 334)) | (1 << (SqlParser.EXCLUSIVE - 334)) | (1 << (SqlParser.EXPIRE - 334)) | (1 << (SqlParser.EXPORT - 334)) | (1 << (SqlParser.EXTENDED - 334)) | (1 << (SqlParser.EXTENT_SIZE - 334)) | (1 << (SqlParser.FAST - 334)) | (1 << (SqlParser.FAULTS - 334)) | (1 << (SqlParser.FIELDS - 334)) | (1 << (SqlParser.FILE_BLOCK_SIZE - 334)) | (1 << (SqlParser.FILTER - 334)) | (1 << (SqlParser.FIRST - 334)) | (1 << (SqlParser.FIXED - 334)) | (1 << (SqlParser.FLUSH - 334)) | (1 << (SqlParser.FOLLOWS - 334)))) !== 0) || ((((_la - 366)) & ~0x1f) == 0 && ((1 << (_la - 366)) & ((1 << (SqlParser.FOUND - 366)) | (1 << (SqlParser.FULL - 366)) | (1 << (SqlParser.FUNCTION - 366)) | (1 << (SqlParser.GENERAL - 366)) | (1 << (SqlParser.GLOBAL - 366)) | (1 << (SqlParser.GRANTS - 366)) | (1 << (SqlParser.GROUP_REPLICATION - 366)) | (1 << (SqlParser.HANDLER - 366)) | (1 << (SqlParser.HASH - 366)) | (1 << (SqlParser.HELP - 366)) | (1 << (SqlParser.HOST - 366)) | (1 << (SqlParser.HOSTS - 366)) | (1 << (SqlParser.IDENTIFIED - 366)) | (1 << (SqlParser.IGNORE_SERVER_IDS - 366)) | (1 << (SqlParser.IMPORT - 366)) | (1 << (SqlParser.INDEXES - 366)) | (1 << (SqlParser.INITIAL_SIZE - 366)) | (1 << (SqlParser.INPLACE - 366)) | (1 << (SqlParser.INSERT_METHOD - 366)) | (1 << (SqlParser.INSTALL - 366)) | (1 << (SqlParser.INSTANCE - 366)) | (1 << (SqlParser.INVISIBLE - 366)) | (1 << (SqlParser.INVOKER - 366)) | (1 << (SqlParser.IO - 366)) | (1 << (SqlParser.IO_THREAD - 366)) | (1 << (SqlParser.IPC - 366)) | (1 << (SqlParser.ISOLATION - 366)) | (1 << (SqlParser.ISSUER - 366)) | (1 << (SqlParser.JSON - 366)) | (1 << (SqlParser.KEY_BLOCK_SIZE - 366)) | (1 << (SqlParser.LANGUAGE - 366)) | (1 << (SqlParser.LAST - 366)))) !== 0) || ((((_la - 398)) & ~0x1f) == 0 && ((1 << (_la - 398)) & ((1 << (SqlParser.LEAVES - 398)) | (1 << (SqlParser.LESS - 398)) | (1 << (SqlParser.LEVEL - 398)) | (1 << (SqlParser.LIST - 398)) | (1 << (SqlParser.LOCAL - 398)) | (1 << (SqlParser.LOGFILE - 398)) | (1 << (SqlParser.LOGS - 398)) | (1 << (SqlParser.MASTER - 398)) | (1 << (SqlParser.MASTER_AUTO_POSITION - 398)) | (1 << (SqlParser.MASTER_CONNECT_RETRY - 398)) | (1 << (SqlParser.MASTER_DELAY - 398)) | (1 << (SqlParser.MASTER_HEARTBEAT_PERIOD - 398)) | (1 << (SqlParser.MASTER_HOST - 398)) | (1 << (SqlParser.MASTER_LOG_FILE - 398)) | (1 << (SqlParser.MASTER_LOG_POS - 398)) | (1 << (SqlParser.MASTER_PASSWORD - 398)) | (1 << (SqlParser.MASTER_PORT - 398)) | (1 << (SqlParser.MASTER_RETRY_COUNT - 398)) | (1 << (SqlParser.MASTER_SSL - 398)) | (1 << (SqlParser.MASTER_SSL_CA - 398)) | (1 << (SqlParser.MASTER_SSL_CAPATH - 398)) | (1 << (SqlParser.MASTER_SSL_CERT - 398)) | (1 << (SqlParser.MASTER_SSL_CIPHER - 398)) | (1 << (SqlParser.MASTER_SSL_CRL - 398)) | (1 << (SqlParser.MASTER_SSL_CRLPATH - 398)) | (1 << (SqlParser.MASTER_SSL_KEY - 398)) | (1 << (SqlParser.MASTER_TLS_VERSION - 398)) | (1 << (SqlParser.MASTER_USER - 398)) | (1 << (SqlParser.MAX_CONNECTIONS_PER_HOUR - 398)) | (1 << (SqlParser.MAX_QUERIES_PER_HOUR - 398)) | (1 << (SqlParser.MAX_ROWS - 398)) | (1 << (SqlParser.MAX_SIZE - 398)))) !== 0) || ((((_la - 430)) & ~0x1f) == 0 && ((1 << (_la - 430)) & ((1 << (SqlParser.MAX_UPDATES_PER_HOUR - 430)) | (1 << (SqlParser.MAX_USER_CONNECTIONS - 430)) | (1 << (SqlParser.MEDIUM - 430)) | (1 << (SqlParser.MERGE - 430)) | (1 << (SqlParser.MESSAGE_TEXT - 430)) | (1 << (SqlParser.MID - 430)) | (1 << (SqlParser.MIGRATE - 430)) | (1 << (SqlParser.MIN_ROWS - 430)) | (1 << (SqlParser.MODE - 430)) | (1 << (SqlParser.MODIFY - 430)) | (1 << (SqlParser.MUTEX - 430)) | (1 << (SqlParser.MYSQL - 430)) | (1 << (SqlParser.MYSQL_ERRNO - 430)) | (1 << (SqlParser.NAME - 430)) | (1 << (SqlParser.NAMES - 430)) | (1 << (SqlParser.NCHAR - 430)) | (1 << (SqlParser.NEVER - 430)) | (1 << (SqlParser.NEXT - 430)) | (1 << (SqlParser.NO - 430)) | (1 << (SqlParser.NODEGROUP - 430)) | (1 << (SqlParser.NONE - 430)) | (1 << (SqlParser.OFFLINE - 430)) | (1 << (SqlParser.OFFSET - 430)) | (1 << (SqlParser.OJ - 430)) | (1 << (SqlParser.OLD_PASSWORD - 430)) | (1 << (SqlParser.ONE - 430)) | (1 << (SqlParser.ONLINE - 430)) | (1 << (SqlParser.ONLY - 430)) | (1 << (SqlParser.OPEN - 430)) | (1 << (SqlParser.OPTIMIZER_COSTS - 430)) | (1 << (SqlParser.OPTIONS - 430)) | (1 << (SqlParser.OWNER - 430)))) !== 0) || ((((_la - 462)) & ~0x1f) == 0 && ((1 << (_la - 462)) & ((1 << (SqlParser.PACK_KEYS - 462)) | (1 << (SqlParser.PAGE - 462)) | (1 << (SqlParser.PARSER - 462)) | (1 << (SqlParser.PARTIAL - 462)) | (1 << (SqlParser.PARTITIONING - 462)) | (1 << (SqlParser.PARTITIONS - 462)) | (1 << (SqlParser.PASSWORD - 462)) | (1 << (SqlParser.PHASE - 462)) | (1 << (SqlParser.PLUGIN - 462)) | (1 << (SqlParser.PLUGIN_DIR - 462)) | (1 << (SqlParser.PLUGINS - 462)) | (1 << (SqlParser.PORT - 462)) | (1 << (SqlParser.PRECEDES - 462)) | (1 << (SqlParser.PREPARE - 462)) | (1 << (SqlParser.PRESERVE - 462)) | (1 << (SqlParser.PREV - 462)) | (1 << (SqlParser.PROCESSLIST - 462)) | (1 << (SqlParser.PROFILE - 462)) | (1 << (SqlParser.PROFILES - 462)) | (1 << (SqlParser.PROXY - 462)) | (1 << (SqlParser.QUERY - 462)) | (1 << (SqlParser.QUICK - 462)) | (1 << (SqlParser.REBUILD - 462)) | (1 << (SqlParser.RECOVER - 462)) | (1 << (SqlParser.REDO_BUFFER_SIZE - 462)) | (1 << (SqlParser.REDUNDANT - 462)) | (1 << (SqlParser.RELAY - 462)) | (1 << (SqlParser.RELAY_LOG_FILE - 462)) | (1 << (SqlParser.RELAY_LOG_POS - 462)) | (1 << (SqlParser.RELAYLOG - 462)) | (1 << (SqlParser.REMOVE - 462)) | (1 << (SqlParser.REORGANIZE - 462)))) !== 0) || ((((_la - 494)) & ~0x1f) == 0 && ((1 << (_la - 494)) & ((1 << (SqlParser.REPAIR - 494)) | (1 << (SqlParser.REPLICATE_DO_DB - 494)) | (1 << (SqlParser.REPLICATE_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_DB - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATE_REWRITE_DB - 494)) | (1 << (SqlParser.REPLICATE_WILD_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_WILD_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATION - 494)) | (1 << (SqlParser.RESET - 494)) | (1 << (SqlParser.RESUME - 494)) | (1 << (SqlParser.RETURNED_SQLSTATE - 494)) | (1 << (SqlParser.RETURNS - 494)) | (1 << (SqlParser.ROLE - 494)) | (1 << (SqlParser.ROLLBACK - 494)) | (1 << (SqlParser.ROLLUP - 494)) | (1 << (SqlParser.ROTATE - 494)) | (1 << (SqlParser.ROW - 494)) | (1 << (SqlParser.ROWS - 494)) | (1 << (SqlParser.ROW_FORMAT - 494)) | (1 << (SqlParser.SAVEPOINT - 494)) | (1 << (SqlParser.SCHEDULE - 494)) | (1 << (SqlParser.SECURITY - 494)) | (1 << (SqlParser.SERVER - 494)) | (1 << (SqlParser.SESSION - 494)) | (1 << (SqlParser.SHARE - 494)) | (1 << (SqlParser.SHARED - 494)) | (1 << (SqlParser.SIGNED - 494)) | (1 << (SqlParser.SIMPLE - 494)) | (1 << (SqlParser.SLAVE - 494)) | (1 << (SqlParser.SLOW - 494)) | (1 << (SqlParser.SNAPSHOT - 494)))) !== 0) || ((((_la - 526)) & ~0x1f) == 0 && ((1 << (_la - 526)) & ((1 << (SqlParser.SOCKET - 526)) | (1 << (SqlParser.SOME - 526)) | (1 << (SqlParser.SONAME - 526)) | (1 << (SqlParser.SOUNDS - 526)) | (1 << (SqlParser.SOURCE - 526)) | (1 << (SqlParser.SQL_AFTER_GTIDS - 526)) | (1 << (SqlParser.SQL_AFTER_MTS_GAPS - 526)) | (1 << (SqlParser.SQL_BEFORE_GTIDS - 526)) | (1 << (SqlParser.SQL_BUFFER_RESULT - 526)) | (1 << (SqlParser.SQL_CACHE - 526)) | (1 << (SqlParser.SQL_NO_CACHE - 526)) | (1 << (SqlParser.SQL_THREAD - 526)) | (1 << (SqlParser.START - 526)) | (1 << (SqlParser.STARTS - 526)) | (1 << (SqlParser.STATS_AUTO_RECALC - 526)) | (1 << (SqlParser.STATS_PERSISTENT - 526)) | (1 << (SqlParser.STATS_SAMPLE_PAGES - 526)) | (1 << (SqlParser.STATUS - 526)) | (1 << (SqlParser.STOP - 526)) | (1 << (SqlParser.STORAGE - 526)) | (1 << (SqlParser.STRING - 526)) | (1 << (SqlParser.SUBCLASS_ORIGIN - 526)) | (1 << (SqlParser.SUBJECT - 526)) | (1 << (SqlParser.SUBPARTITION - 526)) | (1 << (SqlParser.SUBPARTITIONS - 526)) | (1 << (SqlParser.SUSPEND - 526)) | (1 << (SqlParser.SWAPS - 526)) | (1 << (SqlParser.SWITCHES - 526)) | (1 << (SqlParser.TABLE_NAME - 526)) | (1 << (SqlParser.TABLESPACE - 526)) | (1 << (SqlParser.TEMPORARY - 526)))) !== 0) || ((((_la - 558)) & ~0x1f) == 0 && ((1 << (_la - 558)) & ((1 << (SqlParser.TEMPTABLE - 558)) | (1 << (SqlParser.THAN - 558)) | (1 << (SqlParser.TRADITIONAL - 558)) | (1 << (SqlParser.TRANSACTION - 558)) | (1 << (SqlParser.TRANSACTIONAL - 558)) | (1 << (SqlParser.TRIGGERS - 558)) | (1 << (SqlParser.TRUNCATE - 558)) | (1 << (SqlParser.UNDEFINED - 558)) | (1 << (SqlParser.UNDOFILE - 558)) | (1 << (SqlParser.UNDO_BUFFER_SIZE - 558)) | (1 << (SqlParser.UNINSTALL - 558)) | (1 << (SqlParser.UNKNOWN - 558)) | (1 << (SqlParser.UNTIL - 558)) | (1 << (SqlParser.UPGRADE - 558)) | (1 << (SqlParser.USER - 558)) | (1 << (SqlParser.USE_FRM - 558)) | (1 << (SqlParser.USER_RESOURCES - 558)) | (1 << (SqlParser.VALIDATION - 558)) | (1 << (SqlParser.VALUE - 558)) | (1 << (SqlParser.VARIABLES - 558)) | (1 << (SqlParser.VIEW - 558)) | (1 << (SqlParser.VISIBLE - 558)) | (1 << (SqlParser.WAIT - 558)) | (1 << (SqlParser.WARNINGS - 558)) | (1 << (SqlParser.WITHOUT - 558)) | (1 << (SqlParser.WORK - 558)) | (1 << (SqlParser.WRAPPER - 558)) | (1 << (SqlParser.X509 - 558)) | (1 << (SqlParser.XA - 558)) | (1 << (SqlParser.XML - 558)))) !== 0) || ((((_la - 593)) & ~0x1f) == 0 && ((1 << (_la - 593)) & ((1 << (SqlParser.INTERNAL - 593)) | (1 << (SqlParser.QUARTER - 593)) | (1 << (SqlParser.MONTH - 593)) | (1 << (SqlParser.DAY - 593)) | (1 << (SqlParser.HOUR - 593)) | (1 << (SqlParser.MINUTE - 593)) | (1 << (SqlParser.WEEK - 593)) | (1 << (SqlParser.SECOND - 593)) | (1 << (SqlParser.MICROSECOND - 593)) | (1 << (SqlParser.TABLES - 593)) | (1 << (SqlParser.ROUTINE - 593)) | (1 << (SqlParser.EXECUTE - 593)) | (1 << (SqlParser.FILE - 593)) | (1 << (SqlParser.PROCESS - 593)) | (1 << (SqlParser.RELOAD - 593)) | (1 << (SqlParser.SHUTDOWN - 593)) | (1 << (SqlParser.SUPER - 593)) | (1 << (SqlParser.PRIVILEGES - 593)) | (1 << (SqlParser.AUDIT_ADMIN - 593)) | (1 << (SqlParser.BACKUP_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ENCRYPTION_ADMIN - 593)) | (1 << (SqlParser.CLONE_ADMIN - 593)) | (1 << (SqlParser.CONNECTION_ADMIN - 593)) | (1 << (SqlParser.ENCRYPTION_KEY_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_USER - 593)) | (1 << (SqlParser.GROUP_REPLICATION_ADMIN - 593)) | (1 << (SqlParser.INNODB_REDO_LOG_ARCHIVE - 593)) | (1 << (SqlParser.NDB_STORED_USER - 593)) | (1 << (SqlParser.PERSIST_RO_VARIABLES_ADMIN - 593)))) !== 0) || ((((_la - 625)) & ~0x1f) == 0 && ((1 << (_la - 625)) & ((1 << (SqlParser.REPLICATION_APPLIER - 625)) | (1 << (SqlParser.REPLICATION_SLAVE_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_USER - 625)) | (1 << (SqlParser.ROLE_ADMIN - 625)) | (1 << (SqlParser.SESSION_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.SET_USER_ID - 625)) | (1 << (SqlParser.SHOW_ROUTINE - 625)) | (1 << (SqlParser.SYSTEM_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.TABLE_ENCRYPTION_ADMIN - 625)) | (1 << (SqlParser.VERSION_TOKEN_ADMIN - 625)) | (1 << (SqlParser.XA_RECOVER_ADMIN - 625)) | (1 << (SqlParser.ARMSCII8 - 625)) | (1 << (SqlParser.ASCII - 625)) | (1 << (SqlParser.BIG5 - 625)) | (1 << (SqlParser.CP1250 - 625)) | (1 << (SqlParser.CP1251 - 625)) | (1 << (SqlParser.CP1256 - 625)) | (1 << (SqlParser.CP1257 - 625)) | (1 << (SqlParser.CP850 - 625)) | (1 << (SqlParser.CP852 - 625)) | (1 << (SqlParser.CP866 - 625)) | (1 << (SqlParser.CP932 - 625)) | (1 << (SqlParser.DEC8 - 625)) | (1 << (SqlParser.EUCJPMS - 625)) | (1 << (SqlParser.EUCKR - 625)) | (1 << (SqlParser.GB2312 - 625)) | (1 << (SqlParser.GBK - 625)) | (1 << (SqlParser.GEOSTD8 - 625)) | (1 << (SqlParser.GREEK - 625)) | (1 << (SqlParser.HEBREW - 625)) | (1 << (SqlParser.HP8 - 625)))) !== 0) || ((((_la - 657)) & ~0x1f) == 0 && ((1 << (_la - 657)) & ((1 << (SqlParser.KEYBCS2 - 657)) | (1 << (SqlParser.KOI8R - 657)) | (1 << (SqlParser.KOI8U - 657)) | (1 << (SqlParser.LATIN1 - 657)) | (1 << (SqlParser.LATIN2 - 657)) | (1 << (SqlParser.LATIN5 - 657)) | (1 << (SqlParser.LATIN7 - 657)) | (1 << (SqlParser.MACCE - 657)) | (1 << (SqlParser.MACROMAN - 657)) | (1 << (SqlParser.SJIS - 657)) | (1 << (SqlParser.SWE7 - 657)) | (1 << (SqlParser.TIS620 - 657)) | (1 << (SqlParser.UCS2 - 657)) | (1 << (SqlParser.UJIS - 657)) | (1 << (SqlParser.UTF16 - 657)) | (1 << (SqlParser.UTF16LE - 657)) | (1 << (SqlParser.UTF32 - 657)) | (1 << (SqlParser.UTF8 - 657)) | (1 << (SqlParser.UTF8MB3 - 657)) | (1 << (SqlParser.UTF8MB4 - 657)) | (1 << (SqlParser.ARCHIVE - 657)) | (1 << (SqlParser.BLACKHOLE - 657)) | (1 << (SqlParser.CSV - 657)) | (1 << (SqlParser.FEDERATED - 657)) | (1 << (SqlParser.INNODB - 657)) | (1 << (SqlParser.MEMORY - 657)) | (1 << (SqlParser.MRG_MYISAM - 657)) | (1 << (SqlParser.MYISAM - 657)) | (1 << (SqlParser.NDB - 657)) | (1 << (SqlParser.NDBCLUSTER - 657)) | (1 << (SqlParser.PERFORMANCE_SCHEMA - 657)) | (1 << (SqlParser.TOKUDB - 657)))) !== 0) || ((((_la - 689)) & ~0x1f) == 0 && ((1 << (_la - 689)) & ((1 << (SqlParser.REPEATABLE - 689)) | (1 << (SqlParser.COMMITTED - 689)) | (1 << (SqlParser.UNCOMMITTED - 689)) | (1 << (SqlParser.SERIALIZABLE - 689)) | (1 << (SqlParser.GEOMETRYCOLLECTION - 689)) | (1 << (SqlParser.LINESTRING - 689)) | (1 << (SqlParser.MULTILINESTRING - 689)) | (1 << (SqlParser.MULTIPOINT - 689)) | (1 << (SqlParser.MULTIPOLYGON - 689)) | (1 << (SqlParser.POINT - 689)) | (1 << (SqlParser.POLYGON - 689)) | (1 << (SqlParser.ABS - 689)) | (1 << (SqlParser.ACOS - 689)) | (1 << (SqlParser.ADDDATE - 689)) | (1 << (SqlParser.ADDTIME - 689)) | (1 << (SqlParser.AES_DECRYPT - 689)) | (1 << (SqlParser.AES_ENCRYPT - 689)) | (1 << (SqlParser.AREA - 689)) | (1 << (SqlParser.ASBINARY - 689)) | (1 << (SqlParser.ASIN - 689)) | (1 << (SqlParser.ASTEXT - 689)) | (1 << (SqlParser.ASWKB - 689)) | (1 << (SqlParser.ASWKT - 689)) | (1 << (SqlParser.ASYMMETRIC_DECRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_DERIVE - 689)) | (1 << (SqlParser.ASYMMETRIC_ENCRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_SIGN - 689)) | (1 << (SqlParser.ASYMMETRIC_VERIFY - 689)) | (1 << (SqlParser.ATAN - 689)) | (1 << (SqlParser.ATAN2 - 689)))) !== 0) || ((((_la - 721)) & ~0x1f) == 0 && ((1 << (_la - 721)) & ((1 << (SqlParser.BENCHMARK - 721)) | (1 << (SqlParser.BIN - 721)) | (1 << (SqlParser.BIT_COUNT - 721)) | (1 << (SqlParser.BIT_LENGTH - 721)) | (1 << (SqlParser.BUFFER - 721)) | (1 << (SqlParser.CATALOG_NAME - 721)) | (1 << (SqlParser.CEIL - 721)) | (1 << (SqlParser.CEILING - 721)) | (1 << (SqlParser.CENTROID - 721)) | (1 << (SqlParser.CHARACTER_LENGTH - 721)) | (1 << (SqlParser.CHARSET - 721)) | (1 << (SqlParser.CHAR_LENGTH - 721)) | (1 << (SqlParser.COERCIBILITY - 721)) | (1 << (SqlParser.COLLATION - 721)) | (1 << (SqlParser.COMPRESS - 721)) | (1 << (SqlParser.CONCAT - 721)) | (1 << (SqlParser.CONCAT_WS - 721)) | (1 << (SqlParser.CONNECTION_ID - 721)) | (1 << (SqlParser.CONV - 721)) | (1 << (SqlParser.CONVERT_TZ - 721)) | (1 << (SqlParser.COS - 721)) | (1 << (SqlParser.COT - 721)) | (1 << (SqlParser.CRC32 - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PRIV_KEY - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PUB_KEY - 721)) | (1 << (SqlParser.CREATE_DH_PARAMETERS - 721)) | (1 << (SqlParser.CREATE_DIGEST - 721)) | (1 << (SqlParser.CROSSES - 721)) | (1 << (SqlParser.DATEDIFF - 721)) | (1 << (SqlParser.DATE_FORMAT - 721)) | (1 << (SqlParser.DAYNAME - 721)) | (1 << (SqlParser.DAYOFMONTH - 721)))) !== 0) || ((((_la - 753)) & ~0x1f) == 0 && ((1 << (_la - 753)) & ((1 << (SqlParser.DAYOFWEEK - 753)) | (1 << (SqlParser.DAYOFYEAR - 753)) | (1 << (SqlParser.DECODE - 753)) | (1 << (SqlParser.DEGREES - 753)) | (1 << (SqlParser.DES_DECRYPT - 753)) | (1 << (SqlParser.DES_ENCRYPT - 753)) | (1 << (SqlParser.DIMENSION - 753)) | (1 << (SqlParser.DISJOINT - 753)) | (1 << (SqlParser.ELT - 753)) | (1 << (SqlParser.ENCODE - 753)) | (1 << (SqlParser.ENCRYPT - 753)) | (1 << (SqlParser.ENDPOINT - 753)) | (1 << (SqlParser.ENVELOPE - 753)) | (1 << (SqlParser.EQUALS - 753)) | (1 << (SqlParser.EXP - 753)) | (1 << (SqlParser.EXPORT_SET - 753)) | (1 << (SqlParser.EXTERIORRING - 753)) | (1 << (SqlParser.EXTRACTVALUE - 753)) | (1 << (SqlParser.FIELD - 753)) | (1 << (SqlParser.FIND_IN_SET - 753)) | (1 << (SqlParser.FLOOR - 753)) | (1 << (SqlParser.FORMAT - 753)) | (1 << (SqlParser.FOUND_ROWS - 753)) | (1 << (SqlParser.FROM_BASE64 - 753)) | (1 << (SqlParser.FROM_DAYS - 753)) | (1 << (SqlParser.FROM_UNIXTIME - 753)) | (1 << (SqlParser.GEOMCOLLFROMTEXT - 753)) | (1 << (SqlParser.GEOMCOLLFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYFROMWKB - 753)))) !== 0) || ((((_la - 785)) & ~0x1f) == 0 && ((1 << (_la - 785)) & ((1 << (SqlParser.GEOMETRYN - 785)) | (1 << (SqlParser.GEOMETRYTYPE - 785)) | (1 << (SqlParser.GEOMFROMTEXT - 785)) | (1 << (SqlParser.GEOMFROMWKB - 785)) | (1 << (SqlParser.GET_FORMAT - 785)) | (1 << (SqlParser.GET_LOCK - 785)) | (1 << (SqlParser.GLENGTH - 785)) | (1 << (SqlParser.GREATEST - 785)) | (1 << (SqlParser.GTID_SUBSET - 785)) | (1 << (SqlParser.GTID_SUBTRACT - 785)) | (1 << (SqlParser.HEX - 785)) | (1 << (SqlParser.IFNULL - 785)) | (1 << (SqlParser.INET6_ATON - 785)) | (1 << (SqlParser.INET6_NTOA - 785)) | (1 << (SqlParser.INET_ATON - 785)) | (1 << (SqlParser.INET_NTOA - 785)) | (1 << (SqlParser.INSTR - 785)) | (1 << (SqlParser.INTERIORRINGN - 785)) | (1 << (SqlParser.INTERSECTS - 785)) | (1 << (SqlParser.ISCLOSED - 785)) | (1 << (SqlParser.ISEMPTY - 785)) | (1 << (SqlParser.ISNULL - 785)) | (1 << (SqlParser.ISSIMPLE - 785)) | (1 << (SqlParser.IS_FREE_LOCK - 785)) | (1 << (SqlParser.IS_IPV4 - 785)) | (1 << (SqlParser.IS_IPV4_COMPAT - 785)) | (1 << (SqlParser.IS_IPV4_MAPPED - 785)) | (1 << (SqlParser.IS_IPV6 - 785)) | (1 << (SqlParser.IS_USED_LOCK - 785)) | (1 << (SqlParser.LAST_INSERT_ID - 785)) | (1 << (SqlParser.LCASE - 785)) | (1 << (SqlParser.LEAST - 785)))) !== 0) || ((((_la - 817)) & ~0x1f) == 0 && ((1 << (_la - 817)) & ((1 << (SqlParser.LENGTH - 817)) | (1 << (SqlParser.LINEFROMTEXT - 817)) | (1 << (SqlParser.LINEFROMWKB - 817)) | (1 << (SqlParser.LINESTRINGFROMTEXT - 817)) | (1 << (SqlParser.LINESTRINGFROMWKB - 817)) | (1 << (SqlParser.LN - 817)) | (1 << (SqlParser.LOAD_FILE - 817)) | (1 << (SqlParser.LOCATE - 817)) | (1 << (SqlParser.LOG - 817)) | (1 << (SqlParser.LOG10 - 817)) | (1 << (SqlParser.LOG2 - 817)) | (1 << (SqlParser.LOWER - 817)) | (1 << (SqlParser.LPAD - 817)) | (1 << (SqlParser.LTRIM - 817)) | (1 << (SqlParser.MAKEDATE - 817)) | (1 << (SqlParser.MAKETIME - 817)) | (1 << (SqlParser.MAKE_SET - 817)) | (1 << (SqlParser.MASTER_POS_WAIT - 817)) | (1 << (SqlParser.MBRCONTAINS - 817)) | (1 << (SqlParser.MBRDISJOINT - 817)) | (1 << (SqlParser.MBREQUAL - 817)) | (1 << (SqlParser.MBRINTERSECTS - 817)) | (1 << (SqlParser.MBROVERLAPS - 817)) | (1 << (SqlParser.MBRTOUCHES - 817)) | (1 << (SqlParser.MBRWITHIN - 817)) | (1 << (SqlParser.MD5 - 817)) | (1 << (SqlParser.MLINEFROMTEXT - 817)) | (1 << (SqlParser.MLINEFROMWKB - 817)) | (1 << (SqlParser.MONTHNAME - 817)) | (1 << (SqlParser.MPOINTFROMTEXT - 817)) | (1 << (SqlParser.MPOINTFROMWKB - 817)) | (1 << (SqlParser.MPOLYFROMTEXT - 817)))) !== 0) || ((((_la - 849)) & ~0x1f) == 0 && ((1 << (_la - 849)) & ((1 << (SqlParser.MPOLYFROMWKB - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMTEXT - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMWKB - 849)) | (1 << (SqlParser.MULTIPOINTFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOINTFROMWKB - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMWKB - 849)) | (1 << (SqlParser.NAME_CONST - 849)) | (1 << (SqlParser.NULLIF - 849)) | (1 << (SqlParser.NUMGEOMETRIES - 849)) | (1 << (SqlParser.NUMINTERIORRINGS - 849)) | (1 << (SqlParser.NUMPOINTS - 849)) | (1 << (SqlParser.OCT - 849)) | (1 << (SqlParser.OCTET_LENGTH - 849)) | (1 << (SqlParser.ORD - 849)) | (1 << (SqlParser.OVERLAPS - 849)) | (1 << (SqlParser.PERIOD_ADD - 849)) | (1 << (SqlParser.PERIOD_DIFF - 849)) | (1 << (SqlParser.PI - 849)) | (1 << (SqlParser.POINTFROMTEXT - 849)) | (1 << (SqlParser.POINTFROMWKB - 849)) | (1 << (SqlParser.POINTN - 849)) | (1 << (SqlParser.POLYFROMTEXT - 849)) | (1 << (SqlParser.POLYFROMWKB - 849)) | (1 << (SqlParser.POLYGONFROMTEXT - 849)) | (1 << (SqlParser.POLYGONFROMWKB - 849)) | (1 << (SqlParser.POW - 849)) | (1 << (SqlParser.POWER - 849)) | (1 << (SqlParser.QUOTE - 849)) | (1 << (SqlParser.RADIANS - 849)) | (1 << (SqlParser.RAND - 849)) | (1 << (SqlParser.RANDOM_BYTES - 849)))) !== 0) || ((((_la - 881)) & ~0x1f) == 0 && ((1 << (_la - 881)) & ((1 << (SqlParser.RELEASE_LOCK - 881)) | (1 << (SqlParser.REVERSE - 881)) | (1 << (SqlParser.ROUND - 881)) | (1 << (SqlParser.ROW_COUNT - 881)) | (1 << (SqlParser.RPAD - 881)) | (1 << (SqlParser.RTRIM - 881)) | (1 << (SqlParser.SEC_TO_TIME - 881)) | (1 << (SqlParser.SESSION_USER - 881)) | (1 << (SqlParser.SHA - 881)) | (1 << (SqlParser.SHA1 - 881)) | (1 << (SqlParser.SHA2 - 881)) | (1 << (SqlParser.SCHEMA_NAME - 881)) | (1 << (SqlParser.SIGN - 881)) | (1 << (SqlParser.SIN - 881)) | (1 << (SqlParser.SLEEP - 881)) | (1 << (SqlParser.SOUNDEX - 881)) | (1 << (SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS - 881)) | (1 << (SqlParser.SQRT - 881)) | (1 << (SqlParser.SRID - 881)) | (1 << (SqlParser.STARTPOINT - 881)) | (1 << (SqlParser.STRCMP - 881)) | (1 << (SqlParser.STR_TO_DATE - 881)) | (1 << (SqlParser.ST_AREA - 881)) | (1 << (SqlParser.ST_ASBINARY - 881)) | (1 << (SqlParser.ST_ASTEXT - 881)) | (1 << (SqlParser.ST_ASWKB - 881)) | (1 << (SqlParser.ST_ASWKT - 881)) | (1 << (SqlParser.ST_BUFFER - 881)) | (1 << (SqlParser.ST_CENTROID - 881)) | (1 << (SqlParser.ST_CONTAINS - 881)) | (1 << (SqlParser.ST_CROSSES - 881)) | (1 << (SqlParser.ST_DIFFERENCE - 881)))) !== 0) || ((((_la - 913)) & ~0x1f) == 0 && ((1 << (_la - 913)) & ((1 << (SqlParser.ST_DIMENSION - 913)) | (1 << (SqlParser.ST_DISJOINT - 913)) | (1 << (SqlParser.ST_DISTANCE - 913)) | (1 << (SqlParser.ST_ENDPOINT - 913)) | (1 << (SqlParser.ST_ENVELOPE - 913)) | (1 << (SqlParser.ST_EQUALS - 913)) | (1 << (SqlParser.ST_EXTERIORRING - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYN - 913)) | (1 << (SqlParser.ST_GEOMETRYTYPE - 913)) | (1 << (SqlParser.ST_GEOMFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMFROMWKB - 913)) | (1 << (SqlParser.ST_INTERIORRINGN - 913)) | (1 << (SqlParser.ST_INTERSECTION - 913)) | (1 << (SqlParser.ST_INTERSECTS - 913)) | (1 << (SqlParser.ST_ISCLOSED - 913)) | (1 << (SqlParser.ST_ISEMPTY - 913)) | (1 << (SqlParser.ST_ISSIMPLE - 913)) | (1 << (SqlParser.ST_LINEFROMTEXT - 913)) | (1 << (SqlParser.ST_LINEFROMWKB - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMTEXT - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMWKB - 913)) | (1 << (SqlParser.ST_NUMGEOMETRIES - 913)) | (1 << (SqlParser.ST_NUMINTERIORRING - 913)) | (1 << (SqlParser.ST_NUMINTERIORRINGS - 913)) | (1 << (SqlParser.ST_NUMPOINTS - 913)))) !== 0) || ((((_la - 945)) & ~0x1f) == 0 && ((1 << (_la - 945)) & ((1 << (SqlParser.ST_OVERLAPS - 945)) | (1 << (SqlParser.ST_POINTFROMTEXT - 945)) | (1 << (SqlParser.ST_POINTFROMWKB - 945)) | (1 << (SqlParser.ST_POINTN - 945)) | (1 << (SqlParser.ST_POLYFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYFROMWKB - 945)) | (1 << (SqlParser.ST_POLYGONFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYGONFROMWKB - 945)) | (1 << (SqlParser.ST_SRID - 945)) | (1 << (SqlParser.ST_STARTPOINT - 945)) | (1 << (SqlParser.ST_SYMDIFFERENCE - 945)) | (1 << (SqlParser.ST_TOUCHES - 945)) | (1 << (SqlParser.ST_UNION - 945)) | (1 << (SqlParser.ST_WITHIN - 945)) | (1 << (SqlParser.ST_X - 945)) | (1 << (SqlParser.ST_Y - 945)) | (1 << (SqlParser.SUBDATE - 945)) | (1 << (SqlParser.SUBSTRING_INDEX - 945)) | (1 << (SqlParser.SUBTIME - 945)) | (1 << (SqlParser.SYSTEM_USER - 945)) | (1 << (SqlParser.TAN - 945)) | (1 << (SqlParser.TIMEDIFF - 945)) | (1 << (SqlParser.TIMESTAMPADD - 945)) | (1 << (SqlParser.TIMESTAMPDIFF - 945)) | (1 << (SqlParser.TIME_FORMAT - 945)) | (1 << (SqlParser.TIME_TO_SEC - 945)) | (1 << (SqlParser.TOUCHES - 945)) | (1 << (SqlParser.TO_BASE64 - 945)) | (1 << (SqlParser.TO_DAYS - 945)) | (1 << (SqlParser.TO_SECONDS - 945)) | (1 << (SqlParser.UCASE - 945)) | (1 << (SqlParser.UNCOMPRESS - 945)))) !== 0) || ((((_la - 977)) & ~0x1f) == 0 && ((1 << (_la - 977)) & ((1 << (SqlParser.UNCOMPRESSED_LENGTH - 977)) | (1 << (SqlParser.UNHEX - 977)) | (1 << (SqlParser.UNIX_TIMESTAMP - 977)) | (1 << (SqlParser.UPDATEXML - 977)) | (1 << (SqlParser.UPPER - 977)) | (1 << (SqlParser.UUID - 977)) | (1 << (SqlParser.UUID_SHORT - 977)) | (1 << (SqlParser.VALIDATE_PASSWORD_STRENGTH - 977)) | (1 << (SqlParser.VERSION - 977)) | (1 << (SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS - 977)) | (1 << (SqlParser.WEEKDAY - 977)) | (1 << (SqlParser.WEEKOFYEAR - 977)) | (1 << (SqlParser.WEIGHT_STRING - 977)) | (1 << (SqlParser.WITHIN - 977)) | (1 << (SqlParser.YEARWEEK - 977)) | (1 << (SqlParser.Y_FUNCTION - 977)) | (1 << (SqlParser.X_FUNCTION - 977)))) !== 0) || ((((_la - 1032)) & ~0x1f) == 0 && ((1 << (_la - 1032)) & ((1 << (SqlParser.CHARSET_REVERSE_QOUTE_STRING - 1032)) | (1 << (SqlParser.STRING_LITERAL - 1032)) | (1 << (SqlParser.ID - 1032)) | (1 << (SqlParser.REVERSE_QUOTE_ID - 1032)))) !== 0)) {
+ this.state = 1588;
+ this.uid();
+ }
+
+ this.state = 1592;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.USING) {
+ this.state = 1591;
+ this.indexType();
+ }
+
+ this.state = 1594;
+ this.indexColumnNames();
+ this.state = 1598;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.USING || _la===SqlParser.WITH || _la===SqlParser.COMMENT || _la===SqlParser.INVISIBLE || _la===SqlParser.KEY_BLOCK_SIZE || _la===SqlParser.VISIBLE) {
+ this.state = 1595;
+ this.indexOption();
+ this.state = 1600;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+ case SqlParser.FULLTEXT:
+ case SqlParser.SPATIAL:
+ localctx = new SpecialIndexDeclarationContext(this, localctx);
+ this.enterOuterAlt(localctx, 2);
+ this.state = 1601;
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.FULLTEXT || _la===SqlParser.SPATIAL)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 1603;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.INDEX || _la===SqlParser.KEY) {
+ this.state = 1602;
+ localctx.indexFormat = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.INDEX || _la===SqlParser.KEY)) {
+ localctx.indexFormat = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 1606;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (SqlParser.CURRENT - 32)) | (1 << (SqlParser.DATABASE - 32)) | (1 << (SqlParser.DIAGNOSTICS - 32)))) !== 0) || _la===SqlParser.LEFT || _la===SqlParser.NUMBER || _la===SqlParser.RIGHT || _la===SqlParser.STACKED || ((((_la - 199)) & ~0x1f) == 0 && ((1 << (_la - 199)) & ((1 << (SqlParser.DATE - 199)) | (1 << (SqlParser.TIME - 199)) | (1 << (SqlParser.TIMESTAMP - 199)) | (1 << (SqlParser.DATETIME - 199)) | (1 << (SqlParser.YEAR - 199)) | (1 << (SqlParser.TEXT - 199)) | (1 << (SqlParser.ENUM - 199)) | (1 << (SqlParser.SERIAL - 199)))) !== 0) || ((((_la - 233)) & ~0x1f) == 0 && ((1 << (_la - 233)) & ((1 << (SqlParser.JSON_VALID - 233)) | (1 << (SqlParser.JSON_SCHEMA_VALID - 233)) | (1 << (SqlParser.COUNT - 233)) | (1 << (SqlParser.POSITION - 233)))) !== 0) || ((((_la - 270)) & ~0x1f) == 0 && ((1 << (_la - 270)) & ((1 << (SqlParser.ACCOUNT - 270)) | (1 << (SqlParser.ACTION - 270)) | (1 << (SqlParser.AFTER - 270)) | (1 << (SqlParser.AGGREGATE - 270)) | (1 << (SqlParser.ALGORITHM - 270)) | (1 << (SqlParser.ANY - 270)) | (1 << (SqlParser.AT - 270)) | (1 << (SqlParser.AUTHORS - 270)) | (1 << (SqlParser.AUTOCOMMIT - 270)) | (1 << (SqlParser.AUTOEXTEND_SIZE - 270)) | (1 << (SqlParser.AUTO_INCREMENT - 270)) | (1 << (SqlParser.AVG_ROW_LENGTH - 270)) | (1 << (SqlParser.BEGIN - 270)) | (1 << (SqlParser.BINLOG - 270)) | (1 << (SqlParser.BIT - 270)) | (1 << (SqlParser.BLOCK - 270)) | (1 << (SqlParser.BOOL - 270)) | (1 << (SqlParser.BOOLEAN - 270)) | (1 << (SqlParser.BTREE - 270)) | (1 << (SqlParser.CACHE - 270)) | (1 << (SqlParser.CASCADED - 270)) | (1 << (SqlParser.CHAIN - 270)) | (1 << (SqlParser.CHANGED - 270)) | (1 << (SqlParser.CHANNEL - 270)) | (1 << (SqlParser.CHECKSUM - 270)) | (1 << (SqlParser.PAGE_CHECKSUM - 270)) | (1 << (SqlParser.CIPHER - 270)) | (1 << (SqlParser.CLASS_ORIGIN - 270)) | (1 << (SqlParser.CLIENT - 270)) | (1 << (SqlParser.CLOSE - 270)) | (1 << (SqlParser.COALESCE - 270)) | (1 << (SqlParser.CODE - 270)))) !== 0) || ((((_la - 302)) & ~0x1f) == 0 && ((1 << (_la - 302)) & ((1 << (SqlParser.COLUMNS - 302)) | (1 << (SqlParser.COLUMN_FORMAT - 302)) | (1 << (SqlParser.COLUMN_NAME - 302)) | (1 << (SqlParser.COMMENT - 302)) | (1 << (SqlParser.COMMIT - 302)) | (1 << (SqlParser.COMPACT - 302)) | (1 << (SqlParser.COMPLETION - 302)) | (1 << (SqlParser.COMPRESSED - 302)) | (1 << (SqlParser.COMPRESSION - 302)) | (1 << (SqlParser.CONCURRENT - 302)) | (1 << (SqlParser.CONNECTION - 302)) | (1 << (SqlParser.CONSISTENT - 302)) | (1 << (SqlParser.CONSTRAINT_CATALOG - 302)) | (1 << (SqlParser.CONSTRAINT_SCHEMA - 302)) | (1 << (SqlParser.CONSTRAINT_NAME - 302)) | (1 << (SqlParser.CONTAINS - 302)) | (1 << (SqlParser.CONTEXT - 302)) | (1 << (SqlParser.CONTRIBUTORS - 302)) | (1 << (SqlParser.COPY - 302)) | (1 << (SqlParser.CPU - 302)) | (1 << (SqlParser.CURSOR_NAME - 302)) | (1 << (SqlParser.DATA - 302)) | (1 << (SqlParser.DATAFILE - 302)) | (1 << (SqlParser.DEALLOCATE - 302)) | (1 << (SqlParser.DEFAULT_AUTH - 302)) | (1 << (SqlParser.DEFINER - 302)) | (1 << (SqlParser.DELAY_KEY_WRITE - 302)) | (1 << (SqlParser.DES_KEY_FILE - 302)) | (1 << (SqlParser.DIRECTORY - 302)) | (1 << (SqlParser.DISABLE - 302)) | (1 << (SqlParser.DISCARD - 302)) | (1 << (SqlParser.DISK - 302)))) !== 0) || ((((_la - 334)) & ~0x1f) == 0 && ((1 << (_la - 334)) & ((1 << (SqlParser.DO - 334)) | (1 << (SqlParser.DUMPFILE - 334)) | (1 << (SqlParser.DUPLICATE - 334)) | (1 << (SqlParser.DYNAMIC - 334)) | (1 << (SqlParser.ENABLE - 334)) | (1 << (SqlParser.ENCRYPTION - 334)) | (1 << (SqlParser.END - 334)) | (1 << (SqlParser.ENDS - 334)) | (1 << (SqlParser.ENGINE - 334)) | (1 << (SqlParser.ENGINES - 334)) | (1 << (SqlParser.ERROR - 334)) | (1 << (SqlParser.ERRORS - 334)) | (1 << (SqlParser.ESCAPE - 334)) | (1 << (SqlParser.EVEN - 334)) | (1 << (SqlParser.EVENT - 334)) | (1 << (SqlParser.EVENTS - 334)) | (1 << (SqlParser.EVERY - 334)) | (1 << (SqlParser.EXCHANGE - 334)) | (1 << (SqlParser.EXCLUSIVE - 334)) | (1 << (SqlParser.EXPIRE - 334)) | (1 << (SqlParser.EXPORT - 334)) | (1 << (SqlParser.EXTENDED - 334)) | (1 << (SqlParser.EXTENT_SIZE - 334)) | (1 << (SqlParser.FAST - 334)) | (1 << (SqlParser.FAULTS - 334)) | (1 << (SqlParser.FIELDS - 334)) | (1 << (SqlParser.FILE_BLOCK_SIZE - 334)) | (1 << (SqlParser.FILTER - 334)) | (1 << (SqlParser.FIRST - 334)) | (1 << (SqlParser.FIXED - 334)) | (1 << (SqlParser.FLUSH - 334)) | (1 << (SqlParser.FOLLOWS - 334)))) !== 0) || ((((_la - 366)) & ~0x1f) == 0 && ((1 << (_la - 366)) & ((1 << (SqlParser.FOUND - 366)) | (1 << (SqlParser.FULL - 366)) | (1 << (SqlParser.FUNCTION - 366)) | (1 << (SqlParser.GENERAL - 366)) | (1 << (SqlParser.GLOBAL - 366)) | (1 << (SqlParser.GRANTS - 366)) | (1 << (SqlParser.GROUP_REPLICATION - 366)) | (1 << (SqlParser.HANDLER - 366)) | (1 << (SqlParser.HASH - 366)) | (1 << (SqlParser.HELP - 366)) | (1 << (SqlParser.HOST - 366)) | (1 << (SqlParser.HOSTS - 366)) | (1 << (SqlParser.IDENTIFIED - 366)) | (1 << (SqlParser.IGNORE_SERVER_IDS - 366)) | (1 << (SqlParser.IMPORT - 366)) | (1 << (SqlParser.INDEXES - 366)) | (1 << (SqlParser.INITIAL_SIZE - 366)) | (1 << (SqlParser.INPLACE - 366)) | (1 << (SqlParser.INSERT_METHOD - 366)) | (1 << (SqlParser.INSTALL - 366)) | (1 << (SqlParser.INSTANCE - 366)) | (1 << (SqlParser.INVISIBLE - 366)) | (1 << (SqlParser.INVOKER - 366)) | (1 << (SqlParser.IO - 366)) | (1 << (SqlParser.IO_THREAD - 366)) | (1 << (SqlParser.IPC - 366)) | (1 << (SqlParser.ISOLATION - 366)) | (1 << (SqlParser.ISSUER - 366)) | (1 << (SqlParser.JSON - 366)) | (1 << (SqlParser.KEY_BLOCK_SIZE - 366)) | (1 << (SqlParser.LANGUAGE - 366)) | (1 << (SqlParser.LAST - 366)))) !== 0) || ((((_la - 398)) & ~0x1f) == 0 && ((1 << (_la - 398)) & ((1 << (SqlParser.LEAVES - 398)) | (1 << (SqlParser.LESS - 398)) | (1 << (SqlParser.LEVEL - 398)) | (1 << (SqlParser.LIST - 398)) | (1 << (SqlParser.LOCAL - 398)) | (1 << (SqlParser.LOGFILE - 398)) | (1 << (SqlParser.LOGS - 398)) | (1 << (SqlParser.MASTER - 398)) | (1 << (SqlParser.MASTER_AUTO_POSITION - 398)) | (1 << (SqlParser.MASTER_CONNECT_RETRY - 398)) | (1 << (SqlParser.MASTER_DELAY - 398)) | (1 << (SqlParser.MASTER_HEARTBEAT_PERIOD - 398)) | (1 << (SqlParser.MASTER_HOST - 398)) | (1 << (SqlParser.MASTER_LOG_FILE - 398)) | (1 << (SqlParser.MASTER_LOG_POS - 398)) | (1 << (SqlParser.MASTER_PASSWORD - 398)) | (1 << (SqlParser.MASTER_PORT - 398)) | (1 << (SqlParser.MASTER_RETRY_COUNT - 398)) | (1 << (SqlParser.MASTER_SSL - 398)) | (1 << (SqlParser.MASTER_SSL_CA - 398)) | (1 << (SqlParser.MASTER_SSL_CAPATH - 398)) | (1 << (SqlParser.MASTER_SSL_CERT - 398)) | (1 << (SqlParser.MASTER_SSL_CIPHER - 398)) | (1 << (SqlParser.MASTER_SSL_CRL - 398)) | (1 << (SqlParser.MASTER_SSL_CRLPATH - 398)) | (1 << (SqlParser.MASTER_SSL_KEY - 398)) | (1 << (SqlParser.MASTER_TLS_VERSION - 398)) | (1 << (SqlParser.MASTER_USER - 398)) | (1 << (SqlParser.MAX_CONNECTIONS_PER_HOUR - 398)) | (1 << (SqlParser.MAX_QUERIES_PER_HOUR - 398)) | (1 << (SqlParser.MAX_ROWS - 398)) | (1 << (SqlParser.MAX_SIZE - 398)))) !== 0) || ((((_la - 430)) & ~0x1f) == 0 && ((1 << (_la - 430)) & ((1 << (SqlParser.MAX_UPDATES_PER_HOUR - 430)) | (1 << (SqlParser.MAX_USER_CONNECTIONS - 430)) | (1 << (SqlParser.MEDIUM - 430)) | (1 << (SqlParser.MERGE - 430)) | (1 << (SqlParser.MESSAGE_TEXT - 430)) | (1 << (SqlParser.MID - 430)) | (1 << (SqlParser.MIGRATE - 430)) | (1 << (SqlParser.MIN_ROWS - 430)) | (1 << (SqlParser.MODE - 430)) | (1 << (SqlParser.MODIFY - 430)) | (1 << (SqlParser.MUTEX - 430)) | (1 << (SqlParser.MYSQL - 430)) | (1 << (SqlParser.MYSQL_ERRNO - 430)) | (1 << (SqlParser.NAME - 430)) | (1 << (SqlParser.NAMES - 430)) | (1 << (SqlParser.NCHAR - 430)) | (1 << (SqlParser.NEVER - 430)) | (1 << (SqlParser.NEXT - 430)) | (1 << (SqlParser.NO - 430)) | (1 << (SqlParser.NODEGROUP - 430)) | (1 << (SqlParser.NONE - 430)) | (1 << (SqlParser.OFFLINE - 430)) | (1 << (SqlParser.OFFSET - 430)) | (1 << (SqlParser.OJ - 430)) | (1 << (SqlParser.OLD_PASSWORD - 430)) | (1 << (SqlParser.ONE - 430)) | (1 << (SqlParser.ONLINE - 430)) | (1 << (SqlParser.ONLY - 430)) | (1 << (SqlParser.OPEN - 430)) | (1 << (SqlParser.OPTIMIZER_COSTS - 430)) | (1 << (SqlParser.OPTIONS - 430)) | (1 << (SqlParser.OWNER - 430)))) !== 0) || ((((_la - 462)) & ~0x1f) == 0 && ((1 << (_la - 462)) & ((1 << (SqlParser.PACK_KEYS - 462)) | (1 << (SqlParser.PAGE - 462)) | (1 << (SqlParser.PARSER - 462)) | (1 << (SqlParser.PARTIAL - 462)) | (1 << (SqlParser.PARTITIONING - 462)) | (1 << (SqlParser.PARTITIONS - 462)) | (1 << (SqlParser.PASSWORD - 462)) | (1 << (SqlParser.PHASE - 462)) | (1 << (SqlParser.PLUGIN - 462)) | (1 << (SqlParser.PLUGIN_DIR - 462)) | (1 << (SqlParser.PLUGINS - 462)) | (1 << (SqlParser.PORT - 462)) | (1 << (SqlParser.PRECEDES - 462)) | (1 << (SqlParser.PREPARE - 462)) | (1 << (SqlParser.PRESERVE - 462)) | (1 << (SqlParser.PREV - 462)) | (1 << (SqlParser.PROCESSLIST - 462)) | (1 << (SqlParser.PROFILE - 462)) | (1 << (SqlParser.PROFILES - 462)) | (1 << (SqlParser.PROXY - 462)) | (1 << (SqlParser.QUERY - 462)) | (1 << (SqlParser.QUICK - 462)) | (1 << (SqlParser.REBUILD - 462)) | (1 << (SqlParser.RECOVER - 462)) | (1 << (SqlParser.REDO_BUFFER_SIZE - 462)) | (1 << (SqlParser.REDUNDANT - 462)) | (1 << (SqlParser.RELAY - 462)) | (1 << (SqlParser.RELAY_LOG_FILE - 462)) | (1 << (SqlParser.RELAY_LOG_POS - 462)) | (1 << (SqlParser.RELAYLOG - 462)) | (1 << (SqlParser.REMOVE - 462)) | (1 << (SqlParser.REORGANIZE - 462)))) !== 0) || ((((_la - 494)) & ~0x1f) == 0 && ((1 << (_la - 494)) & ((1 << (SqlParser.REPAIR - 494)) | (1 << (SqlParser.REPLICATE_DO_DB - 494)) | (1 << (SqlParser.REPLICATE_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_DB - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATE_REWRITE_DB - 494)) | (1 << (SqlParser.REPLICATE_WILD_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_WILD_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATION - 494)) | (1 << (SqlParser.RESET - 494)) | (1 << (SqlParser.RESUME - 494)) | (1 << (SqlParser.RETURNED_SQLSTATE - 494)) | (1 << (SqlParser.RETURNS - 494)) | (1 << (SqlParser.ROLE - 494)) | (1 << (SqlParser.ROLLBACK - 494)) | (1 << (SqlParser.ROLLUP - 494)) | (1 << (SqlParser.ROTATE - 494)) | (1 << (SqlParser.ROW - 494)) | (1 << (SqlParser.ROWS - 494)) | (1 << (SqlParser.ROW_FORMAT - 494)) | (1 << (SqlParser.SAVEPOINT - 494)) | (1 << (SqlParser.SCHEDULE - 494)) | (1 << (SqlParser.SECURITY - 494)) | (1 << (SqlParser.SERVER - 494)) | (1 << (SqlParser.SESSION - 494)) | (1 << (SqlParser.SHARE - 494)) | (1 << (SqlParser.SHARED - 494)) | (1 << (SqlParser.SIGNED - 494)) | (1 << (SqlParser.SIMPLE - 494)) | (1 << (SqlParser.SLAVE - 494)) | (1 << (SqlParser.SLOW - 494)) | (1 << (SqlParser.SNAPSHOT - 494)))) !== 0) || ((((_la - 526)) & ~0x1f) == 0 && ((1 << (_la - 526)) & ((1 << (SqlParser.SOCKET - 526)) | (1 << (SqlParser.SOME - 526)) | (1 << (SqlParser.SONAME - 526)) | (1 << (SqlParser.SOUNDS - 526)) | (1 << (SqlParser.SOURCE - 526)) | (1 << (SqlParser.SQL_AFTER_GTIDS - 526)) | (1 << (SqlParser.SQL_AFTER_MTS_GAPS - 526)) | (1 << (SqlParser.SQL_BEFORE_GTIDS - 526)) | (1 << (SqlParser.SQL_BUFFER_RESULT - 526)) | (1 << (SqlParser.SQL_CACHE - 526)) | (1 << (SqlParser.SQL_NO_CACHE - 526)) | (1 << (SqlParser.SQL_THREAD - 526)) | (1 << (SqlParser.START - 526)) | (1 << (SqlParser.STARTS - 526)) | (1 << (SqlParser.STATS_AUTO_RECALC - 526)) | (1 << (SqlParser.STATS_PERSISTENT - 526)) | (1 << (SqlParser.STATS_SAMPLE_PAGES - 526)) | (1 << (SqlParser.STATUS - 526)) | (1 << (SqlParser.STOP - 526)) | (1 << (SqlParser.STORAGE - 526)) | (1 << (SqlParser.STRING - 526)) | (1 << (SqlParser.SUBCLASS_ORIGIN - 526)) | (1 << (SqlParser.SUBJECT - 526)) | (1 << (SqlParser.SUBPARTITION - 526)) | (1 << (SqlParser.SUBPARTITIONS - 526)) | (1 << (SqlParser.SUSPEND - 526)) | (1 << (SqlParser.SWAPS - 526)) | (1 << (SqlParser.SWITCHES - 526)) | (1 << (SqlParser.TABLE_NAME - 526)) | (1 << (SqlParser.TABLESPACE - 526)) | (1 << (SqlParser.TEMPORARY - 526)))) !== 0) || ((((_la - 558)) & ~0x1f) == 0 && ((1 << (_la - 558)) & ((1 << (SqlParser.TEMPTABLE - 558)) | (1 << (SqlParser.THAN - 558)) | (1 << (SqlParser.TRADITIONAL - 558)) | (1 << (SqlParser.TRANSACTION - 558)) | (1 << (SqlParser.TRANSACTIONAL - 558)) | (1 << (SqlParser.TRIGGERS - 558)) | (1 << (SqlParser.TRUNCATE - 558)) | (1 << (SqlParser.UNDEFINED - 558)) | (1 << (SqlParser.UNDOFILE - 558)) | (1 << (SqlParser.UNDO_BUFFER_SIZE - 558)) | (1 << (SqlParser.UNINSTALL - 558)) | (1 << (SqlParser.UNKNOWN - 558)) | (1 << (SqlParser.UNTIL - 558)) | (1 << (SqlParser.UPGRADE - 558)) | (1 << (SqlParser.USER - 558)) | (1 << (SqlParser.USE_FRM - 558)) | (1 << (SqlParser.USER_RESOURCES - 558)) | (1 << (SqlParser.VALIDATION - 558)) | (1 << (SqlParser.VALUE - 558)) | (1 << (SqlParser.VARIABLES - 558)) | (1 << (SqlParser.VIEW - 558)) | (1 << (SqlParser.VISIBLE - 558)) | (1 << (SqlParser.WAIT - 558)) | (1 << (SqlParser.WARNINGS - 558)) | (1 << (SqlParser.WITHOUT - 558)) | (1 << (SqlParser.WORK - 558)) | (1 << (SqlParser.WRAPPER - 558)) | (1 << (SqlParser.X509 - 558)) | (1 << (SqlParser.XA - 558)) | (1 << (SqlParser.XML - 558)))) !== 0) || ((((_la - 593)) & ~0x1f) == 0 && ((1 << (_la - 593)) & ((1 << (SqlParser.INTERNAL - 593)) | (1 << (SqlParser.QUARTER - 593)) | (1 << (SqlParser.MONTH - 593)) | (1 << (SqlParser.DAY - 593)) | (1 << (SqlParser.HOUR - 593)) | (1 << (SqlParser.MINUTE - 593)) | (1 << (SqlParser.WEEK - 593)) | (1 << (SqlParser.SECOND - 593)) | (1 << (SqlParser.MICROSECOND - 593)) | (1 << (SqlParser.TABLES - 593)) | (1 << (SqlParser.ROUTINE - 593)) | (1 << (SqlParser.EXECUTE - 593)) | (1 << (SqlParser.FILE - 593)) | (1 << (SqlParser.PROCESS - 593)) | (1 << (SqlParser.RELOAD - 593)) | (1 << (SqlParser.SHUTDOWN - 593)) | (1 << (SqlParser.SUPER - 593)) | (1 << (SqlParser.PRIVILEGES - 593)) | (1 << (SqlParser.AUDIT_ADMIN - 593)) | (1 << (SqlParser.BACKUP_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ENCRYPTION_ADMIN - 593)) | (1 << (SqlParser.CLONE_ADMIN - 593)) | (1 << (SqlParser.CONNECTION_ADMIN - 593)) | (1 << (SqlParser.ENCRYPTION_KEY_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_USER - 593)) | (1 << (SqlParser.GROUP_REPLICATION_ADMIN - 593)) | (1 << (SqlParser.INNODB_REDO_LOG_ARCHIVE - 593)) | (1 << (SqlParser.NDB_STORED_USER - 593)) | (1 << (SqlParser.PERSIST_RO_VARIABLES_ADMIN - 593)))) !== 0) || ((((_la - 625)) & ~0x1f) == 0 && ((1 << (_la - 625)) & ((1 << (SqlParser.REPLICATION_APPLIER - 625)) | (1 << (SqlParser.REPLICATION_SLAVE_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_USER - 625)) | (1 << (SqlParser.ROLE_ADMIN - 625)) | (1 << (SqlParser.SESSION_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.SET_USER_ID - 625)) | (1 << (SqlParser.SHOW_ROUTINE - 625)) | (1 << (SqlParser.SYSTEM_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.TABLE_ENCRYPTION_ADMIN - 625)) | (1 << (SqlParser.VERSION_TOKEN_ADMIN - 625)) | (1 << (SqlParser.XA_RECOVER_ADMIN - 625)) | (1 << (SqlParser.ARMSCII8 - 625)) | (1 << (SqlParser.ASCII - 625)) | (1 << (SqlParser.BIG5 - 625)) | (1 << (SqlParser.CP1250 - 625)) | (1 << (SqlParser.CP1251 - 625)) | (1 << (SqlParser.CP1256 - 625)) | (1 << (SqlParser.CP1257 - 625)) | (1 << (SqlParser.CP850 - 625)) | (1 << (SqlParser.CP852 - 625)) | (1 << (SqlParser.CP866 - 625)) | (1 << (SqlParser.CP932 - 625)) | (1 << (SqlParser.DEC8 - 625)) | (1 << (SqlParser.EUCJPMS - 625)) | (1 << (SqlParser.EUCKR - 625)) | (1 << (SqlParser.GB2312 - 625)) | (1 << (SqlParser.GBK - 625)) | (1 << (SqlParser.GEOSTD8 - 625)) | (1 << (SqlParser.GREEK - 625)) | (1 << (SqlParser.HEBREW - 625)) | (1 << (SqlParser.HP8 - 625)))) !== 0) || ((((_la - 657)) & ~0x1f) == 0 && ((1 << (_la - 657)) & ((1 << (SqlParser.KEYBCS2 - 657)) | (1 << (SqlParser.KOI8R - 657)) | (1 << (SqlParser.KOI8U - 657)) | (1 << (SqlParser.LATIN1 - 657)) | (1 << (SqlParser.LATIN2 - 657)) | (1 << (SqlParser.LATIN5 - 657)) | (1 << (SqlParser.LATIN7 - 657)) | (1 << (SqlParser.MACCE - 657)) | (1 << (SqlParser.MACROMAN - 657)) | (1 << (SqlParser.SJIS - 657)) | (1 << (SqlParser.SWE7 - 657)) | (1 << (SqlParser.TIS620 - 657)) | (1 << (SqlParser.UCS2 - 657)) | (1 << (SqlParser.UJIS - 657)) | (1 << (SqlParser.UTF16 - 657)) | (1 << (SqlParser.UTF16LE - 657)) | (1 << (SqlParser.UTF32 - 657)) | (1 << (SqlParser.UTF8 - 657)) | (1 << (SqlParser.UTF8MB3 - 657)) | (1 << (SqlParser.UTF8MB4 - 657)) | (1 << (SqlParser.ARCHIVE - 657)) | (1 << (SqlParser.BLACKHOLE - 657)) | (1 << (SqlParser.CSV - 657)) | (1 << (SqlParser.FEDERATED - 657)) | (1 << (SqlParser.INNODB - 657)) | (1 << (SqlParser.MEMORY - 657)) | (1 << (SqlParser.MRG_MYISAM - 657)) | (1 << (SqlParser.MYISAM - 657)) | (1 << (SqlParser.NDB - 657)) | (1 << (SqlParser.NDBCLUSTER - 657)) | (1 << (SqlParser.PERFORMANCE_SCHEMA - 657)) | (1 << (SqlParser.TOKUDB - 657)))) !== 0) || ((((_la - 689)) & ~0x1f) == 0 && ((1 << (_la - 689)) & ((1 << (SqlParser.REPEATABLE - 689)) | (1 << (SqlParser.COMMITTED - 689)) | (1 << (SqlParser.UNCOMMITTED - 689)) | (1 << (SqlParser.SERIALIZABLE - 689)) | (1 << (SqlParser.GEOMETRYCOLLECTION - 689)) | (1 << (SqlParser.LINESTRING - 689)) | (1 << (SqlParser.MULTILINESTRING - 689)) | (1 << (SqlParser.MULTIPOINT - 689)) | (1 << (SqlParser.MULTIPOLYGON - 689)) | (1 << (SqlParser.POINT - 689)) | (1 << (SqlParser.POLYGON - 689)) | (1 << (SqlParser.ABS - 689)) | (1 << (SqlParser.ACOS - 689)) | (1 << (SqlParser.ADDDATE - 689)) | (1 << (SqlParser.ADDTIME - 689)) | (1 << (SqlParser.AES_DECRYPT - 689)) | (1 << (SqlParser.AES_ENCRYPT - 689)) | (1 << (SqlParser.AREA - 689)) | (1 << (SqlParser.ASBINARY - 689)) | (1 << (SqlParser.ASIN - 689)) | (1 << (SqlParser.ASTEXT - 689)) | (1 << (SqlParser.ASWKB - 689)) | (1 << (SqlParser.ASWKT - 689)) | (1 << (SqlParser.ASYMMETRIC_DECRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_DERIVE - 689)) | (1 << (SqlParser.ASYMMETRIC_ENCRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_SIGN - 689)) | (1 << (SqlParser.ASYMMETRIC_VERIFY - 689)) | (1 << (SqlParser.ATAN - 689)) | (1 << (SqlParser.ATAN2 - 689)))) !== 0) || ((((_la - 721)) & ~0x1f) == 0 && ((1 << (_la - 721)) & ((1 << (SqlParser.BENCHMARK - 721)) | (1 << (SqlParser.BIN - 721)) | (1 << (SqlParser.BIT_COUNT - 721)) | (1 << (SqlParser.BIT_LENGTH - 721)) | (1 << (SqlParser.BUFFER - 721)) | (1 << (SqlParser.CATALOG_NAME - 721)) | (1 << (SqlParser.CEIL - 721)) | (1 << (SqlParser.CEILING - 721)) | (1 << (SqlParser.CENTROID - 721)) | (1 << (SqlParser.CHARACTER_LENGTH - 721)) | (1 << (SqlParser.CHARSET - 721)) | (1 << (SqlParser.CHAR_LENGTH - 721)) | (1 << (SqlParser.COERCIBILITY - 721)) | (1 << (SqlParser.COLLATION - 721)) | (1 << (SqlParser.COMPRESS - 721)) | (1 << (SqlParser.CONCAT - 721)) | (1 << (SqlParser.CONCAT_WS - 721)) | (1 << (SqlParser.CONNECTION_ID - 721)) | (1 << (SqlParser.CONV - 721)) | (1 << (SqlParser.CONVERT_TZ - 721)) | (1 << (SqlParser.COS - 721)) | (1 << (SqlParser.COT - 721)) | (1 << (SqlParser.CRC32 - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PRIV_KEY - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PUB_KEY - 721)) | (1 << (SqlParser.CREATE_DH_PARAMETERS - 721)) | (1 << (SqlParser.CREATE_DIGEST - 721)) | (1 << (SqlParser.CROSSES - 721)) | (1 << (SqlParser.DATEDIFF - 721)) | (1 << (SqlParser.DATE_FORMAT - 721)) | (1 << (SqlParser.DAYNAME - 721)) | (1 << (SqlParser.DAYOFMONTH - 721)))) !== 0) || ((((_la - 753)) & ~0x1f) == 0 && ((1 << (_la - 753)) & ((1 << (SqlParser.DAYOFWEEK - 753)) | (1 << (SqlParser.DAYOFYEAR - 753)) | (1 << (SqlParser.DECODE - 753)) | (1 << (SqlParser.DEGREES - 753)) | (1 << (SqlParser.DES_DECRYPT - 753)) | (1 << (SqlParser.DES_ENCRYPT - 753)) | (1 << (SqlParser.DIMENSION - 753)) | (1 << (SqlParser.DISJOINT - 753)) | (1 << (SqlParser.ELT - 753)) | (1 << (SqlParser.ENCODE - 753)) | (1 << (SqlParser.ENCRYPT - 753)) | (1 << (SqlParser.ENDPOINT - 753)) | (1 << (SqlParser.ENVELOPE - 753)) | (1 << (SqlParser.EQUALS - 753)) | (1 << (SqlParser.EXP - 753)) | (1 << (SqlParser.EXPORT_SET - 753)) | (1 << (SqlParser.EXTERIORRING - 753)) | (1 << (SqlParser.EXTRACTVALUE - 753)) | (1 << (SqlParser.FIELD - 753)) | (1 << (SqlParser.FIND_IN_SET - 753)) | (1 << (SqlParser.FLOOR - 753)) | (1 << (SqlParser.FORMAT - 753)) | (1 << (SqlParser.FOUND_ROWS - 753)) | (1 << (SqlParser.FROM_BASE64 - 753)) | (1 << (SqlParser.FROM_DAYS - 753)) | (1 << (SqlParser.FROM_UNIXTIME - 753)) | (1 << (SqlParser.GEOMCOLLFROMTEXT - 753)) | (1 << (SqlParser.GEOMCOLLFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYFROMWKB - 753)))) !== 0) || ((((_la - 785)) & ~0x1f) == 0 && ((1 << (_la - 785)) & ((1 << (SqlParser.GEOMETRYN - 785)) | (1 << (SqlParser.GEOMETRYTYPE - 785)) | (1 << (SqlParser.GEOMFROMTEXT - 785)) | (1 << (SqlParser.GEOMFROMWKB - 785)) | (1 << (SqlParser.GET_FORMAT - 785)) | (1 << (SqlParser.GET_LOCK - 785)) | (1 << (SqlParser.GLENGTH - 785)) | (1 << (SqlParser.GREATEST - 785)) | (1 << (SqlParser.GTID_SUBSET - 785)) | (1 << (SqlParser.GTID_SUBTRACT - 785)) | (1 << (SqlParser.HEX - 785)) | (1 << (SqlParser.IFNULL - 785)) | (1 << (SqlParser.INET6_ATON - 785)) | (1 << (SqlParser.INET6_NTOA - 785)) | (1 << (SqlParser.INET_ATON - 785)) | (1 << (SqlParser.INET_NTOA - 785)) | (1 << (SqlParser.INSTR - 785)) | (1 << (SqlParser.INTERIORRINGN - 785)) | (1 << (SqlParser.INTERSECTS - 785)) | (1 << (SqlParser.ISCLOSED - 785)) | (1 << (SqlParser.ISEMPTY - 785)) | (1 << (SqlParser.ISNULL - 785)) | (1 << (SqlParser.ISSIMPLE - 785)) | (1 << (SqlParser.IS_FREE_LOCK - 785)) | (1 << (SqlParser.IS_IPV4 - 785)) | (1 << (SqlParser.IS_IPV4_COMPAT - 785)) | (1 << (SqlParser.IS_IPV4_MAPPED - 785)) | (1 << (SqlParser.IS_IPV6 - 785)) | (1 << (SqlParser.IS_USED_LOCK - 785)) | (1 << (SqlParser.LAST_INSERT_ID - 785)) | (1 << (SqlParser.LCASE - 785)) | (1 << (SqlParser.LEAST - 785)))) !== 0) || ((((_la - 817)) & ~0x1f) == 0 && ((1 << (_la - 817)) & ((1 << (SqlParser.LENGTH - 817)) | (1 << (SqlParser.LINEFROMTEXT - 817)) | (1 << (SqlParser.LINEFROMWKB - 817)) | (1 << (SqlParser.LINESTRINGFROMTEXT - 817)) | (1 << (SqlParser.LINESTRINGFROMWKB - 817)) | (1 << (SqlParser.LN - 817)) | (1 << (SqlParser.LOAD_FILE - 817)) | (1 << (SqlParser.LOCATE - 817)) | (1 << (SqlParser.LOG - 817)) | (1 << (SqlParser.LOG10 - 817)) | (1 << (SqlParser.LOG2 - 817)) | (1 << (SqlParser.LOWER - 817)) | (1 << (SqlParser.LPAD - 817)) | (1 << (SqlParser.LTRIM - 817)) | (1 << (SqlParser.MAKEDATE - 817)) | (1 << (SqlParser.MAKETIME - 817)) | (1 << (SqlParser.MAKE_SET - 817)) | (1 << (SqlParser.MASTER_POS_WAIT - 817)) | (1 << (SqlParser.MBRCONTAINS - 817)) | (1 << (SqlParser.MBRDISJOINT - 817)) | (1 << (SqlParser.MBREQUAL - 817)) | (1 << (SqlParser.MBRINTERSECTS - 817)) | (1 << (SqlParser.MBROVERLAPS - 817)) | (1 << (SqlParser.MBRTOUCHES - 817)) | (1 << (SqlParser.MBRWITHIN - 817)) | (1 << (SqlParser.MD5 - 817)) | (1 << (SqlParser.MLINEFROMTEXT - 817)) | (1 << (SqlParser.MLINEFROMWKB - 817)) | (1 << (SqlParser.MONTHNAME - 817)) | (1 << (SqlParser.MPOINTFROMTEXT - 817)) | (1 << (SqlParser.MPOINTFROMWKB - 817)) | (1 << (SqlParser.MPOLYFROMTEXT - 817)))) !== 0) || ((((_la - 849)) & ~0x1f) == 0 && ((1 << (_la - 849)) & ((1 << (SqlParser.MPOLYFROMWKB - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMTEXT - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMWKB - 849)) | (1 << (SqlParser.MULTIPOINTFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOINTFROMWKB - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMWKB - 849)) | (1 << (SqlParser.NAME_CONST - 849)) | (1 << (SqlParser.NULLIF - 849)) | (1 << (SqlParser.NUMGEOMETRIES - 849)) | (1 << (SqlParser.NUMINTERIORRINGS - 849)) | (1 << (SqlParser.NUMPOINTS - 849)) | (1 << (SqlParser.OCT - 849)) | (1 << (SqlParser.OCTET_LENGTH - 849)) | (1 << (SqlParser.ORD - 849)) | (1 << (SqlParser.OVERLAPS - 849)) | (1 << (SqlParser.PERIOD_ADD - 849)) | (1 << (SqlParser.PERIOD_DIFF - 849)) | (1 << (SqlParser.PI - 849)) | (1 << (SqlParser.POINTFROMTEXT - 849)) | (1 << (SqlParser.POINTFROMWKB - 849)) | (1 << (SqlParser.POINTN - 849)) | (1 << (SqlParser.POLYFROMTEXT - 849)) | (1 << (SqlParser.POLYFROMWKB - 849)) | (1 << (SqlParser.POLYGONFROMTEXT - 849)) | (1 << (SqlParser.POLYGONFROMWKB - 849)) | (1 << (SqlParser.POW - 849)) | (1 << (SqlParser.POWER - 849)) | (1 << (SqlParser.QUOTE - 849)) | (1 << (SqlParser.RADIANS - 849)) | (1 << (SqlParser.RAND - 849)) | (1 << (SqlParser.RANDOM_BYTES - 849)))) !== 0) || ((((_la - 881)) & ~0x1f) == 0 && ((1 << (_la - 881)) & ((1 << (SqlParser.RELEASE_LOCK - 881)) | (1 << (SqlParser.REVERSE - 881)) | (1 << (SqlParser.ROUND - 881)) | (1 << (SqlParser.ROW_COUNT - 881)) | (1 << (SqlParser.RPAD - 881)) | (1 << (SqlParser.RTRIM - 881)) | (1 << (SqlParser.SEC_TO_TIME - 881)) | (1 << (SqlParser.SESSION_USER - 881)) | (1 << (SqlParser.SHA - 881)) | (1 << (SqlParser.SHA1 - 881)) | (1 << (SqlParser.SHA2 - 881)) | (1 << (SqlParser.SCHEMA_NAME - 881)) | (1 << (SqlParser.SIGN - 881)) | (1 << (SqlParser.SIN - 881)) | (1 << (SqlParser.SLEEP - 881)) | (1 << (SqlParser.SOUNDEX - 881)) | (1 << (SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS - 881)) | (1 << (SqlParser.SQRT - 881)) | (1 << (SqlParser.SRID - 881)) | (1 << (SqlParser.STARTPOINT - 881)) | (1 << (SqlParser.STRCMP - 881)) | (1 << (SqlParser.STR_TO_DATE - 881)) | (1 << (SqlParser.ST_AREA - 881)) | (1 << (SqlParser.ST_ASBINARY - 881)) | (1 << (SqlParser.ST_ASTEXT - 881)) | (1 << (SqlParser.ST_ASWKB - 881)) | (1 << (SqlParser.ST_ASWKT - 881)) | (1 << (SqlParser.ST_BUFFER - 881)) | (1 << (SqlParser.ST_CENTROID - 881)) | (1 << (SqlParser.ST_CONTAINS - 881)) | (1 << (SqlParser.ST_CROSSES - 881)) | (1 << (SqlParser.ST_DIFFERENCE - 881)))) !== 0) || ((((_la - 913)) & ~0x1f) == 0 && ((1 << (_la - 913)) & ((1 << (SqlParser.ST_DIMENSION - 913)) | (1 << (SqlParser.ST_DISJOINT - 913)) | (1 << (SqlParser.ST_DISTANCE - 913)) | (1 << (SqlParser.ST_ENDPOINT - 913)) | (1 << (SqlParser.ST_ENVELOPE - 913)) | (1 << (SqlParser.ST_EQUALS - 913)) | (1 << (SqlParser.ST_EXTERIORRING - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYN - 913)) | (1 << (SqlParser.ST_GEOMETRYTYPE - 913)) | (1 << (SqlParser.ST_GEOMFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMFROMWKB - 913)) | (1 << (SqlParser.ST_INTERIORRINGN - 913)) | (1 << (SqlParser.ST_INTERSECTION - 913)) | (1 << (SqlParser.ST_INTERSECTS - 913)) | (1 << (SqlParser.ST_ISCLOSED - 913)) | (1 << (SqlParser.ST_ISEMPTY - 913)) | (1 << (SqlParser.ST_ISSIMPLE - 913)) | (1 << (SqlParser.ST_LINEFROMTEXT - 913)) | (1 << (SqlParser.ST_LINEFROMWKB - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMTEXT - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMWKB - 913)) | (1 << (SqlParser.ST_NUMGEOMETRIES - 913)) | (1 << (SqlParser.ST_NUMINTERIORRING - 913)) | (1 << (SqlParser.ST_NUMINTERIORRINGS - 913)) | (1 << (SqlParser.ST_NUMPOINTS - 913)))) !== 0) || ((((_la - 945)) & ~0x1f) == 0 && ((1 << (_la - 945)) & ((1 << (SqlParser.ST_OVERLAPS - 945)) | (1 << (SqlParser.ST_POINTFROMTEXT - 945)) | (1 << (SqlParser.ST_POINTFROMWKB - 945)) | (1 << (SqlParser.ST_POINTN - 945)) | (1 << (SqlParser.ST_POLYFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYFROMWKB - 945)) | (1 << (SqlParser.ST_POLYGONFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYGONFROMWKB - 945)) | (1 << (SqlParser.ST_SRID - 945)) | (1 << (SqlParser.ST_STARTPOINT - 945)) | (1 << (SqlParser.ST_SYMDIFFERENCE - 945)) | (1 << (SqlParser.ST_TOUCHES - 945)) | (1 << (SqlParser.ST_UNION - 945)) | (1 << (SqlParser.ST_WITHIN - 945)) | (1 << (SqlParser.ST_X - 945)) | (1 << (SqlParser.ST_Y - 945)) | (1 << (SqlParser.SUBDATE - 945)) | (1 << (SqlParser.SUBSTRING_INDEX - 945)) | (1 << (SqlParser.SUBTIME - 945)) | (1 << (SqlParser.SYSTEM_USER - 945)) | (1 << (SqlParser.TAN - 945)) | (1 << (SqlParser.TIMEDIFF - 945)) | (1 << (SqlParser.TIMESTAMPADD - 945)) | (1 << (SqlParser.TIMESTAMPDIFF - 945)) | (1 << (SqlParser.TIME_FORMAT - 945)) | (1 << (SqlParser.TIME_TO_SEC - 945)) | (1 << (SqlParser.TOUCHES - 945)) | (1 << (SqlParser.TO_BASE64 - 945)) | (1 << (SqlParser.TO_DAYS - 945)) | (1 << (SqlParser.TO_SECONDS - 945)) | (1 << (SqlParser.UCASE - 945)) | (1 << (SqlParser.UNCOMPRESS - 945)))) !== 0) || ((((_la - 977)) & ~0x1f) == 0 && ((1 << (_la - 977)) & ((1 << (SqlParser.UNCOMPRESSED_LENGTH - 977)) | (1 << (SqlParser.UNHEX - 977)) | (1 << (SqlParser.UNIX_TIMESTAMP - 977)) | (1 << (SqlParser.UPDATEXML - 977)) | (1 << (SqlParser.UPPER - 977)) | (1 << (SqlParser.UUID - 977)) | (1 << (SqlParser.UUID_SHORT - 977)) | (1 << (SqlParser.VALIDATE_PASSWORD_STRENGTH - 977)) | (1 << (SqlParser.VERSION - 977)) | (1 << (SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS - 977)) | (1 << (SqlParser.WEEKDAY - 977)) | (1 << (SqlParser.WEEKOFYEAR - 977)) | (1 << (SqlParser.WEIGHT_STRING - 977)) | (1 << (SqlParser.WITHIN - 977)) | (1 << (SqlParser.YEARWEEK - 977)) | (1 << (SqlParser.Y_FUNCTION - 977)) | (1 << (SqlParser.X_FUNCTION - 977)))) !== 0) || ((((_la - 1032)) & ~0x1f) == 0 && ((1 << (_la - 1032)) & ((1 << (SqlParser.CHARSET_REVERSE_QOUTE_STRING - 1032)) | (1 << (SqlParser.STRING_LITERAL - 1032)) | (1 << (SqlParser.ID - 1032)) | (1 << (SqlParser.REVERSE_QUOTE_ID - 1032)))) !== 0)) {
+ this.state = 1605;
+ this.uid();
+ }
+
+ this.state = 1608;
+ this.indexColumnNames();
+ this.state = 1612;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.USING || _la===SqlParser.WITH || _la===SqlParser.COMMENT || _la===SqlParser.INVISIBLE || _la===SqlParser.KEY_BLOCK_SIZE || _la===SqlParser.VISIBLE) {
+ this.state = 1609;
+ this.indexOption();
+ this.state = 1614;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function TableOptionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_tableOption;
+ return this;
+}
+
+TableOptionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+TableOptionContext.prototype.constructor = TableOptionContext;
+
+
+
+TableOptionContext.prototype.copyFrom = function(ctx) {
+ antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx);
+};
+
+
+function TableOptionEngineContext(parser, ctx) {
+ TableOptionContext.call(this, parser);
+ TableOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+TableOptionEngineContext.prototype = Object.create(TableOptionContext.prototype);
+TableOptionEngineContext.prototype.constructor = TableOptionEngineContext;
+
+SqlParser.TableOptionEngineContext = TableOptionEngineContext;
+
+TableOptionEngineContext.prototype.ENGINE = function() {
+ return this.getToken(SqlParser.ENGINE, 0);
+};
+
+TableOptionEngineContext.prototype.engineName = function() {
+ return this.getTypedRuleContext(EngineNameContext,0);
+};
+
+TableOptionEngineContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+TableOptionEngineContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterTableOptionEngine(this);
+ }
+};
+
+TableOptionEngineContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitTableOptionEngine(this);
+ }
+};
+
+TableOptionEngineContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitTableOptionEngine(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function TableOptionMaxRowsContext(parser, ctx) {
+ TableOptionContext.call(this, parser);
+ TableOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+TableOptionMaxRowsContext.prototype = Object.create(TableOptionContext.prototype);
+TableOptionMaxRowsContext.prototype.constructor = TableOptionMaxRowsContext;
+
+SqlParser.TableOptionMaxRowsContext = TableOptionMaxRowsContext;
+
+TableOptionMaxRowsContext.prototype.MAX_ROWS = function() {
+ return this.getToken(SqlParser.MAX_ROWS, 0);
+};
+
+TableOptionMaxRowsContext.prototype.decimalLiteral = function() {
+ return this.getTypedRuleContext(DecimalLiteralContext,0);
+};
+
+TableOptionMaxRowsContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+TableOptionMaxRowsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterTableOptionMaxRows(this);
+ }
+};
+
+TableOptionMaxRowsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitTableOptionMaxRows(this);
+ }
+};
+
+TableOptionMaxRowsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitTableOptionMaxRows(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function TableOptionCollateContext(parser, ctx) {
+ TableOptionContext.call(this, parser);
+ TableOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+TableOptionCollateContext.prototype = Object.create(TableOptionContext.prototype);
+TableOptionCollateContext.prototype.constructor = TableOptionCollateContext;
+
+SqlParser.TableOptionCollateContext = TableOptionCollateContext;
+
+TableOptionCollateContext.prototype.COLLATE = function() {
+ return this.getToken(SqlParser.COLLATE, 0);
+};
+
+TableOptionCollateContext.prototype.collationName = function() {
+ return this.getTypedRuleContext(CollationNameContext,0);
+};
+
+TableOptionCollateContext.prototype.DEFAULT = function() {
+ return this.getToken(SqlParser.DEFAULT, 0);
+};
+
+TableOptionCollateContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+TableOptionCollateContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterTableOptionCollate(this);
+ }
+};
+
+TableOptionCollateContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitTableOptionCollate(this);
+ }
+};
+
+TableOptionCollateContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitTableOptionCollate(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function TableOptionPersistentContext(parser, ctx) {
+ TableOptionContext.call(this, parser);
+ this.extBoolValue = null; // Token;
+ TableOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+TableOptionPersistentContext.prototype = Object.create(TableOptionContext.prototype);
+TableOptionPersistentContext.prototype.constructor = TableOptionPersistentContext;
+
+SqlParser.TableOptionPersistentContext = TableOptionPersistentContext;
+
+TableOptionPersistentContext.prototype.STATS_PERSISTENT = function() {
+ return this.getToken(SqlParser.STATS_PERSISTENT, 0);
+};
+
+TableOptionPersistentContext.prototype.DEFAULT = function() {
+ return this.getToken(SqlParser.DEFAULT, 0);
+};
+
+TableOptionPersistentContext.prototype.ZERO_DECIMAL = function() {
+ return this.getToken(SqlParser.ZERO_DECIMAL, 0);
+};
+
+TableOptionPersistentContext.prototype.ONE_DECIMAL = function() {
+ return this.getToken(SqlParser.ONE_DECIMAL, 0);
+};
+
+TableOptionPersistentContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+TableOptionPersistentContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterTableOptionPersistent(this);
+ }
+};
+
+TableOptionPersistentContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitTableOptionPersistent(this);
+ }
+};
+
+TableOptionPersistentContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitTableOptionPersistent(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function TableOptionTablespaceContext(parser, ctx) {
+ TableOptionContext.call(this, parser);
+ TableOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+TableOptionTablespaceContext.prototype = Object.create(TableOptionContext.prototype);
+TableOptionTablespaceContext.prototype.constructor = TableOptionTablespaceContext;
+
+SqlParser.TableOptionTablespaceContext = TableOptionTablespaceContext;
+
+TableOptionTablespaceContext.prototype.TABLESPACE = function() {
+ return this.getToken(SqlParser.TABLESPACE, 0);
+};
+
+TableOptionTablespaceContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+TableOptionTablespaceContext.prototype.tablespaceStorage = function() {
+ return this.getTypedRuleContext(TablespaceStorageContext,0);
+};
+TableOptionTablespaceContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterTableOptionTablespace(this);
+ }
+};
+
+TableOptionTablespaceContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitTableOptionTablespace(this);
+ }
+};
+
+TableOptionTablespaceContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitTableOptionTablespace(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function TableOptionPackKeysContext(parser, ctx) {
+ TableOptionContext.call(this, parser);
+ this.extBoolValue = null; // Token;
+ TableOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+TableOptionPackKeysContext.prototype = Object.create(TableOptionContext.prototype);
+TableOptionPackKeysContext.prototype.constructor = TableOptionPackKeysContext;
+
+SqlParser.TableOptionPackKeysContext = TableOptionPackKeysContext;
+
+TableOptionPackKeysContext.prototype.PACK_KEYS = function() {
+ return this.getToken(SqlParser.PACK_KEYS, 0);
+};
+
+TableOptionPackKeysContext.prototype.ZERO_DECIMAL = function() {
+ return this.getToken(SqlParser.ZERO_DECIMAL, 0);
+};
+
+TableOptionPackKeysContext.prototype.ONE_DECIMAL = function() {
+ return this.getToken(SqlParser.ONE_DECIMAL, 0);
+};
+
+TableOptionPackKeysContext.prototype.DEFAULT = function() {
+ return this.getToken(SqlParser.DEFAULT, 0);
+};
+
+TableOptionPackKeysContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+TableOptionPackKeysContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterTableOptionPackKeys(this);
+ }
+};
+
+TableOptionPackKeysContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitTableOptionPackKeys(this);
+ }
+};
+
+TableOptionPackKeysContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitTableOptionPackKeys(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function TableOptionPasswordContext(parser, ctx) {
+ TableOptionContext.call(this, parser);
+ TableOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+TableOptionPasswordContext.prototype = Object.create(TableOptionContext.prototype);
+TableOptionPasswordContext.prototype.constructor = TableOptionPasswordContext;
+
+SqlParser.TableOptionPasswordContext = TableOptionPasswordContext;
+
+TableOptionPasswordContext.prototype.PASSWORD = function() {
+ return this.getToken(SqlParser.PASSWORD, 0);
+};
+
+TableOptionPasswordContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+TableOptionPasswordContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+TableOptionPasswordContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterTableOptionPassword(this);
+ }
+};
+
+TableOptionPasswordContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitTableOptionPassword(this);
+ }
+};
+
+TableOptionPasswordContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitTableOptionPassword(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function TableOptionUnionContext(parser, ctx) {
+ TableOptionContext.call(this, parser);
+ TableOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+TableOptionUnionContext.prototype = Object.create(TableOptionContext.prototype);
+TableOptionUnionContext.prototype.constructor = TableOptionUnionContext;
+
+SqlParser.TableOptionUnionContext = TableOptionUnionContext;
+
+TableOptionUnionContext.prototype.UNION = function() {
+ return this.getToken(SqlParser.UNION, 0);
+};
+
+TableOptionUnionContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+TableOptionUnionContext.prototype.tables = function() {
+ return this.getTypedRuleContext(TablesContext,0);
+};
+
+TableOptionUnionContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+TableOptionUnionContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+TableOptionUnionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterTableOptionUnion(this);
+ }
+};
+
+TableOptionUnionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitTableOptionUnion(this);
+ }
+};
+
+TableOptionUnionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitTableOptionUnion(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function TableOptionSamplePageContext(parser, ctx) {
+ TableOptionContext.call(this, parser);
+ TableOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+TableOptionSamplePageContext.prototype = Object.create(TableOptionContext.prototype);
+TableOptionSamplePageContext.prototype.constructor = TableOptionSamplePageContext;
+
+SqlParser.TableOptionSamplePageContext = TableOptionSamplePageContext;
+
+TableOptionSamplePageContext.prototype.STATS_SAMPLE_PAGES = function() {
+ return this.getToken(SqlParser.STATS_SAMPLE_PAGES, 0);
+};
+
+TableOptionSamplePageContext.prototype.decimalLiteral = function() {
+ return this.getTypedRuleContext(DecimalLiteralContext,0);
+};
+
+TableOptionSamplePageContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+TableOptionSamplePageContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterTableOptionSamplePage(this);
+ }
+};
+
+TableOptionSamplePageContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitTableOptionSamplePage(this);
+ }
+};
+
+TableOptionSamplePageContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitTableOptionSamplePage(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function TableOptionCharsetContext(parser, ctx) {
+ TableOptionContext.call(this, parser);
+ TableOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+TableOptionCharsetContext.prototype = Object.create(TableOptionContext.prototype);
+TableOptionCharsetContext.prototype.constructor = TableOptionCharsetContext;
+
+SqlParser.TableOptionCharsetContext = TableOptionCharsetContext;
+
+TableOptionCharsetContext.prototype.CHARACTER = function() {
+ return this.getToken(SqlParser.CHARACTER, 0);
+};
+
+TableOptionCharsetContext.prototype.SET = function() {
+ return this.getToken(SqlParser.SET, 0);
+};
+
+TableOptionCharsetContext.prototype.CHARSET = function() {
+ return this.getToken(SqlParser.CHARSET, 0);
+};
+
+TableOptionCharsetContext.prototype.charsetName = function() {
+ return this.getTypedRuleContext(CharsetNameContext,0);
+};
+
+TableOptionCharsetContext.prototype.DEFAULT = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.DEFAULT);
+ } else {
+ return this.getToken(SqlParser.DEFAULT, i);
+ }
+};
+
+
+TableOptionCharsetContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+TableOptionCharsetContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterTableOptionCharset(this);
+ }
+};
+
+TableOptionCharsetContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitTableOptionCharset(this);
+ }
+};
+
+TableOptionCharsetContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitTableOptionCharset(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function TableOptionIndexDirectoryContext(parser, ctx) {
+ TableOptionContext.call(this, parser);
+ TableOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+TableOptionIndexDirectoryContext.prototype = Object.create(TableOptionContext.prototype);
+TableOptionIndexDirectoryContext.prototype.constructor = TableOptionIndexDirectoryContext;
+
+SqlParser.TableOptionIndexDirectoryContext = TableOptionIndexDirectoryContext;
+
+TableOptionIndexDirectoryContext.prototype.INDEX = function() {
+ return this.getToken(SqlParser.INDEX, 0);
+};
+
+TableOptionIndexDirectoryContext.prototype.DIRECTORY = function() {
+ return this.getToken(SqlParser.DIRECTORY, 0);
+};
+
+TableOptionIndexDirectoryContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+TableOptionIndexDirectoryContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+TableOptionIndexDirectoryContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterTableOptionIndexDirectory(this);
+ }
+};
+
+TableOptionIndexDirectoryContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitTableOptionIndexDirectory(this);
+ }
+};
+
+TableOptionIndexDirectoryContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitTableOptionIndexDirectory(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function TableOptionKeyBlockSizeContext(parser, ctx) {
+ TableOptionContext.call(this, parser);
+ TableOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+TableOptionKeyBlockSizeContext.prototype = Object.create(TableOptionContext.prototype);
+TableOptionKeyBlockSizeContext.prototype.constructor = TableOptionKeyBlockSizeContext;
+
+SqlParser.TableOptionKeyBlockSizeContext = TableOptionKeyBlockSizeContext;
+
+TableOptionKeyBlockSizeContext.prototype.KEY_BLOCK_SIZE = function() {
+ return this.getToken(SqlParser.KEY_BLOCK_SIZE, 0);
+};
+
+TableOptionKeyBlockSizeContext.prototype.fileSizeLiteral = function() {
+ return this.getTypedRuleContext(FileSizeLiteralContext,0);
+};
+
+TableOptionKeyBlockSizeContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+TableOptionKeyBlockSizeContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterTableOptionKeyBlockSize(this);
+ }
+};
+
+TableOptionKeyBlockSizeContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitTableOptionKeyBlockSize(this);
+ }
+};
+
+TableOptionKeyBlockSizeContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitTableOptionKeyBlockSize(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function TableOptionEncryptionContext(parser, ctx) {
+ TableOptionContext.call(this, parser);
+ TableOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+TableOptionEncryptionContext.prototype = Object.create(TableOptionContext.prototype);
+TableOptionEncryptionContext.prototype.constructor = TableOptionEncryptionContext;
+
+SqlParser.TableOptionEncryptionContext = TableOptionEncryptionContext;
+
+TableOptionEncryptionContext.prototype.ENCRYPTION = function() {
+ return this.getToken(SqlParser.ENCRYPTION, 0);
+};
+
+TableOptionEncryptionContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+TableOptionEncryptionContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+TableOptionEncryptionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterTableOptionEncryption(this);
+ }
+};
+
+TableOptionEncryptionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitTableOptionEncryption(this);
+ }
+};
+
+TableOptionEncryptionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitTableOptionEncryption(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function TableOptionDataDirectoryContext(parser, ctx) {
+ TableOptionContext.call(this, parser);
+ TableOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+TableOptionDataDirectoryContext.prototype = Object.create(TableOptionContext.prototype);
+TableOptionDataDirectoryContext.prototype.constructor = TableOptionDataDirectoryContext;
+
+SqlParser.TableOptionDataDirectoryContext = TableOptionDataDirectoryContext;
+
+TableOptionDataDirectoryContext.prototype.DATA = function() {
+ return this.getToken(SqlParser.DATA, 0);
+};
+
+TableOptionDataDirectoryContext.prototype.DIRECTORY = function() {
+ return this.getToken(SqlParser.DIRECTORY, 0);
+};
+
+TableOptionDataDirectoryContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+TableOptionDataDirectoryContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+TableOptionDataDirectoryContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterTableOptionDataDirectory(this);
+ }
+};
+
+TableOptionDataDirectoryContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitTableOptionDataDirectory(this);
+ }
+};
+
+TableOptionDataDirectoryContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitTableOptionDataDirectory(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function TableOptionRecalculationContext(parser, ctx) {
+ TableOptionContext.call(this, parser);
+ this.extBoolValue = null; // Token;
+ TableOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+TableOptionRecalculationContext.prototype = Object.create(TableOptionContext.prototype);
+TableOptionRecalculationContext.prototype.constructor = TableOptionRecalculationContext;
+
+SqlParser.TableOptionRecalculationContext = TableOptionRecalculationContext;
+
+TableOptionRecalculationContext.prototype.STATS_AUTO_RECALC = function() {
+ return this.getToken(SqlParser.STATS_AUTO_RECALC, 0);
+};
+
+TableOptionRecalculationContext.prototype.DEFAULT = function() {
+ return this.getToken(SqlParser.DEFAULT, 0);
+};
+
+TableOptionRecalculationContext.prototype.ZERO_DECIMAL = function() {
+ return this.getToken(SqlParser.ZERO_DECIMAL, 0);
+};
+
+TableOptionRecalculationContext.prototype.ONE_DECIMAL = function() {
+ return this.getToken(SqlParser.ONE_DECIMAL, 0);
+};
+
+TableOptionRecalculationContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+TableOptionRecalculationContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterTableOptionRecalculation(this);
+ }
+};
+
+TableOptionRecalculationContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitTableOptionRecalculation(this);
+ }
+};
+
+TableOptionRecalculationContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitTableOptionRecalculation(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function TableOptionAutoIncrementContext(parser, ctx) {
+ TableOptionContext.call(this, parser);
+ TableOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+TableOptionAutoIncrementContext.prototype = Object.create(TableOptionContext.prototype);
+TableOptionAutoIncrementContext.prototype.constructor = TableOptionAutoIncrementContext;
+
+SqlParser.TableOptionAutoIncrementContext = TableOptionAutoIncrementContext;
+
+TableOptionAutoIncrementContext.prototype.AUTO_INCREMENT = function() {
+ return this.getToken(SqlParser.AUTO_INCREMENT, 0);
+};
+
+TableOptionAutoIncrementContext.prototype.decimalLiteral = function() {
+ return this.getTypedRuleContext(DecimalLiteralContext,0);
+};
+
+TableOptionAutoIncrementContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+TableOptionAutoIncrementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterTableOptionAutoIncrement(this);
+ }
+};
+
+TableOptionAutoIncrementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitTableOptionAutoIncrement(this);
+ }
+};
+
+TableOptionAutoIncrementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitTableOptionAutoIncrement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function TableOptionChecksumContext(parser, ctx) {
+ TableOptionContext.call(this, parser);
+ this.boolValue = null; // Token;
+ TableOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+TableOptionChecksumContext.prototype = Object.create(TableOptionContext.prototype);
+TableOptionChecksumContext.prototype.constructor = TableOptionChecksumContext;
+
+SqlParser.TableOptionChecksumContext = TableOptionChecksumContext;
+
+TableOptionChecksumContext.prototype.CHECKSUM = function() {
+ return this.getToken(SqlParser.CHECKSUM, 0);
+};
+
+TableOptionChecksumContext.prototype.PAGE_CHECKSUM = function() {
+ return this.getToken(SqlParser.PAGE_CHECKSUM, 0);
+};
+
+TableOptionChecksumContext.prototype.ZERO_DECIMAL = function() {
+ return this.getToken(SqlParser.ZERO_DECIMAL, 0);
+};
+
+TableOptionChecksumContext.prototype.ONE_DECIMAL = function() {
+ return this.getToken(SqlParser.ONE_DECIMAL, 0);
+};
+
+TableOptionChecksumContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+TableOptionChecksumContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterTableOptionChecksum(this);
+ }
+};
+
+TableOptionChecksumContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitTableOptionChecksum(this);
+ }
+};
+
+TableOptionChecksumContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitTableOptionChecksum(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function TableOptionDelayContext(parser, ctx) {
+ TableOptionContext.call(this, parser);
+ this.boolValue = null; // Token;
+ TableOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+TableOptionDelayContext.prototype = Object.create(TableOptionContext.prototype);
+TableOptionDelayContext.prototype.constructor = TableOptionDelayContext;
+
+SqlParser.TableOptionDelayContext = TableOptionDelayContext;
+
+TableOptionDelayContext.prototype.DELAY_KEY_WRITE = function() {
+ return this.getToken(SqlParser.DELAY_KEY_WRITE, 0);
+};
+
+TableOptionDelayContext.prototype.ZERO_DECIMAL = function() {
+ return this.getToken(SqlParser.ZERO_DECIMAL, 0);
+};
+
+TableOptionDelayContext.prototype.ONE_DECIMAL = function() {
+ return this.getToken(SqlParser.ONE_DECIMAL, 0);
+};
+
+TableOptionDelayContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+TableOptionDelayContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterTableOptionDelay(this);
+ }
+};
+
+TableOptionDelayContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitTableOptionDelay(this);
+ }
+};
+
+TableOptionDelayContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitTableOptionDelay(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function TableOptionConnectionContext(parser, ctx) {
+ TableOptionContext.call(this, parser);
+ TableOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+TableOptionConnectionContext.prototype = Object.create(TableOptionContext.prototype);
+TableOptionConnectionContext.prototype.constructor = TableOptionConnectionContext;
+
+SqlParser.TableOptionConnectionContext = TableOptionConnectionContext;
+
+TableOptionConnectionContext.prototype.CONNECTION = function() {
+ return this.getToken(SqlParser.CONNECTION, 0);
+};
+
+TableOptionConnectionContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+TableOptionConnectionContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+TableOptionConnectionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterTableOptionConnection(this);
+ }
+};
+
+TableOptionConnectionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitTableOptionConnection(this);
+ }
+};
+
+TableOptionConnectionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitTableOptionConnection(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function TableOptionCommentContext(parser, ctx) {
+ TableOptionContext.call(this, parser);
+ TableOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+TableOptionCommentContext.prototype = Object.create(TableOptionContext.prototype);
+TableOptionCommentContext.prototype.constructor = TableOptionCommentContext;
+
+SqlParser.TableOptionCommentContext = TableOptionCommentContext;
+
+TableOptionCommentContext.prototype.COMMENT = function() {
+ return this.getToken(SqlParser.COMMENT, 0);
+};
+
+TableOptionCommentContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+TableOptionCommentContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+TableOptionCommentContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterTableOptionComment(this);
+ }
+};
+
+TableOptionCommentContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitTableOptionComment(this);
+ }
+};
+
+TableOptionCommentContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitTableOptionComment(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function TableOptionAverageContext(parser, ctx) {
+ TableOptionContext.call(this, parser);
+ TableOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+TableOptionAverageContext.prototype = Object.create(TableOptionContext.prototype);
+TableOptionAverageContext.prototype.constructor = TableOptionAverageContext;
+
+SqlParser.TableOptionAverageContext = TableOptionAverageContext;
+
+TableOptionAverageContext.prototype.AVG_ROW_LENGTH = function() {
+ return this.getToken(SqlParser.AVG_ROW_LENGTH, 0);
+};
+
+TableOptionAverageContext.prototype.decimalLiteral = function() {
+ return this.getTypedRuleContext(DecimalLiteralContext,0);
+};
+
+TableOptionAverageContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+TableOptionAverageContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterTableOptionAverage(this);
+ }
+};
+
+TableOptionAverageContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitTableOptionAverage(this);
+ }
+};
+
+TableOptionAverageContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitTableOptionAverage(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function TableOptionRowFormatContext(parser, ctx) {
+ TableOptionContext.call(this, parser);
+ this.rowFormat = null; // Token;
+ TableOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+TableOptionRowFormatContext.prototype = Object.create(TableOptionContext.prototype);
+TableOptionRowFormatContext.prototype.constructor = TableOptionRowFormatContext;
+
+SqlParser.TableOptionRowFormatContext = TableOptionRowFormatContext;
+
+TableOptionRowFormatContext.prototype.ROW_FORMAT = function() {
+ return this.getToken(SqlParser.ROW_FORMAT, 0);
+};
+
+TableOptionRowFormatContext.prototype.DEFAULT = function() {
+ return this.getToken(SqlParser.DEFAULT, 0);
+};
+
+TableOptionRowFormatContext.prototype.DYNAMIC = function() {
+ return this.getToken(SqlParser.DYNAMIC, 0);
+};
+
+TableOptionRowFormatContext.prototype.FIXED = function() {
+ return this.getToken(SqlParser.FIXED, 0);
+};
+
+TableOptionRowFormatContext.prototype.COMPRESSED = function() {
+ return this.getToken(SqlParser.COMPRESSED, 0);
+};
+
+TableOptionRowFormatContext.prototype.REDUNDANT = function() {
+ return this.getToken(SqlParser.REDUNDANT, 0);
+};
+
+TableOptionRowFormatContext.prototype.COMPACT = function() {
+ return this.getToken(SqlParser.COMPACT, 0);
+};
+
+TableOptionRowFormatContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+TableOptionRowFormatContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterTableOptionRowFormat(this);
+ }
+};
+
+TableOptionRowFormatContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitTableOptionRowFormat(this);
+ }
+};
+
+TableOptionRowFormatContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitTableOptionRowFormat(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function TableOptionCompressionContext(parser, ctx) {
+ TableOptionContext.call(this, parser);
+ TableOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+TableOptionCompressionContext.prototype = Object.create(TableOptionContext.prototype);
+TableOptionCompressionContext.prototype.constructor = TableOptionCompressionContext;
+
+SqlParser.TableOptionCompressionContext = TableOptionCompressionContext;
+
+TableOptionCompressionContext.prototype.COMPRESSION = function() {
+ return this.getToken(SqlParser.COMPRESSION, 0);
+};
+
+TableOptionCompressionContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+TableOptionCompressionContext.prototype.ID = function() {
+ return this.getToken(SqlParser.ID, 0);
+};
+
+TableOptionCompressionContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+TableOptionCompressionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterTableOptionCompression(this);
+ }
+};
+
+TableOptionCompressionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitTableOptionCompression(this);
+ }
+};
+
+TableOptionCompressionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitTableOptionCompression(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function TableOptionInsertMethodContext(parser, ctx) {
+ TableOptionContext.call(this, parser);
+ this.insertMethod = null; // Token;
+ TableOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+TableOptionInsertMethodContext.prototype = Object.create(TableOptionContext.prototype);
+TableOptionInsertMethodContext.prototype.constructor = TableOptionInsertMethodContext;
+
+SqlParser.TableOptionInsertMethodContext = TableOptionInsertMethodContext;
+
+TableOptionInsertMethodContext.prototype.INSERT_METHOD = function() {
+ return this.getToken(SqlParser.INSERT_METHOD, 0);
+};
+
+TableOptionInsertMethodContext.prototype.NO = function() {
+ return this.getToken(SqlParser.NO, 0);
+};
+
+TableOptionInsertMethodContext.prototype.FIRST = function() {
+ return this.getToken(SqlParser.FIRST, 0);
+};
+
+TableOptionInsertMethodContext.prototype.LAST = function() {
+ return this.getToken(SqlParser.LAST, 0);
+};
+
+TableOptionInsertMethodContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+TableOptionInsertMethodContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterTableOptionInsertMethod(this);
+ }
+};
+
+TableOptionInsertMethodContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitTableOptionInsertMethod(this);
+ }
+};
+
+TableOptionInsertMethodContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitTableOptionInsertMethod(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function TableOptionMinRowsContext(parser, ctx) {
+ TableOptionContext.call(this, parser);
+ TableOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+TableOptionMinRowsContext.prototype = Object.create(TableOptionContext.prototype);
+TableOptionMinRowsContext.prototype.constructor = TableOptionMinRowsContext;
+
+SqlParser.TableOptionMinRowsContext = TableOptionMinRowsContext;
+
+TableOptionMinRowsContext.prototype.MIN_ROWS = function() {
+ return this.getToken(SqlParser.MIN_ROWS, 0);
+};
+
+TableOptionMinRowsContext.prototype.decimalLiteral = function() {
+ return this.getTypedRuleContext(DecimalLiteralContext,0);
+};
+
+TableOptionMinRowsContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+TableOptionMinRowsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterTableOptionMinRows(this);
+ }
+};
+
+TableOptionMinRowsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitTableOptionMinRows(this);
+ }
+};
+
+TableOptionMinRowsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitTableOptionMinRows(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+SqlParser.TableOptionContext = TableOptionContext;
+
+SqlParser.prototype.tableOption = function() {
+
+ var localctx = new TableOptionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 94, SqlParser.RULE_tableOption);
+ var _la = 0; // Token type
+ try {
+ this.state = 1761;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,199,this._ctx);
+ switch(la_) {
+ case 1:
+ localctx = new TableOptionEngineContext(this, localctx);
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1617;
+ this.match(SqlParser.ENGINE);
+ this.state = 1619;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 1618;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 1621;
+ this.engineName();
+ break;
+
+ case 2:
+ localctx = new TableOptionAutoIncrementContext(this, localctx);
+ this.enterOuterAlt(localctx, 2);
+ this.state = 1622;
+ this.match(SqlParser.AUTO_INCREMENT);
+ this.state = 1624;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 1623;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 1626;
+ this.decimalLiteral();
+ break;
+
+ case 3:
+ localctx = new TableOptionAverageContext(this, localctx);
+ this.enterOuterAlt(localctx, 3);
+ this.state = 1627;
+ this.match(SqlParser.AVG_ROW_LENGTH);
+ this.state = 1629;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 1628;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 1631;
+ this.decimalLiteral();
+ break;
+
+ case 4:
+ localctx = new TableOptionCharsetContext(this, localctx);
+ this.enterOuterAlt(localctx, 4);
+ this.state = 1633;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.DEFAULT) {
+ this.state = 1632;
+ this.match(SqlParser.DEFAULT);
+ }
+
+ this.state = 1638;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.CHARACTER:
+ this.state = 1635;
+ this.match(SqlParser.CHARACTER);
+ this.state = 1636;
+ this.match(SqlParser.SET);
+ break;
+ case SqlParser.CHARSET:
+ this.state = 1637;
+ this.match(SqlParser.CHARSET);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 1641;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 1640;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 1645;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.BINARY:
+ case SqlParser.ARMSCII8:
+ case SqlParser.ASCII:
+ case SqlParser.BIG5:
+ case SqlParser.CP1250:
+ case SqlParser.CP1251:
+ case SqlParser.CP1256:
+ case SqlParser.CP1257:
+ case SqlParser.CP850:
+ case SqlParser.CP852:
+ case SqlParser.CP866:
+ case SqlParser.CP932:
+ case SqlParser.DEC8:
+ case SqlParser.EUCJPMS:
+ case SqlParser.EUCKR:
+ case SqlParser.GB2312:
+ case SqlParser.GBK:
+ case SqlParser.GEOSTD8:
+ case SqlParser.GREEK:
+ case SqlParser.HEBREW:
+ case SqlParser.HP8:
+ case SqlParser.KEYBCS2:
+ case SqlParser.KOI8R:
+ case SqlParser.KOI8U:
+ case SqlParser.LATIN1:
+ case SqlParser.LATIN2:
+ case SqlParser.LATIN5:
+ case SqlParser.LATIN7:
+ case SqlParser.MACCE:
+ case SqlParser.MACROMAN:
+ case SqlParser.SJIS:
+ case SqlParser.SWE7:
+ case SqlParser.TIS620:
+ case SqlParser.UCS2:
+ case SqlParser.UJIS:
+ case SqlParser.UTF16:
+ case SqlParser.UTF16LE:
+ case SqlParser.UTF32:
+ case SqlParser.UTF8:
+ case SqlParser.UTF8MB3:
+ case SqlParser.UTF8MB4:
+ case SqlParser.CHARSET_REVERSE_QOUTE_STRING:
+ case SqlParser.STRING_LITERAL:
+ this.state = 1643;
+ this.charsetName();
+ break;
+ case SqlParser.DEFAULT:
+ this.state = 1644;
+ this.match(SqlParser.DEFAULT);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ break;
+
+ case 5:
+ localctx = new TableOptionChecksumContext(this, localctx);
+ this.enterOuterAlt(localctx, 5);
+ this.state = 1647;
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.CHECKSUM || _la===SqlParser.PAGE_CHECKSUM)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 1649;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 1648;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 1651;
+ localctx.boolValue = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.ZERO_DECIMAL || _la===SqlParser.ONE_DECIMAL)) {
+ localctx.boolValue = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+
+ case 6:
+ localctx = new TableOptionCollateContext(this, localctx);
+ this.enterOuterAlt(localctx, 6);
+ this.state = 1653;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.DEFAULT) {
+ this.state = 1652;
+ this.match(SqlParser.DEFAULT);
+ }
+
+ this.state = 1655;
+ this.match(SqlParser.COLLATE);
+ this.state = 1657;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 1656;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 1659;
+ this.collationName();
+ break;
+
+ case 7:
+ localctx = new TableOptionCommentContext(this, localctx);
+ this.enterOuterAlt(localctx, 7);
+ this.state = 1660;
+ this.match(SqlParser.COMMENT);
+ this.state = 1662;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 1661;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 1664;
+ this.match(SqlParser.STRING_LITERAL);
+ break;
+
+ case 8:
+ localctx = new TableOptionCompressionContext(this, localctx);
+ this.enterOuterAlt(localctx, 8);
+ this.state = 1665;
+ this.match(SqlParser.COMPRESSION);
+ this.state = 1667;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 1666;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 1669;
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.STRING_LITERAL || _la===SqlParser.ID)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+
+ case 9:
+ localctx = new TableOptionConnectionContext(this, localctx);
+ this.enterOuterAlt(localctx, 9);
+ this.state = 1670;
+ this.match(SqlParser.CONNECTION);
+ this.state = 1672;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 1671;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 1674;
+ this.match(SqlParser.STRING_LITERAL);
+ break;
+
+ case 10:
+ localctx = new TableOptionDataDirectoryContext(this, localctx);
+ this.enterOuterAlt(localctx, 10);
+ this.state = 1675;
+ this.match(SqlParser.DATA);
+ this.state = 1676;
+ this.match(SqlParser.DIRECTORY);
+ this.state = 1678;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 1677;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 1680;
+ this.match(SqlParser.STRING_LITERAL);
+ break;
+
+ case 11:
+ localctx = new TableOptionDelayContext(this, localctx);
+ this.enterOuterAlt(localctx, 11);
+ this.state = 1681;
+ this.match(SqlParser.DELAY_KEY_WRITE);
+ this.state = 1683;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 1682;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 1685;
+ localctx.boolValue = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.ZERO_DECIMAL || _la===SqlParser.ONE_DECIMAL)) {
+ localctx.boolValue = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+
+ case 12:
+ localctx = new TableOptionEncryptionContext(this, localctx);
+ this.enterOuterAlt(localctx, 12);
+ this.state = 1686;
+ this.match(SqlParser.ENCRYPTION);
+ this.state = 1688;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 1687;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 1690;
+ this.match(SqlParser.STRING_LITERAL);
+ break;
+
+ case 13:
+ localctx = new TableOptionIndexDirectoryContext(this, localctx);
+ this.enterOuterAlt(localctx, 13);
+ this.state = 1691;
+ this.match(SqlParser.INDEX);
+ this.state = 1692;
+ this.match(SqlParser.DIRECTORY);
+ this.state = 1694;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 1693;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 1696;
+ this.match(SqlParser.STRING_LITERAL);
+ break;
+
+ case 14:
+ localctx = new TableOptionInsertMethodContext(this, localctx);
+ this.enterOuterAlt(localctx, 14);
+ this.state = 1697;
+ this.match(SqlParser.INSERT_METHOD);
+ this.state = 1699;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 1698;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 1701;
+ localctx.insertMethod = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.FIRST || _la===SqlParser.LAST || _la===SqlParser.NO)) {
+ localctx.insertMethod = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+
+ case 15:
+ localctx = new TableOptionKeyBlockSizeContext(this, localctx);
+ this.enterOuterAlt(localctx, 15);
+ this.state = 1702;
+ this.match(SqlParser.KEY_BLOCK_SIZE);
+ this.state = 1704;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 1703;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 1706;
+ this.fileSizeLiteral();
+ break;
+
+ case 16:
+ localctx = new TableOptionMaxRowsContext(this, localctx);
+ this.enterOuterAlt(localctx, 16);
+ this.state = 1707;
+ this.match(SqlParser.MAX_ROWS);
+ this.state = 1709;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 1708;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 1711;
+ this.decimalLiteral();
+ break;
+
+ case 17:
+ localctx = new TableOptionMinRowsContext(this, localctx);
+ this.enterOuterAlt(localctx, 17);
+ this.state = 1712;
+ this.match(SqlParser.MIN_ROWS);
+ this.state = 1714;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 1713;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 1716;
+ this.decimalLiteral();
+ break;
+
+ case 18:
+ localctx = new TableOptionPackKeysContext(this, localctx);
+ this.enterOuterAlt(localctx, 18);
+ this.state = 1717;
+ this.match(SqlParser.PACK_KEYS);
+ this.state = 1719;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 1718;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 1721;
+ localctx.extBoolValue = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.DEFAULT || _la===SqlParser.ZERO_DECIMAL || _la===SqlParser.ONE_DECIMAL)) {
+ localctx.extBoolValue = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+
+ case 19:
+ localctx = new TableOptionPasswordContext(this, localctx);
+ this.enterOuterAlt(localctx, 19);
+ this.state = 1722;
+ this.match(SqlParser.PASSWORD);
+ this.state = 1724;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 1723;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 1726;
+ this.match(SqlParser.STRING_LITERAL);
+ break;
+
+ case 20:
+ localctx = new TableOptionRowFormatContext(this, localctx);
+ this.enterOuterAlt(localctx, 20);
+ this.state = 1727;
+ this.match(SqlParser.ROW_FORMAT);
+ this.state = 1729;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 1728;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 1731;
+ localctx.rowFormat = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.DEFAULT || ((((_la - 307)) & ~0x1f) == 0 && ((1 << (_la - 307)) & ((1 << (SqlParser.COMPACT - 307)) | (1 << (SqlParser.COMPRESSED - 307)) | (1 << (SqlParser.DYNAMIC - 307)))) !== 0) || _la===SqlParser.FIXED || _la===SqlParser.REDUNDANT)) {
+ localctx.rowFormat = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+
+ case 21:
+ localctx = new TableOptionRecalculationContext(this, localctx);
+ this.enterOuterAlt(localctx, 21);
+ this.state = 1732;
+ this.match(SqlParser.STATS_AUTO_RECALC);
+ this.state = 1734;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 1733;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 1736;
+ localctx.extBoolValue = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.DEFAULT || _la===SqlParser.ZERO_DECIMAL || _la===SqlParser.ONE_DECIMAL)) {
+ localctx.extBoolValue = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+
+ case 22:
+ localctx = new TableOptionPersistentContext(this, localctx);
+ this.enterOuterAlt(localctx, 22);
+ this.state = 1737;
+ this.match(SqlParser.STATS_PERSISTENT);
+ this.state = 1739;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 1738;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 1741;
+ localctx.extBoolValue = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.DEFAULT || _la===SqlParser.ZERO_DECIMAL || _la===SqlParser.ONE_DECIMAL)) {
+ localctx.extBoolValue = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+
+ case 23:
+ localctx = new TableOptionSamplePageContext(this, localctx);
+ this.enterOuterAlt(localctx, 23);
+ this.state = 1742;
+ this.match(SqlParser.STATS_SAMPLE_PAGES);
+ this.state = 1744;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 1743;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 1746;
+ this.decimalLiteral();
+ break;
+
+ case 24:
+ localctx = new TableOptionTablespaceContext(this, localctx);
+ this.enterOuterAlt(localctx, 24);
+ this.state = 1747;
+ this.match(SqlParser.TABLESPACE);
+ this.state = 1748;
+ this.uid();
+ this.state = 1750;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,197,this._ctx);
+ if(la_===1) {
+ this.state = 1749;
+ this.tablespaceStorage();
+
+ }
+ break;
+
+ case 25:
+ localctx = new TableOptionTablespaceContext(this, localctx);
+ this.enterOuterAlt(localctx, 25);
+ this.state = 1752;
+ this.tablespaceStorage();
+ break;
+
+ case 26:
+ localctx = new TableOptionUnionContext(this, localctx);
+ this.enterOuterAlt(localctx, 26);
+ this.state = 1753;
+ this.match(SqlParser.UNION);
+ this.state = 1755;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 1754;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 1757;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 1758;
+ this.tables();
+ this.state = 1759;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function TablespaceStorageContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_tablespaceStorage;
+ return this;
+}
+
+TablespaceStorageContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+TablespaceStorageContext.prototype.constructor = TablespaceStorageContext;
+
+TablespaceStorageContext.prototype.STORAGE = function() {
+ return this.getToken(SqlParser.STORAGE, 0);
+};
+
+TablespaceStorageContext.prototype.DISK = function() {
+ return this.getToken(SqlParser.DISK, 0);
+};
+
+TablespaceStorageContext.prototype.MEMORY = function() {
+ return this.getToken(SqlParser.MEMORY, 0);
+};
+
+TablespaceStorageContext.prototype.DEFAULT = function() {
+ return this.getToken(SqlParser.DEFAULT, 0);
+};
+
+TablespaceStorageContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterTablespaceStorage(this);
+ }
+};
+
+TablespaceStorageContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitTablespaceStorage(this);
+ }
+};
+
+TablespaceStorageContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitTablespaceStorage(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.TablespaceStorageContext = TablespaceStorageContext;
+
+SqlParser.prototype.tablespaceStorage = function() {
+
+ var localctx = new TablespaceStorageContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 96, SqlParser.RULE_tablespaceStorage);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1763;
+ this.match(SqlParser.STORAGE);
+ this.state = 1764;
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.DEFAULT || _la===SqlParser.DISK || _la===SqlParser.MEMORY)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function PartitionDefinitionsContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_partitionDefinitions;
+ this.count = null; // DecimalLiteralContext
+ this.subCount = null; // DecimalLiteralContext
+ return this;
+}
+
+PartitionDefinitionsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+PartitionDefinitionsContext.prototype.constructor = PartitionDefinitionsContext;
+
+PartitionDefinitionsContext.prototype.PARTITION = function() {
+ return this.getToken(SqlParser.PARTITION, 0);
+};
+
+PartitionDefinitionsContext.prototype.BY = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.BY);
+ } else {
+ return this.getToken(SqlParser.BY, i);
+ }
+};
+
+
+PartitionDefinitionsContext.prototype.partitionFunctionDefinition = function() {
+ return this.getTypedRuleContext(PartitionFunctionDefinitionContext,0);
+};
+
+PartitionDefinitionsContext.prototype.PARTITIONS = function() {
+ return this.getToken(SqlParser.PARTITIONS, 0);
+};
+
+PartitionDefinitionsContext.prototype.SUBPARTITION = function() {
+ return this.getToken(SqlParser.SUBPARTITION, 0);
+};
+
+PartitionDefinitionsContext.prototype.subpartitionFunctionDefinition = function() {
+ return this.getTypedRuleContext(SubpartitionFunctionDefinitionContext,0);
+};
+
+PartitionDefinitionsContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+PartitionDefinitionsContext.prototype.partitionDefinition = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(PartitionDefinitionContext);
+ } else {
+ return this.getTypedRuleContext(PartitionDefinitionContext,i);
+ }
+};
+
+PartitionDefinitionsContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+PartitionDefinitionsContext.prototype.decimalLiteral = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(DecimalLiteralContext);
+ } else {
+ return this.getTypedRuleContext(DecimalLiteralContext,i);
+ }
+};
+
+PartitionDefinitionsContext.prototype.SUBPARTITIONS = function() {
+ return this.getToken(SqlParser.SUBPARTITIONS, 0);
+};
+
+PartitionDefinitionsContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+PartitionDefinitionsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterPartitionDefinitions(this);
+ }
+};
+
+PartitionDefinitionsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitPartitionDefinitions(this);
+ }
+};
+
+PartitionDefinitionsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitPartitionDefinitions(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.PartitionDefinitionsContext = PartitionDefinitionsContext;
+
+SqlParser.prototype.partitionDefinitions = function() {
+
+ var localctx = new PartitionDefinitionsContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 98, SqlParser.RULE_partitionDefinitions);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1766;
+ this.match(SqlParser.PARTITION);
+ this.state = 1767;
+ this.match(SqlParser.BY);
+ this.state = 1768;
+ this.partitionFunctionDefinition();
+ this.state = 1771;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.PARTITIONS) {
+ this.state = 1769;
+ this.match(SqlParser.PARTITIONS);
+ this.state = 1770;
+ localctx.count = this.decimalLiteral();
+ }
+
+ this.state = 1780;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.SUBPARTITION) {
+ this.state = 1773;
+ this.match(SqlParser.SUBPARTITION);
+ this.state = 1774;
+ this.match(SqlParser.BY);
+ this.state = 1775;
+ this.subpartitionFunctionDefinition();
+ this.state = 1778;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.SUBPARTITIONS) {
+ this.state = 1776;
+ this.match(SqlParser.SUBPARTITIONS);
+ this.state = 1777;
+ localctx.subCount = this.decimalLiteral();
+ }
+
+ }
+
+ this.state = 1793;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,204,this._ctx);
+ if(la_===1) {
+ this.state = 1782;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 1783;
+ this.partitionDefinition();
+ this.state = 1788;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 1784;
+ this.match(SqlParser.COMMA);
+ this.state = 1785;
+ this.partitionDefinition();
+ this.state = 1790;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 1791;
+ this.match(SqlParser.RR_BRACKET);
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function PartitionFunctionDefinitionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_partitionFunctionDefinition;
+ return this;
+}
+
+PartitionFunctionDefinitionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+PartitionFunctionDefinitionContext.prototype.constructor = PartitionFunctionDefinitionContext;
+
+
+
+PartitionFunctionDefinitionContext.prototype.copyFrom = function(ctx) {
+ antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx);
+};
+
+
+function PartitionFunctionKeyContext(parser, ctx) {
+ PartitionFunctionDefinitionContext.call(this, parser);
+ this.algType = null; // Token;
+ PartitionFunctionDefinitionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+PartitionFunctionKeyContext.prototype = Object.create(PartitionFunctionDefinitionContext.prototype);
+PartitionFunctionKeyContext.prototype.constructor = PartitionFunctionKeyContext;
+
+SqlParser.PartitionFunctionKeyContext = PartitionFunctionKeyContext;
+
+PartitionFunctionKeyContext.prototype.KEY = function() {
+ return this.getToken(SqlParser.KEY, 0);
+};
+
+PartitionFunctionKeyContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+PartitionFunctionKeyContext.prototype.uidList = function() {
+ return this.getTypedRuleContext(UidListContext,0);
+};
+
+PartitionFunctionKeyContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+PartitionFunctionKeyContext.prototype.LINEAR = function() {
+ return this.getToken(SqlParser.LINEAR, 0);
+};
+
+PartitionFunctionKeyContext.prototype.ALGORITHM = function() {
+ return this.getToken(SqlParser.ALGORITHM, 0);
+};
+
+PartitionFunctionKeyContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+
+PartitionFunctionKeyContext.prototype.ONE_DECIMAL = function() {
+ return this.getToken(SqlParser.ONE_DECIMAL, 0);
+};
+
+PartitionFunctionKeyContext.prototype.TWO_DECIMAL = function() {
+ return this.getToken(SqlParser.TWO_DECIMAL, 0);
+};
+PartitionFunctionKeyContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterPartitionFunctionKey(this);
+ }
+};
+
+PartitionFunctionKeyContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitPartitionFunctionKey(this);
+ }
+};
+
+PartitionFunctionKeyContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitPartitionFunctionKey(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function PartitionFunctionHashContext(parser, ctx) {
+ PartitionFunctionDefinitionContext.call(this, parser);
+ PartitionFunctionDefinitionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+PartitionFunctionHashContext.prototype = Object.create(PartitionFunctionDefinitionContext.prototype);
+PartitionFunctionHashContext.prototype.constructor = PartitionFunctionHashContext;
+
+SqlParser.PartitionFunctionHashContext = PartitionFunctionHashContext;
+
+PartitionFunctionHashContext.prototype.HASH = function() {
+ return this.getToken(SqlParser.HASH, 0);
+};
+
+PartitionFunctionHashContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+PartitionFunctionHashContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+PartitionFunctionHashContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+PartitionFunctionHashContext.prototype.LINEAR = function() {
+ return this.getToken(SqlParser.LINEAR, 0);
+};
+PartitionFunctionHashContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterPartitionFunctionHash(this);
+ }
+};
+
+PartitionFunctionHashContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitPartitionFunctionHash(this);
+ }
+};
+
+PartitionFunctionHashContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitPartitionFunctionHash(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function PartitionFunctionListContext(parser, ctx) {
+ PartitionFunctionDefinitionContext.call(this, parser);
+ PartitionFunctionDefinitionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+PartitionFunctionListContext.prototype = Object.create(PartitionFunctionDefinitionContext.prototype);
+PartitionFunctionListContext.prototype.constructor = PartitionFunctionListContext;
+
+SqlParser.PartitionFunctionListContext = PartitionFunctionListContext;
+
+PartitionFunctionListContext.prototype.LIST = function() {
+ return this.getToken(SqlParser.LIST, 0);
+};
+
+PartitionFunctionListContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+PartitionFunctionListContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+PartitionFunctionListContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+PartitionFunctionListContext.prototype.COLUMNS = function() {
+ return this.getToken(SqlParser.COLUMNS, 0);
+};
+
+PartitionFunctionListContext.prototype.uidList = function() {
+ return this.getTypedRuleContext(UidListContext,0);
+};
+PartitionFunctionListContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterPartitionFunctionList(this);
+ }
+};
+
+PartitionFunctionListContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitPartitionFunctionList(this);
+ }
+};
+
+PartitionFunctionListContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitPartitionFunctionList(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function PartitionFunctionRangeContext(parser, ctx) {
+ PartitionFunctionDefinitionContext.call(this, parser);
+ PartitionFunctionDefinitionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+PartitionFunctionRangeContext.prototype = Object.create(PartitionFunctionDefinitionContext.prototype);
+PartitionFunctionRangeContext.prototype.constructor = PartitionFunctionRangeContext;
+
+SqlParser.PartitionFunctionRangeContext = PartitionFunctionRangeContext;
+
+PartitionFunctionRangeContext.prototype.RANGE = function() {
+ return this.getToken(SqlParser.RANGE, 0);
+};
+
+PartitionFunctionRangeContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+PartitionFunctionRangeContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+PartitionFunctionRangeContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+PartitionFunctionRangeContext.prototype.COLUMNS = function() {
+ return this.getToken(SqlParser.COLUMNS, 0);
+};
+
+PartitionFunctionRangeContext.prototype.uidList = function() {
+ return this.getTypedRuleContext(UidListContext,0);
+};
+PartitionFunctionRangeContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterPartitionFunctionRange(this);
+ }
+};
+
+PartitionFunctionRangeContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitPartitionFunctionRange(this);
+ }
+};
+
+PartitionFunctionRangeContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitPartitionFunctionRange(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+SqlParser.PartitionFunctionDefinitionContext = PartitionFunctionDefinitionContext;
+
+SqlParser.prototype.partitionFunctionDefinition = function() {
+
+ var localctx = new PartitionFunctionDefinitionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 100, SqlParser.RULE_partitionFunctionDefinition);
+ var _la = 0; // Token type
+ try {
+ this.state = 1840;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,210,this._ctx);
+ switch(la_) {
+ case 1:
+ localctx = new PartitionFunctionHashContext(this, localctx);
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1796;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.LINEAR) {
+ this.state = 1795;
+ this.match(SqlParser.LINEAR);
+ }
+
+ this.state = 1798;
+ this.match(SqlParser.HASH);
+ this.state = 1799;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 1800;
+ this.expression(0);
+ this.state = 1801;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+
+ case 2:
+ localctx = new PartitionFunctionKeyContext(this, localctx);
+ this.enterOuterAlt(localctx, 2);
+ this.state = 1804;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.LINEAR) {
+ this.state = 1803;
+ this.match(SqlParser.LINEAR);
+ }
+
+ this.state = 1806;
+ this.match(SqlParser.KEY);
+ this.state = 1810;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.ALGORITHM) {
+ this.state = 1807;
+ this.match(SqlParser.ALGORITHM);
+ this.state = 1808;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ this.state = 1809;
+ localctx.algType = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.ONE_DECIMAL || _la===SqlParser.TWO_DECIMAL)) {
+ localctx.algType = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 1812;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 1813;
+ this.uidList();
+ this.state = 1814;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+
+ case 3:
+ localctx = new PartitionFunctionRangeContext(this, localctx);
+ this.enterOuterAlt(localctx, 3);
+ this.state = 1816;
+ this.match(SqlParser.RANGE);
+ this.state = 1826;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.LR_BRACKET:
+ this.state = 1817;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 1818;
+ this.expression(0);
+ this.state = 1819;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+ case SqlParser.COLUMNS:
+ this.state = 1821;
+ this.match(SqlParser.COLUMNS);
+ this.state = 1822;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 1823;
+ this.uidList();
+ this.state = 1824;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ break;
+
+ case 4:
+ localctx = new PartitionFunctionListContext(this, localctx);
+ this.enterOuterAlt(localctx, 4);
+ this.state = 1828;
+ this.match(SqlParser.LIST);
+ this.state = 1838;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.LR_BRACKET:
+ this.state = 1829;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 1830;
+ this.expression(0);
+ this.state = 1831;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+ case SqlParser.COLUMNS:
+ this.state = 1833;
+ this.match(SqlParser.COLUMNS);
+ this.state = 1834;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 1835;
+ this.uidList();
+ this.state = 1836;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function SubpartitionFunctionDefinitionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_subpartitionFunctionDefinition;
+ return this;
+}
+
+SubpartitionFunctionDefinitionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+SubpartitionFunctionDefinitionContext.prototype.constructor = SubpartitionFunctionDefinitionContext;
+
+
+
+SubpartitionFunctionDefinitionContext.prototype.copyFrom = function(ctx) {
+ antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx);
+};
+
+
+function SubPartitionFunctionHashContext(parser, ctx) {
+ SubpartitionFunctionDefinitionContext.call(this, parser);
+ SubpartitionFunctionDefinitionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+SubPartitionFunctionHashContext.prototype = Object.create(SubpartitionFunctionDefinitionContext.prototype);
+SubPartitionFunctionHashContext.prototype.constructor = SubPartitionFunctionHashContext;
+
+SqlParser.SubPartitionFunctionHashContext = SubPartitionFunctionHashContext;
+
+SubPartitionFunctionHashContext.prototype.HASH = function() {
+ return this.getToken(SqlParser.HASH, 0);
+};
+
+SubPartitionFunctionHashContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+SubPartitionFunctionHashContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+SubPartitionFunctionHashContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+SubPartitionFunctionHashContext.prototype.LINEAR = function() {
+ return this.getToken(SqlParser.LINEAR, 0);
+};
+SubPartitionFunctionHashContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSubPartitionFunctionHash(this);
+ }
+};
+
+SubPartitionFunctionHashContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSubPartitionFunctionHash(this);
+ }
+};
+
+SubPartitionFunctionHashContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSubPartitionFunctionHash(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function SubPartitionFunctionKeyContext(parser, ctx) {
+ SubpartitionFunctionDefinitionContext.call(this, parser);
+ this.algType = null; // Token;
+ SubpartitionFunctionDefinitionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+SubPartitionFunctionKeyContext.prototype = Object.create(SubpartitionFunctionDefinitionContext.prototype);
+SubPartitionFunctionKeyContext.prototype.constructor = SubPartitionFunctionKeyContext;
+
+SqlParser.SubPartitionFunctionKeyContext = SubPartitionFunctionKeyContext;
+
+SubPartitionFunctionKeyContext.prototype.KEY = function() {
+ return this.getToken(SqlParser.KEY, 0);
+};
+
+SubPartitionFunctionKeyContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+SubPartitionFunctionKeyContext.prototype.uidList = function() {
+ return this.getTypedRuleContext(UidListContext,0);
+};
+
+SubPartitionFunctionKeyContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+SubPartitionFunctionKeyContext.prototype.LINEAR = function() {
+ return this.getToken(SqlParser.LINEAR, 0);
+};
+
+SubPartitionFunctionKeyContext.prototype.ALGORITHM = function() {
+ return this.getToken(SqlParser.ALGORITHM, 0);
+};
+
+SubPartitionFunctionKeyContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+
+SubPartitionFunctionKeyContext.prototype.ONE_DECIMAL = function() {
+ return this.getToken(SqlParser.ONE_DECIMAL, 0);
+};
+
+SubPartitionFunctionKeyContext.prototype.TWO_DECIMAL = function() {
+ return this.getToken(SqlParser.TWO_DECIMAL, 0);
+};
+SubPartitionFunctionKeyContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSubPartitionFunctionKey(this);
+ }
+};
+
+SubPartitionFunctionKeyContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSubPartitionFunctionKey(this);
+ }
+};
+
+SubPartitionFunctionKeyContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSubPartitionFunctionKey(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+SqlParser.SubpartitionFunctionDefinitionContext = SubpartitionFunctionDefinitionContext;
+
+SqlParser.prototype.subpartitionFunctionDefinition = function() {
+
+ var localctx = new SubpartitionFunctionDefinitionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 102, SqlParser.RULE_subpartitionFunctionDefinition);
+ var _la = 0; // Token type
+ try {
+ this.state = 1863;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,214,this._ctx);
+ switch(la_) {
+ case 1:
+ localctx = new SubPartitionFunctionHashContext(this, localctx);
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1843;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.LINEAR) {
+ this.state = 1842;
+ this.match(SqlParser.LINEAR);
+ }
+
+ this.state = 1845;
+ this.match(SqlParser.HASH);
+ this.state = 1846;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 1847;
+ this.expression(0);
+ this.state = 1848;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+
+ case 2:
+ localctx = new SubPartitionFunctionKeyContext(this, localctx);
+ this.enterOuterAlt(localctx, 2);
+ this.state = 1851;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.LINEAR) {
+ this.state = 1850;
+ this.match(SqlParser.LINEAR);
+ }
+
+ this.state = 1853;
+ this.match(SqlParser.KEY);
+ this.state = 1857;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.ALGORITHM) {
+ this.state = 1854;
+ this.match(SqlParser.ALGORITHM);
+ this.state = 1855;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ this.state = 1856;
+ localctx.algType = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.ONE_DECIMAL || _la===SqlParser.TWO_DECIMAL)) {
+ localctx.algType = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 1859;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 1860;
+ this.uidList();
+ this.state = 1861;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function PartitionDefinitionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_partitionDefinition;
+ return this;
+}
+
+PartitionDefinitionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+PartitionDefinitionContext.prototype.constructor = PartitionDefinitionContext;
+
+
+
+PartitionDefinitionContext.prototype.copyFrom = function(ctx) {
+ antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx);
+};
+
+
+function PartitionComparisionContext(parser, ctx) {
+ PartitionDefinitionContext.call(this, parser);
+ PartitionDefinitionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+PartitionComparisionContext.prototype = Object.create(PartitionDefinitionContext.prototype);
+PartitionComparisionContext.prototype.constructor = PartitionComparisionContext;
+
+SqlParser.PartitionComparisionContext = PartitionComparisionContext;
+
+PartitionComparisionContext.prototype.PARTITION = function() {
+ return this.getToken(SqlParser.PARTITION, 0);
+};
+
+PartitionComparisionContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+PartitionComparisionContext.prototype.VALUES = function() {
+ return this.getToken(SqlParser.VALUES, 0);
+};
+
+PartitionComparisionContext.prototype.LESS = function() {
+ return this.getToken(SqlParser.LESS, 0);
+};
+
+PartitionComparisionContext.prototype.THAN = function() {
+ return this.getToken(SqlParser.THAN, 0);
+};
+
+PartitionComparisionContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+PartitionComparisionContext.prototype.partitionDefinerAtom = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(PartitionDefinerAtomContext);
+ } else {
+ return this.getTypedRuleContext(PartitionDefinerAtomContext,i);
+ }
+};
+
+PartitionComparisionContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+PartitionComparisionContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+PartitionComparisionContext.prototype.partitionOption = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(PartitionOptionContext);
+ } else {
+ return this.getTypedRuleContext(PartitionOptionContext,i);
+ }
+};
+
+PartitionComparisionContext.prototype.subpartitionDefinition = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(SubpartitionDefinitionContext);
+ } else {
+ return this.getTypedRuleContext(SubpartitionDefinitionContext,i);
+ }
+};
+PartitionComparisionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterPartitionComparision(this);
+ }
+};
+
+PartitionComparisionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitPartitionComparision(this);
+ }
+};
+
+PartitionComparisionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitPartitionComparision(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function PartitionListAtomContext(parser, ctx) {
+ PartitionDefinitionContext.call(this, parser);
+ PartitionDefinitionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+PartitionListAtomContext.prototype = Object.create(PartitionDefinitionContext.prototype);
+PartitionListAtomContext.prototype.constructor = PartitionListAtomContext;
+
+SqlParser.PartitionListAtomContext = PartitionListAtomContext;
+
+PartitionListAtomContext.prototype.PARTITION = function() {
+ return this.getToken(SqlParser.PARTITION, 0);
+};
+
+PartitionListAtomContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+PartitionListAtomContext.prototype.VALUES = function() {
+ return this.getToken(SqlParser.VALUES, 0);
+};
+
+PartitionListAtomContext.prototype.IN = function() {
+ return this.getToken(SqlParser.IN, 0);
+};
+
+PartitionListAtomContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+PartitionListAtomContext.prototype.partitionDefinerAtom = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(PartitionDefinerAtomContext);
+ } else {
+ return this.getTypedRuleContext(PartitionDefinerAtomContext,i);
+ }
+};
+
+PartitionListAtomContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+PartitionListAtomContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+PartitionListAtomContext.prototype.partitionOption = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(PartitionOptionContext);
+ } else {
+ return this.getTypedRuleContext(PartitionOptionContext,i);
+ }
+};
+
+PartitionListAtomContext.prototype.subpartitionDefinition = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(SubpartitionDefinitionContext);
+ } else {
+ return this.getTypedRuleContext(SubpartitionDefinitionContext,i);
+ }
+};
+PartitionListAtomContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterPartitionListAtom(this);
+ }
+};
+
+PartitionListAtomContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitPartitionListAtom(this);
+ }
+};
+
+PartitionListAtomContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitPartitionListAtom(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function PartitionListVectorContext(parser, ctx) {
+ PartitionDefinitionContext.call(this, parser);
+ PartitionDefinitionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+PartitionListVectorContext.prototype = Object.create(PartitionDefinitionContext.prototype);
+PartitionListVectorContext.prototype.constructor = PartitionListVectorContext;
+
+SqlParser.PartitionListVectorContext = PartitionListVectorContext;
+
+PartitionListVectorContext.prototype.PARTITION = function() {
+ return this.getToken(SqlParser.PARTITION, 0);
+};
+
+PartitionListVectorContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+PartitionListVectorContext.prototype.VALUES = function() {
+ return this.getToken(SqlParser.VALUES, 0);
+};
+
+PartitionListVectorContext.prototype.IN = function() {
+ return this.getToken(SqlParser.IN, 0);
+};
+
+PartitionListVectorContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+PartitionListVectorContext.prototype.partitionDefinerVector = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(PartitionDefinerVectorContext);
+ } else {
+ return this.getTypedRuleContext(PartitionDefinerVectorContext,i);
+ }
+};
+
+PartitionListVectorContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+PartitionListVectorContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+PartitionListVectorContext.prototype.partitionOption = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(PartitionOptionContext);
+ } else {
+ return this.getTypedRuleContext(PartitionOptionContext,i);
+ }
+};
+
+PartitionListVectorContext.prototype.subpartitionDefinition = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(SubpartitionDefinitionContext);
+ } else {
+ return this.getTypedRuleContext(SubpartitionDefinitionContext,i);
+ }
+};
+PartitionListVectorContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterPartitionListVector(this);
+ }
+};
+
+PartitionListVectorContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitPartitionListVector(this);
+ }
+};
+
+PartitionListVectorContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitPartitionListVector(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function PartitionSimpleContext(parser, ctx) {
+ PartitionDefinitionContext.call(this, parser);
+ PartitionDefinitionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+PartitionSimpleContext.prototype = Object.create(PartitionDefinitionContext.prototype);
+PartitionSimpleContext.prototype.constructor = PartitionSimpleContext;
+
+SqlParser.PartitionSimpleContext = PartitionSimpleContext;
+
+PartitionSimpleContext.prototype.PARTITION = function() {
+ return this.getToken(SqlParser.PARTITION, 0);
+};
+
+PartitionSimpleContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+PartitionSimpleContext.prototype.partitionOption = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(PartitionOptionContext);
+ } else {
+ return this.getTypedRuleContext(PartitionOptionContext,i);
+ }
+};
+
+PartitionSimpleContext.prototype.subpartitionDefinition = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(SubpartitionDefinitionContext);
+ } else {
+ return this.getTypedRuleContext(SubpartitionDefinitionContext,i);
+ }
+};
+
+PartitionSimpleContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+PartitionSimpleContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterPartitionSimple(this);
+ }
+};
+
+PartitionSimpleContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitPartitionSimple(this);
+ }
+};
+
+PartitionSimpleContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitPartitionSimple(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+SqlParser.PartitionDefinitionContext = PartitionDefinitionContext;
+
+SqlParser.prototype.partitionDefinition = function() {
+
+ var localctx = new PartitionDefinitionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 104, SqlParser.RULE_partitionDefinition);
+ var _la = 0; // Token type
+ try {
+ this.state = 1996;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,233,this._ctx);
+ switch(la_) {
+ case 1:
+ localctx = new PartitionComparisionContext(this, localctx);
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1865;
+ this.match(SqlParser.PARTITION);
+ this.state = 1866;
+ this.uid();
+ this.state = 1867;
+ this.match(SqlParser.VALUES);
+ this.state = 1868;
+ this.match(SqlParser.LESS);
+ this.state = 1869;
+ this.match(SqlParser.THAN);
+ this.state = 1870;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 1871;
+ this.partitionDefinerAtom();
+ this.state = 1876;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 1872;
+ this.match(SqlParser.COMMA);
+ this.state = 1873;
+ this.partitionDefinerAtom();
+ this.state = 1878;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 1879;
+ this.match(SqlParser.RR_BRACKET);
+ this.state = 1883;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.INDEX || _la===SqlParser.COMMENT || _la===SqlParser.DATA || _la===SqlParser.ENGINE || ((((_la - 428)) & ~0x1f) == 0 && ((1 << (_la - 428)) & ((1 << (SqlParser.MAX_ROWS - 428)) | (1 << (SqlParser.MIN_ROWS - 428)) | (1 << (SqlParser.NODEGROUP - 428)))) !== 0) || _la===SqlParser.STORAGE || _la===SqlParser.TABLESPACE) {
+ this.state = 1880;
+ this.partitionOption();
+ this.state = 1885;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 1894;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.SUBPARTITION) {
+ this.state = 1886;
+ this.subpartitionDefinition();
+ this.state = 1891;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,217,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 1887;
+ this.match(SqlParser.COMMA);
+ this.state = 1888;
+ this.subpartitionDefinition();
+ }
+ this.state = 1893;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,217,this._ctx);
+ }
+
+ }
+
+ break;
+
+ case 2:
+ localctx = new PartitionComparisionContext(this, localctx);
+ this.enterOuterAlt(localctx, 2);
+ this.state = 1896;
+ this.match(SqlParser.PARTITION);
+ this.state = 1897;
+ this.uid();
+ this.state = 1898;
+ this.match(SqlParser.VALUES);
+ this.state = 1899;
+ this.match(SqlParser.LESS);
+ this.state = 1900;
+ this.match(SqlParser.THAN);
+ this.state = 1901;
+ this.partitionDefinerAtom();
+ this.state = 1905;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.INDEX || _la===SqlParser.COMMENT || _la===SqlParser.DATA || _la===SqlParser.ENGINE || ((((_la - 428)) & ~0x1f) == 0 && ((1 << (_la - 428)) & ((1 << (SqlParser.MAX_ROWS - 428)) | (1 << (SqlParser.MIN_ROWS - 428)) | (1 << (SqlParser.NODEGROUP - 428)))) !== 0) || _la===SqlParser.STORAGE || _la===SqlParser.TABLESPACE) {
+ this.state = 1902;
+ this.partitionOption();
+ this.state = 1907;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 1916;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.SUBPARTITION) {
+ this.state = 1908;
+ this.subpartitionDefinition();
+ this.state = 1913;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,220,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 1909;
+ this.match(SqlParser.COMMA);
+ this.state = 1910;
+ this.subpartitionDefinition();
+ }
+ this.state = 1915;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,220,this._ctx);
+ }
+
+ }
+
+ break;
+
+ case 3:
+ localctx = new PartitionListAtomContext(this, localctx);
+ this.enterOuterAlt(localctx, 3);
+ this.state = 1918;
+ this.match(SqlParser.PARTITION);
+ this.state = 1919;
+ this.uid();
+ this.state = 1920;
+ this.match(SqlParser.VALUES);
+ this.state = 1921;
+ this.match(SqlParser.IN);
+ this.state = 1922;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 1923;
+ this.partitionDefinerAtom();
+ this.state = 1928;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 1924;
+ this.match(SqlParser.COMMA);
+ this.state = 1925;
+ this.partitionDefinerAtom();
+ this.state = 1930;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 1931;
+ this.match(SqlParser.RR_BRACKET);
+ this.state = 1935;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.INDEX || _la===SqlParser.COMMENT || _la===SqlParser.DATA || _la===SqlParser.ENGINE || ((((_la - 428)) & ~0x1f) == 0 && ((1 << (_la - 428)) & ((1 << (SqlParser.MAX_ROWS - 428)) | (1 << (SqlParser.MIN_ROWS - 428)) | (1 << (SqlParser.NODEGROUP - 428)))) !== 0) || _la===SqlParser.STORAGE || _la===SqlParser.TABLESPACE) {
+ this.state = 1932;
+ this.partitionOption();
+ this.state = 1937;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 1946;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.SUBPARTITION) {
+ this.state = 1938;
+ this.subpartitionDefinition();
+ this.state = 1943;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,224,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 1939;
+ this.match(SqlParser.COMMA);
+ this.state = 1940;
+ this.subpartitionDefinition();
+ }
+ this.state = 1945;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,224,this._ctx);
+ }
+
+ }
+
+ break;
+
+ case 4:
+ localctx = new PartitionListVectorContext(this, localctx);
+ this.enterOuterAlt(localctx, 4);
+ this.state = 1948;
+ this.match(SqlParser.PARTITION);
+ this.state = 1949;
+ this.uid();
+ this.state = 1950;
+ this.match(SqlParser.VALUES);
+ this.state = 1951;
+ this.match(SqlParser.IN);
+ this.state = 1952;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 1953;
+ this.partitionDefinerVector();
+ this.state = 1958;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 1954;
+ this.match(SqlParser.COMMA);
+ this.state = 1955;
+ this.partitionDefinerVector();
+ this.state = 1960;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 1961;
+ this.match(SqlParser.RR_BRACKET);
+ this.state = 1965;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.INDEX || _la===SqlParser.COMMENT || _la===SqlParser.DATA || _la===SqlParser.ENGINE || ((((_la - 428)) & ~0x1f) == 0 && ((1 << (_la - 428)) & ((1 << (SqlParser.MAX_ROWS - 428)) | (1 << (SqlParser.MIN_ROWS - 428)) | (1 << (SqlParser.NODEGROUP - 428)))) !== 0) || _la===SqlParser.STORAGE || _la===SqlParser.TABLESPACE) {
+ this.state = 1962;
+ this.partitionOption();
+ this.state = 1967;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 1976;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.SUBPARTITION) {
+ this.state = 1968;
+ this.subpartitionDefinition();
+ this.state = 1973;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,228,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 1969;
+ this.match(SqlParser.COMMA);
+ this.state = 1970;
+ this.subpartitionDefinition();
+ }
+ this.state = 1975;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,228,this._ctx);
+ }
+
+ }
+
+ break;
+
+ case 5:
+ localctx = new PartitionSimpleContext(this, localctx);
+ this.enterOuterAlt(localctx, 5);
+ this.state = 1978;
+ this.match(SqlParser.PARTITION);
+ this.state = 1979;
+ this.uid();
+ this.state = 1983;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.INDEX || _la===SqlParser.COMMENT || _la===SqlParser.DATA || _la===SqlParser.ENGINE || ((((_la - 428)) & ~0x1f) == 0 && ((1 << (_la - 428)) & ((1 << (SqlParser.MAX_ROWS - 428)) | (1 << (SqlParser.MIN_ROWS - 428)) | (1 << (SqlParser.NODEGROUP - 428)))) !== 0) || _la===SqlParser.STORAGE || _la===SqlParser.TABLESPACE) {
+ this.state = 1980;
+ this.partitionOption();
+ this.state = 1985;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 1994;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.SUBPARTITION) {
+ this.state = 1986;
+ this.subpartitionDefinition();
+ this.state = 1991;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,231,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 1987;
+ this.match(SqlParser.COMMA);
+ this.state = 1988;
+ this.subpartitionDefinition();
+ }
+ this.state = 1993;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,231,this._ctx);
+ }
+
+ }
+
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function PartitionDefinerAtomContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_partitionDefinerAtom;
+ return this;
+}
+
+PartitionDefinerAtomContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+PartitionDefinerAtomContext.prototype.constructor = PartitionDefinerAtomContext;
+
+PartitionDefinerAtomContext.prototype.constant = function() {
+ return this.getTypedRuleContext(ConstantContext,0);
+};
+
+PartitionDefinerAtomContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+PartitionDefinerAtomContext.prototype.MAXVALUE = function() {
+ return this.getToken(SqlParser.MAXVALUE, 0);
+};
+
+PartitionDefinerAtomContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterPartitionDefinerAtom(this);
+ }
+};
+
+PartitionDefinerAtomContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitPartitionDefinerAtom(this);
+ }
+};
+
+PartitionDefinerAtomContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitPartitionDefinerAtom(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.PartitionDefinerAtomContext = PartitionDefinerAtomContext;
+
+SqlParser.prototype.partitionDefinerAtom = function() {
+
+ var localctx = new PartitionDefinerAtomContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 106, SqlParser.RULE_partitionDefinerAtom);
+ try {
+ this.state = 2001;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,234,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1998;
+ this.constant();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 1999;
+ this.expression(0);
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 2000;
+ this.match(SqlParser.MAXVALUE);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function PartitionDefinerVectorContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_partitionDefinerVector;
+ return this;
+}
+
+PartitionDefinerVectorContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+PartitionDefinerVectorContext.prototype.constructor = PartitionDefinerVectorContext;
+
+PartitionDefinerVectorContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+PartitionDefinerVectorContext.prototype.partitionDefinerAtom = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(PartitionDefinerAtomContext);
+ } else {
+ return this.getTypedRuleContext(PartitionDefinerAtomContext,i);
+ }
+};
+
+PartitionDefinerVectorContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+PartitionDefinerVectorContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+PartitionDefinerVectorContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterPartitionDefinerVector(this);
+ }
+};
+
+PartitionDefinerVectorContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitPartitionDefinerVector(this);
+ }
+};
+
+PartitionDefinerVectorContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitPartitionDefinerVector(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.PartitionDefinerVectorContext = PartitionDefinerVectorContext;
+
+SqlParser.prototype.partitionDefinerVector = function() {
+
+ var localctx = new PartitionDefinerVectorContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 108, SqlParser.RULE_partitionDefinerVector);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2003;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 2004;
+ this.partitionDefinerAtom();
+ this.state = 2007;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 2005;
+ this.match(SqlParser.COMMA);
+ this.state = 2006;
+ this.partitionDefinerAtom();
+ this.state = 2009;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(_la===SqlParser.COMMA);
+ this.state = 2011;
+ this.match(SqlParser.RR_BRACKET);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function SubpartitionDefinitionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_subpartitionDefinition;
+ return this;
+}
+
+SubpartitionDefinitionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+SubpartitionDefinitionContext.prototype.constructor = SubpartitionDefinitionContext;
+
+SubpartitionDefinitionContext.prototype.SUBPARTITION = function() {
+ return this.getToken(SqlParser.SUBPARTITION, 0);
+};
+
+SubpartitionDefinitionContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+SubpartitionDefinitionContext.prototype.partitionOption = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(PartitionOptionContext);
+ } else {
+ return this.getTypedRuleContext(PartitionOptionContext,i);
+ }
+};
+
+SubpartitionDefinitionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSubpartitionDefinition(this);
+ }
+};
+
+SubpartitionDefinitionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSubpartitionDefinition(this);
+ }
+};
+
+SubpartitionDefinitionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSubpartitionDefinition(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.SubpartitionDefinitionContext = SubpartitionDefinitionContext;
+
+SqlParser.prototype.subpartitionDefinition = function() {
+
+ var localctx = new SubpartitionDefinitionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 110, SqlParser.RULE_subpartitionDefinition);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2013;
+ this.match(SqlParser.SUBPARTITION);
+ this.state = 2014;
+ this.uid();
+ this.state = 2018;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.INDEX || _la===SqlParser.COMMENT || _la===SqlParser.DATA || _la===SqlParser.ENGINE || ((((_la - 428)) & ~0x1f) == 0 && ((1 << (_la - 428)) & ((1 << (SqlParser.MAX_ROWS - 428)) | (1 << (SqlParser.MIN_ROWS - 428)) | (1 << (SqlParser.NODEGROUP - 428)))) !== 0) || _la===SqlParser.STORAGE || _la===SqlParser.TABLESPACE) {
+ this.state = 2015;
+ this.partitionOption();
+ this.state = 2020;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function PartitionOptionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_partitionOption;
+ return this;
+}
+
+PartitionOptionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+PartitionOptionContext.prototype.constructor = PartitionOptionContext;
+
+
+
+PartitionOptionContext.prototype.copyFrom = function(ctx) {
+ antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx);
+};
+
+
+function PartitionOptionCommentContext(parser, ctx) {
+ PartitionOptionContext.call(this, parser);
+ this.comment = null; // Token;
+ PartitionOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+PartitionOptionCommentContext.prototype = Object.create(PartitionOptionContext.prototype);
+PartitionOptionCommentContext.prototype.constructor = PartitionOptionCommentContext;
+
+SqlParser.PartitionOptionCommentContext = PartitionOptionCommentContext;
+
+PartitionOptionCommentContext.prototype.COMMENT = function() {
+ return this.getToken(SqlParser.COMMENT, 0);
+};
+
+PartitionOptionCommentContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+PartitionOptionCommentContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+PartitionOptionCommentContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterPartitionOptionComment(this);
+ }
+};
+
+PartitionOptionCommentContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitPartitionOptionComment(this);
+ }
+};
+
+PartitionOptionCommentContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitPartitionOptionComment(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function PartitionOptionNodeGroupContext(parser, ctx) {
+ PartitionOptionContext.call(this, parser);
+ this.nodegroup = null; // UidContext;
+ PartitionOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+PartitionOptionNodeGroupContext.prototype = Object.create(PartitionOptionContext.prototype);
+PartitionOptionNodeGroupContext.prototype.constructor = PartitionOptionNodeGroupContext;
+
+SqlParser.PartitionOptionNodeGroupContext = PartitionOptionNodeGroupContext;
+
+PartitionOptionNodeGroupContext.prototype.NODEGROUP = function() {
+ return this.getToken(SqlParser.NODEGROUP, 0);
+};
+
+PartitionOptionNodeGroupContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+PartitionOptionNodeGroupContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+PartitionOptionNodeGroupContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterPartitionOptionNodeGroup(this);
+ }
+};
+
+PartitionOptionNodeGroupContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitPartitionOptionNodeGroup(this);
+ }
+};
+
+PartitionOptionNodeGroupContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitPartitionOptionNodeGroup(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function PartitionOptionIndexDirectoryContext(parser, ctx) {
+ PartitionOptionContext.call(this, parser);
+ this.indexDirectory = null; // Token;
+ PartitionOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+PartitionOptionIndexDirectoryContext.prototype = Object.create(PartitionOptionContext.prototype);
+PartitionOptionIndexDirectoryContext.prototype.constructor = PartitionOptionIndexDirectoryContext;
+
+SqlParser.PartitionOptionIndexDirectoryContext = PartitionOptionIndexDirectoryContext;
+
+PartitionOptionIndexDirectoryContext.prototype.INDEX = function() {
+ return this.getToken(SqlParser.INDEX, 0);
+};
+
+PartitionOptionIndexDirectoryContext.prototype.DIRECTORY = function() {
+ return this.getToken(SqlParser.DIRECTORY, 0);
+};
+
+PartitionOptionIndexDirectoryContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+PartitionOptionIndexDirectoryContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+PartitionOptionIndexDirectoryContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterPartitionOptionIndexDirectory(this);
+ }
+};
+
+PartitionOptionIndexDirectoryContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitPartitionOptionIndexDirectory(this);
+ }
+};
+
+PartitionOptionIndexDirectoryContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitPartitionOptionIndexDirectory(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function PartitionOptionMaxRowsContext(parser, ctx) {
+ PartitionOptionContext.call(this, parser);
+ this.maxRows = null; // DecimalLiteralContext;
+ PartitionOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+PartitionOptionMaxRowsContext.prototype = Object.create(PartitionOptionContext.prototype);
+PartitionOptionMaxRowsContext.prototype.constructor = PartitionOptionMaxRowsContext;
+
+SqlParser.PartitionOptionMaxRowsContext = PartitionOptionMaxRowsContext;
+
+PartitionOptionMaxRowsContext.prototype.MAX_ROWS = function() {
+ return this.getToken(SqlParser.MAX_ROWS, 0);
+};
+
+PartitionOptionMaxRowsContext.prototype.decimalLiteral = function() {
+ return this.getTypedRuleContext(DecimalLiteralContext,0);
+};
+
+PartitionOptionMaxRowsContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+PartitionOptionMaxRowsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterPartitionOptionMaxRows(this);
+ }
+};
+
+PartitionOptionMaxRowsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitPartitionOptionMaxRows(this);
+ }
+};
+
+PartitionOptionMaxRowsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitPartitionOptionMaxRows(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function PartitionOptionTablespaceContext(parser, ctx) {
+ PartitionOptionContext.call(this, parser);
+ this.tablespace = null; // UidContext;
+ PartitionOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+PartitionOptionTablespaceContext.prototype = Object.create(PartitionOptionContext.prototype);
+PartitionOptionTablespaceContext.prototype.constructor = PartitionOptionTablespaceContext;
+
+SqlParser.PartitionOptionTablespaceContext = PartitionOptionTablespaceContext;
+
+PartitionOptionTablespaceContext.prototype.TABLESPACE = function() {
+ return this.getToken(SqlParser.TABLESPACE, 0);
+};
+
+PartitionOptionTablespaceContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+PartitionOptionTablespaceContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+PartitionOptionTablespaceContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterPartitionOptionTablespace(this);
+ }
+};
+
+PartitionOptionTablespaceContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitPartitionOptionTablespace(this);
+ }
+};
+
+PartitionOptionTablespaceContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitPartitionOptionTablespace(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function PartitionOptionEngineContext(parser, ctx) {
+ PartitionOptionContext.call(this, parser);
+ PartitionOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+PartitionOptionEngineContext.prototype = Object.create(PartitionOptionContext.prototype);
+PartitionOptionEngineContext.prototype.constructor = PartitionOptionEngineContext;
+
+SqlParser.PartitionOptionEngineContext = PartitionOptionEngineContext;
+
+PartitionOptionEngineContext.prototype.ENGINE = function() {
+ return this.getToken(SqlParser.ENGINE, 0);
+};
+
+PartitionOptionEngineContext.prototype.engineName = function() {
+ return this.getTypedRuleContext(EngineNameContext,0);
+};
+
+PartitionOptionEngineContext.prototype.STORAGE = function() {
+ return this.getToken(SqlParser.STORAGE, 0);
+};
+
+PartitionOptionEngineContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+PartitionOptionEngineContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterPartitionOptionEngine(this);
+ }
+};
+
+PartitionOptionEngineContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitPartitionOptionEngine(this);
+ }
+};
+
+PartitionOptionEngineContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitPartitionOptionEngine(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function PartitionOptionMinRowsContext(parser, ctx) {
+ PartitionOptionContext.call(this, parser);
+ this.minRows = null; // DecimalLiteralContext;
+ PartitionOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+PartitionOptionMinRowsContext.prototype = Object.create(PartitionOptionContext.prototype);
+PartitionOptionMinRowsContext.prototype.constructor = PartitionOptionMinRowsContext;
+
+SqlParser.PartitionOptionMinRowsContext = PartitionOptionMinRowsContext;
+
+PartitionOptionMinRowsContext.prototype.MIN_ROWS = function() {
+ return this.getToken(SqlParser.MIN_ROWS, 0);
+};
+
+PartitionOptionMinRowsContext.prototype.decimalLiteral = function() {
+ return this.getTypedRuleContext(DecimalLiteralContext,0);
+};
+
+PartitionOptionMinRowsContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+PartitionOptionMinRowsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterPartitionOptionMinRows(this);
+ }
+};
+
+PartitionOptionMinRowsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitPartitionOptionMinRows(this);
+ }
+};
+
+PartitionOptionMinRowsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitPartitionOptionMinRows(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function PartitionOptionDataDirectoryContext(parser, ctx) {
+ PartitionOptionContext.call(this, parser);
+ this.dataDirectory = null; // Token;
+ PartitionOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+PartitionOptionDataDirectoryContext.prototype = Object.create(PartitionOptionContext.prototype);
+PartitionOptionDataDirectoryContext.prototype.constructor = PartitionOptionDataDirectoryContext;
+
+SqlParser.PartitionOptionDataDirectoryContext = PartitionOptionDataDirectoryContext;
+
+PartitionOptionDataDirectoryContext.prototype.DATA = function() {
+ return this.getToken(SqlParser.DATA, 0);
+};
+
+PartitionOptionDataDirectoryContext.prototype.DIRECTORY = function() {
+ return this.getToken(SqlParser.DIRECTORY, 0);
+};
+
+PartitionOptionDataDirectoryContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+PartitionOptionDataDirectoryContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+PartitionOptionDataDirectoryContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterPartitionOptionDataDirectory(this);
+ }
+};
+
+PartitionOptionDataDirectoryContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitPartitionOptionDataDirectory(this);
+ }
+};
+
+PartitionOptionDataDirectoryContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitPartitionOptionDataDirectory(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+SqlParser.PartitionOptionContext = PartitionOptionContext;
+
+SqlParser.prototype.partitionOption = function() {
+
+ var localctx = new PartitionOptionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 112, SqlParser.RULE_partitionOption);
+ var _la = 0; // Token type
+ try {
+ this.state = 2066;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.ENGINE:
+ case SqlParser.STORAGE:
+ localctx = new PartitionOptionEngineContext(this, localctx);
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2022;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.STORAGE) {
+ this.state = 2021;
+ this.match(SqlParser.STORAGE);
+ }
+
+ this.state = 2024;
+ this.match(SqlParser.ENGINE);
+ this.state = 2026;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 2025;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 2028;
+ this.engineName();
+ break;
+ case SqlParser.COMMENT:
+ localctx = new PartitionOptionCommentContext(this, localctx);
+ this.enterOuterAlt(localctx, 2);
+ this.state = 2029;
+ this.match(SqlParser.COMMENT);
+ this.state = 2031;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 2030;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 2033;
+ localctx.comment = this.match(SqlParser.STRING_LITERAL);
+ break;
+ case SqlParser.DATA:
+ localctx = new PartitionOptionDataDirectoryContext(this, localctx);
+ this.enterOuterAlt(localctx, 3);
+ this.state = 2034;
+ this.match(SqlParser.DATA);
+ this.state = 2035;
+ this.match(SqlParser.DIRECTORY);
+ this.state = 2037;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 2036;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 2039;
+ localctx.dataDirectory = this.match(SqlParser.STRING_LITERAL);
+ break;
+ case SqlParser.INDEX:
+ localctx = new PartitionOptionIndexDirectoryContext(this, localctx);
+ this.enterOuterAlt(localctx, 4);
+ this.state = 2040;
+ this.match(SqlParser.INDEX);
+ this.state = 2041;
+ this.match(SqlParser.DIRECTORY);
+ this.state = 2043;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 2042;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 2045;
+ localctx.indexDirectory = this.match(SqlParser.STRING_LITERAL);
+ break;
+ case SqlParser.MAX_ROWS:
+ localctx = new PartitionOptionMaxRowsContext(this, localctx);
+ this.enterOuterAlt(localctx, 5);
+ this.state = 2046;
+ this.match(SqlParser.MAX_ROWS);
+ this.state = 2048;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 2047;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 2050;
+ localctx.maxRows = this.decimalLiteral();
+ break;
+ case SqlParser.MIN_ROWS:
+ localctx = new PartitionOptionMinRowsContext(this, localctx);
+ this.enterOuterAlt(localctx, 6);
+ this.state = 2051;
+ this.match(SqlParser.MIN_ROWS);
+ this.state = 2053;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 2052;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 2055;
+ localctx.minRows = this.decimalLiteral();
+ break;
+ case SqlParser.TABLESPACE:
+ localctx = new PartitionOptionTablespaceContext(this, localctx);
+ this.enterOuterAlt(localctx, 7);
+ this.state = 2056;
+ this.match(SqlParser.TABLESPACE);
+ this.state = 2058;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 2057;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 2060;
+ localctx.tablespace = this.uid();
+ break;
+ case SqlParser.NODEGROUP:
+ localctx = new PartitionOptionNodeGroupContext(this, localctx);
+ this.enterOuterAlt(localctx, 8);
+ this.state = 2061;
+ this.match(SqlParser.NODEGROUP);
+ this.state = 2063;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 2062;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 2065;
+ localctx.nodegroup = this.uid();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function AlterDatabaseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_alterDatabase;
+ return this;
+}
+
+AlterDatabaseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+AlterDatabaseContext.prototype.constructor = AlterDatabaseContext;
+
+
+
+AlterDatabaseContext.prototype.copyFrom = function(ctx) {
+ antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx);
+};
+
+
+function AlterUpgradeNameContext(parser, ctx) {
+ AlterDatabaseContext.call(this, parser);
+ this.dbFormat = null; // Token;
+ AlterDatabaseContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterUpgradeNameContext.prototype = Object.create(AlterDatabaseContext.prototype);
+AlterUpgradeNameContext.prototype.constructor = AlterUpgradeNameContext;
+
+SqlParser.AlterUpgradeNameContext = AlterUpgradeNameContext;
+
+AlterUpgradeNameContext.prototype.ALTER = function() {
+ return this.getToken(SqlParser.ALTER, 0);
+};
+
+AlterUpgradeNameContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+AlterUpgradeNameContext.prototype.UPGRADE = function() {
+ return this.getToken(SqlParser.UPGRADE, 0);
+};
+
+AlterUpgradeNameContext.prototype.DATA = function() {
+ return this.getToken(SqlParser.DATA, 0);
+};
+
+AlterUpgradeNameContext.prototype.DIRECTORY = function() {
+ return this.getToken(SqlParser.DIRECTORY, 0);
+};
+
+AlterUpgradeNameContext.prototype.NAME = function() {
+ return this.getToken(SqlParser.NAME, 0);
+};
+
+AlterUpgradeNameContext.prototype.DATABASE = function() {
+ return this.getToken(SqlParser.DATABASE, 0);
+};
+
+AlterUpgradeNameContext.prototype.SCHEMA = function() {
+ return this.getToken(SqlParser.SCHEMA, 0);
+};
+AlterUpgradeNameContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterUpgradeName(this);
+ }
+};
+
+AlterUpgradeNameContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterUpgradeName(this);
+ }
+};
+
+AlterUpgradeNameContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterUpgradeName(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AlterSimpleDatabaseContext(parser, ctx) {
+ AlterDatabaseContext.call(this, parser);
+ this.dbFormat = null; // Token;
+ AlterDatabaseContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterSimpleDatabaseContext.prototype = Object.create(AlterDatabaseContext.prototype);
+AlterSimpleDatabaseContext.prototype.constructor = AlterSimpleDatabaseContext;
+
+SqlParser.AlterSimpleDatabaseContext = AlterSimpleDatabaseContext;
+
+AlterSimpleDatabaseContext.prototype.ALTER = function() {
+ return this.getToken(SqlParser.ALTER, 0);
+};
+
+AlterSimpleDatabaseContext.prototype.DATABASE = function() {
+ return this.getToken(SqlParser.DATABASE, 0);
+};
+
+AlterSimpleDatabaseContext.prototype.SCHEMA = function() {
+ return this.getToken(SqlParser.SCHEMA, 0);
+};
+
+AlterSimpleDatabaseContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+AlterSimpleDatabaseContext.prototype.createDatabaseOption = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(CreateDatabaseOptionContext);
+ } else {
+ return this.getTypedRuleContext(CreateDatabaseOptionContext,i);
+ }
+};
+AlterSimpleDatabaseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterSimpleDatabase(this);
+ }
+};
+
+AlterSimpleDatabaseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterSimpleDatabase(this);
+ }
+};
+
+AlterSimpleDatabaseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterSimpleDatabase(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+SqlParser.AlterDatabaseContext = AlterDatabaseContext;
+
+SqlParser.prototype.alterDatabase = function() {
+
+ var localctx = new AlterDatabaseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 114, SqlParser.RULE_alterDatabase);
+ var _la = 0; // Token type
+ try {
+ this.state = 2086;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,249,this._ctx);
+ switch(la_) {
+ case 1:
+ localctx = new AlterSimpleDatabaseContext(this, localctx);
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2068;
+ this.match(SqlParser.ALTER);
+ this.state = 2069;
+ localctx.dbFormat = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.DATABASE || _la===SqlParser.SCHEMA)) {
+ localctx.dbFormat = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 2071;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,247,this._ctx);
+ if(la_===1) {
+ this.state = 2070;
+ this.uid();
+
+ }
+ this.state = 2074;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 2073;
+ this.createDatabaseOption();
+ this.state = 2076;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(((((_la - 22)) & ~0x1f) == 0 && ((1 << (_la - 22)) & ((1 << (SqlParser.CHARACTER - 22)) | (1 << (SqlParser.COLLATE - 22)) | (1 << (SqlParser.DEFAULT - 22)))) !== 0) || _la===SqlParser.CHARSET);
+ break;
+
+ case 2:
+ localctx = new AlterUpgradeNameContext(this, localctx);
+ this.enterOuterAlt(localctx, 2);
+ this.state = 2078;
+ this.match(SqlParser.ALTER);
+ this.state = 2079;
+ localctx.dbFormat = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.DATABASE || _la===SqlParser.SCHEMA)) {
+ localctx.dbFormat = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 2080;
+ this.uid();
+ this.state = 2081;
+ this.match(SqlParser.UPGRADE);
+ this.state = 2082;
+ this.match(SqlParser.DATA);
+ this.state = 2083;
+ this.match(SqlParser.DIRECTORY);
+ this.state = 2084;
+ this.match(SqlParser.NAME);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function AlterEventContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_alterEvent;
+ return this;
+}
+
+AlterEventContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+AlterEventContext.prototype.constructor = AlterEventContext;
+
+AlterEventContext.prototype.ALTER = function() {
+ return this.getToken(SqlParser.ALTER, 0);
+};
+
+AlterEventContext.prototype.EVENT = function() {
+ return this.getToken(SqlParser.EVENT, 0);
+};
+
+AlterEventContext.prototype.fullId = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(FullIdContext);
+ } else {
+ return this.getTypedRuleContext(FullIdContext,i);
+ }
+};
+
+AlterEventContext.prototype.ownerStatement = function() {
+ return this.getTypedRuleContext(OwnerStatementContext,0);
+};
+
+AlterEventContext.prototype.ON = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.ON);
+ } else {
+ return this.getToken(SqlParser.ON, i);
+ }
+};
+
+
+AlterEventContext.prototype.SCHEDULE = function() {
+ return this.getToken(SqlParser.SCHEDULE, 0);
+};
+
+AlterEventContext.prototype.scheduleExpression = function() {
+ return this.getTypedRuleContext(ScheduleExpressionContext,0);
+};
+
+AlterEventContext.prototype.COMPLETION = function() {
+ return this.getToken(SqlParser.COMPLETION, 0);
+};
+
+AlterEventContext.prototype.PRESERVE = function() {
+ return this.getToken(SqlParser.PRESERVE, 0);
+};
+
+AlterEventContext.prototype.RENAME = function() {
+ return this.getToken(SqlParser.RENAME, 0);
+};
+
+AlterEventContext.prototype.TO = function() {
+ return this.getToken(SqlParser.TO, 0);
+};
+
+AlterEventContext.prototype.enableType = function() {
+ return this.getTypedRuleContext(EnableTypeContext,0);
+};
+
+AlterEventContext.prototype.COMMENT = function() {
+ return this.getToken(SqlParser.COMMENT, 0);
+};
+
+AlterEventContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+AlterEventContext.prototype.DO = function() {
+ return this.getToken(SqlParser.DO, 0);
+};
+
+AlterEventContext.prototype.routineBody = function() {
+ return this.getTypedRuleContext(RoutineBodyContext,0);
+};
+
+AlterEventContext.prototype.NOT = function() {
+ return this.getToken(SqlParser.NOT, 0);
+};
+
+AlterEventContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterEvent(this);
+ }
+};
+
+AlterEventContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterEvent(this);
+ }
+};
+
+AlterEventContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterEvent(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.AlterEventContext = AlterEventContext;
+
+SqlParser.prototype.alterEvent = function() {
+
+ var localctx = new AlterEventContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 116, SqlParser.RULE_alterEvent);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2088;
+ this.match(SqlParser.ALTER);
+ this.state = 2090;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.DEFINER) {
+ this.state = 2089;
+ this.ownerStatement();
+ }
+
+ this.state = 2092;
+ this.match(SqlParser.EVENT);
+ this.state = 2093;
+ this.fullId();
+ this.state = 2097;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,251,this._ctx);
+ if(la_===1) {
+ this.state = 2094;
+ this.match(SqlParser.ON);
+ this.state = 2095;
+ this.match(SqlParser.SCHEDULE);
+ this.state = 2096;
+ this.scheduleExpression();
+
+ }
+ this.state = 2105;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.ON) {
+ this.state = 2099;
+ this.match(SqlParser.ON);
+ this.state = 2100;
+ this.match(SqlParser.COMPLETION);
+ this.state = 2102;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.NOT) {
+ this.state = 2101;
+ this.match(SqlParser.NOT);
+ }
+
+ this.state = 2104;
+ this.match(SqlParser.PRESERVE);
+ }
+
+ this.state = 2110;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,254,this._ctx);
+ if(la_===1) {
+ this.state = 2107;
+ this.match(SqlParser.RENAME);
+ this.state = 2108;
+ this.match(SqlParser.TO);
+ this.state = 2109;
+ this.fullId();
+
+ }
+ this.state = 2113;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.DISABLE || _la===SqlParser.ENABLE) {
+ this.state = 2112;
+ this.enableType();
+ }
+
+ this.state = 2117;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.COMMENT) {
+ this.state = 2115;
+ this.match(SqlParser.COMMENT);
+ this.state = 2116;
+ this.match(SqlParser.STRING_LITERAL);
+ }
+
+ this.state = 2121;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,257,this._ctx);
+ if(la_===1) {
+ this.state = 2119;
+ this.match(SqlParser.DO);
+ this.state = 2120;
+ this.routineBody();
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function AlterFunctionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_alterFunction;
+ return this;
+}
+
+AlterFunctionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+AlterFunctionContext.prototype.constructor = AlterFunctionContext;
+
+AlterFunctionContext.prototype.ALTER = function() {
+ return this.getToken(SqlParser.ALTER, 0);
+};
+
+AlterFunctionContext.prototype.FUNCTION = function() {
+ return this.getToken(SqlParser.FUNCTION, 0);
+};
+
+AlterFunctionContext.prototype.fullId = function() {
+ return this.getTypedRuleContext(FullIdContext,0);
+};
+
+AlterFunctionContext.prototype.routineOption = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(RoutineOptionContext);
+ } else {
+ return this.getTypedRuleContext(RoutineOptionContext,i);
+ }
+};
+
+AlterFunctionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterFunction(this);
+ }
+};
+
+AlterFunctionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterFunction(this);
+ }
+};
+
+AlterFunctionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterFunction(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.AlterFunctionContext = AlterFunctionContext;
+
+SqlParser.prototype.alterFunction = function() {
+
+ var localctx = new AlterFunctionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 118, SqlParser.RULE_alterFunction);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2123;
+ this.match(SqlParser.ALTER);
+ this.state = 2124;
+ this.match(SqlParser.FUNCTION);
+ this.state = 2125;
+ this.fullId();
+ this.state = 2129;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.DETERMINISTIC || ((((_la - 100)) & ~0x1f) == 0 && ((1 << (_la - 100)) & ((1 << (SqlParser.MODIFIES - 100)) | (1 << (SqlParser.NOT - 100)) | (1 << (SqlParser.READS - 100)))) !== 0) || _la===SqlParser.SQL || _la===SqlParser.COMMENT || _la===SqlParser.CONTAINS || _la===SqlParser.LANGUAGE || _la===SqlParser.NO) {
+ this.state = 2126;
+ this.routineOption();
+ this.state = 2131;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function AlterInstanceContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_alterInstance;
+ return this;
+}
+
+AlterInstanceContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+AlterInstanceContext.prototype.constructor = AlterInstanceContext;
+
+AlterInstanceContext.prototype.ALTER = function() {
+ return this.getToken(SqlParser.ALTER, 0);
+};
+
+AlterInstanceContext.prototype.INSTANCE = function() {
+ return this.getToken(SqlParser.INSTANCE, 0);
+};
+
+AlterInstanceContext.prototype.ROTATE = function() {
+ return this.getToken(SqlParser.ROTATE, 0);
+};
+
+AlterInstanceContext.prototype.INNODB = function() {
+ return this.getToken(SqlParser.INNODB, 0);
+};
+
+AlterInstanceContext.prototype.MASTER = function() {
+ return this.getToken(SqlParser.MASTER, 0);
+};
+
+AlterInstanceContext.prototype.KEY = function() {
+ return this.getToken(SqlParser.KEY, 0);
+};
+
+AlterInstanceContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterInstance(this);
+ }
+};
+
+AlterInstanceContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterInstance(this);
+ }
+};
+
+AlterInstanceContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterInstance(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.AlterInstanceContext = AlterInstanceContext;
+
+SqlParser.prototype.alterInstance = function() {
+
+ var localctx = new AlterInstanceContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 120, SqlParser.RULE_alterInstance);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2132;
+ this.match(SqlParser.ALTER);
+ this.state = 2133;
+ this.match(SqlParser.INSTANCE);
+ this.state = 2134;
+ this.match(SqlParser.ROTATE);
+ this.state = 2135;
+ this.match(SqlParser.INNODB);
+ this.state = 2136;
+ this.match(SqlParser.MASTER);
+ this.state = 2137;
+ this.match(SqlParser.KEY);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function AlterLogfileGroupContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_alterLogfileGroup;
+ return this;
+}
+
+AlterLogfileGroupContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+AlterLogfileGroupContext.prototype.constructor = AlterLogfileGroupContext;
+
+AlterLogfileGroupContext.prototype.ALTER = function() {
+ return this.getToken(SqlParser.ALTER, 0);
+};
+
+AlterLogfileGroupContext.prototype.LOGFILE = function() {
+ return this.getToken(SqlParser.LOGFILE, 0);
+};
+
+AlterLogfileGroupContext.prototype.GROUP = function() {
+ return this.getToken(SqlParser.GROUP, 0);
+};
+
+AlterLogfileGroupContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+AlterLogfileGroupContext.prototype.ADD = function() {
+ return this.getToken(SqlParser.ADD, 0);
+};
+
+AlterLogfileGroupContext.prototype.UNDOFILE = function() {
+ return this.getToken(SqlParser.UNDOFILE, 0);
+};
+
+AlterLogfileGroupContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+AlterLogfileGroupContext.prototype.ENGINE = function() {
+ return this.getToken(SqlParser.ENGINE, 0);
+};
+
+AlterLogfileGroupContext.prototype.engineName = function() {
+ return this.getTypedRuleContext(EngineNameContext,0);
+};
+
+AlterLogfileGroupContext.prototype.INITIAL_SIZE = function() {
+ return this.getToken(SqlParser.INITIAL_SIZE, 0);
+};
+
+AlterLogfileGroupContext.prototype.fileSizeLiteral = function() {
+ return this.getTypedRuleContext(FileSizeLiteralContext,0);
+};
+
+AlterLogfileGroupContext.prototype.WAIT = function() {
+ return this.getToken(SqlParser.WAIT, 0);
+};
+
+AlterLogfileGroupContext.prototype.EQUAL_SYMBOL = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.EQUAL_SYMBOL);
+ } else {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, i);
+ }
+};
+
+
+AlterLogfileGroupContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterLogfileGroup(this);
+ }
+};
+
+AlterLogfileGroupContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterLogfileGroup(this);
+ }
+};
+
+AlterLogfileGroupContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterLogfileGroup(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.AlterLogfileGroupContext = AlterLogfileGroupContext;
+
+SqlParser.prototype.alterLogfileGroup = function() {
+
+ var localctx = new AlterLogfileGroupContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 122, SqlParser.RULE_alterLogfileGroup);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2139;
+ this.match(SqlParser.ALTER);
+ this.state = 2140;
+ this.match(SqlParser.LOGFILE);
+ this.state = 2141;
+ this.match(SqlParser.GROUP);
+ this.state = 2142;
+ this.uid();
+ this.state = 2143;
+ this.match(SqlParser.ADD);
+ this.state = 2144;
+ this.match(SqlParser.UNDOFILE);
+ this.state = 2145;
+ this.match(SqlParser.STRING_LITERAL);
+ this.state = 2151;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.INITIAL_SIZE) {
+ this.state = 2146;
+ this.match(SqlParser.INITIAL_SIZE);
+ this.state = 2148;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 2147;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 2150;
+ this.fileSizeLiteral();
+ }
+
+ this.state = 2154;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.WAIT) {
+ this.state = 2153;
+ this.match(SqlParser.WAIT);
+ }
+
+ this.state = 2156;
+ this.match(SqlParser.ENGINE);
+ this.state = 2158;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 2157;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 2160;
+ this.engineName();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function AlterProcedureContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_alterProcedure;
+ return this;
+}
+
+AlterProcedureContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+AlterProcedureContext.prototype.constructor = AlterProcedureContext;
+
+AlterProcedureContext.prototype.ALTER = function() {
+ return this.getToken(SqlParser.ALTER, 0);
+};
+
+AlterProcedureContext.prototype.PROCEDURE = function() {
+ return this.getToken(SqlParser.PROCEDURE, 0);
+};
+
+AlterProcedureContext.prototype.fullId = function() {
+ return this.getTypedRuleContext(FullIdContext,0);
+};
+
+AlterProcedureContext.prototype.routineOption = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(RoutineOptionContext);
+ } else {
+ return this.getTypedRuleContext(RoutineOptionContext,i);
+ }
+};
+
+AlterProcedureContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterProcedure(this);
+ }
+};
+
+AlterProcedureContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterProcedure(this);
+ }
+};
+
+AlterProcedureContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterProcedure(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.AlterProcedureContext = AlterProcedureContext;
+
+SqlParser.prototype.alterProcedure = function() {
+
+ var localctx = new AlterProcedureContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 124, SqlParser.RULE_alterProcedure);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2162;
+ this.match(SqlParser.ALTER);
+ this.state = 2163;
+ this.match(SqlParser.PROCEDURE);
+ this.state = 2164;
+ this.fullId();
+ this.state = 2168;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.DETERMINISTIC || ((((_la - 100)) & ~0x1f) == 0 && ((1 << (_la - 100)) & ((1 << (SqlParser.MODIFIES - 100)) | (1 << (SqlParser.NOT - 100)) | (1 << (SqlParser.READS - 100)))) !== 0) || _la===SqlParser.SQL || _la===SqlParser.COMMENT || _la===SqlParser.CONTAINS || _la===SqlParser.LANGUAGE || _la===SqlParser.NO) {
+ this.state = 2165;
+ this.routineOption();
+ this.state = 2170;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function AlterServerContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_alterServer;
+ return this;
+}
+
+AlterServerContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+AlterServerContext.prototype.constructor = AlterServerContext;
+
+AlterServerContext.prototype.ALTER = function() {
+ return this.getToken(SqlParser.ALTER, 0);
+};
+
+AlterServerContext.prototype.SERVER = function() {
+ return this.getToken(SqlParser.SERVER, 0);
+};
+
+AlterServerContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+AlterServerContext.prototype.OPTIONS = function() {
+ return this.getToken(SqlParser.OPTIONS, 0);
+};
+
+AlterServerContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+AlterServerContext.prototype.serverOption = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ServerOptionContext);
+ } else {
+ return this.getTypedRuleContext(ServerOptionContext,i);
+ }
+};
+
+AlterServerContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+AlterServerContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+AlterServerContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterServer(this);
+ }
+};
+
+AlterServerContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterServer(this);
+ }
+};
+
+AlterServerContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterServer(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.AlterServerContext = AlterServerContext;
+
+SqlParser.prototype.alterServer = function() {
+
+ var localctx = new AlterServerContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 126, SqlParser.RULE_alterServer);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2171;
+ this.match(SqlParser.ALTER);
+ this.state = 2172;
+ this.match(SqlParser.SERVER);
+ this.state = 2173;
+ this.uid();
+ this.state = 2174;
+ this.match(SqlParser.OPTIONS);
+ this.state = 2175;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 2176;
+ this.serverOption();
+ this.state = 2181;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 2177;
+ this.match(SqlParser.COMMA);
+ this.state = 2178;
+ this.serverOption();
+ this.state = 2183;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 2184;
+ this.match(SqlParser.RR_BRACKET);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function AlterTableContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_alterTable;
+ this.intimeAction = null; // Token
+ return this;
+}
+
+AlterTableContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+AlterTableContext.prototype.constructor = AlterTableContext;
+
+AlterTableContext.prototype.ALTER = function() {
+ return this.getToken(SqlParser.ALTER, 0);
+};
+
+AlterTableContext.prototype.TABLE = function() {
+ return this.getToken(SqlParser.TABLE, 0);
+};
+
+AlterTableContext.prototype.tableName = function() {
+ return this.getTypedRuleContext(TableNameContext,0);
+};
+
+AlterTableContext.prototype.IGNORE = function() {
+ return this.getToken(SqlParser.IGNORE, 0);
+};
+
+AlterTableContext.prototype.alterSpecification = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(AlterSpecificationContext);
+ } else {
+ return this.getTypedRuleContext(AlterSpecificationContext,i);
+ }
+};
+
+AlterTableContext.prototype.partitionDefinitions = function() {
+ return this.getTypedRuleContext(PartitionDefinitionsContext,0);
+};
+
+AlterTableContext.prototype.ONLINE = function() {
+ return this.getToken(SqlParser.ONLINE, 0);
+};
+
+AlterTableContext.prototype.OFFLINE = function() {
+ return this.getToken(SqlParser.OFFLINE, 0);
+};
+
+AlterTableContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+AlterTableContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterTable(this);
+ }
+};
+
+AlterTableContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterTable(this);
+ }
+};
+
+AlterTableContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterTable(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.AlterTableContext = AlterTableContext;
+
+SqlParser.prototype.alterTable = function() {
+
+ var localctx = new AlterTableContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 128, SqlParser.RULE_alterTable);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2186;
+ this.match(SqlParser.ALTER);
+ this.state = 2188;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.OFFLINE || _la===SqlParser.ONLINE) {
+ this.state = 2187;
+ localctx.intimeAction = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.OFFLINE || _la===SqlParser.ONLINE)) {
+ localctx.intimeAction = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 2191;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.IGNORE) {
+ this.state = 2190;
+ this.match(SqlParser.IGNORE);
+ }
+
+ this.state = 2193;
+ this.match(SqlParser.TABLE);
+ this.state = 2194;
+ this.tableName();
+ this.state = 2203;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,268,this._ctx);
+ if(la_===1) {
+ this.state = 2195;
+ this.alterSpecification();
+ this.state = 2200;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 2196;
+ this.match(SqlParser.COMMA);
+ this.state = 2197;
+ this.alterSpecification();
+ this.state = 2202;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+
+ }
+ this.state = 2206;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.PARTITION) {
+ this.state = 2205;
+ this.partitionDefinitions();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function AlterTablespaceContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_alterTablespace;
+ this.objectAction = null; // Token
+ return this;
+}
+
+AlterTablespaceContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+AlterTablespaceContext.prototype.constructor = AlterTablespaceContext;
+
+AlterTablespaceContext.prototype.ALTER = function() {
+ return this.getToken(SqlParser.ALTER, 0);
+};
+
+AlterTablespaceContext.prototype.TABLESPACE = function() {
+ return this.getToken(SqlParser.TABLESPACE, 0);
+};
+
+AlterTablespaceContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+AlterTablespaceContext.prototype.DATAFILE = function() {
+ return this.getToken(SqlParser.DATAFILE, 0);
+};
+
+AlterTablespaceContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+AlterTablespaceContext.prototype.ENGINE = function() {
+ return this.getToken(SqlParser.ENGINE, 0);
+};
+
+AlterTablespaceContext.prototype.engineName = function() {
+ return this.getTypedRuleContext(EngineNameContext,0);
+};
+
+AlterTablespaceContext.prototype.ADD = function() {
+ return this.getToken(SqlParser.ADD, 0);
+};
+
+AlterTablespaceContext.prototype.DROP = function() {
+ return this.getToken(SqlParser.DROP, 0);
+};
+
+AlterTablespaceContext.prototype.INITIAL_SIZE = function() {
+ return this.getToken(SqlParser.INITIAL_SIZE, 0);
+};
+
+AlterTablespaceContext.prototype.EQUAL_SYMBOL = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.EQUAL_SYMBOL);
+ } else {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, i);
+ }
+};
+
+
+AlterTablespaceContext.prototype.fileSizeLiteral = function() {
+ return this.getTypedRuleContext(FileSizeLiteralContext,0);
+};
+
+AlterTablespaceContext.prototype.WAIT = function() {
+ return this.getToken(SqlParser.WAIT, 0);
+};
+
+AlterTablespaceContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterTablespace(this);
+ }
+};
+
+AlterTablespaceContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterTablespace(this);
+ }
+};
+
+AlterTablespaceContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterTablespace(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.AlterTablespaceContext = AlterTablespaceContext;
+
+SqlParser.prototype.alterTablespace = function() {
+
+ var localctx = new AlterTablespaceContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 130, SqlParser.RULE_alterTablespace);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2208;
+ this.match(SqlParser.ALTER);
+ this.state = 2209;
+ this.match(SqlParser.TABLESPACE);
+ this.state = 2210;
+ this.uid();
+ this.state = 2211;
+ localctx.objectAction = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.ADD || _la===SqlParser.DROP)) {
+ localctx.objectAction = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 2212;
+ this.match(SqlParser.DATAFILE);
+ this.state = 2213;
+ this.match(SqlParser.STRING_LITERAL);
+ this.state = 2217;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.INITIAL_SIZE) {
+ this.state = 2214;
+ this.match(SqlParser.INITIAL_SIZE);
+ this.state = 2215;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ this.state = 2216;
+ this.fileSizeLiteral();
+ }
+
+ this.state = 2220;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.WAIT) {
+ this.state = 2219;
+ this.match(SqlParser.WAIT);
+ }
+
+ this.state = 2222;
+ this.match(SqlParser.ENGINE);
+ this.state = 2224;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 2223;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 2226;
+ this.engineName();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function AlterViewContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_alterView;
+ this.algType = null; // Token
+ this.secContext = null; // Token
+ this.checkOpt = null; // Token
+ return this;
+}
+
+AlterViewContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+AlterViewContext.prototype.constructor = AlterViewContext;
+
+AlterViewContext.prototype.ALTER = function() {
+ return this.getToken(SqlParser.ALTER, 0);
+};
+
+AlterViewContext.prototype.VIEW = function() {
+ return this.getToken(SqlParser.VIEW, 0);
+};
+
+AlterViewContext.prototype.fullId = function() {
+ return this.getTypedRuleContext(FullIdContext,0);
+};
+
+AlterViewContext.prototype.AS = function() {
+ return this.getToken(SqlParser.AS, 0);
+};
+
+AlterViewContext.prototype.selectStatement = function() {
+ return this.getTypedRuleContext(SelectStatementContext,0);
+};
+
+AlterViewContext.prototype.ALGORITHM = function() {
+ return this.getToken(SqlParser.ALGORITHM, 0);
+};
+
+AlterViewContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+
+AlterViewContext.prototype.ownerStatement = function() {
+ return this.getTypedRuleContext(OwnerStatementContext,0);
+};
+
+AlterViewContext.prototype.SQL = function() {
+ return this.getToken(SqlParser.SQL, 0);
+};
+
+AlterViewContext.prototype.SECURITY = function() {
+ return this.getToken(SqlParser.SECURITY, 0);
+};
+
+AlterViewContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+AlterViewContext.prototype.uidList = function() {
+ return this.getTypedRuleContext(UidListContext,0);
+};
+
+AlterViewContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+AlterViewContext.prototype.WITH = function() {
+ return this.getToken(SqlParser.WITH, 0);
+};
+
+AlterViewContext.prototype.CHECK = function() {
+ return this.getToken(SqlParser.CHECK, 0);
+};
+
+AlterViewContext.prototype.OPTION = function() {
+ return this.getToken(SqlParser.OPTION, 0);
+};
+
+AlterViewContext.prototype.UNDEFINED = function() {
+ return this.getToken(SqlParser.UNDEFINED, 0);
+};
+
+AlterViewContext.prototype.MERGE = function() {
+ return this.getToken(SqlParser.MERGE, 0);
+};
+
+AlterViewContext.prototype.TEMPTABLE = function() {
+ return this.getToken(SqlParser.TEMPTABLE, 0);
+};
+
+AlterViewContext.prototype.DEFINER = function() {
+ return this.getToken(SqlParser.DEFINER, 0);
+};
+
+AlterViewContext.prototype.INVOKER = function() {
+ return this.getToken(SqlParser.INVOKER, 0);
+};
+
+AlterViewContext.prototype.CASCADED = function() {
+ return this.getToken(SqlParser.CASCADED, 0);
+};
+
+AlterViewContext.prototype.LOCAL = function() {
+ return this.getToken(SqlParser.LOCAL, 0);
+};
+
+AlterViewContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterView(this);
+ }
+};
+
+AlterViewContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterView(this);
+ }
+};
+
+AlterViewContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterView(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.AlterViewContext = AlterViewContext;
+
+SqlParser.prototype.alterView = function() {
+
+ var localctx = new AlterViewContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 132, SqlParser.RULE_alterView);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2228;
+ this.match(SqlParser.ALTER);
+ this.state = 2232;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.ALGORITHM) {
+ this.state = 2229;
+ this.match(SqlParser.ALGORITHM);
+ this.state = 2230;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ this.state = 2231;
+ localctx.algType = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.MERGE || _la===SqlParser.TEMPTABLE || _la===SqlParser.UNDEFINED)) {
+ localctx.algType = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 2235;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.DEFINER) {
+ this.state = 2234;
+ this.ownerStatement();
+ }
+
+ this.state = 2240;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.SQL) {
+ this.state = 2237;
+ this.match(SqlParser.SQL);
+ this.state = 2238;
+ this.match(SqlParser.SECURITY);
+ this.state = 2239;
+ localctx.secContext = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.DEFINER || _la===SqlParser.INVOKER)) {
+ localctx.secContext = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 2242;
+ this.match(SqlParser.VIEW);
+ this.state = 2243;
+ this.fullId();
+ this.state = 2248;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.LR_BRACKET) {
+ this.state = 2244;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 2245;
+ this.uidList();
+ this.state = 2246;
+ this.match(SqlParser.RR_BRACKET);
+ }
+
+ this.state = 2250;
+ this.match(SqlParser.AS);
+ this.state = 2251;
+ this.selectStatement();
+ this.state = 2258;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.WITH) {
+ this.state = 2252;
+ this.match(SqlParser.WITH);
+ this.state = 2254;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.CASCADED || _la===SqlParser.LOCAL) {
+ this.state = 2253;
+ localctx.checkOpt = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.CASCADED || _la===SqlParser.LOCAL)) {
+ localctx.checkOpt = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 2256;
+ this.match(SqlParser.CHECK);
+ this.state = 2257;
+ this.match(SqlParser.OPTION);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function AlterSpecificationContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_alterSpecification;
+ return this;
+}
+
+AlterSpecificationContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+AlterSpecificationContext.prototype.constructor = AlterSpecificationContext;
+
+
+
+AlterSpecificationContext.prototype.copyFrom = function(ctx) {
+ antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx);
+};
+
+
+function AlterByDisableKeysContext(parser, ctx) {
+ AlterSpecificationContext.call(this, parser);
+ AlterSpecificationContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterByDisableKeysContext.prototype = Object.create(AlterSpecificationContext.prototype);
+AlterByDisableKeysContext.prototype.constructor = AlterByDisableKeysContext;
+
+SqlParser.AlterByDisableKeysContext = AlterByDisableKeysContext;
+
+AlterByDisableKeysContext.prototype.DISABLE = function() {
+ return this.getToken(SqlParser.DISABLE, 0);
+};
+
+AlterByDisableKeysContext.prototype.KEYS = function() {
+ return this.getToken(SqlParser.KEYS, 0);
+};
+AlterByDisableKeysContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterByDisableKeys(this);
+ }
+};
+
+AlterByDisableKeysContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterByDisableKeys(this);
+ }
+};
+
+AlterByDisableKeysContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterByDisableKeys(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AlterByDefaultCharsetContext(parser, ctx) {
+ AlterSpecificationContext.call(this, parser);
+ AlterSpecificationContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterByDefaultCharsetContext.prototype = Object.create(AlterSpecificationContext.prototype);
+AlterByDefaultCharsetContext.prototype.constructor = AlterByDefaultCharsetContext;
+
+SqlParser.AlterByDefaultCharsetContext = AlterByDefaultCharsetContext;
+
+AlterByDefaultCharsetContext.prototype.CHARACTER = function() {
+ return this.getToken(SqlParser.CHARACTER, 0);
+};
+
+AlterByDefaultCharsetContext.prototype.SET = function() {
+ return this.getToken(SqlParser.SET, 0);
+};
+
+AlterByDefaultCharsetContext.prototype.EQUAL_SYMBOL = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.EQUAL_SYMBOL);
+ } else {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, i);
+ }
+};
+
+
+AlterByDefaultCharsetContext.prototype.charsetName = function() {
+ return this.getTypedRuleContext(CharsetNameContext,0);
+};
+
+AlterByDefaultCharsetContext.prototype.DEFAULT = function() {
+ return this.getToken(SqlParser.DEFAULT, 0);
+};
+
+AlterByDefaultCharsetContext.prototype.COLLATE = function() {
+ return this.getToken(SqlParser.COLLATE, 0);
+};
+
+AlterByDefaultCharsetContext.prototype.collationName = function() {
+ return this.getTypedRuleContext(CollationNameContext,0);
+};
+AlterByDefaultCharsetContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterByDefaultCharset(this);
+ }
+};
+
+AlterByDefaultCharsetContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterByDefaultCharset(this);
+ }
+};
+
+AlterByDefaultCharsetContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterByDefaultCharset(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AlterByRenameColumnContext(parser, ctx) {
+ AlterSpecificationContext.call(this, parser);
+ this.oldColumn = null; // UidContext;
+ this.newColumn = null; // UidContext;
+ AlterSpecificationContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterByRenameColumnContext.prototype = Object.create(AlterSpecificationContext.prototype);
+AlterByRenameColumnContext.prototype.constructor = AlterByRenameColumnContext;
+
+SqlParser.AlterByRenameColumnContext = AlterByRenameColumnContext;
+
+AlterByRenameColumnContext.prototype.RENAME = function() {
+ return this.getToken(SqlParser.RENAME, 0);
+};
+
+AlterByRenameColumnContext.prototype.COLUMN = function() {
+ return this.getToken(SqlParser.COLUMN, 0);
+};
+
+AlterByRenameColumnContext.prototype.TO = function() {
+ return this.getToken(SqlParser.TO, 0);
+};
+
+AlterByRenameColumnContext.prototype.uid = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UidContext);
+ } else {
+ return this.getTypedRuleContext(UidContext,i);
+ }
+};
+AlterByRenameColumnContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterByRenameColumn(this);
+ }
+};
+
+AlterByRenameColumnContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterByRenameColumn(this);
+ }
+};
+
+AlterByRenameColumnContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterByRenameColumn(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AlterByConvertCharsetContext(parser, ctx) {
+ AlterSpecificationContext.call(this, parser);
+ AlterSpecificationContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterByConvertCharsetContext.prototype = Object.create(AlterSpecificationContext.prototype);
+AlterByConvertCharsetContext.prototype.constructor = AlterByConvertCharsetContext;
+
+SqlParser.AlterByConvertCharsetContext = AlterByConvertCharsetContext;
+
+AlterByConvertCharsetContext.prototype.CONVERT = function() {
+ return this.getToken(SqlParser.CONVERT, 0);
+};
+
+AlterByConvertCharsetContext.prototype.TO = function() {
+ return this.getToken(SqlParser.TO, 0);
+};
+
+AlterByConvertCharsetContext.prototype.CHARACTER = function() {
+ return this.getToken(SqlParser.CHARACTER, 0);
+};
+
+AlterByConvertCharsetContext.prototype.SET = function() {
+ return this.getToken(SqlParser.SET, 0);
+};
+
+AlterByConvertCharsetContext.prototype.charsetName = function() {
+ return this.getTypedRuleContext(CharsetNameContext,0);
+};
+
+AlterByConvertCharsetContext.prototype.COLLATE = function() {
+ return this.getToken(SqlParser.COLLATE, 0);
+};
+
+AlterByConvertCharsetContext.prototype.collationName = function() {
+ return this.getTypedRuleContext(CollationNameContext,0);
+};
+AlterByConvertCharsetContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterByConvertCharset(this);
+ }
+};
+
+AlterByConvertCharsetContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterByConvertCharset(this);
+ }
+};
+
+AlterByConvertCharsetContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterByConvertCharset(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AlterByAddPartitionContext(parser, ctx) {
+ AlterSpecificationContext.call(this, parser);
+ AlterSpecificationContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterByAddPartitionContext.prototype = Object.create(AlterSpecificationContext.prototype);
+AlterByAddPartitionContext.prototype.constructor = AlterByAddPartitionContext;
+
+SqlParser.AlterByAddPartitionContext = AlterByAddPartitionContext;
+
+AlterByAddPartitionContext.prototype.ADD = function() {
+ return this.getToken(SqlParser.ADD, 0);
+};
+
+AlterByAddPartitionContext.prototype.PARTITION = function() {
+ return this.getToken(SqlParser.PARTITION, 0);
+};
+
+AlterByAddPartitionContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+AlterByAddPartitionContext.prototype.partitionDefinition = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(PartitionDefinitionContext);
+ } else {
+ return this.getTypedRuleContext(PartitionDefinitionContext,i);
+ }
+};
+
+AlterByAddPartitionContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+AlterByAddPartitionContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+AlterByAddPartitionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterByAddPartition(this);
+ }
+};
+
+AlterByAddPartitionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterByAddPartition(this);
+ }
+};
+
+AlterByAddPartitionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterByAddPartition(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AlterByAddForeignKeyContext(parser, ctx) {
+ AlterSpecificationContext.call(this, parser);
+ this.name = null; // UidContext;
+ this.indexName = null; // UidContext;
+ AlterSpecificationContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterByAddForeignKeyContext.prototype = Object.create(AlterSpecificationContext.prototype);
+AlterByAddForeignKeyContext.prototype.constructor = AlterByAddForeignKeyContext;
+
+SqlParser.AlterByAddForeignKeyContext = AlterByAddForeignKeyContext;
+
+AlterByAddForeignKeyContext.prototype.ADD = function() {
+ return this.getToken(SqlParser.ADD, 0);
+};
+
+AlterByAddForeignKeyContext.prototype.FOREIGN = function() {
+ return this.getToken(SqlParser.FOREIGN, 0);
+};
+
+AlterByAddForeignKeyContext.prototype.KEY = function() {
+ return this.getToken(SqlParser.KEY, 0);
+};
+
+AlterByAddForeignKeyContext.prototype.indexColumnNames = function() {
+ return this.getTypedRuleContext(IndexColumnNamesContext,0);
+};
+
+AlterByAddForeignKeyContext.prototype.referenceDefinition = function() {
+ return this.getTypedRuleContext(ReferenceDefinitionContext,0);
+};
+
+AlterByAddForeignKeyContext.prototype.CONSTRAINT = function() {
+ return this.getToken(SqlParser.CONSTRAINT, 0);
+};
+
+AlterByAddForeignKeyContext.prototype.uid = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UidContext);
+ } else {
+ return this.getTypedRuleContext(UidContext,i);
+ }
+};
+AlterByAddForeignKeyContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterByAddForeignKey(this);
+ }
+};
+
+AlterByAddForeignKeyContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterByAddForeignKey(this);
+ }
+};
+
+AlterByAddForeignKeyContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterByAddForeignKey(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AlterByRenameIndexContext(parser, ctx) {
+ AlterSpecificationContext.call(this, parser);
+ this.indexFormat = null; // Token;
+ AlterSpecificationContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterByRenameIndexContext.prototype = Object.create(AlterSpecificationContext.prototype);
+AlterByRenameIndexContext.prototype.constructor = AlterByRenameIndexContext;
+
+SqlParser.AlterByRenameIndexContext = AlterByRenameIndexContext;
+
+AlterByRenameIndexContext.prototype.RENAME = function() {
+ return this.getToken(SqlParser.RENAME, 0);
+};
+
+AlterByRenameIndexContext.prototype.uid = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UidContext);
+ } else {
+ return this.getTypedRuleContext(UidContext,i);
+ }
+};
+
+AlterByRenameIndexContext.prototype.TO = function() {
+ return this.getToken(SqlParser.TO, 0);
+};
+
+AlterByRenameIndexContext.prototype.INDEX = function() {
+ return this.getToken(SqlParser.INDEX, 0);
+};
+
+AlterByRenameIndexContext.prototype.KEY = function() {
+ return this.getToken(SqlParser.KEY, 0);
+};
+AlterByRenameIndexContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterByRenameIndex(this);
+ }
+};
+
+AlterByRenameIndexContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterByRenameIndex(this);
+ }
+};
+
+AlterByRenameIndexContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterByRenameIndex(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AlterByRemovePartitioningContext(parser, ctx) {
+ AlterSpecificationContext.call(this, parser);
+ AlterSpecificationContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterByRemovePartitioningContext.prototype = Object.create(AlterSpecificationContext.prototype);
+AlterByRemovePartitioningContext.prototype.constructor = AlterByRemovePartitioningContext;
+
+SqlParser.AlterByRemovePartitioningContext = AlterByRemovePartitioningContext;
+
+AlterByRemovePartitioningContext.prototype.REMOVE = function() {
+ return this.getToken(SqlParser.REMOVE, 0);
+};
+
+AlterByRemovePartitioningContext.prototype.PARTITIONING = function() {
+ return this.getToken(SqlParser.PARTITIONING, 0);
+};
+AlterByRemovePartitioningContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterByRemovePartitioning(this);
+ }
+};
+
+AlterByRemovePartitioningContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterByRemovePartitioning(this);
+ }
+};
+
+AlterByRemovePartitioningContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterByRemovePartitioning(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AlterByRenameContext(parser, ctx) {
+ AlterSpecificationContext.call(this, parser);
+ this.renameFormat = null; // Token;
+ AlterSpecificationContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterByRenameContext.prototype = Object.create(AlterSpecificationContext.prototype);
+AlterByRenameContext.prototype.constructor = AlterByRenameContext;
+
+SqlParser.AlterByRenameContext = AlterByRenameContext;
+
+AlterByRenameContext.prototype.RENAME = function() {
+ return this.getToken(SqlParser.RENAME, 0);
+};
+
+AlterByRenameContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+AlterByRenameContext.prototype.fullId = function() {
+ return this.getTypedRuleContext(FullIdContext,0);
+};
+
+AlterByRenameContext.prototype.TO = function() {
+ return this.getToken(SqlParser.TO, 0);
+};
+
+AlterByRenameContext.prototype.AS = function() {
+ return this.getToken(SqlParser.AS, 0);
+};
+AlterByRenameContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterByRename(this);
+ }
+};
+
+AlterByRenameContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterByRename(this);
+ }
+};
+
+AlterByRenameContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterByRename(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AlterByOptimizePartitionContext(parser, ctx) {
+ AlterSpecificationContext.call(this, parser);
+ AlterSpecificationContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterByOptimizePartitionContext.prototype = Object.create(AlterSpecificationContext.prototype);
+AlterByOptimizePartitionContext.prototype.constructor = AlterByOptimizePartitionContext;
+
+SqlParser.AlterByOptimizePartitionContext = AlterByOptimizePartitionContext;
+
+AlterByOptimizePartitionContext.prototype.OPTIMIZE = function() {
+ return this.getToken(SqlParser.OPTIMIZE, 0);
+};
+
+AlterByOptimizePartitionContext.prototype.PARTITION = function() {
+ return this.getToken(SqlParser.PARTITION, 0);
+};
+
+AlterByOptimizePartitionContext.prototype.uidList = function() {
+ return this.getTypedRuleContext(UidListContext,0);
+};
+
+AlterByOptimizePartitionContext.prototype.ALL = function() {
+ return this.getToken(SqlParser.ALL, 0);
+};
+AlterByOptimizePartitionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterByOptimizePartition(this);
+ }
+};
+
+AlterByOptimizePartitionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterByOptimizePartition(this);
+ }
+};
+
+AlterByOptimizePartitionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterByOptimizePartition(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AlterByImportTablespaceContext(parser, ctx) {
+ AlterSpecificationContext.call(this, parser);
+ AlterSpecificationContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterByImportTablespaceContext.prototype = Object.create(AlterSpecificationContext.prototype);
+AlterByImportTablespaceContext.prototype.constructor = AlterByImportTablespaceContext;
+
+SqlParser.AlterByImportTablespaceContext = AlterByImportTablespaceContext;
+
+AlterByImportTablespaceContext.prototype.IMPORT = function() {
+ return this.getToken(SqlParser.IMPORT, 0);
+};
+
+AlterByImportTablespaceContext.prototype.TABLESPACE = function() {
+ return this.getToken(SqlParser.TABLESPACE, 0);
+};
+AlterByImportTablespaceContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterByImportTablespace(this);
+ }
+};
+
+AlterByImportTablespaceContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterByImportTablespace(this);
+ }
+};
+
+AlterByImportTablespaceContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterByImportTablespace(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AlterByCoalescePartitionContext(parser, ctx) {
+ AlterSpecificationContext.call(this, parser);
+ AlterSpecificationContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterByCoalescePartitionContext.prototype = Object.create(AlterSpecificationContext.prototype);
+AlterByCoalescePartitionContext.prototype.constructor = AlterByCoalescePartitionContext;
+
+SqlParser.AlterByCoalescePartitionContext = AlterByCoalescePartitionContext;
+
+AlterByCoalescePartitionContext.prototype.COALESCE = function() {
+ return this.getToken(SqlParser.COALESCE, 0);
+};
+
+AlterByCoalescePartitionContext.prototype.PARTITION = function() {
+ return this.getToken(SqlParser.PARTITION, 0);
+};
+
+AlterByCoalescePartitionContext.prototype.decimalLiteral = function() {
+ return this.getTypedRuleContext(DecimalLiteralContext,0);
+};
+AlterByCoalescePartitionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterByCoalescePartition(this);
+ }
+};
+
+AlterByCoalescePartitionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterByCoalescePartition(this);
+ }
+};
+
+AlterByCoalescePartitionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterByCoalescePartition(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AlterByAddColumnsContext(parser, ctx) {
+ AlterSpecificationContext.call(this, parser);
+ AlterSpecificationContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterByAddColumnsContext.prototype = Object.create(AlterSpecificationContext.prototype);
+AlterByAddColumnsContext.prototype.constructor = AlterByAddColumnsContext;
+
+SqlParser.AlterByAddColumnsContext = AlterByAddColumnsContext;
+
+AlterByAddColumnsContext.prototype.ADD = function() {
+ return this.getToken(SqlParser.ADD, 0);
+};
+
+AlterByAddColumnsContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+AlterByAddColumnsContext.prototype.uid = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UidContext);
+ } else {
+ return this.getTypedRuleContext(UidContext,i);
+ }
+};
+
+AlterByAddColumnsContext.prototype.columnDefinition = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ColumnDefinitionContext);
+ } else {
+ return this.getTypedRuleContext(ColumnDefinitionContext,i);
+ }
+};
+
+AlterByAddColumnsContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+AlterByAddColumnsContext.prototype.COLUMN = function() {
+ return this.getToken(SqlParser.COLUMN, 0);
+};
+
+AlterByAddColumnsContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+AlterByAddColumnsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterByAddColumns(this);
+ }
+};
+
+AlterByAddColumnsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterByAddColumns(this);
+ }
+};
+
+AlterByAddColumnsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterByAddColumns(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AlterByAlterIndexVisibilityContext(parser, ctx) {
+ AlterSpecificationContext.call(this, parser);
+ AlterSpecificationContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterByAlterIndexVisibilityContext.prototype = Object.create(AlterSpecificationContext.prototype);
+AlterByAlterIndexVisibilityContext.prototype.constructor = AlterByAlterIndexVisibilityContext;
+
+SqlParser.AlterByAlterIndexVisibilityContext = AlterByAlterIndexVisibilityContext;
+
+AlterByAlterIndexVisibilityContext.prototype.ALTER = function() {
+ return this.getToken(SqlParser.ALTER, 0);
+};
+
+AlterByAlterIndexVisibilityContext.prototype.INDEX = function() {
+ return this.getToken(SqlParser.INDEX, 0);
+};
+
+AlterByAlterIndexVisibilityContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+AlterByAlterIndexVisibilityContext.prototype.VISIBLE = function() {
+ return this.getToken(SqlParser.VISIBLE, 0);
+};
+
+AlterByAlterIndexVisibilityContext.prototype.INVISIBLE = function() {
+ return this.getToken(SqlParser.INVISIBLE, 0);
+};
+AlterByAlterIndexVisibilityContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterByAlterIndexVisibility(this);
+ }
+};
+
+AlterByAlterIndexVisibilityContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterByAlterIndexVisibility(this);
+ }
+};
+
+AlterByAlterIndexVisibilityContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterByAlterIndexVisibility(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AlterByDropForeignKeyContext(parser, ctx) {
+ AlterSpecificationContext.call(this, parser);
+ AlterSpecificationContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterByDropForeignKeyContext.prototype = Object.create(AlterSpecificationContext.prototype);
+AlterByDropForeignKeyContext.prototype.constructor = AlterByDropForeignKeyContext;
+
+SqlParser.AlterByDropForeignKeyContext = AlterByDropForeignKeyContext;
+
+AlterByDropForeignKeyContext.prototype.DROP = function() {
+ return this.getToken(SqlParser.DROP, 0);
+};
+
+AlterByDropForeignKeyContext.prototype.FOREIGN = function() {
+ return this.getToken(SqlParser.FOREIGN, 0);
+};
+
+AlterByDropForeignKeyContext.prototype.KEY = function() {
+ return this.getToken(SqlParser.KEY, 0);
+};
+
+AlterByDropForeignKeyContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+AlterByDropForeignKeyContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterByDropForeignKey(this);
+ }
+};
+
+AlterByDropForeignKeyContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterByDropForeignKey(this);
+ }
+};
+
+AlterByDropForeignKeyContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterByDropForeignKey(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AlterByAddCheckTableConstraintContext(parser, ctx) {
+ AlterSpecificationContext.call(this, parser);
+ this.name = null; // UidContext;
+ AlterSpecificationContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterByAddCheckTableConstraintContext.prototype = Object.create(AlterSpecificationContext.prototype);
+AlterByAddCheckTableConstraintContext.prototype.constructor = AlterByAddCheckTableConstraintContext;
+
+SqlParser.AlterByAddCheckTableConstraintContext = AlterByAddCheckTableConstraintContext;
+
+AlterByAddCheckTableConstraintContext.prototype.ADD = function() {
+ return this.getToken(SqlParser.ADD, 0);
+};
+
+AlterByAddCheckTableConstraintContext.prototype.CHECK = function() {
+ return this.getToken(SqlParser.CHECK, 0);
+};
+
+AlterByAddCheckTableConstraintContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+AlterByAddCheckTableConstraintContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+AlterByAddCheckTableConstraintContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+AlterByAddCheckTableConstraintContext.prototype.CONSTRAINT = function() {
+ return this.getToken(SqlParser.CONSTRAINT, 0);
+};
+
+AlterByAddCheckTableConstraintContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+AlterByAddCheckTableConstraintContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterByAddCheckTableConstraint(this);
+ }
+};
+
+AlterByAddCheckTableConstraintContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterByAddCheckTableConstraint(this);
+ }
+};
+
+AlterByAddCheckTableConstraintContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterByAddCheckTableConstraint(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AlterByRebuildPartitionContext(parser, ctx) {
+ AlterSpecificationContext.call(this, parser);
+ AlterSpecificationContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterByRebuildPartitionContext.prototype = Object.create(AlterSpecificationContext.prototype);
+AlterByRebuildPartitionContext.prototype.constructor = AlterByRebuildPartitionContext;
+
+SqlParser.AlterByRebuildPartitionContext = AlterByRebuildPartitionContext;
+
+AlterByRebuildPartitionContext.prototype.REBUILD = function() {
+ return this.getToken(SqlParser.REBUILD, 0);
+};
+
+AlterByRebuildPartitionContext.prototype.PARTITION = function() {
+ return this.getToken(SqlParser.PARTITION, 0);
+};
+
+AlterByRebuildPartitionContext.prototype.uidList = function() {
+ return this.getTypedRuleContext(UidListContext,0);
+};
+
+AlterByRebuildPartitionContext.prototype.ALL = function() {
+ return this.getToken(SqlParser.ALL, 0);
+};
+AlterByRebuildPartitionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterByRebuildPartition(this);
+ }
+};
+
+AlterByRebuildPartitionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterByRebuildPartition(this);
+ }
+};
+
+AlterByRebuildPartitionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterByRebuildPartition(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AlterByUpgradePartitioningContext(parser, ctx) {
+ AlterSpecificationContext.call(this, parser);
+ AlterSpecificationContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterByUpgradePartitioningContext.prototype = Object.create(AlterSpecificationContext.prototype);
+AlterByUpgradePartitioningContext.prototype.constructor = AlterByUpgradePartitioningContext;
+
+SqlParser.AlterByUpgradePartitioningContext = AlterByUpgradePartitioningContext;
+
+AlterByUpgradePartitioningContext.prototype.UPGRADE = function() {
+ return this.getToken(SqlParser.UPGRADE, 0);
+};
+
+AlterByUpgradePartitioningContext.prototype.PARTITIONING = function() {
+ return this.getToken(SqlParser.PARTITIONING, 0);
+};
+AlterByUpgradePartitioningContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterByUpgradePartitioning(this);
+ }
+};
+
+AlterByUpgradePartitioningContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterByUpgradePartitioning(this);
+ }
+};
+
+AlterByUpgradePartitioningContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterByUpgradePartitioning(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AlterByRepairPartitionContext(parser, ctx) {
+ AlterSpecificationContext.call(this, parser);
+ AlterSpecificationContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterByRepairPartitionContext.prototype = Object.create(AlterSpecificationContext.prototype);
+AlterByRepairPartitionContext.prototype.constructor = AlterByRepairPartitionContext;
+
+SqlParser.AlterByRepairPartitionContext = AlterByRepairPartitionContext;
+
+AlterByRepairPartitionContext.prototype.REPAIR = function() {
+ return this.getToken(SqlParser.REPAIR, 0);
+};
+
+AlterByRepairPartitionContext.prototype.PARTITION = function() {
+ return this.getToken(SqlParser.PARTITION, 0);
+};
+
+AlterByRepairPartitionContext.prototype.uidList = function() {
+ return this.getTypedRuleContext(UidListContext,0);
+};
+
+AlterByRepairPartitionContext.prototype.ALL = function() {
+ return this.getToken(SqlParser.ALL, 0);
+};
+AlterByRepairPartitionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterByRepairPartition(this);
+ }
+};
+
+AlterByRepairPartitionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterByRepairPartition(this);
+ }
+};
+
+AlterByRepairPartitionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterByRepairPartition(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AlterByExchangePartitionContext(parser, ctx) {
+ AlterSpecificationContext.call(this, parser);
+ this.validationFormat = null; // Token;
+ AlterSpecificationContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterByExchangePartitionContext.prototype = Object.create(AlterSpecificationContext.prototype);
+AlterByExchangePartitionContext.prototype.constructor = AlterByExchangePartitionContext;
+
+SqlParser.AlterByExchangePartitionContext = AlterByExchangePartitionContext;
+
+AlterByExchangePartitionContext.prototype.EXCHANGE = function() {
+ return this.getToken(SqlParser.EXCHANGE, 0);
+};
+
+AlterByExchangePartitionContext.prototype.PARTITION = function() {
+ return this.getToken(SqlParser.PARTITION, 0);
+};
+
+AlterByExchangePartitionContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+AlterByExchangePartitionContext.prototype.WITH = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.WITH);
+ } else {
+ return this.getToken(SqlParser.WITH, i);
+ }
+};
+
+
+AlterByExchangePartitionContext.prototype.TABLE = function() {
+ return this.getToken(SqlParser.TABLE, 0);
+};
+
+AlterByExchangePartitionContext.prototype.tableName = function() {
+ return this.getTypedRuleContext(TableNameContext,0);
+};
+
+AlterByExchangePartitionContext.prototype.VALIDATION = function() {
+ return this.getToken(SqlParser.VALIDATION, 0);
+};
+
+AlterByExchangePartitionContext.prototype.WITHOUT = function() {
+ return this.getToken(SqlParser.WITHOUT, 0);
+};
+AlterByExchangePartitionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterByExchangePartition(this);
+ }
+};
+
+AlterByExchangePartitionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterByExchangePartition(this);
+ }
+};
+
+AlterByExchangePartitionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterByExchangePartition(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AlterByAddIndexContext(parser, ctx) {
+ AlterSpecificationContext.call(this, parser);
+ this.indexFormat = null; // Token;
+ AlterSpecificationContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterByAddIndexContext.prototype = Object.create(AlterSpecificationContext.prototype);
+AlterByAddIndexContext.prototype.constructor = AlterByAddIndexContext;
+
+SqlParser.AlterByAddIndexContext = AlterByAddIndexContext;
+
+AlterByAddIndexContext.prototype.ADD = function() {
+ return this.getToken(SqlParser.ADD, 0);
+};
+
+AlterByAddIndexContext.prototype.indexColumnNames = function() {
+ return this.getTypedRuleContext(IndexColumnNamesContext,0);
+};
+
+AlterByAddIndexContext.prototype.INDEX = function() {
+ return this.getToken(SqlParser.INDEX, 0);
+};
+
+AlterByAddIndexContext.prototype.KEY = function() {
+ return this.getToken(SqlParser.KEY, 0);
+};
+
+AlterByAddIndexContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+AlterByAddIndexContext.prototype.indexType = function() {
+ return this.getTypedRuleContext(IndexTypeContext,0);
+};
+
+AlterByAddIndexContext.prototype.indexOption = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(IndexOptionContext);
+ } else {
+ return this.getTypedRuleContext(IndexOptionContext,i);
+ }
+};
+AlterByAddIndexContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterByAddIndex(this);
+ }
+};
+
+AlterByAddIndexContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterByAddIndex(this);
+ }
+};
+
+AlterByAddIndexContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterByAddIndex(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AlterByDropColumnContext(parser, ctx) {
+ AlterSpecificationContext.call(this, parser);
+ AlterSpecificationContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterByDropColumnContext.prototype = Object.create(AlterSpecificationContext.prototype);
+AlterByDropColumnContext.prototype.constructor = AlterByDropColumnContext;
+
+SqlParser.AlterByDropColumnContext = AlterByDropColumnContext;
+
+AlterByDropColumnContext.prototype.DROP = function() {
+ return this.getToken(SqlParser.DROP, 0);
+};
+
+AlterByDropColumnContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+AlterByDropColumnContext.prototype.COLUMN = function() {
+ return this.getToken(SqlParser.COLUMN, 0);
+};
+
+AlterByDropColumnContext.prototype.RESTRICT = function() {
+ return this.getToken(SqlParser.RESTRICT, 0);
+};
+AlterByDropColumnContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterByDropColumn(this);
+ }
+};
+
+AlterByDropColumnContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterByDropColumn(this);
+ }
+};
+
+AlterByDropColumnContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterByDropColumn(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AlterByImportPartitionContext(parser, ctx) {
+ AlterSpecificationContext.call(this, parser);
+ AlterSpecificationContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterByImportPartitionContext.prototype = Object.create(AlterSpecificationContext.prototype);
+AlterByImportPartitionContext.prototype.constructor = AlterByImportPartitionContext;
+
+SqlParser.AlterByImportPartitionContext = AlterByImportPartitionContext;
+
+AlterByImportPartitionContext.prototype.IMPORT = function() {
+ return this.getToken(SqlParser.IMPORT, 0);
+};
+
+AlterByImportPartitionContext.prototype.PARTITION = function() {
+ return this.getToken(SqlParser.PARTITION, 0);
+};
+
+AlterByImportPartitionContext.prototype.TABLESPACE = function() {
+ return this.getToken(SqlParser.TABLESPACE, 0);
+};
+
+AlterByImportPartitionContext.prototype.uidList = function() {
+ return this.getTypedRuleContext(UidListContext,0);
+};
+
+AlterByImportPartitionContext.prototype.ALL = function() {
+ return this.getToken(SqlParser.ALL, 0);
+};
+AlterByImportPartitionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterByImportPartition(this);
+ }
+};
+
+AlterByImportPartitionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterByImportPartition(this);
+ }
+};
+
+AlterByImportPartitionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterByImportPartition(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AlterByChangeDefaultContext(parser, ctx) {
+ AlterSpecificationContext.call(this, parser);
+ AlterSpecificationContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterByChangeDefaultContext.prototype = Object.create(AlterSpecificationContext.prototype);
+AlterByChangeDefaultContext.prototype.constructor = AlterByChangeDefaultContext;
+
+SqlParser.AlterByChangeDefaultContext = AlterByChangeDefaultContext;
+
+AlterByChangeDefaultContext.prototype.ALTER = function() {
+ return this.getToken(SqlParser.ALTER, 0);
+};
+
+AlterByChangeDefaultContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+AlterByChangeDefaultContext.prototype.SET = function() {
+ return this.getToken(SqlParser.SET, 0);
+};
+
+AlterByChangeDefaultContext.prototype.DEFAULT = function() {
+ return this.getToken(SqlParser.DEFAULT, 0);
+};
+
+AlterByChangeDefaultContext.prototype.defaultValue = function() {
+ return this.getTypedRuleContext(DefaultValueContext,0);
+};
+
+AlterByChangeDefaultContext.prototype.DROP = function() {
+ return this.getToken(SqlParser.DROP, 0);
+};
+
+AlterByChangeDefaultContext.prototype.COLUMN = function() {
+ return this.getToken(SqlParser.COLUMN, 0);
+};
+AlterByChangeDefaultContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterByChangeDefault(this);
+ }
+};
+
+AlterByChangeDefaultContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterByChangeDefault(this);
+ }
+};
+
+AlterByChangeDefaultContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterByChangeDefault(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AlterByForceContext(parser, ctx) {
+ AlterSpecificationContext.call(this, parser);
+ AlterSpecificationContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterByForceContext.prototype = Object.create(AlterSpecificationContext.prototype);
+AlterByForceContext.prototype.constructor = AlterByForceContext;
+
+SqlParser.AlterByForceContext = AlterByForceContext;
+
+AlterByForceContext.prototype.FORCE = function() {
+ return this.getToken(SqlParser.FORCE, 0);
+};
+AlterByForceContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterByForce(this);
+ }
+};
+
+AlterByForceContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterByForce(this);
+ }
+};
+
+AlterByForceContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterByForce(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AlterByDropPartitionContext(parser, ctx) {
+ AlterSpecificationContext.call(this, parser);
+ AlterSpecificationContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterByDropPartitionContext.prototype = Object.create(AlterSpecificationContext.prototype);
+AlterByDropPartitionContext.prototype.constructor = AlterByDropPartitionContext;
+
+SqlParser.AlterByDropPartitionContext = AlterByDropPartitionContext;
+
+AlterByDropPartitionContext.prototype.DROP = function() {
+ return this.getToken(SqlParser.DROP, 0);
+};
+
+AlterByDropPartitionContext.prototype.PARTITION = function() {
+ return this.getToken(SqlParser.PARTITION, 0);
+};
+
+AlterByDropPartitionContext.prototype.uidList = function() {
+ return this.getTypedRuleContext(UidListContext,0);
+};
+AlterByDropPartitionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterByDropPartition(this);
+ }
+};
+
+AlterByDropPartitionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterByDropPartition(this);
+ }
+};
+
+AlterByDropPartitionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterByDropPartition(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AlterByAddSpecialIndexContext(parser, ctx) {
+ AlterSpecificationContext.call(this, parser);
+ this.keyType = null; // Token;
+ this.indexFormat = null; // Token;
+ AlterSpecificationContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterByAddSpecialIndexContext.prototype = Object.create(AlterSpecificationContext.prototype);
+AlterByAddSpecialIndexContext.prototype.constructor = AlterByAddSpecialIndexContext;
+
+SqlParser.AlterByAddSpecialIndexContext = AlterByAddSpecialIndexContext;
+
+AlterByAddSpecialIndexContext.prototype.ADD = function() {
+ return this.getToken(SqlParser.ADD, 0);
+};
+
+AlterByAddSpecialIndexContext.prototype.indexColumnNames = function() {
+ return this.getTypedRuleContext(IndexColumnNamesContext,0);
+};
+
+AlterByAddSpecialIndexContext.prototype.FULLTEXT = function() {
+ return this.getToken(SqlParser.FULLTEXT, 0);
+};
+
+AlterByAddSpecialIndexContext.prototype.SPATIAL = function() {
+ return this.getToken(SqlParser.SPATIAL, 0);
+};
+
+AlterByAddSpecialIndexContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+AlterByAddSpecialIndexContext.prototype.indexOption = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(IndexOptionContext);
+ } else {
+ return this.getTypedRuleContext(IndexOptionContext,i);
+ }
+};
+
+AlterByAddSpecialIndexContext.prototype.INDEX = function() {
+ return this.getToken(SqlParser.INDEX, 0);
+};
+
+AlterByAddSpecialIndexContext.prototype.KEY = function() {
+ return this.getToken(SqlParser.KEY, 0);
+};
+AlterByAddSpecialIndexContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterByAddSpecialIndex(this);
+ }
+};
+
+AlterByAddSpecialIndexContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterByAddSpecialIndex(this);
+ }
+};
+
+AlterByAddSpecialIndexContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterByAddSpecialIndex(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AlterByModifyColumnContext(parser, ctx) {
+ AlterSpecificationContext.call(this, parser);
+ AlterSpecificationContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterByModifyColumnContext.prototype = Object.create(AlterSpecificationContext.prototype);
+AlterByModifyColumnContext.prototype.constructor = AlterByModifyColumnContext;
+
+SqlParser.AlterByModifyColumnContext = AlterByModifyColumnContext;
+
+AlterByModifyColumnContext.prototype.MODIFY = function() {
+ return this.getToken(SqlParser.MODIFY, 0);
+};
+
+AlterByModifyColumnContext.prototype.uid = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UidContext);
+ } else {
+ return this.getTypedRuleContext(UidContext,i);
+ }
+};
+
+AlterByModifyColumnContext.prototype.columnDefinition = function() {
+ return this.getTypedRuleContext(ColumnDefinitionContext,0);
+};
+
+AlterByModifyColumnContext.prototype.COLUMN = function() {
+ return this.getToken(SqlParser.COLUMN, 0);
+};
+
+AlterByModifyColumnContext.prototype.FIRST = function() {
+ return this.getToken(SqlParser.FIRST, 0);
+};
+
+AlterByModifyColumnContext.prototype.AFTER = function() {
+ return this.getToken(SqlParser.AFTER, 0);
+};
+AlterByModifyColumnContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterByModifyColumn(this);
+ }
+};
+
+AlterByModifyColumnContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterByModifyColumn(this);
+ }
+};
+
+AlterByModifyColumnContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterByModifyColumn(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AlterByTableOptionContext(parser, ctx) {
+ AlterSpecificationContext.call(this, parser);
+ AlterSpecificationContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterByTableOptionContext.prototype = Object.create(AlterSpecificationContext.prototype);
+AlterByTableOptionContext.prototype.constructor = AlterByTableOptionContext;
+
+SqlParser.AlterByTableOptionContext = AlterByTableOptionContext;
+
+AlterByTableOptionContext.prototype.tableOption = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(TableOptionContext);
+ } else {
+ return this.getTypedRuleContext(TableOptionContext,i);
+ }
+};
+
+AlterByTableOptionContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+AlterByTableOptionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterByTableOption(this);
+ }
+};
+
+AlterByTableOptionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterByTableOption(this);
+ }
+};
+
+AlterByTableOptionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterByTableOption(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AlterByDropPrimaryKeyContext(parser, ctx) {
+ AlterSpecificationContext.call(this, parser);
+ AlterSpecificationContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterByDropPrimaryKeyContext.prototype = Object.create(AlterSpecificationContext.prototype);
+AlterByDropPrimaryKeyContext.prototype.constructor = AlterByDropPrimaryKeyContext;
+
+SqlParser.AlterByDropPrimaryKeyContext = AlterByDropPrimaryKeyContext;
+
+AlterByDropPrimaryKeyContext.prototype.DROP = function() {
+ return this.getToken(SqlParser.DROP, 0);
+};
+
+AlterByDropPrimaryKeyContext.prototype.PRIMARY = function() {
+ return this.getToken(SqlParser.PRIMARY, 0);
+};
+
+AlterByDropPrimaryKeyContext.prototype.KEY = function() {
+ return this.getToken(SqlParser.KEY, 0);
+};
+AlterByDropPrimaryKeyContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterByDropPrimaryKey(this);
+ }
+};
+
+AlterByDropPrimaryKeyContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterByDropPrimaryKey(this);
+ }
+};
+
+AlterByDropPrimaryKeyContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterByDropPrimaryKey(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AlterByLockContext(parser, ctx) {
+ AlterSpecificationContext.call(this, parser);
+ this.lockType = null; // Token;
+ AlterSpecificationContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterByLockContext.prototype = Object.create(AlterSpecificationContext.prototype);
+AlterByLockContext.prototype.constructor = AlterByLockContext;
+
+SqlParser.AlterByLockContext = AlterByLockContext;
+
+AlterByLockContext.prototype.LOCK = function() {
+ return this.getToken(SqlParser.LOCK, 0);
+};
+
+AlterByLockContext.prototype.DEFAULT = function() {
+ return this.getToken(SqlParser.DEFAULT, 0);
+};
+
+AlterByLockContext.prototype.NONE = function() {
+ return this.getToken(SqlParser.NONE, 0);
+};
+
+AlterByLockContext.prototype.SHARED = function() {
+ return this.getToken(SqlParser.SHARED, 0);
+};
+
+AlterByLockContext.prototype.EXCLUSIVE = function() {
+ return this.getToken(SqlParser.EXCLUSIVE, 0);
+};
+
+AlterByLockContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+AlterByLockContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterByLock(this);
+ }
+};
+
+AlterByLockContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterByLock(this);
+ }
+};
+
+AlterByLockContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterByLock(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AlterByDiscardPartitionContext(parser, ctx) {
+ AlterSpecificationContext.call(this, parser);
+ AlterSpecificationContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterByDiscardPartitionContext.prototype = Object.create(AlterSpecificationContext.prototype);
+AlterByDiscardPartitionContext.prototype.constructor = AlterByDiscardPartitionContext;
+
+SqlParser.AlterByDiscardPartitionContext = AlterByDiscardPartitionContext;
+
+AlterByDiscardPartitionContext.prototype.DISCARD = function() {
+ return this.getToken(SqlParser.DISCARD, 0);
+};
+
+AlterByDiscardPartitionContext.prototype.PARTITION = function() {
+ return this.getToken(SqlParser.PARTITION, 0);
+};
+
+AlterByDiscardPartitionContext.prototype.TABLESPACE = function() {
+ return this.getToken(SqlParser.TABLESPACE, 0);
+};
+
+AlterByDiscardPartitionContext.prototype.uidList = function() {
+ return this.getTypedRuleContext(UidListContext,0);
+};
+
+AlterByDiscardPartitionContext.prototype.ALL = function() {
+ return this.getToken(SqlParser.ALL, 0);
+};
+AlterByDiscardPartitionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterByDiscardPartition(this);
+ }
+};
+
+AlterByDiscardPartitionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterByDiscardPartition(this);
+ }
+};
+
+AlterByDiscardPartitionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterByDiscardPartition(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AlterByDiscardTablespaceContext(parser, ctx) {
+ AlterSpecificationContext.call(this, parser);
+ AlterSpecificationContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterByDiscardTablespaceContext.prototype = Object.create(AlterSpecificationContext.prototype);
+AlterByDiscardTablespaceContext.prototype.constructor = AlterByDiscardTablespaceContext;
+
+SqlParser.AlterByDiscardTablespaceContext = AlterByDiscardTablespaceContext;
+
+AlterByDiscardTablespaceContext.prototype.DISCARD = function() {
+ return this.getToken(SqlParser.DISCARD, 0);
+};
+
+AlterByDiscardTablespaceContext.prototype.TABLESPACE = function() {
+ return this.getToken(SqlParser.TABLESPACE, 0);
+};
+AlterByDiscardTablespaceContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterByDiscardTablespace(this);
+ }
+};
+
+AlterByDiscardTablespaceContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterByDiscardTablespace(this);
+ }
+};
+
+AlterByDiscardTablespaceContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterByDiscardTablespace(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AlterByValidateContext(parser, ctx) {
+ AlterSpecificationContext.call(this, parser);
+ this.validationFormat = null; // Token;
+ AlterSpecificationContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterByValidateContext.prototype = Object.create(AlterSpecificationContext.prototype);
+AlterByValidateContext.prototype.constructor = AlterByValidateContext;
+
+SqlParser.AlterByValidateContext = AlterByValidateContext;
+
+AlterByValidateContext.prototype.VALIDATION = function() {
+ return this.getToken(SqlParser.VALIDATION, 0);
+};
+
+AlterByValidateContext.prototype.WITHOUT = function() {
+ return this.getToken(SqlParser.WITHOUT, 0);
+};
+
+AlterByValidateContext.prototype.WITH = function() {
+ return this.getToken(SqlParser.WITH, 0);
+};
+AlterByValidateContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterByValidate(this);
+ }
+};
+
+AlterByValidateContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterByValidate(this);
+ }
+};
+
+AlterByValidateContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterByValidate(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AlterByAddPrimaryKeyContext(parser, ctx) {
+ AlterSpecificationContext.call(this, parser);
+ this.name = null; // UidContext;
+ this.index = null; // UidContext;
+ AlterSpecificationContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterByAddPrimaryKeyContext.prototype = Object.create(AlterSpecificationContext.prototype);
+AlterByAddPrimaryKeyContext.prototype.constructor = AlterByAddPrimaryKeyContext;
+
+SqlParser.AlterByAddPrimaryKeyContext = AlterByAddPrimaryKeyContext;
+
+AlterByAddPrimaryKeyContext.prototype.ADD = function() {
+ return this.getToken(SqlParser.ADD, 0);
+};
+
+AlterByAddPrimaryKeyContext.prototype.PRIMARY = function() {
+ return this.getToken(SqlParser.PRIMARY, 0);
+};
+
+AlterByAddPrimaryKeyContext.prototype.KEY = function() {
+ return this.getToken(SqlParser.KEY, 0);
+};
+
+AlterByAddPrimaryKeyContext.prototype.indexColumnNames = function() {
+ return this.getTypedRuleContext(IndexColumnNamesContext,0);
+};
+
+AlterByAddPrimaryKeyContext.prototype.CONSTRAINT = function() {
+ return this.getToken(SqlParser.CONSTRAINT, 0);
+};
+
+AlterByAddPrimaryKeyContext.prototype.indexType = function() {
+ return this.getTypedRuleContext(IndexTypeContext,0);
+};
+
+AlterByAddPrimaryKeyContext.prototype.indexOption = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(IndexOptionContext);
+ } else {
+ return this.getTypedRuleContext(IndexOptionContext,i);
+ }
+};
+
+AlterByAddPrimaryKeyContext.prototype.uid = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UidContext);
+ } else {
+ return this.getTypedRuleContext(UidContext,i);
+ }
+};
+AlterByAddPrimaryKeyContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterByAddPrimaryKey(this);
+ }
+};
+
+AlterByAddPrimaryKeyContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterByAddPrimaryKey(this);
+ }
+};
+
+AlterByAddPrimaryKeyContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterByAddPrimaryKey(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AlterByCheckPartitionContext(parser, ctx) {
+ AlterSpecificationContext.call(this, parser);
+ AlterSpecificationContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterByCheckPartitionContext.prototype = Object.create(AlterSpecificationContext.prototype);
+AlterByCheckPartitionContext.prototype.constructor = AlterByCheckPartitionContext;
+
+SqlParser.AlterByCheckPartitionContext = AlterByCheckPartitionContext;
+
+AlterByCheckPartitionContext.prototype.CHECK = function() {
+ return this.getToken(SqlParser.CHECK, 0);
+};
+
+AlterByCheckPartitionContext.prototype.PARTITION = function() {
+ return this.getToken(SqlParser.PARTITION, 0);
+};
+
+AlterByCheckPartitionContext.prototype.uidList = function() {
+ return this.getTypedRuleContext(UidListContext,0);
+};
+
+AlterByCheckPartitionContext.prototype.ALL = function() {
+ return this.getToken(SqlParser.ALL, 0);
+};
+AlterByCheckPartitionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterByCheckPartition(this);
+ }
+};
+
+AlterByCheckPartitionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterByCheckPartition(this);
+ }
+};
+
+AlterByCheckPartitionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterByCheckPartition(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AlterByEnableKeysContext(parser, ctx) {
+ AlterSpecificationContext.call(this, parser);
+ AlterSpecificationContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterByEnableKeysContext.prototype = Object.create(AlterSpecificationContext.prototype);
+AlterByEnableKeysContext.prototype.constructor = AlterByEnableKeysContext;
+
+SqlParser.AlterByEnableKeysContext = AlterByEnableKeysContext;
+
+AlterByEnableKeysContext.prototype.ENABLE = function() {
+ return this.getToken(SqlParser.ENABLE, 0);
+};
+
+AlterByEnableKeysContext.prototype.KEYS = function() {
+ return this.getToken(SqlParser.KEYS, 0);
+};
+AlterByEnableKeysContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterByEnableKeys(this);
+ }
+};
+
+AlterByEnableKeysContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterByEnableKeys(this);
+ }
+};
+
+AlterByEnableKeysContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterByEnableKeys(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AlterByReorganizePartitionContext(parser, ctx) {
+ AlterSpecificationContext.call(this, parser);
+ AlterSpecificationContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterByReorganizePartitionContext.prototype = Object.create(AlterSpecificationContext.prototype);
+AlterByReorganizePartitionContext.prototype.constructor = AlterByReorganizePartitionContext;
+
+SqlParser.AlterByReorganizePartitionContext = AlterByReorganizePartitionContext;
+
+AlterByReorganizePartitionContext.prototype.REORGANIZE = function() {
+ return this.getToken(SqlParser.REORGANIZE, 0);
+};
+
+AlterByReorganizePartitionContext.prototype.PARTITION = function() {
+ return this.getToken(SqlParser.PARTITION, 0);
+};
+
+AlterByReorganizePartitionContext.prototype.uidList = function() {
+ return this.getTypedRuleContext(UidListContext,0);
+};
+
+AlterByReorganizePartitionContext.prototype.INTO = function() {
+ return this.getToken(SqlParser.INTO, 0);
+};
+
+AlterByReorganizePartitionContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+AlterByReorganizePartitionContext.prototype.partitionDefinition = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(PartitionDefinitionContext);
+ } else {
+ return this.getTypedRuleContext(PartitionDefinitionContext,i);
+ }
+};
+
+AlterByReorganizePartitionContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+AlterByReorganizePartitionContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+AlterByReorganizePartitionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterByReorganizePartition(this);
+ }
+};
+
+AlterByReorganizePartitionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterByReorganizePartition(this);
+ }
+};
+
+AlterByReorganizePartitionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterByReorganizePartition(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AlterBySetAlgorithmContext(parser, ctx) {
+ AlterSpecificationContext.call(this, parser);
+ this.algType = null; // Token;
+ AlterSpecificationContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterBySetAlgorithmContext.prototype = Object.create(AlterSpecificationContext.prototype);
+AlterBySetAlgorithmContext.prototype.constructor = AlterBySetAlgorithmContext;
+
+SqlParser.AlterBySetAlgorithmContext = AlterBySetAlgorithmContext;
+
+AlterBySetAlgorithmContext.prototype.ALGORITHM = function() {
+ return this.getToken(SqlParser.ALGORITHM, 0);
+};
+
+AlterBySetAlgorithmContext.prototype.DEFAULT = function() {
+ return this.getToken(SqlParser.DEFAULT, 0);
+};
+
+AlterBySetAlgorithmContext.prototype.INPLACE = function() {
+ return this.getToken(SqlParser.INPLACE, 0);
+};
+
+AlterBySetAlgorithmContext.prototype.COPY = function() {
+ return this.getToken(SqlParser.COPY, 0);
+};
+
+AlterBySetAlgorithmContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+AlterBySetAlgorithmContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterBySetAlgorithm(this);
+ }
+};
+
+AlterBySetAlgorithmContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterBySetAlgorithm(this);
+ }
+};
+
+AlterBySetAlgorithmContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterBySetAlgorithm(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AlterByAnalyzePartitionContext(parser, ctx) {
+ AlterSpecificationContext.call(this, parser);
+ AlterSpecificationContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterByAnalyzePartitionContext.prototype = Object.create(AlterSpecificationContext.prototype);
+AlterByAnalyzePartitionContext.prototype.constructor = AlterByAnalyzePartitionContext;
+
+SqlParser.AlterByAnalyzePartitionContext = AlterByAnalyzePartitionContext;
+
+AlterByAnalyzePartitionContext.prototype.ANALYZE = function() {
+ return this.getToken(SqlParser.ANALYZE, 0);
+};
+
+AlterByAnalyzePartitionContext.prototype.PARTITION = function() {
+ return this.getToken(SqlParser.PARTITION, 0);
+};
+
+AlterByAnalyzePartitionContext.prototype.uidList = function() {
+ return this.getTypedRuleContext(UidListContext,0);
+};
+
+AlterByAnalyzePartitionContext.prototype.ALL = function() {
+ return this.getToken(SqlParser.ALL, 0);
+};
+AlterByAnalyzePartitionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterByAnalyzePartition(this);
+ }
+};
+
+AlterByAnalyzePartitionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterByAnalyzePartition(this);
+ }
+};
+
+AlterByAnalyzePartitionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterByAnalyzePartition(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AlterByChangeColumnContext(parser, ctx) {
+ AlterSpecificationContext.call(this, parser);
+ this.oldColumn = null; // UidContext;
+ this.newColumn = null; // UidContext;
+ this.afterColumn = null; // UidContext;
+ AlterSpecificationContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterByChangeColumnContext.prototype = Object.create(AlterSpecificationContext.prototype);
+AlterByChangeColumnContext.prototype.constructor = AlterByChangeColumnContext;
+
+SqlParser.AlterByChangeColumnContext = AlterByChangeColumnContext;
+
+AlterByChangeColumnContext.prototype.CHANGE = function() {
+ return this.getToken(SqlParser.CHANGE, 0);
+};
+
+AlterByChangeColumnContext.prototype.columnDefinition = function() {
+ return this.getTypedRuleContext(ColumnDefinitionContext,0);
+};
+
+AlterByChangeColumnContext.prototype.uid = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UidContext);
+ } else {
+ return this.getTypedRuleContext(UidContext,i);
+ }
+};
+
+AlterByChangeColumnContext.prototype.COLUMN = function() {
+ return this.getToken(SqlParser.COLUMN, 0);
+};
+
+AlterByChangeColumnContext.prototype.FIRST = function() {
+ return this.getToken(SqlParser.FIRST, 0);
+};
+
+AlterByChangeColumnContext.prototype.AFTER = function() {
+ return this.getToken(SqlParser.AFTER, 0);
+};
+AlterByChangeColumnContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterByChangeColumn(this);
+ }
+};
+
+AlterByChangeColumnContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterByChangeColumn(this);
+ }
+};
+
+AlterByChangeColumnContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterByChangeColumn(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AlterByAddUniqueKeyContext(parser, ctx) {
+ AlterSpecificationContext.call(this, parser);
+ this.name = null; // UidContext;
+ this.indexFormat = null; // Token;
+ this.indexName = null; // UidContext;
+ AlterSpecificationContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterByAddUniqueKeyContext.prototype = Object.create(AlterSpecificationContext.prototype);
+AlterByAddUniqueKeyContext.prototype.constructor = AlterByAddUniqueKeyContext;
+
+SqlParser.AlterByAddUniqueKeyContext = AlterByAddUniqueKeyContext;
+
+AlterByAddUniqueKeyContext.prototype.ADD = function() {
+ return this.getToken(SqlParser.ADD, 0);
+};
+
+AlterByAddUniqueKeyContext.prototype.UNIQUE = function() {
+ return this.getToken(SqlParser.UNIQUE, 0);
+};
+
+AlterByAddUniqueKeyContext.prototype.indexColumnNames = function() {
+ return this.getTypedRuleContext(IndexColumnNamesContext,0);
+};
+
+AlterByAddUniqueKeyContext.prototype.CONSTRAINT = function() {
+ return this.getToken(SqlParser.CONSTRAINT, 0);
+};
+
+AlterByAddUniqueKeyContext.prototype.indexType = function() {
+ return this.getTypedRuleContext(IndexTypeContext,0);
+};
+
+AlterByAddUniqueKeyContext.prototype.indexOption = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(IndexOptionContext);
+ } else {
+ return this.getTypedRuleContext(IndexOptionContext,i);
+ }
+};
+
+AlterByAddUniqueKeyContext.prototype.uid = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UidContext);
+ } else {
+ return this.getTypedRuleContext(UidContext,i);
+ }
+};
+
+AlterByAddUniqueKeyContext.prototype.INDEX = function() {
+ return this.getToken(SqlParser.INDEX, 0);
+};
+
+AlterByAddUniqueKeyContext.prototype.KEY = function() {
+ return this.getToken(SqlParser.KEY, 0);
+};
+AlterByAddUniqueKeyContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterByAddUniqueKey(this);
+ }
+};
+
+AlterByAddUniqueKeyContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterByAddUniqueKey(this);
+ }
+};
+
+AlterByAddUniqueKeyContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterByAddUniqueKey(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AlterByTruncatePartitionContext(parser, ctx) {
+ AlterSpecificationContext.call(this, parser);
+ AlterSpecificationContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterByTruncatePartitionContext.prototype = Object.create(AlterSpecificationContext.prototype);
+AlterByTruncatePartitionContext.prototype.constructor = AlterByTruncatePartitionContext;
+
+SqlParser.AlterByTruncatePartitionContext = AlterByTruncatePartitionContext;
+
+AlterByTruncatePartitionContext.prototype.TRUNCATE = function() {
+ return this.getToken(SqlParser.TRUNCATE, 0);
+};
+
+AlterByTruncatePartitionContext.prototype.PARTITION = function() {
+ return this.getToken(SqlParser.PARTITION, 0);
+};
+
+AlterByTruncatePartitionContext.prototype.uidList = function() {
+ return this.getTypedRuleContext(UidListContext,0);
+};
+
+AlterByTruncatePartitionContext.prototype.ALL = function() {
+ return this.getToken(SqlParser.ALL, 0);
+};
+AlterByTruncatePartitionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterByTruncatePartition(this);
+ }
+};
+
+AlterByTruncatePartitionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterByTruncatePartition(this);
+ }
+};
+
+AlterByTruncatePartitionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterByTruncatePartition(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AlterByDropIndexContext(parser, ctx) {
+ AlterSpecificationContext.call(this, parser);
+ this.indexFormat = null; // Token;
+ AlterSpecificationContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterByDropIndexContext.prototype = Object.create(AlterSpecificationContext.prototype);
+AlterByDropIndexContext.prototype.constructor = AlterByDropIndexContext;
+
+SqlParser.AlterByDropIndexContext = AlterByDropIndexContext;
+
+AlterByDropIndexContext.prototype.DROP = function() {
+ return this.getToken(SqlParser.DROP, 0);
+};
+
+AlterByDropIndexContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+AlterByDropIndexContext.prototype.INDEX = function() {
+ return this.getToken(SqlParser.INDEX, 0);
+};
+
+AlterByDropIndexContext.prototype.KEY = function() {
+ return this.getToken(SqlParser.KEY, 0);
+};
+AlterByDropIndexContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterByDropIndex(this);
+ }
+};
+
+AlterByDropIndexContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterByDropIndex(this);
+ }
+};
+
+AlterByDropIndexContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterByDropIndex(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AlterByAddColumnContext(parser, ctx) {
+ AlterSpecificationContext.call(this, parser);
+ AlterSpecificationContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterByAddColumnContext.prototype = Object.create(AlterSpecificationContext.prototype);
+AlterByAddColumnContext.prototype.constructor = AlterByAddColumnContext;
+
+SqlParser.AlterByAddColumnContext = AlterByAddColumnContext;
+
+AlterByAddColumnContext.prototype.ADD = function() {
+ return this.getToken(SqlParser.ADD, 0);
+};
+
+AlterByAddColumnContext.prototype.uid = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UidContext);
+ } else {
+ return this.getTypedRuleContext(UidContext,i);
+ }
+};
+
+AlterByAddColumnContext.prototype.columnDefinition = function() {
+ return this.getTypedRuleContext(ColumnDefinitionContext,0);
+};
+
+AlterByAddColumnContext.prototype.COLUMN = function() {
+ return this.getToken(SqlParser.COLUMN, 0);
+};
+
+AlterByAddColumnContext.prototype.FIRST = function() {
+ return this.getToken(SqlParser.FIRST, 0);
+};
+
+AlterByAddColumnContext.prototype.AFTER = function() {
+ return this.getToken(SqlParser.AFTER, 0);
+};
+AlterByAddColumnContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterByAddColumn(this);
+ }
+};
+
+AlterByAddColumnContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterByAddColumn(this);
+ }
+};
+
+AlterByAddColumnContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterByAddColumn(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AlterByOrderContext(parser, ctx) {
+ AlterSpecificationContext.call(this, parser);
+ AlterSpecificationContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterByOrderContext.prototype = Object.create(AlterSpecificationContext.prototype);
+AlterByOrderContext.prototype.constructor = AlterByOrderContext;
+
+SqlParser.AlterByOrderContext = AlterByOrderContext;
+
+AlterByOrderContext.prototype.ORDER = function() {
+ return this.getToken(SqlParser.ORDER, 0);
+};
+
+AlterByOrderContext.prototype.BY = function() {
+ return this.getToken(SqlParser.BY, 0);
+};
+
+AlterByOrderContext.prototype.uidList = function() {
+ return this.getTypedRuleContext(UidListContext,0);
+};
+AlterByOrderContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterByOrder(this);
+ }
+};
+
+AlterByOrderContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterByOrder(this);
+ }
+};
+
+AlterByOrderContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterByOrder(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+SqlParser.AlterSpecificationContext = AlterSpecificationContext;
+
+SqlParser.prototype.alterSpecification = function() {
+
+ var localctx = new AlterSpecificationContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 134, SqlParser.RULE_alterSpecification);
+ var _la = 0; // Token type
+ try {
+ this.state = 2623;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,333,this._ctx);
+ switch(la_) {
+ case 1:
+ localctx = new AlterByTableOptionContext(this, localctx);
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2260;
+ this.tableOption();
+ this.state = 2267;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,280,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 2262;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.COMMA) {
+ this.state = 2261;
+ this.match(SqlParser.COMMA);
+ }
+
+ this.state = 2264;
+ this.tableOption();
+ }
+ this.state = 2269;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,280,this._ctx);
+ }
+
+ break;
+
+ case 2:
+ localctx = new AlterByAddColumnContext(this, localctx);
+ this.enterOuterAlt(localctx, 2);
+ this.state = 2270;
+ this.match(SqlParser.ADD);
+ this.state = 2272;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.COLUMN) {
+ this.state = 2271;
+ this.match(SqlParser.COLUMN);
+ }
+
+ this.state = 2274;
+ this.uid();
+ this.state = 2275;
+ this.columnDefinition();
+ this.state = 2279;
+ this._errHandler.sync(this);
+ switch (this._input.LA(1)) {
+ case SqlParser.FIRST:
+ this.state = 2276;
+ this.match(SqlParser.FIRST);
+ break;
+ case SqlParser.AFTER:
+ this.state = 2277;
+ this.match(SqlParser.AFTER);
+ this.state = 2278;
+ this.uid();
+ break;
+ case SqlParser.EOF:
+ case SqlParser.ALTER:
+ case SqlParser.ANALYZE:
+ case SqlParser.CALL:
+ case SqlParser.CHANGE:
+ case SqlParser.CHECK:
+ case SqlParser.CREATE:
+ case SqlParser.DELETE:
+ case SqlParser.DESC:
+ case SqlParser.DESCRIBE:
+ case SqlParser.DROP:
+ case SqlParser.EXPLAIN:
+ case SqlParser.GET:
+ case SqlParser.GRANT:
+ case SqlParser.INSERT:
+ case SqlParser.KILL:
+ case SqlParser.LOAD:
+ case SqlParser.LOCK:
+ case SqlParser.OPTIMIZE:
+ case SqlParser.PARTITION:
+ case SqlParser.PURGE:
+ case SqlParser.RELEASE:
+ case SqlParser.RENAME:
+ case SqlParser.REPLACE:
+ case SqlParser.RESIGNAL:
+ case SqlParser.REVOKE:
+ case SqlParser.SELECT:
+ case SqlParser.SET:
+ case SqlParser.SHOW:
+ case SqlParser.SIGNAL:
+ case SqlParser.UNLOCK:
+ case SqlParser.UPDATE:
+ case SqlParser.USE:
+ case SqlParser.BEGIN:
+ case SqlParser.BINLOG:
+ case SqlParser.CACHE:
+ case SqlParser.CHECKSUM:
+ case SqlParser.COMMIT:
+ case SqlParser.DEALLOCATE:
+ case SqlParser.DO:
+ case SqlParser.FLUSH:
+ case SqlParser.HANDLER:
+ case SqlParser.HELP:
+ case SqlParser.INSTALL:
+ case SqlParser.PREPARE:
+ case SqlParser.REPAIR:
+ case SqlParser.RESET:
+ case SqlParser.ROLLBACK:
+ case SqlParser.SAVEPOINT:
+ case SqlParser.START:
+ case SqlParser.STOP:
+ case SqlParser.TRUNCATE:
+ case SqlParser.UNINSTALL:
+ case SqlParser.XA:
+ case SqlParser.EXECUTE:
+ case SqlParser.SHUTDOWN:
+ case SqlParser.MINUSMINUS:
+ case SqlParser.LR_BRACKET:
+ case SqlParser.COMMA:
+ case SqlParser.SEMI:
+ break;
+ default:
+ break;
+ }
+ break;
+
+ case 3:
+ localctx = new AlterByAddColumnsContext(this, localctx);
+ this.enterOuterAlt(localctx, 3);
+ this.state = 2281;
+ this.match(SqlParser.ADD);
+ this.state = 2283;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.COLUMN) {
+ this.state = 2282;
+ this.match(SqlParser.COLUMN);
+ }
+
+ this.state = 2285;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 2286;
+ this.uid();
+ this.state = 2287;
+ this.columnDefinition();
+ this.state = 2294;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 2288;
+ this.match(SqlParser.COMMA);
+ this.state = 2289;
+ this.uid();
+ this.state = 2290;
+ this.columnDefinition();
+ this.state = 2296;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 2297;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+
+ case 4:
+ localctx = new AlterByAddIndexContext(this, localctx);
+ this.enterOuterAlt(localctx, 4);
+ this.state = 2299;
+ this.match(SqlParser.ADD);
+ this.state = 2300;
+ localctx.indexFormat = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.INDEX || _la===SqlParser.KEY)) {
+ localctx.indexFormat = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 2302;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (SqlParser.CURRENT - 32)) | (1 << (SqlParser.DATABASE - 32)) | (1 << (SqlParser.DIAGNOSTICS - 32)))) !== 0) || _la===SqlParser.LEFT || _la===SqlParser.NUMBER || _la===SqlParser.RIGHT || _la===SqlParser.STACKED || ((((_la - 199)) & ~0x1f) == 0 && ((1 << (_la - 199)) & ((1 << (SqlParser.DATE - 199)) | (1 << (SqlParser.TIME - 199)) | (1 << (SqlParser.TIMESTAMP - 199)) | (1 << (SqlParser.DATETIME - 199)) | (1 << (SqlParser.YEAR - 199)) | (1 << (SqlParser.TEXT - 199)) | (1 << (SqlParser.ENUM - 199)) | (1 << (SqlParser.SERIAL - 199)))) !== 0) || ((((_la - 233)) & ~0x1f) == 0 && ((1 << (_la - 233)) & ((1 << (SqlParser.JSON_VALID - 233)) | (1 << (SqlParser.JSON_SCHEMA_VALID - 233)) | (1 << (SqlParser.COUNT - 233)) | (1 << (SqlParser.POSITION - 233)))) !== 0) || ((((_la - 270)) & ~0x1f) == 0 && ((1 << (_la - 270)) & ((1 << (SqlParser.ACCOUNT - 270)) | (1 << (SqlParser.ACTION - 270)) | (1 << (SqlParser.AFTER - 270)) | (1 << (SqlParser.AGGREGATE - 270)) | (1 << (SqlParser.ALGORITHM - 270)) | (1 << (SqlParser.ANY - 270)) | (1 << (SqlParser.AT - 270)) | (1 << (SqlParser.AUTHORS - 270)) | (1 << (SqlParser.AUTOCOMMIT - 270)) | (1 << (SqlParser.AUTOEXTEND_SIZE - 270)) | (1 << (SqlParser.AUTO_INCREMENT - 270)) | (1 << (SqlParser.AVG_ROW_LENGTH - 270)) | (1 << (SqlParser.BEGIN - 270)) | (1 << (SqlParser.BINLOG - 270)) | (1 << (SqlParser.BIT - 270)) | (1 << (SqlParser.BLOCK - 270)) | (1 << (SqlParser.BOOL - 270)) | (1 << (SqlParser.BOOLEAN - 270)) | (1 << (SqlParser.BTREE - 270)) | (1 << (SqlParser.CACHE - 270)) | (1 << (SqlParser.CASCADED - 270)) | (1 << (SqlParser.CHAIN - 270)) | (1 << (SqlParser.CHANGED - 270)) | (1 << (SqlParser.CHANNEL - 270)) | (1 << (SqlParser.CHECKSUM - 270)) | (1 << (SqlParser.PAGE_CHECKSUM - 270)) | (1 << (SqlParser.CIPHER - 270)) | (1 << (SqlParser.CLASS_ORIGIN - 270)) | (1 << (SqlParser.CLIENT - 270)) | (1 << (SqlParser.CLOSE - 270)) | (1 << (SqlParser.COALESCE - 270)) | (1 << (SqlParser.CODE - 270)))) !== 0) || ((((_la - 302)) & ~0x1f) == 0 && ((1 << (_la - 302)) & ((1 << (SqlParser.COLUMNS - 302)) | (1 << (SqlParser.COLUMN_FORMAT - 302)) | (1 << (SqlParser.COLUMN_NAME - 302)) | (1 << (SqlParser.COMMENT - 302)) | (1 << (SqlParser.COMMIT - 302)) | (1 << (SqlParser.COMPACT - 302)) | (1 << (SqlParser.COMPLETION - 302)) | (1 << (SqlParser.COMPRESSED - 302)) | (1 << (SqlParser.COMPRESSION - 302)) | (1 << (SqlParser.CONCURRENT - 302)) | (1 << (SqlParser.CONNECTION - 302)) | (1 << (SqlParser.CONSISTENT - 302)) | (1 << (SqlParser.CONSTRAINT_CATALOG - 302)) | (1 << (SqlParser.CONSTRAINT_SCHEMA - 302)) | (1 << (SqlParser.CONSTRAINT_NAME - 302)) | (1 << (SqlParser.CONTAINS - 302)) | (1 << (SqlParser.CONTEXT - 302)) | (1 << (SqlParser.CONTRIBUTORS - 302)) | (1 << (SqlParser.COPY - 302)) | (1 << (SqlParser.CPU - 302)) | (1 << (SqlParser.CURSOR_NAME - 302)) | (1 << (SqlParser.DATA - 302)) | (1 << (SqlParser.DATAFILE - 302)) | (1 << (SqlParser.DEALLOCATE - 302)) | (1 << (SqlParser.DEFAULT_AUTH - 302)) | (1 << (SqlParser.DEFINER - 302)) | (1 << (SqlParser.DELAY_KEY_WRITE - 302)) | (1 << (SqlParser.DES_KEY_FILE - 302)) | (1 << (SqlParser.DIRECTORY - 302)) | (1 << (SqlParser.DISABLE - 302)) | (1 << (SqlParser.DISCARD - 302)) | (1 << (SqlParser.DISK - 302)))) !== 0) || ((((_la - 334)) & ~0x1f) == 0 && ((1 << (_la - 334)) & ((1 << (SqlParser.DO - 334)) | (1 << (SqlParser.DUMPFILE - 334)) | (1 << (SqlParser.DUPLICATE - 334)) | (1 << (SqlParser.DYNAMIC - 334)) | (1 << (SqlParser.ENABLE - 334)) | (1 << (SqlParser.ENCRYPTION - 334)) | (1 << (SqlParser.END - 334)) | (1 << (SqlParser.ENDS - 334)) | (1 << (SqlParser.ENGINE - 334)) | (1 << (SqlParser.ENGINES - 334)) | (1 << (SqlParser.ERROR - 334)) | (1 << (SqlParser.ERRORS - 334)) | (1 << (SqlParser.ESCAPE - 334)) | (1 << (SqlParser.EVEN - 334)) | (1 << (SqlParser.EVENT - 334)) | (1 << (SqlParser.EVENTS - 334)) | (1 << (SqlParser.EVERY - 334)) | (1 << (SqlParser.EXCHANGE - 334)) | (1 << (SqlParser.EXCLUSIVE - 334)) | (1 << (SqlParser.EXPIRE - 334)) | (1 << (SqlParser.EXPORT - 334)) | (1 << (SqlParser.EXTENDED - 334)) | (1 << (SqlParser.EXTENT_SIZE - 334)) | (1 << (SqlParser.FAST - 334)) | (1 << (SqlParser.FAULTS - 334)) | (1 << (SqlParser.FIELDS - 334)) | (1 << (SqlParser.FILE_BLOCK_SIZE - 334)) | (1 << (SqlParser.FILTER - 334)) | (1 << (SqlParser.FIRST - 334)) | (1 << (SqlParser.FIXED - 334)) | (1 << (SqlParser.FLUSH - 334)) | (1 << (SqlParser.FOLLOWS - 334)))) !== 0) || ((((_la - 366)) & ~0x1f) == 0 && ((1 << (_la - 366)) & ((1 << (SqlParser.FOUND - 366)) | (1 << (SqlParser.FULL - 366)) | (1 << (SqlParser.FUNCTION - 366)) | (1 << (SqlParser.GENERAL - 366)) | (1 << (SqlParser.GLOBAL - 366)) | (1 << (SqlParser.GRANTS - 366)) | (1 << (SqlParser.GROUP_REPLICATION - 366)) | (1 << (SqlParser.HANDLER - 366)) | (1 << (SqlParser.HASH - 366)) | (1 << (SqlParser.HELP - 366)) | (1 << (SqlParser.HOST - 366)) | (1 << (SqlParser.HOSTS - 366)) | (1 << (SqlParser.IDENTIFIED - 366)) | (1 << (SqlParser.IGNORE_SERVER_IDS - 366)) | (1 << (SqlParser.IMPORT - 366)) | (1 << (SqlParser.INDEXES - 366)) | (1 << (SqlParser.INITIAL_SIZE - 366)) | (1 << (SqlParser.INPLACE - 366)) | (1 << (SqlParser.INSERT_METHOD - 366)) | (1 << (SqlParser.INSTALL - 366)) | (1 << (SqlParser.INSTANCE - 366)) | (1 << (SqlParser.INVISIBLE - 366)) | (1 << (SqlParser.INVOKER - 366)) | (1 << (SqlParser.IO - 366)) | (1 << (SqlParser.IO_THREAD - 366)) | (1 << (SqlParser.IPC - 366)) | (1 << (SqlParser.ISOLATION - 366)) | (1 << (SqlParser.ISSUER - 366)) | (1 << (SqlParser.JSON - 366)) | (1 << (SqlParser.KEY_BLOCK_SIZE - 366)) | (1 << (SqlParser.LANGUAGE - 366)) | (1 << (SqlParser.LAST - 366)))) !== 0) || ((((_la - 398)) & ~0x1f) == 0 && ((1 << (_la - 398)) & ((1 << (SqlParser.LEAVES - 398)) | (1 << (SqlParser.LESS - 398)) | (1 << (SqlParser.LEVEL - 398)) | (1 << (SqlParser.LIST - 398)) | (1 << (SqlParser.LOCAL - 398)) | (1 << (SqlParser.LOGFILE - 398)) | (1 << (SqlParser.LOGS - 398)) | (1 << (SqlParser.MASTER - 398)) | (1 << (SqlParser.MASTER_AUTO_POSITION - 398)) | (1 << (SqlParser.MASTER_CONNECT_RETRY - 398)) | (1 << (SqlParser.MASTER_DELAY - 398)) | (1 << (SqlParser.MASTER_HEARTBEAT_PERIOD - 398)) | (1 << (SqlParser.MASTER_HOST - 398)) | (1 << (SqlParser.MASTER_LOG_FILE - 398)) | (1 << (SqlParser.MASTER_LOG_POS - 398)) | (1 << (SqlParser.MASTER_PASSWORD - 398)) | (1 << (SqlParser.MASTER_PORT - 398)) | (1 << (SqlParser.MASTER_RETRY_COUNT - 398)) | (1 << (SqlParser.MASTER_SSL - 398)) | (1 << (SqlParser.MASTER_SSL_CA - 398)) | (1 << (SqlParser.MASTER_SSL_CAPATH - 398)) | (1 << (SqlParser.MASTER_SSL_CERT - 398)) | (1 << (SqlParser.MASTER_SSL_CIPHER - 398)) | (1 << (SqlParser.MASTER_SSL_CRL - 398)) | (1 << (SqlParser.MASTER_SSL_CRLPATH - 398)) | (1 << (SqlParser.MASTER_SSL_KEY - 398)) | (1 << (SqlParser.MASTER_TLS_VERSION - 398)) | (1 << (SqlParser.MASTER_USER - 398)) | (1 << (SqlParser.MAX_CONNECTIONS_PER_HOUR - 398)) | (1 << (SqlParser.MAX_QUERIES_PER_HOUR - 398)) | (1 << (SqlParser.MAX_ROWS - 398)) | (1 << (SqlParser.MAX_SIZE - 398)))) !== 0) || ((((_la - 430)) & ~0x1f) == 0 && ((1 << (_la - 430)) & ((1 << (SqlParser.MAX_UPDATES_PER_HOUR - 430)) | (1 << (SqlParser.MAX_USER_CONNECTIONS - 430)) | (1 << (SqlParser.MEDIUM - 430)) | (1 << (SqlParser.MERGE - 430)) | (1 << (SqlParser.MESSAGE_TEXT - 430)) | (1 << (SqlParser.MID - 430)) | (1 << (SqlParser.MIGRATE - 430)) | (1 << (SqlParser.MIN_ROWS - 430)) | (1 << (SqlParser.MODE - 430)) | (1 << (SqlParser.MODIFY - 430)) | (1 << (SqlParser.MUTEX - 430)) | (1 << (SqlParser.MYSQL - 430)) | (1 << (SqlParser.MYSQL_ERRNO - 430)) | (1 << (SqlParser.NAME - 430)) | (1 << (SqlParser.NAMES - 430)) | (1 << (SqlParser.NCHAR - 430)) | (1 << (SqlParser.NEVER - 430)) | (1 << (SqlParser.NEXT - 430)) | (1 << (SqlParser.NO - 430)) | (1 << (SqlParser.NODEGROUP - 430)) | (1 << (SqlParser.NONE - 430)) | (1 << (SqlParser.OFFLINE - 430)) | (1 << (SqlParser.OFFSET - 430)) | (1 << (SqlParser.OJ - 430)) | (1 << (SqlParser.OLD_PASSWORD - 430)) | (1 << (SqlParser.ONE - 430)) | (1 << (SqlParser.ONLINE - 430)) | (1 << (SqlParser.ONLY - 430)) | (1 << (SqlParser.OPEN - 430)) | (1 << (SqlParser.OPTIMIZER_COSTS - 430)) | (1 << (SqlParser.OPTIONS - 430)) | (1 << (SqlParser.OWNER - 430)))) !== 0) || ((((_la - 462)) & ~0x1f) == 0 && ((1 << (_la - 462)) & ((1 << (SqlParser.PACK_KEYS - 462)) | (1 << (SqlParser.PAGE - 462)) | (1 << (SqlParser.PARSER - 462)) | (1 << (SqlParser.PARTIAL - 462)) | (1 << (SqlParser.PARTITIONING - 462)) | (1 << (SqlParser.PARTITIONS - 462)) | (1 << (SqlParser.PASSWORD - 462)) | (1 << (SqlParser.PHASE - 462)) | (1 << (SqlParser.PLUGIN - 462)) | (1 << (SqlParser.PLUGIN_DIR - 462)) | (1 << (SqlParser.PLUGINS - 462)) | (1 << (SqlParser.PORT - 462)) | (1 << (SqlParser.PRECEDES - 462)) | (1 << (SqlParser.PREPARE - 462)) | (1 << (SqlParser.PRESERVE - 462)) | (1 << (SqlParser.PREV - 462)) | (1 << (SqlParser.PROCESSLIST - 462)) | (1 << (SqlParser.PROFILE - 462)) | (1 << (SqlParser.PROFILES - 462)) | (1 << (SqlParser.PROXY - 462)) | (1 << (SqlParser.QUERY - 462)) | (1 << (SqlParser.QUICK - 462)) | (1 << (SqlParser.REBUILD - 462)) | (1 << (SqlParser.RECOVER - 462)) | (1 << (SqlParser.REDO_BUFFER_SIZE - 462)) | (1 << (SqlParser.REDUNDANT - 462)) | (1 << (SqlParser.RELAY - 462)) | (1 << (SqlParser.RELAY_LOG_FILE - 462)) | (1 << (SqlParser.RELAY_LOG_POS - 462)) | (1 << (SqlParser.RELAYLOG - 462)) | (1 << (SqlParser.REMOVE - 462)) | (1 << (SqlParser.REORGANIZE - 462)))) !== 0) || ((((_la - 494)) & ~0x1f) == 0 && ((1 << (_la - 494)) & ((1 << (SqlParser.REPAIR - 494)) | (1 << (SqlParser.REPLICATE_DO_DB - 494)) | (1 << (SqlParser.REPLICATE_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_DB - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATE_REWRITE_DB - 494)) | (1 << (SqlParser.REPLICATE_WILD_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_WILD_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATION - 494)) | (1 << (SqlParser.RESET - 494)) | (1 << (SqlParser.RESUME - 494)) | (1 << (SqlParser.RETURNED_SQLSTATE - 494)) | (1 << (SqlParser.RETURNS - 494)) | (1 << (SqlParser.ROLE - 494)) | (1 << (SqlParser.ROLLBACK - 494)) | (1 << (SqlParser.ROLLUP - 494)) | (1 << (SqlParser.ROTATE - 494)) | (1 << (SqlParser.ROW - 494)) | (1 << (SqlParser.ROWS - 494)) | (1 << (SqlParser.ROW_FORMAT - 494)) | (1 << (SqlParser.SAVEPOINT - 494)) | (1 << (SqlParser.SCHEDULE - 494)) | (1 << (SqlParser.SECURITY - 494)) | (1 << (SqlParser.SERVER - 494)) | (1 << (SqlParser.SESSION - 494)) | (1 << (SqlParser.SHARE - 494)) | (1 << (SqlParser.SHARED - 494)) | (1 << (SqlParser.SIGNED - 494)) | (1 << (SqlParser.SIMPLE - 494)) | (1 << (SqlParser.SLAVE - 494)) | (1 << (SqlParser.SLOW - 494)) | (1 << (SqlParser.SNAPSHOT - 494)))) !== 0) || ((((_la - 526)) & ~0x1f) == 0 && ((1 << (_la - 526)) & ((1 << (SqlParser.SOCKET - 526)) | (1 << (SqlParser.SOME - 526)) | (1 << (SqlParser.SONAME - 526)) | (1 << (SqlParser.SOUNDS - 526)) | (1 << (SqlParser.SOURCE - 526)) | (1 << (SqlParser.SQL_AFTER_GTIDS - 526)) | (1 << (SqlParser.SQL_AFTER_MTS_GAPS - 526)) | (1 << (SqlParser.SQL_BEFORE_GTIDS - 526)) | (1 << (SqlParser.SQL_BUFFER_RESULT - 526)) | (1 << (SqlParser.SQL_CACHE - 526)) | (1 << (SqlParser.SQL_NO_CACHE - 526)) | (1 << (SqlParser.SQL_THREAD - 526)) | (1 << (SqlParser.START - 526)) | (1 << (SqlParser.STARTS - 526)) | (1 << (SqlParser.STATS_AUTO_RECALC - 526)) | (1 << (SqlParser.STATS_PERSISTENT - 526)) | (1 << (SqlParser.STATS_SAMPLE_PAGES - 526)) | (1 << (SqlParser.STATUS - 526)) | (1 << (SqlParser.STOP - 526)) | (1 << (SqlParser.STORAGE - 526)) | (1 << (SqlParser.STRING - 526)) | (1 << (SqlParser.SUBCLASS_ORIGIN - 526)) | (1 << (SqlParser.SUBJECT - 526)) | (1 << (SqlParser.SUBPARTITION - 526)) | (1 << (SqlParser.SUBPARTITIONS - 526)) | (1 << (SqlParser.SUSPEND - 526)) | (1 << (SqlParser.SWAPS - 526)) | (1 << (SqlParser.SWITCHES - 526)) | (1 << (SqlParser.TABLE_NAME - 526)) | (1 << (SqlParser.TABLESPACE - 526)) | (1 << (SqlParser.TEMPORARY - 526)))) !== 0) || ((((_la - 558)) & ~0x1f) == 0 && ((1 << (_la - 558)) & ((1 << (SqlParser.TEMPTABLE - 558)) | (1 << (SqlParser.THAN - 558)) | (1 << (SqlParser.TRADITIONAL - 558)) | (1 << (SqlParser.TRANSACTION - 558)) | (1 << (SqlParser.TRANSACTIONAL - 558)) | (1 << (SqlParser.TRIGGERS - 558)) | (1 << (SqlParser.TRUNCATE - 558)) | (1 << (SqlParser.UNDEFINED - 558)) | (1 << (SqlParser.UNDOFILE - 558)) | (1 << (SqlParser.UNDO_BUFFER_SIZE - 558)) | (1 << (SqlParser.UNINSTALL - 558)) | (1 << (SqlParser.UNKNOWN - 558)) | (1 << (SqlParser.UNTIL - 558)) | (1 << (SqlParser.UPGRADE - 558)) | (1 << (SqlParser.USER - 558)) | (1 << (SqlParser.USE_FRM - 558)) | (1 << (SqlParser.USER_RESOURCES - 558)) | (1 << (SqlParser.VALIDATION - 558)) | (1 << (SqlParser.VALUE - 558)) | (1 << (SqlParser.VARIABLES - 558)) | (1 << (SqlParser.VIEW - 558)) | (1 << (SqlParser.VISIBLE - 558)) | (1 << (SqlParser.WAIT - 558)) | (1 << (SqlParser.WARNINGS - 558)) | (1 << (SqlParser.WITHOUT - 558)) | (1 << (SqlParser.WORK - 558)) | (1 << (SqlParser.WRAPPER - 558)) | (1 << (SqlParser.X509 - 558)) | (1 << (SqlParser.XA - 558)) | (1 << (SqlParser.XML - 558)))) !== 0) || ((((_la - 593)) & ~0x1f) == 0 && ((1 << (_la - 593)) & ((1 << (SqlParser.INTERNAL - 593)) | (1 << (SqlParser.QUARTER - 593)) | (1 << (SqlParser.MONTH - 593)) | (1 << (SqlParser.DAY - 593)) | (1 << (SqlParser.HOUR - 593)) | (1 << (SqlParser.MINUTE - 593)) | (1 << (SqlParser.WEEK - 593)) | (1 << (SqlParser.SECOND - 593)) | (1 << (SqlParser.MICROSECOND - 593)) | (1 << (SqlParser.TABLES - 593)) | (1 << (SqlParser.ROUTINE - 593)) | (1 << (SqlParser.EXECUTE - 593)) | (1 << (SqlParser.FILE - 593)) | (1 << (SqlParser.PROCESS - 593)) | (1 << (SqlParser.RELOAD - 593)) | (1 << (SqlParser.SHUTDOWN - 593)) | (1 << (SqlParser.SUPER - 593)) | (1 << (SqlParser.PRIVILEGES - 593)) | (1 << (SqlParser.AUDIT_ADMIN - 593)) | (1 << (SqlParser.BACKUP_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ENCRYPTION_ADMIN - 593)) | (1 << (SqlParser.CLONE_ADMIN - 593)) | (1 << (SqlParser.CONNECTION_ADMIN - 593)) | (1 << (SqlParser.ENCRYPTION_KEY_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_USER - 593)) | (1 << (SqlParser.GROUP_REPLICATION_ADMIN - 593)) | (1 << (SqlParser.INNODB_REDO_LOG_ARCHIVE - 593)) | (1 << (SqlParser.NDB_STORED_USER - 593)) | (1 << (SqlParser.PERSIST_RO_VARIABLES_ADMIN - 593)))) !== 0) || ((((_la - 625)) & ~0x1f) == 0 && ((1 << (_la - 625)) & ((1 << (SqlParser.REPLICATION_APPLIER - 625)) | (1 << (SqlParser.REPLICATION_SLAVE_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_USER - 625)) | (1 << (SqlParser.ROLE_ADMIN - 625)) | (1 << (SqlParser.SESSION_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.SET_USER_ID - 625)) | (1 << (SqlParser.SHOW_ROUTINE - 625)) | (1 << (SqlParser.SYSTEM_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.TABLE_ENCRYPTION_ADMIN - 625)) | (1 << (SqlParser.VERSION_TOKEN_ADMIN - 625)) | (1 << (SqlParser.XA_RECOVER_ADMIN - 625)) | (1 << (SqlParser.ARMSCII8 - 625)) | (1 << (SqlParser.ASCII - 625)) | (1 << (SqlParser.BIG5 - 625)) | (1 << (SqlParser.CP1250 - 625)) | (1 << (SqlParser.CP1251 - 625)) | (1 << (SqlParser.CP1256 - 625)) | (1 << (SqlParser.CP1257 - 625)) | (1 << (SqlParser.CP850 - 625)) | (1 << (SqlParser.CP852 - 625)) | (1 << (SqlParser.CP866 - 625)) | (1 << (SqlParser.CP932 - 625)) | (1 << (SqlParser.DEC8 - 625)) | (1 << (SqlParser.EUCJPMS - 625)) | (1 << (SqlParser.EUCKR - 625)) | (1 << (SqlParser.GB2312 - 625)) | (1 << (SqlParser.GBK - 625)) | (1 << (SqlParser.GEOSTD8 - 625)) | (1 << (SqlParser.GREEK - 625)) | (1 << (SqlParser.HEBREW - 625)) | (1 << (SqlParser.HP8 - 625)))) !== 0) || ((((_la - 657)) & ~0x1f) == 0 && ((1 << (_la - 657)) & ((1 << (SqlParser.KEYBCS2 - 657)) | (1 << (SqlParser.KOI8R - 657)) | (1 << (SqlParser.KOI8U - 657)) | (1 << (SqlParser.LATIN1 - 657)) | (1 << (SqlParser.LATIN2 - 657)) | (1 << (SqlParser.LATIN5 - 657)) | (1 << (SqlParser.LATIN7 - 657)) | (1 << (SqlParser.MACCE - 657)) | (1 << (SqlParser.MACROMAN - 657)) | (1 << (SqlParser.SJIS - 657)) | (1 << (SqlParser.SWE7 - 657)) | (1 << (SqlParser.TIS620 - 657)) | (1 << (SqlParser.UCS2 - 657)) | (1 << (SqlParser.UJIS - 657)) | (1 << (SqlParser.UTF16 - 657)) | (1 << (SqlParser.UTF16LE - 657)) | (1 << (SqlParser.UTF32 - 657)) | (1 << (SqlParser.UTF8 - 657)) | (1 << (SqlParser.UTF8MB3 - 657)) | (1 << (SqlParser.UTF8MB4 - 657)) | (1 << (SqlParser.ARCHIVE - 657)) | (1 << (SqlParser.BLACKHOLE - 657)) | (1 << (SqlParser.CSV - 657)) | (1 << (SqlParser.FEDERATED - 657)) | (1 << (SqlParser.INNODB - 657)) | (1 << (SqlParser.MEMORY - 657)) | (1 << (SqlParser.MRG_MYISAM - 657)) | (1 << (SqlParser.MYISAM - 657)) | (1 << (SqlParser.NDB - 657)) | (1 << (SqlParser.NDBCLUSTER - 657)) | (1 << (SqlParser.PERFORMANCE_SCHEMA - 657)) | (1 << (SqlParser.TOKUDB - 657)))) !== 0) || ((((_la - 689)) & ~0x1f) == 0 && ((1 << (_la - 689)) & ((1 << (SqlParser.REPEATABLE - 689)) | (1 << (SqlParser.COMMITTED - 689)) | (1 << (SqlParser.UNCOMMITTED - 689)) | (1 << (SqlParser.SERIALIZABLE - 689)) | (1 << (SqlParser.GEOMETRYCOLLECTION - 689)) | (1 << (SqlParser.LINESTRING - 689)) | (1 << (SqlParser.MULTILINESTRING - 689)) | (1 << (SqlParser.MULTIPOINT - 689)) | (1 << (SqlParser.MULTIPOLYGON - 689)) | (1 << (SqlParser.POINT - 689)) | (1 << (SqlParser.POLYGON - 689)) | (1 << (SqlParser.ABS - 689)) | (1 << (SqlParser.ACOS - 689)) | (1 << (SqlParser.ADDDATE - 689)) | (1 << (SqlParser.ADDTIME - 689)) | (1 << (SqlParser.AES_DECRYPT - 689)) | (1 << (SqlParser.AES_ENCRYPT - 689)) | (1 << (SqlParser.AREA - 689)) | (1 << (SqlParser.ASBINARY - 689)) | (1 << (SqlParser.ASIN - 689)) | (1 << (SqlParser.ASTEXT - 689)) | (1 << (SqlParser.ASWKB - 689)) | (1 << (SqlParser.ASWKT - 689)) | (1 << (SqlParser.ASYMMETRIC_DECRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_DERIVE - 689)) | (1 << (SqlParser.ASYMMETRIC_ENCRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_SIGN - 689)) | (1 << (SqlParser.ASYMMETRIC_VERIFY - 689)) | (1 << (SqlParser.ATAN - 689)) | (1 << (SqlParser.ATAN2 - 689)))) !== 0) || ((((_la - 721)) & ~0x1f) == 0 && ((1 << (_la - 721)) & ((1 << (SqlParser.BENCHMARK - 721)) | (1 << (SqlParser.BIN - 721)) | (1 << (SqlParser.BIT_COUNT - 721)) | (1 << (SqlParser.BIT_LENGTH - 721)) | (1 << (SqlParser.BUFFER - 721)) | (1 << (SqlParser.CATALOG_NAME - 721)) | (1 << (SqlParser.CEIL - 721)) | (1 << (SqlParser.CEILING - 721)) | (1 << (SqlParser.CENTROID - 721)) | (1 << (SqlParser.CHARACTER_LENGTH - 721)) | (1 << (SqlParser.CHARSET - 721)) | (1 << (SqlParser.CHAR_LENGTH - 721)) | (1 << (SqlParser.COERCIBILITY - 721)) | (1 << (SqlParser.COLLATION - 721)) | (1 << (SqlParser.COMPRESS - 721)) | (1 << (SqlParser.CONCAT - 721)) | (1 << (SqlParser.CONCAT_WS - 721)) | (1 << (SqlParser.CONNECTION_ID - 721)) | (1 << (SqlParser.CONV - 721)) | (1 << (SqlParser.CONVERT_TZ - 721)) | (1 << (SqlParser.COS - 721)) | (1 << (SqlParser.COT - 721)) | (1 << (SqlParser.CRC32 - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PRIV_KEY - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PUB_KEY - 721)) | (1 << (SqlParser.CREATE_DH_PARAMETERS - 721)) | (1 << (SqlParser.CREATE_DIGEST - 721)) | (1 << (SqlParser.CROSSES - 721)) | (1 << (SqlParser.DATEDIFF - 721)) | (1 << (SqlParser.DATE_FORMAT - 721)) | (1 << (SqlParser.DAYNAME - 721)) | (1 << (SqlParser.DAYOFMONTH - 721)))) !== 0) || ((((_la - 753)) & ~0x1f) == 0 && ((1 << (_la - 753)) & ((1 << (SqlParser.DAYOFWEEK - 753)) | (1 << (SqlParser.DAYOFYEAR - 753)) | (1 << (SqlParser.DECODE - 753)) | (1 << (SqlParser.DEGREES - 753)) | (1 << (SqlParser.DES_DECRYPT - 753)) | (1 << (SqlParser.DES_ENCRYPT - 753)) | (1 << (SqlParser.DIMENSION - 753)) | (1 << (SqlParser.DISJOINT - 753)) | (1 << (SqlParser.ELT - 753)) | (1 << (SqlParser.ENCODE - 753)) | (1 << (SqlParser.ENCRYPT - 753)) | (1 << (SqlParser.ENDPOINT - 753)) | (1 << (SqlParser.ENVELOPE - 753)) | (1 << (SqlParser.EQUALS - 753)) | (1 << (SqlParser.EXP - 753)) | (1 << (SqlParser.EXPORT_SET - 753)) | (1 << (SqlParser.EXTERIORRING - 753)) | (1 << (SqlParser.EXTRACTVALUE - 753)) | (1 << (SqlParser.FIELD - 753)) | (1 << (SqlParser.FIND_IN_SET - 753)) | (1 << (SqlParser.FLOOR - 753)) | (1 << (SqlParser.FORMAT - 753)) | (1 << (SqlParser.FOUND_ROWS - 753)) | (1 << (SqlParser.FROM_BASE64 - 753)) | (1 << (SqlParser.FROM_DAYS - 753)) | (1 << (SqlParser.FROM_UNIXTIME - 753)) | (1 << (SqlParser.GEOMCOLLFROMTEXT - 753)) | (1 << (SqlParser.GEOMCOLLFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYFROMWKB - 753)))) !== 0) || ((((_la - 785)) & ~0x1f) == 0 && ((1 << (_la - 785)) & ((1 << (SqlParser.GEOMETRYN - 785)) | (1 << (SqlParser.GEOMETRYTYPE - 785)) | (1 << (SqlParser.GEOMFROMTEXT - 785)) | (1 << (SqlParser.GEOMFROMWKB - 785)) | (1 << (SqlParser.GET_FORMAT - 785)) | (1 << (SqlParser.GET_LOCK - 785)) | (1 << (SqlParser.GLENGTH - 785)) | (1 << (SqlParser.GREATEST - 785)) | (1 << (SqlParser.GTID_SUBSET - 785)) | (1 << (SqlParser.GTID_SUBTRACT - 785)) | (1 << (SqlParser.HEX - 785)) | (1 << (SqlParser.IFNULL - 785)) | (1 << (SqlParser.INET6_ATON - 785)) | (1 << (SqlParser.INET6_NTOA - 785)) | (1 << (SqlParser.INET_ATON - 785)) | (1 << (SqlParser.INET_NTOA - 785)) | (1 << (SqlParser.INSTR - 785)) | (1 << (SqlParser.INTERIORRINGN - 785)) | (1 << (SqlParser.INTERSECTS - 785)) | (1 << (SqlParser.ISCLOSED - 785)) | (1 << (SqlParser.ISEMPTY - 785)) | (1 << (SqlParser.ISNULL - 785)) | (1 << (SqlParser.ISSIMPLE - 785)) | (1 << (SqlParser.IS_FREE_LOCK - 785)) | (1 << (SqlParser.IS_IPV4 - 785)) | (1 << (SqlParser.IS_IPV4_COMPAT - 785)) | (1 << (SqlParser.IS_IPV4_MAPPED - 785)) | (1 << (SqlParser.IS_IPV6 - 785)) | (1 << (SqlParser.IS_USED_LOCK - 785)) | (1 << (SqlParser.LAST_INSERT_ID - 785)) | (1 << (SqlParser.LCASE - 785)) | (1 << (SqlParser.LEAST - 785)))) !== 0) || ((((_la - 817)) & ~0x1f) == 0 && ((1 << (_la - 817)) & ((1 << (SqlParser.LENGTH - 817)) | (1 << (SqlParser.LINEFROMTEXT - 817)) | (1 << (SqlParser.LINEFROMWKB - 817)) | (1 << (SqlParser.LINESTRINGFROMTEXT - 817)) | (1 << (SqlParser.LINESTRINGFROMWKB - 817)) | (1 << (SqlParser.LN - 817)) | (1 << (SqlParser.LOAD_FILE - 817)) | (1 << (SqlParser.LOCATE - 817)) | (1 << (SqlParser.LOG - 817)) | (1 << (SqlParser.LOG10 - 817)) | (1 << (SqlParser.LOG2 - 817)) | (1 << (SqlParser.LOWER - 817)) | (1 << (SqlParser.LPAD - 817)) | (1 << (SqlParser.LTRIM - 817)) | (1 << (SqlParser.MAKEDATE - 817)) | (1 << (SqlParser.MAKETIME - 817)) | (1 << (SqlParser.MAKE_SET - 817)) | (1 << (SqlParser.MASTER_POS_WAIT - 817)) | (1 << (SqlParser.MBRCONTAINS - 817)) | (1 << (SqlParser.MBRDISJOINT - 817)) | (1 << (SqlParser.MBREQUAL - 817)) | (1 << (SqlParser.MBRINTERSECTS - 817)) | (1 << (SqlParser.MBROVERLAPS - 817)) | (1 << (SqlParser.MBRTOUCHES - 817)) | (1 << (SqlParser.MBRWITHIN - 817)) | (1 << (SqlParser.MD5 - 817)) | (1 << (SqlParser.MLINEFROMTEXT - 817)) | (1 << (SqlParser.MLINEFROMWKB - 817)) | (1 << (SqlParser.MONTHNAME - 817)) | (1 << (SqlParser.MPOINTFROMTEXT - 817)) | (1 << (SqlParser.MPOINTFROMWKB - 817)) | (1 << (SqlParser.MPOLYFROMTEXT - 817)))) !== 0) || ((((_la - 849)) & ~0x1f) == 0 && ((1 << (_la - 849)) & ((1 << (SqlParser.MPOLYFROMWKB - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMTEXT - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMWKB - 849)) | (1 << (SqlParser.MULTIPOINTFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOINTFROMWKB - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMWKB - 849)) | (1 << (SqlParser.NAME_CONST - 849)) | (1 << (SqlParser.NULLIF - 849)) | (1 << (SqlParser.NUMGEOMETRIES - 849)) | (1 << (SqlParser.NUMINTERIORRINGS - 849)) | (1 << (SqlParser.NUMPOINTS - 849)) | (1 << (SqlParser.OCT - 849)) | (1 << (SqlParser.OCTET_LENGTH - 849)) | (1 << (SqlParser.ORD - 849)) | (1 << (SqlParser.OVERLAPS - 849)) | (1 << (SqlParser.PERIOD_ADD - 849)) | (1 << (SqlParser.PERIOD_DIFF - 849)) | (1 << (SqlParser.PI - 849)) | (1 << (SqlParser.POINTFROMTEXT - 849)) | (1 << (SqlParser.POINTFROMWKB - 849)) | (1 << (SqlParser.POINTN - 849)) | (1 << (SqlParser.POLYFROMTEXT - 849)) | (1 << (SqlParser.POLYFROMWKB - 849)) | (1 << (SqlParser.POLYGONFROMTEXT - 849)) | (1 << (SqlParser.POLYGONFROMWKB - 849)) | (1 << (SqlParser.POW - 849)) | (1 << (SqlParser.POWER - 849)) | (1 << (SqlParser.QUOTE - 849)) | (1 << (SqlParser.RADIANS - 849)) | (1 << (SqlParser.RAND - 849)) | (1 << (SqlParser.RANDOM_BYTES - 849)))) !== 0) || ((((_la - 881)) & ~0x1f) == 0 && ((1 << (_la - 881)) & ((1 << (SqlParser.RELEASE_LOCK - 881)) | (1 << (SqlParser.REVERSE - 881)) | (1 << (SqlParser.ROUND - 881)) | (1 << (SqlParser.ROW_COUNT - 881)) | (1 << (SqlParser.RPAD - 881)) | (1 << (SqlParser.RTRIM - 881)) | (1 << (SqlParser.SEC_TO_TIME - 881)) | (1 << (SqlParser.SESSION_USER - 881)) | (1 << (SqlParser.SHA - 881)) | (1 << (SqlParser.SHA1 - 881)) | (1 << (SqlParser.SHA2 - 881)) | (1 << (SqlParser.SCHEMA_NAME - 881)) | (1 << (SqlParser.SIGN - 881)) | (1 << (SqlParser.SIN - 881)) | (1 << (SqlParser.SLEEP - 881)) | (1 << (SqlParser.SOUNDEX - 881)) | (1 << (SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS - 881)) | (1 << (SqlParser.SQRT - 881)) | (1 << (SqlParser.SRID - 881)) | (1 << (SqlParser.STARTPOINT - 881)) | (1 << (SqlParser.STRCMP - 881)) | (1 << (SqlParser.STR_TO_DATE - 881)) | (1 << (SqlParser.ST_AREA - 881)) | (1 << (SqlParser.ST_ASBINARY - 881)) | (1 << (SqlParser.ST_ASTEXT - 881)) | (1 << (SqlParser.ST_ASWKB - 881)) | (1 << (SqlParser.ST_ASWKT - 881)) | (1 << (SqlParser.ST_BUFFER - 881)) | (1 << (SqlParser.ST_CENTROID - 881)) | (1 << (SqlParser.ST_CONTAINS - 881)) | (1 << (SqlParser.ST_CROSSES - 881)) | (1 << (SqlParser.ST_DIFFERENCE - 881)))) !== 0) || ((((_la - 913)) & ~0x1f) == 0 && ((1 << (_la - 913)) & ((1 << (SqlParser.ST_DIMENSION - 913)) | (1 << (SqlParser.ST_DISJOINT - 913)) | (1 << (SqlParser.ST_DISTANCE - 913)) | (1 << (SqlParser.ST_ENDPOINT - 913)) | (1 << (SqlParser.ST_ENVELOPE - 913)) | (1 << (SqlParser.ST_EQUALS - 913)) | (1 << (SqlParser.ST_EXTERIORRING - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYN - 913)) | (1 << (SqlParser.ST_GEOMETRYTYPE - 913)) | (1 << (SqlParser.ST_GEOMFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMFROMWKB - 913)) | (1 << (SqlParser.ST_INTERIORRINGN - 913)) | (1 << (SqlParser.ST_INTERSECTION - 913)) | (1 << (SqlParser.ST_INTERSECTS - 913)) | (1 << (SqlParser.ST_ISCLOSED - 913)) | (1 << (SqlParser.ST_ISEMPTY - 913)) | (1 << (SqlParser.ST_ISSIMPLE - 913)) | (1 << (SqlParser.ST_LINEFROMTEXT - 913)) | (1 << (SqlParser.ST_LINEFROMWKB - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMTEXT - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMWKB - 913)) | (1 << (SqlParser.ST_NUMGEOMETRIES - 913)) | (1 << (SqlParser.ST_NUMINTERIORRING - 913)) | (1 << (SqlParser.ST_NUMINTERIORRINGS - 913)) | (1 << (SqlParser.ST_NUMPOINTS - 913)))) !== 0) || ((((_la - 945)) & ~0x1f) == 0 && ((1 << (_la - 945)) & ((1 << (SqlParser.ST_OVERLAPS - 945)) | (1 << (SqlParser.ST_POINTFROMTEXT - 945)) | (1 << (SqlParser.ST_POINTFROMWKB - 945)) | (1 << (SqlParser.ST_POINTN - 945)) | (1 << (SqlParser.ST_POLYFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYFROMWKB - 945)) | (1 << (SqlParser.ST_POLYGONFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYGONFROMWKB - 945)) | (1 << (SqlParser.ST_SRID - 945)) | (1 << (SqlParser.ST_STARTPOINT - 945)) | (1 << (SqlParser.ST_SYMDIFFERENCE - 945)) | (1 << (SqlParser.ST_TOUCHES - 945)) | (1 << (SqlParser.ST_UNION - 945)) | (1 << (SqlParser.ST_WITHIN - 945)) | (1 << (SqlParser.ST_X - 945)) | (1 << (SqlParser.ST_Y - 945)) | (1 << (SqlParser.SUBDATE - 945)) | (1 << (SqlParser.SUBSTRING_INDEX - 945)) | (1 << (SqlParser.SUBTIME - 945)) | (1 << (SqlParser.SYSTEM_USER - 945)) | (1 << (SqlParser.TAN - 945)) | (1 << (SqlParser.TIMEDIFF - 945)) | (1 << (SqlParser.TIMESTAMPADD - 945)) | (1 << (SqlParser.TIMESTAMPDIFF - 945)) | (1 << (SqlParser.TIME_FORMAT - 945)) | (1 << (SqlParser.TIME_TO_SEC - 945)) | (1 << (SqlParser.TOUCHES - 945)) | (1 << (SqlParser.TO_BASE64 - 945)) | (1 << (SqlParser.TO_DAYS - 945)) | (1 << (SqlParser.TO_SECONDS - 945)) | (1 << (SqlParser.UCASE - 945)) | (1 << (SqlParser.UNCOMPRESS - 945)))) !== 0) || ((((_la - 977)) & ~0x1f) == 0 && ((1 << (_la - 977)) & ((1 << (SqlParser.UNCOMPRESSED_LENGTH - 977)) | (1 << (SqlParser.UNHEX - 977)) | (1 << (SqlParser.UNIX_TIMESTAMP - 977)) | (1 << (SqlParser.UPDATEXML - 977)) | (1 << (SqlParser.UPPER - 977)) | (1 << (SqlParser.UUID - 977)) | (1 << (SqlParser.UUID_SHORT - 977)) | (1 << (SqlParser.VALIDATE_PASSWORD_STRENGTH - 977)) | (1 << (SqlParser.VERSION - 977)) | (1 << (SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS - 977)) | (1 << (SqlParser.WEEKDAY - 977)) | (1 << (SqlParser.WEEKOFYEAR - 977)) | (1 << (SqlParser.WEIGHT_STRING - 977)) | (1 << (SqlParser.WITHIN - 977)) | (1 << (SqlParser.YEARWEEK - 977)) | (1 << (SqlParser.Y_FUNCTION - 977)) | (1 << (SqlParser.X_FUNCTION - 977)))) !== 0) || ((((_la - 1032)) & ~0x1f) == 0 && ((1 << (_la - 1032)) & ((1 << (SqlParser.CHARSET_REVERSE_QOUTE_STRING - 1032)) | (1 << (SqlParser.STRING_LITERAL - 1032)) | (1 << (SqlParser.ID - 1032)) | (1 << (SqlParser.REVERSE_QUOTE_ID - 1032)))) !== 0)) {
+ this.state = 2301;
+ this.uid();
+ }
+
+ this.state = 2305;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.USING) {
+ this.state = 2304;
+ this.indexType();
+ }
+
+ this.state = 2307;
+ this.indexColumnNames();
+ this.state = 2311;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.USING || _la===SqlParser.WITH || _la===SqlParser.COMMENT || _la===SqlParser.INVISIBLE || _la===SqlParser.KEY_BLOCK_SIZE || _la===SqlParser.VISIBLE) {
+ this.state = 2308;
+ this.indexOption();
+ this.state = 2313;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+
+ case 5:
+ localctx = new AlterByAddPrimaryKeyContext(this, localctx);
+ this.enterOuterAlt(localctx, 5);
+ this.state = 2314;
+ this.match(SqlParser.ADD);
+ this.state = 2319;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.CONSTRAINT) {
+ this.state = 2315;
+ this.match(SqlParser.CONSTRAINT);
+ this.state = 2317;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (SqlParser.CURRENT - 32)) | (1 << (SqlParser.DATABASE - 32)) | (1 << (SqlParser.DIAGNOSTICS - 32)))) !== 0) || _la===SqlParser.LEFT || _la===SqlParser.NUMBER || _la===SqlParser.RIGHT || _la===SqlParser.STACKED || ((((_la - 199)) & ~0x1f) == 0 && ((1 << (_la - 199)) & ((1 << (SqlParser.DATE - 199)) | (1 << (SqlParser.TIME - 199)) | (1 << (SqlParser.TIMESTAMP - 199)) | (1 << (SqlParser.DATETIME - 199)) | (1 << (SqlParser.YEAR - 199)) | (1 << (SqlParser.TEXT - 199)) | (1 << (SqlParser.ENUM - 199)) | (1 << (SqlParser.SERIAL - 199)))) !== 0) || ((((_la - 233)) & ~0x1f) == 0 && ((1 << (_la - 233)) & ((1 << (SqlParser.JSON_VALID - 233)) | (1 << (SqlParser.JSON_SCHEMA_VALID - 233)) | (1 << (SqlParser.COUNT - 233)) | (1 << (SqlParser.POSITION - 233)))) !== 0) || ((((_la - 270)) & ~0x1f) == 0 && ((1 << (_la - 270)) & ((1 << (SqlParser.ACCOUNT - 270)) | (1 << (SqlParser.ACTION - 270)) | (1 << (SqlParser.AFTER - 270)) | (1 << (SqlParser.AGGREGATE - 270)) | (1 << (SqlParser.ALGORITHM - 270)) | (1 << (SqlParser.ANY - 270)) | (1 << (SqlParser.AT - 270)) | (1 << (SqlParser.AUTHORS - 270)) | (1 << (SqlParser.AUTOCOMMIT - 270)) | (1 << (SqlParser.AUTOEXTEND_SIZE - 270)) | (1 << (SqlParser.AUTO_INCREMENT - 270)) | (1 << (SqlParser.AVG_ROW_LENGTH - 270)) | (1 << (SqlParser.BEGIN - 270)) | (1 << (SqlParser.BINLOG - 270)) | (1 << (SqlParser.BIT - 270)) | (1 << (SqlParser.BLOCK - 270)) | (1 << (SqlParser.BOOL - 270)) | (1 << (SqlParser.BOOLEAN - 270)) | (1 << (SqlParser.BTREE - 270)) | (1 << (SqlParser.CACHE - 270)) | (1 << (SqlParser.CASCADED - 270)) | (1 << (SqlParser.CHAIN - 270)) | (1 << (SqlParser.CHANGED - 270)) | (1 << (SqlParser.CHANNEL - 270)) | (1 << (SqlParser.CHECKSUM - 270)) | (1 << (SqlParser.PAGE_CHECKSUM - 270)) | (1 << (SqlParser.CIPHER - 270)) | (1 << (SqlParser.CLASS_ORIGIN - 270)) | (1 << (SqlParser.CLIENT - 270)) | (1 << (SqlParser.CLOSE - 270)) | (1 << (SqlParser.COALESCE - 270)) | (1 << (SqlParser.CODE - 270)))) !== 0) || ((((_la - 302)) & ~0x1f) == 0 && ((1 << (_la - 302)) & ((1 << (SqlParser.COLUMNS - 302)) | (1 << (SqlParser.COLUMN_FORMAT - 302)) | (1 << (SqlParser.COLUMN_NAME - 302)) | (1 << (SqlParser.COMMENT - 302)) | (1 << (SqlParser.COMMIT - 302)) | (1 << (SqlParser.COMPACT - 302)) | (1 << (SqlParser.COMPLETION - 302)) | (1 << (SqlParser.COMPRESSED - 302)) | (1 << (SqlParser.COMPRESSION - 302)) | (1 << (SqlParser.CONCURRENT - 302)) | (1 << (SqlParser.CONNECTION - 302)) | (1 << (SqlParser.CONSISTENT - 302)) | (1 << (SqlParser.CONSTRAINT_CATALOG - 302)) | (1 << (SqlParser.CONSTRAINT_SCHEMA - 302)) | (1 << (SqlParser.CONSTRAINT_NAME - 302)) | (1 << (SqlParser.CONTAINS - 302)) | (1 << (SqlParser.CONTEXT - 302)) | (1 << (SqlParser.CONTRIBUTORS - 302)) | (1 << (SqlParser.COPY - 302)) | (1 << (SqlParser.CPU - 302)) | (1 << (SqlParser.CURSOR_NAME - 302)) | (1 << (SqlParser.DATA - 302)) | (1 << (SqlParser.DATAFILE - 302)) | (1 << (SqlParser.DEALLOCATE - 302)) | (1 << (SqlParser.DEFAULT_AUTH - 302)) | (1 << (SqlParser.DEFINER - 302)) | (1 << (SqlParser.DELAY_KEY_WRITE - 302)) | (1 << (SqlParser.DES_KEY_FILE - 302)) | (1 << (SqlParser.DIRECTORY - 302)) | (1 << (SqlParser.DISABLE - 302)) | (1 << (SqlParser.DISCARD - 302)) | (1 << (SqlParser.DISK - 302)))) !== 0) || ((((_la - 334)) & ~0x1f) == 0 && ((1 << (_la - 334)) & ((1 << (SqlParser.DO - 334)) | (1 << (SqlParser.DUMPFILE - 334)) | (1 << (SqlParser.DUPLICATE - 334)) | (1 << (SqlParser.DYNAMIC - 334)) | (1 << (SqlParser.ENABLE - 334)) | (1 << (SqlParser.ENCRYPTION - 334)) | (1 << (SqlParser.END - 334)) | (1 << (SqlParser.ENDS - 334)) | (1 << (SqlParser.ENGINE - 334)) | (1 << (SqlParser.ENGINES - 334)) | (1 << (SqlParser.ERROR - 334)) | (1 << (SqlParser.ERRORS - 334)) | (1 << (SqlParser.ESCAPE - 334)) | (1 << (SqlParser.EVEN - 334)) | (1 << (SqlParser.EVENT - 334)) | (1 << (SqlParser.EVENTS - 334)) | (1 << (SqlParser.EVERY - 334)) | (1 << (SqlParser.EXCHANGE - 334)) | (1 << (SqlParser.EXCLUSIVE - 334)) | (1 << (SqlParser.EXPIRE - 334)) | (1 << (SqlParser.EXPORT - 334)) | (1 << (SqlParser.EXTENDED - 334)) | (1 << (SqlParser.EXTENT_SIZE - 334)) | (1 << (SqlParser.FAST - 334)) | (1 << (SqlParser.FAULTS - 334)) | (1 << (SqlParser.FIELDS - 334)) | (1 << (SqlParser.FILE_BLOCK_SIZE - 334)) | (1 << (SqlParser.FILTER - 334)) | (1 << (SqlParser.FIRST - 334)) | (1 << (SqlParser.FIXED - 334)) | (1 << (SqlParser.FLUSH - 334)) | (1 << (SqlParser.FOLLOWS - 334)))) !== 0) || ((((_la - 366)) & ~0x1f) == 0 && ((1 << (_la - 366)) & ((1 << (SqlParser.FOUND - 366)) | (1 << (SqlParser.FULL - 366)) | (1 << (SqlParser.FUNCTION - 366)) | (1 << (SqlParser.GENERAL - 366)) | (1 << (SqlParser.GLOBAL - 366)) | (1 << (SqlParser.GRANTS - 366)) | (1 << (SqlParser.GROUP_REPLICATION - 366)) | (1 << (SqlParser.HANDLER - 366)) | (1 << (SqlParser.HASH - 366)) | (1 << (SqlParser.HELP - 366)) | (1 << (SqlParser.HOST - 366)) | (1 << (SqlParser.HOSTS - 366)) | (1 << (SqlParser.IDENTIFIED - 366)) | (1 << (SqlParser.IGNORE_SERVER_IDS - 366)) | (1 << (SqlParser.IMPORT - 366)) | (1 << (SqlParser.INDEXES - 366)) | (1 << (SqlParser.INITIAL_SIZE - 366)) | (1 << (SqlParser.INPLACE - 366)) | (1 << (SqlParser.INSERT_METHOD - 366)) | (1 << (SqlParser.INSTALL - 366)) | (1 << (SqlParser.INSTANCE - 366)) | (1 << (SqlParser.INVISIBLE - 366)) | (1 << (SqlParser.INVOKER - 366)) | (1 << (SqlParser.IO - 366)) | (1 << (SqlParser.IO_THREAD - 366)) | (1 << (SqlParser.IPC - 366)) | (1 << (SqlParser.ISOLATION - 366)) | (1 << (SqlParser.ISSUER - 366)) | (1 << (SqlParser.JSON - 366)) | (1 << (SqlParser.KEY_BLOCK_SIZE - 366)) | (1 << (SqlParser.LANGUAGE - 366)) | (1 << (SqlParser.LAST - 366)))) !== 0) || ((((_la - 398)) & ~0x1f) == 0 && ((1 << (_la - 398)) & ((1 << (SqlParser.LEAVES - 398)) | (1 << (SqlParser.LESS - 398)) | (1 << (SqlParser.LEVEL - 398)) | (1 << (SqlParser.LIST - 398)) | (1 << (SqlParser.LOCAL - 398)) | (1 << (SqlParser.LOGFILE - 398)) | (1 << (SqlParser.LOGS - 398)) | (1 << (SqlParser.MASTER - 398)) | (1 << (SqlParser.MASTER_AUTO_POSITION - 398)) | (1 << (SqlParser.MASTER_CONNECT_RETRY - 398)) | (1 << (SqlParser.MASTER_DELAY - 398)) | (1 << (SqlParser.MASTER_HEARTBEAT_PERIOD - 398)) | (1 << (SqlParser.MASTER_HOST - 398)) | (1 << (SqlParser.MASTER_LOG_FILE - 398)) | (1 << (SqlParser.MASTER_LOG_POS - 398)) | (1 << (SqlParser.MASTER_PASSWORD - 398)) | (1 << (SqlParser.MASTER_PORT - 398)) | (1 << (SqlParser.MASTER_RETRY_COUNT - 398)) | (1 << (SqlParser.MASTER_SSL - 398)) | (1 << (SqlParser.MASTER_SSL_CA - 398)) | (1 << (SqlParser.MASTER_SSL_CAPATH - 398)) | (1 << (SqlParser.MASTER_SSL_CERT - 398)) | (1 << (SqlParser.MASTER_SSL_CIPHER - 398)) | (1 << (SqlParser.MASTER_SSL_CRL - 398)) | (1 << (SqlParser.MASTER_SSL_CRLPATH - 398)) | (1 << (SqlParser.MASTER_SSL_KEY - 398)) | (1 << (SqlParser.MASTER_TLS_VERSION - 398)) | (1 << (SqlParser.MASTER_USER - 398)) | (1 << (SqlParser.MAX_CONNECTIONS_PER_HOUR - 398)) | (1 << (SqlParser.MAX_QUERIES_PER_HOUR - 398)) | (1 << (SqlParser.MAX_ROWS - 398)) | (1 << (SqlParser.MAX_SIZE - 398)))) !== 0) || ((((_la - 430)) & ~0x1f) == 0 && ((1 << (_la - 430)) & ((1 << (SqlParser.MAX_UPDATES_PER_HOUR - 430)) | (1 << (SqlParser.MAX_USER_CONNECTIONS - 430)) | (1 << (SqlParser.MEDIUM - 430)) | (1 << (SqlParser.MERGE - 430)) | (1 << (SqlParser.MESSAGE_TEXT - 430)) | (1 << (SqlParser.MID - 430)) | (1 << (SqlParser.MIGRATE - 430)) | (1 << (SqlParser.MIN_ROWS - 430)) | (1 << (SqlParser.MODE - 430)) | (1 << (SqlParser.MODIFY - 430)) | (1 << (SqlParser.MUTEX - 430)) | (1 << (SqlParser.MYSQL - 430)) | (1 << (SqlParser.MYSQL_ERRNO - 430)) | (1 << (SqlParser.NAME - 430)) | (1 << (SqlParser.NAMES - 430)) | (1 << (SqlParser.NCHAR - 430)) | (1 << (SqlParser.NEVER - 430)) | (1 << (SqlParser.NEXT - 430)) | (1 << (SqlParser.NO - 430)) | (1 << (SqlParser.NODEGROUP - 430)) | (1 << (SqlParser.NONE - 430)) | (1 << (SqlParser.OFFLINE - 430)) | (1 << (SqlParser.OFFSET - 430)) | (1 << (SqlParser.OJ - 430)) | (1 << (SqlParser.OLD_PASSWORD - 430)) | (1 << (SqlParser.ONE - 430)) | (1 << (SqlParser.ONLINE - 430)) | (1 << (SqlParser.ONLY - 430)) | (1 << (SqlParser.OPEN - 430)) | (1 << (SqlParser.OPTIMIZER_COSTS - 430)) | (1 << (SqlParser.OPTIONS - 430)) | (1 << (SqlParser.OWNER - 430)))) !== 0) || ((((_la - 462)) & ~0x1f) == 0 && ((1 << (_la - 462)) & ((1 << (SqlParser.PACK_KEYS - 462)) | (1 << (SqlParser.PAGE - 462)) | (1 << (SqlParser.PARSER - 462)) | (1 << (SqlParser.PARTIAL - 462)) | (1 << (SqlParser.PARTITIONING - 462)) | (1 << (SqlParser.PARTITIONS - 462)) | (1 << (SqlParser.PASSWORD - 462)) | (1 << (SqlParser.PHASE - 462)) | (1 << (SqlParser.PLUGIN - 462)) | (1 << (SqlParser.PLUGIN_DIR - 462)) | (1 << (SqlParser.PLUGINS - 462)) | (1 << (SqlParser.PORT - 462)) | (1 << (SqlParser.PRECEDES - 462)) | (1 << (SqlParser.PREPARE - 462)) | (1 << (SqlParser.PRESERVE - 462)) | (1 << (SqlParser.PREV - 462)) | (1 << (SqlParser.PROCESSLIST - 462)) | (1 << (SqlParser.PROFILE - 462)) | (1 << (SqlParser.PROFILES - 462)) | (1 << (SqlParser.PROXY - 462)) | (1 << (SqlParser.QUERY - 462)) | (1 << (SqlParser.QUICK - 462)) | (1 << (SqlParser.REBUILD - 462)) | (1 << (SqlParser.RECOVER - 462)) | (1 << (SqlParser.REDO_BUFFER_SIZE - 462)) | (1 << (SqlParser.REDUNDANT - 462)) | (1 << (SqlParser.RELAY - 462)) | (1 << (SqlParser.RELAY_LOG_FILE - 462)) | (1 << (SqlParser.RELAY_LOG_POS - 462)) | (1 << (SqlParser.RELAYLOG - 462)) | (1 << (SqlParser.REMOVE - 462)) | (1 << (SqlParser.REORGANIZE - 462)))) !== 0) || ((((_la - 494)) & ~0x1f) == 0 && ((1 << (_la - 494)) & ((1 << (SqlParser.REPAIR - 494)) | (1 << (SqlParser.REPLICATE_DO_DB - 494)) | (1 << (SqlParser.REPLICATE_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_DB - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATE_REWRITE_DB - 494)) | (1 << (SqlParser.REPLICATE_WILD_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_WILD_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATION - 494)) | (1 << (SqlParser.RESET - 494)) | (1 << (SqlParser.RESUME - 494)) | (1 << (SqlParser.RETURNED_SQLSTATE - 494)) | (1 << (SqlParser.RETURNS - 494)) | (1 << (SqlParser.ROLE - 494)) | (1 << (SqlParser.ROLLBACK - 494)) | (1 << (SqlParser.ROLLUP - 494)) | (1 << (SqlParser.ROTATE - 494)) | (1 << (SqlParser.ROW - 494)) | (1 << (SqlParser.ROWS - 494)) | (1 << (SqlParser.ROW_FORMAT - 494)) | (1 << (SqlParser.SAVEPOINT - 494)) | (1 << (SqlParser.SCHEDULE - 494)) | (1 << (SqlParser.SECURITY - 494)) | (1 << (SqlParser.SERVER - 494)) | (1 << (SqlParser.SESSION - 494)) | (1 << (SqlParser.SHARE - 494)) | (1 << (SqlParser.SHARED - 494)) | (1 << (SqlParser.SIGNED - 494)) | (1 << (SqlParser.SIMPLE - 494)) | (1 << (SqlParser.SLAVE - 494)) | (1 << (SqlParser.SLOW - 494)) | (1 << (SqlParser.SNAPSHOT - 494)))) !== 0) || ((((_la - 526)) & ~0x1f) == 0 && ((1 << (_la - 526)) & ((1 << (SqlParser.SOCKET - 526)) | (1 << (SqlParser.SOME - 526)) | (1 << (SqlParser.SONAME - 526)) | (1 << (SqlParser.SOUNDS - 526)) | (1 << (SqlParser.SOURCE - 526)) | (1 << (SqlParser.SQL_AFTER_GTIDS - 526)) | (1 << (SqlParser.SQL_AFTER_MTS_GAPS - 526)) | (1 << (SqlParser.SQL_BEFORE_GTIDS - 526)) | (1 << (SqlParser.SQL_BUFFER_RESULT - 526)) | (1 << (SqlParser.SQL_CACHE - 526)) | (1 << (SqlParser.SQL_NO_CACHE - 526)) | (1 << (SqlParser.SQL_THREAD - 526)) | (1 << (SqlParser.START - 526)) | (1 << (SqlParser.STARTS - 526)) | (1 << (SqlParser.STATS_AUTO_RECALC - 526)) | (1 << (SqlParser.STATS_PERSISTENT - 526)) | (1 << (SqlParser.STATS_SAMPLE_PAGES - 526)) | (1 << (SqlParser.STATUS - 526)) | (1 << (SqlParser.STOP - 526)) | (1 << (SqlParser.STORAGE - 526)) | (1 << (SqlParser.STRING - 526)) | (1 << (SqlParser.SUBCLASS_ORIGIN - 526)) | (1 << (SqlParser.SUBJECT - 526)) | (1 << (SqlParser.SUBPARTITION - 526)) | (1 << (SqlParser.SUBPARTITIONS - 526)) | (1 << (SqlParser.SUSPEND - 526)) | (1 << (SqlParser.SWAPS - 526)) | (1 << (SqlParser.SWITCHES - 526)) | (1 << (SqlParser.TABLE_NAME - 526)) | (1 << (SqlParser.TABLESPACE - 526)) | (1 << (SqlParser.TEMPORARY - 526)))) !== 0) || ((((_la - 558)) & ~0x1f) == 0 && ((1 << (_la - 558)) & ((1 << (SqlParser.TEMPTABLE - 558)) | (1 << (SqlParser.THAN - 558)) | (1 << (SqlParser.TRADITIONAL - 558)) | (1 << (SqlParser.TRANSACTION - 558)) | (1 << (SqlParser.TRANSACTIONAL - 558)) | (1 << (SqlParser.TRIGGERS - 558)) | (1 << (SqlParser.TRUNCATE - 558)) | (1 << (SqlParser.UNDEFINED - 558)) | (1 << (SqlParser.UNDOFILE - 558)) | (1 << (SqlParser.UNDO_BUFFER_SIZE - 558)) | (1 << (SqlParser.UNINSTALL - 558)) | (1 << (SqlParser.UNKNOWN - 558)) | (1 << (SqlParser.UNTIL - 558)) | (1 << (SqlParser.UPGRADE - 558)) | (1 << (SqlParser.USER - 558)) | (1 << (SqlParser.USE_FRM - 558)) | (1 << (SqlParser.USER_RESOURCES - 558)) | (1 << (SqlParser.VALIDATION - 558)) | (1 << (SqlParser.VALUE - 558)) | (1 << (SqlParser.VARIABLES - 558)) | (1 << (SqlParser.VIEW - 558)) | (1 << (SqlParser.VISIBLE - 558)) | (1 << (SqlParser.WAIT - 558)) | (1 << (SqlParser.WARNINGS - 558)) | (1 << (SqlParser.WITHOUT - 558)) | (1 << (SqlParser.WORK - 558)) | (1 << (SqlParser.WRAPPER - 558)) | (1 << (SqlParser.X509 - 558)) | (1 << (SqlParser.XA - 558)) | (1 << (SqlParser.XML - 558)))) !== 0) || ((((_la - 593)) & ~0x1f) == 0 && ((1 << (_la - 593)) & ((1 << (SqlParser.INTERNAL - 593)) | (1 << (SqlParser.QUARTER - 593)) | (1 << (SqlParser.MONTH - 593)) | (1 << (SqlParser.DAY - 593)) | (1 << (SqlParser.HOUR - 593)) | (1 << (SqlParser.MINUTE - 593)) | (1 << (SqlParser.WEEK - 593)) | (1 << (SqlParser.SECOND - 593)) | (1 << (SqlParser.MICROSECOND - 593)) | (1 << (SqlParser.TABLES - 593)) | (1 << (SqlParser.ROUTINE - 593)) | (1 << (SqlParser.EXECUTE - 593)) | (1 << (SqlParser.FILE - 593)) | (1 << (SqlParser.PROCESS - 593)) | (1 << (SqlParser.RELOAD - 593)) | (1 << (SqlParser.SHUTDOWN - 593)) | (1 << (SqlParser.SUPER - 593)) | (1 << (SqlParser.PRIVILEGES - 593)) | (1 << (SqlParser.AUDIT_ADMIN - 593)) | (1 << (SqlParser.BACKUP_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ENCRYPTION_ADMIN - 593)) | (1 << (SqlParser.CLONE_ADMIN - 593)) | (1 << (SqlParser.CONNECTION_ADMIN - 593)) | (1 << (SqlParser.ENCRYPTION_KEY_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_USER - 593)) | (1 << (SqlParser.GROUP_REPLICATION_ADMIN - 593)) | (1 << (SqlParser.INNODB_REDO_LOG_ARCHIVE - 593)) | (1 << (SqlParser.NDB_STORED_USER - 593)) | (1 << (SqlParser.PERSIST_RO_VARIABLES_ADMIN - 593)))) !== 0) || ((((_la - 625)) & ~0x1f) == 0 && ((1 << (_la - 625)) & ((1 << (SqlParser.REPLICATION_APPLIER - 625)) | (1 << (SqlParser.REPLICATION_SLAVE_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_USER - 625)) | (1 << (SqlParser.ROLE_ADMIN - 625)) | (1 << (SqlParser.SESSION_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.SET_USER_ID - 625)) | (1 << (SqlParser.SHOW_ROUTINE - 625)) | (1 << (SqlParser.SYSTEM_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.TABLE_ENCRYPTION_ADMIN - 625)) | (1 << (SqlParser.VERSION_TOKEN_ADMIN - 625)) | (1 << (SqlParser.XA_RECOVER_ADMIN - 625)) | (1 << (SqlParser.ARMSCII8 - 625)) | (1 << (SqlParser.ASCII - 625)) | (1 << (SqlParser.BIG5 - 625)) | (1 << (SqlParser.CP1250 - 625)) | (1 << (SqlParser.CP1251 - 625)) | (1 << (SqlParser.CP1256 - 625)) | (1 << (SqlParser.CP1257 - 625)) | (1 << (SqlParser.CP850 - 625)) | (1 << (SqlParser.CP852 - 625)) | (1 << (SqlParser.CP866 - 625)) | (1 << (SqlParser.CP932 - 625)) | (1 << (SqlParser.DEC8 - 625)) | (1 << (SqlParser.EUCJPMS - 625)) | (1 << (SqlParser.EUCKR - 625)) | (1 << (SqlParser.GB2312 - 625)) | (1 << (SqlParser.GBK - 625)) | (1 << (SqlParser.GEOSTD8 - 625)) | (1 << (SqlParser.GREEK - 625)) | (1 << (SqlParser.HEBREW - 625)) | (1 << (SqlParser.HP8 - 625)))) !== 0) || ((((_la - 657)) & ~0x1f) == 0 && ((1 << (_la - 657)) & ((1 << (SqlParser.KEYBCS2 - 657)) | (1 << (SqlParser.KOI8R - 657)) | (1 << (SqlParser.KOI8U - 657)) | (1 << (SqlParser.LATIN1 - 657)) | (1 << (SqlParser.LATIN2 - 657)) | (1 << (SqlParser.LATIN5 - 657)) | (1 << (SqlParser.LATIN7 - 657)) | (1 << (SqlParser.MACCE - 657)) | (1 << (SqlParser.MACROMAN - 657)) | (1 << (SqlParser.SJIS - 657)) | (1 << (SqlParser.SWE7 - 657)) | (1 << (SqlParser.TIS620 - 657)) | (1 << (SqlParser.UCS2 - 657)) | (1 << (SqlParser.UJIS - 657)) | (1 << (SqlParser.UTF16 - 657)) | (1 << (SqlParser.UTF16LE - 657)) | (1 << (SqlParser.UTF32 - 657)) | (1 << (SqlParser.UTF8 - 657)) | (1 << (SqlParser.UTF8MB3 - 657)) | (1 << (SqlParser.UTF8MB4 - 657)) | (1 << (SqlParser.ARCHIVE - 657)) | (1 << (SqlParser.BLACKHOLE - 657)) | (1 << (SqlParser.CSV - 657)) | (1 << (SqlParser.FEDERATED - 657)) | (1 << (SqlParser.INNODB - 657)) | (1 << (SqlParser.MEMORY - 657)) | (1 << (SqlParser.MRG_MYISAM - 657)) | (1 << (SqlParser.MYISAM - 657)) | (1 << (SqlParser.NDB - 657)) | (1 << (SqlParser.NDBCLUSTER - 657)) | (1 << (SqlParser.PERFORMANCE_SCHEMA - 657)) | (1 << (SqlParser.TOKUDB - 657)))) !== 0) || ((((_la - 689)) & ~0x1f) == 0 && ((1 << (_la - 689)) & ((1 << (SqlParser.REPEATABLE - 689)) | (1 << (SqlParser.COMMITTED - 689)) | (1 << (SqlParser.UNCOMMITTED - 689)) | (1 << (SqlParser.SERIALIZABLE - 689)) | (1 << (SqlParser.GEOMETRYCOLLECTION - 689)) | (1 << (SqlParser.LINESTRING - 689)) | (1 << (SqlParser.MULTILINESTRING - 689)) | (1 << (SqlParser.MULTIPOINT - 689)) | (1 << (SqlParser.MULTIPOLYGON - 689)) | (1 << (SqlParser.POINT - 689)) | (1 << (SqlParser.POLYGON - 689)) | (1 << (SqlParser.ABS - 689)) | (1 << (SqlParser.ACOS - 689)) | (1 << (SqlParser.ADDDATE - 689)) | (1 << (SqlParser.ADDTIME - 689)) | (1 << (SqlParser.AES_DECRYPT - 689)) | (1 << (SqlParser.AES_ENCRYPT - 689)) | (1 << (SqlParser.AREA - 689)) | (1 << (SqlParser.ASBINARY - 689)) | (1 << (SqlParser.ASIN - 689)) | (1 << (SqlParser.ASTEXT - 689)) | (1 << (SqlParser.ASWKB - 689)) | (1 << (SqlParser.ASWKT - 689)) | (1 << (SqlParser.ASYMMETRIC_DECRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_DERIVE - 689)) | (1 << (SqlParser.ASYMMETRIC_ENCRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_SIGN - 689)) | (1 << (SqlParser.ASYMMETRIC_VERIFY - 689)) | (1 << (SqlParser.ATAN - 689)) | (1 << (SqlParser.ATAN2 - 689)))) !== 0) || ((((_la - 721)) & ~0x1f) == 0 && ((1 << (_la - 721)) & ((1 << (SqlParser.BENCHMARK - 721)) | (1 << (SqlParser.BIN - 721)) | (1 << (SqlParser.BIT_COUNT - 721)) | (1 << (SqlParser.BIT_LENGTH - 721)) | (1 << (SqlParser.BUFFER - 721)) | (1 << (SqlParser.CATALOG_NAME - 721)) | (1 << (SqlParser.CEIL - 721)) | (1 << (SqlParser.CEILING - 721)) | (1 << (SqlParser.CENTROID - 721)) | (1 << (SqlParser.CHARACTER_LENGTH - 721)) | (1 << (SqlParser.CHARSET - 721)) | (1 << (SqlParser.CHAR_LENGTH - 721)) | (1 << (SqlParser.COERCIBILITY - 721)) | (1 << (SqlParser.COLLATION - 721)) | (1 << (SqlParser.COMPRESS - 721)) | (1 << (SqlParser.CONCAT - 721)) | (1 << (SqlParser.CONCAT_WS - 721)) | (1 << (SqlParser.CONNECTION_ID - 721)) | (1 << (SqlParser.CONV - 721)) | (1 << (SqlParser.CONVERT_TZ - 721)) | (1 << (SqlParser.COS - 721)) | (1 << (SqlParser.COT - 721)) | (1 << (SqlParser.CRC32 - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PRIV_KEY - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PUB_KEY - 721)) | (1 << (SqlParser.CREATE_DH_PARAMETERS - 721)) | (1 << (SqlParser.CREATE_DIGEST - 721)) | (1 << (SqlParser.CROSSES - 721)) | (1 << (SqlParser.DATEDIFF - 721)) | (1 << (SqlParser.DATE_FORMAT - 721)) | (1 << (SqlParser.DAYNAME - 721)) | (1 << (SqlParser.DAYOFMONTH - 721)))) !== 0) || ((((_la - 753)) & ~0x1f) == 0 && ((1 << (_la - 753)) & ((1 << (SqlParser.DAYOFWEEK - 753)) | (1 << (SqlParser.DAYOFYEAR - 753)) | (1 << (SqlParser.DECODE - 753)) | (1 << (SqlParser.DEGREES - 753)) | (1 << (SqlParser.DES_DECRYPT - 753)) | (1 << (SqlParser.DES_ENCRYPT - 753)) | (1 << (SqlParser.DIMENSION - 753)) | (1 << (SqlParser.DISJOINT - 753)) | (1 << (SqlParser.ELT - 753)) | (1 << (SqlParser.ENCODE - 753)) | (1 << (SqlParser.ENCRYPT - 753)) | (1 << (SqlParser.ENDPOINT - 753)) | (1 << (SqlParser.ENVELOPE - 753)) | (1 << (SqlParser.EQUALS - 753)) | (1 << (SqlParser.EXP - 753)) | (1 << (SqlParser.EXPORT_SET - 753)) | (1 << (SqlParser.EXTERIORRING - 753)) | (1 << (SqlParser.EXTRACTVALUE - 753)) | (1 << (SqlParser.FIELD - 753)) | (1 << (SqlParser.FIND_IN_SET - 753)) | (1 << (SqlParser.FLOOR - 753)) | (1 << (SqlParser.FORMAT - 753)) | (1 << (SqlParser.FOUND_ROWS - 753)) | (1 << (SqlParser.FROM_BASE64 - 753)) | (1 << (SqlParser.FROM_DAYS - 753)) | (1 << (SqlParser.FROM_UNIXTIME - 753)) | (1 << (SqlParser.GEOMCOLLFROMTEXT - 753)) | (1 << (SqlParser.GEOMCOLLFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYFROMWKB - 753)))) !== 0) || ((((_la - 785)) & ~0x1f) == 0 && ((1 << (_la - 785)) & ((1 << (SqlParser.GEOMETRYN - 785)) | (1 << (SqlParser.GEOMETRYTYPE - 785)) | (1 << (SqlParser.GEOMFROMTEXT - 785)) | (1 << (SqlParser.GEOMFROMWKB - 785)) | (1 << (SqlParser.GET_FORMAT - 785)) | (1 << (SqlParser.GET_LOCK - 785)) | (1 << (SqlParser.GLENGTH - 785)) | (1 << (SqlParser.GREATEST - 785)) | (1 << (SqlParser.GTID_SUBSET - 785)) | (1 << (SqlParser.GTID_SUBTRACT - 785)) | (1 << (SqlParser.HEX - 785)) | (1 << (SqlParser.IFNULL - 785)) | (1 << (SqlParser.INET6_ATON - 785)) | (1 << (SqlParser.INET6_NTOA - 785)) | (1 << (SqlParser.INET_ATON - 785)) | (1 << (SqlParser.INET_NTOA - 785)) | (1 << (SqlParser.INSTR - 785)) | (1 << (SqlParser.INTERIORRINGN - 785)) | (1 << (SqlParser.INTERSECTS - 785)) | (1 << (SqlParser.ISCLOSED - 785)) | (1 << (SqlParser.ISEMPTY - 785)) | (1 << (SqlParser.ISNULL - 785)) | (1 << (SqlParser.ISSIMPLE - 785)) | (1 << (SqlParser.IS_FREE_LOCK - 785)) | (1 << (SqlParser.IS_IPV4 - 785)) | (1 << (SqlParser.IS_IPV4_COMPAT - 785)) | (1 << (SqlParser.IS_IPV4_MAPPED - 785)) | (1 << (SqlParser.IS_IPV6 - 785)) | (1 << (SqlParser.IS_USED_LOCK - 785)) | (1 << (SqlParser.LAST_INSERT_ID - 785)) | (1 << (SqlParser.LCASE - 785)) | (1 << (SqlParser.LEAST - 785)))) !== 0) || ((((_la - 817)) & ~0x1f) == 0 && ((1 << (_la - 817)) & ((1 << (SqlParser.LENGTH - 817)) | (1 << (SqlParser.LINEFROMTEXT - 817)) | (1 << (SqlParser.LINEFROMWKB - 817)) | (1 << (SqlParser.LINESTRINGFROMTEXT - 817)) | (1 << (SqlParser.LINESTRINGFROMWKB - 817)) | (1 << (SqlParser.LN - 817)) | (1 << (SqlParser.LOAD_FILE - 817)) | (1 << (SqlParser.LOCATE - 817)) | (1 << (SqlParser.LOG - 817)) | (1 << (SqlParser.LOG10 - 817)) | (1 << (SqlParser.LOG2 - 817)) | (1 << (SqlParser.LOWER - 817)) | (1 << (SqlParser.LPAD - 817)) | (1 << (SqlParser.LTRIM - 817)) | (1 << (SqlParser.MAKEDATE - 817)) | (1 << (SqlParser.MAKETIME - 817)) | (1 << (SqlParser.MAKE_SET - 817)) | (1 << (SqlParser.MASTER_POS_WAIT - 817)) | (1 << (SqlParser.MBRCONTAINS - 817)) | (1 << (SqlParser.MBRDISJOINT - 817)) | (1 << (SqlParser.MBREQUAL - 817)) | (1 << (SqlParser.MBRINTERSECTS - 817)) | (1 << (SqlParser.MBROVERLAPS - 817)) | (1 << (SqlParser.MBRTOUCHES - 817)) | (1 << (SqlParser.MBRWITHIN - 817)) | (1 << (SqlParser.MD5 - 817)) | (1 << (SqlParser.MLINEFROMTEXT - 817)) | (1 << (SqlParser.MLINEFROMWKB - 817)) | (1 << (SqlParser.MONTHNAME - 817)) | (1 << (SqlParser.MPOINTFROMTEXT - 817)) | (1 << (SqlParser.MPOINTFROMWKB - 817)) | (1 << (SqlParser.MPOLYFROMTEXT - 817)))) !== 0) || ((((_la - 849)) & ~0x1f) == 0 && ((1 << (_la - 849)) & ((1 << (SqlParser.MPOLYFROMWKB - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMTEXT - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMWKB - 849)) | (1 << (SqlParser.MULTIPOINTFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOINTFROMWKB - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMWKB - 849)) | (1 << (SqlParser.NAME_CONST - 849)) | (1 << (SqlParser.NULLIF - 849)) | (1 << (SqlParser.NUMGEOMETRIES - 849)) | (1 << (SqlParser.NUMINTERIORRINGS - 849)) | (1 << (SqlParser.NUMPOINTS - 849)) | (1 << (SqlParser.OCT - 849)) | (1 << (SqlParser.OCTET_LENGTH - 849)) | (1 << (SqlParser.ORD - 849)) | (1 << (SqlParser.OVERLAPS - 849)) | (1 << (SqlParser.PERIOD_ADD - 849)) | (1 << (SqlParser.PERIOD_DIFF - 849)) | (1 << (SqlParser.PI - 849)) | (1 << (SqlParser.POINTFROMTEXT - 849)) | (1 << (SqlParser.POINTFROMWKB - 849)) | (1 << (SqlParser.POINTN - 849)) | (1 << (SqlParser.POLYFROMTEXT - 849)) | (1 << (SqlParser.POLYFROMWKB - 849)) | (1 << (SqlParser.POLYGONFROMTEXT - 849)) | (1 << (SqlParser.POLYGONFROMWKB - 849)) | (1 << (SqlParser.POW - 849)) | (1 << (SqlParser.POWER - 849)) | (1 << (SqlParser.QUOTE - 849)) | (1 << (SqlParser.RADIANS - 849)) | (1 << (SqlParser.RAND - 849)) | (1 << (SqlParser.RANDOM_BYTES - 849)))) !== 0) || ((((_la - 881)) & ~0x1f) == 0 && ((1 << (_la - 881)) & ((1 << (SqlParser.RELEASE_LOCK - 881)) | (1 << (SqlParser.REVERSE - 881)) | (1 << (SqlParser.ROUND - 881)) | (1 << (SqlParser.ROW_COUNT - 881)) | (1 << (SqlParser.RPAD - 881)) | (1 << (SqlParser.RTRIM - 881)) | (1 << (SqlParser.SEC_TO_TIME - 881)) | (1 << (SqlParser.SESSION_USER - 881)) | (1 << (SqlParser.SHA - 881)) | (1 << (SqlParser.SHA1 - 881)) | (1 << (SqlParser.SHA2 - 881)) | (1 << (SqlParser.SCHEMA_NAME - 881)) | (1 << (SqlParser.SIGN - 881)) | (1 << (SqlParser.SIN - 881)) | (1 << (SqlParser.SLEEP - 881)) | (1 << (SqlParser.SOUNDEX - 881)) | (1 << (SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS - 881)) | (1 << (SqlParser.SQRT - 881)) | (1 << (SqlParser.SRID - 881)) | (1 << (SqlParser.STARTPOINT - 881)) | (1 << (SqlParser.STRCMP - 881)) | (1 << (SqlParser.STR_TO_DATE - 881)) | (1 << (SqlParser.ST_AREA - 881)) | (1 << (SqlParser.ST_ASBINARY - 881)) | (1 << (SqlParser.ST_ASTEXT - 881)) | (1 << (SqlParser.ST_ASWKB - 881)) | (1 << (SqlParser.ST_ASWKT - 881)) | (1 << (SqlParser.ST_BUFFER - 881)) | (1 << (SqlParser.ST_CENTROID - 881)) | (1 << (SqlParser.ST_CONTAINS - 881)) | (1 << (SqlParser.ST_CROSSES - 881)) | (1 << (SqlParser.ST_DIFFERENCE - 881)))) !== 0) || ((((_la - 913)) & ~0x1f) == 0 && ((1 << (_la - 913)) & ((1 << (SqlParser.ST_DIMENSION - 913)) | (1 << (SqlParser.ST_DISJOINT - 913)) | (1 << (SqlParser.ST_DISTANCE - 913)) | (1 << (SqlParser.ST_ENDPOINT - 913)) | (1 << (SqlParser.ST_ENVELOPE - 913)) | (1 << (SqlParser.ST_EQUALS - 913)) | (1 << (SqlParser.ST_EXTERIORRING - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYN - 913)) | (1 << (SqlParser.ST_GEOMETRYTYPE - 913)) | (1 << (SqlParser.ST_GEOMFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMFROMWKB - 913)) | (1 << (SqlParser.ST_INTERIORRINGN - 913)) | (1 << (SqlParser.ST_INTERSECTION - 913)) | (1 << (SqlParser.ST_INTERSECTS - 913)) | (1 << (SqlParser.ST_ISCLOSED - 913)) | (1 << (SqlParser.ST_ISEMPTY - 913)) | (1 << (SqlParser.ST_ISSIMPLE - 913)) | (1 << (SqlParser.ST_LINEFROMTEXT - 913)) | (1 << (SqlParser.ST_LINEFROMWKB - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMTEXT - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMWKB - 913)) | (1 << (SqlParser.ST_NUMGEOMETRIES - 913)) | (1 << (SqlParser.ST_NUMINTERIORRING - 913)) | (1 << (SqlParser.ST_NUMINTERIORRINGS - 913)) | (1 << (SqlParser.ST_NUMPOINTS - 913)))) !== 0) || ((((_la - 945)) & ~0x1f) == 0 && ((1 << (_la - 945)) & ((1 << (SqlParser.ST_OVERLAPS - 945)) | (1 << (SqlParser.ST_POINTFROMTEXT - 945)) | (1 << (SqlParser.ST_POINTFROMWKB - 945)) | (1 << (SqlParser.ST_POINTN - 945)) | (1 << (SqlParser.ST_POLYFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYFROMWKB - 945)) | (1 << (SqlParser.ST_POLYGONFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYGONFROMWKB - 945)) | (1 << (SqlParser.ST_SRID - 945)) | (1 << (SqlParser.ST_STARTPOINT - 945)) | (1 << (SqlParser.ST_SYMDIFFERENCE - 945)) | (1 << (SqlParser.ST_TOUCHES - 945)) | (1 << (SqlParser.ST_UNION - 945)) | (1 << (SqlParser.ST_WITHIN - 945)) | (1 << (SqlParser.ST_X - 945)) | (1 << (SqlParser.ST_Y - 945)) | (1 << (SqlParser.SUBDATE - 945)) | (1 << (SqlParser.SUBSTRING_INDEX - 945)) | (1 << (SqlParser.SUBTIME - 945)) | (1 << (SqlParser.SYSTEM_USER - 945)) | (1 << (SqlParser.TAN - 945)) | (1 << (SqlParser.TIMEDIFF - 945)) | (1 << (SqlParser.TIMESTAMPADD - 945)) | (1 << (SqlParser.TIMESTAMPDIFF - 945)) | (1 << (SqlParser.TIME_FORMAT - 945)) | (1 << (SqlParser.TIME_TO_SEC - 945)) | (1 << (SqlParser.TOUCHES - 945)) | (1 << (SqlParser.TO_BASE64 - 945)) | (1 << (SqlParser.TO_DAYS - 945)) | (1 << (SqlParser.TO_SECONDS - 945)) | (1 << (SqlParser.UCASE - 945)) | (1 << (SqlParser.UNCOMPRESS - 945)))) !== 0) || ((((_la - 977)) & ~0x1f) == 0 && ((1 << (_la - 977)) & ((1 << (SqlParser.UNCOMPRESSED_LENGTH - 977)) | (1 << (SqlParser.UNHEX - 977)) | (1 << (SqlParser.UNIX_TIMESTAMP - 977)) | (1 << (SqlParser.UPDATEXML - 977)) | (1 << (SqlParser.UPPER - 977)) | (1 << (SqlParser.UUID - 977)) | (1 << (SqlParser.UUID_SHORT - 977)) | (1 << (SqlParser.VALIDATE_PASSWORD_STRENGTH - 977)) | (1 << (SqlParser.VERSION - 977)) | (1 << (SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS - 977)) | (1 << (SqlParser.WEEKDAY - 977)) | (1 << (SqlParser.WEEKOFYEAR - 977)) | (1 << (SqlParser.WEIGHT_STRING - 977)) | (1 << (SqlParser.WITHIN - 977)) | (1 << (SqlParser.YEARWEEK - 977)) | (1 << (SqlParser.Y_FUNCTION - 977)) | (1 << (SqlParser.X_FUNCTION - 977)))) !== 0) || ((((_la - 1032)) & ~0x1f) == 0 && ((1 << (_la - 1032)) & ((1 << (SqlParser.CHARSET_REVERSE_QOUTE_STRING - 1032)) | (1 << (SqlParser.STRING_LITERAL - 1032)) | (1 << (SqlParser.ID - 1032)) | (1 << (SqlParser.REVERSE_QUOTE_ID - 1032)))) !== 0)) {
+ this.state = 2316;
+ localctx.name = this.uid();
+ }
+
+ }
+
+ this.state = 2321;
+ this.match(SqlParser.PRIMARY);
+ this.state = 2322;
+ this.match(SqlParser.KEY);
+ this.state = 2324;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (SqlParser.CURRENT - 32)) | (1 << (SqlParser.DATABASE - 32)) | (1 << (SqlParser.DIAGNOSTICS - 32)))) !== 0) || _la===SqlParser.LEFT || _la===SqlParser.NUMBER || _la===SqlParser.RIGHT || _la===SqlParser.STACKED || ((((_la - 199)) & ~0x1f) == 0 && ((1 << (_la - 199)) & ((1 << (SqlParser.DATE - 199)) | (1 << (SqlParser.TIME - 199)) | (1 << (SqlParser.TIMESTAMP - 199)) | (1 << (SqlParser.DATETIME - 199)) | (1 << (SqlParser.YEAR - 199)) | (1 << (SqlParser.TEXT - 199)) | (1 << (SqlParser.ENUM - 199)) | (1 << (SqlParser.SERIAL - 199)))) !== 0) || ((((_la - 233)) & ~0x1f) == 0 && ((1 << (_la - 233)) & ((1 << (SqlParser.JSON_VALID - 233)) | (1 << (SqlParser.JSON_SCHEMA_VALID - 233)) | (1 << (SqlParser.COUNT - 233)) | (1 << (SqlParser.POSITION - 233)))) !== 0) || ((((_la - 270)) & ~0x1f) == 0 && ((1 << (_la - 270)) & ((1 << (SqlParser.ACCOUNT - 270)) | (1 << (SqlParser.ACTION - 270)) | (1 << (SqlParser.AFTER - 270)) | (1 << (SqlParser.AGGREGATE - 270)) | (1 << (SqlParser.ALGORITHM - 270)) | (1 << (SqlParser.ANY - 270)) | (1 << (SqlParser.AT - 270)) | (1 << (SqlParser.AUTHORS - 270)) | (1 << (SqlParser.AUTOCOMMIT - 270)) | (1 << (SqlParser.AUTOEXTEND_SIZE - 270)) | (1 << (SqlParser.AUTO_INCREMENT - 270)) | (1 << (SqlParser.AVG_ROW_LENGTH - 270)) | (1 << (SqlParser.BEGIN - 270)) | (1 << (SqlParser.BINLOG - 270)) | (1 << (SqlParser.BIT - 270)) | (1 << (SqlParser.BLOCK - 270)) | (1 << (SqlParser.BOOL - 270)) | (1 << (SqlParser.BOOLEAN - 270)) | (1 << (SqlParser.BTREE - 270)) | (1 << (SqlParser.CACHE - 270)) | (1 << (SqlParser.CASCADED - 270)) | (1 << (SqlParser.CHAIN - 270)) | (1 << (SqlParser.CHANGED - 270)) | (1 << (SqlParser.CHANNEL - 270)) | (1 << (SqlParser.CHECKSUM - 270)) | (1 << (SqlParser.PAGE_CHECKSUM - 270)) | (1 << (SqlParser.CIPHER - 270)) | (1 << (SqlParser.CLASS_ORIGIN - 270)) | (1 << (SqlParser.CLIENT - 270)) | (1 << (SqlParser.CLOSE - 270)) | (1 << (SqlParser.COALESCE - 270)) | (1 << (SqlParser.CODE - 270)))) !== 0) || ((((_la - 302)) & ~0x1f) == 0 && ((1 << (_la - 302)) & ((1 << (SqlParser.COLUMNS - 302)) | (1 << (SqlParser.COLUMN_FORMAT - 302)) | (1 << (SqlParser.COLUMN_NAME - 302)) | (1 << (SqlParser.COMMENT - 302)) | (1 << (SqlParser.COMMIT - 302)) | (1 << (SqlParser.COMPACT - 302)) | (1 << (SqlParser.COMPLETION - 302)) | (1 << (SqlParser.COMPRESSED - 302)) | (1 << (SqlParser.COMPRESSION - 302)) | (1 << (SqlParser.CONCURRENT - 302)) | (1 << (SqlParser.CONNECTION - 302)) | (1 << (SqlParser.CONSISTENT - 302)) | (1 << (SqlParser.CONSTRAINT_CATALOG - 302)) | (1 << (SqlParser.CONSTRAINT_SCHEMA - 302)) | (1 << (SqlParser.CONSTRAINT_NAME - 302)) | (1 << (SqlParser.CONTAINS - 302)) | (1 << (SqlParser.CONTEXT - 302)) | (1 << (SqlParser.CONTRIBUTORS - 302)) | (1 << (SqlParser.COPY - 302)) | (1 << (SqlParser.CPU - 302)) | (1 << (SqlParser.CURSOR_NAME - 302)) | (1 << (SqlParser.DATA - 302)) | (1 << (SqlParser.DATAFILE - 302)) | (1 << (SqlParser.DEALLOCATE - 302)) | (1 << (SqlParser.DEFAULT_AUTH - 302)) | (1 << (SqlParser.DEFINER - 302)) | (1 << (SqlParser.DELAY_KEY_WRITE - 302)) | (1 << (SqlParser.DES_KEY_FILE - 302)) | (1 << (SqlParser.DIRECTORY - 302)) | (1 << (SqlParser.DISABLE - 302)) | (1 << (SqlParser.DISCARD - 302)) | (1 << (SqlParser.DISK - 302)))) !== 0) || ((((_la - 334)) & ~0x1f) == 0 && ((1 << (_la - 334)) & ((1 << (SqlParser.DO - 334)) | (1 << (SqlParser.DUMPFILE - 334)) | (1 << (SqlParser.DUPLICATE - 334)) | (1 << (SqlParser.DYNAMIC - 334)) | (1 << (SqlParser.ENABLE - 334)) | (1 << (SqlParser.ENCRYPTION - 334)) | (1 << (SqlParser.END - 334)) | (1 << (SqlParser.ENDS - 334)) | (1 << (SqlParser.ENGINE - 334)) | (1 << (SqlParser.ENGINES - 334)) | (1 << (SqlParser.ERROR - 334)) | (1 << (SqlParser.ERRORS - 334)) | (1 << (SqlParser.ESCAPE - 334)) | (1 << (SqlParser.EVEN - 334)) | (1 << (SqlParser.EVENT - 334)) | (1 << (SqlParser.EVENTS - 334)) | (1 << (SqlParser.EVERY - 334)) | (1 << (SqlParser.EXCHANGE - 334)) | (1 << (SqlParser.EXCLUSIVE - 334)) | (1 << (SqlParser.EXPIRE - 334)) | (1 << (SqlParser.EXPORT - 334)) | (1 << (SqlParser.EXTENDED - 334)) | (1 << (SqlParser.EXTENT_SIZE - 334)) | (1 << (SqlParser.FAST - 334)) | (1 << (SqlParser.FAULTS - 334)) | (1 << (SqlParser.FIELDS - 334)) | (1 << (SqlParser.FILE_BLOCK_SIZE - 334)) | (1 << (SqlParser.FILTER - 334)) | (1 << (SqlParser.FIRST - 334)) | (1 << (SqlParser.FIXED - 334)) | (1 << (SqlParser.FLUSH - 334)) | (1 << (SqlParser.FOLLOWS - 334)))) !== 0) || ((((_la - 366)) & ~0x1f) == 0 && ((1 << (_la - 366)) & ((1 << (SqlParser.FOUND - 366)) | (1 << (SqlParser.FULL - 366)) | (1 << (SqlParser.FUNCTION - 366)) | (1 << (SqlParser.GENERAL - 366)) | (1 << (SqlParser.GLOBAL - 366)) | (1 << (SqlParser.GRANTS - 366)) | (1 << (SqlParser.GROUP_REPLICATION - 366)) | (1 << (SqlParser.HANDLER - 366)) | (1 << (SqlParser.HASH - 366)) | (1 << (SqlParser.HELP - 366)) | (1 << (SqlParser.HOST - 366)) | (1 << (SqlParser.HOSTS - 366)) | (1 << (SqlParser.IDENTIFIED - 366)) | (1 << (SqlParser.IGNORE_SERVER_IDS - 366)) | (1 << (SqlParser.IMPORT - 366)) | (1 << (SqlParser.INDEXES - 366)) | (1 << (SqlParser.INITIAL_SIZE - 366)) | (1 << (SqlParser.INPLACE - 366)) | (1 << (SqlParser.INSERT_METHOD - 366)) | (1 << (SqlParser.INSTALL - 366)) | (1 << (SqlParser.INSTANCE - 366)) | (1 << (SqlParser.INVISIBLE - 366)) | (1 << (SqlParser.INVOKER - 366)) | (1 << (SqlParser.IO - 366)) | (1 << (SqlParser.IO_THREAD - 366)) | (1 << (SqlParser.IPC - 366)) | (1 << (SqlParser.ISOLATION - 366)) | (1 << (SqlParser.ISSUER - 366)) | (1 << (SqlParser.JSON - 366)) | (1 << (SqlParser.KEY_BLOCK_SIZE - 366)) | (1 << (SqlParser.LANGUAGE - 366)) | (1 << (SqlParser.LAST - 366)))) !== 0) || ((((_la - 398)) & ~0x1f) == 0 && ((1 << (_la - 398)) & ((1 << (SqlParser.LEAVES - 398)) | (1 << (SqlParser.LESS - 398)) | (1 << (SqlParser.LEVEL - 398)) | (1 << (SqlParser.LIST - 398)) | (1 << (SqlParser.LOCAL - 398)) | (1 << (SqlParser.LOGFILE - 398)) | (1 << (SqlParser.LOGS - 398)) | (1 << (SqlParser.MASTER - 398)) | (1 << (SqlParser.MASTER_AUTO_POSITION - 398)) | (1 << (SqlParser.MASTER_CONNECT_RETRY - 398)) | (1 << (SqlParser.MASTER_DELAY - 398)) | (1 << (SqlParser.MASTER_HEARTBEAT_PERIOD - 398)) | (1 << (SqlParser.MASTER_HOST - 398)) | (1 << (SqlParser.MASTER_LOG_FILE - 398)) | (1 << (SqlParser.MASTER_LOG_POS - 398)) | (1 << (SqlParser.MASTER_PASSWORD - 398)) | (1 << (SqlParser.MASTER_PORT - 398)) | (1 << (SqlParser.MASTER_RETRY_COUNT - 398)) | (1 << (SqlParser.MASTER_SSL - 398)) | (1 << (SqlParser.MASTER_SSL_CA - 398)) | (1 << (SqlParser.MASTER_SSL_CAPATH - 398)) | (1 << (SqlParser.MASTER_SSL_CERT - 398)) | (1 << (SqlParser.MASTER_SSL_CIPHER - 398)) | (1 << (SqlParser.MASTER_SSL_CRL - 398)) | (1 << (SqlParser.MASTER_SSL_CRLPATH - 398)) | (1 << (SqlParser.MASTER_SSL_KEY - 398)) | (1 << (SqlParser.MASTER_TLS_VERSION - 398)) | (1 << (SqlParser.MASTER_USER - 398)) | (1 << (SqlParser.MAX_CONNECTIONS_PER_HOUR - 398)) | (1 << (SqlParser.MAX_QUERIES_PER_HOUR - 398)) | (1 << (SqlParser.MAX_ROWS - 398)) | (1 << (SqlParser.MAX_SIZE - 398)))) !== 0) || ((((_la - 430)) & ~0x1f) == 0 && ((1 << (_la - 430)) & ((1 << (SqlParser.MAX_UPDATES_PER_HOUR - 430)) | (1 << (SqlParser.MAX_USER_CONNECTIONS - 430)) | (1 << (SqlParser.MEDIUM - 430)) | (1 << (SqlParser.MERGE - 430)) | (1 << (SqlParser.MESSAGE_TEXT - 430)) | (1 << (SqlParser.MID - 430)) | (1 << (SqlParser.MIGRATE - 430)) | (1 << (SqlParser.MIN_ROWS - 430)) | (1 << (SqlParser.MODE - 430)) | (1 << (SqlParser.MODIFY - 430)) | (1 << (SqlParser.MUTEX - 430)) | (1 << (SqlParser.MYSQL - 430)) | (1 << (SqlParser.MYSQL_ERRNO - 430)) | (1 << (SqlParser.NAME - 430)) | (1 << (SqlParser.NAMES - 430)) | (1 << (SqlParser.NCHAR - 430)) | (1 << (SqlParser.NEVER - 430)) | (1 << (SqlParser.NEXT - 430)) | (1 << (SqlParser.NO - 430)) | (1 << (SqlParser.NODEGROUP - 430)) | (1 << (SqlParser.NONE - 430)) | (1 << (SqlParser.OFFLINE - 430)) | (1 << (SqlParser.OFFSET - 430)) | (1 << (SqlParser.OJ - 430)) | (1 << (SqlParser.OLD_PASSWORD - 430)) | (1 << (SqlParser.ONE - 430)) | (1 << (SqlParser.ONLINE - 430)) | (1 << (SqlParser.ONLY - 430)) | (1 << (SqlParser.OPEN - 430)) | (1 << (SqlParser.OPTIMIZER_COSTS - 430)) | (1 << (SqlParser.OPTIONS - 430)) | (1 << (SqlParser.OWNER - 430)))) !== 0) || ((((_la - 462)) & ~0x1f) == 0 && ((1 << (_la - 462)) & ((1 << (SqlParser.PACK_KEYS - 462)) | (1 << (SqlParser.PAGE - 462)) | (1 << (SqlParser.PARSER - 462)) | (1 << (SqlParser.PARTIAL - 462)) | (1 << (SqlParser.PARTITIONING - 462)) | (1 << (SqlParser.PARTITIONS - 462)) | (1 << (SqlParser.PASSWORD - 462)) | (1 << (SqlParser.PHASE - 462)) | (1 << (SqlParser.PLUGIN - 462)) | (1 << (SqlParser.PLUGIN_DIR - 462)) | (1 << (SqlParser.PLUGINS - 462)) | (1 << (SqlParser.PORT - 462)) | (1 << (SqlParser.PRECEDES - 462)) | (1 << (SqlParser.PREPARE - 462)) | (1 << (SqlParser.PRESERVE - 462)) | (1 << (SqlParser.PREV - 462)) | (1 << (SqlParser.PROCESSLIST - 462)) | (1 << (SqlParser.PROFILE - 462)) | (1 << (SqlParser.PROFILES - 462)) | (1 << (SqlParser.PROXY - 462)) | (1 << (SqlParser.QUERY - 462)) | (1 << (SqlParser.QUICK - 462)) | (1 << (SqlParser.REBUILD - 462)) | (1 << (SqlParser.RECOVER - 462)) | (1 << (SqlParser.REDO_BUFFER_SIZE - 462)) | (1 << (SqlParser.REDUNDANT - 462)) | (1 << (SqlParser.RELAY - 462)) | (1 << (SqlParser.RELAY_LOG_FILE - 462)) | (1 << (SqlParser.RELAY_LOG_POS - 462)) | (1 << (SqlParser.RELAYLOG - 462)) | (1 << (SqlParser.REMOVE - 462)) | (1 << (SqlParser.REORGANIZE - 462)))) !== 0) || ((((_la - 494)) & ~0x1f) == 0 && ((1 << (_la - 494)) & ((1 << (SqlParser.REPAIR - 494)) | (1 << (SqlParser.REPLICATE_DO_DB - 494)) | (1 << (SqlParser.REPLICATE_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_DB - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATE_REWRITE_DB - 494)) | (1 << (SqlParser.REPLICATE_WILD_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_WILD_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATION - 494)) | (1 << (SqlParser.RESET - 494)) | (1 << (SqlParser.RESUME - 494)) | (1 << (SqlParser.RETURNED_SQLSTATE - 494)) | (1 << (SqlParser.RETURNS - 494)) | (1 << (SqlParser.ROLE - 494)) | (1 << (SqlParser.ROLLBACK - 494)) | (1 << (SqlParser.ROLLUP - 494)) | (1 << (SqlParser.ROTATE - 494)) | (1 << (SqlParser.ROW - 494)) | (1 << (SqlParser.ROWS - 494)) | (1 << (SqlParser.ROW_FORMAT - 494)) | (1 << (SqlParser.SAVEPOINT - 494)) | (1 << (SqlParser.SCHEDULE - 494)) | (1 << (SqlParser.SECURITY - 494)) | (1 << (SqlParser.SERVER - 494)) | (1 << (SqlParser.SESSION - 494)) | (1 << (SqlParser.SHARE - 494)) | (1 << (SqlParser.SHARED - 494)) | (1 << (SqlParser.SIGNED - 494)) | (1 << (SqlParser.SIMPLE - 494)) | (1 << (SqlParser.SLAVE - 494)) | (1 << (SqlParser.SLOW - 494)) | (1 << (SqlParser.SNAPSHOT - 494)))) !== 0) || ((((_la - 526)) & ~0x1f) == 0 && ((1 << (_la - 526)) & ((1 << (SqlParser.SOCKET - 526)) | (1 << (SqlParser.SOME - 526)) | (1 << (SqlParser.SONAME - 526)) | (1 << (SqlParser.SOUNDS - 526)) | (1 << (SqlParser.SOURCE - 526)) | (1 << (SqlParser.SQL_AFTER_GTIDS - 526)) | (1 << (SqlParser.SQL_AFTER_MTS_GAPS - 526)) | (1 << (SqlParser.SQL_BEFORE_GTIDS - 526)) | (1 << (SqlParser.SQL_BUFFER_RESULT - 526)) | (1 << (SqlParser.SQL_CACHE - 526)) | (1 << (SqlParser.SQL_NO_CACHE - 526)) | (1 << (SqlParser.SQL_THREAD - 526)) | (1 << (SqlParser.START - 526)) | (1 << (SqlParser.STARTS - 526)) | (1 << (SqlParser.STATS_AUTO_RECALC - 526)) | (1 << (SqlParser.STATS_PERSISTENT - 526)) | (1 << (SqlParser.STATS_SAMPLE_PAGES - 526)) | (1 << (SqlParser.STATUS - 526)) | (1 << (SqlParser.STOP - 526)) | (1 << (SqlParser.STORAGE - 526)) | (1 << (SqlParser.STRING - 526)) | (1 << (SqlParser.SUBCLASS_ORIGIN - 526)) | (1 << (SqlParser.SUBJECT - 526)) | (1 << (SqlParser.SUBPARTITION - 526)) | (1 << (SqlParser.SUBPARTITIONS - 526)) | (1 << (SqlParser.SUSPEND - 526)) | (1 << (SqlParser.SWAPS - 526)) | (1 << (SqlParser.SWITCHES - 526)) | (1 << (SqlParser.TABLE_NAME - 526)) | (1 << (SqlParser.TABLESPACE - 526)) | (1 << (SqlParser.TEMPORARY - 526)))) !== 0) || ((((_la - 558)) & ~0x1f) == 0 && ((1 << (_la - 558)) & ((1 << (SqlParser.TEMPTABLE - 558)) | (1 << (SqlParser.THAN - 558)) | (1 << (SqlParser.TRADITIONAL - 558)) | (1 << (SqlParser.TRANSACTION - 558)) | (1 << (SqlParser.TRANSACTIONAL - 558)) | (1 << (SqlParser.TRIGGERS - 558)) | (1 << (SqlParser.TRUNCATE - 558)) | (1 << (SqlParser.UNDEFINED - 558)) | (1 << (SqlParser.UNDOFILE - 558)) | (1 << (SqlParser.UNDO_BUFFER_SIZE - 558)) | (1 << (SqlParser.UNINSTALL - 558)) | (1 << (SqlParser.UNKNOWN - 558)) | (1 << (SqlParser.UNTIL - 558)) | (1 << (SqlParser.UPGRADE - 558)) | (1 << (SqlParser.USER - 558)) | (1 << (SqlParser.USE_FRM - 558)) | (1 << (SqlParser.USER_RESOURCES - 558)) | (1 << (SqlParser.VALIDATION - 558)) | (1 << (SqlParser.VALUE - 558)) | (1 << (SqlParser.VARIABLES - 558)) | (1 << (SqlParser.VIEW - 558)) | (1 << (SqlParser.VISIBLE - 558)) | (1 << (SqlParser.WAIT - 558)) | (1 << (SqlParser.WARNINGS - 558)) | (1 << (SqlParser.WITHOUT - 558)) | (1 << (SqlParser.WORK - 558)) | (1 << (SqlParser.WRAPPER - 558)) | (1 << (SqlParser.X509 - 558)) | (1 << (SqlParser.XA - 558)) | (1 << (SqlParser.XML - 558)))) !== 0) || ((((_la - 593)) & ~0x1f) == 0 && ((1 << (_la - 593)) & ((1 << (SqlParser.INTERNAL - 593)) | (1 << (SqlParser.QUARTER - 593)) | (1 << (SqlParser.MONTH - 593)) | (1 << (SqlParser.DAY - 593)) | (1 << (SqlParser.HOUR - 593)) | (1 << (SqlParser.MINUTE - 593)) | (1 << (SqlParser.WEEK - 593)) | (1 << (SqlParser.SECOND - 593)) | (1 << (SqlParser.MICROSECOND - 593)) | (1 << (SqlParser.TABLES - 593)) | (1 << (SqlParser.ROUTINE - 593)) | (1 << (SqlParser.EXECUTE - 593)) | (1 << (SqlParser.FILE - 593)) | (1 << (SqlParser.PROCESS - 593)) | (1 << (SqlParser.RELOAD - 593)) | (1 << (SqlParser.SHUTDOWN - 593)) | (1 << (SqlParser.SUPER - 593)) | (1 << (SqlParser.PRIVILEGES - 593)) | (1 << (SqlParser.AUDIT_ADMIN - 593)) | (1 << (SqlParser.BACKUP_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ENCRYPTION_ADMIN - 593)) | (1 << (SqlParser.CLONE_ADMIN - 593)) | (1 << (SqlParser.CONNECTION_ADMIN - 593)) | (1 << (SqlParser.ENCRYPTION_KEY_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_USER - 593)) | (1 << (SqlParser.GROUP_REPLICATION_ADMIN - 593)) | (1 << (SqlParser.INNODB_REDO_LOG_ARCHIVE - 593)) | (1 << (SqlParser.NDB_STORED_USER - 593)) | (1 << (SqlParser.PERSIST_RO_VARIABLES_ADMIN - 593)))) !== 0) || ((((_la - 625)) & ~0x1f) == 0 && ((1 << (_la - 625)) & ((1 << (SqlParser.REPLICATION_APPLIER - 625)) | (1 << (SqlParser.REPLICATION_SLAVE_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_USER - 625)) | (1 << (SqlParser.ROLE_ADMIN - 625)) | (1 << (SqlParser.SESSION_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.SET_USER_ID - 625)) | (1 << (SqlParser.SHOW_ROUTINE - 625)) | (1 << (SqlParser.SYSTEM_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.TABLE_ENCRYPTION_ADMIN - 625)) | (1 << (SqlParser.VERSION_TOKEN_ADMIN - 625)) | (1 << (SqlParser.XA_RECOVER_ADMIN - 625)) | (1 << (SqlParser.ARMSCII8 - 625)) | (1 << (SqlParser.ASCII - 625)) | (1 << (SqlParser.BIG5 - 625)) | (1 << (SqlParser.CP1250 - 625)) | (1 << (SqlParser.CP1251 - 625)) | (1 << (SqlParser.CP1256 - 625)) | (1 << (SqlParser.CP1257 - 625)) | (1 << (SqlParser.CP850 - 625)) | (1 << (SqlParser.CP852 - 625)) | (1 << (SqlParser.CP866 - 625)) | (1 << (SqlParser.CP932 - 625)) | (1 << (SqlParser.DEC8 - 625)) | (1 << (SqlParser.EUCJPMS - 625)) | (1 << (SqlParser.EUCKR - 625)) | (1 << (SqlParser.GB2312 - 625)) | (1 << (SqlParser.GBK - 625)) | (1 << (SqlParser.GEOSTD8 - 625)) | (1 << (SqlParser.GREEK - 625)) | (1 << (SqlParser.HEBREW - 625)) | (1 << (SqlParser.HP8 - 625)))) !== 0) || ((((_la - 657)) & ~0x1f) == 0 && ((1 << (_la - 657)) & ((1 << (SqlParser.KEYBCS2 - 657)) | (1 << (SqlParser.KOI8R - 657)) | (1 << (SqlParser.KOI8U - 657)) | (1 << (SqlParser.LATIN1 - 657)) | (1 << (SqlParser.LATIN2 - 657)) | (1 << (SqlParser.LATIN5 - 657)) | (1 << (SqlParser.LATIN7 - 657)) | (1 << (SqlParser.MACCE - 657)) | (1 << (SqlParser.MACROMAN - 657)) | (1 << (SqlParser.SJIS - 657)) | (1 << (SqlParser.SWE7 - 657)) | (1 << (SqlParser.TIS620 - 657)) | (1 << (SqlParser.UCS2 - 657)) | (1 << (SqlParser.UJIS - 657)) | (1 << (SqlParser.UTF16 - 657)) | (1 << (SqlParser.UTF16LE - 657)) | (1 << (SqlParser.UTF32 - 657)) | (1 << (SqlParser.UTF8 - 657)) | (1 << (SqlParser.UTF8MB3 - 657)) | (1 << (SqlParser.UTF8MB4 - 657)) | (1 << (SqlParser.ARCHIVE - 657)) | (1 << (SqlParser.BLACKHOLE - 657)) | (1 << (SqlParser.CSV - 657)) | (1 << (SqlParser.FEDERATED - 657)) | (1 << (SqlParser.INNODB - 657)) | (1 << (SqlParser.MEMORY - 657)) | (1 << (SqlParser.MRG_MYISAM - 657)) | (1 << (SqlParser.MYISAM - 657)) | (1 << (SqlParser.NDB - 657)) | (1 << (SqlParser.NDBCLUSTER - 657)) | (1 << (SqlParser.PERFORMANCE_SCHEMA - 657)) | (1 << (SqlParser.TOKUDB - 657)))) !== 0) || ((((_la - 689)) & ~0x1f) == 0 && ((1 << (_la - 689)) & ((1 << (SqlParser.REPEATABLE - 689)) | (1 << (SqlParser.COMMITTED - 689)) | (1 << (SqlParser.UNCOMMITTED - 689)) | (1 << (SqlParser.SERIALIZABLE - 689)) | (1 << (SqlParser.GEOMETRYCOLLECTION - 689)) | (1 << (SqlParser.LINESTRING - 689)) | (1 << (SqlParser.MULTILINESTRING - 689)) | (1 << (SqlParser.MULTIPOINT - 689)) | (1 << (SqlParser.MULTIPOLYGON - 689)) | (1 << (SqlParser.POINT - 689)) | (1 << (SqlParser.POLYGON - 689)) | (1 << (SqlParser.ABS - 689)) | (1 << (SqlParser.ACOS - 689)) | (1 << (SqlParser.ADDDATE - 689)) | (1 << (SqlParser.ADDTIME - 689)) | (1 << (SqlParser.AES_DECRYPT - 689)) | (1 << (SqlParser.AES_ENCRYPT - 689)) | (1 << (SqlParser.AREA - 689)) | (1 << (SqlParser.ASBINARY - 689)) | (1 << (SqlParser.ASIN - 689)) | (1 << (SqlParser.ASTEXT - 689)) | (1 << (SqlParser.ASWKB - 689)) | (1 << (SqlParser.ASWKT - 689)) | (1 << (SqlParser.ASYMMETRIC_DECRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_DERIVE - 689)) | (1 << (SqlParser.ASYMMETRIC_ENCRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_SIGN - 689)) | (1 << (SqlParser.ASYMMETRIC_VERIFY - 689)) | (1 << (SqlParser.ATAN - 689)) | (1 << (SqlParser.ATAN2 - 689)))) !== 0) || ((((_la - 721)) & ~0x1f) == 0 && ((1 << (_la - 721)) & ((1 << (SqlParser.BENCHMARK - 721)) | (1 << (SqlParser.BIN - 721)) | (1 << (SqlParser.BIT_COUNT - 721)) | (1 << (SqlParser.BIT_LENGTH - 721)) | (1 << (SqlParser.BUFFER - 721)) | (1 << (SqlParser.CATALOG_NAME - 721)) | (1 << (SqlParser.CEIL - 721)) | (1 << (SqlParser.CEILING - 721)) | (1 << (SqlParser.CENTROID - 721)) | (1 << (SqlParser.CHARACTER_LENGTH - 721)) | (1 << (SqlParser.CHARSET - 721)) | (1 << (SqlParser.CHAR_LENGTH - 721)) | (1 << (SqlParser.COERCIBILITY - 721)) | (1 << (SqlParser.COLLATION - 721)) | (1 << (SqlParser.COMPRESS - 721)) | (1 << (SqlParser.CONCAT - 721)) | (1 << (SqlParser.CONCAT_WS - 721)) | (1 << (SqlParser.CONNECTION_ID - 721)) | (1 << (SqlParser.CONV - 721)) | (1 << (SqlParser.CONVERT_TZ - 721)) | (1 << (SqlParser.COS - 721)) | (1 << (SqlParser.COT - 721)) | (1 << (SqlParser.CRC32 - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PRIV_KEY - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PUB_KEY - 721)) | (1 << (SqlParser.CREATE_DH_PARAMETERS - 721)) | (1 << (SqlParser.CREATE_DIGEST - 721)) | (1 << (SqlParser.CROSSES - 721)) | (1 << (SqlParser.DATEDIFF - 721)) | (1 << (SqlParser.DATE_FORMAT - 721)) | (1 << (SqlParser.DAYNAME - 721)) | (1 << (SqlParser.DAYOFMONTH - 721)))) !== 0) || ((((_la - 753)) & ~0x1f) == 0 && ((1 << (_la - 753)) & ((1 << (SqlParser.DAYOFWEEK - 753)) | (1 << (SqlParser.DAYOFYEAR - 753)) | (1 << (SqlParser.DECODE - 753)) | (1 << (SqlParser.DEGREES - 753)) | (1 << (SqlParser.DES_DECRYPT - 753)) | (1 << (SqlParser.DES_ENCRYPT - 753)) | (1 << (SqlParser.DIMENSION - 753)) | (1 << (SqlParser.DISJOINT - 753)) | (1 << (SqlParser.ELT - 753)) | (1 << (SqlParser.ENCODE - 753)) | (1 << (SqlParser.ENCRYPT - 753)) | (1 << (SqlParser.ENDPOINT - 753)) | (1 << (SqlParser.ENVELOPE - 753)) | (1 << (SqlParser.EQUALS - 753)) | (1 << (SqlParser.EXP - 753)) | (1 << (SqlParser.EXPORT_SET - 753)) | (1 << (SqlParser.EXTERIORRING - 753)) | (1 << (SqlParser.EXTRACTVALUE - 753)) | (1 << (SqlParser.FIELD - 753)) | (1 << (SqlParser.FIND_IN_SET - 753)) | (1 << (SqlParser.FLOOR - 753)) | (1 << (SqlParser.FORMAT - 753)) | (1 << (SqlParser.FOUND_ROWS - 753)) | (1 << (SqlParser.FROM_BASE64 - 753)) | (1 << (SqlParser.FROM_DAYS - 753)) | (1 << (SqlParser.FROM_UNIXTIME - 753)) | (1 << (SqlParser.GEOMCOLLFROMTEXT - 753)) | (1 << (SqlParser.GEOMCOLLFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYFROMWKB - 753)))) !== 0) || ((((_la - 785)) & ~0x1f) == 0 && ((1 << (_la - 785)) & ((1 << (SqlParser.GEOMETRYN - 785)) | (1 << (SqlParser.GEOMETRYTYPE - 785)) | (1 << (SqlParser.GEOMFROMTEXT - 785)) | (1 << (SqlParser.GEOMFROMWKB - 785)) | (1 << (SqlParser.GET_FORMAT - 785)) | (1 << (SqlParser.GET_LOCK - 785)) | (1 << (SqlParser.GLENGTH - 785)) | (1 << (SqlParser.GREATEST - 785)) | (1 << (SqlParser.GTID_SUBSET - 785)) | (1 << (SqlParser.GTID_SUBTRACT - 785)) | (1 << (SqlParser.HEX - 785)) | (1 << (SqlParser.IFNULL - 785)) | (1 << (SqlParser.INET6_ATON - 785)) | (1 << (SqlParser.INET6_NTOA - 785)) | (1 << (SqlParser.INET_ATON - 785)) | (1 << (SqlParser.INET_NTOA - 785)) | (1 << (SqlParser.INSTR - 785)) | (1 << (SqlParser.INTERIORRINGN - 785)) | (1 << (SqlParser.INTERSECTS - 785)) | (1 << (SqlParser.ISCLOSED - 785)) | (1 << (SqlParser.ISEMPTY - 785)) | (1 << (SqlParser.ISNULL - 785)) | (1 << (SqlParser.ISSIMPLE - 785)) | (1 << (SqlParser.IS_FREE_LOCK - 785)) | (1 << (SqlParser.IS_IPV4 - 785)) | (1 << (SqlParser.IS_IPV4_COMPAT - 785)) | (1 << (SqlParser.IS_IPV4_MAPPED - 785)) | (1 << (SqlParser.IS_IPV6 - 785)) | (1 << (SqlParser.IS_USED_LOCK - 785)) | (1 << (SqlParser.LAST_INSERT_ID - 785)) | (1 << (SqlParser.LCASE - 785)) | (1 << (SqlParser.LEAST - 785)))) !== 0) || ((((_la - 817)) & ~0x1f) == 0 && ((1 << (_la - 817)) & ((1 << (SqlParser.LENGTH - 817)) | (1 << (SqlParser.LINEFROMTEXT - 817)) | (1 << (SqlParser.LINEFROMWKB - 817)) | (1 << (SqlParser.LINESTRINGFROMTEXT - 817)) | (1 << (SqlParser.LINESTRINGFROMWKB - 817)) | (1 << (SqlParser.LN - 817)) | (1 << (SqlParser.LOAD_FILE - 817)) | (1 << (SqlParser.LOCATE - 817)) | (1 << (SqlParser.LOG - 817)) | (1 << (SqlParser.LOG10 - 817)) | (1 << (SqlParser.LOG2 - 817)) | (1 << (SqlParser.LOWER - 817)) | (1 << (SqlParser.LPAD - 817)) | (1 << (SqlParser.LTRIM - 817)) | (1 << (SqlParser.MAKEDATE - 817)) | (1 << (SqlParser.MAKETIME - 817)) | (1 << (SqlParser.MAKE_SET - 817)) | (1 << (SqlParser.MASTER_POS_WAIT - 817)) | (1 << (SqlParser.MBRCONTAINS - 817)) | (1 << (SqlParser.MBRDISJOINT - 817)) | (1 << (SqlParser.MBREQUAL - 817)) | (1 << (SqlParser.MBRINTERSECTS - 817)) | (1 << (SqlParser.MBROVERLAPS - 817)) | (1 << (SqlParser.MBRTOUCHES - 817)) | (1 << (SqlParser.MBRWITHIN - 817)) | (1 << (SqlParser.MD5 - 817)) | (1 << (SqlParser.MLINEFROMTEXT - 817)) | (1 << (SqlParser.MLINEFROMWKB - 817)) | (1 << (SqlParser.MONTHNAME - 817)) | (1 << (SqlParser.MPOINTFROMTEXT - 817)) | (1 << (SqlParser.MPOINTFROMWKB - 817)) | (1 << (SqlParser.MPOLYFROMTEXT - 817)))) !== 0) || ((((_la - 849)) & ~0x1f) == 0 && ((1 << (_la - 849)) & ((1 << (SqlParser.MPOLYFROMWKB - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMTEXT - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMWKB - 849)) | (1 << (SqlParser.MULTIPOINTFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOINTFROMWKB - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMWKB - 849)) | (1 << (SqlParser.NAME_CONST - 849)) | (1 << (SqlParser.NULLIF - 849)) | (1 << (SqlParser.NUMGEOMETRIES - 849)) | (1 << (SqlParser.NUMINTERIORRINGS - 849)) | (1 << (SqlParser.NUMPOINTS - 849)) | (1 << (SqlParser.OCT - 849)) | (1 << (SqlParser.OCTET_LENGTH - 849)) | (1 << (SqlParser.ORD - 849)) | (1 << (SqlParser.OVERLAPS - 849)) | (1 << (SqlParser.PERIOD_ADD - 849)) | (1 << (SqlParser.PERIOD_DIFF - 849)) | (1 << (SqlParser.PI - 849)) | (1 << (SqlParser.POINTFROMTEXT - 849)) | (1 << (SqlParser.POINTFROMWKB - 849)) | (1 << (SqlParser.POINTN - 849)) | (1 << (SqlParser.POLYFROMTEXT - 849)) | (1 << (SqlParser.POLYFROMWKB - 849)) | (1 << (SqlParser.POLYGONFROMTEXT - 849)) | (1 << (SqlParser.POLYGONFROMWKB - 849)) | (1 << (SqlParser.POW - 849)) | (1 << (SqlParser.POWER - 849)) | (1 << (SqlParser.QUOTE - 849)) | (1 << (SqlParser.RADIANS - 849)) | (1 << (SqlParser.RAND - 849)) | (1 << (SqlParser.RANDOM_BYTES - 849)))) !== 0) || ((((_la - 881)) & ~0x1f) == 0 && ((1 << (_la - 881)) & ((1 << (SqlParser.RELEASE_LOCK - 881)) | (1 << (SqlParser.REVERSE - 881)) | (1 << (SqlParser.ROUND - 881)) | (1 << (SqlParser.ROW_COUNT - 881)) | (1 << (SqlParser.RPAD - 881)) | (1 << (SqlParser.RTRIM - 881)) | (1 << (SqlParser.SEC_TO_TIME - 881)) | (1 << (SqlParser.SESSION_USER - 881)) | (1 << (SqlParser.SHA - 881)) | (1 << (SqlParser.SHA1 - 881)) | (1 << (SqlParser.SHA2 - 881)) | (1 << (SqlParser.SCHEMA_NAME - 881)) | (1 << (SqlParser.SIGN - 881)) | (1 << (SqlParser.SIN - 881)) | (1 << (SqlParser.SLEEP - 881)) | (1 << (SqlParser.SOUNDEX - 881)) | (1 << (SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS - 881)) | (1 << (SqlParser.SQRT - 881)) | (1 << (SqlParser.SRID - 881)) | (1 << (SqlParser.STARTPOINT - 881)) | (1 << (SqlParser.STRCMP - 881)) | (1 << (SqlParser.STR_TO_DATE - 881)) | (1 << (SqlParser.ST_AREA - 881)) | (1 << (SqlParser.ST_ASBINARY - 881)) | (1 << (SqlParser.ST_ASTEXT - 881)) | (1 << (SqlParser.ST_ASWKB - 881)) | (1 << (SqlParser.ST_ASWKT - 881)) | (1 << (SqlParser.ST_BUFFER - 881)) | (1 << (SqlParser.ST_CENTROID - 881)) | (1 << (SqlParser.ST_CONTAINS - 881)) | (1 << (SqlParser.ST_CROSSES - 881)) | (1 << (SqlParser.ST_DIFFERENCE - 881)))) !== 0) || ((((_la - 913)) & ~0x1f) == 0 && ((1 << (_la - 913)) & ((1 << (SqlParser.ST_DIMENSION - 913)) | (1 << (SqlParser.ST_DISJOINT - 913)) | (1 << (SqlParser.ST_DISTANCE - 913)) | (1 << (SqlParser.ST_ENDPOINT - 913)) | (1 << (SqlParser.ST_ENVELOPE - 913)) | (1 << (SqlParser.ST_EQUALS - 913)) | (1 << (SqlParser.ST_EXTERIORRING - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYN - 913)) | (1 << (SqlParser.ST_GEOMETRYTYPE - 913)) | (1 << (SqlParser.ST_GEOMFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMFROMWKB - 913)) | (1 << (SqlParser.ST_INTERIORRINGN - 913)) | (1 << (SqlParser.ST_INTERSECTION - 913)) | (1 << (SqlParser.ST_INTERSECTS - 913)) | (1 << (SqlParser.ST_ISCLOSED - 913)) | (1 << (SqlParser.ST_ISEMPTY - 913)) | (1 << (SqlParser.ST_ISSIMPLE - 913)) | (1 << (SqlParser.ST_LINEFROMTEXT - 913)) | (1 << (SqlParser.ST_LINEFROMWKB - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMTEXT - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMWKB - 913)) | (1 << (SqlParser.ST_NUMGEOMETRIES - 913)) | (1 << (SqlParser.ST_NUMINTERIORRING - 913)) | (1 << (SqlParser.ST_NUMINTERIORRINGS - 913)) | (1 << (SqlParser.ST_NUMPOINTS - 913)))) !== 0) || ((((_la - 945)) & ~0x1f) == 0 && ((1 << (_la - 945)) & ((1 << (SqlParser.ST_OVERLAPS - 945)) | (1 << (SqlParser.ST_POINTFROMTEXT - 945)) | (1 << (SqlParser.ST_POINTFROMWKB - 945)) | (1 << (SqlParser.ST_POINTN - 945)) | (1 << (SqlParser.ST_POLYFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYFROMWKB - 945)) | (1 << (SqlParser.ST_POLYGONFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYGONFROMWKB - 945)) | (1 << (SqlParser.ST_SRID - 945)) | (1 << (SqlParser.ST_STARTPOINT - 945)) | (1 << (SqlParser.ST_SYMDIFFERENCE - 945)) | (1 << (SqlParser.ST_TOUCHES - 945)) | (1 << (SqlParser.ST_UNION - 945)) | (1 << (SqlParser.ST_WITHIN - 945)) | (1 << (SqlParser.ST_X - 945)) | (1 << (SqlParser.ST_Y - 945)) | (1 << (SqlParser.SUBDATE - 945)) | (1 << (SqlParser.SUBSTRING_INDEX - 945)) | (1 << (SqlParser.SUBTIME - 945)) | (1 << (SqlParser.SYSTEM_USER - 945)) | (1 << (SqlParser.TAN - 945)) | (1 << (SqlParser.TIMEDIFF - 945)) | (1 << (SqlParser.TIMESTAMPADD - 945)) | (1 << (SqlParser.TIMESTAMPDIFF - 945)) | (1 << (SqlParser.TIME_FORMAT - 945)) | (1 << (SqlParser.TIME_TO_SEC - 945)) | (1 << (SqlParser.TOUCHES - 945)) | (1 << (SqlParser.TO_BASE64 - 945)) | (1 << (SqlParser.TO_DAYS - 945)) | (1 << (SqlParser.TO_SECONDS - 945)) | (1 << (SqlParser.UCASE - 945)) | (1 << (SqlParser.UNCOMPRESS - 945)))) !== 0) || ((((_la - 977)) & ~0x1f) == 0 && ((1 << (_la - 977)) & ((1 << (SqlParser.UNCOMPRESSED_LENGTH - 977)) | (1 << (SqlParser.UNHEX - 977)) | (1 << (SqlParser.UNIX_TIMESTAMP - 977)) | (1 << (SqlParser.UPDATEXML - 977)) | (1 << (SqlParser.UPPER - 977)) | (1 << (SqlParser.UUID - 977)) | (1 << (SqlParser.UUID_SHORT - 977)) | (1 << (SqlParser.VALIDATE_PASSWORD_STRENGTH - 977)) | (1 << (SqlParser.VERSION - 977)) | (1 << (SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS - 977)) | (1 << (SqlParser.WEEKDAY - 977)) | (1 << (SqlParser.WEEKOFYEAR - 977)) | (1 << (SqlParser.WEIGHT_STRING - 977)) | (1 << (SqlParser.WITHIN - 977)) | (1 << (SqlParser.YEARWEEK - 977)) | (1 << (SqlParser.Y_FUNCTION - 977)) | (1 << (SqlParser.X_FUNCTION - 977)))) !== 0) || ((((_la - 1032)) & ~0x1f) == 0 && ((1 << (_la - 1032)) & ((1 << (SqlParser.CHARSET_REVERSE_QOUTE_STRING - 1032)) | (1 << (SqlParser.STRING_LITERAL - 1032)) | (1 << (SqlParser.ID - 1032)) | (1 << (SqlParser.REVERSE_QUOTE_ID - 1032)))) !== 0)) {
+ this.state = 2323;
+ localctx.index = this.uid();
+ }
+
+ this.state = 2327;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.USING) {
+ this.state = 2326;
+ this.indexType();
+ }
+
+ this.state = 2329;
+ this.indexColumnNames();
+ this.state = 2333;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.USING || _la===SqlParser.WITH || _la===SqlParser.COMMENT || _la===SqlParser.INVISIBLE || _la===SqlParser.KEY_BLOCK_SIZE || _la===SqlParser.VISIBLE) {
+ this.state = 2330;
+ this.indexOption();
+ this.state = 2335;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+
+ case 6:
+ localctx = new AlterByAddUniqueKeyContext(this, localctx);
+ this.enterOuterAlt(localctx, 6);
+ this.state = 2336;
+ this.match(SqlParser.ADD);
+ this.state = 2341;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.CONSTRAINT) {
+ this.state = 2337;
+ this.match(SqlParser.CONSTRAINT);
+ this.state = 2339;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (SqlParser.CURRENT - 32)) | (1 << (SqlParser.DATABASE - 32)) | (1 << (SqlParser.DIAGNOSTICS - 32)))) !== 0) || _la===SqlParser.LEFT || _la===SqlParser.NUMBER || _la===SqlParser.RIGHT || _la===SqlParser.STACKED || ((((_la - 199)) & ~0x1f) == 0 && ((1 << (_la - 199)) & ((1 << (SqlParser.DATE - 199)) | (1 << (SqlParser.TIME - 199)) | (1 << (SqlParser.TIMESTAMP - 199)) | (1 << (SqlParser.DATETIME - 199)) | (1 << (SqlParser.YEAR - 199)) | (1 << (SqlParser.TEXT - 199)) | (1 << (SqlParser.ENUM - 199)) | (1 << (SqlParser.SERIAL - 199)))) !== 0) || ((((_la - 233)) & ~0x1f) == 0 && ((1 << (_la - 233)) & ((1 << (SqlParser.JSON_VALID - 233)) | (1 << (SqlParser.JSON_SCHEMA_VALID - 233)) | (1 << (SqlParser.COUNT - 233)) | (1 << (SqlParser.POSITION - 233)))) !== 0) || ((((_la - 270)) & ~0x1f) == 0 && ((1 << (_la - 270)) & ((1 << (SqlParser.ACCOUNT - 270)) | (1 << (SqlParser.ACTION - 270)) | (1 << (SqlParser.AFTER - 270)) | (1 << (SqlParser.AGGREGATE - 270)) | (1 << (SqlParser.ALGORITHM - 270)) | (1 << (SqlParser.ANY - 270)) | (1 << (SqlParser.AT - 270)) | (1 << (SqlParser.AUTHORS - 270)) | (1 << (SqlParser.AUTOCOMMIT - 270)) | (1 << (SqlParser.AUTOEXTEND_SIZE - 270)) | (1 << (SqlParser.AUTO_INCREMENT - 270)) | (1 << (SqlParser.AVG_ROW_LENGTH - 270)) | (1 << (SqlParser.BEGIN - 270)) | (1 << (SqlParser.BINLOG - 270)) | (1 << (SqlParser.BIT - 270)) | (1 << (SqlParser.BLOCK - 270)) | (1 << (SqlParser.BOOL - 270)) | (1 << (SqlParser.BOOLEAN - 270)) | (1 << (SqlParser.BTREE - 270)) | (1 << (SqlParser.CACHE - 270)) | (1 << (SqlParser.CASCADED - 270)) | (1 << (SqlParser.CHAIN - 270)) | (1 << (SqlParser.CHANGED - 270)) | (1 << (SqlParser.CHANNEL - 270)) | (1 << (SqlParser.CHECKSUM - 270)) | (1 << (SqlParser.PAGE_CHECKSUM - 270)) | (1 << (SqlParser.CIPHER - 270)) | (1 << (SqlParser.CLASS_ORIGIN - 270)) | (1 << (SqlParser.CLIENT - 270)) | (1 << (SqlParser.CLOSE - 270)) | (1 << (SqlParser.COALESCE - 270)) | (1 << (SqlParser.CODE - 270)))) !== 0) || ((((_la - 302)) & ~0x1f) == 0 && ((1 << (_la - 302)) & ((1 << (SqlParser.COLUMNS - 302)) | (1 << (SqlParser.COLUMN_FORMAT - 302)) | (1 << (SqlParser.COLUMN_NAME - 302)) | (1 << (SqlParser.COMMENT - 302)) | (1 << (SqlParser.COMMIT - 302)) | (1 << (SqlParser.COMPACT - 302)) | (1 << (SqlParser.COMPLETION - 302)) | (1 << (SqlParser.COMPRESSED - 302)) | (1 << (SqlParser.COMPRESSION - 302)) | (1 << (SqlParser.CONCURRENT - 302)) | (1 << (SqlParser.CONNECTION - 302)) | (1 << (SqlParser.CONSISTENT - 302)) | (1 << (SqlParser.CONSTRAINT_CATALOG - 302)) | (1 << (SqlParser.CONSTRAINT_SCHEMA - 302)) | (1 << (SqlParser.CONSTRAINT_NAME - 302)) | (1 << (SqlParser.CONTAINS - 302)) | (1 << (SqlParser.CONTEXT - 302)) | (1 << (SqlParser.CONTRIBUTORS - 302)) | (1 << (SqlParser.COPY - 302)) | (1 << (SqlParser.CPU - 302)) | (1 << (SqlParser.CURSOR_NAME - 302)) | (1 << (SqlParser.DATA - 302)) | (1 << (SqlParser.DATAFILE - 302)) | (1 << (SqlParser.DEALLOCATE - 302)) | (1 << (SqlParser.DEFAULT_AUTH - 302)) | (1 << (SqlParser.DEFINER - 302)) | (1 << (SqlParser.DELAY_KEY_WRITE - 302)) | (1 << (SqlParser.DES_KEY_FILE - 302)) | (1 << (SqlParser.DIRECTORY - 302)) | (1 << (SqlParser.DISABLE - 302)) | (1 << (SqlParser.DISCARD - 302)) | (1 << (SqlParser.DISK - 302)))) !== 0) || ((((_la - 334)) & ~0x1f) == 0 && ((1 << (_la - 334)) & ((1 << (SqlParser.DO - 334)) | (1 << (SqlParser.DUMPFILE - 334)) | (1 << (SqlParser.DUPLICATE - 334)) | (1 << (SqlParser.DYNAMIC - 334)) | (1 << (SqlParser.ENABLE - 334)) | (1 << (SqlParser.ENCRYPTION - 334)) | (1 << (SqlParser.END - 334)) | (1 << (SqlParser.ENDS - 334)) | (1 << (SqlParser.ENGINE - 334)) | (1 << (SqlParser.ENGINES - 334)) | (1 << (SqlParser.ERROR - 334)) | (1 << (SqlParser.ERRORS - 334)) | (1 << (SqlParser.ESCAPE - 334)) | (1 << (SqlParser.EVEN - 334)) | (1 << (SqlParser.EVENT - 334)) | (1 << (SqlParser.EVENTS - 334)) | (1 << (SqlParser.EVERY - 334)) | (1 << (SqlParser.EXCHANGE - 334)) | (1 << (SqlParser.EXCLUSIVE - 334)) | (1 << (SqlParser.EXPIRE - 334)) | (1 << (SqlParser.EXPORT - 334)) | (1 << (SqlParser.EXTENDED - 334)) | (1 << (SqlParser.EXTENT_SIZE - 334)) | (1 << (SqlParser.FAST - 334)) | (1 << (SqlParser.FAULTS - 334)) | (1 << (SqlParser.FIELDS - 334)) | (1 << (SqlParser.FILE_BLOCK_SIZE - 334)) | (1 << (SqlParser.FILTER - 334)) | (1 << (SqlParser.FIRST - 334)) | (1 << (SqlParser.FIXED - 334)) | (1 << (SqlParser.FLUSH - 334)) | (1 << (SqlParser.FOLLOWS - 334)))) !== 0) || ((((_la - 366)) & ~0x1f) == 0 && ((1 << (_la - 366)) & ((1 << (SqlParser.FOUND - 366)) | (1 << (SqlParser.FULL - 366)) | (1 << (SqlParser.FUNCTION - 366)) | (1 << (SqlParser.GENERAL - 366)) | (1 << (SqlParser.GLOBAL - 366)) | (1 << (SqlParser.GRANTS - 366)) | (1 << (SqlParser.GROUP_REPLICATION - 366)) | (1 << (SqlParser.HANDLER - 366)) | (1 << (SqlParser.HASH - 366)) | (1 << (SqlParser.HELP - 366)) | (1 << (SqlParser.HOST - 366)) | (1 << (SqlParser.HOSTS - 366)) | (1 << (SqlParser.IDENTIFIED - 366)) | (1 << (SqlParser.IGNORE_SERVER_IDS - 366)) | (1 << (SqlParser.IMPORT - 366)) | (1 << (SqlParser.INDEXES - 366)) | (1 << (SqlParser.INITIAL_SIZE - 366)) | (1 << (SqlParser.INPLACE - 366)) | (1 << (SqlParser.INSERT_METHOD - 366)) | (1 << (SqlParser.INSTALL - 366)) | (1 << (SqlParser.INSTANCE - 366)) | (1 << (SqlParser.INVISIBLE - 366)) | (1 << (SqlParser.INVOKER - 366)) | (1 << (SqlParser.IO - 366)) | (1 << (SqlParser.IO_THREAD - 366)) | (1 << (SqlParser.IPC - 366)) | (1 << (SqlParser.ISOLATION - 366)) | (1 << (SqlParser.ISSUER - 366)) | (1 << (SqlParser.JSON - 366)) | (1 << (SqlParser.KEY_BLOCK_SIZE - 366)) | (1 << (SqlParser.LANGUAGE - 366)) | (1 << (SqlParser.LAST - 366)))) !== 0) || ((((_la - 398)) & ~0x1f) == 0 && ((1 << (_la - 398)) & ((1 << (SqlParser.LEAVES - 398)) | (1 << (SqlParser.LESS - 398)) | (1 << (SqlParser.LEVEL - 398)) | (1 << (SqlParser.LIST - 398)) | (1 << (SqlParser.LOCAL - 398)) | (1 << (SqlParser.LOGFILE - 398)) | (1 << (SqlParser.LOGS - 398)) | (1 << (SqlParser.MASTER - 398)) | (1 << (SqlParser.MASTER_AUTO_POSITION - 398)) | (1 << (SqlParser.MASTER_CONNECT_RETRY - 398)) | (1 << (SqlParser.MASTER_DELAY - 398)) | (1 << (SqlParser.MASTER_HEARTBEAT_PERIOD - 398)) | (1 << (SqlParser.MASTER_HOST - 398)) | (1 << (SqlParser.MASTER_LOG_FILE - 398)) | (1 << (SqlParser.MASTER_LOG_POS - 398)) | (1 << (SqlParser.MASTER_PASSWORD - 398)) | (1 << (SqlParser.MASTER_PORT - 398)) | (1 << (SqlParser.MASTER_RETRY_COUNT - 398)) | (1 << (SqlParser.MASTER_SSL - 398)) | (1 << (SqlParser.MASTER_SSL_CA - 398)) | (1 << (SqlParser.MASTER_SSL_CAPATH - 398)) | (1 << (SqlParser.MASTER_SSL_CERT - 398)) | (1 << (SqlParser.MASTER_SSL_CIPHER - 398)) | (1 << (SqlParser.MASTER_SSL_CRL - 398)) | (1 << (SqlParser.MASTER_SSL_CRLPATH - 398)) | (1 << (SqlParser.MASTER_SSL_KEY - 398)) | (1 << (SqlParser.MASTER_TLS_VERSION - 398)) | (1 << (SqlParser.MASTER_USER - 398)) | (1 << (SqlParser.MAX_CONNECTIONS_PER_HOUR - 398)) | (1 << (SqlParser.MAX_QUERIES_PER_HOUR - 398)) | (1 << (SqlParser.MAX_ROWS - 398)) | (1 << (SqlParser.MAX_SIZE - 398)))) !== 0) || ((((_la - 430)) & ~0x1f) == 0 && ((1 << (_la - 430)) & ((1 << (SqlParser.MAX_UPDATES_PER_HOUR - 430)) | (1 << (SqlParser.MAX_USER_CONNECTIONS - 430)) | (1 << (SqlParser.MEDIUM - 430)) | (1 << (SqlParser.MERGE - 430)) | (1 << (SqlParser.MESSAGE_TEXT - 430)) | (1 << (SqlParser.MID - 430)) | (1 << (SqlParser.MIGRATE - 430)) | (1 << (SqlParser.MIN_ROWS - 430)) | (1 << (SqlParser.MODE - 430)) | (1 << (SqlParser.MODIFY - 430)) | (1 << (SqlParser.MUTEX - 430)) | (1 << (SqlParser.MYSQL - 430)) | (1 << (SqlParser.MYSQL_ERRNO - 430)) | (1 << (SqlParser.NAME - 430)) | (1 << (SqlParser.NAMES - 430)) | (1 << (SqlParser.NCHAR - 430)) | (1 << (SqlParser.NEVER - 430)) | (1 << (SqlParser.NEXT - 430)) | (1 << (SqlParser.NO - 430)) | (1 << (SqlParser.NODEGROUP - 430)) | (1 << (SqlParser.NONE - 430)) | (1 << (SqlParser.OFFLINE - 430)) | (1 << (SqlParser.OFFSET - 430)) | (1 << (SqlParser.OJ - 430)) | (1 << (SqlParser.OLD_PASSWORD - 430)) | (1 << (SqlParser.ONE - 430)) | (1 << (SqlParser.ONLINE - 430)) | (1 << (SqlParser.ONLY - 430)) | (1 << (SqlParser.OPEN - 430)) | (1 << (SqlParser.OPTIMIZER_COSTS - 430)) | (1 << (SqlParser.OPTIONS - 430)) | (1 << (SqlParser.OWNER - 430)))) !== 0) || ((((_la - 462)) & ~0x1f) == 0 && ((1 << (_la - 462)) & ((1 << (SqlParser.PACK_KEYS - 462)) | (1 << (SqlParser.PAGE - 462)) | (1 << (SqlParser.PARSER - 462)) | (1 << (SqlParser.PARTIAL - 462)) | (1 << (SqlParser.PARTITIONING - 462)) | (1 << (SqlParser.PARTITIONS - 462)) | (1 << (SqlParser.PASSWORD - 462)) | (1 << (SqlParser.PHASE - 462)) | (1 << (SqlParser.PLUGIN - 462)) | (1 << (SqlParser.PLUGIN_DIR - 462)) | (1 << (SqlParser.PLUGINS - 462)) | (1 << (SqlParser.PORT - 462)) | (1 << (SqlParser.PRECEDES - 462)) | (1 << (SqlParser.PREPARE - 462)) | (1 << (SqlParser.PRESERVE - 462)) | (1 << (SqlParser.PREV - 462)) | (1 << (SqlParser.PROCESSLIST - 462)) | (1 << (SqlParser.PROFILE - 462)) | (1 << (SqlParser.PROFILES - 462)) | (1 << (SqlParser.PROXY - 462)) | (1 << (SqlParser.QUERY - 462)) | (1 << (SqlParser.QUICK - 462)) | (1 << (SqlParser.REBUILD - 462)) | (1 << (SqlParser.RECOVER - 462)) | (1 << (SqlParser.REDO_BUFFER_SIZE - 462)) | (1 << (SqlParser.REDUNDANT - 462)) | (1 << (SqlParser.RELAY - 462)) | (1 << (SqlParser.RELAY_LOG_FILE - 462)) | (1 << (SqlParser.RELAY_LOG_POS - 462)) | (1 << (SqlParser.RELAYLOG - 462)) | (1 << (SqlParser.REMOVE - 462)) | (1 << (SqlParser.REORGANIZE - 462)))) !== 0) || ((((_la - 494)) & ~0x1f) == 0 && ((1 << (_la - 494)) & ((1 << (SqlParser.REPAIR - 494)) | (1 << (SqlParser.REPLICATE_DO_DB - 494)) | (1 << (SqlParser.REPLICATE_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_DB - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATE_REWRITE_DB - 494)) | (1 << (SqlParser.REPLICATE_WILD_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_WILD_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATION - 494)) | (1 << (SqlParser.RESET - 494)) | (1 << (SqlParser.RESUME - 494)) | (1 << (SqlParser.RETURNED_SQLSTATE - 494)) | (1 << (SqlParser.RETURNS - 494)) | (1 << (SqlParser.ROLE - 494)) | (1 << (SqlParser.ROLLBACK - 494)) | (1 << (SqlParser.ROLLUP - 494)) | (1 << (SqlParser.ROTATE - 494)) | (1 << (SqlParser.ROW - 494)) | (1 << (SqlParser.ROWS - 494)) | (1 << (SqlParser.ROW_FORMAT - 494)) | (1 << (SqlParser.SAVEPOINT - 494)) | (1 << (SqlParser.SCHEDULE - 494)) | (1 << (SqlParser.SECURITY - 494)) | (1 << (SqlParser.SERVER - 494)) | (1 << (SqlParser.SESSION - 494)) | (1 << (SqlParser.SHARE - 494)) | (1 << (SqlParser.SHARED - 494)) | (1 << (SqlParser.SIGNED - 494)) | (1 << (SqlParser.SIMPLE - 494)) | (1 << (SqlParser.SLAVE - 494)) | (1 << (SqlParser.SLOW - 494)) | (1 << (SqlParser.SNAPSHOT - 494)))) !== 0) || ((((_la - 526)) & ~0x1f) == 0 && ((1 << (_la - 526)) & ((1 << (SqlParser.SOCKET - 526)) | (1 << (SqlParser.SOME - 526)) | (1 << (SqlParser.SONAME - 526)) | (1 << (SqlParser.SOUNDS - 526)) | (1 << (SqlParser.SOURCE - 526)) | (1 << (SqlParser.SQL_AFTER_GTIDS - 526)) | (1 << (SqlParser.SQL_AFTER_MTS_GAPS - 526)) | (1 << (SqlParser.SQL_BEFORE_GTIDS - 526)) | (1 << (SqlParser.SQL_BUFFER_RESULT - 526)) | (1 << (SqlParser.SQL_CACHE - 526)) | (1 << (SqlParser.SQL_NO_CACHE - 526)) | (1 << (SqlParser.SQL_THREAD - 526)) | (1 << (SqlParser.START - 526)) | (1 << (SqlParser.STARTS - 526)) | (1 << (SqlParser.STATS_AUTO_RECALC - 526)) | (1 << (SqlParser.STATS_PERSISTENT - 526)) | (1 << (SqlParser.STATS_SAMPLE_PAGES - 526)) | (1 << (SqlParser.STATUS - 526)) | (1 << (SqlParser.STOP - 526)) | (1 << (SqlParser.STORAGE - 526)) | (1 << (SqlParser.STRING - 526)) | (1 << (SqlParser.SUBCLASS_ORIGIN - 526)) | (1 << (SqlParser.SUBJECT - 526)) | (1 << (SqlParser.SUBPARTITION - 526)) | (1 << (SqlParser.SUBPARTITIONS - 526)) | (1 << (SqlParser.SUSPEND - 526)) | (1 << (SqlParser.SWAPS - 526)) | (1 << (SqlParser.SWITCHES - 526)) | (1 << (SqlParser.TABLE_NAME - 526)) | (1 << (SqlParser.TABLESPACE - 526)) | (1 << (SqlParser.TEMPORARY - 526)))) !== 0) || ((((_la - 558)) & ~0x1f) == 0 && ((1 << (_la - 558)) & ((1 << (SqlParser.TEMPTABLE - 558)) | (1 << (SqlParser.THAN - 558)) | (1 << (SqlParser.TRADITIONAL - 558)) | (1 << (SqlParser.TRANSACTION - 558)) | (1 << (SqlParser.TRANSACTIONAL - 558)) | (1 << (SqlParser.TRIGGERS - 558)) | (1 << (SqlParser.TRUNCATE - 558)) | (1 << (SqlParser.UNDEFINED - 558)) | (1 << (SqlParser.UNDOFILE - 558)) | (1 << (SqlParser.UNDO_BUFFER_SIZE - 558)) | (1 << (SqlParser.UNINSTALL - 558)) | (1 << (SqlParser.UNKNOWN - 558)) | (1 << (SqlParser.UNTIL - 558)) | (1 << (SqlParser.UPGRADE - 558)) | (1 << (SqlParser.USER - 558)) | (1 << (SqlParser.USE_FRM - 558)) | (1 << (SqlParser.USER_RESOURCES - 558)) | (1 << (SqlParser.VALIDATION - 558)) | (1 << (SqlParser.VALUE - 558)) | (1 << (SqlParser.VARIABLES - 558)) | (1 << (SqlParser.VIEW - 558)) | (1 << (SqlParser.VISIBLE - 558)) | (1 << (SqlParser.WAIT - 558)) | (1 << (SqlParser.WARNINGS - 558)) | (1 << (SqlParser.WITHOUT - 558)) | (1 << (SqlParser.WORK - 558)) | (1 << (SqlParser.WRAPPER - 558)) | (1 << (SqlParser.X509 - 558)) | (1 << (SqlParser.XA - 558)) | (1 << (SqlParser.XML - 558)))) !== 0) || ((((_la - 593)) & ~0x1f) == 0 && ((1 << (_la - 593)) & ((1 << (SqlParser.INTERNAL - 593)) | (1 << (SqlParser.QUARTER - 593)) | (1 << (SqlParser.MONTH - 593)) | (1 << (SqlParser.DAY - 593)) | (1 << (SqlParser.HOUR - 593)) | (1 << (SqlParser.MINUTE - 593)) | (1 << (SqlParser.WEEK - 593)) | (1 << (SqlParser.SECOND - 593)) | (1 << (SqlParser.MICROSECOND - 593)) | (1 << (SqlParser.TABLES - 593)) | (1 << (SqlParser.ROUTINE - 593)) | (1 << (SqlParser.EXECUTE - 593)) | (1 << (SqlParser.FILE - 593)) | (1 << (SqlParser.PROCESS - 593)) | (1 << (SqlParser.RELOAD - 593)) | (1 << (SqlParser.SHUTDOWN - 593)) | (1 << (SqlParser.SUPER - 593)) | (1 << (SqlParser.PRIVILEGES - 593)) | (1 << (SqlParser.AUDIT_ADMIN - 593)) | (1 << (SqlParser.BACKUP_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ENCRYPTION_ADMIN - 593)) | (1 << (SqlParser.CLONE_ADMIN - 593)) | (1 << (SqlParser.CONNECTION_ADMIN - 593)) | (1 << (SqlParser.ENCRYPTION_KEY_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_USER - 593)) | (1 << (SqlParser.GROUP_REPLICATION_ADMIN - 593)) | (1 << (SqlParser.INNODB_REDO_LOG_ARCHIVE - 593)) | (1 << (SqlParser.NDB_STORED_USER - 593)) | (1 << (SqlParser.PERSIST_RO_VARIABLES_ADMIN - 593)))) !== 0) || ((((_la - 625)) & ~0x1f) == 0 && ((1 << (_la - 625)) & ((1 << (SqlParser.REPLICATION_APPLIER - 625)) | (1 << (SqlParser.REPLICATION_SLAVE_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_USER - 625)) | (1 << (SqlParser.ROLE_ADMIN - 625)) | (1 << (SqlParser.SESSION_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.SET_USER_ID - 625)) | (1 << (SqlParser.SHOW_ROUTINE - 625)) | (1 << (SqlParser.SYSTEM_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.TABLE_ENCRYPTION_ADMIN - 625)) | (1 << (SqlParser.VERSION_TOKEN_ADMIN - 625)) | (1 << (SqlParser.XA_RECOVER_ADMIN - 625)) | (1 << (SqlParser.ARMSCII8 - 625)) | (1 << (SqlParser.ASCII - 625)) | (1 << (SqlParser.BIG5 - 625)) | (1 << (SqlParser.CP1250 - 625)) | (1 << (SqlParser.CP1251 - 625)) | (1 << (SqlParser.CP1256 - 625)) | (1 << (SqlParser.CP1257 - 625)) | (1 << (SqlParser.CP850 - 625)) | (1 << (SqlParser.CP852 - 625)) | (1 << (SqlParser.CP866 - 625)) | (1 << (SqlParser.CP932 - 625)) | (1 << (SqlParser.DEC8 - 625)) | (1 << (SqlParser.EUCJPMS - 625)) | (1 << (SqlParser.EUCKR - 625)) | (1 << (SqlParser.GB2312 - 625)) | (1 << (SqlParser.GBK - 625)) | (1 << (SqlParser.GEOSTD8 - 625)) | (1 << (SqlParser.GREEK - 625)) | (1 << (SqlParser.HEBREW - 625)) | (1 << (SqlParser.HP8 - 625)))) !== 0) || ((((_la - 657)) & ~0x1f) == 0 && ((1 << (_la - 657)) & ((1 << (SqlParser.KEYBCS2 - 657)) | (1 << (SqlParser.KOI8R - 657)) | (1 << (SqlParser.KOI8U - 657)) | (1 << (SqlParser.LATIN1 - 657)) | (1 << (SqlParser.LATIN2 - 657)) | (1 << (SqlParser.LATIN5 - 657)) | (1 << (SqlParser.LATIN7 - 657)) | (1 << (SqlParser.MACCE - 657)) | (1 << (SqlParser.MACROMAN - 657)) | (1 << (SqlParser.SJIS - 657)) | (1 << (SqlParser.SWE7 - 657)) | (1 << (SqlParser.TIS620 - 657)) | (1 << (SqlParser.UCS2 - 657)) | (1 << (SqlParser.UJIS - 657)) | (1 << (SqlParser.UTF16 - 657)) | (1 << (SqlParser.UTF16LE - 657)) | (1 << (SqlParser.UTF32 - 657)) | (1 << (SqlParser.UTF8 - 657)) | (1 << (SqlParser.UTF8MB3 - 657)) | (1 << (SqlParser.UTF8MB4 - 657)) | (1 << (SqlParser.ARCHIVE - 657)) | (1 << (SqlParser.BLACKHOLE - 657)) | (1 << (SqlParser.CSV - 657)) | (1 << (SqlParser.FEDERATED - 657)) | (1 << (SqlParser.INNODB - 657)) | (1 << (SqlParser.MEMORY - 657)) | (1 << (SqlParser.MRG_MYISAM - 657)) | (1 << (SqlParser.MYISAM - 657)) | (1 << (SqlParser.NDB - 657)) | (1 << (SqlParser.NDBCLUSTER - 657)) | (1 << (SqlParser.PERFORMANCE_SCHEMA - 657)) | (1 << (SqlParser.TOKUDB - 657)))) !== 0) || ((((_la - 689)) & ~0x1f) == 0 && ((1 << (_la - 689)) & ((1 << (SqlParser.REPEATABLE - 689)) | (1 << (SqlParser.COMMITTED - 689)) | (1 << (SqlParser.UNCOMMITTED - 689)) | (1 << (SqlParser.SERIALIZABLE - 689)) | (1 << (SqlParser.GEOMETRYCOLLECTION - 689)) | (1 << (SqlParser.LINESTRING - 689)) | (1 << (SqlParser.MULTILINESTRING - 689)) | (1 << (SqlParser.MULTIPOINT - 689)) | (1 << (SqlParser.MULTIPOLYGON - 689)) | (1 << (SqlParser.POINT - 689)) | (1 << (SqlParser.POLYGON - 689)) | (1 << (SqlParser.ABS - 689)) | (1 << (SqlParser.ACOS - 689)) | (1 << (SqlParser.ADDDATE - 689)) | (1 << (SqlParser.ADDTIME - 689)) | (1 << (SqlParser.AES_DECRYPT - 689)) | (1 << (SqlParser.AES_ENCRYPT - 689)) | (1 << (SqlParser.AREA - 689)) | (1 << (SqlParser.ASBINARY - 689)) | (1 << (SqlParser.ASIN - 689)) | (1 << (SqlParser.ASTEXT - 689)) | (1 << (SqlParser.ASWKB - 689)) | (1 << (SqlParser.ASWKT - 689)) | (1 << (SqlParser.ASYMMETRIC_DECRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_DERIVE - 689)) | (1 << (SqlParser.ASYMMETRIC_ENCRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_SIGN - 689)) | (1 << (SqlParser.ASYMMETRIC_VERIFY - 689)) | (1 << (SqlParser.ATAN - 689)) | (1 << (SqlParser.ATAN2 - 689)))) !== 0) || ((((_la - 721)) & ~0x1f) == 0 && ((1 << (_la - 721)) & ((1 << (SqlParser.BENCHMARK - 721)) | (1 << (SqlParser.BIN - 721)) | (1 << (SqlParser.BIT_COUNT - 721)) | (1 << (SqlParser.BIT_LENGTH - 721)) | (1 << (SqlParser.BUFFER - 721)) | (1 << (SqlParser.CATALOG_NAME - 721)) | (1 << (SqlParser.CEIL - 721)) | (1 << (SqlParser.CEILING - 721)) | (1 << (SqlParser.CENTROID - 721)) | (1 << (SqlParser.CHARACTER_LENGTH - 721)) | (1 << (SqlParser.CHARSET - 721)) | (1 << (SqlParser.CHAR_LENGTH - 721)) | (1 << (SqlParser.COERCIBILITY - 721)) | (1 << (SqlParser.COLLATION - 721)) | (1 << (SqlParser.COMPRESS - 721)) | (1 << (SqlParser.CONCAT - 721)) | (1 << (SqlParser.CONCAT_WS - 721)) | (1 << (SqlParser.CONNECTION_ID - 721)) | (1 << (SqlParser.CONV - 721)) | (1 << (SqlParser.CONVERT_TZ - 721)) | (1 << (SqlParser.COS - 721)) | (1 << (SqlParser.COT - 721)) | (1 << (SqlParser.CRC32 - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PRIV_KEY - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PUB_KEY - 721)) | (1 << (SqlParser.CREATE_DH_PARAMETERS - 721)) | (1 << (SqlParser.CREATE_DIGEST - 721)) | (1 << (SqlParser.CROSSES - 721)) | (1 << (SqlParser.DATEDIFF - 721)) | (1 << (SqlParser.DATE_FORMAT - 721)) | (1 << (SqlParser.DAYNAME - 721)) | (1 << (SqlParser.DAYOFMONTH - 721)))) !== 0) || ((((_la - 753)) & ~0x1f) == 0 && ((1 << (_la - 753)) & ((1 << (SqlParser.DAYOFWEEK - 753)) | (1 << (SqlParser.DAYOFYEAR - 753)) | (1 << (SqlParser.DECODE - 753)) | (1 << (SqlParser.DEGREES - 753)) | (1 << (SqlParser.DES_DECRYPT - 753)) | (1 << (SqlParser.DES_ENCRYPT - 753)) | (1 << (SqlParser.DIMENSION - 753)) | (1 << (SqlParser.DISJOINT - 753)) | (1 << (SqlParser.ELT - 753)) | (1 << (SqlParser.ENCODE - 753)) | (1 << (SqlParser.ENCRYPT - 753)) | (1 << (SqlParser.ENDPOINT - 753)) | (1 << (SqlParser.ENVELOPE - 753)) | (1 << (SqlParser.EQUALS - 753)) | (1 << (SqlParser.EXP - 753)) | (1 << (SqlParser.EXPORT_SET - 753)) | (1 << (SqlParser.EXTERIORRING - 753)) | (1 << (SqlParser.EXTRACTVALUE - 753)) | (1 << (SqlParser.FIELD - 753)) | (1 << (SqlParser.FIND_IN_SET - 753)) | (1 << (SqlParser.FLOOR - 753)) | (1 << (SqlParser.FORMAT - 753)) | (1 << (SqlParser.FOUND_ROWS - 753)) | (1 << (SqlParser.FROM_BASE64 - 753)) | (1 << (SqlParser.FROM_DAYS - 753)) | (1 << (SqlParser.FROM_UNIXTIME - 753)) | (1 << (SqlParser.GEOMCOLLFROMTEXT - 753)) | (1 << (SqlParser.GEOMCOLLFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYFROMWKB - 753)))) !== 0) || ((((_la - 785)) & ~0x1f) == 0 && ((1 << (_la - 785)) & ((1 << (SqlParser.GEOMETRYN - 785)) | (1 << (SqlParser.GEOMETRYTYPE - 785)) | (1 << (SqlParser.GEOMFROMTEXT - 785)) | (1 << (SqlParser.GEOMFROMWKB - 785)) | (1 << (SqlParser.GET_FORMAT - 785)) | (1 << (SqlParser.GET_LOCK - 785)) | (1 << (SqlParser.GLENGTH - 785)) | (1 << (SqlParser.GREATEST - 785)) | (1 << (SqlParser.GTID_SUBSET - 785)) | (1 << (SqlParser.GTID_SUBTRACT - 785)) | (1 << (SqlParser.HEX - 785)) | (1 << (SqlParser.IFNULL - 785)) | (1 << (SqlParser.INET6_ATON - 785)) | (1 << (SqlParser.INET6_NTOA - 785)) | (1 << (SqlParser.INET_ATON - 785)) | (1 << (SqlParser.INET_NTOA - 785)) | (1 << (SqlParser.INSTR - 785)) | (1 << (SqlParser.INTERIORRINGN - 785)) | (1 << (SqlParser.INTERSECTS - 785)) | (1 << (SqlParser.ISCLOSED - 785)) | (1 << (SqlParser.ISEMPTY - 785)) | (1 << (SqlParser.ISNULL - 785)) | (1 << (SqlParser.ISSIMPLE - 785)) | (1 << (SqlParser.IS_FREE_LOCK - 785)) | (1 << (SqlParser.IS_IPV4 - 785)) | (1 << (SqlParser.IS_IPV4_COMPAT - 785)) | (1 << (SqlParser.IS_IPV4_MAPPED - 785)) | (1 << (SqlParser.IS_IPV6 - 785)) | (1 << (SqlParser.IS_USED_LOCK - 785)) | (1 << (SqlParser.LAST_INSERT_ID - 785)) | (1 << (SqlParser.LCASE - 785)) | (1 << (SqlParser.LEAST - 785)))) !== 0) || ((((_la - 817)) & ~0x1f) == 0 && ((1 << (_la - 817)) & ((1 << (SqlParser.LENGTH - 817)) | (1 << (SqlParser.LINEFROMTEXT - 817)) | (1 << (SqlParser.LINEFROMWKB - 817)) | (1 << (SqlParser.LINESTRINGFROMTEXT - 817)) | (1 << (SqlParser.LINESTRINGFROMWKB - 817)) | (1 << (SqlParser.LN - 817)) | (1 << (SqlParser.LOAD_FILE - 817)) | (1 << (SqlParser.LOCATE - 817)) | (1 << (SqlParser.LOG - 817)) | (1 << (SqlParser.LOG10 - 817)) | (1 << (SqlParser.LOG2 - 817)) | (1 << (SqlParser.LOWER - 817)) | (1 << (SqlParser.LPAD - 817)) | (1 << (SqlParser.LTRIM - 817)) | (1 << (SqlParser.MAKEDATE - 817)) | (1 << (SqlParser.MAKETIME - 817)) | (1 << (SqlParser.MAKE_SET - 817)) | (1 << (SqlParser.MASTER_POS_WAIT - 817)) | (1 << (SqlParser.MBRCONTAINS - 817)) | (1 << (SqlParser.MBRDISJOINT - 817)) | (1 << (SqlParser.MBREQUAL - 817)) | (1 << (SqlParser.MBRINTERSECTS - 817)) | (1 << (SqlParser.MBROVERLAPS - 817)) | (1 << (SqlParser.MBRTOUCHES - 817)) | (1 << (SqlParser.MBRWITHIN - 817)) | (1 << (SqlParser.MD5 - 817)) | (1 << (SqlParser.MLINEFROMTEXT - 817)) | (1 << (SqlParser.MLINEFROMWKB - 817)) | (1 << (SqlParser.MONTHNAME - 817)) | (1 << (SqlParser.MPOINTFROMTEXT - 817)) | (1 << (SqlParser.MPOINTFROMWKB - 817)) | (1 << (SqlParser.MPOLYFROMTEXT - 817)))) !== 0) || ((((_la - 849)) & ~0x1f) == 0 && ((1 << (_la - 849)) & ((1 << (SqlParser.MPOLYFROMWKB - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMTEXT - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMWKB - 849)) | (1 << (SqlParser.MULTIPOINTFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOINTFROMWKB - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMWKB - 849)) | (1 << (SqlParser.NAME_CONST - 849)) | (1 << (SqlParser.NULLIF - 849)) | (1 << (SqlParser.NUMGEOMETRIES - 849)) | (1 << (SqlParser.NUMINTERIORRINGS - 849)) | (1 << (SqlParser.NUMPOINTS - 849)) | (1 << (SqlParser.OCT - 849)) | (1 << (SqlParser.OCTET_LENGTH - 849)) | (1 << (SqlParser.ORD - 849)) | (1 << (SqlParser.OVERLAPS - 849)) | (1 << (SqlParser.PERIOD_ADD - 849)) | (1 << (SqlParser.PERIOD_DIFF - 849)) | (1 << (SqlParser.PI - 849)) | (1 << (SqlParser.POINTFROMTEXT - 849)) | (1 << (SqlParser.POINTFROMWKB - 849)) | (1 << (SqlParser.POINTN - 849)) | (1 << (SqlParser.POLYFROMTEXT - 849)) | (1 << (SqlParser.POLYFROMWKB - 849)) | (1 << (SqlParser.POLYGONFROMTEXT - 849)) | (1 << (SqlParser.POLYGONFROMWKB - 849)) | (1 << (SqlParser.POW - 849)) | (1 << (SqlParser.POWER - 849)) | (1 << (SqlParser.QUOTE - 849)) | (1 << (SqlParser.RADIANS - 849)) | (1 << (SqlParser.RAND - 849)) | (1 << (SqlParser.RANDOM_BYTES - 849)))) !== 0) || ((((_la - 881)) & ~0x1f) == 0 && ((1 << (_la - 881)) & ((1 << (SqlParser.RELEASE_LOCK - 881)) | (1 << (SqlParser.REVERSE - 881)) | (1 << (SqlParser.ROUND - 881)) | (1 << (SqlParser.ROW_COUNT - 881)) | (1 << (SqlParser.RPAD - 881)) | (1 << (SqlParser.RTRIM - 881)) | (1 << (SqlParser.SEC_TO_TIME - 881)) | (1 << (SqlParser.SESSION_USER - 881)) | (1 << (SqlParser.SHA - 881)) | (1 << (SqlParser.SHA1 - 881)) | (1 << (SqlParser.SHA2 - 881)) | (1 << (SqlParser.SCHEMA_NAME - 881)) | (1 << (SqlParser.SIGN - 881)) | (1 << (SqlParser.SIN - 881)) | (1 << (SqlParser.SLEEP - 881)) | (1 << (SqlParser.SOUNDEX - 881)) | (1 << (SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS - 881)) | (1 << (SqlParser.SQRT - 881)) | (1 << (SqlParser.SRID - 881)) | (1 << (SqlParser.STARTPOINT - 881)) | (1 << (SqlParser.STRCMP - 881)) | (1 << (SqlParser.STR_TO_DATE - 881)) | (1 << (SqlParser.ST_AREA - 881)) | (1 << (SqlParser.ST_ASBINARY - 881)) | (1 << (SqlParser.ST_ASTEXT - 881)) | (1 << (SqlParser.ST_ASWKB - 881)) | (1 << (SqlParser.ST_ASWKT - 881)) | (1 << (SqlParser.ST_BUFFER - 881)) | (1 << (SqlParser.ST_CENTROID - 881)) | (1 << (SqlParser.ST_CONTAINS - 881)) | (1 << (SqlParser.ST_CROSSES - 881)) | (1 << (SqlParser.ST_DIFFERENCE - 881)))) !== 0) || ((((_la - 913)) & ~0x1f) == 0 && ((1 << (_la - 913)) & ((1 << (SqlParser.ST_DIMENSION - 913)) | (1 << (SqlParser.ST_DISJOINT - 913)) | (1 << (SqlParser.ST_DISTANCE - 913)) | (1 << (SqlParser.ST_ENDPOINT - 913)) | (1 << (SqlParser.ST_ENVELOPE - 913)) | (1 << (SqlParser.ST_EQUALS - 913)) | (1 << (SqlParser.ST_EXTERIORRING - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYN - 913)) | (1 << (SqlParser.ST_GEOMETRYTYPE - 913)) | (1 << (SqlParser.ST_GEOMFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMFROMWKB - 913)) | (1 << (SqlParser.ST_INTERIORRINGN - 913)) | (1 << (SqlParser.ST_INTERSECTION - 913)) | (1 << (SqlParser.ST_INTERSECTS - 913)) | (1 << (SqlParser.ST_ISCLOSED - 913)) | (1 << (SqlParser.ST_ISEMPTY - 913)) | (1 << (SqlParser.ST_ISSIMPLE - 913)) | (1 << (SqlParser.ST_LINEFROMTEXT - 913)) | (1 << (SqlParser.ST_LINEFROMWKB - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMTEXT - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMWKB - 913)) | (1 << (SqlParser.ST_NUMGEOMETRIES - 913)) | (1 << (SqlParser.ST_NUMINTERIORRING - 913)) | (1 << (SqlParser.ST_NUMINTERIORRINGS - 913)) | (1 << (SqlParser.ST_NUMPOINTS - 913)))) !== 0) || ((((_la - 945)) & ~0x1f) == 0 && ((1 << (_la - 945)) & ((1 << (SqlParser.ST_OVERLAPS - 945)) | (1 << (SqlParser.ST_POINTFROMTEXT - 945)) | (1 << (SqlParser.ST_POINTFROMWKB - 945)) | (1 << (SqlParser.ST_POINTN - 945)) | (1 << (SqlParser.ST_POLYFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYFROMWKB - 945)) | (1 << (SqlParser.ST_POLYGONFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYGONFROMWKB - 945)) | (1 << (SqlParser.ST_SRID - 945)) | (1 << (SqlParser.ST_STARTPOINT - 945)) | (1 << (SqlParser.ST_SYMDIFFERENCE - 945)) | (1 << (SqlParser.ST_TOUCHES - 945)) | (1 << (SqlParser.ST_UNION - 945)) | (1 << (SqlParser.ST_WITHIN - 945)) | (1 << (SqlParser.ST_X - 945)) | (1 << (SqlParser.ST_Y - 945)) | (1 << (SqlParser.SUBDATE - 945)) | (1 << (SqlParser.SUBSTRING_INDEX - 945)) | (1 << (SqlParser.SUBTIME - 945)) | (1 << (SqlParser.SYSTEM_USER - 945)) | (1 << (SqlParser.TAN - 945)) | (1 << (SqlParser.TIMEDIFF - 945)) | (1 << (SqlParser.TIMESTAMPADD - 945)) | (1 << (SqlParser.TIMESTAMPDIFF - 945)) | (1 << (SqlParser.TIME_FORMAT - 945)) | (1 << (SqlParser.TIME_TO_SEC - 945)) | (1 << (SqlParser.TOUCHES - 945)) | (1 << (SqlParser.TO_BASE64 - 945)) | (1 << (SqlParser.TO_DAYS - 945)) | (1 << (SqlParser.TO_SECONDS - 945)) | (1 << (SqlParser.UCASE - 945)) | (1 << (SqlParser.UNCOMPRESS - 945)))) !== 0) || ((((_la - 977)) & ~0x1f) == 0 && ((1 << (_la - 977)) & ((1 << (SqlParser.UNCOMPRESSED_LENGTH - 977)) | (1 << (SqlParser.UNHEX - 977)) | (1 << (SqlParser.UNIX_TIMESTAMP - 977)) | (1 << (SqlParser.UPDATEXML - 977)) | (1 << (SqlParser.UPPER - 977)) | (1 << (SqlParser.UUID - 977)) | (1 << (SqlParser.UUID_SHORT - 977)) | (1 << (SqlParser.VALIDATE_PASSWORD_STRENGTH - 977)) | (1 << (SqlParser.VERSION - 977)) | (1 << (SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS - 977)) | (1 << (SqlParser.WEEKDAY - 977)) | (1 << (SqlParser.WEEKOFYEAR - 977)) | (1 << (SqlParser.WEIGHT_STRING - 977)) | (1 << (SqlParser.WITHIN - 977)) | (1 << (SqlParser.YEARWEEK - 977)) | (1 << (SqlParser.Y_FUNCTION - 977)) | (1 << (SqlParser.X_FUNCTION - 977)))) !== 0) || ((((_la - 1032)) & ~0x1f) == 0 && ((1 << (_la - 1032)) & ((1 << (SqlParser.CHARSET_REVERSE_QOUTE_STRING - 1032)) | (1 << (SqlParser.STRING_LITERAL - 1032)) | (1 << (SqlParser.ID - 1032)) | (1 << (SqlParser.REVERSE_QUOTE_ID - 1032)))) !== 0)) {
+ this.state = 2338;
+ localctx.name = this.uid();
+ }
+
+ }
+
+ this.state = 2343;
+ this.match(SqlParser.UNIQUE);
+ this.state = 2345;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.INDEX || _la===SqlParser.KEY) {
+ this.state = 2344;
+ localctx.indexFormat = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.INDEX || _la===SqlParser.KEY)) {
+ localctx.indexFormat = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 2348;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (SqlParser.CURRENT - 32)) | (1 << (SqlParser.DATABASE - 32)) | (1 << (SqlParser.DIAGNOSTICS - 32)))) !== 0) || _la===SqlParser.LEFT || _la===SqlParser.NUMBER || _la===SqlParser.RIGHT || _la===SqlParser.STACKED || ((((_la - 199)) & ~0x1f) == 0 && ((1 << (_la - 199)) & ((1 << (SqlParser.DATE - 199)) | (1 << (SqlParser.TIME - 199)) | (1 << (SqlParser.TIMESTAMP - 199)) | (1 << (SqlParser.DATETIME - 199)) | (1 << (SqlParser.YEAR - 199)) | (1 << (SqlParser.TEXT - 199)) | (1 << (SqlParser.ENUM - 199)) | (1 << (SqlParser.SERIAL - 199)))) !== 0) || ((((_la - 233)) & ~0x1f) == 0 && ((1 << (_la - 233)) & ((1 << (SqlParser.JSON_VALID - 233)) | (1 << (SqlParser.JSON_SCHEMA_VALID - 233)) | (1 << (SqlParser.COUNT - 233)) | (1 << (SqlParser.POSITION - 233)))) !== 0) || ((((_la - 270)) & ~0x1f) == 0 && ((1 << (_la - 270)) & ((1 << (SqlParser.ACCOUNT - 270)) | (1 << (SqlParser.ACTION - 270)) | (1 << (SqlParser.AFTER - 270)) | (1 << (SqlParser.AGGREGATE - 270)) | (1 << (SqlParser.ALGORITHM - 270)) | (1 << (SqlParser.ANY - 270)) | (1 << (SqlParser.AT - 270)) | (1 << (SqlParser.AUTHORS - 270)) | (1 << (SqlParser.AUTOCOMMIT - 270)) | (1 << (SqlParser.AUTOEXTEND_SIZE - 270)) | (1 << (SqlParser.AUTO_INCREMENT - 270)) | (1 << (SqlParser.AVG_ROW_LENGTH - 270)) | (1 << (SqlParser.BEGIN - 270)) | (1 << (SqlParser.BINLOG - 270)) | (1 << (SqlParser.BIT - 270)) | (1 << (SqlParser.BLOCK - 270)) | (1 << (SqlParser.BOOL - 270)) | (1 << (SqlParser.BOOLEAN - 270)) | (1 << (SqlParser.BTREE - 270)) | (1 << (SqlParser.CACHE - 270)) | (1 << (SqlParser.CASCADED - 270)) | (1 << (SqlParser.CHAIN - 270)) | (1 << (SqlParser.CHANGED - 270)) | (1 << (SqlParser.CHANNEL - 270)) | (1 << (SqlParser.CHECKSUM - 270)) | (1 << (SqlParser.PAGE_CHECKSUM - 270)) | (1 << (SqlParser.CIPHER - 270)) | (1 << (SqlParser.CLASS_ORIGIN - 270)) | (1 << (SqlParser.CLIENT - 270)) | (1 << (SqlParser.CLOSE - 270)) | (1 << (SqlParser.COALESCE - 270)) | (1 << (SqlParser.CODE - 270)))) !== 0) || ((((_la - 302)) & ~0x1f) == 0 && ((1 << (_la - 302)) & ((1 << (SqlParser.COLUMNS - 302)) | (1 << (SqlParser.COLUMN_FORMAT - 302)) | (1 << (SqlParser.COLUMN_NAME - 302)) | (1 << (SqlParser.COMMENT - 302)) | (1 << (SqlParser.COMMIT - 302)) | (1 << (SqlParser.COMPACT - 302)) | (1 << (SqlParser.COMPLETION - 302)) | (1 << (SqlParser.COMPRESSED - 302)) | (1 << (SqlParser.COMPRESSION - 302)) | (1 << (SqlParser.CONCURRENT - 302)) | (1 << (SqlParser.CONNECTION - 302)) | (1 << (SqlParser.CONSISTENT - 302)) | (1 << (SqlParser.CONSTRAINT_CATALOG - 302)) | (1 << (SqlParser.CONSTRAINT_SCHEMA - 302)) | (1 << (SqlParser.CONSTRAINT_NAME - 302)) | (1 << (SqlParser.CONTAINS - 302)) | (1 << (SqlParser.CONTEXT - 302)) | (1 << (SqlParser.CONTRIBUTORS - 302)) | (1 << (SqlParser.COPY - 302)) | (1 << (SqlParser.CPU - 302)) | (1 << (SqlParser.CURSOR_NAME - 302)) | (1 << (SqlParser.DATA - 302)) | (1 << (SqlParser.DATAFILE - 302)) | (1 << (SqlParser.DEALLOCATE - 302)) | (1 << (SqlParser.DEFAULT_AUTH - 302)) | (1 << (SqlParser.DEFINER - 302)) | (1 << (SqlParser.DELAY_KEY_WRITE - 302)) | (1 << (SqlParser.DES_KEY_FILE - 302)) | (1 << (SqlParser.DIRECTORY - 302)) | (1 << (SqlParser.DISABLE - 302)) | (1 << (SqlParser.DISCARD - 302)) | (1 << (SqlParser.DISK - 302)))) !== 0) || ((((_la - 334)) & ~0x1f) == 0 && ((1 << (_la - 334)) & ((1 << (SqlParser.DO - 334)) | (1 << (SqlParser.DUMPFILE - 334)) | (1 << (SqlParser.DUPLICATE - 334)) | (1 << (SqlParser.DYNAMIC - 334)) | (1 << (SqlParser.ENABLE - 334)) | (1 << (SqlParser.ENCRYPTION - 334)) | (1 << (SqlParser.END - 334)) | (1 << (SqlParser.ENDS - 334)) | (1 << (SqlParser.ENGINE - 334)) | (1 << (SqlParser.ENGINES - 334)) | (1 << (SqlParser.ERROR - 334)) | (1 << (SqlParser.ERRORS - 334)) | (1 << (SqlParser.ESCAPE - 334)) | (1 << (SqlParser.EVEN - 334)) | (1 << (SqlParser.EVENT - 334)) | (1 << (SqlParser.EVENTS - 334)) | (1 << (SqlParser.EVERY - 334)) | (1 << (SqlParser.EXCHANGE - 334)) | (1 << (SqlParser.EXCLUSIVE - 334)) | (1 << (SqlParser.EXPIRE - 334)) | (1 << (SqlParser.EXPORT - 334)) | (1 << (SqlParser.EXTENDED - 334)) | (1 << (SqlParser.EXTENT_SIZE - 334)) | (1 << (SqlParser.FAST - 334)) | (1 << (SqlParser.FAULTS - 334)) | (1 << (SqlParser.FIELDS - 334)) | (1 << (SqlParser.FILE_BLOCK_SIZE - 334)) | (1 << (SqlParser.FILTER - 334)) | (1 << (SqlParser.FIRST - 334)) | (1 << (SqlParser.FIXED - 334)) | (1 << (SqlParser.FLUSH - 334)) | (1 << (SqlParser.FOLLOWS - 334)))) !== 0) || ((((_la - 366)) & ~0x1f) == 0 && ((1 << (_la - 366)) & ((1 << (SqlParser.FOUND - 366)) | (1 << (SqlParser.FULL - 366)) | (1 << (SqlParser.FUNCTION - 366)) | (1 << (SqlParser.GENERAL - 366)) | (1 << (SqlParser.GLOBAL - 366)) | (1 << (SqlParser.GRANTS - 366)) | (1 << (SqlParser.GROUP_REPLICATION - 366)) | (1 << (SqlParser.HANDLER - 366)) | (1 << (SqlParser.HASH - 366)) | (1 << (SqlParser.HELP - 366)) | (1 << (SqlParser.HOST - 366)) | (1 << (SqlParser.HOSTS - 366)) | (1 << (SqlParser.IDENTIFIED - 366)) | (1 << (SqlParser.IGNORE_SERVER_IDS - 366)) | (1 << (SqlParser.IMPORT - 366)) | (1 << (SqlParser.INDEXES - 366)) | (1 << (SqlParser.INITIAL_SIZE - 366)) | (1 << (SqlParser.INPLACE - 366)) | (1 << (SqlParser.INSERT_METHOD - 366)) | (1 << (SqlParser.INSTALL - 366)) | (1 << (SqlParser.INSTANCE - 366)) | (1 << (SqlParser.INVISIBLE - 366)) | (1 << (SqlParser.INVOKER - 366)) | (1 << (SqlParser.IO - 366)) | (1 << (SqlParser.IO_THREAD - 366)) | (1 << (SqlParser.IPC - 366)) | (1 << (SqlParser.ISOLATION - 366)) | (1 << (SqlParser.ISSUER - 366)) | (1 << (SqlParser.JSON - 366)) | (1 << (SqlParser.KEY_BLOCK_SIZE - 366)) | (1 << (SqlParser.LANGUAGE - 366)) | (1 << (SqlParser.LAST - 366)))) !== 0) || ((((_la - 398)) & ~0x1f) == 0 && ((1 << (_la - 398)) & ((1 << (SqlParser.LEAVES - 398)) | (1 << (SqlParser.LESS - 398)) | (1 << (SqlParser.LEVEL - 398)) | (1 << (SqlParser.LIST - 398)) | (1 << (SqlParser.LOCAL - 398)) | (1 << (SqlParser.LOGFILE - 398)) | (1 << (SqlParser.LOGS - 398)) | (1 << (SqlParser.MASTER - 398)) | (1 << (SqlParser.MASTER_AUTO_POSITION - 398)) | (1 << (SqlParser.MASTER_CONNECT_RETRY - 398)) | (1 << (SqlParser.MASTER_DELAY - 398)) | (1 << (SqlParser.MASTER_HEARTBEAT_PERIOD - 398)) | (1 << (SqlParser.MASTER_HOST - 398)) | (1 << (SqlParser.MASTER_LOG_FILE - 398)) | (1 << (SqlParser.MASTER_LOG_POS - 398)) | (1 << (SqlParser.MASTER_PASSWORD - 398)) | (1 << (SqlParser.MASTER_PORT - 398)) | (1 << (SqlParser.MASTER_RETRY_COUNT - 398)) | (1 << (SqlParser.MASTER_SSL - 398)) | (1 << (SqlParser.MASTER_SSL_CA - 398)) | (1 << (SqlParser.MASTER_SSL_CAPATH - 398)) | (1 << (SqlParser.MASTER_SSL_CERT - 398)) | (1 << (SqlParser.MASTER_SSL_CIPHER - 398)) | (1 << (SqlParser.MASTER_SSL_CRL - 398)) | (1 << (SqlParser.MASTER_SSL_CRLPATH - 398)) | (1 << (SqlParser.MASTER_SSL_KEY - 398)) | (1 << (SqlParser.MASTER_TLS_VERSION - 398)) | (1 << (SqlParser.MASTER_USER - 398)) | (1 << (SqlParser.MAX_CONNECTIONS_PER_HOUR - 398)) | (1 << (SqlParser.MAX_QUERIES_PER_HOUR - 398)) | (1 << (SqlParser.MAX_ROWS - 398)) | (1 << (SqlParser.MAX_SIZE - 398)))) !== 0) || ((((_la - 430)) & ~0x1f) == 0 && ((1 << (_la - 430)) & ((1 << (SqlParser.MAX_UPDATES_PER_HOUR - 430)) | (1 << (SqlParser.MAX_USER_CONNECTIONS - 430)) | (1 << (SqlParser.MEDIUM - 430)) | (1 << (SqlParser.MERGE - 430)) | (1 << (SqlParser.MESSAGE_TEXT - 430)) | (1 << (SqlParser.MID - 430)) | (1 << (SqlParser.MIGRATE - 430)) | (1 << (SqlParser.MIN_ROWS - 430)) | (1 << (SqlParser.MODE - 430)) | (1 << (SqlParser.MODIFY - 430)) | (1 << (SqlParser.MUTEX - 430)) | (1 << (SqlParser.MYSQL - 430)) | (1 << (SqlParser.MYSQL_ERRNO - 430)) | (1 << (SqlParser.NAME - 430)) | (1 << (SqlParser.NAMES - 430)) | (1 << (SqlParser.NCHAR - 430)) | (1 << (SqlParser.NEVER - 430)) | (1 << (SqlParser.NEXT - 430)) | (1 << (SqlParser.NO - 430)) | (1 << (SqlParser.NODEGROUP - 430)) | (1 << (SqlParser.NONE - 430)) | (1 << (SqlParser.OFFLINE - 430)) | (1 << (SqlParser.OFFSET - 430)) | (1 << (SqlParser.OJ - 430)) | (1 << (SqlParser.OLD_PASSWORD - 430)) | (1 << (SqlParser.ONE - 430)) | (1 << (SqlParser.ONLINE - 430)) | (1 << (SqlParser.ONLY - 430)) | (1 << (SqlParser.OPEN - 430)) | (1 << (SqlParser.OPTIMIZER_COSTS - 430)) | (1 << (SqlParser.OPTIONS - 430)) | (1 << (SqlParser.OWNER - 430)))) !== 0) || ((((_la - 462)) & ~0x1f) == 0 && ((1 << (_la - 462)) & ((1 << (SqlParser.PACK_KEYS - 462)) | (1 << (SqlParser.PAGE - 462)) | (1 << (SqlParser.PARSER - 462)) | (1 << (SqlParser.PARTIAL - 462)) | (1 << (SqlParser.PARTITIONING - 462)) | (1 << (SqlParser.PARTITIONS - 462)) | (1 << (SqlParser.PASSWORD - 462)) | (1 << (SqlParser.PHASE - 462)) | (1 << (SqlParser.PLUGIN - 462)) | (1 << (SqlParser.PLUGIN_DIR - 462)) | (1 << (SqlParser.PLUGINS - 462)) | (1 << (SqlParser.PORT - 462)) | (1 << (SqlParser.PRECEDES - 462)) | (1 << (SqlParser.PREPARE - 462)) | (1 << (SqlParser.PRESERVE - 462)) | (1 << (SqlParser.PREV - 462)) | (1 << (SqlParser.PROCESSLIST - 462)) | (1 << (SqlParser.PROFILE - 462)) | (1 << (SqlParser.PROFILES - 462)) | (1 << (SqlParser.PROXY - 462)) | (1 << (SqlParser.QUERY - 462)) | (1 << (SqlParser.QUICK - 462)) | (1 << (SqlParser.REBUILD - 462)) | (1 << (SqlParser.RECOVER - 462)) | (1 << (SqlParser.REDO_BUFFER_SIZE - 462)) | (1 << (SqlParser.REDUNDANT - 462)) | (1 << (SqlParser.RELAY - 462)) | (1 << (SqlParser.RELAY_LOG_FILE - 462)) | (1 << (SqlParser.RELAY_LOG_POS - 462)) | (1 << (SqlParser.RELAYLOG - 462)) | (1 << (SqlParser.REMOVE - 462)) | (1 << (SqlParser.REORGANIZE - 462)))) !== 0) || ((((_la - 494)) & ~0x1f) == 0 && ((1 << (_la - 494)) & ((1 << (SqlParser.REPAIR - 494)) | (1 << (SqlParser.REPLICATE_DO_DB - 494)) | (1 << (SqlParser.REPLICATE_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_DB - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATE_REWRITE_DB - 494)) | (1 << (SqlParser.REPLICATE_WILD_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_WILD_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATION - 494)) | (1 << (SqlParser.RESET - 494)) | (1 << (SqlParser.RESUME - 494)) | (1 << (SqlParser.RETURNED_SQLSTATE - 494)) | (1 << (SqlParser.RETURNS - 494)) | (1 << (SqlParser.ROLE - 494)) | (1 << (SqlParser.ROLLBACK - 494)) | (1 << (SqlParser.ROLLUP - 494)) | (1 << (SqlParser.ROTATE - 494)) | (1 << (SqlParser.ROW - 494)) | (1 << (SqlParser.ROWS - 494)) | (1 << (SqlParser.ROW_FORMAT - 494)) | (1 << (SqlParser.SAVEPOINT - 494)) | (1 << (SqlParser.SCHEDULE - 494)) | (1 << (SqlParser.SECURITY - 494)) | (1 << (SqlParser.SERVER - 494)) | (1 << (SqlParser.SESSION - 494)) | (1 << (SqlParser.SHARE - 494)) | (1 << (SqlParser.SHARED - 494)) | (1 << (SqlParser.SIGNED - 494)) | (1 << (SqlParser.SIMPLE - 494)) | (1 << (SqlParser.SLAVE - 494)) | (1 << (SqlParser.SLOW - 494)) | (1 << (SqlParser.SNAPSHOT - 494)))) !== 0) || ((((_la - 526)) & ~0x1f) == 0 && ((1 << (_la - 526)) & ((1 << (SqlParser.SOCKET - 526)) | (1 << (SqlParser.SOME - 526)) | (1 << (SqlParser.SONAME - 526)) | (1 << (SqlParser.SOUNDS - 526)) | (1 << (SqlParser.SOURCE - 526)) | (1 << (SqlParser.SQL_AFTER_GTIDS - 526)) | (1 << (SqlParser.SQL_AFTER_MTS_GAPS - 526)) | (1 << (SqlParser.SQL_BEFORE_GTIDS - 526)) | (1 << (SqlParser.SQL_BUFFER_RESULT - 526)) | (1 << (SqlParser.SQL_CACHE - 526)) | (1 << (SqlParser.SQL_NO_CACHE - 526)) | (1 << (SqlParser.SQL_THREAD - 526)) | (1 << (SqlParser.START - 526)) | (1 << (SqlParser.STARTS - 526)) | (1 << (SqlParser.STATS_AUTO_RECALC - 526)) | (1 << (SqlParser.STATS_PERSISTENT - 526)) | (1 << (SqlParser.STATS_SAMPLE_PAGES - 526)) | (1 << (SqlParser.STATUS - 526)) | (1 << (SqlParser.STOP - 526)) | (1 << (SqlParser.STORAGE - 526)) | (1 << (SqlParser.STRING - 526)) | (1 << (SqlParser.SUBCLASS_ORIGIN - 526)) | (1 << (SqlParser.SUBJECT - 526)) | (1 << (SqlParser.SUBPARTITION - 526)) | (1 << (SqlParser.SUBPARTITIONS - 526)) | (1 << (SqlParser.SUSPEND - 526)) | (1 << (SqlParser.SWAPS - 526)) | (1 << (SqlParser.SWITCHES - 526)) | (1 << (SqlParser.TABLE_NAME - 526)) | (1 << (SqlParser.TABLESPACE - 526)) | (1 << (SqlParser.TEMPORARY - 526)))) !== 0) || ((((_la - 558)) & ~0x1f) == 0 && ((1 << (_la - 558)) & ((1 << (SqlParser.TEMPTABLE - 558)) | (1 << (SqlParser.THAN - 558)) | (1 << (SqlParser.TRADITIONAL - 558)) | (1 << (SqlParser.TRANSACTION - 558)) | (1 << (SqlParser.TRANSACTIONAL - 558)) | (1 << (SqlParser.TRIGGERS - 558)) | (1 << (SqlParser.TRUNCATE - 558)) | (1 << (SqlParser.UNDEFINED - 558)) | (1 << (SqlParser.UNDOFILE - 558)) | (1 << (SqlParser.UNDO_BUFFER_SIZE - 558)) | (1 << (SqlParser.UNINSTALL - 558)) | (1 << (SqlParser.UNKNOWN - 558)) | (1 << (SqlParser.UNTIL - 558)) | (1 << (SqlParser.UPGRADE - 558)) | (1 << (SqlParser.USER - 558)) | (1 << (SqlParser.USE_FRM - 558)) | (1 << (SqlParser.USER_RESOURCES - 558)) | (1 << (SqlParser.VALIDATION - 558)) | (1 << (SqlParser.VALUE - 558)) | (1 << (SqlParser.VARIABLES - 558)) | (1 << (SqlParser.VIEW - 558)) | (1 << (SqlParser.VISIBLE - 558)) | (1 << (SqlParser.WAIT - 558)) | (1 << (SqlParser.WARNINGS - 558)) | (1 << (SqlParser.WITHOUT - 558)) | (1 << (SqlParser.WORK - 558)) | (1 << (SqlParser.WRAPPER - 558)) | (1 << (SqlParser.X509 - 558)) | (1 << (SqlParser.XA - 558)) | (1 << (SqlParser.XML - 558)))) !== 0) || ((((_la - 593)) & ~0x1f) == 0 && ((1 << (_la - 593)) & ((1 << (SqlParser.INTERNAL - 593)) | (1 << (SqlParser.QUARTER - 593)) | (1 << (SqlParser.MONTH - 593)) | (1 << (SqlParser.DAY - 593)) | (1 << (SqlParser.HOUR - 593)) | (1 << (SqlParser.MINUTE - 593)) | (1 << (SqlParser.WEEK - 593)) | (1 << (SqlParser.SECOND - 593)) | (1 << (SqlParser.MICROSECOND - 593)) | (1 << (SqlParser.TABLES - 593)) | (1 << (SqlParser.ROUTINE - 593)) | (1 << (SqlParser.EXECUTE - 593)) | (1 << (SqlParser.FILE - 593)) | (1 << (SqlParser.PROCESS - 593)) | (1 << (SqlParser.RELOAD - 593)) | (1 << (SqlParser.SHUTDOWN - 593)) | (1 << (SqlParser.SUPER - 593)) | (1 << (SqlParser.PRIVILEGES - 593)) | (1 << (SqlParser.AUDIT_ADMIN - 593)) | (1 << (SqlParser.BACKUP_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ENCRYPTION_ADMIN - 593)) | (1 << (SqlParser.CLONE_ADMIN - 593)) | (1 << (SqlParser.CONNECTION_ADMIN - 593)) | (1 << (SqlParser.ENCRYPTION_KEY_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_USER - 593)) | (1 << (SqlParser.GROUP_REPLICATION_ADMIN - 593)) | (1 << (SqlParser.INNODB_REDO_LOG_ARCHIVE - 593)) | (1 << (SqlParser.NDB_STORED_USER - 593)) | (1 << (SqlParser.PERSIST_RO_VARIABLES_ADMIN - 593)))) !== 0) || ((((_la - 625)) & ~0x1f) == 0 && ((1 << (_la - 625)) & ((1 << (SqlParser.REPLICATION_APPLIER - 625)) | (1 << (SqlParser.REPLICATION_SLAVE_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_USER - 625)) | (1 << (SqlParser.ROLE_ADMIN - 625)) | (1 << (SqlParser.SESSION_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.SET_USER_ID - 625)) | (1 << (SqlParser.SHOW_ROUTINE - 625)) | (1 << (SqlParser.SYSTEM_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.TABLE_ENCRYPTION_ADMIN - 625)) | (1 << (SqlParser.VERSION_TOKEN_ADMIN - 625)) | (1 << (SqlParser.XA_RECOVER_ADMIN - 625)) | (1 << (SqlParser.ARMSCII8 - 625)) | (1 << (SqlParser.ASCII - 625)) | (1 << (SqlParser.BIG5 - 625)) | (1 << (SqlParser.CP1250 - 625)) | (1 << (SqlParser.CP1251 - 625)) | (1 << (SqlParser.CP1256 - 625)) | (1 << (SqlParser.CP1257 - 625)) | (1 << (SqlParser.CP850 - 625)) | (1 << (SqlParser.CP852 - 625)) | (1 << (SqlParser.CP866 - 625)) | (1 << (SqlParser.CP932 - 625)) | (1 << (SqlParser.DEC8 - 625)) | (1 << (SqlParser.EUCJPMS - 625)) | (1 << (SqlParser.EUCKR - 625)) | (1 << (SqlParser.GB2312 - 625)) | (1 << (SqlParser.GBK - 625)) | (1 << (SqlParser.GEOSTD8 - 625)) | (1 << (SqlParser.GREEK - 625)) | (1 << (SqlParser.HEBREW - 625)) | (1 << (SqlParser.HP8 - 625)))) !== 0) || ((((_la - 657)) & ~0x1f) == 0 && ((1 << (_la - 657)) & ((1 << (SqlParser.KEYBCS2 - 657)) | (1 << (SqlParser.KOI8R - 657)) | (1 << (SqlParser.KOI8U - 657)) | (1 << (SqlParser.LATIN1 - 657)) | (1 << (SqlParser.LATIN2 - 657)) | (1 << (SqlParser.LATIN5 - 657)) | (1 << (SqlParser.LATIN7 - 657)) | (1 << (SqlParser.MACCE - 657)) | (1 << (SqlParser.MACROMAN - 657)) | (1 << (SqlParser.SJIS - 657)) | (1 << (SqlParser.SWE7 - 657)) | (1 << (SqlParser.TIS620 - 657)) | (1 << (SqlParser.UCS2 - 657)) | (1 << (SqlParser.UJIS - 657)) | (1 << (SqlParser.UTF16 - 657)) | (1 << (SqlParser.UTF16LE - 657)) | (1 << (SqlParser.UTF32 - 657)) | (1 << (SqlParser.UTF8 - 657)) | (1 << (SqlParser.UTF8MB3 - 657)) | (1 << (SqlParser.UTF8MB4 - 657)) | (1 << (SqlParser.ARCHIVE - 657)) | (1 << (SqlParser.BLACKHOLE - 657)) | (1 << (SqlParser.CSV - 657)) | (1 << (SqlParser.FEDERATED - 657)) | (1 << (SqlParser.INNODB - 657)) | (1 << (SqlParser.MEMORY - 657)) | (1 << (SqlParser.MRG_MYISAM - 657)) | (1 << (SqlParser.MYISAM - 657)) | (1 << (SqlParser.NDB - 657)) | (1 << (SqlParser.NDBCLUSTER - 657)) | (1 << (SqlParser.PERFORMANCE_SCHEMA - 657)) | (1 << (SqlParser.TOKUDB - 657)))) !== 0) || ((((_la - 689)) & ~0x1f) == 0 && ((1 << (_la - 689)) & ((1 << (SqlParser.REPEATABLE - 689)) | (1 << (SqlParser.COMMITTED - 689)) | (1 << (SqlParser.UNCOMMITTED - 689)) | (1 << (SqlParser.SERIALIZABLE - 689)) | (1 << (SqlParser.GEOMETRYCOLLECTION - 689)) | (1 << (SqlParser.LINESTRING - 689)) | (1 << (SqlParser.MULTILINESTRING - 689)) | (1 << (SqlParser.MULTIPOINT - 689)) | (1 << (SqlParser.MULTIPOLYGON - 689)) | (1 << (SqlParser.POINT - 689)) | (1 << (SqlParser.POLYGON - 689)) | (1 << (SqlParser.ABS - 689)) | (1 << (SqlParser.ACOS - 689)) | (1 << (SqlParser.ADDDATE - 689)) | (1 << (SqlParser.ADDTIME - 689)) | (1 << (SqlParser.AES_DECRYPT - 689)) | (1 << (SqlParser.AES_ENCRYPT - 689)) | (1 << (SqlParser.AREA - 689)) | (1 << (SqlParser.ASBINARY - 689)) | (1 << (SqlParser.ASIN - 689)) | (1 << (SqlParser.ASTEXT - 689)) | (1 << (SqlParser.ASWKB - 689)) | (1 << (SqlParser.ASWKT - 689)) | (1 << (SqlParser.ASYMMETRIC_DECRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_DERIVE - 689)) | (1 << (SqlParser.ASYMMETRIC_ENCRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_SIGN - 689)) | (1 << (SqlParser.ASYMMETRIC_VERIFY - 689)) | (1 << (SqlParser.ATAN - 689)) | (1 << (SqlParser.ATAN2 - 689)))) !== 0) || ((((_la - 721)) & ~0x1f) == 0 && ((1 << (_la - 721)) & ((1 << (SqlParser.BENCHMARK - 721)) | (1 << (SqlParser.BIN - 721)) | (1 << (SqlParser.BIT_COUNT - 721)) | (1 << (SqlParser.BIT_LENGTH - 721)) | (1 << (SqlParser.BUFFER - 721)) | (1 << (SqlParser.CATALOG_NAME - 721)) | (1 << (SqlParser.CEIL - 721)) | (1 << (SqlParser.CEILING - 721)) | (1 << (SqlParser.CENTROID - 721)) | (1 << (SqlParser.CHARACTER_LENGTH - 721)) | (1 << (SqlParser.CHARSET - 721)) | (1 << (SqlParser.CHAR_LENGTH - 721)) | (1 << (SqlParser.COERCIBILITY - 721)) | (1 << (SqlParser.COLLATION - 721)) | (1 << (SqlParser.COMPRESS - 721)) | (1 << (SqlParser.CONCAT - 721)) | (1 << (SqlParser.CONCAT_WS - 721)) | (1 << (SqlParser.CONNECTION_ID - 721)) | (1 << (SqlParser.CONV - 721)) | (1 << (SqlParser.CONVERT_TZ - 721)) | (1 << (SqlParser.COS - 721)) | (1 << (SqlParser.COT - 721)) | (1 << (SqlParser.CRC32 - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PRIV_KEY - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PUB_KEY - 721)) | (1 << (SqlParser.CREATE_DH_PARAMETERS - 721)) | (1 << (SqlParser.CREATE_DIGEST - 721)) | (1 << (SqlParser.CROSSES - 721)) | (1 << (SqlParser.DATEDIFF - 721)) | (1 << (SqlParser.DATE_FORMAT - 721)) | (1 << (SqlParser.DAYNAME - 721)) | (1 << (SqlParser.DAYOFMONTH - 721)))) !== 0) || ((((_la - 753)) & ~0x1f) == 0 && ((1 << (_la - 753)) & ((1 << (SqlParser.DAYOFWEEK - 753)) | (1 << (SqlParser.DAYOFYEAR - 753)) | (1 << (SqlParser.DECODE - 753)) | (1 << (SqlParser.DEGREES - 753)) | (1 << (SqlParser.DES_DECRYPT - 753)) | (1 << (SqlParser.DES_ENCRYPT - 753)) | (1 << (SqlParser.DIMENSION - 753)) | (1 << (SqlParser.DISJOINT - 753)) | (1 << (SqlParser.ELT - 753)) | (1 << (SqlParser.ENCODE - 753)) | (1 << (SqlParser.ENCRYPT - 753)) | (1 << (SqlParser.ENDPOINT - 753)) | (1 << (SqlParser.ENVELOPE - 753)) | (1 << (SqlParser.EQUALS - 753)) | (1 << (SqlParser.EXP - 753)) | (1 << (SqlParser.EXPORT_SET - 753)) | (1 << (SqlParser.EXTERIORRING - 753)) | (1 << (SqlParser.EXTRACTVALUE - 753)) | (1 << (SqlParser.FIELD - 753)) | (1 << (SqlParser.FIND_IN_SET - 753)) | (1 << (SqlParser.FLOOR - 753)) | (1 << (SqlParser.FORMAT - 753)) | (1 << (SqlParser.FOUND_ROWS - 753)) | (1 << (SqlParser.FROM_BASE64 - 753)) | (1 << (SqlParser.FROM_DAYS - 753)) | (1 << (SqlParser.FROM_UNIXTIME - 753)) | (1 << (SqlParser.GEOMCOLLFROMTEXT - 753)) | (1 << (SqlParser.GEOMCOLLFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYFROMWKB - 753)))) !== 0) || ((((_la - 785)) & ~0x1f) == 0 && ((1 << (_la - 785)) & ((1 << (SqlParser.GEOMETRYN - 785)) | (1 << (SqlParser.GEOMETRYTYPE - 785)) | (1 << (SqlParser.GEOMFROMTEXT - 785)) | (1 << (SqlParser.GEOMFROMWKB - 785)) | (1 << (SqlParser.GET_FORMAT - 785)) | (1 << (SqlParser.GET_LOCK - 785)) | (1 << (SqlParser.GLENGTH - 785)) | (1 << (SqlParser.GREATEST - 785)) | (1 << (SqlParser.GTID_SUBSET - 785)) | (1 << (SqlParser.GTID_SUBTRACT - 785)) | (1 << (SqlParser.HEX - 785)) | (1 << (SqlParser.IFNULL - 785)) | (1 << (SqlParser.INET6_ATON - 785)) | (1 << (SqlParser.INET6_NTOA - 785)) | (1 << (SqlParser.INET_ATON - 785)) | (1 << (SqlParser.INET_NTOA - 785)) | (1 << (SqlParser.INSTR - 785)) | (1 << (SqlParser.INTERIORRINGN - 785)) | (1 << (SqlParser.INTERSECTS - 785)) | (1 << (SqlParser.ISCLOSED - 785)) | (1 << (SqlParser.ISEMPTY - 785)) | (1 << (SqlParser.ISNULL - 785)) | (1 << (SqlParser.ISSIMPLE - 785)) | (1 << (SqlParser.IS_FREE_LOCK - 785)) | (1 << (SqlParser.IS_IPV4 - 785)) | (1 << (SqlParser.IS_IPV4_COMPAT - 785)) | (1 << (SqlParser.IS_IPV4_MAPPED - 785)) | (1 << (SqlParser.IS_IPV6 - 785)) | (1 << (SqlParser.IS_USED_LOCK - 785)) | (1 << (SqlParser.LAST_INSERT_ID - 785)) | (1 << (SqlParser.LCASE - 785)) | (1 << (SqlParser.LEAST - 785)))) !== 0) || ((((_la - 817)) & ~0x1f) == 0 && ((1 << (_la - 817)) & ((1 << (SqlParser.LENGTH - 817)) | (1 << (SqlParser.LINEFROMTEXT - 817)) | (1 << (SqlParser.LINEFROMWKB - 817)) | (1 << (SqlParser.LINESTRINGFROMTEXT - 817)) | (1 << (SqlParser.LINESTRINGFROMWKB - 817)) | (1 << (SqlParser.LN - 817)) | (1 << (SqlParser.LOAD_FILE - 817)) | (1 << (SqlParser.LOCATE - 817)) | (1 << (SqlParser.LOG - 817)) | (1 << (SqlParser.LOG10 - 817)) | (1 << (SqlParser.LOG2 - 817)) | (1 << (SqlParser.LOWER - 817)) | (1 << (SqlParser.LPAD - 817)) | (1 << (SqlParser.LTRIM - 817)) | (1 << (SqlParser.MAKEDATE - 817)) | (1 << (SqlParser.MAKETIME - 817)) | (1 << (SqlParser.MAKE_SET - 817)) | (1 << (SqlParser.MASTER_POS_WAIT - 817)) | (1 << (SqlParser.MBRCONTAINS - 817)) | (1 << (SqlParser.MBRDISJOINT - 817)) | (1 << (SqlParser.MBREQUAL - 817)) | (1 << (SqlParser.MBRINTERSECTS - 817)) | (1 << (SqlParser.MBROVERLAPS - 817)) | (1 << (SqlParser.MBRTOUCHES - 817)) | (1 << (SqlParser.MBRWITHIN - 817)) | (1 << (SqlParser.MD5 - 817)) | (1 << (SqlParser.MLINEFROMTEXT - 817)) | (1 << (SqlParser.MLINEFROMWKB - 817)) | (1 << (SqlParser.MONTHNAME - 817)) | (1 << (SqlParser.MPOINTFROMTEXT - 817)) | (1 << (SqlParser.MPOINTFROMWKB - 817)) | (1 << (SqlParser.MPOLYFROMTEXT - 817)))) !== 0) || ((((_la - 849)) & ~0x1f) == 0 && ((1 << (_la - 849)) & ((1 << (SqlParser.MPOLYFROMWKB - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMTEXT - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMWKB - 849)) | (1 << (SqlParser.MULTIPOINTFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOINTFROMWKB - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMWKB - 849)) | (1 << (SqlParser.NAME_CONST - 849)) | (1 << (SqlParser.NULLIF - 849)) | (1 << (SqlParser.NUMGEOMETRIES - 849)) | (1 << (SqlParser.NUMINTERIORRINGS - 849)) | (1 << (SqlParser.NUMPOINTS - 849)) | (1 << (SqlParser.OCT - 849)) | (1 << (SqlParser.OCTET_LENGTH - 849)) | (1 << (SqlParser.ORD - 849)) | (1 << (SqlParser.OVERLAPS - 849)) | (1 << (SqlParser.PERIOD_ADD - 849)) | (1 << (SqlParser.PERIOD_DIFF - 849)) | (1 << (SqlParser.PI - 849)) | (1 << (SqlParser.POINTFROMTEXT - 849)) | (1 << (SqlParser.POINTFROMWKB - 849)) | (1 << (SqlParser.POINTN - 849)) | (1 << (SqlParser.POLYFROMTEXT - 849)) | (1 << (SqlParser.POLYFROMWKB - 849)) | (1 << (SqlParser.POLYGONFROMTEXT - 849)) | (1 << (SqlParser.POLYGONFROMWKB - 849)) | (1 << (SqlParser.POW - 849)) | (1 << (SqlParser.POWER - 849)) | (1 << (SqlParser.QUOTE - 849)) | (1 << (SqlParser.RADIANS - 849)) | (1 << (SqlParser.RAND - 849)) | (1 << (SqlParser.RANDOM_BYTES - 849)))) !== 0) || ((((_la - 881)) & ~0x1f) == 0 && ((1 << (_la - 881)) & ((1 << (SqlParser.RELEASE_LOCK - 881)) | (1 << (SqlParser.REVERSE - 881)) | (1 << (SqlParser.ROUND - 881)) | (1 << (SqlParser.ROW_COUNT - 881)) | (1 << (SqlParser.RPAD - 881)) | (1 << (SqlParser.RTRIM - 881)) | (1 << (SqlParser.SEC_TO_TIME - 881)) | (1 << (SqlParser.SESSION_USER - 881)) | (1 << (SqlParser.SHA - 881)) | (1 << (SqlParser.SHA1 - 881)) | (1 << (SqlParser.SHA2 - 881)) | (1 << (SqlParser.SCHEMA_NAME - 881)) | (1 << (SqlParser.SIGN - 881)) | (1 << (SqlParser.SIN - 881)) | (1 << (SqlParser.SLEEP - 881)) | (1 << (SqlParser.SOUNDEX - 881)) | (1 << (SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS - 881)) | (1 << (SqlParser.SQRT - 881)) | (1 << (SqlParser.SRID - 881)) | (1 << (SqlParser.STARTPOINT - 881)) | (1 << (SqlParser.STRCMP - 881)) | (1 << (SqlParser.STR_TO_DATE - 881)) | (1 << (SqlParser.ST_AREA - 881)) | (1 << (SqlParser.ST_ASBINARY - 881)) | (1 << (SqlParser.ST_ASTEXT - 881)) | (1 << (SqlParser.ST_ASWKB - 881)) | (1 << (SqlParser.ST_ASWKT - 881)) | (1 << (SqlParser.ST_BUFFER - 881)) | (1 << (SqlParser.ST_CENTROID - 881)) | (1 << (SqlParser.ST_CONTAINS - 881)) | (1 << (SqlParser.ST_CROSSES - 881)) | (1 << (SqlParser.ST_DIFFERENCE - 881)))) !== 0) || ((((_la - 913)) & ~0x1f) == 0 && ((1 << (_la - 913)) & ((1 << (SqlParser.ST_DIMENSION - 913)) | (1 << (SqlParser.ST_DISJOINT - 913)) | (1 << (SqlParser.ST_DISTANCE - 913)) | (1 << (SqlParser.ST_ENDPOINT - 913)) | (1 << (SqlParser.ST_ENVELOPE - 913)) | (1 << (SqlParser.ST_EQUALS - 913)) | (1 << (SqlParser.ST_EXTERIORRING - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYN - 913)) | (1 << (SqlParser.ST_GEOMETRYTYPE - 913)) | (1 << (SqlParser.ST_GEOMFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMFROMWKB - 913)) | (1 << (SqlParser.ST_INTERIORRINGN - 913)) | (1 << (SqlParser.ST_INTERSECTION - 913)) | (1 << (SqlParser.ST_INTERSECTS - 913)) | (1 << (SqlParser.ST_ISCLOSED - 913)) | (1 << (SqlParser.ST_ISEMPTY - 913)) | (1 << (SqlParser.ST_ISSIMPLE - 913)) | (1 << (SqlParser.ST_LINEFROMTEXT - 913)) | (1 << (SqlParser.ST_LINEFROMWKB - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMTEXT - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMWKB - 913)) | (1 << (SqlParser.ST_NUMGEOMETRIES - 913)) | (1 << (SqlParser.ST_NUMINTERIORRING - 913)) | (1 << (SqlParser.ST_NUMINTERIORRINGS - 913)) | (1 << (SqlParser.ST_NUMPOINTS - 913)))) !== 0) || ((((_la - 945)) & ~0x1f) == 0 && ((1 << (_la - 945)) & ((1 << (SqlParser.ST_OVERLAPS - 945)) | (1 << (SqlParser.ST_POINTFROMTEXT - 945)) | (1 << (SqlParser.ST_POINTFROMWKB - 945)) | (1 << (SqlParser.ST_POINTN - 945)) | (1 << (SqlParser.ST_POLYFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYFROMWKB - 945)) | (1 << (SqlParser.ST_POLYGONFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYGONFROMWKB - 945)) | (1 << (SqlParser.ST_SRID - 945)) | (1 << (SqlParser.ST_STARTPOINT - 945)) | (1 << (SqlParser.ST_SYMDIFFERENCE - 945)) | (1 << (SqlParser.ST_TOUCHES - 945)) | (1 << (SqlParser.ST_UNION - 945)) | (1 << (SqlParser.ST_WITHIN - 945)) | (1 << (SqlParser.ST_X - 945)) | (1 << (SqlParser.ST_Y - 945)) | (1 << (SqlParser.SUBDATE - 945)) | (1 << (SqlParser.SUBSTRING_INDEX - 945)) | (1 << (SqlParser.SUBTIME - 945)) | (1 << (SqlParser.SYSTEM_USER - 945)) | (1 << (SqlParser.TAN - 945)) | (1 << (SqlParser.TIMEDIFF - 945)) | (1 << (SqlParser.TIMESTAMPADD - 945)) | (1 << (SqlParser.TIMESTAMPDIFF - 945)) | (1 << (SqlParser.TIME_FORMAT - 945)) | (1 << (SqlParser.TIME_TO_SEC - 945)) | (1 << (SqlParser.TOUCHES - 945)) | (1 << (SqlParser.TO_BASE64 - 945)) | (1 << (SqlParser.TO_DAYS - 945)) | (1 << (SqlParser.TO_SECONDS - 945)) | (1 << (SqlParser.UCASE - 945)) | (1 << (SqlParser.UNCOMPRESS - 945)))) !== 0) || ((((_la - 977)) & ~0x1f) == 0 && ((1 << (_la - 977)) & ((1 << (SqlParser.UNCOMPRESSED_LENGTH - 977)) | (1 << (SqlParser.UNHEX - 977)) | (1 << (SqlParser.UNIX_TIMESTAMP - 977)) | (1 << (SqlParser.UPDATEXML - 977)) | (1 << (SqlParser.UPPER - 977)) | (1 << (SqlParser.UUID - 977)) | (1 << (SqlParser.UUID_SHORT - 977)) | (1 << (SqlParser.VALIDATE_PASSWORD_STRENGTH - 977)) | (1 << (SqlParser.VERSION - 977)) | (1 << (SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS - 977)) | (1 << (SqlParser.WEEKDAY - 977)) | (1 << (SqlParser.WEEKOFYEAR - 977)) | (1 << (SqlParser.WEIGHT_STRING - 977)) | (1 << (SqlParser.WITHIN - 977)) | (1 << (SqlParser.YEARWEEK - 977)) | (1 << (SqlParser.Y_FUNCTION - 977)) | (1 << (SqlParser.X_FUNCTION - 977)))) !== 0) || ((((_la - 1032)) & ~0x1f) == 0 && ((1 << (_la - 1032)) & ((1 << (SqlParser.CHARSET_REVERSE_QOUTE_STRING - 1032)) | (1 << (SqlParser.STRING_LITERAL - 1032)) | (1 << (SqlParser.ID - 1032)) | (1 << (SqlParser.REVERSE_QUOTE_ID - 1032)))) !== 0)) {
+ this.state = 2347;
+ localctx.indexName = this.uid();
+ }
+
+ this.state = 2351;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.USING) {
+ this.state = 2350;
+ this.indexType();
+ }
+
+ this.state = 2353;
+ this.indexColumnNames();
+ this.state = 2357;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.USING || _la===SqlParser.WITH || _la===SqlParser.COMMENT || _la===SqlParser.INVISIBLE || _la===SqlParser.KEY_BLOCK_SIZE || _la===SqlParser.VISIBLE) {
+ this.state = 2354;
+ this.indexOption();
+ this.state = 2359;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+
+ case 7:
+ localctx = new AlterByAddSpecialIndexContext(this, localctx);
+ this.enterOuterAlt(localctx, 7);
+ this.state = 2360;
+ this.match(SqlParser.ADD);
+ this.state = 2361;
+ localctx.keyType = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.FULLTEXT || _la===SqlParser.SPATIAL)) {
+ localctx.keyType = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 2363;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.INDEX || _la===SqlParser.KEY) {
+ this.state = 2362;
+ localctx.indexFormat = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.INDEX || _la===SqlParser.KEY)) {
+ localctx.indexFormat = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 2366;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (SqlParser.CURRENT - 32)) | (1 << (SqlParser.DATABASE - 32)) | (1 << (SqlParser.DIAGNOSTICS - 32)))) !== 0) || _la===SqlParser.LEFT || _la===SqlParser.NUMBER || _la===SqlParser.RIGHT || _la===SqlParser.STACKED || ((((_la - 199)) & ~0x1f) == 0 && ((1 << (_la - 199)) & ((1 << (SqlParser.DATE - 199)) | (1 << (SqlParser.TIME - 199)) | (1 << (SqlParser.TIMESTAMP - 199)) | (1 << (SqlParser.DATETIME - 199)) | (1 << (SqlParser.YEAR - 199)) | (1 << (SqlParser.TEXT - 199)) | (1 << (SqlParser.ENUM - 199)) | (1 << (SqlParser.SERIAL - 199)))) !== 0) || ((((_la - 233)) & ~0x1f) == 0 && ((1 << (_la - 233)) & ((1 << (SqlParser.JSON_VALID - 233)) | (1 << (SqlParser.JSON_SCHEMA_VALID - 233)) | (1 << (SqlParser.COUNT - 233)) | (1 << (SqlParser.POSITION - 233)))) !== 0) || ((((_la - 270)) & ~0x1f) == 0 && ((1 << (_la - 270)) & ((1 << (SqlParser.ACCOUNT - 270)) | (1 << (SqlParser.ACTION - 270)) | (1 << (SqlParser.AFTER - 270)) | (1 << (SqlParser.AGGREGATE - 270)) | (1 << (SqlParser.ALGORITHM - 270)) | (1 << (SqlParser.ANY - 270)) | (1 << (SqlParser.AT - 270)) | (1 << (SqlParser.AUTHORS - 270)) | (1 << (SqlParser.AUTOCOMMIT - 270)) | (1 << (SqlParser.AUTOEXTEND_SIZE - 270)) | (1 << (SqlParser.AUTO_INCREMENT - 270)) | (1 << (SqlParser.AVG_ROW_LENGTH - 270)) | (1 << (SqlParser.BEGIN - 270)) | (1 << (SqlParser.BINLOG - 270)) | (1 << (SqlParser.BIT - 270)) | (1 << (SqlParser.BLOCK - 270)) | (1 << (SqlParser.BOOL - 270)) | (1 << (SqlParser.BOOLEAN - 270)) | (1 << (SqlParser.BTREE - 270)) | (1 << (SqlParser.CACHE - 270)) | (1 << (SqlParser.CASCADED - 270)) | (1 << (SqlParser.CHAIN - 270)) | (1 << (SqlParser.CHANGED - 270)) | (1 << (SqlParser.CHANNEL - 270)) | (1 << (SqlParser.CHECKSUM - 270)) | (1 << (SqlParser.PAGE_CHECKSUM - 270)) | (1 << (SqlParser.CIPHER - 270)) | (1 << (SqlParser.CLASS_ORIGIN - 270)) | (1 << (SqlParser.CLIENT - 270)) | (1 << (SqlParser.CLOSE - 270)) | (1 << (SqlParser.COALESCE - 270)) | (1 << (SqlParser.CODE - 270)))) !== 0) || ((((_la - 302)) & ~0x1f) == 0 && ((1 << (_la - 302)) & ((1 << (SqlParser.COLUMNS - 302)) | (1 << (SqlParser.COLUMN_FORMAT - 302)) | (1 << (SqlParser.COLUMN_NAME - 302)) | (1 << (SqlParser.COMMENT - 302)) | (1 << (SqlParser.COMMIT - 302)) | (1 << (SqlParser.COMPACT - 302)) | (1 << (SqlParser.COMPLETION - 302)) | (1 << (SqlParser.COMPRESSED - 302)) | (1 << (SqlParser.COMPRESSION - 302)) | (1 << (SqlParser.CONCURRENT - 302)) | (1 << (SqlParser.CONNECTION - 302)) | (1 << (SqlParser.CONSISTENT - 302)) | (1 << (SqlParser.CONSTRAINT_CATALOG - 302)) | (1 << (SqlParser.CONSTRAINT_SCHEMA - 302)) | (1 << (SqlParser.CONSTRAINT_NAME - 302)) | (1 << (SqlParser.CONTAINS - 302)) | (1 << (SqlParser.CONTEXT - 302)) | (1 << (SqlParser.CONTRIBUTORS - 302)) | (1 << (SqlParser.COPY - 302)) | (1 << (SqlParser.CPU - 302)) | (1 << (SqlParser.CURSOR_NAME - 302)) | (1 << (SqlParser.DATA - 302)) | (1 << (SqlParser.DATAFILE - 302)) | (1 << (SqlParser.DEALLOCATE - 302)) | (1 << (SqlParser.DEFAULT_AUTH - 302)) | (1 << (SqlParser.DEFINER - 302)) | (1 << (SqlParser.DELAY_KEY_WRITE - 302)) | (1 << (SqlParser.DES_KEY_FILE - 302)) | (1 << (SqlParser.DIRECTORY - 302)) | (1 << (SqlParser.DISABLE - 302)) | (1 << (SqlParser.DISCARD - 302)) | (1 << (SqlParser.DISK - 302)))) !== 0) || ((((_la - 334)) & ~0x1f) == 0 && ((1 << (_la - 334)) & ((1 << (SqlParser.DO - 334)) | (1 << (SqlParser.DUMPFILE - 334)) | (1 << (SqlParser.DUPLICATE - 334)) | (1 << (SqlParser.DYNAMIC - 334)) | (1 << (SqlParser.ENABLE - 334)) | (1 << (SqlParser.ENCRYPTION - 334)) | (1 << (SqlParser.END - 334)) | (1 << (SqlParser.ENDS - 334)) | (1 << (SqlParser.ENGINE - 334)) | (1 << (SqlParser.ENGINES - 334)) | (1 << (SqlParser.ERROR - 334)) | (1 << (SqlParser.ERRORS - 334)) | (1 << (SqlParser.ESCAPE - 334)) | (1 << (SqlParser.EVEN - 334)) | (1 << (SqlParser.EVENT - 334)) | (1 << (SqlParser.EVENTS - 334)) | (1 << (SqlParser.EVERY - 334)) | (1 << (SqlParser.EXCHANGE - 334)) | (1 << (SqlParser.EXCLUSIVE - 334)) | (1 << (SqlParser.EXPIRE - 334)) | (1 << (SqlParser.EXPORT - 334)) | (1 << (SqlParser.EXTENDED - 334)) | (1 << (SqlParser.EXTENT_SIZE - 334)) | (1 << (SqlParser.FAST - 334)) | (1 << (SqlParser.FAULTS - 334)) | (1 << (SqlParser.FIELDS - 334)) | (1 << (SqlParser.FILE_BLOCK_SIZE - 334)) | (1 << (SqlParser.FILTER - 334)) | (1 << (SqlParser.FIRST - 334)) | (1 << (SqlParser.FIXED - 334)) | (1 << (SqlParser.FLUSH - 334)) | (1 << (SqlParser.FOLLOWS - 334)))) !== 0) || ((((_la - 366)) & ~0x1f) == 0 && ((1 << (_la - 366)) & ((1 << (SqlParser.FOUND - 366)) | (1 << (SqlParser.FULL - 366)) | (1 << (SqlParser.FUNCTION - 366)) | (1 << (SqlParser.GENERAL - 366)) | (1 << (SqlParser.GLOBAL - 366)) | (1 << (SqlParser.GRANTS - 366)) | (1 << (SqlParser.GROUP_REPLICATION - 366)) | (1 << (SqlParser.HANDLER - 366)) | (1 << (SqlParser.HASH - 366)) | (1 << (SqlParser.HELP - 366)) | (1 << (SqlParser.HOST - 366)) | (1 << (SqlParser.HOSTS - 366)) | (1 << (SqlParser.IDENTIFIED - 366)) | (1 << (SqlParser.IGNORE_SERVER_IDS - 366)) | (1 << (SqlParser.IMPORT - 366)) | (1 << (SqlParser.INDEXES - 366)) | (1 << (SqlParser.INITIAL_SIZE - 366)) | (1 << (SqlParser.INPLACE - 366)) | (1 << (SqlParser.INSERT_METHOD - 366)) | (1 << (SqlParser.INSTALL - 366)) | (1 << (SqlParser.INSTANCE - 366)) | (1 << (SqlParser.INVISIBLE - 366)) | (1 << (SqlParser.INVOKER - 366)) | (1 << (SqlParser.IO - 366)) | (1 << (SqlParser.IO_THREAD - 366)) | (1 << (SqlParser.IPC - 366)) | (1 << (SqlParser.ISOLATION - 366)) | (1 << (SqlParser.ISSUER - 366)) | (1 << (SqlParser.JSON - 366)) | (1 << (SqlParser.KEY_BLOCK_SIZE - 366)) | (1 << (SqlParser.LANGUAGE - 366)) | (1 << (SqlParser.LAST - 366)))) !== 0) || ((((_la - 398)) & ~0x1f) == 0 && ((1 << (_la - 398)) & ((1 << (SqlParser.LEAVES - 398)) | (1 << (SqlParser.LESS - 398)) | (1 << (SqlParser.LEVEL - 398)) | (1 << (SqlParser.LIST - 398)) | (1 << (SqlParser.LOCAL - 398)) | (1 << (SqlParser.LOGFILE - 398)) | (1 << (SqlParser.LOGS - 398)) | (1 << (SqlParser.MASTER - 398)) | (1 << (SqlParser.MASTER_AUTO_POSITION - 398)) | (1 << (SqlParser.MASTER_CONNECT_RETRY - 398)) | (1 << (SqlParser.MASTER_DELAY - 398)) | (1 << (SqlParser.MASTER_HEARTBEAT_PERIOD - 398)) | (1 << (SqlParser.MASTER_HOST - 398)) | (1 << (SqlParser.MASTER_LOG_FILE - 398)) | (1 << (SqlParser.MASTER_LOG_POS - 398)) | (1 << (SqlParser.MASTER_PASSWORD - 398)) | (1 << (SqlParser.MASTER_PORT - 398)) | (1 << (SqlParser.MASTER_RETRY_COUNT - 398)) | (1 << (SqlParser.MASTER_SSL - 398)) | (1 << (SqlParser.MASTER_SSL_CA - 398)) | (1 << (SqlParser.MASTER_SSL_CAPATH - 398)) | (1 << (SqlParser.MASTER_SSL_CERT - 398)) | (1 << (SqlParser.MASTER_SSL_CIPHER - 398)) | (1 << (SqlParser.MASTER_SSL_CRL - 398)) | (1 << (SqlParser.MASTER_SSL_CRLPATH - 398)) | (1 << (SqlParser.MASTER_SSL_KEY - 398)) | (1 << (SqlParser.MASTER_TLS_VERSION - 398)) | (1 << (SqlParser.MASTER_USER - 398)) | (1 << (SqlParser.MAX_CONNECTIONS_PER_HOUR - 398)) | (1 << (SqlParser.MAX_QUERIES_PER_HOUR - 398)) | (1 << (SqlParser.MAX_ROWS - 398)) | (1 << (SqlParser.MAX_SIZE - 398)))) !== 0) || ((((_la - 430)) & ~0x1f) == 0 && ((1 << (_la - 430)) & ((1 << (SqlParser.MAX_UPDATES_PER_HOUR - 430)) | (1 << (SqlParser.MAX_USER_CONNECTIONS - 430)) | (1 << (SqlParser.MEDIUM - 430)) | (1 << (SqlParser.MERGE - 430)) | (1 << (SqlParser.MESSAGE_TEXT - 430)) | (1 << (SqlParser.MID - 430)) | (1 << (SqlParser.MIGRATE - 430)) | (1 << (SqlParser.MIN_ROWS - 430)) | (1 << (SqlParser.MODE - 430)) | (1 << (SqlParser.MODIFY - 430)) | (1 << (SqlParser.MUTEX - 430)) | (1 << (SqlParser.MYSQL - 430)) | (1 << (SqlParser.MYSQL_ERRNO - 430)) | (1 << (SqlParser.NAME - 430)) | (1 << (SqlParser.NAMES - 430)) | (1 << (SqlParser.NCHAR - 430)) | (1 << (SqlParser.NEVER - 430)) | (1 << (SqlParser.NEXT - 430)) | (1 << (SqlParser.NO - 430)) | (1 << (SqlParser.NODEGROUP - 430)) | (1 << (SqlParser.NONE - 430)) | (1 << (SqlParser.OFFLINE - 430)) | (1 << (SqlParser.OFFSET - 430)) | (1 << (SqlParser.OJ - 430)) | (1 << (SqlParser.OLD_PASSWORD - 430)) | (1 << (SqlParser.ONE - 430)) | (1 << (SqlParser.ONLINE - 430)) | (1 << (SqlParser.ONLY - 430)) | (1 << (SqlParser.OPEN - 430)) | (1 << (SqlParser.OPTIMIZER_COSTS - 430)) | (1 << (SqlParser.OPTIONS - 430)) | (1 << (SqlParser.OWNER - 430)))) !== 0) || ((((_la - 462)) & ~0x1f) == 0 && ((1 << (_la - 462)) & ((1 << (SqlParser.PACK_KEYS - 462)) | (1 << (SqlParser.PAGE - 462)) | (1 << (SqlParser.PARSER - 462)) | (1 << (SqlParser.PARTIAL - 462)) | (1 << (SqlParser.PARTITIONING - 462)) | (1 << (SqlParser.PARTITIONS - 462)) | (1 << (SqlParser.PASSWORD - 462)) | (1 << (SqlParser.PHASE - 462)) | (1 << (SqlParser.PLUGIN - 462)) | (1 << (SqlParser.PLUGIN_DIR - 462)) | (1 << (SqlParser.PLUGINS - 462)) | (1 << (SqlParser.PORT - 462)) | (1 << (SqlParser.PRECEDES - 462)) | (1 << (SqlParser.PREPARE - 462)) | (1 << (SqlParser.PRESERVE - 462)) | (1 << (SqlParser.PREV - 462)) | (1 << (SqlParser.PROCESSLIST - 462)) | (1 << (SqlParser.PROFILE - 462)) | (1 << (SqlParser.PROFILES - 462)) | (1 << (SqlParser.PROXY - 462)) | (1 << (SqlParser.QUERY - 462)) | (1 << (SqlParser.QUICK - 462)) | (1 << (SqlParser.REBUILD - 462)) | (1 << (SqlParser.RECOVER - 462)) | (1 << (SqlParser.REDO_BUFFER_SIZE - 462)) | (1 << (SqlParser.REDUNDANT - 462)) | (1 << (SqlParser.RELAY - 462)) | (1 << (SqlParser.RELAY_LOG_FILE - 462)) | (1 << (SqlParser.RELAY_LOG_POS - 462)) | (1 << (SqlParser.RELAYLOG - 462)) | (1 << (SqlParser.REMOVE - 462)) | (1 << (SqlParser.REORGANIZE - 462)))) !== 0) || ((((_la - 494)) & ~0x1f) == 0 && ((1 << (_la - 494)) & ((1 << (SqlParser.REPAIR - 494)) | (1 << (SqlParser.REPLICATE_DO_DB - 494)) | (1 << (SqlParser.REPLICATE_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_DB - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATE_REWRITE_DB - 494)) | (1 << (SqlParser.REPLICATE_WILD_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_WILD_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATION - 494)) | (1 << (SqlParser.RESET - 494)) | (1 << (SqlParser.RESUME - 494)) | (1 << (SqlParser.RETURNED_SQLSTATE - 494)) | (1 << (SqlParser.RETURNS - 494)) | (1 << (SqlParser.ROLE - 494)) | (1 << (SqlParser.ROLLBACK - 494)) | (1 << (SqlParser.ROLLUP - 494)) | (1 << (SqlParser.ROTATE - 494)) | (1 << (SqlParser.ROW - 494)) | (1 << (SqlParser.ROWS - 494)) | (1 << (SqlParser.ROW_FORMAT - 494)) | (1 << (SqlParser.SAVEPOINT - 494)) | (1 << (SqlParser.SCHEDULE - 494)) | (1 << (SqlParser.SECURITY - 494)) | (1 << (SqlParser.SERVER - 494)) | (1 << (SqlParser.SESSION - 494)) | (1 << (SqlParser.SHARE - 494)) | (1 << (SqlParser.SHARED - 494)) | (1 << (SqlParser.SIGNED - 494)) | (1 << (SqlParser.SIMPLE - 494)) | (1 << (SqlParser.SLAVE - 494)) | (1 << (SqlParser.SLOW - 494)) | (1 << (SqlParser.SNAPSHOT - 494)))) !== 0) || ((((_la - 526)) & ~0x1f) == 0 && ((1 << (_la - 526)) & ((1 << (SqlParser.SOCKET - 526)) | (1 << (SqlParser.SOME - 526)) | (1 << (SqlParser.SONAME - 526)) | (1 << (SqlParser.SOUNDS - 526)) | (1 << (SqlParser.SOURCE - 526)) | (1 << (SqlParser.SQL_AFTER_GTIDS - 526)) | (1 << (SqlParser.SQL_AFTER_MTS_GAPS - 526)) | (1 << (SqlParser.SQL_BEFORE_GTIDS - 526)) | (1 << (SqlParser.SQL_BUFFER_RESULT - 526)) | (1 << (SqlParser.SQL_CACHE - 526)) | (1 << (SqlParser.SQL_NO_CACHE - 526)) | (1 << (SqlParser.SQL_THREAD - 526)) | (1 << (SqlParser.START - 526)) | (1 << (SqlParser.STARTS - 526)) | (1 << (SqlParser.STATS_AUTO_RECALC - 526)) | (1 << (SqlParser.STATS_PERSISTENT - 526)) | (1 << (SqlParser.STATS_SAMPLE_PAGES - 526)) | (1 << (SqlParser.STATUS - 526)) | (1 << (SqlParser.STOP - 526)) | (1 << (SqlParser.STORAGE - 526)) | (1 << (SqlParser.STRING - 526)) | (1 << (SqlParser.SUBCLASS_ORIGIN - 526)) | (1 << (SqlParser.SUBJECT - 526)) | (1 << (SqlParser.SUBPARTITION - 526)) | (1 << (SqlParser.SUBPARTITIONS - 526)) | (1 << (SqlParser.SUSPEND - 526)) | (1 << (SqlParser.SWAPS - 526)) | (1 << (SqlParser.SWITCHES - 526)) | (1 << (SqlParser.TABLE_NAME - 526)) | (1 << (SqlParser.TABLESPACE - 526)) | (1 << (SqlParser.TEMPORARY - 526)))) !== 0) || ((((_la - 558)) & ~0x1f) == 0 && ((1 << (_la - 558)) & ((1 << (SqlParser.TEMPTABLE - 558)) | (1 << (SqlParser.THAN - 558)) | (1 << (SqlParser.TRADITIONAL - 558)) | (1 << (SqlParser.TRANSACTION - 558)) | (1 << (SqlParser.TRANSACTIONAL - 558)) | (1 << (SqlParser.TRIGGERS - 558)) | (1 << (SqlParser.TRUNCATE - 558)) | (1 << (SqlParser.UNDEFINED - 558)) | (1 << (SqlParser.UNDOFILE - 558)) | (1 << (SqlParser.UNDO_BUFFER_SIZE - 558)) | (1 << (SqlParser.UNINSTALL - 558)) | (1 << (SqlParser.UNKNOWN - 558)) | (1 << (SqlParser.UNTIL - 558)) | (1 << (SqlParser.UPGRADE - 558)) | (1 << (SqlParser.USER - 558)) | (1 << (SqlParser.USE_FRM - 558)) | (1 << (SqlParser.USER_RESOURCES - 558)) | (1 << (SqlParser.VALIDATION - 558)) | (1 << (SqlParser.VALUE - 558)) | (1 << (SqlParser.VARIABLES - 558)) | (1 << (SqlParser.VIEW - 558)) | (1 << (SqlParser.VISIBLE - 558)) | (1 << (SqlParser.WAIT - 558)) | (1 << (SqlParser.WARNINGS - 558)) | (1 << (SqlParser.WITHOUT - 558)) | (1 << (SqlParser.WORK - 558)) | (1 << (SqlParser.WRAPPER - 558)) | (1 << (SqlParser.X509 - 558)) | (1 << (SqlParser.XA - 558)) | (1 << (SqlParser.XML - 558)))) !== 0) || ((((_la - 593)) & ~0x1f) == 0 && ((1 << (_la - 593)) & ((1 << (SqlParser.INTERNAL - 593)) | (1 << (SqlParser.QUARTER - 593)) | (1 << (SqlParser.MONTH - 593)) | (1 << (SqlParser.DAY - 593)) | (1 << (SqlParser.HOUR - 593)) | (1 << (SqlParser.MINUTE - 593)) | (1 << (SqlParser.WEEK - 593)) | (1 << (SqlParser.SECOND - 593)) | (1 << (SqlParser.MICROSECOND - 593)) | (1 << (SqlParser.TABLES - 593)) | (1 << (SqlParser.ROUTINE - 593)) | (1 << (SqlParser.EXECUTE - 593)) | (1 << (SqlParser.FILE - 593)) | (1 << (SqlParser.PROCESS - 593)) | (1 << (SqlParser.RELOAD - 593)) | (1 << (SqlParser.SHUTDOWN - 593)) | (1 << (SqlParser.SUPER - 593)) | (1 << (SqlParser.PRIVILEGES - 593)) | (1 << (SqlParser.AUDIT_ADMIN - 593)) | (1 << (SqlParser.BACKUP_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ENCRYPTION_ADMIN - 593)) | (1 << (SqlParser.CLONE_ADMIN - 593)) | (1 << (SqlParser.CONNECTION_ADMIN - 593)) | (1 << (SqlParser.ENCRYPTION_KEY_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_USER - 593)) | (1 << (SqlParser.GROUP_REPLICATION_ADMIN - 593)) | (1 << (SqlParser.INNODB_REDO_LOG_ARCHIVE - 593)) | (1 << (SqlParser.NDB_STORED_USER - 593)) | (1 << (SqlParser.PERSIST_RO_VARIABLES_ADMIN - 593)))) !== 0) || ((((_la - 625)) & ~0x1f) == 0 && ((1 << (_la - 625)) & ((1 << (SqlParser.REPLICATION_APPLIER - 625)) | (1 << (SqlParser.REPLICATION_SLAVE_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_USER - 625)) | (1 << (SqlParser.ROLE_ADMIN - 625)) | (1 << (SqlParser.SESSION_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.SET_USER_ID - 625)) | (1 << (SqlParser.SHOW_ROUTINE - 625)) | (1 << (SqlParser.SYSTEM_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.TABLE_ENCRYPTION_ADMIN - 625)) | (1 << (SqlParser.VERSION_TOKEN_ADMIN - 625)) | (1 << (SqlParser.XA_RECOVER_ADMIN - 625)) | (1 << (SqlParser.ARMSCII8 - 625)) | (1 << (SqlParser.ASCII - 625)) | (1 << (SqlParser.BIG5 - 625)) | (1 << (SqlParser.CP1250 - 625)) | (1 << (SqlParser.CP1251 - 625)) | (1 << (SqlParser.CP1256 - 625)) | (1 << (SqlParser.CP1257 - 625)) | (1 << (SqlParser.CP850 - 625)) | (1 << (SqlParser.CP852 - 625)) | (1 << (SqlParser.CP866 - 625)) | (1 << (SqlParser.CP932 - 625)) | (1 << (SqlParser.DEC8 - 625)) | (1 << (SqlParser.EUCJPMS - 625)) | (1 << (SqlParser.EUCKR - 625)) | (1 << (SqlParser.GB2312 - 625)) | (1 << (SqlParser.GBK - 625)) | (1 << (SqlParser.GEOSTD8 - 625)) | (1 << (SqlParser.GREEK - 625)) | (1 << (SqlParser.HEBREW - 625)) | (1 << (SqlParser.HP8 - 625)))) !== 0) || ((((_la - 657)) & ~0x1f) == 0 && ((1 << (_la - 657)) & ((1 << (SqlParser.KEYBCS2 - 657)) | (1 << (SqlParser.KOI8R - 657)) | (1 << (SqlParser.KOI8U - 657)) | (1 << (SqlParser.LATIN1 - 657)) | (1 << (SqlParser.LATIN2 - 657)) | (1 << (SqlParser.LATIN5 - 657)) | (1 << (SqlParser.LATIN7 - 657)) | (1 << (SqlParser.MACCE - 657)) | (1 << (SqlParser.MACROMAN - 657)) | (1 << (SqlParser.SJIS - 657)) | (1 << (SqlParser.SWE7 - 657)) | (1 << (SqlParser.TIS620 - 657)) | (1 << (SqlParser.UCS2 - 657)) | (1 << (SqlParser.UJIS - 657)) | (1 << (SqlParser.UTF16 - 657)) | (1 << (SqlParser.UTF16LE - 657)) | (1 << (SqlParser.UTF32 - 657)) | (1 << (SqlParser.UTF8 - 657)) | (1 << (SqlParser.UTF8MB3 - 657)) | (1 << (SqlParser.UTF8MB4 - 657)) | (1 << (SqlParser.ARCHIVE - 657)) | (1 << (SqlParser.BLACKHOLE - 657)) | (1 << (SqlParser.CSV - 657)) | (1 << (SqlParser.FEDERATED - 657)) | (1 << (SqlParser.INNODB - 657)) | (1 << (SqlParser.MEMORY - 657)) | (1 << (SqlParser.MRG_MYISAM - 657)) | (1 << (SqlParser.MYISAM - 657)) | (1 << (SqlParser.NDB - 657)) | (1 << (SqlParser.NDBCLUSTER - 657)) | (1 << (SqlParser.PERFORMANCE_SCHEMA - 657)) | (1 << (SqlParser.TOKUDB - 657)))) !== 0) || ((((_la - 689)) & ~0x1f) == 0 && ((1 << (_la - 689)) & ((1 << (SqlParser.REPEATABLE - 689)) | (1 << (SqlParser.COMMITTED - 689)) | (1 << (SqlParser.UNCOMMITTED - 689)) | (1 << (SqlParser.SERIALIZABLE - 689)) | (1 << (SqlParser.GEOMETRYCOLLECTION - 689)) | (1 << (SqlParser.LINESTRING - 689)) | (1 << (SqlParser.MULTILINESTRING - 689)) | (1 << (SqlParser.MULTIPOINT - 689)) | (1 << (SqlParser.MULTIPOLYGON - 689)) | (1 << (SqlParser.POINT - 689)) | (1 << (SqlParser.POLYGON - 689)) | (1 << (SqlParser.ABS - 689)) | (1 << (SqlParser.ACOS - 689)) | (1 << (SqlParser.ADDDATE - 689)) | (1 << (SqlParser.ADDTIME - 689)) | (1 << (SqlParser.AES_DECRYPT - 689)) | (1 << (SqlParser.AES_ENCRYPT - 689)) | (1 << (SqlParser.AREA - 689)) | (1 << (SqlParser.ASBINARY - 689)) | (1 << (SqlParser.ASIN - 689)) | (1 << (SqlParser.ASTEXT - 689)) | (1 << (SqlParser.ASWKB - 689)) | (1 << (SqlParser.ASWKT - 689)) | (1 << (SqlParser.ASYMMETRIC_DECRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_DERIVE - 689)) | (1 << (SqlParser.ASYMMETRIC_ENCRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_SIGN - 689)) | (1 << (SqlParser.ASYMMETRIC_VERIFY - 689)) | (1 << (SqlParser.ATAN - 689)) | (1 << (SqlParser.ATAN2 - 689)))) !== 0) || ((((_la - 721)) & ~0x1f) == 0 && ((1 << (_la - 721)) & ((1 << (SqlParser.BENCHMARK - 721)) | (1 << (SqlParser.BIN - 721)) | (1 << (SqlParser.BIT_COUNT - 721)) | (1 << (SqlParser.BIT_LENGTH - 721)) | (1 << (SqlParser.BUFFER - 721)) | (1 << (SqlParser.CATALOG_NAME - 721)) | (1 << (SqlParser.CEIL - 721)) | (1 << (SqlParser.CEILING - 721)) | (1 << (SqlParser.CENTROID - 721)) | (1 << (SqlParser.CHARACTER_LENGTH - 721)) | (1 << (SqlParser.CHARSET - 721)) | (1 << (SqlParser.CHAR_LENGTH - 721)) | (1 << (SqlParser.COERCIBILITY - 721)) | (1 << (SqlParser.COLLATION - 721)) | (1 << (SqlParser.COMPRESS - 721)) | (1 << (SqlParser.CONCAT - 721)) | (1 << (SqlParser.CONCAT_WS - 721)) | (1 << (SqlParser.CONNECTION_ID - 721)) | (1 << (SqlParser.CONV - 721)) | (1 << (SqlParser.CONVERT_TZ - 721)) | (1 << (SqlParser.COS - 721)) | (1 << (SqlParser.COT - 721)) | (1 << (SqlParser.CRC32 - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PRIV_KEY - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PUB_KEY - 721)) | (1 << (SqlParser.CREATE_DH_PARAMETERS - 721)) | (1 << (SqlParser.CREATE_DIGEST - 721)) | (1 << (SqlParser.CROSSES - 721)) | (1 << (SqlParser.DATEDIFF - 721)) | (1 << (SqlParser.DATE_FORMAT - 721)) | (1 << (SqlParser.DAYNAME - 721)) | (1 << (SqlParser.DAYOFMONTH - 721)))) !== 0) || ((((_la - 753)) & ~0x1f) == 0 && ((1 << (_la - 753)) & ((1 << (SqlParser.DAYOFWEEK - 753)) | (1 << (SqlParser.DAYOFYEAR - 753)) | (1 << (SqlParser.DECODE - 753)) | (1 << (SqlParser.DEGREES - 753)) | (1 << (SqlParser.DES_DECRYPT - 753)) | (1 << (SqlParser.DES_ENCRYPT - 753)) | (1 << (SqlParser.DIMENSION - 753)) | (1 << (SqlParser.DISJOINT - 753)) | (1 << (SqlParser.ELT - 753)) | (1 << (SqlParser.ENCODE - 753)) | (1 << (SqlParser.ENCRYPT - 753)) | (1 << (SqlParser.ENDPOINT - 753)) | (1 << (SqlParser.ENVELOPE - 753)) | (1 << (SqlParser.EQUALS - 753)) | (1 << (SqlParser.EXP - 753)) | (1 << (SqlParser.EXPORT_SET - 753)) | (1 << (SqlParser.EXTERIORRING - 753)) | (1 << (SqlParser.EXTRACTVALUE - 753)) | (1 << (SqlParser.FIELD - 753)) | (1 << (SqlParser.FIND_IN_SET - 753)) | (1 << (SqlParser.FLOOR - 753)) | (1 << (SqlParser.FORMAT - 753)) | (1 << (SqlParser.FOUND_ROWS - 753)) | (1 << (SqlParser.FROM_BASE64 - 753)) | (1 << (SqlParser.FROM_DAYS - 753)) | (1 << (SqlParser.FROM_UNIXTIME - 753)) | (1 << (SqlParser.GEOMCOLLFROMTEXT - 753)) | (1 << (SqlParser.GEOMCOLLFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYFROMWKB - 753)))) !== 0) || ((((_la - 785)) & ~0x1f) == 0 && ((1 << (_la - 785)) & ((1 << (SqlParser.GEOMETRYN - 785)) | (1 << (SqlParser.GEOMETRYTYPE - 785)) | (1 << (SqlParser.GEOMFROMTEXT - 785)) | (1 << (SqlParser.GEOMFROMWKB - 785)) | (1 << (SqlParser.GET_FORMAT - 785)) | (1 << (SqlParser.GET_LOCK - 785)) | (1 << (SqlParser.GLENGTH - 785)) | (1 << (SqlParser.GREATEST - 785)) | (1 << (SqlParser.GTID_SUBSET - 785)) | (1 << (SqlParser.GTID_SUBTRACT - 785)) | (1 << (SqlParser.HEX - 785)) | (1 << (SqlParser.IFNULL - 785)) | (1 << (SqlParser.INET6_ATON - 785)) | (1 << (SqlParser.INET6_NTOA - 785)) | (1 << (SqlParser.INET_ATON - 785)) | (1 << (SqlParser.INET_NTOA - 785)) | (1 << (SqlParser.INSTR - 785)) | (1 << (SqlParser.INTERIORRINGN - 785)) | (1 << (SqlParser.INTERSECTS - 785)) | (1 << (SqlParser.ISCLOSED - 785)) | (1 << (SqlParser.ISEMPTY - 785)) | (1 << (SqlParser.ISNULL - 785)) | (1 << (SqlParser.ISSIMPLE - 785)) | (1 << (SqlParser.IS_FREE_LOCK - 785)) | (1 << (SqlParser.IS_IPV4 - 785)) | (1 << (SqlParser.IS_IPV4_COMPAT - 785)) | (1 << (SqlParser.IS_IPV4_MAPPED - 785)) | (1 << (SqlParser.IS_IPV6 - 785)) | (1 << (SqlParser.IS_USED_LOCK - 785)) | (1 << (SqlParser.LAST_INSERT_ID - 785)) | (1 << (SqlParser.LCASE - 785)) | (1 << (SqlParser.LEAST - 785)))) !== 0) || ((((_la - 817)) & ~0x1f) == 0 && ((1 << (_la - 817)) & ((1 << (SqlParser.LENGTH - 817)) | (1 << (SqlParser.LINEFROMTEXT - 817)) | (1 << (SqlParser.LINEFROMWKB - 817)) | (1 << (SqlParser.LINESTRINGFROMTEXT - 817)) | (1 << (SqlParser.LINESTRINGFROMWKB - 817)) | (1 << (SqlParser.LN - 817)) | (1 << (SqlParser.LOAD_FILE - 817)) | (1 << (SqlParser.LOCATE - 817)) | (1 << (SqlParser.LOG - 817)) | (1 << (SqlParser.LOG10 - 817)) | (1 << (SqlParser.LOG2 - 817)) | (1 << (SqlParser.LOWER - 817)) | (1 << (SqlParser.LPAD - 817)) | (1 << (SqlParser.LTRIM - 817)) | (1 << (SqlParser.MAKEDATE - 817)) | (1 << (SqlParser.MAKETIME - 817)) | (1 << (SqlParser.MAKE_SET - 817)) | (1 << (SqlParser.MASTER_POS_WAIT - 817)) | (1 << (SqlParser.MBRCONTAINS - 817)) | (1 << (SqlParser.MBRDISJOINT - 817)) | (1 << (SqlParser.MBREQUAL - 817)) | (1 << (SqlParser.MBRINTERSECTS - 817)) | (1 << (SqlParser.MBROVERLAPS - 817)) | (1 << (SqlParser.MBRTOUCHES - 817)) | (1 << (SqlParser.MBRWITHIN - 817)) | (1 << (SqlParser.MD5 - 817)) | (1 << (SqlParser.MLINEFROMTEXT - 817)) | (1 << (SqlParser.MLINEFROMWKB - 817)) | (1 << (SqlParser.MONTHNAME - 817)) | (1 << (SqlParser.MPOINTFROMTEXT - 817)) | (1 << (SqlParser.MPOINTFROMWKB - 817)) | (1 << (SqlParser.MPOLYFROMTEXT - 817)))) !== 0) || ((((_la - 849)) & ~0x1f) == 0 && ((1 << (_la - 849)) & ((1 << (SqlParser.MPOLYFROMWKB - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMTEXT - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMWKB - 849)) | (1 << (SqlParser.MULTIPOINTFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOINTFROMWKB - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMWKB - 849)) | (1 << (SqlParser.NAME_CONST - 849)) | (1 << (SqlParser.NULLIF - 849)) | (1 << (SqlParser.NUMGEOMETRIES - 849)) | (1 << (SqlParser.NUMINTERIORRINGS - 849)) | (1 << (SqlParser.NUMPOINTS - 849)) | (1 << (SqlParser.OCT - 849)) | (1 << (SqlParser.OCTET_LENGTH - 849)) | (1 << (SqlParser.ORD - 849)) | (1 << (SqlParser.OVERLAPS - 849)) | (1 << (SqlParser.PERIOD_ADD - 849)) | (1 << (SqlParser.PERIOD_DIFF - 849)) | (1 << (SqlParser.PI - 849)) | (1 << (SqlParser.POINTFROMTEXT - 849)) | (1 << (SqlParser.POINTFROMWKB - 849)) | (1 << (SqlParser.POINTN - 849)) | (1 << (SqlParser.POLYFROMTEXT - 849)) | (1 << (SqlParser.POLYFROMWKB - 849)) | (1 << (SqlParser.POLYGONFROMTEXT - 849)) | (1 << (SqlParser.POLYGONFROMWKB - 849)) | (1 << (SqlParser.POW - 849)) | (1 << (SqlParser.POWER - 849)) | (1 << (SqlParser.QUOTE - 849)) | (1 << (SqlParser.RADIANS - 849)) | (1 << (SqlParser.RAND - 849)) | (1 << (SqlParser.RANDOM_BYTES - 849)))) !== 0) || ((((_la - 881)) & ~0x1f) == 0 && ((1 << (_la - 881)) & ((1 << (SqlParser.RELEASE_LOCK - 881)) | (1 << (SqlParser.REVERSE - 881)) | (1 << (SqlParser.ROUND - 881)) | (1 << (SqlParser.ROW_COUNT - 881)) | (1 << (SqlParser.RPAD - 881)) | (1 << (SqlParser.RTRIM - 881)) | (1 << (SqlParser.SEC_TO_TIME - 881)) | (1 << (SqlParser.SESSION_USER - 881)) | (1 << (SqlParser.SHA - 881)) | (1 << (SqlParser.SHA1 - 881)) | (1 << (SqlParser.SHA2 - 881)) | (1 << (SqlParser.SCHEMA_NAME - 881)) | (1 << (SqlParser.SIGN - 881)) | (1 << (SqlParser.SIN - 881)) | (1 << (SqlParser.SLEEP - 881)) | (1 << (SqlParser.SOUNDEX - 881)) | (1 << (SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS - 881)) | (1 << (SqlParser.SQRT - 881)) | (1 << (SqlParser.SRID - 881)) | (1 << (SqlParser.STARTPOINT - 881)) | (1 << (SqlParser.STRCMP - 881)) | (1 << (SqlParser.STR_TO_DATE - 881)) | (1 << (SqlParser.ST_AREA - 881)) | (1 << (SqlParser.ST_ASBINARY - 881)) | (1 << (SqlParser.ST_ASTEXT - 881)) | (1 << (SqlParser.ST_ASWKB - 881)) | (1 << (SqlParser.ST_ASWKT - 881)) | (1 << (SqlParser.ST_BUFFER - 881)) | (1 << (SqlParser.ST_CENTROID - 881)) | (1 << (SqlParser.ST_CONTAINS - 881)) | (1 << (SqlParser.ST_CROSSES - 881)) | (1 << (SqlParser.ST_DIFFERENCE - 881)))) !== 0) || ((((_la - 913)) & ~0x1f) == 0 && ((1 << (_la - 913)) & ((1 << (SqlParser.ST_DIMENSION - 913)) | (1 << (SqlParser.ST_DISJOINT - 913)) | (1 << (SqlParser.ST_DISTANCE - 913)) | (1 << (SqlParser.ST_ENDPOINT - 913)) | (1 << (SqlParser.ST_ENVELOPE - 913)) | (1 << (SqlParser.ST_EQUALS - 913)) | (1 << (SqlParser.ST_EXTERIORRING - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYN - 913)) | (1 << (SqlParser.ST_GEOMETRYTYPE - 913)) | (1 << (SqlParser.ST_GEOMFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMFROMWKB - 913)) | (1 << (SqlParser.ST_INTERIORRINGN - 913)) | (1 << (SqlParser.ST_INTERSECTION - 913)) | (1 << (SqlParser.ST_INTERSECTS - 913)) | (1 << (SqlParser.ST_ISCLOSED - 913)) | (1 << (SqlParser.ST_ISEMPTY - 913)) | (1 << (SqlParser.ST_ISSIMPLE - 913)) | (1 << (SqlParser.ST_LINEFROMTEXT - 913)) | (1 << (SqlParser.ST_LINEFROMWKB - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMTEXT - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMWKB - 913)) | (1 << (SqlParser.ST_NUMGEOMETRIES - 913)) | (1 << (SqlParser.ST_NUMINTERIORRING - 913)) | (1 << (SqlParser.ST_NUMINTERIORRINGS - 913)) | (1 << (SqlParser.ST_NUMPOINTS - 913)))) !== 0) || ((((_la - 945)) & ~0x1f) == 0 && ((1 << (_la - 945)) & ((1 << (SqlParser.ST_OVERLAPS - 945)) | (1 << (SqlParser.ST_POINTFROMTEXT - 945)) | (1 << (SqlParser.ST_POINTFROMWKB - 945)) | (1 << (SqlParser.ST_POINTN - 945)) | (1 << (SqlParser.ST_POLYFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYFROMWKB - 945)) | (1 << (SqlParser.ST_POLYGONFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYGONFROMWKB - 945)) | (1 << (SqlParser.ST_SRID - 945)) | (1 << (SqlParser.ST_STARTPOINT - 945)) | (1 << (SqlParser.ST_SYMDIFFERENCE - 945)) | (1 << (SqlParser.ST_TOUCHES - 945)) | (1 << (SqlParser.ST_UNION - 945)) | (1 << (SqlParser.ST_WITHIN - 945)) | (1 << (SqlParser.ST_X - 945)) | (1 << (SqlParser.ST_Y - 945)) | (1 << (SqlParser.SUBDATE - 945)) | (1 << (SqlParser.SUBSTRING_INDEX - 945)) | (1 << (SqlParser.SUBTIME - 945)) | (1 << (SqlParser.SYSTEM_USER - 945)) | (1 << (SqlParser.TAN - 945)) | (1 << (SqlParser.TIMEDIFF - 945)) | (1 << (SqlParser.TIMESTAMPADD - 945)) | (1 << (SqlParser.TIMESTAMPDIFF - 945)) | (1 << (SqlParser.TIME_FORMAT - 945)) | (1 << (SqlParser.TIME_TO_SEC - 945)) | (1 << (SqlParser.TOUCHES - 945)) | (1 << (SqlParser.TO_BASE64 - 945)) | (1 << (SqlParser.TO_DAYS - 945)) | (1 << (SqlParser.TO_SECONDS - 945)) | (1 << (SqlParser.UCASE - 945)) | (1 << (SqlParser.UNCOMPRESS - 945)))) !== 0) || ((((_la - 977)) & ~0x1f) == 0 && ((1 << (_la - 977)) & ((1 << (SqlParser.UNCOMPRESSED_LENGTH - 977)) | (1 << (SqlParser.UNHEX - 977)) | (1 << (SqlParser.UNIX_TIMESTAMP - 977)) | (1 << (SqlParser.UPDATEXML - 977)) | (1 << (SqlParser.UPPER - 977)) | (1 << (SqlParser.UUID - 977)) | (1 << (SqlParser.UUID_SHORT - 977)) | (1 << (SqlParser.VALIDATE_PASSWORD_STRENGTH - 977)) | (1 << (SqlParser.VERSION - 977)) | (1 << (SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS - 977)) | (1 << (SqlParser.WEEKDAY - 977)) | (1 << (SqlParser.WEEKOFYEAR - 977)) | (1 << (SqlParser.WEIGHT_STRING - 977)) | (1 << (SqlParser.WITHIN - 977)) | (1 << (SqlParser.YEARWEEK - 977)) | (1 << (SqlParser.Y_FUNCTION - 977)) | (1 << (SqlParser.X_FUNCTION - 977)))) !== 0) || ((((_la - 1032)) & ~0x1f) == 0 && ((1 << (_la - 1032)) & ((1 << (SqlParser.CHARSET_REVERSE_QOUTE_STRING - 1032)) | (1 << (SqlParser.STRING_LITERAL - 1032)) | (1 << (SqlParser.ID - 1032)) | (1 << (SqlParser.REVERSE_QUOTE_ID - 1032)))) !== 0)) {
+ this.state = 2365;
+ this.uid();
+ }
+
+ this.state = 2368;
+ this.indexColumnNames();
+ this.state = 2372;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.USING || _la===SqlParser.WITH || _la===SqlParser.COMMENT || _la===SqlParser.INVISIBLE || _la===SqlParser.KEY_BLOCK_SIZE || _la===SqlParser.VISIBLE) {
+ this.state = 2369;
+ this.indexOption();
+ this.state = 2374;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+
+ case 8:
+ localctx = new AlterByAddForeignKeyContext(this, localctx);
+ this.enterOuterAlt(localctx, 8);
+ this.state = 2375;
+ this.match(SqlParser.ADD);
+ this.state = 2380;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.CONSTRAINT) {
+ this.state = 2376;
+ this.match(SqlParser.CONSTRAINT);
+ this.state = 2378;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (SqlParser.CURRENT - 32)) | (1 << (SqlParser.DATABASE - 32)) | (1 << (SqlParser.DIAGNOSTICS - 32)))) !== 0) || _la===SqlParser.LEFT || _la===SqlParser.NUMBER || _la===SqlParser.RIGHT || _la===SqlParser.STACKED || ((((_la - 199)) & ~0x1f) == 0 && ((1 << (_la - 199)) & ((1 << (SqlParser.DATE - 199)) | (1 << (SqlParser.TIME - 199)) | (1 << (SqlParser.TIMESTAMP - 199)) | (1 << (SqlParser.DATETIME - 199)) | (1 << (SqlParser.YEAR - 199)) | (1 << (SqlParser.TEXT - 199)) | (1 << (SqlParser.ENUM - 199)) | (1 << (SqlParser.SERIAL - 199)))) !== 0) || ((((_la - 233)) & ~0x1f) == 0 && ((1 << (_la - 233)) & ((1 << (SqlParser.JSON_VALID - 233)) | (1 << (SqlParser.JSON_SCHEMA_VALID - 233)) | (1 << (SqlParser.COUNT - 233)) | (1 << (SqlParser.POSITION - 233)))) !== 0) || ((((_la - 270)) & ~0x1f) == 0 && ((1 << (_la - 270)) & ((1 << (SqlParser.ACCOUNT - 270)) | (1 << (SqlParser.ACTION - 270)) | (1 << (SqlParser.AFTER - 270)) | (1 << (SqlParser.AGGREGATE - 270)) | (1 << (SqlParser.ALGORITHM - 270)) | (1 << (SqlParser.ANY - 270)) | (1 << (SqlParser.AT - 270)) | (1 << (SqlParser.AUTHORS - 270)) | (1 << (SqlParser.AUTOCOMMIT - 270)) | (1 << (SqlParser.AUTOEXTEND_SIZE - 270)) | (1 << (SqlParser.AUTO_INCREMENT - 270)) | (1 << (SqlParser.AVG_ROW_LENGTH - 270)) | (1 << (SqlParser.BEGIN - 270)) | (1 << (SqlParser.BINLOG - 270)) | (1 << (SqlParser.BIT - 270)) | (1 << (SqlParser.BLOCK - 270)) | (1 << (SqlParser.BOOL - 270)) | (1 << (SqlParser.BOOLEAN - 270)) | (1 << (SqlParser.BTREE - 270)) | (1 << (SqlParser.CACHE - 270)) | (1 << (SqlParser.CASCADED - 270)) | (1 << (SqlParser.CHAIN - 270)) | (1 << (SqlParser.CHANGED - 270)) | (1 << (SqlParser.CHANNEL - 270)) | (1 << (SqlParser.CHECKSUM - 270)) | (1 << (SqlParser.PAGE_CHECKSUM - 270)) | (1 << (SqlParser.CIPHER - 270)) | (1 << (SqlParser.CLASS_ORIGIN - 270)) | (1 << (SqlParser.CLIENT - 270)) | (1 << (SqlParser.CLOSE - 270)) | (1 << (SqlParser.COALESCE - 270)) | (1 << (SqlParser.CODE - 270)))) !== 0) || ((((_la - 302)) & ~0x1f) == 0 && ((1 << (_la - 302)) & ((1 << (SqlParser.COLUMNS - 302)) | (1 << (SqlParser.COLUMN_FORMAT - 302)) | (1 << (SqlParser.COLUMN_NAME - 302)) | (1 << (SqlParser.COMMENT - 302)) | (1 << (SqlParser.COMMIT - 302)) | (1 << (SqlParser.COMPACT - 302)) | (1 << (SqlParser.COMPLETION - 302)) | (1 << (SqlParser.COMPRESSED - 302)) | (1 << (SqlParser.COMPRESSION - 302)) | (1 << (SqlParser.CONCURRENT - 302)) | (1 << (SqlParser.CONNECTION - 302)) | (1 << (SqlParser.CONSISTENT - 302)) | (1 << (SqlParser.CONSTRAINT_CATALOG - 302)) | (1 << (SqlParser.CONSTRAINT_SCHEMA - 302)) | (1 << (SqlParser.CONSTRAINT_NAME - 302)) | (1 << (SqlParser.CONTAINS - 302)) | (1 << (SqlParser.CONTEXT - 302)) | (1 << (SqlParser.CONTRIBUTORS - 302)) | (1 << (SqlParser.COPY - 302)) | (1 << (SqlParser.CPU - 302)) | (1 << (SqlParser.CURSOR_NAME - 302)) | (1 << (SqlParser.DATA - 302)) | (1 << (SqlParser.DATAFILE - 302)) | (1 << (SqlParser.DEALLOCATE - 302)) | (1 << (SqlParser.DEFAULT_AUTH - 302)) | (1 << (SqlParser.DEFINER - 302)) | (1 << (SqlParser.DELAY_KEY_WRITE - 302)) | (1 << (SqlParser.DES_KEY_FILE - 302)) | (1 << (SqlParser.DIRECTORY - 302)) | (1 << (SqlParser.DISABLE - 302)) | (1 << (SqlParser.DISCARD - 302)) | (1 << (SqlParser.DISK - 302)))) !== 0) || ((((_la - 334)) & ~0x1f) == 0 && ((1 << (_la - 334)) & ((1 << (SqlParser.DO - 334)) | (1 << (SqlParser.DUMPFILE - 334)) | (1 << (SqlParser.DUPLICATE - 334)) | (1 << (SqlParser.DYNAMIC - 334)) | (1 << (SqlParser.ENABLE - 334)) | (1 << (SqlParser.ENCRYPTION - 334)) | (1 << (SqlParser.END - 334)) | (1 << (SqlParser.ENDS - 334)) | (1 << (SqlParser.ENGINE - 334)) | (1 << (SqlParser.ENGINES - 334)) | (1 << (SqlParser.ERROR - 334)) | (1 << (SqlParser.ERRORS - 334)) | (1 << (SqlParser.ESCAPE - 334)) | (1 << (SqlParser.EVEN - 334)) | (1 << (SqlParser.EVENT - 334)) | (1 << (SqlParser.EVENTS - 334)) | (1 << (SqlParser.EVERY - 334)) | (1 << (SqlParser.EXCHANGE - 334)) | (1 << (SqlParser.EXCLUSIVE - 334)) | (1 << (SqlParser.EXPIRE - 334)) | (1 << (SqlParser.EXPORT - 334)) | (1 << (SqlParser.EXTENDED - 334)) | (1 << (SqlParser.EXTENT_SIZE - 334)) | (1 << (SqlParser.FAST - 334)) | (1 << (SqlParser.FAULTS - 334)) | (1 << (SqlParser.FIELDS - 334)) | (1 << (SqlParser.FILE_BLOCK_SIZE - 334)) | (1 << (SqlParser.FILTER - 334)) | (1 << (SqlParser.FIRST - 334)) | (1 << (SqlParser.FIXED - 334)) | (1 << (SqlParser.FLUSH - 334)) | (1 << (SqlParser.FOLLOWS - 334)))) !== 0) || ((((_la - 366)) & ~0x1f) == 0 && ((1 << (_la - 366)) & ((1 << (SqlParser.FOUND - 366)) | (1 << (SqlParser.FULL - 366)) | (1 << (SqlParser.FUNCTION - 366)) | (1 << (SqlParser.GENERAL - 366)) | (1 << (SqlParser.GLOBAL - 366)) | (1 << (SqlParser.GRANTS - 366)) | (1 << (SqlParser.GROUP_REPLICATION - 366)) | (1 << (SqlParser.HANDLER - 366)) | (1 << (SqlParser.HASH - 366)) | (1 << (SqlParser.HELP - 366)) | (1 << (SqlParser.HOST - 366)) | (1 << (SqlParser.HOSTS - 366)) | (1 << (SqlParser.IDENTIFIED - 366)) | (1 << (SqlParser.IGNORE_SERVER_IDS - 366)) | (1 << (SqlParser.IMPORT - 366)) | (1 << (SqlParser.INDEXES - 366)) | (1 << (SqlParser.INITIAL_SIZE - 366)) | (1 << (SqlParser.INPLACE - 366)) | (1 << (SqlParser.INSERT_METHOD - 366)) | (1 << (SqlParser.INSTALL - 366)) | (1 << (SqlParser.INSTANCE - 366)) | (1 << (SqlParser.INVISIBLE - 366)) | (1 << (SqlParser.INVOKER - 366)) | (1 << (SqlParser.IO - 366)) | (1 << (SqlParser.IO_THREAD - 366)) | (1 << (SqlParser.IPC - 366)) | (1 << (SqlParser.ISOLATION - 366)) | (1 << (SqlParser.ISSUER - 366)) | (1 << (SqlParser.JSON - 366)) | (1 << (SqlParser.KEY_BLOCK_SIZE - 366)) | (1 << (SqlParser.LANGUAGE - 366)) | (1 << (SqlParser.LAST - 366)))) !== 0) || ((((_la - 398)) & ~0x1f) == 0 && ((1 << (_la - 398)) & ((1 << (SqlParser.LEAVES - 398)) | (1 << (SqlParser.LESS - 398)) | (1 << (SqlParser.LEVEL - 398)) | (1 << (SqlParser.LIST - 398)) | (1 << (SqlParser.LOCAL - 398)) | (1 << (SqlParser.LOGFILE - 398)) | (1 << (SqlParser.LOGS - 398)) | (1 << (SqlParser.MASTER - 398)) | (1 << (SqlParser.MASTER_AUTO_POSITION - 398)) | (1 << (SqlParser.MASTER_CONNECT_RETRY - 398)) | (1 << (SqlParser.MASTER_DELAY - 398)) | (1 << (SqlParser.MASTER_HEARTBEAT_PERIOD - 398)) | (1 << (SqlParser.MASTER_HOST - 398)) | (1 << (SqlParser.MASTER_LOG_FILE - 398)) | (1 << (SqlParser.MASTER_LOG_POS - 398)) | (1 << (SqlParser.MASTER_PASSWORD - 398)) | (1 << (SqlParser.MASTER_PORT - 398)) | (1 << (SqlParser.MASTER_RETRY_COUNT - 398)) | (1 << (SqlParser.MASTER_SSL - 398)) | (1 << (SqlParser.MASTER_SSL_CA - 398)) | (1 << (SqlParser.MASTER_SSL_CAPATH - 398)) | (1 << (SqlParser.MASTER_SSL_CERT - 398)) | (1 << (SqlParser.MASTER_SSL_CIPHER - 398)) | (1 << (SqlParser.MASTER_SSL_CRL - 398)) | (1 << (SqlParser.MASTER_SSL_CRLPATH - 398)) | (1 << (SqlParser.MASTER_SSL_KEY - 398)) | (1 << (SqlParser.MASTER_TLS_VERSION - 398)) | (1 << (SqlParser.MASTER_USER - 398)) | (1 << (SqlParser.MAX_CONNECTIONS_PER_HOUR - 398)) | (1 << (SqlParser.MAX_QUERIES_PER_HOUR - 398)) | (1 << (SqlParser.MAX_ROWS - 398)) | (1 << (SqlParser.MAX_SIZE - 398)))) !== 0) || ((((_la - 430)) & ~0x1f) == 0 && ((1 << (_la - 430)) & ((1 << (SqlParser.MAX_UPDATES_PER_HOUR - 430)) | (1 << (SqlParser.MAX_USER_CONNECTIONS - 430)) | (1 << (SqlParser.MEDIUM - 430)) | (1 << (SqlParser.MERGE - 430)) | (1 << (SqlParser.MESSAGE_TEXT - 430)) | (1 << (SqlParser.MID - 430)) | (1 << (SqlParser.MIGRATE - 430)) | (1 << (SqlParser.MIN_ROWS - 430)) | (1 << (SqlParser.MODE - 430)) | (1 << (SqlParser.MODIFY - 430)) | (1 << (SqlParser.MUTEX - 430)) | (1 << (SqlParser.MYSQL - 430)) | (1 << (SqlParser.MYSQL_ERRNO - 430)) | (1 << (SqlParser.NAME - 430)) | (1 << (SqlParser.NAMES - 430)) | (1 << (SqlParser.NCHAR - 430)) | (1 << (SqlParser.NEVER - 430)) | (1 << (SqlParser.NEXT - 430)) | (1 << (SqlParser.NO - 430)) | (1 << (SqlParser.NODEGROUP - 430)) | (1 << (SqlParser.NONE - 430)) | (1 << (SqlParser.OFFLINE - 430)) | (1 << (SqlParser.OFFSET - 430)) | (1 << (SqlParser.OJ - 430)) | (1 << (SqlParser.OLD_PASSWORD - 430)) | (1 << (SqlParser.ONE - 430)) | (1 << (SqlParser.ONLINE - 430)) | (1 << (SqlParser.ONLY - 430)) | (1 << (SqlParser.OPEN - 430)) | (1 << (SqlParser.OPTIMIZER_COSTS - 430)) | (1 << (SqlParser.OPTIONS - 430)) | (1 << (SqlParser.OWNER - 430)))) !== 0) || ((((_la - 462)) & ~0x1f) == 0 && ((1 << (_la - 462)) & ((1 << (SqlParser.PACK_KEYS - 462)) | (1 << (SqlParser.PAGE - 462)) | (1 << (SqlParser.PARSER - 462)) | (1 << (SqlParser.PARTIAL - 462)) | (1 << (SqlParser.PARTITIONING - 462)) | (1 << (SqlParser.PARTITIONS - 462)) | (1 << (SqlParser.PASSWORD - 462)) | (1 << (SqlParser.PHASE - 462)) | (1 << (SqlParser.PLUGIN - 462)) | (1 << (SqlParser.PLUGIN_DIR - 462)) | (1 << (SqlParser.PLUGINS - 462)) | (1 << (SqlParser.PORT - 462)) | (1 << (SqlParser.PRECEDES - 462)) | (1 << (SqlParser.PREPARE - 462)) | (1 << (SqlParser.PRESERVE - 462)) | (1 << (SqlParser.PREV - 462)) | (1 << (SqlParser.PROCESSLIST - 462)) | (1 << (SqlParser.PROFILE - 462)) | (1 << (SqlParser.PROFILES - 462)) | (1 << (SqlParser.PROXY - 462)) | (1 << (SqlParser.QUERY - 462)) | (1 << (SqlParser.QUICK - 462)) | (1 << (SqlParser.REBUILD - 462)) | (1 << (SqlParser.RECOVER - 462)) | (1 << (SqlParser.REDO_BUFFER_SIZE - 462)) | (1 << (SqlParser.REDUNDANT - 462)) | (1 << (SqlParser.RELAY - 462)) | (1 << (SqlParser.RELAY_LOG_FILE - 462)) | (1 << (SqlParser.RELAY_LOG_POS - 462)) | (1 << (SqlParser.RELAYLOG - 462)) | (1 << (SqlParser.REMOVE - 462)) | (1 << (SqlParser.REORGANIZE - 462)))) !== 0) || ((((_la - 494)) & ~0x1f) == 0 && ((1 << (_la - 494)) & ((1 << (SqlParser.REPAIR - 494)) | (1 << (SqlParser.REPLICATE_DO_DB - 494)) | (1 << (SqlParser.REPLICATE_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_DB - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATE_REWRITE_DB - 494)) | (1 << (SqlParser.REPLICATE_WILD_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_WILD_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATION - 494)) | (1 << (SqlParser.RESET - 494)) | (1 << (SqlParser.RESUME - 494)) | (1 << (SqlParser.RETURNED_SQLSTATE - 494)) | (1 << (SqlParser.RETURNS - 494)) | (1 << (SqlParser.ROLE - 494)) | (1 << (SqlParser.ROLLBACK - 494)) | (1 << (SqlParser.ROLLUP - 494)) | (1 << (SqlParser.ROTATE - 494)) | (1 << (SqlParser.ROW - 494)) | (1 << (SqlParser.ROWS - 494)) | (1 << (SqlParser.ROW_FORMAT - 494)) | (1 << (SqlParser.SAVEPOINT - 494)) | (1 << (SqlParser.SCHEDULE - 494)) | (1 << (SqlParser.SECURITY - 494)) | (1 << (SqlParser.SERVER - 494)) | (1 << (SqlParser.SESSION - 494)) | (1 << (SqlParser.SHARE - 494)) | (1 << (SqlParser.SHARED - 494)) | (1 << (SqlParser.SIGNED - 494)) | (1 << (SqlParser.SIMPLE - 494)) | (1 << (SqlParser.SLAVE - 494)) | (1 << (SqlParser.SLOW - 494)) | (1 << (SqlParser.SNAPSHOT - 494)))) !== 0) || ((((_la - 526)) & ~0x1f) == 0 && ((1 << (_la - 526)) & ((1 << (SqlParser.SOCKET - 526)) | (1 << (SqlParser.SOME - 526)) | (1 << (SqlParser.SONAME - 526)) | (1 << (SqlParser.SOUNDS - 526)) | (1 << (SqlParser.SOURCE - 526)) | (1 << (SqlParser.SQL_AFTER_GTIDS - 526)) | (1 << (SqlParser.SQL_AFTER_MTS_GAPS - 526)) | (1 << (SqlParser.SQL_BEFORE_GTIDS - 526)) | (1 << (SqlParser.SQL_BUFFER_RESULT - 526)) | (1 << (SqlParser.SQL_CACHE - 526)) | (1 << (SqlParser.SQL_NO_CACHE - 526)) | (1 << (SqlParser.SQL_THREAD - 526)) | (1 << (SqlParser.START - 526)) | (1 << (SqlParser.STARTS - 526)) | (1 << (SqlParser.STATS_AUTO_RECALC - 526)) | (1 << (SqlParser.STATS_PERSISTENT - 526)) | (1 << (SqlParser.STATS_SAMPLE_PAGES - 526)) | (1 << (SqlParser.STATUS - 526)) | (1 << (SqlParser.STOP - 526)) | (1 << (SqlParser.STORAGE - 526)) | (1 << (SqlParser.STRING - 526)) | (1 << (SqlParser.SUBCLASS_ORIGIN - 526)) | (1 << (SqlParser.SUBJECT - 526)) | (1 << (SqlParser.SUBPARTITION - 526)) | (1 << (SqlParser.SUBPARTITIONS - 526)) | (1 << (SqlParser.SUSPEND - 526)) | (1 << (SqlParser.SWAPS - 526)) | (1 << (SqlParser.SWITCHES - 526)) | (1 << (SqlParser.TABLE_NAME - 526)) | (1 << (SqlParser.TABLESPACE - 526)) | (1 << (SqlParser.TEMPORARY - 526)))) !== 0) || ((((_la - 558)) & ~0x1f) == 0 && ((1 << (_la - 558)) & ((1 << (SqlParser.TEMPTABLE - 558)) | (1 << (SqlParser.THAN - 558)) | (1 << (SqlParser.TRADITIONAL - 558)) | (1 << (SqlParser.TRANSACTION - 558)) | (1 << (SqlParser.TRANSACTIONAL - 558)) | (1 << (SqlParser.TRIGGERS - 558)) | (1 << (SqlParser.TRUNCATE - 558)) | (1 << (SqlParser.UNDEFINED - 558)) | (1 << (SqlParser.UNDOFILE - 558)) | (1 << (SqlParser.UNDO_BUFFER_SIZE - 558)) | (1 << (SqlParser.UNINSTALL - 558)) | (1 << (SqlParser.UNKNOWN - 558)) | (1 << (SqlParser.UNTIL - 558)) | (1 << (SqlParser.UPGRADE - 558)) | (1 << (SqlParser.USER - 558)) | (1 << (SqlParser.USE_FRM - 558)) | (1 << (SqlParser.USER_RESOURCES - 558)) | (1 << (SqlParser.VALIDATION - 558)) | (1 << (SqlParser.VALUE - 558)) | (1 << (SqlParser.VARIABLES - 558)) | (1 << (SqlParser.VIEW - 558)) | (1 << (SqlParser.VISIBLE - 558)) | (1 << (SqlParser.WAIT - 558)) | (1 << (SqlParser.WARNINGS - 558)) | (1 << (SqlParser.WITHOUT - 558)) | (1 << (SqlParser.WORK - 558)) | (1 << (SqlParser.WRAPPER - 558)) | (1 << (SqlParser.X509 - 558)) | (1 << (SqlParser.XA - 558)) | (1 << (SqlParser.XML - 558)))) !== 0) || ((((_la - 593)) & ~0x1f) == 0 && ((1 << (_la - 593)) & ((1 << (SqlParser.INTERNAL - 593)) | (1 << (SqlParser.QUARTER - 593)) | (1 << (SqlParser.MONTH - 593)) | (1 << (SqlParser.DAY - 593)) | (1 << (SqlParser.HOUR - 593)) | (1 << (SqlParser.MINUTE - 593)) | (1 << (SqlParser.WEEK - 593)) | (1 << (SqlParser.SECOND - 593)) | (1 << (SqlParser.MICROSECOND - 593)) | (1 << (SqlParser.TABLES - 593)) | (1 << (SqlParser.ROUTINE - 593)) | (1 << (SqlParser.EXECUTE - 593)) | (1 << (SqlParser.FILE - 593)) | (1 << (SqlParser.PROCESS - 593)) | (1 << (SqlParser.RELOAD - 593)) | (1 << (SqlParser.SHUTDOWN - 593)) | (1 << (SqlParser.SUPER - 593)) | (1 << (SqlParser.PRIVILEGES - 593)) | (1 << (SqlParser.AUDIT_ADMIN - 593)) | (1 << (SqlParser.BACKUP_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ENCRYPTION_ADMIN - 593)) | (1 << (SqlParser.CLONE_ADMIN - 593)) | (1 << (SqlParser.CONNECTION_ADMIN - 593)) | (1 << (SqlParser.ENCRYPTION_KEY_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_USER - 593)) | (1 << (SqlParser.GROUP_REPLICATION_ADMIN - 593)) | (1 << (SqlParser.INNODB_REDO_LOG_ARCHIVE - 593)) | (1 << (SqlParser.NDB_STORED_USER - 593)) | (1 << (SqlParser.PERSIST_RO_VARIABLES_ADMIN - 593)))) !== 0) || ((((_la - 625)) & ~0x1f) == 0 && ((1 << (_la - 625)) & ((1 << (SqlParser.REPLICATION_APPLIER - 625)) | (1 << (SqlParser.REPLICATION_SLAVE_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_USER - 625)) | (1 << (SqlParser.ROLE_ADMIN - 625)) | (1 << (SqlParser.SESSION_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.SET_USER_ID - 625)) | (1 << (SqlParser.SHOW_ROUTINE - 625)) | (1 << (SqlParser.SYSTEM_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.TABLE_ENCRYPTION_ADMIN - 625)) | (1 << (SqlParser.VERSION_TOKEN_ADMIN - 625)) | (1 << (SqlParser.XA_RECOVER_ADMIN - 625)) | (1 << (SqlParser.ARMSCII8 - 625)) | (1 << (SqlParser.ASCII - 625)) | (1 << (SqlParser.BIG5 - 625)) | (1 << (SqlParser.CP1250 - 625)) | (1 << (SqlParser.CP1251 - 625)) | (1 << (SqlParser.CP1256 - 625)) | (1 << (SqlParser.CP1257 - 625)) | (1 << (SqlParser.CP850 - 625)) | (1 << (SqlParser.CP852 - 625)) | (1 << (SqlParser.CP866 - 625)) | (1 << (SqlParser.CP932 - 625)) | (1 << (SqlParser.DEC8 - 625)) | (1 << (SqlParser.EUCJPMS - 625)) | (1 << (SqlParser.EUCKR - 625)) | (1 << (SqlParser.GB2312 - 625)) | (1 << (SqlParser.GBK - 625)) | (1 << (SqlParser.GEOSTD8 - 625)) | (1 << (SqlParser.GREEK - 625)) | (1 << (SqlParser.HEBREW - 625)) | (1 << (SqlParser.HP8 - 625)))) !== 0) || ((((_la - 657)) & ~0x1f) == 0 && ((1 << (_la - 657)) & ((1 << (SqlParser.KEYBCS2 - 657)) | (1 << (SqlParser.KOI8R - 657)) | (1 << (SqlParser.KOI8U - 657)) | (1 << (SqlParser.LATIN1 - 657)) | (1 << (SqlParser.LATIN2 - 657)) | (1 << (SqlParser.LATIN5 - 657)) | (1 << (SqlParser.LATIN7 - 657)) | (1 << (SqlParser.MACCE - 657)) | (1 << (SqlParser.MACROMAN - 657)) | (1 << (SqlParser.SJIS - 657)) | (1 << (SqlParser.SWE7 - 657)) | (1 << (SqlParser.TIS620 - 657)) | (1 << (SqlParser.UCS2 - 657)) | (1 << (SqlParser.UJIS - 657)) | (1 << (SqlParser.UTF16 - 657)) | (1 << (SqlParser.UTF16LE - 657)) | (1 << (SqlParser.UTF32 - 657)) | (1 << (SqlParser.UTF8 - 657)) | (1 << (SqlParser.UTF8MB3 - 657)) | (1 << (SqlParser.UTF8MB4 - 657)) | (1 << (SqlParser.ARCHIVE - 657)) | (1 << (SqlParser.BLACKHOLE - 657)) | (1 << (SqlParser.CSV - 657)) | (1 << (SqlParser.FEDERATED - 657)) | (1 << (SqlParser.INNODB - 657)) | (1 << (SqlParser.MEMORY - 657)) | (1 << (SqlParser.MRG_MYISAM - 657)) | (1 << (SqlParser.MYISAM - 657)) | (1 << (SqlParser.NDB - 657)) | (1 << (SqlParser.NDBCLUSTER - 657)) | (1 << (SqlParser.PERFORMANCE_SCHEMA - 657)) | (1 << (SqlParser.TOKUDB - 657)))) !== 0) || ((((_la - 689)) & ~0x1f) == 0 && ((1 << (_la - 689)) & ((1 << (SqlParser.REPEATABLE - 689)) | (1 << (SqlParser.COMMITTED - 689)) | (1 << (SqlParser.UNCOMMITTED - 689)) | (1 << (SqlParser.SERIALIZABLE - 689)) | (1 << (SqlParser.GEOMETRYCOLLECTION - 689)) | (1 << (SqlParser.LINESTRING - 689)) | (1 << (SqlParser.MULTILINESTRING - 689)) | (1 << (SqlParser.MULTIPOINT - 689)) | (1 << (SqlParser.MULTIPOLYGON - 689)) | (1 << (SqlParser.POINT - 689)) | (1 << (SqlParser.POLYGON - 689)) | (1 << (SqlParser.ABS - 689)) | (1 << (SqlParser.ACOS - 689)) | (1 << (SqlParser.ADDDATE - 689)) | (1 << (SqlParser.ADDTIME - 689)) | (1 << (SqlParser.AES_DECRYPT - 689)) | (1 << (SqlParser.AES_ENCRYPT - 689)) | (1 << (SqlParser.AREA - 689)) | (1 << (SqlParser.ASBINARY - 689)) | (1 << (SqlParser.ASIN - 689)) | (1 << (SqlParser.ASTEXT - 689)) | (1 << (SqlParser.ASWKB - 689)) | (1 << (SqlParser.ASWKT - 689)) | (1 << (SqlParser.ASYMMETRIC_DECRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_DERIVE - 689)) | (1 << (SqlParser.ASYMMETRIC_ENCRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_SIGN - 689)) | (1 << (SqlParser.ASYMMETRIC_VERIFY - 689)) | (1 << (SqlParser.ATAN - 689)) | (1 << (SqlParser.ATAN2 - 689)))) !== 0) || ((((_la - 721)) & ~0x1f) == 0 && ((1 << (_la - 721)) & ((1 << (SqlParser.BENCHMARK - 721)) | (1 << (SqlParser.BIN - 721)) | (1 << (SqlParser.BIT_COUNT - 721)) | (1 << (SqlParser.BIT_LENGTH - 721)) | (1 << (SqlParser.BUFFER - 721)) | (1 << (SqlParser.CATALOG_NAME - 721)) | (1 << (SqlParser.CEIL - 721)) | (1 << (SqlParser.CEILING - 721)) | (1 << (SqlParser.CENTROID - 721)) | (1 << (SqlParser.CHARACTER_LENGTH - 721)) | (1 << (SqlParser.CHARSET - 721)) | (1 << (SqlParser.CHAR_LENGTH - 721)) | (1 << (SqlParser.COERCIBILITY - 721)) | (1 << (SqlParser.COLLATION - 721)) | (1 << (SqlParser.COMPRESS - 721)) | (1 << (SqlParser.CONCAT - 721)) | (1 << (SqlParser.CONCAT_WS - 721)) | (1 << (SqlParser.CONNECTION_ID - 721)) | (1 << (SqlParser.CONV - 721)) | (1 << (SqlParser.CONVERT_TZ - 721)) | (1 << (SqlParser.COS - 721)) | (1 << (SqlParser.COT - 721)) | (1 << (SqlParser.CRC32 - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PRIV_KEY - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PUB_KEY - 721)) | (1 << (SqlParser.CREATE_DH_PARAMETERS - 721)) | (1 << (SqlParser.CREATE_DIGEST - 721)) | (1 << (SqlParser.CROSSES - 721)) | (1 << (SqlParser.DATEDIFF - 721)) | (1 << (SqlParser.DATE_FORMAT - 721)) | (1 << (SqlParser.DAYNAME - 721)) | (1 << (SqlParser.DAYOFMONTH - 721)))) !== 0) || ((((_la - 753)) & ~0x1f) == 0 && ((1 << (_la - 753)) & ((1 << (SqlParser.DAYOFWEEK - 753)) | (1 << (SqlParser.DAYOFYEAR - 753)) | (1 << (SqlParser.DECODE - 753)) | (1 << (SqlParser.DEGREES - 753)) | (1 << (SqlParser.DES_DECRYPT - 753)) | (1 << (SqlParser.DES_ENCRYPT - 753)) | (1 << (SqlParser.DIMENSION - 753)) | (1 << (SqlParser.DISJOINT - 753)) | (1 << (SqlParser.ELT - 753)) | (1 << (SqlParser.ENCODE - 753)) | (1 << (SqlParser.ENCRYPT - 753)) | (1 << (SqlParser.ENDPOINT - 753)) | (1 << (SqlParser.ENVELOPE - 753)) | (1 << (SqlParser.EQUALS - 753)) | (1 << (SqlParser.EXP - 753)) | (1 << (SqlParser.EXPORT_SET - 753)) | (1 << (SqlParser.EXTERIORRING - 753)) | (1 << (SqlParser.EXTRACTVALUE - 753)) | (1 << (SqlParser.FIELD - 753)) | (1 << (SqlParser.FIND_IN_SET - 753)) | (1 << (SqlParser.FLOOR - 753)) | (1 << (SqlParser.FORMAT - 753)) | (1 << (SqlParser.FOUND_ROWS - 753)) | (1 << (SqlParser.FROM_BASE64 - 753)) | (1 << (SqlParser.FROM_DAYS - 753)) | (1 << (SqlParser.FROM_UNIXTIME - 753)) | (1 << (SqlParser.GEOMCOLLFROMTEXT - 753)) | (1 << (SqlParser.GEOMCOLLFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYFROMWKB - 753)))) !== 0) || ((((_la - 785)) & ~0x1f) == 0 && ((1 << (_la - 785)) & ((1 << (SqlParser.GEOMETRYN - 785)) | (1 << (SqlParser.GEOMETRYTYPE - 785)) | (1 << (SqlParser.GEOMFROMTEXT - 785)) | (1 << (SqlParser.GEOMFROMWKB - 785)) | (1 << (SqlParser.GET_FORMAT - 785)) | (1 << (SqlParser.GET_LOCK - 785)) | (1 << (SqlParser.GLENGTH - 785)) | (1 << (SqlParser.GREATEST - 785)) | (1 << (SqlParser.GTID_SUBSET - 785)) | (1 << (SqlParser.GTID_SUBTRACT - 785)) | (1 << (SqlParser.HEX - 785)) | (1 << (SqlParser.IFNULL - 785)) | (1 << (SqlParser.INET6_ATON - 785)) | (1 << (SqlParser.INET6_NTOA - 785)) | (1 << (SqlParser.INET_ATON - 785)) | (1 << (SqlParser.INET_NTOA - 785)) | (1 << (SqlParser.INSTR - 785)) | (1 << (SqlParser.INTERIORRINGN - 785)) | (1 << (SqlParser.INTERSECTS - 785)) | (1 << (SqlParser.ISCLOSED - 785)) | (1 << (SqlParser.ISEMPTY - 785)) | (1 << (SqlParser.ISNULL - 785)) | (1 << (SqlParser.ISSIMPLE - 785)) | (1 << (SqlParser.IS_FREE_LOCK - 785)) | (1 << (SqlParser.IS_IPV4 - 785)) | (1 << (SqlParser.IS_IPV4_COMPAT - 785)) | (1 << (SqlParser.IS_IPV4_MAPPED - 785)) | (1 << (SqlParser.IS_IPV6 - 785)) | (1 << (SqlParser.IS_USED_LOCK - 785)) | (1 << (SqlParser.LAST_INSERT_ID - 785)) | (1 << (SqlParser.LCASE - 785)) | (1 << (SqlParser.LEAST - 785)))) !== 0) || ((((_la - 817)) & ~0x1f) == 0 && ((1 << (_la - 817)) & ((1 << (SqlParser.LENGTH - 817)) | (1 << (SqlParser.LINEFROMTEXT - 817)) | (1 << (SqlParser.LINEFROMWKB - 817)) | (1 << (SqlParser.LINESTRINGFROMTEXT - 817)) | (1 << (SqlParser.LINESTRINGFROMWKB - 817)) | (1 << (SqlParser.LN - 817)) | (1 << (SqlParser.LOAD_FILE - 817)) | (1 << (SqlParser.LOCATE - 817)) | (1 << (SqlParser.LOG - 817)) | (1 << (SqlParser.LOG10 - 817)) | (1 << (SqlParser.LOG2 - 817)) | (1 << (SqlParser.LOWER - 817)) | (1 << (SqlParser.LPAD - 817)) | (1 << (SqlParser.LTRIM - 817)) | (1 << (SqlParser.MAKEDATE - 817)) | (1 << (SqlParser.MAKETIME - 817)) | (1 << (SqlParser.MAKE_SET - 817)) | (1 << (SqlParser.MASTER_POS_WAIT - 817)) | (1 << (SqlParser.MBRCONTAINS - 817)) | (1 << (SqlParser.MBRDISJOINT - 817)) | (1 << (SqlParser.MBREQUAL - 817)) | (1 << (SqlParser.MBRINTERSECTS - 817)) | (1 << (SqlParser.MBROVERLAPS - 817)) | (1 << (SqlParser.MBRTOUCHES - 817)) | (1 << (SqlParser.MBRWITHIN - 817)) | (1 << (SqlParser.MD5 - 817)) | (1 << (SqlParser.MLINEFROMTEXT - 817)) | (1 << (SqlParser.MLINEFROMWKB - 817)) | (1 << (SqlParser.MONTHNAME - 817)) | (1 << (SqlParser.MPOINTFROMTEXT - 817)) | (1 << (SqlParser.MPOINTFROMWKB - 817)) | (1 << (SqlParser.MPOLYFROMTEXT - 817)))) !== 0) || ((((_la - 849)) & ~0x1f) == 0 && ((1 << (_la - 849)) & ((1 << (SqlParser.MPOLYFROMWKB - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMTEXT - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMWKB - 849)) | (1 << (SqlParser.MULTIPOINTFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOINTFROMWKB - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMWKB - 849)) | (1 << (SqlParser.NAME_CONST - 849)) | (1 << (SqlParser.NULLIF - 849)) | (1 << (SqlParser.NUMGEOMETRIES - 849)) | (1 << (SqlParser.NUMINTERIORRINGS - 849)) | (1 << (SqlParser.NUMPOINTS - 849)) | (1 << (SqlParser.OCT - 849)) | (1 << (SqlParser.OCTET_LENGTH - 849)) | (1 << (SqlParser.ORD - 849)) | (1 << (SqlParser.OVERLAPS - 849)) | (1 << (SqlParser.PERIOD_ADD - 849)) | (1 << (SqlParser.PERIOD_DIFF - 849)) | (1 << (SqlParser.PI - 849)) | (1 << (SqlParser.POINTFROMTEXT - 849)) | (1 << (SqlParser.POINTFROMWKB - 849)) | (1 << (SqlParser.POINTN - 849)) | (1 << (SqlParser.POLYFROMTEXT - 849)) | (1 << (SqlParser.POLYFROMWKB - 849)) | (1 << (SqlParser.POLYGONFROMTEXT - 849)) | (1 << (SqlParser.POLYGONFROMWKB - 849)) | (1 << (SqlParser.POW - 849)) | (1 << (SqlParser.POWER - 849)) | (1 << (SqlParser.QUOTE - 849)) | (1 << (SqlParser.RADIANS - 849)) | (1 << (SqlParser.RAND - 849)) | (1 << (SqlParser.RANDOM_BYTES - 849)))) !== 0) || ((((_la - 881)) & ~0x1f) == 0 && ((1 << (_la - 881)) & ((1 << (SqlParser.RELEASE_LOCK - 881)) | (1 << (SqlParser.REVERSE - 881)) | (1 << (SqlParser.ROUND - 881)) | (1 << (SqlParser.ROW_COUNT - 881)) | (1 << (SqlParser.RPAD - 881)) | (1 << (SqlParser.RTRIM - 881)) | (1 << (SqlParser.SEC_TO_TIME - 881)) | (1 << (SqlParser.SESSION_USER - 881)) | (1 << (SqlParser.SHA - 881)) | (1 << (SqlParser.SHA1 - 881)) | (1 << (SqlParser.SHA2 - 881)) | (1 << (SqlParser.SCHEMA_NAME - 881)) | (1 << (SqlParser.SIGN - 881)) | (1 << (SqlParser.SIN - 881)) | (1 << (SqlParser.SLEEP - 881)) | (1 << (SqlParser.SOUNDEX - 881)) | (1 << (SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS - 881)) | (1 << (SqlParser.SQRT - 881)) | (1 << (SqlParser.SRID - 881)) | (1 << (SqlParser.STARTPOINT - 881)) | (1 << (SqlParser.STRCMP - 881)) | (1 << (SqlParser.STR_TO_DATE - 881)) | (1 << (SqlParser.ST_AREA - 881)) | (1 << (SqlParser.ST_ASBINARY - 881)) | (1 << (SqlParser.ST_ASTEXT - 881)) | (1 << (SqlParser.ST_ASWKB - 881)) | (1 << (SqlParser.ST_ASWKT - 881)) | (1 << (SqlParser.ST_BUFFER - 881)) | (1 << (SqlParser.ST_CENTROID - 881)) | (1 << (SqlParser.ST_CONTAINS - 881)) | (1 << (SqlParser.ST_CROSSES - 881)) | (1 << (SqlParser.ST_DIFFERENCE - 881)))) !== 0) || ((((_la - 913)) & ~0x1f) == 0 && ((1 << (_la - 913)) & ((1 << (SqlParser.ST_DIMENSION - 913)) | (1 << (SqlParser.ST_DISJOINT - 913)) | (1 << (SqlParser.ST_DISTANCE - 913)) | (1 << (SqlParser.ST_ENDPOINT - 913)) | (1 << (SqlParser.ST_ENVELOPE - 913)) | (1 << (SqlParser.ST_EQUALS - 913)) | (1 << (SqlParser.ST_EXTERIORRING - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYN - 913)) | (1 << (SqlParser.ST_GEOMETRYTYPE - 913)) | (1 << (SqlParser.ST_GEOMFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMFROMWKB - 913)) | (1 << (SqlParser.ST_INTERIORRINGN - 913)) | (1 << (SqlParser.ST_INTERSECTION - 913)) | (1 << (SqlParser.ST_INTERSECTS - 913)) | (1 << (SqlParser.ST_ISCLOSED - 913)) | (1 << (SqlParser.ST_ISEMPTY - 913)) | (1 << (SqlParser.ST_ISSIMPLE - 913)) | (1 << (SqlParser.ST_LINEFROMTEXT - 913)) | (1 << (SqlParser.ST_LINEFROMWKB - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMTEXT - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMWKB - 913)) | (1 << (SqlParser.ST_NUMGEOMETRIES - 913)) | (1 << (SqlParser.ST_NUMINTERIORRING - 913)) | (1 << (SqlParser.ST_NUMINTERIORRINGS - 913)) | (1 << (SqlParser.ST_NUMPOINTS - 913)))) !== 0) || ((((_la - 945)) & ~0x1f) == 0 && ((1 << (_la - 945)) & ((1 << (SqlParser.ST_OVERLAPS - 945)) | (1 << (SqlParser.ST_POINTFROMTEXT - 945)) | (1 << (SqlParser.ST_POINTFROMWKB - 945)) | (1 << (SqlParser.ST_POINTN - 945)) | (1 << (SqlParser.ST_POLYFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYFROMWKB - 945)) | (1 << (SqlParser.ST_POLYGONFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYGONFROMWKB - 945)) | (1 << (SqlParser.ST_SRID - 945)) | (1 << (SqlParser.ST_STARTPOINT - 945)) | (1 << (SqlParser.ST_SYMDIFFERENCE - 945)) | (1 << (SqlParser.ST_TOUCHES - 945)) | (1 << (SqlParser.ST_UNION - 945)) | (1 << (SqlParser.ST_WITHIN - 945)) | (1 << (SqlParser.ST_X - 945)) | (1 << (SqlParser.ST_Y - 945)) | (1 << (SqlParser.SUBDATE - 945)) | (1 << (SqlParser.SUBSTRING_INDEX - 945)) | (1 << (SqlParser.SUBTIME - 945)) | (1 << (SqlParser.SYSTEM_USER - 945)) | (1 << (SqlParser.TAN - 945)) | (1 << (SqlParser.TIMEDIFF - 945)) | (1 << (SqlParser.TIMESTAMPADD - 945)) | (1 << (SqlParser.TIMESTAMPDIFF - 945)) | (1 << (SqlParser.TIME_FORMAT - 945)) | (1 << (SqlParser.TIME_TO_SEC - 945)) | (1 << (SqlParser.TOUCHES - 945)) | (1 << (SqlParser.TO_BASE64 - 945)) | (1 << (SqlParser.TO_DAYS - 945)) | (1 << (SqlParser.TO_SECONDS - 945)) | (1 << (SqlParser.UCASE - 945)) | (1 << (SqlParser.UNCOMPRESS - 945)))) !== 0) || ((((_la - 977)) & ~0x1f) == 0 && ((1 << (_la - 977)) & ((1 << (SqlParser.UNCOMPRESSED_LENGTH - 977)) | (1 << (SqlParser.UNHEX - 977)) | (1 << (SqlParser.UNIX_TIMESTAMP - 977)) | (1 << (SqlParser.UPDATEXML - 977)) | (1 << (SqlParser.UPPER - 977)) | (1 << (SqlParser.UUID - 977)) | (1 << (SqlParser.UUID_SHORT - 977)) | (1 << (SqlParser.VALIDATE_PASSWORD_STRENGTH - 977)) | (1 << (SqlParser.VERSION - 977)) | (1 << (SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS - 977)) | (1 << (SqlParser.WEEKDAY - 977)) | (1 << (SqlParser.WEEKOFYEAR - 977)) | (1 << (SqlParser.WEIGHT_STRING - 977)) | (1 << (SqlParser.WITHIN - 977)) | (1 << (SqlParser.YEARWEEK - 977)) | (1 << (SqlParser.Y_FUNCTION - 977)) | (1 << (SqlParser.X_FUNCTION - 977)))) !== 0) || ((((_la - 1032)) & ~0x1f) == 0 && ((1 << (_la - 1032)) & ((1 << (SqlParser.CHARSET_REVERSE_QOUTE_STRING - 1032)) | (1 << (SqlParser.STRING_LITERAL - 1032)) | (1 << (SqlParser.ID - 1032)) | (1 << (SqlParser.REVERSE_QUOTE_ID - 1032)))) !== 0)) {
+ this.state = 2377;
+ localctx.name = this.uid();
+ }
+
+ }
+
+ this.state = 2382;
+ this.match(SqlParser.FOREIGN);
+ this.state = 2383;
+ this.match(SqlParser.KEY);
+ this.state = 2385;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (SqlParser.CURRENT - 32)) | (1 << (SqlParser.DATABASE - 32)) | (1 << (SqlParser.DIAGNOSTICS - 32)))) !== 0) || _la===SqlParser.LEFT || _la===SqlParser.NUMBER || _la===SqlParser.RIGHT || _la===SqlParser.STACKED || ((((_la - 199)) & ~0x1f) == 0 && ((1 << (_la - 199)) & ((1 << (SqlParser.DATE - 199)) | (1 << (SqlParser.TIME - 199)) | (1 << (SqlParser.TIMESTAMP - 199)) | (1 << (SqlParser.DATETIME - 199)) | (1 << (SqlParser.YEAR - 199)) | (1 << (SqlParser.TEXT - 199)) | (1 << (SqlParser.ENUM - 199)) | (1 << (SqlParser.SERIAL - 199)))) !== 0) || ((((_la - 233)) & ~0x1f) == 0 && ((1 << (_la - 233)) & ((1 << (SqlParser.JSON_VALID - 233)) | (1 << (SqlParser.JSON_SCHEMA_VALID - 233)) | (1 << (SqlParser.COUNT - 233)) | (1 << (SqlParser.POSITION - 233)))) !== 0) || ((((_la - 270)) & ~0x1f) == 0 && ((1 << (_la - 270)) & ((1 << (SqlParser.ACCOUNT - 270)) | (1 << (SqlParser.ACTION - 270)) | (1 << (SqlParser.AFTER - 270)) | (1 << (SqlParser.AGGREGATE - 270)) | (1 << (SqlParser.ALGORITHM - 270)) | (1 << (SqlParser.ANY - 270)) | (1 << (SqlParser.AT - 270)) | (1 << (SqlParser.AUTHORS - 270)) | (1 << (SqlParser.AUTOCOMMIT - 270)) | (1 << (SqlParser.AUTOEXTEND_SIZE - 270)) | (1 << (SqlParser.AUTO_INCREMENT - 270)) | (1 << (SqlParser.AVG_ROW_LENGTH - 270)) | (1 << (SqlParser.BEGIN - 270)) | (1 << (SqlParser.BINLOG - 270)) | (1 << (SqlParser.BIT - 270)) | (1 << (SqlParser.BLOCK - 270)) | (1 << (SqlParser.BOOL - 270)) | (1 << (SqlParser.BOOLEAN - 270)) | (1 << (SqlParser.BTREE - 270)) | (1 << (SqlParser.CACHE - 270)) | (1 << (SqlParser.CASCADED - 270)) | (1 << (SqlParser.CHAIN - 270)) | (1 << (SqlParser.CHANGED - 270)) | (1 << (SqlParser.CHANNEL - 270)) | (1 << (SqlParser.CHECKSUM - 270)) | (1 << (SqlParser.PAGE_CHECKSUM - 270)) | (1 << (SqlParser.CIPHER - 270)) | (1 << (SqlParser.CLASS_ORIGIN - 270)) | (1 << (SqlParser.CLIENT - 270)) | (1 << (SqlParser.CLOSE - 270)) | (1 << (SqlParser.COALESCE - 270)) | (1 << (SqlParser.CODE - 270)))) !== 0) || ((((_la - 302)) & ~0x1f) == 0 && ((1 << (_la - 302)) & ((1 << (SqlParser.COLUMNS - 302)) | (1 << (SqlParser.COLUMN_FORMAT - 302)) | (1 << (SqlParser.COLUMN_NAME - 302)) | (1 << (SqlParser.COMMENT - 302)) | (1 << (SqlParser.COMMIT - 302)) | (1 << (SqlParser.COMPACT - 302)) | (1 << (SqlParser.COMPLETION - 302)) | (1 << (SqlParser.COMPRESSED - 302)) | (1 << (SqlParser.COMPRESSION - 302)) | (1 << (SqlParser.CONCURRENT - 302)) | (1 << (SqlParser.CONNECTION - 302)) | (1 << (SqlParser.CONSISTENT - 302)) | (1 << (SqlParser.CONSTRAINT_CATALOG - 302)) | (1 << (SqlParser.CONSTRAINT_SCHEMA - 302)) | (1 << (SqlParser.CONSTRAINT_NAME - 302)) | (1 << (SqlParser.CONTAINS - 302)) | (1 << (SqlParser.CONTEXT - 302)) | (1 << (SqlParser.CONTRIBUTORS - 302)) | (1 << (SqlParser.COPY - 302)) | (1 << (SqlParser.CPU - 302)) | (1 << (SqlParser.CURSOR_NAME - 302)) | (1 << (SqlParser.DATA - 302)) | (1 << (SqlParser.DATAFILE - 302)) | (1 << (SqlParser.DEALLOCATE - 302)) | (1 << (SqlParser.DEFAULT_AUTH - 302)) | (1 << (SqlParser.DEFINER - 302)) | (1 << (SqlParser.DELAY_KEY_WRITE - 302)) | (1 << (SqlParser.DES_KEY_FILE - 302)) | (1 << (SqlParser.DIRECTORY - 302)) | (1 << (SqlParser.DISABLE - 302)) | (1 << (SqlParser.DISCARD - 302)) | (1 << (SqlParser.DISK - 302)))) !== 0) || ((((_la - 334)) & ~0x1f) == 0 && ((1 << (_la - 334)) & ((1 << (SqlParser.DO - 334)) | (1 << (SqlParser.DUMPFILE - 334)) | (1 << (SqlParser.DUPLICATE - 334)) | (1 << (SqlParser.DYNAMIC - 334)) | (1 << (SqlParser.ENABLE - 334)) | (1 << (SqlParser.ENCRYPTION - 334)) | (1 << (SqlParser.END - 334)) | (1 << (SqlParser.ENDS - 334)) | (1 << (SqlParser.ENGINE - 334)) | (1 << (SqlParser.ENGINES - 334)) | (1 << (SqlParser.ERROR - 334)) | (1 << (SqlParser.ERRORS - 334)) | (1 << (SqlParser.ESCAPE - 334)) | (1 << (SqlParser.EVEN - 334)) | (1 << (SqlParser.EVENT - 334)) | (1 << (SqlParser.EVENTS - 334)) | (1 << (SqlParser.EVERY - 334)) | (1 << (SqlParser.EXCHANGE - 334)) | (1 << (SqlParser.EXCLUSIVE - 334)) | (1 << (SqlParser.EXPIRE - 334)) | (1 << (SqlParser.EXPORT - 334)) | (1 << (SqlParser.EXTENDED - 334)) | (1 << (SqlParser.EXTENT_SIZE - 334)) | (1 << (SqlParser.FAST - 334)) | (1 << (SqlParser.FAULTS - 334)) | (1 << (SqlParser.FIELDS - 334)) | (1 << (SqlParser.FILE_BLOCK_SIZE - 334)) | (1 << (SqlParser.FILTER - 334)) | (1 << (SqlParser.FIRST - 334)) | (1 << (SqlParser.FIXED - 334)) | (1 << (SqlParser.FLUSH - 334)) | (1 << (SqlParser.FOLLOWS - 334)))) !== 0) || ((((_la - 366)) & ~0x1f) == 0 && ((1 << (_la - 366)) & ((1 << (SqlParser.FOUND - 366)) | (1 << (SqlParser.FULL - 366)) | (1 << (SqlParser.FUNCTION - 366)) | (1 << (SqlParser.GENERAL - 366)) | (1 << (SqlParser.GLOBAL - 366)) | (1 << (SqlParser.GRANTS - 366)) | (1 << (SqlParser.GROUP_REPLICATION - 366)) | (1 << (SqlParser.HANDLER - 366)) | (1 << (SqlParser.HASH - 366)) | (1 << (SqlParser.HELP - 366)) | (1 << (SqlParser.HOST - 366)) | (1 << (SqlParser.HOSTS - 366)) | (1 << (SqlParser.IDENTIFIED - 366)) | (1 << (SqlParser.IGNORE_SERVER_IDS - 366)) | (1 << (SqlParser.IMPORT - 366)) | (1 << (SqlParser.INDEXES - 366)) | (1 << (SqlParser.INITIAL_SIZE - 366)) | (1 << (SqlParser.INPLACE - 366)) | (1 << (SqlParser.INSERT_METHOD - 366)) | (1 << (SqlParser.INSTALL - 366)) | (1 << (SqlParser.INSTANCE - 366)) | (1 << (SqlParser.INVISIBLE - 366)) | (1 << (SqlParser.INVOKER - 366)) | (1 << (SqlParser.IO - 366)) | (1 << (SqlParser.IO_THREAD - 366)) | (1 << (SqlParser.IPC - 366)) | (1 << (SqlParser.ISOLATION - 366)) | (1 << (SqlParser.ISSUER - 366)) | (1 << (SqlParser.JSON - 366)) | (1 << (SqlParser.KEY_BLOCK_SIZE - 366)) | (1 << (SqlParser.LANGUAGE - 366)) | (1 << (SqlParser.LAST - 366)))) !== 0) || ((((_la - 398)) & ~0x1f) == 0 && ((1 << (_la - 398)) & ((1 << (SqlParser.LEAVES - 398)) | (1 << (SqlParser.LESS - 398)) | (1 << (SqlParser.LEVEL - 398)) | (1 << (SqlParser.LIST - 398)) | (1 << (SqlParser.LOCAL - 398)) | (1 << (SqlParser.LOGFILE - 398)) | (1 << (SqlParser.LOGS - 398)) | (1 << (SqlParser.MASTER - 398)) | (1 << (SqlParser.MASTER_AUTO_POSITION - 398)) | (1 << (SqlParser.MASTER_CONNECT_RETRY - 398)) | (1 << (SqlParser.MASTER_DELAY - 398)) | (1 << (SqlParser.MASTER_HEARTBEAT_PERIOD - 398)) | (1 << (SqlParser.MASTER_HOST - 398)) | (1 << (SqlParser.MASTER_LOG_FILE - 398)) | (1 << (SqlParser.MASTER_LOG_POS - 398)) | (1 << (SqlParser.MASTER_PASSWORD - 398)) | (1 << (SqlParser.MASTER_PORT - 398)) | (1 << (SqlParser.MASTER_RETRY_COUNT - 398)) | (1 << (SqlParser.MASTER_SSL - 398)) | (1 << (SqlParser.MASTER_SSL_CA - 398)) | (1 << (SqlParser.MASTER_SSL_CAPATH - 398)) | (1 << (SqlParser.MASTER_SSL_CERT - 398)) | (1 << (SqlParser.MASTER_SSL_CIPHER - 398)) | (1 << (SqlParser.MASTER_SSL_CRL - 398)) | (1 << (SqlParser.MASTER_SSL_CRLPATH - 398)) | (1 << (SqlParser.MASTER_SSL_KEY - 398)) | (1 << (SqlParser.MASTER_TLS_VERSION - 398)) | (1 << (SqlParser.MASTER_USER - 398)) | (1 << (SqlParser.MAX_CONNECTIONS_PER_HOUR - 398)) | (1 << (SqlParser.MAX_QUERIES_PER_HOUR - 398)) | (1 << (SqlParser.MAX_ROWS - 398)) | (1 << (SqlParser.MAX_SIZE - 398)))) !== 0) || ((((_la - 430)) & ~0x1f) == 0 && ((1 << (_la - 430)) & ((1 << (SqlParser.MAX_UPDATES_PER_HOUR - 430)) | (1 << (SqlParser.MAX_USER_CONNECTIONS - 430)) | (1 << (SqlParser.MEDIUM - 430)) | (1 << (SqlParser.MERGE - 430)) | (1 << (SqlParser.MESSAGE_TEXT - 430)) | (1 << (SqlParser.MID - 430)) | (1 << (SqlParser.MIGRATE - 430)) | (1 << (SqlParser.MIN_ROWS - 430)) | (1 << (SqlParser.MODE - 430)) | (1 << (SqlParser.MODIFY - 430)) | (1 << (SqlParser.MUTEX - 430)) | (1 << (SqlParser.MYSQL - 430)) | (1 << (SqlParser.MYSQL_ERRNO - 430)) | (1 << (SqlParser.NAME - 430)) | (1 << (SqlParser.NAMES - 430)) | (1 << (SqlParser.NCHAR - 430)) | (1 << (SqlParser.NEVER - 430)) | (1 << (SqlParser.NEXT - 430)) | (1 << (SqlParser.NO - 430)) | (1 << (SqlParser.NODEGROUP - 430)) | (1 << (SqlParser.NONE - 430)) | (1 << (SqlParser.OFFLINE - 430)) | (1 << (SqlParser.OFFSET - 430)) | (1 << (SqlParser.OJ - 430)) | (1 << (SqlParser.OLD_PASSWORD - 430)) | (1 << (SqlParser.ONE - 430)) | (1 << (SqlParser.ONLINE - 430)) | (1 << (SqlParser.ONLY - 430)) | (1 << (SqlParser.OPEN - 430)) | (1 << (SqlParser.OPTIMIZER_COSTS - 430)) | (1 << (SqlParser.OPTIONS - 430)) | (1 << (SqlParser.OWNER - 430)))) !== 0) || ((((_la - 462)) & ~0x1f) == 0 && ((1 << (_la - 462)) & ((1 << (SqlParser.PACK_KEYS - 462)) | (1 << (SqlParser.PAGE - 462)) | (1 << (SqlParser.PARSER - 462)) | (1 << (SqlParser.PARTIAL - 462)) | (1 << (SqlParser.PARTITIONING - 462)) | (1 << (SqlParser.PARTITIONS - 462)) | (1 << (SqlParser.PASSWORD - 462)) | (1 << (SqlParser.PHASE - 462)) | (1 << (SqlParser.PLUGIN - 462)) | (1 << (SqlParser.PLUGIN_DIR - 462)) | (1 << (SqlParser.PLUGINS - 462)) | (1 << (SqlParser.PORT - 462)) | (1 << (SqlParser.PRECEDES - 462)) | (1 << (SqlParser.PREPARE - 462)) | (1 << (SqlParser.PRESERVE - 462)) | (1 << (SqlParser.PREV - 462)) | (1 << (SqlParser.PROCESSLIST - 462)) | (1 << (SqlParser.PROFILE - 462)) | (1 << (SqlParser.PROFILES - 462)) | (1 << (SqlParser.PROXY - 462)) | (1 << (SqlParser.QUERY - 462)) | (1 << (SqlParser.QUICK - 462)) | (1 << (SqlParser.REBUILD - 462)) | (1 << (SqlParser.RECOVER - 462)) | (1 << (SqlParser.REDO_BUFFER_SIZE - 462)) | (1 << (SqlParser.REDUNDANT - 462)) | (1 << (SqlParser.RELAY - 462)) | (1 << (SqlParser.RELAY_LOG_FILE - 462)) | (1 << (SqlParser.RELAY_LOG_POS - 462)) | (1 << (SqlParser.RELAYLOG - 462)) | (1 << (SqlParser.REMOVE - 462)) | (1 << (SqlParser.REORGANIZE - 462)))) !== 0) || ((((_la - 494)) & ~0x1f) == 0 && ((1 << (_la - 494)) & ((1 << (SqlParser.REPAIR - 494)) | (1 << (SqlParser.REPLICATE_DO_DB - 494)) | (1 << (SqlParser.REPLICATE_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_DB - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATE_REWRITE_DB - 494)) | (1 << (SqlParser.REPLICATE_WILD_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_WILD_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATION - 494)) | (1 << (SqlParser.RESET - 494)) | (1 << (SqlParser.RESUME - 494)) | (1 << (SqlParser.RETURNED_SQLSTATE - 494)) | (1 << (SqlParser.RETURNS - 494)) | (1 << (SqlParser.ROLE - 494)) | (1 << (SqlParser.ROLLBACK - 494)) | (1 << (SqlParser.ROLLUP - 494)) | (1 << (SqlParser.ROTATE - 494)) | (1 << (SqlParser.ROW - 494)) | (1 << (SqlParser.ROWS - 494)) | (1 << (SqlParser.ROW_FORMAT - 494)) | (1 << (SqlParser.SAVEPOINT - 494)) | (1 << (SqlParser.SCHEDULE - 494)) | (1 << (SqlParser.SECURITY - 494)) | (1 << (SqlParser.SERVER - 494)) | (1 << (SqlParser.SESSION - 494)) | (1 << (SqlParser.SHARE - 494)) | (1 << (SqlParser.SHARED - 494)) | (1 << (SqlParser.SIGNED - 494)) | (1 << (SqlParser.SIMPLE - 494)) | (1 << (SqlParser.SLAVE - 494)) | (1 << (SqlParser.SLOW - 494)) | (1 << (SqlParser.SNAPSHOT - 494)))) !== 0) || ((((_la - 526)) & ~0x1f) == 0 && ((1 << (_la - 526)) & ((1 << (SqlParser.SOCKET - 526)) | (1 << (SqlParser.SOME - 526)) | (1 << (SqlParser.SONAME - 526)) | (1 << (SqlParser.SOUNDS - 526)) | (1 << (SqlParser.SOURCE - 526)) | (1 << (SqlParser.SQL_AFTER_GTIDS - 526)) | (1 << (SqlParser.SQL_AFTER_MTS_GAPS - 526)) | (1 << (SqlParser.SQL_BEFORE_GTIDS - 526)) | (1 << (SqlParser.SQL_BUFFER_RESULT - 526)) | (1 << (SqlParser.SQL_CACHE - 526)) | (1 << (SqlParser.SQL_NO_CACHE - 526)) | (1 << (SqlParser.SQL_THREAD - 526)) | (1 << (SqlParser.START - 526)) | (1 << (SqlParser.STARTS - 526)) | (1 << (SqlParser.STATS_AUTO_RECALC - 526)) | (1 << (SqlParser.STATS_PERSISTENT - 526)) | (1 << (SqlParser.STATS_SAMPLE_PAGES - 526)) | (1 << (SqlParser.STATUS - 526)) | (1 << (SqlParser.STOP - 526)) | (1 << (SqlParser.STORAGE - 526)) | (1 << (SqlParser.STRING - 526)) | (1 << (SqlParser.SUBCLASS_ORIGIN - 526)) | (1 << (SqlParser.SUBJECT - 526)) | (1 << (SqlParser.SUBPARTITION - 526)) | (1 << (SqlParser.SUBPARTITIONS - 526)) | (1 << (SqlParser.SUSPEND - 526)) | (1 << (SqlParser.SWAPS - 526)) | (1 << (SqlParser.SWITCHES - 526)) | (1 << (SqlParser.TABLE_NAME - 526)) | (1 << (SqlParser.TABLESPACE - 526)) | (1 << (SqlParser.TEMPORARY - 526)))) !== 0) || ((((_la - 558)) & ~0x1f) == 0 && ((1 << (_la - 558)) & ((1 << (SqlParser.TEMPTABLE - 558)) | (1 << (SqlParser.THAN - 558)) | (1 << (SqlParser.TRADITIONAL - 558)) | (1 << (SqlParser.TRANSACTION - 558)) | (1 << (SqlParser.TRANSACTIONAL - 558)) | (1 << (SqlParser.TRIGGERS - 558)) | (1 << (SqlParser.TRUNCATE - 558)) | (1 << (SqlParser.UNDEFINED - 558)) | (1 << (SqlParser.UNDOFILE - 558)) | (1 << (SqlParser.UNDO_BUFFER_SIZE - 558)) | (1 << (SqlParser.UNINSTALL - 558)) | (1 << (SqlParser.UNKNOWN - 558)) | (1 << (SqlParser.UNTIL - 558)) | (1 << (SqlParser.UPGRADE - 558)) | (1 << (SqlParser.USER - 558)) | (1 << (SqlParser.USE_FRM - 558)) | (1 << (SqlParser.USER_RESOURCES - 558)) | (1 << (SqlParser.VALIDATION - 558)) | (1 << (SqlParser.VALUE - 558)) | (1 << (SqlParser.VARIABLES - 558)) | (1 << (SqlParser.VIEW - 558)) | (1 << (SqlParser.VISIBLE - 558)) | (1 << (SqlParser.WAIT - 558)) | (1 << (SqlParser.WARNINGS - 558)) | (1 << (SqlParser.WITHOUT - 558)) | (1 << (SqlParser.WORK - 558)) | (1 << (SqlParser.WRAPPER - 558)) | (1 << (SqlParser.X509 - 558)) | (1 << (SqlParser.XA - 558)) | (1 << (SqlParser.XML - 558)))) !== 0) || ((((_la - 593)) & ~0x1f) == 0 && ((1 << (_la - 593)) & ((1 << (SqlParser.INTERNAL - 593)) | (1 << (SqlParser.QUARTER - 593)) | (1 << (SqlParser.MONTH - 593)) | (1 << (SqlParser.DAY - 593)) | (1 << (SqlParser.HOUR - 593)) | (1 << (SqlParser.MINUTE - 593)) | (1 << (SqlParser.WEEK - 593)) | (1 << (SqlParser.SECOND - 593)) | (1 << (SqlParser.MICROSECOND - 593)) | (1 << (SqlParser.TABLES - 593)) | (1 << (SqlParser.ROUTINE - 593)) | (1 << (SqlParser.EXECUTE - 593)) | (1 << (SqlParser.FILE - 593)) | (1 << (SqlParser.PROCESS - 593)) | (1 << (SqlParser.RELOAD - 593)) | (1 << (SqlParser.SHUTDOWN - 593)) | (1 << (SqlParser.SUPER - 593)) | (1 << (SqlParser.PRIVILEGES - 593)) | (1 << (SqlParser.AUDIT_ADMIN - 593)) | (1 << (SqlParser.BACKUP_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ENCRYPTION_ADMIN - 593)) | (1 << (SqlParser.CLONE_ADMIN - 593)) | (1 << (SqlParser.CONNECTION_ADMIN - 593)) | (1 << (SqlParser.ENCRYPTION_KEY_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_USER - 593)) | (1 << (SqlParser.GROUP_REPLICATION_ADMIN - 593)) | (1 << (SqlParser.INNODB_REDO_LOG_ARCHIVE - 593)) | (1 << (SqlParser.NDB_STORED_USER - 593)) | (1 << (SqlParser.PERSIST_RO_VARIABLES_ADMIN - 593)))) !== 0) || ((((_la - 625)) & ~0x1f) == 0 && ((1 << (_la - 625)) & ((1 << (SqlParser.REPLICATION_APPLIER - 625)) | (1 << (SqlParser.REPLICATION_SLAVE_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_USER - 625)) | (1 << (SqlParser.ROLE_ADMIN - 625)) | (1 << (SqlParser.SESSION_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.SET_USER_ID - 625)) | (1 << (SqlParser.SHOW_ROUTINE - 625)) | (1 << (SqlParser.SYSTEM_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.TABLE_ENCRYPTION_ADMIN - 625)) | (1 << (SqlParser.VERSION_TOKEN_ADMIN - 625)) | (1 << (SqlParser.XA_RECOVER_ADMIN - 625)) | (1 << (SqlParser.ARMSCII8 - 625)) | (1 << (SqlParser.ASCII - 625)) | (1 << (SqlParser.BIG5 - 625)) | (1 << (SqlParser.CP1250 - 625)) | (1 << (SqlParser.CP1251 - 625)) | (1 << (SqlParser.CP1256 - 625)) | (1 << (SqlParser.CP1257 - 625)) | (1 << (SqlParser.CP850 - 625)) | (1 << (SqlParser.CP852 - 625)) | (1 << (SqlParser.CP866 - 625)) | (1 << (SqlParser.CP932 - 625)) | (1 << (SqlParser.DEC8 - 625)) | (1 << (SqlParser.EUCJPMS - 625)) | (1 << (SqlParser.EUCKR - 625)) | (1 << (SqlParser.GB2312 - 625)) | (1 << (SqlParser.GBK - 625)) | (1 << (SqlParser.GEOSTD8 - 625)) | (1 << (SqlParser.GREEK - 625)) | (1 << (SqlParser.HEBREW - 625)) | (1 << (SqlParser.HP8 - 625)))) !== 0) || ((((_la - 657)) & ~0x1f) == 0 && ((1 << (_la - 657)) & ((1 << (SqlParser.KEYBCS2 - 657)) | (1 << (SqlParser.KOI8R - 657)) | (1 << (SqlParser.KOI8U - 657)) | (1 << (SqlParser.LATIN1 - 657)) | (1 << (SqlParser.LATIN2 - 657)) | (1 << (SqlParser.LATIN5 - 657)) | (1 << (SqlParser.LATIN7 - 657)) | (1 << (SqlParser.MACCE - 657)) | (1 << (SqlParser.MACROMAN - 657)) | (1 << (SqlParser.SJIS - 657)) | (1 << (SqlParser.SWE7 - 657)) | (1 << (SqlParser.TIS620 - 657)) | (1 << (SqlParser.UCS2 - 657)) | (1 << (SqlParser.UJIS - 657)) | (1 << (SqlParser.UTF16 - 657)) | (1 << (SqlParser.UTF16LE - 657)) | (1 << (SqlParser.UTF32 - 657)) | (1 << (SqlParser.UTF8 - 657)) | (1 << (SqlParser.UTF8MB3 - 657)) | (1 << (SqlParser.UTF8MB4 - 657)) | (1 << (SqlParser.ARCHIVE - 657)) | (1 << (SqlParser.BLACKHOLE - 657)) | (1 << (SqlParser.CSV - 657)) | (1 << (SqlParser.FEDERATED - 657)) | (1 << (SqlParser.INNODB - 657)) | (1 << (SqlParser.MEMORY - 657)) | (1 << (SqlParser.MRG_MYISAM - 657)) | (1 << (SqlParser.MYISAM - 657)) | (1 << (SqlParser.NDB - 657)) | (1 << (SqlParser.NDBCLUSTER - 657)) | (1 << (SqlParser.PERFORMANCE_SCHEMA - 657)) | (1 << (SqlParser.TOKUDB - 657)))) !== 0) || ((((_la - 689)) & ~0x1f) == 0 && ((1 << (_la - 689)) & ((1 << (SqlParser.REPEATABLE - 689)) | (1 << (SqlParser.COMMITTED - 689)) | (1 << (SqlParser.UNCOMMITTED - 689)) | (1 << (SqlParser.SERIALIZABLE - 689)) | (1 << (SqlParser.GEOMETRYCOLLECTION - 689)) | (1 << (SqlParser.LINESTRING - 689)) | (1 << (SqlParser.MULTILINESTRING - 689)) | (1 << (SqlParser.MULTIPOINT - 689)) | (1 << (SqlParser.MULTIPOLYGON - 689)) | (1 << (SqlParser.POINT - 689)) | (1 << (SqlParser.POLYGON - 689)) | (1 << (SqlParser.ABS - 689)) | (1 << (SqlParser.ACOS - 689)) | (1 << (SqlParser.ADDDATE - 689)) | (1 << (SqlParser.ADDTIME - 689)) | (1 << (SqlParser.AES_DECRYPT - 689)) | (1 << (SqlParser.AES_ENCRYPT - 689)) | (1 << (SqlParser.AREA - 689)) | (1 << (SqlParser.ASBINARY - 689)) | (1 << (SqlParser.ASIN - 689)) | (1 << (SqlParser.ASTEXT - 689)) | (1 << (SqlParser.ASWKB - 689)) | (1 << (SqlParser.ASWKT - 689)) | (1 << (SqlParser.ASYMMETRIC_DECRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_DERIVE - 689)) | (1 << (SqlParser.ASYMMETRIC_ENCRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_SIGN - 689)) | (1 << (SqlParser.ASYMMETRIC_VERIFY - 689)) | (1 << (SqlParser.ATAN - 689)) | (1 << (SqlParser.ATAN2 - 689)))) !== 0) || ((((_la - 721)) & ~0x1f) == 0 && ((1 << (_la - 721)) & ((1 << (SqlParser.BENCHMARK - 721)) | (1 << (SqlParser.BIN - 721)) | (1 << (SqlParser.BIT_COUNT - 721)) | (1 << (SqlParser.BIT_LENGTH - 721)) | (1 << (SqlParser.BUFFER - 721)) | (1 << (SqlParser.CATALOG_NAME - 721)) | (1 << (SqlParser.CEIL - 721)) | (1 << (SqlParser.CEILING - 721)) | (1 << (SqlParser.CENTROID - 721)) | (1 << (SqlParser.CHARACTER_LENGTH - 721)) | (1 << (SqlParser.CHARSET - 721)) | (1 << (SqlParser.CHAR_LENGTH - 721)) | (1 << (SqlParser.COERCIBILITY - 721)) | (1 << (SqlParser.COLLATION - 721)) | (1 << (SqlParser.COMPRESS - 721)) | (1 << (SqlParser.CONCAT - 721)) | (1 << (SqlParser.CONCAT_WS - 721)) | (1 << (SqlParser.CONNECTION_ID - 721)) | (1 << (SqlParser.CONV - 721)) | (1 << (SqlParser.CONVERT_TZ - 721)) | (1 << (SqlParser.COS - 721)) | (1 << (SqlParser.COT - 721)) | (1 << (SqlParser.CRC32 - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PRIV_KEY - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PUB_KEY - 721)) | (1 << (SqlParser.CREATE_DH_PARAMETERS - 721)) | (1 << (SqlParser.CREATE_DIGEST - 721)) | (1 << (SqlParser.CROSSES - 721)) | (1 << (SqlParser.DATEDIFF - 721)) | (1 << (SqlParser.DATE_FORMAT - 721)) | (1 << (SqlParser.DAYNAME - 721)) | (1 << (SqlParser.DAYOFMONTH - 721)))) !== 0) || ((((_la - 753)) & ~0x1f) == 0 && ((1 << (_la - 753)) & ((1 << (SqlParser.DAYOFWEEK - 753)) | (1 << (SqlParser.DAYOFYEAR - 753)) | (1 << (SqlParser.DECODE - 753)) | (1 << (SqlParser.DEGREES - 753)) | (1 << (SqlParser.DES_DECRYPT - 753)) | (1 << (SqlParser.DES_ENCRYPT - 753)) | (1 << (SqlParser.DIMENSION - 753)) | (1 << (SqlParser.DISJOINT - 753)) | (1 << (SqlParser.ELT - 753)) | (1 << (SqlParser.ENCODE - 753)) | (1 << (SqlParser.ENCRYPT - 753)) | (1 << (SqlParser.ENDPOINT - 753)) | (1 << (SqlParser.ENVELOPE - 753)) | (1 << (SqlParser.EQUALS - 753)) | (1 << (SqlParser.EXP - 753)) | (1 << (SqlParser.EXPORT_SET - 753)) | (1 << (SqlParser.EXTERIORRING - 753)) | (1 << (SqlParser.EXTRACTVALUE - 753)) | (1 << (SqlParser.FIELD - 753)) | (1 << (SqlParser.FIND_IN_SET - 753)) | (1 << (SqlParser.FLOOR - 753)) | (1 << (SqlParser.FORMAT - 753)) | (1 << (SqlParser.FOUND_ROWS - 753)) | (1 << (SqlParser.FROM_BASE64 - 753)) | (1 << (SqlParser.FROM_DAYS - 753)) | (1 << (SqlParser.FROM_UNIXTIME - 753)) | (1 << (SqlParser.GEOMCOLLFROMTEXT - 753)) | (1 << (SqlParser.GEOMCOLLFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYFROMWKB - 753)))) !== 0) || ((((_la - 785)) & ~0x1f) == 0 && ((1 << (_la - 785)) & ((1 << (SqlParser.GEOMETRYN - 785)) | (1 << (SqlParser.GEOMETRYTYPE - 785)) | (1 << (SqlParser.GEOMFROMTEXT - 785)) | (1 << (SqlParser.GEOMFROMWKB - 785)) | (1 << (SqlParser.GET_FORMAT - 785)) | (1 << (SqlParser.GET_LOCK - 785)) | (1 << (SqlParser.GLENGTH - 785)) | (1 << (SqlParser.GREATEST - 785)) | (1 << (SqlParser.GTID_SUBSET - 785)) | (1 << (SqlParser.GTID_SUBTRACT - 785)) | (1 << (SqlParser.HEX - 785)) | (1 << (SqlParser.IFNULL - 785)) | (1 << (SqlParser.INET6_ATON - 785)) | (1 << (SqlParser.INET6_NTOA - 785)) | (1 << (SqlParser.INET_ATON - 785)) | (1 << (SqlParser.INET_NTOA - 785)) | (1 << (SqlParser.INSTR - 785)) | (1 << (SqlParser.INTERIORRINGN - 785)) | (1 << (SqlParser.INTERSECTS - 785)) | (1 << (SqlParser.ISCLOSED - 785)) | (1 << (SqlParser.ISEMPTY - 785)) | (1 << (SqlParser.ISNULL - 785)) | (1 << (SqlParser.ISSIMPLE - 785)) | (1 << (SqlParser.IS_FREE_LOCK - 785)) | (1 << (SqlParser.IS_IPV4 - 785)) | (1 << (SqlParser.IS_IPV4_COMPAT - 785)) | (1 << (SqlParser.IS_IPV4_MAPPED - 785)) | (1 << (SqlParser.IS_IPV6 - 785)) | (1 << (SqlParser.IS_USED_LOCK - 785)) | (1 << (SqlParser.LAST_INSERT_ID - 785)) | (1 << (SqlParser.LCASE - 785)) | (1 << (SqlParser.LEAST - 785)))) !== 0) || ((((_la - 817)) & ~0x1f) == 0 && ((1 << (_la - 817)) & ((1 << (SqlParser.LENGTH - 817)) | (1 << (SqlParser.LINEFROMTEXT - 817)) | (1 << (SqlParser.LINEFROMWKB - 817)) | (1 << (SqlParser.LINESTRINGFROMTEXT - 817)) | (1 << (SqlParser.LINESTRINGFROMWKB - 817)) | (1 << (SqlParser.LN - 817)) | (1 << (SqlParser.LOAD_FILE - 817)) | (1 << (SqlParser.LOCATE - 817)) | (1 << (SqlParser.LOG - 817)) | (1 << (SqlParser.LOG10 - 817)) | (1 << (SqlParser.LOG2 - 817)) | (1 << (SqlParser.LOWER - 817)) | (1 << (SqlParser.LPAD - 817)) | (1 << (SqlParser.LTRIM - 817)) | (1 << (SqlParser.MAKEDATE - 817)) | (1 << (SqlParser.MAKETIME - 817)) | (1 << (SqlParser.MAKE_SET - 817)) | (1 << (SqlParser.MASTER_POS_WAIT - 817)) | (1 << (SqlParser.MBRCONTAINS - 817)) | (1 << (SqlParser.MBRDISJOINT - 817)) | (1 << (SqlParser.MBREQUAL - 817)) | (1 << (SqlParser.MBRINTERSECTS - 817)) | (1 << (SqlParser.MBROVERLAPS - 817)) | (1 << (SqlParser.MBRTOUCHES - 817)) | (1 << (SqlParser.MBRWITHIN - 817)) | (1 << (SqlParser.MD5 - 817)) | (1 << (SqlParser.MLINEFROMTEXT - 817)) | (1 << (SqlParser.MLINEFROMWKB - 817)) | (1 << (SqlParser.MONTHNAME - 817)) | (1 << (SqlParser.MPOINTFROMTEXT - 817)) | (1 << (SqlParser.MPOINTFROMWKB - 817)) | (1 << (SqlParser.MPOLYFROMTEXT - 817)))) !== 0) || ((((_la - 849)) & ~0x1f) == 0 && ((1 << (_la - 849)) & ((1 << (SqlParser.MPOLYFROMWKB - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMTEXT - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMWKB - 849)) | (1 << (SqlParser.MULTIPOINTFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOINTFROMWKB - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMWKB - 849)) | (1 << (SqlParser.NAME_CONST - 849)) | (1 << (SqlParser.NULLIF - 849)) | (1 << (SqlParser.NUMGEOMETRIES - 849)) | (1 << (SqlParser.NUMINTERIORRINGS - 849)) | (1 << (SqlParser.NUMPOINTS - 849)) | (1 << (SqlParser.OCT - 849)) | (1 << (SqlParser.OCTET_LENGTH - 849)) | (1 << (SqlParser.ORD - 849)) | (1 << (SqlParser.OVERLAPS - 849)) | (1 << (SqlParser.PERIOD_ADD - 849)) | (1 << (SqlParser.PERIOD_DIFF - 849)) | (1 << (SqlParser.PI - 849)) | (1 << (SqlParser.POINTFROMTEXT - 849)) | (1 << (SqlParser.POINTFROMWKB - 849)) | (1 << (SqlParser.POINTN - 849)) | (1 << (SqlParser.POLYFROMTEXT - 849)) | (1 << (SqlParser.POLYFROMWKB - 849)) | (1 << (SqlParser.POLYGONFROMTEXT - 849)) | (1 << (SqlParser.POLYGONFROMWKB - 849)) | (1 << (SqlParser.POW - 849)) | (1 << (SqlParser.POWER - 849)) | (1 << (SqlParser.QUOTE - 849)) | (1 << (SqlParser.RADIANS - 849)) | (1 << (SqlParser.RAND - 849)) | (1 << (SqlParser.RANDOM_BYTES - 849)))) !== 0) || ((((_la - 881)) & ~0x1f) == 0 && ((1 << (_la - 881)) & ((1 << (SqlParser.RELEASE_LOCK - 881)) | (1 << (SqlParser.REVERSE - 881)) | (1 << (SqlParser.ROUND - 881)) | (1 << (SqlParser.ROW_COUNT - 881)) | (1 << (SqlParser.RPAD - 881)) | (1 << (SqlParser.RTRIM - 881)) | (1 << (SqlParser.SEC_TO_TIME - 881)) | (1 << (SqlParser.SESSION_USER - 881)) | (1 << (SqlParser.SHA - 881)) | (1 << (SqlParser.SHA1 - 881)) | (1 << (SqlParser.SHA2 - 881)) | (1 << (SqlParser.SCHEMA_NAME - 881)) | (1 << (SqlParser.SIGN - 881)) | (1 << (SqlParser.SIN - 881)) | (1 << (SqlParser.SLEEP - 881)) | (1 << (SqlParser.SOUNDEX - 881)) | (1 << (SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS - 881)) | (1 << (SqlParser.SQRT - 881)) | (1 << (SqlParser.SRID - 881)) | (1 << (SqlParser.STARTPOINT - 881)) | (1 << (SqlParser.STRCMP - 881)) | (1 << (SqlParser.STR_TO_DATE - 881)) | (1 << (SqlParser.ST_AREA - 881)) | (1 << (SqlParser.ST_ASBINARY - 881)) | (1 << (SqlParser.ST_ASTEXT - 881)) | (1 << (SqlParser.ST_ASWKB - 881)) | (1 << (SqlParser.ST_ASWKT - 881)) | (1 << (SqlParser.ST_BUFFER - 881)) | (1 << (SqlParser.ST_CENTROID - 881)) | (1 << (SqlParser.ST_CONTAINS - 881)) | (1 << (SqlParser.ST_CROSSES - 881)) | (1 << (SqlParser.ST_DIFFERENCE - 881)))) !== 0) || ((((_la - 913)) & ~0x1f) == 0 && ((1 << (_la - 913)) & ((1 << (SqlParser.ST_DIMENSION - 913)) | (1 << (SqlParser.ST_DISJOINT - 913)) | (1 << (SqlParser.ST_DISTANCE - 913)) | (1 << (SqlParser.ST_ENDPOINT - 913)) | (1 << (SqlParser.ST_ENVELOPE - 913)) | (1 << (SqlParser.ST_EQUALS - 913)) | (1 << (SqlParser.ST_EXTERIORRING - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYN - 913)) | (1 << (SqlParser.ST_GEOMETRYTYPE - 913)) | (1 << (SqlParser.ST_GEOMFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMFROMWKB - 913)) | (1 << (SqlParser.ST_INTERIORRINGN - 913)) | (1 << (SqlParser.ST_INTERSECTION - 913)) | (1 << (SqlParser.ST_INTERSECTS - 913)) | (1 << (SqlParser.ST_ISCLOSED - 913)) | (1 << (SqlParser.ST_ISEMPTY - 913)) | (1 << (SqlParser.ST_ISSIMPLE - 913)) | (1 << (SqlParser.ST_LINEFROMTEXT - 913)) | (1 << (SqlParser.ST_LINEFROMWKB - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMTEXT - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMWKB - 913)) | (1 << (SqlParser.ST_NUMGEOMETRIES - 913)) | (1 << (SqlParser.ST_NUMINTERIORRING - 913)) | (1 << (SqlParser.ST_NUMINTERIORRINGS - 913)) | (1 << (SqlParser.ST_NUMPOINTS - 913)))) !== 0) || ((((_la - 945)) & ~0x1f) == 0 && ((1 << (_la - 945)) & ((1 << (SqlParser.ST_OVERLAPS - 945)) | (1 << (SqlParser.ST_POINTFROMTEXT - 945)) | (1 << (SqlParser.ST_POINTFROMWKB - 945)) | (1 << (SqlParser.ST_POINTN - 945)) | (1 << (SqlParser.ST_POLYFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYFROMWKB - 945)) | (1 << (SqlParser.ST_POLYGONFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYGONFROMWKB - 945)) | (1 << (SqlParser.ST_SRID - 945)) | (1 << (SqlParser.ST_STARTPOINT - 945)) | (1 << (SqlParser.ST_SYMDIFFERENCE - 945)) | (1 << (SqlParser.ST_TOUCHES - 945)) | (1 << (SqlParser.ST_UNION - 945)) | (1 << (SqlParser.ST_WITHIN - 945)) | (1 << (SqlParser.ST_X - 945)) | (1 << (SqlParser.ST_Y - 945)) | (1 << (SqlParser.SUBDATE - 945)) | (1 << (SqlParser.SUBSTRING_INDEX - 945)) | (1 << (SqlParser.SUBTIME - 945)) | (1 << (SqlParser.SYSTEM_USER - 945)) | (1 << (SqlParser.TAN - 945)) | (1 << (SqlParser.TIMEDIFF - 945)) | (1 << (SqlParser.TIMESTAMPADD - 945)) | (1 << (SqlParser.TIMESTAMPDIFF - 945)) | (1 << (SqlParser.TIME_FORMAT - 945)) | (1 << (SqlParser.TIME_TO_SEC - 945)) | (1 << (SqlParser.TOUCHES - 945)) | (1 << (SqlParser.TO_BASE64 - 945)) | (1 << (SqlParser.TO_DAYS - 945)) | (1 << (SqlParser.TO_SECONDS - 945)) | (1 << (SqlParser.UCASE - 945)) | (1 << (SqlParser.UNCOMPRESS - 945)))) !== 0) || ((((_la - 977)) & ~0x1f) == 0 && ((1 << (_la - 977)) & ((1 << (SqlParser.UNCOMPRESSED_LENGTH - 977)) | (1 << (SqlParser.UNHEX - 977)) | (1 << (SqlParser.UNIX_TIMESTAMP - 977)) | (1 << (SqlParser.UPDATEXML - 977)) | (1 << (SqlParser.UPPER - 977)) | (1 << (SqlParser.UUID - 977)) | (1 << (SqlParser.UUID_SHORT - 977)) | (1 << (SqlParser.VALIDATE_PASSWORD_STRENGTH - 977)) | (1 << (SqlParser.VERSION - 977)) | (1 << (SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS - 977)) | (1 << (SqlParser.WEEKDAY - 977)) | (1 << (SqlParser.WEEKOFYEAR - 977)) | (1 << (SqlParser.WEIGHT_STRING - 977)) | (1 << (SqlParser.WITHIN - 977)) | (1 << (SqlParser.YEARWEEK - 977)) | (1 << (SqlParser.Y_FUNCTION - 977)) | (1 << (SqlParser.X_FUNCTION - 977)))) !== 0) || ((((_la - 1032)) & ~0x1f) == 0 && ((1 << (_la - 1032)) & ((1 << (SqlParser.CHARSET_REVERSE_QOUTE_STRING - 1032)) | (1 << (SqlParser.STRING_LITERAL - 1032)) | (1 << (SqlParser.ID - 1032)) | (1 << (SqlParser.REVERSE_QUOTE_ID - 1032)))) !== 0)) {
+ this.state = 2384;
+ localctx.indexName = this.uid();
+ }
+
+ this.state = 2387;
+ this.indexColumnNames();
+ this.state = 2388;
+ this.referenceDefinition();
+ break;
+
+ case 9:
+ localctx = new AlterByAddCheckTableConstraintContext(this, localctx);
+ this.enterOuterAlt(localctx, 9);
+ this.state = 2390;
+ this.match(SqlParser.ADD);
+ this.state = 2395;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.CONSTRAINT) {
+ this.state = 2391;
+ this.match(SqlParser.CONSTRAINT);
+ this.state = 2393;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (SqlParser.CURRENT - 32)) | (1 << (SqlParser.DATABASE - 32)) | (1 << (SqlParser.DIAGNOSTICS - 32)))) !== 0) || _la===SqlParser.LEFT || _la===SqlParser.NUMBER || _la===SqlParser.RIGHT || _la===SqlParser.STACKED || ((((_la - 199)) & ~0x1f) == 0 && ((1 << (_la - 199)) & ((1 << (SqlParser.DATE - 199)) | (1 << (SqlParser.TIME - 199)) | (1 << (SqlParser.TIMESTAMP - 199)) | (1 << (SqlParser.DATETIME - 199)) | (1 << (SqlParser.YEAR - 199)) | (1 << (SqlParser.TEXT - 199)) | (1 << (SqlParser.ENUM - 199)) | (1 << (SqlParser.SERIAL - 199)))) !== 0) || ((((_la - 233)) & ~0x1f) == 0 && ((1 << (_la - 233)) & ((1 << (SqlParser.JSON_VALID - 233)) | (1 << (SqlParser.JSON_SCHEMA_VALID - 233)) | (1 << (SqlParser.COUNT - 233)) | (1 << (SqlParser.POSITION - 233)))) !== 0) || ((((_la - 270)) & ~0x1f) == 0 && ((1 << (_la - 270)) & ((1 << (SqlParser.ACCOUNT - 270)) | (1 << (SqlParser.ACTION - 270)) | (1 << (SqlParser.AFTER - 270)) | (1 << (SqlParser.AGGREGATE - 270)) | (1 << (SqlParser.ALGORITHM - 270)) | (1 << (SqlParser.ANY - 270)) | (1 << (SqlParser.AT - 270)) | (1 << (SqlParser.AUTHORS - 270)) | (1 << (SqlParser.AUTOCOMMIT - 270)) | (1 << (SqlParser.AUTOEXTEND_SIZE - 270)) | (1 << (SqlParser.AUTO_INCREMENT - 270)) | (1 << (SqlParser.AVG_ROW_LENGTH - 270)) | (1 << (SqlParser.BEGIN - 270)) | (1 << (SqlParser.BINLOG - 270)) | (1 << (SqlParser.BIT - 270)) | (1 << (SqlParser.BLOCK - 270)) | (1 << (SqlParser.BOOL - 270)) | (1 << (SqlParser.BOOLEAN - 270)) | (1 << (SqlParser.BTREE - 270)) | (1 << (SqlParser.CACHE - 270)) | (1 << (SqlParser.CASCADED - 270)) | (1 << (SqlParser.CHAIN - 270)) | (1 << (SqlParser.CHANGED - 270)) | (1 << (SqlParser.CHANNEL - 270)) | (1 << (SqlParser.CHECKSUM - 270)) | (1 << (SqlParser.PAGE_CHECKSUM - 270)) | (1 << (SqlParser.CIPHER - 270)) | (1 << (SqlParser.CLASS_ORIGIN - 270)) | (1 << (SqlParser.CLIENT - 270)) | (1 << (SqlParser.CLOSE - 270)) | (1 << (SqlParser.COALESCE - 270)) | (1 << (SqlParser.CODE - 270)))) !== 0) || ((((_la - 302)) & ~0x1f) == 0 && ((1 << (_la - 302)) & ((1 << (SqlParser.COLUMNS - 302)) | (1 << (SqlParser.COLUMN_FORMAT - 302)) | (1 << (SqlParser.COLUMN_NAME - 302)) | (1 << (SqlParser.COMMENT - 302)) | (1 << (SqlParser.COMMIT - 302)) | (1 << (SqlParser.COMPACT - 302)) | (1 << (SqlParser.COMPLETION - 302)) | (1 << (SqlParser.COMPRESSED - 302)) | (1 << (SqlParser.COMPRESSION - 302)) | (1 << (SqlParser.CONCURRENT - 302)) | (1 << (SqlParser.CONNECTION - 302)) | (1 << (SqlParser.CONSISTENT - 302)) | (1 << (SqlParser.CONSTRAINT_CATALOG - 302)) | (1 << (SqlParser.CONSTRAINT_SCHEMA - 302)) | (1 << (SqlParser.CONSTRAINT_NAME - 302)) | (1 << (SqlParser.CONTAINS - 302)) | (1 << (SqlParser.CONTEXT - 302)) | (1 << (SqlParser.CONTRIBUTORS - 302)) | (1 << (SqlParser.COPY - 302)) | (1 << (SqlParser.CPU - 302)) | (1 << (SqlParser.CURSOR_NAME - 302)) | (1 << (SqlParser.DATA - 302)) | (1 << (SqlParser.DATAFILE - 302)) | (1 << (SqlParser.DEALLOCATE - 302)) | (1 << (SqlParser.DEFAULT_AUTH - 302)) | (1 << (SqlParser.DEFINER - 302)) | (1 << (SqlParser.DELAY_KEY_WRITE - 302)) | (1 << (SqlParser.DES_KEY_FILE - 302)) | (1 << (SqlParser.DIRECTORY - 302)) | (1 << (SqlParser.DISABLE - 302)) | (1 << (SqlParser.DISCARD - 302)) | (1 << (SqlParser.DISK - 302)))) !== 0) || ((((_la - 334)) & ~0x1f) == 0 && ((1 << (_la - 334)) & ((1 << (SqlParser.DO - 334)) | (1 << (SqlParser.DUMPFILE - 334)) | (1 << (SqlParser.DUPLICATE - 334)) | (1 << (SqlParser.DYNAMIC - 334)) | (1 << (SqlParser.ENABLE - 334)) | (1 << (SqlParser.ENCRYPTION - 334)) | (1 << (SqlParser.END - 334)) | (1 << (SqlParser.ENDS - 334)) | (1 << (SqlParser.ENGINE - 334)) | (1 << (SqlParser.ENGINES - 334)) | (1 << (SqlParser.ERROR - 334)) | (1 << (SqlParser.ERRORS - 334)) | (1 << (SqlParser.ESCAPE - 334)) | (1 << (SqlParser.EVEN - 334)) | (1 << (SqlParser.EVENT - 334)) | (1 << (SqlParser.EVENTS - 334)) | (1 << (SqlParser.EVERY - 334)) | (1 << (SqlParser.EXCHANGE - 334)) | (1 << (SqlParser.EXCLUSIVE - 334)) | (1 << (SqlParser.EXPIRE - 334)) | (1 << (SqlParser.EXPORT - 334)) | (1 << (SqlParser.EXTENDED - 334)) | (1 << (SqlParser.EXTENT_SIZE - 334)) | (1 << (SqlParser.FAST - 334)) | (1 << (SqlParser.FAULTS - 334)) | (1 << (SqlParser.FIELDS - 334)) | (1 << (SqlParser.FILE_BLOCK_SIZE - 334)) | (1 << (SqlParser.FILTER - 334)) | (1 << (SqlParser.FIRST - 334)) | (1 << (SqlParser.FIXED - 334)) | (1 << (SqlParser.FLUSH - 334)) | (1 << (SqlParser.FOLLOWS - 334)))) !== 0) || ((((_la - 366)) & ~0x1f) == 0 && ((1 << (_la - 366)) & ((1 << (SqlParser.FOUND - 366)) | (1 << (SqlParser.FULL - 366)) | (1 << (SqlParser.FUNCTION - 366)) | (1 << (SqlParser.GENERAL - 366)) | (1 << (SqlParser.GLOBAL - 366)) | (1 << (SqlParser.GRANTS - 366)) | (1 << (SqlParser.GROUP_REPLICATION - 366)) | (1 << (SqlParser.HANDLER - 366)) | (1 << (SqlParser.HASH - 366)) | (1 << (SqlParser.HELP - 366)) | (1 << (SqlParser.HOST - 366)) | (1 << (SqlParser.HOSTS - 366)) | (1 << (SqlParser.IDENTIFIED - 366)) | (1 << (SqlParser.IGNORE_SERVER_IDS - 366)) | (1 << (SqlParser.IMPORT - 366)) | (1 << (SqlParser.INDEXES - 366)) | (1 << (SqlParser.INITIAL_SIZE - 366)) | (1 << (SqlParser.INPLACE - 366)) | (1 << (SqlParser.INSERT_METHOD - 366)) | (1 << (SqlParser.INSTALL - 366)) | (1 << (SqlParser.INSTANCE - 366)) | (1 << (SqlParser.INVISIBLE - 366)) | (1 << (SqlParser.INVOKER - 366)) | (1 << (SqlParser.IO - 366)) | (1 << (SqlParser.IO_THREAD - 366)) | (1 << (SqlParser.IPC - 366)) | (1 << (SqlParser.ISOLATION - 366)) | (1 << (SqlParser.ISSUER - 366)) | (1 << (SqlParser.JSON - 366)) | (1 << (SqlParser.KEY_BLOCK_SIZE - 366)) | (1 << (SqlParser.LANGUAGE - 366)) | (1 << (SqlParser.LAST - 366)))) !== 0) || ((((_la - 398)) & ~0x1f) == 0 && ((1 << (_la - 398)) & ((1 << (SqlParser.LEAVES - 398)) | (1 << (SqlParser.LESS - 398)) | (1 << (SqlParser.LEVEL - 398)) | (1 << (SqlParser.LIST - 398)) | (1 << (SqlParser.LOCAL - 398)) | (1 << (SqlParser.LOGFILE - 398)) | (1 << (SqlParser.LOGS - 398)) | (1 << (SqlParser.MASTER - 398)) | (1 << (SqlParser.MASTER_AUTO_POSITION - 398)) | (1 << (SqlParser.MASTER_CONNECT_RETRY - 398)) | (1 << (SqlParser.MASTER_DELAY - 398)) | (1 << (SqlParser.MASTER_HEARTBEAT_PERIOD - 398)) | (1 << (SqlParser.MASTER_HOST - 398)) | (1 << (SqlParser.MASTER_LOG_FILE - 398)) | (1 << (SqlParser.MASTER_LOG_POS - 398)) | (1 << (SqlParser.MASTER_PASSWORD - 398)) | (1 << (SqlParser.MASTER_PORT - 398)) | (1 << (SqlParser.MASTER_RETRY_COUNT - 398)) | (1 << (SqlParser.MASTER_SSL - 398)) | (1 << (SqlParser.MASTER_SSL_CA - 398)) | (1 << (SqlParser.MASTER_SSL_CAPATH - 398)) | (1 << (SqlParser.MASTER_SSL_CERT - 398)) | (1 << (SqlParser.MASTER_SSL_CIPHER - 398)) | (1 << (SqlParser.MASTER_SSL_CRL - 398)) | (1 << (SqlParser.MASTER_SSL_CRLPATH - 398)) | (1 << (SqlParser.MASTER_SSL_KEY - 398)) | (1 << (SqlParser.MASTER_TLS_VERSION - 398)) | (1 << (SqlParser.MASTER_USER - 398)) | (1 << (SqlParser.MAX_CONNECTIONS_PER_HOUR - 398)) | (1 << (SqlParser.MAX_QUERIES_PER_HOUR - 398)) | (1 << (SqlParser.MAX_ROWS - 398)) | (1 << (SqlParser.MAX_SIZE - 398)))) !== 0) || ((((_la - 430)) & ~0x1f) == 0 && ((1 << (_la - 430)) & ((1 << (SqlParser.MAX_UPDATES_PER_HOUR - 430)) | (1 << (SqlParser.MAX_USER_CONNECTIONS - 430)) | (1 << (SqlParser.MEDIUM - 430)) | (1 << (SqlParser.MERGE - 430)) | (1 << (SqlParser.MESSAGE_TEXT - 430)) | (1 << (SqlParser.MID - 430)) | (1 << (SqlParser.MIGRATE - 430)) | (1 << (SqlParser.MIN_ROWS - 430)) | (1 << (SqlParser.MODE - 430)) | (1 << (SqlParser.MODIFY - 430)) | (1 << (SqlParser.MUTEX - 430)) | (1 << (SqlParser.MYSQL - 430)) | (1 << (SqlParser.MYSQL_ERRNO - 430)) | (1 << (SqlParser.NAME - 430)) | (1 << (SqlParser.NAMES - 430)) | (1 << (SqlParser.NCHAR - 430)) | (1 << (SqlParser.NEVER - 430)) | (1 << (SqlParser.NEXT - 430)) | (1 << (SqlParser.NO - 430)) | (1 << (SqlParser.NODEGROUP - 430)) | (1 << (SqlParser.NONE - 430)) | (1 << (SqlParser.OFFLINE - 430)) | (1 << (SqlParser.OFFSET - 430)) | (1 << (SqlParser.OJ - 430)) | (1 << (SqlParser.OLD_PASSWORD - 430)) | (1 << (SqlParser.ONE - 430)) | (1 << (SqlParser.ONLINE - 430)) | (1 << (SqlParser.ONLY - 430)) | (1 << (SqlParser.OPEN - 430)) | (1 << (SqlParser.OPTIMIZER_COSTS - 430)) | (1 << (SqlParser.OPTIONS - 430)) | (1 << (SqlParser.OWNER - 430)))) !== 0) || ((((_la - 462)) & ~0x1f) == 0 && ((1 << (_la - 462)) & ((1 << (SqlParser.PACK_KEYS - 462)) | (1 << (SqlParser.PAGE - 462)) | (1 << (SqlParser.PARSER - 462)) | (1 << (SqlParser.PARTIAL - 462)) | (1 << (SqlParser.PARTITIONING - 462)) | (1 << (SqlParser.PARTITIONS - 462)) | (1 << (SqlParser.PASSWORD - 462)) | (1 << (SqlParser.PHASE - 462)) | (1 << (SqlParser.PLUGIN - 462)) | (1 << (SqlParser.PLUGIN_DIR - 462)) | (1 << (SqlParser.PLUGINS - 462)) | (1 << (SqlParser.PORT - 462)) | (1 << (SqlParser.PRECEDES - 462)) | (1 << (SqlParser.PREPARE - 462)) | (1 << (SqlParser.PRESERVE - 462)) | (1 << (SqlParser.PREV - 462)) | (1 << (SqlParser.PROCESSLIST - 462)) | (1 << (SqlParser.PROFILE - 462)) | (1 << (SqlParser.PROFILES - 462)) | (1 << (SqlParser.PROXY - 462)) | (1 << (SqlParser.QUERY - 462)) | (1 << (SqlParser.QUICK - 462)) | (1 << (SqlParser.REBUILD - 462)) | (1 << (SqlParser.RECOVER - 462)) | (1 << (SqlParser.REDO_BUFFER_SIZE - 462)) | (1 << (SqlParser.REDUNDANT - 462)) | (1 << (SqlParser.RELAY - 462)) | (1 << (SqlParser.RELAY_LOG_FILE - 462)) | (1 << (SqlParser.RELAY_LOG_POS - 462)) | (1 << (SqlParser.RELAYLOG - 462)) | (1 << (SqlParser.REMOVE - 462)) | (1 << (SqlParser.REORGANIZE - 462)))) !== 0) || ((((_la - 494)) & ~0x1f) == 0 && ((1 << (_la - 494)) & ((1 << (SqlParser.REPAIR - 494)) | (1 << (SqlParser.REPLICATE_DO_DB - 494)) | (1 << (SqlParser.REPLICATE_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_DB - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATE_REWRITE_DB - 494)) | (1 << (SqlParser.REPLICATE_WILD_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_WILD_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATION - 494)) | (1 << (SqlParser.RESET - 494)) | (1 << (SqlParser.RESUME - 494)) | (1 << (SqlParser.RETURNED_SQLSTATE - 494)) | (1 << (SqlParser.RETURNS - 494)) | (1 << (SqlParser.ROLE - 494)) | (1 << (SqlParser.ROLLBACK - 494)) | (1 << (SqlParser.ROLLUP - 494)) | (1 << (SqlParser.ROTATE - 494)) | (1 << (SqlParser.ROW - 494)) | (1 << (SqlParser.ROWS - 494)) | (1 << (SqlParser.ROW_FORMAT - 494)) | (1 << (SqlParser.SAVEPOINT - 494)) | (1 << (SqlParser.SCHEDULE - 494)) | (1 << (SqlParser.SECURITY - 494)) | (1 << (SqlParser.SERVER - 494)) | (1 << (SqlParser.SESSION - 494)) | (1 << (SqlParser.SHARE - 494)) | (1 << (SqlParser.SHARED - 494)) | (1 << (SqlParser.SIGNED - 494)) | (1 << (SqlParser.SIMPLE - 494)) | (1 << (SqlParser.SLAVE - 494)) | (1 << (SqlParser.SLOW - 494)) | (1 << (SqlParser.SNAPSHOT - 494)))) !== 0) || ((((_la - 526)) & ~0x1f) == 0 && ((1 << (_la - 526)) & ((1 << (SqlParser.SOCKET - 526)) | (1 << (SqlParser.SOME - 526)) | (1 << (SqlParser.SONAME - 526)) | (1 << (SqlParser.SOUNDS - 526)) | (1 << (SqlParser.SOURCE - 526)) | (1 << (SqlParser.SQL_AFTER_GTIDS - 526)) | (1 << (SqlParser.SQL_AFTER_MTS_GAPS - 526)) | (1 << (SqlParser.SQL_BEFORE_GTIDS - 526)) | (1 << (SqlParser.SQL_BUFFER_RESULT - 526)) | (1 << (SqlParser.SQL_CACHE - 526)) | (1 << (SqlParser.SQL_NO_CACHE - 526)) | (1 << (SqlParser.SQL_THREAD - 526)) | (1 << (SqlParser.START - 526)) | (1 << (SqlParser.STARTS - 526)) | (1 << (SqlParser.STATS_AUTO_RECALC - 526)) | (1 << (SqlParser.STATS_PERSISTENT - 526)) | (1 << (SqlParser.STATS_SAMPLE_PAGES - 526)) | (1 << (SqlParser.STATUS - 526)) | (1 << (SqlParser.STOP - 526)) | (1 << (SqlParser.STORAGE - 526)) | (1 << (SqlParser.STRING - 526)) | (1 << (SqlParser.SUBCLASS_ORIGIN - 526)) | (1 << (SqlParser.SUBJECT - 526)) | (1 << (SqlParser.SUBPARTITION - 526)) | (1 << (SqlParser.SUBPARTITIONS - 526)) | (1 << (SqlParser.SUSPEND - 526)) | (1 << (SqlParser.SWAPS - 526)) | (1 << (SqlParser.SWITCHES - 526)) | (1 << (SqlParser.TABLE_NAME - 526)) | (1 << (SqlParser.TABLESPACE - 526)) | (1 << (SqlParser.TEMPORARY - 526)))) !== 0) || ((((_la - 558)) & ~0x1f) == 0 && ((1 << (_la - 558)) & ((1 << (SqlParser.TEMPTABLE - 558)) | (1 << (SqlParser.THAN - 558)) | (1 << (SqlParser.TRADITIONAL - 558)) | (1 << (SqlParser.TRANSACTION - 558)) | (1 << (SqlParser.TRANSACTIONAL - 558)) | (1 << (SqlParser.TRIGGERS - 558)) | (1 << (SqlParser.TRUNCATE - 558)) | (1 << (SqlParser.UNDEFINED - 558)) | (1 << (SqlParser.UNDOFILE - 558)) | (1 << (SqlParser.UNDO_BUFFER_SIZE - 558)) | (1 << (SqlParser.UNINSTALL - 558)) | (1 << (SqlParser.UNKNOWN - 558)) | (1 << (SqlParser.UNTIL - 558)) | (1 << (SqlParser.UPGRADE - 558)) | (1 << (SqlParser.USER - 558)) | (1 << (SqlParser.USE_FRM - 558)) | (1 << (SqlParser.USER_RESOURCES - 558)) | (1 << (SqlParser.VALIDATION - 558)) | (1 << (SqlParser.VALUE - 558)) | (1 << (SqlParser.VARIABLES - 558)) | (1 << (SqlParser.VIEW - 558)) | (1 << (SqlParser.VISIBLE - 558)) | (1 << (SqlParser.WAIT - 558)) | (1 << (SqlParser.WARNINGS - 558)) | (1 << (SqlParser.WITHOUT - 558)) | (1 << (SqlParser.WORK - 558)) | (1 << (SqlParser.WRAPPER - 558)) | (1 << (SqlParser.X509 - 558)) | (1 << (SqlParser.XA - 558)) | (1 << (SqlParser.XML - 558)))) !== 0) || ((((_la - 593)) & ~0x1f) == 0 && ((1 << (_la - 593)) & ((1 << (SqlParser.INTERNAL - 593)) | (1 << (SqlParser.QUARTER - 593)) | (1 << (SqlParser.MONTH - 593)) | (1 << (SqlParser.DAY - 593)) | (1 << (SqlParser.HOUR - 593)) | (1 << (SqlParser.MINUTE - 593)) | (1 << (SqlParser.WEEK - 593)) | (1 << (SqlParser.SECOND - 593)) | (1 << (SqlParser.MICROSECOND - 593)) | (1 << (SqlParser.TABLES - 593)) | (1 << (SqlParser.ROUTINE - 593)) | (1 << (SqlParser.EXECUTE - 593)) | (1 << (SqlParser.FILE - 593)) | (1 << (SqlParser.PROCESS - 593)) | (1 << (SqlParser.RELOAD - 593)) | (1 << (SqlParser.SHUTDOWN - 593)) | (1 << (SqlParser.SUPER - 593)) | (1 << (SqlParser.PRIVILEGES - 593)) | (1 << (SqlParser.AUDIT_ADMIN - 593)) | (1 << (SqlParser.BACKUP_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ENCRYPTION_ADMIN - 593)) | (1 << (SqlParser.CLONE_ADMIN - 593)) | (1 << (SqlParser.CONNECTION_ADMIN - 593)) | (1 << (SqlParser.ENCRYPTION_KEY_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_USER - 593)) | (1 << (SqlParser.GROUP_REPLICATION_ADMIN - 593)) | (1 << (SqlParser.INNODB_REDO_LOG_ARCHIVE - 593)) | (1 << (SqlParser.NDB_STORED_USER - 593)) | (1 << (SqlParser.PERSIST_RO_VARIABLES_ADMIN - 593)))) !== 0) || ((((_la - 625)) & ~0x1f) == 0 && ((1 << (_la - 625)) & ((1 << (SqlParser.REPLICATION_APPLIER - 625)) | (1 << (SqlParser.REPLICATION_SLAVE_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_USER - 625)) | (1 << (SqlParser.ROLE_ADMIN - 625)) | (1 << (SqlParser.SESSION_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.SET_USER_ID - 625)) | (1 << (SqlParser.SHOW_ROUTINE - 625)) | (1 << (SqlParser.SYSTEM_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.TABLE_ENCRYPTION_ADMIN - 625)) | (1 << (SqlParser.VERSION_TOKEN_ADMIN - 625)) | (1 << (SqlParser.XA_RECOVER_ADMIN - 625)) | (1 << (SqlParser.ARMSCII8 - 625)) | (1 << (SqlParser.ASCII - 625)) | (1 << (SqlParser.BIG5 - 625)) | (1 << (SqlParser.CP1250 - 625)) | (1 << (SqlParser.CP1251 - 625)) | (1 << (SqlParser.CP1256 - 625)) | (1 << (SqlParser.CP1257 - 625)) | (1 << (SqlParser.CP850 - 625)) | (1 << (SqlParser.CP852 - 625)) | (1 << (SqlParser.CP866 - 625)) | (1 << (SqlParser.CP932 - 625)) | (1 << (SqlParser.DEC8 - 625)) | (1 << (SqlParser.EUCJPMS - 625)) | (1 << (SqlParser.EUCKR - 625)) | (1 << (SqlParser.GB2312 - 625)) | (1 << (SqlParser.GBK - 625)) | (1 << (SqlParser.GEOSTD8 - 625)) | (1 << (SqlParser.GREEK - 625)) | (1 << (SqlParser.HEBREW - 625)) | (1 << (SqlParser.HP8 - 625)))) !== 0) || ((((_la - 657)) & ~0x1f) == 0 && ((1 << (_la - 657)) & ((1 << (SqlParser.KEYBCS2 - 657)) | (1 << (SqlParser.KOI8R - 657)) | (1 << (SqlParser.KOI8U - 657)) | (1 << (SqlParser.LATIN1 - 657)) | (1 << (SqlParser.LATIN2 - 657)) | (1 << (SqlParser.LATIN5 - 657)) | (1 << (SqlParser.LATIN7 - 657)) | (1 << (SqlParser.MACCE - 657)) | (1 << (SqlParser.MACROMAN - 657)) | (1 << (SqlParser.SJIS - 657)) | (1 << (SqlParser.SWE7 - 657)) | (1 << (SqlParser.TIS620 - 657)) | (1 << (SqlParser.UCS2 - 657)) | (1 << (SqlParser.UJIS - 657)) | (1 << (SqlParser.UTF16 - 657)) | (1 << (SqlParser.UTF16LE - 657)) | (1 << (SqlParser.UTF32 - 657)) | (1 << (SqlParser.UTF8 - 657)) | (1 << (SqlParser.UTF8MB3 - 657)) | (1 << (SqlParser.UTF8MB4 - 657)) | (1 << (SqlParser.ARCHIVE - 657)) | (1 << (SqlParser.BLACKHOLE - 657)) | (1 << (SqlParser.CSV - 657)) | (1 << (SqlParser.FEDERATED - 657)) | (1 << (SqlParser.INNODB - 657)) | (1 << (SqlParser.MEMORY - 657)) | (1 << (SqlParser.MRG_MYISAM - 657)) | (1 << (SqlParser.MYISAM - 657)) | (1 << (SqlParser.NDB - 657)) | (1 << (SqlParser.NDBCLUSTER - 657)) | (1 << (SqlParser.PERFORMANCE_SCHEMA - 657)) | (1 << (SqlParser.TOKUDB - 657)))) !== 0) || ((((_la - 689)) & ~0x1f) == 0 && ((1 << (_la - 689)) & ((1 << (SqlParser.REPEATABLE - 689)) | (1 << (SqlParser.COMMITTED - 689)) | (1 << (SqlParser.UNCOMMITTED - 689)) | (1 << (SqlParser.SERIALIZABLE - 689)) | (1 << (SqlParser.GEOMETRYCOLLECTION - 689)) | (1 << (SqlParser.LINESTRING - 689)) | (1 << (SqlParser.MULTILINESTRING - 689)) | (1 << (SqlParser.MULTIPOINT - 689)) | (1 << (SqlParser.MULTIPOLYGON - 689)) | (1 << (SqlParser.POINT - 689)) | (1 << (SqlParser.POLYGON - 689)) | (1 << (SqlParser.ABS - 689)) | (1 << (SqlParser.ACOS - 689)) | (1 << (SqlParser.ADDDATE - 689)) | (1 << (SqlParser.ADDTIME - 689)) | (1 << (SqlParser.AES_DECRYPT - 689)) | (1 << (SqlParser.AES_ENCRYPT - 689)) | (1 << (SqlParser.AREA - 689)) | (1 << (SqlParser.ASBINARY - 689)) | (1 << (SqlParser.ASIN - 689)) | (1 << (SqlParser.ASTEXT - 689)) | (1 << (SqlParser.ASWKB - 689)) | (1 << (SqlParser.ASWKT - 689)) | (1 << (SqlParser.ASYMMETRIC_DECRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_DERIVE - 689)) | (1 << (SqlParser.ASYMMETRIC_ENCRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_SIGN - 689)) | (1 << (SqlParser.ASYMMETRIC_VERIFY - 689)) | (1 << (SqlParser.ATAN - 689)) | (1 << (SqlParser.ATAN2 - 689)))) !== 0) || ((((_la - 721)) & ~0x1f) == 0 && ((1 << (_la - 721)) & ((1 << (SqlParser.BENCHMARK - 721)) | (1 << (SqlParser.BIN - 721)) | (1 << (SqlParser.BIT_COUNT - 721)) | (1 << (SqlParser.BIT_LENGTH - 721)) | (1 << (SqlParser.BUFFER - 721)) | (1 << (SqlParser.CATALOG_NAME - 721)) | (1 << (SqlParser.CEIL - 721)) | (1 << (SqlParser.CEILING - 721)) | (1 << (SqlParser.CENTROID - 721)) | (1 << (SqlParser.CHARACTER_LENGTH - 721)) | (1 << (SqlParser.CHARSET - 721)) | (1 << (SqlParser.CHAR_LENGTH - 721)) | (1 << (SqlParser.COERCIBILITY - 721)) | (1 << (SqlParser.COLLATION - 721)) | (1 << (SqlParser.COMPRESS - 721)) | (1 << (SqlParser.CONCAT - 721)) | (1 << (SqlParser.CONCAT_WS - 721)) | (1 << (SqlParser.CONNECTION_ID - 721)) | (1 << (SqlParser.CONV - 721)) | (1 << (SqlParser.CONVERT_TZ - 721)) | (1 << (SqlParser.COS - 721)) | (1 << (SqlParser.COT - 721)) | (1 << (SqlParser.CRC32 - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PRIV_KEY - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PUB_KEY - 721)) | (1 << (SqlParser.CREATE_DH_PARAMETERS - 721)) | (1 << (SqlParser.CREATE_DIGEST - 721)) | (1 << (SqlParser.CROSSES - 721)) | (1 << (SqlParser.DATEDIFF - 721)) | (1 << (SqlParser.DATE_FORMAT - 721)) | (1 << (SqlParser.DAYNAME - 721)) | (1 << (SqlParser.DAYOFMONTH - 721)))) !== 0) || ((((_la - 753)) & ~0x1f) == 0 && ((1 << (_la - 753)) & ((1 << (SqlParser.DAYOFWEEK - 753)) | (1 << (SqlParser.DAYOFYEAR - 753)) | (1 << (SqlParser.DECODE - 753)) | (1 << (SqlParser.DEGREES - 753)) | (1 << (SqlParser.DES_DECRYPT - 753)) | (1 << (SqlParser.DES_ENCRYPT - 753)) | (1 << (SqlParser.DIMENSION - 753)) | (1 << (SqlParser.DISJOINT - 753)) | (1 << (SqlParser.ELT - 753)) | (1 << (SqlParser.ENCODE - 753)) | (1 << (SqlParser.ENCRYPT - 753)) | (1 << (SqlParser.ENDPOINT - 753)) | (1 << (SqlParser.ENVELOPE - 753)) | (1 << (SqlParser.EQUALS - 753)) | (1 << (SqlParser.EXP - 753)) | (1 << (SqlParser.EXPORT_SET - 753)) | (1 << (SqlParser.EXTERIORRING - 753)) | (1 << (SqlParser.EXTRACTVALUE - 753)) | (1 << (SqlParser.FIELD - 753)) | (1 << (SqlParser.FIND_IN_SET - 753)) | (1 << (SqlParser.FLOOR - 753)) | (1 << (SqlParser.FORMAT - 753)) | (1 << (SqlParser.FOUND_ROWS - 753)) | (1 << (SqlParser.FROM_BASE64 - 753)) | (1 << (SqlParser.FROM_DAYS - 753)) | (1 << (SqlParser.FROM_UNIXTIME - 753)) | (1 << (SqlParser.GEOMCOLLFROMTEXT - 753)) | (1 << (SqlParser.GEOMCOLLFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYFROMWKB - 753)))) !== 0) || ((((_la - 785)) & ~0x1f) == 0 && ((1 << (_la - 785)) & ((1 << (SqlParser.GEOMETRYN - 785)) | (1 << (SqlParser.GEOMETRYTYPE - 785)) | (1 << (SqlParser.GEOMFROMTEXT - 785)) | (1 << (SqlParser.GEOMFROMWKB - 785)) | (1 << (SqlParser.GET_FORMAT - 785)) | (1 << (SqlParser.GET_LOCK - 785)) | (1 << (SqlParser.GLENGTH - 785)) | (1 << (SqlParser.GREATEST - 785)) | (1 << (SqlParser.GTID_SUBSET - 785)) | (1 << (SqlParser.GTID_SUBTRACT - 785)) | (1 << (SqlParser.HEX - 785)) | (1 << (SqlParser.IFNULL - 785)) | (1 << (SqlParser.INET6_ATON - 785)) | (1 << (SqlParser.INET6_NTOA - 785)) | (1 << (SqlParser.INET_ATON - 785)) | (1 << (SqlParser.INET_NTOA - 785)) | (1 << (SqlParser.INSTR - 785)) | (1 << (SqlParser.INTERIORRINGN - 785)) | (1 << (SqlParser.INTERSECTS - 785)) | (1 << (SqlParser.ISCLOSED - 785)) | (1 << (SqlParser.ISEMPTY - 785)) | (1 << (SqlParser.ISNULL - 785)) | (1 << (SqlParser.ISSIMPLE - 785)) | (1 << (SqlParser.IS_FREE_LOCK - 785)) | (1 << (SqlParser.IS_IPV4 - 785)) | (1 << (SqlParser.IS_IPV4_COMPAT - 785)) | (1 << (SqlParser.IS_IPV4_MAPPED - 785)) | (1 << (SqlParser.IS_IPV6 - 785)) | (1 << (SqlParser.IS_USED_LOCK - 785)) | (1 << (SqlParser.LAST_INSERT_ID - 785)) | (1 << (SqlParser.LCASE - 785)) | (1 << (SqlParser.LEAST - 785)))) !== 0) || ((((_la - 817)) & ~0x1f) == 0 && ((1 << (_la - 817)) & ((1 << (SqlParser.LENGTH - 817)) | (1 << (SqlParser.LINEFROMTEXT - 817)) | (1 << (SqlParser.LINEFROMWKB - 817)) | (1 << (SqlParser.LINESTRINGFROMTEXT - 817)) | (1 << (SqlParser.LINESTRINGFROMWKB - 817)) | (1 << (SqlParser.LN - 817)) | (1 << (SqlParser.LOAD_FILE - 817)) | (1 << (SqlParser.LOCATE - 817)) | (1 << (SqlParser.LOG - 817)) | (1 << (SqlParser.LOG10 - 817)) | (1 << (SqlParser.LOG2 - 817)) | (1 << (SqlParser.LOWER - 817)) | (1 << (SqlParser.LPAD - 817)) | (1 << (SqlParser.LTRIM - 817)) | (1 << (SqlParser.MAKEDATE - 817)) | (1 << (SqlParser.MAKETIME - 817)) | (1 << (SqlParser.MAKE_SET - 817)) | (1 << (SqlParser.MASTER_POS_WAIT - 817)) | (1 << (SqlParser.MBRCONTAINS - 817)) | (1 << (SqlParser.MBRDISJOINT - 817)) | (1 << (SqlParser.MBREQUAL - 817)) | (1 << (SqlParser.MBRINTERSECTS - 817)) | (1 << (SqlParser.MBROVERLAPS - 817)) | (1 << (SqlParser.MBRTOUCHES - 817)) | (1 << (SqlParser.MBRWITHIN - 817)) | (1 << (SqlParser.MD5 - 817)) | (1 << (SqlParser.MLINEFROMTEXT - 817)) | (1 << (SqlParser.MLINEFROMWKB - 817)) | (1 << (SqlParser.MONTHNAME - 817)) | (1 << (SqlParser.MPOINTFROMTEXT - 817)) | (1 << (SqlParser.MPOINTFROMWKB - 817)) | (1 << (SqlParser.MPOLYFROMTEXT - 817)))) !== 0) || ((((_la - 849)) & ~0x1f) == 0 && ((1 << (_la - 849)) & ((1 << (SqlParser.MPOLYFROMWKB - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMTEXT - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMWKB - 849)) | (1 << (SqlParser.MULTIPOINTFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOINTFROMWKB - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMWKB - 849)) | (1 << (SqlParser.NAME_CONST - 849)) | (1 << (SqlParser.NULLIF - 849)) | (1 << (SqlParser.NUMGEOMETRIES - 849)) | (1 << (SqlParser.NUMINTERIORRINGS - 849)) | (1 << (SqlParser.NUMPOINTS - 849)) | (1 << (SqlParser.OCT - 849)) | (1 << (SqlParser.OCTET_LENGTH - 849)) | (1 << (SqlParser.ORD - 849)) | (1 << (SqlParser.OVERLAPS - 849)) | (1 << (SqlParser.PERIOD_ADD - 849)) | (1 << (SqlParser.PERIOD_DIFF - 849)) | (1 << (SqlParser.PI - 849)) | (1 << (SqlParser.POINTFROMTEXT - 849)) | (1 << (SqlParser.POINTFROMWKB - 849)) | (1 << (SqlParser.POINTN - 849)) | (1 << (SqlParser.POLYFROMTEXT - 849)) | (1 << (SqlParser.POLYFROMWKB - 849)) | (1 << (SqlParser.POLYGONFROMTEXT - 849)) | (1 << (SqlParser.POLYGONFROMWKB - 849)) | (1 << (SqlParser.POW - 849)) | (1 << (SqlParser.POWER - 849)) | (1 << (SqlParser.QUOTE - 849)) | (1 << (SqlParser.RADIANS - 849)) | (1 << (SqlParser.RAND - 849)) | (1 << (SqlParser.RANDOM_BYTES - 849)))) !== 0) || ((((_la - 881)) & ~0x1f) == 0 && ((1 << (_la - 881)) & ((1 << (SqlParser.RELEASE_LOCK - 881)) | (1 << (SqlParser.REVERSE - 881)) | (1 << (SqlParser.ROUND - 881)) | (1 << (SqlParser.ROW_COUNT - 881)) | (1 << (SqlParser.RPAD - 881)) | (1 << (SqlParser.RTRIM - 881)) | (1 << (SqlParser.SEC_TO_TIME - 881)) | (1 << (SqlParser.SESSION_USER - 881)) | (1 << (SqlParser.SHA - 881)) | (1 << (SqlParser.SHA1 - 881)) | (1 << (SqlParser.SHA2 - 881)) | (1 << (SqlParser.SCHEMA_NAME - 881)) | (1 << (SqlParser.SIGN - 881)) | (1 << (SqlParser.SIN - 881)) | (1 << (SqlParser.SLEEP - 881)) | (1 << (SqlParser.SOUNDEX - 881)) | (1 << (SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS - 881)) | (1 << (SqlParser.SQRT - 881)) | (1 << (SqlParser.SRID - 881)) | (1 << (SqlParser.STARTPOINT - 881)) | (1 << (SqlParser.STRCMP - 881)) | (1 << (SqlParser.STR_TO_DATE - 881)) | (1 << (SqlParser.ST_AREA - 881)) | (1 << (SqlParser.ST_ASBINARY - 881)) | (1 << (SqlParser.ST_ASTEXT - 881)) | (1 << (SqlParser.ST_ASWKB - 881)) | (1 << (SqlParser.ST_ASWKT - 881)) | (1 << (SqlParser.ST_BUFFER - 881)) | (1 << (SqlParser.ST_CENTROID - 881)) | (1 << (SqlParser.ST_CONTAINS - 881)) | (1 << (SqlParser.ST_CROSSES - 881)) | (1 << (SqlParser.ST_DIFFERENCE - 881)))) !== 0) || ((((_la - 913)) & ~0x1f) == 0 && ((1 << (_la - 913)) & ((1 << (SqlParser.ST_DIMENSION - 913)) | (1 << (SqlParser.ST_DISJOINT - 913)) | (1 << (SqlParser.ST_DISTANCE - 913)) | (1 << (SqlParser.ST_ENDPOINT - 913)) | (1 << (SqlParser.ST_ENVELOPE - 913)) | (1 << (SqlParser.ST_EQUALS - 913)) | (1 << (SqlParser.ST_EXTERIORRING - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYN - 913)) | (1 << (SqlParser.ST_GEOMETRYTYPE - 913)) | (1 << (SqlParser.ST_GEOMFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMFROMWKB - 913)) | (1 << (SqlParser.ST_INTERIORRINGN - 913)) | (1 << (SqlParser.ST_INTERSECTION - 913)) | (1 << (SqlParser.ST_INTERSECTS - 913)) | (1 << (SqlParser.ST_ISCLOSED - 913)) | (1 << (SqlParser.ST_ISEMPTY - 913)) | (1 << (SqlParser.ST_ISSIMPLE - 913)) | (1 << (SqlParser.ST_LINEFROMTEXT - 913)) | (1 << (SqlParser.ST_LINEFROMWKB - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMTEXT - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMWKB - 913)) | (1 << (SqlParser.ST_NUMGEOMETRIES - 913)) | (1 << (SqlParser.ST_NUMINTERIORRING - 913)) | (1 << (SqlParser.ST_NUMINTERIORRINGS - 913)) | (1 << (SqlParser.ST_NUMPOINTS - 913)))) !== 0) || ((((_la - 945)) & ~0x1f) == 0 && ((1 << (_la - 945)) & ((1 << (SqlParser.ST_OVERLAPS - 945)) | (1 << (SqlParser.ST_POINTFROMTEXT - 945)) | (1 << (SqlParser.ST_POINTFROMWKB - 945)) | (1 << (SqlParser.ST_POINTN - 945)) | (1 << (SqlParser.ST_POLYFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYFROMWKB - 945)) | (1 << (SqlParser.ST_POLYGONFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYGONFROMWKB - 945)) | (1 << (SqlParser.ST_SRID - 945)) | (1 << (SqlParser.ST_STARTPOINT - 945)) | (1 << (SqlParser.ST_SYMDIFFERENCE - 945)) | (1 << (SqlParser.ST_TOUCHES - 945)) | (1 << (SqlParser.ST_UNION - 945)) | (1 << (SqlParser.ST_WITHIN - 945)) | (1 << (SqlParser.ST_X - 945)) | (1 << (SqlParser.ST_Y - 945)) | (1 << (SqlParser.SUBDATE - 945)) | (1 << (SqlParser.SUBSTRING_INDEX - 945)) | (1 << (SqlParser.SUBTIME - 945)) | (1 << (SqlParser.SYSTEM_USER - 945)) | (1 << (SqlParser.TAN - 945)) | (1 << (SqlParser.TIMEDIFF - 945)) | (1 << (SqlParser.TIMESTAMPADD - 945)) | (1 << (SqlParser.TIMESTAMPDIFF - 945)) | (1 << (SqlParser.TIME_FORMAT - 945)) | (1 << (SqlParser.TIME_TO_SEC - 945)) | (1 << (SqlParser.TOUCHES - 945)) | (1 << (SqlParser.TO_BASE64 - 945)) | (1 << (SqlParser.TO_DAYS - 945)) | (1 << (SqlParser.TO_SECONDS - 945)) | (1 << (SqlParser.UCASE - 945)) | (1 << (SqlParser.UNCOMPRESS - 945)))) !== 0) || ((((_la - 977)) & ~0x1f) == 0 && ((1 << (_la - 977)) & ((1 << (SqlParser.UNCOMPRESSED_LENGTH - 977)) | (1 << (SqlParser.UNHEX - 977)) | (1 << (SqlParser.UNIX_TIMESTAMP - 977)) | (1 << (SqlParser.UPDATEXML - 977)) | (1 << (SqlParser.UPPER - 977)) | (1 << (SqlParser.UUID - 977)) | (1 << (SqlParser.UUID_SHORT - 977)) | (1 << (SqlParser.VALIDATE_PASSWORD_STRENGTH - 977)) | (1 << (SqlParser.VERSION - 977)) | (1 << (SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS - 977)) | (1 << (SqlParser.WEEKDAY - 977)) | (1 << (SqlParser.WEEKOFYEAR - 977)) | (1 << (SqlParser.WEIGHT_STRING - 977)) | (1 << (SqlParser.WITHIN - 977)) | (1 << (SqlParser.YEARWEEK - 977)) | (1 << (SqlParser.Y_FUNCTION - 977)) | (1 << (SqlParser.X_FUNCTION - 977)))) !== 0) || ((((_la - 1032)) & ~0x1f) == 0 && ((1 << (_la - 1032)) & ((1 << (SqlParser.CHARSET_REVERSE_QOUTE_STRING - 1032)) | (1 << (SqlParser.STRING_LITERAL - 1032)) | (1 << (SqlParser.ID - 1032)) | (1 << (SqlParser.REVERSE_QUOTE_ID - 1032)))) !== 0)) {
+ this.state = 2392;
+ localctx.name = this.uid();
+ }
+
+ }
+
+ this.state = 2397;
+ this.match(SqlParser.CHECK);
+ this.state = 2398;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 2399;
+ this.expression(0);
+ this.state = 2400;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+
+ case 10:
+ localctx = new AlterBySetAlgorithmContext(this, localctx);
+ this.enterOuterAlt(localctx, 10);
+ this.state = 2402;
+ this.match(SqlParser.ALGORITHM);
+ this.state = 2404;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 2403;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 2406;
+ localctx.algType = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.DEFAULT || _la===SqlParser.COPY || _la===SqlParser.INPLACE)) {
+ localctx.algType = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+
+ case 11:
+ localctx = new AlterByChangeDefaultContext(this, localctx);
+ this.enterOuterAlt(localctx, 11);
+ this.state = 2407;
+ this.match(SqlParser.ALTER);
+ this.state = 2409;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.COLUMN) {
+ this.state = 2408;
+ this.match(SqlParser.COLUMN);
+ }
+
+ this.state = 2411;
+ this.uid();
+ this.state = 2417;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.SET:
+ this.state = 2412;
+ this.match(SqlParser.SET);
+ this.state = 2413;
+ this.match(SqlParser.DEFAULT);
+ this.state = 2414;
+ this.defaultValue();
+ break;
+ case SqlParser.DROP:
+ this.state = 2415;
+ this.match(SqlParser.DROP);
+ this.state = 2416;
+ this.match(SqlParser.DEFAULT);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ break;
+
+ case 12:
+ localctx = new AlterByChangeColumnContext(this, localctx);
+ this.enterOuterAlt(localctx, 12);
+ this.state = 2419;
+ this.match(SqlParser.CHANGE);
+ this.state = 2421;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.COLUMN) {
+ this.state = 2420;
+ this.match(SqlParser.COLUMN);
+ }
+
+ this.state = 2423;
+ localctx.oldColumn = this.uid();
+ this.state = 2424;
+ localctx.newColumn = this.uid();
+ this.state = 2425;
+ this.columnDefinition();
+ this.state = 2429;
+ this._errHandler.sync(this);
+ switch (this._input.LA(1)) {
+ case SqlParser.FIRST:
+ this.state = 2426;
+ this.match(SqlParser.FIRST);
+ break;
+ case SqlParser.AFTER:
+ this.state = 2427;
+ this.match(SqlParser.AFTER);
+ this.state = 2428;
+ localctx.afterColumn = this.uid();
+ break;
+ case SqlParser.EOF:
+ case SqlParser.ALTER:
+ case SqlParser.ANALYZE:
+ case SqlParser.CALL:
+ case SqlParser.CHANGE:
+ case SqlParser.CHECK:
+ case SqlParser.CREATE:
+ case SqlParser.DELETE:
+ case SqlParser.DESC:
+ case SqlParser.DESCRIBE:
+ case SqlParser.DROP:
+ case SqlParser.EXPLAIN:
+ case SqlParser.GET:
+ case SqlParser.GRANT:
+ case SqlParser.INSERT:
+ case SqlParser.KILL:
+ case SqlParser.LOAD:
+ case SqlParser.LOCK:
+ case SqlParser.OPTIMIZE:
+ case SqlParser.PARTITION:
+ case SqlParser.PURGE:
+ case SqlParser.RELEASE:
+ case SqlParser.RENAME:
+ case SqlParser.REPLACE:
+ case SqlParser.RESIGNAL:
+ case SqlParser.REVOKE:
+ case SqlParser.SELECT:
+ case SqlParser.SET:
+ case SqlParser.SHOW:
+ case SqlParser.SIGNAL:
+ case SqlParser.UNLOCK:
+ case SqlParser.UPDATE:
+ case SqlParser.USE:
+ case SqlParser.BEGIN:
+ case SqlParser.BINLOG:
+ case SqlParser.CACHE:
+ case SqlParser.CHECKSUM:
+ case SqlParser.COMMIT:
+ case SqlParser.DEALLOCATE:
+ case SqlParser.DO:
+ case SqlParser.FLUSH:
+ case SqlParser.HANDLER:
+ case SqlParser.HELP:
+ case SqlParser.INSTALL:
+ case SqlParser.PREPARE:
+ case SqlParser.REPAIR:
+ case SqlParser.RESET:
+ case SqlParser.ROLLBACK:
+ case SqlParser.SAVEPOINT:
+ case SqlParser.START:
+ case SqlParser.STOP:
+ case SqlParser.TRUNCATE:
+ case SqlParser.UNINSTALL:
+ case SqlParser.XA:
+ case SqlParser.EXECUTE:
+ case SqlParser.SHUTDOWN:
+ case SqlParser.MINUSMINUS:
+ case SqlParser.LR_BRACKET:
+ case SqlParser.COMMA:
+ case SqlParser.SEMI:
+ break;
+ default:
+ break;
+ }
+ break;
+
+ case 13:
+ localctx = new AlterByRenameColumnContext(this, localctx);
+ this.enterOuterAlt(localctx, 13);
+ this.state = 2431;
+ this.match(SqlParser.RENAME);
+ this.state = 2432;
+ this.match(SqlParser.COLUMN);
+ this.state = 2433;
+ localctx.oldColumn = this.uid();
+ this.state = 2434;
+ this.match(SqlParser.TO);
+ this.state = 2435;
+ localctx.newColumn = this.uid();
+ break;
+
+ case 14:
+ localctx = new AlterByLockContext(this, localctx);
+ this.enterOuterAlt(localctx, 14);
+ this.state = 2437;
+ this.match(SqlParser.LOCK);
+ this.state = 2439;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 2438;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 2441;
+ localctx.lockType = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.DEFAULT || _la===SqlParser.EXCLUSIVE || _la===SqlParser.NONE || _la===SqlParser.SHARED)) {
+ localctx.lockType = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+
+ case 15:
+ localctx = new AlterByModifyColumnContext(this, localctx);
+ this.enterOuterAlt(localctx, 15);
+ this.state = 2442;
+ this.match(SqlParser.MODIFY);
+ this.state = 2444;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.COLUMN) {
+ this.state = 2443;
+ this.match(SqlParser.COLUMN);
+ }
+
+ this.state = 2446;
+ this.uid();
+ this.state = 2447;
+ this.columnDefinition();
+ this.state = 2451;
+ this._errHandler.sync(this);
+ switch (this._input.LA(1)) {
+ case SqlParser.FIRST:
+ this.state = 2448;
+ this.match(SqlParser.FIRST);
+ break;
+ case SqlParser.AFTER:
+ this.state = 2449;
+ this.match(SqlParser.AFTER);
+ this.state = 2450;
+ this.uid();
+ break;
+ case SqlParser.EOF:
+ case SqlParser.ALTER:
+ case SqlParser.ANALYZE:
+ case SqlParser.CALL:
+ case SqlParser.CHANGE:
+ case SqlParser.CHECK:
+ case SqlParser.CREATE:
+ case SqlParser.DELETE:
+ case SqlParser.DESC:
+ case SqlParser.DESCRIBE:
+ case SqlParser.DROP:
+ case SqlParser.EXPLAIN:
+ case SqlParser.GET:
+ case SqlParser.GRANT:
+ case SqlParser.INSERT:
+ case SqlParser.KILL:
+ case SqlParser.LOAD:
+ case SqlParser.LOCK:
+ case SqlParser.OPTIMIZE:
+ case SqlParser.PARTITION:
+ case SqlParser.PURGE:
+ case SqlParser.RELEASE:
+ case SqlParser.RENAME:
+ case SqlParser.REPLACE:
+ case SqlParser.RESIGNAL:
+ case SqlParser.REVOKE:
+ case SqlParser.SELECT:
+ case SqlParser.SET:
+ case SqlParser.SHOW:
+ case SqlParser.SIGNAL:
+ case SqlParser.UNLOCK:
+ case SqlParser.UPDATE:
+ case SqlParser.USE:
+ case SqlParser.BEGIN:
+ case SqlParser.BINLOG:
+ case SqlParser.CACHE:
+ case SqlParser.CHECKSUM:
+ case SqlParser.COMMIT:
+ case SqlParser.DEALLOCATE:
+ case SqlParser.DO:
+ case SqlParser.FLUSH:
+ case SqlParser.HANDLER:
+ case SqlParser.HELP:
+ case SqlParser.INSTALL:
+ case SqlParser.PREPARE:
+ case SqlParser.REPAIR:
+ case SqlParser.RESET:
+ case SqlParser.ROLLBACK:
+ case SqlParser.SAVEPOINT:
+ case SqlParser.START:
+ case SqlParser.STOP:
+ case SqlParser.TRUNCATE:
+ case SqlParser.UNINSTALL:
+ case SqlParser.XA:
+ case SqlParser.EXECUTE:
+ case SqlParser.SHUTDOWN:
+ case SqlParser.MINUSMINUS:
+ case SqlParser.LR_BRACKET:
+ case SqlParser.COMMA:
+ case SqlParser.SEMI:
+ break;
+ default:
+ break;
+ }
+ break;
+
+ case 16:
+ localctx = new AlterByDropColumnContext(this, localctx);
+ this.enterOuterAlt(localctx, 16);
+ this.state = 2453;
+ this.match(SqlParser.DROP);
+ this.state = 2455;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.COLUMN) {
+ this.state = 2454;
+ this.match(SqlParser.COLUMN);
+ }
+
+ this.state = 2457;
+ this.uid();
+ this.state = 2459;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.RESTRICT) {
+ this.state = 2458;
+ this.match(SqlParser.RESTRICT);
+ }
+
+ break;
+
+ case 17:
+ localctx = new AlterByDropPrimaryKeyContext(this, localctx);
+ this.enterOuterAlt(localctx, 17);
+ this.state = 2461;
+ this.match(SqlParser.DROP);
+ this.state = 2462;
+ this.match(SqlParser.PRIMARY);
+ this.state = 2463;
+ this.match(SqlParser.KEY);
+ break;
+
+ case 18:
+ localctx = new AlterByRenameIndexContext(this, localctx);
+ this.enterOuterAlt(localctx, 18);
+ this.state = 2464;
+ this.match(SqlParser.RENAME);
+ this.state = 2465;
+ localctx.indexFormat = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.INDEX || _la===SqlParser.KEY)) {
+ localctx.indexFormat = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 2466;
+ this.uid();
+ this.state = 2467;
+ this.match(SqlParser.TO);
+ this.state = 2468;
+ this.uid();
+ break;
+
+ case 19:
+ localctx = new AlterByAlterIndexVisibilityContext(this, localctx);
+ this.enterOuterAlt(localctx, 19);
+ this.state = 2470;
+ this.match(SqlParser.ALTER);
+ this.state = 2471;
+ this.match(SqlParser.INDEX);
+ this.state = 2472;
+ this.uid();
+ this.state = 2473;
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.INVISIBLE || _la===SqlParser.VISIBLE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+
+ case 20:
+ localctx = new AlterByDropIndexContext(this, localctx);
+ this.enterOuterAlt(localctx, 20);
+ this.state = 2475;
+ this.match(SqlParser.DROP);
+ this.state = 2476;
+ localctx.indexFormat = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.INDEX || _la===SqlParser.KEY)) {
+ localctx.indexFormat = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 2477;
+ this.uid();
+ break;
+
+ case 21:
+ localctx = new AlterByDropForeignKeyContext(this, localctx);
+ this.enterOuterAlt(localctx, 21);
+ this.state = 2478;
+ this.match(SqlParser.DROP);
+ this.state = 2479;
+ this.match(SqlParser.FOREIGN);
+ this.state = 2480;
+ this.match(SqlParser.KEY);
+ this.state = 2481;
+ this.uid();
+ break;
+
+ case 22:
+ localctx = new AlterByDisableKeysContext(this, localctx);
+ this.enterOuterAlt(localctx, 22);
+ this.state = 2482;
+ this.match(SqlParser.DISABLE);
+ this.state = 2483;
+ this.match(SqlParser.KEYS);
+ break;
+
+ case 23:
+ localctx = new AlterByEnableKeysContext(this, localctx);
+ this.enterOuterAlt(localctx, 23);
+ this.state = 2484;
+ this.match(SqlParser.ENABLE);
+ this.state = 2485;
+ this.match(SqlParser.KEYS);
+ break;
+
+ case 24:
+ localctx = new AlterByRenameContext(this, localctx);
+ this.enterOuterAlt(localctx, 24);
+ this.state = 2486;
+ this.match(SqlParser.RENAME);
+ this.state = 2488;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.AS || _la===SqlParser.TO) {
+ this.state = 2487;
+ localctx.renameFormat = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.AS || _la===SqlParser.TO)) {
+ localctx.renameFormat = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 2492;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,318,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 2490;
+ this.uid();
+ break;
+
+ case 2:
+ this.state = 2491;
+ this.fullId();
+ break;
+
+ }
+ break;
+
+ case 25:
+ localctx = new AlterByOrderContext(this, localctx);
+ this.enterOuterAlt(localctx, 25);
+ this.state = 2494;
+ this.match(SqlParser.ORDER);
+ this.state = 2495;
+ this.match(SqlParser.BY);
+ this.state = 2496;
+ this.uidList();
+ break;
+
+ case 26:
+ localctx = new AlterByConvertCharsetContext(this, localctx);
+ this.enterOuterAlt(localctx, 26);
+ this.state = 2497;
+ this.match(SqlParser.CONVERT);
+ this.state = 2498;
+ this.match(SqlParser.TO);
+ this.state = 2499;
+ this.match(SqlParser.CHARACTER);
+ this.state = 2500;
+ this.match(SqlParser.SET);
+ this.state = 2501;
+ this.charsetName();
+ this.state = 2504;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.COLLATE) {
+ this.state = 2502;
+ this.match(SqlParser.COLLATE);
+ this.state = 2503;
+ this.collationName();
+ }
+
+ break;
+
+ case 27:
+ localctx = new AlterByDefaultCharsetContext(this, localctx);
+ this.enterOuterAlt(localctx, 27);
+ this.state = 2507;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.DEFAULT) {
+ this.state = 2506;
+ this.match(SqlParser.DEFAULT);
+ }
+
+ this.state = 2509;
+ this.match(SqlParser.CHARACTER);
+ this.state = 2510;
+ this.match(SqlParser.SET);
+ this.state = 2511;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ this.state = 2512;
+ this.charsetName();
+ this.state = 2516;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.COLLATE) {
+ this.state = 2513;
+ this.match(SqlParser.COLLATE);
+ this.state = 2514;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ this.state = 2515;
+ this.collationName();
+ }
+
+ break;
+
+ case 28:
+ localctx = new AlterByDiscardTablespaceContext(this, localctx);
+ this.enterOuterAlt(localctx, 28);
+ this.state = 2518;
+ this.match(SqlParser.DISCARD);
+ this.state = 2519;
+ this.match(SqlParser.TABLESPACE);
+ break;
+
+ case 29:
+ localctx = new AlterByImportTablespaceContext(this, localctx);
+ this.enterOuterAlt(localctx, 29);
+ this.state = 2520;
+ this.match(SqlParser.IMPORT);
+ this.state = 2521;
+ this.match(SqlParser.TABLESPACE);
+ break;
+
+ case 30:
+ localctx = new AlterByForceContext(this, localctx);
+ this.enterOuterAlt(localctx, 30);
+ this.state = 2522;
+ this.match(SqlParser.FORCE);
+ break;
+
+ case 31:
+ localctx = new AlterByValidateContext(this, localctx);
+ this.enterOuterAlt(localctx, 31);
+ this.state = 2523;
+ localctx.validationFormat = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.WITH || _la===SqlParser.WITHOUT)) {
+ localctx.validationFormat = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 2524;
+ this.match(SqlParser.VALIDATION);
+ break;
+
+ case 32:
+ localctx = new AlterByAddPartitionContext(this, localctx);
+ this.enterOuterAlt(localctx, 32);
+ this.state = 2525;
+ this.match(SqlParser.ADD);
+ this.state = 2526;
+ this.match(SqlParser.PARTITION);
+ this.state = 2527;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 2528;
+ this.partitionDefinition();
+ this.state = 2533;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 2529;
+ this.match(SqlParser.COMMA);
+ this.state = 2530;
+ this.partitionDefinition();
+ this.state = 2535;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 2536;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+
+ case 33:
+ localctx = new AlterByDropPartitionContext(this, localctx);
+ this.enterOuterAlt(localctx, 33);
+ this.state = 2538;
+ this.match(SqlParser.DROP);
+ this.state = 2539;
+ this.match(SqlParser.PARTITION);
+ this.state = 2540;
+ this.uidList();
+ break;
+
+ case 34:
+ localctx = new AlterByDiscardPartitionContext(this, localctx);
+ this.enterOuterAlt(localctx, 34);
+ this.state = 2541;
+ this.match(SqlParser.DISCARD);
+ this.state = 2542;
+ this.match(SqlParser.PARTITION);
+ this.state = 2545;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.CURRENT:
+ case SqlParser.DATABASE:
+ case SqlParser.DIAGNOSTICS:
+ case SqlParser.LEFT:
+ case SqlParser.NUMBER:
+ case SqlParser.RIGHT:
+ case SqlParser.STACKED:
+ case SqlParser.DATE:
+ case SqlParser.TIME:
+ case SqlParser.TIMESTAMP:
+ case SqlParser.DATETIME:
+ case SqlParser.YEAR:
+ case SqlParser.TEXT:
+ case SqlParser.ENUM:
+ case SqlParser.SERIAL:
+ case SqlParser.JSON_VALID:
+ case SqlParser.JSON_SCHEMA_VALID:
+ case SqlParser.COUNT:
+ case SqlParser.POSITION:
+ case SqlParser.ACCOUNT:
+ case SqlParser.ACTION:
+ case SqlParser.AFTER:
+ case SqlParser.AGGREGATE:
+ case SqlParser.ALGORITHM:
+ case SqlParser.ANY:
+ case SqlParser.AT:
+ case SqlParser.AUTHORS:
+ case SqlParser.AUTOCOMMIT:
+ case SqlParser.AUTOEXTEND_SIZE:
+ case SqlParser.AUTO_INCREMENT:
+ case SqlParser.AVG_ROW_LENGTH:
+ case SqlParser.BEGIN:
+ case SqlParser.BINLOG:
+ case SqlParser.BIT:
+ case SqlParser.BLOCK:
+ case SqlParser.BOOL:
+ case SqlParser.BOOLEAN:
+ case SqlParser.BTREE:
+ case SqlParser.CACHE:
+ case SqlParser.CASCADED:
+ case SqlParser.CHAIN:
+ case SqlParser.CHANGED:
+ case SqlParser.CHANNEL:
+ case SqlParser.CHECKSUM:
+ case SqlParser.PAGE_CHECKSUM:
+ case SqlParser.CIPHER:
+ case SqlParser.CLASS_ORIGIN:
+ case SqlParser.CLIENT:
+ case SqlParser.CLOSE:
+ case SqlParser.COALESCE:
+ case SqlParser.CODE:
+ case SqlParser.COLUMNS:
+ case SqlParser.COLUMN_FORMAT:
+ case SqlParser.COLUMN_NAME:
+ case SqlParser.COMMENT:
+ case SqlParser.COMMIT:
+ case SqlParser.COMPACT:
+ case SqlParser.COMPLETION:
+ case SqlParser.COMPRESSED:
+ case SqlParser.COMPRESSION:
+ case SqlParser.CONCURRENT:
+ case SqlParser.CONNECTION:
+ case SqlParser.CONSISTENT:
+ case SqlParser.CONSTRAINT_CATALOG:
+ case SqlParser.CONSTRAINT_SCHEMA:
+ case SqlParser.CONSTRAINT_NAME:
+ case SqlParser.CONTAINS:
+ case SqlParser.CONTEXT:
+ case SqlParser.CONTRIBUTORS:
+ case SqlParser.COPY:
+ case SqlParser.CPU:
+ case SqlParser.CURSOR_NAME:
+ case SqlParser.DATA:
+ case SqlParser.DATAFILE:
+ case SqlParser.DEALLOCATE:
+ case SqlParser.DEFAULT_AUTH:
+ case SqlParser.DEFINER:
+ case SqlParser.DELAY_KEY_WRITE:
+ case SqlParser.DES_KEY_FILE:
+ case SqlParser.DIRECTORY:
+ case SqlParser.DISABLE:
+ case SqlParser.DISCARD:
+ case SqlParser.DISK:
+ case SqlParser.DO:
+ case SqlParser.DUMPFILE:
+ case SqlParser.DUPLICATE:
+ case SqlParser.DYNAMIC:
+ case SqlParser.ENABLE:
+ case SqlParser.ENCRYPTION:
+ case SqlParser.END:
+ case SqlParser.ENDS:
+ case SqlParser.ENGINE:
+ case SqlParser.ENGINES:
+ case SqlParser.ERROR:
+ case SqlParser.ERRORS:
+ case SqlParser.ESCAPE:
+ case SqlParser.EVEN:
+ case SqlParser.EVENT:
+ case SqlParser.EVENTS:
+ case SqlParser.EVERY:
+ case SqlParser.EXCHANGE:
+ case SqlParser.EXCLUSIVE:
+ case SqlParser.EXPIRE:
+ case SqlParser.EXPORT:
+ case SqlParser.EXTENDED:
+ case SqlParser.EXTENT_SIZE:
+ case SqlParser.FAST:
+ case SqlParser.FAULTS:
+ case SqlParser.FIELDS:
+ case SqlParser.FILE_BLOCK_SIZE:
+ case SqlParser.FILTER:
+ case SqlParser.FIRST:
+ case SqlParser.FIXED:
+ case SqlParser.FLUSH:
+ case SqlParser.FOLLOWS:
+ case SqlParser.FOUND:
+ case SqlParser.FULL:
+ case SqlParser.FUNCTION:
+ case SqlParser.GENERAL:
+ case SqlParser.GLOBAL:
+ case SqlParser.GRANTS:
+ case SqlParser.GROUP_REPLICATION:
+ case SqlParser.HANDLER:
+ case SqlParser.HASH:
+ case SqlParser.HELP:
+ case SqlParser.HOST:
+ case SqlParser.HOSTS:
+ case SqlParser.IDENTIFIED:
+ case SqlParser.IGNORE_SERVER_IDS:
+ case SqlParser.IMPORT:
+ case SqlParser.INDEXES:
+ case SqlParser.INITIAL_SIZE:
+ case SqlParser.INPLACE:
+ case SqlParser.INSERT_METHOD:
+ case SqlParser.INSTALL:
+ case SqlParser.INSTANCE:
+ case SqlParser.INVISIBLE:
+ case SqlParser.INVOKER:
+ case SqlParser.IO:
+ case SqlParser.IO_THREAD:
+ case SqlParser.IPC:
+ case SqlParser.ISOLATION:
+ case SqlParser.ISSUER:
+ case SqlParser.JSON:
+ case SqlParser.KEY_BLOCK_SIZE:
+ case SqlParser.LANGUAGE:
+ case SqlParser.LAST:
+ case SqlParser.LEAVES:
+ case SqlParser.LESS:
+ case SqlParser.LEVEL:
+ case SqlParser.LIST:
+ case SqlParser.LOCAL:
+ case SqlParser.LOGFILE:
+ case SqlParser.LOGS:
+ case SqlParser.MASTER:
+ case SqlParser.MASTER_AUTO_POSITION:
+ case SqlParser.MASTER_CONNECT_RETRY:
+ case SqlParser.MASTER_DELAY:
+ case SqlParser.MASTER_HEARTBEAT_PERIOD:
+ case SqlParser.MASTER_HOST:
+ case SqlParser.MASTER_LOG_FILE:
+ case SqlParser.MASTER_LOG_POS:
+ case SqlParser.MASTER_PASSWORD:
+ case SqlParser.MASTER_PORT:
+ case SqlParser.MASTER_RETRY_COUNT:
+ case SqlParser.MASTER_SSL:
+ case SqlParser.MASTER_SSL_CA:
+ case SqlParser.MASTER_SSL_CAPATH:
+ case SqlParser.MASTER_SSL_CERT:
+ case SqlParser.MASTER_SSL_CIPHER:
+ case SqlParser.MASTER_SSL_CRL:
+ case SqlParser.MASTER_SSL_CRLPATH:
+ case SqlParser.MASTER_SSL_KEY:
+ case SqlParser.MASTER_TLS_VERSION:
+ case SqlParser.MASTER_USER:
+ case SqlParser.MAX_CONNECTIONS_PER_HOUR:
+ case SqlParser.MAX_QUERIES_PER_HOUR:
+ case SqlParser.MAX_ROWS:
+ case SqlParser.MAX_SIZE:
+ case SqlParser.MAX_UPDATES_PER_HOUR:
+ case SqlParser.MAX_USER_CONNECTIONS:
+ case SqlParser.MEDIUM:
+ case SqlParser.MERGE:
+ case SqlParser.MESSAGE_TEXT:
+ case SqlParser.MID:
+ case SqlParser.MIGRATE:
+ case SqlParser.MIN_ROWS:
+ case SqlParser.MODE:
+ case SqlParser.MODIFY:
+ case SqlParser.MUTEX:
+ case SqlParser.MYSQL:
+ case SqlParser.MYSQL_ERRNO:
+ case SqlParser.NAME:
+ case SqlParser.NAMES:
+ case SqlParser.NCHAR:
+ case SqlParser.NEVER:
+ case SqlParser.NEXT:
+ case SqlParser.NO:
+ case SqlParser.NODEGROUP:
+ case SqlParser.NONE:
+ case SqlParser.OFFLINE:
+ case SqlParser.OFFSET:
+ case SqlParser.OJ:
+ case SqlParser.OLD_PASSWORD:
+ case SqlParser.ONE:
+ case SqlParser.ONLINE:
+ case SqlParser.ONLY:
+ case SqlParser.OPEN:
+ case SqlParser.OPTIMIZER_COSTS:
+ case SqlParser.OPTIONS:
+ case SqlParser.OWNER:
+ case SqlParser.PACK_KEYS:
+ case SqlParser.PAGE:
+ case SqlParser.PARSER:
+ case SqlParser.PARTIAL:
+ case SqlParser.PARTITIONING:
+ case SqlParser.PARTITIONS:
+ case SqlParser.PASSWORD:
+ case SqlParser.PHASE:
+ case SqlParser.PLUGIN:
+ case SqlParser.PLUGIN_DIR:
+ case SqlParser.PLUGINS:
+ case SqlParser.PORT:
+ case SqlParser.PRECEDES:
+ case SqlParser.PREPARE:
+ case SqlParser.PRESERVE:
+ case SqlParser.PREV:
+ case SqlParser.PROCESSLIST:
+ case SqlParser.PROFILE:
+ case SqlParser.PROFILES:
+ case SqlParser.PROXY:
+ case SqlParser.QUERY:
+ case SqlParser.QUICK:
+ case SqlParser.REBUILD:
+ case SqlParser.RECOVER:
+ case SqlParser.REDO_BUFFER_SIZE:
+ case SqlParser.REDUNDANT:
+ case SqlParser.RELAY:
+ case SqlParser.RELAY_LOG_FILE:
+ case SqlParser.RELAY_LOG_POS:
+ case SqlParser.RELAYLOG:
+ case SqlParser.REMOVE:
+ case SqlParser.REORGANIZE:
+ case SqlParser.REPAIR:
+ case SqlParser.REPLICATE_DO_DB:
+ case SqlParser.REPLICATE_DO_TABLE:
+ case SqlParser.REPLICATE_IGNORE_DB:
+ case SqlParser.REPLICATE_IGNORE_TABLE:
+ case SqlParser.REPLICATE_REWRITE_DB:
+ case SqlParser.REPLICATE_WILD_DO_TABLE:
+ case SqlParser.REPLICATE_WILD_IGNORE_TABLE:
+ case SqlParser.REPLICATION:
+ case SqlParser.RESET:
+ case SqlParser.RESUME:
+ case SqlParser.RETURNED_SQLSTATE:
+ case SqlParser.RETURNS:
+ case SqlParser.ROLE:
+ case SqlParser.ROLLBACK:
+ case SqlParser.ROLLUP:
+ case SqlParser.ROTATE:
+ case SqlParser.ROW:
+ case SqlParser.ROWS:
+ case SqlParser.ROW_FORMAT:
+ case SqlParser.SAVEPOINT:
+ case SqlParser.SCHEDULE:
+ case SqlParser.SECURITY:
+ case SqlParser.SERVER:
+ case SqlParser.SESSION:
+ case SqlParser.SHARE:
+ case SqlParser.SHARED:
+ case SqlParser.SIGNED:
+ case SqlParser.SIMPLE:
+ case SqlParser.SLAVE:
+ case SqlParser.SLOW:
+ case SqlParser.SNAPSHOT:
+ case SqlParser.SOCKET:
+ case SqlParser.SOME:
+ case SqlParser.SONAME:
+ case SqlParser.SOUNDS:
+ case SqlParser.SOURCE:
+ case SqlParser.SQL_AFTER_GTIDS:
+ case SqlParser.SQL_AFTER_MTS_GAPS:
+ case SqlParser.SQL_BEFORE_GTIDS:
+ case SqlParser.SQL_BUFFER_RESULT:
+ case SqlParser.SQL_CACHE:
+ case SqlParser.SQL_NO_CACHE:
+ case SqlParser.SQL_THREAD:
+ case SqlParser.START:
+ case SqlParser.STARTS:
+ case SqlParser.STATS_AUTO_RECALC:
+ case SqlParser.STATS_PERSISTENT:
+ case SqlParser.STATS_SAMPLE_PAGES:
+ case SqlParser.STATUS:
+ case SqlParser.STOP:
+ case SqlParser.STORAGE:
+ case SqlParser.STRING:
+ case SqlParser.SUBCLASS_ORIGIN:
+ case SqlParser.SUBJECT:
+ case SqlParser.SUBPARTITION:
+ case SqlParser.SUBPARTITIONS:
+ case SqlParser.SUSPEND:
+ case SqlParser.SWAPS:
+ case SqlParser.SWITCHES:
+ case SqlParser.TABLE_NAME:
+ case SqlParser.TABLESPACE:
+ case SqlParser.TEMPORARY:
+ case SqlParser.TEMPTABLE:
+ case SqlParser.THAN:
+ case SqlParser.TRADITIONAL:
+ case SqlParser.TRANSACTION:
+ case SqlParser.TRANSACTIONAL:
+ case SqlParser.TRIGGERS:
+ case SqlParser.TRUNCATE:
+ case SqlParser.UNDEFINED:
+ case SqlParser.UNDOFILE:
+ case SqlParser.UNDO_BUFFER_SIZE:
+ case SqlParser.UNINSTALL:
+ case SqlParser.UNKNOWN:
+ case SqlParser.UNTIL:
+ case SqlParser.UPGRADE:
+ case SqlParser.USER:
+ case SqlParser.USE_FRM:
+ case SqlParser.USER_RESOURCES:
+ case SqlParser.VALIDATION:
+ case SqlParser.VALUE:
+ case SqlParser.VARIABLES:
+ case SqlParser.VIEW:
+ case SqlParser.VISIBLE:
+ case SqlParser.WAIT:
+ case SqlParser.WARNINGS:
+ case SqlParser.WITHOUT:
+ case SqlParser.WORK:
+ case SqlParser.WRAPPER:
+ case SqlParser.X509:
+ case SqlParser.XA:
+ case SqlParser.XML:
+ case SqlParser.INTERNAL:
+ case SqlParser.QUARTER:
+ case SqlParser.MONTH:
+ case SqlParser.DAY:
+ case SqlParser.HOUR:
+ case SqlParser.MINUTE:
+ case SqlParser.WEEK:
+ case SqlParser.SECOND:
+ case SqlParser.MICROSECOND:
+ case SqlParser.TABLES:
+ case SqlParser.ROUTINE:
+ case SqlParser.EXECUTE:
+ case SqlParser.FILE:
+ case SqlParser.PROCESS:
+ case SqlParser.RELOAD:
+ case SqlParser.SHUTDOWN:
+ case SqlParser.SUPER:
+ case SqlParser.PRIVILEGES:
+ case SqlParser.AUDIT_ADMIN:
+ case SqlParser.BACKUP_ADMIN:
+ case SqlParser.BINLOG_ADMIN:
+ case SqlParser.BINLOG_ENCRYPTION_ADMIN:
+ case SqlParser.CLONE_ADMIN:
+ case SqlParser.CONNECTION_ADMIN:
+ case SqlParser.ENCRYPTION_KEY_ADMIN:
+ case SqlParser.FIREWALL_ADMIN:
+ case SqlParser.FIREWALL_USER:
+ case SqlParser.GROUP_REPLICATION_ADMIN:
+ case SqlParser.INNODB_REDO_LOG_ARCHIVE:
+ case SqlParser.NDB_STORED_USER:
+ case SqlParser.PERSIST_RO_VARIABLES_ADMIN:
+ case SqlParser.REPLICATION_APPLIER:
+ case SqlParser.REPLICATION_SLAVE_ADMIN:
+ case SqlParser.RESOURCE_GROUP_ADMIN:
+ case SqlParser.RESOURCE_GROUP_USER:
+ case SqlParser.ROLE_ADMIN:
+ case SqlParser.SESSION_VARIABLES_ADMIN:
+ case SqlParser.SET_USER_ID:
+ case SqlParser.SHOW_ROUTINE:
+ case SqlParser.SYSTEM_VARIABLES_ADMIN:
+ case SqlParser.TABLE_ENCRYPTION_ADMIN:
+ case SqlParser.VERSION_TOKEN_ADMIN:
+ case SqlParser.XA_RECOVER_ADMIN:
+ case SqlParser.ARMSCII8:
+ case SqlParser.ASCII:
+ case SqlParser.BIG5:
+ case SqlParser.CP1250:
+ case SqlParser.CP1251:
+ case SqlParser.CP1256:
+ case SqlParser.CP1257:
+ case SqlParser.CP850:
+ case SqlParser.CP852:
+ case SqlParser.CP866:
+ case SqlParser.CP932:
+ case SqlParser.DEC8:
+ case SqlParser.EUCJPMS:
+ case SqlParser.EUCKR:
+ case SqlParser.GB2312:
+ case SqlParser.GBK:
+ case SqlParser.GEOSTD8:
+ case SqlParser.GREEK:
+ case SqlParser.HEBREW:
+ case SqlParser.HP8:
+ case SqlParser.KEYBCS2:
+ case SqlParser.KOI8R:
+ case SqlParser.KOI8U:
+ case SqlParser.LATIN1:
+ case SqlParser.LATIN2:
+ case SqlParser.LATIN5:
+ case SqlParser.LATIN7:
+ case SqlParser.MACCE:
+ case SqlParser.MACROMAN:
+ case SqlParser.SJIS:
+ case SqlParser.SWE7:
+ case SqlParser.TIS620:
+ case SqlParser.UCS2:
+ case SqlParser.UJIS:
+ case SqlParser.UTF16:
+ case SqlParser.UTF16LE:
+ case SqlParser.UTF32:
+ case SqlParser.UTF8:
+ case SqlParser.UTF8MB3:
+ case SqlParser.UTF8MB4:
+ case SqlParser.ARCHIVE:
+ case SqlParser.BLACKHOLE:
+ case SqlParser.CSV:
+ case SqlParser.FEDERATED:
+ case SqlParser.INNODB:
+ case SqlParser.MEMORY:
+ case SqlParser.MRG_MYISAM:
+ case SqlParser.MYISAM:
+ case SqlParser.NDB:
+ case SqlParser.NDBCLUSTER:
+ case SqlParser.PERFORMANCE_SCHEMA:
+ case SqlParser.TOKUDB:
+ case SqlParser.REPEATABLE:
+ case SqlParser.COMMITTED:
+ case SqlParser.UNCOMMITTED:
+ case SqlParser.SERIALIZABLE:
+ case SqlParser.GEOMETRYCOLLECTION:
+ case SqlParser.LINESTRING:
+ case SqlParser.MULTILINESTRING:
+ case SqlParser.MULTIPOINT:
+ case SqlParser.MULTIPOLYGON:
+ case SqlParser.POINT:
+ case SqlParser.POLYGON:
+ case SqlParser.ABS:
+ case SqlParser.ACOS:
+ case SqlParser.ADDDATE:
+ case SqlParser.ADDTIME:
+ case SqlParser.AES_DECRYPT:
+ case SqlParser.AES_ENCRYPT:
+ case SqlParser.AREA:
+ case SqlParser.ASBINARY:
+ case SqlParser.ASIN:
+ case SqlParser.ASTEXT:
+ case SqlParser.ASWKB:
+ case SqlParser.ASWKT:
+ case SqlParser.ASYMMETRIC_DECRYPT:
+ case SqlParser.ASYMMETRIC_DERIVE:
+ case SqlParser.ASYMMETRIC_ENCRYPT:
+ case SqlParser.ASYMMETRIC_SIGN:
+ case SqlParser.ASYMMETRIC_VERIFY:
+ case SqlParser.ATAN:
+ case SqlParser.ATAN2:
+ case SqlParser.BENCHMARK:
+ case SqlParser.BIN:
+ case SqlParser.BIT_COUNT:
+ case SqlParser.BIT_LENGTH:
+ case SqlParser.BUFFER:
+ case SqlParser.CATALOG_NAME:
+ case SqlParser.CEIL:
+ case SqlParser.CEILING:
+ case SqlParser.CENTROID:
+ case SqlParser.CHARACTER_LENGTH:
+ case SqlParser.CHARSET:
+ case SqlParser.CHAR_LENGTH:
+ case SqlParser.COERCIBILITY:
+ case SqlParser.COLLATION:
+ case SqlParser.COMPRESS:
+ case SqlParser.CONCAT:
+ case SqlParser.CONCAT_WS:
+ case SqlParser.CONNECTION_ID:
+ case SqlParser.CONV:
+ case SqlParser.CONVERT_TZ:
+ case SqlParser.COS:
+ case SqlParser.COT:
+ case SqlParser.CRC32:
+ case SqlParser.CREATE_ASYMMETRIC_PRIV_KEY:
+ case SqlParser.CREATE_ASYMMETRIC_PUB_KEY:
+ case SqlParser.CREATE_DH_PARAMETERS:
+ case SqlParser.CREATE_DIGEST:
+ case SqlParser.CROSSES:
+ case SqlParser.DATEDIFF:
+ case SqlParser.DATE_FORMAT:
+ case SqlParser.DAYNAME:
+ case SqlParser.DAYOFMONTH:
+ case SqlParser.DAYOFWEEK:
+ case SqlParser.DAYOFYEAR:
+ case SqlParser.DECODE:
+ case SqlParser.DEGREES:
+ case SqlParser.DES_DECRYPT:
+ case SqlParser.DES_ENCRYPT:
+ case SqlParser.DIMENSION:
+ case SqlParser.DISJOINT:
+ case SqlParser.ELT:
+ case SqlParser.ENCODE:
+ case SqlParser.ENCRYPT:
+ case SqlParser.ENDPOINT:
+ case SqlParser.ENVELOPE:
+ case SqlParser.EQUALS:
+ case SqlParser.EXP:
+ case SqlParser.EXPORT_SET:
+ case SqlParser.EXTERIORRING:
+ case SqlParser.EXTRACTVALUE:
+ case SqlParser.FIELD:
+ case SqlParser.FIND_IN_SET:
+ case SqlParser.FLOOR:
+ case SqlParser.FORMAT:
+ case SqlParser.FOUND_ROWS:
+ case SqlParser.FROM_BASE64:
+ case SqlParser.FROM_DAYS:
+ case SqlParser.FROM_UNIXTIME:
+ case SqlParser.GEOMCOLLFROMTEXT:
+ case SqlParser.GEOMCOLLFROMWKB:
+ case SqlParser.GEOMETRYCOLLECTIONFROMTEXT:
+ case SqlParser.GEOMETRYCOLLECTIONFROMWKB:
+ case SqlParser.GEOMETRYFROMTEXT:
+ case SqlParser.GEOMETRYFROMWKB:
+ case SqlParser.GEOMETRYN:
+ case SqlParser.GEOMETRYTYPE:
+ case SqlParser.GEOMFROMTEXT:
+ case SqlParser.GEOMFROMWKB:
+ case SqlParser.GET_FORMAT:
+ case SqlParser.GET_LOCK:
+ case SqlParser.GLENGTH:
+ case SqlParser.GREATEST:
+ case SqlParser.GTID_SUBSET:
+ case SqlParser.GTID_SUBTRACT:
+ case SqlParser.HEX:
+ case SqlParser.IFNULL:
+ case SqlParser.INET6_ATON:
+ case SqlParser.INET6_NTOA:
+ case SqlParser.INET_ATON:
+ case SqlParser.INET_NTOA:
+ case SqlParser.INSTR:
+ case SqlParser.INTERIORRINGN:
+ case SqlParser.INTERSECTS:
+ case SqlParser.ISCLOSED:
+ case SqlParser.ISEMPTY:
+ case SqlParser.ISNULL:
+ case SqlParser.ISSIMPLE:
+ case SqlParser.IS_FREE_LOCK:
+ case SqlParser.IS_IPV4:
+ case SqlParser.IS_IPV4_COMPAT:
+ case SqlParser.IS_IPV4_MAPPED:
+ case SqlParser.IS_IPV6:
+ case SqlParser.IS_USED_LOCK:
+ case SqlParser.LAST_INSERT_ID:
+ case SqlParser.LCASE:
+ case SqlParser.LEAST:
+ case SqlParser.LENGTH:
+ case SqlParser.LINEFROMTEXT:
+ case SqlParser.LINEFROMWKB:
+ case SqlParser.LINESTRINGFROMTEXT:
+ case SqlParser.LINESTRINGFROMWKB:
+ case SqlParser.LN:
+ case SqlParser.LOAD_FILE:
+ case SqlParser.LOCATE:
+ case SqlParser.LOG:
+ case SqlParser.LOG10:
+ case SqlParser.LOG2:
+ case SqlParser.LOWER:
+ case SqlParser.LPAD:
+ case SqlParser.LTRIM:
+ case SqlParser.MAKEDATE:
+ case SqlParser.MAKETIME:
+ case SqlParser.MAKE_SET:
+ case SqlParser.MASTER_POS_WAIT:
+ case SqlParser.MBRCONTAINS:
+ case SqlParser.MBRDISJOINT:
+ case SqlParser.MBREQUAL:
+ case SqlParser.MBRINTERSECTS:
+ case SqlParser.MBROVERLAPS:
+ case SqlParser.MBRTOUCHES:
+ case SqlParser.MBRWITHIN:
+ case SqlParser.MD5:
+ case SqlParser.MLINEFROMTEXT:
+ case SqlParser.MLINEFROMWKB:
+ case SqlParser.MONTHNAME:
+ case SqlParser.MPOINTFROMTEXT:
+ case SqlParser.MPOINTFROMWKB:
+ case SqlParser.MPOLYFROMTEXT:
+ case SqlParser.MPOLYFROMWKB:
+ case SqlParser.MULTILINESTRINGFROMTEXT:
+ case SqlParser.MULTILINESTRINGFROMWKB:
+ case SqlParser.MULTIPOINTFROMTEXT:
+ case SqlParser.MULTIPOINTFROMWKB:
+ case SqlParser.MULTIPOLYGONFROMTEXT:
+ case SqlParser.MULTIPOLYGONFROMWKB:
+ case SqlParser.NAME_CONST:
+ case SqlParser.NULLIF:
+ case SqlParser.NUMGEOMETRIES:
+ case SqlParser.NUMINTERIORRINGS:
+ case SqlParser.NUMPOINTS:
+ case SqlParser.OCT:
+ case SqlParser.OCTET_LENGTH:
+ case SqlParser.ORD:
+ case SqlParser.OVERLAPS:
+ case SqlParser.PERIOD_ADD:
+ case SqlParser.PERIOD_DIFF:
+ case SqlParser.PI:
+ case SqlParser.POINTFROMTEXT:
+ case SqlParser.POINTFROMWKB:
+ case SqlParser.POINTN:
+ case SqlParser.POLYFROMTEXT:
+ case SqlParser.POLYFROMWKB:
+ case SqlParser.POLYGONFROMTEXT:
+ case SqlParser.POLYGONFROMWKB:
+ case SqlParser.POW:
+ case SqlParser.POWER:
+ case SqlParser.QUOTE:
+ case SqlParser.RADIANS:
+ case SqlParser.RAND:
+ case SqlParser.RANDOM_BYTES:
+ case SqlParser.RELEASE_LOCK:
+ case SqlParser.REVERSE:
+ case SqlParser.ROUND:
+ case SqlParser.ROW_COUNT:
+ case SqlParser.RPAD:
+ case SqlParser.RTRIM:
+ case SqlParser.SEC_TO_TIME:
+ case SqlParser.SESSION_USER:
+ case SqlParser.SHA:
+ case SqlParser.SHA1:
+ case SqlParser.SHA2:
+ case SqlParser.SCHEMA_NAME:
+ case SqlParser.SIGN:
+ case SqlParser.SIN:
+ case SqlParser.SLEEP:
+ case SqlParser.SOUNDEX:
+ case SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS:
+ case SqlParser.SQRT:
+ case SqlParser.SRID:
+ case SqlParser.STARTPOINT:
+ case SqlParser.STRCMP:
+ case SqlParser.STR_TO_DATE:
+ case SqlParser.ST_AREA:
+ case SqlParser.ST_ASBINARY:
+ case SqlParser.ST_ASTEXT:
+ case SqlParser.ST_ASWKB:
+ case SqlParser.ST_ASWKT:
+ case SqlParser.ST_BUFFER:
+ case SqlParser.ST_CENTROID:
+ case SqlParser.ST_CONTAINS:
+ case SqlParser.ST_CROSSES:
+ case SqlParser.ST_DIFFERENCE:
+ case SqlParser.ST_DIMENSION:
+ case SqlParser.ST_DISJOINT:
+ case SqlParser.ST_DISTANCE:
+ case SqlParser.ST_ENDPOINT:
+ case SqlParser.ST_ENVELOPE:
+ case SqlParser.ST_EQUALS:
+ case SqlParser.ST_EXTERIORRING:
+ case SqlParser.ST_GEOMCOLLFROMTEXT:
+ case SqlParser.ST_GEOMCOLLFROMTXT:
+ case SqlParser.ST_GEOMCOLLFROMWKB:
+ case SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT:
+ case SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB:
+ case SqlParser.ST_GEOMETRYFROMTEXT:
+ case SqlParser.ST_GEOMETRYFROMWKB:
+ case SqlParser.ST_GEOMETRYN:
+ case SqlParser.ST_GEOMETRYTYPE:
+ case SqlParser.ST_GEOMFROMTEXT:
+ case SqlParser.ST_GEOMFROMWKB:
+ case SqlParser.ST_INTERIORRINGN:
+ case SqlParser.ST_INTERSECTION:
+ case SqlParser.ST_INTERSECTS:
+ case SqlParser.ST_ISCLOSED:
+ case SqlParser.ST_ISEMPTY:
+ case SqlParser.ST_ISSIMPLE:
+ case SqlParser.ST_LINEFROMTEXT:
+ case SqlParser.ST_LINEFROMWKB:
+ case SqlParser.ST_LINESTRINGFROMTEXT:
+ case SqlParser.ST_LINESTRINGFROMWKB:
+ case SqlParser.ST_NUMGEOMETRIES:
+ case SqlParser.ST_NUMINTERIORRING:
+ case SqlParser.ST_NUMINTERIORRINGS:
+ case SqlParser.ST_NUMPOINTS:
+ case SqlParser.ST_OVERLAPS:
+ case SqlParser.ST_POINTFROMTEXT:
+ case SqlParser.ST_POINTFROMWKB:
+ case SqlParser.ST_POINTN:
+ case SqlParser.ST_POLYFROMTEXT:
+ case SqlParser.ST_POLYFROMWKB:
+ case SqlParser.ST_POLYGONFROMTEXT:
+ case SqlParser.ST_POLYGONFROMWKB:
+ case SqlParser.ST_SRID:
+ case SqlParser.ST_STARTPOINT:
+ case SqlParser.ST_SYMDIFFERENCE:
+ case SqlParser.ST_TOUCHES:
+ case SqlParser.ST_UNION:
+ case SqlParser.ST_WITHIN:
+ case SqlParser.ST_X:
+ case SqlParser.ST_Y:
+ case SqlParser.SUBDATE:
+ case SqlParser.SUBSTRING_INDEX:
+ case SqlParser.SUBTIME:
+ case SqlParser.SYSTEM_USER:
+ case SqlParser.TAN:
+ case SqlParser.TIMEDIFF:
+ case SqlParser.TIMESTAMPADD:
+ case SqlParser.TIMESTAMPDIFF:
+ case SqlParser.TIME_FORMAT:
+ case SqlParser.TIME_TO_SEC:
+ case SqlParser.TOUCHES:
+ case SqlParser.TO_BASE64:
+ case SqlParser.TO_DAYS:
+ case SqlParser.TO_SECONDS:
+ case SqlParser.UCASE:
+ case SqlParser.UNCOMPRESS:
+ case SqlParser.UNCOMPRESSED_LENGTH:
+ case SqlParser.UNHEX:
+ case SqlParser.UNIX_TIMESTAMP:
+ case SqlParser.UPDATEXML:
+ case SqlParser.UPPER:
+ case SqlParser.UUID:
+ case SqlParser.UUID_SHORT:
+ case SqlParser.VALIDATE_PASSWORD_STRENGTH:
+ case SqlParser.VERSION:
+ case SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS:
+ case SqlParser.WEEKDAY:
+ case SqlParser.WEEKOFYEAR:
+ case SqlParser.WEIGHT_STRING:
+ case SqlParser.WITHIN:
+ case SqlParser.YEARWEEK:
+ case SqlParser.Y_FUNCTION:
+ case SqlParser.X_FUNCTION:
+ case SqlParser.CHARSET_REVERSE_QOUTE_STRING:
+ case SqlParser.STRING_LITERAL:
+ case SqlParser.ID:
+ case SqlParser.REVERSE_QUOTE_ID:
+ this.state = 2543;
+ this.uidList();
+ break;
+ case SqlParser.ALL:
+ this.state = 2544;
+ this.match(SqlParser.ALL);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 2547;
+ this.match(SqlParser.TABLESPACE);
+ break;
+
+ case 35:
+ localctx = new AlterByImportPartitionContext(this, localctx);
+ this.enterOuterAlt(localctx, 35);
+ this.state = 2548;
+ this.match(SqlParser.IMPORT);
+ this.state = 2549;
+ this.match(SqlParser.PARTITION);
+ this.state = 2552;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.CURRENT:
+ case SqlParser.DATABASE:
+ case SqlParser.DIAGNOSTICS:
+ case SqlParser.LEFT:
+ case SqlParser.NUMBER:
+ case SqlParser.RIGHT:
+ case SqlParser.STACKED:
+ case SqlParser.DATE:
+ case SqlParser.TIME:
+ case SqlParser.TIMESTAMP:
+ case SqlParser.DATETIME:
+ case SqlParser.YEAR:
+ case SqlParser.TEXT:
+ case SqlParser.ENUM:
+ case SqlParser.SERIAL:
+ case SqlParser.JSON_VALID:
+ case SqlParser.JSON_SCHEMA_VALID:
+ case SqlParser.COUNT:
+ case SqlParser.POSITION:
+ case SqlParser.ACCOUNT:
+ case SqlParser.ACTION:
+ case SqlParser.AFTER:
+ case SqlParser.AGGREGATE:
+ case SqlParser.ALGORITHM:
+ case SqlParser.ANY:
+ case SqlParser.AT:
+ case SqlParser.AUTHORS:
+ case SqlParser.AUTOCOMMIT:
+ case SqlParser.AUTOEXTEND_SIZE:
+ case SqlParser.AUTO_INCREMENT:
+ case SqlParser.AVG_ROW_LENGTH:
+ case SqlParser.BEGIN:
+ case SqlParser.BINLOG:
+ case SqlParser.BIT:
+ case SqlParser.BLOCK:
+ case SqlParser.BOOL:
+ case SqlParser.BOOLEAN:
+ case SqlParser.BTREE:
+ case SqlParser.CACHE:
+ case SqlParser.CASCADED:
+ case SqlParser.CHAIN:
+ case SqlParser.CHANGED:
+ case SqlParser.CHANNEL:
+ case SqlParser.CHECKSUM:
+ case SqlParser.PAGE_CHECKSUM:
+ case SqlParser.CIPHER:
+ case SqlParser.CLASS_ORIGIN:
+ case SqlParser.CLIENT:
+ case SqlParser.CLOSE:
+ case SqlParser.COALESCE:
+ case SqlParser.CODE:
+ case SqlParser.COLUMNS:
+ case SqlParser.COLUMN_FORMAT:
+ case SqlParser.COLUMN_NAME:
+ case SqlParser.COMMENT:
+ case SqlParser.COMMIT:
+ case SqlParser.COMPACT:
+ case SqlParser.COMPLETION:
+ case SqlParser.COMPRESSED:
+ case SqlParser.COMPRESSION:
+ case SqlParser.CONCURRENT:
+ case SqlParser.CONNECTION:
+ case SqlParser.CONSISTENT:
+ case SqlParser.CONSTRAINT_CATALOG:
+ case SqlParser.CONSTRAINT_SCHEMA:
+ case SqlParser.CONSTRAINT_NAME:
+ case SqlParser.CONTAINS:
+ case SqlParser.CONTEXT:
+ case SqlParser.CONTRIBUTORS:
+ case SqlParser.COPY:
+ case SqlParser.CPU:
+ case SqlParser.CURSOR_NAME:
+ case SqlParser.DATA:
+ case SqlParser.DATAFILE:
+ case SqlParser.DEALLOCATE:
+ case SqlParser.DEFAULT_AUTH:
+ case SqlParser.DEFINER:
+ case SqlParser.DELAY_KEY_WRITE:
+ case SqlParser.DES_KEY_FILE:
+ case SqlParser.DIRECTORY:
+ case SqlParser.DISABLE:
+ case SqlParser.DISCARD:
+ case SqlParser.DISK:
+ case SqlParser.DO:
+ case SqlParser.DUMPFILE:
+ case SqlParser.DUPLICATE:
+ case SqlParser.DYNAMIC:
+ case SqlParser.ENABLE:
+ case SqlParser.ENCRYPTION:
+ case SqlParser.END:
+ case SqlParser.ENDS:
+ case SqlParser.ENGINE:
+ case SqlParser.ENGINES:
+ case SqlParser.ERROR:
+ case SqlParser.ERRORS:
+ case SqlParser.ESCAPE:
+ case SqlParser.EVEN:
+ case SqlParser.EVENT:
+ case SqlParser.EVENTS:
+ case SqlParser.EVERY:
+ case SqlParser.EXCHANGE:
+ case SqlParser.EXCLUSIVE:
+ case SqlParser.EXPIRE:
+ case SqlParser.EXPORT:
+ case SqlParser.EXTENDED:
+ case SqlParser.EXTENT_SIZE:
+ case SqlParser.FAST:
+ case SqlParser.FAULTS:
+ case SqlParser.FIELDS:
+ case SqlParser.FILE_BLOCK_SIZE:
+ case SqlParser.FILTER:
+ case SqlParser.FIRST:
+ case SqlParser.FIXED:
+ case SqlParser.FLUSH:
+ case SqlParser.FOLLOWS:
+ case SqlParser.FOUND:
+ case SqlParser.FULL:
+ case SqlParser.FUNCTION:
+ case SqlParser.GENERAL:
+ case SqlParser.GLOBAL:
+ case SqlParser.GRANTS:
+ case SqlParser.GROUP_REPLICATION:
+ case SqlParser.HANDLER:
+ case SqlParser.HASH:
+ case SqlParser.HELP:
+ case SqlParser.HOST:
+ case SqlParser.HOSTS:
+ case SqlParser.IDENTIFIED:
+ case SqlParser.IGNORE_SERVER_IDS:
+ case SqlParser.IMPORT:
+ case SqlParser.INDEXES:
+ case SqlParser.INITIAL_SIZE:
+ case SqlParser.INPLACE:
+ case SqlParser.INSERT_METHOD:
+ case SqlParser.INSTALL:
+ case SqlParser.INSTANCE:
+ case SqlParser.INVISIBLE:
+ case SqlParser.INVOKER:
+ case SqlParser.IO:
+ case SqlParser.IO_THREAD:
+ case SqlParser.IPC:
+ case SqlParser.ISOLATION:
+ case SqlParser.ISSUER:
+ case SqlParser.JSON:
+ case SqlParser.KEY_BLOCK_SIZE:
+ case SqlParser.LANGUAGE:
+ case SqlParser.LAST:
+ case SqlParser.LEAVES:
+ case SqlParser.LESS:
+ case SqlParser.LEVEL:
+ case SqlParser.LIST:
+ case SqlParser.LOCAL:
+ case SqlParser.LOGFILE:
+ case SqlParser.LOGS:
+ case SqlParser.MASTER:
+ case SqlParser.MASTER_AUTO_POSITION:
+ case SqlParser.MASTER_CONNECT_RETRY:
+ case SqlParser.MASTER_DELAY:
+ case SqlParser.MASTER_HEARTBEAT_PERIOD:
+ case SqlParser.MASTER_HOST:
+ case SqlParser.MASTER_LOG_FILE:
+ case SqlParser.MASTER_LOG_POS:
+ case SqlParser.MASTER_PASSWORD:
+ case SqlParser.MASTER_PORT:
+ case SqlParser.MASTER_RETRY_COUNT:
+ case SqlParser.MASTER_SSL:
+ case SqlParser.MASTER_SSL_CA:
+ case SqlParser.MASTER_SSL_CAPATH:
+ case SqlParser.MASTER_SSL_CERT:
+ case SqlParser.MASTER_SSL_CIPHER:
+ case SqlParser.MASTER_SSL_CRL:
+ case SqlParser.MASTER_SSL_CRLPATH:
+ case SqlParser.MASTER_SSL_KEY:
+ case SqlParser.MASTER_TLS_VERSION:
+ case SqlParser.MASTER_USER:
+ case SqlParser.MAX_CONNECTIONS_PER_HOUR:
+ case SqlParser.MAX_QUERIES_PER_HOUR:
+ case SqlParser.MAX_ROWS:
+ case SqlParser.MAX_SIZE:
+ case SqlParser.MAX_UPDATES_PER_HOUR:
+ case SqlParser.MAX_USER_CONNECTIONS:
+ case SqlParser.MEDIUM:
+ case SqlParser.MERGE:
+ case SqlParser.MESSAGE_TEXT:
+ case SqlParser.MID:
+ case SqlParser.MIGRATE:
+ case SqlParser.MIN_ROWS:
+ case SqlParser.MODE:
+ case SqlParser.MODIFY:
+ case SqlParser.MUTEX:
+ case SqlParser.MYSQL:
+ case SqlParser.MYSQL_ERRNO:
+ case SqlParser.NAME:
+ case SqlParser.NAMES:
+ case SqlParser.NCHAR:
+ case SqlParser.NEVER:
+ case SqlParser.NEXT:
+ case SqlParser.NO:
+ case SqlParser.NODEGROUP:
+ case SqlParser.NONE:
+ case SqlParser.OFFLINE:
+ case SqlParser.OFFSET:
+ case SqlParser.OJ:
+ case SqlParser.OLD_PASSWORD:
+ case SqlParser.ONE:
+ case SqlParser.ONLINE:
+ case SqlParser.ONLY:
+ case SqlParser.OPEN:
+ case SqlParser.OPTIMIZER_COSTS:
+ case SqlParser.OPTIONS:
+ case SqlParser.OWNER:
+ case SqlParser.PACK_KEYS:
+ case SqlParser.PAGE:
+ case SqlParser.PARSER:
+ case SqlParser.PARTIAL:
+ case SqlParser.PARTITIONING:
+ case SqlParser.PARTITIONS:
+ case SqlParser.PASSWORD:
+ case SqlParser.PHASE:
+ case SqlParser.PLUGIN:
+ case SqlParser.PLUGIN_DIR:
+ case SqlParser.PLUGINS:
+ case SqlParser.PORT:
+ case SqlParser.PRECEDES:
+ case SqlParser.PREPARE:
+ case SqlParser.PRESERVE:
+ case SqlParser.PREV:
+ case SqlParser.PROCESSLIST:
+ case SqlParser.PROFILE:
+ case SqlParser.PROFILES:
+ case SqlParser.PROXY:
+ case SqlParser.QUERY:
+ case SqlParser.QUICK:
+ case SqlParser.REBUILD:
+ case SqlParser.RECOVER:
+ case SqlParser.REDO_BUFFER_SIZE:
+ case SqlParser.REDUNDANT:
+ case SqlParser.RELAY:
+ case SqlParser.RELAY_LOG_FILE:
+ case SqlParser.RELAY_LOG_POS:
+ case SqlParser.RELAYLOG:
+ case SqlParser.REMOVE:
+ case SqlParser.REORGANIZE:
+ case SqlParser.REPAIR:
+ case SqlParser.REPLICATE_DO_DB:
+ case SqlParser.REPLICATE_DO_TABLE:
+ case SqlParser.REPLICATE_IGNORE_DB:
+ case SqlParser.REPLICATE_IGNORE_TABLE:
+ case SqlParser.REPLICATE_REWRITE_DB:
+ case SqlParser.REPLICATE_WILD_DO_TABLE:
+ case SqlParser.REPLICATE_WILD_IGNORE_TABLE:
+ case SqlParser.REPLICATION:
+ case SqlParser.RESET:
+ case SqlParser.RESUME:
+ case SqlParser.RETURNED_SQLSTATE:
+ case SqlParser.RETURNS:
+ case SqlParser.ROLE:
+ case SqlParser.ROLLBACK:
+ case SqlParser.ROLLUP:
+ case SqlParser.ROTATE:
+ case SqlParser.ROW:
+ case SqlParser.ROWS:
+ case SqlParser.ROW_FORMAT:
+ case SqlParser.SAVEPOINT:
+ case SqlParser.SCHEDULE:
+ case SqlParser.SECURITY:
+ case SqlParser.SERVER:
+ case SqlParser.SESSION:
+ case SqlParser.SHARE:
+ case SqlParser.SHARED:
+ case SqlParser.SIGNED:
+ case SqlParser.SIMPLE:
+ case SqlParser.SLAVE:
+ case SqlParser.SLOW:
+ case SqlParser.SNAPSHOT:
+ case SqlParser.SOCKET:
+ case SqlParser.SOME:
+ case SqlParser.SONAME:
+ case SqlParser.SOUNDS:
+ case SqlParser.SOURCE:
+ case SqlParser.SQL_AFTER_GTIDS:
+ case SqlParser.SQL_AFTER_MTS_GAPS:
+ case SqlParser.SQL_BEFORE_GTIDS:
+ case SqlParser.SQL_BUFFER_RESULT:
+ case SqlParser.SQL_CACHE:
+ case SqlParser.SQL_NO_CACHE:
+ case SqlParser.SQL_THREAD:
+ case SqlParser.START:
+ case SqlParser.STARTS:
+ case SqlParser.STATS_AUTO_RECALC:
+ case SqlParser.STATS_PERSISTENT:
+ case SqlParser.STATS_SAMPLE_PAGES:
+ case SqlParser.STATUS:
+ case SqlParser.STOP:
+ case SqlParser.STORAGE:
+ case SqlParser.STRING:
+ case SqlParser.SUBCLASS_ORIGIN:
+ case SqlParser.SUBJECT:
+ case SqlParser.SUBPARTITION:
+ case SqlParser.SUBPARTITIONS:
+ case SqlParser.SUSPEND:
+ case SqlParser.SWAPS:
+ case SqlParser.SWITCHES:
+ case SqlParser.TABLE_NAME:
+ case SqlParser.TABLESPACE:
+ case SqlParser.TEMPORARY:
+ case SqlParser.TEMPTABLE:
+ case SqlParser.THAN:
+ case SqlParser.TRADITIONAL:
+ case SqlParser.TRANSACTION:
+ case SqlParser.TRANSACTIONAL:
+ case SqlParser.TRIGGERS:
+ case SqlParser.TRUNCATE:
+ case SqlParser.UNDEFINED:
+ case SqlParser.UNDOFILE:
+ case SqlParser.UNDO_BUFFER_SIZE:
+ case SqlParser.UNINSTALL:
+ case SqlParser.UNKNOWN:
+ case SqlParser.UNTIL:
+ case SqlParser.UPGRADE:
+ case SqlParser.USER:
+ case SqlParser.USE_FRM:
+ case SqlParser.USER_RESOURCES:
+ case SqlParser.VALIDATION:
+ case SqlParser.VALUE:
+ case SqlParser.VARIABLES:
+ case SqlParser.VIEW:
+ case SqlParser.VISIBLE:
+ case SqlParser.WAIT:
+ case SqlParser.WARNINGS:
+ case SqlParser.WITHOUT:
+ case SqlParser.WORK:
+ case SqlParser.WRAPPER:
+ case SqlParser.X509:
+ case SqlParser.XA:
+ case SqlParser.XML:
+ case SqlParser.INTERNAL:
+ case SqlParser.QUARTER:
+ case SqlParser.MONTH:
+ case SqlParser.DAY:
+ case SqlParser.HOUR:
+ case SqlParser.MINUTE:
+ case SqlParser.WEEK:
+ case SqlParser.SECOND:
+ case SqlParser.MICROSECOND:
+ case SqlParser.TABLES:
+ case SqlParser.ROUTINE:
+ case SqlParser.EXECUTE:
+ case SqlParser.FILE:
+ case SqlParser.PROCESS:
+ case SqlParser.RELOAD:
+ case SqlParser.SHUTDOWN:
+ case SqlParser.SUPER:
+ case SqlParser.PRIVILEGES:
+ case SqlParser.AUDIT_ADMIN:
+ case SqlParser.BACKUP_ADMIN:
+ case SqlParser.BINLOG_ADMIN:
+ case SqlParser.BINLOG_ENCRYPTION_ADMIN:
+ case SqlParser.CLONE_ADMIN:
+ case SqlParser.CONNECTION_ADMIN:
+ case SqlParser.ENCRYPTION_KEY_ADMIN:
+ case SqlParser.FIREWALL_ADMIN:
+ case SqlParser.FIREWALL_USER:
+ case SqlParser.GROUP_REPLICATION_ADMIN:
+ case SqlParser.INNODB_REDO_LOG_ARCHIVE:
+ case SqlParser.NDB_STORED_USER:
+ case SqlParser.PERSIST_RO_VARIABLES_ADMIN:
+ case SqlParser.REPLICATION_APPLIER:
+ case SqlParser.REPLICATION_SLAVE_ADMIN:
+ case SqlParser.RESOURCE_GROUP_ADMIN:
+ case SqlParser.RESOURCE_GROUP_USER:
+ case SqlParser.ROLE_ADMIN:
+ case SqlParser.SESSION_VARIABLES_ADMIN:
+ case SqlParser.SET_USER_ID:
+ case SqlParser.SHOW_ROUTINE:
+ case SqlParser.SYSTEM_VARIABLES_ADMIN:
+ case SqlParser.TABLE_ENCRYPTION_ADMIN:
+ case SqlParser.VERSION_TOKEN_ADMIN:
+ case SqlParser.XA_RECOVER_ADMIN:
+ case SqlParser.ARMSCII8:
+ case SqlParser.ASCII:
+ case SqlParser.BIG5:
+ case SqlParser.CP1250:
+ case SqlParser.CP1251:
+ case SqlParser.CP1256:
+ case SqlParser.CP1257:
+ case SqlParser.CP850:
+ case SqlParser.CP852:
+ case SqlParser.CP866:
+ case SqlParser.CP932:
+ case SqlParser.DEC8:
+ case SqlParser.EUCJPMS:
+ case SqlParser.EUCKR:
+ case SqlParser.GB2312:
+ case SqlParser.GBK:
+ case SqlParser.GEOSTD8:
+ case SqlParser.GREEK:
+ case SqlParser.HEBREW:
+ case SqlParser.HP8:
+ case SqlParser.KEYBCS2:
+ case SqlParser.KOI8R:
+ case SqlParser.KOI8U:
+ case SqlParser.LATIN1:
+ case SqlParser.LATIN2:
+ case SqlParser.LATIN5:
+ case SqlParser.LATIN7:
+ case SqlParser.MACCE:
+ case SqlParser.MACROMAN:
+ case SqlParser.SJIS:
+ case SqlParser.SWE7:
+ case SqlParser.TIS620:
+ case SqlParser.UCS2:
+ case SqlParser.UJIS:
+ case SqlParser.UTF16:
+ case SqlParser.UTF16LE:
+ case SqlParser.UTF32:
+ case SqlParser.UTF8:
+ case SqlParser.UTF8MB3:
+ case SqlParser.UTF8MB4:
+ case SqlParser.ARCHIVE:
+ case SqlParser.BLACKHOLE:
+ case SqlParser.CSV:
+ case SqlParser.FEDERATED:
+ case SqlParser.INNODB:
+ case SqlParser.MEMORY:
+ case SqlParser.MRG_MYISAM:
+ case SqlParser.MYISAM:
+ case SqlParser.NDB:
+ case SqlParser.NDBCLUSTER:
+ case SqlParser.PERFORMANCE_SCHEMA:
+ case SqlParser.TOKUDB:
+ case SqlParser.REPEATABLE:
+ case SqlParser.COMMITTED:
+ case SqlParser.UNCOMMITTED:
+ case SqlParser.SERIALIZABLE:
+ case SqlParser.GEOMETRYCOLLECTION:
+ case SqlParser.LINESTRING:
+ case SqlParser.MULTILINESTRING:
+ case SqlParser.MULTIPOINT:
+ case SqlParser.MULTIPOLYGON:
+ case SqlParser.POINT:
+ case SqlParser.POLYGON:
+ case SqlParser.ABS:
+ case SqlParser.ACOS:
+ case SqlParser.ADDDATE:
+ case SqlParser.ADDTIME:
+ case SqlParser.AES_DECRYPT:
+ case SqlParser.AES_ENCRYPT:
+ case SqlParser.AREA:
+ case SqlParser.ASBINARY:
+ case SqlParser.ASIN:
+ case SqlParser.ASTEXT:
+ case SqlParser.ASWKB:
+ case SqlParser.ASWKT:
+ case SqlParser.ASYMMETRIC_DECRYPT:
+ case SqlParser.ASYMMETRIC_DERIVE:
+ case SqlParser.ASYMMETRIC_ENCRYPT:
+ case SqlParser.ASYMMETRIC_SIGN:
+ case SqlParser.ASYMMETRIC_VERIFY:
+ case SqlParser.ATAN:
+ case SqlParser.ATAN2:
+ case SqlParser.BENCHMARK:
+ case SqlParser.BIN:
+ case SqlParser.BIT_COUNT:
+ case SqlParser.BIT_LENGTH:
+ case SqlParser.BUFFER:
+ case SqlParser.CATALOG_NAME:
+ case SqlParser.CEIL:
+ case SqlParser.CEILING:
+ case SqlParser.CENTROID:
+ case SqlParser.CHARACTER_LENGTH:
+ case SqlParser.CHARSET:
+ case SqlParser.CHAR_LENGTH:
+ case SqlParser.COERCIBILITY:
+ case SqlParser.COLLATION:
+ case SqlParser.COMPRESS:
+ case SqlParser.CONCAT:
+ case SqlParser.CONCAT_WS:
+ case SqlParser.CONNECTION_ID:
+ case SqlParser.CONV:
+ case SqlParser.CONVERT_TZ:
+ case SqlParser.COS:
+ case SqlParser.COT:
+ case SqlParser.CRC32:
+ case SqlParser.CREATE_ASYMMETRIC_PRIV_KEY:
+ case SqlParser.CREATE_ASYMMETRIC_PUB_KEY:
+ case SqlParser.CREATE_DH_PARAMETERS:
+ case SqlParser.CREATE_DIGEST:
+ case SqlParser.CROSSES:
+ case SqlParser.DATEDIFF:
+ case SqlParser.DATE_FORMAT:
+ case SqlParser.DAYNAME:
+ case SqlParser.DAYOFMONTH:
+ case SqlParser.DAYOFWEEK:
+ case SqlParser.DAYOFYEAR:
+ case SqlParser.DECODE:
+ case SqlParser.DEGREES:
+ case SqlParser.DES_DECRYPT:
+ case SqlParser.DES_ENCRYPT:
+ case SqlParser.DIMENSION:
+ case SqlParser.DISJOINT:
+ case SqlParser.ELT:
+ case SqlParser.ENCODE:
+ case SqlParser.ENCRYPT:
+ case SqlParser.ENDPOINT:
+ case SqlParser.ENVELOPE:
+ case SqlParser.EQUALS:
+ case SqlParser.EXP:
+ case SqlParser.EXPORT_SET:
+ case SqlParser.EXTERIORRING:
+ case SqlParser.EXTRACTVALUE:
+ case SqlParser.FIELD:
+ case SqlParser.FIND_IN_SET:
+ case SqlParser.FLOOR:
+ case SqlParser.FORMAT:
+ case SqlParser.FOUND_ROWS:
+ case SqlParser.FROM_BASE64:
+ case SqlParser.FROM_DAYS:
+ case SqlParser.FROM_UNIXTIME:
+ case SqlParser.GEOMCOLLFROMTEXT:
+ case SqlParser.GEOMCOLLFROMWKB:
+ case SqlParser.GEOMETRYCOLLECTIONFROMTEXT:
+ case SqlParser.GEOMETRYCOLLECTIONFROMWKB:
+ case SqlParser.GEOMETRYFROMTEXT:
+ case SqlParser.GEOMETRYFROMWKB:
+ case SqlParser.GEOMETRYN:
+ case SqlParser.GEOMETRYTYPE:
+ case SqlParser.GEOMFROMTEXT:
+ case SqlParser.GEOMFROMWKB:
+ case SqlParser.GET_FORMAT:
+ case SqlParser.GET_LOCK:
+ case SqlParser.GLENGTH:
+ case SqlParser.GREATEST:
+ case SqlParser.GTID_SUBSET:
+ case SqlParser.GTID_SUBTRACT:
+ case SqlParser.HEX:
+ case SqlParser.IFNULL:
+ case SqlParser.INET6_ATON:
+ case SqlParser.INET6_NTOA:
+ case SqlParser.INET_ATON:
+ case SqlParser.INET_NTOA:
+ case SqlParser.INSTR:
+ case SqlParser.INTERIORRINGN:
+ case SqlParser.INTERSECTS:
+ case SqlParser.ISCLOSED:
+ case SqlParser.ISEMPTY:
+ case SqlParser.ISNULL:
+ case SqlParser.ISSIMPLE:
+ case SqlParser.IS_FREE_LOCK:
+ case SqlParser.IS_IPV4:
+ case SqlParser.IS_IPV4_COMPAT:
+ case SqlParser.IS_IPV4_MAPPED:
+ case SqlParser.IS_IPV6:
+ case SqlParser.IS_USED_LOCK:
+ case SqlParser.LAST_INSERT_ID:
+ case SqlParser.LCASE:
+ case SqlParser.LEAST:
+ case SqlParser.LENGTH:
+ case SqlParser.LINEFROMTEXT:
+ case SqlParser.LINEFROMWKB:
+ case SqlParser.LINESTRINGFROMTEXT:
+ case SqlParser.LINESTRINGFROMWKB:
+ case SqlParser.LN:
+ case SqlParser.LOAD_FILE:
+ case SqlParser.LOCATE:
+ case SqlParser.LOG:
+ case SqlParser.LOG10:
+ case SqlParser.LOG2:
+ case SqlParser.LOWER:
+ case SqlParser.LPAD:
+ case SqlParser.LTRIM:
+ case SqlParser.MAKEDATE:
+ case SqlParser.MAKETIME:
+ case SqlParser.MAKE_SET:
+ case SqlParser.MASTER_POS_WAIT:
+ case SqlParser.MBRCONTAINS:
+ case SqlParser.MBRDISJOINT:
+ case SqlParser.MBREQUAL:
+ case SqlParser.MBRINTERSECTS:
+ case SqlParser.MBROVERLAPS:
+ case SqlParser.MBRTOUCHES:
+ case SqlParser.MBRWITHIN:
+ case SqlParser.MD5:
+ case SqlParser.MLINEFROMTEXT:
+ case SqlParser.MLINEFROMWKB:
+ case SqlParser.MONTHNAME:
+ case SqlParser.MPOINTFROMTEXT:
+ case SqlParser.MPOINTFROMWKB:
+ case SqlParser.MPOLYFROMTEXT:
+ case SqlParser.MPOLYFROMWKB:
+ case SqlParser.MULTILINESTRINGFROMTEXT:
+ case SqlParser.MULTILINESTRINGFROMWKB:
+ case SqlParser.MULTIPOINTFROMTEXT:
+ case SqlParser.MULTIPOINTFROMWKB:
+ case SqlParser.MULTIPOLYGONFROMTEXT:
+ case SqlParser.MULTIPOLYGONFROMWKB:
+ case SqlParser.NAME_CONST:
+ case SqlParser.NULLIF:
+ case SqlParser.NUMGEOMETRIES:
+ case SqlParser.NUMINTERIORRINGS:
+ case SqlParser.NUMPOINTS:
+ case SqlParser.OCT:
+ case SqlParser.OCTET_LENGTH:
+ case SqlParser.ORD:
+ case SqlParser.OVERLAPS:
+ case SqlParser.PERIOD_ADD:
+ case SqlParser.PERIOD_DIFF:
+ case SqlParser.PI:
+ case SqlParser.POINTFROMTEXT:
+ case SqlParser.POINTFROMWKB:
+ case SqlParser.POINTN:
+ case SqlParser.POLYFROMTEXT:
+ case SqlParser.POLYFROMWKB:
+ case SqlParser.POLYGONFROMTEXT:
+ case SqlParser.POLYGONFROMWKB:
+ case SqlParser.POW:
+ case SqlParser.POWER:
+ case SqlParser.QUOTE:
+ case SqlParser.RADIANS:
+ case SqlParser.RAND:
+ case SqlParser.RANDOM_BYTES:
+ case SqlParser.RELEASE_LOCK:
+ case SqlParser.REVERSE:
+ case SqlParser.ROUND:
+ case SqlParser.ROW_COUNT:
+ case SqlParser.RPAD:
+ case SqlParser.RTRIM:
+ case SqlParser.SEC_TO_TIME:
+ case SqlParser.SESSION_USER:
+ case SqlParser.SHA:
+ case SqlParser.SHA1:
+ case SqlParser.SHA2:
+ case SqlParser.SCHEMA_NAME:
+ case SqlParser.SIGN:
+ case SqlParser.SIN:
+ case SqlParser.SLEEP:
+ case SqlParser.SOUNDEX:
+ case SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS:
+ case SqlParser.SQRT:
+ case SqlParser.SRID:
+ case SqlParser.STARTPOINT:
+ case SqlParser.STRCMP:
+ case SqlParser.STR_TO_DATE:
+ case SqlParser.ST_AREA:
+ case SqlParser.ST_ASBINARY:
+ case SqlParser.ST_ASTEXT:
+ case SqlParser.ST_ASWKB:
+ case SqlParser.ST_ASWKT:
+ case SqlParser.ST_BUFFER:
+ case SqlParser.ST_CENTROID:
+ case SqlParser.ST_CONTAINS:
+ case SqlParser.ST_CROSSES:
+ case SqlParser.ST_DIFFERENCE:
+ case SqlParser.ST_DIMENSION:
+ case SqlParser.ST_DISJOINT:
+ case SqlParser.ST_DISTANCE:
+ case SqlParser.ST_ENDPOINT:
+ case SqlParser.ST_ENVELOPE:
+ case SqlParser.ST_EQUALS:
+ case SqlParser.ST_EXTERIORRING:
+ case SqlParser.ST_GEOMCOLLFROMTEXT:
+ case SqlParser.ST_GEOMCOLLFROMTXT:
+ case SqlParser.ST_GEOMCOLLFROMWKB:
+ case SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT:
+ case SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB:
+ case SqlParser.ST_GEOMETRYFROMTEXT:
+ case SqlParser.ST_GEOMETRYFROMWKB:
+ case SqlParser.ST_GEOMETRYN:
+ case SqlParser.ST_GEOMETRYTYPE:
+ case SqlParser.ST_GEOMFROMTEXT:
+ case SqlParser.ST_GEOMFROMWKB:
+ case SqlParser.ST_INTERIORRINGN:
+ case SqlParser.ST_INTERSECTION:
+ case SqlParser.ST_INTERSECTS:
+ case SqlParser.ST_ISCLOSED:
+ case SqlParser.ST_ISEMPTY:
+ case SqlParser.ST_ISSIMPLE:
+ case SqlParser.ST_LINEFROMTEXT:
+ case SqlParser.ST_LINEFROMWKB:
+ case SqlParser.ST_LINESTRINGFROMTEXT:
+ case SqlParser.ST_LINESTRINGFROMWKB:
+ case SqlParser.ST_NUMGEOMETRIES:
+ case SqlParser.ST_NUMINTERIORRING:
+ case SqlParser.ST_NUMINTERIORRINGS:
+ case SqlParser.ST_NUMPOINTS:
+ case SqlParser.ST_OVERLAPS:
+ case SqlParser.ST_POINTFROMTEXT:
+ case SqlParser.ST_POINTFROMWKB:
+ case SqlParser.ST_POINTN:
+ case SqlParser.ST_POLYFROMTEXT:
+ case SqlParser.ST_POLYFROMWKB:
+ case SqlParser.ST_POLYGONFROMTEXT:
+ case SqlParser.ST_POLYGONFROMWKB:
+ case SqlParser.ST_SRID:
+ case SqlParser.ST_STARTPOINT:
+ case SqlParser.ST_SYMDIFFERENCE:
+ case SqlParser.ST_TOUCHES:
+ case SqlParser.ST_UNION:
+ case SqlParser.ST_WITHIN:
+ case SqlParser.ST_X:
+ case SqlParser.ST_Y:
+ case SqlParser.SUBDATE:
+ case SqlParser.SUBSTRING_INDEX:
+ case SqlParser.SUBTIME:
+ case SqlParser.SYSTEM_USER:
+ case SqlParser.TAN:
+ case SqlParser.TIMEDIFF:
+ case SqlParser.TIMESTAMPADD:
+ case SqlParser.TIMESTAMPDIFF:
+ case SqlParser.TIME_FORMAT:
+ case SqlParser.TIME_TO_SEC:
+ case SqlParser.TOUCHES:
+ case SqlParser.TO_BASE64:
+ case SqlParser.TO_DAYS:
+ case SqlParser.TO_SECONDS:
+ case SqlParser.UCASE:
+ case SqlParser.UNCOMPRESS:
+ case SqlParser.UNCOMPRESSED_LENGTH:
+ case SqlParser.UNHEX:
+ case SqlParser.UNIX_TIMESTAMP:
+ case SqlParser.UPDATEXML:
+ case SqlParser.UPPER:
+ case SqlParser.UUID:
+ case SqlParser.UUID_SHORT:
+ case SqlParser.VALIDATE_PASSWORD_STRENGTH:
+ case SqlParser.VERSION:
+ case SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS:
+ case SqlParser.WEEKDAY:
+ case SqlParser.WEEKOFYEAR:
+ case SqlParser.WEIGHT_STRING:
+ case SqlParser.WITHIN:
+ case SqlParser.YEARWEEK:
+ case SqlParser.Y_FUNCTION:
+ case SqlParser.X_FUNCTION:
+ case SqlParser.CHARSET_REVERSE_QOUTE_STRING:
+ case SqlParser.STRING_LITERAL:
+ case SqlParser.ID:
+ case SqlParser.REVERSE_QUOTE_ID:
+ this.state = 2550;
+ this.uidList();
+ break;
+ case SqlParser.ALL:
+ this.state = 2551;
+ this.match(SqlParser.ALL);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 2554;
+ this.match(SqlParser.TABLESPACE);
+ break;
+
+ case 36:
+ localctx = new AlterByTruncatePartitionContext(this, localctx);
+ this.enterOuterAlt(localctx, 36);
+ this.state = 2555;
+ this.match(SqlParser.TRUNCATE);
+ this.state = 2556;
+ this.match(SqlParser.PARTITION);
+ this.state = 2559;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.CURRENT:
+ case SqlParser.DATABASE:
+ case SqlParser.DIAGNOSTICS:
+ case SqlParser.LEFT:
+ case SqlParser.NUMBER:
+ case SqlParser.RIGHT:
+ case SqlParser.STACKED:
+ case SqlParser.DATE:
+ case SqlParser.TIME:
+ case SqlParser.TIMESTAMP:
+ case SqlParser.DATETIME:
+ case SqlParser.YEAR:
+ case SqlParser.TEXT:
+ case SqlParser.ENUM:
+ case SqlParser.SERIAL:
+ case SqlParser.JSON_VALID:
+ case SqlParser.JSON_SCHEMA_VALID:
+ case SqlParser.COUNT:
+ case SqlParser.POSITION:
+ case SqlParser.ACCOUNT:
+ case SqlParser.ACTION:
+ case SqlParser.AFTER:
+ case SqlParser.AGGREGATE:
+ case SqlParser.ALGORITHM:
+ case SqlParser.ANY:
+ case SqlParser.AT:
+ case SqlParser.AUTHORS:
+ case SqlParser.AUTOCOMMIT:
+ case SqlParser.AUTOEXTEND_SIZE:
+ case SqlParser.AUTO_INCREMENT:
+ case SqlParser.AVG_ROW_LENGTH:
+ case SqlParser.BEGIN:
+ case SqlParser.BINLOG:
+ case SqlParser.BIT:
+ case SqlParser.BLOCK:
+ case SqlParser.BOOL:
+ case SqlParser.BOOLEAN:
+ case SqlParser.BTREE:
+ case SqlParser.CACHE:
+ case SqlParser.CASCADED:
+ case SqlParser.CHAIN:
+ case SqlParser.CHANGED:
+ case SqlParser.CHANNEL:
+ case SqlParser.CHECKSUM:
+ case SqlParser.PAGE_CHECKSUM:
+ case SqlParser.CIPHER:
+ case SqlParser.CLASS_ORIGIN:
+ case SqlParser.CLIENT:
+ case SqlParser.CLOSE:
+ case SqlParser.COALESCE:
+ case SqlParser.CODE:
+ case SqlParser.COLUMNS:
+ case SqlParser.COLUMN_FORMAT:
+ case SqlParser.COLUMN_NAME:
+ case SqlParser.COMMENT:
+ case SqlParser.COMMIT:
+ case SqlParser.COMPACT:
+ case SqlParser.COMPLETION:
+ case SqlParser.COMPRESSED:
+ case SqlParser.COMPRESSION:
+ case SqlParser.CONCURRENT:
+ case SqlParser.CONNECTION:
+ case SqlParser.CONSISTENT:
+ case SqlParser.CONSTRAINT_CATALOG:
+ case SqlParser.CONSTRAINT_SCHEMA:
+ case SqlParser.CONSTRAINT_NAME:
+ case SqlParser.CONTAINS:
+ case SqlParser.CONTEXT:
+ case SqlParser.CONTRIBUTORS:
+ case SqlParser.COPY:
+ case SqlParser.CPU:
+ case SqlParser.CURSOR_NAME:
+ case SqlParser.DATA:
+ case SqlParser.DATAFILE:
+ case SqlParser.DEALLOCATE:
+ case SqlParser.DEFAULT_AUTH:
+ case SqlParser.DEFINER:
+ case SqlParser.DELAY_KEY_WRITE:
+ case SqlParser.DES_KEY_FILE:
+ case SqlParser.DIRECTORY:
+ case SqlParser.DISABLE:
+ case SqlParser.DISCARD:
+ case SqlParser.DISK:
+ case SqlParser.DO:
+ case SqlParser.DUMPFILE:
+ case SqlParser.DUPLICATE:
+ case SqlParser.DYNAMIC:
+ case SqlParser.ENABLE:
+ case SqlParser.ENCRYPTION:
+ case SqlParser.END:
+ case SqlParser.ENDS:
+ case SqlParser.ENGINE:
+ case SqlParser.ENGINES:
+ case SqlParser.ERROR:
+ case SqlParser.ERRORS:
+ case SqlParser.ESCAPE:
+ case SqlParser.EVEN:
+ case SqlParser.EVENT:
+ case SqlParser.EVENTS:
+ case SqlParser.EVERY:
+ case SqlParser.EXCHANGE:
+ case SqlParser.EXCLUSIVE:
+ case SqlParser.EXPIRE:
+ case SqlParser.EXPORT:
+ case SqlParser.EXTENDED:
+ case SqlParser.EXTENT_SIZE:
+ case SqlParser.FAST:
+ case SqlParser.FAULTS:
+ case SqlParser.FIELDS:
+ case SqlParser.FILE_BLOCK_SIZE:
+ case SqlParser.FILTER:
+ case SqlParser.FIRST:
+ case SqlParser.FIXED:
+ case SqlParser.FLUSH:
+ case SqlParser.FOLLOWS:
+ case SqlParser.FOUND:
+ case SqlParser.FULL:
+ case SqlParser.FUNCTION:
+ case SqlParser.GENERAL:
+ case SqlParser.GLOBAL:
+ case SqlParser.GRANTS:
+ case SqlParser.GROUP_REPLICATION:
+ case SqlParser.HANDLER:
+ case SqlParser.HASH:
+ case SqlParser.HELP:
+ case SqlParser.HOST:
+ case SqlParser.HOSTS:
+ case SqlParser.IDENTIFIED:
+ case SqlParser.IGNORE_SERVER_IDS:
+ case SqlParser.IMPORT:
+ case SqlParser.INDEXES:
+ case SqlParser.INITIAL_SIZE:
+ case SqlParser.INPLACE:
+ case SqlParser.INSERT_METHOD:
+ case SqlParser.INSTALL:
+ case SqlParser.INSTANCE:
+ case SqlParser.INVISIBLE:
+ case SqlParser.INVOKER:
+ case SqlParser.IO:
+ case SqlParser.IO_THREAD:
+ case SqlParser.IPC:
+ case SqlParser.ISOLATION:
+ case SqlParser.ISSUER:
+ case SqlParser.JSON:
+ case SqlParser.KEY_BLOCK_SIZE:
+ case SqlParser.LANGUAGE:
+ case SqlParser.LAST:
+ case SqlParser.LEAVES:
+ case SqlParser.LESS:
+ case SqlParser.LEVEL:
+ case SqlParser.LIST:
+ case SqlParser.LOCAL:
+ case SqlParser.LOGFILE:
+ case SqlParser.LOGS:
+ case SqlParser.MASTER:
+ case SqlParser.MASTER_AUTO_POSITION:
+ case SqlParser.MASTER_CONNECT_RETRY:
+ case SqlParser.MASTER_DELAY:
+ case SqlParser.MASTER_HEARTBEAT_PERIOD:
+ case SqlParser.MASTER_HOST:
+ case SqlParser.MASTER_LOG_FILE:
+ case SqlParser.MASTER_LOG_POS:
+ case SqlParser.MASTER_PASSWORD:
+ case SqlParser.MASTER_PORT:
+ case SqlParser.MASTER_RETRY_COUNT:
+ case SqlParser.MASTER_SSL:
+ case SqlParser.MASTER_SSL_CA:
+ case SqlParser.MASTER_SSL_CAPATH:
+ case SqlParser.MASTER_SSL_CERT:
+ case SqlParser.MASTER_SSL_CIPHER:
+ case SqlParser.MASTER_SSL_CRL:
+ case SqlParser.MASTER_SSL_CRLPATH:
+ case SqlParser.MASTER_SSL_KEY:
+ case SqlParser.MASTER_TLS_VERSION:
+ case SqlParser.MASTER_USER:
+ case SqlParser.MAX_CONNECTIONS_PER_HOUR:
+ case SqlParser.MAX_QUERIES_PER_HOUR:
+ case SqlParser.MAX_ROWS:
+ case SqlParser.MAX_SIZE:
+ case SqlParser.MAX_UPDATES_PER_HOUR:
+ case SqlParser.MAX_USER_CONNECTIONS:
+ case SqlParser.MEDIUM:
+ case SqlParser.MERGE:
+ case SqlParser.MESSAGE_TEXT:
+ case SqlParser.MID:
+ case SqlParser.MIGRATE:
+ case SqlParser.MIN_ROWS:
+ case SqlParser.MODE:
+ case SqlParser.MODIFY:
+ case SqlParser.MUTEX:
+ case SqlParser.MYSQL:
+ case SqlParser.MYSQL_ERRNO:
+ case SqlParser.NAME:
+ case SqlParser.NAMES:
+ case SqlParser.NCHAR:
+ case SqlParser.NEVER:
+ case SqlParser.NEXT:
+ case SqlParser.NO:
+ case SqlParser.NODEGROUP:
+ case SqlParser.NONE:
+ case SqlParser.OFFLINE:
+ case SqlParser.OFFSET:
+ case SqlParser.OJ:
+ case SqlParser.OLD_PASSWORD:
+ case SqlParser.ONE:
+ case SqlParser.ONLINE:
+ case SqlParser.ONLY:
+ case SqlParser.OPEN:
+ case SqlParser.OPTIMIZER_COSTS:
+ case SqlParser.OPTIONS:
+ case SqlParser.OWNER:
+ case SqlParser.PACK_KEYS:
+ case SqlParser.PAGE:
+ case SqlParser.PARSER:
+ case SqlParser.PARTIAL:
+ case SqlParser.PARTITIONING:
+ case SqlParser.PARTITIONS:
+ case SqlParser.PASSWORD:
+ case SqlParser.PHASE:
+ case SqlParser.PLUGIN:
+ case SqlParser.PLUGIN_DIR:
+ case SqlParser.PLUGINS:
+ case SqlParser.PORT:
+ case SqlParser.PRECEDES:
+ case SqlParser.PREPARE:
+ case SqlParser.PRESERVE:
+ case SqlParser.PREV:
+ case SqlParser.PROCESSLIST:
+ case SqlParser.PROFILE:
+ case SqlParser.PROFILES:
+ case SqlParser.PROXY:
+ case SqlParser.QUERY:
+ case SqlParser.QUICK:
+ case SqlParser.REBUILD:
+ case SqlParser.RECOVER:
+ case SqlParser.REDO_BUFFER_SIZE:
+ case SqlParser.REDUNDANT:
+ case SqlParser.RELAY:
+ case SqlParser.RELAY_LOG_FILE:
+ case SqlParser.RELAY_LOG_POS:
+ case SqlParser.RELAYLOG:
+ case SqlParser.REMOVE:
+ case SqlParser.REORGANIZE:
+ case SqlParser.REPAIR:
+ case SqlParser.REPLICATE_DO_DB:
+ case SqlParser.REPLICATE_DO_TABLE:
+ case SqlParser.REPLICATE_IGNORE_DB:
+ case SqlParser.REPLICATE_IGNORE_TABLE:
+ case SqlParser.REPLICATE_REWRITE_DB:
+ case SqlParser.REPLICATE_WILD_DO_TABLE:
+ case SqlParser.REPLICATE_WILD_IGNORE_TABLE:
+ case SqlParser.REPLICATION:
+ case SqlParser.RESET:
+ case SqlParser.RESUME:
+ case SqlParser.RETURNED_SQLSTATE:
+ case SqlParser.RETURNS:
+ case SqlParser.ROLE:
+ case SqlParser.ROLLBACK:
+ case SqlParser.ROLLUP:
+ case SqlParser.ROTATE:
+ case SqlParser.ROW:
+ case SqlParser.ROWS:
+ case SqlParser.ROW_FORMAT:
+ case SqlParser.SAVEPOINT:
+ case SqlParser.SCHEDULE:
+ case SqlParser.SECURITY:
+ case SqlParser.SERVER:
+ case SqlParser.SESSION:
+ case SqlParser.SHARE:
+ case SqlParser.SHARED:
+ case SqlParser.SIGNED:
+ case SqlParser.SIMPLE:
+ case SqlParser.SLAVE:
+ case SqlParser.SLOW:
+ case SqlParser.SNAPSHOT:
+ case SqlParser.SOCKET:
+ case SqlParser.SOME:
+ case SqlParser.SONAME:
+ case SqlParser.SOUNDS:
+ case SqlParser.SOURCE:
+ case SqlParser.SQL_AFTER_GTIDS:
+ case SqlParser.SQL_AFTER_MTS_GAPS:
+ case SqlParser.SQL_BEFORE_GTIDS:
+ case SqlParser.SQL_BUFFER_RESULT:
+ case SqlParser.SQL_CACHE:
+ case SqlParser.SQL_NO_CACHE:
+ case SqlParser.SQL_THREAD:
+ case SqlParser.START:
+ case SqlParser.STARTS:
+ case SqlParser.STATS_AUTO_RECALC:
+ case SqlParser.STATS_PERSISTENT:
+ case SqlParser.STATS_SAMPLE_PAGES:
+ case SqlParser.STATUS:
+ case SqlParser.STOP:
+ case SqlParser.STORAGE:
+ case SqlParser.STRING:
+ case SqlParser.SUBCLASS_ORIGIN:
+ case SqlParser.SUBJECT:
+ case SqlParser.SUBPARTITION:
+ case SqlParser.SUBPARTITIONS:
+ case SqlParser.SUSPEND:
+ case SqlParser.SWAPS:
+ case SqlParser.SWITCHES:
+ case SqlParser.TABLE_NAME:
+ case SqlParser.TABLESPACE:
+ case SqlParser.TEMPORARY:
+ case SqlParser.TEMPTABLE:
+ case SqlParser.THAN:
+ case SqlParser.TRADITIONAL:
+ case SqlParser.TRANSACTION:
+ case SqlParser.TRANSACTIONAL:
+ case SqlParser.TRIGGERS:
+ case SqlParser.TRUNCATE:
+ case SqlParser.UNDEFINED:
+ case SqlParser.UNDOFILE:
+ case SqlParser.UNDO_BUFFER_SIZE:
+ case SqlParser.UNINSTALL:
+ case SqlParser.UNKNOWN:
+ case SqlParser.UNTIL:
+ case SqlParser.UPGRADE:
+ case SqlParser.USER:
+ case SqlParser.USE_FRM:
+ case SqlParser.USER_RESOURCES:
+ case SqlParser.VALIDATION:
+ case SqlParser.VALUE:
+ case SqlParser.VARIABLES:
+ case SqlParser.VIEW:
+ case SqlParser.VISIBLE:
+ case SqlParser.WAIT:
+ case SqlParser.WARNINGS:
+ case SqlParser.WITHOUT:
+ case SqlParser.WORK:
+ case SqlParser.WRAPPER:
+ case SqlParser.X509:
+ case SqlParser.XA:
+ case SqlParser.XML:
+ case SqlParser.INTERNAL:
+ case SqlParser.QUARTER:
+ case SqlParser.MONTH:
+ case SqlParser.DAY:
+ case SqlParser.HOUR:
+ case SqlParser.MINUTE:
+ case SqlParser.WEEK:
+ case SqlParser.SECOND:
+ case SqlParser.MICROSECOND:
+ case SqlParser.TABLES:
+ case SqlParser.ROUTINE:
+ case SqlParser.EXECUTE:
+ case SqlParser.FILE:
+ case SqlParser.PROCESS:
+ case SqlParser.RELOAD:
+ case SqlParser.SHUTDOWN:
+ case SqlParser.SUPER:
+ case SqlParser.PRIVILEGES:
+ case SqlParser.AUDIT_ADMIN:
+ case SqlParser.BACKUP_ADMIN:
+ case SqlParser.BINLOG_ADMIN:
+ case SqlParser.BINLOG_ENCRYPTION_ADMIN:
+ case SqlParser.CLONE_ADMIN:
+ case SqlParser.CONNECTION_ADMIN:
+ case SqlParser.ENCRYPTION_KEY_ADMIN:
+ case SqlParser.FIREWALL_ADMIN:
+ case SqlParser.FIREWALL_USER:
+ case SqlParser.GROUP_REPLICATION_ADMIN:
+ case SqlParser.INNODB_REDO_LOG_ARCHIVE:
+ case SqlParser.NDB_STORED_USER:
+ case SqlParser.PERSIST_RO_VARIABLES_ADMIN:
+ case SqlParser.REPLICATION_APPLIER:
+ case SqlParser.REPLICATION_SLAVE_ADMIN:
+ case SqlParser.RESOURCE_GROUP_ADMIN:
+ case SqlParser.RESOURCE_GROUP_USER:
+ case SqlParser.ROLE_ADMIN:
+ case SqlParser.SESSION_VARIABLES_ADMIN:
+ case SqlParser.SET_USER_ID:
+ case SqlParser.SHOW_ROUTINE:
+ case SqlParser.SYSTEM_VARIABLES_ADMIN:
+ case SqlParser.TABLE_ENCRYPTION_ADMIN:
+ case SqlParser.VERSION_TOKEN_ADMIN:
+ case SqlParser.XA_RECOVER_ADMIN:
+ case SqlParser.ARMSCII8:
+ case SqlParser.ASCII:
+ case SqlParser.BIG5:
+ case SqlParser.CP1250:
+ case SqlParser.CP1251:
+ case SqlParser.CP1256:
+ case SqlParser.CP1257:
+ case SqlParser.CP850:
+ case SqlParser.CP852:
+ case SqlParser.CP866:
+ case SqlParser.CP932:
+ case SqlParser.DEC8:
+ case SqlParser.EUCJPMS:
+ case SqlParser.EUCKR:
+ case SqlParser.GB2312:
+ case SqlParser.GBK:
+ case SqlParser.GEOSTD8:
+ case SqlParser.GREEK:
+ case SqlParser.HEBREW:
+ case SqlParser.HP8:
+ case SqlParser.KEYBCS2:
+ case SqlParser.KOI8R:
+ case SqlParser.KOI8U:
+ case SqlParser.LATIN1:
+ case SqlParser.LATIN2:
+ case SqlParser.LATIN5:
+ case SqlParser.LATIN7:
+ case SqlParser.MACCE:
+ case SqlParser.MACROMAN:
+ case SqlParser.SJIS:
+ case SqlParser.SWE7:
+ case SqlParser.TIS620:
+ case SqlParser.UCS2:
+ case SqlParser.UJIS:
+ case SqlParser.UTF16:
+ case SqlParser.UTF16LE:
+ case SqlParser.UTF32:
+ case SqlParser.UTF8:
+ case SqlParser.UTF8MB3:
+ case SqlParser.UTF8MB4:
+ case SqlParser.ARCHIVE:
+ case SqlParser.BLACKHOLE:
+ case SqlParser.CSV:
+ case SqlParser.FEDERATED:
+ case SqlParser.INNODB:
+ case SqlParser.MEMORY:
+ case SqlParser.MRG_MYISAM:
+ case SqlParser.MYISAM:
+ case SqlParser.NDB:
+ case SqlParser.NDBCLUSTER:
+ case SqlParser.PERFORMANCE_SCHEMA:
+ case SqlParser.TOKUDB:
+ case SqlParser.REPEATABLE:
+ case SqlParser.COMMITTED:
+ case SqlParser.UNCOMMITTED:
+ case SqlParser.SERIALIZABLE:
+ case SqlParser.GEOMETRYCOLLECTION:
+ case SqlParser.LINESTRING:
+ case SqlParser.MULTILINESTRING:
+ case SqlParser.MULTIPOINT:
+ case SqlParser.MULTIPOLYGON:
+ case SqlParser.POINT:
+ case SqlParser.POLYGON:
+ case SqlParser.ABS:
+ case SqlParser.ACOS:
+ case SqlParser.ADDDATE:
+ case SqlParser.ADDTIME:
+ case SqlParser.AES_DECRYPT:
+ case SqlParser.AES_ENCRYPT:
+ case SqlParser.AREA:
+ case SqlParser.ASBINARY:
+ case SqlParser.ASIN:
+ case SqlParser.ASTEXT:
+ case SqlParser.ASWKB:
+ case SqlParser.ASWKT:
+ case SqlParser.ASYMMETRIC_DECRYPT:
+ case SqlParser.ASYMMETRIC_DERIVE:
+ case SqlParser.ASYMMETRIC_ENCRYPT:
+ case SqlParser.ASYMMETRIC_SIGN:
+ case SqlParser.ASYMMETRIC_VERIFY:
+ case SqlParser.ATAN:
+ case SqlParser.ATAN2:
+ case SqlParser.BENCHMARK:
+ case SqlParser.BIN:
+ case SqlParser.BIT_COUNT:
+ case SqlParser.BIT_LENGTH:
+ case SqlParser.BUFFER:
+ case SqlParser.CATALOG_NAME:
+ case SqlParser.CEIL:
+ case SqlParser.CEILING:
+ case SqlParser.CENTROID:
+ case SqlParser.CHARACTER_LENGTH:
+ case SqlParser.CHARSET:
+ case SqlParser.CHAR_LENGTH:
+ case SqlParser.COERCIBILITY:
+ case SqlParser.COLLATION:
+ case SqlParser.COMPRESS:
+ case SqlParser.CONCAT:
+ case SqlParser.CONCAT_WS:
+ case SqlParser.CONNECTION_ID:
+ case SqlParser.CONV:
+ case SqlParser.CONVERT_TZ:
+ case SqlParser.COS:
+ case SqlParser.COT:
+ case SqlParser.CRC32:
+ case SqlParser.CREATE_ASYMMETRIC_PRIV_KEY:
+ case SqlParser.CREATE_ASYMMETRIC_PUB_KEY:
+ case SqlParser.CREATE_DH_PARAMETERS:
+ case SqlParser.CREATE_DIGEST:
+ case SqlParser.CROSSES:
+ case SqlParser.DATEDIFF:
+ case SqlParser.DATE_FORMAT:
+ case SqlParser.DAYNAME:
+ case SqlParser.DAYOFMONTH:
+ case SqlParser.DAYOFWEEK:
+ case SqlParser.DAYOFYEAR:
+ case SqlParser.DECODE:
+ case SqlParser.DEGREES:
+ case SqlParser.DES_DECRYPT:
+ case SqlParser.DES_ENCRYPT:
+ case SqlParser.DIMENSION:
+ case SqlParser.DISJOINT:
+ case SqlParser.ELT:
+ case SqlParser.ENCODE:
+ case SqlParser.ENCRYPT:
+ case SqlParser.ENDPOINT:
+ case SqlParser.ENVELOPE:
+ case SqlParser.EQUALS:
+ case SqlParser.EXP:
+ case SqlParser.EXPORT_SET:
+ case SqlParser.EXTERIORRING:
+ case SqlParser.EXTRACTVALUE:
+ case SqlParser.FIELD:
+ case SqlParser.FIND_IN_SET:
+ case SqlParser.FLOOR:
+ case SqlParser.FORMAT:
+ case SqlParser.FOUND_ROWS:
+ case SqlParser.FROM_BASE64:
+ case SqlParser.FROM_DAYS:
+ case SqlParser.FROM_UNIXTIME:
+ case SqlParser.GEOMCOLLFROMTEXT:
+ case SqlParser.GEOMCOLLFROMWKB:
+ case SqlParser.GEOMETRYCOLLECTIONFROMTEXT:
+ case SqlParser.GEOMETRYCOLLECTIONFROMWKB:
+ case SqlParser.GEOMETRYFROMTEXT:
+ case SqlParser.GEOMETRYFROMWKB:
+ case SqlParser.GEOMETRYN:
+ case SqlParser.GEOMETRYTYPE:
+ case SqlParser.GEOMFROMTEXT:
+ case SqlParser.GEOMFROMWKB:
+ case SqlParser.GET_FORMAT:
+ case SqlParser.GET_LOCK:
+ case SqlParser.GLENGTH:
+ case SqlParser.GREATEST:
+ case SqlParser.GTID_SUBSET:
+ case SqlParser.GTID_SUBTRACT:
+ case SqlParser.HEX:
+ case SqlParser.IFNULL:
+ case SqlParser.INET6_ATON:
+ case SqlParser.INET6_NTOA:
+ case SqlParser.INET_ATON:
+ case SqlParser.INET_NTOA:
+ case SqlParser.INSTR:
+ case SqlParser.INTERIORRINGN:
+ case SqlParser.INTERSECTS:
+ case SqlParser.ISCLOSED:
+ case SqlParser.ISEMPTY:
+ case SqlParser.ISNULL:
+ case SqlParser.ISSIMPLE:
+ case SqlParser.IS_FREE_LOCK:
+ case SqlParser.IS_IPV4:
+ case SqlParser.IS_IPV4_COMPAT:
+ case SqlParser.IS_IPV4_MAPPED:
+ case SqlParser.IS_IPV6:
+ case SqlParser.IS_USED_LOCK:
+ case SqlParser.LAST_INSERT_ID:
+ case SqlParser.LCASE:
+ case SqlParser.LEAST:
+ case SqlParser.LENGTH:
+ case SqlParser.LINEFROMTEXT:
+ case SqlParser.LINEFROMWKB:
+ case SqlParser.LINESTRINGFROMTEXT:
+ case SqlParser.LINESTRINGFROMWKB:
+ case SqlParser.LN:
+ case SqlParser.LOAD_FILE:
+ case SqlParser.LOCATE:
+ case SqlParser.LOG:
+ case SqlParser.LOG10:
+ case SqlParser.LOG2:
+ case SqlParser.LOWER:
+ case SqlParser.LPAD:
+ case SqlParser.LTRIM:
+ case SqlParser.MAKEDATE:
+ case SqlParser.MAKETIME:
+ case SqlParser.MAKE_SET:
+ case SqlParser.MASTER_POS_WAIT:
+ case SqlParser.MBRCONTAINS:
+ case SqlParser.MBRDISJOINT:
+ case SqlParser.MBREQUAL:
+ case SqlParser.MBRINTERSECTS:
+ case SqlParser.MBROVERLAPS:
+ case SqlParser.MBRTOUCHES:
+ case SqlParser.MBRWITHIN:
+ case SqlParser.MD5:
+ case SqlParser.MLINEFROMTEXT:
+ case SqlParser.MLINEFROMWKB:
+ case SqlParser.MONTHNAME:
+ case SqlParser.MPOINTFROMTEXT:
+ case SqlParser.MPOINTFROMWKB:
+ case SqlParser.MPOLYFROMTEXT:
+ case SqlParser.MPOLYFROMWKB:
+ case SqlParser.MULTILINESTRINGFROMTEXT:
+ case SqlParser.MULTILINESTRINGFROMWKB:
+ case SqlParser.MULTIPOINTFROMTEXT:
+ case SqlParser.MULTIPOINTFROMWKB:
+ case SqlParser.MULTIPOLYGONFROMTEXT:
+ case SqlParser.MULTIPOLYGONFROMWKB:
+ case SqlParser.NAME_CONST:
+ case SqlParser.NULLIF:
+ case SqlParser.NUMGEOMETRIES:
+ case SqlParser.NUMINTERIORRINGS:
+ case SqlParser.NUMPOINTS:
+ case SqlParser.OCT:
+ case SqlParser.OCTET_LENGTH:
+ case SqlParser.ORD:
+ case SqlParser.OVERLAPS:
+ case SqlParser.PERIOD_ADD:
+ case SqlParser.PERIOD_DIFF:
+ case SqlParser.PI:
+ case SqlParser.POINTFROMTEXT:
+ case SqlParser.POINTFROMWKB:
+ case SqlParser.POINTN:
+ case SqlParser.POLYFROMTEXT:
+ case SqlParser.POLYFROMWKB:
+ case SqlParser.POLYGONFROMTEXT:
+ case SqlParser.POLYGONFROMWKB:
+ case SqlParser.POW:
+ case SqlParser.POWER:
+ case SqlParser.QUOTE:
+ case SqlParser.RADIANS:
+ case SqlParser.RAND:
+ case SqlParser.RANDOM_BYTES:
+ case SqlParser.RELEASE_LOCK:
+ case SqlParser.REVERSE:
+ case SqlParser.ROUND:
+ case SqlParser.ROW_COUNT:
+ case SqlParser.RPAD:
+ case SqlParser.RTRIM:
+ case SqlParser.SEC_TO_TIME:
+ case SqlParser.SESSION_USER:
+ case SqlParser.SHA:
+ case SqlParser.SHA1:
+ case SqlParser.SHA2:
+ case SqlParser.SCHEMA_NAME:
+ case SqlParser.SIGN:
+ case SqlParser.SIN:
+ case SqlParser.SLEEP:
+ case SqlParser.SOUNDEX:
+ case SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS:
+ case SqlParser.SQRT:
+ case SqlParser.SRID:
+ case SqlParser.STARTPOINT:
+ case SqlParser.STRCMP:
+ case SqlParser.STR_TO_DATE:
+ case SqlParser.ST_AREA:
+ case SqlParser.ST_ASBINARY:
+ case SqlParser.ST_ASTEXT:
+ case SqlParser.ST_ASWKB:
+ case SqlParser.ST_ASWKT:
+ case SqlParser.ST_BUFFER:
+ case SqlParser.ST_CENTROID:
+ case SqlParser.ST_CONTAINS:
+ case SqlParser.ST_CROSSES:
+ case SqlParser.ST_DIFFERENCE:
+ case SqlParser.ST_DIMENSION:
+ case SqlParser.ST_DISJOINT:
+ case SqlParser.ST_DISTANCE:
+ case SqlParser.ST_ENDPOINT:
+ case SqlParser.ST_ENVELOPE:
+ case SqlParser.ST_EQUALS:
+ case SqlParser.ST_EXTERIORRING:
+ case SqlParser.ST_GEOMCOLLFROMTEXT:
+ case SqlParser.ST_GEOMCOLLFROMTXT:
+ case SqlParser.ST_GEOMCOLLFROMWKB:
+ case SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT:
+ case SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB:
+ case SqlParser.ST_GEOMETRYFROMTEXT:
+ case SqlParser.ST_GEOMETRYFROMWKB:
+ case SqlParser.ST_GEOMETRYN:
+ case SqlParser.ST_GEOMETRYTYPE:
+ case SqlParser.ST_GEOMFROMTEXT:
+ case SqlParser.ST_GEOMFROMWKB:
+ case SqlParser.ST_INTERIORRINGN:
+ case SqlParser.ST_INTERSECTION:
+ case SqlParser.ST_INTERSECTS:
+ case SqlParser.ST_ISCLOSED:
+ case SqlParser.ST_ISEMPTY:
+ case SqlParser.ST_ISSIMPLE:
+ case SqlParser.ST_LINEFROMTEXT:
+ case SqlParser.ST_LINEFROMWKB:
+ case SqlParser.ST_LINESTRINGFROMTEXT:
+ case SqlParser.ST_LINESTRINGFROMWKB:
+ case SqlParser.ST_NUMGEOMETRIES:
+ case SqlParser.ST_NUMINTERIORRING:
+ case SqlParser.ST_NUMINTERIORRINGS:
+ case SqlParser.ST_NUMPOINTS:
+ case SqlParser.ST_OVERLAPS:
+ case SqlParser.ST_POINTFROMTEXT:
+ case SqlParser.ST_POINTFROMWKB:
+ case SqlParser.ST_POINTN:
+ case SqlParser.ST_POLYFROMTEXT:
+ case SqlParser.ST_POLYFROMWKB:
+ case SqlParser.ST_POLYGONFROMTEXT:
+ case SqlParser.ST_POLYGONFROMWKB:
+ case SqlParser.ST_SRID:
+ case SqlParser.ST_STARTPOINT:
+ case SqlParser.ST_SYMDIFFERENCE:
+ case SqlParser.ST_TOUCHES:
+ case SqlParser.ST_UNION:
+ case SqlParser.ST_WITHIN:
+ case SqlParser.ST_X:
+ case SqlParser.ST_Y:
+ case SqlParser.SUBDATE:
+ case SqlParser.SUBSTRING_INDEX:
+ case SqlParser.SUBTIME:
+ case SqlParser.SYSTEM_USER:
+ case SqlParser.TAN:
+ case SqlParser.TIMEDIFF:
+ case SqlParser.TIMESTAMPADD:
+ case SqlParser.TIMESTAMPDIFF:
+ case SqlParser.TIME_FORMAT:
+ case SqlParser.TIME_TO_SEC:
+ case SqlParser.TOUCHES:
+ case SqlParser.TO_BASE64:
+ case SqlParser.TO_DAYS:
+ case SqlParser.TO_SECONDS:
+ case SqlParser.UCASE:
+ case SqlParser.UNCOMPRESS:
+ case SqlParser.UNCOMPRESSED_LENGTH:
+ case SqlParser.UNHEX:
+ case SqlParser.UNIX_TIMESTAMP:
+ case SqlParser.UPDATEXML:
+ case SqlParser.UPPER:
+ case SqlParser.UUID:
+ case SqlParser.UUID_SHORT:
+ case SqlParser.VALIDATE_PASSWORD_STRENGTH:
+ case SqlParser.VERSION:
+ case SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS:
+ case SqlParser.WEEKDAY:
+ case SqlParser.WEEKOFYEAR:
+ case SqlParser.WEIGHT_STRING:
+ case SqlParser.WITHIN:
+ case SqlParser.YEARWEEK:
+ case SqlParser.Y_FUNCTION:
+ case SqlParser.X_FUNCTION:
+ case SqlParser.CHARSET_REVERSE_QOUTE_STRING:
+ case SqlParser.STRING_LITERAL:
+ case SqlParser.ID:
+ case SqlParser.REVERSE_QUOTE_ID:
+ this.state = 2557;
+ this.uidList();
+ break;
+ case SqlParser.ALL:
+ this.state = 2558;
+ this.match(SqlParser.ALL);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ break;
+
+ case 37:
+ localctx = new AlterByCoalescePartitionContext(this, localctx);
+ this.enterOuterAlt(localctx, 37);
+ this.state = 2561;
+ this.match(SqlParser.COALESCE);
+ this.state = 2562;
+ this.match(SqlParser.PARTITION);
+ this.state = 2563;
+ this.decimalLiteral();
+ break;
+
+ case 38:
+ localctx = new AlterByReorganizePartitionContext(this, localctx);
+ this.enterOuterAlt(localctx, 38);
+ this.state = 2564;
+ this.match(SqlParser.REORGANIZE);
+ this.state = 2565;
+ this.match(SqlParser.PARTITION);
+ this.state = 2566;
+ this.uidList();
+ this.state = 2567;
+ this.match(SqlParser.INTO);
+ this.state = 2568;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 2569;
+ this.partitionDefinition();
+ this.state = 2574;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 2570;
+ this.match(SqlParser.COMMA);
+ this.state = 2571;
+ this.partitionDefinition();
+ this.state = 2576;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 2577;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+
+ case 39:
+ localctx = new AlterByExchangePartitionContext(this, localctx);
+ this.enterOuterAlt(localctx, 39);
+ this.state = 2579;
+ this.match(SqlParser.EXCHANGE);
+ this.state = 2580;
+ this.match(SqlParser.PARTITION);
+ this.state = 2581;
+ this.uid();
+ this.state = 2582;
+ this.match(SqlParser.WITH);
+ this.state = 2583;
+ this.match(SqlParser.TABLE);
+ this.state = 2584;
+ this.tableName();
+ this.state = 2587;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.WITH || _la===SqlParser.WITHOUT) {
+ this.state = 2585;
+ localctx.validationFormat = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.WITH || _la===SqlParser.WITHOUT)) {
+ localctx.validationFormat = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 2586;
+ this.match(SqlParser.VALIDATION);
+ }
+
+ break;
+
+ case 40:
+ localctx = new AlterByAnalyzePartitionContext(this, localctx);
+ this.enterOuterAlt(localctx, 40);
+ this.state = 2589;
+ this.match(SqlParser.ANALYZE);
+ this.state = 2590;
+ this.match(SqlParser.PARTITION);
+ this.state = 2593;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.CURRENT:
+ case SqlParser.DATABASE:
+ case SqlParser.DIAGNOSTICS:
+ case SqlParser.LEFT:
+ case SqlParser.NUMBER:
+ case SqlParser.RIGHT:
+ case SqlParser.STACKED:
+ case SqlParser.DATE:
+ case SqlParser.TIME:
+ case SqlParser.TIMESTAMP:
+ case SqlParser.DATETIME:
+ case SqlParser.YEAR:
+ case SqlParser.TEXT:
+ case SqlParser.ENUM:
+ case SqlParser.SERIAL:
+ case SqlParser.JSON_VALID:
+ case SqlParser.JSON_SCHEMA_VALID:
+ case SqlParser.COUNT:
+ case SqlParser.POSITION:
+ case SqlParser.ACCOUNT:
+ case SqlParser.ACTION:
+ case SqlParser.AFTER:
+ case SqlParser.AGGREGATE:
+ case SqlParser.ALGORITHM:
+ case SqlParser.ANY:
+ case SqlParser.AT:
+ case SqlParser.AUTHORS:
+ case SqlParser.AUTOCOMMIT:
+ case SqlParser.AUTOEXTEND_SIZE:
+ case SqlParser.AUTO_INCREMENT:
+ case SqlParser.AVG_ROW_LENGTH:
+ case SqlParser.BEGIN:
+ case SqlParser.BINLOG:
+ case SqlParser.BIT:
+ case SqlParser.BLOCK:
+ case SqlParser.BOOL:
+ case SqlParser.BOOLEAN:
+ case SqlParser.BTREE:
+ case SqlParser.CACHE:
+ case SqlParser.CASCADED:
+ case SqlParser.CHAIN:
+ case SqlParser.CHANGED:
+ case SqlParser.CHANNEL:
+ case SqlParser.CHECKSUM:
+ case SqlParser.PAGE_CHECKSUM:
+ case SqlParser.CIPHER:
+ case SqlParser.CLASS_ORIGIN:
+ case SqlParser.CLIENT:
+ case SqlParser.CLOSE:
+ case SqlParser.COALESCE:
+ case SqlParser.CODE:
+ case SqlParser.COLUMNS:
+ case SqlParser.COLUMN_FORMAT:
+ case SqlParser.COLUMN_NAME:
+ case SqlParser.COMMENT:
+ case SqlParser.COMMIT:
+ case SqlParser.COMPACT:
+ case SqlParser.COMPLETION:
+ case SqlParser.COMPRESSED:
+ case SqlParser.COMPRESSION:
+ case SqlParser.CONCURRENT:
+ case SqlParser.CONNECTION:
+ case SqlParser.CONSISTENT:
+ case SqlParser.CONSTRAINT_CATALOG:
+ case SqlParser.CONSTRAINT_SCHEMA:
+ case SqlParser.CONSTRAINT_NAME:
+ case SqlParser.CONTAINS:
+ case SqlParser.CONTEXT:
+ case SqlParser.CONTRIBUTORS:
+ case SqlParser.COPY:
+ case SqlParser.CPU:
+ case SqlParser.CURSOR_NAME:
+ case SqlParser.DATA:
+ case SqlParser.DATAFILE:
+ case SqlParser.DEALLOCATE:
+ case SqlParser.DEFAULT_AUTH:
+ case SqlParser.DEFINER:
+ case SqlParser.DELAY_KEY_WRITE:
+ case SqlParser.DES_KEY_FILE:
+ case SqlParser.DIRECTORY:
+ case SqlParser.DISABLE:
+ case SqlParser.DISCARD:
+ case SqlParser.DISK:
+ case SqlParser.DO:
+ case SqlParser.DUMPFILE:
+ case SqlParser.DUPLICATE:
+ case SqlParser.DYNAMIC:
+ case SqlParser.ENABLE:
+ case SqlParser.ENCRYPTION:
+ case SqlParser.END:
+ case SqlParser.ENDS:
+ case SqlParser.ENGINE:
+ case SqlParser.ENGINES:
+ case SqlParser.ERROR:
+ case SqlParser.ERRORS:
+ case SqlParser.ESCAPE:
+ case SqlParser.EVEN:
+ case SqlParser.EVENT:
+ case SqlParser.EVENTS:
+ case SqlParser.EVERY:
+ case SqlParser.EXCHANGE:
+ case SqlParser.EXCLUSIVE:
+ case SqlParser.EXPIRE:
+ case SqlParser.EXPORT:
+ case SqlParser.EXTENDED:
+ case SqlParser.EXTENT_SIZE:
+ case SqlParser.FAST:
+ case SqlParser.FAULTS:
+ case SqlParser.FIELDS:
+ case SqlParser.FILE_BLOCK_SIZE:
+ case SqlParser.FILTER:
+ case SqlParser.FIRST:
+ case SqlParser.FIXED:
+ case SqlParser.FLUSH:
+ case SqlParser.FOLLOWS:
+ case SqlParser.FOUND:
+ case SqlParser.FULL:
+ case SqlParser.FUNCTION:
+ case SqlParser.GENERAL:
+ case SqlParser.GLOBAL:
+ case SqlParser.GRANTS:
+ case SqlParser.GROUP_REPLICATION:
+ case SqlParser.HANDLER:
+ case SqlParser.HASH:
+ case SqlParser.HELP:
+ case SqlParser.HOST:
+ case SqlParser.HOSTS:
+ case SqlParser.IDENTIFIED:
+ case SqlParser.IGNORE_SERVER_IDS:
+ case SqlParser.IMPORT:
+ case SqlParser.INDEXES:
+ case SqlParser.INITIAL_SIZE:
+ case SqlParser.INPLACE:
+ case SqlParser.INSERT_METHOD:
+ case SqlParser.INSTALL:
+ case SqlParser.INSTANCE:
+ case SqlParser.INVISIBLE:
+ case SqlParser.INVOKER:
+ case SqlParser.IO:
+ case SqlParser.IO_THREAD:
+ case SqlParser.IPC:
+ case SqlParser.ISOLATION:
+ case SqlParser.ISSUER:
+ case SqlParser.JSON:
+ case SqlParser.KEY_BLOCK_SIZE:
+ case SqlParser.LANGUAGE:
+ case SqlParser.LAST:
+ case SqlParser.LEAVES:
+ case SqlParser.LESS:
+ case SqlParser.LEVEL:
+ case SqlParser.LIST:
+ case SqlParser.LOCAL:
+ case SqlParser.LOGFILE:
+ case SqlParser.LOGS:
+ case SqlParser.MASTER:
+ case SqlParser.MASTER_AUTO_POSITION:
+ case SqlParser.MASTER_CONNECT_RETRY:
+ case SqlParser.MASTER_DELAY:
+ case SqlParser.MASTER_HEARTBEAT_PERIOD:
+ case SqlParser.MASTER_HOST:
+ case SqlParser.MASTER_LOG_FILE:
+ case SqlParser.MASTER_LOG_POS:
+ case SqlParser.MASTER_PASSWORD:
+ case SqlParser.MASTER_PORT:
+ case SqlParser.MASTER_RETRY_COUNT:
+ case SqlParser.MASTER_SSL:
+ case SqlParser.MASTER_SSL_CA:
+ case SqlParser.MASTER_SSL_CAPATH:
+ case SqlParser.MASTER_SSL_CERT:
+ case SqlParser.MASTER_SSL_CIPHER:
+ case SqlParser.MASTER_SSL_CRL:
+ case SqlParser.MASTER_SSL_CRLPATH:
+ case SqlParser.MASTER_SSL_KEY:
+ case SqlParser.MASTER_TLS_VERSION:
+ case SqlParser.MASTER_USER:
+ case SqlParser.MAX_CONNECTIONS_PER_HOUR:
+ case SqlParser.MAX_QUERIES_PER_HOUR:
+ case SqlParser.MAX_ROWS:
+ case SqlParser.MAX_SIZE:
+ case SqlParser.MAX_UPDATES_PER_HOUR:
+ case SqlParser.MAX_USER_CONNECTIONS:
+ case SqlParser.MEDIUM:
+ case SqlParser.MERGE:
+ case SqlParser.MESSAGE_TEXT:
+ case SqlParser.MID:
+ case SqlParser.MIGRATE:
+ case SqlParser.MIN_ROWS:
+ case SqlParser.MODE:
+ case SqlParser.MODIFY:
+ case SqlParser.MUTEX:
+ case SqlParser.MYSQL:
+ case SqlParser.MYSQL_ERRNO:
+ case SqlParser.NAME:
+ case SqlParser.NAMES:
+ case SqlParser.NCHAR:
+ case SqlParser.NEVER:
+ case SqlParser.NEXT:
+ case SqlParser.NO:
+ case SqlParser.NODEGROUP:
+ case SqlParser.NONE:
+ case SqlParser.OFFLINE:
+ case SqlParser.OFFSET:
+ case SqlParser.OJ:
+ case SqlParser.OLD_PASSWORD:
+ case SqlParser.ONE:
+ case SqlParser.ONLINE:
+ case SqlParser.ONLY:
+ case SqlParser.OPEN:
+ case SqlParser.OPTIMIZER_COSTS:
+ case SqlParser.OPTIONS:
+ case SqlParser.OWNER:
+ case SqlParser.PACK_KEYS:
+ case SqlParser.PAGE:
+ case SqlParser.PARSER:
+ case SqlParser.PARTIAL:
+ case SqlParser.PARTITIONING:
+ case SqlParser.PARTITIONS:
+ case SqlParser.PASSWORD:
+ case SqlParser.PHASE:
+ case SqlParser.PLUGIN:
+ case SqlParser.PLUGIN_DIR:
+ case SqlParser.PLUGINS:
+ case SqlParser.PORT:
+ case SqlParser.PRECEDES:
+ case SqlParser.PREPARE:
+ case SqlParser.PRESERVE:
+ case SqlParser.PREV:
+ case SqlParser.PROCESSLIST:
+ case SqlParser.PROFILE:
+ case SqlParser.PROFILES:
+ case SqlParser.PROXY:
+ case SqlParser.QUERY:
+ case SqlParser.QUICK:
+ case SqlParser.REBUILD:
+ case SqlParser.RECOVER:
+ case SqlParser.REDO_BUFFER_SIZE:
+ case SqlParser.REDUNDANT:
+ case SqlParser.RELAY:
+ case SqlParser.RELAY_LOG_FILE:
+ case SqlParser.RELAY_LOG_POS:
+ case SqlParser.RELAYLOG:
+ case SqlParser.REMOVE:
+ case SqlParser.REORGANIZE:
+ case SqlParser.REPAIR:
+ case SqlParser.REPLICATE_DO_DB:
+ case SqlParser.REPLICATE_DO_TABLE:
+ case SqlParser.REPLICATE_IGNORE_DB:
+ case SqlParser.REPLICATE_IGNORE_TABLE:
+ case SqlParser.REPLICATE_REWRITE_DB:
+ case SqlParser.REPLICATE_WILD_DO_TABLE:
+ case SqlParser.REPLICATE_WILD_IGNORE_TABLE:
+ case SqlParser.REPLICATION:
+ case SqlParser.RESET:
+ case SqlParser.RESUME:
+ case SqlParser.RETURNED_SQLSTATE:
+ case SqlParser.RETURNS:
+ case SqlParser.ROLE:
+ case SqlParser.ROLLBACK:
+ case SqlParser.ROLLUP:
+ case SqlParser.ROTATE:
+ case SqlParser.ROW:
+ case SqlParser.ROWS:
+ case SqlParser.ROW_FORMAT:
+ case SqlParser.SAVEPOINT:
+ case SqlParser.SCHEDULE:
+ case SqlParser.SECURITY:
+ case SqlParser.SERVER:
+ case SqlParser.SESSION:
+ case SqlParser.SHARE:
+ case SqlParser.SHARED:
+ case SqlParser.SIGNED:
+ case SqlParser.SIMPLE:
+ case SqlParser.SLAVE:
+ case SqlParser.SLOW:
+ case SqlParser.SNAPSHOT:
+ case SqlParser.SOCKET:
+ case SqlParser.SOME:
+ case SqlParser.SONAME:
+ case SqlParser.SOUNDS:
+ case SqlParser.SOURCE:
+ case SqlParser.SQL_AFTER_GTIDS:
+ case SqlParser.SQL_AFTER_MTS_GAPS:
+ case SqlParser.SQL_BEFORE_GTIDS:
+ case SqlParser.SQL_BUFFER_RESULT:
+ case SqlParser.SQL_CACHE:
+ case SqlParser.SQL_NO_CACHE:
+ case SqlParser.SQL_THREAD:
+ case SqlParser.START:
+ case SqlParser.STARTS:
+ case SqlParser.STATS_AUTO_RECALC:
+ case SqlParser.STATS_PERSISTENT:
+ case SqlParser.STATS_SAMPLE_PAGES:
+ case SqlParser.STATUS:
+ case SqlParser.STOP:
+ case SqlParser.STORAGE:
+ case SqlParser.STRING:
+ case SqlParser.SUBCLASS_ORIGIN:
+ case SqlParser.SUBJECT:
+ case SqlParser.SUBPARTITION:
+ case SqlParser.SUBPARTITIONS:
+ case SqlParser.SUSPEND:
+ case SqlParser.SWAPS:
+ case SqlParser.SWITCHES:
+ case SqlParser.TABLE_NAME:
+ case SqlParser.TABLESPACE:
+ case SqlParser.TEMPORARY:
+ case SqlParser.TEMPTABLE:
+ case SqlParser.THAN:
+ case SqlParser.TRADITIONAL:
+ case SqlParser.TRANSACTION:
+ case SqlParser.TRANSACTIONAL:
+ case SqlParser.TRIGGERS:
+ case SqlParser.TRUNCATE:
+ case SqlParser.UNDEFINED:
+ case SqlParser.UNDOFILE:
+ case SqlParser.UNDO_BUFFER_SIZE:
+ case SqlParser.UNINSTALL:
+ case SqlParser.UNKNOWN:
+ case SqlParser.UNTIL:
+ case SqlParser.UPGRADE:
+ case SqlParser.USER:
+ case SqlParser.USE_FRM:
+ case SqlParser.USER_RESOURCES:
+ case SqlParser.VALIDATION:
+ case SqlParser.VALUE:
+ case SqlParser.VARIABLES:
+ case SqlParser.VIEW:
+ case SqlParser.VISIBLE:
+ case SqlParser.WAIT:
+ case SqlParser.WARNINGS:
+ case SqlParser.WITHOUT:
+ case SqlParser.WORK:
+ case SqlParser.WRAPPER:
+ case SqlParser.X509:
+ case SqlParser.XA:
+ case SqlParser.XML:
+ case SqlParser.INTERNAL:
+ case SqlParser.QUARTER:
+ case SqlParser.MONTH:
+ case SqlParser.DAY:
+ case SqlParser.HOUR:
+ case SqlParser.MINUTE:
+ case SqlParser.WEEK:
+ case SqlParser.SECOND:
+ case SqlParser.MICROSECOND:
+ case SqlParser.TABLES:
+ case SqlParser.ROUTINE:
+ case SqlParser.EXECUTE:
+ case SqlParser.FILE:
+ case SqlParser.PROCESS:
+ case SqlParser.RELOAD:
+ case SqlParser.SHUTDOWN:
+ case SqlParser.SUPER:
+ case SqlParser.PRIVILEGES:
+ case SqlParser.AUDIT_ADMIN:
+ case SqlParser.BACKUP_ADMIN:
+ case SqlParser.BINLOG_ADMIN:
+ case SqlParser.BINLOG_ENCRYPTION_ADMIN:
+ case SqlParser.CLONE_ADMIN:
+ case SqlParser.CONNECTION_ADMIN:
+ case SqlParser.ENCRYPTION_KEY_ADMIN:
+ case SqlParser.FIREWALL_ADMIN:
+ case SqlParser.FIREWALL_USER:
+ case SqlParser.GROUP_REPLICATION_ADMIN:
+ case SqlParser.INNODB_REDO_LOG_ARCHIVE:
+ case SqlParser.NDB_STORED_USER:
+ case SqlParser.PERSIST_RO_VARIABLES_ADMIN:
+ case SqlParser.REPLICATION_APPLIER:
+ case SqlParser.REPLICATION_SLAVE_ADMIN:
+ case SqlParser.RESOURCE_GROUP_ADMIN:
+ case SqlParser.RESOURCE_GROUP_USER:
+ case SqlParser.ROLE_ADMIN:
+ case SqlParser.SESSION_VARIABLES_ADMIN:
+ case SqlParser.SET_USER_ID:
+ case SqlParser.SHOW_ROUTINE:
+ case SqlParser.SYSTEM_VARIABLES_ADMIN:
+ case SqlParser.TABLE_ENCRYPTION_ADMIN:
+ case SqlParser.VERSION_TOKEN_ADMIN:
+ case SqlParser.XA_RECOVER_ADMIN:
+ case SqlParser.ARMSCII8:
+ case SqlParser.ASCII:
+ case SqlParser.BIG5:
+ case SqlParser.CP1250:
+ case SqlParser.CP1251:
+ case SqlParser.CP1256:
+ case SqlParser.CP1257:
+ case SqlParser.CP850:
+ case SqlParser.CP852:
+ case SqlParser.CP866:
+ case SqlParser.CP932:
+ case SqlParser.DEC8:
+ case SqlParser.EUCJPMS:
+ case SqlParser.EUCKR:
+ case SqlParser.GB2312:
+ case SqlParser.GBK:
+ case SqlParser.GEOSTD8:
+ case SqlParser.GREEK:
+ case SqlParser.HEBREW:
+ case SqlParser.HP8:
+ case SqlParser.KEYBCS2:
+ case SqlParser.KOI8R:
+ case SqlParser.KOI8U:
+ case SqlParser.LATIN1:
+ case SqlParser.LATIN2:
+ case SqlParser.LATIN5:
+ case SqlParser.LATIN7:
+ case SqlParser.MACCE:
+ case SqlParser.MACROMAN:
+ case SqlParser.SJIS:
+ case SqlParser.SWE7:
+ case SqlParser.TIS620:
+ case SqlParser.UCS2:
+ case SqlParser.UJIS:
+ case SqlParser.UTF16:
+ case SqlParser.UTF16LE:
+ case SqlParser.UTF32:
+ case SqlParser.UTF8:
+ case SqlParser.UTF8MB3:
+ case SqlParser.UTF8MB4:
+ case SqlParser.ARCHIVE:
+ case SqlParser.BLACKHOLE:
+ case SqlParser.CSV:
+ case SqlParser.FEDERATED:
+ case SqlParser.INNODB:
+ case SqlParser.MEMORY:
+ case SqlParser.MRG_MYISAM:
+ case SqlParser.MYISAM:
+ case SqlParser.NDB:
+ case SqlParser.NDBCLUSTER:
+ case SqlParser.PERFORMANCE_SCHEMA:
+ case SqlParser.TOKUDB:
+ case SqlParser.REPEATABLE:
+ case SqlParser.COMMITTED:
+ case SqlParser.UNCOMMITTED:
+ case SqlParser.SERIALIZABLE:
+ case SqlParser.GEOMETRYCOLLECTION:
+ case SqlParser.LINESTRING:
+ case SqlParser.MULTILINESTRING:
+ case SqlParser.MULTIPOINT:
+ case SqlParser.MULTIPOLYGON:
+ case SqlParser.POINT:
+ case SqlParser.POLYGON:
+ case SqlParser.ABS:
+ case SqlParser.ACOS:
+ case SqlParser.ADDDATE:
+ case SqlParser.ADDTIME:
+ case SqlParser.AES_DECRYPT:
+ case SqlParser.AES_ENCRYPT:
+ case SqlParser.AREA:
+ case SqlParser.ASBINARY:
+ case SqlParser.ASIN:
+ case SqlParser.ASTEXT:
+ case SqlParser.ASWKB:
+ case SqlParser.ASWKT:
+ case SqlParser.ASYMMETRIC_DECRYPT:
+ case SqlParser.ASYMMETRIC_DERIVE:
+ case SqlParser.ASYMMETRIC_ENCRYPT:
+ case SqlParser.ASYMMETRIC_SIGN:
+ case SqlParser.ASYMMETRIC_VERIFY:
+ case SqlParser.ATAN:
+ case SqlParser.ATAN2:
+ case SqlParser.BENCHMARK:
+ case SqlParser.BIN:
+ case SqlParser.BIT_COUNT:
+ case SqlParser.BIT_LENGTH:
+ case SqlParser.BUFFER:
+ case SqlParser.CATALOG_NAME:
+ case SqlParser.CEIL:
+ case SqlParser.CEILING:
+ case SqlParser.CENTROID:
+ case SqlParser.CHARACTER_LENGTH:
+ case SqlParser.CHARSET:
+ case SqlParser.CHAR_LENGTH:
+ case SqlParser.COERCIBILITY:
+ case SqlParser.COLLATION:
+ case SqlParser.COMPRESS:
+ case SqlParser.CONCAT:
+ case SqlParser.CONCAT_WS:
+ case SqlParser.CONNECTION_ID:
+ case SqlParser.CONV:
+ case SqlParser.CONVERT_TZ:
+ case SqlParser.COS:
+ case SqlParser.COT:
+ case SqlParser.CRC32:
+ case SqlParser.CREATE_ASYMMETRIC_PRIV_KEY:
+ case SqlParser.CREATE_ASYMMETRIC_PUB_KEY:
+ case SqlParser.CREATE_DH_PARAMETERS:
+ case SqlParser.CREATE_DIGEST:
+ case SqlParser.CROSSES:
+ case SqlParser.DATEDIFF:
+ case SqlParser.DATE_FORMAT:
+ case SqlParser.DAYNAME:
+ case SqlParser.DAYOFMONTH:
+ case SqlParser.DAYOFWEEK:
+ case SqlParser.DAYOFYEAR:
+ case SqlParser.DECODE:
+ case SqlParser.DEGREES:
+ case SqlParser.DES_DECRYPT:
+ case SqlParser.DES_ENCRYPT:
+ case SqlParser.DIMENSION:
+ case SqlParser.DISJOINT:
+ case SqlParser.ELT:
+ case SqlParser.ENCODE:
+ case SqlParser.ENCRYPT:
+ case SqlParser.ENDPOINT:
+ case SqlParser.ENVELOPE:
+ case SqlParser.EQUALS:
+ case SqlParser.EXP:
+ case SqlParser.EXPORT_SET:
+ case SqlParser.EXTERIORRING:
+ case SqlParser.EXTRACTVALUE:
+ case SqlParser.FIELD:
+ case SqlParser.FIND_IN_SET:
+ case SqlParser.FLOOR:
+ case SqlParser.FORMAT:
+ case SqlParser.FOUND_ROWS:
+ case SqlParser.FROM_BASE64:
+ case SqlParser.FROM_DAYS:
+ case SqlParser.FROM_UNIXTIME:
+ case SqlParser.GEOMCOLLFROMTEXT:
+ case SqlParser.GEOMCOLLFROMWKB:
+ case SqlParser.GEOMETRYCOLLECTIONFROMTEXT:
+ case SqlParser.GEOMETRYCOLLECTIONFROMWKB:
+ case SqlParser.GEOMETRYFROMTEXT:
+ case SqlParser.GEOMETRYFROMWKB:
+ case SqlParser.GEOMETRYN:
+ case SqlParser.GEOMETRYTYPE:
+ case SqlParser.GEOMFROMTEXT:
+ case SqlParser.GEOMFROMWKB:
+ case SqlParser.GET_FORMAT:
+ case SqlParser.GET_LOCK:
+ case SqlParser.GLENGTH:
+ case SqlParser.GREATEST:
+ case SqlParser.GTID_SUBSET:
+ case SqlParser.GTID_SUBTRACT:
+ case SqlParser.HEX:
+ case SqlParser.IFNULL:
+ case SqlParser.INET6_ATON:
+ case SqlParser.INET6_NTOA:
+ case SqlParser.INET_ATON:
+ case SqlParser.INET_NTOA:
+ case SqlParser.INSTR:
+ case SqlParser.INTERIORRINGN:
+ case SqlParser.INTERSECTS:
+ case SqlParser.ISCLOSED:
+ case SqlParser.ISEMPTY:
+ case SqlParser.ISNULL:
+ case SqlParser.ISSIMPLE:
+ case SqlParser.IS_FREE_LOCK:
+ case SqlParser.IS_IPV4:
+ case SqlParser.IS_IPV4_COMPAT:
+ case SqlParser.IS_IPV4_MAPPED:
+ case SqlParser.IS_IPV6:
+ case SqlParser.IS_USED_LOCK:
+ case SqlParser.LAST_INSERT_ID:
+ case SqlParser.LCASE:
+ case SqlParser.LEAST:
+ case SqlParser.LENGTH:
+ case SqlParser.LINEFROMTEXT:
+ case SqlParser.LINEFROMWKB:
+ case SqlParser.LINESTRINGFROMTEXT:
+ case SqlParser.LINESTRINGFROMWKB:
+ case SqlParser.LN:
+ case SqlParser.LOAD_FILE:
+ case SqlParser.LOCATE:
+ case SqlParser.LOG:
+ case SqlParser.LOG10:
+ case SqlParser.LOG2:
+ case SqlParser.LOWER:
+ case SqlParser.LPAD:
+ case SqlParser.LTRIM:
+ case SqlParser.MAKEDATE:
+ case SqlParser.MAKETIME:
+ case SqlParser.MAKE_SET:
+ case SqlParser.MASTER_POS_WAIT:
+ case SqlParser.MBRCONTAINS:
+ case SqlParser.MBRDISJOINT:
+ case SqlParser.MBREQUAL:
+ case SqlParser.MBRINTERSECTS:
+ case SqlParser.MBROVERLAPS:
+ case SqlParser.MBRTOUCHES:
+ case SqlParser.MBRWITHIN:
+ case SqlParser.MD5:
+ case SqlParser.MLINEFROMTEXT:
+ case SqlParser.MLINEFROMWKB:
+ case SqlParser.MONTHNAME:
+ case SqlParser.MPOINTFROMTEXT:
+ case SqlParser.MPOINTFROMWKB:
+ case SqlParser.MPOLYFROMTEXT:
+ case SqlParser.MPOLYFROMWKB:
+ case SqlParser.MULTILINESTRINGFROMTEXT:
+ case SqlParser.MULTILINESTRINGFROMWKB:
+ case SqlParser.MULTIPOINTFROMTEXT:
+ case SqlParser.MULTIPOINTFROMWKB:
+ case SqlParser.MULTIPOLYGONFROMTEXT:
+ case SqlParser.MULTIPOLYGONFROMWKB:
+ case SqlParser.NAME_CONST:
+ case SqlParser.NULLIF:
+ case SqlParser.NUMGEOMETRIES:
+ case SqlParser.NUMINTERIORRINGS:
+ case SqlParser.NUMPOINTS:
+ case SqlParser.OCT:
+ case SqlParser.OCTET_LENGTH:
+ case SqlParser.ORD:
+ case SqlParser.OVERLAPS:
+ case SqlParser.PERIOD_ADD:
+ case SqlParser.PERIOD_DIFF:
+ case SqlParser.PI:
+ case SqlParser.POINTFROMTEXT:
+ case SqlParser.POINTFROMWKB:
+ case SqlParser.POINTN:
+ case SqlParser.POLYFROMTEXT:
+ case SqlParser.POLYFROMWKB:
+ case SqlParser.POLYGONFROMTEXT:
+ case SqlParser.POLYGONFROMWKB:
+ case SqlParser.POW:
+ case SqlParser.POWER:
+ case SqlParser.QUOTE:
+ case SqlParser.RADIANS:
+ case SqlParser.RAND:
+ case SqlParser.RANDOM_BYTES:
+ case SqlParser.RELEASE_LOCK:
+ case SqlParser.REVERSE:
+ case SqlParser.ROUND:
+ case SqlParser.ROW_COUNT:
+ case SqlParser.RPAD:
+ case SqlParser.RTRIM:
+ case SqlParser.SEC_TO_TIME:
+ case SqlParser.SESSION_USER:
+ case SqlParser.SHA:
+ case SqlParser.SHA1:
+ case SqlParser.SHA2:
+ case SqlParser.SCHEMA_NAME:
+ case SqlParser.SIGN:
+ case SqlParser.SIN:
+ case SqlParser.SLEEP:
+ case SqlParser.SOUNDEX:
+ case SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS:
+ case SqlParser.SQRT:
+ case SqlParser.SRID:
+ case SqlParser.STARTPOINT:
+ case SqlParser.STRCMP:
+ case SqlParser.STR_TO_DATE:
+ case SqlParser.ST_AREA:
+ case SqlParser.ST_ASBINARY:
+ case SqlParser.ST_ASTEXT:
+ case SqlParser.ST_ASWKB:
+ case SqlParser.ST_ASWKT:
+ case SqlParser.ST_BUFFER:
+ case SqlParser.ST_CENTROID:
+ case SqlParser.ST_CONTAINS:
+ case SqlParser.ST_CROSSES:
+ case SqlParser.ST_DIFFERENCE:
+ case SqlParser.ST_DIMENSION:
+ case SqlParser.ST_DISJOINT:
+ case SqlParser.ST_DISTANCE:
+ case SqlParser.ST_ENDPOINT:
+ case SqlParser.ST_ENVELOPE:
+ case SqlParser.ST_EQUALS:
+ case SqlParser.ST_EXTERIORRING:
+ case SqlParser.ST_GEOMCOLLFROMTEXT:
+ case SqlParser.ST_GEOMCOLLFROMTXT:
+ case SqlParser.ST_GEOMCOLLFROMWKB:
+ case SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT:
+ case SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB:
+ case SqlParser.ST_GEOMETRYFROMTEXT:
+ case SqlParser.ST_GEOMETRYFROMWKB:
+ case SqlParser.ST_GEOMETRYN:
+ case SqlParser.ST_GEOMETRYTYPE:
+ case SqlParser.ST_GEOMFROMTEXT:
+ case SqlParser.ST_GEOMFROMWKB:
+ case SqlParser.ST_INTERIORRINGN:
+ case SqlParser.ST_INTERSECTION:
+ case SqlParser.ST_INTERSECTS:
+ case SqlParser.ST_ISCLOSED:
+ case SqlParser.ST_ISEMPTY:
+ case SqlParser.ST_ISSIMPLE:
+ case SqlParser.ST_LINEFROMTEXT:
+ case SqlParser.ST_LINEFROMWKB:
+ case SqlParser.ST_LINESTRINGFROMTEXT:
+ case SqlParser.ST_LINESTRINGFROMWKB:
+ case SqlParser.ST_NUMGEOMETRIES:
+ case SqlParser.ST_NUMINTERIORRING:
+ case SqlParser.ST_NUMINTERIORRINGS:
+ case SqlParser.ST_NUMPOINTS:
+ case SqlParser.ST_OVERLAPS:
+ case SqlParser.ST_POINTFROMTEXT:
+ case SqlParser.ST_POINTFROMWKB:
+ case SqlParser.ST_POINTN:
+ case SqlParser.ST_POLYFROMTEXT:
+ case SqlParser.ST_POLYFROMWKB:
+ case SqlParser.ST_POLYGONFROMTEXT:
+ case SqlParser.ST_POLYGONFROMWKB:
+ case SqlParser.ST_SRID:
+ case SqlParser.ST_STARTPOINT:
+ case SqlParser.ST_SYMDIFFERENCE:
+ case SqlParser.ST_TOUCHES:
+ case SqlParser.ST_UNION:
+ case SqlParser.ST_WITHIN:
+ case SqlParser.ST_X:
+ case SqlParser.ST_Y:
+ case SqlParser.SUBDATE:
+ case SqlParser.SUBSTRING_INDEX:
+ case SqlParser.SUBTIME:
+ case SqlParser.SYSTEM_USER:
+ case SqlParser.TAN:
+ case SqlParser.TIMEDIFF:
+ case SqlParser.TIMESTAMPADD:
+ case SqlParser.TIMESTAMPDIFF:
+ case SqlParser.TIME_FORMAT:
+ case SqlParser.TIME_TO_SEC:
+ case SqlParser.TOUCHES:
+ case SqlParser.TO_BASE64:
+ case SqlParser.TO_DAYS:
+ case SqlParser.TO_SECONDS:
+ case SqlParser.UCASE:
+ case SqlParser.UNCOMPRESS:
+ case SqlParser.UNCOMPRESSED_LENGTH:
+ case SqlParser.UNHEX:
+ case SqlParser.UNIX_TIMESTAMP:
+ case SqlParser.UPDATEXML:
+ case SqlParser.UPPER:
+ case SqlParser.UUID:
+ case SqlParser.UUID_SHORT:
+ case SqlParser.VALIDATE_PASSWORD_STRENGTH:
+ case SqlParser.VERSION:
+ case SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS:
+ case SqlParser.WEEKDAY:
+ case SqlParser.WEEKOFYEAR:
+ case SqlParser.WEIGHT_STRING:
+ case SqlParser.WITHIN:
+ case SqlParser.YEARWEEK:
+ case SqlParser.Y_FUNCTION:
+ case SqlParser.X_FUNCTION:
+ case SqlParser.CHARSET_REVERSE_QOUTE_STRING:
+ case SqlParser.STRING_LITERAL:
+ case SqlParser.ID:
+ case SqlParser.REVERSE_QUOTE_ID:
+ this.state = 2591;
+ this.uidList();
+ break;
+ case SqlParser.ALL:
+ this.state = 2592;
+ this.match(SqlParser.ALL);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ break;
+
+ case 41:
+ localctx = new AlterByCheckPartitionContext(this, localctx);
+ this.enterOuterAlt(localctx, 41);
+ this.state = 2595;
+ this.match(SqlParser.CHECK);
+ this.state = 2596;
+ this.match(SqlParser.PARTITION);
+ this.state = 2599;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.CURRENT:
+ case SqlParser.DATABASE:
+ case SqlParser.DIAGNOSTICS:
+ case SqlParser.LEFT:
+ case SqlParser.NUMBER:
+ case SqlParser.RIGHT:
+ case SqlParser.STACKED:
+ case SqlParser.DATE:
+ case SqlParser.TIME:
+ case SqlParser.TIMESTAMP:
+ case SqlParser.DATETIME:
+ case SqlParser.YEAR:
+ case SqlParser.TEXT:
+ case SqlParser.ENUM:
+ case SqlParser.SERIAL:
+ case SqlParser.JSON_VALID:
+ case SqlParser.JSON_SCHEMA_VALID:
+ case SqlParser.COUNT:
+ case SqlParser.POSITION:
+ case SqlParser.ACCOUNT:
+ case SqlParser.ACTION:
+ case SqlParser.AFTER:
+ case SqlParser.AGGREGATE:
+ case SqlParser.ALGORITHM:
+ case SqlParser.ANY:
+ case SqlParser.AT:
+ case SqlParser.AUTHORS:
+ case SqlParser.AUTOCOMMIT:
+ case SqlParser.AUTOEXTEND_SIZE:
+ case SqlParser.AUTO_INCREMENT:
+ case SqlParser.AVG_ROW_LENGTH:
+ case SqlParser.BEGIN:
+ case SqlParser.BINLOG:
+ case SqlParser.BIT:
+ case SqlParser.BLOCK:
+ case SqlParser.BOOL:
+ case SqlParser.BOOLEAN:
+ case SqlParser.BTREE:
+ case SqlParser.CACHE:
+ case SqlParser.CASCADED:
+ case SqlParser.CHAIN:
+ case SqlParser.CHANGED:
+ case SqlParser.CHANNEL:
+ case SqlParser.CHECKSUM:
+ case SqlParser.PAGE_CHECKSUM:
+ case SqlParser.CIPHER:
+ case SqlParser.CLASS_ORIGIN:
+ case SqlParser.CLIENT:
+ case SqlParser.CLOSE:
+ case SqlParser.COALESCE:
+ case SqlParser.CODE:
+ case SqlParser.COLUMNS:
+ case SqlParser.COLUMN_FORMAT:
+ case SqlParser.COLUMN_NAME:
+ case SqlParser.COMMENT:
+ case SqlParser.COMMIT:
+ case SqlParser.COMPACT:
+ case SqlParser.COMPLETION:
+ case SqlParser.COMPRESSED:
+ case SqlParser.COMPRESSION:
+ case SqlParser.CONCURRENT:
+ case SqlParser.CONNECTION:
+ case SqlParser.CONSISTENT:
+ case SqlParser.CONSTRAINT_CATALOG:
+ case SqlParser.CONSTRAINT_SCHEMA:
+ case SqlParser.CONSTRAINT_NAME:
+ case SqlParser.CONTAINS:
+ case SqlParser.CONTEXT:
+ case SqlParser.CONTRIBUTORS:
+ case SqlParser.COPY:
+ case SqlParser.CPU:
+ case SqlParser.CURSOR_NAME:
+ case SqlParser.DATA:
+ case SqlParser.DATAFILE:
+ case SqlParser.DEALLOCATE:
+ case SqlParser.DEFAULT_AUTH:
+ case SqlParser.DEFINER:
+ case SqlParser.DELAY_KEY_WRITE:
+ case SqlParser.DES_KEY_FILE:
+ case SqlParser.DIRECTORY:
+ case SqlParser.DISABLE:
+ case SqlParser.DISCARD:
+ case SqlParser.DISK:
+ case SqlParser.DO:
+ case SqlParser.DUMPFILE:
+ case SqlParser.DUPLICATE:
+ case SqlParser.DYNAMIC:
+ case SqlParser.ENABLE:
+ case SqlParser.ENCRYPTION:
+ case SqlParser.END:
+ case SqlParser.ENDS:
+ case SqlParser.ENGINE:
+ case SqlParser.ENGINES:
+ case SqlParser.ERROR:
+ case SqlParser.ERRORS:
+ case SqlParser.ESCAPE:
+ case SqlParser.EVEN:
+ case SqlParser.EVENT:
+ case SqlParser.EVENTS:
+ case SqlParser.EVERY:
+ case SqlParser.EXCHANGE:
+ case SqlParser.EXCLUSIVE:
+ case SqlParser.EXPIRE:
+ case SqlParser.EXPORT:
+ case SqlParser.EXTENDED:
+ case SqlParser.EXTENT_SIZE:
+ case SqlParser.FAST:
+ case SqlParser.FAULTS:
+ case SqlParser.FIELDS:
+ case SqlParser.FILE_BLOCK_SIZE:
+ case SqlParser.FILTER:
+ case SqlParser.FIRST:
+ case SqlParser.FIXED:
+ case SqlParser.FLUSH:
+ case SqlParser.FOLLOWS:
+ case SqlParser.FOUND:
+ case SqlParser.FULL:
+ case SqlParser.FUNCTION:
+ case SqlParser.GENERAL:
+ case SqlParser.GLOBAL:
+ case SqlParser.GRANTS:
+ case SqlParser.GROUP_REPLICATION:
+ case SqlParser.HANDLER:
+ case SqlParser.HASH:
+ case SqlParser.HELP:
+ case SqlParser.HOST:
+ case SqlParser.HOSTS:
+ case SqlParser.IDENTIFIED:
+ case SqlParser.IGNORE_SERVER_IDS:
+ case SqlParser.IMPORT:
+ case SqlParser.INDEXES:
+ case SqlParser.INITIAL_SIZE:
+ case SqlParser.INPLACE:
+ case SqlParser.INSERT_METHOD:
+ case SqlParser.INSTALL:
+ case SqlParser.INSTANCE:
+ case SqlParser.INVISIBLE:
+ case SqlParser.INVOKER:
+ case SqlParser.IO:
+ case SqlParser.IO_THREAD:
+ case SqlParser.IPC:
+ case SqlParser.ISOLATION:
+ case SqlParser.ISSUER:
+ case SqlParser.JSON:
+ case SqlParser.KEY_BLOCK_SIZE:
+ case SqlParser.LANGUAGE:
+ case SqlParser.LAST:
+ case SqlParser.LEAVES:
+ case SqlParser.LESS:
+ case SqlParser.LEVEL:
+ case SqlParser.LIST:
+ case SqlParser.LOCAL:
+ case SqlParser.LOGFILE:
+ case SqlParser.LOGS:
+ case SqlParser.MASTER:
+ case SqlParser.MASTER_AUTO_POSITION:
+ case SqlParser.MASTER_CONNECT_RETRY:
+ case SqlParser.MASTER_DELAY:
+ case SqlParser.MASTER_HEARTBEAT_PERIOD:
+ case SqlParser.MASTER_HOST:
+ case SqlParser.MASTER_LOG_FILE:
+ case SqlParser.MASTER_LOG_POS:
+ case SqlParser.MASTER_PASSWORD:
+ case SqlParser.MASTER_PORT:
+ case SqlParser.MASTER_RETRY_COUNT:
+ case SqlParser.MASTER_SSL:
+ case SqlParser.MASTER_SSL_CA:
+ case SqlParser.MASTER_SSL_CAPATH:
+ case SqlParser.MASTER_SSL_CERT:
+ case SqlParser.MASTER_SSL_CIPHER:
+ case SqlParser.MASTER_SSL_CRL:
+ case SqlParser.MASTER_SSL_CRLPATH:
+ case SqlParser.MASTER_SSL_KEY:
+ case SqlParser.MASTER_TLS_VERSION:
+ case SqlParser.MASTER_USER:
+ case SqlParser.MAX_CONNECTIONS_PER_HOUR:
+ case SqlParser.MAX_QUERIES_PER_HOUR:
+ case SqlParser.MAX_ROWS:
+ case SqlParser.MAX_SIZE:
+ case SqlParser.MAX_UPDATES_PER_HOUR:
+ case SqlParser.MAX_USER_CONNECTIONS:
+ case SqlParser.MEDIUM:
+ case SqlParser.MERGE:
+ case SqlParser.MESSAGE_TEXT:
+ case SqlParser.MID:
+ case SqlParser.MIGRATE:
+ case SqlParser.MIN_ROWS:
+ case SqlParser.MODE:
+ case SqlParser.MODIFY:
+ case SqlParser.MUTEX:
+ case SqlParser.MYSQL:
+ case SqlParser.MYSQL_ERRNO:
+ case SqlParser.NAME:
+ case SqlParser.NAMES:
+ case SqlParser.NCHAR:
+ case SqlParser.NEVER:
+ case SqlParser.NEXT:
+ case SqlParser.NO:
+ case SqlParser.NODEGROUP:
+ case SqlParser.NONE:
+ case SqlParser.OFFLINE:
+ case SqlParser.OFFSET:
+ case SqlParser.OJ:
+ case SqlParser.OLD_PASSWORD:
+ case SqlParser.ONE:
+ case SqlParser.ONLINE:
+ case SqlParser.ONLY:
+ case SqlParser.OPEN:
+ case SqlParser.OPTIMIZER_COSTS:
+ case SqlParser.OPTIONS:
+ case SqlParser.OWNER:
+ case SqlParser.PACK_KEYS:
+ case SqlParser.PAGE:
+ case SqlParser.PARSER:
+ case SqlParser.PARTIAL:
+ case SqlParser.PARTITIONING:
+ case SqlParser.PARTITIONS:
+ case SqlParser.PASSWORD:
+ case SqlParser.PHASE:
+ case SqlParser.PLUGIN:
+ case SqlParser.PLUGIN_DIR:
+ case SqlParser.PLUGINS:
+ case SqlParser.PORT:
+ case SqlParser.PRECEDES:
+ case SqlParser.PREPARE:
+ case SqlParser.PRESERVE:
+ case SqlParser.PREV:
+ case SqlParser.PROCESSLIST:
+ case SqlParser.PROFILE:
+ case SqlParser.PROFILES:
+ case SqlParser.PROXY:
+ case SqlParser.QUERY:
+ case SqlParser.QUICK:
+ case SqlParser.REBUILD:
+ case SqlParser.RECOVER:
+ case SqlParser.REDO_BUFFER_SIZE:
+ case SqlParser.REDUNDANT:
+ case SqlParser.RELAY:
+ case SqlParser.RELAY_LOG_FILE:
+ case SqlParser.RELAY_LOG_POS:
+ case SqlParser.RELAYLOG:
+ case SqlParser.REMOVE:
+ case SqlParser.REORGANIZE:
+ case SqlParser.REPAIR:
+ case SqlParser.REPLICATE_DO_DB:
+ case SqlParser.REPLICATE_DO_TABLE:
+ case SqlParser.REPLICATE_IGNORE_DB:
+ case SqlParser.REPLICATE_IGNORE_TABLE:
+ case SqlParser.REPLICATE_REWRITE_DB:
+ case SqlParser.REPLICATE_WILD_DO_TABLE:
+ case SqlParser.REPLICATE_WILD_IGNORE_TABLE:
+ case SqlParser.REPLICATION:
+ case SqlParser.RESET:
+ case SqlParser.RESUME:
+ case SqlParser.RETURNED_SQLSTATE:
+ case SqlParser.RETURNS:
+ case SqlParser.ROLE:
+ case SqlParser.ROLLBACK:
+ case SqlParser.ROLLUP:
+ case SqlParser.ROTATE:
+ case SqlParser.ROW:
+ case SqlParser.ROWS:
+ case SqlParser.ROW_FORMAT:
+ case SqlParser.SAVEPOINT:
+ case SqlParser.SCHEDULE:
+ case SqlParser.SECURITY:
+ case SqlParser.SERVER:
+ case SqlParser.SESSION:
+ case SqlParser.SHARE:
+ case SqlParser.SHARED:
+ case SqlParser.SIGNED:
+ case SqlParser.SIMPLE:
+ case SqlParser.SLAVE:
+ case SqlParser.SLOW:
+ case SqlParser.SNAPSHOT:
+ case SqlParser.SOCKET:
+ case SqlParser.SOME:
+ case SqlParser.SONAME:
+ case SqlParser.SOUNDS:
+ case SqlParser.SOURCE:
+ case SqlParser.SQL_AFTER_GTIDS:
+ case SqlParser.SQL_AFTER_MTS_GAPS:
+ case SqlParser.SQL_BEFORE_GTIDS:
+ case SqlParser.SQL_BUFFER_RESULT:
+ case SqlParser.SQL_CACHE:
+ case SqlParser.SQL_NO_CACHE:
+ case SqlParser.SQL_THREAD:
+ case SqlParser.START:
+ case SqlParser.STARTS:
+ case SqlParser.STATS_AUTO_RECALC:
+ case SqlParser.STATS_PERSISTENT:
+ case SqlParser.STATS_SAMPLE_PAGES:
+ case SqlParser.STATUS:
+ case SqlParser.STOP:
+ case SqlParser.STORAGE:
+ case SqlParser.STRING:
+ case SqlParser.SUBCLASS_ORIGIN:
+ case SqlParser.SUBJECT:
+ case SqlParser.SUBPARTITION:
+ case SqlParser.SUBPARTITIONS:
+ case SqlParser.SUSPEND:
+ case SqlParser.SWAPS:
+ case SqlParser.SWITCHES:
+ case SqlParser.TABLE_NAME:
+ case SqlParser.TABLESPACE:
+ case SqlParser.TEMPORARY:
+ case SqlParser.TEMPTABLE:
+ case SqlParser.THAN:
+ case SqlParser.TRADITIONAL:
+ case SqlParser.TRANSACTION:
+ case SqlParser.TRANSACTIONAL:
+ case SqlParser.TRIGGERS:
+ case SqlParser.TRUNCATE:
+ case SqlParser.UNDEFINED:
+ case SqlParser.UNDOFILE:
+ case SqlParser.UNDO_BUFFER_SIZE:
+ case SqlParser.UNINSTALL:
+ case SqlParser.UNKNOWN:
+ case SqlParser.UNTIL:
+ case SqlParser.UPGRADE:
+ case SqlParser.USER:
+ case SqlParser.USE_FRM:
+ case SqlParser.USER_RESOURCES:
+ case SqlParser.VALIDATION:
+ case SqlParser.VALUE:
+ case SqlParser.VARIABLES:
+ case SqlParser.VIEW:
+ case SqlParser.VISIBLE:
+ case SqlParser.WAIT:
+ case SqlParser.WARNINGS:
+ case SqlParser.WITHOUT:
+ case SqlParser.WORK:
+ case SqlParser.WRAPPER:
+ case SqlParser.X509:
+ case SqlParser.XA:
+ case SqlParser.XML:
+ case SqlParser.INTERNAL:
+ case SqlParser.QUARTER:
+ case SqlParser.MONTH:
+ case SqlParser.DAY:
+ case SqlParser.HOUR:
+ case SqlParser.MINUTE:
+ case SqlParser.WEEK:
+ case SqlParser.SECOND:
+ case SqlParser.MICROSECOND:
+ case SqlParser.TABLES:
+ case SqlParser.ROUTINE:
+ case SqlParser.EXECUTE:
+ case SqlParser.FILE:
+ case SqlParser.PROCESS:
+ case SqlParser.RELOAD:
+ case SqlParser.SHUTDOWN:
+ case SqlParser.SUPER:
+ case SqlParser.PRIVILEGES:
+ case SqlParser.AUDIT_ADMIN:
+ case SqlParser.BACKUP_ADMIN:
+ case SqlParser.BINLOG_ADMIN:
+ case SqlParser.BINLOG_ENCRYPTION_ADMIN:
+ case SqlParser.CLONE_ADMIN:
+ case SqlParser.CONNECTION_ADMIN:
+ case SqlParser.ENCRYPTION_KEY_ADMIN:
+ case SqlParser.FIREWALL_ADMIN:
+ case SqlParser.FIREWALL_USER:
+ case SqlParser.GROUP_REPLICATION_ADMIN:
+ case SqlParser.INNODB_REDO_LOG_ARCHIVE:
+ case SqlParser.NDB_STORED_USER:
+ case SqlParser.PERSIST_RO_VARIABLES_ADMIN:
+ case SqlParser.REPLICATION_APPLIER:
+ case SqlParser.REPLICATION_SLAVE_ADMIN:
+ case SqlParser.RESOURCE_GROUP_ADMIN:
+ case SqlParser.RESOURCE_GROUP_USER:
+ case SqlParser.ROLE_ADMIN:
+ case SqlParser.SESSION_VARIABLES_ADMIN:
+ case SqlParser.SET_USER_ID:
+ case SqlParser.SHOW_ROUTINE:
+ case SqlParser.SYSTEM_VARIABLES_ADMIN:
+ case SqlParser.TABLE_ENCRYPTION_ADMIN:
+ case SqlParser.VERSION_TOKEN_ADMIN:
+ case SqlParser.XA_RECOVER_ADMIN:
+ case SqlParser.ARMSCII8:
+ case SqlParser.ASCII:
+ case SqlParser.BIG5:
+ case SqlParser.CP1250:
+ case SqlParser.CP1251:
+ case SqlParser.CP1256:
+ case SqlParser.CP1257:
+ case SqlParser.CP850:
+ case SqlParser.CP852:
+ case SqlParser.CP866:
+ case SqlParser.CP932:
+ case SqlParser.DEC8:
+ case SqlParser.EUCJPMS:
+ case SqlParser.EUCKR:
+ case SqlParser.GB2312:
+ case SqlParser.GBK:
+ case SqlParser.GEOSTD8:
+ case SqlParser.GREEK:
+ case SqlParser.HEBREW:
+ case SqlParser.HP8:
+ case SqlParser.KEYBCS2:
+ case SqlParser.KOI8R:
+ case SqlParser.KOI8U:
+ case SqlParser.LATIN1:
+ case SqlParser.LATIN2:
+ case SqlParser.LATIN5:
+ case SqlParser.LATIN7:
+ case SqlParser.MACCE:
+ case SqlParser.MACROMAN:
+ case SqlParser.SJIS:
+ case SqlParser.SWE7:
+ case SqlParser.TIS620:
+ case SqlParser.UCS2:
+ case SqlParser.UJIS:
+ case SqlParser.UTF16:
+ case SqlParser.UTF16LE:
+ case SqlParser.UTF32:
+ case SqlParser.UTF8:
+ case SqlParser.UTF8MB3:
+ case SqlParser.UTF8MB4:
+ case SqlParser.ARCHIVE:
+ case SqlParser.BLACKHOLE:
+ case SqlParser.CSV:
+ case SqlParser.FEDERATED:
+ case SqlParser.INNODB:
+ case SqlParser.MEMORY:
+ case SqlParser.MRG_MYISAM:
+ case SqlParser.MYISAM:
+ case SqlParser.NDB:
+ case SqlParser.NDBCLUSTER:
+ case SqlParser.PERFORMANCE_SCHEMA:
+ case SqlParser.TOKUDB:
+ case SqlParser.REPEATABLE:
+ case SqlParser.COMMITTED:
+ case SqlParser.UNCOMMITTED:
+ case SqlParser.SERIALIZABLE:
+ case SqlParser.GEOMETRYCOLLECTION:
+ case SqlParser.LINESTRING:
+ case SqlParser.MULTILINESTRING:
+ case SqlParser.MULTIPOINT:
+ case SqlParser.MULTIPOLYGON:
+ case SqlParser.POINT:
+ case SqlParser.POLYGON:
+ case SqlParser.ABS:
+ case SqlParser.ACOS:
+ case SqlParser.ADDDATE:
+ case SqlParser.ADDTIME:
+ case SqlParser.AES_DECRYPT:
+ case SqlParser.AES_ENCRYPT:
+ case SqlParser.AREA:
+ case SqlParser.ASBINARY:
+ case SqlParser.ASIN:
+ case SqlParser.ASTEXT:
+ case SqlParser.ASWKB:
+ case SqlParser.ASWKT:
+ case SqlParser.ASYMMETRIC_DECRYPT:
+ case SqlParser.ASYMMETRIC_DERIVE:
+ case SqlParser.ASYMMETRIC_ENCRYPT:
+ case SqlParser.ASYMMETRIC_SIGN:
+ case SqlParser.ASYMMETRIC_VERIFY:
+ case SqlParser.ATAN:
+ case SqlParser.ATAN2:
+ case SqlParser.BENCHMARK:
+ case SqlParser.BIN:
+ case SqlParser.BIT_COUNT:
+ case SqlParser.BIT_LENGTH:
+ case SqlParser.BUFFER:
+ case SqlParser.CATALOG_NAME:
+ case SqlParser.CEIL:
+ case SqlParser.CEILING:
+ case SqlParser.CENTROID:
+ case SqlParser.CHARACTER_LENGTH:
+ case SqlParser.CHARSET:
+ case SqlParser.CHAR_LENGTH:
+ case SqlParser.COERCIBILITY:
+ case SqlParser.COLLATION:
+ case SqlParser.COMPRESS:
+ case SqlParser.CONCAT:
+ case SqlParser.CONCAT_WS:
+ case SqlParser.CONNECTION_ID:
+ case SqlParser.CONV:
+ case SqlParser.CONVERT_TZ:
+ case SqlParser.COS:
+ case SqlParser.COT:
+ case SqlParser.CRC32:
+ case SqlParser.CREATE_ASYMMETRIC_PRIV_KEY:
+ case SqlParser.CREATE_ASYMMETRIC_PUB_KEY:
+ case SqlParser.CREATE_DH_PARAMETERS:
+ case SqlParser.CREATE_DIGEST:
+ case SqlParser.CROSSES:
+ case SqlParser.DATEDIFF:
+ case SqlParser.DATE_FORMAT:
+ case SqlParser.DAYNAME:
+ case SqlParser.DAYOFMONTH:
+ case SqlParser.DAYOFWEEK:
+ case SqlParser.DAYOFYEAR:
+ case SqlParser.DECODE:
+ case SqlParser.DEGREES:
+ case SqlParser.DES_DECRYPT:
+ case SqlParser.DES_ENCRYPT:
+ case SqlParser.DIMENSION:
+ case SqlParser.DISJOINT:
+ case SqlParser.ELT:
+ case SqlParser.ENCODE:
+ case SqlParser.ENCRYPT:
+ case SqlParser.ENDPOINT:
+ case SqlParser.ENVELOPE:
+ case SqlParser.EQUALS:
+ case SqlParser.EXP:
+ case SqlParser.EXPORT_SET:
+ case SqlParser.EXTERIORRING:
+ case SqlParser.EXTRACTVALUE:
+ case SqlParser.FIELD:
+ case SqlParser.FIND_IN_SET:
+ case SqlParser.FLOOR:
+ case SqlParser.FORMAT:
+ case SqlParser.FOUND_ROWS:
+ case SqlParser.FROM_BASE64:
+ case SqlParser.FROM_DAYS:
+ case SqlParser.FROM_UNIXTIME:
+ case SqlParser.GEOMCOLLFROMTEXT:
+ case SqlParser.GEOMCOLLFROMWKB:
+ case SqlParser.GEOMETRYCOLLECTIONFROMTEXT:
+ case SqlParser.GEOMETRYCOLLECTIONFROMWKB:
+ case SqlParser.GEOMETRYFROMTEXT:
+ case SqlParser.GEOMETRYFROMWKB:
+ case SqlParser.GEOMETRYN:
+ case SqlParser.GEOMETRYTYPE:
+ case SqlParser.GEOMFROMTEXT:
+ case SqlParser.GEOMFROMWKB:
+ case SqlParser.GET_FORMAT:
+ case SqlParser.GET_LOCK:
+ case SqlParser.GLENGTH:
+ case SqlParser.GREATEST:
+ case SqlParser.GTID_SUBSET:
+ case SqlParser.GTID_SUBTRACT:
+ case SqlParser.HEX:
+ case SqlParser.IFNULL:
+ case SqlParser.INET6_ATON:
+ case SqlParser.INET6_NTOA:
+ case SqlParser.INET_ATON:
+ case SqlParser.INET_NTOA:
+ case SqlParser.INSTR:
+ case SqlParser.INTERIORRINGN:
+ case SqlParser.INTERSECTS:
+ case SqlParser.ISCLOSED:
+ case SqlParser.ISEMPTY:
+ case SqlParser.ISNULL:
+ case SqlParser.ISSIMPLE:
+ case SqlParser.IS_FREE_LOCK:
+ case SqlParser.IS_IPV4:
+ case SqlParser.IS_IPV4_COMPAT:
+ case SqlParser.IS_IPV4_MAPPED:
+ case SqlParser.IS_IPV6:
+ case SqlParser.IS_USED_LOCK:
+ case SqlParser.LAST_INSERT_ID:
+ case SqlParser.LCASE:
+ case SqlParser.LEAST:
+ case SqlParser.LENGTH:
+ case SqlParser.LINEFROMTEXT:
+ case SqlParser.LINEFROMWKB:
+ case SqlParser.LINESTRINGFROMTEXT:
+ case SqlParser.LINESTRINGFROMWKB:
+ case SqlParser.LN:
+ case SqlParser.LOAD_FILE:
+ case SqlParser.LOCATE:
+ case SqlParser.LOG:
+ case SqlParser.LOG10:
+ case SqlParser.LOG2:
+ case SqlParser.LOWER:
+ case SqlParser.LPAD:
+ case SqlParser.LTRIM:
+ case SqlParser.MAKEDATE:
+ case SqlParser.MAKETIME:
+ case SqlParser.MAKE_SET:
+ case SqlParser.MASTER_POS_WAIT:
+ case SqlParser.MBRCONTAINS:
+ case SqlParser.MBRDISJOINT:
+ case SqlParser.MBREQUAL:
+ case SqlParser.MBRINTERSECTS:
+ case SqlParser.MBROVERLAPS:
+ case SqlParser.MBRTOUCHES:
+ case SqlParser.MBRWITHIN:
+ case SqlParser.MD5:
+ case SqlParser.MLINEFROMTEXT:
+ case SqlParser.MLINEFROMWKB:
+ case SqlParser.MONTHNAME:
+ case SqlParser.MPOINTFROMTEXT:
+ case SqlParser.MPOINTFROMWKB:
+ case SqlParser.MPOLYFROMTEXT:
+ case SqlParser.MPOLYFROMWKB:
+ case SqlParser.MULTILINESTRINGFROMTEXT:
+ case SqlParser.MULTILINESTRINGFROMWKB:
+ case SqlParser.MULTIPOINTFROMTEXT:
+ case SqlParser.MULTIPOINTFROMWKB:
+ case SqlParser.MULTIPOLYGONFROMTEXT:
+ case SqlParser.MULTIPOLYGONFROMWKB:
+ case SqlParser.NAME_CONST:
+ case SqlParser.NULLIF:
+ case SqlParser.NUMGEOMETRIES:
+ case SqlParser.NUMINTERIORRINGS:
+ case SqlParser.NUMPOINTS:
+ case SqlParser.OCT:
+ case SqlParser.OCTET_LENGTH:
+ case SqlParser.ORD:
+ case SqlParser.OVERLAPS:
+ case SqlParser.PERIOD_ADD:
+ case SqlParser.PERIOD_DIFF:
+ case SqlParser.PI:
+ case SqlParser.POINTFROMTEXT:
+ case SqlParser.POINTFROMWKB:
+ case SqlParser.POINTN:
+ case SqlParser.POLYFROMTEXT:
+ case SqlParser.POLYFROMWKB:
+ case SqlParser.POLYGONFROMTEXT:
+ case SqlParser.POLYGONFROMWKB:
+ case SqlParser.POW:
+ case SqlParser.POWER:
+ case SqlParser.QUOTE:
+ case SqlParser.RADIANS:
+ case SqlParser.RAND:
+ case SqlParser.RANDOM_BYTES:
+ case SqlParser.RELEASE_LOCK:
+ case SqlParser.REVERSE:
+ case SqlParser.ROUND:
+ case SqlParser.ROW_COUNT:
+ case SqlParser.RPAD:
+ case SqlParser.RTRIM:
+ case SqlParser.SEC_TO_TIME:
+ case SqlParser.SESSION_USER:
+ case SqlParser.SHA:
+ case SqlParser.SHA1:
+ case SqlParser.SHA2:
+ case SqlParser.SCHEMA_NAME:
+ case SqlParser.SIGN:
+ case SqlParser.SIN:
+ case SqlParser.SLEEP:
+ case SqlParser.SOUNDEX:
+ case SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS:
+ case SqlParser.SQRT:
+ case SqlParser.SRID:
+ case SqlParser.STARTPOINT:
+ case SqlParser.STRCMP:
+ case SqlParser.STR_TO_DATE:
+ case SqlParser.ST_AREA:
+ case SqlParser.ST_ASBINARY:
+ case SqlParser.ST_ASTEXT:
+ case SqlParser.ST_ASWKB:
+ case SqlParser.ST_ASWKT:
+ case SqlParser.ST_BUFFER:
+ case SqlParser.ST_CENTROID:
+ case SqlParser.ST_CONTAINS:
+ case SqlParser.ST_CROSSES:
+ case SqlParser.ST_DIFFERENCE:
+ case SqlParser.ST_DIMENSION:
+ case SqlParser.ST_DISJOINT:
+ case SqlParser.ST_DISTANCE:
+ case SqlParser.ST_ENDPOINT:
+ case SqlParser.ST_ENVELOPE:
+ case SqlParser.ST_EQUALS:
+ case SqlParser.ST_EXTERIORRING:
+ case SqlParser.ST_GEOMCOLLFROMTEXT:
+ case SqlParser.ST_GEOMCOLLFROMTXT:
+ case SqlParser.ST_GEOMCOLLFROMWKB:
+ case SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT:
+ case SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB:
+ case SqlParser.ST_GEOMETRYFROMTEXT:
+ case SqlParser.ST_GEOMETRYFROMWKB:
+ case SqlParser.ST_GEOMETRYN:
+ case SqlParser.ST_GEOMETRYTYPE:
+ case SqlParser.ST_GEOMFROMTEXT:
+ case SqlParser.ST_GEOMFROMWKB:
+ case SqlParser.ST_INTERIORRINGN:
+ case SqlParser.ST_INTERSECTION:
+ case SqlParser.ST_INTERSECTS:
+ case SqlParser.ST_ISCLOSED:
+ case SqlParser.ST_ISEMPTY:
+ case SqlParser.ST_ISSIMPLE:
+ case SqlParser.ST_LINEFROMTEXT:
+ case SqlParser.ST_LINEFROMWKB:
+ case SqlParser.ST_LINESTRINGFROMTEXT:
+ case SqlParser.ST_LINESTRINGFROMWKB:
+ case SqlParser.ST_NUMGEOMETRIES:
+ case SqlParser.ST_NUMINTERIORRING:
+ case SqlParser.ST_NUMINTERIORRINGS:
+ case SqlParser.ST_NUMPOINTS:
+ case SqlParser.ST_OVERLAPS:
+ case SqlParser.ST_POINTFROMTEXT:
+ case SqlParser.ST_POINTFROMWKB:
+ case SqlParser.ST_POINTN:
+ case SqlParser.ST_POLYFROMTEXT:
+ case SqlParser.ST_POLYFROMWKB:
+ case SqlParser.ST_POLYGONFROMTEXT:
+ case SqlParser.ST_POLYGONFROMWKB:
+ case SqlParser.ST_SRID:
+ case SqlParser.ST_STARTPOINT:
+ case SqlParser.ST_SYMDIFFERENCE:
+ case SqlParser.ST_TOUCHES:
+ case SqlParser.ST_UNION:
+ case SqlParser.ST_WITHIN:
+ case SqlParser.ST_X:
+ case SqlParser.ST_Y:
+ case SqlParser.SUBDATE:
+ case SqlParser.SUBSTRING_INDEX:
+ case SqlParser.SUBTIME:
+ case SqlParser.SYSTEM_USER:
+ case SqlParser.TAN:
+ case SqlParser.TIMEDIFF:
+ case SqlParser.TIMESTAMPADD:
+ case SqlParser.TIMESTAMPDIFF:
+ case SqlParser.TIME_FORMAT:
+ case SqlParser.TIME_TO_SEC:
+ case SqlParser.TOUCHES:
+ case SqlParser.TO_BASE64:
+ case SqlParser.TO_DAYS:
+ case SqlParser.TO_SECONDS:
+ case SqlParser.UCASE:
+ case SqlParser.UNCOMPRESS:
+ case SqlParser.UNCOMPRESSED_LENGTH:
+ case SqlParser.UNHEX:
+ case SqlParser.UNIX_TIMESTAMP:
+ case SqlParser.UPDATEXML:
+ case SqlParser.UPPER:
+ case SqlParser.UUID:
+ case SqlParser.UUID_SHORT:
+ case SqlParser.VALIDATE_PASSWORD_STRENGTH:
+ case SqlParser.VERSION:
+ case SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS:
+ case SqlParser.WEEKDAY:
+ case SqlParser.WEEKOFYEAR:
+ case SqlParser.WEIGHT_STRING:
+ case SqlParser.WITHIN:
+ case SqlParser.YEARWEEK:
+ case SqlParser.Y_FUNCTION:
+ case SqlParser.X_FUNCTION:
+ case SqlParser.CHARSET_REVERSE_QOUTE_STRING:
+ case SqlParser.STRING_LITERAL:
+ case SqlParser.ID:
+ case SqlParser.REVERSE_QUOTE_ID:
+ this.state = 2597;
+ this.uidList();
+ break;
+ case SqlParser.ALL:
+ this.state = 2598;
+ this.match(SqlParser.ALL);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ break;
+
+ case 42:
+ localctx = new AlterByOptimizePartitionContext(this, localctx);
+ this.enterOuterAlt(localctx, 42);
+ this.state = 2601;
+ this.match(SqlParser.OPTIMIZE);
+ this.state = 2602;
+ this.match(SqlParser.PARTITION);
+ this.state = 2605;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.CURRENT:
+ case SqlParser.DATABASE:
+ case SqlParser.DIAGNOSTICS:
+ case SqlParser.LEFT:
+ case SqlParser.NUMBER:
+ case SqlParser.RIGHT:
+ case SqlParser.STACKED:
+ case SqlParser.DATE:
+ case SqlParser.TIME:
+ case SqlParser.TIMESTAMP:
+ case SqlParser.DATETIME:
+ case SqlParser.YEAR:
+ case SqlParser.TEXT:
+ case SqlParser.ENUM:
+ case SqlParser.SERIAL:
+ case SqlParser.JSON_VALID:
+ case SqlParser.JSON_SCHEMA_VALID:
+ case SqlParser.COUNT:
+ case SqlParser.POSITION:
+ case SqlParser.ACCOUNT:
+ case SqlParser.ACTION:
+ case SqlParser.AFTER:
+ case SqlParser.AGGREGATE:
+ case SqlParser.ALGORITHM:
+ case SqlParser.ANY:
+ case SqlParser.AT:
+ case SqlParser.AUTHORS:
+ case SqlParser.AUTOCOMMIT:
+ case SqlParser.AUTOEXTEND_SIZE:
+ case SqlParser.AUTO_INCREMENT:
+ case SqlParser.AVG_ROW_LENGTH:
+ case SqlParser.BEGIN:
+ case SqlParser.BINLOG:
+ case SqlParser.BIT:
+ case SqlParser.BLOCK:
+ case SqlParser.BOOL:
+ case SqlParser.BOOLEAN:
+ case SqlParser.BTREE:
+ case SqlParser.CACHE:
+ case SqlParser.CASCADED:
+ case SqlParser.CHAIN:
+ case SqlParser.CHANGED:
+ case SqlParser.CHANNEL:
+ case SqlParser.CHECKSUM:
+ case SqlParser.PAGE_CHECKSUM:
+ case SqlParser.CIPHER:
+ case SqlParser.CLASS_ORIGIN:
+ case SqlParser.CLIENT:
+ case SqlParser.CLOSE:
+ case SqlParser.COALESCE:
+ case SqlParser.CODE:
+ case SqlParser.COLUMNS:
+ case SqlParser.COLUMN_FORMAT:
+ case SqlParser.COLUMN_NAME:
+ case SqlParser.COMMENT:
+ case SqlParser.COMMIT:
+ case SqlParser.COMPACT:
+ case SqlParser.COMPLETION:
+ case SqlParser.COMPRESSED:
+ case SqlParser.COMPRESSION:
+ case SqlParser.CONCURRENT:
+ case SqlParser.CONNECTION:
+ case SqlParser.CONSISTENT:
+ case SqlParser.CONSTRAINT_CATALOG:
+ case SqlParser.CONSTRAINT_SCHEMA:
+ case SqlParser.CONSTRAINT_NAME:
+ case SqlParser.CONTAINS:
+ case SqlParser.CONTEXT:
+ case SqlParser.CONTRIBUTORS:
+ case SqlParser.COPY:
+ case SqlParser.CPU:
+ case SqlParser.CURSOR_NAME:
+ case SqlParser.DATA:
+ case SqlParser.DATAFILE:
+ case SqlParser.DEALLOCATE:
+ case SqlParser.DEFAULT_AUTH:
+ case SqlParser.DEFINER:
+ case SqlParser.DELAY_KEY_WRITE:
+ case SqlParser.DES_KEY_FILE:
+ case SqlParser.DIRECTORY:
+ case SqlParser.DISABLE:
+ case SqlParser.DISCARD:
+ case SqlParser.DISK:
+ case SqlParser.DO:
+ case SqlParser.DUMPFILE:
+ case SqlParser.DUPLICATE:
+ case SqlParser.DYNAMIC:
+ case SqlParser.ENABLE:
+ case SqlParser.ENCRYPTION:
+ case SqlParser.END:
+ case SqlParser.ENDS:
+ case SqlParser.ENGINE:
+ case SqlParser.ENGINES:
+ case SqlParser.ERROR:
+ case SqlParser.ERRORS:
+ case SqlParser.ESCAPE:
+ case SqlParser.EVEN:
+ case SqlParser.EVENT:
+ case SqlParser.EVENTS:
+ case SqlParser.EVERY:
+ case SqlParser.EXCHANGE:
+ case SqlParser.EXCLUSIVE:
+ case SqlParser.EXPIRE:
+ case SqlParser.EXPORT:
+ case SqlParser.EXTENDED:
+ case SqlParser.EXTENT_SIZE:
+ case SqlParser.FAST:
+ case SqlParser.FAULTS:
+ case SqlParser.FIELDS:
+ case SqlParser.FILE_BLOCK_SIZE:
+ case SqlParser.FILTER:
+ case SqlParser.FIRST:
+ case SqlParser.FIXED:
+ case SqlParser.FLUSH:
+ case SqlParser.FOLLOWS:
+ case SqlParser.FOUND:
+ case SqlParser.FULL:
+ case SqlParser.FUNCTION:
+ case SqlParser.GENERAL:
+ case SqlParser.GLOBAL:
+ case SqlParser.GRANTS:
+ case SqlParser.GROUP_REPLICATION:
+ case SqlParser.HANDLER:
+ case SqlParser.HASH:
+ case SqlParser.HELP:
+ case SqlParser.HOST:
+ case SqlParser.HOSTS:
+ case SqlParser.IDENTIFIED:
+ case SqlParser.IGNORE_SERVER_IDS:
+ case SqlParser.IMPORT:
+ case SqlParser.INDEXES:
+ case SqlParser.INITIAL_SIZE:
+ case SqlParser.INPLACE:
+ case SqlParser.INSERT_METHOD:
+ case SqlParser.INSTALL:
+ case SqlParser.INSTANCE:
+ case SqlParser.INVISIBLE:
+ case SqlParser.INVOKER:
+ case SqlParser.IO:
+ case SqlParser.IO_THREAD:
+ case SqlParser.IPC:
+ case SqlParser.ISOLATION:
+ case SqlParser.ISSUER:
+ case SqlParser.JSON:
+ case SqlParser.KEY_BLOCK_SIZE:
+ case SqlParser.LANGUAGE:
+ case SqlParser.LAST:
+ case SqlParser.LEAVES:
+ case SqlParser.LESS:
+ case SqlParser.LEVEL:
+ case SqlParser.LIST:
+ case SqlParser.LOCAL:
+ case SqlParser.LOGFILE:
+ case SqlParser.LOGS:
+ case SqlParser.MASTER:
+ case SqlParser.MASTER_AUTO_POSITION:
+ case SqlParser.MASTER_CONNECT_RETRY:
+ case SqlParser.MASTER_DELAY:
+ case SqlParser.MASTER_HEARTBEAT_PERIOD:
+ case SqlParser.MASTER_HOST:
+ case SqlParser.MASTER_LOG_FILE:
+ case SqlParser.MASTER_LOG_POS:
+ case SqlParser.MASTER_PASSWORD:
+ case SqlParser.MASTER_PORT:
+ case SqlParser.MASTER_RETRY_COUNT:
+ case SqlParser.MASTER_SSL:
+ case SqlParser.MASTER_SSL_CA:
+ case SqlParser.MASTER_SSL_CAPATH:
+ case SqlParser.MASTER_SSL_CERT:
+ case SqlParser.MASTER_SSL_CIPHER:
+ case SqlParser.MASTER_SSL_CRL:
+ case SqlParser.MASTER_SSL_CRLPATH:
+ case SqlParser.MASTER_SSL_KEY:
+ case SqlParser.MASTER_TLS_VERSION:
+ case SqlParser.MASTER_USER:
+ case SqlParser.MAX_CONNECTIONS_PER_HOUR:
+ case SqlParser.MAX_QUERIES_PER_HOUR:
+ case SqlParser.MAX_ROWS:
+ case SqlParser.MAX_SIZE:
+ case SqlParser.MAX_UPDATES_PER_HOUR:
+ case SqlParser.MAX_USER_CONNECTIONS:
+ case SqlParser.MEDIUM:
+ case SqlParser.MERGE:
+ case SqlParser.MESSAGE_TEXT:
+ case SqlParser.MID:
+ case SqlParser.MIGRATE:
+ case SqlParser.MIN_ROWS:
+ case SqlParser.MODE:
+ case SqlParser.MODIFY:
+ case SqlParser.MUTEX:
+ case SqlParser.MYSQL:
+ case SqlParser.MYSQL_ERRNO:
+ case SqlParser.NAME:
+ case SqlParser.NAMES:
+ case SqlParser.NCHAR:
+ case SqlParser.NEVER:
+ case SqlParser.NEXT:
+ case SqlParser.NO:
+ case SqlParser.NODEGROUP:
+ case SqlParser.NONE:
+ case SqlParser.OFFLINE:
+ case SqlParser.OFFSET:
+ case SqlParser.OJ:
+ case SqlParser.OLD_PASSWORD:
+ case SqlParser.ONE:
+ case SqlParser.ONLINE:
+ case SqlParser.ONLY:
+ case SqlParser.OPEN:
+ case SqlParser.OPTIMIZER_COSTS:
+ case SqlParser.OPTIONS:
+ case SqlParser.OWNER:
+ case SqlParser.PACK_KEYS:
+ case SqlParser.PAGE:
+ case SqlParser.PARSER:
+ case SqlParser.PARTIAL:
+ case SqlParser.PARTITIONING:
+ case SqlParser.PARTITIONS:
+ case SqlParser.PASSWORD:
+ case SqlParser.PHASE:
+ case SqlParser.PLUGIN:
+ case SqlParser.PLUGIN_DIR:
+ case SqlParser.PLUGINS:
+ case SqlParser.PORT:
+ case SqlParser.PRECEDES:
+ case SqlParser.PREPARE:
+ case SqlParser.PRESERVE:
+ case SqlParser.PREV:
+ case SqlParser.PROCESSLIST:
+ case SqlParser.PROFILE:
+ case SqlParser.PROFILES:
+ case SqlParser.PROXY:
+ case SqlParser.QUERY:
+ case SqlParser.QUICK:
+ case SqlParser.REBUILD:
+ case SqlParser.RECOVER:
+ case SqlParser.REDO_BUFFER_SIZE:
+ case SqlParser.REDUNDANT:
+ case SqlParser.RELAY:
+ case SqlParser.RELAY_LOG_FILE:
+ case SqlParser.RELAY_LOG_POS:
+ case SqlParser.RELAYLOG:
+ case SqlParser.REMOVE:
+ case SqlParser.REORGANIZE:
+ case SqlParser.REPAIR:
+ case SqlParser.REPLICATE_DO_DB:
+ case SqlParser.REPLICATE_DO_TABLE:
+ case SqlParser.REPLICATE_IGNORE_DB:
+ case SqlParser.REPLICATE_IGNORE_TABLE:
+ case SqlParser.REPLICATE_REWRITE_DB:
+ case SqlParser.REPLICATE_WILD_DO_TABLE:
+ case SqlParser.REPLICATE_WILD_IGNORE_TABLE:
+ case SqlParser.REPLICATION:
+ case SqlParser.RESET:
+ case SqlParser.RESUME:
+ case SqlParser.RETURNED_SQLSTATE:
+ case SqlParser.RETURNS:
+ case SqlParser.ROLE:
+ case SqlParser.ROLLBACK:
+ case SqlParser.ROLLUP:
+ case SqlParser.ROTATE:
+ case SqlParser.ROW:
+ case SqlParser.ROWS:
+ case SqlParser.ROW_FORMAT:
+ case SqlParser.SAVEPOINT:
+ case SqlParser.SCHEDULE:
+ case SqlParser.SECURITY:
+ case SqlParser.SERVER:
+ case SqlParser.SESSION:
+ case SqlParser.SHARE:
+ case SqlParser.SHARED:
+ case SqlParser.SIGNED:
+ case SqlParser.SIMPLE:
+ case SqlParser.SLAVE:
+ case SqlParser.SLOW:
+ case SqlParser.SNAPSHOT:
+ case SqlParser.SOCKET:
+ case SqlParser.SOME:
+ case SqlParser.SONAME:
+ case SqlParser.SOUNDS:
+ case SqlParser.SOURCE:
+ case SqlParser.SQL_AFTER_GTIDS:
+ case SqlParser.SQL_AFTER_MTS_GAPS:
+ case SqlParser.SQL_BEFORE_GTIDS:
+ case SqlParser.SQL_BUFFER_RESULT:
+ case SqlParser.SQL_CACHE:
+ case SqlParser.SQL_NO_CACHE:
+ case SqlParser.SQL_THREAD:
+ case SqlParser.START:
+ case SqlParser.STARTS:
+ case SqlParser.STATS_AUTO_RECALC:
+ case SqlParser.STATS_PERSISTENT:
+ case SqlParser.STATS_SAMPLE_PAGES:
+ case SqlParser.STATUS:
+ case SqlParser.STOP:
+ case SqlParser.STORAGE:
+ case SqlParser.STRING:
+ case SqlParser.SUBCLASS_ORIGIN:
+ case SqlParser.SUBJECT:
+ case SqlParser.SUBPARTITION:
+ case SqlParser.SUBPARTITIONS:
+ case SqlParser.SUSPEND:
+ case SqlParser.SWAPS:
+ case SqlParser.SWITCHES:
+ case SqlParser.TABLE_NAME:
+ case SqlParser.TABLESPACE:
+ case SqlParser.TEMPORARY:
+ case SqlParser.TEMPTABLE:
+ case SqlParser.THAN:
+ case SqlParser.TRADITIONAL:
+ case SqlParser.TRANSACTION:
+ case SqlParser.TRANSACTIONAL:
+ case SqlParser.TRIGGERS:
+ case SqlParser.TRUNCATE:
+ case SqlParser.UNDEFINED:
+ case SqlParser.UNDOFILE:
+ case SqlParser.UNDO_BUFFER_SIZE:
+ case SqlParser.UNINSTALL:
+ case SqlParser.UNKNOWN:
+ case SqlParser.UNTIL:
+ case SqlParser.UPGRADE:
+ case SqlParser.USER:
+ case SqlParser.USE_FRM:
+ case SqlParser.USER_RESOURCES:
+ case SqlParser.VALIDATION:
+ case SqlParser.VALUE:
+ case SqlParser.VARIABLES:
+ case SqlParser.VIEW:
+ case SqlParser.VISIBLE:
+ case SqlParser.WAIT:
+ case SqlParser.WARNINGS:
+ case SqlParser.WITHOUT:
+ case SqlParser.WORK:
+ case SqlParser.WRAPPER:
+ case SqlParser.X509:
+ case SqlParser.XA:
+ case SqlParser.XML:
+ case SqlParser.INTERNAL:
+ case SqlParser.QUARTER:
+ case SqlParser.MONTH:
+ case SqlParser.DAY:
+ case SqlParser.HOUR:
+ case SqlParser.MINUTE:
+ case SqlParser.WEEK:
+ case SqlParser.SECOND:
+ case SqlParser.MICROSECOND:
+ case SqlParser.TABLES:
+ case SqlParser.ROUTINE:
+ case SqlParser.EXECUTE:
+ case SqlParser.FILE:
+ case SqlParser.PROCESS:
+ case SqlParser.RELOAD:
+ case SqlParser.SHUTDOWN:
+ case SqlParser.SUPER:
+ case SqlParser.PRIVILEGES:
+ case SqlParser.AUDIT_ADMIN:
+ case SqlParser.BACKUP_ADMIN:
+ case SqlParser.BINLOG_ADMIN:
+ case SqlParser.BINLOG_ENCRYPTION_ADMIN:
+ case SqlParser.CLONE_ADMIN:
+ case SqlParser.CONNECTION_ADMIN:
+ case SqlParser.ENCRYPTION_KEY_ADMIN:
+ case SqlParser.FIREWALL_ADMIN:
+ case SqlParser.FIREWALL_USER:
+ case SqlParser.GROUP_REPLICATION_ADMIN:
+ case SqlParser.INNODB_REDO_LOG_ARCHIVE:
+ case SqlParser.NDB_STORED_USER:
+ case SqlParser.PERSIST_RO_VARIABLES_ADMIN:
+ case SqlParser.REPLICATION_APPLIER:
+ case SqlParser.REPLICATION_SLAVE_ADMIN:
+ case SqlParser.RESOURCE_GROUP_ADMIN:
+ case SqlParser.RESOURCE_GROUP_USER:
+ case SqlParser.ROLE_ADMIN:
+ case SqlParser.SESSION_VARIABLES_ADMIN:
+ case SqlParser.SET_USER_ID:
+ case SqlParser.SHOW_ROUTINE:
+ case SqlParser.SYSTEM_VARIABLES_ADMIN:
+ case SqlParser.TABLE_ENCRYPTION_ADMIN:
+ case SqlParser.VERSION_TOKEN_ADMIN:
+ case SqlParser.XA_RECOVER_ADMIN:
+ case SqlParser.ARMSCII8:
+ case SqlParser.ASCII:
+ case SqlParser.BIG5:
+ case SqlParser.CP1250:
+ case SqlParser.CP1251:
+ case SqlParser.CP1256:
+ case SqlParser.CP1257:
+ case SqlParser.CP850:
+ case SqlParser.CP852:
+ case SqlParser.CP866:
+ case SqlParser.CP932:
+ case SqlParser.DEC8:
+ case SqlParser.EUCJPMS:
+ case SqlParser.EUCKR:
+ case SqlParser.GB2312:
+ case SqlParser.GBK:
+ case SqlParser.GEOSTD8:
+ case SqlParser.GREEK:
+ case SqlParser.HEBREW:
+ case SqlParser.HP8:
+ case SqlParser.KEYBCS2:
+ case SqlParser.KOI8R:
+ case SqlParser.KOI8U:
+ case SqlParser.LATIN1:
+ case SqlParser.LATIN2:
+ case SqlParser.LATIN5:
+ case SqlParser.LATIN7:
+ case SqlParser.MACCE:
+ case SqlParser.MACROMAN:
+ case SqlParser.SJIS:
+ case SqlParser.SWE7:
+ case SqlParser.TIS620:
+ case SqlParser.UCS2:
+ case SqlParser.UJIS:
+ case SqlParser.UTF16:
+ case SqlParser.UTF16LE:
+ case SqlParser.UTF32:
+ case SqlParser.UTF8:
+ case SqlParser.UTF8MB3:
+ case SqlParser.UTF8MB4:
+ case SqlParser.ARCHIVE:
+ case SqlParser.BLACKHOLE:
+ case SqlParser.CSV:
+ case SqlParser.FEDERATED:
+ case SqlParser.INNODB:
+ case SqlParser.MEMORY:
+ case SqlParser.MRG_MYISAM:
+ case SqlParser.MYISAM:
+ case SqlParser.NDB:
+ case SqlParser.NDBCLUSTER:
+ case SqlParser.PERFORMANCE_SCHEMA:
+ case SqlParser.TOKUDB:
+ case SqlParser.REPEATABLE:
+ case SqlParser.COMMITTED:
+ case SqlParser.UNCOMMITTED:
+ case SqlParser.SERIALIZABLE:
+ case SqlParser.GEOMETRYCOLLECTION:
+ case SqlParser.LINESTRING:
+ case SqlParser.MULTILINESTRING:
+ case SqlParser.MULTIPOINT:
+ case SqlParser.MULTIPOLYGON:
+ case SqlParser.POINT:
+ case SqlParser.POLYGON:
+ case SqlParser.ABS:
+ case SqlParser.ACOS:
+ case SqlParser.ADDDATE:
+ case SqlParser.ADDTIME:
+ case SqlParser.AES_DECRYPT:
+ case SqlParser.AES_ENCRYPT:
+ case SqlParser.AREA:
+ case SqlParser.ASBINARY:
+ case SqlParser.ASIN:
+ case SqlParser.ASTEXT:
+ case SqlParser.ASWKB:
+ case SqlParser.ASWKT:
+ case SqlParser.ASYMMETRIC_DECRYPT:
+ case SqlParser.ASYMMETRIC_DERIVE:
+ case SqlParser.ASYMMETRIC_ENCRYPT:
+ case SqlParser.ASYMMETRIC_SIGN:
+ case SqlParser.ASYMMETRIC_VERIFY:
+ case SqlParser.ATAN:
+ case SqlParser.ATAN2:
+ case SqlParser.BENCHMARK:
+ case SqlParser.BIN:
+ case SqlParser.BIT_COUNT:
+ case SqlParser.BIT_LENGTH:
+ case SqlParser.BUFFER:
+ case SqlParser.CATALOG_NAME:
+ case SqlParser.CEIL:
+ case SqlParser.CEILING:
+ case SqlParser.CENTROID:
+ case SqlParser.CHARACTER_LENGTH:
+ case SqlParser.CHARSET:
+ case SqlParser.CHAR_LENGTH:
+ case SqlParser.COERCIBILITY:
+ case SqlParser.COLLATION:
+ case SqlParser.COMPRESS:
+ case SqlParser.CONCAT:
+ case SqlParser.CONCAT_WS:
+ case SqlParser.CONNECTION_ID:
+ case SqlParser.CONV:
+ case SqlParser.CONVERT_TZ:
+ case SqlParser.COS:
+ case SqlParser.COT:
+ case SqlParser.CRC32:
+ case SqlParser.CREATE_ASYMMETRIC_PRIV_KEY:
+ case SqlParser.CREATE_ASYMMETRIC_PUB_KEY:
+ case SqlParser.CREATE_DH_PARAMETERS:
+ case SqlParser.CREATE_DIGEST:
+ case SqlParser.CROSSES:
+ case SqlParser.DATEDIFF:
+ case SqlParser.DATE_FORMAT:
+ case SqlParser.DAYNAME:
+ case SqlParser.DAYOFMONTH:
+ case SqlParser.DAYOFWEEK:
+ case SqlParser.DAYOFYEAR:
+ case SqlParser.DECODE:
+ case SqlParser.DEGREES:
+ case SqlParser.DES_DECRYPT:
+ case SqlParser.DES_ENCRYPT:
+ case SqlParser.DIMENSION:
+ case SqlParser.DISJOINT:
+ case SqlParser.ELT:
+ case SqlParser.ENCODE:
+ case SqlParser.ENCRYPT:
+ case SqlParser.ENDPOINT:
+ case SqlParser.ENVELOPE:
+ case SqlParser.EQUALS:
+ case SqlParser.EXP:
+ case SqlParser.EXPORT_SET:
+ case SqlParser.EXTERIORRING:
+ case SqlParser.EXTRACTVALUE:
+ case SqlParser.FIELD:
+ case SqlParser.FIND_IN_SET:
+ case SqlParser.FLOOR:
+ case SqlParser.FORMAT:
+ case SqlParser.FOUND_ROWS:
+ case SqlParser.FROM_BASE64:
+ case SqlParser.FROM_DAYS:
+ case SqlParser.FROM_UNIXTIME:
+ case SqlParser.GEOMCOLLFROMTEXT:
+ case SqlParser.GEOMCOLLFROMWKB:
+ case SqlParser.GEOMETRYCOLLECTIONFROMTEXT:
+ case SqlParser.GEOMETRYCOLLECTIONFROMWKB:
+ case SqlParser.GEOMETRYFROMTEXT:
+ case SqlParser.GEOMETRYFROMWKB:
+ case SqlParser.GEOMETRYN:
+ case SqlParser.GEOMETRYTYPE:
+ case SqlParser.GEOMFROMTEXT:
+ case SqlParser.GEOMFROMWKB:
+ case SqlParser.GET_FORMAT:
+ case SqlParser.GET_LOCK:
+ case SqlParser.GLENGTH:
+ case SqlParser.GREATEST:
+ case SqlParser.GTID_SUBSET:
+ case SqlParser.GTID_SUBTRACT:
+ case SqlParser.HEX:
+ case SqlParser.IFNULL:
+ case SqlParser.INET6_ATON:
+ case SqlParser.INET6_NTOA:
+ case SqlParser.INET_ATON:
+ case SqlParser.INET_NTOA:
+ case SqlParser.INSTR:
+ case SqlParser.INTERIORRINGN:
+ case SqlParser.INTERSECTS:
+ case SqlParser.ISCLOSED:
+ case SqlParser.ISEMPTY:
+ case SqlParser.ISNULL:
+ case SqlParser.ISSIMPLE:
+ case SqlParser.IS_FREE_LOCK:
+ case SqlParser.IS_IPV4:
+ case SqlParser.IS_IPV4_COMPAT:
+ case SqlParser.IS_IPV4_MAPPED:
+ case SqlParser.IS_IPV6:
+ case SqlParser.IS_USED_LOCK:
+ case SqlParser.LAST_INSERT_ID:
+ case SqlParser.LCASE:
+ case SqlParser.LEAST:
+ case SqlParser.LENGTH:
+ case SqlParser.LINEFROMTEXT:
+ case SqlParser.LINEFROMWKB:
+ case SqlParser.LINESTRINGFROMTEXT:
+ case SqlParser.LINESTRINGFROMWKB:
+ case SqlParser.LN:
+ case SqlParser.LOAD_FILE:
+ case SqlParser.LOCATE:
+ case SqlParser.LOG:
+ case SqlParser.LOG10:
+ case SqlParser.LOG2:
+ case SqlParser.LOWER:
+ case SqlParser.LPAD:
+ case SqlParser.LTRIM:
+ case SqlParser.MAKEDATE:
+ case SqlParser.MAKETIME:
+ case SqlParser.MAKE_SET:
+ case SqlParser.MASTER_POS_WAIT:
+ case SqlParser.MBRCONTAINS:
+ case SqlParser.MBRDISJOINT:
+ case SqlParser.MBREQUAL:
+ case SqlParser.MBRINTERSECTS:
+ case SqlParser.MBROVERLAPS:
+ case SqlParser.MBRTOUCHES:
+ case SqlParser.MBRWITHIN:
+ case SqlParser.MD5:
+ case SqlParser.MLINEFROMTEXT:
+ case SqlParser.MLINEFROMWKB:
+ case SqlParser.MONTHNAME:
+ case SqlParser.MPOINTFROMTEXT:
+ case SqlParser.MPOINTFROMWKB:
+ case SqlParser.MPOLYFROMTEXT:
+ case SqlParser.MPOLYFROMWKB:
+ case SqlParser.MULTILINESTRINGFROMTEXT:
+ case SqlParser.MULTILINESTRINGFROMWKB:
+ case SqlParser.MULTIPOINTFROMTEXT:
+ case SqlParser.MULTIPOINTFROMWKB:
+ case SqlParser.MULTIPOLYGONFROMTEXT:
+ case SqlParser.MULTIPOLYGONFROMWKB:
+ case SqlParser.NAME_CONST:
+ case SqlParser.NULLIF:
+ case SqlParser.NUMGEOMETRIES:
+ case SqlParser.NUMINTERIORRINGS:
+ case SqlParser.NUMPOINTS:
+ case SqlParser.OCT:
+ case SqlParser.OCTET_LENGTH:
+ case SqlParser.ORD:
+ case SqlParser.OVERLAPS:
+ case SqlParser.PERIOD_ADD:
+ case SqlParser.PERIOD_DIFF:
+ case SqlParser.PI:
+ case SqlParser.POINTFROMTEXT:
+ case SqlParser.POINTFROMWKB:
+ case SqlParser.POINTN:
+ case SqlParser.POLYFROMTEXT:
+ case SqlParser.POLYFROMWKB:
+ case SqlParser.POLYGONFROMTEXT:
+ case SqlParser.POLYGONFROMWKB:
+ case SqlParser.POW:
+ case SqlParser.POWER:
+ case SqlParser.QUOTE:
+ case SqlParser.RADIANS:
+ case SqlParser.RAND:
+ case SqlParser.RANDOM_BYTES:
+ case SqlParser.RELEASE_LOCK:
+ case SqlParser.REVERSE:
+ case SqlParser.ROUND:
+ case SqlParser.ROW_COUNT:
+ case SqlParser.RPAD:
+ case SqlParser.RTRIM:
+ case SqlParser.SEC_TO_TIME:
+ case SqlParser.SESSION_USER:
+ case SqlParser.SHA:
+ case SqlParser.SHA1:
+ case SqlParser.SHA2:
+ case SqlParser.SCHEMA_NAME:
+ case SqlParser.SIGN:
+ case SqlParser.SIN:
+ case SqlParser.SLEEP:
+ case SqlParser.SOUNDEX:
+ case SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS:
+ case SqlParser.SQRT:
+ case SqlParser.SRID:
+ case SqlParser.STARTPOINT:
+ case SqlParser.STRCMP:
+ case SqlParser.STR_TO_DATE:
+ case SqlParser.ST_AREA:
+ case SqlParser.ST_ASBINARY:
+ case SqlParser.ST_ASTEXT:
+ case SqlParser.ST_ASWKB:
+ case SqlParser.ST_ASWKT:
+ case SqlParser.ST_BUFFER:
+ case SqlParser.ST_CENTROID:
+ case SqlParser.ST_CONTAINS:
+ case SqlParser.ST_CROSSES:
+ case SqlParser.ST_DIFFERENCE:
+ case SqlParser.ST_DIMENSION:
+ case SqlParser.ST_DISJOINT:
+ case SqlParser.ST_DISTANCE:
+ case SqlParser.ST_ENDPOINT:
+ case SqlParser.ST_ENVELOPE:
+ case SqlParser.ST_EQUALS:
+ case SqlParser.ST_EXTERIORRING:
+ case SqlParser.ST_GEOMCOLLFROMTEXT:
+ case SqlParser.ST_GEOMCOLLFROMTXT:
+ case SqlParser.ST_GEOMCOLLFROMWKB:
+ case SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT:
+ case SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB:
+ case SqlParser.ST_GEOMETRYFROMTEXT:
+ case SqlParser.ST_GEOMETRYFROMWKB:
+ case SqlParser.ST_GEOMETRYN:
+ case SqlParser.ST_GEOMETRYTYPE:
+ case SqlParser.ST_GEOMFROMTEXT:
+ case SqlParser.ST_GEOMFROMWKB:
+ case SqlParser.ST_INTERIORRINGN:
+ case SqlParser.ST_INTERSECTION:
+ case SqlParser.ST_INTERSECTS:
+ case SqlParser.ST_ISCLOSED:
+ case SqlParser.ST_ISEMPTY:
+ case SqlParser.ST_ISSIMPLE:
+ case SqlParser.ST_LINEFROMTEXT:
+ case SqlParser.ST_LINEFROMWKB:
+ case SqlParser.ST_LINESTRINGFROMTEXT:
+ case SqlParser.ST_LINESTRINGFROMWKB:
+ case SqlParser.ST_NUMGEOMETRIES:
+ case SqlParser.ST_NUMINTERIORRING:
+ case SqlParser.ST_NUMINTERIORRINGS:
+ case SqlParser.ST_NUMPOINTS:
+ case SqlParser.ST_OVERLAPS:
+ case SqlParser.ST_POINTFROMTEXT:
+ case SqlParser.ST_POINTFROMWKB:
+ case SqlParser.ST_POINTN:
+ case SqlParser.ST_POLYFROMTEXT:
+ case SqlParser.ST_POLYFROMWKB:
+ case SqlParser.ST_POLYGONFROMTEXT:
+ case SqlParser.ST_POLYGONFROMWKB:
+ case SqlParser.ST_SRID:
+ case SqlParser.ST_STARTPOINT:
+ case SqlParser.ST_SYMDIFFERENCE:
+ case SqlParser.ST_TOUCHES:
+ case SqlParser.ST_UNION:
+ case SqlParser.ST_WITHIN:
+ case SqlParser.ST_X:
+ case SqlParser.ST_Y:
+ case SqlParser.SUBDATE:
+ case SqlParser.SUBSTRING_INDEX:
+ case SqlParser.SUBTIME:
+ case SqlParser.SYSTEM_USER:
+ case SqlParser.TAN:
+ case SqlParser.TIMEDIFF:
+ case SqlParser.TIMESTAMPADD:
+ case SqlParser.TIMESTAMPDIFF:
+ case SqlParser.TIME_FORMAT:
+ case SqlParser.TIME_TO_SEC:
+ case SqlParser.TOUCHES:
+ case SqlParser.TO_BASE64:
+ case SqlParser.TO_DAYS:
+ case SqlParser.TO_SECONDS:
+ case SqlParser.UCASE:
+ case SqlParser.UNCOMPRESS:
+ case SqlParser.UNCOMPRESSED_LENGTH:
+ case SqlParser.UNHEX:
+ case SqlParser.UNIX_TIMESTAMP:
+ case SqlParser.UPDATEXML:
+ case SqlParser.UPPER:
+ case SqlParser.UUID:
+ case SqlParser.UUID_SHORT:
+ case SqlParser.VALIDATE_PASSWORD_STRENGTH:
+ case SqlParser.VERSION:
+ case SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS:
+ case SqlParser.WEEKDAY:
+ case SqlParser.WEEKOFYEAR:
+ case SqlParser.WEIGHT_STRING:
+ case SqlParser.WITHIN:
+ case SqlParser.YEARWEEK:
+ case SqlParser.Y_FUNCTION:
+ case SqlParser.X_FUNCTION:
+ case SqlParser.CHARSET_REVERSE_QOUTE_STRING:
+ case SqlParser.STRING_LITERAL:
+ case SqlParser.ID:
+ case SqlParser.REVERSE_QUOTE_ID:
+ this.state = 2603;
+ this.uidList();
+ break;
+ case SqlParser.ALL:
+ this.state = 2604;
+ this.match(SqlParser.ALL);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ break;
+
+ case 43:
+ localctx = new AlterByRebuildPartitionContext(this, localctx);
+ this.enterOuterAlt(localctx, 43);
+ this.state = 2607;
+ this.match(SqlParser.REBUILD);
+ this.state = 2608;
+ this.match(SqlParser.PARTITION);
+ this.state = 2611;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.CURRENT:
+ case SqlParser.DATABASE:
+ case SqlParser.DIAGNOSTICS:
+ case SqlParser.LEFT:
+ case SqlParser.NUMBER:
+ case SqlParser.RIGHT:
+ case SqlParser.STACKED:
+ case SqlParser.DATE:
+ case SqlParser.TIME:
+ case SqlParser.TIMESTAMP:
+ case SqlParser.DATETIME:
+ case SqlParser.YEAR:
+ case SqlParser.TEXT:
+ case SqlParser.ENUM:
+ case SqlParser.SERIAL:
+ case SqlParser.JSON_VALID:
+ case SqlParser.JSON_SCHEMA_VALID:
+ case SqlParser.COUNT:
+ case SqlParser.POSITION:
+ case SqlParser.ACCOUNT:
+ case SqlParser.ACTION:
+ case SqlParser.AFTER:
+ case SqlParser.AGGREGATE:
+ case SqlParser.ALGORITHM:
+ case SqlParser.ANY:
+ case SqlParser.AT:
+ case SqlParser.AUTHORS:
+ case SqlParser.AUTOCOMMIT:
+ case SqlParser.AUTOEXTEND_SIZE:
+ case SqlParser.AUTO_INCREMENT:
+ case SqlParser.AVG_ROW_LENGTH:
+ case SqlParser.BEGIN:
+ case SqlParser.BINLOG:
+ case SqlParser.BIT:
+ case SqlParser.BLOCK:
+ case SqlParser.BOOL:
+ case SqlParser.BOOLEAN:
+ case SqlParser.BTREE:
+ case SqlParser.CACHE:
+ case SqlParser.CASCADED:
+ case SqlParser.CHAIN:
+ case SqlParser.CHANGED:
+ case SqlParser.CHANNEL:
+ case SqlParser.CHECKSUM:
+ case SqlParser.PAGE_CHECKSUM:
+ case SqlParser.CIPHER:
+ case SqlParser.CLASS_ORIGIN:
+ case SqlParser.CLIENT:
+ case SqlParser.CLOSE:
+ case SqlParser.COALESCE:
+ case SqlParser.CODE:
+ case SqlParser.COLUMNS:
+ case SqlParser.COLUMN_FORMAT:
+ case SqlParser.COLUMN_NAME:
+ case SqlParser.COMMENT:
+ case SqlParser.COMMIT:
+ case SqlParser.COMPACT:
+ case SqlParser.COMPLETION:
+ case SqlParser.COMPRESSED:
+ case SqlParser.COMPRESSION:
+ case SqlParser.CONCURRENT:
+ case SqlParser.CONNECTION:
+ case SqlParser.CONSISTENT:
+ case SqlParser.CONSTRAINT_CATALOG:
+ case SqlParser.CONSTRAINT_SCHEMA:
+ case SqlParser.CONSTRAINT_NAME:
+ case SqlParser.CONTAINS:
+ case SqlParser.CONTEXT:
+ case SqlParser.CONTRIBUTORS:
+ case SqlParser.COPY:
+ case SqlParser.CPU:
+ case SqlParser.CURSOR_NAME:
+ case SqlParser.DATA:
+ case SqlParser.DATAFILE:
+ case SqlParser.DEALLOCATE:
+ case SqlParser.DEFAULT_AUTH:
+ case SqlParser.DEFINER:
+ case SqlParser.DELAY_KEY_WRITE:
+ case SqlParser.DES_KEY_FILE:
+ case SqlParser.DIRECTORY:
+ case SqlParser.DISABLE:
+ case SqlParser.DISCARD:
+ case SqlParser.DISK:
+ case SqlParser.DO:
+ case SqlParser.DUMPFILE:
+ case SqlParser.DUPLICATE:
+ case SqlParser.DYNAMIC:
+ case SqlParser.ENABLE:
+ case SqlParser.ENCRYPTION:
+ case SqlParser.END:
+ case SqlParser.ENDS:
+ case SqlParser.ENGINE:
+ case SqlParser.ENGINES:
+ case SqlParser.ERROR:
+ case SqlParser.ERRORS:
+ case SqlParser.ESCAPE:
+ case SqlParser.EVEN:
+ case SqlParser.EVENT:
+ case SqlParser.EVENTS:
+ case SqlParser.EVERY:
+ case SqlParser.EXCHANGE:
+ case SqlParser.EXCLUSIVE:
+ case SqlParser.EXPIRE:
+ case SqlParser.EXPORT:
+ case SqlParser.EXTENDED:
+ case SqlParser.EXTENT_SIZE:
+ case SqlParser.FAST:
+ case SqlParser.FAULTS:
+ case SqlParser.FIELDS:
+ case SqlParser.FILE_BLOCK_SIZE:
+ case SqlParser.FILTER:
+ case SqlParser.FIRST:
+ case SqlParser.FIXED:
+ case SqlParser.FLUSH:
+ case SqlParser.FOLLOWS:
+ case SqlParser.FOUND:
+ case SqlParser.FULL:
+ case SqlParser.FUNCTION:
+ case SqlParser.GENERAL:
+ case SqlParser.GLOBAL:
+ case SqlParser.GRANTS:
+ case SqlParser.GROUP_REPLICATION:
+ case SqlParser.HANDLER:
+ case SqlParser.HASH:
+ case SqlParser.HELP:
+ case SqlParser.HOST:
+ case SqlParser.HOSTS:
+ case SqlParser.IDENTIFIED:
+ case SqlParser.IGNORE_SERVER_IDS:
+ case SqlParser.IMPORT:
+ case SqlParser.INDEXES:
+ case SqlParser.INITIAL_SIZE:
+ case SqlParser.INPLACE:
+ case SqlParser.INSERT_METHOD:
+ case SqlParser.INSTALL:
+ case SqlParser.INSTANCE:
+ case SqlParser.INVISIBLE:
+ case SqlParser.INVOKER:
+ case SqlParser.IO:
+ case SqlParser.IO_THREAD:
+ case SqlParser.IPC:
+ case SqlParser.ISOLATION:
+ case SqlParser.ISSUER:
+ case SqlParser.JSON:
+ case SqlParser.KEY_BLOCK_SIZE:
+ case SqlParser.LANGUAGE:
+ case SqlParser.LAST:
+ case SqlParser.LEAVES:
+ case SqlParser.LESS:
+ case SqlParser.LEVEL:
+ case SqlParser.LIST:
+ case SqlParser.LOCAL:
+ case SqlParser.LOGFILE:
+ case SqlParser.LOGS:
+ case SqlParser.MASTER:
+ case SqlParser.MASTER_AUTO_POSITION:
+ case SqlParser.MASTER_CONNECT_RETRY:
+ case SqlParser.MASTER_DELAY:
+ case SqlParser.MASTER_HEARTBEAT_PERIOD:
+ case SqlParser.MASTER_HOST:
+ case SqlParser.MASTER_LOG_FILE:
+ case SqlParser.MASTER_LOG_POS:
+ case SqlParser.MASTER_PASSWORD:
+ case SqlParser.MASTER_PORT:
+ case SqlParser.MASTER_RETRY_COUNT:
+ case SqlParser.MASTER_SSL:
+ case SqlParser.MASTER_SSL_CA:
+ case SqlParser.MASTER_SSL_CAPATH:
+ case SqlParser.MASTER_SSL_CERT:
+ case SqlParser.MASTER_SSL_CIPHER:
+ case SqlParser.MASTER_SSL_CRL:
+ case SqlParser.MASTER_SSL_CRLPATH:
+ case SqlParser.MASTER_SSL_KEY:
+ case SqlParser.MASTER_TLS_VERSION:
+ case SqlParser.MASTER_USER:
+ case SqlParser.MAX_CONNECTIONS_PER_HOUR:
+ case SqlParser.MAX_QUERIES_PER_HOUR:
+ case SqlParser.MAX_ROWS:
+ case SqlParser.MAX_SIZE:
+ case SqlParser.MAX_UPDATES_PER_HOUR:
+ case SqlParser.MAX_USER_CONNECTIONS:
+ case SqlParser.MEDIUM:
+ case SqlParser.MERGE:
+ case SqlParser.MESSAGE_TEXT:
+ case SqlParser.MID:
+ case SqlParser.MIGRATE:
+ case SqlParser.MIN_ROWS:
+ case SqlParser.MODE:
+ case SqlParser.MODIFY:
+ case SqlParser.MUTEX:
+ case SqlParser.MYSQL:
+ case SqlParser.MYSQL_ERRNO:
+ case SqlParser.NAME:
+ case SqlParser.NAMES:
+ case SqlParser.NCHAR:
+ case SqlParser.NEVER:
+ case SqlParser.NEXT:
+ case SqlParser.NO:
+ case SqlParser.NODEGROUP:
+ case SqlParser.NONE:
+ case SqlParser.OFFLINE:
+ case SqlParser.OFFSET:
+ case SqlParser.OJ:
+ case SqlParser.OLD_PASSWORD:
+ case SqlParser.ONE:
+ case SqlParser.ONLINE:
+ case SqlParser.ONLY:
+ case SqlParser.OPEN:
+ case SqlParser.OPTIMIZER_COSTS:
+ case SqlParser.OPTIONS:
+ case SqlParser.OWNER:
+ case SqlParser.PACK_KEYS:
+ case SqlParser.PAGE:
+ case SqlParser.PARSER:
+ case SqlParser.PARTIAL:
+ case SqlParser.PARTITIONING:
+ case SqlParser.PARTITIONS:
+ case SqlParser.PASSWORD:
+ case SqlParser.PHASE:
+ case SqlParser.PLUGIN:
+ case SqlParser.PLUGIN_DIR:
+ case SqlParser.PLUGINS:
+ case SqlParser.PORT:
+ case SqlParser.PRECEDES:
+ case SqlParser.PREPARE:
+ case SqlParser.PRESERVE:
+ case SqlParser.PREV:
+ case SqlParser.PROCESSLIST:
+ case SqlParser.PROFILE:
+ case SqlParser.PROFILES:
+ case SqlParser.PROXY:
+ case SqlParser.QUERY:
+ case SqlParser.QUICK:
+ case SqlParser.REBUILD:
+ case SqlParser.RECOVER:
+ case SqlParser.REDO_BUFFER_SIZE:
+ case SqlParser.REDUNDANT:
+ case SqlParser.RELAY:
+ case SqlParser.RELAY_LOG_FILE:
+ case SqlParser.RELAY_LOG_POS:
+ case SqlParser.RELAYLOG:
+ case SqlParser.REMOVE:
+ case SqlParser.REORGANIZE:
+ case SqlParser.REPAIR:
+ case SqlParser.REPLICATE_DO_DB:
+ case SqlParser.REPLICATE_DO_TABLE:
+ case SqlParser.REPLICATE_IGNORE_DB:
+ case SqlParser.REPLICATE_IGNORE_TABLE:
+ case SqlParser.REPLICATE_REWRITE_DB:
+ case SqlParser.REPLICATE_WILD_DO_TABLE:
+ case SqlParser.REPLICATE_WILD_IGNORE_TABLE:
+ case SqlParser.REPLICATION:
+ case SqlParser.RESET:
+ case SqlParser.RESUME:
+ case SqlParser.RETURNED_SQLSTATE:
+ case SqlParser.RETURNS:
+ case SqlParser.ROLE:
+ case SqlParser.ROLLBACK:
+ case SqlParser.ROLLUP:
+ case SqlParser.ROTATE:
+ case SqlParser.ROW:
+ case SqlParser.ROWS:
+ case SqlParser.ROW_FORMAT:
+ case SqlParser.SAVEPOINT:
+ case SqlParser.SCHEDULE:
+ case SqlParser.SECURITY:
+ case SqlParser.SERVER:
+ case SqlParser.SESSION:
+ case SqlParser.SHARE:
+ case SqlParser.SHARED:
+ case SqlParser.SIGNED:
+ case SqlParser.SIMPLE:
+ case SqlParser.SLAVE:
+ case SqlParser.SLOW:
+ case SqlParser.SNAPSHOT:
+ case SqlParser.SOCKET:
+ case SqlParser.SOME:
+ case SqlParser.SONAME:
+ case SqlParser.SOUNDS:
+ case SqlParser.SOURCE:
+ case SqlParser.SQL_AFTER_GTIDS:
+ case SqlParser.SQL_AFTER_MTS_GAPS:
+ case SqlParser.SQL_BEFORE_GTIDS:
+ case SqlParser.SQL_BUFFER_RESULT:
+ case SqlParser.SQL_CACHE:
+ case SqlParser.SQL_NO_CACHE:
+ case SqlParser.SQL_THREAD:
+ case SqlParser.START:
+ case SqlParser.STARTS:
+ case SqlParser.STATS_AUTO_RECALC:
+ case SqlParser.STATS_PERSISTENT:
+ case SqlParser.STATS_SAMPLE_PAGES:
+ case SqlParser.STATUS:
+ case SqlParser.STOP:
+ case SqlParser.STORAGE:
+ case SqlParser.STRING:
+ case SqlParser.SUBCLASS_ORIGIN:
+ case SqlParser.SUBJECT:
+ case SqlParser.SUBPARTITION:
+ case SqlParser.SUBPARTITIONS:
+ case SqlParser.SUSPEND:
+ case SqlParser.SWAPS:
+ case SqlParser.SWITCHES:
+ case SqlParser.TABLE_NAME:
+ case SqlParser.TABLESPACE:
+ case SqlParser.TEMPORARY:
+ case SqlParser.TEMPTABLE:
+ case SqlParser.THAN:
+ case SqlParser.TRADITIONAL:
+ case SqlParser.TRANSACTION:
+ case SqlParser.TRANSACTIONAL:
+ case SqlParser.TRIGGERS:
+ case SqlParser.TRUNCATE:
+ case SqlParser.UNDEFINED:
+ case SqlParser.UNDOFILE:
+ case SqlParser.UNDO_BUFFER_SIZE:
+ case SqlParser.UNINSTALL:
+ case SqlParser.UNKNOWN:
+ case SqlParser.UNTIL:
+ case SqlParser.UPGRADE:
+ case SqlParser.USER:
+ case SqlParser.USE_FRM:
+ case SqlParser.USER_RESOURCES:
+ case SqlParser.VALIDATION:
+ case SqlParser.VALUE:
+ case SqlParser.VARIABLES:
+ case SqlParser.VIEW:
+ case SqlParser.VISIBLE:
+ case SqlParser.WAIT:
+ case SqlParser.WARNINGS:
+ case SqlParser.WITHOUT:
+ case SqlParser.WORK:
+ case SqlParser.WRAPPER:
+ case SqlParser.X509:
+ case SqlParser.XA:
+ case SqlParser.XML:
+ case SqlParser.INTERNAL:
+ case SqlParser.QUARTER:
+ case SqlParser.MONTH:
+ case SqlParser.DAY:
+ case SqlParser.HOUR:
+ case SqlParser.MINUTE:
+ case SqlParser.WEEK:
+ case SqlParser.SECOND:
+ case SqlParser.MICROSECOND:
+ case SqlParser.TABLES:
+ case SqlParser.ROUTINE:
+ case SqlParser.EXECUTE:
+ case SqlParser.FILE:
+ case SqlParser.PROCESS:
+ case SqlParser.RELOAD:
+ case SqlParser.SHUTDOWN:
+ case SqlParser.SUPER:
+ case SqlParser.PRIVILEGES:
+ case SqlParser.AUDIT_ADMIN:
+ case SqlParser.BACKUP_ADMIN:
+ case SqlParser.BINLOG_ADMIN:
+ case SqlParser.BINLOG_ENCRYPTION_ADMIN:
+ case SqlParser.CLONE_ADMIN:
+ case SqlParser.CONNECTION_ADMIN:
+ case SqlParser.ENCRYPTION_KEY_ADMIN:
+ case SqlParser.FIREWALL_ADMIN:
+ case SqlParser.FIREWALL_USER:
+ case SqlParser.GROUP_REPLICATION_ADMIN:
+ case SqlParser.INNODB_REDO_LOG_ARCHIVE:
+ case SqlParser.NDB_STORED_USER:
+ case SqlParser.PERSIST_RO_VARIABLES_ADMIN:
+ case SqlParser.REPLICATION_APPLIER:
+ case SqlParser.REPLICATION_SLAVE_ADMIN:
+ case SqlParser.RESOURCE_GROUP_ADMIN:
+ case SqlParser.RESOURCE_GROUP_USER:
+ case SqlParser.ROLE_ADMIN:
+ case SqlParser.SESSION_VARIABLES_ADMIN:
+ case SqlParser.SET_USER_ID:
+ case SqlParser.SHOW_ROUTINE:
+ case SqlParser.SYSTEM_VARIABLES_ADMIN:
+ case SqlParser.TABLE_ENCRYPTION_ADMIN:
+ case SqlParser.VERSION_TOKEN_ADMIN:
+ case SqlParser.XA_RECOVER_ADMIN:
+ case SqlParser.ARMSCII8:
+ case SqlParser.ASCII:
+ case SqlParser.BIG5:
+ case SqlParser.CP1250:
+ case SqlParser.CP1251:
+ case SqlParser.CP1256:
+ case SqlParser.CP1257:
+ case SqlParser.CP850:
+ case SqlParser.CP852:
+ case SqlParser.CP866:
+ case SqlParser.CP932:
+ case SqlParser.DEC8:
+ case SqlParser.EUCJPMS:
+ case SqlParser.EUCKR:
+ case SqlParser.GB2312:
+ case SqlParser.GBK:
+ case SqlParser.GEOSTD8:
+ case SqlParser.GREEK:
+ case SqlParser.HEBREW:
+ case SqlParser.HP8:
+ case SqlParser.KEYBCS2:
+ case SqlParser.KOI8R:
+ case SqlParser.KOI8U:
+ case SqlParser.LATIN1:
+ case SqlParser.LATIN2:
+ case SqlParser.LATIN5:
+ case SqlParser.LATIN7:
+ case SqlParser.MACCE:
+ case SqlParser.MACROMAN:
+ case SqlParser.SJIS:
+ case SqlParser.SWE7:
+ case SqlParser.TIS620:
+ case SqlParser.UCS2:
+ case SqlParser.UJIS:
+ case SqlParser.UTF16:
+ case SqlParser.UTF16LE:
+ case SqlParser.UTF32:
+ case SqlParser.UTF8:
+ case SqlParser.UTF8MB3:
+ case SqlParser.UTF8MB4:
+ case SqlParser.ARCHIVE:
+ case SqlParser.BLACKHOLE:
+ case SqlParser.CSV:
+ case SqlParser.FEDERATED:
+ case SqlParser.INNODB:
+ case SqlParser.MEMORY:
+ case SqlParser.MRG_MYISAM:
+ case SqlParser.MYISAM:
+ case SqlParser.NDB:
+ case SqlParser.NDBCLUSTER:
+ case SqlParser.PERFORMANCE_SCHEMA:
+ case SqlParser.TOKUDB:
+ case SqlParser.REPEATABLE:
+ case SqlParser.COMMITTED:
+ case SqlParser.UNCOMMITTED:
+ case SqlParser.SERIALIZABLE:
+ case SqlParser.GEOMETRYCOLLECTION:
+ case SqlParser.LINESTRING:
+ case SqlParser.MULTILINESTRING:
+ case SqlParser.MULTIPOINT:
+ case SqlParser.MULTIPOLYGON:
+ case SqlParser.POINT:
+ case SqlParser.POLYGON:
+ case SqlParser.ABS:
+ case SqlParser.ACOS:
+ case SqlParser.ADDDATE:
+ case SqlParser.ADDTIME:
+ case SqlParser.AES_DECRYPT:
+ case SqlParser.AES_ENCRYPT:
+ case SqlParser.AREA:
+ case SqlParser.ASBINARY:
+ case SqlParser.ASIN:
+ case SqlParser.ASTEXT:
+ case SqlParser.ASWKB:
+ case SqlParser.ASWKT:
+ case SqlParser.ASYMMETRIC_DECRYPT:
+ case SqlParser.ASYMMETRIC_DERIVE:
+ case SqlParser.ASYMMETRIC_ENCRYPT:
+ case SqlParser.ASYMMETRIC_SIGN:
+ case SqlParser.ASYMMETRIC_VERIFY:
+ case SqlParser.ATAN:
+ case SqlParser.ATAN2:
+ case SqlParser.BENCHMARK:
+ case SqlParser.BIN:
+ case SqlParser.BIT_COUNT:
+ case SqlParser.BIT_LENGTH:
+ case SqlParser.BUFFER:
+ case SqlParser.CATALOG_NAME:
+ case SqlParser.CEIL:
+ case SqlParser.CEILING:
+ case SqlParser.CENTROID:
+ case SqlParser.CHARACTER_LENGTH:
+ case SqlParser.CHARSET:
+ case SqlParser.CHAR_LENGTH:
+ case SqlParser.COERCIBILITY:
+ case SqlParser.COLLATION:
+ case SqlParser.COMPRESS:
+ case SqlParser.CONCAT:
+ case SqlParser.CONCAT_WS:
+ case SqlParser.CONNECTION_ID:
+ case SqlParser.CONV:
+ case SqlParser.CONVERT_TZ:
+ case SqlParser.COS:
+ case SqlParser.COT:
+ case SqlParser.CRC32:
+ case SqlParser.CREATE_ASYMMETRIC_PRIV_KEY:
+ case SqlParser.CREATE_ASYMMETRIC_PUB_KEY:
+ case SqlParser.CREATE_DH_PARAMETERS:
+ case SqlParser.CREATE_DIGEST:
+ case SqlParser.CROSSES:
+ case SqlParser.DATEDIFF:
+ case SqlParser.DATE_FORMAT:
+ case SqlParser.DAYNAME:
+ case SqlParser.DAYOFMONTH:
+ case SqlParser.DAYOFWEEK:
+ case SqlParser.DAYOFYEAR:
+ case SqlParser.DECODE:
+ case SqlParser.DEGREES:
+ case SqlParser.DES_DECRYPT:
+ case SqlParser.DES_ENCRYPT:
+ case SqlParser.DIMENSION:
+ case SqlParser.DISJOINT:
+ case SqlParser.ELT:
+ case SqlParser.ENCODE:
+ case SqlParser.ENCRYPT:
+ case SqlParser.ENDPOINT:
+ case SqlParser.ENVELOPE:
+ case SqlParser.EQUALS:
+ case SqlParser.EXP:
+ case SqlParser.EXPORT_SET:
+ case SqlParser.EXTERIORRING:
+ case SqlParser.EXTRACTVALUE:
+ case SqlParser.FIELD:
+ case SqlParser.FIND_IN_SET:
+ case SqlParser.FLOOR:
+ case SqlParser.FORMAT:
+ case SqlParser.FOUND_ROWS:
+ case SqlParser.FROM_BASE64:
+ case SqlParser.FROM_DAYS:
+ case SqlParser.FROM_UNIXTIME:
+ case SqlParser.GEOMCOLLFROMTEXT:
+ case SqlParser.GEOMCOLLFROMWKB:
+ case SqlParser.GEOMETRYCOLLECTIONFROMTEXT:
+ case SqlParser.GEOMETRYCOLLECTIONFROMWKB:
+ case SqlParser.GEOMETRYFROMTEXT:
+ case SqlParser.GEOMETRYFROMWKB:
+ case SqlParser.GEOMETRYN:
+ case SqlParser.GEOMETRYTYPE:
+ case SqlParser.GEOMFROMTEXT:
+ case SqlParser.GEOMFROMWKB:
+ case SqlParser.GET_FORMAT:
+ case SqlParser.GET_LOCK:
+ case SqlParser.GLENGTH:
+ case SqlParser.GREATEST:
+ case SqlParser.GTID_SUBSET:
+ case SqlParser.GTID_SUBTRACT:
+ case SqlParser.HEX:
+ case SqlParser.IFNULL:
+ case SqlParser.INET6_ATON:
+ case SqlParser.INET6_NTOA:
+ case SqlParser.INET_ATON:
+ case SqlParser.INET_NTOA:
+ case SqlParser.INSTR:
+ case SqlParser.INTERIORRINGN:
+ case SqlParser.INTERSECTS:
+ case SqlParser.ISCLOSED:
+ case SqlParser.ISEMPTY:
+ case SqlParser.ISNULL:
+ case SqlParser.ISSIMPLE:
+ case SqlParser.IS_FREE_LOCK:
+ case SqlParser.IS_IPV4:
+ case SqlParser.IS_IPV4_COMPAT:
+ case SqlParser.IS_IPV4_MAPPED:
+ case SqlParser.IS_IPV6:
+ case SqlParser.IS_USED_LOCK:
+ case SqlParser.LAST_INSERT_ID:
+ case SqlParser.LCASE:
+ case SqlParser.LEAST:
+ case SqlParser.LENGTH:
+ case SqlParser.LINEFROMTEXT:
+ case SqlParser.LINEFROMWKB:
+ case SqlParser.LINESTRINGFROMTEXT:
+ case SqlParser.LINESTRINGFROMWKB:
+ case SqlParser.LN:
+ case SqlParser.LOAD_FILE:
+ case SqlParser.LOCATE:
+ case SqlParser.LOG:
+ case SqlParser.LOG10:
+ case SqlParser.LOG2:
+ case SqlParser.LOWER:
+ case SqlParser.LPAD:
+ case SqlParser.LTRIM:
+ case SqlParser.MAKEDATE:
+ case SqlParser.MAKETIME:
+ case SqlParser.MAKE_SET:
+ case SqlParser.MASTER_POS_WAIT:
+ case SqlParser.MBRCONTAINS:
+ case SqlParser.MBRDISJOINT:
+ case SqlParser.MBREQUAL:
+ case SqlParser.MBRINTERSECTS:
+ case SqlParser.MBROVERLAPS:
+ case SqlParser.MBRTOUCHES:
+ case SqlParser.MBRWITHIN:
+ case SqlParser.MD5:
+ case SqlParser.MLINEFROMTEXT:
+ case SqlParser.MLINEFROMWKB:
+ case SqlParser.MONTHNAME:
+ case SqlParser.MPOINTFROMTEXT:
+ case SqlParser.MPOINTFROMWKB:
+ case SqlParser.MPOLYFROMTEXT:
+ case SqlParser.MPOLYFROMWKB:
+ case SqlParser.MULTILINESTRINGFROMTEXT:
+ case SqlParser.MULTILINESTRINGFROMWKB:
+ case SqlParser.MULTIPOINTFROMTEXT:
+ case SqlParser.MULTIPOINTFROMWKB:
+ case SqlParser.MULTIPOLYGONFROMTEXT:
+ case SqlParser.MULTIPOLYGONFROMWKB:
+ case SqlParser.NAME_CONST:
+ case SqlParser.NULLIF:
+ case SqlParser.NUMGEOMETRIES:
+ case SqlParser.NUMINTERIORRINGS:
+ case SqlParser.NUMPOINTS:
+ case SqlParser.OCT:
+ case SqlParser.OCTET_LENGTH:
+ case SqlParser.ORD:
+ case SqlParser.OVERLAPS:
+ case SqlParser.PERIOD_ADD:
+ case SqlParser.PERIOD_DIFF:
+ case SqlParser.PI:
+ case SqlParser.POINTFROMTEXT:
+ case SqlParser.POINTFROMWKB:
+ case SqlParser.POINTN:
+ case SqlParser.POLYFROMTEXT:
+ case SqlParser.POLYFROMWKB:
+ case SqlParser.POLYGONFROMTEXT:
+ case SqlParser.POLYGONFROMWKB:
+ case SqlParser.POW:
+ case SqlParser.POWER:
+ case SqlParser.QUOTE:
+ case SqlParser.RADIANS:
+ case SqlParser.RAND:
+ case SqlParser.RANDOM_BYTES:
+ case SqlParser.RELEASE_LOCK:
+ case SqlParser.REVERSE:
+ case SqlParser.ROUND:
+ case SqlParser.ROW_COUNT:
+ case SqlParser.RPAD:
+ case SqlParser.RTRIM:
+ case SqlParser.SEC_TO_TIME:
+ case SqlParser.SESSION_USER:
+ case SqlParser.SHA:
+ case SqlParser.SHA1:
+ case SqlParser.SHA2:
+ case SqlParser.SCHEMA_NAME:
+ case SqlParser.SIGN:
+ case SqlParser.SIN:
+ case SqlParser.SLEEP:
+ case SqlParser.SOUNDEX:
+ case SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS:
+ case SqlParser.SQRT:
+ case SqlParser.SRID:
+ case SqlParser.STARTPOINT:
+ case SqlParser.STRCMP:
+ case SqlParser.STR_TO_DATE:
+ case SqlParser.ST_AREA:
+ case SqlParser.ST_ASBINARY:
+ case SqlParser.ST_ASTEXT:
+ case SqlParser.ST_ASWKB:
+ case SqlParser.ST_ASWKT:
+ case SqlParser.ST_BUFFER:
+ case SqlParser.ST_CENTROID:
+ case SqlParser.ST_CONTAINS:
+ case SqlParser.ST_CROSSES:
+ case SqlParser.ST_DIFFERENCE:
+ case SqlParser.ST_DIMENSION:
+ case SqlParser.ST_DISJOINT:
+ case SqlParser.ST_DISTANCE:
+ case SqlParser.ST_ENDPOINT:
+ case SqlParser.ST_ENVELOPE:
+ case SqlParser.ST_EQUALS:
+ case SqlParser.ST_EXTERIORRING:
+ case SqlParser.ST_GEOMCOLLFROMTEXT:
+ case SqlParser.ST_GEOMCOLLFROMTXT:
+ case SqlParser.ST_GEOMCOLLFROMWKB:
+ case SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT:
+ case SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB:
+ case SqlParser.ST_GEOMETRYFROMTEXT:
+ case SqlParser.ST_GEOMETRYFROMWKB:
+ case SqlParser.ST_GEOMETRYN:
+ case SqlParser.ST_GEOMETRYTYPE:
+ case SqlParser.ST_GEOMFROMTEXT:
+ case SqlParser.ST_GEOMFROMWKB:
+ case SqlParser.ST_INTERIORRINGN:
+ case SqlParser.ST_INTERSECTION:
+ case SqlParser.ST_INTERSECTS:
+ case SqlParser.ST_ISCLOSED:
+ case SqlParser.ST_ISEMPTY:
+ case SqlParser.ST_ISSIMPLE:
+ case SqlParser.ST_LINEFROMTEXT:
+ case SqlParser.ST_LINEFROMWKB:
+ case SqlParser.ST_LINESTRINGFROMTEXT:
+ case SqlParser.ST_LINESTRINGFROMWKB:
+ case SqlParser.ST_NUMGEOMETRIES:
+ case SqlParser.ST_NUMINTERIORRING:
+ case SqlParser.ST_NUMINTERIORRINGS:
+ case SqlParser.ST_NUMPOINTS:
+ case SqlParser.ST_OVERLAPS:
+ case SqlParser.ST_POINTFROMTEXT:
+ case SqlParser.ST_POINTFROMWKB:
+ case SqlParser.ST_POINTN:
+ case SqlParser.ST_POLYFROMTEXT:
+ case SqlParser.ST_POLYFROMWKB:
+ case SqlParser.ST_POLYGONFROMTEXT:
+ case SqlParser.ST_POLYGONFROMWKB:
+ case SqlParser.ST_SRID:
+ case SqlParser.ST_STARTPOINT:
+ case SqlParser.ST_SYMDIFFERENCE:
+ case SqlParser.ST_TOUCHES:
+ case SqlParser.ST_UNION:
+ case SqlParser.ST_WITHIN:
+ case SqlParser.ST_X:
+ case SqlParser.ST_Y:
+ case SqlParser.SUBDATE:
+ case SqlParser.SUBSTRING_INDEX:
+ case SqlParser.SUBTIME:
+ case SqlParser.SYSTEM_USER:
+ case SqlParser.TAN:
+ case SqlParser.TIMEDIFF:
+ case SqlParser.TIMESTAMPADD:
+ case SqlParser.TIMESTAMPDIFF:
+ case SqlParser.TIME_FORMAT:
+ case SqlParser.TIME_TO_SEC:
+ case SqlParser.TOUCHES:
+ case SqlParser.TO_BASE64:
+ case SqlParser.TO_DAYS:
+ case SqlParser.TO_SECONDS:
+ case SqlParser.UCASE:
+ case SqlParser.UNCOMPRESS:
+ case SqlParser.UNCOMPRESSED_LENGTH:
+ case SqlParser.UNHEX:
+ case SqlParser.UNIX_TIMESTAMP:
+ case SqlParser.UPDATEXML:
+ case SqlParser.UPPER:
+ case SqlParser.UUID:
+ case SqlParser.UUID_SHORT:
+ case SqlParser.VALIDATE_PASSWORD_STRENGTH:
+ case SqlParser.VERSION:
+ case SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS:
+ case SqlParser.WEEKDAY:
+ case SqlParser.WEEKOFYEAR:
+ case SqlParser.WEIGHT_STRING:
+ case SqlParser.WITHIN:
+ case SqlParser.YEARWEEK:
+ case SqlParser.Y_FUNCTION:
+ case SqlParser.X_FUNCTION:
+ case SqlParser.CHARSET_REVERSE_QOUTE_STRING:
+ case SqlParser.STRING_LITERAL:
+ case SqlParser.ID:
+ case SqlParser.REVERSE_QUOTE_ID:
+ this.state = 2609;
+ this.uidList();
+ break;
+ case SqlParser.ALL:
+ this.state = 2610;
+ this.match(SqlParser.ALL);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ break;
+
+ case 44:
+ localctx = new AlterByRepairPartitionContext(this, localctx);
+ this.enterOuterAlt(localctx, 44);
+ this.state = 2613;
+ this.match(SqlParser.REPAIR);
+ this.state = 2614;
+ this.match(SqlParser.PARTITION);
+ this.state = 2617;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.CURRENT:
+ case SqlParser.DATABASE:
+ case SqlParser.DIAGNOSTICS:
+ case SqlParser.LEFT:
+ case SqlParser.NUMBER:
+ case SqlParser.RIGHT:
+ case SqlParser.STACKED:
+ case SqlParser.DATE:
+ case SqlParser.TIME:
+ case SqlParser.TIMESTAMP:
+ case SqlParser.DATETIME:
+ case SqlParser.YEAR:
+ case SqlParser.TEXT:
+ case SqlParser.ENUM:
+ case SqlParser.SERIAL:
+ case SqlParser.JSON_VALID:
+ case SqlParser.JSON_SCHEMA_VALID:
+ case SqlParser.COUNT:
+ case SqlParser.POSITION:
+ case SqlParser.ACCOUNT:
+ case SqlParser.ACTION:
+ case SqlParser.AFTER:
+ case SqlParser.AGGREGATE:
+ case SqlParser.ALGORITHM:
+ case SqlParser.ANY:
+ case SqlParser.AT:
+ case SqlParser.AUTHORS:
+ case SqlParser.AUTOCOMMIT:
+ case SqlParser.AUTOEXTEND_SIZE:
+ case SqlParser.AUTO_INCREMENT:
+ case SqlParser.AVG_ROW_LENGTH:
+ case SqlParser.BEGIN:
+ case SqlParser.BINLOG:
+ case SqlParser.BIT:
+ case SqlParser.BLOCK:
+ case SqlParser.BOOL:
+ case SqlParser.BOOLEAN:
+ case SqlParser.BTREE:
+ case SqlParser.CACHE:
+ case SqlParser.CASCADED:
+ case SqlParser.CHAIN:
+ case SqlParser.CHANGED:
+ case SqlParser.CHANNEL:
+ case SqlParser.CHECKSUM:
+ case SqlParser.PAGE_CHECKSUM:
+ case SqlParser.CIPHER:
+ case SqlParser.CLASS_ORIGIN:
+ case SqlParser.CLIENT:
+ case SqlParser.CLOSE:
+ case SqlParser.COALESCE:
+ case SqlParser.CODE:
+ case SqlParser.COLUMNS:
+ case SqlParser.COLUMN_FORMAT:
+ case SqlParser.COLUMN_NAME:
+ case SqlParser.COMMENT:
+ case SqlParser.COMMIT:
+ case SqlParser.COMPACT:
+ case SqlParser.COMPLETION:
+ case SqlParser.COMPRESSED:
+ case SqlParser.COMPRESSION:
+ case SqlParser.CONCURRENT:
+ case SqlParser.CONNECTION:
+ case SqlParser.CONSISTENT:
+ case SqlParser.CONSTRAINT_CATALOG:
+ case SqlParser.CONSTRAINT_SCHEMA:
+ case SqlParser.CONSTRAINT_NAME:
+ case SqlParser.CONTAINS:
+ case SqlParser.CONTEXT:
+ case SqlParser.CONTRIBUTORS:
+ case SqlParser.COPY:
+ case SqlParser.CPU:
+ case SqlParser.CURSOR_NAME:
+ case SqlParser.DATA:
+ case SqlParser.DATAFILE:
+ case SqlParser.DEALLOCATE:
+ case SqlParser.DEFAULT_AUTH:
+ case SqlParser.DEFINER:
+ case SqlParser.DELAY_KEY_WRITE:
+ case SqlParser.DES_KEY_FILE:
+ case SqlParser.DIRECTORY:
+ case SqlParser.DISABLE:
+ case SqlParser.DISCARD:
+ case SqlParser.DISK:
+ case SqlParser.DO:
+ case SqlParser.DUMPFILE:
+ case SqlParser.DUPLICATE:
+ case SqlParser.DYNAMIC:
+ case SqlParser.ENABLE:
+ case SqlParser.ENCRYPTION:
+ case SqlParser.END:
+ case SqlParser.ENDS:
+ case SqlParser.ENGINE:
+ case SqlParser.ENGINES:
+ case SqlParser.ERROR:
+ case SqlParser.ERRORS:
+ case SqlParser.ESCAPE:
+ case SqlParser.EVEN:
+ case SqlParser.EVENT:
+ case SqlParser.EVENTS:
+ case SqlParser.EVERY:
+ case SqlParser.EXCHANGE:
+ case SqlParser.EXCLUSIVE:
+ case SqlParser.EXPIRE:
+ case SqlParser.EXPORT:
+ case SqlParser.EXTENDED:
+ case SqlParser.EXTENT_SIZE:
+ case SqlParser.FAST:
+ case SqlParser.FAULTS:
+ case SqlParser.FIELDS:
+ case SqlParser.FILE_BLOCK_SIZE:
+ case SqlParser.FILTER:
+ case SqlParser.FIRST:
+ case SqlParser.FIXED:
+ case SqlParser.FLUSH:
+ case SqlParser.FOLLOWS:
+ case SqlParser.FOUND:
+ case SqlParser.FULL:
+ case SqlParser.FUNCTION:
+ case SqlParser.GENERAL:
+ case SqlParser.GLOBAL:
+ case SqlParser.GRANTS:
+ case SqlParser.GROUP_REPLICATION:
+ case SqlParser.HANDLER:
+ case SqlParser.HASH:
+ case SqlParser.HELP:
+ case SqlParser.HOST:
+ case SqlParser.HOSTS:
+ case SqlParser.IDENTIFIED:
+ case SqlParser.IGNORE_SERVER_IDS:
+ case SqlParser.IMPORT:
+ case SqlParser.INDEXES:
+ case SqlParser.INITIAL_SIZE:
+ case SqlParser.INPLACE:
+ case SqlParser.INSERT_METHOD:
+ case SqlParser.INSTALL:
+ case SqlParser.INSTANCE:
+ case SqlParser.INVISIBLE:
+ case SqlParser.INVOKER:
+ case SqlParser.IO:
+ case SqlParser.IO_THREAD:
+ case SqlParser.IPC:
+ case SqlParser.ISOLATION:
+ case SqlParser.ISSUER:
+ case SqlParser.JSON:
+ case SqlParser.KEY_BLOCK_SIZE:
+ case SqlParser.LANGUAGE:
+ case SqlParser.LAST:
+ case SqlParser.LEAVES:
+ case SqlParser.LESS:
+ case SqlParser.LEVEL:
+ case SqlParser.LIST:
+ case SqlParser.LOCAL:
+ case SqlParser.LOGFILE:
+ case SqlParser.LOGS:
+ case SqlParser.MASTER:
+ case SqlParser.MASTER_AUTO_POSITION:
+ case SqlParser.MASTER_CONNECT_RETRY:
+ case SqlParser.MASTER_DELAY:
+ case SqlParser.MASTER_HEARTBEAT_PERIOD:
+ case SqlParser.MASTER_HOST:
+ case SqlParser.MASTER_LOG_FILE:
+ case SqlParser.MASTER_LOG_POS:
+ case SqlParser.MASTER_PASSWORD:
+ case SqlParser.MASTER_PORT:
+ case SqlParser.MASTER_RETRY_COUNT:
+ case SqlParser.MASTER_SSL:
+ case SqlParser.MASTER_SSL_CA:
+ case SqlParser.MASTER_SSL_CAPATH:
+ case SqlParser.MASTER_SSL_CERT:
+ case SqlParser.MASTER_SSL_CIPHER:
+ case SqlParser.MASTER_SSL_CRL:
+ case SqlParser.MASTER_SSL_CRLPATH:
+ case SqlParser.MASTER_SSL_KEY:
+ case SqlParser.MASTER_TLS_VERSION:
+ case SqlParser.MASTER_USER:
+ case SqlParser.MAX_CONNECTIONS_PER_HOUR:
+ case SqlParser.MAX_QUERIES_PER_HOUR:
+ case SqlParser.MAX_ROWS:
+ case SqlParser.MAX_SIZE:
+ case SqlParser.MAX_UPDATES_PER_HOUR:
+ case SqlParser.MAX_USER_CONNECTIONS:
+ case SqlParser.MEDIUM:
+ case SqlParser.MERGE:
+ case SqlParser.MESSAGE_TEXT:
+ case SqlParser.MID:
+ case SqlParser.MIGRATE:
+ case SqlParser.MIN_ROWS:
+ case SqlParser.MODE:
+ case SqlParser.MODIFY:
+ case SqlParser.MUTEX:
+ case SqlParser.MYSQL:
+ case SqlParser.MYSQL_ERRNO:
+ case SqlParser.NAME:
+ case SqlParser.NAMES:
+ case SqlParser.NCHAR:
+ case SqlParser.NEVER:
+ case SqlParser.NEXT:
+ case SqlParser.NO:
+ case SqlParser.NODEGROUP:
+ case SqlParser.NONE:
+ case SqlParser.OFFLINE:
+ case SqlParser.OFFSET:
+ case SqlParser.OJ:
+ case SqlParser.OLD_PASSWORD:
+ case SqlParser.ONE:
+ case SqlParser.ONLINE:
+ case SqlParser.ONLY:
+ case SqlParser.OPEN:
+ case SqlParser.OPTIMIZER_COSTS:
+ case SqlParser.OPTIONS:
+ case SqlParser.OWNER:
+ case SqlParser.PACK_KEYS:
+ case SqlParser.PAGE:
+ case SqlParser.PARSER:
+ case SqlParser.PARTIAL:
+ case SqlParser.PARTITIONING:
+ case SqlParser.PARTITIONS:
+ case SqlParser.PASSWORD:
+ case SqlParser.PHASE:
+ case SqlParser.PLUGIN:
+ case SqlParser.PLUGIN_DIR:
+ case SqlParser.PLUGINS:
+ case SqlParser.PORT:
+ case SqlParser.PRECEDES:
+ case SqlParser.PREPARE:
+ case SqlParser.PRESERVE:
+ case SqlParser.PREV:
+ case SqlParser.PROCESSLIST:
+ case SqlParser.PROFILE:
+ case SqlParser.PROFILES:
+ case SqlParser.PROXY:
+ case SqlParser.QUERY:
+ case SqlParser.QUICK:
+ case SqlParser.REBUILD:
+ case SqlParser.RECOVER:
+ case SqlParser.REDO_BUFFER_SIZE:
+ case SqlParser.REDUNDANT:
+ case SqlParser.RELAY:
+ case SqlParser.RELAY_LOG_FILE:
+ case SqlParser.RELAY_LOG_POS:
+ case SqlParser.RELAYLOG:
+ case SqlParser.REMOVE:
+ case SqlParser.REORGANIZE:
+ case SqlParser.REPAIR:
+ case SqlParser.REPLICATE_DO_DB:
+ case SqlParser.REPLICATE_DO_TABLE:
+ case SqlParser.REPLICATE_IGNORE_DB:
+ case SqlParser.REPLICATE_IGNORE_TABLE:
+ case SqlParser.REPLICATE_REWRITE_DB:
+ case SqlParser.REPLICATE_WILD_DO_TABLE:
+ case SqlParser.REPLICATE_WILD_IGNORE_TABLE:
+ case SqlParser.REPLICATION:
+ case SqlParser.RESET:
+ case SqlParser.RESUME:
+ case SqlParser.RETURNED_SQLSTATE:
+ case SqlParser.RETURNS:
+ case SqlParser.ROLE:
+ case SqlParser.ROLLBACK:
+ case SqlParser.ROLLUP:
+ case SqlParser.ROTATE:
+ case SqlParser.ROW:
+ case SqlParser.ROWS:
+ case SqlParser.ROW_FORMAT:
+ case SqlParser.SAVEPOINT:
+ case SqlParser.SCHEDULE:
+ case SqlParser.SECURITY:
+ case SqlParser.SERVER:
+ case SqlParser.SESSION:
+ case SqlParser.SHARE:
+ case SqlParser.SHARED:
+ case SqlParser.SIGNED:
+ case SqlParser.SIMPLE:
+ case SqlParser.SLAVE:
+ case SqlParser.SLOW:
+ case SqlParser.SNAPSHOT:
+ case SqlParser.SOCKET:
+ case SqlParser.SOME:
+ case SqlParser.SONAME:
+ case SqlParser.SOUNDS:
+ case SqlParser.SOURCE:
+ case SqlParser.SQL_AFTER_GTIDS:
+ case SqlParser.SQL_AFTER_MTS_GAPS:
+ case SqlParser.SQL_BEFORE_GTIDS:
+ case SqlParser.SQL_BUFFER_RESULT:
+ case SqlParser.SQL_CACHE:
+ case SqlParser.SQL_NO_CACHE:
+ case SqlParser.SQL_THREAD:
+ case SqlParser.START:
+ case SqlParser.STARTS:
+ case SqlParser.STATS_AUTO_RECALC:
+ case SqlParser.STATS_PERSISTENT:
+ case SqlParser.STATS_SAMPLE_PAGES:
+ case SqlParser.STATUS:
+ case SqlParser.STOP:
+ case SqlParser.STORAGE:
+ case SqlParser.STRING:
+ case SqlParser.SUBCLASS_ORIGIN:
+ case SqlParser.SUBJECT:
+ case SqlParser.SUBPARTITION:
+ case SqlParser.SUBPARTITIONS:
+ case SqlParser.SUSPEND:
+ case SqlParser.SWAPS:
+ case SqlParser.SWITCHES:
+ case SqlParser.TABLE_NAME:
+ case SqlParser.TABLESPACE:
+ case SqlParser.TEMPORARY:
+ case SqlParser.TEMPTABLE:
+ case SqlParser.THAN:
+ case SqlParser.TRADITIONAL:
+ case SqlParser.TRANSACTION:
+ case SqlParser.TRANSACTIONAL:
+ case SqlParser.TRIGGERS:
+ case SqlParser.TRUNCATE:
+ case SqlParser.UNDEFINED:
+ case SqlParser.UNDOFILE:
+ case SqlParser.UNDO_BUFFER_SIZE:
+ case SqlParser.UNINSTALL:
+ case SqlParser.UNKNOWN:
+ case SqlParser.UNTIL:
+ case SqlParser.UPGRADE:
+ case SqlParser.USER:
+ case SqlParser.USE_FRM:
+ case SqlParser.USER_RESOURCES:
+ case SqlParser.VALIDATION:
+ case SqlParser.VALUE:
+ case SqlParser.VARIABLES:
+ case SqlParser.VIEW:
+ case SqlParser.VISIBLE:
+ case SqlParser.WAIT:
+ case SqlParser.WARNINGS:
+ case SqlParser.WITHOUT:
+ case SqlParser.WORK:
+ case SqlParser.WRAPPER:
+ case SqlParser.X509:
+ case SqlParser.XA:
+ case SqlParser.XML:
+ case SqlParser.INTERNAL:
+ case SqlParser.QUARTER:
+ case SqlParser.MONTH:
+ case SqlParser.DAY:
+ case SqlParser.HOUR:
+ case SqlParser.MINUTE:
+ case SqlParser.WEEK:
+ case SqlParser.SECOND:
+ case SqlParser.MICROSECOND:
+ case SqlParser.TABLES:
+ case SqlParser.ROUTINE:
+ case SqlParser.EXECUTE:
+ case SqlParser.FILE:
+ case SqlParser.PROCESS:
+ case SqlParser.RELOAD:
+ case SqlParser.SHUTDOWN:
+ case SqlParser.SUPER:
+ case SqlParser.PRIVILEGES:
+ case SqlParser.AUDIT_ADMIN:
+ case SqlParser.BACKUP_ADMIN:
+ case SqlParser.BINLOG_ADMIN:
+ case SqlParser.BINLOG_ENCRYPTION_ADMIN:
+ case SqlParser.CLONE_ADMIN:
+ case SqlParser.CONNECTION_ADMIN:
+ case SqlParser.ENCRYPTION_KEY_ADMIN:
+ case SqlParser.FIREWALL_ADMIN:
+ case SqlParser.FIREWALL_USER:
+ case SqlParser.GROUP_REPLICATION_ADMIN:
+ case SqlParser.INNODB_REDO_LOG_ARCHIVE:
+ case SqlParser.NDB_STORED_USER:
+ case SqlParser.PERSIST_RO_VARIABLES_ADMIN:
+ case SqlParser.REPLICATION_APPLIER:
+ case SqlParser.REPLICATION_SLAVE_ADMIN:
+ case SqlParser.RESOURCE_GROUP_ADMIN:
+ case SqlParser.RESOURCE_GROUP_USER:
+ case SqlParser.ROLE_ADMIN:
+ case SqlParser.SESSION_VARIABLES_ADMIN:
+ case SqlParser.SET_USER_ID:
+ case SqlParser.SHOW_ROUTINE:
+ case SqlParser.SYSTEM_VARIABLES_ADMIN:
+ case SqlParser.TABLE_ENCRYPTION_ADMIN:
+ case SqlParser.VERSION_TOKEN_ADMIN:
+ case SqlParser.XA_RECOVER_ADMIN:
+ case SqlParser.ARMSCII8:
+ case SqlParser.ASCII:
+ case SqlParser.BIG5:
+ case SqlParser.CP1250:
+ case SqlParser.CP1251:
+ case SqlParser.CP1256:
+ case SqlParser.CP1257:
+ case SqlParser.CP850:
+ case SqlParser.CP852:
+ case SqlParser.CP866:
+ case SqlParser.CP932:
+ case SqlParser.DEC8:
+ case SqlParser.EUCJPMS:
+ case SqlParser.EUCKR:
+ case SqlParser.GB2312:
+ case SqlParser.GBK:
+ case SqlParser.GEOSTD8:
+ case SqlParser.GREEK:
+ case SqlParser.HEBREW:
+ case SqlParser.HP8:
+ case SqlParser.KEYBCS2:
+ case SqlParser.KOI8R:
+ case SqlParser.KOI8U:
+ case SqlParser.LATIN1:
+ case SqlParser.LATIN2:
+ case SqlParser.LATIN5:
+ case SqlParser.LATIN7:
+ case SqlParser.MACCE:
+ case SqlParser.MACROMAN:
+ case SqlParser.SJIS:
+ case SqlParser.SWE7:
+ case SqlParser.TIS620:
+ case SqlParser.UCS2:
+ case SqlParser.UJIS:
+ case SqlParser.UTF16:
+ case SqlParser.UTF16LE:
+ case SqlParser.UTF32:
+ case SqlParser.UTF8:
+ case SqlParser.UTF8MB3:
+ case SqlParser.UTF8MB4:
+ case SqlParser.ARCHIVE:
+ case SqlParser.BLACKHOLE:
+ case SqlParser.CSV:
+ case SqlParser.FEDERATED:
+ case SqlParser.INNODB:
+ case SqlParser.MEMORY:
+ case SqlParser.MRG_MYISAM:
+ case SqlParser.MYISAM:
+ case SqlParser.NDB:
+ case SqlParser.NDBCLUSTER:
+ case SqlParser.PERFORMANCE_SCHEMA:
+ case SqlParser.TOKUDB:
+ case SqlParser.REPEATABLE:
+ case SqlParser.COMMITTED:
+ case SqlParser.UNCOMMITTED:
+ case SqlParser.SERIALIZABLE:
+ case SqlParser.GEOMETRYCOLLECTION:
+ case SqlParser.LINESTRING:
+ case SqlParser.MULTILINESTRING:
+ case SqlParser.MULTIPOINT:
+ case SqlParser.MULTIPOLYGON:
+ case SqlParser.POINT:
+ case SqlParser.POLYGON:
+ case SqlParser.ABS:
+ case SqlParser.ACOS:
+ case SqlParser.ADDDATE:
+ case SqlParser.ADDTIME:
+ case SqlParser.AES_DECRYPT:
+ case SqlParser.AES_ENCRYPT:
+ case SqlParser.AREA:
+ case SqlParser.ASBINARY:
+ case SqlParser.ASIN:
+ case SqlParser.ASTEXT:
+ case SqlParser.ASWKB:
+ case SqlParser.ASWKT:
+ case SqlParser.ASYMMETRIC_DECRYPT:
+ case SqlParser.ASYMMETRIC_DERIVE:
+ case SqlParser.ASYMMETRIC_ENCRYPT:
+ case SqlParser.ASYMMETRIC_SIGN:
+ case SqlParser.ASYMMETRIC_VERIFY:
+ case SqlParser.ATAN:
+ case SqlParser.ATAN2:
+ case SqlParser.BENCHMARK:
+ case SqlParser.BIN:
+ case SqlParser.BIT_COUNT:
+ case SqlParser.BIT_LENGTH:
+ case SqlParser.BUFFER:
+ case SqlParser.CATALOG_NAME:
+ case SqlParser.CEIL:
+ case SqlParser.CEILING:
+ case SqlParser.CENTROID:
+ case SqlParser.CHARACTER_LENGTH:
+ case SqlParser.CHARSET:
+ case SqlParser.CHAR_LENGTH:
+ case SqlParser.COERCIBILITY:
+ case SqlParser.COLLATION:
+ case SqlParser.COMPRESS:
+ case SqlParser.CONCAT:
+ case SqlParser.CONCAT_WS:
+ case SqlParser.CONNECTION_ID:
+ case SqlParser.CONV:
+ case SqlParser.CONVERT_TZ:
+ case SqlParser.COS:
+ case SqlParser.COT:
+ case SqlParser.CRC32:
+ case SqlParser.CREATE_ASYMMETRIC_PRIV_KEY:
+ case SqlParser.CREATE_ASYMMETRIC_PUB_KEY:
+ case SqlParser.CREATE_DH_PARAMETERS:
+ case SqlParser.CREATE_DIGEST:
+ case SqlParser.CROSSES:
+ case SqlParser.DATEDIFF:
+ case SqlParser.DATE_FORMAT:
+ case SqlParser.DAYNAME:
+ case SqlParser.DAYOFMONTH:
+ case SqlParser.DAYOFWEEK:
+ case SqlParser.DAYOFYEAR:
+ case SqlParser.DECODE:
+ case SqlParser.DEGREES:
+ case SqlParser.DES_DECRYPT:
+ case SqlParser.DES_ENCRYPT:
+ case SqlParser.DIMENSION:
+ case SqlParser.DISJOINT:
+ case SqlParser.ELT:
+ case SqlParser.ENCODE:
+ case SqlParser.ENCRYPT:
+ case SqlParser.ENDPOINT:
+ case SqlParser.ENVELOPE:
+ case SqlParser.EQUALS:
+ case SqlParser.EXP:
+ case SqlParser.EXPORT_SET:
+ case SqlParser.EXTERIORRING:
+ case SqlParser.EXTRACTVALUE:
+ case SqlParser.FIELD:
+ case SqlParser.FIND_IN_SET:
+ case SqlParser.FLOOR:
+ case SqlParser.FORMAT:
+ case SqlParser.FOUND_ROWS:
+ case SqlParser.FROM_BASE64:
+ case SqlParser.FROM_DAYS:
+ case SqlParser.FROM_UNIXTIME:
+ case SqlParser.GEOMCOLLFROMTEXT:
+ case SqlParser.GEOMCOLLFROMWKB:
+ case SqlParser.GEOMETRYCOLLECTIONFROMTEXT:
+ case SqlParser.GEOMETRYCOLLECTIONFROMWKB:
+ case SqlParser.GEOMETRYFROMTEXT:
+ case SqlParser.GEOMETRYFROMWKB:
+ case SqlParser.GEOMETRYN:
+ case SqlParser.GEOMETRYTYPE:
+ case SqlParser.GEOMFROMTEXT:
+ case SqlParser.GEOMFROMWKB:
+ case SqlParser.GET_FORMAT:
+ case SqlParser.GET_LOCK:
+ case SqlParser.GLENGTH:
+ case SqlParser.GREATEST:
+ case SqlParser.GTID_SUBSET:
+ case SqlParser.GTID_SUBTRACT:
+ case SqlParser.HEX:
+ case SqlParser.IFNULL:
+ case SqlParser.INET6_ATON:
+ case SqlParser.INET6_NTOA:
+ case SqlParser.INET_ATON:
+ case SqlParser.INET_NTOA:
+ case SqlParser.INSTR:
+ case SqlParser.INTERIORRINGN:
+ case SqlParser.INTERSECTS:
+ case SqlParser.ISCLOSED:
+ case SqlParser.ISEMPTY:
+ case SqlParser.ISNULL:
+ case SqlParser.ISSIMPLE:
+ case SqlParser.IS_FREE_LOCK:
+ case SqlParser.IS_IPV4:
+ case SqlParser.IS_IPV4_COMPAT:
+ case SqlParser.IS_IPV4_MAPPED:
+ case SqlParser.IS_IPV6:
+ case SqlParser.IS_USED_LOCK:
+ case SqlParser.LAST_INSERT_ID:
+ case SqlParser.LCASE:
+ case SqlParser.LEAST:
+ case SqlParser.LENGTH:
+ case SqlParser.LINEFROMTEXT:
+ case SqlParser.LINEFROMWKB:
+ case SqlParser.LINESTRINGFROMTEXT:
+ case SqlParser.LINESTRINGFROMWKB:
+ case SqlParser.LN:
+ case SqlParser.LOAD_FILE:
+ case SqlParser.LOCATE:
+ case SqlParser.LOG:
+ case SqlParser.LOG10:
+ case SqlParser.LOG2:
+ case SqlParser.LOWER:
+ case SqlParser.LPAD:
+ case SqlParser.LTRIM:
+ case SqlParser.MAKEDATE:
+ case SqlParser.MAKETIME:
+ case SqlParser.MAKE_SET:
+ case SqlParser.MASTER_POS_WAIT:
+ case SqlParser.MBRCONTAINS:
+ case SqlParser.MBRDISJOINT:
+ case SqlParser.MBREQUAL:
+ case SqlParser.MBRINTERSECTS:
+ case SqlParser.MBROVERLAPS:
+ case SqlParser.MBRTOUCHES:
+ case SqlParser.MBRWITHIN:
+ case SqlParser.MD5:
+ case SqlParser.MLINEFROMTEXT:
+ case SqlParser.MLINEFROMWKB:
+ case SqlParser.MONTHNAME:
+ case SqlParser.MPOINTFROMTEXT:
+ case SqlParser.MPOINTFROMWKB:
+ case SqlParser.MPOLYFROMTEXT:
+ case SqlParser.MPOLYFROMWKB:
+ case SqlParser.MULTILINESTRINGFROMTEXT:
+ case SqlParser.MULTILINESTRINGFROMWKB:
+ case SqlParser.MULTIPOINTFROMTEXT:
+ case SqlParser.MULTIPOINTFROMWKB:
+ case SqlParser.MULTIPOLYGONFROMTEXT:
+ case SqlParser.MULTIPOLYGONFROMWKB:
+ case SqlParser.NAME_CONST:
+ case SqlParser.NULLIF:
+ case SqlParser.NUMGEOMETRIES:
+ case SqlParser.NUMINTERIORRINGS:
+ case SqlParser.NUMPOINTS:
+ case SqlParser.OCT:
+ case SqlParser.OCTET_LENGTH:
+ case SqlParser.ORD:
+ case SqlParser.OVERLAPS:
+ case SqlParser.PERIOD_ADD:
+ case SqlParser.PERIOD_DIFF:
+ case SqlParser.PI:
+ case SqlParser.POINTFROMTEXT:
+ case SqlParser.POINTFROMWKB:
+ case SqlParser.POINTN:
+ case SqlParser.POLYFROMTEXT:
+ case SqlParser.POLYFROMWKB:
+ case SqlParser.POLYGONFROMTEXT:
+ case SqlParser.POLYGONFROMWKB:
+ case SqlParser.POW:
+ case SqlParser.POWER:
+ case SqlParser.QUOTE:
+ case SqlParser.RADIANS:
+ case SqlParser.RAND:
+ case SqlParser.RANDOM_BYTES:
+ case SqlParser.RELEASE_LOCK:
+ case SqlParser.REVERSE:
+ case SqlParser.ROUND:
+ case SqlParser.ROW_COUNT:
+ case SqlParser.RPAD:
+ case SqlParser.RTRIM:
+ case SqlParser.SEC_TO_TIME:
+ case SqlParser.SESSION_USER:
+ case SqlParser.SHA:
+ case SqlParser.SHA1:
+ case SqlParser.SHA2:
+ case SqlParser.SCHEMA_NAME:
+ case SqlParser.SIGN:
+ case SqlParser.SIN:
+ case SqlParser.SLEEP:
+ case SqlParser.SOUNDEX:
+ case SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS:
+ case SqlParser.SQRT:
+ case SqlParser.SRID:
+ case SqlParser.STARTPOINT:
+ case SqlParser.STRCMP:
+ case SqlParser.STR_TO_DATE:
+ case SqlParser.ST_AREA:
+ case SqlParser.ST_ASBINARY:
+ case SqlParser.ST_ASTEXT:
+ case SqlParser.ST_ASWKB:
+ case SqlParser.ST_ASWKT:
+ case SqlParser.ST_BUFFER:
+ case SqlParser.ST_CENTROID:
+ case SqlParser.ST_CONTAINS:
+ case SqlParser.ST_CROSSES:
+ case SqlParser.ST_DIFFERENCE:
+ case SqlParser.ST_DIMENSION:
+ case SqlParser.ST_DISJOINT:
+ case SqlParser.ST_DISTANCE:
+ case SqlParser.ST_ENDPOINT:
+ case SqlParser.ST_ENVELOPE:
+ case SqlParser.ST_EQUALS:
+ case SqlParser.ST_EXTERIORRING:
+ case SqlParser.ST_GEOMCOLLFROMTEXT:
+ case SqlParser.ST_GEOMCOLLFROMTXT:
+ case SqlParser.ST_GEOMCOLLFROMWKB:
+ case SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT:
+ case SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB:
+ case SqlParser.ST_GEOMETRYFROMTEXT:
+ case SqlParser.ST_GEOMETRYFROMWKB:
+ case SqlParser.ST_GEOMETRYN:
+ case SqlParser.ST_GEOMETRYTYPE:
+ case SqlParser.ST_GEOMFROMTEXT:
+ case SqlParser.ST_GEOMFROMWKB:
+ case SqlParser.ST_INTERIORRINGN:
+ case SqlParser.ST_INTERSECTION:
+ case SqlParser.ST_INTERSECTS:
+ case SqlParser.ST_ISCLOSED:
+ case SqlParser.ST_ISEMPTY:
+ case SqlParser.ST_ISSIMPLE:
+ case SqlParser.ST_LINEFROMTEXT:
+ case SqlParser.ST_LINEFROMWKB:
+ case SqlParser.ST_LINESTRINGFROMTEXT:
+ case SqlParser.ST_LINESTRINGFROMWKB:
+ case SqlParser.ST_NUMGEOMETRIES:
+ case SqlParser.ST_NUMINTERIORRING:
+ case SqlParser.ST_NUMINTERIORRINGS:
+ case SqlParser.ST_NUMPOINTS:
+ case SqlParser.ST_OVERLAPS:
+ case SqlParser.ST_POINTFROMTEXT:
+ case SqlParser.ST_POINTFROMWKB:
+ case SqlParser.ST_POINTN:
+ case SqlParser.ST_POLYFROMTEXT:
+ case SqlParser.ST_POLYFROMWKB:
+ case SqlParser.ST_POLYGONFROMTEXT:
+ case SqlParser.ST_POLYGONFROMWKB:
+ case SqlParser.ST_SRID:
+ case SqlParser.ST_STARTPOINT:
+ case SqlParser.ST_SYMDIFFERENCE:
+ case SqlParser.ST_TOUCHES:
+ case SqlParser.ST_UNION:
+ case SqlParser.ST_WITHIN:
+ case SqlParser.ST_X:
+ case SqlParser.ST_Y:
+ case SqlParser.SUBDATE:
+ case SqlParser.SUBSTRING_INDEX:
+ case SqlParser.SUBTIME:
+ case SqlParser.SYSTEM_USER:
+ case SqlParser.TAN:
+ case SqlParser.TIMEDIFF:
+ case SqlParser.TIMESTAMPADD:
+ case SqlParser.TIMESTAMPDIFF:
+ case SqlParser.TIME_FORMAT:
+ case SqlParser.TIME_TO_SEC:
+ case SqlParser.TOUCHES:
+ case SqlParser.TO_BASE64:
+ case SqlParser.TO_DAYS:
+ case SqlParser.TO_SECONDS:
+ case SqlParser.UCASE:
+ case SqlParser.UNCOMPRESS:
+ case SqlParser.UNCOMPRESSED_LENGTH:
+ case SqlParser.UNHEX:
+ case SqlParser.UNIX_TIMESTAMP:
+ case SqlParser.UPDATEXML:
+ case SqlParser.UPPER:
+ case SqlParser.UUID:
+ case SqlParser.UUID_SHORT:
+ case SqlParser.VALIDATE_PASSWORD_STRENGTH:
+ case SqlParser.VERSION:
+ case SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS:
+ case SqlParser.WEEKDAY:
+ case SqlParser.WEEKOFYEAR:
+ case SqlParser.WEIGHT_STRING:
+ case SqlParser.WITHIN:
+ case SqlParser.YEARWEEK:
+ case SqlParser.Y_FUNCTION:
+ case SqlParser.X_FUNCTION:
+ case SqlParser.CHARSET_REVERSE_QOUTE_STRING:
+ case SqlParser.STRING_LITERAL:
+ case SqlParser.ID:
+ case SqlParser.REVERSE_QUOTE_ID:
+ this.state = 2615;
+ this.uidList();
+ break;
+ case SqlParser.ALL:
+ this.state = 2616;
+ this.match(SqlParser.ALL);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ break;
+
+ case 45:
+ localctx = new AlterByRemovePartitioningContext(this, localctx);
+ this.enterOuterAlt(localctx, 45);
+ this.state = 2619;
+ this.match(SqlParser.REMOVE);
+ this.state = 2620;
+ this.match(SqlParser.PARTITIONING);
+ break;
+
+ case 46:
+ localctx = new AlterByUpgradePartitioningContext(this, localctx);
+ this.enterOuterAlt(localctx, 46);
+ this.state = 2621;
+ this.match(SqlParser.UPGRADE);
+ this.state = 2622;
+ this.match(SqlParser.PARTITIONING);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function DropDatabaseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_dropDatabase;
+ this.dbFormat = null; // Token
+ return this;
+}
+
+DropDatabaseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+DropDatabaseContext.prototype.constructor = DropDatabaseContext;
+
+DropDatabaseContext.prototype.DROP = function() {
+ return this.getToken(SqlParser.DROP, 0);
+};
+
+DropDatabaseContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+DropDatabaseContext.prototype.DATABASE = function() {
+ return this.getToken(SqlParser.DATABASE, 0);
+};
+
+DropDatabaseContext.prototype.SCHEMA = function() {
+ return this.getToken(SqlParser.SCHEMA, 0);
+};
+
+DropDatabaseContext.prototype.ifExists = function() {
+ return this.getTypedRuleContext(IfExistsContext,0);
+};
+
+DropDatabaseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterDropDatabase(this);
+ }
+};
+
+DropDatabaseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitDropDatabase(this);
+ }
+};
+
+DropDatabaseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitDropDatabase(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.DropDatabaseContext = DropDatabaseContext;
+
+SqlParser.prototype.dropDatabase = function() {
+
+ var localctx = new DropDatabaseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 136, SqlParser.RULE_dropDatabase);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2625;
+ this.match(SqlParser.DROP);
+ this.state = 2626;
+ localctx.dbFormat = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.DATABASE || _la===SqlParser.SCHEMA)) {
+ localctx.dbFormat = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 2628;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.IF) {
+ this.state = 2627;
+ this.ifExists();
+ }
+
+ this.state = 2630;
+ this.uid();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function DropEventContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_dropEvent;
+ return this;
+}
+
+DropEventContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+DropEventContext.prototype.constructor = DropEventContext;
+
+DropEventContext.prototype.DROP = function() {
+ return this.getToken(SqlParser.DROP, 0);
+};
+
+DropEventContext.prototype.EVENT = function() {
+ return this.getToken(SqlParser.EVENT, 0);
+};
+
+DropEventContext.prototype.fullId = function() {
+ return this.getTypedRuleContext(FullIdContext,0);
+};
+
+DropEventContext.prototype.ifExists = function() {
+ return this.getTypedRuleContext(IfExistsContext,0);
+};
+
+DropEventContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterDropEvent(this);
+ }
+};
+
+DropEventContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitDropEvent(this);
+ }
+};
+
+DropEventContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitDropEvent(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.DropEventContext = DropEventContext;
+
+SqlParser.prototype.dropEvent = function() {
+
+ var localctx = new DropEventContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 138, SqlParser.RULE_dropEvent);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2632;
+ this.match(SqlParser.DROP);
+ this.state = 2633;
+ this.match(SqlParser.EVENT);
+ this.state = 2635;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.IF) {
+ this.state = 2634;
+ this.ifExists();
+ }
+
+ this.state = 2637;
+ this.fullId();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function DropIndexContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_dropIndex;
+ this.intimeAction = null; // Token
+ this.algType = null; // Token
+ this.lockType = null; // Token
+ return this;
+}
+
+DropIndexContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+DropIndexContext.prototype.constructor = DropIndexContext;
+
+DropIndexContext.prototype.DROP = function() {
+ return this.getToken(SqlParser.DROP, 0);
+};
+
+DropIndexContext.prototype.INDEX = function() {
+ return this.getToken(SqlParser.INDEX, 0);
+};
+
+DropIndexContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+DropIndexContext.prototype.ON = function() {
+ return this.getToken(SqlParser.ON, 0);
+};
+
+DropIndexContext.prototype.tableName = function() {
+ return this.getTypedRuleContext(TableNameContext,0);
+};
+
+DropIndexContext.prototype.ALGORITHM = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.ALGORITHM);
+ } else {
+ return this.getToken(SqlParser.ALGORITHM, i);
+ }
+};
+
+
+DropIndexContext.prototype.LOCK = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.LOCK);
+ } else {
+ return this.getToken(SqlParser.LOCK, i);
+ }
+};
+
+
+DropIndexContext.prototype.ONLINE = function() {
+ return this.getToken(SqlParser.ONLINE, 0);
+};
+
+DropIndexContext.prototype.OFFLINE = function() {
+ return this.getToken(SqlParser.OFFLINE, 0);
+};
+
+DropIndexContext.prototype.DEFAULT = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.DEFAULT);
+ } else {
+ return this.getToken(SqlParser.DEFAULT, i);
+ }
+};
+
+
+DropIndexContext.prototype.INPLACE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.INPLACE);
+ } else {
+ return this.getToken(SqlParser.INPLACE, i);
+ }
+};
+
+
+DropIndexContext.prototype.COPY = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COPY);
+ } else {
+ return this.getToken(SqlParser.COPY, i);
+ }
+};
+
+
+DropIndexContext.prototype.NONE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.NONE);
+ } else {
+ return this.getToken(SqlParser.NONE, i);
+ }
+};
+
+
+DropIndexContext.prototype.SHARED = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.SHARED);
+ } else {
+ return this.getToken(SqlParser.SHARED, i);
+ }
+};
+
+
+DropIndexContext.prototype.EXCLUSIVE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.EXCLUSIVE);
+ } else {
+ return this.getToken(SqlParser.EXCLUSIVE, i);
+ }
+};
+
+
+DropIndexContext.prototype.EQUAL_SYMBOL = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.EQUAL_SYMBOL);
+ } else {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, i);
+ }
+};
+
+
+DropIndexContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterDropIndex(this);
+ }
+};
+
+DropIndexContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitDropIndex(this);
+ }
+};
+
+DropIndexContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitDropIndex(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.DropIndexContext = DropIndexContext;
+
+SqlParser.prototype.dropIndex = function() {
+
+ var localctx = new DropIndexContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 140, SqlParser.RULE_dropIndex);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2639;
+ this.match(SqlParser.DROP);
+ this.state = 2640;
+ this.match(SqlParser.INDEX);
+ this.state = 2642;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,336,this._ctx);
+ if(la_===1) {
+ this.state = 2641;
+ localctx.intimeAction = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.OFFLINE || _la===SqlParser.ONLINE)) {
+ localctx.intimeAction = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+
+ }
+ this.state = 2644;
+ this.uid();
+ this.state = 2645;
+ this.match(SqlParser.ON);
+ this.state = 2646;
+ this.tableName();
+ this.state = 2659;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,340,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 2657;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.ALGORITHM:
+ this.state = 2647;
+ this.match(SqlParser.ALGORITHM);
+ this.state = 2649;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 2648;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 2651;
+ localctx.algType = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.DEFAULT || _la===SqlParser.COPY || _la===SqlParser.INPLACE)) {
+ localctx.algType = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+ case SqlParser.LOCK:
+ this.state = 2652;
+ this.match(SqlParser.LOCK);
+ this.state = 2654;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 2653;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 2656;
+ localctx.lockType = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.DEFAULT || _la===SqlParser.EXCLUSIVE || _la===SqlParser.NONE || _la===SqlParser.SHARED)) {
+ localctx.lockType = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ }
+ this.state = 2661;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,340,this._ctx);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function DropLogfileGroupContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_dropLogfileGroup;
+ return this;
+}
+
+DropLogfileGroupContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+DropLogfileGroupContext.prototype.constructor = DropLogfileGroupContext;
+
+DropLogfileGroupContext.prototype.DROP = function() {
+ return this.getToken(SqlParser.DROP, 0);
+};
+
+DropLogfileGroupContext.prototype.LOGFILE = function() {
+ return this.getToken(SqlParser.LOGFILE, 0);
+};
+
+DropLogfileGroupContext.prototype.GROUP = function() {
+ return this.getToken(SqlParser.GROUP, 0);
+};
+
+DropLogfileGroupContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+DropLogfileGroupContext.prototype.ENGINE = function() {
+ return this.getToken(SqlParser.ENGINE, 0);
+};
+
+DropLogfileGroupContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+
+DropLogfileGroupContext.prototype.engineName = function() {
+ return this.getTypedRuleContext(EngineNameContext,0);
+};
+
+DropLogfileGroupContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterDropLogfileGroup(this);
+ }
+};
+
+DropLogfileGroupContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitDropLogfileGroup(this);
+ }
+};
+
+DropLogfileGroupContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitDropLogfileGroup(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.DropLogfileGroupContext = DropLogfileGroupContext;
+
+SqlParser.prototype.dropLogfileGroup = function() {
+
+ var localctx = new DropLogfileGroupContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 142, SqlParser.RULE_dropLogfileGroup);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2662;
+ this.match(SqlParser.DROP);
+ this.state = 2663;
+ this.match(SqlParser.LOGFILE);
+ this.state = 2664;
+ this.match(SqlParser.GROUP);
+ this.state = 2665;
+ this.uid();
+ this.state = 2666;
+ this.match(SqlParser.ENGINE);
+ this.state = 2667;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ this.state = 2668;
+ this.engineName();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function DropProcedureContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_dropProcedure;
+ return this;
+}
+
+DropProcedureContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+DropProcedureContext.prototype.constructor = DropProcedureContext;
+
+DropProcedureContext.prototype.DROP = function() {
+ return this.getToken(SqlParser.DROP, 0);
+};
+
+DropProcedureContext.prototype.PROCEDURE = function() {
+ return this.getToken(SqlParser.PROCEDURE, 0);
+};
+
+DropProcedureContext.prototype.fullId = function() {
+ return this.getTypedRuleContext(FullIdContext,0);
+};
+
+DropProcedureContext.prototype.ifExists = function() {
+ return this.getTypedRuleContext(IfExistsContext,0);
+};
+
+DropProcedureContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterDropProcedure(this);
+ }
+};
+
+DropProcedureContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitDropProcedure(this);
+ }
+};
+
+DropProcedureContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitDropProcedure(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.DropProcedureContext = DropProcedureContext;
+
+SqlParser.prototype.dropProcedure = function() {
+
+ var localctx = new DropProcedureContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 144, SqlParser.RULE_dropProcedure);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2670;
+ this.match(SqlParser.DROP);
+ this.state = 2671;
+ this.match(SqlParser.PROCEDURE);
+ this.state = 2673;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.IF) {
+ this.state = 2672;
+ this.ifExists();
+ }
+
+ this.state = 2675;
+ this.fullId();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function DropFunctionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_dropFunction;
+ return this;
+}
+
+DropFunctionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+DropFunctionContext.prototype.constructor = DropFunctionContext;
+
+DropFunctionContext.prototype.DROP = function() {
+ return this.getToken(SqlParser.DROP, 0);
+};
+
+DropFunctionContext.prototype.FUNCTION = function() {
+ return this.getToken(SqlParser.FUNCTION, 0);
+};
+
+DropFunctionContext.prototype.fullId = function() {
+ return this.getTypedRuleContext(FullIdContext,0);
+};
+
+DropFunctionContext.prototype.ifExists = function() {
+ return this.getTypedRuleContext(IfExistsContext,0);
+};
+
+DropFunctionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterDropFunction(this);
+ }
+};
+
+DropFunctionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitDropFunction(this);
+ }
+};
+
+DropFunctionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitDropFunction(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.DropFunctionContext = DropFunctionContext;
+
+SqlParser.prototype.dropFunction = function() {
+
+ var localctx = new DropFunctionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 146, SqlParser.RULE_dropFunction);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2677;
+ this.match(SqlParser.DROP);
+ this.state = 2678;
+ this.match(SqlParser.FUNCTION);
+ this.state = 2680;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.IF) {
+ this.state = 2679;
+ this.ifExists();
+ }
+
+ this.state = 2682;
+ this.fullId();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function DropServerContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_dropServer;
+ return this;
+}
+
+DropServerContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+DropServerContext.prototype.constructor = DropServerContext;
+
+DropServerContext.prototype.DROP = function() {
+ return this.getToken(SqlParser.DROP, 0);
+};
+
+DropServerContext.prototype.SERVER = function() {
+ return this.getToken(SqlParser.SERVER, 0);
+};
+
+DropServerContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+DropServerContext.prototype.ifExists = function() {
+ return this.getTypedRuleContext(IfExistsContext,0);
+};
+
+DropServerContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterDropServer(this);
+ }
+};
+
+DropServerContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitDropServer(this);
+ }
+};
+
+DropServerContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitDropServer(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.DropServerContext = DropServerContext;
+
+SqlParser.prototype.dropServer = function() {
+
+ var localctx = new DropServerContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 148, SqlParser.RULE_dropServer);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2684;
+ this.match(SqlParser.DROP);
+ this.state = 2685;
+ this.match(SqlParser.SERVER);
+ this.state = 2687;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.IF) {
+ this.state = 2686;
+ this.ifExists();
+ }
+
+ this.state = 2689;
+ this.uid();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function DropTableContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_dropTable;
+ this.dropType = null; // Token
+ return this;
+}
+
+DropTableContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+DropTableContext.prototype.constructor = DropTableContext;
+
+DropTableContext.prototype.DROP = function() {
+ return this.getToken(SqlParser.DROP, 0);
+};
+
+DropTableContext.prototype.TABLE = function() {
+ return this.getToken(SqlParser.TABLE, 0);
+};
+
+DropTableContext.prototype.tables = function() {
+ return this.getTypedRuleContext(TablesContext,0);
+};
+
+DropTableContext.prototype.TEMPORARY = function() {
+ return this.getToken(SqlParser.TEMPORARY, 0);
+};
+
+DropTableContext.prototype.ifExists = function() {
+ return this.getTypedRuleContext(IfExistsContext,0);
+};
+
+DropTableContext.prototype.RESTRICT = function() {
+ return this.getToken(SqlParser.RESTRICT, 0);
+};
+
+DropTableContext.prototype.CASCADE = function() {
+ return this.getToken(SqlParser.CASCADE, 0);
+};
+
+DropTableContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterDropTable(this);
+ }
+};
+
+DropTableContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitDropTable(this);
+ }
+};
+
+DropTableContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitDropTable(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.DropTableContext = DropTableContext;
+
+SqlParser.prototype.dropTable = function() {
+
+ var localctx = new DropTableContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 150, SqlParser.RULE_dropTable);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2691;
+ this.match(SqlParser.DROP);
+ this.state = 2693;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.TEMPORARY) {
+ this.state = 2692;
+ this.match(SqlParser.TEMPORARY);
+ }
+
+ this.state = 2695;
+ this.match(SqlParser.TABLE);
+ this.state = 2697;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.IF) {
+ this.state = 2696;
+ this.ifExists();
+ }
+
+ this.state = 2699;
+ this.tables();
+ this.state = 2701;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.CASCADE || _la===SqlParser.RESTRICT) {
+ this.state = 2700;
+ localctx.dropType = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.CASCADE || _la===SqlParser.RESTRICT)) {
+ localctx.dropType = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function DropTablespaceContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_dropTablespace;
+ return this;
+}
+
+DropTablespaceContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+DropTablespaceContext.prototype.constructor = DropTablespaceContext;
+
+DropTablespaceContext.prototype.DROP = function() {
+ return this.getToken(SqlParser.DROP, 0);
+};
+
+DropTablespaceContext.prototype.TABLESPACE = function() {
+ return this.getToken(SqlParser.TABLESPACE, 0);
+};
+
+DropTablespaceContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+DropTablespaceContext.prototype.ENGINE = function() {
+ return this.getToken(SqlParser.ENGINE, 0);
+};
+
+DropTablespaceContext.prototype.engineName = function() {
+ return this.getTypedRuleContext(EngineNameContext,0);
+};
+
+DropTablespaceContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+
+DropTablespaceContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterDropTablespace(this);
+ }
+};
+
+DropTablespaceContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitDropTablespace(this);
+ }
+};
+
+DropTablespaceContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitDropTablespace(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.DropTablespaceContext = DropTablespaceContext;
+
+SqlParser.prototype.dropTablespace = function() {
+
+ var localctx = new DropTablespaceContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 152, SqlParser.RULE_dropTablespace);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2703;
+ this.match(SqlParser.DROP);
+ this.state = 2704;
+ this.match(SqlParser.TABLESPACE);
+ this.state = 2705;
+ this.uid();
+ this.state = 2711;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.ENGINE) {
+ this.state = 2706;
+ this.match(SqlParser.ENGINE);
+ this.state = 2708;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EQUAL_SYMBOL) {
+ this.state = 2707;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ }
+
+ this.state = 2710;
+ this.engineName();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function DropTriggerContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_dropTrigger;
+ return this;
+}
+
+DropTriggerContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+DropTriggerContext.prototype.constructor = DropTriggerContext;
+
+DropTriggerContext.prototype.DROP = function() {
+ return this.getToken(SqlParser.DROP, 0);
+};
+
+DropTriggerContext.prototype.TRIGGER = function() {
+ return this.getToken(SqlParser.TRIGGER, 0);
+};
+
+DropTriggerContext.prototype.fullId = function() {
+ return this.getTypedRuleContext(FullIdContext,0);
+};
+
+DropTriggerContext.prototype.ifExists = function() {
+ return this.getTypedRuleContext(IfExistsContext,0);
+};
+
+DropTriggerContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterDropTrigger(this);
+ }
+};
+
+DropTriggerContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitDropTrigger(this);
+ }
+};
+
+DropTriggerContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitDropTrigger(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.DropTriggerContext = DropTriggerContext;
+
+SqlParser.prototype.dropTrigger = function() {
+
+ var localctx = new DropTriggerContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 154, SqlParser.RULE_dropTrigger);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2713;
+ this.match(SqlParser.DROP);
+ this.state = 2714;
+ this.match(SqlParser.TRIGGER);
+ this.state = 2716;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.IF) {
+ this.state = 2715;
+ this.ifExists();
+ }
+
+ this.state = 2718;
+ this.fullId();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function DropViewContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_dropView;
+ this.dropType = null; // Token
+ return this;
+}
+
+DropViewContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+DropViewContext.prototype.constructor = DropViewContext;
+
+DropViewContext.prototype.DROP = function() {
+ return this.getToken(SqlParser.DROP, 0);
+};
+
+DropViewContext.prototype.VIEW = function() {
+ return this.getToken(SqlParser.VIEW, 0);
+};
+
+DropViewContext.prototype.fullId = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(FullIdContext);
+ } else {
+ return this.getTypedRuleContext(FullIdContext,i);
+ }
+};
+
+DropViewContext.prototype.ifExists = function() {
+ return this.getTypedRuleContext(IfExistsContext,0);
+};
+
+DropViewContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+DropViewContext.prototype.RESTRICT = function() {
+ return this.getToken(SqlParser.RESTRICT, 0);
+};
+
+DropViewContext.prototype.CASCADE = function() {
+ return this.getToken(SqlParser.CASCADE, 0);
+};
+
+DropViewContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterDropView(this);
+ }
+};
+
+DropViewContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitDropView(this);
+ }
+};
+
+DropViewContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitDropView(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.DropViewContext = DropViewContext;
+
+SqlParser.prototype.dropView = function() {
+
+ var localctx = new DropViewContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 156, SqlParser.RULE_dropView);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2720;
+ this.match(SqlParser.DROP);
+ this.state = 2721;
+ this.match(SqlParser.VIEW);
+ this.state = 2723;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.IF) {
+ this.state = 2722;
+ this.ifExists();
+ }
+
+ this.state = 2725;
+ this.fullId();
+ this.state = 2730;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 2726;
+ this.match(SqlParser.COMMA);
+ this.state = 2727;
+ this.fullId();
+ this.state = 2732;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 2734;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.CASCADE || _la===SqlParser.RESTRICT) {
+ this.state = 2733;
+ localctx.dropType = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.CASCADE || _la===SqlParser.RESTRICT)) {
+ localctx.dropType = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function RenameTableContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_renameTable;
+ return this;
+}
+
+RenameTableContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+RenameTableContext.prototype.constructor = RenameTableContext;
+
+RenameTableContext.prototype.RENAME = function() {
+ return this.getToken(SqlParser.RENAME, 0);
+};
+
+RenameTableContext.prototype.TABLE = function() {
+ return this.getToken(SqlParser.TABLE, 0);
+};
+
+RenameTableContext.prototype.renameTableClause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(RenameTableClauseContext);
+ } else {
+ return this.getTypedRuleContext(RenameTableClauseContext,i);
+ }
+};
+
+RenameTableContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+RenameTableContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterRenameTable(this);
+ }
+};
+
+RenameTableContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitRenameTable(this);
+ }
+};
+
+RenameTableContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitRenameTable(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.RenameTableContext = RenameTableContext;
+
+SqlParser.prototype.renameTable = function() {
+
+ var localctx = new RenameTableContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 158, SqlParser.RULE_renameTable);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2736;
+ this.match(SqlParser.RENAME);
+ this.state = 2737;
+ this.match(SqlParser.TABLE);
+ this.state = 2738;
+ this.renameTableClause();
+ this.state = 2743;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 2739;
+ this.match(SqlParser.COMMA);
+ this.state = 2740;
+ this.renameTableClause();
+ this.state = 2745;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function RenameTableClauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_renameTableClause;
+ return this;
+}
+
+RenameTableClauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+RenameTableClauseContext.prototype.constructor = RenameTableClauseContext;
+
+RenameTableClauseContext.prototype.tableName = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(TableNameContext);
+ } else {
+ return this.getTypedRuleContext(TableNameContext,i);
+ }
+};
+
+RenameTableClauseContext.prototype.TO = function() {
+ return this.getToken(SqlParser.TO, 0);
+};
+
+RenameTableClauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterRenameTableClause(this);
+ }
+};
+
+RenameTableClauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitRenameTableClause(this);
+ }
+};
+
+RenameTableClauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitRenameTableClause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.RenameTableClauseContext = RenameTableClauseContext;
+
+SqlParser.prototype.renameTableClause = function() {
+
+ var localctx = new RenameTableClauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 160, SqlParser.RULE_renameTableClause);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2746;
+ this.tableName();
+ this.state = 2747;
+ this.match(SqlParser.TO);
+ this.state = 2748;
+ this.tableName();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function TruncateTableContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_truncateTable;
+ return this;
+}
+
+TruncateTableContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+TruncateTableContext.prototype.constructor = TruncateTableContext;
+
+TruncateTableContext.prototype.TRUNCATE = function() {
+ return this.getToken(SqlParser.TRUNCATE, 0);
+};
+
+TruncateTableContext.prototype.tableName = function() {
+ return this.getTypedRuleContext(TableNameContext,0);
+};
+
+TruncateTableContext.prototype.TABLE = function() {
+ return this.getToken(SqlParser.TABLE, 0);
+};
+
+TruncateTableContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterTruncateTable(this);
+ }
+};
+
+TruncateTableContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitTruncateTable(this);
+ }
+};
+
+TruncateTableContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitTruncateTable(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.TruncateTableContext = TruncateTableContext;
+
+SqlParser.prototype.truncateTable = function() {
+
+ var localctx = new TruncateTableContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 162, SqlParser.RULE_truncateTable);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2750;
+ this.match(SqlParser.TRUNCATE);
+ this.state = 2752;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.TABLE) {
+ this.state = 2751;
+ this.match(SqlParser.TABLE);
+ }
+
+ this.state = 2754;
+ this.tableName();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function CallStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_callStatement;
+ return this;
+}
+
+CallStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+CallStatementContext.prototype.constructor = CallStatementContext;
+
+CallStatementContext.prototype.CALL = function() {
+ return this.getToken(SqlParser.CALL, 0);
+};
+
+CallStatementContext.prototype.fullId = function() {
+ return this.getTypedRuleContext(FullIdContext,0);
+};
+
+CallStatementContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+CallStatementContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+CallStatementContext.prototype.constants = function() {
+ return this.getTypedRuleContext(ConstantsContext,0);
+};
+
+CallStatementContext.prototype.expressions = function() {
+ return this.getTypedRuleContext(ExpressionsContext,0);
+};
+
+CallStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterCallStatement(this);
+ }
+};
+
+CallStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitCallStatement(this);
+ }
+};
+
+CallStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitCallStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.CallStatementContext = CallStatementContext;
+
+SqlParser.prototype.callStatement = function() {
+
+ var localctx = new CallStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 164, SqlParser.RULE_callStatement);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2756;
+ this.match(SqlParser.CALL);
+ this.state = 2757;
+ this.fullId();
+ this.state = 2764;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,356,this._ctx);
+ if(la_===1) {
+ this.state = 2758;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 2761;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,355,this._ctx);
+ if(la_===1) {
+ this.state = 2759;
+ this.constants();
+
+ } else if(la_===2) {
+ this.state = 2760;
+ this.expressions();
+
+ }
+ this.state = 2763;
+ this.match(SqlParser.RR_BRACKET);
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function DeleteStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_deleteStatement;
+ return this;
+}
+
+DeleteStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+DeleteStatementContext.prototype.constructor = DeleteStatementContext;
+
+DeleteStatementContext.prototype.singleDeleteStatement = function() {
+ return this.getTypedRuleContext(SingleDeleteStatementContext,0);
+};
+
+DeleteStatementContext.prototype.multipleDeleteStatement = function() {
+ return this.getTypedRuleContext(MultipleDeleteStatementContext,0);
+};
+
+DeleteStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterDeleteStatement(this);
+ }
+};
+
+DeleteStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitDeleteStatement(this);
+ }
+};
+
+DeleteStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitDeleteStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.DeleteStatementContext = DeleteStatementContext;
+
+SqlParser.prototype.deleteStatement = function() {
+
+ var localctx = new DeleteStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 166, SqlParser.RULE_deleteStatement);
+ try {
+ this.state = 2768;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,357,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2766;
+ this.singleDeleteStatement();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 2767;
+ this.multipleDeleteStatement();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function DoStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_doStatement;
+ return this;
+}
+
+DoStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+DoStatementContext.prototype.constructor = DoStatementContext;
+
+DoStatementContext.prototype.DO = function() {
+ return this.getToken(SqlParser.DO, 0);
+};
+
+DoStatementContext.prototype.expressions = function() {
+ return this.getTypedRuleContext(ExpressionsContext,0);
+};
+
+DoStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterDoStatement(this);
+ }
+};
+
+DoStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitDoStatement(this);
+ }
+};
+
+DoStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitDoStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.DoStatementContext = DoStatementContext;
+
+SqlParser.prototype.doStatement = function() {
+
+ var localctx = new DoStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 168, SqlParser.RULE_doStatement);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2770;
+ this.match(SqlParser.DO);
+ this.state = 2771;
+ this.expressions();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function HandlerStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_handlerStatement;
+ return this;
+}
+
+HandlerStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+HandlerStatementContext.prototype.constructor = HandlerStatementContext;
+
+HandlerStatementContext.prototype.handlerOpenStatement = function() {
+ return this.getTypedRuleContext(HandlerOpenStatementContext,0);
+};
+
+HandlerStatementContext.prototype.handlerReadIndexStatement = function() {
+ return this.getTypedRuleContext(HandlerReadIndexStatementContext,0);
+};
+
+HandlerStatementContext.prototype.handlerReadStatement = function() {
+ return this.getTypedRuleContext(HandlerReadStatementContext,0);
+};
+
+HandlerStatementContext.prototype.handlerCloseStatement = function() {
+ return this.getTypedRuleContext(HandlerCloseStatementContext,0);
+};
+
+HandlerStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterHandlerStatement(this);
+ }
+};
+
+HandlerStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitHandlerStatement(this);
+ }
+};
+
+HandlerStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitHandlerStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.HandlerStatementContext = HandlerStatementContext;
+
+SqlParser.prototype.handlerStatement = function() {
+
+ var localctx = new HandlerStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 170, SqlParser.RULE_handlerStatement);
+ try {
+ this.state = 2777;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,358,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2773;
+ this.handlerOpenStatement();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 2774;
+ this.handlerReadIndexStatement();
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 2775;
+ this.handlerReadStatement();
+ break;
+
+ case 4:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 2776;
+ this.handlerCloseStatement();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function InsertStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_insertStatement;
+ this.priority = null; // Token
+ this.partitions = null; // UidListContext
+ this.columns = null; // UidListContext
+ this.setFirst = null; // UpdatedElementContext
+ this._updatedElement = null; // UpdatedElementContext
+ this.setElements = []; // of UpdatedElementContexts
+ this.duplicatedFirst = null; // UpdatedElementContext
+ this.duplicatedElements = []; // of UpdatedElementContexts
+ return this;
+}
+
+InsertStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+InsertStatementContext.prototype.constructor = InsertStatementContext;
+
+InsertStatementContext.prototype.INSERT = function() {
+ return this.getToken(SqlParser.INSERT, 0);
+};
+
+InsertStatementContext.prototype.tableName = function() {
+ return this.getTypedRuleContext(TableNameContext,0);
+};
+
+InsertStatementContext.prototype.insertStatementValue = function() {
+ return this.getTypedRuleContext(InsertStatementValueContext,0);
+};
+
+InsertStatementContext.prototype.SET = function() {
+ return this.getToken(SqlParser.SET, 0);
+};
+
+InsertStatementContext.prototype.IGNORE = function() {
+ return this.getToken(SqlParser.IGNORE, 0);
+};
+
+InsertStatementContext.prototype.INTO = function() {
+ return this.getToken(SqlParser.INTO, 0);
+};
+
+InsertStatementContext.prototype.PARTITION = function() {
+ return this.getToken(SqlParser.PARTITION, 0);
+};
+
+InsertStatementContext.prototype.LR_BRACKET = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.LR_BRACKET);
+ } else {
+ return this.getToken(SqlParser.LR_BRACKET, i);
+ }
+};
+
+
+InsertStatementContext.prototype.RR_BRACKET = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.RR_BRACKET);
+ } else {
+ return this.getToken(SqlParser.RR_BRACKET, i);
+ }
+};
+
+
+InsertStatementContext.prototype.updatedElement = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UpdatedElementContext);
+ } else {
+ return this.getTypedRuleContext(UpdatedElementContext,i);
+ }
+};
+
+InsertStatementContext.prototype.ON = function() {
+ return this.getToken(SqlParser.ON, 0);
+};
+
+InsertStatementContext.prototype.DUPLICATE = function() {
+ return this.getToken(SqlParser.DUPLICATE, 0);
+};
+
+InsertStatementContext.prototype.KEY = function() {
+ return this.getToken(SqlParser.KEY, 0);
+};
+
+InsertStatementContext.prototype.UPDATE = function() {
+ return this.getToken(SqlParser.UPDATE, 0);
+};
+
+InsertStatementContext.prototype.LOW_PRIORITY = function() {
+ return this.getToken(SqlParser.LOW_PRIORITY, 0);
+};
+
+InsertStatementContext.prototype.DELAYED = function() {
+ return this.getToken(SqlParser.DELAYED, 0);
+};
+
+InsertStatementContext.prototype.HIGH_PRIORITY = function() {
+ return this.getToken(SqlParser.HIGH_PRIORITY, 0);
+};
+
+InsertStatementContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+InsertStatementContext.prototype.uidList = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UidListContext);
+ } else {
+ return this.getTypedRuleContext(UidListContext,i);
+ }
+};
+
+InsertStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterInsertStatement(this);
+ }
+};
+
+InsertStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitInsertStatement(this);
+ }
+};
+
+InsertStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitInsertStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.InsertStatementContext = InsertStatementContext;
+
+SqlParser.prototype.insertStatement = function() {
+
+ var localctx = new InsertStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 172, SqlParser.RULE_insertStatement);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2779;
+ this.match(SqlParser.INSERT);
+ this.state = 2781;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.DELAYED || _la===SqlParser.HIGH_PRIORITY || _la===SqlParser.LOW_PRIORITY) {
+ this.state = 2780;
+ localctx.priority = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.DELAYED || _la===SqlParser.HIGH_PRIORITY || _la===SqlParser.LOW_PRIORITY)) {
+ localctx.priority = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 2784;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.IGNORE) {
+ this.state = 2783;
+ this.match(SqlParser.IGNORE);
+ }
+
+ this.state = 2787;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.INTO) {
+ this.state = 2786;
+ this.match(SqlParser.INTO);
+ }
+
+ this.state = 2789;
+ this.tableName();
+ this.state = 2796;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.PARTITION) {
+ this.state = 2790;
+ this.match(SqlParser.PARTITION);
+ this.state = 2791;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 2793;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (SqlParser.CURRENT - 32)) | (1 << (SqlParser.DATABASE - 32)) | (1 << (SqlParser.DIAGNOSTICS - 32)))) !== 0) || _la===SqlParser.LEFT || _la===SqlParser.NUMBER || _la===SqlParser.RIGHT || _la===SqlParser.STACKED || ((((_la - 199)) & ~0x1f) == 0 && ((1 << (_la - 199)) & ((1 << (SqlParser.DATE - 199)) | (1 << (SqlParser.TIME - 199)) | (1 << (SqlParser.TIMESTAMP - 199)) | (1 << (SqlParser.DATETIME - 199)) | (1 << (SqlParser.YEAR - 199)) | (1 << (SqlParser.TEXT - 199)) | (1 << (SqlParser.ENUM - 199)) | (1 << (SqlParser.SERIAL - 199)))) !== 0) || ((((_la - 233)) & ~0x1f) == 0 && ((1 << (_la - 233)) & ((1 << (SqlParser.JSON_VALID - 233)) | (1 << (SqlParser.JSON_SCHEMA_VALID - 233)) | (1 << (SqlParser.COUNT - 233)) | (1 << (SqlParser.POSITION - 233)))) !== 0) || ((((_la - 270)) & ~0x1f) == 0 && ((1 << (_la - 270)) & ((1 << (SqlParser.ACCOUNT - 270)) | (1 << (SqlParser.ACTION - 270)) | (1 << (SqlParser.AFTER - 270)) | (1 << (SqlParser.AGGREGATE - 270)) | (1 << (SqlParser.ALGORITHM - 270)) | (1 << (SqlParser.ANY - 270)) | (1 << (SqlParser.AT - 270)) | (1 << (SqlParser.AUTHORS - 270)) | (1 << (SqlParser.AUTOCOMMIT - 270)) | (1 << (SqlParser.AUTOEXTEND_SIZE - 270)) | (1 << (SqlParser.AUTO_INCREMENT - 270)) | (1 << (SqlParser.AVG_ROW_LENGTH - 270)) | (1 << (SqlParser.BEGIN - 270)) | (1 << (SqlParser.BINLOG - 270)) | (1 << (SqlParser.BIT - 270)) | (1 << (SqlParser.BLOCK - 270)) | (1 << (SqlParser.BOOL - 270)) | (1 << (SqlParser.BOOLEAN - 270)) | (1 << (SqlParser.BTREE - 270)) | (1 << (SqlParser.CACHE - 270)) | (1 << (SqlParser.CASCADED - 270)) | (1 << (SqlParser.CHAIN - 270)) | (1 << (SqlParser.CHANGED - 270)) | (1 << (SqlParser.CHANNEL - 270)) | (1 << (SqlParser.CHECKSUM - 270)) | (1 << (SqlParser.PAGE_CHECKSUM - 270)) | (1 << (SqlParser.CIPHER - 270)) | (1 << (SqlParser.CLASS_ORIGIN - 270)) | (1 << (SqlParser.CLIENT - 270)) | (1 << (SqlParser.CLOSE - 270)) | (1 << (SqlParser.COALESCE - 270)) | (1 << (SqlParser.CODE - 270)))) !== 0) || ((((_la - 302)) & ~0x1f) == 0 && ((1 << (_la - 302)) & ((1 << (SqlParser.COLUMNS - 302)) | (1 << (SqlParser.COLUMN_FORMAT - 302)) | (1 << (SqlParser.COLUMN_NAME - 302)) | (1 << (SqlParser.COMMENT - 302)) | (1 << (SqlParser.COMMIT - 302)) | (1 << (SqlParser.COMPACT - 302)) | (1 << (SqlParser.COMPLETION - 302)) | (1 << (SqlParser.COMPRESSED - 302)) | (1 << (SqlParser.COMPRESSION - 302)) | (1 << (SqlParser.CONCURRENT - 302)) | (1 << (SqlParser.CONNECTION - 302)) | (1 << (SqlParser.CONSISTENT - 302)) | (1 << (SqlParser.CONSTRAINT_CATALOG - 302)) | (1 << (SqlParser.CONSTRAINT_SCHEMA - 302)) | (1 << (SqlParser.CONSTRAINT_NAME - 302)) | (1 << (SqlParser.CONTAINS - 302)) | (1 << (SqlParser.CONTEXT - 302)) | (1 << (SqlParser.CONTRIBUTORS - 302)) | (1 << (SqlParser.COPY - 302)) | (1 << (SqlParser.CPU - 302)) | (1 << (SqlParser.CURSOR_NAME - 302)) | (1 << (SqlParser.DATA - 302)) | (1 << (SqlParser.DATAFILE - 302)) | (1 << (SqlParser.DEALLOCATE - 302)) | (1 << (SqlParser.DEFAULT_AUTH - 302)) | (1 << (SqlParser.DEFINER - 302)) | (1 << (SqlParser.DELAY_KEY_WRITE - 302)) | (1 << (SqlParser.DES_KEY_FILE - 302)) | (1 << (SqlParser.DIRECTORY - 302)) | (1 << (SqlParser.DISABLE - 302)) | (1 << (SqlParser.DISCARD - 302)) | (1 << (SqlParser.DISK - 302)))) !== 0) || ((((_la - 334)) & ~0x1f) == 0 && ((1 << (_la - 334)) & ((1 << (SqlParser.DO - 334)) | (1 << (SqlParser.DUMPFILE - 334)) | (1 << (SqlParser.DUPLICATE - 334)) | (1 << (SqlParser.DYNAMIC - 334)) | (1 << (SqlParser.ENABLE - 334)) | (1 << (SqlParser.ENCRYPTION - 334)) | (1 << (SqlParser.END - 334)) | (1 << (SqlParser.ENDS - 334)) | (1 << (SqlParser.ENGINE - 334)) | (1 << (SqlParser.ENGINES - 334)) | (1 << (SqlParser.ERROR - 334)) | (1 << (SqlParser.ERRORS - 334)) | (1 << (SqlParser.ESCAPE - 334)) | (1 << (SqlParser.EVEN - 334)) | (1 << (SqlParser.EVENT - 334)) | (1 << (SqlParser.EVENTS - 334)) | (1 << (SqlParser.EVERY - 334)) | (1 << (SqlParser.EXCHANGE - 334)) | (1 << (SqlParser.EXCLUSIVE - 334)) | (1 << (SqlParser.EXPIRE - 334)) | (1 << (SqlParser.EXPORT - 334)) | (1 << (SqlParser.EXTENDED - 334)) | (1 << (SqlParser.EXTENT_SIZE - 334)) | (1 << (SqlParser.FAST - 334)) | (1 << (SqlParser.FAULTS - 334)) | (1 << (SqlParser.FIELDS - 334)) | (1 << (SqlParser.FILE_BLOCK_SIZE - 334)) | (1 << (SqlParser.FILTER - 334)) | (1 << (SqlParser.FIRST - 334)) | (1 << (SqlParser.FIXED - 334)) | (1 << (SqlParser.FLUSH - 334)) | (1 << (SqlParser.FOLLOWS - 334)))) !== 0) || ((((_la - 366)) & ~0x1f) == 0 && ((1 << (_la - 366)) & ((1 << (SqlParser.FOUND - 366)) | (1 << (SqlParser.FULL - 366)) | (1 << (SqlParser.FUNCTION - 366)) | (1 << (SqlParser.GENERAL - 366)) | (1 << (SqlParser.GLOBAL - 366)) | (1 << (SqlParser.GRANTS - 366)) | (1 << (SqlParser.GROUP_REPLICATION - 366)) | (1 << (SqlParser.HANDLER - 366)) | (1 << (SqlParser.HASH - 366)) | (1 << (SqlParser.HELP - 366)) | (1 << (SqlParser.HOST - 366)) | (1 << (SqlParser.HOSTS - 366)) | (1 << (SqlParser.IDENTIFIED - 366)) | (1 << (SqlParser.IGNORE_SERVER_IDS - 366)) | (1 << (SqlParser.IMPORT - 366)) | (1 << (SqlParser.INDEXES - 366)) | (1 << (SqlParser.INITIAL_SIZE - 366)) | (1 << (SqlParser.INPLACE - 366)) | (1 << (SqlParser.INSERT_METHOD - 366)) | (1 << (SqlParser.INSTALL - 366)) | (1 << (SqlParser.INSTANCE - 366)) | (1 << (SqlParser.INVISIBLE - 366)) | (1 << (SqlParser.INVOKER - 366)) | (1 << (SqlParser.IO - 366)) | (1 << (SqlParser.IO_THREAD - 366)) | (1 << (SqlParser.IPC - 366)) | (1 << (SqlParser.ISOLATION - 366)) | (1 << (SqlParser.ISSUER - 366)) | (1 << (SqlParser.JSON - 366)) | (1 << (SqlParser.KEY_BLOCK_SIZE - 366)) | (1 << (SqlParser.LANGUAGE - 366)) | (1 << (SqlParser.LAST - 366)))) !== 0) || ((((_la - 398)) & ~0x1f) == 0 && ((1 << (_la - 398)) & ((1 << (SqlParser.LEAVES - 398)) | (1 << (SqlParser.LESS - 398)) | (1 << (SqlParser.LEVEL - 398)) | (1 << (SqlParser.LIST - 398)) | (1 << (SqlParser.LOCAL - 398)) | (1 << (SqlParser.LOGFILE - 398)) | (1 << (SqlParser.LOGS - 398)) | (1 << (SqlParser.MASTER - 398)) | (1 << (SqlParser.MASTER_AUTO_POSITION - 398)) | (1 << (SqlParser.MASTER_CONNECT_RETRY - 398)) | (1 << (SqlParser.MASTER_DELAY - 398)) | (1 << (SqlParser.MASTER_HEARTBEAT_PERIOD - 398)) | (1 << (SqlParser.MASTER_HOST - 398)) | (1 << (SqlParser.MASTER_LOG_FILE - 398)) | (1 << (SqlParser.MASTER_LOG_POS - 398)) | (1 << (SqlParser.MASTER_PASSWORD - 398)) | (1 << (SqlParser.MASTER_PORT - 398)) | (1 << (SqlParser.MASTER_RETRY_COUNT - 398)) | (1 << (SqlParser.MASTER_SSL - 398)) | (1 << (SqlParser.MASTER_SSL_CA - 398)) | (1 << (SqlParser.MASTER_SSL_CAPATH - 398)) | (1 << (SqlParser.MASTER_SSL_CERT - 398)) | (1 << (SqlParser.MASTER_SSL_CIPHER - 398)) | (1 << (SqlParser.MASTER_SSL_CRL - 398)) | (1 << (SqlParser.MASTER_SSL_CRLPATH - 398)) | (1 << (SqlParser.MASTER_SSL_KEY - 398)) | (1 << (SqlParser.MASTER_TLS_VERSION - 398)) | (1 << (SqlParser.MASTER_USER - 398)) | (1 << (SqlParser.MAX_CONNECTIONS_PER_HOUR - 398)) | (1 << (SqlParser.MAX_QUERIES_PER_HOUR - 398)) | (1 << (SqlParser.MAX_ROWS - 398)) | (1 << (SqlParser.MAX_SIZE - 398)))) !== 0) || ((((_la - 430)) & ~0x1f) == 0 && ((1 << (_la - 430)) & ((1 << (SqlParser.MAX_UPDATES_PER_HOUR - 430)) | (1 << (SqlParser.MAX_USER_CONNECTIONS - 430)) | (1 << (SqlParser.MEDIUM - 430)) | (1 << (SqlParser.MERGE - 430)) | (1 << (SqlParser.MESSAGE_TEXT - 430)) | (1 << (SqlParser.MID - 430)) | (1 << (SqlParser.MIGRATE - 430)) | (1 << (SqlParser.MIN_ROWS - 430)) | (1 << (SqlParser.MODE - 430)) | (1 << (SqlParser.MODIFY - 430)) | (1 << (SqlParser.MUTEX - 430)) | (1 << (SqlParser.MYSQL - 430)) | (1 << (SqlParser.MYSQL_ERRNO - 430)) | (1 << (SqlParser.NAME - 430)) | (1 << (SqlParser.NAMES - 430)) | (1 << (SqlParser.NCHAR - 430)) | (1 << (SqlParser.NEVER - 430)) | (1 << (SqlParser.NEXT - 430)) | (1 << (SqlParser.NO - 430)) | (1 << (SqlParser.NODEGROUP - 430)) | (1 << (SqlParser.NONE - 430)) | (1 << (SqlParser.OFFLINE - 430)) | (1 << (SqlParser.OFFSET - 430)) | (1 << (SqlParser.OJ - 430)) | (1 << (SqlParser.OLD_PASSWORD - 430)) | (1 << (SqlParser.ONE - 430)) | (1 << (SqlParser.ONLINE - 430)) | (1 << (SqlParser.ONLY - 430)) | (1 << (SqlParser.OPEN - 430)) | (1 << (SqlParser.OPTIMIZER_COSTS - 430)) | (1 << (SqlParser.OPTIONS - 430)) | (1 << (SqlParser.OWNER - 430)))) !== 0) || ((((_la - 462)) & ~0x1f) == 0 && ((1 << (_la - 462)) & ((1 << (SqlParser.PACK_KEYS - 462)) | (1 << (SqlParser.PAGE - 462)) | (1 << (SqlParser.PARSER - 462)) | (1 << (SqlParser.PARTIAL - 462)) | (1 << (SqlParser.PARTITIONING - 462)) | (1 << (SqlParser.PARTITIONS - 462)) | (1 << (SqlParser.PASSWORD - 462)) | (1 << (SqlParser.PHASE - 462)) | (1 << (SqlParser.PLUGIN - 462)) | (1 << (SqlParser.PLUGIN_DIR - 462)) | (1 << (SqlParser.PLUGINS - 462)) | (1 << (SqlParser.PORT - 462)) | (1 << (SqlParser.PRECEDES - 462)) | (1 << (SqlParser.PREPARE - 462)) | (1 << (SqlParser.PRESERVE - 462)) | (1 << (SqlParser.PREV - 462)) | (1 << (SqlParser.PROCESSLIST - 462)) | (1 << (SqlParser.PROFILE - 462)) | (1 << (SqlParser.PROFILES - 462)) | (1 << (SqlParser.PROXY - 462)) | (1 << (SqlParser.QUERY - 462)) | (1 << (SqlParser.QUICK - 462)) | (1 << (SqlParser.REBUILD - 462)) | (1 << (SqlParser.RECOVER - 462)) | (1 << (SqlParser.REDO_BUFFER_SIZE - 462)) | (1 << (SqlParser.REDUNDANT - 462)) | (1 << (SqlParser.RELAY - 462)) | (1 << (SqlParser.RELAY_LOG_FILE - 462)) | (1 << (SqlParser.RELAY_LOG_POS - 462)) | (1 << (SqlParser.RELAYLOG - 462)) | (1 << (SqlParser.REMOVE - 462)) | (1 << (SqlParser.REORGANIZE - 462)))) !== 0) || ((((_la - 494)) & ~0x1f) == 0 && ((1 << (_la - 494)) & ((1 << (SqlParser.REPAIR - 494)) | (1 << (SqlParser.REPLICATE_DO_DB - 494)) | (1 << (SqlParser.REPLICATE_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_DB - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATE_REWRITE_DB - 494)) | (1 << (SqlParser.REPLICATE_WILD_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_WILD_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATION - 494)) | (1 << (SqlParser.RESET - 494)) | (1 << (SqlParser.RESUME - 494)) | (1 << (SqlParser.RETURNED_SQLSTATE - 494)) | (1 << (SqlParser.RETURNS - 494)) | (1 << (SqlParser.ROLE - 494)) | (1 << (SqlParser.ROLLBACK - 494)) | (1 << (SqlParser.ROLLUP - 494)) | (1 << (SqlParser.ROTATE - 494)) | (1 << (SqlParser.ROW - 494)) | (1 << (SqlParser.ROWS - 494)) | (1 << (SqlParser.ROW_FORMAT - 494)) | (1 << (SqlParser.SAVEPOINT - 494)) | (1 << (SqlParser.SCHEDULE - 494)) | (1 << (SqlParser.SECURITY - 494)) | (1 << (SqlParser.SERVER - 494)) | (1 << (SqlParser.SESSION - 494)) | (1 << (SqlParser.SHARE - 494)) | (1 << (SqlParser.SHARED - 494)) | (1 << (SqlParser.SIGNED - 494)) | (1 << (SqlParser.SIMPLE - 494)) | (1 << (SqlParser.SLAVE - 494)) | (1 << (SqlParser.SLOW - 494)) | (1 << (SqlParser.SNAPSHOT - 494)))) !== 0) || ((((_la - 526)) & ~0x1f) == 0 && ((1 << (_la - 526)) & ((1 << (SqlParser.SOCKET - 526)) | (1 << (SqlParser.SOME - 526)) | (1 << (SqlParser.SONAME - 526)) | (1 << (SqlParser.SOUNDS - 526)) | (1 << (SqlParser.SOURCE - 526)) | (1 << (SqlParser.SQL_AFTER_GTIDS - 526)) | (1 << (SqlParser.SQL_AFTER_MTS_GAPS - 526)) | (1 << (SqlParser.SQL_BEFORE_GTIDS - 526)) | (1 << (SqlParser.SQL_BUFFER_RESULT - 526)) | (1 << (SqlParser.SQL_CACHE - 526)) | (1 << (SqlParser.SQL_NO_CACHE - 526)) | (1 << (SqlParser.SQL_THREAD - 526)) | (1 << (SqlParser.START - 526)) | (1 << (SqlParser.STARTS - 526)) | (1 << (SqlParser.STATS_AUTO_RECALC - 526)) | (1 << (SqlParser.STATS_PERSISTENT - 526)) | (1 << (SqlParser.STATS_SAMPLE_PAGES - 526)) | (1 << (SqlParser.STATUS - 526)) | (1 << (SqlParser.STOP - 526)) | (1 << (SqlParser.STORAGE - 526)) | (1 << (SqlParser.STRING - 526)) | (1 << (SqlParser.SUBCLASS_ORIGIN - 526)) | (1 << (SqlParser.SUBJECT - 526)) | (1 << (SqlParser.SUBPARTITION - 526)) | (1 << (SqlParser.SUBPARTITIONS - 526)) | (1 << (SqlParser.SUSPEND - 526)) | (1 << (SqlParser.SWAPS - 526)) | (1 << (SqlParser.SWITCHES - 526)) | (1 << (SqlParser.TABLE_NAME - 526)) | (1 << (SqlParser.TABLESPACE - 526)) | (1 << (SqlParser.TEMPORARY - 526)))) !== 0) || ((((_la - 558)) & ~0x1f) == 0 && ((1 << (_la - 558)) & ((1 << (SqlParser.TEMPTABLE - 558)) | (1 << (SqlParser.THAN - 558)) | (1 << (SqlParser.TRADITIONAL - 558)) | (1 << (SqlParser.TRANSACTION - 558)) | (1 << (SqlParser.TRANSACTIONAL - 558)) | (1 << (SqlParser.TRIGGERS - 558)) | (1 << (SqlParser.TRUNCATE - 558)) | (1 << (SqlParser.UNDEFINED - 558)) | (1 << (SqlParser.UNDOFILE - 558)) | (1 << (SqlParser.UNDO_BUFFER_SIZE - 558)) | (1 << (SqlParser.UNINSTALL - 558)) | (1 << (SqlParser.UNKNOWN - 558)) | (1 << (SqlParser.UNTIL - 558)) | (1 << (SqlParser.UPGRADE - 558)) | (1 << (SqlParser.USER - 558)) | (1 << (SqlParser.USE_FRM - 558)) | (1 << (SqlParser.USER_RESOURCES - 558)) | (1 << (SqlParser.VALIDATION - 558)) | (1 << (SqlParser.VALUE - 558)) | (1 << (SqlParser.VARIABLES - 558)) | (1 << (SqlParser.VIEW - 558)) | (1 << (SqlParser.VISIBLE - 558)) | (1 << (SqlParser.WAIT - 558)) | (1 << (SqlParser.WARNINGS - 558)) | (1 << (SqlParser.WITHOUT - 558)) | (1 << (SqlParser.WORK - 558)) | (1 << (SqlParser.WRAPPER - 558)) | (1 << (SqlParser.X509 - 558)) | (1 << (SqlParser.XA - 558)) | (1 << (SqlParser.XML - 558)))) !== 0) || ((((_la - 593)) & ~0x1f) == 0 && ((1 << (_la - 593)) & ((1 << (SqlParser.INTERNAL - 593)) | (1 << (SqlParser.QUARTER - 593)) | (1 << (SqlParser.MONTH - 593)) | (1 << (SqlParser.DAY - 593)) | (1 << (SqlParser.HOUR - 593)) | (1 << (SqlParser.MINUTE - 593)) | (1 << (SqlParser.WEEK - 593)) | (1 << (SqlParser.SECOND - 593)) | (1 << (SqlParser.MICROSECOND - 593)) | (1 << (SqlParser.TABLES - 593)) | (1 << (SqlParser.ROUTINE - 593)) | (1 << (SqlParser.EXECUTE - 593)) | (1 << (SqlParser.FILE - 593)) | (1 << (SqlParser.PROCESS - 593)) | (1 << (SqlParser.RELOAD - 593)) | (1 << (SqlParser.SHUTDOWN - 593)) | (1 << (SqlParser.SUPER - 593)) | (1 << (SqlParser.PRIVILEGES - 593)) | (1 << (SqlParser.AUDIT_ADMIN - 593)) | (1 << (SqlParser.BACKUP_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ENCRYPTION_ADMIN - 593)) | (1 << (SqlParser.CLONE_ADMIN - 593)) | (1 << (SqlParser.CONNECTION_ADMIN - 593)) | (1 << (SqlParser.ENCRYPTION_KEY_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_USER - 593)) | (1 << (SqlParser.GROUP_REPLICATION_ADMIN - 593)) | (1 << (SqlParser.INNODB_REDO_LOG_ARCHIVE - 593)) | (1 << (SqlParser.NDB_STORED_USER - 593)) | (1 << (SqlParser.PERSIST_RO_VARIABLES_ADMIN - 593)))) !== 0) || ((((_la - 625)) & ~0x1f) == 0 && ((1 << (_la - 625)) & ((1 << (SqlParser.REPLICATION_APPLIER - 625)) | (1 << (SqlParser.REPLICATION_SLAVE_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_USER - 625)) | (1 << (SqlParser.ROLE_ADMIN - 625)) | (1 << (SqlParser.SESSION_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.SET_USER_ID - 625)) | (1 << (SqlParser.SHOW_ROUTINE - 625)) | (1 << (SqlParser.SYSTEM_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.TABLE_ENCRYPTION_ADMIN - 625)) | (1 << (SqlParser.VERSION_TOKEN_ADMIN - 625)) | (1 << (SqlParser.XA_RECOVER_ADMIN - 625)) | (1 << (SqlParser.ARMSCII8 - 625)) | (1 << (SqlParser.ASCII - 625)) | (1 << (SqlParser.BIG5 - 625)) | (1 << (SqlParser.CP1250 - 625)) | (1 << (SqlParser.CP1251 - 625)) | (1 << (SqlParser.CP1256 - 625)) | (1 << (SqlParser.CP1257 - 625)) | (1 << (SqlParser.CP850 - 625)) | (1 << (SqlParser.CP852 - 625)) | (1 << (SqlParser.CP866 - 625)) | (1 << (SqlParser.CP932 - 625)) | (1 << (SqlParser.DEC8 - 625)) | (1 << (SqlParser.EUCJPMS - 625)) | (1 << (SqlParser.EUCKR - 625)) | (1 << (SqlParser.GB2312 - 625)) | (1 << (SqlParser.GBK - 625)) | (1 << (SqlParser.GEOSTD8 - 625)) | (1 << (SqlParser.GREEK - 625)) | (1 << (SqlParser.HEBREW - 625)) | (1 << (SqlParser.HP8 - 625)))) !== 0) || ((((_la - 657)) & ~0x1f) == 0 && ((1 << (_la - 657)) & ((1 << (SqlParser.KEYBCS2 - 657)) | (1 << (SqlParser.KOI8R - 657)) | (1 << (SqlParser.KOI8U - 657)) | (1 << (SqlParser.LATIN1 - 657)) | (1 << (SqlParser.LATIN2 - 657)) | (1 << (SqlParser.LATIN5 - 657)) | (1 << (SqlParser.LATIN7 - 657)) | (1 << (SqlParser.MACCE - 657)) | (1 << (SqlParser.MACROMAN - 657)) | (1 << (SqlParser.SJIS - 657)) | (1 << (SqlParser.SWE7 - 657)) | (1 << (SqlParser.TIS620 - 657)) | (1 << (SqlParser.UCS2 - 657)) | (1 << (SqlParser.UJIS - 657)) | (1 << (SqlParser.UTF16 - 657)) | (1 << (SqlParser.UTF16LE - 657)) | (1 << (SqlParser.UTF32 - 657)) | (1 << (SqlParser.UTF8 - 657)) | (1 << (SqlParser.UTF8MB3 - 657)) | (1 << (SqlParser.UTF8MB4 - 657)) | (1 << (SqlParser.ARCHIVE - 657)) | (1 << (SqlParser.BLACKHOLE - 657)) | (1 << (SqlParser.CSV - 657)) | (1 << (SqlParser.FEDERATED - 657)) | (1 << (SqlParser.INNODB - 657)) | (1 << (SqlParser.MEMORY - 657)) | (1 << (SqlParser.MRG_MYISAM - 657)) | (1 << (SqlParser.MYISAM - 657)) | (1 << (SqlParser.NDB - 657)) | (1 << (SqlParser.NDBCLUSTER - 657)) | (1 << (SqlParser.PERFORMANCE_SCHEMA - 657)) | (1 << (SqlParser.TOKUDB - 657)))) !== 0) || ((((_la - 689)) & ~0x1f) == 0 && ((1 << (_la - 689)) & ((1 << (SqlParser.REPEATABLE - 689)) | (1 << (SqlParser.COMMITTED - 689)) | (1 << (SqlParser.UNCOMMITTED - 689)) | (1 << (SqlParser.SERIALIZABLE - 689)) | (1 << (SqlParser.GEOMETRYCOLLECTION - 689)) | (1 << (SqlParser.LINESTRING - 689)) | (1 << (SqlParser.MULTILINESTRING - 689)) | (1 << (SqlParser.MULTIPOINT - 689)) | (1 << (SqlParser.MULTIPOLYGON - 689)) | (1 << (SqlParser.POINT - 689)) | (1 << (SqlParser.POLYGON - 689)) | (1 << (SqlParser.ABS - 689)) | (1 << (SqlParser.ACOS - 689)) | (1 << (SqlParser.ADDDATE - 689)) | (1 << (SqlParser.ADDTIME - 689)) | (1 << (SqlParser.AES_DECRYPT - 689)) | (1 << (SqlParser.AES_ENCRYPT - 689)) | (1 << (SqlParser.AREA - 689)) | (1 << (SqlParser.ASBINARY - 689)) | (1 << (SqlParser.ASIN - 689)) | (1 << (SqlParser.ASTEXT - 689)) | (1 << (SqlParser.ASWKB - 689)) | (1 << (SqlParser.ASWKT - 689)) | (1 << (SqlParser.ASYMMETRIC_DECRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_DERIVE - 689)) | (1 << (SqlParser.ASYMMETRIC_ENCRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_SIGN - 689)) | (1 << (SqlParser.ASYMMETRIC_VERIFY - 689)) | (1 << (SqlParser.ATAN - 689)) | (1 << (SqlParser.ATAN2 - 689)))) !== 0) || ((((_la - 721)) & ~0x1f) == 0 && ((1 << (_la - 721)) & ((1 << (SqlParser.BENCHMARK - 721)) | (1 << (SqlParser.BIN - 721)) | (1 << (SqlParser.BIT_COUNT - 721)) | (1 << (SqlParser.BIT_LENGTH - 721)) | (1 << (SqlParser.BUFFER - 721)) | (1 << (SqlParser.CATALOG_NAME - 721)) | (1 << (SqlParser.CEIL - 721)) | (1 << (SqlParser.CEILING - 721)) | (1 << (SqlParser.CENTROID - 721)) | (1 << (SqlParser.CHARACTER_LENGTH - 721)) | (1 << (SqlParser.CHARSET - 721)) | (1 << (SqlParser.CHAR_LENGTH - 721)) | (1 << (SqlParser.COERCIBILITY - 721)) | (1 << (SqlParser.COLLATION - 721)) | (1 << (SqlParser.COMPRESS - 721)) | (1 << (SqlParser.CONCAT - 721)) | (1 << (SqlParser.CONCAT_WS - 721)) | (1 << (SqlParser.CONNECTION_ID - 721)) | (1 << (SqlParser.CONV - 721)) | (1 << (SqlParser.CONVERT_TZ - 721)) | (1 << (SqlParser.COS - 721)) | (1 << (SqlParser.COT - 721)) | (1 << (SqlParser.CRC32 - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PRIV_KEY - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PUB_KEY - 721)) | (1 << (SqlParser.CREATE_DH_PARAMETERS - 721)) | (1 << (SqlParser.CREATE_DIGEST - 721)) | (1 << (SqlParser.CROSSES - 721)) | (1 << (SqlParser.DATEDIFF - 721)) | (1 << (SqlParser.DATE_FORMAT - 721)) | (1 << (SqlParser.DAYNAME - 721)) | (1 << (SqlParser.DAYOFMONTH - 721)))) !== 0) || ((((_la - 753)) & ~0x1f) == 0 && ((1 << (_la - 753)) & ((1 << (SqlParser.DAYOFWEEK - 753)) | (1 << (SqlParser.DAYOFYEAR - 753)) | (1 << (SqlParser.DECODE - 753)) | (1 << (SqlParser.DEGREES - 753)) | (1 << (SqlParser.DES_DECRYPT - 753)) | (1 << (SqlParser.DES_ENCRYPT - 753)) | (1 << (SqlParser.DIMENSION - 753)) | (1 << (SqlParser.DISJOINT - 753)) | (1 << (SqlParser.ELT - 753)) | (1 << (SqlParser.ENCODE - 753)) | (1 << (SqlParser.ENCRYPT - 753)) | (1 << (SqlParser.ENDPOINT - 753)) | (1 << (SqlParser.ENVELOPE - 753)) | (1 << (SqlParser.EQUALS - 753)) | (1 << (SqlParser.EXP - 753)) | (1 << (SqlParser.EXPORT_SET - 753)) | (1 << (SqlParser.EXTERIORRING - 753)) | (1 << (SqlParser.EXTRACTVALUE - 753)) | (1 << (SqlParser.FIELD - 753)) | (1 << (SqlParser.FIND_IN_SET - 753)) | (1 << (SqlParser.FLOOR - 753)) | (1 << (SqlParser.FORMAT - 753)) | (1 << (SqlParser.FOUND_ROWS - 753)) | (1 << (SqlParser.FROM_BASE64 - 753)) | (1 << (SqlParser.FROM_DAYS - 753)) | (1 << (SqlParser.FROM_UNIXTIME - 753)) | (1 << (SqlParser.GEOMCOLLFROMTEXT - 753)) | (1 << (SqlParser.GEOMCOLLFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYFROMWKB - 753)))) !== 0) || ((((_la - 785)) & ~0x1f) == 0 && ((1 << (_la - 785)) & ((1 << (SqlParser.GEOMETRYN - 785)) | (1 << (SqlParser.GEOMETRYTYPE - 785)) | (1 << (SqlParser.GEOMFROMTEXT - 785)) | (1 << (SqlParser.GEOMFROMWKB - 785)) | (1 << (SqlParser.GET_FORMAT - 785)) | (1 << (SqlParser.GET_LOCK - 785)) | (1 << (SqlParser.GLENGTH - 785)) | (1 << (SqlParser.GREATEST - 785)) | (1 << (SqlParser.GTID_SUBSET - 785)) | (1 << (SqlParser.GTID_SUBTRACT - 785)) | (1 << (SqlParser.HEX - 785)) | (1 << (SqlParser.IFNULL - 785)) | (1 << (SqlParser.INET6_ATON - 785)) | (1 << (SqlParser.INET6_NTOA - 785)) | (1 << (SqlParser.INET_ATON - 785)) | (1 << (SqlParser.INET_NTOA - 785)) | (1 << (SqlParser.INSTR - 785)) | (1 << (SqlParser.INTERIORRINGN - 785)) | (1 << (SqlParser.INTERSECTS - 785)) | (1 << (SqlParser.ISCLOSED - 785)) | (1 << (SqlParser.ISEMPTY - 785)) | (1 << (SqlParser.ISNULL - 785)) | (1 << (SqlParser.ISSIMPLE - 785)) | (1 << (SqlParser.IS_FREE_LOCK - 785)) | (1 << (SqlParser.IS_IPV4 - 785)) | (1 << (SqlParser.IS_IPV4_COMPAT - 785)) | (1 << (SqlParser.IS_IPV4_MAPPED - 785)) | (1 << (SqlParser.IS_IPV6 - 785)) | (1 << (SqlParser.IS_USED_LOCK - 785)) | (1 << (SqlParser.LAST_INSERT_ID - 785)) | (1 << (SqlParser.LCASE - 785)) | (1 << (SqlParser.LEAST - 785)))) !== 0) || ((((_la - 817)) & ~0x1f) == 0 && ((1 << (_la - 817)) & ((1 << (SqlParser.LENGTH - 817)) | (1 << (SqlParser.LINEFROMTEXT - 817)) | (1 << (SqlParser.LINEFROMWKB - 817)) | (1 << (SqlParser.LINESTRINGFROMTEXT - 817)) | (1 << (SqlParser.LINESTRINGFROMWKB - 817)) | (1 << (SqlParser.LN - 817)) | (1 << (SqlParser.LOAD_FILE - 817)) | (1 << (SqlParser.LOCATE - 817)) | (1 << (SqlParser.LOG - 817)) | (1 << (SqlParser.LOG10 - 817)) | (1 << (SqlParser.LOG2 - 817)) | (1 << (SqlParser.LOWER - 817)) | (1 << (SqlParser.LPAD - 817)) | (1 << (SqlParser.LTRIM - 817)) | (1 << (SqlParser.MAKEDATE - 817)) | (1 << (SqlParser.MAKETIME - 817)) | (1 << (SqlParser.MAKE_SET - 817)) | (1 << (SqlParser.MASTER_POS_WAIT - 817)) | (1 << (SqlParser.MBRCONTAINS - 817)) | (1 << (SqlParser.MBRDISJOINT - 817)) | (1 << (SqlParser.MBREQUAL - 817)) | (1 << (SqlParser.MBRINTERSECTS - 817)) | (1 << (SqlParser.MBROVERLAPS - 817)) | (1 << (SqlParser.MBRTOUCHES - 817)) | (1 << (SqlParser.MBRWITHIN - 817)) | (1 << (SqlParser.MD5 - 817)) | (1 << (SqlParser.MLINEFROMTEXT - 817)) | (1 << (SqlParser.MLINEFROMWKB - 817)) | (1 << (SqlParser.MONTHNAME - 817)) | (1 << (SqlParser.MPOINTFROMTEXT - 817)) | (1 << (SqlParser.MPOINTFROMWKB - 817)) | (1 << (SqlParser.MPOLYFROMTEXT - 817)))) !== 0) || ((((_la - 849)) & ~0x1f) == 0 && ((1 << (_la - 849)) & ((1 << (SqlParser.MPOLYFROMWKB - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMTEXT - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMWKB - 849)) | (1 << (SqlParser.MULTIPOINTFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOINTFROMWKB - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMWKB - 849)) | (1 << (SqlParser.NAME_CONST - 849)) | (1 << (SqlParser.NULLIF - 849)) | (1 << (SqlParser.NUMGEOMETRIES - 849)) | (1 << (SqlParser.NUMINTERIORRINGS - 849)) | (1 << (SqlParser.NUMPOINTS - 849)) | (1 << (SqlParser.OCT - 849)) | (1 << (SqlParser.OCTET_LENGTH - 849)) | (1 << (SqlParser.ORD - 849)) | (1 << (SqlParser.OVERLAPS - 849)) | (1 << (SqlParser.PERIOD_ADD - 849)) | (1 << (SqlParser.PERIOD_DIFF - 849)) | (1 << (SqlParser.PI - 849)) | (1 << (SqlParser.POINTFROMTEXT - 849)) | (1 << (SqlParser.POINTFROMWKB - 849)) | (1 << (SqlParser.POINTN - 849)) | (1 << (SqlParser.POLYFROMTEXT - 849)) | (1 << (SqlParser.POLYFROMWKB - 849)) | (1 << (SqlParser.POLYGONFROMTEXT - 849)) | (1 << (SqlParser.POLYGONFROMWKB - 849)) | (1 << (SqlParser.POW - 849)) | (1 << (SqlParser.POWER - 849)) | (1 << (SqlParser.QUOTE - 849)) | (1 << (SqlParser.RADIANS - 849)) | (1 << (SqlParser.RAND - 849)) | (1 << (SqlParser.RANDOM_BYTES - 849)))) !== 0) || ((((_la - 881)) & ~0x1f) == 0 && ((1 << (_la - 881)) & ((1 << (SqlParser.RELEASE_LOCK - 881)) | (1 << (SqlParser.REVERSE - 881)) | (1 << (SqlParser.ROUND - 881)) | (1 << (SqlParser.ROW_COUNT - 881)) | (1 << (SqlParser.RPAD - 881)) | (1 << (SqlParser.RTRIM - 881)) | (1 << (SqlParser.SEC_TO_TIME - 881)) | (1 << (SqlParser.SESSION_USER - 881)) | (1 << (SqlParser.SHA - 881)) | (1 << (SqlParser.SHA1 - 881)) | (1 << (SqlParser.SHA2 - 881)) | (1 << (SqlParser.SCHEMA_NAME - 881)) | (1 << (SqlParser.SIGN - 881)) | (1 << (SqlParser.SIN - 881)) | (1 << (SqlParser.SLEEP - 881)) | (1 << (SqlParser.SOUNDEX - 881)) | (1 << (SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS - 881)) | (1 << (SqlParser.SQRT - 881)) | (1 << (SqlParser.SRID - 881)) | (1 << (SqlParser.STARTPOINT - 881)) | (1 << (SqlParser.STRCMP - 881)) | (1 << (SqlParser.STR_TO_DATE - 881)) | (1 << (SqlParser.ST_AREA - 881)) | (1 << (SqlParser.ST_ASBINARY - 881)) | (1 << (SqlParser.ST_ASTEXT - 881)) | (1 << (SqlParser.ST_ASWKB - 881)) | (1 << (SqlParser.ST_ASWKT - 881)) | (1 << (SqlParser.ST_BUFFER - 881)) | (1 << (SqlParser.ST_CENTROID - 881)) | (1 << (SqlParser.ST_CONTAINS - 881)) | (1 << (SqlParser.ST_CROSSES - 881)) | (1 << (SqlParser.ST_DIFFERENCE - 881)))) !== 0) || ((((_la - 913)) & ~0x1f) == 0 && ((1 << (_la - 913)) & ((1 << (SqlParser.ST_DIMENSION - 913)) | (1 << (SqlParser.ST_DISJOINT - 913)) | (1 << (SqlParser.ST_DISTANCE - 913)) | (1 << (SqlParser.ST_ENDPOINT - 913)) | (1 << (SqlParser.ST_ENVELOPE - 913)) | (1 << (SqlParser.ST_EQUALS - 913)) | (1 << (SqlParser.ST_EXTERIORRING - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYN - 913)) | (1 << (SqlParser.ST_GEOMETRYTYPE - 913)) | (1 << (SqlParser.ST_GEOMFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMFROMWKB - 913)) | (1 << (SqlParser.ST_INTERIORRINGN - 913)) | (1 << (SqlParser.ST_INTERSECTION - 913)) | (1 << (SqlParser.ST_INTERSECTS - 913)) | (1 << (SqlParser.ST_ISCLOSED - 913)) | (1 << (SqlParser.ST_ISEMPTY - 913)) | (1 << (SqlParser.ST_ISSIMPLE - 913)) | (1 << (SqlParser.ST_LINEFROMTEXT - 913)) | (1 << (SqlParser.ST_LINEFROMWKB - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMTEXT - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMWKB - 913)) | (1 << (SqlParser.ST_NUMGEOMETRIES - 913)) | (1 << (SqlParser.ST_NUMINTERIORRING - 913)) | (1 << (SqlParser.ST_NUMINTERIORRINGS - 913)) | (1 << (SqlParser.ST_NUMPOINTS - 913)))) !== 0) || ((((_la - 945)) & ~0x1f) == 0 && ((1 << (_la - 945)) & ((1 << (SqlParser.ST_OVERLAPS - 945)) | (1 << (SqlParser.ST_POINTFROMTEXT - 945)) | (1 << (SqlParser.ST_POINTFROMWKB - 945)) | (1 << (SqlParser.ST_POINTN - 945)) | (1 << (SqlParser.ST_POLYFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYFROMWKB - 945)) | (1 << (SqlParser.ST_POLYGONFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYGONFROMWKB - 945)) | (1 << (SqlParser.ST_SRID - 945)) | (1 << (SqlParser.ST_STARTPOINT - 945)) | (1 << (SqlParser.ST_SYMDIFFERENCE - 945)) | (1 << (SqlParser.ST_TOUCHES - 945)) | (1 << (SqlParser.ST_UNION - 945)) | (1 << (SqlParser.ST_WITHIN - 945)) | (1 << (SqlParser.ST_X - 945)) | (1 << (SqlParser.ST_Y - 945)) | (1 << (SqlParser.SUBDATE - 945)) | (1 << (SqlParser.SUBSTRING_INDEX - 945)) | (1 << (SqlParser.SUBTIME - 945)) | (1 << (SqlParser.SYSTEM_USER - 945)) | (1 << (SqlParser.TAN - 945)) | (1 << (SqlParser.TIMEDIFF - 945)) | (1 << (SqlParser.TIMESTAMPADD - 945)) | (1 << (SqlParser.TIMESTAMPDIFF - 945)) | (1 << (SqlParser.TIME_FORMAT - 945)) | (1 << (SqlParser.TIME_TO_SEC - 945)) | (1 << (SqlParser.TOUCHES - 945)) | (1 << (SqlParser.TO_BASE64 - 945)) | (1 << (SqlParser.TO_DAYS - 945)) | (1 << (SqlParser.TO_SECONDS - 945)) | (1 << (SqlParser.UCASE - 945)) | (1 << (SqlParser.UNCOMPRESS - 945)))) !== 0) || ((((_la - 977)) & ~0x1f) == 0 && ((1 << (_la - 977)) & ((1 << (SqlParser.UNCOMPRESSED_LENGTH - 977)) | (1 << (SqlParser.UNHEX - 977)) | (1 << (SqlParser.UNIX_TIMESTAMP - 977)) | (1 << (SqlParser.UPDATEXML - 977)) | (1 << (SqlParser.UPPER - 977)) | (1 << (SqlParser.UUID - 977)) | (1 << (SqlParser.UUID_SHORT - 977)) | (1 << (SqlParser.VALIDATE_PASSWORD_STRENGTH - 977)) | (1 << (SqlParser.VERSION - 977)) | (1 << (SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS - 977)) | (1 << (SqlParser.WEEKDAY - 977)) | (1 << (SqlParser.WEEKOFYEAR - 977)) | (1 << (SqlParser.WEIGHT_STRING - 977)) | (1 << (SqlParser.WITHIN - 977)) | (1 << (SqlParser.YEARWEEK - 977)) | (1 << (SqlParser.Y_FUNCTION - 977)) | (1 << (SqlParser.X_FUNCTION - 977)))) !== 0) || ((((_la - 1032)) & ~0x1f) == 0 && ((1 << (_la - 1032)) & ((1 << (SqlParser.CHARSET_REVERSE_QOUTE_STRING - 1032)) | (1 << (SqlParser.STRING_LITERAL - 1032)) | (1 << (SqlParser.ID - 1032)) | (1 << (SqlParser.REVERSE_QUOTE_ID - 1032)))) !== 0)) {
+ this.state = 2792;
+ localctx.partitions = this.uidList();
+ }
+
+ this.state = 2795;
+ this.match(SqlParser.RR_BRACKET);
+ }
+
+ this.state = 2814;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.SELECT:
+ case SqlParser.VALUES:
+ case SqlParser.VALUE:
+ case SqlParser.LR_BRACKET:
+ this.state = 2802;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,364,this._ctx);
+ if(la_===1) {
+ this.state = 2798;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 2799;
+ localctx.columns = this.uidList();
+ this.state = 2800;
+ this.match(SqlParser.RR_BRACKET);
+
+ }
+ this.state = 2804;
+ this.insertStatementValue();
+ break;
+ case SqlParser.SET:
+ this.state = 2805;
+ this.match(SqlParser.SET);
+ this.state = 2806;
+ localctx.setFirst = this.updatedElement();
+ this.state = 2811;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 2807;
+ this.match(SqlParser.COMMA);
+ this.state = 2808;
+ localctx._updatedElement = this.updatedElement();
+ localctx.setElements.push(localctx._updatedElement);
+ this.state = 2813;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 2828;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.ON) {
+ this.state = 2816;
+ this.match(SqlParser.ON);
+ this.state = 2817;
+ this.match(SqlParser.DUPLICATE);
+ this.state = 2818;
+ this.match(SqlParser.KEY);
+ this.state = 2819;
+ this.match(SqlParser.UPDATE);
+ this.state = 2820;
+ localctx.duplicatedFirst = this.updatedElement();
+ this.state = 2825;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 2821;
+ this.match(SqlParser.COMMA);
+ this.state = 2822;
+ localctx._updatedElement = this.updatedElement();
+ localctx.duplicatedElements.push(localctx._updatedElement);
+ this.state = 2827;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function LoadDataStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_loadDataStatement;
+ this.priority = null; // Token
+ this.filename = null; // Token
+ this.violation = null; // Token
+ this.charset = null; // CharsetNameContext
+ this.fieldsFormat = null; // Token
+ this.linesFormat = null; // Token
+ return this;
+}
+
+LoadDataStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+LoadDataStatementContext.prototype.constructor = LoadDataStatementContext;
+
+LoadDataStatementContext.prototype.LOAD = function() {
+ return this.getToken(SqlParser.LOAD, 0);
+};
+
+LoadDataStatementContext.prototype.DATA = function() {
+ return this.getToken(SqlParser.DATA, 0);
+};
+
+LoadDataStatementContext.prototype.INFILE = function() {
+ return this.getToken(SqlParser.INFILE, 0);
+};
+
+LoadDataStatementContext.prototype.INTO = function() {
+ return this.getToken(SqlParser.INTO, 0);
+};
+
+LoadDataStatementContext.prototype.TABLE = function() {
+ return this.getToken(SqlParser.TABLE, 0);
+};
+
+LoadDataStatementContext.prototype.tableName = function() {
+ return this.getTypedRuleContext(TableNameContext,0);
+};
+
+LoadDataStatementContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+LoadDataStatementContext.prototype.LOCAL = function() {
+ return this.getToken(SqlParser.LOCAL, 0);
+};
+
+LoadDataStatementContext.prototype.PARTITION = function() {
+ return this.getToken(SqlParser.PARTITION, 0);
+};
+
+LoadDataStatementContext.prototype.LR_BRACKET = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.LR_BRACKET);
+ } else {
+ return this.getToken(SqlParser.LR_BRACKET, i);
+ }
+};
+
+
+LoadDataStatementContext.prototype.uidList = function() {
+ return this.getTypedRuleContext(UidListContext,0);
+};
+
+LoadDataStatementContext.prototype.RR_BRACKET = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.RR_BRACKET);
+ } else {
+ return this.getToken(SqlParser.RR_BRACKET, i);
+ }
+};
+
+
+LoadDataStatementContext.prototype.CHARACTER = function() {
+ return this.getToken(SqlParser.CHARACTER, 0);
+};
+
+LoadDataStatementContext.prototype.SET = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.SET);
+ } else {
+ return this.getToken(SqlParser.SET, i);
+ }
+};
+
+
+LoadDataStatementContext.prototype.LINES = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.LINES);
+ } else {
+ return this.getToken(SqlParser.LINES, i);
+ }
+};
+
+
+LoadDataStatementContext.prototype.IGNORE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.IGNORE);
+ } else {
+ return this.getToken(SqlParser.IGNORE, i);
+ }
+};
+
+
+LoadDataStatementContext.prototype.decimalLiteral = function() {
+ return this.getTypedRuleContext(DecimalLiteralContext,0);
+};
+
+LoadDataStatementContext.prototype.assignmentField = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(AssignmentFieldContext);
+ } else {
+ return this.getTypedRuleContext(AssignmentFieldContext,i);
+ }
+};
+
+LoadDataStatementContext.prototype.updatedElement = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UpdatedElementContext);
+ } else {
+ return this.getTypedRuleContext(UpdatedElementContext,i);
+ }
+};
+
+LoadDataStatementContext.prototype.charsetName = function() {
+ return this.getTypedRuleContext(CharsetNameContext,0);
+};
+
+LoadDataStatementContext.prototype.LOW_PRIORITY = function() {
+ return this.getToken(SqlParser.LOW_PRIORITY, 0);
+};
+
+LoadDataStatementContext.prototype.CONCURRENT = function() {
+ return this.getToken(SqlParser.CONCURRENT, 0);
+};
+
+LoadDataStatementContext.prototype.REPLACE = function() {
+ return this.getToken(SqlParser.REPLACE, 0);
+};
+
+LoadDataStatementContext.prototype.FIELDS = function() {
+ return this.getToken(SqlParser.FIELDS, 0);
+};
+
+LoadDataStatementContext.prototype.COLUMNS = function() {
+ return this.getToken(SqlParser.COLUMNS, 0);
+};
+
+LoadDataStatementContext.prototype.ROWS = function() {
+ return this.getToken(SqlParser.ROWS, 0);
+};
+
+LoadDataStatementContext.prototype.selectFieldsInto = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(SelectFieldsIntoContext);
+ } else {
+ return this.getTypedRuleContext(SelectFieldsIntoContext,i);
+ }
+};
+
+LoadDataStatementContext.prototype.selectLinesInto = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(SelectLinesIntoContext);
+ } else {
+ return this.getTypedRuleContext(SelectLinesIntoContext,i);
+ }
+};
+
+LoadDataStatementContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+LoadDataStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterLoadDataStatement(this);
+ }
+};
+
+LoadDataStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitLoadDataStatement(this);
+ }
+};
+
+LoadDataStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitLoadDataStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.LoadDataStatementContext = LoadDataStatementContext;
+
+SqlParser.prototype.loadDataStatement = function() {
+
+ var localctx = new LoadDataStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 174, SqlParser.RULE_loadDataStatement);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2830;
+ this.match(SqlParser.LOAD);
+ this.state = 2831;
+ this.match(SqlParser.DATA);
+ this.state = 2833;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.LOW_PRIORITY || _la===SqlParser.CONCURRENT) {
+ this.state = 2832;
+ localctx.priority = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.LOW_PRIORITY || _la===SqlParser.CONCURRENT)) {
+ localctx.priority = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 2836;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.LOCAL) {
+ this.state = 2835;
+ this.match(SqlParser.LOCAL);
+ }
+
+ this.state = 2838;
+ this.match(SqlParser.INFILE);
+ this.state = 2839;
+ localctx.filename = this.match(SqlParser.STRING_LITERAL);
+ this.state = 2841;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.IGNORE || _la===SqlParser.REPLACE) {
+ this.state = 2840;
+ localctx.violation = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.IGNORE || _la===SqlParser.REPLACE)) {
+ localctx.violation = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 2843;
+ this.match(SqlParser.INTO);
+ this.state = 2844;
+ this.match(SqlParser.TABLE);
+ this.state = 2845;
+ this.tableName();
+ this.state = 2851;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.PARTITION) {
+ this.state = 2846;
+ this.match(SqlParser.PARTITION);
+ this.state = 2847;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 2848;
+ this.uidList();
+ this.state = 2849;
+ this.match(SqlParser.RR_BRACKET);
+ }
+
+ this.state = 2856;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.CHARACTER) {
+ this.state = 2853;
+ this.match(SqlParser.CHARACTER);
+ this.state = 2854;
+ this.match(SqlParser.SET);
+ this.state = 2855;
+ localctx.charset = this.charsetName();
+ }
+
+ this.state = 2864;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.COLUMNS || _la===SqlParser.FIELDS) {
+ this.state = 2858;
+ localctx.fieldsFormat = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.COLUMNS || _la===SqlParser.FIELDS)) {
+ localctx.fieldsFormat = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 2860;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 2859;
+ this.selectFieldsInto();
+ this.state = 2862;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(_la===SqlParser.ENCLOSED || _la===SqlParser.ESCAPED || _la===SqlParser.OPTIONALLY || _la===SqlParser.TERMINATED);
+ }
+
+ this.state = 2872;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.LINES) {
+ this.state = 2866;
+ this.match(SqlParser.LINES);
+ this.state = 2868;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 2867;
+ this.selectLinesInto();
+ this.state = 2870;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(_la===SqlParser.STARTING || _la===SqlParser.TERMINATED);
+ }
+
+ this.state = 2878;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.IGNORE) {
+ this.state = 2874;
+ this.match(SqlParser.IGNORE);
+ this.state = 2875;
+ this.decimalLiteral();
+ this.state = 2876;
+ localctx.linesFormat = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.LINES || _la===SqlParser.ROWS)) {
+ localctx.linesFormat = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 2891;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,380,this._ctx);
+ if(la_===1) {
+ this.state = 2880;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 2881;
+ this.assignmentField();
+ this.state = 2886;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 2882;
+ this.match(SqlParser.COMMA);
+ this.state = 2883;
+ this.assignmentField();
+ this.state = 2888;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 2889;
+ this.match(SqlParser.RR_BRACKET);
+
+ }
+ this.state = 2902;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,382,this._ctx);
+ if(la_===1) {
+ this.state = 2893;
+ this.match(SqlParser.SET);
+ this.state = 2894;
+ this.updatedElement();
+ this.state = 2899;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 2895;
+ this.match(SqlParser.COMMA);
+ this.state = 2896;
+ this.updatedElement();
+ this.state = 2901;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function LoadXmlStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_loadXmlStatement;
+ this.priority = null; // Token
+ this.filename = null; // Token
+ this.violation = null; // Token
+ this.charset = null; // CharsetNameContext
+ this.tag = null; // Token
+ this.linesFormat = null; // Token
+ return this;
+}
+
+LoadXmlStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+LoadXmlStatementContext.prototype.constructor = LoadXmlStatementContext;
+
+LoadXmlStatementContext.prototype.LOAD = function() {
+ return this.getToken(SqlParser.LOAD, 0);
+};
+
+LoadXmlStatementContext.prototype.XML = function() {
+ return this.getToken(SqlParser.XML, 0);
+};
+
+LoadXmlStatementContext.prototype.INFILE = function() {
+ return this.getToken(SqlParser.INFILE, 0);
+};
+
+LoadXmlStatementContext.prototype.INTO = function() {
+ return this.getToken(SqlParser.INTO, 0);
+};
+
+LoadXmlStatementContext.prototype.TABLE = function() {
+ return this.getToken(SqlParser.TABLE, 0);
+};
+
+LoadXmlStatementContext.prototype.tableName = function() {
+ return this.getTypedRuleContext(TableNameContext,0);
+};
+
+LoadXmlStatementContext.prototype.STRING_LITERAL = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.STRING_LITERAL);
+ } else {
+ return this.getToken(SqlParser.STRING_LITERAL, i);
+ }
+};
+
+
+LoadXmlStatementContext.prototype.LOCAL = function() {
+ return this.getToken(SqlParser.LOCAL, 0);
+};
+
+LoadXmlStatementContext.prototype.CHARACTER = function() {
+ return this.getToken(SqlParser.CHARACTER, 0);
+};
+
+LoadXmlStatementContext.prototype.SET = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.SET);
+ } else {
+ return this.getToken(SqlParser.SET, i);
+ }
+};
+
+
+LoadXmlStatementContext.prototype.ROWS = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.ROWS);
+ } else {
+ return this.getToken(SqlParser.ROWS, i);
+ }
+};
+
+
+LoadXmlStatementContext.prototype.IDENTIFIED = function() {
+ return this.getToken(SqlParser.IDENTIFIED, 0);
+};
+
+LoadXmlStatementContext.prototype.BY = function() {
+ return this.getToken(SqlParser.BY, 0);
+};
+
+LoadXmlStatementContext.prototype.LESS_SYMBOL = function() {
+ return this.getToken(SqlParser.LESS_SYMBOL, 0);
+};
+
+LoadXmlStatementContext.prototype.GREATER_SYMBOL = function() {
+ return this.getToken(SqlParser.GREATER_SYMBOL, 0);
+};
+
+LoadXmlStatementContext.prototype.IGNORE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.IGNORE);
+ } else {
+ return this.getToken(SqlParser.IGNORE, i);
+ }
+};
+
+
+LoadXmlStatementContext.prototype.decimalLiteral = function() {
+ return this.getTypedRuleContext(DecimalLiteralContext,0);
+};
+
+LoadXmlStatementContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+LoadXmlStatementContext.prototype.assignmentField = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(AssignmentFieldContext);
+ } else {
+ return this.getTypedRuleContext(AssignmentFieldContext,i);
+ }
+};
+
+LoadXmlStatementContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+LoadXmlStatementContext.prototype.updatedElement = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UpdatedElementContext);
+ } else {
+ return this.getTypedRuleContext(UpdatedElementContext,i);
+ }
+};
+
+LoadXmlStatementContext.prototype.charsetName = function() {
+ return this.getTypedRuleContext(CharsetNameContext,0);
+};
+
+LoadXmlStatementContext.prototype.LOW_PRIORITY = function() {
+ return this.getToken(SqlParser.LOW_PRIORITY, 0);
+};
+
+LoadXmlStatementContext.prototype.CONCURRENT = function() {
+ return this.getToken(SqlParser.CONCURRENT, 0);
+};
+
+LoadXmlStatementContext.prototype.REPLACE = function() {
+ return this.getToken(SqlParser.REPLACE, 0);
+};
+
+LoadXmlStatementContext.prototype.LINES = function() {
+ return this.getToken(SqlParser.LINES, 0);
+};
+
+LoadXmlStatementContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+LoadXmlStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterLoadXmlStatement(this);
+ }
+};
+
+LoadXmlStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitLoadXmlStatement(this);
+ }
+};
+
+LoadXmlStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitLoadXmlStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.LoadXmlStatementContext = LoadXmlStatementContext;
+
+SqlParser.prototype.loadXmlStatement = function() {
+
+ var localctx = new LoadXmlStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 176, SqlParser.RULE_loadXmlStatement);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2904;
+ this.match(SqlParser.LOAD);
+ this.state = 2905;
+ this.match(SqlParser.XML);
+ this.state = 2907;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.LOW_PRIORITY || _la===SqlParser.CONCURRENT) {
+ this.state = 2906;
+ localctx.priority = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.LOW_PRIORITY || _la===SqlParser.CONCURRENT)) {
+ localctx.priority = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 2910;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.LOCAL) {
+ this.state = 2909;
+ this.match(SqlParser.LOCAL);
+ }
+
+ this.state = 2912;
+ this.match(SqlParser.INFILE);
+ this.state = 2913;
+ localctx.filename = this.match(SqlParser.STRING_LITERAL);
+ this.state = 2915;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.IGNORE || _la===SqlParser.REPLACE) {
+ this.state = 2914;
+ localctx.violation = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.IGNORE || _la===SqlParser.REPLACE)) {
+ localctx.violation = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 2917;
+ this.match(SqlParser.INTO);
+ this.state = 2918;
+ this.match(SqlParser.TABLE);
+ this.state = 2919;
+ this.tableName();
+ this.state = 2923;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.CHARACTER) {
+ this.state = 2920;
+ this.match(SqlParser.CHARACTER);
+ this.state = 2921;
+ this.match(SqlParser.SET);
+ this.state = 2922;
+ localctx.charset = this.charsetName();
+ }
+
+ this.state = 2931;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.ROWS) {
+ this.state = 2925;
+ this.match(SqlParser.ROWS);
+ this.state = 2926;
+ this.match(SqlParser.IDENTIFIED);
+ this.state = 2927;
+ this.match(SqlParser.BY);
+ this.state = 2928;
+ this.match(SqlParser.LESS_SYMBOL);
+ this.state = 2929;
+ localctx.tag = this.match(SqlParser.STRING_LITERAL);
+ this.state = 2930;
+ this.match(SqlParser.GREATER_SYMBOL);
+ }
+
+ this.state = 2937;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.IGNORE) {
+ this.state = 2933;
+ this.match(SqlParser.IGNORE);
+ this.state = 2934;
+ this.decimalLiteral();
+ this.state = 2935;
+ localctx.linesFormat = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.LINES || _la===SqlParser.ROWS)) {
+ localctx.linesFormat = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 2950;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,390,this._ctx);
+ if(la_===1) {
+ this.state = 2939;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 2940;
+ this.assignmentField();
+ this.state = 2945;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 2941;
+ this.match(SqlParser.COMMA);
+ this.state = 2942;
+ this.assignmentField();
+ this.state = 2947;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 2948;
+ this.match(SqlParser.RR_BRACKET);
+
+ }
+ this.state = 2961;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,392,this._ctx);
+ if(la_===1) {
+ this.state = 2952;
+ this.match(SqlParser.SET);
+ this.state = 2953;
+ this.updatedElement();
+ this.state = 2958;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 2954;
+ this.match(SqlParser.COMMA);
+ this.state = 2955;
+ this.updatedElement();
+ this.state = 2960;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function ReplaceStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_replaceStatement;
+ this.priority = null; // Token
+ this.partitions = null; // UidListContext
+ this.columns = null; // UidListContext
+ this.setFirst = null; // UpdatedElementContext
+ this._updatedElement = null; // UpdatedElementContext
+ this.setElements = []; // of UpdatedElementContexts
+ return this;
+}
+
+ReplaceStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+ReplaceStatementContext.prototype.constructor = ReplaceStatementContext;
+
+ReplaceStatementContext.prototype.REPLACE = function() {
+ return this.getToken(SqlParser.REPLACE, 0);
+};
+
+ReplaceStatementContext.prototype.tableName = function() {
+ return this.getTypedRuleContext(TableNameContext,0);
+};
+
+ReplaceStatementContext.prototype.insertStatementValue = function() {
+ return this.getTypedRuleContext(InsertStatementValueContext,0);
+};
+
+ReplaceStatementContext.prototype.SET = function() {
+ return this.getToken(SqlParser.SET, 0);
+};
+
+ReplaceStatementContext.prototype.INTO = function() {
+ return this.getToken(SqlParser.INTO, 0);
+};
+
+ReplaceStatementContext.prototype.PARTITION = function() {
+ return this.getToken(SqlParser.PARTITION, 0);
+};
+
+ReplaceStatementContext.prototype.LR_BRACKET = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.LR_BRACKET);
+ } else {
+ return this.getToken(SqlParser.LR_BRACKET, i);
+ }
+};
+
+
+ReplaceStatementContext.prototype.RR_BRACKET = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.RR_BRACKET);
+ } else {
+ return this.getToken(SqlParser.RR_BRACKET, i);
+ }
+};
+
+
+ReplaceStatementContext.prototype.updatedElement = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UpdatedElementContext);
+ } else {
+ return this.getTypedRuleContext(UpdatedElementContext,i);
+ }
+};
+
+ReplaceStatementContext.prototype.uidList = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UidListContext);
+ } else {
+ return this.getTypedRuleContext(UidListContext,i);
+ }
+};
+
+ReplaceStatementContext.prototype.LOW_PRIORITY = function() {
+ return this.getToken(SqlParser.LOW_PRIORITY, 0);
+};
+
+ReplaceStatementContext.prototype.DELAYED = function() {
+ return this.getToken(SqlParser.DELAYED, 0);
+};
+
+ReplaceStatementContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+ReplaceStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterReplaceStatement(this);
+ }
+};
+
+ReplaceStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitReplaceStatement(this);
+ }
+};
+
+ReplaceStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitReplaceStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.ReplaceStatementContext = ReplaceStatementContext;
+
+SqlParser.prototype.replaceStatement = function() {
+
+ var localctx = new ReplaceStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 178, SqlParser.RULE_replaceStatement);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2963;
+ this.match(SqlParser.REPLACE);
+ this.state = 2965;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.DELAYED || _la===SqlParser.LOW_PRIORITY) {
+ this.state = 2964;
+ localctx.priority = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.DELAYED || _la===SqlParser.LOW_PRIORITY)) {
+ localctx.priority = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 2968;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.INTO) {
+ this.state = 2967;
+ this.match(SqlParser.INTO);
+ }
+
+ this.state = 2970;
+ this.tableName();
+ this.state = 2976;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.PARTITION) {
+ this.state = 2971;
+ this.match(SqlParser.PARTITION);
+ this.state = 2972;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 2973;
+ localctx.partitions = this.uidList();
+ this.state = 2974;
+ this.match(SqlParser.RR_BRACKET);
+ }
+
+ this.state = 2994;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.SELECT:
+ case SqlParser.VALUES:
+ case SqlParser.VALUE:
+ case SqlParser.LR_BRACKET:
+ this.state = 2982;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,396,this._ctx);
+ if(la_===1) {
+ this.state = 2978;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 2979;
+ localctx.columns = this.uidList();
+ this.state = 2980;
+ this.match(SqlParser.RR_BRACKET);
+
+ }
+ this.state = 2984;
+ this.insertStatementValue();
+ break;
+ case SqlParser.SET:
+ this.state = 2985;
+ this.match(SqlParser.SET);
+ this.state = 2986;
+ localctx.setFirst = this.updatedElement();
+ this.state = 2991;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 2987;
+ this.match(SqlParser.COMMA);
+ this.state = 2988;
+ localctx._updatedElement = this.updatedElement();
+ localctx.setElements.push(localctx._updatedElement);
+ this.state = 2993;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function SelectStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_selectStatement;
+ return this;
+}
+
+SelectStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+SelectStatementContext.prototype.constructor = SelectStatementContext;
+
+
+
+SelectStatementContext.prototype.copyFrom = function(ctx) {
+ antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx);
+};
+
+
+function UnionSelectContext(parser, ctx) {
+ SelectStatementContext.call(this, parser);
+ this.unionType = null; // Token;
+ SelectStatementContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+UnionSelectContext.prototype = Object.create(SelectStatementContext.prototype);
+UnionSelectContext.prototype.constructor = UnionSelectContext;
+
+SqlParser.UnionSelectContext = UnionSelectContext;
+
+UnionSelectContext.prototype.querySpecificationNointo = function() {
+ return this.getTypedRuleContext(QuerySpecificationNointoContext,0);
+};
+
+UnionSelectContext.prototype.unionStatement = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UnionStatementContext);
+ } else {
+ return this.getTypedRuleContext(UnionStatementContext,i);
+ }
+};
+
+UnionSelectContext.prototype.UNION = function() {
+ return this.getToken(SqlParser.UNION, 0);
+};
+
+UnionSelectContext.prototype.orderByClause = function() {
+ return this.getTypedRuleContext(OrderByClauseContext,0);
+};
+
+UnionSelectContext.prototype.limitClause = function() {
+ return this.getTypedRuleContext(LimitClauseContext,0);
+};
+
+UnionSelectContext.prototype.lockClause = function() {
+ return this.getTypedRuleContext(LockClauseContext,0);
+};
+
+UnionSelectContext.prototype.querySpecification = function() {
+ return this.getTypedRuleContext(QuerySpecificationContext,0);
+};
+
+UnionSelectContext.prototype.queryExpression = function() {
+ return this.getTypedRuleContext(QueryExpressionContext,0);
+};
+
+UnionSelectContext.prototype.ALL = function() {
+ return this.getToken(SqlParser.ALL, 0);
+};
+
+UnionSelectContext.prototype.DISTINCT = function() {
+ return this.getToken(SqlParser.DISTINCT, 0);
+};
+UnionSelectContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterUnionSelect(this);
+ }
+};
+
+UnionSelectContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitUnionSelect(this);
+ }
+};
+
+UnionSelectContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitUnionSelect(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function UnionParenthesisSelectContext(parser, ctx) {
+ SelectStatementContext.call(this, parser);
+ this.unionType = null; // Token;
+ SelectStatementContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+UnionParenthesisSelectContext.prototype = Object.create(SelectStatementContext.prototype);
+UnionParenthesisSelectContext.prototype.constructor = UnionParenthesisSelectContext;
+
+SqlParser.UnionParenthesisSelectContext = UnionParenthesisSelectContext;
+
+UnionParenthesisSelectContext.prototype.queryExpressionNointo = function() {
+ return this.getTypedRuleContext(QueryExpressionNointoContext,0);
+};
+
+UnionParenthesisSelectContext.prototype.unionParenthesis = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UnionParenthesisContext);
+ } else {
+ return this.getTypedRuleContext(UnionParenthesisContext,i);
+ }
+};
+
+UnionParenthesisSelectContext.prototype.UNION = function() {
+ return this.getToken(SqlParser.UNION, 0);
+};
+
+UnionParenthesisSelectContext.prototype.queryExpression = function() {
+ return this.getTypedRuleContext(QueryExpressionContext,0);
+};
+
+UnionParenthesisSelectContext.prototype.orderByClause = function() {
+ return this.getTypedRuleContext(OrderByClauseContext,0);
+};
+
+UnionParenthesisSelectContext.prototype.limitClause = function() {
+ return this.getTypedRuleContext(LimitClauseContext,0);
+};
+
+UnionParenthesisSelectContext.prototype.lockClause = function() {
+ return this.getTypedRuleContext(LockClauseContext,0);
+};
+
+UnionParenthesisSelectContext.prototype.ALL = function() {
+ return this.getToken(SqlParser.ALL, 0);
+};
+
+UnionParenthesisSelectContext.prototype.DISTINCT = function() {
+ return this.getToken(SqlParser.DISTINCT, 0);
+};
+UnionParenthesisSelectContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterUnionParenthesisSelect(this);
+ }
+};
+
+UnionParenthesisSelectContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitUnionParenthesisSelect(this);
+ }
+};
+
+UnionParenthesisSelectContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitUnionParenthesisSelect(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function SimpleSelectContext(parser, ctx) {
+ SelectStatementContext.call(this, parser);
+ SelectStatementContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+SimpleSelectContext.prototype = Object.create(SelectStatementContext.prototype);
+SimpleSelectContext.prototype.constructor = SimpleSelectContext;
+
+SqlParser.SimpleSelectContext = SimpleSelectContext;
+
+SimpleSelectContext.prototype.querySpecification = function() {
+ return this.getTypedRuleContext(QuerySpecificationContext,0);
+};
+
+SimpleSelectContext.prototype.lockClause = function() {
+ return this.getTypedRuleContext(LockClauseContext,0);
+};
+SimpleSelectContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSimpleSelect(this);
+ }
+};
+
+SimpleSelectContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSimpleSelect(this);
+ }
+};
+
+SimpleSelectContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSimpleSelect(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function ParenthesisSelectContext(parser, ctx) {
+ SelectStatementContext.call(this, parser);
+ SelectStatementContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+ParenthesisSelectContext.prototype = Object.create(SelectStatementContext.prototype);
+ParenthesisSelectContext.prototype.constructor = ParenthesisSelectContext;
+
+SqlParser.ParenthesisSelectContext = ParenthesisSelectContext;
+
+ParenthesisSelectContext.prototype.queryExpression = function() {
+ return this.getTypedRuleContext(QueryExpressionContext,0);
+};
+
+ParenthesisSelectContext.prototype.lockClause = function() {
+ return this.getTypedRuleContext(LockClauseContext,0);
+};
+ParenthesisSelectContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterParenthesisSelect(this);
+ }
+};
+
+ParenthesisSelectContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitParenthesisSelect(this);
+ }
+};
+
+ParenthesisSelectContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitParenthesisSelect(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+SqlParser.SelectStatementContext = SelectStatementContext;
+
+SqlParser.prototype.selectStatement = function() {
+
+ var localctx = new SelectStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 180, SqlParser.RULE_selectStatement);
+ var _la = 0; // Token type
+ try {
+ this.state = 3051;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,414,this._ctx);
+ switch(la_) {
+ case 1:
+ localctx = new SimpleSelectContext(this, localctx);
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2996;
+ this.querySpecification();
+ this.state = 2998;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,399,this._ctx);
+ if(la_===1) {
+ this.state = 2997;
+ this.lockClause();
+
+ }
+ break;
+
+ case 2:
+ localctx = new ParenthesisSelectContext(this, localctx);
+ this.enterOuterAlt(localctx, 2);
+ this.state = 3000;
+ this.queryExpression();
+ this.state = 3002;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,400,this._ctx);
+ if(la_===1) {
+ this.state = 3001;
+ this.lockClause();
+
+ }
+ break;
+
+ case 3:
+ localctx = new UnionSelectContext(this, localctx);
+ this.enterOuterAlt(localctx, 3);
+ this.state = 3004;
+ this.querySpecificationNointo();
+ this.state = 3006;
+ this._errHandler.sync(this);
+ var _alt = 1;
+ do {
+ switch (_alt) {
+ case 1:
+ this.state = 3005;
+ this.unionStatement();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 3008;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,401, this._ctx);
+ } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
+ this.state = 3018;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.UNION) {
+ this.state = 3010;
+ this.match(SqlParser.UNION);
+ this.state = 3012;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.ALL || _la===SqlParser.DISTINCT) {
+ this.state = 3011;
+ localctx.unionType = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.ALL || _la===SqlParser.DISTINCT)) {
+ localctx.unionType = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 3016;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.SELECT:
+ this.state = 3014;
+ this.querySpecification();
+ break;
+ case SqlParser.LR_BRACKET:
+ this.state = 3015;
+ this.queryExpression();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ }
+
+ this.state = 3021;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.ORDER) {
+ this.state = 3020;
+ this.orderByClause();
+ }
+
+ this.state = 3024;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.LIMIT) {
+ this.state = 3023;
+ this.limitClause();
+ }
+
+ this.state = 3027;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,407,this._ctx);
+ if(la_===1) {
+ this.state = 3026;
+ this.lockClause();
+
+ }
+ break;
+
+ case 4:
+ localctx = new UnionParenthesisSelectContext(this, localctx);
+ this.enterOuterAlt(localctx, 4);
+ this.state = 3029;
+ this.queryExpressionNointo();
+ this.state = 3031;
+ this._errHandler.sync(this);
+ var _alt = 1;
+ do {
+ switch (_alt) {
+ case 1:
+ this.state = 3030;
+ this.unionParenthesis();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 3033;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,408, this._ctx);
+ } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
+ this.state = 3040;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.UNION) {
+ this.state = 3035;
+ this.match(SqlParser.UNION);
+ this.state = 3037;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.ALL || _la===SqlParser.DISTINCT) {
+ this.state = 3036;
+ localctx.unionType = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.ALL || _la===SqlParser.DISTINCT)) {
+ localctx.unionType = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 3039;
+ this.queryExpression();
+ }
+
+ this.state = 3043;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.ORDER) {
+ this.state = 3042;
+ this.orderByClause();
+ }
+
+ this.state = 3046;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.LIMIT) {
+ this.state = 3045;
+ this.limitClause();
+ }
+
+ this.state = 3049;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,413,this._ctx);
+ if(la_===1) {
+ this.state = 3048;
+ this.lockClause();
+
+ }
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function UpdateStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_updateStatement;
+ return this;
+}
+
+UpdateStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+UpdateStatementContext.prototype.constructor = UpdateStatementContext;
+
+UpdateStatementContext.prototype.singleUpdateStatement = function() {
+ return this.getTypedRuleContext(SingleUpdateStatementContext,0);
+};
+
+UpdateStatementContext.prototype.multipleUpdateStatement = function() {
+ return this.getTypedRuleContext(MultipleUpdateStatementContext,0);
+};
+
+UpdateStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterUpdateStatement(this);
+ }
+};
+
+UpdateStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitUpdateStatement(this);
+ }
+};
+
+UpdateStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitUpdateStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.UpdateStatementContext = UpdateStatementContext;
+
+SqlParser.prototype.updateStatement = function() {
+
+ var localctx = new UpdateStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 182, SqlParser.RULE_updateStatement);
+ try {
+ this.state = 3055;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,415,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3053;
+ this.singleUpdateStatement();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 3054;
+ this.multipleUpdateStatement();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function InsertStatementValueContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_insertStatementValue;
+ this.insertFormat = null; // Token
+ return this;
+}
+
+InsertStatementValueContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+InsertStatementValueContext.prototype.constructor = InsertStatementValueContext;
+
+InsertStatementValueContext.prototype.selectStatement = function() {
+ return this.getTypedRuleContext(SelectStatementContext,0);
+};
+
+InsertStatementValueContext.prototype.LR_BRACKET = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.LR_BRACKET);
+ } else {
+ return this.getToken(SqlParser.LR_BRACKET, i);
+ }
+};
+
+
+InsertStatementValueContext.prototype.RR_BRACKET = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.RR_BRACKET);
+ } else {
+ return this.getToken(SqlParser.RR_BRACKET, i);
+ }
+};
+
+
+InsertStatementValueContext.prototype.VALUES = function() {
+ return this.getToken(SqlParser.VALUES, 0);
+};
+
+InsertStatementValueContext.prototype.VALUE = function() {
+ return this.getToken(SqlParser.VALUE, 0);
+};
+
+InsertStatementValueContext.prototype.expressionsWithDefaults = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ExpressionsWithDefaultsContext);
+ } else {
+ return this.getTypedRuleContext(ExpressionsWithDefaultsContext,i);
+ }
+};
+
+InsertStatementValueContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+InsertStatementValueContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterInsertStatementValue(this);
+ }
+};
+
+InsertStatementValueContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitInsertStatementValue(this);
+ }
+};
+
+InsertStatementValueContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitInsertStatementValue(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.InsertStatementValueContext = InsertStatementValueContext;
+
+SqlParser.prototype.insertStatementValue = function() {
+
+ var localctx = new InsertStatementValueContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 184, SqlParser.RULE_insertStatementValue);
+ var _la = 0; // Token type
+ try {
+ this.state = 3075;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.SELECT:
+ case SqlParser.LR_BRACKET:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3057;
+ this.selectStatement();
+ break;
+ case SqlParser.VALUES:
+ case SqlParser.VALUE:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 3058;
+ localctx.insertFormat = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.VALUES || _la===SqlParser.VALUE)) {
+ localctx.insertFormat = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 3059;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 3061;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if((((_la) & ~0x1f) == 0 && ((1 << _la) & ((1 << SqlParser.CASE) | (1 << SqlParser.CAST) | (1 << SqlParser.CONVERT))) !== 0) || ((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (SqlParser.CURRENT - 32)) | (1 << (SqlParser.CURRENT_USER - 32)) | (1 << (SqlParser.DATABASE - 32)) | (1 << (SqlParser.DEFAULT - 32)) | (1 << (SqlParser.DIAGNOSTICS - 32)) | (1 << (SqlParser.EXISTS - 32)) | (1 << (SqlParser.FALSE - 32)))) !== 0) || ((((_la - 69)) & ~0x1f) == 0 && ((1 << (_la - 69)) & ((1 << (SqlParser.IF - 69)) | (1 << (SqlParser.INSERT - 69)) | (1 << (SqlParser.INTERVAL - 69)) | (1 << (SqlParser.LEFT - 69)))) !== 0) || ((((_la - 102)) & ~0x1f) == 0 && ((1 << (_la - 102)) & ((1 << (SqlParser.NOT - 102)) | (1 << (SqlParser.NULL_LITERAL - 102)) | (1 << (SqlParser.NUMBER - 102)) | (1 << (SqlParser.REPLACE - 102)) | (1 << (SqlParser.RIGHT - 102)))) !== 0) || ((((_la - 151)) & ~0x1f) == 0 && ((1 << (_la - 151)) & ((1 << (SqlParser.STACKED - 151)) | (1 << (SqlParser.TRUE - 151)) | (1 << (SqlParser.VALUES - 151)))) !== 0) || ((((_la - 199)) & ~0x1f) == 0 && ((1 << (_la - 199)) & ((1 << (SqlParser.DATE - 199)) | (1 << (SqlParser.TIME - 199)) | (1 << (SqlParser.TIMESTAMP - 199)) | (1 << (SqlParser.DATETIME - 199)) | (1 << (SqlParser.YEAR - 199)) | (1 << (SqlParser.CHAR - 199)) | (1 << (SqlParser.BINARY - 199)) | (1 << (SqlParser.TEXT - 199)) | (1 << (SqlParser.ENUM - 199)) | (1 << (SqlParser.SERIAL - 199)))) !== 0) || ((((_la - 233)) & ~0x1f) == 0 && ((1 << (_la - 233)) & ((1 << (SqlParser.JSON_VALID - 233)) | (1 << (SqlParser.JSON_SCHEMA_VALID - 233)) | (1 << (SqlParser.AVG - 233)) | (1 << (SqlParser.BIT_AND - 233)) | (1 << (SqlParser.BIT_OR - 233)) | (1 << (SqlParser.BIT_XOR - 233)) | (1 << (SqlParser.COUNT - 233)) | (1 << (SqlParser.GROUP_CONCAT - 233)) | (1 << (SqlParser.MAX - 233)) | (1 << (SqlParser.MIN - 233)) | (1 << (SqlParser.STD - 233)) | (1 << (SqlParser.STDDEV - 233)) | (1 << (SqlParser.STDDEV_POP - 233)) | (1 << (SqlParser.STDDEV_SAMP - 233)) | (1 << (SqlParser.SUM - 233)) | (1 << (SqlParser.VAR_POP - 233)) | (1 << (SqlParser.VAR_SAMP - 233)) | (1 << (SqlParser.VARIANCE - 233)) | (1 << (SqlParser.CURRENT_DATE - 233)) | (1 << (SqlParser.CURRENT_TIME - 233)) | (1 << (SqlParser.CURRENT_TIMESTAMP - 233)) | (1 << (SqlParser.LOCALTIME - 233)) | (1 << (SqlParser.CURDATE - 233)) | (1 << (SqlParser.CURTIME - 233)) | (1 << (SqlParser.DATE_ADD - 233)) | (1 << (SqlParser.DATE_SUB - 233)) | (1 << (SqlParser.EXTRACT - 233)) | (1 << (SqlParser.LOCALTIMESTAMP - 233)) | (1 << (SqlParser.NOW - 233)) | (1 << (SqlParser.POSITION - 233)) | (1 << (SqlParser.SUBSTR - 233)) | (1 << (SqlParser.SUBSTRING - 233)))) !== 0) || ((((_la - 265)) & ~0x1f) == 0 && ((1 << (_la - 265)) & ((1 << (SqlParser.SYSDATE - 265)) | (1 << (SqlParser.TRIM - 265)) | (1 << (SqlParser.UTC_DATE - 265)) | (1 << (SqlParser.UTC_TIME - 265)) | (1 << (SqlParser.UTC_TIMESTAMP - 265)) | (1 << (SqlParser.ACCOUNT - 265)) | (1 << (SqlParser.ACTION - 265)) | (1 << (SqlParser.AFTER - 265)) | (1 << (SqlParser.AGGREGATE - 265)) | (1 << (SqlParser.ALGORITHM - 265)) | (1 << (SqlParser.ANY - 265)) | (1 << (SqlParser.AT - 265)) | (1 << (SqlParser.AUTHORS - 265)) | (1 << (SqlParser.AUTOCOMMIT - 265)) | (1 << (SqlParser.AUTOEXTEND_SIZE - 265)) | (1 << (SqlParser.AUTO_INCREMENT - 265)) | (1 << (SqlParser.AVG_ROW_LENGTH - 265)) | (1 << (SqlParser.BEGIN - 265)) | (1 << (SqlParser.BINLOG - 265)) | (1 << (SqlParser.BIT - 265)) | (1 << (SqlParser.BLOCK - 265)) | (1 << (SqlParser.BOOL - 265)) | (1 << (SqlParser.BOOLEAN - 265)) | (1 << (SqlParser.BTREE - 265)) | (1 << (SqlParser.CACHE - 265)) | (1 << (SqlParser.CASCADED - 265)) | (1 << (SqlParser.CHAIN - 265)) | (1 << (SqlParser.CHANGED - 265)) | (1 << (SqlParser.CHANNEL - 265)) | (1 << (SqlParser.CHECKSUM - 265)) | (1 << (SqlParser.PAGE_CHECKSUM - 265)) | (1 << (SqlParser.CIPHER - 265)))) !== 0) || ((((_la - 297)) & ~0x1f) == 0 && ((1 << (_la - 297)) & ((1 << (SqlParser.CLASS_ORIGIN - 297)) | (1 << (SqlParser.CLIENT - 297)) | (1 << (SqlParser.CLOSE - 297)) | (1 << (SqlParser.COALESCE - 297)) | (1 << (SqlParser.CODE - 297)) | (1 << (SqlParser.COLUMNS - 297)) | (1 << (SqlParser.COLUMN_FORMAT - 297)) | (1 << (SqlParser.COLUMN_NAME - 297)) | (1 << (SqlParser.COMMENT - 297)) | (1 << (SqlParser.COMMIT - 297)) | (1 << (SqlParser.COMPACT - 297)) | (1 << (SqlParser.COMPLETION - 297)) | (1 << (SqlParser.COMPRESSED - 297)) | (1 << (SqlParser.COMPRESSION - 297)) | (1 << (SqlParser.CONCURRENT - 297)) | (1 << (SqlParser.CONNECTION - 297)) | (1 << (SqlParser.CONSISTENT - 297)) | (1 << (SqlParser.CONSTRAINT_CATALOG - 297)) | (1 << (SqlParser.CONSTRAINT_SCHEMA - 297)) | (1 << (SqlParser.CONSTRAINT_NAME - 297)) | (1 << (SqlParser.CONTAINS - 297)) | (1 << (SqlParser.CONTEXT - 297)) | (1 << (SqlParser.CONTRIBUTORS - 297)) | (1 << (SqlParser.COPY - 297)) | (1 << (SqlParser.CPU - 297)) | (1 << (SqlParser.CURSOR_NAME - 297)) | (1 << (SqlParser.DATA - 297)) | (1 << (SqlParser.DATAFILE - 297)) | (1 << (SqlParser.DEALLOCATE - 297)) | (1 << (SqlParser.DEFAULT_AUTH - 297)) | (1 << (SqlParser.DEFINER - 297)) | (1 << (SqlParser.DELAY_KEY_WRITE - 297)))) !== 0) || ((((_la - 329)) & ~0x1f) == 0 && ((1 << (_la - 329)) & ((1 << (SqlParser.DES_KEY_FILE - 329)) | (1 << (SqlParser.DIRECTORY - 329)) | (1 << (SqlParser.DISABLE - 329)) | (1 << (SqlParser.DISCARD - 329)) | (1 << (SqlParser.DISK - 329)) | (1 << (SqlParser.DO - 329)) | (1 << (SqlParser.DUMPFILE - 329)) | (1 << (SqlParser.DUPLICATE - 329)) | (1 << (SqlParser.DYNAMIC - 329)) | (1 << (SqlParser.ENABLE - 329)) | (1 << (SqlParser.ENCRYPTION - 329)) | (1 << (SqlParser.END - 329)) | (1 << (SqlParser.ENDS - 329)) | (1 << (SqlParser.ENGINE - 329)) | (1 << (SqlParser.ENGINES - 329)) | (1 << (SqlParser.ERROR - 329)) | (1 << (SqlParser.ERRORS - 329)) | (1 << (SqlParser.ESCAPE - 329)) | (1 << (SqlParser.EVEN - 329)) | (1 << (SqlParser.EVENT - 329)) | (1 << (SqlParser.EVENTS - 329)) | (1 << (SqlParser.EVERY - 329)) | (1 << (SqlParser.EXCHANGE - 329)) | (1 << (SqlParser.EXCLUSIVE - 329)) | (1 << (SqlParser.EXPIRE - 329)) | (1 << (SqlParser.EXPORT - 329)) | (1 << (SqlParser.EXTENDED - 329)) | (1 << (SqlParser.EXTENT_SIZE - 329)) | (1 << (SqlParser.FAST - 329)) | (1 << (SqlParser.FAULTS - 329)) | (1 << (SqlParser.FIELDS - 329)) | (1 << (SqlParser.FILE_BLOCK_SIZE - 329)))) !== 0) || ((((_la - 361)) & ~0x1f) == 0 && ((1 << (_la - 361)) & ((1 << (SqlParser.FILTER - 361)) | (1 << (SqlParser.FIRST - 361)) | (1 << (SqlParser.FIXED - 361)) | (1 << (SqlParser.FLUSH - 361)) | (1 << (SqlParser.FOLLOWS - 361)) | (1 << (SqlParser.FOUND - 361)) | (1 << (SqlParser.FULL - 361)) | (1 << (SqlParser.FUNCTION - 361)) | (1 << (SqlParser.GENERAL - 361)) | (1 << (SqlParser.GLOBAL - 361)) | (1 << (SqlParser.GRANTS - 361)) | (1 << (SqlParser.GROUP_REPLICATION - 361)) | (1 << (SqlParser.HANDLER - 361)) | (1 << (SqlParser.HASH - 361)) | (1 << (SqlParser.HELP - 361)) | (1 << (SqlParser.HOST - 361)) | (1 << (SqlParser.HOSTS - 361)) | (1 << (SqlParser.IDENTIFIED - 361)) | (1 << (SqlParser.IGNORE_SERVER_IDS - 361)) | (1 << (SqlParser.IMPORT - 361)) | (1 << (SqlParser.INDEXES - 361)) | (1 << (SqlParser.INITIAL_SIZE - 361)) | (1 << (SqlParser.INPLACE - 361)) | (1 << (SqlParser.INSERT_METHOD - 361)) | (1 << (SqlParser.INSTALL - 361)) | (1 << (SqlParser.INSTANCE - 361)) | (1 << (SqlParser.INVISIBLE - 361)) | (1 << (SqlParser.INVOKER - 361)) | (1 << (SqlParser.IO - 361)) | (1 << (SqlParser.IO_THREAD - 361)) | (1 << (SqlParser.IPC - 361)) | (1 << (SqlParser.ISOLATION - 361)))) !== 0) || ((((_la - 393)) & ~0x1f) == 0 && ((1 << (_la - 393)) & ((1 << (SqlParser.ISSUER - 393)) | (1 << (SqlParser.JSON - 393)) | (1 << (SqlParser.KEY_BLOCK_SIZE - 393)) | (1 << (SqlParser.LANGUAGE - 393)) | (1 << (SqlParser.LAST - 393)) | (1 << (SqlParser.LEAVES - 393)) | (1 << (SqlParser.LESS - 393)) | (1 << (SqlParser.LEVEL - 393)) | (1 << (SqlParser.LIST - 393)) | (1 << (SqlParser.LOCAL - 393)) | (1 << (SqlParser.LOGFILE - 393)) | (1 << (SqlParser.LOGS - 393)) | (1 << (SqlParser.MASTER - 393)) | (1 << (SqlParser.MASTER_AUTO_POSITION - 393)) | (1 << (SqlParser.MASTER_CONNECT_RETRY - 393)) | (1 << (SqlParser.MASTER_DELAY - 393)) | (1 << (SqlParser.MASTER_HEARTBEAT_PERIOD - 393)) | (1 << (SqlParser.MASTER_HOST - 393)) | (1 << (SqlParser.MASTER_LOG_FILE - 393)) | (1 << (SqlParser.MASTER_LOG_POS - 393)) | (1 << (SqlParser.MASTER_PASSWORD - 393)) | (1 << (SqlParser.MASTER_PORT - 393)) | (1 << (SqlParser.MASTER_RETRY_COUNT - 393)) | (1 << (SqlParser.MASTER_SSL - 393)) | (1 << (SqlParser.MASTER_SSL_CA - 393)) | (1 << (SqlParser.MASTER_SSL_CAPATH - 393)) | (1 << (SqlParser.MASTER_SSL_CERT - 393)) | (1 << (SqlParser.MASTER_SSL_CIPHER - 393)) | (1 << (SqlParser.MASTER_SSL_CRL - 393)) | (1 << (SqlParser.MASTER_SSL_CRLPATH - 393)) | (1 << (SqlParser.MASTER_SSL_KEY - 393)) | (1 << (SqlParser.MASTER_TLS_VERSION - 393)))) !== 0) || ((((_la - 425)) & ~0x1f) == 0 && ((1 << (_la - 425)) & ((1 << (SqlParser.MASTER_USER - 425)) | (1 << (SqlParser.MAX_CONNECTIONS_PER_HOUR - 425)) | (1 << (SqlParser.MAX_QUERIES_PER_HOUR - 425)) | (1 << (SqlParser.MAX_ROWS - 425)) | (1 << (SqlParser.MAX_SIZE - 425)) | (1 << (SqlParser.MAX_UPDATES_PER_HOUR - 425)) | (1 << (SqlParser.MAX_USER_CONNECTIONS - 425)) | (1 << (SqlParser.MEDIUM - 425)) | (1 << (SqlParser.MERGE - 425)) | (1 << (SqlParser.MESSAGE_TEXT - 425)) | (1 << (SqlParser.MID - 425)) | (1 << (SqlParser.MIGRATE - 425)) | (1 << (SqlParser.MIN_ROWS - 425)) | (1 << (SqlParser.MODE - 425)) | (1 << (SqlParser.MODIFY - 425)) | (1 << (SqlParser.MUTEX - 425)) | (1 << (SqlParser.MYSQL - 425)) | (1 << (SqlParser.MYSQL_ERRNO - 425)) | (1 << (SqlParser.NAME - 425)) | (1 << (SqlParser.NAMES - 425)) | (1 << (SqlParser.NCHAR - 425)) | (1 << (SqlParser.NEVER - 425)) | (1 << (SqlParser.NEXT - 425)) | (1 << (SqlParser.NO - 425)) | (1 << (SqlParser.NODEGROUP - 425)) | (1 << (SqlParser.NONE - 425)) | (1 << (SqlParser.OFFLINE - 425)) | (1 << (SqlParser.OFFSET - 425)) | (1 << (SqlParser.OJ - 425)) | (1 << (SqlParser.OLD_PASSWORD - 425)) | (1 << (SqlParser.ONE - 425)) | (1 << (SqlParser.ONLINE - 425)))) !== 0) || ((((_la - 457)) & ~0x1f) == 0 && ((1 << (_la - 457)) & ((1 << (SqlParser.ONLY - 457)) | (1 << (SqlParser.OPEN - 457)) | (1 << (SqlParser.OPTIMIZER_COSTS - 457)) | (1 << (SqlParser.OPTIONS - 457)) | (1 << (SqlParser.OWNER - 457)) | (1 << (SqlParser.PACK_KEYS - 457)) | (1 << (SqlParser.PAGE - 457)) | (1 << (SqlParser.PARSER - 457)) | (1 << (SqlParser.PARTIAL - 457)) | (1 << (SqlParser.PARTITIONING - 457)) | (1 << (SqlParser.PARTITIONS - 457)) | (1 << (SqlParser.PASSWORD - 457)) | (1 << (SqlParser.PHASE - 457)) | (1 << (SqlParser.PLUGIN - 457)) | (1 << (SqlParser.PLUGIN_DIR - 457)) | (1 << (SqlParser.PLUGINS - 457)) | (1 << (SqlParser.PORT - 457)) | (1 << (SqlParser.PRECEDES - 457)) | (1 << (SqlParser.PREPARE - 457)) | (1 << (SqlParser.PRESERVE - 457)) | (1 << (SqlParser.PREV - 457)) | (1 << (SqlParser.PROCESSLIST - 457)) | (1 << (SqlParser.PROFILE - 457)) | (1 << (SqlParser.PROFILES - 457)) | (1 << (SqlParser.PROXY - 457)) | (1 << (SqlParser.QUERY - 457)) | (1 << (SqlParser.QUICK - 457)) | (1 << (SqlParser.REBUILD - 457)) | (1 << (SqlParser.RECOVER - 457)) | (1 << (SqlParser.REDO_BUFFER_SIZE - 457)) | (1 << (SqlParser.REDUNDANT - 457)) | (1 << (SqlParser.RELAY - 457)))) !== 0) || ((((_la - 489)) & ~0x1f) == 0 && ((1 << (_la - 489)) & ((1 << (SqlParser.RELAY_LOG_FILE - 489)) | (1 << (SqlParser.RELAY_LOG_POS - 489)) | (1 << (SqlParser.RELAYLOG - 489)) | (1 << (SqlParser.REMOVE - 489)) | (1 << (SqlParser.REORGANIZE - 489)) | (1 << (SqlParser.REPAIR - 489)) | (1 << (SqlParser.REPLICATE_DO_DB - 489)) | (1 << (SqlParser.REPLICATE_DO_TABLE - 489)) | (1 << (SqlParser.REPLICATE_IGNORE_DB - 489)) | (1 << (SqlParser.REPLICATE_IGNORE_TABLE - 489)) | (1 << (SqlParser.REPLICATE_REWRITE_DB - 489)) | (1 << (SqlParser.REPLICATE_WILD_DO_TABLE - 489)) | (1 << (SqlParser.REPLICATE_WILD_IGNORE_TABLE - 489)) | (1 << (SqlParser.REPLICATION - 489)) | (1 << (SqlParser.RESET - 489)) | (1 << (SqlParser.RESUME - 489)) | (1 << (SqlParser.RETURNED_SQLSTATE - 489)) | (1 << (SqlParser.RETURNS - 489)) | (1 << (SqlParser.ROLE - 489)) | (1 << (SqlParser.ROLLBACK - 489)) | (1 << (SqlParser.ROLLUP - 489)) | (1 << (SqlParser.ROTATE - 489)) | (1 << (SqlParser.ROW - 489)) | (1 << (SqlParser.ROWS - 489)) | (1 << (SqlParser.ROW_FORMAT - 489)) | (1 << (SqlParser.SAVEPOINT - 489)) | (1 << (SqlParser.SCHEDULE - 489)) | (1 << (SqlParser.SECURITY - 489)) | (1 << (SqlParser.SERVER - 489)) | (1 << (SqlParser.SESSION - 489)) | (1 << (SqlParser.SHARE - 489)) | (1 << (SqlParser.SHARED - 489)))) !== 0) || ((((_la - 521)) & ~0x1f) == 0 && ((1 << (_la - 521)) & ((1 << (SqlParser.SIGNED - 521)) | (1 << (SqlParser.SIMPLE - 521)) | (1 << (SqlParser.SLAVE - 521)) | (1 << (SqlParser.SLOW - 521)) | (1 << (SqlParser.SNAPSHOT - 521)) | (1 << (SqlParser.SOCKET - 521)) | (1 << (SqlParser.SOME - 521)) | (1 << (SqlParser.SONAME - 521)) | (1 << (SqlParser.SOUNDS - 521)) | (1 << (SqlParser.SOURCE - 521)) | (1 << (SqlParser.SQL_AFTER_GTIDS - 521)) | (1 << (SqlParser.SQL_AFTER_MTS_GAPS - 521)) | (1 << (SqlParser.SQL_BEFORE_GTIDS - 521)) | (1 << (SqlParser.SQL_BUFFER_RESULT - 521)) | (1 << (SqlParser.SQL_CACHE - 521)) | (1 << (SqlParser.SQL_NO_CACHE - 521)) | (1 << (SqlParser.SQL_THREAD - 521)) | (1 << (SqlParser.START - 521)) | (1 << (SqlParser.STARTS - 521)) | (1 << (SqlParser.STATS_AUTO_RECALC - 521)) | (1 << (SqlParser.STATS_PERSISTENT - 521)) | (1 << (SqlParser.STATS_SAMPLE_PAGES - 521)) | (1 << (SqlParser.STATUS - 521)) | (1 << (SqlParser.STOP - 521)) | (1 << (SqlParser.STORAGE - 521)) | (1 << (SqlParser.STRING - 521)) | (1 << (SqlParser.SUBCLASS_ORIGIN - 521)) | (1 << (SqlParser.SUBJECT - 521)) | (1 << (SqlParser.SUBPARTITION - 521)) | (1 << (SqlParser.SUBPARTITIONS - 521)) | (1 << (SqlParser.SUSPEND - 521)))) !== 0) || ((((_la - 553)) & ~0x1f) == 0 && ((1 << (_la - 553)) & ((1 << (SqlParser.SWAPS - 553)) | (1 << (SqlParser.SWITCHES - 553)) | (1 << (SqlParser.TABLE_NAME - 553)) | (1 << (SqlParser.TABLESPACE - 553)) | (1 << (SqlParser.TEMPORARY - 553)) | (1 << (SqlParser.TEMPTABLE - 553)) | (1 << (SqlParser.THAN - 553)) | (1 << (SqlParser.TRADITIONAL - 553)) | (1 << (SqlParser.TRANSACTION - 553)) | (1 << (SqlParser.TRANSACTIONAL - 553)) | (1 << (SqlParser.TRIGGERS - 553)) | (1 << (SqlParser.TRUNCATE - 553)) | (1 << (SqlParser.UNDEFINED - 553)) | (1 << (SqlParser.UNDOFILE - 553)) | (1 << (SqlParser.UNDO_BUFFER_SIZE - 553)) | (1 << (SqlParser.UNINSTALL - 553)) | (1 << (SqlParser.UNKNOWN - 553)) | (1 << (SqlParser.UNTIL - 553)) | (1 << (SqlParser.UPGRADE - 553)) | (1 << (SqlParser.USER - 553)) | (1 << (SqlParser.USE_FRM - 553)) | (1 << (SqlParser.USER_RESOURCES - 553)) | (1 << (SqlParser.VALIDATION - 553)) | (1 << (SqlParser.VALUE - 553)) | (1 << (SqlParser.VARIABLES - 553)) | (1 << (SqlParser.VIEW - 553)) | (1 << (SqlParser.VISIBLE - 553)) | (1 << (SqlParser.WAIT - 553)) | (1 << (SqlParser.WARNINGS - 553)) | (1 << (SqlParser.WITHOUT - 553)) | (1 << (SqlParser.WORK - 553)))) !== 0) || ((((_la - 585)) & ~0x1f) == 0 && ((1 << (_la - 585)) & ((1 << (SqlParser.WRAPPER - 585)) | (1 << (SqlParser.X509 - 585)) | (1 << (SqlParser.XA - 585)) | (1 << (SqlParser.XML - 585)) | (1 << (SqlParser.INTERNAL - 585)) | (1 << (SqlParser.QUARTER - 585)) | (1 << (SqlParser.MONTH - 585)) | (1 << (SqlParser.DAY - 585)) | (1 << (SqlParser.HOUR - 585)) | (1 << (SqlParser.MINUTE - 585)) | (1 << (SqlParser.WEEK - 585)) | (1 << (SqlParser.SECOND - 585)) | (1 << (SqlParser.MICROSECOND - 585)) | (1 << (SqlParser.TABLES - 585)) | (1 << (SqlParser.ROUTINE - 585)) | (1 << (SqlParser.EXECUTE - 585)) | (1 << (SqlParser.FILE - 585)) | (1 << (SqlParser.PROCESS - 585)) | (1 << (SqlParser.RELOAD - 585)) | (1 << (SqlParser.SHUTDOWN - 585)) | (1 << (SqlParser.SUPER - 585)) | (1 << (SqlParser.PRIVILEGES - 585)) | (1 << (SqlParser.AUDIT_ADMIN - 585)) | (1 << (SqlParser.BACKUP_ADMIN - 585)) | (1 << (SqlParser.BINLOG_ADMIN - 585)) | (1 << (SqlParser.BINLOG_ENCRYPTION_ADMIN - 585)) | (1 << (SqlParser.CLONE_ADMIN - 585)))) !== 0) || ((((_la - 617)) & ~0x1f) == 0 && ((1 << (_la - 617)) & ((1 << (SqlParser.CONNECTION_ADMIN - 617)) | (1 << (SqlParser.ENCRYPTION_KEY_ADMIN - 617)) | (1 << (SqlParser.FIREWALL_ADMIN - 617)) | (1 << (SqlParser.FIREWALL_USER - 617)) | (1 << (SqlParser.GROUP_REPLICATION_ADMIN - 617)) | (1 << (SqlParser.INNODB_REDO_LOG_ARCHIVE - 617)) | (1 << (SqlParser.NDB_STORED_USER - 617)) | (1 << (SqlParser.PERSIST_RO_VARIABLES_ADMIN - 617)) | (1 << (SqlParser.REPLICATION_APPLIER - 617)) | (1 << (SqlParser.REPLICATION_SLAVE_ADMIN - 617)) | (1 << (SqlParser.RESOURCE_GROUP_ADMIN - 617)) | (1 << (SqlParser.RESOURCE_GROUP_USER - 617)) | (1 << (SqlParser.ROLE_ADMIN - 617)) | (1 << (SqlParser.SESSION_VARIABLES_ADMIN - 617)) | (1 << (SqlParser.SET_USER_ID - 617)) | (1 << (SqlParser.SHOW_ROUTINE - 617)) | (1 << (SqlParser.SYSTEM_VARIABLES_ADMIN - 617)) | (1 << (SqlParser.TABLE_ENCRYPTION_ADMIN - 617)) | (1 << (SqlParser.VERSION_TOKEN_ADMIN - 617)) | (1 << (SqlParser.XA_RECOVER_ADMIN - 617)) | (1 << (SqlParser.ARMSCII8 - 617)) | (1 << (SqlParser.ASCII - 617)) | (1 << (SqlParser.BIG5 - 617)) | (1 << (SqlParser.CP1250 - 617)) | (1 << (SqlParser.CP1251 - 617)) | (1 << (SqlParser.CP1256 - 617)) | (1 << (SqlParser.CP1257 - 617)) | (1 << (SqlParser.CP850 - 617)) | (1 << (SqlParser.CP852 - 617)) | (1 << (SqlParser.CP866 - 617)) | (1 << (SqlParser.CP932 - 617)) | (1 << (SqlParser.DEC8 - 617)))) !== 0) || ((((_la - 649)) & ~0x1f) == 0 && ((1 << (_la - 649)) & ((1 << (SqlParser.EUCJPMS - 649)) | (1 << (SqlParser.EUCKR - 649)) | (1 << (SqlParser.GB2312 - 649)) | (1 << (SqlParser.GBK - 649)) | (1 << (SqlParser.GEOSTD8 - 649)) | (1 << (SqlParser.GREEK - 649)) | (1 << (SqlParser.HEBREW - 649)) | (1 << (SqlParser.HP8 - 649)) | (1 << (SqlParser.KEYBCS2 - 649)) | (1 << (SqlParser.KOI8R - 649)) | (1 << (SqlParser.KOI8U - 649)) | (1 << (SqlParser.LATIN1 - 649)) | (1 << (SqlParser.LATIN2 - 649)) | (1 << (SqlParser.LATIN5 - 649)) | (1 << (SqlParser.LATIN7 - 649)) | (1 << (SqlParser.MACCE - 649)) | (1 << (SqlParser.MACROMAN - 649)) | (1 << (SqlParser.SJIS - 649)) | (1 << (SqlParser.SWE7 - 649)) | (1 << (SqlParser.TIS620 - 649)) | (1 << (SqlParser.UCS2 - 649)) | (1 << (SqlParser.UJIS - 649)) | (1 << (SqlParser.UTF16 - 649)) | (1 << (SqlParser.UTF16LE - 649)) | (1 << (SqlParser.UTF32 - 649)) | (1 << (SqlParser.UTF8 - 649)) | (1 << (SqlParser.UTF8MB3 - 649)) | (1 << (SqlParser.UTF8MB4 - 649)) | (1 << (SqlParser.ARCHIVE - 649)) | (1 << (SqlParser.BLACKHOLE - 649)) | (1 << (SqlParser.CSV - 649)) | (1 << (SqlParser.FEDERATED - 649)))) !== 0) || ((((_la - 681)) & ~0x1f) == 0 && ((1 << (_la - 681)) & ((1 << (SqlParser.INNODB - 681)) | (1 << (SqlParser.MEMORY - 681)) | (1 << (SqlParser.MRG_MYISAM - 681)) | (1 << (SqlParser.MYISAM - 681)) | (1 << (SqlParser.NDB - 681)) | (1 << (SqlParser.NDBCLUSTER - 681)) | (1 << (SqlParser.PERFORMANCE_SCHEMA - 681)) | (1 << (SqlParser.TOKUDB - 681)) | (1 << (SqlParser.REPEATABLE - 681)) | (1 << (SqlParser.COMMITTED - 681)) | (1 << (SqlParser.UNCOMMITTED - 681)) | (1 << (SqlParser.SERIALIZABLE - 681)) | (1 << (SqlParser.GEOMETRYCOLLECTION - 681)) | (1 << (SqlParser.LINESTRING - 681)) | (1 << (SqlParser.MULTILINESTRING - 681)) | (1 << (SqlParser.MULTIPOINT - 681)) | (1 << (SqlParser.MULTIPOLYGON - 681)) | (1 << (SqlParser.POINT - 681)) | (1 << (SqlParser.POLYGON - 681)) | (1 << (SqlParser.ABS - 681)) | (1 << (SqlParser.ACOS - 681)) | (1 << (SqlParser.ADDDATE - 681)) | (1 << (SqlParser.ADDTIME - 681)) | (1 << (SqlParser.AES_DECRYPT - 681)) | (1 << (SqlParser.AES_ENCRYPT - 681)) | (1 << (SqlParser.AREA - 681)) | (1 << (SqlParser.ASBINARY - 681)) | (1 << (SqlParser.ASIN - 681)) | (1 << (SqlParser.ASTEXT - 681)) | (1 << (SqlParser.ASWKB - 681)))) !== 0) || ((((_la - 713)) & ~0x1f) == 0 && ((1 << (_la - 713)) & ((1 << (SqlParser.ASWKT - 713)) | (1 << (SqlParser.ASYMMETRIC_DECRYPT - 713)) | (1 << (SqlParser.ASYMMETRIC_DERIVE - 713)) | (1 << (SqlParser.ASYMMETRIC_ENCRYPT - 713)) | (1 << (SqlParser.ASYMMETRIC_SIGN - 713)) | (1 << (SqlParser.ASYMMETRIC_VERIFY - 713)) | (1 << (SqlParser.ATAN - 713)) | (1 << (SqlParser.ATAN2 - 713)) | (1 << (SqlParser.BENCHMARK - 713)) | (1 << (SqlParser.BIN - 713)) | (1 << (SqlParser.BIT_COUNT - 713)) | (1 << (SqlParser.BIT_LENGTH - 713)) | (1 << (SqlParser.BUFFER - 713)) | (1 << (SqlParser.CATALOG_NAME - 713)) | (1 << (SqlParser.CEIL - 713)) | (1 << (SqlParser.CEILING - 713)) | (1 << (SqlParser.CENTROID - 713)) | (1 << (SqlParser.CHARACTER_LENGTH - 713)) | (1 << (SqlParser.CHARSET - 713)) | (1 << (SqlParser.CHAR_LENGTH - 713)) | (1 << (SqlParser.COERCIBILITY - 713)) | (1 << (SqlParser.COLLATION - 713)) | (1 << (SqlParser.COMPRESS - 713)) | (1 << (SqlParser.CONCAT - 713)) | (1 << (SqlParser.CONCAT_WS - 713)) | (1 << (SqlParser.CONNECTION_ID - 713)) | (1 << (SqlParser.CONV - 713)) | (1 << (SqlParser.CONVERT_TZ - 713)) | (1 << (SqlParser.COS - 713)) | (1 << (SqlParser.COT - 713)) | (1 << (SqlParser.CRC32 - 713)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PRIV_KEY - 713)))) !== 0) || ((((_la - 745)) & ~0x1f) == 0 && ((1 << (_la - 745)) & ((1 << (SqlParser.CREATE_ASYMMETRIC_PUB_KEY - 745)) | (1 << (SqlParser.CREATE_DH_PARAMETERS - 745)) | (1 << (SqlParser.CREATE_DIGEST - 745)) | (1 << (SqlParser.CROSSES - 745)) | (1 << (SqlParser.DATEDIFF - 745)) | (1 << (SqlParser.DATE_FORMAT - 745)) | (1 << (SqlParser.DAYNAME - 745)) | (1 << (SqlParser.DAYOFMONTH - 745)) | (1 << (SqlParser.DAYOFWEEK - 745)) | (1 << (SqlParser.DAYOFYEAR - 745)) | (1 << (SqlParser.DECODE - 745)) | (1 << (SqlParser.DEGREES - 745)) | (1 << (SqlParser.DES_DECRYPT - 745)) | (1 << (SqlParser.DES_ENCRYPT - 745)) | (1 << (SqlParser.DIMENSION - 745)) | (1 << (SqlParser.DISJOINT - 745)) | (1 << (SqlParser.ELT - 745)) | (1 << (SqlParser.ENCODE - 745)) | (1 << (SqlParser.ENCRYPT - 745)) | (1 << (SqlParser.ENDPOINT - 745)) | (1 << (SqlParser.ENVELOPE - 745)) | (1 << (SqlParser.EQUALS - 745)) | (1 << (SqlParser.EXP - 745)) | (1 << (SqlParser.EXPORT_SET - 745)) | (1 << (SqlParser.EXTERIORRING - 745)) | (1 << (SqlParser.EXTRACTVALUE - 745)) | (1 << (SqlParser.FIELD - 745)) | (1 << (SqlParser.FIND_IN_SET - 745)) | (1 << (SqlParser.FLOOR - 745)) | (1 << (SqlParser.FORMAT - 745)) | (1 << (SqlParser.FOUND_ROWS - 745)) | (1 << (SqlParser.FROM_BASE64 - 745)))) !== 0) || ((((_la - 777)) & ~0x1f) == 0 && ((1 << (_la - 777)) & ((1 << (SqlParser.FROM_DAYS - 777)) | (1 << (SqlParser.FROM_UNIXTIME - 777)) | (1 << (SqlParser.GEOMCOLLFROMTEXT - 777)) | (1 << (SqlParser.GEOMCOLLFROMWKB - 777)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMTEXT - 777)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMWKB - 777)) | (1 << (SqlParser.GEOMETRYFROMTEXT - 777)) | (1 << (SqlParser.GEOMETRYFROMWKB - 777)) | (1 << (SqlParser.GEOMETRYN - 777)) | (1 << (SqlParser.GEOMETRYTYPE - 777)) | (1 << (SqlParser.GEOMFROMTEXT - 777)) | (1 << (SqlParser.GEOMFROMWKB - 777)) | (1 << (SqlParser.GET_FORMAT - 777)) | (1 << (SqlParser.GET_LOCK - 777)) | (1 << (SqlParser.GLENGTH - 777)) | (1 << (SqlParser.GREATEST - 777)) | (1 << (SqlParser.GTID_SUBSET - 777)) | (1 << (SqlParser.GTID_SUBTRACT - 777)) | (1 << (SqlParser.HEX - 777)) | (1 << (SqlParser.IFNULL - 777)) | (1 << (SqlParser.INET6_ATON - 777)) | (1 << (SqlParser.INET6_NTOA - 777)) | (1 << (SqlParser.INET_ATON - 777)) | (1 << (SqlParser.INET_NTOA - 777)) | (1 << (SqlParser.INSTR - 777)) | (1 << (SqlParser.INTERIORRINGN - 777)) | (1 << (SqlParser.INTERSECTS - 777)) | (1 << (SqlParser.ISCLOSED - 777)) | (1 << (SqlParser.ISEMPTY - 777)) | (1 << (SqlParser.ISNULL - 777)) | (1 << (SqlParser.ISSIMPLE - 777)) | (1 << (SqlParser.IS_FREE_LOCK - 777)))) !== 0) || ((((_la - 809)) & ~0x1f) == 0 && ((1 << (_la - 809)) & ((1 << (SqlParser.IS_IPV4 - 809)) | (1 << (SqlParser.IS_IPV4_COMPAT - 809)) | (1 << (SqlParser.IS_IPV4_MAPPED - 809)) | (1 << (SqlParser.IS_IPV6 - 809)) | (1 << (SqlParser.IS_USED_LOCK - 809)) | (1 << (SqlParser.LAST_INSERT_ID - 809)) | (1 << (SqlParser.LCASE - 809)) | (1 << (SqlParser.LEAST - 809)) | (1 << (SqlParser.LENGTH - 809)) | (1 << (SqlParser.LINEFROMTEXT - 809)) | (1 << (SqlParser.LINEFROMWKB - 809)) | (1 << (SqlParser.LINESTRINGFROMTEXT - 809)) | (1 << (SqlParser.LINESTRINGFROMWKB - 809)) | (1 << (SqlParser.LN - 809)) | (1 << (SqlParser.LOAD_FILE - 809)) | (1 << (SqlParser.LOCATE - 809)) | (1 << (SqlParser.LOG - 809)) | (1 << (SqlParser.LOG10 - 809)) | (1 << (SqlParser.LOG2 - 809)) | (1 << (SqlParser.LOWER - 809)) | (1 << (SqlParser.LPAD - 809)) | (1 << (SqlParser.LTRIM - 809)) | (1 << (SqlParser.MAKEDATE - 809)) | (1 << (SqlParser.MAKETIME - 809)) | (1 << (SqlParser.MAKE_SET - 809)) | (1 << (SqlParser.MASTER_POS_WAIT - 809)) | (1 << (SqlParser.MBRCONTAINS - 809)) | (1 << (SqlParser.MBRDISJOINT - 809)) | (1 << (SqlParser.MBREQUAL - 809)) | (1 << (SqlParser.MBRINTERSECTS - 809)) | (1 << (SqlParser.MBROVERLAPS - 809)) | (1 << (SqlParser.MBRTOUCHES - 809)))) !== 0) || ((((_la - 841)) & ~0x1f) == 0 && ((1 << (_la - 841)) & ((1 << (SqlParser.MBRWITHIN - 841)) | (1 << (SqlParser.MD5 - 841)) | (1 << (SqlParser.MLINEFROMTEXT - 841)) | (1 << (SqlParser.MLINEFROMWKB - 841)) | (1 << (SqlParser.MONTHNAME - 841)) | (1 << (SqlParser.MPOINTFROMTEXT - 841)) | (1 << (SqlParser.MPOINTFROMWKB - 841)) | (1 << (SqlParser.MPOLYFROMTEXT - 841)) | (1 << (SqlParser.MPOLYFROMWKB - 841)) | (1 << (SqlParser.MULTILINESTRINGFROMTEXT - 841)) | (1 << (SqlParser.MULTILINESTRINGFROMWKB - 841)) | (1 << (SqlParser.MULTIPOINTFROMTEXT - 841)) | (1 << (SqlParser.MULTIPOINTFROMWKB - 841)) | (1 << (SqlParser.MULTIPOLYGONFROMTEXT - 841)) | (1 << (SqlParser.MULTIPOLYGONFROMWKB - 841)) | (1 << (SqlParser.NAME_CONST - 841)) | (1 << (SqlParser.NULLIF - 841)) | (1 << (SqlParser.NUMGEOMETRIES - 841)) | (1 << (SqlParser.NUMINTERIORRINGS - 841)) | (1 << (SqlParser.NUMPOINTS - 841)) | (1 << (SqlParser.OCT - 841)) | (1 << (SqlParser.OCTET_LENGTH - 841)) | (1 << (SqlParser.ORD - 841)) | (1 << (SqlParser.OVERLAPS - 841)) | (1 << (SqlParser.PERIOD_ADD - 841)) | (1 << (SqlParser.PERIOD_DIFF - 841)) | (1 << (SqlParser.PI - 841)) | (1 << (SqlParser.POINTFROMTEXT - 841)) | (1 << (SqlParser.POINTFROMWKB - 841)) | (1 << (SqlParser.POINTN - 841)) | (1 << (SqlParser.POLYFROMTEXT - 841)) | (1 << (SqlParser.POLYFROMWKB - 841)))) !== 0) || ((((_la - 873)) & ~0x1f) == 0 && ((1 << (_la - 873)) & ((1 << (SqlParser.POLYGONFROMTEXT - 873)) | (1 << (SqlParser.POLYGONFROMWKB - 873)) | (1 << (SqlParser.POW - 873)) | (1 << (SqlParser.POWER - 873)) | (1 << (SqlParser.QUOTE - 873)) | (1 << (SqlParser.RADIANS - 873)) | (1 << (SqlParser.RAND - 873)) | (1 << (SqlParser.RANDOM_BYTES - 873)) | (1 << (SqlParser.RELEASE_LOCK - 873)) | (1 << (SqlParser.REVERSE - 873)) | (1 << (SqlParser.ROUND - 873)) | (1 << (SqlParser.ROW_COUNT - 873)) | (1 << (SqlParser.RPAD - 873)) | (1 << (SqlParser.RTRIM - 873)) | (1 << (SqlParser.SEC_TO_TIME - 873)) | (1 << (SqlParser.SESSION_USER - 873)) | (1 << (SqlParser.SHA - 873)) | (1 << (SqlParser.SHA1 - 873)) | (1 << (SqlParser.SHA2 - 873)) | (1 << (SqlParser.SCHEMA_NAME - 873)) | (1 << (SqlParser.SIGN - 873)) | (1 << (SqlParser.SIN - 873)) | (1 << (SqlParser.SLEEP - 873)) | (1 << (SqlParser.SOUNDEX - 873)) | (1 << (SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS - 873)) | (1 << (SqlParser.SQRT - 873)) | (1 << (SqlParser.SRID - 873)) | (1 << (SqlParser.STARTPOINT - 873)) | (1 << (SqlParser.STRCMP - 873)) | (1 << (SqlParser.STR_TO_DATE - 873)) | (1 << (SqlParser.ST_AREA - 873)) | (1 << (SqlParser.ST_ASBINARY - 873)))) !== 0) || ((((_la - 905)) & ~0x1f) == 0 && ((1 << (_la - 905)) & ((1 << (SqlParser.ST_ASTEXT - 905)) | (1 << (SqlParser.ST_ASWKB - 905)) | (1 << (SqlParser.ST_ASWKT - 905)) | (1 << (SqlParser.ST_BUFFER - 905)) | (1 << (SqlParser.ST_CENTROID - 905)) | (1 << (SqlParser.ST_CONTAINS - 905)) | (1 << (SqlParser.ST_CROSSES - 905)) | (1 << (SqlParser.ST_DIFFERENCE - 905)) | (1 << (SqlParser.ST_DIMENSION - 905)) | (1 << (SqlParser.ST_DISJOINT - 905)) | (1 << (SqlParser.ST_DISTANCE - 905)) | (1 << (SqlParser.ST_ENDPOINT - 905)) | (1 << (SqlParser.ST_ENVELOPE - 905)) | (1 << (SqlParser.ST_EQUALS - 905)) | (1 << (SqlParser.ST_EXTERIORRING - 905)) | (1 << (SqlParser.ST_GEOMCOLLFROMTEXT - 905)) | (1 << (SqlParser.ST_GEOMCOLLFROMTXT - 905)) | (1 << (SqlParser.ST_GEOMCOLLFROMWKB - 905)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT - 905)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB - 905)) | (1 << (SqlParser.ST_GEOMETRYFROMTEXT - 905)) | (1 << (SqlParser.ST_GEOMETRYFROMWKB - 905)) | (1 << (SqlParser.ST_GEOMETRYN - 905)) | (1 << (SqlParser.ST_GEOMETRYTYPE - 905)) | (1 << (SqlParser.ST_GEOMFROMTEXT - 905)) | (1 << (SqlParser.ST_GEOMFROMWKB - 905)) | (1 << (SqlParser.ST_INTERIORRINGN - 905)) | (1 << (SqlParser.ST_INTERSECTION - 905)) | (1 << (SqlParser.ST_INTERSECTS - 905)) | (1 << (SqlParser.ST_ISCLOSED - 905)) | (1 << (SqlParser.ST_ISEMPTY - 905)) | (1 << (SqlParser.ST_ISSIMPLE - 905)))) !== 0) || ((((_la - 937)) & ~0x1f) == 0 && ((1 << (_la - 937)) & ((1 << (SqlParser.ST_LINEFROMTEXT - 937)) | (1 << (SqlParser.ST_LINEFROMWKB - 937)) | (1 << (SqlParser.ST_LINESTRINGFROMTEXT - 937)) | (1 << (SqlParser.ST_LINESTRINGFROMWKB - 937)) | (1 << (SqlParser.ST_NUMGEOMETRIES - 937)) | (1 << (SqlParser.ST_NUMINTERIORRING - 937)) | (1 << (SqlParser.ST_NUMINTERIORRINGS - 937)) | (1 << (SqlParser.ST_NUMPOINTS - 937)) | (1 << (SqlParser.ST_OVERLAPS - 937)) | (1 << (SqlParser.ST_POINTFROMTEXT - 937)) | (1 << (SqlParser.ST_POINTFROMWKB - 937)) | (1 << (SqlParser.ST_POINTN - 937)) | (1 << (SqlParser.ST_POLYFROMTEXT - 937)) | (1 << (SqlParser.ST_POLYFROMWKB - 937)) | (1 << (SqlParser.ST_POLYGONFROMTEXT - 937)) | (1 << (SqlParser.ST_POLYGONFROMWKB - 937)) | (1 << (SqlParser.ST_SRID - 937)) | (1 << (SqlParser.ST_STARTPOINT - 937)) | (1 << (SqlParser.ST_SYMDIFFERENCE - 937)) | (1 << (SqlParser.ST_TOUCHES - 937)) | (1 << (SqlParser.ST_UNION - 937)) | (1 << (SqlParser.ST_WITHIN - 937)) | (1 << (SqlParser.ST_X - 937)) | (1 << (SqlParser.ST_Y - 937)) | (1 << (SqlParser.SUBDATE - 937)) | (1 << (SqlParser.SUBSTRING_INDEX - 937)) | (1 << (SqlParser.SUBTIME - 937)) | (1 << (SqlParser.SYSTEM_USER - 937)) | (1 << (SqlParser.TAN - 937)) | (1 << (SqlParser.TIMEDIFF - 937)) | (1 << (SqlParser.TIMESTAMPADD - 937)) | (1 << (SqlParser.TIMESTAMPDIFF - 937)))) !== 0) || ((((_la - 969)) & ~0x1f) == 0 && ((1 << (_la - 969)) & ((1 << (SqlParser.TIME_FORMAT - 969)) | (1 << (SqlParser.TIME_TO_SEC - 969)) | (1 << (SqlParser.TOUCHES - 969)) | (1 << (SqlParser.TO_BASE64 - 969)) | (1 << (SqlParser.TO_DAYS - 969)) | (1 << (SqlParser.TO_SECONDS - 969)) | (1 << (SqlParser.UCASE - 969)) | (1 << (SqlParser.UNCOMPRESS - 969)) | (1 << (SqlParser.UNCOMPRESSED_LENGTH - 969)) | (1 << (SqlParser.UNHEX - 969)) | (1 << (SqlParser.UNIX_TIMESTAMP - 969)) | (1 << (SqlParser.UPDATEXML - 969)) | (1 << (SqlParser.UPPER - 969)) | (1 << (SqlParser.UUID - 969)) | (1 << (SqlParser.UUID_SHORT - 969)) | (1 << (SqlParser.VALIDATE_PASSWORD_STRENGTH - 969)) | (1 << (SqlParser.VERSION - 969)) | (1 << (SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS - 969)) | (1 << (SqlParser.WEEKDAY - 969)) | (1 << (SqlParser.WEEKOFYEAR - 969)) | (1 << (SqlParser.WEIGHT_STRING - 969)) | (1 << (SqlParser.WITHIN - 969)) | (1 << (SqlParser.YEARWEEK - 969)) | (1 << (SqlParser.Y_FUNCTION - 969)) | (1 << (SqlParser.X_FUNCTION - 969)))) !== 0) || ((((_la - 1006)) & ~0x1f) == 0 && ((1 << (_la - 1006)) & ((1 << (SqlParser.PLUS - 1006)) | (1 << (SqlParser.MINUS - 1006)) | (1 << (SqlParser.EXCLAMATION_SYMBOL - 1006)) | (1 << (SqlParser.BIT_NOT_OP - 1006)) | (1 << (SqlParser.LR_BRACKET - 1006)) | (1 << (SqlParser.ZERO_DECIMAL - 1006)) | (1 << (SqlParser.ONE_DECIMAL - 1006)) | (1 << (SqlParser.TWO_DECIMAL - 1006)) | (1 << (SqlParser.CHARSET_REVERSE_QOUTE_STRING - 1006)) | (1 << (SqlParser.START_NATIONAL_STRING_LITERAL - 1006)) | (1 << (SqlParser.STRING_LITERAL - 1006)) | (1 << (SqlParser.DECIMAL_LITERAL - 1006)) | (1 << (SqlParser.HEXADECIMAL_LITERAL - 1006)))) !== 0) || ((((_la - 1038)) & ~0x1f) == 0 && ((1 << (_la - 1038)) & ((1 << (SqlParser.REAL_LITERAL - 1038)) | (1 << (SqlParser.NULL_SPEC_LITERAL - 1038)) | (1 << (SqlParser.BIT_STRING - 1038)) | (1 << (SqlParser.STRING_CHARSET_NAME - 1038)) | (1 << (SqlParser.ID - 1038)) | (1 << (SqlParser.REVERSE_QUOTE_ID - 1038)) | (1 << (SqlParser.LOCAL_ID - 1038)) | (1 << (SqlParser.GLOBAL_ID - 1038)))) !== 0)) {
+ this.state = 3060;
+ this.expressionsWithDefaults();
+ }
+
+ this.state = 3063;
+ this.match(SqlParser.RR_BRACKET);
+ this.state = 3072;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 3064;
+ this.match(SqlParser.COMMA);
+ this.state = 3065;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 3067;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if((((_la) & ~0x1f) == 0 && ((1 << _la) & ((1 << SqlParser.CASE) | (1 << SqlParser.CAST) | (1 << SqlParser.CONVERT))) !== 0) || ((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (SqlParser.CURRENT - 32)) | (1 << (SqlParser.CURRENT_USER - 32)) | (1 << (SqlParser.DATABASE - 32)) | (1 << (SqlParser.DEFAULT - 32)) | (1 << (SqlParser.DIAGNOSTICS - 32)) | (1 << (SqlParser.EXISTS - 32)) | (1 << (SqlParser.FALSE - 32)))) !== 0) || ((((_la - 69)) & ~0x1f) == 0 && ((1 << (_la - 69)) & ((1 << (SqlParser.IF - 69)) | (1 << (SqlParser.INSERT - 69)) | (1 << (SqlParser.INTERVAL - 69)) | (1 << (SqlParser.LEFT - 69)))) !== 0) || ((((_la - 102)) & ~0x1f) == 0 && ((1 << (_la - 102)) & ((1 << (SqlParser.NOT - 102)) | (1 << (SqlParser.NULL_LITERAL - 102)) | (1 << (SqlParser.NUMBER - 102)) | (1 << (SqlParser.REPLACE - 102)) | (1 << (SqlParser.RIGHT - 102)))) !== 0) || ((((_la - 151)) & ~0x1f) == 0 && ((1 << (_la - 151)) & ((1 << (SqlParser.STACKED - 151)) | (1 << (SqlParser.TRUE - 151)) | (1 << (SqlParser.VALUES - 151)))) !== 0) || ((((_la - 199)) & ~0x1f) == 0 && ((1 << (_la - 199)) & ((1 << (SqlParser.DATE - 199)) | (1 << (SqlParser.TIME - 199)) | (1 << (SqlParser.TIMESTAMP - 199)) | (1 << (SqlParser.DATETIME - 199)) | (1 << (SqlParser.YEAR - 199)) | (1 << (SqlParser.CHAR - 199)) | (1 << (SqlParser.BINARY - 199)) | (1 << (SqlParser.TEXT - 199)) | (1 << (SqlParser.ENUM - 199)) | (1 << (SqlParser.SERIAL - 199)))) !== 0) || ((((_la - 233)) & ~0x1f) == 0 && ((1 << (_la - 233)) & ((1 << (SqlParser.JSON_VALID - 233)) | (1 << (SqlParser.JSON_SCHEMA_VALID - 233)) | (1 << (SqlParser.AVG - 233)) | (1 << (SqlParser.BIT_AND - 233)) | (1 << (SqlParser.BIT_OR - 233)) | (1 << (SqlParser.BIT_XOR - 233)) | (1 << (SqlParser.COUNT - 233)) | (1 << (SqlParser.GROUP_CONCAT - 233)) | (1 << (SqlParser.MAX - 233)) | (1 << (SqlParser.MIN - 233)) | (1 << (SqlParser.STD - 233)) | (1 << (SqlParser.STDDEV - 233)) | (1 << (SqlParser.STDDEV_POP - 233)) | (1 << (SqlParser.STDDEV_SAMP - 233)) | (1 << (SqlParser.SUM - 233)) | (1 << (SqlParser.VAR_POP - 233)) | (1 << (SqlParser.VAR_SAMP - 233)) | (1 << (SqlParser.VARIANCE - 233)) | (1 << (SqlParser.CURRENT_DATE - 233)) | (1 << (SqlParser.CURRENT_TIME - 233)) | (1 << (SqlParser.CURRENT_TIMESTAMP - 233)) | (1 << (SqlParser.LOCALTIME - 233)) | (1 << (SqlParser.CURDATE - 233)) | (1 << (SqlParser.CURTIME - 233)) | (1 << (SqlParser.DATE_ADD - 233)) | (1 << (SqlParser.DATE_SUB - 233)) | (1 << (SqlParser.EXTRACT - 233)) | (1 << (SqlParser.LOCALTIMESTAMP - 233)) | (1 << (SqlParser.NOW - 233)) | (1 << (SqlParser.POSITION - 233)) | (1 << (SqlParser.SUBSTR - 233)) | (1 << (SqlParser.SUBSTRING - 233)))) !== 0) || ((((_la - 265)) & ~0x1f) == 0 && ((1 << (_la - 265)) & ((1 << (SqlParser.SYSDATE - 265)) | (1 << (SqlParser.TRIM - 265)) | (1 << (SqlParser.UTC_DATE - 265)) | (1 << (SqlParser.UTC_TIME - 265)) | (1 << (SqlParser.UTC_TIMESTAMP - 265)) | (1 << (SqlParser.ACCOUNT - 265)) | (1 << (SqlParser.ACTION - 265)) | (1 << (SqlParser.AFTER - 265)) | (1 << (SqlParser.AGGREGATE - 265)) | (1 << (SqlParser.ALGORITHM - 265)) | (1 << (SqlParser.ANY - 265)) | (1 << (SqlParser.AT - 265)) | (1 << (SqlParser.AUTHORS - 265)) | (1 << (SqlParser.AUTOCOMMIT - 265)) | (1 << (SqlParser.AUTOEXTEND_SIZE - 265)) | (1 << (SqlParser.AUTO_INCREMENT - 265)) | (1 << (SqlParser.AVG_ROW_LENGTH - 265)) | (1 << (SqlParser.BEGIN - 265)) | (1 << (SqlParser.BINLOG - 265)) | (1 << (SqlParser.BIT - 265)) | (1 << (SqlParser.BLOCK - 265)) | (1 << (SqlParser.BOOL - 265)) | (1 << (SqlParser.BOOLEAN - 265)) | (1 << (SqlParser.BTREE - 265)) | (1 << (SqlParser.CACHE - 265)) | (1 << (SqlParser.CASCADED - 265)) | (1 << (SqlParser.CHAIN - 265)) | (1 << (SqlParser.CHANGED - 265)) | (1 << (SqlParser.CHANNEL - 265)) | (1 << (SqlParser.CHECKSUM - 265)) | (1 << (SqlParser.PAGE_CHECKSUM - 265)) | (1 << (SqlParser.CIPHER - 265)))) !== 0) || ((((_la - 297)) & ~0x1f) == 0 && ((1 << (_la - 297)) & ((1 << (SqlParser.CLASS_ORIGIN - 297)) | (1 << (SqlParser.CLIENT - 297)) | (1 << (SqlParser.CLOSE - 297)) | (1 << (SqlParser.COALESCE - 297)) | (1 << (SqlParser.CODE - 297)) | (1 << (SqlParser.COLUMNS - 297)) | (1 << (SqlParser.COLUMN_FORMAT - 297)) | (1 << (SqlParser.COLUMN_NAME - 297)) | (1 << (SqlParser.COMMENT - 297)) | (1 << (SqlParser.COMMIT - 297)) | (1 << (SqlParser.COMPACT - 297)) | (1 << (SqlParser.COMPLETION - 297)) | (1 << (SqlParser.COMPRESSED - 297)) | (1 << (SqlParser.COMPRESSION - 297)) | (1 << (SqlParser.CONCURRENT - 297)) | (1 << (SqlParser.CONNECTION - 297)) | (1 << (SqlParser.CONSISTENT - 297)) | (1 << (SqlParser.CONSTRAINT_CATALOG - 297)) | (1 << (SqlParser.CONSTRAINT_SCHEMA - 297)) | (1 << (SqlParser.CONSTRAINT_NAME - 297)) | (1 << (SqlParser.CONTAINS - 297)) | (1 << (SqlParser.CONTEXT - 297)) | (1 << (SqlParser.CONTRIBUTORS - 297)) | (1 << (SqlParser.COPY - 297)) | (1 << (SqlParser.CPU - 297)) | (1 << (SqlParser.CURSOR_NAME - 297)) | (1 << (SqlParser.DATA - 297)) | (1 << (SqlParser.DATAFILE - 297)) | (1 << (SqlParser.DEALLOCATE - 297)) | (1 << (SqlParser.DEFAULT_AUTH - 297)) | (1 << (SqlParser.DEFINER - 297)) | (1 << (SqlParser.DELAY_KEY_WRITE - 297)))) !== 0) || ((((_la - 329)) & ~0x1f) == 0 && ((1 << (_la - 329)) & ((1 << (SqlParser.DES_KEY_FILE - 329)) | (1 << (SqlParser.DIRECTORY - 329)) | (1 << (SqlParser.DISABLE - 329)) | (1 << (SqlParser.DISCARD - 329)) | (1 << (SqlParser.DISK - 329)) | (1 << (SqlParser.DO - 329)) | (1 << (SqlParser.DUMPFILE - 329)) | (1 << (SqlParser.DUPLICATE - 329)) | (1 << (SqlParser.DYNAMIC - 329)) | (1 << (SqlParser.ENABLE - 329)) | (1 << (SqlParser.ENCRYPTION - 329)) | (1 << (SqlParser.END - 329)) | (1 << (SqlParser.ENDS - 329)) | (1 << (SqlParser.ENGINE - 329)) | (1 << (SqlParser.ENGINES - 329)) | (1 << (SqlParser.ERROR - 329)) | (1 << (SqlParser.ERRORS - 329)) | (1 << (SqlParser.ESCAPE - 329)) | (1 << (SqlParser.EVEN - 329)) | (1 << (SqlParser.EVENT - 329)) | (1 << (SqlParser.EVENTS - 329)) | (1 << (SqlParser.EVERY - 329)) | (1 << (SqlParser.EXCHANGE - 329)) | (1 << (SqlParser.EXCLUSIVE - 329)) | (1 << (SqlParser.EXPIRE - 329)) | (1 << (SqlParser.EXPORT - 329)) | (1 << (SqlParser.EXTENDED - 329)) | (1 << (SqlParser.EXTENT_SIZE - 329)) | (1 << (SqlParser.FAST - 329)) | (1 << (SqlParser.FAULTS - 329)) | (1 << (SqlParser.FIELDS - 329)) | (1 << (SqlParser.FILE_BLOCK_SIZE - 329)))) !== 0) || ((((_la - 361)) & ~0x1f) == 0 && ((1 << (_la - 361)) & ((1 << (SqlParser.FILTER - 361)) | (1 << (SqlParser.FIRST - 361)) | (1 << (SqlParser.FIXED - 361)) | (1 << (SqlParser.FLUSH - 361)) | (1 << (SqlParser.FOLLOWS - 361)) | (1 << (SqlParser.FOUND - 361)) | (1 << (SqlParser.FULL - 361)) | (1 << (SqlParser.FUNCTION - 361)) | (1 << (SqlParser.GENERAL - 361)) | (1 << (SqlParser.GLOBAL - 361)) | (1 << (SqlParser.GRANTS - 361)) | (1 << (SqlParser.GROUP_REPLICATION - 361)) | (1 << (SqlParser.HANDLER - 361)) | (1 << (SqlParser.HASH - 361)) | (1 << (SqlParser.HELP - 361)) | (1 << (SqlParser.HOST - 361)) | (1 << (SqlParser.HOSTS - 361)) | (1 << (SqlParser.IDENTIFIED - 361)) | (1 << (SqlParser.IGNORE_SERVER_IDS - 361)) | (1 << (SqlParser.IMPORT - 361)) | (1 << (SqlParser.INDEXES - 361)) | (1 << (SqlParser.INITIAL_SIZE - 361)) | (1 << (SqlParser.INPLACE - 361)) | (1 << (SqlParser.INSERT_METHOD - 361)) | (1 << (SqlParser.INSTALL - 361)) | (1 << (SqlParser.INSTANCE - 361)) | (1 << (SqlParser.INVISIBLE - 361)) | (1 << (SqlParser.INVOKER - 361)) | (1 << (SqlParser.IO - 361)) | (1 << (SqlParser.IO_THREAD - 361)) | (1 << (SqlParser.IPC - 361)) | (1 << (SqlParser.ISOLATION - 361)))) !== 0) || ((((_la - 393)) & ~0x1f) == 0 && ((1 << (_la - 393)) & ((1 << (SqlParser.ISSUER - 393)) | (1 << (SqlParser.JSON - 393)) | (1 << (SqlParser.KEY_BLOCK_SIZE - 393)) | (1 << (SqlParser.LANGUAGE - 393)) | (1 << (SqlParser.LAST - 393)) | (1 << (SqlParser.LEAVES - 393)) | (1 << (SqlParser.LESS - 393)) | (1 << (SqlParser.LEVEL - 393)) | (1 << (SqlParser.LIST - 393)) | (1 << (SqlParser.LOCAL - 393)) | (1 << (SqlParser.LOGFILE - 393)) | (1 << (SqlParser.LOGS - 393)) | (1 << (SqlParser.MASTER - 393)) | (1 << (SqlParser.MASTER_AUTO_POSITION - 393)) | (1 << (SqlParser.MASTER_CONNECT_RETRY - 393)) | (1 << (SqlParser.MASTER_DELAY - 393)) | (1 << (SqlParser.MASTER_HEARTBEAT_PERIOD - 393)) | (1 << (SqlParser.MASTER_HOST - 393)) | (1 << (SqlParser.MASTER_LOG_FILE - 393)) | (1 << (SqlParser.MASTER_LOG_POS - 393)) | (1 << (SqlParser.MASTER_PASSWORD - 393)) | (1 << (SqlParser.MASTER_PORT - 393)) | (1 << (SqlParser.MASTER_RETRY_COUNT - 393)) | (1 << (SqlParser.MASTER_SSL - 393)) | (1 << (SqlParser.MASTER_SSL_CA - 393)) | (1 << (SqlParser.MASTER_SSL_CAPATH - 393)) | (1 << (SqlParser.MASTER_SSL_CERT - 393)) | (1 << (SqlParser.MASTER_SSL_CIPHER - 393)) | (1 << (SqlParser.MASTER_SSL_CRL - 393)) | (1 << (SqlParser.MASTER_SSL_CRLPATH - 393)) | (1 << (SqlParser.MASTER_SSL_KEY - 393)) | (1 << (SqlParser.MASTER_TLS_VERSION - 393)))) !== 0) || ((((_la - 425)) & ~0x1f) == 0 && ((1 << (_la - 425)) & ((1 << (SqlParser.MASTER_USER - 425)) | (1 << (SqlParser.MAX_CONNECTIONS_PER_HOUR - 425)) | (1 << (SqlParser.MAX_QUERIES_PER_HOUR - 425)) | (1 << (SqlParser.MAX_ROWS - 425)) | (1 << (SqlParser.MAX_SIZE - 425)) | (1 << (SqlParser.MAX_UPDATES_PER_HOUR - 425)) | (1 << (SqlParser.MAX_USER_CONNECTIONS - 425)) | (1 << (SqlParser.MEDIUM - 425)) | (1 << (SqlParser.MERGE - 425)) | (1 << (SqlParser.MESSAGE_TEXT - 425)) | (1 << (SqlParser.MID - 425)) | (1 << (SqlParser.MIGRATE - 425)) | (1 << (SqlParser.MIN_ROWS - 425)) | (1 << (SqlParser.MODE - 425)) | (1 << (SqlParser.MODIFY - 425)) | (1 << (SqlParser.MUTEX - 425)) | (1 << (SqlParser.MYSQL - 425)) | (1 << (SqlParser.MYSQL_ERRNO - 425)) | (1 << (SqlParser.NAME - 425)) | (1 << (SqlParser.NAMES - 425)) | (1 << (SqlParser.NCHAR - 425)) | (1 << (SqlParser.NEVER - 425)) | (1 << (SqlParser.NEXT - 425)) | (1 << (SqlParser.NO - 425)) | (1 << (SqlParser.NODEGROUP - 425)) | (1 << (SqlParser.NONE - 425)) | (1 << (SqlParser.OFFLINE - 425)) | (1 << (SqlParser.OFFSET - 425)) | (1 << (SqlParser.OJ - 425)) | (1 << (SqlParser.OLD_PASSWORD - 425)) | (1 << (SqlParser.ONE - 425)) | (1 << (SqlParser.ONLINE - 425)))) !== 0) || ((((_la - 457)) & ~0x1f) == 0 && ((1 << (_la - 457)) & ((1 << (SqlParser.ONLY - 457)) | (1 << (SqlParser.OPEN - 457)) | (1 << (SqlParser.OPTIMIZER_COSTS - 457)) | (1 << (SqlParser.OPTIONS - 457)) | (1 << (SqlParser.OWNER - 457)) | (1 << (SqlParser.PACK_KEYS - 457)) | (1 << (SqlParser.PAGE - 457)) | (1 << (SqlParser.PARSER - 457)) | (1 << (SqlParser.PARTIAL - 457)) | (1 << (SqlParser.PARTITIONING - 457)) | (1 << (SqlParser.PARTITIONS - 457)) | (1 << (SqlParser.PASSWORD - 457)) | (1 << (SqlParser.PHASE - 457)) | (1 << (SqlParser.PLUGIN - 457)) | (1 << (SqlParser.PLUGIN_DIR - 457)) | (1 << (SqlParser.PLUGINS - 457)) | (1 << (SqlParser.PORT - 457)) | (1 << (SqlParser.PRECEDES - 457)) | (1 << (SqlParser.PREPARE - 457)) | (1 << (SqlParser.PRESERVE - 457)) | (1 << (SqlParser.PREV - 457)) | (1 << (SqlParser.PROCESSLIST - 457)) | (1 << (SqlParser.PROFILE - 457)) | (1 << (SqlParser.PROFILES - 457)) | (1 << (SqlParser.PROXY - 457)) | (1 << (SqlParser.QUERY - 457)) | (1 << (SqlParser.QUICK - 457)) | (1 << (SqlParser.REBUILD - 457)) | (1 << (SqlParser.RECOVER - 457)) | (1 << (SqlParser.REDO_BUFFER_SIZE - 457)) | (1 << (SqlParser.REDUNDANT - 457)) | (1 << (SqlParser.RELAY - 457)))) !== 0) || ((((_la - 489)) & ~0x1f) == 0 && ((1 << (_la - 489)) & ((1 << (SqlParser.RELAY_LOG_FILE - 489)) | (1 << (SqlParser.RELAY_LOG_POS - 489)) | (1 << (SqlParser.RELAYLOG - 489)) | (1 << (SqlParser.REMOVE - 489)) | (1 << (SqlParser.REORGANIZE - 489)) | (1 << (SqlParser.REPAIR - 489)) | (1 << (SqlParser.REPLICATE_DO_DB - 489)) | (1 << (SqlParser.REPLICATE_DO_TABLE - 489)) | (1 << (SqlParser.REPLICATE_IGNORE_DB - 489)) | (1 << (SqlParser.REPLICATE_IGNORE_TABLE - 489)) | (1 << (SqlParser.REPLICATE_REWRITE_DB - 489)) | (1 << (SqlParser.REPLICATE_WILD_DO_TABLE - 489)) | (1 << (SqlParser.REPLICATE_WILD_IGNORE_TABLE - 489)) | (1 << (SqlParser.REPLICATION - 489)) | (1 << (SqlParser.RESET - 489)) | (1 << (SqlParser.RESUME - 489)) | (1 << (SqlParser.RETURNED_SQLSTATE - 489)) | (1 << (SqlParser.RETURNS - 489)) | (1 << (SqlParser.ROLE - 489)) | (1 << (SqlParser.ROLLBACK - 489)) | (1 << (SqlParser.ROLLUP - 489)) | (1 << (SqlParser.ROTATE - 489)) | (1 << (SqlParser.ROW - 489)) | (1 << (SqlParser.ROWS - 489)) | (1 << (SqlParser.ROW_FORMAT - 489)) | (1 << (SqlParser.SAVEPOINT - 489)) | (1 << (SqlParser.SCHEDULE - 489)) | (1 << (SqlParser.SECURITY - 489)) | (1 << (SqlParser.SERVER - 489)) | (1 << (SqlParser.SESSION - 489)) | (1 << (SqlParser.SHARE - 489)) | (1 << (SqlParser.SHARED - 489)))) !== 0) || ((((_la - 521)) & ~0x1f) == 0 && ((1 << (_la - 521)) & ((1 << (SqlParser.SIGNED - 521)) | (1 << (SqlParser.SIMPLE - 521)) | (1 << (SqlParser.SLAVE - 521)) | (1 << (SqlParser.SLOW - 521)) | (1 << (SqlParser.SNAPSHOT - 521)) | (1 << (SqlParser.SOCKET - 521)) | (1 << (SqlParser.SOME - 521)) | (1 << (SqlParser.SONAME - 521)) | (1 << (SqlParser.SOUNDS - 521)) | (1 << (SqlParser.SOURCE - 521)) | (1 << (SqlParser.SQL_AFTER_GTIDS - 521)) | (1 << (SqlParser.SQL_AFTER_MTS_GAPS - 521)) | (1 << (SqlParser.SQL_BEFORE_GTIDS - 521)) | (1 << (SqlParser.SQL_BUFFER_RESULT - 521)) | (1 << (SqlParser.SQL_CACHE - 521)) | (1 << (SqlParser.SQL_NO_CACHE - 521)) | (1 << (SqlParser.SQL_THREAD - 521)) | (1 << (SqlParser.START - 521)) | (1 << (SqlParser.STARTS - 521)) | (1 << (SqlParser.STATS_AUTO_RECALC - 521)) | (1 << (SqlParser.STATS_PERSISTENT - 521)) | (1 << (SqlParser.STATS_SAMPLE_PAGES - 521)) | (1 << (SqlParser.STATUS - 521)) | (1 << (SqlParser.STOP - 521)) | (1 << (SqlParser.STORAGE - 521)) | (1 << (SqlParser.STRING - 521)) | (1 << (SqlParser.SUBCLASS_ORIGIN - 521)) | (1 << (SqlParser.SUBJECT - 521)) | (1 << (SqlParser.SUBPARTITION - 521)) | (1 << (SqlParser.SUBPARTITIONS - 521)) | (1 << (SqlParser.SUSPEND - 521)))) !== 0) || ((((_la - 553)) & ~0x1f) == 0 && ((1 << (_la - 553)) & ((1 << (SqlParser.SWAPS - 553)) | (1 << (SqlParser.SWITCHES - 553)) | (1 << (SqlParser.TABLE_NAME - 553)) | (1 << (SqlParser.TABLESPACE - 553)) | (1 << (SqlParser.TEMPORARY - 553)) | (1 << (SqlParser.TEMPTABLE - 553)) | (1 << (SqlParser.THAN - 553)) | (1 << (SqlParser.TRADITIONAL - 553)) | (1 << (SqlParser.TRANSACTION - 553)) | (1 << (SqlParser.TRANSACTIONAL - 553)) | (1 << (SqlParser.TRIGGERS - 553)) | (1 << (SqlParser.TRUNCATE - 553)) | (1 << (SqlParser.UNDEFINED - 553)) | (1 << (SqlParser.UNDOFILE - 553)) | (1 << (SqlParser.UNDO_BUFFER_SIZE - 553)) | (1 << (SqlParser.UNINSTALL - 553)) | (1 << (SqlParser.UNKNOWN - 553)) | (1 << (SqlParser.UNTIL - 553)) | (1 << (SqlParser.UPGRADE - 553)) | (1 << (SqlParser.USER - 553)) | (1 << (SqlParser.USE_FRM - 553)) | (1 << (SqlParser.USER_RESOURCES - 553)) | (1 << (SqlParser.VALIDATION - 553)) | (1 << (SqlParser.VALUE - 553)) | (1 << (SqlParser.VARIABLES - 553)) | (1 << (SqlParser.VIEW - 553)) | (1 << (SqlParser.VISIBLE - 553)) | (1 << (SqlParser.WAIT - 553)) | (1 << (SqlParser.WARNINGS - 553)) | (1 << (SqlParser.WITHOUT - 553)) | (1 << (SqlParser.WORK - 553)))) !== 0) || ((((_la - 585)) & ~0x1f) == 0 && ((1 << (_la - 585)) & ((1 << (SqlParser.WRAPPER - 585)) | (1 << (SqlParser.X509 - 585)) | (1 << (SqlParser.XA - 585)) | (1 << (SqlParser.XML - 585)) | (1 << (SqlParser.INTERNAL - 585)) | (1 << (SqlParser.QUARTER - 585)) | (1 << (SqlParser.MONTH - 585)) | (1 << (SqlParser.DAY - 585)) | (1 << (SqlParser.HOUR - 585)) | (1 << (SqlParser.MINUTE - 585)) | (1 << (SqlParser.WEEK - 585)) | (1 << (SqlParser.SECOND - 585)) | (1 << (SqlParser.MICROSECOND - 585)) | (1 << (SqlParser.TABLES - 585)) | (1 << (SqlParser.ROUTINE - 585)) | (1 << (SqlParser.EXECUTE - 585)) | (1 << (SqlParser.FILE - 585)) | (1 << (SqlParser.PROCESS - 585)) | (1 << (SqlParser.RELOAD - 585)) | (1 << (SqlParser.SHUTDOWN - 585)) | (1 << (SqlParser.SUPER - 585)) | (1 << (SqlParser.PRIVILEGES - 585)) | (1 << (SqlParser.AUDIT_ADMIN - 585)) | (1 << (SqlParser.BACKUP_ADMIN - 585)) | (1 << (SqlParser.BINLOG_ADMIN - 585)) | (1 << (SqlParser.BINLOG_ENCRYPTION_ADMIN - 585)) | (1 << (SqlParser.CLONE_ADMIN - 585)))) !== 0) || ((((_la - 617)) & ~0x1f) == 0 && ((1 << (_la - 617)) & ((1 << (SqlParser.CONNECTION_ADMIN - 617)) | (1 << (SqlParser.ENCRYPTION_KEY_ADMIN - 617)) | (1 << (SqlParser.FIREWALL_ADMIN - 617)) | (1 << (SqlParser.FIREWALL_USER - 617)) | (1 << (SqlParser.GROUP_REPLICATION_ADMIN - 617)) | (1 << (SqlParser.INNODB_REDO_LOG_ARCHIVE - 617)) | (1 << (SqlParser.NDB_STORED_USER - 617)) | (1 << (SqlParser.PERSIST_RO_VARIABLES_ADMIN - 617)) | (1 << (SqlParser.REPLICATION_APPLIER - 617)) | (1 << (SqlParser.REPLICATION_SLAVE_ADMIN - 617)) | (1 << (SqlParser.RESOURCE_GROUP_ADMIN - 617)) | (1 << (SqlParser.RESOURCE_GROUP_USER - 617)) | (1 << (SqlParser.ROLE_ADMIN - 617)) | (1 << (SqlParser.SESSION_VARIABLES_ADMIN - 617)) | (1 << (SqlParser.SET_USER_ID - 617)) | (1 << (SqlParser.SHOW_ROUTINE - 617)) | (1 << (SqlParser.SYSTEM_VARIABLES_ADMIN - 617)) | (1 << (SqlParser.TABLE_ENCRYPTION_ADMIN - 617)) | (1 << (SqlParser.VERSION_TOKEN_ADMIN - 617)) | (1 << (SqlParser.XA_RECOVER_ADMIN - 617)) | (1 << (SqlParser.ARMSCII8 - 617)) | (1 << (SqlParser.ASCII - 617)) | (1 << (SqlParser.BIG5 - 617)) | (1 << (SqlParser.CP1250 - 617)) | (1 << (SqlParser.CP1251 - 617)) | (1 << (SqlParser.CP1256 - 617)) | (1 << (SqlParser.CP1257 - 617)) | (1 << (SqlParser.CP850 - 617)) | (1 << (SqlParser.CP852 - 617)) | (1 << (SqlParser.CP866 - 617)) | (1 << (SqlParser.CP932 - 617)) | (1 << (SqlParser.DEC8 - 617)))) !== 0) || ((((_la - 649)) & ~0x1f) == 0 && ((1 << (_la - 649)) & ((1 << (SqlParser.EUCJPMS - 649)) | (1 << (SqlParser.EUCKR - 649)) | (1 << (SqlParser.GB2312 - 649)) | (1 << (SqlParser.GBK - 649)) | (1 << (SqlParser.GEOSTD8 - 649)) | (1 << (SqlParser.GREEK - 649)) | (1 << (SqlParser.HEBREW - 649)) | (1 << (SqlParser.HP8 - 649)) | (1 << (SqlParser.KEYBCS2 - 649)) | (1 << (SqlParser.KOI8R - 649)) | (1 << (SqlParser.KOI8U - 649)) | (1 << (SqlParser.LATIN1 - 649)) | (1 << (SqlParser.LATIN2 - 649)) | (1 << (SqlParser.LATIN5 - 649)) | (1 << (SqlParser.LATIN7 - 649)) | (1 << (SqlParser.MACCE - 649)) | (1 << (SqlParser.MACROMAN - 649)) | (1 << (SqlParser.SJIS - 649)) | (1 << (SqlParser.SWE7 - 649)) | (1 << (SqlParser.TIS620 - 649)) | (1 << (SqlParser.UCS2 - 649)) | (1 << (SqlParser.UJIS - 649)) | (1 << (SqlParser.UTF16 - 649)) | (1 << (SqlParser.UTF16LE - 649)) | (1 << (SqlParser.UTF32 - 649)) | (1 << (SqlParser.UTF8 - 649)) | (1 << (SqlParser.UTF8MB3 - 649)) | (1 << (SqlParser.UTF8MB4 - 649)) | (1 << (SqlParser.ARCHIVE - 649)) | (1 << (SqlParser.BLACKHOLE - 649)) | (1 << (SqlParser.CSV - 649)) | (1 << (SqlParser.FEDERATED - 649)))) !== 0) || ((((_la - 681)) & ~0x1f) == 0 && ((1 << (_la - 681)) & ((1 << (SqlParser.INNODB - 681)) | (1 << (SqlParser.MEMORY - 681)) | (1 << (SqlParser.MRG_MYISAM - 681)) | (1 << (SqlParser.MYISAM - 681)) | (1 << (SqlParser.NDB - 681)) | (1 << (SqlParser.NDBCLUSTER - 681)) | (1 << (SqlParser.PERFORMANCE_SCHEMA - 681)) | (1 << (SqlParser.TOKUDB - 681)) | (1 << (SqlParser.REPEATABLE - 681)) | (1 << (SqlParser.COMMITTED - 681)) | (1 << (SqlParser.UNCOMMITTED - 681)) | (1 << (SqlParser.SERIALIZABLE - 681)) | (1 << (SqlParser.GEOMETRYCOLLECTION - 681)) | (1 << (SqlParser.LINESTRING - 681)) | (1 << (SqlParser.MULTILINESTRING - 681)) | (1 << (SqlParser.MULTIPOINT - 681)) | (1 << (SqlParser.MULTIPOLYGON - 681)) | (1 << (SqlParser.POINT - 681)) | (1 << (SqlParser.POLYGON - 681)) | (1 << (SqlParser.ABS - 681)) | (1 << (SqlParser.ACOS - 681)) | (1 << (SqlParser.ADDDATE - 681)) | (1 << (SqlParser.ADDTIME - 681)) | (1 << (SqlParser.AES_DECRYPT - 681)) | (1 << (SqlParser.AES_ENCRYPT - 681)) | (1 << (SqlParser.AREA - 681)) | (1 << (SqlParser.ASBINARY - 681)) | (1 << (SqlParser.ASIN - 681)) | (1 << (SqlParser.ASTEXT - 681)) | (1 << (SqlParser.ASWKB - 681)))) !== 0) || ((((_la - 713)) & ~0x1f) == 0 && ((1 << (_la - 713)) & ((1 << (SqlParser.ASWKT - 713)) | (1 << (SqlParser.ASYMMETRIC_DECRYPT - 713)) | (1 << (SqlParser.ASYMMETRIC_DERIVE - 713)) | (1 << (SqlParser.ASYMMETRIC_ENCRYPT - 713)) | (1 << (SqlParser.ASYMMETRIC_SIGN - 713)) | (1 << (SqlParser.ASYMMETRIC_VERIFY - 713)) | (1 << (SqlParser.ATAN - 713)) | (1 << (SqlParser.ATAN2 - 713)) | (1 << (SqlParser.BENCHMARK - 713)) | (1 << (SqlParser.BIN - 713)) | (1 << (SqlParser.BIT_COUNT - 713)) | (1 << (SqlParser.BIT_LENGTH - 713)) | (1 << (SqlParser.BUFFER - 713)) | (1 << (SqlParser.CATALOG_NAME - 713)) | (1 << (SqlParser.CEIL - 713)) | (1 << (SqlParser.CEILING - 713)) | (1 << (SqlParser.CENTROID - 713)) | (1 << (SqlParser.CHARACTER_LENGTH - 713)) | (1 << (SqlParser.CHARSET - 713)) | (1 << (SqlParser.CHAR_LENGTH - 713)) | (1 << (SqlParser.COERCIBILITY - 713)) | (1 << (SqlParser.COLLATION - 713)) | (1 << (SqlParser.COMPRESS - 713)) | (1 << (SqlParser.CONCAT - 713)) | (1 << (SqlParser.CONCAT_WS - 713)) | (1 << (SqlParser.CONNECTION_ID - 713)) | (1 << (SqlParser.CONV - 713)) | (1 << (SqlParser.CONVERT_TZ - 713)) | (1 << (SqlParser.COS - 713)) | (1 << (SqlParser.COT - 713)) | (1 << (SqlParser.CRC32 - 713)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PRIV_KEY - 713)))) !== 0) || ((((_la - 745)) & ~0x1f) == 0 && ((1 << (_la - 745)) & ((1 << (SqlParser.CREATE_ASYMMETRIC_PUB_KEY - 745)) | (1 << (SqlParser.CREATE_DH_PARAMETERS - 745)) | (1 << (SqlParser.CREATE_DIGEST - 745)) | (1 << (SqlParser.CROSSES - 745)) | (1 << (SqlParser.DATEDIFF - 745)) | (1 << (SqlParser.DATE_FORMAT - 745)) | (1 << (SqlParser.DAYNAME - 745)) | (1 << (SqlParser.DAYOFMONTH - 745)) | (1 << (SqlParser.DAYOFWEEK - 745)) | (1 << (SqlParser.DAYOFYEAR - 745)) | (1 << (SqlParser.DECODE - 745)) | (1 << (SqlParser.DEGREES - 745)) | (1 << (SqlParser.DES_DECRYPT - 745)) | (1 << (SqlParser.DES_ENCRYPT - 745)) | (1 << (SqlParser.DIMENSION - 745)) | (1 << (SqlParser.DISJOINT - 745)) | (1 << (SqlParser.ELT - 745)) | (1 << (SqlParser.ENCODE - 745)) | (1 << (SqlParser.ENCRYPT - 745)) | (1 << (SqlParser.ENDPOINT - 745)) | (1 << (SqlParser.ENVELOPE - 745)) | (1 << (SqlParser.EQUALS - 745)) | (1 << (SqlParser.EXP - 745)) | (1 << (SqlParser.EXPORT_SET - 745)) | (1 << (SqlParser.EXTERIORRING - 745)) | (1 << (SqlParser.EXTRACTVALUE - 745)) | (1 << (SqlParser.FIELD - 745)) | (1 << (SqlParser.FIND_IN_SET - 745)) | (1 << (SqlParser.FLOOR - 745)) | (1 << (SqlParser.FORMAT - 745)) | (1 << (SqlParser.FOUND_ROWS - 745)) | (1 << (SqlParser.FROM_BASE64 - 745)))) !== 0) || ((((_la - 777)) & ~0x1f) == 0 && ((1 << (_la - 777)) & ((1 << (SqlParser.FROM_DAYS - 777)) | (1 << (SqlParser.FROM_UNIXTIME - 777)) | (1 << (SqlParser.GEOMCOLLFROMTEXT - 777)) | (1 << (SqlParser.GEOMCOLLFROMWKB - 777)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMTEXT - 777)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMWKB - 777)) | (1 << (SqlParser.GEOMETRYFROMTEXT - 777)) | (1 << (SqlParser.GEOMETRYFROMWKB - 777)) | (1 << (SqlParser.GEOMETRYN - 777)) | (1 << (SqlParser.GEOMETRYTYPE - 777)) | (1 << (SqlParser.GEOMFROMTEXT - 777)) | (1 << (SqlParser.GEOMFROMWKB - 777)) | (1 << (SqlParser.GET_FORMAT - 777)) | (1 << (SqlParser.GET_LOCK - 777)) | (1 << (SqlParser.GLENGTH - 777)) | (1 << (SqlParser.GREATEST - 777)) | (1 << (SqlParser.GTID_SUBSET - 777)) | (1 << (SqlParser.GTID_SUBTRACT - 777)) | (1 << (SqlParser.HEX - 777)) | (1 << (SqlParser.IFNULL - 777)) | (1 << (SqlParser.INET6_ATON - 777)) | (1 << (SqlParser.INET6_NTOA - 777)) | (1 << (SqlParser.INET_ATON - 777)) | (1 << (SqlParser.INET_NTOA - 777)) | (1 << (SqlParser.INSTR - 777)) | (1 << (SqlParser.INTERIORRINGN - 777)) | (1 << (SqlParser.INTERSECTS - 777)) | (1 << (SqlParser.ISCLOSED - 777)) | (1 << (SqlParser.ISEMPTY - 777)) | (1 << (SqlParser.ISNULL - 777)) | (1 << (SqlParser.ISSIMPLE - 777)) | (1 << (SqlParser.IS_FREE_LOCK - 777)))) !== 0) || ((((_la - 809)) & ~0x1f) == 0 && ((1 << (_la - 809)) & ((1 << (SqlParser.IS_IPV4 - 809)) | (1 << (SqlParser.IS_IPV4_COMPAT - 809)) | (1 << (SqlParser.IS_IPV4_MAPPED - 809)) | (1 << (SqlParser.IS_IPV6 - 809)) | (1 << (SqlParser.IS_USED_LOCK - 809)) | (1 << (SqlParser.LAST_INSERT_ID - 809)) | (1 << (SqlParser.LCASE - 809)) | (1 << (SqlParser.LEAST - 809)) | (1 << (SqlParser.LENGTH - 809)) | (1 << (SqlParser.LINEFROMTEXT - 809)) | (1 << (SqlParser.LINEFROMWKB - 809)) | (1 << (SqlParser.LINESTRINGFROMTEXT - 809)) | (1 << (SqlParser.LINESTRINGFROMWKB - 809)) | (1 << (SqlParser.LN - 809)) | (1 << (SqlParser.LOAD_FILE - 809)) | (1 << (SqlParser.LOCATE - 809)) | (1 << (SqlParser.LOG - 809)) | (1 << (SqlParser.LOG10 - 809)) | (1 << (SqlParser.LOG2 - 809)) | (1 << (SqlParser.LOWER - 809)) | (1 << (SqlParser.LPAD - 809)) | (1 << (SqlParser.LTRIM - 809)) | (1 << (SqlParser.MAKEDATE - 809)) | (1 << (SqlParser.MAKETIME - 809)) | (1 << (SqlParser.MAKE_SET - 809)) | (1 << (SqlParser.MASTER_POS_WAIT - 809)) | (1 << (SqlParser.MBRCONTAINS - 809)) | (1 << (SqlParser.MBRDISJOINT - 809)) | (1 << (SqlParser.MBREQUAL - 809)) | (1 << (SqlParser.MBRINTERSECTS - 809)) | (1 << (SqlParser.MBROVERLAPS - 809)) | (1 << (SqlParser.MBRTOUCHES - 809)))) !== 0) || ((((_la - 841)) & ~0x1f) == 0 && ((1 << (_la - 841)) & ((1 << (SqlParser.MBRWITHIN - 841)) | (1 << (SqlParser.MD5 - 841)) | (1 << (SqlParser.MLINEFROMTEXT - 841)) | (1 << (SqlParser.MLINEFROMWKB - 841)) | (1 << (SqlParser.MONTHNAME - 841)) | (1 << (SqlParser.MPOINTFROMTEXT - 841)) | (1 << (SqlParser.MPOINTFROMWKB - 841)) | (1 << (SqlParser.MPOLYFROMTEXT - 841)) | (1 << (SqlParser.MPOLYFROMWKB - 841)) | (1 << (SqlParser.MULTILINESTRINGFROMTEXT - 841)) | (1 << (SqlParser.MULTILINESTRINGFROMWKB - 841)) | (1 << (SqlParser.MULTIPOINTFROMTEXT - 841)) | (1 << (SqlParser.MULTIPOINTFROMWKB - 841)) | (1 << (SqlParser.MULTIPOLYGONFROMTEXT - 841)) | (1 << (SqlParser.MULTIPOLYGONFROMWKB - 841)) | (1 << (SqlParser.NAME_CONST - 841)) | (1 << (SqlParser.NULLIF - 841)) | (1 << (SqlParser.NUMGEOMETRIES - 841)) | (1 << (SqlParser.NUMINTERIORRINGS - 841)) | (1 << (SqlParser.NUMPOINTS - 841)) | (1 << (SqlParser.OCT - 841)) | (1 << (SqlParser.OCTET_LENGTH - 841)) | (1 << (SqlParser.ORD - 841)) | (1 << (SqlParser.OVERLAPS - 841)) | (1 << (SqlParser.PERIOD_ADD - 841)) | (1 << (SqlParser.PERIOD_DIFF - 841)) | (1 << (SqlParser.PI - 841)) | (1 << (SqlParser.POINTFROMTEXT - 841)) | (1 << (SqlParser.POINTFROMWKB - 841)) | (1 << (SqlParser.POINTN - 841)) | (1 << (SqlParser.POLYFROMTEXT - 841)) | (1 << (SqlParser.POLYFROMWKB - 841)))) !== 0) || ((((_la - 873)) & ~0x1f) == 0 && ((1 << (_la - 873)) & ((1 << (SqlParser.POLYGONFROMTEXT - 873)) | (1 << (SqlParser.POLYGONFROMWKB - 873)) | (1 << (SqlParser.POW - 873)) | (1 << (SqlParser.POWER - 873)) | (1 << (SqlParser.QUOTE - 873)) | (1 << (SqlParser.RADIANS - 873)) | (1 << (SqlParser.RAND - 873)) | (1 << (SqlParser.RANDOM_BYTES - 873)) | (1 << (SqlParser.RELEASE_LOCK - 873)) | (1 << (SqlParser.REVERSE - 873)) | (1 << (SqlParser.ROUND - 873)) | (1 << (SqlParser.ROW_COUNT - 873)) | (1 << (SqlParser.RPAD - 873)) | (1 << (SqlParser.RTRIM - 873)) | (1 << (SqlParser.SEC_TO_TIME - 873)) | (1 << (SqlParser.SESSION_USER - 873)) | (1 << (SqlParser.SHA - 873)) | (1 << (SqlParser.SHA1 - 873)) | (1 << (SqlParser.SHA2 - 873)) | (1 << (SqlParser.SCHEMA_NAME - 873)) | (1 << (SqlParser.SIGN - 873)) | (1 << (SqlParser.SIN - 873)) | (1 << (SqlParser.SLEEP - 873)) | (1 << (SqlParser.SOUNDEX - 873)) | (1 << (SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS - 873)) | (1 << (SqlParser.SQRT - 873)) | (1 << (SqlParser.SRID - 873)) | (1 << (SqlParser.STARTPOINT - 873)) | (1 << (SqlParser.STRCMP - 873)) | (1 << (SqlParser.STR_TO_DATE - 873)) | (1 << (SqlParser.ST_AREA - 873)) | (1 << (SqlParser.ST_ASBINARY - 873)))) !== 0) || ((((_la - 905)) & ~0x1f) == 0 && ((1 << (_la - 905)) & ((1 << (SqlParser.ST_ASTEXT - 905)) | (1 << (SqlParser.ST_ASWKB - 905)) | (1 << (SqlParser.ST_ASWKT - 905)) | (1 << (SqlParser.ST_BUFFER - 905)) | (1 << (SqlParser.ST_CENTROID - 905)) | (1 << (SqlParser.ST_CONTAINS - 905)) | (1 << (SqlParser.ST_CROSSES - 905)) | (1 << (SqlParser.ST_DIFFERENCE - 905)) | (1 << (SqlParser.ST_DIMENSION - 905)) | (1 << (SqlParser.ST_DISJOINT - 905)) | (1 << (SqlParser.ST_DISTANCE - 905)) | (1 << (SqlParser.ST_ENDPOINT - 905)) | (1 << (SqlParser.ST_ENVELOPE - 905)) | (1 << (SqlParser.ST_EQUALS - 905)) | (1 << (SqlParser.ST_EXTERIORRING - 905)) | (1 << (SqlParser.ST_GEOMCOLLFROMTEXT - 905)) | (1 << (SqlParser.ST_GEOMCOLLFROMTXT - 905)) | (1 << (SqlParser.ST_GEOMCOLLFROMWKB - 905)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT - 905)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB - 905)) | (1 << (SqlParser.ST_GEOMETRYFROMTEXT - 905)) | (1 << (SqlParser.ST_GEOMETRYFROMWKB - 905)) | (1 << (SqlParser.ST_GEOMETRYN - 905)) | (1 << (SqlParser.ST_GEOMETRYTYPE - 905)) | (1 << (SqlParser.ST_GEOMFROMTEXT - 905)) | (1 << (SqlParser.ST_GEOMFROMWKB - 905)) | (1 << (SqlParser.ST_INTERIORRINGN - 905)) | (1 << (SqlParser.ST_INTERSECTION - 905)) | (1 << (SqlParser.ST_INTERSECTS - 905)) | (1 << (SqlParser.ST_ISCLOSED - 905)) | (1 << (SqlParser.ST_ISEMPTY - 905)) | (1 << (SqlParser.ST_ISSIMPLE - 905)))) !== 0) || ((((_la - 937)) & ~0x1f) == 0 && ((1 << (_la - 937)) & ((1 << (SqlParser.ST_LINEFROMTEXT - 937)) | (1 << (SqlParser.ST_LINEFROMWKB - 937)) | (1 << (SqlParser.ST_LINESTRINGFROMTEXT - 937)) | (1 << (SqlParser.ST_LINESTRINGFROMWKB - 937)) | (1 << (SqlParser.ST_NUMGEOMETRIES - 937)) | (1 << (SqlParser.ST_NUMINTERIORRING - 937)) | (1 << (SqlParser.ST_NUMINTERIORRINGS - 937)) | (1 << (SqlParser.ST_NUMPOINTS - 937)) | (1 << (SqlParser.ST_OVERLAPS - 937)) | (1 << (SqlParser.ST_POINTFROMTEXT - 937)) | (1 << (SqlParser.ST_POINTFROMWKB - 937)) | (1 << (SqlParser.ST_POINTN - 937)) | (1 << (SqlParser.ST_POLYFROMTEXT - 937)) | (1 << (SqlParser.ST_POLYFROMWKB - 937)) | (1 << (SqlParser.ST_POLYGONFROMTEXT - 937)) | (1 << (SqlParser.ST_POLYGONFROMWKB - 937)) | (1 << (SqlParser.ST_SRID - 937)) | (1 << (SqlParser.ST_STARTPOINT - 937)) | (1 << (SqlParser.ST_SYMDIFFERENCE - 937)) | (1 << (SqlParser.ST_TOUCHES - 937)) | (1 << (SqlParser.ST_UNION - 937)) | (1 << (SqlParser.ST_WITHIN - 937)) | (1 << (SqlParser.ST_X - 937)) | (1 << (SqlParser.ST_Y - 937)) | (1 << (SqlParser.SUBDATE - 937)) | (1 << (SqlParser.SUBSTRING_INDEX - 937)) | (1 << (SqlParser.SUBTIME - 937)) | (1 << (SqlParser.SYSTEM_USER - 937)) | (1 << (SqlParser.TAN - 937)) | (1 << (SqlParser.TIMEDIFF - 937)) | (1 << (SqlParser.TIMESTAMPADD - 937)) | (1 << (SqlParser.TIMESTAMPDIFF - 937)))) !== 0) || ((((_la - 969)) & ~0x1f) == 0 && ((1 << (_la - 969)) & ((1 << (SqlParser.TIME_FORMAT - 969)) | (1 << (SqlParser.TIME_TO_SEC - 969)) | (1 << (SqlParser.TOUCHES - 969)) | (1 << (SqlParser.TO_BASE64 - 969)) | (1 << (SqlParser.TO_DAYS - 969)) | (1 << (SqlParser.TO_SECONDS - 969)) | (1 << (SqlParser.UCASE - 969)) | (1 << (SqlParser.UNCOMPRESS - 969)) | (1 << (SqlParser.UNCOMPRESSED_LENGTH - 969)) | (1 << (SqlParser.UNHEX - 969)) | (1 << (SqlParser.UNIX_TIMESTAMP - 969)) | (1 << (SqlParser.UPDATEXML - 969)) | (1 << (SqlParser.UPPER - 969)) | (1 << (SqlParser.UUID - 969)) | (1 << (SqlParser.UUID_SHORT - 969)) | (1 << (SqlParser.VALIDATE_PASSWORD_STRENGTH - 969)) | (1 << (SqlParser.VERSION - 969)) | (1 << (SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS - 969)) | (1 << (SqlParser.WEEKDAY - 969)) | (1 << (SqlParser.WEEKOFYEAR - 969)) | (1 << (SqlParser.WEIGHT_STRING - 969)) | (1 << (SqlParser.WITHIN - 969)) | (1 << (SqlParser.YEARWEEK - 969)) | (1 << (SqlParser.Y_FUNCTION - 969)) | (1 << (SqlParser.X_FUNCTION - 969)))) !== 0) || ((((_la - 1006)) & ~0x1f) == 0 && ((1 << (_la - 1006)) & ((1 << (SqlParser.PLUS - 1006)) | (1 << (SqlParser.MINUS - 1006)) | (1 << (SqlParser.EXCLAMATION_SYMBOL - 1006)) | (1 << (SqlParser.BIT_NOT_OP - 1006)) | (1 << (SqlParser.LR_BRACKET - 1006)) | (1 << (SqlParser.ZERO_DECIMAL - 1006)) | (1 << (SqlParser.ONE_DECIMAL - 1006)) | (1 << (SqlParser.TWO_DECIMAL - 1006)) | (1 << (SqlParser.CHARSET_REVERSE_QOUTE_STRING - 1006)) | (1 << (SqlParser.START_NATIONAL_STRING_LITERAL - 1006)) | (1 << (SqlParser.STRING_LITERAL - 1006)) | (1 << (SqlParser.DECIMAL_LITERAL - 1006)) | (1 << (SqlParser.HEXADECIMAL_LITERAL - 1006)))) !== 0) || ((((_la - 1038)) & ~0x1f) == 0 && ((1 << (_la - 1038)) & ((1 << (SqlParser.REAL_LITERAL - 1038)) | (1 << (SqlParser.NULL_SPEC_LITERAL - 1038)) | (1 << (SqlParser.BIT_STRING - 1038)) | (1 << (SqlParser.STRING_CHARSET_NAME - 1038)) | (1 << (SqlParser.ID - 1038)) | (1 << (SqlParser.REVERSE_QUOTE_ID - 1038)) | (1 << (SqlParser.LOCAL_ID - 1038)) | (1 << (SqlParser.GLOBAL_ID - 1038)))) !== 0)) {
+ this.state = 3066;
+ this.expressionsWithDefaults();
+ }
+
+ this.state = 3069;
+ this.match(SqlParser.RR_BRACKET);
+ this.state = 3074;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function UpdatedElementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_updatedElement;
+ return this;
+}
+
+UpdatedElementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+UpdatedElementContext.prototype.constructor = UpdatedElementContext;
+
+UpdatedElementContext.prototype.fullColumnName = function() {
+ return this.getTypedRuleContext(FullColumnNameContext,0);
+};
+
+UpdatedElementContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+
+UpdatedElementContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+UpdatedElementContext.prototype.DEFAULT = function() {
+ return this.getToken(SqlParser.DEFAULT, 0);
+};
+
+UpdatedElementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterUpdatedElement(this);
+ }
+};
+
+UpdatedElementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitUpdatedElement(this);
+ }
+};
+
+UpdatedElementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitUpdatedElement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.UpdatedElementContext = UpdatedElementContext;
+
+SqlParser.prototype.updatedElement = function() {
+
+ var localctx = new UpdatedElementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 186, SqlParser.RULE_updatedElement);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3077;
+ this.fullColumnName();
+ this.state = 3078;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ this.state = 3081;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.CASE:
+ case SqlParser.CAST:
+ case SqlParser.CONVERT:
+ case SqlParser.CURRENT:
+ case SqlParser.CURRENT_USER:
+ case SqlParser.DATABASE:
+ case SqlParser.DIAGNOSTICS:
+ case SqlParser.EXISTS:
+ case SqlParser.FALSE:
+ case SqlParser.IF:
+ case SqlParser.INSERT:
+ case SqlParser.INTERVAL:
+ case SqlParser.LEFT:
+ case SqlParser.NOT:
+ case SqlParser.NULL_LITERAL:
+ case SqlParser.NUMBER:
+ case SqlParser.REPLACE:
+ case SqlParser.RIGHT:
+ case SqlParser.STACKED:
+ case SqlParser.TRUE:
+ case SqlParser.VALUES:
+ case SqlParser.DATE:
+ case SqlParser.TIME:
+ case SqlParser.TIMESTAMP:
+ case SqlParser.DATETIME:
+ case SqlParser.YEAR:
+ case SqlParser.CHAR:
+ case SqlParser.BINARY:
+ case SqlParser.TEXT:
+ case SqlParser.ENUM:
+ case SqlParser.SERIAL:
+ case SqlParser.JSON_VALID:
+ case SqlParser.JSON_SCHEMA_VALID:
+ case SqlParser.AVG:
+ case SqlParser.BIT_AND:
+ case SqlParser.BIT_OR:
+ case SqlParser.BIT_XOR:
+ case SqlParser.COUNT:
+ case SqlParser.GROUP_CONCAT:
+ case SqlParser.MAX:
+ case SqlParser.MIN:
+ case SqlParser.STD:
+ case SqlParser.STDDEV:
+ case SqlParser.STDDEV_POP:
+ case SqlParser.STDDEV_SAMP:
+ case SqlParser.SUM:
+ case SqlParser.VAR_POP:
+ case SqlParser.VAR_SAMP:
+ case SqlParser.VARIANCE:
+ case SqlParser.CURRENT_DATE:
+ case SqlParser.CURRENT_TIME:
+ case SqlParser.CURRENT_TIMESTAMP:
+ case SqlParser.LOCALTIME:
+ case SqlParser.CURDATE:
+ case SqlParser.CURTIME:
+ case SqlParser.DATE_ADD:
+ case SqlParser.DATE_SUB:
+ case SqlParser.EXTRACT:
+ case SqlParser.LOCALTIMESTAMP:
+ case SqlParser.NOW:
+ case SqlParser.POSITION:
+ case SqlParser.SUBSTR:
+ case SqlParser.SUBSTRING:
+ case SqlParser.SYSDATE:
+ case SqlParser.TRIM:
+ case SqlParser.UTC_DATE:
+ case SqlParser.UTC_TIME:
+ case SqlParser.UTC_TIMESTAMP:
+ case SqlParser.ACCOUNT:
+ case SqlParser.ACTION:
+ case SqlParser.AFTER:
+ case SqlParser.AGGREGATE:
+ case SqlParser.ALGORITHM:
+ case SqlParser.ANY:
+ case SqlParser.AT:
+ case SqlParser.AUTHORS:
+ case SqlParser.AUTOCOMMIT:
+ case SqlParser.AUTOEXTEND_SIZE:
+ case SqlParser.AUTO_INCREMENT:
+ case SqlParser.AVG_ROW_LENGTH:
+ case SqlParser.BEGIN:
+ case SqlParser.BINLOG:
+ case SqlParser.BIT:
+ case SqlParser.BLOCK:
+ case SqlParser.BOOL:
+ case SqlParser.BOOLEAN:
+ case SqlParser.BTREE:
+ case SqlParser.CACHE:
+ case SqlParser.CASCADED:
+ case SqlParser.CHAIN:
+ case SqlParser.CHANGED:
+ case SqlParser.CHANNEL:
+ case SqlParser.CHECKSUM:
+ case SqlParser.PAGE_CHECKSUM:
+ case SqlParser.CIPHER:
+ case SqlParser.CLASS_ORIGIN:
+ case SqlParser.CLIENT:
+ case SqlParser.CLOSE:
+ case SqlParser.COALESCE:
+ case SqlParser.CODE:
+ case SqlParser.COLUMNS:
+ case SqlParser.COLUMN_FORMAT:
+ case SqlParser.COLUMN_NAME:
+ case SqlParser.COMMENT:
+ case SqlParser.COMMIT:
+ case SqlParser.COMPACT:
+ case SqlParser.COMPLETION:
+ case SqlParser.COMPRESSED:
+ case SqlParser.COMPRESSION:
+ case SqlParser.CONCURRENT:
+ case SqlParser.CONNECTION:
+ case SqlParser.CONSISTENT:
+ case SqlParser.CONSTRAINT_CATALOG:
+ case SqlParser.CONSTRAINT_SCHEMA:
+ case SqlParser.CONSTRAINT_NAME:
+ case SqlParser.CONTAINS:
+ case SqlParser.CONTEXT:
+ case SqlParser.CONTRIBUTORS:
+ case SqlParser.COPY:
+ case SqlParser.CPU:
+ case SqlParser.CURSOR_NAME:
+ case SqlParser.DATA:
+ case SqlParser.DATAFILE:
+ case SqlParser.DEALLOCATE:
+ case SqlParser.DEFAULT_AUTH:
+ case SqlParser.DEFINER:
+ case SqlParser.DELAY_KEY_WRITE:
+ case SqlParser.DES_KEY_FILE:
+ case SqlParser.DIRECTORY:
+ case SqlParser.DISABLE:
+ case SqlParser.DISCARD:
+ case SqlParser.DISK:
+ case SqlParser.DO:
+ case SqlParser.DUMPFILE:
+ case SqlParser.DUPLICATE:
+ case SqlParser.DYNAMIC:
+ case SqlParser.ENABLE:
+ case SqlParser.ENCRYPTION:
+ case SqlParser.END:
+ case SqlParser.ENDS:
+ case SqlParser.ENGINE:
+ case SqlParser.ENGINES:
+ case SqlParser.ERROR:
+ case SqlParser.ERRORS:
+ case SqlParser.ESCAPE:
+ case SqlParser.EVEN:
+ case SqlParser.EVENT:
+ case SqlParser.EVENTS:
+ case SqlParser.EVERY:
+ case SqlParser.EXCHANGE:
+ case SqlParser.EXCLUSIVE:
+ case SqlParser.EXPIRE:
+ case SqlParser.EXPORT:
+ case SqlParser.EXTENDED:
+ case SqlParser.EXTENT_SIZE:
+ case SqlParser.FAST:
+ case SqlParser.FAULTS:
+ case SqlParser.FIELDS:
+ case SqlParser.FILE_BLOCK_SIZE:
+ case SqlParser.FILTER:
+ case SqlParser.FIRST:
+ case SqlParser.FIXED:
+ case SqlParser.FLUSH:
+ case SqlParser.FOLLOWS:
+ case SqlParser.FOUND:
+ case SqlParser.FULL:
+ case SqlParser.FUNCTION:
+ case SqlParser.GENERAL:
+ case SqlParser.GLOBAL:
+ case SqlParser.GRANTS:
+ case SqlParser.GROUP_REPLICATION:
+ case SqlParser.HANDLER:
+ case SqlParser.HASH:
+ case SqlParser.HELP:
+ case SqlParser.HOST:
+ case SqlParser.HOSTS:
+ case SqlParser.IDENTIFIED:
+ case SqlParser.IGNORE_SERVER_IDS:
+ case SqlParser.IMPORT:
+ case SqlParser.INDEXES:
+ case SqlParser.INITIAL_SIZE:
+ case SqlParser.INPLACE:
+ case SqlParser.INSERT_METHOD:
+ case SqlParser.INSTALL:
+ case SqlParser.INSTANCE:
+ case SqlParser.INVISIBLE:
+ case SqlParser.INVOKER:
+ case SqlParser.IO:
+ case SqlParser.IO_THREAD:
+ case SqlParser.IPC:
+ case SqlParser.ISOLATION:
+ case SqlParser.ISSUER:
+ case SqlParser.JSON:
+ case SqlParser.KEY_BLOCK_SIZE:
+ case SqlParser.LANGUAGE:
+ case SqlParser.LAST:
+ case SqlParser.LEAVES:
+ case SqlParser.LESS:
+ case SqlParser.LEVEL:
+ case SqlParser.LIST:
+ case SqlParser.LOCAL:
+ case SqlParser.LOGFILE:
+ case SqlParser.LOGS:
+ case SqlParser.MASTER:
+ case SqlParser.MASTER_AUTO_POSITION:
+ case SqlParser.MASTER_CONNECT_RETRY:
+ case SqlParser.MASTER_DELAY:
+ case SqlParser.MASTER_HEARTBEAT_PERIOD:
+ case SqlParser.MASTER_HOST:
+ case SqlParser.MASTER_LOG_FILE:
+ case SqlParser.MASTER_LOG_POS:
+ case SqlParser.MASTER_PASSWORD:
+ case SqlParser.MASTER_PORT:
+ case SqlParser.MASTER_RETRY_COUNT:
+ case SqlParser.MASTER_SSL:
+ case SqlParser.MASTER_SSL_CA:
+ case SqlParser.MASTER_SSL_CAPATH:
+ case SqlParser.MASTER_SSL_CERT:
+ case SqlParser.MASTER_SSL_CIPHER:
+ case SqlParser.MASTER_SSL_CRL:
+ case SqlParser.MASTER_SSL_CRLPATH:
+ case SqlParser.MASTER_SSL_KEY:
+ case SqlParser.MASTER_TLS_VERSION:
+ case SqlParser.MASTER_USER:
+ case SqlParser.MAX_CONNECTIONS_PER_HOUR:
+ case SqlParser.MAX_QUERIES_PER_HOUR:
+ case SqlParser.MAX_ROWS:
+ case SqlParser.MAX_SIZE:
+ case SqlParser.MAX_UPDATES_PER_HOUR:
+ case SqlParser.MAX_USER_CONNECTIONS:
+ case SqlParser.MEDIUM:
+ case SqlParser.MERGE:
+ case SqlParser.MESSAGE_TEXT:
+ case SqlParser.MID:
+ case SqlParser.MIGRATE:
+ case SqlParser.MIN_ROWS:
+ case SqlParser.MODE:
+ case SqlParser.MODIFY:
+ case SqlParser.MUTEX:
+ case SqlParser.MYSQL:
+ case SqlParser.MYSQL_ERRNO:
+ case SqlParser.NAME:
+ case SqlParser.NAMES:
+ case SqlParser.NCHAR:
+ case SqlParser.NEVER:
+ case SqlParser.NEXT:
+ case SqlParser.NO:
+ case SqlParser.NODEGROUP:
+ case SqlParser.NONE:
+ case SqlParser.OFFLINE:
+ case SqlParser.OFFSET:
+ case SqlParser.OJ:
+ case SqlParser.OLD_PASSWORD:
+ case SqlParser.ONE:
+ case SqlParser.ONLINE:
+ case SqlParser.ONLY:
+ case SqlParser.OPEN:
+ case SqlParser.OPTIMIZER_COSTS:
+ case SqlParser.OPTIONS:
+ case SqlParser.OWNER:
+ case SqlParser.PACK_KEYS:
+ case SqlParser.PAGE:
+ case SqlParser.PARSER:
+ case SqlParser.PARTIAL:
+ case SqlParser.PARTITIONING:
+ case SqlParser.PARTITIONS:
+ case SqlParser.PASSWORD:
+ case SqlParser.PHASE:
+ case SqlParser.PLUGIN:
+ case SqlParser.PLUGIN_DIR:
+ case SqlParser.PLUGINS:
+ case SqlParser.PORT:
+ case SqlParser.PRECEDES:
+ case SqlParser.PREPARE:
+ case SqlParser.PRESERVE:
+ case SqlParser.PREV:
+ case SqlParser.PROCESSLIST:
+ case SqlParser.PROFILE:
+ case SqlParser.PROFILES:
+ case SqlParser.PROXY:
+ case SqlParser.QUERY:
+ case SqlParser.QUICK:
+ case SqlParser.REBUILD:
+ case SqlParser.RECOVER:
+ case SqlParser.REDO_BUFFER_SIZE:
+ case SqlParser.REDUNDANT:
+ case SqlParser.RELAY:
+ case SqlParser.RELAY_LOG_FILE:
+ case SqlParser.RELAY_LOG_POS:
+ case SqlParser.RELAYLOG:
+ case SqlParser.REMOVE:
+ case SqlParser.REORGANIZE:
+ case SqlParser.REPAIR:
+ case SqlParser.REPLICATE_DO_DB:
+ case SqlParser.REPLICATE_DO_TABLE:
+ case SqlParser.REPLICATE_IGNORE_DB:
+ case SqlParser.REPLICATE_IGNORE_TABLE:
+ case SqlParser.REPLICATE_REWRITE_DB:
+ case SqlParser.REPLICATE_WILD_DO_TABLE:
+ case SqlParser.REPLICATE_WILD_IGNORE_TABLE:
+ case SqlParser.REPLICATION:
+ case SqlParser.RESET:
+ case SqlParser.RESUME:
+ case SqlParser.RETURNED_SQLSTATE:
+ case SqlParser.RETURNS:
+ case SqlParser.ROLE:
+ case SqlParser.ROLLBACK:
+ case SqlParser.ROLLUP:
+ case SqlParser.ROTATE:
+ case SqlParser.ROW:
+ case SqlParser.ROWS:
+ case SqlParser.ROW_FORMAT:
+ case SqlParser.SAVEPOINT:
+ case SqlParser.SCHEDULE:
+ case SqlParser.SECURITY:
+ case SqlParser.SERVER:
+ case SqlParser.SESSION:
+ case SqlParser.SHARE:
+ case SqlParser.SHARED:
+ case SqlParser.SIGNED:
+ case SqlParser.SIMPLE:
+ case SqlParser.SLAVE:
+ case SqlParser.SLOW:
+ case SqlParser.SNAPSHOT:
+ case SqlParser.SOCKET:
+ case SqlParser.SOME:
+ case SqlParser.SONAME:
+ case SqlParser.SOUNDS:
+ case SqlParser.SOURCE:
+ case SqlParser.SQL_AFTER_GTIDS:
+ case SqlParser.SQL_AFTER_MTS_GAPS:
+ case SqlParser.SQL_BEFORE_GTIDS:
+ case SqlParser.SQL_BUFFER_RESULT:
+ case SqlParser.SQL_CACHE:
+ case SqlParser.SQL_NO_CACHE:
+ case SqlParser.SQL_THREAD:
+ case SqlParser.START:
+ case SqlParser.STARTS:
+ case SqlParser.STATS_AUTO_RECALC:
+ case SqlParser.STATS_PERSISTENT:
+ case SqlParser.STATS_SAMPLE_PAGES:
+ case SqlParser.STATUS:
+ case SqlParser.STOP:
+ case SqlParser.STORAGE:
+ case SqlParser.STRING:
+ case SqlParser.SUBCLASS_ORIGIN:
+ case SqlParser.SUBJECT:
+ case SqlParser.SUBPARTITION:
+ case SqlParser.SUBPARTITIONS:
+ case SqlParser.SUSPEND:
+ case SqlParser.SWAPS:
+ case SqlParser.SWITCHES:
+ case SqlParser.TABLE_NAME:
+ case SqlParser.TABLESPACE:
+ case SqlParser.TEMPORARY:
+ case SqlParser.TEMPTABLE:
+ case SqlParser.THAN:
+ case SqlParser.TRADITIONAL:
+ case SqlParser.TRANSACTION:
+ case SqlParser.TRANSACTIONAL:
+ case SqlParser.TRIGGERS:
+ case SqlParser.TRUNCATE:
+ case SqlParser.UNDEFINED:
+ case SqlParser.UNDOFILE:
+ case SqlParser.UNDO_BUFFER_SIZE:
+ case SqlParser.UNINSTALL:
+ case SqlParser.UNKNOWN:
+ case SqlParser.UNTIL:
+ case SqlParser.UPGRADE:
+ case SqlParser.USER:
+ case SqlParser.USE_FRM:
+ case SqlParser.USER_RESOURCES:
+ case SqlParser.VALIDATION:
+ case SqlParser.VALUE:
+ case SqlParser.VARIABLES:
+ case SqlParser.VIEW:
+ case SqlParser.VISIBLE:
+ case SqlParser.WAIT:
+ case SqlParser.WARNINGS:
+ case SqlParser.WITHOUT:
+ case SqlParser.WORK:
+ case SqlParser.WRAPPER:
+ case SqlParser.X509:
+ case SqlParser.XA:
+ case SqlParser.XML:
+ case SqlParser.INTERNAL:
+ case SqlParser.QUARTER:
+ case SqlParser.MONTH:
+ case SqlParser.DAY:
+ case SqlParser.HOUR:
+ case SqlParser.MINUTE:
+ case SqlParser.WEEK:
+ case SqlParser.SECOND:
+ case SqlParser.MICROSECOND:
+ case SqlParser.TABLES:
+ case SqlParser.ROUTINE:
+ case SqlParser.EXECUTE:
+ case SqlParser.FILE:
+ case SqlParser.PROCESS:
+ case SqlParser.RELOAD:
+ case SqlParser.SHUTDOWN:
+ case SqlParser.SUPER:
+ case SqlParser.PRIVILEGES:
+ case SqlParser.AUDIT_ADMIN:
+ case SqlParser.BACKUP_ADMIN:
+ case SqlParser.BINLOG_ADMIN:
+ case SqlParser.BINLOG_ENCRYPTION_ADMIN:
+ case SqlParser.CLONE_ADMIN:
+ case SqlParser.CONNECTION_ADMIN:
+ case SqlParser.ENCRYPTION_KEY_ADMIN:
+ case SqlParser.FIREWALL_ADMIN:
+ case SqlParser.FIREWALL_USER:
+ case SqlParser.GROUP_REPLICATION_ADMIN:
+ case SqlParser.INNODB_REDO_LOG_ARCHIVE:
+ case SqlParser.NDB_STORED_USER:
+ case SqlParser.PERSIST_RO_VARIABLES_ADMIN:
+ case SqlParser.REPLICATION_APPLIER:
+ case SqlParser.REPLICATION_SLAVE_ADMIN:
+ case SqlParser.RESOURCE_GROUP_ADMIN:
+ case SqlParser.RESOURCE_GROUP_USER:
+ case SqlParser.ROLE_ADMIN:
+ case SqlParser.SESSION_VARIABLES_ADMIN:
+ case SqlParser.SET_USER_ID:
+ case SqlParser.SHOW_ROUTINE:
+ case SqlParser.SYSTEM_VARIABLES_ADMIN:
+ case SqlParser.TABLE_ENCRYPTION_ADMIN:
+ case SqlParser.VERSION_TOKEN_ADMIN:
+ case SqlParser.XA_RECOVER_ADMIN:
+ case SqlParser.ARMSCII8:
+ case SqlParser.ASCII:
+ case SqlParser.BIG5:
+ case SqlParser.CP1250:
+ case SqlParser.CP1251:
+ case SqlParser.CP1256:
+ case SqlParser.CP1257:
+ case SqlParser.CP850:
+ case SqlParser.CP852:
+ case SqlParser.CP866:
+ case SqlParser.CP932:
+ case SqlParser.DEC8:
+ case SqlParser.EUCJPMS:
+ case SqlParser.EUCKR:
+ case SqlParser.GB2312:
+ case SqlParser.GBK:
+ case SqlParser.GEOSTD8:
+ case SqlParser.GREEK:
+ case SqlParser.HEBREW:
+ case SqlParser.HP8:
+ case SqlParser.KEYBCS2:
+ case SqlParser.KOI8R:
+ case SqlParser.KOI8U:
+ case SqlParser.LATIN1:
+ case SqlParser.LATIN2:
+ case SqlParser.LATIN5:
+ case SqlParser.LATIN7:
+ case SqlParser.MACCE:
+ case SqlParser.MACROMAN:
+ case SqlParser.SJIS:
+ case SqlParser.SWE7:
+ case SqlParser.TIS620:
+ case SqlParser.UCS2:
+ case SqlParser.UJIS:
+ case SqlParser.UTF16:
+ case SqlParser.UTF16LE:
+ case SqlParser.UTF32:
+ case SqlParser.UTF8:
+ case SqlParser.UTF8MB3:
+ case SqlParser.UTF8MB4:
+ case SqlParser.ARCHIVE:
+ case SqlParser.BLACKHOLE:
+ case SqlParser.CSV:
+ case SqlParser.FEDERATED:
+ case SqlParser.INNODB:
+ case SqlParser.MEMORY:
+ case SqlParser.MRG_MYISAM:
+ case SqlParser.MYISAM:
+ case SqlParser.NDB:
+ case SqlParser.NDBCLUSTER:
+ case SqlParser.PERFORMANCE_SCHEMA:
+ case SqlParser.TOKUDB:
+ case SqlParser.REPEATABLE:
+ case SqlParser.COMMITTED:
+ case SqlParser.UNCOMMITTED:
+ case SqlParser.SERIALIZABLE:
+ case SqlParser.GEOMETRYCOLLECTION:
+ case SqlParser.LINESTRING:
+ case SqlParser.MULTILINESTRING:
+ case SqlParser.MULTIPOINT:
+ case SqlParser.MULTIPOLYGON:
+ case SqlParser.POINT:
+ case SqlParser.POLYGON:
+ case SqlParser.ABS:
+ case SqlParser.ACOS:
+ case SqlParser.ADDDATE:
+ case SqlParser.ADDTIME:
+ case SqlParser.AES_DECRYPT:
+ case SqlParser.AES_ENCRYPT:
+ case SqlParser.AREA:
+ case SqlParser.ASBINARY:
+ case SqlParser.ASIN:
+ case SqlParser.ASTEXT:
+ case SqlParser.ASWKB:
+ case SqlParser.ASWKT:
+ case SqlParser.ASYMMETRIC_DECRYPT:
+ case SqlParser.ASYMMETRIC_DERIVE:
+ case SqlParser.ASYMMETRIC_ENCRYPT:
+ case SqlParser.ASYMMETRIC_SIGN:
+ case SqlParser.ASYMMETRIC_VERIFY:
+ case SqlParser.ATAN:
+ case SqlParser.ATAN2:
+ case SqlParser.BENCHMARK:
+ case SqlParser.BIN:
+ case SqlParser.BIT_COUNT:
+ case SqlParser.BIT_LENGTH:
+ case SqlParser.BUFFER:
+ case SqlParser.CATALOG_NAME:
+ case SqlParser.CEIL:
+ case SqlParser.CEILING:
+ case SqlParser.CENTROID:
+ case SqlParser.CHARACTER_LENGTH:
+ case SqlParser.CHARSET:
+ case SqlParser.CHAR_LENGTH:
+ case SqlParser.COERCIBILITY:
+ case SqlParser.COLLATION:
+ case SqlParser.COMPRESS:
+ case SqlParser.CONCAT:
+ case SqlParser.CONCAT_WS:
+ case SqlParser.CONNECTION_ID:
+ case SqlParser.CONV:
+ case SqlParser.CONVERT_TZ:
+ case SqlParser.COS:
+ case SqlParser.COT:
+ case SqlParser.CRC32:
+ case SqlParser.CREATE_ASYMMETRIC_PRIV_KEY:
+ case SqlParser.CREATE_ASYMMETRIC_PUB_KEY:
+ case SqlParser.CREATE_DH_PARAMETERS:
+ case SqlParser.CREATE_DIGEST:
+ case SqlParser.CROSSES:
+ case SqlParser.DATEDIFF:
+ case SqlParser.DATE_FORMAT:
+ case SqlParser.DAYNAME:
+ case SqlParser.DAYOFMONTH:
+ case SqlParser.DAYOFWEEK:
+ case SqlParser.DAYOFYEAR:
+ case SqlParser.DECODE:
+ case SqlParser.DEGREES:
+ case SqlParser.DES_DECRYPT:
+ case SqlParser.DES_ENCRYPT:
+ case SqlParser.DIMENSION:
+ case SqlParser.DISJOINT:
+ case SqlParser.ELT:
+ case SqlParser.ENCODE:
+ case SqlParser.ENCRYPT:
+ case SqlParser.ENDPOINT:
+ case SqlParser.ENVELOPE:
+ case SqlParser.EQUALS:
+ case SqlParser.EXP:
+ case SqlParser.EXPORT_SET:
+ case SqlParser.EXTERIORRING:
+ case SqlParser.EXTRACTVALUE:
+ case SqlParser.FIELD:
+ case SqlParser.FIND_IN_SET:
+ case SqlParser.FLOOR:
+ case SqlParser.FORMAT:
+ case SqlParser.FOUND_ROWS:
+ case SqlParser.FROM_BASE64:
+ case SqlParser.FROM_DAYS:
+ case SqlParser.FROM_UNIXTIME:
+ case SqlParser.GEOMCOLLFROMTEXT:
+ case SqlParser.GEOMCOLLFROMWKB:
+ case SqlParser.GEOMETRYCOLLECTIONFROMTEXT:
+ case SqlParser.GEOMETRYCOLLECTIONFROMWKB:
+ case SqlParser.GEOMETRYFROMTEXT:
+ case SqlParser.GEOMETRYFROMWKB:
+ case SqlParser.GEOMETRYN:
+ case SqlParser.GEOMETRYTYPE:
+ case SqlParser.GEOMFROMTEXT:
+ case SqlParser.GEOMFROMWKB:
+ case SqlParser.GET_FORMAT:
+ case SqlParser.GET_LOCK:
+ case SqlParser.GLENGTH:
+ case SqlParser.GREATEST:
+ case SqlParser.GTID_SUBSET:
+ case SqlParser.GTID_SUBTRACT:
+ case SqlParser.HEX:
+ case SqlParser.IFNULL:
+ case SqlParser.INET6_ATON:
+ case SqlParser.INET6_NTOA:
+ case SqlParser.INET_ATON:
+ case SqlParser.INET_NTOA:
+ case SqlParser.INSTR:
+ case SqlParser.INTERIORRINGN:
+ case SqlParser.INTERSECTS:
+ case SqlParser.ISCLOSED:
+ case SqlParser.ISEMPTY:
+ case SqlParser.ISNULL:
+ case SqlParser.ISSIMPLE:
+ case SqlParser.IS_FREE_LOCK:
+ case SqlParser.IS_IPV4:
+ case SqlParser.IS_IPV4_COMPAT:
+ case SqlParser.IS_IPV4_MAPPED:
+ case SqlParser.IS_IPV6:
+ case SqlParser.IS_USED_LOCK:
+ case SqlParser.LAST_INSERT_ID:
+ case SqlParser.LCASE:
+ case SqlParser.LEAST:
+ case SqlParser.LENGTH:
+ case SqlParser.LINEFROMTEXT:
+ case SqlParser.LINEFROMWKB:
+ case SqlParser.LINESTRINGFROMTEXT:
+ case SqlParser.LINESTRINGFROMWKB:
+ case SqlParser.LN:
+ case SqlParser.LOAD_FILE:
+ case SqlParser.LOCATE:
+ case SqlParser.LOG:
+ case SqlParser.LOG10:
+ case SqlParser.LOG2:
+ case SqlParser.LOWER:
+ case SqlParser.LPAD:
+ case SqlParser.LTRIM:
+ case SqlParser.MAKEDATE:
+ case SqlParser.MAKETIME:
+ case SqlParser.MAKE_SET:
+ case SqlParser.MASTER_POS_WAIT:
+ case SqlParser.MBRCONTAINS:
+ case SqlParser.MBRDISJOINT:
+ case SqlParser.MBREQUAL:
+ case SqlParser.MBRINTERSECTS:
+ case SqlParser.MBROVERLAPS:
+ case SqlParser.MBRTOUCHES:
+ case SqlParser.MBRWITHIN:
+ case SqlParser.MD5:
+ case SqlParser.MLINEFROMTEXT:
+ case SqlParser.MLINEFROMWKB:
+ case SqlParser.MONTHNAME:
+ case SqlParser.MPOINTFROMTEXT:
+ case SqlParser.MPOINTFROMWKB:
+ case SqlParser.MPOLYFROMTEXT:
+ case SqlParser.MPOLYFROMWKB:
+ case SqlParser.MULTILINESTRINGFROMTEXT:
+ case SqlParser.MULTILINESTRINGFROMWKB:
+ case SqlParser.MULTIPOINTFROMTEXT:
+ case SqlParser.MULTIPOINTFROMWKB:
+ case SqlParser.MULTIPOLYGONFROMTEXT:
+ case SqlParser.MULTIPOLYGONFROMWKB:
+ case SqlParser.NAME_CONST:
+ case SqlParser.NULLIF:
+ case SqlParser.NUMGEOMETRIES:
+ case SqlParser.NUMINTERIORRINGS:
+ case SqlParser.NUMPOINTS:
+ case SqlParser.OCT:
+ case SqlParser.OCTET_LENGTH:
+ case SqlParser.ORD:
+ case SqlParser.OVERLAPS:
+ case SqlParser.PERIOD_ADD:
+ case SqlParser.PERIOD_DIFF:
+ case SqlParser.PI:
+ case SqlParser.POINTFROMTEXT:
+ case SqlParser.POINTFROMWKB:
+ case SqlParser.POINTN:
+ case SqlParser.POLYFROMTEXT:
+ case SqlParser.POLYFROMWKB:
+ case SqlParser.POLYGONFROMTEXT:
+ case SqlParser.POLYGONFROMWKB:
+ case SqlParser.POW:
+ case SqlParser.POWER:
+ case SqlParser.QUOTE:
+ case SqlParser.RADIANS:
+ case SqlParser.RAND:
+ case SqlParser.RANDOM_BYTES:
+ case SqlParser.RELEASE_LOCK:
+ case SqlParser.REVERSE:
+ case SqlParser.ROUND:
+ case SqlParser.ROW_COUNT:
+ case SqlParser.RPAD:
+ case SqlParser.RTRIM:
+ case SqlParser.SEC_TO_TIME:
+ case SqlParser.SESSION_USER:
+ case SqlParser.SHA:
+ case SqlParser.SHA1:
+ case SqlParser.SHA2:
+ case SqlParser.SCHEMA_NAME:
+ case SqlParser.SIGN:
+ case SqlParser.SIN:
+ case SqlParser.SLEEP:
+ case SqlParser.SOUNDEX:
+ case SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS:
+ case SqlParser.SQRT:
+ case SqlParser.SRID:
+ case SqlParser.STARTPOINT:
+ case SqlParser.STRCMP:
+ case SqlParser.STR_TO_DATE:
+ case SqlParser.ST_AREA:
+ case SqlParser.ST_ASBINARY:
+ case SqlParser.ST_ASTEXT:
+ case SqlParser.ST_ASWKB:
+ case SqlParser.ST_ASWKT:
+ case SqlParser.ST_BUFFER:
+ case SqlParser.ST_CENTROID:
+ case SqlParser.ST_CONTAINS:
+ case SqlParser.ST_CROSSES:
+ case SqlParser.ST_DIFFERENCE:
+ case SqlParser.ST_DIMENSION:
+ case SqlParser.ST_DISJOINT:
+ case SqlParser.ST_DISTANCE:
+ case SqlParser.ST_ENDPOINT:
+ case SqlParser.ST_ENVELOPE:
+ case SqlParser.ST_EQUALS:
+ case SqlParser.ST_EXTERIORRING:
+ case SqlParser.ST_GEOMCOLLFROMTEXT:
+ case SqlParser.ST_GEOMCOLLFROMTXT:
+ case SqlParser.ST_GEOMCOLLFROMWKB:
+ case SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT:
+ case SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB:
+ case SqlParser.ST_GEOMETRYFROMTEXT:
+ case SqlParser.ST_GEOMETRYFROMWKB:
+ case SqlParser.ST_GEOMETRYN:
+ case SqlParser.ST_GEOMETRYTYPE:
+ case SqlParser.ST_GEOMFROMTEXT:
+ case SqlParser.ST_GEOMFROMWKB:
+ case SqlParser.ST_INTERIORRINGN:
+ case SqlParser.ST_INTERSECTION:
+ case SqlParser.ST_INTERSECTS:
+ case SqlParser.ST_ISCLOSED:
+ case SqlParser.ST_ISEMPTY:
+ case SqlParser.ST_ISSIMPLE:
+ case SqlParser.ST_LINEFROMTEXT:
+ case SqlParser.ST_LINEFROMWKB:
+ case SqlParser.ST_LINESTRINGFROMTEXT:
+ case SqlParser.ST_LINESTRINGFROMWKB:
+ case SqlParser.ST_NUMGEOMETRIES:
+ case SqlParser.ST_NUMINTERIORRING:
+ case SqlParser.ST_NUMINTERIORRINGS:
+ case SqlParser.ST_NUMPOINTS:
+ case SqlParser.ST_OVERLAPS:
+ case SqlParser.ST_POINTFROMTEXT:
+ case SqlParser.ST_POINTFROMWKB:
+ case SqlParser.ST_POINTN:
+ case SqlParser.ST_POLYFROMTEXT:
+ case SqlParser.ST_POLYFROMWKB:
+ case SqlParser.ST_POLYGONFROMTEXT:
+ case SqlParser.ST_POLYGONFROMWKB:
+ case SqlParser.ST_SRID:
+ case SqlParser.ST_STARTPOINT:
+ case SqlParser.ST_SYMDIFFERENCE:
+ case SqlParser.ST_TOUCHES:
+ case SqlParser.ST_UNION:
+ case SqlParser.ST_WITHIN:
+ case SqlParser.ST_X:
+ case SqlParser.ST_Y:
+ case SqlParser.SUBDATE:
+ case SqlParser.SUBSTRING_INDEX:
+ case SqlParser.SUBTIME:
+ case SqlParser.SYSTEM_USER:
+ case SqlParser.TAN:
+ case SqlParser.TIMEDIFF:
+ case SqlParser.TIMESTAMPADD:
+ case SqlParser.TIMESTAMPDIFF:
+ case SqlParser.TIME_FORMAT:
+ case SqlParser.TIME_TO_SEC:
+ case SqlParser.TOUCHES:
+ case SqlParser.TO_BASE64:
+ case SqlParser.TO_DAYS:
+ case SqlParser.TO_SECONDS:
+ case SqlParser.UCASE:
+ case SqlParser.UNCOMPRESS:
+ case SqlParser.UNCOMPRESSED_LENGTH:
+ case SqlParser.UNHEX:
+ case SqlParser.UNIX_TIMESTAMP:
+ case SqlParser.UPDATEXML:
+ case SqlParser.UPPER:
+ case SqlParser.UUID:
+ case SqlParser.UUID_SHORT:
+ case SqlParser.VALIDATE_PASSWORD_STRENGTH:
+ case SqlParser.VERSION:
+ case SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS:
+ case SqlParser.WEEKDAY:
+ case SqlParser.WEEKOFYEAR:
+ case SqlParser.WEIGHT_STRING:
+ case SqlParser.WITHIN:
+ case SqlParser.YEARWEEK:
+ case SqlParser.Y_FUNCTION:
+ case SqlParser.X_FUNCTION:
+ case SqlParser.PLUS:
+ case SqlParser.MINUS:
+ case SqlParser.EXCLAMATION_SYMBOL:
+ case SqlParser.BIT_NOT_OP:
+ case SqlParser.LR_BRACKET:
+ case SqlParser.ZERO_DECIMAL:
+ case SqlParser.ONE_DECIMAL:
+ case SqlParser.TWO_DECIMAL:
+ case SqlParser.CHARSET_REVERSE_QOUTE_STRING:
+ case SqlParser.START_NATIONAL_STRING_LITERAL:
+ case SqlParser.STRING_LITERAL:
+ case SqlParser.DECIMAL_LITERAL:
+ case SqlParser.HEXADECIMAL_LITERAL:
+ case SqlParser.REAL_LITERAL:
+ case SqlParser.NULL_SPEC_LITERAL:
+ case SqlParser.BIT_STRING:
+ case SqlParser.STRING_CHARSET_NAME:
+ case SqlParser.ID:
+ case SqlParser.REVERSE_QUOTE_ID:
+ case SqlParser.LOCAL_ID:
+ case SqlParser.GLOBAL_ID:
+ this.state = 3079;
+ this.expression(0);
+ break;
+ case SqlParser.DEFAULT:
+ this.state = 3080;
+ this.match(SqlParser.DEFAULT);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function AssignmentFieldContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_assignmentField;
+ return this;
+}
+
+AssignmentFieldContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+AssignmentFieldContext.prototype.constructor = AssignmentFieldContext;
+
+AssignmentFieldContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+AssignmentFieldContext.prototype.LOCAL_ID = function() {
+ return this.getToken(SqlParser.LOCAL_ID, 0);
+};
+
+AssignmentFieldContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAssignmentField(this);
+ }
+};
+
+AssignmentFieldContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAssignmentField(this);
+ }
+};
+
+AssignmentFieldContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAssignmentField(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.AssignmentFieldContext = AssignmentFieldContext;
+
+SqlParser.prototype.assignmentField = function() {
+
+ var localctx = new AssignmentFieldContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 188, SqlParser.RULE_assignmentField);
+ try {
+ this.state = 3085;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.CURRENT:
+ case SqlParser.DATABASE:
+ case SqlParser.DIAGNOSTICS:
+ case SqlParser.LEFT:
+ case SqlParser.NUMBER:
+ case SqlParser.RIGHT:
+ case SqlParser.STACKED:
+ case SqlParser.DATE:
+ case SqlParser.TIME:
+ case SqlParser.TIMESTAMP:
+ case SqlParser.DATETIME:
+ case SqlParser.YEAR:
+ case SqlParser.TEXT:
+ case SqlParser.ENUM:
+ case SqlParser.SERIAL:
+ case SqlParser.JSON_VALID:
+ case SqlParser.JSON_SCHEMA_VALID:
+ case SqlParser.COUNT:
+ case SqlParser.POSITION:
+ case SqlParser.ACCOUNT:
+ case SqlParser.ACTION:
+ case SqlParser.AFTER:
+ case SqlParser.AGGREGATE:
+ case SqlParser.ALGORITHM:
+ case SqlParser.ANY:
+ case SqlParser.AT:
+ case SqlParser.AUTHORS:
+ case SqlParser.AUTOCOMMIT:
+ case SqlParser.AUTOEXTEND_SIZE:
+ case SqlParser.AUTO_INCREMENT:
+ case SqlParser.AVG_ROW_LENGTH:
+ case SqlParser.BEGIN:
+ case SqlParser.BINLOG:
+ case SqlParser.BIT:
+ case SqlParser.BLOCK:
+ case SqlParser.BOOL:
+ case SqlParser.BOOLEAN:
+ case SqlParser.BTREE:
+ case SqlParser.CACHE:
+ case SqlParser.CASCADED:
+ case SqlParser.CHAIN:
+ case SqlParser.CHANGED:
+ case SqlParser.CHANNEL:
+ case SqlParser.CHECKSUM:
+ case SqlParser.PAGE_CHECKSUM:
+ case SqlParser.CIPHER:
+ case SqlParser.CLASS_ORIGIN:
+ case SqlParser.CLIENT:
+ case SqlParser.CLOSE:
+ case SqlParser.COALESCE:
+ case SqlParser.CODE:
+ case SqlParser.COLUMNS:
+ case SqlParser.COLUMN_FORMAT:
+ case SqlParser.COLUMN_NAME:
+ case SqlParser.COMMENT:
+ case SqlParser.COMMIT:
+ case SqlParser.COMPACT:
+ case SqlParser.COMPLETION:
+ case SqlParser.COMPRESSED:
+ case SqlParser.COMPRESSION:
+ case SqlParser.CONCURRENT:
+ case SqlParser.CONNECTION:
+ case SqlParser.CONSISTENT:
+ case SqlParser.CONSTRAINT_CATALOG:
+ case SqlParser.CONSTRAINT_SCHEMA:
+ case SqlParser.CONSTRAINT_NAME:
+ case SqlParser.CONTAINS:
+ case SqlParser.CONTEXT:
+ case SqlParser.CONTRIBUTORS:
+ case SqlParser.COPY:
+ case SqlParser.CPU:
+ case SqlParser.CURSOR_NAME:
+ case SqlParser.DATA:
+ case SqlParser.DATAFILE:
+ case SqlParser.DEALLOCATE:
+ case SqlParser.DEFAULT_AUTH:
+ case SqlParser.DEFINER:
+ case SqlParser.DELAY_KEY_WRITE:
+ case SqlParser.DES_KEY_FILE:
+ case SqlParser.DIRECTORY:
+ case SqlParser.DISABLE:
+ case SqlParser.DISCARD:
+ case SqlParser.DISK:
+ case SqlParser.DO:
+ case SqlParser.DUMPFILE:
+ case SqlParser.DUPLICATE:
+ case SqlParser.DYNAMIC:
+ case SqlParser.ENABLE:
+ case SqlParser.ENCRYPTION:
+ case SqlParser.END:
+ case SqlParser.ENDS:
+ case SqlParser.ENGINE:
+ case SqlParser.ENGINES:
+ case SqlParser.ERROR:
+ case SqlParser.ERRORS:
+ case SqlParser.ESCAPE:
+ case SqlParser.EVEN:
+ case SqlParser.EVENT:
+ case SqlParser.EVENTS:
+ case SqlParser.EVERY:
+ case SqlParser.EXCHANGE:
+ case SqlParser.EXCLUSIVE:
+ case SqlParser.EXPIRE:
+ case SqlParser.EXPORT:
+ case SqlParser.EXTENDED:
+ case SqlParser.EXTENT_SIZE:
+ case SqlParser.FAST:
+ case SqlParser.FAULTS:
+ case SqlParser.FIELDS:
+ case SqlParser.FILE_BLOCK_SIZE:
+ case SqlParser.FILTER:
+ case SqlParser.FIRST:
+ case SqlParser.FIXED:
+ case SqlParser.FLUSH:
+ case SqlParser.FOLLOWS:
+ case SqlParser.FOUND:
+ case SqlParser.FULL:
+ case SqlParser.FUNCTION:
+ case SqlParser.GENERAL:
+ case SqlParser.GLOBAL:
+ case SqlParser.GRANTS:
+ case SqlParser.GROUP_REPLICATION:
+ case SqlParser.HANDLER:
+ case SqlParser.HASH:
+ case SqlParser.HELP:
+ case SqlParser.HOST:
+ case SqlParser.HOSTS:
+ case SqlParser.IDENTIFIED:
+ case SqlParser.IGNORE_SERVER_IDS:
+ case SqlParser.IMPORT:
+ case SqlParser.INDEXES:
+ case SqlParser.INITIAL_SIZE:
+ case SqlParser.INPLACE:
+ case SqlParser.INSERT_METHOD:
+ case SqlParser.INSTALL:
+ case SqlParser.INSTANCE:
+ case SqlParser.INVISIBLE:
+ case SqlParser.INVOKER:
+ case SqlParser.IO:
+ case SqlParser.IO_THREAD:
+ case SqlParser.IPC:
+ case SqlParser.ISOLATION:
+ case SqlParser.ISSUER:
+ case SqlParser.JSON:
+ case SqlParser.KEY_BLOCK_SIZE:
+ case SqlParser.LANGUAGE:
+ case SqlParser.LAST:
+ case SqlParser.LEAVES:
+ case SqlParser.LESS:
+ case SqlParser.LEVEL:
+ case SqlParser.LIST:
+ case SqlParser.LOCAL:
+ case SqlParser.LOGFILE:
+ case SqlParser.LOGS:
+ case SqlParser.MASTER:
+ case SqlParser.MASTER_AUTO_POSITION:
+ case SqlParser.MASTER_CONNECT_RETRY:
+ case SqlParser.MASTER_DELAY:
+ case SqlParser.MASTER_HEARTBEAT_PERIOD:
+ case SqlParser.MASTER_HOST:
+ case SqlParser.MASTER_LOG_FILE:
+ case SqlParser.MASTER_LOG_POS:
+ case SqlParser.MASTER_PASSWORD:
+ case SqlParser.MASTER_PORT:
+ case SqlParser.MASTER_RETRY_COUNT:
+ case SqlParser.MASTER_SSL:
+ case SqlParser.MASTER_SSL_CA:
+ case SqlParser.MASTER_SSL_CAPATH:
+ case SqlParser.MASTER_SSL_CERT:
+ case SqlParser.MASTER_SSL_CIPHER:
+ case SqlParser.MASTER_SSL_CRL:
+ case SqlParser.MASTER_SSL_CRLPATH:
+ case SqlParser.MASTER_SSL_KEY:
+ case SqlParser.MASTER_TLS_VERSION:
+ case SqlParser.MASTER_USER:
+ case SqlParser.MAX_CONNECTIONS_PER_HOUR:
+ case SqlParser.MAX_QUERIES_PER_HOUR:
+ case SqlParser.MAX_ROWS:
+ case SqlParser.MAX_SIZE:
+ case SqlParser.MAX_UPDATES_PER_HOUR:
+ case SqlParser.MAX_USER_CONNECTIONS:
+ case SqlParser.MEDIUM:
+ case SqlParser.MERGE:
+ case SqlParser.MESSAGE_TEXT:
+ case SqlParser.MID:
+ case SqlParser.MIGRATE:
+ case SqlParser.MIN_ROWS:
+ case SqlParser.MODE:
+ case SqlParser.MODIFY:
+ case SqlParser.MUTEX:
+ case SqlParser.MYSQL:
+ case SqlParser.MYSQL_ERRNO:
+ case SqlParser.NAME:
+ case SqlParser.NAMES:
+ case SqlParser.NCHAR:
+ case SqlParser.NEVER:
+ case SqlParser.NEXT:
+ case SqlParser.NO:
+ case SqlParser.NODEGROUP:
+ case SqlParser.NONE:
+ case SqlParser.OFFLINE:
+ case SqlParser.OFFSET:
+ case SqlParser.OJ:
+ case SqlParser.OLD_PASSWORD:
+ case SqlParser.ONE:
+ case SqlParser.ONLINE:
+ case SqlParser.ONLY:
+ case SqlParser.OPEN:
+ case SqlParser.OPTIMIZER_COSTS:
+ case SqlParser.OPTIONS:
+ case SqlParser.OWNER:
+ case SqlParser.PACK_KEYS:
+ case SqlParser.PAGE:
+ case SqlParser.PARSER:
+ case SqlParser.PARTIAL:
+ case SqlParser.PARTITIONING:
+ case SqlParser.PARTITIONS:
+ case SqlParser.PASSWORD:
+ case SqlParser.PHASE:
+ case SqlParser.PLUGIN:
+ case SqlParser.PLUGIN_DIR:
+ case SqlParser.PLUGINS:
+ case SqlParser.PORT:
+ case SqlParser.PRECEDES:
+ case SqlParser.PREPARE:
+ case SqlParser.PRESERVE:
+ case SqlParser.PREV:
+ case SqlParser.PROCESSLIST:
+ case SqlParser.PROFILE:
+ case SqlParser.PROFILES:
+ case SqlParser.PROXY:
+ case SqlParser.QUERY:
+ case SqlParser.QUICK:
+ case SqlParser.REBUILD:
+ case SqlParser.RECOVER:
+ case SqlParser.REDO_BUFFER_SIZE:
+ case SqlParser.REDUNDANT:
+ case SqlParser.RELAY:
+ case SqlParser.RELAY_LOG_FILE:
+ case SqlParser.RELAY_LOG_POS:
+ case SqlParser.RELAYLOG:
+ case SqlParser.REMOVE:
+ case SqlParser.REORGANIZE:
+ case SqlParser.REPAIR:
+ case SqlParser.REPLICATE_DO_DB:
+ case SqlParser.REPLICATE_DO_TABLE:
+ case SqlParser.REPLICATE_IGNORE_DB:
+ case SqlParser.REPLICATE_IGNORE_TABLE:
+ case SqlParser.REPLICATE_REWRITE_DB:
+ case SqlParser.REPLICATE_WILD_DO_TABLE:
+ case SqlParser.REPLICATE_WILD_IGNORE_TABLE:
+ case SqlParser.REPLICATION:
+ case SqlParser.RESET:
+ case SqlParser.RESUME:
+ case SqlParser.RETURNED_SQLSTATE:
+ case SqlParser.RETURNS:
+ case SqlParser.ROLE:
+ case SqlParser.ROLLBACK:
+ case SqlParser.ROLLUP:
+ case SqlParser.ROTATE:
+ case SqlParser.ROW:
+ case SqlParser.ROWS:
+ case SqlParser.ROW_FORMAT:
+ case SqlParser.SAVEPOINT:
+ case SqlParser.SCHEDULE:
+ case SqlParser.SECURITY:
+ case SqlParser.SERVER:
+ case SqlParser.SESSION:
+ case SqlParser.SHARE:
+ case SqlParser.SHARED:
+ case SqlParser.SIGNED:
+ case SqlParser.SIMPLE:
+ case SqlParser.SLAVE:
+ case SqlParser.SLOW:
+ case SqlParser.SNAPSHOT:
+ case SqlParser.SOCKET:
+ case SqlParser.SOME:
+ case SqlParser.SONAME:
+ case SqlParser.SOUNDS:
+ case SqlParser.SOURCE:
+ case SqlParser.SQL_AFTER_GTIDS:
+ case SqlParser.SQL_AFTER_MTS_GAPS:
+ case SqlParser.SQL_BEFORE_GTIDS:
+ case SqlParser.SQL_BUFFER_RESULT:
+ case SqlParser.SQL_CACHE:
+ case SqlParser.SQL_NO_CACHE:
+ case SqlParser.SQL_THREAD:
+ case SqlParser.START:
+ case SqlParser.STARTS:
+ case SqlParser.STATS_AUTO_RECALC:
+ case SqlParser.STATS_PERSISTENT:
+ case SqlParser.STATS_SAMPLE_PAGES:
+ case SqlParser.STATUS:
+ case SqlParser.STOP:
+ case SqlParser.STORAGE:
+ case SqlParser.STRING:
+ case SqlParser.SUBCLASS_ORIGIN:
+ case SqlParser.SUBJECT:
+ case SqlParser.SUBPARTITION:
+ case SqlParser.SUBPARTITIONS:
+ case SqlParser.SUSPEND:
+ case SqlParser.SWAPS:
+ case SqlParser.SWITCHES:
+ case SqlParser.TABLE_NAME:
+ case SqlParser.TABLESPACE:
+ case SqlParser.TEMPORARY:
+ case SqlParser.TEMPTABLE:
+ case SqlParser.THAN:
+ case SqlParser.TRADITIONAL:
+ case SqlParser.TRANSACTION:
+ case SqlParser.TRANSACTIONAL:
+ case SqlParser.TRIGGERS:
+ case SqlParser.TRUNCATE:
+ case SqlParser.UNDEFINED:
+ case SqlParser.UNDOFILE:
+ case SqlParser.UNDO_BUFFER_SIZE:
+ case SqlParser.UNINSTALL:
+ case SqlParser.UNKNOWN:
+ case SqlParser.UNTIL:
+ case SqlParser.UPGRADE:
+ case SqlParser.USER:
+ case SqlParser.USE_FRM:
+ case SqlParser.USER_RESOURCES:
+ case SqlParser.VALIDATION:
+ case SqlParser.VALUE:
+ case SqlParser.VARIABLES:
+ case SqlParser.VIEW:
+ case SqlParser.VISIBLE:
+ case SqlParser.WAIT:
+ case SqlParser.WARNINGS:
+ case SqlParser.WITHOUT:
+ case SqlParser.WORK:
+ case SqlParser.WRAPPER:
+ case SqlParser.X509:
+ case SqlParser.XA:
+ case SqlParser.XML:
+ case SqlParser.INTERNAL:
+ case SqlParser.QUARTER:
+ case SqlParser.MONTH:
+ case SqlParser.DAY:
+ case SqlParser.HOUR:
+ case SqlParser.MINUTE:
+ case SqlParser.WEEK:
+ case SqlParser.SECOND:
+ case SqlParser.MICROSECOND:
+ case SqlParser.TABLES:
+ case SqlParser.ROUTINE:
+ case SqlParser.EXECUTE:
+ case SqlParser.FILE:
+ case SqlParser.PROCESS:
+ case SqlParser.RELOAD:
+ case SqlParser.SHUTDOWN:
+ case SqlParser.SUPER:
+ case SqlParser.PRIVILEGES:
+ case SqlParser.AUDIT_ADMIN:
+ case SqlParser.BACKUP_ADMIN:
+ case SqlParser.BINLOG_ADMIN:
+ case SqlParser.BINLOG_ENCRYPTION_ADMIN:
+ case SqlParser.CLONE_ADMIN:
+ case SqlParser.CONNECTION_ADMIN:
+ case SqlParser.ENCRYPTION_KEY_ADMIN:
+ case SqlParser.FIREWALL_ADMIN:
+ case SqlParser.FIREWALL_USER:
+ case SqlParser.GROUP_REPLICATION_ADMIN:
+ case SqlParser.INNODB_REDO_LOG_ARCHIVE:
+ case SqlParser.NDB_STORED_USER:
+ case SqlParser.PERSIST_RO_VARIABLES_ADMIN:
+ case SqlParser.REPLICATION_APPLIER:
+ case SqlParser.REPLICATION_SLAVE_ADMIN:
+ case SqlParser.RESOURCE_GROUP_ADMIN:
+ case SqlParser.RESOURCE_GROUP_USER:
+ case SqlParser.ROLE_ADMIN:
+ case SqlParser.SESSION_VARIABLES_ADMIN:
+ case SqlParser.SET_USER_ID:
+ case SqlParser.SHOW_ROUTINE:
+ case SqlParser.SYSTEM_VARIABLES_ADMIN:
+ case SqlParser.TABLE_ENCRYPTION_ADMIN:
+ case SqlParser.VERSION_TOKEN_ADMIN:
+ case SqlParser.XA_RECOVER_ADMIN:
+ case SqlParser.ARMSCII8:
+ case SqlParser.ASCII:
+ case SqlParser.BIG5:
+ case SqlParser.CP1250:
+ case SqlParser.CP1251:
+ case SqlParser.CP1256:
+ case SqlParser.CP1257:
+ case SqlParser.CP850:
+ case SqlParser.CP852:
+ case SqlParser.CP866:
+ case SqlParser.CP932:
+ case SqlParser.DEC8:
+ case SqlParser.EUCJPMS:
+ case SqlParser.EUCKR:
+ case SqlParser.GB2312:
+ case SqlParser.GBK:
+ case SqlParser.GEOSTD8:
+ case SqlParser.GREEK:
+ case SqlParser.HEBREW:
+ case SqlParser.HP8:
+ case SqlParser.KEYBCS2:
+ case SqlParser.KOI8R:
+ case SqlParser.KOI8U:
+ case SqlParser.LATIN1:
+ case SqlParser.LATIN2:
+ case SqlParser.LATIN5:
+ case SqlParser.LATIN7:
+ case SqlParser.MACCE:
+ case SqlParser.MACROMAN:
+ case SqlParser.SJIS:
+ case SqlParser.SWE7:
+ case SqlParser.TIS620:
+ case SqlParser.UCS2:
+ case SqlParser.UJIS:
+ case SqlParser.UTF16:
+ case SqlParser.UTF16LE:
+ case SqlParser.UTF32:
+ case SqlParser.UTF8:
+ case SqlParser.UTF8MB3:
+ case SqlParser.UTF8MB4:
+ case SqlParser.ARCHIVE:
+ case SqlParser.BLACKHOLE:
+ case SqlParser.CSV:
+ case SqlParser.FEDERATED:
+ case SqlParser.INNODB:
+ case SqlParser.MEMORY:
+ case SqlParser.MRG_MYISAM:
+ case SqlParser.MYISAM:
+ case SqlParser.NDB:
+ case SqlParser.NDBCLUSTER:
+ case SqlParser.PERFORMANCE_SCHEMA:
+ case SqlParser.TOKUDB:
+ case SqlParser.REPEATABLE:
+ case SqlParser.COMMITTED:
+ case SqlParser.UNCOMMITTED:
+ case SqlParser.SERIALIZABLE:
+ case SqlParser.GEOMETRYCOLLECTION:
+ case SqlParser.LINESTRING:
+ case SqlParser.MULTILINESTRING:
+ case SqlParser.MULTIPOINT:
+ case SqlParser.MULTIPOLYGON:
+ case SqlParser.POINT:
+ case SqlParser.POLYGON:
+ case SqlParser.ABS:
+ case SqlParser.ACOS:
+ case SqlParser.ADDDATE:
+ case SqlParser.ADDTIME:
+ case SqlParser.AES_DECRYPT:
+ case SqlParser.AES_ENCRYPT:
+ case SqlParser.AREA:
+ case SqlParser.ASBINARY:
+ case SqlParser.ASIN:
+ case SqlParser.ASTEXT:
+ case SqlParser.ASWKB:
+ case SqlParser.ASWKT:
+ case SqlParser.ASYMMETRIC_DECRYPT:
+ case SqlParser.ASYMMETRIC_DERIVE:
+ case SqlParser.ASYMMETRIC_ENCRYPT:
+ case SqlParser.ASYMMETRIC_SIGN:
+ case SqlParser.ASYMMETRIC_VERIFY:
+ case SqlParser.ATAN:
+ case SqlParser.ATAN2:
+ case SqlParser.BENCHMARK:
+ case SqlParser.BIN:
+ case SqlParser.BIT_COUNT:
+ case SqlParser.BIT_LENGTH:
+ case SqlParser.BUFFER:
+ case SqlParser.CATALOG_NAME:
+ case SqlParser.CEIL:
+ case SqlParser.CEILING:
+ case SqlParser.CENTROID:
+ case SqlParser.CHARACTER_LENGTH:
+ case SqlParser.CHARSET:
+ case SqlParser.CHAR_LENGTH:
+ case SqlParser.COERCIBILITY:
+ case SqlParser.COLLATION:
+ case SqlParser.COMPRESS:
+ case SqlParser.CONCAT:
+ case SqlParser.CONCAT_WS:
+ case SqlParser.CONNECTION_ID:
+ case SqlParser.CONV:
+ case SqlParser.CONVERT_TZ:
+ case SqlParser.COS:
+ case SqlParser.COT:
+ case SqlParser.CRC32:
+ case SqlParser.CREATE_ASYMMETRIC_PRIV_KEY:
+ case SqlParser.CREATE_ASYMMETRIC_PUB_KEY:
+ case SqlParser.CREATE_DH_PARAMETERS:
+ case SqlParser.CREATE_DIGEST:
+ case SqlParser.CROSSES:
+ case SqlParser.DATEDIFF:
+ case SqlParser.DATE_FORMAT:
+ case SqlParser.DAYNAME:
+ case SqlParser.DAYOFMONTH:
+ case SqlParser.DAYOFWEEK:
+ case SqlParser.DAYOFYEAR:
+ case SqlParser.DECODE:
+ case SqlParser.DEGREES:
+ case SqlParser.DES_DECRYPT:
+ case SqlParser.DES_ENCRYPT:
+ case SqlParser.DIMENSION:
+ case SqlParser.DISJOINT:
+ case SqlParser.ELT:
+ case SqlParser.ENCODE:
+ case SqlParser.ENCRYPT:
+ case SqlParser.ENDPOINT:
+ case SqlParser.ENVELOPE:
+ case SqlParser.EQUALS:
+ case SqlParser.EXP:
+ case SqlParser.EXPORT_SET:
+ case SqlParser.EXTERIORRING:
+ case SqlParser.EXTRACTVALUE:
+ case SqlParser.FIELD:
+ case SqlParser.FIND_IN_SET:
+ case SqlParser.FLOOR:
+ case SqlParser.FORMAT:
+ case SqlParser.FOUND_ROWS:
+ case SqlParser.FROM_BASE64:
+ case SqlParser.FROM_DAYS:
+ case SqlParser.FROM_UNIXTIME:
+ case SqlParser.GEOMCOLLFROMTEXT:
+ case SqlParser.GEOMCOLLFROMWKB:
+ case SqlParser.GEOMETRYCOLLECTIONFROMTEXT:
+ case SqlParser.GEOMETRYCOLLECTIONFROMWKB:
+ case SqlParser.GEOMETRYFROMTEXT:
+ case SqlParser.GEOMETRYFROMWKB:
+ case SqlParser.GEOMETRYN:
+ case SqlParser.GEOMETRYTYPE:
+ case SqlParser.GEOMFROMTEXT:
+ case SqlParser.GEOMFROMWKB:
+ case SqlParser.GET_FORMAT:
+ case SqlParser.GET_LOCK:
+ case SqlParser.GLENGTH:
+ case SqlParser.GREATEST:
+ case SqlParser.GTID_SUBSET:
+ case SqlParser.GTID_SUBTRACT:
+ case SqlParser.HEX:
+ case SqlParser.IFNULL:
+ case SqlParser.INET6_ATON:
+ case SqlParser.INET6_NTOA:
+ case SqlParser.INET_ATON:
+ case SqlParser.INET_NTOA:
+ case SqlParser.INSTR:
+ case SqlParser.INTERIORRINGN:
+ case SqlParser.INTERSECTS:
+ case SqlParser.ISCLOSED:
+ case SqlParser.ISEMPTY:
+ case SqlParser.ISNULL:
+ case SqlParser.ISSIMPLE:
+ case SqlParser.IS_FREE_LOCK:
+ case SqlParser.IS_IPV4:
+ case SqlParser.IS_IPV4_COMPAT:
+ case SqlParser.IS_IPV4_MAPPED:
+ case SqlParser.IS_IPV6:
+ case SqlParser.IS_USED_LOCK:
+ case SqlParser.LAST_INSERT_ID:
+ case SqlParser.LCASE:
+ case SqlParser.LEAST:
+ case SqlParser.LENGTH:
+ case SqlParser.LINEFROMTEXT:
+ case SqlParser.LINEFROMWKB:
+ case SqlParser.LINESTRINGFROMTEXT:
+ case SqlParser.LINESTRINGFROMWKB:
+ case SqlParser.LN:
+ case SqlParser.LOAD_FILE:
+ case SqlParser.LOCATE:
+ case SqlParser.LOG:
+ case SqlParser.LOG10:
+ case SqlParser.LOG2:
+ case SqlParser.LOWER:
+ case SqlParser.LPAD:
+ case SqlParser.LTRIM:
+ case SqlParser.MAKEDATE:
+ case SqlParser.MAKETIME:
+ case SqlParser.MAKE_SET:
+ case SqlParser.MASTER_POS_WAIT:
+ case SqlParser.MBRCONTAINS:
+ case SqlParser.MBRDISJOINT:
+ case SqlParser.MBREQUAL:
+ case SqlParser.MBRINTERSECTS:
+ case SqlParser.MBROVERLAPS:
+ case SqlParser.MBRTOUCHES:
+ case SqlParser.MBRWITHIN:
+ case SqlParser.MD5:
+ case SqlParser.MLINEFROMTEXT:
+ case SqlParser.MLINEFROMWKB:
+ case SqlParser.MONTHNAME:
+ case SqlParser.MPOINTFROMTEXT:
+ case SqlParser.MPOINTFROMWKB:
+ case SqlParser.MPOLYFROMTEXT:
+ case SqlParser.MPOLYFROMWKB:
+ case SqlParser.MULTILINESTRINGFROMTEXT:
+ case SqlParser.MULTILINESTRINGFROMWKB:
+ case SqlParser.MULTIPOINTFROMTEXT:
+ case SqlParser.MULTIPOINTFROMWKB:
+ case SqlParser.MULTIPOLYGONFROMTEXT:
+ case SqlParser.MULTIPOLYGONFROMWKB:
+ case SqlParser.NAME_CONST:
+ case SqlParser.NULLIF:
+ case SqlParser.NUMGEOMETRIES:
+ case SqlParser.NUMINTERIORRINGS:
+ case SqlParser.NUMPOINTS:
+ case SqlParser.OCT:
+ case SqlParser.OCTET_LENGTH:
+ case SqlParser.ORD:
+ case SqlParser.OVERLAPS:
+ case SqlParser.PERIOD_ADD:
+ case SqlParser.PERIOD_DIFF:
+ case SqlParser.PI:
+ case SqlParser.POINTFROMTEXT:
+ case SqlParser.POINTFROMWKB:
+ case SqlParser.POINTN:
+ case SqlParser.POLYFROMTEXT:
+ case SqlParser.POLYFROMWKB:
+ case SqlParser.POLYGONFROMTEXT:
+ case SqlParser.POLYGONFROMWKB:
+ case SqlParser.POW:
+ case SqlParser.POWER:
+ case SqlParser.QUOTE:
+ case SqlParser.RADIANS:
+ case SqlParser.RAND:
+ case SqlParser.RANDOM_BYTES:
+ case SqlParser.RELEASE_LOCK:
+ case SqlParser.REVERSE:
+ case SqlParser.ROUND:
+ case SqlParser.ROW_COUNT:
+ case SqlParser.RPAD:
+ case SqlParser.RTRIM:
+ case SqlParser.SEC_TO_TIME:
+ case SqlParser.SESSION_USER:
+ case SqlParser.SHA:
+ case SqlParser.SHA1:
+ case SqlParser.SHA2:
+ case SqlParser.SCHEMA_NAME:
+ case SqlParser.SIGN:
+ case SqlParser.SIN:
+ case SqlParser.SLEEP:
+ case SqlParser.SOUNDEX:
+ case SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS:
+ case SqlParser.SQRT:
+ case SqlParser.SRID:
+ case SqlParser.STARTPOINT:
+ case SqlParser.STRCMP:
+ case SqlParser.STR_TO_DATE:
+ case SqlParser.ST_AREA:
+ case SqlParser.ST_ASBINARY:
+ case SqlParser.ST_ASTEXT:
+ case SqlParser.ST_ASWKB:
+ case SqlParser.ST_ASWKT:
+ case SqlParser.ST_BUFFER:
+ case SqlParser.ST_CENTROID:
+ case SqlParser.ST_CONTAINS:
+ case SqlParser.ST_CROSSES:
+ case SqlParser.ST_DIFFERENCE:
+ case SqlParser.ST_DIMENSION:
+ case SqlParser.ST_DISJOINT:
+ case SqlParser.ST_DISTANCE:
+ case SqlParser.ST_ENDPOINT:
+ case SqlParser.ST_ENVELOPE:
+ case SqlParser.ST_EQUALS:
+ case SqlParser.ST_EXTERIORRING:
+ case SqlParser.ST_GEOMCOLLFROMTEXT:
+ case SqlParser.ST_GEOMCOLLFROMTXT:
+ case SqlParser.ST_GEOMCOLLFROMWKB:
+ case SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT:
+ case SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB:
+ case SqlParser.ST_GEOMETRYFROMTEXT:
+ case SqlParser.ST_GEOMETRYFROMWKB:
+ case SqlParser.ST_GEOMETRYN:
+ case SqlParser.ST_GEOMETRYTYPE:
+ case SqlParser.ST_GEOMFROMTEXT:
+ case SqlParser.ST_GEOMFROMWKB:
+ case SqlParser.ST_INTERIORRINGN:
+ case SqlParser.ST_INTERSECTION:
+ case SqlParser.ST_INTERSECTS:
+ case SqlParser.ST_ISCLOSED:
+ case SqlParser.ST_ISEMPTY:
+ case SqlParser.ST_ISSIMPLE:
+ case SqlParser.ST_LINEFROMTEXT:
+ case SqlParser.ST_LINEFROMWKB:
+ case SqlParser.ST_LINESTRINGFROMTEXT:
+ case SqlParser.ST_LINESTRINGFROMWKB:
+ case SqlParser.ST_NUMGEOMETRIES:
+ case SqlParser.ST_NUMINTERIORRING:
+ case SqlParser.ST_NUMINTERIORRINGS:
+ case SqlParser.ST_NUMPOINTS:
+ case SqlParser.ST_OVERLAPS:
+ case SqlParser.ST_POINTFROMTEXT:
+ case SqlParser.ST_POINTFROMWKB:
+ case SqlParser.ST_POINTN:
+ case SqlParser.ST_POLYFROMTEXT:
+ case SqlParser.ST_POLYFROMWKB:
+ case SqlParser.ST_POLYGONFROMTEXT:
+ case SqlParser.ST_POLYGONFROMWKB:
+ case SqlParser.ST_SRID:
+ case SqlParser.ST_STARTPOINT:
+ case SqlParser.ST_SYMDIFFERENCE:
+ case SqlParser.ST_TOUCHES:
+ case SqlParser.ST_UNION:
+ case SqlParser.ST_WITHIN:
+ case SqlParser.ST_X:
+ case SqlParser.ST_Y:
+ case SqlParser.SUBDATE:
+ case SqlParser.SUBSTRING_INDEX:
+ case SqlParser.SUBTIME:
+ case SqlParser.SYSTEM_USER:
+ case SqlParser.TAN:
+ case SqlParser.TIMEDIFF:
+ case SqlParser.TIMESTAMPADD:
+ case SqlParser.TIMESTAMPDIFF:
+ case SqlParser.TIME_FORMAT:
+ case SqlParser.TIME_TO_SEC:
+ case SqlParser.TOUCHES:
+ case SqlParser.TO_BASE64:
+ case SqlParser.TO_DAYS:
+ case SqlParser.TO_SECONDS:
+ case SqlParser.UCASE:
+ case SqlParser.UNCOMPRESS:
+ case SqlParser.UNCOMPRESSED_LENGTH:
+ case SqlParser.UNHEX:
+ case SqlParser.UNIX_TIMESTAMP:
+ case SqlParser.UPDATEXML:
+ case SqlParser.UPPER:
+ case SqlParser.UUID:
+ case SqlParser.UUID_SHORT:
+ case SqlParser.VALIDATE_PASSWORD_STRENGTH:
+ case SqlParser.VERSION:
+ case SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS:
+ case SqlParser.WEEKDAY:
+ case SqlParser.WEEKOFYEAR:
+ case SqlParser.WEIGHT_STRING:
+ case SqlParser.WITHIN:
+ case SqlParser.YEARWEEK:
+ case SqlParser.Y_FUNCTION:
+ case SqlParser.X_FUNCTION:
+ case SqlParser.CHARSET_REVERSE_QOUTE_STRING:
+ case SqlParser.STRING_LITERAL:
+ case SqlParser.ID:
+ case SqlParser.REVERSE_QUOTE_ID:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3083;
+ this.uid();
+ break;
+ case SqlParser.LOCAL_ID:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 3084;
+ this.match(SqlParser.LOCAL_ID);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function LockClauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_lockClause;
+ return this;
+}
+
+LockClauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+LockClauseContext.prototype.constructor = LockClauseContext;
+
+LockClauseContext.prototype.FOR = function() {
+ return this.getToken(SqlParser.FOR, 0);
+};
+
+LockClauseContext.prototype.UPDATE = function() {
+ return this.getToken(SqlParser.UPDATE, 0);
+};
+
+LockClauseContext.prototype.LOCK = function() {
+ return this.getToken(SqlParser.LOCK, 0);
+};
+
+LockClauseContext.prototype.IN = function() {
+ return this.getToken(SqlParser.IN, 0);
+};
+
+LockClauseContext.prototype.SHARE = function() {
+ return this.getToken(SqlParser.SHARE, 0);
+};
+
+LockClauseContext.prototype.MODE = function() {
+ return this.getToken(SqlParser.MODE, 0);
+};
+
+LockClauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterLockClause(this);
+ }
+};
+
+LockClauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitLockClause(this);
+ }
+};
+
+LockClauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitLockClause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.LockClauseContext = LockClauseContext;
+
+SqlParser.prototype.lockClause = function() {
+
+ var localctx = new LockClauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 190, SqlParser.RULE_lockClause);
+ try {
+ this.state = 3093;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.FOR:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3087;
+ this.match(SqlParser.FOR);
+ this.state = 3088;
+ this.match(SqlParser.UPDATE);
+ break;
+ case SqlParser.LOCK:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 3089;
+ this.match(SqlParser.LOCK);
+ this.state = 3090;
+ this.match(SqlParser.IN);
+ this.state = 3091;
+ this.match(SqlParser.SHARE);
+ this.state = 3092;
+ this.match(SqlParser.MODE);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function SingleDeleteStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_singleDeleteStatement;
+ this.priority = null; // Token
+ return this;
+}
+
+SingleDeleteStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+SingleDeleteStatementContext.prototype.constructor = SingleDeleteStatementContext;
+
+SingleDeleteStatementContext.prototype.DELETE = function() {
+ return this.getToken(SqlParser.DELETE, 0);
+};
+
+SingleDeleteStatementContext.prototype.FROM = function() {
+ return this.getToken(SqlParser.FROM, 0);
+};
+
+SingleDeleteStatementContext.prototype.tableName = function() {
+ return this.getTypedRuleContext(TableNameContext,0);
+};
+
+SingleDeleteStatementContext.prototype.QUICK = function() {
+ return this.getToken(SqlParser.QUICK, 0);
+};
+
+SingleDeleteStatementContext.prototype.IGNORE = function() {
+ return this.getToken(SqlParser.IGNORE, 0);
+};
+
+SingleDeleteStatementContext.prototype.PARTITION = function() {
+ return this.getToken(SqlParser.PARTITION, 0);
+};
+
+SingleDeleteStatementContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+SingleDeleteStatementContext.prototype.uidList = function() {
+ return this.getTypedRuleContext(UidListContext,0);
+};
+
+SingleDeleteStatementContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+SingleDeleteStatementContext.prototype.WHERE = function() {
+ return this.getToken(SqlParser.WHERE, 0);
+};
+
+SingleDeleteStatementContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+SingleDeleteStatementContext.prototype.orderByClause = function() {
+ return this.getTypedRuleContext(OrderByClauseContext,0);
+};
+
+SingleDeleteStatementContext.prototype.LIMIT = function() {
+ return this.getToken(SqlParser.LIMIT, 0);
+};
+
+SingleDeleteStatementContext.prototype.limitClauseAtom = function() {
+ return this.getTypedRuleContext(LimitClauseAtomContext,0);
+};
+
+SingleDeleteStatementContext.prototype.LOW_PRIORITY = function() {
+ return this.getToken(SqlParser.LOW_PRIORITY, 0);
+};
+
+SingleDeleteStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSingleDeleteStatement(this);
+ }
+};
+
+SingleDeleteStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSingleDeleteStatement(this);
+ }
+};
+
+SingleDeleteStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSingleDeleteStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.SingleDeleteStatementContext = SingleDeleteStatementContext;
+
+SqlParser.prototype.singleDeleteStatement = function() {
+
+ var localctx = new SingleDeleteStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 192, SqlParser.RULE_singleDeleteStatement);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3095;
+ this.match(SqlParser.DELETE);
+ this.state = 3097;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.LOW_PRIORITY) {
+ this.state = 3096;
+ localctx.priority = this.match(SqlParser.LOW_PRIORITY);
+ }
+
+ this.state = 3100;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.QUICK) {
+ this.state = 3099;
+ this.match(SqlParser.QUICK);
+ }
+
+ this.state = 3103;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.IGNORE) {
+ this.state = 3102;
+ this.match(SqlParser.IGNORE);
+ }
+
+ this.state = 3105;
+ this.match(SqlParser.FROM);
+ this.state = 3106;
+ this.tableName();
+ this.state = 3112;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.PARTITION) {
+ this.state = 3107;
+ this.match(SqlParser.PARTITION);
+ this.state = 3108;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 3109;
+ this.uidList();
+ this.state = 3110;
+ this.match(SqlParser.RR_BRACKET);
+ }
+
+ this.state = 3116;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.WHERE) {
+ this.state = 3114;
+ this.match(SqlParser.WHERE);
+ this.state = 3115;
+ this.expression(0);
+ }
+
+ this.state = 3119;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.ORDER) {
+ this.state = 3118;
+ this.orderByClause();
+ }
+
+ this.state = 3123;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.LIMIT) {
+ this.state = 3121;
+ this.match(SqlParser.LIMIT);
+ this.state = 3122;
+ this.limitClauseAtom();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function MultipleDeleteStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_multipleDeleteStatement;
+ this.priority = null; // Token
+ return this;
+}
+
+MultipleDeleteStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+MultipleDeleteStatementContext.prototype.constructor = MultipleDeleteStatementContext;
+
+MultipleDeleteStatementContext.prototype.DELETE = function() {
+ return this.getToken(SqlParser.DELETE, 0);
+};
+
+MultipleDeleteStatementContext.prototype.tableName = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(TableNameContext);
+ } else {
+ return this.getTypedRuleContext(TableNameContext,i);
+ }
+};
+
+MultipleDeleteStatementContext.prototype.FROM = function() {
+ return this.getToken(SqlParser.FROM, 0);
+};
+
+MultipleDeleteStatementContext.prototype.tableSources = function() {
+ return this.getTypedRuleContext(TableSourcesContext,0);
+};
+
+MultipleDeleteStatementContext.prototype.USING = function() {
+ return this.getToken(SqlParser.USING, 0);
+};
+
+MultipleDeleteStatementContext.prototype.QUICK = function() {
+ return this.getToken(SqlParser.QUICK, 0);
+};
+
+MultipleDeleteStatementContext.prototype.IGNORE = function() {
+ return this.getToken(SqlParser.IGNORE, 0);
+};
+
+MultipleDeleteStatementContext.prototype.WHERE = function() {
+ return this.getToken(SqlParser.WHERE, 0);
+};
+
+MultipleDeleteStatementContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+MultipleDeleteStatementContext.prototype.LOW_PRIORITY = function() {
+ return this.getToken(SqlParser.LOW_PRIORITY, 0);
+};
+
+MultipleDeleteStatementContext.prototype.DOT = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.DOT);
+ } else {
+ return this.getToken(SqlParser.DOT, i);
+ }
+};
+
+
+MultipleDeleteStatementContext.prototype.STAR = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.STAR);
+ } else {
+ return this.getToken(SqlParser.STAR, i);
+ }
+};
+
+
+MultipleDeleteStatementContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+MultipleDeleteStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterMultipleDeleteStatement(this);
+ }
+};
+
+MultipleDeleteStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitMultipleDeleteStatement(this);
+ }
+};
+
+MultipleDeleteStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitMultipleDeleteStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.MultipleDeleteStatementContext = MultipleDeleteStatementContext;
+
+SqlParser.prototype.multipleDeleteStatement = function() {
+
+ var localctx = new MultipleDeleteStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 194, SqlParser.RULE_multipleDeleteStatement);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3125;
+ this.match(SqlParser.DELETE);
+ this.state = 3127;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.LOW_PRIORITY) {
+ this.state = 3126;
+ localctx.priority = this.match(SqlParser.LOW_PRIORITY);
+ }
+
+ this.state = 3130;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,431,this._ctx);
+ if(la_===1) {
+ this.state = 3129;
+ this.match(SqlParser.QUICK);
+
+ }
+ this.state = 3133;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.IGNORE) {
+ this.state = 3132;
+ this.match(SqlParser.IGNORE);
+ }
+
+ this.state = 3174;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.CURRENT:
+ case SqlParser.DATABASE:
+ case SqlParser.DIAGNOSTICS:
+ case SqlParser.LEFT:
+ case SqlParser.NUMBER:
+ case SqlParser.RIGHT:
+ case SqlParser.STACKED:
+ case SqlParser.DATE:
+ case SqlParser.TIME:
+ case SqlParser.TIMESTAMP:
+ case SqlParser.DATETIME:
+ case SqlParser.YEAR:
+ case SqlParser.TEXT:
+ case SqlParser.ENUM:
+ case SqlParser.SERIAL:
+ case SqlParser.JSON_VALID:
+ case SqlParser.JSON_SCHEMA_VALID:
+ case SqlParser.COUNT:
+ case SqlParser.POSITION:
+ case SqlParser.ACCOUNT:
+ case SqlParser.ACTION:
+ case SqlParser.AFTER:
+ case SqlParser.AGGREGATE:
+ case SqlParser.ALGORITHM:
+ case SqlParser.ANY:
+ case SqlParser.AT:
+ case SqlParser.AUTHORS:
+ case SqlParser.AUTOCOMMIT:
+ case SqlParser.AUTOEXTEND_SIZE:
+ case SqlParser.AUTO_INCREMENT:
+ case SqlParser.AVG_ROW_LENGTH:
+ case SqlParser.BEGIN:
+ case SqlParser.BINLOG:
+ case SqlParser.BIT:
+ case SqlParser.BLOCK:
+ case SqlParser.BOOL:
+ case SqlParser.BOOLEAN:
+ case SqlParser.BTREE:
+ case SqlParser.CACHE:
+ case SqlParser.CASCADED:
+ case SqlParser.CHAIN:
+ case SqlParser.CHANGED:
+ case SqlParser.CHANNEL:
+ case SqlParser.CHECKSUM:
+ case SqlParser.PAGE_CHECKSUM:
+ case SqlParser.CIPHER:
+ case SqlParser.CLASS_ORIGIN:
+ case SqlParser.CLIENT:
+ case SqlParser.CLOSE:
+ case SqlParser.COALESCE:
+ case SqlParser.CODE:
+ case SqlParser.COLUMNS:
+ case SqlParser.COLUMN_FORMAT:
+ case SqlParser.COLUMN_NAME:
+ case SqlParser.COMMENT:
+ case SqlParser.COMMIT:
+ case SqlParser.COMPACT:
+ case SqlParser.COMPLETION:
+ case SqlParser.COMPRESSED:
+ case SqlParser.COMPRESSION:
+ case SqlParser.CONCURRENT:
+ case SqlParser.CONNECTION:
+ case SqlParser.CONSISTENT:
+ case SqlParser.CONSTRAINT_CATALOG:
+ case SqlParser.CONSTRAINT_SCHEMA:
+ case SqlParser.CONSTRAINT_NAME:
+ case SqlParser.CONTAINS:
+ case SqlParser.CONTEXT:
+ case SqlParser.CONTRIBUTORS:
+ case SqlParser.COPY:
+ case SqlParser.CPU:
+ case SqlParser.CURSOR_NAME:
+ case SqlParser.DATA:
+ case SqlParser.DATAFILE:
+ case SqlParser.DEALLOCATE:
+ case SqlParser.DEFAULT_AUTH:
+ case SqlParser.DEFINER:
+ case SqlParser.DELAY_KEY_WRITE:
+ case SqlParser.DES_KEY_FILE:
+ case SqlParser.DIRECTORY:
+ case SqlParser.DISABLE:
+ case SqlParser.DISCARD:
+ case SqlParser.DISK:
+ case SqlParser.DO:
+ case SqlParser.DUMPFILE:
+ case SqlParser.DUPLICATE:
+ case SqlParser.DYNAMIC:
+ case SqlParser.ENABLE:
+ case SqlParser.ENCRYPTION:
+ case SqlParser.END:
+ case SqlParser.ENDS:
+ case SqlParser.ENGINE:
+ case SqlParser.ENGINES:
+ case SqlParser.ERROR:
+ case SqlParser.ERRORS:
+ case SqlParser.ESCAPE:
+ case SqlParser.EVEN:
+ case SqlParser.EVENT:
+ case SqlParser.EVENTS:
+ case SqlParser.EVERY:
+ case SqlParser.EXCHANGE:
+ case SqlParser.EXCLUSIVE:
+ case SqlParser.EXPIRE:
+ case SqlParser.EXPORT:
+ case SqlParser.EXTENDED:
+ case SqlParser.EXTENT_SIZE:
+ case SqlParser.FAST:
+ case SqlParser.FAULTS:
+ case SqlParser.FIELDS:
+ case SqlParser.FILE_BLOCK_SIZE:
+ case SqlParser.FILTER:
+ case SqlParser.FIRST:
+ case SqlParser.FIXED:
+ case SqlParser.FLUSH:
+ case SqlParser.FOLLOWS:
+ case SqlParser.FOUND:
+ case SqlParser.FULL:
+ case SqlParser.FUNCTION:
+ case SqlParser.GENERAL:
+ case SqlParser.GLOBAL:
+ case SqlParser.GRANTS:
+ case SqlParser.GROUP_REPLICATION:
+ case SqlParser.HANDLER:
+ case SqlParser.HASH:
+ case SqlParser.HELP:
+ case SqlParser.HOST:
+ case SqlParser.HOSTS:
+ case SqlParser.IDENTIFIED:
+ case SqlParser.IGNORE_SERVER_IDS:
+ case SqlParser.IMPORT:
+ case SqlParser.INDEXES:
+ case SqlParser.INITIAL_SIZE:
+ case SqlParser.INPLACE:
+ case SqlParser.INSERT_METHOD:
+ case SqlParser.INSTALL:
+ case SqlParser.INSTANCE:
+ case SqlParser.INVISIBLE:
+ case SqlParser.INVOKER:
+ case SqlParser.IO:
+ case SqlParser.IO_THREAD:
+ case SqlParser.IPC:
+ case SqlParser.ISOLATION:
+ case SqlParser.ISSUER:
+ case SqlParser.JSON:
+ case SqlParser.KEY_BLOCK_SIZE:
+ case SqlParser.LANGUAGE:
+ case SqlParser.LAST:
+ case SqlParser.LEAVES:
+ case SqlParser.LESS:
+ case SqlParser.LEVEL:
+ case SqlParser.LIST:
+ case SqlParser.LOCAL:
+ case SqlParser.LOGFILE:
+ case SqlParser.LOGS:
+ case SqlParser.MASTER:
+ case SqlParser.MASTER_AUTO_POSITION:
+ case SqlParser.MASTER_CONNECT_RETRY:
+ case SqlParser.MASTER_DELAY:
+ case SqlParser.MASTER_HEARTBEAT_PERIOD:
+ case SqlParser.MASTER_HOST:
+ case SqlParser.MASTER_LOG_FILE:
+ case SqlParser.MASTER_LOG_POS:
+ case SqlParser.MASTER_PASSWORD:
+ case SqlParser.MASTER_PORT:
+ case SqlParser.MASTER_RETRY_COUNT:
+ case SqlParser.MASTER_SSL:
+ case SqlParser.MASTER_SSL_CA:
+ case SqlParser.MASTER_SSL_CAPATH:
+ case SqlParser.MASTER_SSL_CERT:
+ case SqlParser.MASTER_SSL_CIPHER:
+ case SqlParser.MASTER_SSL_CRL:
+ case SqlParser.MASTER_SSL_CRLPATH:
+ case SqlParser.MASTER_SSL_KEY:
+ case SqlParser.MASTER_TLS_VERSION:
+ case SqlParser.MASTER_USER:
+ case SqlParser.MAX_CONNECTIONS_PER_HOUR:
+ case SqlParser.MAX_QUERIES_PER_HOUR:
+ case SqlParser.MAX_ROWS:
+ case SqlParser.MAX_SIZE:
+ case SqlParser.MAX_UPDATES_PER_HOUR:
+ case SqlParser.MAX_USER_CONNECTIONS:
+ case SqlParser.MEDIUM:
+ case SqlParser.MERGE:
+ case SqlParser.MESSAGE_TEXT:
+ case SqlParser.MID:
+ case SqlParser.MIGRATE:
+ case SqlParser.MIN_ROWS:
+ case SqlParser.MODE:
+ case SqlParser.MODIFY:
+ case SqlParser.MUTEX:
+ case SqlParser.MYSQL:
+ case SqlParser.MYSQL_ERRNO:
+ case SqlParser.NAME:
+ case SqlParser.NAMES:
+ case SqlParser.NCHAR:
+ case SqlParser.NEVER:
+ case SqlParser.NEXT:
+ case SqlParser.NO:
+ case SqlParser.NODEGROUP:
+ case SqlParser.NONE:
+ case SqlParser.OFFLINE:
+ case SqlParser.OFFSET:
+ case SqlParser.OJ:
+ case SqlParser.OLD_PASSWORD:
+ case SqlParser.ONE:
+ case SqlParser.ONLINE:
+ case SqlParser.ONLY:
+ case SqlParser.OPEN:
+ case SqlParser.OPTIMIZER_COSTS:
+ case SqlParser.OPTIONS:
+ case SqlParser.OWNER:
+ case SqlParser.PACK_KEYS:
+ case SqlParser.PAGE:
+ case SqlParser.PARSER:
+ case SqlParser.PARTIAL:
+ case SqlParser.PARTITIONING:
+ case SqlParser.PARTITIONS:
+ case SqlParser.PASSWORD:
+ case SqlParser.PHASE:
+ case SqlParser.PLUGIN:
+ case SqlParser.PLUGIN_DIR:
+ case SqlParser.PLUGINS:
+ case SqlParser.PORT:
+ case SqlParser.PRECEDES:
+ case SqlParser.PREPARE:
+ case SqlParser.PRESERVE:
+ case SqlParser.PREV:
+ case SqlParser.PROCESSLIST:
+ case SqlParser.PROFILE:
+ case SqlParser.PROFILES:
+ case SqlParser.PROXY:
+ case SqlParser.QUERY:
+ case SqlParser.QUICK:
+ case SqlParser.REBUILD:
+ case SqlParser.RECOVER:
+ case SqlParser.REDO_BUFFER_SIZE:
+ case SqlParser.REDUNDANT:
+ case SqlParser.RELAY:
+ case SqlParser.RELAY_LOG_FILE:
+ case SqlParser.RELAY_LOG_POS:
+ case SqlParser.RELAYLOG:
+ case SqlParser.REMOVE:
+ case SqlParser.REORGANIZE:
+ case SqlParser.REPAIR:
+ case SqlParser.REPLICATE_DO_DB:
+ case SqlParser.REPLICATE_DO_TABLE:
+ case SqlParser.REPLICATE_IGNORE_DB:
+ case SqlParser.REPLICATE_IGNORE_TABLE:
+ case SqlParser.REPLICATE_REWRITE_DB:
+ case SqlParser.REPLICATE_WILD_DO_TABLE:
+ case SqlParser.REPLICATE_WILD_IGNORE_TABLE:
+ case SqlParser.REPLICATION:
+ case SqlParser.RESET:
+ case SqlParser.RESUME:
+ case SqlParser.RETURNED_SQLSTATE:
+ case SqlParser.RETURNS:
+ case SqlParser.ROLE:
+ case SqlParser.ROLLBACK:
+ case SqlParser.ROLLUP:
+ case SqlParser.ROTATE:
+ case SqlParser.ROW:
+ case SqlParser.ROWS:
+ case SqlParser.ROW_FORMAT:
+ case SqlParser.SAVEPOINT:
+ case SqlParser.SCHEDULE:
+ case SqlParser.SECURITY:
+ case SqlParser.SERVER:
+ case SqlParser.SESSION:
+ case SqlParser.SHARE:
+ case SqlParser.SHARED:
+ case SqlParser.SIGNED:
+ case SqlParser.SIMPLE:
+ case SqlParser.SLAVE:
+ case SqlParser.SLOW:
+ case SqlParser.SNAPSHOT:
+ case SqlParser.SOCKET:
+ case SqlParser.SOME:
+ case SqlParser.SONAME:
+ case SqlParser.SOUNDS:
+ case SqlParser.SOURCE:
+ case SqlParser.SQL_AFTER_GTIDS:
+ case SqlParser.SQL_AFTER_MTS_GAPS:
+ case SqlParser.SQL_BEFORE_GTIDS:
+ case SqlParser.SQL_BUFFER_RESULT:
+ case SqlParser.SQL_CACHE:
+ case SqlParser.SQL_NO_CACHE:
+ case SqlParser.SQL_THREAD:
+ case SqlParser.START:
+ case SqlParser.STARTS:
+ case SqlParser.STATS_AUTO_RECALC:
+ case SqlParser.STATS_PERSISTENT:
+ case SqlParser.STATS_SAMPLE_PAGES:
+ case SqlParser.STATUS:
+ case SqlParser.STOP:
+ case SqlParser.STORAGE:
+ case SqlParser.STRING:
+ case SqlParser.SUBCLASS_ORIGIN:
+ case SqlParser.SUBJECT:
+ case SqlParser.SUBPARTITION:
+ case SqlParser.SUBPARTITIONS:
+ case SqlParser.SUSPEND:
+ case SqlParser.SWAPS:
+ case SqlParser.SWITCHES:
+ case SqlParser.TABLE_NAME:
+ case SqlParser.TABLESPACE:
+ case SqlParser.TEMPORARY:
+ case SqlParser.TEMPTABLE:
+ case SqlParser.THAN:
+ case SqlParser.TRADITIONAL:
+ case SqlParser.TRANSACTION:
+ case SqlParser.TRANSACTIONAL:
+ case SqlParser.TRIGGERS:
+ case SqlParser.TRUNCATE:
+ case SqlParser.UNDEFINED:
+ case SqlParser.UNDOFILE:
+ case SqlParser.UNDO_BUFFER_SIZE:
+ case SqlParser.UNINSTALL:
+ case SqlParser.UNKNOWN:
+ case SqlParser.UNTIL:
+ case SqlParser.UPGRADE:
+ case SqlParser.USER:
+ case SqlParser.USE_FRM:
+ case SqlParser.USER_RESOURCES:
+ case SqlParser.VALIDATION:
+ case SqlParser.VALUE:
+ case SqlParser.VARIABLES:
+ case SqlParser.VIEW:
+ case SqlParser.VISIBLE:
+ case SqlParser.WAIT:
+ case SqlParser.WARNINGS:
+ case SqlParser.WITHOUT:
+ case SqlParser.WORK:
+ case SqlParser.WRAPPER:
+ case SqlParser.X509:
+ case SqlParser.XA:
+ case SqlParser.XML:
+ case SqlParser.INTERNAL:
+ case SqlParser.QUARTER:
+ case SqlParser.MONTH:
+ case SqlParser.DAY:
+ case SqlParser.HOUR:
+ case SqlParser.MINUTE:
+ case SqlParser.WEEK:
+ case SqlParser.SECOND:
+ case SqlParser.MICROSECOND:
+ case SqlParser.TABLES:
+ case SqlParser.ROUTINE:
+ case SqlParser.EXECUTE:
+ case SqlParser.FILE:
+ case SqlParser.PROCESS:
+ case SqlParser.RELOAD:
+ case SqlParser.SHUTDOWN:
+ case SqlParser.SUPER:
+ case SqlParser.PRIVILEGES:
+ case SqlParser.AUDIT_ADMIN:
+ case SqlParser.BACKUP_ADMIN:
+ case SqlParser.BINLOG_ADMIN:
+ case SqlParser.BINLOG_ENCRYPTION_ADMIN:
+ case SqlParser.CLONE_ADMIN:
+ case SqlParser.CONNECTION_ADMIN:
+ case SqlParser.ENCRYPTION_KEY_ADMIN:
+ case SqlParser.FIREWALL_ADMIN:
+ case SqlParser.FIREWALL_USER:
+ case SqlParser.GROUP_REPLICATION_ADMIN:
+ case SqlParser.INNODB_REDO_LOG_ARCHIVE:
+ case SqlParser.NDB_STORED_USER:
+ case SqlParser.PERSIST_RO_VARIABLES_ADMIN:
+ case SqlParser.REPLICATION_APPLIER:
+ case SqlParser.REPLICATION_SLAVE_ADMIN:
+ case SqlParser.RESOURCE_GROUP_ADMIN:
+ case SqlParser.RESOURCE_GROUP_USER:
+ case SqlParser.ROLE_ADMIN:
+ case SqlParser.SESSION_VARIABLES_ADMIN:
+ case SqlParser.SET_USER_ID:
+ case SqlParser.SHOW_ROUTINE:
+ case SqlParser.SYSTEM_VARIABLES_ADMIN:
+ case SqlParser.TABLE_ENCRYPTION_ADMIN:
+ case SqlParser.VERSION_TOKEN_ADMIN:
+ case SqlParser.XA_RECOVER_ADMIN:
+ case SqlParser.ARMSCII8:
+ case SqlParser.ASCII:
+ case SqlParser.BIG5:
+ case SqlParser.CP1250:
+ case SqlParser.CP1251:
+ case SqlParser.CP1256:
+ case SqlParser.CP1257:
+ case SqlParser.CP850:
+ case SqlParser.CP852:
+ case SqlParser.CP866:
+ case SqlParser.CP932:
+ case SqlParser.DEC8:
+ case SqlParser.EUCJPMS:
+ case SqlParser.EUCKR:
+ case SqlParser.GB2312:
+ case SqlParser.GBK:
+ case SqlParser.GEOSTD8:
+ case SqlParser.GREEK:
+ case SqlParser.HEBREW:
+ case SqlParser.HP8:
+ case SqlParser.KEYBCS2:
+ case SqlParser.KOI8R:
+ case SqlParser.KOI8U:
+ case SqlParser.LATIN1:
+ case SqlParser.LATIN2:
+ case SqlParser.LATIN5:
+ case SqlParser.LATIN7:
+ case SqlParser.MACCE:
+ case SqlParser.MACROMAN:
+ case SqlParser.SJIS:
+ case SqlParser.SWE7:
+ case SqlParser.TIS620:
+ case SqlParser.UCS2:
+ case SqlParser.UJIS:
+ case SqlParser.UTF16:
+ case SqlParser.UTF16LE:
+ case SqlParser.UTF32:
+ case SqlParser.UTF8:
+ case SqlParser.UTF8MB3:
+ case SqlParser.UTF8MB4:
+ case SqlParser.ARCHIVE:
+ case SqlParser.BLACKHOLE:
+ case SqlParser.CSV:
+ case SqlParser.FEDERATED:
+ case SqlParser.INNODB:
+ case SqlParser.MEMORY:
+ case SqlParser.MRG_MYISAM:
+ case SqlParser.MYISAM:
+ case SqlParser.NDB:
+ case SqlParser.NDBCLUSTER:
+ case SqlParser.PERFORMANCE_SCHEMA:
+ case SqlParser.TOKUDB:
+ case SqlParser.REPEATABLE:
+ case SqlParser.COMMITTED:
+ case SqlParser.UNCOMMITTED:
+ case SqlParser.SERIALIZABLE:
+ case SqlParser.GEOMETRYCOLLECTION:
+ case SqlParser.LINESTRING:
+ case SqlParser.MULTILINESTRING:
+ case SqlParser.MULTIPOINT:
+ case SqlParser.MULTIPOLYGON:
+ case SqlParser.POINT:
+ case SqlParser.POLYGON:
+ case SqlParser.ABS:
+ case SqlParser.ACOS:
+ case SqlParser.ADDDATE:
+ case SqlParser.ADDTIME:
+ case SqlParser.AES_DECRYPT:
+ case SqlParser.AES_ENCRYPT:
+ case SqlParser.AREA:
+ case SqlParser.ASBINARY:
+ case SqlParser.ASIN:
+ case SqlParser.ASTEXT:
+ case SqlParser.ASWKB:
+ case SqlParser.ASWKT:
+ case SqlParser.ASYMMETRIC_DECRYPT:
+ case SqlParser.ASYMMETRIC_DERIVE:
+ case SqlParser.ASYMMETRIC_ENCRYPT:
+ case SqlParser.ASYMMETRIC_SIGN:
+ case SqlParser.ASYMMETRIC_VERIFY:
+ case SqlParser.ATAN:
+ case SqlParser.ATAN2:
+ case SqlParser.BENCHMARK:
+ case SqlParser.BIN:
+ case SqlParser.BIT_COUNT:
+ case SqlParser.BIT_LENGTH:
+ case SqlParser.BUFFER:
+ case SqlParser.CATALOG_NAME:
+ case SqlParser.CEIL:
+ case SqlParser.CEILING:
+ case SqlParser.CENTROID:
+ case SqlParser.CHARACTER_LENGTH:
+ case SqlParser.CHARSET:
+ case SqlParser.CHAR_LENGTH:
+ case SqlParser.COERCIBILITY:
+ case SqlParser.COLLATION:
+ case SqlParser.COMPRESS:
+ case SqlParser.CONCAT:
+ case SqlParser.CONCAT_WS:
+ case SqlParser.CONNECTION_ID:
+ case SqlParser.CONV:
+ case SqlParser.CONVERT_TZ:
+ case SqlParser.COS:
+ case SqlParser.COT:
+ case SqlParser.CRC32:
+ case SqlParser.CREATE_ASYMMETRIC_PRIV_KEY:
+ case SqlParser.CREATE_ASYMMETRIC_PUB_KEY:
+ case SqlParser.CREATE_DH_PARAMETERS:
+ case SqlParser.CREATE_DIGEST:
+ case SqlParser.CROSSES:
+ case SqlParser.DATEDIFF:
+ case SqlParser.DATE_FORMAT:
+ case SqlParser.DAYNAME:
+ case SqlParser.DAYOFMONTH:
+ case SqlParser.DAYOFWEEK:
+ case SqlParser.DAYOFYEAR:
+ case SqlParser.DECODE:
+ case SqlParser.DEGREES:
+ case SqlParser.DES_DECRYPT:
+ case SqlParser.DES_ENCRYPT:
+ case SqlParser.DIMENSION:
+ case SqlParser.DISJOINT:
+ case SqlParser.ELT:
+ case SqlParser.ENCODE:
+ case SqlParser.ENCRYPT:
+ case SqlParser.ENDPOINT:
+ case SqlParser.ENVELOPE:
+ case SqlParser.EQUALS:
+ case SqlParser.EXP:
+ case SqlParser.EXPORT_SET:
+ case SqlParser.EXTERIORRING:
+ case SqlParser.EXTRACTVALUE:
+ case SqlParser.FIELD:
+ case SqlParser.FIND_IN_SET:
+ case SqlParser.FLOOR:
+ case SqlParser.FORMAT:
+ case SqlParser.FOUND_ROWS:
+ case SqlParser.FROM_BASE64:
+ case SqlParser.FROM_DAYS:
+ case SqlParser.FROM_UNIXTIME:
+ case SqlParser.GEOMCOLLFROMTEXT:
+ case SqlParser.GEOMCOLLFROMWKB:
+ case SqlParser.GEOMETRYCOLLECTIONFROMTEXT:
+ case SqlParser.GEOMETRYCOLLECTIONFROMWKB:
+ case SqlParser.GEOMETRYFROMTEXT:
+ case SqlParser.GEOMETRYFROMWKB:
+ case SqlParser.GEOMETRYN:
+ case SqlParser.GEOMETRYTYPE:
+ case SqlParser.GEOMFROMTEXT:
+ case SqlParser.GEOMFROMWKB:
+ case SqlParser.GET_FORMAT:
+ case SqlParser.GET_LOCK:
+ case SqlParser.GLENGTH:
+ case SqlParser.GREATEST:
+ case SqlParser.GTID_SUBSET:
+ case SqlParser.GTID_SUBTRACT:
+ case SqlParser.HEX:
+ case SqlParser.IFNULL:
+ case SqlParser.INET6_ATON:
+ case SqlParser.INET6_NTOA:
+ case SqlParser.INET_ATON:
+ case SqlParser.INET_NTOA:
+ case SqlParser.INSTR:
+ case SqlParser.INTERIORRINGN:
+ case SqlParser.INTERSECTS:
+ case SqlParser.ISCLOSED:
+ case SqlParser.ISEMPTY:
+ case SqlParser.ISNULL:
+ case SqlParser.ISSIMPLE:
+ case SqlParser.IS_FREE_LOCK:
+ case SqlParser.IS_IPV4:
+ case SqlParser.IS_IPV4_COMPAT:
+ case SqlParser.IS_IPV4_MAPPED:
+ case SqlParser.IS_IPV6:
+ case SqlParser.IS_USED_LOCK:
+ case SqlParser.LAST_INSERT_ID:
+ case SqlParser.LCASE:
+ case SqlParser.LEAST:
+ case SqlParser.LENGTH:
+ case SqlParser.LINEFROMTEXT:
+ case SqlParser.LINEFROMWKB:
+ case SqlParser.LINESTRINGFROMTEXT:
+ case SqlParser.LINESTRINGFROMWKB:
+ case SqlParser.LN:
+ case SqlParser.LOAD_FILE:
+ case SqlParser.LOCATE:
+ case SqlParser.LOG:
+ case SqlParser.LOG10:
+ case SqlParser.LOG2:
+ case SqlParser.LOWER:
+ case SqlParser.LPAD:
+ case SqlParser.LTRIM:
+ case SqlParser.MAKEDATE:
+ case SqlParser.MAKETIME:
+ case SqlParser.MAKE_SET:
+ case SqlParser.MASTER_POS_WAIT:
+ case SqlParser.MBRCONTAINS:
+ case SqlParser.MBRDISJOINT:
+ case SqlParser.MBREQUAL:
+ case SqlParser.MBRINTERSECTS:
+ case SqlParser.MBROVERLAPS:
+ case SqlParser.MBRTOUCHES:
+ case SqlParser.MBRWITHIN:
+ case SqlParser.MD5:
+ case SqlParser.MLINEFROMTEXT:
+ case SqlParser.MLINEFROMWKB:
+ case SqlParser.MONTHNAME:
+ case SqlParser.MPOINTFROMTEXT:
+ case SqlParser.MPOINTFROMWKB:
+ case SqlParser.MPOLYFROMTEXT:
+ case SqlParser.MPOLYFROMWKB:
+ case SqlParser.MULTILINESTRINGFROMTEXT:
+ case SqlParser.MULTILINESTRINGFROMWKB:
+ case SqlParser.MULTIPOINTFROMTEXT:
+ case SqlParser.MULTIPOINTFROMWKB:
+ case SqlParser.MULTIPOLYGONFROMTEXT:
+ case SqlParser.MULTIPOLYGONFROMWKB:
+ case SqlParser.NAME_CONST:
+ case SqlParser.NULLIF:
+ case SqlParser.NUMGEOMETRIES:
+ case SqlParser.NUMINTERIORRINGS:
+ case SqlParser.NUMPOINTS:
+ case SqlParser.OCT:
+ case SqlParser.OCTET_LENGTH:
+ case SqlParser.ORD:
+ case SqlParser.OVERLAPS:
+ case SqlParser.PERIOD_ADD:
+ case SqlParser.PERIOD_DIFF:
+ case SqlParser.PI:
+ case SqlParser.POINTFROMTEXT:
+ case SqlParser.POINTFROMWKB:
+ case SqlParser.POINTN:
+ case SqlParser.POLYFROMTEXT:
+ case SqlParser.POLYFROMWKB:
+ case SqlParser.POLYGONFROMTEXT:
+ case SqlParser.POLYGONFROMWKB:
+ case SqlParser.POW:
+ case SqlParser.POWER:
+ case SqlParser.QUOTE:
+ case SqlParser.RADIANS:
+ case SqlParser.RAND:
+ case SqlParser.RANDOM_BYTES:
+ case SqlParser.RELEASE_LOCK:
+ case SqlParser.REVERSE:
+ case SqlParser.ROUND:
+ case SqlParser.ROW_COUNT:
+ case SqlParser.RPAD:
+ case SqlParser.RTRIM:
+ case SqlParser.SEC_TO_TIME:
+ case SqlParser.SESSION_USER:
+ case SqlParser.SHA:
+ case SqlParser.SHA1:
+ case SqlParser.SHA2:
+ case SqlParser.SCHEMA_NAME:
+ case SqlParser.SIGN:
+ case SqlParser.SIN:
+ case SqlParser.SLEEP:
+ case SqlParser.SOUNDEX:
+ case SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS:
+ case SqlParser.SQRT:
+ case SqlParser.SRID:
+ case SqlParser.STARTPOINT:
+ case SqlParser.STRCMP:
+ case SqlParser.STR_TO_DATE:
+ case SqlParser.ST_AREA:
+ case SqlParser.ST_ASBINARY:
+ case SqlParser.ST_ASTEXT:
+ case SqlParser.ST_ASWKB:
+ case SqlParser.ST_ASWKT:
+ case SqlParser.ST_BUFFER:
+ case SqlParser.ST_CENTROID:
+ case SqlParser.ST_CONTAINS:
+ case SqlParser.ST_CROSSES:
+ case SqlParser.ST_DIFFERENCE:
+ case SqlParser.ST_DIMENSION:
+ case SqlParser.ST_DISJOINT:
+ case SqlParser.ST_DISTANCE:
+ case SqlParser.ST_ENDPOINT:
+ case SqlParser.ST_ENVELOPE:
+ case SqlParser.ST_EQUALS:
+ case SqlParser.ST_EXTERIORRING:
+ case SqlParser.ST_GEOMCOLLFROMTEXT:
+ case SqlParser.ST_GEOMCOLLFROMTXT:
+ case SqlParser.ST_GEOMCOLLFROMWKB:
+ case SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT:
+ case SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB:
+ case SqlParser.ST_GEOMETRYFROMTEXT:
+ case SqlParser.ST_GEOMETRYFROMWKB:
+ case SqlParser.ST_GEOMETRYN:
+ case SqlParser.ST_GEOMETRYTYPE:
+ case SqlParser.ST_GEOMFROMTEXT:
+ case SqlParser.ST_GEOMFROMWKB:
+ case SqlParser.ST_INTERIORRINGN:
+ case SqlParser.ST_INTERSECTION:
+ case SqlParser.ST_INTERSECTS:
+ case SqlParser.ST_ISCLOSED:
+ case SqlParser.ST_ISEMPTY:
+ case SqlParser.ST_ISSIMPLE:
+ case SqlParser.ST_LINEFROMTEXT:
+ case SqlParser.ST_LINEFROMWKB:
+ case SqlParser.ST_LINESTRINGFROMTEXT:
+ case SqlParser.ST_LINESTRINGFROMWKB:
+ case SqlParser.ST_NUMGEOMETRIES:
+ case SqlParser.ST_NUMINTERIORRING:
+ case SqlParser.ST_NUMINTERIORRINGS:
+ case SqlParser.ST_NUMPOINTS:
+ case SqlParser.ST_OVERLAPS:
+ case SqlParser.ST_POINTFROMTEXT:
+ case SqlParser.ST_POINTFROMWKB:
+ case SqlParser.ST_POINTN:
+ case SqlParser.ST_POLYFROMTEXT:
+ case SqlParser.ST_POLYFROMWKB:
+ case SqlParser.ST_POLYGONFROMTEXT:
+ case SqlParser.ST_POLYGONFROMWKB:
+ case SqlParser.ST_SRID:
+ case SqlParser.ST_STARTPOINT:
+ case SqlParser.ST_SYMDIFFERENCE:
+ case SqlParser.ST_TOUCHES:
+ case SqlParser.ST_UNION:
+ case SqlParser.ST_WITHIN:
+ case SqlParser.ST_X:
+ case SqlParser.ST_Y:
+ case SqlParser.SUBDATE:
+ case SqlParser.SUBSTRING_INDEX:
+ case SqlParser.SUBTIME:
+ case SqlParser.SYSTEM_USER:
+ case SqlParser.TAN:
+ case SqlParser.TIMEDIFF:
+ case SqlParser.TIMESTAMPADD:
+ case SqlParser.TIMESTAMPDIFF:
+ case SqlParser.TIME_FORMAT:
+ case SqlParser.TIME_TO_SEC:
+ case SqlParser.TOUCHES:
+ case SqlParser.TO_BASE64:
+ case SqlParser.TO_DAYS:
+ case SqlParser.TO_SECONDS:
+ case SqlParser.UCASE:
+ case SqlParser.UNCOMPRESS:
+ case SqlParser.UNCOMPRESSED_LENGTH:
+ case SqlParser.UNHEX:
+ case SqlParser.UNIX_TIMESTAMP:
+ case SqlParser.UPDATEXML:
+ case SqlParser.UPPER:
+ case SqlParser.UUID:
+ case SqlParser.UUID_SHORT:
+ case SqlParser.VALIDATE_PASSWORD_STRENGTH:
+ case SqlParser.VERSION:
+ case SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS:
+ case SqlParser.WEEKDAY:
+ case SqlParser.WEEKOFYEAR:
+ case SqlParser.WEIGHT_STRING:
+ case SqlParser.WITHIN:
+ case SqlParser.YEARWEEK:
+ case SqlParser.Y_FUNCTION:
+ case SqlParser.X_FUNCTION:
+ case SqlParser.CHARSET_REVERSE_QOUTE_STRING:
+ case SqlParser.STRING_LITERAL:
+ case SqlParser.ID:
+ case SqlParser.REVERSE_QUOTE_ID:
+ this.state = 3135;
+ this.tableName();
+ this.state = 3138;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.DOT) {
+ this.state = 3136;
+ this.match(SqlParser.DOT);
+ this.state = 3137;
+ this.match(SqlParser.STAR);
+ }
+
+ this.state = 3148;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 3140;
+ this.match(SqlParser.COMMA);
+ this.state = 3141;
+ this.tableName();
+ this.state = 3144;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.DOT) {
+ this.state = 3142;
+ this.match(SqlParser.DOT);
+ this.state = 3143;
+ this.match(SqlParser.STAR);
+ }
+
+ this.state = 3150;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 3151;
+ this.match(SqlParser.FROM);
+ this.state = 3152;
+ this.tableSources();
+ break;
+ case SqlParser.FROM:
+ this.state = 3154;
+ this.match(SqlParser.FROM);
+ this.state = 3155;
+ this.tableName();
+ this.state = 3158;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.DOT) {
+ this.state = 3156;
+ this.match(SqlParser.DOT);
+ this.state = 3157;
+ this.match(SqlParser.STAR);
+ }
+
+ this.state = 3168;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 3160;
+ this.match(SqlParser.COMMA);
+ this.state = 3161;
+ this.tableName();
+ this.state = 3164;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.DOT) {
+ this.state = 3162;
+ this.match(SqlParser.DOT);
+ this.state = 3163;
+ this.match(SqlParser.STAR);
+ }
+
+ this.state = 3170;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 3171;
+ this.match(SqlParser.USING);
+ this.state = 3172;
+ this.tableSources();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 3178;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.WHERE) {
+ this.state = 3176;
+ this.match(SqlParser.WHERE);
+ this.state = 3177;
+ this.expression(0);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function HandlerOpenStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_handlerOpenStatement;
+ return this;
+}
+
+HandlerOpenStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+HandlerOpenStatementContext.prototype.constructor = HandlerOpenStatementContext;
+
+HandlerOpenStatementContext.prototype.HANDLER = function() {
+ return this.getToken(SqlParser.HANDLER, 0);
+};
+
+HandlerOpenStatementContext.prototype.tableName = function() {
+ return this.getTypedRuleContext(TableNameContext,0);
+};
+
+HandlerOpenStatementContext.prototype.OPEN = function() {
+ return this.getToken(SqlParser.OPEN, 0);
+};
+
+HandlerOpenStatementContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+HandlerOpenStatementContext.prototype.AS = function() {
+ return this.getToken(SqlParser.AS, 0);
+};
+
+HandlerOpenStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterHandlerOpenStatement(this);
+ }
+};
+
+HandlerOpenStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitHandlerOpenStatement(this);
+ }
+};
+
+HandlerOpenStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitHandlerOpenStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.HandlerOpenStatementContext = HandlerOpenStatementContext;
+
+SqlParser.prototype.handlerOpenStatement = function() {
+
+ var localctx = new HandlerOpenStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 196, SqlParser.RULE_handlerOpenStatement);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3180;
+ this.match(SqlParser.HANDLER);
+ this.state = 3181;
+ this.tableName();
+ this.state = 3182;
+ this.match(SqlParser.OPEN);
+ this.state = 3187;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,442,this._ctx);
+ if(la_===1) {
+ this.state = 3184;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.AS) {
+ this.state = 3183;
+ this.match(SqlParser.AS);
+ }
+
+ this.state = 3186;
+ this.uid();
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function HandlerReadIndexStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_handlerReadIndexStatement;
+ this.index = null; // UidContext
+ this.moveOrder = null; // Token
+ return this;
+}
+
+HandlerReadIndexStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+HandlerReadIndexStatementContext.prototype.constructor = HandlerReadIndexStatementContext;
+
+HandlerReadIndexStatementContext.prototype.HANDLER = function() {
+ return this.getToken(SqlParser.HANDLER, 0);
+};
+
+HandlerReadIndexStatementContext.prototype.tableName = function() {
+ return this.getTypedRuleContext(TableNameContext,0);
+};
+
+HandlerReadIndexStatementContext.prototype.READ = function() {
+ return this.getToken(SqlParser.READ, 0);
+};
+
+HandlerReadIndexStatementContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+HandlerReadIndexStatementContext.prototype.comparisonOperator = function() {
+ return this.getTypedRuleContext(ComparisonOperatorContext,0);
+};
+
+HandlerReadIndexStatementContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+HandlerReadIndexStatementContext.prototype.constants = function() {
+ return this.getTypedRuleContext(ConstantsContext,0);
+};
+
+HandlerReadIndexStatementContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+HandlerReadIndexStatementContext.prototype.WHERE = function() {
+ return this.getToken(SqlParser.WHERE, 0);
+};
+
+HandlerReadIndexStatementContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+HandlerReadIndexStatementContext.prototype.LIMIT = function() {
+ return this.getToken(SqlParser.LIMIT, 0);
+};
+
+HandlerReadIndexStatementContext.prototype.limitClauseAtom = function() {
+ return this.getTypedRuleContext(LimitClauseAtomContext,0);
+};
+
+HandlerReadIndexStatementContext.prototype.FIRST = function() {
+ return this.getToken(SqlParser.FIRST, 0);
+};
+
+HandlerReadIndexStatementContext.prototype.NEXT = function() {
+ return this.getToken(SqlParser.NEXT, 0);
+};
+
+HandlerReadIndexStatementContext.prototype.PREV = function() {
+ return this.getToken(SqlParser.PREV, 0);
+};
+
+HandlerReadIndexStatementContext.prototype.LAST = function() {
+ return this.getToken(SqlParser.LAST, 0);
+};
+
+HandlerReadIndexStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterHandlerReadIndexStatement(this);
+ }
+};
+
+HandlerReadIndexStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitHandlerReadIndexStatement(this);
+ }
+};
+
+HandlerReadIndexStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitHandlerReadIndexStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.HandlerReadIndexStatementContext = HandlerReadIndexStatementContext;
+
+SqlParser.prototype.handlerReadIndexStatement = function() {
+
+ var localctx = new HandlerReadIndexStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 198, SqlParser.RULE_handlerReadIndexStatement);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3189;
+ this.match(SqlParser.HANDLER);
+ this.state = 3190;
+ this.tableName();
+ this.state = 3191;
+ this.match(SqlParser.READ);
+ this.state = 3192;
+ localctx.index = this.uid();
+ this.state = 3199;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.EQUAL_SYMBOL:
+ case SqlParser.GREATER_SYMBOL:
+ case SqlParser.LESS_SYMBOL:
+ case SqlParser.EXCLAMATION_SYMBOL:
+ this.state = 3193;
+ this.comparisonOperator();
+ this.state = 3194;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 3195;
+ this.constants();
+ this.state = 3196;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+ case SqlParser.FIRST:
+ case SqlParser.LAST:
+ case SqlParser.NEXT:
+ case SqlParser.PREV:
+ this.state = 3198;
+ localctx.moveOrder = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.FIRST || _la===SqlParser.LAST || _la===SqlParser.NEXT || _la===SqlParser.PREV)) {
+ localctx.moveOrder = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 3203;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.WHERE) {
+ this.state = 3201;
+ this.match(SqlParser.WHERE);
+ this.state = 3202;
+ this.expression(0);
+ }
+
+ this.state = 3207;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.LIMIT) {
+ this.state = 3205;
+ this.match(SqlParser.LIMIT);
+ this.state = 3206;
+ this.limitClauseAtom();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function HandlerReadStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_handlerReadStatement;
+ this.moveOrder = null; // Token
+ return this;
+}
+
+HandlerReadStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+HandlerReadStatementContext.prototype.constructor = HandlerReadStatementContext;
+
+HandlerReadStatementContext.prototype.HANDLER = function() {
+ return this.getToken(SqlParser.HANDLER, 0);
+};
+
+HandlerReadStatementContext.prototype.tableName = function() {
+ return this.getTypedRuleContext(TableNameContext,0);
+};
+
+HandlerReadStatementContext.prototype.READ = function() {
+ return this.getToken(SqlParser.READ, 0);
+};
+
+HandlerReadStatementContext.prototype.FIRST = function() {
+ return this.getToken(SqlParser.FIRST, 0);
+};
+
+HandlerReadStatementContext.prototype.NEXT = function() {
+ return this.getToken(SqlParser.NEXT, 0);
+};
+
+HandlerReadStatementContext.prototype.WHERE = function() {
+ return this.getToken(SqlParser.WHERE, 0);
+};
+
+HandlerReadStatementContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+HandlerReadStatementContext.prototype.LIMIT = function() {
+ return this.getToken(SqlParser.LIMIT, 0);
+};
+
+HandlerReadStatementContext.prototype.limitClauseAtom = function() {
+ return this.getTypedRuleContext(LimitClauseAtomContext,0);
+};
+
+HandlerReadStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterHandlerReadStatement(this);
+ }
+};
+
+HandlerReadStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitHandlerReadStatement(this);
+ }
+};
+
+HandlerReadStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitHandlerReadStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.HandlerReadStatementContext = HandlerReadStatementContext;
+
+SqlParser.prototype.handlerReadStatement = function() {
+
+ var localctx = new HandlerReadStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 200, SqlParser.RULE_handlerReadStatement);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3209;
+ this.match(SqlParser.HANDLER);
+ this.state = 3210;
+ this.tableName();
+ this.state = 3211;
+ this.match(SqlParser.READ);
+ this.state = 3212;
+ localctx.moveOrder = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.FIRST || _la===SqlParser.NEXT)) {
+ localctx.moveOrder = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 3215;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.WHERE) {
+ this.state = 3213;
+ this.match(SqlParser.WHERE);
+ this.state = 3214;
+ this.expression(0);
+ }
+
+ this.state = 3219;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.LIMIT) {
+ this.state = 3217;
+ this.match(SqlParser.LIMIT);
+ this.state = 3218;
+ this.limitClauseAtom();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function HandlerCloseStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_handlerCloseStatement;
+ return this;
+}
+
+HandlerCloseStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+HandlerCloseStatementContext.prototype.constructor = HandlerCloseStatementContext;
+
+HandlerCloseStatementContext.prototype.HANDLER = function() {
+ return this.getToken(SqlParser.HANDLER, 0);
+};
+
+HandlerCloseStatementContext.prototype.tableName = function() {
+ return this.getTypedRuleContext(TableNameContext,0);
+};
+
+HandlerCloseStatementContext.prototype.CLOSE = function() {
+ return this.getToken(SqlParser.CLOSE, 0);
+};
+
+HandlerCloseStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterHandlerCloseStatement(this);
+ }
+};
+
+HandlerCloseStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitHandlerCloseStatement(this);
+ }
+};
+
+HandlerCloseStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitHandlerCloseStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.HandlerCloseStatementContext = HandlerCloseStatementContext;
+
+SqlParser.prototype.handlerCloseStatement = function() {
+
+ var localctx = new HandlerCloseStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 202, SqlParser.RULE_handlerCloseStatement);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3221;
+ this.match(SqlParser.HANDLER);
+ this.state = 3222;
+ this.tableName();
+ this.state = 3223;
+ this.match(SqlParser.CLOSE);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function SingleUpdateStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_singleUpdateStatement;
+ this.priority = null; // Token
+ return this;
+}
+
+SingleUpdateStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+SingleUpdateStatementContext.prototype.constructor = SingleUpdateStatementContext;
+
+SingleUpdateStatementContext.prototype.UPDATE = function() {
+ return this.getToken(SqlParser.UPDATE, 0);
+};
+
+SingleUpdateStatementContext.prototype.tableName = function() {
+ return this.getTypedRuleContext(TableNameContext,0);
+};
+
+SingleUpdateStatementContext.prototype.SET = function() {
+ return this.getToken(SqlParser.SET, 0);
+};
+
+SingleUpdateStatementContext.prototype.updatedElement = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UpdatedElementContext);
+ } else {
+ return this.getTypedRuleContext(UpdatedElementContext,i);
+ }
+};
+
+SingleUpdateStatementContext.prototype.IGNORE = function() {
+ return this.getToken(SqlParser.IGNORE, 0);
+};
+
+SingleUpdateStatementContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+SingleUpdateStatementContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+SingleUpdateStatementContext.prototype.WHERE = function() {
+ return this.getToken(SqlParser.WHERE, 0);
+};
+
+SingleUpdateStatementContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+SingleUpdateStatementContext.prototype.orderByClause = function() {
+ return this.getTypedRuleContext(OrderByClauseContext,0);
+};
+
+SingleUpdateStatementContext.prototype.limitClause = function() {
+ return this.getTypedRuleContext(LimitClauseContext,0);
+};
+
+SingleUpdateStatementContext.prototype.LOW_PRIORITY = function() {
+ return this.getToken(SqlParser.LOW_PRIORITY, 0);
+};
+
+SingleUpdateStatementContext.prototype.AS = function() {
+ return this.getToken(SqlParser.AS, 0);
+};
+
+SingleUpdateStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSingleUpdateStatement(this);
+ }
+};
+
+SingleUpdateStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSingleUpdateStatement(this);
+ }
+};
+
+SingleUpdateStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSingleUpdateStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.SingleUpdateStatementContext = SingleUpdateStatementContext;
+
+SqlParser.prototype.singleUpdateStatement = function() {
+
+ var localctx = new SingleUpdateStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 204, SqlParser.RULE_singleUpdateStatement);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3225;
+ this.match(SqlParser.UPDATE);
+ this.state = 3227;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.LOW_PRIORITY) {
+ this.state = 3226;
+ localctx.priority = this.match(SqlParser.LOW_PRIORITY);
+ }
+
+ this.state = 3230;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.IGNORE) {
+ this.state = 3229;
+ this.match(SqlParser.IGNORE);
+ }
+
+ this.state = 3232;
+ this.tableName();
+ this.state = 3237;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.AS || ((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (SqlParser.CURRENT - 32)) | (1 << (SqlParser.DATABASE - 32)) | (1 << (SqlParser.DIAGNOSTICS - 32)))) !== 0) || _la===SqlParser.LEFT || _la===SqlParser.NUMBER || _la===SqlParser.RIGHT || _la===SqlParser.STACKED || ((((_la - 199)) & ~0x1f) == 0 && ((1 << (_la - 199)) & ((1 << (SqlParser.DATE - 199)) | (1 << (SqlParser.TIME - 199)) | (1 << (SqlParser.TIMESTAMP - 199)) | (1 << (SqlParser.DATETIME - 199)) | (1 << (SqlParser.YEAR - 199)) | (1 << (SqlParser.TEXT - 199)) | (1 << (SqlParser.ENUM - 199)) | (1 << (SqlParser.SERIAL - 199)))) !== 0) || ((((_la - 233)) & ~0x1f) == 0 && ((1 << (_la - 233)) & ((1 << (SqlParser.JSON_VALID - 233)) | (1 << (SqlParser.JSON_SCHEMA_VALID - 233)) | (1 << (SqlParser.COUNT - 233)) | (1 << (SqlParser.POSITION - 233)))) !== 0) || ((((_la - 270)) & ~0x1f) == 0 && ((1 << (_la - 270)) & ((1 << (SqlParser.ACCOUNT - 270)) | (1 << (SqlParser.ACTION - 270)) | (1 << (SqlParser.AFTER - 270)) | (1 << (SqlParser.AGGREGATE - 270)) | (1 << (SqlParser.ALGORITHM - 270)) | (1 << (SqlParser.ANY - 270)) | (1 << (SqlParser.AT - 270)) | (1 << (SqlParser.AUTHORS - 270)) | (1 << (SqlParser.AUTOCOMMIT - 270)) | (1 << (SqlParser.AUTOEXTEND_SIZE - 270)) | (1 << (SqlParser.AUTO_INCREMENT - 270)) | (1 << (SqlParser.AVG_ROW_LENGTH - 270)) | (1 << (SqlParser.BEGIN - 270)) | (1 << (SqlParser.BINLOG - 270)) | (1 << (SqlParser.BIT - 270)) | (1 << (SqlParser.BLOCK - 270)) | (1 << (SqlParser.BOOL - 270)) | (1 << (SqlParser.BOOLEAN - 270)) | (1 << (SqlParser.BTREE - 270)) | (1 << (SqlParser.CACHE - 270)) | (1 << (SqlParser.CASCADED - 270)) | (1 << (SqlParser.CHAIN - 270)) | (1 << (SqlParser.CHANGED - 270)) | (1 << (SqlParser.CHANNEL - 270)) | (1 << (SqlParser.CHECKSUM - 270)) | (1 << (SqlParser.PAGE_CHECKSUM - 270)) | (1 << (SqlParser.CIPHER - 270)) | (1 << (SqlParser.CLASS_ORIGIN - 270)) | (1 << (SqlParser.CLIENT - 270)) | (1 << (SqlParser.CLOSE - 270)) | (1 << (SqlParser.COALESCE - 270)) | (1 << (SqlParser.CODE - 270)))) !== 0) || ((((_la - 302)) & ~0x1f) == 0 && ((1 << (_la - 302)) & ((1 << (SqlParser.COLUMNS - 302)) | (1 << (SqlParser.COLUMN_FORMAT - 302)) | (1 << (SqlParser.COLUMN_NAME - 302)) | (1 << (SqlParser.COMMENT - 302)) | (1 << (SqlParser.COMMIT - 302)) | (1 << (SqlParser.COMPACT - 302)) | (1 << (SqlParser.COMPLETION - 302)) | (1 << (SqlParser.COMPRESSED - 302)) | (1 << (SqlParser.COMPRESSION - 302)) | (1 << (SqlParser.CONCURRENT - 302)) | (1 << (SqlParser.CONNECTION - 302)) | (1 << (SqlParser.CONSISTENT - 302)) | (1 << (SqlParser.CONSTRAINT_CATALOG - 302)) | (1 << (SqlParser.CONSTRAINT_SCHEMA - 302)) | (1 << (SqlParser.CONSTRAINT_NAME - 302)) | (1 << (SqlParser.CONTAINS - 302)) | (1 << (SqlParser.CONTEXT - 302)) | (1 << (SqlParser.CONTRIBUTORS - 302)) | (1 << (SqlParser.COPY - 302)) | (1 << (SqlParser.CPU - 302)) | (1 << (SqlParser.CURSOR_NAME - 302)) | (1 << (SqlParser.DATA - 302)) | (1 << (SqlParser.DATAFILE - 302)) | (1 << (SqlParser.DEALLOCATE - 302)) | (1 << (SqlParser.DEFAULT_AUTH - 302)) | (1 << (SqlParser.DEFINER - 302)) | (1 << (SqlParser.DELAY_KEY_WRITE - 302)) | (1 << (SqlParser.DES_KEY_FILE - 302)) | (1 << (SqlParser.DIRECTORY - 302)) | (1 << (SqlParser.DISABLE - 302)) | (1 << (SqlParser.DISCARD - 302)) | (1 << (SqlParser.DISK - 302)))) !== 0) || ((((_la - 334)) & ~0x1f) == 0 && ((1 << (_la - 334)) & ((1 << (SqlParser.DO - 334)) | (1 << (SqlParser.DUMPFILE - 334)) | (1 << (SqlParser.DUPLICATE - 334)) | (1 << (SqlParser.DYNAMIC - 334)) | (1 << (SqlParser.ENABLE - 334)) | (1 << (SqlParser.ENCRYPTION - 334)) | (1 << (SqlParser.END - 334)) | (1 << (SqlParser.ENDS - 334)) | (1 << (SqlParser.ENGINE - 334)) | (1 << (SqlParser.ENGINES - 334)) | (1 << (SqlParser.ERROR - 334)) | (1 << (SqlParser.ERRORS - 334)) | (1 << (SqlParser.ESCAPE - 334)) | (1 << (SqlParser.EVEN - 334)) | (1 << (SqlParser.EVENT - 334)) | (1 << (SqlParser.EVENTS - 334)) | (1 << (SqlParser.EVERY - 334)) | (1 << (SqlParser.EXCHANGE - 334)) | (1 << (SqlParser.EXCLUSIVE - 334)) | (1 << (SqlParser.EXPIRE - 334)) | (1 << (SqlParser.EXPORT - 334)) | (1 << (SqlParser.EXTENDED - 334)) | (1 << (SqlParser.EXTENT_SIZE - 334)) | (1 << (SqlParser.FAST - 334)) | (1 << (SqlParser.FAULTS - 334)) | (1 << (SqlParser.FIELDS - 334)) | (1 << (SqlParser.FILE_BLOCK_SIZE - 334)) | (1 << (SqlParser.FILTER - 334)) | (1 << (SqlParser.FIRST - 334)) | (1 << (SqlParser.FIXED - 334)) | (1 << (SqlParser.FLUSH - 334)) | (1 << (SqlParser.FOLLOWS - 334)))) !== 0) || ((((_la - 366)) & ~0x1f) == 0 && ((1 << (_la - 366)) & ((1 << (SqlParser.FOUND - 366)) | (1 << (SqlParser.FULL - 366)) | (1 << (SqlParser.FUNCTION - 366)) | (1 << (SqlParser.GENERAL - 366)) | (1 << (SqlParser.GLOBAL - 366)) | (1 << (SqlParser.GRANTS - 366)) | (1 << (SqlParser.GROUP_REPLICATION - 366)) | (1 << (SqlParser.HANDLER - 366)) | (1 << (SqlParser.HASH - 366)) | (1 << (SqlParser.HELP - 366)) | (1 << (SqlParser.HOST - 366)) | (1 << (SqlParser.HOSTS - 366)) | (1 << (SqlParser.IDENTIFIED - 366)) | (1 << (SqlParser.IGNORE_SERVER_IDS - 366)) | (1 << (SqlParser.IMPORT - 366)) | (1 << (SqlParser.INDEXES - 366)) | (1 << (SqlParser.INITIAL_SIZE - 366)) | (1 << (SqlParser.INPLACE - 366)) | (1 << (SqlParser.INSERT_METHOD - 366)) | (1 << (SqlParser.INSTALL - 366)) | (1 << (SqlParser.INSTANCE - 366)) | (1 << (SqlParser.INVISIBLE - 366)) | (1 << (SqlParser.INVOKER - 366)) | (1 << (SqlParser.IO - 366)) | (1 << (SqlParser.IO_THREAD - 366)) | (1 << (SqlParser.IPC - 366)) | (1 << (SqlParser.ISOLATION - 366)) | (1 << (SqlParser.ISSUER - 366)) | (1 << (SqlParser.JSON - 366)) | (1 << (SqlParser.KEY_BLOCK_SIZE - 366)) | (1 << (SqlParser.LANGUAGE - 366)) | (1 << (SqlParser.LAST - 366)))) !== 0) || ((((_la - 398)) & ~0x1f) == 0 && ((1 << (_la - 398)) & ((1 << (SqlParser.LEAVES - 398)) | (1 << (SqlParser.LESS - 398)) | (1 << (SqlParser.LEVEL - 398)) | (1 << (SqlParser.LIST - 398)) | (1 << (SqlParser.LOCAL - 398)) | (1 << (SqlParser.LOGFILE - 398)) | (1 << (SqlParser.LOGS - 398)) | (1 << (SqlParser.MASTER - 398)) | (1 << (SqlParser.MASTER_AUTO_POSITION - 398)) | (1 << (SqlParser.MASTER_CONNECT_RETRY - 398)) | (1 << (SqlParser.MASTER_DELAY - 398)) | (1 << (SqlParser.MASTER_HEARTBEAT_PERIOD - 398)) | (1 << (SqlParser.MASTER_HOST - 398)) | (1 << (SqlParser.MASTER_LOG_FILE - 398)) | (1 << (SqlParser.MASTER_LOG_POS - 398)) | (1 << (SqlParser.MASTER_PASSWORD - 398)) | (1 << (SqlParser.MASTER_PORT - 398)) | (1 << (SqlParser.MASTER_RETRY_COUNT - 398)) | (1 << (SqlParser.MASTER_SSL - 398)) | (1 << (SqlParser.MASTER_SSL_CA - 398)) | (1 << (SqlParser.MASTER_SSL_CAPATH - 398)) | (1 << (SqlParser.MASTER_SSL_CERT - 398)) | (1 << (SqlParser.MASTER_SSL_CIPHER - 398)) | (1 << (SqlParser.MASTER_SSL_CRL - 398)) | (1 << (SqlParser.MASTER_SSL_CRLPATH - 398)) | (1 << (SqlParser.MASTER_SSL_KEY - 398)) | (1 << (SqlParser.MASTER_TLS_VERSION - 398)) | (1 << (SqlParser.MASTER_USER - 398)) | (1 << (SqlParser.MAX_CONNECTIONS_PER_HOUR - 398)) | (1 << (SqlParser.MAX_QUERIES_PER_HOUR - 398)) | (1 << (SqlParser.MAX_ROWS - 398)) | (1 << (SqlParser.MAX_SIZE - 398)))) !== 0) || ((((_la - 430)) & ~0x1f) == 0 && ((1 << (_la - 430)) & ((1 << (SqlParser.MAX_UPDATES_PER_HOUR - 430)) | (1 << (SqlParser.MAX_USER_CONNECTIONS - 430)) | (1 << (SqlParser.MEDIUM - 430)) | (1 << (SqlParser.MERGE - 430)) | (1 << (SqlParser.MESSAGE_TEXT - 430)) | (1 << (SqlParser.MID - 430)) | (1 << (SqlParser.MIGRATE - 430)) | (1 << (SqlParser.MIN_ROWS - 430)) | (1 << (SqlParser.MODE - 430)) | (1 << (SqlParser.MODIFY - 430)) | (1 << (SqlParser.MUTEX - 430)) | (1 << (SqlParser.MYSQL - 430)) | (1 << (SqlParser.MYSQL_ERRNO - 430)) | (1 << (SqlParser.NAME - 430)) | (1 << (SqlParser.NAMES - 430)) | (1 << (SqlParser.NCHAR - 430)) | (1 << (SqlParser.NEVER - 430)) | (1 << (SqlParser.NEXT - 430)) | (1 << (SqlParser.NO - 430)) | (1 << (SqlParser.NODEGROUP - 430)) | (1 << (SqlParser.NONE - 430)) | (1 << (SqlParser.OFFLINE - 430)) | (1 << (SqlParser.OFFSET - 430)) | (1 << (SqlParser.OJ - 430)) | (1 << (SqlParser.OLD_PASSWORD - 430)) | (1 << (SqlParser.ONE - 430)) | (1 << (SqlParser.ONLINE - 430)) | (1 << (SqlParser.ONLY - 430)) | (1 << (SqlParser.OPEN - 430)) | (1 << (SqlParser.OPTIMIZER_COSTS - 430)) | (1 << (SqlParser.OPTIONS - 430)) | (1 << (SqlParser.OWNER - 430)))) !== 0) || ((((_la - 462)) & ~0x1f) == 0 && ((1 << (_la - 462)) & ((1 << (SqlParser.PACK_KEYS - 462)) | (1 << (SqlParser.PAGE - 462)) | (1 << (SqlParser.PARSER - 462)) | (1 << (SqlParser.PARTIAL - 462)) | (1 << (SqlParser.PARTITIONING - 462)) | (1 << (SqlParser.PARTITIONS - 462)) | (1 << (SqlParser.PASSWORD - 462)) | (1 << (SqlParser.PHASE - 462)) | (1 << (SqlParser.PLUGIN - 462)) | (1 << (SqlParser.PLUGIN_DIR - 462)) | (1 << (SqlParser.PLUGINS - 462)) | (1 << (SqlParser.PORT - 462)) | (1 << (SqlParser.PRECEDES - 462)) | (1 << (SqlParser.PREPARE - 462)) | (1 << (SqlParser.PRESERVE - 462)) | (1 << (SqlParser.PREV - 462)) | (1 << (SqlParser.PROCESSLIST - 462)) | (1 << (SqlParser.PROFILE - 462)) | (1 << (SqlParser.PROFILES - 462)) | (1 << (SqlParser.PROXY - 462)) | (1 << (SqlParser.QUERY - 462)) | (1 << (SqlParser.QUICK - 462)) | (1 << (SqlParser.REBUILD - 462)) | (1 << (SqlParser.RECOVER - 462)) | (1 << (SqlParser.REDO_BUFFER_SIZE - 462)) | (1 << (SqlParser.REDUNDANT - 462)) | (1 << (SqlParser.RELAY - 462)) | (1 << (SqlParser.RELAY_LOG_FILE - 462)) | (1 << (SqlParser.RELAY_LOG_POS - 462)) | (1 << (SqlParser.RELAYLOG - 462)) | (1 << (SqlParser.REMOVE - 462)) | (1 << (SqlParser.REORGANIZE - 462)))) !== 0) || ((((_la - 494)) & ~0x1f) == 0 && ((1 << (_la - 494)) & ((1 << (SqlParser.REPAIR - 494)) | (1 << (SqlParser.REPLICATE_DO_DB - 494)) | (1 << (SqlParser.REPLICATE_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_DB - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATE_REWRITE_DB - 494)) | (1 << (SqlParser.REPLICATE_WILD_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_WILD_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATION - 494)) | (1 << (SqlParser.RESET - 494)) | (1 << (SqlParser.RESUME - 494)) | (1 << (SqlParser.RETURNED_SQLSTATE - 494)) | (1 << (SqlParser.RETURNS - 494)) | (1 << (SqlParser.ROLE - 494)) | (1 << (SqlParser.ROLLBACK - 494)) | (1 << (SqlParser.ROLLUP - 494)) | (1 << (SqlParser.ROTATE - 494)) | (1 << (SqlParser.ROW - 494)) | (1 << (SqlParser.ROWS - 494)) | (1 << (SqlParser.ROW_FORMAT - 494)) | (1 << (SqlParser.SAVEPOINT - 494)) | (1 << (SqlParser.SCHEDULE - 494)) | (1 << (SqlParser.SECURITY - 494)) | (1 << (SqlParser.SERVER - 494)) | (1 << (SqlParser.SESSION - 494)) | (1 << (SqlParser.SHARE - 494)) | (1 << (SqlParser.SHARED - 494)) | (1 << (SqlParser.SIGNED - 494)) | (1 << (SqlParser.SIMPLE - 494)) | (1 << (SqlParser.SLAVE - 494)) | (1 << (SqlParser.SLOW - 494)) | (1 << (SqlParser.SNAPSHOT - 494)))) !== 0) || ((((_la - 526)) & ~0x1f) == 0 && ((1 << (_la - 526)) & ((1 << (SqlParser.SOCKET - 526)) | (1 << (SqlParser.SOME - 526)) | (1 << (SqlParser.SONAME - 526)) | (1 << (SqlParser.SOUNDS - 526)) | (1 << (SqlParser.SOURCE - 526)) | (1 << (SqlParser.SQL_AFTER_GTIDS - 526)) | (1 << (SqlParser.SQL_AFTER_MTS_GAPS - 526)) | (1 << (SqlParser.SQL_BEFORE_GTIDS - 526)) | (1 << (SqlParser.SQL_BUFFER_RESULT - 526)) | (1 << (SqlParser.SQL_CACHE - 526)) | (1 << (SqlParser.SQL_NO_CACHE - 526)) | (1 << (SqlParser.SQL_THREAD - 526)) | (1 << (SqlParser.START - 526)) | (1 << (SqlParser.STARTS - 526)) | (1 << (SqlParser.STATS_AUTO_RECALC - 526)) | (1 << (SqlParser.STATS_PERSISTENT - 526)) | (1 << (SqlParser.STATS_SAMPLE_PAGES - 526)) | (1 << (SqlParser.STATUS - 526)) | (1 << (SqlParser.STOP - 526)) | (1 << (SqlParser.STORAGE - 526)) | (1 << (SqlParser.STRING - 526)) | (1 << (SqlParser.SUBCLASS_ORIGIN - 526)) | (1 << (SqlParser.SUBJECT - 526)) | (1 << (SqlParser.SUBPARTITION - 526)) | (1 << (SqlParser.SUBPARTITIONS - 526)) | (1 << (SqlParser.SUSPEND - 526)) | (1 << (SqlParser.SWAPS - 526)) | (1 << (SqlParser.SWITCHES - 526)) | (1 << (SqlParser.TABLE_NAME - 526)) | (1 << (SqlParser.TABLESPACE - 526)) | (1 << (SqlParser.TEMPORARY - 526)))) !== 0) || ((((_la - 558)) & ~0x1f) == 0 && ((1 << (_la - 558)) & ((1 << (SqlParser.TEMPTABLE - 558)) | (1 << (SqlParser.THAN - 558)) | (1 << (SqlParser.TRADITIONAL - 558)) | (1 << (SqlParser.TRANSACTION - 558)) | (1 << (SqlParser.TRANSACTIONAL - 558)) | (1 << (SqlParser.TRIGGERS - 558)) | (1 << (SqlParser.TRUNCATE - 558)) | (1 << (SqlParser.UNDEFINED - 558)) | (1 << (SqlParser.UNDOFILE - 558)) | (1 << (SqlParser.UNDO_BUFFER_SIZE - 558)) | (1 << (SqlParser.UNINSTALL - 558)) | (1 << (SqlParser.UNKNOWN - 558)) | (1 << (SqlParser.UNTIL - 558)) | (1 << (SqlParser.UPGRADE - 558)) | (1 << (SqlParser.USER - 558)) | (1 << (SqlParser.USE_FRM - 558)) | (1 << (SqlParser.USER_RESOURCES - 558)) | (1 << (SqlParser.VALIDATION - 558)) | (1 << (SqlParser.VALUE - 558)) | (1 << (SqlParser.VARIABLES - 558)) | (1 << (SqlParser.VIEW - 558)) | (1 << (SqlParser.VISIBLE - 558)) | (1 << (SqlParser.WAIT - 558)) | (1 << (SqlParser.WARNINGS - 558)) | (1 << (SqlParser.WITHOUT - 558)) | (1 << (SqlParser.WORK - 558)) | (1 << (SqlParser.WRAPPER - 558)) | (1 << (SqlParser.X509 - 558)) | (1 << (SqlParser.XA - 558)) | (1 << (SqlParser.XML - 558)))) !== 0) || ((((_la - 593)) & ~0x1f) == 0 && ((1 << (_la - 593)) & ((1 << (SqlParser.INTERNAL - 593)) | (1 << (SqlParser.QUARTER - 593)) | (1 << (SqlParser.MONTH - 593)) | (1 << (SqlParser.DAY - 593)) | (1 << (SqlParser.HOUR - 593)) | (1 << (SqlParser.MINUTE - 593)) | (1 << (SqlParser.WEEK - 593)) | (1 << (SqlParser.SECOND - 593)) | (1 << (SqlParser.MICROSECOND - 593)) | (1 << (SqlParser.TABLES - 593)) | (1 << (SqlParser.ROUTINE - 593)) | (1 << (SqlParser.EXECUTE - 593)) | (1 << (SqlParser.FILE - 593)) | (1 << (SqlParser.PROCESS - 593)) | (1 << (SqlParser.RELOAD - 593)) | (1 << (SqlParser.SHUTDOWN - 593)) | (1 << (SqlParser.SUPER - 593)) | (1 << (SqlParser.PRIVILEGES - 593)) | (1 << (SqlParser.AUDIT_ADMIN - 593)) | (1 << (SqlParser.BACKUP_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ENCRYPTION_ADMIN - 593)) | (1 << (SqlParser.CLONE_ADMIN - 593)) | (1 << (SqlParser.CONNECTION_ADMIN - 593)) | (1 << (SqlParser.ENCRYPTION_KEY_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_USER - 593)) | (1 << (SqlParser.GROUP_REPLICATION_ADMIN - 593)) | (1 << (SqlParser.INNODB_REDO_LOG_ARCHIVE - 593)) | (1 << (SqlParser.NDB_STORED_USER - 593)) | (1 << (SqlParser.PERSIST_RO_VARIABLES_ADMIN - 593)))) !== 0) || ((((_la - 625)) & ~0x1f) == 0 && ((1 << (_la - 625)) & ((1 << (SqlParser.REPLICATION_APPLIER - 625)) | (1 << (SqlParser.REPLICATION_SLAVE_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_USER - 625)) | (1 << (SqlParser.ROLE_ADMIN - 625)) | (1 << (SqlParser.SESSION_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.SET_USER_ID - 625)) | (1 << (SqlParser.SHOW_ROUTINE - 625)) | (1 << (SqlParser.SYSTEM_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.TABLE_ENCRYPTION_ADMIN - 625)) | (1 << (SqlParser.VERSION_TOKEN_ADMIN - 625)) | (1 << (SqlParser.XA_RECOVER_ADMIN - 625)) | (1 << (SqlParser.ARMSCII8 - 625)) | (1 << (SqlParser.ASCII - 625)) | (1 << (SqlParser.BIG5 - 625)) | (1 << (SqlParser.CP1250 - 625)) | (1 << (SqlParser.CP1251 - 625)) | (1 << (SqlParser.CP1256 - 625)) | (1 << (SqlParser.CP1257 - 625)) | (1 << (SqlParser.CP850 - 625)) | (1 << (SqlParser.CP852 - 625)) | (1 << (SqlParser.CP866 - 625)) | (1 << (SqlParser.CP932 - 625)) | (1 << (SqlParser.DEC8 - 625)) | (1 << (SqlParser.EUCJPMS - 625)) | (1 << (SqlParser.EUCKR - 625)) | (1 << (SqlParser.GB2312 - 625)) | (1 << (SqlParser.GBK - 625)) | (1 << (SqlParser.GEOSTD8 - 625)) | (1 << (SqlParser.GREEK - 625)) | (1 << (SqlParser.HEBREW - 625)) | (1 << (SqlParser.HP8 - 625)))) !== 0) || ((((_la - 657)) & ~0x1f) == 0 && ((1 << (_la - 657)) & ((1 << (SqlParser.KEYBCS2 - 657)) | (1 << (SqlParser.KOI8R - 657)) | (1 << (SqlParser.KOI8U - 657)) | (1 << (SqlParser.LATIN1 - 657)) | (1 << (SqlParser.LATIN2 - 657)) | (1 << (SqlParser.LATIN5 - 657)) | (1 << (SqlParser.LATIN7 - 657)) | (1 << (SqlParser.MACCE - 657)) | (1 << (SqlParser.MACROMAN - 657)) | (1 << (SqlParser.SJIS - 657)) | (1 << (SqlParser.SWE7 - 657)) | (1 << (SqlParser.TIS620 - 657)) | (1 << (SqlParser.UCS2 - 657)) | (1 << (SqlParser.UJIS - 657)) | (1 << (SqlParser.UTF16 - 657)) | (1 << (SqlParser.UTF16LE - 657)) | (1 << (SqlParser.UTF32 - 657)) | (1 << (SqlParser.UTF8 - 657)) | (1 << (SqlParser.UTF8MB3 - 657)) | (1 << (SqlParser.UTF8MB4 - 657)) | (1 << (SqlParser.ARCHIVE - 657)) | (1 << (SqlParser.BLACKHOLE - 657)) | (1 << (SqlParser.CSV - 657)) | (1 << (SqlParser.FEDERATED - 657)) | (1 << (SqlParser.INNODB - 657)) | (1 << (SqlParser.MEMORY - 657)) | (1 << (SqlParser.MRG_MYISAM - 657)) | (1 << (SqlParser.MYISAM - 657)) | (1 << (SqlParser.NDB - 657)) | (1 << (SqlParser.NDBCLUSTER - 657)) | (1 << (SqlParser.PERFORMANCE_SCHEMA - 657)) | (1 << (SqlParser.TOKUDB - 657)))) !== 0) || ((((_la - 689)) & ~0x1f) == 0 && ((1 << (_la - 689)) & ((1 << (SqlParser.REPEATABLE - 689)) | (1 << (SqlParser.COMMITTED - 689)) | (1 << (SqlParser.UNCOMMITTED - 689)) | (1 << (SqlParser.SERIALIZABLE - 689)) | (1 << (SqlParser.GEOMETRYCOLLECTION - 689)) | (1 << (SqlParser.LINESTRING - 689)) | (1 << (SqlParser.MULTILINESTRING - 689)) | (1 << (SqlParser.MULTIPOINT - 689)) | (1 << (SqlParser.MULTIPOLYGON - 689)) | (1 << (SqlParser.POINT - 689)) | (1 << (SqlParser.POLYGON - 689)) | (1 << (SqlParser.ABS - 689)) | (1 << (SqlParser.ACOS - 689)) | (1 << (SqlParser.ADDDATE - 689)) | (1 << (SqlParser.ADDTIME - 689)) | (1 << (SqlParser.AES_DECRYPT - 689)) | (1 << (SqlParser.AES_ENCRYPT - 689)) | (1 << (SqlParser.AREA - 689)) | (1 << (SqlParser.ASBINARY - 689)) | (1 << (SqlParser.ASIN - 689)) | (1 << (SqlParser.ASTEXT - 689)) | (1 << (SqlParser.ASWKB - 689)) | (1 << (SqlParser.ASWKT - 689)) | (1 << (SqlParser.ASYMMETRIC_DECRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_DERIVE - 689)) | (1 << (SqlParser.ASYMMETRIC_ENCRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_SIGN - 689)) | (1 << (SqlParser.ASYMMETRIC_VERIFY - 689)) | (1 << (SqlParser.ATAN - 689)) | (1 << (SqlParser.ATAN2 - 689)))) !== 0) || ((((_la - 721)) & ~0x1f) == 0 && ((1 << (_la - 721)) & ((1 << (SqlParser.BENCHMARK - 721)) | (1 << (SqlParser.BIN - 721)) | (1 << (SqlParser.BIT_COUNT - 721)) | (1 << (SqlParser.BIT_LENGTH - 721)) | (1 << (SqlParser.BUFFER - 721)) | (1 << (SqlParser.CATALOG_NAME - 721)) | (1 << (SqlParser.CEIL - 721)) | (1 << (SqlParser.CEILING - 721)) | (1 << (SqlParser.CENTROID - 721)) | (1 << (SqlParser.CHARACTER_LENGTH - 721)) | (1 << (SqlParser.CHARSET - 721)) | (1 << (SqlParser.CHAR_LENGTH - 721)) | (1 << (SqlParser.COERCIBILITY - 721)) | (1 << (SqlParser.COLLATION - 721)) | (1 << (SqlParser.COMPRESS - 721)) | (1 << (SqlParser.CONCAT - 721)) | (1 << (SqlParser.CONCAT_WS - 721)) | (1 << (SqlParser.CONNECTION_ID - 721)) | (1 << (SqlParser.CONV - 721)) | (1 << (SqlParser.CONVERT_TZ - 721)) | (1 << (SqlParser.COS - 721)) | (1 << (SqlParser.COT - 721)) | (1 << (SqlParser.CRC32 - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PRIV_KEY - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PUB_KEY - 721)) | (1 << (SqlParser.CREATE_DH_PARAMETERS - 721)) | (1 << (SqlParser.CREATE_DIGEST - 721)) | (1 << (SqlParser.CROSSES - 721)) | (1 << (SqlParser.DATEDIFF - 721)) | (1 << (SqlParser.DATE_FORMAT - 721)) | (1 << (SqlParser.DAYNAME - 721)) | (1 << (SqlParser.DAYOFMONTH - 721)))) !== 0) || ((((_la - 753)) & ~0x1f) == 0 && ((1 << (_la - 753)) & ((1 << (SqlParser.DAYOFWEEK - 753)) | (1 << (SqlParser.DAYOFYEAR - 753)) | (1 << (SqlParser.DECODE - 753)) | (1 << (SqlParser.DEGREES - 753)) | (1 << (SqlParser.DES_DECRYPT - 753)) | (1 << (SqlParser.DES_ENCRYPT - 753)) | (1 << (SqlParser.DIMENSION - 753)) | (1 << (SqlParser.DISJOINT - 753)) | (1 << (SqlParser.ELT - 753)) | (1 << (SqlParser.ENCODE - 753)) | (1 << (SqlParser.ENCRYPT - 753)) | (1 << (SqlParser.ENDPOINT - 753)) | (1 << (SqlParser.ENVELOPE - 753)) | (1 << (SqlParser.EQUALS - 753)) | (1 << (SqlParser.EXP - 753)) | (1 << (SqlParser.EXPORT_SET - 753)) | (1 << (SqlParser.EXTERIORRING - 753)) | (1 << (SqlParser.EXTRACTVALUE - 753)) | (1 << (SqlParser.FIELD - 753)) | (1 << (SqlParser.FIND_IN_SET - 753)) | (1 << (SqlParser.FLOOR - 753)) | (1 << (SqlParser.FORMAT - 753)) | (1 << (SqlParser.FOUND_ROWS - 753)) | (1 << (SqlParser.FROM_BASE64 - 753)) | (1 << (SqlParser.FROM_DAYS - 753)) | (1 << (SqlParser.FROM_UNIXTIME - 753)) | (1 << (SqlParser.GEOMCOLLFROMTEXT - 753)) | (1 << (SqlParser.GEOMCOLLFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYFROMWKB - 753)))) !== 0) || ((((_la - 785)) & ~0x1f) == 0 && ((1 << (_la - 785)) & ((1 << (SqlParser.GEOMETRYN - 785)) | (1 << (SqlParser.GEOMETRYTYPE - 785)) | (1 << (SqlParser.GEOMFROMTEXT - 785)) | (1 << (SqlParser.GEOMFROMWKB - 785)) | (1 << (SqlParser.GET_FORMAT - 785)) | (1 << (SqlParser.GET_LOCK - 785)) | (1 << (SqlParser.GLENGTH - 785)) | (1 << (SqlParser.GREATEST - 785)) | (1 << (SqlParser.GTID_SUBSET - 785)) | (1 << (SqlParser.GTID_SUBTRACT - 785)) | (1 << (SqlParser.HEX - 785)) | (1 << (SqlParser.IFNULL - 785)) | (1 << (SqlParser.INET6_ATON - 785)) | (1 << (SqlParser.INET6_NTOA - 785)) | (1 << (SqlParser.INET_ATON - 785)) | (1 << (SqlParser.INET_NTOA - 785)) | (1 << (SqlParser.INSTR - 785)) | (1 << (SqlParser.INTERIORRINGN - 785)) | (1 << (SqlParser.INTERSECTS - 785)) | (1 << (SqlParser.ISCLOSED - 785)) | (1 << (SqlParser.ISEMPTY - 785)) | (1 << (SqlParser.ISNULL - 785)) | (1 << (SqlParser.ISSIMPLE - 785)) | (1 << (SqlParser.IS_FREE_LOCK - 785)) | (1 << (SqlParser.IS_IPV4 - 785)) | (1 << (SqlParser.IS_IPV4_COMPAT - 785)) | (1 << (SqlParser.IS_IPV4_MAPPED - 785)) | (1 << (SqlParser.IS_IPV6 - 785)) | (1 << (SqlParser.IS_USED_LOCK - 785)) | (1 << (SqlParser.LAST_INSERT_ID - 785)) | (1 << (SqlParser.LCASE - 785)) | (1 << (SqlParser.LEAST - 785)))) !== 0) || ((((_la - 817)) & ~0x1f) == 0 && ((1 << (_la - 817)) & ((1 << (SqlParser.LENGTH - 817)) | (1 << (SqlParser.LINEFROMTEXT - 817)) | (1 << (SqlParser.LINEFROMWKB - 817)) | (1 << (SqlParser.LINESTRINGFROMTEXT - 817)) | (1 << (SqlParser.LINESTRINGFROMWKB - 817)) | (1 << (SqlParser.LN - 817)) | (1 << (SqlParser.LOAD_FILE - 817)) | (1 << (SqlParser.LOCATE - 817)) | (1 << (SqlParser.LOG - 817)) | (1 << (SqlParser.LOG10 - 817)) | (1 << (SqlParser.LOG2 - 817)) | (1 << (SqlParser.LOWER - 817)) | (1 << (SqlParser.LPAD - 817)) | (1 << (SqlParser.LTRIM - 817)) | (1 << (SqlParser.MAKEDATE - 817)) | (1 << (SqlParser.MAKETIME - 817)) | (1 << (SqlParser.MAKE_SET - 817)) | (1 << (SqlParser.MASTER_POS_WAIT - 817)) | (1 << (SqlParser.MBRCONTAINS - 817)) | (1 << (SqlParser.MBRDISJOINT - 817)) | (1 << (SqlParser.MBREQUAL - 817)) | (1 << (SqlParser.MBRINTERSECTS - 817)) | (1 << (SqlParser.MBROVERLAPS - 817)) | (1 << (SqlParser.MBRTOUCHES - 817)) | (1 << (SqlParser.MBRWITHIN - 817)) | (1 << (SqlParser.MD5 - 817)) | (1 << (SqlParser.MLINEFROMTEXT - 817)) | (1 << (SqlParser.MLINEFROMWKB - 817)) | (1 << (SqlParser.MONTHNAME - 817)) | (1 << (SqlParser.MPOINTFROMTEXT - 817)) | (1 << (SqlParser.MPOINTFROMWKB - 817)) | (1 << (SqlParser.MPOLYFROMTEXT - 817)))) !== 0) || ((((_la - 849)) & ~0x1f) == 0 && ((1 << (_la - 849)) & ((1 << (SqlParser.MPOLYFROMWKB - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMTEXT - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMWKB - 849)) | (1 << (SqlParser.MULTIPOINTFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOINTFROMWKB - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMWKB - 849)) | (1 << (SqlParser.NAME_CONST - 849)) | (1 << (SqlParser.NULLIF - 849)) | (1 << (SqlParser.NUMGEOMETRIES - 849)) | (1 << (SqlParser.NUMINTERIORRINGS - 849)) | (1 << (SqlParser.NUMPOINTS - 849)) | (1 << (SqlParser.OCT - 849)) | (1 << (SqlParser.OCTET_LENGTH - 849)) | (1 << (SqlParser.ORD - 849)) | (1 << (SqlParser.OVERLAPS - 849)) | (1 << (SqlParser.PERIOD_ADD - 849)) | (1 << (SqlParser.PERIOD_DIFF - 849)) | (1 << (SqlParser.PI - 849)) | (1 << (SqlParser.POINTFROMTEXT - 849)) | (1 << (SqlParser.POINTFROMWKB - 849)) | (1 << (SqlParser.POINTN - 849)) | (1 << (SqlParser.POLYFROMTEXT - 849)) | (1 << (SqlParser.POLYFROMWKB - 849)) | (1 << (SqlParser.POLYGONFROMTEXT - 849)) | (1 << (SqlParser.POLYGONFROMWKB - 849)) | (1 << (SqlParser.POW - 849)) | (1 << (SqlParser.POWER - 849)) | (1 << (SqlParser.QUOTE - 849)) | (1 << (SqlParser.RADIANS - 849)) | (1 << (SqlParser.RAND - 849)) | (1 << (SqlParser.RANDOM_BYTES - 849)))) !== 0) || ((((_la - 881)) & ~0x1f) == 0 && ((1 << (_la - 881)) & ((1 << (SqlParser.RELEASE_LOCK - 881)) | (1 << (SqlParser.REVERSE - 881)) | (1 << (SqlParser.ROUND - 881)) | (1 << (SqlParser.ROW_COUNT - 881)) | (1 << (SqlParser.RPAD - 881)) | (1 << (SqlParser.RTRIM - 881)) | (1 << (SqlParser.SEC_TO_TIME - 881)) | (1 << (SqlParser.SESSION_USER - 881)) | (1 << (SqlParser.SHA - 881)) | (1 << (SqlParser.SHA1 - 881)) | (1 << (SqlParser.SHA2 - 881)) | (1 << (SqlParser.SCHEMA_NAME - 881)) | (1 << (SqlParser.SIGN - 881)) | (1 << (SqlParser.SIN - 881)) | (1 << (SqlParser.SLEEP - 881)) | (1 << (SqlParser.SOUNDEX - 881)) | (1 << (SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS - 881)) | (1 << (SqlParser.SQRT - 881)) | (1 << (SqlParser.SRID - 881)) | (1 << (SqlParser.STARTPOINT - 881)) | (1 << (SqlParser.STRCMP - 881)) | (1 << (SqlParser.STR_TO_DATE - 881)) | (1 << (SqlParser.ST_AREA - 881)) | (1 << (SqlParser.ST_ASBINARY - 881)) | (1 << (SqlParser.ST_ASTEXT - 881)) | (1 << (SqlParser.ST_ASWKB - 881)) | (1 << (SqlParser.ST_ASWKT - 881)) | (1 << (SqlParser.ST_BUFFER - 881)) | (1 << (SqlParser.ST_CENTROID - 881)) | (1 << (SqlParser.ST_CONTAINS - 881)) | (1 << (SqlParser.ST_CROSSES - 881)) | (1 << (SqlParser.ST_DIFFERENCE - 881)))) !== 0) || ((((_la - 913)) & ~0x1f) == 0 && ((1 << (_la - 913)) & ((1 << (SqlParser.ST_DIMENSION - 913)) | (1 << (SqlParser.ST_DISJOINT - 913)) | (1 << (SqlParser.ST_DISTANCE - 913)) | (1 << (SqlParser.ST_ENDPOINT - 913)) | (1 << (SqlParser.ST_ENVELOPE - 913)) | (1 << (SqlParser.ST_EQUALS - 913)) | (1 << (SqlParser.ST_EXTERIORRING - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYN - 913)) | (1 << (SqlParser.ST_GEOMETRYTYPE - 913)) | (1 << (SqlParser.ST_GEOMFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMFROMWKB - 913)) | (1 << (SqlParser.ST_INTERIORRINGN - 913)) | (1 << (SqlParser.ST_INTERSECTION - 913)) | (1 << (SqlParser.ST_INTERSECTS - 913)) | (1 << (SqlParser.ST_ISCLOSED - 913)) | (1 << (SqlParser.ST_ISEMPTY - 913)) | (1 << (SqlParser.ST_ISSIMPLE - 913)) | (1 << (SqlParser.ST_LINEFROMTEXT - 913)) | (1 << (SqlParser.ST_LINEFROMWKB - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMTEXT - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMWKB - 913)) | (1 << (SqlParser.ST_NUMGEOMETRIES - 913)) | (1 << (SqlParser.ST_NUMINTERIORRING - 913)) | (1 << (SqlParser.ST_NUMINTERIORRINGS - 913)) | (1 << (SqlParser.ST_NUMPOINTS - 913)))) !== 0) || ((((_la - 945)) & ~0x1f) == 0 && ((1 << (_la - 945)) & ((1 << (SqlParser.ST_OVERLAPS - 945)) | (1 << (SqlParser.ST_POINTFROMTEXT - 945)) | (1 << (SqlParser.ST_POINTFROMWKB - 945)) | (1 << (SqlParser.ST_POINTN - 945)) | (1 << (SqlParser.ST_POLYFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYFROMWKB - 945)) | (1 << (SqlParser.ST_POLYGONFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYGONFROMWKB - 945)) | (1 << (SqlParser.ST_SRID - 945)) | (1 << (SqlParser.ST_STARTPOINT - 945)) | (1 << (SqlParser.ST_SYMDIFFERENCE - 945)) | (1 << (SqlParser.ST_TOUCHES - 945)) | (1 << (SqlParser.ST_UNION - 945)) | (1 << (SqlParser.ST_WITHIN - 945)) | (1 << (SqlParser.ST_X - 945)) | (1 << (SqlParser.ST_Y - 945)) | (1 << (SqlParser.SUBDATE - 945)) | (1 << (SqlParser.SUBSTRING_INDEX - 945)) | (1 << (SqlParser.SUBTIME - 945)) | (1 << (SqlParser.SYSTEM_USER - 945)) | (1 << (SqlParser.TAN - 945)) | (1 << (SqlParser.TIMEDIFF - 945)) | (1 << (SqlParser.TIMESTAMPADD - 945)) | (1 << (SqlParser.TIMESTAMPDIFF - 945)) | (1 << (SqlParser.TIME_FORMAT - 945)) | (1 << (SqlParser.TIME_TO_SEC - 945)) | (1 << (SqlParser.TOUCHES - 945)) | (1 << (SqlParser.TO_BASE64 - 945)) | (1 << (SqlParser.TO_DAYS - 945)) | (1 << (SqlParser.TO_SECONDS - 945)) | (1 << (SqlParser.UCASE - 945)) | (1 << (SqlParser.UNCOMPRESS - 945)))) !== 0) || ((((_la - 977)) & ~0x1f) == 0 && ((1 << (_la - 977)) & ((1 << (SqlParser.UNCOMPRESSED_LENGTH - 977)) | (1 << (SqlParser.UNHEX - 977)) | (1 << (SqlParser.UNIX_TIMESTAMP - 977)) | (1 << (SqlParser.UPDATEXML - 977)) | (1 << (SqlParser.UPPER - 977)) | (1 << (SqlParser.UUID - 977)) | (1 << (SqlParser.UUID_SHORT - 977)) | (1 << (SqlParser.VALIDATE_PASSWORD_STRENGTH - 977)) | (1 << (SqlParser.VERSION - 977)) | (1 << (SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS - 977)) | (1 << (SqlParser.WEEKDAY - 977)) | (1 << (SqlParser.WEEKOFYEAR - 977)) | (1 << (SqlParser.WEIGHT_STRING - 977)) | (1 << (SqlParser.WITHIN - 977)) | (1 << (SqlParser.YEARWEEK - 977)) | (1 << (SqlParser.Y_FUNCTION - 977)) | (1 << (SqlParser.X_FUNCTION - 977)))) !== 0) || ((((_la - 1032)) & ~0x1f) == 0 && ((1 << (_la - 1032)) & ((1 << (SqlParser.CHARSET_REVERSE_QOUTE_STRING - 1032)) | (1 << (SqlParser.STRING_LITERAL - 1032)) | (1 << (SqlParser.ID - 1032)) | (1 << (SqlParser.REVERSE_QUOTE_ID - 1032)))) !== 0)) {
+ this.state = 3234;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.AS) {
+ this.state = 3233;
+ this.match(SqlParser.AS);
+ }
+
+ this.state = 3236;
+ this.uid();
+ }
+
+ this.state = 3239;
+ this.match(SqlParser.SET);
+ this.state = 3240;
+ this.updatedElement();
+ this.state = 3245;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 3241;
+ this.match(SqlParser.COMMA);
+ this.state = 3242;
+ this.updatedElement();
+ this.state = 3247;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 3250;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.WHERE) {
+ this.state = 3248;
+ this.match(SqlParser.WHERE);
+ this.state = 3249;
+ this.expression(0);
+ }
+
+ this.state = 3253;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.ORDER) {
+ this.state = 3252;
+ this.orderByClause();
+ }
+
+ this.state = 3256;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.LIMIT) {
+ this.state = 3255;
+ this.limitClause();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function MultipleUpdateStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_multipleUpdateStatement;
+ this.priority = null; // Token
+ return this;
+}
+
+MultipleUpdateStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+MultipleUpdateStatementContext.prototype.constructor = MultipleUpdateStatementContext;
+
+MultipleUpdateStatementContext.prototype.UPDATE = function() {
+ return this.getToken(SqlParser.UPDATE, 0);
+};
+
+MultipleUpdateStatementContext.prototype.tableSources = function() {
+ return this.getTypedRuleContext(TableSourcesContext,0);
+};
+
+MultipleUpdateStatementContext.prototype.SET = function() {
+ return this.getToken(SqlParser.SET, 0);
+};
+
+MultipleUpdateStatementContext.prototype.updatedElement = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UpdatedElementContext);
+ } else {
+ return this.getTypedRuleContext(UpdatedElementContext,i);
+ }
+};
+
+MultipleUpdateStatementContext.prototype.IGNORE = function() {
+ return this.getToken(SqlParser.IGNORE, 0);
+};
+
+MultipleUpdateStatementContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+MultipleUpdateStatementContext.prototype.WHERE = function() {
+ return this.getToken(SqlParser.WHERE, 0);
+};
+
+MultipleUpdateStatementContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+MultipleUpdateStatementContext.prototype.LOW_PRIORITY = function() {
+ return this.getToken(SqlParser.LOW_PRIORITY, 0);
+};
+
+MultipleUpdateStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterMultipleUpdateStatement(this);
+ }
+};
+
+MultipleUpdateStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitMultipleUpdateStatement(this);
+ }
+};
+
+MultipleUpdateStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitMultipleUpdateStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.MultipleUpdateStatementContext = MultipleUpdateStatementContext;
+
+SqlParser.prototype.multipleUpdateStatement = function() {
+
+ var localctx = new MultipleUpdateStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 206, SqlParser.RULE_multipleUpdateStatement);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3258;
+ this.match(SqlParser.UPDATE);
+ this.state = 3260;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.LOW_PRIORITY) {
+ this.state = 3259;
+ localctx.priority = this.match(SqlParser.LOW_PRIORITY);
+ }
+
+ this.state = 3263;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.IGNORE) {
+ this.state = 3262;
+ this.match(SqlParser.IGNORE);
+ }
+
+ this.state = 3265;
+ this.tableSources();
+ this.state = 3266;
+ this.match(SqlParser.SET);
+ this.state = 3267;
+ this.updatedElement();
+ this.state = 3272;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 3268;
+ this.match(SqlParser.COMMA);
+ this.state = 3269;
+ this.updatedElement();
+ this.state = 3274;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 3277;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.WHERE) {
+ this.state = 3275;
+ this.match(SqlParser.WHERE);
+ this.state = 3276;
+ this.expression(0);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function OrderByClauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_orderByClause;
+ return this;
+}
+
+OrderByClauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+OrderByClauseContext.prototype.constructor = OrderByClauseContext;
+
+OrderByClauseContext.prototype.ORDER = function() {
+ return this.getToken(SqlParser.ORDER, 0);
+};
+
+OrderByClauseContext.prototype.BY = function() {
+ return this.getToken(SqlParser.BY, 0);
+};
+
+OrderByClauseContext.prototype.orderByExpression = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(OrderByExpressionContext);
+ } else {
+ return this.getTypedRuleContext(OrderByExpressionContext,i);
+ }
+};
+
+OrderByClauseContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+OrderByClauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterOrderByClause(this);
+ }
+};
+
+OrderByClauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitOrderByClause(this);
+ }
+};
+
+OrderByClauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitOrderByClause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.OrderByClauseContext = OrderByClauseContext;
+
+SqlParser.prototype.orderByClause = function() {
+
+ var localctx = new OrderByClauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 208, SqlParser.RULE_orderByClause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3279;
+ this.match(SqlParser.ORDER);
+ this.state = 3280;
+ this.match(SqlParser.BY);
+ this.state = 3281;
+ this.orderByExpression();
+ this.state = 3286;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 3282;
+ this.match(SqlParser.COMMA);
+ this.state = 3283;
+ this.orderByExpression();
+ this.state = 3288;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function OrderByExpressionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_orderByExpression;
+ this.order = null; // Token
+ return this;
+}
+
+OrderByExpressionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+OrderByExpressionContext.prototype.constructor = OrderByExpressionContext;
+
+OrderByExpressionContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+OrderByExpressionContext.prototype.ASC = function() {
+ return this.getToken(SqlParser.ASC, 0);
+};
+
+OrderByExpressionContext.prototype.DESC = function() {
+ return this.getToken(SqlParser.DESC, 0);
+};
+
+OrderByExpressionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterOrderByExpression(this);
+ }
+};
+
+OrderByExpressionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitOrderByExpression(this);
+ }
+};
+
+OrderByExpressionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitOrderByExpression(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.OrderByExpressionContext = OrderByExpressionContext;
+
+SqlParser.prototype.orderByExpression = function() {
+
+ var localctx = new OrderByExpressionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 210, SqlParser.RULE_orderByExpression);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3289;
+ this.expression(0);
+ this.state = 3291;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,461,this._ctx);
+ if(la_===1) {
+ this.state = 3290;
+ localctx.order = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.ASC || _la===SqlParser.DESC)) {
+ localctx.order = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function TableSourcesContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_tableSources;
+ return this;
+}
+
+TableSourcesContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+TableSourcesContext.prototype.constructor = TableSourcesContext;
+
+TableSourcesContext.prototype.tableSource = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(TableSourceContext);
+ } else {
+ return this.getTypedRuleContext(TableSourceContext,i);
+ }
+};
+
+TableSourcesContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+TableSourcesContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterTableSources(this);
+ }
+};
+
+TableSourcesContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitTableSources(this);
+ }
+};
+
+TableSourcesContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitTableSources(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.TableSourcesContext = TableSourcesContext;
+
+SqlParser.prototype.tableSources = function() {
+
+ var localctx = new TableSourcesContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 212, SqlParser.RULE_tableSources);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3293;
+ this.tableSource();
+ this.state = 3298;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 3294;
+ this.match(SqlParser.COMMA);
+ this.state = 3295;
+ this.tableSource();
+ this.state = 3300;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function TableSourceContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_tableSource;
+ return this;
+}
+
+TableSourceContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+TableSourceContext.prototype.constructor = TableSourceContext;
+
+
+
+TableSourceContext.prototype.copyFrom = function(ctx) {
+ antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx);
+};
+
+
+function TableSourceNestedContext(parser, ctx) {
+ TableSourceContext.call(this, parser);
+ TableSourceContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+TableSourceNestedContext.prototype = Object.create(TableSourceContext.prototype);
+TableSourceNestedContext.prototype.constructor = TableSourceNestedContext;
+
+SqlParser.TableSourceNestedContext = TableSourceNestedContext;
+
+TableSourceNestedContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+TableSourceNestedContext.prototype.tableSourceItem = function() {
+ return this.getTypedRuleContext(TableSourceItemContext,0);
+};
+
+TableSourceNestedContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+TableSourceNestedContext.prototype.joinPart = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(JoinPartContext);
+ } else {
+ return this.getTypedRuleContext(JoinPartContext,i);
+ }
+};
+TableSourceNestedContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterTableSourceNested(this);
+ }
+};
+
+TableSourceNestedContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitTableSourceNested(this);
+ }
+};
+
+TableSourceNestedContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitTableSourceNested(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function TableSourceBaseContext(parser, ctx) {
+ TableSourceContext.call(this, parser);
+ TableSourceContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+TableSourceBaseContext.prototype = Object.create(TableSourceContext.prototype);
+TableSourceBaseContext.prototype.constructor = TableSourceBaseContext;
+
+SqlParser.TableSourceBaseContext = TableSourceBaseContext;
+
+TableSourceBaseContext.prototype.tableSourceItem = function() {
+ return this.getTypedRuleContext(TableSourceItemContext,0);
+};
+
+TableSourceBaseContext.prototype.joinPart = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(JoinPartContext);
+ } else {
+ return this.getTypedRuleContext(JoinPartContext,i);
+ }
+};
+TableSourceBaseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterTableSourceBase(this);
+ }
+};
+
+TableSourceBaseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitTableSourceBase(this);
+ }
+};
+
+TableSourceBaseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitTableSourceBase(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+SqlParser.TableSourceContext = TableSourceContext;
+
+SqlParser.prototype.tableSource = function() {
+
+ var localctx = new TableSourceContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 214, SqlParser.RULE_tableSource);
+ var _la = 0; // Token type
+ try {
+ this.state = 3318;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,465,this._ctx);
+ switch(la_) {
+ case 1:
+ localctx = new TableSourceBaseContext(this, localctx);
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3301;
+ this.tableSourceItem();
+ this.state = 3305;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,463,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 3302;
+ this.joinPart();
+ }
+ this.state = 3307;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,463,this._ctx);
+ }
+
+ break;
+
+ case 2:
+ localctx = new TableSourceNestedContext(this, localctx);
+ this.enterOuterAlt(localctx, 2);
+ this.state = 3308;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 3309;
+ this.tableSourceItem();
+ this.state = 3313;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.CROSS || ((((_la - 74)) & ~0x1f) == 0 && ((1 << (_la - 74)) & ((1 << (SqlParser.INNER - 74)) | (1 << (SqlParser.JOIN - 74)) | (1 << (SqlParser.LEFT - 74)) | (1 << (SqlParser.NATURAL - 74)))) !== 0) || _la===SqlParser.RIGHT || _la===SqlParser.STRAIGHT_JOIN) {
+ this.state = 3310;
+ this.joinPart();
+ this.state = 3315;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 3316;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function TableSourceItemContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_tableSourceItem;
+ return this;
+}
+
+TableSourceItemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+TableSourceItemContext.prototype.constructor = TableSourceItemContext;
+
+
+
+TableSourceItemContext.prototype.copyFrom = function(ctx) {
+ antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx);
+};
+
+
+function SubqueryTableItemContext(parser, ctx) {
+ TableSourceItemContext.call(this, parser);
+ this.parenthesisSubquery = null; // SelectStatementContext;
+ this.alias = null; // UidContext;
+ TableSourceItemContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+SubqueryTableItemContext.prototype = Object.create(TableSourceItemContext.prototype);
+SubqueryTableItemContext.prototype.constructor = SubqueryTableItemContext;
+
+SqlParser.SubqueryTableItemContext = SubqueryTableItemContext;
+
+SubqueryTableItemContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+SubqueryTableItemContext.prototype.selectStatement = function() {
+ return this.getTypedRuleContext(SelectStatementContext,0);
+};
+
+SubqueryTableItemContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+SubqueryTableItemContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+SubqueryTableItemContext.prototype.AS = function() {
+ return this.getToken(SqlParser.AS, 0);
+};
+SubqueryTableItemContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSubqueryTableItem(this);
+ }
+};
+
+SubqueryTableItemContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSubqueryTableItem(this);
+ }
+};
+
+SubqueryTableItemContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSubqueryTableItem(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AtomTableItemContext(parser, ctx) {
+ TableSourceItemContext.call(this, parser);
+ this.alias = null; // UidContext;
+ TableSourceItemContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AtomTableItemContext.prototype = Object.create(TableSourceItemContext.prototype);
+AtomTableItemContext.prototype.constructor = AtomTableItemContext;
+
+SqlParser.AtomTableItemContext = AtomTableItemContext;
+
+AtomTableItemContext.prototype.tableName = function() {
+ return this.getTypedRuleContext(TableNameContext,0);
+};
+
+AtomTableItemContext.prototype.PARTITION = function() {
+ return this.getToken(SqlParser.PARTITION, 0);
+};
+
+AtomTableItemContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+AtomTableItemContext.prototype.uidList = function() {
+ return this.getTypedRuleContext(UidListContext,0);
+};
+
+AtomTableItemContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+AtomTableItemContext.prototype.indexHint = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(IndexHintContext);
+ } else {
+ return this.getTypedRuleContext(IndexHintContext,i);
+ }
+};
+
+AtomTableItemContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+AtomTableItemContext.prototype.AS = function() {
+ return this.getToken(SqlParser.AS, 0);
+};
+
+AtomTableItemContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+AtomTableItemContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAtomTableItem(this);
+ }
+};
+
+AtomTableItemContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAtomTableItem(this);
+ }
+};
+
+AtomTableItemContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAtomTableItem(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function TableSourcesItemContext(parser, ctx) {
+ TableSourceItemContext.call(this, parser);
+ TableSourceItemContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+TableSourcesItemContext.prototype = Object.create(TableSourceItemContext.prototype);
+TableSourcesItemContext.prototype.constructor = TableSourcesItemContext;
+
+SqlParser.TableSourcesItemContext = TableSourcesItemContext;
+
+TableSourcesItemContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+TableSourcesItemContext.prototype.tableSources = function() {
+ return this.getTypedRuleContext(TableSourcesContext,0);
+};
+
+TableSourcesItemContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+TableSourcesItemContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterTableSourcesItem(this);
+ }
+};
+
+TableSourcesItemContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitTableSourcesItem(this);
+ }
+};
+
+TableSourcesItemContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitTableSourcesItem(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+SqlParser.TableSourceItemContext = TableSourceItemContext;
+
+SqlParser.prototype.tableSourceItem = function() {
+
+ var localctx = new TableSourceItemContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 216, SqlParser.RULE_tableSourceItem);
+ var _la = 0; // Token type
+ try {
+ this.state = 3360;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,473,this._ctx);
+ switch(la_) {
+ case 1:
+ localctx = new AtomTableItemContext(this, localctx);
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3320;
+ this.tableName();
+ this.state = 3326;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.PARTITION) {
+ this.state = 3321;
+ this.match(SqlParser.PARTITION);
+ this.state = 3322;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 3323;
+ this.uidList();
+ this.state = 3324;
+ this.match(SqlParser.RR_BRACKET);
+ }
+
+ this.state = 3332;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,468,this._ctx);
+ if(la_===1) {
+ this.state = 3329;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.AS) {
+ this.state = 3328;
+ this.match(SqlParser.AS);
+ }
+
+ this.state = 3331;
+ localctx.alias = this.uid();
+
+ }
+ this.state = 3342;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,470,this._ctx);
+ if(la_===1) {
+ this.state = 3334;
+ this.indexHint();
+ this.state = 3339;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,469,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 3335;
+ this.match(SqlParser.COMMA);
+ this.state = 3336;
+ this.indexHint();
+ }
+ this.state = 3341;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,469,this._ctx);
+ }
+
+
+ }
+ break;
+
+ case 2:
+ localctx = new SubqueryTableItemContext(this, localctx);
+ this.enterOuterAlt(localctx, 2);
+ this.state = 3349;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,471,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 3344;
+ this.selectStatement();
+ break;
+
+ case 2:
+ this.state = 3345;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 3346;
+ localctx.parenthesisSubquery = this.selectStatement();
+ this.state = 3347;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+
+ }
+ this.state = 3352;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.AS) {
+ this.state = 3351;
+ this.match(SqlParser.AS);
+ }
+
+ this.state = 3354;
+ localctx.alias = this.uid();
+ break;
+
+ case 3:
+ localctx = new TableSourcesItemContext(this, localctx);
+ this.enterOuterAlt(localctx, 3);
+ this.state = 3356;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 3357;
+ this.tableSources();
+ this.state = 3358;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function IndexHintContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_indexHint;
+ this.indexHintAction = null; // Token
+ this.keyFormat = null; // Token
+ return this;
+}
+
+IndexHintContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+IndexHintContext.prototype.constructor = IndexHintContext;
+
+IndexHintContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+IndexHintContext.prototype.uidList = function() {
+ return this.getTypedRuleContext(UidListContext,0);
+};
+
+IndexHintContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+IndexHintContext.prototype.USE = function() {
+ return this.getToken(SqlParser.USE, 0);
+};
+
+IndexHintContext.prototype.IGNORE = function() {
+ return this.getToken(SqlParser.IGNORE, 0);
+};
+
+IndexHintContext.prototype.FORCE = function() {
+ return this.getToken(SqlParser.FORCE, 0);
+};
+
+IndexHintContext.prototype.INDEX = function() {
+ return this.getToken(SqlParser.INDEX, 0);
+};
+
+IndexHintContext.prototype.KEY = function() {
+ return this.getToken(SqlParser.KEY, 0);
+};
+
+IndexHintContext.prototype.FOR = function() {
+ return this.getToken(SqlParser.FOR, 0);
+};
+
+IndexHintContext.prototype.indexHintType = function() {
+ return this.getTypedRuleContext(IndexHintTypeContext,0);
+};
+
+IndexHintContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterIndexHint(this);
+ }
+};
+
+IndexHintContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitIndexHint(this);
+ }
+};
+
+IndexHintContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitIndexHint(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.IndexHintContext = IndexHintContext;
+
+SqlParser.prototype.indexHint = function() {
+
+ var localctx = new IndexHintContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 218, SqlParser.RULE_indexHint);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3362;
+ localctx.indexHintAction = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.FORCE || _la===SqlParser.IGNORE || _la===SqlParser.USE)) {
+ localctx.indexHintAction = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 3363;
+ localctx.keyFormat = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.INDEX || _la===SqlParser.KEY)) {
+ localctx.keyFormat = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 3366;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.FOR) {
+ this.state = 3364;
+ this.match(SqlParser.FOR);
+ this.state = 3365;
+ this.indexHintType();
+ }
+
+ this.state = 3368;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 3369;
+ this.uidList();
+ this.state = 3370;
+ this.match(SqlParser.RR_BRACKET);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function IndexHintTypeContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_indexHintType;
+ return this;
+}
+
+IndexHintTypeContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+IndexHintTypeContext.prototype.constructor = IndexHintTypeContext;
+
+IndexHintTypeContext.prototype.JOIN = function() {
+ return this.getToken(SqlParser.JOIN, 0);
+};
+
+IndexHintTypeContext.prototype.ORDER = function() {
+ return this.getToken(SqlParser.ORDER, 0);
+};
+
+IndexHintTypeContext.prototype.BY = function() {
+ return this.getToken(SqlParser.BY, 0);
+};
+
+IndexHintTypeContext.prototype.GROUP = function() {
+ return this.getToken(SqlParser.GROUP, 0);
+};
+
+IndexHintTypeContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterIndexHintType(this);
+ }
+};
+
+IndexHintTypeContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitIndexHintType(this);
+ }
+};
+
+IndexHintTypeContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitIndexHintType(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.IndexHintTypeContext = IndexHintTypeContext;
+
+SqlParser.prototype.indexHintType = function() {
+
+ var localctx = new IndexHintTypeContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 220, SqlParser.RULE_indexHintType);
+ try {
+ this.state = 3377;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.JOIN:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3372;
+ this.match(SqlParser.JOIN);
+ break;
+ case SqlParser.ORDER:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 3373;
+ this.match(SqlParser.ORDER);
+ this.state = 3374;
+ this.match(SqlParser.BY);
+ break;
+ case SqlParser.GROUP:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 3375;
+ this.match(SqlParser.GROUP);
+ this.state = 3376;
+ this.match(SqlParser.BY);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function JoinPartContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_joinPart;
+ return this;
+}
+
+JoinPartContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+JoinPartContext.prototype.constructor = JoinPartContext;
+
+
+
+JoinPartContext.prototype.copyFrom = function(ctx) {
+ antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx);
+};
+
+
+function InnerJoinContext(parser, ctx) {
+ JoinPartContext.call(this, parser);
+ JoinPartContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+InnerJoinContext.prototype = Object.create(JoinPartContext.prototype);
+InnerJoinContext.prototype.constructor = InnerJoinContext;
+
+SqlParser.InnerJoinContext = InnerJoinContext;
+
+InnerJoinContext.prototype.JOIN = function() {
+ return this.getToken(SqlParser.JOIN, 0);
+};
+
+InnerJoinContext.prototype.tableSourceItem = function() {
+ return this.getTypedRuleContext(TableSourceItemContext,0);
+};
+
+InnerJoinContext.prototype.ON = function() {
+ return this.getToken(SqlParser.ON, 0);
+};
+
+InnerJoinContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+InnerJoinContext.prototype.USING = function() {
+ return this.getToken(SqlParser.USING, 0);
+};
+
+InnerJoinContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+InnerJoinContext.prototype.uidList = function() {
+ return this.getTypedRuleContext(UidListContext,0);
+};
+
+InnerJoinContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+InnerJoinContext.prototype.INNER = function() {
+ return this.getToken(SqlParser.INNER, 0);
+};
+
+InnerJoinContext.prototype.CROSS = function() {
+ return this.getToken(SqlParser.CROSS, 0);
+};
+InnerJoinContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterInnerJoin(this);
+ }
+};
+
+InnerJoinContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitInnerJoin(this);
+ }
+};
+
+InnerJoinContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitInnerJoin(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function NaturalJoinContext(parser, ctx) {
+ JoinPartContext.call(this, parser);
+ JoinPartContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+NaturalJoinContext.prototype = Object.create(JoinPartContext.prototype);
+NaturalJoinContext.prototype.constructor = NaturalJoinContext;
+
+SqlParser.NaturalJoinContext = NaturalJoinContext;
+
+NaturalJoinContext.prototype.NATURAL = function() {
+ return this.getToken(SqlParser.NATURAL, 0);
+};
+
+NaturalJoinContext.prototype.JOIN = function() {
+ return this.getToken(SqlParser.JOIN, 0);
+};
+
+NaturalJoinContext.prototype.tableSourceItem = function() {
+ return this.getTypedRuleContext(TableSourceItemContext,0);
+};
+
+NaturalJoinContext.prototype.LEFT = function() {
+ return this.getToken(SqlParser.LEFT, 0);
+};
+
+NaturalJoinContext.prototype.RIGHT = function() {
+ return this.getToken(SqlParser.RIGHT, 0);
+};
+
+NaturalJoinContext.prototype.OUTER = function() {
+ return this.getToken(SqlParser.OUTER, 0);
+};
+NaturalJoinContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterNaturalJoin(this);
+ }
+};
+
+NaturalJoinContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitNaturalJoin(this);
+ }
+};
+
+NaturalJoinContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitNaturalJoin(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function OuterJoinContext(parser, ctx) {
+ JoinPartContext.call(this, parser);
+ JoinPartContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+OuterJoinContext.prototype = Object.create(JoinPartContext.prototype);
+OuterJoinContext.prototype.constructor = OuterJoinContext;
+
+SqlParser.OuterJoinContext = OuterJoinContext;
+
+OuterJoinContext.prototype.JOIN = function() {
+ return this.getToken(SqlParser.JOIN, 0);
+};
+
+OuterJoinContext.prototype.tableSourceItem = function() {
+ return this.getTypedRuleContext(TableSourceItemContext,0);
+};
+
+OuterJoinContext.prototype.LEFT = function() {
+ return this.getToken(SqlParser.LEFT, 0);
+};
+
+OuterJoinContext.prototype.RIGHT = function() {
+ return this.getToken(SqlParser.RIGHT, 0);
+};
+
+OuterJoinContext.prototype.ON = function() {
+ return this.getToken(SqlParser.ON, 0);
+};
+
+OuterJoinContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+OuterJoinContext.prototype.USING = function() {
+ return this.getToken(SqlParser.USING, 0);
+};
+
+OuterJoinContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+OuterJoinContext.prototype.uidList = function() {
+ return this.getTypedRuleContext(UidListContext,0);
+};
+
+OuterJoinContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+OuterJoinContext.prototype.OUTER = function() {
+ return this.getToken(SqlParser.OUTER, 0);
+};
+OuterJoinContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterOuterJoin(this);
+ }
+};
+
+OuterJoinContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitOuterJoin(this);
+ }
+};
+
+OuterJoinContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitOuterJoin(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function StraightJoinContext(parser, ctx) {
+ JoinPartContext.call(this, parser);
+ JoinPartContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+StraightJoinContext.prototype = Object.create(JoinPartContext.prototype);
+StraightJoinContext.prototype.constructor = StraightJoinContext;
+
+SqlParser.StraightJoinContext = StraightJoinContext;
+
+StraightJoinContext.prototype.STRAIGHT_JOIN = function() {
+ return this.getToken(SqlParser.STRAIGHT_JOIN, 0);
+};
+
+StraightJoinContext.prototype.tableSourceItem = function() {
+ return this.getTypedRuleContext(TableSourceItemContext,0);
+};
+
+StraightJoinContext.prototype.ON = function() {
+ return this.getToken(SqlParser.ON, 0);
+};
+
+StraightJoinContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+StraightJoinContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterStraightJoin(this);
+ }
+};
+
+StraightJoinContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitStraightJoin(this);
+ }
+};
+
+StraightJoinContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitStraightJoin(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+SqlParser.JoinPartContext = JoinPartContext;
+
+SqlParser.prototype.joinPart = function() {
+
+ var localctx = new JoinPartContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 222, SqlParser.RULE_joinPart);
+ var _la = 0; // Token type
+ try {
+ this.state = 3423;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.CROSS:
+ case SqlParser.INNER:
+ case SqlParser.JOIN:
+ localctx = new InnerJoinContext(this, localctx);
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3380;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.CROSS || _la===SqlParser.INNER) {
+ this.state = 3379;
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.CROSS || _la===SqlParser.INNER)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 3382;
+ this.match(SqlParser.JOIN);
+ this.state = 3383;
+ this.tableSourceItem();
+ this.state = 3391;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,477,this._ctx);
+ if(la_===1) {
+ this.state = 3384;
+ this.match(SqlParser.ON);
+ this.state = 3385;
+ this.expression(0);
+
+ } else if(la_===2) {
+ this.state = 3386;
+ this.match(SqlParser.USING);
+ this.state = 3387;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 3388;
+ this.uidList();
+ this.state = 3389;
+ this.match(SqlParser.RR_BRACKET);
+
+ }
+ break;
+ case SqlParser.STRAIGHT_JOIN:
+ localctx = new StraightJoinContext(this, localctx);
+ this.enterOuterAlt(localctx, 2);
+ this.state = 3393;
+ this.match(SqlParser.STRAIGHT_JOIN);
+ this.state = 3394;
+ this.tableSourceItem();
+ this.state = 3397;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,478,this._ctx);
+ if(la_===1) {
+ this.state = 3395;
+ this.match(SqlParser.ON);
+ this.state = 3396;
+ this.expression(0);
+
+ }
+ break;
+ case SqlParser.LEFT:
+ case SqlParser.RIGHT:
+ localctx = new OuterJoinContext(this, localctx);
+ this.enterOuterAlt(localctx, 3);
+ this.state = 3399;
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.LEFT || _la===SqlParser.RIGHT)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 3401;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.OUTER) {
+ this.state = 3400;
+ this.match(SqlParser.OUTER);
+ }
+
+ this.state = 3403;
+ this.match(SqlParser.JOIN);
+ this.state = 3404;
+ this.tableSourceItem();
+ this.state = 3412;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.ON:
+ this.state = 3405;
+ this.match(SqlParser.ON);
+ this.state = 3406;
+ this.expression(0);
+ break;
+ case SqlParser.USING:
+ this.state = 3407;
+ this.match(SqlParser.USING);
+ this.state = 3408;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 3409;
+ this.uidList();
+ this.state = 3410;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ break;
+ case SqlParser.NATURAL:
+ localctx = new NaturalJoinContext(this, localctx);
+ this.enterOuterAlt(localctx, 4);
+ this.state = 3414;
+ this.match(SqlParser.NATURAL);
+ this.state = 3419;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.LEFT || _la===SqlParser.RIGHT) {
+ this.state = 3415;
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.LEFT || _la===SqlParser.RIGHT)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 3417;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.OUTER) {
+ this.state = 3416;
+ this.match(SqlParser.OUTER);
+ }
+
+ }
+
+ this.state = 3421;
+ this.match(SqlParser.JOIN);
+ this.state = 3422;
+ this.tableSourceItem();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function QueryExpressionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_queryExpression;
+ return this;
+}
+
+QueryExpressionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+QueryExpressionContext.prototype.constructor = QueryExpressionContext;
+
+QueryExpressionContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+QueryExpressionContext.prototype.querySpecification = function() {
+ return this.getTypedRuleContext(QuerySpecificationContext,0);
+};
+
+QueryExpressionContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+QueryExpressionContext.prototype.queryExpression = function() {
+ return this.getTypedRuleContext(QueryExpressionContext,0);
+};
+
+QueryExpressionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterQueryExpression(this);
+ }
+};
+
+QueryExpressionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitQueryExpression(this);
+ }
+};
+
+QueryExpressionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitQueryExpression(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.QueryExpressionContext = QueryExpressionContext;
+
+SqlParser.prototype.queryExpression = function() {
+
+ var localctx = new QueryExpressionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 224, SqlParser.RULE_queryExpression);
+ try {
+ this.state = 3433;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,484,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3425;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 3426;
+ this.querySpecification();
+ this.state = 3427;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 3429;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 3430;
+ this.queryExpression();
+ this.state = 3431;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function QueryExpressionNointoContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_queryExpressionNointo;
+ return this;
+}
+
+QueryExpressionNointoContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+QueryExpressionNointoContext.prototype.constructor = QueryExpressionNointoContext;
+
+QueryExpressionNointoContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+QueryExpressionNointoContext.prototype.querySpecificationNointo = function() {
+ return this.getTypedRuleContext(QuerySpecificationNointoContext,0);
+};
+
+QueryExpressionNointoContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+QueryExpressionNointoContext.prototype.queryExpressionNointo = function() {
+ return this.getTypedRuleContext(QueryExpressionNointoContext,0);
+};
+
+QueryExpressionNointoContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterQueryExpressionNointo(this);
+ }
+};
+
+QueryExpressionNointoContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitQueryExpressionNointo(this);
+ }
+};
+
+QueryExpressionNointoContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitQueryExpressionNointo(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.QueryExpressionNointoContext = QueryExpressionNointoContext;
+
+SqlParser.prototype.queryExpressionNointo = function() {
+
+ var localctx = new QueryExpressionNointoContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 226, SqlParser.RULE_queryExpressionNointo);
+ try {
+ this.state = 3443;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,485,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3435;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 3436;
+ this.querySpecificationNointo();
+ this.state = 3437;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 3439;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 3440;
+ this.queryExpressionNointo();
+ this.state = 3441;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function QuerySpecificationContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_querySpecification;
+ return this;
+}
+
+QuerySpecificationContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+QuerySpecificationContext.prototype.constructor = QuerySpecificationContext;
+
+QuerySpecificationContext.prototype.SELECT = function() {
+ return this.getToken(SqlParser.SELECT, 0);
+};
+
+QuerySpecificationContext.prototype.selectElements = function() {
+ return this.getTypedRuleContext(SelectElementsContext,0);
+};
+
+QuerySpecificationContext.prototype.selectSpec = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(SelectSpecContext);
+ } else {
+ return this.getTypedRuleContext(SelectSpecContext,i);
+ }
+};
+
+QuerySpecificationContext.prototype.selectIntoExpression = function() {
+ return this.getTypedRuleContext(SelectIntoExpressionContext,0);
+};
+
+QuerySpecificationContext.prototype.fromClause = function() {
+ return this.getTypedRuleContext(FromClauseContext,0);
+};
+
+QuerySpecificationContext.prototype.orderByClause = function() {
+ return this.getTypedRuleContext(OrderByClauseContext,0);
+};
+
+QuerySpecificationContext.prototype.limitClause = function() {
+ return this.getTypedRuleContext(LimitClauseContext,0);
+};
+
+QuerySpecificationContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterQuerySpecification(this);
+ }
+};
+
+QuerySpecificationContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitQuerySpecification(this);
+ }
+};
+
+QuerySpecificationContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitQuerySpecification(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.QuerySpecificationContext = QuerySpecificationContext;
+
+SqlParser.prototype.querySpecification = function() {
+
+ var localctx = new QuerySpecificationContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 228, SqlParser.RULE_querySpecification);
+ var _la = 0; // Token type
+ try {
+ this.state = 3485;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,496,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3445;
+ this.match(SqlParser.SELECT);
+ this.state = 3449;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,486,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 3446;
+ this.selectSpec();
+ }
+ this.state = 3451;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,486,this._ctx);
+ }
+
+ this.state = 3452;
+ this.selectElements();
+ this.state = 3454;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.INTO) {
+ this.state = 3453;
+ this.selectIntoExpression();
+ }
+
+ this.state = 3457;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.FROM) {
+ this.state = 3456;
+ this.fromClause();
+ }
+
+ this.state = 3460;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,489,this._ctx);
+ if(la_===1) {
+ this.state = 3459;
+ this.orderByClause();
+
+ }
+ this.state = 3463;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,490,this._ctx);
+ if(la_===1) {
+ this.state = 3462;
+ this.limitClause();
+
+ }
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 3465;
+ this.match(SqlParser.SELECT);
+ this.state = 3469;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,491,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 3466;
+ this.selectSpec();
+ }
+ this.state = 3471;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,491,this._ctx);
+ }
+
+ this.state = 3472;
+ this.selectElements();
+ this.state = 3474;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.FROM) {
+ this.state = 3473;
+ this.fromClause();
+ }
+
+ this.state = 3477;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,493,this._ctx);
+ if(la_===1) {
+ this.state = 3476;
+ this.orderByClause();
+
+ }
+ this.state = 3480;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,494,this._ctx);
+ if(la_===1) {
+ this.state = 3479;
+ this.limitClause();
+
+ }
+ this.state = 3483;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.INTO) {
+ this.state = 3482;
+ this.selectIntoExpression();
+ }
+
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function QuerySpecificationNointoContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_querySpecificationNointo;
+ return this;
+}
+
+QuerySpecificationNointoContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+QuerySpecificationNointoContext.prototype.constructor = QuerySpecificationNointoContext;
+
+QuerySpecificationNointoContext.prototype.SELECT = function() {
+ return this.getToken(SqlParser.SELECT, 0);
+};
+
+QuerySpecificationNointoContext.prototype.selectElements = function() {
+ return this.getTypedRuleContext(SelectElementsContext,0);
+};
+
+QuerySpecificationNointoContext.prototype.selectSpec = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(SelectSpecContext);
+ } else {
+ return this.getTypedRuleContext(SelectSpecContext,i);
+ }
+};
+
+QuerySpecificationNointoContext.prototype.fromClause = function() {
+ return this.getTypedRuleContext(FromClauseContext,0);
+};
+
+QuerySpecificationNointoContext.prototype.orderByClause = function() {
+ return this.getTypedRuleContext(OrderByClauseContext,0);
+};
+
+QuerySpecificationNointoContext.prototype.limitClause = function() {
+ return this.getTypedRuleContext(LimitClauseContext,0);
+};
+
+QuerySpecificationNointoContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterQuerySpecificationNointo(this);
+ }
+};
+
+QuerySpecificationNointoContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitQuerySpecificationNointo(this);
+ }
+};
+
+QuerySpecificationNointoContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitQuerySpecificationNointo(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.QuerySpecificationNointoContext = QuerySpecificationNointoContext;
+
+SqlParser.prototype.querySpecificationNointo = function() {
+
+ var localctx = new QuerySpecificationNointoContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 230, SqlParser.RULE_querySpecificationNointo);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3487;
+ this.match(SqlParser.SELECT);
+ this.state = 3491;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,497,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 3488;
+ this.selectSpec();
+ }
+ this.state = 3493;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,497,this._ctx);
+ }
+
+ this.state = 3494;
+ this.selectElements();
+ this.state = 3496;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.FROM) {
+ this.state = 3495;
+ this.fromClause();
+ }
+
+ this.state = 3499;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,499,this._ctx);
+ if(la_===1) {
+ this.state = 3498;
+ this.orderByClause();
+
+ }
+ this.state = 3502;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,500,this._ctx);
+ if(la_===1) {
+ this.state = 3501;
+ this.limitClause();
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function UnionParenthesisContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_unionParenthesis;
+ this.unionType = null; // Token
+ return this;
+}
+
+UnionParenthesisContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+UnionParenthesisContext.prototype.constructor = UnionParenthesisContext;
+
+UnionParenthesisContext.prototype.UNION = function() {
+ return this.getToken(SqlParser.UNION, 0);
+};
+
+UnionParenthesisContext.prototype.queryExpressionNointo = function() {
+ return this.getTypedRuleContext(QueryExpressionNointoContext,0);
+};
+
+UnionParenthesisContext.prototype.ALL = function() {
+ return this.getToken(SqlParser.ALL, 0);
+};
+
+UnionParenthesisContext.prototype.DISTINCT = function() {
+ return this.getToken(SqlParser.DISTINCT, 0);
+};
+
+UnionParenthesisContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterUnionParenthesis(this);
+ }
+};
+
+UnionParenthesisContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitUnionParenthesis(this);
+ }
+};
+
+UnionParenthesisContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitUnionParenthesis(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.UnionParenthesisContext = UnionParenthesisContext;
+
+SqlParser.prototype.unionParenthesis = function() {
+
+ var localctx = new UnionParenthesisContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 232, SqlParser.RULE_unionParenthesis);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3504;
+ this.match(SqlParser.UNION);
+ this.state = 3506;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.ALL || _la===SqlParser.DISTINCT) {
+ this.state = 3505;
+ localctx.unionType = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.ALL || _la===SqlParser.DISTINCT)) {
+ localctx.unionType = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 3508;
+ this.queryExpressionNointo();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function UnionStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_unionStatement;
+ this.unionType = null; // Token
+ return this;
+}
+
+UnionStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+UnionStatementContext.prototype.constructor = UnionStatementContext;
+
+UnionStatementContext.prototype.UNION = function() {
+ return this.getToken(SqlParser.UNION, 0);
+};
+
+UnionStatementContext.prototype.querySpecificationNointo = function() {
+ return this.getTypedRuleContext(QuerySpecificationNointoContext,0);
+};
+
+UnionStatementContext.prototype.queryExpressionNointo = function() {
+ return this.getTypedRuleContext(QueryExpressionNointoContext,0);
+};
+
+UnionStatementContext.prototype.ALL = function() {
+ return this.getToken(SqlParser.ALL, 0);
+};
+
+UnionStatementContext.prototype.DISTINCT = function() {
+ return this.getToken(SqlParser.DISTINCT, 0);
+};
+
+UnionStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterUnionStatement(this);
+ }
+};
+
+UnionStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitUnionStatement(this);
+ }
+};
+
+UnionStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitUnionStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.UnionStatementContext = UnionStatementContext;
+
+SqlParser.prototype.unionStatement = function() {
+
+ var localctx = new UnionStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 234, SqlParser.RULE_unionStatement);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3510;
+ this.match(SqlParser.UNION);
+ this.state = 3512;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.ALL || _la===SqlParser.DISTINCT) {
+ this.state = 3511;
+ localctx.unionType = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.ALL || _la===SqlParser.DISTINCT)) {
+ localctx.unionType = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 3516;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.SELECT:
+ this.state = 3514;
+ this.querySpecificationNointo();
+ break;
+ case SqlParser.LR_BRACKET:
+ this.state = 3515;
+ this.queryExpressionNointo();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function SelectSpecContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_selectSpec;
+ return this;
+}
+
+SelectSpecContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+SelectSpecContext.prototype.constructor = SelectSpecContext;
+
+SelectSpecContext.prototype.ALL = function() {
+ return this.getToken(SqlParser.ALL, 0);
+};
+
+SelectSpecContext.prototype.DISTINCT = function() {
+ return this.getToken(SqlParser.DISTINCT, 0);
+};
+
+SelectSpecContext.prototype.DISTINCTROW = function() {
+ return this.getToken(SqlParser.DISTINCTROW, 0);
+};
+
+SelectSpecContext.prototype.HIGH_PRIORITY = function() {
+ return this.getToken(SqlParser.HIGH_PRIORITY, 0);
+};
+
+SelectSpecContext.prototype.STRAIGHT_JOIN = function() {
+ return this.getToken(SqlParser.STRAIGHT_JOIN, 0);
+};
+
+SelectSpecContext.prototype.SQL_SMALL_RESULT = function() {
+ return this.getToken(SqlParser.SQL_SMALL_RESULT, 0);
+};
+
+SelectSpecContext.prototype.SQL_BIG_RESULT = function() {
+ return this.getToken(SqlParser.SQL_BIG_RESULT, 0);
+};
+
+SelectSpecContext.prototype.SQL_BUFFER_RESULT = function() {
+ return this.getToken(SqlParser.SQL_BUFFER_RESULT, 0);
+};
+
+SelectSpecContext.prototype.SQL_CACHE = function() {
+ return this.getToken(SqlParser.SQL_CACHE, 0);
+};
+
+SelectSpecContext.prototype.SQL_NO_CACHE = function() {
+ return this.getToken(SqlParser.SQL_NO_CACHE, 0);
+};
+
+SelectSpecContext.prototype.SQL_CALC_FOUND_ROWS = function() {
+ return this.getToken(SqlParser.SQL_CALC_FOUND_ROWS, 0);
+};
+
+SelectSpecContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSelectSpec(this);
+ }
+};
+
+SelectSpecContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSelectSpec(this);
+ }
+};
+
+SelectSpecContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSelectSpec(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.SelectSpecContext = SelectSpecContext;
+
+SqlParser.prototype.selectSpec = function() {
+
+ var localctx = new SelectSpecContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 236, SqlParser.RULE_selectSpec);
+ var _la = 0; // Token type
+ try {
+ this.state = 3526;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.ALL:
+ case SqlParser.DISTINCT:
+ case SqlParser.DISTINCTROW:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3518;
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.ALL || _la===SqlParser.DISTINCT || _la===SqlParser.DISTINCTROW)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+ case SqlParser.HIGH_PRIORITY:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 3519;
+ this.match(SqlParser.HIGH_PRIORITY);
+ break;
+ case SqlParser.STRAIGHT_JOIN:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 3520;
+ this.match(SqlParser.STRAIGHT_JOIN);
+ break;
+ case SqlParser.SQL_SMALL_RESULT:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 3521;
+ this.match(SqlParser.SQL_SMALL_RESULT);
+ break;
+ case SqlParser.SQL_BIG_RESULT:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 3522;
+ this.match(SqlParser.SQL_BIG_RESULT);
+ break;
+ case SqlParser.SQL_BUFFER_RESULT:
+ this.enterOuterAlt(localctx, 6);
+ this.state = 3523;
+ this.match(SqlParser.SQL_BUFFER_RESULT);
+ break;
+ case SqlParser.SQL_CACHE:
+ case SqlParser.SQL_NO_CACHE:
+ this.enterOuterAlt(localctx, 7);
+ this.state = 3524;
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.SQL_CACHE || _la===SqlParser.SQL_NO_CACHE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+ case SqlParser.SQL_CALC_FOUND_ROWS:
+ this.enterOuterAlt(localctx, 8);
+ this.state = 3525;
+ this.match(SqlParser.SQL_CALC_FOUND_ROWS);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function SelectElementsContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_selectElements;
+ this.star = null; // Token
+ return this;
+}
+
+SelectElementsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+SelectElementsContext.prototype.constructor = SelectElementsContext;
+
+SelectElementsContext.prototype.selectElement = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(SelectElementContext);
+ } else {
+ return this.getTypedRuleContext(SelectElementContext,i);
+ }
+};
+
+SelectElementsContext.prototype.STAR = function() {
+ return this.getToken(SqlParser.STAR, 0);
+};
+
+SelectElementsContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+SelectElementsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSelectElements(this);
+ }
+};
+
+SelectElementsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSelectElements(this);
+ }
+};
+
+SelectElementsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSelectElements(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.SelectElementsContext = SelectElementsContext;
+
+SqlParser.prototype.selectElements = function() {
+
+ var localctx = new SelectElementsContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 238, SqlParser.RULE_selectElements);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3530;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.STAR:
+ this.state = 3528;
+ localctx.star = this.match(SqlParser.STAR);
+ break;
+ case SqlParser.CASE:
+ case SqlParser.CAST:
+ case SqlParser.CONVERT:
+ case SqlParser.CURRENT:
+ case SqlParser.CURRENT_USER:
+ case SqlParser.DATABASE:
+ case SqlParser.DIAGNOSTICS:
+ case SqlParser.EXISTS:
+ case SqlParser.FALSE:
+ case SqlParser.IF:
+ case SqlParser.INSERT:
+ case SqlParser.INTERVAL:
+ case SqlParser.LEFT:
+ case SqlParser.NOT:
+ case SqlParser.NULL_LITERAL:
+ case SqlParser.NUMBER:
+ case SqlParser.REPLACE:
+ case SqlParser.RIGHT:
+ case SqlParser.STACKED:
+ case SqlParser.TRUE:
+ case SqlParser.VALUES:
+ case SqlParser.DATE:
+ case SqlParser.TIME:
+ case SqlParser.TIMESTAMP:
+ case SqlParser.DATETIME:
+ case SqlParser.YEAR:
+ case SqlParser.CHAR:
+ case SqlParser.BINARY:
+ case SqlParser.TEXT:
+ case SqlParser.ENUM:
+ case SqlParser.SERIAL:
+ case SqlParser.JSON_VALID:
+ case SqlParser.JSON_SCHEMA_VALID:
+ case SqlParser.AVG:
+ case SqlParser.BIT_AND:
+ case SqlParser.BIT_OR:
+ case SqlParser.BIT_XOR:
+ case SqlParser.COUNT:
+ case SqlParser.GROUP_CONCAT:
+ case SqlParser.MAX:
+ case SqlParser.MIN:
+ case SqlParser.STD:
+ case SqlParser.STDDEV:
+ case SqlParser.STDDEV_POP:
+ case SqlParser.STDDEV_SAMP:
+ case SqlParser.SUM:
+ case SqlParser.VAR_POP:
+ case SqlParser.VAR_SAMP:
+ case SqlParser.VARIANCE:
+ case SqlParser.CURRENT_DATE:
+ case SqlParser.CURRENT_TIME:
+ case SqlParser.CURRENT_TIMESTAMP:
+ case SqlParser.LOCALTIME:
+ case SqlParser.CURDATE:
+ case SqlParser.CURTIME:
+ case SqlParser.DATE_ADD:
+ case SqlParser.DATE_SUB:
+ case SqlParser.EXTRACT:
+ case SqlParser.LOCALTIMESTAMP:
+ case SqlParser.NOW:
+ case SqlParser.POSITION:
+ case SqlParser.SUBSTR:
+ case SqlParser.SUBSTRING:
+ case SqlParser.SYSDATE:
+ case SqlParser.TRIM:
+ case SqlParser.UTC_DATE:
+ case SqlParser.UTC_TIME:
+ case SqlParser.UTC_TIMESTAMP:
+ case SqlParser.ACCOUNT:
+ case SqlParser.ACTION:
+ case SqlParser.AFTER:
+ case SqlParser.AGGREGATE:
+ case SqlParser.ALGORITHM:
+ case SqlParser.ANY:
+ case SqlParser.AT:
+ case SqlParser.AUTHORS:
+ case SqlParser.AUTOCOMMIT:
+ case SqlParser.AUTOEXTEND_SIZE:
+ case SqlParser.AUTO_INCREMENT:
+ case SqlParser.AVG_ROW_LENGTH:
+ case SqlParser.BEGIN:
+ case SqlParser.BINLOG:
+ case SqlParser.BIT:
+ case SqlParser.BLOCK:
+ case SqlParser.BOOL:
+ case SqlParser.BOOLEAN:
+ case SqlParser.BTREE:
+ case SqlParser.CACHE:
+ case SqlParser.CASCADED:
+ case SqlParser.CHAIN:
+ case SqlParser.CHANGED:
+ case SqlParser.CHANNEL:
+ case SqlParser.CHECKSUM:
+ case SqlParser.PAGE_CHECKSUM:
+ case SqlParser.CIPHER:
+ case SqlParser.CLASS_ORIGIN:
+ case SqlParser.CLIENT:
+ case SqlParser.CLOSE:
+ case SqlParser.COALESCE:
+ case SqlParser.CODE:
+ case SqlParser.COLUMNS:
+ case SqlParser.COLUMN_FORMAT:
+ case SqlParser.COLUMN_NAME:
+ case SqlParser.COMMENT:
+ case SqlParser.COMMIT:
+ case SqlParser.COMPACT:
+ case SqlParser.COMPLETION:
+ case SqlParser.COMPRESSED:
+ case SqlParser.COMPRESSION:
+ case SqlParser.CONCURRENT:
+ case SqlParser.CONNECTION:
+ case SqlParser.CONSISTENT:
+ case SqlParser.CONSTRAINT_CATALOG:
+ case SqlParser.CONSTRAINT_SCHEMA:
+ case SqlParser.CONSTRAINT_NAME:
+ case SqlParser.CONTAINS:
+ case SqlParser.CONTEXT:
+ case SqlParser.CONTRIBUTORS:
+ case SqlParser.COPY:
+ case SqlParser.CPU:
+ case SqlParser.CURSOR_NAME:
+ case SqlParser.DATA:
+ case SqlParser.DATAFILE:
+ case SqlParser.DEALLOCATE:
+ case SqlParser.DEFAULT_AUTH:
+ case SqlParser.DEFINER:
+ case SqlParser.DELAY_KEY_WRITE:
+ case SqlParser.DES_KEY_FILE:
+ case SqlParser.DIRECTORY:
+ case SqlParser.DISABLE:
+ case SqlParser.DISCARD:
+ case SqlParser.DISK:
+ case SqlParser.DO:
+ case SqlParser.DUMPFILE:
+ case SqlParser.DUPLICATE:
+ case SqlParser.DYNAMIC:
+ case SqlParser.ENABLE:
+ case SqlParser.ENCRYPTION:
+ case SqlParser.END:
+ case SqlParser.ENDS:
+ case SqlParser.ENGINE:
+ case SqlParser.ENGINES:
+ case SqlParser.ERROR:
+ case SqlParser.ERRORS:
+ case SqlParser.ESCAPE:
+ case SqlParser.EVEN:
+ case SqlParser.EVENT:
+ case SqlParser.EVENTS:
+ case SqlParser.EVERY:
+ case SqlParser.EXCHANGE:
+ case SqlParser.EXCLUSIVE:
+ case SqlParser.EXPIRE:
+ case SqlParser.EXPORT:
+ case SqlParser.EXTENDED:
+ case SqlParser.EXTENT_SIZE:
+ case SqlParser.FAST:
+ case SqlParser.FAULTS:
+ case SqlParser.FIELDS:
+ case SqlParser.FILE_BLOCK_SIZE:
+ case SqlParser.FILTER:
+ case SqlParser.FIRST:
+ case SqlParser.FIXED:
+ case SqlParser.FLUSH:
+ case SqlParser.FOLLOWS:
+ case SqlParser.FOUND:
+ case SqlParser.FULL:
+ case SqlParser.FUNCTION:
+ case SqlParser.GENERAL:
+ case SqlParser.GLOBAL:
+ case SqlParser.GRANTS:
+ case SqlParser.GROUP_REPLICATION:
+ case SqlParser.HANDLER:
+ case SqlParser.HASH:
+ case SqlParser.HELP:
+ case SqlParser.HOST:
+ case SqlParser.HOSTS:
+ case SqlParser.IDENTIFIED:
+ case SqlParser.IGNORE_SERVER_IDS:
+ case SqlParser.IMPORT:
+ case SqlParser.INDEXES:
+ case SqlParser.INITIAL_SIZE:
+ case SqlParser.INPLACE:
+ case SqlParser.INSERT_METHOD:
+ case SqlParser.INSTALL:
+ case SqlParser.INSTANCE:
+ case SqlParser.INVISIBLE:
+ case SqlParser.INVOKER:
+ case SqlParser.IO:
+ case SqlParser.IO_THREAD:
+ case SqlParser.IPC:
+ case SqlParser.ISOLATION:
+ case SqlParser.ISSUER:
+ case SqlParser.JSON:
+ case SqlParser.KEY_BLOCK_SIZE:
+ case SqlParser.LANGUAGE:
+ case SqlParser.LAST:
+ case SqlParser.LEAVES:
+ case SqlParser.LESS:
+ case SqlParser.LEVEL:
+ case SqlParser.LIST:
+ case SqlParser.LOCAL:
+ case SqlParser.LOGFILE:
+ case SqlParser.LOGS:
+ case SqlParser.MASTER:
+ case SqlParser.MASTER_AUTO_POSITION:
+ case SqlParser.MASTER_CONNECT_RETRY:
+ case SqlParser.MASTER_DELAY:
+ case SqlParser.MASTER_HEARTBEAT_PERIOD:
+ case SqlParser.MASTER_HOST:
+ case SqlParser.MASTER_LOG_FILE:
+ case SqlParser.MASTER_LOG_POS:
+ case SqlParser.MASTER_PASSWORD:
+ case SqlParser.MASTER_PORT:
+ case SqlParser.MASTER_RETRY_COUNT:
+ case SqlParser.MASTER_SSL:
+ case SqlParser.MASTER_SSL_CA:
+ case SqlParser.MASTER_SSL_CAPATH:
+ case SqlParser.MASTER_SSL_CERT:
+ case SqlParser.MASTER_SSL_CIPHER:
+ case SqlParser.MASTER_SSL_CRL:
+ case SqlParser.MASTER_SSL_CRLPATH:
+ case SqlParser.MASTER_SSL_KEY:
+ case SqlParser.MASTER_TLS_VERSION:
+ case SqlParser.MASTER_USER:
+ case SqlParser.MAX_CONNECTIONS_PER_HOUR:
+ case SqlParser.MAX_QUERIES_PER_HOUR:
+ case SqlParser.MAX_ROWS:
+ case SqlParser.MAX_SIZE:
+ case SqlParser.MAX_UPDATES_PER_HOUR:
+ case SqlParser.MAX_USER_CONNECTIONS:
+ case SqlParser.MEDIUM:
+ case SqlParser.MERGE:
+ case SqlParser.MESSAGE_TEXT:
+ case SqlParser.MID:
+ case SqlParser.MIGRATE:
+ case SqlParser.MIN_ROWS:
+ case SqlParser.MODE:
+ case SqlParser.MODIFY:
+ case SqlParser.MUTEX:
+ case SqlParser.MYSQL:
+ case SqlParser.MYSQL_ERRNO:
+ case SqlParser.NAME:
+ case SqlParser.NAMES:
+ case SqlParser.NCHAR:
+ case SqlParser.NEVER:
+ case SqlParser.NEXT:
+ case SqlParser.NO:
+ case SqlParser.NODEGROUP:
+ case SqlParser.NONE:
+ case SqlParser.OFFLINE:
+ case SqlParser.OFFSET:
+ case SqlParser.OJ:
+ case SqlParser.OLD_PASSWORD:
+ case SqlParser.ONE:
+ case SqlParser.ONLINE:
+ case SqlParser.ONLY:
+ case SqlParser.OPEN:
+ case SqlParser.OPTIMIZER_COSTS:
+ case SqlParser.OPTIONS:
+ case SqlParser.OWNER:
+ case SqlParser.PACK_KEYS:
+ case SqlParser.PAGE:
+ case SqlParser.PARSER:
+ case SqlParser.PARTIAL:
+ case SqlParser.PARTITIONING:
+ case SqlParser.PARTITIONS:
+ case SqlParser.PASSWORD:
+ case SqlParser.PHASE:
+ case SqlParser.PLUGIN:
+ case SqlParser.PLUGIN_DIR:
+ case SqlParser.PLUGINS:
+ case SqlParser.PORT:
+ case SqlParser.PRECEDES:
+ case SqlParser.PREPARE:
+ case SqlParser.PRESERVE:
+ case SqlParser.PREV:
+ case SqlParser.PROCESSLIST:
+ case SqlParser.PROFILE:
+ case SqlParser.PROFILES:
+ case SqlParser.PROXY:
+ case SqlParser.QUERY:
+ case SqlParser.QUICK:
+ case SqlParser.REBUILD:
+ case SqlParser.RECOVER:
+ case SqlParser.REDO_BUFFER_SIZE:
+ case SqlParser.REDUNDANT:
+ case SqlParser.RELAY:
+ case SqlParser.RELAY_LOG_FILE:
+ case SqlParser.RELAY_LOG_POS:
+ case SqlParser.RELAYLOG:
+ case SqlParser.REMOVE:
+ case SqlParser.REORGANIZE:
+ case SqlParser.REPAIR:
+ case SqlParser.REPLICATE_DO_DB:
+ case SqlParser.REPLICATE_DO_TABLE:
+ case SqlParser.REPLICATE_IGNORE_DB:
+ case SqlParser.REPLICATE_IGNORE_TABLE:
+ case SqlParser.REPLICATE_REWRITE_DB:
+ case SqlParser.REPLICATE_WILD_DO_TABLE:
+ case SqlParser.REPLICATE_WILD_IGNORE_TABLE:
+ case SqlParser.REPLICATION:
+ case SqlParser.RESET:
+ case SqlParser.RESUME:
+ case SqlParser.RETURNED_SQLSTATE:
+ case SqlParser.RETURNS:
+ case SqlParser.ROLE:
+ case SqlParser.ROLLBACK:
+ case SqlParser.ROLLUP:
+ case SqlParser.ROTATE:
+ case SqlParser.ROW:
+ case SqlParser.ROWS:
+ case SqlParser.ROW_FORMAT:
+ case SqlParser.SAVEPOINT:
+ case SqlParser.SCHEDULE:
+ case SqlParser.SECURITY:
+ case SqlParser.SERVER:
+ case SqlParser.SESSION:
+ case SqlParser.SHARE:
+ case SqlParser.SHARED:
+ case SqlParser.SIGNED:
+ case SqlParser.SIMPLE:
+ case SqlParser.SLAVE:
+ case SqlParser.SLOW:
+ case SqlParser.SNAPSHOT:
+ case SqlParser.SOCKET:
+ case SqlParser.SOME:
+ case SqlParser.SONAME:
+ case SqlParser.SOUNDS:
+ case SqlParser.SOURCE:
+ case SqlParser.SQL_AFTER_GTIDS:
+ case SqlParser.SQL_AFTER_MTS_GAPS:
+ case SqlParser.SQL_BEFORE_GTIDS:
+ case SqlParser.SQL_BUFFER_RESULT:
+ case SqlParser.SQL_CACHE:
+ case SqlParser.SQL_NO_CACHE:
+ case SqlParser.SQL_THREAD:
+ case SqlParser.START:
+ case SqlParser.STARTS:
+ case SqlParser.STATS_AUTO_RECALC:
+ case SqlParser.STATS_PERSISTENT:
+ case SqlParser.STATS_SAMPLE_PAGES:
+ case SqlParser.STATUS:
+ case SqlParser.STOP:
+ case SqlParser.STORAGE:
+ case SqlParser.STRING:
+ case SqlParser.SUBCLASS_ORIGIN:
+ case SqlParser.SUBJECT:
+ case SqlParser.SUBPARTITION:
+ case SqlParser.SUBPARTITIONS:
+ case SqlParser.SUSPEND:
+ case SqlParser.SWAPS:
+ case SqlParser.SWITCHES:
+ case SqlParser.TABLE_NAME:
+ case SqlParser.TABLESPACE:
+ case SqlParser.TEMPORARY:
+ case SqlParser.TEMPTABLE:
+ case SqlParser.THAN:
+ case SqlParser.TRADITIONAL:
+ case SqlParser.TRANSACTION:
+ case SqlParser.TRANSACTIONAL:
+ case SqlParser.TRIGGERS:
+ case SqlParser.TRUNCATE:
+ case SqlParser.UNDEFINED:
+ case SqlParser.UNDOFILE:
+ case SqlParser.UNDO_BUFFER_SIZE:
+ case SqlParser.UNINSTALL:
+ case SqlParser.UNKNOWN:
+ case SqlParser.UNTIL:
+ case SqlParser.UPGRADE:
+ case SqlParser.USER:
+ case SqlParser.USE_FRM:
+ case SqlParser.USER_RESOURCES:
+ case SqlParser.VALIDATION:
+ case SqlParser.VALUE:
+ case SqlParser.VARIABLES:
+ case SqlParser.VIEW:
+ case SqlParser.VISIBLE:
+ case SqlParser.WAIT:
+ case SqlParser.WARNINGS:
+ case SqlParser.WITHOUT:
+ case SqlParser.WORK:
+ case SqlParser.WRAPPER:
+ case SqlParser.X509:
+ case SqlParser.XA:
+ case SqlParser.XML:
+ case SqlParser.INTERNAL:
+ case SqlParser.QUARTER:
+ case SqlParser.MONTH:
+ case SqlParser.DAY:
+ case SqlParser.HOUR:
+ case SqlParser.MINUTE:
+ case SqlParser.WEEK:
+ case SqlParser.SECOND:
+ case SqlParser.MICROSECOND:
+ case SqlParser.TABLES:
+ case SqlParser.ROUTINE:
+ case SqlParser.EXECUTE:
+ case SqlParser.FILE:
+ case SqlParser.PROCESS:
+ case SqlParser.RELOAD:
+ case SqlParser.SHUTDOWN:
+ case SqlParser.SUPER:
+ case SqlParser.PRIVILEGES:
+ case SqlParser.AUDIT_ADMIN:
+ case SqlParser.BACKUP_ADMIN:
+ case SqlParser.BINLOG_ADMIN:
+ case SqlParser.BINLOG_ENCRYPTION_ADMIN:
+ case SqlParser.CLONE_ADMIN:
+ case SqlParser.CONNECTION_ADMIN:
+ case SqlParser.ENCRYPTION_KEY_ADMIN:
+ case SqlParser.FIREWALL_ADMIN:
+ case SqlParser.FIREWALL_USER:
+ case SqlParser.GROUP_REPLICATION_ADMIN:
+ case SqlParser.INNODB_REDO_LOG_ARCHIVE:
+ case SqlParser.NDB_STORED_USER:
+ case SqlParser.PERSIST_RO_VARIABLES_ADMIN:
+ case SqlParser.REPLICATION_APPLIER:
+ case SqlParser.REPLICATION_SLAVE_ADMIN:
+ case SqlParser.RESOURCE_GROUP_ADMIN:
+ case SqlParser.RESOURCE_GROUP_USER:
+ case SqlParser.ROLE_ADMIN:
+ case SqlParser.SESSION_VARIABLES_ADMIN:
+ case SqlParser.SET_USER_ID:
+ case SqlParser.SHOW_ROUTINE:
+ case SqlParser.SYSTEM_VARIABLES_ADMIN:
+ case SqlParser.TABLE_ENCRYPTION_ADMIN:
+ case SqlParser.VERSION_TOKEN_ADMIN:
+ case SqlParser.XA_RECOVER_ADMIN:
+ case SqlParser.ARMSCII8:
+ case SqlParser.ASCII:
+ case SqlParser.BIG5:
+ case SqlParser.CP1250:
+ case SqlParser.CP1251:
+ case SqlParser.CP1256:
+ case SqlParser.CP1257:
+ case SqlParser.CP850:
+ case SqlParser.CP852:
+ case SqlParser.CP866:
+ case SqlParser.CP932:
+ case SqlParser.DEC8:
+ case SqlParser.EUCJPMS:
+ case SqlParser.EUCKR:
+ case SqlParser.GB2312:
+ case SqlParser.GBK:
+ case SqlParser.GEOSTD8:
+ case SqlParser.GREEK:
+ case SqlParser.HEBREW:
+ case SqlParser.HP8:
+ case SqlParser.KEYBCS2:
+ case SqlParser.KOI8R:
+ case SqlParser.KOI8U:
+ case SqlParser.LATIN1:
+ case SqlParser.LATIN2:
+ case SqlParser.LATIN5:
+ case SqlParser.LATIN7:
+ case SqlParser.MACCE:
+ case SqlParser.MACROMAN:
+ case SqlParser.SJIS:
+ case SqlParser.SWE7:
+ case SqlParser.TIS620:
+ case SqlParser.UCS2:
+ case SqlParser.UJIS:
+ case SqlParser.UTF16:
+ case SqlParser.UTF16LE:
+ case SqlParser.UTF32:
+ case SqlParser.UTF8:
+ case SqlParser.UTF8MB3:
+ case SqlParser.UTF8MB4:
+ case SqlParser.ARCHIVE:
+ case SqlParser.BLACKHOLE:
+ case SqlParser.CSV:
+ case SqlParser.FEDERATED:
+ case SqlParser.INNODB:
+ case SqlParser.MEMORY:
+ case SqlParser.MRG_MYISAM:
+ case SqlParser.MYISAM:
+ case SqlParser.NDB:
+ case SqlParser.NDBCLUSTER:
+ case SqlParser.PERFORMANCE_SCHEMA:
+ case SqlParser.TOKUDB:
+ case SqlParser.REPEATABLE:
+ case SqlParser.COMMITTED:
+ case SqlParser.UNCOMMITTED:
+ case SqlParser.SERIALIZABLE:
+ case SqlParser.GEOMETRYCOLLECTION:
+ case SqlParser.LINESTRING:
+ case SqlParser.MULTILINESTRING:
+ case SqlParser.MULTIPOINT:
+ case SqlParser.MULTIPOLYGON:
+ case SqlParser.POINT:
+ case SqlParser.POLYGON:
+ case SqlParser.ABS:
+ case SqlParser.ACOS:
+ case SqlParser.ADDDATE:
+ case SqlParser.ADDTIME:
+ case SqlParser.AES_DECRYPT:
+ case SqlParser.AES_ENCRYPT:
+ case SqlParser.AREA:
+ case SqlParser.ASBINARY:
+ case SqlParser.ASIN:
+ case SqlParser.ASTEXT:
+ case SqlParser.ASWKB:
+ case SqlParser.ASWKT:
+ case SqlParser.ASYMMETRIC_DECRYPT:
+ case SqlParser.ASYMMETRIC_DERIVE:
+ case SqlParser.ASYMMETRIC_ENCRYPT:
+ case SqlParser.ASYMMETRIC_SIGN:
+ case SqlParser.ASYMMETRIC_VERIFY:
+ case SqlParser.ATAN:
+ case SqlParser.ATAN2:
+ case SqlParser.BENCHMARK:
+ case SqlParser.BIN:
+ case SqlParser.BIT_COUNT:
+ case SqlParser.BIT_LENGTH:
+ case SqlParser.BUFFER:
+ case SqlParser.CATALOG_NAME:
+ case SqlParser.CEIL:
+ case SqlParser.CEILING:
+ case SqlParser.CENTROID:
+ case SqlParser.CHARACTER_LENGTH:
+ case SqlParser.CHARSET:
+ case SqlParser.CHAR_LENGTH:
+ case SqlParser.COERCIBILITY:
+ case SqlParser.COLLATION:
+ case SqlParser.COMPRESS:
+ case SqlParser.CONCAT:
+ case SqlParser.CONCAT_WS:
+ case SqlParser.CONNECTION_ID:
+ case SqlParser.CONV:
+ case SqlParser.CONVERT_TZ:
+ case SqlParser.COS:
+ case SqlParser.COT:
+ case SqlParser.CRC32:
+ case SqlParser.CREATE_ASYMMETRIC_PRIV_KEY:
+ case SqlParser.CREATE_ASYMMETRIC_PUB_KEY:
+ case SqlParser.CREATE_DH_PARAMETERS:
+ case SqlParser.CREATE_DIGEST:
+ case SqlParser.CROSSES:
+ case SqlParser.DATEDIFF:
+ case SqlParser.DATE_FORMAT:
+ case SqlParser.DAYNAME:
+ case SqlParser.DAYOFMONTH:
+ case SqlParser.DAYOFWEEK:
+ case SqlParser.DAYOFYEAR:
+ case SqlParser.DECODE:
+ case SqlParser.DEGREES:
+ case SqlParser.DES_DECRYPT:
+ case SqlParser.DES_ENCRYPT:
+ case SqlParser.DIMENSION:
+ case SqlParser.DISJOINT:
+ case SqlParser.ELT:
+ case SqlParser.ENCODE:
+ case SqlParser.ENCRYPT:
+ case SqlParser.ENDPOINT:
+ case SqlParser.ENVELOPE:
+ case SqlParser.EQUALS:
+ case SqlParser.EXP:
+ case SqlParser.EXPORT_SET:
+ case SqlParser.EXTERIORRING:
+ case SqlParser.EXTRACTVALUE:
+ case SqlParser.FIELD:
+ case SqlParser.FIND_IN_SET:
+ case SqlParser.FLOOR:
+ case SqlParser.FORMAT:
+ case SqlParser.FOUND_ROWS:
+ case SqlParser.FROM_BASE64:
+ case SqlParser.FROM_DAYS:
+ case SqlParser.FROM_UNIXTIME:
+ case SqlParser.GEOMCOLLFROMTEXT:
+ case SqlParser.GEOMCOLLFROMWKB:
+ case SqlParser.GEOMETRYCOLLECTIONFROMTEXT:
+ case SqlParser.GEOMETRYCOLLECTIONFROMWKB:
+ case SqlParser.GEOMETRYFROMTEXT:
+ case SqlParser.GEOMETRYFROMWKB:
+ case SqlParser.GEOMETRYN:
+ case SqlParser.GEOMETRYTYPE:
+ case SqlParser.GEOMFROMTEXT:
+ case SqlParser.GEOMFROMWKB:
+ case SqlParser.GET_FORMAT:
+ case SqlParser.GET_LOCK:
+ case SqlParser.GLENGTH:
+ case SqlParser.GREATEST:
+ case SqlParser.GTID_SUBSET:
+ case SqlParser.GTID_SUBTRACT:
+ case SqlParser.HEX:
+ case SqlParser.IFNULL:
+ case SqlParser.INET6_ATON:
+ case SqlParser.INET6_NTOA:
+ case SqlParser.INET_ATON:
+ case SqlParser.INET_NTOA:
+ case SqlParser.INSTR:
+ case SqlParser.INTERIORRINGN:
+ case SqlParser.INTERSECTS:
+ case SqlParser.ISCLOSED:
+ case SqlParser.ISEMPTY:
+ case SqlParser.ISNULL:
+ case SqlParser.ISSIMPLE:
+ case SqlParser.IS_FREE_LOCK:
+ case SqlParser.IS_IPV4:
+ case SqlParser.IS_IPV4_COMPAT:
+ case SqlParser.IS_IPV4_MAPPED:
+ case SqlParser.IS_IPV6:
+ case SqlParser.IS_USED_LOCK:
+ case SqlParser.LAST_INSERT_ID:
+ case SqlParser.LCASE:
+ case SqlParser.LEAST:
+ case SqlParser.LENGTH:
+ case SqlParser.LINEFROMTEXT:
+ case SqlParser.LINEFROMWKB:
+ case SqlParser.LINESTRINGFROMTEXT:
+ case SqlParser.LINESTRINGFROMWKB:
+ case SqlParser.LN:
+ case SqlParser.LOAD_FILE:
+ case SqlParser.LOCATE:
+ case SqlParser.LOG:
+ case SqlParser.LOG10:
+ case SqlParser.LOG2:
+ case SqlParser.LOWER:
+ case SqlParser.LPAD:
+ case SqlParser.LTRIM:
+ case SqlParser.MAKEDATE:
+ case SqlParser.MAKETIME:
+ case SqlParser.MAKE_SET:
+ case SqlParser.MASTER_POS_WAIT:
+ case SqlParser.MBRCONTAINS:
+ case SqlParser.MBRDISJOINT:
+ case SqlParser.MBREQUAL:
+ case SqlParser.MBRINTERSECTS:
+ case SqlParser.MBROVERLAPS:
+ case SqlParser.MBRTOUCHES:
+ case SqlParser.MBRWITHIN:
+ case SqlParser.MD5:
+ case SqlParser.MLINEFROMTEXT:
+ case SqlParser.MLINEFROMWKB:
+ case SqlParser.MONTHNAME:
+ case SqlParser.MPOINTFROMTEXT:
+ case SqlParser.MPOINTFROMWKB:
+ case SqlParser.MPOLYFROMTEXT:
+ case SqlParser.MPOLYFROMWKB:
+ case SqlParser.MULTILINESTRINGFROMTEXT:
+ case SqlParser.MULTILINESTRINGFROMWKB:
+ case SqlParser.MULTIPOINTFROMTEXT:
+ case SqlParser.MULTIPOINTFROMWKB:
+ case SqlParser.MULTIPOLYGONFROMTEXT:
+ case SqlParser.MULTIPOLYGONFROMWKB:
+ case SqlParser.NAME_CONST:
+ case SqlParser.NULLIF:
+ case SqlParser.NUMGEOMETRIES:
+ case SqlParser.NUMINTERIORRINGS:
+ case SqlParser.NUMPOINTS:
+ case SqlParser.OCT:
+ case SqlParser.OCTET_LENGTH:
+ case SqlParser.ORD:
+ case SqlParser.OVERLAPS:
+ case SqlParser.PERIOD_ADD:
+ case SqlParser.PERIOD_DIFF:
+ case SqlParser.PI:
+ case SqlParser.POINTFROMTEXT:
+ case SqlParser.POINTFROMWKB:
+ case SqlParser.POINTN:
+ case SqlParser.POLYFROMTEXT:
+ case SqlParser.POLYFROMWKB:
+ case SqlParser.POLYGONFROMTEXT:
+ case SqlParser.POLYGONFROMWKB:
+ case SqlParser.POW:
+ case SqlParser.POWER:
+ case SqlParser.QUOTE:
+ case SqlParser.RADIANS:
+ case SqlParser.RAND:
+ case SqlParser.RANDOM_BYTES:
+ case SqlParser.RELEASE_LOCK:
+ case SqlParser.REVERSE:
+ case SqlParser.ROUND:
+ case SqlParser.ROW_COUNT:
+ case SqlParser.RPAD:
+ case SqlParser.RTRIM:
+ case SqlParser.SEC_TO_TIME:
+ case SqlParser.SESSION_USER:
+ case SqlParser.SHA:
+ case SqlParser.SHA1:
+ case SqlParser.SHA2:
+ case SqlParser.SCHEMA_NAME:
+ case SqlParser.SIGN:
+ case SqlParser.SIN:
+ case SqlParser.SLEEP:
+ case SqlParser.SOUNDEX:
+ case SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS:
+ case SqlParser.SQRT:
+ case SqlParser.SRID:
+ case SqlParser.STARTPOINT:
+ case SqlParser.STRCMP:
+ case SqlParser.STR_TO_DATE:
+ case SqlParser.ST_AREA:
+ case SqlParser.ST_ASBINARY:
+ case SqlParser.ST_ASTEXT:
+ case SqlParser.ST_ASWKB:
+ case SqlParser.ST_ASWKT:
+ case SqlParser.ST_BUFFER:
+ case SqlParser.ST_CENTROID:
+ case SqlParser.ST_CONTAINS:
+ case SqlParser.ST_CROSSES:
+ case SqlParser.ST_DIFFERENCE:
+ case SqlParser.ST_DIMENSION:
+ case SqlParser.ST_DISJOINT:
+ case SqlParser.ST_DISTANCE:
+ case SqlParser.ST_ENDPOINT:
+ case SqlParser.ST_ENVELOPE:
+ case SqlParser.ST_EQUALS:
+ case SqlParser.ST_EXTERIORRING:
+ case SqlParser.ST_GEOMCOLLFROMTEXT:
+ case SqlParser.ST_GEOMCOLLFROMTXT:
+ case SqlParser.ST_GEOMCOLLFROMWKB:
+ case SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT:
+ case SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB:
+ case SqlParser.ST_GEOMETRYFROMTEXT:
+ case SqlParser.ST_GEOMETRYFROMWKB:
+ case SqlParser.ST_GEOMETRYN:
+ case SqlParser.ST_GEOMETRYTYPE:
+ case SqlParser.ST_GEOMFROMTEXT:
+ case SqlParser.ST_GEOMFROMWKB:
+ case SqlParser.ST_INTERIORRINGN:
+ case SqlParser.ST_INTERSECTION:
+ case SqlParser.ST_INTERSECTS:
+ case SqlParser.ST_ISCLOSED:
+ case SqlParser.ST_ISEMPTY:
+ case SqlParser.ST_ISSIMPLE:
+ case SqlParser.ST_LINEFROMTEXT:
+ case SqlParser.ST_LINEFROMWKB:
+ case SqlParser.ST_LINESTRINGFROMTEXT:
+ case SqlParser.ST_LINESTRINGFROMWKB:
+ case SqlParser.ST_NUMGEOMETRIES:
+ case SqlParser.ST_NUMINTERIORRING:
+ case SqlParser.ST_NUMINTERIORRINGS:
+ case SqlParser.ST_NUMPOINTS:
+ case SqlParser.ST_OVERLAPS:
+ case SqlParser.ST_POINTFROMTEXT:
+ case SqlParser.ST_POINTFROMWKB:
+ case SqlParser.ST_POINTN:
+ case SqlParser.ST_POLYFROMTEXT:
+ case SqlParser.ST_POLYFROMWKB:
+ case SqlParser.ST_POLYGONFROMTEXT:
+ case SqlParser.ST_POLYGONFROMWKB:
+ case SqlParser.ST_SRID:
+ case SqlParser.ST_STARTPOINT:
+ case SqlParser.ST_SYMDIFFERENCE:
+ case SqlParser.ST_TOUCHES:
+ case SqlParser.ST_UNION:
+ case SqlParser.ST_WITHIN:
+ case SqlParser.ST_X:
+ case SqlParser.ST_Y:
+ case SqlParser.SUBDATE:
+ case SqlParser.SUBSTRING_INDEX:
+ case SqlParser.SUBTIME:
+ case SqlParser.SYSTEM_USER:
+ case SqlParser.TAN:
+ case SqlParser.TIMEDIFF:
+ case SqlParser.TIMESTAMPADD:
+ case SqlParser.TIMESTAMPDIFF:
+ case SqlParser.TIME_FORMAT:
+ case SqlParser.TIME_TO_SEC:
+ case SqlParser.TOUCHES:
+ case SqlParser.TO_BASE64:
+ case SqlParser.TO_DAYS:
+ case SqlParser.TO_SECONDS:
+ case SqlParser.UCASE:
+ case SqlParser.UNCOMPRESS:
+ case SqlParser.UNCOMPRESSED_LENGTH:
+ case SqlParser.UNHEX:
+ case SqlParser.UNIX_TIMESTAMP:
+ case SqlParser.UPDATEXML:
+ case SqlParser.UPPER:
+ case SqlParser.UUID:
+ case SqlParser.UUID_SHORT:
+ case SqlParser.VALIDATE_PASSWORD_STRENGTH:
+ case SqlParser.VERSION:
+ case SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS:
+ case SqlParser.WEEKDAY:
+ case SqlParser.WEEKOFYEAR:
+ case SqlParser.WEIGHT_STRING:
+ case SqlParser.WITHIN:
+ case SqlParser.YEARWEEK:
+ case SqlParser.Y_FUNCTION:
+ case SqlParser.X_FUNCTION:
+ case SqlParser.PLUS:
+ case SqlParser.MINUS:
+ case SqlParser.EXCLAMATION_SYMBOL:
+ case SqlParser.BIT_NOT_OP:
+ case SqlParser.LR_BRACKET:
+ case SqlParser.ZERO_DECIMAL:
+ case SqlParser.ONE_DECIMAL:
+ case SqlParser.TWO_DECIMAL:
+ case SqlParser.CHARSET_REVERSE_QOUTE_STRING:
+ case SqlParser.START_NATIONAL_STRING_LITERAL:
+ case SqlParser.STRING_LITERAL:
+ case SqlParser.DECIMAL_LITERAL:
+ case SqlParser.HEXADECIMAL_LITERAL:
+ case SqlParser.REAL_LITERAL:
+ case SqlParser.NULL_SPEC_LITERAL:
+ case SqlParser.BIT_STRING:
+ case SqlParser.STRING_CHARSET_NAME:
+ case SqlParser.ID:
+ case SqlParser.REVERSE_QUOTE_ID:
+ case SqlParser.LOCAL_ID:
+ case SqlParser.GLOBAL_ID:
+ this.state = 3529;
+ this.selectElement();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 3536;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 3532;
+ this.match(SqlParser.COMMA);
+ this.state = 3533;
+ this.selectElement();
+ this.state = 3538;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function SelectElementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_selectElement;
+ return this;
+}
+
+SelectElementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+SelectElementContext.prototype.constructor = SelectElementContext;
+
+
+
+SelectElementContext.prototype.copyFrom = function(ctx) {
+ antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx);
+};
+
+
+function SelectExpressionElementContext(parser, ctx) {
+ SelectElementContext.call(this, parser);
+ SelectElementContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+SelectExpressionElementContext.prototype = Object.create(SelectElementContext.prototype);
+SelectExpressionElementContext.prototype.constructor = SelectExpressionElementContext;
+
+SqlParser.SelectExpressionElementContext = SelectExpressionElementContext;
+
+SelectExpressionElementContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+SelectExpressionElementContext.prototype.LOCAL_ID = function() {
+ return this.getToken(SqlParser.LOCAL_ID, 0);
+};
+
+SelectExpressionElementContext.prototype.VAR_ASSIGN = function() {
+ return this.getToken(SqlParser.VAR_ASSIGN, 0);
+};
+
+SelectExpressionElementContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+SelectExpressionElementContext.prototype.AS = function() {
+ return this.getToken(SqlParser.AS, 0);
+};
+SelectExpressionElementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSelectExpressionElement(this);
+ }
+};
+
+SelectExpressionElementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSelectExpressionElement(this);
+ }
+};
+
+SelectExpressionElementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSelectExpressionElement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function SelectFunctionElementContext(parser, ctx) {
+ SelectElementContext.call(this, parser);
+ SelectElementContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+SelectFunctionElementContext.prototype = Object.create(SelectElementContext.prototype);
+SelectFunctionElementContext.prototype.constructor = SelectFunctionElementContext;
+
+SqlParser.SelectFunctionElementContext = SelectFunctionElementContext;
+
+SelectFunctionElementContext.prototype.functionCall = function() {
+ return this.getTypedRuleContext(FunctionCallContext,0);
+};
+
+SelectFunctionElementContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+SelectFunctionElementContext.prototype.AS = function() {
+ return this.getToken(SqlParser.AS, 0);
+};
+SelectFunctionElementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSelectFunctionElement(this);
+ }
+};
+
+SelectFunctionElementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSelectFunctionElement(this);
+ }
+};
+
+SelectFunctionElementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSelectFunctionElement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function SelectStarElementContext(parser, ctx) {
+ SelectElementContext.call(this, parser);
+ SelectElementContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+SelectStarElementContext.prototype = Object.create(SelectElementContext.prototype);
+SelectStarElementContext.prototype.constructor = SelectStarElementContext;
+
+SqlParser.SelectStarElementContext = SelectStarElementContext;
+
+SelectStarElementContext.prototype.fullId = function() {
+ return this.getTypedRuleContext(FullIdContext,0);
+};
+
+SelectStarElementContext.prototype.DOT = function() {
+ return this.getToken(SqlParser.DOT, 0);
+};
+
+SelectStarElementContext.prototype.STAR = function() {
+ return this.getToken(SqlParser.STAR, 0);
+};
+SelectStarElementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSelectStarElement(this);
+ }
+};
+
+SelectStarElementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSelectStarElement(this);
+ }
+};
+
+SelectStarElementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSelectStarElement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function SelectColumnElementContext(parser, ctx) {
+ SelectElementContext.call(this, parser);
+ SelectElementContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+SelectColumnElementContext.prototype = Object.create(SelectElementContext.prototype);
+SelectColumnElementContext.prototype.constructor = SelectColumnElementContext;
+
+SqlParser.SelectColumnElementContext = SelectColumnElementContext;
+
+SelectColumnElementContext.prototype.fullColumnName = function() {
+ return this.getTypedRuleContext(FullColumnNameContext,0);
+};
+
+SelectColumnElementContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+SelectColumnElementContext.prototype.AS = function() {
+ return this.getToken(SqlParser.AS, 0);
+};
+SelectColumnElementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSelectColumnElement(this);
+ }
+};
+
+SelectColumnElementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSelectColumnElement(this);
+ }
+};
+
+SelectColumnElementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSelectColumnElement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+SqlParser.SelectElementContext = SelectElementContext;
+
+SqlParser.prototype.selectElement = function() {
+
+ var localctx = new SelectElementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 240, SqlParser.RULE_selectElement);
+ var _la = 0; // Token type
+ try {
+ this.state = 3568;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,514,this._ctx);
+ switch(la_) {
+ case 1:
+ localctx = new SelectStarElementContext(this, localctx);
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3539;
+ this.fullId();
+ this.state = 3540;
+ this.match(SqlParser.DOT);
+ this.state = 3541;
+ this.match(SqlParser.STAR);
+ break;
+
+ case 2:
+ localctx = new SelectColumnElementContext(this, localctx);
+ this.enterOuterAlt(localctx, 2);
+ this.state = 3543;
+ this.fullColumnName();
+ this.state = 3548;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,508,this._ctx);
+ if(la_===1) {
+ this.state = 3545;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.AS) {
+ this.state = 3544;
+ this.match(SqlParser.AS);
+ }
+
+ this.state = 3547;
+ this.uid();
+
+ }
+ break;
+
+ case 3:
+ localctx = new SelectFunctionElementContext(this, localctx);
+ this.enterOuterAlt(localctx, 3);
+ this.state = 3550;
+ this.functionCall();
+ this.state = 3555;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,510,this._ctx);
+ if(la_===1) {
+ this.state = 3552;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.AS) {
+ this.state = 3551;
+ this.match(SqlParser.AS);
+ }
+
+ this.state = 3554;
+ this.uid();
+
+ }
+ break;
+
+ case 4:
+ localctx = new SelectExpressionElementContext(this, localctx);
+ this.enterOuterAlt(localctx, 4);
+ this.state = 3559;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,511,this._ctx);
+ if(la_===1) {
+ this.state = 3557;
+ this.match(SqlParser.LOCAL_ID);
+ this.state = 3558;
+ this.match(SqlParser.VAR_ASSIGN);
+
+ }
+ this.state = 3561;
+ this.expression(0);
+ this.state = 3566;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,513,this._ctx);
+ if(la_===1) {
+ this.state = 3563;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.AS) {
+ this.state = 3562;
+ this.match(SqlParser.AS);
+ }
+
+ this.state = 3565;
+ this.uid();
+
+ }
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function SelectIntoExpressionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_selectIntoExpression;
+ return this;
+}
+
+SelectIntoExpressionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+SelectIntoExpressionContext.prototype.constructor = SelectIntoExpressionContext;
+
+
+
+SelectIntoExpressionContext.prototype.copyFrom = function(ctx) {
+ antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx);
+};
+
+
+function SelectIntoVariablesContext(parser, ctx) {
+ SelectIntoExpressionContext.call(this, parser);
+ SelectIntoExpressionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+SelectIntoVariablesContext.prototype = Object.create(SelectIntoExpressionContext.prototype);
+SelectIntoVariablesContext.prototype.constructor = SelectIntoVariablesContext;
+
+SqlParser.SelectIntoVariablesContext = SelectIntoVariablesContext;
+
+SelectIntoVariablesContext.prototype.INTO = function() {
+ return this.getToken(SqlParser.INTO, 0);
+};
+
+SelectIntoVariablesContext.prototype.assignmentField = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(AssignmentFieldContext);
+ } else {
+ return this.getTypedRuleContext(AssignmentFieldContext,i);
+ }
+};
+
+SelectIntoVariablesContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+SelectIntoVariablesContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSelectIntoVariables(this);
+ }
+};
+
+SelectIntoVariablesContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSelectIntoVariables(this);
+ }
+};
+
+SelectIntoVariablesContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSelectIntoVariables(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function SelectIntoTextFileContext(parser, ctx) {
+ SelectIntoExpressionContext.call(this, parser);
+ this.filename = null; // Token;
+ this.charset = null; // CharsetNameContext;
+ this.fieldsFormat = null; // Token;
+ SelectIntoExpressionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+SelectIntoTextFileContext.prototype = Object.create(SelectIntoExpressionContext.prototype);
+SelectIntoTextFileContext.prototype.constructor = SelectIntoTextFileContext;
+
+SqlParser.SelectIntoTextFileContext = SelectIntoTextFileContext;
+
+SelectIntoTextFileContext.prototype.INTO = function() {
+ return this.getToken(SqlParser.INTO, 0);
+};
+
+SelectIntoTextFileContext.prototype.OUTFILE = function() {
+ return this.getToken(SqlParser.OUTFILE, 0);
+};
+
+SelectIntoTextFileContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+SelectIntoTextFileContext.prototype.CHARACTER = function() {
+ return this.getToken(SqlParser.CHARACTER, 0);
+};
+
+SelectIntoTextFileContext.prototype.SET = function() {
+ return this.getToken(SqlParser.SET, 0);
+};
+
+SelectIntoTextFileContext.prototype.LINES = function() {
+ return this.getToken(SqlParser.LINES, 0);
+};
+
+SelectIntoTextFileContext.prototype.charsetName = function() {
+ return this.getTypedRuleContext(CharsetNameContext,0);
+};
+
+SelectIntoTextFileContext.prototype.FIELDS = function() {
+ return this.getToken(SqlParser.FIELDS, 0);
+};
+
+SelectIntoTextFileContext.prototype.COLUMNS = function() {
+ return this.getToken(SqlParser.COLUMNS, 0);
+};
+
+SelectIntoTextFileContext.prototype.selectFieldsInto = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(SelectFieldsIntoContext);
+ } else {
+ return this.getTypedRuleContext(SelectFieldsIntoContext,i);
+ }
+};
+
+SelectIntoTextFileContext.prototype.selectLinesInto = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(SelectLinesIntoContext);
+ } else {
+ return this.getTypedRuleContext(SelectLinesIntoContext,i);
+ }
+};
+SelectIntoTextFileContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSelectIntoTextFile(this);
+ }
+};
+
+SelectIntoTextFileContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSelectIntoTextFile(this);
+ }
+};
+
+SelectIntoTextFileContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSelectIntoTextFile(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function SelectIntoDumpFileContext(parser, ctx) {
+ SelectIntoExpressionContext.call(this, parser);
+ SelectIntoExpressionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+SelectIntoDumpFileContext.prototype = Object.create(SelectIntoExpressionContext.prototype);
+SelectIntoDumpFileContext.prototype.constructor = SelectIntoDumpFileContext;
+
+SqlParser.SelectIntoDumpFileContext = SelectIntoDumpFileContext;
+
+SelectIntoDumpFileContext.prototype.INTO = function() {
+ return this.getToken(SqlParser.INTO, 0);
+};
+
+SelectIntoDumpFileContext.prototype.DUMPFILE = function() {
+ return this.getToken(SqlParser.DUMPFILE, 0);
+};
+
+SelectIntoDumpFileContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+SelectIntoDumpFileContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSelectIntoDumpFile(this);
+ }
+};
+
+SelectIntoDumpFileContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSelectIntoDumpFile(this);
+ }
+};
+
+SelectIntoDumpFileContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSelectIntoDumpFile(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+SqlParser.SelectIntoExpressionContext = SelectIntoExpressionContext;
+
+SqlParser.prototype.selectIntoExpression = function() {
+
+ var localctx = new SelectIntoExpressionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 242, SqlParser.RULE_selectIntoExpression);
+ var _la = 0; // Token type
+ try {
+ this.state = 3606;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,521,this._ctx);
+ switch(la_) {
+ case 1:
+ localctx = new SelectIntoVariablesContext(this, localctx);
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3570;
+ this.match(SqlParser.INTO);
+ this.state = 3571;
+ this.assignmentField();
+ this.state = 3576;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 3572;
+ this.match(SqlParser.COMMA);
+ this.state = 3573;
+ this.assignmentField();
+ this.state = 3578;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+
+ case 2:
+ localctx = new SelectIntoDumpFileContext(this, localctx);
+ this.enterOuterAlt(localctx, 2);
+ this.state = 3579;
+ this.match(SqlParser.INTO);
+ this.state = 3580;
+ this.match(SqlParser.DUMPFILE);
+ this.state = 3581;
+ this.match(SqlParser.STRING_LITERAL);
+ break;
+
+ case 3:
+ localctx = new SelectIntoTextFileContext(this, localctx);
+ this.enterOuterAlt(localctx, 3);
+ this.state = 3582;
+ this.match(SqlParser.INTO);
+ this.state = 3583;
+ this.match(SqlParser.OUTFILE);
+ this.state = 3584;
+ localctx.filename = this.match(SqlParser.STRING_LITERAL);
+ this.state = 3588;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.CHARACTER) {
+ this.state = 3585;
+ this.match(SqlParser.CHARACTER);
+ this.state = 3586;
+ this.match(SqlParser.SET);
+ this.state = 3587;
+ localctx.charset = this.charsetName();
+ }
+
+ this.state = 3596;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,518,this._ctx);
+ if(la_===1) {
+ this.state = 3590;
+ localctx.fieldsFormat = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.COLUMNS || _la===SqlParser.FIELDS)) {
+ localctx.fieldsFormat = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 3592;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 3591;
+ this.selectFieldsInto();
+ this.state = 3594;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(_la===SqlParser.ENCLOSED || _la===SqlParser.ESCAPED || _la===SqlParser.OPTIONALLY || _la===SqlParser.TERMINATED);
+
+ }
+ this.state = 3604;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.LINES) {
+ this.state = 3598;
+ this.match(SqlParser.LINES);
+ this.state = 3600;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 3599;
+ this.selectLinesInto();
+ this.state = 3602;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(_la===SqlParser.STARTING || _la===SqlParser.TERMINATED);
+ }
+
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function SelectFieldsIntoContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_selectFieldsInto;
+ this.terminationField = null; // Token
+ this.enclosion = null; // Token
+ this.escaping = null; // Token
+ return this;
+}
+
+SelectFieldsIntoContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+SelectFieldsIntoContext.prototype.constructor = SelectFieldsIntoContext;
+
+SelectFieldsIntoContext.prototype.TERMINATED = function() {
+ return this.getToken(SqlParser.TERMINATED, 0);
+};
+
+SelectFieldsIntoContext.prototype.BY = function() {
+ return this.getToken(SqlParser.BY, 0);
+};
+
+SelectFieldsIntoContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+SelectFieldsIntoContext.prototype.ENCLOSED = function() {
+ return this.getToken(SqlParser.ENCLOSED, 0);
+};
+
+SelectFieldsIntoContext.prototype.OPTIONALLY = function() {
+ return this.getToken(SqlParser.OPTIONALLY, 0);
+};
+
+SelectFieldsIntoContext.prototype.ESCAPED = function() {
+ return this.getToken(SqlParser.ESCAPED, 0);
+};
+
+SelectFieldsIntoContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSelectFieldsInto(this);
+ }
+};
+
+SelectFieldsIntoContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSelectFieldsInto(this);
+ }
+};
+
+SelectFieldsIntoContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSelectFieldsInto(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.SelectFieldsIntoContext = SelectFieldsIntoContext;
+
+SqlParser.prototype.selectFieldsInto = function() {
+
+ var localctx = new SelectFieldsIntoContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 244, SqlParser.RULE_selectFieldsInto);
+ var _la = 0; // Token type
+ try {
+ this.state = 3620;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.TERMINATED:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3608;
+ this.match(SqlParser.TERMINATED);
+ this.state = 3609;
+ this.match(SqlParser.BY);
+ this.state = 3610;
+ localctx.terminationField = this.match(SqlParser.STRING_LITERAL);
+ break;
+ case SqlParser.ENCLOSED:
+ case SqlParser.OPTIONALLY:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 3612;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.OPTIONALLY) {
+ this.state = 3611;
+ this.match(SqlParser.OPTIONALLY);
+ }
+
+ this.state = 3614;
+ this.match(SqlParser.ENCLOSED);
+ this.state = 3615;
+ this.match(SqlParser.BY);
+ this.state = 3616;
+ localctx.enclosion = this.match(SqlParser.STRING_LITERAL);
+ break;
+ case SqlParser.ESCAPED:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 3617;
+ this.match(SqlParser.ESCAPED);
+ this.state = 3618;
+ this.match(SqlParser.BY);
+ this.state = 3619;
+ localctx.escaping = this.match(SqlParser.STRING_LITERAL);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function SelectLinesIntoContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_selectLinesInto;
+ this.starting = null; // Token
+ this.terminationLine = null; // Token
+ return this;
+}
+
+SelectLinesIntoContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+SelectLinesIntoContext.prototype.constructor = SelectLinesIntoContext;
+
+SelectLinesIntoContext.prototype.STARTING = function() {
+ return this.getToken(SqlParser.STARTING, 0);
+};
+
+SelectLinesIntoContext.prototype.BY = function() {
+ return this.getToken(SqlParser.BY, 0);
+};
+
+SelectLinesIntoContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+SelectLinesIntoContext.prototype.TERMINATED = function() {
+ return this.getToken(SqlParser.TERMINATED, 0);
+};
+
+SelectLinesIntoContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSelectLinesInto(this);
+ }
+};
+
+SelectLinesIntoContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSelectLinesInto(this);
+ }
+};
+
+SelectLinesIntoContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSelectLinesInto(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.SelectLinesIntoContext = SelectLinesIntoContext;
+
+SqlParser.prototype.selectLinesInto = function() {
+
+ var localctx = new SelectLinesIntoContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 246, SqlParser.RULE_selectLinesInto);
+ try {
+ this.state = 3628;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.STARTING:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3622;
+ this.match(SqlParser.STARTING);
+ this.state = 3623;
+ this.match(SqlParser.BY);
+ this.state = 3624;
+ localctx.starting = this.match(SqlParser.STRING_LITERAL);
+ break;
+ case SqlParser.TERMINATED:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 3625;
+ this.match(SqlParser.TERMINATED);
+ this.state = 3626;
+ this.match(SqlParser.BY);
+ this.state = 3627;
+ localctx.terminationLine = this.match(SqlParser.STRING_LITERAL);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function FromClauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_fromClause;
+ this.whereExpr = null; // ExpressionContext
+ this.havingExpr = null; // ExpressionContext
+ return this;
+}
+
+FromClauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+FromClauseContext.prototype.constructor = FromClauseContext;
+
+FromClauseContext.prototype.FROM = function() {
+ return this.getToken(SqlParser.FROM, 0);
+};
+
+FromClauseContext.prototype.tableSources = function() {
+ return this.getTypedRuleContext(TableSourcesContext,0);
+};
+
+FromClauseContext.prototype.WHERE = function() {
+ return this.getToken(SqlParser.WHERE, 0);
+};
+
+FromClauseContext.prototype.GROUP = function() {
+ return this.getToken(SqlParser.GROUP, 0);
+};
+
+FromClauseContext.prototype.BY = function() {
+ return this.getToken(SqlParser.BY, 0);
+};
+
+FromClauseContext.prototype.groupByItem = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(GroupByItemContext);
+ } else {
+ return this.getTypedRuleContext(GroupByItemContext,i);
+ }
+};
+
+FromClauseContext.prototype.HAVING = function() {
+ return this.getToken(SqlParser.HAVING, 0);
+};
+
+FromClauseContext.prototype.expression = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ExpressionContext);
+ } else {
+ return this.getTypedRuleContext(ExpressionContext,i);
+ }
+};
+
+FromClauseContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+FromClauseContext.prototype.WITH = function() {
+ return this.getToken(SqlParser.WITH, 0);
+};
+
+FromClauseContext.prototype.ROLLUP = function() {
+ return this.getToken(SqlParser.ROLLUP, 0);
+};
+
+FromClauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterFromClause(this);
+ }
+};
+
+FromClauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitFromClause(this);
+ }
+};
+
+FromClauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitFromClause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.FromClauseContext = FromClauseContext;
+
+SqlParser.prototype.fromClause = function() {
+
+ var localctx = new FromClauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 248, SqlParser.RULE_fromClause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3630;
+ this.match(SqlParser.FROM);
+ this.state = 3631;
+ this.tableSources();
+ this.state = 3634;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.WHERE) {
+ this.state = 3632;
+ this.match(SqlParser.WHERE);
+ this.state = 3633;
+ localctx.whereExpr = this.expression(0);
+ }
+
+ this.state = 3650;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.GROUP) {
+ this.state = 3636;
+ this.match(SqlParser.GROUP);
+ this.state = 3637;
+ this.match(SqlParser.BY);
+ this.state = 3638;
+ this.groupByItem();
+ this.state = 3643;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 3639;
+ this.match(SqlParser.COMMA);
+ this.state = 3640;
+ this.groupByItem();
+ this.state = 3645;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 3648;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,527,this._ctx);
+ if(la_===1) {
+ this.state = 3646;
+ this.match(SqlParser.WITH);
+ this.state = 3647;
+ this.match(SqlParser.ROLLUP);
+
+ }
+ }
+
+ this.state = 3654;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.HAVING) {
+ this.state = 3652;
+ this.match(SqlParser.HAVING);
+ this.state = 3653;
+ localctx.havingExpr = this.expression(0);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function GroupByItemContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_groupByItem;
+ this.order = null; // Token
+ return this;
+}
+
+GroupByItemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+GroupByItemContext.prototype.constructor = GroupByItemContext;
+
+GroupByItemContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+GroupByItemContext.prototype.ASC = function() {
+ return this.getToken(SqlParser.ASC, 0);
+};
+
+GroupByItemContext.prototype.DESC = function() {
+ return this.getToken(SqlParser.DESC, 0);
+};
+
+GroupByItemContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterGroupByItem(this);
+ }
+};
+
+GroupByItemContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitGroupByItem(this);
+ }
+};
+
+GroupByItemContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitGroupByItem(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.GroupByItemContext = GroupByItemContext;
+
+SqlParser.prototype.groupByItem = function() {
+
+ var localctx = new GroupByItemContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 250, SqlParser.RULE_groupByItem);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3656;
+ this.expression(0);
+ this.state = 3658;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,530,this._ctx);
+ if(la_===1) {
+ this.state = 3657;
+ localctx.order = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.ASC || _la===SqlParser.DESC)) {
+ localctx.order = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function LimitClauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_limitClause;
+ this.offset = null; // LimitClauseAtomContext
+ this.limit = null; // LimitClauseAtomContext
+ return this;
+}
+
+LimitClauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+LimitClauseContext.prototype.constructor = LimitClauseContext;
+
+LimitClauseContext.prototype.LIMIT = function() {
+ return this.getToken(SqlParser.LIMIT, 0);
+};
+
+LimitClauseContext.prototype.OFFSET = function() {
+ return this.getToken(SqlParser.OFFSET, 0);
+};
+
+LimitClauseContext.prototype.limitClauseAtom = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(LimitClauseAtomContext);
+ } else {
+ return this.getTypedRuleContext(LimitClauseAtomContext,i);
+ }
+};
+
+LimitClauseContext.prototype.COMMA = function() {
+ return this.getToken(SqlParser.COMMA, 0);
+};
+
+LimitClauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterLimitClause(this);
+ }
+};
+
+LimitClauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitLimitClause(this);
+ }
+};
+
+LimitClauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitLimitClause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.LimitClauseContext = LimitClauseContext;
+
+SqlParser.prototype.limitClause = function() {
+
+ var localctx = new LimitClauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 252, SqlParser.RULE_limitClause);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3660;
+ this.match(SqlParser.LIMIT);
+ this.state = 3671;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,532,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 3664;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,531,this._ctx);
+ if(la_===1) {
+ this.state = 3661;
+ localctx.offset = this.limitClauseAtom();
+ this.state = 3662;
+ this.match(SqlParser.COMMA);
+
+ }
+ this.state = 3666;
+ localctx.limit = this.limitClauseAtom();
+ break;
+
+ case 2:
+ this.state = 3667;
+ localctx.limit = this.limitClauseAtom();
+ this.state = 3668;
+ this.match(SqlParser.OFFSET);
+ this.state = 3669;
+ localctx.offset = this.limitClauseAtom();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function LimitClauseAtomContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_limitClauseAtom;
+ return this;
+}
+
+LimitClauseAtomContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+LimitClauseAtomContext.prototype.constructor = LimitClauseAtomContext;
+
+LimitClauseAtomContext.prototype.decimalLiteral = function() {
+ return this.getTypedRuleContext(DecimalLiteralContext,0);
+};
+
+LimitClauseAtomContext.prototype.mysqlVariable = function() {
+ return this.getTypedRuleContext(MysqlVariableContext,0);
+};
+
+LimitClauseAtomContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterLimitClauseAtom(this);
+ }
+};
+
+LimitClauseAtomContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitLimitClauseAtom(this);
+ }
+};
+
+LimitClauseAtomContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitLimitClauseAtom(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.LimitClauseAtomContext = LimitClauseAtomContext;
+
+SqlParser.prototype.limitClauseAtom = function() {
+
+ var localctx = new LimitClauseAtomContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 254, SqlParser.RULE_limitClauseAtom);
+ try {
+ this.state = 3675;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.ZERO_DECIMAL:
+ case SqlParser.ONE_DECIMAL:
+ case SqlParser.TWO_DECIMAL:
+ case SqlParser.DECIMAL_LITERAL:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3673;
+ this.decimalLiteral();
+ break;
+ case SqlParser.LOCAL_ID:
+ case SqlParser.GLOBAL_ID:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 3674;
+ this.mysqlVariable();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function StartTransactionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_startTransaction;
+ return this;
+}
+
+StartTransactionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+StartTransactionContext.prototype.constructor = StartTransactionContext;
+
+StartTransactionContext.prototype.START = function() {
+ return this.getToken(SqlParser.START, 0);
+};
+
+StartTransactionContext.prototype.TRANSACTION = function() {
+ return this.getToken(SqlParser.TRANSACTION, 0);
+};
+
+StartTransactionContext.prototype.transactionMode = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(TransactionModeContext);
+ } else {
+ return this.getTypedRuleContext(TransactionModeContext,i);
+ }
+};
+
+StartTransactionContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+StartTransactionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterStartTransaction(this);
+ }
+};
+
+StartTransactionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitStartTransaction(this);
+ }
+};
+
+StartTransactionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitStartTransaction(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.StartTransactionContext = StartTransactionContext;
+
+SqlParser.prototype.startTransaction = function() {
+
+ var localctx = new StartTransactionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 256, SqlParser.RULE_startTransaction);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3677;
+ this.match(SqlParser.START);
+ this.state = 3678;
+ this.match(SqlParser.TRANSACTION);
+ this.state = 3687;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.READ || _la===SqlParser.WITH) {
+ this.state = 3679;
+ this.transactionMode();
+ this.state = 3684;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 3680;
+ this.match(SqlParser.COMMA);
+ this.state = 3681;
+ this.transactionMode();
+ this.state = 3686;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function BeginWorkContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_beginWork;
+ return this;
+}
+
+BeginWorkContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+BeginWorkContext.prototype.constructor = BeginWorkContext;
+
+BeginWorkContext.prototype.BEGIN = function() {
+ return this.getToken(SqlParser.BEGIN, 0);
+};
+
+BeginWorkContext.prototype.WORK = function() {
+ return this.getToken(SqlParser.WORK, 0);
+};
+
+BeginWorkContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterBeginWork(this);
+ }
+};
+
+BeginWorkContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitBeginWork(this);
+ }
+};
+
+BeginWorkContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitBeginWork(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.BeginWorkContext = BeginWorkContext;
+
+SqlParser.prototype.beginWork = function() {
+
+ var localctx = new BeginWorkContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 258, SqlParser.RULE_beginWork);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3689;
+ this.match(SqlParser.BEGIN);
+ this.state = 3691;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.WORK) {
+ this.state = 3690;
+ this.match(SqlParser.WORK);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function CommitWorkContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_commitWork;
+ this.nochain = null; // Token
+ this.norelease = null; // Token
+ return this;
+}
+
+CommitWorkContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+CommitWorkContext.prototype.constructor = CommitWorkContext;
+
+CommitWorkContext.prototype.COMMIT = function() {
+ return this.getToken(SqlParser.COMMIT, 0);
+};
+
+CommitWorkContext.prototype.WORK = function() {
+ return this.getToken(SqlParser.WORK, 0);
+};
+
+CommitWorkContext.prototype.AND = function() {
+ return this.getToken(SqlParser.AND, 0);
+};
+
+CommitWorkContext.prototype.CHAIN = function() {
+ return this.getToken(SqlParser.CHAIN, 0);
+};
+
+CommitWorkContext.prototype.RELEASE = function() {
+ return this.getToken(SqlParser.RELEASE, 0);
+};
+
+CommitWorkContext.prototype.NO = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.NO);
+ } else {
+ return this.getToken(SqlParser.NO, i);
+ }
+};
+
+
+CommitWorkContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterCommitWork(this);
+ }
+};
+
+CommitWorkContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitCommitWork(this);
+ }
+};
+
+CommitWorkContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitCommitWork(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.CommitWorkContext = CommitWorkContext;
+
+SqlParser.prototype.commitWork = function() {
+
+ var localctx = new CommitWorkContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 260, SqlParser.RULE_commitWork);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3693;
+ this.match(SqlParser.COMMIT);
+ this.state = 3695;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.WORK) {
+ this.state = 3694;
+ this.match(SqlParser.WORK);
+ }
+
+ this.state = 3702;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.AND) {
+ this.state = 3697;
+ this.match(SqlParser.AND);
+ this.state = 3699;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.NO) {
+ this.state = 3698;
+ localctx.nochain = this.match(SqlParser.NO);
+ }
+
+ this.state = 3701;
+ this.match(SqlParser.CHAIN);
+ }
+
+ this.state = 3708;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,541,this._ctx);
+ if(la_===1) {
+ this.state = 3705;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.NO) {
+ this.state = 3704;
+ localctx.norelease = this.match(SqlParser.NO);
+ }
+
+ this.state = 3707;
+ this.match(SqlParser.RELEASE);
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function RollbackWorkContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_rollbackWork;
+ this.nochain = null; // Token
+ this.norelease = null; // Token
+ return this;
+}
+
+RollbackWorkContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+RollbackWorkContext.prototype.constructor = RollbackWorkContext;
+
+RollbackWorkContext.prototype.ROLLBACK = function() {
+ return this.getToken(SqlParser.ROLLBACK, 0);
+};
+
+RollbackWorkContext.prototype.WORK = function() {
+ return this.getToken(SqlParser.WORK, 0);
+};
+
+RollbackWorkContext.prototype.AND = function() {
+ return this.getToken(SqlParser.AND, 0);
+};
+
+RollbackWorkContext.prototype.CHAIN = function() {
+ return this.getToken(SqlParser.CHAIN, 0);
+};
+
+RollbackWorkContext.prototype.RELEASE = function() {
+ return this.getToken(SqlParser.RELEASE, 0);
+};
+
+RollbackWorkContext.prototype.NO = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.NO);
+ } else {
+ return this.getToken(SqlParser.NO, i);
+ }
+};
+
+
+RollbackWorkContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterRollbackWork(this);
+ }
+};
+
+RollbackWorkContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitRollbackWork(this);
+ }
+};
+
+RollbackWorkContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitRollbackWork(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.RollbackWorkContext = RollbackWorkContext;
+
+SqlParser.prototype.rollbackWork = function() {
+
+ var localctx = new RollbackWorkContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 262, SqlParser.RULE_rollbackWork);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3710;
+ this.match(SqlParser.ROLLBACK);
+ this.state = 3712;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.WORK) {
+ this.state = 3711;
+ this.match(SqlParser.WORK);
+ }
+
+ this.state = 3719;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.AND) {
+ this.state = 3714;
+ this.match(SqlParser.AND);
+ this.state = 3716;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.NO) {
+ this.state = 3715;
+ localctx.nochain = this.match(SqlParser.NO);
+ }
+
+ this.state = 3718;
+ this.match(SqlParser.CHAIN);
+ }
+
+ this.state = 3725;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,546,this._ctx);
+ if(la_===1) {
+ this.state = 3722;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.NO) {
+ this.state = 3721;
+ localctx.norelease = this.match(SqlParser.NO);
+ }
+
+ this.state = 3724;
+ this.match(SqlParser.RELEASE);
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function SavepointStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_savepointStatement;
+ return this;
+}
+
+SavepointStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+SavepointStatementContext.prototype.constructor = SavepointStatementContext;
+
+SavepointStatementContext.prototype.SAVEPOINT = function() {
+ return this.getToken(SqlParser.SAVEPOINT, 0);
+};
+
+SavepointStatementContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+SavepointStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSavepointStatement(this);
+ }
+};
+
+SavepointStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSavepointStatement(this);
+ }
+};
+
+SavepointStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSavepointStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.SavepointStatementContext = SavepointStatementContext;
+
+SqlParser.prototype.savepointStatement = function() {
+
+ var localctx = new SavepointStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 264, SqlParser.RULE_savepointStatement);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3727;
+ this.match(SqlParser.SAVEPOINT);
+ this.state = 3728;
+ this.uid();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function RollbackStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_rollbackStatement;
+ return this;
+}
+
+RollbackStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+RollbackStatementContext.prototype.constructor = RollbackStatementContext;
+
+RollbackStatementContext.prototype.ROLLBACK = function() {
+ return this.getToken(SqlParser.ROLLBACK, 0);
+};
+
+RollbackStatementContext.prototype.TO = function() {
+ return this.getToken(SqlParser.TO, 0);
+};
+
+RollbackStatementContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+RollbackStatementContext.prototype.WORK = function() {
+ return this.getToken(SqlParser.WORK, 0);
+};
+
+RollbackStatementContext.prototype.SAVEPOINT = function() {
+ return this.getToken(SqlParser.SAVEPOINT, 0);
+};
+
+RollbackStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterRollbackStatement(this);
+ }
+};
+
+RollbackStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitRollbackStatement(this);
+ }
+};
+
+RollbackStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitRollbackStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.RollbackStatementContext = RollbackStatementContext;
+
+SqlParser.prototype.rollbackStatement = function() {
+
+ var localctx = new RollbackStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 266, SqlParser.RULE_rollbackStatement);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3730;
+ this.match(SqlParser.ROLLBACK);
+ this.state = 3732;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.WORK) {
+ this.state = 3731;
+ this.match(SqlParser.WORK);
+ }
+
+ this.state = 3734;
+ this.match(SqlParser.TO);
+ this.state = 3736;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,548,this._ctx);
+ if(la_===1) {
+ this.state = 3735;
+ this.match(SqlParser.SAVEPOINT);
+
+ }
+ this.state = 3738;
+ this.uid();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function ReleaseStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_releaseStatement;
+ return this;
+}
+
+ReleaseStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+ReleaseStatementContext.prototype.constructor = ReleaseStatementContext;
+
+ReleaseStatementContext.prototype.RELEASE = function() {
+ return this.getToken(SqlParser.RELEASE, 0);
+};
+
+ReleaseStatementContext.prototype.SAVEPOINT = function() {
+ return this.getToken(SqlParser.SAVEPOINT, 0);
+};
+
+ReleaseStatementContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+ReleaseStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterReleaseStatement(this);
+ }
+};
+
+ReleaseStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitReleaseStatement(this);
+ }
+};
+
+ReleaseStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitReleaseStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.ReleaseStatementContext = ReleaseStatementContext;
+
+SqlParser.prototype.releaseStatement = function() {
+
+ var localctx = new ReleaseStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 268, SqlParser.RULE_releaseStatement);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3740;
+ this.match(SqlParser.RELEASE);
+ this.state = 3741;
+ this.match(SqlParser.SAVEPOINT);
+ this.state = 3742;
+ this.uid();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function LockTablesContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_lockTables;
+ return this;
+}
+
+LockTablesContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+LockTablesContext.prototype.constructor = LockTablesContext;
+
+LockTablesContext.prototype.LOCK = function() {
+ return this.getToken(SqlParser.LOCK, 0);
+};
+
+LockTablesContext.prototype.TABLES = function() {
+ return this.getToken(SqlParser.TABLES, 0);
+};
+
+LockTablesContext.prototype.lockTableElement = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(LockTableElementContext);
+ } else {
+ return this.getTypedRuleContext(LockTableElementContext,i);
+ }
+};
+
+LockTablesContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+LockTablesContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterLockTables(this);
+ }
+};
+
+LockTablesContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitLockTables(this);
+ }
+};
+
+LockTablesContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitLockTables(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.LockTablesContext = LockTablesContext;
+
+SqlParser.prototype.lockTables = function() {
+
+ var localctx = new LockTablesContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 270, SqlParser.RULE_lockTables);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3744;
+ this.match(SqlParser.LOCK);
+ this.state = 3745;
+ this.match(SqlParser.TABLES);
+ this.state = 3746;
+ this.lockTableElement();
+ this.state = 3751;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 3747;
+ this.match(SqlParser.COMMA);
+ this.state = 3748;
+ this.lockTableElement();
+ this.state = 3753;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function UnlockTablesContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_unlockTables;
+ return this;
+}
+
+UnlockTablesContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+UnlockTablesContext.prototype.constructor = UnlockTablesContext;
+
+UnlockTablesContext.prototype.UNLOCK = function() {
+ return this.getToken(SqlParser.UNLOCK, 0);
+};
+
+UnlockTablesContext.prototype.TABLES = function() {
+ return this.getToken(SqlParser.TABLES, 0);
+};
+
+UnlockTablesContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterUnlockTables(this);
+ }
+};
+
+UnlockTablesContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitUnlockTables(this);
+ }
+};
+
+UnlockTablesContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitUnlockTables(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.UnlockTablesContext = UnlockTablesContext;
+
+SqlParser.prototype.unlockTables = function() {
+
+ var localctx = new UnlockTablesContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 272, SqlParser.RULE_unlockTables);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3754;
+ this.match(SqlParser.UNLOCK);
+ this.state = 3755;
+ this.match(SqlParser.TABLES);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function SetAutocommitStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_setAutocommitStatement;
+ this.autocommitValue = null; // Token
+ return this;
+}
+
+SetAutocommitStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+SetAutocommitStatementContext.prototype.constructor = SetAutocommitStatementContext;
+
+SetAutocommitStatementContext.prototype.SET = function() {
+ return this.getToken(SqlParser.SET, 0);
+};
+
+SetAutocommitStatementContext.prototype.AUTOCOMMIT = function() {
+ return this.getToken(SqlParser.AUTOCOMMIT, 0);
+};
+
+SetAutocommitStatementContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+
+SetAutocommitStatementContext.prototype.ZERO_DECIMAL = function() {
+ return this.getToken(SqlParser.ZERO_DECIMAL, 0);
+};
+
+SetAutocommitStatementContext.prototype.ONE_DECIMAL = function() {
+ return this.getToken(SqlParser.ONE_DECIMAL, 0);
+};
+
+SetAutocommitStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSetAutocommitStatement(this);
+ }
+};
+
+SetAutocommitStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSetAutocommitStatement(this);
+ }
+};
+
+SetAutocommitStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSetAutocommitStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.SetAutocommitStatementContext = SetAutocommitStatementContext;
+
+SqlParser.prototype.setAutocommitStatement = function() {
+
+ var localctx = new SetAutocommitStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 274, SqlParser.RULE_setAutocommitStatement);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3757;
+ this.match(SqlParser.SET);
+ this.state = 3758;
+ this.match(SqlParser.AUTOCOMMIT);
+ this.state = 3759;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ this.state = 3760;
+ localctx.autocommitValue = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.ZERO_DECIMAL || _la===SqlParser.ONE_DECIMAL)) {
+ localctx.autocommitValue = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function SetTransactionStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_setTransactionStatement;
+ this.transactionContext = null; // Token
+ return this;
+}
+
+SetTransactionStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+SetTransactionStatementContext.prototype.constructor = SetTransactionStatementContext;
+
+SetTransactionStatementContext.prototype.SET = function() {
+ return this.getToken(SqlParser.SET, 0);
+};
+
+SetTransactionStatementContext.prototype.TRANSACTION = function() {
+ return this.getToken(SqlParser.TRANSACTION, 0);
+};
+
+SetTransactionStatementContext.prototype.transactionOption = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(TransactionOptionContext);
+ } else {
+ return this.getTypedRuleContext(TransactionOptionContext,i);
+ }
+};
+
+SetTransactionStatementContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+SetTransactionStatementContext.prototype.GLOBAL = function() {
+ return this.getToken(SqlParser.GLOBAL, 0);
+};
+
+SetTransactionStatementContext.prototype.SESSION = function() {
+ return this.getToken(SqlParser.SESSION, 0);
+};
+
+SetTransactionStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSetTransactionStatement(this);
+ }
+};
+
+SetTransactionStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSetTransactionStatement(this);
+ }
+};
+
+SetTransactionStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSetTransactionStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.SetTransactionStatementContext = SetTransactionStatementContext;
+
+SqlParser.prototype.setTransactionStatement = function() {
+
+ var localctx = new SetTransactionStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 276, SqlParser.RULE_setTransactionStatement);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3762;
+ this.match(SqlParser.SET);
+ this.state = 3764;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.GLOBAL || _la===SqlParser.SESSION) {
+ this.state = 3763;
+ localctx.transactionContext = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.GLOBAL || _la===SqlParser.SESSION)) {
+ localctx.transactionContext = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 3766;
+ this.match(SqlParser.TRANSACTION);
+ this.state = 3767;
+ this.transactionOption();
+ this.state = 3772;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 3768;
+ this.match(SqlParser.COMMA);
+ this.state = 3769;
+ this.transactionOption();
+ this.state = 3774;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function TransactionModeContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_transactionMode;
+ return this;
+}
+
+TransactionModeContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+TransactionModeContext.prototype.constructor = TransactionModeContext;
+
+TransactionModeContext.prototype.WITH = function() {
+ return this.getToken(SqlParser.WITH, 0);
+};
+
+TransactionModeContext.prototype.CONSISTENT = function() {
+ return this.getToken(SqlParser.CONSISTENT, 0);
+};
+
+TransactionModeContext.prototype.SNAPSHOT = function() {
+ return this.getToken(SqlParser.SNAPSHOT, 0);
+};
+
+TransactionModeContext.prototype.READ = function() {
+ return this.getToken(SqlParser.READ, 0);
+};
+
+TransactionModeContext.prototype.WRITE = function() {
+ return this.getToken(SqlParser.WRITE, 0);
+};
+
+TransactionModeContext.prototype.ONLY = function() {
+ return this.getToken(SqlParser.ONLY, 0);
+};
+
+TransactionModeContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterTransactionMode(this);
+ }
+};
+
+TransactionModeContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitTransactionMode(this);
+ }
+};
+
+TransactionModeContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitTransactionMode(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.TransactionModeContext = TransactionModeContext;
+
+SqlParser.prototype.transactionMode = function() {
+
+ var localctx = new TransactionModeContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 278, SqlParser.RULE_transactionMode);
+ try {
+ this.state = 3782;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,552,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3775;
+ this.match(SqlParser.WITH);
+ this.state = 3776;
+ this.match(SqlParser.CONSISTENT);
+ this.state = 3777;
+ this.match(SqlParser.SNAPSHOT);
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 3778;
+ this.match(SqlParser.READ);
+ this.state = 3779;
+ this.match(SqlParser.WRITE);
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 3780;
+ this.match(SqlParser.READ);
+ this.state = 3781;
+ this.match(SqlParser.ONLY);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function LockTableElementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_lockTableElement;
+ return this;
+}
+
+LockTableElementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+LockTableElementContext.prototype.constructor = LockTableElementContext;
+
+LockTableElementContext.prototype.tableName = function() {
+ return this.getTypedRuleContext(TableNameContext,0);
+};
+
+LockTableElementContext.prototype.lockAction = function() {
+ return this.getTypedRuleContext(LockActionContext,0);
+};
+
+LockTableElementContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+LockTableElementContext.prototype.AS = function() {
+ return this.getToken(SqlParser.AS, 0);
+};
+
+LockTableElementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterLockTableElement(this);
+ }
+};
+
+LockTableElementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitLockTableElement(this);
+ }
+};
+
+LockTableElementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitLockTableElement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.LockTableElementContext = LockTableElementContext;
+
+SqlParser.prototype.lockTableElement = function() {
+
+ var localctx = new LockTableElementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 280, SqlParser.RULE_lockTableElement);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3784;
+ this.tableName();
+ this.state = 3789;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.AS || ((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (SqlParser.CURRENT - 32)) | (1 << (SqlParser.DATABASE - 32)) | (1 << (SqlParser.DIAGNOSTICS - 32)))) !== 0) || _la===SqlParser.LEFT || _la===SqlParser.NUMBER || _la===SqlParser.RIGHT || _la===SqlParser.STACKED || ((((_la - 199)) & ~0x1f) == 0 && ((1 << (_la - 199)) & ((1 << (SqlParser.DATE - 199)) | (1 << (SqlParser.TIME - 199)) | (1 << (SqlParser.TIMESTAMP - 199)) | (1 << (SqlParser.DATETIME - 199)) | (1 << (SqlParser.YEAR - 199)) | (1 << (SqlParser.TEXT - 199)) | (1 << (SqlParser.ENUM - 199)) | (1 << (SqlParser.SERIAL - 199)))) !== 0) || ((((_la - 233)) & ~0x1f) == 0 && ((1 << (_la - 233)) & ((1 << (SqlParser.JSON_VALID - 233)) | (1 << (SqlParser.JSON_SCHEMA_VALID - 233)) | (1 << (SqlParser.COUNT - 233)) | (1 << (SqlParser.POSITION - 233)))) !== 0) || ((((_la - 270)) & ~0x1f) == 0 && ((1 << (_la - 270)) & ((1 << (SqlParser.ACCOUNT - 270)) | (1 << (SqlParser.ACTION - 270)) | (1 << (SqlParser.AFTER - 270)) | (1 << (SqlParser.AGGREGATE - 270)) | (1 << (SqlParser.ALGORITHM - 270)) | (1 << (SqlParser.ANY - 270)) | (1 << (SqlParser.AT - 270)) | (1 << (SqlParser.AUTHORS - 270)) | (1 << (SqlParser.AUTOCOMMIT - 270)) | (1 << (SqlParser.AUTOEXTEND_SIZE - 270)) | (1 << (SqlParser.AUTO_INCREMENT - 270)) | (1 << (SqlParser.AVG_ROW_LENGTH - 270)) | (1 << (SqlParser.BEGIN - 270)) | (1 << (SqlParser.BINLOG - 270)) | (1 << (SqlParser.BIT - 270)) | (1 << (SqlParser.BLOCK - 270)) | (1 << (SqlParser.BOOL - 270)) | (1 << (SqlParser.BOOLEAN - 270)) | (1 << (SqlParser.BTREE - 270)) | (1 << (SqlParser.CACHE - 270)) | (1 << (SqlParser.CASCADED - 270)) | (1 << (SqlParser.CHAIN - 270)) | (1 << (SqlParser.CHANGED - 270)) | (1 << (SqlParser.CHANNEL - 270)) | (1 << (SqlParser.CHECKSUM - 270)) | (1 << (SqlParser.PAGE_CHECKSUM - 270)) | (1 << (SqlParser.CIPHER - 270)) | (1 << (SqlParser.CLASS_ORIGIN - 270)) | (1 << (SqlParser.CLIENT - 270)) | (1 << (SqlParser.CLOSE - 270)) | (1 << (SqlParser.COALESCE - 270)) | (1 << (SqlParser.CODE - 270)))) !== 0) || ((((_la - 302)) & ~0x1f) == 0 && ((1 << (_la - 302)) & ((1 << (SqlParser.COLUMNS - 302)) | (1 << (SqlParser.COLUMN_FORMAT - 302)) | (1 << (SqlParser.COLUMN_NAME - 302)) | (1 << (SqlParser.COMMENT - 302)) | (1 << (SqlParser.COMMIT - 302)) | (1 << (SqlParser.COMPACT - 302)) | (1 << (SqlParser.COMPLETION - 302)) | (1 << (SqlParser.COMPRESSED - 302)) | (1 << (SqlParser.COMPRESSION - 302)) | (1 << (SqlParser.CONCURRENT - 302)) | (1 << (SqlParser.CONNECTION - 302)) | (1 << (SqlParser.CONSISTENT - 302)) | (1 << (SqlParser.CONSTRAINT_CATALOG - 302)) | (1 << (SqlParser.CONSTRAINT_SCHEMA - 302)) | (1 << (SqlParser.CONSTRAINT_NAME - 302)) | (1 << (SqlParser.CONTAINS - 302)) | (1 << (SqlParser.CONTEXT - 302)) | (1 << (SqlParser.CONTRIBUTORS - 302)) | (1 << (SqlParser.COPY - 302)) | (1 << (SqlParser.CPU - 302)) | (1 << (SqlParser.CURSOR_NAME - 302)) | (1 << (SqlParser.DATA - 302)) | (1 << (SqlParser.DATAFILE - 302)) | (1 << (SqlParser.DEALLOCATE - 302)) | (1 << (SqlParser.DEFAULT_AUTH - 302)) | (1 << (SqlParser.DEFINER - 302)) | (1 << (SqlParser.DELAY_KEY_WRITE - 302)) | (1 << (SqlParser.DES_KEY_FILE - 302)) | (1 << (SqlParser.DIRECTORY - 302)) | (1 << (SqlParser.DISABLE - 302)) | (1 << (SqlParser.DISCARD - 302)) | (1 << (SqlParser.DISK - 302)))) !== 0) || ((((_la - 334)) & ~0x1f) == 0 && ((1 << (_la - 334)) & ((1 << (SqlParser.DO - 334)) | (1 << (SqlParser.DUMPFILE - 334)) | (1 << (SqlParser.DUPLICATE - 334)) | (1 << (SqlParser.DYNAMIC - 334)) | (1 << (SqlParser.ENABLE - 334)) | (1 << (SqlParser.ENCRYPTION - 334)) | (1 << (SqlParser.END - 334)) | (1 << (SqlParser.ENDS - 334)) | (1 << (SqlParser.ENGINE - 334)) | (1 << (SqlParser.ENGINES - 334)) | (1 << (SqlParser.ERROR - 334)) | (1 << (SqlParser.ERRORS - 334)) | (1 << (SqlParser.ESCAPE - 334)) | (1 << (SqlParser.EVEN - 334)) | (1 << (SqlParser.EVENT - 334)) | (1 << (SqlParser.EVENTS - 334)) | (1 << (SqlParser.EVERY - 334)) | (1 << (SqlParser.EXCHANGE - 334)) | (1 << (SqlParser.EXCLUSIVE - 334)) | (1 << (SqlParser.EXPIRE - 334)) | (1 << (SqlParser.EXPORT - 334)) | (1 << (SqlParser.EXTENDED - 334)) | (1 << (SqlParser.EXTENT_SIZE - 334)) | (1 << (SqlParser.FAST - 334)) | (1 << (SqlParser.FAULTS - 334)) | (1 << (SqlParser.FIELDS - 334)) | (1 << (SqlParser.FILE_BLOCK_SIZE - 334)) | (1 << (SqlParser.FILTER - 334)) | (1 << (SqlParser.FIRST - 334)) | (1 << (SqlParser.FIXED - 334)) | (1 << (SqlParser.FLUSH - 334)) | (1 << (SqlParser.FOLLOWS - 334)))) !== 0) || ((((_la - 366)) & ~0x1f) == 0 && ((1 << (_la - 366)) & ((1 << (SqlParser.FOUND - 366)) | (1 << (SqlParser.FULL - 366)) | (1 << (SqlParser.FUNCTION - 366)) | (1 << (SqlParser.GENERAL - 366)) | (1 << (SqlParser.GLOBAL - 366)) | (1 << (SqlParser.GRANTS - 366)) | (1 << (SqlParser.GROUP_REPLICATION - 366)) | (1 << (SqlParser.HANDLER - 366)) | (1 << (SqlParser.HASH - 366)) | (1 << (SqlParser.HELP - 366)) | (1 << (SqlParser.HOST - 366)) | (1 << (SqlParser.HOSTS - 366)) | (1 << (SqlParser.IDENTIFIED - 366)) | (1 << (SqlParser.IGNORE_SERVER_IDS - 366)) | (1 << (SqlParser.IMPORT - 366)) | (1 << (SqlParser.INDEXES - 366)) | (1 << (SqlParser.INITIAL_SIZE - 366)) | (1 << (SqlParser.INPLACE - 366)) | (1 << (SqlParser.INSERT_METHOD - 366)) | (1 << (SqlParser.INSTALL - 366)) | (1 << (SqlParser.INSTANCE - 366)) | (1 << (SqlParser.INVISIBLE - 366)) | (1 << (SqlParser.INVOKER - 366)) | (1 << (SqlParser.IO - 366)) | (1 << (SqlParser.IO_THREAD - 366)) | (1 << (SqlParser.IPC - 366)) | (1 << (SqlParser.ISOLATION - 366)) | (1 << (SqlParser.ISSUER - 366)) | (1 << (SqlParser.JSON - 366)) | (1 << (SqlParser.KEY_BLOCK_SIZE - 366)) | (1 << (SqlParser.LANGUAGE - 366)) | (1 << (SqlParser.LAST - 366)))) !== 0) || ((((_la - 398)) & ~0x1f) == 0 && ((1 << (_la - 398)) & ((1 << (SqlParser.LEAVES - 398)) | (1 << (SqlParser.LESS - 398)) | (1 << (SqlParser.LEVEL - 398)) | (1 << (SqlParser.LIST - 398)) | (1 << (SqlParser.LOCAL - 398)) | (1 << (SqlParser.LOGFILE - 398)) | (1 << (SqlParser.LOGS - 398)) | (1 << (SqlParser.MASTER - 398)) | (1 << (SqlParser.MASTER_AUTO_POSITION - 398)) | (1 << (SqlParser.MASTER_CONNECT_RETRY - 398)) | (1 << (SqlParser.MASTER_DELAY - 398)) | (1 << (SqlParser.MASTER_HEARTBEAT_PERIOD - 398)) | (1 << (SqlParser.MASTER_HOST - 398)) | (1 << (SqlParser.MASTER_LOG_FILE - 398)) | (1 << (SqlParser.MASTER_LOG_POS - 398)) | (1 << (SqlParser.MASTER_PASSWORD - 398)) | (1 << (SqlParser.MASTER_PORT - 398)) | (1 << (SqlParser.MASTER_RETRY_COUNT - 398)) | (1 << (SqlParser.MASTER_SSL - 398)) | (1 << (SqlParser.MASTER_SSL_CA - 398)) | (1 << (SqlParser.MASTER_SSL_CAPATH - 398)) | (1 << (SqlParser.MASTER_SSL_CERT - 398)) | (1 << (SqlParser.MASTER_SSL_CIPHER - 398)) | (1 << (SqlParser.MASTER_SSL_CRL - 398)) | (1 << (SqlParser.MASTER_SSL_CRLPATH - 398)) | (1 << (SqlParser.MASTER_SSL_KEY - 398)) | (1 << (SqlParser.MASTER_TLS_VERSION - 398)) | (1 << (SqlParser.MASTER_USER - 398)) | (1 << (SqlParser.MAX_CONNECTIONS_PER_HOUR - 398)) | (1 << (SqlParser.MAX_QUERIES_PER_HOUR - 398)) | (1 << (SqlParser.MAX_ROWS - 398)) | (1 << (SqlParser.MAX_SIZE - 398)))) !== 0) || ((((_la - 430)) & ~0x1f) == 0 && ((1 << (_la - 430)) & ((1 << (SqlParser.MAX_UPDATES_PER_HOUR - 430)) | (1 << (SqlParser.MAX_USER_CONNECTIONS - 430)) | (1 << (SqlParser.MEDIUM - 430)) | (1 << (SqlParser.MERGE - 430)) | (1 << (SqlParser.MESSAGE_TEXT - 430)) | (1 << (SqlParser.MID - 430)) | (1 << (SqlParser.MIGRATE - 430)) | (1 << (SqlParser.MIN_ROWS - 430)) | (1 << (SqlParser.MODE - 430)) | (1 << (SqlParser.MODIFY - 430)) | (1 << (SqlParser.MUTEX - 430)) | (1 << (SqlParser.MYSQL - 430)) | (1 << (SqlParser.MYSQL_ERRNO - 430)) | (1 << (SqlParser.NAME - 430)) | (1 << (SqlParser.NAMES - 430)) | (1 << (SqlParser.NCHAR - 430)) | (1 << (SqlParser.NEVER - 430)) | (1 << (SqlParser.NEXT - 430)) | (1 << (SqlParser.NO - 430)) | (1 << (SqlParser.NODEGROUP - 430)) | (1 << (SqlParser.NONE - 430)) | (1 << (SqlParser.OFFLINE - 430)) | (1 << (SqlParser.OFFSET - 430)) | (1 << (SqlParser.OJ - 430)) | (1 << (SqlParser.OLD_PASSWORD - 430)) | (1 << (SqlParser.ONE - 430)) | (1 << (SqlParser.ONLINE - 430)) | (1 << (SqlParser.ONLY - 430)) | (1 << (SqlParser.OPEN - 430)) | (1 << (SqlParser.OPTIMIZER_COSTS - 430)) | (1 << (SqlParser.OPTIONS - 430)) | (1 << (SqlParser.OWNER - 430)))) !== 0) || ((((_la - 462)) & ~0x1f) == 0 && ((1 << (_la - 462)) & ((1 << (SqlParser.PACK_KEYS - 462)) | (1 << (SqlParser.PAGE - 462)) | (1 << (SqlParser.PARSER - 462)) | (1 << (SqlParser.PARTIAL - 462)) | (1 << (SqlParser.PARTITIONING - 462)) | (1 << (SqlParser.PARTITIONS - 462)) | (1 << (SqlParser.PASSWORD - 462)) | (1 << (SqlParser.PHASE - 462)) | (1 << (SqlParser.PLUGIN - 462)) | (1 << (SqlParser.PLUGIN_DIR - 462)) | (1 << (SqlParser.PLUGINS - 462)) | (1 << (SqlParser.PORT - 462)) | (1 << (SqlParser.PRECEDES - 462)) | (1 << (SqlParser.PREPARE - 462)) | (1 << (SqlParser.PRESERVE - 462)) | (1 << (SqlParser.PREV - 462)) | (1 << (SqlParser.PROCESSLIST - 462)) | (1 << (SqlParser.PROFILE - 462)) | (1 << (SqlParser.PROFILES - 462)) | (1 << (SqlParser.PROXY - 462)) | (1 << (SqlParser.QUERY - 462)) | (1 << (SqlParser.QUICK - 462)) | (1 << (SqlParser.REBUILD - 462)) | (1 << (SqlParser.RECOVER - 462)) | (1 << (SqlParser.REDO_BUFFER_SIZE - 462)) | (1 << (SqlParser.REDUNDANT - 462)) | (1 << (SqlParser.RELAY - 462)) | (1 << (SqlParser.RELAY_LOG_FILE - 462)) | (1 << (SqlParser.RELAY_LOG_POS - 462)) | (1 << (SqlParser.RELAYLOG - 462)) | (1 << (SqlParser.REMOVE - 462)) | (1 << (SqlParser.REORGANIZE - 462)))) !== 0) || ((((_la - 494)) & ~0x1f) == 0 && ((1 << (_la - 494)) & ((1 << (SqlParser.REPAIR - 494)) | (1 << (SqlParser.REPLICATE_DO_DB - 494)) | (1 << (SqlParser.REPLICATE_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_DB - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATE_REWRITE_DB - 494)) | (1 << (SqlParser.REPLICATE_WILD_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_WILD_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATION - 494)) | (1 << (SqlParser.RESET - 494)) | (1 << (SqlParser.RESUME - 494)) | (1 << (SqlParser.RETURNED_SQLSTATE - 494)) | (1 << (SqlParser.RETURNS - 494)) | (1 << (SqlParser.ROLE - 494)) | (1 << (SqlParser.ROLLBACK - 494)) | (1 << (SqlParser.ROLLUP - 494)) | (1 << (SqlParser.ROTATE - 494)) | (1 << (SqlParser.ROW - 494)) | (1 << (SqlParser.ROWS - 494)) | (1 << (SqlParser.ROW_FORMAT - 494)) | (1 << (SqlParser.SAVEPOINT - 494)) | (1 << (SqlParser.SCHEDULE - 494)) | (1 << (SqlParser.SECURITY - 494)) | (1 << (SqlParser.SERVER - 494)) | (1 << (SqlParser.SESSION - 494)) | (1 << (SqlParser.SHARE - 494)) | (1 << (SqlParser.SHARED - 494)) | (1 << (SqlParser.SIGNED - 494)) | (1 << (SqlParser.SIMPLE - 494)) | (1 << (SqlParser.SLAVE - 494)) | (1 << (SqlParser.SLOW - 494)) | (1 << (SqlParser.SNAPSHOT - 494)))) !== 0) || ((((_la - 526)) & ~0x1f) == 0 && ((1 << (_la - 526)) & ((1 << (SqlParser.SOCKET - 526)) | (1 << (SqlParser.SOME - 526)) | (1 << (SqlParser.SONAME - 526)) | (1 << (SqlParser.SOUNDS - 526)) | (1 << (SqlParser.SOURCE - 526)) | (1 << (SqlParser.SQL_AFTER_GTIDS - 526)) | (1 << (SqlParser.SQL_AFTER_MTS_GAPS - 526)) | (1 << (SqlParser.SQL_BEFORE_GTIDS - 526)) | (1 << (SqlParser.SQL_BUFFER_RESULT - 526)) | (1 << (SqlParser.SQL_CACHE - 526)) | (1 << (SqlParser.SQL_NO_CACHE - 526)) | (1 << (SqlParser.SQL_THREAD - 526)) | (1 << (SqlParser.START - 526)) | (1 << (SqlParser.STARTS - 526)) | (1 << (SqlParser.STATS_AUTO_RECALC - 526)) | (1 << (SqlParser.STATS_PERSISTENT - 526)) | (1 << (SqlParser.STATS_SAMPLE_PAGES - 526)) | (1 << (SqlParser.STATUS - 526)) | (1 << (SqlParser.STOP - 526)) | (1 << (SqlParser.STORAGE - 526)) | (1 << (SqlParser.STRING - 526)) | (1 << (SqlParser.SUBCLASS_ORIGIN - 526)) | (1 << (SqlParser.SUBJECT - 526)) | (1 << (SqlParser.SUBPARTITION - 526)) | (1 << (SqlParser.SUBPARTITIONS - 526)) | (1 << (SqlParser.SUSPEND - 526)) | (1 << (SqlParser.SWAPS - 526)) | (1 << (SqlParser.SWITCHES - 526)) | (1 << (SqlParser.TABLE_NAME - 526)) | (1 << (SqlParser.TABLESPACE - 526)) | (1 << (SqlParser.TEMPORARY - 526)))) !== 0) || ((((_la - 558)) & ~0x1f) == 0 && ((1 << (_la - 558)) & ((1 << (SqlParser.TEMPTABLE - 558)) | (1 << (SqlParser.THAN - 558)) | (1 << (SqlParser.TRADITIONAL - 558)) | (1 << (SqlParser.TRANSACTION - 558)) | (1 << (SqlParser.TRANSACTIONAL - 558)) | (1 << (SqlParser.TRIGGERS - 558)) | (1 << (SqlParser.TRUNCATE - 558)) | (1 << (SqlParser.UNDEFINED - 558)) | (1 << (SqlParser.UNDOFILE - 558)) | (1 << (SqlParser.UNDO_BUFFER_SIZE - 558)) | (1 << (SqlParser.UNINSTALL - 558)) | (1 << (SqlParser.UNKNOWN - 558)) | (1 << (SqlParser.UNTIL - 558)) | (1 << (SqlParser.UPGRADE - 558)) | (1 << (SqlParser.USER - 558)) | (1 << (SqlParser.USE_FRM - 558)) | (1 << (SqlParser.USER_RESOURCES - 558)) | (1 << (SqlParser.VALIDATION - 558)) | (1 << (SqlParser.VALUE - 558)) | (1 << (SqlParser.VARIABLES - 558)) | (1 << (SqlParser.VIEW - 558)) | (1 << (SqlParser.VISIBLE - 558)) | (1 << (SqlParser.WAIT - 558)) | (1 << (SqlParser.WARNINGS - 558)) | (1 << (SqlParser.WITHOUT - 558)) | (1 << (SqlParser.WORK - 558)) | (1 << (SqlParser.WRAPPER - 558)) | (1 << (SqlParser.X509 - 558)) | (1 << (SqlParser.XA - 558)) | (1 << (SqlParser.XML - 558)))) !== 0) || ((((_la - 593)) & ~0x1f) == 0 && ((1 << (_la - 593)) & ((1 << (SqlParser.INTERNAL - 593)) | (1 << (SqlParser.QUARTER - 593)) | (1 << (SqlParser.MONTH - 593)) | (1 << (SqlParser.DAY - 593)) | (1 << (SqlParser.HOUR - 593)) | (1 << (SqlParser.MINUTE - 593)) | (1 << (SqlParser.WEEK - 593)) | (1 << (SqlParser.SECOND - 593)) | (1 << (SqlParser.MICROSECOND - 593)) | (1 << (SqlParser.TABLES - 593)) | (1 << (SqlParser.ROUTINE - 593)) | (1 << (SqlParser.EXECUTE - 593)) | (1 << (SqlParser.FILE - 593)) | (1 << (SqlParser.PROCESS - 593)) | (1 << (SqlParser.RELOAD - 593)) | (1 << (SqlParser.SHUTDOWN - 593)) | (1 << (SqlParser.SUPER - 593)) | (1 << (SqlParser.PRIVILEGES - 593)) | (1 << (SqlParser.AUDIT_ADMIN - 593)) | (1 << (SqlParser.BACKUP_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ENCRYPTION_ADMIN - 593)) | (1 << (SqlParser.CLONE_ADMIN - 593)) | (1 << (SqlParser.CONNECTION_ADMIN - 593)) | (1 << (SqlParser.ENCRYPTION_KEY_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_USER - 593)) | (1 << (SqlParser.GROUP_REPLICATION_ADMIN - 593)) | (1 << (SqlParser.INNODB_REDO_LOG_ARCHIVE - 593)) | (1 << (SqlParser.NDB_STORED_USER - 593)) | (1 << (SqlParser.PERSIST_RO_VARIABLES_ADMIN - 593)))) !== 0) || ((((_la - 625)) & ~0x1f) == 0 && ((1 << (_la - 625)) & ((1 << (SqlParser.REPLICATION_APPLIER - 625)) | (1 << (SqlParser.REPLICATION_SLAVE_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_USER - 625)) | (1 << (SqlParser.ROLE_ADMIN - 625)) | (1 << (SqlParser.SESSION_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.SET_USER_ID - 625)) | (1 << (SqlParser.SHOW_ROUTINE - 625)) | (1 << (SqlParser.SYSTEM_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.TABLE_ENCRYPTION_ADMIN - 625)) | (1 << (SqlParser.VERSION_TOKEN_ADMIN - 625)) | (1 << (SqlParser.XA_RECOVER_ADMIN - 625)) | (1 << (SqlParser.ARMSCII8 - 625)) | (1 << (SqlParser.ASCII - 625)) | (1 << (SqlParser.BIG5 - 625)) | (1 << (SqlParser.CP1250 - 625)) | (1 << (SqlParser.CP1251 - 625)) | (1 << (SqlParser.CP1256 - 625)) | (1 << (SqlParser.CP1257 - 625)) | (1 << (SqlParser.CP850 - 625)) | (1 << (SqlParser.CP852 - 625)) | (1 << (SqlParser.CP866 - 625)) | (1 << (SqlParser.CP932 - 625)) | (1 << (SqlParser.DEC8 - 625)) | (1 << (SqlParser.EUCJPMS - 625)) | (1 << (SqlParser.EUCKR - 625)) | (1 << (SqlParser.GB2312 - 625)) | (1 << (SqlParser.GBK - 625)) | (1 << (SqlParser.GEOSTD8 - 625)) | (1 << (SqlParser.GREEK - 625)) | (1 << (SqlParser.HEBREW - 625)) | (1 << (SqlParser.HP8 - 625)))) !== 0) || ((((_la - 657)) & ~0x1f) == 0 && ((1 << (_la - 657)) & ((1 << (SqlParser.KEYBCS2 - 657)) | (1 << (SqlParser.KOI8R - 657)) | (1 << (SqlParser.KOI8U - 657)) | (1 << (SqlParser.LATIN1 - 657)) | (1 << (SqlParser.LATIN2 - 657)) | (1 << (SqlParser.LATIN5 - 657)) | (1 << (SqlParser.LATIN7 - 657)) | (1 << (SqlParser.MACCE - 657)) | (1 << (SqlParser.MACROMAN - 657)) | (1 << (SqlParser.SJIS - 657)) | (1 << (SqlParser.SWE7 - 657)) | (1 << (SqlParser.TIS620 - 657)) | (1 << (SqlParser.UCS2 - 657)) | (1 << (SqlParser.UJIS - 657)) | (1 << (SqlParser.UTF16 - 657)) | (1 << (SqlParser.UTF16LE - 657)) | (1 << (SqlParser.UTF32 - 657)) | (1 << (SqlParser.UTF8 - 657)) | (1 << (SqlParser.UTF8MB3 - 657)) | (1 << (SqlParser.UTF8MB4 - 657)) | (1 << (SqlParser.ARCHIVE - 657)) | (1 << (SqlParser.BLACKHOLE - 657)) | (1 << (SqlParser.CSV - 657)) | (1 << (SqlParser.FEDERATED - 657)) | (1 << (SqlParser.INNODB - 657)) | (1 << (SqlParser.MEMORY - 657)) | (1 << (SqlParser.MRG_MYISAM - 657)) | (1 << (SqlParser.MYISAM - 657)) | (1 << (SqlParser.NDB - 657)) | (1 << (SqlParser.NDBCLUSTER - 657)) | (1 << (SqlParser.PERFORMANCE_SCHEMA - 657)) | (1 << (SqlParser.TOKUDB - 657)))) !== 0) || ((((_la - 689)) & ~0x1f) == 0 && ((1 << (_la - 689)) & ((1 << (SqlParser.REPEATABLE - 689)) | (1 << (SqlParser.COMMITTED - 689)) | (1 << (SqlParser.UNCOMMITTED - 689)) | (1 << (SqlParser.SERIALIZABLE - 689)) | (1 << (SqlParser.GEOMETRYCOLLECTION - 689)) | (1 << (SqlParser.LINESTRING - 689)) | (1 << (SqlParser.MULTILINESTRING - 689)) | (1 << (SqlParser.MULTIPOINT - 689)) | (1 << (SqlParser.MULTIPOLYGON - 689)) | (1 << (SqlParser.POINT - 689)) | (1 << (SqlParser.POLYGON - 689)) | (1 << (SqlParser.ABS - 689)) | (1 << (SqlParser.ACOS - 689)) | (1 << (SqlParser.ADDDATE - 689)) | (1 << (SqlParser.ADDTIME - 689)) | (1 << (SqlParser.AES_DECRYPT - 689)) | (1 << (SqlParser.AES_ENCRYPT - 689)) | (1 << (SqlParser.AREA - 689)) | (1 << (SqlParser.ASBINARY - 689)) | (1 << (SqlParser.ASIN - 689)) | (1 << (SqlParser.ASTEXT - 689)) | (1 << (SqlParser.ASWKB - 689)) | (1 << (SqlParser.ASWKT - 689)) | (1 << (SqlParser.ASYMMETRIC_DECRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_DERIVE - 689)) | (1 << (SqlParser.ASYMMETRIC_ENCRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_SIGN - 689)) | (1 << (SqlParser.ASYMMETRIC_VERIFY - 689)) | (1 << (SqlParser.ATAN - 689)) | (1 << (SqlParser.ATAN2 - 689)))) !== 0) || ((((_la - 721)) & ~0x1f) == 0 && ((1 << (_la - 721)) & ((1 << (SqlParser.BENCHMARK - 721)) | (1 << (SqlParser.BIN - 721)) | (1 << (SqlParser.BIT_COUNT - 721)) | (1 << (SqlParser.BIT_LENGTH - 721)) | (1 << (SqlParser.BUFFER - 721)) | (1 << (SqlParser.CATALOG_NAME - 721)) | (1 << (SqlParser.CEIL - 721)) | (1 << (SqlParser.CEILING - 721)) | (1 << (SqlParser.CENTROID - 721)) | (1 << (SqlParser.CHARACTER_LENGTH - 721)) | (1 << (SqlParser.CHARSET - 721)) | (1 << (SqlParser.CHAR_LENGTH - 721)) | (1 << (SqlParser.COERCIBILITY - 721)) | (1 << (SqlParser.COLLATION - 721)) | (1 << (SqlParser.COMPRESS - 721)) | (1 << (SqlParser.CONCAT - 721)) | (1 << (SqlParser.CONCAT_WS - 721)) | (1 << (SqlParser.CONNECTION_ID - 721)) | (1 << (SqlParser.CONV - 721)) | (1 << (SqlParser.CONVERT_TZ - 721)) | (1 << (SqlParser.COS - 721)) | (1 << (SqlParser.COT - 721)) | (1 << (SqlParser.CRC32 - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PRIV_KEY - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PUB_KEY - 721)) | (1 << (SqlParser.CREATE_DH_PARAMETERS - 721)) | (1 << (SqlParser.CREATE_DIGEST - 721)) | (1 << (SqlParser.CROSSES - 721)) | (1 << (SqlParser.DATEDIFF - 721)) | (1 << (SqlParser.DATE_FORMAT - 721)) | (1 << (SqlParser.DAYNAME - 721)) | (1 << (SqlParser.DAYOFMONTH - 721)))) !== 0) || ((((_la - 753)) & ~0x1f) == 0 && ((1 << (_la - 753)) & ((1 << (SqlParser.DAYOFWEEK - 753)) | (1 << (SqlParser.DAYOFYEAR - 753)) | (1 << (SqlParser.DECODE - 753)) | (1 << (SqlParser.DEGREES - 753)) | (1 << (SqlParser.DES_DECRYPT - 753)) | (1 << (SqlParser.DES_ENCRYPT - 753)) | (1 << (SqlParser.DIMENSION - 753)) | (1 << (SqlParser.DISJOINT - 753)) | (1 << (SqlParser.ELT - 753)) | (1 << (SqlParser.ENCODE - 753)) | (1 << (SqlParser.ENCRYPT - 753)) | (1 << (SqlParser.ENDPOINT - 753)) | (1 << (SqlParser.ENVELOPE - 753)) | (1 << (SqlParser.EQUALS - 753)) | (1 << (SqlParser.EXP - 753)) | (1 << (SqlParser.EXPORT_SET - 753)) | (1 << (SqlParser.EXTERIORRING - 753)) | (1 << (SqlParser.EXTRACTVALUE - 753)) | (1 << (SqlParser.FIELD - 753)) | (1 << (SqlParser.FIND_IN_SET - 753)) | (1 << (SqlParser.FLOOR - 753)) | (1 << (SqlParser.FORMAT - 753)) | (1 << (SqlParser.FOUND_ROWS - 753)) | (1 << (SqlParser.FROM_BASE64 - 753)) | (1 << (SqlParser.FROM_DAYS - 753)) | (1 << (SqlParser.FROM_UNIXTIME - 753)) | (1 << (SqlParser.GEOMCOLLFROMTEXT - 753)) | (1 << (SqlParser.GEOMCOLLFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYFROMWKB - 753)))) !== 0) || ((((_la - 785)) & ~0x1f) == 0 && ((1 << (_la - 785)) & ((1 << (SqlParser.GEOMETRYN - 785)) | (1 << (SqlParser.GEOMETRYTYPE - 785)) | (1 << (SqlParser.GEOMFROMTEXT - 785)) | (1 << (SqlParser.GEOMFROMWKB - 785)) | (1 << (SqlParser.GET_FORMAT - 785)) | (1 << (SqlParser.GET_LOCK - 785)) | (1 << (SqlParser.GLENGTH - 785)) | (1 << (SqlParser.GREATEST - 785)) | (1 << (SqlParser.GTID_SUBSET - 785)) | (1 << (SqlParser.GTID_SUBTRACT - 785)) | (1 << (SqlParser.HEX - 785)) | (1 << (SqlParser.IFNULL - 785)) | (1 << (SqlParser.INET6_ATON - 785)) | (1 << (SqlParser.INET6_NTOA - 785)) | (1 << (SqlParser.INET_ATON - 785)) | (1 << (SqlParser.INET_NTOA - 785)) | (1 << (SqlParser.INSTR - 785)) | (1 << (SqlParser.INTERIORRINGN - 785)) | (1 << (SqlParser.INTERSECTS - 785)) | (1 << (SqlParser.ISCLOSED - 785)) | (1 << (SqlParser.ISEMPTY - 785)) | (1 << (SqlParser.ISNULL - 785)) | (1 << (SqlParser.ISSIMPLE - 785)) | (1 << (SqlParser.IS_FREE_LOCK - 785)) | (1 << (SqlParser.IS_IPV4 - 785)) | (1 << (SqlParser.IS_IPV4_COMPAT - 785)) | (1 << (SqlParser.IS_IPV4_MAPPED - 785)) | (1 << (SqlParser.IS_IPV6 - 785)) | (1 << (SqlParser.IS_USED_LOCK - 785)) | (1 << (SqlParser.LAST_INSERT_ID - 785)) | (1 << (SqlParser.LCASE - 785)) | (1 << (SqlParser.LEAST - 785)))) !== 0) || ((((_la - 817)) & ~0x1f) == 0 && ((1 << (_la - 817)) & ((1 << (SqlParser.LENGTH - 817)) | (1 << (SqlParser.LINEFROMTEXT - 817)) | (1 << (SqlParser.LINEFROMWKB - 817)) | (1 << (SqlParser.LINESTRINGFROMTEXT - 817)) | (1 << (SqlParser.LINESTRINGFROMWKB - 817)) | (1 << (SqlParser.LN - 817)) | (1 << (SqlParser.LOAD_FILE - 817)) | (1 << (SqlParser.LOCATE - 817)) | (1 << (SqlParser.LOG - 817)) | (1 << (SqlParser.LOG10 - 817)) | (1 << (SqlParser.LOG2 - 817)) | (1 << (SqlParser.LOWER - 817)) | (1 << (SqlParser.LPAD - 817)) | (1 << (SqlParser.LTRIM - 817)) | (1 << (SqlParser.MAKEDATE - 817)) | (1 << (SqlParser.MAKETIME - 817)) | (1 << (SqlParser.MAKE_SET - 817)) | (1 << (SqlParser.MASTER_POS_WAIT - 817)) | (1 << (SqlParser.MBRCONTAINS - 817)) | (1 << (SqlParser.MBRDISJOINT - 817)) | (1 << (SqlParser.MBREQUAL - 817)) | (1 << (SqlParser.MBRINTERSECTS - 817)) | (1 << (SqlParser.MBROVERLAPS - 817)) | (1 << (SqlParser.MBRTOUCHES - 817)) | (1 << (SqlParser.MBRWITHIN - 817)) | (1 << (SqlParser.MD5 - 817)) | (1 << (SqlParser.MLINEFROMTEXT - 817)) | (1 << (SqlParser.MLINEFROMWKB - 817)) | (1 << (SqlParser.MONTHNAME - 817)) | (1 << (SqlParser.MPOINTFROMTEXT - 817)) | (1 << (SqlParser.MPOINTFROMWKB - 817)) | (1 << (SqlParser.MPOLYFROMTEXT - 817)))) !== 0) || ((((_la - 849)) & ~0x1f) == 0 && ((1 << (_la - 849)) & ((1 << (SqlParser.MPOLYFROMWKB - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMTEXT - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMWKB - 849)) | (1 << (SqlParser.MULTIPOINTFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOINTFROMWKB - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMWKB - 849)) | (1 << (SqlParser.NAME_CONST - 849)) | (1 << (SqlParser.NULLIF - 849)) | (1 << (SqlParser.NUMGEOMETRIES - 849)) | (1 << (SqlParser.NUMINTERIORRINGS - 849)) | (1 << (SqlParser.NUMPOINTS - 849)) | (1 << (SqlParser.OCT - 849)) | (1 << (SqlParser.OCTET_LENGTH - 849)) | (1 << (SqlParser.ORD - 849)) | (1 << (SqlParser.OVERLAPS - 849)) | (1 << (SqlParser.PERIOD_ADD - 849)) | (1 << (SqlParser.PERIOD_DIFF - 849)) | (1 << (SqlParser.PI - 849)) | (1 << (SqlParser.POINTFROMTEXT - 849)) | (1 << (SqlParser.POINTFROMWKB - 849)) | (1 << (SqlParser.POINTN - 849)) | (1 << (SqlParser.POLYFROMTEXT - 849)) | (1 << (SqlParser.POLYFROMWKB - 849)) | (1 << (SqlParser.POLYGONFROMTEXT - 849)) | (1 << (SqlParser.POLYGONFROMWKB - 849)) | (1 << (SqlParser.POW - 849)) | (1 << (SqlParser.POWER - 849)) | (1 << (SqlParser.QUOTE - 849)) | (1 << (SqlParser.RADIANS - 849)) | (1 << (SqlParser.RAND - 849)) | (1 << (SqlParser.RANDOM_BYTES - 849)))) !== 0) || ((((_la - 881)) & ~0x1f) == 0 && ((1 << (_la - 881)) & ((1 << (SqlParser.RELEASE_LOCK - 881)) | (1 << (SqlParser.REVERSE - 881)) | (1 << (SqlParser.ROUND - 881)) | (1 << (SqlParser.ROW_COUNT - 881)) | (1 << (SqlParser.RPAD - 881)) | (1 << (SqlParser.RTRIM - 881)) | (1 << (SqlParser.SEC_TO_TIME - 881)) | (1 << (SqlParser.SESSION_USER - 881)) | (1 << (SqlParser.SHA - 881)) | (1 << (SqlParser.SHA1 - 881)) | (1 << (SqlParser.SHA2 - 881)) | (1 << (SqlParser.SCHEMA_NAME - 881)) | (1 << (SqlParser.SIGN - 881)) | (1 << (SqlParser.SIN - 881)) | (1 << (SqlParser.SLEEP - 881)) | (1 << (SqlParser.SOUNDEX - 881)) | (1 << (SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS - 881)) | (1 << (SqlParser.SQRT - 881)) | (1 << (SqlParser.SRID - 881)) | (1 << (SqlParser.STARTPOINT - 881)) | (1 << (SqlParser.STRCMP - 881)) | (1 << (SqlParser.STR_TO_DATE - 881)) | (1 << (SqlParser.ST_AREA - 881)) | (1 << (SqlParser.ST_ASBINARY - 881)) | (1 << (SqlParser.ST_ASTEXT - 881)) | (1 << (SqlParser.ST_ASWKB - 881)) | (1 << (SqlParser.ST_ASWKT - 881)) | (1 << (SqlParser.ST_BUFFER - 881)) | (1 << (SqlParser.ST_CENTROID - 881)) | (1 << (SqlParser.ST_CONTAINS - 881)) | (1 << (SqlParser.ST_CROSSES - 881)) | (1 << (SqlParser.ST_DIFFERENCE - 881)))) !== 0) || ((((_la - 913)) & ~0x1f) == 0 && ((1 << (_la - 913)) & ((1 << (SqlParser.ST_DIMENSION - 913)) | (1 << (SqlParser.ST_DISJOINT - 913)) | (1 << (SqlParser.ST_DISTANCE - 913)) | (1 << (SqlParser.ST_ENDPOINT - 913)) | (1 << (SqlParser.ST_ENVELOPE - 913)) | (1 << (SqlParser.ST_EQUALS - 913)) | (1 << (SqlParser.ST_EXTERIORRING - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYN - 913)) | (1 << (SqlParser.ST_GEOMETRYTYPE - 913)) | (1 << (SqlParser.ST_GEOMFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMFROMWKB - 913)) | (1 << (SqlParser.ST_INTERIORRINGN - 913)) | (1 << (SqlParser.ST_INTERSECTION - 913)) | (1 << (SqlParser.ST_INTERSECTS - 913)) | (1 << (SqlParser.ST_ISCLOSED - 913)) | (1 << (SqlParser.ST_ISEMPTY - 913)) | (1 << (SqlParser.ST_ISSIMPLE - 913)) | (1 << (SqlParser.ST_LINEFROMTEXT - 913)) | (1 << (SqlParser.ST_LINEFROMWKB - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMTEXT - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMWKB - 913)) | (1 << (SqlParser.ST_NUMGEOMETRIES - 913)) | (1 << (SqlParser.ST_NUMINTERIORRING - 913)) | (1 << (SqlParser.ST_NUMINTERIORRINGS - 913)) | (1 << (SqlParser.ST_NUMPOINTS - 913)))) !== 0) || ((((_la - 945)) & ~0x1f) == 0 && ((1 << (_la - 945)) & ((1 << (SqlParser.ST_OVERLAPS - 945)) | (1 << (SqlParser.ST_POINTFROMTEXT - 945)) | (1 << (SqlParser.ST_POINTFROMWKB - 945)) | (1 << (SqlParser.ST_POINTN - 945)) | (1 << (SqlParser.ST_POLYFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYFROMWKB - 945)) | (1 << (SqlParser.ST_POLYGONFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYGONFROMWKB - 945)) | (1 << (SqlParser.ST_SRID - 945)) | (1 << (SqlParser.ST_STARTPOINT - 945)) | (1 << (SqlParser.ST_SYMDIFFERENCE - 945)) | (1 << (SqlParser.ST_TOUCHES - 945)) | (1 << (SqlParser.ST_UNION - 945)) | (1 << (SqlParser.ST_WITHIN - 945)) | (1 << (SqlParser.ST_X - 945)) | (1 << (SqlParser.ST_Y - 945)) | (1 << (SqlParser.SUBDATE - 945)) | (1 << (SqlParser.SUBSTRING_INDEX - 945)) | (1 << (SqlParser.SUBTIME - 945)) | (1 << (SqlParser.SYSTEM_USER - 945)) | (1 << (SqlParser.TAN - 945)) | (1 << (SqlParser.TIMEDIFF - 945)) | (1 << (SqlParser.TIMESTAMPADD - 945)) | (1 << (SqlParser.TIMESTAMPDIFF - 945)) | (1 << (SqlParser.TIME_FORMAT - 945)) | (1 << (SqlParser.TIME_TO_SEC - 945)) | (1 << (SqlParser.TOUCHES - 945)) | (1 << (SqlParser.TO_BASE64 - 945)) | (1 << (SqlParser.TO_DAYS - 945)) | (1 << (SqlParser.TO_SECONDS - 945)) | (1 << (SqlParser.UCASE - 945)) | (1 << (SqlParser.UNCOMPRESS - 945)))) !== 0) || ((((_la - 977)) & ~0x1f) == 0 && ((1 << (_la - 977)) & ((1 << (SqlParser.UNCOMPRESSED_LENGTH - 977)) | (1 << (SqlParser.UNHEX - 977)) | (1 << (SqlParser.UNIX_TIMESTAMP - 977)) | (1 << (SqlParser.UPDATEXML - 977)) | (1 << (SqlParser.UPPER - 977)) | (1 << (SqlParser.UUID - 977)) | (1 << (SqlParser.UUID_SHORT - 977)) | (1 << (SqlParser.VALIDATE_PASSWORD_STRENGTH - 977)) | (1 << (SqlParser.VERSION - 977)) | (1 << (SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS - 977)) | (1 << (SqlParser.WEEKDAY - 977)) | (1 << (SqlParser.WEEKOFYEAR - 977)) | (1 << (SqlParser.WEIGHT_STRING - 977)) | (1 << (SqlParser.WITHIN - 977)) | (1 << (SqlParser.YEARWEEK - 977)) | (1 << (SqlParser.Y_FUNCTION - 977)) | (1 << (SqlParser.X_FUNCTION - 977)))) !== 0) || ((((_la - 1032)) & ~0x1f) == 0 && ((1 << (_la - 1032)) & ((1 << (SqlParser.CHARSET_REVERSE_QOUTE_STRING - 1032)) | (1 << (SqlParser.STRING_LITERAL - 1032)) | (1 << (SqlParser.ID - 1032)) | (1 << (SqlParser.REVERSE_QUOTE_ID - 1032)))) !== 0)) {
+ this.state = 3786;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.AS) {
+ this.state = 3785;
+ this.match(SqlParser.AS);
+ }
+
+ this.state = 3788;
+ this.uid();
+ }
+
+ this.state = 3791;
+ this.lockAction();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function LockActionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_lockAction;
+ return this;
+}
+
+LockActionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+LockActionContext.prototype.constructor = LockActionContext;
+
+LockActionContext.prototype.READ = function() {
+ return this.getToken(SqlParser.READ, 0);
+};
+
+LockActionContext.prototype.LOCAL = function() {
+ return this.getToken(SqlParser.LOCAL, 0);
+};
+
+LockActionContext.prototype.WRITE = function() {
+ return this.getToken(SqlParser.WRITE, 0);
+};
+
+LockActionContext.prototype.LOW_PRIORITY = function() {
+ return this.getToken(SqlParser.LOW_PRIORITY, 0);
+};
+
+LockActionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterLockAction(this);
+ }
+};
+
+LockActionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitLockAction(this);
+ }
+};
+
+LockActionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitLockAction(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.LockActionContext = LockActionContext;
+
+SqlParser.prototype.lockAction = function() {
+
+ var localctx = new LockActionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 282, SqlParser.RULE_lockAction);
+ var _la = 0; // Token type
+ try {
+ this.state = 3801;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.READ:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3793;
+ this.match(SqlParser.READ);
+ this.state = 3795;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.LOCAL) {
+ this.state = 3794;
+ this.match(SqlParser.LOCAL);
+ }
+
+ break;
+ case SqlParser.LOW_PRIORITY:
+ case SqlParser.WRITE:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 3798;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.LOW_PRIORITY) {
+ this.state = 3797;
+ this.match(SqlParser.LOW_PRIORITY);
+ }
+
+ this.state = 3800;
+ this.match(SqlParser.WRITE);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function TransactionOptionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_transactionOption;
+ return this;
+}
+
+TransactionOptionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+TransactionOptionContext.prototype.constructor = TransactionOptionContext;
+
+TransactionOptionContext.prototype.ISOLATION = function() {
+ return this.getToken(SqlParser.ISOLATION, 0);
+};
+
+TransactionOptionContext.prototype.LEVEL = function() {
+ return this.getToken(SqlParser.LEVEL, 0);
+};
+
+TransactionOptionContext.prototype.transactionLevel = function() {
+ return this.getTypedRuleContext(TransactionLevelContext,0);
+};
+
+TransactionOptionContext.prototype.READ = function() {
+ return this.getToken(SqlParser.READ, 0);
+};
+
+TransactionOptionContext.prototype.WRITE = function() {
+ return this.getToken(SqlParser.WRITE, 0);
+};
+
+TransactionOptionContext.prototype.ONLY = function() {
+ return this.getToken(SqlParser.ONLY, 0);
+};
+
+TransactionOptionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterTransactionOption(this);
+ }
+};
+
+TransactionOptionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitTransactionOption(this);
+ }
+};
+
+TransactionOptionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitTransactionOption(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.TransactionOptionContext = TransactionOptionContext;
+
+SqlParser.prototype.transactionOption = function() {
+
+ var localctx = new TransactionOptionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 284, SqlParser.RULE_transactionOption);
+ try {
+ this.state = 3810;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,558,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3803;
+ this.match(SqlParser.ISOLATION);
+ this.state = 3804;
+ this.match(SqlParser.LEVEL);
+ this.state = 3805;
+ this.transactionLevel();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 3806;
+ this.match(SqlParser.READ);
+ this.state = 3807;
+ this.match(SqlParser.WRITE);
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 3808;
+ this.match(SqlParser.READ);
+ this.state = 3809;
+ this.match(SqlParser.ONLY);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function TransactionLevelContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_transactionLevel;
+ return this;
+}
+
+TransactionLevelContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+TransactionLevelContext.prototype.constructor = TransactionLevelContext;
+
+TransactionLevelContext.prototype.REPEATABLE = function() {
+ return this.getToken(SqlParser.REPEATABLE, 0);
+};
+
+TransactionLevelContext.prototype.READ = function() {
+ return this.getToken(SqlParser.READ, 0);
+};
+
+TransactionLevelContext.prototype.COMMITTED = function() {
+ return this.getToken(SqlParser.COMMITTED, 0);
+};
+
+TransactionLevelContext.prototype.UNCOMMITTED = function() {
+ return this.getToken(SqlParser.UNCOMMITTED, 0);
+};
+
+TransactionLevelContext.prototype.SERIALIZABLE = function() {
+ return this.getToken(SqlParser.SERIALIZABLE, 0);
+};
+
+TransactionLevelContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterTransactionLevel(this);
+ }
+};
+
+TransactionLevelContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitTransactionLevel(this);
+ }
+};
+
+TransactionLevelContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitTransactionLevel(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.TransactionLevelContext = TransactionLevelContext;
+
+SqlParser.prototype.transactionLevel = function() {
+
+ var localctx = new TransactionLevelContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 286, SqlParser.RULE_transactionLevel);
+ try {
+ this.state = 3819;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,559,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3812;
+ this.match(SqlParser.REPEATABLE);
+ this.state = 3813;
+ this.match(SqlParser.READ);
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 3814;
+ this.match(SqlParser.READ);
+ this.state = 3815;
+ this.match(SqlParser.COMMITTED);
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 3816;
+ this.match(SqlParser.READ);
+ this.state = 3817;
+ this.match(SqlParser.UNCOMMITTED);
+ break;
+
+ case 4:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 3818;
+ this.match(SqlParser.SERIALIZABLE);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function ChangeMasterContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_changeMaster;
+ return this;
+}
+
+ChangeMasterContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+ChangeMasterContext.prototype.constructor = ChangeMasterContext;
+
+ChangeMasterContext.prototype.CHANGE = function() {
+ return this.getToken(SqlParser.CHANGE, 0);
+};
+
+ChangeMasterContext.prototype.MASTER = function() {
+ return this.getToken(SqlParser.MASTER, 0);
+};
+
+ChangeMasterContext.prototype.TO = function() {
+ return this.getToken(SqlParser.TO, 0);
+};
+
+ChangeMasterContext.prototype.masterOption = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(MasterOptionContext);
+ } else {
+ return this.getTypedRuleContext(MasterOptionContext,i);
+ }
+};
+
+ChangeMasterContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+ChangeMasterContext.prototype.channelOption = function() {
+ return this.getTypedRuleContext(ChannelOptionContext,0);
+};
+
+ChangeMasterContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterChangeMaster(this);
+ }
+};
+
+ChangeMasterContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitChangeMaster(this);
+ }
+};
+
+ChangeMasterContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitChangeMaster(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.ChangeMasterContext = ChangeMasterContext;
+
+SqlParser.prototype.changeMaster = function() {
+
+ var localctx = new ChangeMasterContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 288, SqlParser.RULE_changeMaster);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3821;
+ this.match(SqlParser.CHANGE);
+ this.state = 3822;
+ this.match(SqlParser.MASTER);
+ this.state = 3823;
+ this.match(SqlParser.TO);
+ this.state = 3824;
+ this.masterOption();
+ this.state = 3829;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 3825;
+ this.match(SqlParser.COMMA);
+ this.state = 3826;
+ this.masterOption();
+ this.state = 3831;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 3833;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.FOR) {
+ this.state = 3832;
+ this.channelOption();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function ChangeReplicationFilterContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_changeReplicationFilter;
+ return this;
+}
+
+ChangeReplicationFilterContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+ChangeReplicationFilterContext.prototype.constructor = ChangeReplicationFilterContext;
+
+ChangeReplicationFilterContext.prototype.CHANGE = function() {
+ return this.getToken(SqlParser.CHANGE, 0);
+};
+
+ChangeReplicationFilterContext.prototype.REPLICATION = function() {
+ return this.getToken(SqlParser.REPLICATION, 0);
+};
+
+ChangeReplicationFilterContext.prototype.FILTER = function() {
+ return this.getToken(SqlParser.FILTER, 0);
+};
+
+ChangeReplicationFilterContext.prototype.replicationFilter = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ReplicationFilterContext);
+ } else {
+ return this.getTypedRuleContext(ReplicationFilterContext,i);
+ }
+};
+
+ChangeReplicationFilterContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+ChangeReplicationFilterContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterChangeReplicationFilter(this);
+ }
+};
+
+ChangeReplicationFilterContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitChangeReplicationFilter(this);
+ }
+};
+
+ChangeReplicationFilterContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitChangeReplicationFilter(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.ChangeReplicationFilterContext = ChangeReplicationFilterContext;
+
+SqlParser.prototype.changeReplicationFilter = function() {
+
+ var localctx = new ChangeReplicationFilterContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 290, SqlParser.RULE_changeReplicationFilter);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3835;
+ this.match(SqlParser.CHANGE);
+ this.state = 3836;
+ this.match(SqlParser.REPLICATION);
+ this.state = 3837;
+ this.match(SqlParser.FILTER);
+ this.state = 3838;
+ this.replicationFilter();
+ this.state = 3843;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 3839;
+ this.match(SqlParser.COMMA);
+ this.state = 3840;
+ this.replicationFilter();
+ this.state = 3845;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function PurgeBinaryLogsContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_purgeBinaryLogs;
+ this.purgeFormat = null; // Token
+ this.fileName = null; // Token
+ this.timeValue = null; // Token
+ return this;
+}
+
+PurgeBinaryLogsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+PurgeBinaryLogsContext.prototype.constructor = PurgeBinaryLogsContext;
+
+PurgeBinaryLogsContext.prototype.PURGE = function() {
+ return this.getToken(SqlParser.PURGE, 0);
+};
+
+PurgeBinaryLogsContext.prototype.LOGS = function() {
+ return this.getToken(SqlParser.LOGS, 0);
+};
+
+PurgeBinaryLogsContext.prototype.BINARY = function() {
+ return this.getToken(SqlParser.BINARY, 0);
+};
+
+PurgeBinaryLogsContext.prototype.MASTER = function() {
+ return this.getToken(SqlParser.MASTER, 0);
+};
+
+PurgeBinaryLogsContext.prototype.TO = function() {
+ return this.getToken(SqlParser.TO, 0);
+};
+
+PurgeBinaryLogsContext.prototype.BEFORE = function() {
+ return this.getToken(SqlParser.BEFORE, 0);
+};
+
+PurgeBinaryLogsContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+PurgeBinaryLogsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterPurgeBinaryLogs(this);
+ }
+};
+
+PurgeBinaryLogsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitPurgeBinaryLogs(this);
+ }
+};
+
+PurgeBinaryLogsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitPurgeBinaryLogs(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.PurgeBinaryLogsContext = PurgeBinaryLogsContext;
+
+SqlParser.prototype.purgeBinaryLogs = function() {
+
+ var localctx = new PurgeBinaryLogsContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 292, SqlParser.RULE_purgeBinaryLogs);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3846;
+ this.match(SqlParser.PURGE);
+ this.state = 3847;
+ localctx.purgeFormat = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.BINARY || _la===SqlParser.MASTER)) {
+ localctx.purgeFormat = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 3848;
+ this.match(SqlParser.LOGS);
+ this.state = 3853;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.TO:
+ this.state = 3849;
+ this.match(SqlParser.TO);
+ this.state = 3850;
+ localctx.fileName = this.match(SqlParser.STRING_LITERAL);
+ break;
+ case SqlParser.BEFORE:
+ this.state = 3851;
+ this.match(SqlParser.BEFORE);
+ this.state = 3852;
+ localctx.timeValue = this.match(SqlParser.STRING_LITERAL);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function ResetMasterContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_resetMaster;
+ return this;
+}
+
+ResetMasterContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+ResetMasterContext.prototype.constructor = ResetMasterContext;
+
+ResetMasterContext.prototype.RESET = function() {
+ return this.getToken(SqlParser.RESET, 0);
+};
+
+ResetMasterContext.prototype.MASTER = function() {
+ return this.getToken(SqlParser.MASTER, 0);
+};
+
+ResetMasterContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterResetMaster(this);
+ }
+};
+
+ResetMasterContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitResetMaster(this);
+ }
+};
+
+ResetMasterContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitResetMaster(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.ResetMasterContext = ResetMasterContext;
+
+SqlParser.prototype.resetMaster = function() {
+
+ var localctx = new ResetMasterContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 294, SqlParser.RULE_resetMaster);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3855;
+ this.match(SqlParser.RESET);
+ this.state = 3856;
+ this.match(SqlParser.MASTER);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function ResetSlaveContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_resetSlave;
+ return this;
+}
+
+ResetSlaveContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+ResetSlaveContext.prototype.constructor = ResetSlaveContext;
+
+ResetSlaveContext.prototype.RESET = function() {
+ return this.getToken(SqlParser.RESET, 0);
+};
+
+ResetSlaveContext.prototype.SLAVE = function() {
+ return this.getToken(SqlParser.SLAVE, 0);
+};
+
+ResetSlaveContext.prototype.ALL = function() {
+ return this.getToken(SqlParser.ALL, 0);
+};
+
+ResetSlaveContext.prototype.channelOption = function() {
+ return this.getTypedRuleContext(ChannelOptionContext,0);
+};
+
+ResetSlaveContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterResetSlave(this);
+ }
+};
+
+ResetSlaveContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitResetSlave(this);
+ }
+};
+
+ResetSlaveContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitResetSlave(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.ResetSlaveContext = ResetSlaveContext;
+
+SqlParser.prototype.resetSlave = function() {
+
+ var localctx = new ResetSlaveContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 296, SqlParser.RULE_resetSlave);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3858;
+ this.match(SqlParser.RESET);
+ this.state = 3859;
+ this.match(SqlParser.SLAVE);
+ this.state = 3861;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.ALL) {
+ this.state = 3860;
+ this.match(SqlParser.ALL);
+ }
+
+ this.state = 3864;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.FOR) {
+ this.state = 3863;
+ this.channelOption();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function StartSlaveContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_startSlave;
+ return this;
+}
+
+StartSlaveContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+StartSlaveContext.prototype.constructor = StartSlaveContext;
+
+StartSlaveContext.prototype.START = function() {
+ return this.getToken(SqlParser.START, 0);
+};
+
+StartSlaveContext.prototype.SLAVE = function() {
+ return this.getToken(SqlParser.SLAVE, 0);
+};
+
+StartSlaveContext.prototype.threadType = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ThreadTypeContext);
+ } else {
+ return this.getTypedRuleContext(ThreadTypeContext,i);
+ }
+};
+
+StartSlaveContext.prototype.UNTIL = function() {
+ return this.getToken(SqlParser.UNTIL, 0);
+};
+
+StartSlaveContext.prototype.untilOption = function() {
+ return this.getTypedRuleContext(UntilOptionContext,0);
+};
+
+StartSlaveContext.prototype.connectionOption = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ConnectionOptionContext);
+ } else {
+ return this.getTypedRuleContext(ConnectionOptionContext,i);
+ }
+};
+
+StartSlaveContext.prototype.channelOption = function() {
+ return this.getTypedRuleContext(ChannelOptionContext,0);
+};
+
+StartSlaveContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+StartSlaveContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterStartSlave(this);
+ }
+};
+
+StartSlaveContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitStartSlave(this);
+ }
+};
+
+StartSlaveContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitStartSlave(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.StartSlaveContext = StartSlaveContext;
+
+SqlParser.prototype.startSlave = function() {
+
+ var localctx = new StartSlaveContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 298, SqlParser.RULE_startSlave);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3866;
+ this.match(SqlParser.START);
+ this.state = 3867;
+ this.match(SqlParser.SLAVE);
+ this.state = 3876;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.IO_THREAD || _la===SqlParser.SQL_THREAD) {
+ this.state = 3868;
+ this.threadType();
+ this.state = 3873;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 3869;
+ this.match(SqlParser.COMMA);
+ this.state = 3870;
+ this.threadType();
+ this.state = 3875;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ }
+
+ this.state = 3880;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.UNTIL) {
+ this.state = 3878;
+ this.match(SqlParser.UNTIL);
+ this.state = 3879;
+ this.untilOption();
+ }
+
+ this.state = 3885;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.DEFAULT_AUTH || _la===SqlParser.PASSWORD || _la===SqlParser.PLUGIN_DIR || _la===SqlParser.USER) {
+ this.state = 3882;
+ this.connectionOption();
+ this.state = 3887;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 3889;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.FOR) {
+ this.state = 3888;
+ this.channelOption();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function StopSlaveContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_stopSlave;
+ return this;
+}
+
+StopSlaveContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+StopSlaveContext.prototype.constructor = StopSlaveContext;
+
+StopSlaveContext.prototype.STOP = function() {
+ return this.getToken(SqlParser.STOP, 0);
+};
+
+StopSlaveContext.prototype.SLAVE = function() {
+ return this.getToken(SqlParser.SLAVE, 0);
+};
+
+StopSlaveContext.prototype.threadType = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ThreadTypeContext);
+ } else {
+ return this.getTypedRuleContext(ThreadTypeContext,i);
+ }
+};
+
+StopSlaveContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+StopSlaveContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterStopSlave(this);
+ }
+};
+
+StopSlaveContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitStopSlave(this);
+ }
+};
+
+StopSlaveContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitStopSlave(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.StopSlaveContext = StopSlaveContext;
+
+SqlParser.prototype.stopSlave = function() {
+
+ var localctx = new StopSlaveContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 300, SqlParser.RULE_stopSlave);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3891;
+ this.match(SqlParser.STOP);
+ this.state = 3892;
+ this.match(SqlParser.SLAVE);
+ this.state = 3901;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.IO_THREAD || _la===SqlParser.SQL_THREAD) {
+ this.state = 3893;
+ this.threadType();
+ this.state = 3898;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 3894;
+ this.match(SqlParser.COMMA);
+ this.state = 3895;
+ this.threadType();
+ this.state = 3900;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function StartGroupReplicationContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_startGroupReplication;
+ return this;
+}
+
+StartGroupReplicationContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+StartGroupReplicationContext.prototype.constructor = StartGroupReplicationContext;
+
+StartGroupReplicationContext.prototype.START = function() {
+ return this.getToken(SqlParser.START, 0);
+};
+
+StartGroupReplicationContext.prototype.GROUP_REPLICATION = function() {
+ return this.getToken(SqlParser.GROUP_REPLICATION, 0);
+};
+
+StartGroupReplicationContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterStartGroupReplication(this);
+ }
+};
+
+StartGroupReplicationContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitStartGroupReplication(this);
+ }
+};
+
+StartGroupReplicationContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitStartGroupReplication(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.StartGroupReplicationContext = StartGroupReplicationContext;
+
+SqlParser.prototype.startGroupReplication = function() {
+
+ var localctx = new StartGroupReplicationContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 302, SqlParser.RULE_startGroupReplication);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3903;
+ this.match(SqlParser.START);
+ this.state = 3904;
+ this.match(SqlParser.GROUP_REPLICATION);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function StopGroupReplicationContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_stopGroupReplication;
+ return this;
+}
+
+StopGroupReplicationContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+StopGroupReplicationContext.prototype.constructor = StopGroupReplicationContext;
+
+StopGroupReplicationContext.prototype.STOP = function() {
+ return this.getToken(SqlParser.STOP, 0);
+};
+
+StopGroupReplicationContext.prototype.GROUP_REPLICATION = function() {
+ return this.getToken(SqlParser.GROUP_REPLICATION, 0);
+};
+
+StopGroupReplicationContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterStopGroupReplication(this);
+ }
+};
+
+StopGroupReplicationContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitStopGroupReplication(this);
+ }
+};
+
+StopGroupReplicationContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitStopGroupReplication(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.StopGroupReplicationContext = StopGroupReplicationContext;
+
+SqlParser.prototype.stopGroupReplication = function() {
+
+ var localctx = new StopGroupReplicationContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 304, SqlParser.RULE_stopGroupReplication);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3906;
+ this.match(SqlParser.STOP);
+ this.state = 3907;
+ this.match(SqlParser.GROUP_REPLICATION);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function MasterOptionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_masterOption;
+ return this;
+}
+
+MasterOptionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+MasterOptionContext.prototype.constructor = MasterOptionContext;
+
+
+
+MasterOptionContext.prototype.copyFrom = function(ctx) {
+ antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx);
+};
+
+
+function MasterStringOptionContext(parser, ctx) {
+ MasterOptionContext.call(this, parser);
+ MasterOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+MasterStringOptionContext.prototype = Object.create(MasterOptionContext.prototype);
+MasterStringOptionContext.prototype.constructor = MasterStringOptionContext;
+
+SqlParser.MasterStringOptionContext = MasterStringOptionContext;
+
+MasterStringOptionContext.prototype.stringMasterOption = function() {
+ return this.getTypedRuleContext(StringMasterOptionContext,0);
+};
+
+MasterStringOptionContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+
+MasterStringOptionContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+MasterStringOptionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterMasterStringOption(this);
+ }
+};
+
+MasterStringOptionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitMasterStringOption(this);
+ }
+};
+
+MasterStringOptionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitMasterStringOption(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function MasterRealOptionContext(parser, ctx) {
+ MasterOptionContext.call(this, parser);
+ MasterOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+MasterRealOptionContext.prototype = Object.create(MasterOptionContext.prototype);
+MasterRealOptionContext.prototype.constructor = MasterRealOptionContext;
+
+SqlParser.MasterRealOptionContext = MasterRealOptionContext;
+
+MasterRealOptionContext.prototype.MASTER_HEARTBEAT_PERIOD = function() {
+ return this.getToken(SqlParser.MASTER_HEARTBEAT_PERIOD, 0);
+};
+
+MasterRealOptionContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+
+MasterRealOptionContext.prototype.REAL_LITERAL = function() {
+ return this.getToken(SqlParser.REAL_LITERAL, 0);
+};
+MasterRealOptionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterMasterRealOption(this);
+ }
+};
+
+MasterRealOptionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitMasterRealOption(this);
+ }
+};
+
+MasterRealOptionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitMasterRealOption(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function MasterBoolOptionContext(parser, ctx) {
+ MasterOptionContext.call(this, parser);
+ this.boolVal = null; // Token;
+ MasterOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+MasterBoolOptionContext.prototype = Object.create(MasterOptionContext.prototype);
+MasterBoolOptionContext.prototype.constructor = MasterBoolOptionContext;
+
+SqlParser.MasterBoolOptionContext = MasterBoolOptionContext;
+
+MasterBoolOptionContext.prototype.boolMasterOption = function() {
+ return this.getTypedRuleContext(BoolMasterOptionContext,0);
+};
+
+MasterBoolOptionContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+
+MasterBoolOptionContext.prototype.ZERO_DECIMAL = function() {
+ return this.getToken(SqlParser.ZERO_DECIMAL, 0);
+};
+
+MasterBoolOptionContext.prototype.ONE_DECIMAL = function() {
+ return this.getToken(SqlParser.ONE_DECIMAL, 0);
+};
+MasterBoolOptionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterMasterBoolOption(this);
+ }
+};
+
+MasterBoolOptionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitMasterBoolOption(this);
+ }
+};
+
+MasterBoolOptionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitMasterBoolOption(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function MasterUidListOptionContext(parser, ctx) {
+ MasterOptionContext.call(this, parser);
+ MasterOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+MasterUidListOptionContext.prototype = Object.create(MasterOptionContext.prototype);
+MasterUidListOptionContext.prototype.constructor = MasterUidListOptionContext;
+
+SqlParser.MasterUidListOptionContext = MasterUidListOptionContext;
+
+MasterUidListOptionContext.prototype.IGNORE_SERVER_IDS = function() {
+ return this.getToken(SqlParser.IGNORE_SERVER_IDS, 0);
+};
+
+MasterUidListOptionContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+
+MasterUidListOptionContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+MasterUidListOptionContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+MasterUidListOptionContext.prototype.uid = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UidContext);
+ } else {
+ return this.getTypedRuleContext(UidContext,i);
+ }
+};
+
+MasterUidListOptionContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+MasterUidListOptionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterMasterUidListOption(this);
+ }
+};
+
+MasterUidListOptionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitMasterUidListOption(this);
+ }
+};
+
+MasterUidListOptionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitMasterUidListOption(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function MasterDecimalOptionContext(parser, ctx) {
+ MasterOptionContext.call(this, parser);
+ MasterOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+MasterDecimalOptionContext.prototype = Object.create(MasterOptionContext.prototype);
+MasterDecimalOptionContext.prototype.constructor = MasterDecimalOptionContext;
+
+SqlParser.MasterDecimalOptionContext = MasterDecimalOptionContext;
+
+MasterDecimalOptionContext.prototype.decimalMasterOption = function() {
+ return this.getTypedRuleContext(DecimalMasterOptionContext,0);
+};
+
+MasterDecimalOptionContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+
+MasterDecimalOptionContext.prototype.decimalLiteral = function() {
+ return this.getTypedRuleContext(DecimalLiteralContext,0);
+};
+MasterDecimalOptionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterMasterDecimalOption(this);
+ }
+};
+
+MasterDecimalOptionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitMasterDecimalOption(this);
+ }
+};
+
+MasterDecimalOptionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitMasterDecimalOption(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+SqlParser.MasterOptionContext = MasterOptionContext;
+
+SqlParser.prototype.masterOption = function() {
+
+ var localctx = new MasterOptionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 306, SqlParser.RULE_masterOption);
+ var _la = 0; // Token type
+ try {
+ this.state = 3938;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.MASTER_BIND:
+ case SqlParser.MASTER_HOST:
+ case SqlParser.MASTER_LOG_FILE:
+ case SqlParser.MASTER_PASSWORD:
+ case SqlParser.MASTER_SSL_CA:
+ case SqlParser.MASTER_SSL_CAPATH:
+ case SqlParser.MASTER_SSL_CERT:
+ case SqlParser.MASTER_SSL_CIPHER:
+ case SqlParser.MASTER_SSL_CRL:
+ case SqlParser.MASTER_SSL_CRLPATH:
+ case SqlParser.MASTER_SSL_KEY:
+ case SqlParser.MASTER_TLS_VERSION:
+ case SqlParser.MASTER_USER:
+ case SqlParser.RELAY_LOG_FILE:
+ localctx = new MasterStringOptionContext(this, localctx);
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3909;
+ this.stringMasterOption();
+ this.state = 3910;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ this.state = 3911;
+ this.match(SqlParser.STRING_LITERAL);
+ break;
+ case SqlParser.MASTER_CONNECT_RETRY:
+ case SqlParser.MASTER_DELAY:
+ case SqlParser.MASTER_LOG_POS:
+ case SqlParser.MASTER_PORT:
+ case SqlParser.MASTER_RETRY_COUNT:
+ case SqlParser.RELAY_LOG_POS:
+ localctx = new MasterDecimalOptionContext(this, localctx);
+ this.enterOuterAlt(localctx, 2);
+ this.state = 3913;
+ this.decimalMasterOption();
+ this.state = 3914;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ this.state = 3915;
+ this.decimalLiteral();
+ break;
+ case SqlParser.MASTER_SSL_VERIFY_SERVER_CERT:
+ case SqlParser.MASTER_AUTO_POSITION:
+ case SqlParser.MASTER_SSL:
+ localctx = new MasterBoolOptionContext(this, localctx);
+ this.enterOuterAlt(localctx, 3);
+ this.state = 3917;
+ this.boolMasterOption();
+ this.state = 3918;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ this.state = 3919;
+ localctx.boolVal = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.ZERO_DECIMAL || _la===SqlParser.ONE_DECIMAL)) {
+ localctx.boolVal = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+ case SqlParser.MASTER_HEARTBEAT_PERIOD:
+ localctx = new MasterRealOptionContext(this, localctx);
+ this.enterOuterAlt(localctx, 4);
+ this.state = 3921;
+ this.match(SqlParser.MASTER_HEARTBEAT_PERIOD);
+ this.state = 3922;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ this.state = 3923;
+ this.match(SqlParser.REAL_LITERAL);
+ break;
+ case SqlParser.IGNORE_SERVER_IDS:
+ localctx = new MasterUidListOptionContext(this, localctx);
+ this.enterOuterAlt(localctx, 5);
+ this.state = 3924;
+ this.match(SqlParser.IGNORE_SERVER_IDS);
+ this.state = 3925;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ this.state = 3926;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 3935;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (SqlParser.CURRENT - 32)) | (1 << (SqlParser.DATABASE - 32)) | (1 << (SqlParser.DIAGNOSTICS - 32)))) !== 0) || _la===SqlParser.LEFT || _la===SqlParser.NUMBER || _la===SqlParser.RIGHT || _la===SqlParser.STACKED || ((((_la - 199)) & ~0x1f) == 0 && ((1 << (_la - 199)) & ((1 << (SqlParser.DATE - 199)) | (1 << (SqlParser.TIME - 199)) | (1 << (SqlParser.TIMESTAMP - 199)) | (1 << (SqlParser.DATETIME - 199)) | (1 << (SqlParser.YEAR - 199)) | (1 << (SqlParser.TEXT - 199)) | (1 << (SqlParser.ENUM - 199)) | (1 << (SqlParser.SERIAL - 199)))) !== 0) || ((((_la - 233)) & ~0x1f) == 0 && ((1 << (_la - 233)) & ((1 << (SqlParser.JSON_VALID - 233)) | (1 << (SqlParser.JSON_SCHEMA_VALID - 233)) | (1 << (SqlParser.COUNT - 233)) | (1 << (SqlParser.POSITION - 233)))) !== 0) || ((((_la - 270)) & ~0x1f) == 0 && ((1 << (_la - 270)) & ((1 << (SqlParser.ACCOUNT - 270)) | (1 << (SqlParser.ACTION - 270)) | (1 << (SqlParser.AFTER - 270)) | (1 << (SqlParser.AGGREGATE - 270)) | (1 << (SqlParser.ALGORITHM - 270)) | (1 << (SqlParser.ANY - 270)) | (1 << (SqlParser.AT - 270)) | (1 << (SqlParser.AUTHORS - 270)) | (1 << (SqlParser.AUTOCOMMIT - 270)) | (1 << (SqlParser.AUTOEXTEND_SIZE - 270)) | (1 << (SqlParser.AUTO_INCREMENT - 270)) | (1 << (SqlParser.AVG_ROW_LENGTH - 270)) | (1 << (SqlParser.BEGIN - 270)) | (1 << (SqlParser.BINLOG - 270)) | (1 << (SqlParser.BIT - 270)) | (1 << (SqlParser.BLOCK - 270)) | (1 << (SqlParser.BOOL - 270)) | (1 << (SqlParser.BOOLEAN - 270)) | (1 << (SqlParser.BTREE - 270)) | (1 << (SqlParser.CACHE - 270)) | (1 << (SqlParser.CASCADED - 270)) | (1 << (SqlParser.CHAIN - 270)) | (1 << (SqlParser.CHANGED - 270)) | (1 << (SqlParser.CHANNEL - 270)) | (1 << (SqlParser.CHECKSUM - 270)) | (1 << (SqlParser.PAGE_CHECKSUM - 270)) | (1 << (SqlParser.CIPHER - 270)) | (1 << (SqlParser.CLASS_ORIGIN - 270)) | (1 << (SqlParser.CLIENT - 270)) | (1 << (SqlParser.CLOSE - 270)) | (1 << (SqlParser.COALESCE - 270)) | (1 << (SqlParser.CODE - 270)))) !== 0) || ((((_la - 302)) & ~0x1f) == 0 && ((1 << (_la - 302)) & ((1 << (SqlParser.COLUMNS - 302)) | (1 << (SqlParser.COLUMN_FORMAT - 302)) | (1 << (SqlParser.COLUMN_NAME - 302)) | (1 << (SqlParser.COMMENT - 302)) | (1 << (SqlParser.COMMIT - 302)) | (1 << (SqlParser.COMPACT - 302)) | (1 << (SqlParser.COMPLETION - 302)) | (1 << (SqlParser.COMPRESSED - 302)) | (1 << (SqlParser.COMPRESSION - 302)) | (1 << (SqlParser.CONCURRENT - 302)) | (1 << (SqlParser.CONNECTION - 302)) | (1 << (SqlParser.CONSISTENT - 302)) | (1 << (SqlParser.CONSTRAINT_CATALOG - 302)) | (1 << (SqlParser.CONSTRAINT_SCHEMA - 302)) | (1 << (SqlParser.CONSTRAINT_NAME - 302)) | (1 << (SqlParser.CONTAINS - 302)) | (1 << (SqlParser.CONTEXT - 302)) | (1 << (SqlParser.CONTRIBUTORS - 302)) | (1 << (SqlParser.COPY - 302)) | (1 << (SqlParser.CPU - 302)) | (1 << (SqlParser.CURSOR_NAME - 302)) | (1 << (SqlParser.DATA - 302)) | (1 << (SqlParser.DATAFILE - 302)) | (1 << (SqlParser.DEALLOCATE - 302)) | (1 << (SqlParser.DEFAULT_AUTH - 302)) | (1 << (SqlParser.DEFINER - 302)) | (1 << (SqlParser.DELAY_KEY_WRITE - 302)) | (1 << (SqlParser.DES_KEY_FILE - 302)) | (1 << (SqlParser.DIRECTORY - 302)) | (1 << (SqlParser.DISABLE - 302)) | (1 << (SqlParser.DISCARD - 302)) | (1 << (SqlParser.DISK - 302)))) !== 0) || ((((_la - 334)) & ~0x1f) == 0 && ((1 << (_la - 334)) & ((1 << (SqlParser.DO - 334)) | (1 << (SqlParser.DUMPFILE - 334)) | (1 << (SqlParser.DUPLICATE - 334)) | (1 << (SqlParser.DYNAMIC - 334)) | (1 << (SqlParser.ENABLE - 334)) | (1 << (SqlParser.ENCRYPTION - 334)) | (1 << (SqlParser.END - 334)) | (1 << (SqlParser.ENDS - 334)) | (1 << (SqlParser.ENGINE - 334)) | (1 << (SqlParser.ENGINES - 334)) | (1 << (SqlParser.ERROR - 334)) | (1 << (SqlParser.ERRORS - 334)) | (1 << (SqlParser.ESCAPE - 334)) | (1 << (SqlParser.EVEN - 334)) | (1 << (SqlParser.EVENT - 334)) | (1 << (SqlParser.EVENTS - 334)) | (1 << (SqlParser.EVERY - 334)) | (1 << (SqlParser.EXCHANGE - 334)) | (1 << (SqlParser.EXCLUSIVE - 334)) | (1 << (SqlParser.EXPIRE - 334)) | (1 << (SqlParser.EXPORT - 334)) | (1 << (SqlParser.EXTENDED - 334)) | (1 << (SqlParser.EXTENT_SIZE - 334)) | (1 << (SqlParser.FAST - 334)) | (1 << (SqlParser.FAULTS - 334)) | (1 << (SqlParser.FIELDS - 334)) | (1 << (SqlParser.FILE_BLOCK_SIZE - 334)) | (1 << (SqlParser.FILTER - 334)) | (1 << (SqlParser.FIRST - 334)) | (1 << (SqlParser.FIXED - 334)) | (1 << (SqlParser.FLUSH - 334)) | (1 << (SqlParser.FOLLOWS - 334)))) !== 0) || ((((_la - 366)) & ~0x1f) == 0 && ((1 << (_la - 366)) & ((1 << (SqlParser.FOUND - 366)) | (1 << (SqlParser.FULL - 366)) | (1 << (SqlParser.FUNCTION - 366)) | (1 << (SqlParser.GENERAL - 366)) | (1 << (SqlParser.GLOBAL - 366)) | (1 << (SqlParser.GRANTS - 366)) | (1 << (SqlParser.GROUP_REPLICATION - 366)) | (1 << (SqlParser.HANDLER - 366)) | (1 << (SqlParser.HASH - 366)) | (1 << (SqlParser.HELP - 366)) | (1 << (SqlParser.HOST - 366)) | (1 << (SqlParser.HOSTS - 366)) | (1 << (SqlParser.IDENTIFIED - 366)) | (1 << (SqlParser.IGNORE_SERVER_IDS - 366)) | (1 << (SqlParser.IMPORT - 366)) | (1 << (SqlParser.INDEXES - 366)) | (1 << (SqlParser.INITIAL_SIZE - 366)) | (1 << (SqlParser.INPLACE - 366)) | (1 << (SqlParser.INSERT_METHOD - 366)) | (1 << (SqlParser.INSTALL - 366)) | (1 << (SqlParser.INSTANCE - 366)) | (1 << (SqlParser.INVISIBLE - 366)) | (1 << (SqlParser.INVOKER - 366)) | (1 << (SqlParser.IO - 366)) | (1 << (SqlParser.IO_THREAD - 366)) | (1 << (SqlParser.IPC - 366)) | (1 << (SqlParser.ISOLATION - 366)) | (1 << (SqlParser.ISSUER - 366)) | (1 << (SqlParser.JSON - 366)) | (1 << (SqlParser.KEY_BLOCK_SIZE - 366)) | (1 << (SqlParser.LANGUAGE - 366)) | (1 << (SqlParser.LAST - 366)))) !== 0) || ((((_la - 398)) & ~0x1f) == 0 && ((1 << (_la - 398)) & ((1 << (SqlParser.LEAVES - 398)) | (1 << (SqlParser.LESS - 398)) | (1 << (SqlParser.LEVEL - 398)) | (1 << (SqlParser.LIST - 398)) | (1 << (SqlParser.LOCAL - 398)) | (1 << (SqlParser.LOGFILE - 398)) | (1 << (SqlParser.LOGS - 398)) | (1 << (SqlParser.MASTER - 398)) | (1 << (SqlParser.MASTER_AUTO_POSITION - 398)) | (1 << (SqlParser.MASTER_CONNECT_RETRY - 398)) | (1 << (SqlParser.MASTER_DELAY - 398)) | (1 << (SqlParser.MASTER_HEARTBEAT_PERIOD - 398)) | (1 << (SqlParser.MASTER_HOST - 398)) | (1 << (SqlParser.MASTER_LOG_FILE - 398)) | (1 << (SqlParser.MASTER_LOG_POS - 398)) | (1 << (SqlParser.MASTER_PASSWORD - 398)) | (1 << (SqlParser.MASTER_PORT - 398)) | (1 << (SqlParser.MASTER_RETRY_COUNT - 398)) | (1 << (SqlParser.MASTER_SSL - 398)) | (1 << (SqlParser.MASTER_SSL_CA - 398)) | (1 << (SqlParser.MASTER_SSL_CAPATH - 398)) | (1 << (SqlParser.MASTER_SSL_CERT - 398)) | (1 << (SqlParser.MASTER_SSL_CIPHER - 398)) | (1 << (SqlParser.MASTER_SSL_CRL - 398)) | (1 << (SqlParser.MASTER_SSL_CRLPATH - 398)) | (1 << (SqlParser.MASTER_SSL_KEY - 398)) | (1 << (SqlParser.MASTER_TLS_VERSION - 398)) | (1 << (SqlParser.MASTER_USER - 398)) | (1 << (SqlParser.MAX_CONNECTIONS_PER_HOUR - 398)) | (1 << (SqlParser.MAX_QUERIES_PER_HOUR - 398)) | (1 << (SqlParser.MAX_ROWS - 398)) | (1 << (SqlParser.MAX_SIZE - 398)))) !== 0) || ((((_la - 430)) & ~0x1f) == 0 && ((1 << (_la - 430)) & ((1 << (SqlParser.MAX_UPDATES_PER_HOUR - 430)) | (1 << (SqlParser.MAX_USER_CONNECTIONS - 430)) | (1 << (SqlParser.MEDIUM - 430)) | (1 << (SqlParser.MERGE - 430)) | (1 << (SqlParser.MESSAGE_TEXT - 430)) | (1 << (SqlParser.MID - 430)) | (1 << (SqlParser.MIGRATE - 430)) | (1 << (SqlParser.MIN_ROWS - 430)) | (1 << (SqlParser.MODE - 430)) | (1 << (SqlParser.MODIFY - 430)) | (1 << (SqlParser.MUTEX - 430)) | (1 << (SqlParser.MYSQL - 430)) | (1 << (SqlParser.MYSQL_ERRNO - 430)) | (1 << (SqlParser.NAME - 430)) | (1 << (SqlParser.NAMES - 430)) | (1 << (SqlParser.NCHAR - 430)) | (1 << (SqlParser.NEVER - 430)) | (1 << (SqlParser.NEXT - 430)) | (1 << (SqlParser.NO - 430)) | (1 << (SqlParser.NODEGROUP - 430)) | (1 << (SqlParser.NONE - 430)) | (1 << (SqlParser.OFFLINE - 430)) | (1 << (SqlParser.OFFSET - 430)) | (1 << (SqlParser.OJ - 430)) | (1 << (SqlParser.OLD_PASSWORD - 430)) | (1 << (SqlParser.ONE - 430)) | (1 << (SqlParser.ONLINE - 430)) | (1 << (SqlParser.ONLY - 430)) | (1 << (SqlParser.OPEN - 430)) | (1 << (SqlParser.OPTIMIZER_COSTS - 430)) | (1 << (SqlParser.OPTIONS - 430)) | (1 << (SqlParser.OWNER - 430)))) !== 0) || ((((_la - 462)) & ~0x1f) == 0 && ((1 << (_la - 462)) & ((1 << (SqlParser.PACK_KEYS - 462)) | (1 << (SqlParser.PAGE - 462)) | (1 << (SqlParser.PARSER - 462)) | (1 << (SqlParser.PARTIAL - 462)) | (1 << (SqlParser.PARTITIONING - 462)) | (1 << (SqlParser.PARTITIONS - 462)) | (1 << (SqlParser.PASSWORD - 462)) | (1 << (SqlParser.PHASE - 462)) | (1 << (SqlParser.PLUGIN - 462)) | (1 << (SqlParser.PLUGIN_DIR - 462)) | (1 << (SqlParser.PLUGINS - 462)) | (1 << (SqlParser.PORT - 462)) | (1 << (SqlParser.PRECEDES - 462)) | (1 << (SqlParser.PREPARE - 462)) | (1 << (SqlParser.PRESERVE - 462)) | (1 << (SqlParser.PREV - 462)) | (1 << (SqlParser.PROCESSLIST - 462)) | (1 << (SqlParser.PROFILE - 462)) | (1 << (SqlParser.PROFILES - 462)) | (1 << (SqlParser.PROXY - 462)) | (1 << (SqlParser.QUERY - 462)) | (1 << (SqlParser.QUICK - 462)) | (1 << (SqlParser.REBUILD - 462)) | (1 << (SqlParser.RECOVER - 462)) | (1 << (SqlParser.REDO_BUFFER_SIZE - 462)) | (1 << (SqlParser.REDUNDANT - 462)) | (1 << (SqlParser.RELAY - 462)) | (1 << (SqlParser.RELAY_LOG_FILE - 462)) | (1 << (SqlParser.RELAY_LOG_POS - 462)) | (1 << (SqlParser.RELAYLOG - 462)) | (1 << (SqlParser.REMOVE - 462)) | (1 << (SqlParser.REORGANIZE - 462)))) !== 0) || ((((_la - 494)) & ~0x1f) == 0 && ((1 << (_la - 494)) & ((1 << (SqlParser.REPAIR - 494)) | (1 << (SqlParser.REPLICATE_DO_DB - 494)) | (1 << (SqlParser.REPLICATE_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_DB - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATE_REWRITE_DB - 494)) | (1 << (SqlParser.REPLICATE_WILD_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_WILD_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATION - 494)) | (1 << (SqlParser.RESET - 494)) | (1 << (SqlParser.RESUME - 494)) | (1 << (SqlParser.RETURNED_SQLSTATE - 494)) | (1 << (SqlParser.RETURNS - 494)) | (1 << (SqlParser.ROLE - 494)) | (1 << (SqlParser.ROLLBACK - 494)) | (1 << (SqlParser.ROLLUP - 494)) | (1 << (SqlParser.ROTATE - 494)) | (1 << (SqlParser.ROW - 494)) | (1 << (SqlParser.ROWS - 494)) | (1 << (SqlParser.ROW_FORMAT - 494)) | (1 << (SqlParser.SAVEPOINT - 494)) | (1 << (SqlParser.SCHEDULE - 494)) | (1 << (SqlParser.SECURITY - 494)) | (1 << (SqlParser.SERVER - 494)) | (1 << (SqlParser.SESSION - 494)) | (1 << (SqlParser.SHARE - 494)) | (1 << (SqlParser.SHARED - 494)) | (1 << (SqlParser.SIGNED - 494)) | (1 << (SqlParser.SIMPLE - 494)) | (1 << (SqlParser.SLAVE - 494)) | (1 << (SqlParser.SLOW - 494)) | (1 << (SqlParser.SNAPSHOT - 494)))) !== 0) || ((((_la - 526)) & ~0x1f) == 0 && ((1 << (_la - 526)) & ((1 << (SqlParser.SOCKET - 526)) | (1 << (SqlParser.SOME - 526)) | (1 << (SqlParser.SONAME - 526)) | (1 << (SqlParser.SOUNDS - 526)) | (1 << (SqlParser.SOURCE - 526)) | (1 << (SqlParser.SQL_AFTER_GTIDS - 526)) | (1 << (SqlParser.SQL_AFTER_MTS_GAPS - 526)) | (1 << (SqlParser.SQL_BEFORE_GTIDS - 526)) | (1 << (SqlParser.SQL_BUFFER_RESULT - 526)) | (1 << (SqlParser.SQL_CACHE - 526)) | (1 << (SqlParser.SQL_NO_CACHE - 526)) | (1 << (SqlParser.SQL_THREAD - 526)) | (1 << (SqlParser.START - 526)) | (1 << (SqlParser.STARTS - 526)) | (1 << (SqlParser.STATS_AUTO_RECALC - 526)) | (1 << (SqlParser.STATS_PERSISTENT - 526)) | (1 << (SqlParser.STATS_SAMPLE_PAGES - 526)) | (1 << (SqlParser.STATUS - 526)) | (1 << (SqlParser.STOP - 526)) | (1 << (SqlParser.STORAGE - 526)) | (1 << (SqlParser.STRING - 526)) | (1 << (SqlParser.SUBCLASS_ORIGIN - 526)) | (1 << (SqlParser.SUBJECT - 526)) | (1 << (SqlParser.SUBPARTITION - 526)) | (1 << (SqlParser.SUBPARTITIONS - 526)) | (1 << (SqlParser.SUSPEND - 526)) | (1 << (SqlParser.SWAPS - 526)) | (1 << (SqlParser.SWITCHES - 526)) | (1 << (SqlParser.TABLE_NAME - 526)) | (1 << (SqlParser.TABLESPACE - 526)) | (1 << (SqlParser.TEMPORARY - 526)))) !== 0) || ((((_la - 558)) & ~0x1f) == 0 && ((1 << (_la - 558)) & ((1 << (SqlParser.TEMPTABLE - 558)) | (1 << (SqlParser.THAN - 558)) | (1 << (SqlParser.TRADITIONAL - 558)) | (1 << (SqlParser.TRANSACTION - 558)) | (1 << (SqlParser.TRANSACTIONAL - 558)) | (1 << (SqlParser.TRIGGERS - 558)) | (1 << (SqlParser.TRUNCATE - 558)) | (1 << (SqlParser.UNDEFINED - 558)) | (1 << (SqlParser.UNDOFILE - 558)) | (1 << (SqlParser.UNDO_BUFFER_SIZE - 558)) | (1 << (SqlParser.UNINSTALL - 558)) | (1 << (SqlParser.UNKNOWN - 558)) | (1 << (SqlParser.UNTIL - 558)) | (1 << (SqlParser.UPGRADE - 558)) | (1 << (SqlParser.USER - 558)) | (1 << (SqlParser.USE_FRM - 558)) | (1 << (SqlParser.USER_RESOURCES - 558)) | (1 << (SqlParser.VALIDATION - 558)) | (1 << (SqlParser.VALUE - 558)) | (1 << (SqlParser.VARIABLES - 558)) | (1 << (SqlParser.VIEW - 558)) | (1 << (SqlParser.VISIBLE - 558)) | (1 << (SqlParser.WAIT - 558)) | (1 << (SqlParser.WARNINGS - 558)) | (1 << (SqlParser.WITHOUT - 558)) | (1 << (SqlParser.WORK - 558)) | (1 << (SqlParser.WRAPPER - 558)) | (1 << (SqlParser.X509 - 558)) | (1 << (SqlParser.XA - 558)) | (1 << (SqlParser.XML - 558)))) !== 0) || ((((_la - 593)) & ~0x1f) == 0 && ((1 << (_la - 593)) & ((1 << (SqlParser.INTERNAL - 593)) | (1 << (SqlParser.QUARTER - 593)) | (1 << (SqlParser.MONTH - 593)) | (1 << (SqlParser.DAY - 593)) | (1 << (SqlParser.HOUR - 593)) | (1 << (SqlParser.MINUTE - 593)) | (1 << (SqlParser.WEEK - 593)) | (1 << (SqlParser.SECOND - 593)) | (1 << (SqlParser.MICROSECOND - 593)) | (1 << (SqlParser.TABLES - 593)) | (1 << (SqlParser.ROUTINE - 593)) | (1 << (SqlParser.EXECUTE - 593)) | (1 << (SqlParser.FILE - 593)) | (1 << (SqlParser.PROCESS - 593)) | (1 << (SqlParser.RELOAD - 593)) | (1 << (SqlParser.SHUTDOWN - 593)) | (1 << (SqlParser.SUPER - 593)) | (1 << (SqlParser.PRIVILEGES - 593)) | (1 << (SqlParser.AUDIT_ADMIN - 593)) | (1 << (SqlParser.BACKUP_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ENCRYPTION_ADMIN - 593)) | (1 << (SqlParser.CLONE_ADMIN - 593)) | (1 << (SqlParser.CONNECTION_ADMIN - 593)) | (1 << (SqlParser.ENCRYPTION_KEY_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_USER - 593)) | (1 << (SqlParser.GROUP_REPLICATION_ADMIN - 593)) | (1 << (SqlParser.INNODB_REDO_LOG_ARCHIVE - 593)) | (1 << (SqlParser.NDB_STORED_USER - 593)) | (1 << (SqlParser.PERSIST_RO_VARIABLES_ADMIN - 593)))) !== 0) || ((((_la - 625)) & ~0x1f) == 0 && ((1 << (_la - 625)) & ((1 << (SqlParser.REPLICATION_APPLIER - 625)) | (1 << (SqlParser.REPLICATION_SLAVE_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_USER - 625)) | (1 << (SqlParser.ROLE_ADMIN - 625)) | (1 << (SqlParser.SESSION_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.SET_USER_ID - 625)) | (1 << (SqlParser.SHOW_ROUTINE - 625)) | (1 << (SqlParser.SYSTEM_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.TABLE_ENCRYPTION_ADMIN - 625)) | (1 << (SqlParser.VERSION_TOKEN_ADMIN - 625)) | (1 << (SqlParser.XA_RECOVER_ADMIN - 625)) | (1 << (SqlParser.ARMSCII8 - 625)) | (1 << (SqlParser.ASCII - 625)) | (1 << (SqlParser.BIG5 - 625)) | (1 << (SqlParser.CP1250 - 625)) | (1 << (SqlParser.CP1251 - 625)) | (1 << (SqlParser.CP1256 - 625)) | (1 << (SqlParser.CP1257 - 625)) | (1 << (SqlParser.CP850 - 625)) | (1 << (SqlParser.CP852 - 625)) | (1 << (SqlParser.CP866 - 625)) | (1 << (SqlParser.CP932 - 625)) | (1 << (SqlParser.DEC8 - 625)) | (1 << (SqlParser.EUCJPMS - 625)) | (1 << (SqlParser.EUCKR - 625)) | (1 << (SqlParser.GB2312 - 625)) | (1 << (SqlParser.GBK - 625)) | (1 << (SqlParser.GEOSTD8 - 625)) | (1 << (SqlParser.GREEK - 625)) | (1 << (SqlParser.HEBREW - 625)) | (1 << (SqlParser.HP8 - 625)))) !== 0) || ((((_la - 657)) & ~0x1f) == 0 && ((1 << (_la - 657)) & ((1 << (SqlParser.KEYBCS2 - 657)) | (1 << (SqlParser.KOI8R - 657)) | (1 << (SqlParser.KOI8U - 657)) | (1 << (SqlParser.LATIN1 - 657)) | (1 << (SqlParser.LATIN2 - 657)) | (1 << (SqlParser.LATIN5 - 657)) | (1 << (SqlParser.LATIN7 - 657)) | (1 << (SqlParser.MACCE - 657)) | (1 << (SqlParser.MACROMAN - 657)) | (1 << (SqlParser.SJIS - 657)) | (1 << (SqlParser.SWE7 - 657)) | (1 << (SqlParser.TIS620 - 657)) | (1 << (SqlParser.UCS2 - 657)) | (1 << (SqlParser.UJIS - 657)) | (1 << (SqlParser.UTF16 - 657)) | (1 << (SqlParser.UTF16LE - 657)) | (1 << (SqlParser.UTF32 - 657)) | (1 << (SqlParser.UTF8 - 657)) | (1 << (SqlParser.UTF8MB3 - 657)) | (1 << (SqlParser.UTF8MB4 - 657)) | (1 << (SqlParser.ARCHIVE - 657)) | (1 << (SqlParser.BLACKHOLE - 657)) | (1 << (SqlParser.CSV - 657)) | (1 << (SqlParser.FEDERATED - 657)) | (1 << (SqlParser.INNODB - 657)) | (1 << (SqlParser.MEMORY - 657)) | (1 << (SqlParser.MRG_MYISAM - 657)) | (1 << (SqlParser.MYISAM - 657)) | (1 << (SqlParser.NDB - 657)) | (1 << (SqlParser.NDBCLUSTER - 657)) | (1 << (SqlParser.PERFORMANCE_SCHEMA - 657)) | (1 << (SqlParser.TOKUDB - 657)))) !== 0) || ((((_la - 689)) & ~0x1f) == 0 && ((1 << (_la - 689)) & ((1 << (SqlParser.REPEATABLE - 689)) | (1 << (SqlParser.COMMITTED - 689)) | (1 << (SqlParser.UNCOMMITTED - 689)) | (1 << (SqlParser.SERIALIZABLE - 689)) | (1 << (SqlParser.GEOMETRYCOLLECTION - 689)) | (1 << (SqlParser.LINESTRING - 689)) | (1 << (SqlParser.MULTILINESTRING - 689)) | (1 << (SqlParser.MULTIPOINT - 689)) | (1 << (SqlParser.MULTIPOLYGON - 689)) | (1 << (SqlParser.POINT - 689)) | (1 << (SqlParser.POLYGON - 689)) | (1 << (SqlParser.ABS - 689)) | (1 << (SqlParser.ACOS - 689)) | (1 << (SqlParser.ADDDATE - 689)) | (1 << (SqlParser.ADDTIME - 689)) | (1 << (SqlParser.AES_DECRYPT - 689)) | (1 << (SqlParser.AES_ENCRYPT - 689)) | (1 << (SqlParser.AREA - 689)) | (1 << (SqlParser.ASBINARY - 689)) | (1 << (SqlParser.ASIN - 689)) | (1 << (SqlParser.ASTEXT - 689)) | (1 << (SqlParser.ASWKB - 689)) | (1 << (SqlParser.ASWKT - 689)) | (1 << (SqlParser.ASYMMETRIC_DECRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_DERIVE - 689)) | (1 << (SqlParser.ASYMMETRIC_ENCRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_SIGN - 689)) | (1 << (SqlParser.ASYMMETRIC_VERIFY - 689)) | (1 << (SqlParser.ATAN - 689)) | (1 << (SqlParser.ATAN2 - 689)))) !== 0) || ((((_la - 721)) & ~0x1f) == 0 && ((1 << (_la - 721)) & ((1 << (SqlParser.BENCHMARK - 721)) | (1 << (SqlParser.BIN - 721)) | (1 << (SqlParser.BIT_COUNT - 721)) | (1 << (SqlParser.BIT_LENGTH - 721)) | (1 << (SqlParser.BUFFER - 721)) | (1 << (SqlParser.CATALOG_NAME - 721)) | (1 << (SqlParser.CEIL - 721)) | (1 << (SqlParser.CEILING - 721)) | (1 << (SqlParser.CENTROID - 721)) | (1 << (SqlParser.CHARACTER_LENGTH - 721)) | (1 << (SqlParser.CHARSET - 721)) | (1 << (SqlParser.CHAR_LENGTH - 721)) | (1 << (SqlParser.COERCIBILITY - 721)) | (1 << (SqlParser.COLLATION - 721)) | (1 << (SqlParser.COMPRESS - 721)) | (1 << (SqlParser.CONCAT - 721)) | (1 << (SqlParser.CONCAT_WS - 721)) | (1 << (SqlParser.CONNECTION_ID - 721)) | (1 << (SqlParser.CONV - 721)) | (1 << (SqlParser.CONVERT_TZ - 721)) | (1 << (SqlParser.COS - 721)) | (1 << (SqlParser.COT - 721)) | (1 << (SqlParser.CRC32 - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PRIV_KEY - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PUB_KEY - 721)) | (1 << (SqlParser.CREATE_DH_PARAMETERS - 721)) | (1 << (SqlParser.CREATE_DIGEST - 721)) | (1 << (SqlParser.CROSSES - 721)) | (1 << (SqlParser.DATEDIFF - 721)) | (1 << (SqlParser.DATE_FORMAT - 721)) | (1 << (SqlParser.DAYNAME - 721)) | (1 << (SqlParser.DAYOFMONTH - 721)))) !== 0) || ((((_la - 753)) & ~0x1f) == 0 && ((1 << (_la - 753)) & ((1 << (SqlParser.DAYOFWEEK - 753)) | (1 << (SqlParser.DAYOFYEAR - 753)) | (1 << (SqlParser.DECODE - 753)) | (1 << (SqlParser.DEGREES - 753)) | (1 << (SqlParser.DES_DECRYPT - 753)) | (1 << (SqlParser.DES_ENCRYPT - 753)) | (1 << (SqlParser.DIMENSION - 753)) | (1 << (SqlParser.DISJOINT - 753)) | (1 << (SqlParser.ELT - 753)) | (1 << (SqlParser.ENCODE - 753)) | (1 << (SqlParser.ENCRYPT - 753)) | (1 << (SqlParser.ENDPOINT - 753)) | (1 << (SqlParser.ENVELOPE - 753)) | (1 << (SqlParser.EQUALS - 753)) | (1 << (SqlParser.EXP - 753)) | (1 << (SqlParser.EXPORT_SET - 753)) | (1 << (SqlParser.EXTERIORRING - 753)) | (1 << (SqlParser.EXTRACTVALUE - 753)) | (1 << (SqlParser.FIELD - 753)) | (1 << (SqlParser.FIND_IN_SET - 753)) | (1 << (SqlParser.FLOOR - 753)) | (1 << (SqlParser.FORMAT - 753)) | (1 << (SqlParser.FOUND_ROWS - 753)) | (1 << (SqlParser.FROM_BASE64 - 753)) | (1 << (SqlParser.FROM_DAYS - 753)) | (1 << (SqlParser.FROM_UNIXTIME - 753)) | (1 << (SqlParser.GEOMCOLLFROMTEXT - 753)) | (1 << (SqlParser.GEOMCOLLFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYFROMWKB - 753)))) !== 0) || ((((_la - 785)) & ~0x1f) == 0 && ((1 << (_la - 785)) & ((1 << (SqlParser.GEOMETRYN - 785)) | (1 << (SqlParser.GEOMETRYTYPE - 785)) | (1 << (SqlParser.GEOMFROMTEXT - 785)) | (1 << (SqlParser.GEOMFROMWKB - 785)) | (1 << (SqlParser.GET_FORMAT - 785)) | (1 << (SqlParser.GET_LOCK - 785)) | (1 << (SqlParser.GLENGTH - 785)) | (1 << (SqlParser.GREATEST - 785)) | (1 << (SqlParser.GTID_SUBSET - 785)) | (1 << (SqlParser.GTID_SUBTRACT - 785)) | (1 << (SqlParser.HEX - 785)) | (1 << (SqlParser.IFNULL - 785)) | (1 << (SqlParser.INET6_ATON - 785)) | (1 << (SqlParser.INET6_NTOA - 785)) | (1 << (SqlParser.INET_ATON - 785)) | (1 << (SqlParser.INET_NTOA - 785)) | (1 << (SqlParser.INSTR - 785)) | (1 << (SqlParser.INTERIORRINGN - 785)) | (1 << (SqlParser.INTERSECTS - 785)) | (1 << (SqlParser.ISCLOSED - 785)) | (1 << (SqlParser.ISEMPTY - 785)) | (1 << (SqlParser.ISNULL - 785)) | (1 << (SqlParser.ISSIMPLE - 785)) | (1 << (SqlParser.IS_FREE_LOCK - 785)) | (1 << (SqlParser.IS_IPV4 - 785)) | (1 << (SqlParser.IS_IPV4_COMPAT - 785)) | (1 << (SqlParser.IS_IPV4_MAPPED - 785)) | (1 << (SqlParser.IS_IPV6 - 785)) | (1 << (SqlParser.IS_USED_LOCK - 785)) | (1 << (SqlParser.LAST_INSERT_ID - 785)) | (1 << (SqlParser.LCASE - 785)) | (1 << (SqlParser.LEAST - 785)))) !== 0) || ((((_la - 817)) & ~0x1f) == 0 && ((1 << (_la - 817)) & ((1 << (SqlParser.LENGTH - 817)) | (1 << (SqlParser.LINEFROMTEXT - 817)) | (1 << (SqlParser.LINEFROMWKB - 817)) | (1 << (SqlParser.LINESTRINGFROMTEXT - 817)) | (1 << (SqlParser.LINESTRINGFROMWKB - 817)) | (1 << (SqlParser.LN - 817)) | (1 << (SqlParser.LOAD_FILE - 817)) | (1 << (SqlParser.LOCATE - 817)) | (1 << (SqlParser.LOG - 817)) | (1 << (SqlParser.LOG10 - 817)) | (1 << (SqlParser.LOG2 - 817)) | (1 << (SqlParser.LOWER - 817)) | (1 << (SqlParser.LPAD - 817)) | (1 << (SqlParser.LTRIM - 817)) | (1 << (SqlParser.MAKEDATE - 817)) | (1 << (SqlParser.MAKETIME - 817)) | (1 << (SqlParser.MAKE_SET - 817)) | (1 << (SqlParser.MASTER_POS_WAIT - 817)) | (1 << (SqlParser.MBRCONTAINS - 817)) | (1 << (SqlParser.MBRDISJOINT - 817)) | (1 << (SqlParser.MBREQUAL - 817)) | (1 << (SqlParser.MBRINTERSECTS - 817)) | (1 << (SqlParser.MBROVERLAPS - 817)) | (1 << (SqlParser.MBRTOUCHES - 817)) | (1 << (SqlParser.MBRWITHIN - 817)) | (1 << (SqlParser.MD5 - 817)) | (1 << (SqlParser.MLINEFROMTEXT - 817)) | (1 << (SqlParser.MLINEFROMWKB - 817)) | (1 << (SqlParser.MONTHNAME - 817)) | (1 << (SqlParser.MPOINTFROMTEXT - 817)) | (1 << (SqlParser.MPOINTFROMWKB - 817)) | (1 << (SqlParser.MPOLYFROMTEXT - 817)))) !== 0) || ((((_la - 849)) & ~0x1f) == 0 && ((1 << (_la - 849)) & ((1 << (SqlParser.MPOLYFROMWKB - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMTEXT - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMWKB - 849)) | (1 << (SqlParser.MULTIPOINTFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOINTFROMWKB - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMWKB - 849)) | (1 << (SqlParser.NAME_CONST - 849)) | (1 << (SqlParser.NULLIF - 849)) | (1 << (SqlParser.NUMGEOMETRIES - 849)) | (1 << (SqlParser.NUMINTERIORRINGS - 849)) | (1 << (SqlParser.NUMPOINTS - 849)) | (1 << (SqlParser.OCT - 849)) | (1 << (SqlParser.OCTET_LENGTH - 849)) | (1 << (SqlParser.ORD - 849)) | (1 << (SqlParser.OVERLAPS - 849)) | (1 << (SqlParser.PERIOD_ADD - 849)) | (1 << (SqlParser.PERIOD_DIFF - 849)) | (1 << (SqlParser.PI - 849)) | (1 << (SqlParser.POINTFROMTEXT - 849)) | (1 << (SqlParser.POINTFROMWKB - 849)) | (1 << (SqlParser.POINTN - 849)) | (1 << (SqlParser.POLYFROMTEXT - 849)) | (1 << (SqlParser.POLYFROMWKB - 849)) | (1 << (SqlParser.POLYGONFROMTEXT - 849)) | (1 << (SqlParser.POLYGONFROMWKB - 849)) | (1 << (SqlParser.POW - 849)) | (1 << (SqlParser.POWER - 849)) | (1 << (SqlParser.QUOTE - 849)) | (1 << (SqlParser.RADIANS - 849)) | (1 << (SqlParser.RAND - 849)) | (1 << (SqlParser.RANDOM_BYTES - 849)))) !== 0) || ((((_la - 881)) & ~0x1f) == 0 && ((1 << (_la - 881)) & ((1 << (SqlParser.RELEASE_LOCK - 881)) | (1 << (SqlParser.REVERSE - 881)) | (1 << (SqlParser.ROUND - 881)) | (1 << (SqlParser.ROW_COUNT - 881)) | (1 << (SqlParser.RPAD - 881)) | (1 << (SqlParser.RTRIM - 881)) | (1 << (SqlParser.SEC_TO_TIME - 881)) | (1 << (SqlParser.SESSION_USER - 881)) | (1 << (SqlParser.SHA - 881)) | (1 << (SqlParser.SHA1 - 881)) | (1 << (SqlParser.SHA2 - 881)) | (1 << (SqlParser.SCHEMA_NAME - 881)) | (1 << (SqlParser.SIGN - 881)) | (1 << (SqlParser.SIN - 881)) | (1 << (SqlParser.SLEEP - 881)) | (1 << (SqlParser.SOUNDEX - 881)) | (1 << (SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS - 881)) | (1 << (SqlParser.SQRT - 881)) | (1 << (SqlParser.SRID - 881)) | (1 << (SqlParser.STARTPOINT - 881)) | (1 << (SqlParser.STRCMP - 881)) | (1 << (SqlParser.STR_TO_DATE - 881)) | (1 << (SqlParser.ST_AREA - 881)) | (1 << (SqlParser.ST_ASBINARY - 881)) | (1 << (SqlParser.ST_ASTEXT - 881)) | (1 << (SqlParser.ST_ASWKB - 881)) | (1 << (SqlParser.ST_ASWKT - 881)) | (1 << (SqlParser.ST_BUFFER - 881)) | (1 << (SqlParser.ST_CENTROID - 881)) | (1 << (SqlParser.ST_CONTAINS - 881)) | (1 << (SqlParser.ST_CROSSES - 881)) | (1 << (SqlParser.ST_DIFFERENCE - 881)))) !== 0) || ((((_la - 913)) & ~0x1f) == 0 && ((1 << (_la - 913)) & ((1 << (SqlParser.ST_DIMENSION - 913)) | (1 << (SqlParser.ST_DISJOINT - 913)) | (1 << (SqlParser.ST_DISTANCE - 913)) | (1 << (SqlParser.ST_ENDPOINT - 913)) | (1 << (SqlParser.ST_ENVELOPE - 913)) | (1 << (SqlParser.ST_EQUALS - 913)) | (1 << (SqlParser.ST_EXTERIORRING - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYN - 913)) | (1 << (SqlParser.ST_GEOMETRYTYPE - 913)) | (1 << (SqlParser.ST_GEOMFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMFROMWKB - 913)) | (1 << (SqlParser.ST_INTERIORRINGN - 913)) | (1 << (SqlParser.ST_INTERSECTION - 913)) | (1 << (SqlParser.ST_INTERSECTS - 913)) | (1 << (SqlParser.ST_ISCLOSED - 913)) | (1 << (SqlParser.ST_ISEMPTY - 913)) | (1 << (SqlParser.ST_ISSIMPLE - 913)) | (1 << (SqlParser.ST_LINEFROMTEXT - 913)) | (1 << (SqlParser.ST_LINEFROMWKB - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMTEXT - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMWKB - 913)) | (1 << (SqlParser.ST_NUMGEOMETRIES - 913)) | (1 << (SqlParser.ST_NUMINTERIORRING - 913)) | (1 << (SqlParser.ST_NUMINTERIORRINGS - 913)) | (1 << (SqlParser.ST_NUMPOINTS - 913)))) !== 0) || ((((_la - 945)) & ~0x1f) == 0 && ((1 << (_la - 945)) & ((1 << (SqlParser.ST_OVERLAPS - 945)) | (1 << (SqlParser.ST_POINTFROMTEXT - 945)) | (1 << (SqlParser.ST_POINTFROMWKB - 945)) | (1 << (SqlParser.ST_POINTN - 945)) | (1 << (SqlParser.ST_POLYFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYFROMWKB - 945)) | (1 << (SqlParser.ST_POLYGONFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYGONFROMWKB - 945)) | (1 << (SqlParser.ST_SRID - 945)) | (1 << (SqlParser.ST_STARTPOINT - 945)) | (1 << (SqlParser.ST_SYMDIFFERENCE - 945)) | (1 << (SqlParser.ST_TOUCHES - 945)) | (1 << (SqlParser.ST_UNION - 945)) | (1 << (SqlParser.ST_WITHIN - 945)) | (1 << (SqlParser.ST_X - 945)) | (1 << (SqlParser.ST_Y - 945)) | (1 << (SqlParser.SUBDATE - 945)) | (1 << (SqlParser.SUBSTRING_INDEX - 945)) | (1 << (SqlParser.SUBTIME - 945)) | (1 << (SqlParser.SYSTEM_USER - 945)) | (1 << (SqlParser.TAN - 945)) | (1 << (SqlParser.TIMEDIFF - 945)) | (1 << (SqlParser.TIMESTAMPADD - 945)) | (1 << (SqlParser.TIMESTAMPDIFF - 945)) | (1 << (SqlParser.TIME_FORMAT - 945)) | (1 << (SqlParser.TIME_TO_SEC - 945)) | (1 << (SqlParser.TOUCHES - 945)) | (1 << (SqlParser.TO_BASE64 - 945)) | (1 << (SqlParser.TO_DAYS - 945)) | (1 << (SqlParser.TO_SECONDS - 945)) | (1 << (SqlParser.UCASE - 945)) | (1 << (SqlParser.UNCOMPRESS - 945)))) !== 0) || ((((_la - 977)) & ~0x1f) == 0 && ((1 << (_la - 977)) & ((1 << (SqlParser.UNCOMPRESSED_LENGTH - 977)) | (1 << (SqlParser.UNHEX - 977)) | (1 << (SqlParser.UNIX_TIMESTAMP - 977)) | (1 << (SqlParser.UPDATEXML - 977)) | (1 << (SqlParser.UPPER - 977)) | (1 << (SqlParser.UUID - 977)) | (1 << (SqlParser.UUID_SHORT - 977)) | (1 << (SqlParser.VALIDATE_PASSWORD_STRENGTH - 977)) | (1 << (SqlParser.VERSION - 977)) | (1 << (SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS - 977)) | (1 << (SqlParser.WEEKDAY - 977)) | (1 << (SqlParser.WEEKOFYEAR - 977)) | (1 << (SqlParser.WEIGHT_STRING - 977)) | (1 << (SqlParser.WITHIN - 977)) | (1 << (SqlParser.YEARWEEK - 977)) | (1 << (SqlParser.Y_FUNCTION - 977)) | (1 << (SqlParser.X_FUNCTION - 977)))) !== 0) || ((((_la - 1032)) & ~0x1f) == 0 && ((1 << (_la - 1032)) & ((1 << (SqlParser.CHARSET_REVERSE_QOUTE_STRING - 1032)) | (1 << (SqlParser.STRING_LITERAL - 1032)) | (1 << (SqlParser.ID - 1032)) | (1 << (SqlParser.REVERSE_QUOTE_ID - 1032)))) !== 0)) {
+ this.state = 3927;
+ this.uid();
+ this.state = 3932;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 3928;
+ this.match(SqlParser.COMMA);
+ this.state = 3929;
+ this.uid();
+ this.state = 3934;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ }
+
+ this.state = 3937;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function StringMasterOptionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_stringMasterOption;
+ return this;
+}
+
+StringMasterOptionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+StringMasterOptionContext.prototype.constructor = StringMasterOptionContext;
+
+StringMasterOptionContext.prototype.MASTER_BIND = function() {
+ return this.getToken(SqlParser.MASTER_BIND, 0);
+};
+
+StringMasterOptionContext.prototype.MASTER_HOST = function() {
+ return this.getToken(SqlParser.MASTER_HOST, 0);
+};
+
+StringMasterOptionContext.prototype.MASTER_USER = function() {
+ return this.getToken(SqlParser.MASTER_USER, 0);
+};
+
+StringMasterOptionContext.prototype.MASTER_PASSWORD = function() {
+ return this.getToken(SqlParser.MASTER_PASSWORD, 0);
+};
+
+StringMasterOptionContext.prototype.MASTER_LOG_FILE = function() {
+ return this.getToken(SqlParser.MASTER_LOG_FILE, 0);
+};
+
+StringMasterOptionContext.prototype.RELAY_LOG_FILE = function() {
+ return this.getToken(SqlParser.RELAY_LOG_FILE, 0);
+};
+
+StringMasterOptionContext.prototype.MASTER_SSL_CA = function() {
+ return this.getToken(SqlParser.MASTER_SSL_CA, 0);
+};
+
+StringMasterOptionContext.prototype.MASTER_SSL_CAPATH = function() {
+ return this.getToken(SqlParser.MASTER_SSL_CAPATH, 0);
+};
+
+StringMasterOptionContext.prototype.MASTER_SSL_CERT = function() {
+ return this.getToken(SqlParser.MASTER_SSL_CERT, 0);
+};
+
+StringMasterOptionContext.prototype.MASTER_SSL_CRL = function() {
+ return this.getToken(SqlParser.MASTER_SSL_CRL, 0);
+};
+
+StringMasterOptionContext.prototype.MASTER_SSL_CRLPATH = function() {
+ return this.getToken(SqlParser.MASTER_SSL_CRLPATH, 0);
+};
+
+StringMasterOptionContext.prototype.MASTER_SSL_KEY = function() {
+ return this.getToken(SqlParser.MASTER_SSL_KEY, 0);
+};
+
+StringMasterOptionContext.prototype.MASTER_SSL_CIPHER = function() {
+ return this.getToken(SqlParser.MASTER_SSL_CIPHER, 0);
+};
+
+StringMasterOptionContext.prototype.MASTER_TLS_VERSION = function() {
+ return this.getToken(SqlParser.MASTER_TLS_VERSION, 0);
+};
+
+StringMasterOptionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterStringMasterOption(this);
+ }
+};
+
+StringMasterOptionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitStringMasterOption(this);
+ }
+};
+
+StringMasterOptionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitStringMasterOption(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.StringMasterOptionContext = StringMasterOptionContext;
+
+SqlParser.prototype.stringMasterOption = function() {
+
+ var localctx = new StringMasterOptionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 308, SqlParser.RULE_stringMasterOption);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3940;
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.MASTER_BIND || ((((_la - 410)) & ~0x1f) == 0 && ((1 << (_la - 410)) & ((1 << (SqlParser.MASTER_HOST - 410)) | (1 << (SqlParser.MASTER_LOG_FILE - 410)) | (1 << (SqlParser.MASTER_PASSWORD - 410)) | (1 << (SqlParser.MASTER_SSL_CA - 410)) | (1 << (SqlParser.MASTER_SSL_CAPATH - 410)) | (1 << (SqlParser.MASTER_SSL_CERT - 410)) | (1 << (SqlParser.MASTER_SSL_CIPHER - 410)) | (1 << (SqlParser.MASTER_SSL_CRL - 410)) | (1 << (SqlParser.MASTER_SSL_CRLPATH - 410)) | (1 << (SqlParser.MASTER_SSL_KEY - 410)) | (1 << (SqlParser.MASTER_TLS_VERSION - 410)) | (1 << (SqlParser.MASTER_USER - 410)))) !== 0) || _la===SqlParser.RELAY_LOG_FILE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function DecimalMasterOptionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_decimalMasterOption;
+ return this;
+}
+
+DecimalMasterOptionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+DecimalMasterOptionContext.prototype.constructor = DecimalMasterOptionContext;
+
+DecimalMasterOptionContext.prototype.MASTER_PORT = function() {
+ return this.getToken(SqlParser.MASTER_PORT, 0);
+};
+
+DecimalMasterOptionContext.prototype.MASTER_CONNECT_RETRY = function() {
+ return this.getToken(SqlParser.MASTER_CONNECT_RETRY, 0);
+};
+
+DecimalMasterOptionContext.prototype.MASTER_RETRY_COUNT = function() {
+ return this.getToken(SqlParser.MASTER_RETRY_COUNT, 0);
+};
+
+DecimalMasterOptionContext.prototype.MASTER_DELAY = function() {
+ return this.getToken(SqlParser.MASTER_DELAY, 0);
+};
+
+DecimalMasterOptionContext.prototype.MASTER_LOG_POS = function() {
+ return this.getToken(SqlParser.MASTER_LOG_POS, 0);
+};
+
+DecimalMasterOptionContext.prototype.RELAY_LOG_POS = function() {
+ return this.getToken(SqlParser.RELAY_LOG_POS, 0);
+};
+
+DecimalMasterOptionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterDecimalMasterOption(this);
+ }
+};
+
+DecimalMasterOptionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitDecimalMasterOption(this);
+ }
+};
+
+DecimalMasterOptionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitDecimalMasterOption(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.DecimalMasterOptionContext = DecimalMasterOptionContext;
+
+SqlParser.prototype.decimalMasterOption = function() {
+
+ var localctx = new DecimalMasterOptionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 310, SqlParser.RULE_decimalMasterOption);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3942;
+ _la = this._input.LA(1);
+ if(!(((((_la - 407)) & ~0x1f) == 0 && ((1 << (_la - 407)) & ((1 << (SqlParser.MASTER_CONNECT_RETRY - 407)) | (1 << (SqlParser.MASTER_DELAY - 407)) | (1 << (SqlParser.MASTER_LOG_POS - 407)) | (1 << (SqlParser.MASTER_PORT - 407)) | (1 << (SqlParser.MASTER_RETRY_COUNT - 407)))) !== 0) || _la===SqlParser.RELAY_LOG_POS)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function BoolMasterOptionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_boolMasterOption;
+ return this;
+}
+
+BoolMasterOptionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+BoolMasterOptionContext.prototype.constructor = BoolMasterOptionContext;
+
+BoolMasterOptionContext.prototype.MASTER_AUTO_POSITION = function() {
+ return this.getToken(SqlParser.MASTER_AUTO_POSITION, 0);
+};
+
+BoolMasterOptionContext.prototype.MASTER_SSL = function() {
+ return this.getToken(SqlParser.MASTER_SSL, 0);
+};
+
+BoolMasterOptionContext.prototype.MASTER_SSL_VERIFY_SERVER_CERT = function() {
+ return this.getToken(SqlParser.MASTER_SSL_VERIFY_SERVER_CERT, 0);
+};
+
+BoolMasterOptionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterBoolMasterOption(this);
+ }
+};
+
+BoolMasterOptionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitBoolMasterOption(this);
+ }
+};
+
+BoolMasterOptionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitBoolMasterOption(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.BoolMasterOptionContext = BoolMasterOptionContext;
+
+SqlParser.prototype.boolMasterOption = function() {
+
+ var localctx = new BoolMasterOptionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 312, SqlParser.RULE_boolMasterOption);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3944;
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.MASTER_SSL_VERIFY_SERVER_CERT || _la===SqlParser.MASTER_AUTO_POSITION || _la===SqlParser.MASTER_SSL)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function ChannelOptionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_channelOption;
+ return this;
+}
+
+ChannelOptionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+ChannelOptionContext.prototype.constructor = ChannelOptionContext;
+
+ChannelOptionContext.prototype.FOR = function() {
+ return this.getToken(SqlParser.FOR, 0);
+};
+
+ChannelOptionContext.prototype.CHANNEL = function() {
+ return this.getToken(SqlParser.CHANNEL, 0);
+};
+
+ChannelOptionContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+ChannelOptionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterChannelOption(this);
+ }
+};
+
+ChannelOptionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitChannelOption(this);
+ }
+};
+
+ChannelOptionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitChannelOption(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.ChannelOptionContext = ChannelOptionContext;
+
+SqlParser.prototype.channelOption = function() {
+
+ var localctx = new ChannelOptionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 314, SqlParser.RULE_channelOption);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3946;
+ this.match(SqlParser.FOR);
+ this.state = 3947;
+ this.match(SqlParser.CHANNEL);
+ this.state = 3948;
+ this.match(SqlParser.STRING_LITERAL);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function ReplicationFilterContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_replicationFilter;
+ return this;
+}
+
+ReplicationFilterContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+ReplicationFilterContext.prototype.constructor = ReplicationFilterContext;
+
+
+
+ReplicationFilterContext.prototype.copyFrom = function(ctx) {
+ antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx);
+};
+
+
+function WildIgnoreTableReplicationContext(parser, ctx) {
+ ReplicationFilterContext.call(this, parser);
+ ReplicationFilterContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+WildIgnoreTableReplicationContext.prototype = Object.create(ReplicationFilterContext.prototype);
+WildIgnoreTableReplicationContext.prototype.constructor = WildIgnoreTableReplicationContext;
+
+SqlParser.WildIgnoreTableReplicationContext = WildIgnoreTableReplicationContext;
+
+WildIgnoreTableReplicationContext.prototype.REPLICATE_WILD_IGNORE_TABLE = function() {
+ return this.getToken(SqlParser.REPLICATE_WILD_IGNORE_TABLE, 0);
+};
+
+WildIgnoreTableReplicationContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+
+WildIgnoreTableReplicationContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+WildIgnoreTableReplicationContext.prototype.simpleStrings = function() {
+ return this.getTypedRuleContext(SimpleStringsContext,0);
+};
+
+WildIgnoreTableReplicationContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+WildIgnoreTableReplicationContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterWildIgnoreTableReplication(this);
+ }
+};
+
+WildIgnoreTableReplicationContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitWildIgnoreTableReplication(this);
+ }
+};
+
+WildIgnoreTableReplicationContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitWildIgnoreTableReplication(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function DoTableReplicationContext(parser, ctx) {
+ ReplicationFilterContext.call(this, parser);
+ ReplicationFilterContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+DoTableReplicationContext.prototype = Object.create(ReplicationFilterContext.prototype);
+DoTableReplicationContext.prototype.constructor = DoTableReplicationContext;
+
+SqlParser.DoTableReplicationContext = DoTableReplicationContext;
+
+DoTableReplicationContext.prototype.REPLICATE_DO_TABLE = function() {
+ return this.getToken(SqlParser.REPLICATE_DO_TABLE, 0);
+};
+
+DoTableReplicationContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+
+DoTableReplicationContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+DoTableReplicationContext.prototype.tables = function() {
+ return this.getTypedRuleContext(TablesContext,0);
+};
+
+DoTableReplicationContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+DoTableReplicationContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterDoTableReplication(this);
+ }
+};
+
+DoTableReplicationContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitDoTableReplication(this);
+ }
+};
+
+DoTableReplicationContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitDoTableReplication(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function IgnoreTableReplicationContext(parser, ctx) {
+ ReplicationFilterContext.call(this, parser);
+ ReplicationFilterContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+IgnoreTableReplicationContext.prototype = Object.create(ReplicationFilterContext.prototype);
+IgnoreTableReplicationContext.prototype.constructor = IgnoreTableReplicationContext;
+
+SqlParser.IgnoreTableReplicationContext = IgnoreTableReplicationContext;
+
+IgnoreTableReplicationContext.prototype.REPLICATE_IGNORE_TABLE = function() {
+ return this.getToken(SqlParser.REPLICATE_IGNORE_TABLE, 0);
+};
+
+IgnoreTableReplicationContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+
+IgnoreTableReplicationContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+IgnoreTableReplicationContext.prototype.tables = function() {
+ return this.getTypedRuleContext(TablesContext,0);
+};
+
+IgnoreTableReplicationContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+IgnoreTableReplicationContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterIgnoreTableReplication(this);
+ }
+};
+
+IgnoreTableReplicationContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitIgnoreTableReplication(this);
+ }
+};
+
+IgnoreTableReplicationContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitIgnoreTableReplication(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function RewriteDbReplicationContext(parser, ctx) {
+ ReplicationFilterContext.call(this, parser);
+ ReplicationFilterContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+RewriteDbReplicationContext.prototype = Object.create(ReplicationFilterContext.prototype);
+RewriteDbReplicationContext.prototype.constructor = RewriteDbReplicationContext;
+
+SqlParser.RewriteDbReplicationContext = RewriteDbReplicationContext;
+
+RewriteDbReplicationContext.prototype.REPLICATE_REWRITE_DB = function() {
+ return this.getToken(SqlParser.REPLICATE_REWRITE_DB, 0);
+};
+
+RewriteDbReplicationContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+
+RewriteDbReplicationContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+RewriteDbReplicationContext.prototype.tablePair = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(TablePairContext);
+ } else {
+ return this.getTypedRuleContext(TablePairContext,i);
+ }
+};
+
+RewriteDbReplicationContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+RewriteDbReplicationContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+RewriteDbReplicationContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterRewriteDbReplication(this);
+ }
+};
+
+RewriteDbReplicationContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitRewriteDbReplication(this);
+ }
+};
+
+RewriteDbReplicationContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitRewriteDbReplication(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function DoDbReplicationContext(parser, ctx) {
+ ReplicationFilterContext.call(this, parser);
+ ReplicationFilterContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+DoDbReplicationContext.prototype = Object.create(ReplicationFilterContext.prototype);
+DoDbReplicationContext.prototype.constructor = DoDbReplicationContext;
+
+SqlParser.DoDbReplicationContext = DoDbReplicationContext;
+
+DoDbReplicationContext.prototype.REPLICATE_DO_DB = function() {
+ return this.getToken(SqlParser.REPLICATE_DO_DB, 0);
+};
+
+DoDbReplicationContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+
+DoDbReplicationContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+DoDbReplicationContext.prototype.uidList = function() {
+ return this.getTypedRuleContext(UidListContext,0);
+};
+
+DoDbReplicationContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+DoDbReplicationContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterDoDbReplication(this);
+ }
+};
+
+DoDbReplicationContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitDoDbReplication(this);
+ }
+};
+
+DoDbReplicationContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitDoDbReplication(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function IgnoreDbReplicationContext(parser, ctx) {
+ ReplicationFilterContext.call(this, parser);
+ ReplicationFilterContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+IgnoreDbReplicationContext.prototype = Object.create(ReplicationFilterContext.prototype);
+IgnoreDbReplicationContext.prototype.constructor = IgnoreDbReplicationContext;
+
+SqlParser.IgnoreDbReplicationContext = IgnoreDbReplicationContext;
+
+IgnoreDbReplicationContext.prototype.REPLICATE_IGNORE_DB = function() {
+ return this.getToken(SqlParser.REPLICATE_IGNORE_DB, 0);
+};
+
+IgnoreDbReplicationContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+
+IgnoreDbReplicationContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+IgnoreDbReplicationContext.prototype.uidList = function() {
+ return this.getTypedRuleContext(UidListContext,0);
+};
+
+IgnoreDbReplicationContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+IgnoreDbReplicationContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterIgnoreDbReplication(this);
+ }
+};
+
+IgnoreDbReplicationContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitIgnoreDbReplication(this);
+ }
+};
+
+IgnoreDbReplicationContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitIgnoreDbReplication(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function WildDoTableReplicationContext(parser, ctx) {
+ ReplicationFilterContext.call(this, parser);
+ ReplicationFilterContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+WildDoTableReplicationContext.prototype = Object.create(ReplicationFilterContext.prototype);
+WildDoTableReplicationContext.prototype.constructor = WildDoTableReplicationContext;
+
+SqlParser.WildDoTableReplicationContext = WildDoTableReplicationContext;
+
+WildDoTableReplicationContext.prototype.REPLICATE_WILD_DO_TABLE = function() {
+ return this.getToken(SqlParser.REPLICATE_WILD_DO_TABLE, 0);
+};
+
+WildDoTableReplicationContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+
+WildDoTableReplicationContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+WildDoTableReplicationContext.prototype.simpleStrings = function() {
+ return this.getTypedRuleContext(SimpleStringsContext,0);
+};
+
+WildDoTableReplicationContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+WildDoTableReplicationContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterWildDoTableReplication(this);
+ }
+};
+
+WildDoTableReplicationContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitWildDoTableReplication(this);
+ }
+};
+
+WildDoTableReplicationContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitWildDoTableReplication(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+SqlParser.ReplicationFilterContext = ReplicationFilterContext;
+
+SqlParser.prototype.replicationFilter = function() {
+
+ var localctx = new ReplicationFilterContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 316, SqlParser.RULE_replicationFilter);
+ var _la = 0; // Token type
+ try {
+ this.state = 3999;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.REPLICATE_DO_DB:
+ localctx = new DoDbReplicationContext(this, localctx);
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3950;
+ this.match(SqlParser.REPLICATE_DO_DB);
+ this.state = 3951;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ this.state = 3952;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 3953;
+ this.uidList();
+ this.state = 3954;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+ case SqlParser.REPLICATE_IGNORE_DB:
+ localctx = new IgnoreDbReplicationContext(this, localctx);
+ this.enterOuterAlt(localctx, 2);
+ this.state = 3956;
+ this.match(SqlParser.REPLICATE_IGNORE_DB);
+ this.state = 3957;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ this.state = 3958;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 3959;
+ this.uidList();
+ this.state = 3960;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+ case SqlParser.REPLICATE_DO_TABLE:
+ localctx = new DoTableReplicationContext(this, localctx);
+ this.enterOuterAlt(localctx, 3);
+ this.state = 3962;
+ this.match(SqlParser.REPLICATE_DO_TABLE);
+ this.state = 3963;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ this.state = 3964;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 3965;
+ this.tables();
+ this.state = 3966;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+ case SqlParser.REPLICATE_IGNORE_TABLE:
+ localctx = new IgnoreTableReplicationContext(this, localctx);
+ this.enterOuterAlt(localctx, 4);
+ this.state = 3968;
+ this.match(SqlParser.REPLICATE_IGNORE_TABLE);
+ this.state = 3969;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ this.state = 3970;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 3971;
+ this.tables();
+ this.state = 3972;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+ case SqlParser.REPLICATE_WILD_DO_TABLE:
+ localctx = new WildDoTableReplicationContext(this, localctx);
+ this.enterOuterAlt(localctx, 5);
+ this.state = 3974;
+ this.match(SqlParser.REPLICATE_WILD_DO_TABLE);
+ this.state = 3975;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ this.state = 3976;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 3977;
+ this.simpleStrings();
+ this.state = 3978;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+ case SqlParser.REPLICATE_WILD_IGNORE_TABLE:
+ localctx = new WildIgnoreTableReplicationContext(this, localctx);
+ this.enterOuterAlt(localctx, 6);
+ this.state = 3980;
+ this.match(SqlParser.REPLICATE_WILD_IGNORE_TABLE);
+ this.state = 3981;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ this.state = 3982;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 3983;
+ this.simpleStrings();
+ this.state = 3984;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+ case SqlParser.REPLICATE_REWRITE_DB:
+ localctx = new RewriteDbReplicationContext(this, localctx);
+ this.enterOuterAlt(localctx, 7);
+ this.state = 3986;
+ this.match(SqlParser.REPLICATE_REWRITE_DB);
+ this.state = 3987;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ this.state = 3988;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 3989;
+ this.tablePair();
+ this.state = 3994;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 3990;
+ this.match(SqlParser.COMMA);
+ this.state = 3991;
+ this.tablePair();
+ this.state = 3996;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 3997;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function TablePairContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_tablePair;
+ this.firstTable = null; // TableNameContext
+ this.secondTable = null; // TableNameContext
+ return this;
+}
+
+TablePairContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+TablePairContext.prototype.constructor = TablePairContext;
+
+TablePairContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+TablePairContext.prototype.COMMA = function() {
+ return this.getToken(SqlParser.COMMA, 0);
+};
+
+TablePairContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+TablePairContext.prototype.tableName = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(TableNameContext);
+ } else {
+ return this.getTypedRuleContext(TableNameContext,i);
+ }
+};
+
+TablePairContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterTablePair(this);
+ }
+};
+
+TablePairContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitTablePair(this);
+ }
+};
+
+TablePairContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitTablePair(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.TablePairContext = TablePairContext;
+
+SqlParser.prototype.tablePair = function() {
+
+ var localctx = new TablePairContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 318, SqlParser.RULE_tablePair);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4001;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 4002;
+ localctx.firstTable = this.tableName();
+ this.state = 4003;
+ this.match(SqlParser.COMMA);
+ this.state = 4004;
+ localctx.secondTable = this.tableName();
+ this.state = 4005;
+ this.match(SqlParser.RR_BRACKET);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function ThreadTypeContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_threadType;
+ return this;
+}
+
+ThreadTypeContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+ThreadTypeContext.prototype.constructor = ThreadTypeContext;
+
+ThreadTypeContext.prototype.IO_THREAD = function() {
+ return this.getToken(SqlParser.IO_THREAD, 0);
+};
+
+ThreadTypeContext.prototype.SQL_THREAD = function() {
+ return this.getToken(SqlParser.SQL_THREAD, 0);
+};
+
+ThreadTypeContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterThreadType(this);
+ }
+};
+
+ThreadTypeContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitThreadType(this);
+ }
+};
+
+ThreadTypeContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitThreadType(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.ThreadTypeContext = ThreadTypeContext;
+
+SqlParser.prototype.threadType = function() {
+
+ var localctx = new ThreadTypeContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 320, SqlParser.RULE_threadType);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4007;
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.IO_THREAD || _la===SqlParser.SQL_THREAD)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function UntilOptionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_untilOption;
+ return this;
+}
+
+UntilOptionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+UntilOptionContext.prototype.constructor = UntilOptionContext;
+
+
+
+UntilOptionContext.prototype.copyFrom = function(ctx) {
+ antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx);
+};
+
+
+function GtidsUntilOptionContext(parser, ctx) {
+ UntilOptionContext.call(this, parser);
+ this.gtids = null; // Token;
+ UntilOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+GtidsUntilOptionContext.prototype = Object.create(UntilOptionContext.prototype);
+GtidsUntilOptionContext.prototype.constructor = GtidsUntilOptionContext;
+
+SqlParser.GtidsUntilOptionContext = GtidsUntilOptionContext;
+
+GtidsUntilOptionContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+
+GtidsUntilOptionContext.prototype.gtuidSet = function() {
+ return this.getTypedRuleContext(GtuidSetContext,0);
+};
+
+GtidsUntilOptionContext.prototype.SQL_BEFORE_GTIDS = function() {
+ return this.getToken(SqlParser.SQL_BEFORE_GTIDS, 0);
+};
+
+GtidsUntilOptionContext.prototype.SQL_AFTER_GTIDS = function() {
+ return this.getToken(SqlParser.SQL_AFTER_GTIDS, 0);
+};
+GtidsUntilOptionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterGtidsUntilOption(this);
+ }
+};
+
+GtidsUntilOptionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitGtidsUntilOption(this);
+ }
+};
+
+GtidsUntilOptionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitGtidsUntilOption(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function SqlGapsUntilOptionContext(parser, ctx) {
+ UntilOptionContext.call(this, parser);
+ UntilOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+SqlGapsUntilOptionContext.prototype = Object.create(UntilOptionContext.prototype);
+SqlGapsUntilOptionContext.prototype.constructor = SqlGapsUntilOptionContext;
+
+SqlParser.SqlGapsUntilOptionContext = SqlGapsUntilOptionContext;
+
+SqlGapsUntilOptionContext.prototype.SQL_AFTER_MTS_GAPS = function() {
+ return this.getToken(SqlParser.SQL_AFTER_MTS_GAPS, 0);
+};
+SqlGapsUntilOptionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSqlGapsUntilOption(this);
+ }
+};
+
+SqlGapsUntilOptionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSqlGapsUntilOption(this);
+ }
+};
+
+SqlGapsUntilOptionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSqlGapsUntilOption(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function MasterLogUntilOptionContext(parser, ctx) {
+ UntilOptionContext.call(this, parser);
+ UntilOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+MasterLogUntilOptionContext.prototype = Object.create(UntilOptionContext.prototype);
+MasterLogUntilOptionContext.prototype.constructor = MasterLogUntilOptionContext;
+
+SqlParser.MasterLogUntilOptionContext = MasterLogUntilOptionContext;
+
+MasterLogUntilOptionContext.prototype.MASTER_LOG_FILE = function() {
+ return this.getToken(SqlParser.MASTER_LOG_FILE, 0);
+};
+
+MasterLogUntilOptionContext.prototype.EQUAL_SYMBOL = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.EQUAL_SYMBOL);
+ } else {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, i);
+ }
+};
+
+
+MasterLogUntilOptionContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+MasterLogUntilOptionContext.prototype.COMMA = function() {
+ return this.getToken(SqlParser.COMMA, 0);
+};
+
+MasterLogUntilOptionContext.prototype.MASTER_LOG_POS = function() {
+ return this.getToken(SqlParser.MASTER_LOG_POS, 0);
+};
+
+MasterLogUntilOptionContext.prototype.decimalLiteral = function() {
+ return this.getTypedRuleContext(DecimalLiteralContext,0);
+};
+MasterLogUntilOptionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterMasterLogUntilOption(this);
+ }
+};
+
+MasterLogUntilOptionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitMasterLogUntilOption(this);
+ }
+};
+
+MasterLogUntilOptionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitMasterLogUntilOption(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function RelayLogUntilOptionContext(parser, ctx) {
+ UntilOptionContext.call(this, parser);
+ UntilOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+RelayLogUntilOptionContext.prototype = Object.create(UntilOptionContext.prototype);
+RelayLogUntilOptionContext.prototype.constructor = RelayLogUntilOptionContext;
+
+SqlParser.RelayLogUntilOptionContext = RelayLogUntilOptionContext;
+
+RelayLogUntilOptionContext.prototype.RELAY_LOG_FILE = function() {
+ return this.getToken(SqlParser.RELAY_LOG_FILE, 0);
+};
+
+RelayLogUntilOptionContext.prototype.EQUAL_SYMBOL = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.EQUAL_SYMBOL);
+ } else {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, i);
+ }
+};
+
+
+RelayLogUntilOptionContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+RelayLogUntilOptionContext.prototype.COMMA = function() {
+ return this.getToken(SqlParser.COMMA, 0);
+};
+
+RelayLogUntilOptionContext.prototype.RELAY_LOG_POS = function() {
+ return this.getToken(SqlParser.RELAY_LOG_POS, 0);
+};
+
+RelayLogUntilOptionContext.prototype.decimalLiteral = function() {
+ return this.getTypedRuleContext(DecimalLiteralContext,0);
+};
+RelayLogUntilOptionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterRelayLogUntilOption(this);
+ }
+};
+
+RelayLogUntilOptionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitRelayLogUntilOption(this);
+ }
+};
+
+RelayLogUntilOptionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitRelayLogUntilOption(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+SqlParser.UntilOptionContext = UntilOptionContext;
+
+SqlParser.prototype.untilOption = function() {
+
+ var localctx = new UntilOptionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 322, SqlParser.RULE_untilOption);
+ var _la = 0; // Token type
+ try {
+ this.state = 4027;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.SQL_AFTER_GTIDS:
+ case SqlParser.SQL_BEFORE_GTIDS:
+ localctx = new GtidsUntilOptionContext(this, localctx);
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4009;
+ localctx.gtids = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.SQL_AFTER_GTIDS || _la===SqlParser.SQL_BEFORE_GTIDS)) {
+ localctx.gtids = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 4010;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ this.state = 4011;
+ this.gtuidSet();
+ break;
+ case SqlParser.MASTER_LOG_FILE:
+ localctx = new MasterLogUntilOptionContext(this, localctx);
+ this.enterOuterAlt(localctx, 2);
+ this.state = 4012;
+ this.match(SqlParser.MASTER_LOG_FILE);
+ this.state = 4013;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ this.state = 4014;
+ this.match(SqlParser.STRING_LITERAL);
+ this.state = 4015;
+ this.match(SqlParser.COMMA);
+ this.state = 4016;
+ this.match(SqlParser.MASTER_LOG_POS);
+ this.state = 4017;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ this.state = 4018;
+ this.decimalLiteral();
+ break;
+ case SqlParser.RELAY_LOG_FILE:
+ localctx = new RelayLogUntilOptionContext(this, localctx);
+ this.enterOuterAlt(localctx, 3);
+ this.state = 4019;
+ this.match(SqlParser.RELAY_LOG_FILE);
+ this.state = 4020;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ this.state = 4021;
+ this.match(SqlParser.STRING_LITERAL);
+ this.state = 4022;
+ this.match(SqlParser.COMMA);
+ this.state = 4023;
+ this.match(SqlParser.RELAY_LOG_POS);
+ this.state = 4024;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ this.state = 4025;
+ this.decimalLiteral();
+ break;
+ case SqlParser.SQL_AFTER_MTS_GAPS:
+ localctx = new SqlGapsUntilOptionContext(this, localctx);
+ this.enterOuterAlt(localctx, 4);
+ this.state = 4026;
+ this.match(SqlParser.SQL_AFTER_MTS_GAPS);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function ConnectionOptionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_connectionOption;
+ return this;
+}
+
+ConnectionOptionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+ConnectionOptionContext.prototype.constructor = ConnectionOptionContext;
+
+
+
+ConnectionOptionContext.prototype.copyFrom = function(ctx) {
+ antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx);
+};
+
+
+function PluginDirConnectionOptionContext(parser, ctx) {
+ ConnectionOptionContext.call(this, parser);
+ this.conOptPluginDir = null; // Token;
+ ConnectionOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+PluginDirConnectionOptionContext.prototype = Object.create(ConnectionOptionContext.prototype);
+PluginDirConnectionOptionContext.prototype.constructor = PluginDirConnectionOptionContext;
+
+SqlParser.PluginDirConnectionOptionContext = PluginDirConnectionOptionContext;
+
+PluginDirConnectionOptionContext.prototype.PLUGIN_DIR = function() {
+ return this.getToken(SqlParser.PLUGIN_DIR, 0);
+};
+
+PluginDirConnectionOptionContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+
+PluginDirConnectionOptionContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+PluginDirConnectionOptionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterPluginDirConnectionOption(this);
+ }
+};
+
+PluginDirConnectionOptionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitPluginDirConnectionOption(this);
+ }
+};
+
+PluginDirConnectionOptionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitPluginDirConnectionOption(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function UserConnectionOptionContext(parser, ctx) {
+ ConnectionOptionContext.call(this, parser);
+ this.conOptUser = null; // Token;
+ ConnectionOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+UserConnectionOptionContext.prototype = Object.create(ConnectionOptionContext.prototype);
+UserConnectionOptionContext.prototype.constructor = UserConnectionOptionContext;
+
+SqlParser.UserConnectionOptionContext = UserConnectionOptionContext;
+
+UserConnectionOptionContext.prototype.USER = function() {
+ return this.getToken(SqlParser.USER, 0);
+};
+
+UserConnectionOptionContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+
+UserConnectionOptionContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+UserConnectionOptionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterUserConnectionOption(this);
+ }
+};
+
+UserConnectionOptionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitUserConnectionOption(this);
+ }
+};
+
+UserConnectionOptionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitUserConnectionOption(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function DefaultAuthConnectionOptionContext(parser, ctx) {
+ ConnectionOptionContext.call(this, parser);
+ this.conOptDefAuth = null; // Token;
+ ConnectionOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+DefaultAuthConnectionOptionContext.prototype = Object.create(ConnectionOptionContext.prototype);
+DefaultAuthConnectionOptionContext.prototype.constructor = DefaultAuthConnectionOptionContext;
+
+SqlParser.DefaultAuthConnectionOptionContext = DefaultAuthConnectionOptionContext;
+
+DefaultAuthConnectionOptionContext.prototype.DEFAULT_AUTH = function() {
+ return this.getToken(SqlParser.DEFAULT_AUTH, 0);
+};
+
+DefaultAuthConnectionOptionContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+
+DefaultAuthConnectionOptionContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+DefaultAuthConnectionOptionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterDefaultAuthConnectionOption(this);
+ }
+};
+
+DefaultAuthConnectionOptionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitDefaultAuthConnectionOption(this);
+ }
+};
+
+DefaultAuthConnectionOptionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitDefaultAuthConnectionOption(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function PasswordConnectionOptionContext(parser, ctx) {
+ ConnectionOptionContext.call(this, parser);
+ this.conOptPassword = null; // Token;
+ ConnectionOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+PasswordConnectionOptionContext.prototype = Object.create(ConnectionOptionContext.prototype);
+PasswordConnectionOptionContext.prototype.constructor = PasswordConnectionOptionContext;
+
+SqlParser.PasswordConnectionOptionContext = PasswordConnectionOptionContext;
+
+PasswordConnectionOptionContext.prototype.PASSWORD = function() {
+ return this.getToken(SqlParser.PASSWORD, 0);
+};
+
+PasswordConnectionOptionContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+
+PasswordConnectionOptionContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+PasswordConnectionOptionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterPasswordConnectionOption(this);
+ }
+};
+
+PasswordConnectionOptionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitPasswordConnectionOption(this);
+ }
+};
+
+PasswordConnectionOptionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitPasswordConnectionOption(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+SqlParser.ConnectionOptionContext = ConnectionOptionContext;
+
+SqlParser.prototype.connectionOption = function() {
+
+ var localctx = new ConnectionOptionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 324, SqlParser.RULE_connectionOption);
+ try {
+ this.state = 4041;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.USER:
+ localctx = new UserConnectionOptionContext(this, localctx);
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4029;
+ this.match(SqlParser.USER);
+ this.state = 4030;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ this.state = 4031;
+ localctx.conOptUser = this.match(SqlParser.STRING_LITERAL);
+ break;
+ case SqlParser.PASSWORD:
+ localctx = new PasswordConnectionOptionContext(this, localctx);
+ this.enterOuterAlt(localctx, 2);
+ this.state = 4032;
+ this.match(SqlParser.PASSWORD);
+ this.state = 4033;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ this.state = 4034;
+ localctx.conOptPassword = this.match(SqlParser.STRING_LITERAL);
+ break;
+ case SqlParser.DEFAULT_AUTH:
+ localctx = new DefaultAuthConnectionOptionContext(this, localctx);
+ this.enterOuterAlt(localctx, 3);
+ this.state = 4035;
+ this.match(SqlParser.DEFAULT_AUTH);
+ this.state = 4036;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ this.state = 4037;
+ localctx.conOptDefAuth = this.match(SqlParser.STRING_LITERAL);
+ break;
+ case SqlParser.PLUGIN_DIR:
+ localctx = new PluginDirConnectionOptionContext(this, localctx);
+ this.enterOuterAlt(localctx, 4);
+ this.state = 4038;
+ this.match(SqlParser.PLUGIN_DIR);
+ this.state = 4039;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ this.state = 4040;
+ localctx.conOptPluginDir = this.match(SqlParser.STRING_LITERAL);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function GtuidSetContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_gtuidSet;
+ return this;
+}
+
+GtuidSetContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+GtuidSetContext.prototype.constructor = GtuidSetContext;
+
+GtuidSetContext.prototype.uuidSet = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UuidSetContext);
+ } else {
+ return this.getTypedRuleContext(UuidSetContext,i);
+ }
+};
+
+GtuidSetContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+GtuidSetContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+GtuidSetContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterGtuidSet(this);
+ }
+};
+
+GtuidSetContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitGtuidSet(this);
+ }
+};
+
+GtuidSetContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitGtuidSet(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.GtuidSetContext = GtuidSetContext;
+
+SqlParser.prototype.gtuidSet = function() {
+
+ var localctx = new GtuidSetContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 326, SqlParser.RULE_gtuidSet);
+ var _la = 0; // Token type
+ try {
+ this.state = 4052;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.ZERO_DECIMAL:
+ case SqlParser.ONE_DECIMAL:
+ case SqlParser.TWO_DECIMAL:
+ case SqlParser.DECIMAL_LITERAL:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4043;
+ this.uuidSet();
+ this.state = 4048;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 4044;
+ this.match(SqlParser.COMMA);
+ this.state = 4045;
+ this.uuidSet();
+ this.state = 4050;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+ case SqlParser.STRING_LITERAL:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 4051;
+ this.match(SqlParser.STRING_LITERAL);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function XaStartTransactionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_xaStartTransaction;
+ this.xaStart = null; // Token
+ this.xaAction = null; // Token
+ return this;
+}
+
+XaStartTransactionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+XaStartTransactionContext.prototype.constructor = XaStartTransactionContext;
+
+XaStartTransactionContext.prototype.XA = function() {
+ return this.getToken(SqlParser.XA, 0);
+};
+
+XaStartTransactionContext.prototype.xid = function() {
+ return this.getTypedRuleContext(XidContext,0);
+};
+
+XaStartTransactionContext.prototype.START = function() {
+ return this.getToken(SqlParser.START, 0);
+};
+
+XaStartTransactionContext.prototype.BEGIN = function() {
+ return this.getToken(SqlParser.BEGIN, 0);
+};
+
+XaStartTransactionContext.prototype.JOIN = function() {
+ return this.getToken(SqlParser.JOIN, 0);
+};
+
+XaStartTransactionContext.prototype.RESUME = function() {
+ return this.getToken(SqlParser.RESUME, 0);
+};
+
+XaStartTransactionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterXaStartTransaction(this);
+ }
+};
+
+XaStartTransactionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitXaStartTransaction(this);
+ }
+};
+
+XaStartTransactionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitXaStartTransaction(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.XaStartTransactionContext = XaStartTransactionContext;
+
+SqlParser.prototype.xaStartTransaction = function() {
+
+ var localctx = new XaStartTransactionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 328, SqlParser.RULE_xaStartTransaction);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4054;
+ this.match(SqlParser.XA);
+ this.state = 4055;
+ localctx.xaStart = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.BEGIN || _la===SqlParser.START)) {
+ localctx.xaStart = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 4056;
+ this.xid();
+ this.state = 4058;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.JOIN || _la===SqlParser.RESUME) {
+ this.state = 4057;
+ localctx.xaAction = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.JOIN || _la===SqlParser.RESUME)) {
+ localctx.xaAction = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function XaEndTransactionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_xaEndTransaction;
+ return this;
+}
+
+XaEndTransactionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+XaEndTransactionContext.prototype.constructor = XaEndTransactionContext;
+
+XaEndTransactionContext.prototype.XA = function() {
+ return this.getToken(SqlParser.XA, 0);
+};
+
+XaEndTransactionContext.prototype.END = function() {
+ return this.getToken(SqlParser.END, 0);
+};
+
+XaEndTransactionContext.prototype.xid = function() {
+ return this.getTypedRuleContext(XidContext,0);
+};
+
+XaEndTransactionContext.prototype.SUSPEND = function() {
+ return this.getToken(SqlParser.SUSPEND, 0);
+};
+
+XaEndTransactionContext.prototype.FOR = function() {
+ return this.getToken(SqlParser.FOR, 0);
+};
+
+XaEndTransactionContext.prototype.MIGRATE = function() {
+ return this.getToken(SqlParser.MIGRATE, 0);
+};
+
+XaEndTransactionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterXaEndTransaction(this);
+ }
+};
+
+XaEndTransactionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitXaEndTransaction(this);
+ }
+};
+
+XaEndTransactionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitXaEndTransaction(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.XaEndTransactionContext = XaEndTransactionContext;
+
+SqlParser.prototype.xaEndTransaction = function() {
+
+ var localctx = new XaEndTransactionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 330, SqlParser.RULE_xaEndTransaction);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4060;
+ this.match(SqlParser.XA);
+ this.state = 4061;
+ this.match(SqlParser.END);
+ this.state = 4062;
+ this.xid();
+ this.state = 4068;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.SUSPEND) {
+ this.state = 4063;
+ this.match(SqlParser.SUSPEND);
+ this.state = 4066;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.FOR) {
+ this.state = 4064;
+ this.match(SqlParser.FOR);
+ this.state = 4065;
+ this.match(SqlParser.MIGRATE);
+ }
+
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function XaPrepareStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_xaPrepareStatement;
+ return this;
+}
+
+XaPrepareStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+XaPrepareStatementContext.prototype.constructor = XaPrepareStatementContext;
+
+XaPrepareStatementContext.prototype.XA = function() {
+ return this.getToken(SqlParser.XA, 0);
+};
+
+XaPrepareStatementContext.prototype.PREPARE = function() {
+ return this.getToken(SqlParser.PREPARE, 0);
+};
+
+XaPrepareStatementContext.prototype.xid = function() {
+ return this.getTypedRuleContext(XidContext,0);
+};
+
+XaPrepareStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterXaPrepareStatement(this);
+ }
+};
+
+XaPrepareStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitXaPrepareStatement(this);
+ }
+};
+
+XaPrepareStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitXaPrepareStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.XaPrepareStatementContext = XaPrepareStatementContext;
+
+SqlParser.prototype.xaPrepareStatement = function() {
+
+ var localctx = new XaPrepareStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 332, SqlParser.RULE_xaPrepareStatement);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4070;
+ this.match(SqlParser.XA);
+ this.state = 4071;
+ this.match(SqlParser.PREPARE);
+ this.state = 4072;
+ this.xid();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function XaCommitWorkContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_xaCommitWork;
+ return this;
+}
+
+XaCommitWorkContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+XaCommitWorkContext.prototype.constructor = XaCommitWorkContext;
+
+XaCommitWorkContext.prototype.XA = function() {
+ return this.getToken(SqlParser.XA, 0);
+};
+
+XaCommitWorkContext.prototype.COMMIT = function() {
+ return this.getToken(SqlParser.COMMIT, 0);
+};
+
+XaCommitWorkContext.prototype.xid = function() {
+ return this.getTypedRuleContext(XidContext,0);
+};
+
+XaCommitWorkContext.prototype.ONE = function() {
+ return this.getToken(SqlParser.ONE, 0);
+};
+
+XaCommitWorkContext.prototype.PHASE = function() {
+ return this.getToken(SqlParser.PHASE, 0);
+};
+
+XaCommitWorkContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterXaCommitWork(this);
+ }
+};
+
+XaCommitWorkContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitXaCommitWork(this);
+ }
+};
+
+XaCommitWorkContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitXaCommitWork(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.XaCommitWorkContext = XaCommitWorkContext;
+
+SqlParser.prototype.xaCommitWork = function() {
+
+ var localctx = new XaCommitWorkContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 334, SqlParser.RULE_xaCommitWork);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4074;
+ this.match(SqlParser.XA);
+ this.state = 4075;
+ this.match(SqlParser.COMMIT);
+ this.state = 4076;
+ this.xid();
+ this.state = 4079;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.ONE) {
+ this.state = 4077;
+ this.match(SqlParser.ONE);
+ this.state = 4078;
+ this.match(SqlParser.PHASE);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function XaRollbackWorkContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_xaRollbackWork;
+ return this;
+}
+
+XaRollbackWorkContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+XaRollbackWorkContext.prototype.constructor = XaRollbackWorkContext;
+
+XaRollbackWorkContext.prototype.XA = function() {
+ return this.getToken(SqlParser.XA, 0);
+};
+
+XaRollbackWorkContext.prototype.ROLLBACK = function() {
+ return this.getToken(SqlParser.ROLLBACK, 0);
+};
+
+XaRollbackWorkContext.prototype.xid = function() {
+ return this.getTypedRuleContext(XidContext,0);
+};
+
+XaRollbackWorkContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterXaRollbackWork(this);
+ }
+};
+
+XaRollbackWorkContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitXaRollbackWork(this);
+ }
+};
+
+XaRollbackWorkContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitXaRollbackWork(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.XaRollbackWorkContext = XaRollbackWorkContext;
+
+SqlParser.prototype.xaRollbackWork = function() {
+
+ var localctx = new XaRollbackWorkContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 336, SqlParser.RULE_xaRollbackWork);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4081;
+ this.match(SqlParser.XA);
+ this.state = 4082;
+ this.match(SqlParser.ROLLBACK);
+ this.state = 4083;
+ this.xid();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function XaRecoverWorkContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_xaRecoverWork;
+ return this;
+}
+
+XaRecoverWorkContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+XaRecoverWorkContext.prototype.constructor = XaRecoverWorkContext;
+
+XaRecoverWorkContext.prototype.XA = function() {
+ return this.getToken(SqlParser.XA, 0);
+};
+
+XaRecoverWorkContext.prototype.RECOVER = function() {
+ return this.getToken(SqlParser.RECOVER, 0);
+};
+
+XaRecoverWorkContext.prototype.CONVERT = function() {
+ return this.getToken(SqlParser.CONVERT, 0);
+};
+
+XaRecoverWorkContext.prototype.xid = function() {
+ return this.getTypedRuleContext(XidContext,0);
+};
+
+XaRecoverWorkContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterXaRecoverWork(this);
+ }
+};
+
+XaRecoverWorkContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitXaRecoverWork(this);
+ }
+};
+
+XaRecoverWorkContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitXaRecoverWork(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.XaRecoverWorkContext = XaRecoverWorkContext;
+
+SqlParser.prototype.xaRecoverWork = function() {
+
+ var localctx = new XaRecoverWorkContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 338, SqlParser.RULE_xaRecoverWork);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4085;
+ this.match(SqlParser.XA);
+ this.state = 4086;
+ this.match(SqlParser.RECOVER);
+ this.state = 4089;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.CONVERT) {
+ this.state = 4087;
+ this.match(SqlParser.CONVERT);
+ this.state = 4088;
+ this.xid();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function PrepareStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_prepareStatement;
+ this.query = null; // Token
+ this.variable = null; // Token
+ return this;
+}
+
+PrepareStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+PrepareStatementContext.prototype.constructor = PrepareStatementContext;
+
+PrepareStatementContext.prototype.PREPARE = function() {
+ return this.getToken(SqlParser.PREPARE, 0);
+};
+
+PrepareStatementContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+PrepareStatementContext.prototype.FROM = function() {
+ return this.getToken(SqlParser.FROM, 0);
+};
+
+PrepareStatementContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+PrepareStatementContext.prototype.LOCAL_ID = function() {
+ return this.getToken(SqlParser.LOCAL_ID, 0);
+};
+
+PrepareStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterPrepareStatement(this);
+ }
+};
+
+PrepareStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitPrepareStatement(this);
+ }
+};
+
+PrepareStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitPrepareStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.PrepareStatementContext = PrepareStatementContext;
+
+SqlParser.prototype.prepareStatement = function() {
+
+ var localctx = new PrepareStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 340, SqlParser.RULE_prepareStatement);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4091;
+ this.match(SqlParser.PREPARE);
+ this.state = 4092;
+ this.uid();
+ this.state = 4093;
+ this.match(SqlParser.FROM);
+ this.state = 4096;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.STRING_LITERAL:
+ this.state = 4094;
+ localctx.query = this.match(SqlParser.STRING_LITERAL);
+ break;
+ case SqlParser.LOCAL_ID:
+ this.state = 4095;
+ localctx.variable = this.match(SqlParser.LOCAL_ID);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function ExecuteStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_executeStatement;
+ return this;
+}
+
+ExecuteStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+ExecuteStatementContext.prototype.constructor = ExecuteStatementContext;
+
+ExecuteStatementContext.prototype.EXECUTE = function() {
+ return this.getToken(SqlParser.EXECUTE, 0);
+};
+
+ExecuteStatementContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+ExecuteStatementContext.prototype.USING = function() {
+ return this.getToken(SqlParser.USING, 0);
+};
+
+ExecuteStatementContext.prototype.userVariables = function() {
+ return this.getTypedRuleContext(UserVariablesContext,0);
+};
+
+ExecuteStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterExecuteStatement(this);
+ }
+};
+
+ExecuteStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitExecuteStatement(this);
+ }
+};
+
+ExecuteStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitExecuteStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.ExecuteStatementContext = ExecuteStatementContext;
+
+SqlParser.prototype.executeStatement = function() {
+
+ var localctx = new ExecuteStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 342, SqlParser.RULE_executeStatement);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4098;
+ this.match(SqlParser.EXECUTE);
+ this.state = 4099;
+ this.uid();
+ this.state = 4102;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.USING) {
+ this.state = 4100;
+ this.match(SqlParser.USING);
+ this.state = 4101;
+ this.userVariables();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function DeallocatePrepareContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_deallocatePrepare;
+ this.dropFormat = null; // Token
+ return this;
+}
+
+DeallocatePrepareContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+DeallocatePrepareContext.prototype.constructor = DeallocatePrepareContext;
+
+DeallocatePrepareContext.prototype.PREPARE = function() {
+ return this.getToken(SqlParser.PREPARE, 0);
+};
+
+DeallocatePrepareContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+DeallocatePrepareContext.prototype.DEALLOCATE = function() {
+ return this.getToken(SqlParser.DEALLOCATE, 0);
+};
+
+DeallocatePrepareContext.prototype.DROP = function() {
+ return this.getToken(SqlParser.DROP, 0);
+};
+
+DeallocatePrepareContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterDeallocatePrepare(this);
+ }
+};
+
+DeallocatePrepareContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitDeallocatePrepare(this);
+ }
+};
+
+DeallocatePrepareContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitDeallocatePrepare(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.DeallocatePrepareContext = DeallocatePrepareContext;
+
+SqlParser.prototype.deallocatePrepare = function() {
+
+ var localctx = new DeallocatePrepareContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 344, SqlParser.RULE_deallocatePrepare);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4104;
+ localctx.dropFormat = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.DROP || _la===SqlParser.DEALLOCATE)) {
+ localctx.dropFormat = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 4105;
+ this.match(SqlParser.PREPARE);
+ this.state = 4106;
+ this.uid();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function RoutineBodyContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_routineBody;
+ return this;
+}
+
+RoutineBodyContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+RoutineBodyContext.prototype.constructor = RoutineBodyContext;
+
+RoutineBodyContext.prototype.blockStatement = function() {
+ return this.getTypedRuleContext(BlockStatementContext,0);
+};
+
+RoutineBodyContext.prototype.sqlStatement = function() {
+ return this.getTypedRuleContext(SqlStatementContext,0);
+};
+
+RoutineBodyContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterRoutineBody(this);
+ }
+};
+
+RoutineBodyContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitRoutineBody(this);
+ }
+};
+
+RoutineBodyContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitRoutineBody(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.RoutineBodyContext = RoutineBodyContext;
+
+SqlParser.prototype.routineBody = function() {
+
+ var localctx = new RoutineBodyContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 346, SqlParser.RULE_routineBody);
+ try {
+ this.state = 4110;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,589,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4108;
+ this.blockStatement();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 4109;
+ this.sqlStatement();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function BlockStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_blockStatement;
+ return this;
+}
+
+BlockStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+BlockStatementContext.prototype.constructor = BlockStatementContext;
+
+BlockStatementContext.prototype.BEGIN = function() {
+ return this.getToken(SqlParser.BEGIN, 0);
+};
+
+BlockStatementContext.prototype.END = function() {
+ return this.getToken(SqlParser.END, 0);
+};
+
+BlockStatementContext.prototype.uid = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UidContext);
+ } else {
+ return this.getTypedRuleContext(UidContext,i);
+ }
+};
+
+BlockStatementContext.prototype.COLON_SYMB = function() {
+ return this.getToken(SqlParser.COLON_SYMB, 0);
+};
+
+BlockStatementContext.prototype.declareVariable = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(DeclareVariableContext);
+ } else {
+ return this.getTypedRuleContext(DeclareVariableContext,i);
+ }
+};
+
+BlockStatementContext.prototype.SEMI = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.SEMI);
+ } else {
+ return this.getToken(SqlParser.SEMI, i);
+ }
+};
+
+
+BlockStatementContext.prototype.declareCondition = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(DeclareConditionContext);
+ } else {
+ return this.getTypedRuleContext(DeclareConditionContext,i);
+ }
+};
+
+BlockStatementContext.prototype.declareCursor = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(DeclareCursorContext);
+ } else {
+ return this.getTypedRuleContext(DeclareCursorContext,i);
+ }
+};
+
+BlockStatementContext.prototype.declareHandler = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(DeclareHandlerContext);
+ } else {
+ return this.getTypedRuleContext(DeclareHandlerContext,i);
+ }
+};
+
+BlockStatementContext.prototype.procedureSqlStatement = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ProcedureSqlStatementContext);
+ } else {
+ return this.getTypedRuleContext(ProcedureSqlStatementContext,i);
+ }
+};
+
+BlockStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterBlockStatement(this);
+ }
+};
+
+BlockStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitBlockStatement(this);
+ }
+};
+
+BlockStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitBlockStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.BlockStatementContext = BlockStatementContext;
+
+SqlParser.prototype.blockStatement = function() {
+
+ var localctx = new BlockStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 348, SqlParser.RULE_blockStatement);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4115;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,590,this._ctx);
+ if(la_===1) {
+ this.state = 4112;
+ this.uid();
+ this.state = 4113;
+ this.match(SqlParser.COLON_SYMB);
+
+ }
+ this.state = 4117;
+ this.match(SqlParser.BEGIN);
+ this.state = 4156;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,596,this._ctx);
+ if(la_===1) {
+ this.state = 4123;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,591,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 4118;
+ this.declareVariable();
+ this.state = 4119;
+ this.match(SqlParser.SEMI);
+ }
+ this.state = 4125;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,591,this._ctx);
+ }
+
+ this.state = 4131;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,592,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 4126;
+ this.declareCondition();
+ this.state = 4127;
+ this.match(SqlParser.SEMI);
+ }
+ this.state = 4133;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,592,this._ctx);
+ }
+
+ this.state = 4139;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,593,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 4134;
+ this.declareCursor();
+ this.state = 4135;
+ this.match(SqlParser.SEMI);
+ }
+ this.state = 4141;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,593,this._ctx);
+ }
+
+ this.state = 4147;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.DECLARE) {
+ this.state = 4142;
+ this.declareHandler();
+ this.state = 4143;
+ this.match(SqlParser.SEMI);
+ this.state = 4149;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 4153;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,595,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 4150;
+ this.procedureSqlStatement();
+ }
+ this.state = 4155;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,595,this._ctx);
+ }
+
+
+ }
+ this.state = 4158;
+ this.match(SqlParser.END);
+ this.state = 4160;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,597,this._ctx);
+ if(la_===1) {
+ this.state = 4159;
+ this.uid();
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function CaseStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_caseStatement;
+ return this;
+}
+
+CaseStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+CaseStatementContext.prototype.constructor = CaseStatementContext;
+
+CaseStatementContext.prototype.CASE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.CASE);
+ } else {
+ return this.getToken(SqlParser.CASE, i);
+ }
+};
+
+
+CaseStatementContext.prototype.END = function() {
+ return this.getToken(SqlParser.END, 0);
+};
+
+CaseStatementContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+CaseStatementContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+CaseStatementContext.prototype.caseAlternative = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(CaseAlternativeContext);
+ } else {
+ return this.getTypedRuleContext(CaseAlternativeContext,i);
+ }
+};
+
+CaseStatementContext.prototype.ELSE = function() {
+ return this.getToken(SqlParser.ELSE, 0);
+};
+
+CaseStatementContext.prototype.procedureSqlStatement = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ProcedureSqlStatementContext);
+ } else {
+ return this.getTypedRuleContext(ProcedureSqlStatementContext,i);
+ }
+};
+
+CaseStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterCaseStatement(this);
+ }
+};
+
+CaseStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitCaseStatement(this);
+ }
+};
+
+CaseStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitCaseStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.CaseStatementContext = CaseStatementContext;
+
+SqlParser.prototype.caseStatement = function() {
+
+ var localctx = new CaseStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 350, SqlParser.RULE_caseStatement);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4162;
+ this.match(SqlParser.CASE);
+ this.state = 4165;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,598,this._ctx);
+ if(la_===1) {
+ this.state = 4163;
+ this.uid();
+
+ } else if(la_===2) {
+ this.state = 4164;
+ this.expression(0);
+
+ }
+ this.state = 4168;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 4167;
+ this.caseAlternative();
+ this.state = 4170;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(_la===SqlParser.WHEN);
+ this.state = 4178;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.ELSE) {
+ this.state = 4172;
+ this.match(SqlParser.ELSE);
+ this.state = 4174;
+ this._errHandler.sync(this);
+ var _alt = 1;
+ do {
+ switch (_alt) {
+ case 1:
+ this.state = 4173;
+ this.procedureSqlStatement();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 4176;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,600, this._ctx);
+ } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
+ }
+
+ this.state = 4180;
+ this.match(SqlParser.END);
+ this.state = 4181;
+ this.match(SqlParser.CASE);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function IfStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_ifStatement;
+ this._procedureSqlStatement = null; // ProcedureSqlStatementContext
+ this.thenStatements = []; // of ProcedureSqlStatementContexts
+ this.elseStatements = []; // of ProcedureSqlStatementContexts
+ return this;
+}
+
+IfStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+IfStatementContext.prototype.constructor = IfStatementContext;
+
+IfStatementContext.prototype.IF = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.IF);
+ } else {
+ return this.getToken(SqlParser.IF, i);
+ }
+};
+
+
+IfStatementContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+IfStatementContext.prototype.THEN = function() {
+ return this.getToken(SqlParser.THEN, 0);
+};
+
+IfStatementContext.prototype.END = function() {
+ return this.getToken(SqlParser.END, 0);
+};
+
+IfStatementContext.prototype.elifAlternative = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ElifAlternativeContext);
+ } else {
+ return this.getTypedRuleContext(ElifAlternativeContext,i);
+ }
+};
+
+IfStatementContext.prototype.ELSE = function() {
+ return this.getToken(SqlParser.ELSE, 0);
+};
+
+IfStatementContext.prototype.procedureSqlStatement = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ProcedureSqlStatementContext);
+ } else {
+ return this.getTypedRuleContext(ProcedureSqlStatementContext,i);
+ }
+};
+
+IfStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterIfStatement(this);
+ }
+};
+
+IfStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitIfStatement(this);
+ }
+};
+
+IfStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitIfStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.IfStatementContext = IfStatementContext;
+
+SqlParser.prototype.ifStatement = function() {
+
+ var localctx = new IfStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 352, SqlParser.RULE_ifStatement);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4183;
+ this.match(SqlParser.IF);
+ this.state = 4184;
+ this.expression(0);
+ this.state = 4185;
+ this.match(SqlParser.THEN);
+ this.state = 4187;
+ this._errHandler.sync(this);
+ var _alt = 1;
+ do {
+ switch (_alt) {
+ case 1:
+ this.state = 4186;
+ localctx._procedureSqlStatement = this.procedureSqlStatement();
+ localctx.thenStatements.push(localctx._procedureSqlStatement);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 4189;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,602, this._ctx);
+ } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
+ this.state = 4194;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.ELSEIF) {
+ this.state = 4191;
+ this.elifAlternative();
+ this.state = 4196;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 4203;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.ELSE) {
+ this.state = 4197;
+ this.match(SqlParser.ELSE);
+ this.state = 4199;
+ this._errHandler.sync(this);
+ var _alt = 1;
+ do {
+ switch (_alt) {
+ case 1:
+ this.state = 4198;
+ localctx._procedureSqlStatement = this.procedureSqlStatement();
+ localctx.elseStatements.push(localctx._procedureSqlStatement);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 4201;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,604, this._ctx);
+ } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
+ }
+
+ this.state = 4205;
+ this.match(SqlParser.END);
+ this.state = 4206;
+ this.match(SqlParser.IF);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function IterateStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_iterateStatement;
+ return this;
+}
+
+IterateStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+IterateStatementContext.prototype.constructor = IterateStatementContext;
+
+IterateStatementContext.prototype.ITERATE = function() {
+ return this.getToken(SqlParser.ITERATE, 0);
+};
+
+IterateStatementContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+IterateStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterIterateStatement(this);
+ }
+};
+
+IterateStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitIterateStatement(this);
+ }
+};
+
+IterateStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitIterateStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.IterateStatementContext = IterateStatementContext;
+
+SqlParser.prototype.iterateStatement = function() {
+
+ var localctx = new IterateStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 354, SqlParser.RULE_iterateStatement);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4208;
+ this.match(SqlParser.ITERATE);
+ this.state = 4209;
+ this.uid();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function LeaveStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_leaveStatement;
+ return this;
+}
+
+LeaveStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+LeaveStatementContext.prototype.constructor = LeaveStatementContext;
+
+LeaveStatementContext.prototype.LEAVE = function() {
+ return this.getToken(SqlParser.LEAVE, 0);
+};
+
+LeaveStatementContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+LeaveStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterLeaveStatement(this);
+ }
+};
+
+LeaveStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitLeaveStatement(this);
+ }
+};
+
+LeaveStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitLeaveStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.LeaveStatementContext = LeaveStatementContext;
+
+SqlParser.prototype.leaveStatement = function() {
+
+ var localctx = new LeaveStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 356, SqlParser.RULE_leaveStatement);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4211;
+ this.match(SqlParser.LEAVE);
+ this.state = 4212;
+ this.uid();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function LoopStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_loopStatement;
+ return this;
+}
+
+LoopStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+LoopStatementContext.prototype.constructor = LoopStatementContext;
+
+LoopStatementContext.prototype.LOOP = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.LOOP);
+ } else {
+ return this.getToken(SqlParser.LOOP, i);
+ }
+};
+
+
+LoopStatementContext.prototype.END = function() {
+ return this.getToken(SqlParser.END, 0);
+};
+
+LoopStatementContext.prototype.uid = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UidContext);
+ } else {
+ return this.getTypedRuleContext(UidContext,i);
+ }
+};
+
+LoopStatementContext.prototype.COLON_SYMB = function() {
+ return this.getToken(SqlParser.COLON_SYMB, 0);
+};
+
+LoopStatementContext.prototype.procedureSqlStatement = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ProcedureSqlStatementContext);
+ } else {
+ return this.getTypedRuleContext(ProcedureSqlStatementContext,i);
+ }
+};
+
+LoopStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterLoopStatement(this);
+ }
+};
+
+LoopStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitLoopStatement(this);
+ }
+};
+
+LoopStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitLoopStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.LoopStatementContext = LoopStatementContext;
+
+SqlParser.prototype.loopStatement = function() {
+
+ var localctx = new LoopStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 358, SqlParser.RULE_loopStatement);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4217;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (SqlParser.CURRENT - 32)) | (1 << (SqlParser.DATABASE - 32)) | (1 << (SqlParser.DIAGNOSTICS - 32)))) !== 0) || _la===SqlParser.LEFT || _la===SqlParser.NUMBER || _la===SqlParser.RIGHT || _la===SqlParser.STACKED || ((((_la - 199)) & ~0x1f) == 0 && ((1 << (_la - 199)) & ((1 << (SqlParser.DATE - 199)) | (1 << (SqlParser.TIME - 199)) | (1 << (SqlParser.TIMESTAMP - 199)) | (1 << (SqlParser.DATETIME - 199)) | (1 << (SqlParser.YEAR - 199)) | (1 << (SqlParser.TEXT - 199)) | (1 << (SqlParser.ENUM - 199)) | (1 << (SqlParser.SERIAL - 199)))) !== 0) || ((((_la - 233)) & ~0x1f) == 0 && ((1 << (_la - 233)) & ((1 << (SqlParser.JSON_VALID - 233)) | (1 << (SqlParser.JSON_SCHEMA_VALID - 233)) | (1 << (SqlParser.COUNT - 233)) | (1 << (SqlParser.POSITION - 233)))) !== 0) || ((((_la - 270)) & ~0x1f) == 0 && ((1 << (_la - 270)) & ((1 << (SqlParser.ACCOUNT - 270)) | (1 << (SqlParser.ACTION - 270)) | (1 << (SqlParser.AFTER - 270)) | (1 << (SqlParser.AGGREGATE - 270)) | (1 << (SqlParser.ALGORITHM - 270)) | (1 << (SqlParser.ANY - 270)) | (1 << (SqlParser.AT - 270)) | (1 << (SqlParser.AUTHORS - 270)) | (1 << (SqlParser.AUTOCOMMIT - 270)) | (1 << (SqlParser.AUTOEXTEND_SIZE - 270)) | (1 << (SqlParser.AUTO_INCREMENT - 270)) | (1 << (SqlParser.AVG_ROW_LENGTH - 270)) | (1 << (SqlParser.BEGIN - 270)) | (1 << (SqlParser.BINLOG - 270)) | (1 << (SqlParser.BIT - 270)) | (1 << (SqlParser.BLOCK - 270)) | (1 << (SqlParser.BOOL - 270)) | (1 << (SqlParser.BOOLEAN - 270)) | (1 << (SqlParser.BTREE - 270)) | (1 << (SqlParser.CACHE - 270)) | (1 << (SqlParser.CASCADED - 270)) | (1 << (SqlParser.CHAIN - 270)) | (1 << (SqlParser.CHANGED - 270)) | (1 << (SqlParser.CHANNEL - 270)) | (1 << (SqlParser.CHECKSUM - 270)) | (1 << (SqlParser.PAGE_CHECKSUM - 270)) | (1 << (SqlParser.CIPHER - 270)) | (1 << (SqlParser.CLASS_ORIGIN - 270)) | (1 << (SqlParser.CLIENT - 270)) | (1 << (SqlParser.CLOSE - 270)) | (1 << (SqlParser.COALESCE - 270)) | (1 << (SqlParser.CODE - 270)))) !== 0) || ((((_la - 302)) & ~0x1f) == 0 && ((1 << (_la - 302)) & ((1 << (SqlParser.COLUMNS - 302)) | (1 << (SqlParser.COLUMN_FORMAT - 302)) | (1 << (SqlParser.COLUMN_NAME - 302)) | (1 << (SqlParser.COMMENT - 302)) | (1 << (SqlParser.COMMIT - 302)) | (1 << (SqlParser.COMPACT - 302)) | (1 << (SqlParser.COMPLETION - 302)) | (1 << (SqlParser.COMPRESSED - 302)) | (1 << (SqlParser.COMPRESSION - 302)) | (1 << (SqlParser.CONCURRENT - 302)) | (1 << (SqlParser.CONNECTION - 302)) | (1 << (SqlParser.CONSISTENT - 302)) | (1 << (SqlParser.CONSTRAINT_CATALOG - 302)) | (1 << (SqlParser.CONSTRAINT_SCHEMA - 302)) | (1 << (SqlParser.CONSTRAINT_NAME - 302)) | (1 << (SqlParser.CONTAINS - 302)) | (1 << (SqlParser.CONTEXT - 302)) | (1 << (SqlParser.CONTRIBUTORS - 302)) | (1 << (SqlParser.COPY - 302)) | (1 << (SqlParser.CPU - 302)) | (1 << (SqlParser.CURSOR_NAME - 302)) | (1 << (SqlParser.DATA - 302)) | (1 << (SqlParser.DATAFILE - 302)) | (1 << (SqlParser.DEALLOCATE - 302)) | (1 << (SqlParser.DEFAULT_AUTH - 302)) | (1 << (SqlParser.DEFINER - 302)) | (1 << (SqlParser.DELAY_KEY_WRITE - 302)) | (1 << (SqlParser.DES_KEY_FILE - 302)) | (1 << (SqlParser.DIRECTORY - 302)) | (1 << (SqlParser.DISABLE - 302)) | (1 << (SqlParser.DISCARD - 302)) | (1 << (SqlParser.DISK - 302)))) !== 0) || ((((_la - 334)) & ~0x1f) == 0 && ((1 << (_la - 334)) & ((1 << (SqlParser.DO - 334)) | (1 << (SqlParser.DUMPFILE - 334)) | (1 << (SqlParser.DUPLICATE - 334)) | (1 << (SqlParser.DYNAMIC - 334)) | (1 << (SqlParser.ENABLE - 334)) | (1 << (SqlParser.ENCRYPTION - 334)) | (1 << (SqlParser.END - 334)) | (1 << (SqlParser.ENDS - 334)) | (1 << (SqlParser.ENGINE - 334)) | (1 << (SqlParser.ENGINES - 334)) | (1 << (SqlParser.ERROR - 334)) | (1 << (SqlParser.ERRORS - 334)) | (1 << (SqlParser.ESCAPE - 334)) | (1 << (SqlParser.EVEN - 334)) | (1 << (SqlParser.EVENT - 334)) | (1 << (SqlParser.EVENTS - 334)) | (1 << (SqlParser.EVERY - 334)) | (1 << (SqlParser.EXCHANGE - 334)) | (1 << (SqlParser.EXCLUSIVE - 334)) | (1 << (SqlParser.EXPIRE - 334)) | (1 << (SqlParser.EXPORT - 334)) | (1 << (SqlParser.EXTENDED - 334)) | (1 << (SqlParser.EXTENT_SIZE - 334)) | (1 << (SqlParser.FAST - 334)) | (1 << (SqlParser.FAULTS - 334)) | (1 << (SqlParser.FIELDS - 334)) | (1 << (SqlParser.FILE_BLOCK_SIZE - 334)) | (1 << (SqlParser.FILTER - 334)) | (1 << (SqlParser.FIRST - 334)) | (1 << (SqlParser.FIXED - 334)) | (1 << (SqlParser.FLUSH - 334)) | (1 << (SqlParser.FOLLOWS - 334)))) !== 0) || ((((_la - 366)) & ~0x1f) == 0 && ((1 << (_la - 366)) & ((1 << (SqlParser.FOUND - 366)) | (1 << (SqlParser.FULL - 366)) | (1 << (SqlParser.FUNCTION - 366)) | (1 << (SqlParser.GENERAL - 366)) | (1 << (SqlParser.GLOBAL - 366)) | (1 << (SqlParser.GRANTS - 366)) | (1 << (SqlParser.GROUP_REPLICATION - 366)) | (1 << (SqlParser.HANDLER - 366)) | (1 << (SqlParser.HASH - 366)) | (1 << (SqlParser.HELP - 366)) | (1 << (SqlParser.HOST - 366)) | (1 << (SqlParser.HOSTS - 366)) | (1 << (SqlParser.IDENTIFIED - 366)) | (1 << (SqlParser.IGNORE_SERVER_IDS - 366)) | (1 << (SqlParser.IMPORT - 366)) | (1 << (SqlParser.INDEXES - 366)) | (1 << (SqlParser.INITIAL_SIZE - 366)) | (1 << (SqlParser.INPLACE - 366)) | (1 << (SqlParser.INSERT_METHOD - 366)) | (1 << (SqlParser.INSTALL - 366)) | (1 << (SqlParser.INSTANCE - 366)) | (1 << (SqlParser.INVISIBLE - 366)) | (1 << (SqlParser.INVOKER - 366)) | (1 << (SqlParser.IO - 366)) | (1 << (SqlParser.IO_THREAD - 366)) | (1 << (SqlParser.IPC - 366)) | (1 << (SqlParser.ISOLATION - 366)) | (1 << (SqlParser.ISSUER - 366)) | (1 << (SqlParser.JSON - 366)) | (1 << (SqlParser.KEY_BLOCK_SIZE - 366)) | (1 << (SqlParser.LANGUAGE - 366)) | (1 << (SqlParser.LAST - 366)))) !== 0) || ((((_la - 398)) & ~0x1f) == 0 && ((1 << (_la - 398)) & ((1 << (SqlParser.LEAVES - 398)) | (1 << (SqlParser.LESS - 398)) | (1 << (SqlParser.LEVEL - 398)) | (1 << (SqlParser.LIST - 398)) | (1 << (SqlParser.LOCAL - 398)) | (1 << (SqlParser.LOGFILE - 398)) | (1 << (SqlParser.LOGS - 398)) | (1 << (SqlParser.MASTER - 398)) | (1 << (SqlParser.MASTER_AUTO_POSITION - 398)) | (1 << (SqlParser.MASTER_CONNECT_RETRY - 398)) | (1 << (SqlParser.MASTER_DELAY - 398)) | (1 << (SqlParser.MASTER_HEARTBEAT_PERIOD - 398)) | (1 << (SqlParser.MASTER_HOST - 398)) | (1 << (SqlParser.MASTER_LOG_FILE - 398)) | (1 << (SqlParser.MASTER_LOG_POS - 398)) | (1 << (SqlParser.MASTER_PASSWORD - 398)) | (1 << (SqlParser.MASTER_PORT - 398)) | (1 << (SqlParser.MASTER_RETRY_COUNT - 398)) | (1 << (SqlParser.MASTER_SSL - 398)) | (1 << (SqlParser.MASTER_SSL_CA - 398)) | (1 << (SqlParser.MASTER_SSL_CAPATH - 398)) | (1 << (SqlParser.MASTER_SSL_CERT - 398)) | (1 << (SqlParser.MASTER_SSL_CIPHER - 398)) | (1 << (SqlParser.MASTER_SSL_CRL - 398)) | (1 << (SqlParser.MASTER_SSL_CRLPATH - 398)) | (1 << (SqlParser.MASTER_SSL_KEY - 398)) | (1 << (SqlParser.MASTER_TLS_VERSION - 398)) | (1 << (SqlParser.MASTER_USER - 398)) | (1 << (SqlParser.MAX_CONNECTIONS_PER_HOUR - 398)) | (1 << (SqlParser.MAX_QUERIES_PER_HOUR - 398)) | (1 << (SqlParser.MAX_ROWS - 398)) | (1 << (SqlParser.MAX_SIZE - 398)))) !== 0) || ((((_la - 430)) & ~0x1f) == 0 && ((1 << (_la - 430)) & ((1 << (SqlParser.MAX_UPDATES_PER_HOUR - 430)) | (1 << (SqlParser.MAX_USER_CONNECTIONS - 430)) | (1 << (SqlParser.MEDIUM - 430)) | (1 << (SqlParser.MERGE - 430)) | (1 << (SqlParser.MESSAGE_TEXT - 430)) | (1 << (SqlParser.MID - 430)) | (1 << (SqlParser.MIGRATE - 430)) | (1 << (SqlParser.MIN_ROWS - 430)) | (1 << (SqlParser.MODE - 430)) | (1 << (SqlParser.MODIFY - 430)) | (1 << (SqlParser.MUTEX - 430)) | (1 << (SqlParser.MYSQL - 430)) | (1 << (SqlParser.MYSQL_ERRNO - 430)) | (1 << (SqlParser.NAME - 430)) | (1 << (SqlParser.NAMES - 430)) | (1 << (SqlParser.NCHAR - 430)) | (1 << (SqlParser.NEVER - 430)) | (1 << (SqlParser.NEXT - 430)) | (1 << (SqlParser.NO - 430)) | (1 << (SqlParser.NODEGROUP - 430)) | (1 << (SqlParser.NONE - 430)) | (1 << (SqlParser.OFFLINE - 430)) | (1 << (SqlParser.OFFSET - 430)) | (1 << (SqlParser.OJ - 430)) | (1 << (SqlParser.OLD_PASSWORD - 430)) | (1 << (SqlParser.ONE - 430)) | (1 << (SqlParser.ONLINE - 430)) | (1 << (SqlParser.ONLY - 430)) | (1 << (SqlParser.OPEN - 430)) | (1 << (SqlParser.OPTIMIZER_COSTS - 430)) | (1 << (SqlParser.OPTIONS - 430)) | (1 << (SqlParser.OWNER - 430)))) !== 0) || ((((_la - 462)) & ~0x1f) == 0 && ((1 << (_la - 462)) & ((1 << (SqlParser.PACK_KEYS - 462)) | (1 << (SqlParser.PAGE - 462)) | (1 << (SqlParser.PARSER - 462)) | (1 << (SqlParser.PARTIAL - 462)) | (1 << (SqlParser.PARTITIONING - 462)) | (1 << (SqlParser.PARTITIONS - 462)) | (1 << (SqlParser.PASSWORD - 462)) | (1 << (SqlParser.PHASE - 462)) | (1 << (SqlParser.PLUGIN - 462)) | (1 << (SqlParser.PLUGIN_DIR - 462)) | (1 << (SqlParser.PLUGINS - 462)) | (1 << (SqlParser.PORT - 462)) | (1 << (SqlParser.PRECEDES - 462)) | (1 << (SqlParser.PREPARE - 462)) | (1 << (SqlParser.PRESERVE - 462)) | (1 << (SqlParser.PREV - 462)) | (1 << (SqlParser.PROCESSLIST - 462)) | (1 << (SqlParser.PROFILE - 462)) | (1 << (SqlParser.PROFILES - 462)) | (1 << (SqlParser.PROXY - 462)) | (1 << (SqlParser.QUERY - 462)) | (1 << (SqlParser.QUICK - 462)) | (1 << (SqlParser.REBUILD - 462)) | (1 << (SqlParser.RECOVER - 462)) | (1 << (SqlParser.REDO_BUFFER_SIZE - 462)) | (1 << (SqlParser.REDUNDANT - 462)) | (1 << (SqlParser.RELAY - 462)) | (1 << (SqlParser.RELAY_LOG_FILE - 462)) | (1 << (SqlParser.RELAY_LOG_POS - 462)) | (1 << (SqlParser.RELAYLOG - 462)) | (1 << (SqlParser.REMOVE - 462)) | (1 << (SqlParser.REORGANIZE - 462)))) !== 0) || ((((_la - 494)) & ~0x1f) == 0 && ((1 << (_la - 494)) & ((1 << (SqlParser.REPAIR - 494)) | (1 << (SqlParser.REPLICATE_DO_DB - 494)) | (1 << (SqlParser.REPLICATE_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_DB - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATE_REWRITE_DB - 494)) | (1 << (SqlParser.REPLICATE_WILD_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_WILD_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATION - 494)) | (1 << (SqlParser.RESET - 494)) | (1 << (SqlParser.RESUME - 494)) | (1 << (SqlParser.RETURNED_SQLSTATE - 494)) | (1 << (SqlParser.RETURNS - 494)) | (1 << (SqlParser.ROLE - 494)) | (1 << (SqlParser.ROLLBACK - 494)) | (1 << (SqlParser.ROLLUP - 494)) | (1 << (SqlParser.ROTATE - 494)) | (1 << (SqlParser.ROW - 494)) | (1 << (SqlParser.ROWS - 494)) | (1 << (SqlParser.ROW_FORMAT - 494)) | (1 << (SqlParser.SAVEPOINT - 494)) | (1 << (SqlParser.SCHEDULE - 494)) | (1 << (SqlParser.SECURITY - 494)) | (1 << (SqlParser.SERVER - 494)) | (1 << (SqlParser.SESSION - 494)) | (1 << (SqlParser.SHARE - 494)) | (1 << (SqlParser.SHARED - 494)) | (1 << (SqlParser.SIGNED - 494)) | (1 << (SqlParser.SIMPLE - 494)) | (1 << (SqlParser.SLAVE - 494)) | (1 << (SqlParser.SLOW - 494)) | (1 << (SqlParser.SNAPSHOT - 494)))) !== 0) || ((((_la - 526)) & ~0x1f) == 0 && ((1 << (_la - 526)) & ((1 << (SqlParser.SOCKET - 526)) | (1 << (SqlParser.SOME - 526)) | (1 << (SqlParser.SONAME - 526)) | (1 << (SqlParser.SOUNDS - 526)) | (1 << (SqlParser.SOURCE - 526)) | (1 << (SqlParser.SQL_AFTER_GTIDS - 526)) | (1 << (SqlParser.SQL_AFTER_MTS_GAPS - 526)) | (1 << (SqlParser.SQL_BEFORE_GTIDS - 526)) | (1 << (SqlParser.SQL_BUFFER_RESULT - 526)) | (1 << (SqlParser.SQL_CACHE - 526)) | (1 << (SqlParser.SQL_NO_CACHE - 526)) | (1 << (SqlParser.SQL_THREAD - 526)) | (1 << (SqlParser.START - 526)) | (1 << (SqlParser.STARTS - 526)) | (1 << (SqlParser.STATS_AUTO_RECALC - 526)) | (1 << (SqlParser.STATS_PERSISTENT - 526)) | (1 << (SqlParser.STATS_SAMPLE_PAGES - 526)) | (1 << (SqlParser.STATUS - 526)) | (1 << (SqlParser.STOP - 526)) | (1 << (SqlParser.STORAGE - 526)) | (1 << (SqlParser.STRING - 526)) | (1 << (SqlParser.SUBCLASS_ORIGIN - 526)) | (1 << (SqlParser.SUBJECT - 526)) | (1 << (SqlParser.SUBPARTITION - 526)) | (1 << (SqlParser.SUBPARTITIONS - 526)) | (1 << (SqlParser.SUSPEND - 526)) | (1 << (SqlParser.SWAPS - 526)) | (1 << (SqlParser.SWITCHES - 526)) | (1 << (SqlParser.TABLE_NAME - 526)) | (1 << (SqlParser.TABLESPACE - 526)) | (1 << (SqlParser.TEMPORARY - 526)))) !== 0) || ((((_la - 558)) & ~0x1f) == 0 && ((1 << (_la - 558)) & ((1 << (SqlParser.TEMPTABLE - 558)) | (1 << (SqlParser.THAN - 558)) | (1 << (SqlParser.TRADITIONAL - 558)) | (1 << (SqlParser.TRANSACTION - 558)) | (1 << (SqlParser.TRANSACTIONAL - 558)) | (1 << (SqlParser.TRIGGERS - 558)) | (1 << (SqlParser.TRUNCATE - 558)) | (1 << (SqlParser.UNDEFINED - 558)) | (1 << (SqlParser.UNDOFILE - 558)) | (1 << (SqlParser.UNDO_BUFFER_SIZE - 558)) | (1 << (SqlParser.UNINSTALL - 558)) | (1 << (SqlParser.UNKNOWN - 558)) | (1 << (SqlParser.UNTIL - 558)) | (1 << (SqlParser.UPGRADE - 558)) | (1 << (SqlParser.USER - 558)) | (1 << (SqlParser.USE_FRM - 558)) | (1 << (SqlParser.USER_RESOURCES - 558)) | (1 << (SqlParser.VALIDATION - 558)) | (1 << (SqlParser.VALUE - 558)) | (1 << (SqlParser.VARIABLES - 558)) | (1 << (SqlParser.VIEW - 558)) | (1 << (SqlParser.VISIBLE - 558)) | (1 << (SqlParser.WAIT - 558)) | (1 << (SqlParser.WARNINGS - 558)) | (1 << (SqlParser.WITHOUT - 558)) | (1 << (SqlParser.WORK - 558)) | (1 << (SqlParser.WRAPPER - 558)) | (1 << (SqlParser.X509 - 558)) | (1 << (SqlParser.XA - 558)) | (1 << (SqlParser.XML - 558)))) !== 0) || ((((_la - 593)) & ~0x1f) == 0 && ((1 << (_la - 593)) & ((1 << (SqlParser.INTERNAL - 593)) | (1 << (SqlParser.QUARTER - 593)) | (1 << (SqlParser.MONTH - 593)) | (1 << (SqlParser.DAY - 593)) | (1 << (SqlParser.HOUR - 593)) | (1 << (SqlParser.MINUTE - 593)) | (1 << (SqlParser.WEEK - 593)) | (1 << (SqlParser.SECOND - 593)) | (1 << (SqlParser.MICROSECOND - 593)) | (1 << (SqlParser.TABLES - 593)) | (1 << (SqlParser.ROUTINE - 593)) | (1 << (SqlParser.EXECUTE - 593)) | (1 << (SqlParser.FILE - 593)) | (1 << (SqlParser.PROCESS - 593)) | (1 << (SqlParser.RELOAD - 593)) | (1 << (SqlParser.SHUTDOWN - 593)) | (1 << (SqlParser.SUPER - 593)) | (1 << (SqlParser.PRIVILEGES - 593)) | (1 << (SqlParser.AUDIT_ADMIN - 593)) | (1 << (SqlParser.BACKUP_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ENCRYPTION_ADMIN - 593)) | (1 << (SqlParser.CLONE_ADMIN - 593)) | (1 << (SqlParser.CONNECTION_ADMIN - 593)) | (1 << (SqlParser.ENCRYPTION_KEY_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_USER - 593)) | (1 << (SqlParser.GROUP_REPLICATION_ADMIN - 593)) | (1 << (SqlParser.INNODB_REDO_LOG_ARCHIVE - 593)) | (1 << (SqlParser.NDB_STORED_USER - 593)) | (1 << (SqlParser.PERSIST_RO_VARIABLES_ADMIN - 593)))) !== 0) || ((((_la - 625)) & ~0x1f) == 0 && ((1 << (_la - 625)) & ((1 << (SqlParser.REPLICATION_APPLIER - 625)) | (1 << (SqlParser.REPLICATION_SLAVE_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_USER - 625)) | (1 << (SqlParser.ROLE_ADMIN - 625)) | (1 << (SqlParser.SESSION_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.SET_USER_ID - 625)) | (1 << (SqlParser.SHOW_ROUTINE - 625)) | (1 << (SqlParser.SYSTEM_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.TABLE_ENCRYPTION_ADMIN - 625)) | (1 << (SqlParser.VERSION_TOKEN_ADMIN - 625)) | (1 << (SqlParser.XA_RECOVER_ADMIN - 625)) | (1 << (SqlParser.ARMSCII8 - 625)) | (1 << (SqlParser.ASCII - 625)) | (1 << (SqlParser.BIG5 - 625)) | (1 << (SqlParser.CP1250 - 625)) | (1 << (SqlParser.CP1251 - 625)) | (1 << (SqlParser.CP1256 - 625)) | (1 << (SqlParser.CP1257 - 625)) | (1 << (SqlParser.CP850 - 625)) | (1 << (SqlParser.CP852 - 625)) | (1 << (SqlParser.CP866 - 625)) | (1 << (SqlParser.CP932 - 625)) | (1 << (SqlParser.DEC8 - 625)) | (1 << (SqlParser.EUCJPMS - 625)) | (1 << (SqlParser.EUCKR - 625)) | (1 << (SqlParser.GB2312 - 625)) | (1 << (SqlParser.GBK - 625)) | (1 << (SqlParser.GEOSTD8 - 625)) | (1 << (SqlParser.GREEK - 625)) | (1 << (SqlParser.HEBREW - 625)) | (1 << (SqlParser.HP8 - 625)))) !== 0) || ((((_la - 657)) & ~0x1f) == 0 && ((1 << (_la - 657)) & ((1 << (SqlParser.KEYBCS2 - 657)) | (1 << (SqlParser.KOI8R - 657)) | (1 << (SqlParser.KOI8U - 657)) | (1 << (SqlParser.LATIN1 - 657)) | (1 << (SqlParser.LATIN2 - 657)) | (1 << (SqlParser.LATIN5 - 657)) | (1 << (SqlParser.LATIN7 - 657)) | (1 << (SqlParser.MACCE - 657)) | (1 << (SqlParser.MACROMAN - 657)) | (1 << (SqlParser.SJIS - 657)) | (1 << (SqlParser.SWE7 - 657)) | (1 << (SqlParser.TIS620 - 657)) | (1 << (SqlParser.UCS2 - 657)) | (1 << (SqlParser.UJIS - 657)) | (1 << (SqlParser.UTF16 - 657)) | (1 << (SqlParser.UTF16LE - 657)) | (1 << (SqlParser.UTF32 - 657)) | (1 << (SqlParser.UTF8 - 657)) | (1 << (SqlParser.UTF8MB3 - 657)) | (1 << (SqlParser.UTF8MB4 - 657)) | (1 << (SqlParser.ARCHIVE - 657)) | (1 << (SqlParser.BLACKHOLE - 657)) | (1 << (SqlParser.CSV - 657)) | (1 << (SqlParser.FEDERATED - 657)) | (1 << (SqlParser.INNODB - 657)) | (1 << (SqlParser.MEMORY - 657)) | (1 << (SqlParser.MRG_MYISAM - 657)) | (1 << (SqlParser.MYISAM - 657)) | (1 << (SqlParser.NDB - 657)) | (1 << (SqlParser.NDBCLUSTER - 657)) | (1 << (SqlParser.PERFORMANCE_SCHEMA - 657)) | (1 << (SqlParser.TOKUDB - 657)))) !== 0) || ((((_la - 689)) & ~0x1f) == 0 && ((1 << (_la - 689)) & ((1 << (SqlParser.REPEATABLE - 689)) | (1 << (SqlParser.COMMITTED - 689)) | (1 << (SqlParser.UNCOMMITTED - 689)) | (1 << (SqlParser.SERIALIZABLE - 689)) | (1 << (SqlParser.GEOMETRYCOLLECTION - 689)) | (1 << (SqlParser.LINESTRING - 689)) | (1 << (SqlParser.MULTILINESTRING - 689)) | (1 << (SqlParser.MULTIPOINT - 689)) | (1 << (SqlParser.MULTIPOLYGON - 689)) | (1 << (SqlParser.POINT - 689)) | (1 << (SqlParser.POLYGON - 689)) | (1 << (SqlParser.ABS - 689)) | (1 << (SqlParser.ACOS - 689)) | (1 << (SqlParser.ADDDATE - 689)) | (1 << (SqlParser.ADDTIME - 689)) | (1 << (SqlParser.AES_DECRYPT - 689)) | (1 << (SqlParser.AES_ENCRYPT - 689)) | (1 << (SqlParser.AREA - 689)) | (1 << (SqlParser.ASBINARY - 689)) | (1 << (SqlParser.ASIN - 689)) | (1 << (SqlParser.ASTEXT - 689)) | (1 << (SqlParser.ASWKB - 689)) | (1 << (SqlParser.ASWKT - 689)) | (1 << (SqlParser.ASYMMETRIC_DECRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_DERIVE - 689)) | (1 << (SqlParser.ASYMMETRIC_ENCRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_SIGN - 689)) | (1 << (SqlParser.ASYMMETRIC_VERIFY - 689)) | (1 << (SqlParser.ATAN - 689)) | (1 << (SqlParser.ATAN2 - 689)))) !== 0) || ((((_la - 721)) & ~0x1f) == 0 && ((1 << (_la - 721)) & ((1 << (SqlParser.BENCHMARK - 721)) | (1 << (SqlParser.BIN - 721)) | (1 << (SqlParser.BIT_COUNT - 721)) | (1 << (SqlParser.BIT_LENGTH - 721)) | (1 << (SqlParser.BUFFER - 721)) | (1 << (SqlParser.CATALOG_NAME - 721)) | (1 << (SqlParser.CEIL - 721)) | (1 << (SqlParser.CEILING - 721)) | (1 << (SqlParser.CENTROID - 721)) | (1 << (SqlParser.CHARACTER_LENGTH - 721)) | (1 << (SqlParser.CHARSET - 721)) | (1 << (SqlParser.CHAR_LENGTH - 721)) | (1 << (SqlParser.COERCIBILITY - 721)) | (1 << (SqlParser.COLLATION - 721)) | (1 << (SqlParser.COMPRESS - 721)) | (1 << (SqlParser.CONCAT - 721)) | (1 << (SqlParser.CONCAT_WS - 721)) | (1 << (SqlParser.CONNECTION_ID - 721)) | (1 << (SqlParser.CONV - 721)) | (1 << (SqlParser.CONVERT_TZ - 721)) | (1 << (SqlParser.COS - 721)) | (1 << (SqlParser.COT - 721)) | (1 << (SqlParser.CRC32 - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PRIV_KEY - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PUB_KEY - 721)) | (1 << (SqlParser.CREATE_DH_PARAMETERS - 721)) | (1 << (SqlParser.CREATE_DIGEST - 721)) | (1 << (SqlParser.CROSSES - 721)) | (1 << (SqlParser.DATEDIFF - 721)) | (1 << (SqlParser.DATE_FORMAT - 721)) | (1 << (SqlParser.DAYNAME - 721)) | (1 << (SqlParser.DAYOFMONTH - 721)))) !== 0) || ((((_la - 753)) & ~0x1f) == 0 && ((1 << (_la - 753)) & ((1 << (SqlParser.DAYOFWEEK - 753)) | (1 << (SqlParser.DAYOFYEAR - 753)) | (1 << (SqlParser.DECODE - 753)) | (1 << (SqlParser.DEGREES - 753)) | (1 << (SqlParser.DES_DECRYPT - 753)) | (1 << (SqlParser.DES_ENCRYPT - 753)) | (1 << (SqlParser.DIMENSION - 753)) | (1 << (SqlParser.DISJOINT - 753)) | (1 << (SqlParser.ELT - 753)) | (1 << (SqlParser.ENCODE - 753)) | (1 << (SqlParser.ENCRYPT - 753)) | (1 << (SqlParser.ENDPOINT - 753)) | (1 << (SqlParser.ENVELOPE - 753)) | (1 << (SqlParser.EQUALS - 753)) | (1 << (SqlParser.EXP - 753)) | (1 << (SqlParser.EXPORT_SET - 753)) | (1 << (SqlParser.EXTERIORRING - 753)) | (1 << (SqlParser.EXTRACTVALUE - 753)) | (1 << (SqlParser.FIELD - 753)) | (1 << (SqlParser.FIND_IN_SET - 753)) | (1 << (SqlParser.FLOOR - 753)) | (1 << (SqlParser.FORMAT - 753)) | (1 << (SqlParser.FOUND_ROWS - 753)) | (1 << (SqlParser.FROM_BASE64 - 753)) | (1 << (SqlParser.FROM_DAYS - 753)) | (1 << (SqlParser.FROM_UNIXTIME - 753)) | (1 << (SqlParser.GEOMCOLLFROMTEXT - 753)) | (1 << (SqlParser.GEOMCOLLFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYFROMWKB - 753)))) !== 0) || ((((_la - 785)) & ~0x1f) == 0 && ((1 << (_la - 785)) & ((1 << (SqlParser.GEOMETRYN - 785)) | (1 << (SqlParser.GEOMETRYTYPE - 785)) | (1 << (SqlParser.GEOMFROMTEXT - 785)) | (1 << (SqlParser.GEOMFROMWKB - 785)) | (1 << (SqlParser.GET_FORMAT - 785)) | (1 << (SqlParser.GET_LOCK - 785)) | (1 << (SqlParser.GLENGTH - 785)) | (1 << (SqlParser.GREATEST - 785)) | (1 << (SqlParser.GTID_SUBSET - 785)) | (1 << (SqlParser.GTID_SUBTRACT - 785)) | (1 << (SqlParser.HEX - 785)) | (1 << (SqlParser.IFNULL - 785)) | (1 << (SqlParser.INET6_ATON - 785)) | (1 << (SqlParser.INET6_NTOA - 785)) | (1 << (SqlParser.INET_ATON - 785)) | (1 << (SqlParser.INET_NTOA - 785)) | (1 << (SqlParser.INSTR - 785)) | (1 << (SqlParser.INTERIORRINGN - 785)) | (1 << (SqlParser.INTERSECTS - 785)) | (1 << (SqlParser.ISCLOSED - 785)) | (1 << (SqlParser.ISEMPTY - 785)) | (1 << (SqlParser.ISNULL - 785)) | (1 << (SqlParser.ISSIMPLE - 785)) | (1 << (SqlParser.IS_FREE_LOCK - 785)) | (1 << (SqlParser.IS_IPV4 - 785)) | (1 << (SqlParser.IS_IPV4_COMPAT - 785)) | (1 << (SqlParser.IS_IPV4_MAPPED - 785)) | (1 << (SqlParser.IS_IPV6 - 785)) | (1 << (SqlParser.IS_USED_LOCK - 785)) | (1 << (SqlParser.LAST_INSERT_ID - 785)) | (1 << (SqlParser.LCASE - 785)) | (1 << (SqlParser.LEAST - 785)))) !== 0) || ((((_la - 817)) & ~0x1f) == 0 && ((1 << (_la - 817)) & ((1 << (SqlParser.LENGTH - 817)) | (1 << (SqlParser.LINEFROMTEXT - 817)) | (1 << (SqlParser.LINEFROMWKB - 817)) | (1 << (SqlParser.LINESTRINGFROMTEXT - 817)) | (1 << (SqlParser.LINESTRINGFROMWKB - 817)) | (1 << (SqlParser.LN - 817)) | (1 << (SqlParser.LOAD_FILE - 817)) | (1 << (SqlParser.LOCATE - 817)) | (1 << (SqlParser.LOG - 817)) | (1 << (SqlParser.LOG10 - 817)) | (1 << (SqlParser.LOG2 - 817)) | (1 << (SqlParser.LOWER - 817)) | (1 << (SqlParser.LPAD - 817)) | (1 << (SqlParser.LTRIM - 817)) | (1 << (SqlParser.MAKEDATE - 817)) | (1 << (SqlParser.MAKETIME - 817)) | (1 << (SqlParser.MAKE_SET - 817)) | (1 << (SqlParser.MASTER_POS_WAIT - 817)) | (1 << (SqlParser.MBRCONTAINS - 817)) | (1 << (SqlParser.MBRDISJOINT - 817)) | (1 << (SqlParser.MBREQUAL - 817)) | (1 << (SqlParser.MBRINTERSECTS - 817)) | (1 << (SqlParser.MBROVERLAPS - 817)) | (1 << (SqlParser.MBRTOUCHES - 817)) | (1 << (SqlParser.MBRWITHIN - 817)) | (1 << (SqlParser.MD5 - 817)) | (1 << (SqlParser.MLINEFROMTEXT - 817)) | (1 << (SqlParser.MLINEFROMWKB - 817)) | (1 << (SqlParser.MONTHNAME - 817)) | (1 << (SqlParser.MPOINTFROMTEXT - 817)) | (1 << (SqlParser.MPOINTFROMWKB - 817)) | (1 << (SqlParser.MPOLYFROMTEXT - 817)))) !== 0) || ((((_la - 849)) & ~0x1f) == 0 && ((1 << (_la - 849)) & ((1 << (SqlParser.MPOLYFROMWKB - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMTEXT - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMWKB - 849)) | (1 << (SqlParser.MULTIPOINTFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOINTFROMWKB - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMWKB - 849)) | (1 << (SqlParser.NAME_CONST - 849)) | (1 << (SqlParser.NULLIF - 849)) | (1 << (SqlParser.NUMGEOMETRIES - 849)) | (1 << (SqlParser.NUMINTERIORRINGS - 849)) | (1 << (SqlParser.NUMPOINTS - 849)) | (1 << (SqlParser.OCT - 849)) | (1 << (SqlParser.OCTET_LENGTH - 849)) | (1 << (SqlParser.ORD - 849)) | (1 << (SqlParser.OVERLAPS - 849)) | (1 << (SqlParser.PERIOD_ADD - 849)) | (1 << (SqlParser.PERIOD_DIFF - 849)) | (1 << (SqlParser.PI - 849)) | (1 << (SqlParser.POINTFROMTEXT - 849)) | (1 << (SqlParser.POINTFROMWKB - 849)) | (1 << (SqlParser.POINTN - 849)) | (1 << (SqlParser.POLYFROMTEXT - 849)) | (1 << (SqlParser.POLYFROMWKB - 849)) | (1 << (SqlParser.POLYGONFROMTEXT - 849)) | (1 << (SqlParser.POLYGONFROMWKB - 849)) | (1 << (SqlParser.POW - 849)) | (1 << (SqlParser.POWER - 849)) | (1 << (SqlParser.QUOTE - 849)) | (1 << (SqlParser.RADIANS - 849)) | (1 << (SqlParser.RAND - 849)) | (1 << (SqlParser.RANDOM_BYTES - 849)))) !== 0) || ((((_la - 881)) & ~0x1f) == 0 && ((1 << (_la - 881)) & ((1 << (SqlParser.RELEASE_LOCK - 881)) | (1 << (SqlParser.REVERSE - 881)) | (1 << (SqlParser.ROUND - 881)) | (1 << (SqlParser.ROW_COUNT - 881)) | (1 << (SqlParser.RPAD - 881)) | (1 << (SqlParser.RTRIM - 881)) | (1 << (SqlParser.SEC_TO_TIME - 881)) | (1 << (SqlParser.SESSION_USER - 881)) | (1 << (SqlParser.SHA - 881)) | (1 << (SqlParser.SHA1 - 881)) | (1 << (SqlParser.SHA2 - 881)) | (1 << (SqlParser.SCHEMA_NAME - 881)) | (1 << (SqlParser.SIGN - 881)) | (1 << (SqlParser.SIN - 881)) | (1 << (SqlParser.SLEEP - 881)) | (1 << (SqlParser.SOUNDEX - 881)) | (1 << (SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS - 881)) | (1 << (SqlParser.SQRT - 881)) | (1 << (SqlParser.SRID - 881)) | (1 << (SqlParser.STARTPOINT - 881)) | (1 << (SqlParser.STRCMP - 881)) | (1 << (SqlParser.STR_TO_DATE - 881)) | (1 << (SqlParser.ST_AREA - 881)) | (1 << (SqlParser.ST_ASBINARY - 881)) | (1 << (SqlParser.ST_ASTEXT - 881)) | (1 << (SqlParser.ST_ASWKB - 881)) | (1 << (SqlParser.ST_ASWKT - 881)) | (1 << (SqlParser.ST_BUFFER - 881)) | (1 << (SqlParser.ST_CENTROID - 881)) | (1 << (SqlParser.ST_CONTAINS - 881)) | (1 << (SqlParser.ST_CROSSES - 881)) | (1 << (SqlParser.ST_DIFFERENCE - 881)))) !== 0) || ((((_la - 913)) & ~0x1f) == 0 && ((1 << (_la - 913)) & ((1 << (SqlParser.ST_DIMENSION - 913)) | (1 << (SqlParser.ST_DISJOINT - 913)) | (1 << (SqlParser.ST_DISTANCE - 913)) | (1 << (SqlParser.ST_ENDPOINT - 913)) | (1 << (SqlParser.ST_ENVELOPE - 913)) | (1 << (SqlParser.ST_EQUALS - 913)) | (1 << (SqlParser.ST_EXTERIORRING - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYN - 913)) | (1 << (SqlParser.ST_GEOMETRYTYPE - 913)) | (1 << (SqlParser.ST_GEOMFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMFROMWKB - 913)) | (1 << (SqlParser.ST_INTERIORRINGN - 913)) | (1 << (SqlParser.ST_INTERSECTION - 913)) | (1 << (SqlParser.ST_INTERSECTS - 913)) | (1 << (SqlParser.ST_ISCLOSED - 913)) | (1 << (SqlParser.ST_ISEMPTY - 913)) | (1 << (SqlParser.ST_ISSIMPLE - 913)) | (1 << (SqlParser.ST_LINEFROMTEXT - 913)) | (1 << (SqlParser.ST_LINEFROMWKB - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMTEXT - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMWKB - 913)) | (1 << (SqlParser.ST_NUMGEOMETRIES - 913)) | (1 << (SqlParser.ST_NUMINTERIORRING - 913)) | (1 << (SqlParser.ST_NUMINTERIORRINGS - 913)) | (1 << (SqlParser.ST_NUMPOINTS - 913)))) !== 0) || ((((_la - 945)) & ~0x1f) == 0 && ((1 << (_la - 945)) & ((1 << (SqlParser.ST_OVERLAPS - 945)) | (1 << (SqlParser.ST_POINTFROMTEXT - 945)) | (1 << (SqlParser.ST_POINTFROMWKB - 945)) | (1 << (SqlParser.ST_POINTN - 945)) | (1 << (SqlParser.ST_POLYFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYFROMWKB - 945)) | (1 << (SqlParser.ST_POLYGONFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYGONFROMWKB - 945)) | (1 << (SqlParser.ST_SRID - 945)) | (1 << (SqlParser.ST_STARTPOINT - 945)) | (1 << (SqlParser.ST_SYMDIFFERENCE - 945)) | (1 << (SqlParser.ST_TOUCHES - 945)) | (1 << (SqlParser.ST_UNION - 945)) | (1 << (SqlParser.ST_WITHIN - 945)) | (1 << (SqlParser.ST_X - 945)) | (1 << (SqlParser.ST_Y - 945)) | (1 << (SqlParser.SUBDATE - 945)) | (1 << (SqlParser.SUBSTRING_INDEX - 945)) | (1 << (SqlParser.SUBTIME - 945)) | (1 << (SqlParser.SYSTEM_USER - 945)) | (1 << (SqlParser.TAN - 945)) | (1 << (SqlParser.TIMEDIFF - 945)) | (1 << (SqlParser.TIMESTAMPADD - 945)) | (1 << (SqlParser.TIMESTAMPDIFF - 945)) | (1 << (SqlParser.TIME_FORMAT - 945)) | (1 << (SqlParser.TIME_TO_SEC - 945)) | (1 << (SqlParser.TOUCHES - 945)) | (1 << (SqlParser.TO_BASE64 - 945)) | (1 << (SqlParser.TO_DAYS - 945)) | (1 << (SqlParser.TO_SECONDS - 945)) | (1 << (SqlParser.UCASE - 945)) | (1 << (SqlParser.UNCOMPRESS - 945)))) !== 0) || ((((_la - 977)) & ~0x1f) == 0 && ((1 << (_la - 977)) & ((1 << (SqlParser.UNCOMPRESSED_LENGTH - 977)) | (1 << (SqlParser.UNHEX - 977)) | (1 << (SqlParser.UNIX_TIMESTAMP - 977)) | (1 << (SqlParser.UPDATEXML - 977)) | (1 << (SqlParser.UPPER - 977)) | (1 << (SqlParser.UUID - 977)) | (1 << (SqlParser.UUID_SHORT - 977)) | (1 << (SqlParser.VALIDATE_PASSWORD_STRENGTH - 977)) | (1 << (SqlParser.VERSION - 977)) | (1 << (SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS - 977)) | (1 << (SqlParser.WEEKDAY - 977)) | (1 << (SqlParser.WEEKOFYEAR - 977)) | (1 << (SqlParser.WEIGHT_STRING - 977)) | (1 << (SqlParser.WITHIN - 977)) | (1 << (SqlParser.YEARWEEK - 977)) | (1 << (SqlParser.Y_FUNCTION - 977)) | (1 << (SqlParser.X_FUNCTION - 977)))) !== 0) || ((((_la - 1032)) & ~0x1f) == 0 && ((1 << (_la - 1032)) & ((1 << (SqlParser.CHARSET_REVERSE_QOUTE_STRING - 1032)) | (1 << (SqlParser.STRING_LITERAL - 1032)) | (1 << (SqlParser.ID - 1032)) | (1 << (SqlParser.REVERSE_QUOTE_ID - 1032)))) !== 0)) {
+ this.state = 4214;
+ this.uid();
+ this.state = 4215;
+ this.match(SqlParser.COLON_SYMB);
+ }
+
+ this.state = 4219;
+ this.match(SqlParser.LOOP);
+ this.state = 4221;
+ this._errHandler.sync(this);
+ var _alt = 1;
+ do {
+ switch (_alt) {
+ case 1:
+ this.state = 4220;
+ this.procedureSqlStatement();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 4223;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,607, this._ctx);
+ } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
+ this.state = 4225;
+ this.match(SqlParser.END);
+ this.state = 4226;
+ this.match(SqlParser.LOOP);
+ this.state = 4228;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (SqlParser.CURRENT - 32)) | (1 << (SqlParser.DATABASE - 32)) | (1 << (SqlParser.DIAGNOSTICS - 32)))) !== 0) || _la===SqlParser.LEFT || _la===SqlParser.NUMBER || _la===SqlParser.RIGHT || _la===SqlParser.STACKED || ((((_la - 199)) & ~0x1f) == 0 && ((1 << (_la - 199)) & ((1 << (SqlParser.DATE - 199)) | (1 << (SqlParser.TIME - 199)) | (1 << (SqlParser.TIMESTAMP - 199)) | (1 << (SqlParser.DATETIME - 199)) | (1 << (SqlParser.YEAR - 199)) | (1 << (SqlParser.TEXT - 199)) | (1 << (SqlParser.ENUM - 199)) | (1 << (SqlParser.SERIAL - 199)))) !== 0) || ((((_la - 233)) & ~0x1f) == 0 && ((1 << (_la - 233)) & ((1 << (SqlParser.JSON_VALID - 233)) | (1 << (SqlParser.JSON_SCHEMA_VALID - 233)) | (1 << (SqlParser.COUNT - 233)) | (1 << (SqlParser.POSITION - 233)))) !== 0) || ((((_la - 270)) & ~0x1f) == 0 && ((1 << (_la - 270)) & ((1 << (SqlParser.ACCOUNT - 270)) | (1 << (SqlParser.ACTION - 270)) | (1 << (SqlParser.AFTER - 270)) | (1 << (SqlParser.AGGREGATE - 270)) | (1 << (SqlParser.ALGORITHM - 270)) | (1 << (SqlParser.ANY - 270)) | (1 << (SqlParser.AT - 270)) | (1 << (SqlParser.AUTHORS - 270)) | (1 << (SqlParser.AUTOCOMMIT - 270)) | (1 << (SqlParser.AUTOEXTEND_SIZE - 270)) | (1 << (SqlParser.AUTO_INCREMENT - 270)) | (1 << (SqlParser.AVG_ROW_LENGTH - 270)) | (1 << (SqlParser.BEGIN - 270)) | (1 << (SqlParser.BINLOG - 270)) | (1 << (SqlParser.BIT - 270)) | (1 << (SqlParser.BLOCK - 270)) | (1 << (SqlParser.BOOL - 270)) | (1 << (SqlParser.BOOLEAN - 270)) | (1 << (SqlParser.BTREE - 270)) | (1 << (SqlParser.CACHE - 270)) | (1 << (SqlParser.CASCADED - 270)) | (1 << (SqlParser.CHAIN - 270)) | (1 << (SqlParser.CHANGED - 270)) | (1 << (SqlParser.CHANNEL - 270)) | (1 << (SqlParser.CHECKSUM - 270)) | (1 << (SqlParser.PAGE_CHECKSUM - 270)) | (1 << (SqlParser.CIPHER - 270)) | (1 << (SqlParser.CLASS_ORIGIN - 270)) | (1 << (SqlParser.CLIENT - 270)) | (1 << (SqlParser.CLOSE - 270)) | (1 << (SqlParser.COALESCE - 270)) | (1 << (SqlParser.CODE - 270)))) !== 0) || ((((_la - 302)) & ~0x1f) == 0 && ((1 << (_la - 302)) & ((1 << (SqlParser.COLUMNS - 302)) | (1 << (SqlParser.COLUMN_FORMAT - 302)) | (1 << (SqlParser.COLUMN_NAME - 302)) | (1 << (SqlParser.COMMENT - 302)) | (1 << (SqlParser.COMMIT - 302)) | (1 << (SqlParser.COMPACT - 302)) | (1 << (SqlParser.COMPLETION - 302)) | (1 << (SqlParser.COMPRESSED - 302)) | (1 << (SqlParser.COMPRESSION - 302)) | (1 << (SqlParser.CONCURRENT - 302)) | (1 << (SqlParser.CONNECTION - 302)) | (1 << (SqlParser.CONSISTENT - 302)) | (1 << (SqlParser.CONSTRAINT_CATALOG - 302)) | (1 << (SqlParser.CONSTRAINT_SCHEMA - 302)) | (1 << (SqlParser.CONSTRAINT_NAME - 302)) | (1 << (SqlParser.CONTAINS - 302)) | (1 << (SqlParser.CONTEXT - 302)) | (1 << (SqlParser.CONTRIBUTORS - 302)) | (1 << (SqlParser.COPY - 302)) | (1 << (SqlParser.CPU - 302)) | (1 << (SqlParser.CURSOR_NAME - 302)) | (1 << (SqlParser.DATA - 302)) | (1 << (SqlParser.DATAFILE - 302)) | (1 << (SqlParser.DEALLOCATE - 302)) | (1 << (SqlParser.DEFAULT_AUTH - 302)) | (1 << (SqlParser.DEFINER - 302)) | (1 << (SqlParser.DELAY_KEY_WRITE - 302)) | (1 << (SqlParser.DES_KEY_FILE - 302)) | (1 << (SqlParser.DIRECTORY - 302)) | (1 << (SqlParser.DISABLE - 302)) | (1 << (SqlParser.DISCARD - 302)) | (1 << (SqlParser.DISK - 302)))) !== 0) || ((((_la - 334)) & ~0x1f) == 0 && ((1 << (_la - 334)) & ((1 << (SqlParser.DO - 334)) | (1 << (SqlParser.DUMPFILE - 334)) | (1 << (SqlParser.DUPLICATE - 334)) | (1 << (SqlParser.DYNAMIC - 334)) | (1 << (SqlParser.ENABLE - 334)) | (1 << (SqlParser.ENCRYPTION - 334)) | (1 << (SqlParser.END - 334)) | (1 << (SqlParser.ENDS - 334)) | (1 << (SqlParser.ENGINE - 334)) | (1 << (SqlParser.ENGINES - 334)) | (1 << (SqlParser.ERROR - 334)) | (1 << (SqlParser.ERRORS - 334)) | (1 << (SqlParser.ESCAPE - 334)) | (1 << (SqlParser.EVEN - 334)) | (1 << (SqlParser.EVENT - 334)) | (1 << (SqlParser.EVENTS - 334)) | (1 << (SqlParser.EVERY - 334)) | (1 << (SqlParser.EXCHANGE - 334)) | (1 << (SqlParser.EXCLUSIVE - 334)) | (1 << (SqlParser.EXPIRE - 334)) | (1 << (SqlParser.EXPORT - 334)) | (1 << (SqlParser.EXTENDED - 334)) | (1 << (SqlParser.EXTENT_SIZE - 334)) | (1 << (SqlParser.FAST - 334)) | (1 << (SqlParser.FAULTS - 334)) | (1 << (SqlParser.FIELDS - 334)) | (1 << (SqlParser.FILE_BLOCK_SIZE - 334)) | (1 << (SqlParser.FILTER - 334)) | (1 << (SqlParser.FIRST - 334)) | (1 << (SqlParser.FIXED - 334)) | (1 << (SqlParser.FLUSH - 334)) | (1 << (SqlParser.FOLLOWS - 334)))) !== 0) || ((((_la - 366)) & ~0x1f) == 0 && ((1 << (_la - 366)) & ((1 << (SqlParser.FOUND - 366)) | (1 << (SqlParser.FULL - 366)) | (1 << (SqlParser.FUNCTION - 366)) | (1 << (SqlParser.GENERAL - 366)) | (1 << (SqlParser.GLOBAL - 366)) | (1 << (SqlParser.GRANTS - 366)) | (1 << (SqlParser.GROUP_REPLICATION - 366)) | (1 << (SqlParser.HANDLER - 366)) | (1 << (SqlParser.HASH - 366)) | (1 << (SqlParser.HELP - 366)) | (1 << (SqlParser.HOST - 366)) | (1 << (SqlParser.HOSTS - 366)) | (1 << (SqlParser.IDENTIFIED - 366)) | (1 << (SqlParser.IGNORE_SERVER_IDS - 366)) | (1 << (SqlParser.IMPORT - 366)) | (1 << (SqlParser.INDEXES - 366)) | (1 << (SqlParser.INITIAL_SIZE - 366)) | (1 << (SqlParser.INPLACE - 366)) | (1 << (SqlParser.INSERT_METHOD - 366)) | (1 << (SqlParser.INSTALL - 366)) | (1 << (SqlParser.INSTANCE - 366)) | (1 << (SqlParser.INVISIBLE - 366)) | (1 << (SqlParser.INVOKER - 366)) | (1 << (SqlParser.IO - 366)) | (1 << (SqlParser.IO_THREAD - 366)) | (1 << (SqlParser.IPC - 366)) | (1 << (SqlParser.ISOLATION - 366)) | (1 << (SqlParser.ISSUER - 366)) | (1 << (SqlParser.JSON - 366)) | (1 << (SqlParser.KEY_BLOCK_SIZE - 366)) | (1 << (SqlParser.LANGUAGE - 366)) | (1 << (SqlParser.LAST - 366)))) !== 0) || ((((_la - 398)) & ~0x1f) == 0 && ((1 << (_la - 398)) & ((1 << (SqlParser.LEAVES - 398)) | (1 << (SqlParser.LESS - 398)) | (1 << (SqlParser.LEVEL - 398)) | (1 << (SqlParser.LIST - 398)) | (1 << (SqlParser.LOCAL - 398)) | (1 << (SqlParser.LOGFILE - 398)) | (1 << (SqlParser.LOGS - 398)) | (1 << (SqlParser.MASTER - 398)) | (1 << (SqlParser.MASTER_AUTO_POSITION - 398)) | (1 << (SqlParser.MASTER_CONNECT_RETRY - 398)) | (1 << (SqlParser.MASTER_DELAY - 398)) | (1 << (SqlParser.MASTER_HEARTBEAT_PERIOD - 398)) | (1 << (SqlParser.MASTER_HOST - 398)) | (1 << (SqlParser.MASTER_LOG_FILE - 398)) | (1 << (SqlParser.MASTER_LOG_POS - 398)) | (1 << (SqlParser.MASTER_PASSWORD - 398)) | (1 << (SqlParser.MASTER_PORT - 398)) | (1 << (SqlParser.MASTER_RETRY_COUNT - 398)) | (1 << (SqlParser.MASTER_SSL - 398)) | (1 << (SqlParser.MASTER_SSL_CA - 398)) | (1 << (SqlParser.MASTER_SSL_CAPATH - 398)) | (1 << (SqlParser.MASTER_SSL_CERT - 398)) | (1 << (SqlParser.MASTER_SSL_CIPHER - 398)) | (1 << (SqlParser.MASTER_SSL_CRL - 398)) | (1 << (SqlParser.MASTER_SSL_CRLPATH - 398)) | (1 << (SqlParser.MASTER_SSL_KEY - 398)) | (1 << (SqlParser.MASTER_TLS_VERSION - 398)) | (1 << (SqlParser.MASTER_USER - 398)) | (1 << (SqlParser.MAX_CONNECTIONS_PER_HOUR - 398)) | (1 << (SqlParser.MAX_QUERIES_PER_HOUR - 398)) | (1 << (SqlParser.MAX_ROWS - 398)) | (1 << (SqlParser.MAX_SIZE - 398)))) !== 0) || ((((_la - 430)) & ~0x1f) == 0 && ((1 << (_la - 430)) & ((1 << (SqlParser.MAX_UPDATES_PER_HOUR - 430)) | (1 << (SqlParser.MAX_USER_CONNECTIONS - 430)) | (1 << (SqlParser.MEDIUM - 430)) | (1 << (SqlParser.MERGE - 430)) | (1 << (SqlParser.MESSAGE_TEXT - 430)) | (1 << (SqlParser.MID - 430)) | (1 << (SqlParser.MIGRATE - 430)) | (1 << (SqlParser.MIN_ROWS - 430)) | (1 << (SqlParser.MODE - 430)) | (1 << (SqlParser.MODIFY - 430)) | (1 << (SqlParser.MUTEX - 430)) | (1 << (SqlParser.MYSQL - 430)) | (1 << (SqlParser.MYSQL_ERRNO - 430)) | (1 << (SqlParser.NAME - 430)) | (1 << (SqlParser.NAMES - 430)) | (1 << (SqlParser.NCHAR - 430)) | (1 << (SqlParser.NEVER - 430)) | (1 << (SqlParser.NEXT - 430)) | (1 << (SqlParser.NO - 430)) | (1 << (SqlParser.NODEGROUP - 430)) | (1 << (SqlParser.NONE - 430)) | (1 << (SqlParser.OFFLINE - 430)) | (1 << (SqlParser.OFFSET - 430)) | (1 << (SqlParser.OJ - 430)) | (1 << (SqlParser.OLD_PASSWORD - 430)) | (1 << (SqlParser.ONE - 430)) | (1 << (SqlParser.ONLINE - 430)) | (1 << (SqlParser.ONLY - 430)) | (1 << (SqlParser.OPEN - 430)) | (1 << (SqlParser.OPTIMIZER_COSTS - 430)) | (1 << (SqlParser.OPTIONS - 430)) | (1 << (SqlParser.OWNER - 430)))) !== 0) || ((((_la - 462)) & ~0x1f) == 0 && ((1 << (_la - 462)) & ((1 << (SqlParser.PACK_KEYS - 462)) | (1 << (SqlParser.PAGE - 462)) | (1 << (SqlParser.PARSER - 462)) | (1 << (SqlParser.PARTIAL - 462)) | (1 << (SqlParser.PARTITIONING - 462)) | (1 << (SqlParser.PARTITIONS - 462)) | (1 << (SqlParser.PASSWORD - 462)) | (1 << (SqlParser.PHASE - 462)) | (1 << (SqlParser.PLUGIN - 462)) | (1 << (SqlParser.PLUGIN_DIR - 462)) | (1 << (SqlParser.PLUGINS - 462)) | (1 << (SqlParser.PORT - 462)) | (1 << (SqlParser.PRECEDES - 462)) | (1 << (SqlParser.PREPARE - 462)) | (1 << (SqlParser.PRESERVE - 462)) | (1 << (SqlParser.PREV - 462)) | (1 << (SqlParser.PROCESSLIST - 462)) | (1 << (SqlParser.PROFILE - 462)) | (1 << (SqlParser.PROFILES - 462)) | (1 << (SqlParser.PROXY - 462)) | (1 << (SqlParser.QUERY - 462)) | (1 << (SqlParser.QUICK - 462)) | (1 << (SqlParser.REBUILD - 462)) | (1 << (SqlParser.RECOVER - 462)) | (1 << (SqlParser.REDO_BUFFER_SIZE - 462)) | (1 << (SqlParser.REDUNDANT - 462)) | (1 << (SqlParser.RELAY - 462)) | (1 << (SqlParser.RELAY_LOG_FILE - 462)) | (1 << (SqlParser.RELAY_LOG_POS - 462)) | (1 << (SqlParser.RELAYLOG - 462)) | (1 << (SqlParser.REMOVE - 462)) | (1 << (SqlParser.REORGANIZE - 462)))) !== 0) || ((((_la - 494)) & ~0x1f) == 0 && ((1 << (_la - 494)) & ((1 << (SqlParser.REPAIR - 494)) | (1 << (SqlParser.REPLICATE_DO_DB - 494)) | (1 << (SqlParser.REPLICATE_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_DB - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATE_REWRITE_DB - 494)) | (1 << (SqlParser.REPLICATE_WILD_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_WILD_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATION - 494)) | (1 << (SqlParser.RESET - 494)) | (1 << (SqlParser.RESUME - 494)) | (1 << (SqlParser.RETURNED_SQLSTATE - 494)) | (1 << (SqlParser.RETURNS - 494)) | (1 << (SqlParser.ROLE - 494)) | (1 << (SqlParser.ROLLBACK - 494)) | (1 << (SqlParser.ROLLUP - 494)) | (1 << (SqlParser.ROTATE - 494)) | (1 << (SqlParser.ROW - 494)) | (1 << (SqlParser.ROWS - 494)) | (1 << (SqlParser.ROW_FORMAT - 494)) | (1 << (SqlParser.SAVEPOINT - 494)) | (1 << (SqlParser.SCHEDULE - 494)) | (1 << (SqlParser.SECURITY - 494)) | (1 << (SqlParser.SERVER - 494)) | (1 << (SqlParser.SESSION - 494)) | (1 << (SqlParser.SHARE - 494)) | (1 << (SqlParser.SHARED - 494)) | (1 << (SqlParser.SIGNED - 494)) | (1 << (SqlParser.SIMPLE - 494)) | (1 << (SqlParser.SLAVE - 494)) | (1 << (SqlParser.SLOW - 494)) | (1 << (SqlParser.SNAPSHOT - 494)))) !== 0) || ((((_la - 526)) & ~0x1f) == 0 && ((1 << (_la - 526)) & ((1 << (SqlParser.SOCKET - 526)) | (1 << (SqlParser.SOME - 526)) | (1 << (SqlParser.SONAME - 526)) | (1 << (SqlParser.SOUNDS - 526)) | (1 << (SqlParser.SOURCE - 526)) | (1 << (SqlParser.SQL_AFTER_GTIDS - 526)) | (1 << (SqlParser.SQL_AFTER_MTS_GAPS - 526)) | (1 << (SqlParser.SQL_BEFORE_GTIDS - 526)) | (1 << (SqlParser.SQL_BUFFER_RESULT - 526)) | (1 << (SqlParser.SQL_CACHE - 526)) | (1 << (SqlParser.SQL_NO_CACHE - 526)) | (1 << (SqlParser.SQL_THREAD - 526)) | (1 << (SqlParser.START - 526)) | (1 << (SqlParser.STARTS - 526)) | (1 << (SqlParser.STATS_AUTO_RECALC - 526)) | (1 << (SqlParser.STATS_PERSISTENT - 526)) | (1 << (SqlParser.STATS_SAMPLE_PAGES - 526)) | (1 << (SqlParser.STATUS - 526)) | (1 << (SqlParser.STOP - 526)) | (1 << (SqlParser.STORAGE - 526)) | (1 << (SqlParser.STRING - 526)) | (1 << (SqlParser.SUBCLASS_ORIGIN - 526)) | (1 << (SqlParser.SUBJECT - 526)) | (1 << (SqlParser.SUBPARTITION - 526)) | (1 << (SqlParser.SUBPARTITIONS - 526)) | (1 << (SqlParser.SUSPEND - 526)) | (1 << (SqlParser.SWAPS - 526)) | (1 << (SqlParser.SWITCHES - 526)) | (1 << (SqlParser.TABLE_NAME - 526)) | (1 << (SqlParser.TABLESPACE - 526)) | (1 << (SqlParser.TEMPORARY - 526)))) !== 0) || ((((_la - 558)) & ~0x1f) == 0 && ((1 << (_la - 558)) & ((1 << (SqlParser.TEMPTABLE - 558)) | (1 << (SqlParser.THAN - 558)) | (1 << (SqlParser.TRADITIONAL - 558)) | (1 << (SqlParser.TRANSACTION - 558)) | (1 << (SqlParser.TRANSACTIONAL - 558)) | (1 << (SqlParser.TRIGGERS - 558)) | (1 << (SqlParser.TRUNCATE - 558)) | (1 << (SqlParser.UNDEFINED - 558)) | (1 << (SqlParser.UNDOFILE - 558)) | (1 << (SqlParser.UNDO_BUFFER_SIZE - 558)) | (1 << (SqlParser.UNINSTALL - 558)) | (1 << (SqlParser.UNKNOWN - 558)) | (1 << (SqlParser.UNTIL - 558)) | (1 << (SqlParser.UPGRADE - 558)) | (1 << (SqlParser.USER - 558)) | (1 << (SqlParser.USE_FRM - 558)) | (1 << (SqlParser.USER_RESOURCES - 558)) | (1 << (SqlParser.VALIDATION - 558)) | (1 << (SqlParser.VALUE - 558)) | (1 << (SqlParser.VARIABLES - 558)) | (1 << (SqlParser.VIEW - 558)) | (1 << (SqlParser.VISIBLE - 558)) | (1 << (SqlParser.WAIT - 558)) | (1 << (SqlParser.WARNINGS - 558)) | (1 << (SqlParser.WITHOUT - 558)) | (1 << (SqlParser.WORK - 558)) | (1 << (SqlParser.WRAPPER - 558)) | (1 << (SqlParser.X509 - 558)) | (1 << (SqlParser.XA - 558)) | (1 << (SqlParser.XML - 558)))) !== 0) || ((((_la - 593)) & ~0x1f) == 0 && ((1 << (_la - 593)) & ((1 << (SqlParser.INTERNAL - 593)) | (1 << (SqlParser.QUARTER - 593)) | (1 << (SqlParser.MONTH - 593)) | (1 << (SqlParser.DAY - 593)) | (1 << (SqlParser.HOUR - 593)) | (1 << (SqlParser.MINUTE - 593)) | (1 << (SqlParser.WEEK - 593)) | (1 << (SqlParser.SECOND - 593)) | (1 << (SqlParser.MICROSECOND - 593)) | (1 << (SqlParser.TABLES - 593)) | (1 << (SqlParser.ROUTINE - 593)) | (1 << (SqlParser.EXECUTE - 593)) | (1 << (SqlParser.FILE - 593)) | (1 << (SqlParser.PROCESS - 593)) | (1 << (SqlParser.RELOAD - 593)) | (1 << (SqlParser.SHUTDOWN - 593)) | (1 << (SqlParser.SUPER - 593)) | (1 << (SqlParser.PRIVILEGES - 593)) | (1 << (SqlParser.AUDIT_ADMIN - 593)) | (1 << (SqlParser.BACKUP_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ENCRYPTION_ADMIN - 593)) | (1 << (SqlParser.CLONE_ADMIN - 593)) | (1 << (SqlParser.CONNECTION_ADMIN - 593)) | (1 << (SqlParser.ENCRYPTION_KEY_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_USER - 593)) | (1 << (SqlParser.GROUP_REPLICATION_ADMIN - 593)) | (1 << (SqlParser.INNODB_REDO_LOG_ARCHIVE - 593)) | (1 << (SqlParser.NDB_STORED_USER - 593)) | (1 << (SqlParser.PERSIST_RO_VARIABLES_ADMIN - 593)))) !== 0) || ((((_la - 625)) & ~0x1f) == 0 && ((1 << (_la - 625)) & ((1 << (SqlParser.REPLICATION_APPLIER - 625)) | (1 << (SqlParser.REPLICATION_SLAVE_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_USER - 625)) | (1 << (SqlParser.ROLE_ADMIN - 625)) | (1 << (SqlParser.SESSION_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.SET_USER_ID - 625)) | (1 << (SqlParser.SHOW_ROUTINE - 625)) | (1 << (SqlParser.SYSTEM_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.TABLE_ENCRYPTION_ADMIN - 625)) | (1 << (SqlParser.VERSION_TOKEN_ADMIN - 625)) | (1 << (SqlParser.XA_RECOVER_ADMIN - 625)) | (1 << (SqlParser.ARMSCII8 - 625)) | (1 << (SqlParser.ASCII - 625)) | (1 << (SqlParser.BIG5 - 625)) | (1 << (SqlParser.CP1250 - 625)) | (1 << (SqlParser.CP1251 - 625)) | (1 << (SqlParser.CP1256 - 625)) | (1 << (SqlParser.CP1257 - 625)) | (1 << (SqlParser.CP850 - 625)) | (1 << (SqlParser.CP852 - 625)) | (1 << (SqlParser.CP866 - 625)) | (1 << (SqlParser.CP932 - 625)) | (1 << (SqlParser.DEC8 - 625)) | (1 << (SqlParser.EUCJPMS - 625)) | (1 << (SqlParser.EUCKR - 625)) | (1 << (SqlParser.GB2312 - 625)) | (1 << (SqlParser.GBK - 625)) | (1 << (SqlParser.GEOSTD8 - 625)) | (1 << (SqlParser.GREEK - 625)) | (1 << (SqlParser.HEBREW - 625)) | (1 << (SqlParser.HP8 - 625)))) !== 0) || ((((_la - 657)) & ~0x1f) == 0 && ((1 << (_la - 657)) & ((1 << (SqlParser.KEYBCS2 - 657)) | (1 << (SqlParser.KOI8R - 657)) | (1 << (SqlParser.KOI8U - 657)) | (1 << (SqlParser.LATIN1 - 657)) | (1 << (SqlParser.LATIN2 - 657)) | (1 << (SqlParser.LATIN5 - 657)) | (1 << (SqlParser.LATIN7 - 657)) | (1 << (SqlParser.MACCE - 657)) | (1 << (SqlParser.MACROMAN - 657)) | (1 << (SqlParser.SJIS - 657)) | (1 << (SqlParser.SWE7 - 657)) | (1 << (SqlParser.TIS620 - 657)) | (1 << (SqlParser.UCS2 - 657)) | (1 << (SqlParser.UJIS - 657)) | (1 << (SqlParser.UTF16 - 657)) | (1 << (SqlParser.UTF16LE - 657)) | (1 << (SqlParser.UTF32 - 657)) | (1 << (SqlParser.UTF8 - 657)) | (1 << (SqlParser.UTF8MB3 - 657)) | (1 << (SqlParser.UTF8MB4 - 657)) | (1 << (SqlParser.ARCHIVE - 657)) | (1 << (SqlParser.BLACKHOLE - 657)) | (1 << (SqlParser.CSV - 657)) | (1 << (SqlParser.FEDERATED - 657)) | (1 << (SqlParser.INNODB - 657)) | (1 << (SqlParser.MEMORY - 657)) | (1 << (SqlParser.MRG_MYISAM - 657)) | (1 << (SqlParser.MYISAM - 657)) | (1 << (SqlParser.NDB - 657)) | (1 << (SqlParser.NDBCLUSTER - 657)) | (1 << (SqlParser.PERFORMANCE_SCHEMA - 657)) | (1 << (SqlParser.TOKUDB - 657)))) !== 0) || ((((_la - 689)) & ~0x1f) == 0 && ((1 << (_la - 689)) & ((1 << (SqlParser.REPEATABLE - 689)) | (1 << (SqlParser.COMMITTED - 689)) | (1 << (SqlParser.UNCOMMITTED - 689)) | (1 << (SqlParser.SERIALIZABLE - 689)) | (1 << (SqlParser.GEOMETRYCOLLECTION - 689)) | (1 << (SqlParser.LINESTRING - 689)) | (1 << (SqlParser.MULTILINESTRING - 689)) | (1 << (SqlParser.MULTIPOINT - 689)) | (1 << (SqlParser.MULTIPOLYGON - 689)) | (1 << (SqlParser.POINT - 689)) | (1 << (SqlParser.POLYGON - 689)) | (1 << (SqlParser.ABS - 689)) | (1 << (SqlParser.ACOS - 689)) | (1 << (SqlParser.ADDDATE - 689)) | (1 << (SqlParser.ADDTIME - 689)) | (1 << (SqlParser.AES_DECRYPT - 689)) | (1 << (SqlParser.AES_ENCRYPT - 689)) | (1 << (SqlParser.AREA - 689)) | (1 << (SqlParser.ASBINARY - 689)) | (1 << (SqlParser.ASIN - 689)) | (1 << (SqlParser.ASTEXT - 689)) | (1 << (SqlParser.ASWKB - 689)) | (1 << (SqlParser.ASWKT - 689)) | (1 << (SqlParser.ASYMMETRIC_DECRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_DERIVE - 689)) | (1 << (SqlParser.ASYMMETRIC_ENCRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_SIGN - 689)) | (1 << (SqlParser.ASYMMETRIC_VERIFY - 689)) | (1 << (SqlParser.ATAN - 689)) | (1 << (SqlParser.ATAN2 - 689)))) !== 0) || ((((_la - 721)) & ~0x1f) == 0 && ((1 << (_la - 721)) & ((1 << (SqlParser.BENCHMARK - 721)) | (1 << (SqlParser.BIN - 721)) | (1 << (SqlParser.BIT_COUNT - 721)) | (1 << (SqlParser.BIT_LENGTH - 721)) | (1 << (SqlParser.BUFFER - 721)) | (1 << (SqlParser.CATALOG_NAME - 721)) | (1 << (SqlParser.CEIL - 721)) | (1 << (SqlParser.CEILING - 721)) | (1 << (SqlParser.CENTROID - 721)) | (1 << (SqlParser.CHARACTER_LENGTH - 721)) | (1 << (SqlParser.CHARSET - 721)) | (1 << (SqlParser.CHAR_LENGTH - 721)) | (1 << (SqlParser.COERCIBILITY - 721)) | (1 << (SqlParser.COLLATION - 721)) | (1 << (SqlParser.COMPRESS - 721)) | (1 << (SqlParser.CONCAT - 721)) | (1 << (SqlParser.CONCAT_WS - 721)) | (1 << (SqlParser.CONNECTION_ID - 721)) | (1 << (SqlParser.CONV - 721)) | (1 << (SqlParser.CONVERT_TZ - 721)) | (1 << (SqlParser.COS - 721)) | (1 << (SqlParser.COT - 721)) | (1 << (SqlParser.CRC32 - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PRIV_KEY - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PUB_KEY - 721)) | (1 << (SqlParser.CREATE_DH_PARAMETERS - 721)) | (1 << (SqlParser.CREATE_DIGEST - 721)) | (1 << (SqlParser.CROSSES - 721)) | (1 << (SqlParser.DATEDIFF - 721)) | (1 << (SqlParser.DATE_FORMAT - 721)) | (1 << (SqlParser.DAYNAME - 721)) | (1 << (SqlParser.DAYOFMONTH - 721)))) !== 0) || ((((_la - 753)) & ~0x1f) == 0 && ((1 << (_la - 753)) & ((1 << (SqlParser.DAYOFWEEK - 753)) | (1 << (SqlParser.DAYOFYEAR - 753)) | (1 << (SqlParser.DECODE - 753)) | (1 << (SqlParser.DEGREES - 753)) | (1 << (SqlParser.DES_DECRYPT - 753)) | (1 << (SqlParser.DES_ENCRYPT - 753)) | (1 << (SqlParser.DIMENSION - 753)) | (1 << (SqlParser.DISJOINT - 753)) | (1 << (SqlParser.ELT - 753)) | (1 << (SqlParser.ENCODE - 753)) | (1 << (SqlParser.ENCRYPT - 753)) | (1 << (SqlParser.ENDPOINT - 753)) | (1 << (SqlParser.ENVELOPE - 753)) | (1 << (SqlParser.EQUALS - 753)) | (1 << (SqlParser.EXP - 753)) | (1 << (SqlParser.EXPORT_SET - 753)) | (1 << (SqlParser.EXTERIORRING - 753)) | (1 << (SqlParser.EXTRACTVALUE - 753)) | (1 << (SqlParser.FIELD - 753)) | (1 << (SqlParser.FIND_IN_SET - 753)) | (1 << (SqlParser.FLOOR - 753)) | (1 << (SqlParser.FORMAT - 753)) | (1 << (SqlParser.FOUND_ROWS - 753)) | (1 << (SqlParser.FROM_BASE64 - 753)) | (1 << (SqlParser.FROM_DAYS - 753)) | (1 << (SqlParser.FROM_UNIXTIME - 753)) | (1 << (SqlParser.GEOMCOLLFROMTEXT - 753)) | (1 << (SqlParser.GEOMCOLLFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYFROMWKB - 753)))) !== 0) || ((((_la - 785)) & ~0x1f) == 0 && ((1 << (_la - 785)) & ((1 << (SqlParser.GEOMETRYN - 785)) | (1 << (SqlParser.GEOMETRYTYPE - 785)) | (1 << (SqlParser.GEOMFROMTEXT - 785)) | (1 << (SqlParser.GEOMFROMWKB - 785)) | (1 << (SqlParser.GET_FORMAT - 785)) | (1 << (SqlParser.GET_LOCK - 785)) | (1 << (SqlParser.GLENGTH - 785)) | (1 << (SqlParser.GREATEST - 785)) | (1 << (SqlParser.GTID_SUBSET - 785)) | (1 << (SqlParser.GTID_SUBTRACT - 785)) | (1 << (SqlParser.HEX - 785)) | (1 << (SqlParser.IFNULL - 785)) | (1 << (SqlParser.INET6_ATON - 785)) | (1 << (SqlParser.INET6_NTOA - 785)) | (1 << (SqlParser.INET_ATON - 785)) | (1 << (SqlParser.INET_NTOA - 785)) | (1 << (SqlParser.INSTR - 785)) | (1 << (SqlParser.INTERIORRINGN - 785)) | (1 << (SqlParser.INTERSECTS - 785)) | (1 << (SqlParser.ISCLOSED - 785)) | (1 << (SqlParser.ISEMPTY - 785)) | (1 << (SqlParser.ISNULL - 785)) | (1 << (SqlParser.ISSIMPLE - 785)) | (1 << (SqlParser.IS_FREE_LOCK - 785)) | (1 << (SqlParser.IS_IPV4 - 785)) | (1 << (SqlParser.IS_IPV4_COMPAT - 785)) | (1 << (SqlParser.IS_IPV4_MAPPED - 785)) | (1 << (SqlParser.IS_IPV6 - 785)) | (1 << (SqlParser.IS_USED_LOCK - 785)) | (1 << (SqlParser.LAST_INSERT_ID - 785)) | (1 << (SqlParser.LCASE - 785)) | (1 << (SqlParser.LEAST - 785)))) !== 0) || ((((_la - 817)) & ~0x1f) == 0 && ((1 << (_la - 817)) & ((1 << (SqlParser.LENGTH - 817)) | (1 << (SqlParser.LINEFROMTEXT - 817)) | (1 << (SqlParser.LINEFROMWKB - 817)) | (1 << (SqlParser.LINESTRINGFROMTEXT - 817)) | (1 << (SqlParser.LINESTRINGFROMWKB - 817)) | (1 << (SqlParser.LN - 817)) | (1 << (SqlParser.LOAD_FILE - 817)) | (1 << (SqlParser.LOCATE - 817)) | (1 << (SqlParser.LOG - 817)) | (1 << (SqlParser.LOG10 - 817)) | (1 << (SqlParser.LOG2 - 817)) | (1 << (SqlParser.LOWER - 817)) | (1 << (SqlParser.LPAD - 817)) | (1 << (SqlParser.LTRIM - 817)) | (1 << (SqlParser.MAKEDATE - 817)) | (1 << (SqlParser.MAKETIME - 817)) | (1 << (SqlParser.MAKE_SET - 817)) | (1 << (SqlParser.MASTER_POS_WAIT - 817)) | (1 << (SqlParser.MBRCONTAINS - 817)) | (1 << (SqlParser.MBRDISJOINT - 817)) | (1 << (SqlParser.MBREQUAL - 817)) | (1 << (SqlParser.MBRINTERSECTS - 817)) | (1 << (SqlParser.MBROVERLAPS - 817)) | (1 << (SqlParser.MBRTOUCHES - 817)) | (1 << (SqlParser.MBRWITHIN - 817)) | (1 << (SqlParser.MD5 - 817)) | (1 << (SqlParser.MLINEFROMTEXT - 817)) | (1 << (SqlParser.MLINEFROMWKB - 817)) | (1 << (SqlParser.MONTHNAME - 817)) | (1 << (SqlParser.MPOINTFROMTEXT - 817)) | (1 << (SqlParser.MPOINTFROMWKB - 817)) | (1 << (SqlParser.MPOLYFROMTEXT - 817)))) !== 0) || ((((_la - 849)) & ~0x1f) == 0 && ((1 << (_la - 849)) & ((1 << (SqlParser.MPOLYFROMWKB - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMTEXT - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMWKB - 849)) | (1 << (SqlParser.MULTIPOINTFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOINTFROMWKB - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMWKB - 849)) | (1 << (SqlParser.NAME_CONST - 849)) | (1 << (SqlParser.NULLIF - 849)) | (1 << (SqlParser.NUMGEOMETRIES - 849)) | (1 << (SqlParser.NUMINTERIORRINGS - 849)) | (1 << (SqlParser.NUMPOINTS - 849)) | (1 << (SqlParser.OCT - 849)) | (1 << (SqlParser.OCTET_LENGTH - 849)) | (1 << (SqlParser.ORD - 849)) | (1 << (SqlParser.OVERLAPS - 849)) | (1 << (SqlParser.PERIOD_ADD - 849)) | (1 << (SqlParser.PERIOD_DIFF - 849)) | (1 << (SqlParser.PI - 849)) | (1 << (SqlParser.POINTFROMTEXT - 849)) | (1 << (SqlParser.POINTFROMWKB - 849)) | (1 << (SqlParser.POINTN - 849)) | (1 << (SqlParser.POLYFROMTEXT - 849)) | (1 << (SqlParser.POLYFROMWKB - 849)) | (1 << (SqlParser.POLYGONFROMTEXT - 849)) | (1 << (SqlParser.POLYGONFROMWKB - 849)) | (1 << (SqlParser.POW - 849)) | (1 << (SqlParser.POWER - 849)) | (1 << (SqlParser.QUOTE - 849)) | (1 << (SqlParser.RADIANS - 849)) | (1 << (SqlParser.RAND - 849)) | (1 << (SqlParser.RANDOM_BYTES - 849)))) !== 0) || ((((_la - 881)) & ~0x1f) == 0 && ((1 << (_la - 881)) & ((1 << (SqlParser.RELEASE_LOCK - 881)) | (1 << (SqlParser.REVERSE - 881)) | (1 << (SqlParser.ROUND - 881)) | (1 << (SqlParser.ROW_COUNT - 881)) | (1 << (SqlParser.RPAD - 881)) | (1 << (SqlParser.RTRIM - 881)) | (1 << (SqlParser.SEC_TO_TIME - 881)) | (1 << (SqlParser.SESSION_USER - 881)) | (1 << (SqlParser.SHA - 881)) | (1 << (SqlParser.SHA1 - 881)) | (1 << (SqlParser.SHA2 - 881)) | (1 << (SqlParser.SCHEMA_NAME - 881)) | (1 << (SqlParser.SIGN - 881)) | (1 << (SqlParser.SIN - 881)) | (1 << (SqlParser.SLEEP - 881)) | (1 << (SqlParser.SOUNDEX - 881)) | (1 << (SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS - 881)) | (1 << (SqlParser.SQRT - 881)) | (1 << (SqlParser.SRID - 881)) | (1 << (SqlParser.STARTPOINT - 881)) | (1 << (SqlParser.STRCMP - 881)) | (1 << (SqlParser.STR_TO_DATE - 881)) | (1 << (SqlParser.ST_AREA - 881)) | (1 << (SqlParser.ST_ASBINARY - 881)) | (1 << (SqlParser.ST_ASTEXT - 881)) | (1 << (SqlParser.ST_ASWKB - 881)) | (1 << (SqlParser.ST_ASWKT - 881)) | (1 << (SqlParser.ST_BUFFER - 881)) | (1 << (SqlParser.ST_CENTROID - 881)) | (1 << (SqlParser.ST_CONTAINS - 881)) | (1 << (SqlParser.ST_CROSSES - 881)) | (1 << (SqlParser.ST_DIFFERENCE - 881)))) !== 0) || ((((_la - 913)) & ~0x1f) == 0 && ((1 << (_la - 913)) & ((1 << (SqlParser.ST_DIMENSION - 913)) | (1 << (SqlParser.ST_DISJOINT - 913)) | (1 << (SqlParser.ST_DISTANCE - 913)) | (1 << (SqlParser.ST_ENDPOINT - 913)) | (1 << (SqlParser.ST_ENVELOPE - 913)) | (1 << (SqlParser.ST_EQUALS - 913)) | (1 << (SqlParser.ST_EXTERIORRING - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYN - 913)) | (1 << (SqlParser.ST_GEOMETRYTYPE - 913)) | (1 << (SqlParser.ST_GEOMFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMFROMWKB - 913)) | (1 << (SqlParser.ST_INTERIORRINGN - 913)) | (1 << (SqlParser.ST_INTERSECTION - 913)) | (1 << (SqlParser.ST_INTERSECTS - 913)) | (1 << (SqlParser.ST_ISCLOSED - 913)) | (1 << (SqlParser.ST_ISEMPTY - 913)) | (1 << (SqlParser.ST_ISSIMPLE - 913)) | (1 << (SqlParser.ST_LINEFROMTEXT - 913)) | (1 << (SqlParser.ST_LINEFROMWKB - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMTEXT - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMWKB - 913)) | (1 << (SqlParser.ST_NUMGEOMETRIES - 913)) | (1 << (SqlParser.ST_NUMINTERIORRING - 913)) | (1 << (SqlParser.ST_NUMINTERIORRINGS - 913)) | (1 << (SqlParser.ST_NUMPOINTS - 913)))) !== 0) || ((((_la - 945)) & ~0x1f) == 0 && ((1 << (_la - 945)) & ((1 << (SqlParser.ST_OVERLAPS - 945)) | (1 << (SqlParser.ST_POINTFROMTEXT - 945)) | (1 << (SqlParser.ST_POINTFROMWKB - 945)) | (1 << (SqlParser.ST_POINTN - 945)) | (1 << (SqlParser.ST_POLYFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYFROMWKB - 945)) | (1 << (SqlParser.ST_POLYGONFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYGONFROMWKB - 945)) | (1 << (SqlParser.ST_SRID - 945)) | (1 << (SqlParser.ST_STARTPOINT - 945)) | (1 << (SqlParser.ST_SYMDIFFERENCE - 945)) | (1 << (SqlParser.ST_TOUCHES - 945)) | (1 << (SqlParser.ST_UNION - 945)) | (1 << (SqlParser.ST_WITHIN - 945)) | (1 << (SqlParser.ST_X - 945)) | (1 << (SqlParser.ST_Y - 945)) | (1 << (SqlParser.SUBDATE - 945)) | (1 << (SqlParser.SUBSTRING_INDEX - 945)) | (1 << (SqlParser.SUBTIME - 945)) | (1 << (SqlParser.SYSTEM_USER - 945)) | (1 << (SqlParser.TAN - 945)) | (1 << (SqlParser.TIMEDIFF - 945)) | (1 << (SqlParser.TIMESTAMPADD - 945)) | (1 << (SqlParser.TIMESTAMPDIFF - 945)) | (1 << (SqlParser.TIME_FORMAT - 945)) | (1 << (SqlParser.TIME_TO_SEC - 945)) | (1 << (SqlParser.TOUCHES - 945)) | (1 << (SqlParser.TO_BASE64 - 945)) | (1 << (SqlParser.TO_DAYS - 945)) | (1 << (SqlParser.TO_SECONDS - 945)) | (1 << (SqlParser.UCASE - 945)) | (1 << (SqlParser.UNCOMPRESS - 945)))) !== 0) || ((((_la - 977)) & ~0x1f) == 0 && ((1 << (_la - 977)) & ((1 << (SqlParser.UNCOMPRESSED_LENGTH - 977)) | (1 << (SqlParser.UNHEX - 977)) | (1 << (SqlParser.UNIX_TIMESTAMP - 977)) | (1 << (SqlParser.UPDATEXML - 977)) | (1 << (SqlParser.UPPER - 977)) | (1 << (SqlParser.UUID - 977)) | (1 << (SqlParser.UUID_SHORT - 977)) | (1 << (SqlParser.VALIDATE_PASSWORD_STRENGTH - 977)) | (1 << (SqlParser.VERSION - 977)) | (1 << (SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS - 977)) | (1 << (SqlParser.WEEKDAY - 977)) | (1 << (SqlParser.WEEKOFYEAR - 977)) | (1 << (SqlParser.WEIGHT_STRING - 977)) | (1 << (SqlParser.WITHIN - 977)) | (1 << (SqlParser.YEARWEEK - 977)) | (1 << (SqlParser.Y_FUNCTION - 977)) | (1 << (SqlParser.X_FUNCTION - 977)))) !== 0) || ((((_la - 1032)) & ~0x1f) == 0 && ((1 << (_la - 1032)) & ((1 << (SqlParser.CHARSET_REVERSE_QOUTE_STRING - 1032)) | (1 << (SqlParser.STRING_LITERAL - 1032)) | (1 << (SqlParser.ID - 1032)) | (1 << (SqlParser.REVERSE_QUOTE_ID - 1032)))) !== 0)) {
+ this.state = 4227;
+ this.uid();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function RepeatStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_repeatStatement;
+ return this;
+}
+
+RepeatStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+RepeatStatementContext.prototype.constructor = RepeatStatementContext;
+
+RepeatStatementContext.prototype.REPEAT = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.REPEAT);
+ } else {
+ return this.getToken(SqlParser.REPEAT, i);
+ }
+};
+
+
+RepeatStatementContext.prototype.UNTIL = function() {
+ return this.getToken(SqlParser.UNTIL, 0);
+};
+
+RepeatStatementContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+RepeatStatementContext.prototype.END = function() {
+ return this.getToken(SqlParser.END, 0);
+};
+
+RepeatStatementContext.prototype.uid = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UidContext);
+ } else {
+ return this.getTypedRuleContext(UidContext,i);
+ }
+};
+
+RepeatStatementContext.prototype.COLON_SYMB = function() {
+ return this.getToken(SqlParser.COLON_SYMB, 0);
+};
+
+RepeatStatementContext.prototype.procedureSqlStatement = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ProcedureSqlStatementContext);
+ } else {
+ return this.getTypedRuleContext(ProcedureSqlStatementContext,i);
+ }
+};
+
+RepeatStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterRepeatStatement(this);
+ }
+};
+
+RepeatStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitRepeatStatement(this);
+ }
+};
+
+RepeatStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitRepeatStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.RepeatStatementContext = RepeatStatementContext;
+
+SqlParser.prototype.repeatStatement = function() {
+
+ var localctx = new RepeatStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 360, SqlParser.RULE_repeatStatement);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4233;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (SqlParser.CURRENT - 32)) | (1 << (SqlParser.DATABASE - 32)) | (1 << (SqlParser.DIAGNOSTICS - 32)))) !== 0) || _la===SqlParser.LEFT || _la===SqlParser.NUMBER || _la===SqlParser.RIGHT || _la===SqlParser.STACKED || ((((_la - 199)) & ~0x1f) == 0 && ((1 << (_la - 199)) & ((1 << (SqlParser.DATE - 199)) | (1 << (SqlParser.TIME - 199)) | (1 << (SqlParser.TIMESTAMP - 199)) | (1 << (SqlParser.DATETIME - 199)) | (1 << (SqlParser.YEAR - 199)) | (1 << (SqlParser.TEXT - 199)) | (1 << (SqlParser.ENUM - 199)) | (1 << (SqlParser.SERIAL - 199)))) !== 0) || ((((_la - 233)) & ~0x1f) == 0 && ((1 << (_la - 233)) & ((1 << (SqlParser.JSON_VALID - 233)) | (1 << (SqlParser.JSON_SCHEMA_VALID - 233)) | (1 << (SqlParser.COUNT - 233)) | (1 << (SqlParser.POSITION - 233)))) !== 0) || ((((_la - 270)) & ~0x1f) == 0 && ((1 << (_la - 270)) & ((1 << (SqlParser.ACCOUNT - 270)) | (1 << (SqlParser.ACTION - 270)) | (1 << (SqlParser.AFTER - 270)) | (1 << (SqlParser.AGGREGATE - 270)) | (1 << (SqlParser.ALGORITHM - 270)) | (1 << (SqlParser.ANY - 270)) | (1 << (SqlParser.AT - 270)) | (1 << (SqlParser.AUTHORS - 270)) | (1 << (SqlParser.AUTOCOMMIT - 270)) | (1 << (SqlParser.AUTOEXTEND_SIZE - 270)) | (1 << (SqlParser.AUTO_INCREMENT - 270)) | (1 << (SqlParser.AVG_ROW_LENGTH - 270)) | (1 << (SqlParser.BEGIN - 270)) | (1 << (SqlParser.BINLOG - 270)) | (1 << (SqlParser.BIT - 270)) | (1 << (SqlParser.BLOCK - 270)) | (1 << (SqlParser.BOOL - 270)) | (1 << (SqlParser.BOOLEAN - 270)) | (1 << (SqlParser.BTREE - 270)) | (1 << (SqlParser.CACHE - 270)) | (1 << (SqlParser.CASCADED - 270)) | (1 << (SqlParser.CHAIN - 270)) | (1 << (SqlParser.CHANGED - 270)) | (1 << (SqlParser.CHANNEL - 270)) | (1 << (SqlParser.CHECKSUM - 270)) | (1 << (SqlParser.PAGE_CHECKSUM - 270)) | (1 << (SqlParser.CIPHER - 270)) | (1 << (SqlParser.CLASS_ORIGIN - 270)) | (1 << (SqlParser.CLIENT - 270)) | (1 << (SqlParser.CLOSE - 270)) | (1 << (SqlParser.COALESCE - 270)) | (1 << (SqlParser.CODE - 270)))) !== 0) || ((((_la - 302)) & ~0x1f) == 0 && ((1 << (_la - 302)) & ((1 << (SqlParser.COLUMNS - 302)) | (1 << (SqlParser.COLUMN_FORMAT - 302)) | (1 << (SqlParser.COLUMN_NAME - 302)) | (1 << (SqlParser.COMMENT - 302)) | (1 << (SqlParser.COMMIT - 302)) | (1 << (SqlParser.COMPACT - 302)) | (1 << (SqlParser.COMPLETION - 302)) | (1 << (SqlParser.COMPRESSED - 302)) | (1 << (SqlParser.COMPRESSION - 302)) | (1 << (SqlParser.CONCURRENT - 302)) | (1 << (SqlParser.CONNECTION - 302)) | (1 << (SqlParser.CONSISTENT - 302)) | (1 << (SqlParser.CONSTRAINT_CATALOG - 302)) | (1 << (SqlParser.CONSTRAINT_SCHEMA - 302)) | (1 << (SqlParser.CONSTRAINT_NAME - 302)) | (1 << (SqlParser.CONTAINS - 302)) | (1 << (SqlParser.CONTEXT - 302)) | (1 << (SqlParser.CONTRIBUTORS - 302)) | (1 << (SqlParser.COPY - 302)) | (1 << (SqlParser.CPU - 302)) | (1 << (SqlParser.CURSOR_NAME - 302)) | (1 << (SqlParser.DATA - 302)) | (1 << (SqlParser.DATAFILE - 302)) | (1 << (SqlParser.DEALLOCATE - 302)) | (1 << (SqlParser.DEFAULT_AUTH - 302)) | (1 << (SqlParser.DEFINER - 302)) | (1 << (SqlParser.DELAY_KEY_WRITE - 302)) | (1 << (SqlParser.DES_KEY_FILE - 302)) | (1 << (SqlParser.DIRECTORY - 302)) | (1 << (SqlParser.DISABLE - 302)) | (1 << (SqlParser.DISCARD - 302)) | (1 << (SqlParser.DISK - 302)))) !== 0) || ((((_la - 334)) & ~0x1f) == 0 && ((1 << (_la - 334)) & ((1 << (SqlParser.DO - 334)) | (1 << (SqlParser.DUMPFILE - 334)) | (1 << (SqlParser.DUPLICATE - 334)) | (1 << (SqlParser.DYNAMIC - 334)) | (1 << (SqlParser.ENABLE - 334)) | (1 << (SqlParser.ENCRYPTION - 334)) | (1 << (SqlParser.END - 334)) | (1 << (SqlParser.ENDS - 334)) | (1 << (SqlParser.ENGINE - 334)) | (1 << (SqlParser.ENGINES - 334)) | (1 << (SqlParser.ERROR - 334)) | (1 << (SqlParser.ERRORS - 334)) | (1 << (SqlParser.ESCAPE - 334)) | (1 << (SqlParser.EVEN - 334)) | (1 << (SqlParser.EVENT - 334)) | (1 << (SqlParser.EVENTS - 334)) | (1 << (SqlParser.EVERY - 334)) | (1 << (SqlParser.EXCHANGE - 334)) | (1 << (SqlParser.EXCLUSIVE - 334)) | (1 << (SqlParser.EXPIRE - 334)) | (1 << (SqlParser.EXPORT - 334)) | (1 << (SqlParser.EXTENDED - 334)) | (1 << (SqlParser.EXTENT_SIZE - 334)) | (1 << (SqlParser.FAST - 334)) | (1 << (SqlParser.FAULTS - 334)) | (1 << (SqlParser.FIELDS - 334)) | (1 << (SqlParser.FILE_BLOCK_SIZE - 334)) | (1 << (SqlParser.FILTER - 334)) | (1 << (SqlParser.FIRST - 334)) | (1 << (SqlParser.FIXED - 334)) | (1 << (SqlParser.FLUSH - 334)) | (1 << (SqlParser.FOLLOWS - 334)))) !== 0) || ((((_la - 366)) & ~0x1f) == 0 && ((1 << (_la - 366)) & ((1 << (SqlParser.FOUND - 366)) | (1 << (SqlParser.FULL - 366)) | (1 << (SqlParser.FUNCTION - 366)) | (1 << (SqlParser.GENERAL - 366)) | (1 << (SqlParser.GLOBAL - 366)) | (1 << (SqlParser.GRANTS - 366)) | (1 << (SqlParser.GROUP_REPLICATION - 366)) | (1 << (SqlParser.HANDLER - 366)) | (1 << (SqlParser.HASH - 366)) | (1 << (SqlParser.HELP - 366)) | (1 << (SqlParser.HOST - 366)) | (1 << (SqlParser.HOSTS - 366)) | (1 << (SqlParser.IDENTIFIED - 366)) | (1 << (SqlParser.IGNORE_SERVER_IDS - 366)) | (1 << (SqlParser.IMPORT - 366)) | (1 << (SqlParser.INDEXES - 366)) | (1 << (SqlParser.INITIAL_SIZE - 366)) | (1 << (SqlParser.INPLACE - 366)) | (1 << (SqlParser.INSERT_METHOD - 366)) | (1 << (SqlParser.INSTALL - 366)) | (1 << (SqlParser.INSTANCE - 366)) | (1 << (SqlParser.INVISIBLE - 366)) | (1 << (SqlParser.INVOKER - 366)) | (1 << (SqlParser.IO - 366)) | (1 << (SqlParser.IO_THREAD - 366)) | (1 << (SqlParser.IPC - 366)) | (1 << (SqlParser.ISOLATION - 366)) | (1 << (SqlParser.ISSUER - 366)) | (1 << (SqlParser.JSON - 366)) | (1 << (SqlParser.KEY_BLOCK_SIZE - 366)) | (1 << (SqlParser.LANGUAGE - 366)) | (1 << (SqlParser.LAST - 366)))) !== 0) || ((((_la - 398)) & ~0x1f) == 0 && ((1 << (_la - 398)) & ((1 << (SqlParser.LEAVES - 398)) | (1 << (SqlParser.LESS - 398)) | (1 << (SqlParser.LEVEL - 398)) | (1 << (SqlParser.LIST - 398)) | (1 << (SqlParser.LOCAL - 398)) | (1 << (SqlParser.LOGFILE - 398)) | (1 << (SqlParser.LOGS - 398)) | (1 << (SqlParser.MASTER - 398)) | (1 << (SqlParser.MASTER_AUTO_POSITION - 398)) | (1 << (SqlParser.MASTER_CONNECT_RETRY - 398)) | (1 << (SqlParser.MASTER_DELAY - 398)) | (1 << (SqlParser.MASTER_HEARTBEAT_PERIOD - 398)) | (1 << (SqlParser.MASTER_HOST - 398)) | (1 << (SqlParser.MASTER_LOG_FILE - 398)) | (1 << (SqlParser.MASTER_LOG_POS - 398)) | (1 << (SqlParser.MASTER_PASSWORD - 398)) | (1 << (SqlParser.MASTER_PORT - 398)) | (1 << (SqlParser.MASTER_RETRY_COUNT - 398)) | (1 << (SqlParser.MASTER_SSL - 398)) | (1 << (SqlParser.MASTER_SSL_CA - 398)) | (1 << (SqlParser.MASTER_SSL_CAPATH - 398)) | (1 << (SqlParser.MASTER_SSL_CERT - 398)) | (1 << (SqlParser.MASTER_SSL_CIPHER - 398)) | (1 << (SqlParser.MASTER_SSL_CRL - 398)) | (1 << (SqlParser.MASTER_SSL_CRLPATH - 398)) | (1 << (SqlParser.MASTER_SSL_KEY - 398)) | (1 << (SqlParser.MASTER_TLS_VERSION - 398)) | (1 << (SqlParser.MASTER_USER - 398)) | (1 << (SqlParser.MAX_CONNECTIONS_PER_HOUR - 398)) | (1 << (SqlParser.MAX_QUERIES_PER_HOUR - 398)) | (1 << (SqlParser.MAX_ROWS - 398)) | (1 << (SqlParser.MAX_SIZE - 398)))) !== 0) || ((((_la - 430)) & ~0x1f) == 0 && ((1 << (_la - 430)) & ((1 << (SqlParser.MAX_UPDATES_PER_HOUR - 430)) | (1 << (SqlParser.MAX_USER_CONNECTIONS - 430)) | (1 << (SqlParser.MEDIUM - 430)) | (1 << (SqlParser.MERGE - 430)) | (1 << (SqlParser.MESSAGE_TEXT - 430)) | (1 << (SqlParser.MID - 430)) | (1 << (SqlParser.MIGRATE - 430)) | (1 << (SqlParser.MIN_ROWS - 430)) | (1 << (SqlParser.MODE - 430)) | (1 << (SqlParser.MODIFY - 430)) | (1 << (SqlParser.MUTEX - 430)) | (1 << (SqlParser.MYSQL - 430)) | (1 << (SqlParser.MYSQL_ERRNO - 430)) | (1 << (SqlParser.NAME - 430)) | (1 << (SqlParser.NAMES - 430)) | (1 << (SqlParser.NCHAR - 430)) | (1 << (SqlParser.NEVER - 430)) | (1 << (SqlParser.NEXT - 430)) | (1 << (SqlParser.NO - 430)) | (1 << (SqlParser.NODEGROUP - 430)) | (1 << (SqlParser.NONE - 430)) | (1 << (SqlParser.OFFLINE - 430)) | (1 << (SqlParser.OFFSET - 430)) | (1 << (SqlParser.OJ - 430)) | (1 << (SqlParser.OLD_PASSWORD - 430)) | (1 << (SqlParser.ONE - 430)) | (1 << (SqlParser.ONLINE - 430)) | (1 << (SqlParser.ONLY - 430)) | (1 << (SqlParser.OPEN - 430)) | (1 << (SqlParser.OPTIMIZER_COSTS - 430)) | (1 << (SqlParser.OPTIONS - 430)) | (1 << (SqlParser.OWNER - 430)))) !== 0) || ((((_la - 462)) & ~0x1f) == 0 && ((1 << (_la - 462)) & ((1 << (SqlParser.PACK_KEYS - 462)) | (1 << (SqlParser.PAGE - 462)) | (1 << (SqlParser.PARSER - 462)) | (1 << (SqlParser.PARTIAL - 462)) | (1 << (SqlParser.PARTITIONING - 462)) | (1 << (SqlParser.PARTITIONS - 462)) | (1 << (SqlParser.PASSWORD - 462)) | (1 << (SqlParser.PHASE - 462)) | (1 << (SqlParser.PLUGIN - 462)) | (1 << (SqlParser.PLUGIN_DIR - 462)) | (1 << (SqlParser.PLUGINS - 462)) | (1 << (SqlParser.PORT - 462)) | (1 << (SqlParser.PRECEDES - 462)) | (1 << (SqlParser.PREPARE - 462)) | (1 << (SqlParser.PRESERVE - 462)) | (1 << (SqlParser.PREV - 462)) | (1 << (SqlParser.PROCESSLIST - 462)) | (1 << (SqlParser.PROFILE - 462)) | (1 << (SqlParser.PROFILES - 462)) | (1 << (SqlParser.PROXY - 462)) | (1 << (SqlParser.QUERY - 462)) | (1 << (SqlParser.QUICK - 462)) | (1 << (SqlParser.REBUILD - 462)) | (1 << (SqlParser.RECOVER - 462)) | (1 << (SqlParser.REDO_BUFFER_SIZE - 462)) | (1 << (SqlParser.REDUNDANT - 462)) | (1 << (SqlParser.RELAY - 462)) | (1 << (SqlParser.RELAY_LOG_FILE - 462)) | (1 << (SqlParser.RELAY_LOG_POS - 462)) | (1 << (SqlParser.RELAYLOG - 462)) | (1 << (SqlParser.REMOVE - 462)) | (1 << (SqlParser.REORGANIZE - 462)))) !== 0) || ((((_la - 494)) & ~0x1f) == 0 && ((1 << (_la - 494)) & ((1 << (SqlParser.REPAIR - 494)) | (1 << (SqlParser.REPLICATE_DO_DB - 494)) | (1 << (SqlParser.REPLICATE_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_DB - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATE_REWRITE_DB - 494)) | (1 << (SqlParser.REPLICATE_WILD_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_WILD_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATION - 494)) | (1 << (SqlParser.RESET - 494)) | (1 << (SqlParser.RESUME - 494)) | (1 << (SqlParser.RETURNED_SQLSTATE - 494)) | (1 << (SqlParser.RETURNS - 494)) | (1 << (SqlParser.ROLE - 494)) | (1 << (SqlParser.ROLLBACK - 494)) | (1 << (SqlParser.ROLLUP - 494)) | (1 << (SqlParser.ROTATE - 494)) | (1 << (SqlParser.ROW - 494)) | (1 << (SqlParser.ROWS - 494)) | (1 << (SqlParser.ROW_FORMAT - 494)) | (1 << (SqlParser.SAVEPOINT - 494)) | (1 << (SqlParser.SCHEDULE - 494)) | (1 << (SqlParser.SECURITY - 494)) | (1 << (SqlParser.SERVER - 494)) | (1 << (SqlParser.SESSION - 494)) | (1 << (SqlParser.SHARE - 494)) | (1 << (SqlParser.SHARED - 494)) | (1 << (SqlParser.SIGNED - 494)) | (1 << (SqlParser.SIMPLE - 494)) | (1 << (SqlParser.SLAVE - 494)) | (1 << (SqlParser.SLOW - 494)) | (1 << (SqlParser.SNAPSHOT - 494)))) !== 0) || ((((_la - 526)) & ~0x1f) == 0 && ((1 << (_la - 526)) & ((1 << (SqlParser.SOCKET - 526)) | (1 << (SqlParser.SOME - 526)) | (1 << (SqlParser.SONAME - 526)) | (1 << (SqlParser.SOUNDS - 526)) | (1 << (SqlParser.SOURCE - 526)) | (1 << (SqlParser.SQL_AFTER_GTIDS - 526)) | (1 << (SqlParser.SQL_AFTER_MTS_GAPS - 526)) | (1 << (SqlParser.SQL_BEFORE_GTIDS - 526)) | (1 << (SqlParser.SQL_BUFFER_RESULT - 526)) | (1 << (SqlParser.SQL_CACHE - 526)) | (1 << (SqlParser.SQL_NO_CACHE - 526)) | (1 << (SqlParser.SQL_THREAD - 526)) | (1 << (SqlParser.START - 526)) | (1 << (SqlParser.STARTS - 526)) | (1 << (SqlParser.STATS_AUTO_RECALC - 526)) | (1 << (SqlParser.STATS_PERSISTENT - 526)) | (1 << (SqlParser.STATS_SAMPLE_PAGES - 526)) | (1 << (SqlParser.STATUS - 526)) | (1 << (SqlParser.STOP - 526)) | (1 << (SqlParser.STORAGE - 526)) | (1 << (SqlParser.STRING - 526)) | (1 << (SqlParser.SUBCLASS_ORIGIN - 526)) | (1 << (SqlParser.SUBJECT - 526)) | (1 << (SqlParser.SUBPARTITION - 526)) | (1 << (SqlParser.SUBPARTITIONS - 526)) | (1 << (SqlParser.SUSPEND - 526)) | (1 << (SqlParser.SWAPS - 526)) | (1 << (SqlParser.SWITCHES - 526)) | (1 << (SqlParser.TABLE_NAME - 526)) | (1 << (SqlParser.TABLESPACE - 526)) | (1 << (SqlParser.TEMPORARY - 526)))) !== 0) || ((((_la - 558)) & ~0x1f) == 0 && ((1 << (_la - 558)) & ((1 << (SqlParser.TEMPTABLE - 558)) | (1 << (SqlParser.THAN - 558)) | (1 << (SqlParser.TRADITIONAL - 558)) | (1 << (SqlParser.TRANSACTION - 558)) | (1 << (SqlParser.TRANSACTIONAL - 558)) | (1 << (SqlParser.TRIGGERS - 558)) | (1 << (SqlParser.TRUNCATE - 558)) | (1 << (SqlParser.UNDEFINED - 558)) | (1 << (SqlParser.UNDOFILE - 558)) | (1 << (SqlParser.UNDO_BUFFER_SIZE - 558)) | (1 << (SqlParser.UNINSTALL - 558)) | (1 << (SqlParser.UNKNOWN - 558)) | (1 << (SqlParser.UNTIL - 558)) | (1 << (SqlParser.UPGRADE - 558)) | (1 << (SqlParser.USER - 558)) | (1 << (SqlParser.USE_FRM - 558)) | (1 << (SqlParser.USER_RESOURCES - 558)) | (1 << (SqlParser.VALIDATION - 558)) | (1 << (SqlParser.VALUE - 558)) | (1 << (SqlParser.VARIABLES - 558)) | (1 << (SqlParser.VIEW - 558)) | (1 << (SqlParser.VISIBLE - 558)) | (1 << (SqlParser.WAIT - 558)) | (1 << (SqlParser.WARNINGS - 558)) | (1 << (SqlParser.WITHOUT - 558)) | (1 << (SqlParser.WORK - 558)) | (1 << (SqlParser.WRAPPER - 558)) | (1 << (SqlParser.X509 - 558)) | (1 << (SqlParser.XA - 558)) | (1 << (SqlParser.XML - 558)))) !== 0) || ((((_la - 593)) & ~0x1f) == 0 && ((1 << (_la - 593)) & ((1 << (SqlParser.INTERNAL - 593)) | (1 << (SqlParser.QUARTER - 593)) | (1 << (SqlParser.MONTH - 593)) | (1 << (SqlParser.DAY - 593)) | (1 << (SqlParser.HOUR - 593)) | (1 << (SqlParser.MINUTE - 593)) | (1 << (SqlParser.WEEK - 593)) | (1 << (SqlParser.SECOND - 593)) | (1 << (SqlParser.MICROSECOND - 593)) | (1 << (SqlParser.TABLES - 593)) | (1 << (SqlParser.ROUTINE - 593)) | (1 << (SqlParser.EXECUTE - 593)) | (1 << (SqlParser.FILE - 593)) | (1 << (SqlParser.PROCESS - 593)) | (1 << (SqlParser.RELOAD - 593)) | (1 << (SqlParser.SHUTDOWN - 593)) | (1 << (SqlParser.SUPER - 593)) | (1 << (SqlParser.PRIVILEGES - 593)) | (1 << (SqlParser.AUDIT_ADMIN - 593)) | (1 << (SqlParser.BACKUP_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ENCRYPTION_ADMIN - 593)) | (1 << (SqlParser.CLONE_ADMIN - 593)) | (1 << (SqlParser.CONNECTION_ADMIN - 593)) | (1 << (SqlParser.ENCRYPTION_KEY_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_USER - 593)) | (1 << (SqlParser.GROUP_REPLICATION_ADMIN - 593)) | (1 << (SqlParser.INNODB_REDO_LOG_ARCHIVE - 593)) | (1 << (SqlParser.NDB_STORED_USER - 593)) | (1 << (SqlParser.PERSIST_RO_VARIABLES_ADMIN - 593)))) !== 0) || ((((_la - 625)) & ~0x1f) == 0 && ((1 << (_la - 625)) & ((1 << (SqlParser.REPLICATION_APPLIER - 625)) | (1 << (SqlParser.REPLICATION_SLAVE_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_USER - 625)) | (1 << (SqlParser.ROLE_ADMIN - 625)) | (1 << (SqlParser.SESSION_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.SET_USER_ID - 625)) | (1 << (SqlParser.SHOW_ROUTINE - 625)) | (1 << (SqlParser.SYSTEM_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.TABLE_ENCRYPTION_ADMIN - 625)) | (1 << (SqlParser.VERSION_TOKEN_ADMIN - 625)) | (1 << (SqlParser.XA_RECOVER_ADMIN - 625)) | (1 << (SqlParser.ARMSCII8 - 625)) | (1 << (SqlParser.ASCII - 625)) | (1 << (SqlParser.BIG5 - 625)) | (1 << (SqlParser.CP1250 - 625)) | (1 << (SqlParser.CP1251 - 625)) | (1 << (SqlParser.CP1256 - 625)) | (1 << (SqlParser.CP1257 - 625)) | (1 << (SqlParser.CP850 - 625)) | (1 << (SqlParser.CP852 - 625)) | (1 << (SqlParser.CP866 - 625)) | (1 << (SqlParser.CP932 - 625)) | (1 << (SqlParser.DEC8 - 625)) | (1 << (SqlParser.EUCJPMS - 625)) | (1 << (SqlParser.EUCKR - 625)) | (1 << (SqlParser.GB2312 - 625)) | (1 << (SqlParser.GBK - 625)) | (1 << (SqlParser.GEOSTD8 - 625)) | (1 << (SqlParser.GREEK - 625)) | (1 << (SqlParser.HEBREW - 625)) | (1 << (SqlParser.HP8 - 625)))) !== 0) || ((((_la - 657)) & ~0x1f) == 0 && ((1 << (_la - 657)) & ((1 << (SqlParser.KEYBCS2 - 657)) | (1 << (SqlParser.KOI8R - 657)) | (1 << (SqlParser.KOI8U - 657)) | (1 << (SqlParser.LATIN1 - 657)) | (1 << (SqlParser.LATIN2 - 657)) | (1 << (SqlParser.LATIN5 - 657)) | (1 << (SqlParser.LATIN7 - 657)) | (1 << (SqlParser.MACCE - 657)) | (1 << (SqlParser.MACROMAN - 657)) | (1 << (SqlParser.SJIS - 657)) | (1 << (SqlParser.SWE7 - 657)) | (1 << (SqlParser.TIS620 - 657)) | (1 << (SqlParser.UCS2 - 657)) | (1 << (SqlParser.UJIS - 657)) | (1 << (SqlParser.UTF16 - 657)) | (1 << (SqlParser.UTF16LE - 657)) | (1 << (SqlParser.UTF32 - 657)) | (1 << (SqlParser.UTF8 - 657)) | (1 << (SqlParser.UTF8MB3 - 657)) | (1 << (SqlParser.UTF8MB4 - 657)) | (1 << (SqlParser.ARCHIVE - 657)) | (1 << (SqlParser.BLACKHOLE - 657)) | (1 << (SqlParser.CSV - 657)) | (1 << (SqlParser.FEDERATED - 657)) | (1 << (SqlParser.INNODB - 657)) | (1 << (SqlParser.MEMORY - 657)) | (1 << (SqlParser.MRG_MYISAM - 657)) | (1 << (SqlParser.MYISAM - 657)) | (1 << (SqlParser.NDB - 657)) | (1 << (SqlParser.NDBCLUSTER - 657)) | (1 << (SqlParser.PERFORMANCE_SCHEMA - 657)) | (1 << (SqlParser.TOKUDB - 657)))) !== 0) || ((((_la - 689)) & ~0x1f) == 0 && ((1 << (_la - 689)) & ((1 << (SqlParser.REPEATABLE - 689)) | (1 << (SqlParser.COMMITTED - 689)) | (1 << (SqlParser.UNCOMMITTED - 689)) | (1 << (SqlParser.SERIALIZABLE - 689)) | (1 << (SqlParser.GEOMETRYCOLLECTION - 689)) | (1 << (SqlParser.LINESTRING - 689)) | (1 << (SqlParser.MULTILINESTRING - 689)) | (1 << (SqlParser.MULTIPOINT - 689)) | (1 << (SqlParser.MULTIPOLYGON - 689)) | (1 << (SqlParser.POINT - 689)) | (1 << (SqlParser.POLYGON - 689)) | (1 << (SqlParser.ABS - 689)) | (1 << (SqlParser.ACOS - 689)) | (1 << (SqlParser.ADDDATE - 689)) | (1 << (SqlParser.ADDTIME - 689)) | (1 << (SqlParser.AES_DECRYPT - 689)) | (1 << (SqlParser.AES_ENCRYPT - 689)) | (1 << (SqlParser.AREA - 689)) | (1 << (SqlParser.ASBINARY - 689)) | (1 << (SqlParser.ASIN - 689)) | (1 << (SqlParser.ASTEXT - 689)) | (1 << (SqlParser.ASWKB - 689)) | (1 << (SqlParser.ASWKT - 689)) | (1 << (SqlParser.ASYMMETRIC_DECRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_DERIVE - 689)) | (1 << (SqlParser.ASYMMETRIC_ENCRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_SIGN - 689)) | (1 << (SqlParser.ASYMMETRIC_VERIFY - 689)) | (1 << (SqlParser.ATAN - 689)) | (1 << (SqlParser.ATAN2 - 689)))) !== 0) || ((((_la - 721)) & ~0x1f) == 0 && ((1 << (_la - 721)) & ((1 << (SqlParser.BENCHMARK - 721)) | (1 << (SqlParser.BIN - 721)) | (1 << (SqlParser.BIT_COUNT - 721)) | (1 << (SqlParser.BIT_LENGTH - 721)) | (1 << (SqlParser.BUFFER - 721)) | (1 << (SqlParser.CATALOG_NAME - 721)) | (1 << (SqlParser.CEIL - 721)) | (1 << (SqlParser.CEILING - 721)) | (1 << (SqlParser.CENTROID - 721)) | (1 << (SqlParser.CHARACTER_LENGTH - 721)) | (1 << (SqlParser.CHARSET - 721)) | (1 << (SqlParser.CHAR_LENGTH - 721)) | (1 << (SqlParser.COERCIBILITY - 721)) | (1 << (SqlParser.COLLATION - 721)) | (1 << (SqlParser.COMPRESS - 721)) | (1 << (SqlParser.CONCAT - 721)) | (1 << (SqlParser.CONCAT_WS - 721)) | (1 << (SqlParser.CONNECTION_ID - 721)) | (1 << (SqlParser.CONV - 721)) | (1 << (SqlParser.CONVERT_TZ - 721)) | (1 << (SqlParser.COS - 721)) | (1 << (SqlParser.COT - 721)) | (1 << (SqlParser.CRC32 - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PRIV_KEY - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PUB_KEY - 721)) | (1 << (SqlParser.CREATE_DH_PARAMETERS - 721)) | (1 << (SqlParser.CREATE_DIGEST - 721)) | (1 << (SqlParser.CROSSES - 721)) | (1 << (SqlParser.DATEDIFF - 721)) | (1 << (SqlParser.DATE_FORMAT - 721)) | (1 << (SqlParser.DAYNAME - 721)) | (1 << (SqlParser.DAYOFMONTH - 721)))) !== 0) || ((((_la - 753)) & ~0x1f) == 0 && ((1 << (_la - 753)) & ((1 << (SqlParser.DAYOFWEEK - 753)) | (1 << (SqlParser.DAYOFYEAR - 753)) | (1 << (SqlParser.DECODE - 753)) | (1 << (SqlParser.DEGREES - 753)) | (1 << (SqlParser.DES_DECRYPT - 753)) | (1 << (SqlParser.DES_ENCRYPT - 753)) | (1 << (SqlParser.DIMENSION - 753)) | (1 << (SqlParser.DISJOINT - 753)) | (1 << (SqlParser.ELT - 753)) | (1 << (SqlParser.ENCODE - 753)) | (1 << (SqlParser.ENCRYPT - 753)) | (1 << (SqlParser.ENDPOINT - 753)) | (1 << (SqlParser.ENVELOPE - 753)) | (1 << (SqlParser.EQUALS - 753)) | (1 << (SqlParser.EXP - 753)) | (1 << (SqlParser.EXPORT_SET - 753)) | (1 << (SqlParser.EXTERIORRING - 753)) | (1 << (SqlParser.EXTRACTVALUE - 753)) | (1 << (SqlParser.FIELD - 753)) | (1 << (SqlParser.FIND_IN_SET - 753)) | (1 << (SqlParser.FLOOR - 753)) | (1 << (SqlParser.FORMAT - 753)) | (1 << (SqlParser.FOUND_ROWS - 753)) | (1 << (SqlParser.FROM_BASE64 - 753)) | (1 << (SqlParser.FROM_DAYS - 753)) | (1 << (SqlParser.FROM_UNIXTIME - 753)) | (1 << (SqlParser.GEOMCOLLFROMTEXT - 753)) | (1 << (SqlParser.GEOMCOLLFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYFROMWKB - 753)))) !== 0) || ((((_la - 785)) & ~0x1f) == 0 && ((1 << (_la - 785)) & ((1 << (SqlParser.GEOMETRYN - 785)) | (1 << (SqlParser.GEOMETRYTYPE - 785)) | (1 << (SqlParser.GEOMFROMTEXT - 785)) | (1 << (SqlParser.GEOMFROMWKB - 785)) | (1 << (SqlParser.GET_FORMAT - 785)) | (1 << (SqlParser.GET_LOCK - 785)) | (1 << (SqlParser.GLENGTH - 785)) | (1 << (SqlParser.GREATEST - 785)) | (1 << (SqlParser.GTID_SUBSET - 785)) | (1 << (SqlParser.GTID_SUBTRACT - 785)) | (1 << (SqlParser.HEX - 785)) | (1 << (SqlParser.IFNULL - 785)) | (1 << (SqlParser.INET6_ATON - 785)) | (1 << (SqlParser.INET6_NTOA - 785)) | (1 << (SqlParser.INET_ATON - 785)) | (1 << (SqlParser.INET_NTOA - 785)) | (1 << (SqlParser.INSTR - 785)) | (1 << (SqlParser.INTERIORRINGN - 785)) | (1 << (SqlParser.INTERSECTS - 785)) | (1 << (SqlParser.ISCLOSED - 785)) | (1 << (SqlParser.ISEMPTY - 785)) | (1 << (SqlParser.ISNULL - 785)) | (1 << (SqlParser.ISSIMPLE - 785)) | (1 << (SqlParser.IS_FREE_LOCK - 785)) | (1 << (SqlParser.IS_IPV4 - 785)) | (1 << (SqlParser.IS_IPV4_COMPAT - 785)) | (1 << (SqlParser.IS_IPV4_MAPPED - 785)) | (1 << (SqlParser.IS_IPV6 - 785)) | (1 << (SqlParser.IS_USED_LOCK - 785)) | (1 << (SqlParser.LAST_INSERT_ID - 785)) | (1 << (SqlParser.LCASE - 785)) | (1 << (SqlParser.LEAST - 785)))) !== 0) || ((((_la - 817)) & ~0x1f) == 0 && ((1 << (_la - 817)) & ((1 << (SqlParser.LENGTH - 817)) | (1 << (SqlParser.LINEFROMTEXT - 817)) | (1 << (SqlParser.LINEFROMWKB - 817)) | (1 << (SqlParser.LINESTRINGFROMTEXT - 817)) | (1 << (SqlParser.LINESTRINGFROMWKB - 817)) | (1 << (SqlParser.LN - 817)) | (1 << (SqlParser.LOAD_FILE - 817)) | (1 << (SqlParser.LOCATE - 817)) | (1 << (SqlParser.LOG - 817)) | (1 << (SqlParser.LOG10 - 817)) | (1 << (SqlParser.LOG2 - 817)) | (1 << (SqlParser.LOWER - 817)) | (1 << (SqlParser.LPAD - 817)) | (1 << (SqlParser.LTRIM - 817)) | (1 << (SqlParser.MAKEDATE - 817)) | (1 << (SqlParser.MAKETIME - 817)) | (1 << (SqlParser.MAKE_SET - 817)) | (1 << (SqlParser.MASTER_POS_WAIT - 817)) | (1 << (SqlParser.MBRCONTAINS - 817)) | (1 << (SqlParser.MBRDISJOINT - 817)) | (1 << (SqlParser.MBREQUAL - 817)) | (1 << (SqlParser.MBRINTERSECTS - 817)) | (1 << (SqlParser.MBROVERLAPS - 817)) | (1 << (SqlParser.MBRTOUCHES - 817)) | (1 << (SqlParser.MBRWITHIN - 817)) | (1 << (SqlParser.MD5 - 817)) | (1 << (SqlParser.MLINEFROMTEXT - 817)) | (1 << (SqlParser.MLINEFROMWKB - 817)) | (1 << (SqlParser.MONTHNAME - 817)) | (1 << (SqlParser.MPOINTFROMTEXT - 817)) | (1 << (SqlParser.MPOINTFROMWKB - 817)) | (1 << (SqlParser.MPOLYFROMTEXT - 817)))) !== 0) || ((((_la - 849)) & ~0x1f) == 0 && ((1 << (_la - 849)) & ((1 << (SqlParser.MPOLYFROMWKB - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMTEXT - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMWKB - 849)) | (1 << (SqlParser.MULTIPOINTFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOINTFROMWKB - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMWKB - 849)) | (1 << (SqlParser.NAME_CONST - 849)) | (1 << (SqlParser.NULLIF - 849)) | (1 << (SqlParser.NUMGEOMETRIES - 849)) | (1 << (SqlParser.NUMINTERIORRINGS - 849)) | (1 << (SqlParser.NUMPOINTS - 849)) | (1 << (SqlParser.OCT - 849)) | (1 << (SqlParser.OCTET_LENGTH - 849)) | (1 << (SqlParser.ORD - 849)) | (1 << (SqlParser.OVERLAPS - 849)) | (1 << (SqlParser.PERIOD_ADD - 849)) | (1 << (SqlParser.PERIOD_DIFF - 849)) | (1 << (SqlParser.PI - 849)) | (1 << (SqlParser.POINTFROMTEXT - 849)) | (1 << (SqlParser.POINTFROMWKB - 849)) | (1 << (SqlParser.POINTN - 849)) | (1 << (SqlParser.POLYFROMTEXT - 849)) | (1 << (SqlParser.POLYFROMWKB - 849)) | (1 << (SqlParser.POLYGONFROMTEXT - 849)) | (1 << (SqlParser.POLYGONFROMWKB - 849)) | (1 << (SqlParser.POW - 849)) | (1 << (SqlParser.POWER - 849)) | (1 << (SqlParser.QUOTE - 849)) | (1 << (SqlParser.RADIANS - 849)) | (1 << (SqlParser.RAND - 849)) | (1 << (SqlParser.RANDOM_BYTES - 849)))) !== 0) || ((((_la - 881)) & ~0x1f) == 0 && ((1 << (_la - 881)) & ((1 << (SqlParser.RELEASE_LOCK - 881)) | (1 << (SqlParser.REVERSE - 881)) | (1 << (SqlParser.ROUND - 881)) | (1 << (SqlParser.ROW_COUNT - 881)) | (1 << (SqlParser.RPAD - 881)) | (1 << (SqlParser.RTRIM - 881)) | (1 << (SqlParser.SEC_TO_TIME - 881)) | (1 << (SqlParser.SESSION_USER - 881)) | (1 << (SqlParser.SHA - 881)) | (1 << (SqlParser.SHA1 - 881)) | (1 << (SqlParser.SHA2 - 881)) | (1 << (SqlParser.SCHEMA_NAME - 881)) | (1 << (SqlParser.SIGN - 881)) | (1 << (SqlParser.SIN - 881)) | (1 << (SqlParser.SLEEP - 881)) | (1 << (SqlParser.SOUNDEX - 881)) | (1 << (SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS - 881)) | (1 << (SqlParser.SQRT - 881)) | (1 << (SqlParser.SRID - 881)) | (1 << (SqlParser.STARTPOINT - 881)) | (1 << (SqlParser.STRCMP - 881)) | (1 << (SqlParser.STR_TO_DATE - 881)) | (1 << (SqlParser.ST_AREA - 881)) | (1 << (SqlParser.ST_ASBINARY - 881)) | (1 << (SqlParser.ST_ASTEXT - 881)) | (1 << (SqlParser.ST_ASWKB - 881)) | (1 << (SqlParser.ST_ASWKT - 881)) | (1 << (SqlParser.ST_BUFFER - 881)) | (1 << (SqlParser.ST_CENTROID - 881)) | (1 << (SqlParser.ST_CONTAINS - 881)) | (1 << (SqlParser.ST_CROSSES - 881)) | (1 << (SqlParser.ST_DIFFERENCE - 881)))) !== 0) || ((((_la - 913)) & ~0x1f) == 0 && ((1 << (_la - 913)) & ((1 << (SqlParser.ST_DIMENSION - 913)) | (1 << (SqlParser.ST_DISJOINT - 913)) | (1 << (SqlParser.ST_DISTANCE - 913)) | (1 << (SqlParser.ST_ENDPOINT - 913)) | (1 << (SqlParser.ST_ENVELOPE - 913)) | (1 << (SqlParser.ST_EQUALS - 913)) | (1 << (SqlParser.ST_EXTERIORRING - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYN - 913)) | (1 << (SqlParser.ST_GEOMETRYTYPE - 913)) | (1 << (SqlParser.ST_GEOMFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMFROMWKB - 913)) | (1 << (SqlParser.ST_INTERIORRINGN - 913)) | (1 << (SqlParser.ST_INTERSECTION - 913)) | (1 << (SqlParser.ST_INTERSECTS - 913)) | (1 << (SqlParser.ST_ISCLOSED - 913)) | (1 << (SqlParser.ST_ISEMPTY - 913)) | (1 << (SqlParser.ST_ISSIMPLE - 913)) | (1 << (SqlParser.ST_LINEFROMTEXT - 913)) | (1 << (SqlParser.ST_LINEFROMWKB - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMTEXT - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMWKB - 913)) | (1 << (SqlParser.ST_NUMGEOMETRIES - 913)) | (1 << (SqlParser.ST_NUMINTERIORRING - 913)) | (1 << (SqlParser.ST_NUMINTERIORRINGS - 913)) | (1 << (SqlParser.ST_NUMPOINTS - 913)))) !== 0) || ((((_la - 945)) & ~0x1f) == 0 && ((1 << (_la - 945)) & ((1 << (SqlParser.ST_OVERLAPS - 945)) | (1 << (SqlParser.ST_POINTFROMTEXT - 945)) | (1 << (SqlParser.ST_POINTFROMWKB - 945)) | (1 << (SqlParser.ST_POINTN - 945)) | (1 << (SqlParser.ST_POLYFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYFROMWKB - 945)) | (1 << (SqlParser.ST_POLYGONFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYGONFROMWKB - 945)) | (1 << (SqlParser.ST_SRID - 945)) | (1 << (SqlParser.ST_STARTPOINT - 945)) | (1 << (SqlParser.ST_SYMDIFFERENCE - 945)) | (1 << (SqlParser.ST_TOUCHES - 945)) | (1 << (SqlParser.ST_UNION - 945)) | (1 << (SqlParser.ST_WITHIN - 945)) | (1 << (SqlParser.ST_X - 945)) | (1 << (SqlParser.ST_Y - 945)) | (1 << (SqlParser.SUBDATE - 945)) | (1 << (SqlParser.SUBSTRING_INDEX - 945)) | (1 << (SqlParser.SUBTIME - 945)) | (1 << (SqlParser.SYSTEM_USER - 945)) | (1 << (SqlParser.TAN - 945)) | (1 << (SqlParser.TIMEDIFF - 945)) | (1 << (SqlParser.TIMESTAMPADD - 945)) | (1 << (SqlParser.TIMESTAMPDIFF - 945)) | (1 << (SqlParser.TIME_FORMAT - 945)) | (1 << (SqlParser.TIME_TO_SEC - 945)) | (1 << (SqlParser.TOUCHES - 945)) | (1 << (SqlParser.TO_BASE64 - 945)) | (1 << (SqlParser.TO_DAYS - 945)) | (1 << (SqlParser.TO_SECONDS - 945)) | (1 << (SqlParser.UCASE - 945)) | (1 << (SqlParser.UNCOMPRESS - 945)))) !== 0) || ((((_la - 977)) & ~0x1f) == 0 && ((1 << (_la - 977)) & ((1 << (SqlParser.UNCOMPRESSED_LENGTH - 977)) | (1 << (SqlParser.UNHEX - 977)) | (1 << (SqlParser.UNIX_TIMESTAMP - 977)) | (1 << (SqlParser.UPDATEXML - 977)) | (1 << (SqlParser.UPPER - 977)) | (1 << (SqlParser.UUID - 977)) | (1 << (SqlParser.UUID_SHORT - 977)) | (1 << (SqlParser.VALIDATE_PASSWORD_STRENGTH - 977)) | (1 << (SqlParser.VERSION - 977)) | (1 << (SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS - 977)) | (1 << (SqlParser.WEEKDAY - 977)) | (1 << (SqlParser.WEEKOFYEAR - 977)) | (1 << (SqlParser.WEIGHT_STRING - 977)) | (1 << (SqlParser.WITHIN - 977)) | (1 << (SqlParser.YEARWEEK - 977)) | (1 << (SqlParser.Y_FUNCTION - 977)) | (1 << (SqlParser.X_FUNCTION - 977)))) !== 0) || ((((_la - 1032)) & ~0x1f) == 0 && ((1 << (_la - 1032)) & ((1 << (SqlParser.CHARSET_REVERSE_QOUTE_STRING - 1032)) | (1 << (SqlParser.STRING_LITERAL - 1032)) | (1 << (SqlParser.ID - 1032)) | (1 << (SqlParser.REVERSE_QUOTE_ID - 1032)))) !== 0)) {
+ this.state = 4230;
+ this.uid();
+ this.state = 4231;
+ this.match(SqlParser.COLON_SYMB);
+ }
+
+ this.state = 4235;
+ this.match(SqlParser.REPEAT);
+ this.state = 4237;
+ this._errHandler.sync(this);
+ var _alt = 1;
+ do {
+ switch (_alt) {
+ case 1:
+ this.state = 4236;
+ this.procedureSqlStatement();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 4239;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,610, this._ctx);
+ } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
+ this.state = 4241;
+ this.match(SqlParser.UNTIL);
+ this.state = 4242;
+ this.expression(0);
+ this.state = 4243;
+ this.match(SqlParser.END);
+ this.state = 4244;
+ this.match(SqlParser.REPEAT);
+ this.state = 4246;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (SqlParser.CURRENT - 32)) | (1 << (SqlParser.DATABASE - 32)) | (1 << (SqlParser.DIAGNOSTICS - 32)))) !== 0) || _la===SqlParser.LEFT || _la===SqlParser.NUMBER || _la===SqlParser.RIGHT || _la===SqlParser.STACKED || ((((_la - 199)) & ~0x1f) == 0 && ((1 << (_la - 199)) & ((1 << (SqlParser.DATE - 199)) | (1 << (SqlParser.TIME - 199)) | (1 << (SqlParser.TIMESTAMP - 199)) | (1 << (SqlParser.DATETIME - 199)) | (1 << (SqlParser.YEAR - 199)) | (1 << (SqlParser.TEXT - 199)) | (1 << (SqlParser.ENUM - 199)) | (1 << (SqlParser.SERIAL - 199)))) !== 0) || ((((_la - 233)) & ~0x1f) == 0 && ((1 << (_la - 233)) & ((1 << (SqlParser.JSON_VALID - 233)) | (1 << (SqlParser.JSON_SCHEMA_VALID - 233)) | (1 << (SqlParser.COUNT - 233)) | (1 << (SqlParser.POSITION - 233)))) !== 0) || ((((_la - 270)) & ~0x1f) == 0 && ((1 << (_la - 270)) & ((1 << (SqlParser.ACCOUNT - 270)) | (1 << (SqlParser.ACTION - 270)) | (1 << (SqlParser.AFTER - 270)) | (1 << (SqlParser.AGGREGATE - 270)) | (1 << (SqlParser.ALGORITHM - 270)) | (1 << (SqlParser.ANY - 270)) | (1 << (SqlParser.AT - 270)) | (1 << (SqlParser.AUTHORS - 270)) | (1 << (SqlParser.AUTOCOMMIT - 270)) | (1 << (SqlParser.AUTOEXTEND_SIZE - 270)) | (1 << (SqlParser.AUTO_INCREMENT - 270)) | (1 << (SqlParser.AVG_ROW_LENGTH - 270)) | (1 << (SqlParser.BEGIN - 270)) | (1 << (SqlParser.BINLOG - 270)) | (1 << (SqlParser.BIT - 270)) | (1 << (SqlParser.BLOCK - 270)) | (1 << (SqlParser.BOOL - 270)) | (1 << (SqlParser.BOOLEAN - 270)) | (1 << (SqlParser.BTREE - 270)) | (1 << (SqlParser.CACHE - 270)) | (1 << (SqlParser.CASCADED - 270)) | (1 << (SqlParser.CHAIN - 270)) | (1 << (SqlParser.CHANGED - 270)) | (1 << (SqlParser.CHANNEL - 270)) | (1 << (SqlParser.CHECKSUM - 270)) | (1 << (SqlParser.PAGE_CHECKSUM - 270)) | (1 << (SqlParser.CIPHER - 270)) | (1 << (SqlParser.CLASS_ORIGIN - 270)) | (1 << (SqlParser.CLIENT - 270)) | (1 << (SqlParser.CLOSE - 270)) | (1 << (SqlParser.COALESCE - 270)) | (1 << (SqlParser.CODE - 270)))) !== 0) || ((((_la - 302)) & ~0x1f) == 0 && ((1 << (_la - 302)) & ((1 << (SqlParser.COLUMNS - 302)) | (1 << (SqlParser.COLUMN_FORMAT - 302)) | (1 << (SqlParser.COLUMN_NAME - 302)) | (1 << (SqlParser.COMMENT - 302)) | (1 << (SqlParser.COMMIT - 302)) | (1 << (SqlParser.COMPACT - 302)) | (1 << (SqlParser.COMPLETION - 302)) | (1 << (SqlParser.COMPRESSED - 302)) | (1 << (SqlParser.COMPRESSION - 302)) | (1 << (SqlParser.CONCURRENT - 302)) | (1 << (SqlParser.CONNECTION - 302)) | (1 << (SqlParser.CONSISTENT - 302)) | (1 << (SqlParser.CONSTRAINT_CATALOG - 302)) | (1 << (SqlParser.CONSTRAINT_SCHEMA - 302)) | (1 << (SqlParser.CONSTRAINT_NAME - 302)) | (1 << (SqlParser.CONTAINS - 302)) | (1 << (SqlParser.CONTEXT - 302)) | (1 << (SqlParser.CONTRIBUTORS - 302)) | (1 << (SqlParser.COPY - 302)) | (1 << (SqlParser.CPU - 302)) | (1 << (SqlParser.CURSOR_NAME - 302)) | (1 << (SqlParser.DATA - 302)) | (1 << (SqlParser.DATAFILE - 302)) | (1 << (SqlParser.DEALLOCATE - 302)) | (1 << (SqlParser.DEFAULT_AUTH - 302)) | (1 << (SqlParser.DEFINER - 302)) | (1 << (SqlParser.DELAY_KEY_WRITE - 302)) | (1 << (SqlParser.DES_KEY_FILE - 302)) | (1 << (SqlParser.DIRECTORY - 302)) | (1 << (SqlParser.DISABLE - 302)) | (1 << (SqlParser.DISCARD - 302)) | (1 << (SqlParser.DISK - 302)))) !== 0) || ((((_la - 334)) & ~0x1f) == 0 && ((1 << (_la - 334)) & ((1 << (SqlParser.DO - 334)) | (1 << (SqlParser.DUMPFILE - 334)) | (1 << (SqlParser.DUPLICATE - 334)) | (1 << (SqlParser.DYNAMIC - 334)) | (1 << (SqlParser.ENABLE - 334)) | (1 << (SqlParser.ENCRYPTION - 334)) | (1 << (SqlParser.END - 334)) | (1 << (SqlParser.ENDS - 334)) | (1 << (SqlParser.ENGINE - 334)) | (1 << (SqlParser.ENGINES - 334)) | (1 << (SqlParser.ERROR - 334)) | (1 << (SqlParser.ERRORS - 334)) | (1 << (SqlParser.ESCAPE - 334)) | (1 << (SqlParser.EVEN - 334)) | (1 << (SqlParser.EVENT - 334)) | (1 << (SqlParser.EVENTS - 334)) | (1 << (SqlParser.EVERY - 334)) | (1 << (SqlParser.EXCHANGE - 334)) | (1 << (SqlParser.EXCLUSIVE - 334)) | (1 << (SqlParser.EXPIRE - 334)) | (1 << (SqlParser.EXPORT - 334)) | (1 << (SqlParser.EXTENDED - 334)) | (1 << (SqlParser.EXTENT_SIZE - 334)) | (1 << (SqlParser.FAST - 334)) | (1 << (SqlParser.FAULTS - 334)) | (1 << (SqlParser.FIELDS - 334)) | (1 << (SqlParser.FILE_BLOCK_SIZE - 334)) | (1 << (SqlParser.FILTER - 334)) | (1 << (SqlParser.FIRST - 334)) | (1 << (SqlParser.FIXED - 334)) | (1 << (SqlParser.FLUSH - 334)) | (1 << (SqlParser.FOLLOWS - 334)))) !== 0) || ((((_la - 366)) & ~0x1f) == 0 && ((1 << (_la - 366)) & ((1 << (SqlParser.FOUND - 366)) | (1 << (SqlParser.FULL - 366)) | (1 << (SqlParser.FUNCTION - 366)) | (1 << (SqlParser.GENERAL - 366)) | (1 << (SqlParser.GLOBAL - 366)) | (1 << (SqlParser.GRANTS - 366)) | (1 << (SqlParser.GROUP_REPLICATION - 366)) | (1 << (SqlParser.HANDLER - 366)) | (1 << (SqlParser.HASH - 366)) | (1 << (SqlParser.HELP - 366)) | (1 << (SqlParser.HOST - 366)) | (1 << (SqlParser.HOSTS - 366)) | (1 << (SqlParser.IDENTIFIED - 366)) | (1 << (SqlParser.IGNORE_SERVER_IDS - 366)) | (1 << (SqlParser.IMPORT - 366)) | (1 << (SqlParser.INDEXES - 366)) | (1 << (SqlParser.INITIAL_SIZE - 366)) | (1 << (SqlParser.INPLACE - 366)) | (1 << (SqlParser.INSERT_METHOD - 366)) | (1 << (SqlParser.INSTALL - 366)) | (1 << (SqlParser.INSTANCE - 366)) | (1 << (SqlParser.INVISIBLE - 366)) | (1 << (SqlParser.INVOKER - 366)) | (1 << (SqlParser.IO - 366)) | (1 << (SqlParser.IO_THREAD - 366)) | (1 << (SqlParser.IPC - 366)) | (1 << (SqlParser.ISOLATION - 366)) | (1 << (SqlParser.ISSUER - 366)) | (1 << (SqlParser.JSON - 366)) | (1 << (SqlParser.KEY_BLOCK_SIZE - 366)) | (1 << (SqlParser.LANGUAGE - 366)) | (1 << (SqlParser.LAST - 366)))) !== 0) || ((((_la - 398)) & ~0x1f) == 0 && ((1 << (_la - 398)) & ((1 << (SqlParser.LEAVES - 398)) | (1 << (SqlParser.LESS - 398)) | (1 << (SqlParser.LEVEL - 398)) | (1 << (SqlParser.LIST - 398)) | (1 << (SqlParser.LOCAL - 398)) | (1 << (SqlParser.LOGFILE - 398)) | (1 << (SqlParser.LOGS - 398)) | (1 << (SqlParser.MASTER - 398)) | (1 << (SqlParser.MASTER_AUTO_POSITION - 398)) | (1 << (SqlParser.MASTER_CONNECT_RETRY - 398)) | (1 << (SqlParser.MASTER_DELAY - 398)) | (1 << (SqlParser.MASTER_HEARTBEAT_PERIOD - 398)) | (1 << (SqlParser.MASTER_HOST - 398)) | (1 << (SqlParser.MASTER_LOG_FILE - 398)) | (1 << (SqlParser.MASTER_LOG_POS - 398)) | (1 << (SqlParser.MASTER_PASSWORD - 398)) | (1 << (SqlParser.MASTER_PORT - 398)) | (1 << (SqlParser.MASTER_RETRY_COUNT - 398)) | (1 << (SqlParser.MASTER_SSL - 398)) | (1 << (SqlParser.MASTER_SSL_CA - 398)) | (1 << (SqlParser.MASTER_SSL_CAPATH - 398)) | (1 << (SqlParser.MASTER_SSL_CERT - 398)) | (1 << (SqlParser.MASTER_SSL_CIPHER - 398)) | (1 << (SqlParser.MASTER_SSL_CRL - 398)) | (1 << (SqlParser.MASTER_SSL_CRLPATH - 398)) | (1 << (SqlParser.MASTER_SSL_KEY - 398)) | (1 << (SqlParser.MASTER_TLS_VERSION - 398)) | (1 << (SqlParser.MASTER_USER - 398)) | (1 << (SqlParser.MAX_CONNECTIONS_PER_HOUR - 398)) | (1 << (SqlParser.MAX_QUERIES_PER_HOUR - 398)) | (1 << (SqlParser.MAX_ROWS - 398)) | (1 << (SqlParser.MAX_SIZE - 398)))) !== 0) || ((((_la - 430)) & ~0x1f) == 0 && ((1 << (_la - 430)) & ((1 << (SqlParser.MAX_UPDATES_PER_HOUR - 430)) | (1 << (SqlParser.MAX_USER_CONNECTIONS - 430)) | (1 << (SqlParser.MEDIUM - 430)) | (1 << (SqlParser.MERGE - 430)) | (1 << (SqlParser.MESSAGE_TEXT - 430)) | (1 << (SqlParser.MID - 430)) | (1 << (SqlParser.MIGRATE - 430)) | (1 << (SqlParser.MIN_ROWS - 430)) | (1 << (SqlParser.MODE - 430)) | (1 << (SqlParser.MODIFY - 430)) | (1 << (SqlParser.MUTEX - 430)) | (1 << (SqlParser.MYSQL - 430)) | (1 << (SqlParser.MYSQL_ERRNO - 430)) | (1 << (SqlParser.NAME - 430)) | (1 << (SqlParser.NAMES - 430)) | (1 << (SqlParser.NCHAR - 430)) | (1 << (SqlParser.NEVER - 430)) | (1 << (SqlParser.NEXT - 430)) | (1 << (SqlParser.NO - 430)) | (1 << (SqlParser.NODEGROUP - 430)) | (1 << (SqlParser.NONE - 430)) | (1 << (SqlParser.OFFLINE - 430)) | (1 << (SqlParser.OFFSET - 430)) | (1 << (SqlParser.OJ - 430)) | (1 << (SqlParser.OLD_PASSWORD - 430)) | (1 << (SqlParser.ONE - 430)) | (1 << (SqlParser.ONLINE - 430)) | (1 << (SqlParser.ONLY - 430)) | (1 << (SqlParser.OPEN - 430)) | (1 << (SqlParser.OPTIMIZER_COSTS - 430)) | (1 << (SqlParser.OPTIONS - 430)) | (1 << (SqlParser.OWNER - 430)))) !== 0) || ((((_la - 462)) & ~0x1f) == 0 && ((1 << (_la - 462)) & ((1 << (SqlParser.PACK_KEYS - 462)) | (1 << (SqlParser.PAGE - 462)) | (1 << (SqlParser.PARSER - 462)) | (1 << (SqlParser.PARTIAL - 462)) | (1 << (SqlParser.PARTITIONING - 462)) | (1 << (SqlParser.PARTITIONS - 462)) | (1 << (SqlParser.PASSWORD - 462)) | (1 << (SqlParser.PHASE - 462)) | (1 << (SqlParser.PLUGIN - 462)) | (1 << (SqlParser.PLUGIN_DIR - 462)) | (1 << (SqlParser.PLUGINS - 462)) | (1 << (SqlParser.PORT - 462)) | (1 << (SqlParser.PRECEDES - 462)) | (1 << (SqlParser.PREPARE - 462)) | (1 << (SqlParser.PRESERVE - 462)) | (1 << (SqlParser.PREV - 462)) | (1 << (SqlParser.PROCESSLIST - 462)) | (1 << (SqlParser.PROFILE - 462)) | (1 << (SqlParser.PROFILES - 462)) | (1 << (SqlParser.PROXY - 462)) | (1 << (SqlParser.QUERY - 462)) | (1 << (SqlParser.QUICK - 462)) | (1 << (SqlParser.REBUILD - 462)) | (1 << (SqlParser.RECOVER - 462)) | (1 << (SqlParser.REDO_BUFFER_SIZE - 462)) | (1 << (SqlParser.REDUNDANT - 462)) | (1 << (SqlParser.RELAY - 462)) | (1 << (SqlParser.RELAY_LOG_FILE - 462)) | (1 << (SqlParser.RELAY_LOG_POS - 462)) | (1 << (SqlParser.RELAYLOG - 462)) | (1 << (SqlParser.REMOVE - 462)) | (1 << (SqlParser.REORGANIZE - 462)))) !== 0) || ((((_la - 494)) & ~0x1f) == 0 && ((1 << (_la - 494)) & ((1 << (SqlParser.REPAIR - 494)) | (1 << (SqlParser.REPLICATE_DO_DB - 494)) | (1 << (SqlParser.REPLICATE_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_DB - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATE_REWRITE_DB - 494)) | (1 << (SqlParser.REPLICATE_WILD_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_WILD_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATION - 494)) | (1 << (SqlParser.RESET - 494)) | (1 << (SqlParser.RESUME - 494)) | (1 << (SqlParser.RETURNED_SQLSTATE - 494)) | (1 << (SqlParser.RETURNS - 494)) | (1 << (SqlParser.ROLE - 494)) | (1 << (SqlParser.ROLLBACK - 494)) | (1 << (SqlParser.ROLLUP - 494)) | (1 << (SqlParser.ROTATE - 494)) | (1 << (SqlParser.ROW - 494)) | (1 << (SqlParser.ROWS - 494)) | (1 << (SqlParser.ROW_FORMAT - 494)) | (1 << (SqlParser.SAVEPOINT - 494)) | (1 << (SqlParser.SCHEDULE - 494)) | (1 << (SqlParser.SECURITY - 494)) | (1 << (SqlParser.SERVER - 494)) | (1 << (SqlParser.SESSION - 494)) | (1 << (SqlParser.SHARE - 494)) | (1 << (SqlParser.SHARED - 494)) | (1 << (SqlParser.SIGNED - 494)) | (1 << (SqlParser.SIMPLE - 494)) | (1 << (SqlParser.SLAVE - 494)) | (1 << (SqlParser.SLOW - 494)) | (1 << (SqlParser.SNAPSHOT - 494)))) !== 0) || ((((_la - 526)) & ~0x1f) == 0 && ((1 << (_la - 526)) & ((1 << (SqlParser.SOCKET - 526)) | (1 << (SqlParser.SOME - 526)) | (1 << (SqlParser.SONAME - 526)) | (1 << (SqlParser.SOUNDS - 526)) | (1 << (SqlParser.SOURCE - 526)) | (1 << (SqlParser.SQL_AFTER_GTIDS - 526)) | (1 << (SqlParser.SQL_AFTER_MTS_GAPS - 526)) | (1 << (SqlParser.SQL_BEFORE_GTIDS - 526)) | (1 << (SqlParser.SQL_BUFFER_RESULT - 526)) | (1 << (SqlParser.SQL_CACHE - 526)) | (1 << (SqlParser.SQL_NO_CACHE - 526)) | (1 << (SqlParser.SQL_THREAD - 526)) | (1 << (SqlParser.START - 526)) | (1 << (SqlParser.STARTS - 526)) | (1 << (SqlParser.STATS_AUTO_RECALC - 526)) | (1 << (SqlParser.STATS_PERSISTENT - 526)) | (1 << (SqlParser.STATS_SAMPLE_PAGES - 526)) | (1 << (SqlParser.STATUS - 526)) | (1 << (SqlParser.STOP - 526)) | (1 << (SqlParser.STORAGE - 526)) | (1 << (SqlParser.STRING - 526)) | (1 << (SqlParser.SUBCLASS_ORIGIN - 526)) | (1 << (SqlParser.SUBJECT - 526)) | (1 << (SqlParser.SUBPARTITION - 526)) | (1 << (SqlParser.SUBPARTITIONS - 526)) | (1 << (SqlParser.SUSPEND - 526)) | (1 << (SqlParser.SWAPS - 526)) | (1 << (SqlParser.SWITCHES - 526)) | (1 << (SqlParser.TABLE_NAME - 526)) | (1 << (SqlParser.TABLESPACE - 526)) | (1 << (SqlParser.TEMPORARY - 526)))) !== 0) || ((((_la - 558)) & ~0x1f) == 0 && ((1 << (_la - 558)) & ((1 << (SqlParser.TEMPTABLE - 558)) | (1 << (SqlParser.THAN - 558)) | (1 << (SqlParser.TRADITIONAL - 558)) | (1 << (SqlParser.TRANSACTION - 558)) | (1 << (SqlParser.TRANSACTIONAL - 558)) | (1 << (SqlParser.TRIGGERS - 558)) | (1 << (SqlParser.TRUNCATE - 558)) | (1 << (SqlParser.UNDEFINED - 558)) | (1 << (SqlParser.UNDOFILE - 558)) | (1 << (SqlParser.UNDO_BUFFER_SIZE - 558)) | (1 << (SqlParser.UNINSTALL - 558)) | (1 << (SqlParser.UNKNOWN - 558)) | (1 << (SqlParser.UNTIL - 558)) | (1 << (SqlParser.UPGRADE - 558)) | (1 << (SqlParser.USER - 558)) | (1 << (SqlParser.USE_FRM - 558)) | (1 << (SqlParser.USER_RESOURCES - 558)) | (1 << (SqlParser.VALIDATION - 558)) | (1 << (SqlParser.VALUE - 558)) | (1 << (SqlParser.VARIABLES - 558)) | (1 << (SqlParser.VIEW - 558)) | (1 << (SqlParser.VISIBLE - 558)) | (1 << (SqlParser.WAIT - 558)) | (1 << (SqlParser.WARNINGS - 558)) | (1 << (SqlParser.WITHOUT - 558)) | (1 << (SqlParser.WORK - 558)) | (1 << (SqlParser.WRAPPER - 558)) | (1 << (SqlParser.X509 - 558)) | (1 << (SqlParser.XA - 558)) | (1 << (SqlParser.XML - 558)))) !== 0) || ((((_la - 593)) & ~0x1f) == 0 && ((1 << (_la - 593)) & ((1 << (SqlParser.INTERNAL - 593)) | (1 << (SqlParser.QUARTER - 593)) | (1 << (SqlParser.MONTH - 593)) | (1 << (SqlParser.DAY - 593)) | (1 << (SqlParser.HOUR - 593)) | (1 << (SqlParser.MINUTE - 593)) | (1 << (SqlParser.WEEK - 593)) | (1 << (SqlParser.SECOND - 593)) | (1 << (SqlParser.MICROSECOND - 593)) | (1 << (SqlParser.TABLES - 593)) | (1 << (SqlParser.ROUTINE - 593)) | (1 << (SqlParser.EXECUTE - 593)) | (1 << (SqlParser.FILE - 593)) | (1 << (SqlParser.PROCESS - 593)) | (1 << (SqlParser.RELOAD - 593)) | (1 << (SqlParser.SHUTDOWN - 593)) | (1 << (SqlParser.SUPER - 593)) | (1 << (SqlParser.PRIVILEGES - 593)) | (1 << (SqlParser.AUDIT_ADMIN - 593)) | (1 << (SqlParser.BACKUP_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ENCRYPTION_ADMIN - 593)) | (1 << (SqlParser.CLONE_ADMIN - 593)) | (1 << (SqlParser.CONNECTION_ADMIN - 593)) | (1 << (SqlParser.ENCRYPTION_KEY_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_USER - 593)) | (1 << (SqlParser.GROUP_REPLICATION_ADMIN - 593)) | (1 << (SqlParser.INNODB_REDO_LOG_ARCHIVE - 593)) | (1 << (SqlParser.NDB_STORED_USER - 593)) | (1 << (SqlParser.PERSIST_RO_VARIABLES_ADMIN - 593)))) !== 0) || ((((_la - 625)) & ~0x1f) == 0 && ((1 << (_la - 625)) & ((1 << (SqlParser.REPLICATION_APPLIER - 625)) | (1 << (SqlParser.REPLICATION_SLAVE_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_USER - 625)) | (1 << (SqlParser.ROLE_ADMIN - 625)) | (1 << (SqlParser.SESSION_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.SET_USER_ID - 625)) | (1 << (SqlParser.SHOW_ROUTINE - 625)) | (1 << (SqlParser.SYSTEM_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.TABLE_ENCRYPTION_ADMIN - 625)) | (1 << (SqlParser.VERSION_TOKEN_ADMIN - 625)) | (1 << (SqlParser.XA_RECOVER_ADMIN - 625)) | (1 << (SqlParser.ARMSCII8 - 625)) | (1 << (SqlParser.ASCII - 625)) | (1 << (SqlParser.BIG5 - 625)) | (1 << (SqlParser.CP1250 - 625)) | (1 << (SqlParser.CP1251 - 625)) | (1 << (SqlParser.CP1256 - 625)) | (1 << (SqlParser.CP1257 - 625)) | (1 << (SqlParser.CP850 - 625)) | (1 << (SqlParser.CP852 - 625)) | (1 << (SqlParser.CP866 - 625)) | (1 << (SqlParser.CP932 - 625)) | (1 << (SqlParser.DEC8 - 625)) | (1 << (SqlParser.EUCJPMS - 625)) | (1 << (SqlParser.EUCKR - 625)) | (1 << (SqlParser.GB2312 - 625)) | (1 << (SqlParser.GBK - 625)) | (1 << (SqlParser.GEOSTD8 - 625)) | (1 << (SqlParser.GREEK - 625)) | (1 << (SqlParser.HEBREW - 625)) | (1 << (SqlParser.HP8 - 625)))) !== 0) || ((((_la - 657)) & ~0x1f) == 0 && ((1 << (_la - 657)) & ((1 << (SqlParser.KEYBCS2 - 657)) | (1 << (SqlParser.KOI8R - 657)) | (1 << (SqlParser.KOI8U - 657)) | (1 << (SqlParser.LATIN1 - 657)) | (1 << (SqlParser.LATIN2 - 657)) | (1 << (SqlParser.LATIN5 - 657)) | (1 << (SqlParser.LATIN7 - 657)) | (1 << (SqlParser.MACCE - 657)) | (1 << (SqlParser.MACROMAN - 657)) | (1 << (SqlParser.SJIS - 657)) | (1 << (SqlParser.SWE7 - 657)) | (1 << (SqlParser.TIS620 - 657)) | (1 << (SqlParser.UCS2 - 657)) | (1 << (SqlParser.UJIS - 657)) | (1 << (SqlParser.UTF16 - 657)) | (1 << (SqlParser.UTF16LE - 657)) | (1 << (SqlParser.UTF32 - 657)) | (1 << (SqlParser.UTF8 - 657)) | (1 << (SqlParser.UTF8MB3 - 657)) | (1 << (SqlParser.UTF8MB4 - 657)) | (1 << (SqlParser.ARCHIVE - 657)) | (1 << (SqlParser.BLACKHOLE - 657)) | (1 << (SqlParser.CSV - 657)) | (1 << (SqlParser.FEDERATED - 657)) | (1 << (SqlParser.INNODB - 657)) | (1 << (SqlParser.MEMORY - 657)) | (1 << (SqlParser.MRG_MYISAM - 657)) | (1 << (SqlParser.MYISAM - 657)) | (1 << (SqlParser.NDB - 657)) | (1 << (SqlParser.NDBCLUSTER - 657)) | (1 << (SqlParser.PERFORMANCE_SCHEMA - 657)) | (1 << (SqlParser.TOKUDB - 657)))) !== 0) || ((((_la - 689)) & ~0x1f) == 0 && ((1 << (_la - 689)) & ((1 << (SqlParser.REPEATABLE - 689)) | (1 << (SqlParser.COMMITTED - 689)) | (1 << (SqlParser.UNCOMMITTED - 689)) | (1 << (SqlParser.SERIALIZABLE - 689)) | (1 << (SqlParser.GEOMETRYCOLLECTION - 689)) | (1 << (SqlParser.LINESTRING - 689)) | (1 << (SqlParser.MULTILINESTRING - 689)) | (1 << (SqlParser.MULTIPOINT - 689)) | (1 << (SqlParser.MULTIPOLYGON - 689)) | (1 << (SqlParser.POINT - 689)) | (1 << (SqlParser.POLYGON - 689)) | (1 << (SqlParser.ABS - 689)) | (1 << (SqlParser.ACOS - 689)) | (1 << (SqlParser.ADDDATE - 689)) | (1 << (SqlParser.ADDTIME - 689)) | (1 << (SqlParser.AES_DECRYPT - 689)) | (1 << (SqlParser.AES_ENCRYPT - 689)) | (1 << (SqlParser.AREA - 689)) | (1 << (SqlParser.ASBINARY - 689)) | (1 << (SqlParser.ASIN - 689)) | (1 << (SqlParser.ASTEXT - 689)) | (1 << (SqlParser.ASWKB - 689)) | (1 << (SqlParser.ASWKT - 689)) | (1 << (SqlParser.ASYMMETRIC_DECRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_DERIVE - 689)) | (1 << (SqlParser.ASYMMETRIC_ENCRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_SIGN - 689)) | (1 << (SqlParser.ASYMMETRIC_VERIFY - 689)) | (1 << (SqlParser.ATAN - 689)) | (1 << (SqlParser.ATAN2 - 689)))) !== 0) || ((((_la - 721)) & ~0x1f) == 0 && ((1 << (_la - 721)) & ((1 << (SqlParser.BENCHMARK - 721)) | (1 << (SqlParser.BIN - 721)) | (1 << (SqlParser.BIT_COUNT - 721)) | (1 << (SqlParser.BIT_LENGTH - 721)) | (1 << (SqlParser.BUFFER - 721)) | (1 << (SqlParser.CATALOG_NAME - 721)) | (1 << (SqlParser.CEIL - 721)) | (1 << (SqlParser.CEILING - 721)) | (1 << (SqlParser.CENTROID - 721)) | (1 << (SqlParser.CHARACTER_LENGTH - 721)) | (1 << (SqlParser.CHARSET - 721)) | (1 << (SqlParser.CHAR_LENGTH - 721)) | (1 << (SqlParser.COERCIBILITY - 721)) | (1 << (SqlParser.COLLATION - 721)) | (1 << (SqlParser.COMPRESS - 721)) | (1 << (SqlParser.CONCAT - 721)) | (1 << (SqlParser.CONCAT_WS - 721)) | (1 << (SqlParser.CONNECTION_ID - 721)) | (1 << (SqlParser.CONV - 721)) | (1 << (SqlParser.CONVERT_TZ - 721)) | (1 << (SqlParser.COS - 721)) | (1 << (SqlParser.COT - 721)) | (1 << (SqlParser.CRC32 - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PRIV_KEY - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PUB_KEY - 721)) | (1 << (SqlParser.CREATE_DH_PARAMETERS - 721)) | (1 << (SqlParser.CREATE_DIGEST - 721)) | (1 << (SqlParser.CROSSES - 721)) | (1 << (SqlParser.DATEDIFF - 721)) | (1 << (SqlParser.DATE_FORMAT - 721)) | (1 << (SqlParser.DAYNAME - 721)) | (1 << (SqlParser.DAYOFMONTH - 721)))) !== 0) || ((((_la - 753)) & ~0x1f) == 0 && ((1 << (_la - 753)) & ((1 << (SqlParser.DAYOFWEEK - 753)) | (1 << (SqlParser.DAYOFYEAR - 753)) | (1 << (SqlParser.DECODE - 753)) | (1 << (SqlParser.DEGREES - 753)) | (1 << (SqlParser.DES_DECRYPT - 753)) | (1 << (SqlParser.DES_ENCRYPT - 753)) | (1 << (SqlParser.DIMENSION - 753)) | (1 << (SqlParser.DISJOINT - 753)) | (1 << (SqlParser.ELT - 753)) | (1 << (SqlParser.ENCODE - 753)) | (1 << (SqlParser.ENCRYPT - 753)) | (1 << (SqlParser.ENDPOINT - 753)) | (1 << (SqlParser.ENVELOPE - 753)) | (1 << (SqlParser.EQUALS - 753)) | (1 << (SqlParser.EXP - 753)) | (1 << (SqlParser.EXPORT_SET - 753)) | (1 << (SqlParser.EXTERIORRING - 753)) | (1 << (SqlParser.EXTRACTVALUE - 753)) | (1 << (SqlParser.FIELD - 753)) | (1 << (SqlParser.FIND_IN_SET - 753)) | (1 << (SqlParser.FLOOR - 753)) | (1 << (SqlParser.FORMAT - 753)) | (1 << (SqlParser.FOUND_ROWS - 753)) | (1 << (SqlParser.FROM_BASE64 - 753)) | (1 << (SqlParser.FROM_DAYS - 753)) | (1 << (SqlParser.FROM_UNIXTIME - 753)) | (1 << (SqlParser.GEOMCOLLFROMTEXT - 753)) | (1 << (SqlParser.GEOMCOLLFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYFROMWKB - 753)))) !== 0) || ((((_la - 785)) & ~0x1f) == 0 && ((1 << (_la - 785)) & ((1 << (SqlParser.GEOMETRYN - 785)) | (1 << (SqlParser.GEOMETRYTYPE - 785)) | (1 << (SqlParser.GEOMFROMTEXT - 785)) | (1 << (SqlParser.GEOMFROMWKB - 785)) | (1 << (SqlParser.GET_FORMAT - 785)) | (1 << (SqlParser.GET_LOCK - 785)) | (1 << (SqlParser.GLENGTH - 785)) | (1 << (SqlParser.GREATEST - 785)) | (1 << (SqlParser.GTID_SUBSET - 785)) | (1 << (SqlParser.GTID_SUBTRACT - 785)) | (1 << (SqlParser.HEX - 785)) | (1 << (SqlParser.IFNULL - 785)) | (1 << (SqlParser.INET6_ATON - 785)) | (1 << (SqlParser.INET6_NTOA - 785)) | (1 << (SqlParser.INET_ATON - 785)) | (1 << (SqlParser.INET_NTOA - 785)) | (1 << (SqlParser.INSTR - 785)) | (1 << (SqlParser.INTERIORRINGN - 785)) | (1 << (SqlParser.INTERSECTS - 785)) | (1 << (SqlParser.ISCLOSED - 785)) | (1 << (SqlParser.ISEMPTY - 785)) | (1 << (SqlParser.ISNULL - 785)) | (1 << (SqlParser.ISSIMPLE - 785)) | (1 << (SqlParser.IS_FREE_LOCK - 785)) | (1 << (SqlParser.IS_IPV4 - 785)) | (1 << (SqlParser.IS_IPV4_COMPAT - 785)) | (1 << (SqlParser.IS_IPV4_MAPPED - 785)) | (1 << (SqlParser.IS_IPV6 - 785)) | (1 << (SqlParser.IS_USED_LOCK - 785)) | (1 << (SqlParser.LAST_INSERT_ID - 785)) | (1 << (SqlParser.LCASE - 785)) | (1 << (SqlParser.LEAST - 785)))) !== 0) || ((((_la - 817)) & ~0x1f) == 0 && ((1 << (_la - 817)) & ((1 << (SqlParser.LENGTH - 817)) | (1 << (SqlParser.LINEFROMTEXT - 817)) | (1 << (SqlParser.LINEFROMWKB - 817)) | (1 << (SqlParser.LINESTRINGFROMTEXT - 817)) | (1 << (SqlParser.LINESTRINGFROMWKB - 817)) | (1 << (SqlParser.LN - 817)) | (1 << (SqlParser.LOAD_FILE - 817)) | (1 << (SqlParser.LOCATE - 817)) | (1 << (SqlParser.LOG - 817)) | (1 << (SqlParser.LOG10 - 817)) | (1 << (SqlParser.LOG2 - 817)) | (1 << (SqlParser.LOWER - 817)) | (1 << (SqlParser.LPAD - 817)) | (1 << (SqlParser.LTRIM - 817)) | (1 << (SqlParser.MAKEDATE - 817)) | (1 << (SqlParser.MAKETIME - 817)) | (1 << (SqlParser.MAKE_SET - 817)) | (1 << (SqlParser.MASTER_POS_WAIT - 817)) | (1 << (SqlParser.MBRCONTAINS - 817)) | (1 << (SqlParser.MBRDISJOINT - 817)) | (1 << (SqlParser.MBREQUAL - 817)) | (1 << (SqlParser.MBRINTERSECTS - 817)) | (1 << (SqlParser.MBROVERLAPS - 817)) | (1 << (SqlParser.MBRTOUCHES - 817)) | (1 << (SqlParser.MBRWITHIN - 817)) | (1 << (SqlParser.MD5 - 817)) | (1 << (SqlParser.MLINEFROMTEXT - 817)) | (1 << (SqlParser.MLINEFROMWKB - 817)) | (1 << (SqlParser.MONTHNAME - 817)) | (1 << (SqlParser.MPOINTFROMTEXT - 817)) | (1 << (SqlParser.MPOINTFROMWKB - 817)) | (1 << (SqlParser.MPOLYFROMTEXT - 817)))) !== 0) || ((((_la - 849)) & ~0x1f) == 0 && ((1 << (_la - 849)) & ((1 << (SqlParser.MPOLYFROMWKB - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMTEXT - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMWKB - 849)) | (1 << (SqlParser.MULTIPOINTFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOINTFROMWKB - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMWKB - 849)) | (1 << (SqlParser.NAME_CONST - 849)) | (1 << (SqlParser.NULLIF - 849)) | (1 << (SqlParser.NUMGEOMETRIES - 849)) | (1 << (SqlParser.NUMINTERIORRINGS - 849)) | (1 << (SqlParser.NUMPOINTS - 849)) | (1 << (SqlParser.OCT - 849)) | (1 << (SqlParser.OCTET_LENGTH - 849)) | (1 << (SqlParser.ORD - 849)) | (1 << (SqlParser.OVERLAPS - 849)) | (1 << (SqlParser.PERIOD_ADD - 849)) | (1 << (SqlParser.PERIOD_DIFF - 849)) | (1 << (SqlParser.PI - 849)) | (1 << (SqlParser.POINTFROMTEXT - 849)) | (1 << (SqlParser.POINTFROMWKB - 849)) | (1 << (SqlParser.POINTN - 849)) | (1 << (SqlParser.POLYFROMTEXT - 849)) | (1 << (SqlParser.POLYFROMWKB - 849)) | (1 << (SqlParser.POLYGONFROMTEXT - 849)) | (1 << (SqlParser.POLYGONFROMWKB - 849)) | (1 << (SqlParser.POW - 849)) | (1 << (SqlParser.POWER - 849)) | (1 << (SqlParser.QUOTE - 849)) | (1 << (SqlParser.RADIANS - 849)) | (1 << (SqlParser.RAND - 849)) | (1 << (SqlParser.RANDOM_BYTES - 849)))) !== 0) || ((((_la - 881)) & ~0x1f) == 0 && ((1 << (_la - 881)) & ((1 << (SqlParser.RELEASE_LOCK - 881)) | (1 << (SqlParser.REVERSE - 881)) | (1 << (SqlParser.ROUND - 881)) | (1 << (SqlParser.ROW_COUNT - 881)) | (1 << (SqlParser.RPAD - 881)) | (1 << (SqlParser.RTRIM - 881)) | (1 << (SqlParser.SEC_TO_TIME - 881)) | (1 << (SqlParser.SESSION_USER - 881)) | (1 << (SqlParser.SHA - 881)) | (1 << (SqlParser.SHA1 - 881)) | (1 << (SqlParser.SHA2 - 881)) | (1 << (SqlParser.SCHEMA_NAME - 881)) | (1 << (SqlParser.SIGN - 881)) | (1 << (SqlParser.SIN - 881)) | (1 << (SqlParser.SLEEP - 881)) | (1 << (SqlParser.SOUNDEX - 881)) | (1 << (SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS - 881)) | (1 << (SqlParser.SQRT - 881)) | (1 << (SqlParser.SRID - 881)) | (1 << (SqlParser.STARTPOINT - 881)) | (1 << (SqlParser.STRCMP - 881)) | (1 << (SqlParser.STR_TO_DATE - 881)) | (1 << (SqlParser.ST_AREA - 881)) | (1 << (SqlParser.ST_ASBINARY - 881)) | (1 << (SqlParser.ST_ASTEXT - 881)) | (1 << (SqlParser.ST_ASWKB - 881)) | (1 << (SqlParser.ST_ASWKT - 881)) | (1 << (SqlParser.ST_BUFFER - 881)) | (1 << (SqlParser.ST_CENTROID - 881)) | (1 << (SqlParser.ST_CONTAINS - 881)) | (1 << (SqlParser.ST_CROSSES - 881)) | (1 << (SqlParser.ST_DIFFERENCE - 881)))) !== 0) || ((((_la - 913)) & ~0x1f) == 0 && ((1 << (_la - 913)) & ((1 << (SqlParser.ST_DIMENSION - 913)) | (1 << (SqlParser.ST_DISJOINT - 913)) | (1 << (SqlParser.ST_DISTANCE - 913)) | (1 << (SqlParser.ST_ENDPOINT - 913)) | (1 << (SqlParser.ST_ENVELOPE - 913)) | (1 << (SqlParser.ST_EQUALS - 913)) | (1 << (SqlParser.ST_EXTERIORRING - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYN - 913)) | (1 << (SqlParser.ST_GEOMETRYTYPE - 913)) | (1 << (SqlParser.ST_GEOMFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMFROMWKB - 913)) | (1 << (SqlParser.ST_INTERIORRINGN - 913)) | (1 << (SqlParser.ST_INTERSECTION - 913)) | (1 << (SqlParser.ST_INTERSECTS - 913)) | (1 << (SqlParser.ST_ISCLOSED - 913)) | (1 << (SqlParser.ST_ISEMPTY - 913)) | (1 << (SqlParser.ST_ISSIMPLE - 913)) | (1 << (SqlParser.ST_LINEFROMTEXT - 913)) | (1 << (SqlParser.ST_LINEFROMWKB - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMTEXT - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMWKB - 913)) | (1 << (SqlParser.ST_NUMGEOMETRIES - 913)) | (1 << (SqlParser.ST_NUMINTERIORRING - 913)) | (1 << (SqlParser.ST_NUMINTERIORRINGS - 913)) | (1 << (SqlParser.ST_NUMPOINTS - 913)))) !== 0) || ((((_la - 945)) & ~0x1f) == 0 && ((1 << (_la - 945)) & ((1 << (SqlParser.ST_OVERLAPS - 945)) | (1 << (SqlParser.ST_POINTFROMTEXT - 945)) | (1 << (SqlParser.ST_POINTFROMWKB - 945)) | (1 << (SqlParser.ST_POINTN - 945)) | (1 << (SqlParser.ST_POLYFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYFROMWKB - 945)) | (1 << (SqlParser.ST_POLYGONFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYGONFROMWKB - 945)) | (1 << (SqlParser.ST_SRID - 945)) | (1 << (SqlParser.ST_STARTPOINT - 945)) | (1 << (SqlParser.ST_SYMDIFFERENCE - 945)) | (1 << (SqlParser.ST_TOUCHES - 945)) | (1 << (SqlParser.ST_UNION - 945)) | (1 << (SqlParser.ST_WITHIN - 945)) | (1 << (SqlParser.ST_X - 945)) | (1 << (SqlParser.ST_Y - 945)) | (1 << (SqlParser.SUBDATE - 945)) | (1 << (SqlParser.SUBSTRING_INDEX - 945)) | (1 << (SqlParser.SUBTIME - 945)) | (1 << (SqlParser.SYSTEM_USER - 945)) | (1 << (SqlParser.TAN - 945)) | (1 << (SqlParser.TIMEDIFF - 945)) | (1 << (SqlParser.TIMESTAMPADD - 945)) | (1 << (SqlParser.TIMESTAMPDIFF - 945)) | (1 << (SqlParser.TIME_FORMAT - 945)) | (1 << (SqlParser.TIME_TO_SEC - 945)) | (1 << (SqlParser.TOUCHES - 945)) | (1 << (SqlParser.TO_BASE64 - 945)) | (1 << (SqlParser.TO_DAYS - 945)) | (1 << (SqlParser.TO_SECONDS - 945)) | (1 << (SqlParser.UCASE - 945)) | (1 << (SqlParser.UNCOMPRESS - 945)))) !== 0) || ((((_la - 977)) & ~0x1f) == 0 && ((1 << (_la - 977)) & ((1 << (SqlParser.UNCOMPRESSED_LENGTH - 977)) | (1 << (SqlParser.UNHEX - 977)) | (1 << (SqlParser.UNIX_TIMESTAMP - 977)) | (1 << (SqlParser.UPDATEXML - 977)) | (1 << (SqlParser.UPPER - 977)) | (1 << (SqlParser.UUID - 977)) | (1 << (SqlParser.UUID_SHORT - 977)) | (1 << (SqlParser.VALIDATE_PASSWORD_STRENGTH - 977)) | (1 << (SqlParser.VERSION - 977)) | (1 << (SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS - 977)) | (1 << (SqlParser.WEEKDAY - 977)) | (1 << (SqlParser.WEEKOFYEAR - 977)) | (1 << (SqlParser.WEIGHT_STRING - 977)) | (1 << (SqlParser.WITHIN - 977)) | (1 << (SqlParser.YEARWEEK - 977)) | (1 << (SqlParser.Y_FUNCTION - 977)) | (1 << (SqlParser.X_FUNCTION - 977)))) !== 0) || ((((_la - 1032)) & ~0x1f) == 0 && ((1 << (_la - 1032)) & ((1 << (SqlParser.CHARSET_REVERSE_QOUTE_STRING - 1032)) | (1 << (SqlParser.STRING_LITERAL - 1032)) | (1 << (SqlParser.ID - 1032)) | (1 << (SqlParser.REVERSE_QUOTE_ID - 1032)))) !== 0)) {
+ this.state = 4245;
+ this.uid();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function ReturnStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_returnStatement;
+ return this;
+}
+
+ReturnStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+ReturnStatementContext.prototype.constructor = ReturnStatementContext;
+
+ReturnStatementContext.prototype.RETURN = function() {
+ return this.getToken(SqlParser.RETURN, 0);
+};
+
+ReturnStatementContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+ReturnStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterReturnStatement(this);
+ }
+};
+
+ReturnStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitReturnStatement(this);
+ }
+};
+
+ReturnStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitReturnStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.ReturnStatementContext = ReturnStatementContext;
+
+SqlParser.prototype.returnStatement = function() {
+
+ var localctx = new ReturnStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 362, SqlParser.RULE_returnStatement);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4248;
+ this.match(SqlParser.RETURN);
+ this.state = 4249;
+ this.expression(0);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function WhileStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_whileStatement;
+ return this;
+}
+
+WhileStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+WhileStatementContext.prototype.constructor = WhileStatementContext;
+
+WhileStatementContext.prototype.WHILE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.WHILE);
+ } else {
+ return this.getToken(SqlParser.WHILE, i);
+ }
+};
+
+
+WhileStatementContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+WhileStatementContext.prototype.DO = function() {
+ return this.getToken(SqlParser.DO, 0);
+};
+
+WhileStatementContext.prototype.END = function() {
+ return this.getToken(SqlParser.END, 0);
+};
+
+WhileStatementContext.prototype.uid = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UidContext);
+ } else {
+ return this.getTypedRuleContext(UidContext,i);
+ }
+};
+
+WhileStatementContext.prototype.COLON_SYMB = function() {
+ return this.getToken(SqlParser.COLON_SYMB, 0);
+};
+
+WhileStatementContext.prototype.procedureSqlStatement = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ProcedureSqlStatementContext);
+ } else {
+ return this.getTypedRuleContext(ProcedureSqlStatementContext,i);
+ }
+};
+
+WhileStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterWhileStatement(this);
+ }
+};
+
+WhileStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitWhileStatement(this);
+ }
+};
+
+WhileStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitWhileStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.WhileStatementContext = WhileStatementContext;
+
+SqlParser.prototype.whileStatement = function() {
+
+ var localctx = new WhileStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 364, SqlParser.RULE_whileStatement);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4254;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (SqlParser.CURRENT - 32)) | (1 << (SqlParser.DATABASE - 32)) | (1 << (SqlParser.DIAGNOSTICS - 32)))) !== 0) || _la===SqlParser.LEFT || _la===SqlParser.NUMBER || _la===SqlParser.RIGHT || _la===SqlParser.STACKED || ((((_la - 199)) & ~0x1f) == 0 && ((1 << (_la - 199)) & ((1 << (SqlParser.DATE - 199)) | (1 << (SqlParser.TIME - 199)) | (1 << (SqlParser.TIMESTAMP - 199)) | (1 << (SqlParser.DATETIME - 199)) | (1 << (SqlParser.YEAR - 199)) | (1 << (SqlParser.TEXT - 199)) | (1 << (SqlParser.ENUM - 199)) | (1 << (SqlParser.SERIAL - 199)))) !== 0) || ((((_la - 233)) & ~0x1f) == 0 && ((1 << (_la - 233)) & ((1 << (SqlParser.JSON_VALID - 233)) | (1 << (SqlParser.JSON_SCHEMA_VALID - 233)) | (1 << (SqlParser.COUNT - 233)) | (1 << (SqlParser.POSITION - 233)))) !== 0) || ((((_la - 270)) & ~0x1f) == 0 && ((1 << (_la - 270)) & ((1 << (SqlParser.ACCOUNT - 270)) | (1 << (SqlParser.ACTION - 270)) | (1 << (SqlParser.AFTER - 270)) | (1 << (SqlParser.AGGREGATE - 270)) | (1 << (SqlParser.ALGORITHM - 270)) | (1 << (SqlParser.ANY - 270)) | (1 << (SqlParser.AT - 270)) | (1 << (SqlParser.AUTHORS - 270)) | (1 << (SqlParser.AUTOCOMMIT - 270)) | (1 << (SqlParser.AUTOEXTEND_SIZE - 270)) | (1 << (SqlParser.AUTO_INCREMENT - 270)) | (1 << (SqlParser.AVG_ROW_LENGTH - 270)) | (1 << (SqlParser.BEGIN - 270)) | (1 << (SqlParser.BINLOG - 270)) | (1 << (SqlParser.BIT - 270)) | (1 << (SqlParser.BLOCK - 270)) | (1 << (SqlParser.BOOL - 270)) | (1 << (SqlParser.BOOLEAN - 270)) | (1 << (SqlParser.BTREE - 270)) | (1 << (SqlParser.CACHE - 270)) | (1 << (SqlParser.CASCADED - 270)) | (1 << (SqlParser.CHAIN - 270)) | (1 << (SqlParser.CHANGED - 270)) | (1 << (SqlParser.CHANNEL - 270)) | (1 << (SqlParser.CHECKSUM - 270)) | (1 << (SqlParser.PAGE_CHECKSUM - 270)) | (1 << (SqlParser.CIPHER - 270)) | (1 << (SqlParser.CLASS_ORIGIN - 270)) | (1 << (SqlParser.CLIENT - 270)) | (1 << (SqlParser.CLOSE - 270)) | (1 << (SqlParser.COALESCE - 270)) | (1 << (SqlParser.CODE - 270)))) !== 0) || ((((_la - 302)) & ~0x1f) == 0 && ((1 << (_la - 302)) & ((1 << (SqlParser.COLUMNS - 302)) | (1 << (SqlParser.COLUMN_FORMAT - 302)) | (1 << (SqlParser.COLUMN_NAME - 302)) | (1 << (SqlParser.COMMENT - 302)) | (1 << (SqlParser.COMMIT - 302)) | (1 << (SqlParser.COMPACT - 302)) | (1 << (SqlParser.COMPLETION - 302)) | (1 << (SqlParser.COMPRESSED - 302)) | (1 << (SqlParser.COMPRESSION - 302)) | (1 << (SqlParser.CONCURRENT - 302)) | (1 << (SqlParser.CONNECTION - 302)) | (1 << (SqlParser.CONSISTENT - 302)) | (1 << (SqlParser.CONSTRAINT_CATALOG - 302)) | (1 << (SqlParser.CONSTRAINT_SCHEMA - 302)) | (1 << (SqlParser.CONSTRAINT_NAME - 302)) | (1 << (SqlParser.CONTAINS - 302)) | (1 << (SqlParser.CONTEXT - 302)) | (1 << (SqlParser.CONTRIBUTORS - 302)) | (1 << (SqlParser.COPY - 302)) | (1 << (SqlParser.CPU - 302)) | (1 << (SqlParser.CURSOR_NAME - 302)) | (1 << (SqlParser.DATA - 302)) | (1 << (SqlParser.DATAFILE - 302)) | (1 << (SqlParser.DEALLOCATE - 302)) | (1 << (SqlParser.DEFAULT_AUTH - 302)) | (1 << (SqlParser.DEFINER - 302)) | (1 << (SqlParser.DELAY_KEY_WRITE - 302)) | (1 << (SqlParser.DES_KEY_FILE - 302)) | (1 << (SqlParser.DIRECTORY - 302)) | (1 << (SqlParser.DISABLE - 302)) | (1 << (SqlParser.DISCARD - 302)) | (1 << (SqlParser.DISK - 302)))) !== 0) || ((((_la - 334)) & ~0x1f) == 0 && ((1 << (_la - 334)) & ((1 << (SqlParser.DO - 334)) | (1 << (SqlParser.DUMPFILE - 334)) | (1 << (SqlParser.DUPLICATE - 334)) | (1 << (SqlParser.DYNAMIC - 334)) | (1 << (SqlParser.ENABLE - 334)) | (1 << (SqlParser.ENCRYPTION - 334)) | (1 << (SqlParser.END - 334)) | (1 << (SqlParser.ENDS - 334)) | (1 << (SqlParser.ENGINE - 334)) | (1 << (SqlParser.ENGINES - 334)) | (1 << (SqlParser.ERROR - 334)) | (1 << (SqlParser.ERRORS - 334)) | (1 << (SqlParser.ESCAPE - 334)) | (1 << (SqlParser.EVEN - 334)) | (1 << (SqlParser.EVENT - 334)) | (1 << (SqlParser.EVENTS - 334)) | (1 << (SqlParser.EVERY - 334)) | (1 << (SqlParser.EXCHANGE - 334)) | (1 << (SqlParser.EXCLUSIVE - 334)) | (1 << (SqlParser.EXPIRE - 334)) | (1 << (SqlParser.EXPORT - 334)) | (1 << (SqlParser.EXTENDED - 334)) | (1 << (SqlParser.EXTENT_SIZE - 334)) | (1 << (SqlParser.FAST - 334)) | (1 << (SqlParser.FAULTS - 334)) | (1 << (SqlParser.FIELDS - 334)) | (1 << (SqlParser.FILE_BLOCK_SIZE - 334)) | (1 << (SqlParser.FILTER - 334)) | (1 << (SqlParser.FIRST - 334)) | (1 << (SqlParser.FIXED - 334)) | (1 << (SqlParser.FLUSH - 334)) | (1 << (SqlParser.FOLLOWS - 334)))) !== 0) || ((((_la - 366)) & ~0x1f) == 0 && ((1 << (_la - 366)) & ((1 << (SqlParser.FOUND - 366)) | (1 << (SqlParser.FULL - 366)) | (1 << (SqlParser.FUNCTION - 366)) | (1 << (SqlParser.GENERAL - 366)) | (1 << (SqlParser.GLOBAL - 366)) | (1 << (SqlParser.GRANTS - 366)) | (1 << (SqlParser.GROUP_REPLICATION - 366)) | (1 << (SqlParser.HANDLER - 366)) | (1 << (SqlParser.HASH - 366)) | (1 << (SqlParser.HELP - 366)) | (1 << (SqlParser.HOST - 366)) | (1 << (SqlParser.HOSTS - 366)) | (1 << (SqlParser.IDENTIFIED - 366)) | (1 << (SqlParser.IGNORE_SERVER_IDS - 366)) | (1 << (SqlParser.IMPORT - 366)) | (1 << (SqlParser.INDEXES - 366)) | (1 << (SqlParser.INITIAL_SIZE - 366)) | (1 << (SqlParser.INPLACE - 366)) | (1 << (SqlParser.INSERT_METHOD - 366)) | (1 << (SqlParser.INSTALL - 366)) | (1 << (SqlParser.INSTANCE - 366)) | (1 << (SqlParser.INVISIBLE - 366)) | (1 << (SqlParser.INVOKER - 366)) | (1 << (SqlParser.IO - 366)) | (1 << (SqlParser.IO_THREAD - 366)) | (1 << (SqlParser.IPC - 366)) | (1 << (SqlParser.ISOLATION - 366)) | (1 << (SqlParser.ISSUER - 366)) | (1 << (SqlParser.JSON - 366)) | (1 << (SqlParser.KEY_BLOCK_SIZE - 366)) | (1 << (SqlParser.LANGUAGE - 366)) | (1 << (SqlParser.LAST - 366)))) !== 0) || ((((_la - 398)) & ~0x1f) == 0 && ((1 << (_la - 398)) & ((1 << (SqlParser.LEAVES - 398)) | (1 << (SqlParser.LESS - 398)) | (1 << (SqlParser.LEVEL - 398)) | (1 << (SqlParser.LIST - 398)) | (1 << (SqlParser.LOCAL - 398)) | (1 << (SqlParser.LOGFILE - 398)) | (1 << (SqlParser.LOGS - 398)) | (1 << (SqlParser.MASTER - 398)) | (1 << (SqlParser.MASTER_AUTO_POSITION - 398)) | (1 << (SqlParser.MASTER_CONNECT_RETRY - 398)) | (1 << (SqlParser.MASTER_DELAY - 398)) | (1 << (SqlParser.MASTER_HEARTBEAT_PERIOD - 398)) | (1 << (SqlParser.MASTER_HOST - 398)) | (1 << (SqlParser.MASTER_LOG_FILE - 398)) | (1 << (SqlParser.MASTER_LOG_POS - 398)) | (1 << (SqlParser.MASTER_PASSWORD - 398)) | (1 << (SqlParser.MASTER_PORT - 398)) | (1 << (SqlParser.MASTER_RETRY_COUNT - 398)) | (1 << (SqlParser.MASTER_SSL - 398)) | (1 << (SqlParser.MASTER_SSL_CA - 398)) | (1 << (SqlParser.MASTER_SSL_CAPATH - 398)) | (1 << (SqlParser.MASTER_SSL_CERT - 398)) | (1 << (SqlParser.MASTER_SSL_CIPHER - 398)) | (1 << (SqlParser.MASTER_SSL_CRL - 398)) | (1 << (SqlParser.MASTER_SSL_CRLPATH - 398)) | (1 << (SqlParser.MASTER_SSL_KEY - 398)) | (1 << (SqlParser.MASTER_TLS_VERSION - 398)) | (1 << (SqlParser.MASTER_USER - 398)) | (1 << (SqlParser.MAX_CONNECTIONS_PER_HOUR - 398)) | (1 << (SqlParser.MAX_QUERIES_PER_HOUR - 398)) | (1 << (SqlParser.MAX_ROWS - 398)) | (1 << (SqlParser.MAX_SIZE - 398)))) !== 0) || ((((_la - 430)) & ~0x1f) == 0 && ((1 << (_la - 430)) & ((1 << (SqlParser.MAX_UPDATES_PER_HOUR - 430)) | (1 << (SqlParser.MAX_USER_CONNECTIONS - 430)) | (1 << (SqlParser.MEDIUM - 430)) | (1 << (SqlParser.MERGE - 430)) | (1 << (SqlParser.MESSAGE_TEXT - 430)) | (1 << (SqlParser.MID - 430)) | (1 << (SqlParser.MIGRATE - 430)) | (1 << (SqlParser.MIN_ROWS - 430)) | (1 << (SqlParser.MODE - 430)) | (1 << (SqlParser.MODIFY - 430)) | (1 << (SqlParser.MUTEX - 430)) | (1 << (SqlParser.MYSQL - 430)) | (1 << (SqlParser.MYSQL_ERRNO - 430)) | (1 << (SqlParser.NAME - 430)) | (1 << (SqlParser.NAMES - 430)) | (1 << (SqlParser.NCHAR - 430)) | (1 << (SqlParser.NEVER - 430)) | (1 << (SqlParser.NEXT - 430)) | (1 << (SqlParser.NO - 430)) | (1 << (SqlParser.NODEGROUP - 430)) | (1 << (SqlParser.NONE - 430)) | (1 << (SqlParser.OFFLINE - 430)) | (1 << (SqlParser.OFFSET - 430)) | (1 << (SqlParser.OJ - 430)) | (1 << (SqlParser.OLD_PASSWORD - 430)) | (1 << (SqlParser.ONE - 430)) | (1 << (SqlParser.ONLINE - 430)) | (1 << (SqlParser.ONLY - 430)) | (1 << (SqlParser.OPEN - 430)) | (1 << (SqlParser.OPTIMIZER_COSTS - 430)) | (1 << (SqlParser.OPTIONS - 430)) | (1 << (SqlParser.OWNER - 430)))) !== 0) || ((((_la - 462)) & ~0x1f) == 0 && ((1 << (_la - 462)) & ((1 << (SqlParser.PACK_KEYS - 462)) | (1 << (SqlParser.PAGE - 462)) | (1 << (SqlParser.PARSER - 462)) | (1 << (SqlParser.PARTIAL - 462)) | (1 << (SqlParser.PARTITIONING - 462)) | (1 << (SqlParser.PARTITIONS - 462)) | (1 << (SqlParser.PASSWORD - 462)) | (1 << (SqlParser.PHASE - 462)) | (1 << (SqlParser.PLUGIN - 462)) | (1 << (SqlParser.PLUGIN_DIR - 462)) | (1 << (SqlParser.PLUGINS - 462)) | (1 << (SqlParser.PORT - 462)) | (1 << (SqlParser.PRECEDES - 462)) | (1 << (SqlParser.PREPARE - 462)) | (1 << (SqlParser.PRESERVE - 462)) | (1 << (SqlParser.PREV - 462)) | (1 << (SqlParser.PROCESSLIST - 462)) | (1 << (SqlParser.PROFILE - 462)) | (1 << (SqlParser.PROFILES - 462)) | (1 << (SqlParser.PROXY - 462)) | (1 << (SqlParser.QUERY - 462)) | (1 << (SqlParser.QUICK - 462)) | (1 << (SqlParser.REBUILD - 462)) | (1 << (SqlParser.RECOVER - 462)) | (1 << (SqlParser.REDO_BUFFER_SIZE - 462)) | (1 << (SqlParser.REDUNDANT - 462)) | (1 << (SqlParser.RELAY - 462)) | (1 << (SqlParser.RELAY_LOG_FILE - 462)) | (1 << (SqlParser.RELAY_LOG_POS - 462)) | (1 << (SqlParser.RELAYLOG - 462)) | (1 << (SqlParser.REMOVE - 462)) | (1 << (SqlParser.REORGANIZE - 462)))) !== 0) || ((((_la - 494)) & ~0x1f) == 0 && ((1 << (_la - 494)) & ((1 << (SqlParser.REPAIR - 494)) | (1 << (SqlParser.REPLICATE_DO_DB - 494)) | (1 << (SqlParser.REPLICATE_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_DB - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATE_REWRITE_DB - 494)) | (1 << (SqlParser.REPLICATE_WILD_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_WILD_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATION - 494)) | (1 << (SqlParser.RESET - 494)) | (1 << (SqlParser.RESUME - 494)) | (1 << (SqlParser.RETURNED_SQLSTATE - 494)) | (1 << (SqlParser.RETURNS - 494)) | (1 << (SqlParser.ROLE - 494)) | (1 << (SqlParser.ROLLBACK - 494)) | (1 << (SqlParser.ROLLUP - 494)) | (1 << (SqlParser.ROTATE - 494)) | (1 << (SqlParser.ROW - 494)) | (1 << (SqlParser.ROWS - 494)) | (1 << (SqlParser.ROW_FORMAT - 494)) | (1 << (SqlParser.SAVEPOINT - 494)) | (1 << (SqlParser.SCHEDULE - 494)) | (1 << (SqlParser.SECURITY - 494)) | (1 << (SqlParser.SERVER - 494)) | (1 << (SqlParser.SESSION - 494)) | (1 << (SqlParser.SHARE - 494)) | (1 << (SqlParser.SHARED - 494)) | (1 << (SqlParser.SIGNED - 494)) | (1 << (SqlParser.SIMPLE - 494)) | (1 << (SqlParser.SLAVE - 494)) | (1 << (SqlParser.SLOW - 494)) | (1 << (SqlParser.SNAPSHOT - 494)))) !== 0) || ((((_la - 526)) & ~0x1f) == 0 && ((1 << (_la - 526)) & ((1 << (SqlParser.SOCKET - 526)) | (1 << (SqlParser.SOME - 526)) | (1 << (SqlParser.SONAME - 526)) | (1 << (SqlParser.SOUNDS - 526)) | (1 << (SqlParser.SOURCE - 526)) | (1 << (SqlParser.SQL_AFTER_GTIDS - 526)) | (1 << (SqlParser.SQL_AFTER_MTS_GAPS - 526)) | (1 << (SqlParser.SQL_BEFORE_GTIDS - 526)) | (1 << (SqlParser.SQL_BUFFER_RESULT - 526)) | (1 << (SqlParser.SQL_CACHE - 526)) | (1 << (SqlParser.SQL_NO_CACHE - 526)) | (1 << (SqlParser.SQL_THREAD - 526)) | (1 << (SqlParser.START - 526)) | (1 << (SqlParser.STARTS - 526)) | (1 << (SqlParser.STATS_AUTO_RECALC - 526)) | (1 << (SqlParser.STATS_PERSISTENT - 526)) | (1 << (SqlParser.STATS_SAMPLE_PAGES - 526)) | (1 << (SqlParser.STATUS - 526)) | (1 << (SqlParser.STOP - 526)) | (1 << (SqlParser.STORAGE - 526)) | (1 << (SqlParser.STRING - 526)) | (1 << (SqlParser.SUBCLASS_ORIGIN - 526)) | (1 << (SqlParser.SUBJECT - 526)) | (1 << (SqlParser.SUBPARTITION - 526)) | (1 << (SqlParser.SUBPARTITIONS - 526)) | (1 << (SqlParser.SUSPEND - 526)) | (1 << (SqlParser.SWAPS - 526)) | (1 << (SqlParser.SWITCHES - 526)) | (1 << (SqlParser.TABLE_NAME - 526)) | (1 << (SqlParser.TABLESPACE - 526)) | (1 << (SqlParser.TEMPORARY - 526)))) !== 0) || ((((_la - 558)) & ~0x1f) == 0 && ((1 << (_la - 558)) & ((1 << (SqlParser.TEMPTABLE - 558)) | (1 << (SqlParser.THAN - 558)) | (1 << (SqlParser.TRADITIONAL - 558)) | (1 << (SqlParser.TRANSACTION - 558)) | (1 << (SqlParser.TRANSACTIONAL - 558)) | (1 << (SqlParser.TRIGGERS - 558)) | (1 << (SqlParser.TRUNCATE - 558)) | (1 << (SqlParser.UNDEFINED - 558)) | (1 << (SqlParser.UNDOFILE - 558)) | (1 << (SqlParser.UNDO_BUFFER_SIZE - 558)) | (1 << (SqlParser.UNINSTALL - 558)) | (1 << (SqlParser.UNKNOWN - 558)) | (1 << (SqlParser.UNTIL - 558)) | (1 << (SqlParser.UPGRADE - 558)) | (1 << (SqlParser.USER - 558)) | (1 << (SqlParser.USE_FRM - 558)) | (1 << (SqlParser.USER_RESOURCES - 558)) | (1 << (SqlParser.VALIDATION - 558)) | (1 << (SqlParser.VALUE - 558)) | (1 << (SqlParser.VARIABLES - 558)) | (1 << (SqlParser.VIEW - 558)) | (1 << (SqlParser.VISIBLE - 558)) | (1 << (SqlParser.WAIT - 558)) | (1 << (SqlParser.WARNINGS - 558)) | (1 << (SqlParser.WITHOUT - 558)) | (1 << (SqlParser.WORK - 558)) | (1 << (SqlParser.WRAPPER - 558)) | (1 << (SqlParser.X509 - 558)) | (1 << (SqlParser.XA - 558)) | (1 << (SqlParser.XML - 558)))) !== 0) || ((((_la - 593)) & ~0x1f) == 0 && ((1 << (_la - 593)) & ((1 << (SqlParser.INTERNAL - 593)) | (1 << (SqlParser.QUARTER - 593)) | (1 << (SqlParser.MONTH - 593)) | (1 << (SqlParser.DAY - 593)) | (1 << (SqlParser.HOUR - 593)) | (1 << (SqlParser.MINUTE - 593)) | (1 << (SqlParser.WEEK - 593)) | (1 << (SqlParser.SECOND - 593)) | (1 << (SqlParser.MICROSECOND - 593)) | (1 << (SqlParser.TABLES - 593)) | (1 << (SqlParser.ROUTINE - 593)) | (1 << (SqlParser.EXECUTE - 593)) | (1 << (SqlParser.FILE - 593)) | (1 << (SqlParser.PROCESS - 593)) | (1 << (SqlParser.RELOAD - 593)) | (1 << (SqlParser.SHUTDOWN - 593)) | (1 << (SqlParser.SUPER - 593)) | (1 << (SqlParser.PRIVILEGES - 593)) | (1 << (SqlParser.AUDIT_ADMIN - 593)) | (1 << (SqlParser.BACKUP_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ENCRYPTION_ADMIN - 593)) | (1 << (SqlParser.CLONE_ADMIN - 593)) | (1 << (SqlParser.CONNECTION_ADMIN - 593)) | (1 << (SqlParser.ENCRYPTION_KEY_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_USER - 593)) | (1 << (SqlParser.GROUP_REPLICATION_ADMIN - 593)) | (1 << (SqlParser.INNODB_REDO_LOG_ARCHIVE - 593)) | (1 << (SqlParser.NDB_STORED_USER - 593)) | (1 << (SqlParser.PERSIST_RO_VARIABLES_ADMIN - 593)))) !== 0) || ((((_la - 625)) & ~0x1f) == 0 && ((1 << (_la - 625)) & ((1 << (SqlParser.REPLICATION_APPLIER - 625)) | (1 << (SqlParser.REPLICATION_SLAVE_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_USER - 625)) | (1 << (SqlParser.ROLE_ADMIN - 625)) | (1 << (SqlParser.SESSION_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.SET_USER_ID - 625)) | (1 << (SqlParser.SHOW_ROUTINE - 625)) | (1 << (SqlParser.SYSTEM_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.TABLE_ENCRYPTION_ADMIN - 625)) | (1 << (SqlParser.VERSION_TOKEN_ADMIN - 625)) | (1 << (SqlParser.XA_RECOVER_ADMIN - 625)) | (1 << (SqlParser.ARMSCII8 - 625)) | (1 << (SqlParser.ASCII - 625)) | (1 << (SqlParser.BIG5 - 625)) | (1 << (SqlParser.CP1250 - 625)) | (1 << (SqlParser.CP1251 - 625)) | (1 << (SqlParser.CP1256 - 625)) | (1 << (SqlParser.CP1257 - 625)) | (1 << (SqlParser.CP850 - 625)) | (1 << (SqlParser.CP852 - 625)) | (1 << (SqlParser.CP866 - 625)) | (1 << (SqlParser.CP932 - 625)) | (1 << (SqlParser.DEC8 - 625)) | (1 << (SqlParser.EUCJPMS - 625)) | (1 << (SqlParser.EUCKR - 625)) | (1 << (SqlParser.GB2312 - 625)) | (1 << (SqlParser.GBK - 625)) | (1 << (SqlParser.GEOSTD8 - 625)) | (1 << (SqlParser.GREEK - 625)) | (1 << (SqlParser.HEBREW - 625)) | (1 << (SqlParser.HP8 - 625)))) !== 0) || ((((_la - 657)) & ~0x1f) == 0 && ((1 << (_la - 657)) & ((1 << (SqlParser.KEYBCS2 - 657)) | (1 << (SqlParser.KOI8R - 657)) | (1 << (SqlParser.KOI8U - 657)) | (1 << (SqlParser.LATIN1 - 657)) | (1 << (SqlParser.LATIN2 - 657)) | (1 << (SqlParser.LATIN5 - 657)) | (1 << (SqlParser.LATIN7 - 657)) | (1 << (SqlParser.MACCE - 657)) | (1 << (SqlParser.MACROMAN - 657)) | (1 << (SqlParser.SJIS - 657)) | (1 << (SqlParser.SWE7 - 657)) | (1 << (SqlParser.TIS620 - 657)) | (1 << (SqlParser.UCS2 - 657)) | (1 << (SqlParser.UJIS - 657)) | (1 << (SqlParser.UTF16 - 657)) | (1 << (SqlParser.UTF16LE - 657)) | (1 << (SqlParser.UTF32 - 657)) | (1 << (SqlParser.UTF8 - 657)) | (1 << (SqlParser.UTF8MB3 - 657)) | (1 << (SqlParser.UTF8MB4 - 657)) | (1 << (SqlParser.ARCHIVE - 657)) | (1 << (SqlParser.BLACKHOLE - 657)) | (1 << (SqlParser.CSV - 657)) | (1 << (SqlParser.FEDERATED - 657)) | (1 << (SqlParser.INNODB - 657)) | (1 << (SqlParser.MEMORY - 657)) | (1 << (SqlParser.MRG_MYISAM - 657)) | (1 << (SqlParser.MYISAM - 657)) | (1 << (SqlParser.NDB - 657)) | (1 << (SqlParser.NDBCLUSTER - 657)) | (1 << (SqlParser.PERFORMANCE_SCHEMA - 657)) | (1 << (SqlParser.TOKUDB - 657)))) !== 0) || ((((_la - 689)) & ~0x1f) == 0 && ((1 << (_la - 689)) & ((1 << (SqlParser.REPEATABLE - 689)) | (1 << (SqlParser.COMMITTED - 689)) | (1 << (SqlParser.UNCOMMITTED - 689)) | (1 << (SqlParser.SERIALIZABLE - 689)) | (1 << (SqlParser.GEOMETRYCOLLECTION - 689)) | (1 << (SqlParser.LINESTRING - 689)) | (1 << (SqlParser.MULTILINESTRING - 689)) | (1 << (SqlParser.MULTIPOINT - 689)) | (1 << (SqlParser.MULTIPOLYGON - 689)) | (1 << (SqlParser.POINT - 689)) | (1 << (SqlParser.POLYGON - 689)) | (1 << (SqlParser.ABS - 689)) | (1 << (SqlParser.ACOS - 689)) | (1 << (SqlParser.ADDDATE - 689)) | (1 << (SqlParser.ADDTIME - 689)) | (1 << (SqlParser.AES_DECRYPT - 689)) | (1 << (SqlParser.AES_ENCRYPT - 689)) | (1 << (SqlParser.AREA - 689)) | (1 << (SqlParser.ASBINARY - 689)) | (1 << (SqlParser.ASIN - 689)) | (1 << (SqlParser.ASTEXT - 689)) | (1 << (SqlParser.ASWKB - 689)) | (1 << (SqlParser.ASWKT - 689)) | (1 << (SqlParser.ASYMMETRIC_DECRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_DERIVE - 689)) | (1 << (SqlParser.ASYMMETRIC_ENCRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_SIGN - 689)) | (1 << (SqlParser.ASYMMETRIC_VERIFY - 689)) | (1 << (SqlParser.ATAN - 689)) | (1 << (SqlParser.ATAN2 - 689)))) !== 0) || ((((_la - 721)) & ~0x1f) == 0 && ((1 << (_la - 721)) & ((1 << (SqlParser.BENCHMARK - 721)) | (1 << (SqlParser.BIN - 721)) | (1 << (SqlParser.BIT_COUNT - 721)) | (1 << (SqlParser.BIT_LENGTH - 721)) | (1 << (SqlParser.BUFFER - 721)) | (1 << (SqlParser.CATALOG_NAME - 721)) | (1 << (SqlParser.CEIL - 721)) | (1 << (SqlParser.CEILING - 721)) | (1 << (SqlParser.CENTROID - 721)) | (1 << (SqlParser.CHARACTER_LENGTH - 721)) | (1 << (SqlParser.CHARSET - 721)) | (1 << (SqlParser.CHAR_LENGTH - 721)) | (1 << (SqlParser.COERCIBILITY - 721)) | (1 << (SqlParser.COLLATION - 721)) | (1 << (SqlParser.COMPRESS - 721)) | (1 << (SqlParser.CONCAT - 721)) | (1 << (SqlParser.CONCAT_WS - 721)) | (1 << (SqlParser.CONNECTION_ID - 721)) | (1 << (SqlParser.CONV - 721)) | (1 << (SqlParser.CONVERT_TZ - 721)) | (1 << (SqlParser.COS - 721)) | (1 << (SqlParser.COT - 721)) | (1 << (SqlParser.CRC32 - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PRIV_KEY - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PUB_KEY - 721)) | (1 << (SqlParser.CREATE_DH_PARAMETERS - 721)) | (1 << (SqlParser.CREATE_DIGEST - 721)) | (1 << (SqlParser.CROSSES - 721)) | (1 << (SqlParser.DATEDIFF - 721)) | (1 << (SqlParser.DATE_FORMAT - 721)) | (1 << (SqlParser.DAYNAME - 721)) | (1 << (SqlParser.DAYOFMONTH - 721)))) !== 0) || ((((_la - 753)) & ~0x1f) == 0 && ((1 << (_la - 753)) & ((1 << (SqlParser.DAYOFWEEK - 753)) | (1 << (SqlParser.DAYOFYEAR - 753)) | (1 << (SqlParser.DECODE - 753)) | (1 << (SqlParser.DEGREES - 753)) | (1 << (SqlParser.DES_DECRYPT - 753)) | (1 << (SqlParser.DES_ENCRYPT - 753)) | (1 << (SqlParser.DIMENSION - 753)) | (1 << (SqlParser.DISJOINT - 753)) | (1 << (SqlParser.ELT - 753)) | (1 << (SqlParser.ENCODE - 753)) | (1 << (SqlParser.ENCRYPT - 753)) | (1 << (SqlParser.ENDPOINT - 753)) | (1 << (SqlParser.ENVELOPE - 753)) | (1 << (SqlParser.EQUALS - 753)) | (1 << (SqlParser.EXP - 753)) | (1 << (SqlParser.EXPORT_SET - 753)) | (1 << (SqlParser.EXTERIORRING - 753)) | (1 << (SqlParser.EXTRACTVALUE - 753)) | (1 << (SqlParser.FIELD - 753)) | (1 << (SqlParser.FIND_IN_SET - 753)) | (1 << (SqlParser.FLOOR - 753)) | (1 << (SqlParser.FORMAT - 753)) | (1 << (SqlParser.FOUND_ROWS - 753)) | (1 << (SqlParser.FROM_BASE64 - 753)) | (1 << (SqlParser.FROM_DAYS - 753)) | (1 << (SqlParser.FROM_UNIXTIME - 753)) | (1 << (SqlParser.GEOMCOLLFROMTEXT - 753)) | (1 << (SqlParser.GEOMCOLLFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYFROMWKB - 753)))) !== 0) || ((((_la - 785)) & ~0x1f) == 0 && ((1 << (_la - 785)) & ((1 << (SqlParser.GEOMETRYN - 785)) | (1 << (SqlParser.GEOMETRYTYPE - 785)) | (1 << (SqlParser.GEOMFROMTEXT - 785)) | (1 << (SqlParser.GEOMFROMWKB - 785)) | (1 << (SqlParser.GET_FORMAT - 785)) | (1 << (SqlParser.GET_LOCK - 785)) | (1 << (SqlParser.GLENGTH - 785)) | (1 << (SqlParser.GREATEST - 785)) | (1 << (SqlParser.GTID_SUBSET - 785)) | (1 << (SqlParser.GTID_SUBTRACT - 785)) | (1 << (SqlParser.HEX - 785)) | (1 << (SqlParser.IFNULL - 785)) | (1 << (SqlParser.INET6_ATON - 785)) | (1 << (SqlParser.INET6_NTOA - 785)) | (1 << (SqlParser.INET_ATON - 785)) | (1 << (SqlParser.INET_NTOA - 785)) | (1 << (SqlParser.INSTR - 785)) | (1 << (SqlParser.INTERIORRINGN - 785)) | (1 << (SqlParser.INTERSECTS - 785)) | (1 << (SqlParser.ISCLOSED - 785)) | (1 << (SqlParser.ISEMPTY - 785)) | (1 << (SqlParser.ISNULL - 785)) | (1 << (SqlParser.ISSIMPLE - 785)) | (1 << (SqlParser.IS_FREE_LOCK - 785)) | (1 << (SqlParser.IS_IPV4 - 785)) | (1 << (SqlParser.IS_IPV4_COMPAT - 785)) | (1 << (SqlParser.IS_IPV4_MAPPED - 785)) | (1 << (SqlParser.IS_IPV6 - 785)) | (1 << (SqlParser.IS_USED_LOCK - 785)) | (1 << (SqlParser.LAST_INSERT_ID - 785)) | (1 << (SqlParser.LCASE - 785)) | (1 << (SqlParser.LEAST - 785)))) !== 0) || ((((_la - 817)) & ~0x1f) == 0 && ((1 << (_la - 817)) & ((1 << (SqlParser.LENGTH - 817)) | (1 << (SqlParser.LINEFROMTEXT - 817)) | (1 << (SqlParser.LINEFROMWKB - 817)) | (1 << (SqlParser.LINESTRINGFROMTEXT - 817)) | (1 << (SqlParser.LINESTRINGFROMWKB - 817)) | (1 << (SqlParser.LN - 817)) | (1 << (SqlParser.LOAD_FILE - 817)) | (1 << (SqlParser.LOCATE - 817)) | (1 << (SqlParser.LOG - 817)) | (1 << (SqlParser.LOG10 - 817)) | (1 << (SqlParser.LOG2 - 817)) | (1 << (SqlParser.LOWER - 817)) | (1 << (SqlParser.LPAD - 817)) | (1 << (SqlParser.LTRIM - 817)) | (1 << (SqlParser.MAKEDATE - 817)) | (1 << (SqlParser.MAKETIME - 817)) | (1 << (SqlParser.MAKE_SET - 817)) | (1 << (SqlParser.MASTER_POS_WAIT - 817)) | (1 << (SqlParser.MBRCONTAINS - 817)) | (1 << (SqlParser.MBRDISJOINT - 817)) | (1 << (SqlParser.MBREQUAL - 817)) | (1 << (SqlParser.MBRINTERSECTS - 817)) | (1 << (SqlParser.MBROVERLAPS - 817)) | (1 << (SqlParser.MBRTOUCHES - 817)) | (1 << (SqlParser.MBRWITHIN - 817)) | (1 << (SqlParser.MD5 - 817)) | (1 << (SqlParser.MLINEFROMTEXT - 817)) | (1 << (SqlParser.MLINEFROMWKB - 817)) | (1 << (SqlParser.MONTHNAME - 817)) | (1 << (SqlParser.MPOINTFROMTEXT - 817)) | (1 << (SqlParser.MPOINTFROMWKB - 817)) | (1 << (SqlParser.MPOLYFROMTEXT - 817)))) !== 0) || ((((_la - 849)) & ~0x1f) == 0 && ((1 << (_la - 849)) & ((1 << (SqlParser.MPOLYFROMWKB - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMTEXT - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMWKB - 849)) | (1 << (SqlParser.MULTIPOINTFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOINTFROMWKB - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMWKB - 849)) | (1 << (SqlParser.NAME_CONST - 849)) | (1 << (SqlParser.NULLIF - 849)) | (1 << (SqlParser.NUMGEOMETRIES - 849)) | (1 << (SqlParser.NUMINTERIORRINGS - 849)) | (1 << (SqlParser.NUMPOINTS - 849)) | (1 << (SqlParser.OCT - 849)) | (1 << (SqlParser.OCTET_LENGTH - 849)) | (1 << (SqlParser.ORD - 849)) | (1 << (SqlParser.OVERLAPS - 849)) | (1 << (SqlParser.PERIOD_ADD - 849)) | (1 << (SqlParser.PERIOD_DIFF - 849)) | (1 << (SqlParser.PI - 849)) | (1 << (SqlParser.POINTFROMTEXT - 849)) | (1 << (SqlParser.POINTFROMWKB - 849)) | (1 << (SqlParser.POINTN - 849)) | (1 << (SqlParser.POLYFROMTEXT - 849)) | (1 << (SqlParser.POLYFROMWKB - 849)) | (1 << (SqlParser.POLYGONFROMTEXT - 849)) | (1 << (SqlParser.POLYGONFROMWKB - 849)) | (1 << (SqlParser.POW - 849)) | (1 << (SqlParser.POWER - 849)) | (1 << (SqlParser.QUOTE - 849)) | (1 << (SqlParser.RADIANS - 849)) | (1 << (SqlParser.RAND - 849)) | (1 << (SqlParser.RANDOM_BYTES - 849)))) !== 0) || ((((_la - 881)) & ~0x1f) == 0 && ((1 << (_la - 881)) & ((1 << (SqlParser.RELEASE_LOCK - 881)) | (1 << (SqlParser.REVERSE - 881)) | (1 << (SqlParser.ROUND - 881)) | (1 << (SqlParser.ROW_COUNT - 881)) | (1 << (SqlParser.RPAD - 881)) | (1 << (SqlParser.RTRIM - 881)) | (1 << (SqlParser.SEC_TO_TIME - 881)) | (1 << (SqlParser.SESSION_USER - 881)) | (1 << (SqlParser.SHA - 881)) | (1 << (SqlParser.SHA1 - 881)) | (1 << (SqlParser.SHA2 - 881)) | (1 << (SqlParser.SCHEMA_NAME - 881)) | (1 << (SqlParser.SIGN - 881)) | (1 << (SqlParser.SIN - 881)) | (1 << (SqlParser.SLEEP - 881)) | (1 << (SqlParser.SOUNDEX - 881)) | (1 << (SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS - 881)) | (1 << (SqlParser.SQRT - 881)) | (1 << (SqlParser.SRID - 881)) | (1 << (SqlParser.STARTPOINT - 881)) | (1 << (SqlParser.STRCMP - 881)) | (1 << (SqlParser.STR_TO_DATE - 881)) | (1 << (SqlParser.ST_AREA - 881)) | (1 << (SqlParser.ST_ASBINARY - 881)) | (1 << (SqlParser.ST_ASTEXT - 881)) | (1 << (SqlParser.ST_ASWKB - 881)) | (1 << (SqlParser.ST_ASWKT - 881)) | (1 << (SqlParser.ST_BUFFER - 881)) | (1 << (SqlParser.ST_CENTROID - 881)) | (1 << (SqlParser.ST_CONTAINS - 881)) | (1 << (SqlParser.ST_CROSSES - 881)) | (1 << (SqlParser.ST_DIFFERENCE - 881)))) !== 0) || ((((_la - 913)) & ~0x1f) == 0 && ((1 << (_la - 913)) & ((1 << (SqlParser.ST_DIMENSION - 913)) | (1 << (SqlParser.ST_DISJOINT - 913)) | (1 << (SqlParser.ST_DISTANCE - 913)) | (1 << (SqlParser.ST_ENDPOINT - 913)) | (1 << (SqlParser.ST_ENVELOPE - 913)) | (1 << (SqlParser.ST_EQUALS - 913)) | (1 << (SqlParser.ST_EXTERIORRING - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYN - 913)) | (1 << (SqlParser.ST_GEOMETRYTYPE - 913)) | (1 << (SqlParser.ST_GEOMFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMFROMWKB - 913)) | (1 << (SqlParser.ST_INTERIORRINGN - 913)) | (1 << (SqlParser.ST_INTERSECTION - 913)) | (1 << (SqlParser.ST_INTERSECTS - 913)) | (1 << (SqlParser.ST_ISCLOSED - 913)) | (1 << (SqlParser.ST_ISEMPTY - 913)) | (1 << (SqlParser.ST_ISSIMPLE - 913)) | (1 << (SqlParser.ST_LINEFROMTEXT - 913)) | (1 << (SqlParser.ST_LINEFROMWKB - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMTEXT - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMWKB - 913)) | (1 << (SqlParser.ST_NUMGEOMETRIES - 913)) | (1 << (SqlParser.ST_NUMINTERIORRING - 913)) | (1 << (SqlParser.ST_NUMINTERIORRINGS - 913)) | (1 << (SqlParser.ST_NUMPOINTS - 913)))) !== 0) || ((((_la - 945)) & ~0x1f) == 0 && ((1 << (_la - 945)) & ((1 << (SqlParser.ST_OVERLAPS - 945)) | (1 << (SqlParser.ST_POINTFROMTEXT - 945)) | (1 << (SqlParser.ST_POINTFROMWKB - 945)) | (1 << (SqlParser.ST_POINTN - 945)) | (1 << (SqlParser.ST_POLYFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYFROMWKB - 945)) | (1 << (SqlParser.ST_POLYGONFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYGONFROMWKB - 945)) | (1 << (SqlParser.ST_SRID - 945)) | (1 << (SqlParser.ST_STARTPOINT - 945)) | (1 << (SqlParser.ST_SYMDIFFERENCE - 945)) | (1 << (SqlParser.ST_TOUCHES - 945)) | (1 << (SqlParser.ST_UNION - 945)) | (1 << (SqlParser.ST_WITHIN - 945)) | (1 << (SqlParser.ST_X - 945)) | (1 << (SqlParser.ST_Y - 945)) | (1 << (SqlParser.SUBDATE - 945)) | (1 << (SqlParser.SUBSTRING_INDEX - 945)) | (1 << (SqlParser.SUBTIME - 945)) | (1 << (SqlParser.SYSTEM_USER - 945)) | (1 << (SqlParser.TAN - 945)) | (1 << (SqlParser.TIMEDIFF - 945)) | (1 << (SqlParser.TIMESTAMPADD - 945)) | (1 << (SqlParser.TIMESTAMPDIFF - 945)) | (1 << (SqlParser.TIME_FORMAT - 945)) | (1 << (SqlParser.TIME_TO_SEC - 945)) | (1 << (SqlParser.TOUCHES - 945)) | (1 << (SqlParser.TO_BASE64 - 945)) | (1 << (SqlParser.TO_DAYS - 945)) | (1 << (SqlParser.TO_SECONDS - 945)) | (1 << (SqlParser.UCASE - 945)) | (1 << (SqlParser.UNCOMPRESS - 945)))) !== 0) || ((((_la - 977)) & ~0x1f) == 0 && ((1 << (_la - 977)) & ((1 << (SqlParser.UNCOMPRESSED_LENGTH - 977)) | (1 << (SqlParser.UNHEX - 977)) | (1 << (SqlParser.UNIX_TIMESTAMP - 977)) | (1 << (SqlParser.UPDATEXML - 977)) | (1 << (SqlParser.UPPER - 977)) | (1 << (SqlParser.UUID - 977)) | (1 << (SqlParser.UUID_SHORT - 977)) | (1 << (SqlParser.VALIDATE_PASSWORD_STRENGTH - 977)) | (1 << (SqlParser.VERSION - 977)) | (1 << (SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS - 977)) | (1 << (SqlParser.WEEKDAY - 977)) | (1 << (SqlParser.WEEKOFYEAR - 977)) | (1 << (SqlParser.WEIGHT_STRING - 977)) | (1 << (SqlParser.WITHIN - 977)) | (1 << (SqlParser.YEARWEEK - 977)) | (1 << (SqlParser.Y_FUNCTION - 977)) | (1 << (SqlParser.X_FUNCTION - 977)))) !== 0) || ((((_la - 1032)) & ~0x1f) == 0 && ((1 << (_la - 1032)) & ((1 << (SqlParser.CHARSET_REVERSE_QOUTE_STRING - 1032)) | (1 << (SqlParser.STRING_LITERAL - 1032)) | (1 << (SqlParser.ID - 1032)) | (1 << (SqlParser.REVERSE_QUOTE_ID - 1032)))) !== 0)) {
+ this.state = 4251;
+ this.uid();
+ this.state = 4252;
+ this.match(SqlParser.COLON_SYMB);
+ }
+
+ this.state = 4256;
+ this.match(SqlParser.WHILE);
+ this.state = 4257;
+ this.expression(0);
+ this.state = 4258;
+ this.match(SqlParser.DO);
+ this.state = 4260;
+ this._errHandler.sync(this);
+ var _alt = 1;
+ do {
+ switch (_alt) {
+ case 1:
+ this.state = 4259;
+ this.procedureSqlStatement();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 4262;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,613, this._ctx);
+ } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
+ this.state = 4264;
+ this.match(SqlParser.END);
+ this.state = 4265;
+ this.match(SqlParser.WHILE);
+ this.state = 4267;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (SqlParser.CURRENT - 32)) | (1 << (SqlParser.DATABASE - 32)) | (1 << (SqlParser.DIAGNOSTICS - 32)))) !== 0) || _la===SqlParser.LEFT || _la===SqlParser.NUMBER || _la===SqlParser.RIGHT || _la===SqlParser.STACKED || ((((_la - 199)) & ~0x1f) == 0 && ((1 << (_la - 199)) & ((1 << (SqlParser.DATE - 199)) | (1 << (SqlParser.TIME - 199)) | (1 << (SqlParser.TIMESTAMP - 199)) | (1 << (SqlParser.DATETIME - 199)) | (1 << (SqlParser.YEAR - 199)) | (1 << (SqlParser.TEXT - 199)) | (1 << (SqlParser.ENUM - 199)) | (1 << (SqlParser.SERIAL - 199)))) !== 0) || ((((_la - 233)) & ~0x1f) == 0 && ((1 << (_la - 233)) & ((1 << (SqlParser.JSON_VALID - 233)) | (1 << (SqlParser.JSON_SCHEMA_VALID - 233)) | (1 << (SqlParser.COUNT - 233)) | (1 << (SqlParser.POSITION - 233)))) !== 0) || ((((_la - 270)) & ~0x1f) == 0 && ((1 << (_la - 270)) & ((1 << (SqlParser.ACCOUNT - 270)) | (1 << (SqlParser.ACTION - 270)) | (1 << (SqlParser.AFTER - 270)) | (1 << (SqlParser.AGGREGATE - 270)) | (1 << (SqlParser.ALGORITHM - 270)) | (1 << (SqlParser.ANY - 270)) | (1 << (SqlParser.AT - 270)) | (1 << (SqlParser.AUTHORS - 270)) | (1 << (SqlParser.AUTOCOMMIT - 270)) | (1 << (SqlParser.AUTOEXTEND_SIZE - 270)) | (1 << (SqlParser.AUTO_INCREMENT - 270)) | (1 << (SqlParser.AVG_ROW_LENGTH - 270)) | (1 << (SqlParser.BEGIN - 270)) | (1 << (SqlParser.BINLOG - 270)) | (1 << (SqlParser.BIT - 270)) | (1 << (SqlParser.BLOCK - 270)) | (1 << (SqlParser.BOOL - 270)) | (1 << (SqlParser.BOOLEAN - 270)) | (1 << (SqlParser.BTREE - 270)) | (1 << (SqlParser.CACHE - 270)) | (1 << (SqlParser.CASCADED - 270)) | (1 << (SqlParser.CHAIN - 270)) | (1 << (SqlParser.CHANGED - 270)) | (1 << (SqlParser.CHANNEL - 270)) | (1 << (SqlParser.CHECKSUM - 270)) | (1 << (SqlParser.PAGE_CHECKSUM - 270)) | (1 << (SqlParser.CIPHER - 270)) | (1 << (SqlParser.CLASS_ORIGIN - 270)) | (1 << (SqlParser.CLIENT - 270)) | (1 << (SqlParser.CLOSE - 270)) | (1 << (SqlParser.COALESCE - 270)) | (1 << (SqlParser.CODE - 270)))) !== 0) || ((((_la - 302)) & ~0x1f) == 0 && ((1 << (_la - 302)) & ((1 << (SqlParser.COLUMNS - 302)) | (1 << (SqlParser.COLUMN_FORMAT - 302)) | (1 << (SqlParser.COLUMN_NAME - 302)) | (1 << (SqlParser.COMMENT - 302)) | (1 << (SqlParser.COMMIT - 302)) | (1 << (SqlParser.COMPACT - 302)) | (1 << (SqlParser.COMPLETION - 302)) | (1 << (SqlParser.COMPRESSED - 302)) | (1 << (SqlParser.COMPRESSION - 302)) | (1 << (SqlParser.CONCURRENT - 302)) | (1 << (SqlParser.CONNECTION - 302)) | (1 << (SqlParser.CONSISTENT - 302)) | (1 << (SqlParser.CONSTRAINT_CATALOG - 302)) | (1 << (SqlParser.CONSTRAINT_SCHEMA - 302)) | (1 << (SqlParser.CONSTRAINT_NAME - 302)) | (1 << (SqlParser.CONTAINS - 302)) | (1 << (SqlParser.CONTEXT - 302)) | (1 << (SqlParser.CONTRIBUTORS - 302)) | (1 << (SqlParser.COPY - 302)) | (1 << (SqlParser.CPU - 302)) | (1 << (SqlParser.CURSOR_NAME - 302)) | (1 << (SqlParser.DATA - 302)) | (1 << (SqlParser.DATAFILE - 302)) | (1 << (SqlParser.DEALLOCATE - 302)) | (1 << (SqlParser.DEFAULT_AUTH - 302)) | (1 << (SqlParser.DEFINER - 302)) | (1 << (SqlParser.DELAY_KEY_WRITE - 302)) | (1 << (SqlParser.DES_KEY_FILE - 302)) | (1 << (SqlParser.DIRECTORY - 302)) | (1 << (SqlParser.DISABLE - 302)) | (1 << (SqlParser.DISCARD - 302)) | (1 << (SqlParser.DISK - 302)))) !== 0) || ((((_la - 334)) & ~0x1f) == 0 && ((1 << (_la - 334)) & ((1 << (SqlParser.DO - 334)) | (1 << (SqlParser.DUMPFILE - 334)) | (1 << (SqlParser.DUPLICATE - 334)) | (1 << (SqlParser.DYNAMIC - 334)) | (1 << (SqlParser.ENABLE - 334)) | (1 << (SqlParser.ENCRYPTION - 334)) | (1 << (SqlParser.END - 334)) | (1 << (SqlParser.ENDS - 334)) | (1 << (SqlParser.ENGINE - 334)) | (1 << (SqlParser.ENGINES - 334)) | (1 << (SqlParser.ERROR - 334)) | (1 << (SqlParser.ERRORS - 334)) | (1 << (SqlParser.ESCAPE - 334)) | (1 << (SqlParser.EVEN - 334)) | (1 << (SqlParser.EVENT - 334)) | (1 << (SqlParser.EVENTS - 334)) | (1 << (SqlParser.EVERY - 334)) | (1 << (SqlParser.EXCHANGE - 334)) | (1 << (SqlParser.EXCLUSIVE - 334)) | (1 << (SqlParser.EXPIRE - 334)) | (1 << (SqlParser.EXPORT - 334)) | (1 << (SqlParser.EXTENDED - 334)) | (1 << (SqlParser.EXTENT_SIZE - 334)) | (1 << (SqlParser.FAST - 334)) | (1 << (SqlParser.FAULTS - 334)) | (1 << (SqlParser.FIELDS - 334)) | (1 << (SqlParser.FILE_BLOCK_SIZE - 334)) | (1 << (SqlParser.FILTER - 334)) | (1 << (SqlParser.FIRST - 334)) | (1 << (SqlParser.FIXED - 334)) | (1 << (SqlParser.FLUSH - 334)) | (1 << (SqlParser.FOLLOWS - 334)))) !== 0) || ((((_la - 366)) & ~0x1f) == 0 && ((1 << (_la - 366)) & ((1 << (SqlParser.FOUND - 366)) | (1 << (SqlParser.FULL - 366)) | (1 << (SqlParser.FUNCTION - 366)) | (1 << (SqlParser.GENERAL - 366)) | (1 << (SqlParser.GLOBAL - 366)) | (1 << (SqlParser.GRANTS - 366)) | (1 << (SqlParser.GROUP_REPLICATION - 366)) | (1 << (SqlParser.HANDLER - 366)) | (1 << (SqlParser.HASH - 366)) | (1 << (SqlParser.HELP - 366)) | (1 << (SqlParser.HOST - 366)) | (1 << (SqlParser.HOSTS - 366)) | (1 << (SqlParser.IDENTIFIED - 366)) | (1 << (SqlParser.IGNORE_SERVER_IDS - 366)) | (1 << (SqlParser.IMPORT - 366)) | (1 << (SqlParser.INDEXES - 366)) | (1 << (SqlParser.INITIAL_SIZE - 366)) | (1 << (SqlParser.INPLACE - 366)) | (1 << (SqlParser.INSERT_METHOD - 366)) | (1 << (SqlParser.INSTALL - 366)) | (1 << (SqlParser.INSTANCE - 366)) | (1 << (SqlParser.INVISIBLE - 366)) | (1 << (SqlParser.INVOKER - 366)) | (1 << (SqlParser.IO - 366)) | (1 << (SqlParser.IO_THREAD - 366)) | (1 << (SqlParser.IPC - 366)) | (1 << (SqlParser.ISOLATION - 366)) | (1 << (SqlParser.ISSUER - 366)) | (1 << (SqlParser.JSON - 366)) | (1 << (SqlParser.KEY_BLOCK_SIZE - 366)) | (1 << (SqlParser.LANGUAGE - 366)) | (1 << (SqlParser.LAST - 366)))) !== 0) || ((((_la - 398)) & ~0x1f) == 0 && ((1 << (_la - 398)) & ((1 << (SqlParser.LEAVES - 398)) | (1 << (SqlParser.LESS - 398)) | (1 << (SqlParser.LEVEL - 398)) | (1 << (SqlParser.LIST - 398)) | (1 << (SqlParser.LOCAL - 398)) | (1 << (SqlParser.LOGFILE - 398)) | (1 << (SqlParser.LOGS - 398)) | (1 << (SqlParser.MASTER - 398)) | (1 << (SqlParser.MASTER_AUTO_POSITION - 398)) | (1 << (SqlParser.MASTER_CONNECT_RETRY - 398)) | (1 << (SqlParser.MASTER_DELAY - 398)) | (1 << (SqlParser.MASTER_HEARTBEAT_PERIOD - 398)) | (1 << (SqlParser.MASTER_HOST - 398)) | (1 << (SqlParser.MASTER_LOG_FILE - 398)) | (1 << (SqlParser.MASTER_LOG_POS - 398)) | (1 << (SqlParser.MASTER_PASSWORD - 398)) | (1 << (SqlParser.MASTER_PORT - 398)) | (1 << (SqlParser.MASTER_RETRY_COUNT - 398)) | (1 << (SqlParser.MASTER_SSL - 398)) | (1 << (SqlParser.MASTER_SSL_CA - 398)) | (1 << (SqlParser.MASTER_SSL_CAPATH - 398)) | (1 << (SqlParser.MASTER_SSL_CERT - 398)) | (1 << (SqlParser.MASTER_SSL_CIPHER - 398)) | (1 << (SqlParser.MASTER_SSL_CRL - 398)) | (1 << (SqlParser.MASTER_SSL_CRLPATH - 398)) | (1 << (SqlParser.MASTER_SSL_KEY - 398)) | (1 << (SqlParser.MASTER_TLS_VERSION - 398)) | (1 << (SqlParser.MASTER_USER - 398)) | (1 << (SqlParser.MAX_CONNECTIONS_PER_HOUR - 398)) | (1 << (SqlParser.MAX_QUERIES_PER_HOUR - 398)) | (1 << (SqlParser.MAX_ROWS - 398)) | (1 << (SqlParser.MAX_SIZE - 398)))) !== 0) || ((((_la - 430)) & ~0x1f) == 0 && ((1 << (_la - 430)) & ((1 << (SqlParser.MAX_UPDATES_PER_HOUR - 430)) | (1 << (SqlParser.MAX_USER_CONNECTIONS - 430)) | (1 << (SqlParser.MEDIUM - 430)) | (1 << (SqlParser.MERGE - 430)) | (1 << (SqlParser.MESSAGE_TEXT - 430)) | (1 << (SqlParser.MID - 430)) | (1 << (SqlParser.MIGRATE - 430)) | (1 << (SqlParser.MIN_ROWS - 430)) | (1 << (SqlParser.MODE - 430)) | (1 << (SqlParser.MODIFY - 430)) | (1 << (SqlParser.MUTEX - 430)) | (1 << (SqlParser.MYSQL - 430)) | (1 << (SqlParser.MYSQL_ERRNO - 430)) | (1 << (SqlParser.NAME - 430)) | (1 << (SqlParser.NAMES - 430)) | (1 << (SqlParser.NCHAR - 430)) | (1 << (SqlParser.NEVER - 430)) | (1 << (SqlParser.NEXT - 430)) | (1 << (SqlParser.NO - 430)) | (1 << (SqlParser.NODEGROUP - 430)) | (1 << (SqlParser.NONE - 430)) | (1 << (SqlParser.OFFLINE - 430)) | (1 << (SqlParser.OFFSET - 430)) | (1 << (SqlParser.OJ - 430)) | (1 << (SqlParser.OLD_PASSWORD - 430)) | (1 << (SqlParser.ONE - 430)) | (1 << (SqlParser.ONLINE - 430)) | (1 << (SqlParser.ONLY - 430)) | (1 << (SqlParser.OPEN - 430)) | (1 << (SqlParser.OPTIMIZER_COSTS - 430)) | (1 << (SqlParser.OPTIONS - 430)) | (1 << (SqlParser.OWNER - 430)))) !== 0) || ((((_la - 462)) & ~0x1f) == 0 && ((1 << (_la - 462)) & ((1 << (SqlParser.PACK_KEYS - 462)) | (1 << (SqlParser.PAGE - 462)) | (1 << (SqlParser.PARSER - 462)) | (1 << (SqlParser.PARTIAL - 462)) | (1 << (SqlParser.PARTITIONING - 462)) | (1 << (SqlParser.PARTITIONS - 462)) | (1 << (SqlParser.PASSWORD - 462)) | (1 << (SqlParser.PHASE - 462)) | (1 << (SqlParser.PLUGIN - 462)) | (1 << (SqlParser.PLUGIN_DIR - 462)) | (1 << (SqlParser.PLUGINS - 462)) | (1 << (SqlParser.PORT - 462)) | (1 << (SqlParser.PRECEDES - 462)) | (1 << (SqlParser.PREPARE - 462)) | (1 << (SqlParser.PRESERVE - 462)) | (1 << (SqlParser.PREV - 462)) | (1 << (SqlParser.PROCESSLIST - 462)) | (1 << (SqlParser.PROFILE - 462)) | (1 << (SqlParser.PROFILES - 462)) | (1 << (SqlParser.PROXY - 462)) | (1 << (SqlParser.QUERY - 462)) | (1 << (SqlParser.QUICK - 462)) | (1 << (SqlParser.REBUILD - 462)) | (1 << (SqlParser.RECOVER - 462)) | (1 << (SqlParser.REDO_BUFFER_SIZE - 462)) | (1 << (SqlParser.REDUNDANT - 462)) | (1 << (SqlParser.RELAY - 462)) | (1 << (SqlParser.RELAY_LOG_FILE - 462)) | (1 << (SqlParser.RELAY_LOG_POS - 462)) | (1 << (SqlParser.RELAYLOG - 462)) | (1 << (SqlParser.REMOVE - 462)) | (1 << (SqlParser.REORGANIZE - 462)))) !== 0) || ((((_la - 494)) & ~0x1f) == 0 && ((1 << (_la - 494)) & ((1 << (SqlParser.REPAIR - 494)) | (1 << (SqlParser.REPLICATE_DO_DB - 494)) | (1 << (SqlParser.REPLICATE_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_DB - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATE_REWRITE_DB - 494)) | (1 << (SqlParser.REPLICATE_WILD_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_WILD_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATION - 494)) | (1 << (SqlParser.RESET - 494)) | (1 << (SqlParser.RESUME - 494)) | (1 << (SqlParser.RETURNED_SQLSTATE - 494)) | (1 << (SqlParser.RETURNS - 494)) | (1 << (SqlParser.ROLE - 494)) | (1 << (SqlParser.ROLLBACK - 494)) | (1 << (SqlParser.ROLLUP - 494)) | (1 << (SqlParser.ROTATE - 494)) | (1 << (SqlParser.ROW - 494)) | (1 << (SqlParser.ROWS - 494)) | (1 << (SqlParser.ROW_FORMAT - 494)) | (1 << (SqlParser.SAVEPOINT - 494)) | (1 << (SqlParser.SCHEDULE - 494)) | (1 << (SqlParser.SECURITY - 494)) | (1 << (SqlParser.SERVER - 494)) | (1 << (SqlParser.SESSION - 494)) | (1 << (SqlParser.SHARE - 494)) | (1 << (SqlParser.SHARED - 494)) | (1 << (SqlParser.SIGNED - 494)) | (1 << (SqlParser.SIMPLE - 494)) | (1 << (SqlParser.SLAVE - 494)) | (1 << (SqlParser.SLOW - 494)) | (1 << (SqlParser.SNAPSHOT - 494)))) !== 0) || ((((_la - 526)) & ~0x1f) == 0 && ((1 << (_la - 526)) & ((1 << (SqlParser.SOCKET - 526)) | (1 << (SqlParser.SOME - 526)) | (1 << (SqlParser.SONAME - 526)) | (1 << (SqlParser.SOUNDS - 526)) | (1 << (SqlParser.SOURCE - 526)) | (1 << (SqlParser.SQL_AFTER_GTIDS - 526)) | (1 << (SqlParser.SQL_AFTER_MTS_GAPS - 526)) | (1 << (SqlParser.SQL_BEFORE_GTIDS - 526)) | (1 << (SqlParser.SQL_BUFFER_RESULT - 526)) | (1 << (SqlParser.SQL_CACHE - 526)) | (1 << (SqlParser.SQL_NO_CACHE - 526)) | (1 << (SqlParser.SQL_THREAD - 526)) | (1 << (SqlParser.START - 526)) | (1 << (SqlParser.STARTS - 526)) | (1 << (SqlParser.STATS_AUTO_RECALC - 526)) | (1 << (SqlParser.STATS_PERSISTENT - 526)) | (1 << (SqlParser.STATS_SAMPLE_PAGES - 526)) | (1 << (SqlParser.STATUS - 526)) | (1 << (SqlParser.STOP - 526)) | (1 << (SqlParser.STORAGE - 526)) | (1 << (SqlParser.STRING - 526)) | (1 << (SqlParser.SUBCLASS_ORIGIN - 526)) | (1 << (SqlParser.SUBJECT - 526)) | (1 << (SqlParser.SUBPARTITION - 526)) | (1 << (SqlParser.SUBPARTITIONS - 526)) | (1 << (SqlParser.SUSPEND - 526)) | (1 << (SqlParser.SWAPS - 526)) | (1 << (SqlParser.SWITCHES - 526)) | (1 << (SqlParser.TABLE_NAME - 526)) | (1 << (SqlParser.TABLESPACE - 526)) | (1 << (SqlParser.TEMPORARY - 526)))) !== 0) || ((((_la - 558)) & ~0x1f) == 0 && ((1 << (_la - 558)) & ((1 << (SqlParser.TEMPTABLE - 558)) | (1 << (SqlParser.THAN - 558)) | (1 << (SqlParser.TRADITIONAL - 558)) | (1 << (SqlParser.TRANSACTION - 558)) | (1 << (SqlParser.TRANSACTIONAL - 558)) | (1 << (SqlParser.TRIGGERS - 558)) | (1 << (SqlParser.TRUNCATE - 558)) | (1 << (SqlParser.UNDEFINED - 558)) | (1 << (SqlParser.UNDOFILE - 558)) | (1 << (SqlParser.UNDO_BUFFER_SIZE - 558)) | (1 << (SqlParser.UNINSTALL - 558)) | (1 << (SqlParser.UNKNOWN - 558)) | (1 << (SqlParser.UNTIL - 558)) | (1 << (SqlParser.UPGRADE - 558)) | (1 << (SqlParser.USER - 558)) | (1 << (SqlParser.USE_FRM - 558)) | (1 << (SqlParser.USER_RESOURCES - 558)) | (1 << (SqlParser.VALIDATION - 558)) | (1 << (SqlParser.VALUE - 558)) | (1 << (SqlParser.VARIABLES - 558)) | (1 << (SqlParser.VIEW - 558)) | (1 << (SqlParser.VISIBLE - 558)) | (1 << (SqlParser.WAIT - 558)) | (1 << (SqlParser.WARNINGS - 558)) | (1 << (SqlParser.WITHOUT - 558)) | (1 << (SqlParser.WORK - 558)) | (1 << (SqlParser.WRAPPER - 558)) | (1 << (SqlParser.X509 - 558)) | (1 << (SqlParser.XA - 558)) | (1 << (SqlParser.XML - 558)))) !== 0) || ((((_la - 593)) & ~0x1f) == 0 && ((1 << (_la - 593)) & ((1 << (SqlParser.INTERNAL - 593)) | (1 << (SqlParser.QUARTER - 593)) | (1 << (SqlParser.MONTH - 593)) | (1 << (SqlParser.DAY - 593)) | (1 << (SqlParser.HOUR - 593)) | (1 << (SqlParser.MINUTE - 593)) | (1 << (SqlParser.WEEK - 593)) | (1 << (SqlParser.SECOND - 593)) | (1 << (SqlParser.MICROSECOND - 593)) | (1 << (SqlParser.TABLES - 593)) | (1 << (SqlParser.ROUTINE - 593)) | (1 << (SqlParser.EXECUTE - 593)) | (1 << (SqlParser.FILE - 593)) | (1 << (SqlParser.PROCESS - 593)) | (1 << (SqlParser.RELOAD - 593)) | (1 << (SqlParser.SHUTDOWN - 593)) | (1 << (SqlParser.SUPER - 593)) | (1 << (SqlParser.PRIVILEGES - 593)) | (1 << (SqlParser.AUDIT_ADMIN - 593)) | (1 << (SqlParser.BACKUP_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ENCRYPTION_ADMIN - 593)) | (1 << (SqlParser.CLONE_ADMIN - 593)) | (1 << (SqlParser.CONNECTION_ADMIN - 593)) | (1 << (SqlParser.ENCRYPTION_KEY_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_USER - 593)) | (1 << (SqlParser.GROUP_REPLICATION_ADMIN - 593)) | (1 << (SqlParser.INNODB_REDO_LOG_ARCHIVE - 593)) | (1 << (SqlParser.NDB_STORED_USER - 593)) | (1 << (SqlParser.PERSIST_RO_VARIABLES_ADMIN - 593)))) !== 0) || ((((_la - 625)) & ~0x1f) == 0 && ((1 << (_la - 625)) & ((1 << (SqlParser.REPLICATION_APPLIER - 625)) | (1 << (SqlParser.REPLICATION_SLAVE_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_USER - 625)) | (1 << (SqlParser.ROLE_ADMIN - 625)) | (1 << (SqlParser.SESSION_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.SET_USER_ID - 625)) | (1 << (SqlParser.SHOW_ROUTINE - 625)) | (1 << (SqlParser.SYSTEM_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.TABLE_ENCRYPTION_ADMIN - 625)) | (1 << (SqlParser.VERSION_TOKEN_ADMIN - 625)) | (1 << (SqlParser.XA_RECOVER_ADMIN - 625)) | (1 << (SqlParser.ARMSCII8 - 625)) | (1 << (SqlParser.ASCII - 625)) | (1 << (SqlParser.BIG5 - 625)) | (1 << (SqlParser.CP1250 - 625)) | (1 << (SqlParser.CP1251 - 625)) | (1 << (SqlParser.CP1256 - 625)) | (1 << (SqlParser.CP1257 - 625)) | (1 << (SqlParser.CP850 - 625)) | (1 << (SqlParser.CP852 - 625)) | (1 << (SqlParser.CP866 - 625)) | (1 << (SqlParser.CP932 - 625)) | (1 << (SqlParser.DEC8 - 625)) | (1 << (SqlParser.EUCJPMS - 625)) | (1 << (SqlParser.EUCKR - 625)) | (1 << (SqlParser.GB2312 - 625)) | (1 << (SqlParser.GBK - 625)) | (1 << (SqlParser.GEOSTD8 - 625)) | (1 << (SqlParser.GREEK - 625)) | (1 << (SqlParser.HEBREW - 625)) | (1 << (SqlParser.HP8 - 625)))) !== 0) || ((((_la - 657)) & ~0x1f) == 0 && ((1 << (_la - 657)) & ((1 << (SqlParser.KEYBCS2 - 657)) | (1 << (SqlParser.KOI8R - 657)) | (1 << (SqlParser.KOI8U - 657)) | (1 << (SqlParser.LATIN1 - 657)) | (1 << (SqlParser.LATIN2 - 657)) | (1 << (SqlParser.LATIN5 - 657)) | (1 << (SqlParser.LATIN7 - 657)) | (1 << (SqlParser.MACCE - 657)) | (1 << (SqlParser.MACROMAN - 657)) | (1 << (SqlParser.SJIS - 657)) | (1 << (SqlParser.SWE7 - 657)) | (1 << (SqlParser.TIS620 - 657)) | (1 << (SqlParser.UCS2 - 657)) | (1 << (SqlParser.UJIS - 657)) | (1 << (SqlParser.UTF16 - 657)) | (1 << (SqlParser.UTF16LE - 657)) | (1 << (SqlParser.UTF32 - 657)) | (1 << (SqlParser.UTF8 - 657)) | (1 << (SqlParser.UTF8MB3 - 657)) | (1 << (SqlParser.UTF8MB4 - 657)) | (1 << (SqlParser.ARCHIVE - 657)) | (1 << (SqlParser.BLACKHOLE - 657)) | (1 << (SqlParser.CSV - 657)) | (1 << (SqlParser.FEDERATED - 657)) | (1 << (SqlParser.INNODB - 657)) | (1 << (SqlParser.MEMORY - 657)) | (1 << (SqlParser.MRG_MYISAM - 657)) | (1 << (SqlParser.MYISAM - 657)) | (1 << (SqlParser.NDB - 657)) | (1 << (SqlParser.NDBCLUSTER - 657)) | (1 << (SqlParser.PERFORMANCE_SCHEMA - 657)) | (1 << (SqlParser.TOKUDB - 657)))) !== 0) || ((((_la - 689)) & ~0x1f) == 0 && ((1 << (_la - 689)) & ((1 << (SqlParser.REPEATABLE - 689)) | (1 << (SqlParser.COMMITTED - 689)) | (1 << (SqlParser.UNCOMMITTED - 689)) | (1 << (SqlParser.SERIALIZABLE - 689)) | (1 << (SqlParser.GEOMETRYCOLLECTION - 689)) | (1 << (SqlParser.LINESTRING - 689)) | (1 << (SqlParser.MULTILINESTRING - 689)) | (1 << (SqlParser.MULTIPOINT - 689)) | (1 << (SqlParser.MULTIPOLYGON - 689)) | (1 << (SqlParser.POINT - 689)) | (1 << (SqlParser.POLYGON - 689)) | (1 << (SqlParser.ABS - 689)) | (1 << (SqlParser.ACOS - 689)) | (1 << (SqlParser.ADDDATE - 689)) | (1 << (SqlParser.ADDTIME - 689)) | (1 << (SqlParser.AES_DECRYPT - 689)) | (1 << (SqlParser.AES_ENCRYPT - 689)) | (1 << (SqlParser.AREA - 689)) | (1 << (SqlParser.ASBINARY - 689)) | (1 << (SqlParser.ASIN - 689)) | (1 << (SqlParser.ASTEXT - 689)) | (1 << (SqlParser.ASWKB - 689)) | (1 << (SqlParser.ASWKT - 689)) | (1 << (SqlParser.ASYMMETRIC_DECRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_DERIVE - 689)) | (1 << (SqlParser.ASYMMETRIC_ENCRYPT - 689)) | (1 << (SqlParser.ASYMMETRIC_SIGN - 689)) | (1 << (SqlParser.ASYMMETRIC_VERIFY - 689)) | (1 << (SqlParser.ATAN - 689)) | (1 << (SqlParser.ATAN2 - 689)))) !== 0) || ((((_la - 721)) & ~0x1f) == 0 && ((1 << (_la - 721)) & ((1 << (SqlParser.BENCHMARK - 721)) | (1 << (SqlParser.BIN - 721)) | (1 << (SqlParser.BIT_COUNT - 721)) | (1 << (SqlParser.BIT_LENGTH - 721)) | (1 << (SqlParser.BUFFER - 721)) | (1 << (SqlParser.CATALOG_NAME - 721)) | (1 << (SqlParser.CEIL - 721)) | (1 << (SqlParser.CEILING - 721)) | (1 << (SqlParser.CENTROID - 721)) | (1 << (SqlParser.CHARACTER_LENGTH - 721)) | (1 << (SqlParser.CHARSET - 721)) | (1 << (SqlParser.CHAR_LENGTH - 721)) | (1 << (SqlParser.COERCIBILITY - 721)) | (1 << (SqlParser.COLLATION - 721)) | (1 << (SqlParser.COMPRESS - 721)) | (1 << (SqlParser.CONCAT - 721)) | (1 << (SqlParser.CONCAT_WS - 721)) | (1 << (SqlParser.CONNECTION_ID - 721)) | (1 << (SqlParser.CONV - 721)) | (1 << (SqlParser.CONVERT_TZ - 721)) | (1 << (SqlParser.COS - 721)) | (1 << (SqlParser.COT - 721)) | (1 << (SqlParser.CRC32 - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PRIV_KEY - 721)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PUB_KEY - 721)) | (1 << (SqlParser.CREATE_DH_PARAMETERS - 721)) | (1 << (SqlParser.CREATE_DIGEST - 721)) | (1 << (SqlParser.CROSSES - 721)) | (1 << (SqlParser.DATEDIFF - 721)) | (1 << (SqlParser.DATE_FORMAT - 721)) | (1 << (SqlParser.DAYNAME - 721)) | (1 << (SqlParser.DAYOFMONTH - 721)))) !== 0) || ((((_la - 753)) & ~0x1f) == 0 && ((1 << (_la - 753)) & ((1 << (SqlParser.DAYOFWEEK - 753)) | (1 << (SqlParser.DAYOFYEAR - 753)) | (1 << (SqlParser.DECODE - 753)) | (1 << (SqlParser.DEGREES - 753)) | (1 << (SqlParser.DES_DECRYPT - 753)) | (1 << (SqlParser.DES_ENCRYPT - 753)) | (1 << (SqlParser.DIMENSION - 753)) | (1 << (SqlParser.DISJOINT - 753)) | (1 << (SqlParser.ELT - 753)) | (1 << (SqlParser.ENCODE - 753)) | (1 << (SqlParser.ENCRYPT - 753)) | (1 << (SqlParser.ENDPOINT - 753)) | (1 << (SqlParser.ENVELOPE - 753)) | (1 << (SqlParser.EQUALS - 753)) | (1 << (SqlParser.EXP - 753)) | (1 << (SqlParser.EXPORT_SET - 753)) | (1 << (SqlParser.EXTERIORRING - 753)) | (1 << (SqlParser.EXTRACTVALUE - 753)) | (1 << (SqlParser.FIELD - 753)) | (1 << (SqlParser.FIND_IN_SET - 753)) | (1 << (SqlParser.FLOOR - 753)) | (1 << (SqlParser.FORMAT - 753)) | (1 << (SqlParser.FOUND_ROWS - 753)) | (1 << (SqlParser.FROM_BASE64 - 753)) | (1 << (SqlParser.FROM_DAYS - 753)) | (1 << (SqlParser.FROM_UNIXTIME - 753)) | (1 << (SqlParser.GEOMCOLLFROMTEXT - 753)) | (1 << (SqlParser.GEOMCOLLFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMWKB - 753)) | (1 << (SqlParser.GEOMETRYFROMTEXT - 753)) | (1 << (SqlParser.GEOMETRYFROMWKB - 753)))) !== 0) || ((((_la - 785)) & ~0x1f) == 0 && ((1 << (_la - 785)) & ((1 << (SqlParser.GEOMETRYN - 785)) | (1 << (SqlParser.GEOMETRYTYPE - 785)) | (1 << (SqlParser.GEOMFROMTEXT - 785)) | (1 << (SqlParser.GEOMFROMWKB - 785)) | (1 << (SqlParser.GET_FORMAT - 785)) | (1 << (SqlParser.GET_LOCK - 785)) | (1 << (SqlParser.GLENGTH - 785)) | (1 << (SqlParser.GREATEST - 785)) | (1 << (SqlParser.GTID_SUBSET - 785)) | (1 << (SqlParser.GTID_SUBTRACT - 785)) | (1 << (SqlParser.HEX - 785)) | (1 << (SqlParser.IFNULL - 785)) | (1 << (SqlParser.INET6_ATON - 785)) | (1 << (SqlParser.INET6_NTOA - 785)) | (1 << (SqlParser.INET_ATON - 785)) | (1 << (SqlParser.INET_NTOA - 785)) | (1 << (SqlParser.INSTR - 785)) | (1 << (SqlParser.INTERIORRINGN - 785)) | (1 << (SqlParser.INTERSECTS - 785)) | (1 << (SqlParser.ISCLOSED - 785)) | (1 << (SqlParser.ISEMPTY - 785)) | (1 << (SqlParser.ISNULL - 785)) | (1 << (SqlParser.ISSIMPLE - 785)) | (1 << (SqlParser.IS_FREE_LOCK - 785)) | (1 << (SqlParser.IS_IPV4 - 785)) | (1 << (SqlParser.IS_IPV4_COMPAT - 785)) | (1 << (SqlParser.IS_IPV4_MAPPED - 785)) | (1 << (SqlParser.IS_IPV6 - 785)) | (1 << (SqlParser.IS_USED_LOCK - 785)) | (1 << (SqlParser.LAST_INSERT_ID - 785)) | (1 << (SqlParser.LCASE - 785)) | (1 << (SqlParser.LEAST - 785)))) !== 0) || ((((_la - 817)) & ~0x1f) == 0 && ((1 << (_la - 817)) & ((1 << (SqlParser.LENGTH - 817)) | (1 << (SqlParser.LINEFROMTEXT - 817)) | (1 << (SqlParser.LINEFROMWKB - 817)) | (1 << (SqlParser.LINESTRINGFROMTEXT - 817)) | (1 << (SqlParser.LINESTRINGFROMWKB - 817)) | (1 << (SqlParser.LN - 817)) | (1 << (SqlParser.LOAD_FILE - 817)) | (1 << (SqlParser.LOCATE - 817)) | (1 << (SqlParser.LOG - 817)) | (1 << (SqlParser.LOG10 - 817)) | (1 << (SqlParser.LOG2 - 817)) | (1 << (SqlParser.LOWER - 817)) | (1 << (SqlParser.LPAD - 817)) | (1 << (SqlParser.LTRIM - 817)) | (1 << (SqlParser.MAKEDATE - 817)) | (1 << (SqlParser.MAKETIME - 817)) | (1 << (SqlParser.MAKE_SET - 817)) | (1 << (SqlParser.MASTER_POS_WAIT - 817)) | (1 << (SqlParser.MBRCONTAINS - 817)) | (1 << (SqlParser.MBRDISJOINT - 817)) | (1 << (SqlParser.MBREQUAL - 817)) | (1 << (SqlParser.MBRINTERSECTS - 817)) | (1 << (SqlParser.MBROVERLAPS - 817)) | (1 << (SqlParser.MBRTOUCHES - 817)) | (1 << (SqlParser.MBRWITHIN - 817)) | (1 << (SqlParser.MD5 - 817)) | (1 << (SqlParser.MLINEFROMTEXT - 817)) | (1 << (SqlParser.MLINEFROMWKB - 817)) | (1 << (SqlParser.MONTHNAME - 817)) | (1 << (SqlParser.MPOINTFROMTEXT - 817)) | (1 << (SqlParser.MPOINTFROMWKB - 817)) | (1 << (SqlParser.MPOLYFROMTEXT - 817)))) !== 0) || ((((_la - 849)) & ~0x1f) == 0 && ((1 << (_la - 849)) & ((1 << (SqlParser.MPOLYFROMWKB - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMTEXT - 849)) | (1 << (SqlParser.MULTILINESTRINGFROMWKB - 849)) | (1 << (SqlParser.MULTIPOINTFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOINTFROMWKB - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMTEXT - 849)) | (1 << (SqlParser.MULTIPOLYGONFROMWKB - 849)) | (1 << (SqlParser.NAME_CONST - 849)) | (1 << (SqlParser.NULLIF - 849)) | (1 << (SqlParser.NUMGEOMETRIES - 849)) | (1 << (SqlParser.NUMINTERIORRINGS - 849)) | (1 << (SqlParser.NUMPOINTS - 849)) | (1 << (SqlParser.OCT - 849)) | (1 << (SqlParser.OCTET_LENGTH - 849)) | (1 << (SqlParser.ORD - 849)) | (1 << (SqlParser.OVERLAPS - 849)) | (1 << (SqlParser.PERIOD_ADD - 849)) | (1 << (SqlParser.PERIOD_DIFF - 849)) | (1 << (SqlParser.PI - 849)) | (1 << (SqlParser.POINTFROMTEXT - 849)) | (1 << (SqlParser.POINTFROMWKB - 849)) | (1 << (SqlParser.POINTN - 849)) | (1 << (SqlParser.POLYFROMTEXT - 849)) | (1 << (SqlParser.POLYFROMWKB - 849)) | (1 << (SqlParser.POLYGONFROMTEXT - 849)) | (1 << (SqlParser.POLYGONFROMWKB - 849)) | (1 << (SqlParser.POW - 849)) | (1 << (SqlParser.POWER - 849)) | (1 << (SqlParser.QUOTE - 849)) | (1 << (SqlParser.RADIANS - 849)) | (1 << (SqlParser.RAND - 849)) | (1 << (SqlParser.RANDOM_BYTES - 849)))) !== 0) || ((((_la - 881)) & ~0x1f) == 0 && ((1 << (_la - 881)) & ((1 << (SqlParser.RELEASE_LOCK - 881)) | (1 << (SqlParser.REVERSE - 881)) | (1 << (SqlParser.ROUND - 881)) | (1 << (SqlParser.ROW_COUNT - 881)) | (1 << (SqlParser.RPAD - 881)) | (1 << (SqlParser.RTRIM - 881)) | (1 << (SqlParser.SEC_TO_TIME - 881)) | (1 << (SqlParser.SESSION_USER - 881)) | (1 << (SqlParser.SHA - 881)) | (1 << (SqlParser.SHA1 - 881)) | (1 << (SqlParser.SHA2 - 881)) | (1 << (SqlParser.SCHEMA_NAME - 881)) | (1 << (SqlParser.SIGN - 881)) | (1 << (SqlParser.SIN - 881)) | (1 << (SqlParser.SLEEP - 881)) | (1 << (SqlParser.SOUNDEX - 881)) | (1 << (SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS - 881)) | (1 << (SqlParser.SQRT - 881)) | (1 << (SqlParser.SRID - 881)) | (1 << (SqlParser.STARTPOINT - 881)) | (1 << (SqlParser.STRCMP - 881)) | (1 << (SqlParser.STR_TO_DATE - 881)) | (1 << (SqlParser.ST_AREA - 881)) | (1 << (SqlParser.ST_ASBINARY - 881)) | (1 << (SqlParser.ST_ASTEXT - 881)) | (1 << (SqlParser.ST_ASWKB - 881)) | (1 << (SqlParser.ST_ASWKT - 881)) | (1 << (SqlParser.ST_BUFFER - 881)) | (1 << (SqlParser.ST_CENTROID - 881)) | (1 << (SqlParser.ST_CONTAINS - 881)) | (1 << (SqlParser.ST_CROSSES - 881)) | (1 << (SqlParser.ST_DIFFERENCE - 881)))) !== 0) || ((((_la - 913)) & ~0x1f) == 0 && ((1 << (_la - 913)) & ((1 << (SqlParser.ST_DIMENSION - 913)) | (1 << (SqlParser.ST_DISJOINT - 913)) | (1 << (SqlParser.ST_DISTANCE - 913)) | (1 << (SqlParser.ST_ENDPOINT - 913)) | (1 << (SqlParser.ST_ENVELOPE - 913)) | (1 << (SqlParser.ST_EQUALS - 913)) | (1 << (SqlParser.ST_EXTERIORRING - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMTXT - 913)) | (1 << (SqlParser.ST_GEOMCOLLFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMETRYFROMWKB - 913)) | (1 << (SqlParser.ST_GEOMETRYN - 913)) | (1 << (SqlParser.ST_GEOMETRYTYPE - 913)) | (1 << (SqlParser.ST_GEOMFROMTEXT - 913)) | (1 << (SqlParser.ST_GEOMFROMWKB - 913)) | (1 << (SqlParser.ST_INTERIORRINGN - 913)) | (1 << (SqlParser.ST_INTERSECTION - 913)) | (1 << (SqlParser.ST_INTERSECTS - 913)) | (1 << (SqlParser.ST_ISCLOSED - 913)) | (1 << (SqlParser.ST_ISEMPTY - 913)) | (1 << (SqlParser.ST_ISSIMPLE - 913)) | (1 << (SqlParser.ST_LINEFROMTEXT - 913)) | (1 << (SqlParser.ST_LINEFROMWKB - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMTEXT - 913)) | (1 << (SqlParser.ST_LINESTRINGFROMWKB - 913)) | (1 << (SqlParser.ST_NUMGEOMETRIES - 913)) | (1 << (SqlParser.ST_NUMINTERIORRING - 913)) | (1 << (SqlParser.ST_NUMINTERIORRINGS - 913)) | (1 << (SqlParser.ST_NUMPOINTS - 913)))) !== 0) || ((((_la - 945)) & ~0x1f) == 0 && ((1 << (_la - 945)) & ((1 << (SqlParser.ST_OVERLAPS - 945)) | (1 << (SqlParser.ST_POINTFROMTEXT - 945)) | (1 << (SqlParser.ST_POINTFROMWKB - 945)) | (1 << (SqlParser.ST_POINTN - 945)) | (1 << (SqlParser.ST_POLYFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYFROMWKB - 945)) | (1 << (SqlParser.ST_POLYGONFROMTEXT - 945)) | (1 << (SqlParser.ST_POLYGONFROMWKB - 945)) | (1 << (SqlParser.ST_SRID - 945)) | (1 << (SqlParser.ST_STARTPOINT - 945)) | (1 << (SqlParser.ST_SYMDIFFERENCE - 945)) | (1 << (SqlParser.ST_TOUCHES - 945)) | (1 << (SqlParser.ST_UNION - 945)) | (1 << (SqlParser.ST_WITHIN - 945)) | (1 << (SqlParser.ST_X - 945)) | (1 << (SqlParser.ST_Y - 945)) | (1 << (SqlParser.SUBDATE - 945)) | (1 << (SqlParser.SUBSTRING_INDEX - 945)) | (1 << (SqlParser.SUBTIME - 945)) | (1 << (SqlParser.SYSTEM_USER - 945)) | (1 << (SqlParser.TAN - 945)) | (1 << (SqlParser.TIMEDIFF - 945)) | (1 << (SqlParser.TIMESTAMPADD - 945)) | (1 << (SqlParser.TIMESTAMPDIFF - 945)) | (1 << (SqlParser.TIME_FORMAT - 945)) | (1 << (SqlParser.TIME_TO_SEC - 945)) | (1 << (SqlParser.TOUCHES - 945)) | (1 << (SqlParser.TO_BASE64 - 945)) | (1 << (SqlParser.TO_DAYS - 945)) | (1 << (SqlParser.TO_SECONDS - 945)) | (1 << (SqlParser.UCASE - 945)) | (1 << (SqlParser.UNCOMPRESS - 945)))) !== 0) || ((((_la - 977)) & ~0x1f) == 0 && ((1 << (_la - 977)) & ((1 << (SqlParser.UNCOMPRESSED_LENGTH - 977)) | (1 << (SqlParser.UNHEX - 977)) | (1 << (SqlParser.UNIX_TIMESTAMP - 977)) | (1 << (SqlParser.UPDATEXML - 977)) | (1 << (SqlParser.UPPER - 977)) | (1 << (SqlParser.UUID - 977)) | (1 << (SqlParser.UUID_SHORT - 977)) | (1 << (SqlParser.VALIDATE_PASSWORD_STRENGTH - 977)) | (1 << (SqlParser.VERSION - 977)) | (1 << (SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS - 977)) | (1 << (SqlParser.WEEKDAY - 977)) | (1 << (SqlParser.WEEKOFYEAR - 977)) | (1 << (SqlParser.WEIGHT_STRING - 977)) | (1 << (SqlParser.WITHIN - 977)) | (1 << (SqlParser.YEARWEEK - 977)) | (1 << (SqlParser.Y_FUNCTION - 977)) | (1 << (SqlParser.X_FUNCTION - 977)))) !== 0) || ((((_la - 1032)) & ~0x1f) == 0 && ((1 << (_la - 1032)) & ((1 << (SqlParser.CHARSET_REVERSE_QOUTE_STRING - 1032)) | (1 << (SqlParser.STRING_LITERAL - 1032)) | (1 << (SqlParser.ID - 1032)) | (1 << (SqlParser.REVERSE_QUOTE_ID - 1032)))) !== 0)) {
+ this.state = 4266;
+ this.uid();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function CursorStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_cursorStatement;
+ return this;
+}
+
+CursorStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+CursorStatementContext.prototype.constructor = CursorStatementContext;
+
+
+
+CursorStatementContext.prototype.copyFrom = function(ctx) {
+ antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx);
+};
+
+
+function CloseCursorContext(parser, ctx) {
+ CursorStatementContext.call(this, parser);
+ CursorStatementContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+CloseCursorContext.prototype = Object.create(CursorStatementContext.prototype);
+CloseCursorContext.prototype.constructor = CloseCursorContext;
+
+SqlParser.CloseCursorContext = CloseCursorContext;
+
+CloseCursorContext.prototype.CLOSE = function() {
+ return this.getToken(SqlParser.CLOSE, 0);
+};
+
+CloseCursorContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+CloseCursorContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterCloseCursor(this);
+ }
+};
+
+CloseCursorContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitCloseCursor(this);
+ }
+};
+
+CloseCursorContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitCloseCursor(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function OpenCursorContext(parser, ctx) {
+ CursorStatementContext.call(this, parser);
+ CursorStatementContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+OpenCursorContext.prototype = Object.create(CursorStatementContext.prototype);
+OpenCursorContext.prototype.constructor = OpenCursorContext;
+
+SqlParser.OpenCursorContext = OpenCursorContext;
+
+OpenCursorContext.prototype.OPEN = function() {
+ return this.getToken(SqlParser.OPEN, 0);
+};
+
+OpenCursorContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+OpenCursorContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterOpenCursor(this);
+ }
+};
+
+OpenCursorContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitOpenCursor(this);
+ }
+};
+
+OpenCursorContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitOpenCursor(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function FetchCursorContext(parser, ctx) {
+ CursorStatementContext.call(this, parser);
+ CursorStatementContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+FetchCursorContext.prototype = Object.create(CursorStatementContext.prototype);
+FetchCursorContext.prototype.constructor = FetchCursorContext;
+
+SqlParser.FetchCursorContext = FetchCursorContext;
+
+FetchCursorContext.prototype.FETCH = function() {
+ return this.getToken(SqlParser.FETCH, 0);
+};
+
+FetchCursorContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+FetchCursorContext.prototype.INTO = function() {
+ return this.getToken(SqlParser.INTO, 0);
+};
+
+FetchCursorContext.prototype.uidList = function() {
+ return this.getTypedRuleContext(UidListContext,0);
+};
+
+FetchCursorContext.prototype.FROM = function() {
+ return this.getToken(SqlParser.FROM, 0);
+};
+
+FetchCursorContext.prototype.NEXT = function() {
+ return this.getToken(SqlParser.NEXT, 0);
+};
+FetchCursorContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterFetchCursor(this);
+ }
+};
+
+FetchCursorContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitFetchCursor(this);
+ }
+};
+
+FetchCursorContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitFetchCursor(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+SqlParser.CursorStatementContext = CursorStatementContext;
+
+SqlParser.prototype.cursorStatement = function() {
+
+ var localctx = new CursorStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 366, SqlParser.RULE_cursorStatement);
+ var _la = 0; // Token type
+ try {
+ this.state = 4284;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.CLOSE:
+ localctx = new CloseCursorContext(this, localctx);
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4269;
+ this.match(SqlParser.CLOSE);
+ this.state = 4270;
+ this.uid();
+ break;
+ case SqlParser.FETCH:
+ localctx = new FetchCursorContext(this, localctx);
+ this.enterOuterAlt(localctx, 2);
+ this.state = 4271;
+ this.match(SqlParser.FETCH);
+ this.state = 4276;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,616,this._ctx);
+ if(la_===1) {
+ this.state = 4273;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.NEXT) {
+ this.state = 4272;
+ this.match(SqlParser.NEXT);
+ }
+
+ this.state = 4275;
+ this.match(SqlParser.FROM);
+
+ }
+ this.state = 4278;
+ this.uid();
+ this.state = 4279;
+ this.match(SqlParser.INTO);
+ this.state = 4280;
+ this.uidList();
+ break;
+ case SqlParser.OPEN:
+ localctx = new OpenCursorContext(this, localctx);
+ this.enterOuterAlt(localctx, 3);
+ this.state = 4282;
+ this.match(SqlParser.OPEN);
+ this.state = 4283;
+ this.uid();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function DeclareVariableContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_declareVariable;
+ return this;
+}
+
+DeclareVariableContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+DeclareVariableContext.prototype.constructor = DeclareVariableContext;
+
+DeclareVariableContext.prototype.DECLARE = function() {
+ return this.getToken(SqlParser.DECLARE, 0);
+};
+
+DeclareVariableContext.prototype.uidList = function() {
+ return this.getTypedRuleContext(UidListContext,0);
+};
+
+DeclareVariableContext.prototype.dataType = function() {
+ return this.getTypedRuleContext(DataTypeContext,0);
+};
+
+DeclareVariableContext.prototype.DEFAULT = function() {
+ return this.getToken(SqlParser.DEFAULT, 0);
+};
+
+DeclareVariableContext.prototype.defaultValue = function() {
+ return this.getTypedRuleContext(DefaultValueContext,0);
+};
+
+DeclareVariableContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterDeclareVariable(this);
+ }
+};
+
+DeclareVariableContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitDeclareVariable(this);
+ }
+};
+
+DeclareVariableContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitDeclareVariable(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.DeclareVariableContext = DeclareVariableContext;
+
+SqlParser.prototype.declareVariable = function() {
+
+ var localctx = new DeclareVariableContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 368, SqlParser.RULE_declareVariable);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4286;
+ this.match(SqlParser.DECLARE);
+ this.state = 4287;
+ this.uidList();
+ this.state = 4288;
+ this.dataType();
+ this.state = 4291;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.DEFAULT) {
+ this.state = 4289;
+ this.match(SqlParser.DEFAULT);
+ this.state = 4290;
+ this.defaultValue();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function DeclareConditionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_declareCondition;
+ return this;
+}
+
+DeclareConditionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+DeclareConditionContext.prototype.constructor = DeclareConditionContext;
+
+DeclareConditionContext.prototype.DECLARE = function() {
+ return this.getToken(SqlParser.DECLARE, 0);
+};
+
+DeclareConditionContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+DeclareConditionContext.prototype.CONDITION = function() {
+ return this.getToken(SqlParser.CONDITION, 0);
+};
+
+DeclareConditionContext.prototype.FOR = function() {
+ return this.getToken(SqlParser.FOR, 0);
+};
+
+DeclareConditionContext.prototype.decimalLiteral = function() {
+ return this.getTypedRuleContext(DecimalLiteralContext,0);
+};
+
+DeclareConditionContext.prototype.SQLSTATE = function() {
+ return this.getToken(SqlParser.SQLSTATE, 0);
+};
+
+DeclareConditionContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+DeclareConditionContext.prototype.VALUE = function() {
+ return this.getToken(SqlParser.VALUE, 0);
+};
+
+DeclareConditionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterDeclareCondition(this);
+ }
+};
+
+DeclareConditionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitDeclareCondition(this);
+ }
+};
+
+DeclareConditionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitDeclareCondition(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.DeclareConditionContext = DeclareConditionContext;
+
+SqlParser.prototype.declareCondition = function() {
+
+ var localctx = new DeclareConditionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 370, SqlParser.RULE_declareCondition);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4293;
+ this.match(SqlParser.DECLARE);
+ this.state = 4294;
+ this.uid();
+ this.state = 4295;
+ this.match(SqlParser.CONDITION);
+ this.state = 4296;
+ this.match(SqlParser.FOR);
+ this.state = 4303;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.ZERO_DECIMAL:
+ case SqlParser.ONE_DECIMAL:
+ case SqlParser.TWO_DECIMAL:
+ case SqlParser.DECIMAL_LITERAL:
+ this.state = 4297;
+ this.decimalLiteral();
+ break;
+ case SqlParser.SQLSTATE:
+ this.state = 4298;
+ this.match(SqlParser.SQLSTATE);
+ this.state = 4300;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.VALUE) {
+ this.state = 4299;
+ this.match(SqlParser.VALUE);
+ }
+
+ this.state = 4302;
+ this.match(SqlParser.STRING_LITERAL);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function DeclareCursorContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_declareCursor;
+ return this;
+}
+
+DeclareCursorContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+DeclareCursorContext.prototype.constructor = DeclareCursorContext;
+
+DeclareCursorContext.prototype.DECLARE = function() {
+ return this.getToken(SqlParser.DECLARE, 0);
+};
+
+DeclareCursorContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+DeclareCursorContext.prototype.CURSOR = function() {
+ return this.getToken(SqlParser.CURSOR, 0);
+};
+
+DeclareCursorContext.prototype.FOR = function() {
+ return this.getToken(SqlParser.FOR, 0);
+};
+
+DeclareCursorContext.prototype.selectStatement = function() {
+ return this.getTypedRuleContext(SelectStatementContext,0);
+};
+
+DeclareCursorContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterDeclareCursor(this);
+ }
+};
+
+DeclareCursorContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitDeclareCursor(this);
+ }
+};
+
+DeclareCursorContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitDeclareCursor(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.DeclareCursorContext = DeclareCursorContext;
+
+SqlParser.prototype.declareCursor = function() {
+
+ var localctx = new DeclareCursorContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 372, SqlParser.RULE_declareCursor);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4305;
+ this.match(SqlParser.DECLARE);
+ this.state = 4306;
+ this.uid();
+ this.state = 4307;
+ this.match(SqlParser.CURSOR);
+ this.state = 4308;
+ this.match(SqlParser.FOR);
+ this.state = 4309;
+ this.selectStatement();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function DeclareHandlerContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_declareHandler;
+ this.handlerAction = null; // Token
+ return this;
+}
+
+DeclareHandlerContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+DeclareHandlerContext.prototype.constructor = DeclareHandlerContext;
+
+DeclareHandlerContext.prototype.DECLARE = function() {
+ return this.getToken(SqlParser.DECLARE, 0);
+};
+
+DeclareHandlerContext.prototype.HANDLER = function() {
+ return this.getToken(SqlParser.HANDLER, 0);
+};
+
+DeclareHandlerContext.prototype.FOR = function() {
+ return this.getToken(SqlParser.FOR, 0);
+};
+
+DeclareHandlerContext.prototype.handlerConditionValue = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(HandlerConditionValueContext);
+ } else {
+ return this.getTypedRuleContext(HandlerConditionValueContext,i);
+ }
+};
+
+DeclareHandlerContext.prototype.routineBody = function() {
+ return this.getTypedRuleContext(RoutineBodyContext,0);
+};
+
+DeclareHandlerContext.prototype.CONTINUE = function() {
+ return this.getToken(SqlParser.CONTINUE, 0);
+};
+
+DeclareHandlerContext.prototype.EXIT = function() {
+ return this.getToken(SqlParser.EXIT, 0);
+};
+
+DeclareHandlerContext.prototype.UNDO = function() {
+ return this.getToken(SqlParser.UNDO, 0);
+};
+
+DeclareHandlerContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+DeclareHandlerContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterDeclareHandler(this);
+ }
+};
+
+DeclareHandlerContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitDeclareHandler(this);
+ }
+};
+
+DeclareHandlerContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitDeclareHandler(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.DeclareHandlerContext = DeclareHandlerContext;
+
+SqlParser.prototype.declareHandler = function() {
+
+ var localctx = new DeclareHandlerContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 374, SqlParser.RULE_declareHandler);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4311;
+ this.match(SqlParser.DECLARE);
+ this.state = 4312;
+ localctx.handlerAction = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.CONTINUE || _la===SqlParser.EXIT || _la===SqlParser.UNDO)) {
+ localctx.handlerAction = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 4313;
+ this.match(SqlParser.HANDLER);
+ this.state = 4314;
+ this.match(SqlParser.FOR);
+ this.state = 4315;
+ this.handlerConditionValue();
+ this.state = 4320;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 4316;
+ this.match(SqlParser.COMMA);
+ this.state = 4317;
+ this.handlerConditionValue();
+ this.state = 4322;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 4323;
+ this.routineBody();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function HandlerConditionValueContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_handlerConditionValue;
+ return this;
+}
+
+HandlerConditionValueContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+HandlerConditionValueContext.prototype.constructor = HandlerConditionValueContext;
+
+
+
+HandlerConditionValueContext.prototype.copyFrom = function(ctx) {
+ antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx);
+};
+
+
+function HandlerConditionWarningContext(parser, ctx) {
+ HandlerConditionValueContext.call(this, parser);
+ HandlerConditionValueContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+HandlerConditionWarningContext.prototype = Object.create(HandlerConditionValueContext.prototype);
+HandlerConditionWarningContext.prototype.constructor = HandlerConditionWarningContext;
+
+SqlParser.HandlerConditionWarningContext = HandlerConditionWarningContext;
+
+HandlerConditionWarningContext.prototype.SQLWARNING = function() {
+ return this.getToken(SqlParser.SQLWARNING, 0);
+};
+HandlerConditionWarningContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterHandlerConditionWarning(this);
+ }
+};
+
+HandlerConditionWarningContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitHandlerConditionWarning(this);
+ }
+};
+
+HandlerConditionWarningContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitHandlerConditionWarning(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function HandlerConditionCodeContext(parser, ctx) {
+ HandlerConditionValueContext.call(this, parser);
+ HandlerConditionValueContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+HandlerConditionCodeContext.prototype = Object.create(HandlerConditionValueContext.prototype);
+HandlerConditionCodeContext.prototype.constructor = HandlerConditionCodeContext;
+
+SqlParser.HandlerConditionCodeContext = HandlerConditionCodeContext;
+
+HandlerConditionCodeContext.prototype.decimalLiteral = function() {
+ return this.getTypedRuleContext(DecimalLiteralContext,0);
+};
+HandlerConditionCodeContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterHandlerConditionCode(this);
+ }
+};
+
+HandlerConditionCodeContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitHandlerConditionCode(this);
+ }
+};
+
+HandlerConditionCodeContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitHandlerConditionCode(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function HandlerConditionNotfoundContext(parser, ctx) {
+ HandlerConditionValueContext.call(this, parser);
+ HandlerConditionValueContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+HandlerConditionNotfoundContext.prototype = Object.create(HandlerConditionValueContext.prototype);
+HandlerConditionNotfoundContext.prototype.constructor = HandlerConditionNotfoundContext;
+
+SqlParser.HandlerConditionNotfoundContext = HandlerConditionNotfoundContext;
+
+HandlerConditionNotfoundContext.prototype.NOT = function() {
+ return this.getToken(SqlParser.NOT, 0);
+};
+
+HandlerConditionNotfoundContext.prototype.FOUND = function() {
+ return this.getToken(SqlParser.FOUND, 0);
+};
+HandlerConditionNotfoundContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterHandlerConditionNotfound(this);
+ }
+};
+
+HandlerConditionNotfoundContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitHandlerConditionNotfound(this);
+ }
+};
+
+HandlerConditionNotfoundContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitHandlerConditionNotfound(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function HandlerConditionStateContext(parser, ctx) {
+ HandlerConditionValueContext.call(this, parser);
+ HandlerConditionValueContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+HandlerConditionStateContext.prototype = Object.create(HandlerConditionValueContext.prototype);
+HandlerConditionStateContext.prototype.constructor = HandlerConditionStateContext;
+
+SqlParser.HandlerConditionStateContext = HandlerConditionStateContext;
+
+HandlerConditionStateContext.prototype.SQLSTATE = function() {
+ return this.getToken(SqlParser.SQLSTATE, 0);
+};
+
+HandlerConditionStateContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+HandlerConditionStateContext.prototype.VALUE = function() {
+ return this.getToken(SqlParser.VALUE, 0);
+};
+HandlerConditionStateContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterHandlerConditionState(this);
+ }
+};
+
+HandlerConditionStateContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitHandlerConditionState(this);
+ }
+};
+
+HandlerConditionStateContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitHandlerConditionState(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function HandlerConditionExceptionContext(parser, ctx) {
+ HandlerConditionValueContext.call(this, parser);
+ HandlerConditionValueContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+HandlerConditionExceptionContext.prototype = Object.create(HandlerConditionValueContext.prototype);
+HandlerConditionExceptionContext.prototype.constructor = HandlerConditionExceptionContext;
+
+SqlParser.HandlerConditionExceptionContext = HandlerConditionExceptionContext;
+
+HandlerConditionExceptionContext.prototype.SQLEXCEPTION = function() {
+ return this.getToken(SqlParser.SQLEXCEPTION, 0);
+};
+HandlerConditionExceptionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterHandlerConditionException(this);
+ }
+};
+
+HandlerConditionExceptionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitHandlerConditionException(this);
+ }
+};
+
+HandlerConditionExceptionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitHandlerConditionException(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function HandlerConditionNameContext(parser, ctx) {
+ HandlerConditionValueContext.call(this, parser);
+ HandlerConditionValueContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+HandlerConditionNameContext.prototype = Object.create(HandlerConditionValueContext.prototype);
+HandlerConditionNameContext.prototype.constructor = HandlerConditionNameContext;
+
+SqlParser.HandlerConditionNameContext = HandlerConditionNameContext;
+
+HandlerConditionNameContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+HandlerConditionNameContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterHandlerConditionName(this);
+ }
+};
+
+HandlerConditionNameContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitHandlerConditionName(this);
+ }
+};
+
+HandlerConditionNameContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitHandlerConditionName(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+SqlParser.HandlerConditionValueContext = HandlerConditionValueContext;
+
+SqlParser.prototype.handlerConditionValue = function() {
+
+ var localctx = new HandlerConditionValueContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 376, SqlParser.RULE_handlerConditionValue);
+ var _la = 0; // Token type
+ try {
+ this.state = 4336;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.ZERO_DECIMAL:
+ case SqlParser.ONE_DECIMAL:
+ case SqlParser.TWO_DECIMAL:
+ case SqlParser.DECIMAL_LITERAL:
+ localctx = new HandlerConditionCodeContext(this, localctx);
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4325;
+ this.decimalLiteral();
+ break;
+ case SqlParser.SQLSTATE:
+ localctx = new HandlerConditionStateContext(this, localctx);
+ this.enterOuterAlt(localctx, 2);
+ this.state = 4326;
+ this.match(SqlParser.SQLSTATE);
+ this.state = 4328;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.VALUE) {
+ this.state = 4327;
+ this.match(SqlParser.VALUE);
+ }
+
+ this.state = 4330;
+ this.match(SqlParser.STRING_LITERAL);
+ break;
+ case SqlParser.CURRENT:
+ case SqlParser.DATABASE:
+ case SqlParser.DIAGNOSTICS:
+ case SqlParser.LEFT:
+ case SqlParser.NUMBER:
+ case SqlParser.RIGHT:
+ case SqlParser.STACKED:
+ case SqlParser.DATE:
+ case SqlParser.TIME:
+ case SqlParser.TIMESTAMP:
+ case SqlParser.DATETIME:
+ case SqlParser.YEAR:
+ case SqlParser.TEXT:
+ case SqlParser.ENUM:
+ case SqlParser.SERIAL:
+ case SqlParser.JSON_VALID:
+ case SqlParser.JSON_SCHEMA_VALID:
+ case SqlParser.COUNT:
+ case SqlParser.POSITION:
+ case SqlParser.ACCOUNT:
+ case SqlParser.ACTION:
+ case SqlParser.AFTER:
+ case SqlParser.AGGREGATE:
+ case SqlParser.ALGORITHM:
+ case SqlParser.ANY:
+ case SqlParser.AT:
+ case SqlParser.AUTHORS:
+ case SqlParser.AUTOCOMMIT:
+ case SqlParser.AUTOEXTEND_SIZE:
+ case SqlParser.AUTO_INCREMENT:
+ case SqlParser.AVG_ROW_LENGTH:
+ case SqlParser.BEGIN:
+ case SqlParser.BINLOG:
+ case SqlParser.BIT:
+ case SqlParser.BLOCK:
+ case SqlParser.BOOL:
+ case SqlParser.BOOLEAN:
+ case SqlParser.BTREE:
+ case SqlParser.CACHE:
+ case SqlParser.CASCADED:
+ case SqlParser.CHAIN:
+ case SqlParser.CHANGED:
+ case SqlParser.CHANNEL:
+ case SqlParser.CHECKSUM:
+ case SqlParser.PAGE_CHECKSUM:
+ case SqlParser.CIPHER:
+ case SqlParser.CLASS_ORIGIN:
+ case SqlParser.CLIENT:
+ case SqlParser.CLOSE:
+ case SqlParser.COALESCE:
+ case SqlParser.CODE:
+ case SqlParser.COLUMNS:
+ case SqlParser.COLUMN_FORMAT:
+ case SqlParser.COLUMN_NAME:
+ case SqlParser.COMMENT:
+ case SqlParser.COMMIT:
+ case SqlParser.COMPACT:
+ case SqlParser.COMPLETION:
+ case SqlParser.COMPRESSED:
+ case SqlParser.COMPRESSION:
+ case SqlParser.CONCURRENT:
+ case SqlParser.CONNECTION:
+ case SqlParser.CONSISTENT:
+ case SqlParser.CONSTRAINT_CATALOG:
+ case SqlParser.CONSTRAINT_SCHEMA:
+ case SqlParser.CONSTRAINT_NAME:
+ case SqlParser.CONTAINS:
+ case SqlParser.CONTEXT:
+ case SqlParser.CONTRIBUTORS:
+ case SqlParser.COPY:
+ case SqlParser.CPU:
+ case SqlParser.CURSOR_NAME:
+ case SqlParser.DATA:
+ case SqlParser.DATAFILE:
+ case SqlParser.DEALLOCATE:
+ case SqlParser.DEFAULT_AUTH:
+ case SqlParser.DEFINER:
+ case SqlParser.DELAY_KEY_WRITE:
+ case SqlParser.DES_KEY_FILE:
+ case SqlParser.DIRECTORY:
+ case SqlParser.DISABLE:
+ case SqlParser.DISCARD:
+ case SqlParser.DISK:
+ case SqlParser.DO:
+ case SqlParser.DUMPFILE:
+ case SqlParser.DUPLICATE:
+ case SqlParser.DYNAMIC:
+ case SqlParser.ENABLE:
+ case SqlParser.ENCRYPTION:
+ case SqlParser.END:
+ case SqlParser.ENDS:
+ case SqlParser.ENGINE:
+ case SqlParser.ENGINES:
+ case SqlParser.ERROR:
+ case SqlParser.ERRORS:
+ case SqlParser.ESCAPE:
+ case SqlParser.EVEN:
+ case SqlParser.EVENT:
+ case SqlParser.EVENTS:
+ case SqlParser.EVERY:
+ case SqlParser.EXCHANGE:
+ case SqlParser.EXCLUSIVE:
+ case SqlParser.EXPIRE:
+ case SqlParser.EXPORT:
+ case SqlParser.EXTENDED:
+ case SqlParser.EXTENT_SIZE:
+ case SqlParser.FAST:
+ case SqlParser.FAULTS:
+ case SqlParser.FIELDS:
+ case SqlParser.FILE_BLOCK_SIZE:
+ case SqlParser.FILTER:
+ case SqlParser.FIRST:
+ case SqlParser.FIXED:
+ case SqlParser.FLUSH:
+ case SqlParser.FOLLOWS:
+ case SqlParser.FOUND:
+ case SqlParser.FULL:
+ case SqlParser.FUNCTION:
+ case SqlParser.GENERAL:
+ case SqlParser.GLOBAL:
+ case SqlParser.GRANTS:
+ case SqlParser.GROUP_REPLICATION:
+ case SqlParser.HANDLER:
+ case SqlParser.HASH:
+ case SqlParser.HELP:
+ case SqlParser.HOST:
+ case SqlParser.HOSTS:
+ case SqlParser.IDENTIFIED:
+ case SqlParser.IGNORE_SERVER_IDS:
+ case SqlParser.IMPORT:
+ case SqlParser.INDEXES:
+ case SqlParser.INITIAL_SIZE:
+ case SqlParser.INPLACE:
+ case SqlParser.INSERT_METHOD:
+ case SqlParser.INSTALL:
+ case SqlParser.INSTANCE:
+ case SqlParser.INVISIBLE:
+ case SqlParser.INVOKER:
+ case SqlParser.IO:
+ case SqlParser.IO_THREAD:
+ case SqlParser.IPC:
+ case SqlParser.ISOLATION:
+ case SqlParser.ISSUER:
+ case SqlParser.JSON:
+ case SqlParser.KEY_BLOCK_SIZE:
+ case SqlParser.LANGUAGE:
+ case SqlParser.LAST:
+ case SqlParser.LEAVES:
+ case SqlParser.LESS:
+ case SqlParser.LEVEL:
+ case SqlParser.LIST:
+ case SqlParser.LOCAL:
+ case SqlParser.LOGFILE:
+ case SqlParser.LOGS:
+ case SqlParser.MASTER:
+ case SqlParser.MASTER_AUTO_POSITION:
+ case SqlParser.MASTER_CONNECT_RETRY:
+ case SqlParser.MASTER_DELAY:
+ case SqlParser.MASTER_HEARTBEAT_PERIOD:
+ case SqlParser.MASTER_HOST:
+ case SqlParser.MASTER_LOG_FILE:
+ case SqlParser.MASTER_LOG_POS:
+ case SqlParser.MASTER_PASSWORD:
+ case SqlParser.MASTER_PORT:
+ case SqlParser.MASTER_RETRY_COUNT:
+ case SqlParser.MASTER_SSL:
+ case SqlParser.MASTER_SSL_CA:
+ case SqlParser.MASTER_SSL_CAPATH:
+ case SqlParser.MASTER_SSL_CERT:
+ case SqlParser.MASTER_SSL_CIPHER:
+ case SqlParser.MASTER_SSL_CRL:
+ case SqlParser.MASTER_SSL_CRLPATH:
+ case SqlParser.MASTER_SSL_KEY:
+ case SqlParser.MASTER_TLS_VERSION:
+ case SqlParser.MASTER_USER:
+ case SqlParser.MAX_CONNECTIONS_PER_HOUR:
+ case SqlParser.MAX_QUERIES_PER_HOUR:
+ case SqlParser.MAX_ROWS:
+ case SqlParser.MAX_SIZE:
+ case SqlParser.MAX_UPDATES_PER_HOUR:
+ case SqlParser.MAX_USER_CONNECTIONS:
+ case SqlParser.MEDIUM:
+ case SqlParser.MERGE:
+ case SqlParser.MESSAGE_TEXT:
+ case SqlParser.MID:
+ case SqlParser.MIGRATE:
+ case SqlParser.MIN_ROWS:
+ case SqlParser.MODE:
+ case SqlParser.MODIFY:
+ case SqlParser.MUTEX:
+ case SqlParser.MYSQL:
+ case SqlParser.MYSQL_ERRNO:
+ case SqlParser.NAME:
+ case SqlParser.NAMES:
+ case SqlParser.NCHAR:
+ case SqlParser.NEVER:
+ case SqlParser.NEXT:
+ case SqlParser.NO:
+ case SqlParser.NODEGROUP:
+ case SqlParser.NONE:
+ case SqlParser.OFFLINE:
+ case SqlParser.OFFSET:
+ case SqlParser.OJ:
+ case SqlParser.OLD_PASSWORD:
+ case SqlParser.ONE:
+ case SqlParser.ONLINE:
+ case SqlParser.ONLY:
+ case SqlParser.OPEN:
+ case SqlParser.OPTIMIZER_COSTS:
+ case SqlParser.OPTIONS:
+ case SqlParser.OWNER:
+ case SqlParser.PACK_KEYS:
+ case SqlParser.PAGE:
+ case SqlParser.PARSER:
+ case SqlParser.PARTIAL:
+ case SqlParser.PARTITIONING:
+ case SqlParser.PARTITIONS:
+ case SqlParser.PASSWORD:
+ case SqlParser.PHASE:
+ case SqlParser.PLUGIN:
+ case SqlParser.PLUGIN_DIR:
+ case SqlParser.PLUGINS:
+ case SqlParser.PORT:
+ case SqlParser.PRECEDES:
+ case SqlParser.PREPARE:
+ case SqlParser.PRESERVE:
+ case SqlParser.PREV:
+ case SqlParser.PROCESSLIST:
+ case SqlParser.PROFILE:
+ case SqlParser.PROFILES:
+ case SqlParser.PROXY:
+ case SqlParser.QUERY:
+ case SqlParser.QUICK:
+ case SqlParser.REBUILD:
+ case SqlParser.RECOVER:
+ case SqlParser.REDO_BUFFER_SIZE:
+ case SqlParser.REDUNDANT:
+ case SqlParser.RELAY:
+ case SqlParser.RELAY_LOG_FILE:
+ case SqlParser.RELAY_LOG_POS:
+ case SqlParser.RELAYLOG:
+ case SqlParser.REMOVE:
+ case SqlParser.REORGANIZE:
+ case SqlParser.REPAIR:
+ case SqlParser.REPLICATE_DO_DB:
+ case SqlParser.REPLICATE_DO_TABLE:
+ case SqlParser.REPLICATE_IGNORE_DB:
+ case SqlParser.REPLICATE_IGNORE_TABLE:
+ case SqlParser.REPLICATE_REWRITE_DB:
+ case SqlParser.REPLICATE_WILD_DO_TABLE:
+ case SqlParser.REPLICATE_WILD_IGNORE_TABLE:
+ case SqlParser.REPLICATION:
+ case SqlParser.RESET:
+ case SqlParser.RESUME:
+ case SqlParser.RETURNED_SQLSTATE:
+ case SqlParser.RETURNS:
+ case SqlParser.ROLE:
+ case SqlParser.ROLLBACK:
+ case SqlParser.ROLLUP:
+ case SqlParser.ROTATE:
+ case SqlParser.ROW:
+ case SqlParser.ROWS:
+ case SqlParser.ROW_FORMAT:
+ case SqlParser.SAVEPOINT:
+ case SqlParser.SCHEDULE:
+ case SqlParser.SECURITY:
+ case SqlParser.SERVER:
+ case SqlParser.SESSION:
+ case SqlParser.SHARE:
+ case SqlParser.SHARED:
+ case SqlParser.SIGNED:
+ case SqlParser.SIMPLE:
+ case SqlParser.SLAVE:
+ case SqlParser.SLOW:
+ case SqlParser.SNAPSHOT:
+ case SqlParser.SOCKET:
+ case SqlParser.SOME:
+ case SqlParser.SONAME:
+ case SqlParser.SOUNDS:
+ case SqlParser.SOURCE:
+ case SqlParser.SQL_AFTER_GTIDS:
+ case SqlParser.SQL_AFTER_MTS_GAPS:
+ case SqlParser.SQL_BEFORE_GTIDS:
+ case SqlParser.SQL_BUFFER_RESULT:
+ case SqlParser.SQL_CACHE:
+ case SqlParser.SQL_NO_CACHE:
+ case SqlParser.SQL_THREAD:
+ case SqlParser.START:
+ case SqlParser.STARTS:
+ case SqlParser.STATS_AUTO_RECALC:
+ case SqlParser.STATS_PERSISTENT:
+ case SqlParser.STATS_SAMPLE_PAGES:
+ case SqlParser.STATUS:
+ case SqlParser.STOP:
+ case SqlParser.STORAGE:
+ case SqlParser.STRING:
+ case SqlParser.SUBCLASS_ORIGIN:
+ case SqlParser.SUBJECT:
+ case SqlParser.SUBPARTITION:
+ case SqlParser.SUBPARTITIONS:
+ case SqlParser.SUSPEND:
+ case SqlParser.SWAPS:
+ case SqlParser.SWITCHES:
+ case SqlParser.TABLE_NAME:
+ case SqlParser.TABLESPACE:
+ case SqlParser.TEMPORARY:
+ case SqlParser.TEMPTABLE:
+ case SqlParser.THAN:
+ case SqlParser.TRADITIONAL:
+ case SqlParser.TRANSACTION:
+ case SqlParser.TRANSACTIONAL:
+ case SqlParser.TRIGGERS:
+ case SqlParser.TRUNCATE:
+ case SqlParser.UNDEFINED:
+ case SqlParser.UNDOFILE:
+ case SqlParser.UNDO_BUFFER_SIZE:
+ case SqlParser.UNINSTALL:
+ case SqlParser.UNKNOWN:
+ case SqlParser.UNTIL:
+ case SqlParser.UPGRADE:
+ case SqlParser.USER:
+ case SqlParser.USE_FRM:
+ case SqlParser.USER_RESOURCES:
+ case SqlParser.VALIDATION:
+ case SqlParser.VALUE:
+ case SqlParser.VARIABLES:
+ case SqlParser.VIEW:
+ case SqlParser.VISIBLE:
+ case SqlParser.WAIT:
+ case SqlParser.WARNINGS:
+ case SqlParser.WITHOUT:
+ case SqlParser.WORK:
+ case SqlParser.WRAPPER:
+ case SqlParser.X509:
+ case SqlParser.XA:
+ case SqlParser.XML:
+ case SqlParser.INTERNAL:
+ case SqlParser.QUARTER:
+ case SqlParser.MONTH:
+ case SqlParser.DAY:
+ case SqlParser.HOUR:
+ case SqlParser.MINUTE:
+ case SqlParser.WEEK:
+ case SqlParser.SECOND:
+ case SqlParser.MICROSECOND:
+ case SqlParser.TABLES:
+ case SqlParser.ROUTINE:
+ case SqlParser.EXECUTE:
+ case SqlParser.FILE:
+ case SqlParser.PROCESS:
+ case SqlParser.RELOAD:
+ case SqlParser.SHUTDOWN:
+ case SqlParser.SUPER:
+ case SqlParser.PRIVILEGES:
+ case SqlParser.AUDIT_ADMIN:
+ case SqlParser.BACKUP_ADMIN:
+ case SqlParser.BINLOG_ADMIN:
+ case SqlParser.BINLOG_ENCRYPTION_ADMIN:
+ case SqlParser.CLONE_ADMIN:
+ case SqlParser.CONNECTION_ADMIN:
+ case SqlParser.ENCRYPTION_KEY_ADMIN:
+ case SqlParser.FIREWALL_ADMIN:
+ case SqlParser.FIREWALL_USER:
+ case SqlParser.GROUP_REPLICATION_ADMIN:
+ case SqlParser.INNODB_REDO_LOG_ARCHIVE:
+ case SqlParser.NDB_STORED_USER:
+ case SqlParser.PERSIST_RO_VARIABLES_ADMIN:
+ case SqlParser.REPLICATION_APPLIER:
+ case SqlParser.REPLICATION_SLAVE_ADMIN:
+ case SqlParser.RESOURCE_GROUP_ADMIN:
+ case SqlParser.RESOURCE_GROUP_USER:
+ case SqlParser.ROLE_ADMIN:
+ case SqlParser.SESSION_VARIABLES_ADMIN:
+ case SqlParser.SET_USER_ID:
+ case SqlParser.SHOW_ROUTINE:
+ case SqlParser.SYSTEM_VARIABLES_ADMIN:
+ case SqlParser.TABLE_ENCRYPTION_ADMIN:
+ case SqlParser.VERSION_TOKEN_ADMIN:
+ case SqlParser.XA_RECOVER_ADMIN:
+ case SqlParser.ARMSCII8:
+ case SqlParser.ASCII:
+ case SqlParser.BIG5:
+ case SqlParser.CP1250:
+ case SqlParser.CP1251:
+ case SqlParser.CP1256:
+ case SqlParser.CP1257:
+ case SqlParser.CP850:
+ case SqlParser.CP852:
+ case SqlParser.CP866:
+ case SqlParser.CP932:
+ case SqlParser.DEC8:
+ case SqlParser.EUCJPMS:
+ case SqlParser.EUCKR:
+ case SqlParser.GB2312:
+ case SqlParser.GBK:
+ case SqlParser.GEOSTD8:
+ case SqlParser.GREEK:
+ case SqlParser.HEBREW:
+ case SqlParser.HP8:
+ case SqlParser.KEYBCS2:
+ case SqlParser.KOI8R:
+ case SqlParser.KOI8U:
+ case SqlParser.LATIN1:
+ case SqlParser.LATIN2:
+ case SqlParser.LATIN5:
+ case SqlParser.LATIN7:
+ case SqlParser.MACCE:
+ case SqlParser.MACROMAN:
+ case SqlParser.SJIS:
+ case SqlParser.SWE7:
+ case SqlParser.TIS620:
+ case SqlParser.UCS2:
+ case SqlParser.UJIS:
+ case SqlParser.UTF16:
+ case SqlParser.UTF16LE:
+ case SqlParser.UTF32:
+ case SqlParser.UTF8:
+ case SqlParser.UTF8MB3:
+ case SqlParser.UTF8MB4:
+ case SqlParser.ARCHIVE:
+ case SqlParser.BLACKHOLE:
+ case SqlParser.CSV:
+ case SqlParser.FEDERATED:
+ case SqlParser.INNODB:
+ case SqlParser.MEMORY:
+ case SqlParser.MRG_MYISAM:
+ case SqlParser.MYISAM:
+ case SqlParser.NDB:
+ case SqlParser.NDBCLUSTER:
+ case SqlParser.PERFORMANCE_SCHEMA:
+ case SqlParser.TOKUDB:
+ case SqlParser.REPEATABLE:
+ case SqlParser.COMMITTED:
+ case SqlParser.UNCOMMITTED:
+ case SqlParser.SERIALIZABLE:
+ case SqlParser.GEOMETRYCOLLECTION:
+ case SqlParser.LINESTRING:
+ case SqlParser.MULTILINESTRING:
+ case SqlParser.MULTIPOINT:
+ case SqlParser.MULTIPOLYGON:
+ case SqlParser.POINT:
+ case SqlParser.POLYGON:
+ case SqlParser.ABS:
+ case SqlParser.ACOS:
+ case SqlParser.ADDDATE:
+ case SqlParser.ADDTIME:
+ case SqlParser.AES_DECRYPT:
+ case SqlParser.AES_ENCRYPT:
+ case SqlParser.AREA:
+ case SqlParser.ASBINARY:
+ case SqlParser.ASIN:
+ case SqlParser.ASTEXT:
+ case SqlParser.ASWKB:
+ case SqlParser.ASWKT:
+ case SqlParser.ASYMMETRIC_DECRYPT:
+ case SqlParser.ASYMMETRIC_DERIVE:
+ case SqlParser.ASYMMETRIC_ENCRYPT:
+ case SqlParser.ASYMMETRIC_SIGN:
+ case SqlParser.ASYMMETRIC_VERIFY:
+ case SqlParser.ATAN:
+ case SqlParser.ATAN2:
+ case SqlParser.BENCHMARK:
+ case SqlParser.BIN:
+ case SqlParser.BIT_COUNT:
+ case SqlParser.BIT_LENGTH:
+ case SqlParser.BUFFER:
+ case SqlParser.CATALOG_NAME:
+ case SqlParser.CEIL:
+ case SqlParser.CEILING:
+ case SqlParser.CENTROID:
+ case SqlParser.CHARACTER_LENGTH:
+ case SqlParser.CHARSET:
+ case SqlParser.CHAR_LENGTH:
+ case SqlParser.COERCIBILITY:
+ case SqlParser.COLLATION:
+ case SqlParser.COMPRESS:
+ case SqlParser.CONCAT:
+ case SqlParser.CONCAT_WS:
+ case SqlParser.CONNECTION_ID:
+ case SqlParser.CONV:
+ case SqlParser.CONVERT_TZ:
+ case SqlParser.COS:
+ case SqlParser.COT:
+ case SqlParser.CRC32:
+ case SqlParser.CREATE_ASYMMETRIC_PRIV_KEY:
+ case SqlParser.CREATE_ASYMMETRIC_PUB_KEY:
+ case SqlParser.CREATE_DH_PARAMETERS:
+ case SqlParser.CREATE_DIGEST:
+ case SqlParser.CROSSES:
+ case SqlParser.DATEDIFF:
+ case SqlParser.DATE_FORMAT:
+ case SqlParser.DAYNAME:
+ case SqlParser.DAYOFMONTH:
+ case SqlParser.DAYOFWEEK:
+ case SqlParser.DAYOFYEAR:
+ case SqlParser.DECODE:
+ case SqlParser.DEGREES:
+ case SqlParser.DES_DECRYPT:
+ case SqlParser.DES_ENCRYPT:
+ case SqlParser.DIMENSION:
+ case SqlParser.DISJOINT:
+ case SqlParser.ELT:
+ case SqlParser.ENCODE:
+ case SqlParser.ENCRYPT:
+ case SqlParser.ENDPOINT:
+ case SqlParser.ENVELOPE:
+ case SqlParser.EQUALS:
+ case SqlParser.EXP:
+ case SqlParser.EXPORT_SET:
+ case SqlParser.EXTERIORRING:
+ case SqlParser.EXTRACTVALUE:
+ case SqlParser.FIELD:
+ case SqlParser.FIND_IN_SET:
+ case SqlParser.FLOOR:
+ case SqlParser.FORMAT:
+ case SqlParser.FOUND_ROWS:
+ case SqlParser.FROM_BASE64:
+ case SqlParser.FROM_DAYS:
+ case SqlParser.FROM_UNIXTIME:
+ case SqlParser.GEOMCOLLFROMTEXT:
+ case SqlParser.GEOMCOLLFROMWKB:
+ case SqlParser.GEOMETRYCOLLECTIONFROMTEXT:
+ case SqlParser.GEOMETRYCOLLECTIONFROMWKB:
+ case SqlParser.GEOMETRYFROMTEXT:
+ case SqlParser.GEOMETRYFROMWKB:
+ case SqlParser.GEOMETRYN:
+ case SqlParser.GEOMETRYTYPE:
+ case SqlParser.GEOMFROMTEXT:
+ case SqlParser.GEOMFROMWKB:
+ case SqlParser.GET_FORMAT:
+ case SqlParser.GET_LOCK:
+ case SqlParser.GLENGTH:
+ case SqlParser.GREATEST:
+ case SqlParser.GTID_SUBSET:
+ case SqlParser.GTID_SUBTRACT:
+ case SqlParser.HEX:
+ case SqlParser.IFNULL:
+ case SqlParser.INET6_ATON:
+ case SqlParser.INET6_NTOA:
+ case SqlParser.INET_ATON:
+ case SqlParser.INET_NTOA:
+ case SqlParser.INSTR:
+ case SqlParser.INTERIORRINGN:
+ case SqlParser.INTERSECTS:
+ case SqlParser.ISCLOSED:
+ case SqlParser.ISEMPTY:
+ case SqlParser.ISNULL:
+ case SqlParser.ISSIMPLE:
+ case SqlParser.IS_FREE_LOCK:
+ case SqlParser.IS_IPV4:
+ case SqlParser.IS_IPV4_COMPAT:
+ case SqlParser.IS_IPV4_MAPPED:
+ case SqlParser.IS_IPV6:
+ case SqlParser.IS_USED_LOCK:
+ case SqlParser.LAST_INSERT_ID:
+ case SqlParser.LCASE:
+ case SqlParser.LEAST:
+ case SqlParser.LENGTH:
+ case SqlParser.LINEFROMTEXT:
+ case SqlParser.LINEFROMWKB:
+ case SqlParser.LINESTRINGFROMTEXT:
+ case SqlParser.LINESTRINGFROMWKB:
+ case SqlParser.LN:
+ case SqlParser.LOAD_FILE:
+ case SqlParser.LOCATE:
+ case SqlParser.LOG:
+ case SqlParser.LOG10:
+ case SqlParser.LOG2:
+ case SqlParser.LOWER:
+ case SqlParser.LPAD:
+ case SqlParser.LTRIM:
+ case SqlParser.MAKEDATE:
+ case SqlParser.MAKETIME:
+ case SqlParser.MAKE_SET:
+ case SqlParser.MASTER_POS_WAIT:
+ case SqlParser.MBRCONTAINS:
+ case SqlParser.MBRDISJOINT:
+ case SqlParser.MBREQUAL:
+ case SqlParser.MBRINTERSECTS:
+ case SqlParser.MBROVERLAPS:
+ case SqlParser.MBRTOUCHES:
+ case SqlParser.MBRWITHIN:
+ case SqlParser.MD5:
+ case SqlParser.MLINEFROMTEXT:
+ case SqlParser.MLINEFROMWKB:
+ case SqlParser.MONTHNAME:
+ case SqlParser.MPOINTFROMTEXT:
+ case SqlParser.MPOINTFROMWKB:
+ case SqlParser.MPOLYFROMTEXT:
+ case SqlParser.MPOLYFROMWKB:
+ case SqlParser.MULTILINESTRINGFROMTEXT:
+ case SqlParser.MULTILINESTRINGFROMWKB:
+ case SqlParser.MULTIPOINTFROMTEXT:
+ case SqlParser.MULTIPOINTFROMWKB:
+ case SqlParser.MULTIPOLYGONFROMTEXT:
+ case SqlParser.MULTIPOLYGONFROMWKB:
+ case SqlParser.NAME_CONST:
+ case SqlParser.NULLIF:
+ case SqlParser.NUMGEOMETRIES:
+ case SqlParser.NUMINTERIORRINGS:
+ case SqlParser.NUMPOINTS:
+ case SqlParser.OCT:
+ case SqlParser.OCTET_LENGTH:
+ case SqlParser.ORD:
+ case SqlParser.OVERLAPS:
+ case SqlParser.PERIOD_ADD:
+ case SqlParser.PERIOD_DIFF:
+ case SqlParser.PI:
+ case SqlParser.POINTFROMTEXT:
+ case SqlParser.POINTFROMWKB:
+ case SqlParser.POINTN:
+ case SqlParser.POLYFROMTEXT:
+ case SqlParser.POLYFROMWKB:
+ case SqlParser.POLYGONFROMTEXT:
+ case SqlParser.POLYGONFROMWKB:
+ case SqlParser.POW:
+ case SqlParser.POWER:
+ case SqlParser.QUOTE:
+ case SqlParser.RADIANS:
+ case SqlParser.RAND:
+ case SqlParser.RANDOM_BYTES:
+ case SqlParser.RELEASE_LOCK:
+ case SqlParser.REVERSE:
+ case SqlParser.ROUND:
+ case SqlParser.ROW_COUNT:
+ case SqlParser.RPAD:
+ case SqlParser.RTRIM:
+ case SqlParser.SEC_TO_TIME:
+ case SqlParser.SESSION_USER:
+ case SqlParser.SHA:
+ case SqlParser.SHA1:
+ case SqlParser.SHA2:
+ case SqlParser.SCHEMA_NAME:
+ case SqlParser.SIGN:
+ case SqlParser.SIN:
+ case SqlParser.SLEEP:
+ case SqlParser.SOUNDEX:
+ case SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS:
+ case SqlParser.SQRT:
+ case SqlParser.SRID:
+ case SqlParser.STARTPOINT:
+ case SqlParser.STRCMP:
+ case SqlParser.STR_TO_DATE:
+ case SqlParser.ST_AREA:
+ case SqlParser.ST_ASBINARY:
+ case SqlParser.ST_ASTEXT:
+ case SqlParser.ST_ASWKB:
+ case SqlParser.ST_ASWKT:
+ case SqlParser.ST_BUFFER:
+ case SqlParser.ST_CENTROID:
+ case SqlParser.ST_CONTAINS:
+ case SqlParser.ST_CROSSES:
+ case SqlParser.ST_DIFFERENCE:
+ case SqlParser.ST_DIMENSION:
+ case SqlParser.ST_DISJOINT:
+ case SqlParser.ST_DISTANCE:
+ case SqlParser.ST_ENDPOINT:
+ case SqlParser.ST_ENVELOPE:
+ case SqlParser.ST_EQUALS:
+ case SqlParser.ST_EXTERIORRING:
+ case SqlParser.ST_GEOMCOLLFROMTEXT:
+ case SqlParser.ST_GEOMCOLLFROMTXT:
+ case SqlParser.ST_GEOMCOLLFROMWKB:
+ case SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT:
+ case SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB:
+ case SqlParser.ST_GEOMETRYFROMTEXT:
+ case SqlParser.ST_GEOMETRYFROMWKB:
+ case SqlParser.ST_GEOMETRYN:
+ case SqlParser.ST_GEOMETRYTYPE:
+ case SqlParser.ST_GEOMFROMTEXT:
+ case SqlParser.ST_GEOMFROMWKB:
+ case SqlParser.ST_INTERIORRINGN:
+ case SqlParser.ST_INTERSECTION:
+ case SqlParser.ST_INTERSECTS:
+ case SqlParser.ST_ISCLOSED:
+ case SqlParser.ST_ISEMPTY:
+ case SqlParser.ST_ISSIMPLE:
+ case SqlParser.ST_LINEFROMTEXT:
+ case SqlParser.ST_LINEFROMWKB:
+ case SqlParser.ST_LINESTRINGFROMTEXT:
+ case SqlParser.ST_LINESTRINGFROMWKB:
+ case SqlParser.ST_NUMGEOMETRIES:
+ case SqlParser.ST_NUMINTERIORRING:
+ case SqlParser.ST_NUMINTERIORRINGS:
+ case SqlParser.ST_NUMPOINTS:
+ case SqlParser.ST_OVERLAPS:
+ case SqlParser.ST_POINTFROMTEXT:
+ case SqlParser.ST_POINTFROMWKB:
+ case SqlParser.ST_POINTN:
+ case SqlParser.ST_POLYFROMTEXT:
+ case SqlParser.ST_POLYFROMWKB:
+ case SqlParser.ST_POLYGONFROMTEXT:
+ case SqlParser.ST_POLYGONFROMWKB:
+ case SqlParser.ST_SRID:
+ case SqlParser.ST_STARTPOINT:
+ case SqlParser.ST_SYMDIFFERENCE:
+ case SqlParser.ST_TOUCHES:
+ case SqlParser.ST_UNION:
+ case SqlParser.ST_WITHIN:
+ case SqlParser.ST_X:
+ case SqlParser.ST_Y:
+ case SqlParser.SUBDATE:
+ case SqlParser.SUBSTRING_INDEX:
+ case SqlParser.SUBTIME:
+ case SqlParser.SYSTEM_USER:
+ case SqlParser.TAN:
+ case SqlParser.TIMEDIFF:
+ case SqlParser.TIMESTAMPADD:
+ case SqlParser.TIMESTAMPDIFF:
+ case SqlParser.TIME_FORMAT:
+ case SqlParser.TIME_TO_SEC:
+ case SqlParser.TOUCHES:
+ case SqlParser.TO_BASE64:
+ case SqlParser.TO_DAYS:
+ case SqlParser.TO_SECONDS:
+ case SqlParser.UCASE:
+ case SqlParser.UNCOMPRESS:
+ case SqlParser.UNCOMPRESSED_LENGTH:
+ case SqlParser.UNHEX:
+ case SqlParser.UNIX_TIMESTAMP:
+ case SqlParser.UPDATEXML:
+ case SqlParser.UPPER:
+ case SqlParser.UUID:
+ case SqlParser.UUID_SHORT:
+ case SqlParser.VALIDATE_PASSWORD_STRENGTH:
+ case SqlParser.VERSION:
+ case SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS:
+ case SqlParser.WEEKDAY:
+ case SqlParser.WEEKOFYEAR:
+ case SqlParser.WEIGHT_STRING:
+ case SqlParser.WITHIN:
+ case SqlParser.YEARWEEK:
+ case SqlParser.Y_FUNCTION:
+ case SqlParser.X_FUNCTION:
+ case SqlParser.CHARSET_REVERSE_QOUTE_STRING:
+ case SqlParser.STRING_LITERAL:
+ case SqlParser.ID:
+ case SqlParser.REVERSE_QUOTE_ID:
+ localctx = new HandlerConditionNameContext(this, localctx);
+ this.enterOuterAlt(localctx, 3);
+ this.state = 4331;
+ this.uid();
+ break;
+ case SqlParser.SQLWARNING:
+ localctx = new HandlerConditionWarningContext(this, localctx);
+ this.enterOuterAlt(localctx, 4);
+ this.state = 4332;
+ this.match(SqlParser.SQLWARNING);
+ break;
+ case SqlParser.NOT:
+ localctx = new HandlerConditionNotfoundContext(this, localctx);
+ this.enterOuterAlt(localctx, 5);
+ this.state = 4333;
+ this.match(SqlParser.NOT);
+ this.state = 4334;
+ this.match(SqlParser.FOUND);
+ break;
+ case SqlParser.SQLEXCEPTION:
+ localctx = new HandlerConditionExceptionContext(this, localctx);
+ this.enterOuterAlt(localctx, 6);
+ this.state = 4335;
+ this.match(SqlParser.SQLEXCEPTION);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function ProcedureSqlStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_procedureSqlStatement;
+ return this;
+}
+
+ProcedureSqlStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+ProcedureSqlStatementContext.prototype.constructor = ProcedureSqlStatementContext;
+
+ProcedureSqlStatementContext.prototype.SEMI = function() {
+ return this.getToken(SqlParser.SEMI, 0);
+};
+
+ProcedureSqlStatementContext.prototype.compoundStatement = function() {
+ return this.getTypedRuleContext(CompoundStatementContext,0);
+};
+
+ProcedureSqlStatementContext.prototype.sqlStatement = function() {
+ return this.getTypedRuleContext(SqlStatementContext,0);
+};
+
+ProcedureSqlStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterProcedureSqlStatement(this);
+ }
+};
+
+ProcedureSqlStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitProcedureSqlStatement(this);
+ }
+};
+
+ProcedureSqlStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitProcedureSqlStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.ProcedureSqlStatementContext = ProcedureSqlStatementContext;
+
+SqlParser.prototype.procedureSqlStatement = function() {
+
+ var localctx = new ProcedureSqlStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 378, SqlParser.RULE_procedureSqlStatement);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4340;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,624,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 4338;
+ this.compoundStatement();
+ break;
+
+ case 2:
+ this.state = 4339;
+ this.sqlStatement();
+ break;
+
+ }
+ this.state = 4342;
+ this.match(SqlParser.SEMI);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function CaseAlternativeContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_caseAlternative;
+ return this;
+}
+
+CaseAlternativeContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+CaseAlternativeContext.prototype.constructor = CaseAlternativeContext;
+
+CaseAlternativeContext.prototype.WHEN = function() {
+ return this.getToken(SqlParser.WHEN, 0);
+};
+
+CaseAlternativeContext.prototype.THEN = function() {
+ return this.getToken(SqlParser.THEN, 0);
+};
+
+CaseAlternativeContext.prototype.constant = function() {
+ return this.getTypedRuleContext(ConstantContext,0);
+};
+
+CaseAlternativeContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+CaseAlternativeContext.prototype.procedureSqlStatement = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ProcedureSqlStatementContext);
+ } else {
+ return this.getTypedRuleContext(ProcedureSqlStatementContext,i);
+ }
+};
+
+CaseAlternativeContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterCaseAlternative(this);
+ }
+};
+
+CaseAlternativeContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitCaseAlternative(this);
+ }
+};
+
+CaseAlternativeContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitCaseAlternative(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.CaseAlternativeContext = CaseAlternativeContext;
+
+SqlParser.prototype.caseAlternative = function() {
+
+ var localctx = new CaseAlternativeContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 380, SqlParser.RULE_caseAlternative);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4344;
+ this.match(SqlParser.WHEN);
+ this.state = 4347;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,625,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 4345;
+ this.constant();
+ break;
+
+ case 2:
+ this.state = 4346;
+ this.expression(0);
+ break;
+
+ }
+ this.state = 4349;
+ this.match(SqlParser.THEN);
+ this.state = 4351;
+ this._errHandler.sync(this);
+ var _alt = 1;
+ do {
+ switch (_alt) {
+ case 1:
+ this.state = 4350;
+ this.procedureSqlStatement();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 4353;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,626, this._ctx);
+ } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function ElifAlternativeContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_elifAlternative;
+ return this;
+}
+
+ElifAlternativeContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+ElifAlternativeContext.prototype.constructor = ElifAlternativeContext;
+
+ElifAlternativeContext.prototype.ELSEIF = function() {
+ return this.getToken(SqlParser.ELSEIF, 0);
+};
+
+ElifAlternativeContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+ElifAlternativeContext.prototype.THEN = function() {
+ return this.getToken(SqlParser.THEN, 0);
+};
+
+ElifAlternativeContext.prototype.procedureSqlStatement = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ProcedureSqlStatementContext);
+ } else {
+ return this.getTypedRuleContext(ProcedureSqlStatementContext,i);
+ }
+};
+
+ElifAlternativeContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterElifAlternative(this);
+ }
+};
+
+ElifAlternativeContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitElifAlternative(this);
+ }
+};
+
+ElifAlternativeContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitElifAlternative(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.ElifAlternativeContext = ElifAlternativeContext;
+
+SqlParser.prototype.elifAlternative = function() {
+
+ var localctx = new ElifAlternativeContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 382, SqlParser.RULE_elifAlternative);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4355;
+ this.match(SqlParser.ELSEIF);
+ this.state = 4356;
+ this.expression(0);
+ this.state = 4357;
+ this.match(SqlParser.THEN);
+ this.state = 4359;
+ this._errHandler.sync(this);
+ var _alt = 1;
+ do {
+ switch (_alt) {
+ case 1:
+ this.state = 4358;
+ this.procedureSqlStatement();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 4361;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,627, this._ctx);
+ } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function AlterUserContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_alterUser;
+ return this;
+}
+
+AlterUserContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+AlterUserContext.prototype.constructor = AlterUserContext;
+
+
+
+AlterUserContext.prototype.copyFrom = function(ctx) {
+ antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx);
+};
+
+
+function AlterUserMysqlV56Context(parser, ctx) {
+ AlterUserContext.call(this, parser);
+ AlterUserContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterUserMysqlV56Context.prototype = Object.create(AlterUserContext.prototype);
+AlterUserMysqlV56Context.prototype.constructor = AlterUserMysqlV56Context;
+
+SqlParser.AlterUserMysqlV56Context = AlterUserMysqlV56Context;
+
+AlterUserMysqlV56Context.prototype.ALTER = function() {
+ return this.getToken(SqlParser.ALTER, 0);
+};
+
+AlterUserMysqlV56Context.prototype.USER = function() {
+ return this.getToken(SqlParser.USER, 0);
+};
+
+AlterUserMysqlV56Context.prototype.userSpecification = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UserSpecificationContext);
+ } else {
+ return this.getTypedRuleContext(UserSpecificationContext,i);
+ }
+};
+
+AlterUserMysqlV56Context.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+AlterUserMysqlV56Context.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterUserMysqlV56(this);
+ }
+};
+
+AlterUserMysqlV56Context.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterUserMysqlV56(this);
+ }
+};
+
+AlterUserMysqlV56Context.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterUserMysqlV56(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AlterUserMysqlV57Context(parser, ctx) {
+ AlterUserContext.call(this, parser);
+ this.tlsNone = null; // Token;
+ AlterUserContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AlterUserMysqlV57Context.prototype = Object.create(AlterUserContext.prototype);
+AlterUserMysqlV57Context.prototype.constructor = AlterUserMysqlV57Context;
+
+SqlParser.AlterUserMysqlV57Context = AlterUserMysqlV57Context;
+
+AlterUserMysqlV57Context.prototype.ALTER = function() {
+ return this.getToken(SqlParser.ALTER, 0);
+};
+
+AlterUserMysqlV57Context.prototype.USER = function() {
+ return this.getToken(SqlParser.USER, 0);
+};
+
+AlterUserMysqlV57Context.prototype.userAuthOption = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UserAuthOptionContext);
+ } else {
+ return this.getTypedRuleContext(UserAuthOptionContext,i);
+ }
+};
+
+AlterUserMysqlV57Context.prototype.ifExists = function() {
+ return this.getTypedRuleContext(IfExistsContext,0);
+};
+
+AlterUserMysqlV57Context.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+AlterUserMysqlV57Context.prototype.REQUIRE = function() {
+ return this.getToken(SqlParser.REQUIRE, 0);
+};
+
+AlterUserMysqlV57Context.prototype.WITH = function() {
+ return this.getToken(SqlParser.WITH, 0);
+};
+
+AlterUserMysqlV57Context.prototype.userPasswordOption = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UserPasswordOptionContext);
+ } else {
+ return this.getTypedRuleContext(UserPasswordOptionContext,i);
+ }
+};
+
+AlterUserMysqlV57Context.prototype.userLockOption = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UserLockOptionContext);
+ } else {
+ return this.getTypedRuleContext(UserLockOptionContext,i);
+ }
+};
+
+AlterUserMysqlV57Context.prototype.tlsOption = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(TlsOptionContext);
+ } else {
+ return this.getTypedRuleContext(TlsOptionContext,i);
+ }
+};
+
+AlterUserMysqlV57Context.prototype.NONE = function() {
+ return this.getToken(SqlParser.NONE, 0);
+};
+
+AlterUserMysqlV57Context.prototype.userResourceOption = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UserResourceOptionContext);
+ } else {
+ return this.getTypedRuleContext(UserResourceOptionContext,i);
+ }
+};
+
+AlterUserMysqlV57Context.prototype.AND = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.AND);
+ } else {
+ return this.getToken(SqlParser.AND, i);
+ }
+};
+
+AlterUserMysqlV57Context.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAlterUserMysqlV57(this);
+ }
+};
+
+AlterUserMysqlV57Context.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAlterUserMysqlV57(this);
+ }
+};
+
+AlterUserMysqlV57Context.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAlterUserMysqlV57(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+SqlParser.AlterUserContext = AlterUserContext;
+
+SqlParser.prototype.alterUser = function() {
+
+ var localctx = new AlterUserContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 384, SqlParser.RULE_alterUser);
+ var _la = 0; // Token type
+ try {
+ this.state = 4417;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,639,this._ctx);
+ switch(la_) {
+ case 1:
+ localctx = new AlterUserMysqlV56Context(this, localctx);
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4363;
+ this.match(SqlParser.ALTER);
+ this.state = 4364;
+ this.match(SqlParser.USER);
+ this.state = 4365;
+ this.userSpecification();
+ this.state = 4370;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 4366;
+ this.match(SqlParser.COMMA);
+ this.state = 4367;
+ this.userSpecification();
+ this.state = 4372;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+
+ case 2:
+ localctx = new AlterUserMysqlV57Context(this, localctx);
+ this.enterOuterAlt(localctx, 2);
+ this.state = 4373;
+ this.match(SqlParser.ALTER);
+ this.state = 4374;
+ this.match(SqlParser.USER);
+ this.state = 4376;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.IF) {
+ this.state = 4375;
+ this.ifExists();
+ }
+
+ this.state = 4378;
+ this.userAuthOption();
+ this.state = 4383;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 4379;
+ this.match(SqlParser.COMMA);
+ this.state = 4380;
+ this.userAuthOption();
+ this.state = 4385;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 4400;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.REQUIRE) {
+ this.state = 4386;
+ this.match(SqlParser.REQUIRE);
+ this.state = 4398;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.NONE:
+ this.state = 4387;
+ localctx.tlsNone = this.match(SqlParser.NONE);
+ break;
+ case SqlParser.SSL:
+ case SqlParser.CIPHER:
+ case SqlParser.ISSUER:
+ case SqlParser.SUBJECT:
+ case SqlParser.X509:
+ this.state = 4388;
+ this.tlsOption();
+ this.state = 4395;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.AND || _la===SqlParser.SSL || _la===SqlParser.CIPHER || _la===SqlParser.ISSUER || _la===SqlParser.SUBJECT || _la===SqlParser.X509) {
+ this.state = 4390;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.AND) {
+ this.state = 4389;
+ this.match(SqlParser.AND);
+ }
+
+ this.state = 4392;
+ this.tlsOption();
+ this.state = 4397;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ }
+
+ this.state = 4408;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.WITH) {
+ this.state = 4402;
+ this.match(SqlParser.WITH);
+ this.state = 4404;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 4403;
+ this.userResourceOption();
+ this.state = 4406;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(((((_la - 426)) & ~0x1f) == 0 && ((1 << (_la - 426)) & ((1 << (SqlParser.MAX_CONNECTIONS_PER_HOUR - 426)) | (1 << (SqlParser.MAX_QUERIES_PER_HOUR - 426)) | (1 << (SqlParser.MAX_UPDATES_PER_HOUR - 426)) | (1 << (SqlParser.MAX_USER_CONNECTIONS - 426)))) !== 0));
+ }
+
+ this.state = 4414;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.ACCOUNT || _la===SqlParser.PASSWORD) {
+ this.state = 4412;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.PASSWORD:
+ this.state = 4410;
+ this.userPasswordOption();
+ break;
+ case SqlParser.ACCOUNT:
+ this.state = 4411;
+ this.userLockOption();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 4416;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function CreateUserContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_createUser;
+ return this;
+}
+
+CreateUserContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+CreateUserContext.prototype.constructor = CreateUserContext;
+
+
+
+CreateUserContext.prototype.copyFrom = function(ctx) {
+ antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx);
+};
+
+
+function CreateUserMysqlV57Context(parser, ctx) {
+ CreateUserContext.call(this, parser);
+ this.tlsNone = null; // Token;
+ CreateUserContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+CreateUserMysqlV57Context.prototype = Object.create(CreateUserContext.prototype);
+CreateUserMysqlV57Context.prototype.constructor = CreateUserMysqlV57Context;
+
+SqlParser.CreateUserMysqlV57Context = CreateUserMysqlV57Context;
+
+CreateUserMysqlV57Context.prototype.CREATE = function() {
+ return this.getToken(SqlParser.CREATE, 0);
+};
+
+CreateUserMysqlV57Context.prototype.USER = function() {
+ return this.getToken(SqlParser.USER, 0);
+};
+
+CreateUserMysqlV57Context.prototype.userAuthOption = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UserAuthOptionContext);
+ } else {
+ return this.getTypedRuleContext(UserAuthOptionContext,i);
+ }
+};
+
+CreateUserMysqlV57Context.prototype.ifNotExists = function() {
+ return this.getTypedRuleContext(IfNotExistsContext,0);
+};
+
+CreateUserMysqlV57Context.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+CreateUserMysqlV57Context.prototype.REQUIRE = function() {
+ return this.getToken(SqlParser.REQUIRE, 0);
+};
+
+CreateUserMysqlV57Context.prototype.WITH = function() {
+ return this.getToken(SqlParser.WITH, 0);
+};
+
+CreateUserMysqlV57Context.prototype.userPasswordOption = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UserPasswordOptionContext);
+ } else {
+ return this.getTypedRuleContext(UserPasswordOptionContext,i);
+ }
+};
+
+CreateUserMysqlV57Context.prototype.userLockOption = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UserLockOptionContext);
+ } else {
+ return this.getTypedRuleContext(UserLockOptionContext,i);
+ }
+};
+
+CreateUserMysqlV57Context.prototype.tlsOption = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(TlsOptionContext);
+ } else {
+ return this.getTypedRuleContext(TlsOptionContext,i);
+ }
+};
+
+CreateUserMysqlV57Context.prototype.NONE = function() {
+ return this.getToken(SqlParser.NONE, 0);
+};
+
+CreateUserMysqlV57Context.prototype.userResourceOption = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UserResourceOptionContext);
+ } else {
+ return this.getTypedRuleContext(UserResourceOptionContext,i);
+ }
+};
+
+CreateUserMysqlV57Context.prototype.AND = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.AND);
+ } else {
+ return this.getToken(SqlParser.AND, i);
+ }
+};
+
+CreateUserMysqlV57Context.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterCreateUserMysqlV57(this);
+ }
+};
+
+CreateUserMysqlV57Context.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitCreateUserMysqlV57(this);
+ }
+};
+
+CreateUserMysqlV57Context.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitCreateUserMysqlV57(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function CreateUserMysqlV56Context(parser, ctx) {
+ CreateUserContext.call(this, parser);
+ CreateUserContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+CreateUserMysqlV56Context.prototype = Object.create(CreateUserContext.prototype);
+CreateUserMysqlV56Context.prototype.constructor = CreateUserMysqlV56Context;
+
+SqlParser.CreateUserMysqlV56Context = CreateUserMysqlV56Context;
+
+CreateUserMysqlV56Context.prototype.CREATE = function() {
+ return this.getToken(SqlParser.CREATE, 0);
+};
+
+CreateUserMysqlV56Context.prototype.USER = function() {
+ return this.getToken(SqlParser.USER, 0);
+};
+
+CreateUserMysqlV56Context.prototype.userAuthOption = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UserAuthOptionContext);
+ } else {
+ return this.getTypedRuleContext(UserAuthOptionContext,i);
+ }
+};
+
+CreateUserMysqlV56Context.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+CreateUserMysqlV56Context.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterCreateUserMysqlV56(this);
+ }
+};
+
+CreateUserMysqlV56Context.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitCreateUserMysqlV56(this);
+ }
+};
+
+CreateUserMysqlV56Context.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitCreateUserMysqlV56(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+SqlParser.CreateUserContext = CreateUserContext;
+
+SqlParser.prototype.createUser = function() {
+
+ var localctx = new CreateUserContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 386, SqlParser.RULE_createUser);
+ var _la = 0; // Token type
+ try {
+ this.state = 4473;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,651,this._ctx);
+ switch(la_) {
+ case 1:
+ localctx = new CreateUserMysqlV56Context(this, localctx);
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4419;
+ this.match(SqlParser.CREATE);
+ this.state = 4420;
+ this.match(SqlParser.USER);
+ this.state = 4421;
+ this.userAuthOption();
+ this.state = 4426;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 4422;
+ this.match(SqlParser.COMMA);
+ this.state = 4423;
+ this.userAuthOption();
+ this.state = 4428;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+
+ case 2:
+ localctx = new CreateUserMysqlV57Context(this, localctx);
+ this.enterOuterAlt(localctx, 2);
+ this.state = 4429;
+ this.match(SqlParser.CREATE);
+ this.state = 4430;
+ this.match(SqlParser.USER);
+ this.state = 4432;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.IF) {
+ this.state = 4431;
+ this.ifNotExists();
+ }
+
+ this.state = 4434;
+ this.userAuthOption();
+ this.state = 4439;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 4435;
+ this.match(SqlParser.COMMA);
+ this.state = 4436;
+ this.userAuthOption();
+ this.state = 4441;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 4456;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.REQUIRE) {
+ this.state = 4442;
+ this.match(SqlParser.REQUIRE);
+ this.state = 4454;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.NONE:
+ this.state = 4443;
+ localctx.tlsNone = this.match(SqlParser.NONE);
+ break;
+ case SqlParser.SSL:
+ case SqlParser.CIPHER:
+ case SqlParser.ISSUER:
+ case SqlParser.SUBJECT:
+ case SqlParser.X509:
+ this.state = 4444;
+ this.tlsOption();
+ this.state = 4451;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.AND || _la===SqlParser.SSL || _la===SqlParser.CIPHER || _la===SqlParser.ISSUER || _la===SqlParser.SUBJECT || _la===SqlParser.X509) {
+ this.state = 4446;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.AND) {
+ this.state = 4445;
+ this.match(SqlParser.AND);
+ }
+
+ this.state = 4448;
+ this.tlsOption();
+ this.state = 4453;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ }
+
+ this.state = 4464;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.WITH) {
+ this.state = 4458;
+ this.match(SqlParser.WITH);
+ this.state = 4460;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 4459;
+ this.userResourceOption();
+ this.state = 4462;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(((((_la - 426)) & ~0x1f) == 0 && ((1 << (_la - 426)) & ((1 << (SqlParser.MAX_CONNECTIONS_PER_HOUR - 426)) | (1 << (SqlParser.MAX_QUERIES_PER_HOUR - 426)) | (1 << (SqlParser.MAX_UPDATES_PER_HOUR - 426)) | (1 << (SqlParser.MAX_USER_CONNECTIONS - 426)))) !== 0));
+ }
+
+ this.state = 4470;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.ACCOUNT || _la===SqlParser.PASSWORD) {
+ this.state = 4468;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.PASSWORD:
+ this.state = 4466;
+ this.userPasswordOption();
+ break;
+ case SqlParser.ACCOUNT:
+ this.state = 4467;
+ this.userLockOption();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 4472;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function DropUserContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_dropUser;
+ return this;
+}
+
+DropUserContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+DropUserContext.prototype.constructor = DropUserContext;
+
+DropUserContext.prototype.DROP = function() {
+ return this.getToken(SqlParser.DROP, 0);
+};
+
+DropUserContext.prototype.USER = function() {
+ return this.getToken(SqlParser.USER, 0);
+};
+
+DropUserContext.prototype.userName = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UserNameContext);
+ } else {
+ return this.getTypedRuleContext(UserNameContext,i);
+ }
+};
+
+DropUserContext.prototype.ifExists = function() {
+ return this.getTypedRuleContext(IfExistsContext,0);
+};
+
+DropUserContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+DropUserContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterDropUser(this);
+ }
+};
+
+DropUserContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitDropUser(this);
+ }
+};
+
+DropUserContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitDropUser(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.DropUserContext = DropUserContext;
+
+SqlParser.prototype.dropUser = function() {
+
+ var localctx = new DropUserContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 388, SqlParser.RULE_dropUser);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4475;
+ this.match(SqlParser.DROP);
+ this.state = 4476;
+ this.match(SqlParser.USER);
+ this.state = 4478;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.IF) {
+ this.state = 4477;
+ this.ifExists();
+ }
+
+ this.state = 4480;
+ this.userName();
+ this.state = 4485;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 4481;
+ this.match(SqlParser.COMMA);
+ this.state = 4482;
+ this.userName();
+ this.state = 4487;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function GrantStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_grantStatement;
+ this.privilegeObject = null; // Token
+ this.tlsNone = null; // Token
+ return this;
+}
+
+GrantStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+GrantStatementContext.prototype.constructor = GrantStatementContext;
+
+GrantStatementContext.prototype.GRANT = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.GRANT);
+ } else {
+ return this.getToken(SqlParser.GRANT, i);
+ }
+};
+
+
+GrantStatementContext.prototype.privelegeClause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(PrivelegeClauseContext);
+ } else {
+ return this.getTypedRuleContext(PrivelegeClauseContext,i);
+ }
+};
+
+GrantStatementContext.prototype.ON = function() {
+ return this.getToken(SqlParser.ON, 0);
+};
+
+GrantStatementContext.prototype.privilegeLevel = function() {
+ return this.getTypedRuleContext(PrivilegeLevelContext,0);
+};
+
+GrantStatementContext.prototype.TO = function() {
+ return this.getToken(SqlParser.TO, 0);
+};
+
+GrantStatementContext.prototype.userAuthOption = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UserAuthOptionContext);
+ } else {
+ return this.getTypedRuleContext(UserAuthOptionContext,i);
+ }
+};
+
+GrantStatementContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+GrantStatementContext.prototype.REQUIRE = function() {
+ return this.getToken(SqlParser.REQUIRE, 0);
+};
+
+GrantStatementContext.prototype.WITH = function() {
+ return this.getToken(SqlParser.WITH, 0);
+};
+
+GrantStatementContext.prototype.TABLE = function() {
+ return this.getToken(SqlParser.TABLE, 0);
+};
+
+GrantStatementContext.prototype.FUNCTION = function() {
+ return this.getToken(SqlParser.FUNCTION, 0);
+};
+
+GrantStatementContext.prototype.PROCEDURE = function() {
+ return this.getToken(SqlParser.PROCEDURE, 0);
+};
+
+GrantStatementContext.prototype.tlsOption = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(TlsOptionContext);
+ } else {
+ return this.getTypedRuleContext(TlsOptionContext,i);
+ }
+};
+
+GrantStatementContext.prototype.NONE = function() {
+ return this.getToken(SqlParser.NONE, 0);
+};
+
+GrantStatementContext.prototype.OPTION = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.OPTION);
+ } else {
+ return this.getToken(SqlParser.OPTION, i);
+ }
+};
+
+
+GrantStatementContext.prototype.userResourceOption = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UserResourceOptionContext);
+ } else {
+ return this.getTypedRuleContext(UserResourceOptionContext,i);
+ }
+};
+
+GrantStatementContext.prototype.AND = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.AND);
+ } else {
+ return this.getToken(SqlParser.AND, i);
+ }
+};
+
+
+GrantStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterGrantStatement(this);
+ }
+};
+
+GrantStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitGrantStatement(this);
+ }
+};
+
+GrantStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitGrantStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.GrantStatementContext = GrantStatementContext;
+
+SqlParser.prototype.grantStatement = function() {
+
+ var localctx = new GrantStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 390, SqlParser.RULE_grantStatement);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4488;
+ this.match(SqlParser.GRANT);
+ this.state = 4489;
+ this.privelegeClause();
+ this.state = 4494;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 4490;
+ this.match(SqlParser.COMMA);
+ this.state = 4491;
+ this.privelegeClause();
+ this.state = 4496;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 4497;
+ this.match(SqlParser.ON);
+ this.state = 4499;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,655,this._ctx);
+ if(la_===1) {
+ this.state = 4498;
+ localctx.privilegeObject = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.PROCEDURE || _la===SqlParser.TABLE || _la===SqlParser.FUNCTION)) {
+ localctx.privilegeObject = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+
+ }
+ this.state = 4501;
+ this.privilegeLevel();
+ this.state = 4502;
+ this.match(SqlParser.TO);
+ this.state = 4503;
+ this.userAuthOption();
+ this.state = 4508;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 4504;
+ this.match(SqlParser.COMMA);
+ this.state = 4505;
+ this.userAuthOption();
+ this.state = 4510;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 4525;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.REQUIRE) {
+ this.state = 4511;
+ this.match(SqlParser.REQUIRE);
+ this.state = 4523;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.NONE:
+ this.state = 4512;
+ localctx.tlsNone = this.match(SqlParser.NONE);
+ break;
+ case SqlParser.SSL:
+ case SqlParser.CIPHER:
+ case SqlParser.ISSUER:
+ case SqlParser.SUBJECT:
+ case SqlParser.X509:
+ this.state = 4513;
+ this.tlsOption();
+ this.state = 4520;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.AND || _la===SqlParser.SSL || _la===SqlParser.CIPHER || _la===SqlParser.ISSUER || _la===SqlParser.SUBJECT || _la===SqlParser.X509) {
+ this.state = 4515;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.AND) {
+ this.state = 4514;
+ this.match(SqlParser.AND);
+ }
+
+ this.state = 4517;
+ this.tlsOption();
+ this.state = 4522;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ }
+
+ this.state = 4536;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.WITH) {
+ this.state = 4527;
+ this.match(SqlParser.WITH);
+ this.state = 4533;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,662,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 4531;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.GRANT:
+ this.state = 4528;
+ this.match(SqlParser.GRANT);
+ this.state = 4529;
+ this.match(SqlParser.OPTION);
+ break;
+ case SqlParser.MAX_CONNECTIONS_PER_HOUR:
+ case SqlParser.MAX_QUERIES_PER_HOUR:
+ case SqlParser.MAX_UPDATES_PER_HOUR:
+ case SqlParser.MAX_USER_CONNECTIONS:
+ this.state = 4530;
+ this.userResourceOption();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ }
+ this.state = 4535;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,662,this._ctx);
+ }
+
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function GrantProxyContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_grantProxy;
+ this.fromFirst = null; // UserNameContext
+ this.toFirst = null; // UserNameContext
+ this._userName = null; // UserNameContext
+ this.toOther = []; // of UserNameContexts
+ return this;
+}
+
+GrantProxyContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+GrantProxyContext.prototype.constructor = GrantProxyContext;
+
+GrantProxyContext.prototype.GRANT = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.GRANT);
+ } else {
+ return this.getToken(SqlParser.GRANT, i);
+ }
+};
+
+
+GrantProxyContext.prototype.PROXY = function() {
+ return this.getToken(SqlParser.PROXY, 0);
+};
+
+GrantProxyContext.prototype.ON = function() {
+ return this.getToken(SqlParser.ON, 0);
+};
+
+GrantProxyContext.prototype.TO = function() {
+ return this.getToken(SqlParser.TO, 0);
+};
+
+GrantProxyContext.prototype.userName = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UserNameContext);
+ } else {
+ return this.getTypedRuleContext(UserNameContext,i);
+ }
+};
+
+GrantProxyContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+GrantProxyContext.prototype.WITH = function() {
+ return this.getToken(SqlParser.WITH, 0);
+};
+
+GrantProxyContext.prototype.OPTION = function() {
+ return this.getToken(SqlParser.OPTION, 0);
+};
+
+GrantProxyContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterGrantProxy(this);
+ }
+};
+
+GrantProxyContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitGrantProxy(this);
+ }
+};
+
+GrantProxyContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitGrantProxy(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.GrantProxyContext = GrantProxyContext;
+
+SqlParser.prototype.grantProxy = function() {
+
+ var localctx = new GrantProxyContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 392, SqlParser.RULE_grantProxy);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4538;
+ this.match(SqlParser.GRANT);
+ this.state = 4539;
+ this.match(SqlParser.PROXY);
+ this.state = 4540;
+ this.match(SqlParser.ON);
+ this.state = 4541;
+ localctx.fromFirst = this.userName();
+ this.state = 4542;
+ this.match(SqlParser.TO);
+ this.state = 4543;
+ localctx.toFirst = this.userName();
+ this.state = 4548;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 4544;
+ this.match(SqlParser.COMMA);
+ this.state = 4545;
+ localctx._userName = this.userName();
+ localctx.toOther.push(localctx._userName);
+ this.state = 4550;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 4554;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.WITH) {
+ this.state = 4551;
+ this.match(SqlParser.WITH);
+ this.state = 4552;
+ this.match(SqlParser.GRANT);
+ this.state = 4553;
+ this.match(SqlParser.OPTION);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function RenameUserContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_renameUser;
+ return this;
+}
+
+RenameUserContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+RenameUserContext.prototype.constructor = RenameUserContext;
+
+RenameUserContext.prototype.RENAME = function() {
+ return this.getToken(SqlParser.RENAME, 0);
+};
+
+RenameUserContext.prototype.USER = function() {
+ return this.getToken(SqlParser.USER, 0);
+};
+
+RenameUserContext.prototype.renameUserClause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(RenameUserClauseContext);
+ } else {
+ return this.getTypedRuleContext(RenameUserClauseContext,i);
+ }
+};
+
+RenameUserContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+RenameUserContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterRenameUser(this);
+ }
+};
+
+RenameUserContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitRenameUser(this);
+ }
+};
+
+RenameUserContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitRenameUser(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.RenameUserContext = RenameUserContext;
+
+SqlParser.prototype.renameUser = function() {
+
+ var localctx = new RenameUserContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 394, SqlParser.RULE_renameUser);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4556;
+ this.match(SqlParser.RENAME);
+ this.state = 4557;
+ this.match(SqlParser.USER);
+ this.state = 4558;
+ this.renameUserClause();
+ this.state = 4563;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 4559;
+ this.match(SqlParser.COMMA);
+ this.state = 4560;
+ this.renameUserClause();
+ this.state = 4565;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function RevokeStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_revokeStatement;
+ return this;
+}
+
+RevokeStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+RevokeStatementContext.prototype.constructor = RevokeStatementContext;
+
+
+
+RevokeStatementContext.prototype.copyFrom = function(ctx) {
+ antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx);
+};
+
+
+function DetailRevokeContext(parser, ctx) {
+ RevokeStatementContext.call(this, parser);
+ this.privilegeObject = null; // Token;
+ RevokeStatementContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+DetailRevokeContext.prototype = Object.create(RevokeStatementContext.prototype);
+DetailRevokeContext.prototype.constructor = DetailRevokeContext;
+
+SqlParser.DetailRevokeContext = DetailRevokeContext;
+
+DetailRevokeContext.prototype.REVOKE = function() {
+ return this.getToken(SqlParser.REVOKE, 0);
+};
+
+DetailRevokeContext.prototype.privelegeClause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(PrivelegeClauseContext);
+ } else {
+ return this.getTypedRuleContext(PrivelegeClauseContext,i);
+ }
+};
+
+DetailRevokeContext.prototype.ON = function() {
+ return this.getToken(SqlParser.ON, 0);
+};
+
+DetailRevokeContext.prototype.privilegeLevel = function() {
+ return this.getTypedRuleContext(PrivilegeLevelContext,0);
+};
+
+DetailRevokeContext.prototype.FROM = function() {
+ return this.getToken(SqlParser.FROM, 0);
+};
+
+DetailRevokeContext.prototype.userName = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UserNameContext);
+ } else {
+ return this.getTypedRuleContext(UserNameContext,i);
+ }
+};
+
+DetailRevokeContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+DetailRevokeContext.prototype.TABLE = function() {
+ return this.getToken(SqlParser.TABLE, 0);
+};
+
+DetailRevokeContext.prototype.FUNCTION = function() {
+ return this.getToken(SqlParser.FUNCTION, 0);
+};
+
+DetailRevokeContext.prototype.PROCEDURE = function() {
+ return this.getToken(SqlParser.PROCEDURE, 0);
+};
+DetailRevokeContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterDetailRevoke(this);
+ }
+};
+
+DetailRevokeContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitDetailRevoke(this);
+ }
+};
+
+DetailRevokeContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitDetailRevoke(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function ShortRevokeContext(parser, ctx) {
+ RevokeStatementContext.call(this, parser);
+ RevokeStatementContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+ShortRevokeContext.prototype = Object.create(RevokeStatementContext.prototype);
+ShortRevokeContext.prototype.constructor = ShortRevokeContext;
+
+SqlParser.ShortRevokeContext = ShortRevokeContext;
+
+ShortRevokeContext.prototype.REVOKE = function() {
+ return this.getToken(SqlParser.REVOKE, 0);
+};
+
+ShortRevokeContext.prototype.ALL = function() {
+ return this.getToken(SqlParser.ALL, 0);
+};
+
+ShortRevokeContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+ShortRevokeContext.prototype.GRANT = function() {
+ return this.getToken(SqlParser.GRANT, 0);
+};
+
+ShortRevokeContext.prototype.OPTION = function() {
+ return this.getToken(SqlParser.OPTION, 0);
+};
+
+ShortRevokeContext.prototype.FROM = function() {
+ return this.getToken(SqlParser.FROM, 0);
+};
+
+ShortRevokeContext.prototype.userName = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UserNameContext);
+ } else {
+ return this.getTypedRuleContext(UserNameContext,i);
+ }
+};
+
+ShortRevokeContext.prototype.PRIVILEGES = function() {
+ return this.getToken(SqlParser.PRIVILEGES, 0);
+};
+ShortRevokeContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterShortRevoke(this);
+ }
+};
+
+ShortRevokeContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitShortRevoke(this);
+ }
+};
+
+ShortRevokeContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitShortRevoke(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+SqlParser.RevokeStatementContext = RevokeStatementContext;
+
+SqlParser.prototype.revokeStatement = function() {
+
+ var localctx = new RevokeStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 396, SqlParser.RULE_revokeStatement);
+ var _la = 0; // Token type
+ try {
+ this.state = 4606;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,672,this._ctx);
+ switch(la_) {
+ case 1:
+ localctx = new DetailRevokeContext(this, localctx);
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4566;
+ this.match(SqlParser.REVOKE);
+ this.state = 4567;
+ this.privelegeClause();
+ this.state = 4572;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 4568;
+ this.match(SqlParser.COMMA);
+ this.state = 4569;
+ this.privelegeClause();
+ this.state = 4574;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 4575;
+ this.match(SqlParser.ON);
+ this.state = 4577;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,668,this._ctx);
+ if(la_===1) {
+ this.state = 4576;
+ localctx.privilegeObject = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.PROCEDURE || _la===SqlParser.TABLE || _la===SqlParser.FUNCTION)) {
+ localctx.privilegeObject = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+
+ }
+ this.state = 4579;
+ this.privilegeLevel();
+ this.state = 4580;
+ this.match(SqlParser.FROM);
+ this.state = 4581;
+ this.userName();
+ this.state = 4586;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 4582;
+ this.match(SqlParser.COMMA);
+ this.state = 4583;
+ this.userName();
+ this.state = 4588;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+
+ case 2:
+ localctx = new ShortRevokeContext(this, localctx);
+ this.enterOuterAlt(localctx, 2);
+ this.state = 4589;
+ this.match(SqlParser.REVOKE);
+ this.state = 4590;
+ this.match(SqlParser.ALL);
+ this.state = 4592;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.PRIVILEGES) {
+ this.state = 4591;
+ this.match(SqlParser.PRIVILEGES);
+ }
+
+ this.state = 4594;
+ this.match(SqlParser.COMMA);
+ this.state = 4595;
+ this.match(SqlParser.GRANT);
+ this.state = 4596;
+ this.match(SqlParser.OPTION);
+ this.state = 4597;
+ this.match(SqlParser.FROM);
+ this.state = 4598;
+ this.userName();
+ this.state = 4603;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 4599;
+ this.match(SqlParser.COMMA);
+ this.state = 4600;
+ this.userName();
+ this.state = 4605;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function RevokeProxyContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_revokeProxy;
+ this.onUser = null; // UserNameContext
+ this.fromFirst = null; // UserNameContext
+ this._userName = null; // UserNameContext
+ this.fromOther = []; // of UserNameContexts
+ return this;
+}
+
+RevokeProxyContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+RevokeProxyContext.prototype.constructor = RevokeProxyContext;
+
+RevokeProxyContext.prototype.REVOKE = function() {
+ return this.getToken(SqlParser.REVOKE, 0);
+};
+
+RevokeProxyContext.prototype.PROXY = function() {
+ return this.getToken(SqlParser.PROXY, 0);
+};
+
+RevokeProxyContext.prototype.ON = function() {
+ return this.getToken(SqlParser.ON, 0);
+};
+
+RevokeProxyContext.prototype.FROM = function() {
+ return this.getToken(SqlParser.FROM, 0);
+};
+
+RevokeProxyContext.prototype.userName = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UserNameContext);
+ } else {
+ return this.getTypedRuleContext(UserNameContext,i);
+ }
+};
+
+RevokeProxyContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+RevokeProxyContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterRevokeProxy(this);
+ }
+};
+
+RevokeProxyContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitRevokeProxy(this);
+ }
+};
+
+RevokeProxyContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitRevokeProxy(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.RevokeProxyContext = RevokeProxyContext;
+
+SqlParser.prototype.revokeProxy = function() {
+
+ var localctx = new RevokeProxyContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 398, SqlParser.RULE_revokeProxy);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4608;
+ this.match(SqlParser.REVOKE);
+ this.state = 4609;
+ this.match(SqlParser.PROXY);
+ this.state = 4610;
+ this.match(SqlParser.ON);
+ this.state = 4611;
+ localctx.onUser = this.userName();
+ this.state = 4612;
+ this.match(SqlParser.FROM);
+ this.state = 4613;
+ localctx.fromFirst = this.userName();
+ this.state = 4618;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 4614;
+ this.match(SqlParser.COMMA);
+ this.state = 4615;
+ localctx._userName = this.userName();
+ localctx.fromOther.push(localctx._userName);
+ this.state = 4620;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function SetPasswordStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_setPasswordStatement;
+ return this;
+}
+
+SetPasswordStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+SetPasswordStatementContext.prototype.constructor = SetPasswordStatementContext;
+
+SetPasswordStatementContext.prototype.SET = function() {
+ return this.getToken(SqlParser.SET, 0);
+};
+
+SetPasswordStatementContext.prototype.PASSWORD = function() {
+ return this.getToken(SqlParser.PASSWORD, 0);
+};
+
+SetPasswordStatementContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+
+SetPasswordStatementContext.prototype.passwordFunctionClause = function() {
+ return this.getTypedRuleContext(PasswordFunctionClauseContext,0);
+};
+
+SetPasswordStatementContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+SetPasswordStatementContext.prototype.FOR = function() {
+ return this.getToken(SqlParser.FOR, 0);
+};
+
+SetPasswordStatementContext.prototype.userName = function() {
+ return this.getTypedRuleContext(UserNameContext,0);
+};
+
+SetPasswordStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSetPasswordStatement(this);
+ }
+};
+
+SetPasswordStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSetPasswordStatement(this);
+ }
+};
+
+SetPasswordStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSetPasswordStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.SetPasswordStatementContext = SetPasswordStatementContext;
+
+SqlParser.prototype.setPasswordStatement = function() {
+
+ var localctx = new SetPasswordStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 400, SqlParser.RULE_setPasswordStatement);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4621;
+ this.match(SqlParser.SET);
+ this.state = 4622;
+ this.match(SqlParser.PASSWORD);
+ this.state = 4625;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.FOR) {
+ this.state = 4623;
+ this.match(SqlParser.FOR);
+ this.state = 4624;
+ this.userName();
+ }
+
+ this.state = 4627;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ this.state = 4630;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.OLD_PASSWORD:
+ case SqlParser.PASSWORD:
+ this.state = 4628;
+ this.passwordFunctionClause();
+ break;
+ case SqlParser.STRING_LITERAL:
+ this.state = 4629;
+ this.match(SqlParser.STRING_LITERAL);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function UserSpecificationContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_userSpecification;
+ return this;
+}
+
+UserSpecificationContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+UserSpecificationContext.prototype.constructor = UserSpecificationContext;
+
+UserSpecificationContext.prototype.userName = function() {
+ return this.getTypedRuleContext(UserNameContext,0);
+};
+
+UserSpecificationContext.prototype.userPasswordOption = function() {
+ return this.getTypedRuleContext(UserPasswordOptionContext,0);
+};
+
+UserSpecificationContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterUserSpecification(this);
+ }
+};
+
+UserSpecificationContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitUserSpecification(this);
+ }
+};
+
+UserSpecificationContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitUserSpecification(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.UserSpecificationContext = UserSpecificationContext;
+
+SqlParser.prototype.userSpecification = function() {
+
+ var localctx = new UserSpecificationContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 402, SqlParser.RULE_userSpecification);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4632;
+ this.userName();
+ this.state = 4633;
+ this.userPasswordOption();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function UserAuthOptionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_userAuthOption;
+ return this;
+}
+
+UserAuthOptionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+UserAuthOptionContext.prototype.constructor = UserAuthOptionContext;
+
+
+
+UserAuthOptionContext.prototype.copyFrom = function(ctx) {
+ antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx);
+};
+
+
+function SimpleAuthOptionContext(parser, ctx) {
+ UserAuthOptionContext.call(this, parser);
+ UserAuthOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+SimpleAuthOptionContext.prototype = Object.create(UserAuthOptionContext.prototype);
+SimpleAuthOptionContext.prototype.constructor = SimpleAuthOptionContext;
+
+SqlParser.SimpleAuthOptionContext = SimpleAuthOptionContext;
+
+SimpleAuthOptionContext.prototype.userName = function() {
+ return this.getTypedRuleContext(UserNameContext,0);
+};
+SimpleAuthOptionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSimpleAuthOption(this);
+ }
+};
+
+SimpleAuthOptionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSimpleAuthOption(this);
+ }
+};
+
+SimpleAuthOptionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSimpleAuthOption(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function PasswordAuthOptionContext(parser, ctx) {
+ UserAuthOptionContext.call(this, parser);
+ this.hashed = null; // Token;
+ UserAuthOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+PasswordAuthOptionContext.prototype = Object.create(UserAuthOptionContext.prototype);
+PasswordAuthOptionContext.prototype.constructor = PasswordAuthOptionContext;
+
+SqlParser.PasswordAuthOptionContext = PasswordAuthOptionContext;
+
+PasswordAuthOptionContext.prototype.userName = function() {
+ return this.getTypedRuleContext(UserNameContext,0);
+};
+
+PasswordAuthOptionContext.prototype.IDENTIFIED = function() {
+ return this.getToken(SqlParser.IDENTIFIED, 0);
+};
+
+PasswordAuthOptionContext.prototype.BY = function() {
+ return this.getToken(SqlParser.BY, 0);
+};
+
+PasswordAuthOptionContext.prototype.PASSWORD = function() {
+ return this.getToken(SqlParser.PASSWORD, 0);
+};
+
+PasswordAuthOptionContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+PasswordAuthOptionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterPasswordAuthOption(this);
+ }
+};
+
+PasswordAuthOptionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitPasswordAuthOption(this);
+ }
+};
+
+PasswordAuthOptionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitPasswordAuthOption(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function StringAuthOptionContext(parser, ctx) {
+ UserAuthOptionContext.call(this, parser);
+ UserAuthOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+StringAuthOptionContext.prototype = Object.create(UserAuthOptionContext.prototype);
+StringAuthOptionContext.prototype.constructor = StringAuthOptionContext;
+
+SqlParser.StringAuthOptionContext = StringAuthOptionContext;
+
+StringAuthOptionContext.prototype.userName = function() {
+ return this.getTypedRuleContext(UserNameContext,0);
+};
+
+StringAuthOptionContext.prototype.IDENTIFIED = function() {
+ return this.getToken(SqlParser.IDENTIFIED, 0);
+};
+
+StringAuthOptionContext.prototype.BY = function() {
+ return this.getToken(SqlParser.BY, 0);
+};
+
+StringAuthOptionContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+StringAuthOptionContext.prototype.WITH = function() {
+ return this.getToken(SqlParser.WITH, 0);
+};
+
+StringAuthOptionContext.prototype.authPlugin = function() {
+ return this.getTypedRuleContext(AuthPluginContext,0);
+};
+StringAuthOptionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterStringAuthOption(this);
+ }
+};
+
+StringAuthOptionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitStringAuthOption(this);
+ }
+};
+
+StringAuthOptionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitStringAuthOption(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function HashAuthOptionContext(parser, ctx) {
+ UserAuthOptionContext.call(this, parser);
+ UserAuthOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+HashAuthOptionContext.prototype = Object.create(UserAuthOptionContext.prototype);
+HashAuthOptionContext.prototype.constructor = HashAuthOptionContext;
+
+SqlParser.HashAuthOptionContext = HashAuthOptionContext;
+
+HashAuthOptionContext.prototype.userName = function() {
+ return this.getTypedRuleContext(UserNameContext,0);
+};
+
+HashAuthOptionContext.prototype.IDENTIFIED = function() {
+ return this.getToken(SqlParser.IDENTIFIED, 0);
+};
+
+HashAuthOptionContext.prototype.WITH = function() {
+ return this.getToken(SqlParser.WITH, 0);
+};
+
+HashAuthOptionContext.prototype.authPlugin = function() {
+ return this.getTypedRuleContext(AuthPluginContext,0);
+};
+
+HashAuthOptionContext.prototype.AS = function() {
+ return this.getToken(SqlParser.AS, 0);
+};
+
+HashAuthOptionContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+HashAuthOptionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterHashAuthOption(this);
+ }
+};
+
+HashAuthOptionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitHashAuthOption(this);
+ }
+};
+
+HashAuthOptionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitHashAuthOption(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+SqlParser.UserAuthOptionContext = UserAuthOptionContext;
+
+SqlParser.prototype.userAuthOption = function() {
+
+ var localctx = new UserAuthOptionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 404, SqlParser.RULE_userAuthOption);
+ var _la = 0; // Token type
+ try {
+ this.state = 4659;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,678,this._ctx);
+ switch(la_) {
+ case 1:
+ localctx = new PasswordAuthOptionContext(this, localctx);
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4635;
+ this.userName();
+ this.state = 4636;
+ this.match(SqlParser.IDENTIFIED);
+ this.state = 4637;
+ this.match(SqlParser.BY);
+ this.state = 4638;
+ this.match(SqlParser.PASSWORD);
+ this.state = 4639;
+ localctx.hashed = this.match(SqlParser.STRING_LITERAL);
+ break;
+
+ case 2:
+ localctx = new StringAuthOptionContext(this, localctx);
+ this.enterOuterAlt(localctx, 2);
+ this.state = 4641;
+ this.userName();
+ this.state = 4642;
+ this.match(SqlParser.IDENTIFIED);
+ this.state = 4645;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.WITH) {
+ this.state = 4643;
+ this.match(SqlParser.WITH);
+ this.state = 4644;
+ this.authPlugin();
+ }
+
+ this.state = 4647;
+ this.match(SqlParser.BY);
+ this.state = 4648;
+ this.match(SqlParser.STRING_LITERAL);
+ break;
+
+ case 3:
+ localctx = new HashAuthOptionContext(this, localctx);
+ this.enterOuterAlt(localctx, 3);
+ this.state = 4650;
+ this.userName();
+ this.state = 4651;
+ this.match(SqlParser.IDENTIFIED);
+ this.state = 4652;
+ this.match(SqlParser.WITH);
+ this.state = 4653;
+ this.authPlugin();
+ this.state = 4656;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.AS) {
+ this.state = 4654;
+ this.match(SqlParser.AS);
+ this.state = 4655;
+ this.match(SqlParser.STRING_LITERAL);
+ }
+
+ break;
+
+ case 4:
+ localctx = new SimpleAuthOptionContext(this, localctx);
+ this.enterOuterAlt(localctx, 4);
+ this.state = 4658;
+ this.userName();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function TlsOptionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_tlsOption;
+ return this;
+}
+
+TlsOptionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+TlsOptionContext.prototype.constructor = TlsOptionContext;
+
+TlsOptionContext.prototype.SSL = function() {
+ return this.getToken(SqlParser.SSL, 0);
+};
+
+TlsOptionContext.prototype.X509 = function() {
+ return this.getToken(SqlParser.X509, 0);
+};
+
+TlsOptionContext.prototype.CIPHER = function() {
+ return this.getToken(SqlParser.CIPHER, 0);
+};
+
+TlsOptionContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+TlsOptionContext.prototype.ISSUER = function() {
+ return this.getToken(SqlParser.ISSUER, 0);
+};
+
+TlsOptionContext.prototype.SUBJECT = function() {
+ return this.getToken(SqlParser.SUBJECT, 0);
+};
+
+TlsOptionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterTlsOption(this);
+ }
+};
+
+TlsOptionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitTlsOption(this);
+ }
+};
+
+TlsOptionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitTlsOption(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.TlsOptionContext = TlsOptionContext;
+
+SqlParser.prototype.tlsOption = function() {
+
+ var localctx = new TlsOptionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 406, SqlParser.RULE_tlsOption);
+ try {
+ this.state = 4669;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.SSL:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4661;
+ this.match(SqlParser.SSL);
+ break;
+ case SqlParser.X509:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 4662;
+ this.match(SqlParser.X509);
+ break;
+ case SqlParser.CIPHER:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 4663;
+ this.match(SqlParser.CIPHER);
+ this.state = 4664;
+ this.match(SqlParser.STRING_LITERAL);
+ break;
+ case SqlParser.ISSUER:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 4665;
+ this.match(SqlParser.ISSUER);
+ this.state = 4666;
+ this.match(SqlParser.STRING_LITERAL);
+ break;
+ case SqlParser.SUBJECT:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 4667;
+ this.match(SqlParser.SUBJECT);
+ this.state = 4668;
+ this.match(SqlParser.STRING_LITERAL);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function UserResourceOptionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_userResourceOption;
+ return this;
+}
+
+UserResourceOptionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+UserResourceOptionContext.prototype.constructor = UserResourceOptionContext;
+
+UserResourceOptionContext.prototype.MAX_QUERIES_PER_HOUR = function() {
+ return this.getToken(SqlParser.MAX_QUERIES_PER_HOUR, 0);
+};
+
+UserResourceOptionContext.prototype.decimalLiteral = function() {
+ return this.getTypedRuleContext(DecimalLiteralContext,0);
+};
+
+UserResourceOptionContext.prototype.MAX_UPDATES_PER_HOUR = function() {
+ return this.getToken(SqlParser.MAX_UPDATES_PER_HOUR, 0);
+};
+
+UserResourceOptionContext.prototype.MAX_CONNECTIONS_PER_HOUR = function() {
+ return this.getToken(SqlParser.MAX_CONNECTIONS_PER_HOUR, 0);
+};
+
+UserResourceOptionContext.prototype.MAX_USER_CONNECTIONS = function() {
+ return this.getToken(SqlParser.MAX_USER_CONNECTIONS, 0);
+};
+
+UserResourceOptionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterUserResourceOption(this);
+ }
+};
+
+UserResourceOptionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitUserResourceOption(this);
+ }
+};
+
+UserResourceOptionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitUserResourceOption(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.UserResourceOptionContext = UserResourceOptionContext;
+
+SqlParser.prototype.userResourceOption = function() {
+
+ var localctx = new UserResourceOptionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 408, SqlParser.RULE_userResourceOption);
+ try {
+ this.state = 4679;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.MAX_QUERIES_PER_HOUR:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4671;
+ this.match(SqlParser.MAX_QUERIES_PER_HOUR);
+ this.state = 4672;
+ this.decimalLiteral();
+ break;
+ case SqlParser.MAX_UPDATES_PER_HOUR:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 4673;
+ this.match(SqlParser.MAX_UPDATES_PER_HOUR);
+ this.state = 4674;
+ this.decimalLiteral();
+ break;
+ case SqlParser.MAX_CONNECTIONS_PER_HOUR:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 4675;
+ this.match(SqlParser.MAX_CONNECTIONS_PER_HOUR);
+ this.state = 4676;
+ this.decimalLiteral();
+ break;
+ case SqlParser.MAX_USER_CONNECTIONS:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 4677;
+ this.match(SqlParser.MAX_USER_CONNECTIONS);
+ this.state = 4678;
+ this.decimalLiteral();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function UserPasswordOptionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_userPasswordOption;
+ this.expireType = null; // Token
+ return this;
+}
+
+UserPasswordOptionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+UserPasswordOptionContext.prototype.constructor = UserPasswordOptionContext;
+
+UserPasswordOptionContext.prototype.PASSWORD = function() {
+ return this.getToken(SqlParser.PASSWORD, 0);
+};
+
+UserPasswordOptionContext.prototype.EXPIRE = function() {
+ return this.getToken(SqlParser.EXPIRE, 0);
+};
+
+UserPasswordOptionContext.prototype.decimalLiteral = function() {
+ return this.getTypedRuleContext(DecimalLiteralContext,0);
+};
+
+UserPasswordOptionContext.prototype.DAY = function() {
+ return this.getToken(SqlParser.DAY, 0);
+};
+
+UserPasswordOptionContext.prototype.DEFAULT = function() {
+ return this.getToken(SqlParser.DEFAULT, 0);
+};
+
+UserPasswordOptionContext.prototype.NEVER = function() {
+ return this.getToken(SqlParser.NEVER, 0);
+};
+
+UserPasswordOptionContext.prototype.INTERVAL = function() {
+ return this.getToken(SqlParser.INTERVAL, 0);
+};
+
+UserPasswordOptionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterUserPasswordOption(this);
+ }
+};
+
+UserPasswordOptionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitUserPasswordOption(this);
+ }
+};
+
+UserPasswordOptionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitUserPasswordOption(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.UserPasswordOptionContext = UserPasswordOptionContext;
+
+SqlParser.prototype.userPasswordOption = function() {
+
+ var localctx = new UserPasswordOptionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 410, SqlParser.RULE_userPasswordOption);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4681;
+ this.match(SqlParser.PASSWORD);
+ this.state = 4682;
+ this.match(SqlParser.EXPIRE);
+ this.state = 4689;
+ this._errHandler.sync(this);
+ switch (this._input.LA(1)) {
+ case SqlParser.DEFAULT:
+ this.state = 4683;
+ localctx.expireType = this.match(SqlParser.DEFAULT);
+ break;
+ case SqlParser.NEVER:
+ this.state = 4684;
+ localctx.expireType = this.match(SqlParser.NEVER);
+ break;
+ case SqlParser.INTERVAL:
+ this.state = 4685;
+ localctx.expireType = this.match(SqlParser.INTERVAL);
+ this.state = 4686;
+ this.decimalLiteral();
+ this.state = 4687;
+ this.match(SqlParser.DAY);
+ break;
+ case SqlParser.EOF:
+ case SqlParser.ALTER:
+ case SqlParser.ANALYZE:
+ case SqlParser.CALL:
+ case SqlParser.CHANGE:
+ case SqlParser.CHECK:
+ case SqlParser.CREATE:
+ case SqlParser.DELETE:
+ case SqlParser.DESC:
+ case SqlParser.DESCRIBE:
+ case SqlParser.DROP:
+ case SqlParser.EXPLAIN:
+ case SqlParser.GET:
+ case SqlParser.GRANT:
+ case SqlParser.INSERT:
+ case SqlParser.KILL:
+ case SqlParser.LOAD:
+ case SqlParser.LOCK:
+ case SqlParser.OPTIMIZE:
+ case SqlParser.PURGE:
+ case SqlParser.RELEASE:
+ case SqlParser.RENAME:
+ case SqlParser.REPLACE:
+ case SqlParser.RESIGNAL:
+ case SqlParser.REVOKE:
+ case SqlParser.SELECT:
+ case SqlParser.SET:
+ case SqlParser.SHOW:
+ case SqlParser.SIGNAL:
+ case SqlParser.UNLOCK:
+ case SqlParser.UPDATE:
+ case SqlParser.USE:
+ case SqlParser.ACCOUNT:
+ case SqlParser.BEGIN:
+ case SqlParser.BINLOG:
+ case SqlParser.CACHE:
+ case SqlParser.CHECKSUM:
+ case SqlParser.COMMIT:
+ case SqlParser.DEALLOCATE:
+ case SqlParser.DO:
+ case SqlParser.FLUSH:
+ case SqlParser.HANDLER:
+ case SqlParser.HELP:
+ case SqlParser.INSTALL:
+ case SqlParser.PASSWORD:
+ case SqlParser.PREPARE:
+ case SqlParser.REPAIR:
+ case SqlParser.RESET:
+ case SqlParser.ROLLBACK:
+ case SqlParser.SAVEPOINT:
+ case SqlParser.START:
+ case SqlParser.STOP:
+ case SqlParser.TRUNCATE:
+ case SqlParser.UNINSTALL:
+ case SqlParser.XA:
+ case SqlParser.EXECUTE:
+ case SqlParser.SHUTDOWN:
+ case SqlParser.MINUSMINUS:
+ case SqlParser.LR_BRACKET:
+ case SqlParser.COMMA:
+ case SqlParser.SEMI:
+ break;
+ default:
+ break;
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function UserLockOptionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_userLockOption;
+ this.lockType = null; // Token
+ return this;
+}
+
+UserLockOptionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+UserLockOptionContext.prototype.constructor = UserLockOptionContext;
+
+UserLockOptionContext.prototype.ACCOUNT = function() {
+ return this.getToken(SqlParser.ACCOUNT, 0);
+};
+
+UserLockOptionContext.prototype.LOCK = function() {
+ return this.getToken(SqlParser.LOCK, 0);
+};
+
+UserLockOptionContext.prototype.UNLOCK = function() {
+ return this.getToken(SqlParser.UNLOCK, 0);
+};
+
+UserLockOptionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterUserLockOption(this);
+ }
+};
+
+UserLockOptionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitUserLockOption(this);
+ }
+};
+
+UserLockOptionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitUserLockOption(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.UserLockOptionContext = UserLockOptionContext;
+
+SqlParser.prototype.userLockOption = function() {
+
+ var localctx = new UserLockOptionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 412, SqlParser.RULE_userLockOption);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4691;
+ this.match(SqlParser.ACCOUNT);
+ this.state = 4692;
+ localctx.lockType = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.LOCK || _la===SqlParser.UNLOCK)) {
+ localctx.lockType = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function PrivelegeClauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_privelegeClause;
+ return this;
+}
+
+PrivelegeClauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+PrivelegeClauseContext.prototype.constructor = PrivelegeClauseContext;
+
+PrivelegeClauseContext.prototype.privilege = function() {
+ return this.getTypedRuleContext(PrivilegeContext,0);
+};
+
+PrivelegeClauseContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+PrivelegeClauseContext.prototype.uidList = function() {
+ return this.getTypedRuleContext(UidListContext,0);
+};
+
+PrivelegeClauseContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+PrivelegeClauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterPrivelegeClause(this);
+ }
+};
+
+PrivelegeClauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitPrivelegeClause(this);
+ }
+};
+
+PrivelegeClauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitPrivelegeClause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.PrivelegeClauseContext = PrivelegeClauseContext;
+
+SqlParser.prototype.privelegeClause = function() {
+
+ var localctx = new PrivelegeClauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 414, SqlParser.RULE_privelegeClause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4694;
+ this.privilege();
+ this.state = 4699;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.LR_BRACKET) {
+ this.state = 4695;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 4696;
+ this.uidList();
+ this.state = 4697;
+ this.match(SqlParser.RR_BRACKET);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function PrivilegeContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_privilege;
+ return this;
+}
+
+PrivilegeContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+PrivilegeContext.prototype.constructor = PrivilegeContext;
+
+PrivilegeContext.prototype.ALL = function() {
+ return this.getToken(SqlParser.ALL, 0);
+};
+
+PrivilegeContext.prototype.PRIVILEGES = function() {
+ return this.getToken(SqlParser.PRIVILEGES, 0);
+};
+
+PrivilegeContext.prototype.ALTER = function() {
+ return this.getToken(SqlParser.ALTER, 0);
+};
+
+PrivilegeContext.prototype.ROUTINE = function() {
+ return this.getToken(SqlParser.ROUTINE, 0);
+};
+
+PrivilegeContext.prototype.CREATE = function() {
+ return this.getToken(SqlParser.CREATE, 0);
+};
+
+PrivilegeContext.prototype.TEMPORARY = function() {
+ return this.getToken(SqlParser.TEMPORARY, 0);
+};
+
+PrivilegeContext.prototype.TABLES = function() {
+ return this.getToken(SqlParser.TABLES, 0);
+};
+
+PrivilegeContext.prototype.VIEW = function() {
+ return this.getToken(SqlParser.VIEW, 0);
+};
+
+PrivilegeContext.prototype.USER = function() {
+ return this.getToken(SqlParser.USER, 0);
+};
+
+PrivilegeContext.prototype.TABLESPACE = function() {
+ return this.getToken(SqlParser.TABLESPACE, 0);
+};
+
+PrivilegeContext.prototype.ROLE = function() {
+ return this.getToken(SqlParser.ROLE, 0);
+};
+
+PrivilegeContext.prototype.DELETE = function() {
+ return this.getToken(SqlParser.DELETE, 0);
+};
+
+PrivilegeContext.prototype.DROP = function() {
+ return this.getToken(SqlParser.DROP, 0);
+};
+
+PrivilegeContext.prototype.EVENT = function() {
+ return this.getToken(SqlParser.EVENT, 0);
+};
+
+PrivilegeContext.prototype.EXECUTE = function() {
+ return this.getToken(SqlParser.EXECUTE, 0);
+};
+
+PrivilegeContext.prototype.FILE = function() {
+ return this.getToken(SqlParser.FILE, 0);
+};
+
+PrivilegeContext.prototype.GRANT = function() {
+ return this.getToken(SqlParser.GRANT, 0);
+};
+
+PrivilegeContext.prototype.OPTION = function() {
+ return this.getToken(SqlParser.OPTION, 0);
+};
+
+PrivilegeContext.prototype.INDEX = function() {
+ return this.getToken(SqlParser.INDEX, 0);
+};
+
+PrivilegeContext.prototype.INSERT = function() {
+ return this.getToken(SqlParser.INSERT, 0);
+};
+
+PrivilegeContext.prototype.LOCK = function() {
+ return this.getToken(SqlParser.LOCK, 0);
+};
+
+PrivilegeContext.prototype.PROCESS = function() {
+ return this.getToken(SqlParser.PROCESS, 0);
+};
+
+PrivilegeContext.prototype.PROXY = function() {
+ return this.getToken(SqlParser.PROXY, 0);
+};
+
+PrivilegeContext.prototype.REFERENCES = function() {
+ return this.getToken(SqlParser.REFERENCES, 0);
+};
+
+PrivilegeContext.prototype.RELOAD = function() {
+ return this.getToken(SqlParser.RELOAD, 0);
+};
+
+PrivilegeContext.prototype.REPLICATION = function() {
+ return this.getToken(SqlParser.REPLICATION, 0);
+};
+
+PrivilegeContext.prototype.CLIENT = function() {
+ return this.getToken(SqlParser.CLIENT, 0);
+};
+
+PrivilegeContext.prototype.SLAVE = function() {
+ return this.getToken(SqlParser.SLAVE, 0);
+};
+
+PrivilegeContext.prototype.SELECT = function() {
+ return this.getToken(SqlParser.SELECT, 0);
+};
+
+PrivilegeContext.prototype.SHOW = function() {
+ return this.getToken(SqlParser.SHOW, 0);
+};
+
+PrivilegeContext.prototype.DATABASES = function() {
+ return this.getToken(SqlParser.DATABASES, 0);
+};
+
+PrivilegeContext.prototype.SHUTDOWN = function() {
+ return this.getToken(SqlParser.SHUTDOWN, 0);
+};
+
+PrivilegeContext.prototype.SUPER = function() {
+ return this.getToken(SqlParser.SUPER, 0);
+};
+
+PrivilegeContext.prototype.TRIGGER = function() {
+ return this.getToken(SqlParser.TRIGGER, 0);
+};
+
+PrivilegeContext.prototype.UPDATE = function() {
+ return this.getToken(SqlParser.UPDATE, 0);
+};
+
+PrivilegeContext.prototype.USAGE = function() {
+ return this.getToken(SqlParser.USAGE, 0);
+};
+
+PrivilegeContext.prototype.AUDIT_ADMIN = function() {
+ return this.getToken(SqlParser.AUDIT_ADMIN, 0);
+};
+
+PrivilegeContext.prototype.BACKUP_ADMIN = function() {
+ return this.getToken(SqlParser.BACKUP_ADMIN, 0);
+};
+
+PrivilegeContext.prototype.BINLOG_ADMIN = function() {
+ return this.getToken(SqlParser.BINLOG_ADMIN, 0);
+};
+
+PrivilegeContext.prototype.BINLOG_ENCRYPTION_ADMIN = function() {
+ return this.getToken(SqlParser.BINLOG_ENCRYPTION_ADMIN, 0);
+};
+
+PrivilegeContext.prototype.CLONE_ADMIN = function() {
+ return this.getToken(SqlParser.CLONE_ADMIN, 0);
+};
+
+PrivilegeContext.prototype.CONNECTION_ADMIN = function() {
+ return this.getToken(SqlParser.CONNECTION_ADMIN, 0);
+};
+
+PrivilegeContext.prototype.ENCRYPTION_KEY_ADMIN = function() {
+ return this.getToken(SqlParser.ENCRYPTION_KEY_ADMIN, 0);
+};
+
+PrivilegeContext.prototype.FIREWALL_ADMIN = function() {
+ return this.getToken(SqlParser.FIREWALL_ADMIN, 0);
+};
+
+PrivilegeContext.prototype.FIREWALL_USER = function() {
+ return this.getToken(SqlParser.FIREWALL_USER, 0);
+};
+
+PrivilegeContext.prototype.GROUP_REPLICATION_ADMIN = function() {
+ return this.getToken(SqlParser.GROUP_REPLICATION_ADMIN, 0);
+};
+
+PrivilegeContext.prototype.INNODB_REDO_LOG_ARCHIVE = function() {
+ return this.getToken(SqlParser.INNODB_REDO_LOG_ARCHIVE, 0);
+};
+
+PrivilegeContext.prototype.NDB_STORED_USER = function() {
+ return this.getToken(SqlParser.NDB_STORED_USER, 0);
+};
+
+PrivilegeContext.prototype.PERSIST_RO_VARIABLES_ADMIN = function() {
+ return this.getToken(SqlParser.PERSIST_RO_VARIABLES_ADMIN, 0);
+};
+
+PrivilegeContext.prototype.REPLICATION_APPLIER = function() {
+ return this.getToken(SqlParser.REPLICATION_APPLIER, 0);
+};
+
+PrivilegeContext.prototype.REPLICATION_SLAVE_ADMIN = function() {
+ return this.getToken(SqlParser.REPLICATION_SLAVE_ADMIN, 0);
+};
+
+PrivilegeContext.prototype.RESOURCE_GROUP_ADMIN = function() {
+ return this.getToken(SqlParser.RESOURCE_GROUP_ADMIN, 0);
+};
+
+PrivilegeContext.prototype.RESOURCE_GROUP_USER = function() {
+ return this.getToken(SqlParser.RESOURCE_GROUP_USER, 0);
+};
+
+PrivilegeContext.prototype.ROLE_ADMIN = function() {
+ return this.getToken(SqlParser.ROLE_ADMIN, 0);
+};
+
+PrivilegeContext.prototype.SESSION_VARIABLES_ADMIN = function() {
+ return this.getToken(SqlParser.SESSION_VARIABLES_ADMIN, 0);
+};
+
+PrivilegeContext.prototype.SET_USER_ID = function() {
+ return this.getToken(SqlParser.SET_USER_ID, 0);
+};
+
+PrivilegeContext.prototype.SHOW_ROUTINE = function() {
+ return this.getToken(SqlParser.SHOW_ROUTINE, 0);
+};
+
+PrivilegeContext.prototype.SYSTEM_VARIABLES_ADMIN = function() {
+ return this.getToken(SqlParser.SYSTEM_VARIABLES_ADMIN, 0);
+};
+
+PrivilegeContext.prototype.TABLE_ENCRYPTION_ADMIN = function() {
+ return this.getToken(SqlParser.TABLE_ENCRYPTION_ADMIN, 0);
+};
+
+PrivilegeContext.prototype.VERSION_TOKEN_ADMIN = function() {
+ return this.getToken(SqlParser.VERSION_TOKEN_ADMIN, 0);
+};
+
+PrivilegeContext.prototype.XA_RECOVER_ADMIN = function() {
+ return this.getToken(SqlParser.XA_RECOVER_ADMIN, 0);
+};
+
+PrivilegeContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterPrivilege(this);
+ }
+};
+
+PrivilegeContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitPrivilege(this);
+ }
+};
+
+PrivilegeContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitPrivilege(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.PrivilegeContext = PrivilegeContext;
+
+SqlParser.prototype.privilege = function() {
+
+ var localctx = new PrivilegeContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 416, SqlParser.RULE_privilege);
+ var _la = 0; // Token type
+ try {
+ this.state = 4772;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.ALL:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4701;
+ this.match(SqlParser.ALL);
+ this.state = 4703;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.PRIVILEGES) {
+ this.state = 4702;
+ this.match(SqlParser.PRIVILEGES);
+ }
+
+ break;
+ case SqlParser.ALTER:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 4705;
+ this.match(SqlParser.ALTER);
+ this.state = 4707;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.ROUTINE) {
+ this.state = 4706;
+ this.match(SqlParser.ROUTINE);
+ }
+
+ break;
+ case SqlParser.CREATE:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 4709;
+ this.match(SqlParser.CREATE);
+ this.state = 4717;
+ this._errHandler.sync(this);
+ switch (this._input.LA(1)) {
+ case SqlParser.TEMPORARY:
+ this.state = 4710;
+ this.match(SqlParser.TEMPORARY);
+ this.state = 4711;
+ this.match(SqlParser.TABLES);
+ break;
+ case SqlParser.ROUTINE:
+ this.state = 4712;
+ this.match(SqlParser.ROUTINE);
+ break;
+ case SqlParser.VIEW:
+ this.state = 4713;
+ this.match(SqlParser.VIEW);
+ break;
+ case SqlParser.USER:
+ this.state = 4714;
+ this.match(SqlParser.USER);
+ break;
+ case SqlParser.TABLESPACE:
+ this.state = 4715;
+ this.match(SqlParser.TABLESPACE);
+ break;
+ case SqlParser.ROLE:
+ this.state = 4716;
+ this.match(SqlParser.ROLE);
+ break;
+ case SqlParser.ON:
+ case SqlParser.LR_BRACKET:
+ case SqlParser.COMMA:
+ break;
+ default:
+ break;
+ }
+ break;
+ case SqlParser.DELETE:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 4719;
+ this.match(SqlParser.DELETE);
+ break;
+ case SqlParser.DROP:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 4720;
+ this.match(SqlParser.DROP);
+ this.state = 4722;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.ROLE) {
+ this.state = 4721;
+ this.match(SqlParser.ROLE);
+ }
+
+ break;
+ case SqlParser.EVENT:
+ this.enterOuterAlt(localctx, 6);
+ this.state = 4724;
+ this.match(SqlParser.EVENT);
+ break;
+ case SqlParser.EXECUTE:
+ this.enterOuterAlt(localctx, 7);
+ this.state = 4725;
+ this.match(SqlParser.EXECUTE);
+ break;
+ case SqlParser.FILE:
+ this.enterOuterAlt(localctx, 8);
+ this.state = 4726;
+ this.match(SqlParser.FILE);
+ break;
+ case SqlParser.GRANT:
+ this.enterOuterAlt(localctx, 9);
+ this.state = 4727;
+ this.match(SqlParser.GRANT);
+ this.state = 4728;
+ this.match(SqlParser.OPTION);
+ break;
+ case SqlParser.INDEX:
+ this.enterOuterAlt(localctx, 10);
+ this.state = 4729;
+ this.match(SqlParser.INDEX);
+ break;
+ case SqlParser.INSERT:
+ this.enterOuterAlt(localctx, 11);
+ this.state = 4730;
+ this.match(SqlParser.INSERT);
+ break;
+ case SqlParser.LOCK:
+ this.enterOuterAlt(localctx, 12);
+ this.state = 4731;
+ this.match(SqlParser.LOCK);
+ this.state = 4732;
+ this.match(SqlParser.TABLES);
+ break;
+ case SqlParser.PROCESS:
+ this.enterOuterAlt(localctx, 13);
+ this.state = 4733;
+ this.match(SqlParser.PROCESS);
+ break;
+ case SqlParser.PROXY:
+ this.enterOuterAlt(localctx, 14);
+ this.state = 4734;
+ this.match(SqlParser.PROXY);
+ break;
+ case SqlParser.REFERENCES:
+ this.enterOuterAlt(localctx, 15);
+ this.state = 4735;
+ this.match(SqlParser.REFERENCES);
+ break;
+ case SqlParser.RELOAD:
+ this.enterOuterAlt(localctx, 16);
+ this.state = 4736;
+ this.match(SqlParser.RELOAD);
+ break;
+ case SqlParser.REPLICATION:
+ this.enterOuterAlt(localctx, 17);
+ this.state = 4737;
+ this.match(SqlParser.REPLICATION);
+ this.state = 4738;
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.CLIENT || _la===SqlParser.SLAVE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+ case SqlParser.SELECT:
+ this.enterOuterAlt(localctx, 18);
+ this.state = 4739;
+ this.match(SqlParser.SELECT);
+ break;
+ case SqlParser.SHOW:
+ this.enterOuterAlt(localctx, 19);
+ this.state = 4740;
+ this.match(SqlParser.SHOW);
+ this.state = 4741;
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.DATABASES || _la===SqlParser.VIEW)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+ case SqlParser.SHUTDOWN:
+ this.enterOuterAlt(localctx, 20);
+ this.state = 4742;
+ this.match(SqlParser.SHUTDOWN);
+ break;
+ case SqlParser.SUPER:
+ this.enterOuterAlt(localctx, 21);
+ this.state = 4743;
+ this.match(SqlParser.SUPER);
+ break;
+ case SqlParser.TRIGGER:
+ this.enterOuterAlt(localctx, 22);
+ this.state = 4744;
+ this.match(SqlParser.TRIGGER);
+ break;
+ case SqlParser.UPDATE:
+ this.enterOuterAlt(localctx, 23);
+ this.state = 4745;
+ this.match(SqlParser.UPDATE);
+ break;
+ case SqlParser.USAGE:
+ this.enterOuterAlt(localctx, 24);
+ this.state = 4746;
+ this.match(SqlParser.USAGE);
+ break;
+ case SqlParser.AUDIT_ADMIN:
+ this.enterOuterAlt(localctx, 25);
+ this.state = 4747;
+ this.match(SqlParser.AUDIT_ADMIN);
+ break;
+ case SqlParser.BACKUP_ADMIN:
+ this.enterOuterAlt(localctx, 26);
+ this.state = 4748;
+ this.match(SqlParser.BACKUP_ADMIN);
+ break;
+ case SqlParser.BINLOG_ADMIN:
+ this.enterOuterAlt(localctx, 27);
+ this.state = 4749;
+ this.match(SqlParser.BINLOG_ADMIN);
+ break;
+ case SqlParser.BINLOG_ENCRYPTION_ADMIN:
+ this.enterOuterAlt(localctx, 28);
+ this.state = 4750;
+ this.match(SqlParser.BINLOG_ENCRYPTION_ADMIN);
+ break;
+ case SqlParser.CLONE_ADMIN:
+ this.enterOuterAlt(localctx, 29);
+ this.state = 4751;
+ this.match(SqlParser.CLONE_ADMIN);
+ break;
+ case SqlParser.CONNECTION_ADMIN:
+ this.enterOuterAlt(localctx, 30);
+ this.state = 4752;
+ this.match(SqlParser.CONNECTION_ADMIN);
+ break;
+ case SqlParser.ENCRYPTION_KEY_ADMIN:
+ this.enterOuterAlt(localctx, 31);
+ this.state = 4753;
+ this.match(SqlParser.ENCRYPTION_KEY_ADMIN);
+ break;
+ case SqlParser.FIREWALL_ADMIN:
+ this.enterOuterAlt(localctx, 32);
+ this.state = 4754;
+ this.match(SqlParser.FIREWALL_ADMIN);
+ break;
+ case SqlParser.FIREWALL_USER:
+ this.enterOuterAlt(localctx, 33);
+ this.state = 4755;
+ this.match(SqlParser.FIREWALL_USER);
+ break;
+ case SqlParser.GROUP_REPLICATION_ADMIN:
+ this.enterOuterAlt(localctx, 34);
+ this.state = 4756;
+ this.match(SqlParser.GROUP_REPLICATION_ADMIN);
+ break;
+ case SqlParser.INNODB_REDO_LOG_ARCHIVE:
+ this.enterOuterAlt(localctx, 35);
+ this.state = 4757;
+ this.match(SqlParser.INNODB_REDO_LOG_ARCHIVE);
+ break;
+ case SqlParser.NDB_STORED_USER:
+ this.enterOuterAlt(localctx, 36);
+ this.state = 4758;
+ this.match(SqlParser.NDB_STORED_USER);
+ break;
+ case SqlParser.PERSIST_RO_VARIABLES_ADMIN:
+ this.enterOuterAlt(localctx, 37);
+ this.state = 4759;
+ this.match(SqlParser.PERSIST_RO_VARIABLES_ADMIN);
+ break;
+ case SqlParser.REPLICATION_APPLIER:
+ this.enterOuterAlt(localctx, 38);
+ this.state = 4760;
+ this.match(SqlParser.REPLICATION_APPLIER);
+ break;
+ case SqlParser.REPLICATION_SLAVE_ADMIN:
+ this.enterOuterAlt(localctx, 39);
+ this.state = 4761;
+ this.match(SqlParser.REPLICATION_SLAVE_ADMIN);
+ break;
+ case SqlParser.RESOURCE_GROUP_ADMIN:
+ this.enterOuterAlt(localctx, 40);
+ this.state = 4762;
+ this.match(SqlParser.RESOURCE_GROUP_ADMIN);
+ break;
+ case SqlParser.RESOURCE_GROUP_USER:
+ this.enterOuterAlt(localctx, 41);
+ this.state = 4763;
+ this.match(SqlParser.RESOURCE_GROUP_USER);
+ break;
+ case SqlParser.ROLE_ADMIN:
+ this.enterOuterAlt(localctx, 42);
+ this.state = 4764;
+ this.match(SqlParser.ROLE_ADMIN);
+ break;
+ case SqlParser.SESSION_VARIABLES_ADMIN:
+ this.enterOuterAlt(localctx, 43);
+ this.state = 4765;
+ this.match(SqlParser.SESSION_VARIABLES_ADMIN);
+ break;
+ case SqlParser.SET_USER_ID:
+ this.enterOuterAlt(localctx, 44);
+ this.state = 4766;
+ this.match(SqlParser.SET_USER_ID);
+ break;
+ case SqlParser.SHOW_ROUTINE:
+ this.enterOuterAlt(localctx, 45);
+ this.state = 4767;
+ this.match(SqlParser.SHOW_ROUTINE);
+ break;
+ case SqlParser.SYSTEM_VARIABLES_ADMIN:
+ this.enterOuterAlt(localctx, 46);
+ this.state = 4768;
+ this.match(SqlParser.SYSTEM_VARIABLES_ADMIN);
+ break;
+ case SqlParser.TABLE_ENCRYPTION_ADMIN:
+ this.enterOuterAlt(localctx, 47);
+ this.state = 4769;
+ this.match(SqlParser.TABLE_ENCRYPTION_ADMIN);
+ break;
+ case SqlParser.VERSION_TOKEN_ADMIN:
+ this.enterOuterAlt(localctx, 48);
+ this.state = 4770;
+ this.match(SqlParser.VERSION_TOKEN_ADMIN);
+ break;
+ case SqlParser.XA_RECOVER_ADMIN:
+ this.enterOuterAlt(localctx, 49);
+ this.state = 4771;
+ this.match(SqlParser.XA_RECOVER_ADMIN);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function PrivilegeLevelContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_privilegeLevel;
+ return this;
+}
+
+PrivilegeLevelContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+PrivilegeLevelContext.prototype.constructor = PrivilegeLevelContext;
+
+
+
+PrivilegeLevelContext.prototype.copyFrom = function(ctx) {
+ antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx);
+};
+
+
+function DefiniteSchemaPrivLevelContext(parser, ctx) {
+ PrivilegeLevelContext.call(this, parser);
+ PrivilegeLevelContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+DefiniteSchemaPrivLevelContext.prototype = Object.create(PrivilegeLevelContext.prototype);
+DefiniteSchemaPrivLevelContext.prototype.constructor = DefiniteSchemaPrivLevelContext;
+
+SqlParser.DefiniteSchemaPrivLevelContext = DefiniteSchemaPrivLevelContext;
+
+DefiniteSchemaPrivLevelContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+DefiniteSchemaPrivLevelContext.prototype.DOT = function() {
+ return this.getToken(SqlParser.DOT, 0);
+};
+
+DefiniteSchemaPrivLevelContext.prototype.STAR = function() {
+ return this.getToken(SqlParser.STAR, 0);
+};
+DefiniteSchemaPrivLevelContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterDefiniteSchemaPrivLevel(this);
+ }
+};
+
+DefiniteSchemaPrivLevelContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitDefiniteSchemaPrivLevel(this);
+ }
+};
+
+DefiniteSchemaPrivLevelContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitDefiniteSchemaPrivLevel(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function DefiniteFullTablePrivLevel2Context(parser, ctx) {
+ PrivilegeLevelContext.call(this, parser);
+ PrivilegeLevelContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+DefiniteFullTablePrivLevel2Context.prototype = Object.create(PrivilegeLevelContext.prototype);
+DefiniteFullTablePrivLevel2Context.prototype.constructor = DefiniteFullTablePrivLevel2Context;
+
+SqlParser.DefiniteFullTablePrivLevel2Context = DefiniteFullTablePrivLevel2Context;
+
+DefiniteFullTablePrivLevel2Context.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+DefiniteFullTablePrivLevel2Context.prototype.dottedId = function() {
+ return this.getTypedRuleContext(DottedIdContext,0);
+};
+DefiniteFullTablePrivLevel2Context.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterDefiniteFullTablePrivLevel2(this);
+ }
+};
+
+DefiniteFullTablePrivLevel2Context.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitDefiniteFullTablePrivLevel2(this);
+ }
+};
+
+DefiniteFullTablePrivLevel2Context.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitDefiniteFullTablePrivLevel2(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function DefiniteFullTablePrivLevelContext(parser, ctx) {
+ PrivilegeLevelContext.call(this, parser);
+ PrivilegeLevelContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+DefiniteFullTablePrivLevelContext.prototype = Object.create(PrivilegeLevelContext.prototype);
+DefiniteFullTablePrivLevelContext.prototype.constructor = DefiniteFullTablePrivLevelContext;
+
+SqlParser.DefiniteFullTablePrivLevelContext = DefiniteFullTablePrivLevelContext;
+
+DefiniteFullTablePrivLevelContext.prototype.uid = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UidContext);
+ } else {
+ return this.getTypedRuleContext(UidContext,i);
+ }
+};
+
+DefiniteFullTablePrivLevelContext.prototype.DOT = function() {
+ return this.getToken(SqlParser.DOT, 0);
+};
+DefiniteFullTablePrivLevelContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterDefiniteFullTablePrivLevel(this);
+ }
+};
+
+DefiniteFullTablePrivLevelContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitDefiniteFullTablePrivLevel(this);
+ }
+};
+
+DefiniteFullTablePrivLevelContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitDefiniteFullTablePrivLevel(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function GlobalPrivLevelContext(parser, ctx) {
+ PrivilegeLevelContext.call(this, parser);
+ PrivilegeLevelContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+GlobalPrivLevelContext.prototype = Object.create(PrivilegeLevelContext.prototype);
+GlobalPrivLevelContext.prototype.constructor = GlobalPrivLevelContext;
+
+SqlParser.GlobalPrivLevelContext = GlobalPrivLevelContext;
+
+GlobalPrivLevelContext.prototype.STAR = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.STAR);
+ } else {
+ return this.getToken(SqlParser.STAR, i);
+ }
+};
+
+
+GlobalPrivLevelContext.prototype.DOT = function() {
+ return this.getToken(SqlParser.DOT, 0);
+};
+GlobalPrivLevelContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterGlobalPrivLevel(this);
+ }
+};
+
+GlobalPrivLevelContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitGlobalPrivLevel(this);
+ }
+};
+
+GlobalPrivLevelContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitGlobalPrivLevel(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function DefiniteTablePrivLevelContext(parser, ctx) {
+ PrivilegeLevelContext.call(this, parser);
+ PrivilegeLevelContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+DefiniteTablePrivLevelContext.prototype = Object.create(PrivilegeLevelContext.prototype);
+DefiniteTablePrivLevelContext.prototype.constructor = DefiniteTablePrivLevelContext;
+
+SqlParser.DefiniteTablePrivLevelContext = DefiniteTablePrivLevelContext;
+
+DefiniteTablePrivLevelContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+DefiniteTablePrivLevelContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterDefiniteTablePrivLevel(this);
+ }
+};
+
+DefiniteTablePrivLevelContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitDefiniteTablePrivLevel(this);
+ }
+};
+
+DefiniteTablePrivLevelContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitDefiniteTablePrivLevel(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function CurrentSchemaPriviLevelContext(parser, ctx) {
+ PrivilegeLevelContext.call(this, parser);
+ PrivilegeLevelContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+CurrentSchemaPriviLevelContext.prototype = Object.create(PrivilegeLevelContext.prototype);
+CurrentSchemaPriviLevelContext.prototype.constructor = CurrentSchemaPriviLevelContext;
+
+SqlParser.CurrentSchemaPriviLevelContext = CurrentSchemaPriviLevelContext;
+
+CurrentSchemaPriviLevelContext.prototype.STAR = function() {
+ return this.getToken(SqlParser.STAR, 0);
+};
+CurrentSchemaPriviLevelContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterCurrentSchemaPriviLevel(this);
+ }
+};
+
+CurrentSchemaPriviLevelContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitCurrentSchemaPriviLevel(this);
+ }
+};
+
+CurrentSchemaPriviLevelContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitCurrentSchemaPriviLevel(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+SqlParser.PrivilegeLevelContext = PrivilegeLevelContext;
+
+SqlParser.prototype.privilegeLevel = function() {
+
+ var localctx = new PrivilegeLevelContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 418, SqlParser.RULE_privilegeLevel);
+ try {
+ this.state = 4790;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,688,this._ctx);
+ switch(la_) {
+ case 1:
+ localctx = new CurrentSchemaPriviLevelContext(this, localctx);
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4774;
+ this.match(SqlParser.STAR);
+ break;
+
+ case 2:
+ localctx = new GlobalPrivLevelContext(this, localctx);
+ this.enterOuterAlt(localctx, 2);
+ this.state = 4775;
+ this.match(SqlParser.STAR);
+ this.state = 4776;
+ this.match(SqlParser.DOT);
+ this.state = 4777;
+ this.match(SqlParser.STAR);
+ break;
+
+ case 3:
+ localctx = new DefiniteSchemaPrivLevelContext(this, localctx);
+ this.enterOuterAlt(localctx, 3);
+ this.state = 4778;
+ this.uid();
+ this.state = 4779;
+ this.match(SqlParser.DOT);
+ this.state = 4780;
+ this.match(SqlParser.STAR);
+ break;
+
+ case 4:
+ localctx = new DefiniteFullTablePrivLevelContext(this, localctx);
+ this.enterOuterAlt(localctx, 4);
+ this.state = 4782;
+ this.uid();
+ this.state = 4783;
+ this.match(SqlParser.DOT);
+ this.state = 4784;
+ this.uid();
+ break;
+
+ case 5:
+ localctx = new DefiniteFullTablePrivLevel2Context(this, localctx);
+ this.enterOuterAlt(localctx, 5);
+ this.state = 4786;
+ this.uid();
+ this.state = 4787;
+ this.dottedId();
+ break;
+
+ case 6:
+ localctx = new DefiniteTablePrivLevelContext(this, localctx);
+ this.enterOuterAlt(localctx, 6);
+ this.state = 4789;
+ this.uid();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function RenameUserClauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_renameUserClause;
+ this.fromFirst = null; // UserNameContext
+ this.toFirst = null; // UserNameContext
+ return this;
+}
+
+RenameUserClauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+RenameUserClauseContext.prototype.constructor = RenameUserClauseContext;
+
+RenameUserClauseContext.prototype.TO = function() {
+ return this.getToken(SqlParser.TO, 0);
+};
+
+RenameUserClauseContext.prototype.userName = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UserNameContext);
+ } else {
+ return this.getTypedRuleContext(UserNameContext,i);
+ }
+};
+
+RenameUserClauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterRenameUserClause(this);
+ }
+};
+
+RenameUserClauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitRenameUserClause(this);
+ }
+};
+
+RenameUserClauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitRenameUserClause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.RenameUserClauseContext = RenameUserClauseContext;
+
+SqlParser.prototype.renameUserClause = function() {
+
+ var localctx = new RenameUserClauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 420, SqlParser.RULE_renameUserClause);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4792;
+ localctx.fromFirst = this.userName();
+ this.state = 4793;
+ this.match(SqlParser.TO);
+ this.state = 4794;
+ localctx.toFirst = this.userName();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function AnalyzeTableContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_analyzeTable;
+ this.actionOption = null; // Token
+ return this;
+}
+
+AnalyzeTableContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+AnalyzeTableContext.prototype.constructor = AnalyzeTableContext;
+
+AnalyzeTableContext.prototype.ANALYZE = function() {
+ return this.getToken(SqlParser.ANALYZE, 0);
+};
+
+AnalyzeTableContext.prototype.TABLE = function() {
+ return this.getToken(SqlParser.TABLE, 0);
+};
+
+AnalyzeTableContext.prototype.tables = function() {
+ return this.getTypedRuleContext(TablesContext,0);
+};
+
+AnalyzeTableContext.prototype.NO_WRITE_TO_BINLOG = function() {
+ return this.getToken(SqlParser.NO_WRITE_TO_BINLOG, 0);
+};
+
+AnalyzeTableContext.prototype.LOCAL = function() {
+ return this.getToken(SqlParser.LOCAL, 0);
+};
+
+AnalyzeTableContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAnalyzeTable(this);
+ }
+};
+
+AnalyzeTableContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAnalyzeTable(this);
+ }
+};
+
+AnalyzeTableContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAnalyzeTable(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.AnalyzeTableContext = AnalyzeTableContext;
+
+SqlParser.prototype.analyzeTable = function() {
+
+ var localctx = new AnalyzeTableContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 422, SqlParser.RULE_analyzeTable);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4796;
+ this.match(SqlParser.ANALYZE);
+ this.state = 4798;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.NO_WRITE_TO_BINLOG || _la===SqlParser.LOCAL) {
+ this.state = 4797;
+ localctx.actionOption = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.NO_WRITE_TO_BINLOG || _la===SqlParser.LOCAL)) {
+ localctx.actionOption = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 4800;
+ this.match(SqlParser.TABLE);
+ this.state = 4801;
+ this.tables();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function CheckTableContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_checkTable;
+ return this;
+}
+
+CheckTableContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+CheckTableContext.prototype.constructor = CheckTableContext;
+
+CheckTableContext.prototype.CHECK = function() {
+ return this.getToken(SqlParser.CHECK, 0);
+};
+
+CheckTableContext.prototype.TABLE = function() {
+ return this.getToken(SqlParser.TABLE, 0);
+};
+
+CheckTableContext.prototype.tables = function() {
+ return this.getTypedRuleContext(TablesContext,0);
+};
+
+CheckTableContext.prototype.checkTableOption = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(CheckTableOptionContext);
+ } else {
+ return this.getTypedRuleContext(CheckTableOptionContext,i);
+ }
+};
+
+CheckTableContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterCheckTable(this);
+ }
+};
+
+CheckTableContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitCheckTable(this);
+ }
+};
+
+CheckTableContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitCheckTable(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.CheckTableContext = CheckTableContext;
+
+SqlParser.prototype.checkTable = function() {
+
+ var localctx = new CheckTableContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 424, SqlParser.RULE_checkTable);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4803;
+ this.match(SqlParser.CHECK);
+ this.state = 4804;
+ this.match(SqlParser.TABLE);
+ this.state = 4805;
+ this.tables();
+ this.state = 4809;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.FOR || _la===SqlParser.CHANGED || _la===SqlParser.EXTENDED || _la===SqlParser.FAST || _la===SqlParser.MEDIUM || _la===SqlParser.QUICK) {
+ this.state = 4806;
+ this.checkTableOption();
+ this.state = 4811;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function ChecksumTableContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_checksumTable;
+ this.actionOption = null; // Token
+ return this;
+}
+
+ChecksumTableContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+ChecksumTableContext.prototype.constructor = ChecksumTableContext;
+
+ChecksumTableContext.prototype.CHECKSUM = function() {
+ return this.getToken(SqlParser.CHECKSUM, 0);
+};
+
+ChecksumTableContext.prototype.TABLE = function() {
+ return this.getToken(SqlParser.TABLE, 0);
+};
+
+ChecksumTableContext.prototype.tables = function() {
+ return this.getTypedRuleContext(TablesContext,0);
+};
+
+ChecksumTableContext.prototype.QUICK = function() {
+ return this.getToken(SqlParser.QUICK, 0);
+};
+
+ChecksumTableContext.prototype.EXTENDED = function() {
+ return this.getToken(SqlParser.EXTENDED, 0);
+};
+
+ChecksumTableContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterChecksumTable(this);
+ }
+};
+
+ChecksumTableContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitChecksumTable(this);
+ }
+};
+
+ChecksumTableContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitChecksumTable(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.ChecksumTableContext = ChecksumTableContext;
+
+SqlParser.prototype.checksumTable = function() {
+
+ var localctx = new ChecksumTableContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 426, SqlParser.RULE_checksumTable);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4812;
+ this.match(SqlParser.CHECKSUM);
+ this.state = 4813;
+ this.match(SqlParser.TABLE);
+ this.state = 4814;
+ this.tables();
+ this.state = 4816;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EXTENDED || _la===SqlParser.QUICK) {
+ this.state = 4815;
+ localctx.actionOption = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.EXTENDED || _la===SqlParser.QUICK)) {
+ localctx.actionOption = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function OptimizeTableContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_optimizeTable;
+ this.actionOption = null; // Token
+ return this;
+}
+
+OptimizeTableContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+OptimizeTableContext.prototype.constructor = OptimizeTableContext;
+
+OptimizeTableContext.prototype.OPTIMIZE = function() {
+ return this.getToken(SqlParser.OPTIMIZE, 0);
+};
+
+OptimizeTableContext.prototype.TABLE = function() {
+ return this.getToken(SqlParser.TABLE, 0);
+};
+
+OptimizeTableContext.prototype.tables = function() {
+ return this.getTypedRuleContext(TablesContext,0);
+};
+
+OptimizeTableContext.prototype.NO_WRITE_TO_BINLOG = function() {
+ return this.getToken(SqlParser.NO_WRITE_TO_BINLOG, 0);
+};
+
+OptimizeTableContext.prototype.LOCAL = function() {
+ return this.getToken(SqlParser.LOCAL, 0);
+};
+
+OptimizeTableContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterOptimizeTable(this);
+ }
+};
+
+OptimizeTableContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitOptimizeTable(this);
+ }
+};
+
+OptimizeTableContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitOptimizeTable(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.OptimizeTableContext = OptimizeTableContext;
+
+SqlParser.prototype.optimizeTable = function() {
+
+ var localctx = new OptimizeTableContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 428, SqlParser.RULE_optimizeTable);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4818;
+ this.match(SqlParser.OPTIMIZE);
+ this.state = 4820;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.NO_WRITE_TO_BINLOG || _la===SqlParser.LOCAL) {
+ this.state = 4819;
+ localctx.actionOption = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.NO_WRITE_TO_BINLOG || _la===SqlParser.LOCAL)) {
+ localctx.actionOption = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 4822;
+ this.match(SqlParser.TABLE);
+ this.state = 4823;
+ this.tables();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function RepairTableContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_repairTable;
+ this.actionOption = null; // Token
+ return this;
+}
+
+RepairTableContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+RepairTableContext.prototype.constructor = RepairTableContext;
+
+RepairTableContext.prototype.REPAIR = function() {
+ return this.getToken(SqlParser.REPAIR, 0);
+};
+
+RepairTableContext.prototype.TABLE = function() {
+ return this.getToken(SqlParser.TABLE, 0);
+};
+
+RepairTableContext.prototype.tables = function() {
+ return this.getTypedRuleContext(TablesContext,0);
+};
+
+RepairTableContext.prototype.QUICK = function() {
+ return this.getToken(SqlParser.QUICK, 0);
+};
+
+RepairTableContext.prototype.EXTENDED = function() {
+ return this.getToken(SqlParser.EXTENDED, 0);
+};
+
+RepairTableContext.prototype.USE_FRM = function() {
+ return this.getToken(SqlParser.USE_FRM, 0);
+};
+
+RepairTableContext.prototype.NO_WRITE_TO_BINLOG = function() {
+ return this.getToken(SqlParser.NO_WRITE_TO_BINLOG, 0);
+};
+
+RepairTableContext.prototype.LOCAL = function() {
+ return this.getToken(SqlParser.LOCAL, 0);
+};
+
+RepairTableContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterRepairTable(this);
+ }
+};
+
+RepairTableContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitRepairTable(this);
+ }
+};
+
+RepairTableContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitRepairTable(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.RepairTableContext = RepairTableContext;
+
+SqlParser.prototype.repairTable = function() {
+
+ var localctx = new RepairTableContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 430, SqlParser.RULE_repairTable);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4825;
+ this.match(SqlParser.REPAIR);
+ this.state = 4827;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.NO_WRITE_TO_BINLOG || _la===SqlParser.LOCAL) {
+ this.state = 4826;
+ localctx.actionOption = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.NO_WRITE_TO_BINLOG || _la===SqlParser.LOCAL)) {
+ localctx.actionOption = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 4829;
+ this.match(SqlParser.TABLE);
+ this.state = 4830;
+ this.tables();
+ this.state = 4832;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.QUICK) {
+ this.state = 4831;
+ this.match(SqlParser.QUICK);
+ }
+
+ this.state = 4835;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EXTENDED) {
+ this.state = 4834;
+ this.match(SqlParser.EXTENDED);
+ }
+
+ this.state = 4838;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.USE_FRM) {
+ this.state = 4837;
+ this.match(SqlParser.USE_FRM);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function CheckTableOptionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_checkTableOption;
+ return this;
+}
+
+CheckTableOptionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+CheckTableOptionContext.prototype.constructor = CheckTableOptionContext;
+
+CheckTableOptionContext.prototype.FOR = function() {
+ return this.getToken(SqlParser.FOR, 0);
+};
+
+CheckTableOptionContext.prototype.UPGRADE = function() {
+ return this.getToken(SqlParser.UPGRADE, 0);
+};
+
+CheckTableOptionContext.prototype.QUICK = function() {
+ return this.getToken(SqlParser.QUICK, 0);
+};
+
+CheckTableOptionContext.prototype.FAST = function() {
+ return this.getToken(SqlParser.FAST, 0);
+};
+
+CheckTableOptionContext.prototype.MEDIUM = function() {
+ return this.getToken(SqlParser.MEDIUM, 0);
+};
+
+CheckTableOptionContext.prototype.EXTENDED = function() {
+ return this.getToken(SqlParser.EXTENDED, 0);
+};
+
+CheckTableOptionContext.prototype.CHANGED = function() {
+ return this.getToken(SqlParser.CHANGED, 0);
+};
+
+CheckTableOptionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterCheckTableOption(this);
+ }
+};
+
+CheckTableOptionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitCheckTableOption(this);
+ }
+};
+
+CheckTableOptionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitCheckTableOption(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.CheckTableOptionContext = CheckTableOptionContext;
+
+SqlParser.prototype.checkTableOption = function() {
+
+ var localctx = new CheckTableOptionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 432, SqlParser.RULE_checkTableOption);
+ try {
+ this.state = 4847;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.FOR:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4840;
+ this.match(SqlParser.FOR);
+ this.state = 4841;
+ this.match(SqlParser.UPGRADE);
+ break;
+ case SqlParser.QUICK:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 4842;
+ this.match(SqlParser.QUICK);
+ break;
+ case SqlParser.FAST:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 4843;
+ this.match(SqlParser.FAST);
+ break;
+ case SqlParser.MEDIUM:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 4844;
+ this.match(SqlParser.MEDIUM);
+ break;
+ case SqlParser.EXTENDED:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 4845;
+ this.match(SqlParser.EXTENDED);
+ break;
+ case SqlParser.CHANGED:
+ this.enterOuterAlt(localctx, 6);
+ this.state = 4846;
+ this.match(SqlParser.CHANGED);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function CreateUdfunctionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_createUdfunction;
+ this.returnType = null; // Token
+ return this;
+}
+
+CreateUdfunctionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+CreateUdfunctionContext.prototype.constructor = CreateUdfunctionContext;
+
+CreateUdfunctionContext.prototype.CREATE = function() {
+ return this.getToken(SqlParser.CREATE, 0);
+};
+
+CreateUdfunctionContext.prototype.FUNCTION = function() {
+ return this.getToken(SqlParser.FUNCTION, 0);
+};
+
+CreateUdfunctionContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+CreateUdfunctionContext.prototype.RETURNS = function() {
+ return this.getToken(SqlParser.RETURNS, 0);
+};
+
+CreateUdfunctionContext.prototype.SONAME = function() {
+ return this.getToken(SqlParser.SONAME, 0);
+};
+
+CreateUdfunctionContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+CreateUdfunctionContext.prototype.STRING = function() {
+ return this.getToken(SqlParser.STRING, 0);
+};
+
+CreateUdfunctionContext.prototype.INTEGER = function() {
+ return this.getToken(SqlParser.INTEGER, 0);
+};
+
+CreateUdfunctionContext.prototype.REAL = function() {
+ return this.getToken(SqlParser.REAL, 0);
+};
+
+CreateUdfunctionContext.prototype.DECIMAL = function() {
+ return this.getToken(SqlParser.DECIMAL, 0);
+};
+
+CreateUdfunctionContext.prototype.AGGREGATE = function() {
+ return this.getToken(SqlParser.AGGREGATE, 0);
+};
+
+CreateUdfunctionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterCreateUdfunction(this);
+ }
+};
+
+CreateUdfunctionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitCreateUdfunction(this);
+ }
+};
+
+CreateUdfunctionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitCreateUdfunction(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.CreateUdfunctionContext = CreateUdfunctionContext;
+
+SqlParser.prototype.createUdfunction = function() {
+
+ var localctx = new CreateUdfunctionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 434, SqlParser.RULE_createUdfunction);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4849;
+ this.match(SqlParser.CREATE);
+ this.state = 4851;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.AGGREGATE) {
+ this.state = 4850;
+ this.match(SqlParser.AGGREGATE);
+ }
+
+ this.state = 4853;
+ this.match(SqlParser.FUNCTION);
+ this.state = 4854;
+ this.uid();
+ this.state = 4855;
+ this.match(SqlParser.RETURNS);
+ this.state = 4856;
+ localctx.returnType = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(((((_la - 188)) & ~0x1f) == 0 && ((1 << (_la - 188)) & ((1 << (SqlParser.INTEGER - 188)) | (1 << (SqlParser.REAL - 188)) | (1 << (SqlParser.DECIMAL - 188)))) !== 0) || _la===SqlParser.STRING)) {
+ localctx.returnType = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 4857;
+ this.match(SqlParser.SONAME);
+ this.state = 4858;
+ this.match(SqlParser.STRING_LITERAL);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function InstallPluginContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_installPlugin;
+ return this;
+}
+
+InstallPluginContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+InstallPluginContext.prototype.constructor = InstallPluginContext;
+
+InstallPluginContext.prototype.INSTALL = function() {
+ return this.getToken(SqlParser.INSTALL, 0);
+};
+
+InstallPluginContext.prototype.PLUGIN = function() {
+ return this.getToken(SqlParser.PLUGIN, 0);
+};
+
+InstallPluginContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+InstallPluginContext.prototype.SONAME = function() {
+ return this.getToken(SqlParser.SONAME, 0);
+};
+
+InstallPluginContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+InstallPluginContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterInstallPlugin(this);
+ }
+};
+
+InstallPluginContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitInstallPlugin(this);
+ }
+};
+
+InstallPluginContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitInstallPlugin(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.InstallPluginContext = InstallPluginContext;
+
+SqlParser.prototype.installPlugin = function() {
+
+ var localctx = new InstallPluginContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 436, SqlParser.RULE_installPlugin);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4860;
+ this.match(SqlParser.INSTALL);
+ this.state = 4861;
+ this.match(SqlParser.PLUGIN);
+ this.state = 4862;
+ this.uid();
+ this.state = 4863;
+ this.match(SqlParser.SONAME);
+ this.state = 4864;
+ this.match(SqlParser.STRING_LITERAL);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function UninstallPluginContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_uninstallPlugin;
+ return this;
+}
+
+UninstallPluginContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+UninstallPluginContext.prototype.constructor = UninstallPluginContext;
+
+UninstallPluginContext.prototype.UNINSTALL = function() {
+ return this.getToken(SqlParser.UNINSTALL, 0);
+};
+
+UninstallPluginContext.prototype.PLUGIN = function() {
+ return this.getToken(SqlParser.PLUGIN, 0);
+};
+
+UninstallPluginContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+UninstallPluginContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterUninstallPlugin(this);
+ }
+};
+
+UninstallPluginContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitUninstallPlugin(this);
+ }
+};
+
+UninstallPluginContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitUninstallPlugin(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.UninstallPluginContext = UninstallPluginContext;
+
+SqlParser.prototype.uninstallPlugin = function() {
+
+ var localctx = new UninstallPluginContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 438, SqlParser.RULE_uninstallPlugin);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4866;
+ this.match(SqlParser.UNINSTALL);
+ this.state = 4867;
+ this.match(SqlParser.PLUGIN);
+ this.state = 4868;
+ this.uid();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function SetStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_setStatement;
+ return this;
+}
+
+SetStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+SetStatementContext.prototype.constructor = SetStatementContext;
+
+
+
+SetStatementContext.prototype.copyFrom = function(ctx) {
+ antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx);
+};
+
+
+function SetTransactionContext(parser, ctx) {
+ SetStatementContext.call(this, parser);
+ SetStatementContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+SetTransactionContext.prototype = Object.create(SetStatementContext.prototype);
+SetTransactionContext.prototype.constructor = SetTransactionContext;
+
+SqlParser.SetTransactionContext = SetTransactionContext;
+
+SetTransactionContext.prototype.setTransactionStatement = function() {
+ return this.getTypedRuleContext(SetTransactionStatementContext,0);
+};
+SetTransactionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSetTransaction(this);
+ }
+};
+
+SetTransactionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSetTransaction(this);
+ }
+};
+
+SetTransactionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSetTransaction(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function SetCharsetContext(parser, ctx) {
+ SetStatementContext.call(this, parser);
+ SetStatementContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+SetCharsetContext.prototype = Object.create(SetStatementContext.prototype);
+SetCharsetContext.prototype.constructor = SetCharsetContext;
+
+SqlParser.SetCharsetContext = SetCharsetContext;
+
+SetCharsetContext.prototype.SET = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.SET);
+ } else {
+ return this.getToken(SqlParser.SET, i);
+ }
+};
+
+
+SetCharsetContext.prototype.CHARACTER = function() {
+ return this.getToken(SqlParser.CHARACTER, 0);
+};
+
+SetCharsetContext.prototype.CHARSET = function() {
+ return this.getToken(SqlParser.CHARSET, 0);
+};
+
+SetCharsetContext.prototype.charsetName = function() {
+ return this.getTypedRuleContext(CharsetNameContext,0);
+};
+
+SetCharsetContext.prototype.DEFAULT = function() {
+ return this.getToken(SqlParser.DEFAULT, 0);
+};
+SetCharsetContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSetCharset(this);
+ }
+};
+
+SetCharsetContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSetCharset(this);
+ }
+};
+
+SetCharsetContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSetCharset(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function SetNamesContext(parser, ctx) {
+ SetStatementContext.call(this, parser);
+ SetStatementContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+SetNamesContext.prototype = Object.create(SetStatementContext.prototype);
+SetNamesContext.prototype.constructor = SetNamesContext;
+
+SqlParser.SetNamesContext = SetNamesContext;
+
+SetNamesContext.prototype.SET = function() {
+ return this.getToken(SqlParser.SET, 0);
+};
+
+SetNamesContext.prototype.NAMES = function() {
+ return this.getToken(SqlParser.NAMES, 0);
+};
+
+SetNamesContext.prototype.charsetName = function() {
+ return this.getTypedRuleContext(CharsetNameContext,0);
+};
+
+SetNamesContext.prototype.DEFAULT = function() {
+ return this.getToken(SqlParser.DEFAULT, 0);
+};
+
+SetNamesContext.prototype.COLLATE = function() {
+ return this.getToken(SqlParser.COLLATE, 0);
+};
+
+SetNamesContext.prototype.collationName = function() {
+ return this.getTypedRuleContext(CollationNameContext,0);
+};
+SetNamesContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSetNames(this);
+ }
+};
+
+SetNamesContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSetNames(this);
+ }
+};
+
+SetNamesContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSetNames(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function SetPasswordContext(parser, ctx) {
+ SetStatementContext.call(this, parser);
+ SetStatementContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+SetPasswordContext.prototype = Object.create(SetStatementContext.prototype);
+SetPasswordContext.prototype.constructor = SetPasswordContext;
+
+SqlParser.SetPasswordContext = SetPasswordContext;
+
+SetPasswordContext.prototype.setPasswordStatement = function() {
+ return this.getTypedRuleContext(SetPasswordStatementContext,0);
+};
+SetPasswordContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSetPassword(this);
+ }
+};
+
+SetPasswordContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSetPassword(this);
+ }
+};
+
+SetPasswordContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSetPassword(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function SetAutocommitContext(parser, ctx) {
+ SetStatementContext.call(this, parser);
+ SetStatementContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+SetAutocommitContext.prototype = Object.create(SetStatementContext.prototype);
+SetAutocommitContext.prototype.constructor = SetAutocommitContext;
+
+SqlParser.SetAutocommitContext = SetAutocommitContext;
+
+SetAutocommitContext.prototype.setAutocommitStatement = function() {
+ return this.getTypedRuleContext(SetAutocommitStatementContext,0);
+};
+SetAutocommitContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSetAutocommit(this);
+ }
+};
+
+SetAutocommitContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSetAutocommit(this);
+ }
+};
+
+SetAutocommitContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSetAutocommit(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function SetNewValueInsideTriggerContext(parser, ctx) {
+ SetStatementContext.call(this, parser);
+ SetStatementContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+SetNewValueInsideTriggerContext.prototype = Object.create(SetStatementContext.prototype);
+SetNewValueInsideTriggerContext.prototype.constructor = SetNewValueInsideTriggerContext;
+
+SqlParser.SetNewValueInsideTriggerContext = SetNewValueInsideTriggerContext;
+
+SetNewValueInsideTriggerContext.prototype.SET = function() {
+ return this.getToken(SqlParser.SET, 0);
+};
+
+SetNewValueInsideTriggerContext.prototype.fullId = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(FullIdContext);
+ } else {
+ return this.getTypedRuleContext(FullIdContext,i);
+ }
+};
+
+SetNewValueInsideTriggerContext.prototype.expression = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ExpressionContext);
+ } else {
+ return this.getTypedRuleContext(ExpressionContext,i);
+ }
+};
+
+SetNewValueInsideTriggerContext.prototype.EQUAL_SYMBOL = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.EQUAL_SYMBOL);
+ } else {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, i);
+ }
+};
+
+
+SetNewValueInsideTriggerContext.prototype.VAR_ASSIGN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.VAR_ASSIGN);
+ } else {
+ return this.getToken(SqlParser.VAR_ASSIGN, i);
+ }
+};
+
+
+SetNewValueInsideTriggerContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+SetNewValueInsideTriggerContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSetNewValueInsideTrigger(this);
+ }
+};
+
+SetNewValueInsideTriggerContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSetNewValueInsideTrigger(this);
+ }
+};
+
+SetNewValueInsideTriggerContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSetNewValueInsideTrigger(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function SetVariableContext(parser, ctx) {
+ SetStatementContext.call(this, parser);
+ SetStatementContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+SetVariableContext.prototype = Object.create(SetStatementContext.prototype);
+SetVariableContext.prototype.constructor = SetVariableContext;
+
+SqlParser.SetVariableContext = SetVariableContext;
+
+SetVariableContext.prototype.SET = function() {
+ return this.getToken(SqlParser.SET, 0);
+};
+
+SetVariableContext.prototype.variableClause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(VariableClauseContext);
+ } else {
+ return this.getTypedRuleContext(VariableClauseContext,i);
+ }
+};
+
+SetVariableContext.prototype.expression = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ExpressionContext);
+ } else {
+ return this.getTypedRuleContext(ExpressionContext,i);
+ }
+};
+
+SetVariableContext.prototype.EQUAL_SYMBOL = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.EQUAL_SYMBOL);
+ } else {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, i);
+ }
+};
+
+
+SetVariableContext.prototype.VAR_ASSIGN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.VAR_ASSIGN);
+ } else {
+ return this.getToken(SqlParser.VAR_ASSIGN, i);
+ }
+};
+
+
+SetVariableContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+SetVariableContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSetVariable(this);
+ }
+};
+
+SetVariableContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSetVariable(this);
+ }
+};
+
+SetVariableContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSetVariable(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+SqlParser.SetStatementContext = SetStatementContext;
+
+SqlParser.prototype.setStatement = function() {
+
+ var localctx = new SetStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 440, SqlParser.RULE_setStatement);
+ var _la = 0; // Token type
+ try {
+ this.state = 4921;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,705,this._ctx);
+ switch(la_) {
+ case 1:
+ localctx = new SetVariableContext(this, localctx);
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4870;
+ this.match(SqlParser.SET);
+ this.state = 4871;
+ this.variableClause();
+ this.state = 4872;
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.VAR_ASSIGN || _la===SqlParser.EQUAL_SYMBOL)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 4873;
+ this.expression(0);
+ this.state = 4881;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 4874;
+ this.match(SqlParser.COMMA);
+ this.state = 4875;
+ this.variableClause();
+ this.state = 4876;
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.VAR_ASSIGN || _la===SqlParser.EQUAL_SYMBOL)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 4877;
+ this.expression(0);
+ this.state = 4883;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+
+ case 2:
+ localctx = new SetCharsetContext(this, localctx);
+ this.enterOuterAlt(localctx, 2);
+ this.state = 4884;
+ this.match(SqlParser.SET);
+ this.state = 4888;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.CHARACTER:
+ this.state = 4885;
+ this.match(SqlParser.CHARACTER);
+ this.state = 4886;
+ this.match(SqlParser.SET);
+ break;
+ case SqlParser.CHARSET:
+ this.state = 4887;
+ this.match(SqlParser.CHARSET);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 4892;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.BINARY:
+ case SqlParser.ARMSCII8:
+ case SqlParser.ASCII:
+ case SqlParser.BIG5:
+ case SqlParser.CP1250:
+ case SqlParser.CP1251:
+ case SqlParser.CP1256:
+ case SqlParser.CP1257:
+ case SqlParser.CP850:
+ case SqlParser.CP852:
+ case SqlParser.CP866:
+ case SqlParser.CP932:
+ case SqlParser.DEC8:
+ case SqlParser.EUCJPMS:
+ case SqlParser.EUCKR:
+ case SqlParser.GB2312:
+ case SqlParser.GBK:
+ case SqlParser.GEOSTD8:
+ case SqlParser.GREEK:
+ case SqlParser.HEBREW:
+ case SqlParser.HP8:
+ case SqlParser.KEYBCS2:
+ case SqlParser.KOI8R:
+ case SqlParser.KOI8U:
+ case SqlParser.LATIN1:
+ case SqlParser.LATIN2:
+ case SqlParser.LATIN5:
+ case SqlParser.LATIN7:
+ case SqlParser.MACCE:
+ case SqlParser.MACROMAN:
+ case SqlParser.SJIS:
+ case SqlParser.SWE7:
+ case SqlParser.TIS620:
+ case SqlParser.UCS2:
+ case SqlParser.UJIS:
+ case SqlParser.UTF16:
+ case SqlParser.UTF16LE:
+ case SqlParser.UTF32:
+ case SqlParser.UTF8:
+ case SqlParser.UTF8MB3:
+ case SqlParser.UTF8MB4:
+ case SqlParser.CHARSET_REVERSE_QOUTE_STRING:
+ case SqlParser.STRING_LITERAL:
+ this.state = 4890;
+ this.charsetName();
+ break;
+ case SqlParser.DEFAULT:
+ this.state = 4891;
+ this.match(SqlParser.DEFAULT);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ break;
+
+ case 3:
+ localctx = new SetNamesContext(this, localctx);
+ this.enterOuterAlt(localctx, 3);
+ this.state = 4894;
+ this.match(SqlParser.SET);
+ this.state = 4895;
+ this.match(SqlParser.NAMES);
+ this.state = 4902;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.BINARY:
+ case SqlParser.ARMSCII8:
+ case SqlParser.ASCII:
+ case SqlParser.BIG5:
+ case SqlParser.CP1250:
+ case SqlParser.CP1251:
+ case SqlParser.CP1256:
+ case SqlParser.CP1257:
+ case SqlParser.CP850:
+ case SqlParser.CP852:
+ case SqlParser.CP866:
+ case SqlParser.CP932:
+ case SqlParser.DEC8:
+ case SqlParser.EUCJPMS:
+ case SqlParser.EUCKR:
+ case SqlParser.GB2312:
+ case SqlParser.GBK:
+ case SqlParser.GEOSTD8:
+ case SqlParser.GREEK:
+ case SqlParser.HEBREW:
+ case SqlParser.HP8:
+ case SqlParser.KEYBCS2:
+ case SqlParser.KOI8R:
+ case SqlParser.KOI8U:
+ case SqlParser.LATIN1:
+ case SqlParser.LATIN2:
+ case SqlParser.LATIN5:
+ case SqlParser.LATIN7:
+ case SqlParser.MACCE:
+ case SqlParser.MACROMAN:
+ case SqlParser.SJIS:
+ case SqlParser.SWE7:
+ case SqlParser.TIS620:
+ case SqlParser.UCS2:
+ case SqlParser.UJIS:
+ case SqlParser.UTF16:
+ case SqlParser.UTF16LE:
+ case SqlParser.UTF32:
+ case SqlParser.UTF8:
+ case SqlParser.UTF8MB3:
+ case SqlParser.UTF8MB4:
+ case SqlParser.CHARSET_REVERSE_QOUTE_STRING:
+ case SqlParser.STRING_LITERAL:
+ this.state = 4896;
+ this.charsetName();
+ this.state = 4899;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.COLLATE) {
+ this.state = 4897;
+ this.match(SqlParser.COLLATE);
+ this.state = 4898;
+ this.collationName();
+ }
+
+ break;
+ case SqlParser.DEFAULT:
+ this.state = 4901;
+ this.match(SqlParser.DEFAULT);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ break;
+
+ case 4:
+ localctx = new SetPasswordContext(this, localctx);
+ this.enterOuterAlt(localctx, 4);
+ this.state = 4904;
+ this.setPasswordStatement();
+ break;
+
+ case 5:
+ localctx = new SetTransactionContext(this, localctx);
+ this.enterOuterAlt(localctx, 5);
+ this.state = 4905;
+ this.setTransactionStatement();
+ break;
+
+ case 6:
+ localctx = new SetAutocommitContext(this, localctx);
+ this.enterOuterAlt(localctx, 6);
+ this.state = 4906;
+ this.setAutocommitStatement();
+ break;
+
+ case 7:
+ localctx = new SetNewValueInsideTriggerContext(this, localctx);
+ this.enterOuterAlt(localctx, 7);
+ this.state = 4907;
+ this.match(SqlParser.SET);
+ this.state = 4908;
+ this.fullId();
+ this.state = 4909;
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.VAR_ASSIGN || _la===SqlParser.EQUAL_SYMBOL)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 4910;
+ this.expression(0);
+ this.state = 4918;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 4911;
+ this.match(SqlParser.COMMA);
+ this.state = 4912;
+ this.fullId();
+ this.state = 4913;
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.VAR_ASSIGN || _la===SqlParser.EQUAL_SYMBOL)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 4914;
+ this.expression(0);
+ this.state = 4920;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function ShowStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_showStatement;
+ return this;
+}
+
+ShowStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+ShowStatementContext.prototype.constructor = ShowStatementContext;
+
+
+
+ShowStatementContext.prototype.copyFrom = function(ctx) {
+ antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx);
+};
+
+
+function ShowOpenTablesContext(parser, ctx) {
+ ShowStatementContext.call(this, parser);
+ this.schemaFormat = null; // Token;
+ ShowStatementContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+ShowOpenTablesContext.prototype = Object.create(ShowStatementContext.prototype);
+ShowOpenTablesContext.prototype.constructor = ShowOpenTablesContext;
+
+SqlParser.ShowOpenTablesContext = ShowOpenTablesContext;
+
+ShowOpenTablesContext.prototype.SHOW = function() {
+ return this.getToken(SqlParser.SHOW, 0);
+};
+
+ShowOpenTablesContext.prototype.OPEN = function() {
+ return this.getToken(SqlParser.OPEN, 0);
+};
+
+ShowOpenTablesContext.prototype.TABLES = function() {
+ return this.getToken(SqlParser.TABLES, 0);
+};
+
+ShowOpenTablesContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+ShowOpenTablesContext.prototype.showFilter = function() {
+ return this.getTypedRuleContext(ShowFilterContext,0);
+};
+
+ShowOpenTablesContext.prototype.FROM = function() {
+ return this.getToken(SqlParser.FROM, 0);
+};
+
+ShowOpenTablesContext.prototype.IN = function() {
+ return this.getToken(SqlParser.IN, 0);
+};
+ShowOpenTablesContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterShowOpenTables(this);
+ }
+};
+
+ShowOpenTablesContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitShowOpenTables(this);
+ }
+};
+
+ShowOpenTablesContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitShowOpenTables(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function ShowGlobalInfoContext(parser, ctx) {
+ ShowStatementContext.call(this, parser);
+ ShowStatementContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+ShowGlobalInfoContext.prototype = Object.create(ShowStatementContext.prototype);
+ShowGlobalInfoContext.prototype.constructor = ShowGlobalInfoContext;
+
+SqlParser.ShowGlobalInfoContext = ShowGlobalInfoContext;
+
+ShowGlobalInfoContext.prototype.SHOW = function() {
+ return this.getToken(SqlParser.SHOW, 0);
+};
+
+ShowGlobalInfoContext.prototype.showGlobalInfoClause = function() {
+ return this.getTypedRuleContext(ShowGlobalInfoClauseContext,0);
+};
+ShowGlobalInfoContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterShowGlobalInfo(this);
+ }
+};
+
+ShowGlobalInfoContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitShowGlobalInfo(this);
+ }
+};
+
+ShowGlobalInfoContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitShowGlobalInfo(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function ShowCreateFullIdObjectContext(parser, ctx) {
+ ShowStatementContext.call(this, parser);
+ this.namedEntity = null; // Token;
+ ShowStatementContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+ShowCreateFullIdObjectContext.prototype = Object.create(ShowStatementContext.prototype);
+ShowCreateFullIdObjectContext.prototype.constructor = ShowCreateFullIdObjectContext;
+
+SqlParser.ShowCreateFullIdObjectContext = ShowCreateFullIdObjectContext;
+
+ShowCreateFullIdObjectContext.prototype.SHOW = function() {
+ return this.getToken(SqlParser.SHOW, 0);
+};
+
+ShowCreateFullIdObjectContext.prototype.CREATE = function() {
+ return this.getToken(SqlParser.CREATE, 0);
+};
+
+ShowCreateFullIdObjectContext.prototype.fullId = function() {
+ return this.getTypedRuleContext(FullIdContext,0);
+};
+
+ShowCreateFullIdObjectContext.prototype.EVENT = function() {
+ return this.getToken(SqlParser.EVENT, 0);
+};
+
+ShowCreateFullIdObjectContext.prototype.FUNCTION = function() {
+ return this.getToken(SqlParser.FUNCTION, 0);
+};
+
+ShowCreateFullIdObjectContext.prototype.PROCEDURE = function() {
+ return this.getToken(SqlParser.PROCEDURE, 0);
+};
+
+ShowCreateFullIdObjectContext.prototype.TABLE = function() {
+ return this.getToken(SqlParser.TABLE, 0);
+};
+
+ShowCreateFullIdObjectContext.prototype.TRIGGER = function() {
+ return this.getToken(SqlParser.TRIGGER, 0);
+};
+
+ShowCreateFullIdObjectContext.prototype.VIEW = function() {
+ return this.getToken(SqlParser.VIEW, 0);
+};
+ShowCreateFullIdObjectContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterShowCreateFullIdObject(this);
+ }
+};
+
+ShowCreateFullIdObjectContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitShowCreateFullIdObject(this);
+ }
+};
+
+ShowCreateFullIdObjectContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitShowCreateFullIdObject(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function ShowCreateUserContext(parser, ctx) {
+ ShowStatementContext.call(this, parser);
+ ShowStatementContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+ShowCreateUserContext.prototype = Object.create(ShowStatementContext.prototype);
+ShowCreateUserContext.prototype.constructor = ShowCreateUserContext;
+
+SqlParser.ShowCreateUserContext = ShowCreateUserContext;
+
+ShowCreateUserContext.prototype.SHOW = function() {
+ return this.getToken(SqlParser.SHOW, 0);
+};
+
+ShowCreateUserContext.prototype.CREATE = function() {
+ return this.getToken(SqlParser.CREATE, 0);
+};
+
+ShowCreateUserContext.prototype.USER = function() {
+ return this.getToken(SqlParser.USER, 0);
+};
+
+ShowCreateUserContext.prototype.userName = function() {
+ return this.getTypedRuleContext(UserNameContext,0);
+};
+ShowCreateUserContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterShowCreateUser(this);
+ }
+};
+
+ShowCreateUserContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitShowCreateUser(this);
+ }
+};
+
+ShowCreateUserContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitShowCreateUser(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function ShowErrorsContext(parser, ctx) {
+ ShowStatementContext.call(this, parser);
+ this.errorFormat = null; // Token;
+ this.offset = null; // DecimalLiteralContext;
+ this.rowCount = null; // DecimalLiteralContext;
+ ShowStatementContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+ShowErrorsContext.prototype = Object.create(ShowStatementContext.prototype);
+ShowErrorsContext.prototype.constructor = ShowErrorsContext;
+
+SqlParser.ShowErrorsContext = ShowErrorsContext;
+
+ShowErrorsContext.prototype.SHOW = function() {
+ return this.getToken(SqlParser.SHOW, 0);
+};
+
+ShowErrorsContext.prototype.ERRORS = function() {
+ return this.getToken(SqlParser.ERRORS, 0);
+};
+
+ShowErrorsContext.prototype.WARNINGS = function() {
+ return this.getToken(SqlParser.WARNINGS, 0);
+};
+
+ShowErrorsContext.prototype.LIMIT = function() {
+ return this.getToken(SqlParser.LIMIT, 0);
+};
+
+ShowErrorsContext.prototype.decimalLiteral = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(DecimalLiteralContext);
+ } else {
+ return this.getTypedRuleContext(DecimalLiteralContext,i);
+ }
+};
+
+ShowErrorsContext.prototype.COMMA = function() {
+ return this.getToken(SqlParser.COMMA, 0);
+};
+ShowErrorsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterShowErrors(this);
+ }
+};
+
+ShowErrorsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitShowErrors(this);
+ }
+};
+
+ShowErrorsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitShowErrors(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function ShowCountErrorsContext(parser, ctx) {
+ ShowStatementContext.call(this, parser);
+ this.errorFormat = null; // Token;
+ ShowStatementContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+ShowCountErrorsContext.prototype = Object.create(ShowStatementContext.prototype);
+ShowCountErrorsContext.prototype.constructor = ShowCountErrorsContext;
+
+SqlParser.ShowCountErrorsContext = ShowCountErrorsContext;
+
+ShowCountErrorsContext.prototype.SHOW = function() {
+ return this.getToken(SqlParser.SHOW, 0);
+};
+
+ShowCountErrorsContext.prototype.COUNT = function() {
+ return this.getToken(SqlParser.COUNT, 0);
+};
+
+ShowCountErrorsContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+ShowCountErrorsContext.prototype.STAR = function() {
+ return this.getToken(SqlParser.STAR, 0);
+};
+
+ShowCountErrorsContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+ShowCountErrorsContext.prototype.ERRORS = function() {
+ return this.getToken(SqlParser.ERRORS, 0);
+};
+
+ShowCountErrorsContext.prototype.WARNINGS = function() {
+ return this.getToken(SqlParser.WARNINGS, 0);
+};
+ShowCountErrorsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterShowCountErrors(this);
+ }
+};
+
+ShowCountErrorsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitShowCountErrors(this);
+ }
+};
+
+ShowCountErrorsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitShowCountErrors(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function ShowObjectFilterContext(parser, ctx) {
+ ShowStatementContext.call(this, parser);
+ ShowStatementContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+ShowObjectFilterContext.prototype = Object.create(ShowStatementContext.prototype);
+ShowObjectFilterContext.prototype.constructor = ShowObjectFilterContext;
+
+SqlParser.ShowObjectFilterContext = ShowObjectFilterContext;
+
+ShowObjectFilterContext.prototype.SHOW = function() {
+ return this.getToken(SqlParser.SHOW, 0);
+};
+
+ShowObjectFilterContext.prototype.showCommonEntity = function() {
+ return this.getTypedRuleContext(ShowCommonEntityContext,0);
+};
+
+ShowObjectFilterContext.prototype.showFilter = function() {
+ return this.getTypedRuleContext(ShowFilterContext,0);
+};
+ShowObjectFilterContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterShowObjectFilter(this);
+ }
+};
+
+ShowObjectFilterContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitShowObjectFilter(this);
+ }
+};
+
+ShowObjectFilterContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitShowObjectFilter(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function ShowCreateDbContext(parser, ctx) {
+ ShowStatementContext.call(this, parser);
+ this.schemaFormat = null; // Token;
+ ShowStatementContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+ShowCreateDbContext.prototype = Object.create(ShowStatementContext.prototype);
+ShowCreateDbContext.prototype.constructor = ShowCreateDbContext;
+
+SqlParser.ShowCreateDbContext = ShowCreateDbContext;
+
+ShowCreateDbContext.prototype.SHOW = function() {
+ return this.getToken(SqlParser.SHOW, 0);
+};
+
+ShowCreateDbContext.prototype.CREATE = function() {
+ return this.getToken(SqlParser.CREATE, 0);
+};
+
+ShowCreateDbContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+ShowCreateDbContext.prototype.DATABASE = function() {
+ return this.getToken(SqlParser.DATABASE, 0);
+};
+
+ShowCreateDbContext.prototype.SCHEMA = function() {
+ return this.getToken(SqlParser.SCHEMA, 0);
+};
+
+ShowCreateDbContext.prototype.ifNotExists = function() {
+ return this.getTypedRuleContext(IfNotExistsContext,0);
+};
+ShowCreateDbContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterShowCreateDb(this);
+ }
+};
+
+ShowCreateDbContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitShowCreateDb(this);
+ }
+};
+
+ShowCreateDbContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitShowCreateDb(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function ShowEngineContext(parser, ctx) {
+ ShowStatementContext.call(this, parser);
+ this.engineOption = null; // Token;
+ ShowStatementContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+ShowEngineContext.prototype = Object.create(ShowStatementContext.prototype);
+ShowEngineContext.prototype.constructor = ShowEngineContext;
+
+SqlParser.ShowEngineContext = ShowEngineContext;
+
+ShowEngineContext.prototype.SHOW = function() {
+ return this.getToken(SqlParser.SHOW, 0);
+};
+
+ShowEngineContext.prototype.ENGINE = function() {
+ return this.getToken(SqlParser.ENGINE, 0);
+};
+
+ShowEngineContext.prototype.engineName = function() {
+ return this.getTypedRuleContext(EngineNameContext,0);
+};
+
+ShowEngineContext.prototype.STATUS = function() {
+ return this.getToken(SqlParser.STATUS, 0);
+};
+
+ShowEngineContext.prototype.MUTEX = function() {
+ return this.getToken(SqlParser.MUTEX, 0);
+};
+ShowEngineContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterShowEngine(this);
+ }
+};
+
+ShowEngineContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitShowEngine(this);
+ }
+};
+
+ShowEngineContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitShowEngine(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function ShowSchemaFilterContext(parser, ctx) {
+ ShowStatementContext.call(this, parser);
+ this.schemaFormat = null; // Token;
+ ShowStatementContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+ShowSchemaFilterContext.prototype = Object.create(ShowStatementContext.prototype);
+ShowSchemaFilterContext.prototype.constructor = ShowSchemaFilterContext;
+
+SqlParser.ShowSchemaFilterContext = ShowSchemaFilterContext;
+
+ShowSchemaFilterContext.prototype.SHOW = function() {
+ return this.getToken(SqlParser.SHOW, 0);
+};
+
+ShowSchemaFilterContext.prototype.showSchemaEntity = function() {
+ return this.getTypedRuleContext(ShowSchemaEntityContext,0);
+};
+
+ShowSchemaFilterContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+ShowSchemaFilterContext.prototype.showFilter = function() {
+ return this.getTypedRuleContext(ShowFilterContext,0);
+};
+
+ShowSchemaFilterContext.prototype.FROM = function() {
+ return this.getToken(SqlParser.FROM, 0);
+};
+
+ShowSchemaFilterContext.prototype.IN = function() {
+ return this.getToken(SqlParser.IN, 0);
+};
+ShowSchemaFilterContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterShowSchemaFilter(this);
+ }
+};
+
+ShowSchemaFilterContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitShowSchemaFilter(this);
+ }
+};
+
+ShowSchemaFilterContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitShowSchemaFilter(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function ShowIndexesContext(parser, ctx) {
+ ShowStatementContext.call(this, parser);
+ this.indexFormat = null; // Token;
+ this.tableFormat = null; // Token;
+ this.schemaFormat = null; // Token;
+ ShowStatementContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+ShowIndexesContext.prototype = Object.create(ShowStatementContext.prototype);
+ShowIndexesContext.prototype.constructor = ShowIndexesContext;
+
+SqlParser.ShowIndexesContext = ShowIndexesContext;
+
+ShowIndexesContext.prototype.SHOW = function() {
+ return this.getToken(SqlParser.SHOW, 0);
+};
+
+ShowIndexesContext.prototype.tableName = function() {
+ return this.getTypedRuleContext(TableNameContext,0);
+};
+
+ShowIndexesContext.prototype.INDEX = function() {
+ return this.getToken(SqlParser.INDEX, 0);
+};
+
+ShowIndexesContext.prototype.INDEXES = function() {
+ return this.getToken(SqlParser.INDEXES, 0);
+};
+
+ShowIndexesContext.prototype.KEYS = function() {
+ return this.getToken(SqlParser.KEYS, 0);
+};
+
+ShowIndexesContext.prototype.FROM = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.FROM);
+ } else {
+ return this.getToken(SqlParser.FROM, i);
+ }
+};
+
+
+ShowIndexesContext.prototype.IN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.IN);
+ } else {
+ return this.getToken(SqlParser.IN, i);
+ }
+};
+
+
+ShowIndexesContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+ShowIndexesContext.prototype.WHERE = function() {
+ return this.getToken(SqlParser.WHERE, 0);
+};
+
+ShowIndexesContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+ShowIndexesContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterShowIndexes(this);
+ }
+};
+
+ShowIndexesContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitShowIndexes(this);
+ }
+};
+
+ShowIndexesContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitShowIndexes(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function ShowLogEventsContext(parser, ctx) {
+ ShowStatementContext.call(this, parser);
+ this.logFormat = null; // Token;
+ this.filename = null; // Token;
+ this.fromPosition = null; // DecimalLiteralContext;
+ this.offset = null; // DecimalLiteralContext;
+ this.rowCount = null; // DecimalLiteralContext;
+ ShowStatementContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+ShowLogEventsContext.prototype = Object.create(ShowStatementContext.prototype);
+ShowLogEventsContext.prototype.constructor = ShowLogEventsContext;
+
+SqlParser.ShowLogEventsContext = ShowLogEventsContext;
+
+ShowLogEventsContext.prototype.SHOW = function() {
+ return this.getToken(SqlParser.SHOW, 0);
+};
+
+ShowLogEventsContext.prototype.EVENTS = function() {
+ return this.getToken(SqlParser.EVENTS, 0);
+};
+
+ShowLogEventsContext.prototype.BINLOG = function() {
+ return this.getToken(SqlParser.BINLOG, 0);
+};
+
+ShowLogEventsContext.prototype.RELAYLOG = function() {
+ return this.getToken(SqlParser.RELAYLOG, 0);
+};
+
+ShowLogEventsContext.prototype.IN = function() {
+ return this.getToken(SqlParser.IN, 0);
+};
+
+ShowLogEventsContext.prototype.FROM = function() {
+ return this.getToken(SqlParser.FROM, 0);
+};
+
+ShowLogEventsContext.prototype.LIMIT = function() {
+ return this.getToken(SqlParser.LIMIT, 0);
+};
+
+ShowLogEventsContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+ShowLogEventsContext.prototype.decimalLiteral = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(DecimalLiteralContext);
+ } else {
+ return this.getTypedRuleContext(DecimalLiteralContext,i);
+ }
+};
+
+ShowLogEventsContext.prototype.COMMA = function() {
+ return this.getToken(SqlParser.COMMA, 0);
+};
+ShowLogEventsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterShowLogEvents(this);
+ }
+};
+
+ShowLogEventsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitShowLogEvents(this);
+ }
+};
+
+ShowLogEventsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitShowLogEvents(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function ShowMasterLogsContext(parser, ctx) {
+ ShowStatementContext.call(this, parser);
+ this.logFormat = null; // Token;
+ ShowStatementContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+ShowMasterLogsContext.prototype = Object.create(ShowStatementContext.prototype);
+ShowMasterLogsContext.prototype.constructor = ShowMasterLogsContext;
+
+SqlParser.ShowMasterLogsContext = ShowMasterLogsContext;
+
+ShowMasterLogsContext.prototype.SHOW = function() {
+ return this.getToken(SqlParser.SHOW, 0);
+};
+
+ShowMasterLogsContext.prototype.LOGS = function() {
+ return this.getToken(SqlParser.LOGS, 0);
+};
+
+ShowMasterLogsContext.prototype.BINARY = function() {
+ return this.getToken(SqlParser.BINARY, 0);
+};
+
+ShowMasterLogsContext.prototype.MASTER = function() {
+ return this.getToken(SqlParser.MASTER, 0);
+};
+ShowMasterLogsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterShowMasterLogs(this);
+ }
+};
+
+ShowMasterLogsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitShowMasterLogs(this);
+ }
+};
+
+ShowMasterLogsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitShowMasterLogs(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function ShowGrantsContext(parser, ctx) {
+ ShowStatementContext.call(this, parser);
+ ShowStatementContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+ShowGrantsContext.prototype = Object.create(ShowStatementContext.prototype);
+ShowGrantsContext.prototype.constructor = ShowGrantsContext;
+
+SqlParser.ShowGrantsContext = ShowGrantsContext;
+
+ShowGrantsContext.prototype.SHOW = function() {
+ return this.getToken(SqlParser.SHOW, 0);
+};
+
+ShowGrantsContext.prototype.GRANTS = function() {
+ return this.getToken(SqlParser.GRANTS, 0);
+};
+
+ShowGrantsContext.prototype.FOR = function() {
+ return this.getToken(SqlParser.FOR, 0);
+};
+
+ShowGrantsContext.prototype.userName = function() {
+ return this.getTypedRuleContext(UserNameContext,0);
+};
+ShowGrantsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterShowGrants(this);
+ }
+};
+
+ShowGrantsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitShowGrants(this);
+ }
+};
+
+ShowGrantsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitShowGrants(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function ShowSlaveStatusContext(parser, ctx) {
+ ShowStatementContext.call(this, parser);
+ ShowStatementContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+ShowSlaveStatusContext.prototype = Object.create(ShowStatementContext.prototype);
+ShowSlaveStatusContext.prototype.constructor = ShowSlaveStatusContext;
+
+SqlParser.ShowSlaveStatusContext = ShowSlaveStatusContext;
+
+ShowSlaveStatusContext.prototype.SHOW = function() {
+ return this.getToken(SqlParser.SHOW, 0);
+};
+
+ShowSlaveStatusContext.prototype.SLAVE = function() {
+ return this.getToken(SqlParser.SLAVE, 0);
+};
+
+ShowSlaveStatusContext.prototype.STATUS = function() {
+ return this.getToken(SqlParser.STATUS, 0);
+};
+
+ShowSlaveStatusContext.prototype.FOR = function() {
+ return this.getToken(SqlParser.FOR, 0);
+};
+
+ShowSlaveStatusContext.prototype.CHANNEL = function() {
+ return this.getToken(SqlParser.CHANNEL, 0);
+};
+
+ShowSlaveStatusContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+ShowSlaveStatusContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterShowSlaveStatus(this);
+ }
+};
+
+ShowSlaveStatusContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitShowSlaveStatus(this);
+ }
+};
+
+ShowSlaveStatusContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitShowSlaveStatus(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function ShowRoutineContext(parser, ctx) {
+ ShowStatementContext.call(this, parser);
+ this.routine = null; // Token;
+ ShowStatementContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+ShowRoutineContext.prototype = Object.create(ShowStatementContext.prototype);
+ShowRoutineContext.prototype.constructor = ShowRoutineContext;
+
+SqlParser.ShowRoutineContext = ShowRoutineContext;
+
+ShowRoutineContext.prototype.SHOW = function() {
+ return this.getToken(SqlParser.SHOW, 0);
+};
+
+ShowRoutineContext.prototype.CODE = function() {
+ return this.getToken(SqlParser.CODE, 0);
+};
+
+ShowRoutineContext.prototype.fullId = function() {
+ return this.getTypedRuleContext(FullIdContext,0);
+};
+
+ShowRoutineContext.prototype.FUNCTION = function() {
+ return this.getToken(SqlParser.FUNCTION, 0);
+};
+
+ShowRoutineContext.prototype.PROCEDURE = function() {
+ return this.getToken(SqlParser.PROCEDURE, 0);
+};
+ShowRoutineContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterShowRoutine(this);
+ }
+};
+
+ShowRoutineContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitShowRoutine(this);
+ }
+};
+
+ShowRoutineContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitShowRoutine(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function ShowProfileContext(parser, ctx) {
+ ShowStatementContext.call(this, parser);
+ this.queryCount = null; // DecimalLiteralContext;
+ this.offset = null; // DecimalLiteralContext;
+ this.rowCount = null; // DecimalLiteralContext;
+ ShowStatementContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+ShowProfileContext.prototype = Object.create(ShowStatementContext.prototype);
+ShowProfileContext.prototype.constructor = ShowProfileContext;
+
+SqlParser.ShowProfileContext = ShowProfileContext;
+
+ShowProfileContext.prototype.SHOW = function() {
+ return this.getToken(SqlParser.SHOW, 0);
+};
+
+ShowProfileContext.prototype.PROFILE = function() {
+ return this.getToken(SqlParser.PROFILE, 0);
+};
+
+ShowProfileContext.prototype.showProfileType = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ShowProfileTypeContext);
+ } else {
+ return this.getTypedRuleContext(ShowProfileTypeContext,i);
+ }
+};
+
+ShowProfileContext.prototype.LIMIT = function() {
+ return this.getToken(SqlParser.LIMIT, 0);
+};
+
+ShowProfileContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+ShowProfileContext.prototype.FOR = function() {
+ return this.getToken(SqlParser.FOR, 0);
+};
+
+ShowProfileContext.prototype.QUERY = function() {
+ return this.getToken(SqlParser.QUERY, 0);
+};
+
+ShowProfileContext.prototype.decimalLiteral = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(DecimalLiteralContext);
+ } else {
+ return this.getTypedRuleContext(DecimalLiteralContext,i);
+ }
+};
+ShowProfileContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterShowProfile(this);
+ }
+};
+
+ShowProfileContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitShowProfile(this);
+ }
+};
+
+ShowProfileContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitShowProfile(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function ShowColumnsContext(parser, ctx) {
+ ShowStatementContext.call(this, parser);
+ this.columnsFormat = null; // Token;
+ this.tableFormat = null; // Token;
+ this.schemaFormat = null; // Token;
+ ShowStatementContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+ShowColumnsContext.prototype = Object.create(ShowStatementContext.prototype);
+ShowColumnsContext.prototype.constructor = ShowColumnsContext;
+
+SqlParser.ShowColumnsContext = ShowColumnsContext;
+
+ShowColumnsContext.prototype.SHOW = function() {
+ return this.getToken(SqlParser.SHOW, 0);
+};
+
+ShowColumnsContext.prototype.tableName = function() {
+ return this.getTypedRuleContext(TableNameContext,0);
+};
+
+ShowColumnsContext.prototype.COLUMNS = function() {
+ return this.getToken(SqlParser.COLUMNS, 0);
+};
+
+ShowColumnsContext.prototype.FIELDS = function() {
+ return this.getToken(SqlParser.FIELDS, 0);
+};
+
+ShowColumnsContext.prototype.FROM = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.FROM);
+ } else {
+ return this.getToken(SqlParser.FROM, i);
+ }
+};
+
+
+ShowColumnsContext.prototype.IN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.IN);
+ } else {
+ return this.getToken(SqlParser.IN, i);
+ }
+};
+
+
+ShowColumnsContext.prototype.FULL = function() {
+ return this.getToken(SqlParser.FULL, 0);
+};
+
+ShowColumnsContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+ShowColumnsContext.prototype.showFilter = function() {
+ return this.getTypedRuleContext(ShowFilterContext,0);
+};
+ShowColumnsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterShowColumns(this);
+ }
+};
+
+ShowColumnsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitShowColumns(this);
+ }
+};
+
+ShowColumnsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitShowColumns(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+SqlParser.ShowStatementContext = ShowStatementContext;
+
+SqlParser.prototype.showStatement = function() {
+
+ var localctx = new ShowStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 442, SqlParser.RULE_showStatement);
+ var _la = 0; // Token type
+ try {
+ this.state = 5074;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,727,this._ctx);
+ switch(la_) {
+ case 1:
+ localctx = new ShowMasterLogsContext(this, localctx);
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4923;
+ this.match(SqlParser.SHOW);
+ this.state = 4924;
+ localctx.logFormat = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.BINARY || _la===SqlParser.MASTER)) {
+ localctx.logFormat = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 4925;
+ this.match(SqlParser.LOGS);
+ break;
+
+ case 2:
+ localctx = new ShowLogEventsContext(this, localctx);
+ this.enterOuterAlt(localctx, 2);
+ this.state = 4926;
+ this.match(SqlParser.SHOW);
+ this.state = 4927;
+ localctx.logFormat = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.BINLOG || _la===SqlParser.RELAYLOG)) {
+ localctx.logFormat = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 4928;
+ this.match(SqlParser.EVENTS);
+ this.state = 4931;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.IN) {
+ this.state = 4929;
+ this.match(SqlParser.IN);
+ this.state = 4930;
+ localctx.filename = this.match(SqlParser.STRING_LITERAL);
+ }
+
+ this.state = 4935;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.FROM) {
+ this.state = 4933;
+ this.match(SqlParser.FROM);
+ this.state = 4934;
+ localctx.fromPosition = this.decimalLiteral();
+ }
+
+ this.state = 4944;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.LIMIT) {
+ this.state = 4937;
+ this.match(SqlParser.LIMIT);
+ this.state = 4941;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,708,this._ctx);
+ if(la_===1) {
+ this.state = 4938;
+ localctx.offset = this.decimalLiteral();
+ this.state = 4939;
+ this.match(SqlParser.COMMA);
+
+ }
+ this.state = 4943;
+ localctx.rowCount = this.decimalLiteral();
+ }
+
+ break;
+
+ case 3:
+ localctx = new ShowObjectFilterContext(this, localctx);
+ this.enterOuterAlt(localctx, 3);
+ this.state = 4946;
+ this.match(SqlParser.SHOW);
+ this.state = 4947;
+ this.showCommonEntity();
+ this.state = 4949;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.LIKE || _la===SqlParser.WHERE) {
+ this.state = 4948;
+ this.showFilter();
+ }
+
+ break;
+
+ case 4:
+ localctx = new ShowColumnsContext(this, localctx);
+ this.enterOuterAlt(localctx, 4);
+ this.state = 4951;
+ this.match(SqlParser.SHOW);
+ this.state = 4953;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.FULL) {
+ this.state = 4952;
+ this.match(SqlParser.FULL);
+ }
+
+ this.state = 4955;
+ localctx.columnsFormat = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.COLUMNS || _la===SqlParser.FIELDS)) {
+ localctx.columnsFormat = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 4956;
+ localctx.tableFormat = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.FROM || _la===SqlParser.IN)) {
+ localctx.tableFormat = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 4957;
+ this.tableName();
+ this.state = 4960;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.FROM || _la===SqlParser.IN) {
+ this.state = 4958;
+ localctx.schemaFormat = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.FROM || _la===SqlParser.IN)) {
+ localctx.schemaFormat = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 4959;
+ this.uid();
+ }
+
+ this.state = 4963;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.LIKE || _la===SqlParser.WHERE) {
+ this.state = 4962;
+ this.showFilter();
+ }
+
+ break;
+
+ case 5:
+ localctx = new ShowCreateDbContext(this, localctx);
+ this.enterOuterAlt(localctx, 5);
+ this.state = 4965;
+ this.match(SqlParser.SHOW);
+ this.state = 4966;
+ this.match(SqlParser.CREATE);
+ this.state = 4967;
+ localctx.schemaFormat = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.DATABASE || _la===SqlParser.SCHEMA)) {
+ localctx.schemaFormat = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 4969;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.IF) {
+ this.state = 4968;
+ this.ifNotExists();
+ }
+
+ this.state = 4971;
+ this.uid();
+ break;
+
+ case 6:
+ localctx = new ShowCreateFullIdObjectContext(this, localctx);
+ this.enterOuterAlt(localctx, 6);
+ this.state = 4972;
+ this.match(SqlParser.SHOW);
+ this.state = 4973;
+ this.match(SqlParser.CREATE);
+ this.state = 4974;
+ localctx.namedEntity = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.PROCEDURE || _la===SqlParser.TABLE || _la===SqlParser.TRIGGER || _la===SqlParser.EVENT || _la===SqlParser.FUNCTION || _la===SqlParser.VIEW)) {
+ localctx.namedEntity = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 4975;
+ this.fullId();
+ break;
+
+ case 7:
+ localctx = new ShowCreateUserContext(this, localctx);
+ this.enterOuterAlt(localctx, 7);
+ this.state = 4976;
+ this.match(SqlParser.SHOW);
+ this.state = 4977;
+ this.match(SqlParser.CREATE);
+ this.state = 4978;
+ this.match(SqlParser.USER);
+ this.state = 4979;
+ this.userName();
+ break;
+
+ case 8:
+ localctx = new ShowEngineContext(this, localctx);
+ this.enterOuterAlt(localctx, 8);
+ this.state = 4980;
+ this.match(SqlParser.SHOW);
+ this.state = 4981;
+ this.match(SqlParser.ENGINE);
+ this.state = 4982;
+ this.engineName();
+ this.state = 4983;
+ localctx.engineOption = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.MUTEX || _la===SqlParser.STATUS)) {
+ localctx.engineOption = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+
+ case 9:
+ localctx = new ShowGlobalInfoContext(this, localctx);
+ this.enterOuterAlt(localctx, 9);
+ this.state = 4985;
+ this.match(SqlParser.SHOW);
+ this.state = 4986;
+ this.showGlobalInfoClause();
+ break;
+
+ case 10:
+ localctx = new ShowErrorsContext(this, localctx);
+ this.enterOuterAlt(localctx, 10);
+ this.state = 4987;
+ this.match(SqlParser.SHOW);
+ this.state = 4988;
+ localctx.errorFormat = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.ERRORS || _la===SqlParser.WARNINGS)) {
+ localctx.errorFormat = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+
+ this.state = 4989;
+ this.match(SqlParser.LIMIT);
+ this.state = 4993;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,715,this._ctx);
+ if(la_===1) {
+ this.state = 4990;
+ localctx.offset = this.decimalLiteral();
+ this.state = 4991;
+ this.match(SqlParser.COMMA);
+
+ }
+ this.state = 4995;
+ localctx.rowCount = this.decimalLiteral();
+ break;
+
+ case 11:
+ localctx = new ShowCountErrorsContext(this, localctx);
+ this.enterOuterAlt(localctx, 11);
+ this.state = 4996;
+ this.match(SqlParser.SHOW);
+ this.state = 4997;
+ this.match(SqlParser.COUNT);
+ this.state = 4998;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 4999;
+ this.match(SqlParser.STAR);
+ this.state = 5000;
+ this.match(SqlParser.RR_BRACKET);
+ this.state = 5001;
+ localctx.errorFormat = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.ERRORS || _la===SqlParser.WARNINGS)) {
+ localctx.errorFormat = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+
+ case 12:
+ localctx = new ShowSchemaFilterContext(this, localctx);
+ this.enterOuterAlt(localctx, 12);
+ this.state = 5002;
+ this.match(SqlParser.SHOW);
+ this.state = 5003;
+ this.showSchemaEntity();
+ this.state = 5006;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.FROM || _la===SqlParser.IN) {
+ this.state = 5004;
+ localctx.schemaFormat = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.FROM || _la===SqlParser.IN)) {
+ localctx.schemaFormat = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 5005;
+ this.uid();
+ }
+
+ this.state = 5009;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.LIKE || _la===SqlParser.WHERE) {
+ this.state = 5008;
+ this.showFilter();
+ }
+
+ break;
+
+ case 13:
+ localctx = new ShowRoutineContext(this, localctx);
+ this.enterOuterAlt(localctx, 13);
+ this.state = 5011;
+ this.match(SqlParser.SHOW);
+ this.state = 5012;
+ localctx.routine = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.PROCEDURE || _la===SqlParser.FUNCTION)) {
+ localctx.routine = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 5013;
+ this.match(SqlParser.CODE);
+ this.state = 5014;
+ this.fullId();
+ break;
+
+ case 14:
+ localctx = new ShowGrantsContext(this, localctx);
+ this.enterOuterAlt(localctx, 14);
+ this.state = 5015;
+ this.match(SqlParser.SHOW);
+ this.state = 5016;
+ this.match(SqlParser.GRANTS);
+ this.state = 5019;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.FOR) {
+ this.state = 5017;
+ this.match(SqlParser.FOR);
+ this.state = 5018;
+ this.userName();
+ }
+
+ break;
+
+ case 15:
+ localctx = new ShowIndexesContext(this, localctx);
+ this.enterOuterAlt(localctx, 15);
+ this.state = 5021;
+ this.match(SqlParser.SHOW);
+ this.state = 5022;
+ localctx.indexFormat = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.INDEX || _la===SqlParser.KEYS || _la===SqlParser.INDEXES)) {
+ localctx.indexFormat = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 5023;
+ localctx.tableFormat = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.FROM || _la===SqlParser.IN)) {
+ localctx.tableFormat = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 5024;
+ this.tableName();
+ this.state = 5027;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.FROM || _la===SqlParser.IN) {
+ this.state = 5025;
+ localctx.schemaFormat = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.FROM || _la===SqlParser.IN)) {
+ localctx.schemaFormat = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 5026;
+ this.uid();
+ }
+
+ this.state = 5031;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.WHERE) {
+ this.state = 5029;
+ this.match(SqlParser.WHERE);
+ this.state = 5030;
+ this.expression(0);
+ }
+
+ break;
+
+ case 16:
+ localctx = new ShowOpenTablesContext(this, localctx);
+ this.enterOuterAlt(localctx, 16);
+ this.state = 5033;
+ this.match(SqlParser.SHOW);
+ this.state = 5034;
+ this.match(SqlParser.OPEN);
+ this.state = 5035;
+ this.match(SqlParser.TABLES);
+ this.state = 5038;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.FROM || _la===SqlParser.IN) {
+ this.state = 5036;
+ localctx.schemaFormat = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.FROM || _la===SqlParser.IN)) {
+ localctx.schemaFormat = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 5037;
+ this.uid();
+ }
+
+ this.state = 5041;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.LIKE || _la===SqlParser.WHERE) {
+ this.state = 5040;
+ this.showFilter();
+ }
+
+ break;
+
+ case 17:
+ localctx = new ShowProfileContext(this, localctx);
+ this.enterOuterAlt(localctx, 17);
+ this.state = 5043;
+ this.match(SqlParser.SHOW);
+ this.state = 5044;
+ this.match(SqlParser.PROFILE);
+ this.state = 5045;
+ this.showProfileType();
+ this.state = 5050;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 5046;
+ this.match(SqlParser.COMMA);
+ this.state = 5047;
+ this.showProfileType();
+ this.state = 5052;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 5056;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.FOR) {
+ this.state = 5053;
+ this.match(SqlParser.FOR);
+ this.state = 5054;
+ this.match(SqlParser.QUERY);
+ this.state = 5055;
+ localctx.queryCount = this.decimalLiteral();
+ }
+
+ this.state = 5058;
+ this.match(SqlParser.LIMIT);
+ this.state = 5062;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,725,this._ctx);
+ if(la_===1) {
+ this.state = 5059;
+ localctx.offset = this.decimalLiteral();
+ this.state = 5060;
+ this.match(SqlParser.COMMA);
+
+ }
+ this.state = 5064;
+ localctx.rowCount = this.decimalLiteral();
+ break;
+
+ case 18:
+ localctx = new ShowSlaveStatusContext(this, localctx);
+ this.enterOuterAlt(localctx, 18);
+ this.state = 5066;
+ this.match(SqlParser.SHOW);
+ this.state = 5067;
+ this.match(SqlParser.SLAVE);
+ this.state = 5068;
+ this.match(SqlParser.STATUS);
+ this.state = 5072;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.FOR) {
+ this.state = 5069;
+ this.match(SqlParser.FOR);
+ this.state = 5070;
+ this.match(SqlParser.CHANNEL);
+ this.state = 5071;
+ this.match(SqlParser.STRING_LITERAL);
+ }
+
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function VariableClauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_variableClause;
+ return this;
+}
+
+VariableClauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+VariableClauseContext.prototype.constructor = VariableClauseContext;
+
+VariableClauseContext.prototype.LOCAL_ID = function() {
+ return this.getToken(SqlParser.LOCAL_ID, 0);
+};
+
+VariableClauseContext.prototype.GLOBAL_ID = function() {
+ return this.getToken(SqlParser.GLOBAL_ID, 0);
+};
+
+VariableClauseContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+VariableClauseContext.prototype.GLOBAL = function() {
+ return this.getToken(SqlParser.GLOBAL, 0);
+};
+
+VariableClauseContext.prototype.SESSION = function() {
+ return this.getToken(SqlParser.SESSION, 0);
+};
+
+VariableClauseContext.prototype.LOCAL = function() {
+ return this.getToken(SqlParser.LOCAL, 0);
+};
+
+VariableClauseContext.prototype.AT_SIGN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.AT_SIGN);
+ } else {
+ return this.getToken(SqlParser.AT_SIGN, i);
+ }
+};
+
+
+VariableClauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterVariableClause(this);
+ }
+};
+
+VariableClauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitVariableClause(this);
+ }
+};
+
+VariableClauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitVariableClause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.VariableClauseContext = VariableClauseContext;
+
+SqlParser.prototype.variableClause = function() {
+
+ var localctx = new VariableClauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 444, SqlParser.RULE_variableClause);
+ var _la = 0; // Token type
+ try {
+ this.state = 5086;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.LOCAL_ID:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5076;
+ this.match(SqlParser.LOCAL_ID);
+ break;
+ case SqlParser.GLOBAL_ID:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 5077;
+ this.match(SqlParser.GLOBAL_ID);
+ break;
+ case SqlParser.CURRENT:
+ case SqlParser.DATABASE:
+ case SqlParser.DIAGNOSTICS:
+ case SqlParser.LEFT:
+ case SqlParser.NUMBER:
+ case SqlParser.RIGHT:
+ case SqlParser.STACKED:
+ case SqlParser.DATE:
+ case SqlParser.TIME:
+ case SqlParser.TIMESTAMP:
+ case SqlParser.DATETIME:
+ case SqlParser.YEAR:
+ case SqlParser.TEXT:
+ case SqlParser.ENUM:
+ case SqlParser.SERIAL:
+ case SqlParser.JSON_VALID:
+ case SqlParser.JSON_SCHEMA_VALID:
+ case SqlParser.COUNT:
+ case SqlParser.POSITION:
+ case SqlParser.ACCOUNT:
+ case SqlParser.ACTION:
+ case SqlParser.AFTER:
+ case SqlParser.AGGREGATE:
+ case SqlParser.ALGORITHM:
+ case SqlParser.ANY:
+ case SqlParser.AT:
+ case SqlParser.AUTHORS:
+ case SqlParser.AUTOCOMMIT:
+ case SqlParser.AUTOEXTEND_SIZE:
+ case SqlParser.AUTO_INCREMENT:
+ case SqlParser.AVG_ROW_LENGTH:
+ case SqlParser.BEGIN:
+ case SqlParser.BINLOG:
+ case SqlParser.BIT:
+ case SqlParser.BLOCK:
+ case SqlParser.BOOL:
+ case SqlParser.BOOLEAN:
+ case SqlParser.BTREE:
+ case SqlParser.CACHE:
+ case SqlParser.CASCADED:
+ case SqlParser.CHAIN:
+ case SqlParser.CHANGED:
+ case SqlParser.CHANNEL:
+ case SqlParser.CHECKSUM:
+ case SqlParser.PAGE_CHECKSUM:
+ case SqlParser.CIPHER:
+ case SqlParser.CLASS_ORIGIN:
+ case SqlParser.CLIENT:
+ case SqlParser.CLOSE:
+ case SqlParser.COALESCE:
+ case SqlParser.CODE:
+ case SqlParser.COLUMNS:
+ case SqlParser.COLUMN_FORMAT:
+ case SqlParser.COLUMN_NAME:
+ case SqlParser.COMMENT:
+ case SqlParser.COMMIT:
+ case SqlParser.COMPACT:
+ case SqlParser.COMPLETION:
+ case SqlParser.COMPRESSED:
+ case SqlParser.COMPRESSION:
+ case SqlParser.CONCURRENT:
+ case SqlParser.CONNECTION:
+ case SqlParser.CONSISTENT:
+ case SqlParser.CONSTRAINT_CATALOG:
+ case SqlParser.CONSTRAINT_SCHEMA:
+ case SqlParser.CONSTRAINT_NAME:
+ case SqlParser.CONTAINS:
+ case SqlParser.CONTEXT:
+ case SqlParser.CONTRIBUTORS:
+ case SqlParser.COPY:
+ case SqlParser.CPU:
+ case SqlParser.CURSOR_NAME:
+ case SqlParser.DATA:
+ case SqlParser.DATAFILE:
+ case SqlParser.DEALLOCATE:
+ case SqlParser.DEFAULT_AUTH:
+ case SqlParser.DEFINER:
+ case SqlParser.DELAY_KEY_WRITE:
+ case SqlParser.DES_KEY_FILE:
+ case SqlParser.DIRECTORY:
+ case SqlParser.DISABLE:
+ case SqlParser.DISCARD:
+ case SqlParser.DISK:
+ case SqlParser.DO:
+ case SqlParser.DUMPFILE:
+ case SqlParser.DUPLICATE:
+ case SqlParser.DYNAMIC:
+ case SqlParser.ENABLE:
+ case SqlParser.ENCRYPTION:
+ case SqlParser.END:
+ case SqlParser.ENDS:
+ case SqlParser.ENGINE:
+ case SqlParser.ENGINES:
+ case SqlParser.ERROR:
+ case SqlParser.ERRORS:
+ case SqlParser.ESCAPE:
+ case SqlParser.EVEN:
+ case SqlParser.EVENT:
+ case SqlParser.EVENTS:
+ case SqlParser.EVERY:
+ case SqlParser.EXCHANGE:
+ case SqlParser.EXCLUSIVE:
+ case SqlParser.EXPIRE:
+ case SqlParser.EXPORT:
+ case SqlParser.EXTENDED:
+ case SqlParser.EXTENT_SIZE:
+ case SqlParser.FAST:
+ case SqlParser.FAULTS:
+ case SqlParser.FIELDS:
+ case SqlParser.FILE_BLOCK_SIZE:
+ case SqlParser.FILTER:
+ case SqlParser.FIRST:
+ case SqlParser.FIXED:
+ case SqlParser.FLUSH:
+ case SqlParser.FOLLOWS:
+ case SqlParser.FOUND:
+ case SqlParser.FULL:
+ case SqlParser.FUNCTION:
+ case SqlParser.GENERAL:
+ case SqlParser.GLOBAL:
+ case SqlParser.GRANTS:
+ case SqlParser.GROUP_REPLICATION:
+ case SqlParser.HANDLER:
+ case SqlParser.HASH:
+ case SqlParser.HELP:
+ case SqlParser.HOST:
+ case SqlParser.HOSTS:
+ case SqlParser.IDENTIFIED:
+ case SqlParser.IGNORE_SERVER_IDS:
+ case SqlParser.IMPORT:
+ case SqlParser.INDEXES:
+ case SqlParser.INITIAL_SIZE:
+ case SqlParser.INPLACE:
+ case SqlParser.INSERT_METHOD:
+ case SqlParser.INSTALL:
+ case SqlParser.INSTANCE:
+ case SqlParser.INVISIBLE:
+ case SqlParser.INVOKER:
+ case SqlParser.IO:
+ case SqlParser.IO_THREAD:
+ case SqlParser.IPC:
+ case SqlParser.ISOLATION:
+ case SqlParser.ISSUER:
+ case SqlParser.JSON:
+ case SqlParser.KEY_BLOCK_SIZE:
+ case SqlParser.LANGUAGE:
+ case SqlParser.LAST:
+ case SqlParser.LEAVES:
+ case SqlParser.LESS:
+ case SqlParser.LEVEL:
+ case SqlParser.LIST:
+ case SqlParser.LOCAL:
+ case SqlParser.LOGFILE:
+ case SqlParser.LOGS:
+ case SqlParser.MASTER:
+ case SqlParser.MASTER_AUTO_POSITION:
+ case SqlParser.MASTER_CONNECT_RETRY:
+ case SqlParser.MASTER_DELAY:
+ case SqlParser.MASTER_HEARTBEAT_PERIOD:
+ case SqlParser.MASTER_HOST:
+ case SqlParser.MASTER_LOG_FILE:
+ case SqlParser.MASTER_LOG_POS:
+ case SqlParser.MASTER_PASSWORD:
+ case SqlParser.MASTER_PORT:
+ case SqlParser.MASTER_RETRY_COUNT:
+ case SqlParser.MASTER_SSL:
+ case SqlParser.MASTER_SSL_CA:
+ case SqlParser.MASTER_SSL_CAPATH:
+ case SqlParser.MASTER_SSL_CERT:
+ case SqlParser.MASTER_SSL_CIPHER:
+ case SqlParser.MASTER_SSL_CRL:
+ case SqlParser.MASTER_SSL_CRLPATH:
+ case SqlParser.MASTER_SSL_KEY:
+ case SqlParser.MASTER_TLS_VERSION:
+ case SqlParser.MASTER_USER:
+ case SqlParser.MAX_CONNECTIONS_PER_HOUR:
+ case SqlParser.MAX_QUERIES_PER_HOUR:
+ case SqlParser.MAX_ROWS:
+ case SqlParser.MAX_SIZE:
+ case SqlParser.MAX_UPDATES_PER_HOUR:
+ case SqlParser.MAX_USER_CONNECTIONS:
+ case SqlParser.MEDIUM:
+ case SqlParser.MERGE:
+ case SqlParser.MESSAGE_TEXT:
+ case SqlParser.MID:
+ case SqlParser.MIGRATE:
+ case SqlParser.MIN_ROWS:
+ case SqlParser.MODE:
+ case SqlParser.MODIFY:
+ case SqlParser.MUTEX:
+ case SqlParser.MYSQL:
+ case SqlParser.MYSQL_ERRNO:
+ case SqlParser.NAME:
+ case SqlParser.NAMES:
+ case SqlParser.NCHAR:
+ case SqlParser.NEVER:
+ case SqlParser.NEXT:
+ case SqlParser.NO:
+ case SqlParser.NODEGROUP:
+ case SqlParser.NONE:
+ case SqlParser.OFFLINE:
+ case SqlParser.OFFSET:
+ case SqlParser.OJ:
+ case SqlParser.OLD_PASSWORD:
+ case SqlParser.ONE:
+ case SqlParser.ONLINE:
+ case SqlParser.ONLY:
+ case SqlParser.OPEN:
+ case SqlParser.OPTIMIZER_COSTS:
+ case SqlParser.OPTIONS:
+ case SqlParser.OWNER:
+ case SqlParser.PACK_KEYS:
+ case SqlParser.PAGE:
+ case SqlParser.PARSER:
+ case SqlParser.PARTIAL:
+ case SqlParser.PARTITIONING:
+ case SqlParser.PARTITIONS:
+ case SqlParser.PASSWORD:
+ case SqlParser.PHASE:
+ case SqlParser.PLUGIN:
+ case SqlParser.PLUGIN_DIR:
+ case SqlParser.PLUGINS:
+ case SqlParser.PORT:
+ case SqlParser.PRECEDES:
+ case SqlParser.PREPARE:
+ case SqlParser.PRESERVE:
+ case SqlParser.PREV:
+ case SqlParser.PROCESSLIST:
+ case SqlParser.PROFILE:
+ case SqlParser.PROFILES:
+ case SqlParser.PROXY:
+ case SqlParser.QUERY:
+ case SqlParser.QUICK:
+ case SqlParser.REBUILD:
+ case SqlParser.RECOVER:
+ case SqlParser.REDO_BUFFER_SIZE:
+ case SqlParser.REDUNDANT:
+ case SqlParser.RELAY:
+ case SqlParser.RELAY_LOG_FILE:
+ case SqlParser.RELAY_LOG_POS:
+ case SqlParser.RELAYLOG:
+ case SqlParser.REMOVE:
+ case SqlParser.REORGANIZE:
+ case SqlParser.REPAIR:
+ case SqlParser.REPLICATE_DO_DB:
+ case SqlParser.REPLICATE_DO_TABLE:
+ case SqlParser.REPLICATE_IGNORE_DB:
+ case SqlParser.REPLICATE_IGNORE_TABLE:
+ case SqlParser.REPLICATE_REWRITE_DB:
+ case SqlParser.REPLICATE_WILD_DO_TABLE:
+ case SqlParser.REPLICATE_WILD_IGNORE_TABLE:
+ case SqlParser.REPLICATION:
+ case SqlParser.RESET:
+ case SqlParser.RESUME:
+ case SqlParser.RETURNED_SQLSTATE:
+ case SqlParser.RETURNS:
+ case SqlParser.ROLE:
+ case SqlParser.ROLLBACK:
+ case SqlParser.ROLLUP:
+ case SqlParser.ROTATE:
+ case SqlParser.ROW:
+ case SqlParser.ROWS:
+ case SqlParser.ROW_FORMAT:
+ case SqlParser.SAVEPOINT:
+ case SqlParser.SCHEDULE:
+ case SqlParser.SECURITY:
+ case SqlParser.SERVER:
+ case SqlParser.SESSION:
+ case SqlParser.SHARE:
+ case SqlParser.SHARED:
+ case SqlParser.SIGNED:
+ case SqlParser.SIMPLE:
+ case SqlParser.SLAVE:
+ case SqlParser.SLOW:
+ case SqlParser.SNAPSHOT:
+ case SqlParser.SOCKET:
+ case SqlParser.SOME:
+ case SqlParser.SONAME:
+ case SqlParser.SOUNDS:
+ case SqlParser.SOURCE:
+ case SqlParser.SQL_AFTER_GTIDS:
+ case SqlParser.SQL_AFTER_MTS_GAPS:
+ case SqlParser.SQL_BEFORE_GTIDS:
+ case SqlParser.SQL_BUFFER_RESULT:
+ case SqlParser.SQL_CACHE:
+ case SqlParser.SQL_NO_CACHE:
+ case SqlParser.SQL_THREAD:
+ case SqlParser.START:
+ case SqlParser.STARTS:
+ case SqlParser.STATS_AUTO_RECALC:
+ case SqlParser.STATS_PERSISTENT:
+ case SqlParser.STATS_SAMPLE_PAGES:
+ case SqlParser.STATUS:
+ case SqlParser.STOP:
+ case SqlParser.STORAGE:
+ case SqlParser.STRING:
+ case SqlParser.SUBCLASS_ORIGIN:
+ case SqlParser.SUBJECT:
+ case SqlParser.SUBPARTITION:
+ case SqlParser.SUBPARTITIONS:
+ case SqlParser.SUSPEND:
+ case SqlParser.SWAPS:
+ case SqlParser.SWITCHES:
+ case SqlParser.TABLE_NAME:
+ case SqlParser.TABLESPACE:
+ case SqlParser.TEMPORARY:
+ case SqlParser.TEMPTABLE:
+ case SqlParser.THAN:
+ case SqlParser.TRADITIONAL:
+ case SqlParser.TRANSACTION:
+ case SqlParser.TRANSACTIONAL:
+ case SqlParser.TRIGGERS:
+ case SqlParser.TRUNCATE:
+ case SqlParser.UNDEFINED:
+ case SqlParser.UNDOFILE:
+ case SqlParser.UNDO_BUFFER_SIZE:
+ case SqlParser.UNINSTALL:
+ case SqlParser.UNKNOWN:
+ case SqlParser.UNTIL:
+ case SqlParser.UPGRADE:
+ case SqlParser.USER:
+ case SqlParser.USE_FRM:
+ case SqlParser.USER_RESOURCES:
+ case SqlParser.VALIDATION:
+ case SqlParser.VALUE:
+ case SqlParser.VARIABLES:
+ case SqlParser.VIEW:
+ case SqlParser.VISIBLE:
+ case SqlParser.WAIT:
+ case SqlParser.WARNINGS:
+ case SqlParser.WITHOUT:
+ case SqlParser.WORK:
+ case SqlParser.WRAPPER:
+ case SqlParser.X509:
+ case SqlParser.XA:
+ case SqlParser.XML:
+ case SqlParser.INTERNAL:
+ case SqlParser.QUARTER:
+ case SqlParser.MONTH:
+ case SqlParser.DAY:
+ case SqlParser.HOUR:
+ case SqlParser.MINUTE:
+ case SqlParser.WEEK:
+ case SqlParser.SECOND:
+ case SqlParser.MICROSECOND:
+ case SqlParser.TABLES:
+ case SqlParser.ROUTINE:
+ case SqlParser.EXECUTE:
+ case SqlParser.FILE:
+ case SqlParser.PROCESS:
+ case SqlParser.RELOAD:
+ case SqlParser.SHUTDOWN:
+ case SqlParser.SUPER:
+ case SqlParser.PRIVILEGES:
+ case SqlParser.AUDIT_ADMIN:
+ case SqlParser.BACKUP_ADMIN:
+ case SqlParser.BINLOG_ADMIN:
+ case SqlParser.BINLOG_ENCRYPTION_ADMIN:
+ case SqlParser.CLONE_ADMIN:
+ case SqlParser.CONNECTION_ADMIN:
+ case SqlParser.ENCRYPTION_KEY_ADMIN:
+ case SqlParser.FIREWALL_ADMIN:
+ case SqlParser.FIREWALL_USER:
+ case SqlParser.GROUP_REPLICATION_ADMIN:
+ case SqlParser.INNODB_REDO_LOG_ARCHIVE:
+ case SqlParser.NDB_STORED_USER:
+ case SqlParser.PERSIST_RO_VARIABLES_ADMIN:
+ case SqlParser.REPLICATION_APPLIER:
+ case SqlParser.REPLICATION_SLAVE_ADMIN:
+ case SqlParser.RESOURCE_GROUP_ADMIN:
+ case SqlParser.RESOURCE_GROUP_USER:
+ case SqlParser.ROLE_ADMIN:
+ case SqlParser.SESSION_VARIABLES_ADMIN:
+ case SqlParser.SET_USER_ID:
+ case SqlParser.SHOW_ROUTINE:
+ case SqlParser.SYSTEM_VARIABLES_ADMIN:
+ case SqlParser.TABLE_ENCRYPTION_ADMIN:
+ case SqlParser.VERSION_TOKEN_ADMIN:
+ case SqlParser.XA_RECOVER_ADMIN:
+ case SqlParser.ARMSCII8:
+ case SqlParser.ASCII:
+ case SqlParser.BIG5:
+ case SqlParser.CP1250:
+ case SqlParser.CP1251:
+ case SqlParser.CP1256:
+ case SqlParser.CP1257:
+ case SqlParser.CP850:
+ case SqlParser.CP852:
+ case SqlParser.CP866:
+ case SqlParser.CP932:
+ case SqlParser.DEC8:
+ case SqlParser.EUCJPMS:
+ case SqlParser.EUCKR:
+ case SqlParser.GB2312:
+ case SqlParser.GBK:
+ case SqlParser.GEOSTD8:
+ case SqlParser.GREEK:
+ case SqlParser.HEBREW:
+ case SqlParser.HP8:
+ case SqlParser.KEYBCS2:
+ case SqlParser.KOI8R:
+ case SqlParser.KOI8U:
+ case SqlParser.LATIN1:
+ case SqlParser.LATIN2:
+ case SqlParser.LATIN5:
+ case SqlParser.LATIN7:
+ case SqlParser.MACCE:
+ case SqlParser.MACROMAN:
+ case SqlParser.SJIS:
+ case SqlParser.SWE7:
+ case SqlParser.TIS620:
+ case SqlParser.UCS2:
+ case SqlParser.UJIS:
+ case SqlParser.UTF16:
+ case SqlParser.UTF16LE:
+ case SqlParser.UTF32:
+ case SqlParser.UTF8:
+ case SqlParser.UTF8MB3:
+ case SqlParser.UTF8MB4:
+ case SqlParser.ARCHIVE:
+ case SqlParser.BLACKHOLE:
+ case SqlParser.CSV:
+ case SqlParser.FEDERATED:
+ case SqlParser.INNODB:
+ case SqlParser.MEMORY:
+ case SqlParser.MRG_MYISAM:
+ case SqlParser.MYISAM:
+ case SqlParser.NDB:
+ case SqlParser.NDBCLUSTER:
+ case SqlParser.PERFORMANCE_SCHEMA:
+ case SqlParser.TOKUDB:
+ case SqlParser.REPEATABLE:
+ case SqlParser.COMMITTED:
+ case SqlParser.UNCOMMITTED:
+ case SqlParser.SERIALIZABLE:
+ case SqlParser.GEOMETRYCOLLECTION:
+ case SqlParser.LINESTRING:
+ case SqlParser.MULTILINESTRING:
+ case SqlParser.MULTIPOINT:
+ case SqlParser.MULTIPOLYGON:
+ case SqlParser.POINT:
+ case SqlParser.POLYGON:
+ case SqlParser.ABS:
+ case SqlParser.ACOS:
+ case SqlParser.ADDDATE:
+ case SqlParser.ADDTIME:
+ case SqlParser.AES_DECRYPT:
+ case SqlParser.AES_ENCRYPT:
+ case SqlParser.AREA:
+ case SqlParser.ASBINARY:
+ case SqlParser.ASIN:
+ case SqlParser.ASTEXT:
+ case SqlParser.ASWKB:
+ case SqlParser.ASWKT:
+ case SqlParser.ASYMMETRIC_DECRYPT:
+ case SqlParser.ASYMMETRIC_DERIVE:
+ case SqlParser.ASYMMETRIC_ENCRYPT:
+ case SqlParser.ASYMMETRIC_SIGN:
+ case SqlParser.ASYMMETRIC_VERIFY:
+ case SqlParser.ATAN:
+ case SqlParser.ATAN2:
+ case SqlParser.BENCHMARK:
+ case SqlParser.BIN:
+ case SqlParser.BIT_COUNT:
+ case SqlParser.BIT_LENGTH:
+ case SqlParser.BUFFER:
+ case SqlParser.CATALOG_NAME:
+ case SqlParser.CEIL:
+ case SqlParser.CEILING:
+ case SqlParser.CENTROID:
+ case SqlParser.CHARACTER_LENGTH:
+ case SqlParser.CHARSET:
+ case SqlParser.CHAR_LENGTH:
+ case SqlParser.COERCIBILITY:
+ case SqlParser.COLLATION:
+ case SqlParser.COMPRESS:
+ case SqlParser.CONCAT:
+ case SqlParser.CONCAT_WS:
+ case SqlParser.CONNECTION_ID:
+ case SqlParser.CONV:
+ case SqlParser.CONVERT_TZ:
+ case SqlParser.COS:
+ case SqlParser.COT:
+ case SqlParser.CRC32:
+ case SqlParser.CREATE_ASYMMETRIC_PRIV_KEY:
+ case SqlParser.CREATE_ASYMMETRIC_PUB_KEY:
+ case SqlParser.CREATE_DH_PARAMETERS:
+ case SqlParser.CREATE_DIGEST:
+ case SqlParser.CROSSES:
+ case SqlParser.DATEDIFF:
+ case SqlParser.DATE_FORMAT:
+ case SqlParser.DAYNAME:
+ case SqlParser.DAYOFMONTH:
+ case SqlParser.DAYOFWEEK:
+ case SqlParser.DAYOFYEAR:
+ case SqlParser.DECODE:
+ case SqlParser.DEGREES:
+ case SqlParser.DES_DECRYPT:
+ case SqlParser.DES_ENCRYPT:
+ case SqlParser.DIMENSION:
+ case SqlParser.DISJOINT:
+ case SqlParser.ELT:
+ case SqlParser.ENCODE:
+ case SqlParser.ENCRYPT:
+ case SqlParser.ENDPOINT:
+ case SqlParser.ENVELOPE:
+ case SqlParser.EQUALS:
+ case SqlParser.EXP:
+ case SqlParser.EXPORT_SET:
+ case SqlParser.EXTERIORRING:
+ case SqlParser.EXTRACTVALUE:
+ case SqlParser.FIELD:
+ case SqlParser.FIND_IN_SET:
+ case SqlParser.FLOOR:
+ case SqlParser.FORMAT:
+ case SqlParser.FOUND_ROWS:
+ case SqlParser.FROM_BASE64:
+ case SqlParser.FROM_DAYS:
+ case SqlParser.FROM_UNIXTIME:
+ case SqlParser.GEOMCOLLFROMTEXT:
+ case SqlParser.GEOMCOLLFROMWKB:
+ case SqlParser.GEOMETRYCOLLECTIONFROMTEXT:
+ case SqlParser.GEOMETRYCOLLECTIONFROMWKB:
+ case SqlParser.GEOMETRYFROMTEXT:
+ case SqlParser.GEOMETRYFROMWKB:
+ case SqlParser.GEOMETRYN:
+ case SqlParser.GEOMETRYTYPE:
+ case SqlParser.GEOMFROMTEXT:
+ case SqlParser.GEOMFROMWKB:
+ case SqlParser.GET_FORMAT:
+ case SqlParser.GET_LOCK:
+ case SqlParser.GLENGTH:
+ case SqlParser.GREATEST:
+ case SqlParser.GTID_SUBSET:
+ case SqlParser.GTID_SUBTRACT:
+ case SqlParser.HEX:
+ case SqlParser.IFNULL:
+ case SqlParser.INET6_ATON:
+ case SqlParser.INET6_NTOA:
+ case SqlParser.INET_ATON:
+ case SqlParser.INET_NTOA:
+ case SqlParser.INSTR:
+ case SqlParser.INTERIORRINGN:
+ case SqlParser.INTERSECTS:
+ case SqlParser.ISCLOSED:
+ case SqlParser.ISEMPTY:
+ case SqlParser.ISNULL:
+ case SqlParser.ISSIMPLE:
+ case SqlParser.IS_FREE_LOCK:
+ case SqlParser.IS_IPV4:
+ case SqlParser.IS_IPV4_COMPAT:
+ case SqlParser.IS_IPV4_MAPPED:
+ case SqlParser.IS_IPV6:
+ case SqlParser.IS_USED_LOCK:
+ case SqlParser.LAST_INSERT_ID:
+ case SqlParser.LCASE:
+ case SqlParser.LEAST:
+ case SqlParser.LENGTH:
+ case SqlParser.LINEFROMTEXT:
+ case SqlParser.LINEFROMWKB:
+ case SqlParser.LINESTRINGFROMTEXT:
+ case SqlParser.LINESTRINGFROMWKB:
+ case SqlParser.LN:
+ case SqlParser.LOAD_FILE:
+ case SqlParser.LOCATE:
+ case SqlParser.LOG:
+ case SqlParser.LOG10:
+ case SqlParser.LOG2:
+ case SqlParser.LOWER:
+ case SqlParser.LPAD:
+ case SqlParser.LTRIM:
+ case SqlParser.MAKEDATE:
+ case SqlParser.MAKETIME:
+ case SqlParser.MAKE_SET:
+ case SqlParser.MASTER_POS_WAIT:
+ case SqlParser.MBRCONTAINS:
+ case SqlParser.MBRDISJOINT:
+ case SqlParser.MBREQUAL:
+ case SqlParser.MBRINTERSECTS:
+ case SqlParser.MBROVERLAPS:
+ case SqlParser.MBRTOUCHES:
+ case SqlParser.MBRWITHIN:
+ case SqlParser.MD5:
+ case SqlParser.MLINEFROMTEXT:
+ case SqlParser.MLINEFROMWKB:
+ case SqlParser.MONTHNAME:
+ case SqlParser.MPOINTFROMTEXT:
+ case SqlParser.MPOINTFROMWKB:
+ case SqlParser.MPOLYFROMTEXT:
+ case SqlParser.MPOLYFROMWKB:
+ case SqlParser.MULTILINESTRINGFROMTEXT:
+ case SqlParser.MULTILINESTRINGFROMWKB:
+ case SqlParser.MULTIPOINTFROMTEXT:
+ case SqlParser.MULTIPOINTFROMWKB:
+ case SqlParser.MULTIPOLYGONFROMTEXT:
+ case SqlParser.MULTIPOLYGONFROMWKB:
+ case SqlParser.NAME_CONST:
+ case SqlParser.NULLIF:
+ case SqlParser.NUMGEOMETRIES:
+ case SqlParser.NUMINTERIORRINGS:
+ case SqlParser.NUMPOINTS:
+ case SqlParser.OCT:
+ case SqlParser.OCTET_LENGTH:
+ case SqlParser.ORD:
+ case SqlParser.OVERLAPS:
+ case SqlParser.PERIOD_ADD:
+ case SqlParser.PERIOD_DIFF:
+ case SqlParser.PI:
+ case SqlParser.POINTFROMTEXT:
+ case SqlParser.POINTFROMWKB:
+ case SqlParser.POINTN:
+ case SqlParser.POLYFROMTEXT:
+ case SqlParser.POLYFROMWKB:
+ case SqlParser.POLYGONFROMTEXT:
+ case SqlParser.POLYGONFROMWKB:
+ case SqlParser.POW:
+ case SqlParser.POWER:
+ case SqlParser.QUOTE:
+ case SqlParser.RADIANS:
+ case SqlParser.RAND:
+ case SqlParser.RANDOM_BYTES:
+ case SqlParser.RELEASE_LOCK:
+ case SqlParser.REVERSE:
+ case SqlParser.ROUND:
+ case SqlParser.ROW_COUNT:
+ case SqlParser.RPAD:
+ case SqlParser.RTRIM:
+ case SqlParser.SEC_TO_TIME:
+ case SqlParser.SESSION_USER:
+ case SqlParser.SHA:
+ case SqlParser.SHA1:
+ case SqlParser.SHA2:
+ case SqlParser.SCHEMA_NAME:
+ case SqlParser.SIGN:
+ case SqlParser.SIN:
+ case SqlParser.SLEEP:
+ case SqlParser.SOUNDEX:
+ case SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS:
+ case SqlParser.SQRT:
+ case SqlParser.SRID:
+ case SqlParser.STARTPOINT:
+ case SqlParser.STRCMP:
+ case SqlParser.STR_TO_DATE:
+ case SqlParser.ST_AREA:
+ case SqlParser.ST_ASBINARY:
+ case SqlParser.ST_ASTEXT:
+ case SqlParser.ST_ASWKB:
+ case SqlParser.ST_ASWKT:
+ case SqlParser.ST_BUFFER:
+ case SqlParser.ST_CENTROID:
+ case SqlParser.ST_CONTAINS:
+ case SqlParser.ST_CROSSES:
+ case SqlParser.ST_DIFFERENCE:
+ case SqlParser.ST_DIMENSION:
+ case SqlParser.ST_DISJOINT:
+ case SqlParser.ST_DISTANCE:
+ case SqlParser.ST_ENDPOINT:
+ case SqlParser.ST_ENVELOPE:
+ case SqlParser.ST_EQUALS:
+ case SqlParser.ST_EXTERIORRING:
+ case SqlParser.ST_GEOMCOLLFROMTEXT:
+ case SqlParser.ST_GEOMCOLLFROMTXT:
+ case SqlParser.ST_GEOMCOLLFROMWKB:
+ case SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT:
+ case SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB:
+ case SqlParser.ST_GEOMETRYFROMTEXT:
+ case SqlParser.ST_GEOMETRYFROMWKB:
+ case SqlParser.ST_GEOMETRYN:
+ case SqlParser.ST_GEOMETRYTYPE:
+ case SqlParser.ST_GEOMFROMTEXT:
+ case SqlParser.ST_GEOMFROMWKB:
+ case SqlParser.ST_INTERIORRINGN:
+ case SqlParser.ST_INTERSECTION:
+ case SqlParser.ST_INTERSECTS:
+ case SqlParser.ST_ISCLOSED:
+ case SqlParser.ST_ISEMPTY:
+ case SqlParser.ST_ISSIMPLE:
+ case SqlParser.ST_LINEFROMTEXT:
+ case SqlParser.ST_LINEFROMWKB:
+ case SqlParser.ST_LINESTRINGFROMTEXT:
+ case SqlParser.ST_LINESTRINGFROMWKB:
+ case SqlParser.ST_NUMGEOMETRIES:
+ case SqlParser.ST_NUMINTERIORRING:
+ case SqlParser.ST_NUMINTERIORRINGS:
+ case SqlParser.ST_NUMPOINTS:
+ case SqlParser.ST_OVERLAPS:
+ case SqlParser.ST_POINTFROMTEXT:
+ case SqlParser.ST_POINTFROMWKB:
+ case SqlParser.ST_POINTN:
+ case SqlParser.ST_POLYFROMTEXT:
+ case SqlParser.ST_POLYFROMWKB:
+ case SqlParser.ST_POLYGONFROMTEXT:
+ case SqlParser.ST_POLYGONFROMWKB:
+ case SqlParser.ST_SRID:
+ case SqlParser.ST_STARTPOINT:
+ case SqlParser.ST_SYMDIFFERENCE:
+ case SqlParser.ST_TOUCHES:
+ case SqlParser.ST_UNION:
+ case SqlParser.ST_WITHIN:
+ case SqlParser.ST_X:
+ case SqlParser.ST_Y:
+ case SqlParser.SUBDATE:
+ case SqlParser.SUBSTRING_INDEX:
+ case SqlParser.SUBTIME:
+ case SqlParser.SYSTEM_USER:
+ case SqlParser.TAN:
+ case SqlParser.TIMEDIFF:
+ case SqlParser.TIMESTAMPADD:
+ case SqlParser.TIMESTAMPDIFF:
+ case SqlParser.TIME_FORMAT:
+ case SqlParser.TIME_TO_SEC:
+ case SqlParser.TOUCHES:
+ case SqlParser.TO_BASE64:
+ case SqlParser.TO_DAYS:
+ case SqlParser.TO_SECONDS:
+ case SqlParser.UCASE:
+ case SqlParser.UNCOMPRESS:
+ case SqlParser.UNCOMPRESSED_LENGTH:
+ case SqlParser.UNHEX:
+ case SqlParser.UNIX_TIMESTAMP:
+ case SqlParser.UPDATEXML:
+ case SqlParser.UPPER:
+ case SqlParser.UUID:
+ case SqlParser.UUID_SHORT:
+ case SqlParser.VALIDATE_PASSWORD_STRENGTH:
+ case SqlParser.VERSION:
+ case SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS:
+ case SqlParser.WEEKDAY:
+ case SqlParser.WEEKOFYEAR:
+ case SqlParser.WEIGHT_STRING:
+ case SqlParser.WITHIN:
+ case SqlParser.YEARWEEK:
+ case SqlParser.Y_FUNCTION:
+ case SqlParser.X_FUNCTION:
+ case SqlParser.AT_SIGN:
+ case SqlParser.CHARSET_REVERSE_QOUTE_STRING:
+ case SqlParser.STRING_LITERAL:
+ case SqlParser.ID:
+ case SqlParser.REVERSE_QUOTE_ID:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 5083;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,729,this._ctx);
+ if(la_===1) {
+ this.state = 5080;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.AT_SIGN) {
+ this.state = 5078;
+ this.match(SqlParser.AT_SIGN);
+ this.state = 5079;
+ this.match(SqlParser.AT_SIGN);
+ }
+
+ this.state = 5082;
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.GLOBAL || _la===SqlParser.LOCAL || _la===SqlParser.SESSION)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+
+ }
+ this.state = 5085;
+ this.uid();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function ShowCommonEntityContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_showCommonEntity;
+ return this;
+}
+
+ShowCommonEntityContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+ShowCommonEntityContext.prototype.constructor = ShowCommonEntityContext;
+
+ShowCommonEntityContext.prototype.CHARACTER = function() {
+ return this.getToken(SqlParser.CHARACTER, 0);
+};
+
+ShowCommonEntityContext.prototype.SET = function() {
+ return this.getToken(SqlParser.SET, 0);
+};
+
+ShowCommonEntityContext.prototype.COLLATION = function() {
+ return this.getToken(SqlParser.COLLATION, 0);
+};
+
+ShowCommonEntityContext.prototype.DATABASES = function() {
+ return this.getToken(SqlParser.DATABASES, 0);
+};
+
+ShowCommonEntityContext.prototype.SCHEMAS = function() {
+ return this.getToken(SqlParser.SCHEMAS, 0);
+};
+
+ShowCommonEntityContext.prototype.FUNCTION = function() {
+ return this.getToken(SqlParser.FUNCTION, 0);
+};
+
+ShowCommonEntityContext.prototype.STATUS = function() {
+ return this.getToken(SqlParser.STATUS, 0);
+};
+
+ShowCommonEntityContext.prototype.PROCEDURE = function() {
+ return this.getToken(SqlParser.PROCEDURE, 0);
+};
+
+ShowCommonEntityContext.prototype.VARIABLES = function() {
+ return this.getToken(SqlParser.VARIABLES, 0);
+};
+
+ShowCommonEntityContext.prototype.GLOBAL = function() {
+ return this.getToken(SqlParser.GLOBAL, 0);
+};
+
+ShowCommonEntityContext.prototype.SESSION = function() {
+ return this.getToken(SqlParser.SESSION, 0);
+};
+
+ShowCommonEntityContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterShowCommonEntity(this);
+ }
+};
+
+ShowCommonEntityContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitShowCommonEntity(this);
+ }
+};
+
+ShowCommonEntityContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitShowCommonEntity(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.ShowCommonEntityContext = ShowCommonEntityContext;
+
+SqlParser.prototype.showCommonEntity = function() {
+
+ var localctx = new ShowCommonEntityContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 446, SqlParser.RULE_showCommonEntity);
+ var _la = 0; // Token type
+ try {
+ this.state = 5101;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.CHARACTER:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5088;
+ this.match(SqlParser.CHARACTER);
+ this.state = 5089;
+ this.match(SqlParser.SET);
+ break;
+ case SqlParser.COLLATION:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 5090;
+ this.match(SqlParser.COLLATION);
+ break;
+ case SqlParser.DATABASES:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 5091;
+ this.match(SqlParser.DATABASES);
+ break;
+ case SqlParser.SCHEMAS:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 5092;
+ this.match(SqlParser.SCHEMAS);
+ break;
+ case SqlParser.FUNCTION:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 5093;
+ this.match(SqlParser.FUNCTION);
+ this.state = 5094;
+ this.match(SqlParser.STATUS);
+ break;
+ case SqlParser.PROCEDURE:
+ this.enterOuterAlt(localctx, 6);
+ this.state = 5095;
+ this.match(SqlParser.PROCEDURE);
+ this.state = 5096;
+ this.match(SqlParser.STATUS);
+ break;
+ case SqlParser.GLOBAL:
+ case SqlParser.SESSION:
+ case SqlParser.STATUS:
+ case SqlParser.VARIABLES:
+ this.enterOuterAlt(localctx, 7);
+ this.state = 5098;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.GLOBAL || _la===SqlParser.SESSION) {
+ this.state = 5097;
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.GLOBAL || _la===SqlParser.SESSION)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 5100;
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.STATUS || _la===SqlParser.VARIABLES)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function ShowFilterContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_showFilter;
+ return this;
+}
+
+ShowFilterContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+ShowFilterContext.prototype.constructor = ShowFilterContext;
+
+ShowFilterContext.prototype.LIKE = function() {
+ return this.getToken(SqlParser.LIKE, 0);
+};
+
+ShowFilterContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+ShowFilterContext.prototype.WHERE = function() {
+ return this.getToken(SqlParser.WHERE, 0);
+};
+
+ShowFilterContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+ShowFilterContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterShowFilter(this);
+ }
+};
+
+ShowFilterContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitShowFilter(this);
+ }
+};
+
+ShowFilterContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitShowFilter(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.ShowFilterContext = ShowFilterContext;
+
+SqlParser.prototype.showFilter = function() {
+
+ var localctx = new ShowFilterContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 448, SqlParser.RULE_showFilter);
+ try {
+ this.state = 5107;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.LIKE:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5103;
+ this.match(SqlParser.LIKE);
+ this.state = 5104;
+ this.match(SqlParser.STRING_LITERAL);
+ break;
+ case SqlParser.WHERE:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 5105;
+ this.match(SqlParser.WHERE);
+ this.state = 5106;
+ this.expression(0);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function ShowGlobalInfoClauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_showGlobalInfoClause;
+ return this;
+}
+
+ShowGlobalInfoClauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+ShowGlobalInfoClauseContext.prototype.constructor = ShowGlobalInfoClauseContext;
+
+ShowGlobalInfoClauseContext.prototype.ENGINES = function() {
+ return this.getToken(SqlParser.ENGINES, 0);
+};
+
+ShowGlobalInfoClauseContext.prototype.STORAGE = function() {
+ return this.getToken(SqlParser.STORAGE, 0);
+};
+
+ShowGlobalInfoClauseContext.prototype.MASTER = function() {
+ return this.getToken(SqlParser.MASTER, 0);
+};
+
+ShowGlobalInfoClauseContext.prototype.STATUS = function() {
+ return this.getToken(SqlParser.STATUS, 0);
+};
+
+ShowGlobalInfoClauseContext.prototype.PLUGINS = function() {
+ return this.getToken(SqlParser.PLUGINS, 0);
+};
+
+ShowGlobalInfoClauseContext.prototype.PRIVILEGES = function() {
+ return this.getToken(SqlParser.PRIVILEGES, 0);
+};
+
+ShowGlobalInfoClauseContext.prototype.PROCESSLIST = function() {
+ return this.getToken(SqlParser.PROCESSLIST, 0);
+};
+
+ShowGlobalInfoClauseContext.prototype.FULL = function() {
+ return this.getToken(SqlParser.FULL, 0);
+};
+
+ShowGlobalInfoClauseContext.prototype.PROFILES = function() {
+ return this.getToken(SqlParser.PROFILES, 0);
+};
+
+ShowGlobalInfoClauseContext.prototype.SLAVE = function() {
+ return this.getToken(SqlParser.SLAVE, 0);
+};
+
+ShowGlobalInfoClauseContext.prototype.HOSTS = function() {
+ return this.getToken(SqlParser.HOSTS, 0);
+};
+
+ShowGlobalInfoClauseContext.prototype.AUTHORS = function() {
+ return this.getToken(SqlParser.AUTHORS, 0);
+};
+
+ShowGlobalInfoClauseContext.prototype.CONTRIBUTORS = function() {
+ return this.getToken(SqlParser.CONTRIBUTORS, 0);
+};
+
+ShowGlobalInfoClauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterShowGlobalInfoClause(this);
+ }
+};
+
+ShowGlobalInfoClauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitShowGlobalInfoClause(this);
+ }
+};
+
+ShowGlobalInfoClauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitShowGlobalInfoClause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.ShowGlobalInfoClauseContext = ShowGlobalInfoClauseContext;
+
+SqlParser.prototype.showGlobalInfoClause = function() {
+
+ var localctx = new ShowGlobalInfoClauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 450, SqlParser.RULE_showGlobalInfoClause);
+ var _la = 0; // Token type
+ try {
+ this.state = 5126;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.ENGINES:
+ case SqlParser.STORAGE:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5110;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.STORAGE) {
+ this.state = 5109;
+ this.match(SqlParser.STORAGE);
+ }
+
+ this.state = 5112;
+ this.match(SqlParser.ENGINES);
+ break;
+ case SqlParser.MASTER:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 5113;
+ this.match(SqlParser.MASTER);
+ this.state = 5114;
+ this.match(SqlParser.STATUS);
+ break;
+ case SqlParser.PLUGINS:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 5115;
+ this.match(SqlParser.PLUGINS);
+ break;
+ case SqlParser.PRIVILEGES:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 5116;
+ this.match(SqlParser.PRIVILEGES);
+ break;
+ case SqlParser.FULL:
+ case SqlParser.PROCESSLIST:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 5118;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.FULL) {
+ this.state = 5117;
+ this.match(SqlParser.FULL);
+ }
+
+ this.state = 5120;
+ this.match(SqlParser.PROCESSLIST);
+ break;
+ case SqlParser.PROFILES:
+ this.enterOuterAlt(localctx, 6);
+ this.state = 5121;
+ this.match(SqlParser.PROFILES);
+ break;
+ case SqlParser.SLAVE:
+ this.enterOuterAlt(localctx, 7);
+ this.state = 5122;
+ this.match(SqlParser.SLAVE);
+ this.state = 5123;
+ this.match(SqlParser.HOSTS);
+ break;
+ case SqlParser.AUTHORS:
+ this.enterOuterAlt(localctx, 8);
+ this.state = 5124;
+ this.match(SqlParser.AUTHORS);
+ break;
+ case SqlParser.CONTRIBUTORS:
+ this.enterOuterAlt(localctx, 9);
+ this.state = 5125;
+ this.match(SqlParser.CONTRIBUTORS);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function ShowSchemaEntityContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_showSchemaEntity;
+ return this;
+}
+
+ShowSchemaEntityContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+ShowSchemaEntityContext.prototype.constructor = ShowSchemaEntityContext;
+
+ShowSchemaEntityContext.prototype.EVENTS = function() {
+ return this.getToken(SqlParser.EVENTS, 0);
+};
+
+ShowSchemaEntityContext.prototype.TABLE = function() {
+ return this.getToken(SqlParser.TABLE, 0);
+};
+
+ShowSchemaEntityContext.prototype.STATUS = function() {
+ return this.getToken(SqlParser.STATUS, 0);
+};
+
+ShowSchemaEntityContext.prototype.TABLES = function() {
+ return this.getToken(SqlParser.TABLES, 0);
+};
+
+ShowSchemaEntityContext.prototype.FULL = function() {
+ return this.getToken(SqlParser.FULL, 0);
+};
+
+ShowSchemaEntityContext.prototype.TRIGGERS = function() {
+ return this.getToken(SqlParser.TRIGGERS, 0);
+};
+
+ShowSchemaEntityContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterShowSchemaEntity(this);
+ }
+};
+
+ShowSchemaEntityContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitShowSchemaEntity(this);
+ }
+};
+
+ShowSchemaEntityContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitShowSchemaEntity(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.ShowSchemaEntityContext = ShowSchemaEntityContext;
+
+SqlParser.prototype.showSchemaEntity = function() {
+
+ var localctx = new ShowSchemaEntityContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 452, SqlParser.RULE_showSchemaEntity);
+ var _la = 0; // Token type
+ try {
+ this.state = 5136;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.EVENTS:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5128;
+ this.match(SqlParser.EVENTS);
+ break;
+ case SqlParser.TABLE:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 5129;
+ this.match(SqlParser.TABLE);
+ this.state = 5130;
+ this.match(SqlParser.STATUS);
+ break;
+ case SqlParser.FULL:
+ case SqlParser.TABLES:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 5132;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.FULL) {
+ this.state = 5131;
+ this.match(SqlParser.FULL);
+ }
+
+ this.state = 5134;
+ this.match(SqlParser.TABLES);
+ break;
+ case SqlParser.TRIGGERS:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 5135;
+ this.match(SqlParser.TRIGGERS);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function ShowProfileTypeContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_showProfileType;
+ return this;
+}
+
+ShowProfileTypeContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+ShowProfileTypeContext.prototype.constructor = ShowProfileTypeContext;
+
+ShowProfileTypeContext.prototype.ALL = function() {
+ return this.getToken(SqlParser.ALL, 0);
+};
+
+ShowProfileTypeContext.prototype.BLOCK = function() {
+ return this.getToken(SqlParser.BLOCK, 0);
+};
+
+ShowProfileTypeContext.prototype.IO = function() {
+ return this.getToken(SqlParser.IO, 0);
+};
+
+ShowProfileTypeContext.prototype.CONTEXT = function() {
+ return this.getToken(SqlParser.CONTEXT, 0);
+};
+
+ShowProfileTypeContext.prototype.SWITCHES = function() {
+ return this.getToken(SqlParser.SWITCHES, 0);
+};
+
+ShowProfileTypeContext.prototype.CPU = function() {
+ return this.getToken(SqlParser.CPU, 0);
+};
+
+ShowProfileTypeContext.prototype.IPC = function() {
+ return this.getToken(SqlParser.IPC, 0);
+};
+
+ShowProfileTypeContext.prototype.MEMORY = function() {
+ return this.getToken(SqlParser.MEMORY, 0);
+};
+
+ShowProfileTypeContext.prototype.PAGE = function() {
+ return this.getToken(SqlParser.PAGE, 0);
+};
+
+ShowProfileTypeContext.prototype.FAULTS = function() {
+ return this.getToken(SqlParser.FAULTS, 0);
+};
+
+ShowProfileTypeContext.prototype.SOURCE = function() {
+ return this.getToken(SqlParser.SOURCE, 0);
+};
+
+ShowProfileTypeContext.prototype.SWAPS = function() {
+ return this.getToken(SqlParser.SWAPS, 0);
+};
+
+ShowProfileTypeContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterShowProfileType(this);
+ }
+};
+
+ShowProfileTypeContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitShowProfileType(this);
+ }
+};
+
+ShowProfileTypeContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitShowProfileType(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.ShowProfileTypeContext = ShowProfileTypeContext;
+
+SqlParser.prototype.showProfileType = function() {
+
+ var localctx = new ShowProfileTypeContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 454, SqlParser.RULE_showProfileType);
+ try {
+ this.state = 5150;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.ALL:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5138;
+ this.match(SqlParser.ALL);
+ break;
+ case SqlParser.BLOCK:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 5139;
+ this.match(SqlParser.BLOCK);
+ this.state = 5140;
+ this.match(SqlParser.IO);
+ break;
+ case SqlParser.CONTEXT:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 5141;
+ this.match(SqlParser.CONTEXT);
+ this.state = 5142;
+ this.match(SqlParser.SWITCHES);
+ break;
+ case SqlParser.CPU:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 5143;
+ this.match(SqlParser.CPU);
+ break;
+ case SqlParser.IPC:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 5144;
+ this.match(SqlParser.IPC);
+ break;
+ case SqlParser.MEMORY:
+ this.enterOuterAlt(localctx, 6);
+ this.state = 5145;
+ this.match(SqlParser.MEMORY);
+ break;
+ case SqlParser.PAGE:
+ this.enterOuterAlt(localctx, 7);
+ this.state = 5146;
+ this.match(SqlParser.PAGE);
+ this.state = 5147;
+ this.match(SqlParser.FAULTS);
+ break;
+ case SqlParser.SOURCE:
+ this.enterOuterAlt(localctx, 8);
+ this.state = 5148;
+ this.match(SqlParser.SOURCE);
+ break;
+ case SqlParser.SWAPS:
+ this.enterOuterAlt(localctx, 9);
+ this.state = 5149;
+ this.match(SqlParser.SWAPS);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function BinlogStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_binlogStatement;
+ return this;
+}
+
+BinlogStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+BinlogStatementContext.prototype.constructor = BinlogStatementContext;
+
+BinlogStatementContext.prototype.BINLOG = function() {
+ return this.getToken(SqlParser.BINLOG, 0);
+};
+
+BinlogStatementContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+BinlogStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterBinlogStatement(this);
+ }
+};
+
+BinlogStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitBinlogStatement(this);
+ }
+};
+
+BinlogStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitBinlogStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.BinlogStatementContext = BinlogStatementContext;
+
+SqlParser.prototype.binlogStatement = function() {
+
+ var localctx = new BinlogStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 456, SqlParser.RULE_binlogStatement);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5152;
+ this.match(SqlParser.BINLOG);
+ this.state = 5153;
+ this.match(SqlParser.STRING_LITERAL);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function CacheIndexStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_cacheIndexStatement;
+ this.schema = null; // UidContext
+ return this;
+}
+
+CacheIndexStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+CacheIndexStatementContext.prototype.constructor = CacheIndexStatementContext;
+
+CacheIndexStatementContext.prototype.CACHE = function() {
+ return this.getToken(SqlParser.CACHE, 0);
+};
+
+CacheIndexStatementContext.prototype.INDEX = function() {
+ return this.getToken(SqlParser.INDEX, 0);
+};
+
+CacheIndexStatementContext.prototype.tableIndexes = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(TableIndexesContext);
+ } else {
+ return this.getTypedRuleContext(TableIndexesContext,i);
+ }
+};
+
+CacheIndexStatementContext.prototype.IN = function() {
+ return this.getToken(SqlParser.IN, 0);
+};
+
+CacheIndexStatementContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+CacheIndexStatementContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+CacheIndexStatementContext.prototype.PARTITION = function() {
+ return this.getToken(SqlParser.PARTITION, 0);
+};
+
+CacheIndexStatementContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+CacheIndexStatementContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+CacheIndexStatementContext.prototype.uidList = function() {
+ return this.getTypedRuleContext(UidListContext,0);
+};
+
+CacheIndexStatementContext.prototype.ALL = function() {
+ return this.getToken(SqlParser.ALL, 0);
+};
+
+CacheIndexStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterCacheIndexStatement(this);
+ }
+};
+
+CacheIndexStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitCacheIndexStatement(this);
+ }
+};
+
+CacheIndexStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitCacheIndexStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.CacheIndexStatementContext = CacheIndexStatementContext;
+
+SqlParser.prototype.cacheIndexStatement = function() {
+
+ var localctx = new CacheIndexStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 458, SqlParser.RULE_cacheIndexStatement);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5155;
+ this.match(SqlParser.CACHE);
+ this.state = 5156;
+ this.match(SqlParser.INDEX);
+ this.state = 5157;
+ this.tableIndexes();
+ this.state = 5162;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 5158;
+ this.match(SqlParser.COMMA);
+ this.state = 5159;
+ this.tableIndexes();
+ this.state = 5164;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 5172;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.PARTITION) {
+ this.state = 5165;
+ this.match(SqlParser.PARTITION);
+ this.state = 5166;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 5169;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.CURRENT:
+ case SqlParser.DATABASE:
+ case SqlParser.DIAGNOSTICS:
+ case SqlParser.LEFT:
+ case SqlParser.NUMBER:
+ case SqlParser.RIGHT:
+ case SqlParser.STACKED:
+ case SqlParser.DATE:
+ case SqlParser.TIME:
+ case SqlParser.TIMESTAMP:
+ case SqlParser.DATETIME:
+ case SqlParser.YEAR:
+ case SqlParser.TEXT:
+ case SqlParser.ENUM:
+ case SqlParser.SERIAL:
+ case SqlParser.JSON_VALID:
+ case SqlParser.JSON_SCHEMA_VALID:
+ case SqlParser.COUNT:
+ case SqlParser.POSITION:
+ case SqlParser.ACCOUNT:
+ case SqlParser.ACTION:
+ case SqlParser.AFTER:
+ case SqlParser.AGGREGATE:
+ case SqlParser.ALGORITHM:
+ case SqlParser.ANY:
+ case SqlParser.AT:
+ case SqlParser.AUTHORS:
+ case SqlParser.AUTOCOMMIT:
+ case SqlParser.AUTOEXTEND_SIZE:
+ case SqlParser.AUTO_INCREMENT:
+ case SqlParser.AVG_ROW_LENGTH:
+ case SqlParser.BEGIN:
+ case SqlParser.BINLOG:
+ case SqlParser.BIT:
+ case SqlParser.BLOCK:
+ case SqlParser.BOOL:
+ case SqlParser.BOOLEAN:
+ case SqlParser.BTREE:
+ case SqlParser.CACHE:
+ case SqlParser.CASCADED:
+ case SqlParser.CHAIN:
+ case SqlParser.CHANGED:
+ case SqlParser.CHANNEL:
+ case SqlParser.CHECKSUM:
+ case SqlParser.PAGE_CHECKSUM:
+ case SqlParser.CIPHER:
+ case SqlParser.CLASS_ORIGIN:
+ case SqlParser.CLIENT:
+ case SqlParser.CLOSE:
+ case SqlParser.COALESCE:
+ case SqlParser.CODE:
+ case SqlParser.COLUMNS:
+ case SqlParser.COLUMN_FORMAT:
+ case SqlParser.COLUMN_NAME:
+ case SqlParser.COMMENT:
+ case SqlParser.COMMIT:
+ case SqlParser.COMPACT:
+ case SqlParser.COMPLETION:
+ case SqlParser.COMPRESSED:
+ case SqlParser.COMPRESSION:
+ case SqlParser.CONCURRENT:
+ case SqlParser.CONNECTION:
+ case SqlParser.CONSISTENT:
+ case SqlParser.CONSTRAINT_CATALOG:
+ case SqlParser.CONSTRAINT_SCHEMA:
+ case SqlParser.CONSTRAINT_NAME:
+ case SqlParser.CONTAINS:
+ case SqlParser.CONTEXT:
+ case SqlParser.CONTRIBUTORS:
+ case SqlParser.COPY:
+ case SqlParser.CPU:
+ case SqlParser.CURSOR_NAME:
+ case SqlParser.DATA:
+ case SqlParser.DATAFILE:
+ case SqlParser.DEALLOCATE:
+ case SqlParser.DEFAULT_AUTH:
+ case SqlParser.DEFINER:
+ case SqlParser.DELAY_KEY_WRITE:
+ case SqlParser.DES_KEY_FILE:
+ case SqlParser.DIRECTORY:
+ case SqlParser.DISABLE:
+ case SqlParser.DISCARD:
+ case SqlParser.DISK:
+ case SqlParser.DO:
+ case SqlParser.DUMPFILE:
+ case SqlParser.DUPLICATE:
+ case SqlParser.DYNAMIC:
+ case SqlParser.ENABLE:
+ case SqlParser.ENCRYPTION:
+ case SqlParser.END:
+ case SqlParser.ENDS:
+ case SqlParser.ENGINE:
+ case SqlParser.ENGINES:
+ case SqlParser.ERROR:
+ case SqlParser.ERRORS:
+ case SqlParser.ESCAPE:
+ case SqlParser.EVEN:
+ case SqlParser.EVENT:
+ case SqlParser.EVENTS:
+ case SqlParser.EVERY:
+ case SqlParser.EXCHANGE:
+ case SqlParser.EXCLUSIVE:
+ case SqlParser.EXPIRE:
+ case SqlParser.EXPORT:
+ case SqlParser.EXTENDED:
+ case SqlParser.EXTENT_SIZE:
+ case SqlParser.FAST:
+ case SqlParser.FAULTS:
+ case SqlParser.FIELDS:
+ case SqlParser.FILE_BLOCK_SIZE:
+ case SqlParser.FILTER:
+ case SqlParser.FIRST:
+ case SqlParser.FIXED:
+ case SqlParser.FLUSH:
+ case SqlParser.FOLLOWS:
+ case SqlParser.FOUND:
+ case SqlParser.FULL:
+ case SqlParser.FUNCTION:
+ case SqlParser.GENERAL:
+ case SqlParser.GLOBAL:
+ case SqlParser.GRANTS:
+ case SqlParser.GROUP_REPLICATION:
+ case SqlParser.HANDLER:
+ case SqlParser.HASH:
+ case SqlParser.HELP:
+ case SqlParser.HOST:
+ case SqlParser.HOSTS:
+ case SqlParser.IDENTIFIED:
+ case SqlParser.IGNORE_SERVER_IDS:
+ case SqlParser.IMPORT:
+ case SqlParser.INDEXES:
+ case SqlParser.INITIAL_SIZE:
+ case SqlParser.INPLACE:
+ case SqlParser.INSERT_METHOD:
+ case SqlParser.INSTALL:
+ case SqlParser.INSTANCE:
+ case SqlParser.INVISIBLE:
+ case SqlParser.INVOKER:
+ case SqlParser.IO:
+ case SqlParser.IO_THREAD:
+ case SqlParser.IPC:
+ case SqlParser.ISOLATION:
+ case SqlParser.ISSUER:
+ case SqlParser.JSON:
+ case SqlParser.KEY_BLOCK_SIZE:
+ case SqlParser.LANGUAGE:
+ case SqlParser.LAST:
+ case SqlParser.LEAVES:
+ case SqlParser.LESS:
+ case SqlParser.LEVEL:
+ case SqlParser.LIST:
+ case SqlParser.LOCAL:
+ case SqlParser.LOGFILE:
+ case SqlParser.LOGS:
+ case SqlParser.MASTER:
+ case SqlParser.MASTER_AUTO_POSITION:
+ case SqlParser.MASTER_CONNECT_RETRY:
+ case SqlParser.MASTER_DELAY:
+ case SqlParser.MASTER_HEARTBEAT_PERIOD:
+ case SqlParser.MASTER_HOST:
+ case SqlParser.MASTER_LOG_FILE:
+ case SqlParser.MASTER_LOG_POS:
+ case SqlParser.MASTER_PASSWORD:
+ case SqlParser.MASTER_PORT:
+ case SqlParser.MASTER_RETRY_COUNT:
+ case SqlParser.MASTER_SSL:
+ case SqlParser.MASTER_SSL_CA:
+ case SqlParser.MASTER_SSL_CAPATH:
+ case SqlParser.MASTER_SSL_CERT:
+ case SqlParser.MASTER_SSL_CIPHER:
+ case SqlParser.MASTER_SSL_CRL:
+ case SqlParser.MASTER_SSL_CRLPATH:
+ case SqlParser.MASTER_SSL_KEY:
+ case SqlParser.MASTER_TLS_VERSION:
+ case SqlParser.MASTER_USER:
+ case SqlParser.MAX_CONNECTIONS_PER_HOUR:
+ case SqlParser.MAX_QUERIES_PER_HOUR:
+ case SqlParser.MAX_ROWS:
+ case SqlParser.MAX_SIZE:
+ case SqlParser.MAX_UPDATES_PER_HOUR:
+ case SqlParser.MAX_USER_CONNECTIONS:
+ case SqlParser.MEDIUM:
+ case SqlParser.MERGE:
+ case SqlParser.MESSAGE_TEXT:
+ case SqlParser.MID:
+ case SqlParser.MIGRATE:
+ case SqlParser.MIN_ROWS:
+ case SqlParser.MODE:
+ case SqlParser.MODIFY:
+ case SqlParser.MUTEX:
+ case SqlParser.MYSQL:
+ case SqlParser.MYSQL_ERRNO:
+ case SqlParser.NAME:
+ case SqlParser.NAMES:
+ case SqlParser.NCHAR:
+ case SqlParser.NEVER:
+ case SqlParser.NEXT:
+ case SqlParser.NO:
+ case SqlParser.NODEGROUP:
+ case SqlParser.NONE:
+ case SqlParser.OFFLINE:
+ case SqlParser.OFFSET:
+ case SqlParser.OJ:
+ case SqlParser.OLD_PASSWORD:
+ case SqlParser.ONE:
+ case SqlParser.ONLINE:
+ case SqlParser.ONLY:
+ case SqlParser.OPEN:
+ case SqlParser.OPTIMIZER_COSTS:
+ case SqlParser.OPTIONS:
+ case SqlParser.OWNER:
+ case SqlParser.PACK_KEYS:
+ case SqlParser.PAGE:
+ case SqlParser.PARSER:
+ case SqlParser.PARTIAL:
+ case SqlParser.PARTITIONING:
+ case SqlParser.PARTITIONS:
+ case SqlParser.PASSWORD:
+ case SqlParser.PHASE:
+ case SqlParser.PLUGIN:
+ case SqlParser.PLUGIN_DIR:
+ case SqlParser.PLUGINS:
+ case SqlParser.PORT:
+ case SqlParser.PRECEDES:
+ case SqlParser.PREPARE:
+ case SqlParser.PRESERVE:
+ case SqlParser.PREV:
+ case SqlParser.PROCESSLIST:
+ case SqlParser.PROFILE:
+ case SqlParser.PROFILES:
+ case SqlParser.PROXY:
+ case SqlParser.QUERY:
+ case SqlParser.QUICK:
+ case SqlParser.REBUILD:
+ case SqlParser.RECOVER:
+ case SqlParser.REDO_BUFFER_SIZE:
+ case SqlParser.REDUNDANT:
+ case SqlParser.RELAY:
+ case SqlParser.RELAY_LOG_FILE:
+ case SqlParser.RELAY_LOG_POS:
+ case SqlParser.RELAYLOG:
+ case SqlParser.REMOVE:
+ case SqlParser.REORGANIZE:
+ case SqlParser.REPAIR:
+ case SqlParser.REPLICATE_DO_DB:
+ case SqlParser.REPLICATE_DO_TABLE:
+ case SqlParser.REPLICATE_IGNORE_DB:
+ case SqlParser.REPLICATE_IGNORE_TABLE:
+ case SqlParser.REPLICATE_REWRITE_DB:
+ case SqlParser.REPLICATE_WILD_DO_TABLE:
+ case SqlParser.REPLICATE_WILD_IGNORE_TABLE:
+ case SqlParser.REPLICATION:
+ case SqlParser.RESET:
+ case SqlParser.RESUME:
+ case SqlParser.RETURNED_SQLSTATE:
+ case SqlParser.RETURNS:
+ case SqlParser.ROLE:
+ case SqlParser.ROLLBACK:
+ case SqlParser.ROLLUP:
+ case SqlParser.ROTATE:
+ case SqlParser.ROW:
+ case SqlParser.ROWS:
+ case SqlParser.ROW_FORMAT:
+ case SqlParser.SAVEPOINT:
+ case SqlParser.SCHEDULE:
+ case SqlParser.SECURITY:
+ case SqlParser.SERVER:
+ case SqlParser.SESSION:
+ case SqlParser.SHARE:
+ case SqlParser.SHARED:
+ case SqlParser.SIGNED:
+ case SqlParser.SIMPLE:
+ case SqlParser.SLAVE:
+ case SqlParser.SLOW:
+ case SqlParser.SNAPSHOT:
+ case SqlParser.SOCKET:
+ case SqlParser.SOME:
+ case SqlParser.SONAME:
+ case SqlParser.SOUNDS:
+ case SqlParser.SOURCE:
+ case SqlParser.SQL_AFTER_GTIDS:
+ case SqlParser.SQL_AFTER_MTS_GAPS:
+ case SqlParser.SQL_BEFORE_GTIDS:
+ case SqlParser.SQL_BUFFER_RESULT:
+ case SqlParser.SQL_CACHE:
+ case SqlParser.SQL_NO_CACHE:
+ case SqlParser.SQL_THREAD:
+ case SqlParser.START:
+ case SqlParser.STARTS:
+ case SqlParser.STATS_AUTO_RECALC:
+ case SqlParser.STATS_PERSISTENT:
+ case SqlParser.STATS_SAMPLE_PAGES:
+ case SqlParser.STATUS:
+ case SqlParser.STOP:
+ case SqlParser.STORAGE:
+ case SqlParser.STRING:
+ case SqlParser.SUBCLASS_ORIGIN:
+ case SqlParser.SUBJECT:
+ case SqlParser.SUBPARTITION:
+ case SqlParser.SUBPARTITIONS:
+ case SqlParser.SUSPEND:
+ case SqlParser.SWAPS:
+ case SqlParser.SWITCHES:
+ case SqlParser.TABLE_NAME:
+ case SqlParser.TABLESPACE:
+ case SqlParser.TEMPORARY:
+ case SqlParser.TEMPTABLE:
+ case SqlParser.THAN:
+ case SqlParser.TRADITIONAL:
+ case SqlParser.TRANSACTION:
+ case SqlParser.TRANSACTIONAL:
+ case SqlParser.TRIGGERS:
+ case SqlParser.TRUNCATE:
+ case SqlParser.UNDEFINED:
+ case SqlParser.UNDOFILE:
+ case SqlParser.UNDO_BUFFER_SIZE:
+ case SqlParser.UNINSTALL:
+ case SqlParser.UNKNOWN:
+ case SqlParser.UNTIL:
+ case SqlParser.UPGRADE:
+ case SqlParser.USER:
+ case SqlParser.USE_FRM:
+ case SqlParser.USER_RESOURCES:
+ case SqlParser.VALIDATION:
+ case SqlParser.VALUE:
+ case SqlParser.VARIABLES:
+ case SqlParser.VIEW:
+ case SqlParser.VISIBLE:
+ case SqlParser.WAIT:
+ case SqlParser.WARNINGS:
+ case SqlParser.WITHOUT:
+ case SqlParser.WORK:
+ case SqlParser.WRAPPER:
+ case SqlParser.X509:
+ case SqlParser.XA:
+ case SqlParser.XML:
+ case SqlParser.INTERNAL:
+ case SqlParser.QUARTER:
+ case SqlParser.MONTH:
+ case SqlParser.DAY:
+ case SqlParser.HOUR:
+ case SqlParser.MINUTE:
+ case SqlParser.WEEK:
+ case SqlParser.SECOND:
+ case SqlParser.MICROSECOND:
+ case SqlParser.TABLES:
+ case SqlParser.ROUTINE:
+ case SqlParser.EXECUTE:
+ case SqlParser.FILE:
+ case SqlParser.PROCESS:
+ case SqlParser.RELOAD:
+ case SqlParser.SHUTDOWN:
+ case SqlParser.SUPER:
+ case SqlParser.PRIVILEGES:
+ case SqlParser.AUDIT_ADMIN:
+ case SqlParser.BACKUP_ADMIN:
+ case SqlParser.BINLOG_ADMIN:
+ case SqlParser.BINLOG_ENCRYPTION_ADMIN:
+ case SqlParser.CLONE_ADMIN:
+ case SqlParser.CONNECTION_ADMIN:
+ case SqlParser.ENCRYPTION_KEY_ADMIN:
+ case SqlParser.FIREWALL_ADMIN:
+ case SqlParser.FIREWALL_USER:
+ case SqlParser.GROUP_REPLICATION_ADMIN:
+ case SqlParser.INNODB_REDO_LOG_ARCHIVE:
+ case SqlParser.NDB_STORED_USER:
+ case SqlParser.PERSIST_RO_VARIABLES_ADMIN:
+ case SqlParser.REPLICATION_APPLIER:
+ case SqlParser.REPLICATION_SLAVE_ADMIN:
+ case SqlParser.RESOURCE_GROUP_ADMIN:
+ case SqlParser.RESOURCE_GROUP_USER:
+ case SqlParser.ROLE_ADMIN:
+ case SqlParser.SESSION_VARIABLES_ADMIN:
+ case SqlParser.SET_USER_ID:
+ case SqlParser.SHOW_ROUTINE:
+ case SqlParser.SYSTEM_VARIABLES_ADMIN:
+ case SqlParser.TABLE_ENCRYPTION_ADMIN:
+ case SqlParser.VERSION_TOKEN_ADMIN:
+ case SqlParser.XA_RECOVER_ADMIN:
+ case SqlParser.ARMSCII8:
+ case SqlParser.ASCII:
+ case SqlParser.BIG5:
+ case SqlParser.CP1250:
+ case SqlParser.CP1251:
+ case SqlParser.CP1256:
+ case SqlParser.CP1257:
+ case SqlParser.CP850:
+ case SqlParser.CP852:
+ case SqlParser.CP866:
+ case SqlParser.CP932:
+ case SqlParser.DEC8:
+ case SqlParser.EUCJPMS:
+ case SqlParser.EUCKR:
+ case SqlParser.GB2312:
+ case SqlParser.GBK:
+ case SqlParser.GEOSTD8:
+ case SqlParser.GREEK:
+ case SqlParser.HEBREW:
+ case SqlParser.HP8:
+ case SqlParser.KEYBCS2:
+ case SqlParser.KOI8R:
+ case SqlParser.KOI8U:
+ case SqlParser.LATIN1:
+ case SqlParser.LATIN2:
+ case SqlParser.LATIN5:
+ case SqlParser.LATIN7:
+ case SqlParser.MACCE:
+ case SqlParser.MACROMAN:
+ case SqlParser.SJIS:
+ case SqlParser.SWE7:
+ case SqlParser.TIS620:
+ case SqlParser.UCS2:
+ case SqlParser.UJIS:
+ case SqlParser.UTF16:
+ case SqlParser.UTF16LE:
+ case SqlParser.UTF32:
+ case SqlParser.UTF8:
+ case SqlParser.UTF8MB3:
+ case SqlParser.UTF8MB4:
+ case SqlParser.ARCHIVE:
+ case SqlParser.BLACKHOLE:
+ case SqlParser.CSV:
+ case SqlParser.FEDERATED:
+ case SqlParser.INNODB:
+ case SqlParser.MEMORY:
+ case SqlParser.MRG_MYISAM:
+ case SqlParser.MYISAM:
+ case SqlParser.NDB:
+ case SqlParser.NDBCLUSTER:
+ case SqlParser.PERFORMANCE_SCHEMA:
+ case SqlParser.TOKUDB:
+ case SqlParser.REPEATABLE:
+ case SqlParser.COMMITTED:
+ case SqlParser.UNCOMMITTED:
+ case SqlParser.SERIALIZABLE:
+ case SqlParser.GEOMETRYCOLLECTION:
+ case SqlParser.LINESTRING:
+ case SqlParser.MULTILINESTRING:
+ case SqlParser.MULTIPOINT:
+ case SqlParser.MULTIPOLYGON:
+ case SqlParser.POINT:
+ case SqlParser.POLYGON:
+ case SqlParser.ABS:
+ case SqlParser.ACOS:
+ case SqlParser.ADDDATE:
+ case SqlParser.ADDTIME:
+ case SqlParser.AES_DECRYPT:
+ case SqlParser.AES_ENCRYPT:
+ case SqlParser.AREA:
+ case SqlParser.ASBINARY:
+ case SqlParser.ASIN:
+ case SqlParser.ASTEXT:
+ case SqlParser.ASWKB:
+ case SqlParser.ASWKT:
+ case SqlParser.ASYMMETRIC_DECRYPT:
+ case SqlParser.ASYMMETRIC_DERIVE:
+ case SqlParser.ASYMMETRIC_ENCRYPT:
+ case SqlParser.ASYMMETRIC_SIGN:
+ case SqlParser.ASYMMETRIC_VERIFY:
+ case SqlParser.ATAN:
+ case SqlParser.ATAN2:
+ case SqlParser.BENCHMARK:
+ case SqlParser.BIN:
+ case SqlParser.BIT_COUNT:
+ case SqlParser.BIT_LENGTH:
+ case SqlParser.BUFFER:
+ case SqlParser.CATALOG_NAME:
+ case SqlParser.CEIL:
+ case SqlParser.CEILING:
+ case SqlParser.CENTROID:
+ case SqlParser.CHARACTER_LENGTH:
+ case SqlParser.CHARSET:
+ case SqlParser.CHAR_LENGTH:
+ case SqlParser.COERCIBILITY:
+ case SqlParser.COLLATION:
+ case SqlParser.COMPRESS:
+ case SqlParser.CONCAT:
+ case SqlParser.CONCAT_WS:
+ case SqlParser.CONNECTION_ID:
+ case SqlParser.CONV:
+ case SqlParser.CONVERT_TZ:
+ case SqlParser.COS:
+ case SqlParser.COT:
+ case SqlParser.CRC32:
+ case SqlParser.CREATE_ASYMMETRIC_PRIV_KEY:
+ case SqlParser.CREATE_ASYMMETRIC_PUB_KEY:
+ case SqlParser.CREATE_DH_PARAMETERS:
+ case SqlParser.CREATE_DIGEST:
+ case SqlParser.CROSSES:
+ case SqlParser.DATEDIFF:
+ case SqlParser.DATE_FORMAT:
+ case SqlParser.DAYNAME:
+ case SqlParser.DAYOFMONTH:
+ case SqlParser.DAYOFWEEK:
+ case SqlParser.DAYOFYEAR:
+ case SqlParser.DECODE:
+ case SqlParser.DEGREES:
+ case SqlParser.DES_DECRYPT:
+ case SqlParser.DES_ENCRYPT:
+ case SqlParser.DIMENSION:
+ case SqlParser.DISJOINT:
+ case SqlParser.ELT:
+ case SqlParser.ENCODE:
+ case SqlParser.ENCRYPT:
+ case SqlParser.ENDPOINT:
+ case SqlParser.ENVELOPE:
+ case SqlParser.EQUALS:
+ case SqlParser.EXP:
+ case SqlParser.EXPORT_SET:
+ case SqlParser.EXTERIORRING:
+ case SqlParser.EXTRACTVALUE:
+ case SqlParser.FIELD:
+ case SqlParser.FIND_IN_SET:
+ case SqlParser.FLOOR:
+ case SqlParser.FORMAT:
+ case SqlParser.FOUND_ROWS:
+ case SqlParser.FROM_BASE64:
+ case SqlParser.FROM_DAYS:
+ case SqlParser.FROM_UNIXTIME:
+ case SqlParser.GEOMCOLLFROMTEXT:
+ case SqlParser.GEOMCOLLFROMWKB:
+ case SqlParser.GEOMETRYCOLLECTIONFROMTEXT:
+ case SqlParser.GEOMETRYCOLLECTIONFROMWKB:
+ case SqlParser.GEOMETRYFROMTEXT:
+ case SqlParser.GEOMETRYFROMWKB:
+ case SqlParser.GEOMETRYN:
+ case SqlParser.GEOMETRYTYPE:
+ case SqlParser.GEOMFROMTEXT:
+ case SqlParser.GEOMFROMWKB:
+ case SqlParser.GET_FORMAT:
+ case SqlParser.GET_LOCK:
+ case SqlParser.GLENGTH:
+ case SqlParser.GREATEST:
+ case SqlParser.GTID_SUBSET:
+ case SqlParser.GTID_SUBTRACT:
+ case SqlParser.HEX:
+ case SqlParser.IFNULL:
+ case SqlParser.INET6_ATON:
+ case SqlParser.INET6_NTOA:
+ case SqlParser.INET_ATON:
+ case SqlParser.INET_NTOA:
+ case SqlParser.INSTR:
+ case SqlParser.INTERIORRINGN:
+ case SqlParser.INTERSECTS:
+ case SqlParser.ISCLOSED:
+ case SqlParser.ISEMPTY:
+ case SqlParser.ISNULL:
+ case SqlParser.ISSIMPLE:
+ case SqlParser.IS_FREE_LOCK:
+ case SqlParser.IS_IPV4:
+ case SqlParser.IS_IPV4_COMPAT:
+ case SqlParser.IS_IPV4_MAPPED:
+ case SqlParser.IS_IPV6:
+ case SqlParser.IS_USED_LOCK:
+ case SqlParser.LAST_INSERT_ID:
+ case SqlParser.LCASE:
+ case SqlParser.LEAST:
+ case SqlParser.LENGTH:
+ case SqlParser.LINEFROMTEXT:
+ case SqlParser.LINEFROMWKB:
+ case SqlParser.LINESTRINGFROMTEXT:
+ case SqlParser.LINESTRINGFROMWKB:
+ case SqlParser.LN:
+ case SqlParser.LOAD_FILE:
+ case SqlParser.LOCATE:
+ case SqlParser.LOG:
+ case SqlParser.LOG10:
+ case SqlParser.LOG2:
+ case SqlParser.LOWER:
+ case SqlParser.LPAD:
+ case SqlParser.LTRIM:
+ case SqlParser.MAKEDATE:
+ case SqlParser.MAKETIME:
+ case SqlParser.MAKE_SET:
+ case SqlParser.MASTER_POS_WAIT:
+ case SqlParser.MBRCONTAINS:
+ case SqlParser.MBRDISJOINT:
+ case SqlParser.MBREQUAL:
+ case SqlParser.MBRINTERSECTS:
+ case SqlParser.MBROVERLAPS:
+ case SqlParser.MBRTOUCHES:
+ case SqlParser.MBRWITHIN:
+ case SqlParser.MD5:
+ case SqlParser.MLINEFROMTEXT:
+ case SqlParser.MLINEFROMWKB:
+ case SqlParser.MONTHNAME:
+ case SqlParser.MPOINTFROMTEXT:
+ case SqlParser.MPOINTFROMWKB:
+ case SqlParser.MPOLYFROMTEXT:
+ case SqlParser.MPOLYFROMWKB:
+ case SqlParser.MULTILINESTRINGFROMTEXT:
+ case SqlParser.MULTILINESTRINGFROMWKB:
+ case SqlParser.MULTIPOINTFROMTEXT:
+ case SqlParser.MULTIPOINTFROMWKB:
+ case SqlParser.MULTIPOLYGONFROMTEXT:
+ case SqlParser.MULTIPOLYGONFROMWKB:
+ case SqlParser.NAME_CONST:
+ case SqlParser.NULLIF:
+ case SqlParser.NUMGEOMETRIES:
+ case SqlParser.NUMINTERIORRINGS:
+ case SqlParser.NUMPOINTS:
+ case SqlParser.OCT:
+ case SqlParser.OCTET_LENGTH:
+ case SqlParser.ORD:
+ case SqlParser.OVERLAPS:
+ case SqlParser.PERIOD_ADD:
+ case SqlParser.PERIOD_DIFF:
+ case SqlParser.PI:
+ case SqlParser.POINTFROMTEXT:
+ case SqlParser.POINTFROMWKB:
+ case SqlParser.POINTN:
+ case SqlParser.POLYFROMTEXT:
+ case SqlParser.POLYFROMWKB:
+ case SqlParser.POLYGONFROMTEXT:
+ case SqlParser.POLYGONFROMWKB:
+ case SqlParser.POW:
+ case SqlParser.POWER:
+ case SqlParser.QUOTE:
+ case SqlParser.RADIANS:
+ case SqlParser.RAND:
+ case SqlParser.RANDOM_BYTES:
+ case SqlParser.RELEASE_LOCK:
+ case SqlParser.REVERSE:
+ case SqlParser.ROUND:
+ case SqlParser.ROW_COUNT:
+ case SqlParser.RPAD:
+ case SqlParser.RTRIM:
+ case SqlParser.SEC_TO_TIME:
+ case SqlParser.SESSION_USER:
+ case SqlParser.SHA:
+ case SqlParser.SHA1:
+ case SqlParser.SHA2:
+ case SqlParser.SCHEMA_NAME:
+ case SqlParser.SIGN:
+ case SqlParser.SIN:
+ case SqlParser.SLEEP:
+ case SqlParser.SOUNDEX:
+ case SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS:
+ case SqlParser.SQRT:
+ case SqlParser.SRID:
+ case SqlParser.STARTPOINT:
+ case SqlParser.STRCMP:
+ case SqlParser.STR_TO_DATE:
+ case SqlParser.ST_AREA:
+ case SqlParser.ST_ASBINARY:
+ case SqlParser.ST_ASTEXT:
+ case SqlParser.ST_ASWKB:
+ case SqlParser.ST_ASWKT:
+ case SqlParser.ST_BUFFER:
+ case SqlParser.ST_CENTROID:
+ case SqlParser.ST_CONTAINS:
+ case SqlParser.ST_CROSSES:
+ case SqlParser.ST_DIFFERENCE:
+ case SqlParser.ST_DIMENSION:
+ case SqlParser.ST_DISJOINT:
+ case SqlParser.ST_DISTANCE:
+ case SqlParser.ST_ENDPOINT:
+ case SqlParser.ST_ENVELOPE:
+ case SqlParser.ST_EQUALS:
+ case SqlParser.ST_EXTERIORRING:
+ case SqlParser.ST_GEOMCOLLFROMTEXT:
+ case SqlParser.ST_GEOMCOLLFROMTXT:
+ case SqlParser.ST_GEOMCOLLFROMWKB:
+ case SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT:
+ case SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB:
+ case SqlParser.ST_GEOMETRYFROMTEXT:
+ case SqlParser.ST_GEOMETRYFROMWKB:
+ case SqlParser.ST_GEOMETRYN:
+ case SqlParser.ST_GEOMETRYTYPE:
+ case SqlParser.ST_GEOMFROMTEXT:
+ case SqlParser.ST_GEOMFROMWKB:
+ case SqlParser.ST_INTERIORRINGN:
+ case SqlParser.ST_INTERSECTION:
+ case SqlParser.ST_INTERSECTS:
+ case SqlParser.ST_ISCLOSED:
+ case SqlParser.ST_ISEMPTY:
+ case SqlParser.ST_ISSIMPLE:
+ case SqlParser.ST_LINEFROMTEXT:
+ case SqlParser.ST_LINEFROMWKB:
+ case SqlParser.ST_LINESTRINGFROMTEXT:
+ case SqlParser.ST_LINESTRINGFROMWKB:
+ case SqlParser.ST_NUMGEOMETRIES:
+ case SqlParser.ST_NUMINTERIORRING:
+ case SqlParser.ST_NUMINTERIORRINGS:
+ case SqlParser.ST_NUMPOINTS:
+ case SqlParser.ST_OVERLAPS:
+ case SqlParser.ST_POINTFROMTEXT:
+ case SqlParser.ST_POINTFROMWKB:
+ case SqlParser.ST_POINTN:
+ case SqlParser.ST_POLYFROMTEXT:
+ case SqlParser.ST_POLYFROMWKB:
+ case SqlParser.ST_POLYGONFROMTEXT:
+ case SqlParser.ST_POLYGONFROMWKB:
+ case SqlParser.ST_SRID:
+ case SqlParser.ST_STARTPOINT:
+ case SqlParser.ST_SYMDIFFERENCE:
+ case SqlParser.ST_TOUCHES:
+ case SqlParser.ST_UNION:
+ case SqlParser.ST_WITHIN:
+ case SqlParser.ST_X:
+ case SqlParser.ST_Y:
+ case SqlParser.SUBDATE:
+ case SqlParser.SUBSTRING_INDEX:
+ case SqlParser.SUBTIME:
+ case SqlParser.SYSTEM_USER:
+ case SqlParser.TAN:
+ case SqlParser.TIMEDIFF:
+ case SqlParser.TIMESTAMPADD:
+ case SqlParser.TIMESTAMPDIFF:
+ case SqlParser.TIME_FORMAT:
+ case SqlParser.TIME_TO_SEC:
+ case SqlParser.TOUCHES:
+ case SqlParser.TO_BASE64:
+ case SqlParser.TO_DAYS:
+ case SqlParser.TO_SECONDS:
+ case SqlParser.UCASE:
+ case SqlParser.UNCOMPRESS:
+ case SqlParser.UNCOMPRESSED_LENGTH:
+ case SqlParser.UNHEX:
+ case SqlParser.UNIX_TIMESTAMP:
+ case SqlParser.UPDATEXML:
+ case SqlParser.UPPER:
+ case SqlParser.UUID:
+ case SqlParser.UUID_SHORT:
+ case SqlParser.VALIDATE_PASSWORD_STRENGTH:
+ case SqlParser.VERSION:
+ case SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS:
+ case SqlParser.WEEKDAY:
+ case SqlParser.WEEKOFYEAR:
+ case SqlParser.WEIGHT_STRING:
+ case SqlParser.WITHIN:
+ case SqlParser.YEARWEEK:
+ case SqlParser.Y_FUNCTION:
+ case SqlParser.X_FUNCTION:
+ case SqlParser.CHARSET_REVERSE_QOUTE_STRING:
+ case SqlParser.STRING_LITERAL:
+ case SqlParser.ID:
+ case SqlParser.REVERSE_QUOTE_ID:
+ this.state = 5167;
+ this.uidList();
+ break;
+ case SqlParser.ALL:
+ this.state = 5168;
+ this.match(SqlParser.ALL);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 5171;
+ this.match(SqlParser.RR_BRACKET);
+ }
+
+ this.state = 5174;
+ this.match(SqlParser.IN);
+ this.state = 5175;
+ localctx.schema = this.uid();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function FlushStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_flushStatement;
+ this.flushFormat = null; // Token
+ return this;
+}
+
+FlushStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+FlushStatementContext.prototype.constructor = FlushStatementContext;
+
+FlushStatementContext.prototype.FLUSH = function() {
+ return this.getToken(SqlParser.FLUSH, 0);
+};
+
+FlushStatementContext.prototype.flushOption = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(FlushOptionContext);
+ } else {
+ return this.getTypedRuleContext(FlushOptionContext,i);
+ }
+};
+
+FlushStatementContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+FlushStatementContext.prototype.NO_WRITE_TO_BINLOG = function() {
+ return this.getToken(SqlParser.NO_WRITE_TO_BINLOG, 0);
+};
+
+FlushStatementContext.prototype.LOCAL = function() {
+ return this.getToken(SqlParser.LOCAL, 0);
+};
+
+FlushStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterFlushStatement(this);
+ }
+};
+
+FlushStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitFlushStatement(this);
+ }
+};
+
+FlushStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitFlushStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.FlushStatementContext = FlushStatementContext;
+
+SqlParser.prototype.flushStatement = function() {
+
+ var localctx = new FlushStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 460, SqlParser.RULE_flushStatement);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5177;
+ this.match(SqlParser.FLUSH);
+ this.state = 5179;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.NO_WRITE_TO_BINLOG || _la===SqlParser.LOCAL) {
+ this.state = 5178;
+ localctx.flushFormat = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.NO_WRITE_TO_BINLOG || _la===SqlParser.LOCAL)) {
+ localctx.flushFormat = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 5181;
+ this.flushOption();
+ this.state = 5186;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 5182;
+ this.match(SqlParser.COMMA);
+ this.state = 5183;
+ this.flushOption();
+ this.state = 5188;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function KillStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_killStatement;
+ this.connectionFormat = null; // Token
+ return this;
+}
+
+KillStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+KillStatementContext.prototype.constructor = KillStatementContext;
+
+KillStatementContext.prototype.KILL = function() {
+ return this.getToken(SqlParser.KILL, 0);
+};
+
+KillStatementContext.prototype.decimalLiteral = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(DecimalLiteralContext);
+ } else {
+ return this.getTypedRuleContext(DecimalLiteralContext,i);
+ }
+};
+
+KillStatementContext.prototype.CONNECTION = function() {
+ return this.getToken(SqlParser.CONNECTION, 0);
+};
+
+KillStatementContext.prototype.QUERY = function() {
+ return this.getToken(SqlParser.QUERY, 0);
+};
+
+KillStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterKillStatement(this);
+ }
+};
+
+KillStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitKillStatement(this);
+ }
+};
+
+KillStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitKillStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.KillStatementContext = KillStatementContext;
+
+SqlParser.prototype.killStatement = function() {
+
+ var localctx = new KillStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 462, SqlParser.RULE_killStatement);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5189;
+ this.match(SqlParser.KILL);
+ this.state = 5191;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.CONNECTION || _la===SqlParser.QUERY) {
+ this.state = 5190;
+ localctx.connectionFormat = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.CONNECTION || _la===SqlParser.QUERY)) {
+ localctx.connectionFormat = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 5194;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 5193;
+ this.decimalLiteral();
+ this.state = 5196;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(((((_la - 1025)) & ~0x1f) == 0 && ((1 << (_la - 1025)) & ((1 << (SqlParser.ZERO_DECIMAL - 1025)) | (1 << (SqlParser.ONE_DECIMAL - 1025)) | (1 << (SqlParser.TWO_DECIMAL - 1025)) | (1 << (SqlParser.DECIMAL_LITERAL - 1025)))) !== 0));
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function LoadIndexIntoCacheContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_loadIndexIntoCache;
+ return this;
+}
+
+LoadIndexIntoCacheContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+LoadIndexIntoCacheContext.prototype.constructor = LoadIndexIntoCacheContext;
+
+LoadIndexIntoCacheContext.prototype.LOAD = function() {
+ return this.getToken(SqlParser.LOAD, 0);
+};
+
+LoadIndexIntoCacheContext.prototype.INDEX = function() {
+ return this.getToken(SqlParser.INDEX, 0);
+};
+
+LoadIndexIntoCacheContext.prototype.INTO = function() {
+ return this.getToken(SqlParser.INTO, 0);
+};
+
+LoadIndexIntoCacheContext.prototype.CACHE = function() {
+ return this.getToken(SqlParser.CACHE, 0);
+};
+
+LoadIndexIntoCacheContext.prototype.loadedTableIndexes = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(LoadedTableIndexesContext);
+ } else {
+ return this.getTypedRuleContext(LoadedTableIndexesContext,i);
+ }
+};
+
+LoadIndexIntoCacheContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+LoadIndexIntoCacheContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterLoadIndexIntoCache(this);
+ }
+};
+
+LoadIndexIntoCacheContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitLoadIndexIntoCache(this);
+ }
+};
+
+LoadIndexIntoCacheContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitLoadIndexIntoCache(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.LoadIndexIntoCacheContext = LoadIndexIntoCacheContext;
+
+SqlParser.prototype.loadIndexIntoCache = function() {
+
+ var localctx = new LoadIndexIntoCacheContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 464, SqlParser.RULE_loadIndexIntoCache);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5198;
+ this.match(SqlParser.LOAD);
+ this.state = 5199;
+ this.match(SqlParser.INDEX);
+ this.state = 5200;
+ this.match(SqlParser.INTO);
+ this.state = 5201;
+ this.match(SqlParser.CACHE);
+ this.state = 5202;
+ this.loadedTableIndexes();
+ this.state = 5207;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 5203;
+ this.match(SqlParser.COMMA);
+ this.state = 5204;
+ this.loadedTableIndexes();
+ this.state = 5209;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function ResetStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_resetStatement;
+ return this;
+}
+
+ResetStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+ResetStatementContext.prototype.constructor = ResetStatementContext;
+
+ResetStatementContext.prototype.RESET = function() {
+ return this.getToken(SqlParser.RESET, 0);
+};
+
+ResetStatementContext.prototype.QUERY = function() {
+ return this.getToken(SqlParser.QUERY, 0);
+};
+
+ResetStatementContext.prototype.CACHE = function() {
+ return this.getToken(SqlParser.CACHE, 0);
+};
+
+ResetStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterResetStatement(this);
+ }
+};
+
+ResetStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitResetStatement(this);
+ }
+};
+
+ResetStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitResetStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.ResetStatementContext = ResetStatementContext;
+
+SqlParser.prototype.resetStatement = function() {
+
+ var localctx = new ResetStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 466, SqlParser.RULE_resetStatement);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5210;
+ this.match(SqlParser.RESET);
+ this.state = 5211;
+ this.match(SqlParser.QUERY);
+ this.state = 5212;
+ this.match(SqlParser.CACHE);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function ShutdownStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_shutdownStatement;
+ return this;
+}
+
+ShutdownStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+ShutdownStatementContext.prototype.constructor = ShutdownStatementContext;
+
+ShutdownStatementContext.prototype.SHUTDOWN = function() {
+ return this.getToken(SqlParser.SHUTDOWN, 0);
+};
+
+ShutdownStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterShutdownStatement(this);
+ }
+};
+
+ShutdownStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitShutdownStatement(this);
+ }
+};
+
+ShutdownStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitShutdownStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.ShutdownStatementContext = ShutdownStatementContext;
+
+SqlParser.prototype.shutdownStatement = function() {
+
+ var localctx = new ShutdownStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 468, SqlParser.RULE_shutdownStatement);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5214;
+ this.match(SqlParser.SHUTDOWN);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function TableIndexesContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_tableIndexes;
+ this.indexFormat = null; // Token
+ return this;
+}
+
+TableIndexesContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+TableIndexesContext.prototype.constructor = TableIndexesContext;
+
+TableIndexesContext.prototype.tableName = function() {
+ return this.getTypedRuleContext(TableNameContext,0);
+};
+
+TableIndexesContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+TableIndexesContext.prototype.uidList = function() {
+ return this.getTypedRuleContext(UidListContext,0);
+};
+
+TableIndexesContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+TableIndexesContext.prototype.INDEX = function() {
+ return this.getToken(SqlParser.INDEX, 0);
+};
+
+TableIndexesContext.prototype.KEY = function() {
+ return this.getToken(SqlParser.KEY, 0);
+};
+
+TableIndexesContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterTableIndexes(this);
+ }
+};
+
+TableIndexesContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitTableIndexes(this);
+ }
+};
+
+TableIndexesContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitTableIndexes(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.TableIndexesContext = TableIndexesContext;
+
+SqlParser.prototype.tableIndexes = function() {
+
+ var localctx = new TableIndexesContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 470, SqlParser.RULE_tableIndexes);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5216;
+ this.tableName();
+ this.state = 5224;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.INDEX || _la===SqlParser.KEY || _la===SqlParser.LR_BRACKET) {
+ this.state = 5218;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.INDEX || _la===SqlParser.KEY) {
+ this.state = 5217;
+ localctx.indexFormat = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.INDEX || _la===SqlParser.KEY)) {
+ localctx.indexFormat = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 5220;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 5221;
+ this.uidList();
+ this.state = 5222;
+ this.match(SqlParser.RR_BRACKET);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function FlushOptionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_flushOption;
+ return this;
+}
+
+FlushOptionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+FlushOptionContext.prototype.constructor = FlushOptionContext;
+
+
+
+FlushOptionContext.prototype.copyFrom = function(ctx) {
+ antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx);
+};
+
+
+function TableFlushOptionContext(parser, ctx) {
+ FlushOptionContext.call(this, parser);
+ FlushOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+TableFlushOptionContext.prototype = Object.create(FlushOptionContext.prototype);
+TableFlushOptionContext.prototype.constructor = TableFlushOptionContext;
+
+SqlParser.TableFlushOptionContext = TableFlushOptionContext;
+
+TableFlushOptionContext.prototype.TABLES = function() {
+ return this.getToken(SqlParser.TABLES, 0);
+};
+
+TableFlushOptionContext.prototype.tables = function() {
+ return this.getTypedRuleContext(TablesContext,0);
+};
+
+TableFlushOptionContext.prototype.flushTableOption = function() {
+ return this.getTypedRuleContext(FlushTableOptionContext,0);
+};
+TableFlushOptionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterTableFlushOption(this);
+ }
+};
+
+TableFlushOptionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitTableFlushOption(this);
+ }
+};
+
+TableFlushOptionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitTableFlushOption(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function ChannelFlushOptionContext(parser, ctx) {
+ FlushOptionContext.call(this, parser);
+ FlushOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+ChannelFlushOptionContext.prototype = Object.create(FlushOptionContext.prototype);
+ChannelFlushOptionContext.prototype.constructor = ChannelFlushOptionContext;
+
+SqlParser.ChannelFlushOptionContext = ChannelFlushOptionContext;
+
+ChannelFlushOptionContext.prototype.RELAY = function() {
+ return this.getToken(SqlParser.RELAY, 0);
+};
+
+ChannelFlushOptionContext.prototype.LOGS = function() {
+ return this.getToken(SqlParser.LOGS, 0);
+};
+
+ChannelFlushOptionContext.prototype.channelOption = function() {
+ return this.getTypedRuleContext(ChannelOptionContext,0);
+};
+ChannelFlushOptionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterChannelFlushOption(this);
+ }
+};
+
+ChannelFlushOptionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitChannelFlushOption(this);
+ }
+};
+
+ChannelFlushOptionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitChannelFlushOption(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function SimpleFlushOptionContext(parser, ctx) {
+ FlushOptionContext.call(this, parser);
+ FlushOptionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+SimpleFlushOptionContext.prototype = Object.create(FlushOptionContext.prototype);
+SimpleFlushOptionContext.prototype.constructor = SimpleFlushOptionContext;
+
+SqlParser.SimpleFlushOptionContext = SimpleFlushOptionContext;
+
+SimpleFlushOptionContext.prototype.DES_KEY_FILE = function() {
+ return this.getToken(SqlParser.DES_KEY_FILE, 0);
+};
+
+SimpleFlushOptionContext.prototype.HOSTS = function() {
+ return this.getToken(SqlParser.HOSTS, 0);
+};
+
+SimpleFlushOptionContext.prototype.LOGS = function() {
+ return this.getToken(SqlParser.LOGS, 0);
+};
+
+SimpleFlushOptionContext.prototype.OPTIMIZER_COSTS = function() {
+ return this.getToken(SqlParser.OPTIMIZER_COSTS, 0);
+};
+
+SimpleFlushOptionContext.prototype.PRIVILEGES = function() {
+ return this.getToken(SqlParser.PRIVILEGES, 0);
+};
+
+SimpleFlushOptionContext.prototype.QUERY = function() {
+ return this.getToken(SqlParser.QUERY, 0);
+};
+
+SimpleFlushOptionContext.prototype.CACHE = function() {
+ return this.getToken(SqlParser.CACHE, 0);
+};
+
+SimpleFlushOptionContext.prototype.STATUS = function() {
+ return this.getToken(SqlParser.STATUS, 0);
+};
+
+SimpleFlushOptionContext.prototype.USER_RESOURCES = function() {
+ return this.getToken(SqlParser.USER_RESOURCES, 0);
+};
+
+SimpleFlushOptionContext.prototype.TABLES = function() {
+ return this.getToken(SqlParser.TABLES, 0);
+};
+
+SimpleFlushOptionContext.prototype.WITH = function() {
+ return this.getToken(SqlParser.WITH, 0);
+};
+
+SimpleFlushOptionContext.prototype.READ = function() {
+ return this.getToken(SqlParser.READ, 0);
+};
+
+SimpleFlushOptionContext.prototype.LOCK = function() {
+ return this.getToken(SqlParser.LOCK, 0);
+};
+
+SimpleFlushOptionContext.prototype.BINARY = function() {
+ return this.getToken(SqlParser.BINARY, 0);
+};
+
+SimpleFlushOptionContext.prototype.ENGINE = function() {
+ return this.getToken(SqlParser.ENGINE, 0);
+};
+
+SimpleFlushOptionContext.prototype.ERROR = function() {
+ return this.getToken(SqlParser.ERROR, 0);
+};
+
+SimpleFlushOptionContext.prototype.GENERAL = function() {
+ return this.getToken(SqlParser.GENERAL, 0);
+};
+
+SimpleFlushOptionContext.prototype.RELAY = function() {
+ return this.getToken(SqlParser.RELAY, 0);
+};
+
+SimpleFlushOptionContext.prototype.SLOW = function() {
+ return this.getToken(SqlParser.SLOW, 0);
+};
+SimpleFlushOptionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSimpleFlushOption(this);
+ }
+};
+
+SimpleFlushOptionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSimpleFlushOption(this);
+ }
+};
+
+SimpleFlushOptionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSimpleFlushOption(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+SqlParser.FlushOptionContext = FlushOptionContext;
+
+SqlParser.prototype.flushOption = function() {
+
+ var localctx = new FlushOptionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 472, SqlParser.RULE_flushOption);
+ var _la = 0; // Token type
+ try {
+ this.state = 5256;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,755,this._ctx);
+ switch(la_) {
+ case 1:
+ localctx = new SimpleFlushOptionContext(this, localctx);
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5244;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.DES_KEY_FILE:
+ this.state = 5226;
+ this.match(SqlParser.DES_KEY_FILE);
+ break;
+ case SqlParser.HOSTS:
+ this.state = 5227;
+ this.match(SqlParser.HOSTS);
+ break;
+ case SqlParser.BINARY:
+ case SqlParser.ENGINE:
+ case SqlParser.ERROR:
+ case SqlParser.GENERAL:
+ case SqlParser.LOGS:
+ case SqlParser.RELAY:
+ case SqlParser.SLOW:
+ this.state = 5229;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.BINARY || ((((_la - 342)) & ~0x1f) == 0 && ((1 << (_la - 342)) & ((1 << (SqlParser.ENGINE - 342)) | (1 << (SqlParser.ERROR - 342)) | (1 << (SqlParser.GENERAL - 342)))) !== 0) || _la===SqlParser.RELAY || _la===SqlParser.SLOW) {
+ this.state = 5228;
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.BINARY || ((((_la - 342)) & ~0x1f) == 0 && ((1 << (_la - 342)) & ((1 << (SqlParser.ENGINE - 342)) | (1 << (SqlParser.ERROR - 342)) | (1 << (SqlParser.GENERAL - 342)))) !== 0) || _la===SqlParser.RELAY || _la===SqlParser.SLOW)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 5231;
+ this.match(SqlParser.LOGS);
+ break;
+ case SqlParser.OPTIMIZER_COSTS:
+ this.state = 5232;
+ this.match(SqlParser.OPTIMIZER_COSTS);
+ break;
+ case SqlParser.PRIVILEGES:
+ this.state = 5233;
+ this.match(SqlParser.PRIVILEGES);
+ break;
+ case SqlParser.QUERY:
+ this.state = 5234;
+ this.match(SqlParser.QUERY);
+ this.state = 5235;
+ this.match(SqlParser.CACHE);
+ break;
+ case SqlParser.STATUS:
+ this.state = 5236;
+ this.match(SqlParser.STATUS);
+ break;
+ case SqlParser.USER_RESOURCES:
+ this.state = 5237;
+ this.match(SqlParser.USER_RESOURCES);
+ break;
+ case SqlParser.TABLES:
+ this.state = 5238;
+ this.match(SqlParser.TABLES);
+ this.state = 5242;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.WITH) {
+ this.state = 5239;
+ this.match(SqlParser.WITH);
+ this.state = 5240;
+ this.match(SqlParser.READ);
+ this.state = 5241;
+ this.match(SqlParser.LOCK);
+ }
+
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ break;
+
+ case 2:
+ localctx = new ChannelFlushOptionContext(this, localctx);
+ this.enterOuterAlt(localctx, 2);
+ this.state = 5246;
+ this.match(SqlParser.RELAY);
+ this.state = 5247;
+ this.match(SqlParser.LOGS);
+ this.state = 5249;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.FOR) {
+ this.state = 5248;
+ this.channelOption();
+ }
+
+ break;
+
+ case 3:
+ localctx = new TableFlushOptionContext(this, localctx);
+ this.enterOuterAlt(localctx, 3);
+ this.state = 5251;
+ this.match(SqlParser.TABLES);
+ this.state = 5252;
+ this.tables();
+ this.state = 5254;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.FOR || _la===SqlParser.WITH) {
+ this.state = 5253;
+ this.flushTableOption();
+ }
+
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function FlushTableOptionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_flushTableOption;
+ return this;
+}
+
+FlushTableOptionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+FlushTableOptionContext.prototype.constructor = FlushTableOptionContext;
+
+FlushTableOptionContext.prototype.WITH = function() {
+ return this.getToken(SqlParser.WITH, 0);
+};
+
+FlushTableOptionContext.prototype.READ = function() {
+ return this.getToken(SqlParser.READ, 0);
+};
+
+FlushTableOptionContext.prototype.LOCK = function() {
+ return this.getToken(SqlParser.LOCK, 0);
+};
+
+FlushTableOptionContext.prototype.FOR = function() {
+ return this.getToken(SqlParser.FOR, 0);
+};
+
+FlushTableOptionContext.prototype.EXPORT = function() {
+ return this.getToken(SqlParser.EXPORT, 0);
+};
+
+FlushTableOptionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterFlushTableOption(this);
+ }
+};
+
+FlushTableOptionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitFlushTableOption(this);
+ }
+};
+
+FlushTableOptionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitFlushTableOption(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.FlushTableOptionContext = FlushTableOptionContext;
+
+SqlParser.prototype.flushTableOption = function() {
+
+ var localctx = new FlushTableOptionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 474, SqlParser.RULE_flushTableOption);
+ try {
+ this.state = 5263;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.WITH:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5258;
+ this.match(SqlParser.WITH);
+ this.state = 5259;
+ this.match(SqlParser.READ);
+ this.state = 5260;
+ this.match(SqlParser.LOCK);
+ break;
+ case SqlParser.FOR:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 5261;
+ this.match(SqlParser.FOR);
+ this.state = 5262;
+ this.match(SqlParser.EXPORT);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function LoadedTableIndexesContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_loadedTableIndexes;
+ this.partitionList = null; // UidListContext
+ this.indexFormat = null; // Token
+ this.indexList = null; // UidListContext
+ return this;
+}
+
+LoadedTableIndexesContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+LoadedTableIndexesContext.prototype.constructor = LoadedTableIndexesContext;
+
+LoadedTableIndexesContext.prototype.tableName = function() {
+ return this.getTypedRuleContext(TableNameContext,0);
+};
+
+LoadedTableIndexesContext.prototype.PARTITION = function() {
+ return this.getToken(SqlParser.PARTITION, 0);
+};
+
+LoadedTableIndexesContext.prototype.LR_BRACKET = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.LR_BRACKET);
+ } else {
+ return this.getToken(SqlParser.LR_BRACKET, i);
+ }
+};
+
+
+LoadedTableIndexesContext.prototype.RR_BRACKET = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.RR_BRACKET);
+ } else {
+ return this.getToken(SqlParser.RR_BRACKET, i);
+ }
+};
+
+
+LoadedTableIndexesContext.prototype.IGNORE = function() {
+ return this.getToken(SqlParser.IGNORE, 0);
+};
+
+LoadedTableIndexesContext.prototype.LEAVES = function() {
+ return this.getToken(SqlParser.LEAVES, 0);
+};
+
+LoadedTableIndexesContext.prototype.uidList = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UidListContext);
+ } else {
+ return this.getTypedRuleContext(UidListContext,i);
+ }
+};
+
+LoadedTableIndexesContext.prototype.ALL = function() {
+ return this.getToken(SqlParser.ALL, 0);
+};
+
+LoadedTableIndexesContext.prototype.INDEX = function() {
+ return this.getToken(SqlParser.INDEX, 0);
+};
+
+LoadedTableIndexesContext.prototype.KEY = function() {
+ return this.getToken(SqlParser.KEY, 0);
+};
+
+LoadedTableIndexesContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterLoadedTableIndexes(this);
+ }
+};
+
+LoadedTableIndexesContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitLoadedTableIndexes(this);
+ }
+};
+
+LoadedTableIndexesContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitLoadedTableIndexes(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.LoadedTableIndexesContext = LoadedTableIndexesContext;
+
+SqlParser.prototype.loadedTableIndexes = function() {
+
+ var localctx = new LoadedTableIndexesContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 476, SqlParser.RULE_loadedTableIndexes);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5265;
+ this.tableName();
+ this.state = 5273;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.PARTITION) {
+ this.state = 5266;
+ this.match(SqlParser.PARTITION);
+ this.state = 5267;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 5270;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.CURRENT:
+ case SqlParser.DATABASE:
+ case SqlParser.DIAGNOSTICS:
+ case SqlParser.LEFT:
+ case SqlParser.NUMBER:
+ case SqlParser.RIGHT:
+ case SqlParser.STACKED:
+ case SqlParser.DATE:
+ case SqlParser.TIME:
+ case SqlParser.TIMESTAMP:
+ case SqlParser.DATETIME:
+ case SqlParser.YEAR:
+ case SqlParser.TEXT:
+ case SqlParser.ENUM:
+ case SqlParser.SERIAL:
+ case SqlParser.JSON_VALID:
+ case SqlParser.JSON_SCHEMA_VALID:
+ case SqlParser.COUNT:
+ case SqlParser.POSITION:
+ case SqlParser.ACCOUNT:
+ case SqlParser.ACTION:
+ case SqlParser.AFTER:
+ case SqlParser.AGGREGATE:
+ case SqlParser.ALGORITHM:
+ case SqlParser.ANY:
+ case SqlParser.AT:
+ case SqlParser.AUTHORS:
+ case SqlParser.AUTOCOMMIT:
+ case SqlParser.AUTOEXTEND_SIZE:
+ case SqlParser.AUTO_INCREMENT:
+ case SqlParser.AVG_ROW_LENGTH:
+ case SqlParser.BEGIN:
+ case SqlParser.BINLOG:
+ case SqlParser.BIT:
+ case SqlParser.BLOCK:
+ case SqlParser.BOOL:
+ case SqlParser.BOOLEAN:
+ case SqlParser.BTREE:
+ case SqlParser.CACHE:
+ case SqlParser.CASCADED:
+ case SqlParser.CHAIN:
+ case SqlParser.CHANGED:
+ case SqlParser.CHANNEL:
+ case SqlParser.CHECKSUM:
+ case SqlParser.PAGE_CHECKSUM:
+ case SqlParser.CIPHER:
+ case SqlParser.CLASS_ORIGIN:
+ case SqlParser.CLIENT:
+ case SqlParser.CLOSE:
+ case SqlParser.COALESCE:
+ case SqlParser.CODE:
+ case SqlParser.COLUMNS:
+ case SqlParser.COLUMN_FORMAT:
+ case SqlParser.COLUMN_NAME:
+ case SqlParser.COMMENT:
+ case SqlParser.COMMIT:
+ case SqlParser.COMPACT:
+ case SqlParser.COMPLETION:
+ case SqlParser.COMPRESSED:
+ case SqlParser.COMPRESSION:
+ case SqlParser.CONCURRENT:
+ case SqlParser.CONNECTION:
+ case SqlParser.CONSISTENT:
+ case SqlParser.CONSTRAINT_CATALOG:
+ case SqlParser.CONSTRAINT_SCHEMA:
+ case SqlParser.CONSTRAINT_NAME:
+ case SqlParser.CONTAINS:
+ case SqlParser.CONTEXT:
+ case SqlParser.CONTRIBUTORS:
+ case SqlParser.COPY:
+ case SqlParser.CPU:
+ case SqlParser.CURSOR_NAME:
+ case SqlParser.DATA:
+ case SqlParser.DATAFILE:
+ case SqlParser.DEALLOCATE:
+ case SqlParser.DEFAULT_AUTH:
+ case SqlParser.DEFINER:
+ case SqlParser.DELAY_KEY_WRITE:
+ case SqlParser.DES_KEY_FILE:
+ case SqlParser.DIRECTORY:
+ case SqlParser.DISABLE:
+ case SqlParser.DISCARD:
+ case SqlParser.DISK:
+ case SqlParser.DO:
+ case SqlParser.DUMPFILE:
+ case SqlParser.DUPLICATE:
+ case SqlParser.DYNAMIC:
+ case SqlParser.ENABLE:
+ case SqlParser.ENCRYPTION:
+ case SqlParser.END:
+ case SqlParser.ENDS:
+ case SqlParser.ENGINE:
+ case SqlParser.ENGINES:
+ case SqlParser.ERROR:
+ case SqlParser.ERRORS:
+ case SqlParser.ESCAPE:
+ case SqlParser.EVEN:
+ case SqlParser.EVENT:
+ case SqlParser.EVENTS:
+ case SqlParser.EVERY:
+ case SqlParser.EXCHANGE:
+ case SqlParser.EXCLUSIVE:
+ case SqlParser.EXPIRE:
+ case SqlParser.EXPORT:
+ case SqlParser.EXTENDED:
+ case SqlParser.EXTENT_SIZE:
+ case SqlParser.FAST:
+ case SqlParser.FAULTS:
+ case SqlParser.FIELDS:
+ case SqlParser.FILE_BLOCK_SIZE:
+ case SqlParser.FILTER:
+ case SqlParser.FIRST:
+ case SqlParser.FIXED:
+ case SqlParser.FLUSH:
+ case SqlParser.FOLLOWS:
+ case SqlParser.FOUND:
+ case SqlParser.FULL:
+ case SqlParser.FUNCTION:
+ case SqlParser.GENERAL:
+ case SqlParser.GLOBAL:
+ case SqlParser.GRANTS:
+ case SqlParser.GROUP_REPLICATION:
+ case SqlParser.HANDLER:
+ case SqlParser.HASH:
+ case SqlParser.HELP:
+ case SqlParser.HOST:
+ case SqlParser.HOSTS:
+ case SqlParser.IDENTIFIED:
+ case SqlParser.IGNORE_SERVER_IDS:
+ case SqlParser.IMPORT:
+ case SqlParser.INDEXES:
+ case SqlParser.INITIAL_SIZE:
+ case SqlParser.INPLACE:
+ case SqlParser.INSERT_METHOD:
+ case SqlParser.INSTALL:
+ case SqlParser.INSTANCE:
+ case SqlParser.INVISIBLE:
+ case SqlParser.INVOKER:
+ case SqlParser.IO:
+ case SqlParser.IO_THREAD:
+ case SqlParser.IPC:
+ case SqlParser.ISOLATION:
+ case SqlParser.ISSUER:
+ case SqlParser.JSON:
+ case SqlParser.KEY_BLOCK_SIZE:
+ case SqlParser.LANGUAGE:
+ case SqlParser.LAST:
+ case SqlParser.LEAVES:
+ case SqlParser.LESS:
+ case SqlParser.LEVEL:
+ case SqlParser.LIST:
+ case SqlParser.LOCAL:
+ case SqlParser.LOGFILE:
+ case SqlParser.LOGS:
+ case SqlParser.MASTER:
+ case SqlParser.MASTER_AUTO_POSITION:
+ case SqlParser.MASTER_CONNECT_RETRY:
+ case SqlParser.MASTER_DELAY:
+ case SqlParser.MASTER_HEARTBEAT_PERIOD:
+ case SqlParser.MASTER_HOST:
+ case SqlParser.MASTER_LOG_FILE:
+ case SqlParser.MASTER_LOG_POS:
+ case SqlParser.MASTER_PASSWORD:
+ case SqlParser.MASTER_PORT:
+ case SqlParser.MASTER_RETRY_COUNT:
+ case SqlParser.MASTER_SSL:
+ case SqlParser.MASTER_SSL_CA:
+ case SqlParser.MASTER_SSL_CAPATH:
+ case SqlParser.MASTER_SSL_CERT:
+ case SqlParser.MASTER_SSL_CIPHER:
+ case SqlParser.MASTER_SSL_CRL:
+ case SqlParser.MASTER_SSL_CRLPATH:
+ case SqlParser.MASTER_SSL_KEY:
+ case SqlParser.MASTER_TLS_VERSION:
+ case SqlParser.MASTER_USER:
+ case SqlParser.MAX_CONNECTIONS_PER_HOUR:
+ case SqlParser.MAX_QUERIES_PER_HOUR:
+ case SqlParser.MAX_ROWS:
+ case SqlParser.MAX_SIZE:
+ case SqlParser.MAX_UPDATES_PER_HOUR:
+ case SqlParser.MAX_USER_CONNECTIONS:
+ case SqlParser.MEDIUM:
+ case SqlParser.MERGE:
+ case SqlParser.MESSAGE_TEXT:
+ case SqlParser.MID:
+ case SqlParser.MIGRATE:
+ case SqlParser.MIN_ROWS:
+ case SqlParser.MODE:
+ case SqlParser.MODIFY:
+ case SqlParser.MUTEX:
+ case SqlParser.MYSQL:
+ case SqlParser.MYSQL_ERRNO:
+ case SqlParser.NAME:
+ case SqlParser.NAMES:
+ case SqlParser.NCHAR:
+ case SqlParser.NEVER:
+ case SqlParser.NEXT:
+ case SqlParser.NO:
+ case SqlParser.NODEGROUP:
+ case SqlParser.NONE:
+ case SqlParser.OFFLINE:
+ case SqlParser.OFFSET:
+ case SqlParser.OJ:
+ case SqlParser.OLD_PASSWORD:
+ case SqlParser.ONE:
+ case SqlParser.ONLINE:
+ case SqlParser.ONLY:
+ case SqlParser.OPEN:
+ case SqlParser.OPTIMIZER_COSTS:
+ case SqlParser.OPTIONS:
+ case SqlParser.OWNER:
+ case SqlParser.PACK_KEYS:
+ case SqlParser.PAGE:
+ case SqlParser.PARSER:
+ case SqlParser.PARTIAL:
+ case SqlParser.PARTITIONING:
+ case SqlParser.PARTITIONS:
+ case SqlParser.PASSWORD:
+ case SqlParser.PHASE:
+ case SqlParser.PLUGIN:
+ case SqlParser.PLUGIN_DIR:
+ case SqlParser.PLUGINS:
+ case SqlParser.PORT:
+ case SqlParser.PRECEDES:
+ case SqlParser.PREPARE:
+ case SqlParser.PRESERVE:
+ case SqlParser.PREV:
+ case SqlParser.PROCESSLIST:
+ case SqlParser.PROFILE:
+ case SqlParser.PROFILES:
+ case SqlParser.PROXY:
+ case SqlParser.QUERY:
+ case SqlParser.QUICK:
+ case SqlParser.REBUILD:
+ case SqlParser.RECOVER:
+ case SqlParser.REDO_BUFFER_SIZE:
+ case SqlParser.REDUNDANT:
+ case SqlParser.RELAY:
+ case SqlParser.RELAY_LOG_FILE:
+ case SqlParser.RELAY_LOG_POS:
+ case SqlParser.RELAYLOG:
+ case SqlParser.REMOVE:
+ case SqlParser.REORGANIZE:
+ case SqlParser.REPAIR:
+ case SqlParser.REPLICATE_DO_DB:
+ case SqlParser.REPLICATE_DO_TABLE:
+ case SqlParser.REPLICATE_IGNORE_DB:
+ case SqlParser.REPLICATE_IGNORE_TABLE:
+ case SqlParser.REPLICATE_REWRITE_DB:
+ case SqlParser.REPLICATE_WILD_DO_TABLE:
+ case SqlParser.REPLICATE_WILD_IGNORE_TABLE:
+ case SqlParser.REPLICATION:
+ case SqlParser.RESET:
+ case SqlParser.RESUME:
+ case SqlParser.RETURNED_SQLSTATE:
+ case SqlParser.RETURNS:
+ case SqlParser.ROLE:
+ case SqlParser.ROLLBACK:
+ case SqlParser.ROLLUP:
+ case SqlParser.ROTATE:
+ case SqlParser.ROW:
+ case SqlParser.ROWS:
+ case SqlParser.ROW_FORMAT:
+ case SqlParser.SAVEPOINT:
+ case SqlParser.SCHEDULE:
+ case SqlParser.SECURITY:
+ case SqlParser.SERVER:
+ case SqlParser.SESSION:
+ case SqlParser.SHARE:
+ case SqlParser.SHARED:
+ case SqlParser.SIGNED:
+ case SqlParser.SIMPLE:
+ case SqlParser.SLAVE:
+ case SqlParser.SLOW:
+ case SqlParser.SNAPSHOT:
+ case SqlParser.SOCKET:
+ case SqlParser.SOME:
+ case SqlParser.SONAME:
+ case SqlParser.SOUNDS:
+ case SqlParser.SOURCE:
+ case SqlParser.SQL_AFTER_GTIDS:
+ case SqlParser.SQL_AFTER_MTS_GAPS:
+ case SqlParser.SQL_BEFORE_GTIDS:
+ case SqlParser.SQL_BUFFER_RESULT:
+ case SqlParser.SQL_CACHE:
+ case SqlParser.SQL_NO_CACHE:
+ case SqlParser.SQL_THREAD:
+ case SqlParser.START:
+ case SqlParser.STARTS:
+ case SqlParser.STATS_AUTO_RECALC:
+ case SqlParser.STATS_PERSISTENT:
+ case SqlParser.STATS_SAMPLE_PAGES:
+ case SqlParser.STATUS:
+ case SqlParser.STOP:
+ case SqlParser.STORAGE:
+ case SqlParser.STRING:
+ case SqlParser.SUBCLASS_ORIGIN:
+ case SqlParser.SUBJECT:
+ case SqlParser.SUBPARTITION:
+ case SqlParser.SUBPARTITIONS:
+ case SqlParser.SUSPEND:
+ case SqlParser.SWAPS:
+ case SqlParser.SWITCHES:
+ case SqlParser.TABLE_NAME:
+ case SqlParser.TABLESPACE:
+ case SqlParser.TEMPORARY:
+ case SqlParser.TEMPTABLE:
+ case SqlParser.THAN:
+ case SqlParser.TRADITIONAL:
+ case SqlParser.TRANSACTION:
+ case SqlParser.TRANSACTIONAL:
+ case SqlParser.TRIGGERS:
+ case SqlParser.TRUNCATE:
+ case SqlParser.UNDEFINED:
+ case SqlParser.UNDOFILE:
+ case SqlParser.UNDO_BUFFER_SIZE:
+ case SqlParser.UNINSTALL:
+ case SqlParser.UNKNOWN:
+ case SqlParser.UNTIL:
+ case SqlParser.UPGRADE:
+ case SqlParser.USER:
+ case SqlParser.USE_FRM:
+ case SqlParser.USER_RESOURCES:
+ case SqlParser.VALIDATION:
+ case SqlParser.VALUE:
+ case SqlParser.VARIABLES:
+ case SqlParser.VIEW:
+ case SqlParser.VISIBLE:
+ case SqlParser.WAIT:
+ case SqlParser.WARNINGS:
+ case SqlParser.WITHOUT:
+ case SqlParser.WORK:
+ case SqlParser.WRAPPER:
+ case SqlParser.X509:
+ case SqlParser.XA:
+ case SqlParser.XML:
+ case SqlParser.INTERNAL:
+ case SqlParser.QUARTER:
+ case SqlParser.MONTH:
+ case SqlParser.DAY:
+ case SqlParser.HOUR:
+ case SqlParser.MINUTE:
+ case SqlParser.WEEK:
+ case SqlParser.SECOND:
+ case SqlParser.MICROSECOND:
+ case SqlParser.TABLES:
+ case SqlParser.ROUTINE:
+ case SqlParser.EXECUTE:
+ case SqlParser.FILE:
+ case SqlParser.PROCESS:
+ case SqlParser.RELOAD:
+ case SqlParser.SHUTDOWN:
+ case SqlParser.SUPER:
+ case SqlParser.PRIVILEGES:
+ case SqlParser.AUDIT_ADMIN:
+ case SqlParser.BACKUP_ADMIN:
+ case SqlParser.BINLOG_ADMIN:
+ case SqlParser.BINLOG_ENCRYPTION_ADMIN:
+ case SqlParser.CLONE_ADMIN:
+ case SqlParser.CONNECTION_ADMIN:
+ case SqlParser.ENCRYPTION_KEY_ADMIN:
+ case SqlParser.FIREWALL_ADMIN:
+ case SqlParser.FIREWALL_USER:
+ case SqlParser.GROUP_REPLICATION_ADMIN:
+ case SqlParser.INNODB_REDO_LOG_ARCHIVE:
+ case SqlParser.NDB_STORED_USER:
+ case SqlParser.PERSIST_RO_VARIABLES_ADMIN:
+ case SqlParser.REPLICATION_APPLIER:
+ case SqlParser.REPLICATION_SLAVE_ADMIN:
+ case SqlParser.RESOURCE_GROUP_ADMIN:
+ case SqlParser.RESOURCE_GROUP_USER:
+ case SqlParser.ROLE_ADMIN:
+ case SqlParser.SESSION_VARIABLES_ADMIN:
+ case SqlParser.SET_USER_ID:
+ case SqlParser.SHOW_ROUTINE:
+ case SqlParser.SYSTEM_VARIABLES_ADMIN:
+ case SqlParser.TABLE_ENCRYPTION_ADMIN:
+ case SqlParser.VERSION_TOKEN_ADMIN:
+ case SqlParser.XA_RECOVER_ADMIN:
+ case SqlParser.ARMSCII8:
+ case SqlParser.ASCII:
+ case SqlParser.BIG5:
+ case SqlParser.CP1250:
+ case SqlParser.CP1251:
+ case SqlParser.CP1256:
+ case SqlParser.CP1257:
+ case SqlParser.CP850:
+ case SqlParser.CP852:
+ case SqlParser.CP866:
+ case SqlParser.CP932:
+ case SqlParser.DEC8:
+ case SqlParser.EUCJPMS:
+ case SqlParser.EUCKR:
+ case SqlParser.GB2312:
+ case SqlParser.GBK:
+ case SqlParser.GEOSTD8:
+ case SqlParser.GREEK:
+ case SqlParser.HEBREW:
+ case SqlParser.HP8:
+ case SqlParser.KEYBCS2:
+ case SqlParser.KOI8R:
+ case SqlParser.KOI8U:
+ case SqlParser.LATIN1:
+ case SqlParser.LATIN2:
+ case SqlParser.LATIN5:
+ case SqlParser.LATIN7:
+ case SqlParser.MACCE:
+ case SqlParser.MACROMAN:
+ case SqlParser.SJIS:
+ case SqlParser.SWE7:
+ case SqlParser.TIS620:
+ case SqlParser.UCS2:
+ case SqlParser.UJIS:
+ case SqlParser.UTF16:
+ case SqlParser.UTF16LE:
+ case SqlParser.UTF32:
+ case SqlParser.UTF8:
+ case SqlParser.UTF8MB3:
+ case SqlParser.UTF8MB4:
+ case SqlParser.ARCHIVE:
+ case SqlParser.BLACKHOLE:
+ case SqlParser.CSV:
+ case SqlParser.FEDERATED:
+ case SqlParser.INNODB:
+ case SqlParser.MEMORY:
+ case SqlParser.MRG_MYISAM:
+ case SqlParser.MYISAM:
+ case SqlParser.NDB:
+ case SqlParser.NDBCLUSTER:
+ case SqlParser.PERFORMANCE_SCHEMA:
+ case SqlParser.TOKUDB:
+ case SqlParser.REPEATABLE:
+ case SqlParser.COMMITTED:
+ case SqlParser.UNCOMMITTED:
+ case SqlParser.SERIALIZABLE:
+ case SqlParser.GEOMETRYCOLLECTION:
+ case SqlParser.LINESTRING:
+ case SqlParser.MULTILINESTRING:
+ case SqlParser.MULTIPOINT:
+ case SqlParser.MULTIPOLYGON:
+ case SqlParser.POINT:
+ case SqlParser.POLYGON:
+ case SqlParser.ABS:
+ case SqlParser.ACOS:
+ case SqlParser.ADDDATE:
+ case SqlParser.ADDTIME:
+ case SqlParser.AES_DECRYPT:
+ case SqlParser.AES_ENCRYPT:
+ case SqlParser.AREA:
+ case SqlParser.ASBINARY:
+ case SqlParser.ASIN:
+ case SqlParser.ASTEXT:
+ case SqlParser.ASWKB:
+ case SqlParser.ASWKT:
+ case SqlParser.ASYMMETRIC_DECRYPT:
+ case SqlParser.ASYMMETRIC_DERIVE:
+ case SqlParser.ASYMMETRIC_ENCRYPT:
+ case SqlParser.ASYMMETRIC_SIGN:
+ case SqlParser.ASYMMETRIC_VERIFY:
+ case SqlParser.ATAN:
+ case SqlParser.ATAN2:
+ case SqlParser.BENCHMARK:
+ case SqlParser.BIN:
+ case SqlParser.BIT_COUNT:
+ case SqlParser.BIT_LENGTH:
+ case SqlParser.BUFFER:
+ case SqlParser.CATALOG_NAME:
+ case SqlParser.CEIL:
+ case SqlParser.CEILING:
+ case SqlParser.CENTROID:
+ case SqlParser.CHARACTER_LENGTH:
+ case SqlParser.CHARSET:
+ case SqlParser.CHAR_LENGTH:
+ case SqlParser.COERCIBILITY:
+ case SqlParser.COLLATION:
+ case SqlParser.COMPRESS:
+ case SqlParser.CONCAT:
+ case SqlParser.CONCAT_WS:
+ case SqlParser.CONNECTION_ID:
+ case SqlParser.CONV:
+ case SqlParser.CONVERT_TZ:
+ case SqlParser.COS:
+ case SqlParser.COT:
+ case SqlParser.CRC32:
+ case SqlParser.CREATE_ASYMMETRIC_PRIV_KEY:
+ case SqlParser.CREATE_ASYMMETRIC_PUB_KEY:
+ case SqlParser.CREATE_DH_PARAMETERS:
+ case SqlParser.CREATE_DIGEST:
+ case SqlParser.CROSSES:
+ case SqlParser.DATEDIFF:
+ case SqlParser.DATE_FORMAT:
+ case SqlParser.DAYNAME:
+ case SqlParser.DAYOFMONTH:
+ case SqlParser.DAYOFWEEK:
+ case SqlParser.DAYOFYEAR:
+ case SqlParser.DECODE:
+ case SqlParser.DEGREES:
+ case SqlParser.DES_DECRYPT:
+ case SqlParser.DES_ENCRYPT:
+ case SqlParser.DIMENSION:
+ case SqlParser.DISJOINT:
+ case SqlParser.ELT:
+ case SqlParser.ENCODE:
+ case SqlParser.ENCRYPT:
+ case SqlParser.ENDPOINT:
+ case SqlParser.ENVELOPE:
+ case SqlParser.EQUALS:
+ case SqlParser.EXP:
+ case SqlParser.EXPORT_SET:
+ case SqlParser.EXTERIORRING:
+ case SqlParser.EXTRACTVALUE:
+ case SqlParser.FIELD:
+ case SqlParser.FIND_IN_SET:
+ case SqlParser.FLOOR:
+ case SqlParser.FORMAT:
+ case SqlParser.FOUND_ROWS:
+ case SqlParser.FROM_BASE64:
+ case SqlParser.FROM_DAYS:
+ case SqlParser.FROM_UNIXTIME:
+ case SqlParser.GEOMCOLLFROMTEXT:
+ case SqlParser.GEOMCOLLFROMWKB:
+ case SqlParser.GEOMETRYCOLLECTIONFROMTEXT:
+ case SqlParser.GEOMETRYCOLLECTIONFROMWKB:
+ case SqlParser.GEOMETRYFROMTEXT:
+ case SqlParser.GEOMETRYFROMWKB:
+ case SqlParser.GEOMETRYN:
+ case SqlParser.GEOMETRYTYPE:
+ case SqlParser.GEOMFROMTEXT:
+ case SqlParser.GEOMFROMWKB:
+ case SqlParser.GET_FORMAT:
+ case SqlParser.GET_LOCK:
+ case SqlParser.GLENGTH:
+ case SqlParser.GREATEST:
+ case SqlParser.GTID_SUBSET:
+ case SqlParser.GTID_SUBTRACT:
+ case SqlParser.HEX:
+ case SqlParser.IFNULL:
+ case SqlParser.INET6_ATON:
+ case SqlParser.INET6_NTOA:
+ case SqlParser.INET_ATON:
+ case SqlParser.INET_NTOA:
+ case SqlParser.INSTR:
+ case SqlParser.INTERIORRINGN:
+ case SqlParser.INTERSECTS:
+ case SqlParser.ISCLOSED:
+ case SqlParser.ISEMPTY:
+ case SqlParser.ISNULL:
+ case SqlParser.ISSIMPLE:
+ case SqlParser.IS_FREE_LOCK:
+ case SqlParser.IS_IPV4:
+ case SqlParser.IS_IPV4_COMPAT:
+ case SqlParser.IS_IPV4_MAPPED:
+ case SqlParser.IS_IPV6:
+ case SqlParser.IS_USED_LOCK:
+ case SqlParser.LAST_INSERT_ID:
+ case SqlParser.LCASE:
+ case SqlParser.LEAST:
+ case SqlParser.LENGTH:
+ case SqlParser.LINEFROMTEXT:
+ case SqlParser.LINEFROMWKB:
+ case SqlParser.LINESTRINGFROMTEXT:
+ case SqlParser.LINESTRINGFROMWKB:
+ case SqlParser.LN:
+ case SqlParser.LOAD_FILE:
+ case SqlParser.LOCATE:
+ case SqlParser.LOG:
+ case SqlParser.LOG10:
+ case SqlParser.LOG2:
+ case SqlParser.LOWER:
+ case SqlParser.LPAD:
+ case SqlParser.LTRIM:
+ case SqlParser.MAKEDATE:
+ case SqlParser.MAKETIME:
+ case SqlParser.MAKE_SET:
+ case SqlParser.MASTER_POS_WAIT:
+ case SqlParser.MBRCONTAINS:
+ case SqlParser.MBRDISJOINT:
+ case SqlParser.MBREQUAL:
+ case SqlParser.MBRINTERSECTS:
+ case SqlParser.MBROVERLAPS:
+ case SqlParser.MBRTOUCHES:
+ case SqlParser.MBRWITHIN:
+ case SqlParser.MD5:
+ case SqlParser.MLINEFROMTEXT:
+ case SqlParser.MLINEFROMWKB:
+ case SqlParser.MONTHNAME:
+ case SqlParser.MPOINTFROMTEXT:
+ case SqlParser.MPOINTFROMWKB:
+ case SqlParser.MPOLYFROMTEXT:
+ case SqlParser.MPOLYFROMWKB:
+ case SqlParser.MULTILINESTRINGFROMTEXT:
+ case SqlParser.MULTILINESTRINGFROMWKB:
+ case SqlParser.MULTIPOINTFROMTEXT:
+ case SqlParser.MULTIPOINTFROMWKB:
+ case SqlParser.MULTIPOLYGONFROMTEXT:
+ case SqlParser.MULTIPOLYGONFROMWKB:
+ case SqlParser.NAME_CONST:
+ case SqlParser.NULLIF:
+ case SqlParser.NUMGEOMETRIES:
+ case SqlParser.NUMINTERIORRINGS:
+ case SqlParser.NUMPOINTS:
+ case SqlParser.OCT:
+ case SqlParser.OCTET_LENGTH:
+ case SqlParser.ORD:
+ case SqlParser.OVERLAPS:
+ case SqlParser.PERIOD_ADD:
+ case SqlParser.PERIOD_DIFF:
+ case SqlParser.PI:
+ case SqlParser.POINTFROMTEXT:
+ case SqlParser.POINTFROMWKB:
+ case SqlParser.POINTN:
+ case SqlParser.POLYFROMTEXT:
+ case SqlParser.POLYFROMWKB:
+ case SqlParser.POLYGONFROMTEXT:
+ case SqlParser.POLYGONFROMWKB:
+ case SqlParser.POW:
+ case SqlParser.POWER:
+ case SqlParser.QUOTE:
+ case SqlParser.RADIANS:
+ case SqlParser.RAND:
+ case SqlParser.RANDOM_BYTES:
+ case SqlParser.RELEASE_LOCK:
+ case SqlParser.REVERSE:
+ case SqlParser.ROUND:
+ case SqlParser.ROW_COUNT:
+ case SqlParser.RPAD:
+ case SqlParser.RTRIM:
+ case SqlParser.SEC_TO_TIME:
+ case SqlParser.SESSION_USER:
+ case SqlParser.SHA:
+ case SqlParser.SHA1:
+ case SqlParser.SHA2:
+ case SqlParser.SCHEMA_NAME:
+ case SqlParser.SIGN:
+ case SqlParser.SIN:
+ case SqlParser.SLEEP:
+ case SqlParser.SOUNDEX:
+ case SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS:
+ case SqlParser.SQRT:
+ case SqlParser.SRID:
+ case SqlParser.STARTPOINT:
+ case SqlParser.STRCMP:
+ case SqlParser.STR_TO_DATE:
+ case SqlParser.ST_AREA:
+ case SqlParser.ST_ASBINARY:
+ case SqlParser.ST_ASTEXT:
+ case SqlParser.ST_ASWKB:
+ case SqlParser.ST_ASWKT:
+ case SqlParser.ST_BUFFER:
+ case SqlParser.ST_CENTROID:
+ case SqlParser.ST_CONTAINS:
+ case SqlParser.ST_CROSSES:
+ case SqlParser.ST_DIFFERENCE:
+ case SqlParser.ST_DIMENSION:
+ case SqlParser.ST_DISJOINT:
+ case SqlParser.ST_DISTANCE:
+ case SqlParser.ST_ENDPOINT:
+ case SqlParser.ST_ENVELOPE:
+ case SqlParser.ST_EQUALS:
+ case SqlParser.ST_EXTERIORRING:
+ case SqlParser.ST_GEOMCOLLFROMTEXT:
+ case SqlParser.ST_GEOMCOLLFROMTXT:
+ case SqlParser.ST_GEOMCOLLFROMWKB:
+ case SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT:
+ case SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB:
+ case SqlParser.ST_GEOMETRYFROMTEXT:
+ case SqlParser.ST_GEOMETRYFROMWKB:
+ case SqlParser.ST_GEOMETRYN:
+ case SqlParser.ST_GEOMETRYTYPE:
+ case SqlParser.ST_GEOMFROMTEXT:
+ case SqlParser.ST_GEOMFROMWKB:
+ case SqlParser.ST_INTERIORRINGN:
+ case SqlParser.ST_INTERSECTION:
+ case SqlParser.ST_INTERSECTS:
+ case SqlParser.ST_ISCLOSED:
+ case SqlParser.ST_ISEMPTY:
+ case SqlParser.ST_ISSIMPLE:
+ case SqlParser.ST_LINEFROMTEXT:
+ case SqlParser.ST_LINEFROMWKB:
+ case SqlParser.ST_LINESTRINGFROMTEXT:
+ case SqlParser.ST_LINESTRINGFROMWKB:
+ case SqlParser.ST_NUMGEOMETRIES:
+ case SqlParser.ST_NUMINTERIORRING:
+ case SqlParser.ST_NUMINTERIORRINGS:
+ case SqlParser.ST_NUMPOINTS:
+ case SqlParser.ST_OVERLAPS:
+ case SqlParser.ST_POINTFROMTEXT:
+ case SqlParser.ST_POINTFROMWKB:
+ case SqlParser.ST_POINTN:
+ case SqlParser.ST_POLYFROMTEXT:
+ case SqlParser.ST_POLYFROMWKB:
+ case SqlParser.ST_POLYGONFROMTEXT:
+ case SqlParser.ST_POLYGONFROMWKB:
+ case SqlParser.ST_SRID:
+ case SqlParser.ST_STARTPOINT:
+ case SqlParser.ST_SYMDIFFERENCE:
+ case SqlParser.ST_TOUCHES:
+ case SqlParser.ST_UNION:
+ case SqlParser.ST_WITHIN:
+ case SqlParser.ST_X:
+ case SqlParser.ST_Y:
+ case SqlParser.SUBDATE:
+ case SqlParser.SUBSTRING_INDEX:
+ case SqlParser.SUBTIME:
+ case SqlParser.SYSTEM_USER:
+ case SqlParser.TAN:
+ case SqlParser.TIMEDIFF:
+ case SqlParser.TIMESTAMPADD:
+ case SqlParser.TIMESTAMPDIFF:
+ case SqlParser.TIME_FORMAT:
+ case SqlParser.TIME_TO_SEC:
+ case SqlParser.TOUCHES:
+ case SqlParser.TO_BASE64:
+ case SqlParser.TO_DAYS:
+ case SqlParser.TO_SECONDS:
+ case SqlParser.UCASE:
+ case SqlParser.UNCOMPRESS:
+ case SqlParser.UNCOMPRESSED_LENGTH:
+ case SqlParser.UNHEX:
+ case SqlParser.UNIX_TIMESTAMP:
+ case SqlParser.UPDATEXML:
+ case SqlParser.UPPER:
+ case SqlParser.UUID:
+ case SqlParser.UUID_SHORT:
+ case SqlParser.VALIDATE_PASSWORD_STRENGTH:
+ case SqlParser.VERSION:
+ case SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS:
+ case SqlParser.WEEKDAY:
+ case SqlParser.WEEKOFYEAR:
+ case SqlParser.WEIGHT_STRING:
+ case SqlParser.WITHIN:
+ case SqlParser.YEARWEEK:
+ case SqlParser.Y_FUNCTION:
+ case SqlParser.X_FUNCTION:
+ case SqlParser.CHARSET_REVERSE_QOUTE_STRING:
+ case SqlParser.STRING_LITERAL:
+ case SqlParser.ID:
+ case SqlParser.REVERSE_QUOTE_ID:
+ this.state = 5268;
+ localctx.partitionList = this.uidList();
+ break;
+ case SqlParser.ALL:
+ this.state = 5269;
+ this.match(SqlParser.ALL);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 5272;
+ this.match(SqlParser.RR_BRACKET);
+ }
+
+ this.state = 5282;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,760,this._ctx);
+ if(la_===1) {
+ this.state = 5276;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.INDEX || _la===SqlParser.KEY) {
+ this.state = 5275;
+ localctx.indexFormat = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.INDEX || _la===SqlParser.KEY)) {
+ localctx.indexFormat = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 5278;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 5279;
+ localctx.indexList = this.uidList();
+ this.state = 5280;
+ this.match(SqlParser.RR_BRACKET);
+
+ }
+ this.state = 5286;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.IGNORE) {
+ this.state = 5284;
+ this.match(SqlParser.IGNORE);
+ this.state = 5285;
+ this.match(SqlParser.LEAVES);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function SimpleDescribeStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_simpleDescribeStatement;
+ this.command = null; // Token
+ this.column = null; // UidContext
+ this.pattern = null; // Token
+ return this;
+}
+
+SimpleDescribeStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+SimpleDescribeStatementContext.prototype.constructor = SimpleDescribeStatementContext;
+
+SimpleDescribeStatementContext.prototype.tableName = function() {
+ return this.getTypedRuleContext(TableNameContext,0);
+};
+
+SimpleDescribeStatementContext.prototype.EXPLAIN = function() {
+ return this.getToken(SqlParser.EXPLAIN, 0);
+};
+
+SimpleDescribeStatementContext.prototype.DESCRIBE = function() {
+ return this.getToken(SqlParser.DESCRIBE, 0);
+};
+
+SimpleDescribeStatementContext.prototype.DESC = function() {
+ return this.getToken(SqlParser.DESC, 0);
+};
+
+SimpleDescribeStatementContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+SimpleDescribeStatementContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+SimpleDescribeStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSimpleDescribeStatement(this);
+ }
+};
+
+SimpleDescribeStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSimpleDescribeStatement(this);
+ }
+};
+
+SimpleDescribeStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSimpleDescribeStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.SimpleDescribeStatementContext = SimpleDescribeStatementContext;
+
+SqlParser.prototype.simpleDescribeStatement = function() {
+
+ var localctx = new SimpleDescribeStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 478, SqlParser.RULE_simpleDescribeStatement);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5288;
+ localctx.command = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(((((_la - 41)) & ~0x1f) == 0 && ((1 << (_la - 41)) & ((1 << (SqlParser.DESC - 41)) | (1 << (SqlParser.DESCRIBE - 41)) | (1 << (SqlParser.EXPLAIN - 41)))) !== 0))) {
+ localctx.command = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 5289;
+ this.tableName();
+ this.state = 5292;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,762,this._ctx);
+ if(la_===1) {
+ this.state = 5290;
+ localctx.column = this.uid();
+
+ } else if(la_===2) {
+ this.state = 5291;
+ localctx.pattern = this.match(SqlParser.STRING_LITERAL);
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function FullDescribeStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_fullDescribeStatement;
+ this.command = null; // Token
+ this.formatType = null; // Token
+ this.formatValue = null; // Token
+ return this;
+}
+
+FullDescribeStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+FullDescribeStatementContext.prototype.constructor = FullDescribeStatementContext;
+
+FullDescribeStatementContext.prototype.describeObjectClause = function() {
+ return this.getTypedRuleContext(DescribeObjectClauseContext,0);
+};
+
+FullDescribeStatementContext.prototype.EXPLAIN = function() {
+ return this.getToken(SqlParser.EXPLAIN, 0);
+};
+
+FullDescribeStatementContext.prototype.DESCRIBE = function() {
+ return this.getToken(SqlParser.DESCRIBE, 0);
+};
+
+FullDescribeStatementContext.prototype.DESC = function() {
+ return this.getToken(SqlParser.DESC, 0);
+};
+
+FullDescribeStatementContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+
+FullDescribeStatementContext.prototype.EXTENDED = function() {
+ return this.getToken(SqlParser.EXTENDED, 0);
+};
+
+FullDescribeStatementContext.prototype.PARTITIONS = function() {
+ return this.getToken(SqlParser.PARTITIONS, 0);
+};
+
+FullDescribeStatementContext.prototype.FORMAT = function() {
+ return this.getToken(SqlParser.FORMAT, 0);
+};
+
+FullDescribeStatementContext.prototype.TRADITIONAL = function() {
+ return this.getToken(SqlParser.TRADITIONAL, 0);
+};
+
+FullDescribeStatementContext.prototype.JSON = function() {
+ return this.getToken(SqlParser.JSON, 0);
+};
+
+FullDescribeStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterFullDescribeStatement(this);
+ }
+};
+
+FullDescribeStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitFullDescribeStatement(this);
+ }
+};
+
+FullDescribeStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitFullDescribeStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.FullDescribeStatementContext = FullDescribeStatementContext;
+
+SqlParser.prototype.fullDescribeStatement = function() {
+
+ var localctx = new FullDescribeStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 480, SqlParser.RULE_fullDescribeStatement);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5294;
+ localctx.command = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(((((_la - 41)) & ~0x1f) == 0 && ((1 << (_la - 41)) & ((1 << (SqlParser.DESC - 41)) | (1 << (SqlParser.DESCRIBE - 41)) | (1 << (SqlParser.EXPLAIN - 41)))) !== 0))) {
+ localctx.command = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 5298;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.EXTENDED || _la===SqlParser.PARTITIONS || _la===SqlParser.FORMAT) {
+ this.state = 5295;
+ localctx.formatType = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.EXTENDED || _la===SqlParser.PARTITIONS || _la===SqlParser.FORMAT)) {
+ localctx.formatType = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 5296;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ this.state = 5297;
+ localctx.formatValue = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.JSON || _la===SqlParser.TRADITIONAL)) {
+ localctx.formatValue = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 5300;
+ this.describeObjectClause();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function HelpStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_helpStatement;
+ return this;
+}
+
+HelpStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+HelpStatementContext.prototype.constructor = HelpStatementContext;
+
+HelpStatementContext.prototype.HELP = function() {
+ return this.getToken(SqlParser.HELP, 0);
+};
+
+HelpStatementContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+HelpStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterHelpStatement(this);
+ }
+};
+
+HelpStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitHelpStatement(this);
+ }
+};
+
+HelpStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitHelpStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.HelpStatementContext = HelpStatementContext;
+
+SqlParser.prototype.helpStatement = function() {
+
+ var localctx = new HelpStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 482, SqlParser.RULE_helpStatement);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5302;
+ this.match(SqlParser.HELP);
+ this.state = 5303;
+ this.match(SqlParser.STRING_LITERAL);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function UseStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_useStatement;
+ return this;
+}
+
+UseStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+UseStatementContext.prototype.constructor = UseStatementContext;
+
+UseStatementContext.prototype.USE = function() {
+ return this.getToken(SqlParser.USE, 0);
+};
+
+UseStatementContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+UseStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterUseStatement(this);
+ }
+};
+
+UseStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitUseStatement(this);
+ }
+};
+
+UseStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitUseStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.UseStatementContext = UseStatementContext;
+
+SqlParser.prototype.useStatement = function() {
+
+ var localctx = new UseStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 484, SqlParser.RULE_useStatement);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5305;
+ this.match(SqlParser.USE);
+ this.state = 5306;
+ this.uid();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function SignalStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_signalStatement;
+ return this;
+}
+
+SignalStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+SignalStatementContext.prototype.constructor = SignalStatementContext;
+
+SignalStatementContext.prototype.SIGNAL = function() {
+ return this.getToken(SqlParser.SIGNAL, 0);
+};
+
+SignalStatementContext.prototype.ID = function() {
+ return this.getToken(SqlParser.ID, 0);
+};
+
+SignalStatementContext.prototype.REVERSE_QUOTE_ID = function() {
+ return this.getToken(SqlParser.REVERSE_QUOTE_ID, 0);
+};
+
+SignalStatementContext.prototype.SET = function() {
+ return this.getToken(SqlParser.SET, 0);
+};
+
+SignalStatementContext.prototype.signalConditionInformation = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(SignalConditionInformationContext);
+ } else {
+ return this.getTypedRuleContext(SignalConditionInformationContext,i);
+ }
+};
+
+SignalStatementContext.prototype.SQLSTATE = function() {
+ return this.getToken(SqlParser.SQLSTATE, 0);
+};
+
+SignalStatementContext.prototype.stringLiteral = function() {
+ return this.getTypedRuleContext(StringLiteralContext,0);
+};
+
+SignalStatementContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+SignalStatementContext.prototype.VALUE = function() {
+ return this.getToken(SqlParser.VALUE, 0);
+};
+
+SignalStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSignalStatement(this);
+ }
+};
+
+SignalStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSignalStatement(this);
+ }
+};
+
+SignalStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSignalStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.SignalStatementContext = SignalStatementContext;
+
+SqlParser.prototype.signalStatement = function() {
+
+ var localctx = new SignalStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 486, SqlParser.RULE_signalStatement);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5308;
+ this.match(SqlParser.SIGNAL);
+ this.state = 5316;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.SQLSTATE:
+ this.state = 5309;
+ this.match(SqlParser.SQLSTATE);
+ this.state = 5311;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.VALUE) {
+ this.state = 5310;
+ this.match(SqlParser.VALUE);
+ }
+
+ this.state = 5313;
+ this.stringLiteral();
+ break;
+ case SqlParser.ID:
+ this.state = 5314;
+ this.match(SqlParser.ID);
+ break;
+ case SqlParser.REVERSE_QUOTE_ID:
+ this.state = 5315;
+ this.match(SqlParser.REVERSE_QUOTE_ID);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 5327;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,767,this._ctx);
+ if(la_===1) {
+ this.state = 5318;
+ this.match(SqlParser.SET);
+ this.state = 5319;
+ this.signalConditionInformation();
+ this.state = 5324;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 5320;
+ this.match(SqlParser.COMMA);
+ this.state = 5321;
+ this.signalConditionInformation();
+ this.state = 5326;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function ResignalStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_resignalStatement;
+ return this;
+}
+
+ResignalStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+ResignalStatementContext.prototype.constructor = ResignalStatementContext;
+
+ResignalStatementContext.prototype.RESIGNAL = function() {
+ return this.getToken(SqlParser.RESIGNAL, 0);
+};
+
+ResignalStatementContext.prototype.ID = function() {
+ return this.getToken(SqlParser.ID, 0);
+};
+
+ResignalStatementContext.prototype.REVERSE_QUOTE_ID = function() {
+ return this.getToken(SqlParser.REVERSE_QUOTE_ID, 0);
+};
+
+ResignalStatementContext.prototype.SET = function() {
+ return this.getToken(SqlParser.SET, 0);
+};
+
+ResignalStatementContext.prototype.signalConditionInformation = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(SignalConditionInformationContext);
+ } else {
+ return this.getTypedRuleContext(SignalConditionInformationContext,i);
+ }
+};
+
+ResignalStatementContext.prototype.SQLSTATE = function() {
+ return this.getToken(SqlParser.SQLSTATE, 0);
+};
+
+ResignalStatementContext.prototype.stringLiteral = function() {
+ return this.getTypedRuleContext(StringLiteralContext,0);
+};
+
+ResignalStatementContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+ResignalStatementContext.prototype.VALUE = function() {
+ return this.getToken(SqlParser.VALUE, 0);
+};
+
+ResignalStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterResignalStatement(this);
+ }
+};
+
+ResignalStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitResignalStatement(this);
+ }
+};
+
+ResignalStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitResignalStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.ResignalStatementContext = ResignalStatementContext;
+
+SqlParser.prototype.resignalStatement = function() {
+
+ var localctx = new ResignalStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 488, SqlParser.RULE_resignalStatement);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5329;
+ this.match(SqlParser.RESIGNAL);
+ this.state = 5337;
+ this._errHandler.sync(this);
+ switch (this._input.LA(1)) {
+ case SqlParser.SQLSTATE:
+ this.state = 5330;
+ this.match(SqlParser.SQLSTATE);
+ this.state = 5332;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.VALUE) {
+ this.state = 5331;
+ this.match(SqlParser.VALUE);
+ }
+
+ this.state = 5334;
+ this.stringLiteral();
+ break;
+ case SqlParser.ID:
+ this.state = 5335;
+ this.match(SqlParser.ID);
+ break;
+ case SqlParser.REVERSE_QUOTE_ID:
+ this.state = 5336;
+ this.match(SqlParser.REVERSE_QUOTE_ID);
+ break;
+ case SqlParser.EOF:
+ case SqlParser.ALTER:
+ case SqlParser.ANALYZE:
+ case SqlParser.CALL:
+ case SqlParser.CHANGE:
+ case SqlParser.CHECK:
+ case SqlParser.CREATE:
+ case SqlParser.DELETE:
+ case SqlParser.DESC:
+ case SqlParser.DESCRIBE:
+ case SqlParser.DROP:
+ case SqlParser.EXPLAIN:
+ case SqlParser.GET:
+ case SqlParser.GRANT:
+ case SqlParser.INSERT:
+ case SqlParser.KILL:
+ case SqlParser.LOAD:
+ case SqlParser.LOCK:
+ case SqlParser.OPTIMIZE:
+ case SqlParser.PURGE:
+ case SqlParser.RELEASE:
+ case SqlParser.RENAME:
+ case SqlParser.REPLACE:
+ case SqlParser.RESIGNAL:
+ case SqlParser.REVOKE:
+ case SqlParser.SELECT:
+ case SqlParser.SET:
+ case SqlParser.SHOW:
+ case SqlParser.SIGNAL:
+ case SqlParser.UNLOCK:
+ case SqlParser.UPDATE:
+ case SqlParser.USE:
+ case SqlParser.BEGIN:
+ case SqlParser.BINLOG:
+ case SqlParser.CACHE:
+ case SqlParser.CHECKSUM:
+ case SqlParser.COMMIT:
+ case SqlParser.DEALLOCATE:
+ case SqlParser.DO:
+ case SqlParser.FLUSH:
+ case SqlParser.HANDLER:
+ case SqlParser.HELP:
+ case SqlParser.INSTALL:
+ case SqlParser.PREPARE:
+ case SqlParser.REPAIR:
+ case SqlParser.RESET:
+ case SqlParser.ROLLBACK:
+ case SqlParser.SAVEPOINT:
+ case SqlParser.START:
+ case SqlParser.STOP:
+ case SqlParser.TRUNCATE:
+ case SqlParser.UNINSTALL:
+ case SqlParser.XA:
+ case SqlParser.EXECUTE:
+ case SqlParser.SHUTDOWN:
+ case SqlParser.MINUSMINUS:
+ case SqlParser.LR_BRACKET:
+ case SqlParser.SEMI:
+ break;
+ default:
+ break;
+ }
+ this.state = 5348;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,771,this._ctx);
+ if(la_===1) {
+ this.state = 5339;
+ this.match(SqlParser.SET);
+ this.state = 5340;
+ this.signalConditionInformation();
+ this.state = 5345;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 5341;
+ this.match(SqlParser.COMMA);
+ this.state = 5342;
+ this.signalConditionInformation();
+ this.state = 5347;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function SignalConditionInformationContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_signalConditionInformation;
+ return this;
+}
+
+SignalConditionInformationContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+SignalConditionInformationContext.prototype.constructor = SignalConditionInformationContext;
+
+SignalConditionInformationContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+
+SignalConditionInformationContext.prototype.CLASS_ORIGIN = function() {
+ return this.getToken(SqlParser.CLASS_ORIGIN, 0);
+};
+
+SignalConditionInformationContext.prototype.SUBCLASS_ORIGIN = function() {
+ return this.getToken(SqlParser.SUBCLASS_ORIGIN, 0);
+};
+
+SignalConditionInformationContext.prototype.MESSAGE_TEXT = function() {
+ return this.getToken(SqlParser.MESSAGE_TEXT, 0);
+};
+
+SignalConditionInformationContext.prototype.MYSQL_ERRNO = function() {
+ return this.getToken(SqlParser.MYSQL_ERRNO, 0);
+};
+
+SignalConditionInformationContext.prototype.CONSTRAINT_CATALOG = function() {
+ return this.getToken(SqlParser.CONSTRAINT_CATALOG, 0);
+};
+
+SignalConditionInformationContext.prototype.CONSTRAINT_SCHEMA = function() {
+ return this.getToken(SqlParser.CONSTRAINT_SCHEMA, 0);
+};
+
+SignalConditionInformationContext.prototype.CONSTRAINT_NAME = function() {
+ return this.getToken(SqlParser.CONSTRAINT_NAME, 0);
+};
+
+SignalConditionInformationContext.prototype.CATALOG_NAME = function() {
+ return this.getToken(SqlParser.CATALOG_NAME, 0);
+};
+
+SignalConditionInformationContext.prototype.SCHEMA_NAME = function() {
+ return this.getToken(SqlParser.SCHEMA_NAME, 0);
+};
+
+SignalConditionInformationContext.prototype.TABLE_NAME = function() {
+ return this.getToken(SqlParser.TABLE_NAME, 0);
+};
+
+SignalConditionInformationContext.prototype.COLUMN_NAME = function() {
+ return this.getToken(SqlParser.COLUMN_NAME, 0);
+};
+
+SignalConditionInformationContext.prototype.CURSOR_NAME = function() {
+ return this.getToken(SqlParser.CURSOR_NAME, 0);
+};
+
+SignalConditionInformationContext.prototype.stringLiteral = function() {
+ return this.getTypedRuleContext(StringLiteralContext,0);
+};
+
+SignalConditionInformationContext.prototype.DECIMAL_LITERAL = function() {
+ return this.getToken(SqlParser.DECIMAL_LITERAL, 0);
+};
+
+SignalConditionInformationContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSignalConditionInformation(this);
+ }
+};
+
+SignalConditionInformationContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSignalConditionInformation(this);
+ }
+};
+
+SignalConditionInformationContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSignalConditionInformation(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.SignalConditionInformationContext = SignalConditionInformationContext;
+
+SqlParser.prototype.signalConditionInformation = function() {
+
+ var localctx = new SignalConditionInformationContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 490, SqlParser.RULE_signalConditionInformation);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5350;
+ _la = this._input.LA(1);
+ if(!(((((_la - 297)) & ~0x1f) == 0 && ((1 << (_la - 297)) & ((1 << (SqlParser.CLASS_ORIGIN - 297)) | (1 << (SqlParser.COLUMN_NAME - 297)) | (1 << (SqlParser.CONSTRAINT_CATALOG - 297)) | (1 << (SqlParser.CONSTRAINT_SCHEMA - 297)) | (1 << (SqlParser.CONSTRAINT_NAME - 297)) | (1 << (SqlParser.CURSOR_NAME - 297)))) !== 0) || _la===SqlParser.MESSAGE_TEXT || _la===SqlParser.MYSQL_ERRNO || _la===SqlParser.SUBCLASS_ORIGIN || _la===SqlParser.TABLE_NAME || _la===SqlParser.CATALOG_NAME || _la===SqlParser.SCHEMA_NAME)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 5351;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ this.state = 5354;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.START_NATIONAL_STRING_LITERAL:
+ case SqlParser.STRING_LITERAL:
+ case SqlParser.STRING_CHARSET_NAME:
+ this.state = 5352;
+ this.stringLiteral();
+ break;
+ case SqlParser.DECIMAL_LITERAL:
+ this.state = 5353;
+ this.match(SqlParser.DECIMAL_LITERAL);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function DiagnosticsStatementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_diagnosticsStatement;
+ return this;
+}
+
+DiagnosticsStatementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+DiagnosticsStatementContext.prototype.constructor = DiagnosticsStatementContext;
+
+DiagnosticsStatementContext.prototype.GET = function() {
+ return this.getToken(SqlParser.GET, 0);
+};
+
+DiagnosticsStatementContext.prototype.DIAGNOSTICS = function() {
+ return this.getToken(SqlParser.DIAGNOSTICS, 0);
+};
+
+DiagnosticsStatementContext.prototype.CURRENT = function() {
+ return this.getToken(SqlParser.CURRENT, 0);
+};
+
+DiagnosticsStatementContext.prototype.STACKED = function() {
+ return this.getToken(SqlParser.STACKED, 0);
+};
+
+DiagnosticsStatementContext.prototype.variableClause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(VariableClauseContext);
+ } else {
+ return this.getTypedRuleContext(VariableClauseContext,i);
+ }
+};
+
+DiagnosticsStatementContext.prototype.EQUAL_SYMBOL = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.EQUAL_SYMBOL);
+ } else {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, i);
+ }
+};
+
+
+DiagnosticsStatementContext.prototype.CONDITION = function() {
+ return this.getToken(SqlParser.CONDITION, 0);
+};
+
+DiagnosticsStatementContext.prototype.diagnosticsConditionInformationName = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(DiagnosticsConditionInformationNameContext);
+ } else {
+ return this.getTypedRuleContext(DiagnosticsConditionInformationNameContext,i);
+ }
+};
+
+DiagnosticsStatementContext.prototype.NUMBER = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.NUMBER);
+ } else {
+ return this.getToken(SqlParser.NUMBER, i);
+ }
+};
+
+
+DiagnosticsStatementContext.prototype.ROW_COUNT = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.ROW_COUNT);
+ } else {
+ return this.getToken(SqlParser.ROW_COUNT, i);
+ }
+};
+
+
+DiagnosticsStatementContext.prototype.decimalLiteral = function() {
+ return this.getTypedRuleContext(DecimalLiteralContext,0);
+};
+
+DiagnosticsStatementContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+DiagnosticsStatementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterDiagnosticsStatement(this);
+ }
+};
+
+DiagnosticsStatementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitDiagnosticsStatement(this);
+ }
+};
+
+DiagnosticsStatementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitDiagnosticsStatement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.DiagnosticsStatementContext = DiagnosticsStatementContext;
+
+SqlParser.prototype.diagnosticsStatement = function() {
+
+ var localctx = new DiagnosticsStatementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 492, SqlParser.RULE_diagnosticsStatement);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5356;
+ this.match(SqlParser.GET);
+ this.state = 5358;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.CURRENT || _la===SqlParser.STACKED) {
+ this.state = 5357;
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.CURRENT || _la===SqlParser.STACKED)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 5360;
+ this.match(SqlParser.DIAGNOSTICS);
+ this.state = 5392;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.CURRENT:
+ case SqlParser.DATABASE:
+ case SqlParser.DIAGNOSTICS:
+ case SqlParser.LEFT:
+ case SqlParser.NUMBER:
+ case SqlParser.RIGHT:
+ case SqlParser.STACKED:
+ case SqlParser.DATE:
+ case SqlParser.TIME:
+ case SqlParser.TIMESTAMP:
+ case SqlParser.DATETIME:
+ case SqlParser.YEAR:
+ case SqlParser.TEXT:
+ case SqlParser.ENUM:
+ case SqlParser.SERIAL:
+ case SqlParser.JSON_VALID:
+ case SqlParser.JSON_SCHEMA_VALID:
+ case SqlParser.COUNT:
+ case SqlParser.POSITION:
+ case SqlParser.ACCOUNT:
+ case SqlParser.ACTION:
+ case SqlParser.AFTER:
+ case SqlParser.AGGREGATE:
+ case SqlParser.ALGORITHM:
+ case SqlParser.ANY:
+ case SqlParser.AT:
+ case SqlParser.AUTHORS:
+ case SqlParser.AUTOCOMMIT:
+ case SqlParser.AUTOEXTEND_SIZE:
+ case SqlParser.AUTO_INCREMENT:
+ case SqlParser.AVG_ROW_LENGTH:
+ case SqlParser.BEGIN:
+ case SqlParser.BINLOG:
+ case SqlParser.BIT:
+ case SqlParser.BLOCK:
+ case SqlParser.BOOL:
+ case SqlParser.BOOLEAN:
+ case SqlParser.BTREE:
+ case SqlParser.CACHE:
+ case SqlParser.CASCADED:
+ case SqlParser.CHAIN:
+ case SqlParser.CHANGED:
+ case SqlParser.CHANNEL:
+ case SqlParser.CHECKSUM:
+ case SqlParser.PAGE_CHECKSUM:
+ case SqlParser.CIPHER:
+ case SqlParser.CLASS_ORIGIN:
+ case SqlParser.CLIENT:
+ case SqlParser.CLOSE:
+ case SqlParser.COALESCE:
+ case SqlParser.CODE:
+ case SqlParser.COLUMNS:
+ case SqlParser.COLUMN_FORMAT:
+ case SqlParser.COLUMN_NAME:
+ case SqlParser.COMMENT:
+ case SqlParser.COMMIT:
+ case SqlParser.COMPACT:
+ case SqlParser.COMPLETION:
+ case SqlParser.COMPRESSED:
+ case SqlParser.COMPRESSION:
+ case SqlParser.CONCURRENT:
+ case SqlParser.CONNECTION:
+ case SqlParser.CONSISTENT:
+ case SqlParser.CONSTRAINT_CATALOG:
+ case SqlParser.CONSTRAINT_SCHEMA:
+ case SqlParser.CONSTRAINT_NAME:
+ case SqlParser.CONTAINS:
+ case SqlParser.CONTEXT:
+ case SqlParser.CONTRIBUTORS:
+ case SqlParser.COPY:
+ case SqlParser.CPU:
+ case SqlParser.CURSOR_NAME:
+ case SqlParser.DATA:
+ case SqlParser.DATAFILE:
+ case SqlParser.DEALLOCATE:
+ case SqlParser.DEFAULT_AUTH:
+ case SqlParser.DEFINER:
+ case SqlParser.DELAY_KEY_WRITE:
+ case SqlParser.DES_KEY_FILE:
+ case SqlParser.DIRECTORY:
+ case SqlParser.DISABLE:
+ case SqlParser.DISCARD:
+ case SqlParser.DISK:
+ case SqlParser.DO:
+ case SqlParser.DUMPFILE:
+ case SqlParser.DUPLICATE:
+ case SqlParser.DYNAMIC:
+ case SqlParser.ENABLE:
+ case SqlParser.ENCRYPTION:
+ case SqlParser.END:
+ case SqlParser.ENDS:
+ case SqlParser.ENGINE:
+ case SqlParser.ENGINES:
+ case SqlParser.ERROR:
+ case SqlParser.ERRORS:
+ case SqlParser.ESCAPE:
+ case SqlParser.EVEN:
+ case SqlParser.EVENT:
+ case SqlParser.EVENTS:
+ case SqlParser.EVERY:
+ case SqlParser.EXCHANGE:
+ case SqlParser.EXCLUSIVE:
+ case SqlParser.EXPIRE:
+ case SqlParser.EXPORT:
+ case SqlParser.EXTENDED:
+ case SqlParser.EXTENT_SIZE:
+ case SqlParser.FAST:
+ case SqlParser.FAULTS:
+ case SqlParser.FIELDS:
+ case SqlParser.FILE_BLOCK_SIZE:
+ case SqlParser.FILTER:
+ case SqlParser.FIRST:
+ case SqlParser.FIXED:
+ case SqlParser.FLUSH:
+ case SqlParser.FOLLOWS:
+ case SqlParser.FOUND:
+ case SqlParser.FULL:
+ case SqlParser.FUNCTION:
+ case SqlParser.GENERAL:
+ case SqlParser.GLOBAL:
+ case SqlParser.GRANTS:
+ case SqlParser.GROUP_REPLICATION:
+ case SqlParser.HANDLER:
+ case SqlParser.HASH:
+ case SqlParser.HELP:
+ case SqlParser.HOST:
+ case SqlParser.HOSTS:
+ case SqlParser.IDENTIFIED:
+ case SqlParser.IGNORE_SERVER_IDS:
+ case SqlParser.IMPORT:
+ case SqlParser.INDEXES:
+ case SqlParser.INITIAL_SIZE:
+ case SqlParser.INPLACE:
+ case SqlParser.INSERT_METHOD:
+ case SqlParser.INSTALL:
+ case SqlParser.INSTANCE:
+ case SqlParser.INVISIBLE:
+ case SqlParser.INVOKER:
+ case SqlParser.IO:
+ case SqlParser.IO_THREAD:
+ case SqlParser.IPC:
+ case SqlParser.ISOLATION:
+ case SqlParser.ISSUER:
+ case SqlParser.JSON:
+ case SqlParser.KEY_BLOCK_SIZE:
+ case SqlParser.LANGUAGE:
+ case SqlParser.LAST:
+ case SqlParser.LEAVES:
+ case SqlParser.LESS:
+ case SqlParser.LEVEL:
+ case SqlParser.LIST:
+ case SqlParser.LOCAL:
+ case SqlParser.LOGFILE:
+ case SqlParser.LOGS:
+ case SqlParser.MASTER:
+ case SqlParser.MASTER_AUTO_POSITION:
+ case SqlParser.MASTER_CONNECT_RETRY:
+ case SqlParser.MASTER_DELAY:
+ case SqlParser.MASTER_HEARTBEAT_PERIOD:
+ case SqlParser.MASTER_HOST:
+ case SqlParser.MASTER_LOG_FILE:
+ case SqlParser.MASTER_LOG_POS:
+ case SqlParser.MASTER_PASSWORD:
+ case SqlParser.MASTER_PORT:
+ case SqlParser.MASTER_RETRY_COUNT:
+ case SqlParser.MASTER_SSL:
+ case SqlParser.MASTER_SSL_CA:
+ case SqlParser.MASTER_SSL_CAPATH:
+ case SqlParser.MASTER_SSL_CERT:
+ case SqlParser.MASTER_SSL_CIPHER:
+ case SqlParser.MASTER_SSL_CRL:
+ case SqlParser.MASTER_SSL_CRLPATH:
+ case SqlParser.MASTER_SSL_KEY:
+ case SqlParser.MASTER_TLS_VERSION:
+ case SqlParser.MASTER_USER:
+ case SqlParser.MAX_CONNECTIONS_PER_HOUR:
+ case SqlParser.MAX_QUERIES_PER_HOUR:
+ case SqlParser.MAX_ROWS:
+ case SqlParser.MAX_SIZE:
+ case SqlParser.MAX_UPDATES_PER_HOUR:
+ case SqlParser.MAX_USER_CONNECTIONS:
+ case SqlParser.MEDIUM:
+ case SqlParser.MERGE:
+ case SqlParser.MESSAGE_TEXT:
+ case SqlParser.MID:
+ case SqlParser.MIGRATE:
+ case SqlParser.MIN_ROWS:
+ case SqlParser.MODE:
+ case SqlParser.MODIFY:
+ case SqlParser.MUTEX:
+ case SqlParser.MYSQL:
+ case SqlParser.MYSQL_ERRNO:
+ case SqlParser.NAME:
+ case SqlParser.NAMES:
+ case SqlParser.NCHAR:
+ case SqlParser.NEVER:
+ case SqlParser.NEXT:
+ case SqlParser.NO:
+ case SqlParser.NODEGROUP:
+ case SqlParser.NONE:
+ case SqlParser.OFFLINE:
+ case SqlParser.OFFSET:
+ case SqlParser.OJ:
+ case SqlParser.OLD_PASSWORD:
+ case SqlParser.ONE:
+ case SqlParser.ONLINE:
+ case SqlParser.ONLY:
+ case SqlParser.OPEN:
+ case SqlParser.OPTIMIZER_COSTS:
+ case SqlParser.OPTIONS:
+ case SqlParser.OWNER:
+ case SqlParser.PACK_KEYS:
+ case SqlParser.PAGE:
+ case SqlParser.PARSER:
+ case SqlParser.PARTIAL:
+ case SqlParser.PARTITIONING:
+ case SqlParser.PARTITIONS:
+ case SqlParser.PASSWORD:
+ case SqlParser.PHASE:
+ case SqlParser.PLUGIN:
+ case SqlParser.PLUGIN_DIR:
+ case SqlParser.PLUGINS:
+ case SqlParser.PORT:
+ case SqlParser.PRECEDES:
+ case SqlParser.PREPARE:
+ case SqlParser.PRESERVE:
+ case SqlParser.PREV:
+ case SqlParser.PROCESSLIST:
+ case SqlParser.PROFILE:
+ case SqlParser.PROFILES:
+ case SqlParser.PROXY:
+ case SqlParser.QUERY:
+ case SqlParser.QUICK:
+ case SqlParser.REBUILD:
+ case SqlParser.RECOVER:
+ case SqlParser.REDO_BUFFER_SIZE:
+ case SqlParser.REDUNDANT:
+ case SqlParser.RELAY:
+ case SqlParser.RELAY_LOG_FILE:
+ case SqlParser.RELAY_LOG_POS:
+ case SqlParser.RELAYLOG:
+ case SqlParser.REMOVE:
+ case SqlParser.REORGANIZE:
+ case SqlParser.REPAIR:
+ case SqlParser.REPLICATE_DO_DB:
+ case SqlParser.REPLICATE_DO_TABLE:
+ case SqlParser.REPLICATE_IGNORE_DB:
+ case SqlParser.REPLICATE_IGNORE_TABLE:
+ case SqlParser.REPLICATE_REWRITE_DB:
+ case SqlParser.REPLICATE_WILD_DO_TABLE:
+ case SqlParser.REPLICATE_WILD_IGNORE_TABLE:
+ case SqlParser.REPLICATION:
+ case SqlParser.RESET:
+ case SqlParser.RESUME:
+ case SqlParser.RETURNED_SQLSTATE:
+ case SqlParser.RETURNS:
+ case SqlParser.ROLE:
+ case SqlParser.ROLLBACK:
+ case SqlParser.ROLLUP:
+ case SqlParser.ROTATE:
+ case SqlParser.ROW:
+ case SqlParser.ROWS:
+ case SqlParser.ROW_FORMAT:
+ case SqlParser.SAVEPOINT:
+ case SqlParser.SCHEDULE:
+ case SqlParser.SECURITY:
+ case SqlParser.SERVER:
+ case SqlParser.SESSION:
+ case SqlParser.SHARE:
+ case SqlParser.SHARED:
+ case SqlParser.SIGNED:
+ case SqlParser.SIMPLE:
+ case SqlParser.SLAVE:
+ case SqlParser.SLOW:
+ case SqlParser.SNAPSHOT:
+ case SqlParser.SOCKET:
+ case SqlParser.SOME:
+ case SqlParser.SONAME:
+ case SqlParser.SOUNDS:
+ case SqlParser.SOURCE:
+ case SqlParser.SQL_AFTER_GTIDS:
+ case SqlParser.SQL_AFTER_MTS_GAPS:
+ case SqlParser.SQL_BEFORE_GTIDS:
+ case SqlParser.SQL_BUFFER_RESULT:
+ case SqlParser.SQL_CACHE:
+ case SqlParser.SQL_NO_CACHE:
+ case SqlParser.SQL_THREAD:
+ case SqlParser.START:
+ case SqlParser.STARTS:
+ case SqlParser.STATS_AUTO_RECALC:
+ case SqlParser.STATS_PERSISTENT:
+ case SqlParser.STATS_SAMPLE_PAGES:
+ case SqlParser.STATUS:
+ case SqlParser.STOP:
+ case SqlParser.STORAGE:
+ case SqlParser.STRING:
+ case SqlParser.SUBCLASS_ORIGIN:
+ case SqlParser.SUBJECT:
+ case SqlParser.SUBPARTITION:
+ case SqlParser.SUBPARTITIONS:
+ case SqlParser.SUSPEND:
+ case SqlParser.SWAPS:
+ case SqlParser.SWITCHES:
+ case SqlParser.TABLE_NAME:
+ case SqlParser.TABLESPACE:
+ case SqlParser.TEMPORARY:
+ case SqlParser.TEMPTABLE:
+ case SqlParser.THAN:
+ case SqlParser.TRADITIONAL:
+ case SqlParser.TRANSACTION:
+ case SqlParser.TRANSACTIONAL:
+ case SqlParser.TRIGGERS:
+ case SqlParser.TRUNCATE:
+ case SqlParser.UNDEFINED:
+ case SqlParser.UNDOFILE:
+ case SqlParser.UNDO_BUFFER_SIZE:
+ case SqlParser.UNINSTALL:
+ case SqlParser.UNKNOWN:
+ case SqlParser.UNTIL:
+ case SqlParser.UPGRADE:
+ case SqlParser.USER:
+ case SqlParser.USE_FRM:
+ case SqlParser.USER_RESOURCES:
+ case SqlParser.VALIDATION:
+ case SqlParser.VALUE:
+ case SqlParser.VARIABLES:
+ case SqlParser.VIEW:
+ case SqlParser.VISIBLE:
+ case SqlParser.WAIT:
+ case SqlParser.WARNINGS:
+ case SqlParser.WITHOUT:
+ case SqlParser.WORK:
+ case SqlParser.WRAPPER:
+ case SqlParser.X509:
+ case SqlParser.XA:
+ case SqlParser.XML:
+ case SqlParser.INTERNAL:
+ case SqlParser.QUARTER:
+ case SqlParser.MONTH:
+ case SqlParser.DAY:
+ case SqlParser.HOUR:
+ case SqlParser.MINUTE:
+ case SqlParser.WEEK:
+ case SqlParser.SECOND:
+ case SqlParser.MICROSECOND:
+ case SqlParser.TABLES:
+ case SqlParser.ROUTINE:
+ case SqlParser.EXECUTE:
+ case SqlParser.FILE:
+ case SqlParser.PROCESS:
+ case SqlParser.RELOAD:
+ case SqlParser.SHUTDOWN:
+ case SqlParser.SUPER:
+ case SqlParser.PRIVILEGES:
+ case SqlParser.AUDIT_ADMIN:
+ case SqlParser.BACKUP_ADMIN:
+ case SqlParser.BINLOG_ADMIN:
+ case SqlParser.BINLOG_ENCRYPTION_ADMIN:
+ case SqlParser.CLONE_ADMIN:
+ case SqlParser.CONNECTION_ADMIN:
+ case SqlParser.ENCRYPTION_KEY_ADMIN:
+ case SqlParser.FIREWALL_ADMIN:
+ case SqlParser.FIREWALL_USER:
+ case SqlParser.GROUP_REPLICATION_ADMIN:
+ case SqlParser.INNODB_REDO_LOG_ARCHIVE:
+ case SqlParser.NDB_STORED_USER:
+ case SqlParser.PERSIST_RO_VARIABLES_ADMIN:
+ case SqlParser.REPLICATION_APPLIER:
+ case SqlParser.REPLICATION_SLAVE_ADMIN:
+ case SqlParser.RESOURCE_GROUP_ADMIN:
+ case SqlParser.RESOURCE_GROUP_USER:
+ case SqlParser.ROLE_ADMIN:
+ case SqlParser.SESSION_VARIABLES_ADMIN:
+ case SqlParser.SET_USER_ID:
+ case SqlParser.SHOW_ROUTINE:
+ case SqlParser.SYSTEM_VARIABLES_ADMIN:
+ case SqlParser.TABLE_ENCRYPTION_ADMIN:
+ case SqlParser.VERSION_TOKEN_ADMIN:
+ case SqlParser.XA_RECOVER_ADMIN:
+ case SqlParser.ARMSCII8:
+ case SqlParser.ASCII:
+ case SqlParser.BIG5:
+ case SqlParser.CP1250:
+ case SqlParser.CP1251:
+ case SqlParser.CP1256:
+ case SqlParser.CP1257:
+ case SqlParser.CP850:
+ case SqlParser.CP852:
+ case SqlParser.CP866:
+ case SqlParser.CP932:
+ case SqlParser.DEC8:
+ case SqlParser.EUCJPMS:
+ case SqlParser.EUCKR:
+ case SqlParser.GB2312:
+ case SqlParser.GBK:
+ case SqlParser.GEOSTD8:
+ case SqlParser.GREEK:
+ case SqlParser.HEBREW:
+ case SqlParser.HP8:
+ case SqlParser.KEYBCS2:
+ case SqlParser.KOI8R:
+ case SqlParser.KOI8U:
+ case SqlParser.LATIN1:
+ case SqlParser.LATIN2:
+ case SqlParser.LATIN5:
+ case SqlParser.LATIN7:
+ case SqlParser.MACCE:
+ case SqlParser.MACROMAN:
+ case SqlParser.SJIS:
+ case SqlParser.SWE7:
+ case SqlParser.TIS620:
+ case SqlParser.UCS2:
+ case SqlParser.UJIS:
+ case SqlParser.UTF16:
+ case SqlParser.UTF16LE:
+ case SqlParser.UTF32:
+ case SqlParser.UTF8:
+ case SqlParser.UTF8MB3:
+ case SqlParser.UTF8MB4:
+ case SqlParser.ARCHIVE:
+ case SqlParser.BLACKHOLE:
+ case SqlParser.CSV:
+ case SqlParser.FEDERATED:
+ case SqlParser.INNODB:
+ case SqlParser.MEMORY:
+ case SqlParser.MRG_MYISAM:
+ case SqlParser.MYISAM:
+ case SqlParser.NDB:
+ case SqlParser.NDBCLUSTER:
+ case SqlParser.PERFORMANCE_SCHEMA:
+ case SqlParser.TOKUDB:
+ case SqlParser.REPEATABLE:
+ case SqlParser.COMMITTED:
+ case SqlParser.UNCOMMITTED:
+ case SqlParser.SERIALIZABLE:
+ case SqlParser.GEOMETRYCOLLECTION:
+ case SqlParser.LINESTRING:
+ case SqlParser.MULTILINESTRING:
+ case SqlParser.MULTIPOINT:
+ case SqlParser.MULTIPOLYGON:
+ case SqlParser.POINT:
+ case SqlParser.POLYGON:
+ case SqlParser.ABS:
+ case SqlParser.ACOS:
+ case SqlParser.ADDDATE:
+ case SqlParser.ADDTIME:
+ case SqlParser.AES_DECRYPT:
+ case SqlParser.AES_ENCRYPT:
+ case SqlParser.AREA:
+ case SqlParser.ASBINARY:
+ case SqlParser.ASIN:
+ case SqlParser.ASTEXT:
+ case SqlParser.ASWKB:
+ case SqlParser.ASWKT:
+ case SqlParser.ASYMMETRIC_DECRYPT:
+ case SqlParser.ASYMMETRIC_DERIVE:
+ case SqlParser.ASYMMETRIC_ENCRYPT:
+ case SqlParser.ASYMMETRIC_SIGN:
+ case SqlParser.ASYMMETRIC_VERIFY:
+ case SqlParser.ATAN:
+ case SqlParser.ATAN2:
+ case SqlParser.BENCHMARK:
+ case SqlParser.BIN:
+ case SqlParser.BIT_COUNT:
+ case SqlParser.BIT_LENGTH:
+ case SqlParser.BUFFER:
+ case SqlParser.CATALOG_NAME:
+ case SqlParser.CEIL:
+ case SqlParser.CEILING:
+ case SqlParser.CENTROID:
+ case SqlParser.CHARACTER_LENGTH:
+ case SqlParser.CHARSET:
+ case SqlParser.CHAR_LENGTH:
+ case SqlParser.COERCIBILITY:
+ case SqlParser.COLLATION:
+ case SqlParser.COMPRESS:
+ case SqlParser.CONCAT:
+ case SqlParser.CONCAT_WS:
+ case SqlParser.CONNECTION_ID:
+ case SqlParser.CONV:
+ case SqlParser.CONVERT_TZ:
+ case SqlParser.COS:
+ case SqlParser.COT:
+ case SqlParser.CRC32:
+ case SqlParser.CREATE_ASYMMETRIC_PRIV_KEY:
+ case SqlParser.CREATE_ASYMMETRIC_PUB_KEY:
+ case SqlParser.CREATE_DH_PARAMETERS:
+ case SqlParser.CREATE_DIGEST:
+ case SqlParser.CROSSES:
+ case SqlParser.DATEDIFF:
+ case SqlParser.DATE_FORMAT:
+ case SqlParser.DAYNAME:
+ case SqlParser.DAYOFMONTH:
+ case SqlParser.DAYOFWEEK:
+ case SqlParser.DAYOFYEAR:
+ case SqlParser.DECODE:
+ case SqlParser.DEGREES:
+ case SqlParser.DES_DECRYPT:
+ case SqlParser.DES_ENCRYPT:
+ case SqlParser.DIMENSION:
+ case SqlParser.DISJOINT:
+ case SqlParser.ELT:
+ case SqlParser.ENCODE:
+ case SqlParser.ENCRYPT:
+ case SqlParser.ENDPOINT:
+ case SqlParser.ENVELOPE:
+ case SqlParser.EQUALS:
+ case SqlParser.EXP:
+ case SqlParser.EXPORT_SET:
+ case SqlParser.EXTERIORRING:
+ case SqlParser.EXTRACTVALUE:
+ case SqlParser.FIELD:
+ case SqlParser.FIND_IN_SET:
+ case SqlParser.FLOOR:
+ case SqlParser.FORMAT:
+ case SqlParser.FOUND_ROWS:
+ case SqlParser.FROM_BASE64:
+ case SqlParser.FROM_DAYS:
+ case SqlParser.FROM_UNIXTIME:
+ case SqlParser.GEOMCOLLFROMTEXT:
+ case SqlParser.GEOMCOLLFROMWKB:
+ case SqlParser.GEOMETRYCOLLECTIONFROMTEXT:
+ case SqlParser.GEOMETRYCOLLECTIONFROMWKB:
+ case SqlParser.GEOMETRYFROMTEXT:
+ case SqlParser.GEOMETRYFROMWKB:
+ case SqlParser.GEOMETRYN:
+ case SqlParser.GEOMETRYTYPE:
+ case SqlParser.GEOMFROMTEXT:
+ case SqlParser.GEOMFROMWKB:
+ case SqlParser.GET_FORMAT:
+ case SqlParser.GET_LOCK:
+ case SqlParser.GLENGTH:
+ case SqlParser.GREATEST:
+ case SqlParser.GTID_SUBSET:
+ case SqlParser.GTID_SUBTRACT:
+ case SqlParser.HEX:
+ case SqlParser.IFNULL:
+ case SqlParser.INET6_ATON:
+ case SqlParser.INET6_NTOA:
+ case SqlParser.INET_ATON:
+ case SqlParser.INET_NTOA:
+ case SqlParser.INSTR:
+ case SqlParser.INTERIORRINGN:
+ case SqlParser.INTERSECTS:
+ case SqlParser.ISCLOSED:
+ case SqlParser.ISEMPTY:
+ case SqlParser.ISNULL:
+ case SqlParser.ISSIMPLE:
+ case SqlParser.IS_FREE_LOCK:
+ case SqlParser.IS_IPV4:
+ case SqlParser.IS_IPV4_COMPAT:
+ case SqlParser.IS_IPV4_MAPPED:
+ case SqlParser.IS_IPV6:
+ case SqlParser.IS_USED_LOCK:
+ case SqlParser.LAST_INSERT_ID:
+ case SqlParser.LCASE:
+ case SqlParser.LEAST:
+ case SqlParser.LENGTH:
+ case SqlParser.LINEFROMTEXT:
+ case SqlParser.LINEFROMWKB:
+ case SqlParser.LINESTRINGFROMTEXT:
+ case SqlParser.LINESTRINGFROMWKB:
+ case SqlParser.LN:
+ case SqlParser.LOAD_FILE:
+ case SqlParser.LOCATE:
+ case SqlParser.LOG:
+ case SqlParser.LOG10:
+ case SqlParser.LOG2:
+ case SqlParser.LOWER:
+ case SqlParser.LPAD:
+ case SqlParser.LTRIM:
+ case SqlParser.MAKEDATE:
+ case SqlParser.MAKETIME:
+ case SqlParser.MAKE_SET:
+ case SqlParser.MASTER_POS_WAIT:
+ case SqlParser.MBRCONTAINS:
+ case SqlParser.MBRDISJOINT:
+ case SqlParser.MBREQUAL:
+ case SqlParser.MBRINTERSECTS:
+ case SqlParser.MBROVERLAPS:
+ case SqlParser.MBRTOUCHES:
+ case SqlParser.MBRWITHIN:
+ case SqlParser.MD5:
+ case SqlParser.MLINEFROMTEXT:
+ case SqlParser.MLINEFROMWKB:
+ case SqlParser.MONTHNAME:
+ case SqlParser.MPOINTFROMTEXT:
+ case SqlParser.MPOINTFROMWKB:
+ case SqlParser.MPOLYFROMTEXT:
+ case SqlParser.MPOLYFROMWKB:
+ case SqlParser.MULTILINESTRINGFROMTEXT:
+ case SqlParser.MULTILINESTRINGFROMWKB:
+ case SqlParser.MULTIPOINTFROMTEXT:
+ case SqlParser.MULTIPOINTFROMWKB:
+ case SqlParser.MULTIPOLYGONFROMTEXT:
+ case SqlParser.MULTIPOLYGONFROMWKB:
+ case SqlParser.NAME_CONST:
+ case SqlParser.NULLIF:
+ case SqlParser.NUMGEOMETRIES:
+ case SqlParser.NUMINTERIORRINGS:
+ case SqlParser.NUMPOINTS:
+ case SqlParser.OCT:
+ case SqlParser.OCTET_LENGTH:
+ case SqlParser.ORD:
+ case SqlParser.OVERLAPS:
+ case SqlParser.PERIOD_ADD:
+ case SqlParser.PERIOD_DIFF:
+ case SqlParser.PI:
+ case SqlParser.POINTFROMTEXT:
+ case SqlParser.POINTFROMWKB:
+ case SqlParser.POINTN:
+ case SqlParser.POLYFROMTEXT:
+ case SqlParser.POLYFROMWKB:
+ case SqlParser.POLYGONFROMTEXT:
+ case SqlParser.POLYGONFROMWKB:
+ case SqlParser.POW:
+ case SqlParser.POWER:
+ case SqlParser.QUOTE:
+ case SqlParser.RADIANS:
+ case SqlParser.RAND:
+ case SqlParser.RANDOM_BYTES:
+ case SqlParser.RELEASE_LOCK:
+ case SqlParser.REVERSE:
+ case SqlParser.ROUND:
+ case SqlParser.ROW_COUNT:
+ case SqlParser.RPAD:
+ case SqlParser.RTRIM:
+ case SqlParser.SEC_TO_TIME:
+ case SqlParser.SESSION_USER:
+ case SqlParser.SHA:
+ case SqlParser.SHA1:
+ case SqlParser.SHA2:
+ case SqlParser.SCHEMA_NAME:
+ case SqlParser.SIGN:
+ case SqlParser.SIN:
+ case SqlParser.SLEEP:
+ case SqlParser.SOUNDEX:
+ case SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS:
+ case SqlParser.SQRT:
+ case SqlParser.SRID:
+ case SqlParser.STARTPOINT:
+ case SqlParser.STRCMP:
+ case SqlParser.STR_TO_DATE:
+ case SqlParser.ST_AREA:
+ case SqlParser.ST_ASBINARY:
+ case SqlParser.ST_ASTEXT:
+ case SqlParser.ST_ASWKB:
+ case SqlParser.ST_ASWKT:
+ case SqlParser.ST_BUFFER:
+ case SqlParser.ST_CENTROID:
+ case SqlParser.ST_CONTAINS:
+ case SqlParser.ST_CROSSES:
+ case SqlParser.ST_DIFFERENCE:
+ case SqlParser.ST_DIMENSION:
+ case SqlParser.ST_DISJOINT:
+ case SqlParser.ST_DISTANCE:
+ case SqlParser.ST_ENDPOINT:
+ case SqlParser.ST_ENVELOPE:
+ case SqlParser.ST_EQUALS:
+ case SqlParser.ST_EXTERIORRING:
+ case SqlParser.ST_GEOMCOLLFROMTEXT:
+ case SqlParser.ST_GEOMCOLLFROMTXT:
+ case SqlParser.ST_GEOMCOLLFROMWKB:
+ case SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT:
+ case SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB:
+ case SqlParser.ST_GEOMETRYFROMTEXT:
+ case SqlParser.ST_GEOMETRYFROMWKB:
+ case SqlParser.ST_GEOMETRYN:
+ case SqlParser.ST_GEOMETRYTYPE:
+ case SqlParser.ST_GEOMFROMTEXT:
+ case SqlParser.ST_GEOMFROMWKB:
+ case SqlParser.ST_INTERIORRINGN:
+ case SqlParser.ST_INTERSECTION:
+ case SqlParser.ST_INTERSECTS:
+ case SqlParser.ST_ISCLOSED:
+ case SqlParser.ST_ISEMPTY:
+ case SqlParser.ST_ISSIMPLE:
+ case SqlParser.ST_LINEFROMTEXT:
+ case SqlParser.ST_LINEFROMWKB:
+ case SqlParser.ST_LINESTRINGFROMTEXT:
+ case SqlParser.ST_LINESTRINGFROMWKB:
+ case SqlParser.ST_NUMGEOMETRIES:
+ case SqlParser.ST_NUMINTERIORRING:
+ case SqlParser.ST_NUMINTERIORRINGS:
+ case SqlParser.ST_NUMPOINTS:
+ case SqlParser.ST_OVERLAPS:
+ case SqlParser.ST_POINTFROMTEXT:
+ case SqlParser.ST_POINTFROMWKB:
+ case SqlParser.ST_POINTN:
+ case SqlParser.ST_POLYFROMTEXT:
+ case SqlParser.ST_POLYFROMWKB:
+ case SqlParser.ST_POLYGONFROMTEXT:
+ case SqlParser.ST_POLYGONFROMWKB:
+ case SqlParser.ST_SRID:
+ case SqlParser.ST_STARTPOINT:
+ case SqlParser.ST_SYMDIFFERENCE:
+ case SqlParser.ST_TOUCHES:
+ case SqlParser.ST_UNION:
+ case SqlParser.ST_WITHIN:
+ case SqlParser.ST_X:
+ case SqlParser.ST_Y:
+ case SqlParser.SUBDATE:
+ case SqlParser.SUBSTRING_INDEX:
+ case SqlParser.SUBTIME:
+ case SqlParser.SYSTEM_USER:
+ case SqlParser.TAN:
+ case SqlParser.TIMEDIFF:
+ case SqlParser.TIMESTAMPADD:
+ case SqlParser.TIMESTAMPDIFF:
+ case SqlParser.TIME_FORMAT:
+ case SqlParser.TIME_TO_SEC:
+ case SqlParser.TOUCHES:
+ case SqlParser.TO_BASE64:
+ case SqlParser.TO_DAYS:
+ case SqlParser.TO_SECONDS:
+ case SqlParser.UCASE:
+ case SqlParser.UNCOMPRESS:
+ case SqlParser.UNCOMPRESSED_LENGTH:
+ case SqlParser.UNHEX:
+ case SqlParser.UNIX_TIMESTAMP:
+ case SqlParser.UPDATEXML:
+ case SqlParser.UPPER:
+ case SqlParser.UUID:
+ case SqlParser.UUID_SHORT:
+ case SqlParser.VALIDATE_PASSWORD_STRENGTH:
+ case SqlParser.VERSION:
+ case SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS:
+ case SqlParser.WEEKDAY:
+ case SqlParser.WEEKOFYEAR:
+ case SqlParser.WEIGHT_STRING:
+ case SqlParser.WITHIN:
+ case SqlParser.YEARWEEK:
+ case SqlParser.Y_FUNCTION:
+ case SqlParser.X_FUNCTION:
+ case SqlParser.AT_SIGN:
+ case SqlParser.CHARSET_REVERSE_QOUTE_STRING:
+ case SqlParser.STRING_LITERAL:
+ case SqlParser.ID:
+ case SqlParser.REVERSE_QUOTE_ID:
+ case SqlParser.LOCAL_ID:
+ case SqlParser.GLOBAL_ID:
+ this.state = 5361;
+ this.variableClause();
+ this.state = 5362;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ this.state = 5363;
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.NUMBER || _la===SqlParser.ROW_COUNT)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 5371;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 5364;
+ this.match(SqlParser.COMMA);
+ this.state = 5365;
+ this.variableClause();
+ this.state = 5366;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ this.state = 5367;
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.NUMBER || _la===SqlParser.ROW_COUNT)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 5373;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+ case SqlParser.CONDITION:
+ this.state = 5374;
+ this.match(SqlParser.CONDITION);
+ this.state = 5377;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.ZERO_DECIMAL:
+ case SqlParser.ONE_DECIMAL:
+ case SqlParser.TWO_DECIMAL:
+ case SqlParser.DECIMAL_LITERAL:
+ this.state = 5375;
+ this.decimalLiteral();
+ break;
+ case SqlParser.CURRENT:
+ case SqlParser.DATABASE:
+ case SqlParser.DIAGNOSTICS:
+ case SqlParser.LEFT:
+ case SqlParser.NUMBER:
+ case SqlParser.RIGHT:
+ case SqlParser.STACKED:
+ case SqlParser.DATE:
+ case SqlParser.TIME:
+ case SqlParser.TIMESTAMP:
+ case SqlParser.DATETIME:
+ case SqlParser.YEAR:
+ case SqlParser.TEXT:
+ case SqlParser.ENUM:
+ case SqlParser.SERIAL:
+ case SqlParser.JSON_VALID:
+ case SqlParser.JSON_SCHEMA_VALID:
+ case SqlParser.COUNT:
+ case SqlParser.POSITION:
+ case SqlParser.ACCOUNT:
+ case SqlParser.ACTION:
+ case SqlParser.AFTER:
+ case SqlParser.AGGREGATE:
+ case SqlParser.ALGORITHM:
+ case SqlParser.ANY:
+ case SqlParser.AT:
+ case SqlParser.AUTHORS:
+ case SqlParser.AUTOCOMMIT:
+ case SqlParser.AUTOEXTEND_SIZE:
+ case SqlParser.AUTO_INCREMENT:
+ case SqlParser.AVG_ROW_LENGTH:
+ case SqlParser.BEGIN:
+ case SqlParser.BINLOG:
+ case SqlParser.BIT:
+ case SqlParser.BLOCK:
+ case SqlParser.BOOL:
+ case SqlParser.BOOLEAN:
+ case SqlParser.BTREE:
+ case SqlParser.CACHE:
+ case SqlParser.CASCADED:
+ case SqlParser.CHAIN:
+ case SqlParser.CHANGED:
+ case SqlParser.CHANNEL:
+ case SqlParser.CHECKSUM:
+ case SqlParser.PAGE_CHECKSUM:
+ case SqlParser.CIPHER:
+ case SqlParser.CLASS_ORIGIN:
+ case SqlParser.CLIENT:
+ case SqlParser.CLOSE:
+ case SqlParser.COALESCE:
+ case SqlParser.CODE:
+ case SqlParser.COLUMNS:
+ case SqlParser.COLUMN_FORMAT:
+ case SqlParser.COLUMN_NAME:
+ case SqlParser.COMMENT:
+ case SqlParser.COMMIT:
+ case SqlParser.COMPACT:
+ case SqlParser.COMPLETION:
+ case SqlParser.COMPRESSED:
+ case SqlParser.COMPRESSION:
+ case SqlParser.CONCURRENT:
+ case SqlParser.CONNECTION:
+ case SqlParser.CONSISTENT:
+ case SqlParser.CONSTRAINT_CATALOG:
+ case SqlParser.CONSTRAINT_SCHEMA:
+ case SqlParser.CONSTRAINT_NAME:
+ case SqlParser.CONTAINS:
+ case SqlParser.CONTEXT:
+ case SqlParser.CONTRIBUTORS:
+ case SqlParser.COPY:
+ case SqlParser.CPU:
+ case SqlParser.CURSOR_NAME:
+ case SqlParser.DATA:
+ case SqlParser.DATAFILE:
+ case SqlParser.DEALLOCATE:
+ case SqlParser.DEFAULT_AUTH:
+ case SqlParser.DEFINER:
+ case SqlParser.DELAY_KEY_WRITE:
+ case SqlParser.DES_KEY_FILE:
+ case SqlParser.DIRECTORY:
+ case SqlParser.DISABLE:
+ case SqlParser.DISCARD:
+ case SqlParser.DISK:
+ case SqlParser.DO:
+ case SqlParser.DUMPFILE:
+ case SqlParser.DUPLICATE:
+ case SqlParser.DYNAMIC:
+ case SqlParser.ENABLE:
+ case SqlParser.ENCRYPTION:
+ case SqlParser.END:
+ case SqlParser.ENDS:
+ case SqlParser.ENGINE:
+ case SqlParser.ENGINES:
+ case SqlParser.ERROR:
+ case SqlParser.ERRORS:
+ case SqlParser.ESCAPE:
+ case SqlParser.EVEN:
+ case SqlParser.EVENT:
+ case SqlParser.EVENTS:
+ case SqlParser.EVERY:
+ case SqlParser.EXCHANGE:
+ case SqlParser.EXCLUSIVE:
+ case SqlParser.EXPIRE:
+ case SqlParser.EXPORT:
+ case SqlParser.EXTENDED:
+ case SqlParser.EXTENT_SIZE:
+ case SqlParser.FAST:
+ case SqlParser.FAULTS:
+ case SqlParser.FIELDS:
+ case SqlParser.FILE_BLOCK_SIZE:
+ case SqlParser.FILTER:
+ case SqlParser.FIRST:
+ case SqlParser.FIXED:
+ case SqlParser.FLUSH:
+ case SqlParser.FOLLOWS:
+ case SqlParser.FOUND:
+ case SqlParser.FULL:
+ case SqlParser.FUNCTION:
+ case SqlParser.GENERAL:
+ case SqlParser.GLOBAL:
+ case SqlParser.GRANTS:
+ case SqlParser.GROUP_REPLICATION:
+ case SqlParser.HANDLER:
+ case SqlParser.HASH:
+ case SqlParser.HELP:
+ case SqlParser.HOST:
+ case SqlParser.HOSTS:
+ case SqlParser.IDENTIFIED:
+ case SqlParser.IGNORE_SERVER_IDS:
+ case SqlParser.IMPORT:
+ case SqlParser.INDEXES:
+ case SqlParser.INITIAL_SIZE:
+ case SqlParser.INPLACE:
+ case SqlParser.INSERT_METHOD:
+ case SqlParser.INSTALL:
+ case SqlParser.INSTANCE:
+ case SqlParser.INVISIBLE:
+ case SqlParser.INVOKER:
+ case SqlParser.IO:
+ case SqlParser.IO_THREAD:
+ case SqlParser.IPC:
+ case SqlParser.ISOLATION:
+ case SqlParser.ISSUER:
+ case SqlParser.JSON:
+ case SqlParser.KEY_BLOCK_SIZE:
+ case SqlParser.LANGUAGE:
+ case SqlParser.LAST:
+ case SqlParser.LEAVES:
+ case SqlParser.LESS:
+ case SqlParser.LEVEL:
+ case SqlParser.LIST:
+ case SqlParser.LOCAL:
+ case SqlParser.LOGFILE:
+ case SqlParser.LOGS:
+ case SqlParser.MASTER:
+ case SqlParser.MASTER_AUTO_POSITION:
+ case SqlParser.MASTER_CONNECT_RETRY:
+ case SqlParser.MASTER_DELAY:
+ case SqlParser.MASTER_HEARTBEAT_PERIOD:
+ case SqlParser.MASTER_HOST:
+ case SqlParser.MASTER_LOG_FILE:
+ case SqlParser.MASTER_LOG_POS:
+ case SqlParser.MASTER_PASSWORD:
+ case SqlParser.MASTER_PORT:
+ case SqlParser.MASTER_RETRY_COUNT:
+ case SqlParser.MASTER_SSL:
+ case SqlParser.MASTER_SSL_CA:
+ case SqlParser.MASTER_SSL_CAPATH:
+ case SqlParser.MASTER_SSL_CERT:
+ case SqlParser.MASTER_SSL_CIPHER:
+ case SqlParser.MASTER_SSL_CRL:
+ case SqlParser.MASTER_SSL_CRLPATH:
+ case SqlParser.MASTER_SSL_KEY:
+ case SqlParser.MASTER_TLS_VERSION:
+ case SqlParser.MASTER_USER:
+ case SqlParser.MAX_CONNECTIONS_PER_HOUR:
+ case SqlParser.MAX_QUERIES_PER_HOUR:
+ case SqlParser.MAX_ROWS:
+ case SqlParser.MAX_SIZE:
+ case SqlParser.MAX_UPDATES_PER_HOUR:
+ case SqlParser.MAX_USER_CONNECTIONS:
+ case SqlParser.MEDIUM:
+ case SqlParser.MERGE:
+ case SqlParser.MESSAGE_TEXT:
+ case SqlParser.MID:
+ case SqlParser.MIGRATE:
+ case SqlParser.MIN_ROWS:
+ case SqlParser.MODE:
+ case SqlParser.MODIFY:
+ case SqlParser.MUTEX:
+ case SqlParser.MYSQL:
+ case SqlParser.MYSQL_ERRNO:
+ case SqlParser.NAME:
+ case SqlParser.NAMES:
+ case SqlParser.NCHAR:
+ case SqlParser.NEVER:
+ case SqlParser.NEXT:
+ case SqlParser.NO:
+ case SqlParser.NODEGROUP:
+ case SqlParser.NONE:
+ case SqlParser.OFFLINE:
+ case SqlParser.OFFSET:
+ case SqlParser.OJ:
+ case SqlParser.OLD_PASSWORD:
+ case SqlParser.ONE:
+ case SqlParser.ONLINE:
+ case SqlParser.ONLY:
+ case SqlParser.OPEN:
+ case SqlParser.OPTIMIZER_COSTS:
+ case SqlParser.OPTIONS:
+ case SqlParser.OWNER:
+ case SqlParser.PACK_KEYS:
+ case SqlParser.PAGE:
+ case SqlParser.PARSER:
+ case SqlParser.PARTIAL:
+ case SqlParser.PARTITIONING:
+ case SqlParser.PARTITIONS:
+ case SqlParser.PASSWORD:
+ case SqlParser.PHASE:
+ case SqlParser.PLUGIN:
+ case SqlParser.PLUGIN_DIR:
+ case SqlParser.PLUGINS:
+ case SqlParser.PORT:
+ case SqlParser.PRECEDES:
+ case SqlParser.PREPARE:
+ case SqlParser.PRESERVE:
+ case SqlParser.PREV:
+ case SqlParser.PROCESSLIST:
+ case SqlParser.PROFILE:
+ case SqlParser.PROFILES:
+ case SqlParser.PROXY:
+ case SqlParser.QUERY:
+ case SqlParser.QUICK:
+ case SqlParser.REBUILD:
+ case SqlParser.RECOVER:
+ case SqlParser.REDO_BUFFER_SIZE:
+ case SqlParser.REDUNDANT:
+ case SqlParser.RELAY:
+ case SqlParser.RELAY_LOG_FILE:
+ case SqlParser.RELAY_LOG_POS:
+ case SqlParser.RELAYLOG:
+ case SqlParser.REMOVE:
+ case SqlParser.REORGANIZE:
+ case SqlParser.REPAIR:
+ case SqlParser.REPLICATE_DO_DB:
+ case SqlParser.REPLICATE_DO_TABLE:
+ case SqlParser.REPLICATE_IGNORE_DB:
+ case SqlParser.REPLICATE_IGNORE_TABLE:
+ case SqlParser.REPLICATE_REWRITE_DB:
+ case SqlParser.REPLICATE_WILD_DO_TABLE:
+ case SqlParser.REPLICATE_WILD_IGNORE_TABLE:
+ case SqlParser.REPLICATION:
+ case SqlParser.RESET:
+ case SqlParser.RESUME:
+ case SqlParser.RETURNED_SQLSTATE:
+ case SqlParser.RETURNS:
+ case SqlParser.ROLE:
+ case SqlParser.ROLLBACK:
+ case SqlParser.ROLLUP:
+ case SqlParser.ROTATE:
+ case SqlParser.ROW:
+ case SqlParser.ROWS:
+ case SqlParser.ROW_FORMAT:
+ case SqlParser.SAVEPOINT:
+ case SqlParser.SCHEDULE:
+ case SqlParser.SECURITY:
+ case SqlParser.SERVER:
+ case SqlParser.SESSION:
+ case SqlParser.SHARE:
+ case SqlParser.SHARED:
+ case SqlParser.SIGNED:
+ case SqlParser.SIMPLE:
+ case SqlParser.SLAVE:
+ case SqlParser.SLOW:
+ case SqlParser.SNAPSHOT:
+ case SqlParser.SOCKET:
+ case SqlParser.SOME:
+ case SqlParser.SONAME:
+ case SqlParser.SOUNDS:
+ case SqlParser.SOURCE:
+ case SqlParser.SQL_AFTER_GTIDS:
+ case SqlParser.SQL_AFTER_MTS_GAPS:
+ case SqlParser.SQL_BEFORE_GTIDS:
+ case SqlParser.SQL_BUFFER_RESULT:
+ case SqlParser.SQL_CACHE:
+ case SqlParser.SQL_NO_CACHE:
+ case SqlParser.SQL_THREAD:
+ case SqlParser.START:
+ case SqlParser.STARTS:
+ case SqlParser.STATS_AUTO_RECALC:
+ case SqlParser.STATS_PERSISTENT:
+ case SqlParser.STATS_SAMPLE_PAGES:
+ case SqlParser.STATUS:
+ case SqlParser.STOP:
+ case SqlParser.STORAGE:
+ case SqlParser.STRING:
+ case SqlParser.SUBCLASS_ORIGIN:
+ case SqlParser.SUBJECT:
+ case SqlParser.SUBPARTITION:
+ case SqlParser.SUBPARTITIONS:
+ case SqlParser.SUSPEND:
+ case SqlParser.SWAPS:
+ case SqlParser.SWITCHES:
+ case SqlParser.TABLE_NAME:
+ case SqlParser.TABLESPACE:
+ case SqlParser.TEMPORARY:
+ case SqlParser.TEMPTABLE:
+ case SqlParser.THAN:
+ case SqlParser.TRADITIONAL:
+ case SqlParser.TRANSACTION:
+ case SqlParser.TRANSACTIONAL:
+ case SqlParser.TRIGGERS:
+ case SqlParser.TRUNCATE:
+ case SqlParser.UNDEFINED:
+ case SqlParser.UNDOFILE:
+ case SqlParser.UNDO_BUFFER_SIZE:
+ case SqlParser.UNINSTALL:
+ case SqlParser.UNKNOWN:
+ case SqlParser.UNTIL:
+ case SqlParser.UPGRADE:
+ case SqlParser.USER:
+ case SqlParser.USE_FRM:
+ case SqlParser.USER_RESOURCES:
+ case SqlParser.VALIDATION:
+ case SqlParser.VALUE:
+ case SqlParser.VARIABLES:
+ case SqlParser.VIEW:
+ case SqlParser.VISIBLE:
+ case SqlParser.WAIT:
+ case SqlParser.WARNINGS:
+ case SqlParser.WITHOUT:
+ case SqlParser.WORK:
+ case SqlParser.WRAPPER:
+ case SqlParser.X509:
+ case SqlParser.XA:
+ case SqlParser.XML:
+ case SqlParser.INTERNAL:
+ case SqlParser.QUARTER:
+ case SqlParser.MONTH:
+ case SqlParser.DAY:
+ case SqlParser.HOUR:
+ case SqlParser.MINUTE:
+ case SqlParser.WEEK:
+ case SqlParser.SECOND:
+ case SqlParser.MICROSECOND:
+ case SqlParser.TABLES:
+ case SqlParser.ROUTINE:
+ case SqlParser.EXECUTE:
+ case SqlParser.FILE:
+ case SqlParser.PROCESS:
+ case SqlParser.RELOAD:
+ case SqlParser.SHUTDOWN:
+ case SqlParser.SUPER:
+ case SqlParser.PRIVILEGES:
+ case SqlParser.AUDIT_ADMIN:
+ case SqlParser.BACKUP_ADMIN:
+ case SqlParser.BINLOG_ADMIN:
+ case SqlParser.BINLOG_ENCRYPTION_ADMIN:
+ case SqlParser.CLONE_ADMIN:
+ case SqlParser.CONNECTION_ADMIN:
+ case SqlParser.ENCRYPTION_KEY_ADMIN:
+ case SqlParser.FIREWALL_ADMIN:
+ case SqlParser.FIREWALL_USER:
+ case SqlParser.GROUP_REPLICATION_ADMIN:
+ case SqlParser.INNODB_REDO_LOG_ARCHIVE:
+ case SqlParser.NDB_STORED_USER:
+ case SqlParser.PERSIST_RO_VARIABLES_ADMIN:
+ case SqlParser.REPLICATION_APPLIER:
+ case SqlParser.REPLICATION_SLAVE_ADMIN:
+ case SqlParser.RESOURCE_GROUP_ADMIN:
+ case SqlParser.RESOURCE_GROUP_USER:
+ case SqlParser.ROLE_ADMIN:
+ case SqlParser.SESSION_VARIABLES_ADMIN:
+ case SqlParser.SET_USER_ID:
+ case SqlParser.SHOW_ROUTINE:
+ case SqlParser.SYSTEM_VARIABLES_ADMIN:
+ case SqlParser.TABLE_ENCRYPTION_ADMIN:
+ case SqlParser.VERSION_TOKEN_ADMIN:
+ case SqlParser.XA_RECOVER_ADMIN:
+ case SqlParser.ARMSCII8:
+ case SqlParser.ASCII:
+ case SqlParser.BIG5:
+ case SqlParser.CP1250:
+ case SqlParser.CP1251:
+ case SqlParser.CP1256:
+ case SqlParser.CP1257:
+ case SqlParser.CP850:
+ case SqlParser.CP852:
+ case SqlParser.CP866:
+ case SqlParser.CP932:
+ case SqlParser.DEC8:
+ case SqlParser.EUCJPMS:
+ case SqlParser.EUCKR:
+ case SqlParser.GB2312:
+ case SqlParser.GBK:
+ case SqlParser.GEOSTD8:
+ case SqlParser.GREEK:
+ case SqlParser.HEBREW:
+ case SqlParser.HP8:
+ case SqlParser.KEYBCS2:
+ case SqlParser.KOI8R:
+ case SqlParser.KOI8U:
+ case SqlParser.LATIN1:
+ case SqlParser.LATIN2:
+ case SqlParser.LATIN5:
+ case SqlParser.LATIN7:
+ case SqlParser.MACCE:
+ case SqlParser.MACROMAN:
+ case SqlParser.SJIS:
+ case SqlParser.SWE7:
+ case SqlParser.TIS620:
+ case SqlParser.UCS2:
+ case SqlParser.UJIS:
+ case SqlParser.UTF16:
+ case SqlParser.UTF16LE:
+ case SqlParser.UTF32:
+ case SqlParser.UTF8:
+ case SqlParser.UTF8MB3:
+ case SqlParser.UTF8MB4:
+ case SqlParser.ARCHIVE:
+ case SqlParser.BLACKHOLE:
+ case SqlParser.CSV:
+ case SqlParser.FEDERATED:
+ case SqlParser.INNODB:
+ case SqlParser.MEMORY:
+ case SqlParser.MRG_MYISAM:
+ case SqlParser.MYISAM:
+ case SqlParser.NDB:
+ case SqlParser.NDBCLUSTER:
+ case SqlParser.PERFORMANCE_SCHEMA:
+ case SqlParser.TOKUDB:
+ case SqlParser.REPEATABLE:
+ case SqlParser.COMMITTED:
+ case SqlParser.UNCOMMITTED:
+ case SqlParser.SERIALIZABLE:
+ case SqlParser.GEOMETRYCOLLECTION:
+ case SqlParser.LINESTRING:
+ case SqlParser.MULTILINESTRING:
+ case SqlParser.MULTIPOINT:
+ case SqlParser.MULTIPOLYGON:
+ case SqlParser.POINT:
+ case SqlParser.POLYGON:
+ case SqlParser.ABS:
+ case SqlParser.ACOS:
+ case SqlParser.ADDDATE:
+ case SqlParser.ADDTIME:
+ case SqlParser.AES_DECRYPT:
+ case SqlParser.AES_ENCRYPT:
+ case SqlParser.AREA:
+ case SqlParser.ASBINARY:
+ case SqlParser.ASIN:
+ case SqlParser.ASTEXT:
+ case SqlParser.ASWKB:
+ case SqlParser.ASWKT:
+ case SqlParser.ASYMMETRIC_DECRYPT:
+ case SqlParser.ASYMMETRIC_DERIVE:
+ case SqlParser.ASYMMETRIC_ENCRYPT:
+ case SqlParser.ASYMMETRIC_SIGN:
+ case SqlParser.ASYMMETRIC_VERIFY:
+ case SqlParser.ATAN:
+ case SqlParser.ATAN2:
+ case SqlParser.BENCHMARK:
+ case SqlParser.BIN:
+ case SqlParser.BIT_COUNT:
+ case SqlParser.BIT_LENGTH:
+ case SqlParser.BUFFER:
+ case SqlParser.CATALOG_NAME:
+ case SqlParser.CEIL:
+ case SqlParser.CEILING:
+ case SqlParser.CENTROID:
+ case SqlParser.CHARACTER_LENGTH:
+ case SqlParser.CHARSET:
+ case SqlParser.CHAR_LENGTH:
+ case SqlParser.COERCIBILITY:
+ case SqlParser.COLLATION:
+ case SqlParser.COMPRESS:
+ case SqlParser.CONCAT:
+ case SqlParser.CONCAT_WS:
+ case SqlParser.CONNECTION_ID:
+ case SqlParser.CONV:
+ case SqlParser.CONVERT_TZ:
+ case SqlParser.COS:
+ case SqlParser.COT:
+ case SqlParser.CRC32:
+ case SqlParser.CREATE_ASYMMETRIC_PRIV_KEY:
+ case SqlParser.CREATE_ASYMMETRIC_PUB_KEY:
+ case SqlParser.CREATE_DH_PARAMETERS:
+ case SqlParser.CREATE_DIGEST:
+ case SqlParser.CROSSES:
+ case SqlParser.DATEDIFF:
+ case SqlParser.DATE_FORMAT:
+ case SqlParser.DAYNAME:
+ case SqlParser.DAYOFMONTH:
+ case SqlParser.DAYOFWEEK:
+ case SqlParser.DAYOFYEAR:
+ case SqlParser.DECODE:
+ case SqlParser.DEGREES:
+ case SqlParser.DES_DECRYPT:
+ case SqlParser.DES_ENCRYPT:
+ case SqlParser.DIMENSION:
+ case SqlParser.DISJOINT:
+ case SqlParser.ELT:
+ case SqlParser.ENCODE:
+ case SqlParser.ENCRYPT:
+ case SqlParser.ENDPOINT:
+ case SqlParser.ENVELOPE:
+ case SqlParser.EQUALS:
+ case SqlParser.EXP:
+ case SqlParser.EXPORT_SET:
+ case SqlParser.EXTERIORRING:
+ case SqlParser.EXTRACTVALUE:
+ case SqlParser.FIELD:
+ case SqlParser.FIND_IN_SET:
+ case SqlParser.FLOOR:
+ case SqlParser.FORMAT:
+ case SqlParser.FOUND_ROWS:
+ case SqlParser.FROM_BASE64:
+ case SqlParser.FROM_DAYS:
+ case SqlParser.FROM_UNIXTIME:
+ case SqlParser.GEOMCOLLFROMTEXT:
+ case SqlParser.GEOMCOLLFROMWKB:
+ case SqlParser.GEOMETRYCOLLECTIONFROMTEXT:
+ case SqlParser.GEOMETRYCOLLECTIONFROMWKB:
+ case SqlParser.GEOMETRYFROMTEXT:
+ case SqlParser.GEOMETRYFROMWKB:
+ case SqlParser.GEOMETRYN:
+ case SqlParser.GEOMETRYTYPE:
+ case SqlParser.GEOMFROMTEXT:
+ case SqlParser.GEOMFROMWKB:
+ case SqlParser.GET_FORMAT:
+ case SqlParser.GET_LOCK:
+ case SqlParser.GLENGTH:
+ case SqlParser.GREATEST:
+ case SqlParser.GTID_SUBSET:
+ case SqlParser.GTID_SUBTRACT:
+ case SqlParser.HEX:
+ case SqlParser.IFNULL:
+ case SqlParser.INET6_ATON:
+ case SqlParser.INET6_NTOA:
+ case SqlParser.INET_ATON:
+ case SqlParser.INET_NTOA:
+ case SqlParser.INSTR:
+ case SqlParser.INTERIORRINGN:
+ case SqlParser.INTERSECTS:
+ case SqlParser.ISCLOSED:
+ case SqlParser.ISEMPTY:
+ case SqlParser.ISNULL:
+ case SqlParser.ISSIMPLE:
+ case SqlParser.IS_FREE_LOCK:
+ case SqlParser.IS_IPV4:
+ case SqlParser.IS_IPV4_COMPAT:
+ case SqlParser.IS_IPV4_MAPPED:
+ case SqlParser.IS_IPV6:
+ case SqlParser.IS_USED_LOCK:
+ case SqlParser.LAST_INSERT_ID:
+ case SqlParser.LCASE:
+ case SqlParser.LEAST:
+ case SqlParser.LENGTH:
+ case SqlParser.LINEFROMTEXT:
+ case SqlParser.LINEFROMWKB:
+ case SqlParser.LINESTRINGFROMTEXT:
+ case SqlParser.LINESTRINGFROMWKB:
+ case SqlParser.LN:
+ case SqlParser.LOAD_FILE:
+ case SqlParser.LOCATE:
+ case SqlParser.LOG:
+ case SqlParser.LOG10:
+ case SqlParser.LOG2:
+ case SqlParser.LOWER:
+ case SqlParser.LPAD:
+ case SqlParser.LTRIM:
+ case SqlParser.MAKEDATE:
+ case SqlParser.MAKETIME:
+ case SqlParser.MAKE_SET:
+ case SqlParser.MASTER_POS_WAIT:
+ case SqlParser.MBRCONTAINS:
+ case SqlParser.MBRDISJOINT:
+ case SqlParser.MBREQUAL:
+ case SqlParser.MBRINTERSECTS:
+ case SqlParser.MBROVERLAPS:
+ case SqlParser.MBRTOUCHES:
+ case SqlParser.MBRWITHIN:
+ case SqlParser.MD5:
+ case SqlParser.MLINEFROMTEXT:
+ case SqlParser.MLINEFROMWKB:
+ case SqlParser.MONTHNAME:
+ case SqlParser.MPOINTFROMTEXT:
+ case SqlParser.MPOINTFROMWKB:
+ case SqlParser.MPOLYFROMTEXT:
+ case SqlParser.MPOLYFROMWKB:
+ case SqlParser.MULTILINESTRINGFROMTEXT:
+ case SqlParser.MULTILINESTRINGFROMWKB:
+ case SqlParser.MULTIPOINTFROMTEXT:
+ case SqlParser.MULTIPOINTFROMWKB:
+ case SqlParser.MULTIPOLYGONFROMTEXT:
+ case SqlParser.MULTIPOLYGONFROMWKB:
+ case SqlParser.NAME_CONST:
+ case SqlParser.NULLIF:
+ case SqlParser.NUMGEOMETRIES:
+ case SqlParser.NUMINTERIORRINGS:
+ case SqlParser.NUMPOINTS:
+ case SqlParser.OCT:
+ case SqlParser.OCTET_LENGTH:
+ case SqlParser.ORD:
+ case SqlParser.OVERLAPS:
+ case SqlParser.PERIOD_ADD:
+ case SqlParser.PERIOD_DIFF:
+ case SqlParser.PI:
+ case SqlParser.POINTFROMTEXT:
+ case SqlParser.POINTFROMWKB:
+ case SqlParser.POINTN:
+ case SqlParser.POLYFROMTEXT:
+ case SqlParser.POLYFROMWKB:
+ case SqlParser.POLYGONFROMTEXT:
+ case SqlParser.POLYGONFROMWKB:
+ case SqlParser.POW:
+ case SqlParser.POWER:
+ case SqlParser.QUOTE:
+ case SqlParser.RADIANS:
+ case SqlParser.RAND:
+ case SqlParser.RANDOM_BYTES:
+ case SqlParser.RELEASE_LOCK:
+ case SqlParser.REVERSE:
+ case SqlParser.ROUND:
+ case SqlParser.ROW_COUNT:
+ case SqlParser.RPAD:
+ case SqlParser.RTRIM:
+ case SqlParser.SEC_TO_TIME:
+ case SqlParser.SESSION_USER:
+ case SqlParser.SHA:
+ case SqlParser.SHA1:
+ case SqlParser.SHA2:
+ case SqlParser.SCHEMA_NAME:
+ case SqlParser.SIGN:
+ case SqlParser.SIN:
+ case SqlParser.SLEEP:
+ case SqlParser.SOUNDEX:
+ case SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS:
+ case SqlParser.SQRT:
+ case SqlParser.SRID:
+ case SqlParser.STARTPOINT:
+ case SqlParser.STRCMP:
+ case SqlParser.STR_TO_DATE:
+ case SqlParser.ST_AREA:
+ case SqlParser.ST_ASBINARY:
+ case SqlParser.ST_ASTEXT:
+ case SqlParser.ST_ASWKB:
+ case SqlParser.ST_ASWKT:
+ case SqlParser.ST_BUFFER:
+ case SqlParser.ST_CENTROID:
+ case SqlParser.ST_CONTAINS:
+ case SqlParser.ST_CROSSES:
+ case SqlParser.ST_DIFFERENCE:
+ case SqlParser.ST_DIMENSION:
+ case SqlParser.ST_DISJOINT:
+ case SqlParser.ST_DISTANCE:
+ case SqlParser.ST_ENDPOINT:
+ case SqlParser.ST_ENVELOPE:
+ case SqlParser.ST_EQUALS:
+ case SqlParser.ST_EXTERIORRING:
+ case SqlParser.ST_GEOMCOLLFROMTEXT:
+ case SqlParser.ST_GEOMCOLLFROMTXT:
+ case SqlParser.ST_GEOMCOLLFROMWKB:
+ case SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT:
+ case SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB:
+ case SqlParser.ST_GEOMETRYFROMTEXT:
+ case SqlParser.ST_GEOMETRYFROMWKB:
+ case SqlParser.ST_GEOMETRYN:
+ case SqlParser.ST_GEOMETRYTYPE:
+ case SqlParser.ST_GEOMFROMTEXT:
+ case SqlParser.ST_GEOMFROMWKB:
+ case SqlParser.ST_INTERIORRINGN:
+ case SqlParser.ST_INTERSECTION:
+ case SqlParser.ST_INTERSECTS:
+ case SqlParser.ST_ISCLOSED:
+ case SqlParser.ST_ISEMPTY:
+ case SqlParser.ST_ISSIMPLE:
+ case SqlParser.ST_LINEFROMTEXT:
+ case SqlParser.ST_LINEFROMWKB:
+ case SqlParser.ST_LINESTRINGFROMTEXT:
+ case SqlParser.ST_LINESTRINGFROMWKB:
+ case SqlParser.ST_NUMGEOMETRIES:
+ case SqlParser.ST_NUMINTERIORRING:
+ case SqlParser.ST_NUMINTERIORRINGS:
+ case SqlParser.ST_NUMPOINTS:
+ case SqlParser.ST_OVERLAPS:
+ case SqlParser.ST_POINTFROMTEXT:
+ case SqlParser.ST_POINTFROMWKB:
+ case SqlParser.ST_POINTN:
+ case SqlParser.ST_POLYFROMTEXT:
+ case SqlParser.ST_POLYFROMWKB:
+ case SqlParser.ST_POLYGONFROMTEXT:
+ case SqlParser.ST_POLYGONFROMWKB:
+ case SqlParser.ST_SRID:
+ case SqlParser.ST_STARTPOINT:
+ case SqlParser.ST_SYMDIFFERENCE:
+ case SqlParser.ST_TOUCHES:
+ case SqlParser.ST_UNION:
+ case SqlParser.ST_WITHIN:
+ case SqlParser.ST_X:
+ case SqlParser.ST_Y:
+ case SqlParser.SUBDATE:
+ case SqlParser.SUBSTRING_INDEX:
+ case SqlParser.SUBTIME:
+ case SqlParser.SYSTEM_USER:
+ case SqlParser.TAN:
+ case SqlParser.TIMEDIFF:
+ case SqlParser.TIMESTAMPADD:
+ case SqlParser.TIMESTAMPDIFF:
+ case SqlParser.TIME_FORMAT:
+ case SqlParser.TIME_TO_SEC:
+ case SqlParser.TOUCHES:
+ case SqlParser.TO_BASE64:
+ case SqlParser.TO_DAYS:
+ case SqlParser.TO_SECONDS:
+ case SqlParser.UCASE:
+ case SqlParser.UNCOMPRESS:
+ case SqlParser.UNCOMPRESSED_LENGTH:
+ case SqlParser.UNHEX:
+ case SqlParser.UNIX_TIMESTAMP:
+ case SqlParser.UPDATEXML:
+ case SqlParser.UPPER:
+ case SqlParser.UUID:
+ case SqlParser.UUID_SHORT:
+ case SqlParser.VALIDATE_PASSWORD_STRENGTH:
+ case SqlParser.VERSION:
+ case SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS:
+ case SqlParser.WEEKDAY:
+ case SqlParser.WEEKOFYEAR:
+ case SqlParser.WEIGHT_STRING:
+ case SqlParser.WITHIN:
+ case SqlParser.YEARWEEK:
+ case SqlParser.Y_FUNCTION:
+ case SqlParser.X_FUNCTION:
+ case SqlParser.AT_SIGN:
+ case SqlParser.CHARSET_REVERSE_QOUTE_STRING:
+ case SqlParser.STRING_LITERAL:
+ case SqlParser.ID:
+ case SqlParser.REVERSE_QUOTE_ID:
+ case SqlParser.LOCAL_ID:
+ case SqlParser.GLOBAL_ID:
+ this.state = 5376;
+ this.variableClause();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 5379;
+ this.variableClause();
+ this.state = 5380;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ this.state = 5381;
+ this.diagnosticsConditionInformationName();
+ this.state = 5389;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 5382;
+ this.match(SqlParser.COMMA);
+ this.state = 5383;
+ this.variableClause();
+ this.state = 5384;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ this.state = 5385;
+ this.diagnosticsConditionInformationName();
+ this.state = 5391;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function DiagnosticsConditionInformationNameContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_diagnosticsConditionInformationName;
+ return this;
+}
+
+DiagnosticsConditionInformationNameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+DiagnosticsConditionInformationNameContext.prototype.constructor = DiagnosticsConditionInformationNameContext;
+
+DiagnosticsConditionInformationNameContext.prototype.CLASS_ORIGIN = function() {
+ return this.getToken(SqlParser.CLASS_ORIGIN, 0);
+};
+
+DiagnosticsConditionInformationNameContext.prototype.SUBCLASS_ORIGIN = function() {
+ return this.getToken(SqlParser.SUBCLASS_ORIGIN, 0);
+};
+
+DiagnosticsConditionInformationNameContext.prototype.RETURNED_SQLSTATE = function() {
+ return this.getToken(SqlParser.RETURNED_SQLSTATE, 0);
+};
+
+DiagnosticsConditionInformationNameContext.prototype.MESSAGE_TEXT = function() {
+ return this.getToken(SqlParser.MESSAGE_TEXT, 0);
+};
+
+DiagnosticsConditionInformationNameContext.prototype.MYSQL_ERRNO = function() {
+ return this.getToken(SqlParser.MYSQL_ERRNO, 0);
+};
+
+DiagnosticsConditionInformationNameContext.prototype.CONSTRAINT_CATALOG = function() {
+ return this.getToken(SqlParser.CONSTRAINT_CATALOG, 0);
+};
+
+DiagnosticsConditionInformationNameContext.prototype.CONSTRAINT_SCHEMA = function() {
+ return this.getToken(SqlParser.CONSTRAINT_SCHEMA, 0);
+};
+
+DiagnosticsConditionInformationNameContext.prototype.CONSTRAINT_NAME = function() {
+ return this.getToken(SqlParser.CONSTRAINT_NAME, 0);
+};
+
+DiagnosticsConditionInformationNameContext.prototype.CATALOG_NAME = function() {
+ return this.getToken(SqlParser.CATALOG_NAME, 0);
+};
+
+DiagnosticsConditionInformationNameContext.prototype.SCHEMA_NAME = function() {
+ return this.getToken(SqlParser.SCHEMA_NAME, 0);
+};
+
+DiagnosticsConditionInformationNameContext.prototype.TABLE_NAME = function() {
+ return this.getToken(SqlParser.TABLE_NAME, 0);
+};
+
+DiagnosticsConditionInformationNameContext.prototype.COLUMN_NAME = function() {
+ return this.getToken(SqlParser.COLUMN_NAME, 0);
+};
+
+DiagnosticsConditionInformationNameContext.prototype.CURSOR_NAME = function() {
+ return this.getToken(SqlParser.CURSOR_NAME, 0);
+};
+
+DiagnosticsConditionInformationNameContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterDiagnosticsConditionInformationName(this);
+ }
+};
+
+DiagnosticsConditionInformationNameContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitDiagnosticsConditionInformationName(this);
+ }
+};
+
+DiagnosticsConditionInformationNameContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitDiagnosticsConditionInformationName(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.DiagnosticsConditionInformationNameContext = DiagnosticsConditionInformationNameContext;
+
+SqlParser.prototype.diagnosticsConditionInformationName = function() {
+
+ var localctx = new DiagnosticsConditionInformationNameContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 494, SqlParser.RULE_diagnosticsConditionInformationName);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5394;
+ _la = this._input.LA(1);
+ if(!(((((_la - 297)) & ~0x1f) == 0 && ((1 << (_la - 297)) & ((1 << (SqlParser.CLASS_ORIGIN - 297)) | (1 << (SqlParser.COLUMN_NAME - 297)) | (1 << (SqlParser.CONSTRAINT_CATALOG - 297)) | (1 << (SqlParser.CONSTRAINT_SCHEMA - 297)) | (1 << (SqlParser.CONSTRAINT_NAME - 297)) | (1 << (SqlParser.CURSOR_NAME - 297)))) !== 0) || _la===SqlParser.MESSAGE_TEXT || _la===SqlParser.MYSQL_ERRNO || _la===SqlParser.RETURNED_SQLSTATE || _la===SqlParser.SUBCLASS_ORIGIN || _la===SqlParser.TABLE_NAME || _la===SqlParser.CATALOG_NAME || _la===SqlParser.SCHEMA_NAME)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function DescribeObjectClauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_describeObjectClause;
+ return this;
+}
+
+DescribeObjectClauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+DescribeObjectClauseContext.prototype.constructor = DescribeObjectClauseContext;
+
+
+
+DescribeObjectClauseContext.prototype.copyFrom = function(ctx) {
+ antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx);
+};
+
+
+function DescribeStatementsContext(parser, ctx) {
+ DescribeObjectClauseContext.call(this, parser);
+ DescribeObjectClauseContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+DescribeStatementsContext.prototype = Object.create(DescribeObjectClauseContext.prototype);
+DescribeStatementsContext.prototype.constructor = DescribeStatementsContext;
+
+SqlParser.DescribeStatementsContext = DescribeStatementsContext;
+
+DescribeStatementsContext.prototype.selectStatement = function() {
+ return this.getTypedRuleContext(SelectStatementContext,0);
+};
+
+DescribeStatementsContext.prototype.deleteStatement = function() {
+ return this.getTypedRuleContext(DeleteStatementContext,0);
+};
+
+DescribeStatementsContext.prototype.insertStatement = function() {
+ return this.getTypedRuleContext(InsertStatementContext,0);
+};
+
+DescribeStatementsContext.prototype.replaceStatement = function() {
+ return this.getTypedRuleContext(ReplaceStatementContext,0);
+};
+
+DescribeStatementsContext.prototype.updateStatement = function() {
+ return this.getTypedRuleContext(UpdateStatementContext,0);
+};
+DescribeStatementsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterDescribeStatements(this);
+ }
+};
+
+DescribeStatementsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitDescribeStatements(this);
+ }
+};
+
+DescribeStatementsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitDescribeStatements(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function DescribeConnectionContext(parser, ctx) {
+ DescribeObjectClauseContext.call(this, parser);
+ DescribeObjectClauseContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+DescribeConnectionContext.prototype = Object.create(DescribeObjectClauseContext.prototype);
+DescribeConnectionContext.prototype.constructor = DescribeConnectionContext;
+
+SqlParser.DescribeConnectionContext = DescribeConnectionContext;
+
+DescribeConnectionContext.prototype.FOR = function() {
+ return this.getToken(SqlParser.FOR, 0);
+};
+
+DescribeConnectionContext.prototype.CONNECTION = function() {
+ return this.getToken(SqlParser.CONNECTION, 0);
+};
+
+DescribeConnectionContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+DescribeConnectionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterDescribeConnection(this);
+ }
+};
+
+DescribeConnectionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitDescribeConnection(this);
+ }
+};
+
+DescribeConnectionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitDescribeConnection(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+SqlParser.DescribeObjectClauseContext = DescribeObjectClauseContext;
+
+SqlParser.prototype.describeObjectClause = function() {
+
+ var localctx = new DescribeObjectClauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 496, SqlParser.RULE_describeObjectClause);
+ try {
+ this.state = 5406;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.DELETE:
+ case SqlParser.INSERT:
+ case SqlParser.REPLACE:
+ case SqlParser.SELECT:
+ case SqlParser.UPDATE:
+ case SqlParser.LR_BRACKET:
+ localctx = new DescribeStatementsContext(this, localctx);
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5401;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.SELECT:
+ case SqlParser.LR_BRACKET:
+ this.state = 5396;
+ this.selectStatement();
+ break;
+ case SqlParser.DELETE:
+ this.state = 5397;
+ this.deleteStatement();
+ break;
+ case SqlParser.INSERT:
+ this.state = 5398;
+ this.insertStatement();
+ break;
+ case SqlParser.REPLACE:
+ this.state = 5399;
+ this.replaceStatement();
+ break;
+ case SqlParser.UPDATE:
+ this.state = 5400;
+ this.updateStatement();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ break;
+ case SqlParser.FOR:
+ localctx = new DescribeConnectionContext(this, localctx);
+ this.enterOuterAlt(localctx, 2);
+ this.state = 5403;
+ this.match(SqlParser.FOR);
+ this.state = 5404;
+ this.match(SqlParser.CONNECTION);
+ this.state = 5405;
+ this.uid();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function FullIdContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_fullId;
+ return this;
+}
+
+FullIdContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+FullIdContext.prototype.constructor = FullIdContext;
+
+FullIdContext.prototype.uid = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UidContext);
+ } else {
+ return this.getTypedRuleContext(UidContext,i);
+ }
+};
+
+FullIdContext.prototype.DOT_ID = function() {
+ return this.getToken(SqlParser.DOT_ID, 0);
+};
+
+FullIdContext.prototype.DOT = function() {
+ return this.getToken(SqlParser.DOT, 0);
+};
+
+FullIdContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterFullId(this);
+ }
+};
+
+FullIdContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitFullId(this);
+ }
+};
+
+FullIdContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitFullId(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.FullIdContext = FullIdContext;
+
+SqlParser.prototype.fullId = function() {
+
+ var localctx = new FullIdContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 498, SqlParser.RULE_fullId);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5408;
+ this.uid();
+ this.state = 5412;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,780,this._ctx);
+ if(la_===1) {
+ this.state = 5409;
+ this.match(SqlParser.DOT_ID);
+
+ } else if(la_===2) {
+ this.state = 5410;
+ this.match(SqlParser.DOT);
+ this.state = 5411;
+ this.uid();
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function TableNameContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_tableName;
+ return this;
+}
+
+TableNameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+TableNameContext.prototype.constructor = TableNameContext;
+
+TableNameContext.prototype.fullId = function() {
+ return this.getTypedRuleContext(FullIdContext,0);
+};
+
+TableNameContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterTableName(this);
+ }
+};
+
+TableNameContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitTableName(this);
+ }
+};
+
+TableNameContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitTableName(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.TableNameContext = TableNameContext;
+
+SqlParser.prototype.tableName = function() {
+
+ var localctx = new TableNameContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 500, SqlParser.RULE_tableName);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5414;
+ this.fullId();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function FullColumnNameContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_fullColumnName;
+ return this;
+}
+
+FullColumnNameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+FullColumnNameContext.prototype.constructor = FullColumnNameContext;
+
+FullColumnNameContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+FullColumnNameContext.prototype.dottedId = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(DottedIdContext);
+ } else {
+ return this.getTypedRuleContext(DottedIdContext,i);
+ }
+};
+
+FullColumnNameContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterFullColumnName(this);
+ }
+};
+
+FullColumnNameContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitFullColumnName(this);
+ }
+};
+
+FullColumnNameContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitFullColumnName(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.FullColumnNameContext = FullColumnNameContext;
+
+SqlParser.prototype.fullColumnName = function() {
+
+ var localctx = new FullColumnNameContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 502, SqlParser.RULE_fullColumnName);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5416;
+ this.uid();
+ this.state = 5421;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,782,this._ctx);
+ if(la_===1) {
+ this.state = 5417;
+ this.dottedId();
+ this.state = 5419;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,781,this._ctx);
+ if(la_===1) {
+ this.state = 5418;
+ this.dottedId();
+
+ }
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function IndexColumnNameContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_indexColumnName;
+ this.sortType = null; // Token
+ return this;
+}
+
+IndexColumnNameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+IndexColumnNameContext.prototype.constructor = IndexColumnNameContext;
+
+IndexColumnNameContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+IndexColumnNameContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+IndexColumnNameContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+IndexColumnNameContext.prototype.decimalLiteral = function() {
+ return this.getTypedRuleContext(DecimalLiteralContext,0);
+};
+
+IndexColumnNameContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+IndexColumnNameContext.prototype.ASC = function() {
+ return this.getToken(SqlParser.ASC, 0);
+};
+
+IndexColumnNameContext.prototype.DESC = function() {
+ return this.getToken(SqlParser.DESC, 0);
+};
+
+IndexColumnNameContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterIndexColumnName(this);
+ }
+};
+
+IndexColumnNameContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitIndexColumnName(this);
+ }
+};
+
+IndexColumnNameContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitIndexColumnName(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.IndexColumnNameContext = IndexColumnNameContext;
+
+SqlParser.prototype.indexColumnName = function() {
+
+ var localctx = new IndexColumnNameContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 504, SqlParser.RULE_indexColumnName);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5425;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,783,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 5423;
+ this.uid();
+ break;
+
+ case 2:
+ this.state = 5424;
+ this.match(SqlParser.STRING_LITERAL);
+ break;
+
+ }
+ this.state = 5431;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.LR_BRACKET) {
+ this.state = 5427;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 5428;
+ this.decimalLiteral();
+ this.state = 5429;
+ this.match(SqlParser.RR_BRACKET);
+ }
+
+ this.state = 5434;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.ASC || _la===SqlParser.DESC) {
+ this.state = 5433;
+ localctx.sortType = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.ASC || _la===SqlParser.DESC)) {
+ localctx.sortType = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function UserNameContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_userName;
+ return this;
+}
+
+UserNameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+UserNameContext.prototype.constructor = UserNameContext;
+
+UserNameContext.prototype.STRING_USER_NAME = function() {
+ return this.getToken(SqlParser.STRING_USER_NAME, 0);
+};
+
+UserNameContext.prototype.ID = function() {
+ return this.getToken(SqlParser.ID, 0);
+};
+
+UserNameContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+UserNameContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterUserName(this);
+ }
+};
+
+UserNameContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitUserName(this);
+ }
+};
+
+UserNameContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitUserName(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.UserNameContext = UserNameContext;
+
+SqlParser.prototype.userName = function() {
+
+ var localctx = new UserNameContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 506, SqlParser.RULE_userName);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5436;
+ _la = this._input.LA(1);
+ if(!(((((_la - 1035)) & ~0x1f) == 0 && ((1 << (_la - 1035)) & ((1 << (SqlParser.STRING_LITERAL - 1035)) | (1 << (SqlParser.ID - 1035)) | (1 << (SqlParser.STRING_USER_NAME - 1035)))) !== 0))) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function MysqlVariableContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_mysqlVariable;
+ return this;
+}
+
+MysqlVariableContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+MysqlVariableContext.prototype.constructor = MysqlVariableContext;
+
+MysqlVariableContext.prototype.LOCAL_ID = function() {
+ return this.getToken(SqlParser.LOCAL_ID, 0);
+};
+
+MysqlVariableContext.prototype.GLOBAL_ID = function() {
+ return this.getToken(SqlParser.GLOBAL_ID, 0);
+};
+
+MysqlVariableContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterMysqlVariable(this);
+ }
+};
+
+MysqlVariableContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitMysqlVariable(this);
+ }
+};
+
+MysqlVariableContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitMysqlVariable(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.MysqlVariableContext = MysqlVariableContext;
+
+SqlParser.prototype.mysqlVariable = function() {
+
+ var localctx = new MysqlVariableContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 508, SqlParser.RULE_mysqlVariable);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5438;
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.LOCAL_ID || _la===SqlParser.GLOBAL_ID)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function CharsetNameContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_charsetName;
+ return this;
+}
+
+CharsetNameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+CharsetNameContext.prototype.constructor = CharsetNameContext;
+
+CharsetNameContext.prototype.BINARY = function() {
+ return this.getToken(SqlParser.BINARY, 0);
+};
+
+CharsetNameContext.prototype.charsetNameBase = function() {
+ return this.getTypedRuleContext(CharsetNameBaseContext,0);
+};
+
+CharsetNameContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+CharsetNameContext.prototype.CHARSET_REVERSE_QOUTE_STRING = function() {
+ return this.getToken(SqlParser.CHARSET_REVERSE_QOUTE_STRING, 0);
+};
+
+CharsetNameContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterCharsetName(this);
+ }
+};
+
+CharsetNameContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitCharsetName(this);
+ }
+};
+
+CharsetNameContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitCharsetName(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.CharsetNameContext = CharsetNameContext;
+
+SqlParser.prototype.charsetName = function() {
+
+ var localctx = new CharsetNameContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 510, SqlParser.RULE_charsetName);
+ try {
+ this.state = 5444;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.BINARY:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5440;
+ this.match(SqlParser.BINARY);
+ break;
+ case SqlParser.ARMSCII8:
+ case SqlParser.ASCII:
+ case SqlParser.BIG5:
+ case SqlParser.CP1250:
+ case SqlParser.CP1251:
+ case SqlParser.CP1256:
+ case SqlParser.CP1257:
+ case SqlParser.CP850:
+ case SqlParser.CP852:
+ case SqlParser.CP866:
+ case SqlParser.CP932:
+ case SqlParser.DEC8:
+ case SqlParser.EUCJPMS:
+ case SqlParser.EUCKR:
+ case SqlParser.GB2312:
+ case SqlParser.GBK:
+ case SqlParser.GEOSTD8:
+ case SqlParser.GREEK:
+ case SqlParser.HEBREW:
+ case SqlParser.HP8:
+ case SqlParser.KEYBCS2:
+ case SqlParser.KOI8R:
+ case SqlParser.KOI8U:
+ case SqlParser.LATIN1:
+ case SqlParser.LATIN2:
+ case SqlParser.LATIN5:
+ case SqlParser.LATIN7:
+ case SqlParser.MACCE:
+ case SqlParser.MACROMAN:
+ case SqlParser.SJIS:
+ case SqlParser.SWE7:
+ case SqlParser.TIS620:
+ case SqlParser.UCS2:
+ case SqlParser.UJIS:
+ case SqlParser.UTF16:
+ case SqlParser.UTF16LE:
+ case SqlParser.UTF32:
+ case SqlParser.UTF8:
+ case SqlParser.UTF8MB3:
+ case SqlParser.UTF8MB4:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 5441;
+ this.charsetNameBase();
+ break;
+ case SqlParser.STRING_LITERAL:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 5442;
+ this.match(SqlParser.STRING_LITERAL);
+ break;
+ case SqlParser.CHARSET_REVERSE_QOUTE_STRING:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 5443;
+ this.match(SqlParser.CHARSET_REVERSE_QOUTE_STRING);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function CollationNameContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_collationName;
+ return this;
+}
+
+CollationNameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+CollationNameContext.prototype.constructor = CollationNameContext;
+
+CollationNameContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+CollationNameContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+CollationNameContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterCollationName(this);
+ }
+};
+
+CollationNameContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitCollationName(this);
+ }
+};
+
+CollationNameContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitCollationName(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.CollationNameContext = CollationNameContext;
+
+SqlParser.prototype.collationName = function() {
+
+ var localctx = new CollationNameContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 512, SqlParser.RULE_collationName);
+ try {
+ this.state = 5448;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,787,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5446;
+ this.uid();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 5447;
+ this.match(SqlParser.STRING_LITERAL);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function EngineNameContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_engineName;
+ return this;
+}
+
+EngineNameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+EngineNameContext.prototype.constructor = EngineNameContext;
+
+EngineNameContext.prototype.ARCHIVE = function() {
+ return this.getToken(SqlParser.ARCHIVE, 0);
+};
+
+EngineNameContext.prototype.BLACKHOLE = function() {
+ return this.getToken(SqlParser.BLACKHOLE, 0);
+};
+
+EngineNameContext.prototype.CSV = function() {
+ return this.getToken(SqlParser.CSV, 0);
+};
+
+EngineNameContext.prototype.FEDERATED = function() {
+ return this.getToken(SqlParser.FEDERATED, 0);
+};
+
+EngineNameContext.prototype.INNODB = function() {
+ return this.getToken(SqlParser.INNODB, 0);
+};
+
+EngineNameContext.prototype.MEMORY = function() {
+ return this.getToken(SqlParser.MEMORY, 0);
+};
+
+EngineNameContext.prototype.MRG_MYISAM = function() {
+ return this.getToken(SqlParser.MRG_MYISAM, 0);
+};
+
+EngineNameContext.prototype.MYISAM = function() {
+ return this.getToken(SqlParser.MYISAM, 0);
+};
+
+EngineNameContext.prototype.NDB = function() {
+ return this.getToken(SqlParser.NDB, 0);
+};
+
+EngineNameContext.prototype.NDBCLUSTER = function() {
+ return this.getToken(SqlParser.NDBCLUSTER, 0);
+};
+
+EngineNameContext.prototype.PERFORMANCE_SCHEMA = function() {
+ return this.getToken(SqlParser.PERFORMANCE_SCHEMA, 0);
+};
+
+EngineNameContext.prototype.TOKUDB = function() {
+ return this.getToken(SqlParser.TOKUDB, 0);
+};
+
+EngineNameContext.prototype.ID = function() {
+ return this.getToken(SqlParser.ID, 0);
+};
+
+EngineNameContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+EngineNameContext.prototype.REVERSE_QUOTE_ID = function() {
+ return this.getToken(SqlParser.REVERSE_QUOTE_ID, 0);
+};
+
+EngineNameContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterEngineName(this);
+ }
+};
+
+EngineNameContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitEngineName(this);
+ }
+};
+
+EngineNameContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitEngineName(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.EngineNameContext = EngineNameContext;
+
+SqlParser.prototype.engineName = function() {
+
+ var localctx = new EngineNameContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 514, SqlParser.RULE_engineName);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5450;
+ _la = this._input.LA(1);
+ if(!(((((_la - 677)) & ~0x1f) == 0 && ((1 << (_la - 677)) & ((1 << (SqlParser.ARCHIVE - 677)) | (1 << (SqlParser.BLACKHOLE - 677)) | (1 << (SqlParser.CSV - 677)) | (1 << (SqlParser.FEDERATED - 677)) | (1 << (SqlParser.INNODB - 677)) | (1 << (SqlParser.MEMORY - 677)) | (1 << (SqlParser.MRG_MYISAM - 677)) | (1 << (SqlParser.MYISAM - 677)) | (1 << (SqlParser.NDB - 677)) | (1 << (SqlParser.NDBCLUSTER - 677)) | (1 << (SqlParser.PERFORMANCE_SCHEMA - 677)) | (1 << (SqlParser.TOKUDB - 677)))) !== 0) || ((((_la - 1035)) & ~0x1f) == 0 && ((1 << (_la - 1035)) & ((1 << (SqlParser.STRING_LITERAL - 1035)) | (1 << (SqlParser.ID - 1035)) | (1 << (SqlParser.REVERSE_QUOTE_ID - 1035)))) !== 0))) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function UuidSetContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_uuidSet;
+ return this;
+}
+
+UuidSetContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+UuidSetContext.prototype.constructor = UuidSetContext;
+
+UuidSetContext.prototype.decimalLiteral = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(DecimalLiteralContext);
+ } else {
+ return this.getTypedRuleContext(DecimalLiteralContext,i);
+ }
+};
+
+UuidSetContext.prototype.MINUS = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.MINUS);
+ } else {
+ return this.getToken(SqlParser.MINUS, i);
+ }
+};
+
+
+UuidSetContext.prototype.COLON_SYMB = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COLON_SYMB);
+ } else {
+ return this.getToken(SqlParser.COLON_SYMB, i);
+ }
+};
+
+
+UuidSetContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterUuidSet(this);
+ }
+};
+
+UuidSetContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitUuidSet(this);
+ }
+};
+
+UuidSetContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitUuidSet(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.UuidSetContext = UuidSetContext;
+
+SqlParser.prototype.uuidSet = function() {
+
+ var localctx = new UuidSetContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 516, SqlParser.RULE_uuidSet);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5452;
+ this.decimalLiteral();
+ this.state = 5453;
+ this.match(SqlParser.MINUS);
+ this.state = 5454;
+ this.decimalLiteral();
+ this.state = 5455;
+ this.match(SqlParser.MINUS);
+ this.state = 5456;
+ this.decimalLiteral();
+ this.state = 5457;
+ this.match(SqlParser.MINUS);
+ this.state = 5458;
+ this.decimalLiteral();
+ this.state = 5459;
+ this.match(SqlParser.MINUS);
+ this.state = 5460;
+ this.decimalLiteral();
+ this.state = 5466;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 5461;
+ this.match(SqlParser.COLON_SYMB);
+ this.state = 5462;
+ this.decimalLiteral();
+ this.state = 5463;
+ this.match(SqlParser.MINUS);
+ this.state = 5464;
+ this.decimalLiteral();
+ this.state = 5468;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(_la===SqlParser.COLON_SYMB);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function XidContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_xid;
+ this.globalTableUid = null; // XuidStringIdContext
+ this.qualifier = null; // XuidStringIdContext
+ this.idFormat = null; // DecimalLiteralContext
+ return this;
+}
+
+XidContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+XidContext.prototype.constructor = XidContext;
+
+XidContext.prototype.xuidStringId = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(XuidStringIdContext);
+ } else {
+ return this.getTypedRuleContext(XuidStringIdContext,i);
+ }
+};
+
+XidContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+XidContext.prototype.decimalLiteral = function() {
+ return this.getTypedRuleContext(DecimalLiteralContext,0);
+};
+
+XidContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterXid(this);
+ }
+};
+
+XidContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitXid(this);
+ }
+};
+
+XidContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitXid(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.XidContext = XidContext;
+
+SqlParser.prototype.xid = function() {
+
+ var localctx = new XidContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 518, SqlParser.RULE_xid);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5470;
+ localctx.globalTableUid = this.xuidStringId();
+ this.state = 5477;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.COMMA) {
+ this.state = 5471;
+ this.match(SqlParser.COMMA);
+ this.state = 5472;
+ localctx.qualifier = this.xuidStringId();
+ this.state = 5475;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.COMMA) {
+ this.state = 5473;
+ this.match(SqlParser.COMMA);
+ this.state = 5474;
+ localctx.idFormat = this.decimalLiteral();
+ }
+
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function XuidStringIdContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_xuidStringId;
+ return this;
+}
+
+XuidStringIdContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+XuidStringIdContext.prototype.constructor = XuidStringIdContext;
+
+XuidStringIdContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+XuidStringIdContext.prototype.BIT_STRING = function() {
+ return this.getToken(SqlParser.BIT_STRING, 0);
+};
+
+XuidStringIdContext.prototype.HEXADECIMAL_LITERAL = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.HEXADECIMAL_LITERAL);
+ } else {
+ return this.getToken(SqlParser.HEXADECIMAL_LITERAL, i);
+ }
+};
+
+
+XuidStringIdContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterXuidStringId(this);
+ }
+};
+
+XuidStringIdContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitXuidStringId(this);
+ }
+};
+
+XuidStringIdContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitXuidStringId(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.XuidStringIdContext = XuidStringIdContext;
+
+SqlParser.prototype.xuidStringId = function() {
+
+ var localctx = new XuidStringIdContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 520, SqlParser.RULE_xuidStringId);
+ var _la = 0; // Token type
+ try {
+ this.state = 5486;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.STRING_LITERAL:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5479;
+ this.match(SqlParser.STRING_LITERAL);
+ break;
+ case SqlParser.BIT_STRING:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 5480;
+ this.match(SqlParser.BIT_STRING);
+ break;
+ case SqlParser.HEXADECIMAL_LITERAL:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 5482;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 5481;
+ this.match(SqlParser.HEXADECIMAL_LITERAL);
+ this.state = 5484;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(_la===SqlParser.HEXADECIMAL_LITERAL);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function AuthPluginContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_authPlugin;
+ return this;
+}
+
+AuthPluginContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+AuthPluginContext.prototype.constructor = AuthPluginContext;
+
+AuthPluginContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+AuthPluginContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+AuthPluginContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAuthPlugin(this);
+ }
+};
+
+AuthPluginContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAuthPlugin(this);
+ }
+};
+
+AuthPluginContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAuthPlugin(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.AuthPluginContext = AuthPluginContext;
+
+SqlParser.prototype.authPlugin = function() {
+
+ var localctx = new AuthPluginContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 522, SqlParser.RULE_authPlugin);
+ try {
+ this.state = 5490;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,793,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5488;
+ this.uid();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 5489;
+ this.match(SqlParser.STRING_LITERAL);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function UidContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_uid;
+ return this;
+}
+
+UidContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+UidContext.prototype.constructor = UidContext;
+
+UidContext.prototype.simpleId = function() {
+ return this.getTypedRuleContext(SimpleIdContext,0);
+};
+
+UidContext.prototype.REVERSE_QUOTE_ID = function() {
+ return this.getToken(SqlParser.REVERSE_QUOTE_ID, 0);
+};
+
+UidContext.prototype.CHARSET_REVERSE_QOUTE_STRING = function() {
+ return this.getToken(SqlParser.CHARSET_REVERSE_QOUTE_STRING, 0);
+};
+
+UidContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterUid(this);
+ }
+};
+
+UidContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitUid(this);
+ }
+};
+
+UidContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitUid(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.UidContext = UidContext;
+
+SqlParser.prototype.uid = function() {
+
+ var localctx = new UidContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 524, SqlParser.RULE_uid);
+ try {
+ this.state = 5495;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,794,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5492;
+ this.simpleId();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 5493;
+ this.match(SqlParser.REVERSE_QUOTE_ID);
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 5494;
+ this.match(SqlParser.CHARSET_REVERSE_QOUTE_STRING);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function SimpleIdContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_simpleId;
+ return this;
+}
+
+SimpleIdContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+SimpleIdContext.prototype.constructor = SimpleIdContext;
+
+SimpleIdContext.prototype.ID = function() {
+ return this.getToken(SqlParser.ID, 0);
+};
+
+SimpleIdContext.prototype.charsetNameBase = function() {
+ return this.getTypedRuleContext(CharsetNameBaseContext,0);
+};
+
+SimpleIdContext.prototype.transactionLevelBase = function() {
+ return this.getTypedRuleContext(TransactionLevelBaseContext,0);
+};
+
+SimpleIdContext.prototype.engineName = function() {
+ return this.getTypedRuleContext(EngineNameContext,0);
+};
+
+SimpleIdContext.prototype.privilegesBase = function() {
+ return this.getTypedRuleContext(PrivilegesBaseContext,0);
+};
+
+SimpleIdContext.prototype.intervalTypeBase = function() {
+ return this.getTypedRuleContext(IntervalTypeBaseContext,0);
+};
+
+SimpleIdContext.prototype.dataTypeBase = function() {
+ return this.getTypedRuleContext(DataTypeBaseContext,0);
+};
+
+SimpleIdContext.prototype.keywordsCanBeId = function() {
+ return this.getTypedRuleContext(KeywordsCanBeIdContext,0);
+};
+
+SimpleIdContext.prototype.functionNameBase = function() {
+ return this.getTypedRuleContext(FunctionNameBaseContext,0);
+};
+
+SimpleIdContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSimpleId(this);
+ }
+};
+
+SimpleIdContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSimpleId(this);
+ }
+};
+
+SimpleIdContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSimpleId(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.SimpleIdContext = SimpleIdContext;
+
+SqlParser.prototype.simpleId = function() {
+
+ var localctx = new SimpleIdContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 526, SqlParser.RULE_simpleId);
+ try {
+ this.state = 5506;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,795,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5497;
+ this.match(SqlParser.ID);
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 5498;
+ this.charsetNameBase();
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 5499;
+ this.transactionLevelBase();
+ break;
+
+ case 4:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 5500;
+ this.engineName();
+ break;
+
+ case 5:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 5501;
+ this.privilegesBase();
+ break;
+
+ case 6:
+ this.enterOuterAlt(localctx, 6);
+ this.state = 5502;
+ this.intervalTypeBase();
+ break;
+
+ case 7:
+ this.enterOuterAlt(localctx, 7);
+ this.state = 5503;
+ this.dataTypeBase();
+ break;
+
+ case 8:
+ this.enterOuterAlt(localctx, 8);
+ this.state = 5504;
+ this.keywordsCanBeId();
+ break;
+
+ case 9:
+ this.enterOuterAlt(localctx, 9);
+ this.state = 5505;
+ this.functionNameBase();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function DottedIdContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_dottedId;
+ return this;
+}
+
+DottedIdContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+DottedIdContext.prototype.constructor = DottedIdContext;
+
+DottedIdContext.prototype.DOT_ID = function() {
+ return this.getToken(SqlParser.DOT_ID, 0);
+};
+
+DottedIdContext.prototype.DOT = function() {
+ return this.getToken(SqlParser.DOT, 0);
+};
+
+DottedIdContext.prototype.uid = function() {
+ return this.getTypedRuleContext(UidContext,0);
+};
+
+DottedIdContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterDottedId(this);
+ }
+};
+
+DottedIdContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitDottedId(this);
+ }
+};
+
+DottedIdContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitDottedId(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.DottedIdContext = DottedIdContext;
+
+SqlParser.prototype.dottedId = function() {
+
+ var localctx = new DottedIdContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 528, SqlParser.RULE_dottedId);
+ try {
+ this.state = 5511;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.DOT_ID:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5508;
+ this.match(SqlParser.DOT_ID);
+ break;
+ case SqlParser.DOT:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 5509;
+ this.match(SqlParser.DOT);
+ this.state = 5510;
+ this.uid();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function DecimalLiteralContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_decimalLiteral;
+ return this;
+}
+
+DecimalLiteralContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+DecimalLiteralContext.prototype.constructor = DecimalLiteralContext;
+
+DecimalLiteralContext.prototype.DECIMAL_LITERAL = function() {
+ return this.getToken(SqlParser.DECIMAL_LITERAL, 0);
+};
+
+DecimalLiteralContext.prototype.ZERO_DECIMAL = function() {
+ return this.getToken(SqlParser.ZERO_DECIMAL, 0);
+};
+
+DecimalLiteralContext.prototype.ONE_DECIMAL = function() {
+ return this.getToken(SqlParser.ONE_DECIMAL, 0);
+};
+
+DecimalLiteralContext.prototype.TWO_DECIMAL = function() {
+ return this.getToken(SqlParser.TWO_DECIMAL, 0);
+};
+
+DecimalLiteralContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterDecimalLiteral(this);
+ }
+};
+
+DecimalLiteralContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitDecimalLiteral(this);
+ }
+};
+
+DecimalLiteralContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitDecimalLiteral(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.DecimalLiteralContext = DecimalLiteralContext;
+
+SqlParser.prototype.decimalLiteral = function() {
+
+ var localctx = new DecimalLiteralContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 530, SqlParser.RULE_decimalLiteral);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5513;
+ _la = this._input.LA(1);
+ if(!(((((_la - 1025)) & ~0x1f) == 0 && ((1 << (_la - 1025)) & ((1 << (SqlParser.ZERO_DECIMAL - 1025)) | (1 << (SqlParser.ONE_DECIMAL - 1025)) | (1 << (SqlParser.TWO_DECIMAL - 1025)) | (1 << (SqlParser.DECIMAL_LITERAL - 1025)))) !== 0))) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function FileSizeLiteralContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_fileSizeLiteral;
+ return this;
+}
+
+FileSizeLiteralContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+FileSizeLiteralContext.prototype.constructor = FileSizeLiteralContext;
+
+FileSizeLiteralContext.prototype.FILESIZE_LITERAL = function() {
+ return this.getToken(SqlParser.FILESIZE_LITERAL, 0);
+};
+
+FileSizeLiteralContext.prototype.decimalLiteral = function() {
+ return this.getTypedRuleContext(DecimalLiteralContext,0);
+};
+
+FileSizeLiteralContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterFileSizeLiteral(this);
+ }
+};
+
+FileSizeLiteralContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitFileSizeLiteral(this);
+ }
+};
+
+FileSizeLiteralContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitFileSizeLiteral(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.FileSizeLiteralContext = FileSizeLiteralContext;
+
+SqlParser.prototype.fileSizeLiteral = function() {
+
+ var localctx = new FileSizeLiteralContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 532, SqlParser.RULE_fileSizeLiteral);
+ try {
+ this.state = 5517;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.FILESIZE_LITERAL:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5515;
+ this.match(SqlParser.FILESIZE_LITERAL);
+ break;
+ case SqlParser.ZERO_DECIMAL:
+ case SqlParser.ONE_DECIMAL:
+ case SqlParser.TWO_DECIMAL:
+ case SqlParser.DECIMAL_LITERAL:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 5516;
+ this.decimalLiteral();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function StringLiteralContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_stringLiteral;
+ return this;
+}
+
+StringLiteralContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+StringLiteralContext.prototype.constructor = StringLiteralContext;
+
+StringLiteralContext.prototype.STRING_LITERAL = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.STRING_LITERAL);
+ } else {
+ return this.getToken(SqlParser.STRING_LITERAL, i);
+ }
+};
+
+
+StringLiteralContext.prototype.START_NATIONAL_STRING_LITERAL = function() {
+ return this.getToken(SqlParser.START_NATIONAL_STRING_LITERAL, 0);
+};
+
+StringLiteralContext.prototype.STRING_CHARSET_NAME = function() {
+ return this.getToken(SqlParser.STRING_CHARSET_NAME, 0);
+};
+
+StringLiteralContext.prototype.COLLATE = function() {
+ return this.getToken(SqlParser.COLLATE, 0);
+};
+
+StringLiteralContext.prototype.collationName = function() {
+ return this.getTypedRuleContext(CollationNameContext,0);
+};
+
+StringLiteralContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterStringLiteral(this);
+ }
+};
+
+StringLiteralContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitStringLiteral(this);
+ }
+};
+
+StringLiteralContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitStringLiteral(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.StringLiteralContext = StringLiteralContext;
+
+SqlParser.prototype.stringLiteral = function() {
+
+ var localctx = new StringLiteralContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 534, SqlParser.RULE_stringLiteral);
+ var _la = 0; // Token type
+ try {
+ this.state = 5542;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,804,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5524;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.STRING_LITERAL:
+ case SqlParser.STRING_CHARSET_NAME:
+ this.state = 5520;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.STRING_CHARSET_NAME) {
+ this.state = 5519;
+ this.match(SqlParser.STRING_CHARSET_NAME);
+ }
+
+ this.state = 5522;
+ this.match(SqlParser.STRING_LITERAL);
+ break;
+ case SqlParser.START_NATIONAL_STRING_LITERAL:
+ this.state = 5523;
+ this.match(SqlParser.START_NATIONAL_STRING_LITERAL);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 5527;
+ this._errHandler.sync(this);
+ var _alt = 1;
+ do {
+ switch (_alt) {
+ case 1:
+ this.state = 5526;
+ this.match(SqlParser.STRING_LITERAL);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 5529;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,800, this._ctx);
+ } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 5536;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.STRING_LITERAL:
+ case SqlParser.STRING_CHARSET_NAME:
+ this.state = 5532;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.STRING_CHARSET_NAME) {
+ this.state = 5531;
+ this.match(SqlParser.STRING_CHARSET_NAME);
+ }
+
+ this.state = 5534;
+ this.match(SqlParser.STRING_LITERAL);
+ break;
+ case SqlParser.START_NATIONAL_STRING_LITERAL:
+ this.state = 5535;
+ this.match(SqlParser.START_NATIONAL_STRING_LITERAL);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 5540;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,803,this._ctx);
+ if(la_===1) {
+ this.state = 5538;
+ this.match(SqlParser.COLLATE);
+ this.state = 5539;
+ this.collationName();
+
+ }
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function BooleanLiteralContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_booleanLiteral;
+ return this;
+}
+
+BooleanLiteralContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+BooleanLiteralContext.prototype.constructor = BooleanLiteralContext;
+
+BooleanLiteralContext.prototype.TRUE = function() {
+ return this.getToken(SqlParser.TRUE, 0);
+};
+
+BooleanLiteralContext.prototype.FALSE = function() {
+ return this.getToken(SqlParser.FALSE, 0);
+};
+
+BooleanLiteralContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterBooleanLiteral(this);
+ }
+};
+
+BooleanLiteralContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitBooleanLiteral(this);
+ }
+};
+
+BooleanLiteralContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitBooleanLiteral(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.BooleanLiteralContext = BooleanLiteralContext;
+
+SqlParser.prototype.booleanLiteral = function() {
+
+ var localctx = new BooleanLiteralContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 536, SqlParser.RULE_booleanLiteral);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5544;
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.FALSE || _la===SqlParser.TRUE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function HexadecimalLiteralContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_hexadecimalLiteral;
+ return this;
+}
+
+HexadecimalLiteralContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+HexadecimalLiteralContext.prototype.constructor = HexadecimalLiteralContext;
+
+HexadecimalLiteralContext.prototype.HEXADECIMAL_LITERAL = function() {
+ return this.getToken(SqlParser.HEXADECIMAL_LITERAL, 0);
+};
+
+HexadecimalLiteralContext.prototype.STRING_CHARSET_NAME = function() {
+ return this.getToken(SqlParser.STRING_CHARSET_NAME, 0);
+};
+
+HexadecimalLiteralContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterHexadecimalLiteral(this);
+ }
+};
+
+HexadecimalLiteralContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitHexadecimalLiteral(this);
+ }
+};
+
+HexadecimalLiteralContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitHexadecimalLiteral(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.HexadecimalLiteralContext = HexadecimalLiteralContext;
+
+SqlParser.prototype.hexadecimalLiteral = function() {
+
+ var localctx = new HexadecimalLiteralContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 538, SqlParser.RULE_hexadecimalLiteral);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5547;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.STRING_CHARSET_NAME) {
+ this.state = 5546;
+ this.match(SqlParser.STRING_CHARSET_NAME);
+ }
+
+ this.state = 5549;
+ this.match(SqlParser.HEXADECIMAL_LITERAL);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function NullNotnullContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_nullNotnull;
+ return this;
+}
+
+NullNotnullContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+NullNotnullContext.prototype.constructor = NullNotnullContext;
+
+NullNotnullContext.prototype.NULL_LITERAL = function() {
+ return this.getToken(SqlParser.NULL_LITERAL, 0);
+};
+
+NullNotnullContext.prototype.NULL_SPEC_LITERAL = function() {
+ return this.getToken(SqlParser.NULL_SPEC_LITERAL, 0);
+};
+
+NullNotnullContext.prototype.NOT = function() {
+ return this.getToken(SqlParser.NOT, 0);
+};
+
+NullNotnullContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterNullNotnull(this);
+ }
+};
+
+NullNotnullContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitNullNotnull(this);
+ }
+};
+
+NullNotnullContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitNullNotnull(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.NullNotnullContext = NullNotnullContext;
+
+SqlParser.prototype.nullNotnull = function() {
+
+ var localctx = new NullNotnullContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 540, SqlParser.RULE_nullNotnull);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5552;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.NOT) {
+ this.state = 5551;
+ this.match(SqlParser.NOT);
+ }
+
+ this.state = 5554;
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.NULL_LITERAL || _la===SqlParser.NULL_SPEC_LITERAL)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function ConstantContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_constant;
+ this.nullLiteral = null; // Token
+ return this;
+}
+
+ConstantContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+ConstantContext.prototype.constructor = ConstantContext;
+
+ConstantContext.prototype.stringLiteral = function() {
+ return this.getTypedRuleContext(StringLiteralContext,0);
+};
+
+ConstantContext.prototype.decimalLiteral = function() {
+ return this.getTypedRuleContext(DecimalLiteralContext,0);
+};
+
+ConstantContext.prototype.MINUS = function() {
+ return this.getToken(SqlParser.MINUS, 0);
+};
+
+ConstantContext.prototype.hexadecimalLiteral = function() {
+ return this.getTypedRuleContext(HexadecimalLiteralContext,0);
+};
+
+ConstantContext.prototype.booleanLiteral = function() {
+ return this.getTypedRuleContext(BooleanLiteralContext,0);
+};
+
+ConstantContext.prototype.REAL_LITERAL = function() {
+ return this.getToken(SqlParser.REAL_LITERAL, 0);
+};
+
+ConstantContext.prototype.BIT_STRING = function() {
+ return this.getToken(SqlParser.BIT_STRING, 0);
+};
+
+ConstantContext.prototype.NULL_LITERAL = function() {
+ return this.getToken(SqlParser.NULL_LITERAL, 0);
+};
+
+ConstantContext.prototype.NULL_SPEC_LITERAL = function() {
+ return this.getToken(SqlParser.NULL_SPEC_LITERAL, 0);
+};
+
+ConstantContext.prototype.NOT = function() {
+ return this.getToken(SqlParser.NOT, 0);
+};
+
+ConstantContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterConstant(this);
+ }
+};
+
+ConstantContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitConstant(this);
+ }
+};
+
+ConstantContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitConstant(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.ConstantContext = ConstantContext;
+
+SqlParser.prototype.constant = function() {
+
+ var localctx = new ConstantContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 542, SqlParser.RULE_constant);
+ var _la = 0; // Token type
+ try {
+ this.state = 5568;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,808,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5556;
+ this.stringLiteral();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 5557;
+ this.decimalLiteral();
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 5558;
+ this.match(SqlParser.MINUS);
+ this.state = 5559;
+ this.decimalLiteral();
+ break;
+
+ case 4:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 5560;
+ this.hexadecimalLiteral();
+ break;
+
+ case 5:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 5561;
+ this.booleanLiteral();
+ break;
+
+ case 6:
+ this.enterOuterAlt(localctx, 6);
+ this.state = 5562;
+ this.match(SqlParser.REAL_LITERAL);
+ break;
+
+ case 7:
+ this.enterOuterAlt(localctx, 7);
+ this.state = 5563;
+ this.match(SqlParser.BIT_STRING);
+ break;
+
+ case 8:
+ this.enterOuterAlt(localctx, 8);
+ this.state = 5565;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.NOT) {
+ this.state = 5564;
+ this.match(SqlParser.NOT);
+ }
+
+ this.state = 5567;
+ localctx.nullLiteral = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.NULL_LITERAL || _la===SqlParser.NULL_SPEC_LITERAL)) {
+ localctx.nullLiteral = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function DataTypeContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_dataType;
+ return this;
+}
+
+DataTypeContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+DataTypeContext.prototype.constructor = DataTypeContext;
+
+
+
+DataTypeContext.prototype.copyFrom = function(ctx) {
+ antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx);
+};
+
+
+function SpatialDataTypeContext(parser, ctx) {
+ DataTypeContext.call(this, parser);
+ this.typeName = null; // Token;
+ DataTypeContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+SpatialDataTypeContext.prototype = Object.create(DataTypeContext.prototype);
+SpatialDataTypeContext.prototype.constructor = SpatialDataTypeContext;
+
+SqlParser.SpatialDataTypeContext = SpatialDataTypeContext;
+
+SpatialDataTypeContext.prototype.GEOMETRYCOLLECTION = function() {
+ return this.getToken(SqlParser.GEOMETRYCOLLECTION, 0);
+};
+
+SpatialDataTypeContext.prototype.GEOMCOLLECTION = function() {
+ return this.getToken(SqlParser.GEOMCOLLECTION, 0);
+};
+
+SpatialDataTypeContext.prototype.LINESTRING = function() {
+ return this.getToken(SqlParser.LINESTRING, 0);
+};
+
+SpatialDataTypeContext.prototype.MULTILINESTRING = function() {
+ return this.getToken(SqlParser.MULTILINESTRING, 0);
+};
+
+SpatialDataTypeContext.prototype.MULTIPOINT = function() {
+ return this.getToken(SqlParser.MULTIPOINT, 0);
+};
+
+SpatialDataTypeContext.prototype.MULTIPOLYGON = function() {
+ return this.getToken(SqlParser.MULTIPOLYGON, 0);
+};
+
+SpatialDataTypeContext.prototype.POINT = function() {
+ return this.getToken(SqlParser.POINT, 0);
+};
+
+SpatialDataTypeContext.prototype.POLYGON = function() {
+ return this.getToken(SqlParser.POLYGON, 0);
+};
+
+SpatialDataTypeContext.prototype.JSON = function() {
+ return this.getToken(SqlParser.JSON, 0);
+};
+
+SpatialDataTypeContext.prototype.GEOMETRY = function() {
+ return this.getToken(SqlParser.GEOMETRY, 0);
+};
+SpatialDataTypeContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSpatialDataType(this);
+ }
+};
+
+SpatialDataTypeContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSpatialDataType(this);
+ }
+};
+
+SpatialDataTypeContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSpatialDataType(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function LongVarbinaryDataTypeContext(parser, ctx) {
+ DataTypeContext.call(this, parser);
+ DataTypeContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+LongVarbinaryDataTypeContext.prototype = Object.create(DataTypeContext.prototype);
+LongVarbinaryDataTypeContext.prototype.constructor = LongVarbinaryDataTypeContext;
+
+SqlParser.LongVarbinaryDataTypeContext = LongVarbinaryDataTypeContext;
+
+LongVarbinaryDataTypeContext.prototype.LONG = function() {
+ return this.getToken(SqlParser.LONG, 0);
+};
+
+LongVarbinaryDataTypeContext.prototype.VARBINARY = function() {
+ return this.getToken(SqlParser.VARBINARY, 0);
+};
+LongVarbinaryDataTypeContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterLongVarbinaryDataType(this);
+ }
+};
+
+LongVarbinaryDataTypeContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitLongVarbinaryDataType(this);
+ }
+};
+
+LongVarbinaryDataTypeContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitLongVarbinaryDataType(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function CollectionDataTypeContext(parser, ctx) {
+ DataTypeContext.call(this, parser);
+ this.typeName = null; // Token;
+ DataTypeContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+CollectionDataTypeContext.prototype = Object.create(DataTypeContext.prototype);
+CollectionDataTypeContext.prototype.constructor = CollectionDataTypeContext;
+
+SqlParser.CollectionDataTypeContext = CollectionDataTypeContext;
+
+CollectionDataTypeContext.prototype.collectionOptions = function() {
+ return this.getTypedRuleContext(CollectionOptionsContext,0);
+};
+
+CollectionDataTypeContext.prototype.ENUM = function() {
+ return this.getToken(SqlParser.ENUM, 0);
+};
+
+CollectionDataTypeContext.prototype.SET = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.SET);
+ } else {
+ return this.getToken(SqlParser.SET, i);
+ }
+};
+
+
+CollectionDataTypeContext.prototype.BINARY = function() {
+ return this.getToken(SqlParser.BINARY, 0);
+};
+
+CollectionDataTypeContext.prototype.charsetName = function() {
+ return this.getTypedRuleContext(CharsetNameContext,0);
+};
+
+CollectionDataTypeContext.prototype.CHARACTER = function() {
+ return this.getToken(SqlParser.CHARACTER, 0);
+};
+
+CollectionDataTypeContext.prototype.CHARSET = function() {
+ return this.getToken(SqlParser.CHARSET, 0);
+};
+CollectionDataTypeContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterCollectionDataType(this);
+ }
+};
+
+CollectionDataTypeContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitCollectionDataType(this);
+ }
+};
+
+CollectionDataTypeContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitCollectionDataType(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function NationalVaryingStringDataTypeContext(parser, ctx) {
+ DataTypeContext.call(this, parser);
+ this.typeName = null; // Token;
+ DataTypeContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+NationalVaryingStringDataTypeContext.prototype = Object.create(DataTypeContext.prototype);
+NationalVaryingStringDataTypeContext.prototype.constructor = NationalVaryingStringDataTypeContext;
+
+SqlParser.NationalVaryingStringDataTypeContext = NationalVaryingStringDataTypeContext;
+
+NationalVaryingStringDataTypeContext.prototype.NATIONAL = function() {
+ return this.getToken(SqlParser.NATIONAL, 0);
+};
+
+NationalVaryingStringDataTypeContext.prototype.VARYING = function() {
+ return this.getToken(SqlParser.VARYING, 0);
+};
+
+NationalVaryingStringDataTypeContext.prototype.CHAR = function() {
+ return this.getToken(SqlParser.CHAR, 0);
+};
+
+NationalVaryingStringDataTypeContext.prototype.CHARACTER = function() {
+ return this.getToken(SqlParser.CHARACTER, 0);
+};
+
+NationalVaryingStringDataTypeContext.prototype.lengthOneDimension = function() {
+ return this.getTypedRuleContext(LengthOneDimensionContext,0);
+};
+
+NationalVaryingStringDataTypeContext.prototype.BINARY = function() {
+ return this.getToken(SqlParser.BINARY, 0);
+};
+NationalVaryingStringDataTypeContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterNationalVaryingStringDataType(this);
+ }
+};
+
+NationalVaryingStringDataTypeContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitNationalVaryingStringDataType(this);
+ }
+};
+
+NationalVaryingStringDataTypeContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitNationalVaryingStringDataType(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function DimensionDataTypeContext(parser, ctx) {
+ DataTypeContext.call(this, parser);
+ this.typeName = null; // Token;
+ DataTypeContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+DimensionDataTypeContext.prototype = Object.create(DataTypeContext.prototype);
+DimensionDataTypeContext.prototype.constructor = DimensionDataTypeContext;
+
+SqlParser.DimensionDataTypeContext = DimensionDataTypeContext;
+
+DimensionDataTypeContext.prototype.TINYINT = function() {
+ return this.getToken(SqlParser.TINYINT, 0);
+};
+
+DimensionDataTypeContext.prototype.SMALLINT = function() {
+ return this.getToken(SqlParser.SMALLINT, 0);
+};
+
+DimensionDataTypeContext.prototype.MEDIUMINT = function() {
+ return this.getToken(SqlParser.MEDIUMINT, 0);
+};
+
+DimensionDataTypeContext.prototype.INT = function() {
+ return this.getToken(SqlParser.INT, 0);
+};
+
+DimensionDataTypeContext.prototype.INTEGER = function() {
+ return this.getToken(SqlParser.INTEGER, 0);
+};
+
+DimensionDataTypeContext.prototype.BIGINT = function() {
+ return this.getToken(SqlParser.BIGINT, 0);
+};
+
+DimensionDataTypeContext.prototype.MIDDLEINT = function() {
+ return this.getToken(SqlParser.MIDDLEINT, 0);
+};
+
+DimensionDataTypeContext.prototype.INT1 = function() {
+ return this.getToken(SqlParser.INT1, 0);
+};
+
+DimensionDataTypeContext.prototype.INT2 = function() {
+ return this.getToken(SqlParser.INT2, 0);
+};
+
+DimensionDataTypeContext.prototype.INT3 = function() {
+ return this.getToken(SqlParser.INT3, 0);
+};
+
+DimensionDataTypeContext.prototype.INT4 = function() {
+ return this.getToken(SqlParser.INT4, 0);
+};
+
+DimensionDataTypeContext.prototype.INT8 = function() {
+ return this.getToken(SqlParser.INT8, 0);
+};
+
+DimensionDataTypeContext.prototype.lengthOneDimension = function() {
+ return this.getTypedRuleContext(LengthOneDimensionContext,0);
+};
+
+DimensionDataTypeContext.prototype.ZEROFILL = function() {
+ return this.getToken(SqlParser.ZEROFILL, 0);
+};
+
+DimensionDataTypeContext.prototype.SIGNED = function() {
+ return this.getToken(SqlParser.SIGNED, 0);
+};
+
+DimensionDataTypeContext.prototype.UNSIGNED = function() {
+ return this.getToken(SqlParser.UNSIGNED, 0);
+};
+
+DimensionDataTypeContext.prototype.REAL = function() {
+ return this.getToken(SqlParser.REAL, 0);
+};
+
+DimensionDataTypeContext.prototype.lengthTwoDimension = function() {
+ return this.getTypedRuleContext(LengthTwoDimensionContext,0);
+};
+
+DimensionDataTypeContext.prototype.DOUBLE = function() {
+ return this.getToken(SqlParser.DOUBLE, 0);
+};
+
+DimensionDataTypeContext.prototype.PRECISION = function() {
+ return this.getToken(SqlParser.PRECISION, 0);
+};
+
+DimensionDataTypeContext.prototype.DECIMAL = function() {
+ return this.getToken(SqlParser.DECIMAL, 0);
+};
+
+DimensionDataTypeContext.prototype.DEC = function() {
+ return this.getToken(SqlParser.DEC, 0);
+};
+
+DimensionDataTypeContext.prototype.FIXED = function() {
+ return this.getToken(SqlParser.FIXED, 0);
+};
+
+DimensionDataTypeContext.prototype.NUMERIC = function() {
+ return this.getToken(SqlParser.NUMERIC, 0);
+};
+
+DimensionDataTypeContext.prototype.FLOAT = function() {
+ return this.getToken(SqlParser.FLOAT, 0);
+};
+
+DimensionDataTypeContext.prototype.FLOAT4 = function() {
+ return this.getToken(SqlParser.FLOAT4, 0);
+};
+
+DimensionDataTypeContext.prototype.FLOAT8 = function() {
+ return this.getToken(SqlParser.FLOAT8, 0);
+};
+
+DimensionDataTypeContext.prototype.lengthTwoOptionalDimension = function() {
+ return this.getTypedRuleContext(LengthTwoOptionalDimensionContext,0);
+};
+
+DimensionDataTypeContext.prototype.BIT = function() {
+ return this.getToken(SqlParser.BIT, 0);
+};
+
+DimensionDataTypeContext.prototype.TIME = function() {
+ return this.getToken(SqlParser.TIME, 0);
+};
+
+DimensionDataTypeContext.prototype.TIMESTAMP = function() {
+ return this.getToken(SqlParser.TIMESTAMP, 0);
+};
+
+DimensionDataTypeContext.prototype.DATETIME = function() {
+ return this.getToken(SqlParser.DATETIME, 0);
+};
+
+DimensionDataTypeContext.prototype.BINARY = function() {
+ return this.getToken(SqlParser.BINARY, 0);
+};
+
+DimensionDataTypeContext.prototype.VARBINARY = function() {
+ return this.getToken(SqlParser.VARBINARY, 0);
+};
+
+DimensionDataTypeContext.prototype.YEAR = function() {
+ return this.getToken(SqlParser.YEAR, 0);
+};
+DimensionDataTypeContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterDimensionDataType(this);
+ }
+};
+
+DimensionDataTypeContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitDimensionDataType(this);
+ }
+};
+
+DimensionDataTypeContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitDimensionDataType(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function StringDataTypeContext(parser, ctx) {
+ DataTypeContext.call(this, parser);
+ this.typeName = null; // Token;
+ DataTypeContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+StringDataTypeContext.prototype = Object.create(DataTypeContext.prototype);
+StringDataTypeContext.prototype.constructor = StringDataTypeContext;
+
+SqlParser.StringDataTypeContext = StringDataTypeContext;
+
+StringDataTypeContext.prototype.CHAR = function() {
+ return this.getToken(SqlParser.CHAR, 0);
+};
+
+StringDataTypeContext.prototype.CHARACTER = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.CHARACTER);
+ } else {
+ return this.getToken(SqlParser.CHARACTER, i);
+ }
+};
+
+
+StringDataTypeContext.prototype.VARCHAR = function() {
+ return this.getToken(SqlParser.VARCHAR, 0);
+};
+
+StringDataTypeContext.prototype.TINYTEXT = function() {
+ return this.getToken(SqlParser.TINYTEXT, 0);
+};
+
+StringDataTypeContext.prototype.TEXT = function() {
+ return this.getToken(SqlParser.TEXT, 0);
+};
+
+StringDataTypeContext.prototype.MEDIUMTEXT = function() {
+ return this.getToken(SqlParser.MEDIUMTEXT, 0);
+};
+
+StringDataTypeContext.prototype.LONGTEXT = function() {
+ return this.getToken(SqlParser.LONGTEXT, 0);
+};
+
+StringDataTypeContext.prototype.NCHAR = function() {
+ return this.getToken(SqlParser.NCHAR, 0);
+};
+
+StringDataTypeContext.prototype.NVARCHAR = function() {
+ return this.getToken(SqlParser.NVARCHAR, 0);
+};
+
+StringDataTypeContext.prototype.LONG = function() {
+ return this.getToken(SqlParser.LONG, 0);
+};
+
+StringDataTypeContext.prototype.lengthOneDimension = function() {
+ return this.getTypedRuleContext(LengthOneDimensionContext,0);
+};
+
+StringDataTypeContext.prototype.BINARY = function() {
+ return this.getToken(SqlParser.BINARY, 0);
+};
+
+StringDataTypeContext.prototype.charsetName = function() {
+ return this.getTypedRuleContext(CharsetNameContext,0);
+};
+
+StringDataTypeContext.prototype.COLLATE = function() {
+ return this.getToken(SqlParser.COLLATE, 0);
+};
+
+StringDataTypeContext.prototype.collationName = function() {
+ return this.getTypedRuleContext(CollationNameContext,0);
+};
+
+StringDataTypeContext.prototype.SET = function() {
+ return this.getToken(SqlParser.SET, 0);
+};
+
+StringDataTypeContext.prototype.CHARSET = function() {
+ return this.getToken(SqlParser.CHARSET, 0);
+};
+StringDataTypeContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterStringDataType(this);
+ }
+};
+
+StringDataTypeContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitStringDataType(this);
+ }
+};
+
+StringDataTypeContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitStringDataType(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function LongVarcharDataTypeContext(parser, ctx) {
+ DataTypeContext.call(this, parser);
+ this.typeName = null; // Token;
+ DataTypeContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+LongVarcharDataTypeContext.prototype = Object.create(DataTypeContext.prototype);
+LongVarcharDataTypeContext.prototype.constructor = LongVarcharDataTypeContext;
+
+SqlParser.LongVarcharDataTypeContext = LongVarcharDataTypeContext;
+
+LongVarcharDataTypeContext.prototype.LONG = function() {
+ return this.getToken(SqlParser.LONG, 0);
+};
+
+LongVarcharDataTypeContext.prototype.VARCHAR = function() {
+ return this.getToken(SqlParser.VARCHAR, 0);
+};
+
+LongVarcharDataTypeContext.prototype.BINARY = function() {
+ return this.getToken(SqlParser.BINARY, 0);
+};
+
+LongVarcharDataTypeContext.prototype.charsetName = function() {
+ return this.getTypedRuleContext(CharsetNameContext,0);
+};
+
+LongVarcharDataTypeContext.prototype.COLLATE = function() {
+ return this.getToken(SqlParser.COLLATE, 0);
+};
+
+LongVarcharDataTypeContext.prototype.collationName = function() {
+ return this.getTypedRuleContext(CollationNameContext,0);
+};
+
+LongVarcharDataTypeContext.prototype.CHARACTER = function() {
+ return this.getToken(SqlParser.CHARACTER, 0);
+};
+
+LongVarcharDataTypeContext.prototype.SET = function() {
+ return this.getToken(SqlParser.SET, 0);
+};
+
+LongVarcharDataTypeContext.prototype.CHARSET = function() {
+ return this.getToken(SqlParser.CHARSET, 0);
+};
+LongVarcharDataTypeContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterLongVarcharDataType(this);
+ }
+};
+
+LongVarcharDataTypeContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitLongVarcharDataType(this);
+ }
+};
+
+LongVarcharDataTypeContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitLongVarcharDataType(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function NationalStringDataTypeContext(parser, ctx) {
+ DataTypeContext.call(this, parser);
+ this.typeName = null; // Token;
+ DataTypeContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+NationalStringDataTypeContext.prototype = Object.create(DataTypeContext.prototype);
+NationalStringDataTypeContext.prototype.constructor = NationalStringDataTypeContext;
+
+SqlParser.NationalStringDataTypeContext = NationalStringDataTypeContext;
+
+NationalStringDataTypeContext.prototype.NATIONAL = function() {
+ return this.getToken(SqlParser.NATIONAL, 0);
+};
+
+NationalStringDataTypeContext.prototype.VARCHAR = function() {
+ return this.getToken(SqlParser.VARCHAR, 0);
+};
+
+NationalStringDataTypeContext.prototype.CHARACTER = function() {
+ return this.getToken(SqlParser.CHARACTER, 0);
+};
+
+NationalStringDataTypeContext.prototype.lengthOneDimension = function() {
+ return this.getTypedRuleContext(LengthOneDimensionContext,0);
+};
+
+NationalStringDataTypeContext.prototype.BINARY = function() {
+ return this.getToken(SqlParser.BINARY, 0);
+};
+
+NationalStringDataTypeContext.prototype.NCHAR = function() {
+ return this.getToken(SqlParser.NCHAR, 0);
+};
+NationalStringDataTypeContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterNationalStringDataType(this);
+ }
+};
+
+NationalStringDataTypeContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitNationalStringDataType(this);
+ }
+};
+
+NationalStringDataTypeContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitNationalStringDataType(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function SimpleDataTypeContext(parser, ctx) {
+ DataTypeContext.call(this, parser);
+ this.typeName = null; // Token;
+ DataTypeContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+SimpleDataTypeContext.prototype = Object.create(DataTypeContext.prototype);
+SimpleDataTypeContext.prototype.constructor = SimpleDataTypeContext;
+
+SqlParser.SimpleDataTypeContext = SimpleDataTypeContext;
+
+SimpleDataTypeContext.prototype.DATE = function() {
+ return this.getToken(SqlParser.DATE, 0);
+};
+
+SimpleDataTypeContext.prototype.TINYBLOB = function() {
+ return this.getToken(SqlParser.TINYBLOB, 0);
+};
+
+SimpleDataTypeContext.prototype.BLOB = function() {
+ return this.getToken(SqlParser.BLOB, 0);
+};
+
+SimpleDataTypeContext.prototype.MEDIUMBLOB = function() {
+ return this.getToken(SqlParser.MEDIUMBLOB, 0);
+};
+
+SimpleDataTypeContext.prototype.LONGBLOB = function() {
+ return this.getToken(SqlParser.LONGBLOB, 0);
+};
+
+SimpleDataTypeContext.prototype.BOOL = function() {
+ return this.getToken(SqlParser.BOOL, 0);
+};
+
+SimpleDataTypeContext.prototype.BOOLEAN = function() {
+ return this.getToken(SqlParser.BOOLEAN, 0);
+};
+
+SimpleDataTypeContext.prototype.SERIAL = function() {
+ return this.getToken(SqlParser.SERIAL, 0);
+};
+SimpleDataTypeContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSimpleDataType(this);
+ }
+};
+
+SimpleDataTypeContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSimpleDataType(this);
+ }
+};
+
+SimpleDataTypeContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSimpleDataType(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+SqlParser.DataTypeContext = DataTypeContext;
+
+SqlParser.prototype.dataType = function() {
+
+ var localctx = new DataTypeContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 544, SqlParser.RULE_dataType);
+ var _la = 0; // Token type
+ try {
+ this.state = 5697;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,842,this._ctx);
+ switch(la_) {
+ case 1:
+ localctx = new StringDataTypeContext(this, localctx);
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5570;
+ localctx.typeName = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.CHARACTER || ((((_la - 204)) & ~0x1f) == 0 && ((1 << (_la - 204)) & ((1 << (SqlParser.CHAR - 204)) | (1 << (SqlParser.VARCHAR - 204)) | (1 << (SqlParser.NVARCHAR - 204)) | (1 << (SqlParser.LONG - 204)) | (1 << (SqlParser.TINYTEXT - 204)) | (1 << (SqlParser.TEXT - 204)) | (1 << (SqlParser.MEDIUMTEXT - 204)) | (1 << (SqlParser.LONGTEXT - 204)))) !== 0) || _la===SqlParser.NCHAR)) {
+ localctx.typeName = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 5572;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,809,this._ctx);
+ if(la_===1) {
+ this.state = 5571;
+ this.lengthOneDimension();
+
+ }
+ this.state = 5575;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.BINARY) {
+ this.state = 5574;
+ this.match(SqlParser.BINARY);
+ }
+
+ this.state = 5583;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,812,this._ctx);
+ if(la_===1) {
+ this.state = 5580;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.CHARACTER:
+ this.state = 5577;
+ this.match(SqlParser.CHARACTER);
+ this.state = 5578;
+ this.match(SqlParser.SET);
+ break;
+ case SqlParser.CHARSET:
+ this.state = 5579;
+ this.match(SqlParser.CHARSET);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 5582;
+ this.charsetName();
+
+ }
+ this.state = 5587;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,813,this._ctx);
+ if(la_===1) {
+ this.state = 5585;
+ this.match(SqlParser.COLLATE);
+ this.state = 5586;
+ this.collationName();
+
+ }
+ break;
+
+ case 2:
+ localctx = new NationalStringDataTypeContext(this, localctx);
+ this.enterOuterAlt(localctx, 2);
+ this.state = 5589;
+ this.match(SqlParser.NATIONAL);
+ this.state = 5590;
+ localctx.typeName = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.CHARACTER || _la===SqlParser.VARCHAR)) {
+ localctx.typeName = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 5592;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,814,this._ctx);
+ if(la_===1) {
+ this.state = 5591;
+ this.lengthOneDimension();
+
+ }
+ this.state = 5595;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.BINARY) {
+ this.state = 5594;
+ this.match(SqlParser.BINARY);
+ }
+
+ break;
+
+ case 3:
+ localctx = new NationalStringDataTypeContext(this, localctx);
+ this.enterOuterAlt(localctx, 3);
+ this.state = 5597;
+ this.match(SqlParser.NCHAR);
+ this.state = 5598;
+ localctx.typeName = this.match(SqlParser.VARCHAR);
+ this.state = 5600;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,816,this._ctx);
+ if(la_===1) {
+ this.state = 5599;
+ this.lengthOneDimension();
+
+ }
+ this.state = 5603;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.BINARY) {
+ this.state = 5602;
+ this.match(SqlParser.BINARY);
+ }
+
+ break;
+
+ case 4:
+ localctx = new NationalVaryingStringDataTypeContext(this, localctx);
+ this.enterOuterAlt(localctx, 4);
+ this.state = 5605;
+ this.match(SqlParser.NATIONAL);
+ this.state = 5606;
+ localctx.typeName = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.CHARACTER || _la===SqlParser.CHAR)) {
+ localctx.typeName = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 5607;
+ this.match(SqlParser.VARYING);
+ this.state = 5609;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,818,this._ctx);
+ if(la_===1) {
+ this.state = 5608;
+ this.lengthOneDimension();
+
+ }
+ this.state = 5612;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.BINARY) {
+ this.state = 5611;
+ this.match(SqlParser.BINARY);
+ }
+
+ break;
+
+ case 5:
+ localctx = new DimensionDataTypeContext(this, localctx);
+ this.enterOuterAlt(localctx, 5);
+ this.state = 5614;
+ localctx.typeName = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(((((_la - 178)) & ~0x1f) == 0 && ((1 << (_la - 178)) & ((1 << (SqlParser.TINYINT - 178)) | (1 << (SqlParser.SMALLINT - 178)) | (1 << (SqlParser.MEDIUMINT - 178)) | (1 << (SqlParser.MIDDLEINT - 178)) | (1 << (SqlParser.INT - 178)) | (1 << (SqlParser.INT1 - 178)) | (1 << (SqlParser.INT2 - 178)) | (1 << (SqlParser.INT3 - 178)) | (1 << (SqlParser.INT4 - 178)) | (1 << (SqlParser.INT8 - 178)) | (1 << (SqlParser.INTEGER - 178)) | (1 << (SqlParser.BIGINT - 178)))) !== 0))) {
+ localctx.typeName = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 5616;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,820,this._ctx);
+ if(la_===1) {
+ this.state = 5615;
+ this.lengthOneDimension();
+
+ }
+ this.state = 5619;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,821,this._ctx);
+ if(la_===1) {
+ this.state = 5618;
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.UNSIGNED || _la===SqlParser.SIGNED)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+
+ }
+ this.state = 5622;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.ZEROFILL) {
+ this.state = 5621;
+ this.match(SqlParser.ZEROFILL);
+ }
+
+ break;
+
+ case 6:
+ localctx = new DimensionDataTypeContext(this, localctx);
+ this.enterOuterAlt(localctx, 6);
+ this.state = 5624;
+ localctx.typeName = this.match(SqlParser.REAL);
+ this.state = 5626;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,823,this._ctx);
+ if(la_===1) {
+ this.state = 5625;
+ this.lengthTwoDimension();
+
+ }
+ this.state = 5629;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,824,this._ctx);
+ if(la_===1) {
+ this.state = 5628;
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.UNSIGNED || _la===SqlParser.SIGNED)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+
+ }
+ this.state = 5632;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.ZEROFILL) {
+ this.state = 5631;
+ this.match(SqlParser.ZEROFILL);
+ }
+
+ break;
+
+ case 7:
+ localctx = new DimensionDataTypeContext(this, localctx);
+ this.enterOuterAlt(localctx, 7);
+ this.state = 5634;
+ localctx.typeName = this.match(SqlParser.DOUBLE);
+ this.state = 5636;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.PRECISION) {
+ this.state = 5635;
+ this.match(SqlParser.PRECISION);
+ }
+
+ this.state = 5639;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,827,this._ctx);
+ if(la_===1) {
+ this.state = 5638;
+ this.lengthTwoDimension();
+
+ }
+ this.state = 5642;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,828,this._ctx);
+ if(la_===1) {
+ this.state = 5641;
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.UNSIGNED || _la===SqlParser.SIGNED)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+
+ }
+ this.state = 5645;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.ZEROFILL) {
+ this.state = 5644;
+ this.match(SqlParser.ZEROFILL);
+ }
+
+ break;
+
+ case 8:
+ localctx = new DimensionDataTypeContext(this, localctx);
+ this.enterOuterAlt(localctx, 8);
+ this.state = 5647;
+ localctx.typeName = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(((((_la - 193)) & ~0x1f) == 0 && ((1 << (_la - 193)) & ((1 << (SqlParser.FLOAT - 193)) | (1 << (SqlParser.FLOAT4 - 193)) | (1 << (SqlParser.FLOAT8 - 193)) | (1 << (SqlParser.DECIMAL - 193)) | (1 << (SqlParser.DEC - 193)) | (1 << (SqlParser.NUMERIC - 193)))) !== 0) || _la===SqlParser.FIXED)) {
+ localctx.typeName = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 5649;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,830,this._ctx);
+ if(la_===1) {
+ this.state = 5648;
+ this.lengthTwoOptionalDimension();
+
+ }
+ this.state = 5652;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,831,this._ctx);
+ if(la_===1) {
+ this.state = 5651;
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.UNSIGNED || _la===SqlParser.SIGNED)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+
+ }
+ this.state = 5655;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.ZEROFILL) {
+ this.state = 5654;
+ this.match(SqlParser.ZEROFILL);
+ }
+
+ break;
+
+ case 9:
+ localctx = new SimpleDataTypeContext(this, localctx);
+ this.enterOuterAlt(localctx, 9);
+ this.state = 5657;
+ localctx.typeName = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(((((_la - 199)) & ~0x1f) == 0 && ((1 << (_la - 199)) & ((1 << (SqlParser.DATE - 199)) | (1 << (SqlParser.TINYBLOB - 199)) | (1 << (SqlParser.BLOB - 199)) | (1 << (SqlParser.MEDIUMBLOB - 199)) | (1 << (SqlParser.LONGBLOB - 199)) | (1 << (SqlParser.SERIAL - 199)))) !== 0) || _la===SqlParser.BOOL || _la===SqlParser.BOOLEAN)) {
+ localctx.typeName = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+
+ case 10:
+ localctx = new DimensionDataTypeContext(this, localctx);
+ this.enterOuterAlt(localctx, 10);
+ this.state = 5658;
+ localctx.typeName = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(((((_la - 200)) & ~0x1f) == 0 && ((1 << (_la - 200)) & ((1 << (SqlParser.TIME - 200)) | (1 << (SqlParser.TIMESTAMP - 200)) | (1 << (SqlParser.DATETIME - 200)) | (1 << (SqlParser.YEAR - 200)) | (1 << (SqlParser.BINARY - 200)) | (1 << (SqlParser.VARBINARY - 200)))) !== 0) || _la===SqlParser.BIT)) {
+ localctx.typeName = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 5660;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,833,this._ctx);
+ if(la_===1) {
+ this.state = 5659;
+ this.lengthOneDimension();
+
+ }
+ break;
+
+ case 11:
+ localctx = new CollectionDataTypeContext(this, localctx);
+ this.enterOuterAlt(localctx, 11);
+ this.state = 5662;
+ localctx.typeName = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.SET || _la===SqlParser.ENUM)) {
+ localctx.typeName = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 5663;
+ this.collectionOptions();
+ this.state = 5665;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.BINARY) {
+ this.state = 5664;
+ this.match(SqlParser.BINARY);
+ }
+
+ this.state = 5673;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,836,this._ctx);
+ if(la_===1) {
+ this.state = 5670;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.CHARACTER:
+ this.state = 5667;
+ this.match(SqlParser.CHARACTER);
+ this.state = 5668;
+ this.match(SqlParser.SET);
+ break;
+ case SqlParser.CHARSET:
+ this.state = 5669;
+ this.match(SqlParser.CHARSET);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 5672;
+ this.charsetName();
+
+ }
+ break;
+
+ case 12:
+ localctx = new SpatialDataTypeContext(this, localctx);
+ this.enterOuterAlt(localctx, 12);
+ this.state = 5675;
+ localctx.typeName = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.JSON || ((((_la - 693)) & ~0x1f) == 0 && ((1 << (_la - 693)) & ((1 << (SqlParser.GEOMETRYCOLLECTION - 693)) | (1 << (SqlParser.GEOMCOLLECTION - 693)) | (1 << (SqlParser.GEOMETRY - 693)) | (1 << (SqlParser.LINESTRING - 693)) | (1 << (SqlParser.MULTILINESTRING - 693)) | (1 << (SqlParser.MULTIPOINT - 693)) | (1 << (SqlParser.MULTIPOLYGON - 693)) | (1 << (SqlParser.POINT - 693)) | (1 << (SqlParser.POLYGON - 693)))) !== 0))) {
+ localctx.typeName = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+
+ case 13:
+ localctx = new LongVarcharDataTypeContext(this, localctx);
+ this.enterOuterAlt(localctx, 13);
+ this.state = 5676;
+ localctx.typeName = this.match(SqlParser.LONG);
+ this.state = 5678;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.VARCHAR) {
+ this.state = 5677;
+ this.match(SqlParser.VARCHAR);
+ }
+
+ this.state = 5681;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.BINARY) {
+ this.state = 5680;
+ this.match(SqlParser.BINARY);
+ }
+
+ this.state = 5689;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,840,this._ctx);
+ if(la_===1) {
+ this.state = 5686;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.CHARACTER:
+ this.state = 5683;
+ this.match(SqlParser.CHARACTER);
+ this.state = 5684;
+ this.match(SqlParser.SET);
+ break;
+ case SqlParser.CHARSET:
+ this.state = 5685;
+ this.match(SqlParser.CHARSET);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 5688;
+ this.charsetName();
+
+ }
+ this.state = 5693;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,841,this._ctx);
+ if(la_===1) {
+ this.state = 5691;
+ this.match(SqlParser.COLLATE);
+ this.state = 5692;
+ this.collationName();
+
+ }
+ break;
+
+ case 14:
+ localctx = new LongVarbinaryDataTypeContext(this, localctx);
+ this.enterOuterAlt(localctx, 14);
+ this.state = 5695;
+ this.match(SqlParser.LONG);
+ this.state = 5696;
+ this.match(SqlParser.VARBINARY);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function CollectionOptionsContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_collectionOptions;
+ return this;
+}
+
+CollectionOptionsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+CollectionOptionsContext.prototype.constructor = CollectionOptionsContext;
+
+CollectionOptionsContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+CollectionOptionsContext.prototype.STRING_LITERAL = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.STRING_LITERAL);
+ } else {
+ return this.getToken(SqlParser.STRING_LITERAL, i);
+ }
+};
+
+
+CollectionOptionsContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+CollectionOptionsContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+CollectionOptionsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterCollectionOptions(this);
+ }
+};
+
+CollectionOptionsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitCollectionOptions(this);
+ }
+};
+
+CollectionOptionsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitCollectionOptions(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.CollectionOptionsContext = CollectionOptionsContext;
+
+SqlParser.prototype.collectionOptions = function() {
+
+ var localctx = new CollectionOptionsContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 546, SqlParser.RULE_collectionOptions);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5699;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 5700;
+ this.match(SqlParser.STRING_LITERAL);
+ this.state = 5705;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 5701;
+ this.match(SqlParser.COMMA);
+ this.state = 5702;
+ this.match(SqlParser.STRING_LITERAL);
+ this.state = 5707;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 5708;
+ this.match(SqlParser.RR_BRACKET);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function ConvertedDataTypeContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_convertedDataType;
+ this.typeName = null; // Token
+ return this;
+}
+
+ConvertedDataTypeContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+ConvertedDataTypeContext.prototype.constructor = ConvertedDataTypeContext;
+
+ConvertedDataTypeContext.prototype.BINARY = function() {
+ return this.getToken(SqlParser.BINARY, 0);
+};
+
+ConvertedDataTypeContext.prototype.NCHAR = function() {
+ return this.getToken(SqlParser.NCHAR, 0);
+};
+
+ConvertedDataTypeContext.prototype.lengthOneDimension = function() {
+ return this.getTypedRuleContext(LengthOneDimensionContext,0);
+};
+
+ConvertedDataTypeContext.prototype.CHAR = function() {
+ return this.getToken(SqlParser.CHAR, 0);
+};
+
+ConvertedDataTypeContext.prototype.charsetName = function() {
+ return this.getTypedRuleContext(CharsetNameContext,0);
+};
+
+ConvertedDataTypeContext.prototype.CHARACTER = function() {
+ return this.getToken(SqlParser.CHARACTER, 0);
+};
+
+ConvertedDataTypeContext.prototype.SET = function() {
+ return this.getToken(SqlParser.SET, 0);
+};
+
+ConvertedDataTypeContext.prototype.CHARSET = function() {
+ return this.getToken(SqlParser.CHARSET, 0);
+};
+
+ConvertedDataTypeContext.prototype.DATE = function() {
+ return this.getToken(SqlParser.DATE, 0);
+};
+
+ConvertedDataTypeContext.prototype.DATETIME = function() {
+ return this.getToken(SqlParser.DATETIME, 0);
+};
+
+ConvertedDataTypeContext.prototype.TIME = function() {
+ return this.getToken(SqlParser.TIME, 0);
+};
+
+ConvertedDataTypeContext.prototype.JSON = function() {
+ return this.getToken(SqlParser.JSON, 0);
+};
+
+ConvertedDataTypeContext.prototype.DECIMAL = function() {
+ return this.getToken(SqlParser.DECIMAL, 0);
+};
+
+ConvertedDataTypeContext.prototype.lengthTwoDimension = function() {
+ return this.getTypedRuleContext(LengthTwoDimensionContext,0);
+};
+
+ConvertedDataTypeContext.prototype.SIGNED = function() {
+ return this.getToken(SqlParser.SIGNED, 0);
+};
+
+ConvertedDataTypeContext.prototype.UNSIGNED = function() {
+ return this.getToken(SqlParser.UNSIGNED, 0);
+};
+
+ConvertedDataTypeContext.prototype.INTEGER = function() {
+ return this.getToken(SqlParser.INTEGER, 0);
+};
+
+ConvertedDataTypeContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterConvertedDataType(this);
+ }
+};
+
+ConvertedDataTypeContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitConvertedDataType(this);
+ }
+};
+
+ConvertedDataTypeContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitConvertedDataType(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.ConvertedDataTypeContext = ConvertedDataTypeContext;
+
+SqlParser.prototype.convertedDataType = function() {
+
+ var localctx = new ConvertedDataTypeContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 548, SqlParser.RULE_convertedDataType);
+ var _la = 0; // Token type
+ try {
+ this.state = 5735;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.BINARY:
+ case SqlParser.NCHAR:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5710;
+ localctx.typeName = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.BINARY || _la===SqlParser.NCHAR)) {
+ localctx.typeName = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 5712;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.LR_BRACKET) {
+ this.state = 5711;
+ this.lengthOneDimension();
+ }
+
+ break;
+ case SqlParser.CHAR:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 5714;
+ localctx.typeName = this.match(SqlParser.CHAR);
+ this.state = 5716;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.LR_BRACKET) {
+ this.state = 5715;
+ this.lengthOneDimension();
+ }
+
+ this.state = 5724;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.CHARACTER || _la===SqlParser.CHARSET) {
+ this.state = 5721;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.CHARACTER:
+ this.state = 5718;
+ this.match(SqlParser.CHARACTER);
+ this.state = 5719;
+ this.match(SqlParser.SET);
+ break;
+ case SqlParser.CHARSET:
+ this.state = 5720;
+ this.match(SqlParser.CHARSET);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 5723;
+ this.charsetName();
+ }
+
+ break;
+ case SqlParser.DATE:
+ case SqlParser.TIME:
+ case SqlParser.DATETIME:
+ case SqlParser.JSON:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 5726;
+ localctx.typeName = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(((((_la - 199)) & ~0x1f) == 0 && ((1 << (_la - 199)) & ((1 << (SqlParser.DATE - 199)) | (1 << (SqlParser.TIME - 199)) | (1 << (SqlParser.DATETIME - 199)))) !== 0) || _la===SqlParser.JSON)) {
+ localctx.typeName = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+ case SqlParser.DECIMAL:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 5727;
+ localctx.typeName = this.match(SqlParser.DECIMAL);
+ this.state = 5729;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.LR_BRACKET) {
+ this.state = 5728;
+ this.lengthTwoDimension();
+ }
+
+ break;
+ case SqlParser.UNSIGNED:
+ case SqlParser.SIGNED:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 5731;
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.UNSIGNED || _la===SqlParser.SIGNED)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 5733;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.INTEGER) {
+ this.state = 5732;
+ this.match(SqlParser.INTEGER);
+ }
+
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function LengthOneDimensionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_lengthOneDimension;
+ return this;
+}
+
+LengthOneDimensionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+LengthOneDimensionContext.prototype.constructor = LengthOneDimensionContext;
+
+LengthOneDimensionContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+LengthOneDimensionContext.prototype.decimalLiteral = function() {
+ return this.getTypedRuleContext(DecimalLiteralContext,0);
+};
+
+LengthOneDimensionContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+LengthOneDimensionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterLengthOneDimension(this);
+ }
+};
+
+LengthOneDimensionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitLengthOneDimension(this);
+ }
+};
+
+LengthOneDimensionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitLengthOneDimension(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.LengthOneDimensionContext = LengthOneDimensionContext;
+
+SqlParser.prototype.lengthOneDimension = function() {
+
+ var localctx = new LengthOneDimensionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 550, SqlParser.RULE_lengthOneDimension);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5737;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 5738;
+ this.decimalLiteral();
+ this.state = 5739;
+ this.match(SqlParser.RR_BRACKET);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function LengthTwoDimensionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_lengthTwoDimension;
+ return this;
+}
+
+LengthTwoDimensionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+LengthTwoDimensionContext.prototype.constructor = LengthTwoDimensionContext;
+
+LengthTwoDimensionContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+LengthTwoDimensionContext.prototype.decimalLiteral = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(DecimalLiteralContext);
+ } else {
+ return this.getTypedRuleContext(DecimalLiteralContext,i);
+ }
+};
+
+LengthTwoDimensionContext.prototype.COMMA = function() {
+ return this.getToken(SqlParser.COMMA, 0);
+};
+
+LengthTwoDimensionContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+LengthTwoDimensionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterLengthTwoDimension(this);
+ }
+};
+
+LengthTwoDimensionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitLengthTwoDimension(this);
+ }
+};
+
+LengthTwoDimensionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitLengthTwoDimension(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.LengthTwoDimensionContext = LengthTwoDimensionContext;
+
+SqlParser.prototype.lengthTwoDimension = function() {
+
+ var localctx = new LengthTwoDimensionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 552, SqlParser.RULE_lengthTwoDimension);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5741;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 5742;
+ this.decimalLiteral();
+ this.state = 5743;
+ this.match(SqlParser.COMMA);
+ this.state = 5744;
+ this.decimalLiteral();
+ this.state = 5745;
+ this.match(SqlParser.RR_BRACKET);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function LengthTwoOptionalDimensionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_lengthTwoOptionalDimension;
+ return this;
+}
+
+LengthTwoOptionalDimensionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+LengthTwoOptionalDimensionContext.prototype.constructor = LengthTwoOptionalDimensionContext;
+
+LengthTwoOptionalDimensionContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+LengthTwoOptionalDimensionContext.prototype.decimalLiteral = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(DecimalLiteralContext);
+ } else {
+ return this.getTypedRuleContext(DecimalLiteralContext,i);
+ }
+};
+
+LengthTwoOptionalDimensionContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+LengthTwoOptionalDimensionContext.prototype.COMMA = function() {
+ return this.getToken(SqlParser.COMMA, 0);
+};
+
+LengthTwoOptionalDimensionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterLengthTwoOptionalDimension(this);
+ }
+};
+
+LengthTwoOptionalDimensionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitLengthTwoOptionalDimension(this);
+ }
+};
+
+LengthTwoOptionalDimensionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitLengthTwoOptionalDimension(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.LengthTwoOptionalDimensionContext = LengthTwoOptionalDimensionContext;
+
+SqlParser.prototype.lengthTwoOptionalDimension = function() {
+
+ var localctx = new LengthTwoOptionalDimensionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 554, SqlParser.RULE_lengthTwoOptionalDimension);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5747;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 5748;
+ this.decimalLiteral();
+ this.state = 5751;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.COMMA) {
+ this.state = 5749;
+ this.match(SqlParser.COMMA);
+ this.state = 5750;
+ this.decimalLiteral();
+ }
+
+ this.state = 5753;
+ this.match(SqlParser.RR_BRACKET);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function UidListContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_uidList;
+ return this;
+}
+
+UidListContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+UidListContext.prototype.constructor = UidListContext;
+
+UidListContext.prototype.uid = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(UidContext);
+ } else {
+ return this.getTypedRuleContext(UidContext,i);
+ }
+};
+
+UidListContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+UidListContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterUidList(this);
+ }
+};
+
+UidListContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitUidList(this);
+ }
+};
+
+UidListContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitUidList(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.UidListContext = UidListContext;
+
+SqlParser.prototype.uidList = function() {
+
+ var localctx = new UidListContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 556, SqlParser.RULE_uidList);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5755;
+ this.uid();
+ this.state = 5760;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,852,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 5756;
+ this.match(SqlParser.COMMA);
+ this.state = 5757;
+ this.uid();
+ }
+ this.state = 5762;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,852,this._ctx);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function TablesContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_tables;
+ return this;
+}
+
+TablesContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+TablesContext.prototype.constructor = TablesContext;
+
+TablesContext.prototype.tableName = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(TableNameContext);
+ } else {
+ return this.getTypedRuleContext(TableNameContext,i);
+ }
+};
+
+TablesContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+TablesContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterTables(this);
+ }
+};
+
+TablesContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitTables(this);
+ }
+};
+
+TablesContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitTables(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.TablesContext = TablesContext;
+
+SqlParser.prototype.tables = function() {
+
+ var localctx = new TablesContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 558, SqlParser.RULE_tables);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5763;
+ this.tableName();
+ this.state = 5768;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,853,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 5764;
+ this.match(SqlParser.COMMA);
+ this.state = 5765;
+ this.tableName();
+ }
+ this.state = 5770;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,853,this._ctx);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function IndexColumnNamesContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_indexColumnNames;
+ return this;
+}
+
+IndexColumnNamesContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+IndexColumnNamesContext.prototype.constructor = IndexColumnNamesContext;
+
+IndexColumnNamesContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+IndexColumnNamesContext.prototype.indexColumnName = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(IndexColumnNameContext);
+ } else {
+ return this.getTypedRuleContext(IndexColumnNameContext,i);
+ }
+};
+
+IndexColumnNamesContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+IndexColumnNamesContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+IndexColumnNamesContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterIndexColumnNames(this);
+ }
+};
+
+IndexColumnNamesContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitIndexColumnNames(this);
+ }
+};
+
+IndexColumnNamesContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitIndexColumnNames(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.IndexColumnNamesContext = IndexColumnNamesContext;
+
+SqlParser.prototype.indexColumnNames = function() {
+
+ var localctx = new IndexColumnNamesContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 560, SqlParser.RULE_indexColumnNames);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5771;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 5772;
+ this.indexColumnName();
+ this.state = 5777;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 5773;
+ this.match(SqlParser.COMMA);
+ this.state = 5774;
+ this.indexColumnName();
+ this.state = 5779;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 5780;
+ this.match(SqlParser.RR_BRACKET);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function ExpressionsContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_expressions;
+ return this;
+}
+
+ExpressionsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+ExpressionsContext.prototype.constructor = ExpressionsContext;
+
+ExpressionsContext.prototype.expression = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ExpressionContext);
+ } else {
+ return this.getTypedRuleContext(ExpressionContext,i);
+ }
+};
+
+ExpressionsContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+ExpressionsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterExpressions(this);
+ }
+};
+
+ExpressionsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitExpressions(this);
+ }
+};
+
+ExpressionsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitExpressions(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.ExpressionsContext = ExpressionsContext;
+
+SqlParser.prototype.expressions = function() {
+
+ var localctx = new ExpressionsContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 562, SqlParser.RULE_expressions);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5782;
+ this.expression(0);
+ this.state = 5787;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 5783;
+ this.match(SqlParser.COMMA);
+ this.state = 5784;
+ this.expression(0);
+ this.state = 5789;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function ExpressionsWithDefaultsContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_expressionsWithDefaults;
+ return this;
+}
+
+ExpressionsWithDefaultsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+ExpressionsWithDefaultsContext.prototype.constructor = ExpressionsWithDefaultsContext;
+
+ExpressionsWithDefaultsContext.prototype.expressionOrDefault = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ExpressionOrDefaultContext);
+ } else {
+ return this.getTypedRuleContext(ExpressionOrDefaultContext,i);
+ }
+};
+
+ExpressionsWithDefaultsContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+ExpressionsWithDefaultsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterExpressionsWithDefaults(this);
+ }
+};
+
+ExpressionsWithDefaultsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitExpressionsWithDefaults(this);
+ }
+};
+
+ExpressionsWithDefaultsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitExpressionsWithDefaults(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.ExpressionsWithDefaultsContext = ExpressionsWithDefaultsContext;
+
+SqlParser.prototype.expressionsWithDefaults = function() {
+
+ var localctx = new ExpressionsWithDefaultsContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 564, SqlParser.RULE_expressionsWithDefaults);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5790;
+ this.expressionOrDefault();
+ this.state = 5795;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 5791;
+ this.match(SqlParser.COMMA);
+ this.state = 5792;
+ this.expressionOrDefault();
+ this.state = 5797;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function ConstantsContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_constants;
+ return this;
+}
+
+ConstantsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+ConstantsContext.prototype.constructor = ConstantsContext;
+
+ConstantsContext.prototype.constant = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ConstantContext);
+ } else {
+ return this.getTypedRuleContext(ConstantContext,i);
+ }
+};
+
+ConstantsContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+ConstantsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterConstants(this);
+ }
+};
+
+ConstantsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitConstants(this);
+ }
+};
+
+ConstantsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitConstants(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.ConstantsContext = ConstantsContext;
+
+SqlParser.prototype.constants = function() {
+
+ var localctx = new ConstantsContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 566, SqlParser.RULE_constants);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5798;
+ this.constant();
+ this.state = 5803;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 5799;
+ this.match(SqlParser.COMMA);
+ this.state = 5800;
+ this.constant();
+ this.state = 5805;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function SimpleStringsContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_simpleStrings;
+ return this;
+}
+
+SimpleStringsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+SimpleStringsContext.prototype.constructor = SimpleStringsContext;
+
+SimpleStringsContext.prototype.STRING_LITERAL = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.STRING_LITERAL);
+ } else {
+ return this.getToken(SqlParser.STRING_LITERAL, i);
+ }
+};
+
+
+SimpleStringsContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+SimpleStringsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSimpleStrings(this);
+ }
+};
+
+SimpleStringsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSimpleStrings(this);
+ }
+};
+
+SimpleStringsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSimpleStrings(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.SimpleStringsContext = SimpleStringsContext;
+
+SqlParser.prototype.simpleStrings = function() {
+
+ var localctx = new SimpleStringsContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 568, SqlParser.RULE_simpleStrings);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5806;
+ this.match(SqlParser.STRING_LITERAL);
+ this.state = 5811;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 5807;
+ this.match(SqlParser.COMMA);
+ this.state = 5808;
+ this.match(SqlParser.STRING_LITERAL);
+ this.state = 5813;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function UserVariablesContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_userVariables;
+ return this;
+}
+
+UserVariablesContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+UserVariablesContext.prototype.constructor = UserVariablesContext;
+
+UserVariablesContext.prototype.LOCAL_ID = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.LOCAL_ID);
+ } else {
+ return this.getToken(SqlParser.LOCAL_ID, i);
+ }
+};
+
+
+UserVariablesContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+UserVariablesContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterUserVariables(this);
+ }
+};
+
+UserVariablesContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitUserVariables(this);
+ }
+};
+
+UserVariablesContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitUserVariables(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.UserVariablesContext = UserVariablesContext;
+
+SqlParser.prototype.userVariables = function() {
+
+ var localctx = new UserVariablesContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 570, SqlParser.RULE_userVariables);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5814;
+ this.match(SqlParser.LOCAL_ID);
+ this.state = 5819;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 5815;
+ this.match(SqlParser.COMMA);
+ this.state = 5816;
+ this.match(SqlParser.LOCAL_ID);
+ this.state = 5821;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function DefaultValueContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_defaultValue;
+ return this;
+}
+
+DefaultValueContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+DefaultValueContext.prototype.constructor = DefaultValueContext;
+
+DefaultValueContext.prototype.NULL_LITERAL = function() {
+ return this.getToken(SqlParser.NULL_LITERAL, 0);
+};
+
+DefaultValueContext.prototype.constant = function() {
+ return this.getTypedRuleContext(ConstantContext,0);
+};
+
+DefaultValueContext.prototype.unaryOperator = function() {
+ return this.getTypedRuleContext(UnaryOperatorContext,0);
+};
+
+DefaultValueContext.prototype.currentTimestamp = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(CurrentTimestampContext);
+ } else {
+ return this.getTypedRuleContext(CurrentTimestampContext,i);
+ }
+};
+
+DefaultValueContext.prototype.ON = function() {
+ return this.getToken(SqlParser.ON, 0);
+};
+
+DefaultValueContext.prototype.UPDATE = function() {
+ return this.getToken(SqlParser.UPDATE, 0);
+};
+
+DefaultValueContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterDefaultValue(this);
+ }
+};
+
+DefaultValueContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitDefaultValue(this);
+ }
+};
+
+DefaultValueContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitDefaultValue(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.DefaultValueContext = DefaultValueContext;
+
+SqlParser.prototype.defaultValue = function() {
+
+ var localctx = new DefaultValueContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 572, SqlParser.RULE_defaultValue);
+ try {
+ this.state = 5833;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,862,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5822;
+ this.match(SqlParser.NULL_LITERAL);
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 5824;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,860,this._ctx);
+ if(la_===1) {
+ this.state = 5823;
+ this.unaryOperator();
+
+ }
+ this.state = 5826;
+ this.constant();
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 5827;
+ this.currentTimestamp();
+ this.state = 5831;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,861,this._ctx);
+ if(la_===1) {
+ this.state = 5828;
+ this.match(SqlParser.ON);
+ this.state = 5829;
+ this.match(SqlParser.UPDATE);
+ this.state = 5830;
+ this.currentTimestamp();
+
+ }
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function CurrentTimestampContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_currentTimestamp;
+ return this;
+}
+
+CurrentTimestampContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+CurrentTimestampContext.prototype.constructor = CurrentTimestampContext;
+
+CurrentTimestampContext.prototype.NOW = function() {
+ return this.getToken(SqlParser.NOW, 0);
+};
+
+CurrentTimestampContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+CurrentTimestampContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+CurrentTimestampContext.prototype.CURRENT_TIMESTAMP = function() {
+ return this.getToken(SqlParser.CURRENT_TIMESTAMP, 0);
+};
+
+CurrentTimestampContext.prototype.LOCALTIME = function() {
+ return this.getToken(SqlParser.LOCALTIME, 0);
+};
+
+CurrentTimestampContext.prototype.LOCALTIMESTAMP = function() {
+ return this.getToken(SqlParser.LOCALTIMESTAMP, 0);
+};
+
+CurrentTimestampContext.prototype.decimalLiteral = function() {
+ return this.getTypedRuleContext(DecimalLiteralContext,0);
+};
+
+CurrentTimestampContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterCurrentTimestamp(this);
+ }
+};
+
+CurrentTimestampContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitCurrentTimestamp(this);
+ }
+};
+
+CurrentTimestampContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitCurrentTimestamp(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.CurrentTimestampContext = CurrentTimestampContext;
+
+SqlParser.prototype.currentTimestamp = function() {
+
+ var localctx = new CurrentTimestampContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 574, SqlParser.RULE_currentTimestamp);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5849;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.CURRENT_TIMESTAMP:
+ case SqlParser.LOCALTIME:
+ case SqlParser.LOCALTIMESTAMP:
+ this.state = 5835;
+ _la = this._input.LA(1);
+ if(!(((((_la - 253)) & ~0x1f) == 0 && ((1 << (_la - 253)) & ((1 << (SqlParser.CURRENT_TIMESTAMP - 253)) | (1 << (SqlParser.LOCALTIME - 253)) | (1 << (SqlParser.LOCALTIMESTAMP - 253)))) !== 0))) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 5841;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,864,this._ctx);
+ if(la_===1) {
+ this.state = 5836;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 5838;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(((((_la - 1025)) & ~0x1f) == 0 && ((1 << (_la - 1025)) & ((1 << (SqlParser.ZERO_DECIMAL - 1025)) | (1 << (SqlParser.ONE_DECIMAL - 1025)) | (1 << (SqlParser.TWO_DECIMAL - 1025)) | (1 << (SqlParser.DECIMAL_LITERAL - 1025)))) !== 0)) {
+ this.state = 5837;
+ this.decimalLiteral();
+ }
+
+ this.state = 5840;
+ this.match(SqlParser.RR_BRACKET);
+
+ }
+ break;
+ case SqlParser.NOW:
+ this.state = 5843;
+ this.match(SqlParser.NOW);
+ this.state = 5844;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 5846;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(((((_la - 1025)) & ~0x1f) == 0 && ((1 << (_la - 1025)) & ((1 << (SqlParser.ZERO_DECIMAL - 1025)) | (1 << (SqlParser.ONE_DECIMAL - 1025)) | (1 << (SqlParser.TWO_DECIMAL - 1025)) | (1 << (SqlParser.DECIMAL_LITERAL - 1025)))) !== 0)) {
+ this.state = 5845;
+ this.decimalLiteral();
+ }
+
+ this.state = 5848;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function ExpressionOrDefaultContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_expressionOrDefault;
+ return this;
+}
+
+ExpressionOrDefaultContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+ExpressionOrDefaultContext.prototype.constructor = ExpressionOrDefaultContext;
+
+ExpressionOrDefaultContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+ExpressionOrDefaultContext.prototype.DEFAULT = function() {
+ return this.getToken(SqlParser.DEFAULT, 0);
+};
+
+ExpressionOrDefaultContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterExpressionOrDefault(this);
+ }
+};
+
+ExpressionOrDefaultContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitExpressionOrDefault(this);
+ }
+};
+
+ExpressionOrDefaultContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitExpressionOrDefault(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.ExpressionOrDefaultContext = ExpressionOrDefaultContext;
+
+SqlParser.prototype.expressionOrDefault = function() {
+
+ var localctx = new ExpressionOrDefaultContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 576, SqlParser.RULE_expressionOrDefault);
+ try {
+ this.state = 5853;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.CASE:
+ case SqlParser.CAST:
+ case SqlParser.CONVERT:
+ case SqlParser.CURRENT:
+ case SqlParser.CURRENT_USER:
+ case SqlParser.DATABASE:
+ case SqlParser.DIAGNOSTICS:
+ case SqlParser.EXISTS:
+ case SqlParser.FALSE:
+ case SqlParser.IF:
+ case SqlParser.INSERT:
+ case SqlParser.INTERVAL:
+ case SqlParser.LEFT:
+ case SqlParser.NOT:
+ case SqlParser.NULL_LITERAL:
+ case SqlParser.NUMBER:
+ case SqlParser.REPLACE:
+ case SqlParser.RIGHT:
+ case SqlParser.STACKED:
+ case SqlParser.TRUE:
+ case SqlParser.VALUES:
+ case SqlParser.DATE:
+ case SqlParser.TIME:
+ case SqlParser.TIMESTAMP:
+ case SqlParser.DATETIME:
+ case SqlParser.YEAR:
+ case SqlParser.CHAR:
+ case SqlParser.BINARY:
+ case SqlParser.TEXT:
+ case SqlParser.ENUM:
+ case SqlParser.SERIAL:
+ case SqlParser.JSON_VALID:
+ case SqlParser.JSON_SCHEMA_VALID:
+ case SqlParser.AVG:
+ case SqlParser.BIT_AND:
+ case SqlParser.BIT_OR:
+ case SqlParser.BIT_XOR:
+ case SqlParser.COUNT:
+ case SqlParser.GROUP_CONCAT:
+ case SqlParser.MAX:
+ case SqlParser.MIN:
+ case SqlParser.STD:
+ case SqlParser.STDDEV:
+ case SqlParser.STDDEV_POP:
+ case SqlParser.STDDEV_SAMP:
+ case SqlParser.SUM:
+ case SqlParser.VAR_POP:
+ case SqlParser.VAR_SAMP:
+ case SqlParser.VARIANCE:
+ case SqlParser.CURRENT_DATE:
+ case SqlParser.CURRENT_TIME:
+ case SqlParser.CURRENT_TIMESTAMP:
+ case SqlParser.LOCALTIME:
+ case SqlParser.CURDATE:
+ case SqlParser.CURTIME:
+ case SqlParser.DATE_ADD:
+ case SqlParser.DATE_SUB:
+ case SqlParser.EXTRACT:
+ case SqlParser.LOCALTIMESTAMP:
+ case SqlParser.NOW:
+ case SqlParser.POSITION:
+ case SqlParser.SUBSTR:
+ case SqlParser.SUBSTRING:
+ case SqlParser.SYSDATE:
+ case SqlParser.TRIM:
+ case SqlParser.UTC_DATE:
+ case SqlParser.UTC_TIME:
+ case SqlParser.UTC_TIMESTAMP:
+ case SqlParser.ACCOUNT:
+ case SqlParser.ACTION:
+ case SqlParser.AFTER:
+ case SqlParser.AGGREGATE:
+ case SqlParser.ALGORITHM:
+ case SqlParser.ANY:
+ case SqlParser.AT:
+ case SqlParser.AUTHORS:
+ case SqlParser.AUTOCOMMIT:
+ case SqlParser.AUTOEXTEND_SIZE:
+ case SqlParser.AUTO_INCREMENT:
+ case SqlParser.AVG_ROW_LENGTH:
+ case SqlParser.BEGIN:
+ case SqlParser.BINLOG:
+ case SqlParser.BIT:
+ case SqlParser.BLOCK:
+ case SqlParser.BOOL:
+ case SqlParser.BOOLEAN:
+ case SqlParser.BTREE:
+ case SqlParser.CACHE:
+ case SqlParser.CASCADED:
+ case SqlParser.CHAIN:
+ case SqlParser.CHANGED:
+ case SqlParser.CHANNEL:
+ case SqlParser.CHECKSUM:
+ case SqlParser.PAGE_CHECKSUM:
+ case SqlParser.CIPHER:
+ case SqlParser.CLASS_ORIGIN:
+ case SqlParser.CLIENT:
+ case SqlParser.CLOSE:
+ case SqlParser.COALESCE:
+ case SqlParser.CODE:
+ case SqlParser.COLUMNS:
+ case SqlParser.COLUMN_FORMAT:
+ case SqlParser.COLUMN_NAME:
+ case SqlParser.COMMENT:
+ case SqlParser.COMMIT:
+ case SqlParser.COMPACT:
+ case SqlParser.COMPLETION:
+ case SqlParser.COMPRESSED:
+ case SqlParser.COMPRESSION:
+ case SqlParser.CONCURRENT:
+ case SqlParser.CONNECTION:
+ case SqlParser.CONSISTENT:
+ case SqlParser.CONSTRAINT_CATALOG:
+ case SqlParser.CONSTRAINT_SCHEMA:
+ case SqlParser.CONSTRAINT_NAME:
+ case SqlParser.CONTAINS:
+ case SqlParser.CONTEXT:
+ case SqlParser.CONTRIBUTORS:
+ case SqlParser.COPY:
+ case SqlParser.CPU:
+ case SqlParser.CURSOR_NAME:
+ case SqlParser.DATA:
+ case SqlParser.DATAFILE:
+ case SqlParser.DEALLOCATE:
+ case SqlParser.DEFAULT_AUTH:
+ case SqlParser.DEFINER:
+ case SqlParser.DELAY_KEY_WRITE:
+ case SqlParser.DES_KEY_FILE:
+ case SqlParser.DIRECTORY:
+ case SqlParser.DISABLE:
+ case SqlParser.DISCARD:
+ case SqlParser.DISK:
+ case SqlParser.DO:
+ case SqlParser.DUMPFILE:
+ case SqlParser.DUPLICATE:
+ case SqlParser.DYNAMIC:
+ case SqlParser.ENABLE:
+ case SqlParser.ENCRYPTION:
+ case SqlParser.END:
+ case SqlParser.ENDS:
+ case SqlParser.ENGINE:
+ case SqlParser.ENGINES:
+ case SqlParser.ERROR:
+ case SqlParser.ERRORS:
+ case SqlParser.ESCAPE:
+ case SqlParser.EVEN:
+ case SqlParser.EVENT:
+ case SqlParser.EVENTS:
+ case SqlParser.EVERY:
+ case SqlParser.EXCHANGE:
+ case SqlParser.EXCLUSIVE:
+ case SqlParser.EXPIRE:
+ case SqlParser.EXPORT:
+ case SqlParser.EXTENDED:
+ case SqlParser.EXTENT_SIZE:
+ case SqlParser.FAST:
+ case SqlParser.FAULTS:
+ case SqlParser.FIELDS:
+ case SqlParser.FILE_BLOCK_SIZE:
+ case SqlParser.FILTER:
+ case SqlParser.FIRST:
+ case SqlParser.FIXED:
+ case SqlParser.FLUSH:
+ case SqlParser.FOLLOWS:
+ case SqlParser.FOUND:
+ case SqlParser.FULL:
+ case SqlParser.FUNCTION:
+ case SqlParser.GENERAL:
+ case SqlParser.GLOBAL:
+ case SqlParser.GRANTS:
+ case SqlParser.GROUP_REPLICATION:
+ case SqlParser.HANDLER:
+ case SqlParser.HASH:
+ case SqlParser.HELP:
+ case SqlParser.HOST:
+ case SqlParser.HOSTS:
+ case SqlParser.IDENTIFIED:
+ case SqlParser.IGNORE_SERVER_IDS:
+ case SqlParser.IMPORT:
+ case SqlParser.INDEXES:
+ case SqlParser.INITIAL_SIZE:
+ case SqlParser.INPLACE:
+ case SqlParser.INSERT_METHOD:
+ case SqlParser.INSTALL:
+ case SqlParser.INSTANCE:
+ case SqlParser.INVISIBLE:
+ case SqlParser.INVOKER:
+ case SqlParser.IO:
+ case SqlParser.IO_THREAD:
+ case SqlParser.IPC:
+ case SqlParser.ISOLATION:
+ case SqlParser.ISSUER:
+ case SqlParser.JSON:
+ case SqlParser.KEY_BLOCK_SIZE:
+ case SqlParser.LANGUAGE:
+ case SqlParser.LAST:
+ case SqlParser.LEAVES:
+ case SqlParser.LESS:
+ case SqlParser.LEVEL:
+ case SqlParser.LIST:
+ case SqlParser.LOCAL:
+ case SqlParser.LOGFILE:
+ case SqlParser.LOGS:
+ case SqlParser.MASTER:
+ case SqlParser.MASTER_AUTO_POSITION:
+ case SqlParser.MASTER_CONNECT_RETRY:
+ case SqlParser.MASTER_DELAY:
+ case SqlParser.MASTER_HEARTBEAT_PERIOD:
+ case SqlParser.MASTER_HOST:
+ case SqlParser.MASTER_LOG_FILE:
+ case SqlParser.MASTER_LOG_POS:
+ case SqlParser.MASTER_PASSWORD:
+ case SqlParser.MASTER_PORT:
+ case SqlParser.MASTER_RETRY_COUNT:
+ case SqlParser.MASTER_SSL:
+ case SqlParser.MASTER_SSL_CA:
+ case SqlParser.MASTER_SSL_CAPATH:
+ case SqlParser.MASTER_SSL_CERT:
+ case SqlParser.MASTER_SSL_CIPHER:
+ case SqlParser.MASTER_SSL_CRL:
+ case SqlParser.MASTER_SSL_CRLPATH:
+ case SqlParser.MASTER_SSL_KEY:
+ case SqlParser.MASTER_TLS_VERSION:
+ case SqlParser.MASTER_USER:
+ case SqlParser.MAX_CONNECTIONS_PER_HOUR:
+ case SqlParser.MAX_QUERIES_PER_HOUR:
+ case SqlParser.MAX_ROWS:
+ case SqlParser.MAX_SIZE:
+ case SqlParser.MAX_UPDATES_PER_HOUR:
+ case SqlParser.MAX_USER_CONNECTIONS:
+ case SqlParser.MEDIUM:
+ case SqlParser.MERGE:
+ case SqlParser.MESSAGE_TEXT:
+ case SqlParser.MID:
+ case SqlParser.MIGRATE:
+ case SqlParser.MIN_ROWS:
+ case SqlParser.MODE:
+ case SqlParser.MODIFY:
+ case SqlParser.MUTEX:
+ case SqlParser.MYSQL:
+ case SqlParser.MYSQL_ERRNO:
+ case SqlParser.NAME:
+ case SqlParser.NAMES:
+ case SqlParser.NCHAR:
+ case SqlParser.NEVER:
+ case SqlParser.NEXT:
+ case SqlParser.NO:
+ case SqlParser.NODEGROUP:
+ case SqlParser.NONE:
+ case SqlParser.OFFLINE:
+ case SqlParser.OFFSET:
+ case SqlParser.OJ:
+ case SqlParser.OLD_PASSWORD:
+ case SqlParser.ONE:
+ case SqlParser.ONLINE:
+ case SqlParser.ONLY:
+ case SqlParser.OPEN:
+ case SqlParser.OPTIMIZER_COSTS:
+ case SqlParser.OPTIONS:
+ case SqlParser.OWNER:
+ case SqlParser.PACK_KEYS:
+ case SqlParser.PAGE:
+ case SqlParser.PARSER:
+ case SqlParser.PARTIAL:
+ case SqlParser.PARTITIONING:
+ case SqlParser.PARTITIONS:
+ case SqlParser.PASSWORD:
+ case SqlParser.PHASE:
+ case SqlParser.PLUGIN:
+ case SqlParser.PLUGIN_DIR:
+ case SqlParser.PLUGINS:
+ case SqlParser.PORT:
+ case SqlParser.PRECEDES:
+ case SqlParser.PREPARE:
+ case SqlParser.PRESERVE:
+ case SqlParser.PREV:
+ case SqlParser.PROCESSLIST:
+ case SqlParser.PROFILE:
+ case SqlParser.PROFILES:
+ case SqlParser.PROXY:
+ case SqlParser.QUERY:
+ case SqlParser.QUICK:
+ case SqlParser.REBUILD:
+ case SqlParser.RECOVER:
+ case SqlParser.REDO_BUFFER_SIZE:
+ case SqlParser.REDUNDANT:
+ case SqlParser.RELAY:
+ case SqlParser.RELAY_LOG_FILE:
+ case SqlParser.RELAY_LOG_POS:
+ case SqlParser.RELAYLOG:
+ case SqlParser.REMOVE:
+ case SqlParser.REORGANIZE:
+ case SqlParser.REPAIR:
+ case SqlParser.REPLICATE_DO_DB:
+ case SqlParser.REPLICATE_DO_TABLE:
+ case SqlParser.REPLICATE_IGNORE_DB:
+ case SqlParser.REPLICATE_IGNORE_TABLE:
+ case SqlParser.REPLICATE_REWRITE_DB:
+ case SqlParser.REPLICATE_WILD_DO_TABLE:
+ case SqlParser.REPLICATE_WILD_IGNORE_TABLE:
+ case SqlParser.REPLICATION:
+ case SqlParser.RESET:
+ case SqlParser.RESUME:
+ case SqlParser.RETURNED_SQLSTATE:
+ case SqlParser.RETURNS:
+ case SqlParser.ROLE:
+ case SqlParser.ROLLBACK:
+ case SqlParser.ROLLUP:
+ case SqlParser.ROTATE:
+ case SqlParser.ROW:
+ case SqlParser.ROWS:
+ case SqlParser.ROW_FORMAT:
+ case SqlParser.SAVEPOINT:
+ case SqlParser.SCHEDULE:
+ case SqlParser.SECURITY:
+ case SqlParser.SERVER:
+ case SqlParser.SESSION:
+ case SqlParser.SHARE:
+ case SqlParser.SHARED:
+ case SqlParser.SIGNED:
+ case SqlParser.SIMPLE:
+ case SqlParser.SLAVE:
+ case SqlParser.SLOW:
+ case SqlParser.SNAPSHOT:
+ case SqlParser.SOCKET:
+ case SqlParser.SOME:
+ case SqlParser.SONAME:
+ case SqlParser.SOUNDS:
+ case SqlParser.SOURCE:
+ case SqlParser.SQL_AFTER_GTIDS:
+ case SqlParser.SQL_AFTER_MTS_GAPS:
+ case SqlParser.SQL_BEFORE_GTIDS:
+ case SqlParser.SQL_BUFFER_RESULT:
+ case SqlParser.SQL_CACHE:
+ case SqlParser.SQL_NO_CACHE:
+ case SqlParser.SQL_THREAD:
+ case SqlParser.START:
+ case SqlParser.STARTS:
+ case SqlParser.STATS_AUTO_RECALC:
+ case SqlParser.STATS_PERSISTENT:
+ case SqlParser.STATS_SAMPLE_PAGES:
+ case SqlParser.STATUS:
+ case SqlParser.STOP:
+ case SqlParser.STORAGE:
+ case SqlParser.STRING:
+ case SqlParser.SUBCLASS_ORIGIN:
+ case SqlParser.SUBJECT:
+ case SqlParser.SUBPARTITION:
+ case SqlParser.SUBPARTITIONS:
+ case SqlParser.SUSPEND:
+ case SqlParser.SWAPS:
+ case SqlParser.SWITCHES:
+ case SqlParser.TABLE_NAME:
+ case SqlParser.TABLESPACE:
+ case SqlParser.TEMPORARY:
+ case SqlParser.TEMPTABLE:
+ case SqlParser.THAN:
+ case SqlParser.TRADITIONAL:
+ case SqlParser.TRANSACTION:
+ case SqlParser.TRANSACTIONAL:
+ case SqlParser.TRIGGERS:
+ case SqlParser.TRUNCATE:
+ case SqlParser.UNDEFINED:
+ case SqlParser.UNDOFILE:
+ case SqlParser.UNDO_BUFFER_SIZE:
+ case SqlParser.UNINSTALL:
+ case SqlParser.UNKNOWN:
+ case SqlParser.UNTIL:
+ case SqlParser.UPGRADE:
+ case SqlParser.USER:
+ case SqlParser.USE_FRM:
+ case SqlParser.USER_RESOURCES:
+ case SqlParser.VALIDATION:
+ case SqlParser.VALUE:
+ case SqlParser.VARIABLES:
+ case SqlParser.VIEW:
+ case SqlParser.VISIBLE:
+ case SqlParser.WAIT:
+ case SqlParser.WARNINGS:
+ case SqlParser.WITHOUT:
+ case SqlParser.WORK:
+ case SqlParser.WRAPPER:
+ case SqlParser.X509:
+ case SqlParser.XA:
+ case SqlParser.XML:
+ case SqlParser.INTERNAL:
+ case SqlParser.QUARTER:
+ case SqlParser.MONTH:
+ case SqlParser.DAY:
+ case SqlParser.HOUR:
+ case SqlParser.MINUTE:
+ case SqlParser.WEEK:
+ case SqlParser.SECOND:
+ case SqlParser.MICROSECOND:
+ case SqlParser.TABLES:
+ case SqlParser.ROUTINE:
+ case SqlParser.EXECUTE:
+ case SqlParser.FILE:
+ case SqlParser.PROCESS:
+ case SqlParser.RELOAD:
+ case SqlParser.SHUTDOWN:
+ case SqlParser.SUPER:
+ case SqlParser.PRIVILEGES:
+ case SqlParser.AUDIT_ADMIN:
+ case SqlParser.BACKUP_ADMIN:
+ case SqlParser.BINLOG_ADMIN:
+ case SqlParser.BINLOG_ENCRYPTION_ADMIN:
+ case SqlParser.CLONE_ADMIN:
+ case SqlParser.CONNECTION_ADMIN:
+ case SqlParser.ENCRYPTION_KEY_ADMIN:
+ case SqlParser.FIREWALL_ADMIN:
+ case SqlParser.FIREWALL_USER:
+ case SqlParser.GROUP_REPLICATION_ADMIN:
+ case SqlParser.INNODB_REDO_LOG_ARCHIVE:
+ case SqlParser.NDB_STORED_USER:
+ case SqlParser.PERSIST_RO_VARIABLES_ADMIN:
+ case SqlParser.REPLICATION_APPLIER:
+ case SqlParser.REPLICATION_SLAVE_ADMIN:
+ case SqlParser.RESOURCE_GROUP_ADMIN:
+ case SqlParser.RESOURCE_GROUP_USER:
+ case SqlParser.ROLE_ADMIN:
+ case SqlParser.SESSION_VARIABLES_ADMIN:
+ case SqlParser.SET_USER_ID:
+ case SqlParser.SHOW_ROUTINE:
+ case SqlParser.SYSTEM_VARIABLES_ADMIN:
+ case SqlParser.TABLE_ENCRYPTION_ADMIN:
+ case SqlParser.VERSION_TOKEN_ADMIN:
+ case SqlParser.XA_RECOVER_ADMIN:
+ case SqlParser.ARMSCII8:
+ case SqlParser.ASCII:
+ case SqlParser.BIG5:
+ case SqlParser.CP1250:
+ case SqlParser.CP1251:
+ case SqlParser.CP1256:
+ case SqlParser.CP1257:
+ case SqlParser.CP850:
+ case SqlParser.CP852:
+ case SqlParser.CP866:
+ case SqlParser.CP932:
+ case SqlParser.DEC8:
+ case SqlParser.EUCJPMS:
+ case SqlParser.EUCKR:
+ case SqlParser.GB2312:
+ case SqlParser.GBK:
+ case SqlParser.GEOSTD8:
+ case SqlParser.GREEK:
+ case SqlParser.HEBREW:
+ case SqlParser.HP8:
+ case SqlParser.KEYBCS2:
+ case SqlParser.KOI8R:
+ case SqlParser.KOI8U:
+ case SqlParser.LATIN1:
+ case SqlParser.LATIN2:
+ case SqlParser.LATIN5:
+ case SqlParser.LATIN7:
+ case SqlParser.MACCE:
+ case SqlParser.MACROMAN:
+ case SqlParser.SJIS:
+ case SqlParser.SWE7:
+ case SqlParser.TIS620:
+ case SqlParser.UCS2:
+ case SqlParser.UJIS:
+ case SqlParser.UTF16:
+ case SqlParser.UTF16LE:
+ case SqlParser.UTF32:
+ case SqlParser.UTF8:
+ case SqlParser.UTF8MB3:
+ case SqlParser.UTF8MB4:
+ case SqlParser.ARCHIVE:
+ case SqlParser.BLACKHOLE:
+ case SqlParser.CSV:
+ case SqlParser.FEDERATED:
+ case SqlParser.INNODB:
+ case SqlParser.MEMORY:
+ case SqlParser.MRG_MYISAM:
+ case SqlParser.MYISAM:
+ case SqlParser.NDB:
+ case SqlParser.NDBCLUSTER:
+ case SqlParser.PERFORMANCE_SCHEMA:
+ case SqlParser.TOKUDB:
+ case SqlParser.REPEATABLE:
+ case SqlParser.COMMITTED:
+ case SqlParser.UNCOMMITTED:
+ case SqlParser.SERIALIZABLE:
+ case SqlParser.GEOMETRYCOLLECTION:
+ case SqlParser.LINESTRING:
+ case SqlParser.MULTILINESTRING:
+ case SqlParser.MULTIPOINT:
+ case SqlParser.MULTIPOLYGON:
+ case SqlParser.POINT:
+ case SqlParser.POLYGON:
+ case SqlParser.ABS:
+ case SqlParser.ACOS:
+ case SqlParser.ADDDATE:
+ case SqlParser.ADDTIME:
+ case SqlParser.AES_DECRYPT:
+ case SqlParser.AES_ENCRYPT:
+ case SqlParser.AREA:
+ case SqlParser.ASBINARY:
+ case SqlParser.ASIN:
+ case SqlParser.ASTEXT:
+ case SqlParser.ASWKB:
+ case SqlParser.ASWKT:
+ case SqlParser.ASYMMETRIC_DECRYPT:
+ case SqlParser.ASYMMETRIC_DERIVE:
+ case SqlParser.ASYMMETRIC_ENCRYPT:
+ case SqlParser.ASYMMETRIC_SIGN:
+ case SqlParser.ASYMMETRIC_VERIFY:
+ case SqlParser.ATAN:
+ case SqlParser.ATAN2:
+ case SqlParser.BENCHMARK:
+ case SqlParser.BIN:
+ case SqlParser.BIT_COUNT:
+ case SqlParser.BIT_LENGTH:
+ case SqlParser.BUFFER:
+ case SqlParser.CATALOG_NAME:
+ case SqlParser.CEIL:
+ case SqlParser.CEILING:
+ case SqlParser.CENTROID:
+ case SqlParser.CHARACTER_LENGTH:
+ case SqlParser.CHARSET:
+ case SqlParser.CHAR_LENGTH:
+ case SqlParser.COERCIBILITY:
+ case SqlParser.COLLATION:
+ case SqlParser.COMPRESS:
+ case SqlParser.CONCAT:
+ case SqlParser.CONCAT_WS:
+ case SqlParser.CONNECTION_ID:
+ case SqlParser.CONV:
+ case SqlParser.CONVERT_TZ:
+ case SqlParser.COS:
+ case SqlParser.COT:
+ case SqlParser.CRC32:
+ case SqlParser.CREATE_ASYMMETRIC_PRIV_KEY:
+ case SqlParser.CREATE_ASYMMETRIC_PUB_KEY:
+ case SqlParser.CREATE_DH_PARAMETERS:
+ case SqlParser.CREATE_DIGEST:
+ case SqlParser.CROSSES:
+ case SqlParser.DATEDIFF:
+ case SqlParser.DATE_FORMAT:
+ case SqlParser.DAYNAME:
+ case SqlParser.DAYOFMONTH:
+ case SqlParser.DAYOFWEEK:
+ case SqlParser.DAYOFYEAR:
+ case SqlParser.DECODE:
+ case SqlParser.DEGREES:
+ case SqlParser.DES_DECRYPT:
+ case SqlParser.DES_ENCRYPT:
+ case SqlParser.DIMENSION:
+ case SqlParser.DISJOINT:
+ case SqlParser.ELT:
+ case SqlParser.ENCODE:
+ case SqlParser.ENCRYPT:
+ case SqlParser.ENDPOINT:
+ case SqlParser.ENVELOPE:
+ case SqlParser.EQUALS:
+ case SqlParser.EXP:
+ case SqlParser.EXPORT_SET:
+ case SqlParser.EXTERIORRING:
+ case SqlParser.EXTRACTVALUE:
+ case SqlParser.FIELD:
+ case SqlParser.FIND_IN_SET:
+ case SqlParser.FLOOR:
+ case SqlParser.FORMAT:
+ case SqlParser.FOUND_ROWS:
+ case SqlParser.FROM_BASE64:
+ case SqlParser.FROM_DAYS:
+ case SqlParser.FROM_UNIXTIME:
+ case SqlParser.GEOMCOLLFROMTEXT:
+ case SqlParser.GEOMCOLLFROMWKB:
+ case SqlParser.GEOMETRYCOLLECTIONFROMTEXT:
+ case SqlParser.GEOMETRYCOLLECTIONFROMWKB:
+ case SqlParser.GEOMETRYFROMTEXT:
+ case SqlParser.GEOMETRYFROMWKB:
+ case SqlParser.GEOMETRYN:
+ case SqlParser.GEOMETRYTYPE:
+ case SqlParser.GEOMFROMTEXT:
+ case SqlParser.GEOMFROMWKB:
+ case SqlParser.GET_FORMAT:
+ case SqlParser.GET_LOCK:
+ case SqlParser.GLENGTH:
+ case SqlParser.GREATEST:
+ case SqlParser.GTID_SUBSET:
+ case SqlParser.GTID_SUBTRACT:
+ case SqlParser.HEX:
+ case SqlParser.IFNULL:
+ case SqlParser.INET6_ATON:
+ case SqlParser.INET6_NTOA:
+ case SqlParser.INET_ATON:
+ case SqlParser.INET_NTOA:
+ case SqlParser.INSTR:
+ case SqlParser.INTERIORRINGN:
+ case SqlParser.INTERSECTS:
+ case SqlParser.ISCLOSED:
+ case SqlParser.ISEMPTY:
+ case SqlParser.ISNULL:
+ case SqlParser.ISSIMPLE:
+ case SqlParser.IS_FREE_LOCK:
+ case SqlParser.IS_IPV4:
+ case SqlParser.IS_IPV4_COMPAT:
+ case SqlParser.IS_IPV4_MAPPED:
+ case SqlParser.IS_IPV6:
+ case SqlParser.IS_USED_LOCK:
+ case SqlParser.LAST_INSERT_ID:
+ case SqlParser.LCASE:
+ case SqlParser.LEAST:
+ case SqlParser.LENGTH:
+ case SqlParser.LINEFROMTEXT:
+ case SqlParser.LINEFROMWKB:
+ case SqlParser.LINESTRINGFROMTEXT:
+ case SqlParser.LINESTRINGFROMWKB:
+ case SqlParser.LN:
+ case SqlParser.LOAD_FILE:
+ case SqlParser.LOCATE:
+ case SqlParser.LOG:
+ case SqlParser.LOG10:
+ case SqlParser.LOG2:
+ case SqlParser.LOWER:
+ case SqlParser.LPAD:
+ case SqlParser.LTRIM:
+ case SqlParser.MAKEDATE:
+ case SqlParser.MAKETIME:
+ case SqlParser.MAKE_SET:
+ case SqlParser.MASTER_POS_WAIT:
+ case SqlParser.MBRCONTAINS:
+ case SqlParser.MBRDISJOINT:
+ case SqlParser.MBREQUAL:
+ case SqlParser.MBRINTERSECTS:
+ case SqlParser.MBROVERLAPS:
+ case SqlParser.MBRTOUCHES:
+ case SqlParser.MBRWITHIN:
+ case SqlParser.MD5:
+ case SqlParser.MLINEFROMTEXT:
+ case SqlParser.MLINEFROMWKB:
+ case SqlParser.MONTHNAME:
+ case SqlParser.MPOINTFROMTEXT:
+ case SqlParser.MPOINTFROMWKB:
+ case SqlParser.MPOLYFROMTEXT:
+ case SqlParser.MPOLYFROMWKB:
+ case SqlParser.MULTILINESTRINGFROMTEXT:
+ case SqlParser.MULTILINESTRINGFROMWKB:
+ case SqlParser.MULTIPOINTFROMTEXT:
+ case SqlParser.MULTIPOINTFROMWKB:
+ case SqlParser.MULTIPOLYGONFROMTEXT:
+ case SqlParser.MULTIPOLYGONFROMWKB:
+ case SqlParser.NAME_CONST:
+ case SqlParser.NULLIF:
+ case SqlParser.NUMGEOMETRIES:
+ case SqlParser.NUMINTERIORRINGS:
+ case SqlParser.NUMPOINTS:
+ case SqlParser.OCT:
+ case SqlParser.OCTET_LENGTH:
+ case SqlParser.ORD:
+ case SqlParser.OVERLAPS:
+ case SqlParser.PERIOD_ADD:
+ case SqlParser.PERIOD_DIFF:
+ case SqlParser.PI:
+ case SqlParser.POINTFROMTEXT:
+ case SqlParser.POINTFROMWKB:
+ case SqlParser.POINTN:
+ case SqlParser.POLYFROMTEXT:
+ case SqlParser.POLYFROMWKB:
+ case SqlParser.POLYGONFROMTEXT:
+ case SqlParser.POLYGONFROMWKB:
+ case SqlParser.POW:
+ case SqlParser.POWER:
+ case SqlParser.QUOTE:
+ case SqlParser.RADIANS:
+ case SqlParser.RAND:
+ case SqlParser.RANDOM_BYTES:
+ case SqlParser.RELEASE_LOCK:
+ case SqlParser.REVERSE:
+ case SqlParser.ROUND:
+ case SqlParser.ROW_COUNT:
+ case SqlParser.RPAD:
+ case SqlParser.RTRIM:
+ case SqlParser.SEC_TO_TIME:
+ case SqlParser.SESSION_USER:
+ case SqlParser.SHA:
+ case SqlParser.SHA1:
+ case SqlParser.SHA2:
+ case SqlParser.SCHEMA_NAME:
+ case SqlParser.SIGN:
+ case SqlParser.SIN:
+ case SqlParser.SLEEP:
+ case SqlParser.SOUNDEX:
+ case SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS:
+ case SqlParser.SQRT:
+ case SqlParser.SRID:
+ case SqlParser.STARTPOINT:
+ case SqlParser.STRCMP:
+ case SqlParser.STR_TO_DATE:
+ case SqlParser.ST_AREA:
+ case SqlParser.ST_ASBINARY:
+ case SqlParser.ST_ASTEXT:
+ case SqlParser.ST_ASWKB:
+ case SqlParser.ST_ASWKT:
+ case SqlParser.ST_BUFFER:
+ case SqlParser.ST_CENTROID:
+ case SqlParser.ST_CONTAINS:
+ case SqlParser.ST_CROSSES:
+ case SqlParser.ST_DIFFERENCE:
+ case SqlParser.ST_DIMENSION:
+ case SqlParser.ST_DISJOINT:
+ case SqlParser.ST_DISTANCE:
+ case SqlParser.ST_ENDPOINT:
+ case SqlParser.ST_ENVELOPE:
+ case SqlParser.ST_EQUALS:
+ case SqlParser.ST_EXTERIORRING:
+ case SqlParser.ST_GEOMCOLLFROMTEXT:
+ case SqlParser.ST_GEOMCOLLFROMTXT:
+ case SqlParser.ST_GEOMCOLLFROMWKB:
+ case SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT:
+ case SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB:
+ case SqlParser.ST_GEOMETRYFROMTEXT:
+ case SqlParser.ST_GEOMETRYFROMWKB:
+ case SqlParser.ST_GEOMETRYN:
+ case SqlParser.ST_GEOMETRYTYPE:
+ case SqlParser.ST_GEOMFROMTEXT:
+ case SqlParser.ST_GEOMFROMWKB:
+ case SqlParser.ST_INTERIORRINGN:
+ case SqlParser.ST_INTERSECTION:
+ case SqlParser.ST_INTERSECTS:
+ case SqlParser.ST_ISCLOSED:
+ case SqlParser.ST_ISEMPTY:
+ case SqlParser.ST_ISSIMPLE:
+ case SqlParser.ST_LINEFROMTEXT:
+ case SqlParser.ST_LINEFROMWKB:
+ case SqlParser.ST_LINESTRINGFROMTEXT:
+ case SqlParser.ST_LINESTRINGFROMWKB:
+ case SqlParser.ST_NUMGEOMETRIES:
+ case SqlParser.ST_NUMINTERIORRING:
+ case SqlParser.ST_NUMINTERIORRINGS:
+ case SqlParser.ST_NUMPOINTS:
+ case SqlParser.ST_OVERLAPS:
+ case SqlParser.ST_POINTFROMTEXT:
+ case SqlParser.ST_POINTFROMWKB:
+ case SqlParser.ST_POINTN:
+ case SqlParser.ST_POLYFROMTEXT:
+ case SqlParser.ST_POLYFROMWKB:
+ case SqlParser.ST_POLYGONFROMTEXT:
+ case SqlParser.ST_POLYGONFROMWKB:
+ case SqlParser.ST_SRID:
+ case SqlParser.ST_STARTPOINT:
+ case SqlParser.ST_SYMDIFFERENCE:
+ case SqlParser.ST_TOUCHES:
+ case SqlParser.ST_UNION:
+ case SqlParser.ST_WITHIN:
+ case SqlParser.ST_X:
+ case SqlParser.ST_Y:
+ case SqlParser.SUBDATE:
+ case SqlParser.SUBSTRING_INDEX:
+ case SqlParser.SUBTIME:
+ case SqlParser.SYSTEM_USER:
+ case SqlParser.TAN:
+ case SqlParser.TIMEDIFF:
+ case SqlParser.TIMESTAMPADD:
+ case SqlParser.TIMESTAMPDIFF:
+ case SqlParser.TIME_FORMAT:
+ case SqlParser.TIME_TO_SEC:
+ case SqlParser.TOUCHES:
+ case SqlParser.TO_BASE64:
+ case SqlParser.TO_DAYS:
+ case SqlParser.TO_SECONDS:
+ case SqlParser.UCASE:
+ case SqlParser.UNCOMPRESS:
+ case SqlParser.UNCOMPRESSED_LENGTH:
+ case SqlParser.UNHEX:
+ case SqlParser.UNIX_TIMESTAMP:
+ case SqlParser.UPDATEXML:
+ case SqlParser.UPPER:
+ case SqlParser.UUID:
+ case SqlParser.UUID_SHORT:
+ case SqlParser.VALIDATE_PASSWORD_STRENGTH:
+ case SqlParser.VERSION:
+ case SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS:
+ case SqlParser.WEEKDAY:
+ case SqlParser.WEEKOFYEAR:
+ case SqlParser.WEIGHT_STRING:
+ case SqlParser.WITHIN:
+ case SqlParser.YEARWEEK:
+ case SqlParser.Y_FUNCTION:
+ case SqlParser.X_FUNCTION:
+ case SqlParser.PLUS:
+ case SqlParser.MINUS:
+ case SqlParser.EXCLAMATION_SYMBOL:
+ case SqlParser.BIT_NOT_OP:
+ case SqlParser.LR_BRACKET:
+ case SqlParser.ZERO_DECIMAL:
+ case SqlParser.ONE_DECIMAL:
+ case SqlParser.TWO_DECIMAL:
+ case SqlParser.CHARSET_REVERSE_QOUTE_STRING:
+ case SqlParser.START_NATIONAL_STRING_LITERAL:
+ case SqlParser.STRING_LITERAL:
+ case SqlParser.DECIMAL_LITERAL:
+ case SqlParser.HEXADECIMAL_LITERAL:
+ case SqlParser.REAL_LITERAL:
+ case SqlParser.NULL_SPEC_LITERAL:
+ case SqlParser.BIT_STRING:
+ case SqlParser.STRING_CHARSET_NAME:
+ case SqlParser.ID:
+ case SqlParser.REVERSE_QUOTE_ID:
+ case SqlParser.LOCAL_ID:
+ case SqlParser.GLOBAL_ID:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5851;
+ this.expression(0);
+ break;
+ case SqlParser.DEFAULT:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 5852;
+ this.match(SqlParser.DEFAULT);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function IfExistsContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_ifExists;
+ return this;
+}
+
+IfExistsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+IfExistsContext.prototype.constructor = IfExistsContext;
+
+IfExistsContext.prototype.IF = function() {
+ return this.getToken(SqlParser.IF, 0);
+};
+
+IfExistsContext.prototype.EXISTS = function() {
+ return this.getToken(SqlParser.EXISTS, 0);
+};
+
+IfExistsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterIfExists(this);
+ }
+};
+
+IfExistsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitIfExists(this);
+ }
+};
+
+IfExistsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitIfExists(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.IfExistsContext = IfExistsContext;
+
+SqlParser.prototype.ifExists = function() {
+
+ var localctx = new IfExistsContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 578, SqlParser.RULE_ifExists);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5855;
+ this.match(SqlParser.IF);
+ this.state = 5856;
+ this.match(SqlParser.EXISTS);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function IfNotExistsContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_ifNotExists;
+ return this;
+}
+
+IfNotExistsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+IfNotExistsContext.prototype.constructor = IfNotExistsContext;
+
+IfNotExistsContext.prototype.IF = function() {
+ return this.getToken(SqlParser.IF, 0);
+};
+
+IfNotExistsContext.prototype.NOT = function() {
+ return this.getToken(SqlParser.NOT, 0);
+};
+
+IfNotExistsContext.prototype.EXISTS = function() {
+ return this.getToken(SqlParser.EXISTS, 0);
+};
+
+IfNotExistsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterIfNotExists(this);
+ }
+};
+
+IfNotExistsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitIfNotExists(this);
+ }
+};
+
+IfNotExistsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitIfNotExists(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.IfNotExistsContext = IfNotExistsContext;
+
+SqlParser.prototype.ifNotExists = function() {
+
+ var localctx = new IfNotExistsContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 580, SqlParser.RULE_ifNotExists);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5858;
+ this.match(SqlParser.IF);
+ this.state = 5859;
+ this.match(SqlParser.NOT);
+ this.state = 5860;
+ this.match(SqlParser.EXISTS);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function FunctionCallContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_functionCall;
+ return this;
+}
+
+FunctionCallContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+FunctionCallContext.prototype.constructor = FunctionCallContext;
+
+
+
+FunctionCallContext.prototype.copyFrom = function(ctx) {
+ antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx);
+};
+
+
+function SpecificFunctionCallContext(parser, ctx) {
+ FunctionCallContext.call(this, parser);
+ FunctionCallContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+SpecificFunctionCallContext.prototype = Object.create(FunctionCallContext.prototype);
+SpecificFunctionCallContext.prototype.constructor = SpecificFunctionCallContext;
+
+SqlParser.SpecificFunctionCallContext = SpecificFunctionCallContext;
+
+SpecificFunctionCallContext.prototype.specificFunction = function() {
+ return this.getTypedRuleContext(SpecificFunctionContext,0);
+};
+SpecificFunctionCallContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSpecificFunctionCall(this);
+ }
+};
+
+SpecificFunctionCallContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSpecificFunctionCall(this);
+ }
+};
+
+SpecificFunctionCallContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSpecificFunctionCall(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function PasswordFunctionCallContext(parser, ctx) {
+ FunctionCallContext.call(this, parser);
+ FunctionCallContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+PasswordFunctionCallContext.prototype = Object.create(FunctionCallContext.prototype);
+PasswordFunctionCallContext.prototype.constructor = PasswordFunctionCallContext;
+
+SqlParser.PasswordFunctionCallContext = PasswordFunctionCallContext;
+
+PasswordFunctionCallContext.prototype.passwordFunctionClause = function() {
+ return this.getTypedRuleContext(PasswordFunctionClauseContext,0);
+};
+PasswordFunctionCallContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterPasswordFunctionCall(this);
+ }
+};
+
+PasswordFunctionCallContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitPasswordFunctionCall(this);
+ }
+};
+
+PasswordFunctionCallContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitPasswordFunctionCall(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function UdfFunctionCallContext(parser, ctx) {
+ FunctionCallContext.call(this, parser);
+ FunctionCallContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+UdfFunctionCallContext.prototype = Object.create(FunctionCallContext.prototype);
+UdfFunctionCallContext.prototype.constructor = UdfFunctionCallContext;
+
+SqlParser.UdfFunctionCallContext = UdfFunctionCallContext;
+
+UdfFunctionCallContext.prototype.fullId = function() {
+ return this.getTypedRuleContext(FullIdContext,0);
+};
+
+UdfFunctionCallContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+UdfFunctionCallContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+UdfFunctionCallContext.prototype.functionArgs = function() {
+ return this.getTypedRuleContext(FunctionArgsContext,0);
+};
+UdfFunctionCallContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterUdfFunctionCall(this);
+ }
+};
+
+UdfFunctionCallContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitUdfFunctionCall(this);
+ }
+};
+
+UdfFunctionCallContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitUdfFunctionCall(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function AggregateFunctionCallContext(parser, ctx) {
+ FunctionCallContext.call(this, parser);
+ FunctionCallContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+AggregateFunctionCallContext.prototype = Object.create(FunctionCallContext.prototype);
+AggregateFunctionCallContext.prototype.constructor = AggregateFunctionCallContext;
+
+SqlParser.AggregateFunctionCallContext = AggregateFunctionCallContext;
+
+AggregateFunctionCallContext.prototype.aggregateWindowedFunction = function() {
+ return this.getTypedRuleContext(AggregateWindowedFunctionContext,0);
+};
+AggregateFunctionCallContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAggregateFunctionCall(this);
+ }
+};
+
+AggregateFunctionCallContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAggregateFunctionCall(this);
+ }
+};
+
+AggregateFunctionCallContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAggregateFunctionCall(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function ScalarFunctionCallContext(parser, ctx) {
+ FunctionCallContext.call(this, parser);
+ FunctionCallContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+ScalarFunctionCallContext.prototype = Object.create(FunctionCallContext.prototype);
+ScalarFunctionCallContext.prototype.constructor = ScalarFunctionCallContext;
+
+SqlParser.ScalarFunctionCallContext = ScalarFunctionCallContext;
+
+ScalarFunctionCallContext.prototype.scalarFunctionName = function() {
+ return this.getTypedRuleContext(ScalarFunctionNameContext,0);
+};
+
+ScalarFunctionCallContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+ScalarFunctionCallContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+ScalarFunctionCallContext.prototype.functionArgs = function() {
+ return this.getTypedRuleContext(FunctionArgsContext,0);
+};
+ScalarFunctionCallContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterScalarFunctionCall(this);
+ }
+};
+
+ScalarFunctionCallContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitScalarFunctionCall(this);
+ }
+};
+
+ScalarFunctionCallContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitScalarFunctionCall(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+SqlParser.FunctionCallContext = FunctionCallContext;
+
+SqlParser.prototype.functionCall = function() {
+
+ var localctx = new FunctionCallContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 582, SqlParser.RULE_functionCall);
+ var _la = 0; // Token type
+ try {
+ this.state = 5879;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,870,this._ctx);
+ switch(la_) {
+ case 1:
+ localctx = new SpecificFunctionCallContext(this, localctx);
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5862;
+ this.specificFunction();
+ break;
+
+ case 2:
+ localctx = new AggregateFunctionCallContext(this, localctx);
+ this.enterOuterAlt(localctx, 2);
+ this.state = 5863;
+ this.aggregateWindowedFunction();
+ break;
+
+ case 3:
+ localctx = new ScalarFunctionCallContext(this, localctx);
+ this.enterOuterAlt(localctx, 3);
+ this.state = 5864;
+ this.scalarFunctionName();
+ this.state = 5865;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 5867;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if((((_la) & ~0x1f) == 0 && ((1 << _la) & ((1 << SqlParser.CASE) | (1 << SqlParser.CAST) | (1 << SqlParser.CONVERT))) !== 0) || ((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (SqlParser.CURRENT - 32)) | (1 << (SqlParser.CURRENT_USER - 32)) | (1 << (SqlParser.DATABASE - 32)) | (1 << (SqlParser.DIAGNOSTICS - 32)) | (1 << (SqlParser.EXISTS - 32)) | (1 << (SqlParser.FALSE - 32)))) !== 0) || ((((_la - 69)) & ~0x1f) == 0 && ((1 << (_la - 69)) & ((1 << (SqlParser.IF - 69)) | (1 << (SqlParser.INSERT - 69)) | (1 << (SqlParser.INTERVAL - 69)) | (1 << (SqlParser.LEFT - 69)))) !== 0) || ((((_la - 102)) & ~0x1f) == 0 && ((1 << (_la - 102)) & ((1 << (SqlParser.NOT - 102)) | (1 << (SqlParser.NULL_LITERAL - 102)) | (1 << (SqlParser.NUMBER - 102)) | (1 << (SqlParser.REPLACE - 102)) | (1 << (SqlParser.RIGHT - 102)))) !== 0) || ((((_la - 151)) & ~0x1f) == 0 && ((1 << (_la - 151)) & ((1 << (SqlParser.STACKED - 151)) | (1 << (SqlParser.TRUE - 151)) | (1 << (SqlParser.VALUES - 151)))) !== 0) || ((((_la - 199)) & ~0x1f) == 0 && ((1 << (_la - 199)) & ((1 << (SqlParser.DATE - 199)) | (1 << (SqlParser.TIME - 199)) | (1 << (SqlParser.TIMESTAMP - 199)) | (1 << (SqlParser.DATETIME - 199)) | (1 << (SqlParser.YEAR - 199)) | (1 << (SqlParser.CHAR - 199)) | (1 << (SqlParser.BINARY - 199)) | (1 << (SqlParser.TEXT - 199)) | (1 << (SqlParser.ENUM - 199)) | (1 << (SqlParser.SERIAL - 199)))) !== 0) || ((((_la - 233)) & ~0x1f) == 0 && ((1 << (_la - 233)) & ((1 << (SqlParser.JSON_VALID - 233)) | (1 << (SqlParser.JSON_SCHEMA_VALID - 233)) | (1 << (SqlParser.AVG - 233)) | (1 << (SqlParser.BIT_AND - 233)) | (1 << (SqlParser.BIT_OR - 233)) | (1 << (SqlParser.BIT_XOR - 233)) | (1 << (SqlParser.COUNT - 233)) | (1 << (SqlParser.GROUP_CONCAT - 233)) | (1 << (SqlParser.MAX - 233)) | (1 << (SqlParser.MIN - 233)) | (1 << (SqlParser.STD - 233)) | (1 << (SqlParser.STDDEV - 233)) | (1 << (SqlParser.STDDEV_POP - 233)) | (1 << (SqlParser.STDDEV_SAMP - 233)) | (1 << (SqlParser.SUM - 233)) | (1 << (SqlParser.VAR_POP - 233)) | (1 << (SqlParser.VAR_SAMP - 233)) | (1 << (SqlParser.VARIANCE - 233)) | (1 << (SqlParser.CURRENT_DATE - 233)) | (1 << (SqlParser.CURRENT_TIME - 233)) | (1 << (SqlParser.CURRENT_TIMESTAMP - 233)) | (1 << (SqlParser.LOCALTIME - 233)) | (1 << (SqlParser.CURDATE - 233)) | (1 << (SqlParser.CURTIME - 233)) | (1 << (SqlParser.DATE_ADD - 233)) | (1 << (SqlParser.DATE_SUB - 233)) | (1 << (SqlParser.EXTRACT - 233)) | (1 << (SqlParser.LOCALTIMESTAMP - 233)) | (1 << (SqlParser.NOW - 233)) | (1 << (SqlParser.POSITION - 233)) | (1 << (SqlParser.SUBSTR - 233)) | (1 << (SqlParser.SUBSTRING - 233)))) !== 0) || ((((_la - 265)) & ~0x1f) == 0 && ((1 << (_la - 265)) & ((1 << (SqlParser.SYSDATE - 265)) | (1 << (SqlParser.TRIM - 265)) | (1 << (SqlParser.UTC_DATE - 265)) | (1 << (SqlParser.UTC_TIME - 265)) | (1 << (SqlParser.UTC_TIMESTAMP - 265)) | (1 << (SqlParser.ACCOUNT - 265)) | (1 << (SqlParser.ACTION - 265)) | (1 << (SqlParser.AFTER - 265)) | (1 << (SqlParser.AGGREGATE - 265)) | (1 << (SqlParser.ALGORITHM - 265)) | (1 << (SqlParser.ANY - 265)) | (1 << (SqlParser.AT - 265)) | (1 << (SqlParser.AUTHORS - 265)) | (1 << (SqlParser.AUTOCOMMIT - 265)) | (1 << (SqlParser.AUTOEXTEND_SIZE - 265)) | (1 << (SqlParser.AUTO_INCREMENT - 265)) | (1 << (SqlParser.AVG_ROW_LENGTH - 265)) | (1 << (SqlParser.BEGIN - 265)) | (1 << (SqlParser.BINLOG - 265)) | (1 << (SqlParser.BIT - 265)) | (1 << (SqlParser.BLOCK - 265)) | (1 << (SqlParser.BOOL - 265)) | (1 << (SqlParser.BOOLEAN - 265)) | (1 << (SqlParser.BTREE - 265)) | (1 << (SqlParser.CACHE - 265)) | (1 << (SqlParser.CASCADED - 265)) | (1 << (SqlParser.CHAIN - 265)) | (1 << (SqlParser.CHANGED - 265)) | (1 << (SqlParser.CHANNEL - 265)) | (1 << (SqlParser.CHECKSUM - 265)) | (1 << (SqlParser.PAGE_CHECKSUM - 265)) | (1 << (SqlParser.CIPHER - 265)))) !== 0) || ((((_la - 297)) & ~0x1f) == 0 && ((1 << (_la - 297)) & ((1 << (SqlParser.CLASS_ORIGIN - 297)) | (1 << (SqlParser.CLIENT - 297)) | (1 << (SqlParser.CLOSE - 297)) | (1 << (SqlParser.COALESCE - 297)) | (1 << (SqlParser.CODE - 297)) | (1 << (SqlParser.COLUMNS - 297)) | (1 << (SqlParser.COLUMN_FORMAT - 297)) | (1 << (SqlParser.COLUMN_NAME - 297)) | (1 << (SqlParser.COMMENT - 297)) | (1 << (SqlParser.COMMIT - 297)) | (1 << (SqlParser.COMPACT - 297)) | (1 << (SqlParser.COMPLETION - 297)) | (1 << (SqlParser.COMPRESSED - 297)) | (1 << (SqlParser.COMPRESSION - 297)) | (1 << (SqlParser.CONCURRENT - 297)) | (1 << (SqlParser.CONNECTION - 297)) | (1 << (SqlParser.CONSISTENT - 297)) | (1 << (SqlParser.CONSTRAINT_CATALOG - 297)) | (1 << (SqlParser.CONSTRAINT_SCHEMA - 297)) | (1 << (SqlParser.CONSTRAINT_NAME - 297)) | (1 << (SqlParser.CONTAINS - 297)) | (1 << (SqlParser.CONTEXT - 297)) | (1 << (SqlParser.CONTRIBUTORS - 297)) | (1 << (SqlParser.COPY - 297)) | (1 << (SqlParser.CPU - 297)) | (1 << (SqlParser.CURSOR_NAME - 297)) | (1 << (SqlParser.DATA - 297)) | (1 << (SqlParser.DATAFILE - 297)) | (1 << (SqlParser.DEALLOCATE - 297)) | (1 << (SqlParser.DEFAULT_AUTH - 297)) | (1 << (SqlParser.DEFINER - 297)) | (1 << (SqlParser.DELAY_KEY_WRITE - 297)))) !== 0) || ((((_la - 329)) & ~0x1f) == 0 && ((1 << (_la - 329)) & ((1 << (SqlParser.DES_KEY_FILE - 329)) | (1 << (SqlParser.DIRECTORY - 329)) | (1 << (SqlParser.DISABLE - 329)) | (1 << (SqlParser.DISCARD - 329)) | (1 << (SqlParser.DISK - 329)) | (1 << (SqlParser.DO - 329)) | (1 << (SqlParser.DUMPFILE - 329)) | (1 << (SqlParser.DUPLICATE - 329)) | (1 << (SqlParser.DYNAMIC - 329)) | (1 << (SqlParser.ENABLE - 329)) | (1 << (SqlParser.ENCRYPTION - 329)) | (1 << (SqlParser.END - 329)) | (1 << (SqlParser.ENDS - 329)) | (1 << (SqlParser.ENGINE - 329)) | (1 << (SqlParser.ENGINES - 329)) | (1 << (SqlParser.ERROR - 329)) | (1 << (SqlParser.ERRORS - 329)) | (1 << (SqlParser.ESCAPE - 329)) | (1 << (SqlParser.EVEN - 329)) | (1 << (SqlParser.EVENT - 329)) | (1 << (SqlParser.EVENTS - 329)) | (1 << (SqlParser.EVERY - 329)) | (1 << (SqlParser.EXCHANGE - 329)) | (1 << (SqlParser.EXCLUSIVE - 329)) | (1 << (SqlParser.EXPIRE - 329)) | (1 << (SqlParser.EXPORT - 329)) | (1 << (SqlParser.EXTENDED - 329)) | (1 << (SqlParser.EXTENT_SIZE - 329)) | (1 << (SqlParser.FAST - 329)) | (1 << (SqlParser.FAULTS - 329)) | (1 << (SqlParser.FIELDS - 329)) | (1 << (SqlParser.FILE_BLOCK_SIZE - 329)))) !== 0) || ((((_la - 361)) & ~0x1f) == 0 && ((1 << (_la - 361)) & ((1 << (SqlParser.FILTER - 361)) | (1 << (SqlParser.FIRST - 361)) | (1 << (SqlParser.FIXED - 361)) | (1 << (SqlParser.FLUSH - 361)) | (1 << (SqlParser.FOLLOWS - 361)) | (1 << (SqlParser.FOUND - 361)) | (1 << (SqlParser.FULL - 361)) | (1 << (SqlParser.FUNCTION - 361)) | (1 << (SqlParser.GENERAL - 361)) | (1 << (SqlParser.GLOBAL - 361)) | (1 << (SqlParser.GRANTS - 361)) | (1 << (SqlParser.GROUP_REPLICATION - 361)) | (1 << (SqlParser.HANDLER - 361)) | (1 << (SqlParser.HASH - 361)) | (1 << (SqlParser.HELP - 361)) | (1 << (SqlParser.HOST - 361)) | (1 << (SqlParser.HOSTS - 361)) | (1 << (SqlParser.IDENTIFIED - 361)) | (1 << (SqlParser.IGNORE_SERVER_IDS - 361)) | (1 << (SqlParser.IMPORT - 361)) | (1 << (SqlParser.INDEXES - 361)) | (1 << (SqlParser.INITIAL_SIZE - 361)) | (1 << (SqlParser.INPLACE - 361)) | (1 << (SqlParser.INSERT_METHOD - 361)) | (1 << (SqlParser.INSTALL - 361)) | (1 << (SqlParser.INSTANCE - 361)) | (1 << (SqlParser.INVISIBLE - 361)) | (1 << (SqlParser.INVOKER - 361)) | (1 << (SqlParser.IO - 361)) | (1 << (SqlParser.IO_THREAD - 361)) | (1 << (SqlParser.IPC - 361)) | (1 << (SqlParser.ISOLATION - 361)))) !== 0) || ((((_la - 393)) & ~0x1f) == 0 && ((1 << (_la - 393)) & ((1 << (SqlParser.ISSUER - 393)) | (1 << (SqlParser.JSON - 393)) | (1 << (SqlParser.KEY_BLOCK_SIZE - 393)) | (1 << (SqlParser.LANGUAGE - 393)) | (1 << (SqlParser.LAST - 393)) | (1 << (SqlParser.LEAVES - 393)) | (1 << (SqlParser.LESS - 393)) | (1 << (SqlParser.LEVEL - 393)) | (1 << (SqlParser.LIST - 393)) | (1 << (SqlParser.LOCAL - 393)) | (1 << (SqlParser.LOGFILE - 393)) | (1 << (SqlParser.LOGS - 393)) | (1 << (SqlParser.MASTER - 393)) | (1 << (SqlParser.MASTER_AUTO_POSITION - 393)) | (1 << (SqlParser.MASTER_CONNECT_RETRY - 393)) | (1 << (SqlParser.MASTER_DELAY - 393)) | (1 << (SqlParser.MASTER_HEARTBEAT_PERIOD - 393)) | (1 << (SqlParser.MASTER_HOST - 393)) | (1 << (SqlParser.MASTER_LOG_FILE - 393)) | (1 << (SqlParser.MASTER_LOG_POS - 393)) | (1 << (SqlParser.MASTER_PASSWORD - 393)) | (1 << (SqlParser.MASTER_PORT - 393)) | (1 << (SqlParser.MASTER_RETRY_COUNT - 393)) | (1 << (SqlParser.MASTER_SSL - 393)) | (1 << (SqlParser.MASTER_SSL_CA - 393)) | (1 << (SqlParser.MASTER_SSL_CAPATH - 393)) | (1 << (SqlParser.MASTER_SSL_CERT - 393)) | (1 << (SqlParser.MASTER_SSL_CIPHER - 393)) | (1 << (SqlParser.MASTER_SSL_CRL - 393)) | (1 << (SqlParser.MASTER_SSL_CRLPATH - 393)) | (1 << (SqlParser.MASTER_SSL_KEY - 393)) | (1 << (SqlParser.MASTER_TLS_VERSION - 393)))) !== 0) || ((((_la - 425)) & ~0x1f) == 0 && ((1 << (_la - 425)) & ((1 << (SqlParser.MASTER_USER - 425)) | (1 << (SqlParser.MAX_CONNECTIONS_PER_HOUR - 425)) | (1 << (SqlParser.MAX_QUERIES_PER_HOUR - 425)) | (1 << (SqlParser.MAX_ROWS - 425)) | (1 << (SqlParser.MAX_SIZE - 425)) | (1 << (SqlParser.MAX_UPDATES_PER_HOUR - 425)) | (1 << (SqlParser.MAX_USER_CONNECTIONS - 425)) | (1 << (SqlParser.MEDIUM - 425)) | (1 << (SqlParser.MERGE - 425)) | (1 << (SqlParser.MESSAGE_TEXT - 425)) | (1 << (SqlParser.MID - 425)) | (1 << (SqlParser.MIGRATE - 425)) | (1 << (SqlParser.MIN_ROWS - 425)) | (1 << (SqlParser.MODE - 425)) | (1 << (SqlParser.MODIFY - 425)) | (1 << (SqlParser.MUTEX - 425)) | (1 << (SqlParser.MYSQL - 425)) | (1 << (SqlParser.MYSQL_ERRNO - 425)) | (1 << (SqlParser.NAME - 425)) | (1 << (SqlParser.NAMES - 425)) | (1 << (SqlParser.NCHAR - 425)) | (1 << (SqlParser.NEVER - 425)) | (1 << (SqlParser.NEXT - 425)) | (1 << (SqlParser.NO - 425)) | (1 << (SqlParser.NODEGROUP - 425)) | (1 << (SqlParser.NONE - 425)) | (1 << (SqlParser.OFFLINE - 425)) | (1 << (SqlParser.OFFSET - 425)) | (1 << (SqlParser.OJ - 425)) | (1 << (SqlParser.OLD_PASSWORD - 425)) | (1 << (SqlParser.ONE - 425)) | (1 << (SqlParser.ONLINE - 425)))) !== 0) || ((((_la - 457)) & ~0x1f) == 0 && ((1 << (_la - 457)) & ((1 << (SqlParser.ONLY - 457)) | (1 << (SqlParser.OPEN - 457)) | (1 << (SqlParser.OPTIMIZER_COSTS - 457)) | (1 << (SqlParser.OPTIONS - 457)) | (1 << (SqlParser.OWNER - 457)) | (1 << (SqlParser.PACK_KEYS - 457)) | (1 << (SqlParser.PAGE - 457)) | (1 << (SqlParser.PARSER - 457)) | (1 << (SqlParser.PARTIAL - 457)) | (1 << (SqlParser.PARTITIONING - 457)) | (1 << (SqlParser.PARTITIONS - 457)) | (1 << (SqlParser.PASSWORD - 457)) | (1 << (SqlParser.PHASE - 457)) | (1 << (SqlParser.PLUGIN - 457)) | (1 << (SqlParser.PLUGIN_DIR - 457)) | (1 << (SqlParser.PLUGINS - 457)) | (1 << (SqlParser.PORT - 457)) | (1 << (SqlParser.PRECEDES - 457)) | (1 << (SqlParser.PREPARE - 457)) | (1 << (SqlParser.PRESERVE - 457)) | (1 << (SqlParser.PREV - 457)) | (1 << (SqlParser.PROCESSLIST - 457)) | (1 << (SqlParser.PROFILE - 457)) | (1 << (SqlParser.PROFILES - 457)) | (1 << (SqlParser.PROXY - 457)) | (1 << (SqlParser.QUERY - 457)) | (1 << (SqlParser.QUICK - 457)) | (1 << (SqlParser.REBUILD - 457)) | (1 << (SqlParser.RECOVER - 457)) | (1 << (SqlParser.REDO_BUFFER_SIZE - 457)) | (1 << (SqlParser.REDUNDANT - 457)) | (1 << (SqlParser.RELAY - 457)))) !== 0) || ((((_la - 489)) & ~0x1f) == 0 && ((1 << (_la - 489)) & ((1 << (SqlParser.RELAY_LOG_FILE - 489)) | (1 << (SqlParser.RELAY_LOG_POS - 489)) | (1 << (SqlParser.RELAYLOG - 489)) | (1 << (SqlParser.REMOVE - 489)) | (1 << (SqlParser.REORGANIZE - 489)) | (1 << (SqlParser.REPAIR - 489)) | (1 << (SqlParser.REPLICATE_DO_DB - 489)) | (1 << (SqlParser.REPLICATE_DO_TABLE - 489)) | (1 << (SqlParser.REPLICATE_IGNORE_DB - 489)) | (1 << (SqlParser.REPLICATE_IGNORE_TABLE - 489)) | (1 << (SqlParser.REPLICATE_REWRITE_DB - 489)) | (1 << (SqlParser.REPLICATE_WILD_DO_TABLE - 489)) | (1 << (SqlParser.REPLICATE_WILD_IGNORE_TABLE - 489)) | (1 << (SqlParser.REPLICATION - 489)) | (1 << (SqlParser.RESET - 489)) | (1 << (SqlParser.RESUME - 489)) | (1 << (SqlParser.RETURNED_SQLSTATE - 489)) | (1 << (SqlParser.RETURNS - 489)) | (1 << (SqlParser.ROLE - 489)) | (1 << (SqlParser.ROLLBACK - 489)) | (1 << (SqlParser.ROLLUP - 489)) | (1 << (SqlParser.ROTATE - 489)) | (1 << (SqlParser.ROW - 489)) | (1 << (SqlParser.ROWS - 489)) | (1 << (SqlParser.ROW_FORMAT - 489)) | (1 << (SqlParser.SAVEPOINT - 489)) | (1 << (SqlParser.SCHEDULE - 489)) | (1 << (SqlParser.SECURITY - 489)) | (1 << (SqlParser.SERVER - 489)) | (1 << (SqlParser.SESSION - 489)) | (1 << (SqlParser.SHARE - 489)) | (1 << (SqlParser.SHARED - 489)))) !== 0) || ((((_la - 521)) & ~0x1f) == 0 && ((1 << (_la - 521)) & ((1 << (SqlParser.SIGNED - 521)) | (1 << (SqlParser.SIMPLE - 521)) | (1 << (SqlParser.SLAVE - 521)) | (1 << (SqlParser.SLOW - 521)) | (1 << (SqlParser.SNAPSHOT - 521)) | (1 << (SqlParser.SOCKET - 521)) | (1 << (SqlParser.SOME - 521)) | (1 << (SqlParser.SONAME - 521)) | (1 << (SqlParser.SOUNDS - 521)) | (1 << (SqlParser.SOURCE - 521)) | (1 << (SqlParser.SQL_AFTER_GTIDS - 521)) | (1 << (SqlParser.SQL_AFTER_MTS_GAPS - 521)) | (1 << (SqlParser.SQL_BEFORE_GTIDS - 521)) | (1 << (SqlParser.SQL_BUFFER_RESULT - 521)) | (1 << (SqlParser.SQL_CACHE - 521)) | (1 << (SqlParser.SQL_NO_CACHE - 521)) | (1 << (SqlParser.SQL_THREAD - 521)) | (1 << (SqlParser.START - 521)) | (1 << (SqlParser.STARTS - 521)) | (1 << (SqlParser.STATS_AUTO_RECALC - 521)) | (1 << (SqlParser.STATS_PERSISTENT - 521)) | (1 << (SqlParser.STATS_SAMPLE_PAGES - 521)) | (1 << (SqlParser.STATUS - 521)) | (1 << (SqlParser.STOP - 521)) | (1 << (SqlParser.STORAGE - 521)) | (1 << (SqlParser.STRING - 521)) | (1 << (SqlParser.SUBCLASS_ORIGIN - 521)) | (1 << (SqlParser.SUBJECT - 521)) | (1 << (SqlParser.SUBPARTITION - 521)) | (1 << (SqlParser.SUBPARTITIONS - 521)) | (1 << (SqlParser.SUSPEND - 521)))) !== 0) || ((((_la - 553)) & ~0x1f) == 0 && ((1 << (_la - 553)) & ((1 << (SqlParser.SWAPS - 553)) | (1 << (SqlParser.SWITCHES - 553)) | (1 << (SqlParser.TABLE_NAME - 553)) | (1 << (SqlParser.TABLESPACE - 553)) | (1 << (SqlParser.TEMPORARY - 553)) | (1 << (SqlParser.TEMPTABLE - 553)) | (1 << (SqlParser.THAN - 553)) | (1 << (SqlParser.TRADITIONAL - 553)) | (1 << (SqlParser.TRANSACTION - 553)) | (1 << (SqlParser.TRANSACTIONAL - 553)) | (1 << (SqlParser.TRIGGERS - 553)) | (1 << (SqlParser.TRUNCATE - 553)) | (1 << (SqlParser.UNDEFINED - 553)) | (1 << (SqlParser.UNDOFILE - 553)) | (1 << (SqlParser.UNDO_BUFFER_SIZE - 553)) | (1 << (SqlParser.UNINSTALL - 553)) | (1 << (SqlParser.UNKNOWN - 553)) | (1 << (SqlParser.UNTIL - 553)) | (1 << (SqlParser.UPGRADE - 553)) | (1 << (SqlParser.USER - 553)) | (1 << (SqlParser.USE_FRM - 553)) | (1 << (SqlParser.USER_RESOURCES - 553)) | (1 << (SqlParser.VALIDATION - 553)) | (1 << (SqlParser.VALUE - 553)) | (1 << (SqlParser.VARIABLES - 553)) | (1 << (SqlParser.VIEW - 553)) | (1 << (SqlParser.VISIBLE - 553)) | (1 << (SqlParser.WAIT - 553)) | (1 << (SqlParser.WARNINGS - 553)) | (1 << (SqlParser.WITHOUT - 553)) | (1 << (SqlParser.WORK - 553)))) !== 0) || ((((_la - 585)) & ~0x1f) == 0 && ((1 << (_la - 585)) & ((1 << (SqlParser.WRAPPER - 585)) | (1 << (SqlParser.X509 - 585)) | (1 << (SqlParser.XA - 585)) | (1 << (SqlParser.XML - 585)) | (1 << (SqlParser.INTERNAL - 585)) | (1 << (SqlParser.QUARTER - 585)) | (1 << (SqlParser.MONTH - 585)) | (1 << (SqlParser.DAY - 585)) | (1 << (SqlParser.HOUR - 585)) | (1 << (SqlParser.MINUTE - 585)) | (1 << (SqlParser.WEEK - 585)) | (1 << (SqlParser.SECOND - 585)) | (1 << (SqlParser.MICROSECOND - 585)) | (1 << (SqlParser.TABLES - 585)) | (1 << (SqlParser.ROUTINE - 585)) | (1 << (SqlParser.EXECUTE - 585)) | (1 << (SqlParser.FILE - 585)) | (1 << (SqlParser.PROCESS - 585)) | (1 << (SqlParser.RELOAD - 585)) | (1 << (SqlParser.SHUTDOWN - 585)) | (1 << (SqlParser.SUPER - 585)) | (1 << (SqlParser.PRIVILEGES - 585)) | (1 << (SqlParser.AUDIT_ADMIN - 585)) | (1 << (SqlParser.BACKUP_ADMIN - 585)) | (1 << (SqlParser.BINLOG_ADMIN - 585)) | (1 << (SqlParser.BINLOG_ENCRYPTION_ADMIN - 585)) | (1 << (SqlParser.CLONE_ADMIN - 585)))) !== 0) || ((((_la - 617)) & ~0x1f) == 0 && ((1 << (_la - 617)) & ((1 << (SqlParser.CONNECTION_ADMIN - 617)) | (1 << (SqlParser.ENCRYPTION_KEY_ADMIN - 617)) | (1 << (SqlParser.FIREWALL_ADMIN - 617)) | (1 << (SqlParser.FIREWALL_USER - 617)) | (1 << (SqlParser.GROUP_REPLICATION_ADMIN - 617)) | (1 << (SqlParser.INNODB_REDO_LOG_ARCHIVE - 617)) | (1 << (SqlParser.NDB_STORED_USER - 617)) | (1 << (SqlParser.PERSIST_RO_VARIABLES_ADMIN - 617)) | (1 << (SqlParser.REPLICATION_APPLIER - 617)) | (1 << (SqlParser.REPLICATION_SLAVE_ADMIN - 617)) | (1 << (SqlParser.RESOURCE_GROUP_ADMIN - 617)) | (1 << (SqlParser.RESOURCE_GROUP_USER - 617)) | (1 << (SqlParser.ROLE_ADMIN - 617)) | (1 << (SqlParser.SESSION_VARIABLES_ADMIN - 617)) | (1 << (SqlParser.SET_USER_ID - 617)) | (1 << (SqlParser.SHOW_ROUTINE - 617)) | (1 << (SqlParser.SYSTEM_VARIABLES_ADMIN - 617)) | (1 << (SqlParser.TABLE_ENCRYPTION_ADMIN - 617)) | (1 << (SqlParser.VERSION_TOKEN_ADMIN - 617)) | (1 << (SqlParser.XA_RECOVER_ADMIN - 617)) | (1 << (SqlParser.ARMSCII8 - 617)) | (1 << (SqlParser.ASCII - 617)) | (1 << (SqlParser.BIG5 - 617)) | (1 << (SqlParser.CP1250 - 617)) | (1 << (SqlParser.CP1251 - 617)) | (1 << (SqlParser.CP1256 - 617)) | (1 << (SqlParser.CP1257 - 617)) | (1 << (SqlParser.CP850 - 617)) | (1 << (SqlParser.CP852 - 617)) | (1 << (SqlParser.CP866 - 617)) | (1 << (SqlParser.CP932 - 617)) | (1 << (SqlParser.DEC8 - 617)))) !== 0) || ((((_la - 649)) & ~0x1f) == 0 && ((1 << (_la - 649)) & ((1 << (SqlParser.EUCJPMS - 649)) | (1 << (SqlParser.EUCKR - 649)) | (1 << (SqlParser.GB2312 - 649)) | (1 << (SqlParser.GBK - 649)) | (1 << (SqlParser.GEOSTD8 - 649)) | (1 << (SqlParser.GREEK - 649)) | (1 << (SqlParser.HEBREW - 649)) | (1 << (SqlParser.HP8 - 649)) | (1 << (SqlParser.KEYBCS2 - 649)) | (1 << (SqlParser.KOI8R - 649)) | (1 << (SqlParser.KOI8U - 649)) | (1 << (SqlParser.LATIN1 - 649)) | (1 << (SqlParser.LATIN2 - 649)) | (1 << (SqlParser.LATIN5 - 649)) | (1 << (SqlParser.LATIN7 - 649)) | (1 << (SqlParser.MACCE - 649)) | (1 << (SqlParser.MACROMAN - 649)) | (1 << (SqlParser.SJIS - 649)) | (1 << (SqlParser.SWE7 - 649)) | (1 << (SqlParser.TIS620 - 649)) | (1 << (SqlParser.UCS2 - 649)) | (1 << (SqlParser.UJIS - 649)) | (1 << (SqlParser.UTF16 - 649)) | (1 << (SqlParser.UTF16LE - 649)) | (1 << (SqlParser.UTF32 - 649)) | (1 << (SqlParser.UTF8 - 649)) | (1 << (SqlParser.UTF8MB3 - 649)) | (1 << (SqlParser.UTF8MB4 - 649)) | (1 << (SqlParser.ARCHIVE - 649)) | (1 << (SqlParser.BLACKHOLE - 649)) | (1 << (SqlParser.CSV - 649)) | (1 << (SqlParser.FEDERATED - 649)))) !== 0) || ((((_la - 681)) & ~0x1f) == 0 && ((1 << (_la - 681)) & ((1 << (SqlParser.INNODB - 681)) | (1 << (SqlParser.MEMORY - 681)) | (1 << (SqlParser.MRG_MYISAM - 681)) | (1 << (SqlParser.MYISAM - 681)) | (1 << (SqlParser.NDB - 681)) | (1 << (SqlParser.NDBCLUSTER - 681)) | (1 << (SqlParser.PERFORMANCE_SCHEMA - 681)) | (1 << (SqlParser.TOKUDB - 681)) | (1 << (SqlParser.REPEATABLE - 681)) | (1 << (SqlParser.COMMITTED - 681)) | (1 << (SqlParser.UNCOMMITTED - 681)) | (1 << (SqlParser.SERIALIZABLE - 681)) | (1 << (SqlParser.GEOMETRYCOLLECTION - 681)) | (1 << (SqlParser.LINESTRING - 681)) | (1 << (SqlParser.MULTILINESTRING - 681)) | (1 << (SqlParser.MULTIPOINT - 681)) | (1 << (SqlParser.MULTIPOLYGON - 681)) | (1 << (SqlParser.POINT - 681)) | (1 << (SqlParser.POLYGON - 681)) | (1 << (SqlParser.ABS - 681)) | (1 << (SqlParser.ACOS - 681)) | (1 << (SqlParser.ADDDATE - 681)) | (1 << (SqlParser.ADDTIME - 681)) | (1 << (SqlParser.AES_DECRYPT - 681)) | (1 << (SqlParser.AES_ENCRYPT - 681)) | (1 << (SqlParser.AREA - 681)) | (1 << (SqlParser.ASBINARY - 681)) | (1 << (SqlParser.ASIN - 681)) | (1 << (SqlParser.ASTEXT - 681)) | (1 << (SqlParser.ASWKB - 681)))) !== 0) || ((((_la - 713)) & ~0x1f) == 0 && ((1 << (_la - 713)) & ((1 << (SqlParser.ASWKT - 713)) | (1 << (SqlParser.ASYMMETRIC_DECRYPT - 713)) | (1 << (SqlParser.ASYMMETRIC_DERIVE - 713)) | (1 << (SqlParser.ASYMMETRIC_ENCRYPT - 713)) | (1 << (SqlParser.ASYMMETRIC_SIGN - 713)) | (1 << (SqlParser.ASYMMETRIC_VERIFY - 713)) | (1 << (SqlParser.ATAN - 713)) | (1 << (SqlParser.ATAN2 - 713)) | (1 << (SqlParser.BENCHMARK - 713)) | (1 << (SqlParser.BIN - 713)) | (1 << (SqlParser.BIT_COUNT - 713)) | (1 << (SqlParser.BIT_LENGTH - 713)) | (1 << (SqlParser.BUFFER - 713)) | (1 << (SqlParser.CATALOG_NAME - 713)) | (1 << (SqlParser.CEIL - 713)) | (1 << (SqlParser.CEILING - 713)) | (1 << (SqlParser.CENTROID - 713)) | (1 << (SqlParser.CHARACTER_LENGTH - 713)) | (1 << (SqlParser.CHARSET - 713)) | (1 << (SqlParser.CHAR_LENGTH - 713)) | (1 << (SqlParser.COERCIBILITY - 713)) | (1 << (SqlParser.COLLATION - 713)) | (1 << (SqlParser.COMPRESS - 713)) | (1 << (SqlParser.CONCAT - 713)) | (1 << (SqlParser.CONCAT_WS - 713)) | (1 << (SqlParser.CONNECTION_ID - 713)) | (1 << (SqlParser.CONV - 713)) | (1 << (SqlParser.CONVERT_TZ - 713)) | (1 << (SqlParser.COS - 713)) | (1 << (SqlParser.COT - 713)) | (1 << (SqlParser.CRC32 - 713)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PRIV_KEY - 713)))) !== 0) || ((((_la - 745)) & ~0x1f) == 0 && ((1 << (_la - 745)) & ((1 << (SqlParser.CREATE_ASYMMETRIC_PUB_KEY - 745)) | (1 << (SqlParser.CREATE_DH_PARAMETERS - 745)) | (1 << (SqlParser.CREATE_DIGEST - 745)) | (1 << (SqlParser.CROSSES - 745)) | (1 << (SqlParser.DATEDIFF - 745)) | (1 << (SqlParser.DATE_FORMAT - 745)) | (1 << (SqlParser.DAYNAME - 745)) | (1 << (SqlParser.DAYOFMONTH - 745)) | (1 << (SqlParser.DAYOFWEEK - 745)) | (1 << (SqlParser.DAYOFYEAR - 745)) | (1 << (SqlParser.DECODE - 745)) | (1 << (SqlParser.DEGREES - 745)) | (1 << (SqlParser.DES_DECRYPT - 745)) | (1 << (SqlParser.DES_ENCRYPT - 745)) | (1 << (SqlParser.DIMENSION - 745)) | (1 << (SqlParser.DISJOINT - 745)) | (1 << (SqlParser.ELT - 745)) | (1 << (SqlParser.ENCODE - 745)) | (1 << (SqlParser.ENCRYPT - 745)) | (1 << (SqlParser.ENDPOINT - 745)) | (1 << (SqlParser.ENVELOPE - 745)) | (1 << (SqlParser.EQUALS - 745)) | (1 << (SqlParser.EXP - 745)) | (1 << (SqlParser.EXPORT_SET - 745)) | (1 << (SqlParser.EXTERIORRING - 745)) | (1 << (SqlParser.EXTRACTVALUE - 745)) | (1 << (SqlParser.FIELD - 745)) | (1 << (SqlParser.FIND_IN_SET - 745)) | (1 << (SqlParser.FLOOR - 745)) | (1 << (SqlParser.FORMAT - 745)) | (1 << (SqlParser.FOUND_ROWS - 745)) | (1 << (SqlParser.FROM_BASE64 - 745)))) !== 0) || ((((_la - 777)) & ~0x1f) == 0 && ((1 << (_la - 777)) & ((1 << (SqlParser.FROM_DAYS - 777)) | (1 << (SqlParser.FROM_UNIXTIME - 777)) | (1 << (SqlParser.GEOMCOLLFROMTEXT - 777)) | (1 << (SqlParser.GEOMCOLLFROMWKB - 777)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMTEXT - 777)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMWKB - 777)) | (1 << (SqlParser.GEOMETRYFROMTEXT - 777)) | (1 << (SqlParser.GEOMETRYFROMWKB - 777)) | (1 << (SqlParser.GEOMETRYN - 777)) | (1 << (SqlParser.GEOMETRYTYPE - 777)) | (1 << (SqlParser.GEOMFROMTEXT - 777)) | (1 << (SqlParser.GEOMFROMWKB - 777)) | (1 << (SqlParser.GET_FORMAT - 777)) | (1 << (SqlParser.GET_LOCK - 777)) | (1 << (SqlParser.GLENGTH - 777)) | (1 << (SqlParser.GREATEST - 777)) | (1 << (SqlParser.GTID_SUBSET - 777)) | (1 << (SqlParser.GTID_SUBTRACT - 777)) | (1 << (SqlParser.HEX - 777)) | (1 << (SqlParser.IFNULL - 777)) | (1 << (SqlParser.INET6_ATON - 777)) | (1 << (SqlParser.INET6_NTOA - 777)) | (1 << (SqlParser.INET_ATON - 777)) | (1 << (SqlParser.INET_NTOA - 777)) | (1 << (SqlParser.INSTR - 777)) | (1 << (SqlParser.INTERIORRINGN - 777)) | (1 << (SqlParser.INTERSECTS - 777)) | (1 << (SqlParser.ISCLOSED - 777)) | (1 << (SqlParser.ISEMPTY - 777)) | (1 << (SqlParser.ISNULL - 777)) | (1 << (SqlParser.ISSIMPLE - 777)) | (1 << (SqlParser.IS_FREE_LOCK - 777)))) !== 0) || ((((_la - 809)) & ~0x1f) == 0 && ((1 << (_la - 809)) & ((1 << (SqlParser.IS_IPV4 - 809)) | (1 << (SqlParser.IS_IPV4_COMPAT - 809)) | (1 << (SqlParser.IS_IPV4_MAPPED - 809)) | (1 << (SqlParser.IS_IPV6 - 809)) | (1 << (SqlParser.IS_USED_LOCK - 809)) | (1 << (SqlParser.LAST_INSERT_ID - 809)) | (1 << (SqlParser.LCASE - 809)) | (1 << (SqlParser.LEAST - 809)) | (1 << (SqlParser.LENGTH - 809)) | (1 << (SqlParser.LINEFROMTEXT - 809)) | (1 << (SqlParser.LINEFROMWKB - 809)) | (1 << (SqlParser.LINESTRINGFROMTEXT - 809)) | (1 << (SqlParser.LINESTRINGFROMWKB - 809)) | (1 << (SqlParser.LN - 809)) | (1 << (SqlParser.LOAD_FILE - 809)) | (1 << (SqlParser.LOCATE - 809)) | (1 << (SqlParser.LOG - 809)) | (1 << (SqlParser.LOG10 - 809)) | (1 << (SqlParser.LOG2 - 809)) | (1 << (SqlParser.LOWER - 809)) | (1 << (SqlParser.LPAD - 809)) | (1 << (SqlParser.LTRIM - 809)) | (1 << (SqlParser.MAKEDATE - 809)) | (1 << (SqlParser.MAKETIME - 809)) | (1 << (SqlParser.MAKE_SET - 809)) | (1 << (SqlParser.MASTER_POS_WAIT - 809)) | (1 << (SqlParser.MBRCONTAINS - 809)) | (1 << (SqlParser.MBRDISJOINT - 809)) | (1 << (SqlParser.MBREQUAL - 809)) | (1 << (SqlParser.MBRINTERSECTS - 809)) | (1 << (SqlParser.MBROVERLAPS - 809)) | (1 << (SqlParser.MBRTOUCHES - 809)))) !== 0) || ((((_la - 841)) & ~0x1f) == 0 && ((1 << (_la - 841)) & ((1 << (SqlParser.MBRWITHIN - 841)) | (1 << (SqlParser.MD5 - 841)) | (1 << (SqlParser.MLINEFROMTEXT - 841)) | (1 << (SqlParser.MLINEFROMWKB - 841)) | (1 << (SqlParser.MONTHNAME - 841)) | (1 << (SqlParser.MPOINTFROMTEXT - 841)) | (1 << (SqlParser.MPOINTFROMWKB - 841)) | (1 << (SqlParser.MPOLYFROMTEXT - 841)) | (1 << (SqlParser.MPOLYFROMWKB - 841)) | (1 << (SqlParser.MULTILINESTRINGFROMTEXT - 841)) | (1 << (SqlParser.MULTILINESTRINGFROMWKB - 841)) | (1 << (SqlParser.MULTIPOINTFROMTEXT - 841)) | (1 << (SqlParser.MULTIPOINTFROMWKB - 841)) | (1 << (SqlParser.MULTIPOLYGONFROMTEXT - 841)) | (1 << (SqlParser.MULTIPOLYGONFROMWKB - 841)) | (1 << (SqlParser.NAME_CONST - 841)) | (1 << (SqlParser.NULLIF - 841)) | (1 << (SqlParser.NUMGEOMETRIES - 841)) | (1 << (SqlParser.NUMINTERIORRINGS - 841)) | (1 << (SqlParser.NUMPOINTS - 841)) | (1 << (SqlParser.OCT - 841)) | (1 << (SqlParser.OCTET_LENGTH - 841)) | (1 << (SqlParser.ORD - 841)) | (1 << (SqlParser.OVERLAPS - 841)) | (1 << (SqlParser.PERIOD_ADD - 841)) | (1 << (SqlParser.PERIOD_DIFF - 841)) | (1 << (SqlParser.PI - 841)) | (1 << (SqlParser.POINTFROMTEXT - 841)) | (1 << (SqlParser.POINTFROMWKB - 841)) | (1 << (SqlParser.POINTN - 841)) | (1 << (SqlParser.POLYFROMTEXT - 841)) | (1 << (SqlParser.POLYFROMWKB - 841)))) !== 0) || ((((_la - 873)) & ~0x1f) == 0 && ((1 << (_la - 873)) & ((1 << (SqlParser.POLYGONFROMTEXT - 873)) | (1 << (SqlParser.POLYGONFROMWKB - 873)) | (1 << (SqlParser.POW - 873)) | (1 << (SqlParser.POWER - 873)) | (1 << (SqlParser.QUOTE - 873)) | (1 << (SqlParser.RADIANS - 873)) | (1 << (SqlParser.RAND - 873)) | (1 << (SqlParser.RANDOM_BYTES - 873)) | (1 << (SqlParser.RELEASE_LOCK - 873)) | (1 << (SqlParser.REVERSE - 873)) | (1 << (SqlParser.ROUND - 873)) | (1 << (SqlParser.ROW_COUNT - 873)) | (1 << (SqlParser.RPAD - 873)) | (1 << (SqlParser.RTRIM - 873)) | (1 << (SqlParser.SEC_TO_TIME - 873)) | (1 << (SqlParser.SESSION_USER - 873)) | (1 << (SqlParser.SHA - 873)) | (1 << (SqlParser.SHA1 - 873)) | (1 << (SqlParser.SHA2 - 873)) | (1 << (SqlParser.SCHEMA_NAME - 873)) | (1 << (SqlParser.SIGN - 873)) | (1 << (SqlParser.SIN - 873)) | (1 << (SqlParser.SLEEP - 873)) | (1 << (SqlParser.SOUNDEX - 873)) | (1 << (SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS - 873)) | (1 << (SqlParser.SQRT - 873)) | (1 << (SqlParser.SRID - 873)) | (1 << (SqlParser.STARTPOINT - 873)) | (1 << (SqlParser.STRCMP - 873)) | (1 << (SqlParser.STR_TO_DATE - 873)) | (1 << (SqlParser.ST_AREA - 873)) | (1 << (SqlParser.ST_ASBINARY - 873)))) !== 0) || ((((_la - 905)) & ~0x1f) == 0 && ((1 << (_la - 905)) & ((1 << (SqlParser.ST_ASTEXT - 905)) | (1 << (SqlParser.ST_ASWKB - 905)) | (1 << (SqlParser.ST_ASWKT - 905)) | (1 << (SqlParser.ST_BUFFER - 905)) | (1 << (SqlParser.ST_CENTROID - 905)) | (1 << (SqlParser.ST_CONTAINS - 905)) | (1 << (SqlParser.ST_CROSSES - 905)) | (1 << (SqlParser.ST_DIFFERENCE - 905)) | (1 << (SqlParser.ST_DIMENSION - 905)) | (1 << (SqlParser.ST_DISJOINT - 905)) | (1 << (SqlParser.ST_DISTANCE - 905)) | (1 << (SqlParser.ST_ENDPOINT - 905)) | (1 << (SqlParser.ST_ENVELOPE - 905)) | (1 << (SqlParser.ST_EQUALS - 905)) | (1 << (SqlParser.ST_EXTERIORRING - 905)) | (1 << (SqlParser.ST_GEOMCOLLFROMTEXT - 905)) | (1 << (SqlParser.ST_GEOMCOLLFROMTXT - 905)) | (1 << (SqlParser.ST_GEOMCOLLFROMWKB - 905)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT - 905)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB - 905)) | (1 << (SqlParser.ST_GEOMETRYFROMTEXT - 905)) | (1 << (SqlParser.ST_GEOMETRYFROMWKB - 905)) | (1 << (SqlParser.ST_GEOMETRYN - 905)) | (1 << (SqlParser.ST_GEOMETRYTYPE - 905)) | (1 << (SqlParser.ST_GEOMFROMTEXT - 905)) | (1 << (SqlParser.ST_GEOMFROMWKB - 905)) | (1 << (SqlParser.ST_INTERIORRINGN - 905)) | (1 << (SqlParser.ST_INTERSECTION - 905)) | (1 << (SqlParser.ST_INTERSECTS - 905)) | (1 << (SqlParser.ST_ISCLOSED - 905)) | (1 << (SqlParser.ST_ISEMPTY - 905)) | (1 << (SqlParser.ST_ISSIMPLE - 905)))) !== 0) || ((((_la - 937)) & ~0x1f) == 0 && ((1 << (_la - 937)) & ((1 << (SqlParser.ST_LINEFROMTEXT - 937)) | (1 << (SqlParser.ST_LINEFROMWKB - 937)) | (1 << (SqlParser.ST_LINESTRINGFROMTEXT - 937)) | (1 << (SqlParser.ST_LINESTRINGFROMWKB - 937)) | (1 << (SqlParser.ST_NUMGEOMETRIES - 937)) | (1 << (SqlParser.ST_NUMINTERIORRING - 937)) | (1 << (SqlParser.ST_NUMINTERIORRINGS - 937)) | (1 << (SqlParser.ST_NUMPOINTS - 937)) | (1 << (SqlParser.ST_OVERLAPS - 937)) | (1 << (SqlParser.ST_POINTFROMTEXT - 937)) | (1 << (SqlParser.ST_POINTFROMWKB - 937)) | (1 << (SqlParser.ST_POINTN - 937)) | (1 << (SqlParser.ST_POLYFROMTEXT - 937)) | (1 << (SqlParser.ST_POLYFROMWKB - 937)) | (1 << (SqlParser.ST_POLYGONFROMTEXT - 937)) | (1 << (SqlParser.ST_POLYGONFROMWKB - 937)) | (1 << (SqlParser.ST_SRID - 937)) | (1 << (SqlParser.ST_STARTPOINT - 937)) | (1 << (SqlParser.ST_SYMDIFFERENCE - 937)) | (1 << (SqlParser.ST_TOUCHES - 937)) | (1 << (SqlParser.ST_UNION - 937)) | (1 << (SqlParser.ST_WITHIN - 937)) | (1 << (SqlParser.ST_X - 937)) | (1 << (SqlParser.ST_Y - 937)) | (1 << (SqlParser.SUBDATE - 937)) | (1 << (SqlParser.SUBSTRING_INDEX - 937)) | (1 << (SqlParser.SUBTIME - 937)) | (1 << (SqlParser.SYSTEM_USER - 937)) | (1 << (SqlParser.TAN - 937)) | (1 << (SqlParser.TIMEDIFF - 937)) | (1 << (SqlParser.TIMESTAMPADD - 937)) | (1 << (SqlParser.TIMESTAMPDIFF - 937)))) !== 0) || ((((_la - 969)) & ~0x1f) == 0 && ((1 << (_la - 969)) & ((1 << (SqlParser.TIME_FORMAT - 969)) | (1 << (SqlParser.TIME_TO_SEC - 969)) | (1 << (SqlParser.TOUCHES - 969)) | (1 << (SqlParser.TO_BASE64 - 969)) | (1 << (SqlParser.TO_DAYS - 969)) | (1 << (SqlParser.TO_SECONDS - 969)) | (1 << (SqlParser.UCASE - 969)) | (1 << (SqlParser.UNCOMPRESS - 969)) | (1 << (SqlParser.UNCOMPRESSED_LENGTH - 969)) | (1 << (SqlParser.UNHEX - 969)) | (1 << (SqlParser.UNIX_TIMESTAMP - 969)) | (1 << (SqlParser.UPDATEXML - 969)) | (1 << (SqlParser.UPPER - 969)) | (1 << (SqlParser.UUID - 969)) | (1 << (SqlParser.UUID_SHORT - 969)) | (1 << (SqlParser.VALIDATE_PASSWORD_STRENGTH - 969)) | (1 << (SqlParser.VERSION - 969)) | (1 << (SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS - 969)) | (1 << (SqlParser.WEEKDAY - 969)) | (1 << (SqlParser.WEEKOFYEAR - 969)) | (1 << (SqlParser.WEIGHT_STRING - 969)) | (1 << (SqlParser.WITHIN - 969)) | (1 << (SqlParser.YEARWEEK - 969)) | (1 << (SqlParser.Y_FUNCTION - 969)) | (1 << (SqlParser.X_FUNCTION - 969)))) !== 0) || ((((_la - 1006)) & ~0x1f) == 0 && ((1 << (_la - 1006)) & ((1 << (SqlParser.PLUS - 1006)) | (1 << (SqlParser.MINUS - 1006)) | (1 << (SqlParser.EXCLAMATION_SYMBOL - 1006)) | (1 << (SqlParser.BIT_NOT_OP - 1006)) | (1 << (SqlParser.LR_BRACKET - 1006)) | (1 << (SqlParser.ZERO_DECIMAL - 1006)) | (1 << (SqlParser.ONE_DECIMAL - 1006)) | (1 << (SqlParser.TWO_DECIMAL - 1006)) | (1 << (SqlParser.CHARSET_REVERSE_QOUTE_STRING - 1006)) | (1 << (SqlParser.START_NATIONAL_STRING_LITERAL - 1006)) | (1 << (SqlParser.STRING_LITERAL - 1006)) | (1 << (SqlParser.DECIMAL_LITERAL - 1006)) | (1 << (SqlParser.HEXADECIMAL_LITERAL - 1006)))) !== 0) || ((((_la - 1038)) & ~0x1f) == 0 && ((1 << (_la - 1038)) & ((1 << (SqlParser.REAL_LITERAL - 1038)) | (1 << (SqlParser.NULL_SPEC_LITERAL - 1038)) | (1 << (SqlParser.BIT_STRING - 1038)) | (1 << (SqlParser.STRING_CHARSET_NAME - 1038)) | (1 << (SqlParser.ID - 1038)) | (1 << (SqlParser.REVERSE_QUOTE_ID - 1038)) | (1 << (SqlParser.LOCAL_ID - 1038)) | (1 << (SqlParser.GLOBAL_ID - 1038)))) !== 0)) {
+ this.state = 5866;
+ this.functionArgs();
+ }
+
+ this.state = 5869;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+
+ case 4:
+ localctx = new UdfFunctionCallContext(this, localctx);
+ this.enterOuterAlt(localctx, 4);
+ this.state = 5871;
+ this.fullId();
+ this.state = 5872;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 5874;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if((((_la) & ~0x1f) == 0 && ((1 << _la) & ((1 << SqlParser.CASE) | (1 << SqlParser.CAST) | (1 << SqlParser.CONVERT))) !== 0) || ((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (SqlParser.CURRENT - 32)) | (1 << (SqlParser.CURRENT_USER - 32)) | (1 << (SqlParser.DATABASE - 32)) | (1 << (SqlParser.DIAGNOSTICS - 32)) | (1 << (SqlParser.EXISTS - 32)) | (1 << (SqlParser.FALSE - 32)))) !== 0) || ((((_la - 69)) & ~0x1f) == 0 && ((1 << (_la - 69)) & ((1 << (SqlParser.IF - 69)) | (1 << (SqlParser.INSERT - 69)) | (1 << (SqlParser.INTERVAL - 69)) | (1 << (SqlParser.LEFT - 69)))) !== 0) || ((((_la - 102)) & ~0x1f) == 0 && ((1 << (_la - 102)) & ((1 << (SqlParser.NOT - 102)) | (1 << (SqlParser.NULL_LITERAL - 102)) | (1 << (SqlParser.NUMBER - 102)) | (1 << (SqlParser.REPLACE - 102)) | (1 << (SqlParser.RIGHT - 102)))) !== 0) || ((((_la - 151)) & ~0x1f) == 0 && ((1 << (_la - 151)) & ((1 << (SqlParser.STACKED - 151)) | (1 << (SqlParser.TRUE - 151)) | (1 << (SqlParser.VALUES - 151)))) !== 0) || ((((_la - 199)) & ~0x1f) == 0 && ((1 << (_la - 199)) & ((1 << (SqlParser.DATE - 199)) | (1 << (SqlParser.TIME - 199)) | (1 << (SqlParser.TIMESTAMP - 199)) | (1 << (SqlParser.DATETIME - 199)) | (1 << (SqlParser.YEAR - 199)) | (1 << (SqlParser.CHAR - 199)) | (1 << (SqlParser.BINARY - 199)) | (1 << (SqlParser.TEXT - 199)) | (1 << (SqlParser.ENUM - 199)) | (1 << (SqlParser.SERIAL - 199)))) !== 0) || ((((_la - 233)) & ~0x1f) == 0 && ((1 << (_la - 233)) & ((1 << (SqlParser.JSON_VALID - 233)) | (1 << (SqlParser.JSON_SCHEMA_VALID - 233)) | (1 << (SqlParser.AVG - 233)) | (1 << (SqlParser.BIT_AND - 233)) | (1 << (SqlParser.BIT_OR - 233)) | (1 << (SqlParser.BIT_XOR - 233)) | (1 << (SqlParser.COUNT - 233)) | (1 << (SqlParser.GROUP_CONCAT - 233)) | (1 << (SqlParser.MAX - 233)) | (1 << (SqlParser.MIN - 233)) | (1 << (SqlParser.STD - 233)) | (1 << (SqlParser.STDDEV - 233)) | (1 << (SqlParser.STDDEV_POP - 233)) | (1 << (SqlParser.STDDEV_SAMP - 233)) | (1 << (SqlParser.SUM - 233)) | (1 << (SqlParser.VAR_POP - 233)) | (1 << (SqlParser.VAR_SAMP - 233)) | (1 << (SqlParser.VARIANCE - 233)) | (1 << (SqlParser.CURRENT_DATE - 233)) | (1 << (SqlParser.CURRENT_TIME - 233)) | (1 << (SqlParser.CURRENT_TIMESTAMP - 233)) | (1 << (SqlParser.LOCALTIME - 233)) | (1 << (SqlParser.CURDATE - 233)) | (1 << (SqlParser.CURTIME - 233)) | (1 << (SqlParser.DATE_ADD - 233)) | (1 << (SqlParser.DATE_SUB - 233)) | (1 << (SqlParser.EXTRACT - 233)) | (1 << (SqlParser.LOCALTIMESTAMP - 233)) | (1 << (SqlParser.NOW - 233)) | (1 << (SqlParser.POSITION - 233)) | (1 << (SqlParser.SUBSTR - 233)) | (1 << (SqlParser.SUBSTRING - 233)))) !== 0) || ((((_la - 265)) & ~0x1f) == 0 && ((1 << (_la - 265)) & ((1 << (SqlParser.SYSDATE - 265)) | (1 << (SqlParser.TRIM - 265)) | (1 << (SqlParser.UTC_DATE - 265)) | (1 << (SqlParser.UTC_TIME - 265)) | (1 << (SqlParser.UTC_TIMESTAMP - 265)) | (1 << (SqlParser.ACCOUNT - 265)) | (1 << (SqlParser.ACTION - 265)) | (1 << (SqlParser.AFTER - 265)) | (1 << (SqlParser.AGGREGATE - 265)) | (1 << (SqlParser.ALGORITHM - 265)) | (1 << (SqlParser.ANY - 265)) | (1 << (SqlParser.AT - 265)) | (1 << (SqlParser.AUTHORS - 265)) | (1 << (SqlParser.AUTOCOMMIT - 265)) | (1 << (SqlParser.AUTOEXTEND_SIZE - 265)) | (1 << (SqlParser.AUTO_INCREMENT - 265)) | (1 << (SqlParser.AVG_ROW_LENGTH - 265)) | (1 << (SqlParser.BEGIN - 265)) | (1 << (SqlParser.BINLOG - 265)) | (1 << (SqlParser.BIT - 265)) | (1 << (SqlParser.BLOCK - 265)) | (1 << (SqlParser.BOOL - 265)) | (1 << (SqlParser.BOOLEAN - 265)) | (1 << (SqlParser.BTREE - 265)) | (1 << (SqlParser.CACHE - 265)) | (1 << (SqlParser.CASCADED - 265)) | (1 << (SqlParser.CHAIN - 265)) | (1 << (SqlParser.CHANGED - 265)) | (1 << (SqlParser.CHANNEL - 265)) | (1 << (SqlParser.CHECKSUM - 265)) | (1 << (SqlParser.PAGE_CHECKSUM - 265)) | (1 << (SqlParser.CIPHER - 265)))) !== 0) || ((((_la - 297)) & ~0x1f) == 0 && ((1 << (_la - 297)) & ((1 << (SqlParser.CLASS_ORIGIN - 297)) | (1 << (SqlParser.CLIENT - 297)) | (1 << (SqlParser.CLOSE - 297)) | (1 << (SqlParser.COALESCE - 297)) | (1 << (SqlParser.CODE - 297)) | (1 << (SqlParser.COLUMNS - 297)) | (1 << (SqlParser.COLUMN_FORMAT - 297)) | (1 << (SqlParser.COLUMN_NAME - 297)) | (1 << (SqlParser.COMMENT - 297)) | (1 << (SqlParser.COMMIT - 297)) | (1 << (SqlParser.COMPACT - 297)) | (1 << (SqlParser.COMPLETION - 297)) | (1 << (SqlParser.COMPRESSED - 297)) | (1 << (SqlParser.COMPRESSION - 297)) | (1 << (SqlParser.CONCURRENT - 297)) | (1 << (SqlParser.CONNECTION - 297)) | (1 << (SqlParser.CONSISTENT - 297)) | (1 << (SqlParser.CONSTRAINT_CATALOG - 297)) | (1 << (SqlParser.CONSTRAINT_SCHEMA - 297)) | (1 << (SqlParser.CONSTRAINT_NAME - 297)) | (1 << (SqlParser.CONTAINS - 297)) | (1 << (SqlParser.CONTEXT - 297)) | (1 << (SqlParser.CONTRIBUTORS - 297)) | (1 << (SqlParser.COPY - 297)) | (1 << (SqlParser.CPU - 297)) | (1 << (SqlParser.CURSOR_NAME - 297)) | (1 << (SqlParser.DATA - 297)) | (1 << (SqlParser.DATAFILE - 297)) | (1 << (SqlParser.DEALLOCATE - 297)) | (1 << (SqlParser.DEFAULT_AUTH - 297)) | (1 << (SqlParser.DEFINER - 297)) | (1 << (SqlParser.DELAY_KEY_WRITE - 297)))) !== 0) || ((((_la - 329)) & ~0x1f) == 0 && ((1 << (_la - 329)) & ((1 << (SqlParser.DES_KEY_FILE - 329)) | (1 << (SqlParser.DIRECTORY - 329)) | (1 << (SqlParser.DISABLE - 329)) | (1 << (SqlParser.DISCARD - 329)) | (1 << (SqlParser.DISK - 329)) | (1 << (SqlParser.DO - 329)) | (1 << (SqlParser.DUMPFILE - 329)) | (1 << (SqlParser.DUPLICATE - 329)) | (1 << (SqlParser.DYNAMIC - 329)) | (1 << (SqlParser.ENABLE - 329)) | (1 << (SqlParser.ENCRYPTION - 329)) | (1 << (SqlParser.END - 329)) | (1 << (SqlParser.ENDS - 329)) | (1 << (SqlParser.ENGINE - 329)) | (1 << (SqlParser.ENGINES - 329)) | (1 << (SqlParser.ERROR - 329)) | (1 << (SqlParser.ERRORS - 329)) | (1 << (SqlParser.ESCAPE - 329)) | (1 << (SqlParser.EVEN - 329)) | (1 << (SqlParser.EVENT - 329)) | (1 << (SqlParser.EVENTS - 329)) | (1 << (SqlParser.EVERY - 329)) | (1 << (SqlParser.EXCHANGE - 329)) | (1 << (SqlParser.EXCLUSIVE - 329)) | (1 << (SqlParser.EXPIRE - 329)) | (1 << (SqlParser.EXPORT - 329)) | (1 << (SqlParser.EXTENDED - 329)) | (1 << (SqlParser.EXTENT_SIZE - 329)) | (1 << (SqlParser.FAST - 329)) | (1 << (SqlParser.FAULTS - 329)) | (1 << (SqlParser.FIELDS - 329)) | (1 << (SqlParser.FILE_BLOCK_SIZE - 329)))) !== 0) || ((((_la - 361)) & ~0x1f) == 0 && ((1 << (_la - 361)) & ((1 << (SqlParser.FILTER - 361)) | (1 << (SqlParser.FIRST - 361)) | (1 << (SqlParser.FIXED - 361)) | (1 << (SqlParser.FLUSH - 361)) | (1 << (SqlParser.FOLLOWS - 361)) | (1 << (SqlParser.FOUND - 361)) | (1 << (SqlParser.FULL - 361)) | (1 << (SqlParser.FUNCTION - 361)) | (1 << (SqlParser.GENERAL - 361)) | (1 << (SqlParser.GLOBAL - 361)) | (1 << (SqlParser.GRANTS - 361)) | (1 << (SqlParser.GROUP_REPLICATION - 361)) | (1 << (SqlParser.HANDLER - 361)) | (1 << (SqlParser.HASH - 361)) | (1 << (SqlParser.HELP - 361)) | (1 << (SqlParser.HOST - 361)) | (1 << (SqlParser.HOSTS - 361)) | (1 << (SqlParser.IDENTIFIED - 361)) | (1 << (SqlParser.IGNORE_SERVER_IDS - 361)) | (1 << (SqlParser.IMPORT - 361)) | (1 << (SqlParser.INDEXES - 361)) | (1 << (SqlParser.INITIAL_SIZE - 361)) | (1 << (SqlParser.INPLACE - 361)) | (1 << (SqlParser.INSERT_METHOD - 361)) | (1 << (SqlParser.INSTALL - 361)) | (1 << (SqlParser.INSTANCE - 361)) | (1 << (SqlParser.INVISIBLE - 361)) | (1 << (SqlParser.INVOKER - 361)) | (1 << (SqlParser.IO - 361)) | (1 << (SqlParser.IO_THREAD - 361)) | (1 << (SqlParser.IPC - 361)) | (1 << (SqlParser.ISOLATION - 361)))) !== 0) || ((((_la - 393)) & ~0x1f) == 0 && ((1 << (_la - 393)) & ((1 << (SqlParser.ISSUER - 393)) | (1 << (SqlParser.JSON - 393)) | (1 << (SqlParser.KEY_BLOCK_SIZE - 393)) | (1 << (SqlParser.LANGUAGE - 393)) | (1 << (SqlParser.LAST - 393)) | (1 << (SqlParser.LEAVES - 393)) | (1 << (SqlParser.LESS - 393)) | (1 << (SqlParser.LEVEL - 393)) | (1 << (SqlParser.LIST - 393)) | (1 << (SqlParser.LOCAL - 393)) | (1 << (SqlParser.LOGFILE - 393)) | (1 << (SqlParser.LOGS - 393)) | (1 << (SqlParser.MASTER - 393)) | (1 << (SqlParser.MASTER_AUTO_POSITION - 393)) | (1 << (SqlParser.MASTER_CONNECT_RETRY - 393)) | (1 << (SqlParser.MASTER_DELAY - 393)) | (1 << (SqlParser.MASTER_HEARTBEAT_PERIOD - 393)) | (1 << (SqlParser.MASTER_HOST - 393)) | (1 << (SqlParser.MASTER_LOG_FILE - 393)) | (1 << (SqlParser.MASTER_LOG_POS - 393)) | (1 << (SqlParser.MASTER_PASSWORD - 393)) | (1 << (SqlParser.MASTER_PORT - 393)) | (1 << (SqlParser.MASTER_RETRY_COUNT - 393)) | (1 << (SqlParser.MASTER_SSL - 393)) | (1 << (SqlParser.MASTER_SSL_CA - 393)) | (1 << (SqlParser.MASTER_SSL_CAPATH - 393)) | (1 << (SqlParser.MASTER_SSL_CERT - 393)) | (1 << (SqlParser.MASTER_SSL_CIPHER - 393)) | (1 << (SqlParser.MASTER_SSL_CRL - 393)) | (1 << (SqlParser.MASTER_SSL_CRLPATH - 393)) | (1 << (SqlParser.MASTER_SSL_KEY - 393)) | (1 << (SqlParser.MASTER_TLS_VERSION - 393)))) !== 0) || ((((_la - 425)) & ~0x1f) == 0 && ((1 << (_la - 425)) & ((1 << (SqlParser.MASTER_USER - 425)) | (1 << (SqlParser.MAX_CONNECTIONS_PER_HOUR - 425)) | (1 << (SqlParser.MAX_QUERIES_PER_HOUR - 425)) | (1 << (SqlParser.MAX_ROWS - 425)) | (1 << (SqlParser.MAX_SIZE - 425)) | (1 << (SqlParser.MAX_UPDATES_PER_HOUR - 425)) | (1 << (SqlParser.MAX_USER_CONNECTIONS - 425)) | (1 << (SqlParser.MEDIUM - 425)) | (1 << (SqlParser.MERGE - 425)) | (1 << (SqlParser.MESSAGE_TEXT - 425)) | (1 << (SqlParser.MID - 425)) | (1 << (SqlParser.MIGRATE - 425)) | (1 << (SqlParser.MIN_ROWS - 425)) | (1 << (SqlParser.MODE - 425)) | (1 << (SqlParser.MODIFY - 425)) | (1 << (SqlParser.MUTEX - 425)) | (1 << (SqlParser.MYSQL - 425)) | (1 << (SqlParser.MYSQL_ERRNO - 425)) | (1 << (SqlParser.NAME - 425)) | (1 << (SqlParser.NAMES - 425)) | (1 << (SqlParser.NCHAR - 425)) | (1 << (SqlParser.NEVER - 425)) | (1 << (SqlParser.NEXT - 425)) | (1 << (SqlParser.NO - 425)) | (1 << (SqlParser.NODEGROUP - 425)) | (1 << (SqlParser.NONE - 425)) | (1 << (SqlParser.OFFLINE - 425)) | (1 << (SqlParser.OFFSET - 425)) | (1 << (SqlParser.OJ - 425)) | (1 << (SqlParser.OLD_PASSWORD - 425)) | (1 << (SqlParser.ONE - 425)) | (1 << (SqlParser.ONLINE - 425)))) !== 0) || ((((_la - 457)) & ~0x1f) == 0 && ((1 << (_la - 457)) & ((1 << (SqlParser.ONLY - 457)) | (1 << (SqlParser.OPEN - 457)) | (1 << (SqlParser.OPTIMIZER_COSTS - 457)) | (1 << (SqlParser.OPTIONS - 457)) | (1 << (SqlParser.OWNER - 457)) | (1 << (SqlParser.PACK_KEYS - 457)) | (1 << (SqlParser.PAGE - 457)) | (1 << (SqlParser.PARSER - 457)) | (1 << (SqlParser.PARTIAL - 457)) | (1 << (SqlParser.PARTITIONING - 457)) | (1 << (SqlParser.PARTITIONS - 457)) | (1 << (SqlParser.PASSWORD - 457)) | (1 << (SqlParser.PHASE - 457)) | (1 << (SqlParser.PLUGIN - 457)) | (1 << (SqlParser.PLUGIN_DIR - 457)) | (1 << (SqlParser.PLUGINS - 457)) | (1 << (SqlParser.PORT - 457)) | (1 << (SqlParser.PRECEDES - 457)) | (1 << (SqlParser.PREPARE - 457)) | (1 << (SqlParser.PRESERVE - 457)) | (1 << (SqlParser.PREV - 457)) | (1 << (SqlParser.PROCESSLIST - 457)) | (1 << (SqlParser.PROFILE - 457)) | (1 << (SqlParser.PROFILES - 457)) | (1 << (SqlParser.PROXY - 457)) | (1 << (SqlParser.QUERY - 457)) | (1 << (SqlParser.QUICK - 457)) | (1 << (SqlParser.REBUILD - 457)) | (1 << (SqlParser.RECOVER - 457)) | (1 << (SqlParser.REDO_BUFFER_SIZE - 457)) | (1 << (SqlParser.REDUNDANT - 457)) | (1 << (SqlParser.RELAY - 457)))) !== 0) || ((((_la - 489)) & ~0x1f) == 0 && ((1 << (_la - 489)) & ((1 << (SqlParser.RELAY_LOG_FILE - 489)) | (1 << (SqlParser.RELAY_LOG_POS - 489)) | (1 << (SqlParser.RELAYLOG - 489)) | (1 << (SqlParser.REMOVE - 489)) | (1 << (SqlParser.REORGANIZE - 489)) | (1 << (SqlParser.REPAIR - 489)) | (1 << (SqlParser.REPLICATE_DO_DB - 489)) | (1 << (SqlParser.REPLICATE_DO_TABLE - 489)) | (1 << (SqlParser.REPLICATE_IGNORE_DB - 489)) | (1 << (SqlParser.REPLICATE_IGNORE_TABLE - 489)) | (1 << (SqlParser.REPLICATE_REWRITE_DB - 489)) | (1 << (SqlParser.REPLICATE_WILD_DO_TABLE - 489)) | (1 << (SqlParser.REPLICATE_WILD_IGNORE_TABLE - 489)) | (1 << (SqlParser.REPLICATION - 489)) | (1 << (SqlParser.RESET - 489)) | (1 << (SqlParser.RESUME - 489)) | (1 << (SqlParser.RETURNED_SQLSTATE - 489)) | (1 << (SqlParser.RETURNS - 489)) | (1 << (SqlParser.ROLE - 489)) | (1 << (SqlParser.ROLLBACK - 489)) | (1 << (SqlParser.ROLLUP - 489)) | (1 << (SqlParser.ROTATE - 489)) | (1 << (SqlParser.ROW - 489)) | (1 << (SqlParser.ROWS - 489)) | (1 << (SqlParser.ROW_FORMAT - 489)) | (1 << (SqlParser.SAVEPOINT - 489)) | (1 << (SqlParser.SCHEDULE - 489)) | (1 << (SqlParser.SECURITY - 489)) | (1 << (SqlParser.SERVER - 489)) | (1 << (SqlParser.SESSION - 489)) | (1 << (SqlParser.SHARE - 489)) | (1 << (SqlParser.SHARED - 489)))) !== 0) || ((((_la - 521)) & ~0x1f) == 0 && ((1 << (_la - 521)) & ((1 << (SqlParser.SIGNED - 521)) | (1 << (SqlParser.SIMPLE - 521)) | (1 << (SqlParser.SLAVE - 521)) | (1 << (SqlParser.SLOW - 521)) | (1 << (SqlParser.SNAPSHOT - 521)) | (1 << (SqlParser.SOCKET - 521)) | (1 << (SqlParser.SOME - 521)) | (1 << (SqlParser.SONAME - 521)) | (1 << (SqlParser.SOUNDS - 521)) | (1 << (SqlParser.SOURCE - 521)) | (1 << (SqlParser.SQL_AFTER_GTIDS - 521)) | (1 << (SqlParser.SQL_AFTER_MTS_GAPS - 521)) | (1 << (SqlParser.SQL_BEFORE_GTIDS - 521)) | (1 << (SqlParser.SQL_BUFFER_RESULT - 521)) | (1 << (SqlParser.SQL_CACHE - 521)) | (1 << (SqlParser.SQL_NO_CACHE - 521)) | (1 << (SqlParser.SQL_THREAD - 521)) | (1 << (SqlParser.START - 521)) | (1 << (SqlParser.STARTS - 521)) | (1 << (SqlParser.STATS_AUTO_RECALC - 521)) | (1 << (SqlParser.STATS_PERSISTENT - 521)) | (1 << (SqlParser.STATS_SAMPLE_PAGES - 521)) | (1 << (SqlParser.STATUS - 521)) | (1 << (SqlParser.STOP - 521)) | (1 << (SqlParser.STORAGE - 521)) | (1 << (SqlParser.STRING - 521)) | (1 << (SqlParser.SUBCLASS_ORIGIN - 521)) | (1 << (SqlParser.SUBJECT - 521)) | (1 << (SqlParser.SUBPARTITION - 521)) | (1 << (SqlParser.SUBPARTITIONS - 521)) | (1 << (SqlParser.SUSPEND - 521)))) !== 0) || ((((_la - 553)) & ~0x1f) == 0 && ((1 << (_la - 553)) & ((1 << (SqlParser.SWAPS - 553)) | (1 << (SqlParser.SWITCHES - 553)) | (1 << (SqlParser.TABLE_NAME - 553)) | (1 << (SqlParser.TABLESPACE - 553)) | (1 << (SqlParser.TEMPORARY - 553)) | (1 << (SqlParser.TEMPTABLE - 553)) | (1 << (SqlParser.THAN - 553)) | (1 << (SqlParser.TRADITIONAL - 553)) | (1 << (SqlParser.TRANSACTION - 553)) | (1 << (SqlParser.TRANSACTIONAL - 553)) | (1 << (SqlParser.TRIGGERS - 553)) | (1 << (SqlParser.TRUNCATE - 553)) | (1 << (SqlParser.UNDEFINED - 553)) | (1 << (SqlParser.UNDOFILE - 553)) | (1 << (SqlParser.UNDO_BUFFER_SIZE - 553)) | (1 << (SqlParser.UNINSTALL - 553)) | (1 << (SqlParser.UNKNOWN - 553)) | (1 << (SqlParser.UNTIL - 553)) | (1 << (SqlParser.UPGRADE - 553)) | (1 << (SqlParser.USER - 553)) | (1 << (SqlParser.USE_FRM - 553)) | (1 << (SqlParser.USER_RESOURCES - 553)) | (1 << (SqlParser.VALIDATION - 553)) | (1 << (SqlParser.VALUE - 553)) | (1 << (SqlParser.VARIABLES - 553)) | (1 << (SqlParser.VIEW - 553)) | (1 << (SqlParser.VISIBLE - 553)) | (1 << (SqlParser.WAIT - 553)) | (1 << (SqlParser.WARNINGS - 553)) | (1 << (SqlParser.WITHOUT - 553)) | (1 << (SqlParser.WORK - 553)))) !== 0) || ((((_la - 585)) & ~0x1f) == 0 && ((1 << (_la - 585)) & ((1 << (SqlParser.WRAPPER - 585)) | (1 << (SqlParser.X509 - 585)) | (1 << (SqlParser.XA - 585)) | (1 << (SqlParser.XML - 585)) | (1 << (SqlParser.INTERNAL - 585)) | (1 << (SqlParser.QUARTER - 585)) | (1 << (SqlParser.MONTH - 585)) | (1 << (SqlParser.DAY - 585)) | (1 << (SqlParser.HOUR - 585)) | (1 << (SqlParser.MINUTE - 585)) | (1 << (SqlParser.WEEK - 585)) | (1 << (SqlParser.SECOND - 585)) | (1 << (SqlParser.MICROSECOND - 585)) | (1 << (SqlParser.TABLES - 585)) | (1 << (SqlParser.ROUTINE - 585)) | (1 << (SqlParser.EXECUTE - 585)) | (1 << (SqlParser.FILE - 585)) | (1 << (SqlParser.PROCESS - 585)) | (1 << (SqlParser.RELOAD - 585)) | (1 << (SqlParser.SHUTDOWN - 585)) | (1 << (SqlParser.SUPER - 585)) | (1 << (SqlParser.PRIVILEGES - 585)) | (1 << (SqlParser.AUDIT_ADMIN - 585)) | (1 << (SqlParser.BACKUP_ADMIN - 585)) | (1 << (SqlParser.BINLOG_ADMIN - 585)) | (1 << (SqlParser.BINLOG_ENCRYPTION_ADMIN - 585)) | (1 << (SqlParser.CLONE_ADMIN - 585)))) !== 0) || ((((_la - 617)) & ~0x1f) == 0 && ((1 << (_la - 617)) & ((1 << (SqlParser.CONNECTION_ADMIN - 617)) | (1 << (SqlParser.ENCRYPTION_KEY_ADMIN - 617)) | (1 << (SqlParser.FIREWALL_ADMIN - 617)) | (1 << (SqlParser.FIREWALL_USER - 617)) | (1 << (SqlParser.GROUP_REPLICATION_ADMIN - 617)) | (1 << (SqlParser.INNODB_REDO_LOG_ARCHIVE - 617)) | (1 << (SqlParser.NDB_STORED_USER - 617)) | (1 << (SqlParser.PERSIST_RO_VARIABLES_ADMIN - 617)) | (1 << (SqlParser.REPLICATION_APPLIER - 617)) | (1 << (SqlParser.REPLICATION_SLAVE_ADMIN - 617)) | (1 << (SqlParser.RESOURCE_GROUP_ADMIN - 617)) | (1 << (SqlParser.RESOURCE_GROUP_USER - 617)) | (1 << (SqlParser.ROLE_ADMIN - 617)) | (1 << (SqlParser.SESSION_VARIABLES_ADMIN - 617)) | (1 << (SqlParser.SET_USER_ID - 617)) | (1 << (SqlParser.SHOW_ROUTINE - 617)) | (1 << (SqlParser.SYSTEM_VARIABLES_ADMIN - 617)) | (1 << (SqlParser.TABLE_ENCRYPTION_ADMIN - 617)) | (1 << (SqlParser.VERSION_TOKEN_ADMIN - 617)) | (1 << (SqlParser.XA_RECOVER_ADMIN - 617)) | (1 << (SqlParser.ARMSCII8 - 617)) | (1 << (SqlParser.ASCII - 617)) | (1 << (SqlParser.BIG5 - 617)) | (1 << (SqlParser.CP1250 - 617)) | (1 << (SqlParser.CP1251 - 617)) | (1 << (SqlParser.CP1256 - 617)) | (1 << (SqlParser.CP1257 - 617)) | (1 << (SqlParser.CP850 - 617)) | (1 << (SqlParser.CP852 - 617)) | (1 << (SqlParser.CP866 - 617)) | (1 << (SqlParser.CP932 - 617)) | (1 << (SqlParser.DEC8 - 617)))) !== 0) || ((((_la - 649)) & ~0x1f) == 0 && ((1 << (_la - 649)) & ((1 << (SqlParser.EUCJPMS - 649)) | (1 << (SqlParser.EUCKR - 649)) | (1 << (SqlParser.GB2312 - 649)) | (1 << (SqlParser.GBK - 649)) | (1 << (SqlParser.GEOSTD8 - 649)) | (1 << (SqlParser.GREEK - 649)) | (1 << (SqlParser.HEBREW - 649)) | (1 << (SqlParser.HP8 - 649)) | (1 << (SqlParser.KEYBCS2 - 649)) | (1 << (SqlParser.KOI8R - 649)) | (1 << (SqlParser.KOI8U - 649)) | (1 << (SqlParser.LATIN1 - 649)) | (1 << (SqlParser.LATIN2 - 649)) | (1 << (SqlParser.LATIN5 - 649)) | (1 << (SqlParser.LATIN7 - 649)) | (1 << (SqlParser.MACCE - 649)) | (1 << (SqlParser.MACROMAN - 649)) | (1 << (SqlParser.SJIS - 649)) | (1 << (SqlParser.SWE7 - 649)) | (1 << (SqlParser.TIS620 - 649)) | (1 << (SqlParser.UCS2 - 649)) | (1 << (SqlParser.UJIS - 649)) | (1 << (SqlParser.UTF16 - 649)) | (1 << (SqlParser.UTF16LE - 649)) | (1 << (SqlParser.UTF32 - 649)) | (1 << (SqlParser.UTF8 - 649)) | (1 << (SqlParser.UTF8MB3 - 649)) | (1 << (SqlParser.UTF8MB4 - 649)) | (1 << (SqlParser.ARCHIVE - 649)) | (1 << (SqlParser.BLACKHOLE - 649)) | (1 << (SqlParser.CSV - 649)) | (1 << (SqlParser.FEDERATED - 649)))) !== 0) || ((((_la - 681)) & ~0x1f) == 0 && ((1 << (_la - 681)) & ((1 << (SqlParser.INNODB - 681)) | (1 << (SqlParser.MEMORY - 681)) | (1 << (SqlParser.MRG_MYISAM - 681)) | (1 << (SqlParser.MYISAM - 681)) | (1 << (SqlParser.NDB - 681)) | (1 << (SqlParser.NDBCLUSTER - 681)) | (1 << (SqlParser.PERFORMANCE_SCHEMA - 681)) | (1 << (SqlParser.TOKUDB - 681)) | (1 << (SqlParser.REPEATABLE - 681)) | (1 << (SqlParser.COMMITTED - 681)) | (1 << (SqlParser.UNCOMMITTED - 681)) | (1 << (SqlParser.SERIALIZABLE - 681)) | (1 << (SqlParser.GEOMETRYCOLLECTION - 681)) | (1 << (SqlParser.LINESTRING - 681)) | (1 << (SqlParser.MULTILINESTRING - 681)) | (1 << (SqlParser.MULTIPOINT - 681)) | (1 << (SqlParser.MULTIPOLYGON - 681)) | (1 << (SqlParser.POINT - 681)) | (1 << (SqlParser.POLYGON - 681)) | (1 << (SqlParser.ABS - 681)) | (1 << (SqlParser.ACOS - 681)) | (1 << (SqlParser.ADDDATE - 681)) | (1 << (SqlParser.ADDTIME - 681)) | (1 << (SqlParser.AES_DECRYPT - 681)) | (1 << (SqlParser.AES_ENCRYPT - 681)) | (1 << (SqlParser.AREA - 681)) | (1 << (SqlParser.ASBINARY - 681)) | (1 << (SqlParser.ASIN - 681)) | (1 << (SqlParser.ASTEXT - 681)) | (1 << (SqlParser.ASWKB - 681)))) !== 0) || ((((_la - 713)) & ~0x1f) == 0 && ((1 << (_la - 713)) & ((1 << (SqlParser.ASWKT - 713)) | (1 << (SqlParser.ASYMMETRIC_DECRYPT - 713)) | (1 << (SqlParser.ASYMMETRIC_DERIVE - 713)) | (1 << (SqlParser.ASYMMETRIC_ENCRYPT - 713)) | (1 << (SqlParser.ASYMMETRIC_SIGN - 713)) | (1 << (SqlParser.ASYMMETRIC_VERIFY - 713)) | (1 << (SqlParser.ATAN - 713)) | (1 << (SqlParser.ATAN2 - 713)) | (1 << (SqlParser.BENCHMARK - 713)) | (1 << (SqlParser.BIN - 713)) | (1 << (SqlParser.BIT_COUNT - 713)) | (1 << (SqlParser.BIT_LENGTH - 713)) | (1 << (SqlParser.BUFFER - 713)) | (1 << (SqlParser.CATALOG_NAME - 713)) | (1 << (SqlParser.CEIL - 713)) | (1 << (SqlParser.CEILING - 713)) | (1 << (SqlParser.CENTROID - 713)) | (1 << (SqlParser.CHARACTER_LENGTH - 713)) | (1 << (SqlParser.CHARSET - 713)) | (1 << (SqlParser.CHAR_LENGTH - 713)) | (1 << (SqlParser.COERCIBILITY - 713)) | (1 << (SqlParser.COLLATION - 713)) | (1 << (SqlParser.COMPRESS - 713)) | (1 << (SqlParser.CONCAT - 713)) | (1 << (SqlParser.CONCAT_WS - 713)) | (1 << (SqlParser.CONNECTION_ID - 713)) | (1 << (SqlParser.CONV - 713)) | (1 << (SqlParser.CONVERT_TZ - 713)) | (1 << (SqlParser.COS - 713)) | (1 << (SqlParser.COT - 713)) | (1 << (SqlParser.CRC32 - 713)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PRIV_KEY - 713)))) !== 0) || ((((_la - 745)) & ~0x1f) == 0 && ((1 << (_la - 745)) & ((1 << (SqlParser.CREATE_ASYMMETRIC_PUB_KEY - 745)) | (1 << (SqlParser.CREATE_DH_PARAMETERS - 745)) | (1 << (SqlParser.CREATE_DIGEST - 745)) | (1 << (SqlParser.CROSSES - 745)) | (1 << (SqlParser.DATEDIFF - 745)) | (1 << (SqlParser.DATE_FORMAT - 745)) | (1 << (SqlParser.DAYNAME - 745)) | (1 << (SqlParser.DAYOFMONTH - 745)) | (1 << (SqlParser.DAYOFWEEK - 745)) | (1 << (SqlParser.DAYOFYEAR - 745)) | (1 << (SqlParser.DECODE - 745)) | (1 << (SqlParser.DEGREES - 745)) | (1 << (SqlParser.DES_DECRYPT - 745)) | (1 << (SqlParser.DES_ENCRYPT - 745)) | (1 << (SqlParser.DIMENSION - 745)) | (1 << (SqlParser.DISJOINT - 745)) | (1 << (SqlParser.ELT - 745)) | (1 << (SqlParser.ENCODE - 745)) | (1 << (SqlParser.ENCRYPT - 745)) | (1 << (SqlParser.ENDPOINT - 745)) | (1 << (SqlParser.ENVELOPE - 745)) | (1 << (SqlParser.EQUALS - 745)) | (1 << (SqlParser.EXP - 745)) | (1 << (SqlParser.EXPORT_SET - 745)) | (1 << (SqlParser.EXTERIORRING - 745)) | (1 << (SqlParser.EXTRACTVALUE - 745)) | (1 << (SqlParser.FIELD - 745)) | (1 << (SqlParser.FIND_IN_SET - 745)) | (1 << (SqlParser.FLOOR - 745)) | (1 << (SqlParser.FORMAT - 745)) | (1 << (SqlParser.FOUND_ROWS - 745)) | (1 << (SqlParser.FROM_BASE64 - 745)))) !== 0) || ((((_la - 777)) & ~0x1f) == 0 && ((1 << (_la - 777)) & ((1 << (SqlParser.FROM_DAYS - 777)) | (1 << (SqlParser.FROM_UNIXTIME - 777)) | (1 << (SqlParser.GEOMCOLLFROMTEXT - 777)) | (1 << (SqlParser.GEOMCOLLFROMWKB - 777)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMTEXT - 777)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMWKB - 777)) | (1 << (SqlParser.GEOMETRYFROMTEXT - 777)) | (1 << (SqlParser.GEOMETRYFROMWKB - 777)) | (1 << (SqlParser.GEOMETRYN - 777)) | (1 << (SqlParser.GEOMETRYTYPE - 777)) | (1 << (SqlParser.GEOMFROMTEXT - 777)) | (1 << (SqlParser.GEOMFROMWKB - 777)) | (1 << (SqlParser.GET_FORMAT - 777)) | (1 << (SqlParser.GET_LOCK - 777)) | (1 << (SqlParser.GLENGTH - 777)) | (1 << (SqlParser.GREATEST - 777)) | (1 << (SqlParser.GTID_SUBSET - 777)) | (1 << (SqlParser.GTID_SUBTRACT - 777)) | (1 << (SqlParser.HEX - 777)) | (1 << (SqlParser.IFNULL - 777)) | (1 << (SqlParser.INET6_ATON - 777)) | (1 << (SqlParser.INET6_NTOA - 777)) | (1 << (SqlParser.INET_ATON - 777)) | (1 << (SqlParser.INET_NTOA - 777)) | (1 << (SqlParser.INSTR - 777)) | (1 << (SqlParser.INTERIORRINGN - 777)) | (1 << (SqlParser.INTERSECTS - 777)) | (1 << (SqlParser.ISCLOSED - 777)) | (1 << (SqlParser.ISEMPTY - 777)) | (1 << (SqlParser.ISNULL - 777)) | (1 << (SqlParser.ISSIMPLE - 777)) | (1 << (SqlParser.IS_FREE_LOCK - 777)))) !== 0) || ((((_la - 809)) & ~0x1f) == 0 && ((1 << (_la - 809)) & ((1 << (SqlParser.IS_IPV4 - 809)) | (1 << (SqlParser.IS_IPV4_COMPAT - 809)) | (1 << (SqlParser.IS_IPV4_MAPPED - 809)) | (1 << (SqlParser.IS_IPV6 - 809)) | (1 << (SqlParser.IS_USED_LOCK - 809)) | (1 << (SqlParser.LAST_INSERT_ID - 809)) | (1 << (SqlParser.LCASE - 809)) | (1 << (SqlParser.LEAST - 809)) | (1 << (SqlParser.LENGTH - 809)) | (1 << (SqlParser.LINEFROMTEXT - 809)) | (1 << (SqlParser.LINEFROMWKB - 809)) | (1 << (SqlParser.LINESTRINGFROMTEXT - 809)) | (1 << (SqlParser.LINESTRINGFROMWKB - 809)) | (1 << (SqlParser.LN - 809)) | (1 << (SqlParser.LOAD_FILE - 809)) | (1 << (SqlParser.LOCATE - 809)) | (1 << (SqlParser.LOG - 809)) | (1 << (SqlParser.LOG10 - 809)) | (1 << (SqlParser.LOG2 - 809)) | (1 << (SqlParser.LOWER - 809)) | (1 << (SqlParser.LPAD - 809)) | (1 << (SqlParser.LTRIM - 809)) | (1 << (SqlParser.MAKEDATE - 809)) | (1 << (SqlParser.MAKETIME - 809)) | (1 << (SqlParser.MAKE_SET - 809)) | (1 << (SqlParser.MASTER_POS_WAIT - 809)) | (1 << (SqlParser.MBRCONTAINS - 809)) | (1 << (SqlParser.MBRDISJOINT - 809)) | (1 << (SqlParser.MBREQUAL - 809)) | (1 << (SqlParser.MBRINTERSECTS - 809)) | (1 << (SqlParser.MBROVERLAPS - 809)) | (1 << (SqlParser.MBRTOUCHES - 809)))) !== 0) || ((((_la - 841)) & ~0x1f) == 0 && ((1 << (_la - 841)) & ((1 << (SqlParser.MBRWITHIN - 841)) | (1 << (SqlParser.MD5 - 841)) | (1 << (SqlParser.MLINEFROMTEXT - 841)) | (1 << (SqlParser.MLINEFROMWKB - 841)) | (1 << (SqlParser.MONTHNAME - 841)) | (1 << (SqlParser.MPOINTFROMTEXT - 841)) | (1 << (SqlParser.MPOINTFROMWKB - 841)) | (1 << (SqlParser.MPOLYFROMTEXT - 841)) | (1 << (SqlParser.MPOLYFROMWKB - 841)) | (1 << (SqlParser.MULTILINESTRINGFROMTEXT - 841)) | (1 << (SqlParser.MULTILINESTRINGFROMWKB - 841)) | (1 << (SqlParser.MULTIPOINTFROMTEXT - 841)) | (1 << (SqlParser.MULTIPOINTFROMWKB - 841)) | (1 << (SqlParser.MULTIPOLYGONFROMTEXT - 841)) | (1 << (SqlParser.MULTIPOLYGONFROMWKB - 841)) | (1 << (SqlParser.NAME_CONST - 841)) | (1 << (SqlParser.NULLIF - 841)) | (1 << (SqlParser.NUMGEOMETRIES - 841)) | (1 << (SqlParser.NUMINTERIORRINGS - 841)) | (1 << (SqlParser.NUMPOINTS - 841)) | (1 << (SqlParser.OCT - 841)) | (1 << (SqlParser.OCTET_LENGTH - 841)) | (1 << (SqlParser.ORD - 841)) | (1 << (SqlParser.OVERLAPS - 841)) | (1 << (SqlParser.PERIOD_ADD - 841)) | (1 << (SqlParser.PERIOD_DIFF - 841)) | (1 << (SqlParser.PI - 841)) | (1 << (SqlParser.POINTFROMTEXT - 841)) | (1 << (SqlParser.POINTFROMWKB - 841)) | (1 << (SqlParser.POINTN - 841)) | (1 << (SqlParser.POLYFROMTEXT - 841)) | (1 << (SqlParser.POLYFROMWKB - 841)))) !== 0) || ((((_la - 873)) & ~0x1f) == 0 && ((1 << (_la - 873)) & ((1 << (SqlParser.POLYGONFROMTEXT - 873)) | (1 << (SqlParser.POLYGONFROMWKB - 873)) | (1 << (SqlParser.POW - 873)) | (1 << (SqlParser.POWER - 873)) | (1 << (SqlParser.QUOTE - 873)) | (1 << (SqlParser.RADIANS - 873)) | (1 << (SqlParser.RAND - 873)) | (1 << (SqlParser.RANDOM_BYTES - 873)) | (1 << (SqlParser.RELEASE_LOCK - 873)) | (1 << (SqlParser.REVERSE - 873)) | (1 << (SqlParser.ROUND - 873)) | (1 << (SqlParser.ROW_COUNT - 873)) | (1 << (SqlParser.RPAD - 873)) | (1 << (SqlParser.RTRIM - 873)) | (1 << (SqlParser.SEC_TO_TIME - 873)) | (1 << (SqlParser.SESSION_USER - 873)) | (1 << (SqlParser.SHA - 873)) | (1 << (SqlParser.SHA1 - 873)) | (1 << (SqlParser.SHA2 - 873)) | (1 << (SqlParser.SCHEMA_NAME - 873)) | (1 << (SqlParser.SIGN - 873)) | (1 << (SqlParser.SIN - 873)) | (1 << (SqlParser.SLEEP - 873)) | (1 << (SqlParser.SOUNDEX - 873)) | (1 << (SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS - 873)) | (1 << (SqlParser.SQRT - 873)) | (1 << (SqlParser.SRID - 873)) | (1 << (SqlParser.STARTPOINT - 873)) | (1 << (SqlParser.STRCMP - 873)) | (1 << (SqlParser.STR_TO_DATE - 873)) | (1 << (SqlParser.ST_AREA - 873)) | (1 << (SqlParser.ST_ASBINARY - 873)))) !== 0) || ((((_la - 905)) & ~0x1f) == 0 && ((1 << (_la - 905)) & ((1 << (SqlParser.ST_ASTEXT - 905)) | (1 << (SqlParser.ST_ASWKB - 905)) | (1 << (SqlParser.ST_ASWKT - 905)) | (1 << (SqlParser.ST_BUFFER - 905)) | (1 << (SqlParser.ST_CENTROID - 905)) | (1 << (SqlParser.ST_CONTAINS - 905)) | (1 << (SqlParser.ST_CROSSES - 905)) | (1 << (SqlParser.ST_DIFFERENCE - 905)) | (1 << (SqlParser.ST_DIMENSION - 905)) | (1 << (SqlParser.ST_DISJOINT - 905)) | (1 << (SqlParser.ST_DISTANCE - 905)) | (1 << (SqlParser.ST_ENDPOINT - 905)) | (1 << (SqlParser.ST_ENVELOPE - 905)) | (1 << (SqlParser.ST_EQUALS - 905)) | (1 << (SqlParser.ST_EXTERIORRING - 905)) | (1 << (SqlParser.ST_GEOMCOLLFROMTEXT - 905)) | (1 << (SqlParser.ST_GEOMCOLLFROMTXT - 905)) | (1 << (SqlParser.ST_GEOMCOLLFROMWKB - 905)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT - 905)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB - 905)) | (1 << (SqlParser.ST_GEOMETRYFROMTEXT - 905)) | (1 << (SqlParser.ST_GEOMETRYFROMWKB - 905)) | (1 << (SqlParser.ST_GEOMETRYN - 905)) | (1 << (SqlParser.ST_GEOMETRYTYPE - 905)) | (1 << (SqlParser.ST_GEOMFROMTEXT - 905)) | (1 << (SqlParser.ST_GEOMFROMWKB - 905)) | (1 << (SqlParser.ST_INTERIORRINGN - 905)) | (1 << (SqlParser.ST_INTERSECTION - 905)) | (1 << (SqlParser.ST_INTERSECTS - 905)) | (1 << (SqlParser.ST_ISCLOSED - 905)) | (1 << (SqlParser.ST_ISEMPTY - 905)) | (1 << (SqlParser.ST_ISSIMPLE - 905)))) !== 0) || ((((_la - 937)) & ~0x1f) == 0 && ((1 << (_la - 937)) & ((1 << (SqlParser.ST_LINEFROMTEXT - 937)) | (1 << (SqlParser.ST_LINEFROMWKB - 937)) | (1 << (SqlParser.ST_LINESTRINGFROMTEXT - 937)) | (1 << (SqlParser.ST_LINESTRINGFROMWKB - 937)) | (1 << (SqlParser.ST_NUMGEOMETRIES - 937)) | (1 << (SqlParser.ST_NUMINTERIORRING - 937)) | (1 << (SqlParser.ST_NUMINTERIORRINGS - 937)) | (1 << (SqlParser.ST_NUMPOINTS - 937)) | (1 << (SqlParser.ST_OVERLAPS - 937)) | (1 << (SqlParser.ST_POINTFROMTEXT - 937)) | (1 << (SqlParser.ST_POINTFROMWKB - 937)) | (1 << (SqlParser.ST_POINTN - 937)) | (1 << (SqlParser.ST_POLYFROMTEXT - 937)) | (1 << (SqlParser.ST_POLYFROMWKB - 937)) | (1 << (SqlParser.ST_POLYGONFROMTEXT - 937)) | (1 << (SqlParser.ST_POLYGONFROMWKB - 937)) | (1 << (SqlParser.ST_SRID - 937)) | (1 << (SqlParser.ST_STARTPOINT - 937)) | (1 << (SqlParser.ST_SYMDIFFERENCE - 937)) | (1 << (SqlParser.ST_TOUCHES - 937)) | (1 << (SqlParser.ST_UNION - 937)) | (1 << (SqlParser.ST_WITHIN - 937)) | (1 << (SqlParser.ST_X - 937)) | (1 << (SqlParser.ST_Y - 937)) | (1 << (SqlParser.SUBDATE - 937)) | (1 << (SqlParser.SUBSTRING_INDEX - 937)) | (1 << (SqlParser.SUBTIME - 937)) | (1 << (SqlParser.SYSTEM_USER - 937)) | (1 << (SqlParser.TAN - 937)) | (1 << (SqlParser.TIMEDIFF - 937)) | (1 << (SqlParser.TIMESTAMPADD - 937)) | (1 << (SqlParser.TIMESTAMPDIFF - 937)))) !== 0) || ((((_la - 969)) & ~0x1f) == 0 && ((1 << (_la - 969)) & ((1 << (SqlParser.TIME_FORMAT - 969)) | (1 << (SqlParser.TIME_TO_SEC - 969)) | (1 << (SqlParser.TOUCHES - 969)) | (1 << (SqlParser.TO_BASE64 - 969)) | (1 << (SqlParser.TO_DAYS - 969)) | (1 << (SqlParser.TO_SECONDS - 969)) | (1 << (SqlParser.UCASE - 969)) | (1 << (SqlParser.UNCOMPRESS - 969)) | (1 << (SqlParser.UNCOMPRESSED_LENGTH - 969)) | (1 << (SqlParser.UNHEX - 969)) | (1 << (SqlParser.UNIX_TIMESTAMP - 969)) | (1 << (SqlParser.UPDATEXML - 969)) | (1 << (SqlParser.UPPER - 969)) | (1 << (SqlParser.UUID - 969)) | (1 << (SqlParser.UUID_SHORT - 969)) | (1 << (SqlParser.VALIDATE_PASSWORD_STRENGTH - 969)) | (1 << (SqlParser.VERSION - 969)) | (1 << (SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS - 969)) | (1 << (SqlParser.WEEKDAY - 969)) | (1 << (SqlParser.WEEKOFYEAR - 969)) | (1 << (SqlParser.WEIGHT_STRING - 969)) | (1 << (SqlParser.WITHIN - 969)) | (1 << (SqlParser.YEARWEEK - 969)) | (1 << (SqlParser.Y_FUNCTION - 969)) | (1 << (SqlParser.X_FUNCTION - 969)))) !== 0) || ((((_la - 1006)) & ~0x1f) == 0 && ((1 << (_la - 1006)) & ((1 << (SqlParser.PLUS - 1006)) | (1 << (SqlParser.MINUS - 1006)) | (1 << (SqlParser.EXCLAMATION_SYMBOL - 1006)) | (1 << (SqlParser.BIT_NOT_OP - 1006)) | (1 << (SqlParser.LR_BRACKET - 1006)) | (1 << (SqlParser.ZERO_DECIMAL - 1006)) | (1 << (SqlParser.ONE_DECIMAL - 1006)) | (1 << (SqlParser.TWO_DECIMAL - 1006)) | (1 << (SqlParser.CHARSET_REVERSE_QOUTE_STRING - 1006)) | (1 << (SqlParser.START_NATIONAL_STRING_LITERAL - 1006)) | (1 << (SqlParser.STRING_LITERAL - 1006)) | (1 << (SqlParser.DECIMAL_LITERAL - 1006)) | (1 << (SqlParser.HEXADECIMAL_LITERAL - 1006)))) !== 0) || ((((_la - 1038)) & ~0x1f) == 0 && ((1 << (_la - 1038)) & ((1 << (SqlParser.REAL_LITERAL - 1038)) | (1 << (SqlParser.NULL_SPEC_LITERAL - 1038)) | (1 << (SqlParser.BIT_STRING - 1038)) | (1 << (SqlParser.STRING_CHARSET_NAME - 1038)) | (1 << (SqlParser.ID - 1038)) | (1 << (SqlParser.REVERSE_QUOTE_ID - 1038)) | (1 << (SqlParser.LOCAL_ID - 1038)) | (1 << (SqlParser.GLOBAL_ID - 1038)))) !== 0)) {
+ this.state = 5873;
+ this.functionArgs();
+ }
+
+ this.state = 5876;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+
+ case 5:
+ localctx = new PasswordFunctionCallContext(this, localctx);
+ this.enterOuterAlt(localctx, 5);
+ this.state = 5878;
+ this.passwordFunctionClause();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function SpecificFunctionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_specificFunction;
+ return this;
+}
+
+SpecificFunctionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+SpecificFunctionContext.prototype.constructor = SpecificFunctionContext;
+
+
+
+SpecificFunctionContext.prototype.copyFrom = function(ctx) {
+ antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx);
+};
+
+
+function PositionFunctionCallContext(parser, ctx) {
+ SpecificFunctionContext.call(this, parser);
+ this.positionString = null; // StringLiteralContext;
+ this.positionExpression = null; // ExpressionContext;
+ this.inString = null; // StringLiteralContext;
+ this.inExpression = null; // ExpressionContext;
+ SpecificFunctionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+PositionFunctionCallContext.prototype = Object.create(SpecificFunctionContext.prototype);
+PositionFunctionCallContext.prototype.constructor = PositionFunctionCallContext;
+
+SqlParser.PositionFunctionCallContext = PositionFunctionCallContext;
+
+PositionFunctionCallContext.prototype.POSITION = function() {
+ return this.getToken(SqlParser.POSITION, 0);
+};
+
+PositionFunctionCallContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+PositionFunctionCallContext.prototype.IN = function() {
+ return this.getToken(SqlParser.IN, 0);
+};
+
+PositionFunctionCallContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+PositionFunctionCallContext.prototype.stringLiteral = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(StringLiteralContext);
+ } else {
+ return this.getTypedRuleContext(StringLiteralContext,i);
+ }
+};
+
+PositionFunctionCallContext.prototype.expression = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ExpressionContext);
+ } else {
+ return this.getTypedRuleContext(ExpressionContext,i);
+ }
+};
+PositionFunctionCallContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterPositionFunctionCall(this);
+ }
+};
+
+PositionFunctionCallContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitPositionFunctionCall(this);
+ }
+};
+
+PositionFunctionCallContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitPositionFunctionCall(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function TrimFunctionCallContext(parser, ctx) {
+ SpecificFunctionContext.call(this, parser);
+ this.positioinForm = null; // Token;
+ this.sourceString = null; // StringLiteralContext;
+ this.sourceExpression = null; // ExpressionContext;
+ this.fromString = null; // StringLiteralContext;
+ this.fromExpression = null; // ExpressionContext;
+ SpecificFunctionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+TrimFunctionCallContext.prototype = Object.create(SpecificFunctionContext.prototype);
+TrimFunctionCallContext.prototype.constructor = TrimFunctionCallContext;
+
+SqlParser.TrimFunctionCallContext = TrimFunctionCallContext;
+
+TrimFunctionCallContext.prototype.TRIM = function() {
+ return this.getToken(SqlParser.TRIM, 0);
+};
+
+TrimFunctionCallContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+TrimFunctionCallContext.prototype.FROM = function() {
+ return this.getToken(SqlParser.FROM, 0);
+};
+
+TrimFunctionCallContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+TrimFunctionCallContext.prototype.BOTH = function() {
+ return this.getToken(SqlParser.BOTH, 0);
+};
+
+TrimFunctionCallContext.prototype.LEADING = function() {
+ return this.getToken(SqlParser.LEADING, 0);
+};
+
+TrimFunctionCallContext.prototype.TRAILING = function() {
+ return this.getToken(SqlParser.TRAILING, 0);
+};
+
+TrimFunctionCallContext.prototype.stringLiteral = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(StringLiteralContext);
+ } else {
+ return this.getTypedRuleContext(StringLiteralContext,i);
+ }
+};
+
+TrimFunctionCallContext.prototype.expression = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ExpressionContext);
+ } else {
+ return this.getTypedRuleContext(ExpressionContext,i);
+ }
+};
+TrimFunctionCallContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterTrimFunctionCall(this);
+ }
+};
+
+TrimFunctionCallContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitTrimFunctionCall(this);
+ }
+};
+
+TrimFunctionCallContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitTrimFunctionCall(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function SimpleFunctionCallContext(parser, ctx) {
+ SpecificFunctionContext.call(this, parser);
+ SpecificFunctionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+SimpleFunctionCallContext.prototype = Object.create(SpecificFunctionContext.prototype);
+SimpleFunctionCallContext.prototype.constructor = SimpleFunctionCallContext;
+
+SqlParser.SimpleFunctionCallContext = SimpleFunctionCallContext;
+
+SimpleFunctionCallContext.prototype.CURRENT_DATE = function() {
+ return this.getToken(SqlParser.CURRENT_DATE, 0);
+};
+
+SimpleFunctionCallContext.prototype.CURRENT_TIME = function() {
+ return this.getToken(SqlParser.CURRENT_TIME, 0);
+};
+
+SimpleFunctionCallContext.prototype.CURRENT_TIMESTAMP = function() {
+ return this.getToken(SqlParser.CURRENT_TIMESTAMP, 0);
+};
+
+SimpleFunctionCallContext.prototype.CURRENT_USER = function() {
+ return this.getToken(SqlParser.CURRENT_USER, 0);
+};
+
+SimpleFunctionCallContext.prototype.LOCALTIME = function() {
+ return this.getToken(SqlParser.LOCALTIME, 0);
+};
+SimpleFunctionCallContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSimpleFunctionCall(this);
+ }
+};
+
+SimpleFunctionCallContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSimpleFunctionCall(this);
+ }
+};
+
+SimpleFunctionCallContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSimpleFunctionCall(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function CharFunctionCallContext(parser, ctx) {
+ SpecificFunctionContext.call(this, parser);
+ SpecificFunctionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+CharFunctionCallContext.prototype = Object.create(SpecificFunctionContext.prototype);
+CharFunctionCallContext.prototype.constructor = CharFunctionCallContext;
+
+SqlParser.CharFunctionCallContext = CharFunctionCallContext;
+
+CharFunctionCallContext.prototype.CHAR = function() {
+ return this.getToken(SqlParser.CHAR, 0);
+};
+
+CharFunctionCallContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+CharFunctionCallContext.prototype.functionArgs = function() {
+ return this.getTypedRuleContext(FunctionArgsContext,0);
+};
+
+CharFunctionCallContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+CharFunctionCallContext.prototype.USING = function() {
+ return this.getToken(SqlParser.USING, 0);
+};
+
+CharFunctionCallContext.prototype.charsetName = function() {
+ return this.getTypedRuleContext(CharsetNameContext,0);
+};
+CharFunctionCallContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterCharFunctionCall(this);
+ }
+};
+
+CharFunctionCallContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitCharFunctionCall(this);
+ }
+};
+
+CharFunctionCallContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitCharFunctionCall(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function WeightFunctionCallContext(parser, ctx) {
+ SpecificFunctionContext.call(this, parser);
+ this.stringFormat = null; // Token;
+ SpecificFunctionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+WeightFunctionCallContext.prototype = Object.create(SpecificFunctionContext.prototype);
+WeightFunctionCallContext.prototype.constructor = WeightFunctionCallContext;
+
+SqlParser.WeightFunctionCallContext = WeightFunctionCallContext;
+
+WeightFunctionCallContext.prototype.WEIGHT_STRING = function() {
+ return this.getToken(SqlParser.WEIGHT_STRING, 0);
+};
+
+WeightFunctionCallContext.prototype.LR_BRACKET = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.LR_BRACKET);
+ } else {
+ return this.getToken(SqlParser.LR_BRACKET, i);
+ }
+};
+
+
+WeightFunctionCallContext.prototype.RR_BRACKET = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.RR_BRACKET);
+ } else {
+ return this.getToken(SqlParser.RR_BRACKET, i);
+ }
+};
+
+
+WeightFunctionCallContext.prototype.stringLiteral = function() {
+ return this.getTypedRuleContext(StringLiteralContext,0);
+};
+
+WeightFunctionCallContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+WeightFunctionCallContext.prototype.AS = function() {
+ return this.getToken(SqlParser.AS, 0);
+};
+
+WeightFunctionCallContext.prototype.decimalLiteral = function() {
+ return this.getTypedRuleContext(DecimalLiteralContext,0);
+};
+
+WeightFunctionCallContext.prototype.levelsInWeightString = function() {
+ return this.getTypedRuleContext(LevelsInWeightStringContext,0);
+};
+
+WeightFunctionCallContext.prototype.CHAR = function() {
+ return this.getToken(SqlParser.CHAR, 0);
+};
+
+WeightFunctionCallContext.prototype.BINARY = function() {
+ return this.getToken(SqlParser.BINARY, 0);
+};
+WeightFunctionCallContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterWeightFunctionCall(this);
+ }
+};
+
+WeightFunctionCallContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitWeightFunctionCall(this);
+ }
+};
+
+WeightFunctionCallContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitWeightFunctionCall(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function GetFormatFunctionCallContext(parser, ctx) {
+ SpecificFunctionContext.call(this, parser);
+ this.datetimeFormat = null; // Token;
+ SpecificFunctionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+GetFormatFunctionCallContext.prototype = Object.create(SpecificFunctionContext.prototype);
+GetFormatFunctionCallContext.prototype.constructor = GetFormatFunctionCallContext;
+
+SqlParser.GetFormatFunctionCallContext = GetFormatFunctionCallContext;
+
+GetFormatFunctionCallContext.prototype.GET_FORMAT = function() {
+ return this.getToken(SqlParser.GET_FORMAT, 0);
+};
+
+GetFormatFunctionCallContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+GetFormatFunctionCallContext.prototype.COMMA = function() {
+ return this.getToken(SqlParser.COMMA, 0);
+};
+
+GetFormatFunctionCallContext.prototype.stringLiteral = function() {
+ return this.getTypedRuleContext(StringLiteralContext,0);
+};
+
+GetFormatFunctionCallContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+GetFormatFunctionCallContext.prototype.DATE = function() {
+ return this.getToken(SqlParser.DATE, 0);
+};
+
+GetFormatFunctionCallContext.prototype.TIME = function() {
+ return this.getToken(SqlParser.TIME, 0);
+};
+
+GetFormatFunctionCallContext.prototype.DATETIME = function() {
+ return this.getToken(SqlParser.DATETIME, 0);
+};
+GetFormatFunctionCallContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterGetFormatFunctionCall(this);
+ }
+};
+
+GetFormatFunctionCallContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitGetFormatFunctionCall(this);
+ }
+};
+
+GetFormatFunctionCallContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitGetFormatFunctionCall(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function CaseFunctionCallContext(parser, ctx) {
+ SpecificFunctionContext.call(this, parser);
+ this.elseArg = null; // FunctionArgContext;
+ SpecificFunctionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+CaseFunctionCallContext.prototype = Object.create(SpecificFunctionContext.prototype);
+CaseFunctionCallContext.prototype.constructor = CaseFunctionCallContext;
+
+SqlParser.CaseFunctionCallContext = CaseFunctionCallContext;
+
+CaseFunctionCallContext.prototype.CASE = function() {
+ return this.getToken(SqlParser.CASE, 0);
+};
+
+CaseFunctionCallContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+CaseFunctionCallContext.prototype.END = function() {
+ return this.getToken(SqlParser.END, 0);
+};
+
+CaseFunctionCallContext.prototype.caseFuncAlternative = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(CaseFuncAlternativeContext);
+ } else {
+ return this.getTypedRuleContext(CaseFuncAlternativeContext,i);
+ }
+};
+
+CaseFunctionCallContext.prototype.ELSE = function() {
+ return this.getToken(SqlParser.ELSE, 0);
+};
+
+CaseFunctionCallContext.prototype.functionArg = function() {
+ return this.getTypedRuleContext(FunctionArgContext,0);
+};
+CaseFunctionCallContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterCaseFunctionCall(this);
+ }
+};
+
+CaseFunctionCallContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitCaseFunctionCall(this);
+ }
+};
+
+CaseFunctionCallContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitCaseFunctionCall(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function ExtractFunctionCallContext(parser, ctx) {
+ SpecificFunctionContext.call(this, parser);
+ this.sourceString = null; // StringLiteralContext;
+ this.sourceExpression = null; // ExpressionContext;
+ SpecificFunctionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+ExtractFunctionCallContext.prototype = Object.create(SpecificFunctionContext.prototype);
+ExtractFunctionCallContext.prototype.constructor = ExtractFunctionCallContext;
+
+SqlParser.ExtractFunctionCallContext = ExtractFunctionCallContext;
+
+ExtractFunctionCallContext.prototype.EXTRACT = function() {
+ return this.getToken(SqlParser.EXTRACT, 0);
+};
+
+ExtractFunctionCallContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+ExtractFunctionCallContext.prototype.intervalType = function() {
+ return this.getTypedRuleContext(IntervalTypeContext,0);
+};
+
+ExtractFunctionCallContext.prototype.FROM = function() {
+ return this.getToken(SqlParser.FROM, 0);
+};
+
+ExtractFunctionCallContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+ExtractFunctionCallContext.prototype.stringLiteral = function() {
+ return this.getTypedRuleContext(StringLiteralContext,0);
+};
+
+ExtractFunctionCallContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+ExtractFunctionCallContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterExtractFunctionCall(this);
+ }
+};
+
+ExtractFunctionCallContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitExtractFunctionCall(this);
+ }
+};
+
+ExtractFunctionCallContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitExtractFunctionCall(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function DataTypeFunctionCallContext(parser, ctx) {
+ SpecificFunctionContext.call(this, parser);
+ this.separator = null; // Token;
+ SpecificFunctionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+DataTypeFunctionCallContext.prototype = Object.create(SpecificFunctionContext.prototype);
+DataTypeFunctionCallContext.prototype.constructor = DataTypeFunctionCallContext;
+
+SqlParser.DataTypeFunctionCallContext = DataTypeFunctionCallContext;
+
+DataTypeFunctionCallContext.prototype.CONVERT = function() {
+ return this.getToken(SqlParser.CONVERT, 0);
+};
+
+DataTypeFunctionCallContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+DataTypeFunctionCallContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+DataTypeFunctionCallContext.prototype.convertedDataType = function() {
+ return this.getTypedRuleContext(ConvertedDataTypeContext,0);
+};
+
+DataTypeFunctionCallContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+DataTypeFunctionCallContext.prototype.COMMA = function() {
+ return this.getToken(SqlParser.COMMA, 0);
+};
+
+DataTypeFunctionCallContext.prototype.USING = function() {
+ return this.getToken(SqlParser.USING, 0);
+};
+
+DataTypeFunctionCallContext.prototype.charsetName = function() {
+ return this.getTypedRuleContext(CharsetNameContext,0);
+};
+
+DataTypeFunctionCallContext.prototype.CAST = function() {
+ return this.getToken(SqlParser.CAST, 0);
+};
+
+DataTypeFunctionCallContext.prototype.AS = function() {
+ return this.getToken(SqlParser.AS, 0);
+};
+DataTypeFunctionCallContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterDataTypeFunctionCall(this);
+ }
+};
+
+DataTypeFunctionCallContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitDataTypeFunctionCall(this);
+ }
+};
+
+DataTypeFunctionCallContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitDataTypeFunctionCall(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function ValuesFunctionCallContext(parser, ctx) {
+ SpecificFunctionContext.call(this, parser);
+ SpecificFunctionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+ValuesFunctionCallContext.prototype = Object.create(SpecificFunctionContext.prototype);
+ValuesFunctionCallContext.prototype.constructor = ValuesFunctionCallContext;
+
+SqlParser.ValuesFunctionCallContext = ValuesFunctionCallContext;
+
+ValuesFunctionCallContext.prototype.VALUES = function() {
+ return this.getToken(SqlParser.VALUES, 0);
+};
+
+ValuesFunctionCallContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+ValuesFunctionCallContext.prototype.fullColumnName = function() {
+ return this.getTypedRuleContext(FullColumnNameContext,0);
+};
+
+ValuesFunctionCallContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+ValuesFunctionCallContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterValuesFunctionCall(this);
+ }
+};
+
+ValuesFunctionCallContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitValuesFunctionCall(this);
+ }
+};
+
+ValuesFunctionCallContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitValuesFunctionCall(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function SubstrFunctionCallContext(parser, ctx) {
+ SpecificFunctionContext.call(this, parser);
+ this.sourceString = null; // StringLiteralContext;
+ this.sourceExpression = null; // ExpressionContext;
+ this.fromDecimal = null; // DecimalLiteralContext;
+ this.fromExpression = null; // ExpressionContext;
+ this.forDecimal = null; // DecimalLiteralContext;
+ this.forExpression = null; // ExpressionContext;
+ SpecificFunctionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+SubstrFunctionCallContext.prototype = Object.create(SpecificFunctionContext.prototype);
+SubstrFunctionCallContext.prototype.constructor = SubstrFunctionCallContext;
+
+SqlParser.SubstrFunctionCallContext = SubstrFunctionCallContext;
+
+SubstrFunctionCallContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+SubstrFunctionCallContext.prototype.FROM = function() {
+ return this.getToken(SqlParser.FROM, 0);
+};
+
+SubstrFunctionCallContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+SubstrFunctionCallContext.prototype.SUBSTR = function() {
+ return this.getToken(SqlParser.SUBSTR, 0);
+};
+
+SubstrFunctionCallContext.prototype.SUBSTRING = function() {
+ return this.getToken(SqlParser.SUBSTRING, 0);
+};
+
+SubstrFunctionCallContext.prototype.stringLiteral = function() {
+ return this.getTypedRuleContext(StringLiteralContext,0);
+};
+
+SubstrFunctionCallContext.prototype.expression = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ExpressionContext);
+ } else {
+ return this.getTypedRuleContext(ExpressionContext,i);
+ }
+};
+
+SubstrFunctionCallContext.prototype.decimalLiteral = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(DecimalLiteralContext);
+ } else {
+ return this.getTypedRuleContext(DecimalLiteralContext,i);
+ }
+};
+
+SubstrFunctionCallContext.prototype.FOR = function() {
+ return this.getToken(SqlParser.FOR, 0);
+};
+SubstrFunctionCallContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSubstrFunctionCall(this);
+ }
+};
+
+SubstrFunctionCallContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSubstrFunctionCall(this);
+ }
+};
+
+SubstrFunctionCallContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSubstrFunctionCall(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+SqlParser.SpecificFunctionContext = SpecificFunctionContext;
+
+SqlParser.prototype.specificFunction = function() {
+
+ var localctx = new SpecificFunctionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 584, SqlParser.RULE_specificFunction);
+ var _la = 0; // Token type
+ try {
+ this.state = 6038;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,890,this._ctx);
+ switch(la_) {
+ case 1:
+ localctx = new SimpleFunctionCallContext(this, localctx);
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5881;
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.CURRENT_USER || ((((_la - 251)) & ~0x1f) == 0 && ((1 << (_la - 251)) & ((1 << (SqlParser.CURRENT_DATE - 251)) | (1 << (SqlParser.CURRENT_TIME - 251)) | (1 << (SqlParser.CURRENT_TIMESTAMP - 251)) | (1 << (SqlParser.LOCALTIME - 251)))) !== 0))) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+
+ case 2:
+ localctx = new DataTypeFunctionCallContext(this, localctx);
+ this.enterOuterAlt(localctx, 2);
+ this.state = 5882;
+ this.match(SqlParser.CONVERT);
+ this.state = 5883;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 5884;
+ this.expression(0);
+ this.state = 5885;
+ localctx.separator = this.match(SqlParser.COMMA);
+ this.state = 5886;
+ this.convertedDataType();
+ this.state = 5887;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+
+ case 3:
+ localctx = new DataTypeFunctionCallContext(this, localctx);
+ this.enterOuterAlt(localctx, 3);
+ this.state = 5889;
+ this.match(SqlParser.CONVERT);
+ this.state = 5890;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 5891;
+ this.expression(0);
+ this.state = 5892;
+ this.match(SqlParser.USING);
+ this.state = 5893;
+ this.charsetName();
+ this.state = 5894;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+
+ case 4:
+ localctx = new DataTypeFunctionCallContext(this, localctx);
+ this.enterOuterAlt(localctx, 4);
+ this.state = 5896;
+ this.match(SqlParser.CAST);
+ this.state = 5897;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 5898;
+ this.expression(0);
+ this.state = 5899;
+ this.match(SqlParser.AS);
+ this.state = 5900;
+ this.convertedDataType();
+ this.state = 5901;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+
+ case 5:
+ localctx = new ValuesFunctionCallContext(this, localctx);
+ this.enterOuterAlt(localctx, 5);
+ this.state = 5903;
+ this.match(SqlParser.VALUES);
+ this.state = 5904;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 5905;
+ this.fullColumnName();
+ this.state = 5906;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+
+ case 6:
+ localctx = new CaseFunctionCallContext(this, localctx);
+ this.enterOuterAlt(localctx, 6);
+ this.state = 5908;
+ this.match(SqlParser.CASE);
+ this.state = 5909;
+ this.expression(0);
+ this.state = 5911;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 5910;
+ this.caseFuncAlternative();
+ this.state = 5913;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(_la===SqlParser.WHEN);
+ this.state = 5917;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.ELSE) {
+ this.state = 5915;
+ this.match(SqlParser.ELSE);
+ this.state = 5916;
+ localctx.elseArg = this.functionArg();
+ }
+
+ this.state = 5919;
+ this.match(SqlParser.END);
+ break;
+
+ case 7:
+ localctx = new CaseFunctionCallContext(this, localctx);
+ this.enterOuterAlt(localctx, 7);
+ this.state = 5921;
+ this.match(SqlParser.CASE);
+ this.state = 5923;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 5922;
+ this.caseFuncAlternative();
+ this.state = 5925;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(_la===SqlParser.WHEN);
+ this.state = 5929;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.ELSE) {
+ this.state = 5927;
+ this.match(SqlParser.ELSE);
+ this.state = 5928;
+ localctx.elseArg = this.functionArg();
+ }
+
+ this.state = 5931;
+ this.match(SqlParser.END);
+ break;
+
+ case 8:
+ localctx = new CharFunctionCallContext(this, localctx);
+ this.enterOuterAlt(localctx, 8);
+ this.state = 5933;
+ this.match(SqlParser.CHAR);
+ this.state = 5934;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 5935;
+ this.functionArgs();
+ this.state = 5938;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.USING) {
+ this.state = 5936;
+ this.match(SqlParser.USING);
+ this.state = 5937;
+ this.charsetName();
+ }
+
+ this.state = 5940;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+
+ case 9:
+ localctx = new PositionFunctionCallContext(this, localctx);
+ this.enterOuterAlt(localctx, 9);
+ this.state = 5942;
+ this.match(SqlParser.POSITION);
+ this.state = 5943;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 5946;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,876,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 5944;
+ localctx.positionString = this.stringLiteral();
+ break;
+
+ case 2:
+ this.state = 5945;
+ localctx.positionExpression = this.expression(0);
+ break;
+
+ }
+ this.state = 5948;
+ this.match(SqlParser.IN);
+ this.state = 5951;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,877,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 5949;
+ localctx.inString = this.stringLiteral();
+ break;
+
+ case 2:
+ this.state = 5950;
+ localctx.inExpression = this.expression(0);
+ break;
+
+ }
+ this.state = 5953;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+
+ case 10:
+ localctx = new SubstrFunctionCallContext(this, localctx);
+ this.enterOuterAlt(localctx, 10);
+ this.state = 5955;
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.SUBSTR || _la===SqlParser.SUBSTRING)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 5956;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 5959;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,878,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 5957;
+ localctx.sourceString = this.stringLiteral();
+ break;
+
+ case 2:
+ this.state = 5958;
+ localctx.sourceExpression = this.expression(0);
+ break;
+
+ }
+ this.state = 5961;
+ this.match(SqlParser.FROM);
+ this.state = 5964;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,879,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 5962;
+ localctx.fromDecimal = this.decimalLiteral();
+ break;
+
+ case 2:
+ this.state = 5963;
+ localctx.fromExpression = this.expression(0);
+ break;
+
+ }
+ this.state = 5971;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.FOR) {
+ this.state = 5966;
+ this.match(SqlParser.FOR);
+ this.state = 5969;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,880,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 5967;
+ localctx.forDecimal = this.decimalLiteral();
+ break;
+
+ case 2:
+ this.state = 5968;
+ localctx.forExpression = this.expression(0);
+ break;
+
+ }
+ }
+
+ this.state = 5973;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+
+ case 11:
+ localctx = new TrimFunctionCallContext(this, localctx);
+ this.enterOuterAlt(localctx, 11);
+ this.state = 5975;
+ this.match(SqlParser.TRIM);
+ this.state = 5976;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 5977;
+ localctx.positioinForm = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.BOTH || _la===SqlParser.LEADING || _la===SqlParser.TRAILING)) {
+ localctx.positioinForm = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 5980;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,882,this._ctx);
+ if(la_===1) {
+ this.state = 5978;
+ localctx.sourceString = this.stringLiteral();
+
+ } else if(la_===2) {
+ this.state = 5979;
+ localctx.sourceExpression = this.expression(0);
+
+ }
+ this.state = 5982;
+ this.match(SqlParser.FROM);
+ this.state = 5985;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,883,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 5983;
+ localctx.fromString = this.stringLiteral();
+ break;
+
+ case 2:
+ this.state = 5984;
+ localctx.fromExpression = this.expression(0);
+ break;
+
+ }
+ this.state = 5987;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+
+ case 12:
+ localctx = new TrimFunctionCallContext(this, localctx);
+ this.enterOuterAlt(localctx, 12);
+ this.state = 5989;
+ this.match(SqlParser.TRIM);
+ this.state = 5990;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 5993;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,884,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 5991;
+ localctx.sourceString = this.stringLiteral();
+ break;
+
+ case 2:
+ this.state = 5992;
+ localctx.sourceExpression = this.expression(0);
+ break;
+
+ }
+ this.state = 5995;
+ this.match(SqlParser.FROM);
+ this.state = 5998;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,885,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 5996;
+ localctx.fromString = this.stringLiteral();
+ break;
+
+ case 2:
+ this.state = 5997;
+ localctx.fromExpression = this.expression(0);
+ break;
+
+ }
+ this.state = 6000;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+
+ case 13:
+ localctx = new WeightFunctionCallContext(this, localctx);
+ this.enterOuterAlt(localctx, 13);
+ this.state = 6002;
+ this.match(SqlParser.WEIGHT_STRING);
+ this.state = 6003;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 6006;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,886,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 6004;
+ this.stringLiteral();
+ break;
+
+ case 2:
+ this.state = 6005;
+ this.expression(0);
+ break;
+
+ }
+ this.state = 6014;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.AS) {
+ this.state = 6008;
+ this.match(SqlParser.AS);
+ this.state = 6009;
+ localctx.stringFormat = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.CHAR || _la===SqlParser.BINARY)) {
+ localctx.stringFormat = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 6010;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 6011;
+ this.decimalLiteral();
+ this.state = 6012;
+ this.match(SqlParser.RR_BRACKET);
+ }
+
+ this.state = 6017;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.LEVEL) {
+ this.state = 6016;
+ this.levelsInWeightString();
+ }
+
+ this.state = 6019;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+
+ case 14:
+ localctx = new ExtractFunctionCallContext(this, localctx);
+ this.enterOuterAlt(localctx, 14);
+ this.state = 6021;
+ this.match(SqlParser.EXTRACT);
+ this.state = 6022;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 6023;
+ this.intervalType();
+ this.state = 6024;
+ this.match(SqlParser.FROM);
+ this.state = 6027;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,889,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 6025;
+ localctx.sourceString = this.stringLiteral();
+ break;
+
+ case 2:
+ this.state = 6026;
+ localctx.sourceExpression = this.expression(0);
+ break;
+
+ }
+ this.state = 6029;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+
+ case 15:
+ localctx = new GetFormatFunctionCallContext(this, localctx);
+ this.enterOuterAlt(localctx, 15);
+ this.state = 6031;
+ this.match(SqlParser.GET_FORMAT);
+ this.state = 6032;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 6033;
+ localctx.datetimeFormat = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(((((_la - 199)) & ~0x1f) == 0 && ((1 << (_la - 199)) & ((1 << (SqlParser.DATE - 199)) | (1 << (SqlParser.TIME - 199)) | (1 << (SqlParser.DATETIME - 199)))) !== 0))) {
+ localctx.datetimeFormat = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 6034;
+ this.match(SqlParser.COMMA);
+ this.state = 6035;
+ this.stringLiteral();
+ this.state = 6036;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function CaseFuncAlternativeContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_caseFuncAlternative;
+ this.condition = null; // FunctionArgContext
+ this.consequent = null; // FunctionArgContext
+ return this;
+}
+
+CaseFuncAlternativeContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+CaseFuncAlternativeContext.prototype.constructor = CaseFuncAlternativeContext;
+
+CaseFuncAlternativeContext.prototype.WHEN = function() {
+ return this.getToken(SqlParser.WHEN, 0);
+};
+
+CaseFuncAlternativeContext.prototype.THEN = function() {
+ return this.getToken(SqlParser.THEN, 0);
+};
+
+CaseFuncAlternativeContext.prototype.functionArg = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(FunctionArgContext);
+ } else {
+ return this.getTypedRuleContext(FunctionArgContext,i);
+ }
+};
+
+CaseFuncAlternativeContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterCaseFuncAlternative(this);
+ }
+};
+
+CaseFuncAlternativeContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitCaseFuncAlternative(this);
+ }
+};
+
+CaseFuncAlternativeContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitCaseFuncAlternative(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.CaseFuncAlternativeContext = CaseFuncAlternativeContext;
+
+SqlParser.prototype.caseFuncAlternative = function() {
+
+ var localctx = new CaseFuncAlternativeContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 586, SqlParser.RULE_caseFuncAlternative);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6040;
+ this.match(SqlParser.WHEN);
+ this.state = 6041;
+ localctx.condition = this.functionArg();
+ this.state = 6042;
+ this.match(SqlParser.THEN);
+ this.state = 6043;
+ localctx.consequent = this.functionArg();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function LevelsInWeightStringContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_levelsInWeightString;
+ return this;
+}
+
+LevelsInWeightStringContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+LevelsInWeightStringContext.prototype.constructor = LevelsInWeightStringContext;
+
+
+
+LevelsInWeightStringContext.prototype.copyFrom = function(ctx) {
+ antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx);
+};
+
+
+function LevelWeightRangeContext(parser, ctx) {
+ LevelsInWeightStringContext.call(this, parser);
+ this.firstLevel = null; // DecimalLiteralContext;
+ this.lastLevel = null; // DecimalLiteralContext;
+ LevelsInWeightStringContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+LevelWeightRangeContext.prototype = Object.create(LevelsInWeightStringContext.prototype);
+LevelWeightRangeContext.prototype.constructor = LevelWeightRangeContext;
+
+SqlParser.LevelWeightRangeContext = LevelWeightRangeContext;
+
+LevelWeightRangeContext.prototype.LEVEL = function() {
+ return this.getToken(SqlParser.LEVEL, 0);
+};
+
+LevelWeightRangeContext.prototype.MINUS = function() {
+ return this.getToken(SqlParser.MINUS, 0);
+};
+
+LevelWeightRangeContext.prototype.decimalLiteral = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(DecimalLiteralContext);
+ } else {
+ return this.getTypedRuleContext(DecimalLiteralContext,i);
+ }
+};
+LevelWeightRangeContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterLevelWeightRange(this);
+ }
+};
+
+LevelWeightRangeContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitLevelWeightRange(this);
+ }
+};
+
+LevelWeightRangeContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitLevelWeightRange(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function LevelWeightListContext(parser, ctx) {
+ LevelsInWeightStringContext.call(this, parser);
+ LevelsInWeightStringContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+LevelWeightListContext.prototype = Object.create(LevelsInWeightStringContext.prototype);
+LevelWeightListContext.prototype.constructor = LevelWeightListContext;
+
+SqlParser.LevelWeightListContext = LevelWeightListContext;
+
+LevelWeightListContext.prototype.LEVEL = function() {
+ return this.getToken(SqlParser.LEVEL, 0);
+};
+
+LevelWeightListContext.prototype.levelInWeightListElement = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(LevelInWeightListElementContext);
+ } else {
+ return this.getTypedRuleContext(LevelInWeightListElementContext,i);
+ }
+};
+
+LevelWeightListContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+LevelWeightListContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterLevelWeightList(this);
+ }
+};
+
+LevelWeightListContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitLevelWeightList(this);
+ }
+};
+
+LevelWeightListContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitLevelWeightList(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+SqlParser.LevelsInWeightStringContext = LevelsInWeightStringContext;
+
+SqlParser.prototype.levelsInWeightString = function() {
+
+ var localctx = new LevelsInWeightStringContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 588, SqlParser.RULE_levelsInWeightString);
+ var _la = 0; // Token type
+ try {
+ this.state = 6059;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,892,this._ctx);
+ switch(la_) {
+ case 1:
+ localctx = new LevelWeightListContext(this, localctx);
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6045;
+ this.match(SqlParser.LEVEL);
+ this.state = 6046;
+ this.levelInWeightListElement();
+ this.state = 6051;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 6047;
+ this.match(SqlParser.COMMA);
+ this.state = 6048;
+ this.levelInWeightListElement();
+ this.state = 6053;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+
+ case 2:
+ localctx = new LevelWeightRangeContext(this, localctx);
+ this.enterOuterAlt(localctx, 2);
+ this.state = 6054;
+ this.match(SqlParser.LEVEL);
+ this.state = 6055;
+ localctx.firstLevel = this.decimalLiteral();
+ this.state = 6056;
+ this.match(SqlParser.MINUS);
+ this.state = 6057;
+ localctx.lastLevel = this.decimalLiteral();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function LevelInWeightListElementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_levelInWeightListElement;
+ this.orderType = null; // Token
+ return this;
+}
+
+LevelInWeightListElementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+LevelInWeightListElementContext.prototype.constructor = LevelInWeightListElementContext;
+
+LevelInWeightListElementContext.prototype.decimalLiteral = function() {
+ return this.getTypedRuleContext(DecimalLiteralContext,0);
+};
+
+LevelInWeightListElementContext.prototype.ASC = function() {
+ return this.getToken(SqlParser.ASC, 0);
+};
+
+LevelInWeightListElementContext.prototype.DESC = function() {
+ return this.getToken(SqlParser.DESC, 0);
+};
+
+LevelInWeightListElementContext.prototype.REVERSE = function() {
+ return this.getToken(SqlParser.REVERSE, 0);
+};
+
+LevelInWeightListElementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterLevelInWeightListElement(this);
+ }
+};
+
+LevelInWeightListElementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitLevelInWeightListElement(this);
+ }
+};
+
+LevelInWeightListElementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitLevelInWeightListElement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.LevelInWeightListElementContext = LevelInWeightListElementContext;
+
+SqlParser.prototype.levelInWeightListElement = function() {
+
+ var localctx = new LevelInWeightListElementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 590, SqlParser.RULE_levelInWeightListElement);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6061;
+ this.decimalLiteral();
+ this.state = 6063;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.ASC || _la===SqlParser.DESC || _la===SqlParser.REVERSE) {
+ this.state = 6062;
+ localctx.orderType = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.ASC || _la===SqlParser.DESC || _la===SqlParser.REVERSE)) {
+ localctx.orderType = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function AggregateWindowedFunctionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_aggregateWindowedFunction;
+ this.aggregator = null; // Token
+ this.starArg = null; // Token
+ this.separator = null; // Token
+ return this;
+}
+
+AggregateWindowedFunctionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+AggregateWindowedFunctionContext.prototype.constructor = AggregateWindowedFunctionContext;
+
+AggregateWindowedFunctionContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+AggregateWindowedFunctionContext.prototype.functionArg = function() {
+ return this.getTypedRuleContext(FunctionArgContext,0);
+};
+
+AggregateWindowedFunctionContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+AggregateWindowedFunctionContext.prototype.AVG = function() {
+ return this.getToken(SqlParser.AVG, 0);
+};
+
+AggregateWindowedFunctionContext.prototype.MAX = function() {
+ return this.getToken(SqlParser.MAX, 0);
+};
+
+AggregateWindowedFunctionContext.prototype.MIN = function() {
+ return this.getToken(SqlParser.MIN, 0);
+};
+
+AggregateWindowedFunctionContext.prototype.SUM = function() {
+ return this.getToken(SqlParser.SUM, 0);
+};
+
+AggregateWindowedFunctionContext.prototype.ALL = function() {
+ return this.getToken(SqlParser.ALL, 0);
+};
+
+AggregateWindowedFunctionContext.prototype.DISTINCT = function() {
+ return this.getToken(SqlParser.DISTINCT, 0);
+};
+
+AggregateWindowedFunctionContext.prototype.COUNT = function() {
+ return this.getToken(SqlParser.COUNT, 0);
+};
+
+AggregateWindowedFunctionContext.prototype.STAR = function() {
+ return this.getToken(SqlParser.STAR, 0);
+};
+
+AggregateWindowedFunctionContext.prototype.functionArgs = function() {
+ return this.getTypedRuleContext(FunctionArgsContext,0);
+};
+
+AggregateWindowedFunctionContext.prototype.BIT_AND = function() {
+ return this.getToken(SqlParser.BIT_AND, 0);
+};
+
+AggregateWindowedFunctionContext.prototype.BIT_OR = function() {
+ return this.getToken(SqlParser.BIT_OR, 0);
+};
+
+AggregateWindowedFunctionContext.prototype.BIT_XOR = function() {
+ return this.getToken(SqlParser.BIT_XOR, 0);
+};
+
+AggregateWindowedFunctionContext.prototype.STD = function() {
+ return this.getToken(SqlParser.STD, 0);
+};
+
+AggregateWindowedFunctionContext.prototype.STDDEV = function() {
+ return this.getToken(SqlParser.STDDEV, 0);
+};
+
+AggregateWindowedFunctionContext.prototype.STDDEV_POP = function() {
+ return this.getToken(SqlParser.STDDEV_POP, 0);
+};
+
+AggregateWindowedFunctionContext.prototype.STDDEV_SAMP = function() {
+ return this.getToken(SqlParser.STDDEV_SAMP, 0);
+};
+
+AggregateWindowedFunctionContext.prototype.VAR_POP = function() {
+ return this.getToken(SqlParser.VAR_POP, 0);
+};
+
+AggregateWindowedFunctionContext.prototype.VAR_SAMP = function() {
+ return this.getToken(SqlParser.VAR_SAMP, 0);
+};
+
+AggregateWindowedFunctionContext.prototype.VARIANCE = function() {
+ return this.getToken(SqlParser.VARIANCE, 0);
+};
+
+AggregateWindowedFunctionContext.prototype.GROUP_CONCAT = function() {
+ return this.getToken(SqlParser.GROUP_CONCAT, 0);
+};
+
+AggregateWindowedFunctionContext.prototype.ORDER = function() {
+ return this.getToken(SqlParser.ORDER, 0);
+};
+
+AggregateWindowedFunctionContext.prototype.BY = function() {
+ return this.getToken(SqlParser.BY, 0);
+};
+
+AggregateWindowedFunctionContext.prototype.orderByExpression = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(OrderByExpressionContext);
+ } else {
+ return this.getTypedRuleContext(OrderByExpressionContext,i);
+ }
+};
+
+AggregateWindowedFunctionContext.prototype.SEPARATOR = function() {
+ return this.getToken(SqlParser.SEPARATOR, 0);
+};
+
+AggregateWindowedFunctionContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+
+AggregateWindowedFunctionContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+AggregateWindowedFunctionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterAggregateWindowedFunction(this);
+ }
+};
+
+AggregateWindowedFunctionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitAggregateWindowedFunction(this);
+ }
+};
+
+AggregateWindowedFunctionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitAggregateWindowedFunction(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.AggregateWindowedFunctionContext = AggregateWindowedFunctionContext;
+
+SqlParser.prototype.aggregateWindowedFunction = function() {
+
+ var localctx = new AggregateWindowedFunctionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 592, SqlParser.RULE_aggregateWindowedFunction);
+ var _la = 0; // Token type
+ try {
+ this.state = 6121;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,902,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6065;
+ _la = this._input.LA(1);
+ if(!(((((_la - 235)) & ~0x1f) == 0 && ((1 << (_la - 235)) & ((1 << (SqlParser.AVG - 235)) | (1 << (SqlParser.MAX - 235)) | (1 << (SqlParser.MIN - 235)) | (1 << (SqlParser.SUM - 235)))) !== 0))) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 6066;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 6068;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.ALL || _la===SqlParser.DISTINCT) {
+ this.state = 6067;
+ localctx.aggregator = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.ALL || _la===SqlParser.DISTINCT)) {
+ localctx.aggregator = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 6070;
+ this.functionArg();
+ this.state = 6071;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 6073;
+ this.match(SqlParser.COUNT);
+ this.state = 6074;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 6080;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.STAR:
+ this.state = 6075;
+ localctx.starArg = this.match(SqlParser.STAR);
+ break;
+ case SqlParser.ALL:
+ case SqlParser.CASE:
+ case SqlParser.CAST:
+ case SqlParser.CONVERT:
+ case SqlParser.CURRENT:
+ case SqlParser.CURRENT_USER:
+ case SqlParser.DATABASE:
+ case SqlParser.DIAGNOSTICS:
+ case SqlParser.EXISTS:
+ case SqlParser.FALSE:
+ case SqlParser.IF:
+ case SqlParser.INSERT:
+ case SqlParser.INTERVAL:
+ case SqlParser.LEFT:
+ case SqlParser.NOT:
+ case SqlParser.NULL_LITERAL:
+ case SqlParser.NUMBER:
+ case SqlParser.REPLACE:
+ case SqlParser.RIGHT:
+ case SqlParser.STACKED:
+ case SqlParser.TRUE:
+ case SqlParser.VALUES:
+ case SqlParser.DATE:
+ case SqlParser.TIME:
+ case SqlParser.TIMESTAMP:
+ case SqlParser.DATETIME:
+ case SqlParser.YEAR:
+ case SqlParser.CHAR:
+ case SqlParser.BINARY:
+ case SqlParser.TEXT:
+ case SqlParser.ENUM:
+ case SqlParser.SERIAL:
+ case SqlParser.JSON_VALID:
+ case SqlParser.JSON_SCHEMA_VALID:
+ case SqlParser.AVG:
+ case SqlParser.BIT_AND:
+ case SqlParser.BIT_OR:
+ case SqlParser.BIT_XOR:
+ case SqlParser.COUNT:
+ case SqlParser.GROUP_CONCAT:
+ case SqlParser.MAX:
+ case SqlParser.MIN:
+ case SqlParser.STD:
+ case SqlParser.STDDEV:
+ case SqlParser.STDDEV_POP:
+ case SqlParser.STDDEV_SAMP:
+ case SqlParser.SUM:
+ case SqlParser.VAR_POP:
+ case SqlParser.VAR_SAMP:
+ case SqlParser.VARIANCE:
+ case SqlParser.CURRENT_DATE:
+ case SqlParser.CURRENT_TIME:
+ case SqlParser.CURRENT_TIMESTAMP:
+ case SqlParser.LOCALTIME:
+ case SqlParser.CURDATE:
+ case SqlParser.CURTIME:
+ case SqlParser.DATE_ADD:
+ case SqlParser.DATE_SUB:
+ case SqlParser.EXTRACT:
+ case SqlParser.LOCALTIMESTAMP:
+ case SqlParser.NOW:
+ case SqlParser.POSITION:
+ case SqlParser.SUBSTR:
+ case SqlParser.SUBSTRING:
+ case SqlParser.SYSDATE:
+ case SqlParser.TRIM:
+ case SqlParser.UTC_DATE:
+ case SqlParser.UTC_TIME:
+ case SqlParser.UTC_TIMESTAMP:
+ case SqlParser.ACCOUNT:
+ case SqlParser.ACTION:
+ case SqlParser.AFTER:
+ case SqlParser.AGGREGATE:
+ case SqlParser.ALGORITHM:
+ case SqlParser.ANY:
+ case SqlParser.AT:
+ case SqlParser.AUTHORS:
+ case SqlParser.AUTOCOMMIT:
+ case SqlParser.AUTOEXTEND_SIZE:
+ case SqlParser.AUTO_INCREMENT:
+ case SqlParser.AVG_ROW_LENGTH:
+ case SqlParser.BEGIN:
+ case SqlParser.BINLOG:
+ case SqlParser.BIT:
+ case SqlParser.BLOCK:
+ case SqlParser.BOOL:
+ case SqlParser.BOOLEAN:
+ case SqlParser.BTREE:
+ case SqlParser.CACHE:
+ case SqlParser.CASCADED:
+ case SqlParser.CHAIN:
+ case SqlParser.CHANGED:
+ case SqlParser.CHANNEL:
+ case SqlParser.CHECKSUM:
+ case SqlParser.PAGE_CHECKSUM:
+ case SqlParser.CIPHER:
+ case SqlParser.CLASS_ORIGIN:
+ case SqlParser.CLIENT:
+ case SqlParser.CLOSE:
+ case SqlParser.COALESCE:
+ case SqlParser.CODE:
+ case SqlParser.COLUMNS:
+ case SqlParser.COLUMN_FORMAT:
+ case SqlParser.COLUMN_NAME:
+ case SqlParser.COMMENT:
+ case SqlParser.COMMIT:
+ case SqlParser.COMPACT:
+ case SqlParser.COMPLETION:
+ case SqlParser.COMPRESSED:
+ case SqlParser.COMPRESSION:
+ case SqlParser.CONCURRENT:
+ case SqlParser.CONNECTION:
+ case SqlParser.CONSISTENT:
+ case SqlParser.CONSTRAINT_CATALOG:
+ case SqlParser.CONSTRAINT_SCHEMA:
+ case SqlParser.CONSTRAINT_NAME:
+ case SqlParser.CONTAINS:
+ case SqlParser.CONTEXT:
+ case SqlParser.CONTRIBUTORS:
+ case SqlParser.COPY:
+ case SqlParser.CPU:
+ case SqlParser.CURSOR_NAME:
+ case SqlParser.DATA:
+ case SqlParser.DATAFILE:
+ case SqlParser.DEALLOCATE:
+ case SqlParser.DEFAULT_AUTH:
+ case SqlParser.DEFINER:
+ case SqlParser.DELAY_KEY_WRITE:
+ case SqlParser.DES_KEY_FILE:
+ case SqlParser.DIRECTORY:
+ case SqlParser.DISABLE:
+ case SqlParser.DISCARD:
+ case SqlParser.DISK:
+ case SqlParser.DO:
+ case SqlParser.DUMPFILE:
+ case SqlParser.DUPLICATE:
+ case SqlParser.DYNAMIC:
+ case SqlParser.ENABLE:
+ case SqlParser.ENCRYPTION:
+ case SqlParser.END:
+ case SqlParser.ENDS:
+ case SqlParser.ENGINE:
+ case SqlParser.ENGINES:
+ case SqlParser.ERROR:
+ case SqlParser.ERRORS:
+ case SqlParser.ESCAPE:
+ case SqlParser.EVEN:
+ case SqlParser.EVENT:
+ case SqlParser.EVENTS:
+ case SqlParser.EVERY:
+ case SqlParser.EXCHANGE:
+ case SqlParser.EXCLUSIVE:
+ case SqlParser.EXPIRE:
+ case SqlParser.EXPORT:
+ case SqlParser.EXTENDED:
+ case SqlParser.EXTENT_SIZE:
+ case SqlParser.FAST:
+ case SqlParser.FAULTS:
+ case SqlParser.FIELDS:
+ case SqlParser.FILE_BLOCK_SIZE:
+ case SqlParser.FILTER:
+ case SqlParser.FIRST:
+ case SqlParser.FIXED:
+ case SqlParser.FLUSH:
+ case SqlParser.FOLLOWS:
+ case SqlParser.FOUND:
+ case SqlParser.FULL:
+ case SqlParser.FUNCTION:
+ case SqlParser.GENERAL:
+ case SqlParser.GLOBAL:
+ case SqlParser.GRANTS:
+ case SqlParser.GROUP_REPLICATION:
+ case SqlParser.HANDLER:
+ case SqlParser.HASH:
+ case SqlParser.HELP:
+ case SqlParser.HOST:
+ case SqlParser.HOSTS:
+ case SqlParser.IDENTIFIED:
+ case SqlParser.IGNORE_SERVER_IDS:
+ case SqlParser.IMPORT:
+ case SqlParser.INDEXES:
+ case SqlParser.INITIAL_SIZE:
+ case SqlParser.INPLACE:
+ case SqlParser.INSERT_METHOD:
+ case SqlParser.INSTALL:
+ case SqlParser.INSTANCE:
+ case SqlParser.INVISIBLE:
+ case SqlParser.INVOKER:
+ case SqlParser.IO:
+ case SqlParser.IO_THREAD:
+ case SqlParser.IPC:
+ case SqlParser.ISOLATION:
+ case SqlParser.ISSUER:
+ case SqlParser.JSON:
+ case SqlParser.KEY_BLOCK_SIZE:
+ case SqlParser.LANGUAGE:
+ case SqlParser.LAST:
+ case SqlParser.LEAVES:
+ case SqlParser.LESS:
+ case SqlParser.LEVEL:
+ case SqlParser.LIST:
+ case SqlParser.LOCAL:
+ case SqlParser.LOGFILE:
+ case SqlParser.LOGS:
+ case SqlParser.MASTER:
+ case SqlParser.MASTER_AUTO_POSITION:
+ case SqlParser.MASTER_CONNECT_RETRY:
+ case SqlParser.MASTER_DELAY:
+ case SqlParser.MASTER_HEARTBEAT_PERIOD:
+ case SqlParser.MASTER_HOST:
+ case SqlParser.MASTER_LOG_FILE:
+ case SqlParser.MASTER_LOG_POS:
+ case SqlParser.MASTER_PASSWORD:
+ case SqlParser.MASTER_PORT:
+ case SqlParser.MASTER_RETRY_COUNT:
+ case SqlParser.MASTER_SSL:
+ case SqlParser.MASTER_SSL_CA:
+ case SqlParser.MASTER_SSL_CAPATH:
+ case SqlParser.MASTER_SSL_CERT:
+ case SqlParser.MASTER_SSL_CIPHER:
+ case SqlParser.MASTER_SSL_CRL:
+ case SqlParser.MASTER_SSL_CRLPATH:
+ case SqlParser.MASTER_SSL_KEY:
+ case SqlParser.MASTER_TLS_VERSION:
+ case SqlParser.MASTER_USER:
+ case SqlParser.MAX_CONNECTIONS_PER_HOUR:
+ case SqlParser.MAX_QUERIES_PER_HOUR:
+ case SqlParser.MAX_ROWS:
+ case SqlParser.MAX_SIZE:
+ case SqlParser.MAX_UPDATES_PER_HOUR:
+ case SqlParser.MAX_USER_CONNECTIONS:
+ case SqlParser.MEDIUM:
+ case SqlParser.MERGE:
+ case SqlParser.MESSAGE_TEXT:
+ case SqlParser.MID:
+ case SqlParser.MIGRATE:
+ case SqlParser.MIN_ROWS:
+ case SqlParser.MODE:
+ case SqlParser.MODIFY:
+ case SqlParser.MUTEX:
+ case SqlParser.MYSQL:
+ case SqlParser.MYSQL_ERRNO:
+ case SqlParser.NAME:
+ case SqlParser.NAMES:
+ case SqlParser.NCHAR:
+ case SqlParser.NEVER:
+ case SqlParser.NEXT:
+ case SqlParser.NO:
+ case SqlParser.NODEGROUP:
+ case SqlParser.NONE:
+ case SqlParser.OFFLINE:
+ case SqlParser.OFFSET:
+ case SqlParser.OJ:
+ case SqlParser.OLD_PASSWORD:
+ case SqlParser.ONE:
+ case SqlParser.ONLINE:
+ case SqlParser.ONLY:
+ case SqlParser.OPEN:
+ case SqlParser.OPTIMIZER_COSTS:
+ case SqlParser.OPTIONS:
+ case SqlParser.OWNER:
+ case SqlParser.PACK_KEYS:
+ case SqlParser.PAGE:
+ case SqlParser.PARSER:
+ case SqlParser.PARTIAL:
+ case SqlParser.PARTITIONING:
+ case SqlParser.PARTITIONS:
+ case SqlParser.PASSWORD:
+ case SqlParser.PHASE:
+ case SqlParser.PLUGIN:
+ case SqlParser.PLUGIN_DIR:
+ case SqlParser.PLUGINS:
+ case SqlParser.PORT:
+ case SqlParser.PRECEDES:
+ case SqlParser.PREPARE:
+ case SqlParser.PRESERVE:
+ case SqlParser.PREV:
+ case SqlParser.PROCESSLIST:
+ case SqlParser.PROFILE:
+ case SqlParser.PROFILES:
+ case SqlParser.PROXY:
+ case SqlParser.QUERY:
+ case SqlParser.QUICK:
+ case SqlParser.REBUILD:
+ case SqlParser.RECOVER:
+ case SqlParser.REDO_BUFFER_SIZE:
+ case SqlParser.REDUNDANT:
+ case SqlParser.RELAY:
+ case SqlParser.RELAY_LOG_FILE:
+ case SqlParser.RELAY_LOG_POS:
+ case SqlParser.RELAYLOG:
+ case SqlParser.REMOVE:
+ case SqlParser.REORGANIZE:
+ case SqlParser.REPAIR:
+ case SqlParser.REPLICATE_DO_DB:
+ case SqlParser.REPLICATE_DO_TABLE:
+ case SqlParser.REPLICATE_IGNORE_DB:
+ case SqlParser.REPLICATE_IGNORE_TABLE:
+ case SqlParser.REPLICATE_REWRITE_DB:
+ case SqlParser.REPLICATE_WILD_DO_TABLE:
+ case SqlParser.REPLICATE_WILD_IGNORE_TABLE:
+ case SqlParser.REPLICATION:
+ case SqlParser.RESET:
+ case SqlParser.RESUME:
+ case SqlParser.RETURNED_SQLSTATE:
+ case SqlParser.RETURNS:
+ case SqlParser.ROLE:
+ case SqlParser.ROLLBACK:
+ case SqlParser.ROLLUP:
+ case SqlParser.ROTATE:
+ case SqlParser.ROW:
+ case SqlParser.ROWS:
+ case SqlParser.ROW_FORMAT:
+ case SqlParser.SAVEPOINT:
+ case SqlParser.SCHEDULE:
+ case SqlParser.SECURITY:
+ case SqlParser.SERVER:
+ case SqlParser.SESSION:
+ case SqlParser.SHARE:
+ case SqlParser.SHARED:
+ case SqlParser.SIGNED:
+ case SqlParser.SIMPLE:
+ case SqlParser.SLAVE:
+ case SqlParser.SLOW:
+ case SqlParser.SNAPSHOT:
+ case SqlParser.SOCKET:
+ case SqlParser.SOME:
+ case SqlParser.SONAME:
+ case SqlParser.SOUNDS:
+ case SqlParser.SOURCE:
+ case SqlParser.SQL_AFTER_GTIDS:
+ case SqlParser.SQL_AFTER_MTS_GAPS:
+ case SqlParser.SQL_BEFORE_GTIDS:
+ case SqlParser.SQL_BUFFER_RESULT:
+ case SqlParser.SQL_CACHE:
+ case SqlParser.SQL_NO_CACHE:
+ case SqlParser.SQL_THREAD:
+ case SqlParser.START:
+ case SqlParser.STARTS:
+ case SqlParser.STATS_AUTO_RECALC:
+ case SqlParser.STATS_PERSISTENT:
+ case SqlParser.STATS_SAMPLE_PAGES:
+ case SqlParser.STATUS:
+ case SqlParser.STOP:
+ case SqlParser.STORAGE:
+ case SqlParser.STRING:
+ case SqlParser.SUBCLASS_ORIGIN:
+ case SqlParser.SUBJECT:
+ case SqlParser.SUBPARTITION:
+ case SqlParser.SUBPARTITIONS:
+ case SqlParser.SUSPEND:
+ case SqlParser.SWAPS:
+ case SqlParser.SWITCHES:
+ case SqlParser.TABLE_NAME:
+ case SqlParser.TABLESPACE:
+ case SqlParser.TEMPORARY:
+ case SqlParser.TEMPTABLE:
+ case SqlParser.THAN:
+ case SqlParser.TRADITIONAL:
+ case SqlParser.TRANSACTION:
+ case SqlParser.TRANSACTIONAL:
+ case SqlParser.TRIGGERS:
+ case SqlParser.TRUNCATE:
+ case SqlParser.UNDEFINED:
+ case SqlParser.UNDOFILE:
+ case SqlParser.UNDO_BUFFER_SIZE:
+ case SqlParser.UNINSTALL:
+ case SqlParser.UNKNOWN:
+ case SqlParser.UNTIL:
+ case SqlParser.UPGRADE:
+ case SqlParser.USER:
+ case SqlParser.USE_FRM:
+ case SqlParser.USER_RESOURCES:
+ case SqlParser.VALIDATION:
+ case SqlParser.VALUE:
+ case SqlParser.VARIABLES:
+ case SqlParser.VIEW:
+ case SqlParser.VISIBLE:
+ case SqlParser.WAIT:
+ case SqlParser.WARNINGS:
+ case SqlParser.WITHOUT:
+ case SqlParser.WORK:
+ case SqlParser.WRAPPER:
+ case SqlParser.X509:
+ case SqlParser.XA:
+ case SqlParser.XML:
+ case SqlParser.INTERNAL:
+ case SqlParser.QUARTER:
+ case SqlParser.MONTH:
+ case SqlParser.DAY:
+ case SqlParser.HOUR:
+ case SqlParser.MINUTE:
+ case SqlParser.WEEK:
+ case SqlParser.SECOND:
+ case SqlParser.MICROSECOND:
+ case SqlParser.TABLES:
+ case SqlParser.ROUTINE:
+ case SqlParser.EXECUTE:
+ case SqlParser.FILE:
+ case SqlParser.PROCESS:
+ case SqlParser.RELOAD:
+ case SqlParser.SHUTDOWN:
+ case SqlParser.SUPER:
+ case SqlParser.PRIVILEGES:
+ case SqlParser.AUDIT_ADMIN:
+ case SqlParser.BACKUP_ADMIN:
+ case SqlParser.BINLOG_ADMIN:
+ case SqlParser.BINLOG_ENCRYPTION_ADMIN:
+ case SqlParser.CLONE_ADMIN:
+ case SqlParser.CONNECTION_ADMIN:
+ case SqlParser.ENCRYPTION_KEY_ADMIN:
+ case SqlParser.FIREWALL_ADMIN:
+ case SqlParser.FIREWALL_USER:
+ case SqlParser.GROUP_REPLICATION_ADMIN:
+ case SqlParser.INNODB_REDO_LOG_ARCHIVE:
+ case SqlParser.NDB_STORED_USER:
+ case SqlParser.PERSIST_RO_VARIABLES_ADMIN:
+ case SqlParser.REPLICATION_APPLIER:
+ case SqlParser.REPLICATION_SLAVE_ADMIN:
+ case SqlParser.RESOURCE_GROUP_ADMIN:
+ case SqlParser.RESOURCE_GROUP_USER:
+ case SqlParser.ROLE_ADMIN:
+ case SqlParser.SESSION_VARIABLES_ADMIN:
+ case SqlParser.SET_USER_ID:
+ case SqlParser.SHOW_ROUTINE:
+ case SqlParser.SYSTEM_VARIABLES_ADMIN:
+ case SqlParser.TABLE_ENCRYPTION_ADMIN:
+ case SqlParser.VERSION_TOKEN_ADMIN:
+ case SqlParser.XA_RECOVER_ADMIN:
+ case SqlParser.ARMSCII8:
+ case SqlParser.ASCII:
+ case SqlParser.BIG5:
+ case SqlParser.CP1250:
+ case SqlParser.CP1251:
+ case SqlParser.CP1256:
+ case SqlParser.CP1257:
+ case SqlParser.CP850:
+ case SqlParser.CP852:
+ case SqlParser.CP866:
+ case SqlParser.CP932:
+ case SqlParser.DEC8:
+ case SqlParser.EUCJPMS:
+ case SqlParser.EUCKR:
+ case SqlParser.GB2312:
+ case SqlParser.GBK:
+ case SqlParser.GEOSTD8:
+ case SqlParser.GREEK:
+ case SqlParser.HEBREW:
+ case SqlParser.HP8:
+ case SqlParser.KEYBCS2:
+ case SqlParser.KOI8R:
+ case SqlParser.KOI8U:
+ case SqlParser.LATIN1:
+ case SqlParser.LATIN2:
+ case SqlParser.LATIN5:
+ case SqlParser.LATIN7:
+ case SqlParser.MACCE:
+ case SqlParser.MACROMAN:
+ case SqlParser.SJIS:
+ case SqlParser.SWE7:
+ case SqlParser.TIS620:
+ case SqlParser.UCS2:
+ case SqlParser.UJIS:
+ case SqlParser.UTF16:
+ case SqlParser.UTF16LE:
+ case SqlParser.UTF32:
+ case SqlParser.UTF8:
+ case SqlParser.UTF8MB3:
+ case SqlParser.UTF8MB4:
+ case SqlParser.ARCHIVE:
+ case SqlParser.BLACKHOLE:
+ case SqlParser.CSV:
+ case SqlParser.FEDERATED:
+ case SqlParser.INNODB:
+ case SqlParser.MEMORY:
+ case SqlParser.MRG_MYISAM:
+ case SqlParser.MYISAM:
+ case SqlParser.NDB:
+ case SqlParser.NDBCLUSTER:
+ case SqlParser.PERFORMANCE_SCHEMA:
+ case SqlParser.TOKUDB:
+ case SqlParser.REPEATABLE:
+ case SqlParser.COMMITTED:
+ case SqlParser.UNCOMMITTED:
+ case SqlParser.SERIALIZABLE:
+ case SqlParser.GEOMETRYCOLLECTION:
+ case SqlParser.LINESTRING:
+ case SqlParser.MULTILINESTRING:
+ case SqlParser.MULTIPOINT:
+ case SqlParser.MULTIPOLYGON:
+ case SqlParser.POINT:
+ case SqlParser.POLYGON:
+ case SqlParser.ABS:
+ case SqlParser.ACOS:
+ case SqlParser.ADDDATE:
+ case SqlParser.ADDTIME:
+ case SqlParser.AES_DECRYPT:
+ case SqlParser.AES_ENCRYPT:
+ case SqlParser.AREA:
+ case SqlParser.ASBINARY:
+ case SqlParser.ASIN:
+ case SqlParser.ASTEXT:
+ case SqlParser.ASWKB:
+ case SqlParser.ASWKT:
+ case SqlParser.ASYMMETRIC_DECRYPT:
+ case SqlParser.ASYMMETRIC_DERIVE:
+ case SqlParser.ASYMMETRIC_ENCRYPT:
+ case SqlParser.ASYMMETRIC_SIGN:
+ case SqlParser.ASYMMETRIC_VERIFY:
+ case SqlParser.ATAN:
+ case SqlParser.ATAN2:
+ case SqlParser.BENCHMARK:
+ case SqlParser.BIN:
+ case SqlParser.BIT_COUNT:
+ case SqlParser.BIT_LENGTH:
+ case SqlParser.BUFFER:
+ case SqlParser.CATALOG_NAME:
+ case SqlParser.CEIL:
+ case SqlParser.CEILING:
+ case SqlParser.CENTROID:
+ case SqlParser.CHARACTER_LENGTH:
+ case SqlParser.CHARSET:
+ case SqlParser.CHAR_LENGTH:
+ case SqlParser.COERCIBILITY:
+ case SqlParser.COLLATION:
+ case SqlParser.COMPRESS:
+ case SqlParser.CONCAT:
+ case SqlParser.CONCAT_WS:
+ case SqlParser.CONNECTION_ID:
+ case SqlParser.CONV:
+ case SqlParser.CONVERT_TZ:
+ case SqlParser.COS:
+ case SqlParser.COT:
+ case SqlParser.CRC32:
+ case SqlParser.CREATE_ASYMMETRIC_PRIV_KEY:
+ case SqlParser.CREATE_ASYMMETRIC_PUB_KEY:
+ case SqlParser.CREATE_DH_PARAMETERS:
+ case SqlParser.CREATE_DIGEST:
+ case SqlParser.CROSSES:
+ case SqlParser.DATEDIFF:
+ case SqlParser.DATE_FORMAT:
+ case SqlParser.DAYNAME:
+ case SqlParser.DAYOFMONTH:
+ case SqlParser.DAYOFWEEK:
+ case SqlParser.DAYOFYEAR:
+ case SqlParser.DECODE:
+ case SqlParser.DEGREES:
+ case SqlParser.DES_DECRYPT:
+ case SqlParser.DES_ENCRYPT:
+ case SqlParser.DIMENSION:
+ case SqlParser.DISJOINT:
+ case SqlParser.ELT:
+ case SqlParser.ENCODE:
+ case SqlParser.ENCRYPT:
+ case SqlParser.ENDPOINT:
+ case SqlParser.ENVELOPE:
+ case SqlParser.EQUALS:
+ case SqlParser.EXP:
+ case SqlParser.EXPORT_SET:
+ case SqlParser.EXTERIORRING:
+ case SqlParser.EXTRACTVALUE:
+ case SqlParser.FIELD:
+ case SqlParser.FIND_IN_SET:
+ case SqlParser.FLOOR:
+ case SqlParser.FORMAT:
+ case SqlParser.FOUND_ROWS:
+ case SqlParser.FROM_BASE64:
+ case SqlParser.FROM_DAYS:
+ case SqlParser.FROM_UNIXTIME:
+ case SqlParser.GEOMCOLLFROMTEXT:
+ case SqlParser.GEOMCOLLFROMWKB:
+ case SqlParser.GEOMETRYCOLLECTIONFROMTEXT:
+ case SqlParser.GEOMETRYCOLLECTIONFROMWKB:
+ case SqlParser.GEOMETRYFROMTEXT:
+ case SqlParser.GEOMETRYFROMWKB:
+ case SqlParser.GEOMETRYN:
+ case SqlParser.GEOMETRYTYPE:
+ case SqlParser.GEOMFROMTEXT:
+ case SqlParser.GEOMFROMWKB:
+ case SqlParser.GET_FORMAT:
+ case SqlParser.GET_LOCK:
+ case SqlParser.GLENGTH:
+ case SqlParser.GREATEST:
+ case SqlParser.GTID_SUBSET:
+ case SqlParser.GTID_SUBTRACT:
+ case SqlParser.HEX:
+ case SqlParser.IFNULL:
+ case SqlParser.INET6_ATON:
+ case SqlParser.INET6_NTOA:
+ case SqlParser.INET_ATON:
+ case SqlParser.INET_NTOA:
+ case SqlParser.INSTR:
+ case SqlParser.INTERIORRINGN:
+ case SqlParser.INTERSECTS:
+ case SqlParser.ISCLOSED:
+ case SqlParser.ISEMPTY:
+ case SqlParser.ISNULL:
+ case SqlParser.ISSIMPLE:
+ case SqlParser.IS_FREE_LOCK:
+ case SqlParser.IS_IPV4:
+ case SqlParser.IS_IPV4_COMPAT:
+ case SqlParser.IS_IPV4_MAPPED:
+ case SqlParser.IS_IPV6:
+ case SqlParser.IS_USED_LOCK:
+ case SqlParser.LAST_INSERT_ID:
+ case SqlParser.LCASE:
+ case SqlParser.LEAST:
+ case SqlParser.LENGTH:
+ case SqlParser.LINEFROMTEXT:
+ case SqlParser.LINEFROMWKB:
+ case SqlParser.LINESTRINGFROMTEXT:
+ case SqlParser.LINESTRINGFROMWKB:
+ case SqlParser.LN:
+ case SqlParser.LOAD_FILE:
+ case SqlParser.LOCATE:
+ case SqlParser.LOG:
+ case SqlParser.LOG10:
+ case SqlParser.LOG2:
+ case SqlParser.LOWER:
+ case SqlParser.LPAD:
+ case SqlParser.LTRIM:
+ case SqlParser.MAKEDATE:
+ case SqlParser.MAKETIME:
+ case SqlParser.MAKE_SET:
+ case SqlParser.MASTER_POS_WAIT:
+ case SqlParser.MBRCONTAINS:
+ case SqlParser.MBRDISJOINT:
+ case SqlParser.MBREQUAL:
+ case SqlParser.MBRINTERSECTS:
+ case SqlParser.MBROVERLAPS:
+ case SqlParser.MBRTOUCHES:
+ case SqlParser.MBRWITHIN:
+ case SqlParser.MD5:
+ case SqlParser.MLINEFROMTEXT:
+ case SqlParser.MLINEFROMWKB:
+ case SqlParser.MONTHNAME:
+ case SqlParser.MPOINTFROMTEXT:
+ case SqlParser.MPOINTFROMWKB:
+ case SqlParser.MPOLYFROMTEXT:
+ case SqlParser.MPOLYFROMWKB:
+ case SqlParser.MULTILINESTRINGFROMTEXT:
+ case SqlParser.MULTILINESTRINGFROMWKB:
+ case SqlParser.MULTIPOINTFROMTEXT:
+ case SqlParser.MULTIPOINTFROMWKB:
+ case SqlParser.MULTIPOLYGONFROMTEXT:
+ case SqlParser.MULTIPOLYGONFROMWKB:
+ case SqlParser.NAME_CONST:
+ case SqlParser.NULLIF:
+ case SqlParser.NUMGEOMETRIES:
+ case SqlParser.NUMINTERIORRINGS:
+ case SqlParser.NUMPOINTS:
+ case SqlParser.OCT:
+ case SqlParser.OCTET_LENGTH:
+ case SqlParser.ORD:
+ case SqlParser.OVERLAPS:
+ case SqlParser.PERIOD_ADD:
+ case SqlParser.PERIOD_DIFF:
+ case SqlParser.PI:
+ case SqlParser.POINTFROMTEXT:
+ case SqlParser.POINTFROMWKB:
+ case SqlParser.POINTN:
+ case SqlParser.POLYFROMTEXT:
+ case SqlParser.POLYFROMWKB:
+ case SqlParser.POLYGONFROMTEXT:
+ case SqlParser.POLYGONFROMWKB:
+ case SqlParser.POW:
+ case SqlParser.POWER:
+ case SqlParser.QUOTE:
+ case SqlParser.RADIANS:
+ case SqlParser.RAND:
+ case SqlParser.RANDOM_BYTES:
+ case SqlParser.RELEASE_LOCK:
+ case SqlParser.REVERSE:
+ case SqlParser.ROUND:
+ case SqlParser.ROW_COUNT:
+ case SqlParser.RPAD:
+ case SqlParser.RTRIM:
+ case SqlParser.SEC_TO_TIME:
+ case SqlParser.SESSION_USER:
+ case SqlParser.SHA:
+ case SqlParser.SHA1:
+ case SqlParser.SHA2:
+ case SqlParser.SCHEMA_NAME:
+ case SqlParser.SIGN:
+ case SqlParser.SIN:
+ case SqlParser.SLEEP:
+ case SqlParser.SOUNDEX:
+ case SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS:
+ case SqlParser.SQRT:
+ case SqlParser.SRID:
+ case SqlParser.STARTPOINT:
+ case SqlParser.STRCMP:
+ case SqlParser.STR_TO_DATE:
+ case SqlParser.ST_AREA:
+ case SqlParser.ST_ASBINARY:
+ case SqlParser.ST_ASTEXT:
+ case SqlParser.ST_ASWKB:
+ case SqlParser.ST_ASWKT:
+ case SqlParser.ST_BUFFER:
+ case SqlParser.ST_CENTROID:
+ case SqlParser.ST_CONTAINS:
+ case SqlParser.ST_CROSSES:
+ case SqlParser.ST_DIFFERENCE:
+ case SqlParser.ST_DIMENSION:
+ case SqlParser.ST_DISJOINT:
+ case SqlParser.ST_DISTANCE:
+ case SqlParser.ST_ENDPOINT:
+ case SqlParser.ST_ENVELOPE:
+ case SqlParser.ST_EQUALS:
+ case SqlParser.ST_EXTERIORRING:
+ case SqlParser.ST_GEOMCOLLFROMTEXT:
+ case SqlParser.ST_GEOMCOLLFROMTXT:
+ case SqlParser.ST_GEOMCOLLFROMWKB:
+ case SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT:
+ case SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB:
+ case SqlParser.ST_GEOMETRYFROMTEXT:
+ case SqlParser.ST_GEOMETRYFROMWKB:
+ case SqlParser.ST_GEOMETRYN:
+ case SqlParser.ST_GEOMETRYTYPE:
+ case SqlParser.ST_GEOMFROMTEXT:
+ case SqlParser.ST_GEOMFROMWKB:
+ case SqlParser.ST_INTERIORRINGN:
+ case SqlParser.ST_INTERSECTION:
+ case SqlParser.ST_INTERSECTS:
+ case SqlParser.ST_ISCLOSED:
+ case SqlParser.ST_ISEMPTY:
+ case SqlParser.ST_ISSIMPLE:
+ case SqlParser.ST_LINEFROMTEXT:
+ case SqlParser.ST_LINEFROMWKB:
+ case SqlParser.ST_LINESTRINGFROMTEXT:
+ case SqlParser.ST_LINESTRINGFROMWKB:
+ case SqlParser.ST_NUMGEOMETRIES:
+ case SqlParser.ST_NUMINTERIORRING:
+ case SqlParser.ST_NUMINTERIORRINGS:
+ case SqlParser.ST_NUMPOINTS:
+ case SqlParser.ST_OVERLAPS:
+ case SqlParser.ST_POINTFROMTEXT:
+ case SqlParser.ST_POINTFROMWKB:
+ case SqlParser.ST_POINTN:
+ case SqlParser.ST_POLYFROMTEXT:
+ case SqlParser.ST_POLYFROMWKB:
+ case SqlParser.ST_POLYGONFROMTEXT:
+ case SqlParser.ST_POLYGONFROMWKB:
+ case SqlParser.ST_SRID:
+ case SqlParser.ST_STARTPOINT:
+ case SqlParser.ST_SYMDIFFERENCE:
+ case SqlParser.ST_TOUCHES:
+ case SqlParser.ST_UNION:
+ case SqlParser.ST_WITHIN:
+ case SqlParser.ST_X:
+ case SqlParser.ST_Y:
+ case SqlParser.SUBDATE:
+ case SqlParser.SUBSTRING_INDEX:
+ case SqlParser.SUBTIME:
+ case SqlParser.SYSTEM_USER:
+ case SqlParser.TAN:
+ case SqlParser.TIMEDIFF:
+ case SqlParser.TIMESTAMPADD:
+ case SqlParser.TIMESTAMPDIFF:
+ case SqlParser.TIME_FORMAT:
+ case SqlParser.TIME_TO_SEC:
+ case SqlParser.TOUCHES:
+ case SqlParser.TO_BASE64:
+ case SqlParser.TO_DAYS:
+ case SqlParser.TO_SECONDS:
+ case SqlParser.UCASE:
+ case SqlParser.UNCOMPRESS:
+ case SqlParser.UNCOMPRESSED_LENGTH:
+ case SqlParser.UNHEX:
+ case SqlParser.UNIX_TIMESTAMP:
+ case SqlParser.UPDATEXML:
+ case SqlParser.UPPER:
+ case SqlParser.UUID:
+ case SqlParser.UUID_SHORT:
+ case SqlParser.VALIDATE_PASSWORD_STRENGTH:
+ case SqlParser.VERSION:
+ case SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS:
+ case SqlParser.WEEKDAY:
+ case SqlParser.WEEKOFYEAR:
+ case SqlParser.WEIGHT_STRING:
+ case SqlParser.WITHIN:
+ case SqlParser.YEARWEEK:
+ case SqlParser.Y_FUNCTION:
+ case SqlParser.X_FUNCTION:
+ case SqlParser.PLUS:
+ case SqlParser.MINUS:
+ case SqlParser.EXCLAMATION_SYMBOL:
+ case SqlParser.BIT_NOT_OP:
+ case SqlParser.LR_BRACKET:
+ case SqlParser.ZERO_DECIMAL:
+ case SqlParser.ONE_DECIMAL:
+ case SqlParser.TWO_DECIMAL:
+ case SqlParser.CHARSET_REVERSE_QOUTE_STRING:
+ case SqlParser.START_NATIONAL_STRING_LITERAL:
+ case SqlParser.STRING_LITERAL:
+ case SqlParser.DECIMAL_LITERAL:
+ case SqlParser.HEXADECIMAL_LITERAL:
+ case SqlParser.REAL_LITERAL:
+ case SqlParser.NULL_SPEC_LITERAL:
+ case SqlParser.BIT_STRING:
+ case SqlParser.STRING_CHARSET_NAME:
+ case SqlParser.ID:
+ case SqlParser.REVERSE_QUOTE_ID:
+ case SqlParser.LOCAL_ID:
+ case SqlParser.GLOBAL_ID:
+ this.state = 6077;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.ALL) {
+ this.state = 6076;
+ localctx.aggregator = this.match(SqlParser.ALL);
+ }
+
+ this.state = 6079;
+ this.functionArg();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 6082;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 6083;
+ this.match(SqlParser.COUNT);
+ this.state = 6084;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 6085;
+ localctx.aggregator = this.match(SqlParser.DISTINCT);
+ this.state = 6086;
+ this.functionArgs();
+ this.state = 6087;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+
+ case 4:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 6089;
+ _la = this._input.LA(1);
+ if(!(((((_la - 236)) & ~0x1f) == 0 && ((1 << (_la - 236)) & ((1 << (SqlParser.BIT_AND - 236)) | (1 << (SqlParser.BIT_OR - 236)) | (1 << (SqlParser.BIT_XOR - 236)) | (1 << (SqlParser.STD - 236)) | (1 << (SqlParser.STDDEV - 236)) | (1 << (SqlParser.STDDEV_POP - 236)) | (1 << (SqlParser.STDDEV_SAMP - 236)) | (1 << (SqlParser.VAR_POP - 236)) | (1 << (SqlParser.VAR_SAMP - 236)) | (1 << (SqlParser.VARIANCE - 236)))) !== 0))) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 6090;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 6092;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.ALL) {
+ this.state = 6091;
+ localctx.aggregator = this.match(SqlParser.ALL);
+ }
+
+ this.state = 6094;
+ this.functionArg();
+ this.state = 6095;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+
+ case 5:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 6097;
+ this.match(SqlParser.GROUP_CONCAT);
+ this.state = 6098;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 6100;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.DISTINCT) {
+ this.state = 6099;
+ localctx.aggregator = this.match(SqlParser.DISTINCT);
+ }
+
+ this.state = 6102;
+ this.functionArgs();
+ this.state = 6113;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.ORDER) {
+ this.state = 6103;
+ this.match(SqlParser.ORDER);
+ this.state = 6104;
+ this.match(SqlParser.BY);
+ this.state = 6105;
+ this.orderByExpression();
+ this.state = 6110;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 6106;
+ this.match(SqlParser.COMMA);
+ this.state = 6107;
+ this.orderByExpression();
+ this.state = 6112;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ }
+
+ this.state = 6117;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.SEPARATOR) {
+ this.state = 6115;
+ this.match(SqlParser.SEPARATOR);
+ this.state = 6116;
+ localctx.separator = this.match(SqlParser.STRING_LITERAL);
+ }
+
+ this.state = 6119;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function ScalarFunctionNameContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_scalarFunctionName;
+ return this;
+}
+
+ScalarFunctionNameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+ScalarFunctionNameContext.prototype.constructor = ScalarFunctionNameContext;
+
+ScalarFunctionNameContext.prototype.functionNameBase = function() {
+ return this.getTypedRuleContext(FunctionNameBaseContext,0);
+};
+
+ScalarFunctionNameContext.prototype.ASCII = function() {
+ return this.getToken(SqlParser.ASCII, 0);
+};
+
+ScalarFunctionNameContext.prototype.CURDATE = function() {
+ return this.getToken(SqlParser.CURDATE, 0);
+};
+
+ScalarFunctionNameContext.prototype.CURRENT_DATE = function() {
+ return this.getToken(SqlParser.CURRENT_DATE, 0);
+};
+
+ScalarFunctionNameContext.prototype.CURRENT_TIME = function() {
+ return this.getToken(SqlParser.CURRENT_TIME, 0);
+};
+
+ScalarFunctionNameContext.prototype.CURRENT_TIMESTAMP = function() {
+ return this.getToken(SqlParser.CURRENT_TIMESTAMP, 0);
+};
+
+ScalarFunctionNameContext.prototype.CURTIME = function() {
+ return this.getToken(SqlParser.CURTIME, 0);
+};
+
+ScalarFunctionNameContext.prototype.DATE_ADD = function() {
+ return this.getToken(SqlParser.DATE_ADD, 0);
+};
+
+ScalarFunctionNameContext.prototype.DATE_SUB = function() {
+ return this.getToken(SqlParser.DATE_SUB, 0);
+};
+
+ScalarFunctionNameContext.prototype.IF = function() {
+ return this.getToken(SqlParser.IF, 0);
+};
+
+ScalarFunctionNameContext.prototype.INSERT = function() {
+ return this.getToken(SqlParser.INSERT, 0);
+};
+
+ScalarFunctionNameContext.prototype.LOCALTIME = function() {
+ return this.getToken(SqlParser.LOCALTIME, 0);
+};
+
+ScalarFunctionNameContext.prototype.LOCALTIMESTAMP = function() {
+ return this.getToken(SqlParser.LOCALTIMESTAMP, 0);
+};
+
+ScalarFunctionNameContext.prototype.MID = function() {
+ return this.getToken(SqlParser.MID, 0);
+};
+
+ScalarFunctionNameContext.prototype.NOW = function() {
+ return this.getToken(SqlParser.NOW, 0);
+};
+
+ScalarFunctionNameContext.prototype.REPLACE = function() {
+ return this.getToken(SqlParser.REPLACE, 0);
+};
+
+ScalarFunctionNameContext.prototype.SUBSTR = function() {
+ return this.getToken(SqlParser.SUBSTR, 0);
+};
+
+ScalarFunctionNameContext.prototype.SUBSTRING = function() {
+ return this.getToken(SqlParser.SUBSTRING, 0);
+};
+
+ScalarFunctionNameContext.prototype.SYSDATE = function() {
+ return this.getToken(SqlParser.SYSDATE, 0);
+};
+
+ScalarFunctionNameContext.prototype.TRIM = function() {
+ return this.getToken(SqlParser.TRIM, 0);
+};
+
+ScalarFunctionNameContext.prototype.UTC_DATE = function() {
+ return this.getToken(SqlParser.UTC_DATE, 0);
+};
+
+ScalarFunctionNameContext.prototype.UTC_TIME = function() {
+ return this.getToken(SqlParser.UTC_TIME, 0);
+};
+
+ScalarFunctionNameContext.prototype.UTC_TIMESTAMP = function() {
+ return this.getToken(SqlParser.UTC_TIMESTAMP, 0);
+};
+
+ScalarFunctionNameContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterScalarFunctionName(this);
+ }
+};
+
+ScalarFunctionNameContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitScalarFunctionName(this);
+ }
+};
+
+ScalarFunctionNameContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitScalarFunctionName(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.ScalarFunctionNameContext = ScalarFunctionNameContext;
+
+SqlParser.prototype.scalarFunctionName = function() {
+
+ var localctx = new ScalarFunctionNameContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 594, SqlParser.RULE_scalarFunctionName);
+ try {
+ this.state = 6146;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.DATABASE:
+ case SqlParser.LEFT:
+ case SqlParser.RIGHT:
+ case SqlParser.DATE:
+ case SqlParser.TIME:
+ case SqlParser.TIMESTAMP:
+ case SqlParser.YEAR:
+ case SqlParser.JSON_VALID:
+ case SqlParser.JSON_SCHEMA_VALID:
+ case SqlParser.COUNT:
+ case SqlParser.POSITION:
+ case SqlParser.INVISIBLE:
+ case SqlParser.VISIBLE:
+ case SqlParser.QUARTER:
+ case SqlParser.MONTH:
+ case SqlParser.DAY:
+ case SqlParser.HOUR:
+ case SqlParser.MINUTE:
+ case SqlParser.WEEK:
+ case SqlParser.SECOND:
+ case SqlParser.MICROSECOND:
+ case SqlParser.SESSION_VARIABLES_ADMIN:
+ case SqlParser.GEOMETRYCOLLECTION:
+ case SqlParser.LINESTRING:
+ case SqlParser.MULTILINESTRING:
+ case SqlParser.MULTIPOINT:
+ case SqlParser.MULTIPOLYGON:
+ case SqlParser.POINT:
+ case SqlParser.POLYGON:
+ case SqlParser.ABS:
+ case SqlParser.ACOS:
+ case SqlParser.ADDDATE:
+ case SqlParser.ADDTIME:
+ case SqlParser.AES_DECRYPT:
+ case SqlParser.AES_ENCRYPT:
+ case SqlParser.AREA:
+ case SqlParser.ASBINARY:
+ case SqlParser.ASIN:
+ case SqlParser.ASTEXT:
+ case SqlParser.ASWKB:
+ case SqlParser.ASWKT:
+ case SqlParser.ASYMMETRIC_DECRYPT:
+ case SqlParser.ASYMMETRIC_DERIVE:
+ case SqlParser.ASYMMETRIC_ENCRYPT:
+ case SqlParser.ASYMMETRIC_SIGN:
+ case SqlParser.ASYMMETRIC_VERIFY:
+ case SqlParser.ATAN:
+ case SqlParser.ATAN2:
+ case SqlParser.BENCHMARK:
+ case SqlParser.BIN:
+ case SqlParser.BIT_COUNT:
+ case SqlParser.BIT_LENGTH:
+ case SqlParser.BUFFER:
+ case SqlParser.CEIL:
+ case SqlParser.CEILING:
+ case SqlParser.CENTROID:
+ case SqlParser.CHARACTER_LENGTH:
+ case SqlParser.CHARSET:
+ case SqlParser.CHAR_LENGTH:
+ case SqlParser.COERCIBILITY:
+ case SqlParser.COLLATION:
+ case SqlParser.COMPRESS:
+ case SqlParser.CONCAT:
+ case SqlParser.CONCAT_WS:
+ case SqlParser.CONNECTION_ID:
+ case SqlParser.CONV:
+ case SqlParser.CONVERT_TZ:
+ case SqlParser.COS:
+ case SqlParser.COT:
+ case SqlParser.CRC32:
+ case SqlParser.CREATE_ASYMMETRIC_PRIV_KEY:
+ case SqlParser.CREATE_ASYMMETRIC_PUB_KEY:
+ case SqlParser.CREATE_DH_PARAMETERS:
+ case SqlParser.CREATE_DIGEST:
+ case SqlParser.CROSSES:
+ case SqlParser.DATEDIFF:
+ case SqlParser.DATE_FORMAT:
+ case SqlParser.DAYNAME:
+ case SqlParser.DAYOFMONTH:
+ case SqlParser.DAYOFWEEK:
+ case SqlParser.DAYOFYEAR:
+ case SqlParser.DECODE:
+ case SqlParser.DEGREES:
+ case SqlParser.DES_DECRYPT:
+ case SqlParser.DES_ENCRYPT:
+ case SqlParser.DIMENSION:
+ case SqlParser.DISJOINT:
+ case SqlParser.ELT:
+ case SqlParser.ENCODE:
+ case SqlParser.ENCRYPT:
+ case SqlParser.ENDPOINT:
+ case SqlParser.ENVELOPE:
+ case SqlParser.EQUALS:
+ case SqlParser.EXP:
+ case SqlParser.EXPORT_SET:
+ case SqlParser.EXTERIORRING:
+ case SqlParser.EXTRACTVALUE:
+ case SqlParser.FIELD:
+ case SqlParser.FIND_IN_SET:
+ case SqlParser.FLOOR:
+ case SqlParser.FORMAT:
+ case SqlParser.FOUND_ROWS:
+ case SqlParser.FROM_BASE64:
+ case SqlParser.FROM_DAYS:
+ case SqlParser.FROM_UNIXTIME:
+ case SqlParser.GEOMCOLLFROMTEXT:
+ case SqlParser.GEOMCOLLFROMWKB:
+ case SqlParser.GEOMETRYCOLLECTIONFROMTEXT:
+ case SqlParser.GEOMETRYCOLLECTIONFROMWKB:
+ case SqlParser.GEOMETRYFROMTEXT:
+ case SqlParser.GEOMETRYFROMWKB:
+ case SqlParser.GEOMETRYN:
+ case SqlParser.GEOMETRYTYPE:
+ case SqlParser.GEOMFROMTEXT:
+ case SqlParser.GEOMFROMWKB:
+ case SqlParser.GET_FORMAT:
+ case SqlParser.GET_LOCK:
+ case SqlParser.GLENGTH:
+ case SqlParser.GREATEST:
+ case SqlParser.GTID_SUBSET:
+ case SqlParser.GTID_SUBTRACT:
+ case SqlParser.HEX:
+ case SqlParser.IFNULL:
+ case SqlParser.INET6_ATON:
+ case SqlParser.INET6_NTOA:
+ case SqlParser.INET_ATON:
+ case SqlParser.INET_NTOA:
+ case SqlParser.INSTR:
+ case SqlParser.INTERIORRINGN:
+ case SqlParser.INTERSECTS:
+ case SqlParser.ISCLOSED:
+ case SqlParser.ISEMPTY:
+ case SqlParser.ISNULL:
+ case SqlParser.ISSIMPLE:
+ case SqlParser.IS_FREE_LOCK:
+ case SqlParser.IS_IPV4:
+ case SqlParser.IS_IPV4_COMPAT:
+ case SqlParser.IS_IPV4_MAPPED:
+ case SqlParser.IS_IPV6:
+ case SqlParser.IS_USED_LOCK:
+ case SqlParser.LAST_INSERT_ID:
+ case SqlParser.LCASE:
+ case SqlParser.LEAST:
+ case SqlParser.LENGTH:
+ case SqlParser.LINEFROMTEXT:
+ case SqlParser.LINEFROMWKB:
+ case SqlParser.LINESTRINGFROMTEXT:
+ case SqlParser.LINESTRINGFROMWKB:
+ case SqlParser.LN:
+ case SqlParser.LOAD_FILE:
+ case SqlParser.LOCATE:
+ case SqlParser.LOG:
+ case SqlParser.LOG10:
+ case SqlParser.LOG2:
+ case SqlParser.LOWER:
+ case SqlParser.LPAD:
+ case SqlParser.LTRIM:
+ case SqlParser.MAKEDATE:
+ case SqlParser.MAKETIME:
+ case SqlParser.MAKE_SET:
+ case SqlParser.MASTER_POS_WAIT:
+ case SqlParser.MBRCONTAINS:
+ case SqlParser.MBRDISJOINT:
+ case SqlParser.MBREQUAL:
+ case SqlParser.MBRINTERSECTS:
+ case SqlParser.MBROVERLAPS:
+ case SqlParser.MBRTOUCHES:
+ case SqlParser.MBRWITHIN:
+ case SqlParser.MD5:
+ case SqlParser.MLINEFROMTEXT:
+ case SqlParser.MLINEFROMWKB:
+ case SqlParser.MONTHNAME:
+ case SqlParser.MPOINTFROMTEXT:
+ case SqlParser.MPOINTFROMWKB:
+ case SqlParser.MPOLYFROMTEXT:
+ case SqlParser.MPOLYFROMWKB:
+ case SqlParser.MULTILINESTRINGFROMTEXT:
+ case SqlParser.MULTILINESTRINGFROMWKB:
+ case SqlParser.MULTIPOINTFROMTEXT:
+ case SqlParser.MULTIPOINTFROMWKB:
+ case SqlParser.MULTIPOLYGONFROMTEXT:
+ case SqlParser.MULTIPOLYGONFROMWKB:
+ case SqlParser.NAME_CONST:
+ case SqlParser.NULLIF:
+ case SqlParser.NUMGEOMETRIES:
+ case SqlParser.NUMINTERIORRINGS:
+ case SqlParser.NUMPOINTS:
+ case SqlParser.OCT:
+ case SqlParser.OCTET_LENGTH:
+ case SqlParser.ORD:
+ case SqlParser.OVERLAPS:
+ case SqlParser.PERIOD_ADD:
+ case SqlParser.PERIOD_DIFF:
+ case SqlParser.PI:
+ case SqlParser.POINTFROMTEXT:
+ case SqlParser.POINTFROMWKB:
+ case SqlParser.POINTN:
+ case SqlParser.POLYFROMTEXT:
+ case SqlParser.POLYFROMWKB:
+ case SqlParser.POLYGONFROMTEXT:
+ case SqlParser.POLYGONFROMWKB:
+ case SqlParser.POW:
+ case SqlParser.POWER:
+ case SqlParser.QUOTE:
+ case SqlParser.RADIANS:
+ case SqlParser.RAND:
+ case SqlParser.RANDOM_BYTES:
+ case SqlParser.RELEASE_LOCK:
+ case SqlParser.REVERSE:
+ case SqlParser.ROUND:
+ case SqlParser.ROW_COUNT:
+ case SqlParser.RPAD:
+ case SqlParser.RTRIM:
+ case SqlParser.SEC_TO_TIME:
+ case SqlParser.SESSION_USER:
+ case SqlParser.SHA:
+ case SqlParser.SHA1:
+ case SqlParser.SHA2:
+ case SqlParser.SIGN:
+ case SqlParser.SIN:
+ case SqlParser.SLEEP:
+ case SqlParser.SOUNDEX:
+ case SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS:
+ case SqlParser.SQRT:
+ case SqlParser.SRID:
+ case SqlParser.STARTPOINT:
+ case SqlParser.STRCMP:
+ case SqlParser.STR_TO_DATE:
+ case SqlParser.ST_AREA:
+ case SqlParser.ST_ASBINARY:
+ case SqlParser.ST_ASTEXT:
+ case SqlParser.ST_ASWKB:
+ case SqlParser.ST_ASWKT:
+ case SqlParser.ST_BUFFER:
+ case SqlParser.ST_CENTROID:
+ case SqlParser.ST_CONTAINS:
+ case SqlParser.ST_CROSSES:
+ case SqlParser.ST_DIFFERENCE:
+ case SqlParser.ST_DIMENSION:
+ case SqlParser.ST_DISJOINT:
+ case SqlParser.ST_DISTANCE:
+ case SqlParser.ST_ENDPOINT:
+ case SqlParser.ST_ENVELOPE:
+ case SqlParser.ST_EQUALS:
+ case SqlParser.ST_EXTERIORRING:
+ case SqlParser.ST_GEOMCOLLFROMTEXT:
+ case SqlParser.ST_GEOMCOLLFROMTXT:
+ case SqlParser.ST_GEOMCOLLFROMWKB:
+ case SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT:
+ case SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB:
+ case SqlParser.ST_GEOMETRYFROMTEXT:
+ case SqlParser.ST_GEOMETRYFROMWKB:
+ case SqlParser.ST_GEOMETRYN:
+ case SqlParser.ST_GEOMETRYTYPE:
+ case SqlParser.ST_GEOMFROMTEXT:
+ case SqlParser.ST_GEOMFROMWKB:
+ case SqlParser.ST_INTERIORRINGN:
+ case SqlParser.ST_INTERSECTION:
+ case SqlParser.ST_INTERSECTS:
+ case SqlParser.ST_ISCLOSED:
+ case SqlParser.ST_ISEMPTY:
+ case SqlParser.ST_ISSIMPLE:
+ case SqlParser.ST_LINEFROMTEXT:
+ case SqlParser.ST_LINEFROMWKB:
+ case SqlParser.ST_LINESTRINGFROMTEXT:
+ case SqlParser.ST_LINESTRINGFROMWKB:
+ case SqlParser.ST_NUMGEOMETRIES:
+ case SqlParser.ST_NUMINTERIORRING:
+ case SqlParser.ST_NUMINTERIORRINGS:
+ case SqlParser.ST_NUMPOINTS:
+ case SqlParser.ST_OVERLAPS:
+ case SqlParser.ST_POINTFROMTEXT:
+ case SqlParser.ST_POINTFROMWKB:
+ case SqlParser.ST_POINTN:
+ case SqlParser.ST_POLYFROMTEXT:
+ case SqlParser.ST_POLYFROMWKB:
+ case SqlParser.ST_POLYGONFROMTEXT:
+ case SqlParser.ST_POLYGONFROMWKB:
+ case SqlParser.ST_SRID:
+ case SqlParser.ST_STARTPOINT:
+ case SqlParser.ST_SYMDIFFERENCE:
+ case SqlParser.ST_TOUCHES:
+ case SqlParser.ST_UNION:
+ case SqlParser.ST_WITHIN:
+ case SqlParser.ST_X:
+ case SqlParser.ST_Y:
+ case SqlParser.SUBDATE:
+ case SqlParser.SUBSTRING_INDEX:
+ case SqlParser.SUBTIME:
+ case SqlParser.SYSTEM_USER:
+ case SqlParser.TAN:
+ case SqlParser.TIMEDIFF:
+ case SqlParser.TIMESTAMPADD:
+ case SqlParser.TIMESTAMPDIFF:
+ case SqlParser.TIME_FORMAT:
+ case SqlParser.TIME_TO_SEC:
+ case SqlParser.TOUCHES:
+ case SqlParser.TO_BASE64:
+ case SqlParser.TO_DAYS:
+ case SqlParser.TO_SECONDS:
+ case SqlParser.UCASE:
+ case SqlParser.UNCOMPRESS:
+ case SqlParser.UNCOMPRESSED_LENGTH:
+ case SqlParser.UNHEX:
+ case SqlParser.UNIX_TIMESTAMP:
+ case SqlParser.UPDATEXML:
+ case SqlParser.UPPER:
+ case SqlParser.UUID:
+ case SqlParser.UUID_SHORT:
+ case SqlParser.VALIDATE_PASSWORD_STRENGTH:
+ case SqlParser.VERSION:
+ case SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS:
+ case SqlParser.WEEKDAY:
+ case SqlParser.WEEKOFYEAR:
+ case SqlParser.WEIGHT_STRING:
+ case SqlParser.WITHIN:
+ case SqlParser.YEARWEEK:
+ case SqlParser.Y_FUNCTION:
+ case SqlParser.X_FUNCTION:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6123;
+ this.functionNameBase();
+ break;
+ case SqlParser.ASCII:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 6124;
+ this.match(SqlParser.ASCII);
+ break;
+ case SqlParser.CURDATE:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 6125;
+ this.match(SqlParser.CURDATE);
+ break;
+ case SqlParser.CURRENT_DATE:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 6126;
+ this.match(SqlParser.CURRENT_DATE);
+ break;
+ case SqlParser.CURRENT_TIME:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 6127;
+ this.match(SqlParser.CURRENT_TIME);
+ break;
+ case SqlParser.CURRENT_TIMESTAMP:
+ this.enterOuterAlt(localctx, 6);
+ this.state = 6128;
+ this.match(SqlParser.CURRENT_TIMESTAMP);
+ break;
+ case SqlParser.CURTIME:
+ this.enterOuterAlt(localctx, 7);
+ this.state = 6129;
+ this.match(SqlParser.CURTIME);
+ break;
+ case SqlParser.DATE_ADD:
+ this.enterOuterAlt(localctx, 8);
+ this.state = 6130;
+ this.match(SqlParser.DATE_ADD);
+ break;
+ case SqlParser.DATE_SUB:
+ this.enterOuterAlt(localctx, 9);
+ this.state = 6131;
+ this.match(SqlParser.DATE_SUB);
+ break;
+ case SqlParser.IF:
+ this.enterOuterAlt(localctx, 10);
+ this.state = 6132;
+ this.match(SqlParser.IF);
+ break;
+ case SqlParser.INSERT:
+ this.enterOuterAlt(localctx, 11);
+ this.state = 6133;
+ this.match(SqlParser.INSERT);
+ break;
+ case SqlParser.LOCALTIME:
+ this.enterOuterAlt(localctx, 12);
+ this.state = 6134;
+ this.match(SqlParser.LOCALTIME);
+ break;
+ case SqlParser.LOCALTIMESTAMP:
+ this.enterOuterAlt(localctx, 13);
+ this.state = 6135;
+ this.match(SqlParser.LOCALTIMESTAMP);
+ break;
+ case SqlParser.MID:
+ this.enterOuterAlt(localctx, 14);
+ this.state = 6136;
+ this.match(SqlParser.MID);
+ break;
+ case SqlParser.NOW:
+ this.enterOuterAlt(localctx, 15);
+ this.state = 6137;
+ this.match(SqlParser.NOW);
+ break;
+ case SqlParser.REPLACE:
+ this.enterOuterAlt(localctx, 16);
+ this.state = 6138;
+ this.match(SqlParser.REPLACE);
+ break;
+ case SqlParser.SUBSTR:
+ this.enterOuterAlt(localctx, 17);
+ this.state = 6139;
+ this.match(SqlParser.SUBSTR);
+ break;
+ case SqlParser.SUBSTRING:
+ this.enterOuterAlt(localctx, 18);
+ this.state = 6140;
+ this.match(SqlParser.SUBSTRING);
+ break;
+ case SqlParser.SYSDATE:
+ this.enterOuterAlt(localctx, 19);
+ this.state = 6141;
+ this.match(SqlParser.SYSDATE);
+ break;
+ case SqlParser.TRIM:
+ this.enterOuterAlt(localctx, 20);
+ this.state = 6142;
+ this.match(SqlParser.TRIM);
+ break;
+ case SqlParser.UTC_DATE:
+ this.enterOuterAlt(localctx, 21);
+ this.state = 6143;
+ this.match(SqlParser.UTC_DATE);
+ break;
+ case SqlParser.UTC_TIME:
+ this.enterOuterAlt(localctx, 22);
+ this.state = 6144;
+ this.match(SqlParser.UTC_TIME);
+ break;
+ case SqlParser.UTC_TIMESTAMP:
+ this.enterOuterAlt(localctx, 23);
+ this.state = 6145;
+ this.match(SqlParser.UTC_TIMESTAMP);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function PasswordFunctionClauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_passwordFunctionClause;
+ this.functionName = null; // Token
+ return this;
+}
+
+PasswordFunctionClauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+PasswordFunctionClauseContext.prototype.constructor = PasswordFunctionClauseContext;
+
+PasswordFunctionClauseContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+PasswordFunctionClauseContext.prototype.functionArg = function() {
+ return this.getTypedRuleContext(FunctionArgContext,0);
+};
+
+PasswordFunctionClauseContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+PasswordFunctionClauseContext.prototype.PASSWORD = function() {
+ return this.getToken(SqlParser.PASSWORD, 0);
+};
+
+PasswordFunctionClauseContext.prototype.OLD_PASSWORD = function() {
+ return this.getToken(SqlParser.OLD_PASSWORD, 0);
+};
+
+PasswordFunctionClauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterPasswordFunctionClause(this);
+ }
+};
+
+PasswordFunctionClauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitPasswordFunctionClause(this);
+ }
+};
+
+PasswordFunctionClauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitPasswordFunctionClause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.PasswordFunctionClauseContext = PasswordFunctionClauseContext;
+
+SqlParser.prototype.passwordFunctionClause = function() {
+
+ var localctx = new PasswordFunctionClauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 596, SqlParser.RULE_passwordFunctionClause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6148;
+ localctx.functionName = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.OLD_PASSWORD || _la===SqlParser.PASSWORD)) {
+ localctx.functionName = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 6149;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 6150;
+ this.functionArg();
+ this.state = 6151;
+ this.match(SqlParser.RR_BRACKET);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function FunctionArgsContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_functionArgs;
+ return this;
+}
+
+FunctionArgsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+FunctionArgsContext.prototype.constructor = FunctionArgsContext;
+
+FunctionArgsContext.prototype.constant = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ConstantContext);
+ } else {
+ return this.getTypedRuleContext(ConstantContext,i);
+ }
+};
+
+FunctionArgsContext.prototype.fullColumnName = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(FullColumnNameContext);
+ } else {
+ return this.getTypedRuleContext(FullColumnNameContext,i);
+ }
+};
+
+FunctionArgsContext.prototype.functionCall = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(FunctionCallContext);
+ } else {
+ return this.getTypedRuleContext(FunctionCallContext,i);
+ }
+};
+
+FunctionArgsContext.prototype.expression = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ExpressionContext);
+ } else {
+ return this.getTypedRuleContext(ExpressionContext,i);
+ }
+};
+
+FunctionArgsContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+
+FunctionArgsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterFunctionArgs(this);
+ }
+};
+
+FunctionArgsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitFunctionArgs(this);
+ }
+};
+
+FunctionArgsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitFunctionArgs(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.FunctionArgsContext = FunctionArgsContext;
+
+SqlParser.prototype.functionArgs = function() {
+
+ var localctx = new FunctionArgsContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 598, SqlParser.RULE_functionArgs);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6157;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,904,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 6153;
+ this.constant();
+ break;
+
+ case 2:
+ this.state = 6154;
+ this.fullColumnName();
+ break;
+
+ case 3:
+ this.state = 6155;
+ this.functionCall();
+ break;
+
+ case 4:
+ this.state = 6156;
+ this.expression(0);
+ break;
+
+ }
+ this.state = 6168;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 6159;
+ this.match(SqlParser.COMMA);
+ this.state = 6164;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,905,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 6160;
+ this.constant();
+ break;
+
+ case 2:
+ this.state = 6161;
+ this.fullColumnName();
+ break;
+
+ case 3:
+ this.state = 6162;
+ this.functionCall();
+ break;
+
+ case 4:
+ this.state = 6163;
+ this.expression(0);
+ break;
+
+ }
+ this.state = 6170;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function FunctionArgContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_functionArg;
+ return this;
+}
+
+FunctionArgContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+FunctionArgContext.prototype.constructor = FunctionArgContext;
+
+FunctionArgContext.prototype.constant = function() {
+ return this.getTypedRuleContext(ConstantContext,0);
+};
+
+FunctionArgContext.prototype.fullColumnName = function() {
+ return this.getTypedRuleContext(FullColumnNameContext,0);
+};
+
+FunctionArgContext.prototype.functionCall = function() {
+ return this.getTypedRuleContext(FunctionCallContext,0);
+};
+
+FunctionArgContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+FunctionArgContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterFunctionArg(this);
+ }
+};
+
+FunctionArgContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitFunctionArg(this);
+ }
+};
+
+FunctionArgContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitFunctionArg(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.FunctionArgContext = FunctionArgContext;
+
+SqlParser.prototype.functionArg = function() {
+
+ var localctx = new FunctionArgContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 600, SqlParser.RULE_functionArg);
+ try {
+ this.state = 6175;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,907,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6171;
+ this.constant();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 6172;
+ this.fullColumnName();
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 6173;
+ this.functionCall();
+ break;
+
+ case 4:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 6174;
+ this.expression(0);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function ExpressionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_expression;
+ return this;
+}
+
+ExpressionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+ExpressionContext.prototype.constructor = ExpressionContext;
+
+
+
+ExpressionContext.prototype.copyFrom = function(ctx) {
+ antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx);
+};
+
+function IsExpressionContext(parser, ctx) {
+ ExpressionContext.call(this, parser);
+ this.testValue = null; // Token;
+ ExpressionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+IsExpressionContext.prototype = Object.create(ExpressionContext.prototype);
+IsExpressionContext.prototype.constructor = IsExpressionContext;
+
+SqlParser.IsExpressionContext = IsExpressionContext;
+
+IsExpressionContext.prototype.predicate = function() {
+ return this.getTypedRuleContext(PredicateContext,0);
+};
+
+IsExpressionContext.prototype.IS = function() {
+ return this.getToken(SqlParser.IS, 0);
+};
+
+IsExpressionContext.prototype.TRUE = function() {
+ return this.getToken(SqlParser.TRUE, 0);
+};
+
+IsExpressionContext.prototype.FALSE = function() {
+ return this.getToken(SqlParser.FALSE, 0);
+};
+
+IsExpressionContext.prototype.UNKNOWN = function() {
+ return this.getToken(SqlParser.UNKNOWN, 0);
+};
+
+IsExpressionContext.prototype.NOT = function() {
+ return this.getToken(SqlParser.NOT, 0);
+};
+IsExpressionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterIsExpression(this);
+ }
+};
+
+IsExpressionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitIsExpression(this);
+ }
+};
+
+IsExpressionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitIsExpression(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function NotExpressionContext(parser, ctx) {
+ ExpressionContext.call(this, parser);
+ this.notOperator = null; // Token;
+ ExpressionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+NotExpressionContext.prototype = Object.create(ExpressionContext.prototype);
+NotExpressionContext.prototype.constructor = NotExpressionContext;
+
+SqlParser.NotExpressionContext = NotExpressionContext;
+
+NotExpressionContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+NotExpressionContext.prototype.NOT = function() {
+ return this.getToken(SqlParser.NOT, 0);
+};
+
+NotExpressionContext.prototype.EXCLAMATION_SYMBOL = function() {
+ return this.getToken(SqlParser.EXCLAMATION_SYMBOL, 0);
+};
+NotExpressionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterNotExpression(this);
+ }
+};
+
+NotExpressionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitNotExpression(this);
+ }
+};
+
+NotExpressionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitNotExpression(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function LogicalExpressionContext(parser, ctx) {
+ ExpressionContext.call(this, parser);
+ ExpressionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+LogicalExpressionContext.prototype = Object.create(ExpressionContext.prototype);
+LogicalExpressionContext.prototype.constructor = LogicalExpressionContext;
+
+SqlParser.LogicalExpressionContext = LogicalExpressionContext;
+
+LogicalExpressionContext.prototype.expression = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ExpressionContext);
+ } else {
+ return this.getTypedRuleContext(ExpressionContext,i);
+ }
+};
+
+LogicalExpressionContext.prototype.logicalOperator = function() {
+ return this.getTypedRuleContext(LogicalOperatorContext,0);
+};
+LogicalExpressionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterLogicalExpression(this);
+ }
+};
+
+LogicalExpressionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitLogicalExpression(this);
+ }
+};
+
+LogicalExpressionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitLogicalExpression(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function PredicateExpressionContext(parser, ctx) {
+ ExpressionContext.call(this, parser);
+ ExpressionContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+PredicateExpressionContext.prototype = Object.create(ExpressionContext.prototype);
+PredicateExpressionContext.prototype.constructor = PredicateExpressionContext;
+
+SqlParser.PredicateExpressionContext = PredicateExpressionContext;
+
+PredicateExpressionContext.prototype.predicate = function() {
+ return this.getTypedRuleContext(PredicateContext,0);
+};
+PredicateExpressionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterPredicateExpression(this);
+ }
+};
+
+PredicateExpressionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitPredicateExpression(this);
+ }
+};
+
+PredicateExpressionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitPredicateExpression(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+SqlParser.prototype.expression = function(_p) {
+ if(_p===undefined) {
+ _p = 0;
+ }
+ var _parentctx = this._ctx;
+ var _parentState = this.state;
+ var localctx = new ExpressionContext(this, this._ctx, _parentState);
+ var _prevctx = localctx;
+ var _startState = 602;
+ this.enterRecursionRule(localctx, 602, SqlParser.RULE_expression, _p);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6188;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,909,this._ctx);
+ switch(la_) {
+ case 1:
+ localctx = new NotExpressionContext(this, localctx);
+ this._ctx = localctx;
+ _prevctx = localctx;
+
+ this.state = 6178;
+ localctx.notOperator = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.NOT || _la===SqlParser.EXCLAMATION_SYMBOL)) {
+ localctx.notOperator = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 6179;
+ this.expression(4);
+ break;
+
+ case 2:
+ localctx = new IsExpressionContext(this, localctx);
+ this._ctx = localctx;
+ _prevctx = localctx;
+ this.state = 6180;
+ this.predicate(0);
+ this.state = 6181;
+ this.match(SqlParser.IS);
+ this.state = 6183;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.NOT) {
+ this.state = 6182;
+ this.match(SqlParser.NOT);
+ }
+
+ this.state = 6185;
+ localctx.testValue = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.FALSE || _la===SqlParser.TRUE || _la===SqlParser.UNKNOWN)) {
+ localctx.testValue = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+
+ case 3:
+ localctx = new PredicateExpressionContext(this, localctx);
+ this._ctx = localctx;
+ _prevctx = localctx;
+ this.state = 6187;
+ this.predicate(0);
+ break;
+
+ }
+ this._ctx.stop = this._input.LT(-1);
+ this.state = 6196;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,910,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ if(this._parseListeners!==null) {
+ this.triggerExitRuleEvent();
+ }
+ _prevctx = localctx;
+ localctx = new LogicalExpressionContext(this, new ExpressionContext(this, _parentctx, _parentState));
+ this.pushNewRecursionContext(localctx, _startState, SqlParser.RULE_expression);
+ this.state = 6190;
+ if (!( this.precpred(this._ctx, 3))) {
+ throw new antlr4.error.FailedPredicateException(this, "this.precpred(this._ctx, 3)");
+ }
+ this.state = 6191;
+ this.logicalOperator();
+ this.state = 6192;
+ this.expression(4);
+ }
+ this.state = 6198;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,910,this._ctx);
+ }
+
+ } catch( error) {
+ if(error instanceof antlr4.error.RecognitionException) {
+ localctx.exception = error;
+ this._errHandler.reportError(this, error);
+ this._errHandler.recover(this, error);
+ } else {
+ throw error;
+ }
+ } finally {
+ this.unrollRecursionContexts(_parentctx)
+ }
+ return localctx;
+};
+
+
+function PredicateContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_predicate;
+ return this;
+}
+
+PredicateContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+PredicateContext.prototype.constructor = PredicateContext;
+
+
+
+PredicateContext.prototype.copyFrom = function(ctx) {
+ antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx);
+};
+
+function SoundsLikePredicateContext(parser, ctx) {
+ PredicateContext.call(this, parser);
+ PredicateContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+SoundsLikePredicateContext.prototype = Object.create(PredicateContext.prototype);
+SoundsLikePredicateContext.prototype.constructor = SoundsLikePredicateContext;
+
+SqlParser.SoundsLikePredicateContext = SoundsLikePredicateContext;
+
+SoundsLikePredicateContext.prototype.predicate = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(PredicateContext);
+ } else {
+ return this.getTypedRuleContext(PredicateContext,i);
+ }
+};
+
+SoundsLikePredicateContext.prototype.SOUNDS = function() {
+ return this.getToken(SqlParser.SOUNDS, 0);
+};
+
+SoundsLikePredicateContext.prototype.LIKE = function() {
+ return this.getToken(SqlParser.LIKE, 0);
+};
+SoundsLikePredicateContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSoundsLikePredicate(this);
+ }
+};
+
+SoundsLikePredicateContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSoundsLikePredicate(this);
+ }
+};
+
+SoundsLikePredicateContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSoundsLikePredicate(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function ExpressionAtomPredicateContext(parser, ctx) {
+ PredicateContext.call(this, parser);
+ PredicateContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+ExpressionAtomPredicateContext.prototype = Object.create(PredicateContext.prototype);
+ExpressionAtomPredicateContext.prototype.constructor = ExpressionAtomPredicateContext;
+
+SqlParser.ExpressionAtomPredicateContext = ExpressionAtomPredicateContext;
+
+ExpressionAtomPredicateContext.prototype.expressionAtom = function() {
+ return this.getTypedRuleContext(ExpressionAtomContext,0);
+};
+
+ExpressionAtomPredicateContext.prototype.LOCAL_ID = function() {
+ return this.getToken(SqlParser.LOCAL_ID, 0);
+};
+
+ExpressionAtomPredicateContext.prototype.VAR_ASSIGN = function() {
+ return this.getToken(SqlParser.VAR_ASSIGN, 0);
+};
+ExpressionAtomPredicateContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterExpressionAtomPredicate(this);
+ }
+};
+
+ExpressionAtomPredicateContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitExpressionAtomPredicate(this);
+ }
+};
+
+ExpressionAtomPredicateContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitExpressionAtomPredicate(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function InPredicateContext(parser, ctx) {
+ PredicateContext.call(this, parser);
+ PredicateContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+InPredicateContext.prototype = Object.create(PredicateContext.prototype);
+InPredicateContext.prototype.constructor = InPredicateContext;
+
+SqlParser.InPredicateContext = InPredicateContext;
+
+InPredicateContext.prototype.predicate = function() {
+ return this.getTypedRuleContext(PredicateContext,0);
+};
+
+InPredicateContext.prototype.IN = function() {
+ return this.getToken(SqlParser.IN, 0);
+};
+
+InPredicateContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+InPredicateContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+InPredicateContext.prototype.selectStatement = function() {
+ return this.getTypedRuleContext(SelectStatementContext,0);
+};
+
+InPredicateContext.prototype.expressions = function() {
+ return this.getTypedRuleContext(ExpressionsContext,0);
+};
+
+InPredicateContext.prototype.NOT = function() {
+ return this.getToken(SqlParser.NOT, 0);
+};
+InPredicateContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterInPredicate(this);
+ }
+};
+
+InPredicateContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitInPredicate(this);
+ }
+};
+
+InPredicateContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitInPredicate(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function SubqueryComparasionPredicateContext(parser, ctx) {
+ PredicateContext.call(this, parser);
+ this.quantifier = null; // Token;
+ PredicateContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+SubqueryComparasionPredicateContext.prototype = Object.create(PredicateContext.prototype);
+SubqueryComparasionPredicateContext.prototype.constructor = SubqueryComparasionPredicateContext;
+
+SqlParser.SubqueryComparasionPredicateContext = SubqueryComparasionPredicateContext;
+
+SubqueryComparasionPredicateContext.prototype.predicate = function() {
+ return this.getTypedRuleContext(PredicateContext,0);
+};
+
+SubqueryComparasionPredicateContext.prototype.comparisonOperator = function() {
+ return this.getTypedRuleContext(ComparisonOperatorContext,0);
+};
+
+SubqueryComparasionPredicateContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+SubqueryComparasionPredicateContext.prototype.selectStatement = function() {
+ return this.getTypedRuleContext(SelectStatementContext,0);
+};
+
+SubqueryComparasionPredicateContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+SubqueryComparasionPredicateContext.prototype.ALL = function() {
+ return this.getToken(SqlParser.ALL, 0);
+};
+
+SubqueryComparasionPredicateContext.prototype.ANY = function() {
+ return this.getToken(SqlParser.ANY, 0);
+};
+
+SubqueryComparasionPredicateContext.prototype.SOME = function() {
+ return this.getToken(SqlParser.SOME, 0);
+};
+SubqueryComparasionPredicateContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSubqueryComparasionPredicate(this);
+ }
+};
+
+SubqueryComparasionPredicateContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSubqueryComparasionPredicate(this);
+ }
+};
+
+SubqueryComparasionPredicateContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSubqueryComparasionPredicate(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function BetweenPredicateContext(parser, ctx) {
+ PredicateContext.call(this, parser);
+ PredicateContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+BetweenPredicateContext.prototype = Object.create(PredicateContext.prototype);
+BetweenPredicateContext.prototype.constructor = BetweenPredicateContext;
+
+SqlParser.BetweenPredicateContext = BetweenPredicateContext;
+
+BetweenPredicateContext.prototype.predicate = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(PredicateContext);
+ } else {
+ return this.getTypedRuleContext(PredicateContext,i);
+ }
+};
+
+BetweenPredicateContext.prototype.BETWEEN = function() {
+ return this.getToken(SqlParser.BETWEEN, 0);
+};
+
+BetweenPredicateContext.prototype.AND = function() {
+ return this.getToken(SqlParser.AND, 0);
+};
+
+BetweenPredicateContext.prototype.NOT = function() {
+ return this.getToken(SqlParser.NOT, 0);
+};
+BetweenPredicateContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterBetweenPredicate(this);
+ }
+};
+
+BetweenPredicateContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitBetweenPredicate(this);
+ }
+};
+
+BetweenPredicateContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitBetweenPredicate(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function BinaryComparasionPredicateContext(parser, ctx) {
+ PredicateContext.call(this, parser);
+ this.left = null; // PredicateContext;
+ this.right = null; // PredicateContext;
+ PredicateContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+BinaryComparasionPredicateContext.prototype = Object.create(PredicateContext.prototype);
+BinaryComparasionPredicateContext.prototype.constructor = BinaryComparasionPredicateContext;
+
+SqlParser.BinaryComparasionPredicateContext = BinaryComparasionPredicateContext;
+
+BinaryComparasionPredicateContext.prototype.comparisonOperator = function() {
+ return this.getTypedRuleContext(ComparisonOperatorContext,0);
+};
+
+BinaryComparasionPredicateContext.prototype.predicate = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(PredicateContext);
+ } else {
+ return this.getTypedRuleContext(PredicateContext,i);
+ }
+};
+BinaryComparasionPredicateContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterBinaryComparasionPredicate(this);
+ }
+};
+
+BinaryComparasionPredicateContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitBinaryComparasionPredicate(this);
+ }
+};
+
+BinaryComparasionPredicateContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitBinaryComparasionPredicate(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function IsNullPredicateContext(parser, ctx) {
+ PredicateContext.call(this, parser);
+ PredicateContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+IsNullPredicateContext.prototype = Object.create(PredicateContext.prototype);
+IsNullPredicateContext.prototype.constructor = IsNullPredicateContext;
+
+SqlParser.IsNullPredicateContext = IsNullPredicateContext;
+
+IsNullPredicateContext.prototype.predicate = function() {
+ return this.getTypedRuleContext(PredicateContext,0);
+};
+
+IsNullPredicateContext.prototype.IS = function() {
+ return this.getToken(SqlParser.IS, 0);
+};
+
+IsNullPredicateContext.prototype.nullNotnull = function() {
+ return this.getTypedRuleContext(NullNotnullContext,0);
+};
+IsNullPredicateContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterIsNullPredicate(this);
+ }
+};
+
+IsNullPredicateContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitIsNullPredicate(this);
+ }
+};
+
+IsNullPredicateContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitIsNullPredicate(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function LikePredicateContext(parser, ctx) {
+ PredicateContext.call(this, parser);
+ PredicateContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+LikePredicateContext.prototype = Object.create(PredicateContext.prototype);
+LikePredicateContext.prototype.constructor = LikePredicateContext;
+
+SqlParser.LikePredicateContext = LikePredicateContext;
+
+LikePredicateContext.prototype.predicate = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(PredicateContext);
+ } else {
+ return this.getTypedRuleContext(PredicateContext,i);
+ }
+};
+
+LikePredicateContext.prototype.LIKE = function() {
+ return this.getToken(SqlParser.LIKE, 0);
+};
+
+LikePredicateContext.prototype.NOT = function() {
+ return this.getToken(SqlParser.NOT, 0);
+};
+
+LikePredicateContext.prototype.ESCAPE = function() {
+ return this.getToken(SqlParser.ESCAPE, 0);
+};
+
+LikePredicateContext.prototype.STRING_LITERAL = function() {
+ return this.getToken(SqlParser.STRING_LITERAL, 0);
+};
+LikePredicateContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterLikePredicate(this);
+ }
+};
+
+LikePredicateContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitLikePredicate(this);
+ }
+};
+
+LikePredicateContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitLikePredicate(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function RegexpPredicateContext(parser, ctx) {
+ PredicateContext.call(this, parser);
+ this.regex = null; // Token;
+ PredicateContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+RegexpPredicateContext.prototype = Object.create(PredicateContext.prototype);
+RegexpPredicateContext.prototype.constructor = RegexpPredicateContext;
+
+SqlParser.RegexpPredicateContext = RegexpPredicateContext;
+
+RegexpPredicateContext.prototype.predicate = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(PredicateContext);
+ } else {
+ return this.getTypedRuleContext(PredicateContext,i);
+ }
+};
+
+RegexpPredicateContext.prototype.REGEXP = function() {
+ return this.getToken(SqlParser.REGEXP, 0);
+};
+
+RegexpPredicateContext.prototype.RLIKE = function() {
+ return this.getToken(SqlParser.RLIKE, 0);
+};
+
+RegexpPredicateContext.prototype.NOT = function() {
+ return this.getToken(SqlParser.NOT, 0);
+};
+RegexpPredicateContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterRegexpPredicate(this);
+ }
+};
+
+RegexpPredicateContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitRegexpPredicate(this);
+ }
+};
+
+RegexpPredicateContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitRegexpPredicate(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+SqlParser.prototype.predicate = function(_p) {
+ if(_p===undefined) {
+ _p = 0;
+ }
+ var _parentctx = this._ctx;
+ var _parentState = this.state;
+ var localctx = new PredicateContext(this, this._ctx, _parentState);
+ var _prevctx = localctx;
+ var _startState = 604;
+ this.enterRecursionRule(localctx, 604, SqlParser.RULE_predicate, _p);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ localctx = new ExpressionAtomPredicateContext(this, localctx);
+ this._ctx = localctx;
+ _prevctx = localctx;
+
+ this.state = 6202;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,911,this._ctx);
+ if(la_===1) {
+ this.state = 6200;
+ this.match(SqlParser.LOCAL_ID);
+ this.state = 6201;
+ this.match(SqlParser.VAR_ASSIGN);
+
+ }
+ this.state = 6204;
+ this.expressionAtom(0);
+ this._ctx.stop = this._input.LT(-1);
+ this.state = 6263;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,919,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ if(this._parseListeners!==null) {
+ this.triggerExitRuleEvent();
+ }
+ _prevctx = localctx;
+ this.state = 6261;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,918,this._ctx);
+ switch(la_) {
+ case 1:
+ localctx = new BinaryComparasionPredicateContext(this, new PredicateContext(this, _parentctx, _parentState));
+ localctx.left = _prevctx;
+ this.pushNewRecursionContext(localctx, _startState, SqlParser.RULE_predicate);
+ this.state = 6206;
+ if (!( this.precpred(this._ctx, 7))) {
+ throw new antlr4.error.FailedPredicateException(this, "this.precpred(this._ctx, 7)");
+ }
+ this.state = 6207;
+ this.comparisonOperator();
+ this.state = 6208;
+ localctx.right = this.predicate(8);
+ break;
+
+ case 2:
+ localctx = new BetweenPredicateContext(this, new PredicateContext(this, _parentctx, _parentState));
+ this.pushNewRecursionContext(localctx, _startState, SqlParser.RULE_predicate);
+ this.state = 6210;
+ if (!( this.precpred(this._ctx, 5))) {
+ throw new antlr4.error.FailedPredicateException(this, "this.precpred(this._ctx, 5)");
+ }
+ this.state = 6212;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.NOT) {
+ this.state = 6211;
+ this.match(SqlParser.NOT);
+ }
+
+ this.state = 6214;
+ this.match(SqlParser.BETWEEN);
+ this.state = 6215;
+ this.predicate(0);
+ this.state = 6216;
+ this.match(SqlParser.AND);
+ this.state = 6217;
+ this.predicate(6);
+ break;
+
+ case 3:
+ localctx = new SoundsLikePredicateContext(this, new PredicateContext(this, _parentctx, _parentState));
+ this.pushNewRecursionContext(localctx, _startState, SqlParser.RULE_predicate);
+ this.state = 6219;
+ if (!( this.precpred(this._ctx, 4))) {
+ throw new antlr4.error.FailedPredicateException(this, "this.precpred(this._ctx, 4)");
+ }
+ this.state = 6220;
+ this.match(SqlParser.SOUNDS);
+ this.state = 6221;
+ this.match(SqlParser.LIKE);
+ this.state = 6222;
+ this.predicate(5);
+ break;
+
+ case 4:
+ localctx = new RegexpPredicateContext(this, new PredicateContext(this, _parentctx, _parentState));
+ this.pushNewRecursionContext(localctx, _startState, SqlParser.RULE_predicate);
+ this.state = 6223;
+ if (!( this.precpred(this._ctx, 2))) {
+ throw new antlr4.error.FailedPredicateException(this, "this.precpred(this._ctx, 2)");
+ }
+ this.state = 6225;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.NOT) {
+ this.state = 6224;
+ this.match(SqlParser.NOT);
+ }
+
+ this.state = 6227;
+ localctx.regex = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.REGEXP || _la===SqlParser.RLIKE)) {
+ localctx.regex = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 6228;
+ this.predicate(3);
+ break;
+
+ case 5:
+ localctx = new InPredicateContext(this, new PredicateContext(this, _parentctx, _parentState));
+ this.pushNewRecursionContext(localctx, _startState, SqlParser.RULE_predicate);
+ this.state = 6229;
+ if (!( this.precpred(this._ctx, 9))) {
+ throw new antlr4.error.FailedPredicateException(this, "this.precpred(this._ctx, 9)");
+ }
+ this.state = 6231;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.NOT) {
+ this.state = 6230;
+ this.match(SqlParser.NOT);
+ }
+
+ this.state = 6233;
+ this.match(SqlParser.IN);
+ this.state = 6234;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 6237;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,915,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 6235;
+ this.selectStatement();
+ break;
+
+ case 2:
+ this.state = 6236;
+ this.expressions();
+ break;
+
+ }
+ this.state = 6239;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+
+ case 6:
+ localctx = new IsNullPredicateContext(this, new PredicateContext(this, _parentctx, _parentState));
+ this.pushNewRecursionContext(localctx, _startState, SqlParser.RULE_predicate);
+ this.state = 6241;
+ if (!( this.precpred(this._ctx, 8))) {
+ throw new antlr4.error.FailedPredicateException(this, "this.precpred(this._ctx, 8)");
+ }
+ this.state = 6242;
+ this.match(SqlParser.IS);
+ this.state = 6243;
+ this.nullNotnull();
+ break;
+
+ case 7:
+ localctx = new SubqueryComparasionPredicateContext(this, new PredicateContext(this, _parentctx, _parentState));
+ this.pushNewRecursionContext(localctx, _startState, SqlParser.RULE_predicate);
+ this.state = 6244;
+ if (!( this.precpred(this._ctx, 6))) {
+ throw new antlr4.error.FailedPredicateException(this, "this.precpred(this._ctx, 6)");
+ }
+ this.state = 6245;
+ this.comparisonOperator();
+ this.state = 6246;
+ localctx.quantifier = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.ALL || _la===SqlParser.ANY || _la===SqlParser.SOME)) {
+ localctx.quantifier = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 6247;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 6248;
+ this.selectStatement();
+ this.state = 6249;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+
+ case 8:
+ localctx = new LikePredicateContext(this, new PredicateContext(this, _parentctx, _parentState));
+ this.pushNewRecursionContext(localctx, _startState, SqlParser.RULE_predicate);
+ this.state = 6251;
+ if (!( this.precpred(this._ctx, 3))) {
+ throw new antlr4.error.FailedPredicateException(this, "this.precpred(this._ctx, 3)");
+ }
+ this.state = 6253;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===SqlParser.NOT) {
+ this.state = 6252;
+ this.match(SqlParser.NOT);
+ }
+
+ this.state = 6255;
+ this.match(SqlParser.LIKE);
+ this.state = 6256;
+ this.predicate(0);
+ this.state = 6259;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,917,this._ctx);
+ if(la_===1) {
+ this.state = 6257;
+ this.match(SqlParser.ESCAPE);
+ this.state = 6258;
+ this.match(SqlParser.STRING_LITERAL);
+
+ }
+ break;
+
+ }
+ }
+ this.state = 6265;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,919,this._ctx);
+ }
+
+ } catch( error) {
+ if(error instanceof antlr4.error.RecognitionException) {
+ localctx.exception = error;
+ this._errHandler.reportError(this, error);
+ this._errHandler.recover(this, error);
+ } else {
+ throw error;
+ }
+ } finally {
+ this.unrollRecursionContexts(_parentctx)
+ }
+ return localctx;
+};
+
+
+function ExpressionAtomContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_expressionAtom;
+ return this;
+}
+
+ExpressionAtomContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+ExpressionAtomContext.prototype.constructor = ExpressionAtomContext;
+
+
+
+ExpressionAtomContext.prototype.copyFrom = function(ctx) {
+ antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx);
+};
+
+function UnaryExpressionAtomContext(parser, ctx) {
+ ExpressionAtomContext.call(this, parser);
+ ExpressionAtomContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+UnaryExpressionAtomContext.prototype = Object.create(ExpressionAtomContext.prototype);
+UnaryExpressionAtomContext.prototype.constructor = UnaryExpressionAtomContext;
+
+SqlParser.UnaryExpressionAtomContext = UnaryExpressionAtomContext;
+
+UnaryExpressionAtomContext.prototype.unaryOperator = function() {
+ return this.getTypedRuleContext(UnaryOperatorContext,0);
+};
+
+UnaryExpressionAtomContext.prototype.expressionAtom = function() {
+ return this.getTypedRuleContext(ExpressionAtomContext,0);
+};
+UnaryExpressionAtomContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterUnaryExpressionAtom(this);
+ }
+};
+
+UnaryExpressionAtomContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitUnaryExpressionAtom(this);
+ }
+};
+
+UnaryExpressionAtomContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitUnaryExpressionAtom(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function CollateExpressionAtomContext(parser, ctx) {
+ ExpressionAtomContext.call(this, parser);
+ ExpressionAtomContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+CollateExpressionAtomContext.prototype = Object.create(ExpressionAtomContext.prototype);
+CollateExpressionAtomContext.prototype.constructor = CollateExpressionAtomContext;
+
+SqlParser.CollateExpressionAtomContext = CollateExpressionAtomContext;
+
+CollateExpressionAtomContext.prototype.expressionAtom = function() {
+ return this.getTypedRuleContext(ExpressionAtomContext,0);
+};
+
+CollateExpressionAtomContext.prototype.COLLATE = function() {
+ return this.getToken(SqlParser.COLLATE, 0);
+};
+
+CollateExpressionAtomContext.prototype.collationName = function() {
+ return this.getTypedRuleContext(CollationNameContext,0);
+};
+CollateExpressionAtomContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterCollateExpressionAtom(this);
+ }
+};
+
+CollateExpressionAtomContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitCollateExpressionAtom(this);
+ }
+};
+
+CollateExpressionAtomContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitCollateExpressionAtom(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function SubqueryExpessionAtomContext(parser, ctx) {
+ ExpressionAtomContext.call(this, parser);
+ ExpressionAtomContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+SubqueryExpessionAtomContext.prototype = Object.create(ExpressionAtomContext.prototype);
+SubqueryExpessionAtomContext.prototype.constructor = SubqueryExpessionAtomContext;
+
+SqlParser.SubqueryExpessionAtomContext = SubqueryExpessionAtomContext;
+
+SubqueryExpessionAtomContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+SubqueryExpessionAtomContext.prototype.selectStatement = function() {
+ return this.getTypedRuleContext(SelectStatementContext,0);
+};
+
+SubqueryExpessionAtomContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+SubqueryExpessionAtomContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterSubqueryExpessionAtom(this);
+ }
+};
+
+SubqueryExpessionAtomContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitSubqueryExpessionAtom(this);
+ }
+};
+
+SubqueryExpessionAtomContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitSubqueryExpessionAtom(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function MysqlVariableExpressionAtomContext(parser, ctx) {
+ ExpressionAtomContext.call(this, parser);
+ ExpressionAtomContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+MysqlVariableExpressionAtomContext.prototype = Object.create(ExpressionAtomContext.prototype);
+MysqlVariableExpressionAtomContext.prototype.constructor = MysqlVariableExpressionAtomContext;
+
+SqlParser.MysqlVariableExpressionAtomContext = MysqlVariableExpressionAtomContext;
+
+MysqlVariableExpressionAtomContext.prototype.mysqlVariable = function() {
+ return this.getTypedRuleContext(MysqlVariableContext,0);
+};
+MysqlVariableExpressionAtomContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterMysqlVariableExpressionAtom(this);
+ }
+};
+
+MysqlVariableExpressionAtomContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitMysqlVariableExpressionAtom(this);
+ }
+};
+
+MysqlVariableExpressionAtomContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitMysqlVariableExpressionAtom(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function NestedExpressionAtomContext(parser, ctx) {
+ ExpressionAtomContext.call(this, parser);
+ ExpressionAtomContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+NestedExpressionAtomContext.prototype = Object.create(ExpressionAtomContext.prototype);
+NestedExpressionAtomContext.prototype.constructor = NestedExpressionAtomContext;
+
+SqlParser.NestedExpressionAtomContext = NestedExpressionAtomContext;
+
+NestedExpressionAtomContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+NestedExpressionAtomContext.prototype.expression = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ExpressionContext);
+ } else {
+ return this.getTypedRuleContext(ExpressionContext,i);
+ }
+};
+
+NestedExpressionAtomContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+NestedExpressionAtomContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+NestedExpressionAtomContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterNestedExpressionAtom(this);
+ }
+};
+
+NestedExpressionAtomContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitNestedExpressionAtom(this);
+ }
+};
+
+NestedExpressionAtomContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitNestedExpressionAtom(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function NestedRowExpressionAtomContext(parser, ctx) {
+ ExpressionAtomContext.call(this, parser);
+ ExpressionAtomContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+NestedRowExpressionAtomContext.prototype = Object.create(ExpressionAtomContext.prototype);
+NestedRowExpressionAtomContext.prototype.constructor = NestedRowExpressionAtomContext;
+
+SqlParser.NestedRowExpressionAtomContext = NestedRowExpressionAtomContext;
+
+NestedRowExpressionAtomContext.prototype.ROW = function() {
+ return this.getToken(SqlParser.ROW, 0);
+};
+
+NestedRowExpressionAtomContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+NestedRowExpressionAtomContext.prototype.expression = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ExpressionContext);
+ } else {
+ return this.getTypedRuleContext(ExpressionContext,i);
+ }
+};
+
+NestedRowExpressionAtomContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+
+NestedRowExpressionAtomContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.COMMA);
+ } else {
+ return this.getToken(SqlParser.COMMA, i);
+ }
+};
+
+NestedRowExpressionAtomContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterNestedRowExpressionAtom(this);
+ }
+};
+
+NestedRowExpressionAtomContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitNestedRowExpressionAtom(this);
+ }
+};
+
+NestedRowExpressionAtomContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitNestedRowExpressionAtom(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function MathExpressionAtomContext(parser, ctx) {
+ ExpressionAtomContext.call(this, parser);
+ this.left = null; // ExpressionAtomContext;
+ this.right = null; // ExpressionAtomContext;
+ ExpressionAtomContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+MathExpressionAtomContext.prototype = Object.create(ExpressionAtomContext.prototype);
+MathExpressionAtomContext.prototype.constructor = MathExpressionAtomContext;
+
+SqlParser.MathExpressionAtomContext = MathExpressionAtomContext;
+
+MathExpressionAtomContext.prototype.mathOperator = function() {
+ return this.getTypedRuleContext(MathOperatorContext,0);
+};
+
+MathExpressionAtomContext.prototype.expressionAtom = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ExpressionAtomContext);
+ } else {
+ return this.getTypedRuleContext(ExpressionAtomContext,i);
+ }
+};
+MathExpressionAtomContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterMathExpressionAtom(this);
+ }
+};
+
+MathExpressionAtomContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitMathExpressionAtom(this);
+ }
+};
+
+MathExpressionAtomContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitMathExpressionAtom(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function IntervalExpressionAtomContext(parser, ctx) {
+ ExpressionAtomContext.call(this, parser);
+ ExpressionAtomContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+IntervalExpressionAtomContext.prototype = Object.create(ExpressionAtomContext.prototype);
+IntervalExpressionAtomContext.prototype.constructor = IntervalExpressionAtomContext;
+
+SqlParser.IntervalExpressionAtomContext = IntervalExpressionAtomContext;
+
+IntervalExpressionAtomContext.prototype.INTERVAL = function() {
+ return this.getToken(SqlParser.INTERVAL, 0);
+};
+
+IntervalExpressionAtomContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+IntervalExpressionAtomContext.prototype.intervalType = function() {
+ return this.getTypedRuleContext(IntervalTypeContext,0);
+};
+IntervalExpressionAtomContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterIntervalExpressionAtom(this);
+ }
+};
+
+IntervalExpressionAtomContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitIntervalExpressionAtom(this);
+ }
+};
+
+IntervalExpressionAtomContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitIntervalExpressionAtom(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function ExistsExpessionAtomContext(parser, ctx) {
+ ExpressionAtomContext.call(this, parser);
+ ExpressionAtomContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+ExistsExpessionAtomContext.prototype = Object.create(ExpressionAtomContext.prototype);
+ExistsExpessionAtomContext.prototype.constructor = ExistsExpessionAtomContext;
+
+SqlParser.ExistsExpessionAtomContext = ExistsExpessionAtomContext;
+
+ExistsExpessionAtomContext.prototype.EXISTS = function() {
+ return this.getToken(SqlParser.EXISTS, 0);
+};
+
+ExistsExpessionAtomContext.prototype.LR_BRACKET = function() {
+ return this.getToken(SqlParser.LR_BRACKET, 0);
+};
+
+ExistsExpessionAtomContext.prototype.selectStatement = function() {
+ return this.getTypedRuleContext(SelectStatementContext,0);
+};
+
+ExistsExpessionAtomContext.prototype.RR_BRACKET = function() {
+ return this.getToken(SqlParser.RR_BRACKET, 0);
+};
+ExistsExpessionAtomContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterExistsExpessionAtom(this);
+ }
+};
+
+ExistsExpessionAtomContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitExistsExpessionAtom(this);
+ }
+};
+
+ExistsExpessionAtomContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitExistsExpessionAtom(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function ConstantExpressionAtomContext(parser, ctx) {
+ ExpressionAtomContext.call(this, parser);
+ ExpressionAtomContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+ConstantExpressionAtomContext.prototype = Object.create(ExpressionAtomContext.prototype);
+ConstantExpressionAtomContext.prototype.constructor = ConstantExpressionAtomContext;
+
+SqlParser.ConstantExpressionAtomContext = ConstantExpressionAtomContext;
+
+ConstantExpressionAtomContext.prototype.constant = function() {
+ return this.getTypedRuleContext(ConstantContext,0);
+};
+ConstantExpressionAtomContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterConstantExpressionAtom(this);
+ }
+};
+
+ConstantExpressionAtomContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitConstantExpressionAtom(this);
+ }
+};
+
+ConstantExpressionAtomContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitConstantExpressionAtom(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function FunctionCallExpressionAtomContext(parser, ctx) {
+ ExpressionAtomContext.call(this, parser);
+ ExpressionAtomContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+FunctionCallExpressionAtomContext.prototype = Object.create(ExpressionAtomContext.prototype);
+FunctionCallExpressionAtomContext.prototype.constructor = FunctionCallExpressionAtomContext;
+
+SqlParser.FunctionCallExpressionAtomContext = FunctionCallExpressionAtomContext;
+
+FunctionCallExpressionAtomContext.prototype.functionCall = function() {
+ return this.getTypedRuleContext(FunctionCallContext,0);
+};
+FunctionCallExpressionAtomContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterFunctionCallExpressionAtom(this);
+ }
+};
+
+FunctionCallExpressionAtomContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitFunctionCallExpressionAtom(this);
+ }
+};
+
+FunctionCallExpressionAtomContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitFunctionCallExpressionAtom(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function BinaryExpressionAtomContext(parser, ctx) {
+ ExpressionAtomContext.call(this, parser);
+ ExpressionAtomContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+BinaryExpressionAtomContext.prototype = Object.create(ExpressionAtomContext.prototype);
+BinaryExpressionAtomContext.prototype.constructor = BinaryExpressionAtomContext;
+
+SqlParser.BinaryExpressionAtomContext = BinaryExpressionAtomContext;
+
+BinaryExpressionAtomContext.prototype.BINARY = function() {
+ return this.getToken(SqlParser.BINARY, 0);
+};
+
+BinaryExpressionAtomContext.prototype.expressionAtom = function() {
+ return this.getTypedRuleContext(ExpressionAtomContext,0);
+};
+BinaryExpressionAtomContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterBinaryExpressionAtom(this);
+ }
+};
+
+BinaryExpressionAtomContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitBinaryExpressionAtom(this);
+ }
+};
+
+BinaryExpressionAtomContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitBinaryExpressionAtom(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function FullColumnNameExpressionAtomContext(parser, ctx) {
+ ExpressionAtomContext.call(this, parser);
+ ExpressionAtomContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+FullColumnNameExpressionAtomContext.prototype = Object.create(ExpressionAtomContext.prototype);
+FullColumnNameExpressionAtomContext.prototype.constructor = FullColumnNameExpressionAtomContext;
+
+SqlParser.FullColumnNameExpressionAtomContext = FullColumnNameExpressionAtomContext;
+
+FullColumnNameExpressionAtomContext.prototype.fullColumnName = function() {
+ return this.getTypedRuleContext(FullColumnNameContext,0);
+};
+FullColumnNameExpressionAtomContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterFullColumnNameExpressionAtom(this);
+ }
+};
+
+FullColumnNameExpressionAtomContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitFullColumnNameExpressionAtom(this);
+ }
+};
+
+FullColumnNameExpressionAtomContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitFullColumnNameExpressionAtom(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function BitExpressionAtomContext(parser, ctx) {
+ ExpressionAtomContext.call(this, parser);
+ this.left = null; // ExpressionAtomContext;
+ this.right = null; // ExpressionAtomContext;
+ ExpressionAtomContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+BitExpressionAtomContext.prototype = Object.create(ExpressionAtomContext.prototype);
+BitExpressionAtomContext.prototype.constructor = BitExpressionAtomContext;
+
+SqlParser.BitExpressionAtomContext = BitExpressionAtomContext;
+
+BitExpressionAtomContext.prototype.bitOperator = function() {
+ return this.getTypedRuleContext(BitOperatorContext,0);
+};
+
+BitExpressionAtomContext.prototype.expressionAtom = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ExpressionAtomContext);
+ } else {
+ return this.getTypedRuleContext(ExpressionAtomContext,i);
+ }
+};
+BitExpressionAtomContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterBitExpressionAtom(this);
+ }
+};
+
+BitExpressionAtomContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitBitExpressionAtom(this);
+ }
+};
+
+BitExpressionAtomContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitBitExpressionAtom(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+SqlParser.prototype.expressionAtom = function(_p) {
+ if(_p===undefined) {
+ _p = 0;
+ }
+ var _parentctx = this._ctx;
+ var _parentState = this.state;
+ var localctx = new ExpressionAtomContext(this, this._ctx, _parentState);
+ var _prevctx = localctx;
+ var _startState = 606;
+ this.enterRecursionRule(localctx, 606, SqlParser.RULE_expressionAtom, _p);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6311;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,922,this._ctx);
+ switch(la_) {
+ case 1:
+ localctx = new ConstantExpressionAtomContext(this, localctx);
+ this._ctx = localctx;
+ _prevctx = localctx;
+
+ this.state = 6267;
+ this.constant();
+ break;
+
+ case 2:
+ localctx = new FullColumnNameExpressionAtomContext(this, localctx);
+ this._ctx = localctx;
+ _prevctx = localctx;
+ this.state = 6268;
+ this.fullColumnName();
+ break;
+
+ case 3:
+ localctx = new FunctionCallExpressionAtomContext(this, localctx);
+ this._ctx = localctx;
+ _prevctx = localctx;
+ this.state = 6269;
+ this.functionCall();
+ break;
+
+ case 4:
+ localctx = new MysqlVariableExpressionAtomContext(this, localctx);
+ this._ctx = localctx;
+ _prevctx = localctx;
+ this.state = 6270;
+ this.mysqlVariable();
+ break;
+
+ case 5:
+ localctx = new UnaryExpressionAtomContext(this, localctx);
+ this._ctx = localctx;
+ _prevctx = localctx;
+ this.state = 6271;
+ this.unaryOperator();
+ this.state = 6272;
+ this.expressionAtom(9);
+ break;
+
+ case 6:
+ localctx = new BinaryExpressionAtomContext(this, localctx);
+ this._ctx = localctx;
+ _prevctx = localctx;
+ this.state = 6274;
+ this.match(SqlParser.BINARY);
+ this.state = 6275;
+ this.expressionAtom(8);
+ break;
+
+ case 7:
+ localctx = new NestedExpressionAtomContext(this, localctx);
+ this._ctx = localctx;
+ _prevctx = localctx;
+ this.state = 6276;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 6277;
+ this.expression(0);
+ this.state = 6282;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===SqlParser.COMMA) {
+ this.state = 6278;
+ this.match(SqlParser.COMMA);
+ this.state = 6279;
+ this.expression(0);
+ this.state = 6284;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 6285;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+
+ case 8:
+ localctx = new NestedRowExpressionAtomContext(this, localctx);
+ this._ctx = localctx;
+ _prevctx = localctx;
+ this.state = 6287;
+ this.match(SqlParser.ROW);
+ this.state = 6288;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 6289;
+ this.expression(0);
+ this.state = 6292;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 6290;
+ this.match(SqlParser.COMMA);
+ this.state = 6291;
+ this.expression(0);
+ this.state = 6294;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(_la===SqlParser.COMMA);
+ this.state = 6296;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+
+ case 9:
+ localctx = new ExistsExpessionAtomContext(this, localctx);
+ this._ctx = localctx;
+ _prevctx = localctx;
+ this.state = 6298;
+ this.match(SqlParser.EXISTS);
+ this.state = 6299;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 6300;
+ this.selectStatement();
+ this.state = 6301;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+
+ case 10:
+ localctx = new SubqueryExpessionAtomContext(this, localctx);
+ this._ctx = localctx;
+ _prevctx = localctx;
+ this.state = 6303;
+ this.match(SqlParser.LR_BRACKET);
+ this.state = 6304;
+ this.selectStatement();
+ this.state = 6305;
+ this.match(SqlParser.RR_BRACKET);
+ break;
+
+ case 11:
+ localctx = new IntervalExpressionAtomContext(this, localctx);
+ this._ctx = localctx;
+ _prevctx = localctx;
+ this.state = 6307;
+ this.match(SqlParser.INTERVAL);
+ this.state = 6308;
+ this.expression(0);
+ this.state = 6309;
+ this.intervalType();
+ break;
+
+ }
+ this._ctx.stop = this._input.LT(-1);
+ this.state = 6326;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,924,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ if(this._parseListeners!==null) {
+ this.triggerExitRuleEvent();
+ }
+ _prevctx = localctx;
+ this.state = 6324;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,923,this._ctx);
+ switch(la_) {
+ case 1:
+ localctx = new BitExpressionAtomContext(this, new ExpressionAtomContext(this, _parentctx, _parentState));
+ localctx.left = _prevctx;
+ this.pushNewRecursionContext(localctx, _startState, SqlParser.RULE_expressionAtom);
+ this.state = 6313;
+ if (!( this.precpred(this._ctx, 2))) {
+ throw new antlr4.error.FailedPredicateException(this, "this.precpred(this._ctx, 2)");
+ }
+ this.state = 6314;
+ this.bitOperator();
+ this.state = 6315;
+ localctx.right = this.expressionAtom(3);
+ break;
+
+ case 2:
+ localctx = new MathExpressionAtomContext(this, new ExpressionAtomContext(this, _parentctx, _parentState));
+ localctx.left = _prevctx;
+ this.pushNewRecursionContext(localctx, _startState, SqlParser.RULE_expressionAtom);
+ this.state = 6317;
+ if (!( this.precpred(this._ctx, 1))) {
+ throw new antlr4.error.FailedPredicateException(this, "this.precpred(this._ctx, 1)");
+ }
+ this.state = 6318;
+ this.mathOperator();
+ this.state = 6319;
+ localctx.right = this.expressionAtom(2);
+ break;
+
+ case 3:
+ localctx = new CollateExpressionAtomContext(this, new ExpressionAtomContext(this, _parentctx, _parentState));
+ this.pushNewRecursionContext(localctx, _startState, SqlParser.RULE_expressionAtom);
+ this.state = 6321;
+ if (!( this.precpred(this._ctx, 11))) {
+ throw new antlr4.error.FailedPredicateException(this, "this.precpred(this._ctx, 11)");
+ }
+ this.state = 6322;
+ this.match(SqlParser.COLLATE);
+ this.state = 6323;
+ this.collationName();
+ break;
+
+ }
+ }
+ this.state = 6328;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,924,this._ctx);
+ }
+
+ } catch( error) {
+ if(error instanceof antlr4.error.RecognitionException) {
+ localctx.exception = error;
+ this._errHandler.reportError(this, error);
+ this._errHandler.recover(this, error);
+ } else {
+ throw error;
+ }
+ } finally {
+ this.unrollRecursionContexts(_parentctx)
+ }
+ return localctx;
+};
+
+
+function UnaryOperatorContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_unaryOperator;
+ return this;
+}
+
+UnaryOperatorContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+UnaryOperatorContext.prototype.constructor = UnaryOperatorContext;
+
+UnaryOperatorContext.prototype.EXCLAMATION_SYMBOL = function() {
+ return this.getToken(SqlParser.EXCLAMATION_SYMBOL, 0);
+};
+
+UnaryOperatorContext.prototype.BIT_NOT_OP = function() {
+ return this.getToken(SqlParser.BIT_NOT_OP, 0);
+};
+
+UnaryOperatorContext.prototype.PLUS = function() {
+ return this.getToken(SqlParser.PLUS, 0);
+};
+
+UnaryOperatorContext.prototype.MINUS = function() {
+ return this.getToken(SqlParser.MINUS, 0);
+};
+
+UnaryOperatorContext.prototype.NOT = function() {
+ return this.getToken(SqlParser.NOT, 0);
+};
+
+UnaryOperatorContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterUnaryOperator(this);
+ }
+};
+
+UnaryOperatorContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitUnaryOperator(this);
+ }
+};
+
+UnaryOperatorContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitUnaryOperator(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.UnaryOperatorContext = UnaryOperatorContext;
+
+SqlParser.prototype.unaryOperator = function() {
+
+ var localctx = new UnaryOperatorContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 608, SqlParser.RULE_unaryOperator);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6329;
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.NOT || ((((_la - 1006)) & ~0x1f) == 0 && ((1 << (_la - 1006)) & ((1 << (SqlParser.PLUS - 1006)) | (1 << (SqlParser.MINUS - 1006)) | (1 << (SqlParser.EXCLAMATION_SYMBOL - 1006)) | (1 << (SqlParser.BIT_NOT_OP - 1006)))) !== 0))) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function ComparisonOperatorContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_comparisonOperator;
+ return this;
+}
+
+ComparisonOperatorContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+ComparisonOperatorContext.prototype.constructor = ComparisonOperatorContext;
+
+ComparisonOperatorContext.prototype.EQUAL_SYMBOL = function() {
+ return this.getToken(SqlParser.EQUAL_SYMBOL, 0);
+};
+
+ComparisonOperatorContext.prototype.GREATER_SYMBOL = function() {
+ return this.getToken(SqlParser.GREATER_SYMBOL, 0);
+};
+
+ComparisonOperatorContext.prototype.LESS_SYMBOL = function() {
+ return this.getToken(SqlParser.LESS_SYMBOL, 0);
+};
+
+ComparisonOperatorContext.prototype.EXCLAMATION_SYMBOL = function() {
+ return this.getToken(SqlParser.EXCLAMATION_SYMBOL, 0);
+};
+
+ComparisonOperatorContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterComparisonOperator(this);
+ }
+};
+
+ComparisonOperatorContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitComparisonOperator(this);
+ }
+};
+
+ComparisonOperatorContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitComparisonOperator(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.ComparisonOperatorContext = ComparisonOperatorContext;
+
+SqlParser.prototype.comparisonOperator = function() {
+
+ var localctx = new ComparisonOperatorContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 610, SqlParser.RULE_comparisonOperator);
+ try {
+ this.state = 6345;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,925,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6331;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 6332;
+ this.match(SqlParser.GREATER_SYMBOL);
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 6333;
+ this.match(SqlParser.LESS_SYMBOL);
+ break;
+
+ case 4:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 6334;
+ this.match(SqlParser.LESS_SYMBOL);
+ this.state = 6335;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ break;
+
+ case 5:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 6336;
+ this.match(SqlParser.GREATER_SYMBOL);
+ this.state = 6337;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ break;
+
+ case 6:
+ this.enterOuterAlt(localctx, 6);
+ this.state = 6338;
+ this.match(SqlParser.LESS_SYMBOL);
+ this.state = 6339;
+ this.match(SqlParser.GREATER_SYMBOL);
+ break;
+
+ case 7:
+ this.enterOuterAlt(localctx, 7);
+ this.state = 6340;
+ this.match(SqlParser.EXCLAMATION_SYMBOL);
+ this.state = 6341;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ break;
+
+ case 8:
+ this.enterOuterAlt(localctx, 8);
+ this.state = 6342;
+ this.match(SqlParser.LESS_SYMBOL);
+ this.state = 6343;
+ this.match(SqlParser.EQUAL_SYMBOL);
+ this.state = 6344;
+ this.match(SqlParser.GREATER_SYMBOL);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function LogicalOperatorContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_logicalOperator;
+ return this;
+}
+
+LogicalOperatorContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+LogicalOperatorContext.prototype.constructor = LogicalOperatorContext;
+
+LogicalOperatorContext.prototype.AND = function() {
+ return this.getToken(SqlParser.AND, 0);
+};
+
+LogicalOperatorContext.prototype.BIT_AND_OP = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.BIT_AND_OP);
+ } else {
+ return this.getToken(SqlParser.BIT_AND_OP, i);
+ }
+};
+
+
+LogicalOperatorContext.prototype.XOR = function() {
+ return this.getToken(SqlParser.XOR, 0);
+};
+
+LogicalOperatorContext.prototype.OR = function() {
+ return this.getToken(SqlParser.OR, 0);
+};
+
+LogicalOperatorContext.prototype.BIT_OR_OP = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.BIT_OR_OP);
+ } else {
+ return this.getToken(SqlParser.BIT_OR_OP, i);
+ }
+};
+
+
+LogicalOperatorContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterLogicalOperator(this);
+ }
+};
+
+LogicalOperatorContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitLogicalOperator(this);
+ }
+};
+
+LogicalOperatorContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitLogicalOperator(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.LogicalOperatorContext = LogicalOperatorContext;
+
+SqlParser.prototype.logicalOperator = function() {
+
+ var localctx = new LogicalOperatorContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 612, SqlParser.RULE_logicalOperator);
+ try {
+ this.state = 6354;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.AND:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6347;
+ this.match(SqlParser.AND);
+ break;
+ case SqlParser.BIT_AND_OP:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 6348;
+ this.match(SqlParser.BIT_AND_OP);
+ this.state = 6349;
+ this.match(SqlParser.BIT_AND_OP);
+ break;
+ case SqlParser.XOR:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 6350;
+ this.match(SqlParser.XOR);
+ break;
+ case SqlParser.OR:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 6351;
+ this.match(SqlParser.OR);
+ break;
+ case SqlParser.BIT_OR_OP:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 6352;
+ this.match(SqlParser.BIT_OR_OP);
+ this.state = 6353;
+ this.match(SqlParser.BIT_OR_OP);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function BitOperatorContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_bitOperator;
+ return this;
+}
+
+BitOperatorContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+BitOperatorContext.prototype.constructor = BitOperatorContext;
+
+BitOperatorContext.prototype.LESS_SYMBOL = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.LESS_SYMBOL);
+ } else {
+ return this.getToken(SqlParser.LESS_SYMBOL, i);
+ }
+};
+
+
+BitOperatorContext.prototype.GREATER_SYMBOL = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(SqlParser.GREATER_SYMBOL);
+ } else {
+ return this.getToken(SqlParser.GREATER_SYMBOL, i);
+ }
+};
+
+
+BitOperatorContext.prototype.BIT_AND_OP = function() {
+ return this.getToken(SqlParser.BIT_AND_OP, 0);
+};
+
+BitOperatorContext.prototype.BIT_XOR_OP = function() {
+ return this.getToken(SqlParser.BIT_XOR_OP, 0);
+};
+
+BitOperatorContext.prototype.BIT_OR_OP = function() {
+ return this.getToken(SqlParser.BIT_OR_OP, 0);
+};
+
+BitOperatorContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterBitOperator(this);
+ }
+};
+
+BitOperatorContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitBitOperator(this);
+ }
+};
+
+BitOperatorContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitBitOperator(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.BitOperatorContext = BitOperatorContext;
+
+SqlParser.prototype.bitOperator = function() {
+
+ var localctx = new BitOperatorContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 614, SqlParser.RULE_bitOperator);
+ try {
+ this.state = 6363;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case SqlParser.LESS_SYMBOL:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6356;
+ this.match(SqlParser.LESS_SYMBOL);
+ this.state = 6357;
+ this.match(SqlParser.LESS_SYMBOL);
+ break;
+ case SqlParser.GREATER_SYMBOL:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 6358;
+ this.match(SqlParser.GREATER_SYMBOL);
+ this.state = 6359;
+ this.match(SqlParser.GREATER_SYMBOL);
+ break;
+ case SqlParser.BIT_AND_OP:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 6360;
+ this.match(SqlParser.BIT_AND_OP);
+ break;
+ case SqlParser.BIT_XOR_OP:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 6361;
+ this.match(SqlParser.BIT_XOR_OP);
+ break;
+ case SqlParser.BIT_OR_OP:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 6362;
+ this.match(SqlParser.BIT_OR_OP);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function MathOperatorContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_mathOperator;
+ return this;
+}
+
+MathOperatorContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+MathOperatorContext.prototype.constructor = MathOperatorContext;
+
+MathOperatorContext.prototype.STAR = function() {
+ return this.getToken(SqlParser.STAR, 0);
+};
+
+MathOperatorContext.prototype.DIVIDE = function() {
+ return this.getToken(SqlParser.DIVIDE, 0);
+};
+
+MathOperatorContext.prototype.MODULE = function() {
+ return this.getToken(SqlParser.MODULE, 0);
+};
+
+MathOperatorContext.prototype.DIV = function() {
+ return this.getToken(SqlParser.DIV, 0);
+};
+
+MathOperatorContext.prototype.MOD = function() {
+ return this.getToken(SqlParser.MOD, 0);
+};
+
+MathOperatorContext.prototype.PLUS = function() {
+ return this.getToken(SqlParser.PLUS, 0);
+};
+
+MathOperatorContext.prototype.MINUS = function() {
+ return this.getToken(SqlParser.MINUS, 0);
+};
+
+MathOperatorContext.prototype.MINUSMINUS = function() {
+ return this.getToken(SqlParser.MINUSMINUS, 0);
+};
+
+MathOperatorContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterMathOperator(this);
+ }
+};
+
+MathOperatorContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitMathOperator(this);
+ }
+};
+
+MathOperatorContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitMathOperator(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.MathOperatorContext = MathOperatorContext;
+
+SqlParser.prototype.mathOperator = function() {
+
+ var localctx = new MathOperatorContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 616, SqlParser.RULE_mathOperator);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6365;
+ _la = this._input.LA(1);
+ if(!(((((_la - 1003)) & ~0x1f) == 0 && ((1 << (_la - 1003)) & ((1 << (SqlParser.STAR - 1003)) | (1 << (SqlParser.DIVIDE - 1003)) | (1 << (SqlParser.MODULE - 1003)) | (1 << (SqlParser.PLUS - 1003)) | (1 << (SqlParser.MINUSMINUS - 1003)) | (1 << (SqlParser.MINUS - 1003)) | (1 << (SqlParser.DIV - 1003)) | (1 << (SqlParser.MOD - 1003)))) !== 0))) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function CharsetNameBaseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_charsetNameBase;
+ return this;
+}
+
+CharsetNameBaseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+CharsetNameBaseContext.prototype.constructor = CharsetNameBaseContext;
+
+CharsetNameBaseContext.prototype.ARMSCII8 = function() {
+ return this.getToken(SqlParser.ARMSCII8, 0);
+};
+
+CharsetNameBaseContext.prototype.ASCII = function() {
+ return this.getToken(SqlParser.ASCII, 0);
+};
+
+CharsetNameBaseContext.prototype.BIG5 = function() {
+ return this.getToken(SqlParser.BIG5, 0);
+};
+
+CharsetNameBaseContext.prototype.CP1250 = function() {
+ return this.getToken(SqlParser.CP1250, 0);
+};
+
+CharsetNameBaseContext.prototype.CP1251 = function() {
+ return this.getToken(SqlParser.CP1251, 0);
+};
+
+CharsetNameBaseContext.prototype.CP1256 = function() {
+ return this.getToken(SqlParser.CP1256, 0);
+};
+
+CharsetNameBaseContext.prototype.CP1257 = function() {
+ return this.getToken(SqlParser.CP1257, 0);
+};
+
+CharsetNameBaseContext.prototype.CP850 = function() {
+ return this.getToken(SqlParser.CP850, 0);
+};
+
+CharsetNameBaseContext.prototype.CP852 = function() {
+ return this.getToken(SqlParser.CP852, 0);
+};
+
+CharsetNameBaseContext.prototype.CP866 = function() {
+ return this.getToken(SqlParser.CP866, 0);
+};
+
+CharsetNameBaseContext.prototype.CP932 = function() {
+ return this.getToken(SqlParser.CP932, 0);
+};
+
+CharsetNameBaseContext.prototype.DEC8 = function() {
+ return this.getToken(SqlParser.DEC8, 0);
+};
+
+CharsetNameBaseContext.prototype.EUCJPMS = function() {
+ return this.getToken(SqlParser.EUCJPMS, 0);
+};
+
+CharsetNameBaseContext.prototype.EUCKR = function() {
+ return this.getToken(SqlParser.EUCKR, 0);
+};
+
+CharsetNameBaseContext.prototype.GB2312 = function() {
+ return this.getToken(SqlParser.GB2312, 0);
+};
+
+CharsetNameBaseContext.prototype.GBK = function() {
+ return this.getToken(SqlParser.GBK, 0);
+};
+
+CharsetNameBaseContext.prototype.GEOSTD8 = function() {
+ return this.getToken(SqlParser.GEOSTD8, 0);
+};
+
+CharsetNameBaseContext.prototype.GREEK = function() {
+ return this.getToken(SqlParser.GREEK, 0);
+};
+
+CharsetNameBaseContext.prototype.HEBREW = function() {
+ return this.getToken(SqlParser.HEBREW, 0);
+};
+
+CharsetNameBaseContext.prototype.HP8 = function() {
+ return this.getToken(SqlParser.HP8, 0);
+};
+
+CharsetNameBaseContext.prototype.KEYBCS2 = function() {
+ return this.getToken(SqlParser.KEYBCS2, 0);
+};
+
+CharsetNameBaseContext.prototype.KOI8R = function() {
+ return this.getToken(SqlParser.KOI8R, 0);
+};
+
+CharsetNameBaseContext.prototype.KOI8U = function() {
+ return this.getToken(SqlParser.KOI8U, 0);
+};
+
+CharsetNameBaseContext.prototype.LATIN1 = function() {
+ return this.getToken(SqlParser.LATIN1, 0);
+};
+
+CharsetNameBaseContext.prototype.LATIN2 = function() {
+ return this.getToken(SqlParser.LATIN2, 0);
+};
+
+CharsetNameBaseContext.prototype.LATIN5 = function() {
+ return this.getToken(SqlParser.LATIN5, 0);
+};
+
+CharsetNameBaseContext.prototype.LATIN7 = function() {
+ return this.getToken(SqlParser.LATIN7, 0);
+};
+
+CharsetNameBaseContext.prototype.MACCE = function() {
+ return this.getToken(SqlParser.MACCE, 0);
+};
+
+CharsetNameBaseContext.prototype.MACROMAN = function() {
+ return this.getToken(SqlParser.MACROMAN, 0);
+};
+
+CharsetNameBaseContext.prototype.SJIS = function() {
+ return this.getToken(SqlParser.SJIS, 0);
+};
+
+CharsetNameBaseContext.prototype.SWE7 = function() {
+ return this.getToken(SqlParser.SWE7, 0);
+};
+
+CharsetNameBaseContext.prototype.TIS620 = function() {
+ return this.getToken(SqlParser.TIS620, 0);
+};
+
+CharsetNameBaseContext.prototype.UCS2 = function() {
+ return this.getToken(SqlParser.UCS2, 0);
+};
+
+CharsetNameBaseContext.prototype.UJIS = function() {
+ return this.getToken(SqlParser.UJIS, 0);
+};
+
+CharsetNameBaseContext.prototype.UTF16 = function() {
+ return this.getToken(SqlParser.UTF16, 0);
+};
+
+CharsetNameBaseContext.prototype.UTF16LE = function() {
+ return this.getToken(SqlParser.UTF16LE, 0);
+};
+
+CharsetNameBaseContext.prototype.UTF32 = function() {
+ return this.getToken(SqlParser.UTF32, 0);
+};
+
+CharsetNameBaseContext.prototype.UTF8 = function() {
+ return this.getToken(SqlParser.UTF8, 0);
+};
+
+CharsetNameBaseContext.prototype.UTF8MB3 = function() {
+ return this.getToken(SqlParser.UTF8MB3, 0);
+};
+
+CharsetNameBaseContext.prototype.UTF8MB4 = function() {
+ return this.getToken(SqlParser.UTF8MB4, 0);
+};
+
+CharsetNameBaseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterCharsetNameBase(this);
+ }
+};
+
+CharsetNameBaseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitCharsetNameBase(this);
+ }
+};
+
+CharsetNameBaseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitCharsetNameBase(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.CharsetNameBaseContext = CharsetNameBaseContext;
+
+SqlParser.prototype.charsetNameBase = function() {
+
+ var localctx = new CharsetNameBaseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 618, SqlParser.RULE_charsetNameBase);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6367;
+ _la = this._input.LA(1);
+ if(!(((((_la - 637)) & ~0x1f) == 0 && ((1 << (_la - 637)) & ((1 << (SqlParser.ARMSCII8 - 637)) | (1 << (SqlParser.ASCII - 637)) | (1 << (SqlParser.BIG5 - 637)) | (1 << (SqlParser.CP1250 - 637)) | (1 << (SqlParser.CP1251 - 637)) | (1 << (SqlParser.CP1256 - 637)) | (1 << (SqlParser.CP1257 - 637)) | (1 << (SqlParser.CP850 - 637)) | (1 << (SqlParser.CP852 - 637)) | (1 << (SqlParser.CP866 - 637)) | (1 << (SqlParser.CP932 - 637)) | (1 << (SqlParser.DEC8 - 637)) | (1 << (SqlParser.EUCJPMS - 637)) | (1 << (SqlParser.EUCKR - 637)) | (1 << (SqlParser.GB2312 - 637)) | (1 << (SqlParser.GBK - 637)) | (1 << (SqlParser.GEOSTD8 - 637)) | (1 << (SqlParser.GREEK - 637)) | (1 << (SqlParser.HEBREW - 637)) | (1 << (SqlParser.HP8 - 637)) | (1 << (SqlParser.KEYBCS2 - 637)) | (1 << (SqlParser.KOI8R - 637)) | (1 << (SqlParser.KOI8U - 637)) | (1 << (SqlParser.LATIN1 - 637)) | (1 << (SqlParser.LATIN2 - 637)) | (1 << (SqlParser.LATIN5 - 637)) | (1 << (SqlParser.LATIN7 - 637)) | (1 << (SqlParser.MACCE - 637)) | (1 << (SqlParser.MACROMAN - 637)) | (1 << (SqlParser.SJIS - 637)) | (1 << (SqlParser.SWE7 - 637)) | (1 << (SqlParser.TIS620 - 637)))) !== 0) || ((((_la - 669)) & ~0x1f) == 0 && ((1 << (_la - 669)) & ((1 << (SqlParser.UCS2 - 669)) | (1 << (SqlParser.UJIS - 669)) | (1 << (SqlParser.UTF16 - 669)) | (1 << (SqlParser.UTF16LE - 669)) | (1 << (SqlParser.UTF32 - 669)) | (1 << (SqlParser.UTF8 - 669)) | (1 << (SqlParser.UTF8MB3 - 669)) | (1 << (SqlParser.UTF8MB4 - 669)))) !== 0))) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function TransactionLevelBaseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_transactionLevelBase;
+ return this;
+}
+
+TransactionLevelBaseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+TransactionLevelBaseContext.prototype.constructor = TransactionLevelBaseContext;
+
+TransactionLevelBaseContext.prototype.REPEATABLE = function() {
+ return this.getToken(SqlParser.REPEATABLE, 0);
+};
+
+TransactionLevelBaseContext.prototype.COMMITTED = function() {
+ return this.getToken(SqlParser.COMMITTED, 0);
+};
+
+TransactionLevelBaseContext.prototype.UNCOMMITTED = function() {
+ return this.getToken(SqlParser.UNCOMMITTED, 0);
+};
+
+TransactionLevelBaseContext.prototype.SERIALIZABLE = function() {
+ return this.getToken(SqlParser.SERIALIZABLE, 0);
+};
+
+TransactionLevelBaseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterTransactionLevelBase(this);
+ }
+};
+
+TransactionLevelBaseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitTransactionLevelBase(this);
+ }
+};
+
+TransactionLevelBaseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitTransactionLevelBase(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.TransactionLevelBaseContext = TransactionLevelBaseContext;
+
+SqlParser.prototype.transactionLevelBase = function() {
+
+ var localctx = new TransactionLevelBaseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 620, SqlParser.RULE_transactionLevelBase);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6369;
+ _la = this._input.LA(1);
+ if(!(((((_la - 689)) & ~0x1f) == 0 && ((1 << (_la - 689)) & ((1 << (SqlParser.REPEATABLE - 689)) | (1 << (SqlParser.COMMITTED - 689)) | (1 << (SqlParser.UNCOMMITTED - 689)) | (1 << (SqlParser.SERIALIZABLE - 689)))) !== 0))) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function PrivilegesBaseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_privilegesBase;
+ return this;
+}
+
+PrivilegesBaseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+PrivilegesBaseContext.prototype.constructor = PrivilegesBaseContext;
+
+PrivilegesBaseContext.prototype.TABLES = function() {
+ return this.getToken(SqlParser.TABLES, 0);
+};
+
+PrivilegesBaseContext.prototype.ROUTINE = function() {
+ return this.getToken(SqlParser.ROUTINE, 0);
+};
+
+PrivilegesBaseContext.prototype.EXECUTE = function() {
+ return this.getToken(SqlParser.EXECUTE, 0);
+};
+
+PrivilegesBaseContext.prototype.FILE = function() {
+ return this.getToken(SqlParser.FILE, 0);
+};
+
+PrivilegesBaseContext.prototype.PROCESS = function() {
+ return this.getToken(SqlParser.PROCESS, 0);
+};
+
+PrivilegesBaseContext.prototype.RELOAD = function() {
+ return this.getToken(SqlParser.RELOAD, 0);
+};
+
+PrivilegesBaseContext.prototype.SHUTDOWN = function() {
+ return this.getToken(SqlParser.SHUTDOWN, 0);
+};
+
+PrivilegesBaseContext.prototype.SUPER = function() {
+ return this.getToken(SqlParser.SUPER, 0);
+};
+
+PrivilegesBaseContext.prototype.PRIVILEGES = function() {
+ return this.getToken(SqlParser.PRIVILEGES, 0);
+};
+
+PrivilegesBaseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterPrivilegesBase(this);
+ }
+};
+
+PrivilegesBaseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitPrivilegesBase(this);
+ }
+};
+
+PrivilegesBaseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitPrivilegesBase(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.PrivilegesBaseContext = PrivilegesBaseContext;
+
+SqlParser.prototype.privilegesBase = function() {
+
+ var localctx = new PrivilegesBaseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 622, SqlParser.RULE_privilegesBase);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6371;
+ _la = this._input.LA(1);
+ if(!(((((_la - 602)) & ~0x1f) == 0 && ((1 << (_la - 602)) & ((1 << (SqlParser.TABLES - 602)) | (1 << (SqlParser.ROUTINE - 602)) | (1 << (SqlParser.EXECUTE - 602)) | (1 << (SqlParser.FILE - 602)) | (1 << (SqlParser.PROCESS - 602)) | (1 << (SqlParser.RELOAD - 602)) | (1 << (SqlParser.SHUTDOWN - 602)) | (1 << (SqlParser.SUPER - 602)) | (1 << (SqlParser.PRIVILEGES - 602)))) !== 0))) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function IntervalTypeBaseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_intervalTypeBase;
+ return this;
+}
+
+IntervalTypeBaseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+IntervalTypeBaseContext.prototype.constructor = IntervalTypeBaseContext;
+
+IntervalTypeBaseContext.prototype.QUARTER = function() {
+ return this.getToken(SqlParser.QUARTER, 0);
+};
+
+IntervalTypeBaseContext.prototype.MONTH = function() {
+ return this.getToken(SqlParser.MONTH, 0);
+};
+
+IntervalTypeBaseContext.prototype.DAY = function() {
+ return this.getToken(SqlParser.DAY, 0);
+};
+
+IntervalTypeBaseContext.prototype.HOUR = function() {
+ return this.getToken(SqlParser.HOUR, 0);
+};
+
+IntervalTypeBaseContext.prototype.MINUTE = function() {
+ return this.getToken(SqlParser.MINUTE, 0);
+};
+
+IntervalTypeBaseContext.prototype.WEEK = function() {
+ return this.getToken(SqlParser.WEEK, 0);
+};
+
+IntervalTypeBaseContext.prototype.SECOND = function() {
+ return this.getToken(SqlParser.SECOND, 0);
+};
+
+IntervalTypeBaseContext.prototype.MICROSECOND = function() {
+ return this.getToken(SqlParser.MICROSECOND, 0);
+};
+
+IntervalTypeBaseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterIntervalTypeBase(this);
+ }
+};
+
+IntervalTypeBaseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitIntervalTypeBase(this);
+ }
+};
+
+IntervalTypeBaseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitIntervalTypeBase(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.IntervalTypeBaseContext = IntervalTypeBaseContext;
+
+SqlParser.prototype.intervalTypeBase = function() {
+
+ var localctx = new IntervalTypeBaseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 624, SqlParser.RULE_intervalTypeBase);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6373;
+ _la = this._input.LA(1);
+ if(!(((((_la - 594)) & ~0x1f) == 0 && ((1 << (_la - 594)) & ((1 << (SqlParser.QUARTER - 594)) | (1 << (SqlParser.MONTH - 594)) | (1 << (SqlParser.DAY - 594)) | (1 << (SqlParser.HOUR - 594)) | (1 << (SqlParser.MINUTE - 594)) | (1 << (SqlParser.WEEK - 594)) | (1 << (SqlParser.SECOND - 594)) | (1 << (SqlParser.MICROSECOND - 594)))) !== 0))) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function DataTypeBaseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_dataTypeBase;
+ return this;
+}
+
+DataTypeBaseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+DataTypeBaseContext.prototype.constructor = DataTypeBaseContext;
+
+DataTypeBaseContext.prototype.DATE = function() {
+ return this.getToken(SqlParser.DATE, 0);
+};
+
+DataTypeBaseContext.prototype.TIME = function() {
+ return this.getToken(SqlParser.TIME, 0);
+};
+
+DataTypeBaseContext.prototype.TIMESTAMP = function() {
+ return this.getToken(SqlParser.TIMESTAMP, 0);
+};
+
+DataTypeBaseContext.prototype.DATETIME = function() {
+ return this.getToken(SqlParser.DATETIME, 0);
+};
+
+DataTypeBaseContext.prototype.YEAR = function() {
+ return this.getToken(SqlParser.YEAR, 0);
+};
+
+DataTypeBaseContext.prototype.ENUM = function() {
+ return this.getToken(SqlParser.ENUM, 0);
+};
+
+DataTypeBaseContext.prototype.TEXT = function() {
+ return this.getToken(SqlParser.TEXT, 0);
+};
+
+DataTypeBaseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterDataTypeBase(this);
+ }
+};
+
+DataTypeBaseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitDataTypeBase(this);
+ }
+};
+
+DataTypeBaseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitDataTypeBase(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.DataTypeBaseContext = DataTypeBaseContext;
+
+SqlParser.prototype.dataTypeBase = function() {
+
+ var localctx = new DataTypeBaseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 626, SqlParser.RULE_dataTypeBase);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6375;
+ _la = this._input.LA(1);
+ if(!(((((_la - 199)) & ~0x1f) == 0 && ((1 << (_la - 199)) & ((1 << (SqlParser.DATE - 199)) | (1 << (SqlParser.TIME - 199)) | (1 << (SqlParser.TIMESTAMP - 199)) | (1 << (SqlParser.DATETIME - 199)) | (1 << (SqlParser.YEAR - 199)) | (1 << (SqlParser.TEXT - 199)) | (1 << (SqlParser.ENUM - 199)))) !== 0))) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function KeywordsCanBeIdContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_keywordsCanBeId;
+ return this;
+}
+
+KeywordsCanBeIdContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+KeywordsCanBeIdContext.prototype.constructor = KeywordsCanBeIdContext;
+
+KeywordsCanBeIdContext.prototype.ACCOUNT = function() {
+ return this.getToken(SqlParser.ACCOUNT, 0);
+};
+
+KeywordsCanBeIdContext.prototype.ACTION = function() {
+ return this.getToken(SqlParser.ACTION, 0);
+};
+
+KeywordsCanBeIdContext.prototype.AFTER = function() {
+ return this.getToken(SqlParser.AFTER, 0);
+};
+
+KeywordsCanBeIdContext.prototype.AGGREGATE = function() {
+ return this.getToken(SqlParser.AGGREGATE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.ALGORITHM = function() {
+ return this.getToken(SqlParser.ALGORITHM, 0);
+};
+
+KeywordsCanBeIdContext.prototype.ANY = function() {
+ return this.getToken(SqlParser.ANY, 0);
+};
+
+KeywordsCanBeIdContext.prototype.AT = function() {
+ return this.getToken(SqlParser.AT, 0);
+};
+
+KeywordsCanBeIdContext.prototype.AUDIT_ADMIN = function() {
+ return this.getToken(SqlParser.AUDIT_ADMIN, 0);
+};
+
+KeywordsCanBeIdContext.prototype.AUTHORS = function() {
+ return this.getToken(SqlParser.AUTHORS, 0);
+};
+
+KeywordsCanBeIdContext.prototype.AUTOCOMMIT = function() {
+ return this.getToken(SqlParser.AUTOCOMMIT, 0);
+};
+
+KeywordsCanBeIdContext.prototype.AUTOEXTEND_SIZE = function() {
+ return this.getToken(SqlParser.AUTOEXTEND_SIZE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.AUTO_INCREMENT = function() {
+ return this.getToken(SqlParser.AUTO_INCREMENT, 0);
+};
+
+KeywordsCanBeIdContext.prototype.AVG_ROW_LENGTH = function() {
+ return this.getToken(SqlParser.AVG_ROW_LENGTH, 0);
+};
+
+KeywordsCanBeIdContext.prototype.BACKUP_ADMIN = function() {
+ return this.getToken(SqlParser.BACKUP_ADMIN, 0);
+};
+
+KeywordsCanBeIdContext.prototype.BEGIN = function() {
+ return this.getToken(SqlParser.BEGIN, 0);
+};
+
+KeywordsCanBeIdContext.prototype.BINLOG = function() {
+ return this.getToken(SqlParser.BINLOG, 0);
+};
+
+KeywordsCanBeIdContext.prototype.BINLOG_ADMIN = function() {
+ return this.getToken(SqlParser.BINLOG_ADMIN, 0);
+};
+
+KeywordsCanBeIdContext.prototype.BINLOG_ENCRYPTION_ADMIN = function() {
+ return this.getToken(SqlParser.BINLOG_ENCRYPTION_ADMIN, 0);
+};
+
+KeywordsCanBeIdContext.prototype.BIT = function() {
+ return this.getToken(SqlParser.BIT, 0);
+};
+
+KeywordsCanBeIdContext.prototype.BLOCK = function() {
+ return this.getToken(SqlParser.BLOCK, 0);
+};
+
+KeywordsCanBeIdContext.prototype.BOOL = function() {
+ return this.getToken(SqlParser.BOOL, 0);
+};
+
+KeywordsCanBeIdContext.prototype.BOOLEAN = function() {
+ return this.getToken(SqlParser.BOOLEAN, 0);
+};
+
+KeywordsCanBeIdContext.prototype.BTREE = function() {
+ return this.getToken(SqlParser.BTREE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.CACHE = function() {
+ return this.getToken(SqlParser.CACHE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.CASCADED = function() {
+ return this.getToken(SqlParser.CASCADED, 0);
+};
+
+KeywordsCanBeIdContext.prototype.CHAIN = function() {
+ return this.getToken(SqlParser.CHAIN, 0);
+};
+
+KeywordsCanBeIdContext.prototype.CHANGED = function() {
+ return this.getToken(SqlParser.CHANGED, 0);
+};
+
+KeywordsCanBeIdContext.prototype.CHANNEL = function() {
+ return this.getToken(SqlParser.CHANNEL, 0);
+};
+
+KeywordsCanBeIdContext.prototype.CHECKSUM = function() {
+ return this.getToken(SqlParser.CHECKSUM, 0);
+};
+
+KeywordsCanBeIdContext.prototype.PAGE_CHECKSUM = function() {
+ return this.getToken(SqlParser.PAGE_CHECKSUM, 0);
+};
+
+KeywordsCanBeIdContext.prototype.CATALOG_NAME = function() {
+ return this.getToken(SqlParser.CATALOG_NAME, 0);
+};
+
+KeywordsCanBeIdContext.prototype.CIPHER = function() {
+ return this.getToken(SqlParser.CIPHER, 0);
+};
+
+KeywordsCanBeIdContext.prototype.CLASS_ORIGIN = function() {
+ return this.getToken(SqlParser.CLASS_ORIGIN, 0);
+};
+
+KeywordsCanBeIdContext.prototype.CLIENT = function() {
+ return this.getToken(SqlParser.CLIENT, 0);
+};
+
+KeywordsCanBeIdContext.prototype.CLONE_ADMIN = function() {
+ return this.getToken(SqlParser.CLONE_ADMIN, 0);
+};
+
+KeywordsCanBeIdContext.prototype.CLOSE = function() {
+ return this.getToken(SqlParser.CLOSE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.COALESCE = function() {
+ return this.getToken(SqlParser.COALESCE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.CODE = function() {
+ return this.getToken(SqlParser.CODE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.COLUMNS = function() {
+ return this.getToken(SqlParser.COLUMNS, 0);
+};
+
+KeywordsCanBeIdContext.prototype.COLUMN_FORMAT = function() {
+ return this.getToken(SqlParser.COLUMN_FORMAT, 0);
+};
+
+KeywordsCanBeIdContext.prototype.COLUMN_NAME = function() {
+ return this.getToken(SqlParser.COLUMN_NAME, 0);
+};
+
+KeywordsCanBeIdContext.prototype.COMMENT = function() {
+ return this.getToken(SqlParser.COMMENT, 0);
+};
+
+KeywordsCanBeIdContext.prototype.COMMIT = function() {
+ return this.getToken(SqlParser.COMMIT, 0);
+};
+
+KeywordsCanBeIdContext.prototype.COMPACT = function() {
+ return this.getToken(SqlParser.COMPACT, 0);
+};
+
+KeywordsCanBeIdContext.prototype.COMPLETION = function() {
+ return this.getToken(SqlParser.COMPLETION, 0);
+};
+
+KeywordsCanBeIdContext.prototype.COMPRESSED = function() {
+ return this.getToken(SqlParser.COMPRESSED, 0);
+};
+
+KeywordsCanBeIdContext.prototype.COMPRESSION = function() {
+ return this.getToken(SqlParser.COMPRESSION, 0);
+};
+
+KeywordsCanBeIdContext.prototype.CONCURRENT = function() {
+ return this.getToken(SqlParser.CONCURRENT, 0);
+};
+
+KeywordsCanBeIdContext.prototype.CONNECTION = function() {
+ return this.getToken(SqlParser.CONNECTION, 0);
+};
+
+KeywordsCanBeIdContext.prototype.CONNECTION_ADMIN = function() {
+ return this.getToken(SqlParser.CONNECTION_ADMIN, 0);
+};
+
+KeywordsCanBeIdContext.prototype.CONSISTENT = function() {
+ return this.getToken(SqlParser.CONSISTENT, 0);
+};
+
+KeywordsCanBeIdContext.prototype.CONSTRAINT_CATALOG = function() {
+ return this.getToken(SqlParser.CONSTRAINT_CATALOG, 0);
+};
+
+KeywordsCanBeIdContext.prototype.CONSTRAINT_NAME = function() {
+ return this.getToken(SqlParser.CONSTRAINT_NAME, 0);
+};
+
+KeywordsCanBeIdContext.prototype.CONSTRAINT_SCHEMA = function() {
+ return this.getToken(SqlParser.CONSTRAINT_SCHEMA, 0);
+};
+
+KeywordsCanBeIdContext.prototype.CONTAINS = function() {
+ return this.getToken(SqlParser.CONTAINS, 0);
+};
+
+KeywordsCanBeIdContext.prototype.CONTEXT = function() {
+ return this.getToken(SqlParser.CONTEXT, 0);
+};
+
+KeywordsCanBeIdContext.prototype.CONTRIBUTORS = function() {
+ return this.getToken(SqlParser.CONTRIBUTORS, 0);
+};
+
+KeywordsCanBeIdContext.prototype.COPY = function() {
+ return this.getToken(SqlParser.COPY, 0);
+};
+
+KeywordsCanBeIdContext.prototype.CPU = function() {
+ return this.getToken(SqlParser.CPU, 0);
+};
+
+KeywordsCanBeIdContext.prototype.CURRENT = function() {
+ return this.getToken(SqlParser.CURRENT, 0);
+};
+
+KeywordsCanBeIdContext.prototype.CURSOR_NAME = function() {
+ return this.getToken(SqlParser.CURSOR_NAME, 0);
+};
+
+KeywordsCanBeIdContext.prototype.DATA = function() {
+ return this.getToken(SqlParser.DATA, 0);
+};
+
+KeywordsCanBeIdContext.prototype.DATAFILE = function() {
+ return this.getToken(SqlParser.DATAFILE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.DEALLOCATE = function() {
+ return this.getToken(SqlParser.DEALLOCATE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.DEFAULT_AUTH = function() {
+ return this.getToken(SqlParser.DEFAULT_AUTH, 0);
+};
+
+KeywordsCanBeIdContext.prototype.DEFINER = function() {
+ return this.getToken(SqlParser.DEFINER, 0);
+};
+
+KeywordsCanBeIdContext.prototype.DELAY_KEY_WRITE = function() {
+ return this.getToken(SqlParser.DELAY_KEY_WRITE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.DES_KEY_FILE = function() {
+ return this.getToken(SqlParser.DES_KEY_FILE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.DIAGNOSTICS = function() {
+ return this.getToken(SqlParser.DIAGNOSTICS, 0);
+};
+
+KeywordsCanBeIdContext.prototype.DIRECTORY = function() {
+ return this.getToken(SqlParser.DIRECTORY, 0);
+};
+
+KeywordsCanBeIdContext.prototype.DISABLE = function() {
+ return this.getToken(SqlParser.DISABLE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.DISCARD = function() {
+ return this.getToken(SqlParser.DISCARD, 0);
+};
+
+KeywordsCanBeIdContext.prototype.DISK = function() {
+ return this.getToken(SqlParser.DISK, 0);
+};
+
+KeywordsCanBeIdContext.prototype.DO = function() {
+ return this.getToken(SqlParser.DO, 0);
+};
+
+KeywordsCanBeIdContext.prototype.DUMPFILE = function() {
+ return this.getToken(SqlParser.DUMPFILE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.DUPLICATE = function() {
+ return this.getToken(SqlParser.DUPLICATE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.DYNAMIC = function() {
+ return this.getToken(SqlParser.DYNAMIC, 0);
+};
+
+KeywordsCanBeIdContext.prototype.ENABLE = function() {
+ return this.getToken(SqlParser.ENABLE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.ENCRYPTION = function() {
+ return this.getToken(SqlParser.ENCRYPTION, 0);
+};
+
+KeywordsCanBeIdContext.prototype.ENCRYPTION_KEY_ADMIN = function() {
+ return this.getToken(SqlParser.ENCRYPTION_KEY_ADMIN, 0);
+};
+
+KeywordsCanBeIdContext.prototype.END = function() {
+ return this.getToken(SqlParser.END, 0);
+};
+
+KeywordsCanBeIdContext.prototype.ENDS = function() {
+ return this.getToken(SqlParser.ENDS, 0);
+};
+
+KeywordsCanBeIdContext.prototype.ENGINE = function() {
+ return this.getToken(SqlParser.ENGINE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.ENGINES = function() {
+ return this.getToken(SqlParser.ENGINES, 0);
+};
+
+KeywordsCanBeIdContext.prototype.ERROR = function() {
+ return this.getToken(SqlParser.ERROR, 0);
+};
+
+KeywordsCanBeIdContext.prototype.ERRORS = function() {
+ return this.getToken(SqlParser.ERRORS, 0);
+};
+
+KeywordsCanBeIdContext.prototype.ESCAPE = function() {
+ return this.getToken(SqlParser.ESCAPE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.EVEN = function() {
+ return this.getToken(SqlParser.EVEN, 0);
+};
+
+KeywordsCanBeIdContext.prototype.EVENT = function() {
+ return this.getToken(SqlParser.EVENT, 0);
+};
+
+KeywordsCanBeIdContext.prototype.EVENTS = function() {
+ return this.getToken(SqlParser.EVENTS, 0);
+};
+
+KeywordsCanBeIdContext.prototype.EVERY = function() {
+ return this.getToken(SqlParser.EVERY, 0);
+};
+
+KeywordsCanBeIdContext.prototype.EXCHANGE = function() {
+ return this.getToken(SqlParser.EXCHANGE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.EXCLUSIVE = function() {
+ return this.getToken(SqlParser.EXCLUSIVE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.EXPIRE = function() {
+ return this.getToken(SqlParser.EXPIRE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.EXPORT = function() {
+ return this.getToken(SqlParser.EXPORT, 0);
+};
+
+KeywordsCanBeIdContext.prototype.EXTENDED = function() {
+ return this.getToken(SqlParser.EXTENDED, 0);
+};
+
+KeywordsCanBeIdContext.prototype.EXTENT_SIZE = function() {
+ return this.getToken(SqlParser.EXTENT_SIZE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.FAST = function() {
+ return this.getToken(SqlParser.FAST, 0);
+};
+
+KeywordsCanBeIdContext.prototype.FAULTS = function() {
+ return this.getToken(SqlParser.FAULTS, 0);
+};
+
+KeywordsCanBeIdContext.prototype.FIELDS = function() {
+ return this.getToken(SqlParser.FIELDS, 0);
+};
+
+KeywordsCanBeIdContext.prototype.FILE_BLOCK_SIZE = function() {
+ return this.getToken(SqlParser.FILE_BLOCK_SIZE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.FILTER = function() {
+ return this.getToken(SqlParser.FILTER, 0);
+};
+
+KeywordsCanBeIdContext.prototype.FIREWALL_ADMIN = function() {
+ return this.getToken(SqlParser.FIREWALL_ADMIN, 0);
+};
+
+KeywordsCanBeIdContext.prototype.FIREWALL_USER = function() {
+ return this.getToken(SqlParser.FIREWALL_USER, 0);
+};
+
+KeywordsCanBeIdContext.prototype.FIRST = function() {
+ return this.getToken(SqlParser.FIRST, 0);
+};
+
+KeywordsCanBeIdContext.prototype.FIXED = function() {
+ return this.getToken(SqlParser.FIXED, 0);
+};
+
+KeywordsCanBeIdContext.prototype.FLUSH = function() {
+ return this.getToken(SqlParser.FLUSH, 0);
+};
+
+KeywordsCanBeIdContext.prototype.FOLLOWS = function() {
+ return this.getToken(SqlParser.FOLLOWS, 0);
+};
+
+KeywordsCanBeIdContext.prototype.FOUND = function() {
+ return this.getToken(SqlParser.FOUND, 0);
+};
+
+KeywordsCanBeIdContext.prototype.FULL = function() {
+ return this.getToken(SqlParser.FULL, 0);
+};
+
+KeywordsCanBeIdContext.prototype.FUNCTION = function() {
+ return this.getToken(SqlParser.FUNCTION, 0);
+};
+
+KeywordsCanBeIdContext.prototype.GENERAL = function() {
+ return this.getToken(SqlParser.GENERAL, 0);
+};
+
+KeywordsCanBeIdContext.prototype.GLOBAL = function() {
+ return this.getToken(SqlParser.GLOBAL, 0);
+};
+
+KeywordsCanBeIdContext.prototype.GRANTS = function() {
+ return this.getToken(SqlParser.GRANTS, 0);
+};
+
+KeywordsCanBeIdContext.prototype.GROUP_REPLICATION = function() {
+ return this.getToken(SqlParser.GROUP_REPLICATION, 0);
+};
+
+KeywordsCanBeIdContext.prototype.GROUP_REPLICATION_ADMIN = function() {
+ return this.getToken(SqlParser.GROUP_REPLICATION_ADMIN, 0);
+};
+
+KeywordsCanBeIdContext.prototype.HANDLER = function() {
+ return this.getToken(SqlParser.HANDLER, 0);
+};
+
+KeywordsCanBeIdContext.prototype.HASH = function() {
+ return this.getToken(SqlParser.HASH, 0);
+};
+
+KeywordsCanBeIdContext.prototype.HELP = function() {
+ return this.getToken(SqlParser.HELP, 0);
+};
+
+KeywordsCanBeIdContext.prototype.HOST = function() {
+ return this.getToken(SqlParser.HOST, 0);
+};
+
+KeywordsCanBeIdContext.prototype.HOSTS = function() {
+ return this.getToken(SqlParser.HOSTS, 0);
+};
+
+KeywordsCanBeIdContext.prototype.IDENTIFIED = function() {
+ return this.getToken(SqlParser.IDENTIFIED, 0);
+};
+
+KeywordsCanBeIdContext.prototype.IGNORE_SERVER_IDS = function() {
+ return this.getToken(SqlParser.IGNORE_SERVER_IDS, 0);
+};
+
+KeywordsCanBeIdContext.prototype.IMPORT = function() {
+ return this.getToken(SqlParser.IMPORT, 0);
+};
+
+KeywordsCanBeIdContext.prototype.INDEXES = function() {
+ return this.getToken(SqlParser.INDEXES, 0);
+};
+
+KeywordsCanBeIdContext.prototype.INITIAL_SIZE = function() {
+ return this.getToken(SqlParser.INITIAL_SIZE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.INNODB_REDO_LOG_ARCHIVE = function() {
+ return this.getToken(SqlParser.INNODB_REDO_LOG_ARCHIVE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.INPLACE = function() {
+ return this.getToken(SqlParser.INPLACE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.INSERT_METHOD = function() {
+ return this.getToken(SqlParser.INSERT_METHOD, 0);
+};
+
+KeywordsCanBeIdContext.prototype.INSTALL = function() {
+ return this.getToken(SqlParser.INSTALL, 0);
+};
+
+KeywordsCanBeIdContext.prototype.INSTANCE = function() {
+ return this.getToken(SqlParser.INSTANCE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.INTERNAL = function() {
+ return this.getToken(SqlParser.INTERNAL, 0);
+};
+
+KeywordsCanBeIdContext.prototype.INVOKER = function() {
+ return this.getToken(SqlParser.INVOKER, 0);
+};
+
+KeywordsCanBeIdContext.prototype.IO = function() {
+ return this.getToken(SqlParser.IO, 0);
+};
+
+KeywordsCanBeIdContext.prototype.IO_THREAD = function() {
+ return this.getToken(SqlParser.IO_THREAD, 0);
+};
+
+KeywordsCanBeIdContext.prototype.IPC = function() {
+ return this.getToken(SqlParser.IPC, 0);
+};
+
+KeywordsCanBeIdContext.prototype.ISOLATION = function() {
+ return this.getToken(SqlParser.ISOLATION, 0);
+};
+
+KeywordsCanBeIdContext.prototype.ISSUER = function() {
+ return this.getToken(SqlParser.ISSUER, 0);
+};
+
+KeywordsCanBeIdContext.prototype.JSON = function() {
+ return this.getToken(SqlParser.JSON, 0);
+};
+
+KeywordsCanBeIdContext.prototype.KEY_BLOCK_SIZE = function() {
+ return this.getToken(SqlParser.KEY_BLOCK_SIZE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.LANGUAGE = function() {
+ return this.getToken(SqlParser.LANGUAGE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.LAST = function() {
+ return this.getToken(SqlParser.LAST, 0);
+};
+
+KeywordsCanBeIdContext.prototype.LEAVES = function() {
+ return this.getToken(SqlParser.LEAVES, 0);
+};
+
+KeywordsCanBeIdContext.prototype.LESS = function() {
+ return this.getToken(SqlParser.LESS, 0);
+};
+
+KeywordsCanBeIdContext.prototype.LEVEL = function() {
+ return this.getToken(SqlParser.LEVEL, 0);
+};
+
+KeywordsCanBeIdContext.prototype.LIST = function() {
+ return this.getToken(SqlParser.LIST, 0);
+};
+
+KeywordsCanBeIdContext.prototype.LOCAL = function() {
+ return this.getToken(SqlParser.LOCAL, 0);
+};
+
+KeywordsCanBeIdContext.prototype.LOGFILE = function() {
+ return this.getToken(SqlParser.LOGFILE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.LOGS = function() {
+ return this.getToken(SqlParser.LOGS, 0);
+};
+
+KeywordsCanBeIdContext.prototype.MASTER = function() {
+ return this.getToken(SqlParser.MASTER, 0);
+};
+
+KeywordsCanBeIdContext.prototype.MASTER_AUTO_POSITION = function() {
+ return this.getToken(SqlParser.MASTER_AUTO_POSITION, 0);
+};
+
+KeywordsCanBeIdContext.prototype.MASTER_CONNECT_RETRY = function() {
+ return this.getToken(SqlParser.MASTER_CONNECT_RETRY, 0);
+};
+
+KeywordsCanBeIdContext.prototype.MASTER_DELAY = function() {
+ return this.getToken(SqlParser.MASTER_DELAY, 0);
+};
+
+KeywordsCanBeIdContext.prototype.MASTER_HEARTBEAT_PERIOD = function() {
+ return this.getToken(SqlParser.MASTER_HEARTBEAT_PERIOD, 0);
+};
+
+KeywordsCanBeIdContext.prototype.MASTER_HOST = function() {
+ return this.getToken(SqlParser.MASTER_HOST, 0);
+};
+
+KeywordsCanBeIdContext.prototype.MASTER_LOG_FILE = function() {
+ return this.getToken(SqlParser.MASTER_LOG_FILE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.MASTER_LOG_POS = function() {
+ return this.getToken(SqlParser.MASTER_LOG_POS, 0);
+};
+
+KeywordsCanBeIdContext.prototype.MASTER_PASSWORD = function() {
+ return this.getToken(SqlParser.MASTER_PASSWORD, 0);
+};
+
+KeywordsCanBeIdContext.prototype.MASTER_PORT = function() {
+ return this.getToken(SqlParser.MASTER_PORT, 0);
+};
+
+KeywordsCanBeIdContext.prototype.MASTER_RETRY_COUNT = function() {
+ return this.getToken(SqlParser.MASTER_RETRY_COUNT, 0);
+};
+
+KeywordsCanBeIdContext.prototype.MASTER_SSL = function() {
+ return this.getToken(SqlParser.MASTER_SSL, 0);
+};
+
+KeywordsCanBeIdContext.prototype.MASTER_SSL_CA = function() {
+ return this.getToken(SqlParser.MASTER_SSL_CA, 0);
+};
+
+KeywordsCanBeIdContext.prototype.MASTER_SSL_CAPATH = function() {
+ return this.getToken(SqlParser.MASTER_SSL_CAPATH, 0);
+};
+
+KeywordsCanBeIdContext.prototype.MASTER_SSL_CERT = function() {
+ return this.getToken(SqlParser.MASTER_SSL_CERT, 0);
+};
+
+KeywordsCanBeIdContext.prototype.MASTER_SSL_CIPHER = function() {
+ return this.getToken(SqlParser.MASTER_SSL_CIPHER, 0);
+};
+
+KeywordsCanBeIdContext.prototype.MASTER_SSL_CRL = function() {
+ return this.getToken(SqlParser.MASTER_SSL_CRL, 0);
+};
+
+KeywordsCanBeIdContext.prototype.MASTER_SSL_CRLPATH = function() {
+ return this.getToken(SqlParser.MASTER_SSL_CRLPATH, 0);
+};
+
+KeywordsCanBeIdContext.prototype.MASTER_SSL_KEY = function() {
+ return this.getToken(SqlParser.MASTER_SSL_KEY, 0);
+};
+
+KeywordsCanBeIdContext.prototype.MASTER_TLS_VERSION = function() {
+ return this.getToken(SqlParser.MASTER_TLS_VERSION, 0);
+};
+
+KeywordsCanBeIdContext.prototype.MASTER_USER = function() {
+ return this.getToken(SqlParser.MASTER_USER, 0);
+};
+
+KeywordsCanBeIdContext.prototype.MAX_CONNECTIONS_PER_HOUR = function() {
+ return this.getToken(SqlParser.MAX_CONNECTIONS_PER_HOUR, 0);
+};
+
+KeywordsCanBeIdContext.prototype.MAX_QUERIES_PER_HOUR = function() {
+ return this.getToken(SqlParser.MAX_QUERIES_PER_HOUR, 0);
+};
+
+KeywordsCanBeIdContext.prototype.MAX_ROWS = function() {
+ return this.getToken(SqlParser.MAX_ROWS, 0);
+};
+
+KeywordsCanBeIdContext.prototype.MAX_SIZE = function() {
+ return this.getToken(SqlParser.MAX_SIZE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.MAX_UPDATES_PER_HOUR = function() {
+ return this.getToken(SqlParser.MAX_UPDATES_PER_HOUR, 0);
+};
+
+KeywordsCanBeIdContext.prototype.MAX_USER_CONNECTIONS = function() {
+ return this.getToken(SqlParser.MAX_USER_CONNECTIONS, 0);
+};
+
+KeywordsCanBeIdContext.prototype.MEDIUM = function() {
+ return this.getToken(SqlParser.MEDIUM, 0);
+};
+
+KeywordsCanBeIdContext.prototype.MEMORY = function() {
+ return this.getToken(SqlParser.MEMORY, 0);
+};
+
+KeywordsCanBeIdContext.prototype.MERGE = function() {
+ return this.getToken(SqlParser.MERGE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.MESSAGE_TEXT = function() {
+ return this.getToken(SqlParser.MESSAGE_TEXT, 0);
+};
+
+KeywordsCanBeIdContext.prototype.MID = function() {
+ return this.getToken(SqlParser.MID, 0);
+};
+
+KeywordsCanBeIdContext.prototype.MIGRATE = function() {
+ return this.getToken(SqlParser.MIGRATE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.MIN_ROWS = function() {
+ return this.getToken(SqlParser.MIN_ROWS, 0);
+};
+
+KeywordsCanBeIdContext.prototype.MODE = function() {
+ return this.getToken(SqlParser.MODE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.MODIFY = function() {
+ return this.getToken(SqlParser.MODIFY, 0);
+};
+
+KeywordsCanBeIdContext.prototype.MUTEX = function() {
+ return this.getToken(SqlParser.MUTEX, 0);
+};
+
+KeywordsCanBeIdContext.prototype.MYSQL = function() {
+ return this.getToken(SqlParser.MYSQL, 0);
+};
+
+KeywordsCanBeIdContext.prototype.MYSQL_ERRNO = function() {
+ return this.getToken(SqlParser.MYSQL_ERRNO, 0);
+};
+
+KeywordsCanBeIdContext.prototype.NAME = function() {
+ return this.getToken(SqlParser.NAME, 0);
+};
+
+KeywordsCanBeIdContext.prototype.NAMES = function() {
+ return this.getToken(SqlParser.NAMES, 0);
+};
+
+KeywordsCanBeIdContext.prototype.NCHAR = function() {
+ return this.getToken(SqlParser.NCHAR, 0);
+};
+
+KeywordsCanBeIdContext.prototype.NDB_STORED_USER = function() {
+ return this.getToken(SqlParser.NDB_STORED_USER, 0);
+};
+
+KeywordsCanBeIdContext.prototype.NEVER = function() {
+ return this.getToken(SqlParser.NEVER, 0);
+};
+
+KeywordsCanBeIdContext.prototype.NEXT = function() {
+ return this.getToken(SqlParser.NEXT, 0);
+};
+
+KeywordsCanBeIdContext.prototype.NO = function() {
+ return this.getToken(SqlParser.NO, 0);
+};
+
+KeywordsCanBeIdContext.prototype.NODEGROUP = function() {
+ return this.getToken(SqlParser.NODEGROUP, 0);
+};
+
+KeywordsCanBeIdContext.prototype.NONE = function() {
+ return this.getToken(SqlParser.NONE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.NUMBER = function() {
+ return this.getToken(SqlParser.NUMBER, 0);
+};
+
+KeywordsCanBeIdContext.prototype.OFFLINE = function() {
+ return this.getToken(SqlParser.OFFLINE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.OFFSET = function() {
+ return this.getToken(SqlParser.OFFSET, 0);
+};
+
+KeywordsCanBeIdContext.prototype.OJ = function() {
+ return this.getToken(SqlParser.OJ, 0);
+};
+
+KeywordsCanBeIdContext.prototype.OLD_PASSWORD = function() {
+ return this.getToken(SqlParser.OLD_PASSWORD, 0);
+};
+
+KeywordsCanBeIdContext.prototype.ONE = function() {
+ return this.getToken(SqlParser.ONE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.ONLINE = function() {
+ return this.getToken(SqlParser.ONLINE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.ONLY = function() {
+ return this.getToken(SqlParser.ONLY, 0);
+};
+
+KeywordsCanBeIdContext.prototype.OPEN = function() {
+ return this.getToken(SqlParser.OPEN, 0);
+};
+
+KeywordsCanBeIdContext.prototype.OPTIMIZER_COSTS = function() {
+ return this.getToken(SqlParser.OPTIMIZER_COSTS, 0);
+};
+
+KeywordsCanBeIdContext.prototype.OPTIONS = function() {
+ return this.getToken(SqlParser.OPTIONS, 0);
+};
+
+KeywordsCanBeIdContext.prototype.OWNER = function() {
+ return this.getToken(SqlParser.OWNER, 0);
+};
+
+KeywordsCanBeIdContext.prototype.PACK_KEYS = function() {
+ return this.getToken(SqlParser.PACK_KEYS, 0);
+};
+
+KeywordsCanBeIdContext.prototype.PAGE = function() {
+ return this.getToken(SqlParser.PAGE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.PARSER = function() {
+ return this.getToken(SqlParser.PARSER, 0);
+};
+
+KeywordsCanBeIdContext.prototype.PARTIAL = function() {
+ return this.getToken(SqlParser.PARTIAL, 0);
+};
+
+KeywordsCanBeIdContext.prototype.PARTITIONING = function() {
+ return this.getToken(SqlParser.PARTITIONING, 0);
+};
+
+KeywordsCanBeIdContext.prototype.PARTITIONS = function() {
+ return this.getToken(SqlParser.PARTITIONS, 0);
+};
+
+KeywordsCanBeIdContext.prototype.PASSWORD = function() {
+ return this.getToken(SqlParser.PASSWORD, 0);
+};
+
+KeywordsCanBeIdContext.prototype.PERSIST_RO_VARIABLES_ADMIN = function() {
+ return this.getToken(SqlParser.PERSIST_RO_VARIABLES_ADMIN, 0);
+};
+
+KeywordsCanBeIdContext.prototype.PHASE = function() {
+ return this.getToken(SqlParser.PHASE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.PLUGINS = function() {
+ return this.getToken(SqlParser.PLUGINS, 0);
+};
+
+KeywordsCanBeIdContext.prototype.PLUGIN_DIR = function() {
+ return this.getToken(SqlParser.PLUGIN_DIR, 0);
+};
+
+KeywordsCanBeIdContext.prototype.PLUGIN = function() {
+ return this.getToken(SqlParser.PLUGIN, 0);
+};
+
+KeywordsCanBeIdContext.prototype.PORT = function() {
+ return this.getToken(SqlParser.PORT, 0);
+};
+
+KeywordsCanBeIdContext.prototype.PRECEDES = function() {
+ return this.getToken(SqlParser.PRECEDES, 0);
+};
+
+KeywordsCanBeIdContext.prototype.PREPARE = function() {
+ return this.getToken(SqlParser.PREPARE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.PRESERVE = function() {
+ return this.getToken(SqlParser.PRESERVE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.PREV = function() {
+ return this.getToken(SqlParser.PREV, 0);
+};
+
+KeywordsCanBeIdContext.prototype.PROCESSLIST = function() {
+ return this.getToken(SqlParser.PROCESSLIST, 0);
+};
+
+KeywordsCanBeIdContext.prototype.PROFILE = function() {
+ return this.getToken(SqlParser.PROFILE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.PROFILES = function() {
+ return this.getToken(SqlParser.PROFILES, 0);
+};
+
+KeywordsCanBeIdContext.prototype.PROXY = function() {
+ return this.getToken(SqlParser.PROXY, 0);
+};
+
+KeywordsCanBeIdContext.prototype.QUERY = function() {
+ return this.getToken(SqlParser.QUERY, 0);
+};
+
+KeywordsCanBeIdContext.prototype.QUICK = function() {
+ return this.getToken(SqlParser.QUICK, 0);
+};
+
+KeywordsCanBeIdContext.prototype.REBUILD = function() {
+ return this.getToken(SqlParser.REBUILD, 0);
+};
+
+KeywordsCanBeIdContext.prototype.RECOVER = function() {
+ return this.getToken(SqlParser.RECOVER, 0);
+};
+
+KeywordsCanBeIdContext.prototype.REDO_BUFFER_SIZE = function() {
+ return this.getToken(SqlParser.REDO_BUFFER_SIZE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.REDUNDANT = function() {
+ return this.getToken(SqlParser.REDUNDANT, 0);
+};
+
+KeywordsCanBeIdContext.prototype.RELAY = function() {
+ return this.getToken(SqlParser.RELAY, 0);
+};
+
+KeywordsCanBeIdContext.prototype.RELAYLOG = function() {
+ return this.getToken(SqlParser.RELAYLOG, 0);
+};
+
+KeywordsCanBeIdContext.prototype.RELAY_LOG_FILE = function() {
+ return this.getToken(SqlParser.RELAY_LOG_FILE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.RELAY_LOG_POS = function() {
+ return this.getToken(SqlParser.RELAY_LOG_POS, 0);
+};
+
+KeywordsCanBeIdContext.prototype.REMOVE = function() {
+ return this.getToken(SqlParser.REMOVE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.REORGANIZE = function() {
+ return this.getToken(SqlParser.REORGANIZE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.REPAIR = function() {
+ return this.getToken(SqlParser.REPAIR, 0);
+};
+
+KeywordsCanBeIdContext.prototype.REPLICATE_DO_DB = function() {
+ return this.getToken(SqlParser.REPLICATE_DO_DB, 0);
+};
+
+KeywordsCanBeIdContext.prototype.REPLICATE_DO_TABLE = function() {
+ return this.getToken(SqlParser.REPLICATE_DO_TABLE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.REPLICATE_IGNORE_DB = function() {
+ return this.getToken(SqlParser.REPLICATE_IGNORE_DB, 0);
+};
+
+KeywordsCanBeIdContext.prototype.REPLICATE_IGNORE_TABLE = function() {
+ return this.getToken(SqlParser.REPLICATE_IGNORE_TABLE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.REPLICATE_REWRITE_DB = function() {
+ return this.getToken(SqlParser.REPLICATE_REWRITE_DB, 0);
+};
+
+KeywordsCanBeIdContext.prototype.REPLICATE_WILD_DO_TABLE = function() {
+ return this.getToken(SqlParser.REPLICATE_WILD_DO_TABLE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.REPLICATE_WILD_IGNORE_TABLE = function() {
+ return this.getToken(SqlParser.REPLICATE_WILD_IGNORE_TABLE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.REPLICATION = function() {
+ return this.getToken(SqlParser.REPLICATION, 0);
+};
+
+KeywordsCanBeIdContext.prototype.REPLICATION_APPLIER = function() {
+ return this.getToken(SqlParser.REPLICATION_APPLIER, 0);
+};
+
+KeywordsCanBeIdContext.prototype.REPLICATION_SLAVE_ADMIN = function() {
+ return this.getToken(SqlParser.REPLICATION_SLAVE_ADMIN, 0);
+};
+
+KeywordsCanBeIdContext.prototype.RESET = function() {
+ return this.getToken(SqlParser.RESET, 0);
+};
+
+KeywordsCanBeIdContext.prototype.RESOURCE_GROUP_ADMIN = function() {
+ return this.getToken(SqlParser.RESOURCE_GROUP_ADMIN, 0);
+};
+
+KeywordsCanBeIdContext.prototype.RESOURCE_GROUP_USER = function() {
+ return this.getToken(SqlParser.RESOURCE_GROUP_USER, 0);
+};
+
+KeywordsCanBeIdContext.prototype.RESUME = function() {
+ return this.getToken(SqlParser.RESUME, 0);
+};
+
+KeywordsCanBeIdContext.prototype.RETURNED_SQLSTATE = function() {
+ return this.getToken(SqlParser.RETURNED_SQLSTATE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.RETURNS = function() {
+ return this.getToken(SqlParser.RETURNS, 0);
+};
+
+KeywordsCanBeIdContext.prototype.ROLE = function() {
+ return this.getToken(SqlParser.ROLE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.ROLE_ADMIN = function() {
+ return this.getToken(SqlParser.ROLE_ADMIN, 0);
+};
+
+KeywordsCanBeIdContext.prototype.ROLLBACK = function() {
+ return this.getToken(SqlParser.ROLLBACK, 0);
+};
+
+KeywordsCanBeIdContext.prototype.ROLLUP = function() {
+ return this.getToken(SqlParser.ROLLUP, 0);
+};
+
+KeywordsCanBeIdContext.prototype.ROTATE = function() {
+ return this.getToken(SqlParser.ROTATE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.ROW = function() {
+ return this.getToken(SqlParser.ROW, 0);
+};
+
+KeywordsCanBeIdContext.prototype.ROWS = function() {
+ return this.getToken(SqlParser.ROWS, 0);
+};
+
+KeywordsCanBeIdContext.prototype.ROW_FORMAT = function() {
+ return this.getToken(SqlParser.ROW_FORMAT, 0);
+};
+
+KeywordsCanBeIdContext.prototype.SAVEPOINT = function() {
+ return this.getToken(SqlParser.SAVEPOINT, 0);
+};
+
+KeywordsCanBeIdContext.prototype.SCHEDULE = function() {
+ return this.getToken(SqlParser.SCHEDULE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.SCHEMA_NAME = function() {
+ return this.getToken(SqlParser.SCHEMA_NAME, 0);
+};
+
+KeywordsCanBeIdContext.prototype.SECURITY = function() {
+ return this.getToken(SqlParser.SECURITY, 0);
+};
+
+KeywordsCanBeIdContext.prototype.SERIAL = function() {
+ return this.getToken(SqlParser.SERIAL, 0);
+};
+
+KeywordsCanBeIdContext.prototype.SERVER = function() {
+ return this.getToken(SqlParser.SERVER, 0);
+};
+
+KeywordsCanBeIdContext.prototype.SESSION = function() {
+ return this.getToken(SqlParser.SESSION, 0);
+};
+
+KeywordsCanBeIdContext.prototype.SESSION_VARIABLES_ADMIN = function() {
+ return this.getToken(SqlParser.SESSION_VARIABLES_ADMIN, 0);
+};
+
+KeywordsCanBeIdContext.prototype.SET_USER_ID = function() {
+ return this.getToken(SqlParser.SET_USER_ID, 0);
+};
+
+KeywordsCanBeIdContext.prototype.SHARE = function() {
+ return this.getToken(SqlParser.SHARE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.SHARED = function() {
+ return this.getToken(SqlParser.SHARED, 0);
+};
+
+KeywordsCanBeIdContext.prototype.SHOW_ROUTINE = function() {
+ return this.getToken(SqlParser.SHOW_ROUTINE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.SIGNED = function() {
+ return this.getToken(SqlParser.SIGNED, 0);
+};
+
+KeywordsCanBeIdContext.prototype.SIMPLE = function() {
+ return this.getToken(SqlParser.SIMPLE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.SLAVE = function() {
+ return this.getToken(SqlParser.SLAVE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.SLOW = function() {
+ return this.getToken(SqlParser.SLOW, 0);
+};
+
+KeywordsCanBeIdContext.prototype.SNAPSHOT = function() {
+ return this.getToken(SqlParser.SNAPSHOT, 0);
+};
+
+KeywordsCanBeIdContext.prototype.SOCKET = function() {
+ return this.getToken(SqlParser.SOCKET, 0);
+};
+
+KeywordsCanBeIdContext.prototype.SOME = function() {
+ return this.getToken(SqlParser.SOME, 0);
+};
+
+KeywordsCanBeIdContext.prototype.SONAME = function() {
+ return this.getToken(SqlParser.SONAME, 0);
+};
+
+KeywordsCanBeIdContext.prototype.SOUNDS = function() {
+ return this.getToken(SqlParser.SOUNDS, 0);
+};
+
+KeywordsCanBeIdContext.prototype.SOURCE = function() {
+ return this.getToken(SqlParser.SOURCE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.SQL_AFTER_GTIDS = function() {
+ return this.getToken(SqlParser.SQL_AFTER_GTIDS, 0);
+};
+
+KeywordsCanBeIdContext.prototype.SQL_AFTER_MTS_GAPS = function() {
+ return this.getToken(SqlParser.SQL_AFTER_MTS_GAPS, 0);
+};
+
+KeywordsCanBeIdContext.prototype.SQL_BEFORE_GTIDS = function() {
+ return this.getToken(SqlParser.SQL_BEFORE_GTIDS, 0);
+};
+
+KeywordsCanBeIdContext.prototype.SQL_BUFFER_RESULT = function() {
+ return this.getToken(SqlParser.SQL_BUFFER_RESULT, 0);
+};
+
+KeywordsCanBeIdContext.prototype.SQL_CACHE = function() {
+ return this.getToken(SqlParser.SQL_CACHE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.SQL_NO_CACHE = function() {
+ return this.getToken(SqlParser.SQL_NO_CACHE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.SQL_THREAD = function() {
+ return this.getToken(SqlParser.SQL_THREAD, 0);
+};
+
+KeywordsCanBeIdContext.prototype.STACKED = function() {
+ return this.getToken(SqlParser.STACKED, 0);
+};
+
+KeywordsCanBeIdContext.prototype.START = function() {
+ return this.getToken(SqlParser.START, 0);
+};
+
+KeywordsCanBeIdContext.prototype.STARTS = function() {
+ return this.getToken(SqlParser.STARTS, 0);
+};
+
+KeywordsCanBeIdContext.prototype.STATS_AUTO_RECALC = function() {
+ return this.getToken(SqlParser.STATS_AUTO_RECALC, 0);
+};
+
+KeywordsCanBeIdContext.prototype.STATS_PERSISTENT = function() {
+ return this.getToken(SqlParser.STATS_PERSISTENT, 0);
+};
+
+KeywordsCanBeIdContext.prototype.STATS_SAMPLE_PAGES = function() {
+ return this.getToken(SqlParser.STATS_SAMPLE_PAGES, 0);
+};
+
+KeywordsCanBeIdContext.prototype.STATUS = function() {
+ return this.getToken(SqlParser.STATUS, 0);
+};
+
+KeywordsCanBeIdContext.prototype.STOP = function() {
+ return this.getToken(SqlParser.STOP, 0);
+};
+
+KeywordsCanBeIdContext.prototype.STORAGE = function() {
+ return this.getToken(SqlParser.STORAGE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.STRING = function() {
+ return this.getToken(SqlParser.STRING, 0);
+};
+
+KeywordsCanBeIdContext.prototype.SUBCLASS_ORIGIN = function() {
+ return this.getToken(SqlParser.SUBCLASS_ORIGIN, 0);
+};
+
+KeywordsCanBeIdContext.prototype.SUBJECT = function() {
+ return this.getToken(SqlParser.SUBJECT, 0);
+};
+
+KeywordsCanBeIdContext.prototype.SUBPARTITION = function() {
+ return this.getToken(SqlParser.SUBPARTITION, 0);
+};
+
+KeywordsCanBeIdContext.prototype.SUBPARTITIONS = function() {
+ return this.getToken(SqlParser.SUBPARTITIONS, 0);
+};
+
+KeywordsCanBeIdContext.prototype.SUSPEND = function() {
+ return this.getToken(SqlParser.SUSPEND, 0);
+};
+
+KeywordsCanBeIdContext.prototype.SWAPS = function() {
+ return this.getToken(SqlParser.SWAPS, 0);
+};
+
+KeywordsCanBeIdContext.prototype.SWITCHES = function() {
+ return this.getToken(SqlParser.SWITCHES, 0);
+};
+
+KeywordsCanBeIdContext.prototype.SYSTEM_VARIABLES_ADMIN = function() {
+ return this.getToken(SqlParser.SYSTEM_VARIABLES_ADMIN, 0);
+};
+
+KeywordsCanBeIdContext.prototype.TABLE_NAME = function() {
+ return this.getToken(SqlParser.TABLE_NAME, 0);
+};
+
+KeywordsCanBeIdContext.prototype.TABLESPACE = function() {
+ return this.getToken(SqlParser.TABLESPACE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.TABLE_ENCRYPTION_ADMIN = function() {
+ return this.getToken(SqlParser.TABLE_ENCRYPTION_ADMIN, 0);
+};
+
+KeywordsCanBeIdContext.prototype.TEMPORARY = function() {
+ return this.getToken(SqlParser.TEMPORARY, 0);
+};
+
+KeywordsCanBeIdContext.prototype.TEMPTABLE = function() {
+ return this.getToken(SqlParser.TEMPTABLE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.THAN = function() {
+ return this.getToken(SqlParser.THAN, 0);
+};
+
+KeywordsCanBeIdContext.prototype.TRADITIONAL = function() {
+ return this.getToken(SqlParser.TRADITIONAL, 0);
+};
+
+KeywordsCanBeIdContext.prototype.TRANSACTION = function() {
+ return this.getToken(SqlParser.TRANSACTION, 0);
+};
+
+KeywordsCanBeIdContext.prototype.TRANSACTIONAL = function() {
+ return this.getToken(SqlParser.TRANSACTIONAL, 0);
+};
+
+KeywordsCanBeIdContext.prototype.TRIGGERS = function() {
+ return this.getToken(SqlParser.TRIGGERS, 0);
+};
+
+KeywordsCanBeIdContext.prototype.TRUNCATE = function() {
+ return this.getToken(SqlParser.TRUNCATE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.UNDEFINED = function() {
+ return this.getToken(SqlParser.UNDEFINED, 0);
+};
+
+KeywordsCanBeIdContext.prototype.UNDOFILE = function() {
+ return this.getToken(SqlParser.UNDOFILE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.UNDO_BUFFER_SIZE = function() {
+ return this.getToken(SqlParser.UNDO_BUFFER_SIZE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.UNINSTALL = function() {
+ return this.getToken(SqlParser.UNINSTALL, 0);
+};
+
+KeywordsCanBeIdContext.prototype.UNKNOWN = function() {
+ return this.getToken(SqlParser.UNKNOWN, 0);
+};
+
+KeywordsCanBeIdContext.prototype.UNTIL = function() {
+ return this.getToken(SqlParser.UNTIL, 0);
+};
+
+KeywordsCanBeIdContext.prototype.UPGRADE = function() {
+ return this.getToken(SqlParser.UPGRADE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.USER = function() {
+ return this.getToken(SqlParser.USER, 0);
+};
+
+KeywordsCanBeIdContext.prototype.USE_FRM = function() {
+ return this.getToken(SqlParser.USE_FRM, 0);
+};
+
+KeywordsCanBeIdContext.prototype.USER_RESOURCES = function() {
+ return this.getToken(SqlParser.USER_RESOURCES, 0);
+};
+
+KeywordsCanBeIdContext.prototype.VALIDATION = function() {
+ return this.getToken(SqlParser.VALIDATION, 0);
+};
+
+KeywordsCanBeIdContext.prototype.VALUE = function() {
+ return this.getToken(SqlParser.VALUE, 0);
+};
+
+KeywordsCanBeIdContext.prototype.VARIABLES = function() {
+ return this.getToken(SqlParser.VARIABLES, 0);
+};
+
+KeywordsCanBeIdContext.prototype.VERSION_TOKEN_ADMIN = function() {
+ return this.getToken(SqlParser.VERSION_TOKEN_ADMIN, 0);
+};
+
+KeywordsCanBeIdContext.prototype.VIEW = function() {
+ return this.getToken(SqlParser.VIEW, 0);
+};
+
+KeywordsCanBeIdContext.prototype.WAIT = function() {
+ return this.getToken(SqlParser.WAIT, 0);
+};
+
+KeywordsCanBeIdContext.prototype.WARNINGS = function() {
+ return this.getToken(SqlParser.WARNINGS, 0);
+};
+
+KeywordsCanBeIdContext.prototype.WITHOUT = function() {
+ return this.getToken(SqlParser.WITHOUT, 0);
+};
+
+KeywordsCanBeIdContext.prototype.WORK = function() {
+ return this.getToken(SqlParser.WORK, 0);
+};
+
+KeywordsCanBeIdContext.prototype.WRAPPER = function() {
+ return this.getToken(SqlParser.WRAPPER, 0);
+};
+
+KeywordsCanBeIdContext.prototype.X509 = function() {
+ return this.getToken(SqlParser.X509, 0);
+};
+
+KeywordsCanBeIdContext.prototype.XA = function() {
+ return this.getToken(SqlParser.XA, 0);
+};
+
+KeywordsCanBeIdContext.prototype.XA_RECOVER_ADMIN = function() {
+ return this.getToken(SqlParser.XA_RECOVER_ADMIN, 0);
+};
+
+KeywordsCanBeIdContext.prototype.XML = function() {
+ return this.getToken(SqlParser.XML, 0);
+};
+
+KeywordsCanBeIdContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterKeywordsCanBeId(this);
+ }
+};
+
+KeywordsCanBeIdContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitKeywordsCanBeId(this);
+ }
+};
+
+KeywordsCanBeIdContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitKeywordsCanBeId(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.KeywordsCanBeIdContext = KeywordsCanBeIdContext;
+
+SqlParser.prototype.keywordsCanBeId = function() {
+
+ var localctx = new KeywordsCanBeIdContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 628, SqlParser.RULE_keywordsCanBeId);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6377;
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.CURRENT || _la===SqlParser.DIAGNOSTICS || _la===SqlParser.NUMBER || _la===SqlParser.STACKED || _la===SqlParser.SERIAL || ((((_la - 270)) & ~0x1f) == 0 && ((1 << (_la - 270)) & ((1 << (SqlParser.ACCOUNT - 270)) | (1 << (SqlParser.ACTION - 270)) | (1 << (SqlParser.AFTER - 270)) | (1 << (SqlParser.AGGREGATE - 270)) | (1 << (SqlParser.ALGORITHM - 270)) | (1 << (SqlParser.ANY - 270)) | (1 << (SqlParser.AT - 270)) | (1 << (SqlParser.AUTHORS - 270)) | (1 << (SqlParser.AUTOCOMMIT - 270)) | (1 << (SqlParser.AUTOEXTEND_SIZE - 270)) | (1 << (SqlParser.AUTO_INCREMENT - 270)) | (1 << (SqlParser.AVG_ROW_LENGTH - 270)) | (1 << (SqlParser.BEGIN - 270)) | (1 << (SqlParser.BINLOG - 270)) | (1 << (SqlParser.BIT - 270)) | (1 << (SqlParser.BLOCK - 270)) | (1 << (SqlParser.BOOL - 270)) | (1 << (SqlParser.BOOLEAN - 270)) | (1 << (SqlParser.BTREE - 270)) | (1 << (SqlParser.CACHE - 270)) | (1 << (SqlParser.CASCADED - 270)) | (1 << (SqlParser.CHAIN - 270)) | (1 << (SqlParser.CHANGED - 270)) | (1 << (SqlParser.CHANNEL - 270)) | (1 << (SqlParser.CHECKSUM - 270)) | (1 << (SqlParser.PAGE_CHECKSUM - 270)) | (1 << (SqlParser.CIPHER - 270)) | (1 << (SqlParser.CLASS_ORIGIN - 270)) | (1 << (SqlParser.CLIENT - 270)) | (1 << (SqlParser.CLOSE - 270)) | (1 << (SqlParser.COALESCE - 270)) | (1 << (SqlParser.CODE - 270)))) !== 0) || ((((_la - 302)) & ~0x1f) == 0 && ((1 << (_la - 302)) & ((1 << (SqlParser.COLUMNS - 302)) | (1 << (SqlParser.COLUMN_FORMAT - 302)) | (1 << (SqlParser.COLUMN_NAME - 302)) | (1 << (SqlParser.COMMENT - 302)) | (1 << (SqlParser.COMMIT - 302)) | (1 << (SqlParser.COMPACT - 302)) | (1 << (SqlParser.COMPLETION - 302)) | (1 << (SqlParser.COMPRESSED - 302)) | (1 << (SqlParser.COMPRESSION - 302)) | (1 << (SqlParser.CONCURRENT - 302)) | (1 << (SqlParser.CONNECTION - 302)) | (1 << (SqlParser.CONSISTENT - 302)) | (1 << (SqlParser.CONSTRAINT_CATALOG - 302)) | (1 << (SqlParser.CONSTRAINT_SCHEMA - 302)) | (1 << (SqlParser.CONSTRAINT_NAME - 302)) | (1 << (SqlParser.CONTAINS - 302)) | (1 << (SqlParser.CONTEXT - 302)) | (1 << (SqlParser.CONTRIBUTORS - 302)) | (1 << (SqlParser.COPY - 302)) | (1 << (SqlParser.CPU - 302)) | (1 << (SqlParser.CURSOR_NAME - 302)) | (1 << (SqlParser.DATA - 302)) | (1 << (SqlParser.DATAFILE - 302)) | (1 << (SqlParser.DEALLOCATE - 302)) | (1 << (SqlParser.DEFAULT_AUTH - 302)) | (1 << (SqlParser.DEFINER - 302)) | (1 << (SqlParser.DELAY_KEY_WRITE - 302)) | (1 << (SqlParser.DES_KEY_FILE - 302)) | (1 << (SqlParser.DIRECTORY - 302)) | (1 << (SqlParser.DISABLE - 302)) | (1 << (SqlParser.DISCARD - 302)) | (1 << (SqlParser.DISK - 302)))) !== 0) || ((((_la - 334)) & ~0x1f) == 0 && ((1 << (_la - 334)) & ((1 << (SqlParser.DO - 334)) | (1 << (SqlParser.DUMPFILE - 334)) | (1 << (SqlParser.DUPLICATE - 334)) | (1 << (SqlParser.DYNAMIC - 334)) | (1 << (SqlParser.ENABLE - 334)) | (1 << (SqlParser.ENCRYPTION - 334)) | (1 << (SqlParser.END - 334)) | (1 << (SqlParser.ENDS - 334)) | (1 << (SqlParser.ENGINE - 334)) | (1 << (SqlParser.ENGINES - 334)) | (1 << (SqlParser.ERROR - 334)) | (1 << (SqlParser.ERRORS - 334)) | (1 << (SqlParser.ESCAPE - 334)) | (1 << (SqlParser.EVEN - 334)) | (1 << (SqlParser.EVENT - 334)) | (1 << (SqlParser.EVENTS - 334)) | (1 << (SqlParser.EVERY - 334)) | (1 << (SqlParser.EXCHANGE - 334)) | (1 << (SqlParser.EXCLUSIVE - 334)) | (1 << (SqlParser.EXPIRE - 334)) | (1 << (SqlParser.EXPORT - 334)) | (1 << (SqlParser.EXTENDED - 334)) | (1 << (SqlParser.EXTENT_SIZE - 334)) | (1 << (SqlParser.FAST - 334)) | (1 << (SqlParser.FAULTS - 334)) | (1 << (SqlParser.FIELDS - 334)) | (1 << (SqlParser.FILE_BLOCK_SIZE - 334)) | (1 << (SqlParser.FILTER - 334)) | (1 << (SqlParser.FIRST - 334)) | (1 << (SqlParser.FIXED - 334)) | (1 << (SqlParser.FLUSH - 334)) | (1 << (SqlParser.FOLLOWS - 334)))) !== 0) || ((((_la - 366)) & ~0x1f) == 0 && ((1 << (_la - 366)) & ((1 << (SqlParser.FOUND - 366)) | (1 << (SqlParser.FULL - 366)) | (1 << (SqlParser.FUNCTION - 366)) | (1 << (SqlParser.GENERAL - 366)) | (1 << (SqlParser.GLOBAL - 366)) | (1 << (SqlParser.GRANTS - 366)) | (1 << (SqlParser.GROUP_REPLICATION - 366)) | (1 << (SqlParser.HANDLER - 366)) | (1 << (SqlParser.HASH - 366)) | (1 << (SqlParser.HELP - 366)) | (1 << (SqlParser.HOST - 366)) | (1 << (SqlParser.HOSTS - 366)) | (1 << (SqlParser.IDENTIFIED - 366)) | (1 << (SqlParser.IGNORE_SERVER_IDS - 366)) | (1 << (SqlParser.IMPORT - 366)) | (1 << (SqlParser.INDEXES - 366)) | (1 << (SqlParser.INITIAL_SIZE - 366)) | (1 << (SqlParser.INPLACE - 366)) | (1 << (SqlParser.INSERT_METHOD - 366)) | (1 << (SqlParser.INSTALL - 366)) | (1 << (SqlParser.INSTANCE - 366)) | (1 << (SqlParser.INVOKER - 366)) | (1 << (SqlParser.IO - 366)) | (1 << (SqlParser.IO_THREAD - 366)) | (1 << (SqlParser.IPC - 366)) | (1 << (SqlParser.ISOLATION - 366)) | (1 << (SqlParser.ISSUER - 366)) | (1 << (SqlParser.JSON - 366)) | (1 << (SqlParser.KEY_BLOCK_SIZE - 366)) | (1 << (SqlParser.LANGUAGE - 366)) | (1 << (SqlParser.LAST - 366)))) !== 0) || ((((_la - 398)) & ~0x1f) == 0 && ((1 << (_la - 398)) & ((1 << (SqlParser.LEAVES - 398)) | (1 << (SqlParser.LESS - 398)) | (1 << (SqlParser.LEVEL - 398)) | (1 << (SqlParser.LIST - 398)) | (1 << (SqlParser.LOCAL - 398)) | (1 << (SqlParser.LOGFILE - 398)) | (1 << (SqlParser.LOGS - 398)) | (1 << (SqlParser.MASTER - 398)) | (1 << (SqlParser.MASTER_AUTO_POSITION - 398)) | (1 << (SqlParser.MASTER_CONNECT_RETRY - 398)) | (1 << (SqlParser.MASTER_DELAY - 398)) | (1 << (SqlParser.MASTER_HEARTBEAT_PERIOD - 398)) | (1 << (SqlParser.MASTER_HOST - 398)) | (1 << (SqlParser.MASTER_LOG_FILE - 398)) | (1 << (SqlParser.MASTER_LOG_POS - 398)) | (1 << (SqlParser.MASTER_PASSWORD - 398)) | (1 << (SqlParser.MASTER_PORT - 398)) | (1 << (SqlParser.MASTER_RETRY_COUNT - 398)) | (1 << (SqlParser.MASTER_SSL - 398)) | (1 << (SqlParser.MASTER_SSL_CA - 398)) | (1 << (SqlParser.MASTER_SSL_CAPATH - 398)) | (1 << (SqlParser.MASTER_SSL_CERT - 398)) | (1 << (SqlParser.MASTER_SSL_CIPHER - 398)) | (1 << (SqlParser.MASTER_SSL_CRL - 398)) | (1 << (SqlParser.MASTER_SSL_CRLPATH - 398)) | (1 << (SqlParser.MASTER_SSL_KEY - 398)) | (1 << (SqlParser.MASTER_TLS_VERSION - 398)) | (1 << (SqlParser.MASTER_USER - 398)) | (1 << (SqlParser.MAX_CONNECTIONS_PER_HOUR - 398)) | (1 << (SqlParser.MAX_QUERIES_PER_HOUR - 398)) | (1 << (SqlParser.MAX_ROWS - 398)) | (1 << (SqlParser.MAX_SIZE - 398)))) !== 0) || ((((_la - 430)) & ~0x1f) == 0 && ((1 << (_la - 430)) & ((1 << (SqlParser.MAX_UPDATES_PER_HOUR - 430)) | (1 << (SqlParser.MAX_USER_CONNECTIONS - 430)) | (1 << (SqlParser.MEDIUM - 430)) | (1 << (SqlParser.MERGE - 430)) | (1 << (SqlParser.MESSAGE_TEXT - 430)) | (1 << (SqlParser.MID - 430)) | (1 << (SqlParser.MIGRATE - 430)) | (1 << (SqlParser.MIN_ROWS - 430)) | (1 << (SqlParser.MODE - 430)) | (1 << (SqlParser.MODIFY - 430)) | (1 << (SqlParser.MUTEX - 430)) | (1 << (SqlParser.MYSQL - 430)) | (1 << (SqlParser.MYSQL_ERRNO - 430)) | (1 << (SqlParser.NAME - 430)) | (1 << (SqlParser.NAMES - 430)) | (1 << (SqlParser.NCHAR - 430)) | (1 << (SqlParser.NEVER - 430)) | (1 << (SqlParser.NEXT - 430)) | (1 << (SqlParser.NO - 430)) | (1 << (SqlParser.NODEGROUP - 430)) | (1 << (SqlParser.NONE - 430)) | (1 << (SqlParser.OFFLINE - 430)) | (1 << (SqlParser.OFFSET - 430)) | (1 << (SqlParser.OJ - 430)) | (1 << (SqlParser.OLD_PASSWORD - 430)) | (1 << (SqlParser.ONE - 430)) | (1 << (SqlParser.ONLINE - 430)) | (1 << (SqlParser.ONLY - 430)) | (1 << (SqlParser.OPEN - 430)) | (1 << (SqlParser.OPTIMIZER_COSTS - 430)) | (1 << (SqlParser.OPTIONS - 430)) | (1 << (SqlParser.OWNER - 430)))) !== 0) || ((((_la - 462)) & ~0x1f) == 0 && ((1 << (_la - 462)) & ((1 << (SqlParser.PACK_KEYS - 462)) | (1 << (SqlParser.PAGE - 462)) | (1 << (SqlParser.PARSER - 462)) | (1 << (SqlParser.PARTIAL - 462)) | (1 << (SqlParser.PARTITIONING - 462)) | (1 << (SqlParser.PARTITIONS - 462)) | (1 << (SqlParser.PASSWORD - 462)) | (1 << (SqlParser.PHASE - 462)) | (1 << (SqlParser.PLUGIN - 462)) | (1 << (SqlParser.PLUGIN_DIR - 462)) | (1 << (SqlParser.PLUGINS - 462)) | (1 << (SqlParser.PORT - 462)) | (1 << (SqlParser.PRECEDES - 462)) | (1 << (SqlParser.PREPARE - 462)) | (1 << (SqlParser.PRESERVE - 462)) | (1 << (SqlParser.PREV - 462)) | (1 << (SqlParser.PROCESSLIST - 462)) | (1 << (SqlParser.PROFILE - 462)) | (1 << (SqlParser.PROFILES - 462)) | (1 << (SqlParser.PROXY - 462)) | (1 << (SqlParser.QUERY - 462)) | (1 << (SqlParser.QUICK - 462)) | (1 << (SqlParser.REBUILD - 462)) | (1 << (SqlParser.RECOVER - 462)) | (1 << (SqlParser.REDO_BUFFER_SIZE - 462)) | (1 << (SqlParser.REDUNDANT - 462)) | (1 << (SqlParser.RELAY - 462)) | (1 << (SqlParser.RELAY_LOG_FILE - 462)) | (1 << (SqlParser.RELAY_LOG_POS - 462)) | (1 << (SqlParser.RELAYLOG - 462)) | (1 << (SqlParser.REMOVE - 462)) | (1 << (SqlParser.REORGANIZE - 462)))) !== 0) || ((((_la - 494)) & ~0x1f) == 0 && ((1 << (_la - 494)) & ((1 << (SqlParser.REPAIR - 494)) | (1 << (SqlParser.REPLICATE_DO_DB - 494)) | (1 << (SqlParser.REPLICATE_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_DB - 494)) | (1 << (SqlParser.REPLICATE_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATE_REWRITE_DB - 494)) | (1 << (SqlParser.REPLICATE_WILD_DO_TABLE - 494)) | (1 << (SqlParser.REPLICATE_WILD_IGNORE_TABLE - 494)) | (1 << (SqlParser.REPLICATION - 494)) | (1 << (SqlParser.RESET - 494)) | (1 << (SqlParser.RESUME - 494)) | (1 << (SqlParser.RETURNED_SQLSTATE - 494)) | (1 << (SqlParser.RETURNS - 494)) | (1 << (SqlParser.ROLE - 494)) | (1 << (SqlParser.ROLLBACK - 494)) | (1 << (SqlParser.ROLLUP - 494)) | (1 << (SqlParser.ROTATE - 494)) | (1 << (SqlParser.ROW - 494)) | (1 << (SqlParser.ROWS - 494)) | (1 << (SqlParser.ROW_FORMAT - 494)) | (1 << (SqlParser.SAVEPOINT - 494)) | (1 << (SqlParser.SCHEDULE - 494)) | (1 << (SqlParser.SECURITY - 494)) | (1 << (SqlParser.SERVER - 494)) | (1 << (SqlParser.SESSION - 494)) | (1 << (SqlParser.SHARE - 494)) | (1 << (SqlParser.SHARED - 494)) | (1 << (SqlParser.SIGNED - 494)) | (1 << (SqlParser.SIMPLE - 494)) | (1 << (SqlParser.SLAVE - 494)) | (1 << (SqlParser.SLOW - 494)) | (1 << (SqlParser.SNAPSHOT - 494)))) !== 0) || ((((_la - 526)) & ~0x1f) == 0 && ((1 << (_la - 526)) & ((1 << (SqlParser.SOCKET - 526)) | (1 << (SqlParser.SOME - 526)) | (1 << (SqlParser.SONAME - 526)) | (1 << (SqlParser.SOUNDS - 526)) | (1 << (SqlParser.SOURCE - 526)) | (1 << (SqlParser.SQL_AFTER_GTIDS - 526)) | (1 << (SqlParser.SQL_AFTER_MTS_GAPS - 526)) | (1 << (SqlParser.SQL_BEFORE_GTIDS - 526)) | (1 << (SqlParser.SQL_BUFFER_RESULT - 526)) | (1 << (SqlParser.SQL_CACHE - 526)) | (1 << (SqlParser.SQL_NO_CACHE - 526)) | (1 << (SqlParser.SQL_THREAD - 526)) | (1 << (SqlParser.START - 526)) | (1 << (SqlParser.STARTS - 526)) | (1 << (SqlParser.STATS_AUTO_RECALC - 526)) | (1 << (SqlParser.STATS_PERSISTENT - 526)) | (1 << (SqlParser.STATS_SAMPLE_PAGES - 526)) | (1 << (SqlParser.STATUS - 526)) | (1 << (SqlParser.STOP - 526)) | (1 << (SqlParser.STORAGE - 526)) | (1 << (SqlParser.STRING - 526)) | (1 << (SqlParser.SUBCLASS_ORIGIN - 526)) | (1 << (SqlParser.SUBJECT - 526)) | (1 << (SqlParser.SUBPARTITION - 526)) | (1 << (SqlParser.SUBPARTITIONS - 526)) | (1 << (SqlParser.SUSPEND - 526)) | (1 << (SqlParser.SWAPS - 526)) | (1 << (SqlParser.SWITCHES - 526)) | (1 << (SqlParser.TABLE_NAME - 526)) | (1 << (SqlParser.TABLESPACE - 526)) | (1 << (SqlParser.TEMPORARY - 526)))) !== 0) || ((((_la - 558)) & ~0x1f) == 0 && ((1 << (_la - 558)) & ((1 << (SqlParser.TEMPTABLE - 558)) | (1 << (SqlParser.THAN - 558)) | (1 << (SqlParser.TRADITIONAL - 558)) | (1 << (SqlParser.TRANSACTION - 558)) | (1 << (SqlParser.TRANSACTIONAL - 558)) | (1 << (SqlParser.TRIGGERS - 558)) | (1 << (SqlParser.TRUNCATE - 558)) | (1 << (SqlParser.UNDEFINED - 558)) | (1 << (SqlParser.UNDOFILE - 558)) | (1 << (SqlParser.UNDO_BUFFER_SIZE - 558)) | (1 << (SqlParser.UNINSTALL - 558)) | (1 << (SqlParser.UNKNOWN - 558)) | (1 << (SqlParser.UNTIL - 558)) | (1 << (SqlParser.UPGRADE - 558)) | (1 << (SqlParser.USER - 558)) | (1 << (SqlParser.USE_FRM - 558)) | (1 << (SqlParser.USER_RESOURCES - 558)) | (1 << (SqlParser.VALIDATION - 558)) | (1 << (SqlParser.VALUE - 558)) | (1 << (SqlParser.VARIABLES - 558)) | (1 << (SqlParser.VIEW - 558)) | (1 << (SqlParser.WAIT - 558)) | (1 << (SqlParser.WARNINGS - 558)) | (1 << (SqlParser.WITHOUT - 558)) | (1 << (SqlParser.WORK - 558)) | (1 << (SqlParser.WRAPPER - 558)) | (1 << (SqlParser.X509 - 558)) | (1 << (SqlParser.XA - 558)) | (1 << (SqlParser.XML - 558)))) !== 0) || ((((_la - 593)) & ~0x1f) == 0 && ((1 << (_la - 593)) & ((1 << (SqlParser.INTERNAL - 593)) | (1 << (SqlParser.AUDIT_ADMIN - 593)) | (1 << (SqlParser.BACKUP_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ADMIN - 593)) | (1 << (SqlParser.BINLOG_ENCRYPTION_ADMIN - 593)) | (1 << (SqlParser.CLONE_ADMIN - 593)) | (1 << (SqlParser.CONNECTION_ADMIN - 593)) | (1 << (SqlParser.ENCRYPTION_KEY_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_ADMIN - 593)) | (1 << (SqlParser.FIREWALL_USER - 593)) | (1 << (SqlParser.GROUP_REPLICATION_ADMIN - 593)) | (1 << (SqlParser.INNODB_REDO_LOG_ARCHIVE - 593)) | (1 << (SqlParser.NDB_STORED_USER - 593)) | (1 << (SqlParser.PERSIST_RO_VARIABLES_ADMIN - 593)))) !== 0) || ((((_la - 625)) & ~0x1f) == 0 && ((1 << (_la - 625)) & ((1 << (SqlParser.REPLICATION_APPLIER - 625)) | (1 << (SqlParser.REPLICATION_SLAVE_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_ADMIN - 625)) | (1 << (SqlParser.RESOURCE_GROUP_USER - 625)) | (1 << (SqlParser.ROLE_ADMIN - 625)) | (1 << (SqlParser.SESSION_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.SET_USER_ID - 625)) | (1 << (SqlParser.SHOW_ROUTINE - 625)) | (1 << (SqlParser.SYSTEM_VARIABLES_ADMIN - 625)) | (1 << (SqlParser.TABLE_ENCRYPTION_ADMIN - 625)) | (1 << (SqlParser.VERSION_TOKEN_ADMIN - 625)) | (1 << (SqlParser.XA_RECOVER_ADMIN - 625)))) !== 0) || _la===SqlParser.MEMORY || _la===SqlParser.CATALOG_NAME || _la===SqlParser.SCHEMA_NAME)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function FunctionNameBaseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = SqlParser.RULE_functionNameBase;
+ return this;
+}
+
+FunctionNameBaseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+FunctionNameBaseContext.prototype.constructor = FunctionNameBaseContext;
+
+FunctionNameBaseContext.prototype.ABS = function() {
+ return this.getToken(SqlParser.ABS, 0);
+};
+
+FunctionNameBaseContext.prototype.ACOS = function() {
+ return this.getToken(SqlParser.ACOS, 0);
+};
+
+FunctionNameBaseContext.prototype.ADDDATE = function() {
+ return this.getToken(SqlParser.ADDDATE, 0);
+};
+
+FunctionNameBaseContext.prototype.ADDTIME = function() {
+ return this.getToken(SqlParser.ADDTIME, 0);
+};
+
+FunctionNameBaseContext.prototype.AES_DECRYPT = function() {
+ return this.getToken(SqlParser.AES_DECRYPT, 0);
+};
+
+FunctionNameBaseContext.prototype.AES_ENCRYPT = function() {
+ return this.getToken(SqlParser.AES_ENCRYPT, 0);
+};
+
+FunctionNameBaseContext.prototype.AREA = function() {
+ return this.getToken(SqlParser.AREA, 0);
+};
+
+FunctionNameBaseContext.prototype.ASBINARY = function() {
+ return this.getToken(SqlParser.ASBINARY, 0);
+};
+
+FunctionNameBaseContext.prototype.ASIN = function() {
+ return this.getToken(SqlParser.ASIN, 0);
+};
+
+FunctionNameBaseContext.prototype.ASTEXT = function() {
+ return this.getToken(SqlParser.ASTEXT, 0);
+};
+
+FunctionNameBaseContext.prototype.ASWKB = function() {
+ return this.getToken(SqlParser.ASWKB, 0);
+};
+
+FunctionNameBaseContext.prototype.ASWKT = function() {
+ return this.getToken(SqlParser.ASWKT, 0);
+};
+
+FunctionNameBaseContext.prototype.ASYMMETRIC_DECRYPT = function() {
+ return this.getToken(SqlParser.ASYMMETRIC_DECRYPT, 0);
+};
+
+FunctionNameBaseContext.prototype.ASYMMETRIC_DERIVE = function() {
+ return this.getToken(SqlParser.ASYMMETRIC_DERIVE, 0);
+};
+
+FunctionNameBaseContext.prototype.ASYMMETRIC_ENCRYPT = function() {
+ return this.getToken(SqlParser.ASYMMETRIC_ENCRYPT, 0);
+};
+
+FunctionNameBaseContext.prototype.ASYMMETRIC_SIGN = function() {
+ return this.getToken(SqlParser.ASYMMETRIC_SIGN, 0);
+};
+
+FunctionNameBaseContext.prototype.ASYMMETRIC_VERIFY = function() {
+ return this.getToken(SqlParser.ASYMMETRIC_VERIFY, 0);
+};
+
+FunctionNameBaseContext.prototype.ATAN = function() {
+ return this.getToken(SqlParser.ATAN, 0);
+};
+
+FunctionNameBaseContext.prototype.ATAN2 = function() {
+ return this.getToken(SqlParser.ATAN2, 0);
+};
+
+FunctionNameBaseContext.prototype.BENCHMARK = function() {
+ return this.getToken(SqlParser.BENCHMARK, 0);
+};
+
+FunctionNameBaseContext.prototype.BIN = function() {
+ return this.getToken(SqlParser.BIN, 0);
+};
+
+FunctionNameBaseContext.prototype.BIT_COUNT = function() {
+ return this.getToken(SqlParser.BIT_COUNT, 0);
+};
+
+FunctionNameBaseContext.prototype.BIT_LENGTH = function() {
+ return this.getToken(SqlParser.BIT_LENGTH, 0);
+};
+
+FunctionNameBaseContext.prototype.BUFFER = function() {
+ return this.getToken(SqlParser.BUFFER, 0);
+};
+
+FunctionNameBaseContext.prototype.CEIL = function() {
+ return this.getToken(SqlParser.CEIL, 0);
+};
+
+FunctionNameBaseContext.prototype.CEILING = function() {
+ return this.getToken(SqlParser.CEILING, 0);
+};
+
+FunctionNameBaseContext.prototype.CENTROID = function() {
+ return this.getToken(SqlParser.CENTROID, 0);
+};
+
+FunctionNameBaseContext.prototype.CHARACTER_LENGTH = function() {
+ return this.getToken(SqlParser.CHARACTER_LENGTH, 0);
+};
+
+FunctionNameBaseContext.prototype.CHARSET = function() {
+ return this.getToken(SqlParser.CHARSET, 0);
+};
+
+FunctionNameBaseContext.prototype.CHAR_LENGTH = function() {
+ return this.getToken(SqlParser.CHAR_LENGTH, 0);
+};
+
+FunctionNameBaseContext.prototype.COERCIBILITY = function() {
+ return this.getToken(SqlParser.COERCIBILITY, 0);
+};
+
+FunctionNameBaseContext.prototype.COLLATION = function() {
+ return this.getToken(SqlParser.COLLATION, 0);
+};
+
+FunctionNameBaseContext.prototype.COMPRESS = function() {
+ return this.getToken(SqlParser.COMPRESS, 0);
+};
+
+FunctionNameBaseContext.prototype.CONCAT = function() {
+ return this.getToken(SqlParser.CONCAT, 0);
+};
+
+FunctionNameBaseContext.prototype.CONCAT_WS = function() {
+ return this.getToken(SqlParser.CONCAT_WS, 0);
+};
+
+FunctionNameBaseContext.prototype.CONNECTION_ID = function() {
+ return this.getToken(SqlParser.CONNECTION_ID, 0);
+};
+
+FunctionNameBaseContext.prototype.CONV = function() {
+ return this.getToken(SqlParser.CONV, 0);
+};
+
+FunctionNameBaseContext.prototype.CONVERT_TZ = function() {
+ return this.getToken(SqlParser.CONVERT_TZ, 0);
+};
+
+FunctionNameBaseContext.prototype.COS = function() {
+ return this.getToken(SqlParser.COS, 0);
+};
+
+FunctionNameBaseContext.prototype.COT = function() {
+ return this.getToken(SqlParser.COT, 0);
+};
+
+FunctionNameBaseContext.prototype.COUNT = function() {
+ return this.getToken(SqlParser.COUNT, 0);
+};
+
+FunctionNameBaseContext.prototype.CRC32 = function() {
+ return this.getToken(SqlParser.CRC32, 0);
+};
+
+FunctionNameBaseContext.prototype.CREATE_ASYMMETRIC_PRIV_KEY = function() {
+ return this.getToken(SqlParser.CREATE_ASYMMETRIC_PRIV_KEY, 0);
+};
+
+FunctionNameBaseContext.prototype.CREATE_ASYMMETRIC_PUB_KEY = function() {
+ return this.getToken(SqlParser.CREATE_ASYMMETRIC_PUB_KEY, 0);
+};
+
+FunctionNameBaseContext.prototype.CREATE_DH_PARAMETERS = function() {
+ return this.getToken(SqlParser.CREATE_DH_PARAMETERS, 0);
+};
+
+FunctionNameBaseContext.prototype.CREATE_DIGEST = function() {
+ return this.getToken(SqlParser.CREATE_DIGEST, 0);
+};
+
+FunctionNameBaseContext.prototype.CROSSES = function() {
+ return this.getToken(SqlParser.CROSSES, 0);
+};
+
+FunctionNameBaseContext.prototype.DATABASE = function() {
+ return this.getToken(SqlParser.DATABASE, 0);
+};
+
+FunctionNameBaseContext.prototype.DATE = function() {
+ return this.getToken(SqlParser.DATE, 0);
+};
+
+FunctionNameBaseContext.prototype.DATEDIFF = function() {
+ return this.getToken(SqlParser.DATEDIFF, 0);
+};
+
+FunctionNameBaseContext.prototype.DATE_FORMAT = function() {
+ return this.getToken(SqlParser.DATE_FORMAT, 0);
+};
+
+FunctionNameBaseContext.prototype.DAY = function() {
+ return this.getToken(SqlParser.DAY, 0);
+};
+
+FunctionNameBaseContext.prototype.DAYNAME = function() {
+ return this.getToken(SqlParser.DAYNAME, 0);
+};
+
+FunctionNameBaseContext.prototype.DAYOFMONTH = function() {
+ return this.getToken(SqlParser.DAYOFMONTH, 0);
+};
+
+FunctionNameBaseContext.prototype.DAYOFWEEK = function() {
+ return this.getToken(SqlParser.DAYOFWEEK, 0);
+};
+
+FunctionNameBaseContext.prototype.DAYOFYEAR = function() {
+ return this.getToken(SqlParser.DAYOFYEAR, 0);
+};
+
+FunctionNameBaseContext.prototype.DECODE = function() {
+ return this.getToken(SqlParser.DECODE, 0);
+};
+
+FunctionNameBaseContext.prototype.DEGREES = function() {
+ return this.getToken(SqlParser.DEGREES, 0);
+};
+
+FunctionNameBaseContext.prototype.DES_DECRYPT = function() {
+ return this.getToken(SqlParser.DES_DECRYPT, 0);
+};
+
+FunctionNameBaseContext.prototype.DES_ENCRYPT = function() {
+ return this.getToken(SqlParser.DES_ENCRYPT, 0);
+};
+
+FunctionNameBaseContext.prototype.DIMENSION = function() {
+ return this.getToken(SqlParser.DIMENSION, 0);
+};
+
+FunctionNameBaseContext.prototype.DISJOINT = function() {
+ return this.getToken(SqlParser.DISJOINT, 0);
+};
+
+FunctionNameBaseContext.prototype.ELT = function() {
+ return this.getToken(SqlParser.ELT, 0);
+};
+
+FunctionNameBaseContext.prototype.ENCODE = function() {
+ return this.getToken(SqlParser.ENCODE, 0);
+};
+
+FunctionNameBaseContext.prototype.ENCRYPT = function() {
+ return this.getToken(SqlParser.ENCRYPT, 0);
+};
+
+FunctionNameBaseContext.prototype.ENDPOINT = function() {
+ return this.getToken(SqlParser.ENDPOINT, 0);
+};
+
+FunctionNameBaseContext.prototype.ENVELOPE = function() {
+ return this.getToken(SqlParser.ENVELOPE, 0);
+};
+
+FunctionNameBaseContext.prototype.EQUALS = function() {
+ return this.getToken(SqlParser.EQUALS, 0);
+};
+
+FunctionNameBaseContext.prototype.EXP = function() {
+ return this.getToken(SqlParser.EXP, 0);
+};
+
+FunctionNameBaseContext.prototype.EXPORT_SET = function() {
+ return this.getToken(SqlParser.EXPORT_SET, 0);
+};
+
+FunctionNameBaseContext.prototype.EXTERIORRING = function() {
+ return this.getToken(SqlParser.EXTERIORRING, 0);
+};
+
+FunctionNameBaseContext.prototype.EXTRACTVALUE = function() {
+ return this.getToken(SqlParser.EXTRACTVALUE, 0);
+};
+
+FunctionNameBaseContext.prototype.FIELD = function() {
+ return this.getToken(SqlParser.FIELD, 0);
+};
+
+FunctionNameBaseContext.prototype.FIND_IN_SET = function() {
+ return this.getToken(SqlParser.FIND_IN_SET, 0);
+};
+
+FunctionNameBaseContext.prototype.FLOOR = function() {
+ return this.getToken(SqlParser.FLOOR, 0);
+};
+
+FunctionNameBaseContext.prototype.FORMAT = function() {
+ return this.getToken(SqlParser.FORMAT, 0);
+};
+
+FunctionNameBaseContext.prototype.FOUND_ROWS = function() {
+ return this.getToken(SqlParser.FOUND_ROWS, 0);
+};
+
+FunctionNameBaseContext.prototype.FROM_BASE64 = function() {
+ return this.getToken(SqlParser.FROM_BASE64, 0);
+};
+
+FunctionNameBaseContext.prototype.FROM_DAYS = function() {
+ return this.getToken(SqlParser.FROM_DAYS, 0);
+};
+
+FunctionNameBaseContext.prototype.FROM_UNIXTIME = function() {
+ return this.getToken(SqlParser.FROM_UNIXTIME, 0);
+};
+
+FunctionNameBaseContext.prototype.GEOMCOLLFROMTEXT = function() {
+ return this.getToken(SqlParser.GEOMCOLLFROMTEXT, 0);
+};
+
+FunctionNameBaseContext.prototype.GEOMCOLLFROMWKB = function() {
+ return this.getToken(SqlParser.GEOMCOLLFROMWKB, 0);
+};
+
+FunctionNameBaseContext.prototype.GEOMETRYCOLLECTION = function() {
+ return this.getToken(SqlParser.GEOMETRYCOLLECTION, 0);
+};
+
+FunctionNameBaseContext.prototype.GEOMETRYCOLLECTIONFROMTEXT = function() {
+ return this.getToken(SqlParser.GEOMETRYCOLLECTIONFROMTEXT, 0);
+};
+
+FunctionNameBaseContext.prototype.GEOMETRYCOLLECTIONFROMWKB = function() {
+ return this.getToken(SqlParser.GEOMETRYCOLLECTIONFROMWKB, 0);
+};
+
+FunctionNameBaseContext.prototype.GEOMETRYFROMTEXT = function() {
+ return this.getToken(SqlParser.GEOMETRYFROMTEXT, 0);
+};
+
+FunctionNameBaseContext.prototype.GEOMETRYFROMWKB = function() {
+ return this.getToken(SqlParser.GEOMETRYFROMWKB, 0);
+};
+
+FunctionNameBaseContext.prototype.GEOMETRYN = function() {
+ return this.getToken(SqlParser.GEOMETRYN, 0);
+};
+
+FunctionNameBaseContext.prototype.GEOMETRYTYPE = function() {
+ return this.getToken(SqlParser.GEOMETRYTYPE, 0);
+};
+
+FunctionNameBaseContext.prototype.GEOMFROMTEXT = function() {
+ return this.getToken(SqlParser.GEOMFROMTEXT, 0);
+};
+
+FunctionNameBaseContext.prototype.GEOMFROMWKB = function() {
+ return this.getToken(SqlParser.GEOMFROMWKB, 0);
+};
+
+FunctionNameBaseContext.prototype.GET_FORMAT = function() {
+ return this.getToken(SqlParser.GET_FORMAT, 0);
+};
+
+FunctionNameBaseContext.prototype.GET_LOCK = function() {
+ return this.getToken(SqlParser.GET_LOCK, 0);
+};
+
+FunctionNameBaseContext.prototype.GLENGTH = function() {
+ return this.getToken(SqlParser.GLENGTH, 0);
+};
+
+FunctionNameBaseContext.prototype.GREATEST = function() {
+ return this.getToken(SqlParser.GREATEST, 0);
+};
+
+FunctionNameBaseContext.prototype.GTID_SUBSET = function() {
+ return this.getToken(SqlParser.GTID_SUBSET, 0);
+};
+
+FunctionNameBaseContext.prototype.GTID_SUBTRACT = function() {
+ return this.getToken(SqlParser.GTID_SUBTRACT, 0);
+};
+
+FunctionNameBaseContext.prototype.HEX = function() {
+ return this.getToken(SqlParser.HEX, 0);
+};
+
+FunctionNameBaseContext.prototype.HOUR = function() {
+ return this.getToken(SqlParser.HOUR, 0);
+};
+
+FunctionNameBaseContext.prototype.IFNULL = function() {
+ return this.getToken(SqlParser.IFNULL, 0);
+};
+
+FunctionNameBaseContext.prototype.INET6_ATON = function() {
+ return this.getToken(SqlParser.INET6_ATON, 0);
+};
+
+FunctionNameBaseContext.prototype.INET6_NTOA = function() {
+ return this.getToken(SqlParser.INET6_NTOA, 0);
+};
+
+FunctionNameBaseContext.prototype.INET_ATON = function() {
+ return this.getToken(SqlParser.INET_ATON, 0);
+};
+
+FunctionNameBaseContext.prototype.INET_NTOA = function() {
+ return this.getToken(SqlParser.INET_NTOA, 0);
+};
+
+FunctionNameBaseContext.prototype.INSTR = function() {
+ return this.getToken(SqlParser.INSTR, 0);
+};
+
+FunctionNameBaseContext.prototype.INTERIORRINGN = function() {
+ return this.getToken(SqlParser.INTERIORRINGN, 0);
+};
+
+FunctionNameBaseContext.prototype.INTERSECTS = function() {
+ return this.getToken(SqlParser.INTERSECTS, 0);
+};
+
+FunctionNameBaseContext.prototype.INVISIBLE = function() {
+ return this.getToken(SqlParser.INVISIBLE, 0);
+};
+
+FunctionNameBaseContext.prototype.ISCLOSED = function() {
+ return this.getToken(SqlParser.ISCLOSED, 0);
+};
+
+FunctionNameBaseContext.prototype.ISEMPTY = function() {
+ return this.getToken(SqlParser.ISEMPTY, 0);
+};
+
+FunctionNameBaseContext.prototype.ISNULL = function() {
+ return this.getToken(SqlParser.ISNULL, 0);
+};
+
+FunctionNameBaseContext.prototype.ISSIMPLE = function() {
+ return this.getToken(SqlParser.ISSIMPLE, 0);
+};
+
+FunctionNameBaseContext.prototype.IS_FREE_LOCK = function() {
+ return this.getToken(SqlParser.IS_FREE_LOCK, 0);
+};
+
+FunctionNameBaseContext.prototype.IS_IPV4 = function() {
+ return this.getToken(SqlParser.IS_IPV4, 0);
+};
+
+FunctionNameBaseContext.prototype.IS_IPV4_COMPAT = function() {
+ return this.getToken(SqlParser.IS_IPV4_COMPAT, 0);
+};
+
+FunctionNameBaseContext.prototype.IS_IPV4_MAPPED = function() {
+ return this.getToken(SqlParser.IS_IPV4_MAPPED, 0);
+};
+
+FunctionNameBaseContext.prototype.IS_IPV6 = function() {
+ return this.getToken(SqlParser.IS_IPV6, 0);
+};
+
+FunctionNameBaseContext.prototype.IS_USED_LOCK = function() {
+ return this.getToken(SqlParser.IS_USED_LOCK, 0);
+};
+
+FunctionNameBaseContext.prototype.LAST_INSERT_ID = function() {
+ return this.getToken(SqlParser.LAST_INSERT_ID, 0);
+};
+
+FunctionNameBaseContext.prototype.LCASE = function() {
+ return this.getToken(SqlParser.LCASE, 0);
+};
+
+FunctionNameBaseContext.prototype.LEAST = function() {
+ return this.getToken(SqlParser.LEAST, 0);
+};
+
+FunctionNameBaseContext.prototype.LEFT = function() {
+ return this.getToken(SqlParser.LEFT, 0);
+};
+
+FunctionNameBaseContext.prototype.LENGTH = function() {
+ return this.getToken(SqlParser.LENGTH, 0);
+};
+
+FunctionNameBaseContext.prototype.LINEFROMTEXT = function() {
+ return this.getToken(SqlParser.LINEFROMTEXT, 0);
+};
+
+FunctionNameBaseContext.prototype.LINEFROMWKB = function() {
+ return this.getToken(SqlParser.LINEFROMWKB, 0);
+};
+
+FunctionNameBaseContext.prototype.LINESTRING = function() {
+ return this.getToken(SqlParser.LINESTRING, 0);
+};
+
+FunctionNameBaseContext.prototype.LINESTRINGFROMTEXT = function() {
+ return this.getToken(SqlParser.LINESTRINGFROMTEXT, 0);
+};
+
+FunctionNameBaseContext.prototype.LINESTRINGFROMWKB = function() {
+ return this.getToken(SqlParser.LINESTRINGFROMWKB, 0);
+};
+
+FunctionNameBaseContext.prototype.LN = function() {
+ return this.getToken(SqlParser.LN, 0);
+};
+
+FunctionNameBaseContext.prototype.LOAD_FILE = function() {
+ return this.getToken(SqlParser.LOAD_FILE, 0);
+};
+
+FunctionNameBaseContext.prototype.LOCATE = function() {
+ return this.getToken(SqlParser.LOCATE, 0);
+};
+
+FunctionNameBaseContext.prototype.LOG = function() {
+ return this.getToken(SqlParser.LOG, 0);
+};
+
+FunctionNameBaseContext.prototype.LOG10 = function() {
+ return this.getToken(SqlParser.LOG10, 0);
+};
+
+FunctionNameBaseContext.prototype.LOG2 = function() {
+ return this.getToken(SqlParser.LOG2, 0);
+};
+
+FunctionNameBaseContext.prototype.LOWER = function() {
+ return this.getToken(SqlParser.LOWER, 0);
+};
+
+FunctionNameBaseContext.prototype.LPAD = function() {
+ return this.getToken(SqlParser.LPAD, 0);
+};
+
+FunctionNameBaseContext.prototype.LTRIM = function() {
+ return this.getToken(SqlParser.LTRIM, 0);
+};
+
+FunctionNameBaseContext.prototype.MAKEDATE = function() {
+ return this.getToken(SqlParser.MAKEDATE, 0);
+};
+
+FunctionNameBaseContext.prototype.MAKETIME = function() {
+ return this.getToken(SqlParser.MAKETIME, 0);
+};
+
+FunctionNameBaseContext.prototype.MAKE_SET = function() {
+ return this.getToken(SqlParser.MAKE_SET, 0);
+};
+
+FunctionNameBaseContext.prototype.MASTER_POS_WAIT = function() {
+ return this.getToken(SqlParser.MASTER_POS_WAIT, 0);
+};
+
+FunctionNameBaseContext.prototype.MBRCONTAINS = function() {
+ return this.getToken(SqlParser.MBRCONTAINS, 0);
+};
+
+FunctionNameBaseContext.prototype.MBRDISJOINT = function() {
+ return this.getToken(SqlParser.MBRDISJOINT, 0);
+};
+
+FunctionNameBaseContext.prototype.MBREQUAL = function() {
+ return this.getToken(SqlParser.MBREQUAL, 0);
+};
+
+FunctionNameBaseContext.prototype.MBRINTERSECTS = function() {
+ return this.getToken(SqlParser.MBRINTERSECTS, 0);
+};
+
+FunctionNameBaseContext.prototype.MBROVERLAPS = function() {
+ return this.getToken(SqlParser.MBROVERLAPS, 0);
+};
+
+FunctionNameBaseContext.prototype.MBRTOUCHES = function() {
+ return this.getToken(SqlParser.MBRTOUCHES, 0);
+};
+
+FunctionNameBaseContext.prototype.MBRWITHIN = function() {
+ return this.getToken(SqlParser.MBRWITHIN, 0);
+};
+
+FunctionNameBaseContext.prototype.MD5 = function() {
+ return this.getToken(SqlParser.MD5, 0);
+};
+
+FunctionNameBaseContext.prototype.MICROSECOND = function() {
+ return this.getToken(SqlParser.MICROSECOND, 0);
+};
+
+FunctionNameBaseContext.prototype.MINUTE = function() {
+ return this.getToken(SqlParser.MINUTE, 0);
+};
+
+FunctionNameBaseContext.prototype.MLINEFROMTEXT = function() {
+ return this.getToken(SqlParser.MLINEFROMTEXT, 0);
+};
+
+FunctionNameBaseContext.prototype.MLINEFROMWKB = function() {
+ return this.getToken(SqlParser.MLINEFROMWKB, 0);
+};
+
+FunctionNameBaseContext.prototype.MONTH = function() {
+ return this.getToken(SqlParser.MONTH, 0);
+};
+
+FunctionNameBaseContext.prototype.MONTHNAME = function() {
+ return this.getToken(SqlParser.MONTHNAME, 0);
+};
+
+FunctionNameBaseContext.prototype.MPOINTFROMTEXT = function() {
+ return this.getToken(SqlParser.MPOINTFROMTEXT, 0);
+};
+
+FunctionNameBaseContext.prototype.MPOINTFROMWKB = function() {
+ return this.getToken(SqlParser.MPOINTFROMWKB, 0);
+};
+
+FunctionNameBaseContext.prototype.MPOLYFROMTEXT = function() {
+ return this.getToken(SqlParser.MPOLYFROMTEXT, 0);
+};
+
+FunctionNameBaseContext.prototype.MPOLYFROMWKB = function() {
+ return this.getToken(SqlParser.MPOLYFROMWKB, 0);
+};
+
+FunctionNameBaseContext.prototype.MULTILINESTRING = function() {
+ return this.getToken(SqlParser.MULTILINESTRING, 0);
+};
+
+FunctionNameBaseContext.prototype.MULTILINESTRINGFROMTEXT = function() {
+ return this.getToken(SqlParser.MULTILINESTRINGFROMTEXT, 0);
+};
+
+FunctionNameBaseContext.prototype.MULTILINESTRINGFROMWKB = function() {
+ return this.getToken(SqlParser.MULTILINESTRINGFROMWKB, 0);
+};
+
+FunctionNameBaseContext.prototype.MULTIPOINT = function() {
+ return this.getToken(SqlParser.MULTIPOINT, 0);
+};
+
+FunctionNameBaseContext.prototype.MULTIPOINTFROMTEXT = function() {
+ return this.getToken(SqlParser.MULTIPOINTFROMTEXT, 0);
+};
+
+FunctionNameBaseContext.prototype.MULTIPOINTFROMWKB = function() {
+ return this.getToken(SqlParser.MULTIPOINTFROMWKB, 0);
+};
+
+FunctionNameBaseContext.prototype.MULTIPOLYGON = function() {
+ return this.getToken(SqlParser.MULTIPOLYGON, 0);
+};
+
+FunctionNameBaseContext.prototype.MULTIPOLYGONFROMTEXT = function() {
+ return this.getToken(SqlParser.MULTIPOLYGONFROMTEXT, 0);
+};
+
+FunctionNameBaseContext.prototype.MULTIPOLYGONFROMWKB = function() {
+ return this.getToken(SqlParser.MULTIPOLYGONFROMWKB, 0);
+};
+
+FunctionNameBaseContext.prototype.NAME_CONST = function() {
+ return this.getToken(SqlParser.NAME_CONST, 0);
+};
+
+FunctionNameBaseContext.prototype.NULLIF = function() {
+ return this.getToken(SqlParser.NULLIF, 0);
+};
+
+FunctionNameBaseContext.prototype.NUMGEOMETRIES = function() {
+ return this.getToken(SqlParser.NUMGEOMETRIES, 0);
+};
+
+FunctionNameBaseContext.prototype.NUMINTERIORRINGS = function() {
+ return this.getToken(SqlParser.NUMINTERIORRINGS, 0);
+};
+
+FunctionNameBaseContext.prototype.NUMPOINTS = function() {
+ return this.getToken(SqlParser.NUMPOINTS, 0);
+};
+
+FunctionNameBaseContext.prototype.OCT = function() {
+ return this.getToken(SqlParser.OCT, 0);
+};
+
+FunctionNameBaseContext.prototype.OCTET_LENGTH = function() {
+ return this.getToken(SqlParser.OCTET_LENGTH, 0);
+};
+
+FunctionNameBaseContext.prototype.ORD = function() {
+ return this.getToken(SqlParser.ORD, 0);
+};
+
+FunctionNameBaseContext.prototype.OVERLAPS = function() {
+ return this.getToken(SqlParser.OVERLAPS, 0);
+};
+
+FunctionNameBaseContext.prototype.PERIOD_ADD = function() {
+ return this.getToken(SqlParser.PERIOD_ADD, 0);
+};
+
+FunctionNameBaseContext.prototype.PERIOD_DIFF = function() {
+ return this.getToken(SqlParser.PERIOD_DIFF, 0);
+};
+
+FunctionNameBaseContext.prototype.PI = function() {
+ return this.getToken(SqlParser.PI, 0);
+};
+
+FunctionNameBaseContext.prototype.POINT = function() {
+ return this.getToken(SqlParser.POINT, 0);
+};
+
+FunctionNameBaseContext.prototype.POINTFROMTEXT = function() {
+ return this.getToken(SqlParser.POINTFROMTEXT, 0);
+};
+
+FunctionNameBaseContext.prototype.POINTFROMWKB = function() {
+ return this.getToken(SqlParser.POINTFROMWKB, 0);
+};
+
+FunctionNameBaseContext.prototype.POINTN = function() {
+ return this.getToken(SqlParser.POINTN, 0);
+};
+
+FunctionNameBaseContext.prototype.POLYFROMTEXT = function() {
+ return this.getToken(SqlParser.POLYFROMTEXT, 0);
+};
+
+FunctionNameBaseContext.prototype.POLYFROMWKB = function() {
+ return this.getToken(SqlParser.POLYFROMWKB, 0);
+};
+
+FunctionNameBaseContext.prototype.POLYGON = function() {
+ return this.getToken(SqlParser.POLYGON, 0);
+};
+
+FunctionNameBaseContext.prototype.POLYGONFROMTEXT = function() {
+ return this.getToken(SqlParser.POLYGONFROMTEXT, 0);
+};
+
+FunctionNameBaseContext.prototype.POLYGONFROMWKB = function() {
+ return this.getToken(SqlParser.POLYGONFROMWKB, 0);
+};
+
+FunctionNameBaseContext.prototype.POSITION = function() {
+ return this.getToken(SqlParser.POSITION, 0);
+};
+
+FunctionNameBaseContext.prototype.POW = function() {
+ return this.getToken(SqlParser.POW, 0);
+};
+
+FunctionNameBaseContext.prototype.POWER = function() {
+ return this.getToken(SqlParser.POWER, 0);
+};
+
+FunctionNameBaseContext.prototype.QUARTER = function() {
+ return this.getToken(SqlParser.QUARTER, 0);
+};
+
+FunctionNameBaseContext.prototype.QUOTE = function() {
+ return this.getToken(SqlParser.QUOTE, 0);
+};
+
+FunctionNameBaseContext.prototype.RADIANS = function() {
+ return this.getToken(SqlParser.RADIANS, 0);
+};
+
+FunctionNameBaseContext.prototype.RAND = function() {
+ return this.getToken(SqlParser.RAND, 0);
+};
+
+FunctionNameBaseContext.prototype.RANDOM_BYTES = function() {
+ return this.getToken(SqlParser.RANDOM_BYTES, 0);
+};
+
+FunctionNameBaseContext.prototype.RELEASE_LOCK = function() {
+ return this.getToken(SqlParser.RELEASE_LOCK, 0);
+};
+
+FunctionNameBaseContext.prototype.REVERSE = function() {
+ return this.getToken(SqlParser.REVERSE, 0);
+};
+
+FunctionNameBaseContext.prototype.RIGHT = function() {
+ return this.getToken(SqlParser.RIGHT, 0);
+};
+
+FunctionNameBaseContext.prototype.ROUND = function() {
+ return this.getToken(SqlParser.ROUND, 0);
+};
+
+FunctionNameBaseContext.prototype.ROW_COUNT = function() {
+ return this.getToken(SqlParser.ROW_COUNT, 0);
+};
+
+FunctionNameBaseContext.prototype.RPAD = function() {
+ return this.getToken(SqlParser.RPAD, 0);
+};
+
+FunctionNameBaseContext.prototype.RTRIM = function() {
+ return this.getToken(SqlParser.RTRIM, 0);
+};
+
+FunctionNameBaseContext.prototype.SECOND = function() {
+ return this.getToken(SqlParser.SECOND, 0);
+};
+
+FunctionNameBaseContext.prototype.SEC_TO_TIME = function() {
+ return this.getToken(SqlParser.SEC_TO_TIME, 0);
+};
+
+FunctionNameBaseContext.prototype.SESSION_USER = function() {
+ return this.getToken(SqlParser.SESSION_USER, 0);
+};
+
+FunctionNameBaseContext.prototype.SESSION_VARIABLES_ADMIN = function() {
+ return this.getToken(SqlParser.SESSION_VARIABLES_ADMIN, 0);
+};
+
+FunctionNameBaseContext.prototype.SHA = function() {
+ return this.getToken(SqlParser.SHA, 0);
+};
+
+FunctionNameBaseContext.prototype.SHA1 = function() {
+ return this.getToken(SqlParser.SHA1, 0);
+};
+
+FunctionNameBaseContext.prototype.SHA2 = function() {
+ return this.getToken(SqlParser.SHA2, 0);
+};
+
+FunctionNameBaseContext.prototype.SIGN = function() {
+ return this.getToken(SqlParser.SIGN, 0);
+};
+
+FunctionNameBaseContext.prototype.SIN = function() {
+ return this.getToken(SqlParser.SIN, 0);
+};
+
+FunctionNameBaseContext.prototype.SLEEP = function() {
+ return this.getToken(SqlParser.SLEEP, 0);
+};
+
+FunctionNameBaseContext.prototype.SOUNDEX = function() {
+ return this.getToken(SqlParser.SOUNDEX, 0);
+};
+
+FunctionNameBaseContext.prototype.SQL_THREAD_WAIT_AFTER_GTIDS = function() {
+ return this.getToken(SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS, 0);
+};
+
+FunctionNameBaseContext.prototype.SQRT = function() {
+ return this.getToken(SqlParser.SQRT, 0);
+};
+
+FunctionNameBaseContext.prototype.SRID = function() {
+ return this.getToken(SqlParser.SRID, 0);
+};
+
+FunctionNameBaseContext.prototype.STARTPOINT = function() {
+ return this.getToken(SqlParser.STARTPOINT, 0);
+};
+
+FunctionNameBaseContext.prototype.STRCMP = function() {
+ return this.getToken(SqlParser.STRCMP, 0);
+};
+
+FunctionNameBaseContext.prototype.STR_TO_DATE = function() {
+ return this.getToken(SqlParser.STR_TO_DATE, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_AREA = function() {
+ return this.getToken(SqlParser.ST_AREA, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_ASBINARY = function() {
+ return this.getToken(SqlParser.ST_ASBINARY, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_ASTEXT = function() {
+ return this.getToken(SqlParser.ST_ASTEXT, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_ASWKB = function() {
+ return this.getToken(SqlParser.ST_ASWKB, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_ASWKT = function() {
+ return this.getToken(SqlParser.ST_ASWKT, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_BUFFER = function() {
+ return this.getToken(SqlParser.ST_BUFFER, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_CENTROID = function() {
+ return this.getToken(SqlParser.ST_CENTROID, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_CONTAINS = function() {
+ return this.getToken(SqlParser.ST_CONTAINS, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_CROSSES = function() {
+ return this.getToken(SqlParser.ST_CROSSES, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_DIFFERENCE = function() {
+ return this.getToken(SqlParser.ST_DIFFERENCE, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_DIMENSION = function() {
+ return this.getToken(SqlParser.ST_DIMENSION, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_DISJOINT = function() {
+ return this.getToken(SqlParser.ST_DISJOINT, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_DISTANCE = function() {
+ return this.getToken(SqlParser.ST_DISTANCE, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_ENDPOINT = function() {
+ return this.getToken(SqlParser.ST_ENDPOINT, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_ENVELOPE = function() {
+ return this.getToken(SqlParser.ST_ENVELOPE, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_EQUALS = function() {
+ return this.getToken(SqlParser.ST_EQUALS, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_EXTERIORRING = function() {
+ return this.getToken(SqlParser.ST_EXTERIORRING, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_GEOMCOLLFROMTEXT = function() {
+ return this.getToken(SqlParser.ST_GEOMCOLLFROMTEXT, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_GEOMCOLLFROMTXT = function() {
+ return this.getToken(SqlParser.ST_GEOMCOLLFROMTXT, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_GEOMCOLLFROMWKB = function() {
+ return this.getToken(SqlParser.ST_GEOMCOLLFROMWKB, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_GEOMETRYCOLLECTIONFROMTEXT = function() {
+ return this.getToken(SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_GEOMETRYCOLLECTIONFROMWKB = function() {
+ return this.getToken(SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_GEOMETRYFROMTEXT = function() {
+ return this.getToken(SqlParser.ST_GEOMETRYFROMTEXT, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_GEOMETRYFROMWKB = function() {
+ return this.getToken(SqlParser.ST_GEOMETRYFROMWKB, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_GEOMETRYN = function() {
+ return this.getToken(SqlParser.ST_GEOMETRYN, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_GEOMETRYTYPE = function() {
+ return this.getToken(SqlParser.ST_GEOMETRYTYPE, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_GEOMFROMTEXT = function() {
+ return this.getToken(SqlParser.ST_GEOMFROMTEXT, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_GEOMFROMWKB = function() {
+ return this.getToken(SqlParser.ST_GEOMFROMWKB, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_INTERIORRINGN = function() {
+ return this.getToken(SqlParser.ST_INTERIORRINGN, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_INTERSECTION = function() {
+ return this.getToken(SqlParser.ST_INTERSECTION, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_INTERSECTS = function() {
+ return this.getToken(SqlParser.ST_INTERSECTS, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_ISCLOSED = function() {
+ return this.getToken(SqlParser.ST_ISCLOSED, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_ISEMPTY = function() {
+ return this.getToken(SqlParser.ST_ISEMPTY, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_ISSIMPLE = function() {
+ return this.getToken(SqlParser.ST_ISSIMPLE, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_LINEFROMTEXT = function() {
+ return this.getToken(SqlParser.ST_LINEFROMTEXT, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_LINEFROMWKB = function() {
+ return this.getToken(SqlParser.ST_LINEFROMWKB, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_LINESTRINGFROMTEXT = function() {
+ return this.getToken(SqlParser.ST_LINESTRINGFROMTEXT, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_LINESTRINGFROMWKB = function() {
+ return this.getToken(SqlParser.ST_LINESTRINGFROMWKB, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_NUMGEOMETRIES = function() {
+ return this.getToken(SqlParser.ST_NUMGEOMETRIES, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_NUMINTERIORRING = function() {
+ return this.getToken(SqlParser.ST_NUMINTERIORRING, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_NUMINTERIORRINGS = function() {
+ return this.getToken(SqlParser.ST_NUMINTERIORRINGS, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_NUMPOINTS = function() {
+ return this.getToken(SqlParser.ST_NUMPOINTS, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_OVERLAPS = function() {
+ return this.getToken(SqlParser.ST_OVERLAPS, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_POINTFROMTEXT = function() {
+ return this.getToken(SqlParser.ST_POINTFROMTEXT, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_POINTFROMWKB = function() {
+ return this.getToken(SqlParser.ST_POINTFROMWKB, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_POINTN = function() {
+ return this.getToken(SqlParser.ST_POINTN, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_POLYFROMTEXT = function() {
+ return this.getToken(SqlParser.ST_POLYFROMTEXT, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_POLYFROMWKB = function() {
+ return this.getToken(SqlParser.ST_POLYFROMWKB, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_POLYGONFROMTEXT = function() {
+ return this.getToken(SqlParser.ST_POLYGONFROMTEXT, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_POLYGONFROMWKB = function() {
+ return this.getToken(SqlParser.ST_POLYGONFROMWKB, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_SRID = function() {
+ return this.getToken(SqlParser.ST_SRID, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_STARTPOINT = function() {
+ return this.getToken(SqlParser.ST_STARTPOINT, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_SYMDIFFERENCE = function() {
+ return this.getToken(SqlParser.ST_SYMDIFFERENCE, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_TOUCHES = function() {
+ return this.getToken(SqlParser.ST_TOUCHES, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_UNION = function() {
+ return this.getToken(SqlParser.ST_UNION, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_WITHIN = function() {
+ return this.getToken(SqlParser.ST_WITHIN, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_X = function() {
+ return this.getToken(SqlParser.ST_X, 0);
+};
+
+FunctionNameBaseContext.prototype.ST_Y = function() {
+ return this.getToken(SqlParser.ST_Y, 0);
+};
+
+FunctionNameBaseContext.prototype.SUBDATE = function() {
+ return this.getToken(SqlParser.SUBDATE, 0);
+};
+
+FunctionNameBaseContext.prototype.SUBSTRING_INDEX = function() {
+ return this.getToken(SqlParser.SUBSTRING_INDEX, 0);
+};
+
+FunctionNameBaseContext.prototype.SUBTIME = function() {
+ return this.getToken(SqlParser.SUBTIME, 0);
+};
+
+FunctionNameBaseContext.prototype.SYSTEM_USER = function() {
+ return this.getToken(SqlParser.SYSTEM_USER, 0);
+};
+
+FunctionNameBaseContext.prototype.TAN = function() {
+ return this.getToken(SqlParser.TAN, 0);
+};
+
+FunctionNameBaseContext.prototype.TIME = function() {
+ return this.getToken(SqlParser.TIME, 0);
+};
+
+FunctionNameBaseContext.prototype.TIMEDIFF = function() {
+ return this.getToken(SqlParser.TIMEDIFF, 0);
+};
+
+FunctionNameBaseContext.prototype.TIMESTAMP = function() {
+ return this.getToken(SqlParser.TIMESTAMP, 0);
+};
+
+FunctionNameBaseContext.prototype.TIMESTAMPADD = function() {
+ return this.getToken(SqlParser.TIMESTAMPADD, 0);
+};
+
+FunctionNameBaseContext.prototype.TIMESTAMPDIFF = function() {
+ return this.getToken(SqlParser.TIMESTAMPDIFF, 0);
+};
+
+FunctionNameBaseContext.prototype.TIME_FORMAT = function() {
+ return this.getToken(SqlParser.TIME_FORMAT, 0);
+};
+
+FunctionNameBaseContext.prototype.TIME_TO_SEC = function() {
+ return this.getToken(SqlParser.TIME_TO_SEC, 0);
+};
+
+FunctionNameBaseContext.prototype.TOUCHES = function() {
+ return this.getToken(SqlParser.TOUCHES, 0);
+};
+
+FunctionNameBaseContext.prototype.TO_BASE64 = function() {
+ return this.getToken(SqlParser.TO_BASE64, 0);
+};
+
+FunctionNameBaseContext.prototype.TO_DAYS = function() {
+ return this.getToken(SqlParser.TO_DAYS, 0);
+};
+
+FunctionNameBaseContext.prototype.TO_SECONDS = function() {
+ return this.getToken(SqlParser.TO_SECONDS, 0);
+};
+
+FunctionNameBaseContext.prototype.UCASE = function() {
+ return this.getToken(SqlParser.UCASE, 0);
+};
+
+FunctionNameBaseContext.prototype.UNCOMPRESS = function() {
+ return this.getToken(SqlParser.UNCOMPRESS, 0);
+};
+
+FunctionNameBaseContext.prototype.UNCOMPRESSED_LENGTH = function() {
+ return this.getToken(SqlParser.UNCOMPRESSED_LENGTH, 0);
+};
+
+FunctionNameBaseContext.prototype.UNHEX = function() {
+ return this.getToken(SqlParser.UNHEX, 0);
+};
+
+FunctionNameBaseContext.prototype.UNIX_TIMESTAMP = function() {
+ return this.getToken(SqlParser.UNIX_TIMESTAMP, 0);
+};
+
+FunctionNameBaseContext.prototype.UPDATEXML = function() {
+ return this.getToken(SqlParser.UPDATEXML, 0);
+};
+
+FunctionNameBaseContext.prototype.UPPER = function() {
+ return this.getToken(SqlParser.UPPER, 0);
+};
+
+FunctionNameBaseContext.prototype.UUID = function() {
+ return this.getToken(SqlParser.UUID, 0);
+};
+
+FunctionNameBaseContext.prototype.UUID_SHORT = function() {
+ return this.getToken(SqlParser.UUID_SHORT, 0);
+};
+
+FunctionNameBaseContext.prototype.VALIDATE_PASSWORD_STRENGTH = function() {
+ return this.getToken(SqlParser.VALIDATE_PASSWORD_STRENGTH, 0);
+};
+
+FunctionNameBaseContext.prototype.VERSION = function() {
+ return this.getToken(SqlParser.VERSION, 0);
+};
+
+FunctionNameBaseContext.prototype.VISIBLE = function() {
+ return this.getToken(SqlParser.VISIBLE, 0);
+};
+
+FunctionNameBaseContext.prototype.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS = function() {
+ return this.getToken(SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS, 0);
+};
+
+FunctionNameBaseContext.prototype.WEEK = function() {
+ return this.getToken(SqlParser.WEEK, 0);
+};
+
+FunctionNameBaseContext.prototype.WEEKDAY = function() {
+ return this.getToken(SqlParser.WEEKDAY, 0);
+};
+
+FunctionNameBaseContext.prototype.WEEKOFYEAR = function() {
+ return this.getToken(SqlParser.WEEKOFYEAR, 0);
+};
+
+FunctionNameBaseContext.prototype.WEIGHT_STRING = function() {
+ return this.getToken(SqlParser.WEIGHT_STRING, 0);
+};
+
+FunctionNameBaseContext.prototype.WITHIN = function() {
+ return this.getToken(SqlParser.WITHIN, 0);
+};
+
+FunctionNameBaseContext.prototype.YEAR = function() {
+ return this.getToken(SqlParser.YEAR, 0);
+};
+
+FunctionNameBaseContext.prototype.YEARWEEK = function() {
+ return this.getToken(SqlParser.YEARWEEK, 0);
+};
+
+FunctionNameBaseContext.prototype.Y_FUNCTION = function() {
+ return this.getToken(SqlParser.Y_FUNCTION, 0);
+};
+
+FunctionNameBaseContext.prototype.X_FUNCTION = function() {
+ return this.getToken(SqlParser.X_FUNCTION, 0);
+};
+
+FunctionNameBaseContext.prototype.JSON_VALID = function() {
+ return this.getToken(SqlParser.JSON_VALID, 0);
+};
+
+FunctionNameBaseContext.prototype.JSON_SCHEMA_VALID = function() {
+ return this.getToken(SqlParser.JSON_SCHEMA_VALID, 0);
+};
+
+FunctionNameBaseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.enterFunctionNameBase(this);
+ }
+};
+
+FunctionNameBaseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof SqlParserListener ) {
+ listener.exitFunctionNameBase(this);
+ }
+};
+
+FunctionNameBaseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof SqlParserVisitor ) {
+ return visitor.visitFunctionNameBase(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+SqlParser.FunctionNameBaseContext = FunctionNameBaseContext;
+
+SqlParser.prototype.functionNameBase = function() {
+
+ var localctx = new FunctionNameBaseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 630, SqlParser.RULE_functionNameBase);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6379;
+ _la = this._input.LA(1);
+ if(!(_la===SqlParser.DATABASE || _la===SqlParser.LEFT || _la===SqlParser.RIGHT || ((((_la - 199)) & ~0x1f) == 0 && ((1 << (_la - 199)) & ((1 << (SqlParser.DATE - 199)) | (1 << (SqlParser.TIME - 199)) | (1 << (SqlParser.TIMESTAMP - 199)) | (1 << (SqlParser.YEAR - 199)))) !== 0) || ((((_la - 233)) & ~0x1f) == 0 && ((1 << (_la - 233)) & ((1 << (SqlParser.JSON_VALID - 233)) | (1 << (SqlParser.JSON_SCHEMA_VALID - 233)) | (1 << (SqlParser.COUNT - 233)) | (1 << (SqlParser.POSITION - 233)))) !== 0) || _la===SqlParser.INVISIBLE || ((((_la - 580)) & ~0x1f) == 0 && ((1 << (_la - 580)) & ((1 << (SqlParser.VISIBLE - 580)) | (1 << (SqlParser.QUARTER - 580)) | (1 << (SqlParser.MONTH - 580)) | (1 << (SqlParser.DAY - 580)) | (1 << (SqlParser.HOUR - 580)) | (1 << (SqlParser.MINUTE - 580)) | (1 << (SqlParser.WEEK - 580)) | (1 << (SqlParser.SECOND - 580)) | (1 << (SqlParser.MICROSECOND - 580)))) !== 0) || _la===SqlParser.SESSION_VARIABLES_ADMIN || ((((_la - 693)) & ~0x1f) == 0 && ((1 << (_la - 693)) & ((1 << (SqlParser.GEOMETRYCOLLECTION - 693)) | (1 << (SqlParser.LINESTRING - 693)) | (1 << (SqlParser.MULTILINESTRING - 693)) | (1 << (SqlParser.MULTIPOINT - 693)) | (1 << (SqlParser.MULTIPOLYGON - 693)) | (1 << (SqlParser.POINT - 693)) | (1 << (SqlParser.POLYGON - 693)) | (1 << (SqlParser.ABS - 693)) | (1 << (SqlParser.ACOS - 693)) | (1 << (SqlParser.ADDDATE - 693)) | (1 << (SqlParser.ADDTIME - 693)) | (1 << (SqlParser.AES_DECRYPT - 693)) | (1 << (SqlParser.AES_ENCRYPT - 693)) | (1 << (SqlParser.AREA - 693)) | (1 << (SqlParser.ASBINARY - 693)) | (1 << (SqlParser.ASIN - 693)) | (1 << (SqlParser.ASTEXT - 693)) | (1 << (SqlParser.ASWKB - 693)) | (1 << (SqlParser.ASWKT - 693)) | (1 << (SqlParser.ASYMMETRIC_DECRYPT - 693)) | (1 << (SqlParser.ASYMMETRIC_DERIVE - 693)) | (1 << (SqlParser.ASYMMETRIC_ENCRYPT - 693)) | (1 << (SqlParser.ASYMMETRIC_SIGN - 693)) | (1 << (SqlParser.ASYMMETRIC_VERIFY - 693)) | (1 << (SqlParser.ATAN - 693)) | (1 << (SqlParser.ATAN2 - 693)) | (1 << (SqlParser.BENCHMARK - 693)) | (1 << (SqlParser.BIN - 693)) | (1 << (SqlParser.BIT_COUNT - 693)) | (1 << (SqlParser.BIT_LENGTH - 693)))) !== 0) || ((((_la - 725)) & ~0x1f) == 0 && ((1 << (_la - 725)) & ((1 << (SqlParser.BUFFER - 725)) | (1 << (SqlParser.CEIL - 725)) | (1 << (SqlParser.CEILING - 725)) | (1 << (SqlParser.CENTROID - 725)) | (1 << (SqlParser.CHARACTER_LENGTH - 725)) | (1 << (SqlParser.CHARSET - 725)) | (1 << (SqlParser.CHAR_LENGTH - 725)) | (1 << (SqlParser.COERCIBILITY - 725)) | (1 << (SqlParser.COLLATION - 725)) | (1 << (SqlParser.COMPRESS - 725)) | (1 << (SqlParser.CONCAT - 725)) | (1 << (SqlParser.CONCAT_WS - 725)) | (1 << (SqlParser.CONNECTION_ID - 725)) | (1 << (SqlParser.CONV - 725)) | (1 << (SqlParser.CONVERT_TZ - 725)) | (1 << (SqlParser.COS - 725)) | (1 << (SqlParser.COT - 725)) | (1 << (SqlParser.CRC32 - 725)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PRIV_KEY - 725)) | (1 << (SqlParser.CREATE_ASYMMETRIC_PUB_KEY - 725)) | (1 << (SqlParser.CREATE_DH_PARAMETERS - 725)) | (1 << (SqlParser.CREATE_DIGEST - 725)) | (1 << (SqlParser.CROSSES - 725)) | (1 << (SqlParser.DATEDIFF - 725)) | (1 << (SqlParser.DATE_FORMAT - 725)) | (1 << (SqlParser.DAYNAME - 725)) | (1 << (SqlParser.DAYOFMONTH - 725)) | (1 << (SqlParser.DAYOFWEEK - 725)) | (1 << (SqlParser.DAYOFYEAR - 725)) | (1 << (SqlParser.DECODE - 725)) | (1 << (SqlParser.DEGREES - 725)))) !== 0) || ((((_la - 757)) & ~0x1f) == 0 && ((1 << (_la - 757)) & ((1 << (SqlParser.DES_DECRYPT - 757)) | (1 << (SqlParser.DES_ENCRYPT - 757)) | (1 << (SqlParser.DIMENSION - 757)) | (1 << (SqlParser.DISJOINT - 757)) | (1 << (SqlParser.ELT - 757)) | (1 << (SqlParser.ENCODE - 757)) | (1 << (SqlParser.ENCRYPT - 757)) | (1 << (SqlParser.ENDPOINT - 757)) | (1 << (SqlParser.ENVELOPE - 757)) | (1 << (SqlParser.EQUALS - 757)) | (1 << (SqlParser.EXP - 757)) | (1 << (SqlParser.EXPORT_SET - 757)) | (1 << (SqlParser.EXTERIORRING - 757)) | (1 << (SqlParser.EXTRACTVALUE - 757)) | (1 << (SqlParser.FIELD - 757)) | (1 << (SqlParser.FIND_IN_SET - 757)) | (1 << (SqlParser.FLOOR - 757)) | (1 << (SqlParser.FORMAT - 757)) | (1 << (SqlParser.FOUND_ROWS - 757)) | (1 << (SqlParser.FROM_BASE64 - 757)) | (1 << (SqlParser.FROM_DAYS - 757)) | (1 << (SqlParser.FROM_UNIXTIME - 757)) | (1 << (SqlParser.GEOMCOLLFROMTEXT - 757)) | (1 << (SqlParser.GEOMCOLLFROMWKB - 757)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMTEXT - 757)) | (1 << (SqlParser.GEOMETRYCOLLECTIONFROMWKB - 757)) | (1 << (SqlParser.GEOMETRYFROMTEXT - 757)) | (1 << (SqlParser.GEOMETRYFROMWKB - 757)) | (1 << (SqlParser.GEOMETRYN - 757)) | (1 << (SqlParser.GEOMETRYTYPE - 757)) | (1 << (SqlParser.GEOMFROMTEXT - 757)) | (1 << (SqlParser.GEOMFROMWKB - 757)))) !== 0) || ((((_la - 789)) & ~0x1f) == 0 && ((1 << (_la - 789)) & ((1 << (SqlParser.GET_FORMAT - 789)) | (1 << (SqlParser.GET_LOCK - 789)) | (1 << (SqlParser.GLENGTH - 789)) | (1 << (SqlParser.GREATEST - 789)) | (1 << (SqlParser.GTID_SUBSET - 789)) | (1 << (SqlParser.GTID_SUBTRACT - 789)) | (1 << (SqlParser.HEX - 789)) | (1 << (SqlParser.IFNULL - 789)) | (1 << (SqlParser.INET6_ATON - 789)) | (1 << (SqlParser.INET6_NTOA - 789)) | (1 << (SqlParser.INET_ATON - 789)) | (1 << (SqlParser.INET_NTOA - 789)) | (1 << (SqlParser.INSTR - 789)) | (1 << (SqlParser.INTERIORRINGN - 789)) | (1 << (SqlParser.INTERSECTS - 789)) | (1 << (SqlParser.ISCLOSED - 789)) | (1 << (SqlParser.ISEMPTY - 789)) | (1 << (SqlParser.ISNULL - 789)) | (1 << (SqlParser.ISSIMPLE - 789)) | (1 << (SqlParser.IS_FREE_LOCK - 789)) | (1 << (SqlParser.IS_IPV4 - 789)) | (1 << (SqlParser.IS_IPV4_COMPAT - 789)) | (1 << (SqlParser.IS_IPV4_MAPPED - 789)) | (1 << (SqlParser.IS_IPV6 - 789)) | (1 << (SqlParser.IS_USED_LOCK - 789)) | (1 << (SqlParser.LAST_INSERT_ID - 789)) | (1 << (SqlParser.LCASE - 789)) | (1 << (SqlParser.LEAST - 789)) | (1 << (SqlParser.LENGTH - 789)) | (1 << (SqlParser.LINEFROMTEXT - 789)) | (1 << (SqlParser.LINEFROMWKB - 789)) | (1 << (SqlParser.LINESTRINGFROMTEXT - 789)))) !== 0) || ((((_la - 821)) & ~0x1f) == 0 && ((1 << (_la - 821)) & ((1 << (SqlParser.LINESTRINGFROMWKB - 821)) | (1 << (SqlParser.LN - 821)) | (1 << (SqlParser.LOAD_FILE - 821)) | (1 << (SqlParser.LOCATE - 821)) | (1 << (SqlParser.LOG - 821)) | (1 << (SqlParser.LOG10 - 821)) | (1 << (SqlParser.LOG2 - 821)) | (1 << (SqlParser.LOWER - 821)) | (1 << (SqlParser.LPAD - 821)) | (1 << (SqlParser.LTRIM - 821)) | (1 << (SqlParser.MAKEDATE - 821)) | (1 << (SqlParser.MAKETIME - 821)) | (1 << (SqlParser.MAKE_SET - 821)) | (1 << (SqlParser.MASTER_POS_WAIT - 821)) | (1 << (SqlParser.MBRCONTAINS - 821)) | (1 << (SqlParser.MBRDISJOINT - 821)) | (1 << (SqlParser.MBREQUAL - 821)) | (1 << (SqlParser.MBRINTERSECTS - 821)) | (1 << (SqlParser.MBROVERLAPS - 821)) | (1 << (SqlParser.MBRTOUCHES - 821)) | (1 << (SqlParser.MBRWITHIN - 821)) | (1 << (SqlParser.MD5 - 821)) | (1 << (SqlParser.MLINEFROMTEXT - 821)) | (1 << (SqlParser.MLINEFROMWKB - 821)) | (1 << (SqlParser.MONTHNAME - 821)) | (1 << (SqlParser.MPOINTFROMTEXT - 821)) | (1 << (SqlParser.MPOINTFROMWKB - 821)) | (1 << (SqlParser.MPOLYFROMTEXT - 821)) | (1 << (SqlParser.MPOLYFROMWKB - 821)) | (1 << (SqlParser.MULTILINESTRINGFROMTEXT - 821)) | (1 << (SqlParser.MULTILINESTRINGFROMWKB - 821)) | (1 << (SqlParser.MULTIPOINTFROMTEXT - 821)))) !== 0) || ((((_la - 853)) & ~0x1f) == 0 && ((1 << (_la - 853)) & ((1 << (SqlParser.MULTIPOINTFROMWKB - 853)) | (1 << (SqlParser.MULTIPOLYGONFROMTEXT - 853)) | (1 << (SqlParser.MULTIPOLYGONFROMWKB - 853)) | (1 << (SqlParser.NAME_CONST - 853)) | (1 << (SqlParser.NULLIF - 853)) | (1 << (SqlParser.NUMGEOMETRIES - 853)) | (1 << (SqlParser.NUMINTERIORRINGS - 853)) | (1 << (SqlParser.NUMPOINTS - 853)) | (1 << (SqlParser.OCT - 853)) | (1 << (SqlParser.OCTET_LENGTH - 853)) | (1 << (SqlParser.ORD - 853)) | (1 << (SqlParser.OVERLAPS - 853)) | (1 << (SqlParser.PERIOD_ADD - 853)) | (1 << (SqlParser.PERIOD_DIFF - 853)) | (1 << (SqlParser.PI - 853)) | (1 << (SqlParser.POINTFROMTEXT - 853)) | (1 << (SqlParser.POINTFROMWKB - 853)) | (1 << (SqlParser.POINTN - 853)) | (1 << (SqlParser.POLYFROMTEXT - 853)) | (1 << (SqlParser.POLYFROMWKB - 853)) | (1 << (SqlParser.POLYGONFROMTEXT - 853)) | (1 << (SqlParser.POLYGONFROMWKB - 853)) | (1 << (SqlParser.POW - 853)) | (1 << (SqlParser.POWER - 853)) | (1 << (SqlParser.QUOTE - 853)) | (1 << (SqlParser.RADIANS - 853)) | (1 << (SqlParser.RAND - 853)) | (1 << (SqlParser.RANDOM_BYTES - 853)) | (1 << (SqlParser.RELEASE_LOCK - 853)) | (1 << (SqlParser.REVERSE - 853)) | (1 << (SqlParser.ROUND - 853)) | (1 << (SqlParser.ROW_COUNT - 853)))) !== 0) || ((((_la - 885)) & ~0x1f) == 0 && ((1 << (_la - 885)) & ((1 << (SqlParser.RPAD - 885)) | (1 << (SqlParser.RTRIM - 885)) | (1 << (SqlParser.SEC_TO_TIME - 885)) | (1 << (SqlParser.SESSION_USER - 885)) | (1 << (SqlParser.SHA - 885)) | (1 << (SqlParser.SHA1 - 885)) | (1 << (SqlParser.SHA2 - 885)) | (1 << (SqlParser.SIGN - 885)) | (1 << (SqlParser.SIN - 885)) | (1 << (SqlParser.SLEEP - 885)) | (1 << (SqlParser.SOUNDEX - 885)) | (1 << (SqlParser.SQL_THREAD_WAIT_AFTER_GTIDS - 885)) | (1 << (SqlParser.SQRT - 885)) | (1 << (SqlParser.SRID - 885)) | (1 << (SqlParser.STARTPOINT - 885)) | (1 << (SqlParser.STRCMP - 885)) | (1 << (SqlParser.STR_TO_DATE - 885)) | (1 << (SqlParser.ST_AREA - 885)) | (1 << (SqlParser.ST_ASBINARY - 885)) | (1 << (SqlParser.ST_ASTEXT - 885)) | (1 << (SqlParser.ST_ASWKB - 885)) | (1 << (SqlParser.ST_ASWKT - 885)) | (1 << (SqlParser.ST_BUFFER - 885)) | (1 << (SqlParser.ST_CENTROID - 885)) | (1 << (SqlParser.ST_CONTAINS - 885)) | (1 << (SqlParser.ST_CROSSES - 885)) | (1 << (SqlParser.ST_DIFFERENCE - 885)) | (1 << (SqlParser.ST_DIMENSION - 885)) | (1 << (SqlParser.ST_DISJOINT - 885)) | (1 << (SqlParser.ST_DISTANCE - 885)) | (1 << (SqlParser.ST_ENDPOINT - 885)))) !== 0) || ((((_la - 917)) & ~0x1f) == 0 && ((1 << (_la - 917)) & ((1 << (SqlParser.ST_ENVELOPE - 917)) | (1 << (SqlParser.ST_EQUALS - 917)) | (1 << (SqlParser.ST_EXTERIORRING - 917)) | (1 << (SqlParser.ST_GEOMCOLLFROMTEXT - 917)) | (1 << (SqlParser.ST_GEOMCOLLFROMTXT - 917)) | (1 << (SqlParser.ST_GEOMCOLLFROMWKB - 917)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMTEXT - 917)) | (1 << (SqlParser.ST_GEOMETRYCOLLECTIONFROMWKB - 917)) | (1 << (SqlParser.ST_GEOMETRYFROMTEXT - 917)) | (1 << (SqlParser.ST_GEOMETRYFROMWKB - 917)) | (1 << (SqlParser.ST_GEOMETRYN - 917)) | (1 << (SqlParser.ST_GEOMETRYTYPE - 917)) | (1 << (SqlParser.ST_GEOMFROMTEXT - 917)) | (1 << (SqlParser.ST_GEOMFROMWKB - 917)) | (1 << (SqlParser.ST_INTERIORRINGN - 917)) | (1 << (SqlParser.ST_INTERSECTION - 917)) | (1 << (SqlParser.ST_INTERSECTS - 917)) | (1 << (SqlParser.ST_ISCLOSED - 917)) | (1 << (SqlParser.ST_ISEMPTY - 917)) | (1 << (SqlParser.ST_ISSIMPLE - 917)) | (1 << (SqlParser.ST_LINEFROMTEXT - 917)) | (1 << (SqlParser.ST_LINEFROMWKB - 917)) | (1 << (SqlParser.ST_LINESTRINGFROMTEXT - 917)) | (1 << (SqlParser.ST_LINESTRINGFROMWKB - 917)) | (1 << (SqlParser.ST_NUMGEOMETRIES - 917)) | (1 << (SqlParser.ST_NUMINTERIORRING - 917)) | (1 << (SqlParser.ST_NUMINTERIORRINGS - 917)) | (1 << (SqlParser.ST_NUMPOINTS - 917)) | (1 << (SqlParser.ST_OVERLAPS - 917)) | (1 << (SqlParser.ST_POINTFROMTEXT - 917)) | (1 << (SqlParser.ST_POINTFROMWKB - 917)) | (1 << (SqlParser.ST_POINTN - 917)))) !== 0) || ((((_la - 949)) & ~0x1f) == 0 && ((1 << (_la - 949)) & ((1 << (SqlParser.ST_POLYFROMTEXT - 949)) | (1 << (SqlParser.ST_POLYFROMWKB - 949)) | (1 << (SqlParser.ST_POLYGONFROMTEXT - 949)) | (1 << (SqlParser.ST_POLYGONFROMWKB - 949)) | (1 << (SqlParser.ST_SRID - 949)) | (1 << (SqlParser.ST_STARTPOINT - 949)) | (1 << (SqlParser.ST_SYMDIFFERENCE - 949)) | (1 << (SqlParser.ST_TOUCHES - 949)) | (1 << (SqlParser.ST_UNION - 949)) | (1 << (SqlParser.ST_WITHIN - 949)) | (1 << (SqlParser.ST_X - 949)) | (1 << (SqlParser.ST_Y - 949)) | (1 << (SqlParser.SUBDATE - 949)) | (1 << (SqlParser.SUBSTRING_INDEX - 949)) | (1 << (SqlParser.SUBTIME - 949)) | (1 << (SqlParser.SYSTEM_USER - 949)) | (1 << (SqlParser.TAN - 949)) | (1 << (SqlParser.TIMEDIFF - 949)) | (1 << (SqlParser.TIMESTAMPADD - 949)) | (1 << (SqlParser.TIMESTAMPDIFF - 949)) | (1 << (SqlParser.TIME_FORMAT - 949)) | (1 << (SqlParser.TIME_TO_SEC - 949)) | (1 << (SqlParser.TOUCHES - 949)) | (1 << (SqlParser.TO_BASE64 - 949)) | (1 << (SqlParser.TO_DAYS - 949)) | (1 << (SqlParser.TO_SECONDS - 949)) | (1 << (SqlParser.UCASE - 949)) | (1 << (SqlParser.UNCOMPRESS - 949)) | (1 << (SqlParser.UNCOMPRESSED_LENGTH - 949)) | (1 << (SqlParser.UNHEX - 949)) | (1 << (SqlParser.UNIX_TIMESTAMP - 949)) | (1 << (SqlParser.UPDATEXML - 949)))) !== 0) || ((((_la - 981)) & ~0x1f) == 0 && ((1 << (_la - 981)) & ((1 << (SqlParser.UPPER - 981)) | (1 << (SqlParser.UUID - 981)) | (1 << (SqlParser.UUID_SHORT - 981)) | (1 << (SqlParser.VALIDATE_PASSWORD_STRENGTH - 981)) | (1 << (SqlParser.VERSION - 981)) | (1 << (SqlParser.WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS - 981)) | (1 << (SqlParser.WEEKDAY - 981)) | (1 << (SqlParser.WEEKOFYEAR - 981)) | (1 << (SqlParser.WEIGHT_STRING - 981)) | (1 << (SqlParser.WITHIN - 981)) | (1 << (SqlParser.YEARWEEK - 981)) | (1 << (SqlParser.Y_FUNCTION - 981)) | (1 << (SqlParser.X_FUNCTION - 981)))) !== 0))) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+SqlParser.prototype.sempred = function(localctx, ruleIndex, predIndex) {
+ switch(ruleIndex) {
+ case 301:
+ return this.expression_sempred(localctx, predIndex);
+ case 302:
+ return this.predicate_sempred(localctx, predIndex);
+ case 303:
+ return this.expressionAtom_sempred(localctx, predIndex);
+ default:
+ throw "No predicate with index:" + ruleIndex;
+ }
+};
+
+SqlParser.prototype.expression_sempred = function(localctx, predIndex) {
+ switch(predIndex) {
+ case 0:
+ return this.precpred(this._ctx, 3);
+ default:
+ throw "No predicate with index:" + predIndex;
+ }
+};
+
+SqlParser.prototype.predicate_sempred = function(localctx, predIndex) {
+ switch(predIndex) {
+ case 1:
+ return this.precpred(this._ctx, 7);
+ case 2:
+ return this.precpred(this._ctx, 5);
+ case 3:
+ return this.precpred(this._ctx, 4);
+ case 4:
+ return this.precpred(this._ctx, 2);
+ case 5:
+ return this.precpred(this._ctx, 9);
+ case 6:
+ return this.precpred(this._ctx, 8);
+ case 7:
+ return this.precpred(this._ctx, 6);
+ case 8:
+ return this.precpred(this._ctx, 3);
+ default:
+ throw "No predicate with index:" + predIndex;
+ }
+};
+
+SqlParser.prototype.expressionAtom_sempred = function(localctx, predIndex) {
+ switch(predIndex) {
+ case 9:
+ return this.precpred(this._ctx, 2);
+ case 10:
+ return this.precpred(this._ctx, 1);
+ case 11:
+ return this.precpred(this._ctx, 11);
+ default:
+ throw "No predicate with index:" + predIndex;
+ }
+};
+
+
+exports.SqlParser = SqlParser;
diff --git a/src/lib/generic/SqlParser.tokens b/src/lib/generic/SqlParser.tokens
new file mode 100644
index 0000000..57b4669
--- /dev/null
+++ b/src/lib/generic/SqlParser.tokens
@@ -0,0 +1,2074 @@
+SPACE=1
+SPEC_MYSQL_COMMENT=2
+COMMENT_INPUT=3
+LINE_COMMENT=4
+ADD=5
+ALL=6
+ALTER=7
+ALWAYS=8
+ANALYZE=9
+AND=10
+AS=11
+ASC=12
+BEFORE=13
+BETWEEN=14
+BOTH=15
+BY=16
+CALL=17
+CASCADE=18
+CASE=19
+CAST=20
+CHANGE=21
+CHARACTER=22
+CHECK=23
+COLLATE=24
+COLUMN=25
+CONDITION=26
+CONSTRAINT=27
+CONTINUE=28
+CONVERT=29
+CREATE=30
+CROSS=31
+CURRENT=32
+CURRENT_USER=33
+CURSOR=34
+DATABASE=35
+DATABASES=36
+DECLARE=37
+DEFAULT=38
+DELAYED=39
+DELETE=40
+DESC=41
+DESCRIBE=42
+DETERMINISTIC=43
+DIAGNOSTICS=44
+DISTINCT=45
+DISTINCTROW=46
+DROP=47
+EACH=48
+ELSE=49
+ELSEIF=50
+ENCLOSED=51
+ESCAPED=52
+EXISTS=53
+EXIT=54
+EXPLAIN=55
+FALSE=56
+FETCH=57
+FOR=58
+FORCE=59
+FOREIGN=60
+FROM=61
+FULLTEXT=62
+GENERATED=63
+GET=64
+GRANT=65
+GROUP=66
+HAVING=67
+HIGH_PRIORITY=68
+IF=69
+IGNORE=70
+IN=71
+INDEX=72
+INFILE=73
+INNER=74
+INOUT=75
+INSERT=76
+INTERVAL=77
+INTO=78
+IS=79
+ITERATE=80
+JOIN=81
+KEY=82
+KEYS=83
+KILL=84
+LEADING=85
+LEAVE=86
+LEFT=87
+LIKE=88
+LIMIT=89
+LINEAR=90
+LINES=91
+LOAD=92
+LOCK=93
+LOOP=94
+LOW_PRIORITY=95
+MASTER_BIND=96
+MASTER_SSL_VERIFY_SERVER_CERT=97
+MATCH=98
+MAXVALUE=99
+MODIFIES=100
+NATURAL=101
+NOT=102
+NO_WRITE_TO_BINLOG=103
+NULL_LITERAL=104
+NUMBER=105
+ON=106
+OPTIMIZE=107
+OPTION=108
+OPTIONALLY=109
+OR=110
+ORDER=111
+OUT=112
+OUTER=113
+OUTFILE=114
+PARTITION=115
+PRIMARY=116
+PROCEDURE=117
+PURGE=118
+RANGE=119
+READ=120
+READS=121
+REFERENCES=122
+REGEXP=123
+RELEASE=124
+RENAME=125
+REPEAT=126
+REPLACE=127
+REQUIRE=128
+RESIGNAL=129
+RESTRICT=130
+RETURN=131
+REVOKE=132
+RIGHT=133
+RLIKE=134
+SCHEMA=135
+SCHEMAS=136
+SELECT=137
+SET=138
+SEPARATOR=139
+SHOW=140
+SIGNAL=141
+SPATIAL=142
+SQL=143
+SQLEXCEPTION=144
+SQLSTATE=145
+SQLWARNING=146
+SQL_BIG_RESULT=147
+SQL_CALC_FOUND_ROWS=148
+SQL_SMALL_RESULT=149
+SSL=150
+STACKED=151
+STARTING=152
+STRAIGHT_JOIN=153
+TABLE=154
+TERMINATED=155
+THEN=156
+TO=157
+TRAILING=158
+TRIGGER=159
+TRUE=160
+UNDO=161
+UNION=162
+UNIQUE=163
+UNLOCK=164
+UNSIGNED=165
+UPDATE=166
+USAGE=167
+USE=168
+USING=169
+VALUES=170
+WHEN=171
+WHERE=172
+WHILE=173
+WITH=174
+WRITE=175
+XOR=176
+ZEROFILL=177
+TINYINT=178
+SMALLINT=179
+MEDIUMINT=180
+MIDDLEINT=181
+INT=182
+INT1=183
+INT2=184
+INT3=185
+INT4=186
+INT8=187
+INTEGER=188
+BIGINT=189
+REAL=190
+DOUBLE=191
+PRECISION=192
+FLOAT=193
+FLOAT4=194
+FLOAT8=195
+DECIMAL=196
+DEC=197
+NUMERIC=198
+DATE=199
+TIME=200
+TIMESTAMP=201
+DATETIME=202
+YEAR=203
+CHAR=204
+VARCHAR=205
+NVARCHAR=206
+NATIONAL=207
+BINARY=208
+VARBINARY=209
+TINYBLOB=210
+BLOB=211
+MEDIUMBLOB=212
+LONG=213
+LONGBLOB=214
+TINYTEXT=215
+TEXT=216
+MEDIUMTEXT=217
+LONGTEXT=218
+ENUM=219
+VARYING=220
+SERIAL=221
+YEAR_MONTH=222
+DAY_HOUR=223
+DAY_MINUTE=224
+DAY_SECOND=225
+HOUR_MINUTE=226
+HOUR_SECOND=227
+MINUTE_SECOND=228
+SECOND_MICROSECOND=229
+MINUTE_MICROSECOND=230
+HOUR_MICROSECOND=231
+DAY_MICROSECOND=232
+JSON_VALID=233
+JSON_SCHEMA_VALID=234
+AVG=235
+BIT_AND=236
+BIT_OR=237
+BIT_XOR=238
+COUNT=239
+GROUP_CONCAT=240
+MAX=241
+MIN=242
+STD=243
+STDDEV=244
+STDDEV_POP=245
+STDDEV_SAMP=246
+SUM=247
+VAR_POP=248
+VAR_SAMP=249
+VARIANCE=250
+CURRENT_DATE=251
+CURRENT_TIME=252
+CURRENT_TIMESTAMP=253
+LOCALTIME=254
+CURDATE=255
+CURTIME=256
+DATE_ADD=257
+DATE_SUB=258
+EXTRACT=259
+LOCALTIMESTAMP=260
+NOW=261
+POSITION=262
+SUBSTR=263
+SUBSTRING=264
+SYSDATE=265
+TRIM=266
+UTC_DATE=267
+UTC_TIME=268
+UTC_TIMESTAMP=269
+ACCOUNT=270
+ACTION=271
+AFTER=272
+AGGREGATE=273
+ALGORITHM=274
+ANY=275
+AT=276
+AUTHORS=277
+AUTOCOMMIT=278
+AUTOEXTEND_SIZE=279
+AUTO_INCREMENT=280
+AVG_ROW_LENGTH=281
+BEGIN=282
+BINLOG=283
+BIT=284
+BLOCK=285
+BOOL=286
+BOOLEAN=287
+BTREE=288
+CACHE=289
+CASCADED=290
+CHAIN=291
+CHANGED=292
+CHANNEL=293
+CHECKSUM=294
+PAGE_CHECKSUM=295
+CIPHER=296
+CLASS_ORIGIN=297
+CLIENT=298
+CLOSE=299
+COALESCE=300
+CODE=301
+COLUMNS=302
+COLUMN_FORMAT=303
+COLUMN_NAME=304
+COMMENT=305
+COMMIT=306
+COMPACT=307
+COMPLETION=308
+COMPRESSED=309
+COMPRESSION=310
+CONCURRENT=311
+CONNECTION=312
+CONSISTENT=313
+CONSTRAINT_CATALOG=314
+CONSTRAINT_SCHEMA=315
+CONSTRAINT_NAME=316
+CONTAINS=317
+CONTEXT=318
+CONTRIBUTORS=319
+COPY=320
+CPU=321
+CURSOR_NAME=322
+DATA=323
+DATAFILE=324
+DEALLOCATE=325
+DEFAULT_AUTH=326
+DEFINER=327
+DELAY_KEY_WRITE=328
+DES_KEY_FILE=329
+DIRECTORY=330
+DISABLE=331
+DISCARD=332
+DISK=333
+DO=334
+DUMPFILE=335
+DUPLICATE=336
+DYNAMIC=337
+ENABLE=338
+ENCRYPTION=339
+END=340
+ENDS=341
+ENGINE=342
+ENGINES=343
+ERROR=344
+ERRORS=345
+ESCAPE=346
+EVEN=347
+EVENT=348
+EVENTS=349
+EVERY=350
+EXCHANGE=351
+EXCLUSIVE=352
+EXPIRE=353
+EXPORT=354
+EXTENDED=355
+EXTENT_SIZE=356
+FAST=357
+FAULTS=358
+FIELDS=359
+FILE_BLOCK_SIZE=360
+FILTER=361
+FIRST=362
+FIXED=363
+FLUSH=364
+FOLLOWS=365
+FOUND=366
+FULL=367
+FUNCTION=368
+GENERAL=369
+GLOBAL=370
+GRANTS=371
+GROUP_REPLICATION=372
+HANDLER=373
+HASH=374
+HELP=375
+HOST=376
+HOSTS=377
+IDENTIFIED=378
+IGNORE_SERVER_IDS=379
+IMPORT=380
+INDEXES=381
+INITIAL_SIZE=382
+INPLACE=383
+INSERT_METHOD=384
+INSTALL=385
+INSTANCE=386
+INVISIBLE=387
+INVOKER=388
+IO=389
+IO_THREAD=390
+IPC=391
+ISOLATION=392
+ISSUER=393
+JSON=394
+KEY_BLOCK_SIZE=395
+LANGUAGE=396
+LAST=397
+LEAVES=398
+LESS=399
+LEVEL=400
+LIST=401
+LOCAL=402
+LOGFILE=403
+LOGS=404
+MASTER=405
+MASTER_AUTO_POSITION=406
+MASTER_CONNECT_RETRY=407
+MASTER_DELAY=408
+MASTER_HEARTBEAT_PERIOD=409
+MASTER_HOST=410
+MASTER_LOG_FILE=411
+MASTER_LOG_POS=412
+MASTER_PASSWORD=413
+MASTER_PORT=414
+MASTER_RETRY_COUNT=415
+MASTER_SSL=416
+MASTER_SSL_CA=417
+MASTER_SSL_CAPATH=418
+MASTER_SSL_CERT=419
+MASTER_SSL_CIPHER=420
+MASTER_SSL_CRL=421
+MASTER_SSL_CRLPATH=422
+MASTER_SSL_KEY=423
+MASTER_TLS_VERSION=424
+MASTER_USER=425
+MAX_CONNECTIONS_PER_HOUR=426
+MAX_QUERIES_PER_HOUR=427
+MAX_ROWS=428
+MAX_SIZE=429
+MAX_UPDATES_PER_HOUR=430
+MAX_USER_CONNECTIONS=431
+MEDIUM=432
+MERGE=433
+MESSAGE_TEXT=434
+MID=435
+MIGRATE=436
+MIN_ROWS=437
+MODE=438
+MODIFY=439
+MUTEX=440
+MYSQL=441
+MYSQL_ERRNO=442
+NAME=443
+NAMES=444
+NCHAR=445
+NEVER=446
+NEXT=447
+NO=448
+NODEGROUP=449
+NONE=450
+OFFLINE=451
+OFFSET=452
+OJ=453
+OLD_PASSWORD=454
+ONE=455
+ONLINE=456
+ONLY=457
+OPEN=458
+OPTIMIZER_COSTS=459
+OPTIONS=460
+OWNER=461
+PACK_KEYS=462
+PAGE=463
+PARSER=464
+PARTIAL=465
+PARTITIONING=466
+PARTITIONS=467
+PASSWORD=468
+PHASE=469
+PLUGIN=470
+PLUGIN_DIR=471
+PLUGINS=472
+PORT=473
+PRECEDES=474
+PREPARE=475
+PRESERVE=476
+PREV=477
+PROCESSLIST=478
+PROFILE=479
+PROFILES=480
+PROXY=481
+QUERY=482
+QUICK=483
+REBUILD=484
+RECOVER=485
+REDO_BUFFER_SIZE=486
+REDUNDANT=487
+RELAY=488
+RELAY_LOG_FILE=489
+RELAY_LOG_POS=490
+RELAYLOG=491
+REMOVE=492
+REORGANIZE=493
+REPAIR=494
+REPLICATE_DO_DB=495
+REPLICATE_DO_TABLE=496
+REPLICATE_IGNORE_DB=497
+REPLICATE_IGNORE_TABLE=498
+REPLICATE_REWRITE_DB=499
+REPLICATE_WILD_DO_TABLE=500
+REPLICATE_WILD_IGNORE_TABLE=501
+REPLICATION=502
+RESET=503
+RESUME=504
+RETURNED_SQLSTATE=505
+RETURNS=506
+ROLE=507
+ROLLBACK=508
+ROLLUP=509
+ROTATE=510
+ROW=511
+ROWS=512
+ROW_FORMAT=513
+SAVEPOINT=514
+SCHEDULE=515
+SECURITY=516
+SERVER=517
+SESSION=518
+SHARE=519
+SHARED=520
+SIGNED=521
+SIMPLE=522
+SLAVE=523
+SLOW=524
+SNAPSHOT=525
+SOCKET=526
+SOME=527
+SONAME=528
+SOUNDS=529
+SOURCE=530
+SQL_AFTER_GTIDS=531
+SQL_AFTER_MTS_GAPS=532
+SQL_BEFORE_GTIDS=533
+SQL_BUFFER_RESULT=534
+SQL_CACHE=535
+SQL_NO_CACHE=536
+SQL_THREAD=537
+START=538
+STARTS=539
+STATS_AUTO_RECALC=540
+STATS_PERSISTENT=541
+STATS_SAMPLE_PAGES=542
+STATUS=543
+STOP=544
+STORAGE=545
+STORED=546
+STRING=547
+SUBCLASS_ORIGIN=548
+SUBJECT=549
+SUBPARTITION=550
+SUBPARTITIONS=551
+SUSPEND=552
+SWAPS=553
+SWITCHES=554
+TABLE_NAME=555
+TABLESPACE=556
+TEMPORARY=557
+TEMPTABLE=558
+THAN=559
+TRADITIONAL=560
+TRANSACTION=561
+TRANSACTIONAL=562
+TRIGGERS=563
+TRUNCATE=564
+UNDEFINED=565
+UNDOFILE=566
+UNDO_BUFFER_SIZE=567
+UNINSTALL=568
+UNKNOWN=569
+UNTIL=570
+UPGRADE=571
+USER=572
+USE_FRM=573
+USER_RESOURCES=574
+VALIDATION=575
+VALUE=576
+VARIABLES=577
+VIEW=578
+VIRTUAL=579
+VISIBLE=580
+WAIT=581
+WARNINGS=582
+WITHOUT=583
+WORK=584
+WRAPPER=585
+X509=586
+XA=587
+XML=588
+EUR=589
+USA=590
+JIS=591
+ISO=592
+INTERNAL=593
+QUARTER=594
+MONTH=595
+DAY=596
+HOUR=597
+MINUTE=598
+WEEK=599
+SECOND=600
+MICROSECOND=601
+TABLES=602
+ROUTINE=603
+EXECUTE=604
+FILE=605
+PROCESS=606
+RELOAD=607
+SHUTDOWN=608
+SUPER=609
+PRIVILEGES=610
+APPLICATION_PASSWORD_ADMIN=611
+AUDIT_ADMIN=612
+BACKUP_ADMIN=613
+BINLOG_ADMIN=614
+BINLOG_ENCRYPTION_ADMIN=615
+CLONE_ADMIN=616
+CONNECTION_ADMIN=617
+ENCRYPTION_KEY_ADMIN=618
+FIREWALL_ADMIN=619
+FIREWALL_USER=620
+GROUP_REPLICATION_ADMIN=621
+INNODB_REDO_LOG_ARCHIVE=622
+NDB_STORED_USER=623
+PERSIST_RO_VARIABLES_ADMIN=624
+REPLICATION_APPLIER=625
+REPLICATION_SLAVE_ADMIN=626
+RESOURCE_GROUP_ADMIN=627
+RESOURCE_GROUP_USER=628
+ROLE_ADMIN=629
+SESSION_VARIABLES_ADMIN=630
+SET_USER_ID=631
+SHOW_ROUTINE=632
+SYSTEM_VARIABLES_ADMIN=633
+TABLE_ENCRYPTION_ADMIN=634
+VERSION_TOKEN_ADMIN=635
+XA_RECOVER_ADMIN=636
+ARMSCII8=637
+ASCII=638
+BIG5=639
+CP1250=640
+CP1251=641
+CP1256=642
+CP1257=643
+CP850=644
+CP852=645
+CP866=646
+CP932=647
+DEC8=648
+EUCJPMS=649
+EUCKR=650
+GB2312=651
+GBK=652
+GEOSTD8=653
+GREEK=654
+HEBREW=655
+HP8=656
+KEYBCS2=657
+KOI8R=658
+KOI8U=659
+LATIN1=660
+LATIN2=661
+LATIN5=662
+LATIN7=663
+MACCE=664
+MACROMAN=665
+SJIS=666
+SWE7=667
+TIS620=668
+UCS2=669
+UJIS=670
+UTF16=671
+UTF16LE=672
+UTF32=673
+UTF8=674
+UTF8MB3=675
+UTF8MB4=676
+ARCHIVE=677
+BLACKHOLE=678
+CSV=679
+FEDERATED=680
+INNODB=681
+MEMORY=682
+MRG_MYISAM=683
+MYISAM=684
+NDB=685
+NDBCLUSTER=686
+PERFORMANCE_SCHEMA=687
+TOKUDB=688
+REPEATABLE=689
+COMMITTED=690
+UNCOMMITTED=691
+SERIALIZABLE=692
+GEOMETRYCOLLECTION=693
+GEOMCOLLECTION=694
+GEOMETRY=695
+LINESTRING=696
+MULTILINESTRING=697
+MULTIPOINT=698
+MULTIPOLYGON=699
+POINT=700
+POLYGON=701
+ABS=702
+ACOS=703
+ADDDATE=704
+ADDTIME=705
+AES_DECRYPT=706
+AES_ENCRYPT=707
+AREA=708
+ASBINARY=709
+ASIN=710
+ASTEXT=711
+ASWKB=712
+ASWKT=713
+ASYMMETRIC_DECRYPT=714
+ASYMMETRIC_DERIVE=715
+ASYMMETRIC_ENCRYPT=716
+ASYMMETRIC_SIGN=717
+ASYMMETRIC_VERIFY=718
+ATAN=719
+ATAN2=720
+BENCHMARK=721
+BIN=722
+BIT_COUNT=723
+BIT_LENGTH=724
+BUFFER=725
+CATALOG_NAME=726
+CEIL=727
+CEILING=728
+CENTROID=729
+CHARACTER_LENGTH=730
+CHARSET=731
+CHAR_LENGTH=732
+COERCIBILITY=733
+COLLATION=734
+COMPRESS=735
+CONCAT=736
+CONCAT_WS=737
+CONNECTION_ID=738
+CONV=739
+CONVERT_TZ=740
+COS=741
+COT=742
+CRC32=743
+CREATE_ASYMMETRIC_PRIV_KEY=744
+CREATE_ASYMMETRIC_PUB_KEY=745
+CREATE_DH_PARAMETERS=746
+CREATE_DIGEST=747
+CROSSES=748
+DATEDIFF=749
+DATE_FORMAT=750
+DAYNAME=751
+DAYOFMONTH=752
+DAYOFWEEK=753
+DAYOFYEAR=754
+DECODE=755
+DEGREES=756
+DES_DECRYPT=757
+DES_ENCRYPT=758
+DIMENSION=759
+DISJOINT=760
+ELT=761
+ENCODE=762
+ENCRYPT=763
+ENDPOINT=764
+ENVELOPE=765
+EQUALS=766
+EXP=767
+EXPORT_SET=768
+EXTERIORRING=769
+EXTRACTVALUE=770
+FIELD=771
+FIND_IN_SET=772
+FLOOR=773
+FORMAT=774
+FOUND_ROWS=775
+FROM_BASE64=776
+FROM_DAYS=777
+FROM_UNIXTIME=778
+GEOMCOLLFROMTEXT=779
+GEOMCOLLFROMWKB=780
+GEOMETRYCOLLECTIONFROMTEXT=781
+GEOMETRYCOLLECTIONFROMWKB=782
+GEOMETRYFROMTEXT=783
+GEOMETRYFROMWKB=784
+GEOMETRYN=785
+GEOMETRYTYPE=786
+GEOMFROMTEXT=787
+GEOMFROMWKB=788
+GET_FORMAT=789
+GET_LOCK=790
+GLENGTH=791
+GREATEST=792
+GTID_SUBSET=793
+GTID_SUBTRACT=794
+HEX=795
+IFNULL=796
+INET6_ATON=797
+INET6_NTOA=798
+INET_ATON=799
+INET_NTOA=800
+INSTR=801
+INTERIORRINGN=802
+INTERSECTS=803
+ISCLOSED=804
+ISEMPTY=805
+ISNULL=806
+ISSIMPLE=807
+IS_FREE_LOCK=808
+IS_IPV4=809
+IS_IPV4_COMPAT=810
+IS_IPV4_MAPPED=811
+IS_IPV6=812
+IS_USED_LOCK=813
+LAST_INSERT_ID=814
+LCASE=815
+LEAST=816
+LENGTH=817
+LINEFROMTEXT=818
+LINEFROMWKB=819
+LINESTRINGFROMTEXT=820
+LINESTRINGFROMWKB=821
+LN=822
+LOAD_FILE=823
+LOCATE=824
+LOG=825
+LOG10=826
+LOG2=827
+LOWER=828
+LPAD=829
+LTRIM=830
+MAKEDATE=831
+MAKETIME=832
+MAKE_SET=833
+MASTER_POS_WAIT=834
+MBRCONTAINS=835
+MBRDISJOINT=836
+MBREQUAL=837
+MBRINTERSECTS=838
+MBROVERLAPS=839
+MBRTOUCHES=840
+MBRWITHIN=841
+MD5=842
+MLINEFROMTEXT=843
+MLINEFROMWKB=844
+MONTHNAME=845
+MPOINTFROMTEXT=846
+MPOINTFROMWKB=847
+MPOLYFROMTEXT=848
+MPOLYFROMWKB=849
+MULTILINESTRINGFROMTEXT=850
+MULTILINESTRINGFROMWKB=851
+MULTIPOINTFROMTEXT=852
+MULTIPOINTFROMWKB=853
+MULTIPOLYGONFROMTEXT=854
+MULTIPOLYGONFROMWKB=855
+NAME_CONST=856
+NULLIF=857
+NUMGEOMETRIES=858
+NUMINTERIORRINGS=859
+NUMPOINTS=860
+OCT=861
+OCTET_LENGTH=862
+ORD=863
+OVERLAPS=864
+PERIOD_ADD=865
+PERIOD_DIFF=866
+PI=867
+POINTFROMTEXT=868
+POINTFROMWKB=869
+POINTN=870
+POLYFROMTEXT=871
+POLYFROMWKB=872
+POLYGONFROMTEXT=873
+POLYGONFROMWKB=874
+POW=875
+POWER=876
+QUOTE=877
+RADIANS=878
+RAND=879
+RANDOM_BYTES=880
+RELEASE_LOCK=881
+REVERSE=882
+ROUND=883
+ROW_COUNT=884
+RPAD=885
+RTRIM=886
+SEC_TO_TIME=887
+SESSION_USER=888
+SHA=889
+SHA1=890
+SHA2=891
+SCHEMA_NAME=892
+SIGN=893
+SIN=894
+SLEEP=895
+SOUNDEX=896
+SQL_THREAD_WAIT_AFTER_GTIDS=897
+SQRT=898
+SRID=899
+STARTPOINT=900
+STRCMP=901
+STR_TO_DATE=902
+ST_AREA=903
+ST_ASBINARY=904
+ST_ASTEXT=905
+ST_ASWKB=906
+ST_ASWKT=907
+ST_BUFFER=908
+ST_CENTROID=909
+ST_CONTAINS=910
+ST_CROSSES=911
+ST_DIFFERENCE=912
+ST_DIMENSION=913
+ST_DISJOINT=914
+ST_DISTANCE=915
+ST_ENDPOINT=916
+ST_ENVELOPE=917
+ST_EQUALS=918
+ST_EXTERIORRING=919
+ST_GEOMCOLLFROMTEXT=920
+ST_GEOMCOLLFROMTXT=921
+ST_GEOMCOLLFROMWKB=922
+ST_GEOMETRYCOLLECTIONFROMTEXT=923
+ST_GEOMETRYCOLLECTIONFROMWKB=924
+ST_GEOMETRYFROMTEXT=925
+ST_GEOMETRYFROMWKB=926
+ST_GEOMETRYN=927
+ST_GEOMETRYTYPE=928
+ST_GEOMFROMTEXT=929
+ST_GEOMFROMWKB=930
+ST_INTERIORRINGN=931
+ST_INTERSECTION=932
+ST_INTERSECTS=933
+ST_ISCLOSED=934
+ST_ISEMPTY=935
+ST_ISSIMPLE=936
+ST_LINEFROMTEXT=937
+ST_LINEFROMWKB=938
+ST_LINESTRINGFROMTEXT=939
+ST_LINESTRINGFROMWKB=940
+ST_NUMGEOMETRIES=941
+ST_NUMINTERIORRING=942
+ST_NUMINTERIORRINGS=943
+ST_NUMPOINTS=944
+ST_OVERLAPS=945
+ST_POINTFROMTEXT=946
+ST_POINTFROMWKB=947
+ST_POINTN=948
+ST_POLYFROMTEXT=949
+ST_POLYFROMWKB=950
+ST_POLYGONFROMTEXT=951
+ST_POLYGONFROMWKB=952
+ST_SRID=953
+ST_STARTPOINT=954
+ST_SYMDIFFERENCE=955
+ST_TOUCHES=956
+ST_UNION=957
+ST_WITHIN=958
+ST_X=959
+ST_Y=960
+SUBDATE=961
+SUBSTRING_INDEX=962
+SUBTIME=963
+SYSTEM_USER=964
+TAN=965
+TIMEDIFF=966
+TIMESTAMPADD=967
+TIMESTAMPDIFF=968
+TIME_FORMAT=969
+TIME_TO_SEC=970
+TOUCHES=971
+TO_BASE64=972
+TO_DAYS=973
+TO_SECONDS=974
+UCASE=975
+UNCOMPRESS=976
+UNCOMPRESSED_LENGTH=977
+UNHEX=978
+UNIX_TIMESTAMP=979
+UPDATEXML=980
+UPPER=981
+UUID=982
+UUID_SHORT=983
+VALIDATE_PASSWORD_STRENGTH=984
+VERSION=985
+WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS=986
+WEEKDAY=987
+WEEKOFYEAR=988
+WEIGHT_STRING=989
+WITHIN=990
+YEARWEEK=991
+Y_FUNCTION=992
+X_FUNCTION=993
+VAR_ASSIGN=994
+PLUS_ASSIGN=995
+MINUS_ASSIGN=996
+MULT_ASSIGN=997
+DIV_ASSIGN=998
+MOD_ASSIGN=999
+AND_ASSIGN=1000
+XOR_ASSIGN=1001
+OR_ASSIGN=1002
+STAR=1003
+DIVIDE=1004
+MODULE=1005
+PLUS=1006
+MINUSMINUS=1007
+MINUS=1008
+DIV=1009
+MOD=1010
+EQUAL_SYMBOL=1011
+GREATER_SYMBOL=1012
+LESS_SYMBOL=1013
+EXCLAMATION_SYMBOL=1014
+BIT_NOT_OP=1015
+BIT_OR_OP=1016
+BIT_AND_OP=1017
+BIT_XOR_OP=1018
+DOT=1019
+LR_BRACKET=1020
+RR_BRACKET=1021
+COMMA=1022
+SEMI=1023
+AT_SIGN=1024
+ZERO_DECIMAL=1025
+ONE_DECIMAL=1026
+TWO_DECIMAL=1027
+SINGLE_QUOTE_SYMB=1028
+DOUBLE_QUOTE_SYMB=1029
+REVERSE_QUOTE_SYMB=1030
+COLON_SYMB=1031
+CHARSET_REVERSE_QOUTE_STRING=1032
+FILESIZE_LITERAL=1033
+START_NATIONAL_STRING_LITERAL=1034
+STRING_LITERAL=1035
+DECIMAL_LITERAL=1036
+HEXADECIMAL_LITERAL=1037
+REAL_LITERAL=1038
+NULL_SPEC_LITERAL=1039
+BIT_STRING=1040
+STRING_CHARSET_NAME=1041
+DOT_ID=1042
+ID=1043
+REVERSE_QUOTE_ID=1044
+STRING_USER_NAME=1045
+LOCAL_ID=1046
+GLOBAL_ID=1047
+ERROR_RECONGNIGION=1048
+'ADD'=5
+'ALL'=6
+'ALTER'=7
+'ALWAYS'=8
+'ANALYZE'=9
+'AND'=10
+'AS'=11
+'ASC'=12
+'BEFORE'=13
+'BETWEEN'=14
+'BOTH'=15
+'BY'=16
+'CALL'=17
+'CASCADE'=18
+'CASE'=19
+'CAST'=20
+'CHANGE'=21
+'CHARACTER'=22
+'CHECK'=23
+'COLLATE'=24
+'COLUMN'=25
+'CONDITION'=26
+'CONSTRAINT'=27
+'CONTINUE'=28
+'CONVERT'=29
+'CREATE'=30
+'CROSS'=31
+'CURRENT'=32
+'CURRENT_USER'=33
+'CURSOR'=34
+'DATABASE'=35
+'DATABASES'=36
+'DECLARE'=37
+'DEFAULT'=38
+'DELAYED'=39
+'DELETE'=40
+'DESC'=41
+'DESCRIBE'=42
+'DETERMINISTIC'=43
+'DIAGNOSTICS'=44
+'DISTINCT'=45
+'DISTINCTROW'=46
+'DROP'=47
+'EACH'=48
+'ELSE'=49
+'ELSEIF'=50
+'ENCLOSED'=51
+'ESCAPED'=52
+'EXISTS'=53
+'EXIT'=54
+'EXPLAIN'=55
+'FALSE'=56
+'FETCH'=57
+'FOR'=58
+'FORCE'=59
+'FOREIGN'=60
+'FROM'=61
+'FULLTEXT'=62
+'GENERATED'=63
+'GET'=64
+'GRANT'=65
+'GROUP'=66
+'HAVING'=67
+'HIGH_PRIORITY'=68
+'IF'=69
+'IGNORE'=70
+'IN'=71
+'INDEX'=72
+'INFILE'=73
+'INNER'=74
+'INOUT'=75
+'INSERT'=76
+'INTERVAL'=77
+'INTO'=78
+'IS'=79
+'ITERATE'=80
+'JOIN'=81
+'KEY'=82
+'KEYS'=83
+'KILL'=84
+'LEADING'=85
+'LEAVE'=86
+'LEFT'=87
+'LIKE'=88
+'LIMIT'=89
+'LINEAR'=90
+'LINES'=91
+'LOAD'=92
+'LOCK'=93
+'LOOP'=94
+'LOW_PRIORITY'=95
+'MASTER_BIND'=96
+'MASTER_SSL_VERIFY_SERVER_CERT'=97
+'MATCH'=98
+'MAXVALUE'=99
+'MODIFIES'=100
+'NATURAL'=101
+'NOT'=102
+'NO_WRITE_TO_BINLOG'=103
+'NULL'=104
+'NUMBER'=105
+'ON'=106
+'OPTIMIZE'=107
+'OPTION'=108
+'OPTIONALLY'=109
+'OR'=110
+'ORDER'=111
+'OUT'=112
+'OUTER'=113
+'OUTFILE'=114
+'PARTITION'=115
+'PRIMARY'=116
+'PROCEDURE'=117
+'PURGE'=118
+'RANGE'=119
+'READ'=120
+'READS'=121
+'REFERENCES'=122
+'REGEXP'=123
+'RELEASE'=124
+'RENAME'=125
+'REPEAT'=126
+'REPLACE'=127
+'REQUIRE'=128
+'RESIGNAL'=129
+'RESTRICT'=130
+'RETURN'=131
+'REVOKE'=132
+'RIGHT'=133
+'RLIKE'=134
+'SCHEMA'=135
+'SCHEMAS'=136
+'SELECT'=137
+'SET'=138
+'SEPARATOR'=139
+'SHOW'=140
+'SIGNAL'=141
+'SPATIAL'=142
+'SQL'=143
+'SQLEXCEPTION'=144
+'SQLSTATE'=145
+'SQLWARNING'=146
+'SQL_BIG_RESULT'=147
+'SQL_CALC_FOUND_ROWS'=148
+'SQL_SMALL_RESULT'=149
+'SSL'=150
+'STACKED'=151
+'STARTING'=152
+'STRAIGHT_JOIN'=153
+'TABLE'=154
+'TERMINATED'=155
+'THEN'=156
+'TO'=157
+'TRAILING'=158
+'TRIGGER'=159
+'TRUE'=160
+'UNDO'=161
+'UNION'=162
+'UNIQUE'=163
+'UNLOCK'=164
+'UNSIGNED'=165
+'UPDATE'=166
+'USAGE'=167
+'USE'=168
+'USING'=169
+'VALUES'=170
+'WHEN'=171
+'WHERE'=172
+'WHILE'=173
+'WITH'=174
+'WRITE'=175
+'XOR'=176
+'ZEROFILL'=177
+'TINYINT'=178
+'SMALLINT'=179
+'MEDIUMINT'=180
+'MIDDLEINT'=181
+'INT'=182
+'INT1'=183
+'INT2'=184
+'INT3'=185
+'INT4'=186
+'INT8'=187
+'INTEGER'=188
+'BIGINT'=189
+'REAL'=190
+'DOUBLE'=191
+'PRECISION'=192
+'FLOAT'=193
+'FLOAT4'=194
+'FLOAT8'=195
+'DECIMAL'=196
+'DEC'=197
+'NUMERIC'=198
+'DATE'=199
+'TIME'=200
+'TIMESTAMP'=201
+'DATETIME'=202
+'YEAR'=203
+'CHAR'=204
+'VARCHAR'=205
+'NVARCHAR'=206
+'NATIONAL'=207
+'BINARY'=208
+'VARBINARY'=209
+'TINYBLOB'=210
+'BLOB'=211
+'MEDIUMBLOB'=212
+'LONG'=213
+'LONGBLOB'=214
+'TINYTEXT'=215
+'TEXT'=216
+'MEDIUMTEXT'=217
+'LONGTEXT'=218
+'ENUM'=219
+'VARYING'=220
+'SERIAL'=221
+'YEAR_MONTH'=222
+'DAY_HOUR'=223
+'DAY_MINUTE'=224
+'DAY_SECOND'=225
+'HOUR_MINUTE'=226
+'HOUR_SECOND'=227
+'MINUTE_SECOND'=228
+'SECOND_MICROSECOND'=229
+'MINUTE_MICROSECOND'=230
+'HOUR_MICROSECOND'=231
+'DAY_MICROSECOND'=232
+'JSON_VALID'=233
+'JSON_SCHEMA_VALID'=234
+'AVG'=235
+'BIT_AND'=236
+'BIT_OR'=237
+'BIT_XOR'=238
+'COUNT'=239
+'GROUP_CONCAT'=240
+'MAX'=241
+'MIN'=242
+'STD'=243
+'STDDEV'=244
+'STDDEV_POP'=245
+'STDDEV_SAMP'=246
+'SUM'=247
+'VAR_POP'=248
+'VAR_SAMP'=249
+'VARIANCE'=250
+'CURRENT_DATE'=251
+'CURRENT_TIME'=252
+'CURRENT_TIMESTAMP'=253
+'LOCALTIME'=254
+'CURDATE'=255
+'CURTIME'=256
+'DATE_ADD'=257
+'DATE_SUB'=258
+'EXTRACT'=259
+'LOCALTIMESTAMP'=260
+'NOW'=261
+'POSITION'=262
+'SUBSTR'=263
+'SUBSTRING'=264
+'SYSDATE'=265
+'TRIM'=266
+'UTC_DATE'=267
+'UTC_TIME'=268
+'UTC_TIMESTAMP'=269
+'ACCOUNT'=270
+'ACTION'=271
+'AFTER'=272
+'AGGREGATE'=273
+'ALGORITHM'=274
+'ANY'=275
+'AT'=276
+'AUTHORS'=277
+'AUTOCOMMIT'=278
+'AUTOEXTEND_SIZE'=279
+'AUTO_INCREMENT'=280
+'AVG_ROW_LENGTH'=281
+'BEGIN'=282
+'BINLOG'=283
+'BIT'=284
+'BLOCK'=285
+'BOOL'=286
+'BOOLEAN'=287
+'BTREE'=288
+'CACHE'=289
+'CASCADED'=290
+'CHAIN'=291
+'CHANGED'=292
+'CHANNEL'=293
+'CHECKSUM'=294
+'PAGE_CHECKSUM'=295
+'CIPHER'=296
+'CLASS_ORIGIN'=297
+'CLIENT'=298
+'CLOSE'=299
+'COALESCE'=300
+'CODE'=301
+'COLUMNS'=302
+'COLUMN_FORMAT'=303
+'COLUMN_NAME'=304
+'COMMENT'=305
+'COMMIT'=306
+'COMPACT'=307
+'COMPLETION'=308
+'COMPRESSED'=309
+'COMPRESSION'=310
+'CONCURRENT'=311
+'CONNECTION'=312
+'CONSISTENT'=313
+'CONSTRAINT_CATALOG'=314
+'CONSTRAINT_SCHEMA'=315
+'CONSTRAINT_NAME'=316
+'CONTAINS'=317
+'CONTEXT'=318
+'CONTRIBUTORS'=319
+'COPY'=320
+'CPU'=321
+'CURSOR_NAME'=322
+'DATA'=323
+'DATAFILE'=324
+'DEALLOCATE'=325
+'DEFAULT_AUTH'=326
+'DEFINER'=327
+'DELAY_KEY_WRITE'=328
+'DES_KEY_FILE'=329
+'DIRECTORY'=330
+'DISABLE'=331
+'DISCARD'=332
+'DISK'=333
+'DO'=334
+'DUMPFILE'=335
+'DUPLICATE'=336
+'DYNAMIC'=337
+'ENABLE'=338
+'ENCRYPTION'=339
+'END'=340
+'ENDS'=341
+'ENGINE'=342
+'ENGINES'=343
+'ERROR'=344
+'ERRORS'=345
+'ESCAPE'=346
+'EVEN'=347
+'EVENT'=348
+'EVENTS'=349
+'EVERY'=350
+'EXCHANGE'=351
+'EXCLUSIVE'=352
+'EXPIRE'=353
+'EXPORT'=354
+'EXTENDED'=355
+'EXTENT_SIZE'=356
+'FAST'=357
+'FAULTS'=358
+'FIELDS'=359
+'FILE_BLOCK_SIZE'=360
+'FILTER'=361
+'FIRST'=362
+'FIXED'=363
+'FLUSH'=364
+'FOLLOWS'=365
+'FOUND'=366
+'FULL'=367
+'FUNCTION'=368
+'GENERAL'=369
+'GLOBAL'=370
+'GRANTS'=371
+'GROUP_REPLICATION'=372
+'HANDLER'=373
+'HASH'=374
+'HELP'=375
+'HOST'=376
+'HOSTS'=377
+'IDENTIFIED'=378
+'IGNORE_SERVER_IDS'=379
+'IMPORT'=380
+'INDEXES'=381
+'INITIAL_SIZE'=382
+'INPLACE'=383
+'INSERT_METHOD'=384
+'INSTALL'=385
+'INSTANCE'=386
+'INVISIBLE'=387
+'INVOKER'=388
+'IO'=389
+'IO_THREAD'=390
+'IPC'=391
+'ISOLATION'=392
+'ISSUER'=393
+'JSON'=394
+'KEY_BLOCK_SIZE'=395
+'LANGUAGE'=396
+'LAST'=397
+'LEAVES'=398
+'LESS'=399
+'LEVEL'=400
+'LIST'=401
+'LOCAL'=402
+'LOGFILE'=403
+'LOGS'=404
+'MASTER'=405
+'MASTER_AUTO_POSITION'=406
+'MASTER_CONNECT_RETRY'=407
+'MASTER_DELAY'=408
+'MASTER_HEARTBEAT_PERIOD'=409
+'MASTER_HOST'=410
+'MASTER_LOG_FILE'=411
+'MASTER_LOG_POS'=412
+'MASTER_PASSWORD'=413
+'MASTER_PORT'=414
+'MASTER_RETRY_COUNT'=415
+'MASTER_SSL'=416
+'MASTER_SSL_CA'=417
+'MASTER_SSL_CAPATH'=418
+'MASTER_SSL_CERT'=419
+'MASTER_SSL_CIPHER'=420
+'MASTER_SSL_CRL'=421
+'MASTER_SSL_CRLPATH'=422
+'MASTER_SSL_KEY'=423
+'MASTER_TLS_VERSION'=424
+'MASTER_USER'=425
+'MAX_CONNECTIONS_PER_HOUR'=426
+'MAX_QUERIES_PER_HOUR'=427
+'MAX_ROWS'=428
+'MAX_SIZE'=429
+'MAX_UPDATES_PER_HOUR'=430
+'MAX_USER_CONNECTIONS'=431
+'MEDIUM'=432
+'MERGE'=433
+'MESSAGE_TEXT'=434
+'MID'=435
+'MIGRATE'=436
+'MIN_ROWS'=437
+'MODE'=438
+'MODIFY'=439
+'MUTEX'=440
+'MYSQL'=441
+'MYSQL_ERRNO'=442
+'NAME'=443
+'NAMES'=444
+'NCHAR'=445
+'NEVER'=446
+'NEXT'=447
+'NO'=448
+'NODEGROUP'=449
+'NONE'=450
+'OFFLINE'=451
+'OFFSET'=452
+'OJ'=453
+'OLD_PASSWORD'=454
+'ONE'=455
+'ONLINE'=456
+'ONLY'=457
+'OPEN'=458
+'OPTIMIZER_COSTS'=459
+'OPTIONS'=460
+'OWNER'=461
+'PACK_KEYS'=462
+'PAGE'=463
+'PARSER'=464
+'PARTIAL'=465
+'PARTITIONING'=466
+'PARTITIONS'=467
+'PASSWORD'=468
+'PHASE'=469
+'PLUGIN'=470
+'PLUGIN_DIR'=471
+'PLUGINS'=472
+'PORT'=473
+'PRECEDES'=474
+'PREPARE'=475
+'PRESERVE'=476
+'PREV'=477
+'PROCESSLIST'=478
+'PROFILE'=479
+'PROFILES'=480
+'PROXY'=481
+'QUERY'=482
+'QUICK'=483
+'REBUILD'=484
+'RECOVER'=485
+'REDO_BUFFER_SIZE'=486
+'REDUNDANT'=487
+'RELAY'=488
+'RELAY_LOG_FILE'=489
+'RELAY_LOG_POS'=490
+'RELAYLOG'=491
+'REMOVE'=492
+'REORGANIZE'=493
+'REPAIR'=494
+'REPLICATE_DO_DB'=495
+'REPLICATE_DO_TABLE'=496
+'REPLICATE_IGNORE_DB'=497
+'REPLICATE_IGNORE_TABLE'=498
+'REPLICATE_REWRITE_DB'=499
+'REPLICATE_WILD_DO_TABLE'=500
+'REPLICATE_WILD_IGNORE_TABLE'=501
+'REPLICATION'=502
+'RESET'=503
+'RESUME'=504
+'RETURNED_SQLSTATE'=505
+'RETURNS'=506
+'ROLE'=507
+'ROLLBACK'=508
+'ROLLUP'=509
+'ROTATE'=510
+'ROW'=511
+'ROWS'=512
+'ROW_FORMAT'=513
+'SAVEPOINT'=514
+'SCHEDULE'=515
+'SECURITY'=516
+'SERVER'=517
+'SESSION'=518
+'SHARE'=519
+'SHARED'=520
+'SIGNED'=521
+'SIMPLE'=522
+'SLAVE'=523
+'SLOW'=524
+'SNAPSHOT'=525
+'SOCKET'=526
+'SOME'=527
+'SONAME'=528
+'SOUNDS'=529
+'SOURCE'=530
+'SQL_AFTER_GTIDS'=531
+'SQL_AFTER_MTS_GAPS'=532
+'SQL_BEFORE_GTIDS'=533
+'SQL_BUFFER_RESULT'=534
+'SQL_CACHE'=535
+'SQL_NO_CACHE'=536
+'SQL_THREAD'=537
+'START'=538
+'STARTS'=539
+'STATS_AUTO_RECALC'=540
+'STATS_PERSISTENT'=541
+'STATS_SAMPLE_PAGES'=542
+'STATUS'=543
+'STOP'=544
+'STORAGE'=545
+'STORED'=546
+'STRING'=547
+'SUBCLASS_ORIGIN'=548
+'SUBJECT'=549
+'SUBPARTITION'=550
+'SUBPARTITIONS'=551
+'SUSPEND'=552
+'SWAPS'=553
+'SWITCHES'=554
+'TABLE_NAME'=555
+'TABLESPACE'=556
+'TEMPORARY'=557
+'TEMPTABLE'=558
+'THAN'=559
+'TRADITIONAL'=560
+'TRANSACTION'=561
+'TRANSACTIONAL'=562
+'TRIGGERS'=563
+'TRUNCATE'=564
+'UNDEFINED'=565
+'UNDOFILE'=566
+'UNDO_BUFFER_SIZE'=567
+'UNINSTALL'=568
+'UNKNOWN'=569
+'UNTIL'=570
+'UPGRADE'=571
+'USER'=572
+'USE_FRM'=573
+'USER_RESOURCES'=574
+'VALIDATION'=575
+'VALUE'=576
+'VARIABLES'=577
+'VIEW'=578
+'VIRTUAL'=579
+'VISIBLE'=580
+'WAIT'=581
+'WARNINGS'=582
+'WITHOUT'=583
+'WORK'=584
+'WRAPPER'=585
+'X509'=586
+'XA'=587
+'XML'=588
+'EUR'=589
+'USA'=590
+'JIS'=591
+'ISO'=592
+'INTERNAL'=593
+'QUARTER'=594
+'MONTH'=595
+'DAY'=596
+'HOUR'=597
+'MINUTE'=598
+'WEEK'=599
+'SECOND'=600
+'MICROSECOND'=601
+'TABLES'=602
+'ROUTINE'=603
+'EXECUTE'=604
+'FILE'=605
+'PROCESS'=606
+'RELOAD'=607
+'SHUTDOWN'=608
+'SUPER'=609
+'PRIVILEGES'=610
+'APPLICATION_PASSWORD_ADMIN'=611
+'AUDIT_ADMIN'=612
+'BACKUP_ADMIN'=613
+'BINLOG_ADMIN'=614
+'BINLOG_ENCRYPTION_ADMIN'=615
+'CLONE_ADMIN'=616
+'CONNECTION_ADMIN'=617
+'ENCRYPTION_KEY_ADMIN'=618
+'FIREWALL_ADMIN'=619
+'FIREWALL_USER'=620
+'GROUP_REPLICATION_ADMIN'=621
+'INNODB_REDO_LOG_ARCHIVE'=622
+'NDB_STORED_USER'=623
+'PERSIST_RO_VARIABLES_ADMIN'=624
+'REPLICATION_APPLIER'=625
+'REPLICATION_SLAVE_ADMIN'=626
+'RESOURCE_GROUP_ADMIN'=627
+'RESOURCE_GROUP_USER'=628
+'ROLE_ADMIN'=629
+'SET_USER_ID'=631
+'SHOW_ROUTINE'=632
+'SYSTEM_VARIABLES_ADMIN'=633
+'TABLE_ENCRYPTION_ADMIN'=634
+'VERSION_TOKEN_ADMIN'=635
+'XA_RECOVER_ADMIN'=636
+'ARMSCII8'=637
+'ASCII'=638
+'BIG5'=639
+'CP1250'=640
+'CP1251'=641
+'CP1256'=642
+'CP1257'=643
+'CP850'=644
+'CP852'=645
+'CP866'=646
+'CP932'=647
+'DEC8'=648
+'EUCJPMS'=649
+'EUCKR'=650
+'GB2312'=651
+'GBK'=652
+'GEOSTD8'=653
+'GREEK'=654
+'HEBREW'=655
+'HP8'=656
+'KEYBCS2'=657
+'KOI8R'=658
+'KOI8U'=659
+'LATIN1'=660
+'LATIN2'=661
+'LATIN5'=662
+'LATIN7'=663
+'MACCE'=664
+'MACROMAN'=665
+'SJIS'=666
+'SWE7'=667
+'TIS620'=668
+'UCS2'=669
+'UJIS'=670
+'UTF16'=671
+'UTF16LE'=672
+'UTF32'=673
+'UTF8'=674
+'UTF8MB3'=675
+'UTF8MB4'=676
+'ARCHIVE'=677
+'BLACKHOLE'=678
+'CSV'=679
+'FEDERATED'=680
+'INNODB'=681
+'MEMORY'=682
+'MRG_MYISAM'=683
+'MYISAM'=684
+'NDB'=685
+'NDBCLUSTER'=686
+'PERFORMANCE_SCHEMA'=687
+'TOKUDB'=688
+'REPEATABLE'=689
+'COMMITTED'=690
+'UNCOMMITTED'=691
+'SERIALIZABLE'=692
+'GEOMETRYCOLLECTION'=693
+'GEOMCOLLECTION'=694
+'GEOMETRY'=695
+'LINESTRING'=696
+'MULTILINESTRING'=697
+'MULTIPOINT'=698
+'MULTIPOLYGON'=699
+'POINT'=700
+'POLYGON'=701
+'ABS'=702
+'ACOS'=703
+'ADDDATE'=704
+'ADDTIME'=705
+'AES_DECRYPT'=706
+'AES_ENCRYPT'=707
+'AREA'=708
+'ASBINARY'=709
+'ASIN'=710
+'ASTEXT'=711
+'ASWKB'=712
+'ASWKT'=713
+'ASYMMETRIC_DECRYPT'=714
+'ASYMMETRIC_DERIVE'=715
+'ASYMMETRIC_ENCRYPT'=716
+'ASYMMETRIC_SIGN'=717
+'ASYMMETRIC_VERIFY'=718
+'ATAN'=719
+'ATAN2'=720
+'BENCHMARK'=721
+'BIN'=722
+'BIT_COUNT'=723
+'BIT_LENGTH'=724
+'BUFFER'=725
+'CATALOG_NAME'=726
+'CEIL'=727
+'CEILING'=728
+'CENTROID'=729
+'CHARACTER_LENGTH'=730
+'CHARSET'=731
+'CHAR_LENGTH'=732
+'COERCIBILITY'=733
+'COLLATION'=734
+'COMPRESS'=735
+'CONCAT'=736
+'CONCAT_WS'=737
+'CONNECTION_ID'=738
+'CONV'=739
+'CONVERT_TZ'=740
+'COS'=741
+'COT'=742
+'CRC32'=743
+'CREATE_ASYMMETRIC_PRIV_KEY'=744
+'CREATE_ASYMMETRIC_PUB_KEY'=745
+'CREATE_DH_PARAMETERS'=746
+'CREATE_DIGEST'=747
+'CROSSES'=748
+'DATEDIFF'=749
+'DATE_FORMAT'=750
+'DAYNAME'=751
+'DAYOFMONTH'=752
+'DAYOFWEEK'=753
+'DAYOFYEAR'=754
+'DECODE'=755
+'DEGREES'=756
+'DES_DECRYPT'=757
+'DES_ENCRYPT'=758
+'DIMENSION'=759
+'DISJOINT'=760
+'ELT'=761
+'ENCODE'=762
+'ENCRYPT'=763
+'ENDPOINT'=764
+'ENVELOPE'=765
+'EQUALS'=766
+'EXP'=767
+'EXPORT_SET'=768
+'EXTERIORRING'=769
+'EXTRACTVALUE'=770
+'FIELD'=771
+'FIND_IN_SET'=772
+'FLOOR'=773
+'FORMAT'=774
+'FOUND_ROWS'=775
+'FROM_BASE64'=776
+'FROM_DAYS'=777
+'FROM_UNIXTIME'=778
+'GEOMCOLLFROMTEXT'=779
+'GEOMCOLLFROMWKB'=780
+'GEOMETRYCOLLECTIONFROMTEXT'=781
+'GEOMETRYCOLLECTIONFROMWKB'=782
+'GEOMETRYFROMTEXT'=783
+'GEOMETRYFROMWKB'=784
+'GEOMETRYN'=785
+'GEOMETRYTYPE'=786
+'GEOMFROMTEXT'=787
+'GEOMFROMWKB'=788
+'GET_FORMAT'=789
+'GET_LOCK'=790
+'GLENGTH'=791
+'GREATEST'=792
+'GTID_SUBSET'=793
+'GTID_SUBTRACT'=794
+'HEX'=795
+'IFNULL'=796
+'INET6_ATON'=797
+'INET6_NTOA'=798
+'INET_ATON'=799
+'INET_NTOA'=800
+'INSTR'=801
+'INTERIORRINGN'=802
+'INTERSECTS'=803
+'ISCLOSED'=804
+'ISEMPTY'=805
+'ISNULL'=806
+'ISSIMPLE'=807
+'IS_FREE_LOCK'=808
+'IS_IPV4'=809
+'IS_IPV4_COMPAT'=810
+'IS_IPV4_MAPPED'=811
+'IS_IPV6'=812
+'IS_USED_LOCK'=813
+'LAST_INSERT_ID'=814
+'LCASE'=815
+'LEAST'=816
+'LENGTH'=817
+'LINEFROMTEXT'=818
+'LINEFROMWKB'=819
+'LINESTRINGFROMTEXT'=820
+'LINESTRINGFROMWKB'=821
+'LN'=822
+'LOAD_FILE'=823
+'LOCATE'=824
+'LOG'=825
+'LOG10'=826
+'LOG2'=827
+'LOWER'=828
+'LPAD'=829
+'LTRIM'=830
+'MAKEDATE'=831
+'MAKETIME'=832
+'MAKE_SET'=833
+'MASTER_POS_WAIT'=834
+'MBRCONTAINS'=835
+'MBRDISJOINT'=836
+'MBREQUAL'=837
+'MBRINTERSECTS'=838
+'MBROVERLAPS'=839
+'MBRTOUCHES'=840
+'MBRWITHIN'=841
+'MD5'=842
+'MLINEFROMTEXT'=843
+'MLINEFROMWKB'=844
+'MONTHNAME'=845
+'MPOINTFROMTEXT'=846
+'MPOINTFROMWKB'=847
+'MPOLYFROMTEXT'=848
+'MPOLYFROMWKB'=849
+'MULTILINESTRINGFROMTEXT'=850
+'MULTILINESTRINGFROMWKB'=851
+'MULTIPOINTFROMTEXT'=852
+'MULTIPOINTFROMWKB'=853
+'MULTIPOLYGONFROMTEXT'=854
+'MULTIPOLYGONFROMWKB'=855
+'NAME_CONST'=856
+'NULLIF'=857
+'NUMGEOMETRIES'=858
+'NUMINTERIORRINGS'=859
+'NUMPOINTS'=860
+'OCT'=861
+'OCTET_LENGTH'=862
+'ORD'=863
+'OVERLAPS'=864
+'PERIOD_ADD'=865
+'PERIOD_DIFF'=866
+'PI'=867
+'POINTFROMTEXT'=868
+'POINTFROMWKB'=869
+'POINTN'=870
+'POLYFROMTEXT'=871
+'POLYFROMWKB'=872
+'POLYGONFROMTEXT'=873
+'POLYGONFROMWKB'=874
+'POW'=875
+'POWER'=876
+'QUOTE'=877
+'RADIANS'=878
+'RAND'=879
+'RANDOM_BYTES'=880
+'RELEASE_LOCK'=881
+'REVERSE'=882
+'ROUND'=883
+'ROW_COUNT'=884
+'RPAD'=885
+'RTRIM'=886
+'SEC_TO_TIME'=887
+'SESSION_USER'=888
+'SHA'=889
+'SHA1'=890
+'SHA2'=891
+'SCHEMA_NAME'=892
+'SIGN'=893
+'SIN'=894
+'SLEEP'=895
+'SOUNDEX'=896
+'SQL_THREAD_WAIT_AFTER_GTIDS'=897
+'SQRT'=898
+'SRID'=899
+'STARTPOINT'=900
+'STRCMP'=901
+'STR_TO_DATE'=902
+'ST_AREA'=903
+'ST_ASBINARY'=904
+'ST_ASTEXT'=905
+'ST_ASWKB'=906
+'ST_ASWKT'=907
+'ST_BUFFER'=908
+'ST_CENTROID'=909
+'ST_CONTAINS'=910
+'ST_CROSSES'=911
+'ST_DIFFERENCE'=912
+'ST_DIMENSION'=913
+'ST_DISJOINT'=914
+'ST_DISTANCE'=915
+'ST_ENDPOINT'=916
+'ST_ENVELOPE'=917
+'ST_EQUALS'=918
+'ST_EXTERIORRING'=919
+'ST_GEOMCOLLFROMTEXT'=920
+'ST_GEOMCOLLFROMTXT'=921
+'ST_GEOMCOLLFROMWKB'=922
+'ST_GEOMETRYCOLLECTIONFROMTEXT'=923
+'ST_GEOMETRYCOLLECTIONFROMWKB'=924
+'ST_GEOMETRYFROMTEXT'=925
+'ST_GEOMETRYFROMWKB'=926
+'ST_GEOMETRYN'=927
+'ST_GEOMETRYTYPE'=928
+'ST_GEOMFROMTEXT'=929
+'ST_GEOMFROMWKB'=930
+'ST_INTERIORRINGN'=931
+'ST_INTERSECTION'=932
+'ST_INTERSECTS'=933
+'ST_ISCLOSED'=934
+'ST_ISEMPTY'=935
+'ST_ISSIMPLE'=936
+'ST_LINEFROMTEXT'=937
+'ST_LINEFROMWKB'=938
+'ST_LINESTRINGFROMTEXT'=939
+'ST_LINESTRINGFROMWKB'=940
+'ST_NUMGEOMETRIES'=941
+'ST_NUMINTERIORRING'=942
+'ST_NUMINTERIORRINGS'=943
+'ST_NUMPOINTS'=944
+'ST_OVERLAPS'=945
+'ST_POINTFROMTEXT'=946
+'ST_POINTFROMWKB'=947
+'ST_POINTN'=948
+'ST_POLYFROMTEXT'=949
+'ST_POLYFROMWKB'=950
+'ST_POLYGONFROMTEXT'=951
+'ST_POLYGONFROMWKB'=952
+'ST_SRID'=953
+'ST_STARTPOINT'=954
+'ST_SYMDIFFERENCE'=955
+'ST_TOUCHES'=956
+'ST_UNION'=957
+'ST_WITHIN'=958
+'ST_X'=959
+'ST_Y'=960
+'SUBDATE'=961
+'SUBSTRING_INDEX'=962
+'SUBTIME'=963
+'SYSTEM_USER'=964
+'TAN'=965
+'TIMEDIFF'=966
+'TIMESTAMPADD'=967
+'TIMESTAMPDIFF'=968
+'TIME_FORMAT'=969
+'TIME_TO_SEC'=970
+'TOUCHES'=971
+'TO_BASE64'=972
+'TO_DAYS'=973
+'TO_SECONDS'=974
+'UCASE'=975
+'UNCOMPRESS'=976
+'UNCOMPRESSED_LENGTH'=977
+'UNHEX'=978
+'UNIX_TIMESTAMP'=979
+'UPDATEXML'=980
+'UPPER'=981
+'UUID'=982
+'UUID_SHORT'=983
+'VALIDATE_PASSWORD_STRENGTH'=984
+'VERSION'=985
+'WAIT_UNTIL_SQL_THREAD_AFTER_GTIDS'=986
+'WEEKDAY'=987
+'WEEKOFYEAR'=988
+'WEIGHT_STRING'=989
+'WITHIN'=990
+'YEARWEEK'=991
+'Y'=992
+'X'=993
+':='=994
+'+='=995
+'-='=996
+'*='=997
+'/='=998
+'%='=999
+'&='=1000
+'^='=1001
+'|='=1002
+'*'=1003
+'/'=1004
+'%'=1005
+'+'=1006
+'--'=1007
+'-'=1008
+'DIV'=1009
+'MOD'=1010
+'='=1011
+'>'=1012
+'<'=1013
+'!'=1014
+'~'=1015
+'|'=1016
+'&'=1017
+'^'=1018
+'.'=1019
+'('=1020
+')'=1021
+','=1022
+';'=1023
+'@'=1024
+'0'=1025
+'1'=1026
+'2'=1027
+'\''=1028
+'"'=1029
+'`'=1030
+':'=1031
diff --git a/src/lib/generic/SqlParserListener.js b/src/lib/generic/SqlParserListener.js
new file mode 100644
index 0000000..904ac77
--- /dev/null
+++ b/src/lib/generic/SqlParserListener.js
@@ -0,0 +1,4929 @@
+// Generated from /Users/ziv/Workspace/dt-sql-parser/src/grammar/generic/SqlParser.g4 by ANTLR 4.8
+// jshint ignore: start
+var antlr4 = require('antlr4/index');
+
+// This class defines a complete listener for a parse tree produced by SqlParser.
+function SqlParserListener() {
+ antlr4.tree.ParseTreeListener.call(this);
+ return this;
+}
+
+SqlParserListener.prototype = Object.create(antlr4.tree.ParseTreeListener.prototype);
+SqlParserListener.prototype.constructor = SqlParserListener;
+
+// Enter a parse tree produced by SqlParser#program.
+SqlParserListener.prototype.enterProgram = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#program.
+SqlParserListener.prototype.exitProgram = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#statement.
+SqlParserListener.prototype.enterStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#statement.
+SqlParserListener.prototype.exitStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#sqlStatements.
+SqlParserListener.prototype.enterSqlStatements = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#sqlStatements.
+SqlParserListener.prototype.exitSqlStatements = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#sqlStatement.
+SqlParserListener.prototype.enterSqlStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#sqlStatement.
+SqlParserListener.prototype.exitSqlStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#emptyStatement.
+SqlParserListener.prototype.enterEmptyStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#emptyStatement.
+SqlParserListener.prototype.exitEmptyStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#ddlStatement.
+SqlParserListener.prototype.enterDdlStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#ddlStatement.
+SqlParserListener.prototype.exitDdlStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#dmlStatement.
+SqlParserListener.prototype.enterDmlStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#dmlStatement.
+SqlParserListener.prototype.exitDmlStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#transactionStatement.
+SqlParserListener.prototype.enterTransactionStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#transactionStatement.
+SqlParserListener.prototype.exitTransactionStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#replicationStatement.
+SqlParserListener.prototype.enterReplicationStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#replicationStatement.
+SqlParserListener.prototype.exitReplicationStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#preparedStatement.
+SqlParserListener.prototype.enterPreparedStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#preparedStatement.
+SqlParserListener.prototype.exitPreparedStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#compoundStatement.
+SqlParserListener.prototype.enterCompoundStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#compoundStatement.
+SqlParserListener.prototype.exitCompoundStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#administrationStatement.
+SqlParserListener.prototype.enterAdministrationStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#administrationStatement.
+SqlParserListener.prototype.exitAdministrationStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#utilityStatement.
+SqlParserListener.prototype.enterUtilityStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#utilityStatement.
+SqlParserListener.prototype.exitUtilityStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#createDatabase.
+SqlParserListener.prototype.enterCreateDatabase = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#createDatabase.
+SqlParserListener.prototype.exitCreateDatabase = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#createEvent.
+SqlParserListener.prototype.enterCreateEvent = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#createEvent.
+SqlParserListener.prototype.exitCreateEvent = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#createIndex.
+SqlParserListener.prototype.enterCreateIndex = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#createIndex.
+SqlParserListener.prototype.exitCreateIndex = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#createLogfileGroup.
+SqlParserListener.prototype.enterCreateLogfileGroup = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#createLogfileGroup.
+SqlParserListener.prototype.exitCreateLogfileGroup = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#createProcedure.
+SqlParserListener.prototype.enterCreateProcedure = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#createProcedure.
+SqlParserListener.prototype.exitCreateProcedure = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#createFunction.
+SqlParserListener.prototype.enterCreateFunction = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#createFunction.
+SqlParserListener.prototype.exitCreateFunction = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#createServer.
+SqlParserListener.prototype.enterCreateServer = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#createServer.
+SqlParserListener.prototype.exitCreateServer = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#copyCreateTable.
+SqlParserListener.prototype.enterCopyCreateTable = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#copyCreateTable.
+SqlParserListener.prototype.exitCopyCreateTable = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#queryCreateTable.
+SqlParserListener.prototype.enterQueryCreateTable = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#queryCreateTable.
+SqlParserListener.prototype.exitQueryCreateTable = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#columnCreateTable.
+SqlParserListener.prototype.enterColumnCreateTable = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#columnCreateTable.
+SqlParserListener.prototype.exitColumnCreateTable = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#createTablespaceInnodb.
+SqlParserListener.prototype.enterCreateTablespaceInnodb = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#createTablespaceInnodb.
+SqlParserListener.prototype.exitCreateTablespaceInnodb = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#createTablespaceNdb.
+SqlParserListener.prototype.enterCreateTablespaceNdb = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#createTablespaceNdb.
+SqlParserListener.prototype.exitCreateTablespaceNdb = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#createTrigger.
+SqlParserListener.prototype.enterCreateTrigger = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#createTrigger.
+SqlParserListener.prototype.exitCreateTrigger = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#createView.
+SqlParserListener.prototype.enterCreateView = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#createView.
+SqlParserListener.prototype.exitCreateView = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#createDatabaseOption.
+SqlParserListener.prototype.enterCreateDatabaseOption = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#createDatabaseOption.
+SqlParserListener.prototype.exitCreateDatabaseOption = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#ownerStatement.
+SqlParserListener.prototype.enterOwnerStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#ownerStatement.
+SqlParserListener.prototype.exitOwnerStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#preciseSchedule.
+SqlParserListener.prototype.enterPreciseSchedule = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#preciseSchedule.
+SqlParserListener.prototype.exitPreciseSchedule = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#intervalSchedule.
+SqlParserListener.prototype.enterIntervalSchedule = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#intervalSchedule.
+SqlParserListener.prototype.exitIntervalSchedule = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#timestampValue.
+SqlParserListener.prototype.enterTimestampValue = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#timestampValue.
+SqlParserListener.prototype.exitTimestampValue = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#intervalExpr.
+SqlParserListener.prototype.enterIntervalExpr = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#intervalExpr.
+SqlParserListener.prototype.exitIntervalExpr = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#intervalType.
+SqlParserListener.prototype.enterIntervalType = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#intervalType.
+SqlParserListener.prototype.exitIntervalType = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#enableType.
+SqlParserListener.prototype.enterEnableType = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#enableType.
+SqlParserListener.prototype.exitEnableType = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#indexType.
+SqlParserListener.prototype.enterIndexType = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#indexType.
+SqlParserListener.prototype.exitIndexType = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#indexOption.
+SqlParserListener.prototype.enterIndexOption = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#indexOption.
+SqlParserListener.prototype.exitIndexOption = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#procedureParameter.
+SqlParserListener.prototype.enterProcedureParameter = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#procedureParameter.
+SqlParserListener.prototype.exitProcedureParameter = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#functionParameter.
+SqlParserListener.prototype.enterFunctionParameter = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#functionParameter.
+SqlParserListener.prototype.exitFunctionParameter = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#routineComment.
+SqlParserListener.prototype.enterRoutineComment = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#routineComment.
+SqlParserListener.prototype.exitRoutineComment = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#routineLanguage.
+SqlParserListener.prototype.enterRoutineLanguage = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#routineLanguage.
+SqlParserListener.prototype.exitRoutineLanguage = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#routineBehavior.
+SqlParserListener.prototype.enterRoutineBehavior = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#routineBehavior.
+SqlParserListener.prototype.exitRoutineBehavior = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#routineData.
+SqlParserListener.prototype.enterRoutineData = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#routineData.
+SqlParserListener.prototype.exitRoutineData = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#routineSecurity.
+SqlParserListener.prototype.enterRoutineSecurity = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#routineSecurity.
+SqlParserListener.prototype.exitRoutineSecurity = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#serverOption.
+SqlParserListener.prototype.enterServerOption = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#serverOption.
+SqlParserListener.prototype.exitServerOption = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#createDefinitions.
+SqlParserListener.prototype.enterCreateDefinitions = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#createDefinitions.
+SqlParserListener.prototype.exitCreateDefinitions = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#columnDeclaration.
+SqlParserListener.prototype.enterColumnDeclaration = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#columnDeclaration.
+SqlParserListener.prototype.exitColumnDeclaration = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#constraintDeclaration.
+SqlParserListener.prototype.enterConstraintDeclaration = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#constraintDeclaration.
+SqlParserListener.prototype.exitConstraintDeclaration = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#indexDeclaration.
+SqlParserListener.prototype.enterIndexDeclaration = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#indexDeclaration.
+SqlParserListener.prototype.exitIndexDeclaration = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#columnDefinition.
+SqlParserListener.prototype.enterColumnDefinition = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#columnDefinition.
+SqlParserListener.prototype.exitColumnDefinition = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#nullColumnConstraint.
+SqlParserListener.prototype.enterNullColumnConstraint = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#nullColumnConstraint.
+SqlParserListener.prototype.exitNullColumnConstraint = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#defaultColumnConstraint.
+SqlParserListener.prototype.enterDefaultColumnConstraint = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#defaultColumnConstraint.
+SqlParserListener.prototype.exitDefaultColumnConstraint = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#autoIncrementColumnConstraint.
+SqlParserListener.prototype.enterAutoIncrementColumnConstraint = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#autoIncrementColumnConstraint.
+SqlParserListener.prototype.exitAutoIncrementColumnConstraint = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#primaryKeyColumnConstraint.
+SqlParserListener.prototype.enterPrimaryKeyColumnConstraint = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#primaryKeyColumnConstraint.
+SqlParserListener.prototype.exitPrimaryKeyColumnConstraint = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#uniqueKeyColumnConstraint.
+SqlParserListener.prototype.enterUniqueKeyColumnConstraint = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#uniqueKeyColumnConstraint.
+SqlParserListener.prototype.exitUniqueKeyColumnConstraint = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#commentColumnConstraint.
+SqlParserListener.prototype.enterCommentColumnConstraint = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#commentColumnConstraint.
+SqlParserListener.prototype.exitCommentColumnConstraint = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#formatColumnConstraint.
+SqlParserListener.prototype.enterFormatColumnConstraint = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#formatColumnConstraint.
+SqlParserListener.prototype.exitFormatColumnConstraint = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#storageColumnConstraint.
+SqlParserListener.prototype.enterStorageColumnConstraint = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#storageColumnConstraint.
+SqlParserListener.prototype.exitStorageColumnConstraint = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#referenceColumnConstraint.
+SqlParserListener.prototype.enterReferenceColumnConstraint = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#referenceColumnConstraint.
+SqlParserListener.prototype.exitReferenceColumnConstraint = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#collateColumnConstraint.
+SqlParserListener.prototype.enterCollateColumnConstraint = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#collateColumnConstraint.
+SqlParserListener.prototype.exitCollateColumnConstraint = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#generatedColumnConstraint.
+SqlParserListener.prototype.enterGeneratedColumnConstraint = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#generatedColumnConstraint.
+SqlParserListener.prototype.exitGeneratedColumnConstraint = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#serialDefaultColumnConstraint.
+SqlParserListener.prototype.enterSerialDefaultColumnConstraint = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#serialDefaultColumnConstraint.
+SqlParserListener.prototype.exitSerialDefaultColumnConstraint = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#checkColumnConstraint.
+SqlParserListener.prototype.enterCheckColumnConstraint = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#checkColumnConstraint.
+SqlParserListener.prototype.exitCheckColumnConstraint = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#primaryKeyTableConstraint.
+SqlParserListener.prototype.enterPrimaryKeyTableConstraint = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#primaryKeyTableConstraint.
+SqlParserListener.prototype.exitPrimaryKeyTableConstraint = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#uniqueKeyTableConstraint.
+SqlParserListener.prototype.enterUniqueKeyTableConstraint = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#uniqueKeyTableConstraint.
+SqlParserListener.prototype.exitUniqueKeyTableConstraint = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#foreignKeyTableConstraint.
+SqlParserListener.prototype.enterForeignKeyTableConstraint = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#foreignKeyTableConstraint.
+SqlParserListener.prototype.exitForeignKeyTableConstraint = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#checkTableConstraint.
+SqlParserListener.prototype.enterCheckTableConstraint = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#checkTableConstraint.
+SqlParserListener.prototype.exitCheckTableConstraint = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#referenceDefinition.
+SqlParserListener.prototype.enterReferenceDefinition = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#referenceDefinition.
+SqlParserListener.prototype.exitReferenceDefinition = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#referenceAction.
+SqlParserListener.prototype.enterReferenceAction = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#referenceAction.
+SqlParserListener.prototype.exitReferenceAction = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#referenceControlType.
+SqlParserListener.prototype.enterReferenceControlType = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#referenceControlType.
+SqlParserListener.prototype.exitReferenceControlType = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#simpleIndexDeclaration.
+SqlParserListener.prototype.enterSimpleIndexDeclaration = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#simpleIndexDeclaration.
+SqlParserListener.prototype.exitSimpleIndexDeclaration = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#specialIndexDeclaration.
+SqlParserListener.prototype.enterSpecialIndexDeclaration = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#specialIndexDeclaration.
+SqlParserListener.prototype.exitSpecialIndexDeclaration = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#tableOptionEngine.
+SqlParserListener.prototype.enterTableOptionEngine = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#tableOptionEngine.
+SqlParserListener.prototype.exitTableOptionEngine = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#tableOptionAutoIncrement.
+SqlParserListener.prototype.enterTableOptionAutoIncrement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#tableOptionAutoIncrement.
+SqlParserListener.prototype.exitTableOptionAutoIncrement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#tableOptionAverage.
+SqlParserListener.prototype.enterTableOptionAverage = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#tableOptionAverage.
+SqlParserListener.prototype.exitTableOptionAverage = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#tableOptionCharset.
+SqlParserListener.prototype.enterTableOptionCharset = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#tableOptionCharset.
+SqlParserListener.prototype.exitTableOptionCharset = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#tableOptionChecksum.
+SqlParserListener.prototype.enterTableOptionChecksum = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#tableOptionChecksum.
+SqlParserListener.prototype.exitTableOptionChecksum = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#tableOptionCollate.
+SqlParserListener.prototype.enterTableOptionCollate = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#tableOptionCollate.
+SqlParserListener.prototype.exitTableOptionCollate = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#tableOptionComment.
+SqlParserListener.prototype.enterTableOptionComment = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#tableOptionComment.
+SqlParserListener.prototype.exitTableOptionComment = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#tableOptionCompression.
+SqlParserListener.prototype.enterTableOptionCompression = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#tableOptionCompression.
+SqlParserListener.prototype.exitTableOptionCompression = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#tableOptionConnection.
+SqlParserListener.prototype.enterTableOptionConnection = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#tableOptionConnection.
+SqlParserListener.prototype.exitTableOptionConnection = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#tableOptionDataDirectory.
+SqlParserListener.prototype.enterTableOptionDataDirectory = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#tableOptionDataDirectory.
+SqlParserListener.prototype.exitTableOptionDataDirectory = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#tableOptionDelay.
+SqlParserListener.prototype.enterTableOptionDelay = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#tableOptionDelay.
+SqlParserListener.prototype.exitTableOptionDelay = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#tableOptionEncryption.
+SqlParserListener.prototype.enterTableOptionEncryption = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#tableOptionEncryption.
+SqlParserListener.prototype.exitTableOptionEncryption = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#tableOptionIndexDirectory.
+SqlParserListener.prototype.enterTableOptionIndexDirectory = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#tableOptionIndexDirectory.
+SqlParserListener.prototype.exitTableOptionIndexDirectory = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#tableOptionInsertMethod.
+SqlParserListener.prototype.enterTableOptionInsertMethod = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#tableOptionInsertMethod.
+SqlParserListener.prototype.exitTableOptionInsertMethod = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#tableOptionKeyBlockSize.
+SqlParserListener.prototype.enterTableOptionKeyBlockSize = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#tableOptionKeyBlockSize.
+SqlParserListener.prototype.exitTableOptionKeyBlockSize = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#tableOptionMaxRows.
+SqlParserListener.prototype.enterTableOptionMaxRows = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#tableOptionMaxRows.
+SqlParserListener.prototype.exitTableOptionMaxRows = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#tableOptionMinRows.
+SqlParserListener.prototype.enterTableOptionMinRows = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#tableOptionMinRows.
+SqlParserListener.prototype.exitTableOptionMinRows = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#tableOptionPackKeys.
+SqlParserListener.prototype.enterTableOptionPackKeys = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#tableOptionPackKeys.
+SqlParserListener.prototype.exitTableOptionPackKeys = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#tableOptionPassword.
+SqlParserListener.prototype.enterTableOptionPassword = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#tableOptionPassword.
+SqlParserListener.prototype.exitTableOptionPassword = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#tableOptionRowFormat.
+SqlParserListener.prototype.enterTableOptionRowFormat = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#tableOptionRowFormat.
+SqlParserListener.prototype.exitTableOptionRowFormat = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#tableOptionRecalculation.
+SqlParserListener.prototype.enterTableOptionRecalculation = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#tableOptionRecalculation.
+SqlParserListener.prototype.exitTableOptionRecalculation = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#tableOptionPersistent.
+SqlParserListener.prototype.enterTableOptionPersistent = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#tableOptionPersistent.
+SqlParserListener.prototype.exitTableOptionPersistent = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#tableOptionSamplePage.
+SqlParserListener.prototype.enterTableOptionSamplePage = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#tableOptionSamplePage.
+SqlParserListener.prototype.exitTableOptionSamplePage = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#tableOptionTablespace.
+SqlParserListener.prototype.enterTableOptionTablespace = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#tableOptionTablespace.
+SqlParserListener.prototype.exitTableOptionTablespace = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#tableOptionUnion.
+SqlParserListener.prototype.enterTableOptionUnion = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#tableOptionUnion.
+SqlParserListener.prototype.exitTableOptionUnion = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#tablespaceStorage.
+SqlParserListener.prototype.enterTablespaceStorage = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#tablespaceStorage.
+SqlParserListener.prototype.exitTablespaceStorage = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#partitionDefinitions.
+SqlParserListener.prototype.enterPartitionDefinitions = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#partitionDefinitions.
+SqlParserListener.prototype.exitPartitionDefinitions = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#partitionFunctionHash.
+SqlParserListener.prototype.enterPartitionFunctionHash = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#partitionFunctionHash.
+SqlParserListener.prototype.exitPartitionFunctionHash = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#partitionFunctionKey.
+SqlParserListener.prototype.enterPartitionFunctionKey = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#partitionFunctionKey.
+SqlParserListener.prototype.exitPartitionFunctionKey = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#partitionFunctionRange.
+SqlParserListener.prototype.enterPartitionFunctionRange = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#partitionFunctionRange.
+SqlParserListener.prototype.exitPartitionFunctionRange = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#partitionFunctionList.
+SqlParserListener.prototype.enterPartitionFunctionList = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#partitionFunctionList.
+SqlParserListener.prototype.exitPartitionFunctionList = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#subPartitionFunctionHash.
+SqlParserListener.prototype.enterSubPartitionFunctionHash = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#subPartitionFunctionHash.
+SqlParserListener.prototype.exitSubPartitionFunctionHash = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#subPartitionFunctionKey.
+SqlParserListener.prototype.enterSubPartitionFunctionKey = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#subPartitionFunctionKey.
+SqlParserListener.prototype.exitSubPartitionFunctionKey = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#partitionComparision.
+SqlParserListener.prototype.enterPartitionComparision = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#partitionComparision.
+SqlParserListener.prototype.exitPartitionComparision = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#partitionListAtom.
+SqlParserListener.prototype.enterPartitionListAtom = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#partitionListAtom.
+SqlParserListener.prototype.exitPartitionListAtom = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#partitionListVector.
+SqlParserListener.prototype.enterPartitionListVector = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#partitionListVector.
+SqlParserListener.prototype.exitPartitionListVector = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#partitionSimple.
+SqlParserListener.prototype.enterPartitionSimple = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#partitionSimple.
+SqlParserListener.prototype.exitPartitionSimple = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#partitionDefinerAtom.
+SqlParserListener.prototype.enterPartitionDefinerAtom = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#partitionDefinerAtom.
+SqlParserListener.prototype.exitPartitionDefinerAtom = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#partitionDefinerVector.
+SqlParserListener.prototype.enterPartitionDefinerVector = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#partitionDefinerVector.
+SqlParserListener.prototype.exitPartitionDefinerVector = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#subpartitionDefinition.
+SqlParserListener.prototype.enterSubpartitionDefinition = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#subpartitionDefinition.
+SqlParserListener.prototype.exitSubpartitionDefinition = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#partitionOptionEngine.
+SqlParserListener.prototype.enterPartitionOptionEngine = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#partitionOptionEngine.
+SqlParserListener.prototype.exitPartitionOptionEngine = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#partitionOptionComment.
+SqlParserListener.prototype.enterPartitionOptionComment = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#partitionOptionComment.
+SqlParserListener.prototype.exitPartitionOptionComment = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#partitionOptionDataDirectory.
+SqlParserListener.prototype.enterPartitionOptionDataDirectory = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#partitionOptionDataDirectory.
+SqlParserListener.prototype.exitPartitionOptionDataDirectory = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#partitionOptionIndexDirectory.
+SqlParserListener.prototype.enterPartitionOptionIndexDirectory = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#partitionOptionIndexDirectory.
+SqlParserListener.prototype.exitPartitionOptionIndexDirectory = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#partitionOptionMaxRows.
+SqlParserListener.prototype.enterPartitionOptionMaxRows = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#partitionOptionMaxRows.
+SqlParserListener.prototype.exitPartitionOptionMaxRows = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#partitionOptionMinRows.
+SqlParserListener.prototype.enterPartitionOptionMinRows = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#partitionOptionMinRows.
+SqlParserListener.prototype.exitPartitionOptionMinRows = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#partitionOptionTablespace.
+SqlParserListener.prototype.enterPartitionOptionTablespace = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#partitionOptionTablespace.
+SqlParserListener.prototype.exitPartitionOptionTablespace = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#partitionOptionNodeGroup.
+SqlParserListener.prototype.enterPartitionOptionNodeGroup = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#partitionOptionNodeGroup.
+SqlParserListener.prototype.exitPartitionOptionNodeGroup = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterSimpleDatabase.
+SqlParserListener.prototype.enterAlterSimpleDatabase = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterSimpleDatabase.
+SqlParserListener.prototype.exitAlterSimpleDatabase = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterUpgradeName.
+SqlParserListener.prototype.enterAlterUpgradeName = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterUpgradeName.
+SqlParserListener.prototype.exitAlterUpgradeName = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterEvent.
+SqlParserListener.prototype.enterAlterEvent = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterEvent.
+SqlParserListener.prototype.exitAlterEvent = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterFunction.
+SqlParserListener.prototype.enterAlterFunction = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterFunction.
+SqlParserListener.prototype.exitAlterFunction = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterInstance.
+SqlParserListener.prototype.enterAlterInstance = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterInstance.
+SqlParserListener.prototype.exitAlterInstance = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterLogfileGroup.
+SqlParserListener.prototype.enterAlterLogfileGroup = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterLogfileGroup.
+SqlParserListener.prototype.exitAlterLogfileGroup = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterProcedure.
+SqlParserListener.prototype.enterAlterProcedure = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterProcedure.
+SqlParserListener.prototype.exitAlterProcedure = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterServer.
+SqlParserListener.prototype.enterAlterServer = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterServer.
+SqlParserListener.prototype.exitAlterServer = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterTable.
+SqlParserListener.prototype.enterAlterTable = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterTable.
+SqlParserListener.prototype.exitAlterTable = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterTablespace.
+SqlParserListener.prototype.enterAlterTablespace = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterTablespace.
+SqlParserListener.prototype.exitAlterTablespace = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterView.
+SqlParserListener.prototype.enterAlterView = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterView.
+SqlParserListener.prototype.exitAlterView = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterByTableOption.
+SqlParserListener.prototype.enterAlterByTableOption = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterByTableOption.
+SqlParserListener.prototype.exitAlterByTableOption = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterByAddColumn.
+SqlParserListener.prototype.enterAlterByAddColumn = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterByAddColumn.
+SqlParserListener.prototype.exitAlterByAddColumn = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterByAddColumns.
+SqlParserListener.prototype.enterAlterByAddColumns = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterByAddColumns.
+SqlParserListener.prototype.exitAlterByAddColumns = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterByAddIndex.
+SqlParserListener.prototype.enterAlterByAddIndex = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterByAddIndex.
+SqlParserListener.prototype.exitAlterByAddIndex = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterByAddPrimaryKey.
+SqlParserListener.prototype.enterAlterByAddPrimaryKey = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterByAddPrimaryKey.
+SqlParserListener.prototype.exitAlterByAddPrimaryKey = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterByAddUniqueKey.
+SqlParserListener.prototype.enterAlterByAddUniqueKey = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterByAddUniqueKey.
+SqlParserListener.prototype.exitAlterByAddUniqueKey = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterByAddSpecialIndex.
+SqlParserListener.prototype.enterAlterByAddSpecialIndex = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterByAddSpecialIndex.
+SqlParserListener.prototype.exitAlterByAddSpecialIndex = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterByAddForeignKey.
+SqlParserListener.prototype.enterAlterByAddForeignKey = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterByAddForeignKey.
+SqlParserListener.prototype.exitAlterByAddForeignKey = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterByAddCheckTableConstraint.
+SqlParserListener.prototype.enterAlterByAddCheckTableConstraint = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterByAddCheckTableConstraint.
+SqlParserListener.prototype.exitAlterByAddCheckTableConstraint = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterBySetAlgorithm.
+SqlParserListener.prototype.enterAlterBySetAlgorithm = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterBySetAlgorithm.
+SqlParserListener.prototype.exitAlterBySetAlgorithm = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterByChangeDefault.
+SqlParserListener.prototype.enterAlterByChangeDefault = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterByChangeDefault.
+SqlParserListener.prototype.exitAlterByChangeDefault = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterByChangeColumn.
+SqlParserListener.prototype.enterAlterByChangeColumn = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterByChangeColumn.
+SqlParserListener.prototype.exitAlterByChangeColumn = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterByRenameColumn.
+SqlParserListener.prototype.enterAlterByRenameColumn = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterByRenameColumn.
+SqlParserListener.prototype.exitAlterByRenameColumn = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterByLock.
+SqlParserListener.prototype.enterAlterByLock = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterByLock.
+SqlParserListener.prototype.exitAlterByLock = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterByModifyColumn.
+SqlParserListener.prototype.enterAlterByModifyColumn = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterByModifyColumn.
+SqlParserListener.prototype.exitAlterByModifyColumn = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterByDropColumn.
+SqlParserListener.prototype.enterAlterByDropColumn = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterByDropColumn.
+SqlParserListener.prototype.exitAlterByDropColumn = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterByDropPrimaryKey.
+SqlParserListener.prototype.enterAlterByDropPrimaryKey = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterByDropPrimaryKey.
+SqlParserListener.prototype.exitAlterByDropPrimaryKey = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterByRenameIndex.
+SqlParserListener.prototype.enterAlterByRenameIndex = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterByRenameIndex.
+SqlParserListener.prototype.exitAlterByRenameIndex = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterByAlterIndexVisibility.
+SqlParserListener.prototype.enterAlterByAlterIndexVisibility = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterByAlterIndexVisibility.
+SqlParserListener.prototype.exitAlterByAlterIndexVisibility = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterByDropIndex.
+SqlParserListener.prototype.enterAlterByDropIndex = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterByDropIndex.
+SqlParserListener.prototype.exitAlterByDropIndex = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterByDropForeignKey.
+SqlParserListener.prototype.enterAlterByDropForeignKey = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterByDropForeignKey.
+SqlParserListener.prototype.exitAlterByDropForeignKey = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterByDisableKeys.
+SqlParserListener.prototype.enterAlterByDisableKeys = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterByDisableKeys.
+SqlParserListener.prototype.exitAlterByDisableKeys = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterByEnableKeys.
+SqlParserListener.prototype.enterAlterByEnableKeys = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterByEnableKeys.
+SqlParserListener.prototype.exitAlterByEnableKeys = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterByRename.
+SqlParserListener.prototype.enterAlterByRename = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterByRename.
+SqlParserListener.prototype.exitAlterByRename = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterByOrder.
+SqlParserListener.prototype.enterAlterByOrder = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterByOrder.
+SqlParserListener.prototype.exitAlterByOrder = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterByConvertCharset.
+SqlParserListener.prototype.enterAlterByConvertCharset = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterByConvertCharset.
+SqlParserListener.prototype.exitAlterByConvertCharset = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterByDefaultCharset.
+SqlParserListener.prototype.enterAlterByDefaultCharset = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterByDefaultCharset.
+SqlParserListener.prototype.exitAlterByDefaultCharset = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterByDiscardTablespace.
+SqlParserListener.prototype.enterAlterByDiscardTablespace = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterByDiscardTablespace.
+SqlParserListener.prototype.exitAlterByDiscardTablespace = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterByImportTablespace.
+SqlParserListener.prototype.enterAlterByImportTablespace = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterByImportTablespace.
+SqlParserListener.prototype.exitAlterByImportTablespace = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterByForce.
+SqlParserListener.prototype.enterAlterByForce = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterByForce.
+SqlParserListener.prototype.exitAlterByForce = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterByValidate.
+SqlParserListener.prototype.enterAlterByValidate = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterByValidate.
+SqlParserListener.prototype.exitAlterByValidate = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterByAddPartition.
+SqlParserListener.prototype.enterAlterByAddPartition = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterByAddPartition.
+SqlParserListener.prototype.exitAlterByAddPartition = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterByDropPartition.
+SqlParserListener.prototype.enterAlterByDropPartition = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterByDropPartition.
+SqlParserListener.prototype.exitAlterByDropPartition = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterByDiscardPartition.
+SqlParserListener.prototype.enterAlterByDiscardPartition = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterByDiscardPartition.
+SqlParserListener.prototype.exitAlterByDiscardPartition = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterByImportPartition.
+SqlParserListener.prototype.enterAlterByImportPartition = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterByImportPartition.
+SqlParserListener.prototype.exitAlterByImportPartition = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterByTruncatePartition.
+SqlParserListener.prototype.enterAlterByTruncatePartition = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterByTruncatePartition.
+SqlParserListener.prototype.exitAlterByTruncatePartition = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterByCoalescePartition.
+SqlParserListener.prototype.enterAlterByCoalescePartition = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterByCoalescePartition.
+SqlParserListener.prototype.exitAlterByCoalescePartition = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterByReorganizePartition.
+SqlParserListener.prototype.enterAlterByReorganizePartition = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterByReorganizePartition.
+SqlParserListener.prototype.exitAlterByReorganizePartition = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterByExchangePartition.
+SqlParserListener.prototype.enterAlterByExchangePartition = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterByExchangePartition.
+SqlParserListener.prototype.exitAlterByExchangePartition = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterByAnalyzePartition.
+SqlParserListener.prototype.enterAlterByAnalyzePartition = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterByAnalyzePartition.
+SqlParserListener.prototype.exitAlterByAnalyzePartition = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterByCheckPartition.
+SqlParserListener.prototype.enterAlterByCheckPartition = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterByCheckPartition.
+SqlParserListener.prototype.exitAlterByCheckPartition = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterByOptimizePartition.
+SqlParserListener.prototype.enterAlterByOptimizePartition = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterByOptimizePartition.
+SqlParserListener.prototype.exitAlterByOptimizePartition = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterByRebuildPartition.
+SqlParserListener.prototype.enterAlterByRebuildPartition = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterByRebuildPartition.
+SqlParserListener.prototype.exitAlterByRebuildPartition = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterByRepairPartition.
+SqlParserListener.prototype.enterAlterByRepairPartition = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterByRepairPartition.
+SqlParserListener.prototype.exitAlterByRepairPartition = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterByRemovePartitioning.
+SqlParserListener.prototype.enterAlterByRemovePartitioning = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterByRemovePartitioning.
+SqlParserListener.prototype.exitAlterByRemovePartitioning = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterByUpgradePartitioning.
+SqlParserListener.prototype.enterAlterByUpgradePartitioning = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterByUpgradePartitioning.
+SqlParserListener.prototype.exitAlterByUpgradePartitioning = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#dropDatabase.
+SqlParserListener.prototype.enterDropDatabase = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#dropDatabase.
+SqlParserListener.prototype.exitDropDatabase = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#dropEvent.
+SqlParserListener.prototype.enterDropEvent = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#dropEvent.
+SqlParserListener.prototype.exitDropEvent = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#dropIndex.
+SqlParserListener.prototype.enterDropIndex = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#dropIndex.
+SqlParserListener.prototype.exitDropIndex = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#dropLogfileGroup.
+SqlParserListener.prototype.enterDropLogfileGroup = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#dropLogfileGroup.
+SqlParserListener.prototype.exitDropLogfileGroup = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#dropProcedure.
+SqlParserListener.prototype.enterDropProcedure = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#dropProcedure.
+SqlParserListener.prototype.exitDropProcedure = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#dropFunction.
+SqlParserListener.prototype.enterDropFunction = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#dropFunction.
+SqlParserListener.prototype.exitDropFunction = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#dropServer.
+SqlParserListener.prototype.enterDropServer = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#dropServer.
+SqlParserListener.prototype.exitDropServer = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#dropTable.
+SqlParserListener.prototype.enterDropTable = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#dropTable.
+SqlParserListener.prototype.exitDropTable = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#dropTablespace.
+SqlParserListener.prototype.enterDropTablespace = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#dropTablespace.
+SqlParserListener.prototype.exitDropTablespace = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#dropTrigger.
+SqlParserListener.prototype.enterDropTrigger = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#dropTrigger.
+SqlParserListener.prototype.exitDropTrigger = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#dropView.
+SqlParserListener.prototype.enterDropView = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#dropView.
+SqlParserListener.prototype.exitDropView = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#renameTable.
+SqlParserListener.prototype.enterRenameTable = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#renameTable.
+SqlParserListener.prototype.exitRenameTable = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#renameTableClause.
+SqlParserListener.prototype.enterRenameTableClause = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#renameTableClause.
+SqlParserListener.prototype.exitRenameTableClause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#truncateTable.
+SqlParserListener.prototype.enterTruncateTable = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#truncateTable.
+SqlParserListener.prototype.exitTruncateTable = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#callStatement.
+SqlParserListener.prototype.enterCallStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#callStatement.
+SqlParserListener.prototype.exitCallStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#deleteStatement.
+SqlParserListener.prototype.enterDeleteStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#deleteStatement.
+SqlParserListener.prototype.exitDeleteStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#doStatement.
+SqlParserListener.prototype.enterDoStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#doStatement.
+SqlParserListener.prototype.exitDoStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#handlerStatement.
+SqlParserListener.prototype.enterHandlerStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#handlerStatement.
+SqlParserListener.prototype.exitHandlerStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#insertStatement.
+SqlParserListener.prototype.enterInsertStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#insertStatement.
+SqlParserListener.prototype.exitInsertStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#loadDataStatement.
+SqlParserListener.prototype.enterLoadDataStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#loadDataStatement.
+SqlParserListener.prototype.exitLoadDataStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#loadXmlStatement.
+SqlParserListener.prototype.enterLoadXmlStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#loadXmlStatement.
+SqlParserListener.prototype.exitLoadXmlStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#replaceStatement.
+SqlParserListener.prototype.enterReplaceStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#replaceStatement.
+SqlParserListener.prototype.exitReplaceStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#simpleSelect.
+SqlParserListener.prototype.enterSimpleSelect = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#simpleSelect.
+SqlParserListener.prototype.exitSimpleSelect = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#parenthesisSelect.
+SqlParserListener.prototype.enterParenthesisSelect = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#parenthesisSelect.
+SqlParserListener.prototype.exitParenthesisSelect = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#unionSelect.
+SqlParserListener.prototype.enterUnionSelect = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#unionSelect.
+SqlParserListener.prototype.exitUnionSelect = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#unionParenthesisSelect.
+SqlParserListener.prototype.enterUnionParenthesisSelect = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#unionParenthesisSelect.
+SqlParserListener.prototype.exitUnionParenthesisSelect = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#updateStatement.
+SqlParserListener.prototype.enterUpdateStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#updateStatement.
+SqlParserListener.prototype.exitUpdateStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#insertStatementValue.
+SqlParserListener.prototype.enterInsertStatementValue = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#insertStatementValue.
+SqlParserListener.prototype.exitInsertStatementValue = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#updatedElement.
+SqlParserListener.prototype.enterUpdatedElement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#updatedElement.
+SqlParserListener.prototype.exitUpdatedElement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#assignmentField.
+SqlParserListener.prototype.enterAssignmentField = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#assignmentField.
+SqlParserListener.prototype.exitAssignmentField = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#lockClause.
+SqlParserListener.prototype.enterLockClause = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#lockClause.
+SqlParserListener.prototype.exitLockClause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#singleDeleteStatement.
+SqlParserListener.prototype.enterSingleDeleteStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#singleDeleteStatement.
+SqlParserListener.prototype.exitSingleDeleteStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#multipleDeleteStatement.
+SqlParserListener.prototype.enterMultipleDeleteStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#multipleDeleteStatement.
+SqlParserListener.prototype.exitMultipleDeleteStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#handlerOpenStatement.
+SqlParserListener.prototype.enterHandlerOpenStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#handlerOpenStatement.
+SqlParserListener.prototype.exitHandlerOpenStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#handlerReadIndexStatement.
+SqlParserListener.prototype.enterHandlerReadIndexStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#handlerReadIndexStatement.
+SqlParserListener.prototype.exitHandlerReadIndexStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#handlerReadStatement.
+SqlParserListener.prototype.enterHandlerReadStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#handlerReadStatement.
+SqlParserListener.prototype.exitHandlerReadStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#handlerCloseStatement.
+SqlParserListener.prototype.enterHandlerCloseStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#handlerCloseStatement.
+SqlParserListener.prototype.exitHandlerCloseStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#singleUpdateStatement.
+SqlParserListener.prototype.enterSingleUpdateStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#singleUpdateStatement.
+SqlParserListener.prototype.exitSingleUpdateStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#multipleUpdateStatement.
+SqlParserListener.prototype.enterMultipleUpdateStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#multipleUpdateStatement.
+SqlParserListener.prototype.exitMultipleUpdateStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#orderByClause.
+SqlParserListener.prototype.enterOrderByClause = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#orderByClause.
+SqlParserListener.prototype.exitOrderByClause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#orderByExpression.
+SqlParserListener.prototype.enterOrderByExpression = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#orderByExpression.
+SqlParserListener.prototype.exitOrderByExpression = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#tableSources.
+SqlParserListener.prototype.enterTableSources = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#tableSources.
+SqlParserListener.prototype.exitTableSources = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#tableSourceBase.
+SqlParserListener.prototype.enterTableSourceBase = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#tableSourceBase.
+SqlParserListener.prototype.exitTableSourceBase = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#tableSourceNested.
+SqlParserListener.prototype.enterTableSourceNested = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#tableSourceNested.
+SqlParserListener.prototype.exitTableSourceNested = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#atomTableItem.
+SqlParserListener.prototype.enterAtomTableItem = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#atomTableItem.
+SqlParserListener.prototype.exitAtomTableItem = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#subqueryTableItem.
+SqlParserListener.prototype.enterSubqueryTableItem = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#subqueryTableItem.
+SqlParserListener.prototype.exitSubqueryTableItem = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#tableSourcesItem.
+SqlParserListener.prototype.enterTableSourcesItem = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#tableSourcesItem.
+SqlParserListener.prototype.exitTableSourcesItem = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#indexHint.
+SqlParserListener.prototype.enterIndexHint = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#indexHint.
+SqlParserListener.prototype.exitIndexHint = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#indexHintType.
+SqlParserListener.prototype.enterIndexHintType = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#indexHintType.
+SqlParserListener.prototype.exitIndexHintType = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#innerJoin.
+SqlParserListener.prototype.enterInnerJoin = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#innerJoin.
+SqlParserListener.prototype.exitInnerJoin = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#straightJoin.
+SqlParserListener.prototype.enterStraightJoin = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#straightJoin.
+SqlParserListener.prototype.exitStraightJoin = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#outerJoin.
+SqlParserListener.prototype.enterOuterJoin = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#outerJoin.
+SqlParserListener.prototype.exitOuterJoin = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#naturalJoin.
+SqlParserListener.prototype.enterNaturalJoin = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#naturalJoin.
+SqlParserListener.prototype.exitNaturalJoin = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#queryExpression.
+SqlParserListener.prototype.enterQueryExpression = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#queryExpression.
+SqlParserListener.prototype.exitQueryExpression = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#queryExpressionNointo.
+SqlParserListener.prototype.enterQueryExpressionNointo = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#queryExpressionNointo.
+SqlParserListener.prototype.exitQueryExpressionNointo = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#querySpecification.
+SqlParserListener.prototype.enterQuerySpecification = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#querySpecification.
+SqlParserListener.prototype.exitQuerySpecification = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#querySpecificationNointo.
+SqlParserListener.prototype.enterQuerySpecificationNointo = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#querySpecificationNointo.
+SqlParserListener.prototype.exitQuerySpecificationNointo = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#unionParenthesis.
+SqlParserListener.prototype.enterUnionParenthesis = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#unionParenthesis.
+SqlParserListener.prototype.exitUnionParenthesis = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#unionStatement.
+SqlParserListener.prototype.enterUnionStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#unionStatement.
+SqlParserListener.prototype.exitUnionStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#selectSpec.
+SqlParserListener.prototype.enterSelectSpec = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#selectSpec.
+SqlParserListener.prototype.exitSelectSpec = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#selectElements.
+SqlParserListener.prototype.enterSelectElements = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#selectElements.
+SqlParserListener.prototype.exitSelectElements = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#selectStarElement.
+SqlParserListener.prototype.enterSelectStarElement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#selectStarElement.
+SqlParserListener.prototype.exitSelectStarElement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#selectColumnElement.
+SqlParserListener.prototype.enterSelectColumnElement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#selectColumnElement.
+SqlParserListener.prototype.exitSelectColumnElement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#selectFunctionElement.
+SqlParserListener.prototype.enterSelectFunctionElement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#selectFunctionElement.
+SqlParserListener.prototype.exitSelectFunctionElement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#selectExpressionElement.
+SqlParserListener.prototype.enterSelectExpressionElement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#selectExpressionElement.
+SqlParserListener.prototype.exitSelectExpressionElement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#selectIntoVariables.
+SqlParserListener.prototype.enterSelectIntoVariables = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#selectIntoVariables.
+SqlParserListener.prototype.exitSelectIntoVariables = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#selectIntoDumpFile.
+SqlParserListener.prototype.enterSelectIntoDumpFile = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#selectIntoDumpFile.
+SqlParserListener.prototype.exitSelectIntoDumpFile = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#selectIntoTextFile.
+SqlParserListener.prototype.enterSelectIntoTextFile = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#selectIntoTextFile.
+SqlParserListener.prototype.exitSelectIntoTextFile = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#selectFieldsInto.
+SqlParserListener.prototype.enterSelectFieldsInto = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#selectFieldsInto.
+SqlParserListener.prototype.exitSelectFieldsInto = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#selectLinesInto.
+SqlParserListener.prototype.enterSelectLinesInto = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#selectLinesInto.
+SqlParserListener.prototype.exitSelectLinesInto = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#fromClause.
+SqlParserListener.prototype.enterFromClause = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#fromClause.
+SqlParserListener.prototype.exitFromClause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#groupByItem.
+SqlParserListener.prototype.enterGroupByItem = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#groupByItem.
+SqlParserListener.prototype.exitGroupByItem = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#limitClause.
+SqlParserListener.prototype.enterLimitClause = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#limitClause.
+SqlParserListener.prototype.exitLimitClause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#limitClauseAtom.
+SqlParserListener.prototype.enterLimitClauseAtom = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#limitClauseAtom.
+SqlParserListener.prototype.exitLimitClauseAtom = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#startTransaction.
+SqlParserListener.prototype.enterStartTransaction = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#startTransaction.
+SqlParserListener.prototype.exitStartTransaction = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#beginWork.
+SqlParserListener.prototype.enterBeginWork = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#beginWork.
+SqlParserListener.prototype.exitBeginWork = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#commitWork.
+SqlParserListener.prototype.enterCommitWork = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#commitWork.
+SqlParserListener.prototype.exitCommitWork = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#rollbackWork.
+SqlParserListener.prototype.enterRollbackWork = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#rollbackWork.
+SqlParserListener.prototype.exitRollbackWork = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#savepointStatement.
+SqlParserListener.prototype.enterSavepointStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#savepointStatement.
+SqlParserListener.prototype.exitSavepointStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#rollbackStatement.
+SqlParserListener.prototype.enterRollbackStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#rollbackStatement.
+SqlParserListener.prototype.exitRollbackStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#releaseStatement.
+SqlParserListener.prototype.enterReleaseStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#releaseStatement.
+SqlParserListener.prototype.exitReleaseStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#lockTables.
+SqlParserListener.prototype.enterLockTables = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#lockTables.
+SqlParserListener.prototype.exitLockTables = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#unlockTables.
+SqlParserListener.prototype.enterUnlockTables = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#unlockTables.
+SqlParserListener.prototype.exitUnlockTables = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#setAutocommitStatement.
+SqlParserListener.prototype.enterSetAutocommitStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#setAutocommitStatement.
+SqlParserListener.prototype.exitSetAutocommitStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#setTransactionStatement.
+SqlParserListener.prototype.enterSetTransactionStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#setTransactionStatement.
+SqlParserListener.prototype.exitSetTransactionStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#transactionMode.
+SqlParserListener.prototype.enterTransactionMode = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#transactionMode.
+SqlParserListener.prototype.exitTransactionMode = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#lockTableElement.
+SqlParserListener.prototype.enterLockTableElement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#lockTableElement.
+SqlParserListener.prototype.exitLockTableElement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#lockAction.
+SqlParserListener.prototype.enterLockAction = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#lockAction.
+SqlParserListener.prototype.exitLockAction = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#transactionOption.
+SqlParserListener.prototype.enterTransactionOption = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#transactionOption.
+SqlParserListener.prototype.exitTransactionOption = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#transactionLevel.
+SqlParserListener.prototype.enterTransactionLevel = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#transactionLevel.
+SqlParserListener.prototype.exitTransactionLevel = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#changeMaster.
+SqlParserListener.prototype.enterChangeMaster = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#changeMaster.
+SqlParserListener.prototype.exitChangeMaster = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#changeReplicationFilter.
+SqlParserListener.prototype.enterChangeReplicationFilter = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#changeReplicationFilter.
+SqlParserListener.prototype.exitChangeReplicationFilter = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#purgeBinaryLogs.
+SqlParserListener.prototype.enterPurgeBinaryLogs = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#purgeBinaryLogs.
+SqlParserListener.prototype.exitPurgeBinaryLogs = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#resetMaster.
+SqlParserListener.prototype.enterResetMaster = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#resetMaster.
+SqlParserListener.prototype.exitResetMaster = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#resetSlave.
+SqlParserListener.prototype.enterResetSlave = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#resetSlave.
+SqlParserListener.prototype.exitResetSlave = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#startSlave.
+SqlParserListener.prototype.enterStartSlave = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#startSlave.
+SqlParserListener.prototype.exitStartSlave = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#stopSlave.
+SqlParserListener.prototype.enterStopSlave = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#stopSlave.
+SqlParserListener.prototype.exitStopSlave = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#startGroupReplication.
+SqlParserListener.prototype.enterStartGroupReplication = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#startGroupReplication.
+SqlParserListener.prototype.exitStartGroupReplication = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#stopGroupReplication.
+SqlParserListener.prototype.enterStopGroupReplication = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#stopGroupReplication.
+SqlParserListener.prototype.exitStopGroupReplication = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#masterStringOption.
+SqlParserListener.prototype.enterMasterStringOption = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#masterStringOption.
+SqlParserListener.prototype.exitMasterStringOption = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#masterDecimalOption.
+SqlParserListener.prototype.enterMasterDecimalOption = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#masterDecimalOption.
+SqlParserListener.prototype.exitMasterDecimalOption = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#masterBoolOption.
+SqlParserListener.prototype.enterMasterBoolOption = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#masterBoolOption.
+SqlParserListener.prototype.exitMasterBoolOption = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#masterRealOption.
+SqlParserListener.prototype.enterMasterRealOption = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#masterRealOption.
+SqlParserListener.prototype.exitMasterRealOption = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#masterUidListOption.
+SqlParserListener.prototype.enterMasterUidListOption = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#masterUidListOption.
+SqlParserListener.prototype.exitMasterUidListOption = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#stringMasterOption.
+SqlParserListener.prototype.enterStringMasterOption = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#stringMasterOption.
+SqlParserListener.prototype.exitStringMasterOption = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#decimalMasterOption.
+SqlParserListener.prototype.enterDecimalMasterOption = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#decimalMasterOption.
+SqlParserListener.prototype.exitDecimalMasterOption = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#boolMasterOption.
+SqlParserListener.prototype.enterBoolMasterOption = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#boolMasterOption.
+SqlParserListener.prototype.exitBoolMasterOption = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#channelOption.
+SqlParserListener.prototype.enterChannelOption = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#channelOption.
+SqlParserListener.prototype.exitChannelOption = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#doDbReplication.
+SqlParserListener.prototype.enterDoDbReplication = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#doDbReplication.
+SqlParserListener.prototype.exitDoDbReplication = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#ignoreDbReplication.
+SqlParserListener.prototype.enterIgnoreDbReplication = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#ignoreDbReplication.
+SqlParserListener.prototype.exitIgnoreDbReplication = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#doTableReplication.
+SqlParserListener.prototype.enterDoTableReplication = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#doTableReplication.
+SqlParserListener.prototype.exitDoTableReplication = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#ignoreTableReplication.
+SqlParserListener.prototype.enterIgnoreTableReplication = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#ignoreTableReplication.
+SqlParserListener.prototype.exitIgnoreTableReplication = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#wildDoTableReplication.
+SqlParserListener.prototype.enterWildDoTableReplication = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#wildDoTableReplication.
+SqlParserListener.prototype.exitWildDoTableReplication = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#wildIgnoreTableReplication.
+SqlParserListener.prototype.enterWildIgnoreTableReplication = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#wildIgnoreTableReplication.
+SqlParserListener.prototype.exitWildIgnoreTableReplication = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#rewriteDbReplication.
+SqlParserListener.prototype.enterRewriteDbReplication = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#rewriteDbReplication.
+SqlParserListener.prototype.exitRewriteDbReplication = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#tablePair.
+SqlParserListener.prototype.enterTablePair = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#tablePair.
+SqlParserListener.prototype.exitTablePair = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#threadType.
+SqlParserListener.prototype.enterThreadType = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#threadType.
+SqlParserListener.prototype.exitThreadType = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#gtidsUntilOption.
+SqlParserListener.prototype.enterGtidsUntilOption = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#gtidsUntilOption.
+SqlParserListener.prototype.exitGtidsUntilOption = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#masterLogUntilOption.
+SqlParserListener.prototype.enterMasterLogUntilOption = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#masterLogUntilOption.
+SqlParserListener.prototype.exitMasterLogUntilOption = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#relayLogUntilOption.
+SqlParserListener.prototype.enterRelayLogUntilOption = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#relayLogUntilOption.
+SqlParserListener.prototype.exitRelayLogUntilOption = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#sqlGapsUntilOption.
+SqlParserListener.prototype.enterSqlGapsUntilOption = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#sqlGapsUntilOption.
+SqlParserListener.prototype.exitSqlGapsUntilOption = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#userConnectionOption.
+SqlParserListener.prototype.enterUserConnectionOption = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#userConnectionOption.
+SqlParserListener.prototype.exitUserConnectionOption = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#passwordConnectionOption.
+SqlParserListener.prototype.enterPasswordConnectionOption = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#passwordConnectionOption.
+SqlParserListener.prototype.exitPasswordConnectionOption = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#defaultAuthConnectionOption.
+SqlParserListener.prototype.enterDefaultAuthConnectionOption = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#defaultAuthConnectionOption.
+SqlParserListener.prototype.exitDefaultAuthConnectionOption = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#pluginDirConnectionOption.
+SqlParserListener.prototype.enterPluginDirConnectionOption = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#pluginDirConnectionOption.
+SqlParserListener.prototype.exitPluginDirConnectionOption = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#gtuidSet.
+SqlParserListener.prototype.enterGtuidSet = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#gtuidSet.
+SqlParserListener.prototype.exitGtuidSet = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#xaStartTransaction.
+SqlParserListener.prototype.enterXaStartTransaction = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#xaStartTransaction.
+SqlParserListener.prototype.exitXaStartTransaction = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#xaEndTransaction.
+SqlParserListener.prototype.enterXaEndTransaction = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#xaEndTransaction.
+SqlParserListener.prototype.exitXaEndTransaction = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#xaPrepareStatement.
+SqlParserListener.prototype.enterXaPrepareStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#xaPrepareStatement.
+SqlParserListener.prototype.exitXaPrepareStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#xaCommitWork.
+SqlParserListener.prototype.enterXaCommitWork = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#xaCommitWork.
+SqlParserListener.prototype.exitXaCommitWork = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#xaRollbackWork.
+SqlParserListener.prototype.enterXaRollbackWork = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#xaRollbackWork.
+SqlParserListener.prototype.exitXaRollbackWork = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#xaRecoverWork.
+SqlParserListener.prototype.enterXaRecoverWork = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#xaRecoverWork.
+SqlParserListener.prototype.exitXaRecoverWork = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#prepareStatement.
+SqlParserListener.prototype.enterPrepareStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#prepareStatement.
+SqlParserListener.prototype.exitPrepareStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#executeStatement.
+SqlParserListener.prototype.enterExecuteStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#executeStatement.
+SqlParserListener.prototype.exitExecuteStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#deallocatePrepare.
+SqlParserListener.prototype.enterDeallocatePrepare = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#deallocatePrepare.
+SqlParserListener.prototype.exitDeallocatePrepare = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#routineBody.
+SqlParserListener.prototype.enterRoutineBody = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#routineBody.
+SqlParserListener.prototype.exitRoutineBody = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#blockStatement.
+SqlParserListener.prototype.enterBlockStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#blockStatement.
+SqlParserListener.prototype.exitBlockStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#caseStatement.
+SqlParserListener.prototype.enterCaseStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#caseStatement.
+SqlParserListener.prototype.exitCaseStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#ifStatement.
+SqlParserListener.prototype.enterIfStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#ifStatement.
+SqlParserListener.prototype.exitIfStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#iterateStatement.
+SqlParserListener.prototype.enterIterateStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#iterateStatement.
+SqlParserListener.prototype.exitIterateStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#leaveStatement.
+SqlParserListener.prototype.enterLeaveStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#leaveStatement.
+SqlParserListener.prototype.exitLeaveStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#loopStatement.
+SqlParserListener.prototype.enterLoopStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#loopStatement.
+SqlParserListener.prototype.exitLoopStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#repeatStatement.
+SqlParserListener.prototype.enterRepeatStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#repeatStatement.
+SqlParserListener.prototype.exitRepeatStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#returnStatement.
+SqlParserListener.prototype.enterReturnStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#returnStatement.
+SqlParserListener.prototype.exitReturnStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#whileStatement.
+SqlParserListener.prototype.enterWhileStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#whileStatement.
+SqlParserListener.prototype.exitWhileStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#CloseCursor.
+SqlParserListener.prototype.enterCloseCursor = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#CloseCursor.
+SqlParserListener.prototype.exitCloseCursor = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#FetchCursor.
+SqlParserListener.prototype.enterFetchCursor = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#FetchCursor.
+SqlParserListener.prototype.exitFetchCursor = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#OpenCursor.
+SqlParserListener.prototype.enterOpenCursor = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#OpenCursor.
+SqlParserListener.prototype.exitOpenCursor = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#declareVariable.
+SqlParserListener.prototype.enterDeclareVariable = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#declareVariable.
+SqlParserListener.prototype.exitDeclareVariable = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#declareCondition.
+SqlParserListener.prototype.enterDeclareCondition = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#declareCondition.
+SqlParserListener.prototype.exitDeclareCondition = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#declareCursor.
+SqlParserListener.prototype.enterDeclareCursor = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#declareCursor.
+SqlParserListener.prototype.exitDeclareCursor = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#declareHandler.
+SqlParserListener.prototype.enterDeclareHandler = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#declareHandler.
+SqlParserListener.prototype.exitDeclareHandler = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#handlerConditionCode.
+SqlParserListener.prototype.enterHandlerConditionCode = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#handlerConditionCode.
+SqlParserListener.prototype.exitHandlerConditionCode = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#handlerConditionState.
+SqlParserListener.prototype.enterHandlerConditionState = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#handlerConditionState.
+SqlParserListener.prototype.exitHandlerConditionState = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#handlerConditionName.
+SqlParserListener.prototype.enterHandlerConditionName = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#handlerConditionName.
+SqlParserListener.prototype.exitHandlerConditionName = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#handlerConditionWarning.
+SqlParserListener.prototype.enterHandlerConditionWarning = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#handlerConditionWarning.
+SqlParserListener.prototype.exitHandlerConditionWarning = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#handlerConditionNotfound.
+SqlParserListener.prototype.enterHandlerConditionNotfound = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#handlerConditionNotfound.
+SqlParserListener.prototype.exitHandlerConditionNotfound = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#handlerConditionException.
+SqlParserListener.prototype.enterHandlerConditionException = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#handlerConditionException.
+SqlParserListener.prototype.exitHandlerConditionException = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#procedureSqlStatement.
+SqlParserListener.prototype.enterProcedureSqlStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#procedureSqlStatement.
+SqlParserListener.prototype.exitProcedureSqlStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#caseAlternative.
+SqlParserListener.prototype.enterCaseAlternative = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#caseAlternative.
+SqlParserListener.prototype.exitCaseAlternative = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#elifAlternative.
+SqlParserListener.prototype.enterElifAlternative = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#elifAlternative.
+SqlParserListener.prototype.exitElifAlternative = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterUserMysqlV56.
+SqlParserListener.prototype.enterAlterUserMysqlV56 = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterUserMysqlV56.
+SqlParserListener.prototype.exitAlterUserMysqlV56 = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#alterUserMysqlV57.
+SqlParserListener.prototype.enterAlterUserMysqlV57 = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#alterUserMysqlV57.
+SqlParserListener.prototype.exitAlterUserMysqlV57 = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#createUserMysqlV56.
+SqlParserListener.prototype.enterCreateUserMysqlV56 = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#createUserMysqlV56.
+SqlParserListener.prototype.exitCreateUserMysqlV56 = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#createUserMysqlV57.
+SqlParserListener.prototype.enterCreateUserMysqlV57 = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#createUserMysqlV57.
+SqlParserListener.prototype.exitCreateUserMysqlV57 = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#dropUser.
+SqlParserListener.prototype.enterDropUser = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#dropUser.
+SqlParserListener.prototype.exitDropUser = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#grantStatement.
+SqlParserListener.prototype.enterGrantStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#grantStatement.
+SqlParserListener.prototype.exitGrantStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#grantProxy.
+SqlParserListener.prototype.enterGrantProxy = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#grantProxy.
+SqlParserListener.prototype.exitGrantProxy = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#renameUser.
+SqlParserListener.prototype.enterRenameUser = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#renameUser.
+SqlParserListener.prototype.exitRenameUser = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#detailRevoke.
+SqlParserListener.prototype.enterDetailRevoke = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#detailRevoke.
+SqlParserListener.prototype.exitDetailRevoke = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#shortRevoke.
+SqlParserListener.prototype.enterShortRevoke = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#shortRevoke.
+SqlParserListener.prototype.exitShortRevoke = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#revokeProxy.
+SqlParserListener.prototype.enterRevokeProxy = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#revokeProxy.
+SqlParserListener.prototype.exitRevokeProxy = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#setPasswordStatement.
+SqlParserListener.prototype.enterSetPasswordStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#setPasswordStatement.
+SqlParserListener.prototype.exitSetPasswordStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#userSpecification.
+SqlParserListener.prototype.enterUserSpecification = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#userSpecification.
+SqlParserListener.prototype.exitUserSpecification = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#passwordAuthOption.
+SqlParserListener.prototype.enterPasswordAuthOption = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#passwordAuthOption.
+SqlParserListener.prototype.exitPasswordAuthOption = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#stringAuthOption.
+SqlParserListener.prototype.enterStringAuthOption = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#stringAuthOption.
+SqlParserListener.prototype.exitStringAuthOption = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#hashAuthOption.
+SqlParserListener.prototype.enterHashAuthOption = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#hashAuthOption.
+SqlParserListener.prototype.exitHashAuthOption = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#simpleAuthOption.
+SqlParserListener.prototype.enterSimpleAuthOption = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#simpleAuthOption.
+SqlParserListener.prototype.exitSimpleAuthOption = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#tlsOption.
+SqlParserListener.prototype.enterTlsOption = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#tlsOption.
+SqlParserListener.prototype.exitTlsOption = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#userResourceOption.
+SqlParserListener.prototype.enterUserResourceOption = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#userResourceOption.
+SqlParserListener.prototype.exitUserResourceOption = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#userPasswordOption.
+SqlParserListener.prototype.enterUserPasswordOption = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#userPasswordOption.
+SqlParserListener.prototype.exitUserPasswordOption = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#userLockOption.
+SqlParserListener.prototype.enterUserLockOption = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#userLockOption.
+SqlParserListener.prototype.exitUserLockOption = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#privelegeClause.
+SqlParserListener.prototype.enterPrivelegeClause = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#privelegeClause.
+SqlParserListener.prototype.exitPrivelegeClause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#privilege.
+SqlParserListener.prototype.enterPrivilege = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#privilege.
+SqlParserListener.prototype.exitPrivilege = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#currentSchemaPriviLevel.
+SqlParserListener.prototype.enterCurrentSchemaPriviLevel = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#currentSchemaPriviLevel.
+SqlParserListener.prototype.exitCurrentSchemaPriviLevel = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#globalPrivLevel.
+SqlParserListener.prototype.enterGlobalPrivLevel = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#globalPrivLevel.
+SqlParserListener.prototype.exitGlobalPrivLevel = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#definiteSchemaPrivLevel.
+SqlParserListener.prototype.enterDefiniteSchemaPrivLevel = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#definiteSchemaPrivLevel.
+SqlParserListener.prototype.exitDefiniteSchemaPrivLevel = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#definiteFullTablePrivLevel.
+SqlParserListener.prototype.enterDefiniteFullTablePrivLevel = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#definiteFullTablePrivLevel.
+SqlParserListener.prototype.exitDefiniteFullTablePrivLevel = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#definiteFullTablePrivLevel2.
+SqlParserListener.prototype.enterDefiniteFullTablePrivLevel2 = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#definiteFullTablePrivLevel2.
+SqlParserListener.prototype.exitDefiniteFullTablePrivLevel2 = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#definiteTablePrivLevel.
+SqlParserListener.prototype.enterDefiniteTablePrivLevel = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#definiteTablePrivLevel.
+SqlParserListener.prototype.exitDefiniteTablePrivLevel = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#renameUserClause.
+SqlParserListener.prototype.enterRenameUserClause = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#renameUserClause.
+SqlParserListener.prototype.exitRenameUserClause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#analyzeTable.
+SqlParserListener.prototype.enterAnalyzeTable = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#analyzeTable.
+SqlParserListener.prototype.exitAnalyzeTable = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#checkTable.
+SqlParserListener.prototype.enterCheckTable = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#checkTable.
+SqlParserListener.prototype.exitCheckTable = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#checksumTable.
+SqlParserListener.prototype.enterChecksumTable = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#checksumTable.
+SqlParserListener.prototype.exitChecksumTable = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#optimizeTable.
+SqlParserListener.prototype.enterOptimizeTable = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#optimizeTable.
+SqlParserListener.prototype.exitOptimizeTable = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#repairTable.
+SqlParserListener.prototype.enterRepairTable = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#repairTable.
+SqlParserListener.prototype.exitRepairTable = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#checkTableOption.
+SqlParserListener.prototype.enterCheckTableOption = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#checkTableOption.
+SqlParserListener.prototype.exitCheckTableOption = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#createUdfunction.
+SqlParserListener.prototype.enterCreateUdfunction = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#createUdfunction.
+SqlParserListener.prototype.exitCreateUdfunction = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#installPlugin.
+SqlParserListener.prototype.enterInstallPlugin = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#installPlugin.
+SqlParserListener.prototype.exitInstallPlugin = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#uninstallPlugin.
+SqlParserListener.prototype.enterUninstallPlugin = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#uninstallPlugin.
+SqlParserListener.prototype.exitUninstallPlugin = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#setVariable.
+SqlParserListener.prototype.enterSetVariable = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#setVariable.
+SqlParserListener.prototype.exitSetVariable = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#setCharset.
+SqlParserListener.prototype.enterSetCharset = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#setCharset.
+SqlParserListener.prototype.exitSetCharset = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#setNames.
+SqlParserListener.prototype.enterSetNames = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#setNames.
+SqlParserListener.prototype.exitSetNames = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#setPassword.
+SqlParserListener.prototype.enterSetPassword = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#setPassword.
+SqlParserListener.prototype.exitSetPassword = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#setTransaction.
+SqlParserListener.prototype.enterSetTransaction = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#setTransaction.
+SqlParserListener.prototype.exitSetTransaction = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#setAutocommit.
+SqlParserListener.prototype.enterSetAutocommit = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#setAutocommit.
+SqlParserListener.prototype.exitSetAutocommit = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#setNewValueInsideTrigger.
+SqlParserListener.prototype.enterSetNewValueInsideTrigger = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#setNewValueInsideTrigger.
+SqlParserListener.prototype.exitSetNewValueInsideTrigger = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#showMasterLogs.
+SqlParserListener.prototype.enterShowMasterLogs = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#showMasterLogs.
+SqlParserListener.prototype.exitShowMasterLogs = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#showLogEvents.
+SqlParserListener.prototype.enterShowLogEvents = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#showLogEvents.
+SqlParserListener.prototype.exitShowLogEvents = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#showObjectFilter.
+SqlParserListener.prototype.enterShowObjectFilter = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#showObjectFilter.
+SqlParserListener.prototype.exitShowObjectFilter = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#showColumns.
+SqlParserListener.prototype.enterShowColumns = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#showColumns.
+SqlParserListener.prototype.exitShowColumns = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#showCreateDb.
+SqlParserListener.prototype.enterShowCreateDb = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#showCreateDb.
+SqlParserListener.prototype.exitShowCreateDb = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#showCreateFullIdObject.
+SqlParserListener.prototype.enterShowCreateFullIdObject = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#showCreateFullIdObject.
+SqlParserListener.prototype.exitShowCreateFullIdObject = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#showCreateUser.
+SqlParserListener.prototype.enterShowCreateUser = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#showCreateUser.
+SqlParserListener.prototype.exitShowCreateUser = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#showEngine.
+SqlParserListener.prototype.enterShowEngine = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#showEngine.
+SqlParserListener.prototype.exitShowEngine = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#showGlobalInfo.
+SqlParserListener.prototype.enterShowGlobalInfo = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#showGlobalInfo.
+SqlParserListener.prototype.exitShowGlobalInfo = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#showErrors.
+SqlParserListener.prototype.enterShowErrors = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#showErrors.
+SqlParserListener.prototype.exitShowErrors = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#showCountErrors.
+SqlParserListener.prototype.enterShowCountErrors = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#showCountErrors.
+SqlParserListener.prototype.exitShowCountErrors = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#showSchemaFilter.
+SqlParserListener.prototype.enterShowSchemaFilter = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#showSchemaFilter.
+SqlParserListener.prototype.exitShowSchemaFilter = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#showRoutine.
+SqlParserListener.prototype.enterShowRoutine = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#showRoutine.
+SqlParserListener.prototype.exitShowRoutine = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#showGrants.
+SqlParserListener.prototype.enterShowGrants = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#showGrants.
+SqlParserListener.prototype.exitShowGrants = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#showIndexes.
+SqlParserListener.prototype.enterShowIndexes = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#showIndexes.
+SqlParserListener.prototype.exitShowIndexes = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#showOpenTables.
+SqlParserListener.prototype.enterShowOpenTables = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#showOpenTables.
+SqlParserListener.prototype.exitShowOpenTables = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#showProfile.
+SqlParserListener.prototype.enterShowProfile = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#showProfile.
+SqlParserListener.prototype.exitShowProfile = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#showSlaveStatus.
+SqlParserListener.prototype.enterShowSlaveStatus = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#showSlaveStatus.
+SqlParserListener.prototype.exitShowSlaveStatus = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#variableClause.
+SqlParserListener.prototype.enterVariableClause = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#variableClause.
+SqlParserListener.prototype.exitVariableClause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#showCommonEntity.
+SqlParserListener.prototype.enterShowCommonEntity = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#showCommonEntity.
+SqlParserListener.prototype.exitShowCommonEntity = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#showFilter.
+SqlParserListener.prototype.enterShowFilter = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#showFilter.
+SqlParserListener.prototype.exitShowFilter = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#showGlobalInfoClause.
+SqlParserListener.prototype.enterShowGlobalInfoClause = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#showGlobalInfoClause.
+SqlParserListener.prototype.exitShowGlobalInfoClause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#showSchemaEntity.
+SqlParserListener.prototype.enterShowSchemaEntity = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#showSchemaEntity.
+SqlParserListener.prototype.exitShowSchemaEntity = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#showProfileType.
+SqlParserListener.prototype.enterShowProfileType = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#showProfileType.
+SqlParserListener.prototype.exitShowProfileType = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#binlogStatement.
+SqlParserListener.prototype.enterBinlogStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#binlogStatement.
+SqlParserListener.prototype.exitBinlogStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#cacheIndexStatement.
+SqlParserListener.prototype.enterCacheIndexStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#cacheIndexStatement.
+SqlParserListener.prototype.exitCacheIndexStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#flushStatement.
+SqlParserListener.prototype.enterFlushStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#flushStatement.
+SqlParserListener.prototype.exitFlushStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#killStatement.
+SqlParserListener.prototype.enterKillStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#killStatement.
+SqlParserListener.prototype.exitKillStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#loadIndexIntoCache.
+SqlParserListener.prototype.enterLoadIndexIntoCache = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#loadIndexIntoCache.
+SqlParserListener.prototype.exitLoadIndexIntoCache = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#resetStatement.
+SqlParserListener.prototype.enterResetStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#resetStatement.
+SqlParserListener.prototype.exitResetStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#shutdownStatement.
+SqlParserListener.prototype.enterShutdownStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#shutdownStatement.
+SqlParserListener.prototype.exitShutdownStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#tableIndexes.
+SqlParserListener.prototype.enterTableIndexes = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#tableIndexes.
+SqlParserListener.prototype.exitTableIndexes = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#simpleFlushOption.
+SqlParserListener.prototype.enterSimpleFlushOption = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#simpleFlushOption.
+SqlParserListener.prototype.exitSimpleFlushOption = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#channelFlushOption.
+SqlParserListener.prototype.enterChannelFlushOption = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#channelFlushOption.
+SqlParserListener.prototype.exitChannelFlushOption = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#tableFlushOption.
+SqlParserListener.prototype.enterTableFlushOption = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#tableFlushOption.
+SqlParserListener.prototype.exitTableFlushOption = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#flushTableOption.
+SqlParserListener.prototype.enterFlushTableOption = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#flushTableOption.
+SqlParserListener.prototype.exitFlushTableOption = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#loadedTableIndexes.
+SqlParserListener.prototype.enterLoadedTableIndexes = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#loadedTableIndexes.
+SqlParserListener.prototype.exitLoadedTableIndexes = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#simpleDescribeStatement.
+SqlParserListener.prototype.enterSimpleDescribeStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#simpleDescribeStatement.
+SqlParserListener.prototype.exitSimpleDescribeStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#fullDescribeStatement.
+SqlParserListener.prototype.enterFullDescribeStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#fullDescribeStatement.
+SqlParserListener.prototype.exitFullDescribeStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#helpStatement.
+SqlParserListener.prototype.enterHelpStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#helpStatement.
+SqlParserListener.prototype.exitHelpStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#useStatement.
+SqlParserListener.prototype.enterUseStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#useStatement.
+SqlParserListener.prototype.exitUseStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#signalStatement.
+SqlParserListener.prototype.enterSignalStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#signalStatement.
+SqlParserListener.prototype.exitSignalStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#resignalStatement.
+SqlParserListener.prototype.enterResignalStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#resignalStatement.
+SqlParserListener.prototype.exitResignalStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#signalConditionInformation.
+SqlParserListener.prototype.enterSignalConditionInformation = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#signalConditionInformation.
+SqlParserListener.prototype.exitSignalConditionInformation = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#diagnosticsStatement.
+SqlParserListener.prototype.enterDiagnosticsStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#diagnosticsStatement.
+SqlParserListener.prototype.exitDiagnosticsStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#diagnosticsConditionInformationName.
+SqlParserListener.prototype.enterDiagnosticsConditionInformationName = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#diagnosticsConditionInformationName.
+SqlParserListener.prototype.exitDiagnosticsConditionInformationName = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#describeStatements.
+SqlParserListener.prototype.enterDescribeStatements = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#describeStatements.
+SqlParserListener.prototype.exitDescribeStatements = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#describeConnection.
+SqlParserListener.prototype.enterDescribeConnection = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#describeConnection.
+SqlParserListener.prototype.exitDescribeConnection = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#fullId.
+SqlParserListener.prototype.enterFullId = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#fullId.
+SqlParserListener.prototype.exitFullId = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#tableName.
+SqlParserListener.prototype.enterTableName = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#tableName.
+SqlParserListener.prototype.exitTableName = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#fullColumnName.
+SqlParserListener.prototype.enterFullColumnName = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#fullColumnName.
+SqlParserListener.prototype.exitFullColumnName = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#indexColumnName.
+SqlParserListener.prototype.enterIndexColumnName = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#indexColumnName.
+SqlParserListener.prototype.exitIndexColumnName = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#userName.
+SqlParserListener.prototype.enterUserName = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#userName.
+SqlParserListener.prototype.exitUserName = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#mysqlVariable.
+SqlParserListener.prototype.enterMysqlVariable = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#mysqlVariable.
+SqlParserListener.prototype.exitMysqlVariable = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#charsetName.
+SqlParserListener.prototype.enterCharsetName = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#charsetName.
+SqlParserListener.prototype.exitCharsetName = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#collationName.
+SqlParserListener.prototype.enterCollationName = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#collationName.
+SqlParserListener.prototype.exitCollationName = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#engineName.
+SqlParserListener.prototype.enterEngineName = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#engineName.
+SqlParserListener.prototype.exitEngineName = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#uuidSet.
+SqlParserListener.prototype.enterUuidSet = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#uuidSet.
+SqlParserListener.prototype.exitUuidSet = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#xid.
+SqlParserListener.prototype.enterXid = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#xid.
+SqlParserListener.prototype.exitXid = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#xuidStringId.
+SqlParserListener.prototype.enterXuidStringId = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#xuidStringId.
+SqlParserListener.prototype.exitXuidStringId = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#authPlugin.
+SqlParserListener.prototype.enterAuthPlugin = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#authPlugin.
+SqlParserListener.prototype.exitAuthPlugin = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#uid.
+SqlParserListener.prototype.enterUid = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#uid.
+SqlParserListener.prototype.exitUid = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#simpleId.
+SqlParserListener.prototype.enterSimpleId = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#simpleId.
+SqlParserListener.prototype.exitSimpleId = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#dottedId.
+SqlParserListener.prototype.enterDottedId = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#dottedId.
+SqlParserListener.prototype.exitDottedId = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#decimalLiteral.
+SqlParserListener.prototype.enterDecimalLiteral = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#decimalLiteral.
+SqlParserListener.prototype.exitDecimalLiteral = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#fileSizeLiteral.
+SqlParserListener.prototype.enterFileSizeLiteral = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#fileSizeLiteral.
+SqlParserListener.prototype.exitFileSizeLiteral = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#stringLiteral.
+SqlParserListener.prototype.enterStringLiteral = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#stringLiteral.
+SqlParserListener.prototype.exitStringLiteral = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#booleanLiteral.
+SqlParserListener.prototype.enterBooleanLiteral = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#booleanLiteral.
+SqlParserListener.prototype.exitBooleanLiteral = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#hexadecimalLiteral.
+SqlParserListener.prototype.enterHexadecimalLiteral = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#hexadecimalLiteral.
+SqlParserListener.prototype.exitHexadecimalLiteral = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#nullNotnull.
+SqlParserListener.prototype.enterNullNotnull = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#nullNotnull.
+SqlParserListener.prototype.exitNullNotnull = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#constant.
+SqlParserListener.prototype.enterConstant = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#constant.
+SqlParserListener.prototype.exitConstant = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#stringDataType.
+SqlParserListener.prototype.enterStringDataType = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#stringDataType.
+SqlParserListener.prototype.exitStringDataType = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#nationalStringDataType.
+SqlParserListener.prototype.enterNationalStringDataType = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#nationalStringDataType.
+SqlParserListener.prototype.exitNationalStringDataType = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#nationalVaryingStringDataType.
+SqlParserListener.prototype.enterNationalVaryingStringDataType = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#nationalVaryingStringDataType.
+SqlParserListener.prototype.exitNationalVaryingStringDataType = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#dimensionDataType.
+SqlParserListener.prototype.enterDimensionDataType = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#dimensionDataType.
+SqlParserListener.prototype.exitDimensionDataType = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#simpleDataType.
+SqlParserListener.prototype.enterSimpleDataType = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#simpleDataType.
+SqlParserListener.prototype.exitSimpleDataType = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#collectionDataType.
+SqlParserListener.prototype.enterCollectionDataType = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#collectionDataType.
+SqlParserListener.prototype.exitCollectionDataType = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#spatialDataType.
+SqlParserListener.prototype.enterSpatialDataType = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#spatialDataType.
+SqlParserListener.prototype.exitSpatialDataType = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#longVarcharDataType.
+SqlParserListener.prototype.enterLongVarcharDataType = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#longVarcharDataType.
+SqlParserListener.prototype.exitLongVarcharDataType = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#longVarbinaryDataType.
+SqlParserListener.prototype.enterLongVarbinaryDataType = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#longVarbinaryDataType.
+SqlParserListener.prototype.exitLongVarbinaryDataType = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#collectionOptions.
+SqlParserListener.prototype.enterCollectionOptions = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#collectionOptions.
+SqlParserListener.prototype.exitCollectionOptions = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#convertedDataType.
+SqlParserListener.prototype.enterConvertedDataType = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#convertedDataType.
+SqlParserListener.prototype.exitConvertedDataType = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#lengthOneDimension.
+SqlParserListener.prototype.enterLengthOneDimension = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#lengthOneDimension.
+SqlParserListener.prototype.exitLengthOneDimension = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#lengthTwoDimension.
+SqlParserListener.prototype.enterLengthTwoDimension = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#lengthTwoDimension.
+SqlParserListener.prototype.exitLengthTwoDimension = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#lengthTwoOptionalDimension.
+SqlParserListener.prototype.enterLengthTwoOptionalDimension = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#lengthTwoOptionalDimension.
+SqlParserListener.prototype.exitLengthTwoOptionalDimension = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#uidList.
+SqlParserListener.prototype.enterUidList = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#uidList.
+SqlParserListener.prototype.exitUidList = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#tables.
+SqlParserListener.prototype.enterTables = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#tables.
+SqlParserListener.prototype.exitTables = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#indexColumnNames.
+SqlParserListener.prototype.enterIndexColumnNames = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#indexColumnNames.
+SqlParserListener.prototype.exitIndexColumnNames = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#expressions.
+SqlParserListener.prototype.enterExpressions = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#expressions.
+SqlParserListener.prototype.exitExpressions = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#expressionsWithDefaults.
+SqlParserListener.prototype.enterExpressionsWithDefaults = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#expressionsWithDefaults.
+SqlParserListener.prototype.exitExpressionsWithDefaults = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#constants.
+SqlParserListener.prototype.enterConstants = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#constants.
+SqlParserListener.prototype.exitConstants = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#simpleStrings.
+SqlParserListener.prototype.enterSimpleStrings = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#simpleStrings.
+SqlParserListener.prototype.exitSimpleStrings = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#userVariables.
+SqlParserListener.prototype.enterUserVariables = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#userVariables.
+SqlParserListener.prototype.exitUserVariables = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#defaultValue.
+SqlParserListener.prototype.enterDefaultValue = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#defaultValue.
+SqlParserListener.prototype.exitDefaultValue = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#currentTimestamp.
+SqlParserListener.prototype.enterCurrentTimestamp = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#currentTimestamp.
+SqlParserListener.prototype.exitCurrentTimestamp = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#expressionOrDefault.
+SqlParserListener.prototype.enterExpressionOrDefault = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#expressionOrDefault.
+SqlParserListener.prototype.exitExpressionOrDefault = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#ifExists.
+SqlParserListener.prototype.enterIfExists = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#ifExists.
+SqlParserListener.prototype.exitIfExists = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#ifNotExists.
+SqlParserListener.prototype.enterIfNotExists = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#ifNotExists.
+SqlParserListener.prototype.exitIfNotExists = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#specificFunctionCall.
+SqlParserListener.prototype.enterSpecificFunctionCall = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#specificFunctionCall.
+SqlParserListener.prototype.exitSpecificFunctionCall = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#aggregateFunctionCall.
+SqlParserListener.prototype.enterAggregateFunctionCall = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#aggregateFunctionCall.
+SqlParserListener.prototype.exitAggregateFunctionCall = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#scalarFunctionCall.
+SqlParserListener.prototype.enterScalarFunctionCall = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#scalarFunctionCall.
+SqlParserListener.prototype.exitScalarFunctionCall = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#udfFunctionCall.
+SqlParserListener.prototype.enterUdfFunctionCall = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#udfFunctionCall.
+SqlParserListener.prototype.exitUdfFunctionCall = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#passwordFunctionCall.
+SqlParserListener.prototype.enterPasswordFunctionCall = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#passwordFunctionCall.
+SqlParserListener.prototype.exitPasswordFunctionCall = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#simpleFunctionCall.
+SqlParserListener.prototype.enterSimpleFunctionCall = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#simpleFunctionCall.
+SqlParserListener.prototype.exitSimpleFunctionCall = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#dataTypeFunctionCall.
+SqlParserListener.prototype.enterDataTypeFunctionCall = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#dataTypeFunctionCall.
+SqlParserListener.prototype.exitDataTypeFunctionCall = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#valuesFunctionCall.
+SqlParserListener.prototype.enterValuesFunctionCall = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#valuesFunctionCall.
+SqlParserListener.prototype.exitValuesFunctionCall = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#caseFunctionCall.
+SqlParserListener.prototype.enterCaseFunctionCall = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#caseFunctionCall.
+SqlParserListener.prototype.exitCaseFunctionCall = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#charFunctionCall.
+SqlParserListener.prototype.enterCharFunctionCall = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#charFunctionCall.
+SqlParserListener.prototype.exitCharFunctionCall = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#positionFunctionCall.
+SqlParserListener.prototype.enterPositionFunctionCall = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#positionFunctionCall.
+SqlParserListener.prototype.exitPositionFunctionCall = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#substrFunctionCall.
+SqlParserListener.prototype.enterSubstrFunctionCall = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#substrFunctionCall.
+SqlParserListener.prototype.exitSubstrFunctionCall = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#trimFunctionCall.
+SqlParserListener.prototype.enterTrimFunctionCall = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#trimFunctionCall.
+SqlParserListener.prototype.exitTrimFunctionCall = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#weightFunctionCall.
+SqlParserListener.prototype.enterWeightFunctionCall = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#weightFunctionCall.
+SqlParserListener.prototype.exitWeightFunctionCall = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#extractFunctionCall.
+SqlParserListener.prototype.enterExtractFunctionCall = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#extractFunctionCall.
+SqlParserListener.prototype.exitExtractFunctionCall = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#getFormatFunctionCall.
+SqlParserListener.prototype.enterGetFormatFunctionCall = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#getFormatFunctionCall.
+SqlParserListener.prototype.exitGetFormatFunctionCall = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#caseFuncAlternative.
+SqlParserListener.prototype.enterCaseFuncAlternative = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#caseFuncAlternative.
+SqlParserListener.prototype.exitCaseFuncAlternative = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#levelWeightList.
+SqlParserListener.prototype.enterLevelWeightList = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#levelWeightList.
+SqlParserListener.prototype.exitLevelWeightList = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#levelWeightRange.
+SqlParserListener.prototype.enterLevelWeightRange = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#levelWeightRange.
+SqlParserListener.prototype.exitLevelWeightRange = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#levelInWeightListElement.
+SqlParserListener.prototype.enterLevelInWeightListElement = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#levelInWeightListElement.
+SqlParserListener.prototype.exitLevelInWeightListElement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#aggregateWindowedFunction.
+SqlParserListener.prototype.enterAggregateWindowedFunction = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#aggregateWindowedFunction.
+SqlParserListener.prototype.exitAggregateWindowedFunction = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#scalarFunctionName.
+SqlParserListener.prototype.enterScalarFunctionName = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#scalarFunctionName.
+SqlParserListener.prototype.exitScalarFunctionName = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#passwordFunctionClause.
+SqlParserListener.prototype.enterPasswordFunctionClause = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#passwordFunctionClause.
+SqlParserListener.prototype.exitPasswordFunctionClause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#functionArgs.
+SqlParserListener.prototype.enterFunctionArgs = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#functionArgs.
+SqlParserListener.prototype.exitFunctionArgs = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#functionArg.
+SqlParserListener.prototype.enterFunctionArg = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#functionArg.
+SqlParserListener.prototype.exitFunctionArg = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#isExpression.
+SqlParserListener.prototype.enterIsExpression = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#isExpression.
+SqlParserListener.prototype.exitIsExpression = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#notExpression.
+SqlParserListener.prototype.enterNotExpression = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#notExpression.
+SqlParserListener.prototype.exitNotExpression = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#logicalExpression.
+SqlParserListener.prototype.enterLogicalExpression = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#logicalExpression.
+SqlParserListener.prototype.exitLogicalExpression = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#predicateExpression.
+SqlParserListener.prototype.enterPredicateExpression = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#predicateExpression.
+SqlParserListener.prototype.exitPredicateExpression = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#soundsLikePredicate.
+SqlParserListener.prototype.enterSoundsLikePredicate = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#soundsLikePredicate.
+SqlParserListener.prototype.exitSoundsLikePredicate = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#expressionAtomPredicate.
+SqlParserListener.prototype.enterExpressionAtomPredicate = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#expressionAtomPredicate.
+SqlParserListener.prototype.exitExpressionAtomPredicate = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#inPredicate.
+SqlParserListener.prototype.enterInPredicate = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#inPredicate.
+SqlParserListener.prototype.exitInPredicate = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#subqueryComparasionPredicate.
+SqlParserListener.prototype.enterSubqueryComparasionPredicate = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#subqueryComparasionPredicate.
+SqlParserListener.prototype.exitSubqueryComparasionPredicate = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#betweenPredicate.
+SqlParserListener.prototype.enterBetweenPredicate = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#betweenPredicate.
+SqlParserListener.prototype.exitBetweenPredicate = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#binaryComparasionPredicate.
+SqlParserListener.prototype.enterBinaryComparasionPredicate = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#binaryComparasionPredicate.
+SqlParserListener.prototype.exitBinaryComparasionPredicate = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#isNullPredicate.
+SqlParserListener.prototype.enterIsNullPredicate = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#isNullPredicate.
+SqlParserListener.prototype.exitIsNullPredicate = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#likePredicate.
+SqlParserListener.prototype.enterLikePredicate = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#likePredicate.
+SqlParserListener.prototype.exitLikePredicate = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#regexpPredicate.
+SqlParserListener.prototype.enterRegexpPredicate = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#regexpPredicate.
+SqlParserListener.prototype.exitRegexpPredicate = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#unaryExpressionAtom.
+SqlParserListener.prototype.enterUnaryExpressionAtom = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#unaryExpressionAtom.
+SqlParserListener.prototype.exitUnaryExpressionAtom = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#collateExpressionAtom.
+SqlParserListener.prototype.enterCollateExpressionAtom = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#collateExpressionAtom.
+SqlParserListener.prototype.exitCollateExpressionAtom = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#subqueryExpessionAtom.
+SqlParserListener.prototype.enterSubqueryExpessionAtom = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#subqueryExpessionAtom.
+SqlParserListener.prototype.exitSubqueryExpessionAtom = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#mysqlVariableExpressionAtom.
+SqlParserListener.prototype.enterMysqlVariableExpressionAtom = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#mysqlVariableExpressionAtom.
+SqlParserListener.prototype.exitMysqlVariableExpressionAtom = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#nestedExpressionAtom.
+SqlParserListener.prototype.enterNestedExpressionAtom = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#nestedExpressionAtom.
+SqlParserListener.prototype.exitNestedExpressionAtom = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#nestedRowExpressionAtom.
+SqlParserListener.prototype.enterNestedRowExpressionAtom = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#nestedRowExpressionAtom.
+SqlParserListener.prototype.exitNestedRowExpressionAtom = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#mathExpressionAtom.
+SqlParserListener.prototype.enterMathExpressionAtom = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#mathExpressionAtom.
+SqlParserListener.prototype.exitMathExpressionAtom = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#intervalExpressionAtom.
+SqlParserListener.prototype.enterIntervalExpressionAtom = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#intervalExpressionAtom.
+SqlParserListener.prototype.exitIntervalExpressionAtom = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#existsExpessionAtom.
+SqlParserListener.prototype.enterExistsExpessionAtom = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#existsExpessionAtom.
+SqlParserListener.prototype.exitExistsExpessionAtom = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#constantExpressionAtom.
+SqlParserListener.prototype.enterConstantExpressionAtom = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#constantExpressionAtom.
+SqlParserListener.prototype.exitConstantExpressionAtom = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#functionCallExpressionAtom.
+SqlParserListener.prototype.enterFunctionCallExpressionAtom = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#functionCallExpressionAtom.
+SqlParserListener.prototype.exitFunctionCallExpressionAtom = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#binaryExpressionAtom.
+SqlParserListener.prototype.enterBinaryExpressionAtom = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#binaryExpressionAtom.
+SqlParserListener.prototype.exitBinaryExpressionAtom = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#fullColumnNameExpressionAtom.
+SqlParserListener.prototype.enterFullColumnNameExpressionAtom = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#fullColumnNameExpressionAtom.
+SqlParserListener.prototype.exitFullColumnNameExpressionAtom = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#bitExpressionAtom.
+SqlParserListener.prototype.enterBitExpressionAtom = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#bitExpressionAtom.
+SqlParserListener.prototype.exitBitExpressionAtom = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#unaryOperator.
+SqlParserListener.prototype.enterUnaryOperator = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#unaryOperator.
+SqlParserListener.prototype.exitUnaryOperator = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#comparisonOperator.
+SqlParserListener.prototype.enterComparisonOperator = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#comparisonOperator.
+SqlParserListener.prototype.exitComparisonOperator = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#logicalOperator.
+SqlParserListener.prototype.enterLogicalOperator = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#logicalOperator.
+SqlParserListener.prototype.exitLogicalOperator = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#bitOperator.
+SqlParserListener.prototype.enterBitOperator = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#bitOperator.
+SqlParserListener.prototype.exitBitOperator = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#mathOperator.
+SqlParserListener.prototype.enterMathOperator = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#mathOperator.
+SqlParserListener.prototype.exitMathOperator = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#charsetNameBase.
+SqlParserListener.prototype.enterCharsetNameBase = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#charsetNameBase.
+SqlParserListener.prototype.exitCharsetNameBase = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#transactionLevelBase.
+SqlParserListener.prototype.enterTransactionLevelBase = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#transactionLevelBase.
+SqlParserListener.prototype.exitTransactionLevelBase = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#privilegesBase.
+SqlParserListener.prototype.enterPrivilegesBase = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#privilegesBase.
+SqlParserListener.prototype.exitPrivilegesBase = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#intervalTypeBase.
+SqlParserListener.prototype.enterIntervalTypeBase = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#intervalTypeBase.
+SqlParserListener.prototype.exitIntervalTypeBase = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#dataTypeBase.
+SqlParserListener.prototype.enterDataTypeBase = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#dataTypeBase.
+SqlParserListener.prototype.exitDataTypeBase = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#keywordsCanBeId.
+SqlParserListener.prototype.enterKeywordsCanBeId = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#keywordsCanBeId.
+SqlParserListener.prototype.exitKeywordsCanBeId = function(ctx) {
+};
+
+
+// Enter a parse tree produced by SqlParser#functionNameBase.
+SqlParserListener.prototype.enterFunctionNameBase = function(ctx) {
+};
+
+// Exit a parse tree produced by SqlParser#functionNameBase.
+SqlParserListener.prototype.exitFunctionNameBase = function(ctx) {
+};
+
+
+
+exports.SqlParserListener = SqlParserListener;
\ No newline at end of file
diff --git a/src/lib/generic/SqlParserVisitor.js b/src/lib/generic/SqlParserVisitor.js
new file mode 100644
index 0000000..6c03f95
--- /dev/null
+++ b/src/lib/generic/SqlParserVisitor.js
@@ -0,0 +1,3292 @@
+// Generated from /Users/ziv/Workspace/dt-sql-parser/src/grammar/generic/SqlParser.g4 by ANTLR 4.8
+// jshint ignore: start
+var antlr4 = require('antlr4/index');
+
+// This class defines a complete generic visitor for a parse tree produced by SqlParser.
+
+function SqlParserVisitor() {
+ antlr4.tree.ParseTreeVisitor.call(this);
+ return this;
+}
+
+SqlParserVisitor.prototype = Object.create(antlr4.tree.ParseTreeVisitor.prototype);
+SqlParserVisitor.prototype.constructor = SqlParserVisitor;
+
+// Visit a parse tree produced by SqlParser#program.
+SqlParserVisitor.prototype.visitProgram = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#statement.
+SqlParserVisitor.prototype.visitStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#sqlStatements.
+SqlParserVisitor.prototype.visitSqlStatements = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#sqlStatement.
+SqlParserVisitor.prototype.visitSqlStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#emptyStatement.
+SqlParserVisitor.prototype.visitEmptyStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#ddlStatement.
+SqlParserVisitor.prototype.visitDdlStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#dmlStatement.
+SqlParserVisitor.prototype.visitDmlStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#transactionStatement.
+SqlParserVisitor.prototype.visitTransactionStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#replicationStatement.
+SqlParserVisitor.prototype.visitReplicationStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#preparedStatement.
+SqlParserVisitor.prototype.visitPreparedStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#compoundStatement.
+SqlParserVisitor.prototype.visitCompoundStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#administrationStatement.
+SqlParserVisitor.prototype.visitAdministrationStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#utilityStatement.
+SqlParserVisitor.prototype.visitUtilityStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#createDatabase.
+SqlParserVisitor.prototype.visitCreateDatabase = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#createEvent.
+SqlParserVisitor.prototype.visitCreateEvent = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#createIndex.
+SqlParserVisitor.prototype.visitCreateIndex = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#createLogfileGroup.
+SqlParserVisitor.prototype.visitCreateLogfileGroup = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#createProcedure.
+SqlParserVisitor.prototype.visitCreateProcedure = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#createFunction.
+SqlParserVisitor.prototype.visitCreateFunction = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#createServer.
+SqlParserVisitor.prototype.visitCreateServer = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#copyCreateTable.
+SqlParserVisitor.prototype.visitCopyCreateTable = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#queryCreateTable.
+SqlParserVisitor.prototype.visitQueryCreateTable = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#columnCreateTable.
+SqlParserVisitor.prototype.visitColumnCreateTable = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#createTablespaceInnodb.
+SqlParserVisitor.prototype.visitCreateTablespaceInnodb = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#createTablespaceNdb.
+SqlParserVisitor.prototype.visitCreateTablespaceNdb = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#createTrigger.
+SqlParserVisitor.prototype.visitCreateTrigger = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#createView.
+SqlParserVisitor.prototype.visitCreateView = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#createDatabaseOption.
+SqlParserVisitor.prototype.visitCreateDatabaseOption = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#ownerStatement.
+SqlParserVisitor.prototype.visitOwnerStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#preciseSchedule.
+SqlParserVisitor.prototype.visitPreciseSchedule = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#intervalSchedule.
+SqlParserVisitor.prototype.visitIntervalSchedule = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#timestampValue.
+SqlParserVisitor.prototype.visitTimestampValue = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#intervalExpr.
+SqlParserVisitor.prototype.visitIntervalExpr = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#intervalType.
+SqlParserVisitor.prototype.visitIntervalType = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#enableType.
+SqlParserVisitor.prototype.visitEnableType = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#indexType.
+SqlParserVisitor.prototype.visitIndexType = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#indexOption.
+SqlParserVisitor.prototype.visitIndexOption = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#procedureParameter.
+SqlParserVisitor.prototype.visitProcedureParameter = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#functionParameter.
+SqlParserVisitor.prototype.visitFunctionParameter = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#routineComment.
+SqlParserVisitor.prototype.visitRoutineComment = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#routineLanguage.
+SqlParserVisitor.prototype.visitRoutineLanguage = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#routineBehavior.
+SqlParserVisitor.prototype.visitRoutineBehavior = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#routineData.
+SqlParserVisitor.prototype.visitRoutineData = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#routineSecurity.
+SqlParserVisitor.prototype.visitRoutineSecurity = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#serverOption.
+SqlParserVisitor.prototype.visitServerOption = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#createDefinitions.
+SqlParserVisitor.prototype.visitCreateDefinitions = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#columnDeclaration.
+SqlParserVisitor.prototype.visitColumnDeclaration = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#constraintDeclaration.
+SqlParserVisitor.prototype.visitConstraintDeclaration = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#indexDeclaration.
+SqlParserVisitor.prototype.visitIndexDeclaration = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#columnDefinition.
+SqlParserVisitor.prototype.visitColumnDefinition = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#nullColumnConstraint.
+SqlParserVisitor.prototype.visitNullColumnConstraint = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#defaultColumnConstraint.
+SqlParserVisitor.prototype.visitDefaultColumnConstraint = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#autoIncrementColumnConstraint.
+SqlParserVisitor.prototype.visitAutoIncrementColumnConstraint = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#primaryKeyColumnConstraint.
+SqlParserVisitor.prototype.visitPrimaryKeyColumnConstraint = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#uniqueKeyColumnConstraint.
+SqlParserVisitor.prototype.visitUniqueKeyColumnConstraint = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#commentColumnConstraint.
+SqlParserVisitor.prototype.visitCommentColumnConstraint = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#formatColumnConstraint.
+SqlParserVisitor.prototype.visitFormatColumnConstraint = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#storageColumnConstraint.
+SqlParserVisitor.prototype.visitStorageColumnConstraint = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#referenceColumnConstraint.
+SqlParserVisitor.prototype.visitReferenceColumnConstraint = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#collateColumnConstraint.
+SqlParserVisitor.prototype.visitCollateColumnConstraint = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#generatedColumnConstraint.
+SqlParserVisitor.prototype.visitGeneratedColumnConstraint = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#serialDefaultColumnConstraint.
+SqlParserVisitor.prototype.visitSerialDefaultColumnConstraint = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#checkColumnConstraint.
+SqlParserVisitor.prototype.visitCheckColumnConstraint = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#primaryKeyTableConstraint.
+SqlParserVisitor.prototype.visitPrimaryKeyTableConstraint = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#uniqueKeyTableConstraint.
+SqlParserVisitor.prototype.visitUniqueKeyTableConstraint = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#foreignKeyTableConstraint.
+SqlParserVisitor.prototype.visitForeignKeyTableConstraint = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#checkTableConstraint.
+SqlParserVisitor.prototype.visitCheckTableConstraint = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#referenceDefinition.
+SqlParserVisitor.prototype.visitReferenceDefinition = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#referenceAction.
+SqlParserVisitor.prototype.visitReferenceAction = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#referenceControlType.
+SqlParserVisitor.prototype.visitReferenceControlType = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#simpleIndexDeclaration.
+SqlParserVisitor.prototype.visitSimpleIndexDeclaration = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#specialIndexDeclaration.
+SqlParserVisitor.prototype.visitSpecialIndexDeclaration = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#tableOptionEngine.
+SqlParserVisitor.prototype.visitTableOptionEngine = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#tableOptionAutoIncrement.
+SqlParserVisitor.prototype.visitTableOptionAutoIncrement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#tableOptionAverage.
+SqlParserVisitor.prototype.visitTableOptionAverage = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#tableOptionCharset.
+SqlParserVisitor.prototype.visitTableOptionCharset = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#tableOptionChecksum.
+SqlParserVisitor.prototype.visitTableOptionChecksum = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#tableOptionCollate.
+SqlParserVisitor.prototype.visitTableOptionCollate = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#tableOptionComment.
+SqlParserVisitor.prototype.visitTableOptionComment = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#tableOptionCompression.
+SqlParserVisitor.prototype.visitTableOptionCompression = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#tableOptionConnection.
+SqlParserVisitor.prototype.visitTableOptionConnection = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#tableOptionDataDirectory.
+SqlParserVisitor.prototype.visitTableOptionDataDirectory = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#tableOptionDelay.
+SqlParserVisitor.prototype.visitTableOptionDelay = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#tableOptionEncryption.
+SqlParserVisitor.prototype.visitTableOptionEncryption = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#tableOptionIndexDirectory.
+SqlParserVisitor.prototype.visitTableOptionIndexDirectory = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#tableOptionInsertMethod.
+SqlParserVisitor.prototype.visitTableOptionInsertMethod = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#tableOptionKeyBlockSize.
+SqlParserVisitor.prototype.visitTableOptionKeyBlockSize = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#tableOptionMaxRows.
+SqlParserVisitor.prototype.visitTableOptionMaxRows = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#tableOptionMinRows.
+SqlParserVisitor.prototype.visitTableOptionMinRows = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#tableOptionPackKeys.
+SqlParserVisitor.prototype.visitTableOptionPackKeys = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#tableOptionPassword.
+SqlParserVisitor.prototype.visitTableOptionPassword = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#tableOptionRowFormat.
+SqlParserVisitor.prototype.visitTableOptionRowFormat = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#tableOptionRecalculation.
+SqlParserVisitor.prototype.visitTableOptionRecalculation = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#tableOptionPersistent.
+SqlParserVisitor.prototype.visitTableOptionPersistent = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#tableOptionSamplePage.
+SqlParserVisitor.prototype.visitTableOptionSamplePage = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#tableOptionTablespace.
+SqlParserVisitor.prototype.visitTableOptionTablespace = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#tableOptionUnion.
+SqlParserVisitor.prototype.visitTableOptionUnion = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#tablespaceStorage.
+SqlParserVisitor.prototype.visitTablespaceStorage = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#partitionDefinitions.
+SqlParserVisitor.prototype.visitPartitionDefinitions = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#partitionFunctionHash.
+SqlParserVisitor.prototype.visitPartitionFunctionHash = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#partitionFunctionKey.
+SqlParserVisitor.prototype.visitPartitionFunctionKey = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#partitionFunctionRange.
+SqlParserVisitor.prototype.visitPartitionFunctionRange = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#partitionFunctionList.
+SqlParserVisitor.prototype.visitPartitionFunctionList = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#subPartitionFunctionHash.
+SqlParserVisitor.prototype.visitSubPartitionFunctionHash = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#subPartitionFunctionKey.
+SqlParserVisitor.prototype.visitSubPartitionFunctionKey = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#partitionComparision.
+SqlParserVisitor.prototype.visitPartitionComparision = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#partitionListAtom.
+SqlParserVisitor.prototype.visitPartitionListAtom = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#partitionListVector.
+SqlParserVisitor.prototype.visitPartitionListVector = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#partitionSimple.
+SqlParserVisitor.prototype.visitPartitionSimple = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#partitionDefinerAtom.
+SqlParserVisitor.prototype.visitPartitionDefinerAtom = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#partitionDefinerVector.
+SqlParserVisitor.prototype.visitPartitionDefinerVector = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#subpartitionDefinition.
+SqlParserVisitor.prototype.visitSubpartitionDefinition = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#partitionOptionEngine.
+SqlParserVisitor.prototype.visitPartitionOptionEngine = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#partitionOptionComment.
+SqlParserVisitor.prototype.visitPartitionOptionComment = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#partitionOptionDataDirectory.
+SqlParserVisitor.prototype.visitPartitionOptionDataDirectory = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#partitionOptionIndexDirectory.
+SqlParserVisitor.prototype.visitPartitionOptionIndexDirectory = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#partitionOptionMaxRows.
+SqlParserVisitor.prototype.visitPartitionOptionMaxRows = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#partitionOptionMinRows.
+SqlParserVisitor.prototype.visitPartitionOptionMinRows = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#partitionOptionTablespace.
+SqlParserVisitor.prototype.visitPartitionOptionTablespace = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#partitionOptionNodeGroup.
+SqlParserVisitor.prototype.visitPartitionOptionNodeGroup = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterSimpleDatabase.
+SqlParserVisitor.prototype.visitAlterSimpleDatabase = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterUpgradeName.
+SqlParserVisitor.prototype.visitAlterUpgradeName = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterEvent.
+SqlParserVisitor.prototype.visitAlterEvent = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterFunction.
+SqlParserVisitor.prototype.visitAlterFunction = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterInstance.
+SqlParserVisitor.prototype.visitAlterInstance = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterLogfileGroup.
+SqlParserVisitor.prototype.visitAlterLogfileGroup = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterProcedure.
+SqlParserVisitor.prototype.visitAlterProcedure = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterServer.
+SqlParserVisitor.prototype.visitAlterServer = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterTable.
+SqlParserVisitor.prototype.visitAlterTable = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterTablespace.
+SqlParserVisitor.prototype.visitAlterTablespace = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterView.
+SqlParserVisitor.prototype.visitAlterView = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterByTableOption.
+SqlParserVisitor.prototype.visitAlterByTableOption = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterByAddColumn.
+SqlParserVisitor.prototype.visitAlterByAddColumn = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterByAddColumns.
+SqlParserVisitor.prototype.visitAlterByAddColumns = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterByAddIndex.
+SqlParserVisitor.prototype.visitAlterByAddIndex = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterByAddPrimaryKey.
+SqlParserVisitor.prototype.visitAlterByAddPrimaryKey = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterByAddUniqueKey.
+SqlParserVisitor.prototype.visitAlterByAddUniqueKey = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterByAddSpecialIndex.
+SqlParserVisitor.prototype.visitAlterByAddSpecialIndex = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterByAddForeignKey.
+SqlParserVisitor.prototype.visitAlterByAddForeignKey = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterByAddCheckTableConstraint.
+SqlParserVisitor.prototype.visitAlterByAddCheckTableConstraint = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterBySetAlgorithm.
+SqlParserVisitor.prototype.visitAlterBySetAlgorithm = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterByChangeDefault.
+SqlParserVisitor.prototype.visitAlterByChangeDefault = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterByChangeColumn.
+SqlParserVisitor.prototype.visitAlterByChangeColumn = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterByRenameColumn.
+SqlParserVisitor.prototype.visitAlterByRenameColumn = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterByLock.
+SqlParserVisitor.prototype.visitAlterByLock = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterByModifyColumn.
+SqlParserVisitor.prototype.visitAlterByModifyColumn = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterByDropColumn.
+SqlParserVisitor.prototype.visitAlterByDropColumn = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterByDropPrimaryKey.
+SqlParserVisitor.prototype.visitAlterByDropPrimaryKey = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterByRenameIndex.
+SqlParserVisitor.prototype.visitAlterByRenameIndex = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterByAlterIndexVisibility.
+SqlParserVisitor.prototype.visitAlterByAlterIndexVisibility = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterByDropIndex.
+SqlParserVisitor.prototype.visitAlterByDropIndex = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterByDropForeignKey.
+SqlParserVisitor.prototype.visitAlterByDropForeignKey = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterByDisableKeys.
+SqlParserVisitor.prototype.visitAlterByDisableKeys = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterByEnableKeys.
+SqlParserVisitor.prototype.visitAlterByEnableKeys = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterByRename.
+SqlParserVisitor.prototype.visitAlterByRename = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterByOrder.
+SqlParserVisitor.prototype.visitAlterByOrder = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterByConvertCharset.
+SqlParserVisitor.prototype.visitAlterByConvertCharset = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterByDefaultCharset.
+SqlParserVisitor.prototype.visitAlterByDefaultCharset = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterByDiscardTablespace.
+SqlParserVisitor.prototype.visitAlterByDiscardTablespace = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterByImportTablespace.
+SqlParserVisitor.prototype.visitAlterByImportTablespace = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterByForce.
+SqlParserVisitor.prototype.visitAlterByForce = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterByValidate.
+SqlParserVisitor.prototype.visitAlterByValidate = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterByAddPartition.
+SqlParserVisitor.prototype.visitAlterByAddPartition = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterByDropPartition.
+SqlParserVisitor.prototype.visitAlterByDropPartition = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterByDiscardPartition.
+SqlParserVisitor.prototype.visitAlterByDiscardPartition = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterByImportPartition.
+SqlParserVisitor.prototype.visitAlterByImportPartition = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterByTruncatePartition.
+SqlParserVisitor.prototype.visitAlterByTruncatePartition = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterByCoalescePartition.
+SqlParserVisitor.prototype.visitAlterByCoalescePartition = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterByReorganizePartition.
+SqlParserVisitor.prototype.visitAlterByReorganizePartition = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterByExchangePartition.
+SqlParserVisitor.prototype.visitAlterByExchangePartition = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterByAnalyzePartition.
+SqlParserVisitor.prototype.visitAlterByAnalyzePartition = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterByCheckPartition.
+SqlParserVisitor.prototype.visitAlterByCheckPartition = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterByOptimizePartition.
+SqlParserVisitor.prototype.visitAlterByOptimizePartition = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterByRebuildPartition.
+SqlParserVisitor.prototype.visitAlterByRebuildPartition = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterByRepairPartition.
+SqlParserVisitor.prototype.visitAlterByRepairPartition = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterByRemovePartitioning.
+SqlParserVisitor.prototype.visitAlterByRemovePartitioning = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterByUpgradePartitioning.
+SqlParserVisitor.prototype.visitAlterByUpgradePartitioning = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#dropDatabase.
+SqlParserVisitor.prototype.visitDropDatabase = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#dropEvent.
+SqlParserVisitor.prototype.visitDropEvent = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#dropIndex.
+SqlParserVisitor.prototype.visitDropIndex = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#dropLogfileGroup.
+SqlParserVisitor.prototype.visitDropLogfileGroup = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#dropProcedure.
+SqlParserVisitor.prototype.visitDropProcedure = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#dropFunction.
+SqlParserVisitor.prototype.visitDropFunction = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#dropServer.
+SqlParserVisitor.prototype.visitDropServer = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#dropTable.
+SqlParserVisitor.prototype.visitDropTable = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#dropTablespace.
+SqlParserVisitor.prototype.visitDropTablespace = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#dropTrigger.
+SqlParserVisitor.prototype.visitDropTrigger = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#dropView.
+SqlParserVisitor.prototype.visitDropView = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#renameTable.
+SqlParserVisitor.prototype.visitRenameTable = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#renameTableClause.
+SqlParserVisitor.prototype.visitRenameTableClause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#truncateTable.
+SqlParserVisitor.prototype.visitTruncateTable = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#callStatement.
+SqlParserVisitor.prototype.visitCallStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#deleteStatement.
+SqlParserVisitor.prototype.visitDeleteStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#doStatement.
+SqlParserVisitor.prototype.visitDoStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#handlerStatement.
+SqlParserVisitor.prototype.visitHandlerStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#insertStatement.
+SqlParserVisitor.prototype.visitInsertStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#loadDataStatement.
+SqlParserVisitor.prototype.visitLoadDataStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#loadXmlStatement.
+SqlParserVisitor.prototype.visitLoadXmlStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#replaceStatement.
+SqlParserVisitor.prototype.visitReplaceStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#simpleSelect.
+SqlParserVisitor.prototype.visitSimpleSelect = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#parenthesisSelect.
+SqlParserVisitor.prototype.visitParenthesisSelect = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#unionSelect.
+SqlParserVisitor.prototype.visitUnionSelect = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#unionParenthesisSelect.
+SqlParserVisitor.prototype.visitUnionParenthesisSelect = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#updateStatement.
+SqlParserVisitor.prototype.visitUpdateStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#insertStatementValue.
+SqlParserVisitor.prototype.visitInsertStatementValue = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#updatedElement.
+SqlParserVisitor.prototype.visitUpdatedElement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#assignmentField.
+SqlParserVisitor.prototype.visitAssignmentField = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#lockClause.
+SqlParserVisitor.prototype.visitLockClause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#singleDeleteStatement.
+SqlParserVisitor.prototype.visitSingleDeleteStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#multipleDeleteStatement.
+SqlParserVisitor.prototype.visitMultipleDeleteStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#handlerOpenStatement.
+SqlParserVisitor.prototype.visitHandlerOpenStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#handlerReadIndexStatement.
+SqlParserVisitor.prototype.visitHandlerReadIndexStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#handlerReadStatement.
+SqlParserVisitor.prototype.visitHandlerReadStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#handlerCloseStatement.
+SqlParserVisitor.prototype.visitHandlerCloseStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#singleUpdateStatement.
+SqlParserVisitor.prototype.visitSingleUpdateStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#multipleUpdateStatement.
+SqlParserVisitor.prototype.visitMultipleUpdateStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#orderByClause.
+SqlParserVisitor.prototype.visitOrderByClause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#orderByExpression.
+SqlParserVisitor.prototype.visitOrderByExpression = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#tableSources.
+SqlParserVisitor.prototype.visitTableSources = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#tableSourceBase.
+SqlParserVisitor.prototype.visitTableSourceBase = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#tableSourceNested.
+SqlParserVisitor.prototype.visitTableSourceNested = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#atomTableItem.
+SqlParserVisitor.prototype.visitAtomTableItem = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#subqueryTableItem.
+SqlParserVisitor.prototype.visitSubqueryTableItem = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#tableSourcesItem.
+SqlParserVisitor.prototype.visitTableSourcesItem = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#indexHint.
+SqlParserVisitor.prototype.visitIndexHint = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#indexHintType.
+SqlParserVisitor.prototype.visitIndexHintType = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#innerJoin.
+SqlParserVisitor.prototype.visitInnerJoin = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#straightJoin.
+SqlParserVisitor.prototype.visitStraightJoin = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#outerJoin.
+SqlParserVisitor.prototype.visitOuterJoin = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#naturalJoin.
+SqlParserVisitor.prototype.visitNaturalJoin = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#queryExpression.
+SqlParserVisitor.prototype.visitQueryExpression = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#queryExpressionNointo.
+SqlParserVisitor.prototype.visitQueryExpressionNointo = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#querySpecification.
+SqlParserVisitor.prototype.visitQuerySpecification = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#querySpecificationNointo.
+SqlParserVisitor.prototype.visitQuerySpecificationNointo = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#unionParenthesis.
+SqlParserVisitor.prototype.visitUnionParenthesis = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#unionStatement.
+SqlParserVisitor.prototype.visitUnionStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#selectSpec.
+SqlParserVisitor.prototype.visitSelectSpec = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#selectElements.
+SqlParserVisitor.prototype.visitSelectElements = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#selectStarElement.
+SqlParserVisitor.prototype.visitSelectStarElement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#selectColumnElement.
+SqlParserVisitor.prototype.visitSelectColumnElement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#selectFunctionElement.
+SqlParserVisitor.prototype.visitSelectFunctionElement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#selectExpressionElement.
+SqlParserVisitor.prototype.visitSelectExpressionElement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#selectIntoVariables.
+SqlParserVisitor.prototype.visitSelectIntoVariables = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#selectIntoDumpFile.
+SqlParserVisitor.prototype.visitSelectIntoDumpFile = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#selectIntoTextFile.
+SqlParserVisitor.prototype.visitSelectIntoTextFile = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#selectFieldsInto.
+SqlParserVisitor.prototype.visitSelectFieldsInto = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#selectLinesInto.
+SqlParserVisitor.prototype.visitSelectLinesInto = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#fromClause.
+SqlParserVisitor.prototype.visitFromClause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#groupByItem.
+SqlParserVisitor.prototype.visitGroupByItem = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#limitClause.
+SqlParserVisitor.prototype.visitLimitClause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#limitClauseAtom.
+SqlParserVisitor.prototype.visitLimitClauseAtom = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#startTransaction.
+SqlParserVisitor.prototype.visitStartTransaction = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#beginWork.
+SqlParserVisitor.prototype.visitBeginWork = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#commitWork.
+SqlParserVisitor.prototype.visitCommitWork = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#rollbackWork.
+SqlParserVisitor.prototype.visitRollbackWork = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#savepointStatement.
+SqlParserVisitor.prototype.visitSavepointStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#rollbackStatement.
+SqlParserVisitor.prototype.visitRollbackStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#releaseStatement.
+SqlParserVisitor.prototype.visitReleaseStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#lockTables.
+SqlParserVisitor.prototype.visitLockTables = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#unlockTables.
+SqlParserVisitor.prototype.visitUnlockTables = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#setAutocommitStatement.
+SqlParserVisitor.prototype.visitSetAutocommitStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#setTransactionStatement.
+SqlParserVisitor.prototype.visitSetTransactionStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#transactionMode.
+SqlParserVisitor.prototype.visitTransactionMode = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#lockTableElement.
+SqlParserVisitor.prototype.visitLockTableElement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#lockAction.
+SqlParserVisitor.prototype.visitLockAction = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#transactionOption.
+SqlParserVisitor.prototype.visitTransactionOption = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#transactionLevel.
+SqlParserVisitor.prototype.visitTransactionLevel = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#changeMaster.
+SqlParserVisitor.prototype.visitChangeMaster = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#changeReplicationFilter.
+SqlParserVisitor.prototype.visitChangeReplicationFilter = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#purgeBinaryLogs.
+SqlParserVisitor.prototype.visitPurgeBinaryLogs = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#resetMaster.
+SqlParserVisitor.prototype.visitResetMaster = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#resetSlave.
+SqlParserVisitor.prototype.visitResetSlave = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#startSlave.
+SqlParserVisitor.prototype.visitStartSlave = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#stopSlave.
+SqlParserVisitor.prototype.visitStopSlave = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#startGroupReplication.
+SqlParserVisitor.prototype.visitStartGroupReplication = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#stopGroupReplication.
+SqlParserVisitor.prototype.visitStopGroupReplication = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#masterStringOption.
+SqlParserVisitor.prototype.visitMasterStringOption = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#masterDecimalOption.
+SqlParserVisitor.prototype.visitMasterDecimalOption = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#masterBoolOption.
+SqlParserVisitor.prototype.visitMasterBoolOption = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#masterRealOption.
+SqlParserVisitor.prototype.visitMasterRealOption = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#masterUidListOption.
+SqlParserVisitor.prototype.visitMasterUidListOption = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#stringMasterOption.
+SqlParserVisitor.prototype.visitStringMasterOption = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#decimalMasterOption.
+SqlParserVisitor.prototype.visitDecimalMasterOption = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#boolMasterOption.
+SqlParserVisitor.prototype.visitBoolMasterOption = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#channelOption.
+SqlParserVisitor.prototype.visitChannelOption = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#doDbReplication.
+SqlParserVisitor.prototype.visitDoDbReplication = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#ignoreDbReplication.
+SqlParserVisitor.prototype.visitIgnoreDbReplication = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#doTableReplication.
+SqlParserVisitor.prototype.visitDoTableReplication = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#ignoreTableReplication.
+SqlParserVisitor.prototype.visitIgnoreTableReplication = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#wildDoTableReplication.
+SqlParserVisitor.prototype.visitWildDoTableReplication = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#wildIgnoreTableReplication.
+SqlParserVisitor.prototype.visitWildIgnoreTableReplication = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#rewriteDbReplication.
+SqlParserVisitor.prototype.visitRewriteDbReplication = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#tablePair.
+SqlParserVisitor.prototype.visitTablePair = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#threadType.
+SqlParserVisitor.prototype.visitThreadType = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#gtidsUntilOption.
+SqlParserVisitor.prototype.visitGtidsUntilOption = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#masterLogUntilOption.
+SqlParserVisitor.prototype.visitMasterLogUntilOption = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#relayLogUntilOption.
+SqlParserVisitor.prototype.visitRelayLogUntilOption = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#sqlGapsUntilOption.
+SqlParserVisitor.prototype.visitSqlGapsUntilOption = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#userConnectionOption.
+SqlParserVisitor.prototype.visitUserConnectionOption = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#passwordConnectionOption.
+SqlParserVisitor.prototype.visitPasswordConnectionOption = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#defaultAuthConnectionOption.
+SqlParserVisitor.prototype.visitDefaultAuthConnectionOption = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#pluginDirConnectionOption.
+SqlParserVisitor.prototype.visitPluginDirConnectionOption = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#gtuidSet.
+SqlParserVisitor.prototype.visitGtuidSet = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#xaStartTransaction.
+SqlParserVisitor.prototype.visitXaStartTransaction = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#xaEndTransaction.
+SqlParserVisitor.prototype.visitXaEndTransaction = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#xaPrepareStatement.
+SqlParserVisitor.prototype.visitXaPrepareStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#xaCommitWork.
+SqlParserVisitor.prototype.visitXaCommitWork = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#xaRollbackWork.
+SqlParserVisitor.prototype.visitXaRollbackWork = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#xaRecoverWork.
+SqlParserVisitor.prototype.visitXaRecoverWork = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#prepareStatement.
+SqlParserVisitor.prototype.visitPrepareStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#executeStatement.
+SqlParserVisitor.prototype.visitExecuteStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#deallocatePrepare.
+SqlParserVisitor.prototype.visitDeallocatePrepare = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#routineBody.
+SqlParserVisitor.prototype.visitRoutineBody = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#blockStatement.
+SqlParserVisitor.prototype.visitBlockStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#caseStatement.
+SqlParserVisitor.prototype.visitCaseStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#ifStatement.
+SqlParserVisitor.prototype.visitIfStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#iterateStatement.
+SqlParserVisitor.prototype.visitIterateStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#leaveStatement.
+SqlParserVisitor.prototype.visitLeaveStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#loopStatement.
+SqlParserVisitor.prototype.visitLoopStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#repeatStatement.
+SqlParserVisitor.prototype.visitRepeatStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#returnStatement.
+SqlParserVisitor.prototype.visitReturnStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#whileStatement.
+SqlParserVisitor.prototype.visitWhileStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#CloseCursor.
+SqlParserVisitor.prototype.visitCloseCursor = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#FetchCursor.
+SqlParserVisitor.prototype.visitFetchCursor = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#OpenCursor.
+SqlParserVisitor.prototype.visitOpenCursor = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#declareVariable.
+SqlParserVisitor.prototype.visitDeclareVariable = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#declareCondition.
+SqlParserVisitor.prototype.visitDeclareCondition = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#declareCursor.
+SqlParserVisitor.prototype.visitDeclareCursor = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#declareHandler.
+SqlParserVisitor.prototype.visitDeclareHandler = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#handlerConditionCode.
+SqlParserVisitor.prototype.visitHandlerConditionCode = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#handlerConditionState.
+SqlParserVisitor.prototype.visitHandlerConditionState = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#handlerConditionName.
+SqlParserVisitor.prototype.visitHandlerConditionName = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#handlerConditionWarning.
+SqlParserVisitor.prototype.visitHandlerConditionWarning = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#handlerConditionNotfound.
+SqlParserVisitor.prototype.visitHandlerConditionNotfound = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#handlerConditionException.
+SqlParserVisitor.prototype.visitHandlerConditionException = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#procedureSqlStatement.
+SqlParserVisitor.prototype.visitProcedureSqlStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#caseAlternative.
+SqlParserVisitor.prototype.visitCaseAlternative = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#elifAlternative.
+SqlParserVisitor.prototype.visitElifAlternative = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterUserMysqlV56.
+SqlParserVisitor.prototype.visitAlterUserMysqlV56 = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#alterUserMysqlV57.
+SqlParserVisitor.prototype.visitAlterUserMysqlV57 = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#createUserMysqlV56.
+SqlParserVisitor.prototype.visitCreateUserMysqlV56 = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#createUserMysqlV57.
+SqlParserVisitor.prototype.visitCreateUserMysqlV57 = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#dropUser.
+SqlParserVisitor.prototype.visitDropUser = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#grantStatement.
+SqlParserVisitor.prototype.visitGrantStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#grantProxy.
+SqlParserVisitor.prototype.visitGrantProxy = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#renameUser.
+SqlParserVisitor.prototype.visitRenameUser = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#detailRevoke.
+SqlParserVisitor.prototype.visitDetailRevoke = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#shortRevoke.
+SqlParserVisitor.prototype.visitShortRevoke = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#revokeProxy.
+SqlParserVisitor.prototype.visitRevokeProxy = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#setPasswordStatement.
+SqlParserVisitor.prototype.visitSetPasswordStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#userSpecification.
+SqlParserVisitor.prototype.visitUserSpecification = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#passwordAuthOption.
+SqlParserVisitor.prototype.visitPasswordAuthOption = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#stringAuthOption.
+SqlParserVisitor.prototype.visitStringAuthOption = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#hashAuthOption.
+SqlParserVisitor.prototype.visitHashAuthOption = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#simpleAuthOption.
+SqlParserVisitor.prototype.visitSimpleAuthOption = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#tlsOption.
+SqlParserVisitor.prototype.visitTlsOption = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#userResourceOption.
+SqlParserVisitor.prototype.visitUserResourceOption = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#userPasswordOption.
+SqlParserVisitor.prototype.visitUserPasswordOption = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#userLockOption.
+SqlParserVisitor.prototype.visitUserLockOption = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#privelegeClause.
+SqlParserVisitor.prototype.visitPrivelegeClause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#privilege.
+SqlParserVisitor.prototype.visitPrivilege = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#currentSchemaPriviLevel.
+SqlParserVisitor.prototype.visitCurrentSchemaPriviLevel = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#globalPrivLevel.
+SqlParserVisitor.prototype.visitGlobalPrivLevel = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#definiteSchemaPrivLevel.
+SqlParserVisitor.prototype.visitDefiniteSchemaPrivLevel = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#definiteFullTablePrivLevel.
+SqlParserVisitor.prototype.visitDefiniteFullTablePrivLevel = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#definiteFullTablePrivLevel2.
+SqlParserVisitor.prototype.visitDefiniteFullTablePrivLevel2 = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#definiteTablePrivLevel.
+SqlParserVisitor.prototype.visitDefiniteTablePrivLevel = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#renameUserClause.
+SqlParserVisitor.prototype.visitRenameUserClause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#analyzeTable.
+SqlParserVisitor.prototype.visitAnalyzeTable = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#checkTable.
+SqlParserVisitor.prototype.visitCheckTable = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#checksumTable.
+SqlParserVisitor.prototype.visitChecksumTable = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#optimizeTable.
+SqlParserVisitor.prototype.visitOptimizeTable = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#repairTable.
+SqlParserVisitor.prototype.visitRepairTable = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#checkTableOption.
+SqlParserVisitor.prototype.visitCheckTableOption = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#createUdfunction.
+SqlParserVisitor.prototype.visitCreateUdfunction = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#installPlugin.
+SqlParserVisitor.prototype.visitInstallPlugin = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#uninstallPlugin.
+SqlParserVisitor.prototype.visitUninstallPlugin = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#setVariable.
+SqlParserVisitor.prototype.visitSetVariable = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#setCharset.
+SqlParserVisitor.prototype.visitSetCharset = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#setNames.
+SqlParserVisitor.prototype.visitSetNames = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#setPassword.
+SqlParserVisitor.prototype.visitSetPassword = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#setTransaction.
+SqlParserVisitor.prototype.visitSetTransaction = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#setAutocommit.
+SqlParserVisitor.prototype.visitSetAutocommit = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#setNewValueInsideTrigger.
+SqlParserVisitor.prototype.visitSetNewValueInsideTrigger = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#showMasterLogs.
+SqlParserVisitor.prototype.visitShowMasterLogs = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#showLogEvents.
+SqlParserVisitor.prototype.visitShowLogEvents = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#showObjectFilter.
+SqlParserVisitor.prototype.visitShowObjectFilter = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#showColumns.
+SqlParserVisitor.prototype.visitShowColumns = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#showCreateDb.
+SqlParserVisitor.prototype.visitShowCreateDb = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#showCreateFullIdObject.
+SqlParserVisitor.prototype.visitShowCreateFullIdObject = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#showCreateUser.
+SqlParserVisitor.prototype.visitShowCreateUser = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#showEngine.
+SqlParserVisitor.prototype.visitShowEngine = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#showGlobalInfo.
+SqlParserVisitor.prototype.visitShowGlobalInfo = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#showErrors.
+SqlParserVisitor.prototype.visitShowErrors = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#showCountErrors.
+SqlParserVisitor.prototype.visitShowCountErrors = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#showSchemaFilter.
+SqlParserVisitor.prototype.visitShowSchemaFilter = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#showRoutine.
+SqlParserVisitor.prototype.visitShowRoutine = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#showGrants.
+SqlParserVisitor.prototype.visitShowGrants = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#showIndexes.
+SqlParserVisitor.prototype.visitShowIndexes = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#showOpenTables.
+SqlParserVisitor.prototype.visitShowOpenTables = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#showProfile.
+SqlParserVisitor.prototype.visitShowProfile = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#showSlaveStatus.
+SqlParserVisitor.prototype.visitShowSlaveStatus = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#variableClause.
+SqlParserVisitor.prototype.visitVariableClause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#showCommonEntity.
+SqlParserVisitor.prototype.visitShowCommonEntity = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#showFilter.
+SqlParserVisitor.prototype.visitShowFilter = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#showGlobalInfoClause.
+SqlParserVisitor.prototype.visitShowGlobalInfoClause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#showSchemaEntity.
+SqlParserVisitor.prototype.visitShowSchemaEntity = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#showProfileType.
+SqlParserVisitor.prototype.visitShowProfileType = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#binlogStatement.
+SqlParserVisitor.prototype.visitBinlogStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#cacheIndexStatement.
+SqlParserVisitor.prototype.visitCacheIndexStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#flushStatement.
+SqlParserVisitor.prototype.visitFlushStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#killStatement.
+SqlParserVisitor.prototype.visitKillStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#loadIndexIntoCache.
+SqlParserVisitor.prototype.visitLoadIndexIntoCache = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#resetStatement.
+SqlParserVisitor.prototype.visitResetStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#shutdownStatement.
+SqlParserVisitor.prototype.visitShutdownStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#tableIndexes.
+SqlParserVisitor.prototype.visitTableIndexes = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#simpleFlushOption.
+SqlParserVisitor.prototype.visitSimpleFlushOption = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#channelFlushOption.
+SqlParserVisitor.prototype.visitChannelFlushOption = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#tableFlushOption.
+SqlParserVisitor.prototype.visitTableFlushOption = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#flushTableOption.
+SqlParserVisitor.prototype.visitFlushTableOption = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#loadedTableIndexes.
+SqlParserVisitor.prototype.visitLoadedTableIndexes = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#simpleDescribeStatement.
+SqlParserVisitor.prototype.visitSimpleDescribeStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#fullDescribeStatement.
+SqlParserVisitor.prototype.visitFullDescribeStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#helpStatement.
+SqlParserVisitor.prototype.visitHelpStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#useStatement.
+SqlParserVisitor.prototype.visitUseStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#signalStatement.
+SqlParserVisitor.prototype.visitSignalStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#resignalStatement.
+SqlParserVisitor.prototype.visitResignalStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#signalConditionInformation.
+SqlParserVisitor.prototype.visitSignalConditionInformation = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#diagnosticsStatement.
+SqlParserVisitor.prototype.visitDiagnosticsStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#diagnosticsConditionInformationName.
+SqlParserVisitor.prototype.visitDiagnosticsConditionInformationName = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#describeStatements.
+SqlParserVisitor.prototype.visitDescribeStatements = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#describeConnection.
+SqlParserVisitor.prototype.visitDescribeConnection = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#fullId.
+SqlParserVisitor.prototype.visitFullId = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#tableName.
+SqlParserVisitor.prototype.visitTableName = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#fullColumnName.
+SqlParserVisitor.prototype.visitFullColumnName = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#indexColumnName.
+SqlParserVisitor.prototype.visitIndexColumnName = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#userName.
+SqlParserVisitor.prototype.visitUserName = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#mysqlVariable.
+SqlParserVisitor.prototype.visitMysqlVariable = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#charsetName.
+SqlParserVisitor.prototype.visitCharsetName = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#collationName.
+SqlParserVisitor.prototype.visitCollationName = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#engineName.
+SqlParserVisitor.prototype.visitEngineName = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#uuidSet.
+SqlParserVisitor.prototype.visitUuidSet = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#xid.
+SqlParserVisitor.prototype.visitXid = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#xuidStringId.
+SqlParserVisitor.prototype.visitXuidStringId = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#authPlugin.
+SqlParserVisitor.prototype.visitAuthPlugin = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#uid.
+SqlParserVisitor.prototype.visitUid = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#simpleId.
+SqlParserVisitor.prototype.visitSimpleId = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#dottedId.
+SqlParserVisitor.prototype.visitDottedId = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#decimalLiteral.
+SqlParserVisitor.prototype.visitDecimalLiteral = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#fileSizeLiteral.
+SqlParserVisitor.prototype.visitFileSizeLiteral = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#stringLiteral.
+SqlParserVisitor.prototype.visitStringLiteral = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#booleanLiteral.
+SqlParserVisitor.prototype.visitBooleanLiteral = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#hexadecimalLiteral.
+SqlParserVisitor.prototype.visitHexadecimalLiteral = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#nullNotnull.
+SqlParserVisitor.prototype.visitNullNotnull = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#constant.
+SqlParserVisitor.prototype.visitConstant = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#stringDataType.
+SqlParserVisitor.prototype.visitStringDataType = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#nationalStringDataType.
+SqlParserVisitor.prototype.visitNationalStringDataType = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#nationalVaryingStringDataType.
+SqlParserVisitor.prototype.visitNationalVaryingStringDataType = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#dimensionDataType.
+SqlParserVisitor.prototype.visitDimensionDataType = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#simpleDataType.
+SqlParserVisitor.prototype.visitSimpleDataType = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#collectionDataType.
+SqlParserVisitor.prototype.visitCollectionDataType = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#spatialDataType.
+SqlParserVisitor.prototype.visitSpatialDataType = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#longVarcharDataType.
+SqlParserVisitor.prototype.visitLongVarcharDataType = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#longVarbinaryDataType.
+SqlParserVisitor.prototype.visitLongVarbinaryDataType = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#collectionOptions.
+SqlParserVisitor.prototype.visitCollectionOptions = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#convertedDataType.
+SqlParserVisitor.prototype.visitConvertedDataType = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#lengthOneDimension.
+SqlParserVisitor.prototype.visitLengthOneDimension = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#lengthTwoDimension.
+SqlParserVisitor.prototype.visitLengthTwoDimension = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#lengthTwoOptionalDimension.
+SqlParserVisitor.prototype.visitLengthTwoOptionalDimension = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#uidList.
+SqlParserVisitor.prototype.visitUidList = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#tables.
+SqlParserVisitor.prototype.visitTables = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#indexColumnNames.
+SqlParserVisitor.prototype.visitIndexColumnNames = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#expressions.
+SqlParserVisitor.prototype.visitExpressions = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#expressionsWithDefaults.
+SqlParserVisitor.prototype.visitExpressionsWithDefaults = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#constants.
+SqlParserVisitor.prototype.visitConstants = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#simpleStrings.
+SqlParserVisitor.prototype.visitSimpleStrings = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#userVariables.
+SqlParserVisitor.prototype.visitUserVariables = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#defaultValue.
+SqlParserVisitor.prototype.visitDefaultValue = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#currentTimestamp.
+SqlParserVisitor.prototype.visitCurrentTimestamp = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#expressionOrDefault.
+SqlParserVisitor.prototype.visitExpressionOrDefault = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#ifExists.
+SqlParserVisitor.prototype.visitIfExists = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#ifNotExists.
+SqlParserVisitor.prototype.visitIfNotExists = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#specificFunctionCall.
+SqlParserVisitor.prototype.visitSpecificFunctionCall = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#aggregateFunctionCall.
+SqlParserVisitor.prototype.visitAggregateFunctionCall = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#scalarFunctionCall.
+SqlParserVisitor.prototype.visitScalarFunctionCall = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#udfFunctionCall.
+SqlParserVisitor.prototype.visitUdfFunctionCall = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#passwordFunctionCall.
+SqlParserVisitor.prototype.visitPasswordFunctionCall = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#simpleFunctionCall.
+SqlParserVisitor.prototype.visitSimpleFunctionCall = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#dataTypeFunctionCall.
+SqlParserVisitor.prototype.visitDataTypeFunctionCall = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#valuesFunctionCall.
+SqlParserVisitor.prototype.visitValuesFunctionCall = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#caseFunctionCall.
+SqlParserVisitor.prototype.visitCaseFunctionCall = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#charFunctionCall.
+SqlParserVisitor.prototype.visitCharFunctionCall = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#positionFunctionCall.
+SqlParserVisitor.prototype.visitPositionFunctionCall = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#substrFunctionCall.
+SqlParserVisitor.prototype.visitSubstrFunctionCall = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#trimFunctionCall.
+SqlParserVisitor.prototype.visitTrimFunctionCall = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#weightFunctionCall.
+SqlParserVisitor.prototype.visitWeightFunctionCall = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#extractFunctionCall.
+SqlParserVisitor.prototype.visitExtractFunctionCall = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#getFormatFunctionCall.
+SqlParserVisitor.prototype.visitGetFormatFunctionCall = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#caseFuncAlternative.
+SqlParserVisitor.prototype.visitCaseFuncAlternative = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#levelWeightList.
+SqlParserVisitor.prototype.visitLevelWeightList = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#levelWeightRange.
+SqlParserVisitor.prototype.visitLevelWeightRange = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#levelInWeightListElement.
+SqlParserVisitor.prototype.visitLevelInWeightListElement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#aggregateWindowedFunction.
+SqlParserVisitor.prototype.visitAggregateWindowedFunction = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#scalarFunctionName.
+SqlParserVisitor.prototype.visitScalarFunctionName = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#passwordFunctionClause.
+SqlParserVisitor.prototype.visitPasswordFunctionClause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#functionArgs.
+SqlParserVisitor.prototype.visitFunctionArgs = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#functionArg.
+SqlParserVisitor.prototype.visitFunctionArg = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#isExpression.
+SqlParserVisitor.prototype.visitIsExpression = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#notExpression.
+SqlParserVisitor.prototype.visitNotExpression = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#logicalExpression.
+SqlParserVisitor.prototype.visitLogicalExpression = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#predicateExpression.
+SqlParserVisitor.prototype.visitPredicateExpression = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#soundsLikePredicate.
+SqlParserVisitor.prototype.visitSoundsLikePredicate = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#expressionAtomPredicate.
+SqlParserVisitor.prototype.visitExpressionAtomPredicate = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#inPredicate.
+SqlParserVisitor.prototype.visitInPredicate = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#subqueryComparasionPredicate.
+SqlParserVisitor.prototype.visitSubqueryComparasionPredicate = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#betweenPredicate.
+SqlParserVisitor.prototype.visitBetweenPredicate = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#binaryComparasionPredicate.
+SqlParserVisitor.prototype.visitBinaryComparasionPredicate = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#isNullPredicate.
+SqlParserVisitor.prototype.visitIsNullPredicate = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#likePredicate.
+SqlParserVisitor.prototype.visitLikePredicate = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#regexpPredicate.
+SqlParserVisitor.prototype.visitRegexpPredicate = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#unaryExpressionAtom.
+SqlParserVisitor.prototype.visitUnaryExpressionAtom = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#collateExpressionAtom.
+SqlParserVisitor.prototype.visitCollateExpressionAtom = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#subqueryExpessionAtom.
+SqlParserVisitor.prototype.visitSubqueryExpessionAtom = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#mysqlVariableExpressionAtom.
+SqlParserVisitor.prototype.visitMysqlVariableExpressionAtom = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#nestedExpressionAtom.
+SqlParserVisitor.prototype.visitNestedExpressionAtom = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#nestedRowExpressionAtom.
+SqlParserVisitor.prototype.visitNestedRowExpressionAtom = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#mathExpressionAtom.
+SqlParserVisitor.prototype.visitMathExpressionAtom = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#intervalExpressionAtom.
+SqlParserVisitor.prototype.visitIntervalExpressionAtom = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#existsExpessionAtom.
+SqlParserVisitor.prototype.visitExistsExpessionAtom = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#constantExpressionAtom.
+SqlParserVisitor.prototype.visitConstantExpressionAtom = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#functionCallExpressionAtom.
+SqlParserVisitor.prototype.visitFunctionCallExpressionAtom = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#binaryExpressionAtom.
+SqlParserVisitor.prototype.visitBinaryExpressionAtom = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#fullColumnNameExpressionAtom.
+SqlParserVisitor.prototype.visitFullColumnNameExpressionAtom = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#bitExpressionAtom.
+SqlParserVisitor.prototype.visitBitExpressionAtom = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#unaryOperator.
+SqlParserVisitor.prototype.visitUnaryOperator = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#comparisonOperator.
+SqlParserVisitor.prototype.visitComparisonOperator = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#logicalOperator.
+SqlParserVisitor.prototype.visitLogicalOperator = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#bitOperator.
+SqlParserVisitor.prototype.visitBitOperator = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#mathOperator.
+SqlParserVisitor.prototype.visitMathOperator = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#charsetNameBase.
+SqlParserVisitor.prototype.visitCharsetNameBase = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#transactionLevelBase.
+SqlParserVisitor.prototype.visitTransactionLevelBase = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#privilegesBase.
+SqlParserVisitor.prototype.visitPrivilegesBase = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#intervalTypeBase.
+SqlParserVisitor.prototype.visitIntervalTypeBase = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#dataTypeBase.
+SqlParserVisitor.prototype.visitDataTypeBase = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#keywordsCanBeId.
+SqlParserVisitor.prototype.visitKeywordsCanBeId = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by SqlParser#functionNameBase.
+SqlParserVisitor.prototype.visitFunctionNameBase = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+
+exports.SqlParserVisitor = SqlParserVisitor;
\ No newline at end of file
diff --git a/src/lib/hive/HiveSql.interp b/src/lib/hive/HiveSql.interp
new file mode 100644
index 0000000..227fd24
--- /dev/null
+++ b/src/lib/hive/HiveSql.interp
@@ -0,0 +1,985 @@
+token literal names:
+null
+'@'
+'#'
+'/'
+'%'
+'.'
+'*'
+'!'
+';'
+'-'
+'+'
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+
+token symbolic names:
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+T_GO
+T_BEGIN
+T_SEMICOLON
+T_END
+T_EXCEPTION
+T_WHEN
+L_ID
+T_THEN
+T_NULL
+T_SET
+T_COMMA
+T_COLON
+T_EQUAL
+T_OPEN_P
+T_CLOSE_P
+T_ALLOCATE
+T_CURSOR
+T_FOR
+T_RESULT
+T_PROCEDURE
+T_ASSOCIATE
+T_LOCATOR
+T_LOCATORS
+T_WITH
+T_TRANSACTION
+T_BREAK
+T_CALL
+T_DECLARE
+T_AS
+T_CONSTANT
+T_CONDITION
+T_IS
+T_RETURN
+T_ONLY
+T_TO
+T_CALLER
+T_CLIENT
+T_WITHOUT
+T_CONTINUE
+T_EXIT
+T_HANDLER
+T_SQLEXCEPTION
+T_SQLWARNING
+T_NOT
+T_FOUND
+T_GLOBAL
+T_TEMPORARY
+T_TABLE
+T_CREATE
+T_IF
+T_EXISTS
+T_LOCAL
+T_MULTISET
+T_VOLATILE
+T_LIKE
+T_CONSTRAINT
+T_PRIMARY
+T_KEY
+T_UNIQUE
+T_REFERENCES
+T_IDENTITY
+L_INT
+T_AUTO_INCREMENT
+T_ENABLE
+T_CLUSTERED
+T_ASC
+T_DESC
+T_FOREIGN
+T_ON
+T_UPDATE
+T_DELETE
+T_NO
+T_ACTION
+T_RESTRICT
+T_DEFAULT
+T_CASCADE
+T_LOG
+T_FALLBACK
+T_COMMIT
+T_PRESERVE
+T_ROWS
+T_SEGMENT
+T_CREATION
+T_IMMEDIATE
+T_DEFERRED
+T_PCTFREE
+T_PCTUSED
+T_INITRANS
+T_MAXTRANS
+T_NOCOMPRESS
+T_LOGGING
+T_NOLOGGING
+T_STORAGE
+T_TABLESPACE
+T_INDEX
+T_IN
+T_REPLACE
+T_DISTRIBUTE
+T_BY
+T_HASH
+T_LOGGED
+T_COMPRESS
+T_YES
+T_DEFINITION
+T_DROP
+T_DATA
+T_STORED
+T_ROW
+T_FORMAT
+T_DELIMITED
+T_FIELDS
+T_TERMINATED
+T_ESCAPED
+T_COLLECTION
+T_ITEMS
+T_MAP
+T_KEYS
+T_LINES
+T_DEFINED
+T_TEXTIMAGE_ON
+T_COMMENT
+T_CHARACTER
+T_CHARSET
+T_ENGINE
+T_ALTER
+T_ADD2
+T_CHAR
+T_BIGINT
+T_BINARY_DOUBLE
+T_BINARY_FLOAT
+T_BINARY_INTEGER
+T_BIT
+T_DATE
+T_DATETIME
+T_DEC
+T_DECIMAL
+T_DOUBLE
+T_PRECISION
+T_FLOAT
+T_INT
+T_INT2
+T_INT4
+T_INT8
+T_INTEGER
+T_NCHAR
+T_NVARCHAR
+T_NUMBER
+T_NUMERIC
+T_PLS_INTEGER
+T_REAL
+T_RESULT_SET_LOCATOR
+T_VARYING
+T_SIMPLE_FLOAT
+T_SIMPLE_DOUBLE
+T_SIMPLE_INTEGER
+T_SMALLINT
+T_SMALLDATETIME
+T_STRING
+T_SYS_REFCURSOR
+T_TIMESTAMP
+T_TINYINT
+T_VARCHAR
+T_VARCHAR2
+T_XML
+T_TYPE
+T_ROWTYPE
+T_MAX
+T_BYTE
+T_CASESPECIFIC
+T_CS
+T_DATABASE
+T_SCHEMA
+T_LOCATION
+T_OR
+T_FUNCTION
+T_RETURNS
+T_PACKAGE
+T_PROC
+T_BODY
+T_OUT
+T_INOUT
+T_LANGUAGE
+T_SQL
+T_SECURITY
+T_CREATOR
+T_DEFINER
+T_INVOKER
+T_OWNER
+T_DYNAMIC
+T_SETS
+T_EXEC
+T_EXECUTE
+T_INTO
+T_ELSE
+T_ELSIF
+T_ELSEIF
+T_INCLUDE
+T_INSERT
+T_OVERWRITE
+T_VALUES
+T_DIRECTORY
+T_GET
+T_DIAGNOSTICS
+T_MESSAGE_TEXT
+T_ROW_COUNT
+T_GRANT
+T_ROLE
+T_LEAVE
+T_OBJECT
+T_AT
+T_OPEN
+T_FETCH
+T_FROM
+T_COLLECT
+T_STATISTICS
+T_STATS
+T_COLUMN
+T_CLOSE
+T_CMP
+T_SUM
+T_COPY
+T_HDFS
+T_BATCHSIZE
+T_DELIMITER
+T_SQLINSERT
+T_IGNORE
+T_WORK
+T_PRINT
+T_QUIT
+T_RAISE
+T_RESIGNAL
+T_SQLSTATE
+T_VALUE
+T_ROLLBACK
+T_CURRENT
+T_CURRENT_SCHEMA
+T_ANSI_NULLS
+T_ANSI_PADDING
+T_NOCOUNT
+T_QUOTED_IDENTIFIER
+T_XACT_ABORT
+T_OFF
+T_QUERY_BAND
+T_NONE
+T_SESSION
+T_SIGNAL
+T_SUMMARY
+T_TOP
+T_LIMIT
+T_TRUNCATE
+T_USE
+T_WHILE
+T_DO
+T_LOOP
+T_REVERSE
+T_DOT2
+T_STEP
+L_LABEL
+T_LESS
+T_GREATER
+T_USING
+T_UNION
+T_ALL
+T_EXCEPT
+T_INTERSECT
+T_SELECT
+T_SEL
+T_DISTINCT
+T_TITLE
+L_S_STRING
+T_INNER
+T_JOIN
+T_LEFT
+T_RIGHT
+T_FULL
+T_OUTER
+T_WHERE
+T_GROUP
+T_HAVING
+T_QUALIFY
+T_ORDER
+T_RR
+T_RS
+T_UR
+T_AND
+T_KEEP
+T_EXCLUSIVE
+T_SHARE
+T_LOCKS
+T_MERGE
+T_MATCHED
+T_DESCRIBE
+T_BETWEEN
+T_EQUAL2
+T_NOTEQUAL
+T_NOTEQUAL2
+T_LESSEQUAL
+T_GREATEREQUAL
+T_RLIKE
+T_REGEXP
+T_MUL
+T_DIV
+T_ADD
+T_SUB
+T_INTERVAL
+T_DAY
+T_DAYS
+T_MICROSECOND
+T_MICROSECONDS
+T_SECOND
+T_SECONDS
+T_PIPE
+T_CONCAT
+T_CASE
+T_ISOPEN
+T_NOTFOUND
+T_AVG
+T_COUNT
+T_COUNT_BIG
+T_CUME_DIST
+T_DENSE_RANK
+T_FIRST_VALUE
+T_LAG
+T_LAST_VALUE
+T_LEAD
+T_MIN
+T_RANK
+T_ROW_NUMBER
+T_STDEV
+T_VAR
+T_VARIANCE
+T_OVER
+T_PARTITION
+T_ACTIVITY_COUNT
+T_CAST
+T_CURRENT_DATE
+T_CURRENT_TIMESTAMP
+T_CURRENT_USER
+T_USER
+T_MAX_PART_STRING
+T_MIN_PART_STRING
+T_MAX_PART_INT
+T_MIN_PART_INT
+T_MAX_PART_DATE
+T_MIN_PART_DATE
+T_PART_COUNT
+T_PART_LOC
+T_TRIM
+T_SUBSTRING
+T_SYSDATE
+T_HIVE
+T_HOST
+L_FILE
+L_D_STRING
+L_DEC
+T_TRUE
+T_FALSE
+T_DIR
+T_FILE
+T_FILES
+T_NEW
+T_PWD
+T_SESSIONS
+T_SUBDIR
+
+rule names:
+program
+block
+begin_end_block
+single_block_stmt
+block_end
+proc_block
+stmt
+semicolon_stmt
+exception_block
+exception_block_item
+null_stmt
+expr_stmt
+assignment_stmt
+assignment_stmt_item
+assignment_stmt_single_item
+assignment_stmt_multiple_item
+assignment_stmt_select_item
+allocate_cursor_stmt
+associate_locator_stmt
+begin_transaction_stmt
+break_stmt
+call_stmt
+declare_stmt
+declare_block
+declare_block_inplace
+declare_stmt_item
+declare_var_item
+declare_condition_item
+declare_cursor_item
+cursor_with_return
+cursor_without_return
+declare_handler_item
+declare_temporary_table_item
+create_table_stmt
+create_local_temp_table_stmt
+create_table_definition
+create_table_columns
+create_table_columns_item
+column_name
+create_table_column_inline_cons
+create_table_column_cons
+create_table_fk_action
+create_table_preoptions
+create_table_preoptions_item
+create_table_preoptions_td_item
+create_table_options
+create_table_options_item
+create_table_options_ora_item
+create_table_options_db2_item
+create_table_options_td_item
+create_table_options_hive_item
+create_table_hive_row_format
+create_table_hive_row_format_fields
+create_table_options_mssql_item
+create_table_options_mysql_item
+alter_table_stmt
+alter_table_item
+alter_table_add_constraint
+alter_table_add_constraint_item
+dtype
+dtype_len
+dtype_attr
+dtype_default
+create_database_stmt
+create_database_option
+create_function_stmt
+create_function_return
+create_package_stmt
+package_spec
+package_spec_item
+create_package_body_stmt
+package_body
+package_body_item
+create_procedure_stmt
+create_routine_params
+create_routine_param_item
+create_routine_options
+create_routine_option
+drop_stmt
+end_transaction_stmt
+exec_stmt
+if_stmt
+if_plsql_stmt
+if_tsql_stmt
+if_bteq_stmt
+elseif_block
+else_block
+include_stmt
+insert_stmt
+insert_stmt_cols
+insert_stmt_rows
+insert_stmt_row
+insert_directory_stmt
+exit_stmt
+get_diag_stmt
+get_diag_stmt_item
+get_diag_stmt_exception_item
+get_diag_stmt_rowcount_item
+grant_stmt
+grant_stmt_item
+leave_stmt
+map_object_stmt
+open_stmt
+fetch_stmt
+collect_stats_stmt
+collect_stats_clause
+close_stmt
+cmp_stmt
+cmp_source
+copy_from_local_stmt
+copy_stmt
+copy_source
+copy_target
+copy_option
+copy_file_option
+commit_stmt
+create_index_stmt
+create_index_col
+index_storage_clause
+index_mssql_storage_clause
+print_stmt
+quit_stmt
+raise_stmt
+resignal_stmt
+return_stmt
+rollback_stmt
+set_session_option
+set_current_schema_option
+set_mssql_session_option
+set_teradata_session_option
+signal_stmt
+summary_stmt
+truncate_stmt
+use_stmt
+values_into_stmt
+while_stmt
+for_cursor_stmt
+for_range_stmt
+label
+using_clause
+select_stmt
+cte_select_stmt
+cte_select_stmt_item
+cte_select_cols
+fullselect_stmt
+fullselect_stmt_item
+fullselect_set_clause
+subselect_stmt
+select_list
+select_list_set
+select_list_limit
+select_list_item
+select_list_alias
+select_list_asterisk
+into_clause
+from_clause
+from_table_clause
+from_table_name_clause
+from_subselect_clause
+from_join_clause
+from_join_type_clause
+from_table_values_clause
+from_table_values_row
+from_alias_clause
+table_name
+where_clause
+group_by_clause
+having_clause
+qualify_clause
+order_by_clause
+select_options
+select_options_item
+update_stmt
+update_assignment
+update_table
+update_upsert
+merge_stmt
+merge_table
+merge_condition
+merge_action
+delete_stmt
+delete_alias
+describe_stmt
+bool_expr
+bool_expr_atom
+bool_expr_unary
+bool_expr_single_in
+bool_expr_multi_in
+bool_expr_binary
+bool_expr_logical_operator
+bool_expr_binary_operator
+expr
+expr_atom
+expr_interval
+interval_item
+expr_concat
+expr_concat_item
+expr_case
+expr_case_simple
+expr_case_searched
+expr_cursor_attribute
+expr_agg_window_func
+expr_func_all_distinct
+expr_func_over_clause
+expr_func_partition_by_clause
+expr_spec_func
+expr_func
+expr_func_params
+func_param
+expr_select
+expr_file
+hive
+hive_item
+host
+host_cmd
+host_stmt
+file_name
+date_literal
+timestamp_literal
+ident
+string
+int_number
+dec_number
+bool_literal
+null_const
+non_reserved_words
+
+
+atn:
+[3, 24715, 42794, 33075, 47597, 16764, 15335, 30598, 22884, 3, 376, 3345, 4, 2, 9, 2, 4, 3, 9, 3, 4, 4, 9, 4, 4, 5, 9, 5, 4, 6, 9, 6, 4, 7, 9, 7, 4, 8, 9, 8, 4, 9, 9, 9, 4, 10, 9, 10, 4, 11, 9, 11, 4, 12, 9, 12, 4, 13, 9, 13, 4, 14, 9, 14, 4, 15, 9, 15, 4, 16, 9, 16, 4, 17, 9, 17, 4, 18, 9, 18, 4, 19, 9, 19, 4, 20, 9, 20, 4, 21, 9, 21, 4, 22, 9, 22, 4, 23, 9, 23, 4, 24, 9, 24, 4, 25, 9, 25, 4, 26, 9, 26, 4, 27, 9, 27, 4, 28, 9, 28, 4, 29, 9, 29, 4, 30, 9, 30, 4, 31, 9, 31, 4, 32, 9, 32, 4, 33, 9, 33, 4, 34, 9, 34, 4, 35, 9, 35, 4, 36, 9, 36, 4, 37, 9, 37, 4, 38, 9, 38, 4, 39, 9, 39, 4, 40, 9, 40, 4, 41, 9, 41, 4, 42, 9, 42, 4, 43, 9, 43, 4, 44, 9, 44, 4, 45, 9, 45, 4, 46, 9, 46, 4, 47, 9, 47, 4, 48, 9, 48, 4, 49, 9, 49, 4, 50, 9, 50, 4, 51, 9, 51, 4, 52, 9, 52, 4, 53, 9, 53, 4, 54, 9, 54, 4, 55, 9, 55, 4, 56, 9, 56, 4, 57, 9, 57, 4, 58, 9, 58, 4, 59, 9, 59, 4, 60, 9, 60, 4, 61, 9, 61, 4, 62, 9, 62, 4, 63, 9, 63, 4, 64, 9, 64, 4, 65, 9, 65, 4, 66, 9, 66, 4, 67, 9, 67, 4, 68, 9, 68, 4, 69, 9, 69, 4, 70, 9, 70, 4, 71, 9, 71, 4, 72, 9, 72, 4, 73, 9, 73, 4, 74, 9, 74, 4, 75, 9, 75, 4, 76, 9, 76, 4, 77, 9, 77, 4, 78, 9, 78, 4, 79, 9, 79, 4, 80, 9, 80, 4, 81, 9, 81, 4, 82, 9, 82, 4, 83, 9, 83, 4, 84, 9, 84, 4, 85, 9, 85, 4, 86, 9, 86, 4, 87, 9, 87, 4, 88, 9, 88, 4, 89, 9, 89, 4, 90, 9, 90, 4, 91, 9, 91, 4, 92, 9, 92, 4, 93, 9, 93, 4, 94, 9, 94, 4, 95, 9, 95, 4, 96, 9, 96, 4, 97, 9, 97, 4, 98, 9, 98, 4, 99, 9, 99, 4, 100, 9, 100, 4, 101, 9, 101, 4, 102, 9, 102, 4, 103, 9, 103, 4, 104, 9, 104, 4, 105, 9, 105, 4, 106, 9, 106, 4, 107, 9, 107, 4, 108, 9, 108, 4, 109, 9, 109, 4, 110, 9, 110, 4, 111, 9, 111, 4, 112, 9, 112, 4, 113, 9, 113, 4, 114, 9, 114, 4, 115, 9, 115, 4, 116, 9, 116, 4, 117, 9, 117, 4, 118, 9, 118, 4, 119, 9, 119, 4, 120, 9, 120, 4, 121, 9, 121, 4, 122, 9, 122, 4, 123, 9, 123, 4, 124, 9, 124, 4, 125, 9, 125, 4, 126, 9, 126, 4, 127, 9, 127, 4, 128, 9, 128, 4, 129, 9, 129, 4, 130, 9, 130, 4, 131, 9, 131, 4, 132, 9, 132, 4, 133, 9, 133, 4, 134, 9, 134, 4, 135, 9, 135, 4, 136, 9, 136, 4, 137, 9, 137, 4, 138, 9, 138, 4, 139, 9, 139, 4, 140, 9, 140, 4, 141, 9, 141, 4, 142, 9, 142, 4, 143, 9, 143, 4, 144, 9, 144, 4, 145, 9, 145, 4, 146, 9, 146, 4, 147, 9, 147, 4, 148, 9, 148, 4, 149, 9, 149, 4, 150, 9, 150, 4, 151, 9, 151, 4, 152, 9, 152, 4, 153, 9, 153, 4, 154, 9, 154, 4, 155, 9, 155, 4, 156, 9, 156, 4, 157, 9, 157, 4, 158, 9, 158, 4, 159, 9, 159, 4, 160, 9, 160, 4, 161, 9, 161, 4, 162, 9, 162, 4, 163, 9, 163, 4, 164, 9, 164, 4, 165, 9, 165, 4, 166, 9, 166, 4, 167, 9, 167, 4, 168, 9, 168, 4, 169, 9, 169, 4, 170, 9, 170, 4, 171, 9, 171, 4, 172, 9, 172, 4, 173, 9, 173, 4, 174, 9, 174, 4, 175, 9, 175, 4, 176, 9, 176, 4, 177, 9, 177, 4, 178, 9, 178, 4, 179, 9, 179, 4, 180, 9, 180, 4, 181, 9, 181, 4, 182, 9, 182, 4, 183, 9, 183, 4, 184, 9, 184, 4, 185, 9, 185, 4, 186, 9, 186, 4, 187, 9, 187, 4, 188, 9, 188, 4, 189, 9, 189, 4, 190, 9, 190, 4, 191, 9, 191, 4, 192, 9, 192, 4, 193, 9, 193, 4, 194, 9, 194, 4, 195, 9, 195, 4, 196, 9, 196, 4, 197, 9, 197, 4, 198, 9, 198, 4, 199, 9, 199, 4, 200, 9, 200, 4, 201, 9, 201, 4, 202, 9, 202, 4, 203, 9, 203, 4, 204, 9, 204, 4, 205, 9, 205, 4, 206, 9, 206, 4, 207, 9, 207, 4, 208, 9, 208, 4, 209, 9, 209, 4, 210, 9, 210, 4, 211, 9, 211, 4, 212, 9, 212, 4, 213, 9, 213, 4, 214, 9, 214, 4, 215, 9, 215, 4, 216, 9, 216, 4, 217, 9, 217, 4, 218, 9, 218, 4, 219, 9, 219, 4, 220, 9, 220, 4, 221, 9, 221, 4, 222, 9, 222, 4, 223, 9, 223, 4, 224, 9, 224, 4, 225, 9, 225, 4, 226, 9, 226, 4, 227, 9, 227, 3, 2, 3, 2, 3, 2, 3, 3, 3, 3, 5, 3, 460, 10, 3, 3, 3, 5, 3, 463, 10, 3, 6, 3, 465, 10, 3, 13, 3, 14, 3, 466, 3, 4, 5, 4, 470, 10, 4, 3, 4, 3, 4, 3, 4, 5, 4, 475, 10, 4, 3, 4, 3, 4, 3, 5, 3, 5, 3, 5, 5, 5, 482, 10, 5, 3, 5, 3, 5, 3, 5, 3, 5, 5, 5, 488, 10, 5, 5, 5, 490, 10, 5, 3, 6, 3, 6, 3, 6, 3, 7, 3, 7, 6, 7, 497, 10, 7, 13, 7, 14, 7, 498, 3, 7, 5, 7, 502, 10, 7, 5, 7, 504, 10, 7, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 5, 8, 567, 10, 8, 3, 9, 3, 9, 3, 10, 3, 10, 6, 10, 573, 10, 10, 13, 10, 14, 10, 574, 3, 11, 3, 11, 3, 11, 3, 11, 3, 11, 3, 11, 3, 12, 3, 12, 3, 13, 3, 13, 3, 13, 3, 14, 3, 14, 3, 14, 5, 14, 591, 10, 14, 3, 14, 3, 14, 3, 14, 7, 14, 596, 10, 14, 12, 14, 14, 14, 599, 11, 14, 5, 14, 601, 10, 14, 3, 15, 3, 15, 3, 15, 5, 15, 606, 10, 15, 3, 16, 3, 16, 5, 16, 610, 10, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 5, 16, 619, 10, 16, 3, 16, 3, 16, 3, 16, 5, 16, 624, 10, 16, 3, 17, 3, 17, 3, 17, 3, 17, 7, 17, 630, 10, 17, 12, 17, 14, 17, 633, 11, 17, 3, 17, 3, 17, 5, 17, 637, 10, 17, 3, 17, 3, 17, 3, 17, 3, 17, 3, 17, 7, 17, 644, 10, 17, 12, 17, 14, 17, 647, 11, 17, 3, 17, 3, 17, 3, 18, 3, 18, 3, 18, 3, 18, 3, 18, 7, 18, 656, 10, 18, 12, 18, 14, 18, 659, 11, 18, 3, 18, 3, 18, 5, 18, 663, 10, 18, 3, 18, 5, 18, 666, 10, 18, 3, 18, 3, 18, 3, 18, 3, 18, 3, 18, 3, 19, 3, 19, 3, 19, 3, 19, 3, 19, 3, 19, 3, 19, 5, 19, 680, 10, 19, 3, 19, 3, 19, 3, 20, 3, 20, 3, 20, 5, 20, 687, 10, 20, 3, 20, 3, 20, 3, 20, 3, 20, 3, 20, 7, 20, 694, 10, 20, 12, 20, 14, 20, 697, 11, 20, 3, 20, 3, 20, 3, 20, 3, 20, 3, 20, 3, 21, 3, 21, 3, 21, 3, 22, 3, 22, 3, 23, 3, 23, 3, 23, 3, 23, 5, 23, 713, 10, 23, 3, 23, 3, 23, 5, 23, 717, 10, 23, 3, 24, 3, 24, 3, 24, 3, 24, 7, 24, 723, 10, 24, 12, 24, 14, 24, 726, 11, 24, 3, 25, 3, 25, 3, 25, 3, 25, 3, 25, 3, 25, 7, 25, 734, 10, 25, 12, 25, 14, 25, 737, 11, 25, 3, 26, 3, 26, 3, 26, 3, 26, 3, 26, 7, 26, 744, 10, 26, 12, 26, 14, 26, 747, 11, 26, 3, 27, 3, 27, 3, 27, 3, 27, 3, 27, 5, 27, 754, 10, 27, 3, 28, 3, 28, 3, 28, 7, 28, 759, 10, 28, 12, 28, 14, 28, 762, 11, 28, 3, 28, 5, 28, 765, 10, 28, 3, 28, 3, 28, 5, 28, 769, 10, 28, 3, 28, 7, 28, 772, 10, 28, 12, 28, 14, 28, 775, 11, 28, 3, 28, 5, 28, 778, 10, 28, 3, 28, 3, 28, 3, 28, 5, 28, 783, 10, 28, 3, 28, 3, 28, 5, 28, 787, 10, 28, 3, 28, 3, 28, 5, 28, 791, 10, 28, 3, 29, 3, 29, 3, 29, 3, 30, 3, 30, 3, 30, 3, 30, 3, 30, 5, 30, 801, 10, 30, 3, 30, 3, 30, 5, 30, 805, 10, 30, 3, 30, 3, 30, 3, 30, 5, 30, 810, 10, 30, 3, 31, 3, 31, 3, 31, 5, 31, 815, 10, 31, 3, 31, 3, 31, 5, 31, 819, 10, 31, 3, 32, 3, 32, 3, 32, 3, 33, 3, 33, 3, 33, 3, 33, 3, 33, 3, 33, 3, 33, 3, 33, 5, 33, 832, 10, 33, 3, 33, 3, 33, 3, 34, 5, 34, 837, 10, 34, 3, 34, 3, 34, 3, 34, 3, 34, 5, 34, 843, 10, 34, 3, 34, 3, 34, 3, 35, 3, 35, 3, 35, 3, 35, 3, 35, 5, 35, 852, 10, 35, 3, 35, 3, 35, 5, 35, 856, 10, 35, 3, 35, 3, 35, 3, 36, 3, 36, 3, 36, 3, 36, 5, 36, 864, 10, 36, 3, 36, 5, 36, 867, 10, 36, 3, 36, 3, 36, 3, 36, 5, 36, 872, 10, 36, 3, 36, 3, 36, 3, 37, 5, 37, 877, 10, 37, 3, 37, 3, 37, 3, 37, 3, 37, 3, 37, 5, 37, 884, 10, 37, 3, 37, 3, 37, 3, 37, 3, 37, 3, 37, 3, 37, 3, 37, 5, 37, 893, 10, 37, 3, 37, 5, 37, 896, 10, 37, 3, 38, 3, 38, 3, 38, 7, 38, 901, 10, 38, 12, 38, 14, 38, 904, 11, 38, 3, 39, 3, 39, 3, 39, 5, 39, 909, 10, 39, 3, 39, 7, 39, 912, 10, 39, 12, 39, 14, 39, 915, 11, 39, 3, 39, 7, 39, 918, 10, 39, 12, 39, 14, 39, 921, 11, 39, 3, 39, 3, 39, 5, 39, 925, 10, 39, 3, 39, 5, 39, 928, 10, 39, 3, 40, 3, 40, 3, 41, 3, 41, 5, 41, 934, 10, 41, 3, 41, 3, 41, 3, 41, 3, 41, 3, 41, 3, 41, 3, 41, 3, 41, 3, 41, 3, 41, 7, 41, 946, 10, 41, 12, 41, 14, 41, 949, 11, 41, 3, 41, 3, 41, 3, 41, 3, 41, 3, 41, 7, 41, 956, 10, 41, 12, 41, 14, 41, 959, 11, 41, 3, 41, 3, 41, 3, 41, 5, 41, 964, 10, 41, 3, 42, 3, 42, 3, 42, 5, 42, 969, 10, 42, 3, 42, 3, 42, 3, 42, 5, 42, 974, 10, 42, 3, 42, 3, 42, 3, 42, 5, 42, 979, 10, 42, 7, 42, 981, 10, 42, 12, 42, 14, 42, 984, 11, 42, 3, 42, 3, 42, 5, 42, 988, 10, 42, 3, 42, 5, 42, 991, 10, 42, 3, 42, 3, 42, 3, 42, 3, 42, 3, 42, 3, 42, 7, 42, 999, 10, 42, 12, 42, 14, 42, 1002, 11, 42, 3, 42, 3, 42, 3, 42, 3, 42, 3, 42, 3, 42, 3, 42, 7, 42, 1011, 10, 42, 12, 42, 14, 42, 1014, 11, 42, 3, 42, 3, 42, 7, 42, 1018, 10, 42, 12, 42, 14, 42, 1021, 11, 42, 5, 42, 1023, 10, 42, 3, 43, 3, 43, 3, 43, 3, 43, 3, 43, 3, 43, 3, 43, 3, 43, 3, 43, 3, 43, 5, 43, 1035, 10, 43, 3, 44, 6, 44, 1038, 10, 44, 13, 44, 14, 44, 1039, 3, 45, 3, 45, 3, 45, 5, 45, 1045, 10, 45, 3, 46, 5, 46, 1048, 10, 46, 3, 46, 3, 46, 3, 47, 6, 47, 1053, 10, 47, 13, 47, 14, 47, 1054, 3, 48, 3, 48, 3, 48, 3, 48, 3, 48, 3, 48, 3, 48, 3, 48, 3, 48, 3, 48, 5, 48, 1067, 10, 48, 3, 49, 3, 49, 3, 49, 3, 49, 3, 49, 3, 49, 3, 49, 3, 49, 3, 49, 3, 49, 3, 49, 6, 49, 1080, 10, 49, 13, 49, 14, 49, 1081, 3, 49, 3, 49, 3, 49, 5, 49, 1087, 10, 49, 3, 50, 5, 50, 1090, 10, 50, 3, 50, 3, 50, 3, 50, 3, 50, 3, 50, 3, 50, 3, 50, 3, 50, 3, 50, 3, 50, 3, 50, 7, 50, 1103, 10, 50, 12, 50, 14, 50, 1106, 11, 50, 3, 50, 3, 50, 3, 50, 5, 50, 1111, 10, 50, 3, 50, 3, 50, 3, 50, 3, 50, 3, 50, 3, 50, 3, 50, 3, 50, 3, 50, 5, 50, 1122, 10, 50, 3, 51, 5, 51, 1125, 10, 51, 3, 51, 3, 51, 3, 51, 3, 51, 3, 51, 3, 51, 7, 51, 1133, 10, 51, 12, 51, 14, 51, 1136, 11, 51, 3, 51, 3, 51, 3, 51, 3, 51, 5, 51, 1142, 10, 51, 3, 52, 3, 52, 3, 52, 3, 52, 5, 52, 1148, 10, 52, 3, 53, 3, 53, 3, 53, 3, 53, 7, 53, 1154, 10, 53, 12, 53, 14, 53, 1157, 11, 53, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 5, 54, 1166, 10, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 5, 54, 1186, 10, 54, 3, 55, 3, 55, 3, 55, 3, 55, 5, 55, 1192, 10, 55, 3, 56, 3, 56, 5, 56, 1196, 10, 56, 3, 56, 3, 56, 3, 56, 5, 56, 1201, 10, 56, 3, 56, 3, 56, 5, 56, 1205, 10, 56, 3, 56, 3, 56, 3, 56, 5, 56, 1210, 10, 56, 3, 56, 5, 56, 1213, 10, 56, 3, 56, 3, 56, 3, 56, 5, 56, 1218, 10, 56, 3, 56, 5, 56, 1221, 10, 56, 3, 57, 3, 57, 3, 57, 3, 57, 3, 57, 3, 58, 3, 58, 3, 59, 3, 59, 3, 59, 5, 59, 1233, 10, 59, 3, 59, 3, 59, 3, 60, 3, 60, 3, 60, 5, 60, 1240, 10, 60, 3, 60, 3, 60, 3, 60, 5, 60, 1245, 10, 60, 3, 60, 3, 60, 3, 60, 5, 60, 1250, 10, 60, 7, 60, 1252, 10, 60, 12, 60, 14, 60, 1255, 11, 60, 3, 60, 3, 60, 5, 60, 1259, 10, 60, 3, 60, 5, 60, 1262, 10, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 7, 60, 1270, 10, 60, 12, 60, 14, 60, 1273, 11, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 7, 60, 1282, 10, 60, 12, 60, 14, 60, 1285, 11, 60, 3, 60, 3, 60, 7, 60, 1289, 10, 60, 12, 60, 14, 60, 1292, 11, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 5, 60, 1299, 10, 60, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 5, 61, 1314, 10, 61, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 5, 61, 1345, 10, 61, 5, 61, 1347, 10, 61, 3, 62, 3, 62, 3, 62, 5, 62, 1352, 10, 62, 3, 62, 3, 62, 5, 62, 1356, 10, 62, 3, 62, 3, 62, 3, 63, 5, 63, 1361, 10, 63, 3, 63, 3, 63, 3, 63, 3, 63, 3, 63, 5, 63, 1368, 10, 63, 3, 63, 5, 63, 1371, 10, 63, 3, 64, 5, 64, 1374, 10, 64, 3, 64, 3, 64, 3, 64, 5, 64, 1379, 10, 64, 3, 64, 3, 64, 5, 64, 1383, 10, 64, 5, 64, 1385, 10, 64, 3, 65, 3, 65, 3, 65, 3, 65, 3, 65, 5, 65, 1392, 10, 65, 3, 65, 3, 65, 7, 65, 1396, 10, 65, 12, 65, 14, 65, 1399, 11, 65, 3, 66, 3, 66, 3, 66, 3, 66, 5, 66, 1405, 10, 66, 3, 67, 3, 67, 3, 67, 3, 67, 5, 67, 1411, 10, 67, 3, 67, 5, 67, 1414, 10, 67, 3, 67, 3, 67, 3, 67, 5, 67, 1419, 10, 67, 3, 67, 3, 67, 5, 67, 1423, 10, 67, 3, 67, 5, 67, 1426, 10, 67, 3, 67, 3, 67, 3, 68, 3, 68, 3, 68, 5, 68, 1433, 10, 68, 3, 69, 3, 69, 3, 69, 3, 69, 5, 69, 1439, 10, 69, 3, 69, 5, 69, 1442, 10, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 5, 69, 1452, 10, 69, 3, 70, 3, 70, 3, 70, 3, 70, 3, 70, 7, 70, 1459, 10, 70, 12, 70, 14, 70, 1462, 11, 70, 3, 71, 3, 71, 3, 71, 3, 71, 5, 71, 1468, 10, 71, 3, 71, 3, 71, 3, 71, 3, 71, 3, 71, 5, 71, 1475, 10, 71, 5, 71, 1477, 10, 71, 3, 72, 3, 72, 3, 72, 3, 72, 5, 72, 1483, 10, 72, 3, 72, 5, 72, 1486, 10, 72, 3, 72, 3, 72, 3, 72, 3, 72, 3, 72, 3, 72, 3, 72, 3, 72, 3, 72, 5, 72, 1497, 10, 72, 3, 73, 3, 73, 3, 73, 3, 73, 3, 73, 7, 73, 1504, 10, 73, 12, 73, 14, 73, 1507, 11, 73, 3, 74, 3, 74, 3, 74, 5, 74, 1512, 10, 74, 3, 75, 3, 75, 3, 75, 3, 75, 5, 75, 1518, 10, 75, 3, 75, 5, 75, 1521, 10, 75, 3, 75, 3, 75, 3, 75, 5, 75, 1526, 10, 75, 3, 75, 5, 75, 1529, 10, 75, 3, 75, 5, 75, 1532, 10, 75, 3, 75, 5, 75, 1535, 10, 75, 3, 75, 5, 75, 1538, 10, 75, 3, 75, 3, 75, 3, 75, 3, 75, 5, 75, 1544, 10, 75, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 7, 76, 1552, 10, 76, 12, 76, 14, 76, 1555, 11, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 7, 76, 1563, 10, 76, 12, 76, 14, 76, 1566, 11, 76, 5, 76, 1568, 10, 76, 3, 77, 3, 77, 3, 77, 3, 77, 3, 77, 5, 77, 1575, 10, 77, 3, 77, 3, 77, 3, 77, 5, 77, 1580, 10, 77, 3, 77, 7, 77, 1583, 10, 77, 12, 77, 14, 77, 1586, 11, 77, 3, 77, 5, 77, 1589, 10, 77, 3, 77, 3, 77, 3, 77, 3, 77, 3, 77, 3, 77, 5, 77, 1597, 10, 77, 3, 77, 3, 77, 5, 77, 1601, 10, 77, 3, 77, 7, 77, 1604, 10, 77, 12, 77, 14, 77, 1607, 11, 77, 3, 77, 5, 77, 1610, 10, 77, 5, 77, 1612, 10, 77, 3, 78, 6, 78, 1615, 10, 78, 13, 78, 14, 78, 1616, 3, 79, 3, 79, 3, 79, 3, 79, 3, 79, 3, 79, 5, 79, 1625, 10, 79, 3, 79, 3, 79, 3, 79, 5, 79, 1630, 10, 79, 3, 80, 3, 80, 3, 80, 3, 80, 5, 80, 1636, 10, 80, 3, 80, 3, 80, 3, 80, 3, 80, 3, 80, 5, 80, 1643, 10, 80, 3, 80, 5, 80, 1646, 10, 80, 3, 81, 3, 81, 3, 81, 3, 82, 3, 82, 5, 82, 1653, 10, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 5, 82, 1661, 10, 82, 3, 82, 3, 82, 3, 82, 3, 82, 7, 82, 1667, 10, 82, 12, 82, 14, 82, 1670, 11, 82, 5, 82, 1672, 10, 82, 3, 82, 5, 82, 1675, 10, 82, 3, 83, 3, 83, 3, 83, 5, 83, 1680, 10, 83, 3, 84, 3, 84, 3, 84, 3, 84, 3, 84, 7, 84, 1687, 10, 84, 12, 84, 14, 84, 1690, 11, 84, 3, 84, 5, 84, 1693, 10, 84, 3, 84, 3, 84, 3, 84, 3, 85, 3, 85, 3, 85, 3, 85, 3, 85, 5, 85, 1703, 10, 85, 3, 86, 3, 86, 3, 86, 3, 86, 3, 86, 3, 86, 3, 87, 3, 87, 3, 87, 3, 87, 3, 87, 3, 88, 3, 88, 3, 88, 3, 89, 3, 89, 3, 89, 5, 89, 1722, 10, 89, 3, 90, 3, 90, 3, 90, 3, 90, 3, 90, 5, 90, 1729, 10, 90, 5, 90, 1731, 10, 90, 3, 90, 3, 90, 5, 90, 1735, 10, 90, 3, 90, 3, 90, 5, 90, 1739, 10, 90, 3, 91, 3, 91, 3, 91, 3, 91, 7, 91, 1745, 10, 91, 12, 91, 14, 91, 1748, 11, 91, 3, 91, 3, 91, 3, 92, 3, 92, 3, 92, 3, 92, 7, 92, 1756, 10, 92, 12, 92, 14, 92, 1759, 11, 92, 3, 93, 3, 93, 3, 93, 3, 93, 7, 93, 1765, 10, 93, 12, 93, 14, 93, 1768, 11, 93, 3, 93, 3, 93, 3, 94, 3, 94, 3, 94, 5, 94, 1775, 10, 94, 3, 94, 3, 94, 3, 94, 3, 94, 3, 95, 3, 95, 5, 95, 1783, 10, 95, 3, 95, 3, 95, 5, 95, 1787, 10, 95, 3, 96, 3, 96, 3, 96, 3, 96, 3, 97, 3, 97, 5, 97, 1795, 10, 97, 3, 98, 3, 98, 3, 98, 3, 98, 3, 98, 3, 98, 3, 99, 3, 99, 3, 99, 3, 99, 3, 100, 3, 100, 3, 100, 3, 100, 7, 100, 1811, 10, 100, 12, 100, 14, 100, 1814, 11, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 101, 3, 101, 3, 101, 3, 101, 3, 101, 3, 102, 3, 102, 5, 102, 1827, 10, 102, 3, 103, 3, 103, 3, 103, 3, 103, 3, 103, 5, 103, 1834, 10, 103, 3, 103, 3, 103, 5, 103, 1838, 10, 103, 3, 104, 3, 104, 3, 104, 3, 104, 3, 104, 5, 104, 1845, 10, 104, 5, 104, 1847, 10, 104, 3, 105, 3, 105, 5, 105, 1851, 10, 105, 3, 105, 3, 105, 3, 105, 3, 105, 3, 105, 7, 105, 1858, 10, 105, 12, 105, 14, 105, 1861, 11, 105, 3, 106, 3, 106, 3, 106, 3, 106, 3, 106, 5, 106, 1868, 10, 106, 3, 107, 3, 107, 3, 107, 3, 107, 3, 107, 7, 107, 1875, 10, 107, 12, 107, 14, 107, 1878, 11, 107, 3, 107, 3, 107, 3, 108, 3, 108, 3, 108, 3, 109, 3, 109, 3, 109, 3, 109, 3, 109, 3, 109, 3, 110, 3, 110, 5, 110, 1893, 10, 110, 3, 110, 3, 110, 3, 110, 3, 110, 5, 110, 1899, 10, 110, 3, 110, 3, 110, 5, 110, 1903, 10, 110, 3, 111, 3, 111, 3, 111, 3, 111, 3, 111, 3, 111, 7, 111, 1911, 10, 111, 12, 111, 14, 111, 1914, 11, 111, 3, 111, 3, 111, 3, 111, 7, 111, 1919, 10, 111, 12, 111, 14, 111, 1922, 11, 111, 3, 112, 3, 112, 3, 112, 3, 112, 3, 112, 3, 112, 5, 112, 1930, 10, 112, 3, 112, 3, 112, 5, 112, 1934, 10, 112, 3, 112, 3, 112, 7, 112, 1938, 10, 112, 12, 112, 14, 112, 1941, 11, 112, 3, 113, 3, 113, 5, 113, 1945, 10, 113, 3, 114, 3, 114, 5, 114, 1949, 10, 114, 3, 115, 3, 115, 3, 115, 3, 115, 3, 115, 3, 115, 3, 115, 3, 115, 5, 115, 1959, 10, 115, 3, 116, 3, 116, 3, 117, 3, 117, 5, 117, 1965, 10, 117, 3, 118, 3, 118, 5, 118, 1969, 10, 118, 3, 118, 3, 118, 3, 118, 3, 118, 3, 118, 3, 118, 3, 118, 3, 118, 7, 118, 1979, 10, 118, 12, 118, 14, 118, 1982, 11, 118, 3, 118, 3, 118, 3, 119, 3, 119, 5, 119, 1988, 10, 119, 3, 120, 3, 120, 3, 121, 3, 121, 3, 121, 3, 121, 3, 121, 3, 121, 3, 121, 3, 121, 3, 121, 3, 121, 7, 121, 2002, 10, 121, 12, 121, 14, 121, 2005, 11, 121, 3, 121, 3, 121, 7, 121, 2009, 10, 121, 12, 121, 14, 121, 2012, 11, 121, 3, 122, 3, 122, 3, 122, 3, 122, 3, 122, 3, 122, 3, 122, 5, 122, 2021, 10, 122, 3, 123, 5, 123, 2024, 10, 123, 3, 123, 3, 123, 5, 123, 2028, 10, 123, 3, 124, 3, 124, 3, 125, 3, 125, 3, 125, 5, 125, 2035, 10, 125, 3, 125, 3, 125, 3, 125, 3, 125, 3, 125, 5, 125, 2042, 10, 125, 5, 125, 2044, 10, 125, 3, 126, 3, 126, 5, 126, 2048, 10, 126, 3, 127, 3, 127, 5, 127, 2052, 10, 127, 3, 128, 3, 128, 3, 128, 5, 128, 2057, 10, 128, 3, 129, 5, 129, 2060, 10, 129, 3, 129, 3, 129, 5, 129, 2064, 10, 129, 3, 129, 5, 129, 2067, 10, 129, 3, 129, 3, 129, 3, 130, 3, 130, 3, 130, 3, 131, 3, 131, 3, 131, 3, 131, 5, 131, 2078, 10, 131, 3, 131, 5, 131, 2081, 10, 131, 3, 131, 3, 131, 3, 131, 3, 132, 3, 132, 3, 132, 3, 133, 3, 133, 3, 133, 5, 133, 2092, 10, 133, 3, 133, 3, 133, 3, 133, 3, 133, 5, 133, 2098, 10, 133, 3, 133, 3, 133, 5, 133, 2102, 10, 133, 5, 133, 2104, 10, 133, 3, 134, 3, 134, 5, 134, 2108, 10, 134, 3, 134, 3, 134, 3, 135, 3, 135, 3, 135, 3, 136, 3, 136, 5, 136, 2117, 10, 136, 3, 136, 3, 136, 3, 136, 7, 136, 2122, 10, 136, 12, 136, 14, 136, 2125, 11, 136, 3, 136, 5, 136, 2128, 10, 136, 3, 136, 3, 136, 5, 136, 2132, 10, 136, 3, 136, 3, 136, 3, 136, 7, 136, 2137, 10, 136, 12, 136, 14, 136, 2140, 11, 136, 3, 136, 5, 136, 2143, 10, 136, 3, 137, 3, 137, 3, 137, 3, 137, 3, 137, 3, 137, 5, 137, 2151, 10, 137, 3, 138, 3, 138, 3, 138, 3, 138, 5, 138, 2157, 10, 138, 3, 138, 3, 138, 5, 138, 2161, 10, 138, 3, 138, 3, 138, 3, 138, 3, 138, 3, 138, 3, 139, 3, 139, 3, 139, 3, 139, 5, 139, 2172, 10, 139, 3, 139, 3, 139, 3, 139, 3, 139, 3, 139, 5, 139, 2179, 10, 139, 3, 139, 3, 139, 3, 139, 3, 139, 3, 139, 3, 140, 3, 140, 3, 140, 3, 140, 3, 140, 3, 140, 5, 140, 2192, 10, 140, 3, 141, 3, 141, 3, 141, 3, 141, 7, 141, 2198, 10, 141, 12, 141, 14, 141, 2201, 11, 141, 3, 142, 5, 142, 2204, 10, 142, 3, 142, 3, 142, 3, 143, 3, 143, 3, 143, 3, 143, 7, 143, 2212, 10, 143, 12, 143, 14, 143, 2215, 11, 143, 3, 144, 3, 144, 5, 144, 2219, 10, 144, 3, 144, 3, 144, 3, 144, 3, 144, 3, 144, 3, 145, 3, 145, 3, 145, 3, 145, 7, 145, 2230, 10, 145, 12, 145, 14, 145, 2233, 11, 145, 3, 145, 3, 145, 3, 146, 3, 146, 3, 146, 3, 146, 7, 146, 2241, 10, 146, 12, 146, 14, 146, 2244, 11, 146, 3, 147, 3, 147, 3, 147, 3, 147, 3, 147, 5, 147, 2251, 10, 147, 3, 148, 3, 148, 5, 148, 2255, 10, 148, 3, 148, 3, 148, 5, 148, 2259, 10, 148, 3, 148, 3, 148, 5, 148, 2263, 10, 148, 5, 148, 2265, 10, 148, 3, 149, 3, 149, 3, 149, 5, 149, 2270, 10, 149, 3, 149, 5, 149, 2273, 10, 149, 3, 149, 5, 149, 2276, 10, 149, 3, 149, 5, 149, 2279, 10, 149, 3, 149, 3, 149, 5, 149, 2283, 10, 149, 3, 149, 5, 149, 2286, 10, 149, 3, 149, 5, 149, 2289, 10, 149, 3, 150, 5, 150, 2292, 10, 150, 3, 150, 5, 150, 2295, 10, 150, 3, 150, 3, 150, 3, 150, 7, 150, 2300, 10, 150, 12, 150, 14, 150, 2303, 11, 150, 3, 151, 3, 151, 3, 152, 3, 152, 3, 152, 3, 153, 3, 153, 3, 153, 5, 153, 2313, 10, 153, 3, 153, 3, 153, 5, 153, 2317, 10, 153, 3, 153, 5, 153, 2320, 10, 153, 3, 154, 3, 154, 5, 154, 2324, 10, 154, 3, 154, 3, 154, 3, 154, 3, 154, 3, 154, 5, 154, 2331, 10, 154, 3, 155, 3, 155, 5, 155, 2335, 10, 155, 3, 155, 3, 155, 3, 156, 3, 156, 3, 156, 3, 156, 7, 156, 2343, 10, 156, 12, 156, 14, 156, 2346, 11, 156, 3, 157, 3, 157, 3, 157, 7, 157, 2351, 10, 157, 12, 157, 14, 157, 2354, 11, 157, 3, 158, 3, 158, 3, 158, 5, 158, 2359, 10, 158, 3, 159, 3, 159, 5, 159, 2363, 10, 159, 3, 160, 3, 160, 3, 160, 3, 160, 5, 160, 2369, 10, 160, 3, 161, 3, 161, 3, 161, 3, 161, 3, 161, 3, 161, 3, 161, 5, 161, 2378, 10, 161, 3, 162, 5, 162, 2381, 10, 162, 3, 162, 3, 162, 3, 162, 5, 162, 2386, 10, 162, 3, 162, 5, 162, 2389, 10, 162, 3, 163, 3, 163, 3, 163, 3, 163, 3, 163, 3, 163, 7, 163, 2397, 10, 163, 12, 163, 14, 163, 2400, 11, 163, 3, 163, 3, 163, 5, 163, 2404, 10, 163, 3, 164, 3, 164, 3, 164, 3, 164, 3, 164, 7, 164, 2411, 10, 164, 12, 164, 14, 164, 2414, 11, 164, 3, 164, 3, 164, 5, 164, 2418, 10, 164, 3, 165, 3, 165, 5, 165, 2422, 10, 165, 3, 165, 3, 165, 3, 165, 3, 165, 3, 165, 7, 165, 2429, 10, 165, 12, 165, 14, 165, 2432, 11, 165, 3, 165, 5, 165, 2435, 10, 165, 3, 166, 3, 166, 3, 167, 3, 167, 3, 167, 3, 168, 3, 168, 3, 168, 3, 168, 3, 168, 7, 168, 2447, 10, 168, 12, 168, 14, 168, 2450, 11, 168, 3, 169, 3, 169, 3, 169, 3, 170, 3, 170, 3, 170, 3, 171, 3, 171, 3, 171, 3, 171, 5, 171, 2462, 10, 171, 3, 171, 3, 171, 3, 171, 5, 171, 2467, 10, 171, 7, 171, 2469, 10, 171, 12, 171, 14, 171, 2472, 11, 171, 3, 172, 6, 172, 2475, 10, 172, 13, 172, 14, 172, 2476, 3, 173, 3, 173, 3, 173, 3, 173, 3, 173, 3, 173, 3, 173, 3, 173, 3, 173, 5, 173, 2488, 10, 173, 5, 173, 2490, 10, 173, 3, 174, 3, 174, 3, 174, 3, 174, 3, 174, 5, 174, 2497, 10, 174, 3, 174, 5, 174, 2500, 10, 174, 3, 175, 3, 175, 3, 175, 7, 175, 2505, 10, 175, 12, 175, 14, 175, 2508, 11, 175, 3, 176, 3, 176, 5, 176, 2512, 10, 176, 3, 176, 3, 176, 3, 176, 3, 176, 5, 176, 2518, 10, 176, 3, 176, 5, 176, 2521, 10, 176, 3, 176, 5, 176, 2524, 10, 176, 3, 177, 3, 177, 3, 177, 3, 178, 3, 178, 3, 178, 3, 178, 3, 178, 3, 178, 3, 178, 3, 178, 6, 178, 2537, 10, 178, 13, 178, 14, 178, 2538, 3, 179, 3, 179, 3, 179, 3, 179, 3, 179, 5, 179, 2546, 10, 179, 3, 179, 5, 179, 2549, 10, 179, 3, 179, 5, 179, 2552, 10, 179, 3, 180, 3, 180, 5, 180, 2556, 10, 180, 3, 180, 3, 180, 3, 180, 5, 180, 2561, 10, 180, 3, 180, 3, 180, 3, 180, 3, 180, 5, 180, 2567, 10, 180, 3, 181, 3, 181, 5, 181, 2571, 10, 181, 3, 181, 3, 181, 3, 181, 3, 181, 3, 181, 3, 181, 3, 181, 7, 181, 2580, 10, 181, 12, 181, 14, 181, 2583, 11, 181, 3, 181, 5, 181, 2586, 10, 181, 3, 181, 5, 181, 2589, 10, 181, 3, 182, 3, 182, 5, 182, 2593, 10, 182, 3, 182, 3, 182, 5, 182, 2597, 10, 182, 3, 182, 3, 182, 5, 182, 2601, 10, 182, 3, 183, 3, 183, 5, 183, 2605, 10, 183, 3, 183, 3, 183, 3, 184, 3, 184, 5, 184, 2611, 10, 184, 3, 184, 3, 184, 3, 185, 3, 185, 5, 185, 2617, 10, 185, 3, 185, 3, 185, 3, 185, 3, 185, 3, 185, 5, 185, 2624, 10, 185, 3, 185, 3, 185, 3, 185, 3, 185, 7, 185, 2630, 10, 185, 12, 185, 14, 185, 2633, 11, 185, 3, 186, 3, 186, 3, 186, 5, 186, 2638, 10, 186, 3, 187, 3, 187, 3, 187, 5, 187, 2643, 10, 187, 3, 187, 3, 187, 3, 187, 3, 187, 3, 187, 3, 187, 3, 187, 3, 187, 3, 187, 5, 187, 2654, 10, 187, 3, 187, 3, 187, 3, 187, 3, 187, 3, 187, 3, 187, 3, 187, 5, 187, 2663, 10, 187, 3, 188, 3, 188, 5, 188, 2667, 10, 188, 3, 188, 3, 188, 3, 188, 3, 188, 3, 188, 7, 188, 2674, 10, 188, 12, 188, 14, 188, 2677, 11, 188, 3, 188, 5, 188, 2680, 10, 188, 3, 188, 3, 188, 3, 189, 3, 189, 3, 189, 3, 189, 7, 189, 2688, 10, 189, 12, 189, 14, 189, 2691, 11, 189, 3, 189, 3, 189, 5, 189, 2695, 10, 189, 3, 189, 3, 189, 3, 189, 3, 189, 3, 189, 3, 190, 3, 190, 3, 190, 3, 190, 3, 191, 3, 191, 3, 192, 3, 192, 3, 192, 3, 192, 3, 192, 3, 192, 3, 192, 3, 192, 3, 192, 5, 192, 2717, 10, 192, 3, 192, 5, 192, 2720, 10, 192, 3, 193, 3, 193, 3, 193, 3, 193, 3, 193, 3, 193, 3, 193, 3, 193, 3, 193, 3, 193, 3, 193, 3, 193, 3, 193, 3, 193, 3, 193, 3, 193, 3, 193, 5, 193, 2739, 10, 193, 3, 193, 3, 193, 3, 193, 3, 193, 3, 193, 3, 193, 3, 193, 3, 193, 3, 193, 3, 193, 3, 193, 3, 193, 3, 193, 3, 193, 7, 193, 2755, 10, 193, 12, 193, 14, 193, 2758, 11, 193, 3, 194, 3, 194, 3, 194, 3, 194, 3, 194, 3, 194, 3, 194, 3, 194, 5, 194, 2768, 10, 194, 3, 195, 3, 195, 3, 195, 3, 195, 3, 196, 3, 196, 3, 197, 3, 197, 3, 197, 3, 197, 3, 197, 7, 197, 2781, 10, 197, 12, 197, 14, 197, 2784, 11, 197, 3, 198, 3, 198, 3, 198, 3, 198, 3, 198, 3, 198, 3, 198, 3, 198, 3, 198, 5, 198, 2795, 10, 198, 3, 199, 3, 199, 5, 199, 2799, 10, 199, 3, 200, 3, 200, 3, 200, 3, 200, 3, 200, 3, 200, 3, 200, 6, 200, 2808, 10, 200, 13, 200, 14, 200, 2809, 3, 200, 3, 200, 5, 200, 2814, 10, 200, 3, 200, 3, 200, 3, 201, 3, 201, 3, 201, 3, 201, 3, 201, 3, 201, 6, 201, 2824, 10, 201, 13, 201, 14, 201, 2825, 3, 201, 3, 201, 5, 201, 2830, 10, 201, 3, 201, 3, 201, 3, 202, 3, 202, 3, 202, 3, 202, 3, 203, 3, 203, 3, 203, 5, 203, 2841, 10, 203, 3, 203, 3, 203, 3, 203, 5, 203, 2846, 10, 203, 3, 203, 3, 203, 3, 203, 5, 203, 2851, 10, 203, 3, 203, 3, 203, 5, 203, 2855, 10, 203, 3, 203, 3, 203, 5, 203, 2859, 10, 203, 3, 203, 3, 203, 3, 203, 5, 203, 2864, 10, 203, 3, 203, 3, 203, 5, 203, 2868, 10, 203, 3, 203, 3, 203, 5, 203, 2872, 10, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 5, 203, 2895, 10, 203, 5, 203, 2897, 10, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 5, 203, 2915, 10, 203, 5, 203, 2917, 10, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 5, 203, 2925, 10, 203, 3, 203, 3, 203, 3, 203, 5, 203, 2930, 10, 203, 3, 203, 3, 203, 3, 203, 5, 203, 2935, 10, 203, 3, 203, 3, 203, 3, 203, 5, 203, 2940, 10, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 5, 203, 2953, 10, 203, 3, 203, 3, 203, 3, 203, 5, 203, 2958, 10, 203, 3, 203, 3, 203, 3, 203, 5, 203, 2963, 10, 203, 3, 203, 3, 203, 3, 203, 5, 203, 2968, 10, 203, 3, 203, 3, 203, 3, 203, 5, 203, 2973, 10, 203, 3, 203, 3, 203, 3, 203, 5, 203, 2978, 10, 203, 3, 203, 3, 203, 3, 203, 5, 203, 2983, 10, 203, 3, 203, 3, 203, 3, 203, 5, 203, 2988, 10, 203, 5, 203, 2990, 10, 203, 3, 204, 3, 204, 3, 205, 3, 205, 3, 205, 5, 205, 2997, 10, 205, 3, 205, 5, 205, 3000, 10, 205, 3, 205, 3, 205, 3, 206, 3, 206, 3, 206, 3, 206, 3, 206, 7, 206, 3009, 10, 206, 12, 206, 14, 206, 3012, 11, 206, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 5, 207, 3021, 10, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 5, 207, 3029, 10, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 5, 207, 3038, 10, 207, 3, 207, 3, 207, 3, 207, 3, 207, 5, 207, 3044, 10, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 7, 207, 3059, 10, 207, 12, 207, 14, 207, 3062, 11, 207, 5, 207, 3064, 10, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 7, 207, 3078, 10, 207, 12, 207, 14, 207, 3081, 11, 207, 5, 207, 3083, 10, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 7, 207, 3097, 10, 207, 12, 207, 14, 207, 3100, 11, 207, 5, 207, 3102, 10, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 7, 207, 3116, 10, 207, 12, 207, 14, 207, 3119, 11, 207, 5, 207, 3121, 10, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 7, 207, 3135, 10, 207, 12, 207, 14, 207, 3138, 11, 207, 5, 207, 3140, 10, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 7, 207, 3154, 10, 207, 12, 207, 14, 207, 3157, 11, 207, 5, 207, 3159, 10, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 7, 207, 3171, 10, 207, 12, 207, 14, 207, 3174, 11, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 6, 207, 3186, 10, 207, 13, 207, 14, 207, 3187, 3, 207, 3, 207, 5, 207, 3192, 10, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 5, 207, 3208, 10, 207, 3, 207, 3, 207, 3, 207, 3, 207, 5, 207, 3214, 10, 207, 3, 208, 3, 208, 3, 208, 5, 208, 3219, 10, 208, 3, 208, 3, 208, 3, 209, 3, 209, 3, 209, 7, 209, 3226, 10, 209, 12, 209, 14, 209, 3229, 11, 209, 3, 210, 3, 210, 3, 210, 3, 210, 5, 210, 3235, 10, 210, 5, 210, 3237, 10, 210, 3, 210, 3, 210, 3, 211, 3, 211, 5, 211, 3243, 10, 211, 3, 212, 3, 212, 5, 212, 3247, 10, 212, 3, 213, 3, 213, 7, 213, 3251, 10, 213, 12, 213, 14, 213, 3254, 11, 213, 3, 214, 3, 214, 3, 214, 3, 214, 3, 214, 3, 214, 3, 214, 3, 214, 3, 214, 3, 214, 3, 214, 3, 214, 5, 214, 3268, 10, 214, 3, 215, 3, 215, 3, 215, 3, 215, 3, 215, 5, 215, 3275, 10, 215, 3, 216, 7, 216, 3278, 10, 216, 12, 216, 14, 216, 3281, 11, 216, 3, 217, 3, 217, 3, 217, 3, 218, 3, 218, 3, 218, 3, 218, 5, 218, 3290, 10, 218, 3, 218, 3, 218, 3, 218, 7, 218, 3295, 10, 218, 12, 218, 14, 218, 3298, 11, 218, 5, 218, 3300, 10, 218, 3, 219, 3, 219, 3, 219, 3, 220, 3, 220, 3, 220, 3, 221, 5, 221, 3309, 10, 221, 3, 221, 3, 221, 5, 221, 3313, 10, 221, 3, 221, 3, 221, 3, 221, 5, 221, 3318, 10, 221, 7, 221, 3320, 10, 221, 12, 221, 14, 221, 3323, 11, 221, 3, 222, 3, 222, 5, 222, 3327, 10, 222, 3, 223, 5, 223, 3330, 10, 223, 3, 223, 3, 223, 3, 224, 5, 224, 3335, 10, 224, 3, 224, 3, 224, 3, 225, 3, 225, 3, 226, 3, 226, 3, 227, 3, 227, 3, 227, 3, 3279, 4, 368, 384, 228, 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, 2, 51, 4, 2, 3, 5, 15, 15, 4, 2, 16, 16, 18, 18, 3, 2, 34, 35, 5, 2, 30, 30, 41, 41, 44, 44, 3, 2, 48, 49, 3, 2, 51, 52, 4, 2, 22, 22, 65, 65, 3, 2, 78, 79, 3, 2, 82, 83, 3, 2, 89, 90, 4, 2, 83, 83, 92, 92, 3, 2, 96, 97, 3, 2, 98, 101, 3, 2, 103, 104, 4, 2, 84, 84, 115, 115, 3, 2, 177, 178, 4, 2, 74, 74, 179, 179, 4, 2, 139, 139, 180, 180, 3, 2, 181, 182, 3, 2, 183, 184, 4, 2, 41, 41, 44, 44, 4, 2, 45, 45, 188, 188, 4, 2, 32, 32, 190, 190, 3, 2, 197, 200, 3, 2, 203, 204, 3, 2, 207, 208, 3, 2, 227, 228, 4, 2, 217, 217, 232, 232, 5, 2, 83, 83, 211, 211, 238, 238, 3, 2, 249, 253, 4, 2, 81, 81, 254, 254, 4, 2, 37, 37, 257, 257, 5, 2, 14, 14, 20, 20, 265, 266, 4, 2, 264, 264, 266, 266, 4, 2, 111, 111, 269, 269, 3, 2, 278, 279, 4, 2, 275, 275, 280, 280, 3, 2, 285, 287, 4, 2, 182, 182, 294, 296, 4, 2, 82, 82, 299, 300, 4, 2, 79, 79, 304, 304, 4, 2, 186, 186, 297, 297, 4, 2, 67, 67, 311, 312, 3, 2, 318, 323, 3, 2, 324, 325, 4, 2, 57, 57, 327, 328, 3, 2, 11, 12, 3, 2, 368, 369, 24, 2, 13, 14, 17, 17, 20, 20, 22, 22, 28, 73, 75, 142, 144, 160, 162, 166, 168, 172, 174, 176, 179, 205, 209, 267, 269, 269, 273, 273, 275, 281, 283, 288, 290, 305, 311, 312, 317, 323, 325, 351, 358, 364, 368, 376, 2, 3772, 2, 454, 3, 2, 2, 2, 4, 464, 3, 2, 2, 2, 6, 469, 3, 2, 2, 2, 8, 489, 3, 2, 2, 2, 10, 491, 3, 2, 2, 2, 12, 503, 3, 2, 2, 2, 14, 566, 3, 2, 2, 2, 16, 568, 3, 2, 2, 2, 18, 570, 3, 2, 2, 2, 20, 576, 3, 2, 2, 2, 22, 582, 3, 2, 2, 2, 24, 584, 3, 2, 2, 2, 26, 600, 3, 2, 2, 2, 28, 605, 3, 2, 2, 2, 30, 623, 3, 2, 2, 2, 32, 625, 3, 2, 2, 2, 34, 662, 3, 2, 2, 2, 36, 672, 3, 2, 2, 2, 38, 683, 3, 2, 2, 2, 40, 703, 3, 2, 2, 2, 42, 706, 3, 2, 2, 2, 44, 708, 3, 2, 2, 2, 46, 718, 3, 2, 2, 2, 48, 727, 3, 2, 2, 2, 50, 738, 3, 2, 2, 2, 52, 753, 3, 2, 2, 2, 54, 790, 3, 2, 2, 2, 56, 792, 3, 2, 2, 2, 58, 800, 3, 2, 2, 2, 60, 811, 3, 2, 2, 2, 62, 820, 3, 2, 2, 2, 64, 823, 3, 2, 2, 2, 66, 836, 3, 2, 2, 2, 68, 846, 3, 2, 2, 2, 70, 859, 3, 2, 2, 2, 72, 892, 3, 2, 2, 2, 74, 897, 3, 2, 2, 2, 76, 927, 3, 2, 2, 2, 78, 929, 3, 2, 2, 2, 80, 963, 3, 2, 2, 2, 82, 1022, 3, 2, 2, 2, 84, 1024, 3, 2, 2, 2, 86, 1037, 3, 2, 2, 2, 88, 1044, 3, 2, 2, 2, 90, 1047, 3, 2, 2, 2, 92, 1052, 3, 2, 2, 2, 94, 1066, 3, 2, 2, 2, 96, 1086, 3, 2, 2, 2, 98, 1121, 3, 2, 2, 2, 100, 1141, 3, 2, 2, 2, 102, 1147, 3, 2, 2, 2, 104, 1149, 3, 2, 2, 2, 106, 1185, 3, 2, 2, 2, 108, 1191, 3, 2, 2, 2, 110, 1220, 3, 2, 2, 2, 112, 1222, 3, 2, 2, 2, 114, 1227, 3, 2, 2, 2, 116, 1229, 3, 2, 2, 2, 118, 1298, 3, 2, 2, 2, 120, 1346, 3, 2, 2, 2, 122, 1348, 3, 2, 2, 2, 124, 1370, 3, 2, 2, 2, 126, 1384, 3, 2, 2, 2, 128, 1386, 3, 2, 2, 2, 130, 1404, 3, 2, 2, 2, 132, 1413, 3, 2, 2, 2, 134, 1429, 3, 2, 2, 2, 136, 1441, 3, 2, 2, 2, 138, 1453, 3, 2, 2, 2, 140, 1476, 3, 2, 2, 2, 142, 1485, 3, 2, 2, 2, 144, 1498, 3, 2, 2, 2, 146, 1511, 3, 2, 2, 2, 148, 1520, 3, 2, 2, 2, 150, 1567, 3, 2, 2, 2, 152, 1611, 3, 2, 2, 2, 154, 1614, 3, 2, 2, 2, 156, 1629, 3, 2, 2, 2, 158, 1645, 3, 2, 2, 2, 160, 1647, 3, 2, 2, 2, 162, 1650, 3, 2, 2, 2, 164, 1679, 3, 2, 2, 2, 166, 1681, 3, 2, 2, 2, 168, 1697, 3, 2, 2, 2, 170, 1704, 3, 2, 2, 2, 172, 1710, 3, 2, 2, 2, 174, 1715, 3, 2, 2, 2, 176, 1718, 3, 2, 2, 2, 178, 1723, 3, 2, 2, 2, 180, 1740, 3, 2, 2, 2, 182, 1751, 3, 2, 2, 2, 184, 1760, 3, 2, 2, 2, 186, 1771, 3, 2, 2, 2, 188, 1780, 3, 2, 2, 2, 190, 1788, 3, 2, 2, 2, 192, 1794, 3, 2, 2, 2, 194, 1796, 3, 2, 2, 2, 196, 1802, 3, 2, 2, 2, 198, 1806, 3, 2, 2, 2, 200, 1819, 3, 2, 2, 2, 202, 1824, 3, 2, 2, 2, 204, 1828, 3, 2, 2, 2, 206, 1839, 3, 2, 2, 2, 208, 1848, 3, 2, 2, 2, 210, 1862, 3, 2, 2, 2, 212, 1869, 3, 2, 2, 2, 214, 1881, 3, 2, 2, 2, 216, 1884, 3, 2, 2, 2, 218, 1898, 3, 2, 2, 2, 220, 1904, 3, 2, 2, 2, 222, 1923, 3, 2, 2, 2, 224, 1944, 3, 2, 2, 2, 226, 1948, 3, 2, 2, 2, 228, 1958, 3, 2, 2, 2, 230, 1960, 3, 2, 2, 2, 232, 1962, 3, 2, 2, 2, 234, 1966, 3, 2, 2, 2, 236, 1985, 3, 2, 2, 2, 238, 1989, 3, 2, 2, 2, 240, 1991, 3, 2, 2, 2, 242, 2020, 3, 2, 2, 2, 244, 2023, 3, 2, 2, 2, 246, 2029, 3, 2, 2, 2, 248, 2031, 3, 2, 2, 2, 250, 2045, 3, 2, 2, 2, 252, 2049, 3, 2, 2, 2, 254, 2056, 3, 2, 2, 2, 256, 2063, 3, 2, 2, 2, 258, 2070, 3, 2, 2, 2, 260, 2073, 3, 2, 2, 2, 262, 2085, 3, 2, 2, 2, 264, 2088, 3, 2, 2, 2, 266, 2105, 3, 2, 2, 2, 268, 2111, 3, 2, 2, 2, 270, 2114, 3, 2, 2, 2, 272, 2144, 3, 2, 2, 2, 274, 2152, 3, 2, 2, 2, 276, 2167, 3, 2, 2, 2, 278, 2191, 3, 2, 2, 2, 280, 2193, 3, 2, 2, 2, 282, 2203, 3, 2, 2, 2, 284, 2207, 3, 2, 2, 2, 286, 2216, 3, 2, 2, 2, 288, 2225, 3, 2, 2, 2, 290, 2236, 3, 2, 2, 2, 292, 2250, 3, 2, 2, 2, 294, 2264, 3, 2, 2, 2, 296, 2266, 3, 2, 2, 2, 298, 2291, 3, 2, 2, 2, 300, 2304, 3, 2, 2, 2, 302, 2306, 3, 2, 2, 2, 304, 2319, 3, 2, 2, 2, 306, 2330, 3, 2, 2, 2, 308, 2334, 3, 2, 2, 2, 310, 2338, 3, 2, 2, 2, 312, 2347, 3, 2, 2, 2, 314, 2358, 3, 2, 2, 2, 316, 2360, 3, 2, 2, 2, 318, 2364, 3, 2, 2, 2, 320, 2377, 3, 2, 2, 2, 322, 2388, 3, 2, 2, 2, 324, 2390, 3, 2, 2, 2, 326, 2417, 3, 2, 2, 2, 328, 2419, 3, 2, 2, 2, 330, 2436, 3, 2, 2, 2, 332, 2438, 3, 2, 2, 2, 334, 2441, 3, 2, 2, 2, 336, 2451, 3, 2, 2, 2, 338, 2454, 3, 2, 2, 2, 340, 2457, 3, 2, 2, 2, 342, 2474, 3, 2, 2, 2, 344, 2489, 3, 2, 2, 2, 346, 2491, 3, 2, 2, 2, 348, 2501, 3, 2, 2, 2, 350, 2517, 3, 2, 2, 2, 352, 2525, 3, 2, 2, 2, 354, 2528, 3, 2, 2, 2, 356, 2545, 3, 2, 2, 2, 358, 2566, 3, 2, 2, 2, 360, 2588, 3, 2, 2, 2, 362, 2590, 3, 2, 2, 2, 364, 2602, 3, 2, 2, 2, 366, 2608, 3, 2, 2, 2, 368, 2623, 3, 2, 2, 2, 370, 2637, 3, 2, 2, 2, 372, 2662, 3, 2, 2, 2, 374, 2664, 3, 2, 2, 2, 376, 2683, 3, 2, 2, 2, 378, 2701, 3, 2, 2, 2, 380, 2705, 3, 2, 2, 2, 382, 2719, 3, 2, 2, 2, 384, 2738, 3, 2, 2, 2, 386, 2767, 3, 2, 2, 2, 388, 2769, 3, 2, 2, 2, 390, 2773, 3, 2, 2, 2, 392, 2775, 3, 2, 2, 2, 394, 2794, 3, 2, 2, 2, 396, 2798, 3, 2, 2, 2, 398, 2800, 3, 2, 2, 2, 400, 2817, 3, 2, 2, 2, 402, 2833, 3, 2, 2, 2, 404, 2989, 3, 2, 2, 2, 406, 2991, 3, 2, 2, 2, 408, 2993, 3, 2, 2, 2, 410, 3003, 3, 2, 2, 2, 412, 3213, 3, 2, 2, 2, 414, 3215, 3, 2, 2, 2, 416, 3222, 3, 2, 2, 2, 418, 3230, 3, 2, 2, 2, 420, 3242, 3, 2, 2, 2, 422, 3246, 3, 2, 2, 2, 424, 3248, 3, 2, 2, 2, 426, 3267, 3, 2, 2, 2, 428, 3274, 3, 2, 2, 2, 430, 3279, 3, 2, 2, 2, 432, 3282, 3, 2, 2, 2, 434, 3299, 3, 2, 2, 2, 436, 3301, 3, 2, 2, 2, 438, 3304, 3, 2, 2, 2, 440, 3308, 3, 2, 2, 2, 442, 3326, 3, 2, 2, 2, 444, 3329, 3, 2, 2, 2, 446, 3334, 3, 2, 2, 2, 448, 3338, 3, 2, 2, 2, 450, 3340, 3, 2, 2, 2, 452, 3342, 3, 2, 2, 2, 454, 455, 5, 4, 3, 2, 455, 456, 7, 2, 2, 3, 456, 3, 3, 2, 2, 2, 457, 460, 5, 6, 4, 2, 458, 460, 5, 14, 8, 2, 459, 457, 3, 2, 2, 2, 459, 458, 3, 2, 2, 2, 460, 462, 3, 2, 2, 2, 461, 463, 7, 13, 2, 2, 462, 461, 3, 2, 2, 2, 462, 463, 3, 2, 2, 2, 463, 465, 3, 2, 2, 2, 464, 459, 3, 2, 2, 2, 465, 466, 3, 2, 2, 2, 466, 464, 3, 2, 2, 2, 466, 467, 3, 2, 2, 2, 467, 5, 3, 2, 2, 2, 468, 470, 5, 48, 25, 2, 469, 468, 3, 2, 2, 2, 469, 470, 3, 2, 2, 2, 470, 471, 3, 2, 2, 2, 471, 472, 7, 14, 2, 2, 472, 474, 5, 4, 3, 2, 473, 475, 5, 18, 10, 2, 474, 473, 3, 2, 2, 2, 474, 475, 3, 2, 2, 2, 475, 476, 3, 2, 2, 2, 476, 477, 5, 10, 6, 2, 477, 7, 3, 2, 2, 2, 478, 479, 7, 14, 2, 2, 479, 481, 5, 4, 3, 2, 480, 482, 5, 18, 10, 2, 481, 480, 3, 2, 2, 2, 481, 482, 3, 2, 2, 2, 482, 483, 3, 2, 2, 2, 483, 484, 5, 10, 6, 2, 484, 490, 3, 2, 2, 2, 485, 487, 5, 14, 8, 2, 486, 488, 7, 15, 2, 2, 487, 486, 3, 2, 2, 2, 487, 488, 3, 2, 2, 2, 488, 490, 3, 2, 2, 2, 489, 478, 3, 2, 2, 2, 489, 485, 3, 2, 2, 2, 490, 9, 3, 2, 2, 2, 491, 492, 6, 6, 2, 2, 492, 493, 7, 16, 2, 2, 493, 11, 3, 2, 2, 2, 494, 504, 5, 6, 4, 2, 495, 497, 5, 14, 8, 2, 496, 495, 3, 2, 2, 2, 497, 498, 3, 2, 2, 2, 498, 496, 3, 2, 2, 2, 498, 499, 3, 2, 2, 2, 499, 501, 3, 2, 2, 2, 500, 502, 7, 13, 2, 2, 501, 500, 3, 2, 2, 2, 501, 502, 3, 2, 2, 2, 502, 504, 3, 2, 2, 2, 503, 494, 3, 2, 2, 2, 503, 496, 3, 2, 2, 2, 504, 13, 3, 2, 2, 2, 505, 567, 5, 26, 14, 2, 506, 567, 5, 36, 19, 2, 507, 567, 5, 112, 57, 2, 508, 567, 5, 38, 20, 2, 509, 567, 5, 40, 21, 2, 510, 567, 5, 42, 22, 2, 511, 567, 5, 44, 23, 2, 512, 567, 5, 210, 106, 2, 513, 567, 5, 214, 108, 2, 514, 567, 5, 216, 109, 2, 515, 567, 5, 220, 111, 2, 516, 567, 5, 222, 112, 2, 517, 567, 5, 232, 117, 2, 518, 567, 5, 128, 65, 2, 519, 567, 5, 132, 67, 2, 520, 567, 5, 234, 118, 2, 521, 567, 5, 70, 36, 2, 522, 567, 5, 136, 69, 2, 523, 567, 5, 142, 72, 2, 524, 567, 5, 148, 75, 2, 525, 567, 5, 68, 35, 2, 526, 567, 5, 46, 24, 2, 527, 567, 5, 362, 182, 2, 528, 567, 5, 366, 184, 2, 529, 567, 5, 158, 80, 2, 530, 567, 5, 160, 81, 2, 531, 567, 5, 162, 82, 2, 532, 567, 5, 188, 95, 2, 533, 567, 5, 208, 105, 2, 534, 567, 5, 274, 138, 2, 535, 567, 5, 276, 139, 2, 536, 567, 5, 164, 83, 2, 537, 567, 5, 176, 89, 2, 538, 567, 5, 178, 90, 2, 539, 567, 5, 186, 94, 2, 540, 567, 5, 190, 96, 2, 541, 567, 5, 198, 100, 2, 542, 567, 5, 202, 102, 2, 543, 567, 5, 204, 103, 2, 544, 567, 5, 354, 178, 2, 545, 567, 5, 206, 104, 2, 546, 567, 5, 242, 122, 2, 547, 567, 5, 244, 123, 2, 548, 567, 5, 246, 124, 2, 549, 567, 5, 248, 125, 2, 550, 567, 5, 250, 126, 2, 551, 567, 5, 252, 127, 2, 552, 567, 5, 282, 142, 2, 553, 567, 5, 262, 132, 2, 554, 567, 5, 264, 133, 2, 555, 567, 5, 346, 174, 2, 556, 567, 5, 268, 135, 2, 557, 567, 5, 266, 134, 2, 558, 567, 5, 270, 136, 2, 559, 567, 5, 272, 137, 2, 560, 567, 5, 278, 140, 2, 561, 567, 5, 424, 213, 2, 562, 567, 5, 428, 215, 2, 563, 567, 5, 22, 12, 2, 564, 567, 5, 24, 13, 2, 565, 567, 5, 16, 9, 2, 566, 505, 3, 2, 2, 2, 566, 506, 3, 2, 2, 2, 566, 507, 3, 2, 2, 2, 566, 508, 3, 2, 2, 2, 566, 509, 3, 2, 2, 2, 566, 510, 3, 2, 2, 2, 566, 511, 3, 2, 2, 2, 566, 512, 3, 2, 2, 2, 566, 513, 3, 2, 2, 2, 566, 514, 3, 2, 2, 2, 566, 515, 3, 2, 2, 2, 566, 516, 3, 2, 2, 2, 566, 517, 3, 2, 2, 2, 566, 518, 3, 2, 2, 2, 566, 519, 3, 2, 2, 2, 566, 520, 3, 2, 2, 2, 566, 521, 3, 2, 2, 2, 566, 522, 3, 2, 2, 2, 566, 523, 3, 2, 2, 2, 566, 524, 3, 2, 2, 2, 566, 525, 3, 2, 2, 2, 566, 526, 3, 2, 2, 2, 566, 527, 3, 2, 2, 2, 566, 528, 3, 2, 2, 2, 566, 529, 3, 2, 2, 2, 566, 530, 3, 2, 2, 2, 566, 531, 3, 2, 2, 2, 566, 532, 3, 2, 2, 2, 566, 533, 3, 2, 2, 2, 566, 534, 3, 2, 2, 2, 566, 535, 3, 2, 2, 2, 566, 536, 3, 2, 2, 2, 566, 537, 3, 2, 2, 2, 566, 538, 3, 2, 2, 2, 566, 539, 3, 2, 2, 2, 566, 540, 3, 2, 2, 2, 566, 541, 3, 2, 2, 2, 566, 542, 3, 2, 2, 2, 566, 543, 3, 2, 2, 2, 566, 544, 3, 2, 2, 2, 566, 545, 3, 2, 2, 2, 566, 546, 3, 2, 2, 2, 566, 547, 3, 2, 2, 2, 566, 548, 3, 2, 2, 2, 566, 549, 3, 2, 2, 2, 566, 550, 3, 2, 2, 2, 566, 551, 3, 2, 2, 2, 566, 552, 3, 2, 2, 2, 566, 553, 3, 2, 2, 2, 566, 554, 3, 2, 2, 2, 566, 555, 3, 2, 2, 2, 566, 556, 3, 2, 2, 2, 566, 557, 3, 2, 2, 2, 566, 558, 3, 2, 2, 2, 566, 559, 3, 2, 2, 2, 566, 560, 3, 2, 2, 2, 566, 561, 3, 2, 2, 2, 566, 562, 3, 2, 2, 2, 566, 563, 3, 2, 2, 2, 566, 564, 3, 2, 2, 2, 566, 565, 3, 2, 2, 2, 567, 15, 3, 2, 2, 2, 568, 569, 9, 2, 2, 2, 569, 17, 3, 2, 2, 2, 570, 572, 7, 17, 2, 2, 571, 573, 5, 20, 11, 2, 572, 571, 3, 2, 2, 2, 573, 574, 3, 2, 2, 2, 574, 572, 3, 2, 2, 2, 574, 575, 3, 2, 2, 2, 575, 19, 3, 2, 2, 2, 576, 577, 7, 18, 2, 2, 577, 578, 7, 19, 2, 2, 578, 579, 7, 20, 2, 2, 579, 580, 5, 4, 3, 2, 580, 581, 10, 3, 2, 2, 581, 21, 3, 2, 2, 2, 582, 583, 7, 21, 2, 2, 583, 23, 3, 2, 2, 2, 584, 585, 6, 13, 3, 2, 585, 586, 5, 384, 193, 2, 586, 25, 3, 2, 2, 2, 587, 588, 7, 22, 2, 2, 588, 601, 5, 254, 128, 2, 589, 591, 7, 22, 2, 2, 590, 589, 3, 2, 2, 2, 590, 591, 3, 2, 2, 2, 591, 592, 3, 2, 2, 2, 592, 597, 5, 28, 15, 2, 593, 594, 7, 23, 2, 2, 594, 596, 5, 28, 15, 2, 595, 593, 3, 2, 2, 2, 596, 599, 3, 2, 2, 2, 597, 595, 3, 2, 2, 2, 597, 598, 3, 2, 2, 2, 598, 601, 3, 2, 2, 2, 599, 597, 3, 2, 2, 2, 600, 587, 3, 2, 2, 2, 600, 590, 3, 2, 2, 2, 601, 27, 3, 2, 2, 2, 602, 606, 5, 30, 16, 2, 603, 606, 5, 32, 17, 2, 604, 606, 5, 34, 18, 2, 605, 602, 3, 2, 2, 2, 605, 603, 3, 2, 2, 2, 605, 604, 3, 2, 2, 2, 606, 29, 3, 2, 2, 2, 607, 609, 5, 440, 221, 2, 608, 610, 7, 24, 2, 2, 609, 608, 3, 2, 2, 2, 609, 610, 3, 2, 2, 2, 610, 611, 3, 2, 2, 2, 611, 612, 7, 25, 2, 2, 612, 613, 5, 384, 193, 2, 613, 624, 3, 2, 2, 2, 614, 615, 7, 26, 2, 2, 615, 616, 5, 440, 221, 2, 616, 618, 7, 27, 2, 2, 617, 619, 7, 24, 2, 2, 618, 617, 3, 2, 2, 2, 618, 619, 3, 2, 2, 2, 619, 620, 3, 2, 2, 2, 620, 621, 7, 25, 2, 2, 621, 622, 5, 384, 193, 2, 622, 624, 3, 2, 2, 2, 623, 607, 3, 2, 2, 2, 623, 614, 3, 2, 2, 2, 624, 31, 3, 2, 2, 2, 625, 626, 7, 26, 2, 2, 626, 631, 5, 440, 221, 2, 627, 628, 7, 23, 2, 2, 628, 630, 5, 440, 221, 2, 629, 627, 3, 2, 2, 2, 630, 633, 3, 2, 2, 2, 631, 629, 3, 2, 2, 2, 631, 632, 3, 2, 2, 2, 632, 634, 3, 2, 2, 2, 633, 631, 3, 2, 2, 2, 634, 636, 7, 27, 2, 2, 635, 637, 7, 24, 2, 2, 636, 635, 3, 2, 2, 2, 636, 637, 3, 2, 2, 2, 637, 638, 3, 2, 2, 2, 638, 639, 7, 25, 2, 2, 639, 640, 7, 26, 2, 2, 640, 645, 5, 384, 193, 2, 641, 642, 7, 23, 2, 2, 642, 644, 5, 384, 193, 2, 643, 641, 3, 2, 2, 2, 644, 647, 3, 2, 2, 2, 645, 643, 3, 2, 2, 2, 645, 646, 3, 2, 2, 2, 646, 648, 3, 2, 2, 2, 647, 645, 3, 2, 2, 2, 648, 649, 7, 27, 2, 2, 649, 33, 3, 2, 2, 2, 650, 663, 5, 440, 221, 2, 651, 652, 7, 26, 2, 2, 652, 657, 5, 440, 221, 2, 653, 654, 7, 23, 2, 2, 654, 656, 5, 440, 221, 2, 655, 653, 3, 2, 2, 2, 656, 659, 3, 2, 2, 2, 657, 655, 3, 2, 2, 2, 657, 658, 3, 2, 2, 2, 658, 660, 3, 2, 2, 2, 659, 657, 3, 2, 2, 2, 660, 661, 7, 27, 2, 2, 661, 663, 3, 2, 2, 2, 662, 650, 3, 2, 2, 2, 662, 651, 3, 2, 2, 2, 663, 665, 3, 2, 2, 2, 664, 666, 7, 24, 2, 2, 665, 664, 3, 2, 2, 2, 665, 666, 3, 2, 2, 2, 666, 667, 3, 2, 2, 2, 667, 668, 7, 25, 2, 2, 668, 669, 7, 26, 2, 2, 669, 670, 5, 282, 142, 2, 670, 671, 7, 27, 2, 2, 671, 35, 3, 2, 2, 2, 672, 673, 7, 28, 2, 2, 673, 674, 5, 440, 221, 2, 674, 675, 7, 29, 2, 2, 675, 679, 7, 30, 2, 2, 676, 677, 7, 31, 2, 2, 677, 680, 7, 22, 2, 2, 678, 680, 7, 32, 2, 2, 679, 676, 3, 2, 2, 2, 679, 678, 3, 2, 2, 2, 680, 681, 3, 2, 2, 2, 681, 682, 5, 440, 221, 2, 682, 37, 3, 2, 2, 2, 683, 686, 7, 33, 2, 2, 684, 685, 7, 31, 2, 2, 685, 687, 7, 22, 2, 2, 686, 684, 3, 2, 2, 2, 686, 687, 3, 2, 2, 2, 687, 688, 3, 2, 2, 2, 688, 689, 9, 4, 2, 2, 689, 690, 7, 26, 2, 2, 690, 695, 5, 440, 221, 2, 691, 692, 7, 23, 2, 2, 692, 694, 5, 440, 221, 2, 693, 691, 3, 2, 2, 2, 694, 697, 3, 2, 2, 2, 695, 693, 3, 2, 2, 2, 695, 696, 3, 2, 2, 2, 696, 698, 3, 2, 2, 2, 697, 695, 3, 2, 2, 2, 698, 699, 7, 27, 2, 2, 699, 700, 7, 36, 2, 2, 700, 701, 7, 32, 2, 2, 701, 702, 5, 440, 221, 2, 702, 39, 3, 2, 2, 2, 703, 704, 7, 14, 2, 2, 704, 705, 7, 37, 2, 2, 705, 41, 3, 2, 2, 2, 706, 707, 7, 38, 2, 2, 707, 43, 3, 2, 2, 2, 708, 709, 7, 39, 2, 2, 709, 716, 5, 440, 221, 2, 710, 712, 7, 26, 2, 2, 711, 713, 5, 416, 209, 2, 712, 711, 3, 2, 2, 2, 712, 713, 3, 2, 2, 2, 713, 714, 3, 2, 2, 2, 714, 717, 7, 27, 2, 2, 715, 717, 5, 416, 209, 2, 716, 710, 3, 2, 2, 2, 716, 715, 3, 2, 2, 2, 716, 717, 3, 2, 2, 2, 717, 45, 3, 2, 2, 2, 718, 719, 7, 40, 2, 2, 719, 724, 5, 52, 27, 2, 720, 721, 7, 23, 2, 2, 721, 723, 5, 52, 27, 2, 722, 720, 3, 2, 2, 2, 723, 726, 3, 2, 2, 2, 724, 722, 3, 2, 2, 2, 724, 725, 3, 2, 2, 2, 725, 47, 3, 2, 2, 2, 726, 724, 3, 2, 2, 2, 727, 728, 7, 40, 2, 2, 728, 729, 5, 52, 27, 2, 729, 735, 7, 15, 2, 2, 730, 731, 5, 52, 27, 2, 731, 732, 7, 15, 2, 2, 732, 734, 3, 2, 2, 2, 733, 730, 3, 2, 2, 2, 734, 737, 3, 2, 2, 2, 735, 733, 3, 2, 2, 2, 735, 736, 3, 2, 2, 2, 736, 49, 3, 2, 2, 2, 737, 735, 3, 2, 2, 2, 738, 739, 5, 52, 27, 2, 739, 745, 7, 15, 2, 2, 740, 741, 5, 52, 27, 2, 741, 742, 7, 15, 2, 2, 742, 744, 3, 2, 2, 2, 743, 740, 3, 2, 2, 2, 744, 747, 3, 2, 2, 2, 745, 743, 3, 2, 2, 2, 745, 746, 3, 2, 2, 2, 746, 51, 3, 2, 2, 2, 747, 745, 3, 2, 2, 2, 748, 754, 5, 58, 30, 2, 749, 754, 5, 56, 29, 2, 750, 754, 5, 64, 33, 2, 751, 754, 5, 54, 28, 2, 752, 754, 5, 66, 34, 2, 753, 748, 3, 2, 2, 2, 753, 749, 3, 2, 2, 2, 753, 750, 3, 2, 2, 2, 753, 751, 3, 2, 2, 2, 753, 752, 3, 2, 2, 2, 754, 53, 3, 2, 2, 2, 755, 760, 5, 440, 221, 2, 756, 757, 7, 23, 2, 2, 757, 759, 5, 440, 221, 2, 758, 756, 3, 2, 2, 2, 759, 762, 3, 2, 2, 2, 760, 758, 3, 2, 2, 2, 760, 761, 3, 2, 2, 2, 761, 764, 3, 2, 2, 2, 762, 760, 3, 2, 2, 2, 763, 765, 7, 41, 2, 2, 764, 763, 3, 2, 2, 2, 764, 765, 3, 2, 2, 2, 765, 766, 3, 2, 2, 2, 766, 768, 5, 120, 61, 2, 767, 769, 5, 122, 62, 2, 768, 767, 3, 2, 2, 2, 768, 769, 3, 2, 2, 2, 769, 773, 3, 2, 2, 2, 770, 772, 5, 124, 63, 2, 771, 770, 3, 2, 2, 2, 772, 775, 3, 2, 2, 2, 773, 771, 3, 2, 2, 2, 773, 774, 3, 2, 2, 2, 774, 777, 3, 2, 2, 2, 775, 773, 3, 2, 2, 2, 776, 778, 5, 126, 64, 2, 777, 776, 3, 2, 2, 2, 777, 778, 3, 2, 2, 2, 778, 791, 3, 2, 2, 2, 779, 780, 5, 440, 221, 2, 780, 782, 7, 42, 2, 2, 781, 783, 7, 41, 2, 2, 782, 781, 3, 2, 2, 2, 782, 783, 3, 2, 2, 2, 783, 784, 3, 2, 2, 2, 784, 786, 5, 120, 61, 2, 785, 787, 5, 122, 62, 2, 786, 785, 3, 2, 2, 2, 786, 787, 3, 2, 2, 2, 787, 788, 3, 2, 2, 2, 788, 789, 5, 126, 64, 2, 789, 791, 3, 2, 2, 2, 790, 755, 3, 2, 2, 2, 790, 779, 3, 2, 2, 2, 791, 55, 3, 2, 2, 2, 792, 793, 5, 440, 221, 2, 793, 794, 7, 43, 2, 2, 794, 57, 3, 2, 2, 2, 795, 796, 7, 29, 2, 2, 796, 801, 5, 440, 221, 2, 797, 798, 5, 440, 221, 2, 798, 799, 7, 29, 2, 2, 799, 801, 3, 2, 2, 2, 800, 795, 3, 2, 2, 2, 800, 797, 3, 2, 2, 2, 801, 804, 3, 2, 2, 2, 802, 805, 5, 60, 31, 2, 803, 805, 5, 62, 32, 2, 804, 802, 3, 2, 2, 2, 804, 803, 3, 2, 2, 2, 804, 805, 3, 2, 2, 2, 805, 806, 3, 2, 2, 2, 806, 809, 9, 5, 2, 2, 807, 810, 5, 282, 142, 2, 808, 810, 5, 384, 193, 2, 809, 807, 3, 2, 2, 2, 809, 808, 3, 2, 2, 2, 810, 59, 3, 2, 2, 2, 811, 812, 7, 36, 2, 2, 812, 814, 7, 45, 2, 2, 813, 815, 7, 46, 2, 2, 814, 813, 3, 2, 2, 2, 814, 815, 3, 2, 2, 2, 815, 818, 3, 2, 2, 2, 816, 817, 7, 47, 2, 2, 817, 819, 9, 6, 2, 2, 818, 816, 3, 2, 2, 2, 818, 819, 3, 2, 2, 2, 819, 61, 3, 2, 2, 2, 820, 821, 7, 50, 2, 2, 821, 822, 7, 45, 2, 2, 822, 63, 3, 2, 2, 2, 823, 824, 9, 7, 2, 2, 824, 825, 7, 53, 2, 2, 825, 831, 7, 30, 2, 2, 826, 832, 7, 54, 2, 2, 827, 832, 7, 55, 2, 2, 828, 829, 7, 56, 2, 2, 829, 832, 7, 57, 2, 2, 830, 832, 5, 440, 221, 2, 831, 826, 3, 2, 2, 2, 831, 827, 3, 2, 2, 2, 831, 828, 3, 2, 2, 2, 831, 830, 3, 2, 2, 2, 832, 833, 3, 2, 2, 2, 833, 834, 5, 8, 5, 2, 834, 65, 3, 2, 2, 2, 835, 837, 7, 58, 2, 2, 836, 835, 3, 2, 2, 2, 836, 837, 3, 2, 2, 2, 837, 838, 3, 2, 2, 2, 838, 839, 7, 59, 2, 2, 839, 840, 7, 60, 2, 2, 840, 842, 5, 440, 221, 2, 841, 843, 5, 86, 44, 2, 842, 841, 3, 2, 2, 2, 842, 843, 3, 2, 2, 2, 843, 844, 3, 2, 2, 2, 844, 845, 5, 72, 37, 2, 845, 67, 3, 2, 2, 2, 846, 847, 7, 61, 2, 2, 847, 851, 7, 60, 2, 2, 848, 849, 7, 62, 2, 2, 849, 850, 7, 56, 2, 2, 850, 852, 7, 63, 2, 2, 851, 848, 3, 2, 2, 2, 851, 852, 3, 2, 2, 2, 852, 853, 3, 2, 2, 2, 853, 855, 5, 330, 166, 2, 854, 856, 5, 86, 44, 2, 855, 854, 3, 2, 2, 2, 855, 856, 3, 2, 2, 2, 856, 857, 3, 2, 2, 2, 857, 858, 5, 72, 37, 2, 858, 69, 3, 2, 2, 2, 859, 866, 7, 61, 2, 2, 860, 861, 7, 64, 2, 2, 861, 867, 7, 59, 2, 2, 862, 864, 9, 8, 2, 2, 863, 862, 3, 2, 2, 2, 863, 864, 3, 2, 2, 2, 864, 865, 3, 2, 2, 2, 865, 867, 7, 66, 2, 2, 866, 860, 3, 2, 2, 2, 866, 863, 3, 2, 2, 2, 867, 868, 3, 2, 2, 2, 868, 869, 7, 60, 2, 2, 869, 871, 5, 440, 221, 2, 870, 872, 5, 86, 44, 2, 871, 870, 3, 2, 2, 2, 871, 872, 3, 2, 2, 2, 872, 873, 3, 2, 2, 2, 873, 874, 5, 72, 37, 2, 874, 71, 3, 2, 2, 2, 875, 877, 7, 41, 2, 2, 876, 875, 3, 2, 2, 2, 876, 877, 3, 2, 2, 2, 877, 878, 3, 2, 2, 2, 878, 879, 7, 26, 2, 2, 879, 880, 5, 282, 142, 2, 880, 881, 7, 27, 2, 2, 881, 893, 3, 2, 2, 2, 882, 884, 7, 41, 2, 2, 883, 882, 3, 2, 2, 2, 883, 884, 3, 2, 2, 2, 884, 885, 3, 2, 2, 2, 885, 893, 5, 282, 142, 2, 886, 887, 7, 26, 2, 2, 887, 888, 5, 74, 38, 2, 888, 889, 7, 27, 2, 2, 889, 893, 3, 2, 2, 2, 890, 891, 7, 67, 2, 2, 891, 893, 5, 330, 166, 2, 892, 876, 3, 2, 2, 2, 892, 883, 3, 2, 2, 2, 892, 886, 3, 2, 2, 2, 892, 890, 3, 2, 2, 2, 893, 895, 3, 2, 2, 2, 894, 896, 5, 92, 47, 2, 895, 894, 3, 2, 2, 2, 895, 896, 3, 2, 2, 2, 896, 73, 3, 2, 2, 2, 897, 902, 5, 76, 39, 2, 898, 899, 7, 23, 2, 2, 899, 901, 5, 76, 39, 2, 900, 898, 3, 2, 2, 2, 901, 904, 3, 2, 2, 2, 902, 900, 3, 2, 2, 2, 902, 903, 3, 2, 2, 2, 903, 75, 3, 2, 2, 2, 904, 902, 3, 2, 2, 2, 905, 906, 5, 78, 40, 2, 906, 908, 5, 120, 61, 2, 907, 909, 5, 122, 62, 2, 908, 907, 3, 2, 2, 2, 908, 909, 3, 2, 2, 2, 909, 913, 3, 2, 2, 2, 910, 912, 5, 124, 63, 2, 911, 910, 3, 2, 2, 2, 912, 915, 3, 2, 2, 2, 913, 911, 3, 2, 2, 2, 913, 914, 3, 2, 2, 2, 914, 919, 3, 2, 2, 2, 915, 913, 3, 2, 2, 2, 916, 918, 5, 80, 41, 2, 917, 916, 3, 2, 2, 2, 918, 921, 3, 2, 2, 2, 919, 917, 3, 2, 2, 2, 919, 920, 3, 2, 2, 2, 920, 928, 3, 2, 2, 2, 921, 919, 3, 2, 2, 2, 922, 923, 7, 68, 2, 2, 923, 925, 5, 440, 221, 2, 924, 922, 3, 2, 2, 2, 924, 925, 3, 2, 2, 2, 925, 926, 3, 2, 2, 2, 926, 928, 5, 82, 42, 2, 927, 905, 3, 2, 2, 2, 927, 924, 3, 2, 2, 2, 928, 77, 3, 2, 2, 2, 929, 930, 5, 440, 221, 2, 930, 79, 3, 2, 2, 2, 931, 964, 5, 126, 64, 2, 932, 934, 7, 56, 2, 2, 933, 932, 3, 2, 2, 2, 933, 934, 3, 2, 2, 2, 934, 935, 3, 2, 2, 2, 935, 964, 7, 21, 2, 2, 936, 937, 7, 69, 2, 2, 937, 964, 7, 70, 2, 2, 938, 964, 7, 71, 2, 2, 939, 940, 7, 72, 2, 2, 940, 941, 5, 330, 166, 2, 941, 942, 7, 26, 2, 2, 942, 943, 5, 440, 221, 2, 943, 947, 7, 27, 2, 2, 944, 946, 5, 84, 43, 2, 945, 944, 3, 2, 2, 2, 946, 949, 3, 2, 2, 2, 947, 945, 3, 2, 2, 2, 947, 948, 3, 2, 2, 2, 948, 964, 3, 2, 2, 2, 949, 947, 3, 2, 2, 2, 950, 951, 7, 73, 2, 2, 951, 952, 7, 26, 2, 2, 952, 957, 7, 74, 2, 2, 953, 954, 7, 23, 2, 2, 954, 956, 7, 74, 2, 2, 955, 953, 3, 2, 2, 2, 956, 959, 3, 2, 2, 2, 957, 955, 3, 2, 2, 2, 957, 958, 3, 2, 2, 2, 958, 960, 3, 2, 2, 2, 959, 957, 3, 2, 2, 2, 960, 964, 7, 27, 2, 2, 961, 964, 7, 75, 2, 2, 962, 964, 7, 76, 2, 2, 963, 931, 3, 2, 2, 2, 963, 933, 3, 2, 2, 2, 963, 936, 3, 2, 2, 2, 963, 938, 3, 2, 2, 2, 963, 939, 3, 2, 2, 2, 963, 950, 3, 2, 2, 2, 963, 961, 3, 2, 2, 2, 963, 962, 3, 2, 2, 2, 964, 81, 3, 2, 2, 2, 965, 966, 7, 69, 2, 2, 966, 968, 7, 70, 2, 2, 967, 969, 7, 77, 2, 2, 968, 967, 3, 2, 2, 2, 968, 969, 3, 2, 2, 2, 969, 970, 3, 2, 2, 2, 970, 971, 7, 26, 2, 2, 971, 973, 5, 440, 221, 2, 972, 974, 9, 9, 2, 2, 973, 972, 3, 2, 2, 2, 973, 974, 3, 2, 2, 2, 974, 982, 3, 2, 2, 2, 975, 976, 7, 23, 2, 2, 976, 978, 5, 440, 221, 2, 977, 979, 9, 9, 2, 2, 978, 977, 3, 2, 2, 2, 978, 979, 3, 2, 2, 2, 979, 981, 3, 2, 2, 2, 980, 975, 3, 2, 2, 2, 981, 984, 3, 2, 2, 2, 982, 980, 3, 2, 2, 2, 982, 983, 3, 2, 2, 2, 983, 985, 3, 2, 2, 2, 984, 982, 3, 2, 2, 2, 985, 987, 7, 27, 2, 2, 986, 988, 7, 76, 2, 2, 987, 986, 3, 2, 2, 2, 987, 988, 3, 2, 2, 2, 988, 990, 3, 2, 2, 2, 989, 991, 5, 238, 120, 2, 990, 989, 3, 2, 2, 2, 990, 991, 3, 2, 2, 2, 991, 1023, 3, 2, 2, 2, 992, 993, 7, 80, 2, 2, 993, 994, 7, 70, 2, 2, 994, 995, 7, 26, 2, 2, 995, 1000, 5, 440, 221, 2, 996, 997, 7, 23, 2, 2, 997, 999, 5, 440, 221, 2, 998, 996, 3, 2, 2, 2, 999, 1002, 3, 2, 2, 2, 1000, 998, 3, 2, 2, 2, 1000, 1001, 3, 2, 2, 2, 1001, 1003, 3, 2, 2, 2, 1002, 1000, 3, 2, 2, 2, 1003, 1004, 7, 27, 2, 2, 1004, 1005, 7, 72, 2, 2, 1005, 1006, 5, 330, 166, 2, 1006, 1007, 7, 26, 2, 2, 1007, 1012, 5, 440, 221, 2, 1008, 1009, 7, 23, 2, 2, 1009, 1011, 5, 440, 221, 2, 1010, 1008, 3, 2, 2, 2, 1011, 1014, 3, 2, 2, 2, 1012, 1010, 3, 2, 2, 2, 1012, 1013, 3, 2, 2, 2, 1013, 1015, 3, 2, 2, 2, 1014, 1012, 3, 2, 2, 2, 1015, 1019, 7, 27, 2, 2, 1016, 1018, 5, 84, 43, 2, 1017, 1016, 3, 2, 2, 2, 1018, 1021, 3, 2, 2, 2, 1019, 1017, 3, 2, 2, 2, 1019, 1020, 3, 2, 2, 2, 1020, 1023, 3, 2, 2, 2, 1021, 1019, 3, 2, 2, 2, 1022, 965, 3, 2, 2, 2, 1022, 992, 3, 2, 2, 2, 1023, 83, 3, 2, 2, 2, 1024, 1025, 7, 81, 2, 2, 1025, 1034, 9, 10, 2, 2, 1026, 1027, 7, 84, 2, 2, 1027, 1035, 7, 85, 2, 2, 1028, 1035, 7, 86, 2, 2, 1029, 1030, 7, 22, 2, 2, 1030, 1035, 7, 21, 2, 2, 1031, 1032, 7, 22, 2, 2, 1032, 1035, 7, 87, 2, 2, 1033, 1035, 7, 88, 2, 2, 1034, 1026, 3, 2, 2, 2, 1034, 1028, 3, 2, 2, 2, 1034, 1029, 3, 2, 2, 2, 1034, 1031, 3, 2, 2, 2, 1034, 1033, 3, 2, 2, 2, 1035, 85, 3, 2, 2, 2, 1036, 1038, 5, 88, 45, 2, 1037, 1036, 3, 2, 2, 2, 1038, 1039, 3, 2, 2, 2, 1039, 1037, 3, 2, 2, 2, 1039, 1040, 3, 2, 2, 2, 1040, 87, 3, 2, 2, 2, 1041, 1042, 7, 23, 2, 2, 1042, 1045, 5, 90, 46, 2, 1043, 1045, 5, 102, 52, 2, 1044, 1041, 3, 2, 2, 2, 1044, 1043, 3, 2, 2, 2, 1045, 89, 3, 2, 2, 2, 1046, 1048, 7, 84, 2, 2, 1047, 1046, 3, 2, 2, 2, 1047, 1048, 3, 2, 2, 2, 1048, 1049, 3, 2, 2, 2, 1049, 1050, 9, 11, 2, 2, 1050, 91, 3, 2, 2, 2, 1051, 1053, 5, 94, 48, 2, 1052, 1051, 3, 2, 2, 2, 1053, 1054, 3, 2, 2, 2, 1054, 1052, 3, 2, 2, 2, 1054, 1055, 3, 2, 2, 2, 1055, 93, 3, 2, 2, 2, 1056, 1057, 7, 81, 2, 2, 1057, 1058, 7, 91, 2, 2, 1058, 1059, 9, 12, 2, 2, 1059, 1067, 7, 93, 2, 2, 1060, 1067, 5, 96, 49, 2, 1061, 1067, 5, 98, 50, 2, 1062, 1067, 5, 100, 51, 2, 1063, 1067, 5, 102, 52, 2, 1064, 1067, 5, 108, 55, 2, 1065, 1067, 5, 110, 56, 2, 1066, 1056, 3, 2, 2, 2, 1066, 1060, 3, 2, 2, 2, 1066, 1061, 3, 2, 2, 2, 1066, 1062, 3, 2, 2, 2, 1066, 1063, 3, 2, 2, 2, 1066, 1064, 3, 2, 2, 2, 1066, 1065, 3, 2, 2, 2, 1067, 95, 3, 2, 2, 2, 1068, 1069, 7, 94, 2, 2, 1069, 1070, 7, 95, 2, 2, 1070, 1087, 9, 13, 2, 2, 1071, 1072, 9, 14, 2, 2, 1072, 1087, 7, 74, 2, 2, 1073, 1087, 7, 102, 2, 2, 1074, 1087, 9, 15, 2, 2, 1075, 1076, 7, 105, 2, 2, 1076, 1079, 7, 26, 2, 2, 1077, 1080, 5, 440, 221, 2, 1078, 1080, 7, 74, 2, 2, 1079, 1077, 3, 2, 2, 2, 1079, 1078, 3, 2, 2, 2, 1080, 1081, 3, 2, 2, 2, 1081, 1079, 3, 2, 2, 2, 1081, 1082, 3, 2, 2, 2, 1082, 1083, 3, 2, 2, 2, 1083, 1087, 7, 27, 2, 2, 1084, 1085, 7, 106, 2, 2, 1085, 1087, 5, 440, 221, 2, 1086, 1068, 3, 2, 2, 2, 1086, 1071, 3, 2, 2, 2, 1086, 1073, 3, 2, 2, 2, 1086, 1074, 3, 2, 2, 2, 1086, 1075, 3, 2, 2, 2, 1086, 1084, 3, 2, 2, 2, 1087, 97, 3, 2, 2, 2, 1088, 1090, 7, 107, 2, 2, 1089, 1088, 3, 2, 2, 2, 1089, 1090, 3, 2, 2, 2, 1090, 1091, 3, 2, 2, 2, 1091, 1092, 7, 108, 2, 2, 1092, 1122, 5, 440, 221, 2, 1093, 1094, 7, 36, 2, 2, 1094, 1122, 7, 109, 2, 2, 1095, 1096, 7, 110, 2, 2, 1096, 1097, 7, 111, 2, 2, 1097, 1098, 7, 112, 2, 2, 1098, 1099, 7, 26, 2, 2, 1099, 1104, 5, 440, 221, 2, 1100, 1101, 7, 23, 2, 2, 1101, 1103, 5, 440, 221, 2, 1102, 1100, 3, 2, 2, 2, 1103, 1106, 3, 2, 2, 2, 1104, 1102, 3, 2, 2, 2, 1104, 1105, 3, 2, 2, 2, 1105, 1107, 3, 2, 2, 2, 1106, 1104, 3, 2, 2, 2, 1107, 1108, 7, 27, 2, 2, 1108, 1122, 3, 2, 2, 2, 1109, 1111, 7, 56, 2, 2, 1110, 1109, 3, 2, 2, 2, 1110, 1111, 3, 2, 2, 2, 1111, 1112, 3, 2, 2, 2, 1112, 1122, 7, 113, 2, 2, 1113, 1114, 7, 114, 2, 2, 1114, 1122, 9, 16, 2, 2, 1115, 1116, 7, 116, 2, 2, 1116, 1122, 7, 46, 2, 2, 1117, 1118, 7, 36, 2, 2, 1118, 1119, 7, 86, 2, 2, 1119, 1120, 7, 81, 2, 2, 1120, 1122, 7, 117, 2, 2, 1121, 1089, 3, 2, 2, 2, 1121, 1093, 3, 2, 2, 2, 1121, 1095, 3, 2, 2, 2, 1121, 1110, 3, 2, 2, 2, 1121, 1113, 3, 2, 2, 2, 1121, 1115, 3, 2, 2, 2, 1121, 1117, 3, 2, 2, 2, 1122, 99, 3, 2, 2, 2, 1123, 1125, 7, 71, 2, 2, 1124, 1123, 3, 2, 2, 2, 1124, 1125, 3, 2, 2, 2, 1125, 1126, 3, 2, 2, 2, 1126, 1127, 7, 69, 2, 2, 1127, 1128, 7, 107, 2, 2, 1128, 1129, 7, 26, 2, 2, 1129, 1134, 5, 440, 221, 2, 1130, 1131, 7, 23, 2, 2, 1131, 1133, 5, 440, 221, 2, 1132, 1130, 3, 2, 2, 2, 1133, 1136, 3, 2, 2, 2, 1134, 1132, 3, 2, 2, 2, 1134, 1135, 3, 2, 2, 2, 1135, 1137, 3, 2, 2, 2, 1136, 1134, 3, 2, 2, 2, 1137, 1138, 7, 27, 2, 2, 1138, 1142, 3, 2, 2, 2, 1139, 1140, 7, 36, 2, 2, 1140, 1142, 7, 118, 2, 2, 1141, 1124, 3, 2, 2, 2, 1141, 1139, 3, 2, 2, 2, 1142, 101, 3, 2, 2, 2, 1143, 1148, 5, 104, 53, 2, 1144, 1145, 7, 119, 2, 2, 1145, 1146, 7, 41, 2, 2, 1146, 1148, 5, 440, 221, 2, 1147, 1143, 3, 2, 2, 2, 1147, 1144, 3, 2, 2, 2, 1148, 103, 3, 2, 2, 2, 1149, 1150, 7, 120, 2, 2, 1150, 1151, 7, 121, 2, 2, 1151, 1155, 7, 122, 2, 2, 1152, 1154, 5, 106, 54, 2, 1153, 1152, 3, 2, 2, 2, 1154, 1157, 3, 2, 2, 2, 1155, 1153, 3, 2, 2, 2, 1155, 1156, 3, 2, 2, 2, 1156, 105, 3, 2, 2, 2, 1157, 1155, 3, 2, 2, 2, 1158, 1159, 7, 123, 2, 2, 1159, 1160, 7, 124, 2, 2, 1160, 1161, 7, 111, 2, 2, 1161, 1165, 5, 384, 193, 2, 1162, 1163, 7, 125, 2, 2, 1163, 1164, 7, 111, 2, 2, 1164, 1166, 5, 384, 193, 2, 1165, 1162, 3, 2, 2, 2, 1165, 1166, 3, 2, 2, 2, 1166, 1186, 3, 2, 2, 2, 1167, 1168, 7, 126, 2, 2, 1168, 1169, 7, 127, 2, 2, 1169, 1170, 7, 124, 2, 2, 1170, 1171, 7, 111, 2, 2, 1171, 1186, 5, 384, 193, 2, 1172, 1173, 7, 128, 2, 2, 1173, 1174, 7, 129, 2, 2, 1174, 1175, 7, 124, 2, 2, 1175, 1176, 7, 111, 2, 2, 1176, 1186, 5, 384, 193, 2, 1177, 1178, 7, 130, 2, 2, 1178, 1179, 7, 124, 2, 2, 1179, 1180, 7, 111, 2, 2, 1180, 1186, 5, 384, 193, 2, 1181, 1182, 7, 21, 2, 2, 1182, 1183, 7, 131, 2, 2, 1183, 1184, 7, 41, 2, 2, 1184, 1186, 5, 384, 193, 2, 1185, 1158, 3, 2, 2, 2, 1185, 1167, 3, 2, 2, 2, 1185, 1172, 3, 2, 2, 2, 1185, 1177, 3, 2, 2, 2, 1185, 1181, 3, 2, 2, 2, 1186, 107, 3, 2, 2, 2, 1187, 1188, 7, 81, 2, 2, 1188, 1192, 5, 440, 221, 2, 1189, 1190, 7, 132, 2, 2, 1190, 1192, 5, 440, 221, 2, 1191, 1187, 3, 2, 2, 2, 1191, 1189, 3, 2, 2, 2, 1192, 109, 3, 2, 2, 2, 1193, 1195, 7, 75, 2, 2, 1194, 1196, 7, 25, 2, 2, 1195, 1194, 3, 2, 2, 2, 1195, 1196, 3, 2, 2, 2, 1196, 1197, 3, 2, 2, 2, 1197, 1221, 5, 384, 193, 2, 1198, 1200, 7, 133, 2, 2, 1199, 1201, 7, 25, 2, 2, 1200, 1199, 3, 2, 2, 2, 1200, 1201, 3, 2, 2, 2, 1201, 1202, 3, 2, 2, 2, 1202, 1221, 5, 384, 193, 2, 1203, 1205, 7, 87, 2, 2, 1204, 1203, 3, 2, 2, 2, 1204, 1205, 3, 2, 2, 2, 1205, 1209, 3, 2, 2, 2, 1206, 1207, 7, 134, 2, 2, 1207, 1210, 7, 22, 2, 2, 1208, 1210, 7, 135, 2, 2, 1209, 1206, 3, 2, 2, 2, 1209, 1208, 3, 2, 2, 2, 1210, 1212, 3, 2, 2, 2, 1211, 1213, 7, 25, 2, 2, 1212, 1211, 3, 2, 2, 2, 1212, 1213, 3, 2, 2, 2, 1213, 1214, 3, 2, 2, 2, 1214, 1221, 5, 384, 193, 2, 1215, 1217, 7, 136, 2, 2, 1216, 1218, 7, 25, 2, 2, 1217, 1216, 3, 2, 2, 2, 1217, 1218, 3, 2, 2, 2, 1218, 1219, 3, 2, 2, 2, 1219, 1221, 5, 384, 193, 2, 1220, 1193, 3, 2, 2, 2, 1220, 1198, 3, 2, 2, 2, 1220, 1204, 3, 2, 2, 2, 1220, 1215, 3, 2, 2, 2, 1221, 111, 3, 2, 2, 2, 1222, 1223, 7, 137, 2, 2, 1223, 1224, 7, 60, 2, 2, 1224, 1225, 5, 330, 166, 2, 1225, 1226, 5, 114, 58, 2, 1226, 113, 3, 2, 2, 2, 1227, 1228, 5, 116, 59, 2, 1228, 115, 3, 2, 2, 2, 1229, 1232, 7, 138, 2, 2, 1230, 1231, 7, 68, 2, 2, 1231, 1233, 5, 440, 221, 2, 1232, 1230, 3, 2, 2, 2, 1232, 1233, 3, 2, 2, 2, 1233, 1234, 3, 2, 2, 2, 1234, 1235, 5, 118, 60, 2, 1235, 117, 3, 2, 2, 2, 1236, 1237, 7, 69, 2, 2, 1237, 1239, 7, 70, 2, 2, 1238, 1240, 7, 77, 2, 2, 1239, 1238, 3, 2, 2, 2, 1239, 1240, 3, 2, 2, 2, 1240, 1241, 3, 2, 2, 2, 1241, 1242, 7, 26, 2, 2, 1242, 1244, 5, 440, 221, 2, 1243, 1245, 9, 9, 2, 2, 1244, 1243, 3, 2, 2, 2, 1244, 1245, 3, 2, 2, 2, 1245, 1253, 3, 2, 2, 2, 1246, 1247, 7, 23, 2, 2, 1247, 1249, 5, 440, 221, 2, 1248, 1250, 9, 9, 2, 2, 1249, 1248, 3, 2, 2, 2, 1249, 1250, 3, 2, 2, 2, 1250, 1252, 3, 2, 2, 2, 1251, 1246, 3, 2, 2, 2, 1252, 1255, 3, 2, 2, 2, 1253, 1251, 3, 2, 2, 2, 1253, 1254, 3, 2, 2, 2, 1254, 1256, 3, 2, 2, 2, 1255, 1253, 3, 2, 2, 2, 1256, 1258, 7, 27, 2, 2, 1257, 1259, 7, 76, 2, 2, 1258, 1257, 3, 2, 2, 2, 1258, 1259, 3, 2, 2, 2, 1259, 1261, 3, 2, 2, 2, 1260, 1262, 5, 238, 120, 2, 1261, 1260, 3, 2, 2, 2, 1261, 1262, 3, 2, 2, 2, 1262, 1299, 3, 2, 2, 2, 1263, 1264, 7, 80, 2, 2, 1264, 1265, 7, 70, 2, 2, 1265, 1266, 7, 26, 2, 2, 1266, 1271, 5, 440, 221, 2, 1267, 1268, 7, 23, 2, 2, 1268, 1270, 5, 440, 221, 2, 1269, 1267, 3, 2, 2, 2, 1270, 1273, 3, 2, 2, 2, 1271, 1269, 3, 2, 2, 2, 1271, 1272, 3, 2, 2, 2, 1272, 1274, 3, 2, 2, 2, 1273, 1271, 3, 2, 2, 2, 1274, 1275, 7, 27, 2, 2, 1275, 1276, 7, 72, 2, 2, 1276, 1277, 5, 330, 166, 2, 1277, 1278, 7, 26, 2, 2, 1278, 1283, 5, 440, 221, 2, 1279, 1280, 7, 23, 2, 2, 1280, 1282, 5, 440, 221, 2, 1281, 1279, 3, 2, 2, 2, 1282, 1285, 3, 2, 2, 2, 1283, 1281, 3, 2, 2, 2, 1283, 1284, 3, 2, 2, 2, 1284, 1286, 3, 2, 2, 2, 1285, 1283, 3, 2, 2, 2, 1286, 1290, 7, 27, 2, 2, 1287, 1289, 5, 84, 43, 2, 1288, 1287, 3, 2, 2, 2, 1289, 1292, 3, 2, 2, 2, 1290, 1288, 3, 2, 2, 2, 1290, 1291, 3, 2, 2, 2, 1291, 1299, 3, 2, 2, 2, 1292, 1290, 3, 2, 2, 2, 1293, 1294, 7, 87, 2, 2, 1294, 1295, 5, 384, 193, 2, 1295, 1296, 7, 30, 2, 2, 1296, 1297, 5, 440, 221, 2, 1297, 1299, 3, 2, 2, 2, 1298, 1236, 3, 2, 2, 2, 1298, 1263, 3, 2, 2, 2, 1298, 1293, 3, 2, 2, 2, 1299, 119, 3, 2, 2, 2, 1300, 1347, 7, 139, 2, 2, 1301, 1347, 7, 134, 2, 2, 1302, 1347, 7, 140, 2, 2, 1303, 1347, 7, 141, 2, 2, 1304, 1347, 7, 142, 2, 2, 1305, 1347, 7, 143, 2, 2, 1306, 1347, 7, 144, 2, 2, 1307, 1347, 7, 145, 2, 2, 1308, 1347, 7, 146, 2, 2, 1309, 1347, 7, 147, 2, 2, 1310, 1347, 7, 148, 2, 2, 1311, 1313, 7, 149, 2, 2, 1312, 1314, 7, 150, 2, 2, 1313, 1312, 3, 2, 2, 2, 1313, 1314, 3, 2, 2, 2, 1314, 1347, 3, 2, 2, 2, 1315, 1347, 7, 151, 2, 2, 1316, 1347, 7, 152, 2, 2, 1317, 1347, 7, 153, 2, 2, 1318, 1347, 7, 154, 2, 2, 1319, 1347, 7, 155, 2, 2, 1320, 1347, 7, 156, 2, 2, 1321, 1347, 7, 157, 2, 2, 1322, 1347, 7, 158, 2, 2, 1323, 1347, 7, 159, 2, 2, 1324, 1347, 7, 160, 2, 2, 1325, 1347, 7, 161, 2, 2, 1326, 1347, 7, 162, 2, 2, 1327, 1328, 7, 163, 2, 2, 1328, 1347, 7, 164, 2, 2, 1329, 1347, 7, 165, 2, 2, 1330, 1347, 7, 166, 2, 2, 1331, 1347, 7, 167, 2, 2, 1332, 1347, 7, 168, 2, 2, 1333, 1347, 7, 169, 2, 2, 1334, 1347, 7, 170, 2, 2, 1335, 1347, 7, 171, 2, 2, 1336, 1347, 7, 172, 2, 2, 1337, 1347, 7, 173, 2, 2, 1338, 1347, 7, 174, 2, 2, 1339, 1347, 7, 175, 2, 2, 1340, 1347, 7, 176, 2, 2, 1341, 1344, 5, 440, 221, 2, 1342, 1343, 7, 6, 2, 2, 1343, 1345, 9, 17, 2, 2, 1344, 1342, 3, 2, 2, 2, 1344, 1345, 3, 2, 2, 2, 1345, 1347, 3, 2, 2, 2, 1346, 1300, 3, 2, 2, 2, 1346, 1301, 3, 2, 2, 2, 1346, 1302, 3, 2, 2, 2, 1346, 1303, 3, 2, 2, 2, 1346, 1304, 3, 2, 2, 2, 1346, 1305, 3, 2, 2, 2, 1346, 1306, 3, 2, 2, 2, 1346, 1307, 3, 2, 2, 2, 1346, 1308, 3, 2, 2, 2, 1346, 1309, 3, 2, 2, 2, 1346, 1310, 3, 2, 2, 2, 1346, 1311, 3, 2, 2, 2, 1346, 1315, 3, 2, 2, 2, 1346, 1316, 3, 2, 2, 2, 1346, 1317, 3, 2, 2, 2, 1346, 1318, 3, 2, 2, 2, 1346, 1319, 3, 2, 2, 2, 1346, 1320, 3, 2, 2, 2, 1346, 1321, 3, 2, 2, 2, 1346, 1322, 3, 2, 2, 2, 1346, 1323, 3, 2, 2, 2, 1346, 1324, 3, 2, 2, 2, 1346, 1325, 3, 2, 2, 2, 1346, 1326, 3, 2, 2, 2, 1346, 1327, 3, 2, 2, 2, 1346, 1329, 3, 2, 2, 2, 1346, 1330, 3, 2, 2, 2, 1346, 1331, 3, 2, 2, 2, 1346, 1332, 3, 2, 2, 2, 1346, 1333, 3, 2, 2, 2, 1346, 1334, 3, 2, 2, 2, 1346, 1335, 3, 2, 2, 2, 1346, 1336, 3, 2, 2, 2, 1346, 1337, 3, 2, 2, 2, 1346, 1338, 3, 2, 2, 2, 1346, 1339, 3, 2, 2, 2, 1346, 1340, 3, 2, 2, 2, 1346, 1341, 3, 2, 2, 2, 1347, 121, 3, 2, 2, 2, 1348, 1349, 7, 26, 2, 2, 1349, 1351, 9, 18, 2, 2, 1350, 1352, 9, 19, 2, 2, 1351, 1350, 3, 2, 2, 2, 1351, 1352, 3, 2, 2, 2, 1352, 1355, 3, 2, 2, 2, 1353, 1354, 7, 23, 2, 2, 1354, 1356, 7, 74, 2, 2, 1355, 1353, 3, 2, 2, 2, 1355, 1356, 3, 2, 2, 2, 1356, 1357, 3, 2, 2, 2, 1357, 1358, 7, 27, 2, 2, 1358, 123, 3, 2, 2, 2, 1359, 1361, 7, 56, 2, 2, 1360, 1359, 3, 2, 2, 2, 1360, 1361, 3, 2, 2, 2, 1361, 1362, 3, 2, 2, 2, 1362, 1371, 7, 21, 2, 2, 1363, 1364, 7, 134, 2, 2, 1364, 1365, 7, 22, 2, 2, 1365, 1371, 5, 440, 221, 2, 1366, 1368, 7, 56, 2, 2, 1367, 1366, 3, 2, 2, 2, 1367, 1368, 3, 2, 2, 2, 1368, 1369, 3, 2, 2, 2, 1369, 1371, 9, 20, 2, 2, 1370, 1360, 3, 2, 2, 2, 1370, 1363, 3, 2, 2, 2, 1370, 1367, 3, 2, 2, 2, 1371, 125, 3, 2, 2, 2, 1372, 1374, 7, 24, 2, 2, 1373, 1372, 3, 2, 2, 2, 1373, 1374, 3, 2, 2, 2, 1374, 1375, 3, 2, 2, 2, 1375, 1376, 7, 25, 2, 2, 1376, 1385, 5, 384, 193, 2, 1377, 1379, 7, 36, 2, 2, 1378, 1377, 3, 2, 2, 2, 1378, 1379, 3, 2, 2, 2, 1379, 1380, 3, 2, 2, 2, 1380, 1382, 7, 87, 2, 2, 1381, 1383, 5, 384, 193, 2, 1382, 1381, 3, 2, 2, 2, 1382, 1383, 3, 2, 2, 2, 1383, 1385, 3, 2, 2, 2, 1384, 1373, 3, 2, 2, 2, 1384, 1378, 3, 2, 2, 2, 1385, 127, 3, 2, 2, 2, 1386, 1387, 7, 61, 2, 2, 1387, 1391, 9, 21, 2, 2, 1388, 1389, 7, 62, 2, 2, 1389, 1390, 7, 56, 2, 2, 1390, 1392, 7, 63, 2, 2, 1391, 1388, 3, 2, 2, 2, 1391, 1392, 3, 2, 2, 2, 1392, 1393, 3, 2, 2, 2, 1393, 1397, 5, 384, 193, 2, 1394, 1396, 5, 130, 66, 2, 1395, 1394, 3, 2, 2, 2, 1396, 1399, 3, 2, 2, 2, 1397, 1395, 3, 2, 2, 2, 1397, 1398, 3, 2, 2, 2, 1398, 129, 3, 2, 2, 2, 1399, 1397, 3, 2, 2, 2, 1400, 1401, 7, 133, 2, 2, 1401, 1405, 5, 384, 193, 2, 1402, 1403, 7, 185, 2, 2, 1403, 1405, 5, 384, 193, 2, 1404, 1400, 3, 2, 2, 2, 1404, 1402, 3, 2, 2, 2, 1405, 131, 3, 2, 2, 2, 1406, 1414, 7, 137, 2, 2, 1407, 1410, 7, 61, 2, 2, 1408, 1409, 7, 186, 2, 2, 1409, 1411, 7, 109, 2, 2, 1410, 1408, 3, 2, 2, 2, 1410, 1411, 3, 2, 2, 2, 1411, 1414, 3, 2, 2, 2, 1412, 1414, 7, 109, 2, 2, 1413, 1406, 3, 2, 2, 2, 1413, 1407, 3, 2, 2, 2, 1413, 1412, 3, 2, 2, 2, 1413, 1414, 3, 2, 2, 2, 1414, 1415, 3, 2, 2, 2, 1415, 1416, 7, 187, 2, 2, 1416, 1418, 5, 440, 221, 2, 1417, 1419, 5, 150, 76, 2, 1418, 1417, 3, 2, 2, 2, 1418, 1419, 3, 2, 2, 2, 1419, 1420, 3, 2, 2, 2, 1420, 1422, 5, 134, 68, 2, 1421, 1423, 9, 22, 2, 2, 1422, 1421, 3, 2, 2, 2, 1422, 1423, 3, 2, 2, 2, 1423, 1425, 3, 2, 2, 2, 1424, 1426, 5, 50, 26, 2, 1425, 1424, 3, 2, 2, 2, 1425, 1426, 3, 2, 2, 2, 1426, 1427, 3, 2, 2, 2, 1427, 1428, 5, 8, 5, 2, 1428, 133, 3, 2, 2, 2, 1429, 1430, 9, 23, 2, 2, 1430, 1432, 5, 120, 61, 2, 1431, 1433, 5, 122, 62, 2, 1432, 1431, 3, 2, 2, 2, 1432, 1433, 3, 2, 2, 2, 1433, 135, 3, 2, 2, 2, 1434, 1442, 7, 137, 2, 2, 1435, 1438, 7, 61, 2, 2, 1436, 1437, 7, 186, 2, 2, 1437, 1439, 7, 109, 2, 2, 1438, 1436, 3, 2, 2, 2, 1438, 1439, 3, 2, 2, 2, 1439, 1442, 3, 2, 2, 2, 1440, 1442, 7, 109, 2, 2, 1441, 1434, 3, 2, 2, 2, 1441, 1435, 3, 2, 2, 2, 1441, 1440, 3, 2, 2, 2, 1441, 1442, 3, 2, 2, 2, 1442, 1443, 3, 2, 2, 2, 1443, 1444, 7, 189, 2, 2, 1444, 1445, 5, 440, 221, 2, 1445, 1446, 9, 22, 2, 2, 1446, 1447, 5, 138, 70, 2, 1447, 1451, 7, 16, 2, 2, 1448, 1449, 5, 440, 221, 2, 1449, 1450, 7, 15, 2, 2, 1450, 1452, 3, 2, 2, 2, 1451, 1448, 3, 2, 2, 2, 1451, 1452, 3, 2, 2, 2, 1452, 137, 3, 2, 2, 2, 1453, 1454, 5, 140, 71, 2, 1454, 1460, 7, 15, 2, 2, 1455, 1456, 5, 140, 71, 2, 1456, 1457, 7, 15, 2, 2, 1457, 1459, 3, 2, 2, 2, 1458, 1455, 3, 2, 2, 2, 1459, 1462, 3, 2, 2, 2, 1460, 1458, 3, 2, 2, 2, 1460, 1461, 3, 2, 2, 2, 1461, 139, 3, 2, 2, 2, 1462, 1460, 3, 2, 2, 2, 1463, 1477, 5, 52, 27, 2, 1464, 1465, 7, 187, 2, 2, 1465, 1467, 5, 440, 221, 2, 1466, 1468, 5, 150, 76, 2, 1467, 1466, 3, 2, 2, 2, 1467, 1468, 3, 2, 2, 2, 1468, 1469, 3, 2, 2, 2, 1469, 1470, 5, 134, 68, 2, 1470, 1477, 3, 2, 2, 2, 1471, 1472, 9, 24, 2, 2, 1472, 1474, 5, 440, 221, 2, 1473, 1475, 5, 150, 76, 2, 1474, 1473, 3, 2, 2, 2, 1474, 1475, 3, 2, 2, 2, 1475, 1477, 3, 2, 2, 2, 1476, 1463, 3, 2, 2, 2, 1476, 1464, 3, 2, 2, 2, 1476, 1471, 3, 2, 2, 2, 1477, 141, 3, 2, 2, 2, 1478, 1486, 7, 137, 2, 2, 1479, 1482, 7, 61, 2, 2, 1480, 1481, 7, 186, 2, 2, 1481, 1483, 7, 109, 2, 2, 1482, 1480, 3, 2, 2, 2, 1482, 1483, 3, 2, 2, 2, 1483, 1486, 3, 2, 2, 2, 1484, 1486, 7, 109, 2, 2, 1485, 1478, 3, 2, 2, 2, 1485, 1479, 3, 2, 2, 2, 1485, 1484, 3, 2, 2, 2, 1485, 1486, 3, 2, 2, 2, 1486, 1487, 3, 2, 2, 2, 1487, 1488, 7, 189, 2, 2, 1488, 1489, 7, 191, 2, 2, 1489, 1490, 5, 440, 221, 2, 1490, 1491, 9, 22, 2, 2, 1491, 1492, 5, 144, 73, 2, 1492, 1496, 7, 16, 2, 2, 1493, 1494, 5, 440, 221, 2, 1494, 1495, 7, 15, 2, 2, 1495, 1497, 3, 2, 2, 2, 1496, 1493, 3, 2, 2, 2, 1496, 1497, 3, 2, 2, 2, 1497, 143, 3, 2, 2, 2, 1498, 1499, 5, 146, 74, 2, 1499, 1505, 7, 15, 2, 2, 1500, 1501, 5, 146, 74, 2, 1501, 1502, 7, 15, 2, 2, 1502, 1504, 3, 2, 2, 2, 1503, 1500, 3, 2, 2, 2, 1504, 1507, 3, 2, 2, 2, 1505, 1503, 3, 2, 2, 2, 1505, 1506, 3, 2, 2, 2, 1506, 145, 3, 2, 2, 2, 1507, 1505, 3, 2, 2, 2, 1508, 1512, 5, 52, 27, 2, 1509, 1512, 5, 132, 67, 2, 1510, 1512, 5, 148, 75, 2, 1511, 1508, 3, 2, 2, 2, 1511, 1509, 3, 2, 2, 2, 1511, 1510, 3, 2, 2, 2, 1512, 147, 3, 2, 2, 2, 1513, 1521, 7, 137, 2, 2, 1514, 1517, 7, 61, 2, 2, 1515, 1516, 7, 186, 2, 2, 1516, 1518, 7, 109, 2, 2, 1517, 1515, 3, 2, 2, 2, 1517, 1518, 3, 2, 2, 2, 1518, 1521, 3, 2, 2, 2, 1519, 1521, 7, 109, 2, 2, 1520, 1513, 3, 2, 2, 2, 1520, 1514, 3, 2, 2, 2, 1520, 1519, 3, 2, 2, 2, 1520, 1521, 3, 2, 2, 2, 1521, 1522, 3, 2, 2, 2, 1522, 1523, 9, 24, 2, 2, 1523, 1525, 5, 440, 221, 2, 1524, 1526, 5, 150, 76, 2, 1525, 1524, 3, 2, 2, 2, 1525, 1526, 3, 2, 2, 2, 1526, 1528, 3, 2, 2, 2, 1527, 1529, 5, 154, 78, 2, 1528, 1527, 3, 2, 2, 2, 1528, 1529, 3, 2, 2, 2, 1529, 1531, 3, 2, 2, 2, 1530, 1532, 9, 22, 2, 2, 1531, 1530, 3, 2, 2, 2, 1531, 1532, 3, 2, 2, 2, 1532, 1534, 3, 2, 2, 2, 1533, 1535, 5, 50, 26, 2, 1534, 1533, 3, 2, 2, 2, 1534, 1535, 3, 2, 2, 2, 1535, 1537, 3, 2, 2, 2, 1536, 1538, 5, 278, 140, 2, 1537, 1536, 3, 2, 2, 2, 1537, 1538, 3, 2, 2, 2, 1538, 1539, 3, 2, 2, 2, 1539, 1543, 5, 12, 7, 2, 1540, 1541, 5, 440, 221, 2, 1541, 1542, 7, 15, 2, 2, 1542, 1544, 3, 2, 2, 2, 1543, 1540, 3, 2, 2, 2, 1543, 1544, 3, 2, 2, 2, 1544, 149, 3, 2, 2, 2, 1545, 1546, 7, 26, 2, 2, 1546, 1568, 7, 27, 2, 2, 1547, 1548, 7, 26, 2, 2, 1548, 1553, 5, 152, 77, 2, 1549, 1550, 7, 23, 2, 2, 1550, 1552, 5, 152, 77, 2, 1551, 1549, 3, 2, 2, 2, 1552, 1555, 3, 2, 2, 2, 1553, 1551, 3, 2, 2, 2, 1553, 1554, 3, 2, 2, 2, 1554, 1556, 3, 2, 2, 2, 1555, 1553, 3, 2, 2, 2, 1556, 1557, 7, 27, 2, 2, 1557, 1568, 3, 2, 2, 2, 1558, 1559, 6, 76, 4, 2, 1559, 1564, 5, 152, 77, 2, 1560, 1561, 7, 23, 2, 2, 1561, 1563, 5, 152, 77, 2, 1562, 1560, 3, 2, 2, 2, 1563, 1566, 3, 2, 2, 2, 1564, 1562, 3, 2, 2, 2, 1564, 1565, 3, 2, 2, 2, 1565, 1568, 3, 2, 2, 2, 1566, 1564, 3, 2, 2, 2, 1567, 1545, 3, 2, 2, 2, 1567, 1547, 3, 2, 2, 2, 1567, 1558, 3, 2, 2, 2, 1568, 151, 3, 2, 2, 2, 1569, 1575, 7, 108, 2, 2, 1570, 1575, 7, 192, 2, 2, 1571, 1575, 7, 193, 2, 2, 1572, 1573, 7, 108, 2, 2, 1573, 1575, 7, 192, 2, 2, 1574, 1569, 3, 2, 2, 2, 1574, 1570, 3, 2, 2, 2, 1574, 1571, 3, 2, 2, 2, 1574, 1572, 3, 2, 2, 2, 1574, 1575, 3, 2, 2, 2, 1575, 1576, 3, 2, 2, 2, 1576, 1577, 5, 440, 221, 2, 1577, 1579, 5, 120, 61, 2, 1578, 1580, 5, 122, 62, 2, 1579, 1578, 3, 2, 2, 2, 1579, 1580, 3, 2, 2, 2, 1580, 1584, 3, 2, 2, 2, 1581, 1583, 5, 124, 63, 2, 1582, 1581, 3, 2, 2, 2, 1583, 1586, 3, 2, 2, 2, 1584, 1582, 3, 2, 2, 2, 1584, 1585, 3, 2, 2, 2, 1585, 1588, 3, 2, 2, 2, 1586, 1584, 3, 2, 2, 2, 1587, 1589, 5, 126, 64, 2, 1588, 1587, 3, 2, 2, 2, 1588, 1589, 3, 2, 2, 2, 1589, 1612, 3, 2, 2, 2, 1590, 1596, 5, 440, 221, 2, 1591, 1597, 7, 108, 2, 2, 1592, 1597, 7, 192, 2, 2, 1593, 1597, 7, 193, 2, 2, 1594, 1595, 7, 108, 2, 2, 1595, 1597, 7, 192, 2, 2, 1596, 1591, 3, 2, 2, 2, 1596, 1592, 3, 2, 2, 2, 1596, 1593, 3, 2, 2, 2, 1596, 1594, 3, 2, 2, 2, 1596, 1597, 3, 2, 2, 2, 1597, 1598, 3, 2, 2, 2, 1598, 1600, 5, 120, 61, 2, 1599, 1601, 5, 122, 62, 2, 1600, 1599, 3, 2, 2, 2, 1600, 1601, 3, 2, 2, 2, 1601, 1605, 3, 2, 2, 2, 1602, 1604, 5, 124, 63, 2, 1603, 1602, 3, 2, 2, 2, 1604, 1607, 3, 2, 2, 2, 1605, 1603, 3, 2, 2, 2, 1605, 1606, 3, 2, 2, 2, 1606, 1609, 3, 2, 2, 2, 1607, 1605, 3, 2, 2, 2, 1608, 1610, 5, 126, 64, 2, 1609, 1608, 3, 2, 2, 2, 1609, 1610, 3, 2, 2, 2, 1610, 1612, 3, 2, 2, 2, 1611, 1574, 3, 2, 2, 2, 1611, 1590, 3, 2, 2, 2, 1612, 153, 3, 2, 2, 2, 1613, 1615, 5, 156, 79, 2, 1614, 1613, 3, 2, 2, 2, 1615, 1616, 3, 2, 2, 2, 1616, 1614, 3, 2, 2, 2, 1616, 1617, 3, 2, 2, 2, 1617, 155, 3, 2, 2, 2, 1618, 1619, 7, 194, 2, 2, 1619, 1630, 7, 195, 2, 2, 1620, 1621, 7, 195, 2, 2, 1621, 1622, 7, 196, 2, 2, 1622, 1630, 9, 25, 2, 2, 1623, 1625, 7, 201, 2, 2, 1624, 1623, 3, 2, 2, 2, 1624, 1625, 3, 2, 2, 2, 1625, 1626, 3, 2, 2, 2, 1626, 1627, 7, 31, 2, 2, 1627, 1628, 7, 202, 2, 2, 1628, 1630, 7, 74, 2, 2, 1629, 1618, 3, 2, 2, 2, 1629, 1620, 3, 2, 2, 2, 1629, 1624, 3, 2, 2, 2, 1630, 157, 3, 2, 2, 2, 1631, 1632, 7, 117, 2, 2, 1632, 1635, 7, 60, 2, 2, 1633, 1634, 7, 62, 2, 2, 1634, 1636, 7, 63, 2, 2, 1635, 1633, 3, 2, 2, 2, 1635, 1636, 3, 2, 2, 2, 1636, 1637, 3, 2, 2, 2, 1637, 1646, 5, 330, 166, 2, 1638, 1639, 7, 117, 2, 2, 1639, 1642, 9, 21, 2, 2, 1640, 1641, 7, 62, 2, 2, 1641, 1643, 7, 63, 2, 2, 1642, 1640, 3, 2, 2, 2, 1642, 1643, 3, 2, 2, 2, 1643, 1644, 3, 2, 2, 2, 1644, 1646, 5, 384, 193, 2, 1645, 1631, 3, 2, 2, 2, 1645, 1638, 3, 2, 2, 2, 1646, 159, 3, 2, 2, 2, 1647, 1648, 7, 16, 2, 2, 1648, 1649, 7, 37, 2, 2, 1649, 161, 3, 2, 2, 2, 1650, 1652, 9, 26, 2, 2, 1651, 1653, 7, 96, 2, 2, 1652, 1651, 3, 2, 2, 2, 1652, 1653, 3, 2, 2, 2, 1653, 1654, 3, 2, 2, 2, 1654, 1660, 5, 384, 193, 2, 1655, 1656, 7, 26, 2, 2, 1656, 1657, 5, 416, 209, 2, 1657, 1658, 7, 27, 2, 2, 1658, 1661, 3, 2, 2, 2, 1659, 1661, 5, 416, 209, 2, 1660, 1655, 3, 2, 2, 2, 1660, 1659, 3, 2, 2, 2, 1660, 1661, 3, 2, 2, 2, 1661, 1671, 3, 2, 2, 2, 1662, 1663, 7, 205, 2, 2, 1663, 1668, 7, 19, 2, 2, 1664, 1665, 7, 23, 2, 2, 1665, 1667, 7, 19, 2, 2, 1666, 1664, 3, 2, 2, 2, 1667, 1670, 3, 2, 2, 2, 1668, 1666, 3, 2, 2, 2, 1668, 1669, 3, 2, 2, 2, 1669, 1672, 3, 2, 2, 2, 1670, 1668, 3, 2, 2, 2, 1671, 1662, 3, 2, 2, 2, 1671, 1672, 3, 2, 2, 2, 1672, 1674, 3, 2, 2, 2, 1673, 1675, 5, 280, 141, 2, 1674, 1673, 3, 2, 2, 2, 1674, 1675, 3, 2, 2, 2, 1675, 163, 3, 2, 2, 2, 1676, 1680, 5, 166, 84, 2, 1677, 1680, 5, 168, 85, 2, 1678, 1680, 5, 170, 86, 2, 1679, 1676, 3, 2, 2, 2, 1679, 1677, 3, 2, 2, 2, 1679, 1678, 3, 2, 2, 2, 1680, 165, 3, 2, 2, 2, 1681, 1682, 7, 62, 2, 2, 1682, 1683, 5, 368, 185, 2, 1683, 1684, 7, 20, 2, 2, 1684, 1688, 5, 4, 3, 2, 1685, 1687, 5, 172, 87, 2, 1686, 1685, 3, 2, 2, 2, 1687, 1690, 3, 2, 2, 2, 1688, 1686, 3, 2, 2, 2, 1688, 1689, 3, 2, 2, 2, 1689, 1692, 3, 2, 2, 2, 1690, 1688, 3, 2, 2, 2, 1691, 1693, 5, 174, 88, 2, 1692, 1691, 3, 2, 2, 2, 1692, 1693, 3, 2, 2, 2, 1693, 1694, 3, 2, 2, 2, 1694, 1695, 7, 16, 2, 2, 1695, 1696, 7, 62, 2, 2, 1696, 167, 3, 2, 2, 2, 1697, 1698, 7, 62, 2, 2, 1698, 1699, 5, 368, 185, 2, 1699, 1702, 5, 8, 5, 2, 1700, 1701, 7, 206, 2, 2, 1701, 1703, 5, 8, 5, 2, 1702, 1700, 3, 2, 2, 2, 1702, 1703, 3, 2, 2, 2, 1703, 169, 3, 2, 2, 2, 1704, 1705, 7, 7, 2, 2, 1705, 1706, 7, 62, 2, 2, 1706, 1707, 5, 368, 185, 2, 1707, 1708, 7, 20, 2, 2, 1708, 1709, 5, 8, 5, 2, 1709, 171, 3, 2, 2, 2, 1710, 1711, 9, 27, 2, 2, 1711, 1712, 5, 368, 185, 2, 1712, 1713, 7, 20, 2, 2, 1713, 1714, 5, 4, 3, 2, 1714, 173, 3, 2, 2, 2, 1715, 1716, 7, 206, 2, 2, 1716, 1717, 5, 4, 3, 2, 1717, 175, 3, 2, 2, 2, 1718, 1721, 7, 209, 2, 2, 1719, 1722, 5, 434, 218, 2, 1720, 1722, 5, 384, 193, 2, 1721, 1719, 3, 2, 2, 2, 1721, 1720, 3, 2, 2, 2, 1722, 177, 3, 2, 2, 2, 1723, 1730, 7, 210, 2, 2, 1724, 1725, 7, 211, 2, 2, 1725, 1731, 7, 60, 2, 2, 1726, 1728, 7, 205, 2, 2, 1727, 1729, 7, 60, 2, 2, 1728, 1727, 3, 2, 2, 2, 1728, 1729, 3, 2, 2, 2, 1729, 1731, 3, 2, 2, 2, 1730, 1724, 3, 2, 2, 2, 1730, 1726, 3, 2, 2, 2, 1731, 1732, 3, 2, 2, 2, 1732, 1734, 5, 330, 166, 2, 1733, 1735, 5, 180, 91, 2, 1734, 1733, 3, 2, 2, 2, 1734, 1735, 3, 2, 2, 2, 1735, 1738, 3, 2, 2, 2, 1736, 1739, 5, 282, 142, 2, 1737, 1739, 5, 182, 92, 2, 1738, 1736, 3, 2, 2, 2, 1738, 1737, 3, 2, 2, 2, 1739, 179, 3, 2, 2, 2, 1740, 1741, 7, 26, 2, 2, 1741, 1746, 5, 440, 221, 2, 1742, 1743, 7, 23, 2, 2, 1743, 1745, 5, 440, 221, 2, 1744, 1742, 3, 2, 2, 2, 1745, 1748, 3, 2, 2, 2, 1746, 1744, 3, 2, 2, 2, 1746, 1747, 3, 2, 2, 2, 1747, 1749, 3, 2, 2, 2, 1748, 1746, 3, 2, 2, 2, 1749, 1750, 7, 27, 2, 2, 1750, 181, 3, 2, 2, 2, 1751, 1752, 7, 212, 2, 2, 1752, 1757, 5, 184, 93, 2, 1753, 1754, 7, 23, 2, 2, 1754, 1756, 5, 184, 93, 2, 1755, 1753, 3, 2, 2, 2, 1756, 1759, 3, 2, 2, 2, 1757, 1755, 3, 2, 2, 2, 1757, 1758, 3, 2, 2, 2, 1758, 183, 3, 2, 2, 2, 1759, 1757, 3, 2, 2, 2, 1760, 1761, 7, 26, 2, 2, 1761, 1766, 5, 384, 193, 2, 1762, 1763, 7, 23, 2, 2, 1763, 1765, 5, 384, 193, 2, 1764, 1762, 3, 2, 2, 2, 1765, 1768, 3, 2, 2, 2, 1766, 1764, 3, 2, 2, 2, 1766, 1767, 3, 2, 2, 2, 1767, 1769, 3, 2, 2, 2, 1768, 1766, 3, 2, 2, 2, 1769, 1770, 7, 27, 2, 2, 1770, 185, 3, 2, 2, 2, 1771, 1772, 7, 210, 2, 2, 1772, 1774, 7, 211, 2, 2, 1773, 1775, 7, 64, 2, 2, 1774, 1773, 3, 2, 2, 2, 1774, 1775, 3, 2, 2, 2, 1775, 1776, 3, 2, 2, 2, 1776, 1777, 7, 213, 2, 2, 1777, 1778, 5, 422, 212, 2, 1778, 1779, 5, 420, 211, 2, 1779, 187, 3, 2, 2, 2, 1780, 1782, 7, 52, 2, 2, 1781, 1783, 7, 19, 2, 2, 1782, 1781, 3, 2, 2, 2, 1782, 1783, 3, 2, 2, 2, 1783, 1786, 3, 2, 2, 2, 1784, 1785, 7, 18, 2, 2, 1785, 1787, 5, 368, 185, 2, 1786, 1784, 3, 2, 2, 2, 1786, 1787, 3, 2, 2, 2, 1787, 189, 3, 2, 2, 2, 1788, 1789, 7, 214, 2, 2, 1789, 1790, 7, 215, 2, 2, 1790, 1791, 5, 192, 97, 2, 1791, 191, 3, 2, 2, 2, 1792, 1795, 5, 194, 98, 2, 1793, 1795, 5, 196, 99, 2, 1794, 1792, 3, 2, 2, 2, 1794, 1793, 3, 2, 2, 2, 1795, 193, 3, 2, 2, 2, 1796, 1797, 7, 17, 2, 2, 1797, 1798, 7, 74, 2, 2, 1798, 1799, 5, 440, 221, 2, 1799, 1800, 7, 25, 2, 2, 1800, 1801, 7, 216, 2, 2, 1801, 195, 3, 2, 2, 2, 1802, 1803, 5, 440, 221, 2, 1803, 1804, 7, 25, 2, 2, 1804, 1805, 7, 217, 2, 2, 1805, 197, 3, 2, 2, 2, 1806, 1807, 7, 218, 2, 2, 1807, 1812, 5, 200, 101, 2, 1808, 1809, 7, 23, 2, 2, 1809, 1811, 5, 200, 101, 2, 1810, 1808, 3, 2, 2, 2, 1811, 1814, 3, 2, 2, 2, 1812, 1810, 3, 2, 2, 2, 1812, 1813, 3, 2, 2, 2, 1813, 1815, 3, 2, 2, 2, 1814, 1812, 3, 2, 2, 2, 1815, 1816, 7, 47, 2, 2, 1816, 1817, 7, 219, 2, 2, 1817, 1818, 5, 440, 221, 2, 1818, 199, 3, 2, 2, 2, 1819, 1820, 7, 204, 2, 2, 1820, 1821, 7, 81, 2, 2, 1821, 1822, 7, 32, 2, 2, 1822, 1823, 5, 440, 221, 2, 1823, 201, 3, 2, 2, 2, 1824, 1826, 7, 220, 2, 2, 1825, 1827, 7, 19, 2, 2, 1826, 1825, 3, 2, 2, 2, 1826, 1827, 3, 2, 2, 2, 1827, 203, 3, 2, 2, 2, 1828, 1829, 7, 128, 2, 2, 1829, 1830, 7, 221, 2, 2, 1830, 1833, 5, 384, 193, 2, 1831, 1832, 7, 47, 2, 2, 1832, 1834, 5, 384, 193, 2, 1833, 1831, 3, 2, 2, 2, 1833, 1834, 3, 2, 2, 2, 1834, 1837, 3, 2, 2, 2, 1835, 1836, 7, 222, 2, 2, 1836, 1838, 5, 384, 193, 2, 1837, 1835, 3, 2, 2, 2, 1837, 1838, 3, 2, 2, 2, 1838, 205, 3, 2, 2, 2, 1839, 1840, 7, 223, 2, 2, 1840, 1846, 7, 19, 2, 2, 1841, 1844, 7, 30, 2, 2, 1842, 1845, 5, 282, 142, 2, 1843, 1845, 5, 384, 193, 2, 1844, 1842, 3, 2, 2, 2, 1844, 1843, 3, 2, 2, 2, 1845, 1847, 3, 2, 2, 2, 1846, 1841, 3, 2, 2, 2, 1846, 1847, 3, 2, 2, 2, 1847, 207, 3, 2, 2, 2, 1848, 1850, 7, 224, 2, 2, 1849, 1851, 7, 225, 2, 2, 1850, 1849, 3, 2, 2, 2, 1850, 1851, 3, 2, 2, 2, 1851, 1852, 3, 2, 2, 2, 1852, 1853, 7, 19, 2, 2, 1853, 1854, 7, 205, 2, 2, 1854, 1859, 7, 19, 2, 2, 1855, 1856, 7, 23, 2, 2, 1856, 1858, 7, 19, 2, 2, 1857, 1855, 3, 2, 2, 2, 1858, 1861, 3, 2, 2, 2, 1859, 1857, 3, 2, 2, 2, 1859, 1860, 3, 2, 2, 2, 1860, 209, 3, 2, 2, 2, 1861, 1859, 3, 2, 2, 2, 1862, 1863, 7, 226, 2, 2, 1863, 1864, 9, 28, 2, 2, 1864, 1865, 7, 81, 2, 2, 1865, 1867, 5, 330, 166, 2, 1866, 1868, 5, 212, 107, 2, 1867, 1866, 3, 2, 2, 2, 1867, 1868, 3, 2, 2, 2, 1868, 211, 3, 2, 2, 2, 1869, 1870, 7, 229, 2, 2, 1870, 1871, 7, 26, 2, 2, 1871, 1876, 5, 440, 221, 2, 1872, 1873, 7, 23, 2, 2, 1873, 1875, 5, 440, 221, 2, 1874, 1872, 3, 2, 2, 2, 1875, 1878, 3, 2, 2, 2, 1876, 1874, 3, 2, 2, 2, 1876, 1877, 3, 2, 2, 2, 1877, 1879, 3, 2, 2, 2, 1878, 1876, 3, 2, 2, 2, 1879, 1880, 7, 27, 2, 2, 1880, 213, 3, 2, 2, 2, 1881, 1882, 7, 230, 2, 2, 1882, 1883, 7, 19, 2, 2, 1883, 215, 3, 2, 2, 2, 1884, 1885, 7, 231, 2, 2, 1885, 1886, 9, 29, 2, 2, 1886, 1887, 5, 218, 110, 2, 1887, 1888, 7, 23, 2, 2, 1888, 1889, 5, 218, 110, 2, 1889, 217, 3, 2, 2, 2, 1890, 1892, 5, 330, 166, 2, 1891, 1893, 5, 332, 167, 2, 1892, 1891, 3, 2, 2, 2, 1892, 1893, 3, 2, 2, 2, 1893, 1899, 3, 2, 2, 2, 1894, 1895, 7, 26, 2, 2, 1895, 1896, 5, 282, 142, 2, 1896, 1897, 7, 27, 2, 2, 1897, 1899, 3, 2, 2, 2, 1898, 1890, 3, 2, 2, 2, 1898, 1894, 3, 2, 2, 2, 1899, 1902, 3, 2, 2, 2, 1900, 1901, 7, 222, 2, 2, 1901, 1903, 5, 440, 221, 2, 1902, 1900, 3, 2, 2, 2, 1902, 1903, 3, 2, 2, 2, 1903, 219, 3, 2, 2, 2, 1904, 1905, 7, 233, 2, 2, 1905, 1906, 7, 225, 2, 2, 1906, 1907, 7, 64, 2, 2, 1907, 1912, 5, 224, 113, 2, 1908, 1909, 7, 23, 2, 2, 1909, 1911, 5, 224, 113, 2, 1910, 1908, 3, 2, 2, 2, 1911, 1914, 3, 2, 2, 2, 1912, 1910, 3, 2, 2, 2, 1912, 1913, 3, 2, 2, 2, 1913, 1915, 3, 2, 2, 2, 1914, 1912, 3, 2, 2, 2, 1915, 1916, 7, 47, 2, 2, 1916, 1920, 5, 226, 114, 2, 1917, 1919, 5, 230, 116, 2, 1918, 1917, 3, 2, 2, 2, 1919, 1922, 3, 2, 2, 2, 1920, 1918, 3, 2, 2, 2, 1920, 1921, 3, 2, 2, 2, 1921, 221, 3, 2, 2, 2, 1922, 1920, 3, 2, 2, 2, 1923, 1929, 7, 233, 2, 2, 1924, 1930, 5, 330, 166, 2, 1925, 1926, 7, 26, 2, 2, 1926, 1927, 5, 282, 142, 2, 1927, 1928, 7, 27, 2, 2, 1928, 1930, 3, 2, 2, 2, 1929, 1924, 3, 2, 2, 2, 1929, 1925, 3, 2, 2, 2, 1930, 1931, 3, 2, 2, 2, 1931, 1933, 7, 47, 2, 2, 1932, 1934, 7, 234, 2, 2, 1933, 1932, 3, 2, 2, 2, 1933, 1934, 3, 2, 2, 2, 1934, 1935, 3, 2, 2, 2, 1935, 1939, 5, 226, 114, 2, 1936, 1938, 5, 228, 115, 2, 1937, 1936, 3, 2, 2, 2, 1938, 1941, 3, 2, 2, 2, 1939, 1937, 3, 2, 2, 2, 1939, 1940, 3, 2, 2, 2, 1940, 223, 3, 2, 2, 2, 1941, 1939, 3, 2, 2, 2, 1942, 1945, 5, 434, 218, 2, 1943, 1945, 5, 384, 193, 2, 1944, 1942, 3, 2, 2, 2, 1944, 1943, 3, 2, 2, 2, 1945, 225, 3, 2, 2, 2, 1946, 1949, 5, 434, 218, 2, 1947, 1949, 5, 384, 193, 2, 1948, 1946, 3, 2, 2, 2, 1948, 1947, 3, 2, 2, 2, 1949, 227, 3, 2, 2, 2, 1950, 1951, 7, 222, 2, 2, 1951, 1959, 5, 440, 221, 2, 1952, 1953, 7, 235, 2, 2, 1953, 1959, 5, 384, 193, 2, 1954, 1955, 7, 236, 2, 2, 1955, 1959, 5, 384, 193, 2, 1956, 1957, 7, 237, 2, 2, 1957, 1959, 5, 440, 221, 2, 1958, 1950, 3, 2, 2, 2, 1958, 1952, 3, 2, 2, 2, 1958, 1954, 3, 2, 2, 2, 1958, 1956, 3, 2, 2, 2, 1959, 229, 3, 2, 2, 2, 1960, 1961, 9, 30, 2, 2, 1961, 231, 3, 2, 2, 2, 1962, 1964, 7, 91, 2, 2, 1963, 1965, 7, 239, 2, 2, 1964, 1963, 3, 2, 2, 2, 1964, 1965, 3, 2, 2, 2, 1965, 233, 3, 2, 2, 2, 1966, 1968, 7, 61, 2, 2, 1967, 1969, 7, 71, 2, 2, 1968, 1967, 3, 2, 2, 2, 1968, 1969, 3, 2, 2, 2, 1969, 1970, 3, 2, 2, 2, 1970, 1971, 7, 107, 2, 2, 1971, 1972, 5, 440, 221, 2, 1972, 1973, 7, 81, 2, 2, 1973, 1974, 5, 330, 166, 2, 1974, 1975, 7, 26, 2, 2, 1975, 1980, 5, 236, 119, 2, 1976, 1977, 7, 23, 2, 2, 1977, 1979, 5, 236, 119, 2, 1978, 1976, 3, 2, 2, 2, 1979, 1982, 3, 2, 2, 2, 1980, 1978, 3, 2, 2, 2, 1980, 1981, 3, 2, 2, 2, 1981, 1983, 3, 2, 2, 2, 1982, 1980, 3, 2, 2, 2, 1983, 1984, 7, 27, 2, 2, 1984, 235, 3, 2, 2, 2, 1985, 1987, 5, 440, 221, 2, 1986, 1988, 9, 9, 2, 2, 1987, 1986, 3, 2, 2, 2, 1987, 1988, 3, 2, 2, 2, 1988, 237, 3, 2, 2, 2, 1989, 1990, 5, 240, 121, 2, 1990, 239, 3, 2, 2, 2, 1991, 1992, 7, 36, 2, 2, 1992, 1993, 7, 26, 2, 2, 1993, 1994, 5, 440, 221, 2, 1994, 1995, 7, 25, 2, 2, 1995, 2003, 5, 440, 221, 2, 1996, 1997, 7, 23, 2, 2, 1997, 1998, 5, 440, 221, 2, 1998, 1999, 7, 25, 2, 2, 1999, 2000, 5, 440, 221, 2, 2000, 2002, 3, 2, 2, 2, 2001, 1996, 3, 2, 2, 2, 2002, 2005, 3, 2, 2, 2, 2003, 2001, 3, 2, 2, 2, 2003, 2004, 3, 2, 2, 2, 2004, 2006, 3, 2, 2, 2, 2005, 2003, 3, 2, 2, 2, 2006, 2010, 7, 27, 2, 2, 2007, 2009, 5, 108, 55, 2, 2008, 2007, 3, 2, 2, 2, 2009, 2012, 3, 2, 2, 2, 2010, 2008, 3, 2, 2, 2, 2010, 2011, 3, 2, 2, 2, 2011, 241, 3, 2, 2, 2, 2012, 2010, 3, 2, 2, 2, 2013, 2014, 7, 240, 2, 2, 2014, 2021, 5, 384, 193, 2, 2015, 2016, 7, 240, 2, 2, 2016, 2017, 7, 26, 2, 2, 2017, 2018, 5, 384, 193, 2, 2018, 2019, 7, 27, 2, 2, 2019, 2021, 3, 2, 2, 2, 2020, 2013, 3, 2, 2, 2, 2020, 2015, 3, 2, 2, 2, 2021, 243, 3, 2, 2, 2, 2022, 2024, 7, 7, 2, 2, 2023, 2022, 3, 2, 2, 2, 2023, 2024, 3, 2, 2, 2, 2024, 2025, 3, 2, 2, 2, 2025, 2027, 7, 241, 2, 2, 2026, 2028, 5, 384, 193, 2, 2027, 2026, 3, 2, 2, 2, 2027, 2028, 3, 2, 2, 2, 2028, 245, 3, 2, 2, 2, 2029, 2030, 7, 242, 2, 2, 2030, 247, 3, 2, 2, 2, 2031, 2043, 7, 243, 2, 2, 2032, 2034, 7, 244, 2, 2, 2033, 2035, 7, 245, 2, 2, 2034, 2033, 3, 2, 2, 2, 2034, 2035, 3, 2, 2, 2, 2035, 2036, 3, 2, 2, 2, 2036, 2041, 5, 384, 193, 2, 2037, 2038, 7, 22, 2, 2, 2038, 2039, 7, 216, 2, 2, 2039, 2040, 7, 25, 2, 2, 2040, 2042, 5, 384, 193, 2, 2041, 2037, 3, 2, 2, 2, 2041, 2042, 3, 2, 2, 2, 2042, 2044, 3, 2, 2, 2, 2043, 2032, 3, 2, 2, 2, 2043, 2044, 3, 2, 2, 2, 2044, 249, 3, 2, 2, 2, 2045, 2047, 7, 45, 2, 2, 2046, 2048, 5, 384, 193, 2, 2047, 2046, 3, 2, 2, 2, 2047, 2048, 3, 2, 2, 2, 2048, 251, 3, 2, 2, 2, 2049, 2051, 7, 246, 2, 2, 2050, 2052, 7, 239, 2, 2, 2051, 2050, 3, 2, 2, 2, 2051, 2052, 3, 2, 2, 2, 2052, 253, 3, 2, 2, 2, 2053, 2057, 5, 256, 129, 2, 2054, 2057, 5, 258, 130, 2, 2055, 2057, 5, 260, 131, 2, 2056, 2053, 3, 2, 2, 2, 2056, 2054, 3, 2, 2, 2, 2056, 2055, 3, 2, 2, 2, 2057, 255, 3, 2, 2, 2, 2058, 2060, 7, 247, 2, 2, 2059, 2058, 3, 2, 2, 2, 2059, 2060, 3, 2, 2, 2, 2060, 2061, 3, 2, 2, 2, 2061, 2064, 7, 184, 2, 2, 2062, 2064, 7, 248, 2, 2, 2063, 2059, 3, 2, 2, 2, 2063, 2062, 3, 2, 2, 2, 2064, 2066, 3, 2, 2, 2, 2065, 2067, 7, 25, 2, 2, 2066, 2065, 3, 2, 2, 2, 2066, 2067, 3, 2, 2, 2, 2067, 2068, 3, 2, 2, 2, 2068, 2069, 5, 384, 193, 2, 2069, 257, 3, 2, 2, 2, 2070, 2071, 9, 31, 2, 2, 2071, 2072, 9, 32, 2, 2, 2072, 259, 3, 2, 2, 2, 2073, 2074, 7, 255, 2, 2, 2074, 2077, 7, 25, 2, 2, 2075, 2078, 5, 384, 193, 2, 2076, 2078, 7, 256, 2, 2, 2077, 2075, 3, 2, 2, 2, 2077, 2076, 3, 2, 2, 2, 2078, 2080, 3, 2, 2, 2, 2079, 2081, 7, 82, 2, 2, 2080, 2079, 3, 2, 2, 2, 2080, 2081, 3, 2, 2, 2, 2081, 2082, 3, 2, 2, 2, 2082, 2083, 7, 30, 2, 2, 2083, 2084, 9, 33, 2, 2, 2084, 261, 3, 2, 2, 2, 2085, 2086, 7, 258, 2, 2, 2086, 2087, 5, 440, 221, 2, 2087, 263, 3, 2, 2, 2, 2088, 2091, 7, 259, 2, 2, 2089, 2090, 7, 260, 2, 2, 2090, 2092, 5, 384, 193, 2, 2091, 2089, 3, 2, 2, 2, 2091, 2092, 3, 2, 2, 2, 2092, 2093, 3, 2, 2, 2, 2093, 2103, 7, 30, 2, 2, 2094, 2104, 5, 282, 142, 2, 2095, 2097, 5, 330, 166, 2, 2096, 2098, 5, 332, 167, 2, 2097, 2096, 3, 2, 2, 2, 2097, 2098, 3, 2, 2, 2, 2098, 2101, 3, 2, 2, 2, 2099, 2100, 7, 261, 2, 2, 2100, 2102, 5, 384, 193, 2, 2101, 2099, 3, 2, 2, 2, 2101, 2102, 3, 2, 2, 2, 2102, 2104, 3, 2, 2, 2, 2103, 2094, 3, 2, 2, 2, 2103, 2095, 3, 2, 2, 2, 2104, 265, 3, 2, 2, 2, 2105, 2107, 7, 262, 2, 2, 2106, 2108, 7, 60, 2, 2, 2107, 2106, 3, 2, 2, 2, 2107, 2108, 3, 2, 2, 2, 2108, 2109, 3, 2, 2, 2, 2109, 2110, 5, 330, 166, 2, 2110, 267, 3, 2, 2, 2, 2111, 2112, 7, 263, 2, 2, 2112, 2113, 5, 384, 193, 2, 2113, 269, 3, 2, 2, 2, 2114, 2116, 7, 212, 2, 2, 2115, 2117, 7, 26, 2, 2, 2116, 2115, 3, 2, 2, 2, 2116, 2117, 3, 2, 2, 2, 2117, 2118, 3, 2, 2, 2, 2118, 2123, 5, 384, 193, 2, 2119, 2120, 7, 23, 2, 2, 2120, 2122, 5, 384, 193, 2, 2121, 2119, 3, 2, 2, 2, 2122, 2125, 3, 2, 2, 2, 2123, 2121, 3, 2, 2, 2, 2123, 2124, 3, 2, 2, 2, 2124, 2127, 3, 2, 2, 2, 2125, 2123, 3, 2, 2, 2, 2126, 2128, 7, 27, 2, 2, 2127, 2126, 3, 2, 2, 2, 2127, 2128, 3, 2, 2, 2, 2128, 2129, 3, 2, 2, 2, 2129, 2131, 7, 205, 2, 2, 2130, 2132, 7, 26, 2, 2, 2131, 2130, 3, 2, 2, 2, 2131, 2132, 3, 2, 2, 2, 2132, 2133, 3, 2, 2, 2, 2133, 2138, 5, 440, 221, 2, 2134, 2135, 7, 23, 2, 2, 2135, 2137, 5, 440, 221, 2, 2136, 2134, 3, 2, 2, 2, 2137, 2140, 3, 2, 2, 2, 2138, 2136, 3, 2, 2, 2, 2138, 2139, 3, 2, 2, 2, 2139, 2142, 3, 2, 2, 2, 2140, 2138, 3, 2, 2, 2, 2141, 2143, 7, 27, 2, 2, 2142, 2141, 3, 2, 2, 2, 2142, 2143, 3, 2, 2, 2, 2143, 271, 3, 2, 2, 2, 2144, 2145, 7, 264, 2, 2, 2145, 2146, 5, 368, 185, 2, 2146, 2147, 9, 34, 2, 2, 2147, 2148, 5, 4, 3, 2, 2148, 2150, 7, 16, 2, 2, 2149, 2151, 9, 35, 2, 2, 2150, 2149, 3, 2, 2, 2, 2150, 2151, 3, 2, 2, 2, 2151, 273, 3, 2, 2, 2, 2152, 2153, 7, 30, 2, 2, 2153, 2154, 7, 19, 2, 2, 2154, 2156, 7, 108, 2, 2, 2155, 2157, 7, 26, 2, 2, 2156, 2155, 3, 2, 2, 2, 2156, 2157, 3, 2, 2, 2, 2157, 2158, 3, 2, 2, 2, 2158, 2160, 5, 282, 142, 2, 2159, 2161, 7, 27, 2, 2, 2160, 2159, 3, 2, 2, 2, 2160, 2161, 3, 2, 2, 2, 2161, 2162, 3, 2, 2, 2, 2162, 2163, 7, 266, 2, 2, 2163, 2164, 5, 4, 3, 2, 2164, 2165, 7, 16, 2, 2, 2165, 2166, 7, 266, 2, 2, 2166, 275, 3, 2, 2, 2, 2167, 2168, 7, 30, 2, 2, 2168, 2169, 7, 19, 2, 2, 2169, 2171, 7, 108, 2, 2, 2170, 2172, 7, 267, 2, 2, 2171, 2170, 3, 2, 2, 2, 2171, 2172, 3, 2, 2, 2, 2172, 2173, 3, 2, 2, 2, 2173, 2174, 5, 384, 193, 2, 2174, 2175, 7, 268, 2, 2, 2175, 2178, 5, 384, 193, 2, 2176, 2177, 9, 36, 2, 2, 2177, 2179, 5, 384, 193, 2, 2178, 2176, 3, 2, 2, 2, 2178, 2179, 3, 2, 2, 2, 2179, 2180, 3, 2, 2, 2, 2180, 2181, 7, 266, 2, 2, 2181, 2182, 5, 4, 3, 2, 2182, 2183, 7, 16, 2, 2, 2183, 2184, 7, 266, 2, 2, 2184, 277, 3, 2, 2, 2, 2185, 2192, 7, 270, 2, 2, 2186, 2187, 7, 271, 2, 2, 2187, 2188, 7, 271, 2, 2, 2188, 2189, 7, 19, 2, 2, 2189, 2190, 7, 272, 2, 2, 2190, 2192, 7, 272, 2, 2, 2191, 2185, 3, 2, 2, 2, 2191, 2186, 3, 2, 2, 2, 2192, 279, 3, 2, 2, 2, 2193, 2194, 7, 273, 2, 2, 2194, 2199, 5, 384, 193, 2, 2195, 2196, 7, 23, 2, 2, 2196, 2198, 5, 384, 193, 2, 2197, 2195, 3, 2, 2, 2, 2198, 2201, 3, 2, 2, 2, 2199, 2197, 3, 2, 2, 2, 2199, 2200, 3, 2, 2, 2, 2200, 281, 3, 2, 2, 2, 2201, 2199, 3, 2, 2, 2, 2202, 2204, 5, 284, 143, 2, 2203, 2202, 3, 2, 2, 2, 2203, 2204, 3, 2, 2, 2, 2204, 2205, 3, 2, 2, 2, 2205, 2206, 5, 290, 146, 2, 2206, 283, 3, 2, 2, 2, 2207, 2208, 7, 36, 2, 2, 2208, 2213, 5, 286, 144, 2, 2209, 2210, 7, 23, 2, 2, 2210, 2212, 5, 286, 144, 2, 2211, 2209, 3, 2, 2, 2, 2212, 2215, 3, 2, 2, 2, 2213, 2211, 3, 2, 2, 2, 2213, 2214, 3, 2, 2, 2, 2214, 285, 3, 2, 2, 2, 2215, 2213, 3, 2, 2, 2, 2216, 2218, 5, 440, 221, 2, 2217, 2219, 5, 288, 145, 2, 2218, 2217, 3, 2, 2, 2, 2218, 2219, 3, 2, 2, 2, 2219, 2220, 3, 2, 2, 2, 2220, 2221, 7, 41, 2, 2, 2221, 2222, 7, 26, 2, 2, 2222, 2223, 5, 290, 146, 2, 2223, 2224, 7, 27, 2, 2, 2224, 287, 3, 2, 2, 2, 2225, 2226, 7, 26, 2, 2, 2226, 2231, 5, 440, 221, 2, 2227, 2228, 7, 23, 2, 2, 2228, 2230, 5, 440, 221, 2, 2229, 2227, 3, 2, 2, 2, 2230, 2233, 3, 2, 2, 2, 2231, 2229, 3, 2, 2, 2, 2231, 2232, 3, 2, 2, 2, 2232, 2234, 3, 2, 2, 2, 2233, 2231, 3, 2, 2, 2, 2234, 2235, 7, 27, 2, 2, 2235, 289, 3, 2, 2, 2, 2236, 2242, 5, 292, 147, 2, 2237, 2238, 5, 294, 148, 2, 2238, 2239, 5, 292, 147, 2, 2239, 2241, 3, 2, 2, 2, 2240, 2237, 3, 2, 2, 2, 2241, 2244, 3, 2, 2, 2, 2242, 2240, 3, 2, 2, 2, 2242, 2243, 3, 2, 2, 2, 2243, 291, 3, 2, 2, 2, 2244, 2242, 3, 2, 2, 2, 2245, 2251, 5, 296, 149, 2, 2246, 2247, 7, 26, 2, 2, 2247, 2248, 5, 290, 146, 2, 2248, 2249, 7, 27, 2, 2, 2249, 2251, 3, 2, 2, 2, 2250, 2245, 3, 2, 2, 2, 2250, 2246, 3, 2, 2, 2, 2251, 293, 3, 2, 2, 2, 2252, 2254, 7, 274, 2, 2, 2253, 2255, 7, 275, 2, 2, 2254, 2253, 3, 2, 2, 2, 2254, 2255, 3, 2, 2, 2, 2255, 2265, 3, 2, 2, 2, 2256, 2258, 7, 276, 2, 2, 2257, 2259, 7, 275, 2, 2, 2258, 2257, 3, 2, 2, 2, 2258, 2259, 3, 2, 2, 2, 2259, 2265, 3, 2, 2, 2, 2260, 2262, 7, 277, 2, 2, 2261, 2263, 7, 275, 2, 2, 2262, 2261, 3, 2, 2, 2, 2262, 2263, 3, 2, 2, 2, 2263, 2265, 3, 2, 2, 2, 2264, 2252, 3, 2, 2, 2, 2264, 2256, 3, 2, 2, 2, 2264, 2260, 3, 2, 2, 2, 2265, 295, 3, 2, 2, 2, 2266, 2267, 9, 37, 2, 2, 2267, 2269, 5, 298, 150, 2, 2268, 2270, 5, 310, 156, 2, 2269, 2268, 3, 2, 2, 2, 2269, 2270, 3, 2, 2, 2, 2270, 2272, 3, 2, 2, 2, 2271, 2273, 5, 312, 157, 2, 2272, 2271, 3, 2, 2, 2, 2272, 2273, 3, 2, 2, 2, 2273, 2275, 3, 2, 2, 2, 2274, 2276, 5, 332, 167, 2, 2275, 2274, 3, 2, 2, 2, 2275, 2276, 3, 2, 2, 2, 2276, 2278, 3, 2, 2, 2, 2277, 2279, 5, 334, 168, 2, 2278, 2277, 3, 2, 2, 2, 2278, 2279, 3, 2, 2, 2, 2279, 2282, 3, 2, 2, 2, 2280, 2283, 5, 336, 169, 2, 2281, 2283, 5, 338, 170, 2, 2282, 2280, 3, 2, 2, 2, 2282, 2281, 3, 2, 2, 2, 2282, 2283, 3, 2, 2, 2, 2283, 2285, 3, 2, 2, 2, 2284, 2286, 5, 340, 171, 2, 2285, 2284, 3, 2, 2, 2, 2285, 2286, 3, 2, 2, 2, 2286, 2288, 3, 2, 2, 2, 2287, 2289, 5, 342, 172, 2, 2288, 2287, 3, 2, 2, 2, 2288, 2289, 3, 2, 2, 2, 2289, 297, 3, 2, 2, 2, 2290, 2292, 5, 300, 151, 2, 2291, 2290, 3, 2, 2, 2, 2291, 2292, 3, 2, 2, 2, 2292, 2294, 3, 2, 2, 2, 2293, 2295, 5, 302, 152, 2, 2294, 2293, 3, 2, 2, 2, 2294, 2295, 3, 2, 2, 2, 2295, 2296, 3, 2, 2, 2, 2296, 2301, 5, 304, 153, 2, 2297, 2298, 7, 23, 2, 2, 2298, 2300, 5, 304, 153, 2, 2299, 2297, 3, 2, 2, 2, 2300, 2303, 3, 2, 2, 2, 2301, 2299, 3, 2, 2, 2, 2301, 2302, 3, 2, 2, 2, 2302, 299, 3, 2, 2, 2, 2303, 2301, 3, 2, 2, 2, 2304, 2305, 9, 38, 2, 2, 2305, 301, 3, 2, 2, 2, 2306, 2307, 7, 260, 2, 2, 2307, 2308, 5, 384, 193, 2, 2308, 303, 3, 2, 2, 2, 2309, 2310, 5, 440, 221, 2, 2310, 2311, 7, 25, 2, 2, 2311, 2313, 3, 2, 2, 2, 2312, 2309, 3, 2, 2, 2, 2312, 2313, 3, 2, 2, 2, 2313, 2314, 3, 2, 2, 2, 2314, 2316, 5, 384, 193, 2, 2315, 2317, 5, 306, 154, 2, 2316, 2315, 3, 2, 2, 2, 2316, 2317, 3, 2, 2, 2, 2317, 2320, 3, 2, 2, 2, 2318, 2320, 5, 308, 155, 2, 2319, 2312, 3, 2, 2, 2, 2319, 2318, 3, 2, 2, 2, 2320, 305, 3, 2, 2, 2, 2321, 2323, 6, 154, 5, 2, 2322, 2324, 7, 41, 2, 2, 2323, 2322, 3, 2, 2, 2, 2323, 2324, 3, 2, 2, 2, 2324, 2325, 3, 2, 2, 2, 2325, 2331, 5, 440, 221, 2, 2326, 2327, 7, 26, 2, 2, 2327, 2328, 7, 281, 2, 2, 2328, 2329, 7, 282, 2, 2, 2329, 2331, 7, 27, 2, 2, 2330, 2321, 3, 2, 2, 2, 2330, 2326, 3, 2, 2, 2, 2331, 307, 3, 2, 2, 2, 2332, 2333, 7, 19, 2, 2, 2333, 2335, 7, 7, 2, 2, 2334, 2332, 3, 2, 2, 2, 2334, 2335, 3, 2, 2, 2, 2335, 2336, 3, 2, 2, 2, 2336, 2337, 7, 8, 2, 2, 2337, 309, 3, 2, 2, 2, 2338, 2339, 7, 205, 2, 2, 2339, 2344, 5, 440, 221, 2, 2340, 2341, 7, 23, 2, 2, 2341, 2343, 5, 440, 221, 2, 2342, 2340, 3, 2, 2, 2, 2343, 2346, 3, 2, 2, 2, 2344, 2342, 3, 2, 2, 2, 2344, 2345, 3, 2, 2, 2, 2345, 311, 3, 2, 2, 2, 2346, 2344, 3, 2, 2, 2, 2347, 2348, 7, 225, 2, 2, 2348, 2352, 5, 314, 158, 2, 2349, 2351, 5, 320, 161, 2, 2350, 2349, 3, 2, 2, 2, 2351, 2354, 3, 2, 2, 2, 2352, 2350, 3, 2, 2, 2, 2352, 2353, 3, 2, 2, 2, 2353, 313, 3, 2, 2, 2, 2354, 2352, 3, 2, 2, 2, 2355, 2359, 5, 316, 159, 2, 2356, 2359, 5, 318, 160, 2, 2357, 2359, 5, 324, 163, 2, 2358, 2355, 3, 2, 2, 2, 2358, 2356, 3, 2, 2, 2, 2358, 2357, 3, 2, 2, 2, 2359, 315, 3, 2, 2, 2, 2360, 2362, 5, 330, 166, 2, 2361, 2363, 5, 328, 165, 2, 2362, 2361, 3, 2, 2, 2, 2362, 2363, 3, 2, 2, 2, 2363, 317, 3, 2, 2, 2, 2364, 2365, 7, 26, 2, 2, 2365, 2366, 5, 282, 142, 2, 2366, 2368, 7, 27, 2, 2, 2367, 2369, 5, 328, 165, 2, 2368, 2367, 3, 2, 2, 2, 2368, 2369, 3, 2, 2, 2, 2369, 319, 3, 2, 2, 2, 2370, 2371, 7, 23, 2, 2, 2371, 2378, 5, 314, 158, 2, 2372, 2373, 5, 322, 162, 2, 2373, 2374, 5, 314, 158, 2, 2374, 2375, 7, 81, 2, 2, 2375, 2376, 5, 368, 185, 2, 2376, 2378, 3, 2, 2, 2, 2377, 2370, 3, 2, 2, 2, 2377, 2372, 3, 2, 2, 2, 2378, 321, 3, 2, 2, 2, 2379, 2381, 7, 283, 2, 2, 2380, 2379, 3, 2, 2, 2, 2380, 2381, 3, 2, 2, 2, 2381, 2382, 3, 2, 2, 2, 2382, 2389, 7, 284, 2, 2, 2383, 2385, 9, 39, 2, 2, 2384, 2386, 7, 288, 2, 2, 2385, 2384, 3, 2, 2, 2, 2385, 2386, 3, 2, 2, 2, 2386, 2387, 3, 2, 2, 2, 2387, 2389, 7, 284, 2, 2, 2388, 2380, 3, 2, 2, 2, 2388, 2383, 3, 2, 2, 2, 2389, 323, 3, 2, 2, 2, 2390, 2391, 7, 60, 2, 2, 2391, 2392, 7, 26, 2, 2, 2392, 2393, 7, 212, 2, 2, 2393, 2398, 5, 326, 164, 2, 2394, 2395, 7, 23, 2, 2, 2395, 2397, 5, 326, 164, 2, 2396, 2394, 3, 2, 2, 2, 2397, 2400, 3, 2, 2, 2, 2398, 2396, 3, 2, 2, 2, 2398, 2399, 3, 2, 2, 2, 2399, 2401, 3, 2, 2, 2, 2400, 2398, 3, 2, 2, 2, 2401, 2403, 7, 27, 2, 2, 2402, 2404, 5, 328, 165, 2, 2403, 2402, 3, 2, 2, 2, 2403, 2404, 3, 2, 2, 2, 2404, 325, 3, 2, 2, 2, 2405, 2418, 5, 384, 193, 2, 2406, 2407, 7, 26, 2, 2, 2407, 2412, 5, 384, 193, 2, 2408, 2409, 7, 23, 2, 2, 2409, 2411, 5, 384, 193, 2, 2410, 2408, 3, 2, 2, 2, 2411, 2414, 3, 2, 2, 2, 2412, 2410, 3, 2, 2, 2, 2412, 2413, 3, 2, 2, 2, 2413, 2415, 3, 2, 2, 2, 2414, 2412, 3, 2, 2, 2, 2415, 2416, 7, 27, 2, 2, 2416, 2418, 3, 2, 2, 2, 2417, 2405, 3, 2, 2, 2, 2417, 2406, 3, 2, 2, 2, 2418, 327, 3, 2, 2, 2, 2419, 2421, 6, 165, 6, 2, 2420, 2422, 7, 41, 2, 2, 2421, 2420, 3, 2, 2, 2, 2421, 2422, 3, 2, 2, 2, 2422, 2423, 3, 2, 2, 2, 2423, 2434, 5, 440, 221, 2, 2424, 2425, 7, 26, 2, 2, 2425, 2430, 7, 19, 2, 2, 2426, 2427, 7, 23, 2, 2, 2427, 2429, 7, 19, 2, 2, 2428, 2426, 3, 2, 2, 2, 2429, 2432, 3, 2, 2, 2, 2430, 2428, 3, 2, 2, 2, 2430, 2431, 3, 2, 2, 2, 2431, 2433, 3, 2, 2, 2, 2432, 2430, 3, 2, 2, 2, 2433, 2435, 7, 27, 2, 2, 2434, 2424, 3, 2, 2, 2, 2434, 2435, 3, 2, 2, 2, 2435, 329, 3, 2, 2, 2, 2436, 2437, 5, 440, 221, 2, 2437, 331, 3, 2, 2, 2, 2438, 2439, 7, 289, 2, 2, 2439, 2440, 5, 368, 185, 2, 2440, 333, 3, 2, 2, 2, 2441, 2442, 7, 290, 2, 2, 2442, 2443, 7, 111, 2, 2, 2443, 2448, 5, 384, 193, 2, 2444, 2445, 7, 23, 2, 2, 2445, 2447, 5, 384, 193, 2, 2446, 2444, 3, 2, 2, 2, 2447, 2450, 3, 2, 2, 2, 2448, 2446, 3, 2, 2, 2, 2448, 2449, 3, 2, 2, 2, 2449, 335, 3, 2, 2, 2, 2450, 2448, 3, 2, 2, 2, 2451, 2452, 7, 291, 2, 2, 2452, 2453, 5, 368, 185, 2, 2453, 337, 3, 2, 2, 2, 2454, 2455, 7, 292, 2, 2, 2455, 2456, 5, 368, 185, 2, 2456, 339, 3, 2, 2, 2, 2457, 2458, 7, 293, 2, 2, 2458, 2459, 7, 111, 2, 2, 2459, 2461, 5, 384, 193, 2, 2460, 2462, 9, 9, 2, 2, 2461, 2460, 3, 2, 2, 2, 2461, 2462, 3, 2, 2, 2, 2462, 2470, 3, 2, 2, 2, 2463, 2464, 7, 23, 2, 2, 2464, 2466, 5, 384, 193, 2, 2465, 2467, 9, 9, 2, 2, 2466, 2465, 3, 2, 2, 2, 2466, 2467, 3, 2, 2, 2, 2467, 2469, 3, 2, 2, 2, 2468, 2463, 3, 2, 2, 2, 2469, 2472, 3, 2, 2, 2, 2470, 2468, 3, 2, 2, 2, 2470, 2471, 3, 2, 2, 2, 2471, 341, 3, 2, 2, 2, 2472, 2470, 3, 2, 2, 2, 2473, 2475, 5, 344, 173, 2, 2474, 2473, 3, 2, 2, 2, 2475, 2476, 3, 2, 2, 2, 2476, 2474, 3, 2, 2, 2, 2476, 2477, 3, 2, 2, 2, 2477, 343, 3, 2, 2, 2, 2478, 2479, 7, 261, 2, 2, 2479, 2490, 5, 384, 193, 2, 2480, 2481, 7, 36, 2, 2, 2481, 2487, 9, 40, 2, 2, 2482, 2483, 7, 263, 2, 2, 2483, 2484, 7, 297, 2, 2, 2484, 2485, 7, 298, 2, 2, 2485, 2486, 9, 41, 2, 2, 2486, 2488, 7, 301, 2, 2, 2487, 2482, 3, 2, 2, 2, 2487, 2488, 3, 2, 2, 2, 2488, 2490, 3, 2, 2, 2, 2489, 2478, 3, 2, 2, 2, 2489, 2480, 3, 2, 2, 2, 2490, 345, 3, 2, 2, 2, 2491, 2492, 7, 82, 2, 2, 2492, 2493, 5, 350, 176, 2, 2493, 2494, 7, 22, 2, 2, 2494, 2496, 5, 348, 175, 2, 2495, 2497, 5, 332, 167, 2, 2496, 2495, 3, 2, 2, 2, 2496, 2497, 3, 2, 2, 2, 2497, 2499, 3, 2, 2, 2, 2498, 2500, 5, 352, 177, 2, 2499, 2498, 3, 2, 2, 2, 2499, 2500, 3, 2, 2, 2, 2500, 347, 3, 2, 2, 2, 2501, 2506, 5, 28, 15, 2, 2502, 2503, 7, 23, 2, 2, 2503, 2505, 5, 28, 15, 2, 2504, 2502, 3, 2, 2, 2, 2505, 2508, 3, 2, 2, 2, 2506, 2504, 3, 2, 2, 2, 2506, 2507, 3, 2, 2, 2, 2507, 349, 3, 2, 2, 2, 2508, 2506, 3, 2, 2, 2, 2509, 2511, 5, 330, 166, 2, 2510, 2512, 5, 312, 157, 2, 2511, 2510, 3, 2, 2, 2, 2511, 2512, 3, 2, 2, 2, 2512, 2518, 3, 2, 2, 2, 2513, 2514, 7, 26, 2, 2, 2514, 2515, 5, 282, 142, 2, 2515, 2516, 7, 27, 2, 2, 2516, 2518, 3, 2, 2, 2, 2517, 2509, 3, 2, 2, 2, 2517, 2513, 3, 2, 2, 2, 2518, 2523, 3, 2, 2, 2, 2519, 2521, 7, 41, 2, 2, 2520, 2519, 3, 2, 2, 2, 2520, 2521, 3, 2, 2, 2, 2521, 2522, 3, 2, 2, 2, 2522, 2524, 5, 440, 221, 2, 2523, 2520, 3, 2, 2, 2, 2523, 2524, 3, 2, 2, 2, 2524, 351, 3, 2, 2, 2, 2525, 2526, 7, 206, 2, 2, 2526, 2527, 5, 178, 90, 2, 2527, 353, 3, 2, 2, 2, 2528, 2529, 7, 302, 2, 2, 2529, 2530, 7, 205, 2, 2, 2530, 2531, 5, 356, 179, 2, 2531, 2532, 7, 273, 2, 2, 2532, 2533, 5, 356, 179, 2, 2533, 2534, 7, 81, 2, 2, 2534, 2536, 5, 368, 185, 2, 2535, 2537, 5, 358, 180, 2, 2536, 2535, 3, 2, 2, 2, 2537, 2538, 3, 2, 2, 2, 2538, 2536, 3, 2, 2, 2, 2538, 2539, 3, 2, 2, 2, 2539, 355, 3, 2, 2, 2, 2540, 2546, 5, 330, 166, 2, 2541, 2542, 7, 26, 2, 2, 2542, 2543, 5, 282, 142, 2, 2543, 2544, 7, 27, 2, 2, 2544, 2546, 3, 2, 2, 2, 2545, 2540, 3, 2, 2, 2, 2545, 2541, 3, 2, 2, 2, 2546, 2551, 3, 2, 2, 2, 2547, 2549, 7, 41, 2, 2, 2548, 2547, 3, 2, 2, 2, 2548, 2549, 3, 2, 2, 2, 2549, 2550, 3, 2, 2, 2, 2550, 2552, 5, 440, 221, 2, 2551, 2548, 3, 2, 2, 2, 2551, 2552, 3, 2, 2, 2, 2552, 357, 3, 2, 2, 2, 2553, 2555, 7, 18, 2, 2, 2554, 2556, 7, 56, 2, 2, 2555, 2554, 3, 2, 2, 2, 2555, 2556, 3, 2, 2, 2, 2556, 2557, 3, 2, 2, 2, 2557, 2560, 7, 303, 2, 2, 2558, 2559, 7, 297, 2, 2, 2559, 2561, 5, 368, 185, 2, 2560, 2558, 3, 2, 2, 2, 2560, 2561, 3, 2, 2, 2, 2561, 2562, 3, 2, 2, 2, 2562, 2563, 7, 20, 2, 2, 2563, 2567, 5, 360, 181, 2, 2564, 2565, 7, 206, 2, 2, 2565, 2567, 7, 238, 2, 2, 2566, 2553, 3, 2, 2, 2, 2566, 2564, 3, 2, 2, 2, 2567, 359, 3, 2, 2, 2, 2568, 2570, 7, 210, 2, 2, 2569, 2571, 5, 180, 91, 2, 2570, 2569, 3, 2, 2, 2, 2570, 2571, 3, 2, 2, 2, 2571, 2572, 3, 2, 2, 2, 2572, 2573, 7, 212, 2, 2, 2573, 2589, 5, 184, 93, 2, 2574, 2575, 7, 82, 2, 2, 2575, 2576, 7, 22, 2, 2, 2576, 2581, 5, 28, 15, 2, 2577, 2578, 7, 23, 2, 2, 2578, 2580, 5, 28, 15, 2, 2579, 2577, 3, 2, 2, 2, 2580, 2583, 3, 2, 2, 2, 2581, 2579, 3, 2, 2, 2, 2581, 2582, 3, 2, 2, 2, 2582, 2585, 3, 2, 2, 2, 2583, 2581, 3, 2, 2, 2, 2584, 2586, 5, 332, 167, 2, 2585, 2584, 3, 2, 2, 2, 2585, 2586, 3, 2, 2, 2, 2586, 2589, 3, 2, 2, 2, 2587, 2589, 7, 83, 2, 2, 2588, 2568, 3, 2, 2, 2, 2588, 2574, 3, 2, 2, 2, 2588, 2587, 3, 2, 2, 2, 2589, 361, 3, 2, 2, 2, 2590, 2592, 7, 83, 2, 2, 2591, 2593, 7, 225, 2, 2, 2592, 2591, 3, 2, 2, 2, 2592, 2593, 3, 2, 2, 2, 2593, 2594, 3, 2, 2, 2, 2594, 2596, 5, 330, 166, 2, 2595, 2597, 5, 364, 183, 2, 2596, 2595, 3, 2, 2, 2, 2596, 2597, 3, 2, 2, 2, 2597, 2600, 3, 2, 2, 2, 2598, 2601, 5, 332, 167, 2, 2599, 2601, 7, 275, 2, 2, 2600, 2598, 3, 2, 2, 2, 2600, 2599, 3, 2, 2, 2, 2600, 2601, 3, 2, 2, 2, 2601, 363, 3, 2, 2, 2, 2602, 2604, 6, 183, 7, 2, 2603, 2605, 7, 41, 2, 2, 2604, 2603, 3, 2, 2, 2, 2604, 2605, 3, 2, 2, 2, 2605, 2606, 3, 2, 2, 2, 2606, 2607, 5, 440, 221, 2, 2607, 365, 3, 2, 2, 2, 2608, 2610, 9, 42, 2, 2, 2609, 2611, 7, 60, 2, 2, 2610, 2609, 3, 2, 2, 2, 2610, 2611, 3, 2, 2, 2, 2611, 2612, 3, 2, 2, 2, 2612, 2613, 5, 330, 166, 2, 2613, 367, 3, 2, 2, 2, 2614, 2616, 8, 185, 1, 2, 2615, 2617, 7, 56, 2, 2, 2616, 2615, 3, 2, 2, 2, 2616, 2617, 3, 2, 2, 2, 2617, 2618, 3, 2, 2, 2, 2618, 2619, 7, 26, 2, 2, 2619, 2620, 5, 368, 185, 2, 2620, 2621, 7, 27, 2, 2, 2621, 2624, 3, 2, 2, 2, 2622, 2624, 5, 370, 186, 2, 2623, 2614, 3, 2, 2, 2, 2623, 2622, 3, 2, 2, 2, 2624, 2631, 3, 2, 2, 2, 2625, 2626, 12, 4, 2, 2, 2626, 2627, 5, 380, 191, 2, 2627, 2628, 5, 368, 185, 5, 2628, 2630, 3, 2, 2, 2, 2629, 2625, 3, 2, 2, 2, 2630, 2633, 3, 2, 2, 2, 2631, 2629, 3, 2, 2, 2, 2631, 2632, 3, 2, 2, 2, 2632, 369, 3, 2, 2, 2, 2633, 2631, 3, 2, 2, 2, 2634, 2638, 5, 372, 187, 2, 2635, 2638, 5, 378, 190, 2, 2636, 2638, 5, 384, 193, 2, 2637, 2634, 3, 2, 2, 2, 2637, 2635, 3, 2, 2, 2, 2637, 2636, 3, 2, 2, 2, 2638, 371, 3, 2, 2, 2, 2639, 2640, 5, 384, 193, 2, 2640, 2642, 7, 44, 2, 2, 2641, 2643, 7, 56, 2, 2, 2642, 2641, 3, 2, 2, 2, 2642, 2643, 3, 2, 2, 2, 2643, 2644, 3, 2, 2, 2, 2644, 2645, 7, 21, 2, 2, 2645, 2663, 3, 2, 2, 2, 2646, 2647, 5, 384, 193, 2, 2647, 2648, 7, 305, 2, 2, 2648, 2649, 5, 384, 193, 2, 2649, 2650, 7, 297, 2, 2, 2650, 2651, 5, 384, 193, 2, 2651, 2663, 3, 2, 2, 2, 2652, 2654, 7, 56, 2, 2, 2653, 2652, 3, 2, 2, 2, 2653, 2654, 3, 2, 2, 2, 2654, 2655, 3, 2, 2, 2, 2655, 2656, 7, 63, 2, 2, 2656, 2657, 7, 26, 2, 2, 2657, 2658, 5, 282, 142, 2, 2658, 2659, 7, 27, 2, 2, 2659, 2663, 3, 2, 2, 2, 2660, 2663, 5, 374, 188, 2, 2661, 2663, 5, 376, 189, 2, 2662, 2639, 3, 2, 2, 2, 2662, 2646, 3, 2, 2, 2, 2662, 2653, 3, 2, 2, 2, 2662, 2660, 3, 2, 2, 2, 2662, 2661, 3, 2, 2, 2, 2663, 373, 3, 2, 2, 2, 2664, 2666, 5, 384, 193, 2, 2665, 2667, 7, 56, 2, 2, 2666, 2665, 3, 2, 2, 2, 2666, 2667, 3, 2, 2, 2, 2667, 2668, 3, 2, 2, 2, 2668, 2669, 7, 108, 2, 2, 2669, 2679, 7, 26, 2, 2, 2670, 2675, 5, 384, 193, 2, 2671, 2672, 7, 23, 2, 2, 2672, 2674, 5, 384, 193, 2, 2673, 2671, 3, 2, 2, 2, 2674, 2677, 3, 2, 2, 2, 2675, 2673, 3, 2, 2, 2, 2675, 2676, 3, 2, 2, 2, 2676, 2680, 3, 2, 2, 2, 2677, 2675, 3, 2, 2, 2, 2678, 2680, 5, 282, 142, 2, 2679, 2670, 3, 2, 2, 2, 2679, 2678, 3, 2, 2, 2, 2680, 2681, 3, 2, 2, 2, 2681, 2682, 7, 27, 2, 2, 2682, 375, 3, 2, 2, 2, 2683, 2684, 7, 26, 2, 2, 2684, 2689, 5, 384, 193, 2, 2685, 2686, 7, 23, 2, 2, 2686, 2688, 5, 384, 193, 2, 2687, 2685, 3, 2, 2, 2, 2688, 2691, 3, 2, 2, 2, 2689, 2687, 3, 2, 2, 2, 2689, 2690, 3, 2, 2, 2, 2690, 2692, 3, 2, 2, 2, 2691, 2689, 3, 2, 2, 2, 2692, 2694, 7, 27, 2, 2, 2693, 2695, 7, 56, 2, 2, 2694, 2693, 3, 2, 2, 2, 2694, 2695, 3, 2, 2, 2, 2695, 2696, 3, 2, 2, 2, 2696, 2697, 7, 108, 2, 2, 2697, 2698, 7, 26, 2, 2, 2698, 2699, 5, 282, 142, 2, 2699, 2700, 7, 27, 2, 2, 2700, 377, 3, 2, 2, 2, 2701, 2702, 5, 384, 193, 2, 2702, 2703, 5, 382, 192, 2, 2703, 2704, 5, 384, 193, 2, 2704, 379, 3, 2, 2, 2, 2705, 2706, 9, 43, 2, 2, 2706, 381, 3, 2, 2, 2, 2707, 2720, 7, 25, 2, 2, 2708, 2720, 7, 306, 2, 2, 2709, 2720, 7, 307, 2, 2, 2710, 2720, 7, 308, 2, 2, 2711, 2720, 7, 271, 2, 2, 2712, 2720, 7, 309, 2, 2, 2713, 2720, 7, 272, 2, 2, 2714, 2720, 7, 310, 2, 2, 2715, 2717, 7, 56, 2, 2, 2716, 2715, 3, 2, 2, 2, 2716, 2717, 3, 2, 2, 2, 2717, 2718, 3, 2, 2, 2, 2718, 2720, 9, 44, 2, 2, 2719, 2707, 3, 2, 2, 2, 2719, 2708, 3, 2, 2, 2, 2719, 2709, 3, 2, 2, 2, 2719, 2710, 3, 2, 2, 2, 2719, 2711, 3, 2, 2, 2, 2719, 2712, 3, 2, 2, 2, 2719, 2713, 3, 2, 2, 2, 2719, 2714, 3, 2, 2, 2, 2719, 2716, 3, 2, 2, 2, 2720, 383, 3, 2, 2, 2, 2721, 2722, 8, 193, 1, 2, 2722, 2723, 7, 26, 2, 2, 2723, 2724, 5, 282, 142, 2, 2724, 2725, 7, 27, 2, 2, 2725, 2739, 3, 2, 2, 2, 2726, 2727, 7, 26, 2, 2, 2727, 2728, 5, 384, 193, 2, 2728, 2729, 7, 27, 2, 2, 2729, 2739, 3, 2, 2, 2, 2730, 2739, 5, 388, 195, 2, 2731, 2739, 5, 392, 197, 2, 2732, 2739, 5, 396, 199, 2, 2733, 2739, 5, 402, 202, 2, 2734, 2739, 5, 404, 203, 2, 2735, 2739, 5, 412, 207, 2, 2736, 2739, 5, 414, 208, 2, 2737, 2739, 5, 386, 194, 2, 2738, 2721, 3, 2, 2, 2, 2738, 2726, 3, 2, 2, 2, 2738, 2730, 3, 2, 2, 2, 2738, 2731, 3, 2, 2, 2, 2738, 2732, 3, 2, 2, 2, 2738, 2733, 3, 2, 2, 2, 2738, 2734, 3, 2, 2, 2, 2738, 2735, 3, 2, 2, 2, 2738, 2736, 3, 2, 2, 2, 2738, 2737, 3, 2, 2, 2, 2739, 2756, 3, 2, 2, 2, 2740, 2741, 12, 16, 2, 2, 2741, 2742, 7, 313, 2, 2, 2742, 2755, 5, 384, 193, 17, 2743, 2744, 12, 15, 2, 2, 2744, 2745, 7, 314, 2, 2, 2745, 2755, 5, 384, 193, 16, 2746, 2747, 12, 14, 2, 2, 2747, 2748, 7, 315, 2, 2, 2748, 2755, 5, 384, 193, 15, 2749, 2750, 12, 13, 2, 2, 2750, 2751, 7, 316, 2, 2, 2751, 2755, 5, 384, 193, 14, 2752, 2753, 12, 17, 2, 2, 2753, 2755, 5, 390, 196, 2, 2754, 2740, 3, 2, 2, 2, 2754, 2743, 3, 2, 2, 2, 2754, 2746, 3, 2, 2, 2, 2754, 2749, 3, 2, 2, 2, 2754, 2752, 3, 2, 2, 2, 2755, 2758, 3, 2, 2, 2, 2756, 2754, 3, 2, 2, 2, 2756, 2757, 3, 2, 2, 2, 2757, 385, 3, 2, 2, 2, 2758, 2756, 3, 2, 2, 2, 2759, 2768, 5, 436, 219, 2, 2760, 2768, 5, 438, 220, 2, 2761, 2768, 5, 448, 225, 2, 2762, 2768, 5, 440, 221, 2, 2763, 2768, 5, 442, 222, 2, 2764, 2768, 5, 446, 224, 2, 2765, 2768, 5, 444, 223, 2, 2766, 2768, 5, 450, 226, 2, 2767, 2759, 3, 2, 2, 2, 2767, 2760, 3, 2, 2, 2, 2767, 2761, 3, 2, 2, 2, 2767, 2762, 3, 2, 2, 2, 2767, 2763, 3, 2, 2, 2, 2767, 2764, 3, 2, 2, 2, 2767, 2765, 3, 2, 2, 2, 2767, 2766, 3, 2, 2, 2, 2768, 387, 3, 2, 2, 2, 2769, 2770, 7, 317, 2, 2, 2770, 2771, 5, 384, 193, 2, 2771, 2772, 5, 390, 196, 2, 2772, 389, 3, 2, 2, 2, 2773, 2774, 9, 45, 2, 2, 2774, 391, 3, 2, 2, 2, 2775, 2776, 5, 394, 198, 2, 2776, 2777, 9, 46, 2, 2, 2777, 2782, 5, 394, 198, 2, 2778, 2779, 9, 46, 2, 2, 2779, 2781, 5, 394, 198, 2, 2780, 2778, 3, 2, 2, 2, 2781, 2784, 3, 2, 2, 2, 2782, 2780, 3, 2, 2, 2, 2782, 2783, 3, 2, 2, 2, 2783, 393, 3, 2, 2, 2, 2784, 2782, 3, 2, 2, 2, 2785, 2786, 7, 26, 2, 2, 2786, 2787, 5, 384, 193, 2, 2787, 2788, 7, 27, 2, 2, 2788, 2795, 3, 2, 2, 2, 2789, 2795, 5, 396, 199, 2, 2790, 2795, 5, 404, 203, 2, 2791, 2795, 5, 412, 207, 2, 2792, 2795, 5, 414, 208, 2, 2793, 2795, 5, 386, 194, 2, 2794, 2785, 3, 2, 2, 2, 2794, 2789, 3, 2, 2, 2, 2794, 2790, 3, 2, 2, 2, 2794, 2791, 3, 2, 2, 2, 2794, 2792, 3, 2, 2, 2, 2794, 2793, 3, 2, 2, 2, 2795, 395, 3, 2, 2, 2, 2796, 2799, 5, 398, 200, 2, 2797, 2799, 5, 400, 201, 2, 2798, 2796, 3, 2, 2, 2, 2798, 2797, 3, 2, 2, 2, 2799, 397, 3, 2, 2, 2, 2800, 2801, 7, 326, 2, 2, 2801, 2807, 5, 384, 193, 2, 2802, 2803, 7, 18, 2, 2, 2803, 2804, 5, 384, 193, 2, 2804, 2805, 7, 20, 2, 2, 2805, 2806, 5, 384, 193, 2, 2806, 2808, 3, 2, 2, 2, 2807, 2802, 3, 2, 2, 2, 2808, 2809, 3, 2, 2, 2, 2809, 2807, 3, 2, 2, 2, 2809, 2810, 3, 2, 2, 2, 2810, 2813, 3, 2, 2, 2, 2811, 2812, 7, 206, 2, 2, 2812, 2814, 5, 384, 193, 2, 2813, 2811, 3, 2, 2, 2, 2813, 2814, 3, 2, 2, 2, 2814, 2815, 3, 2, 2, 2, 2815, 2816, 7, 16, 2, 2, 2816, 399, 3, 2, 2, 2, 2817, 2823, 7, 326, 2, 2, 2818, 2819, 7, 18, 2, 2, 2819, 2820, 5, 368, 185, 2, 2820, 2821, 7, 20, 2, 2, 2821, 2822, 5, 384, 193, 2, 2822, 2824, 3, 2, 2, 2, 2823, 2818, 3, 2, 2, 2, 2824, 2825, 3, 2, 2, 2, 2825, 2823, 3, 2, 2, 2, 2825, 2826, 3, 2, 2, 2, 2826, 2829, 3, 2, 2, 2, 2827, 2828, 7, 206, 2, 2, 2828, 2830, 5, 384, 193, 2, 2829, 2827, 3, 2, 2, 2, 2829, 2830, 3, 2, 2, 2, 2830, 2831, 3, 2, 2, 2, 2831, 2832, 7, 16, 2, 2, 2832, 401, 3, 2, 2, 2, 2833, 2834, 5, 440, 221, 2, 2834, 2835, 7, 6, 2, 2, 2835, 2836, 9, 47, 2, 2, 2836, 403, 3, 2, 2, 2, 2837, 2838, 7, 329, 2, 2, 2838, 2840, 7, 26, 2, 2, 2839, 2841, 5, 406, 204, 2, 2840, 2839, 3, 2, 2, 2, 2840, 2841, 3, 2, 2, 2, 2841, 2842, 3, 2, 2, 2, 2842, 2843, 5, 384, 193, 2, 2843, 2845, 7, 27, 2, 2, 2844, 2846, 5, 408, 205, 2, 2845, 2844, 3, 2, 2, 2, 2845, 2846, 3, 2, 2, 2, 2846, 2990, 3, 2, 2, 2, 2847, 2848, 7, 330, 2, 2, 2848, 2854, 7, 26, 2, 2, 2849, 2851, 5, 406, 204, 2, 2850, 2849, 3, 2, 2, 2, 2850, 2851, 3, 2, 2, 2, 2851, 2852, 3, 2, 2, 2, 2852, 2855, 5, 384, 193, 2, 2853, 2855, 7, 8, 2, 2, 2854, 2850, 3, 2, 2, 2, 2854, 2853, 3, 2, 2, 2, 2855, 2856, 3, 2, 2, 2, 2856, 2858, 7, 27, 2, 2, 2857, 2859, 5, 408, 205, 2, 2858, 2857, 3, 2, 2, 2, 2858, 2859, 3, 2, 2, 2, 2859, 2990, 3, 2, 2, 2, 2860, 2861, 7, 331, 2, 2, 2861, 2867, 7, 26, 2, 2, 2862, 2864, 5, 406, 204, 2, 2863, 2862, 3, 2, 2, 2, 2863, 2864, 3, 2, 2, 2, 2864, 2865, 3, 2, 2, 2, 2865, 2868, 5, 384, 193, 2, 2866, 2868, 7, 8, 2, 2, 2867, 2863, 3, 2, 2, 2, 2867, 2866, 3, 2, 2, 2, 2868, 2869, 3, 2, 2, 2, 2869, 2871, 7, 27, 2, 2, 2870, 2872, 5, 408, 205, 2, 2871, 2870, 3, 2, 2, 2, 2871, 2872, 3, 2, 2, 2, 2872, 2990, 3, 2, 2, 2, 2873, 2874, 7, 332, 2, 2, 2874, 2875, 7, 26, 2, 2, 2875, 2876, 7, 27, 2, 2, 2876, 2990, 5, 408, 205, 2, 2877, 2878, 7, 333, 2, 2, 2878, 2879, 7, 26, 2, 2, 2879, 2880, 7, 27, 2, 2, 2880, 2990, 5, 408, 205, 2, 2881, 2882, 7, 334, 2, 2, 2882, 2883, 7, 26, 2, 2, 2883, 2884, 5, 384, 193, 2, 2884, 2885, 7, 27, 2, 2, 2885, 2886, 5, 408, 205, 2, 2886, 2990, 3, 2, 2, 2, 2887, 2888, 7, 335, 2, 2, 2888, 2889, 7, 26, 2, 2, 2889, 2896, 5, 384, 193, 2, 2890, 2891, 7, 23, 2, 2, 2891, 2894, 5, 384, 193, 2, 2892, 2893, 7, 23, 2, 2, 2893, 2895, 5, 384, 193, 2, 2894, 2892, 3, 2, 2, 2, 2894, 2895, 3, 2, 2, 2, 2895, 2897, 3, 2, 2, 2, 2896, 2890, 3, 2, 2, 2, 2896, 2897, 3, 2, 2, 2, 2897, 2898, 3, 2, 2, 2, 2898, 2899, 7, 27, 2, 2, 2899, 2900, 5, 408, 205, 2, 2900, 2990, 3, 2, 2, 2, 2901, 2902, 7, 336, 2, 2, 2902, 2903, 7, 26, 2, 2, 2903, 2904, 5, 384, 193, 2, 2904, 2905, 7, 27, 2, 2, 2905, 2906, 5, 408, 205, 2, 2906, 2990, 3, 2, 2, 2, 2907, 2908, 7, 337, 2, 2, 2908, 2909, 7, 26, 2, 2, 2909, 2916, 5, 384, 193, 2, 2910, 2911, 7, 23, 2, 2, 2911, 2914, 5, 384, 193, 2, 2912, 2913, 7, 23, 2, 2, 2913, 2915, 5, 384, 193, 2, 2914, 2912, 3, 2, 2, 2, 2914, 2915, 3, 2, 2, 2, 2915, 2917, 3, 2, 2, 2, 2916, 2910, 3, 2, 2, 2, 2916, 2917, 3, 2, 2, 2, 2917, 2918, 3, 2, 2, 2, 2918, 2919, 7, 27, 2, 2, 2919, 2920, 5, 408, 205, 2, 2920, 2990, 3, 2, 2, 2, 2921, 2922, 7, 179, 2, 2, 2922, 2924, 7, 26, 2, 2, 2923, 2925, 5, 406, 204, 2, 2924, 2923, 3, 2, 2, 2, 2924, 2925, 3, 2, 2, 2, 2925, 2926, 3, 2, 2, 2, 2926, 2927, 5, 384, 193, 2, 2927, 2929, 7, 27, 2, 2, 2928, 2930, 5, 408, 205, 2, 2929, 2928, 3, 2, 2, 2, 2929, 2930, 3, 2, 2, 2, 2930, 2990, 3, 2, 2, 2, 2931, 2932, 7, 338, 2, 2, 2932, 2934, 7, 26, 2, 2, 2933, 2935, 5, 406, 204, 2, 2934, 2933, 3, 2, 2, 2, 2934, 2935, 3, 2, 2, 2, 2935, 2936, 3, 2, 2, 2, 2936, 2937, 5, 384, 193, 2, 2937, 2939, 7, 27, 2, 2, 2938, 2940, 5, 408, 205, 2, 2939, 2938, 3, 2, 2, 2, 2939, 2940, 3, 2, 2, 2, 2940, 2990, 3, 2, 2, 2, 2941, 2942, 7, 339, 2, 2, 2942, 2943, 7, 26, 2, 2, 2943, 2944, 7, 27, 2, 2, 2944, 2990, 5, 408, 205, 2, 2945, 2946, 7, 340, 2, 2, 2946, 2947, 7, 26, 2, 2, 2947, 2948, 7, 27, 2, 2, 2948, 2990, 5, 408, 205, 2, 2949, 2950, 7, 341, 2, 2, 2950, 2952, 7, 26, 2, 2, 2951, 2953, 5, 406, 204, 2, 2952, 2951, 3, 2, 2, 2, 2952, 2953, 3, 2, 2, 2, 2953, 2954, 3, 2, 2, 2, 2954, 2955, 5, 384, 193, 2, 2955, 2957, 7, 27, 2, 2, 2956, 2958, 5, 408, 205, 2, 2957, 2956, 3, 2, 2, 2, 2957, 2958, 3, 2, 2, 2, 2958, 2990, 3, 2, 2, 2, 2959, 2960, 7, 232, 2, 2, 2960, 2962, 7, 26, 2, 2, 2961, 2963, 5, 406, 204, 2, 2962, 2961, 3, 2, 2, 2, 2962, 2963, 3, 2, 2, 2, 2963, 2964, 3, 2, 2, 2, 2964, 2965, 5, 384, 193, 2, 2965, 2967, 7, 27, 2, 2, 2966, 2968, 5, 408, 205, 2, 2967, 2966, 3, 2, 2, 2, 2967, 2968, 3, 2, 2, 2, 2968, 2990, 3, 2, 2, 2, 2969, 2970, 7, 342, 2, 2, 2970, 2972, 7, 26, 2, 2, 2971, 2973, 5, 406, 204, 2, 2972, 2971, 3, 2, 2, 2, 2972, 2973, 3, 2, 2, 2, 2973, 2974, 3, 2, 2, 2, 2974, 2975, 5, 384, 193, 2, 2975, 2977, 7, 27, 2, 2, 2976, 2978, 5, 408, 205, 2, 2977, 2976, 3, 2, 2, 2, 2977, 2978, 3, 2, 2, 2, 2978, 2990, 3, 2, 2, 2, 2979, 2980, 7, 343, 2, 2, 2980, 2982, 7, 26, 2, 2, 2981, 2983, 5, 406, 204, 2, 2982, 2981, 3, 2, 2, 2, 2982, 2983, 3, 2, 2, 2, 2983, 2984, 3, 2, 2, 2, 2984, 2985, 5, 384, 193, 2, 2985, 2987, 7, 27, 2, 2, 2986, 2988, 5, 408, 205, 2, 2987, 2986, 3, 2, 2, 2, 2987, 2988, 3, 2, 2, 2, 2988, 2990, 3, 2, 2, 2, 2989, 2837, 3, 2, 2, 2, 2989, 2847, 3, 2, 2, 2, 2989, 2860, 3, 2, 2, 2, 2989, 2873, 3, 2, 2, 2, 2989, 2877, 3, 2, 2, 2, 2989, 2881, 3, 2, 2, 2, 2989, 2887, 3, 2, 2, 2, 2989, 2901, 3, 2, 2, 2, 2989, 2907, 3, 2, 2, 2, 2989, 2921, 3, 2, 2, 2, 2989, 2931, 3, 2, 2, 2, 2989, 2941, 3, 2, 2, 2, 2989, 2945, 3, 2, 2, 2, 2989, 2949, 3, 2, 2, 2, 2989, 2959, 3, 2, 2, 2, 2989, 2969, 3, 2, 2, 2, 2989, 2979, 3, 2, 2, 2, 2990, 405, 3, 2, 2, 2, 2991, 2992, 9, 38, 2, 2, 2992, 407, 3, 2, 2, 2, 2993, 2994, 7, 344, 2, 2, 2994, 2996, 7, 26, 2, 2, 2995, 2997, 5, 410, 206, 2, 2996, 2995, 3, 2, 2, 2, 2996, 2997, 3, 2, 2, 2, 2997, 2999, 3, 2, 2, 2, 2998, 3000, 5, 340, 171, 2, 2999, 2998, 3, 2, 2, 2, 2999, 3000, 3, 2, 2, 2, 3000, 3001, 3, 2, 2, 2, 3001, 3002, 7, 27, 2, 2, 3002, 409, 3, 2, 2, 2, 3003, 3004, 7, 345, 2, 2, 3004, 3005, 7, 111, 2, 2, 3005, 3010, 5, 384, 193, 2, 3006, 3007, 7, 23, 2, 2, 3007, 3009, 5, 384, 193, 2, 3008, 3006, 3, 2, 2, 2, 3009, 3012, 3, 2, 2, 2, 3010, 3008, 3, 2, 2, 2, 3010, 3011, 3, 2, 2, 2, 3011, 411, 3, 2, 2, 2, 3012, 3010, 3, 2, 2, 2, 3013, 3214, 7, 346, 2, 2, 3014, 3015, 7, 347, 2, 2, 3015, 3016, 7, 26, 2, 2, 3016, 3017, 5, 384, 193, 2, 3017, 3018, 7, 41, 2, 2, 3018, 3020, 5, 120, 61, 2, 3019, 3021, 5, 122, 62, 2, 3020, 3019, 3, 2, 2, 2, 3020, 3021, 3, 2, 2, 2, 3021, 3022, 3, 2, 2, 2, 3022, 3023, 7, 27, 2, 2, 3023, 3214, 3, 2, 2, 2, 3024, 3025, 7, 330, 2, 2, 3025, 3028, 7, 26, 2, 2, 3026, 3029, 5, 384, 193, 2, 3027, 3029, 7, 8, 2, 2, 3028, 3026, 3, 2, 2, 2, 3028, 3027, 3, 2, 2, 2, 3029, 3030, 3, 2, 2, 2, 3030, 3214, 7, 27, 2, 2, 3031, 3214, 7, 348, 2, 2, 3032, 3033, 7, 247, 2, 2, 3033, 3214, 7, 145, 2, 2, 3034, 3038, 7, 349, 2, 2, 3035, 3036, 7, 247, 2, 2, 3036, 3038, 7, 172, 2, 2, 3037, 3034, 3, 2, 2, 2, 3037, 3035, 3, 2, 2, 2, 3038, 3043, 3, 2, 2, 2, 3039, 3040, 7, 26, 2, 2, 3040, 3041, 5, 384, 193, 2, 3041, 3042, 7, 27, 2, 2, 3042, 3044, 3, 2, 2, 2, 3043, 3039, 3, 2, 2, 2, 3043, 3044, 3, 2, 2, 2, 3044, 3214, 3, 2, 2, 2, 3045, 3214, 7, 350, 2, 2, 3046, 3047, 7, 247, 2, 2, 3047, 3214, 7, 351, 2, 2, 3048, 3049, 7, 352, 2, 2, 3049, 3050, 7, 26, 2, 2, 3050, 3063, 5, 384, 193, 2, 3051, 3052, 7, 23, 2, 2, 3052, 3060, 5, 384, 193, 2, 3053, 3054, 7, 23, 2, 2, 3054, 3055, 5, 384, 193, 2, 3055, 3056, 7, 25, 2, 2, 3056, 3057, 5, 384, 193, 2, 3057, 3059, 3, 2, 2, 2, 3058, 3053, 3, 2, 2, 2, 3059, 3062, 3, 2, 2, 2, 3060, 3058, 3, 2, 2, 2, 3060, 3061, 3, 2, 2, 2, 3061, 3064, 3, 2, 2, 2, 3062, 3060, 3, 2, 2, 2, 3063, 3051, 3, 2, 2, 2, 3063, 3064, 3, 2, 2, 2, 3064, 3065, 3, 2, 2, 2, 3065, 3066, 7, 27, 2, 2, 3066, 3214, 3, 2, 2, 2, 3067, 3068, 7, 353, 2, 2, 3068, 3069, 7, 26, 2, 2, 3069, 3082, 5, 384, 193, 2, 3070, 3071, 7, 23, 2, 2, 3071, 3079, 5, 384, 193, 2, 3072, 3073, 7, 23, 2, 2, 3073, 3074, 5, 384, 193, 2, 3074, 3075, 7, 25, 2, 2, 3075, 3076, 5, 384, 193, 2, 3076, 3078, 3, 2, 2, 2, 3077, 3072, 3, 2, 2, 2, 3078, 3081, 3, 2, 2, 2, 3079, 3077, 3, 2, 2, 2, 3079, 3080, 3, 2, 2, 2, 3080, 3083, 3, 2, 2, 2, 3081, 3079, 3, 2, 2, 2, 3082, 3070, 3, 2, 2, 2, 3082, 3083, 3, 2, 2, 2, 3083, 3084, 3, 2, 2, 2, 3084, 3085, 7, 27, 2, 2, 3085, 3214, 3, 2, 2, 2, 3086, 3087, 7, 354, 2, 2, 3087, 3088, 7, 26, 2, 2, 3088, 3101, 5, 384, 193, 2, 3089, 3090, 7, 23, 2, 2, 3090, 3098, 5, 384, 193, 2, 3091, 3092, 7, 23, 2, 2, 3092, 3093, 5, 384, 193, 2, 3093, 3094, 7, 25, 2, 2, 3094, 3095, 5, 384, 193, 2, 3095, 3097, 3, 2, 2, 2, 3096, 3091, 3, 2, 2, 2, 3097, 3100, 3, 2, 2, 2, 3098, 3096, 3, 2, 2, 2, 3098, 3099, 3, 2, 2, 2, 3099, 3102, 3, 2, 2, 2, 3100, 3098, 3, 2, 2, 2, 3101, 3089, 3, 2, 2, 2, 3101, 3102, 3, 2, 2, 2, 3102, 3103, 3, 2, 2, 2, 3103, 3104, 7, 27, 2, 2, 3104, 3214, 3, 2, 2, 2, 3105, 3106, 7, 355, 2, 2, 3106, 3107, 7, 26, 2, 2, 3107, 3120, 5, 384, 193, 2, 3108, 3109, 7, 23, 2, 2, 3109, 3117, 5, 384, 193, 2, 3110, 3111, 7, 23, 2, 2, 3111, 3112, 5, 384, 193, 2, 3112, 3113, 7, 25, 2, 2, 3113, 3114, 5, 384, 193, 2, 3114, 3116, 3, 2, 2, 2, 3115, 3110, 3, 2, 2, 2, 3116, 3119, 3, 2, 2, 2, 3117, 3115, 3, 2, 2, 2, 3117, 3118, 3, 2, 2, 2, 3118, 3121, 3, 2, 2, 2, 3119, 3117, 3, 2, 2, 2, 3120, 3108, 3, 2, 2, 2, 3120, 3121, 3, 2, 2, 2, 3121, 3122, 3, 2, 2, 2, 3122, 3123, 7, 27, 2, 2, 3123, 3214, 3, 2, 2, 2, 3124, 3125, 7, 356, 2, 2, 3125, 3126, 7, 26, 2, 2, 3126, 3139, 5, 384, 193, 2, 3127, 3128, 7, 23, 2, 2, 3128, 3136, 5, 384, 193, 2, 3129, 3130, 7, 23, 2, 2, 3130, 3131, 5, 384, 193, 2, 3131, 3132, 7, 25, 2, 2, 3132, 3133, 5, 384, 193, 2, 3133, 3135, 3, 2, 2, 2, 3134, 3129, 3, 2, 2, 2, 3135, 3138, 3, 2, 2, 2, 3136, 3134, 3, 2, 2, 2, 3136, 3137, 3, 2, 2, 2, 3137, 3140, 3, 2, 2, 2, 3138, 3136, 3, 2, 2, 2, 3139, 3127, 3, 2, 2, 2, 3139, 3140, 3, 2, 2, 2, 3140, 3141, 3, 2, 2, 2, 3141, 3142, 7, 27, 2, 2, 3142, 3214, 3, 2, 2, 2, 3143, 3144, 7, 357, 2, 2, 3144, 3145, 7, 26, 2, 2, 3145, 3158, 5, 384, 193, 2, 3146, 3147, 7, 23, 2, 2, 3147, 3155, 5, 384, 193, 2, 3148, 3149, 7, 23, 2, 2, 3149, 3150, 5, 384, 193, 2, 3150, 3151, 7, 25, 2, 2, 3151, 3152, 5, 384, 193, 2, 3152, 3154, 3, 2, 2, 2, 3153, 3148, 3, 2, 2, 2, 3154, 3157, 3, 2, 2, 2, 3155, 3153, 3, 2, 2, 2, 3155, 3156, 3, 2, 2, 2, 3156, 3159, 3, 2, 2, 2, 3157, 3155, 3, 2, 2, 2, 3158, 3146, 3, 2, 2, 2, 3158, 3159, 3, 2, 2, 2, 3159, 3160, 3, 2, 2, 2, 3160, 3161, 7, 27, 2, 2, 3161, 3214, 3, 2, 2, 2, 3162, 3163, 7, 358, 2, 2, 3163, 3164, 7, 26, 2, 2, 3164, 3172, 5, 384, 193, 2, 3165, 3166, 7, 23, 2, 2, 3166, 3167, 5, 384, 193, 2, 3167, 3168, 7, 25, 2, 2, 3168, 3169, 5, 384, 193, 2, 3169, 3171, 3, 2, 2, 2, 3170, 3165, 3, 2, 2, 2, 3171, 3174, 3, 2, 2, 2, 3172, 3170, 3, 2, 2, 2, 3172, 3173, 3, 2, 2, 2, 3173, 3175, 3, 2, 2, 2, 3174, 3172, 3, 2, 2, 2, 3175, 3176, 7, 27, 2, 2, 3176, 3214, 3, 2, 2, 2, 3177, 3178, 7, 359, 2, 2, 3178, 3179, 7, 26, 2, 2, 3179, 3185, 5, 384, 193, 2, 3180, 3181, 7, 23, 2, 2, 3181, 3182, 5, 384, 193, 2, 3182, 3183, 7, 25, 2, 2, 3183, 3184, 5, 384, 193, 2, 3184, 3186, 3, 2, 2, 2, 3185, 3180, 3, 2, 2, 2, 3186, 3187, 3, 2, 2, 2, 3187, 3185, 3, 2, 2, 2, 3187, 3188, 3, 2, 2, 2, 3188, 3191, 3, 2, 2, 2, 3189, 3190, 7, 23, 2, 2, 3190, 3192, 5, 384, 193, 2, 3191, 3189, 3, 2, 2, 2, 3191, 3192, 3, 2, 2, 2, 3192, 3193, 3, 2, 2, 2, 3193, 3194, 7, 27, 2, 2, 3194, 3214, 3, 2, 2, 2, 3195, 3196, 7, 360, 2, 2, 3196, 3197, 7, 26, 2, 2, 3197, 3198, 5, 384, 193, 2, 3198, 3199, 7, 27, 2, 2, 3199, 3214, 3, 2, 2, 2, 3200, 3201, 7, 361, 2, 2, 3201, 3202, 7, 26, 2, 2, 3202, 3203, 5, 384, 193, 2, 3203, 3204, 7, 225, 2, 2, 3204, 3207, 5, 384, 193, 2, 3205, 3206, 7, 30, 2, 2, 3206, 3208, 5, 384, 193, 2, 3207, 3205, 3, 2, 2, 2, 3207, 3208, 3, 2, 2, 2, 3208, 3209, 3, 2, 2, 2, 3209, 3210, 7, 27, 2, 2, 3210, 3214, 3, 2, 2, 2, 3211, 3214, 7, 362, 2, 2, 3212, 3214, 7, 351, 2, 2, 3213, 3013, 3, 2, 2, 2, 3213, 3014, 3, 2, 2, 2, 3213, 3024, 3, 2, 2, 2, 3213, 3031, 3, 2, 2, 2, 3213, 3032, 3, 2, 2, 2, 3213, 3037, 3, 2, 2, 2, 3213, 3045, 3, 2, 2, 2, 3213, 3046, 3, 2, 2, 2, 3213, 3048, 3, 2, 2, 2, 3213, 3067, 3, 2, 2, 2, 3213, 3086, 3, 2, 2, 2, 3213, 3105, 3, 2, 2, 2, 3213, 3124, 3, 2, 2, 2, 3213, 3143, 3, 2, 2, 2, 3213, 3162, 3, 2, 2, 2, 3213, 3177, 3, 2, 2, 2, 3213, 3195, 3, 2, 2, 2, 3213, 3200, 3, 2, 2, 2, 3213, 3211, 3, 2, 2, 2, 3213, 3212, 3, 2, 2, 2, 3214, 413, 3, 2, 2, 2, 3215, 3216, 5, 440, 221, 2, 3216, 3218, 7, 26, 2, 2, 3217, 3219, 5, 416, 209, 2, 3218, 3217, 3, 2, 2, 2, 3218, 3219, 3, 2, 2, 2, 3219, 3220, 3, 2, 2, 2, 3220, 3221, 7, 27, 2, 2, 3221, 415, 3, 2, 2, 2, 3222, 3227, 5, 418, 210, 2, 3223, 3224, 7, 23, 2, 2, 3224, 3226, 5, 418, 210, 2, 3225, 3223, 3, 2, 2, 2, 3226, 3229, 3, 2, 2, 2, 3227, 3225, 3, 2, 2, 2, 3227, 3228, 3, 2, 2, 2, 3228, 417, 3, 2, 2, 2, 3229, 3227, 3, 2, 2, 2, 3230, 3236, 6, 210, 14, 2, 3231, 3232, 5, 440, 221, 2, 3232, 3234, 7, 25, 2, 2, 3233, 3235, 7, 272, 2, 2, 3234, 3233, 3, 2, 2, 2, 3234, 3235, 3, 2, 2, 2, 3235, 3237, 3, 2, 2, 2, 3236, 3231, 3, 2, 2, 2, 3236, 3237, 3, 2, 2, 2, 3237, 3238, 3, 2, 2, 2, 3238, 3239, 5, 384, 193, 2, 3239, 419, 3, 2, 2, 2, 3240, 3243, 5, 282, 142, 2, 3241, 3243, 5, 384, 193, 2, 3242, 3240, 3, 2, 2, 2, 3242, 3241, 3, 2, 2, 2, 3243, 421, 3, 2, 2, 2, 3244, 3247, 5, 434, 218, 2, 3245, 3247, 5, 384, 193, 2, 3246, 3244, 3, 2, 2, 2, 3246, 3245, 3, 2, 2, 2, 3247, 423, 3, 2, 2, 2, 3248, 3252, 7, 363, 2, 2, 3249, 3251, 5, 426, 214, 2, 3250, 3249, 3, 2, 2, 2, 3251, 3254, 3, 2, 2, 2, 3252, 3250, 3, 2, 2, 2, 3252, 3253, 3, 2, 2, 2, 3253, 425, 3, 2, 2, 2, 3254, 3252, 3, 2, 2, 2, 3255, 3256, 7, 316, 2, 2, 3256, 3257, 5, 440, 221, 2, 3257, 3258, 5, 384, 193, 2, 3258, 3268, 3, 2, 2, 2, 3259, 3260, 7, 316, 2, 2, 3260, 3261, 5, 440, 221, 2, 3261, 3262, 7, 19, 2, 2, 3262, 3263, 7, 25, 2, 2, 3263, 3264, 5, 384, 193, 2, 3264, 3268, 3, 2, 2, 2, 3265, 3266, 7, 316, 2, 2, 3266, 3268, 5, 440, 221, 2, 3267, 3255, 3, 2, 2, 2, 3267, 3259, 3, 2, 2, 2, 3267, 3265, 3, 2, 2, 2, 3268, 427, 3, 2, 2, 2, 3269, 3270, 7, 9, 2, 2, 3270, 3271, 5, 430, 216, 2, 3271, 3272, 7, 10, 2, 2, 3272, 3275, 3, 2, 2, 2, 3273, 3275, 5, 432, 217, 2, 3274, 3269, 3, 2, 2, 2, 3274, 3273, 3, 2, 2, 2, 3275, 429, 3, 2, 2, 2, 3276, 3278, 11, 2, 2, 2, 3277, 3276, 3, 2, 2, 2, 3278, 3281, 3, 2, 2, 2, 3279, 3280, 3, 2, 2, 2, 3279, 3277, 3, 2, 2, 2, 3280, 431, 3, 2, 2, 2, 3281, 3279, 3, 2, 2, 2, 3282, 3283, 7, 364, 2, 2, 3283, 3284, 5, 384, 193, 2, 3284, 433, 3, 2, 2, 2, 3285, 3300, 7, 365, 2, 2, 3286, 3290, 7, 5, 2, 2, 3287, 3288, 7, 7, 2, 2, 3288, 3290, 7, 5, 2, 2, 3289, 3286, 3, 2, 2, 2, 3289, 3287, 3, 2, 2, 2, 3289, 3290, 3, 2, 2, 2, 3290, 3291, 3, 2, 2, 2, 3291, 3296, 5, 440, 221, 2, 3292, 3293, 7, 5, 2, 2, 3293, 3295, 5, 440, 221, 2, 3294, 3292, 3, 2, 2, 2, 3295, 3298, 3, 2, 2, 2, 3296, 3294, 3, 2, 2, 2, 3296, 3297, 3, 2, 2, 2, 3297, 3300, 3, 2, 2, 2, 3298, 3296, 3, 2, 2, 2, 3299, 3285, 3, 2, 2, 2, 3299, 3289, 3, 2, 2, 2, 3300, 435, 3, 2, 2, 2, 3301, 3302, 7, 145, 2, 2, 3302, 3303, 5, 442, 222, 2, 3303, 437, 3, 2, 2, 2, 3304, 3305, 7, 172, 2, 2, 3305, 3306, 5, 442, 222, 2, 3306, 439, 3, 2, 2, 2, 3307, 3309, 7, 11, 2, 2, 3308, 3307, 3, 2, 2, 2, 3308, 3309, 3, 2, 2, 2, 3309, 3312, 3, 2, 2, 2, 3310, 3313, 7, 19, 2, 2, 3311, 3313, 5, 452, 227, 2, 3312, 3310, 3, 2, 2, 2, 3312, 3311, 3, 2, 2, 2, 3313, 3321, 3, 2, 2, 2, 3314, 3317, 7, 7, 2, 2, 3315, 3318, 7, 19, 2, 2, 3316, 3318, 5, 452, 227, 2, 3317, 3315, 3, 2, 2, 2, 3317, 3316, 3, 2, 2, 2, 3318, 3320, 3, 2, 2, 2, 3319, 3314, 3, 2, 2, 2, 3320, 3323, 3, 2, 2, 2, 3321, 3319, 3, 2, 2, 2, 3321, 3322, 3, 2, 2, 2, 3322, 441, 3, 2, 2, 2, 3323, 3321, 3, 2, 2, 2, 3324, 3327, 7, 282, 2, 2, 3325, 3327, 7, 366, 2, 2, 3326, 3324, 3, 2, 2, 2, 3326, 3325, 3, 2, 2, 2, 3327, 443, 3, 2, 2, 2, 3328, 3330, 9, 48, 2, 2, 3329, 3328, 3, 2, 2, 2, 3329, 3330, 3, 2, 2, 2, 3330, 3331, 3, 2, 2, 2, 3331, 3332, 7, 74, 2, 2, 3332, 445, 3, 2, 2, 2, 3333, 3335, 9, 48, 2, 2, 3334, 3333, 3, 2, 2, 2, 3334, 3335, 3, 2, 2, 2, 3335, 3336, 3, 2, 2, 2, 3336, 3337, 7, 367, 2, 2, 3337, 447, 3, 2, 2, 2, 3338, 3339, 9, 49, 2, 2, 3339, 449, 3, 2, 2, 2, 3340, 3341, 7, 21, 2, 2, 3341, 451, 3, 2, 2, 2, 3342, 3343, 9, 50, 2, 2, 3343, 453, 3, 2, 2, 2, 426, 459, 462, 466, 469, 474, 481, 487, 489, 498, 501, 503, 566, 574, 590, 597, 600, 605, 609, 618, 623, 631, 636, 645, 657, 662, 665, 679, 686, 695, 712, 716, 724, 735, 745, 753, 760, 764, 768, 773, 777, 782, 786, 790, 800, 804, 809, 814, 818, 831, 836, 842, 851, 855, 863, 866, 871, 876, 883, 892, 895, 902, 908, 913, 919, 924, 927, 933, 947, 957, 963, 968, 973, 978, 982, 987, 990, 1000, 1012, 1019, 1022, 1034, 1039, 1044, 1047, 1054, 1066, 1079, 1081, 1086, 1089, 1104, 1110, 1121, 1124, 1134, 1141, 1147, 1155, 1165, 1185, 1191, 1195, 1200, 1204, 1209, 1212, 1217, 1220, 1232, 1239, 1244, 1249, 1253, 1258, 1261, 1271, 1283, 1290, 1298, 1313, 1344, 1346, 1351, 1355, 1360, 1367, 1370, 1373, 1378, 1382, 1384, 1391, 1397, 1404, 1410, 1413, 1418, 1422, 1425, 1432, 1438, 1441, 1451, 1460, 1467, 1474, 1476, 1482, 1485, 1496, 1505, 1511, 1517, 1520, 1525, 1528, 1531, 1534, 1537, 1543, 1553, 1564, 1567, 1574, 1579, 1584, 1588, 1596, 1600, 1605, 1609, 1611, 1616, 1624, 1629, 1635, 1642, 1645, 1652, 1660, 1668, 1671, 1674, 1679, 1688, 1692, 1702, 1721, 1728, 1730, 1734, 1738, 1746, 1757, 1766, 1774, 1782, 1786, 1794, 1812, 1826, 1833, 1837, 1844, 1846, 1850, 1859, 1867, 1876, 1892, 1898, 1902, 1912, 1920, 1929, 1933, 1939, 1944, 1948, 1958, 1964, 1968, 1980, 1987, 2003, 2010, 2020, 2023, 2027, 2034, 2041, 2043, 2047, 2051, 2056, 2059, 2063, 2066, 2077, 2080, 2091, 2097, 2101, 2103, 2107, 2116, 2123, 2127, 2131, 2138, 2142, 2150, 2156, 2160, 2171, 2178, 2191, 2199, 2203, 2213, 2218, 2231, 2242, 2250, 2254, 2258, 2262, 2264, 2269, 2272, 2275, 2278, 2282, 2285, 2288, 2291, 2294, 2301, 2312, 2316, 2319, 2323, 2330, 2334, 2344, 2352, 2358, 2362, 2368, 2377, 2380, 2385, 2388, 2398, 2403, 2412, 2417, 2421, 2430, 2434, 2448, 2461, 2466, 2470, 2476, 2487, 2489, 2496, 2499, 2506, 2511, 2517, 2520, 2523, 2538, 2545, 2548, 2551, 2555, 2560, 2566, 2570, 2581, 2585, 2588, 2592, 2596, 2600, 2604, 2610, 2616, 2623, 2631, 2637, 2642, 2653, 2662, 2666, 2675, 2679, 2689, 2694, 2716, 2719, 2738, 2754, 2756, 2767, 2782, 2794, 2798, 2809, 2813, 2825, 2829, 2840, 2845, 2850, 2854, 2858, 2863, 2867, 2871, 2894, 2896, 2914, 2916, 2924, 2929, 2934, 2939, 2952, 2957, 2962, 2967, 2972, 2977, 2982, 2987, 2989, 2996, 2999, 3010, 3020, 3028, 3037, 3043, 3060, 3063, 3079, 3082, 3098, 3101, 3117, 3120, 3136, 3139, 3155, 3158, 3172, 3187, 3191, 3207, 3213, 3218, 3227, 3234, 3236, 3242, 3246, 3252, 3267, 3274, 3279, 3289, 3296, 3299, 3308, 3312, 3317, 3321, 3326, 3329, 3334]
\ No newline at end of file
diff --git a/src/lib/hive/HiveSql.tokens b/src/lib/hive/HiveSql.tokens
new file mode 100644
index 0000000..7ce6027
--- /dev/null
+++ b/src/lib/hive/HiveSql.tokens
@@ -0,0 +1,384 @@
+T__0=1
+T__1=2
+T__2=3
+T__3=4
+T__4=5
+T__5=6
+T__6=7
+T__7=8
+T__8=9
+T__9=10
+T_GO=11
+T_BEGIN=12
+T_SEMICOLON=13
+T_END=14
+T_EXCEPTION=15
+T_WHEN=16
+L_ID=17
+T_THEN=18
+T_NULL=19
+T_SET=20
+T_COMMA=21
+T_COLON=22
+T_EQUAL=23
+T_OPEN_P=24
+T_CLOSE_P=25
+T_ALLOCATE=26
+T_CURSOR=27
+T_FOR=28
+T_RESULT=29
+T_PROCEDURE=30
+T_ASSOCIATE=31
+T_LOCATOR=32
+T_LOCATORS=33
+T_WITH=34
+T_TRANSACTION=35
+T_BREAK=36
+T_CALL=37
+T_DECLARE=38
+T_AS=39
+T_CONSTANT=40
+T_CONDITION=41
+T_IS=42
+T_RETURN=43
+T_ONLY=44
+T_TO=45
+T_CALLER=46
+T_CLIENT=47
+T_WITHOUT=48
+T_CONTINUE=49
+T_EXIT=50
+T_HANDLER=51
+T_SQLEXCEPTION=52
+T_SQLWARNING=53
+T_NOT=54
+T_FOUND=55
+T_GLOBAL=56
+T_TEMPORARY=57
+T_TABLE=58
+T_CREATE=59
+T_IF=60
+T_EXISTS=61
+T_LOCAL=62
+T_MULTISET=63
+T_VOLATILE=64
+T_LIKE=65
+T_CONSTRAINT=66
+T_PRIMARY=67
+T_KEY=68
+T_UNIQUE=69
+T_REFERENCES=70
+T_IDENTITY=71
+L_INT=72
+T_AUTO_INCREMENT=73
+T_ENABLE=74
+T_CLUSTERED=75
+T_ASC=76
+T_DESC=77
+T_FOREIGN=78
+T_ON=79
+T_UPDATE=80
+T_DELETE=81
+T_NO=82
+T_ACTION=83
+T_RESTRICT=84
+T_DEFAULT=85
+T_CASCADE=86
+T_LOG=87
+T_FALLBACK=88
+T_COMMIT=89
+T_PRESERVE=90
+T_ROWS=91
+T_SEGMENT=92
+T_CREATION=93
+T_IMMEDIATE=94
+T_DEFERRED=95
+T_PCTFREE=96
+T_PCTUSED=97
+T_INITRANS=98
+T_MAXTRANS=99
+T_NOCOMPRESS=100
+T_LOGGING=101
+T_NOLOGGING=102
+T_STORAGE=103
+T_TABLESPACE=104
+T_INDEX=105
+T_IN=106
+T_REPLACE=107
+T_DISTRIBUTE=108
+T_BY=109
+T_HASH=110
+T_LOGGED=111
+T_COMPRESS=112
+T_YES=113
+T_DEFINITION=114
+T_DROP=115
+T_DATA=116
+T_STORED=117
+T_ROW=118
+T_FORMAT=119
+T_DELIMITED=120
+T_FIELDS=121
+T_TERMINATED=122
+T_ESCAPED=123
+T_COLLECTION=124
+T_ITEMS=125
+T_MAP=126
+T_KEYS=127
+T_LINES=128
+T_DEFINED=129
+T_TEXTIMAGE_ON=130
+T_COMMENT=131
+T_CHARACTER=132
+T_CHARSET=133
+T_ENGINE=134
+T_ALTER=135
+T_ADD2=136
+T_CHAR=137
+T_BIGINT=138
+T_BINARY_DOUBLE=139
+T_BINARY_FLOAT=140
+T_BINARY_INTEGER=141
+T_BIT=142
+T_DATE=143
+T_DATETIME=144
+T_DEC=145
+T_DECIMAL=146
+T_DOUBLE=147
+T_PRECISION=148
+T_FLOAT=149
+T_INT=150
+T_INT2=151
+T_INT4=152
+T_INT8=153
+T_INTEGER=154
+T_NCHAR=155
+T_NVARCHAR=156
+T_NUMBER=157
+T_NUMERIC=158
+T_PLS_INTEGER=159
+T_REAL=160
+T_RESULT_SET_LOCATOR=161
+T_VARYING=162
+T_SIMPLE_FLOAT=163
+T_SIMPLE_DOUBLE=164
+T_SIMPLE_INTEGER=165
+T_SMALLINT=166
+T_SMALLDATETIME=167
+T_STRING=168
+T_SYS_REFCURSOR=169
+T_TIMESTAMP=170
+T_TINYINT=171
+T_VARCHAR=172
+T_VARCHAR2=173
+T_XML=174
+T_TYPE=175
+T_ROWTYPE=176
+T_MAX=177
+T_BYTE=178
+T_CASESPECIFIC=179
+T_CS=180
+T_DATABASE=181
+T_SCHEMA=182
+T_LOCATION=183
+T_OR=184
+T_FUNCTION=185
+T_RETURNS=186
+T_PACKAGE=187
+T_PROC=188
+T_BODY=189
+T_OUT=190
+T_INOUT=191
+T_LANGUAGE=192
+T_SQL=193
+T_SECURITY=194
+T_CREATOR=195
+T_DEFINER=196
+T_INVOKER=197
+T_OWNER=198
+T_DYNAMIC=199
+T_SETS=200
+T_EXEC=201
+T_EXECUTE=202
+T_INTO=203
+T_ELSE=204
+T_ELSIF=205
+T_ELSEIF=206
+T_INCLUDE=207
+T_INSERT=208
+T_OVERWRITE=209
+T_VALUES=210
+T_DIRECTORY=211
+T_GET=212
+T_DIAGNOSTICS=213
+T_MESSAGE_TEXT=214
+T_ROW_COUNT=215
+T_GRANT=216
+T_ROLE=217
+T_LEAVE=218
+T_OBJECT=219
+T_AT=220
+T_OPEN=221
+T_FETCH=222
+T_FROM=223
+T_COLLECT=224
+T_STATISTICS=225
+T_STATS=226
+T_COLUMN=227
+T_CLOSE=228
+T_CMP=229
+T_SUM=230
+T_COPY=231
+T_HDFS=232
+T_BATCHSIZE=233
+T_DELIMITER=234
+T_SQLINSERT=235
+T_IGNORE=236
+T_WORK=237
+T_PRINT=238
+T_QUIT=239
+T_RAISE=240
+T_RESIGNAL=241
+T_SQLSTATE=242
+T_VALUE=243
+T_ROLLBACK=244
+T_CURRENT=245
+T_CURRENT_SCHEMA=246
+T_ANSI_NULLS=247
+T_ANSI_PADDING=248
+T_NOCOUNT=249
+T_QUOTED_IDENTIFIER=250
+T_XACT_ABORT=251
+T_OFF=252
+T_QUERY_BAND=253
+T_NONE=254
+T_SESSION=255
+T_SIGNAL=256
+T_SUMMARY=257
+T_TOP=258
+T_LIMIT=259
+T_TRUNCATE=260
+T_USE=261
+T_WHILE=262
+T_DO=263
+T_LOOP=264
+T_REVERSE=265
+T_DOT2=266
+T_STEP=267
+L_LABEL=268
+T_LESS=269
+T_GREATER=270
+T_USING=271
+T_UNION=272
+T_ALL=273
+T_EXCEPT=274
+T_INTERSECT=275
+T_SELECT=276
+T_SEL=277
+T_DISTINCT=278
+T_TITLE=279
+L_S_STRING=280
+T_INNER=281
+T_JOIN=282
+T_LEFT=283
+T_RIGHT=284
+T_FULL=285
+T_OUTER=286
+T_WHERE=287
+T_GROUP=288
+T_HAVING=289
+T_QUALIFY=290
+T_ORDER=291
+T_RR=292
+T_RS=293
+T_UR=294
+T_AND=295
+T_KEEP=296
+T_EXCLUSIVE=297
+T_SHARE=298
+T_LOCKS=299
+T_MERGE=300
+T_MATCHED=301
+T_DESCRIBE=302
+T_BETWEEN=303
+T_EQUAL2=304
+T_NOTEQUAL=305
+T_NOTEQUAL2=306
+T_LESSEQUAL=307
+T_GREATEREQUAL=308
+T_RLIKE=309
+T_REGEXP=310
+T_MUL=311
+T_DIV=312
+T_ADD=313
+T_SUB=314
+T_INTERVAL=315
+T_DAY=316
+T_DAYS=317
+T_MICROSECOND=318
+T_MICROSECONDS=319
+T_SECOND=320
+T_SECONDS=321
+T_PIPE=322
+T_CONCAT=323
+T_CASE=324
+T_ISOPEN=325
+T_NOTFOUND=326
+T_AVG=327
+T_COUNT=328
+T_COUNT_BIG=329
+T_CUME_DIST=330
+T_DENSE_RANK=331
+T_FIRST_VALUE=332
+T_LAG=333
+T_LAST_VALUE=334
+T_LEAD=335
+T_MIN=336
+T_RANK=337
+T_ROW_NUMBER=338
+T_STDEV=339
+T_VAR=340
+T_VARIANCE=341
+T_OVER=342
+T_PARTITION=343
+T_ACTIVITY_COUNT=344
+T_CAST=345
+T_CURRENT_DATE=346
+T_CURRENT_TIMESTAMP=347
+T_CURRENT_USER=348
+T_USER=349
+T_MAX_PART_STRING=350
+T_MIN_PART_STRING=351
+T_MAX_PART_INT=352
+T_MIN_PART_INT=353
+T_MAX_PART_DATE=354
+T_MIN_PART_DATE=355
+T_PART_COUNT=356
+T_PART_LOC=357
+T_TRIM=358
+T_SUBSTRING=359
+T_SYSDATE=360
+T_HIVE=361
+T_HOST=362
+L_FILE=363
+L_D_STRING=364
+L_DEC=365
+T_TRUE=366
+T_FALSE=367
+T_DIR=368
+T_FILE=369
+T_FILES=370
+T_NEW=371
+T_PWD=372
+T_SESSIONS=373
+T_SUBDIR=374
+'@'=1
+'#'=2
+'/'=3
+'%'=4
+'.'=5
+'*'=6
+'!'=7
+';'=8
+'-'=9
+'+'=10
diff --git a/src/lib/hive/HiveSqlLexer.interp b/src/lib/hive/HiveSqlLexer.interp
new file mode 100644
index 0000000..4a6bed6
--- /dev/null
+++ b/src/lib/hive/HiveSqlLexer.interp
@@ -0,0 +1,47 @@
+token literal names:
+null
+'@'
+'#'
+'/'
+'%'
+'.'
+'*'
+'!'
+';'
+'-'
+'+'
+
+token symbolic names:
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+null
+
+rule names:
+T__0
+T__1
+T__2
+T__3
+T__4
+T__5
+T__6
+T__7
+T__8
+T__9
+
+channel names:
+DEFAULT_TOKEN_CHANNEL
+HIDDEN
+
+mode names:
+DEFAULT_MODE
+
+atn:
+[3, 24715, 42794, 33075, 47597, 16764, 15335, 30598, 22884, 2, 12, 43, 8, 1, 4, 2, 9, 2, 4, 3, 9, 3, 4, 4, 9, 4, 4, 5, 9, 5, 4, 6, 9, 6, 4, 7, 9, 7, 4, 8, 9, 8, 4, 9, 9, 9, 4, 10, 9, 10, 4, 11, 9, 11, 3, 2, 3, 2, 3, 3, 3, 3, 3, 4, 3, 4, 3, 5, 3, 5, 3, 6, 3, 6, 3, 7, 3, 7, 3, 8, 3, 8, 3, 9, 3, 9, 3, 10, 3, 10, 3, 11, 3, 11, 2, 2, 12, 3, 3, 5, 4, 7, 5, 9, 6, 11, 7, 13, 8, 15, 9, 17, 10, 19, 11, 21, 12, 3, 2, 2, 2, 42, 2, 3, 3, 2, 2, 2, 2, 5, 3, 2, 2, 2, 2, 7, 3, 2, 2, 2, 2, 9, 3, 2, 2, 2, 2, 11, 3, 2, 2, 2, 2, 13, 3, 2, 2, 2, 2, 15, 3, 2, 2, 2, 2, 17, 3, 2, 2, 2, 2, 19, 3, 2, 2, 2, 2, 21, 3, 2, 2, 2, 3, 23, 3, 2, 2, 2, 5, 25, 3, 2, 2, 2, 7, 27, 3, 2, 2, 2, 9, 29, 3, 2, 2, 2, 11, 31, 3, 2, 2, 2, 13, 33, 3, 2, 2, 2, 15, 35, 3, 2, 2, 2, 17, 37, 3, 2, 2, 2, 19, 39, 3, 2, 2, 2, 21, 41, 3, 2, 2, 2, 23, 24, 7, 66, 2, 2, 24, 4, 3, 2, 2, 2, 25, 26, 7, 37, 2, 2, 26, 6, 3, 2, 2, 2, 27, 28, 7, 49, 2, 2, 28, 8, 3, 2, 2, 2, 29, 30, 7, 39, 2, 2, 30, 10, 3, 2, 2, 2, 31, 32, 7, 48, 2, 2, 32, 12, 3, 2, 2, 2, 33, 34, 7, 44, 2, 2, 34, 14, 3, 2, 2, 2, 35, 36, 7, 35, 2, 2, 36, 16, 3, 2, 2, 2, 37, 38, 7, 61, 2, 2, 38, 18, 3, 2, 2, 2, 39, 40, 7, 47, 2, 2, 40, 20, 3, 2, 2, 2, 41, 42, 7, 45, 2, 2, 42, 22, 3, 2, 2, 2, 3, 2, 2]
\ No newline at end of file
diff --git a/src/lib/hive/HiveSqlLexer.js b/src/lib/hive/HiveSqlLexer.js
new file mode 100644
index 0000000..748797c
--- /dev/null
+++ b/src/lib/hive/HiveSqlLexer.js
@@ -0,0 +1,85 @@
+// Generated from /Users/ziv/Workspace/dt-sql-parser/src/grammar/hive/HiveSql.g4 by ANTLR 4.8
+// jshint ignore: start
+var antlr4 = require('antlr4/index');
+
+
+
+var serializedATN = ["\u0003\u608b\ua72a\u8133\ub9ed\u417c\u3be7\u7786\u5964",
+ "\u0002\f+\b\u0001\u0004\u0002\t\u0002\u0004\u0003\t\u0003\u0004\u0004",
+ "\t\u0004\u0004\u0005\t\u0005\u0004\u0006\t\u0006\u0004\u0007\t\u0007",
+ "\u0004\b\t\b\u0004\t\t\t\u0004\n\t\n\u0004\u000b\t\u000b\u0003\u0002",
+ "\u0003\u0002\u0003\u0003\u0003\u0003\u0003\u0004\u0003\u0004\u0003\u0005",
+ "\u0003\u0005\u0003\u0006\u0003\u0006\u0003\u0007\u0003\u0007\u0003\b",
+ "\u0003\b\u0003\t\u0003\t\u0003\n\u0003\n\u0003\u000b\u0003\u000b\u0002",
+ "\u0002\f\u0003\u0003\u0005\u0004\u0007\u0005\t\u0006\u000b\u0007\r\b",
+ "\u000f\t\u0011\n\u0013\u000b\u0015\f\u0003\u0002\u0002\u0002*\u0002",
+ "\u0003\u0003\u0002\u0002\u0002\u0002\u0005\u0003\u0002\u0002\u0002\u0002",
+ "\u0007\u0003\u0002\u0002\u0002\u0002\t\u0003\u0002\u0002\u0002\u0002",
+ "\u000b\u0003\u0002\u0002\u0002\u0002\r\u0003\u0002\u0002\u0002\u0002",
+ "\u000f\u0003\u0002\u0002\u0002\u0002\u0011\u0003\u0002\u0002\u0002\u0002",
+ "\u0013\u0003\u0002\u0002\u0002\u0002\u0015\u0003\u0002\u0002\u0002\u0003",
+ "\u0017\u0003\u0002\u0002\u0002\u0005\u0019\u0003\u0002\u0002\u0002\u0007",
+ "\u001b\u0003\u0002\u0002\u0002\t\u001d\u0003\u0002\u0002\u0002\u000b",
+ "\u001f\u0003\u0002\u0002\u0002\r!\u0003\u0002\u0002\u0002\u000f#\u0003",
+ "\u0002\u0002\u0002\u0011%\u0003\u0002\u0002\u0002\u0013\'\u0003\u0002",
+ "\u0002\u0002\u0015)\u0003\u0002\u0002\u0002\u0017\u0018\u0007B\u0002",
+ "\u0002\u0018\u0004\u0003\u0002\u0002\u0002\u0019\u001a\u0007%\u0002",
+ "\u0002\u001a\u0006\u0003\u0002\u0002\u0002\u001b\u001c\u00071\u0002",
+ "\u0002\u001c\b\u0003\u0002\u0002\u0002\u001d\u001e\u0007\'\u0002\u0002",
+ "\u001e\n\u0003\u0002\u0002\u0002\u001f \u00070\u0002\u0002 \f\u0003",
+ "\u0002\u0002\u0002!\"\u0007,\u0002\u0002\"\u000e\u0003\u0002\u0002\u0002",
+ "#$\u0007#\u0002\u0002$\u0010\u0003\u0002\u0002\u0002%&\u0007=\u0002",
+ "\u0002&\u0012\u0003\u0002\u0002\u0002\'(\u0007/\u0002\u0002(\u0014\u0003",
+ "\u0002\u0002\u0002)*\u0007-\u0002\u0002*\u0016\u0003\u0002\u0002\u0002",
+ "\u0003\u0002\u0002"].join("");
+
+
+var atn = new antlr4.atn.ATNDeserializer().deserialize(serializedATN);
+
+var decisionsToDFA = atn.decisionToState.map( function(ds, index) { return new antlr4.dfa.DFA(ds, index); });
+
+function HiveSqlLexer(input) {
+ antlr4.Lexer.call(this, input);
+ this._interp = new antlr4.atn.LexerATNSimulator(this, atn, decisionsToDFA, new antlr4.PredictionContextCache());
+ return this;
+}
+
+HiveSqlLexer.prototype = Object.create(antlr4.Lexer.prototype);
+HiveSqlLexer.prototype.constructor = HiveSqlLexer;
+
+Object.defineProperty(HiveSqlLexer.prototype, "atn", {
+ get : function() {
+ return atn;
+ }
+});
+
+HiveSqlLexer.EOF = antlr4.Token.EOF;
+HiveSqlLexer.T__0 = 1;
+HiveSqlLexer.T__1 = 2;
+HiveSqlLexer.T__2 = 3;
+HiveSqlLexer.T__3 = 4;
+HiveSqlLexer.T__4 = 5;
+HiveSqlLexer.T__5 = 6;
+HiveSqlLexer.T__6 = 7;
+HiveSqlLexer.T__7 = 8;
+HiveSqlLexer.T__8 = 9;
+HiveSqlLexer.T__9 = 10;
+
+HiveSqlLexer.prototype.channelNames = [ "DEFAULT_TOKEN_CHANNEL", "HIDDEN" ];
+
+HiveSqlLexer.prototype.modeNames = [ "DEFAULT_MODE" ];
+
+HiveSqlLexer.prototype.literalNames = [ null, "'@'", "'#'", "'/'", "'%'",
+ "'.'", "'*'", "'!'", "';'", "'-'",
+ "'+'" ];
+
+HiveSqlLexer.prototype.symbolicNames = [ ];
+
+HiveSqlLexer.prototype.ruleNames = [ "T__0", "T__1", "T__2", "T__3", "T__4",
+ "T__5", "T__6", "T__7", "T__8", "T__9" ];
+
+HiveSqlLexer.prototype.grammarFileName = "HiveSql.g4";
+
+
+exports.HiveSqlLexer = HiveSqlLexer;
+
diff --git a/src/lib/hive/HiveSqlLexer.tokens b/src/lib/hive/HiveSqlLexer.tokens
new file mode 100644
index 0000000..891ccf7
--- /dev/null
+++ b/src/lib/hive/HiveSqlLexer.tokens
@@ -0,0 +1,20 @@
+T__0=1
+T__1=2
+T__2=3
+T__3=4
+T__4=5
+T__5=6
+T__6=7
+T__7=8
+T__8=9
+T__9=10
+'@'=1
+'#'=2
+'/'=3
+'%'=4
+'.'=5
+'*'=6
+'!'=7
+';'=8
+'-'=9
+'+'=10
diff --git a/src/lib/hive/HiveSqlListener.js b/src/lib/hive/HiveSqlListener.js
new file mode 100644
index 0000000..7f0223a
--- /dev/null
+++ b/src/lib/hive/HiveSqlListener.js
@@ -0,0 +1,2058 @@
+// Generated from /Users/ziv/Workspace/dt-sql-parser/src/grammar/hive/HiveSql.g4 by ANTLR 4.8
+// jshint ignore: start
+var antlr4 = require('antlr4/index');
+
+// This class defines a complete listener for a parse tree produced by HiveSqlParser.
+function HiveSqlListener() {
+ antlr4.tree.ParseTreeListener.call(this);
+ return this;
+}
+
+HiveSqlListener.prototype = Object.create(antlr4.tree.ParseTreeListener.prototype);
+HiveSqlListener.prototype.constructor = HiveSqlListener;
+
+// Enter a parse tree produced by HiveSqlParser#program.
+HiveSqlListener.prototype.enterProgram = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#program.
+HiveSqlListener.prototype.exitProgram = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#block.
+HiveSqlListener.prototype.enterBlock = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#block.
+HiveSqlListener.prototype.exitBlock = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#begin_end_block.
+HiveSqlListener.prototype.enterBegin_end_block = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#begin_end_block.
+HiveSqlListener.prototype.exitBegin_end_block = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#single_block_stmt.
+HiveSqlListener.prototype.enterSingle_block_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#single_block_stmt.
+HiveSqlListener.prototype.exitSingle_block_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#block_end.
+HiveSqlListener.prototype.enterBlock_end = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#block_end.
+HiveSqlListener.prototype.exitBlock_end = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#proc_block.
+HiveSqlListener.prototype.enterProc_block = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#proc_block.
+HiveSqlListener.prototype.exitProc_block = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#stmt.
+HiveSqlListener.prototype.enterStmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#stmt.
+HiveSqlListener.prototype.exitStmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#semicolon_stmt.
+HiveSqlListener.prototype.enterSemicolon_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#semicolon_stmt.
+HiveSqlListener.prototype.exitSemicolon_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#exception_block.
+HiveSqlListener.prototype.enterException_block = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#exception_block.
+HiveSqlListener.prototype.exitException_block = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#exception_block_item.
+HiveSqlListener.prototype.enterException_block_item = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#exception_block_item.
+HiveSqlListener.prototype.exitException_block_item = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#null_stmt.
+HiveSqlListener.prototype.enterNull_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#null_stmt.
+HiveSqlListener.prototype.exitNull_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#expr_stmt.
+HiveSqlListener.prototype.enterExpr_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#expr_stmt.
+HiveSqlListener.prototype.exitExpr_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#assignment_stmt.
+HiveSqlListener.prototype.enterAssignment_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#assignment_stmt.
+HiveSqlListener.prototype.exitAssignment_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#assignment_stmt_item.
+HiveSqlListener.prototype.enterAssignment_stmt_item = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#assignment_stmt_item.
+HiveSqlListener.prototype.exitAssignment_stmt_item = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#assignment_stmt_single_item.
+HiveSqlListener.prototype.enterAssignment_stmt_single_item = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#assignment_stmt_single_item.
+HiveSqlListener.prototype.exitAssignment_stmt_single_item = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#assignment_stmt_multiple_item.
+HiveSqlListener.prototype.enterAssignment_stmt_multiple_item = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#assignment_stmt_multiple_item.
+HiveSqlListener.prototype.exitAssignment_stmt_multiple_item = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#assignment_stmt_select_item.
+HiveSqlListener.prototype.enterAssignment_stmt_select_item = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#assignment_stmt_select_item.
+HiveSqlListener.prototype.exitAssignment_stmt_select_item = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#allocate_cursor_stmt.
+HiveSqlListener.prototype.enterAllocate_cursor_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#allocate_cursor_stmt.
+HiveSqlListener.prototype.exitAllocate_cursor_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#associate_locator_stmt.
+HiveSqlListener.prototype.enterAssociate_locator_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#associate_locator_stmt.
+HiveSqlListener.prototype.exitAssociate_locator_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#begin_transaction_stmt.
+HiveSqlListener.prototype.enterBegin_transaction_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#begin_transaction_stmt.
+HiveSqlListener.prototype.exitBegin_transaction_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#break_stmt.
+HiveSqlListener.prototype.enterBreak_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#break_stmt.
+HiveSqlListener.prototype.exitBreak_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#call_stmt.
+HiveSqlListener.prototype.enterCall_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#call_stmt.
+HiveSqlListener.prototype.exitCall_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#declare_stmt.
+HiveSqlListener.prototype.enterDeclare_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#declare_stmt.
+HiveSqlListener.prototype.exitDeclare_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#declare_block.
+HiveSqlListener.prototype.enterDeclare_block = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#declare_block.
+HiveSqlListener.prototype.exitDeclare_block = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#declare_block_inplace.
+HiveSqlListener.prototype.enterDeclare_block_inplace = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#declare_block_inplace.
+HiveSqlListener.prototype.exitDeclare_block_inplace = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#declare_stmt_item.
+HiveSqlListener.prototype.enterDeclare_stmt_item = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#declare_stmt_item.
+HiveSqlListener.prototype.exitDeclare_stmt_item = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#declare_var_item.
+HiveSqlListener.prototype.enterDeclare_var_item = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#declare_var_item.
+HiveSqlListener.prototype.exitDeclare_var_item = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#declare_condition_item.
+HiveSqlListener.prototype.enterDeclare_condition_item = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#declare_condition_item.
+HiveSqlListener.prototype.exitDeclare_condition_item = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#declare_cursor_item.
+HiveSqlListener.prototype.enterDeclare_cursor_item = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#declare_cursor_item.
+HiveSqlListener.prototype.exitDeclare_cursor_item = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#cursor_with_return.
+HiveSqlListener.prototype.enterCursor_with_return = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#cursor_with_return.
+HiveSqlListener.prototype.exitCursor_with_return = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#cursor_without_return.
+HiveSqlListener.prototype.enterCursor_without_return = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#cursor_without_return.
+HiveSqlListener.prototype.exitCursor_without_return = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#declare_handler_item.
+HiveSqlListener.prototype.enterDeclare_handler_item = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#declare_handler_item.
+HiveSqlListener.prototype.exitDeclare_handler_item = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#declare_temporary_table_item.
+HiveSqlListener.prototype.enterDeclare_temporary_table_item = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#declare_temporary_table_item.
+HiveSqlListener.prototype.exitDeclare_temporary_table_item = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#create_table_stmt.
+HiveSqlListener.prototype.enterCreate_table_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#create_table_stmt.
+HiveSqlListener.prototype.exitCreate_table_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#create_local_temp_table_stmt.
+HiveSqlListener.prototype.enterCreate_local_temp_table_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#create_local_temp_table_stmt.
+HiveSqlListener.prototype.exitCreate_local_temp_table_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#create_table_definition.
+HiveSqlListener.prototype.enterCreate_table_definition = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#create_table_definition.
+HiveSqlListener.prototype.exitCreate_table_definition = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#create_table_columns.
+HiveSqlListener.prototype.enterCreate_table_columns = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#create_table_columns.
+HiveSqlListener.prototype.exitCreate_table_columns = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#create_table_columns_item.
+HiveSqlListener.prototype.enterCreate_table_columns_item = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#create_table_columns_item.
+HiveSqlListener.prototype.exitCreate_table_columns_item = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#column_name.
+HiveSqlListener.prototype.enterColumn_name = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#column_name.
+HiveSqlListener.prototype.exitColumn_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#create_table_column_inline_cons.
+HiveSqlListener.prototype.enterCreate_table_column_inline_cons = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#create_table_column_inline_cons.
+HiveSqlListener.prototype.exitCreate_table_column_inline_cons = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#create_table_column_cons.
+HiveSqlListener.prototype.enterCreate_table_column_cons = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#create_table_column_cons.
+HiveSqlListener.prototype.exitCreate_table_column_cons = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#create_table_fk_action.
+HiveSqlListener.prototype.enterCreate_table_fk_action = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#create_table_fk_action.
+HiveSqlListener.prototype.exitCreate_table_fk_action = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#create_table_preoptions.
+HiveSqlListener.prototype.enterCreate_table_preoptions = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#create_table_preoptions.
+HiveSqlListener.prototype.exitCreate_table_preoptions = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#create_table_preoptions_item.
+HiveSqlListener.prototype.enterCreate_table_preoptions_item = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#create_table_preoptions_item.
+HiveSqlListener.prototype.exitCreate_table_preoptions_item = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#create_table_preoptions_td_item.
+HiveSqlListener.prototype.enterCreate_table_preoptions_td_item = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#create_table_preoptions_td_item.
+HiveSqlListener.prototype.exitCreate_table_preoptions_td_item = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#create_table_options.
+HiveSqlListener.prototype.enterCreate_table_options = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#create_table_options.
+HiveSqlListener.prototype.exitCreate_table_options = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#create_table_options_item.
+HiveSqlListener.prototype.enterCreate_table_options_item = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#create_table_options_item.
+HiveSqlListener.prototype.exitCreate_table_options_item = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#create_table_options_ora_item.
+HiveSqlListener.prototype.enterCreate_table_options_ora_item = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#create_table_options_ora_item.
+HiveSqlListener.prototype.exitCreate_table_options_ora_item = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#create_table_options_db2_item.
+HiveSqlListener.prototype.enterCreate_table_options_db2_item = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#create_table_options_db2_item.
+HiveSqlListener.prototype.exitCreate_table_options_db2_item = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#create_table_options_td_item.
+HiveSqlListener.prototype.enterCreate_table_options_td_item = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#create_table_options_td_item.
+HiveSqlListener.prototype.exitCreate_table_options_td_item = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#create_table_options_hive_item.
+HiveSqlListener.prototype.enterCreate_table_options_hive_item = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#create_table_options_hive_item.
+HiveSqlListener.prototype.exitCreate_table_options_hive_item = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#create_table_hive_row_format.
+HiveSqlListener.prototype.enterCreate_table_hive_row_format = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#create_table_hive_row_format.
+HiveSqlListener.prototype.exitCreate_table_hive_row_format = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#create_table_hive_row_format_fields.
+HiveSqlListener.prototype.enterCreate_table_hive_row_format_fields = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#create_table_hive_row_format_fields.
+HiveSqlListener.prototype.exitCreate_table_hive_row_format_fields = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#create_table_options_mssql_item.
+HiveSqlListener.prototype.enterCreate_table_options_mssql_item = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#create_table_options_mssql_item.
+HiveSqlListener.prototype.exitCreate_table_options_mssql_item = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#create_table_options_mysql_item.
+HiveSqlListener.prototype.enterCreate_table_options_mysql_item = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#create_table_options_mysql_item.
+HiveSqlListener.prototype.exitCreate_table_options_mysql_item = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#alter_table_stmt.
+HiveSqlListener.prototype.enterAlter_table_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#alter_table_stmt.
+HiveSqlListener.prototype.exitAlter_table_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#alter_table_item.
+HiveSqlListener.prototype.enterAlter_table_item = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#alter_table_item.
+HiveSqlListener.prototype.exitAlter_table_item = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#alter_table_add_constraint.
+HiveSqlListener.prototype.enterAlter_table_add_constraint = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#alter_table_add_constraint.
+HiveSqlListener.prototype.exitAlter_table_add_constraint = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#alter_table_add_constraint_item.
+HiveSqlListener.prototype.enterAlter_table_add_constraint_item = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#alter_table_add_constraint_item.
+HiveSqlListener.prototype.exitAlter_table_add_constraint_item = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#dtype.
+HiveSqlListener.prototype.enterDtype = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#dtype.
+HiveSqlListener.prototype.exitDtype = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#dtype_len.
+HiveSqlListener.prototype.enterDtype_len = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#dtype_len.
+HiveSqlListener.prototype.exitDtype_len = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#dtype_attr.
+HiveSqlListener.prototype.enterDtype_attr = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#dtype_attr.
+HiveSqlListener.prototype.exitDtype_attr = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#dtype_default.
+HiveSqlListener.prototype.enterDtype_default = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#dtype_default.
+HiveSqlListener.prototype.exitDtype_default = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#create_database_stmt.
+HiveSqlListener.prototype.enterCreate_database_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#create_database_stmt.
+HiveSqlListener.prototype.exitCreate_database_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#create_database_option.
+HiveSqlListener.prototype.enterCreate_database_option = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#create_database_option.
+HiveSqlListener.prototype.exitCreate_database_option = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#create_function_stmt.
+HiveSqlListener.prototype.enterCreate_function_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#create_function_stmt.
+HiveSqlListener.prototype.exitCreate_function_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#create_function_return.
+HiveSqlListener.prototype.enterCreate_function_return = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#create_function_return.
+HiveSqlListener.prototype.exitCreate_function_return = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#create_package_stmt.
+HiveSqlListener.prototype.enterCreate_package_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#create_package_stmt.
+HiveSqlListener.prototype.exitCreate_package_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#package_spec.
+HiveSqlListener.prototype.enterPackage_spec = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#package_spec.
+HiveSqlListener.prototype.exitPackage_spec = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#package_spec_item.
+HiveSqlListener.prototype.enterPackage_spec_item = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#package_spec_item.
+HiveSqlListener.prototype.exitPackage_spec_item = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#create_package_body_stmt.
+HiveSqlListener.prototype.enterCreate_package_body_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#create_package_body_stmt.
+HiveSqlListener.prototype.exitCreate_package_body_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#package_body.
+HiveSqlListener.prototype.enterPackage_body = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#package_body.
+HiveSqlListener.prototype.exitPackage_body = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#package_body_item.
+HiveSqlListener.prototype.enterPackage_body_item = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#package_body_item.
+HiveSqlListener.prototype.exitPackage_body_item = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#create_procedure_stmt.
+HiveSqlListener.prototype.enterCreate_procedure_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#create_procedure_stmt.
+HiveSqlListener.prototype.exitCreate_procedure_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#create_routine_params.
+HiveSqlListener.prototype.enterCreate_routine_params = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#create_routine_params.
+HiveSqlListener.prototype.exitCreate_routine_params = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#create_routine_param_item.
+HiveSqlListener.prototype.enterCreate_routine_param_item = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#create_routine_param_item.
+HiveSqlListener.prototype.exitCreate_routine_param_item = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#create_routine_options.
+HiveSqlListener.prototype.enterCreate_routine_options = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#create_routine_options.
+HiveSqlListener.prototype.exitCreate_routine_options = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#create_routine_option.
+HiveSqlListener.prototype.enterCreate_routine_option = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#create_routine_option.
+HiveSqlListener.prototype.exitCreate_routine_option = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#drop_stmt.
+HiveSqlListener.prototype.enterDrop_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#drop_stmt.
+HiveSqlListener.prototype.exitDrop_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#end_transaction_stmt.
+HiveSqlListener.prototype.enterEnd_transaction_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#end_transaction_stmt.
+HiveSqlListener.prototype.exitEnd_transaction_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#exec_stmt.
+HiveSqlListener.prototype.enterExec_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#exec_stmt.
+HiveSqlListener.prototype.exitExec_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#if_stmt.
+HiveSqlListener.prototype.enterIf_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#if_stmt.
+HiveSqlListener.prototype.exitIf_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#if_plsql_stmt.
+HiveSqlListener.prototype.enterIf_plsql_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#if_plsql_stmt.
+HiveSqlListener.prototype.exitIf_plsql_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#if_tsql_stmt.
+HiveSqlListener.prototype.enterIf_tsql_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#if_tsql_stmt.
+HiveSqlListener.prototype.exitIf_tsql_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#if_bteq_stmt.
+HiveSqlListener.prototype.enterIf_bteq_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#if_bteq_stmt.
+HiveSqlListener.prototype.exitIf_bteq_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#elseif_block.
+HiveSqlListener.prototype.enterElseif_block = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#elseif_block.
+HiveSqlListener.prototype.exitElseif_block = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#else_block.
+HiveSqlListener.prototype.enterElse_block = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#else_block.
+HiveSqlListener.prototype.exitElse_block = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#include_stmt.
+HiveSqlListener.prototype.enterInclude_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#include_stmt.
+HiveSqlListener.prototype.exitInclude_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#insert_stmt.
+HiveSqlListener.prototype.enterInsert_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#insert_stmt.
+HiveSqlListener.prototype.exitInsert_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#insert_stmt_cols.
+HiveSqlListener.prototype.enterInsert_stmt_cols = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#insert_stmt_cols.
+HiveSqlListener.prototype.exitInsert_stmt_cols = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#insert_stmt_rows.
+HiveSqlListener.prototype.enterInsert_stmt_rows = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#insert_stmt_rows.
+HiveSqlListener.prototype.exitInsert_stmt_rows = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#insert_stmt_row.
+HiveSqlListener.prototype.enterInsert_stmt_row = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#insert_stmt_row.
+HiveSqlListener.prototype.exitInsert_stmt_row = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#insert_directory_stmt.
+HiveSqlListener.prototype.enterInsert_directory_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#insert_directory_stmt.
+HiveSqlListener.prototype.exitInsert_directory_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#exit_stmt.
+HiveSqlListener.prototype.enterExit_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#exit_stmt.
+HiveSqlListener.prototype.exitExit_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#get_diag_stmt.
+HiveSqlListener.prototype.enterGet_diag_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#get_diag_stmt.
+HiveSqlListener.prototype.exitGet_diag_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#get_diag_stmt_item.
+HiveSqlListener.prototype.enterGet_diag_stmt_item = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#get_diag_stmt_item.
+HiveSqlListener.prototype.exitGet_diag_stmt_item = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#get_diag_stmt_exception_item.
+HiveSqlListener.prototype.enterGet_diag_stmt_exception_item = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#get_diag_stmt_exception_item.
+HiveSqlListener.prototype.exitGet_diag_stmt_exception_item = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#get_diag_stmt_rowcount_item.
+HiveSqlListener.prototype.enterGet_diag_stmt_rowcount_item = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#get_diag_stmt_rowcount_item.
+HiveSqlListener.prototype.exitGet_diag_stmt_rowcount_item = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#grant_stmt.
+HiveSqlListener.prototype.enterGrant_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#grant_stmt.
+HiveSqlListener.prototype.exitGrant_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#grant_stmt_item.
+HiveSqlListener.prototype.enterGrant_stmt_item = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#grant_stmt_item.
+HiveSqlListener.prototype.exitGrant_stmt_item = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#leave_stmt.
+HiveSqlListener.prototype.enterLeave_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#leave_stmt.
+HiveSqlListener.prototype.exitLeave_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#map_object_stmt.
+HiveSqlListener.prototype.enterMap_object_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#map_object_stmt.
+HiveSqlListener.prototype.exitMap_object_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#open_stmt.
+HiveSqlListener.prototype.enterOpen_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#open_stmt.
+HiveSqlListener.prototype.exitOpen_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#fetch_stmt.
+HiveSqlListener.prototype.enterFetch_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#fetch_stmt.
+HiveSqlListener.prototype.exitFetch_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#collect_stats_stmt.
+HiveSqlListener.prototype.enterCollect_stats_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#collect_stats_stmt.
+HiveSqlListener.prototype.exitCollect_stats_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#collect_stats_clause.
+HiveSqlListener.prototype.enterCollect_stats_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#collect_stats_clause.
+HiveSqlListener.prototype.exitCollect_stats_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#close_stmt.
+HiveSqlListener.prototype.enterClose_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#close_stmt.
+HiveSqlListener.prototype.exitClose_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#cmp_stmt.
+HiveSqlListener.prototype.enterCmp_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#cmp_stmt.
+HiveSqlListener.prototype.exitCmp_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#cmp_source.
+HiveSqlListener.prototype.enterCmp_source = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#cmp_source.
+HiveSqlListener.prototype.exitCmp_source = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#copy_from_local_stmt.
+HiveSqlListener.prototype.enterCopy_from_local_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#copy_from_local_stmt.
+HiveSqlListener.prototype.exitCopy_from_local_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#copy_stmt.
+HiveSqlListener.prototype.enterCopy_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#copy_stmt.
+HiveSqlListener.prototype.exitCopy_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#copy_source.
+HiveSqlListener.prototype.enterCopy_source = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#copy_source.
+HiveSqlListener.prototype.exitCopy_source = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#copy_target.
+HiveSqlListener.prototype.enterCopy_target = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#copy_target.
+HiveSqlListener.prototype.exitCopy_target = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#copy_option.
+HiveSqlListener.prototype.enterCopy_option = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#copy_option.
+HiveSqlListener.prototype.exitCopy_option = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#copy_file_option.
+HiveSqlListener.prototype.enterCopy_file_option = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#copy_file_option.
+HiveSqlListener.prototype.exitCopy_file_option = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#commit_stmt.
+HiveSqlListener.prototype.enterCommit_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#commit_stmt.
+HiveSqlListener.prototype.exitCommit_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#create_index_stmt.
+HiveSqlListener.prototype.enterCreate_index_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#create_index_stmt.
+HiveSqlListener.prototype.exitCreate_index_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#create_index_col.
+HiveSqlListener.prototype.enterCreate_index_col = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#create_index_col.
+HiveSqlListener.prototype.exitCreate_index_col = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#index_storage_clause.
+HiveSqlListener.prototype.enterIndex_storage_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#index_storage_clause.
+HiveSqlListener.prototype.exitIndex_storage_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#index_mssql_storage_clause.
+HiveSqlListener.prototype.enterIndex_mssql_storage_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#index_mssql_storage_clause.
+HiveSqlListener.prototype.exitIndex_mssql_storage_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#print_stmt.
+HiveSqlListener.prototype.enterPrint_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#print_stmt.
+HiveSqlListener.prototype.exitPrint_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#quit_stmt.
+HiveSqlListener.prototype.enterQuit_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#quit_stmt.
+HiveSqlListener.prototype.exitQuit_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#raise_stmt.
+HiveSqlListener.prototype.enterRaise_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#raise_stmt.
+HiveSqlListener.prototype.exitRaise_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#resignal_stmt.
+HiveSqlListener.prototype.enterResignal_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#resignal_stmt.
+HiveSqlListener.prototype.exitResignal_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#return_stmt.
+HiveSqlListener.prototype.enterReturn_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#return_stmt.
+HiveSqlListener.prototype.exitReturn_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#rollback_stmt.
+HiveSqlListener.prototype.enterRollback_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#rollback_stmt.
+HiveSqlListener.prototype.exitRollback_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#set_session_option.
+HiveSqlListener.prototype.enterSet_session_option = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#set_session_option.
+HiveSqlListener.prototype.exitSet_session_option = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#set_current_schema_option.
+HiveSqlListener.prototype.enterSet_current_schema_option = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#set_current_schema_option.
+HiveSqlListener.prototype.exitSet_current_schema_option = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#set_mssql_session_option.
+HiveSqlListener.prototype.enterSet_mssql_session_option = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#set_mssql_session_option.
+HiveSqlListener.prototype.exitSet_mssql_session_option = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#set_teradata_session_option.
+HiveSqlListener.prototype.enterSet_teradata_session_option = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#set_teradata_session_option.
+HiveSqlListener.prototype.exitSet_teradata_session_option = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#signal_stmt.
+HiveSqlListener.prototype.enterSignal_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#signal_stmt.
+HiveSqlListener.prototype.exitSignal_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#summary_stmt.
+HiveSqlListener.prototype.enterSummary_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#summary_stmt.
+HiveSqlListener.prototype.exitSummary_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#truncate_stmt.
+HiveSqlListener.prototype.enterTruncate_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#truncate_stmt.
+HiveSqlListener.prototype.exitTruncate_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#use_stmt.
+HiveSqlListener.prototype.enterUse_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#use_stmt.
+HiveSqlListener.prototype.exitUse_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#values_into_stmt.
+HiveSqlListener.prototype.enterValues_into_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#values_into_stmt.
+HiveSqlListener.prototype.exitValues_into_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#while_stmt.
+HiveSqlListener.prototype.enterWhile_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#while_stmt.
+HiveSqlListener.prototype.exitWhile_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#for_cursor_stmt.
+HiveSqlListener.prototype.enterFor_cursor_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#for_cursor_stmt.
+HiveSqlListener.prototype.exitFor_cursor_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#for_range_stmt.
+HiveSqlListener.prototype.enterFor_range_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#for_range_stmt.
+HiveSqlListener.prototype.exitFor_range_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#label.
+HiveSqlListener.prototype.enterLabel = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#label.
+HiveSqlListener.prototype.exitLabel = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#using_clause.
+HiveSqlListener.prototype.enterUsing_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#using_clause.
+HiveSqlListener.prototype.exitUsing_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#select_stmt.
+HiveSqlListener.prototype.enterSelect_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#select_stmt.
+HiveSqlListener.prototype.exitSelect_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#cte_select_stmt.
+HiveSqlListener.prototype.enterCte_select_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#cte_select_stmt.
+HiveSqlListener.prototype.exitCte_select_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#cte_select_stmt_item.
+HiveSqlListener.prototype.enterCte_select_stmt_item = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#cte_select_stmt_item.
+HiveSqlListener.prototype.exitCte_select_stmt_item = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#cte_select_cols.
+HiveSqlListener.prototype.enterCte_select_cols = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#cte_select_cols.
+HiveSqlListener.prototype.exitCte_select_cols = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#fullselect_stmt.
+HiveSqlListener.prototype.enterFullselect_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#fullselect_stmt.
+HiveSqlListener.prototype.exitFullselect_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#fullselect_stmt_item.
+HiveSqlListener.prototype.enterFullselect_stmt_item = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#fullselect_stmt_item.
+HiveSqlListener.prototype.exitFullselect_stmt_item = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#fullselect_set_clause.
+HiveSqlListener.prototype.enterFullselect_set_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#fullselect_set_clause.
+HiveSqlListener.prototype.exitFullselect_set_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#subselect_stmt.
+HiveSqlListener.prototype.enterSubselect_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#subselect_stmt.
+HiveSqlListener.prototype.exitSubselect_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#select_list.
+HiveSqlListener.prototype.enterSelect_list = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#select_list.
+HiveSqlListener.prototype.exitSelect_list = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#select_list_set.
+HiveSqlListener.prototype.enterSelect_list_set = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#select_list_set.
+HiveSqlListener.prototype.exitSelect_list_set = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#select_list_limit.
+HiveSqlListener.prototype.enterSelect_list_limit = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#select_list_limit.
+HiveSqlListener.prototype.exitSelect_list_limit = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#select_list_item.
+HiveSqlListener.prototype.enterSelect_list_item = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#select_list_item.
+HiveSqlListener.prototype.exitSelect_list_item = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#select_list_alias.
+HiveSqlListener.prototype.enterSelect_list_alias = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#select_list_alias.
+HiveSqlListener.prototype.exitSelect_list_alias = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#select_list_asterisk.
+HiveSqlListener.prototype.enterSelect_list_asterisk = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#select_list_asterisk.
+HiveSqlListener.prototype.exitSelect_list_asterisk = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#into_clause.
+HiveSqlListener.prototype.enterInto_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#into_clause.
+HiveSqlListener.prototype.exitInto_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#from_clause.
+HiveSqlListener.prototype.enterFrom_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#from_clause.
+HiveSqlListener.prototype.exitFrom_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#from_table_clause.
+HiveSqlListener.prototype.enterFrom_table_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#from_table_clause.
+HiveSqlListener.prototype.exitFrom_table_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#from_table_name_clause.
+HiveSqlListener.prototype.enterFrom_table_name_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#from_table_name_clause.
+HiveSqlListener.prototype.exitFrom_table_name_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#from_subselect_clause.
+HiveSqlListener.prototype.enterFrom_subselect_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#from_subselect_clause.
+HiveSqlListener.prototype.exitFrom_subselect_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#from_join_clause.
+HiveSqlListener.prototype.enterFrom_join_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#from_join_clause.
+HiveSqlListener.prototype.exitFrom_join_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#from_join_type_clause.
+HiveSqlListener.prototype.enterFrom_join_type_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#from_join_type_clause.
+HiveSqlListener.prototype.exitFrom_join_type_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#from_table_values_clause.
+HiveSqlListener.prototype.enterFrom_table_values_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#from_table_values_clause.
+HiveSqlListener.prototype.exitFrom_table_values_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#from_table_values_row.
+HiveSqlListener.prototype.enterFrom_table_values_row = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#from_table_values_row.
+HiveSqlListener.prototype.exitFrom_table_values_row = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#from_alias_clause.
+HiveSqlListener.prototype.enterFrom_alias_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#from_alias_clause.
+HiveSqlListener.prototype.exitFrom_alias_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#table_name.
+HiveSqlListener.prototype.enterTable_name = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#table_name.
+HiveSqlListener.prototype.exitTable_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#where_clause.
+HiveSqlListener.prototype.enterWhere_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#where_clause.
+HiveSqlListener.prototype.exitWhere_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#group_by_clause.
+HiveSqlListener.prototype.enterGroup_by_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#group_by_clause.
+HiveSqlListener.prototype.exitGroup_by_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#having_clause.
+HiveSqlListener.prototype.enterHaving_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#having_clause.
+HiveSqlListener.prototype.exitHaving_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#qualify_clause.
+HiveSqlListener.prototype.enterQualify_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#qualify_clause.
+HiveSqlListener.prototype.exitQualify_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#order_by_clause.
+HiveSqlListener.prototype.enterOrder_by_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#order_by_clause.
+HiveSqlListener.prototype.exitOrder_by_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#select_options.
+HiveSqlListener.prototype.enterSelect_options = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#select_options.
+HiveSqlListener.prototype.exitSelect_options = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#select_options_item.
+HiveSqlListener.prototype.enterSelect_options_item = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#select_options_item.
+HiveSqlListener.prototype.exitSelect_options_item = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#update_stmt.
+HiveSqlListener.prototype.enterUpdate_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#update_stmt.
+HiveSqlListener.prototype.exitUpdate_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#update_assignment.
+HiveSqlListener.prototype.enterUpdate_assignment = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#update_assignment.
+HiveSqlListener.prototype.exitUpdate_assignment = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#update_table.
+HiveSqlListener.prototype.enterUpdate_table = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#update_table.
+HiveSqlListener.prototype.exitUpdate_table = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#update_upsert.
+HiveSqlListener.prototype.enterUpdate_upsert = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#update_upsert.
+HiveSqlListener.prototype.exitUpdate_upsert = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#merge_stmt.
+HiveSqlListener.prototype.enterMerge_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#merge_stmt.
+HiveSqlListener.prototype.exitMerge_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#merge_table.
+HiveSqlListener.prototype.enterMerge_table = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#merge_table.
+HiveSqlListener.prototype.exitMerge_table = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#merge_condition.
+HiveSqlListener.prototype.enterMerge_condition = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#merge_condition.
+HiveSqlListener.prototype.exitMerge_condition = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#merge_action.
+HiveSqlListener.prototype.enterMerge_action = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#merge_action.
+HiveSqlListener.prototype.exitMerge_action = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#delete_stmt.
+HiveSqlListener.prototype.enterDelete_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#delete_stmt.
+HiveSqlListener.prototype.exitDelete_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#delete_alias.
+HiveSqlListener.prototype.enterDelete_alias = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#delete_alias.
+HiveSqlListener.prototype.exitDelete_alias = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#describe_stmt.
+HiveSqlListener.prototype.enterDescribe_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#describe_stmt.
+HiveSqlListener.prototype.exitDescribe_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#bool_expr.
+HiveSqlListener.prototype.enterBool_expr = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#bool_expr.
+HiveSqlListener.prototype.exitBool_expr = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#bool_expr_atom.
+HiveSqlListener.prototype.enterBool_expr_atom = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#bool_expr_atom.
+HiveSqlListener.prototype.exitBool_expr_atom = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#bool_expr_unary.
+HiveSqlListener.prototype.enterBool_expr_unary = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#bool_expr_unary.
+HiveSqlListener.prototype.exitBool_expr_unary = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#bool_expr_single_in.
+HiveSqlListener.prototype.enterBool_expr_single_in = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#bool_expr_single_in.
+HiveSqlListener.prototype.exitBool_expr_single_in = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#bool_expr_multi_in.
+HiveSqlListener.prototype.enterBool_expr_multi_in = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#bool_expr_multi_in.
+HiveSqlListener.prototype.exitBool_expr_multi_in = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#bool_expr_binary.
+HiveSqlListener.prototype.enterBool_expr_binary = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#bool_expr_binary.
+HiveSqlListener.prototype.exitBool_expr_binary = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#bool_expr_logical_operator.
+HiveSqlListener.prototype.enterBool_expr_logical_operator = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#bool_expr_logical_operator.
+HiveSqlListener.prototype.exitBool_expr_logical_operator = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#bool_expr_binary_operator.
+HiveSqlListener.prototype.enterBool_expr_binary_operator = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#bool_expr_binary_operator.
+HiveSqlListener.prototype.exitBool_expr_binary_operator = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#expr.
+HiveSqlListener.prototype.enterExpr = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#expr.
+HiveSqlListener.prototype.exitExpr = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#expr_atom.
+HiveSqlListener.prototype.enterExpr_atom = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#expr_atom.
+HiveSqlListener.prototype.exitExpr_atom = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#expr_interval.
+HiveSqlListener.prototype.enterExpr_interval = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#expr_interval.
+HiveSqlListener.prototype.exitExpr_interval = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#interval_item.
+HiveSqlListener.prototype.enterInterval_item = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#interval_item.
+HiveSqlListener.prototype.exitInterval_item = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#expr_concat.
+HiveSqlListener.prototype.enterExpr_concat = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#expr_concat.
+HiveSqlListener.prototype.exitExpr_concat = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#expr_concat_item.
+HiveSqlListener.prototype.enterExpr_concat_item = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#expr_concat_item.
+HiveSqlListener.prototype.exitExpr_concat_item = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#expr_case.
+HiveSqlListener.prototype.enterExpr_case = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#expr_case.
+HiveSqlListener.prototype.exitExpr_case = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#expr_case_simple.
+HiveSqlListener.prototype.enterExpr_case_simple = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#expr_case_simple.
+HiveSqlListener.prototype.exitExpr_case_simple = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#expr_case_searched.
+HiveSqlListener.prototype.enterExpr_case_searched = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#expr_case_searched.
+HiveSqlListener.prototype.exitExpr_case_searched = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#expr_cursor_attribute.
+HiveSqlListener.prototype.enterExpr_cursor_attribute = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#expr_cursor_attribute.
+HiveSqlListener.prototype.exitExpr_cursor_attribute = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#expr_agg_window_func.
+HiveSqlListener.prototype.enterExpr_agg_window_func = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#expr_agg_window_func.
+HiveSqlListener.prototype.exitExpr_agg_window_func = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#expr_func_all_distinct.
+HiveSqlListener.prototype.enterExpr_func_all_distinct = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#expr_func_all_distinct.
+HiveSqlListener.prototype.exitExpr_func_all_distinct = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#expr_func_over_clause.
+HiveSqlListener.prototype.enterExpr_func_over_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#expr_func_over_clause.
+HiveSqlListener.prototype.exitExpr_func_over_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#expr_func_partition_by_clause.
+HiveSqlListener.prototype.enterExpr_func_partition_by_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#expr_func_partition_by_clause.
+HiveSqlListener.prototype.exitExpr_func_partition_by_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#expr_spec_func.
+HiveSqlListener.prototype.enterExpr_spec_func = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#expr_spec_func.
+HiveSqlListener.prototype.exitExpr_spec_func = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#expr_func.
+HiveSqlListener.prototype.enterExpr_func = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#expr_func.
+HiveSqlListener.prototype.exitExpr_func = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#expr_func_params.
+HiveSqlListener.prototype.enterExpr_func_params = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#expr_func_params.
+HiveSqlListener.prototype.exitExpr_func_params = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#func_param.
+HiveSqlListener.prototype.enterFunc_param = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#func_param.
+HiveSqlListener.prototype.exitFunc_param = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#expr_select.
+HiveSqlListener.prototype.enterExpr_select = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#expr_select.
+HiveSqlListener.prototype.exitExpr_select = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#expr_file.
+HiveSqlListener.prototype.enterExpr_file = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#expr_file.
+HiveSqlListener.prototype.exitExpr_file = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#hive.
+HiveSqlListener.prototype.enterHive = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#hive.
+HiveSqlListener.prototype.exitHive = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#hive_item.
+HiveSqlListener.prototype.enterHive_item = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#hive_item.
+HiveSqlListener.prototype.exitHive_item = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#host.
+HiveSqlListener.prototype.enterHost = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#host.
+HiveSqlListener.prototype.exitHost = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#host_cmd.
+HiveSqlListener.prototype.enterHost_cmd = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#host_cmd.
+HiveSqlListener.prototype.exitHost_cmd = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#host_stmt.
+HiveSqlListener.prototype.enterHost_stmt = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#host_stmt.
+HiveSqlListener.prototype.exitHost_stmt = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#file_name.
+HiveSqlListener.prototype.enterFile_name = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#file_name.
+HiveSqlListener.prototype.exitFile_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#date_literal.
+HiveSqlListener.prototype.enterDate_literal = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#date_literal.
+HiveSqlListener.prototype.exitDate_literal = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#timestamp_literal.
+HiveSqlListener.prototype.enterTimestamp_literal = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#timestamp_literal.
+HiveSqlListener.prototype.exitTimestamp_literal = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#ident.
+HiveSqlListener.prototype.enterIdent = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#ident.
+HiveSqlListener.prototype.exitIdent = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#single_quotedString.
+HiveSqlListener.prototype.enterSingle_quotedString = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#single_quotedString.
+HiveSqlListener.prototype.exitSingle_quotedString = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#double_quotedString.
+HiveSqlListener.prototype.enterDouble_quotedString = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#double_quotedString.
+HiveSqlListener.prototype.exitDouble_quotedString = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#int_number.
+HiveSqlListener.prototype.enterInt_number = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#int_number.
+HiveSqlListener.prototype.exitInt_number = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#dec_number.
+HiveSqlListener.prototype.enterDec_number = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#dec_number.
+HiveSqlListener.prototype.exitDec_number = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#bool_literal.
+HiveSqlListener.prototype.enterBool_literal = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#bool_literal.
+HiveSqlListener.prototype.exitBool_literal = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#null_const.
+HiveSqlListener.prototype.enterNull_const = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#null_const.
+HiveSqlListener.prototype.exitNull_const = function(ctx) {
+};
+
+
+// Enter a parse tree produced by HiveSqlParser#non_reserved_words.
+HiveSqlListener.prototype.enterNon_reserved_words = function(ctx) {
+};
+
+// Exit a parse tree produced by HiveSqlParser#non_reserved_words.
+HiveSqlListener.prototype.exitNon_reserved_words = function(ctx) {
+};
+
+
+
+exports.HiveSqlListener = HiveSqlListener;
\ No newline at end of file
diff --git a/src/lib/hive/HiveSqlParser.js b/src/lib/hive/HiveSqlParser.js
new file mode 100644
index 0000000..6be559b
--- /dev/null
+++ b/src/lib/hive/HiveSqlParser.js
@@ -0,0 +1,37756 @@
+// Generated from /Users/ziv/Workspace/dt-sql-parser/src/grammar/hive/HiveSql.g4 by ANTLR 4.8
+// jshint ignore: start
+var antlr4 = require('antlr4/index');
+var HiveSqlListener = require('./HiveSqlListener').HiveSqlListener;
+var HiveSqlVisitor = require('./HiveSqlVisitor').HiveSqlVisitor;
+
+var grammarFileName = "HiveSql.g4";
+
+
+var serializedATN = ["\u0003\u608b\ua72a\u8133\ub9ed\u417c\u3be7\u7786\u5964",
+ "\u0003\u0178\u0d11\u0004\u0002\t\u0002\u0004\u0003\t\u0003\u0004\u0004",
+ "\t\u0004\u0004\u0005\t\u0005\u0004\u0006\t\u0006\u0004\u0007\t\u0007",
+ "\u0004\b\t\b\u0004\t\t\t\u0004\n\t\n\u0004\u000b\t\u000b\u0004\f\t\f",
+ "\u0004\r\t\r\u0004\u000e\t\u000e\u0004\u000f\t\u000f\u0004\u0010\t\u0010",
+ "\u0004\u0011\t\u0011\u0004\u0012\t\u0012\u0004\u0013\t\u0013\u0004\u0014",
+ "\t\u0014\u0004\u0015\t\u0015\u0004\u0016\t\u0016\u0004\u0017\t\u0017",
+ "\u0004\u0018\t\u0018\u0004\u0019\t\u0019\u0004\u001a\t\u001a\u0004\u001b",
+ "\t\u001b\u0004\u001c\t\u001c\u0004\u001d\t\u001d\u0004\u001e\t\u001e",
+ "\u0004\u001f\t\u001f\u0004 \t \u0004!\t!\u0004\"\t\"\u0004#\t#\u0004",
+ "$\t$\u0004%\t%\u0004&\t&\u0004\'\t\'\u0004(\t(\u0004)\t)\u0004*\t*\u0004",
+ "+\t+\u0004,\t,\u0004-\t-\u0004.\t.\u0004/\t/\u00040\t0\u00041\t1\u0004",
+ "2\t2\u00043\t3\u00044\t4\u00045\t5\u00046\t6\u00047\t7\u00048\t8\u0004",
+ "9\t9\u0004:\t:\u0004;\t;\u0004<\t<\u0004=\t=\u0004>\t>\u0004?\t?\u0004",
+ "@\t@\u0004A\tA\u0004B\tB\u0004C\tC\u0004D\tD\u0004E\tE\u0004F\tF\u0004",
+ "G\tG\u0004H\tH\u0004I\tI\u0004J\tJ\u0004K\tK\u0004L\tL\u0004M\tM\u0004",
+ "N\tN\u0004O\tO\u0004P\tP\u0004Q\tQ\u0004R\tR\u0004S\tS\u0004T\tT\u0004",
+ "U\tU\u0004V\tV\u0004W\tW\u0004X\tX\u0004Y\tY\u0004Z\tZ\u0004[\t[\u0004",
+ "\\\t\\\u0004]\t]\u0004^\t^\u0004_\t_\u0004`\t`\u0004a\ta\u0004b\tb\u0004",
+ "c\tc\u0004d\td\u0004e\te\u0004f\tf\u0004g\tg\u0004h\th\u0004i\ti\u0004",
+ "j\tj\u0004k\tk\u0004l\tl\u0004m\tm\u0004n\tn\u0004o\to\u0004p\tp\u0004",
+ "q\tq\u0004r\tr\u0004s\ts\u0004t\tt\u0004u\tu\u0004v\tv\u0004w\tw\u0004",
+ "x\tx\u0004y\ty\u0004z\tz\u0004{\t{\u0004|\t|\u0004}\t}\u0004~\t~\u0004",
+ "\u007f\t\u007f\u0004\u0080\t\u0080\u0004\u0081\t\u0081\u0004\u0082\t",
+ "\u0082\u0004\u0083\t\u0083\u0004\u0084\t\u0084\u0004\u0085\t\u0085\u0004",
+ "\u0086\t\u0086\u0004\u0087\t\u0087\u0004\u0088\t\u0088\u0004\u0089\t",
+ "\u0089\u0004\u008a\t\u008a\u0004\u008b\t\u008b\u0004\u008c\t\u008c\u0004",
+ "\u008d\t\u008d\u0004\u008e\t\u008e\u0004\u008f\t\u008f\u0004\u0090\t",
+ "\u0090\u0004\u0091\t\u0091\u0004\u0092\t\u0092\u0004\u0093\t\u0093\u0004",
+ "\u0094\t\u0094\u0004\u0095\t\u0095\u0004\u0096\t\u0096\u0004\u0097\t",
+ "\u0097\u0004\u0098\t\u0098\u0004\u0099\t\u0099\u0004\u009a\t\u009a\u0004",
+ "\u009b\t\u009b\u0004\u009c\t\u009c\u0004\u009d\t\u009d\u0004\u009e\t",
+ "\u009e\u0004\u009f\t\u009f\u0004\u00a0\t\u00a0\u0004\u00a1\t\u00a1\u0004",
+ "\u00a2\t\u00a2\u0004\u00a3\t\u00a3\u0004\u00a4\t\u00a4\u0004\u00a5\t",
+ "\u00a5\u0004\u00a6\t\u00a6\u0004\u00a7\t\u00a7\u0004\u00a8\t\u00a8\u0004",
+ "\u00a9\t\u00a9\u0004\u00aa\t\u00aa\u0004\u00ab\t\u00ab\u0004\u00ac\t",
+ "\u00ac\u0004\u00ad\t\u00ad\u0004\u00ae\t\u00ae\u0004\u00af\t\u00af\u0004",
+ "\u00b0\t\u00b0\u0004\u00b1\t\u00b1\u0004\u00b2\t\u00b2\u0004\u00b3\t",
+ "\u00b3\u0004\u00b4\t\u00b4\u0004\u00b5\t\u00b5\u0004\u00b6\t\u00b6\u0004",
+ "\u00b7\t\u00b7\u0004\u00b8\t\u00b8\u0004\u00b9\t\u00b9\u0004\u00ba\t",
+ "\u00ba\u0004\u00bb\t\u00bb\u0004\u00bc\t\u00bc\u0004\u00bd\t\u00bd\u0004",
+ "\u00be\t\u00be\u0004\u00bf\t\u00bf\u0004\u00c0\t\u00c0\u0004\u00c1\t",
+ "\u00c1\u0004\u00c2\t\u00c2\u0004\u00c3\t\u00c3\u0004\u00c4\t\u00c4\u0004",
+ "\u00c5\t\u00c5\u0004\u00c6\t\u00c6\u0004\u00c7\t\u00c7\u0004\u00c8\t",
+ "\u00c8\u0004\u00c9\t\u00c9\u0004\u00ca\t\u00ca\u0004\u00cb\t\u00cb\u0004",
+ "\u00cc\t\u00cc\u0004\u00cd\t\u00cd\u0004\u00ce\t\u00ce\u0004\u00cf\t",
+ "\u00cf\u0004\u00d0\t\u00d0\u0004\u00d1\t\u00d1\u0004\u00d2\t\u00d2\u0004",
+ "\u00d3\t\u00d3\u0004\u00d4\t\u00d4\u0004\u00d5\t\u00d5\u0004\u00d6\t",
+ "\u00d6\u0004\u00d7\t\u00d7\u0004\u00d8\t\u00d8\u0004\u00d9\t\u00d9\u0004",
+ "\u00da\t\u00da\u0004\u00db\t\u00db\u0004\u00dc\t\u00dc\u0004\u00dd\t",
+ "\u00dd\u0004\u00de\t\u00de\u0004\u00df\t\u00df\u0004\u00e0\t\u00e0\u0004",
+ "\u00e1\t\u00e1\u0004\u00e2\t\u00e2\u0004\u00e3\t\u00e3\u0003\u0002\u0003",
+ "\u0002\u0003\u0002\u0003\u0003\u0003\u0003\u0005\u0003\u01cc\n\u0003",
+ "\u0003\u0003\u0005\u0003\u01cf\n\u0003\u0006\u0003\u01d1\n\u0003\r\u0003",
+ "\u000e\u0003\u01d2\u0003\u0004\u0005\u0004\u01d6\n\u0004\u0003\u0004",
+ "\u0003\u0004\u0003\u0004\u0005\u0004\u01db\n\u0004\u0003\u0004\u0003",
+ "\u0004\u0003\u0005\u0003\u0005\u0003\u0005\u0005\u0005\u01e2\n\u0005",
+ "\u0003\u0005\u0003\u0005\u0003\u0005\u0003\u0005\u0005\u0005\u01e8\n",
+ "\u0005\u0005\u0005\u01ea\n\u0005\u0003\u0006\u0003\u0006\u0003\u0006",
+ "\u0003\u0007\u0003\u0007\u0006\u0007\u01f1\n\u0007\r\u0007\u000e\u0007",
+ "\u01f2\u0003\u0007\u0005\u0007\u01f6\n\u0007\u0005\u0007\u01f8\n\u0007",
+ "\u0003\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003",
+ "\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003",
+ "\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003",
+ "\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003",
+ "\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003",
+ "\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003",
+ "\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003\b\u0003\b\u0005\b\u0237",
+ "\n\b\u0003\t\u0003\t\u0003\n\u0003\n\u0006\n\u023d\n\n\r\n\u000e\n\u023e",
+ "\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b",
+ "\u0003\f\u0003\f\u0003\r\u0003\r\u0003\r\u0003\u000e\u0003\u000e\u0003",
+ "\u000e\u0005\u000e\u024f\n\u000e\u0003\u000e\u0003\u000e\u0003\u000e",
+ "\u0007\u000e\u0254\n\u000e\f\u000e\u000e\u000e\u0257\u000b\u000e\u0005",
+ "\u000e\u0259\n\u000e\u0003\u000f\u0003\u000f\u0003\u000f\u0005\u000f",
+ "\u025e\n\u000f\u0003\u0010\u0003\u0010\u0005\u0010\u0262\n\u0010\u0003",
+ "\u0010\u0003\u0010\u0003\u0010\u0003\u0010\u0003\u0010\u0003\u0010\u0003",
+ "\u0010\u0005\u0010\u026b\n\u0010\u0003\u0010\u0003\u0010\u0003\u0010",
+ "\u0005\u0010\u0270\n\u0010\u0003\u0011\u0003\u0011\u0003\u0011\u0003",
+ "\u0011\u0007\u0011\u0276\n\u0011\f\u0011\u000e\u0011\u0279\u000b\u0011",
+ "\u0003\u0011\u0003\u0011\u0005\u0011\u027d\n\u0011\u0003\u0011\u0003",
+ "\u0011\u0003\u0011\u0003\u0011\u0003\u0011\u0007\u0011\u0284\n\u0011",
+ "\f\u0011\u000e\u0011\u0287\u000b\u0011\u0003\u0011\u0003\u0011\u0003",
+ "\u0012\u0003\u0012\u0003\u0012\u0003\u0012\u0003\u0012\u0007\u0012\u0290",
+ "\n\u0012\f\u0012\u000e\u0012\u0293\u000b\u0012\u0003\u0012\u0003\u0012",
+ "\u0005\u0012\u0297\n\u0012\u0003\u0012\u0005\u0012\u029a\n\u0012\u0003",
+ "\u0012\u0003\u0012\u0003\u0012\u0003\u0012\u0003\u0012\u0003\u0013\u0003",
+ "\u0013\u0003\u0013\u0003\u0013\u0003\u0013\u0003\u0013\u0003\u0013\u0005",
+ "\u0013\u02a8\n\u0013\u0003\u0013\u0003\u0013\u0003\u0014\u0003\u0014",
+ "\u0003\u0014\u0005\u0014\u02af\n\u0014\u0003\u0014\u0003\u0014\u0003",
+ "\u0014\u0003\u0014\u0003\u0014\u0007\u0014\u02b6\n\u0014\f\u0014\u000e",
+ "\u0014\u02b9\u000b\u0014\u0003\u0014\u0003\u0014\u0003\u0014\u0003\u0014",
+ "\u0003\u0014\u0003\u0015\u0003\u0015\u0003\u0015\u0003\u0016\u0003\u0016",
+ "\u0003\u0017\u0003\u0017\u0003\u0017\u0003\u0017\u0005\u0017\u02c9\n",
+ "\u0017\u0003\u0017\u0003\u0017\u0005\u0017\u02cd\n\u0017\u0003\u0018",
+ "\u0003\u0018\u0003\u0018\u0003\u0018\u0007\u0018\u02d3\n\u0018\f\u0018",
+ "\u000e\u0018\u02d6\u000b\u0018\u0003\u0019\u0003\u0019\u0003\u0019\u0003",
+ "\u0019\u0003\u0019\u0003\u0019\u0007\u0019\u02de\n\u0019\f\u0019\u000e",
+ "\u0019\u02e1\u000b\u0019\u0003\u001a\u0003\u001a\u0003\u001a\u0003\u001a",
+ "\u0003\u001a\u0007\u001a\u02e8\n\u001a\f\u001a\u000e\u001a\u02eb\u000b",
+ "\u001a\u0003\u001b\u0003\u001b\u0003\u001b\u0003\u001b\u0003\u001b\u0005",
+ "\u001b\u02f2\n\u001b\u0003\u001c\u0003\u001c\u0003\u001c\u0007\u001c",
+ "\u02f7\n\u001c\f\u001c\u000e\u001c\u02fa\u000b\u001c\u0003\u001c\u0005",
+ "\u001c\u02fd\n\u001c\u0003\u001c\u0003\u001c\u0005\u001c\u0301\n\u001c",
+ "\u0003\u001c\u0007\u001c\u0304\n\u001c\f\u001c\u000e\u001c\u0307\u000b",
+ "\u001c\u0003\u001c\u0005\u001c\u030a\n\u001c\u0003\u001c\u0003\u001c",
+ "\u0003\u001c\u0005\u001c\u030f\n\u001c\u0003\u001c\u0003\u001c\u0005",
+ "\u001c\u0313\n\u001c\u0003\u001c\u0003\u001c\u0005\u001c\u0317\n\u001c",
+ "\u0003\u001d\u0003\u001d\u0003\u001d\u0003\u001e\u0003\u001e\u0003\u001e",
+ "\u0003\u001e\u0003\u001e\u0005\u001e\u0321\n\u001e\u0003\u001e\u0003",
+ "\u001e\u0005\u001e\u0325\n\u001e\u0003\u001e\u0003\u001e\u0003\u001e",
+ "\u0005\u001e\u032a\n\u001e\u0003\u001f\u0003\u001f\u0003\u001f\u0005",
+ "\u001f\u032f\n\u001f\u0003\u001f\u0003\u001f\u0005\u001f\u0333\n\u001f",
+ "\u0003 \u0003 \u0003 \u0003!\u0003!\u0003!\u0003!\u0003!\u0003!\u0003",
+ "!\u0003!\u0005!\u0340\n!\u0003!\u0003!\u0003\"\u0005\"\u0345\n\"\u0003",
+ "\"\u0003\"\u0003\"\u0003\"\u0005\"\u034b\n\"\u0003\"\u0003\"\u0003#",
+ "\u0003#\u0003#\u0003#\u0003#\u0005#\u0354\n#\u0003#\u0003#\u0005#\u0358",
+ "\n#\u0003#\u0003#\u0003$\u0003$\u0003$\u0003$\u0005$\u0360\n$\u0003",
+ "$\u0005$\u0363\n$\u0003$\u0003$\u0003$\u0005$\u0368\n$\u0003$\u0003",
+ "$\u0003%\u0005%\u036d\n%\u0003%\u0003%\u0003%\u0003%\u0003%\u0005%\u0374",
+ "\n%\u0003%\u0003%\u0003%\u0003%\u0003%\u0003%\u0003%\u0005%\u037d\n",
+ "%\u0003%\u0005%\u0380\n%\u0003&\u0003&\u0003&\u0007&\u0385\n&\f&\u000e",
+ "&\u0388\u000b&\u0003\'\u0003\'\u0003\'\u0005\'\u038d\n\'\u0003\'\u0007",
+ "\'\u0390\n\'\f\'\u000e\'\u0393\u000b\'\u0003\'\u0007\'\u0396\n\'\f\'",
+ "\u000e\'\u0399\u000b\'\u0003\'\u0003\'\u0005\'\u039d\n\'\u0003\'\u0005",
+ "\'\u03a0\n\'\u0003(\u0003(\u0003)\u0003)\u0005)\u03a6\n)\u0003)\u0003",
+ ")\u0003)\u0003)\u0003)\u0003)\u0003)\u0003)\u0003)\u0003)\u0007)\u03b2",
+ "\n)\f)\u000e)\u03b5\u000b)\u0003)\u0003)\u0003)\u0003)\u0003)\u0007",
+ ")\u03bc\n)\f)\u000e)\u03bf\u000b)\u0003)\u0003)\u0003)\u0005)\u03c4",
+ "\n)\u0003*\u0003*\u0003*\u0005*\u03c9\n*\u0003*\u0003*\u0003*\u0005",
+ "*\u03ce\n*\u0003*\u0003*\u0003*\u0005*\u03d3\n*\u0007*\u03d5\n*\f*\u000e",
+ "*\u03d8\u000b*\u0003*\u0003*\u0005*\u03dc\n*\u0003*\u0005*\u03df\n*",
+ "\u0003*\u0003*\u0003*\u0003*\u0003*\u0003*\u0007*\u03e7\n*\f*\u000e",
+ "*\u03ea\u000b*\u0003*\u0003*\u0003*\u0003*\u0003*\u0003*\u0003*\u0007",
+ "*\u03f3\n*\f*\u000e*\u03f6\u000b*\u0003*\u0003*\u0007*\u03fa\n*\f*\u000e",
+ "*\u03fd\u000b*\u0005*\u03ff\n*\u0003+\u0003+\u0003+\u0003+\u0003+\u0003",
+ "+\u0003+\u0003+\u0003+\u0003+\u0005+\u040b\n+\u0003,\u0006,\u040e\n",
+ ",\r,\u000e,\u040f\u0003-\u0003-\u0003-\u0005-\u0415\n-\u0003.\u0005",
+ ".\u0418\n.\u0003.\u0003.\u0003/\u0006/\u041d\n/\r/\u000e/\u041e\u0003",
+ "0\u00030\u00030\u00030\u00030\u00030\u00030\u00030\u00030\u00030\u0005",
+ "0\u042b\n0\u00031\u00031\u00031\u00031\u00031\u00031\u00031\u00031\u0003",
+ "1\u00031\u00031\u00061\u0438\n1\r1\u000e1\u0439\u00031\u00031\u0003",
+ "1\u00051\u043f\n1\u00032\u00052\u0442\n2\u00032\u00032\u00032\u0003",
+ "2\u00032\u00032\u00032\u00032\u00032\u00032\u00032\u00072\u044f\n2\f",
+ "2\u000e2\u0452\u000b2\u00032\u00032\u00032\u00052\u0457\n2\u00032\u0003",
+ "2\u00032\u00032\u00032\u00032\u00032\u00032\u00032\u00052\u0462\n2\u0003",
+ "3\u00053\u0465\n3\u00033\u00033\u00033\u00033\u00033\u00033\u00073\u046d",
+ "\n3\f3\u000e3\u0470\u000b3\u00033\u00033\u00033\u00033\u00053\u0476",
+ "\n3\u00034\u00034\u00034\u00034\u00054\u047c\n4\u00035\u00035\u0003",
+ "5\u00035\u00075\u0482\n5\f5\u000e5\u0485\u000b5\u00036\u00036\u0003",
+ "6\u00036\u00036\u00036\u00036\u00056\u048e\n6\u00036\u00036\u00036\u0003",
+ "6\u00036\u00036\u00036\u00036\u00036\u00036\u00036\u00036\u00036\u0003",
+ "6\u00036\u00036\u00036\u00036\u00056\u04a2\n6\u00037\u00037\u00037\u0003",
+ "7\u00057\u04a8\n7\u00038\u00038\u00058\u04ac\n8\u00038\u00038\u0003",
+ "8\u00058\u04b1\n8\u00038\u00038\u00058\u04b5\n8\u00038\u00038\u0003",
+ "8\u00058\u04ba\n8\u00038\u00058\u04bd\n8\u00038\u00038\u00038\u0005",
+ "8\u04c2\n8\u00038\u00058\u04c5\n8\u00039\u00039\u00039\u00039\u0003",
+ "9\u0003:\u0003:\u0003;\u0003;\u0003;\u0005;\u04d1\n;\u0003;\u0003;\u0003",
+ "<\u0003<\u0003<\u0005<\u04d8\n<\u0003<\u0003<\u0003<\u0005<\u04dd\n",
+ "<\u0003<\u0003<\u0003<\u0005<\u04e2\n<\u0007<\u04e4\n<\f<\u000e<\u04e7",
+ "\u000b<\u0003<\u0003<\u0005<\u04eb\n<\u0003<\u0005<\u04ee\n<\u0003<",
+ "\u0003<\u0003<\u0003<\u0003<\u0003<\u0007<\u04f6\n<\f<\u000e<\u04f9",
+ "\u000b<\u0003<\u0003<\u0003<\u0003<\u0003<\u0003<\u0003<\u0007<\u0502",
+ "\n<\f<\u000e<\u0505\u000b<\u0003<\u0003<\u0007<\u0509\n<\f<\u000e<\u050c",
+ "\u000b<\u0003<\u0003<\u0003<\u0003<\u0003<\u0005<\u0513\n<\u0003=\u0003",
+ "=\u0003=\u0003=\u0003=\u0003=\u0003=\u0003=\u0003=\u0003=\u0003=\u0003",
+ "=\u0003=\u0005=\u0522\n=\u0003=\u0003=\u0003=\u0003=\u0003=\u0003=\u0003",
+ "=\u0003=\u0003=\u0003=\u0003=\u0003=\u0003=\u0003=\u0003=\u0003=\u0003",
+ "=\u0003=\u0003=\u0003=\u0003=\u0003=\u0003=\u0003=\u0003=\u0003=\u0003",
+ "=\u0003=\u0003=\u0005=\u0541\n=\u0005=\u0543\n=\u0003>\u0003>\u0003",
+ ">\u0005>\u0548\n>\u0003>\u0003>\u0005>\u054c\n>\u0003>\u0003>\u0003",
+ "?\u0005?\u0551\n?\u0003?\u0003?\u0003?\u0003?\u0003?\u0005?\u0558\n",
+ "?\u0003?\u0005?\u055b\n?\u0003@\u0005@\u055e\n@\u0003@\u0003@\u0003",
+ "@\u0005@\u0563\n@\u0003@\u0003@\u0005@\u0567\n@\u0005@\u0569\n@\u0003",
+ "A\u0003A\u0003A\u0003A\u0003A\u0005A\u0570\nA\u0003A\u0003A\u0007A\u0574",
+ "\nA\fA\u000eA\u0577\u000bA\u0003B\u0003B\u0003B\u0003B\u0005B\u057d",
+ "\nB\u0003C\u0003C\u0003C\u0003C\u0005C\u0583\nC\u0003C\u0005C\u0586",
+ "\nC\u0003C\u0003C\u0003C\u0005C\u058b\nC\u0003C\u0003C\u0005C\u058f",
+ "\nC\u0003C\u0005C\u0592\nC\u0003C\u0003C\u0003D\u0003D\u0003D\u0005",
+ "D\u0599\nD\u0003E\u0003E\u0003E\u0003E\u0005E\u059f\nE\u0003E\u0005",
+ "E\u05a2\nE\u0003E\u0003E\u0003E\u0003E\u0003E\u0003E\u0003E\u0003E\u0005",
+ "E\u05ac\nE\u0003F\u0003F\u0003F\u0003F\u0003F\u0007F\u05b3\nF\fF\u000e",
+ "F\u05b6\u000bF\u0003G\u0003G\u0003G\u0003G\u0005G\u05bc\nG\u0003G\u0003",
+ "G\u0003G\u0003G\u0003G\u0005G\u05c3\nG\u0005G\u05c5\nG\u0003H\u0003",
+ "H\u0003H\u0003H\u0005H\u05cb\nH\u0003H\u0005H\u05ce\nH\u0003H\u0003",
+ "H\u0003H\u0003H\u0003H\u0003H\u0003H\u0003H\u0003H\u0005H\u05d9\nH\u0003",
+ "I\u0003I\u0003I\u0003I\u0003I\u0007I\u05e0\nI\fI\u000eI\u05e3\u000b",
+ "I\u0003J\u0003J\u0003J\u0005J\u05e8\nJ\u0003K\u0003K\u0003K\u0003K\u0005",
+ "K\u05ee\nK\u0003K\u0005K\u05f1\nK\u0003K\u0003K\u0003K\u0005K\u05f6",
+ "\nK\u0003K\u0005K\u05f9\nK\u0003K\u0005K\u05fc\nK\u0003K\u0005K\u05ff",
+ "\nK\u0003K\u0005K\u0602\nK\u0003K\u0003K\u0003K\u0003K\u0005K\u0608",
+ "\nK\u0003L\u0003L\u0003L\u0003L\u0003L\u0003L\u0007L\u0610\nL\fL\u000e",
+ "L\u0613\u000bL\u0003L\u0003L\u0003L\u0003L\u0003L\u0003L\u0007L\u061b",
+ "\nL\fL\u000eL\u061e\u000bL\u0005L\u0620\nL\u0003M\u0003M\u0003M\u0003",
+ "M\u0003M\u0005M\u0627\nM\u0003M\u0003M\u0003M\u0005M\u062c\nM\u0003",
+ "M\u0007M\u062f\nM\fM\u000eM\u0632\u000bM\u0003M\u0005M\u0635\nM\u0003",
+ "M\u0003M\u0003M\u0003M\u0003M\u0003M\u0005M\u063d\nM\u0003M\u0003M\u0005",
+ "M\u0641\nM\u0003M\u0007M\u0644\nM\fM\u000eM\u0647\u000bM\u0003M\u0005",
+ "M\u064a\nM\u0005M\u064c\nM\u0003N\u0006N\u064f\nN\rN\u000eN\u0650\u0003",
+ "O\u0003O\u0003O\u0003O\u0003O\u0003O\u0005O\u0659\nO\u0003O\u0003O\u0003",
+ "O\u0005O\u065e\nO\u0003P\u0003P\u0003P\u0003P\u0005P\u0664\nP\u0003",
+ "P\u0003P\u0003P\u0003P\u0003P\u0005P\u066b\nP\u0003P\u0005P\u066e\n",
+ "P\u0003Q\u0003Q\u0003Q\u0003R\u0003R\u0005R\u0675\nR\u0003R\u0003R\u0003",
+ "R\u0003R\u0003R\u0003R\u0005R\u067d\nR\u0003R\u0003R\u0003R\u0003R\u0007",
+ "R\u0683\nR\fR\u000eR\u0686\u000bR\u0005R\u0688\nR\u0003R\u0005R\u068b",
+ "\nR\u0003S\u0003S\u0003S\u0005S\u0690\nS\u0003T\u0003T\u0003T\u0003",
+ "T\u0003T\u0007T\u0697\nT\fT\u000eT\u069a\u000bT\u0003T\u0005T\u069d",
+ "\nT\u0003T\u0003T\u0003T\u0003U\u0003U\u0003U\u0003U\u0003U\u0005U\u06a7",
+ "\nU\u0003V\u0003V\u0003V\u0003V\u0003V\u0003V\u0003W\u0003W\u0003W\u0003",
+ "W\u0003W\u0003X\u0003X\u0003X\u0003Y\u0003Y\u0003Y\u0005Y\u06ba\nY\u0003",
+ "Z\u0003Z\u0003Z\u0003Z\u0003Z\u0005Z\u06c1\nZ\u0005Z\u06c3\nZ\u0003",
+ "Z\u0003Z\u0005Z\u06c7\nZ\u0003Z\u0003Z\u0005Z\u06cb\nZ\u0003[\u0003",
+ "[\u0003[\u0003[\u0007[\u06d1\n[\f[\u000e[\u06d4\u000b[\u0003[\u0003",
+ "[\u0003\\\u0003\\\u0003\\\u0003\\\u0007\\\u06dc\n\\\f\\\u000e\\\u06df",
+ "\u000b\\\u0003]\u0003]\u0003]\u0003]\u0007]\u06e5\n]\f]\u000e]\u06e8",
+ "\u000b]\u0003]\u0003]\u0003^\u0003^\u0003^\u0005^\u06ef\n^\u0003^\u0003",
+ "^\u0003^\u0003^\u0003_\u0003_\u0005_\u06f7\n_\u0003_\u0003_\u0005_\u06fb",
+ "\n_\u0003`\u0003`\u0003`\u0003`\u0003a\u0003a\u0005a\u0703\na\u0003",
+ "b\u0003b\u0003b\u0003b\u0003b\u0003b\u0003c\u0003c\u0003c\u0003c\u0003",
+ "d\u0003d\u0003d\u0003d\u0007d\u0713\nd\fd\u000ed\u0716\u000bd\u0003",
+ "d\u0003d\u0003d\u0003d\u0003e\u0003e\u0003e\u0003e\u0003e\u0003f\u0003",
+ "f\u0005f\u0723\nf\u0003g\u0003g\u0003g\u0003g\u0003g\u0005g\u072a\n",
+ "g\u0003g\u0003g\u0005g\u072e\ng\u0003h\u0003h\u0003h\u0003h\u0003h\u0005",
+ "h\u0735\nh\u0005h\u0737\nh\u0003i\u0003i\u0005i\u073b\ni\u0003i\u0003",
+ "i\u0003i\u0003i\u0003i\u0007i\u0742\ni\fi\u000ei\u0745\u000bi\u0003",
+ "j\u0003j\u0003j\u0003j\u0003j\u0005j\u074c\nj\u0003k\u0003k\u0003k\u0003",
+ "k\u0003k\u0007k\u0753\nk\fk\u000ek\u0756\u000bk\u0003k\u0003k\u0003",
+ "l\u0003l\u0003l\u0003m\u0003m\u0003m\u0003m\u0003m\u0003m\u0003n\u0003",
+ "n\u0005n\u0765\nn\u0003n\u0003n\u0003n\u0003n\u0005n\u076b\nn\u0003",
+ "n\u0003n\u0005n\u076f\nn\u0003o\u0003o\u0003o\u0003o\u0003o\u0003o\u0007",
+ "o\u0777\no\fo\u000eo\u077a\u000bo\u0003o\u0003o\u0003o\u0007o\u077f",
+ "\no\fo\u000eo\u0782\u000bo\u0003p\u0003p\u0003p\u0003p\u0003p\u0003",
+ "p\u0005p\u078a\np\u0003p\u0003p\u0005p\u078e\np\u0003p\u0003p\u0007",
+ "p\u0792\np\fp\u000ep\u0795\u000bp\u0003q\u0003q\u0005q\u0799\nq\u0003",
+ "r\u0003r\u0005r\u079d\nr\u0003s\u0003s\u0003s\u0003s\u0003s\u0003s\u0003",
+ "s\u0003s\u0005s\u07a7\ns\u0003t\u0003t\u0003u\u0003u\u0005u\u07ad\n",
+ "u\u0003v\u0003v\u0005v\u07b1\nv\u0003v\u0003v\u0003v\u0003v\u0003v\u0003",
+ "v\u0003v\u0003v\u0007v\u07bb\nv\fv\u000ev\u07be\u000bv\u0003v\u0003",
+ "v\u0003w\u0003w\u0005w\u07c4\nw\u0003x\u0003x\u0003y\u0003y\u0003y\u0003",
+ "y\u0003y\u0003y\u0003y\u0003y\u0003y\u0003y\u0007y\u07d2\ny\fy\u000e",
+ "y\u07d5\u000by\u0003y\u0003y\u0007y\u07d9\ny\fy\u000ey\u07dc\u000by",
+ "\u0003z\u0003z\u0003z\u0003z\u0003z\u0003z\u0003z\u0005z\u07e5\nz\u0003",
+ "{\u0005{\u07e8\n{\u0003{\u0003{\u0005{\u07ec\n{\u0003|\u0003|\u0003",
+ "}\u0003}\u0003}\u0005}\u07f3\n}\u0003}\u0003}\u0003}\u0003}\u0003}\u0005",
+ "}\u07fa\n}\u0005}\u07fc\n}\u0003~\u0003~\u0005~\u0800\n~\u0003\u007f",
+ "\u0003\u007f\u0005\u007f\u0804\n\u007f\u0003\u0080\u0003\u0080\u0003",
+ "\u0080\u0005\u0080\u0809\n\u0080\u0003\u0081\u0005\u0081\u080c\n\u0081",
+ "\u0003\u0081\u0003\u0081\u0005\u0081\u0810\n\u0081\u0003\u0081\u0005",
+ "\u0081\u0813\n\u0081\u0003\u0081\u0003\u0081\u0003\u0082\u0003\u0082",
+ "\u0003\u0082\u0003\u0083\u0003\u0083\u0003\u0083\u0003\u0083\u0005\u0083",
+ "\u081e\n\u0083\u0003\u0083\u0005\u0083\u0821\n\u0083\u0003\u0083\u0003",
+ "\u0083\u0003\u0083\u0003\u0084\u0003\u0084\u0003\u0084\u0003\u0085\u0003",
+ "\u0085\u0003\u0085\u0005\u0085\u082c\n\u0085\u0003\u0085\u0003\u0085",
+ "\u0003\u0085\u0003\u0085\u0005\u0085\u0832\n\u0085\u0003\u0085\u0003",
+ "\u0085\u0005\u0085\u0836\n\u0085\u0005\u0085\u0838\n\u0085\u0003\u0086",
+ "\u0003\u0086\u0005\u0086\u083c\n\u0086\u0003\u0086\u0003\u0086\u0003",
+ "\u0087\u0003\u0087\u0003\u0087\u0003\u0088\u0003\u0088\u0005\u0088\u0845",
+ "\n\u0088\u0003\u0088\u0003\u0088\u0003\u0088\u0007\u0088\u084a\n\u0088",
+ "\f\u0088\u000e\u0088\u084d\u000b\u0088\u0003\u0088\u0005\u0088\u0850",
+ "\n\u0088\u0003\u0088\u0003\u0088\u0005\u0088\u0854\n\u0088\u0003\u0088",
+ "\u0003\u0088\u0003\u0088\u0007\u0088\u0859\n\u0088\f\u0088\u000e\u0088",
+ "\u085c\u000b\u0088\u0003\u0088\u0005\u0088\u085f\n\u0088\u0003\u0089",
+ "\u0003\u0089\u0003\u0089\u0003\u0089\u0003\u0089\u0003\u0089\u0005\u0089",
+ "\u0867\n\u0089\u0003\u008a\u0003\u008a\u0003\u008a\u0003\u008a\u0005",
+ "\u008a\u086d\n\u008a\u0003\u008a\u0003\u008a\u0005\u008a\u0871\n\u008a",
+ "\u0003\u008a\u0003\u008a\u0003\u008a\u0003\u008a\u0003\u008a\u0003\u008b",
+ "\u0003\u008b\u0003\u008b\u0003\u008b\u0005\u008b\u087c\n\u008b\u0003",
+ "\u008b\u0003\u008b\u0003\u008b\u0003\u008b\u0003\u008b\u0005\u008b\u0883",
+ "\n\u008b\u0003\u008b\u0003\u008b\u0003\u008b\u0003\u008b\u0003\u008b",
+ "\u0003\u008c\u0003\u008c\u0003\u008c\u0003\u008c\u0003\u008c\u0003\u008c",
+ "\u0005\u008c\u0890\n\u008c\u0003\u008d\u0003\u008d\u0003\u008d\u0003",
+ "\u008d\u0007\u008d\u0896\n\u008d\f\u008d\u000e\u008d\u0899\u000b\u008d",
+ "\u0003\u008e\u0005\u008e\u089c\n\u008e\u0003\u008e\u0003\u008e\u0003",
+ "\u008f\u0003\u008f\u0003\u008f\u0003\u008f\u0007\u008f\u08a4\n\u008f",
+ "\f\u008f\u000e\u008f\u08a7\u000b\u008f\u0003\u0090\u0003\u0090\u0005",
+ "\u0090\u08ab\n\u0090\u0003\u0090\u0003\u0090\u0003\u0090\u0003\u0090",
+ "\u0003\u0090\u0003\u0091\u0003\u0091\u0003\u0091\u0003\u0091\u0007\u0091",
+ "\u08b6\n\u0091\f\u0091\u000e\u0091\u08b9\u000b\u0091\u0003\u0091\u0003",
+ "\u0091\u0003\u0092\u0003\u0092\u0003\u0092\u0003\u0092\u0007\u0092\u08c1",
+ "\n\u0092\f\u0092\u000e\u0092\u08c4\u000b\u0092\u0003\u0093\u0003\u0093",
+ "\u0003\u0093\u0003\u0093\u0003\u0093\u0005\u0093\u08cb\n\u0093\u0003",
+ "\u0094\u0003\u0094\u0005\u0094\u08cf\n\u0094\u0003\u0094\u0003\u0094",
+ "\u0005\u0094\u08d3\n\u0094\u0003\u0094\u0003\u0094\u0005\u0094\u08d7",
+ "\n\u0094\u0005\u0094\u08d9\n\u0094\u0003\u0095\u0003\u0095\u0003\u0095",
+ "\u0005\u0095\u08de\n\u0095\u0003\u0095\u0005\u0095\u08e1\n\u0095\u0003",
+ "\u0095\u0005\u0095\u08e4\n\u0095\u0003\u0095\u0005\u0095\u08e7\n\u0095",
+ "\u0003\u0095\u0003\u0095\u0005\u0095\u08eb\n\u0095\u0003\u0095\u0005",
+ "\u0095\u08ee\n\u0095\u0003\u0095\u0005\u0095\u08f1\n\u0095\u0003\u0096",
+ "\u0005\u0096\u08f4\n\u0096\u0003\u0096\u0005\u0096\u08f7\n\u0096\u0003",
+ "\u0096\u0003\u0096\u0003\u0096\u0007\u0096\u08fc\n\u0096\f\u0096\u000e",
+ "\u0096\u08ff\u000b\u0096\u0003\u0097\u0003\u0097\u0003\u0098\u0003\u0098",
+ "\u0003\u0098\u0003\u0099\u0003\u0099\u0003\u0099\u0005\u0099\u0909\n",
+ "\u0099\u0003\u0099\u0003\u0099\u0005\u0099\u090d\n\u0099\u0003\u0099",
+ "\u0005\u0099\u0910\n\u0099\u0003\u009a\u0003\u009a\u0005\u009a\u0914",
+ "\n\u009a\u0003\u009a\u0003\u009a\u0003\u009a\u0003\u009a\u0003\u009a",
+ "\u0005\u009a\u091b\n\u009a\u0003\u009b\u0003\u009b\u0005\u009b\u091f",
+ "\n\u009b\u0003\u009b\u0003\u009b\u0003\u009c\u0003\u009c\u0003\u009c",
+ "\u0003\u009c\u0007\u009c\u0927\n\u009c\f\u009c\u000e\u009c\u092a\u000b",
+ "\u009c\u0003\u009d\u0003\u009d\u0003\u009d\u0007\u009d\u092f\n\u009d",
+ "\f\u009d\u000e\u009d\u0932\u000b\u009d\u0003\u009e\u0003\u009e\u0003",
+ "\u009e\u0005\u009e\u0937\n\u009e\u0003\u009f\u0003\u009f\u0005\u009f",
+ "\u093b\n\u009f\u0003\u00a0\u0003\u00a0\u0003\u00a0\u0003\u00a0\u0005",
+ "\u00a0\u0941\n\u00a0\u0003\u00a1\u0003\u00a1\u0003\u00a1\u0003\u00a1",
+ "\u0003\u00a1\u0003\u00a1\u0003\u00a1\u0005\u00a1\u094a\n\u00a1\u0003",
+ "\u00a2\u0005\u00a2\u094d\n\u00a2\u0003\u00a2\u0003\u00a2\u0003\u00a2",
+ "\u0005\u00a2\u0952\n\u00a2\u0003\u00a2\u0005\u00a2\u0955\n\u00a2\u0003",
+ "\u00a3\u0003\u00a3\u0003\u00a3\u0003\u00a3\u0003\u00a3\u0003\u00a3\u0007",
+ "\u00a3\u095d\n\u00a3\f\u00a3\u000e\u00a3\u0960\u000b\u00a3\u0003\u00a3",
+ "\u0003\u00a3\u0005\u00a3\u0964\n\u00a3\u0003\u00a4\u0003\u00a4\u0003",
+ "\u00a4\u0003\u00a4\u0003\u00a4\u0007\u00a4\u096b\n\u00a4\f\u00a4\u000e",
+ "\u00a4\u096e\u000b\u00a4\u0003\u00a4\u0003\u00a4\u0005\u00a4\u0972\n",
+ "\u00a4\u0003\u00a5\u0003\u00a5\u0005\u00a5\u0976\n\u00a5\u0003\u00a5",
+ "\u0003\u00a5\u0003\u00a5\u0003\u00a5\u0003\u00a5\u0007\u00a5\u097d\n",
+ "\u00a5\f\u00a5\u000e\u00a5\u0980\u000b\u00a5\u0003\u00a5\u0005\u00a5",
+ "\u0983\n\u00a5\u0003\u00a6\u0003\u00a6\u0003\u00a7\u0003\u00a7\u0003",
+ "\u00a7\u0003\u00a8\u0003\u00a8\u0003\u00a8\u0003\u00a8\u0003\u00a8\u0007",
+ "\u00a8\u098f\n\u00a8\f\u00a8\u000e\u00a8\u0992\u000b\u00a8\u0003\u00a9",
+ "\u0003\u00a9\u0003\u00a9\u0003\u00aa\u0003\u00aa\u0003\u00aa\u0003\u00ab",
+ "\u0003\u00ab\u0003\u00ab\u0003\u00ab\u0005\u00ab\u099e\n\u00ab\u0003",
+ "\u00ab\u0003\u00ab\u0003\u00ab\u0005\u00ab\u09a3\n\u00ab\u0007\u00ab",
+ "\u09a5\n\u00ab\f\u00ab\u000e\u00ab\u09a8\u000b\u00ab\u0003\u00ac\u0006",
+ "\u00ac\u09ab\n\u00ac\r\u00ac\u000e\u00ac\u09ac\u0003\u00ad\u0003\u00ad",
+ "\u0003\u00ad\u0003\u00ad\u0003\u00ad\u0003\u00ad\u0003\u00ad\u0003\u00ad",
+ "\u0003\u00ad\u0005\u00ad\u09b8\n\u00ad\u0005\u00ad\u09ba\n\u00ad\u0003",
+ "\u00ae\u0003\u00ae\u0003\u00ae\u0003\u00ae\u0003\u00ae\u0005\u00ae\u09c1",
+ "\n\u00ae\u0003\u00ae\u0005\u00ae\u09c4\n\u00ae\u0003\u00af\u0003\u00af",
+ "\u0003\u00af\u0007\u00af\u09c9\n\u00af\f\u00af\u000e\u00af\u09cc\u000b",
+ "\u00af\u0003\u00b0\u0003\u00b0\u0005\u00b0\u09d0\n\u00b0\u0003\u00b0",
+ "\u0003\u00b0\u0003\u00b0\u0003\u00b0\u0005\u00b0\u09d6\n\u00b0\u0003",
+ "\u00b0\u0005\u00b0\u09d9\n\u00b0\u0003\u00b0\u0005\u00b0\u09dc\n\u00b0",
+ "\u0003\u00b1\u0003\u00b1\u0003\u00b1\u0003\u00b2\u0003\u00b2\u0003\u00b2",
+ "\u0003\u00b2\u0003\u00b2\u0003\u00b2\u0003\u00b2\u0003\u00b2\u0006\u00b2",
+ "\u09e9\n\u00b2\r\u00b2\u000e\u00b2\u09ea\u0003\u00b3\u0003\u00b3\u0003",
+ "\u00b3\u0003\u00b3\u0003\u00b3\u0005\u00b3\u09f2\n\u00b3\u0003\u00b3",
+ "\u0005\u00b3\u09f5\n\u00b3\u0003\u00b3\u0005\u00b3\u09f8\n\u00b3\u0003",
+ "\u00b4\u0003\u00b4\u0005\u00b4\u09fc\n\u00b4\u0003\u00b4\u0003\u00b4",
+ "\u0003\u00b4\u0005\u00b4\u0a01\n\u00b4\u0003\u00b4\u0003\u00b4\u0003",
+ "\u00b4\u0003\u00b4\u0005\u00b4\u0a07\n\u00b4\u0003\u00b5\u0003\u00b5",
+ "\u0005\u00b5\u0a0b\n\u00b5\u0003\u00b5\u0003\u00b5\u0003\u00b5\u0003",
+ "\u00b5\u0003\u00b5\u0003\u00b5\u0003\u00b5\u0007\u00b5\u0a14\n\u00b5",
+ "\f\u00b5\u000e\u00b5\u0a17\u000b\u00b5\u0003\u00b5\u0005\u00b5\u0a1a",
+ "\n\u00b5\u0003\u00b5\u0005\u00b5\u0a1d\n\u00b5\u0003\u00b6\u0003\u00b6",
+ "\u0005\u00b6\u0a21\n\u00b6\u0003\u00b6\u0003\u00b6\u0005\u00b6\u0a25",
+ "\n\u00b6\u0003\u00b6\u0003\u00b6\u0005\u00b6\u0a29\n\u00b6\u0003\u00b7",
+ "\u0003\u00b7\u0005\u00b7\u0a2d\n\u00b7\u0003\u00b7\u0003\u00b7\u0003",
+ "\u00b8\u0003\u00b8\u0005\u00b8\u0a33\n\u00b8\u0003\u00b8\u0003\u00b8",
+ "\u0003\u00b9\u0003\u00b9\u0005\u00b9\u0a39\n\u00b9\u0003\u00b9\u0003",
+ "\u00b9\u0003\u00b9\u0003\u00b9\u0003\u00b9\u0005\u00b9\u0a40\n\u00b9",
+ "\u0003\u00b9\u0003\u00b9\u0003\u00b9\u0003\u00b9\u0007\u00b9\u0a46\n",
+ "\u00b9\f\u00b9\u000e\u00b9\u0a49\u000b\u00b9\u0003\u00ba\u0003\u00ba",
+ "\u0003\u00ba\u0005\u00ba\u0a4e\n\u00ba\u0003\u00bb\u0003\u00bb\u0003",
+ "\u00bb\u0005\u00bb\u0a53\n\u00bb\u0003\u00bb\u0003\u00bb\u0003\u00bb",
+ "\u0003\u00bb\u0003\u00bb\u0003\u00bb\u0003\u00bb\u0003\u00bb\u0003\u00bb",
+ "\u0005\u00bb\u0a5e\n\u00bb\u0003\u00bb\u0003\u00bb\u0003\u00bb\u0003",
+ "\u00bb\u0003\u00bb\u0003\u00bb\u0003\u00bb\u0005\u00bb\u0a67\n\u00bb",
+ "\u0003\u00bc\u0003\u00bc\u0005\u00bc\u0a6b\n\u00bc\u0003\u00bc\u0003",
+ "\u00bc\u0003\u00bc\u0003\u00bc\u0003\u00bc\u0007\u00bc\u0a72\n\u00bc",
+ "\f\u00bc\u000e\u00bc\u0a75\u000b\u00bc\u0003\u00bc\u0005\u00bc\u0a78",
+ "\n\u00bc\u0003\u00bc\u0003\u00bc\u0003\u00bd\u0003\u00bd\u0003\u00bd",
+ "\u0003\u00bd\u0007\u00bd\u0a80\n\u00bd\f\u00bd\u000e\u00bd\u0a83\u000b",
+ "\u00bd\u0003\u00bd\u0003\u00bd\u0005\u00bd\u0a87\n\u00bd\u0003\u00bd",
+ "\u0003\u00bd\u0003\u00bd\u0003\u00bd\u0003\u00bd\u0003\u00be\u0003\u00be",
+ "\u0003\u00be\u0003\u00be\u0003\u00bf\u0003\u00bf\u0003\u00c0\u0003\u00c0",
+ "\u0003\u00c0\u0003\u00c0\u0003\u00c0\u0003\u00c0\u0003\u00c0\u0003\u00c0",
+ "\u0003\u00c0\u0005\u00c0\u0a9d\n\u00c0\u0003\u00c0\u0005\u00c0\u0aa0",
+ "\n\u00c0\u0003\u00c1\u0003\u00c1\u0003\u00c1\u0003\u00c1\u0003\u00c1",
+ "\u0003\u00c1\u0003\u00c1\u0003\u00c1\u0003\u00c1\u0003\u00c1\u0003\u00c1",
+ "\u0003\u00c1\u0003\u00c1\u0003\u00c1\u0003\u00c1\u0003\u00c1\u0003\u00c1",
+ "\u0005\u00c1\u0ab3\n\u00c1\u0003\u00c1\u0003\u00c1\u0003\u00c1\u0003",
+ "\u00c1\u0003\u00c1\u0003\u00c1\u0003\u00c1\u0003\u00c1\u0003\u00c1\u0003",
+ "\u00c1\u0003\u00c1\u0003\u00c1\u0003\u00c1\u0003\u00c1\u0007\u00c1\u0ac3",
+ "\n\u00c1\f\u00c1\u000e\u00c1\u0ac6\u000b\u00c1\u0003\u00c2\u0003\u00c2",
+ "\u0003\u00c2\u0003\u00c2\u0003\u00c2\u0003\u00c2\u0003\u00c2\u0003\u00c2",
+ "\u0005\u00c2\u0ad0\n\u00c2\u0003\u00c3\u0003\u00c3\u0003\u00c3\u0003",
+ "\u00c3\u0003\u00c4\u0003\u00c4\u0003\u00c5\u0003\u00c5\u0003\u00c5\u0003",
+ "\u00c5\u0003\u00c5\u0007\u00c5\u0add\n\u00c5\f\u00c5\u000e\u00c5\u0ae0",
+ "\u000b\u00c5\u0003\u00c6\u0003\u00c6\u0003\u00c6\u0003\u00c6\u0003\u00c6",
+ "\u0003\u00c6\u0003\u00c6\u0003\u00c6\u0003\u00c6\u0005\u00c6\u0aeb\n",
+ "\u00c6\u0003\u00c7\u0003\u00c7\u0005\u00c7\u0aef\n\u00c7\u0003\u00c8",
+ "\u0003\u00c8\u0003\u00c8\u0003\u00c8\u0003\u00c8\u0003\u00c8\u0003\u00c8",
+ "\u0006\u00c8\u0af8\n\u00c8\r\u00c8\u000e\u00c8\u0af9\u0003\u00c8\u0003",
+ "\u00c8\u0005\u00c8\u0afe\n\u00c8\u0003\u00c8\u0003\u00c8\u0003\u00c9",
+ "\u0003\u00c9\u0003\u00c9\u0003\u00c9\u0003\u00c9\u0003\u00c9\u0006\u00c9",
+ "\u0b08\n\u00c9\r\u00c9\u000e\u00c9\u0b09\u0003\u00c9\u0003\u00c9\u0005",
+ "\u00c9\u0b0e\n\u00c9\u0003\u00c9\u0003\u00c9\u0003\u00ca\u0003\u00ca",
+ "\u0003\u00ca\u0003\u00ca\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0005\u00cb",
+ "\u0b19\n\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0005\u00cb\u0b1e",
+ "\n\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0005\u00cb\u0b23\n\u00cb",
+ "\u0003\u00cb\u0003\u00cb\u0005\u00cb\u0b27\n\u00cb\u0003\u00cb\u0003",
+ "\u00cb\u0005\u00cb\u0b2b\n\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb",
+ "\u0005\u00cb\u0b30\n\u00cb\u0003\u00cb\u0003\u00cb\u0005\u00cb\u0b34",
+ "\n\u00cb\u0003\u00cb\u0003\u00cb\u0005\u00cb\u0b38\n\u00cb\u0003\u00cb",
+ "\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb",
+ "\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb",
+ "\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb",
+ "\u0003\u00cb\u0003\u00cb\u0005\u00cb\u0b4f\n\u00cb\u0005\u00cb\u0b51",
+ "\n\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb",
+ "\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb",
+ "\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0005\u00cb",
+ "\u0b63\n\u00cb\u0005\u00cb\u0b65\n\u00cb\u0003\u00cb\u0003\u00cb\u0003",
+ "\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0005\u00cb\u0b6d\n\u00cb",
+ "\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0005\u00cb\u0b72\n\u00cb\u0003",
+ "\u00cb\u0003\u00cb\u0003\u00cb\u0005\u00cb\u0b77\n\u00cb\u0003\u00cb",
+ "\u0003\u00cb\u0003\u00cb\u0005\u00cb\u0b7c\n\u00cb\u0003\u00cb\u0003",
+ "\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0003",
+ "\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0005\u00cb\u0b89\n\u00cb",
+ "\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0005\u00cb\u0b8e\n\u00cb\u0003",
+ "\u00cb\u0003\u00cb\u0003\u00cb\u0005\u00cb\u0b93\n\u00cb\u0003\u00cb",
+ "\u0003\u00cb\u0003\u00cb\u0005\u00cb\u0b98\n\u00cb\u0003\u00cb\u0003",
+ "\u00cb\u0003\u00cb\u0005\u00cb\u0b9d\n\u00cb\u0003\u00cb\u0003\u00cb",
+ "\u0003\u00cb\u0005\u00cb\u0ba2\n\u00cb\u0003\u00cb\u0003\u00cb\u0003",
+ "\u00cb\u0005\u00cb\u0ba7\n\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb",
+ "\u0005\u00cb\u0bac\n\u00cb\u0005\u00cb\u0bae\n\u00cb\u0003\u00cc\u0003",
+ "\u00cc\u0003\u00cd\u0003\u00cd\u0003\u00cd\u0005\u00cd\u0bb5\n\u00cd",
+ "\u0003\u00cd\u0005\u00cd\u0bb8\n\u00cd\u0003\u00cd\u0003\u00cd\u0003",
+ "\u00ce\u0003\u00ce\u0003\u00ce\u0003\u00ce\u0003\u00ce\u0007\u00ce\u0bc1",
+ "\n\u00ce\f\u00ce\u000e\u00ce\u0bc4\u000b\u00ce\u0003\u00cf\u0003\u00cf",
+ "\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0005\u00cf",
+ "\u0bcd\n\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003",
+ "\u00cf\u0003\u00cf\u0005\u00cf\u0bd5\n\u00cf\u0003\u00cf\u0003\u00cf",
+ "\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0005\u00cf",
+ "\u0bde\n\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0005",
+ "\u00cf\u0be4\n\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf",
+ "\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf",
+ "\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0007\u00cf\u0bf3\n\u00cf\f\u00cf",
+ "\u000e\u00cf\u0bf6\u000b\u00cf\u0005\u00cf\u0bf8\n\u00cf\u0003\u00cf",
+ "\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf",
+ "\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0007\u00cf",
+ "\u0c06\n\u00cf\f\u00cf\u000e\u00cf\u0c09\u000b\u00cf\u0005\u00cf\u0c0b",
+ "\n\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf",
+ "\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf",
+ "\u0003\u00cf\u0007\u00cf\u0c19\n\u00cf\f\u00cf\u000e\u00cf\u0c1c\u000b",
+ "\u00cf\u0005\u00cf\u0c1e\n\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf",
+ "\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf",
+ "\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0007\u00cf\u0c2c\n\u00cf\f\u00cf",
+ "\u000e\u00cf\u0c2f\u000b\u00cf\u0005\u00cf\u0c31\n\u00cf\u0003\u00cf",
+ "\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf",
+ "\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0007\u00cf",
+ "\u0c3f\n\u00cf\f\u00cf\u000e\u00cf\u0c42\u000b\u00cf\u0005\u00cf\u0c44",
+ "\n\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf",
+ "\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf",
+ "\u0003\u00cf\u0007\u00cf\u0c52\n\u00cf\f\u00cf\u000e\u00cf\u0c55\u000b",
+ "\u00cf\u0005\u00cf\u0c57\n\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf",
+ "\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf",
+ "\u0003\u00cf\u0007\u00cf\u0c63\n\u00cf\f\u00cf\u000e\u00cf\u0c66\u000b",
+ "\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003",
+ "\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0006\u00cf\u0c72",
+ "\n\u00cf\r\u00cf\u000e\u00cf\u0c73\u0003\u00cf\u0003\u00cf\u0005\u00cf",
+ "\u0c78\n\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003",
+ "\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003",
+ "\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0005\u00cf\u0c88\n\u00cf",
+ "\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0005\u00cf\u0c8e\n",
+ "\u00cf\u0003\u00d0\u0003\u00d0\u0003\u00d0\u0005\u00d0\u0c93\n\u00d0",
+ "\u0003\u00d0\u0003\u00d0\u0003\u00d1\u0003\u00d1\u0003\u00d1\u0007\u00d1",
+ "\u0c9a\n\u00d1\f\u00d1\u000e\u00d1\u0c9d\u000b\u00d1\u0003\u00d2\u0003",
+ "\u00d2\u0003\u00d2\u0003\u00d2\u0005\u00d2\u0ca3\n\u00d2\u0005\u00d2",
+ "\u0ca5\n\u00d2\u0003\u00d2\u0003\u00d2\u0003\u00d3\u0003\u00d3\u0005",
+ "\u00d3\u0cab\n\u00d3\u0003\u00d4\u0003\u00d4\u0005\u00d4\u0caf\n\u00d4",
+ "\u0003\u00d5\u0003\u00d5\u0007\u00d5\u0cb3\n\u00d5\f\u00d5\u000e\u00d5",
+ "\u0cb6\u000b\u00d5\u0003\u00d6\u0003\u00d6\u0003\u00d6\u0003\u00d6\u0003",
+ "\u00d6\u0003\u00d6\u0003\u00d6\u0003\u00d6\u0003\u00d6\u0003\u00d6\u0003",
+ "\u00d6\u0003\u00d6\u0005\u00d6\u0cc4\n\u00d6\u0003\u00d7\u0003\u00d7",
+ "\u0003\u00d7\u0003\u00d7\u0003\u00d7\u0005\u00d7\u0ccb\n\u00d7\u0003",
+ "\u00d8\u0007\u00d8\u0cce\n\u00d8\f\u00d8\u000e\u00d8\u0cd1\u000b\u00d8",
+ "\u0003\u00d9\u0003\u00d9\u0003\u00d9\u0003\u00da\u0003\u00da\u0003\u00da",
+ "\u0003\u00da\u0005\u00da\u0cda\n\u00da\u0003\u00da\u0003\u00da\u0003",
+ "\u00da\u0007\u00da\u0cdf\n\u00da\f\u00da\u000e\u00da\u0ce2\u000b\u00da",
+ "\u0005\u00da\u0ce4\n\u00da\u0003\u00db\u0003\u00db\u0003\u00db\u0003",
+ "\u00dc\u0003\u00dc\u0003\u00dc\u0003\u00dd\u0005\u00dd\u0ced\n\u00dd",
+ "\u0003\u00dd\u0003\u00dd\u0005\u00dd\u0cf1\n\u00dd\u0003\u00dd\u0003",
+ "\u00dd\u0003\u00dd\u0005\u00dd\u0cf6\n\u00dd\u0007\u00dd\u0cf8\n\u00dd",
+ "\f\u00dd\u000e\u00dd\u0cfb\u000b\u00dd\u0003\u00de\u0003\u00de\u0005",
+ "\u00de\u0cff\n\u00de\u0003\u00df\u0005\u00df\u0d02\n\u00df\u0003\u00df",
+ "\u0003\u00df\u0003\u00e0\u0005\u00e0\u0d07\n\u00e0\u0003\u00e0\u0003",
+ "\u00e0\u0003\u00e1\u0003\u00e1\u0003\u00e2\u0003\u00e2\u0003\u00e3\u0003",
+ "\u00e3\u0003\u00e3\u0003\u0ccf\u0004\u0170\u0180\u00e4\u0002\u0004\u0006",
+ "\b\n\f\u000e\u0010\u0012\u0014\u0016\u0018\u001a\u001c\u001e \"$&(*",
+ ",.02468:<>@BDFHJLNPRTVXZ\\^`bdfhjlnprtvxz|~\u0080\u0082\u0084\u0086",
+ "\u0088\u008a\u008c\u008e\u0090\u0092\u0094\u0096\u0098\u009a\u009c\u009e",
+ "\u00a0\u00a2\u00a4\u00a6\u00a8\u00aa\u00ac\u00ae\u00b0\u00b2\u00b4\u00b6",
+ "\u00b8\u00ba\u00bc\u00be\u00c0\u00c2\u00c4\u00c6\u00c8\u00ca\u00cc\u00ce",
+ "\u00d0\u00d2\u00d4\u00d6\u00d8\u00da\u00dc\u00de\u00e0\u00e2\u00e4\u00e6",
+ "\u00e8\u00ea\u00ec\u00ee\u00f0\u00f2\u00f4\u00f6\u00f8\u00fa\u00fc\u00fe",
+ "\u0100\u0102\u0104\u0106\u0108\u010a\u010c\u010e\u0110\u0112\u0114\u0116",
+ "\u0118\u011a\u011c\u011e\u0120\u0122\u0124\u0126\u0128\u012a\u012c\u012e",
+ "\u0130\u0132\u0134\u0136\u0138\u013a\u013c\u013e\u0140\u0142\u0144\u0146",
+ "\u0148\u014a\u014c\u014e\u0150\u0152\u0154\u0156\u0158\u015a\u015c\u015e",
+ "\u0160\u0162\u0164\u0166\u0168\u016a\u016c\u016e\u0170\u0172\u0174\u0176",
+ "\u0178\u017a\u017c\u017e\u0180\u0182\u0184\u0186\u0188\u018a\u018c\u018e",
+ "\u0190\u0192\u0194\u0196\u0198\u019a\u019c\u019e\u01a0\u01a2\u01a4\u01a6",
+ "\u01a8\u01aa\u01ac\u01ae\u01b0\u01b2\u01b4\u01b6\u01b8\u01ba\u01bc\u01be",
+ "\u01c0\u01c2\u01c4\u00023\u0004\u0002\u0003\u0005\u000f\u000f\u0004",
+ "\u0002\u0010\u0010\u0012\u0012\u0003\u0002\"#\u0005\u0002\u001e\u001e",
+ ")),,\u0003\u000201\u0003\u000234\u0004\u0002\u0016\u0016AA\u0003\u0002",
+ "NO\u0003\u0002RS\u0003\u0002YZ\u0004\u0002SS\\\\\u0003\u0002`a\u0003",
+ "\u0002be\u0003\u0002gh\u0004\u0002TTss\u0003\u0002\u00b1\u00b2\u0004",
+ "\u0002JJ\u00b3\u00b3\u0004\u0002\u008b\u008b\u00b4\u00b4\u0003\u0002",
+ "\u00b5\u00b6\u0003\u0002\u00b7\u00b8\u0004\u0002)),,\u0004\u0002--\u00bc",
+ "\u00bc\u0004\u0002 \u00be\u00be\u0003\u0002\u00c5\u00c8\u0003\u0002",
+ "\u00cb\u00cc\u0003\u0002\u00cf\u00d0\u0003\u0002\u00e3\u00e4\u0004\u0002",
+ "\u00d9\u00d9\u00e8\u00e8\u0005\u0002SS\u00d3\u00d3\u00ee\u00ee\u0003",
+ "\u0002\u00f9\u00fd\u0004\u0002QQ\u00fe\u00fe\u0004\u0002%%\u0101\u0101",
+ "\u0005\u0002\u000e\u000e\u0014\u0014\u0109\u010a\u0004\u0002\u0108\u0108",
+ "\u010a\u010a\u0004\u0002oo\u010d\u010d\u0003\u0002\u0116\u0117\u0004",
+ "\u0002\u0113\u0113\u0118\u0118\u0003\u0002\u011d\u011f\u0004\u0002\u00b6",
+ "\u00b6\u0126\u0128\u0004\u0002RR\u012b\u012c\u0004\u0002OO\u0130\u0130",
+ "\u0004\u0002\u00ba\u00ba\u0129\u0129\u0004\u0002CC\u0137\u0138\u0003",
+ "\u0002\u013e\u0143\u0003\u0002\u0144\u0145\u0004\u000299\u0147\u0148",
+ "\u0003\u0002\u000b\f\u0003\u0002\u0170\u0171\u0018\u0002\r\u000e\u0011",
+ "\u0011\u0014\u0014\u0016\u0016\u001cIK\u008e\u0090\u00a0\u00a2\u00a6",
+ "\u00a8\u00ac\u00ae\u00b0\u00b3\u00cd\u00d1\u010b\u010d\u010d\u0111\u0111",
+ "\u0113\u0119\u011b\u0120\u0122\u0131\u0137\u0138\u013d\u0143\u0145\u015f",
+ "\u0166\u016c\u0170\u0178\u0002\u0ebc\u0002\u01c6\u0003\u0002\u0002\u0002",
+ "\u0004\u01d0\u0003\u0002\u0002\u0002\u0006\u01d5\u0003\u0002\u0002\u0002",
+ "\b\u01e9\u0003\u0002\u0002\u0002\n\u01eb\u0003\u0002\u0002\u0002\f\u01f7",
+ "\u0003\u0002\u0002\u0002\u000e\u0236\u0003\u0002\u0002\u0002\u0010\u0238",
+ "\u0003\u0002\u0002\u0002\u0012\u023a\u0003\u0002\u0002\u0002\u0014\u0240",
+ "\u0003\u0002\u0002\u0002\u0016\u0246\u0003\u0002\u0002\u0002\u0018\u0248",
+ "\u0003\u0002\u0002\u0002\u001a\u0258\u0003\u0002\u0002\u0002\u001c\u025d",
+ "\u0003\u0002\u0002\u0002\u001e\u026f\u0003\u0002\u0002\u0002 \u0271",
+ "\u0003\u0002\u0002\u0002\"\u0296\u0003\u0002\u0002\u0002$\u02a0\u0003",
+ "\u0002\u0002\u0002&\u02ab\u0003\u0002\u0002\u0002(\u02bf\u0003\u0002",
+ "\u0002\u0002*\u02c2\u0003\u0002\u0002\u0002,\u02c4\u0003\u0002\u0002",
+ "\u0002.\u02ce\u0003\u0002\u0002\u00020\u02d7\u0003\u0002\u0002\u0002",
+ "2\u02e2\u0003\u0002\u0002\u00024\u02f1\u0003\u0002\u0002\u00026\u0316",
+ "\u0003\u0002\u0002\u00028\u0318\u0003\u0002\u0002\u0002:\u0320\u0003",
+ "\u0002\u0002\u0002<\u032b\u0003\u0002\u0002\u0002>\u0334\u0003\u0002",
+ "\u0002\u0002@\u0337\u0003\u0002\u0002\u0002B\u0344\u0003\u0002\u0002",
+ "\u0002D\u034e\u0003\u0002\u0002\u0002F\u035b\u0003\u0002\u0002\u0002",
+ "H\u037c\u0003\u0002\u0002\u0002J\u0381\u0003\u0002\u0002\u0002L\u039f",
+ "\u0003\u0002\u0002\u0002N\u03a1\u0003\u0002\u0002\u0002P\u03c3\u0003",
+ "\u0002\u0002\u0002R\u03fe\u0003\u0002\u0002\u0002T\u0400\u0003\u0002",
+ "\u0002\u0002V\u040d\u0003\u0002\u0002\u0002X\u0414\u0003\u0002\u0002",
+ "\u0002Z\u0417\u0003\u0002\u0002\u0002\\\u041c\u0003\u0002\u0002\u0002",
+ "^\u042a\u0003\u0002\u0002\u0002`\u043e\u0003\u0002\u0002\u0002b\u0461",
+ "\u0003\u0002\u0002\u0002d\u0475\u0003\u0002\u0002\u0002f\u047b\u0003",
+ "\u0002\u0002\u0002h\u047d\u0003\u0002\u0002\u0002j\u04a1\u0003\u0002",
+ "\u0002\u0002l\u04a7\u0003\u0002\u0002\u0002n\u04c4\u0003\u0002\u0002",
+ "\u0002p\u04c6\u0003\u0002\u0002\u0002r\u04cb\u0003\u0002\u0002\u0002",
+ "t\u04cd\u0003\u0002\u0002\u0002v\u0512\u0003\u0002\u0002\u0002x\u0542",
+ "\u0003\u0002\u0002\u0002z\u0544\u0003\u0002\u0002\u0002|\u055a\u0003",
+ "\u0002\u0002\u0002~\u0568\u0003\u0002\u0002\u0002\u0080\u056a\u0003",
+ "\u0002\u0002\u0002\u0082\u057c\u0003\u0002\u0002\u0002\u0084\u0585\u0003",
+ "\u0002\u0002\u0002\u0086\u0595\u0003\u0002\u0002\u0002\u0088\u05a1\u0003",
+ "\u0002\u0002\u0002\u008a\u05ad\u0003\u0002\u0002\u0002\u008c\u05c4\u0003",
+ "\u0002\u0002\u0002\u008e\u05cd\u0003\u0002\u0002\u0002\u0090\u05da\u0003",
+ "\u0002\u0002\u0002\u0092\u05e7\u0003\u0002\u0002\u0002\u0094\u05f0\u0003",
+ "\u0002\u0002\u0002\u0096\u061f\u0003\u0002\u0002\u0002\u0098\u064b\u0003",
+ "\u0002\u0002\u0002\u009a\u064e\u0003\u0002\u0002\u0002\u009c\u065d\u0003",
+ "\u0002\u0002\u0002\u009e\u066d\u0003\u0002\u0002\u0002\u00a0\u066f\u0003",
+ "\u0002\u0002\u0002\u00a2\u0672\u0003\u0002\u0002\u0002\u00a4\u068f\u0003",
+ "\u0002\u0002\u0002\u00a6\u0691\u0003\u0002\u0002\u0002\u00a8\u06a1\u0003",
+ "\u0002\u0002\u0002\u00aa\u06a8\u0003\u0002\u0002\u0002\u00ac\u06ae\u0003",
+ "\u0002\u0002\u0002\u00ae\u06b3\u0003\u0002\u0002\u0002\u00b0\u06b6\u0003",
+ "\u0002\u0002\u0002\u00b2\u06bb\u0003\u0002\u0002\u0002\u00b4\u06cc\u0003",
+ "\u0002\u0002\u0002\u00b6\u06d7\u0003\u0002\u0002\u0002\u00b8\u06e0\u0003",
+ "\u0002\u0002\u0002\u00ba\u06eb\u0003\u0002\u0002\u0002\u00bc\u06f4\u0003",
+ "\u0002\u0002\u0002\u00be\u06fc\u0003\u0002\u0002\u0002\u00c0\u0702\u0003",
+ "\u0002\u0002\u0002\u00c2\u0704\u0003\u0002\u0002\u0002\u00c4\u070a\u0003",
+ "\u0002\u0002\u0002\u00c6\u070e\u0003\u0002\u0002\u0002\u00c8\u071b\u0003",
+ "\u0002\u0002\u0002\u00ca\u0720\u0003\u0002\u0002\u0002\u00cc\u0724\u0003",
+ "\u0002\u0002\u0002\u00ce\u072f\u0003\u0002\u0002\u0002\u00d0\u0738\u0003",
+ "\u0002\u0002\u0002\u00d2\u0746\u0003\u0002\u0002\u0002\u00d4\u074d\u0003",
+ "\u0002\u0002\u0002\u00d6\u0759\u0003\u0002\u0002\u0002\u00d8\u075c\u0003",
+ "\u0002\u0002\u0002\u00da\u076a\u0003\u0002\u0002\u0002\u00dc\u0770\u0003",
+ "\u0002\u0002\u0002\u00de\u0783\u0003\u0002\u0002\u0002\u00e0\u0798\u0003",
+ "\u0002\u0002\u0002\u00e2\u079c\u0003\u0002\u0002\u0002\u00e4\u07a6\u0003",
+ "\u0002\u0002\u0002\u00e6\u07a8\u0003\u0002\u0002\u0002\u00e8\u07aa\u0003",
+ "\u0002\u0002\u0002\u00ea\u07ae\u0003\u0002\u0002\u0002\u00ec\u07c1\u0003",
+ "\u0002\u0002\u0002\u00ee\u07c5\u0003\u0002\u0002\u0002\u00f0\u07c7\u0003",
+ "\u0002\u0002\u0002\u00f2\u07e4\u0003\u0002\u0002\u0002\u00f4\u07e7\u0003",
+ "\u0002\u0002\u0002\u00f6\u07ed\u0003\u0002\u0002\u0002\u00f8\u07ef\u0003",
+ "\u0002\u0002\u0002\u00fa\u07fd\u0003\u0002\u0002\u0002\u00fc\u0801\u0003",
+ "\u0002\u0002\u0002\u00fe\u0808\u0003\u0002\u0002\u0002\u0100\u080f\u0003",
+ "\u0002\u0002\u0002\u0102\u0816\u0003\u0002\u0002\u0002\u0104\u0819\u0003",
+ "\u0002\u0002\u0002\u0106\u0825\u0003\u0002\u0002\u0002\u0108\u0828\u0003",
+ "\u0002\u0002\u0002\u010a\u0839\u0003\u0002\u0002\u0002\u010c\u083f\u0003",
+ "\u0002\u0002\u0002\u010e\u0842\u0003\u0002\u0002\u0002\u0110\u0860\u0003",
+ "\u0002\u0002\u0002\u0112\u0868\u0003\u0002\u0002\u0002\u0114\u0877\u0003",
+ "\u0002\u0002\u0002\u0116\u088f\u0003\u0002\u0002\u0002\u0118\u0891\u0003",
+ "\u0002\u0002\u0002\u011a\u089b\u0003\u0002\u0002\u0002\u011c\u089f\u0003",
+ "\u0002\u0002\u0002\u011e\u08a8\u0003\u0002\u0002\u0002\u0120\u08b1\u0003",
+ "\u0002\u0002\u0002\u0122\u08bc\u0003\u0002\u0002\u0002\u0124\u08ca\u0003",
+ "\u0002\u0002\u0002\u0126\u08d8\u0003\u0002\u0002\u0002\u0128\u08da\u0003",
+ "\u0002\u0002\u0002\u012a\u08f3\u0003\u0002\u0002\u0002\u012c\u0900\u0003",
+ "\u0002\u0002\u0002\u012e\u0902\u0003\u0002\u0002\u0002\u0130\u090f\u0003",
+ "\u0002\u0002\u0002\u0132\u091a\u0003\u0002\u0002\u0002\u0134\u091e\u0003",
+ "\u0002\u0002\u0002\u0136\u0922\u0003\u0002\u0002\u0002\u0138\u092b\u0003",
+ "\u0002\u0002\u0002\u013a\u0936\u0003\u0002\u0002\u0002\u013c\u0938\u0003",
+ "\u0002\u0002\u0002\u013e\u093c\u0003\u0002\u0002\u0002\u0140\u0949\u0003",
+ "\u0002\u0002\u0002\u0142\u0954\u0003\u0002\u0002\u0002\u0144\u0956\u0003",
+ "\u0002\u0002\u0002\u0146\u0971\u0003\u0002\u0002\u0002\u0148\u0973\u0003",
+ "\u0002\u0002\u0002\u014a\u0984\u0003\u0002\u0002\u0002\u014c\u0986\u0003",
+ "\u0002\u0002\u0002\u014e\u0989\u0003\u0002\u0002\u0002\u0150\u0993\u0003",
+ "\u0002\u0002\u0002\u0152\u0996\u0003\u0002\u0002\u0002\u0154\u0999\u0003",
+ "\u0002\u0002\u0002\u0156\u09aa\u0003\u0002\u0002\u0002\u0158\u09b9\u0003",
+ "\u0002\u0002\u0002\u015a\u09bb\u0003\u0002\u0002\u0002\u015c\u09c5\u0003",
+ "\u0002\u0002\u0002\u015e\u09d5\u0003\u0002\u0002\u0002\u0160\u09dd\u0003",
+ "\u0002\u0002\u0002\u0162\u09e0\u0003\u0002\u0002\u0002\u0164\u09f1\u0003",
+ "\u0002\u0002\u0002\u0166\u0a06\u0003\u0002\u0002\u0002\u0168\u0a1c\u0003",
+ "\u0002\u0002\u0002\u016a\u0a1e\u0003\u0002\u0002\u0002\u016c\u0a2a\u0003",
+ "\u0002\u0002\u0002\u016e\u0a30\u0003\u0002\u0002\u0002\u0170\u0a3f\u0003",
+ "\u0002\u0002\u0002\u0172\u0a4d\u0003\u0002\u0002\u0002\u0174\u0a66\u0003",
+ "\u0002\u0002\u0002\u0176\u0a68\u0003\u0002\u0002\u0002\u0178\u0a7b\u0003",
+ "\u0002\u0002\u0002\u017a\u0a8d\u0003\u0002\u0002\u0002\u017c\u0a91\u0003",
+ "\u0002\u0002\u0002\u017e\u0a9f\u0003\u0002\u0002\u0002\u0180\u0ab2\u0003",
+ "\u0002\u0002\u0002\u0182\u0acf\u0003\u0002\u0002\u0002\u0184\u0ad1\u0003",
+ "\u0002\u0002\u0002\u0186\u0ad5\u0003\u0002\u0002\u0002\u0188\u0ad7\u0003",
+ "\u0002\u0002\u0002\u018a\u0aea\u0003\u0002\u0002\u0002\u018c\u0aee\u0003",
+ "\u0002\u0002\u0002\u018e\u0af0\u0003\u0002\u0002\u0002\u0190\u0b01\u0003",
+ "\u0002\u0002\u0002\u0192\u0b11\u0003\u0002\u0002\u0002\u0194\u0bad\u0003",
+ "\u0002\u0002\u0002\u0196\u0baf\u0003\u0002\u0002\u0002\u0198\u0bb1\u0003",
+ "\u0002\u0002\u0002\u019a\u0bbb\u0003\u0002\u0002\u0002\u019c\u0c8d\u0003",
+ "\u0002\u0002\u0002\u019e\u0c8f\u0003\u0002\u0002\u0002\u01a0\u0c96\u0003",
+ "\u0002\u0002\u0002\u01a2\u0c9e\u0003\u0002\u0002\u0002\u01a4\u0caa\u0003",
+ "\u0002\u0002\u0002\u01a6\u0cae\u0003\u0002\u0002\u0002\u01a8\u0cb0\u0003",
+ "\u0002\u0002\u0002\u01aa\u0cc3\u0003\u0002\u0002\u0002\u01ac\u0cca\u0003",
+ "\u0002\u0002\u0002\u01ae\u0ccf\u0003\u0002\u0002\u0002\u01b0\u0cd2\u0003",
+ "\u0002\u0002\u0002\u01b2\u0ce3\u0003\u0002\u0002\u0002\u01b4\u0ce5\u0003",
+ "\u0002\u0002\u0002\u01b6\u0ce8\u0003\u0002\u0002\u0002\u01b8\u0cec\u0003",
+ "\u0002\u0002\u0002\u01ba\u0cfe\u0003\u0002\u0002\u0002\u01bc\u0d01\u0003",
+ "\u0002\u0002\u0002\u01be\u0d06\u0003\u0002\u0002\u0002\u01c0\u0d0a\u0003",
+ "\u0002\u0002\u0002\u01c2\u0d0c\u0003\u0002\u0002\u0002\u01c4\u0d0e\u0003",
+ "\u0002\u0002\u0002\u01c6\u01c7\u0005\u0004\u0003\u0002\u01c7\u01c8\u0007",
+ "\u0002\u0002\u0003\u01c8\u0003\u0003\u0002\u0002\u0002\u01c9\u01cc\u0005",
+ "\u0006\u0004\u0002\u01ca\u01cc\u0005\u000e\b\u0002\u01cb\u01c9\u0003",
+ "\u0002\u0002\u0002\u01cb\u01ca\u0003\u0002\u0002\u0002\u01cc\u01ce\u0003",
+ "\u0002\u0002\u0002\u01cd\u01cf\u0007\r\u0002\u0002\u01ce\u01cd\u0003",
+ "\u0002\u0002\u0002\u01ce\u01cf\u0003\u0002\u0002\u0002\u01cf\u01d1\u0003",
+ "\u0002\u0002\u0002\u01d0\u01cb\u0003\u0002\u0002\u0002\u01d1\u01d2\u0003",
+ "\u0002\u0002\u0002\u01d2\u01d0\u0003\u0002\u0002\u0002\u01d2\u01d3\u0003",
+ "\u0002\u0002\u0002\u01d3\u0005\u0003\u0002\u0002\u0002\u01d4\u01d6\u0005",
+ "0\u0019\u0002\u01d5\u01d4\u0003\u0002\u0002\u0002\u01d5\u01d6\u0003",
+ "\u0002\u0002\u0002\u01d6\u01d7\u0003\u0002\u0002\u0002\u01d7\u01d8\u0007",
+ "\u000e\u0002\u0002\u01d8\u01da\u0005\u0004\u0003\u0002\u01d9\u01db\u0005",
+ "\u0012\n\u0002\u01da\u01d9\u0003\u0002\u0002\u0002\u01da\u01db\u0003",
+ "\u0002\u0002\u0002\u01db\u01dc\u0003\u0002\u0002\u0002\u01dc\u01dd\u0005",
+ "\n\u0006\u0002\u01dd\u0007\u0003\u0002\u0002\u0002\u01de\u01df\u0007",
+ "\u000e\u0002\u0002\u01df\u01e1\u0005\u0004\u0003\u0002\u01e0\u01e2\u0005",
+ "\u0012\n\u0002\u01e1\u01e0\u0003\u0002\u0002\u0002\u01e1\u01e2\u0003",
+ "\u0002\u0002\u0002\u01e2\u01e3\u0003\u0002\u0002\u0002\u01e3\u01e4\u0005",
+ "\n\u0006\u0002\u01e4\u01ea\u0003\u0002\u0002\u0002\u01e5\u01e7\u0005",
+ "\u000e\b\u0002\u01e6\u01e8\u0007\u000f\u0002\u0002\u01e7\u01e6\u0003",
+ "\u0002\u0002\u0002\u01e7\u01e8\u0003\u0002\u0002\u0002\u01e8\u01ea\u0003",
+ "\u0002\u0002\u0002\u01e9\u01de\u0003\u0002\u0002\u0002\u01e9\u01e5\u0003",
+ "\u0002\u0002\u0002\u01ea\t\u0003\u0002\u0002\u0002\u01eb\u01ec\u0006",
+ "\u0006\u0002\u0002\u01ec\u01ed\u0007\u0010\u0002\u0002\u01ed\u000b\u0003",
+ "\u0002\u0002\u0002\u01ee\u01f8\u0005\u0006\u0004\u0002\u01ef\u01f1\u0005",
+ "\u000e\b\u0002\u01f0\u01ef\u0003\u0002\u0002\u0002\u01f1\u01f2\u0003",
+ "\u0002\u0002\u0002\u01f2\u01f0\u0003\u0002\u0002\u0002\u01f2\u01f3\u0003",
+ "\u0002\u0002\u0002\u01f3\u01f5\u0003\u0002\u0002\u0002\u01f4\u01f6\u0007",
+ "\r\u0002\u0002\u01f5\u01f4\u0003\u0002\u0002\u0002\u01f5\u01f6\u0003",
+ "\u0002\u0002\u0002\u01f6\u01f8\u0003\u0002\u0002\u0002\u01f7\u01ee\u0003",
+ "\u0002\u0002\u0002\u01f7\u01f0\u0003\u0002\u0002\u0002\u01f8\r\u0003",
+ "\u0002\u0002\u0002\u01f9\u0237\u0005\u001a\u000e\u0002\u01fa\u0237\u0005",
+ "$\u0013\u0002\u01fb\u0237\u0005p9\u0002\u01fc\u0237\u0005&\u0014\u0002",
+ "\u01fd\u0237\u0005(\u0015\u0002\u01fe\u0237\u0005*\u0016\u0002\u01ff",
+ "\u0237\u0005,\u0017\u0002\u0200\u0237\u0005\u00d2j\u0002\u0201\u0237",
+ "\u0005\u00d6l\u0002\u0202\u0237\u0005\u00d8m\u0002\u0203\u0237\u0005",
+ "\u00dco\u0002\u0204\u0237\u0005\u00dep\u0002\u0205\u0237\u0005\u00e8",
+ "u\u0002\u0206\u0237\u0005\u0080A\u0002\u0207\u0237\u0005\u0084C\u0002",
+ "\u0208\u0237\u0005\u00eav\u0002\u0209\u0237\u0005F$\u0002\u020a\u0237",
+ "\u0005\u0088E\u0002\u020b\u0237\u0005\u008eH\u0002\u020c\u0237\u0005",
+ "\u0094K\u0002\u020d\u0237\u0005D#\u0002\u020e\u0237\u0005.\u0018\u0002",
+ "\u020f\u0237\u0005\u016a\u00b6\u0002\u0210\u0237\u0005\u016e\u00b8\u0002",
+ "\u0211\u0237\u0005\u009eP\u0002\u0212\u0237\u0005\u00a0Q\u0002\u0213",
+ "\u0237\u0005\u00a2R\u0002\u0214\u0237\u0005\u00bc_\u0002\u0215\u0237",
+ "\u0005\u00d0i\u0002\u0216\u0237\u0005\u0112\u008a\u0002\u0217\u0237",
+ "\u0005\u0114\u008b\u0002\u0218\u0237\u0005\u00a4S\u0002\u0219\u0237",
+ "\u0005\u00b0Y\u0002\u021a\u0237\u0005\u00b2Z\u0002\u021b\u0237\u0005",
+ "\u00ba^\u0002\u021c\u0237\u0005\u00be`\u0002\u021d\u0237\u0005\u00c6",
+ "d\u0002\u021e\u0237\u0005\u00caf\u0002\u021f\u0237\u0005\u00ccg\u0002",
+ "\u0220\u0237\u0005\u0162\u00b2\u0002\u0221\u0237\u0005\u00ceh\u0002",
+ "\u0222\u0237\u0005\u00f2z\u0002\u0223\u0237\u0005\u00f4{\u0002\u0224",
+ "\u0237\u0005\u00f6|\u0002\u0225\u0237\u0005\u00f8}\u0002\u0226\u0237",
+ "\u0005\u00fa~\u0002\u0227\u0237\u0005\u00fc\u007f\u0002\u0228\u0237",
+ "\u0005\u011a\u008e\u0002\u0229\u0237\u0005\u0106\u0084\u0002\u022a\u0237",
+ "\u0005\u0108\u0085\u0002\u022b\u0237\u0005\u015a\u00ae\u0002\u022c\u0237",
+ "\u0005\u010c\u0087\u0002\u022d\u0237\u0005\u010a\u0086\u0002\u022e\u0237",
+ "\u0005\u010e\u0088\u0002\u022f\u0237\u0005\u0110\u0089\u0002\u0230\u0237",
+ "\u0005\u0116\u008c\u0002\u0231\u0237\u0005\u01a8\u00d5\u0002\u0232\u0237",
+ "\u0005\u01ac\u00d7\u0002\u0233\u0237\u0005\u0016\f\u0002\u0234\u0237",
+ "\u0005\u0018\r\u0002\u0235\u0237\u0005\u0010\t\u0002\u0236\u01f9\u0003",
+ "\u0002\u0002\u0002\u0236\u01fa\u0003\u0002\u0002\u0002\u0236\u01fb\u0003",
+ "\u0002\u0002\u0002\u0236\u01fc\u0003\u0002\u0002\u0002\u0236\u01fd\u0003",
+ "\u0002\u0002\u0002\u0236\u01fe\u0003\u0002\u0002\u0002\u0236\u01ff\u0003",
+ "\u0002\u0002\u0002\u0236\u0200\u0003\u0002\u0002\u0002\u0236\u0201\u0003",
+ "\u0002\u0002\u0002\u0236\u0202\u0003\u0002\u0002\u0002\u0236\u0203\u0003",
+ "\u0002\u0002\u0002\u0236\u0204\u0003\u0002\u0002\u0002\u0236\u0205\u0003",
+ "\u0002\u0002\u0002\u0236\u0206\u0003\u0002\u0002\u0002\u0236\u0207\u0003",
+ "\u0002\u0002\u0002\u0236\u0208\u0003\u0002\u0002\u0002\u0236\u0209\u0003",
+ "\u0002\u0002\u0002\u0236\u020a\u0003\u0002\u0002\u0002\u0236\u020b\u0003",
+ "\u0002\u0002\u0002\u0236\u020c\u0003\u0002\u0002\u0002\u0236\u020d\u0003",
+ "\u0002\u0002\u0002\u0236\u020e\u0003\u0002\u0002\u0002\u0236\u020f\u0003",
+ "\u0002\u0002\u0002\u0236\u0210\u0003\u0002\u0002\u0002\u0236\u0211\u0003",
+ "\u0002\u0002\u0002\u0236\u0212\u0003\u0002\u0002\u0002\u0236\u0213\u0003",
+ "\u0002\u0002\u0002\u0236\u0214\u0003\u0002\u0002\u0002\u0236\u0215\u0003",
+ "\u0002\u0002\u0002\u0236\u0216\u0003\u0002\u0002\u0002\u0236\u0217\u0003",
+ "\u0002\u0002\u0002\u0236\u0218\u0003\u0002\u0002\u0002\u0236\u0219\u0003",
+ "\u0002\u0002\u0002\u0236\u021a\u0003\u0002\u0002\u0002\u0236\u021b\u0003",
+ "\u0002\u0002\u0002\u0236\u021c\u0003\u0002\u0002\u0002\u0236\u021d\u0003",
+ "\u0002\u0002\u0002\u0236\u021e\u0003\u0002\u0002\u0002\u0236\u021f\u0003",
+ "\u0002\u0002\u0002\u0236\u0220\u0003\u0002\u0002\u0002\u0236\u0221\u0003",
+ "\u0002\u0002\u0002\u0236\u0222\u0003\u0002\u0002\u0002\u0236\u0223\u0003",
+ "\u0002\u0002\u0002\u0236\u0224\u0003\u0002\u0002\u0002\u0236\u0225\u0003",
+ "\u0002\u0002\u0002\u0236\u0226\u0003\u0002\u0002\u0002\u0236\u0227\u0003",
+ "\u0002\u0002\u0002\u0236\u0228\u0003\u0002\u0002\u0002\u0236\u0229\u0003",
+ "\u0002\u0002\u0002\u0236\u022a\u0003\u0002\u0002\u0002\u0236\u022b\u0003",
+ "\u0002\u0002\u0002\u0236\u022c\u0003\u0002\u0002\u0002\u0236\u022d\u0003",
+ "\u0002\u0002\u0002\u0236\u022e\u0003\u0002\u0002\u0002\u0236\u022f\u0003",
+ "\u0002\u0002\u0002\u0236\u0230\u0003\u0002\u0002\u0002\u0236\u0231\u0003",
+ "\u0002\u0002\u0002\u0236\u0232\u0003\u0002\u0002\u0002\u0236\u0233\u0003",
+ "\u0002\u0002\u0002\u0236\u0234\u0003\u0002\u0002\u0002\u0236\u0235\u0003",
+ "\u0002\u0002\u0002\u0237\u000f\u0003\u0002\u0002\u0002\u0238\u0239\t",
+ "\u0002\u0002\u0002\u0239\u0011\u0003\u0002\u0002\u0002\u023a\u023c\u0007",
+ "\u0011\u0002\u0002\u023b\u023d\u0005\u0014\u000b\u0002\u023c\u023b\u0003",
+ "\u0002\u0002\u0002\u023d\u023e\u0003\u0002\u0002\u0002\u023e\u023c\u0003",
+ "\u0002\u0002\u0002\u023e\u023f\u0003\u0002\u0002\u0002\u023f\u0013\u0003",
+ "\u0002\u0002\u0002\u0240\u0241\u0007\u0012\u0002\u0002\u0241\u0242\u0007",
+ "\u0013\u0002\u0002\u0242\u0243\u0007\u0014\u0002\u0002\u0243\u0244\u0005",
+ "\u0004\u0003\u0002\u0244\u0245\n\u0003\u0002\u0002\u0245\u0015\u0003",
+ "\u0002\u0002\u0002\u0246\u0247\u0007\u0015\u0002\u0002\u0247\u0017\u0003",
+ "\u0002\u0002\u0002\u0248\u0249\u0006\r\u0003\u0002\u0249\u024a\u0005",
+ "\u0180\u00c1\u0002\u024a\u0019\u0003\u0002\u0002\u0002\u024b\u024c\u0007",
+ "\u0016\u0002\u0002\u024c\u0259\u0005\u00fe\u0080\u0002\u024d\u024f\u0007",
+ "\u0016\u0002\u0002\u024e\u024d\u0003\u0002\u0002\u0002\u024e\u024f\u0003",
+ "\u0002\u0002\u0002\u024f\u0250\u0003\u0002\u0002\u0002\u0250\u0255\u0005",
+ "\u001c\u000f\u0002\u0251\u0252\u0007\u0017\u0002\u0002\u0252\u0254\u0005",
+ "\u001c\u000f\u0002\u0253\u0251\u0003\u0002\u0002\u0002\u0254\u0257\u0003",
+ "\u0002\u0002\u0002\u0255\u0253\u0003\u0002\u0002\u0002\u0255\u0256\u0003",
+ "\u0002\u0002\u0002\u0256\u0259\u0003\u0002\u0002\u0002\u0257\u0255\u0003",
+ "\u0002\u0002\u0002\u0258\u024b\u0003\u0002\u0002\u0002\u0258\u024e\u0003",
+ "\u0002\u0002\u0002\u0259\u001b\u0003\u0002\u0002\u0002\u025a\u025e\u0005",
+ "\u001e\u0010\u0002\u025b\u025e\u0005 \u0011\u0002\u025c\u025e\u0005",
+ "\"\u0012\u0002\u025d\u025a\u0003\u0002\u0002\u0002\u025d\u025b\u0003",
+ "\u0002\u0002\u0002\u025d\u025c\u0003\u0002\u0002\u0002\u025e\u001d\u0003",
+ "\u0002\u0002\u0002\u025f\u0261\u0005\u01b8\u00dd\u0002\u0260\u0262\u0007",
+ "\u0018\u0002\u0002\u0261\u0260\u0003\u0002\u0002\u0002\u0261\u0262\u0003",
+ "\u0002\u0002\u0002\u0262\u0263\u0003\u0002\u0002\u0002\u0263\u0264\u0007",
+ "\u0019\u0002\u0002\u0264\u0265\u0005\u0180\u00c1\u0002\u0265\u0270\u0003",
+ "\u0002\u0002\u0002\u0266\u0267\u0007\u001a\u0002\u0002\u0267\u0268\u0005",
+ "\u01b8\u00dd\u0002\u0268\u026a\u0007\u001b\u0002\u0002\u0269\u026b\u0007",
+ "\u0018\u0002\u0002\u026a\u0269\u0003\u0002\u0002\u0002\u026a\u026b\u0003",
+ "\u0002\u0002\u0002\u026b\u026c\u0003\u0002\u0002\u0002\u026c\u026d\u0007",
+ "\u0019\u0002\u0002\u026d\u026e\u0005\u0180\u00c1\u0002\u026e\u0270\u0003",
+ "\u0002\u0002\u0002\u026f\u025f\u0003\u0002\u0002\u0002\u026f\u0266\u0003",
+ "\u0002\u0002\u0002\u0270\u001f\u0003\u0002\u0002\u0002\u0271\u0272\u0007",
+ "\u001a\u0002\u0002\u0272\u0277\u0005\u01b8\u00dd\u0002\u0273\u0274\u0007",
+ "\u0017\u0002\u0002\u0274\u0276\u0005\u01b8\u00dd\u0002\u0275\u0273\u0003",
+ "\u0002\u0002\u0002\u0276\u0279\u0003\u0002\u0002\u0002\u0277\u0275\u0003",
+ "\u0002\u0002\u0002\u0277\u0278\u0003\u0002\u0002\u0002\u0278\u027a\u0003",
+ "\u0002\u0002\u0002\u0279\u0277\u0003\u0002\u0002\u0002\u027a\u027c\u0007",
+ "\u001b\u0002\u0002\u027b\u027d\u0007\u0018\u0002\u0002\u027c\u027b\u0003",
+ "\u0002\u0002\u0002\u027c\u027d\u0003\u0002\u0002\u0002\u027d\u027e\u0003",
+ "\u0002\u0002\u0002\u027e\u027f\u0007\u0019\u0002\u0002\u027f\u0280\u0007",
+ "\u001a\u0002\u0002\u0280\u0285\u0005\u0180\u00c1\u0002\u0281\u0282\u0007",
+ "\u0017\u0002\u0002\u0282\u0284\u0005\u0180\u00c1\u0002\u0283\u0281\u0003",
+ "\u0002\u0002\u0002\u0284\u0287\u0003\u0002\u0002\u0002\u0285\u0283\u0003",
+ "\u0002\u0002\u0002\u0285\u0286\u0003\u0002\u0002\u0002\u0286\u0288\u0003",
+ "\u0002\u0002\u0002\u0287\u0285\u0003\u0002\u0002\u0002\u0288\u0289\u0007",
+ "\u001b\u0002\u0002\u0289!\u0003\u0002\u0002\u0002\u028a\u0297\u0005",
+ "\u01b8\u00dd\u0002\u028b\u028c\u0007\u001a\u0002\u0002\u028c\u0291\u0005",
+ "\u01b8\u00dd\u0002\u028d\u028e\u0007\u0017\u0002\u0002\u028e\u0290\u0005",
+ "\u01b8\u00dd\u0002\u028f\u028d\u0003\u0002\u0002\u0002\u0290\u0293\u0003",
+ "\u0002\u0002\u0002\u0291\u028f\u0003\u0002\u0002\u0002\u0291\u0292\u0003",
+ "\u0002\u0002\u0002\u0292\u0294\u0003\u0002\u0002\u0002\u0293\u0291\u0003",
+ "\u0002\u0002\u0002\u0294\u0295\u0007\u001b\u0002\u0002\u0295\u0297\u0003",
+ "\u0002\u0002\u0002\u0296\u028a\u0003\u0002\u0002\u0002\u0296\u028b\u0003",
+ "\u0002\u0002\u0002\u0297\u0299\u0003\u0002\u0002\u0002\u0298\u029a\u0007",
+ "\u0018\u0002\u0002\u0299\u0298\u0003\u0002\u0002\u0002\u0299\u029a\u0003",
+ "\u0002\u0002\u0002\u029a\u029b\u0003\u0002\u0002\u0002\u029b\u029c\u0007",
+ "\u0019\u0002\u0002\u029c\u029d\u0007\u001a\u0002\u0002\u029d\u029e\u0005",
+ "\u011a\u008e\u0002\u029e\u029f\u0007\u001b\u0002\u0002\u029f#\u0003",
+ "\u0002\u0002\u0002\u02a0\u02a1\u0007\u001c\u0002\u0002\u02a1\u02a2\u0005",
+ "\u01b8\u00dd\u0002\u02a2\u02a3\u0007\u001d\u0002\u0002\u02a3\u02a7\u0007",
+ "\u001e\u0002\u0002\u02a4\u02a5\u0007\u001f\u0002\u0002\u02a5\u02a8\u0007",
+ "\u0016\u0002\u0002\u02a6\u02a8\u0007 \u0002\u0002\u02a7\u02a4\u0003",
+ "\u0002\u0002\u0002\u02a7\u02a6\u0003\u0002\u0002\u0002\u02a8\u02a9\u0003",
+ "\u0002\u0002\u0002\u02a9\u02aa\u0005\u01b8\u00dd\u0002\u02aa%\u0003",
+ "\u0002\u0002\u0002\u02ab\u02ae\u0007!\u0002\u0002\u02ac\u02ad\u0007",
+ "\u001f\u0002\u0002\u02ad\u02af\u0007\u0016\u0002\u0002\u02ae\u02ac\u0003",
+ "\u0002\u0002\u0002\u02ae\u02af\u0003\u0002\u0002\u0002\u02af\u02b0\u0003",
+ "\u0002\u0002\u0002\u02b0\u02b1\t\u0004\u0002\u0002\u02b1\u02b2\u0007",
+ "\u001a\u0002\u0002\u02b2\u02b7\u0005\u01b8\u00dd\u0002\u02b3\u02b4\u0007",
+ "\u0017\u0002\u0002\u02b4\u02b6\u0005\u01b8\u00dd\u0002\u02b5\u02b3\u0003",
+ "\u0002\u0002\u0002\u02b6\u02b9\u0003\u0002\u0002\u0002\u02b7\u02b5\u0003",
+ "\u0002\u0002\u0002\u02b7\u02b8\u0003\u0002\u0002\u0002\u02b8\u02ba\u0003",
+ "\u0002\u0002\u0002\u02b9\u02b7\u0003\u0002\u0002\u0002\u02ba\u02bb\u0007",
+ "\u001b\u0002\u0002\u02bb\u02bc\u0007$\u0002\u0002\u02bc\u02bd\u0007",
+ " \u0002\u0002\u02bd\u02be\u0005\u01b8\u00dd\u0002\u02be\'\u0003\u0002",
+ "\u0002\u0002\u02bf\u02c0\u0007\u000e\u0002\u0002\u02c0\u02c1\u0007%",
+ "\u0002\u0002\u02c1)\u0003\u0002\u0002\u0002\u02c2\u02c3\u0007&\u0002",
+ "\u0002\u02c3+\u0003\u0002\u0002\u0002\u02c4\u02c5\u0007\'\u0002\u0002",
+ "\u02c5\u02cc\u0005\u01b8\u00dd\u0002\u02c6\u02c8\u0007\u001a\u0002\u0002",
+ "\u02c7\u02c9\u0005\u01a0\u00d1\u0002\u02c8\u02c7\u0003\u0002\u0002\u0002",
+ "\u02c8\u02c9\u0003\u0002\u0002\u0002\u02c9\u02ca\u0003\u0002\u0002\u0002",
+ "\u02ca\u02cd\u0007\u001b\u0002\u0002\u02cb\u02cd\u0005\u01a0\u00d1\u0002",
+ "\u02cc\u02c6\u0003\u0002\u0002\u0002\u02cc\u02cb\u0003\u0002\u0002\u0002",
+ "\u02cc\u02cd\u0003\u0002\u0002\u0002\u02cd-\u0003\u0002\u0002\u0002",
+ "\u02ce\u02cf\u0007(\u0002\u0002\u02cf\u02d4\u00054\u001b\u0002\u02d0",
+ "\u02d1\u0007\u0017\u0002\u0002\u02d1\u02d3\u00054\u001b\u0002\u02d2",
+ "\u02d0\u0003\u0002\u0002\u0002\u02d3\u02d6\u0003\u0002\u0002\u0002\u02d4",
+ "\u02d2\u0003\u0002\u0002\u0002\u02d4\u02d5\u0003\u0002\u0002\u0002\u02d5",
+ "/\u0003\u0002\u0002\u0002\u02d6\u02d4\u0003\u0002\u0002\u0002\u02d7",
+ "\u02d8\u0007(\u0002\u0002\u02d8\u02d9\u00054\u001b\u0002\u02d9\u02df",
+ "\u0007\u000f\u0002\u0002\u02da\u02db\u00054\u001b\u0002\u02db\u02dc",
+ "\u0007\u000f\u0002\u0002\u02dc\u02de\u0003\u0002\u0002\u0002\u02dd\u02da",
+ "\u0003\u0002\u0002\u0002\u02de\u02e1\u0003\u0002\u0002\u0002\u02df\u02dd",
+ "\u0003\u0002\u0002\u0002\u02df\u02e0\u0003\u0002\u0002\u0002\u02e01",
+ "\u0003\u0002\u0002\u0002\u02e1\u02df\u0003\u0002\u0002\u0002\u02e2\u02e3",
+ "\u00054\u001b\u0002\u02e3\u02e9\u0007\u000f\u0002\u0002\u02e4\u02e5",
+ "\u00054\u001b\u0002\u02e5\u02e6\u0007\u000f\u0002\u0002\u02e6\u02e8",
+ "\u0003\u0002\u0002\u0002\u02e7\u02e4\u0003\u0002\u0002\u0002\u02e8\u02eb",
+ "\u0003\u0002\u0002\u0002\u02e9\u02e7\u0003\u0002\u0002\u0002\u02e9\u02ea",
+ "\u0003\u0002\u0002\u0002\u02ea3\u0003\u0002\u0002\u0002\u02eb\u02e9",
+ "\u0003\u0002\u0002\u0002\u02ec\u02f2\u0005:\u001e\u0002\u02ed\u02f2",
+ "\u00058\u001d\u0002\u02ee\u02f2\u0005@!\u0002\u02ef\u02f2\u00056\u001c",
+ "\u0002\u02f0\u02f2\u0005B\"\u0002\u02f1\u02ec\u0003\u0002\u0002\u0002",
+ "\u02f1\u02ed\u0003\u0002\u0002\u0002\u02f1\u02ee\u0003\u0002\u0002\u0002",
+ "\u02f1\u02ef\u0003\u0002\u0002\u0002\u02f1\u02f0\u0003\u0002\u0002\u0002",
+ "\u02f25\u0003\u0002\u0002\u0002\u02f3\u02f8\u0005\u01b8\u00dd\u0002",
+ "\u02f4\u02f5\u0007\u0017\u0002\u0002\u02f5\u02f7\u0005\u01b8\u00dd\u0002",
+ "\u02f6\u02f4\u0003\u0002\u0002\u0002\u02f7\u02fa\u0003\u0002\u0002\u0002",
+ "\u02f8\u02f6\u0003\u0002\u0002\u0002\u02f8\u02f9\u0003\u0002\u0002\u0002",
+ "\u02f9\u02fc\u0003\u0002\u0002\u0002\u02fa\u02f8\u0003\u0002\u0002\u0002",
+ "\u02fb\u02fd\u0007)\u0002\u0002\u02fc\u02fb\u0003\u0002\u0002\u0002",
+ "\u02fc\u02fd\u0003\u0002\u0002\u0002\u02fd\u02fe\u0003\u0002\u0002\u0002",
+ "\u02fe\u0300\u0005x=\u0002\u02ff\u0301\u0005z>\u0002\u0300\u02ff\u0003",
+ "\u0002\u0002\u0002\u0300\u0301\u0003\u0002\u0002\u0002\u0301\u0305\u0003",
+ "\u0002\u0002\u0002\u0302\u0304\u0005|?\u0002\u0303\u0302\u0003\u0002",
+ "\u0002\u0002\u0304\u0307\u0003\u0002\u0002\u0002\u0305\u0303\u0003\u0002",
+ "\u0002\u0002\u0305\u0306\u0003\u0002\u0002\u0002\u0306\u0309\u0003\u0002",
+ "\u0002\u0002\u0307\u0305\u0003\u0002\u0002\u0002\u0308\u030a\u0005~",
+ "@\u0002\u0309\u0308\u0003\u0002\u0002\u0002\u0309\u030a\u0003\u0002",
+ "\u0002\u0002\u030a\u0317\u0003\u0002\u0002\u0002\u030b\u030c\u0005\u01b8",
+ "\u00dd\u0002\u030c\u030e\u0007*\u0002\u0002\u030d\u030f\u0007)\u0002",
+ "\u0002\u030e\u030d\u0003\u0002\u0002\u0002\u030e\u030f\u0003\u0002\u0002",
+ "\u0002\u030f\u0310\u0003\u0002\u0002\u0002\u0310\u0312\u0005x=\u0002",
+ "\u0311\u0313\u0005z>\u0002\u0312\u0311\u0003\u0002\u0002\u0002\u0312",
+ "\u0313\u0003\u0002\u0002\u0002\u0313\u0314\u0003\u0002\u0002\u0002\u0314",
+ "\u0315\u0005~@\u0002\u0315\u0317\u0003\u0002\u0002\u0002\u0316\u02f3",
+ "\u0003\u0002\u0002\u0002\u0316\u030b\u0003\u0002\u0002\u0002\u03177",
+ "\u0003\u0002\u0002\u0002\u0318\u0319\u0005\u01b8\u00dd\u0002\u0319\u031a",
+ "\u0007+\u0002\u0002\u031a9\u0003\u0002\u0002\u0002\u031b\u031c\u0007",
+ "\u001d\u0002\u0002\u031c\u0321\u0005\u01b8\u00dd\u0002\u031d\u031e\u0005",
+ "\u01b8\u00dd\u0002\u031e\u031f\u0007\u001d\u0002\u0002\u031f\u0321\u0003",
+ "\u0002\u0002\u0002\u0320\u031b\u0003\u0002\u0002\u0002\u0320\u031d\u0003",
+ "\u0002\u0002\u0002\u0321\u0324\u0003\u0002\u0002\u0002\u0322\u0325\u0005",
+ "<\u001f\u0002\u0323\u0325\u0005> \u0002\u0324\u0322\u0003\u0002\u0002",
+ "\u0002\u0324\u0323\u0003\u0002\u0002\u0002\u0324\u0325\u0003\u0002\u0002",
+ "\u0002\u0325\u0326\u0003\u0002\u0002\u0002\u0326\u0329\t\u0005\u0002",
+ "\u0002\u0327\u032a\u0005\u011a\u008e\u0002\u0328\u032a\u0005\u0180\u00c1",
+ "\u0002\u0329\u0327\u0003\u0002\u0002\u0002\u0329\u0328\u0003\u0002\u0002",
+ "\u0002\u032a;\u0003\u0002\u0002\u0002\u032b\u032c\u0007$\u0002\u0002",
+ "\u032c\u032e\u0007-\u0002\u0002\u032d\u032f\u0007.\u0002\u0002\u032e",
+ "\u032d\u0003\u0002\u0002\u0002\u032e\u032f\u0003\u0002\u0002\u0002\u032f",
+ "\u0332\u0003\u0002\u0002\u0002\u0330\u0331\u0007/\u0002\u0002\u0331",
+ "\u0333\t\u0006\u0002\u0002\u0332\u0330\u0003\u0002\u0002\u0002\u0332",
+ "\u0333\u0003\u0002\u0002\u0002\u0333=\u0003\u0002\u0002\u0002\u0334",
+ "\u0335\u00072\u0002\u0002\u0335\u0336\u0007-\u0002\u0002\u0336?\u0003",
+ "\u0002\u0002\u0002\u0337\u0338\t\u0007\u0002\u0002\u0338\u0339\u0007",
+ "5\u0002\u0002\u0339\u033f\u0007\u001e\u0002\u0002\u033a\u0340\u0007",
+ "6\u0002\u0002\u033b\u0340\u00077\u0002\u0002\u033c\u033d\u00078\u0002",
+ "\u0002\u033d\u0340\u00079\u0002\u0002\u033e\u0340\u0005\u01b8\u00dd",
+ "\u0002\u033f\u033a\u0003\u0002\u0002\u0002\u033f\u033b\u0003\u0002\u0002",
+ "\u0002\u033f\u033c\u0003\u0002\u0002\u0002\u033f\u033e\u0003\u0002\u0002",
+ "\u0002\u0340\u0341\u0003\u0002\u0002\u0002\u0341\u0342\u0005\b\u0005",
+ "\u0002\u0342A\u0003\u0002\u0002\u0002\u0343\u0345\u0007:\u0002\u0002",
+ "\u0344\u0343\u0003\u0002\u0002\u0002\u0344\u0345\u0003\u0002\u0002\u0002",
+ "\u0345\u0346\u0003\u0002\u0002\u0002\u0346\u0347\u0007;\u0002\u0002",
+ "\u0347\u0348\u0007<\u0002\u0002\u0348\u034a\u0005\u01b8\u00dd\u0002",
+ "\u0349\u034b\u0005V,\u0002\u034a\u0349\u0003\u0002\u0002\u0002\u034a",
+ "\u034b\u0003\u0002\u0002\u0002\u034b\u034c\u0003\u0002\u0002\u0002\u034c",
+ "\u034d\u0005H%\u0002\u034dC\u0003\u0002\u0002\u0002\u034e\u034f\u0007",
+ "=\u0002\u0002\u034f\u0353\u0007<\u0002\u0002\u0350\u0351\u0007>\u0002",
+ "\u0002\u0351\u0352\u00078\u0002\u0002\u0352\u0354\u0007?\u0002\u0002",
+ "\u0353\u0350\u0003\u0002\u0002\u0002\u0353\u0354\u0003\u0002\u0002\u0002",
+ "\u0354\u0355\u0003\u0002\u0002\u0002\u0355\u0357\u0005\u014a\u00a6\u0002",
+ "\u0356\u0358\u0005V,\u0002\u0357\u0356\u0003\u0002\u0002\u0002\u0357",
+ "\u0358\u0003\u0002\u0002\u0002\u0358\u0359\u0003\u0002\u0002\u0002\u0359",
+ "\u035a\u0005H%\u0002\u035aE\u0003\u0002\u0002\u0002\u035b\u0362\u0007",
+ "=\u0002\u0002\u035c\u035d\u0007@\u0002\u0002\u035d\u0363\u0007;\u0002",
+ "\u0002\u035e\u0360\t\b\u0002\u0002\u035f\u035e\u0003\u0002\u0002\u0002",
+ "\u035f\u0360\u0003\u0002\u0002\u0002\u0360\u0361\u0003\u0002\u0002\u0002",
+ "\u0361\u0363\u0007B\u0002\u0002\u0362\u035c\u0003\u0002\u0002\u0002",
+ "\u0362\u035f\u0003\u0002\u0002\u0002\u0363\u0364\u0003\u0002\u0002\u0002",
+ "\u0364\u0365\u0007<\u0002\u0002\u0365\u0367\u0005\u01b8\u00dd\u0002",
+ "\u0366\u0368\u0005V,\u0002\u0367\u0366\u0003\u0002\u0002\u0002\u0367",
+ "\u0368\u0003\u0002\u0002\u0002\u0368\u0369\u0003\u0002\u0002\u0002\u0369",
+ "\u036a\u0005H%\u0002\u036aG\u0003\u0002\u0002\u0002\u036b\u036d\u0007",
+ ")\u0002\u0002\u036c\u036b\u0003\u0002\u0002\u0002\u036c\u036d\u0003",
+ "\u0002\u0002\u0002\u036d\u036e\u0003\u0002\u0002\u0002\u036e\u036f\u0007",
+ "\u001a\u0002\u0002\u036f\u0370\u0005\u011a\u008e\u0002\u0370\u0371\u0007",
+ "\u001b\u0002\u0002\u0371\u037d\u0003\u0002\u0002\u0002\u0372\u0374\u0007",
+ ")\u0002\u0002\u0373\u0372\u0003\u0002\u0002\u0002\u0373\u0374\u0003",
+ "\u0002\u0002\u0002\u0374\u0375\u0003\u0002\u0002\u0002\u0375\u037d\u0005",
+ "\u011a\u008e\u0002\u0376\u0377\u0007\u001a\u0002\u0002\u0377\u0378\u0005",
+ "J&\u0002\u0378\u0379\u0007\u001b\u0002\u0002\u0379\u037d\u0003\u0002",
+ "\u0002\u0002\u037a\u037b\u0007C\u0002\u0002\u037b\u037d\u0005\u014a",
+ "\u00a6\u0002\u037c\u036c\u0003\u0002\u0002\u0002\u037c\u0373\u0003\u0002",
+ "\u0002\u0002\u037c\u0376\u0003\u0002\u0002\u0002\u037c\u037a\u0003\u0002",
+ "\u0002\u0002\u037d\u037f\u0003\u0002\u0002\u0002\u037e\u0380\u0005\\",
+ "/\u0002\u037f\u037e\u0003\u0002\u0002\u0002\u037f\u0380\u0003\u0002",
+ "\u0002\u0002\u0380I\u0003\u0002\u0002\u0002\u0381\u0386\u0005L\'\u0002",
+ "\u0382\u0383\u0007\u0017\u0002\u0002\u0383\u0385\u0005L\'\u0002\u0384",
+ "\u0382\u0003\u0002\u0002\u0002\u0385\u0388\u0003\u0002\u0002\u0002\u0386",
+ "\u0384\u0003\u0002\u0002\u0002\u0386\u0387\u0003\u0002\u0002\u0002\u0387",
+ "K\u0003\u0002\u0002\u0002\u0388\u0386\u0003\u0002\u0002\u0002\u0389",
+ "\u038a\u0005N(\u0002\u038a\u038c\u0005x=\u0002\u038b\u038d\u0005z>\u0002",
+ "\u038c\u038b\u0003\u0002\u0002\u0002\u038c\u038d\u0003\u0002\u0002\u0002",
+ "\u038d\u0391\u0003\u0002\u0002\u0002\u038e\u0390\u0005|?\u0002\u038f",
+ "\u038e\u0003\u0002\u0002\u0002\u0390\u0393\u0003\u0002\u0002\u0002\u0391",
+ "\u038f\u0003\u0002\u0002\u0002\u0391\u0392\u0003\u0002\u0002\u0002\u0392",
+ "\u0397\u0003\u0002\u0002\u0002\u0393\u0391\u0003\u0002\u0002\u0002\u0394",
+ "\u0396\u0005P)\u0002\u0395\u0394\u0003\u0002\u0002\u0002\u0396\u0399",
+ "\u0003\u0002\u0002\u0002\u0397\u0395\u0003\u0002\u0002\u0002\u0397\u0398",
+ "\u0003\u0002\u0002\u0002\u0398\u03a0\u0003\u0002\u0002\u0002\u0399\u0397",
+ "\u0003\u0002\u0002\u0002\u039a\u039b\u0007D\u0002\u0002\u039b\u039d",
+ "\u0005\u01b8\u00dd\u0002\u039c\u039a\u0003\u0002\u0002\u0002\u039c\u039d",
+ "\u0003\u0002\u0002\u0002\u039d\u039e\u0003\u0002\u0002\u0002\u039e\u03a0",
+ "\u0005R*\u0002\u039f\u0389\u0003\u0002\u0002\u0002\u039f\u039c\u0003",
+ "\u0002\u0002\u0002\u03a0M\u0003\u0002\u0002\u0002\u03a1\u03a2\u0005",
+ "\u01b8\u00dd\u0002\u03a2O\u0003\u0002\u0002\u0002\u03a3\u03c4\u0005",
+ "~@\u0002\u03a4\u03a6\u00078\u0002\u0002\u03a5\u03a4\u0003\u0002\u0002",
+ "\u0002\u03a5\u03a6\u0003\u0002\u0002\u0002\u03a6\u03a7\u0003\u0002\u0002",
+ "\u0002\u03a7\u03c4\u0007\u0015\u0002\u0002\u03a8\u03a9\u0007E\u0002",
+ "\u0002\u03a9\u03c4\u0007F\u0002\u0002\u03aa\u03c4\u0007G\u0002\u0002",
+ "\u03ab\u03ac\u0007H\u0002\u0002\u03ac\u03ad\u0005\u014a\u00a6\u0002",
+ "\u03ad\u03ae\u0007\u001a\u0002\u0002\u03ae\u03af\u0005\u01b8\u00dd\u0002",
+ "\u03af\u03b3\u0007\u001b\u0002\u0002\u03b0\u03b2\u0005T+\u0002\u03b1",
+ "\u03b0\u0003\u0002\u0002\u0002\u03b2\u03b5\u0003\u0002\u0002\u0002\u03b3",
+ "\u03b1\u0003\u0002\u0002\u0002\u03b3\u03b4\u0003\u0002\u0002\u0002\u03b4",
+ "\u03c4\u0003\u0002\u0002\u0002\u03b5\u03b3\u0003\u0002\u0002\u0002\u03b6",
+ "\u03b7\u0007I\u0002\u0002\u03b7\u03b8\u0007\u001a\u0002\u0002\u03b8",
+ "\u03bd\u0007J\u0002\u0002\u03b9\u03ba\u0007\u0017\u0002\u0002\u03ba",
+ "\u03bc\u0007J\u0002\u0002\u03bb\u03b9\u0003\u0002\u0002\u0002\u03bc",
+ "\u03bf\u0003\u0002\u0002\u0002\u03bd\u03bb\u0003\u0002\u0002\u0002\u03bd",
+ "\u03be\u0003\u0002\u0002\u0002\u03be\u03c0\u0003\u0002\u0002\u0002\u03bf",
+ "\u03bd\u0003\u0002\u0002\u0002\u03c0\u03c4\u0007\u001b\u0002\u0002\u03c1",
+ "\u03c4\u0007K\u0002\u0002\u03c2\u03c4\u0007L\u0002\u0002\u03c3\u03a3",
+ "\u0003\u0002\u0002\u0002\u03c3\u03a5\u0003\u0002\u0002\u0002\u03c3\u03a8",
+ "\u0003\u0002\u0002\u0002\u03c3\u03aa\u0003\u0002\u0002\u0002\u03c3\u03ab",
+ "\u0003\u0002\u0002\u0002\u03c3\u03b6\u0003\u0002\u0002\u0002\u03c3\u03c1",
+ "\u0003\u0002\u0002\u0002\u03c3\u03c2\u0003\u0002\u0002\u0002\u03c4Q",
+ "\u0003\u0002\u0002\u0002\u03c5\u03c6\u0007E\u0002\u0002\u03c6\u03c8",
+ "\u0007F\u0002\u0002\u03c7\u03c9\u0007M\u0002\u0002\u03c8\u03c7\u0003",
+ "\u0002\u0002\u0002\u03c8\u03c9\u0003\u0002\u0002\u0002\u03c9\u03ca\u0003",
+ "\u0002\u0002\u0002\u03ca\u03cb\u0007\u001a\u0002\u0002\u03cb\u03cd\u0005",
+ "\u01b8\u00dd\u0002\u03cc\u03ce\t\t\u0002\u0002\u03cd\u03cc\u0003\u0002",
+ "\u0002\u0002\u03cd\u03ce\u0003\u0002\u0002\u0002\u03ce\u03d6\u0003\u0002",
+ "\u0002\u0002\u03cf\u03d0\u0007\u0017\u0002\u0002\u03d0\u03d2\u0005\u01b8",
+ "\u00dd\u0002\u03d1\u03d3\t\t\u0002\u0002\u03d2\u03d1\u0003\u0002\u0002",
+ "\u0002\u03d2\u03d3\u0003\u0002\u0002\u0002\u03d3\u03d5\u0003\u0002\u0002",
+ "\u0002\u03d4\u03cf\u0003\u0002\u0002\u0002\u03d5\u03d8\u0003\u0002\u0002",
+ "\u0002\u03d6\u03d4\u0003\u0002\u0002\u0002\u03d6\u03d7\u0003\u0002\u0002",
+ "\u0002\u03d7\u03d9\u0003\u0002\u0002\u0002\u03d8\u03d6\u0003\u0002\u0002",
+ "\u0002\u03d9\u03db\u0007\u001b\u0002\u0002\u03da\u03dc\u0007L\u0002",
+ "\u0002\u03db\u03da\u0003\u0002\u0002\u0002\u03db\u03dc\u0003\u0002\u0002",
+ "\u0002\u03dc\u03de\u0003\u0002\u0002\u0002\u03dd\u03df\u0005\u00eex",
+ "\u0002\u03de\u03dd\u0003\u0002\u0002\u0002\u03de\u03df\u0003\u0002\u0002",
+ "\u0002\u03df\u03ff\u0003\u0002\u0002\u0002\u03e0\u03e1\u0007P\u0002",
+ "\u0002\u03e1\u03e2\u0007F\u0002\u0002\u03e2\u03e3\u0007\u001a\u0002",
+ "\u0002\u03e3\u03e8\u0005\u01b8\u00dd\u0002\u03e4\u03e5\u0007\u0017\u0002",
+ "\u0002\u03e5\u03e7\u0005\u01b8\u00dd\u0002\u03e6\u03e4\u0003\u0002\u0002",
+ "\u0002\u03e7\u03ea\u0003\u0002\u0002\u0002\u03e8\u03e6\u0003\u0002\u0002",
+ "\u0002\u03e8\u03e9\u0003\u0002\u0002\u0002\u03e9\u03eb\u0003\u0002\u0002",
+ "\u0002\u03ea\u03e8\u0003\u0002\u0002\u0002\u03eb\u03ec\u0007\u001b\u0002",
+ "\u0002\u03ec\u03ed\u0007H\u0002\u0002\u03ed\u03ee\u0005\u014a\u00a6",
+ "\u0002\u03ee\u03ef\u0007\u001a\u0002\u0002\u03ef\u03f4\u0005\u01b8\u00dd",
+ "\u0002\u03f0\u03f1\u0007\u0017\u0002\u0002\u03f1\u03f3\u0005\u01b8\u00dd",
+ "\u0002\u03f2\u03f0\u0003\u0002\u0002\u0002\u03f3\u03f6\u0003\u0002\u0002",
+ "\u0002\u03f4\u03f2\u0003\u0002\u0002\u0002\u03f4\u03f5\u0003\u0002\u0002",
+ "\u0002\u03f5\u03f7\u0003\u0002\u0002\u0002\u03f6\u03f4\u0003\u0002\u0002",
+ "\u0002\u03f7\u03fb\u0007\u001b\u0002\u0002\u03f8\u03fa\u0005T+\u0002",
+ "\u03f9\u03f8\u0003\u0002\u0002\u0002\u03fa\u03fd\u0003\u0002\u0002\u0002",
+ "\u03fb\u03f9\u0003\u0002\u0002\u0002\u03fb\u03fc\u0003\u0002\u0002\u0002",
+ "\u03fc\u03ff\u0003\u0002\u0002\u0002\u03fd\u03fb\u0003\u0002\u0002\u0002",
+ "\u03fe\u03c5\u0003\u0002\u0002\u0002\u03fe\u03e0\u0003\u0002\u0002\u0002",
+ "\u03ffS\u0003\u0002\u0002\u0002\u0400\u0401\u0007Q\u0002\u0002\u0401",
+ "\u040a\t\n\u0002\u0002\u0402\u0403\u0007T\u0002\u0002\u0403\u040b\u0007",
+ "U\u0002\u0002\u0404\u040b\u0007V\u0002\u0002\u0405\u0406\u0007\u0016",
+ "\u0002\u0002\u0406\u040b\u0007\u0015\u0002\u0002\u0407\u0408\u0007\u0016",
+ "\u0002\u0002\u0408\u040b\u0007W\u0002\u0002\u0409\u040b\u0007X\u0002",
+ "\u0002\u040a\u0402\u0003\u0002\u0002\u0002\u040a\u0404\u0003\u0002\u0002",
+ "\u0002\u040a\u0405\u0003\u0002\u0002\u0002\u040a\u0407\u0003\u0002\u0002",
+ "\u0002\u040a\u0409\u0003\u0002\u0002\u0002\u040bU\u0003\u0002\u0002",
+ "\u0002\u040c\u040e\u0005X-\u0002\u040d\u040c\u0003\u0002\u0002\u0002",
+ "\u040e\u040f\u0003\u0002\u0002\u0002\u040f\u040d\u0003\u0002\u0002\u0002",
+ "\u040f\u0410\u0003\u0002\u0002\u0002\u0410W\u0003\u0002\u0002\u0002",
+ "\u0411\u0412\u0007\u0017\u0002\u0002\u0412\u0415\u0005Z.\u0002\u0413",
+ "\u0415\u0005f4\u0002\u0414\u0411\u0003\u0002\u0002\u0002\u0414\u0413",
+ "\u0003\u0002\u0002\u0002\u0415Y\u0003\u0002\u0002\u0002\u0416\u0418",
+ "\u0007T\u0002\u0002\u0417\u0416\u0003\u0002\u0002\u0002\u0417\u0418",
+ "\u0003\u0002\u0002\u0002\u0418\u0419\u0003\u0002\u0002\u0002\u0419\u041a",
+ "\t\u000b\u0002\u0002\u041a[\u0003\u0002\u0002\u0002\u041b\u041d\u0005",
+ "^0\u0002\u041c\u041b\u0003\u0002\u0002\u0002\u041d\u041e\u0003\u0002",
+ "\u0002\u0002\u041e\u041c\u0003\u0002\u0002\u0002\u041e\u041f\u0003\u0002",
+ "\u0002\u0002\u041f]\u0003\u0002\u0002\u0002\u0420\u0421\u0007Q\u0002",
+ "\u0002\u0421\u0422\u0007[\u0002\u0002\u0422\u0423\t\f\u0002\u0002\u0423",
+ "\u042b\u0007]\u0002\u0002\u0424\u042b\u0005`1\u0002\u0425\u042b\u0005",
+ "b2\u0002\u0426\u042b\u0005d3\u0002\u0427\u042b\u0005f4\u0002\u0428\u042b",
+ "\u0005l7\u0002\u0429\u042b\u0005n8\u0002\u042a\u0420\u0003\u0002\u0002",
+ "\u0002\u042a\u0424\u0003\u0002\u0002\u0002\u042a\u0425\u0003\u0002\u0002",
+ "\u0002\u042a\u0426\u0003\u0002\u0002\u0002\u042a\u0427\u0003\u0002\u0002",
+ "\u0002\u042a\u0428\u0003\u0002\u0002\u0002\u042a\u0429\u0003\u0002\u0002",
+ "\u0002\u042b_\u0003\u0002\u0002\u0002\u042c\u042d\u0007^\u0002\u0002",
+ "\u042d\u042e\u0007_\u0002\u0002\u042e\u043f\t\r\u0002\u0002\u042f\u0430",
+ "\t\u000e\u0002\u0002\u0430\u043f\u0007J\u0002\u0002\u0431\u043f\u0007",
+ "f\u0002\u0002\u0432\u043f\t\u000f\u0002\u0002\u0433\u0434\u0007i\u0002",
+ "\u0002\u0434\u0437\u0007\u001a\u0002\u0002\u0435\u0438\u0005\u01b8\u00dd",
+ "\u0002\u0436\u0438\u0007J\u0002\u0002\u0437\u0435\u0003\u0002\u0002",
+ "\u0002\u0437\u0436\u0003\u0002\u0002\u0002\u0438\u0439\u0003\u0002\u0002",
+ "\u0002\u0439\u0437\u0003\u0002\u0002\u0002\u0439\u043a\u0003\u0002\u0002",
+ "\u0002\u043a\u043b\u0003\u0002\u0002\u0002\u043b\u043f\u0007\u001b\u0002",
+ "\u0002\u043c\u043d\u0007j\u0002\u0002\u043d\u043f\u0005\u01b8\u00dd",
+ "\u0002\u043e\u042c\u0003\u0002\u0002\u0002\u043e\u042f\u0003\u0002\u0002",
+ "\u0002\u043e\u0431\u0003\u0002\u0002\u0002\u043e\u0432\u0003\u0002\u0002",
+ "\u0002\u043e\u0433\u0003\u0002\u0002\u0002\u043e\u043c\u0003\u0002\u0002",
+ "\u0002\u043fa\u0003\u0002\u0002\u0002\u0440\u0442\u0007k\u0002\u0002",
+ "\u0441\u0440\u0003\u0002\u0002\u0002\u0441\u0442\u0003\u0002\u0002\u0002",
+ "\u0442\u0443\u0003\u0002\u0002\u0002\u0443\u0444\u0007l\u0002\u0002",
+ "\u0444\u0462\u0005\u01b8\u00dd\u0002\u0445\u0446\u0007$\u0002\u0002",
+ "\u0446\u0462\u0007m\u0002\u0002\u0447\u0448\u0007n\u0002\u0002\u0448",
+ "\u0449\u0007o\u0002\u0002\u0449\u044a\u0007p\u0002\u0002\u044a\u044b",
+ "\u0007\u001a\u0002\u0002\u044b\u0450\u0005\u01b8\u00dd\u0002\u044c\u044d",
+ "\u0007\u0017\u0002\u0002\u044d\u044f\u0005\u01b8\u00dd\u0002\u044e\u044c",
+ "\u0003\u0002\u0002\u0002\u044f\u0452\u0003\u0002\u0002\u0002\u0450\u044e",
+ "\u0003\u0002\u0002\u0002\u0450\u0451\u0003\u0002\u0002\u0002\u0451\u0453",
+ "\u0003\u0002\u0002\u0002\u0452\u0450\u0003\u0002\u0002\u0002\u0453\u0454",
+ "\u0007\u001b\u0002\u0002\u0454\u0462\u0003\u0002\u0002\u0002\u0455\u0457",
+ "\u00078\u0002\u0002\u0456\u0455\u0003\u0002\u0002\u0002\u0456\u0457",
+ "\u0003\u0002\u0002\u0002\u0457\u0458\u0003\u0002\u0002\u0002\u0458\u0462",
+ "\u0007q\u0002\u0002\u0459\u045a\u0007r\u0002\u0002\u045a\u0462\t\u0010",
+ "\u0002\u0002\u045b\u045c\u0007t\u0002\u0002\u045c\u0462\u0007.\u0002",
+ "\u0002\u045d\u045e\u0007$\u0002\u0002\u045e\u045f\u0007V\u0002\u0002",
+ "\u045f\u0460\u0007Q\u0002\u0002\u0460\u0462\u0007u\u0002\u0002\u0461",
+ "\u0441\u0003\u0002\u0002\u0002\u0461\u0445\u0003\u0002\u0002\u0002\u0461",
+ "\u0447\u0003\u0002\u0002\u0002\u0461\u0456\u0003\u0002\u0002\u0002\u0461",
+ "\u0459\u0003\u0002\u0002\u0002\u0461\u045b\u0003\u0002\u0002\u0002\u0461",
+ "\u045d\u0003\u0002\u0002\u0002\u0462c\u0003\u0002\u0002\u0002\u0463",
+ "\u0465\u0007G\u0002\u0002\u0464\u0463\u0003\u0002\u0002\u0002\u0464",
+ "\u0465\u0003\u0002\u0002\u0002\u0465\u0466\u0003\u0002\u0002\u0002\u0466",
+ "\u0467\u0007E\u0002\u0002\u0467\u0468\u0007k\u0002\u0002\u0468\u0469",
+ "\u0007\u001a\u0002\u0002\u0469\u046e\u0005\u01b8\u00dd\u0002\u046a\u046b",
+ "\u0007\u0017\u0002\u0002\u046b\u046d\u0005\u01b8\u00dd\u0002\u046c\u046a",
+ "\u0003\u0002\u0002\u0002\u046d\u0470\u0003\u0002\u0002\u0002\u046e\u046c",
+ "\u0003\u0002\u0002\u0002\u046e\u046f\u0003\u0002\u0002\u0002\u046f\u0471",
+ "\u0003\u0002\u0002\u0002\u0470\u046e\u0003\u0002\u0002\u0002\u0471\u0472",
+ "\u0007\u001b\u0002\u0002\u0472\u0476\u0003\u0002\u0002\u0002\u0473\u0474",
+ "\u0007$\u0002\u0002\u0474\u0476\u0007v\u0002\u0002\u0475\u0464\u0003",
+ "\u0002\u0002\u0002\u0475\u0473\u0003\u0002\u0002\u0002\u0476e\u0003",
+ "\u0002\u0002\u0002\u0477\u047c\u0005h5\u0002\u0478\u0479\u0007w\u0002",
+ "\u0002\u0479\u047a\u0007)\u0002\u0002\u047a\u047c\u0005\u01b8\u00dd",
+ "\u0002\u047b\u0477\u0003\u0002\u0002\u0002\u047b\u0478\u0003\u0002\u0002",
+ "\u0002\u047cg\u0003\u0002\u0002\u0002\u047d\u047e\u0007x\u0002\u0002",
+ "\u047e\u047f\u0007y\u0002\u0002\u047f\u0483\u0007z\u0002\u0002\u0480",
+ "\u0482\u0005j6\u0002\u0481\u0480\u0003\u0002\u0002\u0002\u0482\u0485",
+ "\u0003\u0002\u0002\u0002\u0483\u0481\u0003\u0002\u0002\u0002\u0483\u0484",
+ "\u0003\u0002\u0002\u0002\u0484i\u0003\u0002\u0002\u0002\u0485\u0483",
+ "\u0003\u0002\u0002\u0002\u0486\u0487\u0007{\u0002\u0002\u0487\u0488",
+ "\u0007|\u0002\u0002\u0488\u0489\u0007o\u0002\u0002\u0489\u048d\u0005",
+ "\u0180\u00c1\u0002\u048a\u048b\u0007}\u0002\u0002\u048b\u048c\u0007",
+ "o\u0002\u0002\u048c\u048e\u0005\u0180\u00c1\u0002\u048d\u048a\u0003",
+ "\u0002\u0002\u0002\u048d\u048e\u0003\u0002\u0002\u0002\u048e\u04a2\u0003",
+ "\u0002\u0002\u0002\u048f\u0490\u0007~\u0002\u0002\u0490\u0491\u0007",
+ "\u007f\u0002\u0002\u0491\u0492\u0007|\u0002\u0002\u0492\u0493\u0007",
+ "o\u0002\u0002\u0493\u04a2\u0005\u0180\u00c1\u0002\u0494\u0495\u0007",
+ "\u0080\u0002\u0002\u0495\u0496\u0007\u0081\u0002\u0002\u0496\u0497\u0007",
+ "|\u0002\u0002\u0497\u0498\u0007o\u0002\u0002\u0498\u04a2\u0005\u0180",
+ "\u00c1\u0002\u0499\u049a\u0007\u0082\u0002\u0002\u049a\u049b\u0007|",
+ "\u0002\u0002\u049b\u049c\u0007o\u0002\u0002\u049c\u04a2\u0005\u0180",
+ "\u00c1\u0002\u049d\u049e\u0007\u0015\u0002\u0002\u049e\u049f\u0007\u0083",
+ "\u0002\u0002\u049f\u04a0\u0007)\u0002\u0002\u04a0\u04a2\u0005\u0180",
+ "\u00c1\u0002\u04a1\u0486\u0003\u0002\u0002\u0002\u04a1\u048f\u0003\u0002",
+ "\u0002\u0002\u04a1\u0494\u0003\u0002\u0002\u0002\u04a1\u0499\u0003\u0002",
+ "\u0002\u0002\u04a1\u049d\u0003\u0002\u0002\u0002\u04a2k\u0003\u0002",
+ "\u0002\u0002\u04a3\u04a4\u0007Q\u0002\u0002\u04a4\u04a8\u0005\u01b8",
+ "\u00dd\u0002\u04a5\u04a6\u0007\u0084\u0002\u0002\u04a6\u04a8\u0005\u01b8",
+ "\u00dd\u0002\u04a7\u04a3\u0003\u0002\u0002\u0002\u04a7\u04a5\u0003\u0002",
+ "\u0002\u0002\u04a8m\u0003\u0002\u0002\u0002\u04a9\u04ab\u0007K\u0002",
+ "\u0002\u04aa\u04ac\u0007\u0019\u0002\u0002\u04ab\u04aa\u0003\u0002\u0002",
+ "\u0002\u04ab\u04ac\u0003\u0002\u0002\u0002\u04ac\u04ad\u0003\u0002\u0002",
+ "\u0002\u04ad\u04c5\u0005\u0180\u00c1\u0002\u04ae\u04b0\u0007\u0085\u0002",
+ "\u0002\u04af\u04b1\u0007\u0019\u0002\u0002\u04b0\u04af\u0003\u0002\u0002",
+ "\u0002\u04b0\u04b1\u0003\u0002\u0002\u0002\u04b1\u04b2\u0003\u0002\u0002",
+ "\u0002\u04b2\u04c5\u0005\u0180\u00c1\u0002\u04b3\u04b5\u0007W\u0002",
+ "\u0002\u04b4\u04b3\u0003\u0002\u0002\u0002\u04b4\u04b5\u0003\u0002\u0002",
+ "\u0002\u04b5\u04b9\u0003\u0002\u0002\u0002\u04b6\u04b7\u0007\u0086\u0002",
+ "\u0002\u04b7\u04ba\u0007\u0016\u0002\u0002\u04b8\u04ba\u0007\u0087\u0002",
+ "\u0002\u04b9\u04b6\u0003\u0002\u0002\u0002\u04b9\u04b8\u0003\u0002\u0002",
+ "\u0002\u04ba\u04bc\u0003\u0002\u0002\u0002\u04bb\u04bd\u0007\u0019\u0002",
+ "\u0002\u04bc\u04bb\u0003\u0002\u0002\u0002\u04bc\u04bd\u0003\u0002\u0002",
+ "\u0002\u04bd\u04be\u0003\u0002\u0002\u0002\u04be\u04c5\u0005\u0180\u00c1",
+ "\u0002\u04bf\u04c1\u0007\u0088\u0002\u0002\u04c0\u04c2\u0007\u0019\u0002",
+ "\u0002\u04c1\u04c0\u0003\u0002\u0002\u0002\u04c1\u04c2\u0003\u0002\u0002",
+ "\u0002\u04c2\u04c3\u0003\u0002\u0002\u0002\u04c3\u04c5\u0005\u0180\u00c1",
+ "\u0002\u04c4\u04a9\u0003\u0002\u0002\u0002\u04c4\u04ae\u0003\u0002\u0002",
+ "\u0002\u04c4\u04b4\u0003\u0002\u0002\u0002\u04c4\u04bf\u0003\u0002\u0002",
+ "\u0002\u04c5o\u0003\u0002\u0002\u0002\u04c6\u04c7\u0007\u0089\u0002",
+ "\u0002\u04c7\u04c8\u0007<\u0002\u0002\u04c8\u04c9\u0005\u014a\u00a6",
+ "\u0002\u04c9\u04ca\u0005r:\u0002\u04caq\u0003\u0002\u0002\u0002\u04cb",
+ "\u04cc\u0005t;\u0002\u04ccs\u0003\u0002\u0002\u0002\u04cd\u04d0\u0007",
+ "\u008a\u0002\u0002\u04ce\u04cf\u0007D\u0002\u0002\u04cf\u04d1\u0005",
+ "\u01b8\u00dd\u0002\u04d0\u04ce\u0003\u0002\u0002\u0002\u04d0\u04d1\u0003",
+ "\u0002\u0002\u0002\u04d1\u04d2\u0003\u0002\u0002\u0002\u04d2\u04d3\u0005",
+ "v<\u0002\u04d3u\u0003\u0002\u0002\u0002\u04d4\u04d5\u0007E\u0002\u0002",
+ "\u04d5\u04d7\u0007F\u0002\u0002\u04d6\u04d8\u0007M\u0002\u0002\u04d7",
+ "\u04d6\u0003\u0002\u0002\u0002\u04d7\u04d8\u0003\u0002\u0002\u0002\u04d8",
+ "\u04d9\u0003\u0002\u0002\u0002\u04d9\u04da\u0007\u001a\u0002\u0002\u04da",
+ "\u04dc\u0005\u01b8\u00dd\u0002\u04db\u04dd\t\t\u0002\u0002\u04dc\u04db",
+ "\u0003\u0002\u0002\u0002\u04dc\u04dd\u0003\u0002\u0002\u0002\u04dd\u04e5",
+ "\u0003\u0002\u0002\u0002\u04de\u04df\u0007\u0017\u0002\u0002\u04df\u04e1",
+ "\u0005\u01b8\u00dd\u0002\u04e0\u04e2\t\t\u0002\u0002\u04e1\u04e0\u0003",
+ "\u0002\u0002\u0002\u04e1\u04e2\u0003\u0002\u0002\u0002\u04e2\u04e4\u0003",
+ "\u0002\u0002\u0002\u04e3\u04de\u0003\u0002\u0002\u0002\u04e4\u04e7\u0003",
+ "\u0002\u0002\u0002\u04e5\u04e3\u0003\u0002\u0002\u0002\u04e5\u04e6\u0003",
+ "\u0002\u0002\u0002\u04e6\u04e8\u0003\u0002\u0002\u0002\u04e7\u04e5\u0003",
+ "\u0002\u0002\u0002\u04e8\u04ea\u0007\u001b\u0002\u0002\u04e9\u04eb\u0007",
+ "L\u0002\u0002\u04ea\u04e9\u0003\u0002\u0002\u0002\u04ea\u04eb\u0003",
+ "\u0002\u0002\u0002\u04eb\u04ed\u0003\u0002\u0002\u0002\u04ec\u04ee\u0005",
+ "\u00eex\u0002\u04ed\u04ec\u0003\u0002\u0002\u0002\u04ed\u04ee\u0003",
+ "\u0002\u0002\u0002\u04ee\u0513\u0003\u0002\u0002\u0002\u04ef\u04f0\u0007",
+ "P\u0002\u0002\u04f0\u04f1\u0007F\u0002\u0002\u04f1\u04f2\u0007\u001a",
+ "\u0002\u0002\u04f2\u04f7\u0005\u01b8\u00dd\u0002\u04f3\u04f4\u0007\u0017",
+ "\u0002\u0002\u04f4\u04f6\u0005\u01b8\u00dd\u0002\u04f5\u04f3\u0003\u0002",
+ "\u0002\u0002\u04f6\u04f9\u0003\u0002\u0002\u0002\u04f7\u04f5\u0003\u0002",
+ "\u0002\u0002\u04f7\u04f8\u0003\u0002\u0002\u0002\u04f8\u04fa\u0003\u0002",
+ "\u0002\u0002\u04f9\u04f7\u0003\u0002\u0002\u0002\u04fa\u04fb\u0007\u001b",
+ "\u0002\u0002\u04fb\u04fc\u0007H\u0002\u0002\u04fc\u04fd\u0005\u014a",
+ "\u00a6\u0002\u04fd\u04fe\u0007\u001a\u0002\u0002\u04fe\u0503\u0005\u01b8",
+ "\u00dd\u0002\u04ff\u0500\u0007\u0017\u0002\u0002\u0500\u0502\u0005\u01b8",
+ "\u00dd\u0002\u0501\u04ff\u0003\u0002\u0002\u0002\u0502\u0505\u0003\u0002",
+ "\u0002\u0002\u0503\u0501\u0003\u0002\u0002\u0002\u0503\u0504\u0003\u0002",
+ "\u0002\u0002\u0504\u0506\u0003\u0002\u0002\u0002\u0505\u0503\u0003\u0002",
+ "\u0002\u0002\u0506\u050a\u0007\u001b\u0002\u0002\u0507\u0509\u0005T",
+ "+\u0002\u0508\u0507\u0003\u0002\u0002\u0002\u0509\u050c\u0003\u0002",
+ "\u0002\u0002\u050a\u0508\u0003\u0002\u0002\u0002\u050a\u050b\u0003\u0002",
+ "\u0002\u0002\u050b\u0513\u0003\u0002\u0002\u0002\u050c\u050a\u0003\u0002",
+ "\u0002\u0002\u050d\u050e\u0007W\u0002\u0002\u050e\u050f\u0005\u0180",
+ "\u00c1\u0002\u050f\u0510\u0007\u001e\u0002\u0002\u0510\u0511\u0005\u01b8",
+ "\u00dd\u0002\u0511\u0513\u0003\u0002\u0002\u0002\u0512\u04d4\u0003\u0002",
+ "\u0002\u0002\u0512\u04ef\u0003\u0002\u0002\u0002\u0512\u050d\u0003\u0002",
+ "\u0002\u0002\u0513w\u0003\u0002\u0002\u0002\u0514\u0543\u0007\u008b",
+ "\u0002\u0002\u0515\u0543\u0007\u0086\u0002\u0002\u0516\u0543\u0007\u008c",
+ "\u0002\u0002\u0517\u0543\u0007\u008d\u0002\u0002\u0518\u0543\u0007\u008e",
+ "\u0002\u0002\u0519\u0543\u0007\u008f\u0002\u0002\u051a\u0543\u0007\u0090",
+ "\u0002\u0002\u051b\u0543\u0007\u0091\u0002\u0002\u051c\u0543\u0007\u0092",
+ "\u0002\u0002\u051d\u0543\u0007\u0093\u0002\u0002\u051e\u0543\u0007\u0094",
+ "\u0002\u0002\u051f\u0521\u0007\u0095\u0002\u0002\u0520\u0522\u0007\u0096",
+ "\u0002\u0002\u0521\u0520\u0003\u0002\u0002\u0002\u0521\u0522\u0003\u0002",
+ "\u0002\u0002\u0522\u0543\u0003\u0002\u0002\u0002\u0523\u0543\u0007\u0097",
+ "\u0002\u0002\u0524\u0543\u0007\u0098\u0002\u0002\u0525\u0543\u0007\u0099",
+ "\u0002\u0002\u0526\u0543\u0007\u009a\u0002\u0002\u0527\u0543\u0007\u009b",
+ "\u0002\u0002\u0528\u0543\u0007\u009c\u0002\u0002\u0529\u0543\u0007\u009d",
+ "\u0002\u0002\u052a\u0543\u0007\u009e\u0002\u0002\u052b\u0543\u0007\u009f",
+ "\u0002\u0002\u052c\u0543\u0007\u00a0\u0002\u0002\u052d\u0543\u0007\u00a1",
+ "\u0002\u0002\u052e\u0543\u0007\u00a2\u0002\u0002\u052f\u0530\u0007\u00a3",
+ "\u0002\u0002\u0530\u0543\u0007\u00a4\u0002\u0002\u0531\u0543\u0007\u00a5",
+ "\u0002\u0002\u0532\u0543\u0007\u00a6\u0002\u0002\u0533\u0543\u0007\u00a7",
+ "\u0002\u0002\u0534\u0543\u0007\u00a8\u0002\u0002\u0535\u0543\u0007\u00a9",
+ "\u0002\u0002\u0536\u0543\u0007\u00aa\u0002\u0002\u0537\u0543\u0007\u00ab",
+ "\u0002\u0002\u0538\u0543\u0007\u00ac\u0002\u0002\u0539\u0543\u0007\u00ad",
+ "\u0002\u0002\u053a\u0543\u0007\u00ae\u0002\u0002\u053b\u0543\u0007\u00af",
+ "\u0002\u0002\u053c\u0543\u0007\u00b0\u0002\u0002\u053d\u0540\u0005\u01b8",
+ "\u00dd\u0002\u053e\u053f\u0007\u0006\u0002\u0002\u053f\u0541\t\u0011",
+ "\u0002\u0002\u0540\u053e\u0003\u0002\u0002\u0002\u0540\u0541\u0003\u0002",
+ "\u0002\u0002\u0541\u0543\u0003\u0002\u0002\u0002\u0542\u0514\u0003\u0002",
+ "\u0002\u0002\u0542\u0515\u0003\u0002\u0002\u0002\u0542\u0516\u0003\u0002",
+ "\u0002\u0002\u0542\u0517\u0003\u0002\u0002\u0002\u0542\u0518\u0003\u0002",
+ "\u0002\u0002\u0542\u0519\u0003\u0002\u0002\u0002\u0542\u051a\u0003\u0002",
+ "\u0002\u0002\u0542\u051b\u0003\u0002\u0002\u0002\u0542\u051c\u0003\u0002",
+ "\u0002\u0002\u0542\u051d\u0003\u0002\u0002\u0002\u0542\u051e\u0003\u0002",
+ "\u0002\u0002\u0542\u051f\u0003\u0002\u0002\u0002\u0542\u0523\u0003\u0002",
+ "\u0002\u0002\u0542\u0524\u0003\u0002\u0002\u0002\u0542\u0525\u0003\u0002",
+ "\u0002\u0002\u0542\u0526\u0003\u0002\u0002\u0002\u0542\u0527\u0003\u0002",
+ "\u0002\u0002\u0542\u0528\u0003\u0002\u0002\u0002\u0542\u0529\u0003\u0002",
+ "\u0002\u0002\u0542\u052a\u0003\u0002\u0002\u0002\u0542\u052b\u0003\u0002",
+ "\u0002\u0002\u0542\u052c\u0003\u0002\u0002\u0002\u0542\u052d\u0003\u0002",
+ "\u0002\u0002\u0542\u052e\u0003\u0002\u0002\u0002\u0542\u052f\u0003\u0002",
+ "\u0002\u0002\u0542\u0531\u0003\u0002\u0002\u0002\u0542\u0532\u0003\u0002",
+ "\u0002\u0002\u0542\u0533\u0003\u0002\u0002\u0002\u0542\u0534\u0003\u0002",
+ "\u0002\u0002\u0542\u0535\u0003\u0002\u0002\u0002\u0542\u0536\u0003\u0002",
+ "\u0002\u0002\u0542\u0537\u0003\u0002\u0002\u0002\u0542\u0538\u0003\u0002",
+ "\u0002\u0002\u0542\u0539\u0003\u0002\u0002\u0002\u0542\u053a\u0003\u0002",
+ "\u0002\u0002\u0542\u053b\u0003\u0002\u0002\u0002\u0542\u053c\u0003\u0002",
+ "\u0002\u0002\u0542\u053d\u0003\u0002\u0002\u0002\u0543y\u0003\u0002",
+ "\u0002\u0002\u0544\u0545\u0007\u001a\u0002\u0002\u0545\u0547\t\u0012",
+ "\u0002\u0002\u0546\u0548\t\u0013\u0002\u0002\u0547\u0546\u0003\u0002",
+ "\u0002\u0002\u0547\u0548\u0003\u0002\u0002\u0002\u0548\u054b\u0003\u0002",
+ "\u0002\u0002\u0549\u054a\u0007\u0017\u0002\u0002\u054a\u054c\u0007J",
+ "\u0002\u0002\u054b\u0549\u0003\u0002\u0002\u0002\u054b\u054c\u0003\u0002",
+ "\u0002\u0002\u054c\u054d\u0003\u0002\u0002\u0002\u054d\u054e\u0007\u001b",
+ "\u0002\u0002\u054e{\u0003\u0002\u0002\u0002\u054f\u0551\u00078\u0002",
+ "\u0002\u0550\u054f\u0003\u0002\u0002\u0002\u0550\u0551\u0003\u0002\u0002",
+ "\u0002\u0551\u0552\u0003\u0002\u0002\u0002\u0552\u055b\u0007\u0015\u0002",
+ "\u0002\u0553\u0554\u0007\u0086\u0002\u0002\u0554\u0555\u0007\u0016\u0002",
+ "\u0002\u0555\u055b\u0005\u01b8\u00dd\u0002\u0556\u0558\u00078\u0002",
+ "\u0002\u0557\u0556\u0003\u0002\u0002\u0002\u0557\u0558\u0003\u0002\u0002",
+ "\u0002\u0558\u0559\u0003\u0002\u0002\u0002\u0559\u055b\t\u0014\u0002",
+ "\u0002\u055a\u0550\u0003\u0002\u0002\u0002\u055a\u0553\u0003\u0002\u0002",
+ "\u0002\u055a\u0557\u0003\u0002\u0002\u0002\u055b}\u0003\u0002\u0002",
+ "\u0002\u055c\u055e\u0007\u0018\u0002\u0002\u055d\u055c\u0003\u0002\u0002",
+ "\u0002\u055d\u055e\u0003\u0002\u0002\u0002\u055e\u055f\u0003\u0002\u0002",
+ "\u0002\u055f\u0560\u0007\u0019\u0002\u0002\u0560\u0569\u0005\u0180\u00c1",
+ "\u0002\u0561\u0563\u0007$\u0002\u0002\u0562\u0561\u0003\u0002\u0002",
+ "\u0002\u0562\u0563\u0003\u0002\u0002\u0002\u0563\u0564\u0003\u0002\u0002",
+ "\u0002\u0564\u0566\u0007W\u0002\u0002\u0565\u0567\u0005\u0180\u00c1",
+ "\u0002\u0566\u0565\u0003\u0002\u0002\u0002\u0566\u0567\u0003\u0002\u0002",
+ "\u0002\u0567\u0569\u0003\u0002\u0002\u0002\u0568\u055d\u0003\u0002\u0002",
+ "\u0002\u0568\u0562\u0003\u0002\u0002\u0002\u0569\u007f\u0003\u0002\u0002",
+ "\u0002\u056a\u056b\u0007=\u0002\u0002\u056b\u056f\t\u0015\u0002\u0002",
+ "\u056c\u056d\u0007>\u0002\u0002\u056d\u056e\u00078\u0002\u0002\u056e",
+ "\u0570\u0007?\u0002\u0002\u056f\u056c\u0003\u0002\u0002\u0002\u056f",
+ "\u0570\u0003\u0002\u0002\u0002\u0570\u0571\u0003\u0002\u0002\u0002\u0571",
+ "\u0575\u0005\u0180\u00c1\u0002\u0572\u0574\u0005\u0082B\u0002\u0573",
+ "\u0572\u0003\u0002\u0002\u0002\u0574\u0577\u0003\u0002\u0002\u0002\u0575",
+ "\u0573\u0003\u0002\u0002\u0002\u0575\u0576\u0003\u0002\u0002\u0002\u0576",
+ "\u0081\u0003\u0002\u0002\u0002\u0577\u0575\u0003\u0002\u0002\u0002\u0578",
+ "\u0579\u0007\u0085\u0002\u0002\u0579\u057d\u0005\u0180\u00c1\u0002\u057a",
+ "\u057b\u0007\u00b9\u0002\u0002\u057b\u057d\u0005\u0180\u00c1\u0002\u057c",
+ "\u0578\u0003\u0002\u0002\u0002\u057c\u057a\u0003\u0002\u0002\u0002\u057d",
+ "\u0083\u0003\u0002\u0002\u0002\u057e\u0586\u0007\u0089\u0002\u0002\u057f",
+ "\u0582\u0007=\u0002\u0002\u0580\u0581\u0007\u00ba\u0002\u0002\u0581",
+ "\u0583\u0007m\u0002\u0002\u0582\u0580\u0003\u0002\u0002\u0002\u0582",
+ "\u0583\u0003\u0002\u0002\u0002\u0583\u0586\u0003\u0002\u0002\u0002\u0584",
+ "\u0586\u0007m\u0002\u0002\u0585\u057e\u0003\u0002\u0002\u0002\u0585",
+ "\u057f\u0003\u0002\u0002\u0002\u0585\u0584\u0003\u0002\u0002\u0002\u0585",
+ "\u0586\u0003\u0002\u0002\u0002\u0586\u0587\u0003\u0002\u0002\u0002\u0587",
+ "\u0588\u0007\u00bb\u0002\u0002\u0588\u058a\u0005\u01b8\u00dd\u0002\u0589",
+ "\u058b\u0005\u0096L\u0002\u058a\u0589\u0003\u0002\u0002\u0002\u058a",
+ "\u058b\u0003\u0002\u0002\u0002\u058b\u058c\u0003\u0002\u0002\u0002\u058c",
+ "\u058e\u0005\u0086D\u0002\u058d\u058f\t\u0016\u0002\u0002\u058e\u058d",
+ "\u0003\u0002\u0002\u0002\u058e\u058f\u0003\u0002\u0002\u0002\u058f\u0591",
+ "\u0003\u0002\u0002\u0002\u0590\u0592\u00052\u001a\u0002\u0591\u0590",
+ "\u0003\u0002\u0002\u0002\u0591\u0592\u0003\u0002\u0002\u0002\u0592\u0593",
+ "\u0003\u0002\u0002\u0002\u0593\u0594\u0005\b\u0005\u0002\u0594\u0085",
+ "\u0003\u0002\u0002\u0002\u0595\u0596\t\u0017\u0002\u0002\u0596\u0598",
+ "\u0005x=\u0002\u0597\u0599\u0005z>\u0002\u0598\u0597\u0003\u0002\u0002",
+ "\u0002\u0598\u0599\u0003\u0002\u0002\u0002\u0599\u0087\u0003\u0002\u0002",
+ "\u0002\u059a\u05a2\u0007\u0089\u0002\u0002\u059b\u059e\u0007=\u0002",
+ "\u0002\u059c\u059d\u0007\u00ba\u0002\u0002\u059d\u059f\u0007m\u0002",
+ "\u0002\u059e\u059c\u0003\u0002\u0002\u0002\u059e\u059f\u0003\u0002\u0002",
+ "\u0002\u059f\u05a2\u0003\u0002\u0002\u0002\u05a0\u05a2\u0007m\u0002",
+ "\u0002\u05a1\u059a\u0003\u0002\u0002\u0002\u05a1\u059b\u0003\u0002\u0002",
+ "\u0002\u05a1\u05a0\u0003\u0002\u0002\u0002\u05a1\u05a2\u0003\u0002\u0002",
+ "\u0002\u05a2\u05a3\u0003\u0002\u0002\u0002\u05a3\u05a4\u0007\u00bd\u0002",
+ "\u0002\u05a4\u05a5\u0005\u01b8\u00dd\u0002\u05a5\u05a6\t\u0016\u0002",
+ "\u0002\u05a6\u05a7\u0005\u008aF\u0002\u05a7\u05ab\u0007\u0010\u0002",
+ "\u0002\u05a8\u05a9\u0005\u01b8\u00dd\u0002\u05a9\u05aa\u0007\u000f\u0002",
+ "\u0002\u05aa\u05ac\u0003\u0002\u0002\u0002\u05ab\u05a8\u0003\u0002\u0002",
+ "\u0002\u05ab\u05ac\u0003\u0002\u0002\u0002\u05ac\u0089\u0003\u0002\u0002",
+ "\u0002\u05ad\u05ae\u0005\u008cG\u0002\u05ae\u05b4\u0007\u000f\u0002",
+ "\u0002\u05af\u05b0\u0005\u008cG\u0002\u05b0\u05b1\u0007\u000f\u0002",
+ "\u0002\u05b1\u05b3\u0003\u0002\u0002\u0002\u05b2\u05af\u0003\u0002\u0002",
+ "\u0002\u05b3\u05b6\u0003\u0002\u0002\u0002\u05b4\u05b2\u0003\u0002\u0002",
+ "\u0002\u05b4\u05b5\u0003\u0002\u0002\u0002\u05b5\u008b\u0003\u0002\u0002",
+ "\u0002\u05b6\u05b4\u0003\u0002\u0002\u0002\u05b7\u05c5\u00054\u001b",
+ "\u0002\u05b8\u05b9\u0007\u00bb\u0002\u0002\u05b9\u05bb\u0005\u01b8\u00dd",
+ "\u0002\u05ba\u05bc\u0005\u0096L\u0002\u05bb\u05ba\u0003\u0002\u0002",
+ "\u0002\u05bb\u05bc\u0003\u0002\u0002\u0002\u05bc\u05bd\u0003\u0002\u0002",
+ "\u0002\u05bd\u05be\u0005\u0086D\u0002\u05be\u05c5\u0003\u0002\u0002",
+ "\u0002\u05bf\u05c0\t\u0018\u0002\u0002\u05c0\u05c2\u0005\u01b8\u00dd",
+ "\u0002\u05c1\u05c3\u0005\u0096L\u0002\u05c2\u05c1\u0003\u0002\u0002",
+ "\u0002\u05c2\u05c3\u0003\u0002\u0002\u0002\u05c3\u05c5\u0003\u0002\u0002",
+ "\u0002\u05c4\u05b7\u0003\u0002\u0002\u0002\u05c4\u05b8\u0003\u0002\u0002",
+ "\u0002\u05c4\u05bf\u0003\u0002\u0002\u0002\u05c5\u008d\u0003\u0002\u0002",
+ "\u0002\u05c6\u05ce\u0007\u0089\u0002\u0002\u05c7\u05ca\u0007=\u0002",
+ "\u0002\u05c8\u05c9\u0007\u00ba\u0002\u0002\u05c9\u05cb\u0007m\u0002",
+ "\u0002\u05ca\u05c8\u0003\u0002\u0002\u0002\u05ca\u05cb\u0003\u0002\u0002",
+ "\u0002\u05cb\u05ce\u0003\u0002\u0002\u0002\u05cc\u05ce\u0007m\u0002",
+ "\u0002\u05cd\u05c6\u0003\u0002\u0002\u0002\u05cd\u05c7\u0003\u0002\u0002",
+ "\u0002\u05cd\u05cc\u0003\u0002\u0002\u0002\u05cd\u05ce\u0003\u0002\u0002",
+ "\u0002\u05ce\u05cf\u0003\u0002\u0002\u0002\u05cf\u05d0\u0007\u00bd\u0002",
+ "\u0002\u05d0\u05d1\u0007\u00bf\u0002\u0002\u05d1\u05d2\u0005\u01b8\u00dd",
+ "\u0002\u05d2\u05d3\t\u0016\u0002\u0002\u05d3\u05d4\u0005\u0090I\u0002",
+ "\u05d4\u05d8\u0007\u0010\u0002\u0002\u05d5\u05d6\u0005\u01b8\u00dd\u0002",
+ "\u05d6\u05d7\u0007\u000f\u0002\u0002\u05d7\u05d9\u0003\u0002\u0002\u0002",
+ "\u05d8\u05d5\u0003\u0002\u0002\u0002\u05d8\u05d9\u0003\u0002\u0002\u0002",
+ "\u05d9\u008f\u0003\u0002\u0002\u0002\u05da\u05db\u0005\u0092J\u0002",
+ "\u05db\u05e1\u0007\u000f\u0002\u0002\u05dc\u05dd\u0005\u0092J\u0002",
+ "\u05dd\u05de\u0007\u000f\u0002\u0002\u05de\u05e0\u0003\u0002\u0002\u0002",
+ "\u05df\u05dc\u0003\u0002\u0002\u0002\u05e0\u05e3\u0003\u0002\u0002\u0002",
+ "\u05e1\u05df\u0003\u0002\u0002\u0002\u05e1\u05e2\u0003\u0002\u0002\u0002",
+ "\u05e2\u0091\u0003\u0002\u0002\u0002\u05e3\u05e1\u0003\u0002\u0002\u0002",
+ "\u05e4\u05e8\u00054\u001b\u0002\u05e5\u05e8\u0005\u0084C\u0002\u05e6",
+ "\u05e8\u0005\u0094K\u0002\u05e7\u05e4\u0003\u0002\u0002\u0002\u05e7",
+ "\u05e5\u0003\u0002\u0002\u0002\u05e7\u05e6\u0003\u0002\u0002\u0002\u05e8",
+ "\u0093\u0003\u0002\u0002\u0002\u05e9\u05f1\u0007\u0089\u0002\u0002\u05ea",
+ "\u05ed\u0007=\u0002\u0002\u05eb\u05ec\u0007\u00ba\u0002\u0002\u05ec",
+ "\u05ee\u0007m\u0002\u0002\u05ed\u05eb\u0003\u0002\u0002\u0002\u05ed",
+ "\u05ee\u0003\u0002\u0002\u0002\u05ee\u05f1\u0003\u0002\u0002\u0002\u05ef",
+ "\u05f1\u0007m\u0002\u0002\u05f0\u05e9\u0003\u0002\u0002\u0002\u05f0",
+ "\u05ea\u0003\u0002\u0002\u0002\u05f0\u05ef\u0003\u0002\u0002\u0002\u05f0",
+ "\u05f1\u0003\u0002\u0002\u0002\u05f1\u05f2\u0003\u0002\u0002\u0002\u05f2",
+ "\u05f3\t\u0018\u0002\u0002\u05f3\u05f5\u0005\u01b8\u00dd\u0002\u05f4",
+ "\u05f6\u0005\u0096L\u0002\u05f5\u05f4\u0003\u0002\u0002\u0002\u05f5",
+ "\u05f6\u0003\u0002\u0002\u0002\u05f6\u05f8\u0003\u0002\u0002\u0002\u05f7",
+ "\u05f9\u0005\u009aN\u0002\u05f8\u05f7\u0003\u0002\u0002\u0002\u05f8",
+ "\u05f9\u0003\u0002\u0002\u0002\u05f9\u05fb\u0003\u0002\u0002\u0002\u05fa",
+ "\u05fc\t\u0016\u0002\u0002\u05fb\u05fa\u0003\u0002\u0002\u0002\u05fb",
+ "\u05fc\u0003\u0002\u0002\u0002\u05fc\u05fe\u0003\u0002\u0002\u0002\u05fd",
+ "\u05ff\u00052\u001a\u0002\u05fe\u05fd\u0003\u0002\u0002\u0002\u05fe",
+ "\u05ff\u0003\u0002\u0002\u0002\u05ff\u0601\u0003\u0002\u0002\u0002\u0600",
+ "\u0602\u0005\u0116\u008c\u0002\u0601\u0600\u0003\u0002\u0002\u0002\u0601",
+ "\u0602\u0003\u0002\u0002\u0002\u0602\u0603\u0003\u0002\u0002\u0002\u0603",
+ "\u0607\u0005\f\u0007\u0002\u0604\u0605\u0005\u01b8\u00dd\u0002\u0605",
+ "\u0606\u0007\u000f\u0002\u0002\u0606\u0608\u0003\u0002\u0002\u0002\u0607",
+ "\u0604\u0003\u0002\u0002\u0002\u0607\u0608\u0003\u0002\u0002\u0002\u0608",
+ "\u0095\u0003\u0002\u0002\u0002\u0609\u060a\u0007\u001a\u0002\u0002\u060a",
+ "\u0620\u0007\u001b\u0002\u0002\u060b\u060c\u0007\u001a\u0002\u0002\u060c",
+ "\u0611\u0005\u0098M\u0002\u060d\u060e\u0007\u0017\u0002\u0002\u060e",
+ "\u0610\u0005\u0098M\u0002\u060f\u060d\u0003\u0002\u0002\u0002\u0610",
+ "\u0613\u0003\u0002\u0002\u0002\u0611\u060f\u0003\u0002\u0002\u0002\u0611",
+ "\u0612\u0003\u0002\u0002\u0002\u0612\u0614\u0003\u0002\u0002\u0002\u0613",
+ "\u0611\u0003\u0002\u0002\u0002\u0614\u0615\u0007\u001b\u0002\u0002\u0615",
+ "\u0620\u0003\u0002\u0002\u0002\u0616\u0617\u0006L\u0004\u0002\u0617",
+ "\u061c\u0005\u0098M\u0002\u0618\u0619\u0007\u0017\u0002\u0002\u0619",
+ "\u061b\u0005\u0098M\u0002\u061a\u0618\u0003\u0002\u0002\u0002\u061b",
+ "\u061e\u0003\u0002\u0002\u0002\u061c\u061a\u0003\u0002\u0002\u0002\u061c",
+ "\u061d\u0003\u0002\u0002\u0002\u061d\u0620\u0003\u0002\u0002\u0002\u061e",
+ "\u061c\u0003\u0002\u0002\u0002\u061f\u0609\u0003\u0002\u0002\u0002\u061f",
+ "\u060b\u0003\u0002\u0002\u0002\u061f\u0616\u0003\u0002\u0002\u0002\u0620",
+ "\u0097\u0003\u0002\u0002\u0002\u0621\u0627\u0007l\u0002\u0002\u0622",
+ "\u0627\u0007\u00c0\u0002\u0002\u0623\u0627\u0007\u00c1\u0002\u0002\u0624",
+ "\u0625\u0007l\u0002\u0002\u0625\u0627\u0007\u00c0\u0002\u0002\u0626",
+ "\u0621\u0003\u0002\u0002\u0002\u0626\u0622\u0003\u0002\u0002\u0002\u0626",
+ "\u0623\u0003\u0002\u0002\u0002\u0626\u0624\u0003\u0002\u0002\u0002\u0626",
+ "\u0627\u0003\u0002\u0002\u0002\u0627\u0628\u0003\u0002\u0002\u0002\u0628",
+ "\u0629\u0005\u01b8\u00dd\u0002\u0629\u062b\u0005x=\u0002\u062a\u062c",
+ "\u0005z>\u0002\u062b\u062a\u0003\u0002\u0002\u0002\u062b\u062c\u0003",
+ "\u0002\u0002\u0002\u062c\u0630\u0003\u0002\u0002\u0002\u062d\u062f\u0005",
+ "|?\u0002\u062e\u062d\u0003\u0002\u0002\u0002\u062f\u0632\u0003\u0002",
+ "\u0002\u0002\u0630\u062e\u0003\u0002\u0002\u0002\u0630\u0631\u0003\u0002",
+ "\u0002\u0002\u0631\u0634\u0003\u0002\u0002\u0002\u0632\u0630\u0003\u0002",
+ "\u0002\u0002\u0633\u0635\u0005~@\u0002\u0634\u0633\u0003\u0002\u0002",
+ "\u0002\u0634\u0635\u0003\u0002\u0002\u0002\u0635\u064c\u0003\u0002\u0002",
+ "\u0002\u0636\u063c\u0005\u01b8\u00dd\u0002\u0637\u063d\u0007l\u0002",
+ "\u0002\u0638\u063d\u0007\u00c0\u0002\u0002\u0639\u063d\u0007\u00c1\u0002",
+ "\u0002\u063a\u063b\u0007l\u0002\u0002\u063b\u063d\u0007\u00c0\u0002",
+ "\u0002\u063c\u0637\u0003\u0002\u0002\u0002\u063c\u0638\u0003\u0002\u0002",
+ "\u0002\u063c\u0639\u0003\u0002\u0002\u0002\u063c\u063a\u0003\u0002\u0002",
+ "\u0002\u063c\u063d\u0003\u0002\u0002\u0002\u063d\u063e\u0003\u0002\u0002",
+ "\u0002\u063e\u0640\u0005x=\u0002\u063f\u0641\u0005z>\u0002\u0640\u063f",
+ "\u0003\u0002\u0002\u0002\u0640\u0641\u0003\u0002\u0002\u0002\u0641\u0645",
+ "\u0003\u0002\u0002\u0002\u0642\u0644\u0005|?\u0002\u0643\u0642\u0003",
+ "\u0002\u0002\u0002\u0644\u0647\u0003\u0002\u0002\u0002\u0645\u0643\u0003",
+ "\u0002\u0002\u0002\u0645\u0646\u0003\u0002\u0002\u0002\u0646\u0649\u0003",
+ "\u0002\u0002\u0002\u0647\u0645\u0003\u0002\u0002\u0002\u0648\u064a\u0005",
+ "~@\u0002\u0649\u0648\u0003\u0002\u0002\u0002\u0649\u064a\u0003\u0002",
+ "\u0002\u0002\u064a\u064c\u0003\u0002\u0002\u0002\u064b\u0626\u0003\u0002",
+ "\u0002\u0002\u064b\u0636\u0003\u0002\u0002\u0002\u064c\u0099\u0003\u0002",
+ "\u0002\u0002\u064d\u064f\u0005\u009cO\u0002\u064e\u064d\u0003\u0002",
+ "\u0002\u0002\u064f\u0650\u0003\u0002\u0002\u0002\u0650\u064e\u0003\u0002",
+ "\u0002\u0002\u0650\u0651\u0003\u0002\u0002\u0002\u0651\u009b\u0003\u0002",
+ "\u0002\u0002\u0652\u0653\u0007\u00c2\u0002\u0002\u0653\u065e\u0007\u00c3",
+ "\u0002\u0002\u0654\u0655\u0007\u00c3\u0002\u0002\u0655\u0656\u0007\u00c4",
+ "\u0002\u0002\u0656\u065e\t\u0019\u0002\u0002\u0657\u0659\u0007\u00c9",
+ "\u0002\u0002\u0658\u0657\u0003\u0002\u0002\u0002\u0658\u0659\u0003\u0002",
+ "\u0002\u0002\u0659\u065a\u0003\u0002\u0002\u0002\u065a\u065b\u0007\u001f",
+ "\u0002\u0002\u065b\u065c\u0007\u00ca\u0002\u0002\u065c\u065e\u0007J",
+ "\u0002\u0002\u065d\u0652\u0003\u0002\u0002\u0002\u065d\u0654\u0003\u0002",
+ "\u0002\u0002\u065d\u0658\u0003\u0002\u0002\u0002\u065e\u009d\u0003\u0002",
+ "\u0002\u0002\u065f\u0660\u0007u\u0002\u0002\u0660\u0663\u0007<\u0002",
+ "\u0002\u0661\u0662\u0007>\u0002\u0002\u0662\u0664\u0007?\u0002\u0002",
+ "\u0663\u0661\u0003\u0002\u0002\u0002\u0663\u0664\u0003\u0002\u0002\u0002",
+ "\u0664\u0665\u0003\u0002\u0002\u0002\u0665\u066e\u0005\u014a\u00a6\u0002",
+ "\u0666\u0667\u0007u\u0002\u0002\u0667\u066a\t\u0015\u0002\u0002\u0668",
+ "\u0669\u0007>\u0002\u0002\u0669\u066b\u0007?\u0002\u0002\u066a\u0668",
+ "\u0003\u0002\u0002\u0002\u066a\u066b\u0003\u0002\u0002\u0002\u066b\u066c",
+ "\u0003\u0002\u0002\u0002\u066c\u066e\u0005\u0180\u00c1\u0002\u066d\u065f",
+ "\u0003\u0002\u0002\u0002\u066d\u0666\u0003\u0002\u0002\u0002\u066e\u009f",
+ "\u0003\u0002\u0002\u0002\u066f\u0670\u0007\u0010\u0002\u0002\u0670\u0671",
+ "\u0007%\u0002\u0002\u0671\u00a1\u0003\u0002\u0002\u0002\u0672\u0674",
+ "\t\u001a\u0002\u0002\u0673\u0675\u0007`\u0002\u0002\u0674\u0673\u0003",
+ "\u0002\u0002\u0002\u0674\u0675\u0003\u0002\u0002\u0002\u0675\u0676\u0003",
+ "\u0002\u0002\u0002\u0676\u067c\u0005\u0180\u00c1\u0002\u0677\u0678\u0007",
+ "\u001a\u0002\u0002\u0678\u0679\u0005\u01a0\u00d1\u0002\u0679\u067a\u0007",
+ "\u001b\u0002\u0002\u067a\u067d\u0003\u0002\u0002\u0002\u067b\u067d\u0005",
+ "\u01a0\u00d1\u0002\u067c\u0677\u0003\u0002\u0002\u0002\u067c\u067b\u0003",
+ "\u0002\u0002\u0002\u067c\u067d\u0003\u0002\u0002\u0002\u067d\u0687\u0003",
+ "\u0002\u0002\u0002\u067e\u067f\u0007\u00cd\u0002\u0002\u067f\u0684\u0007",
+ "\u0013\u0002\u0002\u0680\u0681\u0007\u0017\u0002\u0002\u0681\u0683\u0007",
+ "\u0013\u0002\u0002\u0682\u0680\u0003\u0002\u0002\u0002\u0683\u0686\u0003",
+ "\u0002\u0002\u0002\u0684\u0682\u0003\u0002\u0002\u0002\u0684\u0685\u0003",
+ "\u0002\u0002\u0002\u0685\u0688\u0003\u0002\u0002\u0002\u0686\u0684\u0003",
+ "\u0002\u0002\u0002\u0687\u067e\u0003\u0002\u0002\u0002\u0687\u0688\u0003",
+ "\u0002\u0002\u0002\u0688\u068a\u0003\u0002\u0002\u0002\u0689\u068b\u0005",
+ "\u0118\u008d\u0002\u068a\u0689\u0003\u0002\u0002\u0002\u068a\u068b\u0003",
+ "\u0002\u0002\u0002\u068b\u00a3\u0003\u0002\u0002\u0002\u068c\u0690\u0005",
+ "\u00a6T\u0002\u068d\u0690\u0005\u00a8U\u0002\u068e\u0690\u0005\u00aa",
+ "V\u0002\u068f\u068c\u0003\u0002\u0002\u0002\u068f\u068d\u0003\u0002",
+ "\u0002\u0002\u068f\u068e\u0003\u0002\u0002\u0002\u0690\u00a5\u0003\u0002",
+ "\u0002\u0002\u0691\u0692\u0007>\u0002\u0002\u0692\u0693\u0005\u0170",
+ "\u00b9\u0002\u0693\u0694\u0007\u0014\u0002\u0002\u0694\u0698\u0005\u0004",
+ "\u0003\u0002\u0695\u0697\u0005\u00acW\u0002\u0696\u0695\u0003\u0002",
+ "\u0002\u0002\u0697\u069a\u0003\u0002\u0002\u0002\u0698\u0696\u0003\u0002",
+ "\u0002\u0002\u0698\u0699\u0003\u0002\u0002\u0002\u0699\u069c\u0003\u0002",
+ "\u0002\u0002\u069a\u0698\u0003\u0002\u0002\u0002\u069b\u069d\u0005\u00ae",
+ "X\u0002\u069c\u069b\u0003\u0002\u0002\u0002\u069c\u069d\u0003\u0002",
+ "\u0002\u0002\u069d\u069e\u0003\u0002\u0002\u0002\u069e\u069f\u0007\u0010",
+ "\u0002\u0002\u069f\u06a0\u0007>\u0002\u0002\u06a0\u00a7\u0003\u0002",
+ "\u0002\u0002\u06a1\u06a2\u0007>\u0002\u0002\u06a2\u06a3\u0005\u0170",
+ "\u00b9\u0002\u06a3\u06a6\u0005\b\u0005\u0002\u06a4\u06a5\u0007\u00ce",
+ "\u0002\u0002\u06a5\u06a7\u0005\b\u0005\u0002\u06a6\u06a4\u0003\u0002",
+ "\u0002\u0002\u06a6\u06a7\u0003\u0002\u0002\u0002\u06a7\u00a9\u0003\u0002",
+ "\u0002\u0002\u06a8\u06a9\u0007\u0007\u0002\u0002\u06a9\u06aa\u0007>",
+ "\u0002\u0002\u06aa\u06ab\u0005\u0170\u00b9\u0002\u06ab\u06ac\u0007\u0014",
+ "\u0002\u0002\u06ac\u06ad\u0005\b\u0005\u0002\u06ad\u00ab\u0003\u0002",
+ "\u0002\u0002\u06ae\u06af\t\u001b\u0002\u0002\u06af\u06b0\u0005\u0170",
+ "\u00b9\u0002\u06b0\u06b1\u0007\u0014\u0002\u0002\u06b1\u06b2\u0005\u0004",
+ "\u0003\u0002\u06b2\u00ad\u0003\u0002\u0002\u0002\u06b3\u06b4\u0007\u00ce",
+ "\u0002\u0002\u06b4\u06b5\u0005\u0004\u0003\u0002\u06b5\u00af\u0003\u0002",
+ "\u0002\u0002\u06b6\u06b9\u0007\u00d1\u0002\u0002\u06b7\u06ba\u0005\u01b2",
+ "\u00da\u0002\u06b8\u06ba\u0005\u0180\u00c1\u0002\u06b9\u06b7\u0003\u0002",
+ "\u0002\u0002\u06b9\u06b8\u0003\u0002\u0002\u0002\u06ba\u00b1\u0003\u0002",
+ "\u0002\u0002\u06bb\u06c2\u0007\u00d2\u0002\u0002\u06bc\u06bd\u0007\u00d3",
+ "\u0002\u0002\u06bd\u06c3\u0007<\u0002\u0002\u06be\u06c0\u0007\u00cd",
+ "\u0002\u0002\u06bf\u06c1\u0007<\u0002\u0002\u06c0\u06bf\u0003\u0002",
+ "\u0002\u0002\u06c0\u06c1\u0003\u0002\u0002\u0002\u06c1\u06c3\u0003\u0002",
+ "\u0002\u0002\u06c2\u06bc\u0003\u0002\u0002\u0002\u06c2\u06be\u0003\u0002",
+ "\u0002\u0002\u06c3\u06c4\u0003\u0002\u0002\u0002\u06c4\u06c6\u0005\u014a",
+ "\u00a6\u0002\u06c5\u06c7\u0005\u00b4[\u0002\u06c6\u06c5\u0003\u0002",
+ "\u0002\u0002\u06c6\u06c7\u0003\u0002\u0002\u0002\u06c7\u06ca\u0003\u0002",
+ "\u0002\u0002\u06c8\u06cb\u0005\u011a\u008e\u0002\u06c9\u06cb\u0005\u00b6",
+ "\\\u0002\u06ca\u06c8\u0003\u0002\u0002\u0002\u06ca\u06c9\u0003\u0002",
+ "\u0002\u0002\u06cb\u00b3\u0003\u0002\u0002\u0002\u06cc\u06cd\u0007\u001a",
+ "\u0002\u0002\u06cd\u06d2\u0005\u01b8\u00dd\u0002\u06ce\u06cf\u0007\u0017",
+ "\u0002\u0002\u06cf\u06d1\u0005\u01b8\u00dd\u0002\u06d0\u06ce\u0003\u0002",
+ "\u0002\u0002\u06d1\u06d4\u0003\u0002\u0002\u0002\u06d2\u06d0\u0003\u0002",
+ "\u0002\u0002\u06d2\u06d3\u0003\u0002\u0002\u0002\u06d3\u06d5\u0003\u0002",
+ "\u0002\u0002\u06d4\u06d2\u0003\u0002\u0002\u0002\u06d5\u06d6\u0007\u001b",
+ "\u0002\u0002\u06d6\u00b5\u0003\u0002\u0002\u0002\u06d7\u06d8\u0007\u00d4",
+ "\u0002\u0002\u06d8\u06dd\u0005\u00b8]\u0002\u06d9\u06da\u0007\u0017",
+ "\u0002\u0002\u06da\u06dc\u0005\u00b8]\u0002\u06db\u06d9\u0003\u0002",
+ "\u0002\u0002\u06dc\u06df\u0003\u0002\u0002\u0002\u06dd\u06db\u0003\u0002",
+ "\u0002\u0002\u06dd\u06de\u0003\u0002\u0002\u0002\u06de\u00b7\u0003\u0002",
+ "\u0002\u0002\u06df\u06dd\u0003\u0002\u0002\u0002\u06e0\u06e1\u0007\u001a",
+ "\u0002\u0002\u06e1\u06e6\u0005\u0180\u00c1\u0002\u06e2\u06e3\u0007\u0017",
+ "\u0002\u0002\u06e3\u06e5\u0005\u0180\u00c1\u0002\u06e4\u06e2\u0003\u0002",
+ "\u0002\u0002\u06e5\u06e8\u0003\u0002\u0002\u0002\u06e6\u06e4\u0003\u0002",
+ "\u0002\u0002\u06e6\u06e7\u0003\u0002\u0002\u0002\u06e7\u06e9\u0003\u0002",
+ "\u0002\u0002\u06e8\u06e6\u0003\u0002\u0002\u0002\u06e9\u06ea\u0007\u001b",
+ "\u0002\u0002\u06ea\u00b9\u0003\u0002\u0002\u0002\u06eb\u06ec\u0007\u00d2",
+ "\u0002\u0002\u06ec\u06ee\u0007\u00d3\u0002\u0002\u06ed\u06ef\u0007@",
+ "\u0002\u0002\u06ee\u06ed\u0003\u0002\u0002\u0002\u06ee\u06ef\u0003\u0002",
+ "\u0002\u0002\u06ef\u06f0\u0003\u0002\u0002\u0002\u06f0\u06f1\u0007\u00d5",
+ "\u0002\u0002\u06f1\u06f2\u0005\u01a6\u00d4\u0002\u06f2\u06f3\u0005\u01a4",
+ "\u00d3\u0002\u06f3\u00bb\u0003\u0002\u0002\u0002\u06f4\u06f6\u00074",
+ "\u0002\u0002\u06f5\u06f7\u0007\u0013\u0002\u0002\u06f6\u06f5\u0003\u0002",
+ "\u0002\u0002\u06f6\u06f7\u0003\u0002\u0002\u0002\u06f7\u06fa\u0003\u0002",
+ "\u0002\u0002\u06f8\u06f9\u0007\u0012\u0002\u0002\u06f9\u06fb\u0005\u0170",
+ "\u00b9\u0002\u06fa\u06f8\u0003\u0002\u0002\u0002\u06fa\u06fb\u0003\u0002",
+ "\u0002\u0002\u06fb\u00bd\u0003\u0002\u0002\u0002\u06fc\u06fd\u0007\u00d6",
+ "\u0002\u0002\u06fd\u06fe\u0007\u00d7\u0002\u0002\u06fe\u06ff\u0005\u00c0",
+ "a\u0002\u06ff\u00bf\u0003\u0002\u0002\u0002\u0700\u0703\u0005\u00c2",
+ "b\u0002\u0701\u0703\u0005\u00c4c\u0002\u0702\u0700\u0003\u0002\u0002",
+ "\u0002\u0702\u0701\u0003\u0002\u0002\u0002\u0703\u00c1\u0003\u0002\u0002",
+ "\u0002\u0704\u0705\u0007\u0011\u0002\u0002\u0705\u0706\u0007J\u0002",
+ "\u0002\u0706\u0707\u0005\u01b8\u00dd\u0002\u0707\u0708\u0007\u0019\u0002",
+ "\u0002\u0708\u0709\u0007\u00d8\u0002\u0002\u0709\u00c3\u0003\u0002\u0002",
+ "\u0002\u070a\u070b\u0005\u01b8\u00dd\u0002\u070b\u070c\u0007\u0019\u0002",
+ "\u0002\u070c\u070d\u0007\u00d9\u0002\u0002\u070d\u00c5\u0003\u0002\u0002",
+ "\u0002\u070e\u070f\u0007\u00da\u0002\u0002\u070f\u0714\u0005\u00c8e",
+ "\u0002\u0710\u0711\u0007\u0017\u0002\u0002\u0711\u0713\u0005\u00c8e",
+ "\u0002\u0712\u0710\u0003\u0002\u0002\u0002\u0713\u0716\u0003\u0002\u0002",
+ "\u0002\u0714\u0712\u0003\u0002\u0002\u0002\u0714\u0715\u0003\u0002\u0002",
+ "\u0002\u0715\u0717\u0003\u0002\u0002\u0002\u0716\u0714\u0003\u0002\u0002",
+ "\u0002\u0717\u0718\u0007/\u0002\u0002\u0718\u0719\u0007\u00db\u0002",
+ "\u0002\u0719\u071a\u0005\u01b8\u00dd\u0002\u071a\u00c7\u0003\u0002\u0002",
+ "\u0002\u071b\u071c\u0007\u00cc\u0002\u0002\u071c\u071d\u0007Q\u0002",
+ "\u0002\u071d\u071e\u0007 \u0002\u0002\u071e\u071f\u0005\u01b8\u00dd",
+ "\u0002\u071f\u00c9\u0003\u0002\u0002\u0002\u0720\u0722\u0007\u00dc\u0002",
+ "\u0002\u0721\u0723\u0007\u0013\u0002\u0002\u0722\u0721\u0003\u0002\u0002",
+ "\u0002\u0722\u0723\u0003\u0002\u0002\u0002\u0723\u00cb\u0003\u0002\u0002",
+ "\u0002\u0724\u0725\u0007\u0080\u0002\u0002\u0725\u0726\u0007\u00dd\u0002",
+ "\u0002\u0726\u0729\u0005\u0180\u00c1\u0002\u0727\u0728\u0007/\u0002",
+ "\u0002\u0728\u072a\u0005\u0180\u00c1\u0002\u0729\u0727\u0003\u0002\u0002",
+ "\u0002\u0729\u072a\u0003\u0002\u0002\u0002\u072a\u072d\u0003\u0002\u0002",
+ "\u0002\u072b\u072c\u0007\u00de\u0002\u0002\u072c\u072e\u0005\u0180\u00c1",
+ "\u0002\u072d\u072b\u0003\u0002\u0002\u0002\u072d\u072e\u0003\u0002\u0002",
+ "\u0002\u072e\u00cd\u0003\u0002\u0002\u0002\u072f\u0730\u0007\u00df\u0002",
+ "\u0002\u0730\u0736\u0007\u0013\u0002\u0002\u0731\u0734\u0007\u001e\u0002",
+ "\u0002\u0732\u0735\u0005\u011a\u008e\u0002\u0733\u0735\u0005\u0180\u00c1",
+ "\u0002\u0734\u0732\u0003\u0002\u0002\u0002\u0734\u0733\u0003\u0002\u0002",
+ "\u0002\u0735\u0737\u0003\u0002\u0002\u0002\u0736\u0731\u0003\u0002\u0002",
+ "\u0002\u0736\u0737\u0003\u0002\u0002\u0002\u0737\u00cf\u0003\u0002\u0002",
+ "\u0002\u0738\u073a\u0007\u00e0\u0002\u0002\u0739\u073b\u0007\u00e1\u0002",
+ "\u0002\u073a\u0739\u0003\u0002\u0002\u0002\u073a\u073b\u0003\u0002\u0002",
+ "\u0002\u073b\u073c\u0003\u0002\u0002\u0002\u073c\u073d\u0007\u0013\u0002",
+ "\u0002\u073d\u073e\u0007\u00cd\u0002\u0002\u073e\u0743\u0007\u0013\u0002",
+ "\u0002\u073f\u0740\u0007\u0017\u0002\u0002\u0740\u0742\u0007\u0013\u0002",
+ "\u0002\u0741\u073f\u0003\u0002\u0002\u0002\u0742\u0745\u0003\u0002\u0002",
+ "\u0002\u0743\u0741\u0003\u0002\u0002\u0002\u0743\u0744\u0003\u0002\u0002",
+ "\u0002\u0744\u00d1\u0003\u0002\u0002\u0002\u0745\u0743\u0003\u0002\u0002",
+ "\u0002\u0746\u0747\u0007\u00e2\u0002\u0002\u0747\u0748\t\u001c\u0002",
+ "\u0002\u0748\u0749\u0007Q\u0002\u0002\u0749\u074b\u0005\u014a\u00a6",
+ "\u0002\u074a\u074c\u0005\u00d4k\u0002\u074b\u074a\u0003\u0002\u0002",
+ "\u0002\u074b\u074c\u0003\u0002\u0002\u0002\u074c\u00d3\u0003\u0002\u0002",
+ "\u0002\u074d\u074e\u0007\u00e5\u0002\u0002\u074e\u074f\u0007\u001a\u0002",
+ "\u0002\u074f\u0754\u0005\u01b8\u00dd\u0002\u0750\u0751\u0007\u0017\u0002",
+ "\u0002\u0751\u0753\u0005\u01b8\u00dd\u0002\u0752\u0750\u0003\u0002\u0002",
+ "\u0002\u0753\u0756\u0003\u0002\u0002\u0002\u0754\u0752\u0003\u0002\u0002",
+ "\u0002\u0754\u0755\u0003\u0002\u0002\u0002\u0755\u0757\u0003\u0002\u0002",
+ "\u0002\u0756\u0754\u0003\u0002\u0002\u0002\u0757\u0758\u0007\u001b\u0002",
+ "\u0002\u0758\u00d5\u0003\u0002\u0002\u0002\u0759\u075a\u0007\u00e6\u0002",
+ "\u0002\u075a\u075b\u0007\u0013\u0002\u0002\u075b\u00d7\u0003\u0002\u0002",
+ "\u0002\u075c\u075d\u0007\u00e7\u0002\u0002\u075d\u075e\t\u001d\u0002",
+ "\u0002\u075e\u075f\u0005\u00dan\u0002\u075f\u0760\u0007\u0017\u0002",
+ "\u0002\u0760\u0761\u0005\u00dan\u0002\u0761\u00d9\u0003\u0002\u0002",
+ "\u0002\u0762\u0764\u0005\u014a\u00a6\u0002\u0763\u0765\u0005\u014c\u00a7",
+ "\u0002\u0764\u0763\u0003\u0002\u0002\u0002\u0764\u0765\u0003\u0002\u0002",
+ "\u0002\u0765\u076b\u0003\u0002\u0002\u0002\u0766\u0767\u0007\u001a\u0002",
+ "\u0002\u0767\u0768\u0005\u011a\u008e\u0002\u0768\u0769\u0007\u001b\u0002",
+ "\u0002\u0769\u076b\u0003\u0002\u0002\u0002\u076a\u0762\u0003\u0002\u0002",
+ "\u0002\u076a\u0766\u0003\u0002\u0002\u0002\u076b\u076e\u0003\u0002\u0002",
+ "\u0002\u076c\u076d\u0007\u00de\u0002\u0002\u076d\u076f\u0005\u01b8\u00dd",
+ "\u0002\u076e\u076c\u0003\u0002\u0002\u0002\u076e\u076f\u0003\u0002\u0002",
+ "\u0002\u076f\u00db\u0003\u0002\u0002\u0002\u0770\u0771\u0007\u00e9\u0002",
+ "\u0002\u0771\u0772\u0007\u00e1\u0002\u0002\u0772\u0773\u0007@\u0002",
+ "\u0002\u0773\u0778\u0005\u00e0q\u0002\u0774\u0775\u0007\u0017\u0002",
+ "\u0002\u0775\u0777\u0005\u00e0q\u0002\u0776\u0774\u0003\u0002\u0002",
+ "\u0002\u0777\u077a\u0003\u0002\u0002\u0002\u0778\u0776\u0003\u0002\u0002",
+ "\u0002\u0778\u0779\u0003\u0002\u0002\u0002\u0779\u077b\u0003\u0002\u0002",
+ "\u0002\u077a\u0778\u0003\u0002\u0002\u0002\u077b\u077c\u0007/\u0002",
+ "\u0002\u077c\u0780\u0005\u00e2r\u0002\u077d\u077f\u0005\u00e6t\u0002",
+ "\u077e\u077d\u0003\u0002\u0002\u0002\u077f\u0782\u0003\u0002\u0002\u0002",
+ "\u0780\u077e\u0003\u0002\u0002\u0002\u0780\u0781\u0003\u0002\u0002\u0002",
+ "\u0781\u00dd\u0003\u0002\u0002\u0002\u0782\u0780\u0003\u0002\u0002\u0002",
+ "\u0783\u0789\u0007\u00e9\u0002\u0002\u0784\u078a\u0005\u014a\u00a6\u0002",
+ "\u0785\u0786\u0007\u001a\u0002\u0002\u0786\u0787\u0005\u011a\u008e\u0002",
+ "\u0787\u0788\u0007\u001b\u0002\u0002\u0788\u078a\u0003\u0002\u0002\u0002",
+ "\u0789\u0784\u0003\u0002\u0002\u0002\u0789\u0785\u0003\u0002\u0002\u0002",
+ "\u078a\u078b\u0003\u0002\u0002\u0002\u078b\u078d\u0007/\u0002\u0002",
+ "\u078c\u078e\u0007\u00ea\u0002\u0002\u078d\u078c\u0003\u0002\u0002\u0002",
+ "\u078d\u078e\u0003\u0002\u0002\u0002\u078e\u078f\u0003\u0002\u0002\u0002",
+ "\u078f\u0793\u0005\u00e2r\u0002\u0790\u0792\u0005\u00e4s\u0002\u0791",
+ "\u0790\u0003\u0002\u0002\u0002\u0792\u0795\u0003\u0002\u0002\u0002\u0793",
+ "\u0791\u0003\u0002\u0002\u0002\u0793\u0794\u0003\u0002\u0002\u0002\u0794",
+ "\u00df\u0003\u0002\u0002\u0002\u0795\u0793\u0003\u0002\u0002\u0002\u0796",
+ "\u0799\u0005\u01b2\u00da\u0002\u0797\u0799\u0005\u0180\u00c1\u0002\u0798",
+ "\u0796\u0003\u0002\u0002\u0002\u0798\u0797\u0003\u0002\u0002\u0002\u0799",
+ "\u00e1\u0003\u0002\u0002\u0002\u079a\u079d\u0005\u01b2\u00da\u0002\u079b",
+ "\u079d\u0005\u0180\u00c1\u0002\u079c\u079a\u0003\u0002\u0002\u0002\u079c",
+ "\u079b\u0003\u0002\u0002\u0002\u079d\u00e3\u0003\u0002\u0002\u0002\u079e",
+ "\u079f\u0007\u00de\u0002\u0002\u079f\u07a7\u0005\u01b8\u00dd\u0002\u07a0",
+ "\u07a1\u0007\u00eb\u0002\u0002\u07a1\u07a7\u0005\u0180\u00c1\u0002\u07a2",
+ "\u07a3\u0007\u00ec\u0002\u0002\u07a3\u07a7\u0005\u0180\u00c1\u0002\u07a4",
+ "\u07a5\u0007\u00ed\u0002\u0002\u07a5\u07a7\u0005\u01b8\u00dd\u0002\u07a6",
+ "\u079e\u0003\u0002\u0002\u0002\u07a6\u07a0\u0003\u0002\u0002\u0002\u07a6",
+ "\u07a2\u0003\u0002\u0002\u0002\u07a6\u07a4\u0003\u0002\u0002\u0002\u07a7",
+ "\u00e5\u0003\u0002\u0002\u0002\u07a8\u07a9\t\u001e\u0002\u0002\u07a9",
+ "\u00e7\u0003\u0002\u0002\u0002\u07aa\u07ac\u0007[\u0002\u0002\u07ab",
+ "\u07ad\u0007\u00ef\u0002\u0002\u07ac\u07ab\u0003\u0002\u0002\u0002\u07ac",
+ "\u07ad\u0003\u0002\u0002\u0002\u07ad\u00e9\u0003\u0002\u0002\u0002\u07ae",
+ "\u07b0\u0007=\u0002\u0002\u07af\u07b1\u0007G\u0002\u0002\u07b0\u07af",
+ "\u0003\u0002\u0002\u0002\u07b0\u07b1\u0003\u0002\u0002\u0002\u07b1\u07b2",
+ "\u0003\u0002\u0002\u0002\u07b2\u07b3\u0007k\u0002\u0002\u07b3\u07b4",
+ "\u0005\u01b8\u00dd\u0002\u07b4\u07b5\u0007Q\u0002\u0002\u07b5\u07b6",
+ "\u0005\u014a\u00a6\u0002\u07b6\u07b7\u0007\u001a\u0002\u0002\u07b7\u07bc",
+ "\u0005\u00ecw\u0002\u07b8\u07b9\u0007\u0017\u0002\u0002\u07b9\u07bb",
+ "\u0005\u00ecw\u0002\u07ba\u07b8\u0003\u0002\u0002\u0002\u07bb\u07be",
+ "\u0003\u0002\u0002\u0002\u07bc\u07ba\u0003\u0002\u0002\u0002\u07bc\u07bd",
+ "\u0003\u0002\u0002\u0002\u07bd\u07bf\u0003\u0002\u0002\u0002\u07be\u07bc",
+ "\u0003\u0002\u0002\u0002\u07bf\u07c0\u0007\u001b\u0002\u0002\u07c0\u00eb",
+ "\u0003\u0002\u0002\u0002\u07c1\u07c3\u0005\u01b8\u00dd\u0002\u07c2\u07c4",
+ "\t\t\u0002\u0002\u07c3\u07c2\u0003\u0002\u0002\u0002\u07c3\u07c4\u0003",
+ "\u0002\u0002\u0002\u07c4\u00ed\u0003\u0002\u0002\u0002\u07c5\u07c6\u0005",
+ "\u00f0y\u0002\u07c6\u00ef\u0003\u0002\u0002\u0002\u07c7\u07c8\u0007",
+ "$\u0002\u0002\u07c8\u07c9\u0007\u001a\u0002\u0002\u07c9\u07ca\u0005",
+ "\u01b8\u00dd\u0002\u07ca\u07cb\u0007\u0019\u0002\u0002\u07cb\u07d3\u0005",
+ "\u01b8\u00dd\u0002\u07cc\u07cd\u0007\u0017\u0002\u0002\u07cd\u07ce\u0005",
+ "\u01b8\u00dd\u0002\u07ce\u07cf\u0007\u0019\u0002\u0002\u07cf\u07d0\u0005",
+ "\u01b8\u00dd\u0002\u07d0\u07d2\u0003\u0002\u0002\u0002\u07d1\u07cc\u0003",
+ "\u0002\u0002\u0002\u07d2\u07d5\u0003\u0002\u0002\u0002\u07d3\u07d1\u0003",
+ "\u0002\u0002\u0002\u07d3\u07d4\u0003\u0002\u0002\u0002\u07d4\u07d6\u0003",
+ "\u0002\u0002\u0002\u07d5\u07d3\u0003\u0002\u0002\u0002\u07d6\u07da\u0007",
+ "\u001b\u0002\u0002\u07d7\u07d9\u0005l7\u0002\u07d8\u07d7\u0003\u0002",
+ "\u0002\u0002\u07d9\u07dc\u0003\u0002\u0002\u0002\u07da\u07d8\u0003\u0002",
+ "\u0002\u0002\u07da\u07db\u0003\u0002\u0002\u0002\u07db\u00f1\u0003\u0002",
+ "\u0002\u0002\u07dc\u07da\u0003\u0002\u0002\u0002\u07dd\u07de\u0007\u00f0",
+ "\u0002\u0002\u07de\u07e5\u0005\u0180\u00c1\u0002\u07df\u07e0\u0007\u00f0",
+ "\u0002\u0002\u07e0\u07e1\u0007\u001a\u0002\u0002\u07e1\u07e2\u0005\u0180",
+ "\u00c1\u0002\u07e2\u07e3\u0007\u001b\u0002\u0002\u07e3\u07e5\u0003\u0002",
+ "\u0002\u0002\u07e4\u07dd\u0003\u0002\u0002\u0002\u07e4\u07df\u0003\u0002",
+ "\u0002\u0002\u07e5\u00f3\u0003\u0002\u0002\u0002\u07e6\u07e8\u0007\u0007",
+ "\u0002\u0002\u07e7\u07e6\u0003\u0002\u0002\u0002\u07e7\u07e8\u0003\u0002",
+ "\u0002\u0002\u07e8\u07e9\u0003\u0002\u0002\u0002\u07e9\u07eb\u0007\u00f1",
+ "\u0002\u0002\u07ea\u07ec\u0005\u0180\u00c1\u0002\u07eb\u07ea\u0003\u0002",
+ "\u0002\u0002\u07eb\u07ec\u0003\u0002\u0002\u0002\u07ec\u00f5\u0003\u0002",
+ "\u0002\u0002\u07ed\u07ee\u0007\u00f2\u0002\u0002\u07ee\u00f7\u0003\u0002",
+ "\u0002\u0002\u07ef\u07fb\u0007\u00f3\u0002\u0002\u07f0\u07f2\u0007\u00f4",
+ "\u0002\u0002\u07f1\u07f3\u0007\u00f5\u0002\u0002\u07f2\u07f1\u0003\u0002",
+ "\u0002\u0002\u07f2\u07f3\u0003\u0002\u0002\u0002\u07f3\u07f4\u0003\u0002",
+ "\u0002\u0002\u07f4\u07f9\u0005\u0180\u00c1\u0002\u07f5\u07f6\u0007\u0016",
+ "\u0002\u0002\u07f6\u07f7\u0007\u00d8\u0002\u0002\u07f7\u07f8\u0007\u0019",
+ "\u0002\u0002\u07f8\u07fa\u0005\u0180\u00c1\u0002\u07f9\u07f5\u0003\u0002",
+ "\u0002\u0002\u07f9\u07fa\u0003\u0002\u0002\u0002\u07fa\u07fc\u0003\u0002",
+ "\u0002\u0002\u07fb\u07f0\u0003\u0002\u0002\u0002\u07fb\u07fc\u0003\u0002",
+ "\u0002\u0002\u07fc\u00f9\u0003\u0002\u0002\u0002\u07fd\u07ff\u0007-",
+ "\u0002\u0002\u07fe\u0800\u0005\u0180\u00c1\u0002\u07ff\u07fe\u0003\u0002",
+ "\u0002\u0002\u07ff\u0800\u0003\u0002\u0002\u0002\u0800\u00fb\u0003\u0002",
+ "\u0002\u0002\u0801\u0803\u0007\u00f6\u0002\u0002\u0802\u0804\u0007\u00ef",
+ "\u0002\u0002\u0803\u0802\u0003\u0002\u0002\u0002\u0803\u0804\u0003\u0002",
+ "\u0002\u0002\u0804\u00fd\u0003\u0002\u0002\u0002\u0805\u0809\u0005\u0100",
+ "\u0081\u0002\u0806\u0809\u0005\u0102\u0082\u0002\u0807\u0809\u0005\u0104",
+ "\u0083\u0002\u0808\u0805\u0003\u0002\u0002\u0002\u0808\u0806\u0003\u0002",
+ "\u0002\u0002\u0808\u0807\u0003\u0002\u0002\u0002\u0809\u00ff\u0003\u0002",
+ "\u0002\u0002\u080a\u080c\u0007\u00f7\u0002\u0002\u080b\u080a\u0003\u0002",
+ "\u0002\u0002\u080b\u080c\u0003\u0002\u0002\u0002\u080c\u080d\u0003\u0002",
+ "\u0002\u0002\u080d\u0810\u0007\u00b8\u0002\u0002\u080e\u0810\u0007\u00f8",
+ "\u0002\u0002\u080f\u080b\u0003\u0002\u0002\u0002\u080f\u080e\u0003\u0002",
+ "\u0002\u0002\u0810\u0812\u0003\u0002\u0002\u0002\u0811\u0813\u0007\u0019",
+ "\u0002\u0002\u0812\u0811\u0003\u0002\u0002\u0002\u0812\u0813\u0003\u0002",
+ "\u0002\u0002\u0813\u0814\u0003\u0002\u0002\u0002\u0814\u0815\u0005\u0180",
+ "\u00c1\u0002\u0815\u0101\u0003\u0002\u0002\u0002\u0816\u0817\t\u001f",
+ "\u0002\u0002\u0817\u0818\t \u0002\u0002\u0818\u0103\u0003\u0002\u0002",
+ "\u0002\u0819\u081a\u0007\u00ff\u0002\u0002\u081a\u081d\u0007\u0019\u0002",
+ "\u0002\u081b\u081e\u0005\u0180\u00c1\u0002\u081c\u081e\u0007\u0100\u0002",
+ "\u0002\u081d\u081b\u0003\u0002\u0002\u0002\u081d\u081c\u0003\u0002\u0002",
+ "\u0002\u081e\u0820\u0003\u0002\u0002\u0002\u081f\u0821\u0007R\u0002",
+ "\u0002\u0820\u081f\u0003\u0002\u0002\u0002\u0820\u0821\u0003\u0002\u0002",
+ "\u0002\u0821\u0822\u0003\u0002\u0002\u0002\u0822\u0823\u0007\u001e\u0002",
+ "\u0002\u0823\u0824\t!\u0002\u0002\u0824\u0105\u0003\u0002\u0002\u0002",
+ "\u0825\u0826\u0007\u0102\u0002\u0002\u0826\u0827\u0005\u01b8\u00dd\u0002",
+ "\u0827\u0107\u0003\u0002\u0002\u0002\u0828\u082b\u0007\u0103\u0002\u0002",
+ "\u0829\u082a\u0007\u0104\u0002\u0002\u082a\u082c\u0005\u0180\u00c1\u0002",
+ "\u082b\u0829\u0003\u0002\u0002\u0002\u082b\u082c\u0003\u0002\u0002\u0002",
+ "\u082c\u082d\u0003\u0002\u0002\u0002\u082d\u0837\u0007\u001e\u0002\u0002",
+ "\u082e\u0838\u0005\u011a\u008e\u0002\u082f\u0831\u0005\u014a\u00a6\u0002",
+ "\u0830\u0832\u0005\u014c\u00a7\u0002\u0831\u0830\u0003\u0002\u0002\u0002",
+ "\u0831\u0832\u0003\u0002\u0002\u0002\u0832\u0835\u0003\u0002\u0002\u0002",
+ "\u0833\u0834\u0007\u0105\u0002\u0002\u0834\u0836\u0005\u0180\u00c1\u0002",
+ "\u0835\u0833\u0003\u0002\u0002\u0002\u0835\u0836\u0003\u0002\u0002\u0002",
+ "\u0836\u0838\u0003\u0002\u0002\u0002\u0837\u082e\u0003\u0002\u0002\u0002",
+ "\u0837\u082f\u0003\u0002\u0002\u0002\u0838\u0109\u0003\u0002\u0002\u0002",
+ "\u0839\u083b\u0007\u0106\u0002\u0002\u083a\u083c\u0007<\u0002\u0002",
+ "\u083b\u083a\u0003\u0002\u0002\u0002\u083b\u083c\u0003\u0002\u0002\u0002",
+ "\u083c\u083d\u0003\u0002\u0002\u0002\u083d\u083e\u0005\u014a\u00a6\u0002",
+ "\u083e\u010b\u0003\u0002\u0002\u0002\u083f\u0840\u0007\u0107\u0002\u0002",
+ "\u0840\u0841\u0005\u0180\u00c1\u0002\u0841\u010d\u0003\u0002\u0002\u0002",
+ "\u0842\u0844\u0007\u00d4\u0002\u0002\u0843\u0845\u0007\u001a\u0002\u0002",
+ "\u0844\u0843\u0003\u0002\u0002\u0002\u0844\u0845\u0003\u0002\u0002\u0002",
+ "\u0845\u0846\u0003\u0002\u0002\u0002\u0846\u084b\u0005\u0180\u00c1\u0002",
+ "\u0847\u0848\u0007\u0017\u0002\u0002\u0848\u084a\u0005\u0180\u00c1\u0002",
+ "\u0849\u0847\u0003\u0002\u0002\u0002\u084a\u084d\u0003\u0002\u0002\u0002",
+ "\u084b\u0849\u0003\u0002\u0002\u0002\u084b\u084c\u0003\u0002\u0002\u0002",
+ "\u084c\u084f\u0003\u0002\u0002\u0002\u084d\u084b\u0003\u0002\u0002\u0002",
+ "\u084e\u0850\u0007\u001b\u0002\u0002\u084f\u084e\u0003\u0002\u0002\u0002",
+ "\u084f\u0850\u0003\u0002\u0002\u0002\u0850\u0851\u0003\u0002\u0002\u0002",
+ "\u0851\u0853\u0007\u00cd\u0002\u0002\u0852\u0854\u0007\u001a\u0002\u0002",
+ "\u0853\u0852\u0003\u0002\u0002\u0002\u0853\u0854\u0003\u0002\u0002\u0002",
+ "\u0854\u0855\u0003\u0002\u0002\u0002\u0855\u085a\u0005\u01b8\u00dd\u0002",
+ "\u0856\u0857\u0007\u0017\u0002\u0002\u0857\u0859\u0005\u01b8\u00dd\u0002",
+ "\u0858\u0856\u0003\u0002\u0002\u0002\u0859\u085c\u0003\u0002\u0002\u0002",
+ "\u085a\u0858\u0003\u0002\u0002\u0002\u085a\u085b\u0003\u0002\u0002\u0002",
+ "\u085b\u085e\u0003\u0002\u0002\u0002\u085c\u085a\u0003\u0002\u0002\u0002",
+ "\u085d\u085f\u0007\u001b\u0002\u0002\u085e\u085d\u0003\u0002\u0002\u0002",
+ "\u085e\u085f\u0003\u0002\u0002\u0002\u085f\u010f\u0003\u0002\u0002\u0002",
+ "\u0860\u0861\u0007\u0108\u0002\u0002\u0861\u0862\u0005\u0170\u00b9\u0002",
+ "\u0862\u0863\t\"\u0002\u0002\u0863\u0864\u0005\u0004\u0003\u0002\u0864",
+ "\u0866\u0007\u0010\u0002\u0002\u0865\u0867\t#\u0002\u0002\u0866\u0865",
+ "\u0003\u0002\u0002\u0002\u0866\u0867\u0003\u0002\u0002\u0002\u0867\u0111",
+ "\u0003\u0002\u0002\u0002\u0868\u0869\u0007\u001e\u0002\u0002\u0869\u086a",
+ "\u0007\u0013\u0002\u0002\u086a\u086c\u0007l\u0002\u0002\u086b\u086d",
+ "\u0007\u001a\u0002\u0002\u086c\u086b\u0003\u0002\u0002\u0002\u086c\u086d",
+ "\u0003\u0002\u0002\u0002\u086d\u086e\u0003\u0002\u0002\u0002\u086e\u0870",
+ "\u0005\u011a\u008e\u0002\u086f\u0871\u0007\u001b\u0002\u0002\u0870\u086f",
+ "\u0003\u0002\u0002\u0002\u0870\u0871\u0003\u0002\u0002\u0002\u0871\u0872",
+ "\u0003\u0002\u0002\u0002\u0872\u0873\u0007\u010a\u0002\u0002\u0873\u0874",
+ "\u0005\u0004\u0003\u0002\u0874\u0875\u0007\u0010\u0002\u0002\u0875\u0876",
+ "\u0007\u010a\u0002\u0002\u0876\u0113\u0003\u0002\u0002\u0002\u0877\u0878",
+ "\u0007\u001e\u0002\u0002\u0878\u0879\u0007\u0013\u0002\u0002\u0879\u087b",
+ "\u0007l\u0002\u0002\u087a\u087c\u0007\u010b\u0002\u0002\u087b\u087a",
+ "\u0003\u0002\u0002\u0002\u087b\u087c\u0003\u0002\u0002\u0002\u087c\u087d",
+ "\u0003\u0002\u0002\u0002\u087d\u087e\u0005\u0180\u00c1\u0002\u087e\u087f",
+ "\u0007\u010c\u0002\u0002\u087f\u0882\u0005\u0180\u00c1\u0002\u0880\u0881",
+ "\t$\u0002\u0002\u0881\u0883\u0005\u0180\u00c1\u0002\u0882\u0880\u0003",
+ "\u0002\u0002\u0002\u0882\u0883\u0003\u0002\u0002\u0002\u0883\u0884\u0003",
+ "\u0002\u0002\u0002\u0884\u0885\u0007\u010a\u0002\u0002\u0885\u0886\u0005",
+ "\u0004\u0003\u0002\u0886\u0887\u0007\u0010\u0002\u0002\u0887\u0888\u0007",
+ "\u010a\u0002\u0002\u0888\u0115\u0003\u0002\u0002\u0002\u0889\u0890\u0007",
+ "\u010e\u0002\u0002\u088a\u088b\u0007\u010f\u0002\u0002\u088b\u088c\u0007",
+ "\u010f\u0002\u0002\u088c\u088d\u0007\u0013\u0002\u0002\u088d\u088e\u0007",
+ "\u0110\u0002\u0002\u088e\u0890\u0007\u0110\u0002\u0002\u088f\u0889\u0003",
+ "\u0002\u0002\u0002\u088f\u088a\u0003\u0002\u0002\u0002\u0890\u0117\u0003",
+ "\u0002\u0002\u0002\u0891\u0892\u0007\u0111\u0002\u0002\u0892\u0897\u0005",
+ "\u0180\u00c1\u0002\u0893\u0894\u0007\u0017\u0002\u0002\u0894\u0896\u0005",
+ "\u0180\u00c1\u0002\u0895\u0893\u0003\u0002\u0002\u0002\u0896\u0899\u0003",
+ "\u0002\u0002\u0002\u0897\u0895\u0003\u0002\u0002\u0002\u0897\u0898\u0003",
+ "\u0002\u0002\u0002\u0898\u0119\u0003\u0002\u0002\u0002\u0899\u0897\u0003",
+ "\u0002\u0002\u0002\u089a\u089c\u0005\u011c\u008f\u0002\u089b\u089a\u0003",
+ "\u0002\u0002\u0002\u089b\u089c\u0003\u0002\u0002\u0002\u089c\u089d\u0003",
+ "\u0002\u0002\u0002\u089d\u089e\u0005\u0122\u0092\u0002\u089e\u011b\u0003",
+ "\u0002\u0002\u0002\u089f\u08a0\u0007$\u0002\u0002\u08a0\u08a5\u0005",
+ "\u011e\u0090\u0002\u08a1\u08a2\u0007\u0017\u0002\u0002\u08a2\u08a4\u0005",
+ "\u011e\u0090\u0002\u08a3\u08a1\u0003\u0002\u0002\u0002\u08a4\u08a7\u0003",
+ "\u0002\u0002\u0002\u08a5\u08a3\u0003\u0002\u0002\u0002\u08a5\u08a6\u0003",
+ "\u0002\u0002\u0002\u08a6\u011d\u0003\u0002\u0002\u0002\u08a7\u08a5\u0003",
+ "\u0002\u0002\u0002\u08a8\u08aa\u0005\u01b8\u00dd\u0002\u08a9\u08ab\u0005",
+ "\u0120\u0091\u0002\u08aa\u08a9\u0003\u0002\u0002\u0002\u08aa\u08ab\u0003",
+ "\u0002\u0002\u0002\u08ab\u08ac\u0003\u0002\u0002\u0002\u08ac\u08ad\u0007",
+ ")\u0002\u0002\u08ad\u08ae\u0007\u001a\u0002\u0002\u08ae\u08af\u0005",
+ "\u0122\u0092\u0002\u08af\u08b0\u0007\u001b\u0002\u0002\u08b0\u011f\u0003",
+ "\u0002\u0002\u0002\u08b1\u08b2\u0007\u001a\u0002\u0002\u08b2\u08b7\u0005",
+ "\u01b8\u00dd\u0002\u08b3\u08b4\u0007\u0017\u0002\u0002\u08b4\u08b6\u0005",
+ "\u01b8\u00dd\u0002\u08b5\u08b3\u0003\u0002\u0002\u0002\u08b6\u08b9\u0003",
+ "\u0002\u0002\u0002\u08b7\u08b5\u0003\u0002\u0002\u0002\u08b7\u08b8\u0003",
+ "\u0002\u0002\u0002\u08b8\u08ba\u0003\u0002\u0002\u0002\u08b9\u08b7\u0003",
+ "\u0002\u0002\u0002\u08ba\u08bb\u0007\u001b\u0002\u0002\u08bb\u0121\u0003",
+ "\u0002\u0002\u0002\u08bc\u08c2\u0005\u0124\u0093\u0002\u08bd\u08be\u0005",
+ "\u0126\u0094\u0002\u08be\u08bf\u0005\u0124\u0093\u0002\u08bf\u08c1\u0003",
+ "\u0002\u0002\u0002\u08c0\u08bd\u0003\u0002\u0002\u0002\u08c1\u08c4\u0003",
+ "\u0002\u0002\u0002\u08c2\u08c0\u0003\u0002\u0002\u0002\u08c2\u08c3\u0003",
+ "\u0002\u0002\u0002\u08c3\u0123\u0003\u0002\u0002\u0002\u08c4\u08c2\u0003",
+ "\u0002\u0002\u0002\u08c5\u08cb\u0005\u0128\u0095\u0002\u08c6\u08c7\u0007",
+ "\u001a\u0002\u0002\u08c7\u08c8\u0005\u0122\u0092\u0002\u08c8\u08c9\u0007",
+ "\u001b\u0002\u0002\u08c9\u08cb\u0003\u0002\u0002\u0002\u08ca\u08c5\u0003",
+ "\u0002\u0002\u0002\u08ca\u08c6\u0003\u0002\u0002\u0002\u08cb\u0125\u0003",
+ "\u0002\u0002\u0002\u08cc\u08ce\u0007\u0112\u0002\u0002\u08cd\u08cf\u0007",
+ "\u0113\u0002\u0002\u08ce\u08cd\u0003\u0002\u0002\u0002\u08ce\u08cf\u0003",
+ "\u0002\u0002\u0002\u08cf\u08d9\u0003\u0002\u0002\u0002\u08d0\u08d2\u0007",
+ "\u0114\u0002\u0002\u08d1\u08d3\u0007\u0113\u0002\u0002\u08d2\u08d1\u0003",
+ "\u0002\u0002\u0002\u08d2\u08d3\u0003\u0002\u0002\u0002\u08d3\u08d9\u0003",
+ "\u0002\u0002\u0002\u08d4\u08d6\u0007\u0115\u0002\u0002\u08d5\u08d7\u0007",
+ "\u0113\u0002\u0002\u08d6\u08d5\u0003\u0002\u0002\u0002\u08d6\u08d7\u0003",
+ "\u0002\u0002\u0002\u08d7\u08d9\u0003\u0002\u0002\u0002\u08d8\u08cc\u0003",
+ "\u0002\u0002\u0002\u08d8\u08d0\u0003\u0002\u0002\u0002\u08d8\u08d4\u0003",
+ "\u0002\u0002\u0002\u08d9\u0127\u0003\u0002\u0002\u0002\u08da\u08db\t",
+ "%\u0002\u0002\u08db\u08dd\u0005\u012a\u0096\u0002\u08dc\u08de\u0005",
+ "\u0136\u009c\u0002\u08dd\u08dc\u0003\u0002\u0002\u0002\u08dd\u08de\u0003",
+ "\u0002\u0002\u0002\u08de\u08e0\u0003\u0002\u0002\u0002\u08df\u08e1\u0005",
+ "\u0138\u009d\u0002\u08e0\u08df\u0003\u0002\u0002\u0002\u08e0\u08e1\u0003",
+ "\u0002\u0002\u0002\u08e1\u08e3\u0003\u0002\u0002\u0002\u08e2\u08e4\u0005",
+ "\u014c\u00a7\u0002\u08e3\u08e2\u0003\u0002\u0002\u0002\u08e3\u08e4\u0003",
+ "\u0002\u0002\u0002\u08e4\u08e6\u0003\u0002\u0002\u0002\u08e5\u08e7\u0005",
+ "\u014e\u00a8\u0002\u08e6\u08e5\u0003\u0002\u0002\u0002\u08e6\u08e7\u0003",
+ "\u0002\u0002\u0002\u08e7\u08ea\u0003\u0002\u0002\u0002\u08e8\u08eb\u0005",
+ "\u0150\u00a9\u0002\u08e9\u08eb\u0005\u0152\u00aa\u0002\u08ea\u08e8\u0003",
+ "\u0002\u0002\u0002\u08ea\u08e9\u0003\u0002\u0002\u0002\u08ea\u08eb\u0003",
+ "\u0002\u0002\u0002\u08eb\u08ed\u0003\u0002\u0002\u0002\u08ec\u08ee\u0005",
+ "\u0154\u00ab\u0002\u08ed\u08ec\u0003\u0002\u0002\u0002\u08ed\u08ee\u0003",
+ "\u0002\u0002\u0002\u08ee\u08f0\u0003\u0002\u0002\u0002\u08ef\u08f1\u0005",
+ "\u0156\u00ac\u0002\u08f0\u08ef\u0003\u0002\u0002\u0002\u08f0\u08f1\u0003",
+ "\u0002\u0002\u0002\u08f1\u0129\u0003\u0002\u0002\u0002\u08f2\u08f4\u0005",
+ "\u012c\u0097\u0002\u08f3\u08f2\u0003\u0002\u0002\u0002\u08f3\u08f4\u0003",
+ "\u0002\u0002\u0002\u08f4\u08f6\u0003\u0002\u0002\u0002\u08f5\u08f7\u0005",
+ "\u012e\u0098\u0002\u08f6\u08f5\u0003\u0002\u0002\u0002\u08f6\u08f7\u0003",
+ "\u0002\u0002\u0002\u08f7\u08f8\u0003\u0002\u0002\u0002\u08f8\u08fd\u0005",
+ "\u0130\u0099\u0002\u08f9\u08fa\u0007\u0017\u0002\u0002\u08fa\u08fc\u0005",
+ "\u0130\u0099\u0002\u08fb\u08f9\u0003\u0002\u0002\u0002\u08fc\u08ff\u0003",
+ "\u0002\u0002\u0002\u08fd\u08fb\u0003\u0002\u0002\u0002\u08fd\u08fe\u0003",
+ "\u0002\u0002\u0002\u08fe\u012b\u0003\u0002\u0002\u0002\u08ff\u08fd\u0003",
+ "\u0002\u0002\u0002\u0900\u0901\t&\u0002\u0002\u0901\u012d\u0003\u0002",
+ "\u0002\u0002\u0902\u0903\u0007\u0104\u0002\u0002\u0903\u0904\u0005\u0180",
+ "\u00c1\u0002\u0904\u012f\u0003\u0002\u0002\u0002\u0905\u0906\u0005\u01b8",
+ "\u00dd\u0002\u0906\u0907\u0007\u0019\u0002\u0002\u0907\u0909\u0003\u0002",
+ "\u0002\u0002\u0908\u0905\u0003\u0002\u0002\u0002\u0908\u0909\u0003\u0002",
+ "\u0002\u0002\u0909\u090a\u0003\u0002\u0002\u0002\u090a\u090c\u0005\u0180",
+ "\u00c1\u0002\u090b\u090d\u0005\u0132\u009a\u0002\u090c\u090b\u0003\u0002",
+ "\u0002\u0002\u090c\u090d\u0003\u0002\u0002\u0002\u090d\u0910\u0003\u0002",
+ "\u0002\u0002\u090e\u0910\u0005\u0134\u009b\u0002\u090f\u0908\u0003\u0002",
+ "\u0002\u0002\u090f\u090e\u0003\u0002\u0002\u0002\u0910\u0131\u0003\u0002",
+ "\u0002\u0002\u0911\u0913\u0006\u009a\u0005\u0002\u0912\u0914\u0007)",
+ "\u0002\u0002\u0913\u0912\u0003\u0002\u0002\u0002\u0913\u0914\u0003\u0002",
+ "\u0002\u0002\u0914\u0915\u0003\u0002\u0002\u0002\u0915\u091b\u0005\u01b8",
+ "\u00dd\u0002\u0916\u0917\u0007\u001a\u0002\u0002\u0917\u0918\u0007\u0119",
+ "\u0002\u0002\u0918\u0919\u0007\u011a\u0002\u0002\u0919\u091b\u0007\u001b",
+ "\u0002\u0002\u091a\u0911\u0003\u0002\u0002\u0002\u091a\u0916\u0003\u0002",
+ "\u0002\u0002\u091b\u0133\u0003\u0002\u0002\u0002\u091c\u091d\u0007\u0013",
+ "\u0002\u0002\u091d\u091f\u0007\u0007\u0002\u0002\u091e\u091c\u0003\u0002",
+ "\u0002\u0002\u091e\u091f\u0003\u0002\u0002\u0002\u091f\u0920\u0003\u0002",
+ "\u0002\u0002\u0920\u0921\u0007\b\u0002\u0002\u0921\u0135\u0003\u0002",
+ "\u0002\u0002\u0922\u0923\u0007\u00cd\u0002\u0002\u0923\u0928\u0005\u01b8",
+ "\u00dd\u0002\u0924\u0925\u0007\u0017\u0002\u0002\u0925\u0927\u0005\u01b8",
+ "\u00dd\u0002\u0926\u0924\u0003\u0002\u0002\u0002\u0927\u092a\u0003\u0002",
+ "\u0002\u0002\u0928\u0926\u0003\u0002\u0002\u0002\u0928\u0929\u0003\u0002",
+ "\u0002\u0002\u0929\u0137\u0003\u0002\u0002\u0002\u092a\u0928\u0003\u0002",
+ "\u0002\u0002\u092b\u092c\u0007\u00e1\u0002\u0002\u092c\u0930\u0005\u013a",
+ "\u009e\u0002\u092d\u092f\u0005\u0140\u00a1\u0002\u092e\u092d\u0003\u0002",
+ "\u0002\u0002\u092f\u0932\u0003\u0002\u0002\u0002\u0930\u092e\u0003\u0002",
+ "\u0002\u0002\u0930\u0931\u0003\u0002\u0002\u0002\u0931\u0139\u0003\u0002",
+ "\u0002\u0002\u0932\u0930\u0003\u0002\u0002\u0002\u0933\u0937\u0005\u013c",
+ "\u009f\u0002\u0934\u0937\u0005\u013e\u00a0\u0002\u0935\u0937\u0005\u0144",
+ "\u00a3\u0002\u0936\u0933\u0003\u0002\u0002\u0002\u0936\u0934\u0003\u0002",
+ "\u0002\u0002\u0936\u0935\u0003\u0002\u0002\u0002\u0937\u013b\u0003\u0002",
+ "\u0002\u0002\u0938\u093a\u0005\u014a\u00a6\u0002\u0939\u093b\u0005\u0148",
+ "\u00a5\u0002\u093a\u0939\u0003\u0002\u0002\u0002\u093a\u093b\u0003\u0002",
+ "\u0002\u0002\u093b\u013d\u0003\u0002\u0002\u0002\u093c\u093d\u0007\u001a",
+ "\u0002\u0002\u093d\u093e\u0005\u011a\u008e\u0002\u093e\u0940\u0007\u001b",
+ "\u0002\u0002\u093f\u0941\u0005\u0148\u00a5\u0002\u0940\u093f\u0003\u0002",
+ "\u0002\u0002\u0940\u0941\u0003\u0002\u0002\u0002\u0941\u013f\u0003\u0002",
+ "\u0002\u0002\u0942\u0943\u0007\u0017\u0002\u0002\u0943\u094a\u0005\u013a",
+ "\u009e\u0002\u0944\u0945\u0005\u0142\u00a2\u0002\u0945\u0946\u0005\u013a",
+ "\u009e\u0002\u0946\u0947\u0007Q\u0002\u0002\u0947\u0948\u0005\u0170",
+ "\u00b9\u0002\u0948\u094a\u0003\u0002\u0002\u0002\u0949\u0942\u0003\u0002",
+ "\u0002\u0002\u0949\u0944\u0003\u0002\u0002\u0002\u094a\u0141\u0003\u0002",
+ "\u0002\u0002\u094b\u094d\u0007\u011b\u0002\u0002\u094c\u094b\u0003\u0002",
+ "\u0002\u0002\u094c\u094d\u0003\u0002\u0002\u0002\u094d\u094e\u0003\u0002",
+ "\u0002\u0002\u094e\u0955\u0007\u011c\u0002\u0002\u094f\u0951\t\'\u0002",
+ "\u0002\u0950\u0952\u0007\u0120\u0002\u0002\u0951\u0950\u0003\u0002\u0002",
+ "\u0002\u0951\u0952\u0003\u0002\u0002\u0002\u0952\u0953\u0003\u0002\u0002",
+ "\u0002\u0953\u0955\u0007\u011c\u0002\u0002\u0954\u094c\u0003\u0002\u0002",
+ "\u0002\u0954\u094f\u0003\u0002\u0002\u0002\u0955\u0143\u0003\u0002\u0002",
+ "\u0002\u0956\u0957\u0007<\u0002\u0002\u0957\u0958\u0007\u001a\u0002",
+ "\u0002\u0958\u0959\u0007\u00d4\u0002\u0002\u0959\u095e\u0005\u0146\u00a4",
+ "\u0002\u095a\u095b\u0007\u0017\u0002\u0002\u095b\u095d\u0005\u0146\u00a4",
+ "\u0002\u095c\u095a\u0003\u0002\u0002\u0002\u095d\u0960\u0003\u0002\u0002",
+ "\u0002\u095e\u095c\u0003\u0002\u0002\u0002\u095e\u095f\u0003\u0002\u0002",
+ "\u0002\u095f\u0961\u0003\u0002\u0002\u0002\u0960\u095e\u0003\u0002\u0002",
+ "\u0002\u0961\u0963\u0007\u001b\u0002\u0002\u0962\u0964\u0005\u0148\u00a5",
+ "\u0002\u0963\u0962\u0003\u0002\u0002\u0002\u0963\u0964\u0003\u0002\u0002",
+ "\u0002\u0964\u0145\u0003\u0002\u0002\u0002\u0965\u0972\u0005\u0180\u00c1",
+ "\u0002\u0966\u0967\u0007\u001a\u0002\u0002\u0967\u096c\u0005\u0180\u00c1",
+ "\u0002\u0968\u0969\u0007\u0017\u0002\u0002\u0969\u096b\u0005\u0180\u00c1",
+ "\u0002\u096a\u0968\u0003\u0002\u0002\u0002\u096b\u096e\u0003\u0002\u0002",
+ "\u0002\u096c\u096a\u0003\u0002\u0002\u0002\u096c\u096d\u0003\u0002\u0002",
+ "\u0002\u096d\u096f\u0003\u0002\u0002\u0002\u096e\u096c\u0003\u0002\u0002",
+ "\u0002\u096f\u0970\u0007\u001b\u0002\u0002\u0970\u0972\u0003\u0002\u0002",
+ "\u0002\u0971\u0965\u0003\u0002\u0002\u0002\u0971\u0966\u0003\u0002\u0002",
+ "\u0002\u0972\u0147\u0003\u0002\u0002\u0002\u0973\u0975\u0006\u00a5\u0006",
+ "\u0002\u0974\u0976\u0007)\u0002\u0002\u0975\u0974\u0003\u0002\u0002",
+ "\u0002\u0975\u0976\u0003\u0002\u0002\u0002\u0976\u0977\u0003\u0002\u0002",
+ "\u0002\u0977\u0982\u0005\u01b8\u00dd\u0002\u0978\u0979\u0007\u001a\u0002",
+ "\u0002\u0979\u097e\u0007\u0013\u0002\u0002\u097a\u097b\u0007\u0017\u0002",
+ "\u0002\u097b\u097d\u0007\u0013\u0002\u0002\u097c\u097a\u0003\u0002\u0002",
+ "\u0002\u097d\u0980\u0003\u0002\u0002\u0002\u097e\u097c\u0003\u0002\u0002",
+ "\u0002\u097e\u097f\u0003\u0002\u0002\u0002\u097f\u0981\u0003\u0002\u0002",
+ "\u0002\u0980\u097e\u0003\u0002\u0002\u0002\u0981\u0983\u0007\u001b\u0002",
+ "\u0002\u0982\u0978\u0003\u0002\u0002\u0002\u0982\u0983\u0003\u0002\u0002",
+ "\u0002\u0983\u0149\u0003\u0002\u0002\u0002\u0984\u0985\u0005\u01b8\u00dd",
+ "\u0002\u0985\u014b\u0003\u0002\u0002\u0002\u0986\u0987\u0007\u0121\u0002",
+ "\u0002\u0987\u0988\u0005\u0170\u00b9\u0002\u0988\u014d\u0003\u0002\u0002",
+ "\u0002\u0989\u098a\u0007\u0122\u0002\u0002\u098a\u098b\u0007o\u0002",
+ "\u0002\u098b\u0990\u0005\u0180\u00c1\u0002\u098c\u098d\u0007\u0017\u0002",
+ "\u0002\u098d\u098f\u0005\u0180\u00c1\u0002\u098e\u098c\u0003\u0002\u0002",
+ "\u0002\u098f\u0992\u0003\u0002\u0002\u0002\u0990\u098e\u0003\u0002\u0002",
+ "\u0002\u0990\u0991\u0003\u0002\u0002\u0002\u0991\u014f\u0003\u0002\u0002",
+ "\u0002\u0992\u0990\u0003\u0002\u0002\u0002\u0993\u0994\u0007\u0123\u0002",
+ "\u0002\u0994\u0995\u0005\u0170\u00b9\u0002\u0995\u0151\u0003\u0002\u0002",
+ "\u0002\u0996\u0997\u0007\u0124\u0002\u0002\u0997\u0998\u0005\u0170\u00b9",
+ "\u0002\u0998\u0153\u0003\u0002\u0002\u0002\u0999\u099a\u0007\u0125\u0002",
+ "\u0002\u099a\u099b\u0007o\u0002\u0002\u099b\u099d\u0005\u0180\u00c1",
+ "\u0002\u099c\u099e\t\t\u0002\u0002\u099d\u099c\u0003\u0002\u0002\u0002",
+ "\u099d\u099e\u0003\u0002\u0002\u0002\u099e\u09a6\u0003\u0002\u0002\u0002",
+ "\u099f\u09a0\u0007\u0017\u0002\u0002\u09a0\u09a2\u0005\u0180\u00c1\u0002",
+ "\u09a1\u09a3\t\t\u0002\u0002\u09a2\u09a1\u0003\u0002\u0002\u0002\u09a2",
+ "\u09a3\u0003\u0002\u0002\u0002\u09a3\u09a5\u0003\u0002\u0002\u0002\u09a4",
+ "\u099f\u0003\u0002\u0002\u0002\u09a5\u09a8\u0003\u0002\u0002\u0002\u09a6",
+ "\u09a4\u0003\u0002\u0002\u0002\u09a6\u09a7\u0003\u0002\u0002\u0002\u09a7",
+ "\u0155\u0003\u0002\u0002\u0002\u09a8\u09a6\u0003\u0002\u0002\u0002\u09a9",
+ "\u09ab\u0005\u0158\u00ad\u0002\u09aa\u09a9\u0003\u0002\u0002\u0002\u09ab",
+ "\u09ac\u0003\u0002\u0002\u0002\u09ac\u09aa\u0003\u0002\u0002\u0002\u09ac",
+ "\u09ad\u0003\u0002\u0002\u0002\u09ad\u0157\u0003\u0002\u0002\u0002\u09ae",
+ "\u09af\u0007\u0105\u0002\u0002\u09af\u09ba\u0005\u0180\u00c1\u0002\u09b0",
+ "\u09b1\u0007$\u0002\u0002\u09b1\u09b7\t(\u0002\u0002\u09b2\u09b3\u0007",
+ "\u0107\u0002\u0002\u09b3\u09b4\u0007\u0129\u0002\u0002\u09b4\u09b5\u0007",
+ "\u012a\u0002\u0002\u09b5\u09b6\t)\u0002\u0002\u09b6\u09b8\u0007\u012d",
+ "\u0002\u0002\u09b7\u09b2\u0003\u0002\u0002\u0002\u09b7\u09b8\u0003\u0002",
+ "\u0002\u0002\u09b8\u09ba\u0003\u0002\u0002\u0002\u09b9\u09ae\u0003\u0002",
+ "\u0002\u0002\u09b9\u09b0\u0003\u0002\u0002\u0002\u09ba\u0159\u0003\u0002",
+ "\u0002\u0002\u09bb\u09bc\u0007R\u0002\u0002\u09bc\u09bd\u0005\u015e",
+ "\u00b0\u0002\u09bd\u09be\u0007\u0016\u0002\u0002\u09be\u09c0\u0005\u015c",
+ "\u00af\u0002\u09bf\u09c1\u0005\u014c\u00a7\u0002\u09c0\u09bf\u0003\u0002",
+ "\u0002\u0002\u09c0\u09c1\u0003\u0002\u0002\u0002\u09c1\u09c3\u0003\u0002",
+ "\u0002\u0002\u09c2\u09c4\u0005\u0160\u00b1\u0002\u09c3\u09c2\u0003\u0002",
+ "\u0002\u0002\u09c3\u09c4\u0003\u0002\u0002\u0002\u09c4\u015b\u0003\u0002",
+ "\u0002\u0002\u09c5\u09ca\u0005\u001c\u000f\u0002\u09c6\u09c7\u0007\u0017",
+ "\u0002\u0002\u09c7\u09c9\u0005\u001c\u000f\u0002\u09c8\u09c6\u0003\u0002",
+ "\u0002\u0002\u09c9\u09cc\u0003\u0002\u0002\u0002\u09ca\u09c8\u0003\u0002",
+ "\u0002\u0002\u09ca\u09cb\u0003\u0002\u0002\u0002\u09cb\u015d\u0003\u0002",
+ "\u0002\u0002\u09cc\u09ca\u0003\u0002\u0002\u0002\u09cd\u09cf\u0005\u014a",
+ "\u00a6\u0002\u09ce\u09d0\u0005\u0138\u009d\u0002\u09cf\u09ce\u0003\u0002",
+ "\u0002\u0002\u09cf\u09d0\u0003\u0002\u0002\u0002\u09d0\u09d6\u0003\u0002",
+ "\u0002\u0002\u09d1\u09d2\u0007\u001a\u0002\u0002\u09d2\u09d3\u0005\u011a",
+ "\u008e\u0002\u09d3\u09d4\u0007\u001b\u0002\u0002\u09d4\u09d6\u0003\u0002",
+ "\u0002\u0002\u09d5\u09cd\u0003\u0002\u0002\u0002\u09d5\u09d1\u0003\u0002",
+ "\u0002\u0002\u09d6\u09db\u0003\u0002\u0002\u0002\u09d7\u09d9\u0007)",
+ "\u0002\u0002\u09d8\u09d7\u0003\u0002\u0002\u0002\u09d8\u09d9\u0003\u0002",
+ "\u0002\u0002\u09d9\u09da\u0003\u0002\u0002\u0002\u09da\u09dc\u0005\u01b8",
+ "\u00dd\u0002\u09db\u09d8\u0003\u0002\u0002\u0002\u09db\u09dc\u0003\u0002",
+ "\u0002\u0002\u09dc\u015f\u0003\u0002\u0002\u0002\u09dd\u09de\u0007\u00ce",
+ "\u0002\u0002\u09de\u09df\u0005\u00b2Z\u0002\u09df\u0161\u0003\u0002",
+ "\u0002\u0002\u09e0\u09e1\u0007\u012e\u0002\u0002\u09e1\u09e2\u0007\u00cd",
+ "\u0002\u0002\u09e2\u09e3\u0005\u0164\u00b3\u0002\u09e3\u09e4\u0007\u0111",
+ "\u0002\u0002\u09e4\u09e5\u0005\u0164\u00b3\u0002\u09e5\u09e6\u0007Q",
+ "\u0002\u0002\u09e6\u09e8\u0005\u0170\u00b9\u0002\u09e7\u09e9\u0005\u0166",
+ "\u00b4\u0002\u09e8\u09e7\u0003\u0002\u0002\u0002\u09e9\u09ea\u0003\u0002",
+ "\u0002\u0002\u09ea\u09e8\u0003\u0002\u0002\u0002\u09ea\u09eb\u0003\u0002",
+ "\u0002\u0002\u09eb\u0163\u0003\u0002\u0002\u0002\u09ec\u09f2\u0005\u014a",
+ "\u00a6\u0002\u09ed\u09ee\u0007\u001a\u0002\u0002\u09ee\u09ef\u0005\u011a",
+ "\u008e\u0002\u09ef\u09f0\u0007\u001b\u0002\u0002\u09f0\u09f2\u0003\u0002",
+ "\u0002\u0002\u09f1\u09ec\u0003\u0002\u0002\u0002\u09f1\u09ed\u0003\u0002",
+ "\u0002\u0002\u09f2\u09f7\u0003\u0002\u0002\u0002\u09f3\u09f5\u0007)",
+ "\u0002\u0002\u09f4\u09f3\u0003\u0002\u0002\u0002\u09f4\u09f5\u0003\u0002",
+ "\u0002\u0002\u09f5\u09f6\u0003\u0002\u0002\u0002\u09f6\u09f8\u0005\u01b8",
+ "\u00dd\u0002\u09f7\u09f4\u0003\u0002\u0002\u0002\u09f7\u09f8\u0003\u0002",
+ "\u0002\u0002\u09f8\u0165\u0003\u0002\u0002\u0002\u09f9\u09fb\u0007\u0012",
+ "\u0002\u0002\u09fa\u09fc\u00078\u0002\u0002\u09fb\u09fa\u0003\u0002",
+ "\u0002\u0002\u09fb\u09fc\u0003\u0002\u0002\u0002\u09fc\u09fd\u0003\u0002",
+ "\u0002\u0002\u09fd\u0a00\u0007\u012f\u0002\u0002\u09fe\u09ff\u0007\u0129",
+ "\u0002\u0002\u09ff\u0a01\u0005\u0170\u00b9\u0002\u0a00\u09fe\u0003\u0002",
+ "\u0002\u0002\u0a00\u0a01\u0003\u0002\u0002\u0002\u0a01\u0a02\u0003\u0002",
+ "\u0002\u0002\u0a02\u0a03\u0007\u0014\u0002\u0002\u0a03\u0a07\u0005\u0168",
+ "\u00b5\u0002\u0a04\u0a05\u0007\u00ce\u0002\u0002\u0a05\u0a07\u0007\u00ee",
+ "\u0002\u0002\u0a06\u09f9\u0003\u0002\u0002\u0002\u0a06\u0a04\u0003\u0002",
+ "\u0002\u0002\u0a07\u0167\u0003\u0002\u0002\u0002\u0a08\u0a0a\u0007\u00d2",
+ "\u0002\u0002\u0a09\u0a0b\u0005\u00b4[\u0002\u0a0a\u0a09\u0003\u0002",
+ "\u0002\u0002\u0a0a\u0a0b\u0003\u0002\u0002\u0002\u0a0b\u0a0c\u0003\u0002",
+ "\u0002\u0002\u0a0c\u0a0d\u0007\u00d4\u0002\u0002\u0a0d\u0a1d\u0005\u00b8",
+ "]\u0002\u0a0e\u0a0f\u0007R\u0002\u0002\u0a0f\u0a10\u0007\u0016\u0002",
+ "\u0002\u0a10\u0a15\u0005\u001c\u000f\u0002\u0a11\u0a12\u0007\u0017\u0002",
+ "\u0002\u0a12\u0a14\u0005\u001c\u000f\u0002\u0a13\u0a11\u0003\u0002\u0002",
+ "\u0002\u0a14\u0a17\u0003\u0002\u0002\u0002\u0a15\u0a13\u0003\u0002\u0002",
+ "\u0002\u0a15\u0a16\u0003\u0002\u0002\u0002\u0a16\u0a19\u0003\u0002\u0002",
+ "\u0002\u0a17\u0a15\u0003\u0002\u0002\u0002\u0a18\u0a1a\u0005\u014c\u00a7",
+ "\u0002\u0a19\u0a18\u0003\u0002\u0002\u0002\u0a19\u0a1a\u0003\u0002\u0002",
+ "\u0002\u0a1a\u0a1d\u0003\u0002\u0002\u0002\u0a1b\u0a1d\u0007S\u0002",
+ "\u0002\u0a1c\u0a08\u0003\u0002\u0002\u0002\u0a1c\u0a0e\u0003\u0002\u0002",
+ "\u0002\u0a1c\u0a1b\u0003\u0002\u0002\u0002\u0a1d\u0169\u0003\u0002\u0002",
+ "\u0002\u0a1e\u0a20\u0007S\u0002\u0002\u0a1f\u0a21\u0007\u00e1\u0002",
+ "\u0002\u0a20\u0a1f\u0003\u0002\u0002\u0002\u0a20\u0a21\u0003\u0002\u0002",
+ "\u0002\u0a21\u0a22\u0003\u0002\u0002\u0002\u0a22\u0a24\u0005\u014a\u00a6",
+ "\u0002\u0a23\u0a25\u0005\u016c\u00b7\u0002\u0a24\u0a23\u0003\u0002\u0002",
+ "\u0002\u0a24\u0a25\u0003\u0002\u0002\u0002\u0a25\u0a28\u0003\u0002\u0002",
+ "\u0002\u0a26\u0a29\u0005\u014c\u00a7\u0002\u0a27\u0a29\u0007\u0113\u0002",
+ "\u0002\u0a28\u0a26\u0003\u0002\u0002\u0002\u0a28\u0a27\u0003\u0002\u0002",
+ "\u0002\u0a28\u0a29\u0003\u0002\u0002\u0002\u0a29\u016b\u0003\u0002\u0002",
+ "\u0002\u0a2a\u0a2c\u0006\u00b7\u0007\u0002\u0a2b\u0a2d\u0007)\u0002",
+ "\u0002\u0a2c\u0a2b\u0003\u0002\u0002\u0002\u0a2c\u0a2d\u0003\u0002\u0002",
+ "\u0002\u0a2d\u0a2e\u0003\u0002\u0002\u0002\u0a2e\u0a2f\u0005\u01b8\u00dd",
+ "\u0002\u0a2f\u016d\u0003\u0002\u0002\u0002\u0a30\u0a32\t*\u0002\u0002",
+ "\u0a31\u0a33\u0007<\u0002\u0002\u0a32\u0a31\u0003\u0002\u0002\u0002",
+ "\u0a32\u0a33\u0003\u0002\u0002\u0002\u0a33\u0a34\u0003\u0002\u0002\u0002",
+ "\u0a34\u0a35\u0005\u014a\u00a6\u0002\u0a35\u016f\u0003\u0002\u0002\u0002",
+ "\u0a36\u0a38\b\u00b9\u0001\u0002\u0a37\u0a39\u00078\u0002\u0002\u0a38",
+ "\u0a37\u0003\u0002\u0002\u0002\u0a38\u0a39\u0003\u0002\u0002\u0002\u0a39",
+ "\u0a3a\u0003\u0002\u0002\u0002\u0a3a\u0a3b\u0007\u001a\u0002\u0002\u0a3b",
+ "\u0a3c\u0005\u0170\u00b9\u0002\u0a3c\u0a3d\u0007\u001b\u0002\u0002\u0a3d",
+ "\u0a40\u0003\u0002\u0002\u0002\u0a3e\u0a40\u0005\u0172\u00ba\u0002\u0a3f",
+ "\u0a36\u0003\u0002\u0002\u0002\u0a3f\u0a3e\u0003\u0002\u0002\u0002\u0a40",
+ "\u0a47\u0003\u0002\u0002\u0002\u0a41\u0a42\f\u0004\u0002\u0002\u0a42",
+ "\u0a43\u0005\u017c\u00bf\u0002\u0a43\u0a44\u0005\u0170\u00b9\u0005\u0a44",
+ "\u0a46\u0003\u0002\u0002\u0002\u0a45\u0a41\u0003\u0002\u0002\u0002\u0a46",
+ "\u0a49\u0003\u0002\u0002\u0002\u0a47\u0a45\u0003\u0002\u0002\u0002\u0a47",
+ "\u0a48\u0003\u0002\u0002\u0002\u0a48\u0171\u0003\u0002\u0002\u0002\u0a49",
+ "\u0a47\u0003\u0002\u0002\u0002\u0a4a\u0a4e\u0005\u0174\u00bb\u0002\u0a4b",
+ "\u0a4e\u0005\u017a\u00be\u0002\u0a4c\u0a4e\u0005\u0180\u00c1\u0002\u0a4d",
+ "\u0a4a\u0003\u0002\u0002\u0002\u0a4d\u0a4b\u0003\u0002\u0002\u0002\u0a4d",
+ "\u0a4c\u0003\u0002\u0002\u0002\u0a4e\u0173\u0003\u0002\u0002\u0002\u0a4f",
+ "\u0a50\u0005\u0180\u00c1\u0002\u0a50\u0a52\u0007,\u0002\u0002\u0a51",
+ "\u0a53\u00078\u0002\u0002\u0a52\u0a51\u0003\u0002\u0002\u0002\u0a52",
+ "\u0a53\u0003\u0002\u0002\u0002\u0a53\u0a54\u0003\u0002\u0002\u0002\u0a54",
+ "\u0a55\u0007\u0015\u0002\u0002\u0a55\u0a67\u0003\u0002\u0002\u0002\u0a56",
+ "\u0a57\u0005\u0180\u00c1\u0002\u0a57\u0a58\u0007\u0131\u0002\u0002\u0a58",
+ "\u0a59\u0005\u0180\u00c1\u0002\u0a59\u0a5a\u0007\u0129\u0002\u0002\u0a5a",
+ "\u0a5b\u0005\u0180\u00c1\u0002\u0a5b\u0a67\u0003\u0002\u0002\u0002\u0a5c",
+ "\u0a5e\u00078\u0002\u0002\u0a5d\u0a5c\u0003\u0002\u0002\u0002\u0a5d",
+ "\u0a5e\u0003\u0002\u0002\u0002\u0a5e\u0a5f\u0003\u0002\u0002\u0002\u0a5f",
+ "\u0a60\u0007?\u0002\u0002\u0a60\u0a61\u0007\u001a\u0002\u0002\u0a61",
+ "\u0a62\u0005\u011a\u008e\u0002\u0a62\u0a63\u0007\u001b\u0002\u0002\u0a63",
+ "\u0a67\u0003\u0002\u0002\u0002\u0a64\u0a67\u0005\u0176\u00bc\u0002\u0a65",
+ "\u0a67\u0005\u0178\u00bd\u0002\u0a66\u0a4f\u0003\u0002\u0002\u0002\u0a66",
+ "\u0a56\u0003\u0002\u0002\u0002\u0a66\u0a5d\u0003\u0002\u0002\u0002\u0a66",
+ "\u0a64\u0003\u0002\u0002\u0002\u0a66\u0a65\u0003\u0002\u0002\u0002\u0a67",
+ "\u0175\u0003\u0002\u0002\u0002\u0a68\u0a6a\u0005\u0180\u00c1\u0002\u0a69",
+ "\u0a6b\u00078\u0002\u0002\u0a6a\u0a69\u0003\u0002\u0002\u0002\u0a6a",
+ "\u0a6b\u0003\u0002\u0002\u0002\u0a6b\u0a6c\u0003\u0002\u0002\u0002\u0a6c",
+ "\u0a6d\u0007l\u0002\u0002\u0a6d\u0a77\u0007\u001a\u0002\u0002\u0a6e",
+ "\u0a73\u0005\u0180\u00c1\u0002\u0a6f\u0a70\u0007\u0017\u0002\u0002\u0a70",
+ "\u0a72\u0005\u0180\u00c1\u0002\u0a71\u0a6f\u0003\u0002\u0002\u0002\u0a72",
+ "\u0a75\u0003\u0002\u0002\u0002\u0a73\u0a71\u0003\u0002\u0002\u0002\u0a73",
+ "\u0a74\u0003\u0002\u0002\u0002\u0a74\u0a78\u0003\u0002\u0002\u0002\u0a75",
+ "\u0a73\u0003\u0002\u0002\u0002\u0a76\u0a78\u0005\u011a\u008e\u0002\u0a77",
+ "\u0a6e\u0003\u0002\u0002\u0002\u0a77\u0a76\u0003\u0002\u0002\u0002\u0a78",
+ "\u0a79\u0003\u0002\u0002\u0002\u0a79\u0a7a\u0007\u001b\u0002\u0002\u0a7a",
+ "\u0177\u0003\u0002\u0002\u0002\u0a7b\u0a7c\u0007\u001a\u0002\u0002\u0a7c",
+ "\u0a81\u0005\u0180\u00c1\u0002\u0a7d\u0a7e\u0007\u0017\u0002\u0002\u0a7e",
+ "\u0a80\u0005\u0180\u00c1\u0002\u0a7f\u0a7d\u0003\u0002\u0002\u0002\u0a80",
+ "\u0a83\u0003\u0002\u0002\u0002\u0a81\u0a7f\u0003\u0002\u0002\u0002\u0a81",
+ "\u0a82\u0003\u0002\u0002\u0002\u0a82\u0a84\u0003\u0002\u0002\u0002\u0a83",
+ "\u0a81\u0003\u0002\u0002\u0002\u0a84\u0a86\u0007\u001b\u0002\u0002\u0a85",
+ "\u0a87\u00078\u0002\u0002\u0a86\u0a85\u0003\u0002\u0002\u0002\u0a86",
+ "\u0a87\u0003\u0002\u0002\u0002\u0a87\u0a88\u0003\u0002\u0002\u0002\u0a88",
+ "\u0a89\u0007l\u0002\u0002\u0a89\u0a8a\u0007\u001a\u0002\u0002\u0a8a",
+ "\u0a8b\u0005\u011a\u008e\u0002\u0a8b\u0a8c\u0007\u001b\u0002\u0002\u0a8c",
+ "\u0179\u0003\u0002\u0002\u0002\u0a8d\u0a8e\u0005\u0180\u00c1\u0002\u0a8e",
+ "\u0a8f\u0005\u017e\u00c0\u0002\u0a8f\u0a90\u0005\u0180\u00c1\u0002\u0a90",
+ "\u017b\u0003\u0002\u0002\u0002\u0a91\u0a92\t+\u0002\u0002\u0a92\u017d",
+ "\u0003\u0002\u0002\u0002\u0a93\u0aa0\u0007\u0019\u0002\u0002\u0a94\u0aa0",
+ "\u0007\u0132\u0002\u0002\u0a95\u0aa0\u0007\u0133\u0002\u0002\u0a96\u0aa0",
+ "\u0007\u0134\u0002\u0002\u0a97\u0aa0\u0007\u010f\u0002\u0002\u0a98\u0aa0",
+ "\u0007\u0135\u0002\u0002\u0a99\u0aa0\u0007\u0110\u0002\u0002\u0a9a\u0aa0",
+ "\u0007\u0136\u0002\u0002\u0a9b\u0a9d\u00078\u0002\u0002\u0a9c\u0a9b",
+ "\u0003\u0002\u0002\u0002\u0a9c\u0a9d\u0003\u0002\u0002\u0002\u0a9d\u0a9e",
+ "\u0003\u0002\u0002\u0002\u0a9e\u0aa0\t,\u0002\u0002\u0a9f\u0a93\u0003",
+ "\u0002\u0002\u0002\u0a9f\u0a94\u0003\u0002\u0002\u0002\u0a9f\u0a95\u0003",
+ "\u0002\u0002\u0002\u0a9f\u0a96\u0003\u0002\u0002\u0002\u0a9f\u0a97\u0003",
+ "\u0002\u0002\u0002\u0a9f\u0a98\u0003\u0002\u0002\u0002\u0a9f\u0a99\u0003",
+ "\u0002\u0002\u0002\u0a9f\u0a9a\u0003\u0002\u0002\u0002\u0a9f\u0a9c\u0003",
+ "\u0002\u0002\u0002\u0aa0\u017f\u0003\u0002\u0002\u0002\u0aa1\u0aa2\b",
+ "\u00c1\u0001\u0002\u0aa2\u0aa3\u0007\u001a\u0002\u0002\u0aa3\u0aa4\u0005",
+ "\u011a\u008e\u0002\u0aa4\u0aa5\u0007\u001b\u0002\u0002\u0aa5\u0ab3\u0003",
+ "\u0002\u0002\u0002\u0aa6\u0aa7\u0007\u001a\u0002\u0002\u0aa7\u0aa8\u0005",
+ "\u0180\u00c1\u0002\u0aa8\u0aa9\u0007\u001b\u0002\u0002\u0aa9\u0ab3\u0003",
+ "\u0002\u0002\u0002\u0aaa\u0ab3\u0005\u0184\u00c3\u0002\u0aab\u0ab3\u0005",
+ "\u0188\u00c5\u0002\u0aac\u0ab3\u0005\u018c\u00c7\u0002\u0aad\u0ab3\u0005",
+ "\u0192\u00ca\u0002\u0aae\u0ab3\u0005\u0194\u00cb\u0002\u0aaf\u0ab3\u0005",
+ "\u019c\u00cf\u0002\u0ab0\u0ab3\u0005\u019e\u00d0\u0002\u0ab1\u0ab3\u0005",
+ "\u0182\u00c2\u0002\u0ab2\u0aa1\u0003\u0002\u0002\u0002\u0ab2\u0aa6\u0003",
+ "\u0002\u0002\u0002\u0ab2\u0aaa\u0003\u0002\u0002\u0002\u0ab2\u0aab\u0003",
+ "\u0002\u0002\u0002\u0ab2\u0aac\u0003\u0002\u0002\u0002\u0ab2\u0aad\u0003",
+ "\u0002\u0002\u0002\u0ab2\u0aae\u0003\u0002\u0002\u0002\u0ab2\u0aaf\u0003",
+ "\u0002\u0002\u0002\u0ab2\u0ab0\u0003\u0002\u0002\u0002\u0ab2\u0ab1\u0003",
+ "\u0002\u0002\u0002\u0ab3\u0ac4\u0003\u0002\u0002\u0002\u0ab4\u0ab5\f",
+ "\u0010\u0002\u0002\u0ab5\u0ab6\u0007\u0139\u0002\u0002\u0ab6\u0ac3\u0005",
+ "\u0180\u00c1\u0011\u0ab7\u0ab8\f\u000f\u0002\u0002\u0ab8\u0ab9\u0007",
+ "\u013a\u0002\u0002\u0ab9\u0ac3\u0005\u0180\u00c1\u0010\u0aba\u0abb\f",
+ "\u000e\u0002\u0002\u0abb\u0abc\u0007\u013b\u0002\u0002\u0abc\u0ac3\u0005",
+ "\u0180\u00c1\u000f\u0abd\u0abe\f\r\u0002\u0002\u0abe\u0abf\u0007\u013c",
+ "\u0002\u0002\u0abf\u0ac3\u0005\u0180\u00c1\u000e\u0ac0\u0ac1\f\u0011",
+ "\u0002\u0002\u0ac1\u0ac3\u0005\u0186\u00c4\u0002\u0ac2\u0ab4\u0003\u0002",
+ "\u0002\u0002\u0ac2\u0ab7\u0003\u0002\u0002\u0002\u0ac2\u0aba\u0003\u0002",
+ "\u0002\u0002\u0ac2\u0abd\u0003\u0002\u0002\u0002\u0ac2\u0ac0\u0003\u0002",
+ "\u0002\u0002\u0ac3\u0ac6\u0003\u0002\u0002\u0002\u0ac4\u0ac2\u0003\u0002",
+ "\u0002\u0002\u0ac4\u0ac5\u0003\u0002\u0002\u0002\u0ac5\u0181\u0003\u0002",
+ "\u0002\u0002\u0ac6\u0ac4\u0003\u0002\u0002\u0002\u0ac7\u0ad0\u0005\u01b4",
+ "\u00db\u0002\u0ac8\u0ad0\u0005\u01b6\u00dc\u0002\u0ac9\u0ad0\u0005\u01c0",
+ "\u00e1\u0002\u0aca\u0ad0\u0005\u01b8\u00dd\u0002\u0acb\u0ad0\u0005\u01ba",
+ "\u00de\u0002\u0acc\u0ad0\u0005\u01be\u00e0\u0002\u0acd\u0ad0\u0005\u01bc",
+ "\u00df\u0002\u0ace\u0ad0\u0005\u01c2\u00e2\u0002\u0acf\u0ac7\u0003\u0002",
+ "\u0002\u0002\u0acf\u0ac8\u0003\u0002\u0002\u0002\u0acf\u0ac9\u0003\u0002",
+ "\u0002\u0002\u0acf\u0aca\u0003\u0002\u0002\u0002\u0acf\u0acb\u0003\u0002",
+ "\u0002\u0002\u0acf\u0acc\u0003\u0002\u0002\u0002\u0acf\u0acd\u0003\u0002",
+ "\u0002\u0002\u0acf\u0ace\u0003\u0002\u0002\u0002\u0ad0\u0183\u0003\u0002",
+ "\u0002\u0002\u0ad1\u0ad2\u0007\u013d\u0002\u0002\u0ad2\u0ad3\u0005\u0180",
+ "\u00c1\u0002\u0ad3\u0ad4\u0005\u0186\u00c4\u0002\u0ad4\u0185\u0003\u0002",
+ "\u0002\u0002\u0ad5\u0ad6\t-\u0002\u0002\u0ad6\u0187\u0003\u0002\u0002",
+ "\u0002\u0ad7\u0ad8\u0005\u018a\u00c6\u0002\u0ad8\u0ad9\t.\u0002\u0002",
+ "\u0ad9\u0ade\u0005\u018a\u00c6\u0002\u0ada\u0adb\t.\u0002\u0002\u0adb",
+ "\u0add\u0005\u018a\u00c6\u0002\u0adc\u0ada\u0003\u0002\u0002\u0002\u0add",
+ "\u0ae0\u0003\u0002\u0002\u0002\u0ade\u0adc\u0003\u0002\u0002\u0002\u0ade",
+ "\u0adf\u0003\u0002\u0002\u0002\u0adf\u0189\u0003\u0002\u0002\u0002\u0ae0",
+ "\u0ade\u0003\u0002\u0002\u0002\u0ae1\u0ae2\u0007\u001a\u0002\u0002\u0ae2",
+ "\u0ae3\u0005\u0180\u00c1\u0002\u0ae3\u0ae4\u0007\u001b\u0002\u0002\u0ae4",
+ "\u0aeb\u0003\u0002\u0002\u0002\u0ae5\u0aeb\u0005\u018c\u00c7\u0002\u0ae6",
+ "\u0aeb\u0005\u0194\u00cb\u0002\u0ae7\u0aeb\u0005\u019c\u00cf\u0002\u0ae8",
+ "\u0aeb\u0005\u019e\u00d0\u0002\u0ae9\u0aeb\u0005\u0182\u00c2\u0002\u0aea",
+ "\u0ae1\u0003\u0002\u0002\u0002\u0aea\u0ae5\u0003\u0002\u0002\u0002\u0aea",
+ "\u0ae6\u0003\u0002\u0002\u0002\u0aea\u0ae7\u0003\u0002\u0002\u0002\u0aea",
+ "\u0ae8\u0003\u0002\u0002\u0002\u0aea\u0ae9\u0003\u0002\u0002\u0002\u0aeb",
+ "\u018b\u0003\u0002\u0002\u0002\u0aec\u0aef\u0005\u018e\u00c8\u0002\u0aed",
+ "\u0aef\u0005\u0190\u00c9\u0002\u0aee\u0aec\u0003\u0002\u0002\u0002\u0aee",
+ "\u0aed\u0003\u0002\u0002\u0002\u0aef\u018d\u0003\u0002\u0002\u0002\u0af0",
+ "\u0af1\u0007\u0146\u0002\u0002\u0af1\u0af7\u0005\u0180\u00c1\u0002\u0af2",
+ "\u0af3\u0007\u0012\u0002\u0002\u0af3\u0af4\u0005\u0180\u00c1\u0002\u0af4",
+ "\u0af5\u0007\u0014\u0002\u0002\u0af5\u0af6\u0005\u0180\u00c1\u0002\u0af6",
+ "\u0af8\u0003\u0002\u0002\u0002\u0af7\u0af2\u0003\u0002\u0002\u0002\u0af8",
+ "\u0af9\u0003\u0002\u0002\u0002\u0af9\u0af7\u0003\u0002\u0002\u0002\u0af9",
+ "\u0afa\u0003\u0002\u0002\u0002\u0afa\u0afd\u0003\u0002\u0002\u0002\u0afb",
+ "\u0afc\u0007\u00ce\u0002\u0002\u0afc\u0afe\u0005\u0180\u00c1\u0002\u0afd",
+ "\u0afb\u0003\u0002\u0002\u0002\u0afd\u0afe\u0003\u0002\u0002\u0002\u0afe",
+ "\u0aff\u0003\u0002\u0002\u0002\u0aff\u0b00\u0007\u0010\u0002\u0002\u0b00",
+ "\u018f\u0003\u0002\u0002\u0002\u0b01\u0b07\u0007\u0146\u0002\u0002\u0b02",
+ "\u0b03\u0007\u0012\u0002\u0002\u0b03\u0b04\u0005\u0170\u00b9\u0002\u0b04",
+ "\u0b05\u0007\u0014\u0002\u0002\u0b05\u0b06\u0005\u0180\u00c1\u0002\u0b06",
+ "\u0b08\u0003\u0002\u0002\u0002\u0b07\u0b02\u0003\u0002\u0002\u0002\u0b08",
+ "\u0b09\u0003\u0002\u0002\u0002\u0b09\u0b07\u0003\u0002\u0002\u0002\u0b09",
+ "\u0b0a\u0003\u0002\u0002\u0002\u0b0a\u0b0d\u0003\u0002\u0002\u0002\u0b0b",
+ "\u0b0c\u0007\u00ce\u0002\u0002\u0b0c\u0b0e\u0005\u0180\u00c1\u0002\u0b0d",
+ "\u0b0b\u0003\u0002\u0002\u0002\u0b0d\u0b0e\u0003\u0002\u0002\u0002\u0b0e",
+ "\u0b0f\u0003\u0002\u0002\u0002\u0b0f\u0b10\u0007\u0010\u0002\u0002\u0b10",
+ "\u0191\u0003\u0002\u0002\u0002\u0b11\u0b12\u0005\u01b8\u00dd\u0002\u0b12",
+ "\u0b13\u0007\u0006\u0002\u0002\u0b13\u0b14\t/\u0002\u0002\u0b14\u0193",
+ "\u0003\u0002\u0002\u0002\u0b15\u0b16\u0007\u0149\u0002\u0002\u0b16\u0b18",
+ "\u0007\u001a\u0002\u0002\u0b17\u0b19\u0005\u0196\u00cc\u0002\u0b18\u0b17",
+ "\u0003\u0002\u0002\u0002\u0b18\u0b19\u0003\u0002\u0002\u0002\u0b19\u0b1a",
+ "\u0003\u0002\u0002\u0002\u0b1a\u0b1b\u0005\u0180\u00c1\u0002\u0b1b\u0b1d",
+ "\u0007\u001b\u0002\u0002\u0b1c\u0b1e\u0005\u0198\u00cd\u0002\u0b1d\u0b1c",
+ "\u0003\u0002\u0002\u0002\u0b1d\u0b1e\u0003\u0002\u0002\u0002\u0b1e\u0bae",
+ "\u0003\u0002\u0002\u0002\u0b1f\u0b20\u0007\u014a\u0002\u0002\u0b20\u0b26",
+ "\u0007\u001a\u0002\u0002\u0b21\u0b23\u0005\u0196\u00cc\u0002\u0b22\u0b21",
+ "\u0003\u0002\u0002\u0002\u0b22\u0b23\u0003\u0002\u0002\u0002\u0b23\u0b24",
+ "\u0003\u0002\u0002\u0002\u0b24\u0b27\u0005\u0180\u00c1\u0002\u0b25\u0b27",
+ "\u0007\b\u0002\u0002\u0b26\u0b22\u0003\u0002\u0002\u0002\u0b26\u0b25",
+ "\u0003\u0002\u0002\u0002\u0b27\u0b28\u0003\u0002\u0002\u0002\u0b28\u0b2a",
+ "\u0007\u001b\u0002\u0002\u0b29\u0b2b\u0005\u0198\u00cd\u0002\u0b2a\u0b29",
+ "\u0003\u0002\u0002\u0002\u0b2a\u0b2b\u0003\u0002\u0002\u0002\u0b2b\u0bae",
+ "\u0003\u0002\u0002\u0002\u0b2c\u0b2d\u0007\u014b\u0002\u0002\u0b2d\u0b33",
+ "\u0007\u001a\u0002\u0002\u0b2e\u0b30\u0005\u0196\u00cc\u0002\u0b2f\u0b2e",
+ "\u0003\u0002\u0002\u0002\u0b2f\u0b30\u0003\u0002\u0002\u0002\u0b30\u0b31",
+ "\u0003\u0002\u0002\u0002\u0b31\u0b34\u0005\u0180\u00c1\u0002\u0b32\u0b34",
+ "\u0007\b\u0002\u0002\u0b33\u0b2f\u0003\u0002\u0002\u0002\u0b33\u0b32",
+ "\u0003\u0002\u0002\u0002\u0b34\u0b35\u0003\u0002\u0002\u0002\u0b35\u0b37",
+ "\u0007\u001b\u0002\u0002\u0b36\u0b38\u0005\u0198\u00cd\u0002\u0b37\u0b36",
+ "\u0003\u0002\u0002\u0002\u0b37\u0b38\u0003\u0002\u0002\u0002\u0b38\u0bae",
+ "\u0003\u0002\u0002\u0002\u0b39\u0b3a\u0007\u014c\u0002\u0002\u0b3a\u0b3b",
+ "\u0007\u001a\u0002\u0002\u0b3b\u0b3c\u0007\u001b\u0002\u0002\u0b3c\u0bae",
+ "\u0005\u0198\u00cd\u0002\u0b3d\u0b3e\u0007\u014d\u0002\u0002\u0b3e\u0b3f",
+ "\u0007\u001a\u0002\u0002\u0b3f\u0b40\u0007\u001b\u0002\u0002\u0b40\u0bae",
+ "\u0005\u0198\u00cd\u0002\u0b41\u0b42\u0007\u014e\u0002\u0002\u0b42\u0b43",
+ "\u0007\u001a\u0002\u0002\u0b43\u0b44\u0005\u0180\u00c1\u0002\u0b44\u0b45",
+ "\u0007\u001b\u0002\u0002\u0b45\u0b46\u0005\u0198\u00cd\u0002\u0b46\u0bae",
+ "\u0003\u0002\u0002\u0002\u0b47\u0b48\u0007\u014f\u0002\u0002\u0b48\u0b49",
+ "\u0007\u001a\u0002\u0002\u0b49\u0b50\u0005\u0180\u00c1\u0002\u0b4a\u0b4b",
+ "\u0007\u0017\u0002\u0002\u0b4b\u0b4e\u0005\u0180\u00c1\u0002\u0b4c\u0b4d",
+ "\u0007\u0017\u0002\u0002\u0b4d\u0b4f\u0005\u0180\u00c1\u0002\u0b4e\u0b4c",
+ "\u0003\u0002\u0002\u0002\u0b4e\u0b4f\u0003\u0002\u0002\u0002\u0b4f\u0b51",
+ "\u0003\u0002\u0002\u0002\u0b50\u0b4a\u0003\u0002\u0002\u0002\u0b50\u0b51",
+ "\u0003\u0002\u0002\u0002\u0b51\u0b52\u0003\u0002\u0002\u0002\u0b52\u0b53",
+ "\u0007\u001b\u0002\u0002\u0b53\u0b54\u0005\u0198\u00cd\u0002\u0b54\u0bae",
+ "\u0003\u0002\u0002\u0002\u0b55\u0b56\u0007\u0150\u0002\u0002\u0b56\u0b57",
+ "\u0007\u001a\u0002\u0002\u0b57\u0b58\u0005\u0180\u00c1\u0002\u0b58\u0b59",
+ "\u0007\u001b\u0002\u0002\u0b59\u0b5a\u0005\u0198\u00cd\u0002\u0b5a\u0bae",
+ "\u0003\u0002\u0002\u0002\u0b5b\u0b5c\u0007\u0151\u0002\u0002\u0b5c\u0b5d",
+ "\u0007\u001a\u0002\u0002\u0b5d\u0b64\u0005\u0180\u00c1\u0002\u0b5e\u0b5f",
+ "\u0007\u0017\u0002\u0002\u0b5f\u0b62\u0005\u0180\u00c1\u0002\u0b60\u0b61",
+ "\u0007\u0017\u0002\u0002\u0b61\u0b63\u0005\u0180\u00c1\u0002\u0b62\u0b60",
+ "\u0003\u0002\u0002\u0002\u0b62\u0b63\u0003\u0002\u0002\u0002\u0b63\u0b65",
+ "\u0003\u0002\u0002\u0002\u0b64\u0b5e\u0003\u0002\u0002\u0002\u0b64\u0b65",
+ "\u0003\u0002\u0002\u0002\u0b65\u0b66\u0003\u0002\u0002\u0002\u0b66\u0b67",
+ "\u0007\u001b\u0002\u0002\u0b67\u0b68\u0005\u0198\u00cd\u0002\u0b68\u0bae",
+ "\u0003\u0002\u0002\u0002\u0b69\u0b6a\u0007\u00b3\u0002\u0002\u0b6a\u0b6c",
+ "\u0007\u001a\u0002\u0002\u0b6b\u0b6d\u0005\u0196\u00cc\u0002\u0b6c\u0b6b",
+ "\u0003\u0002\u0002\u0002\u0b6c\u0b6d\u0003\u0002\u0002\u0002\u0b6d\u0b6e",
+ "\u0003\u0002\u0002\u0002\u0b6e\u0b6f\u0005\u0180\u00c1\u0002\u0b6f\u0b71",
+ "\u0007\u001b\u0002\u0002\u0b70\u0b72\u0005\u0198\u00cd\u0002\u0b71\u0b70",
+ "\u0003\u0002\u0002\u0002\u0b71\u0b72\u0003\u0002\u0002\u0002\u0b72\u0bae",
+ "\u0003\u0002\u0002\u0002\u0b73\u0b74\u0007\u0152\u0002\u0002\u0b74\u0b76",
+ "\u0007\u001a\u0002\u0002\u0b75\u0b77\u0005\u0196\u00cc\u0002\u0b76\u0b75",
+ "\u0003\u0002\u0002\u0002\u0b76\u0b77\u0003\u0002\u0002\u0002\u0b77\u0b78",
+ "\u0003\u0002\u0002\u0002\u0b78\u0b79\u0005\u0180\u00c1\u0002\u0b79\u0b7b",
+ "\u0007\u001b\u0002\u0002\u0b7a\u0b7c\u0005\u0198\u00cd\u0002\u0b7b\u0b7a",
+ "\u0003\u0002\u0002\u0002\u0b7b\u0b7c\u0003\u0002\u0002\u0002\u0b7c\u0bae",
+ "\u0003\u0002\u0002\u0002\u0b7d\u0b7e\u0007\u0153\u0002\u0002\u0b7e\u0b7f",
+ "\u0007\u001a\u0002\u0002\u0b7f\u0b80\u0007\u001b\u0002\u0002\u0b80\u0bae",
+ "\u0005\u0198\u00cd\u0002\u0b81\u0b82\u0007\u0154\u0002\u0002\u0b82\u0b83",
+ "\u0007\u001a\u0002\u0002\u0b83\u0b84\u0007\u001b\u0002\u0002\u0b84\u0bae",
+ "\u0005\u0198\u00cd\u0002\u0b85\u0b86\u0007\u0155\u0002\u0002\u0b86\u0b88",
+ "\u0007\u001a\u0002\u0002\u0b87\u0b89\u0005\u0196\u00cc\u0002\u0b88\u0b87",
+ "\u0003\u0002\u0002\u0002\u0b88\u0b89\u0003\u0002\u0002\u0002\u0b89\u0b8a",
+ "\u0003\u0002\u0002\u0002\u0b8a\u0b8b\u0005\u0180\u00c1\u0002\u0b8b\u0b8d",
+ "\u0007\u001b\u0002\u0002\u0b8c\u0b8e\u0005\u0198\u00cd\u0002\u0b8d\u0b8c",
+ "\u0003\u0002\u0002\u0002\u0b8d\u0b8e\u0003\u0002\u0002\u0002\u0b8e\u0bae",
+ "\u0003\u0002\u0002\u0002\u0b8f\u0b90\u0007\u00e8\u0002\u0002\u0b90\u0b92",
+ "\u0007\u001a\u0002\u0002\u0b91\u0b93\u0005\u0196\u00cc\u0002\u0b92\u0b91",
+ "\u0003\u0002\u0002\u0002\u0b92\u0b93\u0003\u0002\u0002\u0002\u0b93\u0b94",
+ "\u0003\u0002\u0002\u0002\u0b94\u0b95\u0005\u0180\u00c1\u0002\u0b95\u0b97",
+ "\u0007\u001b\u0002\u0002\u0b96\u0b98\u0005\u0198\u00cd\u0002\u0b97\u0b96",
+ "\u0003\u0002\u0002\u0002\u0b97\u0b98\u0003\u0002\u0002\u0002\u0b98\u0bae",
+ "\u0003\u0002\u0002\u0002\u0b99\u0b9a\u0007\u0156\u0002\u0002\u0b9a\u0b9c",
+ "\u0007\u001a\u0002\u0002\u0b9b\u0b9d\u0005\u0196\u00cc\u0002\u0b9c\u0b9b",
+ "\u0003\u0002\u0002\u0002\u0b9c\u0b9d\u0003\u0002\u0002\u0002\u0b9d\u0b9e",
+ "\u0003\u0002\u0002\u0002\u0b9e\u0b9f\u0005\u0180\u00c1\u0002\u0b9f\u0ba1",
+ "\u0007\u001b\u0002\u0002\u0ba0\u0ba2\u0005\u0198\u00cd\u0002\u0ba1\u0ba0",
+ "\u0003\u0002\u0002\u0002\u0ba1\u0ba2\u0003\u0002\u0002\u0002\u0ba2\u0bae",
+ "\u0003\u0002\u0002\u0002\u0ba3\u0ba4\u0007\u0157\u0002\u0002\u0ba4\u0ba6",
+ "\u0007\u001a\u0002\u0002\u0ba5\u0ba7\u0005\u0196\u00cc\u0002\u0ba6\u0ba5",
+ "\u0003\u0002\u0002\u0002\u0ba6\u0ba7\u0003\u0002\u0002\u0002\u0ba7\u0ba8",
+ "\u0003\u0002\u0002\u0002\u0ba8\u0ba9\u0005\u0180\u00c1\u0002\u0ba9\u0bab",
+ "\u0007\u001b\u0002\u0002\u0baa\u0bac\u0005\u0198\u00cd\u0002\u0bab\u0baa",
+ "\u0003\u0002\u0002\u0002\u0bab\u0bac\u0003\u0002\u0002\u0002\u0bac\u0bae",
+ "\u0003\u0002\u0002\u0002\u0bad\u0b15\u0003\u0002\u0002\u0002\u0bad\u0b1f",
+ "\u0003\u0002\u0002\u0002\u0bad\u0b2c\u0003\u0002\u0002\u0002\u0bad\u0b39",
+ "\u0003\u0002\u0002\u0002\u0bad\u0b3d\u0003\u0002\u0002\u0002\u0bad\u0b41",
+ "\u0003\u0002\u0002\u0002\u0bad\u0b47\u0003\u0002\u0002\u0002\u0bad\u0b55",
+ "\u0003\u0002\u0002\u0002\u0bad\u0b5b\u0003\u0002\u0002\u0002\u0bad\u0b69",
+ "\u0003\u0002\u0002\u0002\u0bad\u0b73\u0003\u0002\u0002\u0002\u0bad\u0b7d",
+ "\u0003\u0002\u0002\u0002\u0bad\u0b81\u0003\u0002\u0002\u0002\u0bad\u0b85",
+ "\u0003\u0002\u0002\u0002\u0bad\u0b8f\u0003\u0002\u0002\u0002\u0bad\u0b99",
+ "\u0003\u0002\u0002\u0002\u0bad\u0ba3\u0003\u0002\u0002\u0002\u0bae\u0195",
+ "\u0003\u0002\u0002\u0002\u0baf\u0bb0\t&\u0002\u0002\u0bb0\u0197\u0003",
+ "\u0002\u0002\u0002\u0bb1\u0bb2\u0007\u0158\u0002\u0002\u0bb2\u0bb4\u0007",
+ "\u001a\u0002\u0002\u0bb3\u0bb5\u0005\u019a\u00ce\u0002\u0bb4\u0bb3\u0003",
+ "\u0002\u0002\u0002\u0bb4\u0bb5\u0003\u0002\u0002\u0002\u0bb5\u0bb7\u0003",
+ "\u0002\u0002\u0002\u0bb6\u0bb8\u0005\u0154\u00ab\u0002\u0bb7\u0bb6\u0003",
+ "\u0002\u0002\u0002\u0bb7\u0bb8\u0003\u0002\u0002\u0002\u0bb8\u0bb9\u0003",
+ "\u0002\u0002\u0002\u0bb9\u0bba\u0007\u001b\u0002\u0002\u0bba\u0199\u0003",
+ "\u0002\u0002\u0002\u0bbb\u0bbc\u0007\u0159\u0002\u0002\u0bbc\u0bbd\u0007",
+ "o\u0002\u0002\u0bbd\u0bc2\u0005\u0180\u00c1\u0002\u0bbe\u0bbf\u0007",
+ "\u0017\u0002\u0002\u0bbf\u0bc1\u0005\u0180\u00c1\u0002\u0bc0\u0bbe\u0003",
+ "\u0002\u0002\u0002\u0bc1\u0bc4\u0003\u0002\u0002\u0002\u0bc2\u0bc0\u0003",
+ "\u0002\u0002\u0002\u0bc2\u0bc3\u0003\u0002\u0002\u0002\u0bc3\u019b\u0003",
+ "\u0002\u0002\u0002\u0bc4\u0bc2\u0003\u0002\u0002\u0002\u0bc5\u0c8e\u0007",
+ "\u015a\u0002\u0002\u0bc6\u0bc7\u0007\u015b\u0002\u0002\u0bc7\u0bc8\u0007",
+ "\u001a\u0002\u0002\u0bc8\u0bc9\u0005\u0180\u00c1\u0002\u0bc9\u0bca\u0007",
+ ")\u0002\u0002\u0bca\u0bcc\u0005x=\u0002\u0bcb\u0bcd\u0005z>\u0002\u0bcc",
+ "\u0bcb\u0003\u0002\u0002\u0002\u0bcc\u0bcd\u0003\u0002\u0002\u0002\u0bcd",
+ "\u0bce\u0003\u0002\u0002\u0002\u0bce\u0bcf\u0007\u001b\u0002\u0002\u0bcf",
+ "\u0c8e\u0003\u0002\u0002\u0002\u0bd0\u0bd1\u0007\u014a\u0002\u0002\u0bd1",
+ "\u0bd4\u0007\u001a\u0002\u0002\u0bd2\u0bd5\u0005\u0180\u00c1\u0002\u0bd3",
+ "\u0bd5\u0007\b\u0002\u0002\u0bd4\u0bd2\u0003\u0002\u0002\u0002\u0bd4",
+ "\u0bd3\u0003\u0002\u0002\u0002\u0bd5\u0bd6\u0003\u0002\u0002\u0002\u0bd6",
+ "\u0c8e\u0007\u001b\u0002\u0002\u0bd7\u0c8e\u0007\u015c\u0002\u0002\u0bd8",
+ "\u0bd9\u0007\u00f7\u0002\u0002\u0bd9\u0c8e\u0007\u0091\u0002\u0002\u0bda",
+ "\u0bde\u0007\u015d\u0002\u0002\u0bdb\u0bdc\u0007\u00f7\u0002\u0002\u0bdc",
+ "\u0bde\u0007\u00ac\u0002\u0002\u0bdd\u0bda\u0003\u0002\u0002\u0002\u0bdd",
+ "\u0bdb\u0003\u0002\u0002\u0002\u0bde\u0be3\u0003\u0002\u0002\u0002\u0bdf",
+ "\u0be0\u0007\u001a\u0002\u0002\u0be0\u0be1\u0005\u0180\u00c1\u0002\u0be1",
+ "\u0be2\u0007\u001b\u0002\u0002\u0be2\u0be4\u0003\u0002\u0002\u0002\u0be3",
+ "\u0bdf\u0003\u0002\u0002\u0002\u0be3\u0be4\u0003\u0002\u0002\u0002\u0be4",
+ "\u0c8e\u0003\u0002\u0002\u0002\u0be5\u0c8e\u0007\u015e\u0002\u0002\u0be6",
+ "\u0be7\u0007\u00f7\u0002\u0002\u0be7\u0c8e\u0007\u015f\u0002\u0002\u0be8",
+ "\u0be9\u0007\u0160\u0002\u0002\u0be9\u0bea\u0007\u001a\u0002\u0002\u0bea",
+ "\u0bf7\u0005\u0180\u00c1\u0002\u0beb\u0bec\u0007\u0017\u0002\u0002\u0bec",
+ "\u0bf4\u0005\u0180\u00c1\u0002\u0bed\u0bee\u0007\u0017\u0002\u0002\u0bee",
+ "\u0bef\u0005\u0180\u00c1\u0002\u0bef\u0bf0\u0007\u0019\u0002\u0002\u0bf0",
+ "\u0bf1\u0005\u0180\u00c1\u0002\u0bf1\u0bf3\u0003\u0002\u0002\u0002\u0bf2",
+ "\u0bed\u0003\u0002\u0002\u0002\u0bf3\u0bf6\u0003\u0002\u0002\u0002\u0bf4",
+ "\u0bf2\u0003\u0002\u0002\u0002\u0bf4\u0bf5\u0003\u0002\u0002\u0002\u0bf5",
+ "\u0bf8\u0003\u0002\u0002\u0002\u0bf6\u0bf4\u0003\u0002\u0002\u0002\u0bf7",
+ "\u0beb\u0003\u0002\u0002\u0002\u0bf7\u0bf8\u0003\u0002\u0002\u0002\u0bf8",
+ "\u0bf9\u0003\u0002\u0002\u0002\u0bf9\u0bfa\u0007\u001b\u0002\u0002\u0bfa",
+ "\u0c8e\u0003\u0002\u0002\u0002\u0bfb\u0bfc\u0007\u0161\u0002\u0002\u0bfc",
+ "\u0bfd\u0007\u001a\u0002\u0002\u0bfd\u0c0a\u0005\u0180\u00c1\u0002\u0bfe",
+ "\u0bff\u0007\u0017\u0002\u0002\u0bff\u0c07\u0005\u0180\u00c1\u0002\u0c00",
+ "\u0c01\u0007\u0017\u0002\u0002\u0c01\u0c02\u0005\u0180\u00c1\u0002\u0c02",
+ "\u0c03\u0007\u0019\u0002\u0002\u0c03\u0c04\u0005\u0180\u00c1\u0002\u0c04",
+ "\u0c06\u0003\u0002\u0002\u0002\u0c05\u0c00\u0003\u0002\u0002\u0002\u0c06",
+ "\u0c09\u0003\u0002\u0002\u0002\u0c07\u0c05\u0003\u0002\u0002\u0002\u0c07",
+ "\u0c08\u0003\u0002\u0002\u0002\u0c08\u0c0b\u0003\u0002\u0002\u0002\u0c09",
+ "\u0c07\u0003\u0002\u0002\u0002\u0c0a\u0bfe\u0003\u0002\u0002\u0002\u0c0a",
+ "\u0c0b\u0003\u0002\u0002\u0002\u0c0b\u0c0c\u0003\u0002\u0002\u0002\u0c0c",
+ "\u0c0d\u0007\u001b\u0002\u0002\u0c0d\u0c8e\u0003\u0002\u0002\u0002\u0c0e",
+ "\u0c0f\u0007\u0162\u0002\u0002\u0c0f\u0c10\u0007\u001a\u0002\u0002\u0c10",
+ "\u0c1d\u0005\u0180\u00c1\u0002\u0c11\u0c12\u0007\u0017\u0002\u0002\u0c12",
+ "\u0c1a\u0005\u0180\u00c1\u0002\u0c13\u0c14\u0007\u0017\u0002\u0002\u0c14",
+ "\u0c15\u0005\u0180\u00c1\u0002\u0c15\u0c16\u0007\u0019\u0002\u0002\u0c16",
+ "\u0c17\u0005\u0180\u00c1\u0002\u0c17\u0c19\u0003\u0002\u0002\u0002\u0c18",
+ "\u0c13\u0003\u0002\u0002\u0002\u0c19\u0c1c\u0003\u0002\u0002\u0002\u0c1a",
+ "\u0c18\u0003\u0002\u0002\u0002\u0c1a\u0c1b\u0003\u0002\u0002\u0002\u0c1b",
+ "\u0c1e\u0003\u0002\u0002\u0002\u0c1c\u0c1a\u0003\u0002\u0002\u0002\u0c1d",
+ "\u0c11\u0003\u0002\u0002\u0002\u0c1d\u0c1e\u0003\u0002\u0002\u0002\u0c1e",
+ "\u0c1f\u0003\u0002\u0002\u0002\u0c1f\u0c20\u0007\u001b\u0002\u0002\u0c20",
+ "\u0c8e\u0003\u0002\u0002\u0002\u0c21\u0c22\u0007\u0163\u0002\u0002\u0c22",
+ "\u0c23\u0007\u001a\u0002\u0002\u0c23\u0c30\u0005\u0180\u00c1\u0002\u0c24",
+ "\u0c25\u0007\u0017\u0002\u0002\u0c25\u0c2d\u0005\u0180\u00c1\u0002\u0c26",
+ "\u0c27\u0007\u0017\u0002\u0002\u0c27\u0c28\u0005\u0180\u00c1\u0002\u0c28",
+ "\u0c29\u0007\u0019\u0002\u0002\u0c29\u0c2a\u0005\u0180\u00c1\u0002\u0c2a",
+ "\u0c2c\u0003\u0002\u0002\u0002\u0c2b\u0c26\u0003\u0002\u0002\u0002\u0c2c",
+ "\u0c2f\u0003\u0002\u0002\u0002\u0c2d\u0c2b\u0003\u0002\u0002\u0002\u0c2d",
+ "\u0c2e\u0003\u0002\u0002\u0002\u0c2e\u0c31\u0003\u0002\u0002\u0002\u0c2f",
+ "\u0c2d\u0003\u0002\u0002\u0002\u0c30\u0c24\u0003\u0002\u0002\u0002\u0c30",
+ "\u0c31\u0003\u0002\u0002\u0002\u0c31\u0c32\u0003\u0002\u0002\u0002\u0c32",
+ "\u0c33\u0007\u001b\u0002\u0002\u0c33\u0c8e\u0003\u0002\u0002\u0002\u0c34",
+ "\u0c35\u0007\u0164\u0002\u0002\u0c35\u0c36\u0007\u001a\u0002\u0002\u0c36",
+ "\u0c43\u0005\u0180\u00c1\u0002\u0c37\u0c38\u0007\u0017\u0002\u0002\u0c38",
+ "\u0c40\u0005\u0180\u00c1\u0002\u0c39\u0c3a\u0007\u0017\u0002\u0002\u0c3a",
+ "\u0c3b\u0005\u0180\u00c1\u0002\u0c3b\u0c3c\u0007\u0019\u0002\u0002\u0c3c",
+ "\u0c3d\u0005\u0180\u00c1\u0002\u0c3d\u0c3f\u0003\u0002\u0002\u0002\u0c3e",
+ "\u0c39\u0003\u0002\u0002\u0002\u0c3f\u0c42\u0003\u0002\u0002\u0002\u0c40",
+ "\u0c3e\u0003\u0002\u0002\u0002\u0c40\u0c41\u0003\u0002\u0002\u0002\u0c41",
+ "\u0c44\u0003\u0002\u0002\u0002\u0c42\u0c40\u0003\u0002\u0002\u0002\u0c43",
+ "\u0c37\u0003\u0002\u0002\u0002\u0c43\u0c44\u0003\u0002\u0002\u0002\u0c44",
+ "\u0c45\u0003\u0002\u0002\u0002\u0c45\u0c46\u0007\u001b\u0002\u0002\u0c46",
+ "\u0c8e\u0003\u0002\u0002\u0002\u0c47\u0c48\u0007\u0165\u0002\u0002\u0c48",
+ "\u0c49\u0007\u001a\u0002\u0002\u0c49\u0c56\u0005\u0180\u00c1\u0002\u0c4a",
+ "\u0c4b\u0007\u0017\u0002\u0002\u0c4b\u0c53\u0005\u0180\u00c1\u0002\u0c4c",
+ "\u0c4d\u0007\u0017\u0002\u0002\u0c4d\u0c4e\u0005\u0180\u00c1\u0002\u0c4e",
+ "\u0c4f\u0007\u0019\u0002\u0002\u0c4f\u0c50\u0005\u0180\u00c1\u0002\u0c50",
+ "\u0c52\u0003\u0002\u0002\u0002\u0c51\u0c4c\u0003\u0002\u0002\u0002\u0c52",
+ "\u0c55\u0003\u0002\u0002\u0002\u0c53\u0c51\u0003\u0002\u0002\u0002\u0c53",
+ "\u0c54\u0003\u0002\u0002\u0002\u0c54\u0c57\u0003\u0002\u0002\u0002\u0c55",
+ "\u0c53\u0003\u0002\u0002\u0002\u0c56\u0c4a\u0003\u0002\u0002\u0002\u0c56",
+ "\u0c57\u0003\u0002\u0002\u0002\u0c57\u0c58\u0003\u0002\u0002\u0002\u0c58",
+ "\u0c59\u0007\u001b\u0002\u0002\u0c59\u0c8e\u0003\u0002\u0002\u0002\u0c5a",
+ "\u0c5b\u0007\u0166\u0002\u0002\u0c5b\u0c5c\u0007\u001a\u0002\u0002\u0c5c",
+ "\u0c64\u0005\u0180\u00c1\u0002\u0c5d\u0c5e\u0007\u0017\u0002\u0002\u0c5e",
+ "\u0c5f\u0005\u0180\u00c1\u0002\u0c5f\u0c60\u0007\u0019\u0002\u0002\u0c60",
+ "\u0c61\u0005\u0180\u00c1\u0002\u0c61\u0c63\u0003\u0002\u0002\u0002\u0c62",
+ "\u0c5d\u0003\u0002\u0002\u0002\u0c63\u0c66\u0003\u0002\u0002\u0002\u0c64",
+ "\u0c62\u0003\u0002\u0002\u0002\u0c64\u0c65\u0003\u0002\u0002\u0002\u0c65",
+ "\u0c67\u0003\u0002\u0002\u0002\u0c66\u0c64\u0003\u0002\u0002\u0002\u0c67",
+ "\u0c68\u0007\u001b\u0002\u0002\u0c68\u0c8e\u0003\u0002\u0002\u0002\u0c69",
+ "\u0c6a\u0007\u0167\u0002\u0002\u0c6a\u0c6b\u0007\u001a\u0002\u0002\u0c6b",
+ "\u0c71\u0005\u0180\u00c1\u0002\u0c6c\u0c6d\u0007\u0017\u0002\u0002\u0c6d",
+ "\u0c6e\u0005\u0180\u00c1\u0002\u0c6e\u0c6f\u0007\u0019\u0002\u0002\u0c6f",
+ "\u0c70\u0005\u0180\u00c1\u0002\u0c70\u0c72\u0003\u0002\u0002\u0002\u0c71",
+ "\u0c6c\u0003\u0002\u0002\u0002\u0c72\u0c73\u0003\u0002\u0002\u0002\u0c73",
+ "\u0c71\u0003\u0002\u0002\u0002\u0c73\u0c74\u0003\u0002\u0002\u0002\u0c74",
+ "\u0c77\u0003\u0002\u0002\u0002\u0c75\u0c76\u0007\u0017\u0002\u0002\u0c76",
+ "\u0c78\u0005\u0180\u00c1\u0002\u0c77\u0c75\u0003\u0002\u0002\u0002\u0c77",
+ "\u0c78\u0003\u0002\u0002\u0002\u0c78\u0c79\u0003\u0002\u0002\u0002\u0c79",
+ "\u0c7a\u0007\u001b\u0002\u0002\u0c7a\u0c8e\u0003\u0002\u0002\u0002\u0c7b",
+ "\u0c7c\u0007\u0168\u0002\u0002\u0c7c\u0c7d\u0007\u001a\u0002\u0002\u0c7d",
+ "\u0c7e\u0005\u0180\u00c1\u0002\u0c7e\u0c7f\u0007\u001b\u0002\u0002\u0c7f",
+ "\u0c8e\u0003\u0002\u0002\u0002\u0c80\u0c81\u0007\u0169\u0002\u0002\u0c81",
+ "\u0c82\u0007\u001a\u0002\u0002\u0c82\u0c83\u0005\u0180\u00c1\u0002\u0c83",
+ "\u0c84\u0007\u00e1\u0002\u0002\u0c84\u0c87\u0005\u0180\u00c1\u0002\u0c85",
+ "\u0c86\u0007\u001e\u0002\u0002\u0c86\u0c88\u0005\u0180\u00c1\u0002\u0c87",
+ "\u0c85\u0003\u0002\u0002\u0002\u0c87\u0c88\u0003\u0002\u0002\u0002\u0c88",
+ "\u0c89\u0003\u0002\u0002\u0002\u0c89\u0c8a\u0007\u001b\u0002\u0002\u0c8a",
+ "\u0c8e\u0003\u0002\u0002\u0002\u0c8b\u0c8e\u0007\u016a\u0002\u0002\u0c8c",
+ "\u0c8e\u0007\u015f\u0002\u0002\u0c8d\u0bc5\u0003\u0002\u0002\u0002\u0c8d",
+ "\u0bc6\u0003\u0002\u0002\u0002\u0c8d\u0bd0\u0003\u0002\u0002\u0002\u0c8d",
+ "\u0bd7\u0003\u0002\u0002\u0002\u0c8d\u0bd8\u0003\u0002\u0002\u0002\u0c8d",
+ "\u0bdd\u0003\u0002\u0002\u0002\u0c8d\u0be5\u0003\u0002\u0002\u0002\u0c8d",
+ "\u0be6\u0003\u0002\u0002\u0002\u0c8d\u0be8\u0003\u0002\u0002\u0002\u0c8d",
+ "\u0bfb\u0003\u0002\u0002\u0002\u0c8d\u0c0e\u0003\u0002\u0002\u0002\u0c8d",
+ "\u0c21\u0003\u0002\u0002\u0002\u0c8d\u0c34\u0003\u0002\u0002\u0002\u0c8d",
+ "\u0c47\u0003\u0002\u0002\u0002\u0c8d\u0c5a\u0003\u0002\u0002\u0002\u0c8d",
+ "\u0c69\u0003\u0002\u0002\u0002\u0c8d\u0c7b\u0003\u0002\u0002\u0002\u0c8d",
+ "\u0c80\u0003\u0002\u0002\u0002\u0c8d\u0c8b\u0003\u0002\u0002\u0002\u0c8d",
+ "\u0c8c\u0003\u0002\u0002\u0002\u0c8e\u019d\u0003\u0002\u0002\u0002\u0c8f",
+ "\u0c90\u0005\u01b8\u00dd\u0002\u0c90\u0c92\u0007\u001a\u0002\u0002\u0c91",
+ "\u0c93\u0005\u01a0\u00d1\u0002\u0c92\u0c91\u0003\u0002\u0002\u0002\u0c92",
+ "\u0c93\u0003\u0002\u0002\u0002\u0c93\u0c94\u0003\u0002\u0002\u0002\u0c94",
+ "\u0c95\u0007\u001b\u0002\u0002\u0c95\u019f\u0003\u0002\u0002\u0002\u0c96",
+ "\u0c9b\u0005\u01a2\u00d2\u0002\u0c97\u0c98\u0007\u0017\u0002\u0002\u0c98",
+ "\u0c9a\u0005\u01a2\u00d2\u0002\u0c99\u0c97\u0003\u0002\u0002\u0002\u0c9a",
+ "\u0c9d\u0003\u0002\u0002\u0002\u0c9b\u0c99\u0003\u0002\u0002\u0002\u0c9b",
+ "\u0c9c\u0003\u0002\u0002\u0002\u0c9c\u01a1\u0003\u0002\u0002\u0002\u0c9d",
+ "\u0c9b\u0003\u0002\u0002\u0002\u0c9e\u0ca4\u0006\u00d2\u000e\u0002\u0c9f",
+ "\u0ca0\u0005\u01b8\u00dd\u0002\u0ca0\u0ca2\u0007\u0019\u0002\u0002\u0ca1",
+ "\u0ca3\u0007\u0110\u0002\u0002\u0ca2\u0ca1\u0003\u0002\u0002\u0002\u0ca2",
+ "\u0ca3\u0003\u0002\u0002\u0002\u0ca3\u0ca5\u0003\u0002\u0002\u0002\u0ca4",
+ "\u0c9f\u0003\u0002\u0002\u0002\u0ca4\u0ca5\u0003\u0002\u0002\u0002\u0ca5",
+ "\u0ca6\u0003\u0002\u0002\u0002\u0ca6\u0ca7\u0005\u0180\u00c1\u0002\u0ca7",
+ "\u01a3\u0003\u0002\u0002\u0002\u0ca8\u0cab\u0005\u011a\u008e\u0002\u0ca9",
+ "\u0cab\u0005\u0180\u00c1\u0002\u0caa\u0ca8\u0003\u0002\u0002\u0002\u0caa",
+ "\u0ca9\u0003\u0002\u0002\u0002\u0cab\u01a5\u0003\u0002\u0002\u0002\u0cac",
+ "\u0caf\u0005\u01b2\u00da\u0002\u0cad\u0caf\u0005\u0180\u00c1\u0002\u0cae",
+ "\u0cac\u0003\u0002\u0002\u0002\u0cae\u0cad\u0003\u0002\u0002\u0002\u0caf",
+ "\u01a7\u0003\u0002\u0002\u0002\u0cb0\u0cb4\u0007\u016b\u0002\u0002\u0cb1",
+ "\u0cb3\u0005\u01aa\u00d6\u0002\u0cb2\u0cb1\u0003\u0002\u0002\u0002\u0cb3",
+ "\u0cb6\u0003\u0002\u0002\u0002\u0cb4\u0cb2\u0003\u0002\u0002\u0002\u0cb4",
+ "\u0cb5\u0003\u0002\u0002\u0002\u0cb5\u01a9\u0003\u0002\u0002\u0002\u0cb6",
+ "\u0cb4\u0003\u0002\u0002\u0002\u0cb7\u0cb8\u0007\u013c\u0002\u0002\u0cb8",
+ "\u0cb9\u0005\u01b8\u00dd\u0002\u0cb9\u0cba\u0005\u0180\u00c1\u0002\u0cba",
+ "\u0cc4\u0003\u0002\u0002\u0002\u0cbb\u0cbc\u0007\u013c\u0002\u0002\u0cbc",
+ "\u0cbd\u0005\u01b8\u00dd\u0002\u0cbd\u0cbe\u0007\u0013\u0002\u0002\u0cbe",
+ "\u0cbf\u0007\u0019\u0002\u0002\u0cbf\u0cc0\u0005\u0180\u00c1\u0002\u0cc0",
+ "\u0cc4\u0003\u0002\u0002\u0002\u0cc1\u0cc2\u0007\u013c\u0002\u0002\u0cc2",
+ "\u0cc4\u0005\u01b8\u00dd\u0002\u0cc3\u0cb7\u0003\u0002\u0002\u0002\u0cc3",
+ "\u0cbb\u0003\u0002\u0002\u0002\u0cc3\u0cc1\u0003\u0002\u0002\u0002\u0cc4",
+ "\u01ab\u0003\u0002\u0002\u0002\u0cc5\u0cc6\u0007\t\u0002\u0002\u0cc6",
+ "\u0cc7\u0005\u01ae\u00d8\u0002\u0cc7\u0cc8\u0007\n\u0002\u0002\u0cc8",
+ "\u0ccb\u0003\u0002\u0002\u0002\u0cc9\u0ccb\u0005\u01b0\u00d9\u0002\u0cca",
+ "\u0cc5\u0003\u0002\u0002\u0002\u0cca\u0cc9\u0003\u0002\u0002\u0002\u0ccb",
+ "\u01ad\u0003\u0002\u0002\u0002\u0ccc\u0cce\u000b\u0002\u0002\u0002\u0ccd",
+ "\u0ccc\u0003\u0002\u0002\u0002\u0cce\u0cd1\u0003\u0002\u0002\u0002\u0ccf",
+ "\u0cd0\u0003\u0002\u0002\u0002\u0ccf\u0ccd\u0003\u0002\u0002\u0002\u0cd0",
+ "\u01af\u0003\u0002\u0002\u0002\u0cd1\u0ccf\u0003\u0002\u0002\u0002\u0cd2",
+ "\u0cd3\u0007\u016c\u0002\u0002\u0cd3\u0cd4\u0005\u0180\u00c1\u0002\u0cd4",
+ "\u01b1\u0003\u0002\u0002\u0002\u0cd5\u0ce4\u0007\u016d\u0002\u0002\u0cd6",
+ "\u0cda\u0007\u0005\u0002\u0002\u0cd7\u0cd8\u0007\u0007\u0002\u0002\u0cd8",
+ "\u0cda\u0007\u0005\u0002\u0002\u0cd9\u0cd6\u0003\u0002\u0002\u0002\u0cd9",
+ "\u0cd7\u0003\u0002\u0002\u0002\u0cd9\u0cda\u0003\u0002\u0002\u0002\u0cda",
+ "\u0cdb\u0003\u0002\u0002\u0002\u0cdb\u0ce0\u0005\u01b8\u00dd\u0002\u0cdc",
+ "\u0cdd\u0007\u0005\u0002\u0002\u0cdd\u0cdf\u0005\u01b8\u00dd\u0002\u0cde",
+ "\u0cdc\u0003\u0002\u0002\u0002\u0cdf\u0ce2\u0003\u0002\u0002\u0002\u0ce0",
+ "\u0cde\u0003\u0002\u0002\u0002\u0ce0\u0ce1\u0003\u0002\u0002\u0002\u0ce1",
+ "\u0ce4\u0003\u0002\u0002\u0002\u0ce2\u0ce0\u0003\u0002\u0002\u0002\u0ce3",
+ "\u0cd5\u0003\u0002\u0002\u0002\u0ce3\u0cd9\u0003\u0002\u0002\u0002\u0ce4",
+ "\u01b3\u0003\u0002\u0002\u0002\u0ce5\u0ce6\u0007\u0091\u0002\u0002\u0ce6",
+ "\u0ce7\u0005\u01ba\u00de\u0002\u0ce7\u01b5\u0003\u0002\u0002\u0002\u0ce8",
+ "\u0ce9\u0007\u00ac\u0002\u0002\u0ce9\u0cea\u0005\u01ba\u00de\u0002\u0cea",
+ "\u01b7\u0003\u0002\u0002\u0002\u0ceb\u0ced\u0007\u000b\u0002\u0002\u0cec",
+ "\u0ceb\u0003\u0002\u0002\u0002\u0cec\u0ced\u0003\u0002\u0002\u0002\u0ced",
+ "\u0cf0\u0003\u0002\u0002\u0002\u0cee\u0cf1\u0007\u0013\u0002\u0002\u0cef",
+ "\u0cf1\u0005\u01c4\u00e3\u0002\u0cf0\u0cee\u0003\u0002\u0002\u0002\u0cf0",
+ "\u0cef\u0003\u0002\u0002\u0002\u0cf1\u0cf9\u0003\u0002\u0002\u0002\u0cf2",
+ "\u0cf5\u0007\u0007\u0002\u0002\u0cf3\u0cf6\u0007\u0013\u0002\u0002\u0cf4",
+ "\u0cf6\u0005\u01c4\u00e3\u0002\u0cf5\u0cf3\u0003\u0002\u0002\u0002\u0cf5",
+ "\u0cf4\u0003\u0002\u0002\u0002\u0cf6\u0cf8\u0003\u0002\u0002\u0002\u0cf7",
+ "\u0cf2\u0003\u0002\u0002\u0002\u0cf8\u0cfb\u0003\u0002\u0002\u0002\u0cf9",
+ "\u0cf7\u0003\u0002\u0002\u0002\u0cf9\u0cfa\u0003\u0002\u0002\u0002\u0cfa",
+ "\u01b9\u0003\u0002\u0002\u0002\u0cfb\u0cf9\u0003\u0002\u0002\u0002\u0cfc",
+ "\u0cff\u0007\u011a\u0002\u0002\u0cfd\u0cff\u0007\u016e\u0002\u0002\u0cfe",
+ "\u0cfc\u0003\u0002\u0002\u0002\u0cfe\u0cfd\u0003\u0002\u0002\u0002\u0cff",
+ "\u01bb\u0003\u0002\u0002\u0002\u0d00\u0d02\t0\u0002\u0002\u0d01\u0d00",
+ "\u0003\u0002\u0002\u0002\u0d01\u0d02\u0003\u0002\u0002\u0002\u0d02\u0d03",
+ "\u0003\u0002\u0002\u0002\u0d03\u0d04\u0007J\u0002\u0002\u0d04\u01bd",
+ "\u0003\u0002\u0002\u0002\u0d05\u0d07\t0\u0002\u0002\u0d06\u0d05\u0003",
+ "\u0002\u0002\u0002\u0d06\u0d07\u0003\u0002\u0002\u0002\u0d07\u0d08\u0003",
+ "\u0002\u0002\u0002\u0d08\u0d09\u0007\u016f\u0002\u0002\u0d09\u01bf\u0003",
+ "\u0002\u0002\u0002\u0d0a\u0d0b\t1\u0002\u0002\u0d0b\u01c1\u0003\u0002",
+ "\u0002\u0002\u0d0c\u0d0d\u0007\u0015\u0002\u0002\u0d0d\u01c3\u0003\u0002",
+ "\u0002\u0002\u0d0e\u0d0f\t2\u0002\u0002\u0d0f\u01c5\u0003\u0002\u0002",
+ "\u0002\u01aa\u01cb\u01ce\u01d2\u01d5\u01da\u01e1\u01e7\u01e9\u01f2\u01f5",
+ "\u01f7\u0236\u023e\u024e\u0255\u0258\u025d\u0261\u026a\u026f\u0277\u027c",
+ "\u0285\u0291\u0296\u0299\u02a7\u02ae\u02b7\u02c8\u02cc\u02d4\u02df\u02e9",
+ "\u02f1\u02f8\u02fc\u0300\u0305\u0309\u030e\u0312\u0316\u0320\u0324\u0329",
+ "\u032e\u0332\u033f\u0344\u034a\u0353\u0357\u035f\u0362\u0367\u036c\u0373",
+ "\u037c\u037f\u0386\u038c\u0391\u0397\u039c\u039f\u03a5\u03b3\u03bd\u03c3",
+ "\u03c8\u03cd\u03d2\u03d6\u03db\u03de\u03e8\u03f4\u03fb\u03fe\u040a\u040f",
+ "\u0414\u0417\u041e\u042a\u0437\u0439\u043e\u0441\u0450\u0456\u0461\u0464",
+ "\u046e\u0475\u047b\u0483\u048d\u04a1\u04a7\u04ab\u04b0\u04b4\u04b9\u04bc",
+ "\u04c1\u04c4\u04d0\u04d7\u04dc\u04e1\u04e5\u04ea\u04ed\u04f7\u0503\u050a",
+ "\u0512\u0521\u0540\u0542\u0547\u054b\u0550\u0557\u055a\u055d\u0562\u0566",
+ "\u0568\u056f\u0575\u057c\u0582\u0585\u058a\u058e\u0591\u0598\u059e\u05a1",
+ "\u05ab\u05b4\u05bb\u05c2\u05c4\u05ca\u05cd\u05d8\u05e1\u05e7\u05ed\u05f0",
+ "\u05f5\u05f8\u05fb\u05fe\u0601\u0607\u0611\u061c\u061f\u0626\u062b\u0630",
+ "\u0634\u063c\u0640\u0645\u0649\u064b\u0650\u0658\u065d\u0663\u066a\u066d",
+ "\u0674\u067c\u0684\u0687\u068a\u068f\u0698\u069c\u06a6\u06b9\u06c0\u06c2",
+ "\u06c6\u06ca\u06d2\u06dd\u06e6\u06ee\u06f6\u06fa\u0702\u0714\u0722\u0729",
+ "\u072d\u0734\u0736\u073a\u0743\u074b\u0754\u0764\u076a\u076e\u0778\u0780",
+ "\u0789\u078d\u0793\u0798\u079c\u07a6\u07ac\u07b0\u07bc\u07c3\u07d3\u07da",
+ "\u07e4\u07e7\u07eb\u07f2\u07f9\u07fb\u07ff\u0803\u0808\u080b\u080f\u0812",
+ "\u081d\u0820\u082b\u0831\u0835\u0837\u083b\u0844\u084b\u084f\u0853\u085a",
+ "\u085e\u0866\u086c\u0870\u087b\u0882\u088f\u0897\u089b\u08a5\u08aa\u08b7",
+ "\u08c2\u08ca\u08ce\u08d2\u08d6\u08d8\u08dd\u08e0\u08e3\u08e6\u08ea\u08ed",
+ "\u08f0\u08f3\u08f6\u08fd\u0908\u090c\u090f\u0913\u091a\u091e\u0928\u0930",
+ "\u0936\u093a\u0940\u0949\u094c\u0951\u0954\u095e\u0963\u096c\u0971\u0975",
+ "\u097e\u0982\u0990\u099d\u09a2\u09a6\u09ac\u09b7\u09b9\u09c0\u09c3\u09ca",
+ "\u09cf\u09d5\u09d8\u09db\u09ea\u09f1\u09f4\u09f7\u09fb\u0a00\u0a06\u0a0a",
+ "\u0a15\u0a19\u0a1c\u0a20\u0a24\u0a28\u0a2c\u0a32\u0a38\u0a3f\u0a47\u0a4d",
+ "\u0a52\u0a5d\u0a66\u0a6a\u0a73\u0a77\u0a81\u0a86\u0a9c\u0a9f\u0ab2\u0ac2",
+ "\u0ac4\u0acf\u0ade\u0aea\u0aee\u0af9\u0afd\u0b09\u0b0d\u0b18\u0b1d\u0b22",
+ "\u0b26\u0b2a\u0b2f\u0b33\u0b37\u0b4e\u0b50\u0b62\u0b64\u0b6c\u0b71\u0b76",
+ "\u0b7b\u0b88\u0b8d\u0b92\u0b97\u0b9c\u0ba1\u0ba6\u0bab\u0bad\u0bb4\u0bb7",
+ "\u0bc2\u0bcc\u0bd4\u0bdd\u0be3\u0bf4\u0bf7\u0c07\u0c0a\u0c1a\u0c1d\u0c2d",
+ "\u0c30\u0c40\u0c43\u0c53\u0c56\u0c64\u0c73\u0c77\u0c87\u0c8d\u0c92\u0c9b",
+ "\u0ca2\u0ca4\u0caa\u0cae\u0cb4\u0cc3\u0cca\u0ccf\u0cd9\u0ce0\u0ce3\u0cec",
+ "\u0cf0\u0cf5\u0cf9\u0cfe\u0d01\u0d06"].join("");
+
+
+var atn = new antlr4.atn.ATNDeserializer().deserialize(serializedATN);
+
+var decisionsToDFA = atn.decisionToState.map( function(ds, index) { return new antlr4.dfa.DFA(ds, index); });
+
+var sharedContextCache = new antlr4.PredictionContextCache();
+
+var literalNames = [ null, "'@'", "'#'", "'/'", "'%'", "'.'", "'*'", "'!'",
+ "';'", "'-'", "'+'" ];
+
+var symbolicNames = [ null, null, null, null, null, null, null, null, null,
+ null, null, "T_GO", "T_BEGIN", "T_SEMICOLON", "T_END",
+ "T_EXCEPTION", "T_WHEN", "L_ID", "T_THEN", "T_NULL",
+ "T_SET", "T_COMMA", "T_COLON", "T_EQUAL", "T_OPEN_P",
+ "T_CLOSE_P", "T_ALLOCATE", "T_CURSOR", "T_FOR", "T_RESULT",
+ "T_PROCEDURE", "T_ASSOCIATE", "T_LOCATOR", "T_LOCATORS",
+ "T_WITH", "T_TRANSACTION", "T_BREAK", "T_CALL", "T_DECLARE",
+ "T_AS", "T_CONSTANT", "T_CONDITION", "T_IS", "T_RETURN",
+ "T_ONLY", "T_TO", "T_CALLER", "T_CLIENT", "T_WITHOUT",
+ "T_CONTINUE", "T_EXIT", "T_HANDLER", "T_SQLEXCEPTION",
+ "T_SQLWARNING", "T_NOT", "T_FOUND", "T_GLOBAL", "T_TEMPORARY",
+ "T_TABLE", "T_CREATE", "T_IF", "T_EXISTS", "T_LOCAL",
+ "T_MULTISET", "T_VOLATILE", "T_LIKE", "T_CONSTRAINT",
+ "T_PRIMARY", "T_KEY", "T_UNIQUE", "T_REFERENCES",
+ "T_IDENTITY", "L_INT", "T_AUTO_INCREMENT", "T_ENABLE",
+ "T_CLUSTERED", "T_ASC", "T_DESC", "T_FOREIGN", "T_ON",
+ "T_UPDATE", "T_DELETE", "T_NO", "T_ACTION", "T_RESTRICT",
+ "T_DEFAULT", "T_CASCADE", "T_LOG", "T_FALLBACK", "T_COMMIT",
+ "T_PRESERVE", "T_ROWS", "T_SEGMENT", "T_CREATION",
+ "T_IMMEDIATE", "T_DEFERRED", "T_PCTFREE", "T_PCTUSED",
+ "T_INITRANS", "T_MAXTRANS", "T_NOCOMPRESS", "T_LOGGING",
+ "T_NOLOGGING", "T_STORAGE", "T_TABLESPACE", "T_INDEX",
+ "T_IN", "T_REPLACE", "T_DISTRIBUTE", "T_BY", "T_HASH",
+ "T_LOGGED", "T_COMPRESS", "T_YES", "T_DEFINITION",
+ "T_DROP", "T_DATA", "T_STORED", "T_ROW", "T_FORMAT",
+ "T_DELIMITED", "T_FIELDS", "T_TERMINATED", "T_ESCAPED",
+ "T_COLLECTION", "T_ITEMS", "T_MAP", "T_KEYS", "T_LINES",
+ "T_DEFINED", "T_TEXTIMAGE_ON", "T_COMMENT", "T_CHARACTER",
+ "T_CHARSET", "T_ENGINE", "T_ALTER", "T_ADD2", "T_CHAR",
+ "T_BIGINT", "T_BINARY_DOUBLE", "T_BINARY_FLOAT", "T_BINARY_INTEGER",
+ "T_BIT", "T_DATE", "T_DATETIME", "T_DEC", "T_DECIMAL",
+ "T_DOUBLE", "T_PRECISION", "T_FLOAT", "T_INT", "T_INT2",
+ "T_INT4", "T_INT8", "T_INTEGER", "T_NCHAR", "T_NVARCHAR",
+ "T_NUMBER", "T_NUMERIC", "T_PLS_INTEGER", "T_REAL",
+ "T_RESULT_SET_LOCATOR", "T_VARYING", "T_SIMPLE_FLOAT",
+ "T_SIMPLE_DOUBLE", "T_SIMPLE_INTEGER", "T_SMALLINT",
+ "T_SMALLDATETIME", "T_STRING", "T_SYS_REFCURSOR",
+ "T_TIMESTAMP", "T_TINYINT", "T_VARCHAR", "T_VARCHAR2",
+ "T_XML", "T_TYPE", "T_ROWTYPE", "T_MAX", "T_BYTE",
+ "T_CASESPECIFIC", "T_CS", "T_DATABASE", "T_SCHEMA",
+ "T_LOCATION", "T_OR", "T_FUNCTION", "T_RETURNS", "T_PACKAGE",
+ "T_PROC", "T_BODY", "T_OUT", "T_INOUT", "T_LANGUAGE",
+ "T_SQL", "T_SECURITY", "T_CREATOR", "T_DEFINER", "T_INVOKER",
+ "T_OWNER", "T_DYNAMIC", "T_SETS", "T_EXEC", "T_EXECUTE",
+ "T_INTO", "T_ELSE", "T_ELSIF", "T_ELSEIF", "T_INCLUDE",
+ "T_INSERT", "T_OVERWRITE", "T_VALUES", "T_DIRECTORY",
+ "T_GET", "T_DIAGNOSTICS", "T_MESSAGE_TEXT", "T_ROW_COUNT",
+ "T_GRANT", "T_ROLE", "T_LEAVE", "T_OBJECT", "T_AT",
+ "T_OPEN", "T_FETCH", "T_FROM", "T_COLLECT", "T_STATISTICS",
+ "T_STATS", "T_COLUMN", "T_CLOSE", "T_CMP", "T_SUM",
+ "T_COPY", "T_HDFS", "T_BATCHSIZE", "T_DELIMITER",
+ "T_SQLINSERT", "T_IGNORE", "T_WORK", "T_PRINT", "T_QUIT",
+ "T_RAISE", "T_RESIGNAL", "T_SQLSTATE", "T_VALUE",
+ "T_ROLLBACK", "T_CURRENT", "T_CURRENT_SCHEMA", "T_ANSI_NULLS",
+ "T_ANSI_PADDING", "T_NOCOUNT", "T_QUOTED_IDENTIFIER",
+ "T_XACT_ABORT", "T_OFF", "T_QUERY_BAND", "T_NONE",
+ "T_SESSION", "T_SIGNAL", "T_SUMMARY", "T_TOP", "T_LIMIT",
+ "T_TRUNCATE", "T_USE", "T_WHILE", "T_DO", "T_LOOP",
+ "T_REVERSE", "T_DOT2", "T_STEP", "L_LABEL", "T_LESS",
+ "T_GREATER", "T_USING", "T_UNION", "T_ALL", "T_EXCEPT",
+ "T_INTERSECT", "T_SELECT", "T_SEL", "T_DISTINCT",
+ "T_TITLE", "L_S_STRING", "T_INNER", "T_JOIN", "T_LEFT",
+ "T_RIGHT", "T_FULL", "T_OUTER", "T_WHERE", "T_GROUP",
+ "T_HAVING", "T_QUALIFY", "T_ORDER", "T_RR", "T_RS",
+ "T_UR", "T_AND", "T_KEEP", "T_EXCLUSIVE", "T_SHARE",
+ "T_LOCKS", "T_MERGE", "T_MATCHED", "T_DESCRIBE", "T_BETWEEN",
+ "T_EQUAL2", "T_NOTEQUAL", "T_NOTEQUAL2", "T_LESSEQUAL",
+ "T_GREATEREQUAL", "T_RLIKE", "T_REGEXP", "T_MUL",
+ "T_DIV", "T_ADD", "T_SUB", "T_INTERVAL", "T_DAY",
+ "T_DAYS", "T_MICROSECOND", "T_MICROSECONDS", "T_SECOND",
+ "T_SECONDS", "T_PIPE", "T_CONCAT", "T_CASE", "T_ISOPEN",
+ "T_NOTFOUND", "T_AVG", "T_COUNT", "T_COUNT_BIG", "T_CUME_DIST",
+ "T_DENSE_RANK", "T_FIRST_VALUE", "T_LAG", "T_LAST_VALUE",
+ "T_LEAD", "T_MIN", "T_RANK", "T_ROW_NUMBER", "T_STDEV",
+ "T_VAR", "T_VARIANCE", "T_OVER", "T_PARTITION", "T_ACTIVITY_COUNT",
+ "T_CAST", "T_CURRENT_DATE", "T_CURRENT_TIMESTAMP",
+ "T_CURRENT_USER", "T_USER", "T_MAX_PART_STRING", "T_MIN_PART_STRING",
+ "T_MAX_PART_INT", "T_MIN_PART_INT", "T_MAX_PART_DATE",
+ "T_MIN_PART_DATE", "T_PART_COUNT", "T_PART_LOC", "T_TRIM",
+ "T_SUBSTRING", "T_SYSDATE", "T_HIVE", "T_HOST", "L_FILE",
+ "L_D_STRING", "L_DEC", "T_TRUE", "T_FALSE", "T_DIR",
+ "T_FILE", "T_FILES", "T_NEW", "T_PWD", "T_SESSIONS",
+ "T_SUBDIR" ];
+
+var ruleNames = [ "program", "block", "begin_end_block", "single_block_stmt",
+ "block_end", "proc_block", "stmt", "semicolon_stmt",
+ "exception_block", "exception_block_item", "null_stmt",
+ "expr_stmt", "assignment_stmt", "assignment_stmt_item",
+ "assignment_stmt_single_item", "assignment_stmt_multiple_item",
+ "assignment_stmt_select_item", "allocate_cursor_stmt",
+ "associate_locator_stmt", "begin_transaction_stmt", "break_stmt",
+ "call_stmt", "declare_stmt", "declare_block", "declare_block_inplace",
+ "declare_stmt_item", "declare_var_item", "declare_condition_item",
+ "declare_cursor_item", "cursor_with_return", "cursor_without_return",
+ "declare_handler_item", "declare_temporary_table_item",
+ "create_table_stmt", "create_local_temp_table_stmt",
+ "create_table_definition", "create_table_columns", "create_table_columns_item",
+ "column_name", "create_table_column_inline_cons", "create_table_column_cons",
+ "create_table_fk_action", "create_table_preoptions",
+ "create_table_preoptions_item", "create_table_preoptions_td_item",
+ "create_table_options", "create_table_options_item",
+ "create_table_options_ora_item", "create_table_options_db2_item",
+ "create_table_options_td_item", "create_table_options_hive_item",
+ "create_table_hive_row_format", "create_table_hive_row_format_fields",
+ "create_table_options_mssql_item", "create_table_options_mysql_item",
+ "alter_table_stmt", "alter_table_item", "alter_table_add_constraint",
+ "alter_table_add_constraint_item", "dtype", "dtype_len",
+ "dtype_attr", "dtype_default", "create_database_stmt",
+ "create_database_option", "create_function_stmt", "create_function_return",
+ "create_package_stmt", "package_spec", "package_spec_item",
+ "create_package_body_stmt", "package_body", "package_body_item",
+ "create_procedure_stmt", "create_routine_params", "create_routine_param_item",
+ "create_routine_options", "create_routine_option", "drop_stmt",
+ "end_transaction_stmt", "exec_stmt", "if_stmt", "if_plsql_stmt",
+ "if_tsql_stmt", "if_bteq_stmt", "elseif_block", "else_block",
+ "include_stmt", "insert_stmt", "insert_stmt_cols", "insert_stmt_rows",
+ "insert_stmt_row", "insert_directory_stmt", "exit_stmt",
+ "get_diag_stmt", "get_diag_stmt_item", "get_diag_stmt_exception_item",
+ "get_diag_stmt_rowcount_item", "grant_stmt", "grant_stmt_item",
+ "leave_stmt", "map_object_stmt", "open_stmt", "fetch_stmt",
+ "collect_stats_stmt", "collect_stats_clause", "close_stmt",
+ "cmp_stmt", "cmp_source", "copy_from_local_stmt", "copy_stmt",
+ "copy_source", "copy_target", "copy_option", "copy_file_option",
+ "commit_stmt", "create_index_stmt", "create_index_col",
+ "index_storage_clause", "index_mssql_storage_clause",
+ "print_stmt", "quit_stmt", "raise_stmt", "resignal_stmt",
+ "return_stmt", "rollback_stmt", "set_session_option",
+ "set_current_schema_option", "set_mssql_session_option",
+ "set_teradata_session_option", "signal_stmt", "summary_stmt",
+ "truncate_stmt", "use_stmt", "values_into_stmt", "while_stmt",
+ "for_cursor_stmt", "for_range_stmt", "label", "using_clause",
+ "select_stmt", "cte_select_stmt", "cte_select_stmt_item",
+ "cte_select_cols", "fullselect_stmt", "fullselect_stmt_item",
+ "fullselect_set_clause", "subselect_stmt", "select_list",
+ "select_list_set", "select_list_limit", "select_list_item",
+ "select_list_alias", "select_list_asterisk", "into_clause",
+ "from_clause", "from_table_clause", "from_table_name_clause",
+ "from_subselect_clause", "from_join_clause", "from_join_type_clause",
+ "from_table_values_clause", "from_table_values_row",
+ "from_alias_clause", "table_name", "where_clause", "group_by_clause",
+ "having_clause", "qualify_clause", "order_by_clause",
+ "select_options", "select_options_item", "update_stmt",
+ "update_assignment", "update_table", "update_upsert",
+ "merge_stmt", "merge_table", "merge_condition", "merge_action",
+ "delete_stmt", "delete_alias", "describe_stmt", "bool_expr",
+ "bool_expr_atom", "bool_expr_unary", "bool_expr_single_in",
+ "bool_expr_multi_in", "bool_expr_binary", "bool_expr_logical_operator",
+ "bool_expr_binary_operator", "expr", "expr_atom", "expr_interval",
+ "interval_item", "expr_concat", "expr_concat_item", "expr_case",
+ "expr_case_simple", "expr_case_searched", "expr_cursor_attribute",
+ "expr_agg_window_func", "expr_func_all_distinct", "expr_func_over_clause",
+ "expr_func_partition_by_clause", "expr_spec_func", "expr_func",
+ "expr_func_params", "func_param", "expr_select", "expr_file",
+ "hive", "hive_item", "host", "host_cmd", "host_stmt",
+ "file_name", "date_literal", "timestamp_literal", "ident",
+ "string", "int_number", "dec_number", "bool_literal",
+ "null_const", "non_reserved_words" ];
+
+function HiveSqlParser (input) {
+ antlr4.Parser.call(this, input);
+ this._interp = new antlr4.atn.ParserATNSimulator(this, atn, decisionsToDFA, sharedContextCache);
+ this.ruleNames = ruleNames;
+ this.literalNames = literalNames;
+ this.symbolicNames = symbolicNames;
+ return this;
+}
+
+HiveSqlParser.prototype = Object.create(antlr4.Parser.prototype);
+HiveSqlParser.prototype.constructor = HiveSqlParser;
+
+Object.defineProperty(HiveSqlParser.prototype, "atn", {
+ get : function() {
+ return atn;
+ }
+});
+
+HiveSqlParser.EOF = antlr4.Token.EOF;
+HiveSqlParser.T__0 = 1;
+HiveSqlParser.T__1 = 2;
+HiveSqlParser.T__2 = 3;
+HiveSqlParser.T__3 = 4;
+HiveSqlParser.T__4 = 5;
+HiveSqlParser.T__5 = 6;
+HiveSqlParser.T__6 = 7;
+HiveSqlParser.T__7 = 8;
+HiveSqlParser.T__8 = 9;
+HiveSqlParser.T__9 = 10;
+HiveSqlParser.T_GO = 11;
+HiveSqlParser.T_BEGIN = 12;
+HiveSqlParser.T_SEMICOLON = 13;
+HiveSqlParser.T_END = 14;
+HiveSqlParser.T_EXCEPTION = 15;
+HiveSqlParser.T_WHEN = 16;
+HiveSqlParser.L_ID = 17;
+HiveSqlParser.T_THEN = 18;
+HiveSqlParser.T_NULL = 19;
+HiveSqlParser.T_SET = 20;
+HiveSqlParser.T_COMMA = 21;
+HiveSqlParser.T_COLON = 22;
+HiveSqlParser.T_EQUAL = 23;
+HiveSqlParser.T_OPEN_P = 24;
+HiveSqlParser.T_CLOSE_P = 25;
+HiveSqlParser.T_ALLOCATE = 26;
+HiveSqlParser.T_CURSOR = 27;
+HiveSqlParser.T_FOR = 28;
+HiveSqlParser.T_RESULT = 29;
+HiveSqlParser.T_PROCEDURE = 30;
+HiveSqlParser.T_ASSOCIATE = 31;
+HiveSqlParser.T_LOCATOR = 32;
+HiveSqlParser.T_LOCATORS = 33;
+HiveSqlParser.T_WITH = 34;
+HiveSqlParser.T_TRANSACTION = 35;
+HiveSqlParser.T_BREAK = 36;
+HiveSqlParser.T_CALL = 37;
+HiveSqlParser.T_DECLARE = 38;
+HiveSqlParser.T_AS = 39;
+HiveSqlParser.T_CONSTANT = 40;
+HiveSqlParser.T_CONDITION = 41;
+HiveSqlParser.T_IS = 42;
+HiveSqlParser.T_RETURN = 43;
+HiveSqlParser.T_ONLY = 44;
+HiveSqlParser.T_TO = 45;
+HiveSqlParser.T_CALLER = 46;
+HiveSqlParser.T_CLIENT = 47;
+HiveSqlParser.T_WITHOUT = 48;
+HiveSqlParser.T_CONTINUE = 49;
+HiveSqlParser.T_EXIT = 50;
+HiveSqlParser.T_HANDLER = 51;
+HiveSqlParser.T_SQLEXCEPTION = 52;
+HiveSqlParser.T_SQLWARNING = 53;
+HiveSqlParser.T_NOT = 54;
+HiveSqlParser.T_FOUND = 55;
+HiveSqlParser.T_GLOBAL = 56;
+HiveSqlParser.T_TEMPORARY = 57;
+HiveSqlParser.T_TABLE = 58;
+HiveSqlParser.T_CREATE = 59;
+HiveSqlParser.T_IF = 60;
+HiveSqlParser.T_EXISTS = 61;
+HiveSqlParser.T_LOCAL = 62;
+HiveSqlParser.T_MULTISET = 63;
+HiveSqlParser.T_VOLATILE = 64;
+HiveSqlParser.T_LIKE = 65;
+HiveSqlParser.T_CONSTRAINT = 66;
+HiveSqlParser.T_PRIMARY = 67;
+HiveSqlParser.T_KEY = 68;
+HiveSqlParser.T_UNIQUE = 69;
+HiveSqlParser.T_REFERENCES = 70;
+HiveSqlParser.T_IDENTITY = 71;
+HiveSqlParser.L_INT = 72;
+HiveSqlParser.T_AUTO_INCREMENT = 73;
+HiveSqlParser.T_ENABLE = 74;
+HiveSqlParser.T_CLUSTERED = 75;
+HiveSqlParser.T_ASC = 76;
+HiveSqlParser.T_DESC = 77;
+HiveSqlParser.T_FOREIGN = 78;
+HiveSqlParser.T_ON = 79;
+HiveSqlParser.T_UPDATE = 80;
+HiveSqlParser.T_DELETE = 81;
+HiveSqlParser.T_NO = 82;
+HiveSqlParser.T_ACTION = 83;
+HiveSqlParser.T_RESTRICT = 84;
+HiveSqlParser.T_DEFAULT = 85;
+HiveSqlParser.T_CASCADE = 86;
+HiveSqlParser.T_LOG = 87;
+HiveSqlParser.T_FALLBACK = 88;
+HiveSqlParser.T_COMMIT = 89;
+HiveSqlParser.T_PRESERVE = 90;
+HiveSqlParser.T_ROWS = 91;
+HiveSqlParser.T_SEGMENT = 92;
+HiveSqlParser.T_CREATION = 93;
+HiveSqlParser.T_IMMEDIATE = 94;
+HiveSqlParser.T_DEFERRED = 95;
+HiveSqlParser.T_PCTFREE = 96;
+HiveSqlParser.T_PCTUSED = 97;
+HiveSqlParser.T_INITRANS = 98;
+HiveSqlParser.T_MAXTRANS = 99;
+HiveSqlParser.T_NOCOMPRESS = 100;
+HiveSqlParser.T_LOGGING = 101;
+HiveSqlParser.T_NOLOGGING = 102;
+HiveSqlParser.T_STORAGE = 103;
+HiveSqlParser.T_TABLESPACE = 104;
+HiveSqlParser.T_INDEX = 105;
+HiveSqlParser.T_IN = 106;
+HiveSqlParser.T_REPLACE = 107;
+HiveSqlParser.T_DISTRIBUTE = 108;
+HiveSqlParser.T_BY = 109;
+HiveSqlParser.T_HASH = 110;
+HiveSqlParser.T_LOGGED = 111;
+HiveSqlParser.T_COMPRESS = 112;
+HiveSqlParser.T_YES = 113;
+HiveSqlParser.T_DEFINITION = 114;
+HiveSqlParser.T_DROP = 115;
+HiveSqlParser.T_DATA = 116;
+HiveSqlParser.T_STORED = 117;
+HiveSqlParser.T_ROW = 118;
+HiveSqlParser.T_FORMAT = 119;
+HiveSqlParser.T_DELIMITED = 120;
+HiveSqlParser.T_FIELDS = 121;
+HiveSqlParser.T_TERMINATED = 122;
+HiveSqlParser.T_ESCAPED = 123;
+HiveSqlParser.T_COLLECTION = 124;
+HiveSqlParser.T_ITEMS = 125;
+HiveSqlParser.T_MAP = 126;
+HiveSqlParser.T_KEYS = 127;
+HiveSqlParser.T_LINES = 128;
+HiveSqlParser.T_DEFINED = 129;
+HiveSqlParser.T_TEXTIMAGE_ON = 130;
+HiveSqlParser.T_COMMENT = 131;
+HiveSqlParser.T_CHARACTER = 132;
+HiveSqlParser.T_CHARSET = 133;
+HiveSqlParser.T_ENGINE = 134;
+HiveSqlParser.T_ALTER = 135;
+HiveSqlParser.T_ADD2 = 136;
+HiveSqlParser.T_CHAR = 137;
+HiveSqlParser.T_BIGINT = 138;
+HiveSqlParser.T_BINARY_DOUBLE = 139;
+HiveSqlParser.T_BINARY_FLOAT = 140;
+HiveSqlParser.T_BINARY_INTEGER = 141;
+HiveSqlParser.T_BIT = 142;
+HiveSqlParser.T_DATE = 143;
+HiveSqlParser.T_DATETIME = 144;
+HiveSqlParser.T_DEC = 145;
+HiveSqlParser.T_DECIMAL = 146;
+HiveSqlParser.T_DOUBLE = 147;
+HiveSqlParser.T_PRECISION = 148;
+HiveSqlParser.T_FLOAT = 149;
+HiveSqlParser.T_INT = 150;
+HiveSqlParser.T_INT2 = 151;
+HiveSqlParser.T_INT4 = 152;
+HiveSqlParser.T_INT8 = 153;
+HiveSqlParser.T_INTEGER = 154;
+HiveSqlParser.T_NCHAR = 155;
+HiveSqlParser.T_NVARCHAR = 156;
+HiveSqlParser.T_NUMBER = 157;
+HiveSqlParser.T_NUMERIC = 158;
+HiveSqlParser.T_PLS_INTEGER = 159;
+HiveSqlParser.T_REAL = 160;
+HiveSqlParser.T_RESULT_SET_LOCATOR = 161;
+HiveSqlParser.T_VARYING = 162;
+HiveSqlParser.T_SIMPLE_FLOAT = 163;
+HiveSqlParser.T_SIMPLE_DOUBLE = 164;
+HiveSqlParser.T_SIMPLE_INTEGER = 165;
+HiveSqlParser.T_SMALLINT = 166;
+HiveSqlParser.T_SMALLDATETIME = 167;
+HiveSqlParser.T_STRING = 168;
+HiveSqlParser.T_SYS_REFCURSOR = 169;
+HiveSqlParser.T_TIMESTAMP = 170;
+HiveSqlParser.T_TINYINT = 171;
+HiveSqlParser.T_VARCHAR = 172;
+HiveSqlParser.T_VARCHAR2 = 173;
+HiveSqlParser.T_XML = 174;
+HiveSqlParser.T_TYPE = 175;
+HiveSqlParser.T_ROWTYPE = 176;
+HiveSqlParser.T_MAX = 177;
+HiveSqlParser.T_BYTE = 178;
+HiveSqlParser.T_CASESPECIFIC = 179;
+HiveSqlParser.T_CS = 180;
+HiveSqlParser.T_DATABASE = 181;
+HiveSqlParser.T_SCHEMA = 182;
+HiveSqlParser.T_LOCATION = 183;
+HiveSqlParser.T_OR = 184;
+HiveSqlParser.T_FUNCTION = 185;
+HiveSqlParser.T_RETURNS = 186;
+HiveSqlParser.T_PACKAGE = 187;
+HiveSqlParser.T_PROC = 188;
+HiveSqlParser.T_BODY = 189;
+HiveSqlParser.T_OUT = 190;
+HiveSqlParser.T_INOUT = 191;
+HiveSqlParser.T_LANGUAGE = 192;
+HiveSqlParser.T_SQL = 193;
+HiveSqlParser.T_SECURITY = 194;
+HiveSqlParser.T_CREATOR = 195;
+HiveSqlParser.T_DEFINER = 196;
+HiveSqlParser.T_INVOKER = 197;
+HiveSqlParser.T_OWNER = 198;
+HiveSqlParser.T_DYNAMIC = 199;
+HiveSqlParser.T_SETS = 200;
+HiveSqlParser.T_EXEC = 201;
+HiveSqlParser.T_EXECUTE = 202;
+HiveSqlParser.T_INTO = 203;
+HiveSqlParser.T_ELSE = 204;
+HiveSqlParser.T_ELSIF = 205;
+HiveSqlParser.T_ELSEIF = 206;
+HiveSqlParser.T_INCLUDE = 207;
+HiveSqlParser.T_INSERT = 208;
+HiveSqlParser.T_OVERWRITE = 209;
+HiveSqlParser.T_VALUES = 210;
+HiveSqlParser.T_DIRECTORY = 211;
+HiveSqlParser.T_GET = 212;
+HiveSqlParser.T_DIAGNOSTICS = 213;
+HiveSqlParser.T_MESSAGE_TEXT = 214;
+HiveSqlParser.T_ROW_COUNT = 215;
+HiveSqlParser.T_GRANT = 216;
+HiveSqlParser.T_ROLE = 217;
+HiveSqlParser.T_LEAVE = 218;
+HiveSqlParser.T_OBJECT = 219;
+HiveSqlParser.T_AT = 220;
+HiveSqlParser.T_OPEN = 221;
+HiveSqlParser.T_FETCH = 222;
+HiveSqlParser.T_FROM = 223;
+HiveSqlParser.T_COLLECT = 224;
+HiveSqlParser.T_STATISTICS = 225;
+HiveSqlParser.T_STATS = 226;
+HiveSqlParser.T_COLUMN = 227;
+HiveSqlParser.T_CLOSE = 228;
+HiveSqlParser.T_CMP = 229;
+HiveSqlParser.T_SUM = 230;
+HiveSqlParser.T_COPY = 231;
+HiveSqlParser.T_HDFS = 232;
+HiveSqlParser.T_BATCHSIZE = 233;
+HiveSqlParser.T_DELIMITER = 234;
+HiveSqlParser.T_SQLINSERT = 235;
+HiveSqlParser.T_IGNORE = 236;
+HiveSqlParser.T_WORK = 237;
+HiveSqlParser.T_PRINT = 238;
+HiveSqlParser.T_QUIT = 239;
+HiveSqlParser.T_RAISE = 240;
+HiveSqlParser.T_RESIGNAL = 241;
+HiveSqlParser.T_SQLSTATE = 242;
+HiveSqlParser.T_VALUE = 243;
+HiveSqlParser.T_ROLLBACK = 244;
+HiveSqlParser.T_CURRENT = 245;
+HiveSqlParser.T_CURRENT_SCHEMA = 246;
+HiveSqlParser.T_ANSI_NULLS = 247;
+HiveSqlParser.T_ANSI_PADDING = 248;
+HiveSqlParser.T_NOCOUNT = 249;
+HiveSqlParser.T_QUOTED_IDENTIFIER = 250;
+HiveSqlParser.T_XACT_ABORT = 251;
+HiveSqlParser.T_OFF = 252;
+HiveSqlParser.T_QUERY_BAND = 253;
+HiveSqlParser.T_NONE = 254;
+HiveSqlParser.T_SESSION = 255;
+HiveSqlParser.T_SIGNAL = 256;
+HiveSqlParser.T_SUMMARY = 257;
+HiveSqlParser.T_TOP = 258;
+HiveSqlParser.T_LIMIT = 259;
+HiveSqlParser.T_TRUNCATE = 260;
+HiveSqlParser.T_USE = 261;
+HiveSqlParser.T_WHILE = 262;
+HiveSqlParser.T_DO = 263;
+HiveSqlParser.T_LOOP = 264;
+HiveSqlParser.T_REVERSE = 265;
+HiveSqlParser.T_DOT2 = 266;
+HiveSqlParser.T_STEP = 267;
+HiveSqlParser.L_LABEL = 268;
+HiveSqlParser.T_LESS = 269;
+HiveSqlParser.T_GREATER = 270;
+HiveSqlParser.T_USING = 271;
+HiveSqlParser.T_UNION = 272;
+HiveSqlParser.T_ALL = 273;
+HiveSqlParser.T_EXCEPT = 274;
+HiveSqlParser.T_INTERSECT = 275;
+HiveSqlParser.T_SELECT = 276;
+HiveSqlParser.T_SEL = 277;
+HiveSqlParser.T_DISTINCT = 278;
+HiveSqlParser.T_TITLE = 279;
+HiveSqlParser.L_S_STRING = 280;
+HiveSqlParser.T_INNER = 281;
+HiveSqlParser.T_JOIN = 282;
+HiveSqlParser.T_LEFT = 283;
+HiveSqlParser.T_RIGHT = 284;
+HiveSqlParser.T_FULL = 285;
+HiveSqlParser.T_OUTER = 286;
+HiveSqlParser.T_WHERE = 287;
+HiveSqlParser.T_GROUP = 288;
+HiveSqlParser.T_HAVING = 289;
+HiveSqlParser.T_QUALIFY = 290;
+HiveSqlParser.T_ORDER = 291;
+HiveSqlParser.T_RR = 292;
+HiveSqlParser.T_RS = 293;
+HiveSqlParser.T_UR = 294;
+HiveSqlParser.T_AND = 295;
+HiveSqlParser.T_KEEP = 296;
+HiveSqlParser.T_EXCLUSIVE = 297;
+HiveSqlParser.T_SHARE = 298;
+HiveSqlParser.T_LOCKS = 299;
+HiveSqlParser.T_MERGE = 300;
+HiveSqlParser.T_MATCHED = 301;
+HiveSqlParser.T_DESCRIBE = 302;
+HiveSqlParser.T_BETWEEN = 303;
+HiveSqlParser.T_EQUAL2 = 304;
+HiveSqlParser.T_NOTEQUAL = 305;
+HiveSqlParser.T_NOTEQUAL2 = 306;
+HiveSqlParser.T_LESSEQUAL = 307;
+HiveSqlParser.T_GREATEREQUAL = 308;
+HiveSqlParser.T_RLIKE = 309;
+HiveSqlParser.T_REGEXP = 310;
+HiveSqlParser.T_MUL = 311;
+HiveSqlParser.T_DIV = 312;
+HiveSqlParser.T_ADD = 313;
+HiveSqlParser.T_SUB = 314;
+HiveSqlParser.T_INTERVAL = 315;
+HiveSqlParser.T_DAY = 316;
+HiveSqlParser.T_DAYS = 317;
+HiveSqlParser.T_MICROSECOND = 318;
+HiveSqlParser.T_MICROSECONDS = 319;
+HiveSqlParser.T_SECOND = 320;
+HiveSqlParser.T_SECONDS = 321;
+HiveSqlParser.T_PIPE = 322;
+HiveSqlParser.T_CONCAT = 323;
+HiveSqlParser.T_CASE = 324;
+HiveSqlParser.T_ISOPEN = 325;
+HiveSqlParser.T_NOTFOUND = 326;
+HiveSqlParser.T_AVG = 327;
+HiveSqlParser.T_COUNT = 328;
+HiveSqlParser.T_COUNT_BIG = 329;
+HiveSqlParser.T_CUME_DIST = 330;
+HiveSqlParser.T_DENSE_RANK = 331;
+HiveSqlParser.T_FIRST_VALUE = 332;
+HiveSqlParser.T_LAG = 333;
+HiveSqlParser.T_LAST_VALUE = 334;
+HiveSqlParser.T_LEAD = 335;
+HiveSqlParser.T_MIN = 336;
+HiveSqlParser.T_RANK = 337;
+HiveSqlParser.T_ROW_NUMBER = 338;
+HiveSqlParser.T_STDEV = 339;
+HiveSqlParser.T_VAR = 340;
+HiveSqlParser.T_VARIANCE = 341;
+HiveSqlParser.T_OVER = 342;
+HiveSqlParser.T_PARTITION = 343;
+HiveSqlParser.T_ACTIVITY_COUNT = 344;
+HiveSqlParser.T_CAST = 345;
+HiveSqlParser.T_CURRENT_DATE = 346;
+HiveSqlParser.T_CURRENT_TIMESTAMP = 347;
+HiveSqlParser.T_CURRENT_USER = 348;
+HiveSqlParser.T_USER = 349;
+HiveSqlParser.T_MAX_PART_STRING = 350;
+HiveSqlParser.T_MIN_PART_STRING = 351;
+HiveSqlParser.T_MAX_PART_INT = 352;
+HiveSqlParser.T_MIN_PART_INT = 353;
+HiveSqlParser.T_MAX_PART_DATE = 354;
+HiveSqlParser.T_MIN_PART_DATE = 355;
+HiveSqlParser.T_PART_COUNT = 356;
+HiveSqlParser.T_PART_LOC = 357;
+HiveSqlParser.T_TRIM = 358;
+HiveSqlParser.T_SUBSTRING = 359;
+HiveSqlParser.T_SYSDATE = 360;
+HiveSqlParser.T_HIVE = 361;
+HiveSqlParser.T_HOST = 362;
+HiveSqlParser.L_FILE = 363;
+HiveSqlParser.L_D_STRING = 364;
+HiveSqlParser.L_DEC = 365;
+HiveSqlParser.T_TRUE = 366;
+HiveSqlParser.T_FALSE = 367;
+HiveSqlParser.T_DIR = 368;
+HiveSqlParser.T_FILE = 369;
+HiveSqlParser.T_FILES = 370;
+HiveSqlParser.T_NEW = 371;
+HiveSqlParser.T_PWD = 372;
+HiveSqlParser.T_SESSIONS = 373;
+HiveSqlParser.T_SUBDIR = 374;
+
+HiveSqlParser.RULE_program = 0;
+HiveSqlParser.RULE_block = 1;
+HiveSqlParser.RULE_begin_end_block = 2;
+HiveSqlParser.RULE_single_block_stmt = 3;
+HiveSqlParser.RULE_block_end = 4;
+HiveSqlParser.RULE_proc_block = 5;
+HiveSqlParser.RULE_stmt = 6;
+HiveSqlParser.RULE_semicolon_stmt = 7;
+HiveSqlParser.RULE_exception_block = 8;
+HiveSqlParser.RULE_exception_block_item = 9;
+HiveSqlParser.RULE_null_stmt = 10;
+HiveSqlParser.RULE_expr_stmt = 11;
+HiveSqlParser.RULE_assignment_stmt = 12;
+HiveSqlParser.RULE_assignment_stmt_item = 13;
+HiveSqlParser.RULE_assignment_stmt_single_item = 14;
+HiveSqlParser.RULE_assignment_stmt_multiple_item = 15;
+HiveSqlParser.RULE_assignment_stmt_select_item = 16;
+HiveSqlParser.RULE_allocate_cursor_stmt = 17;
+HiveSqlParser.RULE_associate_locator_stmt = 18;
+HiveSqlParser.RULE_begin_transaction_stmt = 19;
+HiveSqlParser.RULE_break_stmt = 20;
+HiveSqlParser.RULE_call_stmt = 21;
+HiveSqlParser.RULE_declare_stmt = 22;
+HiveSqlParser.RULE_declare_block = 23;
+HiveSqlParser.RULE_declare_block_inplace = 24;
+HiveSqlParser.RULE_declare_stmt_item = 25;
+HiveSqlParser.RULE_declare_var_item = 26;
+HiveSqlParser.RULE_declare_condition_item = 27;
+HiveSqlParser.RULE_declare_cursor_item = 28;
+HiveSqlParser.RULE_cursor_with_return = 29;
+HiveSqlParser.RULE_cursor_without_return = 30;
+HiveSqlParser.RULE_declare_handler_item = 31;
+HiveSqlParser.RULE_declare_temporary_table_item = 32;
+HiveSqlParser.RULE_create_table_stmt = 33;
+HiveSqlParser.RULE_create_local_temp_table_stmt = 34;
+HiveSqlParser.RULE_create_table_definition = 35;
+HiveSqlParser.RULE_create_table_columns = 36;
+HiveSqlParser.RULE_create_table_columns_item = 37;
+HiveSqlParser.RULE_column_name = 38;
+HiveSqlParser.RULE_create_table_column_inline_cons = 39;
+HiveSqlParser.RULE_create_table_column_cons = 40;
+HiveSqlParser.RULE_create_table_fk_action = 41;
+HiveSqlParser.RULE_create_table_preoptions = 42;
+HiveSqlParser.RULE_create_table_preoptions_item = 43;
+HiveSqlParser.RULE_create_table_preoptions_td_item = 44;
+HiveSqlParser.RULE_create_table_options = 45;
+HiveSqlParser.RULE_create_table_options_item = 46;
+HiveSqlParser.RULE_create_table_options_ora_item = 47;
+HiveSqlParser.RULE_create_table_options_db2_item = 48;
+HiveSqlParser.RULE_create_table_options_td_item = 49;
+HiveSqlParser.RULE_create_table_options_hive_item = 50;
+HiveSqlParser.RULE_create_table_hive_row_format = 51;
+HiveSqlParser.RULE_create_table_hive_row_format_fields = 52;
+HiveSqlParser.RULE_create_table_options_mssql_item = 53;
+HiveSqlParser.RULE_create_table_options_mysql_item = 54;
+HiveSqlParser.RULE_alter_table_stmt = 55;
+HiveSqlParser.RULE_alter_table_item = 56;
+HiveSqlParser.RULE_alter_table_add_constraint = 57;
+HiveSqlParser.RULE_alter_table_add_constraint_item = 58;
+HiveSqlParser.RULE_dtype = 59;
+HiveSqlParser.RULE_dtype_len = 60;
+HiveSqlParser.RULE_dtype_attr = 61;
+HiveSqlParser.RULE_dtype_default = 62;
+HiveSqlParser.RULE_create_database_stmt = 63;
+HiveSqlParser.RULE_create_database_option = 64;
+HiveSqlParser.RULE_create_function_stmt = 65;
+HiveSqlParser.RULE_create_function_return = 66;
+HiveSqlParser.RULE_create_package_stmt = 67;
+HiveSqlParser.RULE_package_spec = 68;
+HiveSqlParser.RULE_package_spec_item = 69;
+HiveSqlParser.RULE_create_package_body_stmt = 70;
+HiveSqlParser.RULE_package_body = 71;
+HiveSqlParser.RULE_package_body_item = 72;
+HiveSqlParser.RULE_create_procedure_stmt = 73;
+HiveSqlParser.RULE_create_routine_params = 74;
+HiveSqlParser.RULE_create_routine_param_item = 75;
+HiveSqlParser.RULE_create_routine_options = 76;
+HiveSqlParser.RULE_create_routine_option = 77;
+HiveSqlParser.RULE_drop_stmt = 78;
+HiveSqlParser.RULE_end_transaction_stmt = 79;
+HiveSqlParser.RULE_exec_stmt = 80;
+HiveSqlParser.RULE_if_stmt = 81;
+HiveSqlParser.RULE_if_plsql_stmt = 82;
+HiveSqlParser.RULE_if_tsql_stmt = 83;
+HiveSqlParser.RULE_if_bteq_stmt = 84;
+HiveSqlParser.RULE_elseif_block = 85;
+HiveSqlParser.RULE_else_block = 86;
+HiveSqlParser.RULE_include_stmt = 87;
+HiveSqlParser.RULE_insert_stmt = 88;
+HiveSqlParser.RULE_insert_stmt_cols = 89;
+HiveSqlParser.RULE_insert_stmt_rows = 90;
+HiveSqlParser.RULE_insert_stmt_row = 91;
+HiveSqlParser.RULE_insert_directory_stmt = 92;
+HiveSqlParser.RULE_exit_stmt = 93;
+HiveSqlParser.RULE_get_diag_stmt = 94;
+HiveSqlParser.RULE_get_diag_stmt_item = 95;
+HiveSqlParser.RULE_get_diag_stmt_exception_item = 96;
+HiveSqlParser.RULE_get_diag_stmt_rowcount_item = 97;
+HiveSqlParser.RULE_grant_stmt = 98;
+HiveSqlParser.RULE_grant_stmt_item = 99;
+HiveSqlParser.RULE_leave_stmt = 100;
+HiveSqlParser.RULE_map_object_stmt = 101;
+HiveSqlParser.RULE_open_stmt = 102;
+HiveSqlParser.RULE_fetch_stmt = 103;
+HiveSqlParser.RULE_collect_stats_stmt = 104;
+HiveSqlParser.RULE_collect_stats_clause = 105;
+HiveSqlParser.RULE_close_stmt = 106;
+HiveSqlParser.RULE_cmp_stmt = 107;
+HiveSqlParser.RULE_cmp_source = 108;
+HiveSqlParser.RULE_copy_from_local_stmt = 109;
+HiveSqlParser.RULE_copy_stmt = 110;
+HiveSqlParser.RULE_copy_source = 111;
+HiveSqlParser.RULE_copy_target = 112;
+HiveSqlParser.RULE_copy_option = 113;
+HiveSqlParser.RULE_copy_file_option = 114;
+HiveSqlParser.RULE_commit_stmt = 115;
+HiveSqlParser.RULE_create_index_stmt = 116;
+HiveSqlParser.RULE_create_index_col = 117;
+HiveSqlParser.RULE_index_storage_clause = 118;
+HiveSqlParser.RULE_index_mssql_storage_clause = 119;
+HiveSqlParser.RULE_print_stmt = 120;
+HiveSqlParser.RULE_quit_stmt = 121;
+HiveSqlParser.RULE_raise_stmt = 122;
+HiveSqlParser.RULE_resignal_stmt = 123;
+HiveSqlParser.RULE_return_stmt = 124;
+HiveSqlParser.RULE_rollback_stmt = 125;
+HiveSqlParser.RULE_set_session_option = 126;
+HiveSqlParser.RULE_set_current_schema_option = 127;
+HiveSqlParser.RULE_set_mssql_session_option = 128;
+HiveSqlParser.RULE_set_teradata_session_option = 129;
+HiveSqlParser.RULE_signal_stmt = 130;
+HiveSqlParser.RULE_summary_stmt = 131;
+HiveSqlParser.RULE_truncate_stmt = 132;
+HiveSqlParser.RULE_use_stmt = 133;
+HiveSqlParser.RULE_values_into_stmt = 134;
+HiveSqlParser.RULE_while_stmt = 135;
+HiveSqlParser.RULE_for_cursor_stmt = 136;
+HiveSqlParser.RULE_for_range_stmt = 137;
+HiveSqlParser.RULE_label = 138;
+HiveSqlParser.RULE_using_clause = 139;
+HiveSqlParser.RULE_select_stmt = 140;
+HiveSqlParser.RULE_cte_select_stmt = 141;
+HiveSqlParser.RULE_cte_select_stmt_item = 142;
+HiveSqlParser.RULE_cte_select_cols = 143;
+HiveSqlParser.RULE_fullselect_stmt = 144;
+HiveSqlParser.RULE_fullselect_stmt_item = 145;
+HiveSqlParser.RULE_fullselect_set_clause = 146;
+HiveSqlParser.RULE_subselect_stmt = 147;
+HiveSqlParser.RULE_select_list = 148;
+HiveSqlParser.RULE_select_list_set = 149;
+HiveSqlParser.RULE_select_list_limit = 150;
+HiveSqlParser.RULE_select_list_item = 151;
+HiveSqlParser.RULE_select_list_alias = 152;
+HiveSqlParser.RULE_select_list_asterisk = 153;
+HiveSqlParser.RULE_into_clause = 154;
+HiveSqlParser.RULE_from_clause = 155;
+HiveSqlParser.RULE_from_table_clause = 156;
+HiveSqlParser.RULE_from_table_name_clause = 157;
+HiveSqlParser.RULE_from_subselect_clause = 158;
+HiveSqlParser.RULE_from_join_clause = 159;
+HiveSqlParser.RULE_from_join_type_clause = 160;
+HiveSqlParser.RULE_from_table_values_clause = 161;
+HiveSqlParser.RULE_from_table_values_row = 162;
+HiveSqlParser.RULE_from_alias_clause = 163;
+HiveSqlParser.RULE_table_name = 164;
+HiveSqlParser.RULE_where_clause = 165;
+HiveSqlParser.RULE_group_by_clause = 166;
+HiveSqlParser.RULE_having_clause = 167;
+HiveSqlParser.RULE_qualify_clause = 168;
+HiveSqlParser.RULE_order_by_clause = 169;
+HiveSqlParser.RULE_select_options = 170;
+HiveSqlParser.RULE_select_options_item = 171;
+HiveSqlParser.RULE_update_stmt = 172;
+HiveSqlParser.RULE_update_assignment = 173;
+HiveSqlParser.RULE_update_table = 174;
+HiveSqlParser.RULE_update_upsert = 175;
+HiveSqlParser.RULE_merge_stmt = 176;
+HiveSqlParser.RULE_merge_table = 177;
+HiveSqlParser.RULE_merge_condition = 178;
+HiveSqlParser.RULE_merge_action = 179;
+HiveSqlParser.RULE_delete_stmt = 180;
+HiveSqlParser.RULE_delete_alias = 181;
+HiveSqlParser.RULE_describe_stmt = 182;
+HiveSqlParser.RULE_bool_expr = 183;
+HiveSqlParser.RULE_bool_expr_atom = 184;
+HiveSqlParser.RULE_bool_expr_unary = 185;
+HiveSqlParser.RULE_bool_expr_single_in = 186;
+HiveSqlParser.RULE_bool_expr_multi_in = 187;
+HiveSqlParser.RULE_bool_expr_binary = 188;
+HiveSqlParser.RULE_bool_expr_logical_operator = 189;
+HiveSqlParser.RULE_bool_expr_binary_operator = 190;
+HiveSqlParser.RULE_expr = 191;
+HiveSqlParser.RULE_expr_atom = 192;
+HiveSqlParser.RULE_expr_interval = 193;
+HiveSqlParser.RULE_interval_item = 194;
+HiveSqlParser.RULE_expr_concat = 195;
+HiveSqlParser.RULE_expr_concat_item = 196;
+HiveSqlParser.RULE_expr_case = 197;
+HiveSqlParser.RULE_expr_case_simple = 198;
+HiveSqlParser.RULE_expr_case_searched = 199;
+HiveSqlParser.RULE_expr_cursor_attribute = 200;
+HiveSqlParser.RULE_expr_agg_window_func = 201;
+HiveSqlParser.RULE_expr_func_all_distinct = 202;
+HiveSqlParser.RULE_expr_func_over_clause = 203;
+HiveSqlParser.RULE_expr_func_partition_by_clause = 204;
+HiveSqlParser.RULE_expr_spec_func = 205;
+HiveSqlParser.RULE_expr_func = 206;
+HiveSqlParser.RULE_expr_func_params = 207;
+HiveSqlParser.RULE_func_param = 208;
+HiveSqlParser.RULE_expr_select = 209;
+HiveSqlParser.RULE_expr_file = 210;
+HiveSqlParser.RULE_hive = 211;
+HiveSqlParser.RULE_hive_item = 212;
+HiveSqlParser.RULE_host = 213;
+HiveSqlParser.RULE_host_cmd = 214;
+HiveSqlParser.RULE_host_stmt = 215;
+HiveSqlParser.RULE_file_name = 216;
+HiveSqlParser.RULE_date_literal = 217;
+HiveSqlParser.RULE_timestamp_literal = 218;
+HiveSqlParser.RULE_ident = 219;
+HiveSqlParser.RULE_string = 220;
+HiveSqlParser.RULE_int_number = 221;
+HiveSqlParser.RULE_dec_number = 222;
+HiveSqlParser.RULE_bool_literal = 223;
+HiveSqlParser.RULE_null_const = 224;
+HiveSqlParser.RULE_non_reserved_words = 225;
+
+
+function ProgramContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_program;
+ return this;
+}
+
+ProgramContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+ProgramContext.prototype.constructor = ProgramContext;
+
+ProgramContext.prototype.block = function() {
+ return this.getTypedRuleContext(BlockContext,0);
+};
+
+ProgramContext.prototype.EOF = function() {
+ return this.getToken(HiveSqlParser.EOF, 0);
+};
+
+ProgramContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterProgram(this);
+ }
+};
+
+ProgramContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitProgram(this);
+ }
+};
+
+ProgramContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitProgram(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.ProgramContext = ProgramContext;
+
+HiveSqlParser.prototype.program = function() {
+
+ var localctx = new ProgramContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 0, HiveSqlParser.RULE_program);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 452;
+ this.block();
+ this.state = 453;
+ this.match(HiveSqlParser.EOF);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function BlockContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_block;
+ return this;
+}
+
+BlockContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+BlockContext.prototype.constructor = BlockContext;
+
+BlockContext.prototype.begin_end_block = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Begin_end_blockContext);
+ } else {
+ return this.getTypedRuleContext(Begin_end_blockContext,i);
+ }
+};
+
+BlockContext.prototype.stmt = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(StmtContext);
+ } else {
+ return this.getTypedRuleContext(StmtContext,i);
+ }
+};
+
+BlockContext.prototype.T_GO = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_GO);
+ } else {
+ return this.getToken(HiveSqlParser.T_GO, i);
+ }
+};
+
+
+BlockContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterBlock(this);
+ }
+};
+
+BlockContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitBlock(this);
+ }
+};
+
+BlockContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitBlock(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.BlockContext = BlockContext;
+
+HiveSqlParser.prototype.block = function() {
+
+ var localctx = new BlockContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 2, HiveSqlParser.RULE_block);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 462;
+ this._errHandler.sync(this);
+ var _alt = 1;
+ do {
+ switch (_alt) {
+ case 1:
+ this.state = 457;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,0,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 455;
+ this.begin_end_block();
+ break;
+
+ case 2:
+ this.state = 456;
+ this.stmt();
+ break;
+
+ }
+ this.state = 460;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,1,this._ctx);
+ if(la_===1) {
+ this.state = 459;
+ this.match(HiveSqlParser.T_GO);
+
+ }
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 464;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,2, this._ctx);
+ } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Begin_end_blockContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_begin_end_block;
+ return this;
+}
+
+Begin_end_blockContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Begin_end_blockContext.prototype.constructor = Begin_end_blockContext;
+
+Begin_end_blockContext.prototype.T_BEGIN = function() {
+ return this.getToken(HiveSqlParser.T_BEGIN, 0);
+};
+
+Begin_end_blockContext.prototype.block = function() {
+ return this.getTypedRuleContext(BlockContext,0);
+};
+
+Begin_end_blockContext.prototype.block_end = function() {
+ return this.getTypedRuleContext(Block_endContext,0);
+};
+
+Begin_end_blockContext.prototype.declare_block = function() {
+ return this.getTypedRuleContext(Declare_blockContext,0);
+};
+
+Begin_end_blockContext.prototype.exception_block = function() {
+ return this.getTypedRuleContext(Exception_blockContext,0);
+};
+
+Begin_end_blockContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterBegin_end_block(this);
+ }
+};
+
+Begin_end_blockContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitBegin_end_block(this);
+ }
+};
+
+Begin_end_blockContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitBegin_end_block(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Begin_end_blockContext = Begin_end_blockContext;
+
+HiveSqlParser.prototype.begin_end_block = function() {
+
+ var localctx = new Begin_end_blockContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 4, HiveSqlParser.RULE_begin_end_block);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 467;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_DECLARE) {
+ this.state = 466;
+ this.declare_block();
+ }
+
+ this.state = 469;
+ this.match(HiveSqlParser.T_BEGIN);
+ this.state = 470;
+ this.block();
+ this.state = 472;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,4,this._ctx);
+ if(la_===1) {
+ this.state = 471;
+ this.exception_block();
+
+ }
+ this.state = 474;
+ this.block_end();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Single_block_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_single_block_stmt;
+ return this;
+}
+
+Single_block_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Single_block_stmtContext.prototype.constructor = Single_block_stmtContext;
+
+Single_block_stmtContext.prototype.T_BEGIN = function() {
+ return this.getToken(HiveSqlParser.T_BEGIN, 0);
+};
+
+Single_block_stmtContext.prototype.block = function() {
+ return this.getTypedRuleContext(BlockContext,0);
+};
+
+Single_block_stmtContext.prototype.block_end = function() {
+ return this.getTypedRuleContext(Block_endContext,0);
+};
+
+Single_block_stmtContext.prototype.exception_block = function() {
+ return this.getTypedRuleContext(Exception_blockContext,0);
+};
+
+Single_block_stmtContext.prototype.stmt = function() {
+ return this.getTypedRuleContext(StmtContext,0);
+};
+
+Single_block_stmtContext.prototype.T_SEMICOLON = function() {
+ return this.getToken(HiveSqlParser.T_SEMICOLON, 0);
+};
+
+Single_block_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterSingle_block_stmt(this);
+ }
+};
+
+Single_block_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitSingle_block_stmt(this);
+ }
+};
+
+Single_block_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitSingle_block_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Single_block_stmtContext = Single_block_stmtContext;
+
+HiveSqlParser.prototype.single_block_stmt = function() {
+
+ var localctx = new Single_block_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 6, HiveSqlParser.RULE_single_block_stmt);
+ try {
+ this.state = 487;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,7,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 476;
+ this.match(HiveSqlParser.T_BEGIN);
+ this.state = 477;
+ this.block();
+ this.state = 479;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,5,this._ctx);
+ if(la_===1) {
+ this.state = 478;
+ this.exception_block();
+
+ }
+ this.state = 481;
+ this.block_end();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 483;
+ this.stmt();
+ this.state = 485;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,6,this._ctx);
+ if(la_===1) {
+ this.state = 484;
+ this.match(HiveSqlParser.T_SEMICOLON);
+
+ }
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Block_endContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_block_end;
+ return this;
+}
+
+Block_endContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Block_endContext.prototype.constructor = Block_endContext;
+
+Block_endContext.prototype.T_END = function() {
+ return this.getToken(HiveSqlParser.T_END, 0);
+};
+
+Block_endContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterBlock_end(this);
+ }
+};
+
+Block_endContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitBlock_end(this);
+ }
+};
+
+Block_endContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitBlock_end(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Block_endContext = Block_endContext;
+
+HiveSqlParser.prototype.block_end = function() {
+
+ var localctx = new Block_endContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 8, HiveSqlParser.RULE_block_end);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 489;
+ if (!( !this._input.LT(2).getText().equalsIgnoreCase("TRANSACTION"))) {
+ throw new antlr4.error.FailedPredicateException(this, "!this._input.LT(2).getText().equalsIgnoreCase(\"TRANSACTION\")");
+ }
+ this.state = 490;
+ this.match(HiveSqlParser.T_END);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Proc_blockContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_proc_block;
+ return this;
+}
+
+Proc_blockContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Proc_blockContext.prototype.constructor = Proc_blockContext;
+
+Proc_blockContext.prototype.begin_end_block = function() {
+ return this.getTypedRuleContext(Begin_end_blockContext,0);
+};
+
+Proc_blockContext.prototype.stmt = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(StmtContext);
+ } else {
+ return this.getTypedRuleContext(StmtContext,i);
+ }
+};
+
+Proc_blockContext.prototype.T_GO = function() {
+ return this.getToken(HiveSqlParser.T_GO, 0);
+};
+
+Proc_blockContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterProc_block(this);
+ }
+};
+
+Proc_blockContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitProc_block(this);
+ }
+};
+
+Proc_blockContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitProc_block(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Proc_blockContext = Proc_blockContext;
+
+HiveSqlParser.prototype.proc_block = function() {
+
+ var localctx = new Proc_blockContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 10, HiveSqlParser.RULE_proc_block);
+ try {
+ this.state = 501;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,10,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 492;
+ this.begin_end_block();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 494;
+ this._errHandler.sync(this);
+ var _alt = 1;
+ do {
+ switch (_alt) {
+ case 1:
+ this.state = 493;
+ this.stmt();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 496;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,8, this._ctx);
+ } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
+ this.state = 499;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,9,this._ctx);
+ if(la_===1) {
+ this.state = 498;
+ this.match(HiveSqlParser.T_GO);
+
+ }
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function StmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_stmt;
+ return this;
+}
+
+StmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+StmtContext.prototype.constructor = StmtContext;
+
+StmtContext.prototype.assignment_stmt = function() {
+ return this.getTypedRuleContext(Assignment_stmtContext,0);
+};
+
+StmtContext.prototype.allocate_cursor_stmt = function() {
+ return this.getTypedRuleContext(Allocate_cursor_stmtContext,0);
+};
+
+StmtContext.prototype.alter_table_stmt = function() {
+ return this.getTypedRuleContext(Alter_table_stmtContext,0);
+};
+
+StmtContext.prototype.associate_locator_stmt = function() {
+ return this.getTypedRuleContext(Associate_locator_stmtContext,0);
+};
+
+StmtContext.prototype.begin_transaction_stmt = function() {
+ return this.getTypedRuleContext(Begin_transaction_stmtContext,0);
+};
+
+StmtContext.prototype.break_stmt = function() {
+ return this.getTypedRuleContext(Break_stmtContext,0);
+};
+
+StmtContext.prototype.call_stmt = function() {
+ return this.getTypedRuleContext(Call_stmtContext,0);
+};
+
+StmtContext.prototype.collect_stats_stmt = function() {
+ return this.getTypedRuleContext(Collect_stats_stmtContext,0);
+};
+
+StmtContext.prototype.close_stmt = function() {
+ return this.getTypedRuleContext(Close_stmtContext,0);
+};
+
+StmtContext.prototype.cmp_stmt = function() {
+ return this.getTypedRuleContext(Cmp_stmtContext,0);
+};
+
+StmtContext.prototype.copy_from_local_stmt = function() {
+ return this.getTypedRuleContext(Copy_from_local_stmtContext,0);
+};
+
+StmtContext.prototype.copy_stmt = function() {
+ return this.getTypedRuleContext(Copy_stmtContext,0);
+};
+
+StmtContext.prototype.commit_stmt = function() {
+ return this.getTypedRuleContext(Commit_stmtContext,0);
+};
+
+StmtContext.prototype.create_database_stmt = function() {
+ return this.getTypedRuleContext(Create_database_stmtContext,0);
+};
+
+StmtContext.prototype.create_function_stmt = function() {
+ return this.getTypedRuleContext(Create_function_stmtContext,0);
+};
+
+StmtContext.prototype.create_index_stmt = function() {
+ return this.getTypedRuleContext(Create_index_stmtContext,0);
+};
+
+StmtContext.prototype.create_local_temp_table_stmt = function() {
+ return this.getTypedRuleContext(Create_local_temp_table_stmtContext,0);
+};
+
+StmtContext.prototype.create_package_stmt = function() {
+ return this.getTypedRuleContext(Create_package_stmtContext,0);
+};
+
+StmtContext.prototype.create_package_body_stmt = function() {
+ return this.getTypedRuleContext(Create_package_body_stmtContext,0);
+};
+
+StmtContext.prototype.create_procedure_stmt = function() {
+ return this.getTypedRuleContext(Create_procedure_stmtContext,0);
+};
+
+StmtContext.prototype.create_table_stmt = function() {
+ return this.getTypedRuleContext(Create_table_stmtContext,0);
+};
+
+StmtContext.prototype.declare_stmt = function() {
+ return this.getTypedRuleContext(Declare_stmtContext,0);
+};
+
+StmtContext.prototype.delete_stmt = function() {
+ return this.getTypedRuleContext(Delete_stmtContext,0);
+};
+
+StmtContext.prototype.describe_stmt = function() {
+ return this.getTypedRuleContext(Describe_stmtContext,0);
+};
+
+StmtContext.prototype.drop_stmt = function() {
+ return this.getTypedRuleContext(Drop_stmtContext,0);
+};
+
+StmtContext.prototype.end_transaction_stmt = function() {
+ return this.getTypedRuleContext(End_transaction_stmtContext,0);
+};
+
+StmtContext.prototype.exec_stmt = function() {
+ return this.getTypedRuleContext(Exec_stmtContext,0);
+};
+
+StmtContext.prototype.exit_stmt = function() {
+ return this.getTypedRuleContext(Exit_stmtContext,0);
+};
+
+StmtContext.prototype.fetch_stmt = function() {
+ return this.getTypedRuleContext(Fetch_stmtContext,0);
+};
+
+StmtContext.prototype.for_cursor_stmt = function() {
+ return this.getTypedRuleContext(For_cursor_stmtContext,0);
+};
+
+StmtContext.prototype.for_range_stmt = function() {
+ return this.getTypedRuleContext(For_range_stmtContext,0);
+};
+
+StmtContext.prototype.if_stmt = function() {
+ return this.getTypedRuleContext(If_stmtContext,0);
+};
+
+StmtContext.prototype.include_stmt = function() {
+ return this.getTypedRuleContext(Include_stmtContext,0);
+};
+
+StmtContext.prototype.insert_stmt = function() {
+ return this.getTypedRuleContext(Insert_stmtContext,0);
+};
+
+StmtContext.prototype.insert_directory_stmt = function() {
+ return this.getTypedRuleContext(Insert_directory_stmtContext,0);
+};
+
+StmtContext.prototype.get_diag_stmt = function() {
+ return this.getTypedRuleContext(Get_diag_stmtContext,0);
+};
+
+StmtContext.prototype.grant_stmt = function() {
+ return this.getTypedRuleContext(Grant_stmtContext,0);
+};
+
+StmtContext.prototype.leave_stmt = function() {
+ return this.getTypedRuleContext(Leave_stmtContext,0);
+};
+
+StmtContext.prototype.map_object_stmt = function() {
+ return this.getTypedRuleContext(Map_object_stmtContext,0);
+};
+
+StmtContext.prototype.merge_stmt = function() {
+ return this.getTypedRuleContext(Merge_stmtContext,0);
+};
+
+StmtContext.prototype.open_stmt = function() {
+ return this.getTypedRuleContext(Open_stmtContext,0);
+};
+
+StmtContext.prototype.print_stmt = function() {
+ return this.getTypedRuleContext(Print_stmtContext,0);
+};
+
+StmtContext.prototype.quit_stmt = function() {
+ return this.getTypedRuleContext(Quit_stmtContext,0);
+};
+
+StmtContext.prototype.raise_stmt = function() {
+ return this.getTypedRuleContext(Raise_stmtContext,0);
+};
+
+StmtContext.prototype.resignal_stmt = function() {
+ return this.getTypedRuleContext(Resignal_stmtContext,0);
+};
+
+StmtContext.prototype.return_stmt = function() {
+ return this.getTypedRuleContext(Return_stmtContext,0);
+};
+
+StmtContext.prototype.rollback_stmt = function() {
+ return this.getTypedRuleContext(Rollback_stmtContext,0);
+};
+
+StmtContext.prototype.select_stmt = function() {
+ return this.getTypedRuleContext(Select_stmtContext,0);
+};
+
+StmtContext.prototype.signal_stmt = function() {
+ return this.getTypedRuleContext(Signal_stmtContext,0);
+};
+
+StmtContext.prototype.summary_stmt = function() {
+ return this.getTypedRuleContext(Summary_stmtContext,0);
+};
+
+StmtContext.prototype.update_stmt = function() {
+ return this.getTypedRuleContext(Update_stmtContext,0);
+};
+
+StmtContext.prototype.use_stmt = function() {
+ return this.getTypedRuleContext(Use_stmtContext,0);
+};
+
+StmtContext.prototype.truncate_stmt = function() {
+ return this.getTypedRuleContext(Truncate_stmtContext,0);
+};
+
+StmtContext.prototype.values_into_stmt = function() {
+ return this.getTypedRuleContext(Values_into_stmtContext,0);
+};
+
+StmtContext.prototype.while_stmt = function() {
+ return this.getTypedRuleContext(While_stmtContext,0);
+};
+
+StmtContext.prototype.label = function() {
+ return this.getTypedRuleContext(LabelContext,0);
+};
+
+StmtContext.prototype.hive = function() {
+ return this.getTypedRuleContext(HiveContext,0);
+};
+
+StmtContext.prototype.host = function() {
+ return this.getTypedRuleContext(HostContext,0);
+};
+
+StmtContext.prototype.null_stmt = function() {
+ return this.getTypedRuleContext(Null_stmtContext,0);
+};
+
+StmtContext.prototype.expr_stmt = function() {
+ return this.getTypedRuleContext(Expr_stmtContext,0);
+};
+
+StmtContext.prototype.semicolon_stmt = function() {
+ return this.getTypedRuleContext(Semicolon_stmtContext,0);
+};
+
+StmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterStmt(this);
+ }
+};
+
+StmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitStmt(this);
+ }
+};
+
+StmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitStmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.StmtContext = StmtContext;
+
+HiveSqlParser.prototype.stmt = function() {
+
+ var localctx = new StmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 12, HiveSqlParser.RULE_stmt);
+ try {
+ this.state = 564;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,11,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 503;
+ this.assignment_stmt();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 504;
+ this.allocate_cursor_stmt();
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 505;
+ this.alter_table_stmt();
+ break;
+
+ case 4:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 506;
+ this.associate_locator_stmt();
+ break;
+
+ case 5:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 507;
+ this.begin_transaction_stmt();
+ break;
+
+ case 6:
+ this.enterOuterAlt(localctx, 6);
+ this.state = 508;
+ this.break_stmt();
+ break;
+
+ case 7:
+ this.enterOuterAlt(localctx, 7);
+ this.state = 509;
+ this.call_stmt();
+ break;
+
+ case 8:
+ this.enterOuterAlt(localctx, 8);
+ this.state = 510;
+ this.collect_stats_stmt();
+ break;
+
+ case 9:
+ this.enterOuterAlt(localctx, 9);
+ this.state = 511;
+ this.close_stmt();
+ break;
+
+ case 10:
+ this.enterOuterAlt(localctx, 10);
+ this.state = 512;
+ this.cmp_stmt();
+ break;
+
+ case 11:
+ this.enterOuterAlt(localctx, 11);
+ this.state = 513;
+ this.copy_from_local_stmt();
+ break;
+
+ case 12:
+ this.enterOuterAlt(localctx, 12);
+ this.state = 514;
+ this.copy_stmt();
+ break;
+
+ case 13:
+ this.enterOuterAlt(localctx, 13);
+ this.state = 515;
+ this.commit_stmt();
+ break;
+
+ case 14:
+ this.enterOuterAlt(localctx, 14);
+ this.state = 516;
+ this.create_database_stmt();
+ break;
+
+ case 15:
+ this.enterOuterAlt(localctx, 15);
+ this.state = 517;
+ this.create_function_stmt();
+ break;
+
+ case 16:
+ this.enterOuterAlt(localctx, 16);
+ this.state = 518;
+ this.create_index_stmt();
+ break;
+
+ case 17:
+ this.enterOuterAlt(localctx, 17);
+ this.state = 519;
+ this.create_local_temp_table_stmt();
+ break;
+
+ case 18:
+ this.enterOuterAlt(localctx, 18);
+ this.state = 520;
+ this.create_package_stmt();
+ break;
+
+ case 19:
+ this.enterOuterAlt(localctx, 19);
+ this.state = 521;
+ this.create_package_body_stmt();
+ break;
+
+ case 20:
+ this.enterOuterAlt(localctx, 20);
+ this.state = 522;
+ this.create_procedure_stmt();
+ break;
+
+ case 21:
+ this.enterOuterAlt(localctx, 21);
+ this.state = 523;
+ this.create_table_stmt();
+ break;
+
+ case 22:
+ this.enterOuterAlt(localctx, 22);
+ this.state = 524;
+ this.declare_stmt();
+ break;
+
+ case 23:
+ this.enterOuterAlt(localctx, 23);
+ this.state = 525;
+ this.delete_stmt();
+ break;
+
+ case 24:
+ this.enterOuterAlt(localctx, 24);
+ this.state = 526;
+ this.describe_stmt();
+ break;
+
+ case 25:
+ this.enterOuterAlt(localctx, 25);
+ this.state = 527;
+ this.drop_stmt();
+ break;
+
+ case 26:
+ this.enterOuterAlt(localctx, 26);
+ this.state = 528;
+ this.end_transaction_stmt();
+ break;
+
+ case 27:
+ this.enterOuterAlt(localctx, 27);
+ this.state = 529;
+ this.exec_stmt();
+ break;
+
+ case 28:
+ this.enterOuterAlt(localctx, 28);
+ this.state = 530;
+ this.exit_stmt();
+ break;
+
+ case 29:
+ this.enterOuterAlt(localctx, 29);
+ this.state = 531;
+ this.fetch_stmt();
+ break;
+
+ case 30:
+ this.enterOuterAlt(localctx, 30);
+ this.state = 532;
+ this.for_cursor_stmt();
+ break;
+
+ case 31:
+ this.enterOuterAlt(localctx, 31);
+ this.state = 533;
+ this.for_range_stmt();
+ break;
+
+ case 32:
+ this.enterOuterAlt(localctx, 32);
+ this.state = 534;
+ this.if_stmt();
+ break;
+
+ case 33:
+ this.enterOuterAlt(localctx, 33);
+ this.state = 535;
+ this.include_stmt();
+ break;
+
+ case 34:
+ this.enterOuterAlt(localctx, 34);
+ this.state = 536;
+ this.insert_stmt();
+ break;
+
+ case 35:
+ this.enterOuterAlt(localctx, 35);
+ this.state = 537;
+ this.insert_directory_stmt();
+ break;
+
+ case 36:
+ this.enterOuterAlt(localctx, 36);
+ this.state = 538;
+ this.get_diag_stmt();
+ break;
+
+ case 37:
+ this.enterOuterAlt(localctx, 37);
+ this.state = 539;
+ this.grant_stmt();
+ break;
+
+ case 38:
+ this.enterOuterAlt(localctx, 38);
+ this.state = 540;
+ this.leave_stmt();
+ break;
+
+ case 39:
+ this.enterOuterAlt(localctx, 39);
+ this.state = 541;
+ this.map_object_stmt();
+ break;
+
+ case 40:
+ this.enterOuterAlt(localctx, 40);
+ this.state = 542;
+ this.merge_stmt();
+ break;
+
+ case 41:
+ this.enterOuterAlt(localctx, 41);
+ this.state = 543;
+ this.open_stmt();
+ break;
+
+ case 42:
+ this.enterOuterAlt(localctx, 42);
+ this.state = 544;
+ this.print_stmt();
+ break;
+
+ case 43:
+ this.enterOuterAlt(localctx, 43);
+ this.state = 545;
+ this.quit_stmt();
+ break;
+
+ case 44:
+ this.enterOuterAlt(localctx, 44);
+ this.state = 546;
+ this.raise_stmt();
+ break;
+
+ case 45:
+ this.enterOuterAlt(localctx, 45);
+ this.state = 547;
+ this.resignal_stmt();
+ break;
+
+ case 46:
+ this.enterOuterAlt(localctx, 46);
+ this.state = 548;
+ this.return_stmt();
+ break;
+
+ case 47:
+ this.enterOuterAlt(localctx, 47);
+ this.state = 549;
+ this.rollback_stmt();
+ break;
+
+ case 48:
+ this.enterOuterAlt(localctx, 48);
+ this.state = 550;
+ this.select_stmt();
+ break;
+
+ case 49:
+ this.enterOuterAlt(localctx, 49);
+ this.state = 551;
+ this.signal_stmt();
+ break;
+
+ case 50:
+ this.enterOuterAlt(localctx, 50);
+ this.state = 552;
+ this.summary_stmt();
+ break;
+
+ case 51:
+ this.enterOuterAlt(localctx, 51);
+ this.state = 553;
+ this.update_stmt();
+ break;
+
+ case 52:
+ this.enterOuterAlt(localctx, 52);
+ this.state = 554;
+ this.use_stmt();
+ break;
+
+ case 53:
+ this.enterOuterAlt(localctx, 53);
+ this.state = 555;
+ this.truncate_stmt();
+ break;
+
+ case 54:
+ this.enterOuterAlt(localctx, 54);
+ this.state = 556;
+ this.values_into_stmt();
+ break;
+
+ case 55:
+ this.enterOuterAlt(localctx, 55);
+ this.state = 557;
+ this.while_stmt();
+ break;
+
+ case 56:
+ this.enterOuterAlt(localctx, 56);
+ this.state = 558;
+ this.label();
+ break;
+
+ case 57:
+ this.enterOuterAlt(localctx, 57);
+ this.state = 559;
+ this.hive();
+ break;
+
+ case 58:
+ this.enterOuterAlt(localctx, 58);
+ this.state = 560;
+ this.host();
+ break;
+
+ case 59:
+ this.enterOuterAlt(localctx, 59);
+ this.state = 561;
+ this.null_stmt();
+ break;
+
+ case 60:
+ this.enterOuterAlt(localctx, 60);
+ this.state = 562;
+ this.expr_stmt();
+ break;
+
+ case 61:
+ this.enterOuterAlt(localctx, 61);
+ this.state = 563;
+ this.semicolon_stmt();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Semicolon_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_semicolon_stmt;
+ return this;
+}
+
+Semicolon_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Semicolon_stmtContext.prototype.constructor = Semicolon_stmtContext;
+
+Semicolon_stmtContext.prototype.T_SEMICOLON = function() {
+ return this.getToken(HiveSqlParser.T_SEMICOLON, 0);
+};
+
+Semicolon_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterSemicolon_stmt(this);
+ }
+};
+
+Semicolon_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitSemicolon_stmt(this);
+ }
+};
+
+Semicolon_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitSemicolon_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Semicolon_stmtContext = Semicolon_stmtContext;
+
+HiveSqlParser.prototype.semicolon_stmt = function() {
+
+ var localctx = new Semicolon_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 14, HiveSqlParser.RULE_semicolon_stmt);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 566;
+ _la = this._input.LA(1);
+ if(!((((_la) & ~0x1f) == 0 && ((1 << _la) & ((1 << HiveSqlParser.T__0) | (1 << HiveSqlParser.T__1) | (1 << HiveSqlParser.T__2) | (1 << HiveSqlParser.T_SEMICOLON))) !== 0))) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Exception_blockContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_exception_block;
+ return this;
+}
+
+Exception_blockContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Exception_blockContext.prototype.constructor = Exception_blockContext;
+
+Exception_blockContext.prototype.T_EXCEPTION = function() {
+ return this.getToken(HiveSqlParser.T_EXCEPTION, 0);
+};
+
+Exception_blockContext.prototype.exception_block_item = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Exception_block_itemContext);
+ } else {
+ return this.getTypedRuleContext(Exception_block_itemContext,i);
+ }
+};
+
+Exception_blockContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterException_block(this);
+ }
+};
+
+Exception_blockContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitException_block(this);
+ }
+};
+
+Exception_blockContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitException_block(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Exception_blockContext = Exception_blockContext;
+
+HiveSqlParser.prototype.exception_block = function() {
+
+ var localctx = new Exception_blockContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 16, HiveSqlParser.RULE_exception_block);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 568;
+ this.match(HiveSqlParser.T_EXCEPTION);
+ this.state = 570;
+ this._errHandler.sync(this);
+ var _alt = 1;
+ do {
+ switch (_alt) {
+ case 1:
+ this.state = 569;
+ this.exception_block_item();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 572;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,12, this._ctx);
+ } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Exception_block_itemContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_exception_block_item;
+ return this;
+}
+
+Exception_block_itemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Exception_block_itemContext.prototype.constructor = Exception_block_itemContext;
+
+Exception_block_itemContext.prototype.T_WHEN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_WHEN);
+ } else {
+ return this.getToken(HiveSqlParser.T_WHEN, i);
+ }
+};
+
+
+Exception_block_itemContext.prototype.L_ID = function() {
+ return this.getToken(HiveSqlParser.L_ID, 0);
+};
+
+Exception_block_itemContext.prototype.T_THEN = function() {
+ return this.getToken(HiveSqlParser.T_THEN, 0);
+};
+
+Exception_block_itemContext.prototype.block = function() {
+ return this.getTypedRuleContext(BlockContext,0);
+};
+
+Exception_block_itemContext.prototype.T_END = function() {
+ return this.getToken(HiveSqlParser.T_END, 0);
+};
+
+Exception_block_itemContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterException_block_item(this);
+ }
+};
+
+Exception_block_itemContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitException_block_item(this);
+ }
+};
+
+Exception_block_itemContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitException_block_item(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Exception_block_itemContext = Exception_block_itemContext;
+
+HiveSqlParser.prototype.exception_block_item = function() {
+
+ var localctx = new Exception_block_itemContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 18, HiveSqlParser.RULE_exception_block_item);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 574;
+ this.match(HiveSqlParser.T_WHEN);
+ this.state = 575;
+ this.match(HiveSqlParser.L_ID);
+ this.state = 576;
+ this.match(HiveSqlParser.T_THEN);
+ this.state = 577;
+ this.block();
+ this.state = 578;
+ _la = this._input.LA(1);
+ if(_la<=0 || _la===HiveSqlParser.T_END || _la===HiveSqlParser.T_WHEN) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Null_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_null_stmt;
+ return this;
+}
+
+Null_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Null_stmtContext.prototype.constructor = Null_stmtContext;
+
+Null_stmtContext.prototype.T_NULL = function() {
+ return this.getToken(HiveSqlParser.T_NULL, 0);
+};
+
+Null_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterNull_stmt(this);
+ }
+};
+
+Null_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitNull_stmt(this);
+ }
+};
+
+Null_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitNull_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Null_stmtContext = Null_stmtContext;
+
+HiveSqlParser.prototype.null_stmt = function() {
+
+ var localctx = new Null_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 20, HiveSqlParser.RULE_null_stmt);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 580;
+ this.match(HiveSqlParser.T_NULL);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Expr_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_expr_stmt;
+ return this;
+}
+
+Expr_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Expr_stmtContext.prototype.constructor = Expr_stmtContext;
+
+Expr_stmtContext.prototype.expr = function() {
+ return this.getTypedRuleContext(ExprContext,0);
+};
+
+Expr_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterExpr_stmt(this);
+ }
+};
+
+Expr_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitExpr_stmt(this);
+ }
+};
+
+Expr_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitExpr_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Expr_stmtContext = Expr_stmtContext;
+
+HiveSqlParser.prototype.expr_stmt = function() {
+
+ var localctx = new Expr_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 22, HiveSqlParser.RULE_expr_stmt);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 582;
+ if (!( !this._input.LT(1).getText().equalsIgnoreCase("GO"))) {
+ throw new antlr4.error.FailedPredicateException(this, "!this._input.LT(1).getText().equalsIgnoreCase(\"GO\")");
+ }
+ this.state = 583;
+ this.expr(0);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Assignment_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_assignment_stmt;
+ return this;
+}
+
+Assignment_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Assignment_stmtContext.prototype.constructor = Assignment_stmtContext;
+
+Assignment_stmtContext.prototype.T_SET = function() {
+ return this.getToken(HiveSqlParser.T_SET, 0);
+};
+
+Assignment_stmtContext.prototype.set_session_option = function() {
+ return this.getTypedRuleContext(Set_session_optionContext,0);
+};
+
+Assignment_stmtContext.prototype.assignment_stmt_item = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Assignment_stmt_itemContext);
+ } else {
+ return this.getTypedRuleContext(Assignment_stmt_itemContext,i);
+ }
+};
+
+Assignment_stmtContext.prototype.T_COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_COMMA);
+ } else {
+ return this.getToken(HiveSqlParser.T_COMMA, i);
+ }
+};
+
+
+Assignment_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterAssignment_stmt(this);
+ }
+};
+
+Assignment_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitAssignment_stmt(this);
+ }
+};
+
+Assignment_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitAssignment_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Assignment_stmtContext = Assignment_stmtContext;
+
+HiveSqlParser.prototype.assignment_stmt = function() {
+
+ var localctx = new Assignment_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 24, HiveSqlParser.RULE_assignment_stmt);
+ try {
+ this.state = 598;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,15,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 585;
+ this.match(HiveSqlParser.T_SET);
+ this.state = 586;
+ this.set_session_option();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 588;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,13,this._ctx);
+ if(la_===1) {
+ this.state = 587;
+ this.match(HiveSqlParser.T_SET);
+
+ }
+ this.state = 590;
+ this.assignment_stmt_item();
+ this.state = 595;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,14,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 591;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 592;
+ this.assignment_stmt_item();
+ }
+ this.state = 597;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,14,this._ctx);
+ }
+
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Assignment_stmt_itemContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_assignment_stmt_item;
+ return this;
+}
+
+Assignment_stmt_itemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Assignment_stmt_itemContext.prototype.constructor = Assignment_stmt_itemContext;
+
+Assignment_stmt_itemContext.prototype.assignment_stmt_single_item = function() {
+ return this.getTypedRuleContext(Assignment_stmt_single_itemContext,0);
+};
+
+Assignment_stmt_itemContext.prototype.assignment_stmt_multiple_item = function() {
+ return this.getTypedRuleContext(Assignment_stmt_multiple_itemContext,0);
+};
+
+Assignment_stmt_itemContext.prototype.assignment_stmt_select_item = function() {
+ return this.getTypedRuleContext(Assignment_stmt_select_itemContext,0);
+};
+
+Assignment_stmt_itemContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterAssignment_stmt_item(this);
+ }
+};
+
+Assignment_stmt_itemContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitAssignment_stmt_item(this);
+ }
+};
+
+Assignment_stmt_itemContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitAssignment_stmt_item(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Assignment_stmt_itemContext = Assignment_stmt_itemContext;
+
+HiveSqlParser.prototype.assignment_stmt_item = function() {
+
+ var localctx = new Assignment_stmt_itemContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 26, HiveSqlParser.RULE_assignment_stmt_item);
+ try {
+ this.state = 603;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,16,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 600;
+ this.assignment_stmt_single_item();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 601;
+ this.assignment_stmt_multiple_item();
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 602;
+ this.assignment_stmt_select_item();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Assignment_stmt_single_itemContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_assignment_stmt_single_item;
+ return this;
+}
+
+Assignment_stmt_single_itemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Assignment_stmt_single_itemContext.prototype.constructor = Assignment_stmt_single_itemContext;
+
+Assignment_stmt_single_itemContext.prototype.ident = function() {
+ return this.getTypedRuleContext(IdentContext,0);
+};
+
+Assignment_stmt_single_itemContext.prototype.T_EQUAL = function() {
+ return this.getToken(HiveSqlParser.T_EQUAL, 0);
+};
+
+Assignment_stmt_single_itemContext.prototype.expr = function() {
+ return this.getTypedRuleContext(ExprContext,0);
+};
+
+Assignment_stmt_single_itemContext.prototype.T_COLON = function() {
+ return this.getToken(HiveSqlParser.T_COLON, 0);
+};
+
+Assignment_stmt_single_itemContext.prototype.T_OPEN_P = function() {
+ return this.getToken(HiveSqlParser.T_OPEN_P, 0);
+};
+
+Assignment_stmt_single_itemContext.prototype.T_CLOSE_P = function() {
+ return this.getToken(HiveSqlParser.T_CLOSE_P, 0);
+};
+
+Assignment_stmt_single_itemContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterAssignment_stmt_single_item(this);
+ }
+};
+
+Assignment_stmt_single_itemContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitAssignment_stmt_single_item(this);
+ }
+};
+
+Assignment_stmt_single_itemContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitAssignment_stmt_single_item(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Assignment_stmt_single_itemContext = Assignment_stmt_single_itemContext;
+
+HiveSqlParser.prototype.assignment_stmt_single_item = function() {
+
+ var localctx = new Assignment_stmt_single_itemContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 28, HiveSqlParser.RULE_assignment_stmt_single_item);
+ var _la = 0; // Token type
+ try {
+ this.state = 621;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case HiveSqlParser.T__8:
+ case HiveSqlParser.T_GO:
+ case HiveSqlParser.T_BEGIN:
+ case HiveSqlParser.T_EXCEPTION:
+ case HiveSqlParser.L_ID:
+ case HiveSqlParser.T_THEN:
+ case HiveSqlParser.T_SET:
+ case HiveSqlParser.T_ALLOCATE:
+ case HiveSqlParser.T_CURSOR:
+ case HiveSqlParser.T_FOR:
+ case HiveSqlParser.T_RESULT:
+ case HiveSqlParser.T_PROCEDURE:
+ case HiveSqlParser.T_ASSOCIATE:
+ case HiveSqlParser.T_LOCATOR:
+ case HiveSqlParser.T_LOCATORS:
+ case HiveSqlParser.T_WITH:
+ case HiveSqlParser.T_TRANSACTION:
+ case HiveSqlParser.T_BREAK:
+ case HiveSqlParser.T_CALL:
+ case HiveSqlParser.T_DECLARE:
+ case HiveSqlParser.T_AS:
+ case HiveSqlParser.T_CONSTANT:
+ case HiveSqlParser.T_CONDITION:
+ case HiveSqlParser.T_IS:
+ case HiveSqlParser.T_RETURN:
+ case HiveSqlParser.T_ONLY:
+ case HiveSqlParser.T_TO:
+ case HiveSqlParser.T_CALLER:
+ case HiveSqlParser.T_CLIENT:
+ case HiveSqlParser.T_WITHOUT:
+ case HiveSqlParser.T_CONTINUE:
+ case HiveSqlParser.T_EXIT:
+ case HiveSqlParser.T_HANDLER:
+ case HiveSqlParser.T_SQLEXCEPTION:
+ case HiveSqlParser.T_SQLWARNING:
+ case HiveSqlParser.T_NOT:
+ case HiveSqlParser.T_FOUND:
+ case HiveSqlParser.T_GLOBAL:
+ case HiveSqlParser.T_TEMPORARY:
+ case HiveSqlParser.T_TABLE:
+ case HiveSqlParser.T_CREATE:
+ case HiveSqlParser.T_IF:
+ case HiveSqlParser.T_EXISTS:
+ case HiveSqlParser.T_LOCAL:
+ case HiveSqlParser.T_MULTISET:
+ case HiveSqlParser.T_VOLATILE:
+ case HiveSqlParser.T_LIKE:
+ case HiveSqlParser.T_CONSTRAINT:
+ case HiveSqlParser.T_PRIMARY:
+ case HiveSqlParser.T_KEY:
+ case HiveSqlParser.T_UNIQUE:
+ case HiveSqlParser.T_REFERENCES:
+ case HiveSqlParser.T_IDENTITY:
+ case HiveSqlParser.T_AUTO_INCREMENT:
+ case HiveSqlParser.T_ENABLE:
+ case HiveSqlParser.T_CLUSTERED:
+ case HiveSqlParser.T_ASC:
+ case HiveSqlParser.T_DESC:
+ case HiveSqlParser.T_FOREIGN:
+ case HiveSqlParser.T_ON:
+ case HiveSqlParser.T_UPDATE:
+ case HiveSqlParser.T_DELETE:
+ case HiveSqlParser.T_NO:
+ case HiveSqlParser.T_ACTION:
+ case HiveSqlParser.T_RESTRICT:
+ case HiveSqlParser.T_DEFAULT:
+ case HiveSqlParser.T_CASCADE:
+ case HiveSqlParser.T_LOG:
+ case HiveSqlParser.T_FALLBACK:
+ case HiveSqlParser.T_COMMIT:
+ case HiveSqlParser.T_PRESERVE:
+ case HiveSqlParser.T_ROWS:
+ case HiveSqlParser.T_SEGMENT:
+ case HiveSqlParser.T_CREATION:
+ case HiveSqlParser.T_IMMEDIATE:
+ case HiveSqlParser.T_DEFERRED:
+ case HiveSqlParser.T_PCTFREE:
+ case HiveSqlParser.T_PCTUSED:
+ case HiveSqlParser.T_INITRANS:
+ case HiveSqlParser.T_MAXTRANS:
+ case HiveSqlParser.T_NOCOMPRESS:
+ case HiveSqlParser.T_LOGGING:
+ case HiveSqlParser.T_NOLOGGING:
+ case HiveSqlParser.T_STORAGE:
+ case HiveSqlParser.T_TABLESPACE:
+ case HiveSqlParser.T_INDEX:
+ case HiveSqlParser.T_IN:
+ case HiveSqlParser.T_REPLACE:
+ case HiveSqlParser.T_DISTRIBUTE:
+ case HiveSqlParser.T_BY:
+ case HiveSqlParser.T_HASH:
+ case HiveSqlParser.T_LOGGED:
+ case HiveSqlParser.T_COMPRESS:
+ case HiveSqlParser.T_YES:
+ case HiveSqlParser.T_DEFINITION:
+ case HiveSqlParser.T_DROP:
+ case HiveSqlParser.T_DATA:
+ case HiveSqlParser.T_STORED:
+ case HiveSqlParser.T_ROW:
+ case HiveSqlParser.T_FORMAT:
+ case HiveSqlParser.T_DELIMITED:
+ case HiveSqlParser.T_FIELDS:
+ case HiveSqlParser.T_TERMINATED:
+ case HiveSqlParser.T_ESCAPED:
+ case HiveSqlParser.T_COLLECTION:
+ case HiveSqlParser.T_ITEMS:
+ case HiveSqlParser.T_MAP:
+ case HiveSqlParser.T_KEYS:
+ case HiveSqlParser.T_LINES:
+ case HiveSqlParser.T_DEFINED:
+ case HiveSqlParser.T_TEXTIMAGE_ON:
+ case HiveSqlParser.T_COMMENT:
+ case HiveSqlParser.T_CHARACTER:
+ case HiveSqlParser.T_CHARSET:
+ case HiveSqlParser.T_ENGINE:
+ case HiveSqlParser.T_ALTER:
+ case HiveSqlParser.T_ADD2:
+ case HiveSqlParser.T_CHAR:
+ case HiveSqlParser.T_BIGINT:
+ case HiveSqlParser.T_BINARY_DOUBLE:
+ case HiveSqlParser.T_BINARY_FLOAT:
+ case HiveSqlParser.T_BIT:
+ case HiveSqlParser.T_DATE:
+ case HiveSqlParser.T_DATETIME:
+ case HiveSqlParser.T_DEC:
+ case HiveSqlParser.T_DECIMAL:
+ case HiveSqlParser.T_DOUBLE:
+ case HiveSqlParser.T_PRECISION:
+ case HiveSqlParser.T_FLOAT:
+ case HiveSqlParser.T_INT:
+ case HiveSqlParser.T_INT2:
+ case HiveSqlParser.T_INT4:
+ case HiveSqlParser.T_INT8:
+ case HiveSqlParser.T_INTEGER:
+ case HiveSqlParser.T_NCHAR:
+ case HiveSqlParser.T_NVARCHAR:
+ case HiveSqlParser.T_NUMBER:
+ case HiveSqlParser.T_NUMERIC:
+ case HiveSqlParser.T_REAL:
+ case HiveSqlParser.T_RESULT_SET_LOCATOR:
+ case HiveSqlParser.T_VARYING:
+ case HiveSqlParser.T_SIMPLE_FLOAT:
+ case HiveSqlParser.T_SIMPLE_DOUBLE:
+ case HiveSqlParser.T_SMALLINT:
+ case HiveSqlParser.T_SMALLDATETIME:
+ case HiveSqlParser.T_STRING:
+ case HiveSqlParser.T_SYS_REFCURSOR:
+ case HiveSqlParser.T_TIMESTAMP:
+ case HiveSqlParser.T_VARCHAR:
+ case HiveSqlParser.T_VARCHAR2:
+ case HiveSqlParser.T_XML:
+ case HiveSqlParser.T_MAX:
+ case HiveSqlParser.T_BYTE:
+ case HiveSqlParser.T_CASESPECIFIC:
+ case HiveSqlParser.T_CS:
+ case HiveSqlParser.T_DATABASE:
+ case HiveSqlParser.T_SCHEMA:
+ case HiveSqlParser.T_LOCATION:
+ case HiveSqlParser.T_OR:
+ case HiveSqlParser.T_FUNCTION:
+ case HiveSqlParser.T_RETURNS:
+ case HiveSqlParser.T_PACKAGE:
+ case HiveSqlParser.T_PROC:
+ case HiveSqlParser.T_BODY:
+ case HiveSqlParser.T_OUT:
+ case HiveSqlParser.T_INOUT:
+ case HiveSqlParser.T_LANGUAGE:
+ case HiveSqlParser.T_SQL:
+ case HiveSqlParser.T_SECURITY:
+ case HiveSqlParser.T_CREATOR:
+ case HiveSqlParser.T_DEFINER:
+ case HiveSqlParser.T_INVOKER:
+ case HiveSqlParser.T_OWNER:
+ case HiveSqlParser.T_DYNAMIC:
+ case HiveSqlParser.T_SETS:
+ case HiveSqlParser.T_EXEC:
+ case HiveSqlParser.T_EXECUTE:
+ case HiveSqlParser.T_INTO:
+ case HiveSqlParser.T_INCLUDE:
+ case HiveSqlParser.T_INSERT:
+ case HiveSqlParser.T_OVERWRITE:
+ case HiveSqlParser.T_VALUES:
+ case HiveSqlParser.T_DIRECTORY:
+ case HiveSqlParser.T_GET:
+ case HiveSqlParser.T_DIAGNOSTICS:
+ case HiveSqlParser.T_MESSAGE_TEXT:
+ case HiveSqlParser.T_ROW_COUNT:
+ case HiveSqlParser.T_GRANT:
+ case HiveSqlParser.T_ROLE:
+ case HiveSqlParser.T_LEAVE:
+ case HiveSqlParser.T_OBJECT:
+ case HiveSqlParser.T_AT:
+ case HiveSqlParser.T_OPEN:
+ case HiveSqlParser.T_FETCH:
+ case HiveSqlParser.T_FROM:
+ case HiveSqlParser.T_COLLECT:
+ case HiveSqlParser.T_STATISTICS:
+ case HiveSqlParser.T_STATS:
+ case HiveSqlParser.T_COLUMN:
+ case HiveSqlParser.T_CLOSE:
+ case HiveSqlParser.T_CMP:
+ case HiveSqlParser.T_SUM:
+ case HiveSqlParser.T_COPY:
+ case HiveSqlParser.T_HDFS:
+ case HiveSqlParser.T_BATCHSIZE:
+ case HiveSqlParser.T_DELIMITER:
+ case HiveSqlParser.T_SQLINSERT:
+ case HiveSqlParser.T_IGNORE:
+ case HiveSqlParser.T_WORK:
+ case HiveSqlParser.T_PRINT:
+ case HiveSqlParser.T_QUIT:
+ case HiveSqlParser.T_RAISE:
+ case HiveSqlParser.T_RESIGNAL:
+ case HiveSqlParser.T_SQLSTATE:
+ case HiveSqlParser.T_VALUE:
+ case HiveSqlParser.T_ROLLBACK:
+ case HiveSqlParser.T_CURRENT:
+ case HiveSqlParser.T_CURRENT_SCHEMA:
+ case HiveSqlParser.T_ANSI_NULLS:
+ case HiveSqlParser.T_ANSI_PADDING:
+ case HiveSqlParser.T_NOCOUNT:
+ case HiveSqlParser.T_QUOTED_IDENTIFIER:
+ case HiveSqlParser.T_XACT_ABORT:
+ case HiveSqlParser.T_OFF:
+ case HiveSqlParser.T_QUERY_BAND:
+ case HiveSqlParser.T_NONE:
+ case HiveSqlParser.T_SESSION:
+ case HiveSqlParser.T_SIGNAL:
+ case HiveSqlParser.T_SUMMARY:
+ case HiveSqlParser.T_TOP:
+ case HiveSqlParser.T_LIMIT:
+ case HiveSqlParser.T_TRUNCATE:
+ case HiveSqlParser.T_USE:
+ case HiveSqlParser.T_WHILE:
+ case HiveSqlParser.T_DO:
+ case HiveSqlParser.T_LOOP:
+ case HiveSqlParser.T_REVERSE:
+ case HiveSqlParser.T_STEP:
+ case HiveSqlParser.T_USING:
+ case HiveSqlParser.T_ALL:
+ case HiveSqlParser.T_EXCEPT:
+ case HiveSqlParser.T_INTERSECT:
+ case HiveSqlParser.T_SELECT:
+ case HiveSqlParser.T_SEL:
+ case HiveSqlParser.T_DISTINCT:
+ case HiveSqlParser.T_TITLE:
+ case HiveSqlParser.T_INNER:
+ case HiveSqlParser.T_JOIN:
+ case HiveSqlParser.T_LEFT:
+ case HiveSqlParser.T_RIGHT:
+ case HiveSqlParser.T_FULL:
+ case HiveSqlParser.T_OUTER:
+ case HiveSqlParser.T_GROUP:
+ case HiveSqlParser.T_HAVING:
+ case HiveSqlParser.T_QUALIFY:
+ case HiveSqlParser.T_ORDER:
+ case HiveSqlParser.T_RR:
+ case HiveSqlParser.T_RS:
+ case HiveSqlParser.T_UR:
+ case HiveSqlParser.T_AND:
+ case HiveSqlParser.T_KEEP:
+ case HiveSqlParser.T_EXCLUSIVE:
+ case HiveSqlParser.T_SHARE:
+ case HiveSqlParser.T_LOCKS:
+ case HiveSqlParser.T_MERGE:
+ case HiveSqlParser.T_MATCHED:
+ case HiveSqlParser.T_DESCRIBE:
+ case HiveSqlParser.T_BETWEEN:
+ case HiveSqlParser.T_RLIKE:
+ case HiveSqlParser.T_REGEXP:
+ case HiveSqlParser.T_INTERVAL:
+ case HiveSqlParser.T_DAY:
+ case HiveSqlParser.T_DAYS:
+ case HiveSqlParser.T_MICROSECOND:
+ case HiveSqlParser.T_MICROSECONDS:
+ case HiveSqlParser.T_SECOND:
+ case HiveSqlParser.T_SECONDS:
+ case HiveSqlParser.T_CONCAT:
+ case HiveSqlParser.T_CASE:
+ case HiveSqlParser.T_ISOPEN:
+ case HiveSqlParser.T_NOTFOUND:
+ case HiveSqlParser.T_AVG:
+ case HiveSqlParser.T_COUNT:
+ case HiveSqlParser.T_COUNT_BIG:
+ case HiveSqlParser.T_CUME_DIST:
+ case HiveSqlParser.T_DENSE_RANK:
+ case HiveSqlParser.T_FIRST_VALUE:
+ case HiveSqlParser.T_LAG:
+ case HiveSqlParser.T_LAST_VALUE:
+ case HiveSqlParser.T_LEAD:
+ case HiveSqlParser.T_MIN:
+ case HiveSqlParser.T_RANK:
+ case HiveSqlParser.T_ROW_NUMBER:
+ case HiveSqlParser.T_STDEV:
+ case HiveSqlParser.T_VAR:
+ case HiveSqlParser.T_VARIANCE:
+ case HiveSqlParser.T_OVER:
+ case HiveSqlParser.T_PARTITION:
+ case HiveSqlParser.T_ACTIVITY_COUNT:
+ case HiveSqlParser.T_CAST:
+ case HiveSqlParser.T_CURRENT_DATE:
+ case HiveSqlParser.T_CURRENT_TIMESTAMP:
+ case HiveSqlParser.T_CURRENT_USER:
+ case HiveSqlParser.T_USER:
+ case HiveSqlParser.T_PART_COUNT:
+ case HiveSqlParser.T_PART_LOC:
+ case HiveSqlParser.T_TRIM:
+ case HiveSqlParser.T_SUBSTRING:
+ case HiveSqlParser.T_SYSDATE:
+ case HiveSqlParser.T_HIVE:
+ case HiveSqlParser.T_HOST:
+ case HiveSqlParser.T_TRUE:
+ case HiveSqlParser.T_FALSE:
+ case HiveSqlParser.T_DIR:
+ case HiveSqlParser.T_FILE:
+ case HiveSqlParser.T_FILES:
+ case HiveSqlParser.T_NEW:
+ case HiveSqlParser.T_PWD:
+ case HiveSqlParser.T_SESSIONS:
+ case HiveSqlParser.T_SUBDIR:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 605;
+ this.ident();
+ this.state = 607;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_COLON) {
+ this.state = 606;
+ this.match(HiveSqlParser.T_COLON);
+ }
+
+ this.state = 609;
+ this.match(HiveSqlParser.T_EQUAL);
+ this.state = 610;
+ this.expr(0);
+ break;
+ case HiveSqlParser.T_OPEN_P:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 612;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 613;
+ this.ident();
+ this.state = 614;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ this.state = 616;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_COLON) {
+ this.state = 615;
+ this.match(HiveSqlParser.T_COLON);
+ }
+
+ this.state = 618;
+ this.match(HiveSqlParser.T_EQUAL);
+ this.state = 619;
+ this.expr(0);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Assignment_stmt_multiple_itemContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_assignment_stmt_multiple_item;
+ return this;
+}
+
+Assignment_stmt_multiple_itemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Assignment_stmt_multiple_itemContext.prototype.constructor = Assignment_stmt_multiple_itemContext;
+
+Assignment_stmt_multiple_itemContext.prototype.T_OPEN_P = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_OPEN_P);
+ } else {
+ return this.getToken(HiveSqlParser.T_OPEN_P, i);
+ }
+};
+
+
+Assignment_stmt_multiple_itemContext.prototype.ident = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(IdentContext);
+ } else {
+ return this.getTypedRuleContext(IdentContext,i);
+ }
+};
+
+Assignment_stmt_multiple_itemContext.prototype.T_CLOSE_P = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_CLOSE_P);
+ } else {
+ return this.getToken(HiveSqlParser.T_CLOSE_P, i);
+ }
+};
+
+
+Assignment_stmt_multiple_itemContext.prototype.T_EQUAL = function() {
+ return this.getToken(HiveSqlParser.T_EQUAL, 0);
+};
+
+Assignment_stmt_multiple_itemContext.prototype.expr = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ExprContext);
+ } else {
+ return this.getTypedRuleContext(ExprContext,i);
+ }
+};
+
+Assignment_stmt_multiple_itemContext.prototype.T_COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_COMMA);
+ } else {
+ return this.getToken(HiveSqlParser.T_COMMA, i);
+ }
+};
+
+
+Assignment_stmt_multiple_itemContext.prototype.T_COLON = function() {
+ return this.getToken(HiveSqlParser.T_COLON, 0);
+};
+
+Assignment_stmt_multiple_itemContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterAssignment_stmt_multiple_item(this);
+ }
+};
+
+Assignment_stmt_multiple_itemContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitAssignment_stmt_multiple_item(this);
+ }
+};
+
+Assignment_stmt_multiple_itemContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitAssignment_stmt_multiple_item(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Assignment_stmt_multiple_itemContext = Assignment_stmt_multiple_itemContext;
+
+HiveSqlParser.prototype.assignment_stmt_multiple_item = function() {
+
+ var localctx = new Assignment_stmt_multiple_itemContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 30, HiveSqlParser.RULE_assignment_stmt_multiple_item);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 623;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 624;
+ this.ident();
+ this.state = 629;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===HiveSqlParser.T_COMMA) {
+ this.state = 625;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 626;
+ this.ident();
+ this.state = 631;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 632;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ this.state = 634;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_COLON) {
+ this.state = 633;
+ this.match(HiveSqlParser.T_COLON);
+ }
+
+ this.state = 636;
+ this.match(HiveSqlParser.T_EQUAL);
+ this.state = 637;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 638;
+ this.expr(0);
+ this.state = 643;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===HiveSqlParser.T_COMMA) {
+ this.state = 639;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 640;
+ this.expr(0);
+ this.state = 645;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 646;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Assignment_stmt_select_itemContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_assignment_stmt_select_item;
+ return this;
+}
+
+Assignment_stmt_select_itemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Assignment_stmt_select_itemContext.prototype.constructor = Assignment_stmt_select_itemContext;
+
+Assignment_stmt_select_itemContext.prototype.T_EQUAL = function() {
+ return this.getToken(HiveSqlParser.T_EQUAL, 0);
+};
+
+Assignment_stmt_select_itemContext.prototype.T_OPEN_P = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_OPEN_P);
+ } else {
+ return this.getToken(HiveSqlParser.T_OPEN_P, i);
+ }
+};
+
+
+Assignment_stmt_select_itemContext.prototype.select_stmt = function() {
+ return this.getTypedRuleContext(Select_stmtContext,0);
+};
+
+Assignment_stmt_select_itemContext.prototype.T_CLOSE_P = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_CLOSE_P);
+ } else {
+ return this.getToken(HiveSqlParser.T_CLOSE_P, i);
+ }
+};
+
+
+Assignment_stmt_select_itemContext.prototype.ident = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(IdentContext);
+ } else {
+ return this.getTypedRuleContext(IdentContext,i);
+ }
+};
+
+Assignment_stmt_select_itemContext.prototype.T_COLON = function() {
+ return this.getToken(HiveSqlParser.T_COLON, 0);
+};
+
+Assignment_stmt_select_itemContext.prototype.T_COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_COMMA);
+ } else {
+ return this.getToken(HiveSqlParser.T_COMMA, i);
+ }
+};
+
+
+Assignment_stmt_select_itemContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterAssignment_stmt_select_item(this);
+ }
+};
+
+Assignment_stmt_select_itemContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitAssignment_stmt_select_item(this);
+ }
+};
+
+Assignment_stmt_select_itemContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitAssignment_stmt_select_item(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Assignment_stmt_select_itemContext = Assignment_stmt_select_itemContext;
+
+HiveSqlParser.prototype.assignment_stmt_select_item = function() {
+
+ var localctx = new Assignment_stmt_select_itemContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 32, HiveSqlParser.RULE_assignment_stmt_select_item);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 660;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case HiveSqlParser.T__8:
+ case HiveSqlParser.T_GO:
+ case HiveSqlParser.T_BEGIN:
+ case HiveSqlParser.T_EXCEPTION:
+ case HiveSqlParser.L_ID:
+ case HiveSqlParser.T_THEN:
+ case HiveSqlParser.T_SET:
+ case HiveSqlParser.T_ALLOCATE:
+ case HiveSqlParser.T_CURSOR:
+ case HiveSqlParser.T_FOR:
+ case HiveSqlParser.T_RESULT:
+ case HiveSqlParser.T_PROCEDURE:
+ case HiveSqlParser.T_ASSOCIATE:
+ case HiveSqlParser.T_LOCATOR:
+ case HiveSqlParser.T_LOCATORS:
+ case HiveSqlParser.T_WITH:
+ case HiveSqlParser.T_TRANSACTION:
+ case HiveSqlParser.T_BREAK:
+ case HiveSqlParser.T_CALL:
+ case HiveSqlParser.T_DECLARE:
+ case HiveSqlParser.T_AS:
+ case HiveSqlParser.T_CONSTANT:
+ case HiveSqlParser.T_CONDITION:
+ case HiveSqlParser.T_IS:
+ case HiveSqlParser.T_RETURN:
+ case HiveSqlParser.T_ONLY:
+ case HiveSqlParser.T_TO:
+ case HiveSqlParser.T_CALLER:
+ case HiveSqlParser.T_CLIENT:
+ case HiveSqlParser.T_WITHOUT:
+ case HiveSqlParser.T_CONTINUE:
+ case HiveSqlParser.T_EXIT:
+ case HiveSqlParser.T_HANDLER:
+ case HiveSqlParser.T_SQLEXCEPTION:
+ case HiveSqlParser.T_SQLWARNING:
+ case HiveSqlParser.T_NOT:
+ case HiveSqlParser.T_FOUND:
+ case HiveSqlParser.T_GLOBAL:
+ case HiveSqlParser.T_TEMPORARY:
+ case HiveSqlParser.T_TABLE:
+ case HiveSqlParser.T_CREATE:
+ case HiveSqlParser.T_IF:
+ case HiveSqlParser.T_EXISTS:
+ case HiveSqlParser.T_LOCAL:
+ case HiveSqlParser.T_MULTISET:
+ case HiveSqlParser.T_VOLATILE:
+ case HiveSqlParser.T_LIKE:
+ case HiveSqlParser.T_CONSTRAINT:
+ case HiveSqlParser.T_PRIMARY:
+ case HiveSqlParser.T_KEY:
+ case HiveSqlParser.T_UNIQUE:
+ case HiveSqlParser.T_REFERENCES:
+ case HiveSqlParser.T_IDENTITY:
+ case HiveSqlParser.T_AUTO_INCREMENT:
+ case HiveSqlParser.T_ENABLE:
+ case HiveSqlParser.T_CLUSTERED:
+ case HiveSqlParser.T_ASC:
+ case HiveSqlParser.T_DESC:
+ case HiveSqlParser.T_FOREIGN:
+ case HiveSqlParser.T_ON:
+ case HiveSqlParser.T_UPDATE:
+ case HiveSqlParser.T_DELETE:
+ case HiveSqlParser.T_NO:
+ case HiveSqlParser.T_ACTION:
+ case HiveSqlParser.T_RESTRICT:
+ case HiveSqlParser.T_DEFAULT:
+ case HiveSqlParser.T_CASCADE:
+ case HiveSqlParser.T_LOG:
+ case HiveSqlParser.T_FALLBACK:
+ case HiveSqlParser.T_COMMIT:
+ case HiveSqlParser.T_PRESERVE:
+ case HiveSqlParser.T_ROWS:
+ case HiveSqlParser.T_SEGMENT:
+ case HiveSqlParser.T_CREATION:
+ case HiveSqlParser.T_IMMEDIATE:
+ case HiveSqlParser.T_DEFERRED:
+ case HiveSqlParser.T_PCTFREE:
+ case HiveSqlParser.T_PCTUSED:
+ case HiveSqlParser.T_INITRANS:
+ case HiveSqlParser.T_MAXTRANS:
+ case HiveSqlParser.T_NOCOMPRESS:
+ case HiveSqlParser.T_LOGGING:
+ case HiveSqlParser.T_NOLOGGING:
+ case HiveSqlParser.T_STORAGE:
+ case HiveSqlParser.T_TABLESPACE:
+ case HiveSqlParser.T_INDEX:
+ case HiveSqlParser.T_IN:
+ case HiveSqlParser.T_REPLACE:
+ case HiveSqlParser.T_DISTRIBUTE:
+ case HiveSqlParser.T_BY:
+ case HiveSqlParser.T_HASH:
+ case HiveSqlParser.T_LOGGED:
+ case HiveSqlParser.T_COMPRESS:
+ case HiveSqlParser.T_YES:
+ case HiveSqlParser.T_DEFINITION:
+ case HiveSqlParser.T_DROP:
+ case HiveSqlParser.T_DATA:
+ case HiveSqlParser.T_STORED:
+ case HiveSqlParser.T_ROW:
+ case HiveSqlParser.T_FORMAT:
+ case HiveSqlParser.T_DELIMITED:
+ case HiveSqlParser.T_FIELDS:
+ case HiveSqlParser.T_TERMINATED:
+ case HiveSqlParser.T_ESCAPED:
+ case HiveSqlParser.T_COLLECTION:
+ case HiveSqlParser.T_ITEMS:
+ case HiveSqlParser.T_MAP:
+ case HiveSqlParser.T_KEYS:
+ case HiveSqlParser.T_LINES:
+ case HiveSqlParser.T_DEFINED:
+ case HiveSqlParser.T_TEXTIMAGE_ON:
+ case HiveSqlParser.T_COMMENT:
+ case HiveSqlParser.T_CHARACTER:
+ case HiveSqlParser.T_CHARSET:
+ case HiveSqlParser.T_ENGINE:
+ case HiveSqlParser.T_ALTER:
+ case HiveSqlParser.T_ADD2:
+ case HiveSqlParser.T_CHAR:
+ case HiveSqlParser.T_BIGINT:
+ case HiveSqlParser.T_BINARY_DOUBLE:
+ case HiveSqlParser.T_BINARY_FLOAT:
+ case HiveSqlParser.T_BIT:
+ case HiveSqlParser.T_DATE:
+ case HiveSqlParser.T_DATETIME:
+ case HiveSqlParser.T_DEC:
+ case HiveSqlParser.T_DECIMAL:
+ case HiveSqlParser.T_DOUBLE:
+ case HiveSqlParser.T_PRECISION:
+ case HiveSqlParser.T_FLOAT:
+ case HiveSqlParser.T_INT:
+ case HiveSqlParser.T_INT2:
+ case HiveSqlParser.T_INT4:
+ case HiveSqlParser.T_INT8:
+ case HiveSqlParser.T_INTEGER:
+ case HiveSqlParser.T_NCHAR:
+ case HiveSqlParser.T_NVARCHAR:
+ case HiveSqlParser.T_NUMBER:
+ case HiveSqlParser.T_NUMERIC:
+ case HiveSqlParser.T_REAL:
+ case HiveSqlParser.T_RESULT_SET_LOCATOR:
+ case HiveSqlParser.T_VARYING:
+ case HiveSqlParser.T_SIMPLE_FLOAT:
+ case HiveSqlParser.T_SIMPLE_DOUBLE:
+ case HiveSqlParser.T_SMALLINT:
+ case HiveSqlParser.T_SMALLDATETIME:
+ case HiveSqlParser.T_STRING:
+ case HiveSqlParser.T_SYS_REFCURSOR:
+ case HiveSqlParser.T_TIMESTAMP:
+ case HiveSqlParser.T_VARCHAR:
+ case HiveSqlParser.T_VARCHAR2:
+ case HiveSqlParser.T_XML:
+ case HiveSqlParser.T_MAX:
+ case HiveSqlParser.T_BYTE:
+ case HiveSqlParser.T_CASESPECIFIC:
+ case HiveSqlParser.T_CS:
+ case HiveSqlParser.T_DATABASE:
+ case HiveSqlParser.T_SCHEMA:
+ case HiveSqlParser.T_LOCATION:
+ case HiveSqlParser.T_OR:
+ case HiveSqlParser.T_FUNCTION:
+ case HiveSqlParser.T_RETURNS:
+ case HiveSqlParser.T_PACKAGE:
+ case HiveSqlParser.T_PROC:
+ case HiveSqlParser.T_BODY:
+ case HiveSqlParser.T_OUT:
+ case HiveSqlParser.T_INOUT:
+ case HiveSqlParser.T_LANGUAGE:
+ case HiveSqlParser.T_SQL:
+ case HiveSqlParser.T_SECURITY:
+ case HiveSqlParser.T_CREATOR:
+ case HiveSqlParser.T_DEFINER:
+ case HiveSqlParser.T_INVOKER:
+ case HiveSqlParser.T_OWNER:
+ case HiveSqlParser.T_DYNAMIC:
+ case HiveSqlParser.T_SETS:
+ case HiveSqlParser.T_EXEC:
+ case HiveSqlParser.T_EXECUTE:
+ case HiveSqlParser.T_INTO:
+ case HiveSqlParser.T_INCLUDE:
+ case HiveSqlParser.T_INSERT:
+ case HiveSqlParser.T_OVERWRITE:
+ case HiveSqlParser.T_VALUES:
+ case HiveSqlParser.T_DIRECTORY:
+ case HiveSqlParser.T_GET:
+ case HiveSqlParser.T_DIAGNOSTICS:
+ case HiveSqlParser.T_MESSAGE_TEXT:
+ case HiveSqlParser.T_ROW_COUNT:
+ case HiveSqlParser.T_GRANT:
+ case HiveSqlParser.T_ROLE:
+ case HiveSqlParser.T_LEAVE:
+ case HiveSqlParser.T_OBJECT:
+ case HiveSqlParser.T_AT:
+ case HiveSqlParser.T_OPEN:
+ case HiveSqlParser.T_FETCH:
+ case HiveSqlParser.T_FROM:
+ case HiveSqlParser.T_COLLECT:
+ case HiveSqlParser.T_STATISTICS:
+ case HiveSqlParser.T_STATS:
+ case HiveSqlParser.T_COLUMN:
+ case HiveSqlParser.T_CLOSE:
+ case HiveSqlParser.T_CMP:
+ case HiveSqlParser.T_SUM:
+ case HiveSqlParser.T_COPY:
+ case HiveSqlParser.T_HDFS:
+ case HiveSqlParser.T_BATCHSIZE:
+ case HiveSqlParser.T_DELIMITER:
+ case HiveSqlParser.T_SQLINSERT:
+ case HiveSqlParser.T_IGNORE:
+ case HiveSqlParser.T_WORK:
+ case HiveSqlParser.T_PRINT:
+ case HiveSqlParser.T_QUIT:
+ case HiveSqlParser.T_RAISE:
+ case HiveSqlParser.T_RESIGNAL:
+ case HiveSqlParser.T_SQLSTATE:
+ case HiveSqlParser.T_VALUE:
+ case HiveSqlParser.T_ROLLBACK:
+ case HiveSqlParser.T_CURRENT:
+ case HiveSqlParser.T_CURRENT_SCHEMA:
+ case HiveSqlParser.T_ANSI_NULLS:
+ case HiveSqlParser.T_ANSI_PADDING:
+ case HiveSqlParser.T_NOCOUNT:
+ case HiveSqlParser.T_QUOTED_IDENTIFIER:
+ case HiveSqlParser.T_XACT_ABORT:
+ case HiveSqlParser.T_OFF:
+ case HiveSqlParser.T_QUERY_BAND:
+ case HiveSqlParser.T_NONE:
+ case HiveSqlParser.T_SESSION:
+ case HiveSqlParser.T_SIGNAL:
+ case HiveSqlParser.T_SUMMARY:
+ case HiveSqlParser.T_TOP:
+ case HiveSqlParser.T_LIMIT:
+ case HiveSqlParser.T_TRUNCATE:
+ case HiveSqlParser.T_USE:
+ case HiveSqlParser.T_WHILE:
+ case HiveSqlParser.T_DO:
+ case HiveSqlParser.T_LOOP:
+ case HiveSqlParser.T_REVERSE:
+ case HiveSqlParser.T_STEP:
+ case HiveSqlParser.T_USING:
+ case HiveSqlParser.T_ALL:
+ case HiveSqlParser.T_EXCEPT:
+ case HiveSqlParser.T_INTERSECT:
+ case HiveSqlParser.T_SELECT:
+ case HiveSqlParser.T_SEL:
+ case HiveSqlParser.T_DISTINCT:
+ case HiveSqlParser.T_TITLE:
+ case HiveSqlParser.T_INNER:
+ case HiveSqlParser.T_JOIN:
+ case HiveSqlParser.T_LEFT:
+ case HiveSqlParser.T_RIGHT:
+ case HiveSqlParser.T_FULL:
+ case HiveSqlParser.T_OUTER:
+ case HiveSqlParser.T_GROUP:
+ case HiveSqlParser.T_HAVING:
+ case HiveSqlParser.T_QUALIFY:
+ case HiveSqlParser.T_ORDER:
+ case HiveSqlParser.T_RR:
+ case HiveSqlParser.T_RS:
+ case HiveSqlParser.T_UR:
+ case HiveSqlParser.T_AND:
+ case HiveSqlParser.T_KEEP:
+ case HiveSqlParser.T_EXCLUSIVE:
+ case HiveSqlParser.T_SHARE:
+ case HiveSqlParser.T_LOCKS:
+ case HiveSqlParser.T_MERGE:
+ case HiveSqlParser.T_MATCHED:
+ case HiveSqlParser.T_DESCRIBE:
+ case HiveSqlParser.T_BETWEEN:
+ case HiveSqlParser.T_RLIKE:
+ case HiveSqlParser.T_REGEXP:
+ case HiveSqlParser.T_INTERVAL:
+ case HiveSqlParser.T_DAY:
+ case HiveSqlParser.T_DAYS:
+ case HiveSqlParser.T_MICROSECOND:
+ case HiveSqlParser.T_MICROSECONDS:
+ case HiveSqlParser.T_SECOND:
+ case HiveSqlParser.T_SECONDS:
+ case HiveSqlParser.T_CONCAT:
+ case HiveSqlParser.T_CASE:
+ case HiveSqlParser.T_ISOPEN:
+ case HiveSqlParser.T_NOTFOUND:
+ case HiveSqlParser.T_AVG:
+ case HiveSqlParser.T_COUNT:
+ case HiveSqlParser.T_COUNT_BIG:
+ case HiveSqlParser.T_CUME_DIST:
+ case HiveSqlParser.T_DENSE_RANK:
+ case HiveSqlParser.T_FIRST_VALUE:
+ case HiveSqlParser.T_LAG:
+ case HiveSqlParser.T_LAST_VALUE:
+ case HiveSqlParser.T_LEAD:
+ case HiveSqlParser.T_MIN:
+ case HiveSqlParser.T_RANK:
+ case HiveSqlParser.T_ROW_NUMBER:
+ case HiveSqlParser.T_STDEV:
+ case HiveSqlParser.T_VAR:
+ case HiveSqlParser.T_VARIANCE:
+ case HiveSqlParser.T_OVER:
+ case HiveSqlParser.T_PARTITION:
+ case HiveSqlParser.T_ACTIVITY_COUNT:
+ case HiveSqlParser.T_CAST:
+ case HiveSqlParser.T_CURRENT_DATE:
+ case HiveSqlParser.T_CURRENT_TIMESTAMP:
+ case HiveSqlParser.T_CURRENT_USER:
+ case HiveSqlParser.T_USER:
+ case HiveSqlParser.T_PART_COUNT:
+ case HiveSqlParser.T_PART_LOC:
+ case HiveSqlParser.T_TRIM:
+ case HiveSqlParser.T_SUBSTRING:
+ case HiveSqlParser.T_SYSDATE:
+ case HiveSqlParser.T_HIVE:
+ case HiveSqlParser.T_HOST:
+ case HiveSqlParser.T_TRUE:
+ case HiveSqlParser.T_FALSE:
+ case HiveSqlParser.T_DIR:
+ case HiveSqlParser.T_FILE:
+ case HiveSqlParser.T_FILES:
+ case HiveSqlParser.T_NEW:
+ case HiveSqlParser.T_PWD:
+ case HiveSqlParser.T_SESSIONS:
+ case HiveSqlParser.T_SUBDIR:
+ this.state = 648;
+ this.ident();
+ break;
+ case HiveSqlParser.T_OPEN_P:
+ this.state = 649;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 650;
+ this.ident();
+ this.state = 655;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===HiveSqlParser.T_COMMA) {
+ this.state = 651;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 652;
+ this.ident();
+ this.state = 657;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 658;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 663;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_COLON) {
+ this.state = 662;
+ this.match(HiveSqlParser.T_COLON);
+ }
+
+ this.state = 665;
+ this.match(HiveSqlParser.T_EQUAL);
+ this.state = 666;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 667;
+ this.select_stmt();
+ this.state = 668;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Allocate_cursor_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_allocate_cursor_stmt;
+ return this;
+}
+
+Allocate_cursor_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Allocate_cursor_stmtContext.prototype.constructor = Allocate_cursor_stmtContext;
+
+Allocate_cursor_stmtContext.prototype.T_ALLOCATE = function() {
+ return this.getToken(HiveSqlParser.T_ALLOCATE, 0);
+};
+
+Allocate_cursor_stmtContext.prototype.ident = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(IdentContext);
+ } else {
+ return this.getTypedRuleContext(IdentContext,i);
+ }
+};
+
+Allocate_cursor_stmtContext.prototype.T_CURSOR = function() {
+ return this.getToken(HiveSqlParser.T_CURSOR, 0);
+};
+
+Allocate_cursor_stmtContext.prototype.T_FOR = function() {
+ return this.getToken(HiveSqlParser.T_FOR, 0);
+};
+
+Allocate_cursor_stmtContext.prototype.T_PROCEDURE = function() {
+ return this.getToken(HiveSqlParser.T_PROCEDURE, 0);
+};
+
+Allocate_cursor_stmtContext.prototype.T_RESULT = function() {
+ return this.getToken(HiveSqlParser.T_RESULT, 0);
+};
+
+Allocate_cursor_stmtContext.prototype.T_SET = function() {
+ return this.getToken(HiveSqlParser.T_SET, 0);
+};
+
+Allocate_cursor_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterAllocate_cursor_stmt(this);
+ }
+};
+
+Allocate_cursor_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitAllocate_cursor_stmt(this);
+ }
+};
+
+Allocate_cursor_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitAllocate_cursor_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Allocate_cursor_stmtContext = Allocate_cursor_stmtContext;
+
+HiveSqlParser.prototype.allocate_cursor_stmt = function() {
+
+ var localctx = new Allocate_cursor_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 34, HiveSqlParser.RULE_allocate_cursor_stmt);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 670;
+ this.match(HiveSqlParser.T_ALLOCATE);
+ this.state = 671;
+ this.ident();
+ this.state = 672;
+ this.match(HiveSqlParser.T_CURSOR);
+ this.state = 673;
+ this.match(HiveSqlParser.T_FOR);
+ this.state = 677;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case HiveSqlParser.T_RESULT:
+ this.state = 674;
+ this.match(HiveSqlParser.T_RESULT);
+ this.state = 675;
+ this.match(HiveSqlParser.T_SET);
+ break;
+ case HiveSqlParser.T_PROCEDURE:
+ this.state = 676;
+ this.match(HiveSqlParser.T_PROCEDURE);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 679;
+ this.ident();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Associate_locator_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_associate_locator_stmt;
+ return this;
+}
+
+Associate_locator_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Associate_locator_stmtContext.prototype.constructor = Associate_locator_stmtContext;
+
+Associate_locator_stmtContext.prototype.T_ASSOCIATE = function() {
+ return this.getToken(HiveSqlParser.T_ASSOCIATE, 0);
+};
+
+Associate_locator_stmtContext.prototype.T_OPEN_P = function() {
+ return this.getToken(HiveSqlParser.T_OPEN_P, 0);
+};
+
+Associate_locator_stmtContext.prototype.ident = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(IdentContext);
+ } else {
+ return this.getTypedRuleContext(IdentContext,i);
+ }
+};
+
+Associate_locator_stmtContext.prototype.T_CLOSE_P = function() {
+ return this.getToken(HiveSqlParser.T_CLOSE_P, 0);
+};
+
+Associate_locator_stmtContext.prototype.T_WITH = function() {
+ return this.getToken(HiveSqlParser.T_WITH, 0);
+};
+
+Associate_locator_stmtContext.prototype.T_PROCEDURE = function() {
+ return this.getToken(HiveSqlParser.T_PROCEDURE, 0);
+};
+
+Associate_locator_stmtContext.prototype.T_LOCATOR = function() {
+ return this.getToken(HiveSqlParser.T_LOCATOR, 0);
+};
+
+Associate_locator_stmtContext.prototype.T_LOCATORS = function() {
+ return this.getToken(HiveSqlParser.T_LOCATORS, 0);
+};
+
+Associate_locator_stmtContext.prototype.T_RESULT = function() {
+ return this.getToken(HiveSqlParser.T_RESULT, 0);
+};
+
+Associate_locator_stmtContext.prototype.T_SET = function() {
+ return this.getToken(HiveSqlParser.T_SET, 0);
+};
+
+Associate_locator_stmtContext.prototype.T_COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_COMMA);
+ } else {
+ return this.getToken(HiveSqlParser.T_COMMA, i);
+ }
+};
+
+
+Associate_locator_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterAssociate_locator_stmt(this);
+ }
+};
+
+Associate_locator_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitAssociate_locator_stmt(this);
+ }
+};
+
+Associate_locator_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitAssociate_locator_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Associate_locator_stmtContext = Associate_locator_stmtContext;
+
+HiveSqlParser.prototype.associate_locator_stmt = function() {
+
+ var localctx = new Associate_locator_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 36, HiveSqlParser.RULE_associate_locator_stmt);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 681;
+ this.match(HiveSqlParser.T_ASSOCIATE);
+ this.state = 684;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_RESULT) {
+ this.state = 682;
+ this.match(HiveSqlParser.T_RESULT);
+ this.state = 683;
+ this.match(HiveSqlParser.T_SET);
+ }
+
+ this.state = 686;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_LOCATOR || _la===HiveSqlParser.T_LOCATORS)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 687;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 688;
+ this.ident();
+ this.state = 693;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===HiveSqlParser.T_COMMA) {
+ this.state = 689;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 690;
+ this.ident();
+ this.state = 695;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 696;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ this.state = 697;
+ this.match(HiveSqlParser.T_WITH);
+ this.state = 698;
+ this.match(HiveSqlParser.T_PROCEDURE);
+ this.state = 699;
+ this.ident();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Begin_transaction_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_begin_transaction_stmt;
+ return this;
+}
+
+Begin_transaction_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Begin_transaction_stmtContext.prototype.constructor = Begin_transaction_stmtContext;
+
+Begin_transaction_stmtContext.prototype.T_BEGIN = function() {
+ return this.getToken(HiveSqlParser.T_BEGIN, 0);
+};
+
+Begin_transaction_stmtContext.prototype.T_TRANSACTION = function() {
+ return this.getToken(HiveSqlParser.T_TRANSACTION, 0);
+};
+
+Begin_transaction_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterBegin_transaction_stmt(this);
+ }
+};
+
+Begin_transaction_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitBegin_transaction_stmt(this);
+ }
+};
+
+Begin_transaction_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitBegin_transaction_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Begin_transaction_stmtContext = Begin_transaction_stmtContext;
+
+HiveSqlParser.prototype.begin_transaction_stmt = function() {
+
+ var localctx = new Begin_transaction_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 38, HiveSqlParser.RULE_begin_transaction_stmt);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 701;
+ this.match(HiveSqlParser.T_BEGIN);
+ this.state = 702;
+ this.match(HiveSqlParser.T_TRANSACTION);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Break_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_break_stmt;
+ return this;
+}
+
+Break_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Break_stmtContext.prototype.constructor = Break_stmtContext;
+
+Break_stmtContext.prototype.T_BREAK = function() {
+ return this.getToken(HiveSqlParser.T_BREAK, 0);
+};
+
+Break_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterBreak_stmt(this);
+ }
+};
+
+Break_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitBreak_stmt(this);
+ }
+};
+
+Break_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitBreak_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Break_stmtContext = Break_stmtContext;
+
+HiveSqlParser.prototype.break_stmt = function() {
+
+ var localctx = new Break_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 40, HiveSqlParser.RULE_break_stmt);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 704;
+ this.match(HiveSqlParser.T_BREAK);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Call_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_call_stmt;
+ return this;
+}
+
+Call_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Call_stmtContext.prototype.constructor = Call_stmtContext;
+
+Call_stmtContext.prototype.T_CALL = function() {
+ return this.getToken(HiveSqlParser.T_CALL, 0);
+};
+
+Call_stmtContext.prototype.ident = function() {
+ return this.getTypedRuleContext(IdentContext,0);
+};
+
+Call_stmtContext.prototype.T_OPEN_P = function() {
+ return this.getToken(HiveSqlParser.T_OPEN_P, 0);
+};
+
+Call_stmtContext.prototype.T_CLOSE_P = function() {
+ return this.getToken(HiveSqlParser.T_CLOSE_P, 0);
+};
+
+Call_stmtContext.prototype.expr_func_params = function() {
+ return this.getTypedRuleContext(Expr_func_paramsContext,0);
+};
+
+Call_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCall_stmt(this);
+ }
+};
+
+Call_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCall_stmt(this);
+ }
+};
+
+Call_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCall_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Call_stmtContext = Call_stmtContext;
+
+HiveSqlParser.prototype.call_stmt = function() {
+
+ var localctx = new Call_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 42, HiveSqlParser.RULE_call_stmt);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 706;
+ this.match(HiveSqlParser.T_CALL);
+ this.state = 707;
+ this.ident();
+ this.state = 714;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,30,this._ctx);
+ if(la_===1) {
+ this.state = 708;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 710;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,29,this._ctx);
+ if(la_===1) {
+ this.state = 709;
+ this.expr_func_params();
+
+ }
+ this.state = 712;
+ this.match(HiveSqlParser.T_CLOSE_P);
+
+ } else if(la_===2) {
+ this.state = 713;
+ this.expr_func_params();
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Declare_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_declare_stmt;
+ return this;
+}
+
+Declare_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Declare_stmtContext.prototype.constructor = Declare_stmtContext;
+
+Declare_stmtContext.prototype.T_DECLARE = function() {
+ return this.getToken(HiveSqlParser.T_DECLARE, 0);
+};
+
+Declare_stmtContext.prototype.declare_stmt_item = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Declare_stmt_itemContext);
+ } else {
+ return this.getTypedRuleContext(Declare_stmt_itemContext,i);
+ }
+};
+
+Declare_stmtContext.prototype.T_COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_COMMA);
+ } else {
+ return this.getToken(HiveSqlParser.T_COMMA, i);
+ }
+};
+
+
+Declare_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterDeclare_stmt(this);
+ }
+};
+
+Declare_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitDeclare_stmt(this);
+ }
+};
+
+Declare_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitDeclare_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Declare_stmtContext = Declare_stmtContext;
+
+HiveSqlParser.prototype.declare_stmt = function() {
+
+ var localctx = new Declare_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 44, HiveSqlParser.RULE_declare_stmt);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 716;
+ this.match(HiveSqlParser.T_DECLARE);
+ this.state = 717;
+ this.declare_stmt_item();
+ this.state = 722;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,31,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 718;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 719;
+ this.declare_stmt_item();
+ }
+ this.state = 724;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,31,this._ctx);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Declare_blockContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_declare_block;
+ return this;
+}
+
+Declare_blockContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Declare_blockContext.prototype.constructor = Declare_blockContext;
+
+Declare_blockContext.prototype.T_DECLARE = function() {
+ return this.getToken(HiveSqlParser.T_DECLARE, 0);
+};
+
+Declare_blockContext.prototype.declare_stmt_item = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Declare_stmt_itemContext);
+ } else {
+ return this.getTypedRuleContext(Declare_stmt_itemContext,i);
+ }
+};
+
+Declare_blockContext.prototype.T_SEMICOLON = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_SEMICOLON);
+ } else {
+ return this.getToken(HiveSqlParser.T_SEMICOLON, i);
+ }
+};
+
+
+Declare_blockContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterDeclare_block(this);
+ }
+};
+
+Declare_blockContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitDeclare_block(this);
+ }
+};
+
+Declare_blockContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitDeclare_block(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Declare_blockContext = Declare_blockContext;
+
+HiveSqlParser.prototype.declare_block = function() {
+
+ var localctx = new Declare_blockContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 46, HiveSqlParser.RULE_declare_block);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 725;
+ this.match(HiveSqlParser.T_DECLARE);
+ this.state = 726;
+ this.declare_stmt_item();
+ this.state = 727;
+ this.match(HiveSqlParser.T_SEMICOLON);
+ this.state = 733;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,32,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 728;
+ this.declare_stmt_item();
+ this.state = 729;
+ this.match(HiveSqlParser.T_SEMICOLON);
+ }
+ this.state = 735;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,32,this._ctx);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Declare_block_inplaceContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_declare_block_inplace;
+ return this;
+}
+
+Declare_block_inplaceContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Declare_block_inplaceContext.prototype.constructor = Declare_block_inplaceContext;
+
+Declare_block_inplaceContext.prototype.declare_stmt_item = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Declare_stmt_itemContext);
+ } else {
+ return this.getTypedRuleContext(Declare_stmt_itemContext,i);
+ }
+};
+
+Declare_block_inplaceContext.prototype.T_SEMICOLON = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_SEMICOLON);
+ } else {
+ return this.getToken(HiveSqlParser.T_SEMICOLON, i);
+ }
+};
+
+
+Declare_block_inplaceContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterDeclare_block_inplace(this);
+ }
+};
+
+Declare_block_inplaceContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitDeclare_block_inplace(this);
+ }
+};
+
+Declare_block_inplaceContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitDeclare_block_inplace(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Declare_block_inplaceContext = Declare_block_inplaceContext;
+
+HiveSqlParser.prototype.declare_block_inplace = function() {
+
+ var localctx = new Declare_block_inplaceContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 48, HiveSqlParser.RULE_declare_block_inplace);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 736;
+ this.declare_stmt_item();
+ this.state = 737;
+ this.match(HiveSqlParser.T_SEMICOLON);
+ this.state = 743;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,33,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 738;
+ this.declare_stmt_item();
+ this.state = 739;
+ this.match(HiveSqlParser.T_SEMICOLON);
+ }
+ this.state = 745;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,33,this._ctx);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Declare_stmt_itemContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_declare_stmt_item;
+ return this;
+}
+
+Declare_stmt_itemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Declare_stmt_itemContext.prototype.constructor = Declare_stmt_itemContext;
+
+Declare_stmt_itemContext.prototype.declare_cursor_item = function() {
+ return this.getTypedRuleContext(Declare_cursor_itemContext,0);
+};
+
+Declare_stmt_itemContext.prototype.declare_condition_item = function() {
+ return this.getTypedRuleContext(Declare_condition_itemContext,0);
+};
+
+Declare_stmt_itemContext.prototype.declare_handler_item = function() {
+ return this.getTypedRuleContext(Declare_handler_itemContext,0);
+};
+
+Declare_stmt_itemContext.prototype.declare_var_item = function() {
+ return this.getTypedRuleContext(Declare_var_itemContext,0);
+};
+
+Declare_stmt_itemContext.prototype.declare_temporary_table_item = function() {
+ return this.getTypedRuleContext(Declare_temporary_table_itemContext,0);
+};
+
+Declare_stmt_itemContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterDeclare_stmt_item(this);
+ }
+};
+
+Declare_stmt_itemContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitDeclare_stmt_item(this);
+ }
+};
+
+Declare_stmt_itemContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitDeclare_stmt_item(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Declare_stmt_itemContext = Declare_stmt_itemContext;
+
+HiveSqlParser.prototype.declare_stmt_item = function() {
+
+ var localctx = new Declare_stmt_itemContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 50, HiveSqlParser.RULE_declare_stmt_item);
+ try {
+ this.state = 751;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,34,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 746;
+ this.declare_cursor_item();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 747;
+ this.declare_condition_item();
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 748;
+ this.declare_handler_item();
+ break;
+
+ case 4:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 749;
+ this.declare_var_item();
+ break;
+
+ case 5:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 750;
+ this.declare_temporary_table_item();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Declare_var_itemContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_declare_var_item;
+ return this;
+}
+
+Declare_var_itemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Declare_var_itemContext.prototype.constructor = Declare_var_itemContext;
+
+Declare_var_itemContext.prototype.ident = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(IdentContext);
+ } else {
+ return this.getTypedRuleContext(IdentContext,i);
+ }
+};
+
+Declare_var_itemContext.prototype.dtype = function() {
+ return this.getTypedRuleContext(DtypeContext,0);
+};
+
+Declare_var_itemContext.prototype.T_COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_COMMA);
+ } else {
+ return this.getToken(HiveSqlParser.T_COMMA, i);
+ }
+};
+
+
+Declare_var_itemContext.prototype.T_AS = function() {
+ return this.getToken(HiveSqlParser.T_AS, 0);
+};
+
+Declare_var_itemContext.prototype.dtype_len = function() {
+ return this.getTypedRuleContext(Dtype_lenContext,0);
+};
+
+Declare_var_itemContext.prototype.dtype_attr = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Dtype_attrContext);
+ } else {
+ return this.getTypedRuleContext(Dtype_attrContext,i);
+ }
+};
+
+Declare_var_itemContext.prototype.dtype_default = function() {
+ return this.getTypedRuleContext(Dtype_defaultContext,0);
+};
+
+Declare_var_itemContext.prototype.T_CONSTANT = function() {
+ return this.getToken(HiveSqlParser.T_CONSTANT, 0);
+};
+
+Declare_var_itemContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterDeclare_var_item(this);
+ }
+};
+
+Declare_var_itemContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitDeclare_var_item(this);
+ }
+};
+
+Declare_var_itemContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitDeclare_var_item(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Declare_var_itemContext = Declare_var_itemContext;
+
+HiveSqlParser.prototype.declare_var_item = function() {
+
+ var localctx = new Declare_var_itemContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 52, HiveSqlParser.RULE_declare_var_item);
+ var _la = 0; // Token type
+ try {
+ this.state = 788;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,42,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 753;
+ this.ident();
+ this.state = 758;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===HiveSqlParser.T_COMMA) {
+ this.state = 754;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 755;
+ this.ident();
+ this.state = 760;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 762;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,36,this._ctx);
+ if(la_===1) {
+ this.state = 761;
+ this.match(HiveSqlParser.T_AS);
+
+ }
+ this.state = 764;
+ this.dtype();
+ this.state = 766;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,37,this._ctx);
+ if(la_===1) {
+ this.state = 765;
+ this.dtype_len();
+
+ }
+ this.state = 771;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,38,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 768;
+ this.dtype_attr();
+ }
+ this.state = 773;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,38,this._ctx);
+ }
+
+ this.state = 775;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,39,this._ctx);
+ if(la_===1) {
+ this.state = 774;
+ this.dtype_default();
+
+ }
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 777;
+ this.ident();
+ this.state = 778;
+ this.match(HiveSqlParser.T_CONSTANT);
+ this.state = 780;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,40,this._ctx);
+ if(la_===1) {
+ this.state = 779;
+ this.match(HiveSqlParser.T_AS);
+
+ }
+ this.state = 782;
+ this.dtype();
+ this.state = 784;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_OPEN_P) {
+ this.state = 783;
+ this.dtype_len();
+ }
+
+ this.state = 786;
+ this.dtype_default();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Declare_condition_itemContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_declare_condition_item;
+ return this;
+}
+
+Declare_condition_itemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Declare_condition_itemContext.prototype.constructor = Declare_condition_itemContext;
+
+Declare_condition_itemContext.prototype.ident = function() {
+ return this.getTypedRuleContext(IdentContext,0);
+};
+
+Declare_condition_itemContext.prototype.T_CONDITION = function() {
+ return this.getToken(HiveSqlParser.T_CONDITION, 0);
+};
+
+Declare_condition_itemContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterDeclare_condition_item(this);
+ }
+};
+
+Declare_condition_itemContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitDeclare_condition_item(this);
+ }
+};
+
+Declare_condition_itemContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitDeclare_condition_item(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Declare_condition_itemContext = Declare_condition_itemContext;
+
+HiveSqlParser.prototype.declare_condition_item = function() {
+
+ var localctx = new Declare_condition_itemContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 54, HiveSqlParser.RULE_declare_condition_item);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 790;
+ this.ident();
+ this.state = 791;
+ this.match(HiveSqlParser.T_CONDITION);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Declare_cursor_itemContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_declare_cursor_item;
+ return this;
+}
+
+Declare_cursor_itemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Declare_cursor_itemContext.prototype.constructor = Declare_cursor_itemContext;
+
+Declare_cursor_itemContext.prototype.T_IS = function() {
+ return this.getToken(HiveSqlParser.T_IS, 0);
+};
+
+Declare_cursor_itemContext.prototype.T_AS = function() {
+ return this.getToken(HiveSqlParser.T_AS, 0);
+};
+
+Declare_cursor_itemContext.prototype.T_FOR = function() {
+ return this.getToken(HiveSqlParser.T_FOR, 0);
+};
+
+Declare_cursor_itemContext.prototype.T_CURSOR = function() {
+ return this.getToken(HiveSqlParser.T_CURSOR, 0);
+};
+
+Declare_cursor_itemContext.prototype.ident = function() {
+ return this.getTypedRuleContext(IdentContext,0);
+};
+
+Declare_cursor_itemContext.prototype.select_stmt = function() {
+ return this.getTypedRuleContext(Select_stmtContext,0);
+};
+
+Declare_cursor_itemContext.prototype.expr = function() {
+ return this.getTypedRuleContext(ExprContext,0);
+};
+
+Declare_cursor_itemContext.prototype.cursor_with_return = function() {
+ return this.getTypedRuleContext(Cursor_with_returnContext,0);
+};
+
+Declare_cursor_itemContext.prototype.cursor_without_return = function() {
+ return this.getTypedRuleContext(Cursor_without_returnContext,0);
+};
+
+Declare_cursor_itemContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterDeclare_cursor_item(this);
+ }
+};
+
+Declare_cursor_itemContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitDeclare_cursor_item(this);
+ }
+};
+
+Declare_cursor_itemContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitDeclare_cursor_item(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Declare_cursor_itemContext = Declare_cursor_itemContext;
+
+HiveSqlParser.prototype.declare_cursor_item = function() {
+
+ var localctx = new Declare_cursor_itemContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 56, HiveSqlParser.RULE_declare_cursor_item);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 798;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,43,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 793;
+ this.match(HiveSqlParser.T_CURSOR);
+ this.state = 794;
+ this.ident();
+ break;
+
+ case 2:
+ this.state = 795;
+ this.ident();
+ this.state = 796;
+ this.match(HiveSqlParser.T_CURSOR);
+ break;
+
+ }
+ this.state = 802;
+ this._errHandler.sync(this);
+ switch (this._input.LA(1)) {
+ case HiveSqlParser.T_WITH:
+ this.state = 800;
+ this.cursor_with_return();
+ break;
+ case HiveSqlParser.T_WITHOUT:
+ this.state = 801;
+ this.cursor_without_return();
+ break;
+ case HiveSqlParser.T_FOR:
+ case HiveSqlParser.T_AS:
+ case HiveSqlParser.T_IS:
+ break;
+ default:
+ break;
+ }
+ this.state = 804;
+ _la = this._input.LA(1);
+ if(!(((((_la - 28)) & ~0x1f) == 0 && ((1 << (_la - 28)) & ((1 << (HiveSqlParser.T_FOR - 28)) | (1 << (HiveSqlParser.T_AS - 28)) | (1 << (HiveSqlParser.T_IS - 28)))) !== 0))) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 807;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,45,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 805;
+ this.select_stmt();
+ break;
+
+ case 2:
+ this.state = 806;
+ this.expr(0);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Cursor_with_returnContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_cursor_with_return;
+ return this;
+}
+
+Cursor_with_returnContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Cursor_with_returnContext.prototype.constructor = Cursor_with_returnContext;
+
+Cursor_with_returnContext.prototype.T_WITH = function() {
+ return this.getToken(HiveSqlParser.T_WITH, 0);
+};
+
+Cursor_with_returnContext.prototype.T_RETURN = function() {
+ return this.getToken(HiveSqlParser.T_RETURN, 0);
+};
+
+Cursor_with_returnContext.prototype.T_ONLY = function() {
+ return this.getToken(HiveSqlParser.T_ONLY, 0);
+};
+
+Cursor_with_returnContext.prototype.T_TO = function() {
+ return this.getToken(HiveSqlParser.T_TO, 0);
+};
+
+Cursor_with_returnContext.prototype.T_CALLER = function() {
+ return this.getToken(HiveSqlParser.T_CALLER, 0);
+};
+
+Cursor_with_returnContext.prototype.T_CLIENT = function() {
+ return this.getToken(HiveSqlParser.T_CLIENT, 0);
+};
+
+Cursor_with_returnContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCursor_with_return(this);
+ }
+};
+
+Cursor_with_returnContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCursor_with_return(this);
+ }
+};
+
+Cursor_with_returnContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCursor_with_return(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Cursor_with_returnContext = Cursor_with_returnContext;
+
+HiveSqlParser.prototype.cursor_with_return = function() {
+
+ var localctx = new Cursor_with_returnContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 58, HiveSqlParser.RULE_cursor_with_return);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 809;
+ this.match(HiveSqlParser.T_WITH);
+ this.state = 810;
+ this.match(HiveSqlParser.T_RETURN);
+ this.state = 812;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_ONLY) {
+ this.state = 811;
+ this.match(HiveSqlParser.T_ONLY);
+ }
+
+ this.state = 816;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_TO) {
+ this.state = 814;
+ this.match(HiveSqlParser.T_TO);
+ this.state = 815;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_CALLER || _la===HiveSqlParser.T_CLIENT)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Cursor_without_returnContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_cursor_without_return;
+ return this;
+}
+
+Cursor_without_returnContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Cursor_without_returnContext.prototype.constructor = Cursor_without_returnContext;
+
+Cursor_without_returnContext.prototype.T_WITHOUT = function() {
+ return this.getToken(HiveSqlParser.T_WITHOUT, 0);
+};
+
+Cursor_without_returnContext.prototype.T_RETURN = function() {
+ return this.getToken(HiveSqlParser.T_RETURN, 0);
+};
+
+Cursor_without_returnContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCursor_without_return(this);
+ }
+};
+
+Cursor_without_returnContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCursor_without_return(this);
+ }
+};
+
+Cursor_without_returnContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCursor_without_return(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Cursor_without_returnContext = Cursor_without_returnContext;
+
+HiveSqlParser.prototype.cursor_without_return = function() {
+
+ var localctx = new Cursor_without_returnContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 60, HiveSqlParser.RULE_cursor_without_return);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 818;
+ this.match(HiveSqlParser.T_WITHOUT);
+ this.state = 819;
+ this.match(HiveSqlParser.T_RETURN);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Declare_handler_itemContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_declare_handler_item;
+ return this;
+}
+
+Declare_handler_itemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Declare_handler_itemContext.prototype.constructor = Declare_handler_itemContext;
+
+Declare_handler_itemContext.prototype.T_HANDLER = function() {
+ return this.getToken(HiveSqlParser.T_HANDLER, 0);
+};
+
+Declare_handler_itemContext.prototype.T_FOR = function() {
+ return this.getToken(HiveSqlParser.T_FOR, 0);
+};
+
+Declare_handler_itemContext.prototype.single_block_stmt = function() {
+ return this.getTypedRuleContext(Single_block_stmtContext,0);
+};
+
+Declare_handler_itemContext.prototype.T_CONTINUE = function() {
+ return this.getToken(HiveSqlParser.T_CONTINUE, 0);
+};
+
+Declare_handler_itemContext.prototype.T_EXIT = function() {
+ return this.getToken(HiveSqlParser.T_EXIT, 0);
+};
+
+Declare_handler_itemContext.prototype.T_SQLEXCEPTION = function() {
+ return this.getToken(HiveSqlParser.T_SQLEXCEPTION, 0);
+};
+
+Declare_handler_itemContext.prototype.T_SQLWARNING = function() {
+ return this.getToken(HiveSqlParser.T_SQLWARNING, 0);
+};
+
+Declare_handler_itemContext.prototype.T_NOT = function() {
+ return this.getToken(HiveSqlParser.T_NOT, 0);
+};
+
+Declare_handler_itemContext.prototype.T_FOUND = function() {
+ return this.getToken(HiveSqlParser.T_FOUND, 0);
+};
+
+Declare_handler_itemContext.prototype.ident = function() {
+ return this.getTypedRuleContext(IdentContext,0);
+};
+
+Declare_handler_itemContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterDeclare_handler_item(this);
+ }
+};
+
+Declare_handler_itemContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitDeclare_handler_item(this);
+ }
+};
+
+Declare_handler_itemContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitDeclare_handler_item(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Declare_handler_itemContext = Declare_handler_itemContext;
+
+HiveSqlParser.prototype.declare_handler_item = function() {
+
+ var localctx = new Declare_handler_itemContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 62, HiveSqlParser.RULE_declare_handler_item);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 821;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_CONTINUE || _la===HiveSqlParser.T_EXIT)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 822;
+ this.match(HiveSqlParser.T_HANDLER);
+ this.state = 823;
+ this.match(HiveSqlParser.T_FOR);
+ this.state = 829;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,48,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 824;
+ this.match(HiveSqlParser.T_SQLEXCEPTION);
+ break;
+
+ case 2:
+ this.state = 825;
+ this.match(HiveSqlParser.T_SQLWARNING);
+ break;
+
+ case 3:
+ this.state = 826;
+ this.match(HiveSqlParser.T_NOT);
+ this.state = 827;
+ this.match(HiveSqlParser.T_FOUND);
+ break;
+
+ case 4:
+ this.state = 828;
+ this.ident();
+ break;
+
+ }
+ this.state = 831;
+ this.single_block_stmt();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Declare_temporary_table_itemContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_declare_temporary_table_item;
+ return this;
+}
+
+Declare_temporary_table_itemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Declare_temporary_table_itemContext.prototype.constructor = Declare_temporary_table_itemContext;
+
+Declare_temporary_table_itemContext.prototype.T_TEMPORARY = function() {
+ return this.getToken(HiveSqlParser.T_TEMPORARY, 0);
+};
+
+Declare_temporary_table_itemContext.prototype.T_TABLE = function() {
+ return this.getToken(HiveSqlParser.T_TABLE, 0);
+};
+
+Declare_temporary_table_itemContext.prototype.ident = function() {
+ return this.getTypedRuleContext(IdentContext,0);
+};
+
+Declare_temporary_table_itemContext.prototype.create_table_definition = function() {
+ return this.getTypedRuleContext(Create_table_definitionContext,0);
+};
+
+Declare_temporary_table_itemContext.prototype.T_GLOBAL = function() {
+ return this.getToken(HiveSqlParser.T_GLOBAL, 0);
+};
+
+Declare_temporary_table_itemContext.prototype.create_table_preoptions = function() {
+ return this.getTypedRuleContext(Create_table_preoptionsContext,0);
+};
+
+Declare_temporary_table_itemContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterDeclare_temporary_table_item(this);
+ }
+};
+
+Declare_temporary_table_itemContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitDeclare_temporary_table_item(this);
+ }
+};
+
+Declare_temporary_table_itemContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitDeclare_temporary_table_item(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Declare_temporary_table_itemContext = Declare_temporary_table_itemContext;
+
+HiveSqlParser.prototype.declare_temporary_table_item = function() {
+
+ var localctx = new Declare_temporary_table_itemContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 64, HiveSqlParser.RULE_declare_temporary_table_item);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 834;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_GLOBAL) {
+ this.state = 833;
+ this.match(HiveSqlParser.T_GLOBAL);
+ }
+
+ this.state = 836;
+ this.match(HiveSqlParser.T_TEMPORARY);
+ this.state = 837;
+ this.match(HiveSqlParser.T_TABLE);
+ this.state = 838;
+ this.ident();
+ this.state = 840;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_COMMA || _la===HiveSqlParser.T_STORED || _la===HiveSqlParser.T_ROW) {
+ this.state = 839;
+ this.create_table_preoptions();
+ }
+
+ this.state = 842;
+ this.create_table_definition();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_table_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_create_table_stmt;
+ return this;
+}
+
+Create_table_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_table_stmtContext.prototype.constructor = Create_table_stmtContext;
+
+Create_table_stmtContext.prototype.T_CREATE = function() {
+ return this.getToken(HiveSqlParser.T_CREATE, 0);
+};
+
+Create_table_stmtContext.prototype.T_TABLE = function() {
+ return this.getToken(HiveSqlParser.T_TABLE, 0);
+};
+
+Create_table_stmtContext.prototype.table_name = function() {
+ return this.getTypedRuleContext(Table_nameContext,0);
+};
+
+Create_table_stmtContext.prototype.create_table_definition = function() {
+ return this.getTypedRuleContext(Create_table_definitionContext,0);
+};
+
+Create_table_stmtContext.prototype.T_IF = function() {
+ return this.getToken(HiveSqlParser.T_IF, 0);
+};
+
+Create_table_stmtContext.prototype.T_NOT = function() {
+ return this.getToken(HiveSqlParser.T_NOT, 0);
+};
+
+Create_table_stmtContext.prototype.T_EXISTS = function() {
+ return this.getToken(HiveSqlParser.T_EXISTS, 0);
+};
+
+Create_table_stmtContext.prototype.create_table_preoptions = function() {
+ return this.getTypedRuleContext(Create_table_preoptionsContext,0);
+};
+
+Create_table_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCreate_table_stmt(this);
+ }
+};
+
+Create_table_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCreate_table_stmt(this);
+ }
+};
+
+Create_table_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCreate_table_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Create_table_stmtContext = Create_table_stmtContext;
+
+HiveSqlParser.prototype.create_table_stmt = function() {
+
+ var localctx = new Create_table_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 66, HiveSqlParser.RULE_create_table_stmt);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 844;
+ this.match(HiveSqlParser.T_CREATE);
+ this.state = 845;
+ this.match(HiveSqlParser.T_TABLE);
+ this.state = 849;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,51,this._ctx);
+ if(la_===1) {
+ this.state = 846;
+ this.match(HiveSqlParser.T_IF);
+ this.state = 847;
+ this.match(HiveSqlParser.T_NOT);
+ this.state = 848;
+ this.match(HiveSqlParser.T_EXISTS);
+
+ }
+ this.state = 851;
+ this.table_name();
+ this.state = 853;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_COMMA || _la===HiveSqlParser.T_STORED || _la===HiveSqlParser.T_ROW) {
+ this.state = 852;
+ this.create_table_preoptions();
+ }
+
+ this.state = 855;
+ this.create_table_definition();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_local_temp_table_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_create_local_temp_table_stmt;
+ return this;
+}
+
+Create_local_temp_table_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_local_temp_table_stmtContext.prototype.constructor = Create_local_temp_table_stmtContext;
+
+Create_local_temp_table_stmtContext.prototype.T_CREATE = function() {
+ return this.getToken(HiveSqlParser.T_CREATE, 0);
+};
+
+Create_local_temp_table_stmtContext.prototype.T_TABLE = function() {
+ return this.getToken(HiveSqlParser.T_TABLE, 0);
+};
+
+Create_local_temp_table_stmtContext.prototype.ident = function() {
+ return this.getTypedRuleContext(IdentContext,0);
+};
+
+Create_local_temp_table_stmtContext.prototype.create_table_definition = function() {
+ return this.getTypedRuleContext(Create_table_definitionContext,0);
+};
+
+Create_local_temp_table_stmtContext.prototype.T_LOCAL = function() {
+ return this.getToken(HiveSqlParser.T_LOCAL, 0);
+};
+
+Create_local_temp_table_stmtContext.prototype.T_TEMPORARY = function() {
+ return this.getToken(HiveSqlParser.T_TEMPORARY, 0);
+};
+
+Create_local_temp_table_stmtContext.prototype.T_VOLATILE = function() {
+ return this.getToken(HiveSqlParser.T_VOLATILE, 0);
+};
+
+Create_local_temp_table_stmtContext.prototype.create_table_preoptions = function() {
+ return this.getTypedRuleContext(Create_table_preoptionsContext,0);
+};
+
+Create_local_temp_table_stmtContext.prototype.T_SET = function() {
+ return this.getToken(HiveSqlParser.T_SET, 0);
+};
+
+Create_local_temp_table_stmtContext.prototype.T_MULTISET = function() {
+ return this.getToken(HiveSqlParser.T_MULTISET, 0);
+};
+
+Create_local_temp_table_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCreate_local_temp_table_stmt(this);
+ }
+};
+
+Create_local_temp_table_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCreate_local_temp_table_stmt(this);
+ }
+};
+
+Create_local_temp_table_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCreate_local_temp_table_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Create_local_temp_table_stmtContext = Create_local_temp_table_stmtContext;
+
+HiveSqlParser.prototype.create_local_temp_table_stmt = function() {
+
+ var localctx = new Create_local_temp_table_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 68, HiveSqlParser.RULE_create_local_temp_table_stmt);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 857;
+ this.match(HiveSqlParser.T_CREATE);
+ this.state = 864;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case HiveSqlParser.T_LOCAL:
+ this.state = 858;
+ this.match(HiveSqlParser.T_LOCAL);
+ this.state = 859;
+ this.match(HiveSqlParser.T_TEMPORARY);
+ break;
+ case HiveSqlParser.T_SET:
+ case HiveSqlParser.T_MULTISET:
+ case HiveSqlParser.T_VOLATILE:
+ this.state = 861;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_SET || _la===HiveSqlParser.T_MULTISET) {
+ this.state = 860;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_SET || _la===HiveSqlParser.T_MULTISET)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 863;
+ this.match(HiveSqlParser.T_VOLATILE);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 866;
+ this.match(HiveSqlParser.T_TABLE);
+ this.state = 867;
+ this.ident();
+ this.state = 869;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_COMMA || _la===HiveSqlParser.T_STORED || _la===HiveSqlParser.T_ROW) {
+ this.state = 868;
+ this.create_table_preoptions();
+ }
+
+ this.state = 871;
+ this.create_table_definition();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_table_definitionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_create_table_definition;
+ return this;
+}
+
+Create_table_definitionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_table_definitionContext.prototype.constructor = Create_table_definitionContext;
+
+Create_table_definitionContext.prototype.T_OPEN_P = function() {
+ return this.getToken(HiveSqlParser.T_OPEN_P, 0);
+};
+
+Create_table_definitionContext.prototype.select_stmt = function() {
+ return this.getTypedRuleContext(Select_stmtContext,0);
+};
+
+Create_table_definitionContext.prototype.T_CLOSE_P = function() {
+ return this.getToken(HiveSqlParser.T_CLOSE_P, 0);
+};
+
+Create_table_definitionContext.prototype.create_table_columns = function() {
+ return this.getTypedRuleContext(Create_table_columnsContext,0);
+};
+
+Create_table_definitionContext.prototype.T_LIKE = function() {
+ return this.getToken(HiveSqlParser.T_LIKE, 0);
+};
+
+Create_table_definitionContext.prototype.table_name = function() {
+ return this.getTypedRuleContext(Table_nameContext,0);
+};
+
+Create_table_definitionContext.prototype.create_table_options = function() {
+ return this.getTypedRuleContext(Create_table_optionsContext,0);
+};
+
+Create_table_definitionContext.prototype.T_AS = function() {
+ return this.getToken(HiveSqlParser.T_AS, 0);
+};
+
+Create_table_definitionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCreate_table_definition(this);
+ }
+};
+
+Create_table_definitionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCreate_table_definition(this);
+ }
+};
+
+Create_table_definitionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCreate_table_definition(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Create_table_definitionContext = Create_table_definitionContext;
+
+HiveSqlParser.prototype.create_table_definition = function() {
+
+ var localctx = new Create_table_definitionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 70, HiveSqlParser.RULE_create_table_definition);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 890;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,58,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 874;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_AS) {
+ this.state = 873;
+ this.match(HiveSqlParser.T_AS);
+ }
+
+ this.state = 876;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 877;
+ this.select_stmt();
+ this.state = 878;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ break;
+
+ case 2:
+ this.state = 881;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_AS) {
+ this.state = 880;
+ this.match(HiveSqlParser.T_AS);
+ }
+
+ this.state = 883;
+ this.select_stmt();
+ break;
+
+ case 3:
+ this.state = 884;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 885;
+ this.create_table_columns();
+ this.state = 886;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ break;
+
+ case 4:
+ this.state = 888;
+ this.match(HiveSqlParser.T_LIKE);
+ this.state = 889;
+ this.table_name();
+ break;
+
+ }
+ this.state = 893;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,59,this._ctx);
+ if(la_===1) {
+ this.state = 892;
+ this.create_table_options();
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_table_columnsContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_create_table_columns;
+ return this;
+}
+
+Create_table_columnsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_table_columnsContext.prototype.constructor = Create_table_columnsContext;
+
+Create_table_columnsContext.prototype.create_table_columns_item = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Create_table_columns_itemContext);
+ } else {
+ return this.getTypedRuleContext(Create_table_columns_itemContext,i);
+ }
+};
+
+Create_table_columnsContext.prototype.T_COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_COMMA);
+ } else {
+ return this.getToken(HiveSqlParser.T_COMMA, i);
+ }
+};
+
+
+Create_table_columnsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCreate_table_columns(this);
+ }
+};
+
+Create_table_columnsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCreate_table_columns(this);
+ }
+};
+
+Create_table_columnsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCreate_table_columns(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Create_table_columnsContext = Create_table_columnsContext;
+
+HiveSqlParser.prototype.create_table_columns = function() {
+
+ var localctx = new Create_table_columnsContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 72, HiveSqlParser.RULE_create_table_columns);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 895;
+ this.create_table_columns_item();
+ this.state = 900;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===HiveSqlParser.T_COMMA) {
+ this.state = 896;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 897;
+ this.create_table_columns_item();
+ this.state = 902;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_table_columns_itemContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_create_table_columns_item;
+ return this;
+}
+
+Create_table_columns_itemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_table_columns_itemContext.prototype.constructor = Create_table_columns_itemContext;
+
+Create_table_columns_itemContext.prototype.column_name = function() {
+ return this.getTypedRuleContext(Column_nameContext,0);
+};
+
+Create_table_columns_itemContext.prototype.dtype = function() {
+ return this.getTypedRuleContext(DtypeContext,0);
+};
+
+Create_table_columns_itemContext.prototype.dtype_len = function() {
+ return this.getTypedRuleContext(Dtype_lenContext,0);
+};
+
+Create_table_columns_itemContext.prototype.dtype_attr = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Dtype_attrContext);
+ } else {
+ return this.getTypedRuleContext(Dtype_attrContext,i);
+ }
+};
+
+Create_table_columns_itemContext.prototype.create_table_column_inline_cons = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Create_table_column_inline_consContext);
+ } else {
+ return this.getTypedRuleContext(Create_table_column_inline_consContext,i);
+ }
+};
+
+Create_table_columns_itemContext.prototype.create_table_column_cons = function() {
+ return this.getTypedRuleContext(Create_table_column_consContext,0);
+};
+
+Create_table_columns_itemContext.prototype.T_CONSTRAINT = function() {
+ return this.getToken(HiveSqlParser.T_CONSTRAINT, 0);
+};
+
+Create_table_columns_itemContext.prototype.ident = function() {
+ return this.getTypedRuleContext(IdentContext,0);
+};
+
+Create_table_columns_itemContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCreate_table_columns_item(this);
+ }
+};
+
+Create_table_columns_itemContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCreate_table_columns_item(this);
+ }
+};
+
+Create_table_columns_itemContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCreate_table_columns_item(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Create_table_columns_itemContext = Create_table_columns_itemContext;
+
+HiveSqlParser.prototype.create_table_columns_item = function() {
+
+ var localctx = new Create_table_columns_itemContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 74, HiveSqlParser.RULE_create_table_columns_item);
+ var _la = 0; // Token type
+ try {
+ this.state = 925;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,65,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 903;
+ this.column_name();
+ this.state = 904;
+ this.dtype();
+ this.state = 906;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_OPEN_P) {
+ this.state = 905;
+ this.dtype_len();
+ }
+
+ this.state = 911;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,62,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 908;
+ this.dtype_attr();
+ }
+ this.state = 913;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,62,this._ctx);
+ }
+
+ this.state = 917;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(((((_la - 19)) & ~0x1f) == 0 && ((1 << (_la - 19)) & ((1 << (HiveSqlParser.T_NULL - 19)) | (1 << (HiveSqlParser.T_COLON - 19)) | (1 << (HiveSqlParser.T_EQUAL - 19)) | (1 << (HiveSqlParser.T_WITH - 19)))) !== 0) || ((((_la - 54)) & ~0x1f) == 0 && ((1 << (_la - 54)) & ((1 << (HiveSqlParser.T_NOT - 54)) | (1 << (HiveSqlParser.T_PRIMARY - 54)) | (1 << (HiveSqlParser.T_UNIQUE - 54)) | (1 << (HiveSqlParser.T_REFERENCES - 54)) | (1 << (HiveSqlParser.T_IDENTITY - 54)) | (1 << (HiveSqlParser.T_AUTO_INCREMENT - 54)) | (1 << (HiveSqlParser.T_ENABLE - 54)) | (1 << (HiveSqlParser.T_DEFAULT - 54)))) !== 0)) {
+ this.state = 914;
+ this.create_table_column_inline_cons();
+ this.state = 919;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 922;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_CONSTRAINT) {
+ this.state = 920;
+ this.match(HiveSqlParser.T_CONSTRAINT);
+ this.state = 921;
+ this.ident();
+ }
+
+ this.state = 924;
+ this.create_table_column_cons();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Column_nameContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_column_name;
+ return this;
+}
+
+Column_nameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Column_nameContext.prototype.constructor = Column_nameContext;
+
+Column_nameContext.prototype.ident = function() {
+ return this.getTypedRuleContext(IdentContext,0);
+};
+
+Column_nameContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterColumn_name(this);
+ }
+};
+
+Column_nameContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitColumn_name(this);
+ }
+};
+
+Column_nameContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitColumn_name(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Column_nameContext = Column_nameContext;
+
+HiveSqlParser.prototype.column_name = function() {
+
+ var localctx = new Column_nameContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 76, HiveSqlParser.RULE_column_name);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 927;
+ this.ident();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_table_column_inline_consContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_create_table_column_inline_cons;
+ return this;
+}
+
+Create_table_column_inline_consContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_table_column_inline_consContext.prototype.constructor = Create_table_column_inline_consContext;
+
+Create_table_column_inline_consContext.prototype.dtype_default = function() {
+ return this.getTypedRuleContext(Dtype_defaultContext,0);
+};
+
+Create_table_column_inline_consContext.prototype.T_NULL = function() {
+ return this.getToken(HiveSqlParser.T_NULL, 0);
+};
+
+Create_table_column_inline_consContext.prototype.T_NOT = function() {
+ return this.getToken(HiveSqlParser.T_NOT, 0);
+};
+
+Create_table_column_inline_consContext.prototype.T_PRIMARY = function() {
+ return this.getToken(HiveSqlParser.T_PRIMARY, 0);
+};
+
+Create_table_column_inline_consContext.prototype.T_KEY = function() {
+ return this.getToken(HiveSqlParser.T_KEY, 0);
+};
+
+Create_table_column_inline_consContext.prototype.T_UNIQUE = function() {
+ return this.getToken(HiveSqlParser.T_UNIQUE, 0);
+};
+
+Create_table_column_inline_consContext.prototype.T_REFERENCES = function() {
+ return this.getToken(HiveSqlParser.T_REFERENCES, 0);
+};
+
+Create_table_column_inline_consContext.prototype.table_name = function() {
+ return this.getTypedRuleContext(Table_nameContext,0);
+};
+
+Create_table_column_inline_consContext.prototype.T_OPEN_P = function() {
+ return this.getToken(HiveSqlParser.T_OPEN_P, 0);
+};
+
+Create_table_column_inline_consContext.prototype.ident = function() {
+ return this.getTypedRuleContext(IdentContext,0);
+};
+
+Create_table_column_inline_consContext.prototype.T_CLOSE_P = function() {
+ return this.getToken(HiveSqlParser.T_CLOSE_P, 0);
+};
+
+Create_table_column_inline_consContext.prototype.create_table_fk_action = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Create_table_fk_actionContext);
+ } else {
+ return this.getTypedRuleContext(Create_table_fk_actionContext,i);
+ }
+};
+
+Create_table_column_inline_consContext.prototype.T_IDENTITY = function() {
+ return this.getToken(HiveSqlParser.T_IDENTITY, 0);
+};
+
+Create_table_column_inline_consContext.prototype.L_INT = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.L_INT);
+ } else {
+ return this.getToken(HiveSqlParser.L_INT, i);
+ }
+};
+
+
+Create_table_column_inline_consContext.prototype.T_COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_COMMA);
+ } else {
+ return this.getToken(HiveSqlParser.T_COMMA, i);
+ }
+};
+
+
+Create_table_column_inline_consContext.prototype.T_AUTO_INCREMENT = function() {
+ return this.getToken(HiveSqlParser.T_AUTO_INCREMENT, 0);
+};
+
+Create_table_column_inline_consContext.prototype.T_ENABLE = function() {
+ return this.getToken(HiveSqlParser.T_ENABLE, 0);
+};
+
+Create_table_column_inline_consContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCreate_table_column_inline_cons(this);
+ }
+};
+
+Create_table_column_inline_consContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCreate_table_column_inline_cons(this);
+ }
+};
+
+Create_table_column_inline_consContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCreate_table_column_inline_cons(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Create_table_column_inline_consContext = Create_table_column_inline_consContext;
+
+HiveSqlParser.prototype.create_table_column_inline_cons = function() {
+
+ var localctx = new Create_table_column_inline_consContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 78, HiveSqlParser.RULE_create_table_column_inline_cons);
+ var _la = 0; // Token type
+ try {
+ this.state = 961;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case HiveSqlParser.T_COLON:
+ case HiveSqlParser.T_EQUAL:
+ case HiveSqlParser.T_WITH:
+ case HiveSqlParser.T_DEFAULT:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 929;
+ this.dtype_default();
+ break;
+ case HiveSqlParser.T_NULL:
+ case HiveSqlParser.T_NOT:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 931;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_NOT) {
+ this.state = 930;
+ this.match(HiveSqlParser.T_NOT);
+ }
+
+ this.state = 933;
+ this.match(HiveSqlParser.T_NULL);
+ break;
+ case HiveSqlParser.T_PRIMARY:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 934;
+ this.match(HiveSqlParser.T_PRIMARY);
+ this.state = 935;
+ this.match(HiveSqlParser.T_KEY);
+ break;
+ case HiveSqlParser.T_UNIQUE:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 936;
+ this.match(HiveSqlParser.T_UNIQUE);
+ break;
+ case HiveSqlParser.T_REFERENCES:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 937;
+ this.match(HiveSqlParser.T_REFERENCES);
+ this.state = 938;
+ this.table_name();
+ this.state = 939;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 940;
+ this.ident();
+ this.state = 941;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ this.state = 945;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===HiveSqlParser.T_ON) {
+ this.state = 942;
+ this.create_table_fk_action();
+ this.state = 947;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+ case HiveSqlParser.T_IDENTITY:
+ this.enterOuterAlt(localctx, 6);
+ this.state = 948;
+ this.match(HiveSqlParser.T_IDENTITY);
+ this.state = 949;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 950;
+ this.match(HiveSqlParser.L_INT);
+ this.state = 955;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===HiveSqlParser.T_COMMA) {
+ this.state = 951;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 952;
+ this.match(HiveSqlParser.L_INT);
+ this.state = 957;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 958;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ break;
+ case HiveSqlParser.T_AUTO_INCREMENT:
+ this.enterOuterAlt(localctx, 7);
+ this.state = 959;
+ this.match(HiveSqlParser.T_AUTO_INCREMENT);
+ break;
+ case HiveSqlParser.T_ENABLE:
+ this.enterOuterAlt(localctx, 8);
+ this.state = 960;
+ this.match(HiveSqlParser.T_ENABLE);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_table_column_consContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_create_table_column_cons;
+ return this;
+}
+
+Create_table_column_consContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_table_column_consContext.prototype.constructor = Create_table_column_consContext;
+
+Create_table_column_consContext.prototype.T_PRIMARY = function() {
+ return this.getToken(HiveSqlParser.T_PRIMARY, 0);
+};
+
+Create_table_column_consContext.prototype.T_KEY = function() {
+ return this.getToken(HiveSqlParser.T_KEY, 0);
+};
+
+Create_table_column_consContext.prototype.T_OPEN_P = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_OPEN_P);
+ } else {
+ return this.getToken(HiveSqlParser.T_OPEN_P, i);
+ }
+};
+
+
+Create_table_column_consContext.prototype.ident = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(IdentContext);
+ } else {
+ return this.getTypedRuleContext(IdentContext,i);
+ }
+};
+
+Create_table_column_consContext.prototype.T_CLOSE_P = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_CLOSE_P);
+ } else {
+ return this.getToken(HiveSqlParser.T_CLOSE_P, i);
+ }
+};
+
+
+Create_table_column_consContext.prototype.T_CLUSTERED = function() {
+ return this.getToken(HiveSqlParser.T_CLUSTERED, 0);
+};
+
+Create_table_column_consContext.prototype.T_COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_COMMA);
+ } else {
+ return this.getToken(HiveSqlParser.T_COMMA, i);
+ }
+};
+
+
+Create_table_column_consContext.prototype.T_ENABLE = function() {
+ return this.getToken(HiveSqlParser.T_ENABLE, 0);
+};
+
+Create_table_column_consContext.prototype.index_storage_clause = function() {
+ return this.getTypedRuleContext(Index_storage_clauseContext,0);
+};
+
+Create_table_column_consContext.prototype.T_ASC = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_ASC);
+ } else {
+ return this.getToken(HiveSqlParser.T_ASC, i);
+ }
+};
+
+
+Create_table_column_consContext.prototype.T_DESC = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_DESC);
+ } else {
+ return this.getToken(HiveSqlParser.T_DESC, i);
+ }
+};
+
+
+Create_table_column_consContext.prototype.T_FOREIGN = function() {
+ return this.getToken(HiveSqlParser.T_FOREIGN, 0);
+};
+
+Create_table_column_consContext.prototype.T_REFERENCES = function() {
+ return this.getToken(HiveSqlParser.T_REFERENCES, 0);
+};
+
+Create_table_column_consContext.prototype.table_name = function() {
+ return this.getTypedRuleContext(Table_nameContext,0);
+};
+
+Create_table_column_consContext.prototype.create_table_fk_action = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Create_table_fk_actionContext);
+ } else {
+ return this.getTypedRuleContext(Create_table_fk_actionContext,i);
+ }
+};
+
+Create_table_column_consContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCreate_table_column_cons(this);
+ }
+};
+
+Create_table_column_consContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCreate_table_column_cons(this);
+ }
+};
+
+Create_table_column_consContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCreate_table_column_cons(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Create_table_column_consContext = Create_table_column_consContext;
+
+HiveSqlParser.prototype.create_table_column_cons = function() {
+
+ var localctx = new Create_table_column_consContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 80, HiveSqlParser.RULE_create_table_column_cons);
+ var _la = 0; // Token type
+ try {
+ this.state = 1020;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case HiveSqlParser.T_PRIMARY:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 963;
+ this.match(HiveSqlParser.T_PRIMARY);
+ this.state = 964;
+ this.match(HiveSqlParser.T_KEY);
+ this.state = 966;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_CLUSTERED) {
+ this.state = 965;
+ this.match(HiveSqlParser.T_CLUSTERED);
+ }
+
+ this.state = 968;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 969;
+ this.ident();
+ this.state = 971;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_ASC || _la===HiveSqlParser.T_DESC) {
+ this.state = 970;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_ASC || _la===HiveSqlParser.T_DESC)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 980;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===HiveSqlParser.T_COMMA) {
+ this.state = 973;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 974;
+ this.ident();
+ this.state = 976;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_ASC || _la===HiveSqlParser.T_DESC) {
+ this.state = 975;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_ASC || _la===HiveSqlParser.T_DESC)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 982;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 983;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ this.state = 985;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_ENABLE) {
+ this.state = 984;
+ this.match(HiveSqlParser.T_ENABLE);
+ }
+
+ this.state = 988;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_WITH) {
+ this.state = 987;
+ this.index_storage_clause();
+ }
+
+ break;
+ case HiveSqlParser.T_FOREIGN:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 990;
+ this.match(HiveSqlParser.T_FOREIGN);
+ this.state = 991;
+ this.match(HiveSqlParser.T_KEY);
+ this.state = 992;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 993;
+ this.ident();
+ this.state = 998;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===HiveSqlParser.T_COMMA) {
+ this.state = 994;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 995;
+ this.ident();
+ this.state = 1000;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 1001;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ this.state = 1002;
+ this.match(HiveSqlParser.T_REFERENCES);
+ this.state = 1003;
+ this.table_name();
+ this.state = 1004;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 1005;
+ this.ident();
+ this.state = 1010;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===HiveSqlParser.T_COMMA) {
+ this.state = 1006;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 1007;
+ this.ident();
+ this.state = 1012;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 1013;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ this.state = 1017;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===HiveSqlParser.T_ON) {
+ this.state = 1014;
+ this.create_table_fk_action();
+ this.state = 1019;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_table_fk_actionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_create_table_fk_action;
+ return this;
+}
+
+Create_table_fk_actionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_table_fk_actionContext.prototype.constructor = Create_table_fk_actionContext;
+
+Create_table_fk_actionContext.prototype.T_ON = function() {
+ return this.getToken(HiveSqlParser.T_ON, 0);
+};
+
+Create_table_fk_actionContext.prototype.T_UPDATE = function() {
+ return this.getToken(HiveSqlParser.T_UPDATE, 0);
+};
+
+Create_table_fk_actionContext.prototype.T_DELETE = function() {
+ return this.getToken(HiveSqlParser.T_DELETE, 0);
+};
+
+Create_table_fk_actionContext.prototype.T_NO = function() {
+ return this.getToken(HiveSqlParser.T_NO, 0);
+};
+
+Create_table_fk_actionContext.prototype.T_ACTION = function() {
+ return this.getToken(HiveSqlParser.T_ACTION, 0);
+};
+
+Create_table_fk_actionContext.prototype.T_RESTRICT = function() {
+ return this.getToken(HiveSqlParser.T_RESTRICT, 0);
+};
+
+Create_table_fk_actionContext.prototype.T_SET = function() {
+ return this.getToken(HiveSqlParser.T_SET, 0);
+};
+
+Create_table_fk_actionContext.prototype.T_NULL = function() {
+ return this.getToken(HiveSqlParser.T_NULL, 0);
+};
+
+Create_table_fk_actionContext.prototype.T_DEFAULT = function() {
+ return this.getToken(HiveSqlParser.T_DEFAULT, 0);
+};
+
+Create_table_fk_actionContext.prototype.T_CASCADE = function() {
+ return this.getToken(HiveSqlParser.T_CASCADE, 0);
+};
+
+Create_table_fk_actionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCreate_table_fk_action(this);
+ }
+};
+
+Create_table_fk_actionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCreate_table_fk_action(this);
+ }
+};
+
+Create_table_fk_actionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCreate_table_fk_action(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Create_table_fk_actionContext = Create_table_fk_actionContext;
+
+HiveSqlParser.prototype.create_table_fk_action = function() {
+
+ var localctx = new Create_table_fk_actionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 82, HiveSqlParser.RULE_create_table_fk_action);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1022;
+ this.match(HiveSqlParser.T_ON);
+ this.state = 1023;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_UPDATE || _la===HiveSqlParser.T_DELETE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 1032;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,80,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 1024;
+ this.match(HiveSqlParser.T_NO);
+ this.state = 1025;
+ this.match(HiveSqlParser.T_ACTION);
+ break;
+
+ case 2:
+ this.state = 1026;
+ this.match(HiveSqlParser.T_RESTRICT);
+ break;
+
+ case 3:
+ this.state = 1027;
+ this.match(HiveSqlParser.T_SET);
+ this.state = 1028;
+ this.match(HiveSqlParser.T_NULL);
+ break;
+
+ case 4:
+ this.state = 1029;
+ this.match(HiveSqlParser.T_SET);
+ this.state = 1030;
+ this.match(HiveSqlParser.T_DEFAULT);
+ break;
+
+ case 5:
+ this.state = 1031;
+ this.match(HiveSqlParser.T_CASCADE);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_table_preoptionsContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_create_table_preoptions;
+ return this;
+}
+
+Create_table_preoptionsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_table_preoptionsContext.prototype.constructor = Create_table_preoptionsContext;
+
+Create_table_preoptionsContext.prototype.create_table_preoptions_item = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Create_table_preoptions_itemContext);
+ } else {
+ return this.getTypedRuleContext(Create_table_preoptions_itemContext,i);
+ }
+};
+
+Create_table_preoptionsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCreate_table_preoptions(this);
+ }
+};
+
+Create_table_preoptionsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCreate_table_preoptions(this);
+ }
+};
+
+Create_table_preoptionsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCreate_table_preoptions(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Create_table_preoptionsContext = Create_table_preoptionsContext;
+
+HiveSqlParser.prototype.create_table_preoptions = function() {
+
+ var localctx = new Create_table_preoptionsContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 84, HiveSqlParser.RULE_create_table_preoptions);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1035;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 1034;
+ this.create_table_preoptions_item();
+ this.state = 1037;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(_la===HiveSqlParser.T_COMMA || _la===HiveSqlParser.T_STORED || _la===HiveSqlParser.T_ROW);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_table_preoptions_itemContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_create_table_preoptions_item;
+ return this;
+}
+
+Create_table_preoptions_itemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_table_preoptions_itemContext.prototype.constructor = Create_table_preoptions_itemContext;
+
+Create_table_preoptions_itemContext.prototype.T_COMMA = function() {
+ return this.getToken(HiveSqlParser.T_COMMA, 0);
+};
+
+Create_table_preoptions_itemContext.prototype.create_table_preoptions_td_item = function() {
+ return this.getTypedRuleContext(Create_table_preoptions_td_itemContext,0);
+};
+
+Create_table_preoptions_itemContext.prototype.create_table_options_hive_item = function() {
+ return this.getTypedRuleContext(Create_table_options_hive_itemContext,0);
+};
+
+Create_table_preoptions_itemContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCreate_table_preoptions_item(this);
+ }
+};
+
+Create_table_preoptions_itemContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCreate_table_preoptions_item(this);
+ }
+};
+
+Create_table_preoptions_itemContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCreate_table_preoptions_item(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Create_table_preoptions_itemContext = Create_table_preoptions_itemContext;
+
+HiveSqlParser.prototype.create_table_preoptions_item = function() {
+
+ var localctx = new Create_table_preoptions_itemContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 86, HiveSqlParser.RULE_create_table_preoptions_item);
+ try {
+ this.state = 1042;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case HiveSqlParser.T_COMMA:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1039;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 1040;
+ this.create_table_preoptions_td_item();
+ break;
+ case HiveSqlParser.T_STORED:
+ case HiveSqlParser.T_ROW:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 1041;
+ this.create_table_options_hive_item();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_table_preoptions_td_itemContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_create_table_preoptions_td_item;
+ return this;
+}
+
+Create_table_preoptions_td_itemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_table_preoptions_td_itemContext.prototype.constructor = Create_table_preoptions_td_itemContext;
+
+Create_table_preoptions_td_itemContext.prototype.T_LOG = function() {
+ return this.getToken(HiveSqlParser.T_LOG, 0);
+};
+
+Create_table_preoptions_td_itemContext.prototype.T_FALLBACK = function() {
+ return this.getToken(HiveSqlParser.T_FALLBACK, 0);
+};
+
+Create_table_preoptions_td_itemContext.prototype.T_NO = function() {
+ return this.getToken(HiveSqlParser.T_NO, 0);
+};
+
+Create_table_preoptions_td_itemContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCreate_table_preoptions_td_item(this);
+ }
+};
+
+Create_table_preoptions_td_itemContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCreate_table_preoptions_td_item(this);
+ }
+};
+
+Create_table_preoptions_td_itemContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCreate_table_preoptions_td_item(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Create_table_preoptions_td_itemContext = Create_table_preoptions_td_itemContext;
+
+HiveSqlParser.prototype.create_table_preoptions_td_item = function() {
+
+ var localctx = new Create_table_preoptions_td_itemContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 88, HiveSqlParser.RULE_create_table_preoptions_td_item);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1045;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_NO) {
+ this.state = 1044;
+ this.match(HiveSqlParser.T_NO);
+ }
+
+ this.state = 1047;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_LOG || _la===HiveSqlParser.T_FALLBACK)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_table_optionsContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_create_table_options;
+ return this;
+}
+
+Create_table_optionsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_table_optionsContext.prototype.constructor = Create_table_optionsContext;
+
+Create_table_optionsContext.prototype.create_table_options_item = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Create_table_options_itemContext);
+ } else {
+ return this.getTypedRuleContext(Create_table_options_itemContext,i);
+ }
+};
+
+Create_table_optionsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCreate_table_options(this);
+ }
+};
+
+Create_table_optionsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCreate_table_options(this);
+ }
+};
+
+Create_table_optionsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCreate_table_options(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Create_table_optionsContext = Create_table_optionsContext;
+
+HiveSqlParser.prototype.create_table_options = function() {
+
+ var localctx = new Create_table_optionsContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 90, HiveSqlParser.RULE_create_table_options);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1050;
+ this._errHandler.sync(this);
+ var _alt = 1;
+ do {
+ switch (_alt) {
+ case 1:
+ this.state = 1049;
+ this.create_table_options_item();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 1052;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,84, this._ctx);
+ } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_table_options_itemContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_create_table_options_item;
+ return this;
+}
+
+Create_table_options_itemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_table_options_itemContext.prototype.constructor = Create_table_options_itemContext;
+
+Create_table_options_itemContext.prototype.T_ON = function() {
+ return this.getToken(HiveSqlParser.T_ON, 0);
+};
+
+Create_table_options_itemContext.prototype.T_COMMIT = function() {
+ return this.getToken(HiveSqlParser.T_COMMIT, 0);
+};
+
+Create_table_options_itemContext.prototype.T_ROWS = function() {
+ return this.getToken(HiveSqlParser.T_ROWS, 0);
+};
+
+Create_table_options_itemContext.prototype.T_DELETE = function() {
+ return this.getToken(HiveSqlParser.T_DELETE, 0);
+};
+
+Create_table_options_itemContext.prototype.T_PRESERVE = function() {
+ return this.getToken(HiveSqlParser.T_PRESERVE, 0);
+};
+
+Create_table_options_itemContext.prototype.create_table_options_ora_item = function() {
+ return this.getTypedRuleContext(Create_table_options_ora_itemContext,0);
+};
+
+Create_table_options_itemContext.prototype.create_table_options_db2_item = function() {
+ return this.getTypedRuleContext(Create_table_options_db2_itemContext,0);
+};
+
+Create_table_options_itemContext.prototype.create_table_options_td_item = function() {
+ return this.getTypedRuleContext(Create_table_options_td_itemContext,0);
+};
+
+Create_table_options_itemContext.prototype.create_table_options_hive_item = function() {
+ return this.getTypedRuleContext(Create_table_options_hive_itemContext,0);
+};
+
+Create_table_options_itemContext.prototype.create_table_options_mssql_item = function() {
+ return this.getTypedRuleContext(Create_table_options_mssql_itemContext,0);
+};
+
+Create_table_options_itemContext.prototype.create_table_options_mysql_item = function() {
+ return this.getTypedRuleContext(Create_table_options_mysql_itemContext,0);
+};
+
+Create_table_options_itemContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCreate_table_options_item(this);
+ }
+};
+
+Create_table_options_itemContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCreate_table_options_item(this);
+ }
+};
+
+Create_table_options_itemContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCreate_table_options_item(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Create_table_options_itemContext = Create_table_options_itemContext;
+
+HiveSqlParser.prototype.create_table_options_item = function() {
+
+ var localctx = new Create_table_options_itemContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 92, HiveSqlParser.RULE_create_table_options_item);
+ var _la = 0; // Token type
+ try {
+ this.state = 1064;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,85,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1054;
+ this.match(HiveSqlParser.T_ON);
+ this.state = 1055;
+ this.match(HiveSqlParser.T_COMMIT);
+ this.state = 1056;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_DELETE || _la===HiveSqlParser.T_PRESERVE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 1057;
+ this.match(HiveSqlParser.T_ROWS);
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 1058;
+ this.create_table_options_ora_item();
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 1059;
+ this.create_table_options_db2_item();
+ break;
+
+ case 4:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 1060;
+ this.create_table_options_td_item();
+ break;
+
+ case 5:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 1061;
+ this.create_table_options_hive_item();
+ break;
+
+ case 6:
+ this.enterOuterAlt(localctx, 6);
+ this.state = 1062;
+ this.create_table_options_mssql_item();
+ break;
+
+ case 7:
+ this.enterOuterAlt(localctx, 7);
+ this.state = 1063;
+ this.create_table_options_mysql_item();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_table_options_ora_itemContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_create_table_options_ora_item;
+ return this;
+}
+
+Create_table_options_ora_itemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_table_options_ora_itemContext.prototype.constructor = Create_table_options_ora_itemContext;
+
+Create_table_options_ora_itemContext.prototype.T_SEGMENT = function() {
+ return this.getToken(HiveSqlParser.T_SEGMENT, 0);
+};
+
+Create_table_options_ora_itemContext.prototype.T_CREATION = function() {
+ return this.getToken(HiveSqlParser.T_CREATION, 0);
+};
+
+Create_table_options_ora_itemContext.prototype.T_IMMEDIATE = function() {
+ return this.getToken(HiveSqlParser.T_IMMEDIATE, 0);
+};
+
+Create_table_options_ora_itemContext.prototype.T_DEFERRED = function() {
+ return this.getToken(HiveSqlParser.T_DEFERRED, 0);
+};
+
+Create_table_options_ora_itemContext.prototype.L_INT = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.L_INT);
+ } else {
+ return this.getToken(HiveSqlParser.L_INT, i);
+ }
+};
+
+
+Create_table_options_ora_itemContext.prototype.T_PCTFREE = function() {
+ return this.getToken(HiveSqlParser.T_PCTFREE, 0);
+};
+
+Create_table_options_ora_itemContext.prototype.T_PCTUSED = function() {
+ return this.getToken(HiveSqlParser.T_PCTUSED, 0);
+};
+
+Create_table_options_ora_itemContext.prototype.T_INITRANS = function() {
+ return this.getToken(HiveSqlParser.T_INITRANS, 0);
+};
+
+Create_table_options_ora_itemContext.prototype.T_MAXTRANS = function() {
+ return this.getToken(HiveSqlParser.T_MAXTRANS, 0);
+};
+
+Create_table_options_ora_itemContext.prototype.T_NOCOMPRESS = function() {
+ return this.getToken(HiveSqlParser.T_NOCOMPRESS, 0);
+};
+
+Create_table_options_ora_itemContext.prototype.T_LOGGING = function() {
+ return this.getToken(HiveSqlParser.T_LOGGING, 0);
+};
+
+Create_table_options_ora_itemContext.prototype.T_NOLOGGING = function() {
+ return this.getToken(HiveSqlParser.T_NOLOGGING, 0);
+};
+
+Create_table_options_ora_itemContext.prototype.T_STORAGE = function() {
+ return this.getToken(HiveSqlParser.T_STORAGE, 0);
+};
+
+Create_table_options_ora_itemContext.prototype.T_OPEN_P = function() {
+ return this.getToken(HiveSqlParser.T_OPEN_P, 0);
+};
+
+Create_table_options_ora_itemContext.prototype.T_CLOSE_P = function() {
+ return this.getToken(HiveSqlParser.T_CLOSE_P, 0);
+};
+
+Create_table_options_ora_itemContext.prototype.ident = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(IdentContext);
+ } else {
+ return this.getTypedRuleContext(IdentContext,i);
+ }
+};
+
+Create_table_options_ora_itemContext.prototype.T_TABLESPACE = function() {
+ return this.getToken(HiveSqlParser.T_TABLESPACE, 0);
+};
+
+Create_table_options_ora_itemContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCreate_table_options_ora_item(this);
+ }
+};
+
+Create_table_options_ora_itemContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCreate_table_options_ora_item(this);
+ }
+};
+
+Create_table_options_ora_itemContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCreate_table_options_ora_item(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Create_table_options_ora_itemContext = Create_table_options_ora_itemContext;
+
+HiveSqlParser.prototype.create_table_options_ora_item = function() {
+
+ var localctx = new Create_table_options_ora_itemContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 94, HiveSqlParser.RULE_create_table_options_ora_item);
+ var _la = 0; // Token type
+ try {
+ this.state = 1084;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case HiveSqlParser.T_SEGMENT:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1066;
+ this.match(HiveSqlParser.T_SEGMENT);
+ this.state = 1067;
+ this.match(HiveSqlParser.T_CREATION);
+ this.state = 1068;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_IMMEDIATE || _la===HiveSqlParser.T_DEFERRED)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+ case HiveSqlParser.T_PCTFREE:
+ case HiveSqlParser.T_PCTUSED:
+ case HiveSqlParser.T_INITRANS:
+ case HiveSqlParser.T_MAXTRANS:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 1069;
+ _la = this._input.LA(1);
+ if(!(((((_la - 96)) & ~0x1f) == 0 && ((1 << (_la - 96)) & ((1 << (HiveSqlParser.T_PCTFREE - 96)) | (1 << (HiveSqlParser.T_PCTUSED - 96)) | (1 << (HiveSqlParser.T_INITRANS - 96)) | (1 << (HiveSqlParser.T_MAXTRANS - 96)))) !== 0))) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 1070;
+ this.match(HiveSqlParser.L_INT);
+ break;
+ case HiveSqlParser.T_NOCOMPRESS:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 1071;
+ this.match(HiveSqlParser.T_NOCOMPRESS);
+ break;
+ case HiveSqlParser.T_LOGGING:
+ case HiveSqlParser.T_NOLOGGING:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 1072;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_LOGGING || _la===HiveSqlParser.T_NOLOGGING)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+ case HiveSqlParser.T_STORAGE:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 1073;
+ this.match(HiveSqlParser.T_STORAGE);
+ this.state = 1074;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 1077;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 1077;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case HiveSqlParser.T__8:
+ case HiveSqlParser.T_GO:
+ case HiveSqlParser.T_BEGIN:
+ case HiveSqlParser.T_EXCEPTION:
+ case HiveSqlParser.L_ID:
+ case HiveSqlParser.T_THEN:
+ case HiveSqlParser.T_SET:
+ case HiveSqlParser.T_ALLOCATE:
+ case HiveSqlParser.T_CURSOR:
+ case HiveSqlParser.T_FOR:
+ case HiveSqlParser.T_RESULT:
+ case HiveSqlParser.T_PROCEDURE:
+ case HiveSqlParser.T_ASSOCIATE:
+ case HiveSqlParser.T_LOCATOR:
+ case HiveSqlParser.T_LOCATORS:
+ case HiveSqlParser.T_WITH:
+ case HiveSqlParser.T_TRANSACTION:
+ case HiveSqlParser.T_BREAK:
+ case HiveSqlParser.T_CALL:
+ case HiveSqlParser.T_DECLARE:
+ case HiveSqlParser.T_AS:
+ case HiveSqlParser.T_CONSTANT:
+ case HiveSqlParser.T_CONDITION:
+ case HiveSqlParser.T_IS:
+ case HiveSqlParser.T_RETURN:
+ case HiveSqlParser.T_ONLY:
+ case HiveSqlParser.T_TO:
+ case HiveSqlParser.T_CALLER:
+ case HiveSqlParser.T_CLIENT:
+ case HiveSqlParser.T_WITHOUT:
+ case HiveSqlParser.T_CONTINUE:
+ case HiveSqlParser.T_EXIT:
+ case HiveSqlParser.T_HANDLER:
+ case HiveSqlParser.T_SQLEXCEPTION:
+ case HiveSqlParser.T_SQLWARNING:
+ case HiveSqlParser.T_NOT:
+ case HiveSqlParser.T_FOUND:
+ case HiveSqlParser.T_GLOBAL:
+ case HiveSqlParser.T_TEMPORARY:
+ case HiveSqlParser.T_TABLE:
+ case HiveSqlParser.T_CREATE:
+ case HiveSqlParser.T_IF:
+ case HiveSqlParser.T_EXISTS:
+ case HiveSqlParser.T_LOCAL:
+ case HiveSqlParser.T_MULTISET:
+ case HiveSqlParser.T_VOLATILE:
+ case HiveSqlParser.T_LIKE:
+ case HiveSqlParser.T_CONSTRAINT:
+ case HiveSqlParser.T_PRIMARY:
+ case HiveSqlParser.T_KEY:
+ case HiveSqlParser.T_UNIQUE:
+ case HiveSqlParser.T_REFERENCES:
+ case HiveSqlParser.T_IDENTITY:
+ case HiveSqlParser.T_AUTO_INCREMENT:
+ case HiveSqlParser.T_ENABLE:
+ case HiveSqlParser.T_CLUSTERED:
+ case HiveSqlParser.T_ASC:
+ case HiveSqlParser.T_DESC:
+ case HiveSqlParser.T_FOREIGN:
+ case HiveSqlParser.T_ON:
+ case HiveSqlParser.T_UPDATE:
+ case HiveSqlParser.T_DELETE:
+ case HiveSqlParser.T_NO:
+ case HiveSqlParser.T_ACTION:
+ case HiveSqlParser.T_RESTRICT:
+ case HiveSqlParser.T_DEFAULT:
+ case HiveSqlParser.T_CASCADE:
+ case HiveSqlParser.T_LOG:
+ case HiveSqlParser.T_FALLBACK:
+ case HiveSqlParser.T_COMMIT:
+ case HiveSqlParser.T_PRESERVE:
+ case HiveSqlParser.T_ROWS:
+ case HiveSqlParser.T_SEGMENT:
+ case HiveSqlParser.T_CREATION:
+ case HiveSqlParser.T_IMMEDIATE:
+ case HiveSqlParser.T_DEFERRED:
+ case HiveSqlParser.T_PCTFREE:
+ case HiveSqlParser.T_PCTUSED:
+ case HiveSqlParser.T_INITRANS:
+ case HiveSqlParser.T_MAXTRANS:
+ case HiveSqlParser.T_NOCOMPRESS:
+ case HiveSqlParser.T_LOGGING:
+ case HiveSqlParser.T_NOLOGGING:
+ case HiveSqlParser.T_STORAGE:
+ case HiveSqlParser.T_TABLESPACE:
+ case HiveSqlParser.T_INDEX:
+ case HiveSqlParser.T_IN:
+ case HiveSqlParser.T_REPLACE:
+ case HiveSqlParser.T_DISTRIBUTE:
+ case HiveSqlParser.T_BY:
+ case HiveSqlParser.T_HASH:
+ case HiveSqlParser.T_LOGGED:
+ case HiveSqlParser.T_COMPRESS:
+ case HiveSqlParser.T_YES:
+ case HiveSqlParser.T_DEFINITION:
+ case HiveSqlParser.T_DROP:
+ case HiveSqlParser.T_DATA:
+ case HiveSqlParser.T_STORED:
+ case HiveSqlParser.T_ROW:
+ case HiveSqlParser.T_FORMAT:
+ case HiveSqlParser.T_DELIMITED:
+ case HiveSqlParser.T_FIELDS:
+ case HiveSqlParser.T_TERMINATED:
+ case HiveSqlParser.T_ESCAPED:
+ case HiveSqlParser.T_COLLECTION:
+ case HiveSqlParser.T_ITEMS:
+ case HiveSqlParser.T_MAP:
+ case HiveSqlParser.T_KEYS:
+ case HiveSqlParser.T_LINES:
+ case HiveSqlParser.T_DEFINED:
+ case HiveSqlParser.T_TEXTIMAGE_ON:
+ case HiveSqlParser.T_COMMENT:
+ case HiveSqlParser.T_CHARACTER:
+ case HiveSqlParser.T_CHARSET:
+ case HiveSqlParser.T_ENGINE:
+ case HiveSqlParser.T_ALTER:
+ case HiveSqlParser.T_ADD2:
+ case HiveSqlParser.T_CHAR:
+ case HiveSqlParser.T_BIGINT:
+ case HiveSqlParser.T_BINARY_DOUBLE:
+ case HiveSqlParser.T_BINARY_FLOAT:
+ case HiveSqlParser.T_BIT:
+ case HiveSqlParser.T_DATE:
+ case HiveSqlParser.T_DATETIME:
+ case HiveSqlParser.T_DEC:
+ case HiveSqlParser.T_DECIMAL:
+ case HiveSqlParser.T_DOUBLE:
+ case HiveSqlParser.T_PRECISION:
+ case HiveSqlParser.T_FLOAT:
+ case HiveSqlParser.T_INT:
+ case HiveSqlParser.T_INT2:
+ case HiveSqlParser.T_INT4:
+ case HiveSqlParser.T_INT8:
+ case HiveSqlParser.T_INTEGER:
+ case HiveSqlParser.T_NCHAR:
+ case HiveSqlParser.T_NVARCHAR:
+ case HiveSqlParser.T_NUMBER:
+ case HiveSqlParser.T_NUMERIC:
+ case HiveSqlParser.T_REAL:
+ case HiveSqlParser.T_RESULT_SET_LOCATOR:
+ case HiveSqlParser.T_VARYING:
+ case HiveSqlParser.T_SIMPLE_FLOAT:
+ case HiveSqlParser.T_SIMPLE_DOUBLE:
+ case HiveSqlParser.T_SMALLINT:
+ case HiveSqlParser.T_SMALLDATETIME:
+ case HiveSqlParser.T_STRING:
+ case HiveSqlParser.T_SYS_REFCURSOR:
+ case HiveSqlParser.T_TIMESTAMP:
+ case HiveSqlParser.T_VARCHAR:
+ case HiveSqlParser.T_VARCHAR2:
+ case HiveSqlParser.T_XML:
+ case HiveSqlParser.T_MAX:
+ case HiveSqlParser.T_BYTE:
+ case HiveSqlParser.T_CASESPECIFIC:
+ case HiveSqlParser.T_CS:
+ case HiveSqlParser.T_DATABASE:
+ case HiveSqlParser.T_SCHEMA:
+ case HiveSqlParser.T_LOCATION:
+ case HiveSqlParser.T_OR:
+ case HiveSqlParser.T_FUNCTION:
+ case HiveSqlParser.T_RETURNS:
+ case HiveSqlParser.T_PACKAGE:
+ case HiveSqlParser.T_PROC:
+ case HiveSqlParser.T_BODY:
+ case HiveSqlParser.T_OUT:
+ case HiveSqlParser.T_INOUT:
+ case HiveSqlParser.T_LANGUAGE:
+ case HiveSqlParser.T_SQL:
+ case HiveSqlParser.T_SECURITY:
+ case HiveSqlParser.T_CREATOR:
+ case HiveSqlParser.T_DEFINER:
+ case HiveSqlParser.T_INVOKER:
+ case HiveSqlParser.T_OWNER:
+ case HiveSqlParser.T_DYNAMIC:
+ case HiveSqlParser.T_SETS:
+ case HiveSqlParser.T_EXEC:
+ case HiveSqlParser.T_EXECUTE:
+ case HiveSqlParser.T_INTO:
+ case HiveSqlParser.T_INCLUDE:
+ case HiveSqlParser.T_INSERT:
+ case HiveSqlParser.T_OVERWRITE:
+ case HiveSqlParser.T_VALUES:
+ case HiveSqlParser.T_DIRECTORY:
+ case HiveSqlParser.T_GET:
+ case HiveSqlParser.T_DIAGNOSTICS:
+ case HiveSqlParser.T_MESSAGE_TEXT:
+ case HiveSqlParser.T_ROW_COUNT:
+ case HiveSqlParser.T_GRANT:
+ case HiveSqlParser.T_ROLE:
+ case HiveSqlParser.T_LEAVE:
+ case HiveSqlParser.T_OBJECT:
+ case HiveSqlParser.T_AT:
+ case HiveSqlParser.T_OPEN:
+ case HiveSqlParser.T_FETCH:
+ case HiveSqlParser.T_FROM:
+ case HiveSqlParser.T_COLLECT:
+ case HiveSqlParser.T_STATISTICS:
+ case HiveSqlParser.T_STATS:
+ case HiveSqlParser.T_COLUMN:
+ case HiveSqlParser.T_CLOSE:
+ case HiveSqlParser.T_CMP:
+ case HiveSqlParser.T_SUM:
+ case HiveSqlParser.T_COPY:
+ case HiveSqlParser.T_HDFS:
+ case HiveSqlParser.T_BATCHSIZE:
+ case HiveSqlParser.T_DELIMITER:
+ case HiveSqlParser.T_SQLINSERT:
+ case HiveSqlParser.T_IGNORE:
+ case HiveSqlParser.T_WORK:
+ case HiveSqlParser.T_PRINT:
+ case HiveSqlParser.T_QUIT:
+ case HiveSqlParser.T_RAISE:
+ case HiveSqlParser.T_RESIGNAL:
+ case HiveSqlParser.T_SQLSTATE:
+ case HiveSqlParser.T_VALUE:
+ case HiveSqlParser.T_ROLLBACK:
+ case HiveSqlParser.T_CURRENT:
+ case HiveSqlParser.T_CURRENT_SCHEMA:
+ case HiveSqlParser.T_ANSI_NULLS:
+ case HiveSqlParser.T_ANSI_PADDING:
+ case HiveSqlParser.T_NOCOUNT:
+ case HiveSqlParser.T_QUOTED_IDENTIFIER:
+ case HiveSqlParser.T_XACT_ABORT:
+ case HiveSqlParser.T_OFF:
+ case HiveSqlParser.T_QUERY_BAND:
+ case HiveSqlParser.T_NONE:
+ case HiveSqlParser.T_SESSION:
+ case HiveSqlParser.T_SIGNAL:
+ case HiveSqlParser.T_SUMMARY:
+ case HiveSqlParser.T_TOP:
+ case HiveSqlParser.T_LIMIT:
+ case HiveSqlParser.T_TRUNCATE:
+ case HiveSqlParser.T_USE:
+ case HiveSqlParser.T_WHILE:
+ case HiveSqlParser.T_DO:
+ case HiveSqlParser.T_LOOP:
+ case HiveSqlParser.T_REVERSE:
+ case HiveSqlParser.T_STEP:
+ case HiveSqlParser.T_USING:
+ case HiveSqlParser.T_ALL:
+ case HiveSqlParser.T_EXCEPT:
+ case HiveSqlParser.T_INTERSECT:
+ case HiveSqlParser.T_SELECT:
+ case HiveSqlParser.T_SEL:
+ case HiveSqlParser.T_DISTINCT:
+ case HiveSqlParser.T_TITLE:
+ case HiveSqlParser.T_INNER:
+ case HiveSqlParser.T_JOIN:
+ case HiveSqlParser.T_LEFT:
+ case HiveSqlParser.T_RIGHT:
+ case HiveSqlParser.T_FULL:
+ case HiveSqlParser.T_OUTER:
+ case HiveSqlParser.T_GROUP:
+ case HiveSqlParser.T_HAVING:
+ case HiveSqlParser.T_QUALIFY:
+ case HiveSqlParser.T_ORDER:
+ case HiveSqlParser.T_RR:
+ case HiveSqlParser.T_RS:
+ case HiveSqlParser.T_UR:
+ case HiveSqlParser.T_AND:
+ case HiveSqlParser.T_KEEP:
+ case HiveSqlParser.T_EXCLUSIVE:
+ case HiveSqlParser.T_SHARE:
+ case HiveSqlParser.T_LOCKS:
+ case HiveSqlParser.T_MERGE:
+ case HiveSqlParser.T_MATCHED:
+ case HiveSqlParser.T_DESCRIBE:
+ case HiveSqlParser.T_BETWEEN:
+ case HiveSqlParser.T_RLIKE:
+ case HiveSqlParser.T_REGEXP:
+ case HiveSqlParser.T_INTERVAL:
+ case HiveSqlParser.T_DAY:
+ case HiveSqlParser.T_DAYS:
+ case HiveSqlParser.T_MICROSECOND:
+ case HiveSqlParser.T_MICROSECONDS:
+ case HiveSqlParser.T_SECOND:
+ case HiveSqlParser.T_SECONDS:
+ case HiveSqlParser.T_CONCAT:
+ case HiveSqlParser.T_CASE:
+ case HiveSqlParser.T_ISOPEN:
+ case HiveSqlParser.T_NOTFOUND:
+ case HiveSqlParser.T_AVG:
+ case HiveSqlParser.T_COUNT:
+ case HiveSqlParser.T_COUNT_BIG:
+ case HiveSqlParser.T_CUME_DIST:
+ case HiveSqlParser.T_DENSE_RANK:
+ case HiveSqlParser.T_FIRST_VALUE:
+ case HiveSqlParser.T_LAG:
+ case HiveSqlParser.T_LAST_VALUE:
+ case HiveSqlParser.T_LEAD:
+ case HiveSqlParser.T_MIN:
+ case HiveSqlParser.T_RANK:
+ case HiveSqlParser.T_ROW_NUMBER:
+ case HiveSqlParser.T_STDEV:
+ case HiveSqlParser.T_VAR:
+ case HiveSqlParser.T_VARIANCE:
+ case HiveSqlParser.T_OVER:
+ case HiveSqlParser.T_PARTITION:
+ case HiveSqlParser.T_ACTIVITY_COUNT:
+ case HiveSqlParser.T_CAST:
+ case HiveSqlParser.T_CURRENT_DATE:
+ case HiveSqlParser.T_CURRENT_TIMESTAMP:
+ case HiveSqlParser.T_CURRENT_USER:
+ case HiveSqlParser.T_USER:
+ case HiveSqlParser.T_PART_COUNT:
+ case HiveSqlParser.T_PART_LOC:
+ case HiveSqlParser.T_TRIM:
+ case HiveSqlParser.T_SUBSTRING:
+ case HiveSqlParser.T_SYSDATE:
+ case HiveSqlParser.T_HIVE:
+ case HiveSqlParser.T_HOST:
+ case HiveSqlParser.T_TRUE:
+ case HiveSqlParser.T_FALSE:
+ case HiveSqlParser.T_DIR:
+ case HiveSqlParser.T_FILE:
+ case HiveSqlParser.T_FILES:
+ case HiveSqlParser.T_NEW:
+ case HiveSqlParser.T_PWD:
+ case HiveSqlParser.T_SESSIONS:
+ case HiveSqlParser.T_SUBDIR:
+ this.state = 1075;
+ this.ident();
+ break;
+ case HiveSqlParser.L_INT:
+ this.state = 1076;
+ this.match(HiveSqlParser.L_INT);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 1079;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while((((_la) & ~0x1f) == 0 && ((1 << _la) & ((1 << HiveSqlParser.T__8) | (1 << HiveSqlParser.T_GO) | (1 << HiveSqlParser.T_BEGIN) | (1 << HiveSqlParser.T_EXCEPTION) | (1 << HiveSqlParser.L_ID) | (1 << HiveSqlParser.T_THEN) | (1 << HiveSqlParser.T_SET) | (1 << HiveSqlParser.T_ALLOCATE) | (1 << HiveSqlParser.T_CURSOR) | (1 << HiveSqlParser.T_FOR) | (1 << HiveSqlParser.T_RESULT) | (1 << HiveSqlParser.T_PROCEDURE) | (1 << HiveSqlParser.T_ASSOCIATE))) !== 0) || ((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (HiveSqlParser.T_LOCATOR - 32)) | (1 << (HiveSqlParser.T_LOCATORS - 32)) | (1 << (HiveSqlParser.T_WITH - 32)) | (1 << (HiveSqlParser.T_TRANSACTION - 32)) | (1 << (HiveSqlParser.T_BREAK - 32)) | (1 << (HiveSqlParser.T_CALL - 32)) | (1 << (HiveSqlParser.T_DECLARE - 32)) | (1 << (HiveSqlParser.T_AS - 32)) | (1 << (HiveSqlParser.T_CONSTANT - 32)) | (1 << (HiveSqlParser.T_CONDITION - 32)) | (1 << (HiveSqlParser.T_IS - 32)) | (1 << (HiveSqlParser.T_RETURN - 32)) | (1 << (HiveSqlParser.T_ONLY - 32)) | (1 << (HiveSqlParser.T_TO - 32)) | (1 << (HiveSqlParser.T_CALLER - 32)) | (1 << (HiveSqlParser.T_CLIENT - 32)) | (1 << (HiveSqlParser.T_WITHOUT - 32)) | (1 << (HiveSqlParser.T_CONTINUE - 32)) | (1 << (HiveSqlParser.T_EXIT - 32)) | (1 << (HiveSqlParser.T_HANDLER - 32)) | (1 << (HiveSqlParser.T_SQLEXCEPTION - 32)) | (1 << (HiveSqlParser.T_SQLWARNING - 32)) | (1 << (HiveSqlParser.T_NOT - 32)) | (1 << (HiveSqlParser.T_FOUND - 32)) | (1 << (HiveSqlParser.T_GLOBAL - 32)) | (1 << (HiveSqlParser.T_TEMPORARY - 32)) | (1 << (HiveSqlParser.T_TABLE - 32)) | (1 << (HiveSqlParser.T_CREATE - 32)) | (1 << (HiveSqlParser.T_IF - 32)) | (1 << (HiveSqlParser.T_EXISTS - 32)) | (1 << (HiveSqlParser.T_LOCAL - 32)) | (1 << (HiveSqlParser.T_MULTISET - 32)))) !== 0) || ((((_la - 64)) & ~0x1f) == 0 && ((1 << (_la - 64)) & ((1 << (HiveSqlParser.T_VOLATILE - 64)) | (1 << (HiveSqlParser.T_LIKE - 64)) | (1 << (HiveSqlParser.T_CONSTRAINT - 64)) | (1 << (HiveSqlParser.T_PRIMARY - 64)) | (1 << (HiveSqlParser.T_KEY - 64)) | (1 << (HiveSqlParser.T_UNIQUE - 64)) | (1 << (HiveSqlParser.T_REFERENCES - 64)) | (1 << (HiveSqlParser.T_IDENTITY - 64)) | (1 << (HiveSqlParser.L_INT - 64)) | (1 << (HiveSqlParser.T_AUTO_INCREMENT - 64)) | (1 << (HiveSqlParser.T_ENABLE - 64)) | (1 << (HiveSqlParser.T_CLUSTERED - 64)) | (1 << (HiveSqlParser.T_ASC - 64)) | (1 << (HiveSqlParser.T_DESC - 64)) | (1 << (HiveSqlParser.T_FOREIGN - 64)) | (1 << (HiveSqlParser.T_ON - 64)) | (1 << (HiveSqlParser.T_UPDATE - 64)) | (1 << (HiveSqlParser.T_DELETE - 64)) | (1 << (HiveSqlParser.T_NO - 64)) | (1 << (HiveSqlParser.T_ACTION - 64)) | (1 << (HiveSqlParser.T_RESTRICT - 64)) | (1 << (HiveSqlParser.T_DEFAULT - 64)) | (1 << (HiveSqlParser.T_CASCADE - 64)) | (1 << (HiveSqlParser.T_LOG - 64)) | (1 << (HiveSqlParser.T_FALLBACK - 64)) | (1 << (HiveSqlParser.T_COMMIT - 64)) | (1 << (HiveSqlParser.T_PRESERVE - 64)) | (1 << (HiveSqlParser.T_ROWS - 64)) | (1 << (HiveSqlParser.T_SEGMENT - 64)) | (1 << (HiveSqlParser.T_CREATION - 64)) | (1 << (HiveSqlParser.T_IMMEDIATE - 64)) | (1 << (HiveSqlParser.T_DEFERRED - 64)))) !== 0) || ((((_la - 96)) & ~0x1f) == 0 && ((1 << (_la - 96)) & ((1 << (HiveSqlParser.T_PCTFREE - 96)) | (1 << (HiveSqlParser.T_PCTUSED - 96)) | (1 << (HiveSqlParser.T_INITRANS - 96)) | (1 << (HiveSqlParser.T_MAXTRANS - 96)) | (1 << (HiveSqlParser.T_NOCOMPRESS - 96)) | (1 << (HiveSqlParser.T_LOGGING - 96)) | (1 << (HiveSqlParser.T_NOLOGGING - 96)) | (1 << (HiveSqlParser.T_STORAGE - 96)) | (1 << (HiveSqlParser.T_TABLESPACE - 96)) | (1 << (HiveSqlParser.T_INDEX - 96)) | (1 << (HiveSqlParser.T_IN - 96)) | (1 << (HiveSqlParser.T_REPLACE - 96)) | (1 << (HiveSqlParser.T_DISTRIBUTE - 96)) | (1 << (HiveSqlParser.T_BY - 96)) | (1 << (HiveSqlParser.T_HASH - 96)) | (1 << (HiveSqlParser.T_LOGGED - 96)) | (1 << (HiveSqlParser.T_COMPRESS - 96)) | (1 << (HiveSqlParser.T_YES - 96)) | (1 << (HiveSqlParser.T_DEFINITION - 96)) | (1 << (HiveSqlParser.T_DROP - 96)) | (1 << (HiveSqlParser.T_DATA - 96)) | (1 << (HiveSqlParser.T_STORED - 96)) | (1 << (HiveSqlParser.T_ROW - 96)) | (1 << (HiveSqlParser.T_FORMAT - 96)) | (1 << (HiveSqlParser.T_DELIMITED - 96)) | (1 << (HiveSqlParser.T_FIELDS - 96)) | (1 << (HiveSqlParser.T_TERMINATED - 96)) | (1 << (HiveSqlParser.T_ESCAPED - 96)) | (1 << (HiveSqlParser.T_COLLECTION - 96)) | (1 << (HiveSqlParser.T_ITEMS - 96)) | (1 << (HiveSqlParser.T_MAP - 96)) | (1 << (HiveSqlParser.T_KEYS - 96)))) !== 0) || ((((_la - 128)) & ~0x1f) == 0 && ((1 << (_la - 128)) & ((1 << (HiveSqlParser.T_LINES - 128)) | (1 << (HiveSqlParser.T_DEFINED - 128)) | (1 << (HiveSqlParser.T_TEXTIMAGE_ON - 128)) | (1 << (HiveSqlParser.T_COMMENT - 128)) | (1 << (HiveSqlParser.T_CHARACTER - 128)) | (1 << (HiveSqlParser.T_CHARSET - 128)) | (1 << (HiveSqlParser.T_ENGINE - 128)) | (1 << (HiveSqlParser.T_ALTER - 128)) | (1 << (HiveSqlParser.T_ADD2 - 128)) | (1 << (HiveSqlParser.T_CHAR - 128)) | (1 << (HiveSqlParser.T_BIGINT - 128)) | (1 << (HiveSqlParser.T_BINARY_DOUBLE - 128)) | (1 << (HiveSqlParser.T_BINARY_FLOAT - 128)) | (1 << (HiveSqlParser.T_BIT - 128)) | (1 << (HiveSqlParser.T_DATE - 128)) | (1 << (HiveSqlParser.T_DATETIME - 128)) | (1 << (HiveSqlParser.T_DEC - 128)) | (1 << (HiveSqlParser.T_DECIMAL - 128)) | (1 << (HiveSqlParser.T_DOUBLE - 128)) | (1 << (HiveSqlParser.T_PRECISION - 128)) | (1 << (HiveSqlParser.T_FLOAT - 128)) | (1 << (HiveSqlParser.T_INT - 128)) | (1 << (HiveSqlParser.T_INT2 - 128)) | (1 << (HiveSqlParser.T_INT4 - 128)) | (1 << (HiveSqlParser.T_INT8 - 128)) | (1 << (HiveSqlParser.T_INTEGER - 128)) | (1 << (HiveSqlParser.T_NCHAR - 128)) | (1 << (HiveSqlParser.T_NVARCHAR - 128)) | (1 << (HiveSqlParser.T_NUMBER - 128)) | (1 << (HiveSqlParser.T_NUMERIC - 128)))) !== 0) || ((((_la - 160)) & ~0x1f) == 0 && ((1 << (_la - 160)) & ((1 << (HiveSqlParser.T_REAL - 160)) | (1 << (HiveSqlParser.T_RESULT_SET_LOCATOR - 160)) | (1 << (HiveSqlParser.T_VARYING - 160)) | (1 << (HiveSqlParser.T_SIMPLE_FLOAT - 160)) | (1 << (HiveSqlParser.T_SIMPLE_DOUBLE - 160)) | (1 << (HiveSqlParser.T_SMALLINT - 160)) | (1 << (HiveSqlParser.T_SMALLDATETIME - 160)) | (1 << (HiveSqlParser.T_STRING - 160)) | (1 << (HiveSqlParser.T_SYS_REFCURSOR - 160)) | (1 << (HiveSqlParser.T_TIMESTAMP - 160)) | (1 << (HiveSqlParser.T_VARCHAR - 160)) | (1 << (HiveSqlParser.T_VARCHAR2 - 160)) | (1 << (HiveSqlParser.T_XML - 160)) | (1 << (HiveSqlParser.T_MAX - 160)) | (1 << (HiveSqlParser.T_BYTE - 160)) | (1 << (HiveSqlParser.T_CASESPECIFIC - 160)) | (1 << (HiveSqlParser.T_CS - 160)) | (1 << (HiveSqlParser.T_DATABASE - 160)) | (1 << (HiveSqlParser.T_SCHEMA - 160)) | (1 << (HiveSqlParser.T_LOCATION - 160)) | (1 << (HiveSqlParser.T_OR - 160)) | (1 << (HiveSqlParser.T_FUNCTION - 160)) | (1 << (HiveSqlParser.T_RETURNS - 160)) | (1 << (HiveSqlParser.T_PACKAGE - 160)) | (1 << (HiveSqlParser.T_PROC - 160)) | (1 << (HiveSqlParser.T_BODY - 160)) | (1 << (HiveSqlParser.T_OUT - 160)) | (1 << (HiveSqlParser.T_INOUT - 160)))) !== 0) || ((((_la - 192)) & ~0x1f) == 0 && ((1 << (_la - 192)) & ((1 << (HiveSqlParser.T_LANGUAGE - 192)) | (1 << (HiveSqlParser.T_SQL - 192)) | (1 << (HiveSqlParser.T_SECURITY - 192)) | (1 << (HiveSqlParser.T_CREATOR - 192)) | (1 << (HiveSqlParser.T_DEFINER - 192)) | (1 << (HiveSqlParser.T_INVOKER - 192)) | (1 << (HiveSqlParser.T_OWNER - 192)) | (1 << (HiveSqlParser.T_DYNAMIC - 192)) | (1 << (HiveSqlParser.T_SETS - 192)) | (1 << (HiveSqlParser.T_EXEC - 192)) | (1 << (HiveSqlParser.T_EXECUTE - 192)) | (1 << (HiveSqlParser.T_INTO - 192)) | (1 << (HiveSqlParser.T_INCLUDE - 192)) | (1 << (HiveSqlParser.T_INSERT - 192)) | (1 << (HiveSqlParser.T_OVERWRITE - 192)) | (1 << (HiveSqlParser.T_VALUES - 192)) | (1 << (HiveSqlParser.T_DIRECTORY - 192)) | (1 << (HiveSqlParser.T_GET - 192)) | (1 << (HiveSqlParser.T_DIAGNOSTICS - 192)) | (1 << (HiveSqlParser.T_MESSAGE_TEXT - 192)) | (1 << (HiveSqlParser.T_ROW_COUNT - 192)) | (1 << (HiveSqlParser.T_GRANT - 192)) | (1 << (HiveSqlParser.T_ROLE - 192)) | (1 << (HiveSqlParser.T_LEAVE - 192)) | (1 << (HiveSqlParser.T_OBJECT - 192)) | (1 << (HiveSqlParser.T_AT - 192)) | (1 << (HiveSqlParser.T_OPEN - 192)) | (1 << (HiveSqlParser.T_FETCH - 192)) | (1 << (HiveSqlParser.T_FROM - 192)))) !== 0) || ((((_la - 224)) & ~0x1f) == 0 && ((1 << (_la - 224)) & ((1 << (HiveSqlParser.T_COLLECT - 224)) | (1 << (HiveSqlParser.T_STATISTICS - 224)) | (1 << (HiveSqlParser.T_STATS - 224)) | (1 << (HiveSqlParser.T_COLUMN - 224)) | (1 << (HiveSqlParser.T_CLOSE - 224)) | (1 << (HiveSqlParser.T_CMP - 224)) | (1 << (HiveSqlParser.T_SUM - 224)) | (1 << (HiveSqlParser.T_COPY - 224)) | (1 << (HiveSqlParser.T_HDFS - 224)) | (1 << (HiveSqlParser.T_BATCHSIZE - 224)) | (1 << (HiveSqlParser.T_DELIMITER - 224)) | (1 << (HiveSqlParser.T_SQLINSERT - 224)) | (1 << (HiveSqlParser.T_IGNORE - 224)) | (1 << (HiveSqlParser.T_WORK - 224)) | (1 << (HiveSqlParser.T_PRINT - 224)) | (1 << (HiveSqlParser.T_QUIT - 224)) | (1 << (HiveSqlParser.T_RAISE - 224)) | (1 << (HiveSqlParser.T_RESIGNAL - 224)) | (1 << (HiveSqlParser.T_SQLSTATE - 224)) | (1 << (HiveSqlParser.T_VALUE - 224)) | (1 << (HiveSqlParser.T_ROLLBACK - 224)) | (1 << (HiveSqlParser.T_CURRENT - 224)) | (1 << (HiveSqlParser.T_CURRENT_SCHEMA - 224)) | (1 << (HiveSqlParser.T_ANSI_NULLS - 224)) | (1 << (HiveSqlParser.T_ANSI_PADDING - 224)) | (1 << (HiveSqlParser.T_NOCOUNT - 224)) | (1 << (HiveSqlParser.T_QUOTED_IDENTIFIER - 224)) | (1 << (HiveSqlParser.T_XACT_ABORT - 224)) | (1 << (HiveSqlParser.T_OFF - 224)) | (1 << (HiveSqlParser.T_QUERY_BAND - 224)) | (1 << (HiveSqlParser.T_NONE - 224)) | (1 << (HiveSqlParser.T_SESSION - 224)))) !== 0) || ((((_la - 256)) & ~0x1f) == 0 && ((1 << (_la - 256)) & ((1 << (HiveSqlParser.T_SIGNAL - 256)) | (1 << (HiveSqlParser.T_SUMMARY - 256)) | (1 << (HiveSqlParser.T_TOP - 256)) | (1 << (HiveSqlParser.T_LIMIT - 256)) | (1 << (HiveSqlParser.T_TRUNCATE - 256)) | (1 << (HiveSqlParser.T_USE - 256)) | (1 << (HiveSqlParser.T_WHILE - 256)) | (1 << (HiveSqlParser.T_DO - 256)) | (1 << (HiveSqlParser.T_LOOP - 256)) | (1 << (HiveSqlParser.T_REVERSE - 256)) | (1 << (HiveSqlParser.T_STEP - 256)) | (1 << (HiveSqlParser.T_USING - 256)) | (1 << (HiveSqlParser.T_ALL - 256)) | (1 << (HiveSqlParser.T_EXCEPT - 256)) | (1 << (HiveSqlParser.T_INTERSECT - 256)) | (1 << (HiveSqlParser.T_SELECT - 256)) | (1 << (HiveSqlParser.T_SEL - 256)) | (1 << (HiveSqlParser.T_DISTINCT - 256)) | (1 << (HiveSqlParser.T_TITLE - 256)) | (1 << (HiveSqlParser.T_INNER - 256)) | (1 << (HiveSqlParser.T_JOIN - 256)) | (1 << (HiveSqlParser.T_LEFT - 256)) | (1 << (HiveSqlParser.T_RIGHT - 256)) | (1 << (HiveSqlParser.T_FULL - 256)) | (1 << (HiveSqlParser.T_OUTER - 256)))) !== 0) || ((((_la - 288)) & ~0x1f) == 0 && ((1 << (_la - 288)) & ((1 << (HiveSqlParser.T_GROUP - 288)) | (1 << (HiveSqlParser.T_HAVING - 288)) | (1 << (HiveSqlParser.T_QUALIFY - 288)) | (1 << (HiveSqlParser.T_ORDER - 288)) | (1 << (HiveSqlParser.T_RR - 288)) | (1 << (HiveSqlParser.T_RS - 288)) | (1 << (HiveSqlParser.T_UR - 288)) | (1 << (HiveSqlParser.T_AND - 288)) | (1 << (HiveSqlParser.T_KEEP - 288)) | (1 << (HiveSqlParser.T_EXCLUSIVE - 288)) | (1 << (HiveSqlParser.T_SHARE - 288)) | (1 << (HiveSqlParser.T_LOCKS - 288)) | (1 << (HiveSqlParser.T_MERGE - 288)) | (1 << (HiveSqlParser.T_MATCHED - 288)) | (1 << (HiveSqlParser.T_DESCRIBE - 288)) | (1 << (HiveSqlParser.T_BETWEEN - 288)) | (1 << (HiveSqlParser.T_RLIKE - 288)) | (1 << (HiveSqlParser.T_REGEXP - 288)) | (1 << (HiveSqlParser.T_INTERVAL - 288)) | (1 << (HiveSqlParser.T_DAY - 288)) | (1 << (HiveSqlParser.T_DAYS - 288)) | (1 << (HiveSqlParser.T_MICROSECOND - 288)) | (1 << (HiveSqlParser.T_MICROSECONDS - 288)))) !== 0) || ((((_la - 320)) & ~0x1f) == 0 && ((1 << (_la - 320)) & ((1 << (HiveSqlParser.T_SECOND - 320)) | (1 << (HiveSqlParser.T_SECONDS - 320)) | (1 << (HiveSqlParser.T_CONCAT - 320)) | (1 << (HiveSqlParser.T_CASE - 320)) | (1 << (HiveSqlParser.T_ISOPEN - 320)) | (1 << (HiveSqlParser.T_NOTFOUND - 320)) | (1 << (HiveSqlParser.T_AVG - 320)) | (1 << (HiveSqlParser.T_COUNT - 320)) | (1 << (HiveSqlParser.T_COUNT_BIG - 320)) | (1 << (HiveSqlParser.T_CUME_DIST - 320)) | (1 << (HiveSqlParser.T_DENSE_RANK - 320)) | (1 << (HiveSqlParser.T_FIRST_VALUE - 320)) | (1 << (HiveSqlParser.T_LAG - 320)) | (1 << (HiveSqlParser.T_LAST_VALUE - 320)) | (1 << (HiveSqlParser.T_LEAD - 320)) | (1 << (HiveSqlParser.T_MIN - 320)) | (1 << (HiveSqlParser.T_RANK - 320)) | (1 << (HiveSqlParser.T_ROW_NUMBER - 320)) | (1 << (HiveSqlParser.T_STDEV - 320)) | (1 << (HiveSqlParser.T_VAR - 320)) | (1 << (HiveSqlParser.T_VARIANCE - 320)) | (1 << (HiveSqlParser.T_OVER - 320)) | (1 << (HiveSqlParser.T_PARTITION - 320)) | (1 << (HiveSqlParser.T_ACTIVITY_COUNT - 320)) | (1 << (HiveSqlParser.T_CAST - 320)) | (1 << (HiveSqlParser.T_CURRENT_DATE - 320)) | (1 << (HiveSqlParser.T_CURRENT_TIMESTAMP - 320)) | (1 << (HiveSqlParser.T_CURRENT_USER - 320)) | (1 << (HiveSqlParser.T_USER - 320)))) !== 0) || ((((_la - 356)) & ~0x1f) == 0 && ((1 << (_la - 356)) & ((1 << (HiveSqlParser.T_PART_COUNT - 356)) | (1 << (HiveSqlParser.T_PART_LOC - 356)) | (1 << (HiveSqlParser.T_TRIM - 356)) | (1 << (HiveSqlParser.T_SUBSTRING - 356)) | (1 << (HiveSqlParser.T_SYSDATE - 356)) | (1 << (HiveSqlParser.T_HIVE - 356)) | (1 << (HiveSqlParser.T_HOST - 356)) | (1 << (HiveSqlParser.T_TRUE - 356)) | (1 << (HiveSqlParser.T_FALSE - 356)) | (1 << (HiveSqlParser.T_DIR - 356)) | (1 << (HiveSqlParser.T_FILE - 356)) | (1 << (HiveSqlParser.T_FILES - 356)) | (1 << (HiveSqlParser.T_NEW - 356)) | (1 << (HiveSqlParser.T_PWD - 356)) | (1 << (HiveSqlParser.T_SESSIONS - 356)) | (1 << (HiveSqlParser.T_SUBDIR - 356)))) !== 0));
+ this.state = 1081;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ break;
+ case HiveSqlParser.T_TABLESPACE:
+ this.enterOuterAlt(localctx, 6);
+ this.state = 1082;
+ this.match(HiveSqlParser.T_TABLESPACE);
+ this.state = 1083;
+ this.ident();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_table_options_db2_itemContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_create_table_options_db2_item;
+ return this;
+}
+
+Create_table_options_db2_itemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_table_options_db2_itemContext.prototype.constructor = Create_table_options_db2_itemContext;
+
+Create_table_options_db2_itemContext.prototype.T_IN = function() {
+ return this.getToken(HiveSqlParser.T_IN, 0);
+};
+
+Create_table_options_db2_itemContext.prototype.ident = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(IdentContext);
+ } else {
+ return this.getTypedRuleContext(IdentContext,i);
+ }
+};
+
+Create_table_options_db2_itemContext.prototype.T_INDEX = function() {
+ return this.getToken(HiveSqlParser.T_INDEX, 0);
+};
+
+Create_table_options_db2_itemContext.prototype.T_WITH = function() {
+ return this.getToken(HiveSqlParser.T_WITH, 0);
+};
+
+Create_table_options_db2_itemContext.prototype.T_REPLACE = function() {
+ return this.getToken(HiveSqlParser.T_REPLACE, 0);
+};
+
+Create_table_options_db2_itemContext.prototype.T_DISTRIBUTE = function() {
+ return this.getToken(HiveSqlParser.T_DISTRIBUTE, 0);
+};
+
+Create_table_options_db2_itemContext.prototype.T_BY = function() {
+ return this.getToken(HiveSqlParser.T_BY, 0);
+};
+
+Create_table_options_db2_itemContext.prototype.T_HASH = function() {
+ return this.getToken(HiveSqlParser.T_HASH, 0);
+};
+
+Create_table_options_db2_itemContext.prototype.T_OPEN_P = function() {
+ return this.getToken(HiveSqlParser.T_OPEN_P, 0);
+};
+
+Create_table_options_db2_itemContext.prototype.T_CLOSE_P = function() {
+ return this.getToken(HiveSqlParser.T_CLOSE_P, 0);
+};
+
+Create_table_options_db2_itemContext.prototype.T_COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_COMMA);
+ } else {
+ return this.getToken(HiveSqlParser.T_COMMA, i);
+ }
+};
+
+
+Create_table_options_db2_itemContext.prototype.T_LOGGED = function() {
+ return this.getToken(HiveSqlParser.T_LOGGED, 0);
+};
+
+Create_table_options_db2_itemContext.prototype.T_NOT = function() {
+ return this.getToken(HiveSqlParser.T_NOT, 0);
+};
+
+Create_table_options_db2_itemContext.prototype.T_COMPRESS = function() {
+ return this.getToken(HiveSqlParser.T_COMPRESS, 0);
+};
+
+Create_table_options_db2_itemContext.prototype.T_YES = function() {
+ return this.getToken(HiveSqlParser.T_YES, 0);
+};
+
+Create_table_options_db2_itemContext.prototype.T_NO = function() {
+ return this.getToken(HiveSqlParser.T_NO, 0);
+};
+
+Create_table_options_db2_itemContext.prototype.T_DEFINITION = function() {
+ return this.getToken(HiveSqlParser.T_DEFINITION, 0);
+};
+
+Create_table_options_db2_itemContext.prototype.T_ONLY = function() {
+ return this.getToken(HiveSqlParser.T_ONLY, 0);
+};
+
+Create_table_options_db2_itemContext.prototype.T_RESTRICT = function() {
+ return this.getToken(HiveSqlParser.T_RESTRICT, 0);
+};
+
+Create_table_options_db2_itemContext.prototype.T_ON = function() {
+ return this.getToken(HiveSqlParser.T_ON, 0);
+};
+
+Create_table_options_db2_itemContext.prototype.T_DROP = function() {
+ return this.getToken(HiveSqlParser.T_DROP, 0);
+};
+
+Create_table_options_db2_itemContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCreate_table_options_db2_item(this);
+ }
+};
+
+Create_table_options_db2_itemContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCreate_table_options_db2_item(this);
+ }
+};
+
+Create_table_options_db2_itemContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCreate_table_options_db2_item(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Create_table_options_db2_itemContext = Create_table_options_db2_itemContext;
+
+HiveSqlParser.prototype.create_table_options_db2_item = function() {
+
+ var localctx = new Create_table_options_db2_itemContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 96, HiveSqlParser.RULE_create_table_options_db2_item);
+ var _la = 0; // Token type
+ try {
+ this.state = 1119;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,92,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1087;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_INDEX) {
+ this.state = 1086;
+ this.match(HiveSqlParser.T_INDEX);
+ }
+
+ this.state = 1089;
+ this.match(HiveSqlParser.T_IN);
+ this.state = 1090;
+ this.ident();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 1091;
+ this.match(HiveSqlParser.T_WITH);
+ this.state = 1092;
+ this.match(HiveSqlParser.T_REPLACE);
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 1093;
+ this.match(HiveSqlParser.T_DISTRIBUTE);
+ this.state = 1094;
+ this.match(HiveSqlParser.T_BY);
+ this.state = 1095;
+ this.match(HiveSqlParser.T_HASH);
+ this.state = 1096;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 1097;
+ this.ident();
+ this.state = 1102;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===HiveSqlParser.T_COMMA) {
+ this.state = 1098;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 1099;
+ this.ident();
+ this.state = 1104;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 1105;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ break;
+
+ case 4:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 1108;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_NOT) {
+ this.state = 1107;
+ this.match(HiveSqlParser.T_NOT);
+ }
+
+ this.state = 1110;
+ this.match(HiveSqlParser.T_LOGGED);
+ break;
+
+ case 5:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 1111;
+ this.match(HiveSqlParser.T_COMPRESS);
+ this.state = 1112;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_NO || _la===HiveSqlParser.T_YES)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+
+ case 6:
+ this.enterOuterAlt(localctx, 6);
+ this.state = 1113;
+ this.match(HiveSqlParser.T_DEFINITION);
+ this.state = 1114;
+ this.match(HiveSqlParser.T_ONLY);
+ break;
+
+ case 7:
+ this.enterOuterAlt(localctx, 7);
+ this.state = 1115;
+ this.match(HiveSqlParser.T_WITH);
+ this.state = 1116;
+ this.match(HiveSqlParser.T_RESTRICT);
+ this.state = 1117;
+ this.match(HiveSqlParser.T_ON);
+ this.state = 1118;
+ this.match(HiveSqlParser.T_DROP);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_table_options_td_itemContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_create_table_options_td_item;
+ return this;
+}
+
+Create_table_options_td_itemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_table_options_td_itemContext.prototype.constructor = Create_table_options_td_itemContext;
+
+Create_table_options_td_itemContext.prototype.T_PRIMARY = function() {
+ return this.getToken(HiveSqlParser.T_PRIMARY, 0);
+};
+
+Create_table_options_td_itemContext.prototype.T_INDEX = function() {
+ return this.getToken(HiveSqlParser.T_INDEX, 0);
+};
+
+Create_table_options_td_itemContext.prototype.T_OPEN_P = function() {
+ return this.getToken(HiveSqlParser.T_OPEN_P, 0);
+};
+
+Create_table_options_td_itemContext.prototype.ident = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(IdentContext);
+ } else {
+ return this.getTypedRuleContext(IdentContext,i);
+ }
+};
+
+Create_table_options_td_itemContext.prototype.T_CLOSE_P = function() {
+ return this.getToken(HiveSqlParser.T_CLOSE_P, 0);
+};
+
+Create_table_options_td_itemContext.prototype.T_UNIQUE = function() {
+ return this.getToken(HiveSqlParser.T_UNIQUE, 0);
+};
+
+Create_table_options_td_itemContext.prototype.T_COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_COMMA);
+ } else {
+ return this.getToken(HiveSqlParser.T_COMMA, i);
+ }
+};
+
+
+Create_table_options_td_itemContext.prototype.T_WITH = function() {
+ return this.getToken(HiveSqlParser.T_WITH, 0);
+};
+
+Create_table_options_td_itemContext.prototype.T_DATA = function() {
+ return this.getToken(HiveSqlParser.T_DATA, 0);
+};
+
+Create_table_options_td_itemContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCreate_table_options_td_item(this);
+ }
+};
+
+Create_table_options_td_itemContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCreate_table_options_td_item(this);
+ }
+};
+
+Create_table_options_td_itemContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCreate_table_options_td_item(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Create_table_options_td_itemContext = Create_table_options_td_itemContext;
+
+HiveSqlParser.prototype.create_table_options_td_item = function() {
+
+ var localctx = new Create_table_options_td_itemContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 98, HiveSqlParser.RULE_create_table_options_td_item);
+ var _la = 0; // Token type
+ try {
+ this.state = 1139;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case HiveSqlParser.T_PRIMARY:
+ case HiveSqlParser.T_UNIQUE:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1122;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_UNIQUE) {
+ this.state = 1121;
+ this.match(HiveSqlParser.T_UNIQUE);
+ }
+
+ this.state = 1124;
+ this.match(HiveSqlParser.T_PRIMARY);
+ this.state = 1125;
+ this.match(HiveSqlParser.T_INDEX);
+ this.state = 1126;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 1127;
+ this.ident();
+ this.state = 1132;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===HiveSqlParser.T_COMMA) {
+ this.state = 1128;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 1129;
+ this.ident();
+ this.state = 1134;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 1135;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ break;
+ case HiveSqlParser.T_WITH:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 1137;
+ this.match(HiveSqlParser.T_WITH);
+ this.state = 1138;
+ this.match(HiveSqlParser.T_DATA);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_table_options_hive_itemContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_create_table_options_hive_item;
+ return this;
+}
+
+Create_table_options_hive_itemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_table_options_hive_itemContext.prototype.constructor = Create_table_options_hive_itemContext;
+
+Create_table_options_hive_itemContext.prototype.create_table_hive_row_format = function() {
+ return this.getTypedRuleContext(Create_table_hive_row_formatContext,0);
+};
+
+Create_table_options_hive_itemContext.prototype.T_STORED = function() {
+ return this.getToken(HiveSqlParser.T_STORED, 0);
+};
+
+Create_table_options_hive_itemContext.prototype.T_AS = function() {
+ return this.getToken(HiveSqlParser.T_AS, 0);
+};
+
+Create_table_options_hive_itemContext.prototype.ident = function() {
+ return this.getTypedRuleContext(IdentContext,0);
+};
+
+Create_table_options_hive_itemContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCreate_table_options_hive_item(this);
+ }
+};
+
+Create_table_options_hive_itemContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCreate_table_options_hive_item(this);
+ }
+};
+
+Create_table_options_hive_itemContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCreate_table_options_hive_item(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Create_table_options_hive_itemContext = Create_table_options_hive_itemContext;
+
+HiveSqlParser.prototype.create_table_options_hive_item = function() {
+
+ var localctx = new Create_table_options_hive_itemContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 100, HiveSqlParser.RULE_create_table_options_hive_item);
+ try {
+ this.state = 1145;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case HiveSqlParser.T_ROW:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1141;
+ this.create_table_hive_row_format();
+ break;
+ case HiveSqlParser.T_STORED:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 1142;
+ this.match(HiveSqlParser.T_STORED);
+ this.state = 1143;
+ this.match(HiveSqlParser.T_AS);
+ this.state = 1144;
+ this.ident();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_table_hive_row_formatContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_create_table_hive_row_format;
+ return this;
+}
+
+Create_table_hive_row_formatContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_table_hive_row_formatContext.prototype.constructor = Create_table_hive_row_formatContext;
+
+Create_table_hive_row_formatContext.prototype.T_ROW = function() {
+ return this.getToken(HiveSqlParser.T_ROW, 0);
+};
+
+Create_table_hive_row_formatContext.prototype.T_FORMAT = function() {
+ return this.getToken(HiveSqlParser.T_FORMAT, 0);
+};
+
+Create_table_hive_row_formatContext.prototype.T_DELIMITED = function() {
+ return this.getToken(HiveSqlParser.T_DELIMITED, 0);
+};
+
+Create_table_hive_row_formatContext.prototype.create_table_hive_row_format_fields = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Create_table_hive_row_format_fieldsContext);
+ } else {
+ return this.getTypedRuleContext(Create_table_hive_row_format_fieldsContext,i);
+ }
+};
+
+Create_table_hive_row_formatContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCreate_table_hive_row_format(this);
+ }
+};
+
+Create_table_hive_row_formatContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCreate_table_hive_row_format(this);
+ }
+};
+
+Create_table_hive_row_formatContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCreate_table_hive_row_format(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Create_table_hive_row_formatContext = Create_table_hive_row_formatContext;
+
+HiveSqlParser.prototype.create_table_hive_row_format = function() {
+
+ var localctx = new Create_table_hive_row_formatContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 102, HiveSqlParser.RULE_create_table_hive_row_format);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1147;
+ this.match(HiveSqlParser.T_ROW);
+ this.state = 1148;
+ this.match(HiveSqlParser.T_FORMAT);
+ this.state = 1149;
+ this.match(HiveSqlParser.T_DELIMITED);
+ this.state = 1153;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,97,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 1150;
+ this.create_table_hive_row_format_fields();
+ }
+ this.state = 1155;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,97,this._ctx);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_table_hive_row_format_fieldsContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_create_table_hive_row_format_fields;
+ return this;
+}
+
+Create_table_hive_row_format_fieldsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_table_hive_row_format_fieldsContext.prototype.constructor = Create_table_hive_row_format_fieldsContext;
+
+Create_table_hive_row_format_fieldsContext.prototype.T_FIELDS = function() {
+ return this.getToken(HiveSqlParser.T_FIELDS, 0);
+};
+
+Create_table_hive_row_format_fieldsContext.prototype.T_TERMINATED = function() {
+ return this.getToken(HiveSqlParser.T_TERMINATED, 0);
+};
+
+Create_table_hive_row_format_fieldsContext.prototype.T_BY = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_BY);
+ } else {
+ return this.getToken(HiveSqlParser.T_BY, i);
+ }
+};
+
+
+Create_table_hive_row_format_fieldsContext.prototype.expr = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ExprContext);
+ } else {
+ return this.getTypedRuleContext(ExprContext,i);
+ }
+};
+
+Create_table_hive_row_format_fieldsContext.prototype.T_ESCAPED = function() {
+ return this.getToken(HiveSqlParser.T_ESCAPED, 0);
+};
+
+Create_table_hive_row_format_fieldsContext.prototype.T_COLLECTION = function() {
+ return this.getToken(HiveSqlParser.T_COLLECTION, 0);
+};
+
+Create_table_hive_row_format_fieldsContext.prototype.T_ITEMS = function() {
+ return this.getToken(HiveSqlParser.T_ITEMS, 0);
+};
+
+Create_table_hive_row_format_fieldsContext.prototype.T_MAP = function() {
+ return this.getToken(HiveSqlParser.T_MAP, 0);
+};
+
+Create_table_hive_row_format_fieldsContext.prototype.T_KEYS = function() {
+ return this.getToken(HiveSqlParser.T_KEYS, 0);
+};
+
+Create_table_hive_row_format_fieldsContext.prototype.T_LINES = function() {
+ return this.getToken(HiveSqlParser.T_LINES, 0);
+};
+
+Create_table_hive_row_format_fieldsContext.prototype.T_NULL = function() {
+ return this.getToken(HiveSqlParser.T_NULL, 0);
+};
+
+Create_table_hive_row_format_fieldsContext.prototype.T_DEFINED = function() {
+ return this.getToken(HiveSqlParser.T_DEFINED, 0);
+};
+
+Create_table_hive_row_format_fieldsContext.prototype.T_AS = function() {
+ return this.getToken(HiveSqlParser.T_AS, 0);
+};
+
+Create_table_hive_row_format_fieldsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCreate_table_hive_row_format_fields(this);
+ }
+};
+
+Create_table_hive_row_format_fieldsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCreate_table_hive_row_format_fields(this);
+ }
+};
+
+Create_table_hive_row_format_fieldsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCreate_table_hive_row_format_fields(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Create_table_hive_row_format_fieldsContext = Create_table_hive_row_format_fieldsContext;
+
+HiveSqlParser.prototype.create_table_hive_row_format_fields = function() {
+
+ var localctx = new Create_table_hive_row_format_fieldsContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 104, HiveSqlParser.RULE_create_table_hive_row_format_fields);
+ try {
+ this.state = 1183;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case HiveSqlParser.T_FIELDS:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1156;
+ this.match(HiveSqlParser.T_FIELDS);
+ this.state = 1157;
+ this.match(HiveSqlParser.T_TERMINATED);
+ this.state = 1158;
+ this.match(HiveSqlParser.T_BY);
+ this.state = 1159;
+ this.expr(0);
+ this.state = 1163;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,98,this._ctx);
+ if(la_===1) {
+ this.state = 1160;
+ this.match(HiveSqlParser.T_ESCAPED);
+ this.state = 1161;
+ this.match(HiveSqlParser.T_BY);
+ this.state = 1162;
+ this.expr(0);
+
+ }
+ break;
+ case HiveSqlParser.T_COLLECTION:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 1165;
+ this.match(HiveSqlParser.T_COLLECTION);
+ this.state = 1166;
+ this.match(HiveSqlParser.T_ITEMS);
+ this.state = 1167;
+ this.match(HiveSqlParser.T_TERMINATED);
+ this.state = 1168;
+ this.match(HiveSqlParser.T_BY);
+ this.state = 1169;
+ this.expr(0);
+ break;
+ case HiveSqlParser.T_MAP:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 1170;
+ this.match(HiveSqlParser.T_MAP);
+ this.state = 1171;
+ this.match(HiveSqlParser.T_KEYS);
+ this.state = 1172;
+ this.match(HiveSqlParser.T_TERMINATED);
+ this.state = 1173;
+ this.match(HiveSqlParser.T_BY);
+ this.state = 1174;
+ this.expr(0);
+ break;
+ case HiveSqlParser.T_LINES:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 1175;
+ this.match(HiveSqlParser.T_LINES);
+ this.state = 1176;
+ this.match(HiveSqlParser.T_TERMINATED);
+ this.state = 1177;
+ this.match(HiveSqlParser.T_BY);
+ this.state = 1178;
+ this.expr(0);
+ break;
+ case HiveSqlParser.T_NULL:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 1179;
+ this.match(HiveSqlParser.T_NULL);
+ this.state = 1180;
+ this.match(HiveSqlParser.T_DEFINED);
+ this.state = 1181;
+ this.match(HiveSqlParser.T_AS);
+ this.state = 1182;
+ this.expr(0);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_table_options_mssql_itemContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_create_table_options_mssql_item;
+ return this;
+}
+
+Create_table_options_mssql_itemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_table_options_mssql_itemContext.prototype.constructor = Create_table_options_mssql_itemContext;
+
+Create_table_options_mssql_itemContext.prototype.T_ON = function() {
+ return this.getToken(HiveSqlParser.T_ON, 0);
+};
+
+Create_table_options_mssql_itemContext.prototype.ident = function() {
+ return this.getTypedRuleContext(IdentContext,0);
+};
+
+Create_table_options_mssql_itemContext.prototype.T_TEXTIMAGE_ON = function() {
+ return this.getToken(HiveSqlParser.T_TEXTIMAGE_ON, 0);
+};
+
+Create_table_options_mssql_itemContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCreate_table_options_mssql_item(this);
+ }
+};
+
+Create_table_options_mssql_itemContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCreate_table_options_mssql_item(this);
+ }
+};
+
+Create_table_options_mssql_itemContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCreate_table_options_mssql_item(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Create_table_options_mssql_itemContext = Create_table_options_mssql_itemContext;
+
+HiveSqlParser.prototype.create_table_options_mssql_item = function() {
+
+ var localctx = new Create_table_options_mssql_itemContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 106, HiveSqlParser.RULE_create_table_options_mssql_item);
+ try {
+ this.state = 1189;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case HiveSqlParser.T_ON:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1185;
+ this.match(HiveSqlParser.T_ON);
+ this.state = 1186;
+ this.ident();
+ break;
+ case HiveSqlParser.T_TEXTIMAGE_ON:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 1187;
+ this.match(HiveSqlParser.T_TEXTIMAGE_ON);
+ this.state = 1188;
+ this.ident();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_table_options_mysql_itemContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_create_table_options_mysql_item;
+ return this;
+}
+
+Create_table_options_mysql_itemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_table_options_mysql_itemContext.prototype.constructor = Create_table_options_mysql_itemContext;
+
+Create_table_options_mysql_itemContext.prototype.T_AUTO_INCREMENT = function() {
+ return this.getToken(HiveSqlParser.T_AUTO_INCREMENT, 0);
+};
+
+Create_table_options_mysql_itemContext.prototype.expr = function() {
+ return this.getTypedRuleContext(ExprContext,0);
+};
+
+Create_table_options_mysql_itemContext.prototype.T_EQUAL = function() {
+ return this.getToken(HiveSqlParser.T_EQUAL, 0);
+};
+
+Create_table_options_mysql_itemContext.prototype.T_COMMENT = function() {
+ return this.getToken(HiveSqlParser.T_COMMENT, 0);
+};
+
+Create_table_options_mysql_itemContext.prototype.T_CHARACTER = function() {
+ return this.getToken(HiveSqlParser.T_CHARACTER, 0);
+};
+
+Create_table_options_mysql_itemContext.prototype.T_SET = function() {
+ return this.getToken(HiveSqlParser.T_SET, 0);
+};
+
+Create_table_options_mysql_itemContext.prototype.T_CHARSET = function() {
+ return this.getToken(HiveSqlParser.T_CHARSET, 0);
+};
+
+Create_table_options_mysql_itemContext.prototype.T_DEFAULT = function() {
+ return this.getToken(HiveSqlParser.T_DEFAULT, 0);
+};
+
+Create_table_options_mysql_itemContext.prototype.T_ENGINE = function() {
+ return this.getToken(HiveSqlParser.T_ENGINE, 0);
+};
+
+Create_table_options_mysql_itemContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCreate_table_options_mysql_item(this);
+ }
+};
+
+Create_table_options_mysql_itemContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCreate_table_options_mysql_item(this);
+ }
+};
+
+Create_table_options_mysql_itemContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCreate_table_options_mysql_item(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Create_table_options_mysql_itemContext = Create_table_options_mysql_itemContext;
+
+HiveSqlParser.prototype.create_table_options_mysql_item = function() {
+
+ var localctx = new Create_table_options_mysql_itemContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 108, HiveSqlParser.RULE_create_table_options_mysql_item);
+ var _la = 0; // Token type
+ try {
+ this.state = 1218;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case HiveSqlParser.T_AUTO_INCREMENT:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1191;
+ this.match(HiveSqlParser.T_AUTO_INCREMENT);
+ this.state = 1193;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_EQUAL) {
+ this.state = 1192;
+ this.match(HiveSqlParser.T_EQUAL);
+ }
+
+ this.state = 1195;
+ this.expr(0);
+ break;
+ case HiveSqlParser.T_COMMENT:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 1196;
+ this.match(HiveSqlParser.T_COMMENT);
+ this.state = 1198;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_EQUAL) {
+ this.state = 1197;
+ this.match(HiveSqlParser.T_EQUAL);
+ }
+
+ this.state = 1200;
+ this.expr(0);
+ break;
+ case HiveSqlParser.T_DEFAULT:
+ case HiveSqlParser.T_CHARACTER:
+ case HiveSqlParser.T_CHARSET:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 1202;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_DEFAULT) {
+ this.state = 1201;
+ this.match(HiveSqlParser.T_DEFAULT);
+ }
+
+ this.state = 1207;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case HiveSqlParser.T_CHARACTER:
+ this.state = 1204;
+ this.match(HiveSqlParser.T_CHARACTER);
+ this.state = 1205;
+ this.match(HiveSqlParser.T_SET);
+ break;
+ case HiveSqlParser.T_CHARSET:
+ this.state = 1206;
+ this.match(HiveSqlParser.T_CHARSET);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 1210;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_EQUAL) {
+ this.state = 1209;
+ this.match(HiveSqlParser.T_EQUAL);
+ }
+
+ this.state = 1212;
+ this.expr(0);
+ break;
+ case HiveSqlParser.T_ENGINE:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 1213;
+ this.match(HiveSqlParser.T_ENGINE);
+ this.state = 1215;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_EQUAL) {
+ this.state = 1214;
+ this.match(HiveSqlParser.T_EQUAL);
+ }
+
+ this.state = 1217;
+ this.expr(0);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Alter_table_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_alter_table_stmt;
+ return this;
+}
+
+Alter_table_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Alter_table_stmtContext.prototype.constructor = Alter_table_stmtContext;
+
+Alter_table_stmtContext.prototype.T_ALTER = function() {
+ return this.getToken(HiveSqlParser.T_ALTER, 0);
+};
+
+Alter_table_stmtContext.prototype.T_TABLE = function() {
+ return this.getToken(HiveSqlParser.T_TABLE, 0);
+};
+
+Alter_table_stmtContext.prototype.table_name = function() {
+ return this.getTypedRuleContext(Table_nameContext,0);
+};
+
+Alter_table_stmtContext.prototype.alter_table_item = function() {
+ return this.getTypedRuleContext(Alter_table_itemContext,0);
+};
+
+Alter_table_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterAlter_table_stmt(this);
+ }
+};
+
+Alter_table_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitAlter_table_stmt(this);
+ }
+};
+
+Alter_table_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitAlter_table_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Alter_table_stmtContext = Alter_table_stmtContext;
+
+HiveSqlParser.prototype.alter_table_stmt = function() {
+
+ var localctx = new Alter_table_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 110, HiveSqlParser.RULE_alter_table_stmt);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1220;
+ this.match(HiveSqlParser.T_ALTER);
+ this.state = 1221;
+ this.match(HiveSqlParser.T_TABLE);
+ this.state = 1222;
+ this.table_name();
+ this.state = 1223;
+ this.alter_table_item();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Alter_table_itemContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_alter_table_item;
+ return this;
+}
+
+Alter_table_itemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Alter_table_itemContext.prototype.constructor = Alter_table_itemContext;
+
+Alter_table_itemContext.prototype.alter_table_add_constraint = function() {
+ return this.getTypedRuleContext(Alter_table_add_constraintContext,0);
+};
+
+Alter_table_itemContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterAlter_table_item(this);
+ }
+};
+
+Alter_table_itemContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitAlter_table_item(this);
+ }
+};
+
+Alter_table_itemContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitAlter_table_item(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Alter_table_itemContext = Alter_table_itemContext;
+
+HiveSqlParser.prototype.alter_table_item = function() {
+
+ var localctx = new Alter_table_itemContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 112, HiveSqlParser.RULE_alter_table_item);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1225;
+ this.alter_table_add_constraint();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Alter_table_add_constraintContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_alter_table_add_constraint;
+ return this;
+}
+
+Alter_table_add_constraintContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Alter_table_add_constraintContext.prototype.constructor = Alter_table_add_constraintContext;
+
+Alter_table_add_constraintContext.prototype.T_ADD2 = function() {
+ return this.getToken(HiveSqlParser.T_ADD2, 0);
+};
+
+Alter_table_add_constraintContext.prototype.alter_table_add_constraint_item = function() {
+ return this.getTypedRuleContext(Alter_table_add_constraint_itemContext,0);
+};
+
+Alter_table_add_constraintContext.prototype.T_CONSTRAINT = function() {
+ return this.getToken(HiveSqlParser.T_CONSTRAINT, 0);
+};
+
+Alter_table_add_constraintContext.prototype.ident = function() {
+ return this.getTypedRuleContext(IdentContext,0);
+};
+
+Alter_table_add_constraintContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterAlter_table_add_constraint(this);
+ }
+};
+
+Alter_table_add_constraintContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitAlter_table_add_constraint(this);
+ }
+};
+
+Alter_table_add_constraintContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitAlter_table_add_constraint(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Alter_table_add_constraintContext = Alter_table_add_constraintContext;
+
+HiveSqlParser.prototype.alter_table_add_constraint = function() {
+
+ var localctx = new Alter_table_add_constraintContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 114, HiveSqlParser.RULE_alter_table_add_constraint);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1227;
+ this.match(HiveSqlParser.T_ADD2);
+ this.state = 1230;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_CONSTRAINT) {
+ this.state = 1228;
+ this.match(HiveSqlParser.T_CONSTRAINT);
+ this.state = 1229;
+ this.ident();
+ }
+
+ this.state = 1232;
+ this.alter_table_add_constraint_item();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Alter_table_add_constraint_itemContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_alter_table_add_constraint_item;
+ return this;
+}
+
+Alter_table_add_constraint_itemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Alter_table_add_constraint_itemContext.prototype.constructor = Alter_table_add_constraint_itemContext;
+
+Alter_table_add_constraint_itemContext.prototype.T_PRIMARY = function() {
+ return this.getToken(HiveSqlParser.T_PRIMARY, 0);
+};
+
+Alter_table_add_constraint_itemContext.prototype.T_KEY = function() {
+ return this.getToken(HiveSqlParser.T_KEY, 0);
+};
+
+Alter_table_add_constraint_itemContext.prototype.T_OPEN_P = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_OPEN_P);
+ } else {
+ return this.getToken(HiveSqlParser.T_OPEN_P, i);
+ }
+};
+
+
+Alter_table_add_constraint_itemContext.prototype.ident = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(IdentContext);
+ } else {
+ return this.getTypedRuleContext(IdentContext,i);
+ }
+};
+
+Alter_table_add_constraint_itemContext.prototype.T_CLOSE_P = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_CLOSE_P);
+ } else {
+ return this.getToken(HiveSqlParser.T_CLOSE_P, i);
+ }
+};
+
+
+Alter_table_add_constraint_itemContext.prototype.T_CLUSTERED = function() {
+ return this.getToken(HiveSqlParser.T_CLUSTERED, 0);
+};
+
+Alter_table_add_constraint_itemContext.prototype.T_COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_COMMA);
+ } else {
+ return this.getToken(HiveSqlParser.T_COMMA, i);
+ }
+};
+
+
+Alter_table_add_constraint_itemContext.prototype.T_ENABLE = function() {
+ return this.getToken(HiveSqlParser.T_ENABLE, 0);
+};
+
+Alter_table_add_constraint_itemContext.prototype.index_storage_clause = function() {
+ return this.getTypedRuleContext(Index_storage_clauseContext,0);
+};
+
+Alter_table_add_constraint_itemContext.prototype.T_ASC = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_ASC);
+ } else {
+ return this.getToken(HiveSqlParser.T_ASC, i);
+ }
+};
+
+
+Alter_table_add_constraint_itemContext.prototype.T_DESC = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_DESC);
+ } else {
+ return this.getToken(HiveSqlParser.T_DESC, i);
+ }
+};
+
+
+Alter_table_add_constraint_itemContext.prototype.T_FOREIGN = function() {
+ return this.getToken(HiveSqlParser.T_FOREIGN, 0);
+};
+
+Alter_table_add_constraint_itemContext.prototype.T_REFERENCES = function() {
+ return this.getToken(HiveSqlParser.T_REFERENCES, 0);
+};
+
+Alter_table_add_constraint_itemContext.prototype.table_name = function() {
+ return this.getTypedRuleContext(Table_nameContext,0);
+};
+
+Alter_table_add_constraint_itemContext.prototype.create_table_fk_action = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Create_table_fk_actionContext);
+ } else {
+ return this.getTypedRuleContext(Create_table_fk_actionContext,i);
+ }
+};
+
+Alter_table_add_constraint_itemContext.prototype.T_DEFAULT = function() {
+ return this.getToken(HiveSqlParser.T_DEFAULT, 0);
+};
+
+Alter_table_add_constraint_itemContext.prototype.expr = function() {
+ return this.getTypedRuleContext(ExprContext,0);
+};
+
+Alter_table_add_constraint_itemContext.prototype.T_FOR = function() {
+ return this.getToken(HiveSqlParser.T_FOR, 0);
+};
+
+Alter_table_add_constraint_itemContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterAlter_table_add_constraint_item(this);
+ }
+};
+
+Alter_table_add_constraint_itemContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitAlter_table_add_constraint_item(this);
+ }
+};
+
+Alter_table_add_constraint_itemContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitAlter_table_add_constraint_item(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Alter_table_add_constraint_itemContext = Alter_table_add_constraint_itemContext;
+
+HiveSqlParser.prototype.alter_table_add_constraint_item = function() {
+
+ var localctx = new Alter_table_add_constraint_itemContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 116, HiveSqlParser.RULE_alter_table_add_constraint_item);
+ var _la = 0; // Token type
+ try {
+ this.state = 1296;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case HiveSqlParser.T_PRIMARY:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1234;
+ this.match(HiveSqlParser.T_PRIMARY);
+ this.state = 1235;
+ this.match(HiveSqlParser.T_KEY);
+ this.state = 1237;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_CLUSTERED) {
+ this.state = 1236;
+ this.match(HiveSqlParser.T_CLUSTERED);
+ }
+
+ this.state = 1239;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 1240;
+ this.ident();
+ this.state = 1242;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_ASC || _la===HiveSqlParser.T_DESC) {
+ this.state = 1241;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_ASC || _la===HiveSqlParser.T_DESC)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 1251;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===HiveSqlParser.T_COMMA) {
+ this.state = 1244;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 1245;
+ this.ident();
+ this.state = 1247;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_ASC || _la===HiveSqlParser.T_DESC) {
+ this.state = 1246;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_ASC || _la===HiveSqlParser.T_DESC)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 1253;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 1254;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ this.state = 1256;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,113,this._ctx);
+ if(la_===1) {
+ this.state = 1255;
+ this.match(HiveSqlParser.T_ENABLE);
+
+ }
+ this.state = 1259;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,114,this._ctx);
+ if(la_===1) {
+ this.state = 1258;
+ this.index_storage_clause();
+
+ }
+ break;
+ case HiveSqlParser.T_FOREIGN:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 1261;
+ this.match(HiveSqlParser.T_FOREIGN);
+ this.state = 1262;
+ this.match(HiveSqlParser.T_KEY);
+ this.state = 1263;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 1264;
+ this.ident();
+ this.state = 1269;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===HiveSqlParser.T_COMMA) {
+ this.state = 1265;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 1266;
+ this.ident();
+ this.state = 1271;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 1272;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ this.state = 1273;
+ this.match(HiveSqlParser.T_REFERENCES);
+ this.state = 1274;
+ this.table_name();
+ this.state = 1275;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 1276;
+ this.ident();
+ this.state = 1281;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===HiveSqlParser.T_COMMA) {
+ this.state = 1277;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 1278;
+ this.ident();
+ this.state = 1283;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 1284;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ this.state = 1288;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,117,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 1285;
+ this.create_table_fk_action();
+ }
+ this.state = 1290;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,117,this._ctx);
+ }
+
+ break;
+ case HiveSqlParser.T_DEFAULT:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 1291;
+ this.match(HiveSqlParser.T_DEFAULT);
+ this.state = 1292;
+ this.expr(0);
+ this.state = 1293;
+ this.match(HiveSqlParser.T_FOR);
+ this.state = 1294;
+ this.ident();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function DtypeContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_dtype;
+ return this;
+}
+
+DtypeContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+DtypeContext.prototype.constructor = DtypeContext;
+
+DtypeContext.prototype.T_CHAR = function() {
+ return this.getToken(HiveSqlParser.T_CHAR, 0);
+};
+
+DtypeContext.prototype.T_CHARACTER = function() {
+ return this.getToken(HiveSqlParser.T_CHARACTER, 0);
+};
+
+DtypeContext.prototype.T_BIGINT = function() {
+ return this.getToken(HiveSqlParser.T_BIGINT, 0);
+};
+
+DtypeContext.prototype.T_BINARY_DOUBLE = function() {
+ return this.getToken(HiveSqlParser.T_BINARY_DOUBLE, 0);
+};
+
+DtypeContext.prototype.T_BINARY_FLOAT = function() {
+ return this.getToken(HiveSqlParser.T_BINARY_FLOAT, 0);
+};
+
+DtypeContext.prototype.T_BINARY_INTEGER = function() {
+ return this.getToken(HiveSqlParser.T_BINARY_INTEGER, 0);
+};
+
+DtypeContext.prototype.T_BIT = function() {
+ return this.getToken(HiveSqlParser.T_BIT, 0);
+};
+
+DtypeContext.prototype.T_DATE = function() {
+ return this.getToken(HiveSqlParser.T_DATE, 0);
+};
+
+DtypeContext.prototype.T_DATETIME = function() {
+ return this.getToken(HiveSqlParser.T_DATETIME, 0);
+};
+
+DtypeContext.prototype.T_DEC = function() {
+ return this.getToken(HiveSqlParser.T_DEC, 0);
+};
+
+DtypeContext.prototype.T_DECIMAL = function() {
+ return this.getToken(HiveSqlParser.T_DECIMAL, 0);
+};
+
+DtypeContext.prototype.T_DOUBLE = function() {
+ return this.getToken(HiveSqlParser.T_DOUBLE, 0);
+};
+
+DtypeContext.prototype.T_PRECISION = function() {
+ return this.getToken(HiveSqlParser.T_PRECISION, 0);
+};
+
+DtypeContext.prototype.T_FLOAT = function() {
+ return this.getToken(HiveSqlParser.T_FLOAT, 0);
+};
+
+DtypeContext.prototype.T_INT = function() {
+ return this.getToken(HiveSqlParser.T_INT, 0);
+};
+
+DtypeContext.prototype.T_INT2 = function() {
+ return this.getToken(HiveSqlParser.T_INT2, 0);
+};
+
+DtypeContext.prototype.T_INT4 = function() {
+ return this.getToken(HiveSqlParser.T_INT4, 0);
+};
+
+DtypeContext.prototype.T_INT8 = function() {
+ return this.getToken(HiveSqlParser.T_INT8, 0);
+};
+
+DtypeContext.prototype.T_INTEGER = function() {
+ return this.getToken(HiveSqlParser.T_INTEGER, 0);
+};
+
+DtypeContext.prototype.T_NCHAR = function() {
+ return this.getToken(HiveSqlParser.T_NCHAR, 0);
+};
+
+DtypeContext.prototype.T_NVARCHAR = function() {
+ return this.getToken(HiveSqlParser.T_NVARCHAR, 0);
+};
+
+DtypeContext.prototype.T_NUMBER = function() {
+ return this.getToken(HiveSqlParser.T_NUMBER, 0);
+};
+
+DtypeContext.prototype.T_NUMERIC = function() {
+ return this.getToken(HiveSqlParser.T_NUMERIC, 0);
+};
+
+DtypeContext.prototype.T_PLS_INTEGER = function() {
+ return this.getToken(HiveSqlParser.T_PLS_INTEGER, 0);
+};
+
+DtypeContext.prototype.T_REAL = function() {
+ return this.getToken(HiveSqlParser.T_REAL, 0);
+};
+
+DtypeContext.prototype.T_RESULT_SET_LOCATOR = function() {
+ return this.getToken(HiveSqlParser.T_RESULT_SET_LOCATOR, 0);
+};
+
+DtypeContext.prototype.T_VARYING = function() {
+ return this.getToken(HiveSqlParser.T_VARYING, 0);
+};
+
+DtypeContext.prototype.T_SIMPLE_FLOAT = function() {
+ return this.getToken(HiveSqlParser.T_SIMPLE_FLOAT, 0);
+};
+
+DtypeContext.prototype.T_SIMPLE_DOUBLE = function() {
+ return this.getToken(HiveSqlParser.T_SIMPLE_DOUBLE, 0);
+};
+
+DtypeContext.prototype.T_SIMPLE_INTEGER = function() {
+ return this.getToken(HiveSqlParser.T_SIMPLE_INTEGER, 0);
+};
+
+DtypeContext.prototype.T_SMALLINT = function() {
+ return this.getToken(HiveSqlParser.T_SMALLINT, 0);
+};
+
+DtypeContext.prototype.T_SMALLDATETIME = function() {
+ return this.getToken(HiveSqlParser.T_SMALLDATETIME, 0);
+};
+
+DtypeContext.prototype.T_STRING = function() {
+ return this.getToken(HiveSqlParser.T_STRING, 0);
+};
+
+DtypeContext.prototype.T_SYS_REFCURSOR = function() {
+ return this.getToken(HiveSqlParser.T_SYS_REFCURSOR, 0);
+};
+
+DtypeContext.prototype.T_TIMESTAMP = function() {
+ return this.getToken(HiveSqlParser.T_TIMESTAMP, 0);
+};
+
+DtypeContext.prototype.T_TINYINT = function() {
+ return this.getToken(HiveSqlParser.T_TINYINT, 0);
+};
+
+DtypeContext.prototype.T_VARCHAR = function() {
+ return this.getToken(HiveSqlParser.T_VARCHAR, 0);
+};
+
+DtypeContext.prototype.T_VARCHAR2 = function() {
+ return this.getToken(HiveSqlParser.T_VARCHAR2, 0);
+};
+
+DtypeContext.prototype.T_XML = function() {
+ return this.getToken(HiveSqlParser.T_XML, 0);
+};
+
+DtypeContext.prototype.ident = function() {
+ return this.getTypedRuleContext(IdentContext,0);
+};
+
+DtypeContext.prototype.T_TYPE = function() {
+ return this.getToken(HiveSqlParser.T_TYPE, 0);
+};
+
+DtypeContext.prototype.T_ROWTYPE = function() {
+ return this.getToken(HiveSqlParser.T_ROWTYPE, 0);
+};
+
+DtypeContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterDtype(this);
+ }
+};
+
+DtypeContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitDtype(this);
+ }
+};
+
+DtypeContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitDtype(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.DtypeContext = DtypeContext;
+
+HiveSqlParser.prototype.dtype = function() {
+
+ var localctx = new DtypeContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 118, HiveSqlParser.RULE_dtype);
+ var _la = 0; // Token type
+ try {
+ this.state = 1344;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,121,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1298;
+ this.match(HiveSqlParser.T_CHAR);
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 1299;
+ this.match(HiveSqlParser.T_CHARACTER);
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 1300;
+ this.match(HiveSqlParser.T_BIGINT);
+ break;
+
+ case 4:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 1301;
+ this.match(HiveSqlParser.T_BINARY_DOUBLE);
+ break;
+
+ case 5:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 1302;
+ this.match(HiveSqlParser.T_BINARY_FLOAT);
+ break;
+
+ case 6:
+ this.enterOuterAlt(localctx, 6);
+ this.state = 1303;
+ this.match(HiveSqlParser.T_BINARY_INTEGER);
+ break;
+
+ case 7:
+ this.enterOuterAlt(localctx, 7);
+ this.state = 1304;
+ this.match(HiveSqlParser.T_BIT);
+ break;
+
+ case 8:
+ this.enterOuterAlt(localctx, 8);
+ this.state = 1305;
+ this.match(HiveSqlParser.T_DATE);
+ break;
+
+ case 9:
+ this.enterOuterAlt(localctx, 9);
+ this.state = 1306;
+ this.match(HiveSqlParser.T_DATETIME);
+ break;
+
+ case 10:
+ this.enterOuterAlt(localctx, 10);
+ this.state = 1307;
+ this.match(HiveSqlParser.T_DEC);
+ break;
+
+ case 11:
+ this.enterOuterAlt(localctx, 11);
+ this.state = 1308;
+ this.match(HiveSqlParser.T_DECIMAL);
+ break;
+
+ case 12:
+ this.enterOuterAlt(localctx, 12);
+ this.state = 1309;
+ this.match(HiveSqlParser.T_DOUBLE);
+ this.state = 1311;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,119,this._ctx);
+ if(la_===1) {
+ this.state = 1310;
+ this.match(HiveSqlParser.T_PRECISION);
+
+ }
+ break;
+
+ case 13:
+ this.enterOuterAlt(localctx, 13);
+ this.state = 1313;
+ this.match(HiveSqlParser.T_FLOAT);
+ break;
+
+ case 14:
+ this.enterOuterAlt(localctx, 14);
+ this.state = 1314;
+ this.match(HiveSqlParser.T_INT);
+ break;
+
+ case 15:
+ this.enterOuterAlt(localctx, 15);
+ this.state = 1315;
+ this.match(HiveSqlParser.T_INT2);
+ break;
+
+ case 16:
+ this.enterOuterAlt(localctx, 16);
+ this.state = 1316;
+ this.match(HiveSqlParser.T_INT4);
+ break;
+
+ case 17:
+ this.enterOuterAlt(localctx, 17);
+ this.state = 1317;
+ this.match(HiveSqlParser.T_INT8);
+ break;
+
+ case 18:
+ this.enterOuterAlt(localctx, 18);
+ this.state = 1318;
+ this.match(HiveSqlParser.T_INTEGER);
+ break;
+
+ case 19:
+ this.enterOuterAlt(localctx, 19);
+ this.state = 1319;
+ this.match(HiveSqlParser.T_NCHAR);
+ break;
+
+ case 20:
+ this.enterOuterAlt(localctx, 20);
+ this.state = 1320;
+ this.match(HiveSqlParser.T_NVARCHAR);
+ break;
+
+ case 21:
+ this.enterOuterAlt(localctx, 21);
+ this.state = 1321;
+ this.match(HiveSqlParser.T_NUMBER);
+ break;
+
+ case 22:
+ this.enterOuterAlt(localctx, 22);
+ this.state = 1322;
+ this.match(HiveSqlParser.T_NUMERIC);
+ break;
+
+ case 23:
+ this.enterOuterAlt(localctx, 23);
+ this.state = 1323;
+ this.match(HiveSqlParser.T_PLS_INTEGER);
+ break;
+
+ case 24:
+ this.enterOuterAlt(localctx, 24);
+ this.state = 1324;
+ this.match(HiveSqlParser.T_REAL);
+ break;
+
+ case 25:
+ this.enterOuterAlt(localctx, 25);
+ this.state = 1325;
+ this.match(HiveSqlParser.T_RESULT_SET_LOCATOR);
+ this.state = 1326;
+ this.match(HiveSqlParser.T_VARYING);
+ break;
+
+ case 26:
+ this.enterOuterAlt(localctx, 26);
+ this.state = 1327;
+ this.match(HiveSqlParser.T_SIMPLE_FLOAT);
+ break;
+
+ case 27:
+ this.enterOuterAlt(localctx, 27);
+ this.state = 1328;
+ this.match(HiveSqlParser.T_SIMPLE_DOUBLE);
+ break;
+
+ case 28:
+ this.enterOuterAlt(localctx, 28);
+ this.state = 1329;
+ this.match(HiveSqlParser.T_SIMPLE_INTEGER);
+ break;
+
+ case 29:
+ this.enterOuterAlt(localctx, 29);
+ this.state = 1330;
+ this.match(HiveSqlParser.T_SMALLINT);
+ break;
+
+ case 30:
+ this.enterOuterAlt(localctx, 30);
+ this.state = 1331;
+ this.match(HiveSqlParser.T_SMALLDATETIME);
+ break;
+
+ case 31:
+ this.enterOuterAlt(localctx, 31);
+ this.state = 1332;
+ this.match(HiveSqlParser.T_STRING);
+ break;
+
+ case 32:
+ this.enterOuterAlt(localctx, 32);
+ this.state = 1333;
+ this.match(HiveSqlParser.T_SYS_REFCURSOR);
+ break;
+
+ case 33:
+ this.enterOuterAlt(localctx, 33);
+ this.state = 1334;
+ this.match(HiveSqlParser.T_TIMESTAMP);
+ break;
+
+ case 34:
+ this.enterOuterAlt(localctx, 34);
+ this.state = 1335;
+ this.match(HiveSqlParser.T_TINYINT);
+ break;
+
+ case 35:
+ this.enterOuterAlt(localctx, 35);
+ this.state = 1336;
+ this.match(HiveSqlParser.T_VARCHAR);
+ break;
+
+ case 36:
+ this.enterOuterAlt(localctx, 36);
+ this.state = 1337;
+ this.match(HiveSqlParser.T_VARCHAR2);
+ break;
+
+ case 37:
+ this.enterOuterAlt(localctx, 37);
+ this.state = 1338;
+ this.match(HiveSqlParser.T_XML);
+ break;
+
+ case 38:
+ this.enterOuterAlt(localctx, 38);
+ this.state = 1339;
+ this.ident();
+ this.state = 1342;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,120,this._ctx);
+ if(la_===1) {
+ this.state = 1340;
+ this.match(HiveSqlParser.T__3);
+ this.state = 1341;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_TYPE || _la===HiveSqlParser.T_ROWTYPE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+
+ }
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Dtype_lenContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_dtype_len;
+ return this;
+}
+
+Dtype_lenContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Dtype_lenContext.prototype.constructor = Dtype_lenContext;
+
+Dtype_lenContext.prototype.T_OPEN_P = function() {
+ return this.getToken(HiveSqlParser.T_OPEN_P, 0);
+};
+
+Dtype_lenContext.prototype.T_CLOSE_P = function() {
+ return this.getToken(HiveSqlParser.T_CLOSE_P, 0);
+};
+
+Dtype_lenContext.prototype.L_INT = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.L_INT);
+ } else {
+ return this.getToken(HiveSqlParser.L_INT, i);
+ }
+};
+
+
+Dtype_lenContext.prototype.T_MAX = function() {
+ return this.getToken(HiveSqlParser.T_MAX, 0);
+};
+
+Dtype_lenContext.prototype.T_COMMA = function() {
+ return this.getToken(HiveSqlParser.T_COMMA, 0);
+};
+
+Dtype_lenContext.prototype.T_CHAR = function() {
+ return this.getToken(HiveSqlParser.T_CHAR, 0);
+};
+
+Dtype_lenContext.prototype.T_BYTE = function() {
+ return this.getToken(HiveSqlParser.T_BYTE, 0);
+};
+
+Dtype_lenContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterDtype_len(this);
+ }
+};
+
+Dtype_lenContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitDtype_len(this);
+ }
+};
+
+Dtype_lenContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitDtype_len(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Dtype_lenContext = Dtype_lenContext;
+
+HiveSqlParser.prototype.dtype_len = function() {
+
+ var localctx = new Dtype_lenContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 120, HiveSqlParser.RULE_dtype_len);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1346;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 1347;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.L_INT || _la===HiveSqlParser.T_MAX)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 1349;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_CHAR || _la===HiveSqlParser.T_BYTE) {
+ this.state = 1348;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_CHAR || _la===HiveSqlParser.T_BYTE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 1353;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_COMMA) {
+ this.state = 1351;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 1352;
+ this.match(HiveSqlParser.L_INT);
+ }
+
+ this.state = 1355;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Dtype_attrContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_dtype_attr;
+ return this;
+}
+
+Dtype_attrContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Dtype_attrContext.prototype.constructor = Dtype_attrContext;
+
+Dtype_attrContext.prototype.T_NULL = function() {
+ return this.getToken(HiveSqlParser.T_NULL, 0);
+};
+
+Dtype_attrContext.prototype.T_NOT = function() {
+ return this.getToken(HiveSqlParser.T_NOT, 0);
+};
+
+Dtype_attrContext.prototype.T_CHARACTER = function() {
+ return this.getToken(HiveSqlParser.T_CHARACTER, 0);
+};
+
+Dtype_attrContext.prototype.T_SET = function() {
+ return this.getToken(HiveSqlParser.T_SET, 0);
+};
+
+Dtype_attrContext.prototype.ident = function() {
+ return this.getTypedRuleContext(IdentContext,0);
+};
+
+Dtype_attrContext.prototype.T_CASESPECIFIC = function() {
+ return this.getToken(HiveSqlParser.T_CASESPECIFIC, 0);
+};
+
+Dtype_attrContext.prototype.T_CS = function() {
+ return this.getToken(HiveSqlParser.T_CS, 0);
+};
+
+Dtype_attrContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterDtype_attr(this);
+ }
+};
+
+Dtype_attrContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitDtype_attr(this);
+ }
+};
+
+Dtype_attrContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitDtype_attr(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Dtype_attrContext = Dtype_attrContext;
+
+HiveSqlParser.prototype.dtype_attr = function() {
+
+ var localctx = new Dtype_attrContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 122, HiveSqlParser.RULE_dtype_attr);
+ var _la = 0; // Token type
+ try {
+ this.state = 1368;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,126,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1358;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_NOT) {
+ this.state = 1357;
+ this.match(HiveSqlParser.T_NOT);
+ }
+
+ this.state = 1360;
+ this.match(HiveSqlParser.T_NULL);
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 1361;
+ this.match(HiveSqlParser.T_CHARACTER);
+ this.state = 1362;
+ this.match(HiveSqlParser.T_SET);
+ this.state = 1363;
+ this.ident();
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 1365;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_NOT) {
+ this.state = 1364;
+ this.match(HiveSqlParser.T_NOT);
+ }
+
+ this.state = 1367;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_CASESPECIFIC || _la===HiveSqlParser.T_CS)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Dtype_defaultContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_dtype_default;
+ return this;
+}
+
+Dtype_defaultContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Dtype_defaultContext.prototype.constructor = Dtype_defaultContext;
+
+Dtype_defaultContext.prototype.T_EQUAL = function() {
+ return this.getToken(HiveSqlParser.T_EQUAL, 0);
+};
+
+Dtype_defaultContext.prototype.expr = function() {
+ return this.getTypedRuleContext(ExprContext,0);
+};
+
+Dtype_defaultContext.prototype.T_COLON = function() {
+ return this.getToken(HiveSqlParser.T_COLON, 0);
+};
+
+Dtype_defaultContext.prototype.T_DEFAULT = function() {
+ return this.getToken(HiveSqlParser.T_DEFAULT, 0);
+};
+
+Dtype_defaultContext.prototype.T_WITH = function() {
+ return this.getToken(HiveSqlParser.T_WITH, 0);
+};
+
+Dtype_defaultContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterDtype_default(this);
+ }
+};
+
+Dtype_defaultContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitDtype_default(this);
+ }
+};
+
+Dtype_defaultContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitDtype_default(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Dtype_defaultContext = Dtype_defaultContext;
+
+HiveSqlParser.prototype.dtype_default = function() {
+
+ var localctx = new Dtype_defaultContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 124, HiveSqlParser.RULE_dtype_default);
+ var _la = 0; // Token type
+ try {
+ this.state = 1382;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case HiveSqlParser.T_COLON:
+ case HiveSqlParser.T_EQUAL:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1371;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_COLON) {
+ this.state = 1370;
+ this.match(HiveSqlParser.T_COLON);
+ }
+
+ this.state = 1373;
+ this.match(HiveSqlParser.T_EQUAL);
+ this.state = 1374;
+ this.expr(0);
+ break;
+ case HiveSqlParser.T_WITH:
+ case HiveSqlParser.T_DEFAULT:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 1376;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_WITH) {
+ this.state = 1375;
+ this.match(HiveSqlParser.T_WITH);
+ }
+
+ this.state = 1378;
+ this.match(HiveSqlParser.T_DEFAULT);
+ this.state = 1380;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,129,this._ctx);
+ if(la_===1) {
+ this.state = 1379;
+ this.expr(0);
+
+ }
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_database_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_create_database_stmt;
+ return this;
+}
+
+Create_database_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_database_stmtContext.prototype.constructor = Create_database_stmtContext;
+
+Create_database_stmtContext.prototype.T_CREATE = function() {
+ return this.getToken(HiveSqlParser.T_CREATE, 0);
+};
+
+Create_database_stmtContext.prototype.expr = function() {
+ return this.getTypedRuleContext(ExprContext,0);
+};
+
+Create_database_stmtContext.prototype.T_DATABASE = function() {
+ return this.getToken(HiveSqlParser.T_DATABASE, 0);
+};
+
+Create_database_stmtContext.prototype.T_SCHEMA = function() {
+ return this.getToken(HiveSqlParser.T_SCHEMA, 0);
+};
+
+Create_database_stmtContext.prototype.T_IF = function() {
+ return this.getToken(HiveSqlParser.T_IF, 0);
+};
+
+Create_database_stmtContext.prototype.T_NOT = function() {
+ return this.getToken(HiveSqlParser.T_NOT, 0);
+};
+
+Create_database_stmtContext.prototype.T_EXISTS = function() {
+ return this.getToken(HiveSqlParser.T_EXISTS, 0);
+};
+
+Create_database_stmtContext.prototype.create_database_option = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Create_database_optionContext);
+ } else {
+ return this.getTypedRuleContext(Create_database_optionContext,i);
+ }
+};
+
+Create_database_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCreate_database_stmt(this);
+ }
+};
+
+Create_database_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCreate_database_stmt(this);
+ }
+};
+
+Create_database_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCreate_database_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Create_database_stmtContext = Create_database_stmtContext;
+
+HiveSqlParser.prototype.create_database_stmt = function() {
+
+ var localctx = new Create_database_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 126, HiveSqlParser.RULE_create_database_stmt);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1384;
+ this.match(HiveSqlParser.T_CREATE);
+ this.state = 1385;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_DATABASE || _la===HiveSqlParser.T_SCHEMA)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 1389;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,131,this._ctx);
+ if(la_===1) {
+ this.state = 1386;
+ this.match(HiveSqlParser.T_IF);
+ this.state = 1387;
+ this.match(HiveSqlParser.T_NOT);
+ this.state = 1388;
+ this.match(HiveSqlParser.T_EXISTS);
+
+ }
+ this.state = 1391;
+ this.expr(0);
+ this.state = 1395;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,132,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 1392;
+ this.create_database_option();
+ }
+ this.state = 1397;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,132,this._ctx);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_database_optionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_create_database_option;
+ return this;
+}
+
+Create_database_optionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_database_optionContext.prototype.constructor = Create_database_optionContext;
+
+Create_database_optionContext.prototype.T_COMMENT = function() {
+ return this.getToken(HiveSqlParser.T_COMMENT, 0);
+};
+
+Create_database_optionContext.prototype.expr = function() {
+ return this.getTypedRuleContext(ExprContext,0);
+};
+
+Create_database_optionContext.prototype.T_LOCATION = function() {
+ return this.getToken(HiveSqlParser.T_LOCATION, 0);
+};
+
+Create_database_optionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCreate_database_option(this);
+ }
+};
+
+Create_database_optionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCreate_database_option(this);
+ }
+};
+
+Create_database_optionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCreate_database_option(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Create_database_optionContext = Create_database_optionContext;
+
+HiveSqlParser.prototype.create_database_option = function() {
+
+ var localctx = new Create_database_optionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 128, HiveSqlParser.RULE_create_database_option);
+ try {
+ this.state = 1402;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case HiveSqlParser.T_COMMENT:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1398;
+ this.match(HiveSqlParser.T_COMMENT);
+ this.state = 1399;
+ this.expr(0);
+ break;
+ case HiveSqlParser.T_LOCATION:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 1400;
+ this.match(HiveSqlParser.T_LOCATION);
+ this.state = 1401;
+ this.expr(0);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_function_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_create_function_stmt;
+ return this;
+}
+
+Create_function_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_function_stmtContext.prototype.constructor = Create_function_stmtContext;
+
+Create_function_stmtContext.prototype.T_FUNCTION = function() {
+ return this.getToken(HiveSqlParser.T_FUNCTION, 0);
+};
+
+Create_function_stmtContext.prototype.ident = function() {
+ return this.getTypedRuleContext(IdentContext,0);
+};
+
+Create_function_stmtContext.prototype.create_function_return = function() {
+ return this.getTypedRuleContext(Create_function_returnContext,0);
+};
+
+Create_function_stmtContext.prototype.single_block_stmt = function() {
+ return this.getTypedRuleContext(Single_block_stmtContext,0);
+};
+
+Create_function_stmtContext.prototype.T_ALTER = function() {
+ return this.getToken(HiveSqlParser.T_ALTER, 0);
+};
+
+Create_function_stmtContext.prototype.T_CREATE = function() {
+ return this.getToken(HiveSqlParser.T_CREATE, 0);
+};
+
+Create_function_stmtContext.prototype.T_REPLACE = function() {
+ return this.getToken(HiveSqlParser.T_REPLACE, 0);
+};
+
+Create_function_stmtContext.prototype.create_routine_params = function() {
+ return this.getTypedRuleContext(Create_routine_paramsContext,0);
+};
+
+Create_function_stmtContext.prototype.declare_block_inplace = function() {
+ return this.getTypedRuleContext(Declare_block_inplaceContext,0);
+};
+
+Create_function_stmtContext.prototype.T_AS = function() {
+ return this.getToken(HiveSqlParser.T_AS, 0);
+};
+
+Create_function_stmtContext.prototype.T_IS = function() {
+ return this.getToken(HiveSqlParser.T_IS, 0);
+};
+
+Create_function_stmtContext.prototype.T_OR = function() {
+ return this.getToken(HiveSqlParser.T_OR, 0);
+};
+
+Create_function_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCreate_function_stmt(this);
+ }
+};
+
+Create_function_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCreate_function_stmt(this);
+ }
+};
+
+Create_function_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCreate_function_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Create_function_stmtContext = Create_function_stmtContext;
+
+HiveSqlParser.prototype.create_function_stmt = function() {
+
+ var localctx = new Create_function_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 130, HiveSqlParser.RULE_create_function_stmt);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1411;
+ this._errHandler.sync(this);
+ switch (this._input.LA(1)) {
+ case HiveSqlParser.T_ALTER:
+ this.state = 1404;
+ this.match(HiveSqlParser.T_ALTER);
+ break;
+ case HiveSqlParser.T_CREATE:
+ this.state = 1405;
+ this.match(HiveSqlParser.T_CREATE);
+ this.state = 1408;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_OR) {
+ this.state = 1406;
+ this.match(HiveSqlParser.T_OR);
+ this.state = 1407;
+ this.match(HiveSqlParser.T_REPLACE);
+ }
+
+ break;
+ case HiveSqlParser.T_REPLACE:
+ this.state = 1410;
+ this.match(HiveSqlParser.T_REPLACE);
+ break;
+ case HiveSqlParser.T_FUNCTION:
+ break;
+ default:
+ break;
+ }
+ this.state = 1413;
+ this.match(HiveSqlParser.T_FUNCTION);
+ this.state = 1414;
+ this.ident();
+ this.state = 1416;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,136,this._ctx);
+ if(la_===1) {
+ this.state = 1415;
+ this.create_routine_params();
+
+ }
+ this.state = 1418;
+ this.create_function_return();
+ this.state = 1420;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,137,this._ctx);
+ if(la_===1) {
+ this.state = 1419;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_AS || _la===HiveSqlParser.T_IS)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+
+ }
+ this.state = 1423;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,138,this._ctx);
+ if(la_===1) {
+ this.state = 1422;
+ this.declare_block_inplace();
+
+ }
+ this.state = 1425;
+ this.single_block_stmt();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_function_returnContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_create_function_return;
+ return this;
+}
+
+Create_function_returnContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_function_returnContext.prototype.constructor = Create_function_returnContext;
+
+Create_function_returnContext.prototype.dtype = function() {
+ return this.getTypedRuleContext(DtypeContext,0);
+};
+
+Create_function_returnContext.prototype.T_RETURN = function() {
+ return this.getToken(HiveSqlParser.T_RETURN, 0);
+};
+
+Create_function_returnContext.prototype.T_RETURNS = function() {
+ return this.getToken(HiveSqlParser.T_RETURNS, 0);
+};
+
+Create_function_returnContext.prototype.dtype_len = function() {
+ return this.getTypedRuleContext(Dtype_lenContext,0);
+};
+
+Create_function_returnContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCreate_function_return(this);
+ }
+};
+
+Create_function_returnContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCreate_function_return(this);
+ }
+};
+
+Create_function_returnContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCreate_function_return(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Create_function_returnContext = Create_function_returnContext;
+
+HiveSqlParser.prototype.create_function_return = function() {
+
+ var localctx = new Create_function_returnContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 132, HiveSqlParser.RULE_create_function_return);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1427;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_RETURN || _la===HiveSqlParser.T_RETURNS)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 1428;
+ this.dtype();
+ this.state = 1430;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,139,this._ctx);
+ if(la_===1) {
+ this.state = 1429;
+ this.dtype_len();
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_package_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_create_package_stmt;
+ return this;
+}
+
+Create_package_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_package_stmtContext.prototype.constructor = Create_package_stmtContext;
+
+Create_package_stmtContext.prototype.T_PACKAGE = function() {
+ return this.getToken(HiveSqlParser.T_PACKAGE, 0);
+};
+
+Create_package_stmtContext.prototype.ident = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(IdentContext);
+ } else {
+ return this.getTypedRuleContext(IdentContext,i);
+ }
+};
+
+Create_package_stmtContext.prototype.package_spec = function() {
+ return this.getTypedRuleContext(Package_specContext,0);
+};
+
+Create_package_stmtContext.prototype.T_END = function() {
+ return this.getToken(HiveSqlParser.T_END, 0);
+};
+
+Create_package_stmtContext.prototype.T_AS = function() {
+ return this.getToken(HiveSqlParser.T_AS, 0);
+};
+
+Create_package_stmtContext.prototype.T_IS = function() {
+ return this.getToken(HiveSqlParser.T_IS, 0);
+};
+
+Create_package_stmtContext.prototype.T_ALTER = function() {
+ return this.getToken(HiveSqlParser.T_ALTER, 0);
+};
+
+Create_package_stmtContext.prototype.T_CREATE = function() {
+ return this.getToken(HiveSqlParser.T_CREATE, 0);
+};
+
+Create_package_stmtContext.prototype.T_REPLACE = function() {
+ return this.getToken(HiveSqlParser.T_REPLACE, 0);
+};
+
+Create_package_stmtContext.prototype.T_SEMICOLON = function() {
+ return this.getToken(HiveSqlParser.T_SEMICOLON, 0);
+};
+
+Create_package_stmtContext.prototype.T_OR = function() {
+ return this.getToken(HiveSqlParser.T_OR, 0);
+};
+
+Create_package_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCreate_package_stmt(this);
+ }
+};
+
+Create_package_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCreate_package_stmt(this);
+ }
+};
+
+Create_package_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCreate_package_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Create_package_stmtContext = Create_package_stmtContext;
+
+HiveSqlParser.prototype.create_package_stmt = function() {
+
+ var localctx = new Create_package_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 134, HiveSqlParser.RULE_create_package_stmt);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1439;
+ this._errHandler.sync(this);
+ switch (this._input.LA(1)) {
+ case HiveSqlParser.T_ALTER:
+ this.state = 1432;
+ this.match(HiveSqlParser.T_ALTER);
+ break;
+ case HiveSqlParser.T_CREATE:
+ this.state = 1433;
+ this.match(HiveSqlParser.T_CREATE);
+ this.state = 1436;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_OR) {
+ this.state = 1434;
+ this.match(HiveSqlParser.T_OR);
+ this.state = 1435;
+ this.match(HiveSqlParser.T_REPLACE);
+ }
+
+ break;
+ case HiveSqlParser.T_REPLACE:
+ this.state = 1438;
+ this.match(HiveSqlParser.T_REPLACE);
+ break;
+ case HiveSqlParser.T_PACKAGE:
+ break;
+ default:
+ break;
+ }
+ this.state = 1441;
+ this.match(HiveSqlParser.T_PACKAGE);
+ this.state = 1442;
+ this.ident();
+ this.state = 1443;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_AS || _la===HiveSqlParser.T_IS)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 1444;
+ this.package_spec();
+ this.state = 1445;
+ this.match(HiveSqlParser.T_END);
+ this.state = 1449;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,142,this._ctx);
+ if(la_===1) {
+ this.state = 1446;
+ this.ident();
+ this.state = 1447;
+ this.match(HiveSqlParser.T_SEMICOLON);
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Package_specContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_package_spec;
+ return this;
+}
+
+Package_specContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Package_specContext.prototype.constructor = Package_specContext;
+
+Package_specContext.prototype.package_spec_item = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Package_spec_itemContext);
+ } else {
+ return this.getTypedRuleContext(Package_spec_itemContext,i);
+ }
+};
+
+Package_specContext.prototype.T_SEMICOLON = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_SEMICOLON);
+ } else {
+ return this.getToken(HiveSqlParser.T_SEMICOLON, i);
+ }
+};
+
+
+Package_specContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterPackage_spec(this);
+ }
+};
+
+Package_specContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitPackage_spec(this);
+ }
+};
+
+Package_specContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitPackage_spec(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Package_specContext = Package_specContext;
+
+HiveSqlParser.prototype.package_spec = function() {
+
+ var localctx = new Package_specContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 136, HiveSqlParser.RULE_package_spec);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1451;
+ this.package_spec_item();
+ this.state = 1452;
+ this.match(HiveSqlParser.T_SEMICOLON);
+ this.state = 1458;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while((((_la) & ~0x1f) == 0 && ((1 << _la) & ((1 << HiveSqlParser.T__8) | (1 << HiveSqlParser.T_GO) | (1 << HiveSqlParser.T_BEGIN) | (1 << HiveSqlParser.T_EXCEPTION) | (1 << HiveSqlParser.L_ID) | (1 << HiveSqlParser.T_THEN) | (1 << HiveSqlParser.T_SET) | (1 << HiveSqlParser.T_ALLOCATE) | (1 << HiveSqlParser.T_CURSOR) | (1 << HiveSqlParser.T_FOR) | (1 << HiveSqlParser.T_RESULT) | (1 << HiveSqlParser.T_PROCEDURE) | (1 << HiveSqlParser.T_ASSOCIATE))) !== 0) || ((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (HiveSqlParser.T_LOCATOR - 32)) | (1 << (HiveSqlParser.T_LOCATORS - 32)) | (1 << (HiveSqlParser.T_WITH - 32)) | (1 << (HiveSqlParser.T_TRANSACTION - 32)) | (1 << (HiveSqlParser.T_BREAK - 32)) | (1 << (HiveSqlParser.T_CALL - 32)) | (1 << (HiveSqlParser.T_DECLARE - 32)) | (1 << (HiveSqlParser.T_AS - 32)) | (1 << (HiveSqlParser.T_CONSTANT - 32)) | (1 << (HiveSqlParser.T_CONDITION - 32)) | (1 << (HiveSqlParser.T_IS - 32)) | (1 << (HiveSqlParser.T_RETURN - 32)) | (1 << (HiveSqlParser.T_ONLY - 32)) | (1 << (HiveSqlParser.T_TO - 32)) | (1 << (HiveSqlParser.T_CALLER - 32)) | (1 << (HiveSqlParser.T_CLIENT - 32)) | (1 << (HiveSqlParser.T_WITHOUT - 32)) | (1 << (HiveSqlParser.T_CONTINUE - 32)) | (1 << (HiveSqlParser.T_EXIT - 32)) | (1 << (HiveSqlParser.T_HANDLER - 32)) | (1 << (HiveSqlParser.T_SQLEXCEPTION - 32)) | (1 << (HiveSqlParser.T_SQLWARNING - 32)) | (1 << (HiveSqlParser.T_NOT - 32)) | (1 << (HiveSqlParser.T_FOUND - 32)) | (1 << (HiveSqlParser.T_GLOBAL - 32)) | (1 << (HiveSqlParser.T_TEMPORARY - 32)) | (1 << (HiveSqlParser.T_TABLE - 32)) | (1 << (HiveSqlParser.T_CREATE - 32)) | (1 << (HiveSqlParser.T_IF - 32)) | (1 << (HiveSqlParser.T_EXISTS - 32)) | (1 << (HiveSqlParser.T_LOCAL - 32)) | (1 << (HiveSqlParser.T_MULTISET - 32)))) !== 0) || ((((_la - 64)) & ~0x1f) == 0 && ((1 << (_la - 64)) & ((1 << (HiveSqlParser.T_VOLATILE - 64)) | (1 << (HiveSqlParser.T_LIKE - 64)) | (1 << (HiveSqlParser.T_CONSTRAINT - 64)) | (1 << (HiveSqlParser.T_PRIMARY - 64)) | (1 << (HiveSqlParser.T_KEY - 64)) | (1 << (HiveSqlParser.T_UNIQUE - 64)) | (1 << (HiveSqlParser.T_REFERENCES - 64)) | (1 << (HiveSqlParser.T_IDENTITY - 64)) | (1 << (HiveSqlParser.T_AUTO_INCREMENT - 64)) | (1 << (HiveSqlParser.T_ENABLE - 64)) | (1 << (HiveSqlParser.T_CLUSTERED - 64)) | (1 << (HiveSqlParser.T_ASC - 64)) | (1 << (HiveSqlParser.T_DESC - 64)) | (1 << (HiveSqlParser.T_FOREIGN - 64)) | (1 << (HiveSqlParser.T_ON - 64)) | (1 << (HiveSqlParser.T_UPDATE - 64)) | (1 << (HiveSqlParser.T_DELETE - 64)) | (1 << (HiveSqlParser.T_NO - 64)) | (1 << (HiveSqlParser.T_ACTION - 64)) | (1 << (HiveSqlParser.T_RESTRICT - 64)) | (1 << (HiveSqlParser.T_DEFAULT - 64)) | (1 << (HiveSqlParser.T_CASCADE - 64)) | (1 << (HiveSqlParser.T_LOG - 64)) | (1 << (HiveSqlParser.T_FALLBACK - 64)) | (1 << (HiveSqlParser.T_COMMIT - 64)) | (1 << (HiveSqlParser.T_PRESERVE - 64)) | (1 << (HiveSqlParser.T_ROWS - 64)) | (1 << (HiveSqlParser.T_SEGMENT - 64)) | (1 << (HiveSqlParser.T_CREATION - 64)) | (1 << (HiveSqlParser.T_IMMEDIATE - 64)) | (1 << (HiveSqlParser.T_DEFERRED - 64)))) !== 0) || ((((_la - 96)) & ~0x1f) == 0 && ((1 << (_la - 96)) & ((1 << (HiveSqlParser.T_PCTFREE - 96)) | (1 << (HiveSqlParser.T_PCTUSED - 96)) | (1 << (HiveSqlParser.T_INITRANS - 96)) | (1 << (HiveSqlParser.T_MAXTRANS - 96)) | (1 << (HiveSqlParser.T_NOCOMPRESS - 96)) | (1 << (HiveSqlParser.T_LOGGING - 96)) | (1 << (HiveSqlParser.T_NOLOGGING - 96)) | (1 << (HiveSqlParser.T_STORAGE - 96)) | (1 << (HiveSqlParser.T_TABLESPACE - 96)) | (1 << (HiveSqlParser.T_INDEX - 96)) | (1 << (HiveSqlParser.T_IN - 96)) | (1 << (HiveSqlParser.T_REPLACE - 96)) | (1 << (HiveSqlParser.T_DISTRIBUTE - 96)) | (1 << (HiveSqlParser.T_BY - 96)) | (1 << (HiveSqlParser.T_HASH - 96)) | (1 << (HiveSqlParser.T_LOGGED - 96)) | (1 << (HiveSqlParser.T_COMPRESS - 96)) | (1 << (HiveSqlParser.T_YES - 96)) | (1 << (HiveSqlParser.T_DEFINITION - 96)) | (1 << (HiveSqlParser.T_DROP - 96)) | (1 << (HiveSqlParser.T_DATA - 96)) | (1 << (HiveSqlParser.T_STORED - 96)) | (1 << (HiveSqlParser.T_ROW - 96)) | (1 << (HiveSqlParser.T_FORMAT - 96)) | (1 << (HiveSqlParser.T_DELIMITED - 96)) | (1 << (HiveSqlParser.T_FIELDS - 96)) | (1 << (HiveSqlParser.T_TERMINATED - 96)) | (1 << (HiveSqlParser.T_ESCAPED - 96)) | (1 << (HiveSqlParser.T_COLLECTION - 96)) | (1 << (HiveSqlParser.T_ITEMS - 96)) | (1 << (HiveSqlParser.T_MAP - 96)) | (1 << (HiveSqlParser.T_KEYS - 96)))) !== 0) || ((((_la - 128)) & ~0x1f) == 0 && ((1 << (_la - 128)) & ((1 << (HiveSqlParser.T_LINES - 128)) | (1 << (HiveSqlParser.T_DEFINED - 128)) | (1 << (HiveSqlParser.T_TEXTIMAGE_ON - 128)) | (1 << (HiveSqlParser.T_COMMENT - 128)) | (1 << (HiveSqlParser.T_CHARACTER - 128)) | (1 << (HiveSqlParser.T_CHARSET - 128)) | (1 << (HiveSqlParser.T_ENGINE - 128)) | (1 << (HiveSqlParser.T_ALTER - 128)) | (1 << (HiveSqlParser.T_ADD2 - 128)) | (1 << (HiveSqlParser.T_CHAR - 128)) | (1 << (HiveSqlParser.T_BIGINT - 128)) | (1 << (HiveSqlParser.T_BINARY_DOUBLE - 128)) | (1 << (HiveSqlParser.T_BINARY_FLOAT - 128)) | (1 << (HiveSqlParser.T_BIT - 128)) | (1 << (HiveSqlParser.T_DATE - 128)) | (1 << (HiveSqlParser.T_DATETIME - 128)) | (1 << (HiveSqlParser.T_DEC - 128)) | (1 << (HiveSqlParser.T_DECIMAL - 128)) | (1 << (HiveSqlParser.T_DOUBLE - 128)) | (1 << (HiveSqlParser.T_PRECISION - 128)) | (1 << (HiveSqlParser.T_FLOAT - 128)) | (1 << (HiveSqlParser.T_INT - 128)) | (1 << (HiveSqlParser.T_INT2 - 128)) | (1 << (HiveSqlParser.T_INT4 - 128)) | (1 << (HiveSqlParser.T_INT8 - 128)) | (1 << (HiveSqlParser.T_INTEGER - 128)) | (1 << (HiveSqlParser.T_NCHAR - 128)) | (1 << (HiveSqlParser.T_NVARCHAR - 128)) | (1 << (HiveSqlParser.T_NUMBER - 128)) | (1 << (HiveSqlParser.T_NUMERIC - 128)))) !== 0) || ((((_la - 160)) & ~0x1f) == 0 && ((1 << (_la - 160)) & ((1 << (HiveSqlParser.T_REAL - 160)) | (1 << (HiveSqlParser.T_RESULT_SET_LOCATOR - 160)) | (1 << (HiveSqlParser.T_VARYING - 160)) | (1 << (HiveSqlParser.T_SIMPLE_FLOAT - 160)) | (1 << (HiveSqlParser.T_SIMPLE_DOUBLE - 160)) | (1 << (HiveSqlParser.T_SMALLINT - 160)) | (1 << (HiveSqlParser.T_SMALLDATETIME - 160)) | (1 << (HiveSqlParser.T_STRING - 160)) | (1 << (HiveSqlParser.T_SYS_REFCURSOR - 160)) | (1 << (HiveSqlParser.T_TIMESTAMP - 160)) | (1 << (HiveSqlParser.T_VARCHAR - 160)) | (1 << (HiveSqlParser.T_VARCHAR2 - 160)) | (1 << (HiveSqlParser.T_XML - 160)) | (1 << (HiveSqlParser.T_MAX - 160)) | (1 << (HiveSqlParser.T_BYTE - 160)) | (1 << (HiveSqlParser.T_CASESPECIFIC - 160)) | (1 << (HiveSqlParser.T_CS - 160)) | (1 << (HiveSqlParser.T_DATABASE - 160)) | (1 << (HiveSqlParser.T_SCHEMA - 160)) | (1 << (HiveSqlParser.T_LOCATION - 160)) | (1 << (HiveSqlParser.T_OR - 160)) | (1 << (HiveSqlParser.T_FUNCTION - 160)) | (1 << (HiveSqlParser.T_RETURNS - 160)) | (1 << (HiveSqlParser.T_PACKAGE - 160)) | (1 << (HiveSqlParser.T_PROC - 160)) | (1 << (HiveSqlParser.T_BODY - 160)) | (1 << (HiveSqlParser.T_OUT - 160)) | (1 << (HiveSqlParser.T_INOUT - 160)))) !== 0) || ((((_la - 192)) & ~0x1f) == 0 && ((1 << (_la - 192)) & ((1 << (HiveSqlParser.T_LANGUAGE - 192)) | (1 << (HiveSqlParser.T_SQL - 192)) | (1 << (HiveSqlParser.T_SECURITY - 192)) | (1 << (HiveSqlParser.T_CREATOR - 192)) | (1 << (HiveSqlParser.T_DEFINER - 192)) | (1 << (HiveSqlParser.T_INVOKER - 192)) | (1 << (HiveSqlParser.T_OWNER - 192)) | (1 << (HiveSqlParser.T_DYNAMIC - 192)) | (1 << (HiveSqlParser.T_SETS - 192)) | (1 << (HiveSqlParser.T_EXEC - 192)) | (1 << (HiveSqlParser.T_EXECUTE - 192)) | (1 << (HiveSqlParser.T_INTO - 192)) | (1 << (HiveSqlParser.T_INCLUDE - 192)) | (1 << (HiveSqlParser.T_INSERT - 192)) | (1 << (HiveSqlParser.T_OVERWRITE - 192)) | (1 << (HiveSqlParser.T_VALUES - 192)) | (1 << (HiveSqlParser.T_DIRECTORY - 192)) | (1 << (HiveSqlParser.T_GET - 192)) | (1 << (HiveSqlParser.T_DIAGNOSTICS - 192)) | (1 << (HiveSqlParser.T_MESSAGE_TEXT - 192)) | (1 << (HiveSqlParser.T_ROW_COUNT - 192)) | (1 << (HiveSqlParser.T_GRANT - 192)) | (1 << (HiveSqlParser.T_ROLE - 192)) | (1 << (HiveSqlParser.T_LEAVE - 192)) | (1 << (HiveSqlParser.T_OBJECT - 192)) | (1 << (HiveSqlParser.T_AT - 192)) | (1 << (HiveSqlParser.T_OPEN - 192)) | (1 << (HiveSqlParser.T_FETCH - 192)) | (1 << (HiveSqlParser.T_FROM - 192)))) !== 0) || ((((_la - 224)) & ~0x1f) == 0 && ((1 << (_la - 224)) & ((1 << (HiveSqlParser.T_COLLECT - 224)) | (1 << (HiveSqlParser.T_STATISTICS - 224)) | (1 << (HiveSqlParser.T_STATS - 224)) | (1 << (HiveSqlParser.T_COLUMN - 224)) | (1 << (HiveSqlParser.T_CLOSE - 224)) | (1 << (HiveSqlParser.T_CMP - 224)) | (1 << (HiveSqlParser.T_SUM - 224)) | (1 << (HiveSqlParser.T_COPY - 224)) | (1 << (HiveSqlParser.T_HDFS - 224)) | (1 << (HiveSqlParser.T_BATCHSIZE - 224)) | (1 << (HiveSqlParser.T_DELIMITER - 224)) | (1 << (HiveSqlParser.T_SQLINSERT - 224)) | (1 << (HiveSqlParser.T_IGNORE - 224)) | (1 << (HiveSqlParser.T_WORK - 224)) | (1 << (HiveSqlParser.T_PRINT - 224)) | (1 << (HiveSqlParser.T_QUIT - 224)) | (1 << (HiveSqlParser.T_RAISE - 224)) | (1 << (HiveSqlParser.T_RESIGNAL - 224)) | (1 << (HiveSqlParser.T_SQLSTATE - 224)) | (1 << (HiveSqlParser.T_VALUE - 224)) | (1 << (HiveSqlParser.T_ROLLBACK - 224)) | (1 << (HiveSqlParser.T_CURRENT - 224)) | (1 << (HiveSqlParser.T_CURRENT_SCHEMA - 224)) | (1 << (HiveSqlParser.T_ANSI_NULLS - 224)) | (1 << (HiveSqlParser.T_ANSI_PADDING - 224)) | (1 << (HiveSqlParser.T_NOCOUNT - 224)) | (1 << (HiveSqlParser.T_QUOTED_IDENTIFIER - 224)) | (1 << (HiveSqlParser.T_XACT_ABORT - 224)) | (1 << (HiveSqlParser.T_OFF - 224)) | (1 << (HiveSqlParser.T_QUERY_BAND - 224)) | (1 << (HiveSqlParser.T_NONE - 224)) | (1 << (HiveSqlParser.T_SESSION - 224)))) !== 0) || ((((_la - 256)) & ~0x1f) == 0 && ((1 << (_la - 256)) & ((1 << (HiveSqlParser.T_SIGNAL - 256)) | (1 << (HiveSqlParser.T_SUMMARY - 256)) | (1 << (HiveSqlParser.T_TOP - 256)) | (1 << (HiveSqlParser.T_LIMIT - 256)) | (1 << (HiveSqlParser.T_TRUNCATE - 256)) | (1 << (HiveSqlParser.T_USE - 256)) | (1 << (HiveSqlParser.T_WHILE - 256)) | (1 << (HiveSqlParser.T_DO - 256)) | (1 << (HiveSqlParser.T_LOOP - 256)) | (1 << (HiveSqlParser.T_REVERSE - 256)) | (1 << (HiveSqlParser.T_STEP - 256)) | (1 << (HiveSqlParser.T_USING - 256)) | (1 << (HiveSqlParser.T_ALL - 256)) | (1 << (HiveSqlParser.T_EXCEPT - 256)) | (1 << (HiveSqlParser.T_INTERSECT - 256)) | (1 << (HiveSqlParser.T_SELECT - 256)) | (1 << (HiveSqlParser.T_SEL - 256)) | (1 << (HiveSqlParser.T_DISTINCT - 256)) | (1 << (HiveSqlParser.T_TITLE - 256)) | (1 << (HiveSqlParser.T_INNER - 256)) | (1 << (HiveSqlParser.T_JOIN - 256)) | (1 << (HiveSqlParser.T_LEFT - 256)) | (1 << (HiveSqlParser.T_RIGHT - 256)) | (1 << (HiveSqlParser.T_FULL - 256)) | (1 << (HiveSqlParser.T_OUTER - 256)))) !== 0) || ((((_la - 288)) & ~0x1f) == 0 && ((1 << (_la - 288)) & ((1 << (HiveSqlParser.T_GROUP - 288)) | (1 << (HiveSqlParser.T_HAVING - 288)) | (1 << (HiveSqlParser.T_QUALIFY - 288)) | (1 << (HiveSqlParser.T_ORDER - 288)) | (1 << (HiveSqlParser.T_RR - 288)) | (1 << (HiveSqlParser.T_RS - 288)) | (1 << (HiveSqlParser.T_UR - 288)) | (1 << (HiveSqlParser.T_AND - 288)) | (1 << (HiveSqlParser.T_KEEP - 288)) | (1 << (HiveSqlParser.T_EXCLUSIVE - 288)) | (1 << (HiveSqlParser.T_SHARE - 288)) | (1 << (HiveSqlParser.T_LOCKS - 288)) | (1 << (HiveSqlParser.T_MERGE - 288)) | (1 << (HiveSqlParser.T_MATCHED - 288)) | (1 << (HiveSqlParser.T_DESCRIBE - 288)) | (1 << (HiveSqlParser.T_BETWEEN - 288)) | (1 << (HiveSqlParser.T_RLIKE - 288)) | (1 << (HiveSqlParser.T_REGEXP - 288)) | (1 << (HiveSqlParser.T_INTERVAL - 288)) | (1 << (HiveSqlParser.T_DAY - 288)) | (1 << (HiveSqlParser.T_DAYS - 288)) | (1 << (HiveSqlParser.T_MICROSECOND - 288)) | (1 << (HiveSqlParser.T_MICROSECONDS - 288)))) !== 0) || ((((_la - 320)) & ~0x1f) == 0 && ((1 << (_la - 320)) & ((1 << (HiveSqlParser.T_SECOND - 320)) | (1 << (HiveSqlParser.T_SECONDS - 320)) | (1 << (HiveSqlParser.T_CONCAT - 320)) | (1 << (HiveSqlParser.T_CASE - 320)) | (1 << (HiveSqlParser.T_ISOPEN - 320)) | (1 << (HiveSqlParser.T_NOTFOUND - 320)) | (1 << (HiveSqlParser.T_AVG - 320)) | (1 << (HiveSqlParser.T_COUNT - 320)) | (1 << (HiveSqlParser.T_COUNT_BIG - 320)) | (1 << (HiveSqlParser.T_CUME_DIST - 320)) | (1 << (HiveSqlParser.T_DENSE_RANK - 320)) | (1 << (HiveSqlParser.T_FIRST_VALUE - 320)) | (1 << (HiveSqlParser.T_LAG - 320)) | (1 << (HiveSqlParser.T_LAST_VALUE - 320)) | (1 << (HiveSqlParser.T_LEAD - 320)) | (1 << (HiveSqlParser.T_MIN - 320)) | (1 << (HiveSqlParser.T_RANK - 320)) | (1 << (HiveSqlParser.T_ROW_NUMBER - 320)) | (1 << (HiveSqlParser.T_STDEV - 320)) | (1 << (HiveSqlParser.T_VAR - 320)) | (1 << (HiveSqlParser.T_VARIANCE - 320)) | (1 << (HiveSqlParser.T_OVER - 320)) | (1 << (HiveSqlParser.T_PARTITION - 320)) | (1 << (HiveSqlParser.T_ACTIVITY_COUNT - 320)) | (1 << (HiveSqlParser.T_CAST - 320)) | (1 << (HiveSqlParser.T_CURRENT_DATE - 320)) | (1 << (HiveSqlParser.T_CURRENT_TIMESTAMP - 320)) | (1 << (HiveSqlParser.T_CURRENT_USER - 320)) | (1 << (HiveSqlParser.T_USER - 320)))) !== 0) || ((((_la - 356)) & ~0x1f) == 0 && ((1 << (_la - 356)) & ((1 << (HiveSqlParser.T_PART_COUNT - 356)) | (1 << (HiveSqlParser.T_PART_LOC - 356)) | (1 << (HiveSqlParser.T_TRIM - 356)) | (1 << (HiveSqlParser.T_SUBSTRING - 356)) | (1 << (HiveSqlParser.T_SYSDATE - 356)) | (1 << (HiveSqlParser.T_HIVE - 356)) | (1 << (HiveSqlParser.T_HOST - 356)) | (1 << (HiveSqlParser.T_TRUE - 356)) | (1 << (HiveSqlParser.T_FALSE - 356)) | (1 << (HiveSqlParser.T_DIR - 356)) | (1 << (HiveSqlParser.T_FILE - 356)) | (1 << (HiveSqlParser.T_FILES - 356)) | (1 << (HiveSqlParser.T_NEW - 356)) | (1 << (HiveSqlParser.T_PWD - 356)) | (1 << (HiveSqlParser.T_SESSIONS - 356)) | (1 << (HiveSqlParser.T_SUBDIR - 356)))) !== 0)) {
+ this.state = 1453;
+ this.package_spec_item();
+ this.state = 1454;
+ this.match(HiveSqlParser.T_SEMICOLON);
+ this.state = 1460;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Package_spec_itemContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_package_spec_item;
+ return this;
+}
+
+Package_spec_itemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Package_spec_itemContext.prototype.constructor = Package_spec_itemContext;
+
+Package_spec_itemContext.prototype.declare_stmt_item = function() {
+ return this.getTypedRuleContext(Declare_stmt_itemContext,0);
+};
+
+Package_spec_itemContext.prototype.T_FUNCTION = function() {
+ return this.getToken(HiveSqlParser.T_FUNCTION, 0);
+};
+
+Package_spec_itemContext.prototype.ident = function() {
+ return this.getTypedRuleContext(IdentContext,0);
+};
+
+Package_spec_itemContext.prototype.create_function_return = function() {
+ return this.getTypedRuleContext(Create_function_returnContext,0);
+};
+
+Package_spec_itemContext.prototype.create_routine_params = function() {
+ return this.getTypedRuleContext(Create_routine_paramsContext,0);
+};
+
+Package_spec_itemContext.prototype.T_PROCEDURE = function() {
+ return this.getToken(HiveSqlParser.T_PROCEDURE, 0);
+};
+
+Package_spec_itemContext.prototype.T_PROC = function() {
+ return this.getToken(HiveSqlParser.T_PROC, 0);
+};
+
+Package_spec_itemContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterPackage_spec_item(this);
+ }
+};
+
+Package_spec_itemContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitPackage_spec_item(this);
+ }
+};
+
+Package_spec_itemContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitPackage_spec_item(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Package_spec_itemContext = Package_spec_itemContext;
+
+HiveSqlParser.prototype.package_spec_item = function() {
+
+ var localctx = new Package_spec_itemContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 138, HiveSqlParser.RULE_package_spec_item);
+ var _la = 0; // Token type
+ try {
+ this.state = 1474;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,146,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1461;
+ this.declare_stmt_item();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 1462;
+ this.match(HiveSqlParser.T_FUNCTION);
+ this.state = 1463;
+ this.ident();
+ this.state = 1465;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,144,this._ctx);
+ if(la_===1) {
+ this.state = 1464;
+ this.create_routine_params();
+
+ }
+ this.state = 1467;
+ this.create_function_return();
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 1469;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_PROCEDURE || _la===HiveSqlParser.T_PROC)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 1470;
+ this.ident();
+ this.state = 1472;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,145,this._ctx);
+ if(la_===1) {
+ this.state = 1471;
+ this.create_routine_params();
+
+ }
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_package_body_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_create_package_body_stmt;
+ return this;
+}
+
+Create_package_body_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_package_body_stmtContext.prototype.constructor = Create_package_body_stmtContext;
+
+Create_package_body_stmtContext.prototype.T_PACKAGE = function() {
+ return this.getToken(HiveSqlParser.T_PACKAGE, 0);
+};
+
+Create_package_body_stmtContext.prototype.T_BODY = function() {
+ return this.getToken(HiveSqlParser.T_BODY, 0);
+};
+
+Create_package_body_stmtContext.prototype.ident = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(IdentContext);
+ } else {
+ return this.getTypedRuleContext(IdentContext,i);
+ }
+};
+
+Create_package_body_stmtContext.prototype.package_body = function() {
+ return this.getTypedRuleContext(Package_bodyContext,0);
+};
+
+Create_package_body_stmtContext.prototype.T_END = function() {
+ return this.getToken(HiveSqlParser.T_END, 0);
+};
+
+Create_package_body_stmtContext.prototype.T_AS = function() {
+ return this.getToken(HiveSqlParser.T_AS, 0);
+};
+
+Create_package_body_stmtContext.prototype.T_IS = function() {
+ return this.getToken(HiveSqlParser.T_IS, 0);
+};
+
+Create_package_body_stmtContext.prototype.T_ALTER = function() {
+ return this.getToken(HiveSqlParser.T_ALTER, 0);
+};
+
+Create_package_body_stmtContext.prototype.T_CREATE = function() {
+ return this.getToken(HiveSqlParser.T_CREATE, 0);
+};
+
+Create_package_body_stmtContext.prototype.T_REPLACE = function() {
+ return this.getToken(HiveSqlParser.T_REPLACE, 0);
+};
+
+Create_package_body_stmtContext.prototype.T_SEMICOLON = function() {
+ return this.getToken(HiveSqlParser.T_SEMICOLON, 0);
+};
+
+Create_package_body_stmtContext.prototype.T_OR = function() {
+ return this.getToken(HiveSqlParser.T_OR, 0);
+};
+
+Create_package_body_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCreate_package_body_stmt(this);
+ }
+};
+
+Create_package_body_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCreate_package_body_stmt(this);
+ }
+};
+
+Create_package_body_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCreate_package_body_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Create_package_body_stmtContext = Create_package_body_stmtContext;
+
+HiveSqlParser.prototype.create_package_body_stmt = function() {
+
+ var localctx = new Create_package_body_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 140, HiveSqlParser.RULE_create_package_body_stmt);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1483;
+ this._errHandler.sync(this);
+ switch (this._input.LA(1)) {
+ case HiveSqlParser.T_ALTER:
+ this.state = 1476;
+ this.match(HiveSqlParser.T_ALTER);
+ break;
+ case HiveSqlParser.T_CREATE:
+ this.state = 1477;
+ this.match(HiveSqlParser.T_CREATE);
+ this.state = 1480;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_OR) {
+ this.state = 1478;
+ this.match(HiveSqlParser.T_OR);
+ this.state = 1479;
+ this.match(HiveSqlParser.T_REPLACE);
+ }
+
+ break;
+ case HiveSqlParser.T_REPLACE:
+ this.state = 1482;
+ this.match(HiveSqlParser.T_REPLACE);
+ break;
+ case HiveSqlParser.T_PACKAGE:
+ break;
+ default:
+ break;
+ }
+ this.state = 1485;
+ this.match(HiveSqlParser.T_PACKAGE);
+ this.state = 1486;
+ this.match(HiveSqlParser.T_BODY);
+ this.state = 1487;
+ this.ident();
+ this.state = 1488;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_AS || _la===HiveSqlParser.T_IS)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 1489;
+ this.package_body();
+ this.state = 1490;
+ this.match(HiveSqlParser.T_END);
+ this.state = 1494;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,149,this._ctx);
+ if(la_===1) {
+ this.state = 1491;
+ this.ident();
+ this.state = 1492;
+ this.match(HiveSqlParser.T_SEMICOLON);
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Package_bodyContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_package_body;
+ return this;
+}
+
+Package_bodyContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Package_bodyContext.prototype.constructor = Package_bodyContext;
+
+Package_bodyContext.prototype.package_body_item = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Package_body_itemContext);
+ } else {
+ return this.getTypedRuleContext(Package_body_itemContext,i);
+ }
+};
+
+Package_bodyContext.prototype.T_SEMICOLON = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_SEMICOLON);
+ } else {
+ return this.getToken(HiveSqlParser.T_SEMICOLON, i);
+ }
+};
+
+
+Package_bodyContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterPackage_body(this);
+ }
+};
+
+Package_bodyContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitPackage_body(this);
+ }
+};
+
+Package_bodyContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitPackage_body(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Package_bodyContext = Package_bodyContext;
+
+HiveSqlParser.prototype.package_body = function() {
+
+ var localctx = new Package_bodyContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 142, HiveSqlParser.RULE_package_body);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1496;
+ this.package_body_item();
+ this.state = 1497;
+ this.match(HiveSqlParser.T_SEMICOLON);
+ this.state = 1503;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while((((_la) & ~0x1f) == 0 && ((1 << _la) & ((1 << HiveSqlParser.T__8) | (1 << HiveSqlParser.T_GO) | (1 << HiveSqlParser.T_BEGIN) | (1 << HiveSqlParser.T_EXCEPTION) | (1 << HiveSqlParser.L_ID) | (1 << HiveSqlParser.T_THEN) | (1 << HiveSqlParser.T_SET) | (1 << HiveSqlParser.T_ALLOCATE) | (1 << HiveSqlParser.T_CURSOR) | (1 << HiveSqlParser.T_FOR) | (1 << HiveSqlParser.T_RESULT) | (1 << HiveSqlParser.T_PROCEDURE) | (1 << HiveSqlParser.T_ASSOCIATE))) !== 0) || ((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (HiveSqlParser.T_LOCATOR - 32)) | (1 << (HiveSqlParser.T_LOCATORS - 32)) | (1 << (HiveSqlParser.T_WITH - 32)) | (1 << (HiveSqlParser.T_TRANSACTION - 32)) | (1 << (HiveSqlParser.T_BREAK - 32)) | (1 << (HiveSqlParser.T_CALL - 32)) | (1 << (HiveSqlParser.T_DECLARE - 32)) | (1 << (HiveSqlParser.T_AS - 32)) | (1 << (HiveSqlParser.T_CONSTANT - 32)) | (1 << (HiveSqlParser.T_CONDITION - 32)) | (1 << (HiveSqlParser.T_IS - 32)) | (1 << (HiveSqlParser.T_RETURN - 32)) | (1 << (HiveSqlParser.T_ONLY - 32)) | (1 << (HiveSqlParser.T_TO - 32)) | (1 << (HiveSqlParser.T_CALLER - 32)) | (1 << (HiveSqlParser.T_CLIENT - 32)) | (1 << (HiveSqlParser.T_WITHOUT - 32)) | (1 << (HiveSqlParser.T_CONTINUE - 32)) | (1 << (HiveSqlParser.T_EXIT - 32)) | (1 << (HiveSqlParser.T_HANDLER - 32)) | (1 << (HiveSqlParser.T_SQLEXCEPTION - 32)) | (1 << (HiveSqlParser.T_SQLWARNING - 32)) | (1 << (HiveSqlParser.T_NOT - 32)) | (1 << (HiveSqlParser.T_FOUND - 32)) | (1 << (HiveSqlParser.T_GLOBAL - 32)) | (1 << (HiveSqlParser.T_TEMPORARY - 32)) | (1 << (HiveSqlParser.T_TABLE - 32)) | (1 << (HiveSqlParser.T_CREATE - 32)) | (1 << (HiveSqlParser.T_IF - 32)) | (1 << (HiveSqlParser.T_EXISTS - 32)) | (1 << (HiveSqlParser.T_LOCAL - 32)) | (1 << (HiveSqlParser.T_MULTISET - 32)))) !== 0) || ((((_la - 64)) & ~0x1f) == 0 && ((1 << (_la - 64)) & ((1 << (HiveSqlParser.T_VOLATILE - 64)) | (1 << (HiveSqlParser.T_LIKE - 64)) | (1 << (HiveSqlParser.T_CONSTRAINT - 64)) | (1 << (HiveSqlParser.T_PRIMARY - 64)) | (1 << (HiveSqlParser.T_KEY - 64)) | (1 << (HiveSqlParser.T_UNIQUE - 64)) | (1 << (HiveSqlParser.T_REFERENCES - 64)) | (1 << (HiveSqlParser.T_IDENTITY - 64)) | (1 << (HiveSqlParser.T_AUTO_INCREMENT - 64)) | (1 << (HiveSqlParser.T_ENABLE - 64)) | (1 << (HiveSqlParser.T_CLUSTERED - 64)) | (1 << (HiveSqlParser.T_ASC - 64)) | (1 << (HiveSqlParser.T_DESC - 64)) | (1 << (HiveSqlParser.T_FOREIGN - 64)) | (1 << (HiveSqlParser.T_ON - 64)) | (1 << (HiveSqlParser.T_UPDATE - 64)) | (1 << (HiveSqlParser.T_DELETE - 64)) | (1 << (HiveSqlParser.T_NO - 64)) | (1 << (HiveSqlParser.T_ACTION - 64)) | (1 << (HiveSqlParser.T_RESTRICT - 64)) | (1 << (HiveSqlParser.T_DEFAULT - 64)) | (1 << (HiveSqlParser.T_CASCADE - 64)) | (1 << (HiveSqlParser.T_LOG - 64)) | (1 << (HiveSqlParser.T_FALLBACK - 64)) | (1 << (HiveSqlParser.T_COMMIT - 64)) | (1 << (HiveSqlParser.T_PRESERVE - 64)) | (1 << (HiveSqlParser.T_ROWS - 64)) | (1 << (HiveSqlParser.T_SEGMENT - 64)) | (1 << (HiveSqlParser.T_CREATION - 64)) | (1 << (HiveSqlParser.T_IMMEDIATE - 64)) | (1 << (HiveSqlParser.T_DEFERRED - 64)))) !== 0) || ((((_la - 96)) & ~0x1f) == 0 && ((1 << (_la - 96)) & ((1 << (HiveSqlParser.T_PCTFREE - 96)) | (1 << (HiveSqlParser.T_PCTUSED - 96)) | (1 << (HiveSqlParser.T_INITRANS - 96)) | (1 << (HiveSqlParser.T_MAXTRANS - 96)) | (1 << (HiveSqlParser.T_NOCOMPRESS - 96)) | (1 << (HiveSqlParser.T_LOGGING - 96)) | (1 << (HiveSqlParser.T_NOLOGGING - 96)) | (1 << (HiveSqlParser.T_STORAGE - 96)) | (1 << (HiveSqlParser.T_TABLESPACE - 96)) | (1 << (HiveSqlParser.T_INDEX - 96)) | (1 << (HiveSqlParser.T_IN - 96)) | (1 << (HiveSqlParser.T_REPLACE - 96)) | (1 << (HiveSqlParser.T_DISTRIBUTE - 96)) | (1 << (HiveSqlParser.T_BY - 96)) | (1 << (HiveSqlParser.T_HASH - 96)) | (1 << (HiveSqlParser.T_LOGGED - 96)) | (1 << (HiveSqlParser.T_COMPRESS - 96)) | (1 << (HiveSqlParser.T_YES - 96)) | (1 << (HiveSqlParser.T_DEFINITION - 96)) | (1 << (HiveSqlParser.T_DROP - 96)) | (1 << (HiveSqlParser.T_DATA - 96)) | (1 << (HiveSqlParser.T_STORED - 96)) | (1 << (HiveSqlParser.T_ROW - 96)) | (1 << (HiveSqlParser.T_FORMAT - 96)) | (1 << (HiveSqlParser.T_DELIMITED - 96)) | (1 << (HiveSqlParser.T_FIELDS - 96)) | (1 << (HiveSqlParser.T_TERMINATED - 96)) | (1 << (HiveSqlParser.T_ESCAPED - 96)) | (1 << (HiveSqlParser.T_COLLECTION - 96)) | (1 << (HiveSqlParser.T_ITEMS - 96)) | (1 << (HiveSqlParser.T_MAP - 96)) | (1 << (HiveSqlParser.T_KEYS - 96)))) !== 0) || ((((_la - 128)) & ~0x1f) == 0 && ((1 << (_la - 128)) & ((1 << (HiveSqlParser.T_LINES - 128)) | (1 << (HiveSqlParser.T_DEFINED - 128)) | (1 << (HiveSqlParser.T_TEXTIMAGE_ON - 128)) | (1 << (HiveSqlParser.T_COMMENT - 128)) | (1 << (HiveSqlParser.T_CHARACTER - 128)) | (1 << (HiveSqlParser.T_CHARSET - 128)) | (1 << (HiveSqlParser.T_ENGINE - 128)) | (1 << (HiveSqlParser.T_ALTER - 128)) | (1 << (HiveSqlParser.T_ADD2 - 128)) | (1 << (HiveSqlParser.T_CHAR - 128)) | (1 << (HiveSqlParser.T_BIGINT - 128)) | (1 << (HiveSqlParser.T_BINARY_DOUBLE - 128)) | (1 << (HiveSqlParser.T_BINARY_FLOAT - 128)) | (1 << (HiveSqlParser.T_BIT - 128)) | (1 << (HiveSqlParser.T_DATE - 128)) | (1 << (HiveSqlParser.T_DATETIME - 128)) | (1 << (HiveSqlParser.T_DEC - 128)) | (1 << (HiveSqlParser.T_DECIMAL - 128)) | (1 << (HiveSqlParser.T_DOUBLE - 128)) | (1 << (HiveSqlParser.T_PRECISION - 128)) | (1 << (HiveSqlParser.T_FLOAT - 128)) | (1 << (HiveSqlParser.T_INT - 128)) | (1 << (HiveSqlParser.T_INT2 - 128)) | (1 << (HiveSqlParser.T_INT4 - 128)) | (1 << (HiveSqlParser.T_INT8 - 128)) | (1 << (HiveSqlParser.T_INTEGER - 128)) | (1 << (HiveSqlParser.T_NCHAR - 128)) | (1 << (HiveSqlParser.T_NVARCHAR - 128)) | (1 << (HiveSqlParser.T_NUMBER - 128)) | (1 << (HiveSqlParser.T_NUMERIC - 128)))) !== 0) || ((((_la - 160)) & ~0x1f) == 0 && ((1 << (_la - 160)) & ((1 << (HiveSqlParser.T_REAL - 160)) | (1 << (HiveSqlParser.T_RESULT_SET_LOCATOR - 160)) | (1 << (HiveSqlParser.T_VARYING - 160)) | (1 << (HiveSqlParser.T_SIMPLE_FLOAT - 160)) | (1 << (HiveSqlParser.T_SIMPLE_DOUBLE - 160)) | (1 << (HiveSqlParser.T_SMALLINT - 160)) | (1 << (HiveSqlParser.T_SMALLDATETIME - 160)) | (1 << (HiveSqlParser.T_STRING - 160)) | (1 << (HiveSqlParser.T_SYS_REFCURSOR - 160)) | (1 << (HiveSqlParser.T_TIMESTAMP - 160)) | (1 << (HiveSqlParser.T_VARCHAR - 160)) | (1 << (HiveSqlParser.T_VARCHAR2 - 160)) | (1 << (HiveSqlParser.T_XML - 160)) | (1 << (HiveSqlParser.T_MAX - 160)) | (1 << (HiveSqlParser.T_BYTE - 160)) | (1 << (HiveSqlParser.T_CASESPECIFIC - 160)) | (1 << (HiveSqlParser.T_CS - 160)) | (1 << (HiveSqlParser.T_DATABASE - 160)) | (1 << (HiveSqlParser.T_SCHEMA - 160)) | (1 << (HiveSqlParser.T_LOCATION - 160)) | (1 << (HiveSqlParser.T_OR - 160)) | (1 << (HiveSqlParser.T_FUNCTION - 160)) | (1 << (HiveSqlParser.T_RETURNS - 160)) | (1 << (HiveSqlParser.T_PACKAGE - 160)) | (1 << (HiveSqlParser.T_PROC - 160)) | (1 << (HiveSqlParser.T_BODY - 160)) | (1 << (HiveSqlParser.T_OUT - 160)) | (1 << (HiveSqlParser.T_INOUT - 160)))) !== 0) || ((((_la - 192)) & ~0x1f) == 0 && ((1 << (_la - 192)) & ((1 << (HiveSqlParser.T_LANGUAGE - 192)) | (1 << (HiveSqlParser.T_SQL - 192)) | (1 << (HiveSqlParser.T_SECURITY - 192)) | (1 << (HiveSqlParser.T_CREATOR - 192)) | (1 << (HiveSqlParser.T_DEFINER - 192)) | (1 << (HiveSqlParser.T_INVOKER - 192)) | (1 << (HiveSqlParser.T_OWNER - 192)) | (1 << (HiveSqlParser.T_DYNAMIC - 192)) | (1 << (HiveSqlParser.T_SETS - 192)) | (1 << (HiveSqlParser.T_EXEC - 192)) | (1 << (HiveSqlParser.T_EXECUTE - 192)) | (1 << (HiveSqlParser.T_INTO - 192)) | (1 << (HiveSqlParser.T_INCLUDE - 192)) | (1 << (HiveSqlParser.T_INSERT - 192)) | (1 << (HiveSqlParser.T_OVERWRITE - 192)) | (1 << (HiveSqlParser.T_VALUES - 192)) | (1 << (HiveSqlParser.T_DIRECTORY - 192)) | (1 << (HiveSqlParser.T_GET - 192)) | (1 << (HiveSqlParser.T_DIAGNOSTICS - 192)) | (1 << (HiveSqlParser.T_MESSAGE_TEXT - 192)) | (1 << (HiveSqlParser.T_ROW_COUNT - 192)) | (1 << (HiveSqlParser.T_GRANT - 192)) | (1 << (HiveSqlParser.T_ROLE - 192)) | (1 << (HiveSqlParser.T_LEAVE - 192)) | (1 << (HiveSqlParser.T_OBJECT - 192)) | (1 << (HiveSqlParser.T_AT - 192)) | (1 << (HiveSqlParser.T_OPEN - 192)) | (1 << (HiveSqlParser.T_FETCH - 192)) | (1 << (HiveSqlParser.T_FROM - 192)))) !== 0) || ((((_la - 224)) & ~0x1f) == 0 && ((1 << (_la - 224)) & ((1 << (HiveSqlParser.T_COLLECT - 224)) | (1 << (HiveSqlParser.T_STATISTICS - 224)) | (1 << (HiveSqlParser.T_STATS - 224)) | (1 << (HiveSqlParser.T_COLUMN - 224)) | (1 << (HiveSqlParser.T_CLOSE - 224)) | (1 << (HiveSqlParser.T_CMP - 224)) | (1 << (HiveSqlParser.T_SUM - 224)) | (1 << (HiveSqlParser.T_COPY - 224)) | (1 << (HiveSqlParser.T_HDFS - 224)) | (1 << (HiveSqlParser.T_BATCHSIZE - 224)) | (1 << (HiveSqlParser.T_DELIMITER - 224)) | (1 << (HiveSqlParser.T_SQLINSERT - 224)) | (1 << (HiveSqlParser.T_IGNORE - 224)) | (1 << (HiveSqlParser.T_WORK - 224)) | (1 << (HiveSqlParser.T_PRINT - 224)) | (1 << (HiveSqlParser.T_QUIT - 224)) | (1 << (HiveSqlParser.T_RAISE - 224)) | (1 << (HiveSqlParser.T_RESIGNAL - 224)) | (1 << (HiveSqlParser.T_SQLSTATE - 224)) | (1 << (HiveSqlParser.T_VALUE - 224)) | (1 << (HiveSqlParser.T_ROLLBACK - 224)) | (1 << (HiveSqlParser.T_CURRENT - 224)) | (1 << (HiveSqlParser.T_CURRENT_SCHEMA - 224)) | (1 << (HiveSqlParser.T_ANSI_NULLS - 224)) | (1 << (HiveSqlParser.T_ANSI_PADDING - 224)) | (1 << (HiveSqlParser.T_NOCOUNT - 224)) | (1 << (HiveSqlParser.T_QUOTED_IDENTIFIER - 224)) | (1 << (HiveSqlParser.T_XACT_ABORT - 224)) | (1 << (HiveSqlParser.T_OFF - 224)) | (1 << (HiveSqlParser.T_QUERY_BAND - 224)) | (1 << (HiveSqlParser.T_NONE - 224)) | (1 << (HiveSqlParser.T_SESSION - 224)))) !== 0) || ((((_la - 256)) & ~0x1f) == 0 && ((1 << (_la - 256)) & ((1 << (HiveSqlParser.T_SIGNAL - 256)) | (1 << (HiveSqlParser.T_SUMMARY - 256)) | (1 << (HiveSqlParser.T_TOP - 256)) | (1 << (HiveSqlParser.T_LIMIT - 256)) | (1 << (HiveSqlParser.T_TRUNCATE - 256)) | (1 << (HiveSqlParser.T_USE - 256)) | (1 << (HiveSqlParser.T_WHILE - 256)) | (1 << (HiveSqlParser.T_DO - 256)) | (1 << (HiveSqlParser.T_LOOP - 256)) | (1 << (HiveSqlParser.T_REVERSE - 256)) | (1 << (HiveSqlParser.T_STEP - 256)) | (1 << (HiveSqlParser.T_USING - 256)) | (1 << (HiveSqlParser.T_ALL - 256)) | (1 << (HiveSqlParser.T_EXCEPT - 256)) | (1 << (HiveSqlParser.T_INTERSECT - 256)) | (1 << (HiveSqlParser.T_SELECT - 256)) | (1 << (HiveSqlParser.T_SEL - 256)) | (1 << (HiveSqlParser.T_DISTINCT - 256)) | (1 << (HiveSqlParser.T_TITLE - 256)) | (1 << (HiveSqlParser.T_INNER - 256)) | (1 << (HiveSqlParser.T_JOIN - 256)) | (1 << (HiveSqlParser.T_LEFT - 256)) | (1 << (HiveSqlParser.T_RIGHT - 256)) | (1 << (HiveSqlParser.T_FULL - 256)) | (1 << (HiveSqlParser.T_OUTER - 256)))) !== 0) || ((((_la - 288)) & ~0x1f) == 0 && ((1 << (_la - 288)) & ((1 << (HiveSqlParser.T_GROUP - 288)) | (1 << (HiveSqlParser.T_HAVING - 288)) | (1 << (HiveSqlParser.T_QUALIFY - 288)) | (1 << (HiveSqlParser.T_ORDER - 288)) | (1 << (HiveSqlParser.T_RR - 288)) | (1 << (HiveSqlParser.T_RS - 288)) | (1 << (HiveSqlParser.T_UR - 288)) | (1 << (HiveSqlParser.T_AND - 288)) | (1 << (HiveSqlParser.T_KEEP - 288)) | (1 << (HiveSqlParser.T_EXCLUSIVE - 288)) | (1 << (HiveSqlParser.T_SHARE - 288)) | (1 << (HiveSqlParser.T_LOCKS - 288)) | (1 << (HiveSqlParser.T_MERGE - 288)) | (1 << (HiveSqlParser.T_MATCHED - 288)) | (1 << (HiveSqlParser.T_DESCRIBE - 288)) | (1 << (HiveSqlParser.T_BETWEEN - 288)) | (1 << (HiveSqlParser.T_RLIKE - 288)) | (1 << (HiveSqlParser.T_REGEXP - 288)) | (1 << (HiveSqlParser.T_INTERVAL - 288)) | (1 << (HiveSqlParser.T_DAY - 288)) | (1 << (HiveSqlParser.T_DAYS - 288)) | (1 << (HiveSqlParser.T_MICROSECOND - 288)) | (1 << (HiveSqlParser.T_MICROSECONDS - 288)))) !== 0) || ((((_la - 320)) & ~0x1f) == 0 && ((1 << (_la - 320)) & ((1 << (HiveSqlParser.T_SECOND - 320)) | (1 << (HiveSqlParser.T_SECONDS - 320)) | (1 << (HiveSqlParser.T_CONCAT - 320)) | (1 << (HiveSqlParser.T_CASE - 320)) | (1 << (HiveSqlParser.T_ISOPEN - 320)) | (1 << (HiveSqlParser.T_NOTFOUND - 320)) | (1 << (HiveSqlParser.T_AVG - 320)) | (1 << (HiveSqlParser.T_COUNT - 320)) | (1 << (HiveSqlParser.T_COUNT_BIG - 320)) | (1 << (HiveSqlParser.T_CUME_DIST - 320)) | (1 << (HiveSqlParser.T_DENSE_RANK - 320)) | (1 << (HiveSqlParser.T_FIRST_VALUE - 320)) | (1 << (HiveSqlParser.T_LAG - 320)) | (1 << (HiveSqlParser.T_LAST_VALUE - 320)) | (1 << (HiveSqlParser.T_LEAD - 320)) | (1 << (HiveSqlParser.T_MIN - 320)) | (1 << (HiveSqlParser.T_RANK - 320)) | (1 << (HiveSqlParser.T_ROW_NUMBER - 320)) | (1 << (HiveSqlParser.T_STDEV - 320)) | (1 << (HiveSqlParser.T_VAR - 320)) | (1 << (HiveSqlParser.T_VARIANCE - 320)) | (1 << (HiveSqlParser.T_OVER - 320)) | (1 << (HiveSqlParser.T_PARTITION - 320)) | (1 << (HiveSqlParser.T_ACTIVITY_COUNT - 320)) | (1 << (HiveSqlParser.T_CAST - 320)) | (1 << (HiveSqlParser.T_CURRENT_DATE - 320)) | (1 << (HiveSqlParser.T_CURRENT_TIMESTAMP - 320)) | (1 << (HiveSqlParser.T_CURRENT_USER - 320)) | (1 << (HiveSqlParser.T_USER - 320)))) !== 0) || ((((_la - 356)) & ~0x1f) == 0 && ((1 << (_la - 356)) & ((1 << (HiveSqlParser.T_PART_COUNT - 356)) | (1 << (HiveSqlParser.T_PART_LOC - 356)) | (1 << (HiveSqlParser.T_TRIM - 356)) | (1 << (HiveSqlParser.T_SUBSTRING - 356)) | (1 << (HiveSqlParser.T_SYSDATE - 356)) | (1 << (HiveSqlParser.T_HIVE - 356)) | (1 << (HiveSqlParser.T_HOST - 356)) | (1 << (HiveSqlParser.T_TRUE - 356)) | (1 << (HiveSqlParser.T_FALSE - 356)) | (1 << (HiveSqlParser.T_DIR - 356)) | (1 << (HiveSqlParser.T_FILE - 356)) | (1 << (HiveSqlParser.T_FILES - 356)) | (1 << (HiveSqlParser.T_NEW - 356)) | (1 << (HiveSqlParser.T_PWD - 356)) | (1 << (HiveSqlParser.T_SESSIONS - 356)) | (1 << (HiveSqlParser.T_SUBDIR - 356)))) !== 0)) {
+ this.state = 1498;
+ this.package_body_item();
+ this.state = 1499;
+ this.match(HiveSqlParser.T_SEMICOLON);
+ this.state = 1505;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Package_body_itemContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_package_body_item;
+ return this;
+}
+
+Package_body_itemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Package_body_itemContext.prototype.constructor = Package_body_itemContext;
+
+Package_body_itemContext.prototype.declare_stmt_item = function() {
+ return this.getTypedRuleContext(Declare_stmt_itemContext,0);
+};
+
+Package_body_itemContext.prototype.create_function_stmt = function() {
+ return this.getTypedRuleContext(Create_function_stmtContext,0);
+};
+
+Package_body_itemContext.prototype.create_procedure_stmt = function() {
+ return this.getTypedRuleContext(Create_procedure_stmtContext,0);
+};
+
+Package_body_itemContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterPackage_body_item(this);
+ }
+};
+
+Package_body_itemContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitPackage_body_item(this);
+ }
+};
+
+Package_body_itemContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitPackage_body_item(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Package_body_itemContext = Package_body_itemContext;
+
+HiveSqlParser.prototype.package_body_item = function() {
+
+ var localctx = new Package_body_itemContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 144, HiveSqlParser.RULE_package_body_item);
+ try {
+ this.state = 1509;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,151,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1506;
+ this.declare_stmt_item();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 1507;
+ this.create_function_stmt();
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 1508;
+ this.create_procedure_stmt();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_procedure_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_create_procedure_stmt;
+ return this;
+}
+
+Create_procedure_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_procedure_stmtContext.prototype.constructor = Create_procedure_stmtContext;
+
+Create_procedure_stmtContext.prototype.ident = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(IdentContext);
+ } else {
+ return this.getTypedRuleContext(IdentContext,i);
+ }
+};
+
+Create_procedure_stmtContext.prototype.proc_block = function() {
+ return this.getTypedRuleContext(Proc_blockContext,0);
+};
+
+Create_procedure_stmtContext.prototype.T_PROCEDURE = function() {
+ return this.getToken(HiveSqlParser.T_PROCEDURE, 0);
+};
+
+Create_procedure_stmtContext.prototype.T_PROC = function() {
+ return this.getToken(HiveSqlParser.T_PROC, 0);
+};
+
+Create_procedure_stmtContext.prototype.T_ALTER = function() {
+ return this.getToken(HiveSqlParser.T_ALTER, 0);
+};
+
+Create_procedure_stmtContext.prototype.T_CREATE = function() {
+ return this.getToken(HiveSqlParser.T_CREATE, 0);
+};
+
+Create_procedure_stmtContext.prototype.T_REPLACE = function() {
+ return this.getToken(HiveSqlParser.T_REPLACE, 0);
+};
+
+Create_procedure_stmtContext.prototype.create_routine_params = function() {
+ return this.getTypedRuleContext(Create_routine_paramsContext,0);
+};
+
+Create_procedure_stmtContext.prototype.create_routine_options = function() {
+ return this.getTypedRuleContext(Create_routine_optionsContext,0);
+};
+
+Create_procedure_stmtContext.prototype.declare_block_inplace = function() {
+ return this.getTypedRuleContext(Declare_block_inplaceContext,0);
+};
+
+Create_procedure_stmtContext.prototype.label = function() {
+ return this.getTypedRuleContext(LabelContext,0);
+};
+
+Create_procedure_stmtContext.prototype.T_SEMICOLON = function() {
+ return this.getToken(HiveSqlParser.T_SEMICOLON, 0);
+};
+
+Create_procedure_stmtContext.prototype.T_AS = function() {
+ return this.getToken(HiveSqlParser.T_AS, 0);
+};
+
+Create_procedure_stmtContext.prototype.T_IS = function() {
+ return this.getToken(HiveSqlParser.T_IS, 0);
+};
+
+Create_procedure_stmtContext.prototype.T_OR = function() {
+ return this.getToken(HiveSqlParser.T_OR, 0);
+};
+
+Create_procedure_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCreate_procedure_stmt(this);
+ }
+};
+
+Create_procedure_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCreate_procedure_stmt(this);
+ }
+};
+
+Create_procedure_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCreate_procedure_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Create_procedure_stmtContext = Create_procedure_stmtContext;
+
+HiveSqlParser.prototype.create_procedure_stmt = function() {
+
+ var localctx = new Create_procedure_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 146, HiveSqlParser.RULE_create_procedure_stmt);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1518;
+ this._errHandler.sync(this);
+ switch (this._input.LA(1)) {
+ case HiveSqlParser.T_ALTER:
+ this.state = 1511;
+ this.match(HiveSqlParser.T_ALTER);
+ break;
+ case HiveSqlParser.T_CREATE:
+ this.state = 1512;
+ this.match(HiveSqlParser.T_CREATE);
+ this.state = 1515;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_OR) {
+ this.state = 1513;
+ this.match(HiveSqlParser.T_OR);
+ this.state = 1514;
+ this.match(HiveSqlParser.T_REPLACE);
+ }
+
+ break;
+ case HiveSqlParser.T_REPLACE:
+ this.state = 1517;
+ this.match(HiveSqlParser.T_REPLACE);
+ break;
+ case HiveSqlParser.T_PROCEDURE:
+ case HiveSqlParser.T_PROC:
+ break;
+ default:
+ break;
+ }
+ this.state = 1520;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_PROCEDURE || _la===HiveSqlParser.T_PROC)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 1521;
+ this.ident();
+ this.state = 1523;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,154,this._ctx);
+ if(la_===1) {
+ this.state = 1522;
+ this.create_routine_params();
+
+ }
+ this.state = 1526;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,155,this._ctx);
+ if(la_===1) {
+ this.state = 1525;
+ this.create_routine_options();
+
+ }
+ this.state = 1529;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,156,this._ctx);
+ if(la_===1) {
+ this.state = 1528;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_AS || _la===HiveSqlParser.T_IS)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+
+ }
+ this.state = 1532;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,157,this._ctx);
+ if(la_===1) {
+ this.state = 1531;
+ this.declare_block_inplace();
+
+ }
+ this.state = 1535;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,158,this._ctx);
+ if(la_===1) {
+ this.state = 1534;
+ this.label();
+
+ }
+ this.state = 1537;
+ this.proc_block();
+ this.state = 1541;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,159,this._ctx);
+ if(la_===1) {
+ this.state = 1538;
+ this.ident();
+ this.state = 1539;
+ this.match(HiveSqlParser.T_SEMICOLON);
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_routine_paramsContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_create_routine_params;
+ return this;
+}
+
+Create_routine_paramsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_routine_paramsContext.prototype.constructor = Create_routine_paramsContext;
+
+Create_routine_paramsContext.prototype.T_OPEN_P = function() {
+ return this.getToken(HiveSqlParser.T_OPEN_P, 0);
+};
+
+Create_routine_paramsContext.prototype.T_CLOSE_P = function() {
+ return this.getToken(HiveSqlParser.T_CLOSE_P, 0);
+};
+
+Create_routine_paramsContext.prototype.create_routine_param_item = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Create_routine_param_itemContext);
+ } else {
+ return this.getTypedRuleContext(Create_routine_param_itemContext,i);
+ }
+};
+
+Create_routine_paramsContext.prototype.T_COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_COMMA);
+ } else {
+ return this.getToken(HiveSqlParser.T_COMMA, i);
+ }
+};
+
+
+Create_routine_paramsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCreate_routine_params(this);
+ }
+};
+
+Create_routine_paramsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCreate_routine_params(this);
+ }
+};
+
+Create_routine_paramsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCreate_routine_params(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Create_routine_paramsContext = Create_routine_paramsContext;
+
+HiveSqlParser.prototype.create_routine_params = function() {
+
+ var localctx = new Create_routine_paramsContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 148, HiveSqlParser.RULE_create_routine_params);
+ var _la = 0; // Token type
+ try {
+ this.state = 1565;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,162,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1543;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 1544;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 1545;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 1546;
+ this.create_routine_param_item();
+ this.state = 1551;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===HiveSqlParser.T_COMMA) {
+ this.state = 1547;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 1548;
+ this.create_routine_param_item();
+ this.state = 1553;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 1554;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 1556;
+ if (!( !this._input.LT(1).getText().equalsIgnoreCase("IS") &&
+ !this._input.LT(1).getText().equalsIgnoreCase("AS") &&
+ !(this._input.LT(1).getText().equalsIgnoreCase("DYNAMIC") && this._input.LT(2).getText().equalsIgnoreCase("RESULT"))
+ )) {
+ throw new antlr4.error.FailedPredicateException(this, "!this._input.LT(1).getText().equalsIgnoreCase(\"IS\") &&\n !this._input.LT(1).getText().equalsIgnoreCase(\"AS\") &&\n !(this._input.LT(1).getText().equalsIgnoreCase(\"DYNAMIC\") && this._input.LT(2).getText().equalsIgnoreCase(\"RESULT\"))\n ");
+ }
+ this.state = 1557;
+ this.create_routine_param_item();
+ this.state = 1562;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,161,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 1558;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 1559;
+ this.create_routine_param_item();
+ }
+ this.state = 1564;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,161,this._ctx);
+ }
+
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_routine_param_itemContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_create_routine_param_item;
+ return this;
+}
+
+Create_routine_param_itemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_routine_param_itemContext.prototype.constructor = Create_routine_param_itemContext;
+
+Create_routine_param_itemContext.prototype.ident = function() {
+ return this.getTypedRuleContext(IdentContext,0);
+};
+
+Create_routine_param_itemContext.prototype.dtype = function() {
+ return this.getTypedRuleContext(DtypeContext,0);
+};
+
+Create_routine_param_itemContext.prototype.T_IN = function() {
+ return this.getToken(HiveSqlParser.T_IN, 0);
+};
+
+Create_routine_param_itemContext.prototype.T_OUT = function() {
+ return this.getToken(HiveSqlParser.T_OUT, 0);
+};
+
+Create_routine_param_itemContext.prototype.T_INOUT = function() {
+ return this.getToken(HiveSqlParser.T_INOUT, 0);
+};
+
+Create_routine_param_itemContext.prototype.dtype_len = function() {
+ return this.getTypedRuleContext(Dtype_lenContext,0);
+};
+
+Create_routine_param_itemContext.prototype.dtype_attr = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Dtype_attrContext);
+ } else {
+ return this.getTypedRuleContext(Dtype_attrContext,i);
+ }
+};
+
+Create_routine_param_itemContext.prototype.dtype_default = function() {
+ return this.getTypedRuleContext(Dtype_defaultContext,0);
+};
+
+Create_routine_param_itemContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCreate_routine_param_item(this);
+ }
+};
+
+Create_routine_param_itemContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCreate_routine_param_item(this);
+ }
+};
+
+Create_routine_param_itemContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCreate_routine_param_item(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Create_routine_param_itemContext = Create_routine_param_itemContext;
+
+HiveSqlParser.prototype.create_routine_param_item = function() {
+
+ var localctx = new Create_routine_param_itemContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 150, HiveSqlParser.RULE_create_routine_param_item);
+ try {
+ this.state = 1609;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,171,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1572;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,163,this._ctx);
+ if(la_===1) {
+ this.state = 1567;
+ this.match(HiveSqlParser.T_IN);
+
+ } else if(la_===2) {
+ this.state = 1568;
+ this.match(HiveSqlParser.T_OUT);
+
+ } else if(la_===3) {
+ this.state = 1569;
+ this.match(HiveSqlParser.T_INOUT);
+
+ } else if(la_===4) {
+ this.state = 1570;
+ this.match(HiveSqlParser.T_IN);
+ this.state = 1571;
+ this.match(HiveSqlParser.T_OUT);
+
+ }
+ this.state = 1574;
+ this.ident();
+ this.state = 1575;
+ this.dtype();
+ this.state = 1577;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,164,this._ctx);
+ if(la_===1) {
+ this.state = 1576;
+ this.dtype_len();
+
+ }
+ this.state = 1582;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,165,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 1579;
+ this.dtype_attr();
+ }
+ this.state = 1584;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,165,this._ctx);
+ }
+
+ this.state = 1586;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,166,this._ctx);
+ if(la_===1) {
+ this.state = 1585;
+ this.dtype_default();
+
+ }
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 1588;
+ this.ident();
+ this.state = 1594;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,167,this._ctx);
+ if(la_===1) {
+ this.state = 1589;
+ this.match(HiveSqlParser.T_IN);
+
+ } else if(la_===2) {
+ this.state = 1590;
+ this.match(HiveSqlParser.T_OUT);
+
+ } else if(la_===3) {
+ this.state = 1591;
+ this.match(HiveSqlParser.T_INOUT);
+
+ } else if(la_===4) {
+ this.state = 1592;
+ this.match(HiveSqlParser.T_IN);
+ this.state = 1593;
+ this.match(HiveSqlParser.T_OUT);
+
+ }
+ this.state = 1596;
+ this.dtype();
+ this.state = 1598;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,168,this._ctx);
+ if(la_===1) {
+ this.state = 1597;
+ this.dtype_len();
+
+ }
+ this.state = 1603;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,169,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 1600;
+ this.dtype_attr();
+ }
+ this.state = 1605;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,169,this._ctx);
+ }
+
+ this.state = 1607;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,170,this._ctx);
+ if(la_===1) {
+ this.state = 1606;
+ this.dtype_default();
+
+ }
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_routine_optionsContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_create_routine_options;
+ return this;
+}
+
+Create_routine_optionsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_routine_optionsContext.prototype.constructor = Create_routine_optionsContext;
+
+Create_routine_optionsContext.prototype.create_routine_option = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Create_routine_optionContext);
+ } else {
+ return this.getTypedRuleContext(Create_routine_optionContext,i);
+ }
+};
+
+Create_routine_optionsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCreate_routine_options(this);
+ }
+};
+
+Create_routine_optionsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCreate_routine_options(this);
+ }
+};
+
+Create_routine_optionsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCreate_routine_options(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Create_routine_optionsContext = Create_routine_optionsContext;
+
+HiveSqlParser.prototype.create_routine_options = function() {
+
+ var localctx = new Create_routine_optionsContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 152, HiveSqlParser.RULE_create_routine_options);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1612;
+ this._errHandler.sync(this);
+ var _alt = 1;
+ do {
+ switch (_alt) {
+ case 1:
+ this.state = 1611;
+ this.create_routine_option();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 1614;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,172, this._ctx);
+ } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_routine_optionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_create_routine_option;
+ return this;
+}
+
+Create_routine_optionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_routine_optionContext.prototype.constructor = Create_routine_optionContext;
+
+Create_routine_optionContext.prototype.T_LANGUAGE = function() {
+ return this.getToken(HiveSqlParser.T_LANGUAGE, 0);
+};
+
+Create_routine_optionContext.prototype.T_SQL = function() {
+ return this.getToken(HiveSqlParser.T_SQL, 0);
+};
+
+Create_routine_optionContext.prototype.T_SECURITY = function() {
+ return this.getToken(HiveSqlParser.T_SECURITY, 0);
+};
+
+Create_routine_optionContext.prototype.T_CREATOR = function() {
+ return this.getToken(HiveSqlParser.T_CREATOR, 0);
+};
+
+Create_routine_optionContext.prototype.T_DEFINER = function() {
+ return this.getToken(HiveSqlParser.T_DEFINER, 0);
+};
+
+Create_routine_optionContext.prototype.T_INVOKER = function() {
+ return this.getToken(HiveSqlParser.T_INVOKER, 0);
+};
+
+Create_routine_optionContext.prototype.T_OWNER = function() {
+ return this.getToken(HiveSqlParser.T_OWNER, 0);
+};
+
+Create_routine_optionContext.prototype.T_RESULT = function() {
+ return this.getToken(HiveSqlParser.T_RESULT, 0);
+};
+
+Create_routine_optionContext.prototype.T_SETS = function() {
+ return this.getToken(HiveSqlParser.T_SETS, 0);
+};
+
+Create_routine_optionContext.prototype.L_INT = function() {
+ return this.getToken(HiveSqlParser.L_INT, 0);
+};
+
+Create_routine_optionContext.prototype.T_DYNAMIC = function() {
+ return this.getToken(HiveSqlParser.T_DYNAMIC, 0);
+};
+
+Create_routine_optionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCreate_routine_option(this);
+ }
+};
+
+Create_routine_optionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCreate_routine_option(this);
+ }
+};
+
+Create_routine_optionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCreate_routine_option(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Create_routine_optionContext = Create_routine_optionContext;
+
+HiveSqlParser.prototype.create_routine_option = function() {
+
+ var localctx = new Create_routine_optionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 154, HiveSqlParser.RULE_create_routine_option);
+ var _la = 0; // Token type
+ try {
+ this.state = 1627;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case HiveSqlParser.T_LANGUAGE:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1616;
+ this.match(HiveSqlParser.T_LANGUAGE);
+ this.state = 1617;
+ this.match(HiveSqlParser.T_SQL);
+ break;
+ case HiveSqlParser.T_SQL:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 1618;
+ this.match(HiveSqlParser.T_SQL);
+ this.state = 1619;
+ this.match(HiveSqlParser.T_SECURITY);
+ this.state = 1620;
+ _la = this._input.LA(1);
+ if(!(((((_la - 195)) & ~0x1f) == 0 && ((1 << (_la - 195)) & ((1 << (HiveSqlParser.T_CREATOR - 195)) | (1 << (HiveSqlParser.T_DEFINER - 195)) | (1 << (HiveSqlParser.T_INVOKER - 195)) | (1 << (HiveSqlParser.T_OWNER - 195)))) !== 0))) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+ case HiveSqlParser.T_RESULT:
+ case HiveSqlParser.T_DYNAMIC:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 1622;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_DYNAMIC) {
+ this.state = 1621;
+ this.match(HiveSqlParser.T_DYNAMIC);
+ }
+
+ this.state = 1624;
+ this.match(HiveSqlParser.T_RESULT);
+ this.state = 1625;
+ this.match(HiveSqlParser.T_SETS);
+ this.state = 1626;
+ this.match(HiveSqlParser.L_INT);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Drop_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_drop_stmt;
+ return this;
+}
+
+Drop_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Drop_stmtContext.prototype.constructor = Drop_stmtContext;
+
+Drop_stmtContext.prototype.T_DROP = function() {
+ return this.getToken(HiveSqlParser.T_DROP, 0);
+};
+
+Drop_stmtContext.prototype.T_TABLE = function() {
+ return this.getToken(HiveSqlParser.T_TABLE, 0);
+};
+
+Drop_stmtContext.prototype.table_name = function() {
+ return this.getTypedRuleContext(Table_nameContext,0);
+};
+
+Drop_stmtContext.prototype.T_IF = function() {
+ return this.getToken(HiveSqlParser.T_IF, 0);
+};
+
+Drop_stmtContext.prototype.T_EXISTS = function() {
+ return this.getToken(HiveSqlParser.T_EXISTS, 0);
+};
+
+Drop_stmtContext.prototype.expr = function() {
+ return this.getTypedRuleContext(ExprContext,0);
+};
+
+Drop_stmtContext.prototype.T_DATABASE = function() {
+ return this.getToken(HiveSqlParser.T_DATABASE, 0);
+};
+
+Drop_stmtContext.prototype.T_SCHEMA = function() {
+ return this.getToken(HiveSqlParser.T_SCHEMA, 0);
+};
+
+Drop_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterDrop_stmt(this);
+ }
+};
+
+Drop_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitDrop_stmt(this);
+ }
+};
+
+Drop_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitDrop_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Drop_stmtContext = Drop_stmtContext;
+
+HiveSqlParser.prototype.drop_stmt = function() {
+
+ var localctx = new Drop_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 156, HiveSqlParser.RULE_drop_stmt);
+ var _la = 0; // Token type
+ try {
+ this.state = 1643;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,177,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1629;
+ this.match(HiveSqlParser.T_DROP);
+ this.state = 1630;
+ this.match(HiveSqlParser.T_TABLE);
+ this.state = 1633;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,175,this._ctx);
+ if(la_===1) {
+ this.state = 1631;
+ this.match(HiveSqlParser.T_IF);
+ this.state = 1632;
+ this.match(HiveSqlParser.T_EXISTS);
+
+ }
+ this.state = 1635;
+ this.table_name();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 1636;
+ this.match(HiveSqlParser.T_DROP);
+ this.state = 1637;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_DATABASE || _la===HiveSqlParser.T_SCHEMA)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 1640;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,176,this._ctx);
+ if(la_===1) {
+ this.state = 1638;
+ this.match(HiveSqlParser.T_IF);
+ this.state = 1639;
+ this.match(HiveSqlParser.T_EXISTS);
+
+ }
+ this.state = 1642;
+ this.expr(0);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function End_transaction_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_end_transaction_stmt;
+ return this;
+}
+
+End_transaction_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+End_transaction_stmtContext.prototype.constructor = End_transaction_stmtContext;
+
+End_transaction_stmtContext.prototype.T_END = function() {
+ return this.getToken(HiveSqlParser.T_END, 0);
+};
+
+End_transaction_stmtContext.prototype.T_TRANSACTION = function() {
+ return this.getToken(HiveSqlParser.T_TRANSACTION, 0);
+};
+
+End_transaction_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterEnd_transaction_stmt(this);
+ }
+};
+
+End_transaction_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitEnd_transaction_stmt(this);
+ }
+};
+
+End_transaction_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitEnd_transaction_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.End_transaction_stmtContext = End_transaction_stmtContext;
+
+HiveSqlParser.prototype.end_transaction_stmt = function() {
+
+ var localctx = new End_transaction_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 158, HiveSqlParser.RULE_end_transaction_stmt);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1645;
+ this.match(HiveSqlParser.T_END);
+ this.state = 1646;
+ this.match(HiveSqlParser.T_TRANSACTION);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Exec_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_exec_stmt;
+ return this;
+}
+
+Exec_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Exec_stmtContext.prototype.constructor = Exec_stmtContext;
+
+Exec_stmtContext.prototype.expr = function() {
+ return this.getTypedRuleContext(ExprContext,0);
+};
+
+Exec_stmtContext.prototype.T_EXEC = function() {
+ return this.getToken(HiveSqlParser.T_EXEC, 0);
+};
+
+Exec_stmtContext.prototype.T_EXECUTE = function() {
+ return this.getToken(HiveSqlParser.T_EXECUTE, 0);
+};
+
+Exec_stmtContext.prototype.T_IMMEDIATE = function() {
+ return this.getToken(HiveSqlParser.T_IMMEDIATE, 0);
+};
+
+Exec_stmtContext.prototype.T_OPEN_P = function() {
+ return this.getToken(HiveSqlParser.T_OPEN_P, 0);
+};
+
+Exec_stmtContext.prototype.expr_func_params = function() {
+ return this.getTypedRuleContext(Expr_func_paramsContext,0);
+};
+
+Exec_stmtContext.prototype.T_CLOSE_P = function() {
+ return this.getToken(HiveSqlParser.T_CLOSE_P, 0);
+};
+
+Exec_stmtContext.prototype.T_INTO = function() {
+ return this.getToken(HiveSqlParser.T_INTO, 0);
+};
+
+Exec_stmtContext.prototype.L_ID = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.L_ID);
+ } else {
+ return this.getToken(HiveSqlParser.L_ID, i);
+ }
+};
+
+
+Exec_stmtContext.prototype.using_clause = function() {
+ return this.getTypedRuleContext(Using_clauseContext,0);
+};
+
+Exec_stmtContext.prototype.T_COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_COMMA);
+ } else {
+ return this.getToken(HiveSqlParser.T_COMMA, i);
+ }
+};
+
+
+Exec_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterExec_stmt(this);
+ }
+};
+
+Exec_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitExec_stmt(this);
+ }
+};
+
+Exec_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitExec_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Exec_stmtContext = Exec_stmtContext;
+
+HiveSqlParser.prototype.exec_stmt = function() {
+
+ var localctx = new Exec_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 160, HiveSqlParser.RULE_exec_stmt);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1648;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_EXEC || _la===HiveSqlParser.T_EXECUTE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 1650;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,178,this._ctx);
+ if(la_===1) {
+ this.state = 1649;
+ this.match(HiveSqlParser.T_IMMEDIATE);
+
+ }
+ this.state = 1652;
+ this.expr(0);
+ this.state = 1658;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,179,this._ctx);
+ if(la_===1) {
+ this.state = 1653;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 1654;
+ this.expr_func_params();
+ this.state = 1655;
+ this.match(HiveSqlParser.T_CLOSE_P);
+
+ } else if(la_===2) {
+ this.state = 1657;
+ this.expr_func_params();
+
+ }
+ this.state = 1669;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,181,this._ctx);
+ if(la_===1) {
+ this.state = 1660;
+ this.match(HiveSqlParser.T_INTO);
+ this.state = 1661;
+ this.match(HiveSqlParser.L_ID);
+ this.state = 1666;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,180,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 1662;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 1663;
+ this.match(HiveSqlParser.L_ID);
+ }
+ this.state = 1668;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,180,this._ctx);
+ }
+
+
+ }
+ this.state = 1672;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,182,this._ctx);
+ if(la_===1) {
+ this.state = 1671;
+ this.using_clause();
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function If_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_if_stmt;
+ return this;
+}
+
+If_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+If_stmtContext.prototype.constructor = If_stmtContext;
+
+If_stmtContext.prototype.if_plsql_stmt = function() {
+ return this.getTypedRuleContext(If_plsql_stmtContext,0);
+};
+
+If_stmtContext.prototype.if_tsql_stmt = function() {
+ return this.getTypedRuleContext(If_tsql_stmtContext,0);
+};
+
+If_stmtContext.prototype.if_bteq_stmt = function() {
+ return this.getTypedRuleContext(If_bteq_stmtContext,0);
+};
+
+If_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterIf_stmt(this);
+ }
+};
+
+If_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitIf_stmt(this);
+ }
+};
+
+If_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitIf_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.If_stmtContext = If_stmtContext;
+
+HiveSqlParser.prototype.if_stmt = function() {
+
+ var localctx = new If_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 162, HiveSqlParser.RULE_if_stmt);
+ try {
+ this.state = 1677;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,183,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1674;
+ this.if_plsql_stmt();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 1675;
+ this.if_tsql_stmt();
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 1676;
+ this.if_bteq_stmt();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function If_plsql_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_if_plsql_stmt;
+ return this;
+}
+
+If_plsql_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+If_plsql_stmtContext.prototype.constructor = If_plsql_stmtContext;
+
+If_plsql_stmtContext.prototype.T_IF = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_IF);
+ } else {
+ return this.getToken(HiveSqlParser.T_IF, i);
+ }
+};
+
+
+If_plsql_stmtContext.prototype.bool_expr = function() {
+ return this.getTypedRuleContext(Bool_exprContext,0);
+};
+
+If_plsql_stmtContext.prototype.T_THEN = function() {
+ return this.getToken(HiveSqlParser.T_THEN, 0);
+};
+
+If_plsql_stmtContext.prototype.block = function() {
+ return this.getTypedRuleContext(BlockContext,0);
+};
+
+If_plsql_stmtContext.prototype.T_END = function() {
+ return this.getToken(HiveSqlParser.T_END, 0);
+};
+
+If_plsql_stmtContext.prototype.elseif_block = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Elseif_blockContext);
+ } else {
+ return this.getTypedRuleContext(Elseif_blockContext,i);
+ }
+};
+
+If_plsql_stmtContext.prototype.else_block = function() {
+ return this.getTypedRuleContext(Else_blockContext,0);
+};
+
+If_plsql_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterIf_plsql_stmt(this);
+ }
+};
+
+If_plsql_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitIf_plsql_stmt(this);
+ }
+};
+
+If_plsql_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitIf_plsql_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.If_plsql_stmtContext = If_plsql_stmtContext;
+
+HiveSqlParser.prototype.if_plsql_stmt = function() {
+
+ var localctx = new If_plsql_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 164, HiveSqlParser.RULE_if_plsql_stmt);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1679;
+ this.match(HiveSqlParser.T_IF);
+ this.state = 1680;
+ this.bool_expr(0);
+ this.state = 1681;
+ this.match(HiveSqlParser.T_THEN);
+ this.state = 1682;
+ this.block();
+ this.state = 1686;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===HiveSqlParser.T_ELSIF || _la===HiveSqlParser.T_ELSEIF) {
+ this.state = 1683;
+ this.elseif_block();
+ this.state = 1688;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 1690;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_ELSE) {
+ this.state = 1689;
+ this.else_block();
+ }
+
+ this.state = 1692;
+ this.match(HiveSqlParser.T_END);
+ this.state = 1693;
+ this.match(HiveSqlParser.T_IF);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function If_tsql_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_if_tsql_stmt;
+ return this;
+}
+
+If_tsql_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+If_tsql_stmtContext.prototype.constructor = If_tsql_stmtContext;
+
+If_tsql_stmtContext.prototype.T_IF = function() {
+ return this.getToken(HiveSqlParser.T_IF, 0);
+};
+
+If_tsql_stmtContext.prototype.bool_expr = function() {
+ return this.getTypedRuleContext(Bool_exprContext,0);
+};
+
+If_tsql_stmtContext.prototype.single_block_stmt = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Single_block_stmtContext);
+ } else {
+ return this.getTypedRuleContext(Single_block_stmtContext,i);
+ }
+};
+
+If_tsql_stmtContext.prototype.T_ELSE = function() {
+ return this.getToken(HiveSqlParser.T_ELSE, 0);
+};
+
+If_tsql_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterIf_tsql_stmt(this);
+ }
+};
+
+If_tsql_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitIf_tsql_stmt(this);
+ }
+};
+
+If_tsql_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitIf_tsql_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.If_tsql_stmtContext = If_tsql_stmtContext;
+
+HiveSqlParser.prototype.if_tsql_stmt = function() {
+
+ var localctx = new If_tsql_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 166, HiveSqlParser.RULE_if_tsql_stmt);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1695;
+ this.match(HiveSqlParser.T_IF);
+ this.state = 1696;
+ this.bool_expr(0);
+ this.state = 1697;
+ this.single_block_stmt();
+ this.state = 1700;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,186,this._ctx);
+ if(la_===1) {
+ this.state = 1698;
+ this.match(HiveSqlParser.T_ELSE);
+ this.state = 1699;
+ this.single_block_stmt();
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function If_bteq_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_if_bteq_stmt;
+ return this;
+}
+
+If_bteq_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+If_bteq_stmtContext.prototype.constructor = If_bteq_stmtContext;
+
+If_bteq_stmtContext.prototype.T_IF = function() {
+ return this.getToken(HiveSqlParser.T_IF, 0);
+};
+
+If_bteq_stmtContext.prototype.bool_expr = function() {
+ return this.getTypedRuleContext(Bool_exprContext,0);
+};
+
+If_bteq_stmtContext.prototype.T_THEN = function() {
+ return this.getToken(HiveSqlParser.T_THEN, 0);
+};
+
+If_bteq_stmtContext.prototype.single_block_stmt = function() {
+ return this.getTypedRuleContext(Single_block_stmtContext,0);
+};
+
+If_bteq_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterIf_bteq_stmt(this);
+ }
+};
+
+If_bteq_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitIf_bteq_stmt(this);
+ }
+};
+
+If_bteq_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitIf_bteq_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.If_bteq_stmtContext = If_bteq_stmtContext;
+
+HiveSqlParser.prototype.if_bteq_stmt = function() {
+
+ var localctx = new If_bteq_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 168, HiveSqlParser.RULE_if_bteq_stmt);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1702;
+ this.match(HiveSqlParser.T__4);
+ this.state = 1703;
+ this.match(HiveSqlParser.T_IF);
+ this.state = 1704;
+ this.bool_expr(0);
+ this.state = 1705;
+ this.match(HiveSqlParser.T_THEN);
+ this.state = 1706;
+ this.single_block_stmt();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Elseif_blockContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_elseif_block;
+ return this;
+}
+
+Elseif_blockContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Elseif_blockContext.prototype.constructor = Elseif_blockContext;
+
+Elseif_blockContext.prototype.bool_expr = function() {
+ return this.getTypedRuleContext(Bool_exprContext,0);
+};
+
+Elseif_blockContext.prototype.T_THEN = function() {
+ return this.getToken(HiveSqlParser.T_THEN, 0);
+};
+
+Elseif_blockContext.prototype.block = function() {
+ return this.getTypedRuleContext(BlockContext,0);
+};
+
+Elseif_blockContext.prototype.T_ELSIF = function() {
+ return this.getToken(HiveSqlParser.T_ELSIF, 0);
+};
+
+Elseif_blockContext.prototype.T_ELSEIF = function() {
+ return this.getToken(HiveSqlParser.T_ELSEIF, 0);
+};
+
+Elseif_blockContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterElseif_block(this);
+ }
+};
+
+Elseif_blockContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitElseif_block(this);
+ }
+};
+
+Elseif_blockContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitElseif_block(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Elseif_blockContext = Elseif_blockContext;
+
+HiveSqlParser.prototype.elseif_block = function() {
+
+ var localctx = new Elseif_blockContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 170, HiveSqlParser.RULE_elseif_block);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1708;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_ELSIF || _la===HiveSqlParser.T_ELSEIF)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 1709;
+ this.bool_expr(0);
+ this.state = 1710;
+ this.match(HiveSqlParser.T_THEN);
+ this.state = 1711;
+ this.block();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Else_blockContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_else_block;
+ return this;
+}
+
+Else_blockContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Else_blockContext.prototype.constructor = Else_blockContext;
+
+Else_blockContext.prototype.T_ELSE = function() {
+ return this.getToken(HiveSqlParser.T_ELSE, 0);
+};
+
+Else_blockContext.prototype.block = function() {
+ return this.getTypedRuleContext(BlockContext,0);
+};
+
+Else_blockContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterElse_block(this);
+ }
+};
+
+Else_blockContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitElse_block(this);
+ }
+};
+
+Else_blockContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitElse_block(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Else_blockContext = Else_blockContext;
+
+HiveSqlParser.prototype.else_block = function() {
+
+ var localctx = new Else_blockContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 172, HiveSqlParser.RULE_else_block);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1713;
+ this.match(HiveSqlParser.T_ELSE);
+ this.state = 1714;
+ this.block();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Include_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_include_stmt;
+ return this;
+}
+
+Include_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Include_stmtContext.prototype.constructor = Include_stmtContext;
+
+Include_stmtContext.prototype.T_INCLUDE = function() {
+ return this.getToken(HiveSqlParser.T_INCLUDE, 0);
+};
+
+Include_stmtContext.prototype.file_name = function() {
+ return this.getTypedRuleContext(File_nameContext,0);
+};
+
+Include_stmtContext.prototype.expr = function() {
+ return this.getTypedRuleContext(ExprContext,0);
+};
+
+Include_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterInclude_stmt(this);
+ }
+};
+
+Include_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitInclude_stmt(this);
+ }
+};
+
+Include_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitInclude_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Include_stmtContext = Include_stmtContext;
+
+HiveSqlParser.prototype.include_stmt = function() {
+
+ var localctx = new Include_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 174, HiveSqlParser.RULE_include_stmt);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1716;
+ this.match(HiveSqlParser.T_INCLUDE);
+ this.state = 1719;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,187,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 1717;
+ this.file_name();
+ break;
+
+ case 2:
+ this.state = 1718;
+ this.expr(0);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Insert_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_insert_stmt;
+ return this;
+}
+
+Insert_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Insert_stmtContext.prototype.constructor = Insert_stmtContext;
+
+Insert_stmtContext.prototype.T_INSERT = function() {
+ return this.getToken(HiveSqlParser.T_INSERT, 0);
+};
+
+Insert_stmtContext.prototype.table_name = function() {
+ return this.getTypedRuleContext(Table_nameContext,0);
+};
+
+Insert_stmtContext.prototype.T_OVERWRITE = function() {
+ return this.getToken(HiveSqlParser.T_OVERWRITE, 0);
+};
+
+Insert_stmtContext.prototype.T_TABLE = function() {
+ return this.getToken(HiveSqlParser.T_TABLE, 0);
+};
+
+Insert_stmtContext.prototype.T_INTO = function() {
+ return this.getToken(HiveSqlParser.T_INTO, 0);
+};
+
+Insert_stmtContext.prototype.select_stmt = function() {
+ return this.getTypedRuleContext(Select_stmtContext,0);
+};
+
+Insert_stmtContext.prototype.insert_stmt_rows = function() {
+ return this.getTypedRuleContext(Insert_stmt_rowsContext,0);
+};
+
+Insert_stmtContext.prototype.insert_stmt_cols = function() {
+ return this.getTypedRuleContext(Insert_stmt_colsContext,0);
+};
+
+Insert_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterInsert_stmt(this);
+ }
+};
+
+Insert_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitInsert_stmt(this);
+ }
+};
+
+Insert_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitInsert_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Insert_stmtContext = Insert_stmtContext;
+
+HiveSqlParser.prototype.insert_stmt = function() {
+
+ var localctx = new Insert_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 176, HiveSqlParser.RULE_insert_stmt);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1721;
+ this.match(HiveSqlParser.T_INSERT);
+ this.state = 1728;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case HiveSqlParser.T_OVERWRITE:
+ this.state = 1722;
+ this.match(HiveSqlParser.T_OVERWRITE);
+ this.state = 1723;
+ this.match(HiveSqlParser.T_TABLE);
+ break;
+ case HiveSqlParser.T_INTO:
+ this.state = 1724;
+ this.match(HiveSqlParser.T_INTO);
+ this.state = 1726;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,188,this._ctx);
+ if(la_===1) {
+ this.state = 1725;
+ this.match(HiveSqlParser.T_TABLE);
+
+ }
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 1730;
+ this.table_name();
+ this.state = 1732;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,190,this._ctx);
+ if(la_===1) {
+ this.state = 1731;
+ this.insert_stmt_cols();
+
+ }
+ this.state = 1736;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case HiveSqlParser.T_OPEN_P:
+ case HiveSqlParser.T_WITH:
+ case HiveSqlParser.T_SELECT:
+ case HiveSqlParser.T_SEL:
+ this.state = 1734;
+ this.select_stmt();
+ break;
+ case HiveSqlParser.T_VALUES:
+ this.state = 1735;
+ this.insert_stmt_rows();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Insert_stmt_colsContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_insert_stmt_cols;
+ return this;
+}
+
+Insert_stmt_colsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Insert_stmt_colsContext.prototype.constructor = Insert_stmt_colsContext;
+
+Insert_stmt_colsContext.prototype.T_OPEN_P = function() {
+ return this.getToken(HiveSqlParser.T_OPEN_P, 0);
+};
+
+Insert_stmt_colsContext.prototype.ident = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(IdentContext);
+ } else {
+ return this.getTypedRuleContext(IdentContext,i);
+ }
+};
+
+Insert_stmt_colsContext.prototype.T_CLOSE_P = function() {
+ return this.getToken(HiveSqlParser.T_CLOSE_P, 0);
+};
+
+Insert_stmt_colsContext.prototype.T_COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_COMMA);
+ } else {
+ return this.getToken(HiveSqlParser.T_COMMA, i);
+ }
+};
+
+
+Insert_stmt_colsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterInsert_stmt_cols(this);
+ }
+};
+
+Insert_stmt_colsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitInsert_stmt_cols(this);
+ }
+};
+
+Insert_stmt_colsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitInsert_stmt_cols(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Insert_stmt_colsContext = Insert_stmt_colsContext;
+
+HiveSqlParser.prototype.insert_stmt_cols = function() {
+
+ var localctx = new Insert_stmt_colsContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 178, HiveSqlParser.RULE_insert_stmt_cols);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1738;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 1739;
+ this.ident();
+ this.state = 1744;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===HiveSqlParser.T_COMMA) {
+ this.state = 1740;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 1741;
+ this.ident();
+ this.state = 1746;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 1747;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Insert_stmt_rowsContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_insert_stmt_rows;
+ return this;
+}
+
+Insert_stmt_rowsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Insert_stmt_rowsContext.prototype.constructor = Insert_stmt_rowsContext;
+
+Insert_stmt_rowsContext.prototype.T_VALUES = function() {
+ return this.getToken(HiveSqlParser.T_VALUES, 0);
+};
+
+Insert_stmt_rowsContext.prototype.insert_stmt_row = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Insert_stmt_rowContext);
+ } else {
+ return this.getTypedRuleContext(Insert_stmt_rowContext,i);
+ }
+};
+
+Insert_stmt_rowsContext.prototype.T_COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_COMMA);
+ } else {
+ return this.getToken(HiveSqlParser.T_COMMA, i);
+ }
+};
+
+
+Insert_stmt_rowsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterInsert_stmt_rows(this);
+ }
+};
+
+Insert_stmt_rowsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitInsert_stmt_rows(this);
+ }
+};
+
+Insert_stmt_rowsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitInsert_stmt_rows(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Insert_stmt_rowsContext = Insert_stmt_rowsContext;
+
+HiveSqlParser.prototype.insert_stmt_rows = function() {
+
+ var localctx = new Insert_stmt_rowsContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 180, HiveSqlParser.RULE_insert_stmt_rows);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1749;
+ this.match(HiveSqlParser.T_VALUES);
+ this.state = 1750;
+ this.insert_stmt_row();
+ this.state = 1755;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,193,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 1751;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 1752;
+ this.insert_stmt_row();
+ }
+ this.state = 1757;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,193,this._ctx);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Insert_stmt_rowContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_insert_stmt_row;
+ return this;
+}
+
+Insert_stmt_rowContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Insert_stmt_rowContext.prototype.constructor = Insert_stmt_rowContext;
+
+Insert_stmt_rowContext.prototype.T_OPEN_P = function() {
+ return this.getToken(HiveSqlParser.T_OPEN_P, 0);
+};
+
+Insert_stmt_rowContext.prototype.expr = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ExprContext);
+ } else {
+ return this.getTypedRuleContext(ExprContext,i);
+ }
+};
+
+Insert_stmt_rowContext.prototype.T_CLOSE_P = function() {
+ return this.getToken(HiveSqlParser.T_CLOSE_P, 0);
+};
+
+Insert_stmt_rowContext.prototype.T_COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_COMMA);
+ } else {
+ return this.getToken(HiveSqlParser.T_COMMA, i);
+ }
+};
+
+
+Insert_stmt_rowContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterInsert_stmt_row(this);
+ }
+};
+
+Insert_stmt_rowContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitInsert_stmt_row(this);
+ }
+};
+
+Insert_stmt_rowContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitInsert_stmt_row(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Insert_stmt_rowContext = Insert_stmt_rowContext;
+
+HiveSqlParser.prototype.insert_stmt_row = function() {
+
+ var localctx = new Insert_stmt_rowContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 182, HiveSqlParser.RULE_insert_stmt_row);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1758;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 1759;
+ this.expr(0);
+ this.state = 1764;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===HiveSqlParser.T_COMMA) {
+ this.state = 1760;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 1761;
+ this.expr(0);
+ this.state = 1766;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 1767;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Insert_directory_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_insert_directory_stmt;
+ return this;
+}
+
+Insert_directory_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Insert_directory_stmtContext.prototype.constructor = Insert_directory_stmtContext;
+
+Insert_directory_stmtContext.prototype.T_INSERT = function() {
+ return this.getToken(HiveSqlParser.T_INSERT, 0);
+};
+
+Insert_directory_stmtContext.prototype.T_OVERWRITE = function() {
+ return this.getToken(HiveSqlParser.T_OVERWRITE, 0);
+};
+
+Insert_directory_stmtContext.prototype.T_DIRECTORY = function() {
+ return this.getToken(HiveSqlParser.T_DIRECTORY, 0);
+};
+
+Insert_directory_stmtContext.prototype.expr_file = function() {
+ return this.getTypedRuleContext(Expr_fileContext,0);
+};
+
+Insert_directory_stmtContext.prototype.expr_select = function() {
+ return this.getTypedRuleContext(Expr_selectContext,0);
+};
+
+Insert_directory_stmtContext.prototype.T_LOCAL = function() {
+ return this.getToken(HiveSqlParser.T_LOCAL, 0);
+};
+
+Insert_directory_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterInsert_directory_stmt(this);
+ }
+};
+
+Insert_directory_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitInsert_directory_stmt(this);
+ }
+};
+
+Insert_directory_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitInsert_directory_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Insert_directory_stmtContext = Insert_directory_stmtContext;
+
+HiveSqlParser.prototype.insert_directory_stmt = function() {
+
+ var localctx = new Insert_directory_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 184, HiveSqlParser.RULE_insert_directory_stmt);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1769;
+ this.match(HiveSqlParser.T_INSERT);
+ this.state = 1770;
+ this.match(HiveSqlParser.T_OVERWRITE);
+ this.state = 1772;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_LOCAL) {
+ this.state = 1771;
+ this.match(HiveSqlParser.T_LOCAL);
+ }
+
+ this.state = 1774;
+ this.match(HiveSqlParser.T_DIRECTORY);
+ this.state = 1775;
+ this.expr_file();
+ this.state = 1776;
+ this.expr_select();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Exit_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_exit_stmt;
+ return this;
+}
+
+Exit_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Exit_stmtContext.prototype.constructor = Exit_stmtContext;
+
+Exit_stmtContext.prototype.T_EXIT = function() {
+ return this.getToken(HiveSqlParser.T_EXIT, 0);
+};
+
+Exit_stmtContext.prototype.L_ID = function() {
+ return this.getToken(HiveSqlParser.L_ID, 0);
+};
+
+Exit_stmtContext.prototype.T_WHEN = function() {
+ return this.getToken(HiveSqlParser.T_WHEN, 0);
+};
+
+Exit_stmtContext.prototype.bool_expr = function() {
+ return this.getTypedRuleContext(Bool_exprContext,0);
+};
+
+Exit_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterExit_stmt(this);
+ }
+};
+
+Exit_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitExit_stmt(this);
+ }
+};
+
+Exit_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitExit_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Exit_stmtContext = Exit_stmtContext;
+
+HiveSqlParser.prototype.exit_stmt = function() {
+
+ var localctx = new Exit_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 186, HiveSqlParser.RULE_exit_stmt);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1778;
+ this.match(HiveSqlParser.T_EXIT);
+ this.state = 1780;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,196,this._ctx);
+ if(la_===1) {
+ this.state = 1779;
+ this.match(HiveSqlParser.L_ID);
+
+ }
+ this.state = 1784;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,197,this._ctx);
+ if(la_===1) {
+ this.state = 1782;
+ this.match(HiveSqlParser.T_WHEN);
+ this.state = 1783;
+ this.bool_expr(0);
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Get_diag_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_get_diag_stmt;
+ return this;
+}
+
+Get_diag_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Get_diag_stmtContext.prototype.constructor = Get_diag_stmtContext;
+
+Get_diag_stmtContext.prototype.T_GET = function() {
+ return this.getToken(HiveSqlParser.T_GET, 0);
+};
+
+Get_diag_stmtContext.prototype.T_DIAGNOSTICS = function() {
+ return this.getToken(HiveSqlParser.T_DIAGNOSTICS, 0);
+};
+
+Get_diag_stmtContext.prototype.get_diag_stmt_item = function() {
+ return this.getTypedRuleContext(Get_diag_stmt_itemContext,0);
+};
+
+Get_diag_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterGet_diag_stmt(this);
+ }
+};
+
+Get_diag_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitGet_diag_stmt(this);
+ }
+};
+
+Get_diag_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitGet_diag_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Get_diag_stmtContext = Get_diag_stmtContext;
+
+HiveSqlParser.prototype.get_diag_stmt = function() {
+
+ var localctx = new Get_diag_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 188, HiveSqlParser.RULE_get_diag_stmt);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1786;
+ this.match(HiveSqlParser.T_GET);
+ this.state = 1787;
+ this.match(HiveSqlParser.T_DIAGNOSTICS);
+ this.state = 1788;
+ this.get_diag_stmt_item();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Get_diag_stmt_itemContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_get_diag_stmt_item;
+ return this;
+}
+
+Get_diag_stmt_itemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Get_diag_stmt_itemContext.prototype.constructor = Get_diag_stmt_itemContext;
+
+Get_diag_stmt_itemContext.prototype.get_diag_stmt_exception_item = function() {
+ return this.getTypedRuleContext(Get_diag_stmt_exception_itemContext,0);
+};
+
+Get_diag_stmt_itemContext.prototype.get_diag_stmt_rowcount_item = function() {
+ return this.getTypedRuleContext(Get_diag_stmt_rowcount_itemContext,0);
+};
+
+Get_diag_stmt_itemContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterGet_diag_stmt_item(this);
+ }
+};
+
+Get_diag_stmt_itemContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitGet_diag_stmt_item(this);
+ }
+};
+
+Get_diag_stmt_itemContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitGet_diag_stmt_item(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Get_diag_stmt_itemContext = Get_diag_stmt_itemContext;
+
+HiveSqlParser.prototype.get_diag_stmt_item = function() {
+
+ var localctx = new Get_diag_stmt_itemContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 190, HiveSqlParser.RULE_get_diag_stmt_item);
+ try {
+ this.state = 1792;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,198,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1790;
+ this.get_diag_stmt_exception_item();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 1791;
+ this.get_diag_stmt_rowcount_item();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Get_diag_stmt_exception_itemContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_get_diag_stmt_exception_item;
+ return this;
+}
+
+Get_diag_stmt_exception_itemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Get_diag_stmt_exception_itemContext.prototype.constructor = Get_diag_stmt_exception_itemContext;
+
+Get_diag_stmt_exception_itemContext.prototype.T_EXCEPTION = function() {
+ return this.getToken(HiveSqlParser.T_EXCEPTION, 0);
+};
+
+Get_diag_stmt_exception_itemContext.prototype.L_INT = function() {
+ return this.getToken(HiveSqlParser.L_INT, 0);
+};
+
+Get_diag_stmt_exception_itemContext.prototype.ident = function() {
+ return this.getTypedRuleContext(IdentContext,0);
+};
+
+Get_diag_stmt_exception_itemContext.prototype.T_EQUAL = function() {
+ return this.getToken(HiveSqlParser.T_EQUAL, 0);
+};
+
+Get_diag_stmt_exception_itemContext.prototype.T_MESSAGE_TEXT = function() {
+ return this.getToken(HiveSqlParser.T_MESSAGE_TEXT, 0);
+};
+
+Get_diag_stmt_exception_itemContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterGet_diag_stmt_exception_item(this);
+ }
+};
+
+Get_diag_stmt_exception_itemContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitGet_diag_stmt_exception_item(this);
+ }
+};
+
+Get_diag_stmt_exception_itemContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitGet_diag_stmt_exception_item(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Get_diag_stmt_exception_itemContext = Get_diag_stmt_exception_itemContext;
+
+HiveSqlParser.prototype.get_diag_stmt_exception_item = function() {
+
+ var localctx = new Get_diag_stmt_exception_itemContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 192, HiveSqlParser.RULE_get_diag_stmt_exception_item);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1794;
+ this.match(HiveSqlParser.T_EXCEPTION);
+ this.state = 1795;
+ this.match(HiveSqlParser.L_INT);
+ this.state = 1796;
+ this.ident();
+ this.state = 1797;
+ this.match(HiveSqlParser.T_EQUAL);
+ this.state = 1798;
+ this.match(HiveSqlParser.T_MESSAGE_TEXT);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Get_diag_stmt_rowcount_itemContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_get_diag_stmt_rowcount_item;
+ return this;
+}
+
+Get_diag_stmt_rowcount_itemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Get_diag_stmt_rowcount_itemContext.prototype.constructor = Get_diag_stmt_rowcount_itemContext;
+
+Get_diag_stmt_rowcount_itemContext.prototype.ident = function() {
+ return this.getTypedRuleContext(IdentContext,0);
+};
+
+Get_diag_stmt_rowcount_itemContext.prototype.T_EQUAL = function() {
+ return this.getToken(HiveSqlParser.T_EQUAL, 0);
+};
+
+Get_diag_stmt_rowcount_itemContext.prototype.T_ROW_COUNT = function() {
+ return this.getToken(HiveSqlParser.T_ROW_COUNT, 0);
+};
+
+Get_diag_stmt_rowcount_itemContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterGet_diag_stmt_rowcount_item(this);
+ }
+};
+
+Get_diag_stmt_rowcount_itemContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitGet_diag_stmt_rowcount_item(this);
+ }
+};
+
+Get_diag_stmt_rowcount_itemContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitGet_diag_stmt_rowcount_item(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Get_diag_stmt_rowcount_itemContext = Get_diag_stmt_rowcount_itemContext;
+
+HiveSqlParser.prototype.get_diag_stmt_rowcount_item = function() {
+
+ var localctx = new Get_diag_stmt_rowcount_itemContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 194, HiveSqlParser.RULE_get_diag_stmt_rowcount_item);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1800;
+ this.ident();
+ this.state = 1801;
+ this.match(HiveSqlParser.T_EQUAL);
+ this.state = 1802;
+ this.match(HiveSqlParser.T_ROW_COUNT);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Grant_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_grant_stmt;
+ return this;
+}
+
+Grant_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Grant_stmtContext.prototype.constructor = Grant_stmtContext;
+
+Grant_stmtContext.prototype.T_GRANT = function() {
+ return this.getToken(HiveSqlParser.T_GRANT, 0);
+};
+
+Grant_stmtContext.prototype.grant_stmt_item = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Grant_stmt_itemContext);
+ } else {
+ return this.getTypedRuleContext(Grant_stmt_itemContext,i);
+ }
+};
+
+Grant_stmtContext.prototype.T_TO = function() {
+ return this.getToken(HiveSqlParser.T_TO, 0);
+};
+
+Grant_stmtContext.prototype.T_ROLE = function() {
+ return this.getToken(HiveSqlParser.T_ROLE, 0);
+};
+
+Grant_stmtContext.prototype.ident = function() {
+ return this.getTypedRuleContext(IdentContext,0);
+};
+
+Grant_stmtContext.prototype.T_COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_COMMA);
+ } else {
+ return this.getToken(HiveSqlParser.T_COMMA, i);
+ }
+};
+
+
+Grant_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterGrant_stmt(this);
+ }
+};
+
+Grant_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitGrant_stmt(this);
+ }
+};
+
+Grant_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitGrant_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Grant_stmtContext = Grant_stmtContext;
+
+HiveSqlParser.prototype.grant_stmt = function() {
+
+ var localctx = new Grant_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 196, HiveSqlParser.RULE_grant_stmt);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1804;
+ this.match(HiveSqlParser.T_GRANT);
+ this.state = 1805;
+ this.grant_stmt_item();
+ this.state = 1810;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===HiveSqlParser.T_COMMA) {
+ this.state = 1806;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 1807;
+ this.grant_stmt_item();
+ this.state = 1812;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 1813;
+ this.match(HiveSqlParser.T_TO);
+ this.state = 1814;
+ this.match(HiveSqlParser.T_ROLE);
+ this.state = 1815;
+ this.ident();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Grant_stmt_itemContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_grant_stmt_item;
+ return this;
+}
+
+Grant_stmt_itemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Grant_stmt_itemContext.prototype.constructor = Grant_stmt_itemContext;
+
+Grant_stmt_itemContext.prototype.T_EXECUTE = function() {
+ return this.getToken(HiveSqlParser.T_EXECUTE, 0);
+};
+
+Grant_stmt_itemContext.prototype.T_ON = function() {
+ return this.getToken(HiveSqlParser.T_ON, 0);
+};
+
+Grant_stmt_itemContext.prototype.T_PROCEDURE = function() {
+ return this.getToken(HiveSqlParser.T_PROCEDURE, 0);
+};
+
+Grant_stmt_itemContext.prototype.ident = function() {
+ return this.getTypedRuleContext(IdentContext,0);
+};
+
+Grant_stmt_itemContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterGrant_stmt_item(this);
+ }
+};
+
+Grant_stmt_itemContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitGrant_stmt_item(this);
+ }
+};
+
+Grant_stmt_itemContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitGrant_stmt_item(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Grant_stmt_itemContext = Grant_stmt_itemContext;
+
+HiveSqlParser.prototype.grant_stmt_item = function() {
+
+ var localctx = new Grant_stmt_itemContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 198, HiveSqlParser.RULE_grant_stmt_item);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1817;
+ this.match(HiveSqlParser.T_EXECUTE);
+ this.state = 1818;
+ this.match(HiveSqlParser.T_ON);
+ this.state = 1819;
+ this.match(HiveSqlParser.T_PROCEDURE);
+ this.state = 1820;
+ this.ident();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Leave_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_leave_stmt;
+ return this;
+}
+
+Leave_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Leave_stmtContext.prototype.constructor = Leave_stmtContext;
+
+Leave_stmtContext.prototype.T_LEAVE = function() {
+ return this.getToken(HiveSqlParser.T_LEAVE, 0);
+};
+
+Leave_stmtContext.prototype.L_ID = function() {
+ return this.getToken(HiveSqlParser.L_ID, 0);
+};
+
+Leave_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterLeave_stmt(this);
+ }
+};
+
+Leave_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitLeave_stmt(this);
+ }
+};
+
+Leave_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitLeave_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Leave_stmtContext = Leave_stmtContext;
+
+HiveSqlParser.prototype.leave_stmt = function() {
+
+ var localctx = new Leave_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 200, HiveSqlParser.RULE_leave_stmt);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1822;
+ this.match(HiveSqlParser.T_LEAVE);
+ this.state = 1824;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,200,this._ctx);
+ if(la_===1) {
+ this.state = 1823;
+ this.match(HiveSqlParser.L_ID);
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Map_object_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_map_object_stmt;
+ return this;
+}
+
+Map_object_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Map_object_stmtContext.prototype.constructor = Map_object_stmtContext;
+
+Map_object_stmtContext.prototype.T_MAP = function() {
+ return this.getToken(HiveSqlParser.T_MAP, 0);
+};
+
+Map_object_stmtContext.prototype.T_OBJECT = function() {
+ return this.getToken(HiveSqlParser.T_OBJECT, 0);
+};
+
+Map_object_stmtContext.prototype.expr = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ExprContext);
+ } else {
+ return this.getTypedRuleContext(ExprContext,i);
+ }
+};
+
+Map_object_stmtContext.prototype.T_TO = function() {
+ return this.getToken(HiveSqlParser.T_TO, 0);
+};
+
+Map_object_stmtContext.prototype.T_AT = function() {
+ return this.getToken(HiveSqlParser.T_AT, 0);
+};
+
+Map_object_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterMap_object_stmt(this);
+ }
+};
+
+Map_object_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitMap_object_stmt(this);
+ }
+};
+
+Map_object_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitMap_object_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Map_object_stmtContext = Map_object_stmtContext;
+
+HiveSqlParser.prototype.map_object_stmt = function() {
+
+ var localctx = new Map_object_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 202, HiveSqlParser.RULE_map_object_stmt);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1826;
+ this.match(HiveSqlParser.T_MAP);
+ this.state = 1827;
+ this.match(HiveSqlParser.T_OBJECT);
+ this.state = 1828;
+ this.expr(0);
+ this.state = 1831;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,201,this._ctx);
+ if(la_===1) {
+ this.state = 1829;
+ this.match(HiveSqlParser.T_TO);
+ this.state = 1830;
+ this.expr(0);
+
+ }
+ this.state = 1835;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,202,this._ctx);
+ if(la_===1) {
+ this.state = 1833;
+ this.match(HiveSqlParser.T_AT);
+ this.state = 1834;
+ this.expr(0);
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Open_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_open_stmt;
+ return this;
+}
+
+Open_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Open_stmtContext.prototype.constructor = Open_stmtContext;
+
+Open_stmtContext.prototype.T_OPEN = function() {
+ return this.getToken(HiveSqlParser.T_OPEN, 0);
+};
+
+Open_stmtContext.prototype.L_ID = function() {
+ return this.getToken(HiveSqlParser.L_ID, 0);
+};
+
+Open_stmtContext.prototype.T_FOR = function() {
+ return this.getToken(HiveSqlParser.T_FOR, 0);
+};
+
+Open_stmtContext.prototype.select_stmt = function() {
+ return this.getTypedRuleContext(Select_stmtContext,0);
+};
+
+Open_stmtContext.prototype.expr = function() {
+ return this.getTypedRuleContext(ExprContext,0);
+};
+
+Open_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterOpen_stmt(this);
+ }
+};
+
+Open_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitOpen_stmt(this);
+ }
+};
+
+Open_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitOpen_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Open_stmtContext = Open_stmtContext;
+
+HiveSqlParser.prototype.open_stmt = function() {
+
+ var localctx = new Open_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 204, HiveSqlParser.RULE_open_stmt);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1837;
+ this.match(HiveSqlParser.T_OPEN);
+ this.state = 1838;
+ this.match(HiveSqlParser.L_ID);
+ this.state = 1844;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,204,this._ctx);
+ if(la_===1) {
+ this.state = 1839;
+ this.match(HiveSqlParser.T_FOR);
+ this.state = 1842;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,203,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 1840;
+ this.select_stmt();
+ break;
+
+ case 2:
+ this.state = 1841;
+ this.expr(0);
+ break;
+
+ }
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Fetch_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_fetch_stmt;
+ return this;
+}
+
+Fetch_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Fetch_stmtContext.prototype.constructor = Fetch_stmtContext;
+
+Fetch_stmtContext.prototype.T_FETCH = function() {
+ return this.getToken(HiveSqlParser.T_FETCH, 0);
+};
+
+Fetch_stmtContext.prototype.L_ID = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.L_ID);
+ } else {
+ return this.getToken(HiveSqlParser.L_ID, i);
+ }
+};
+
+
+Fetch_stmtContext.prototype.T_INTO = function() {
+ return this.getToken(HiveSqlParser.T_INTO, 0);
+};
+
+Fetch_stmtContext.prototype.T_FROM = function() {
+ return this.getToken(HiveSqlParser.T_FROM, 0);
+};
+
+Fetch_stmtContext.prototype.T_COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_COMMA);
+ } else {
+ return this.getToken(HiveSqlParser.T_COMMA, i);
+ }
+};
+
+
+Fetch_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterFetch_stmt(this);
+ }
+};
+
+Fetch_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitFetch_stmt(this);
+ }
+};
+
+Fetch_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitFetch_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Fetch_stmtContext = Fetch_stmtContext;
+
+HiveSqlParser.prototype.fetch_stmt = function() {
+
+ var localctx = new Fetch_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 206, HiveSqlParser.RULE_fetch_stmt);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1846;
+ this.match(HiveSqlParser.T_FETCH);
+ this.state = 1848;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_FROM) {
+ this.state = 1847;
+ this.match(HiveSqlParser.T_FROM);
+ }
+
+ this.state = 1850;
+ this.match(HiveSqlParser.L_ID);
+ this.state = 1851;
+ this.match(HiveSqlParser.T_INTO);
+ this.state = 1852;
+ this.match(HiveSqlParser.L_ID);
+ this.state = 1857;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,206,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 1853;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 1854;
+ this.match(HiveSqlParser.L_ID);
+ }
+ this.state = 1859;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,206,this._ctx);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Collect_stats_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_collect_stats_stmt;
+ return this;
+}
+
+Collect_stats_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Collect_stats_stmtContext.prototype.constructor = Collect_stats_stmtContext;
+
+Collect_stats_stmtContext.prototype.T_COLLECT = function() {
+ return this.getToken(HiveSqlParser.T_COLLECT, 0);
+};
+
+Collect_stats_stmtContext.prototype.T_ON = function() {
+ return this.getToken(HiveSqlParser.T_ON, 0);
+};
+
+Collect_stats_stmtContext.prototype.table_name = function() {
+ return this.getTypedRuleContext(Table_nameContext,0);
+};
+
+Collect_stats_stmtContext.prototype.T_STATISTICS = function() {
+ return this.getToken(HiveSqlParser.T_STATISTICS, 0);
+};
+
+Collect_stats_stmtContext.prototype.T_STATS = function() {
+ return this.getToken(HiveSqlParser.T_STATS, 0);
+};
+
+Collect_stats_stmtContext.prototype.collect_stats_clause = function() {
+ return this.getTypedRuleContext(Collect_stats_clauseContext,0);
+};
+
+Collect_stats_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCollect_stats_stmt(this);
+ }
+};
+
+Collect_stats_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCollect_stats_stmt(this);
+ }
+};
+
+Collect_stats_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCollect_stats_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Collect_stats_stmtContext = Collect_stats_stmtContext;
+
+HiveSqlParser.prototype.collect_stats_stmt = function() {
+
+ var localctx = new Collect_stats_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 208, HiveSqlParser.RULE_collect_stats_stmt);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1860;
+ this.match(HiveSqlParser.T_COLLECT);
+ this.state = 1861;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_STATISTICS || _la===HiveSqlParser.T_STATS)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 1862;
+ this.match(HiveSqlParser.T_ON);
+ this.state = 1863;
+ this.table_name();
+ this.state = 1865;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,207,this._ctx);
+ if(la_===1) {
+ this.state = 1864;
+ this.collect_stats_clause();
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Collect_stats_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_collect_stats_clause;
+ return this;
+}
+
+Collect_stats_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Collect_stats_clauseContext.prototype.constructor = Collect_stats_clauseContext;
+
+Collect_stats_clauseContext.prototype.T_COLUMN = function() {
+ return this.getToken(HiveSqlParser.T_COLUMN, 0);
+};
+
+Collect_stats_clauseContext.prototype.T_OPEN_P = function() {
+ return this.getToken(HiveSqlParser.T_OPEN_P, 0);
+};
+
+Collect_stats_clauseContext.prototype.ident = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(IdentContext);
+ } else {
+ return this.getTypedRuleContext(IdentContext,i);
+ }
+};
+
+Collect_stats_clauseContext.prototype.T_CLOSE_P = function() {
+ return this.getToken(HiveSqlParser.T_CLOSE_P, 0);
+};
+
+Collect_stats_clauseContext.prototype.T_COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_COMMA);
+ } else {
+ return this.getToken(HiveSqlParser.T_COMMA, i);
+ }
+};
+
+
+Collect_stats_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCollect_stats_clause(this);
+ }
+};
+
+Collect_stats_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCollect_stats_clause(this);
+ }
+};
+
+Collect_stats_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCollect_stats_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Collect_stats_clauseContext = Collect_stats_clauseContext;
+
+HiveSqlParser.prototype.collect_stats_clause = function() {
+
+ var localctx = new Collect_stats_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 210, HiveSqlParser.RULE_collect_stats_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1867;
+ this.match(HiveSqlParser.T_COLUMN);
+ this.state = 1868;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 1869;
+ this.ident();
+ this.state = 1874;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===HiveSqlParser.T_COMMA) {
+ this.state = 1870;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 1871;
+ this.ident();
+ this.state = 1876;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 1877;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Close_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_close_stmt;
+ return this;
+}
+
+Close_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Close_stmtContext.prototype.constructor = Close_stmtContext;
+
+Close_stmtContext.prototype.T_CLOSE = function() {
+ return this.getToken(HiveSqlParser.T_CLOSE, 0);
+};
+
+Close_stmtContext.prototype.L_ID = function() {
+ return this.getToken(HiveSqlParser.L_ID, 0);
+};
+
+Close_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterClose_stmt(this);
+ }
+};
+
+Close_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitClose_stmt(this);
+ }
+};
+
+Close_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitClose_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Close_stmtContext = Close_stmtContext;
+
+HiveSqlParser.prototype.close_stmt = function() {
+
+ var localctx = new Close_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 212, HiveSqlParser.RULE_close_stmt);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1879;
+ this.match(HiveSqlParser.T_CLOSE);
+ this.state = 1880;
+ this.match(HiveSqlParser.L_ID);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Cmp_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_cmp_stmt;
+ return this;
+}
+
+Cmp_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Cmp_stmtContext.prototype.constructor = Cmp_stmtContext;
+
+Cmp_stmtContext.prototype.T_CMP = function() {
+ return this.getToken(HiveSqlParser.T_CMP, 0);
+};
+
+Cmp_stmtContext.prototype.cmp_source = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Cmp_sourceContext);
+ } else {
+ return this.getTypedRuleContext(Cmp_sourceContext,i);
+ }
+};
+
+Cmp_stmtContext.prototype.T_COMMA = function() {
+ return this.getToken(HiveSqlParser.T_COMMA, 0);
+};
+
+Cmp_stmtContext.prototype.T_ROW_COUNT = function() {
+ return this.getToken(HiveSqlParser.T_ROW_COUNT, 0);
+};
+
+Cmp_stmtContext.prototype.T_SUM = function() {
+ return this.getToken(HiveSqlParser.T_SUM, 0);
+};
+
+Cmp_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCmp_stmt(this);
+ }
+};
+
+Cmp_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCmp_stmt(this);
+ }
+};
+
+Cmp_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCmp_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Cmp_stmtContext = Cmp_stmtContext;
+
+HiveSqlParser.prototype.cmp_stmt = function() {
+
+ var localctx = new Cmp_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 214, HiveSqlParser.RULE_cmp_stmt);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1882;
+ this.match(HiveSqlParser.T_CMP);
+ this.state = 1883;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_ROW_COUNT || _la===HiveSqlParser.T_SUM)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 1884;
+ this.cmp_source();
+ this.state = 1885;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 1886;
+ this.cmp_source();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Cmp_sourceContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_cmp_source;
+ return this;
+}
+
+Cmp_sourceContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Cmp_sourceContext.prototype.constructor = Cmp_sourceContext;
+
+Cmp_sourceContext.prototype.table_name = function() {
+ return this.getTypedRuleContext(Table_nameContext,0);
+};
+
+Cmp_sourceContext.prototype.T_OPEN_P = function() {
+ return this.getToken(HiveSqlParser.T_OPEN_P, 0);
+};
+
+Cmp_sourceContext.prototype.select_stmt = function() {
+ return this.getTypedRuleContext(Select_stmtContext,0);
+};
+
+Cmp_sourceContext.prototype.T_CLOSE_P = function() {
+ return this.getToken(HiveSqlParser.T_CLOSE_P, 0);
+};
+
+Cmp_sourceContext.prototype.T_AT = function() {
+ return this.getToken(HiveSqlParser.T_AT, 0);
+};
+
+Cmp_sourceContext.prototype.ident = function() {
+ return this.getTypedRuleContext(IdentContext,0);
+};
+
+Cmp_sourceContext.prototype.where_clause = function() {
+ return this.getTypedRuleContext(Where_clauseContext,0);
+};
+
+Cmp_sourceContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCmp_source(this);
+ }
+};
+
+Cmp_sourceContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCmp_source(this);
+ }
+};
+
+Cmp_sourceContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCmp_source(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Cmp_sourceContext = Cmp_sourceContext;
+
+HiveSqlParser.prototype.cmp_source = function() {
+
+ var localctx = new Cmp_sourceContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 216, HiveSqlParser.RULE_cmp_source);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1896;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case HiveSqlParser.T__8:
+ case HiveSqlParser.T_GO:
+ case HiveSqlParser.T_BEGIN:
+ case HiveSqlParser.T_EXCEPTION:
+ case HiveSqlParser.L_ID:
+ case HiveSqlParser.T_THEN:
+ case HiveSqlParser.T_SET:
+ case HiveSqlParser.T_ALLOCATE:
+ case HiveSqlParser.T_CURSOR:
+ case HiveSqlParser.T_FOR:
+ case HiveSqlParser.T_RESULT:
+ case HiveSqlParser.T_PROCEDURE:
+ case HiveSqlParser.T_ASSOCIATE:
+ case HiveSqlParser.T_LOCATOR:
+ case HiveSqlParser.T_LOCATORS:
+ case HiveSqlParser.T_WITH:
+ case HiveSqlParser.T_TRANSACTION:
+ case HiveSqlParser.T_BREAK:
+ case HiveSqlParser.T_CALL:
+ case HiveSqlParser.T_DECLARE:
+ case HiveSqlParser.T_AS:
+ case HiveSqlParser.T_CONSTANT:
+ case HiveSqlParser.T_CONDITION:
+ case HiveSqlParser.T_IS:
+ case HiveSqlParser.T_RETURN:
+ case HiveSqlParser.T_ONLY:
+ case HiveSqlParser.T_TO:
+ case HiveSqlParser.T_CALLER:
+ case HiveSqlParser.T_CLIENT:
+ case HiveSqlParser.T_WITHOUT:
+ case HiveSqlParser.T_CONTINUE:
+ case HiveSqlParser.T_EXIT:
+ case HiveSqlParser.T_HANDLER:
+ case HiveSqlParser.T_SQLEXCEPTION:
+ case HiveSqlParser.T_SQLWARNING:
+ case HiveSqlParser.T_NOT:
+ case HiveSqlParser.T_FOUND:
+ case HiveSqlParser.T_GLOBAL:
+ case HiveSqlParser.T_TEMPORARY:
+ case HiveSqlParser.T_TABLE:
+ case HiveSqlParser.T_CREATE:
+ case HiveSqlParser.T_IF:
+ case HiveSqlParser.T_EXISTS:
+ case HiveSqlParser.T_LOCAL:
+ case HiveSqlParser.T_MULTISET:
+ case HiveSqlParser.T_VOLATILE:
+ case HiveSqlParser.T_LIKE:
+ case HiveSqlParser.T_CONSTRAINT:
+ case HiveSqlParser.T_PRIMARY:
+ case HiveSqlParser.T_KEY:
+ case HiveSqlParser.T_UNIQUE:
+ case HiveSqlParser.T_REFERENCES:
+ case HiveSqlParser.T_IDENTITY:
+ case HiveSqlParser.T_AUTO_INCREMENT:
+ case HiveSqlParser.T_ENABLE:
+ case HiveSqlParser.T_CLUSTERED:
+ case HiveSqlParser.T_ASC:
+ case HiveSqlParser.T_DESC:
+ case HiveSqlParser.T_FOREIGN:
+ case HiveSqlParser.T_ON:
+ case HiveSqlParser.T_UPDATE:
+ case HiveSqlParser.T_DELETE:
+ case HiveSqlParser.T_NO:
+ case HiveSqlParser.T_ACTION:
+ case HiveSqlParser.T_RESTRICT:
+ case HiveSqlParser.T_DEFAULT:
+ case HiveSqlParser.T_CASCADE:
+ case HiveSqlParser.T_LOG:
+ case HiveSqlParser.T_FALLBACK:
+ case HiveSqlParser.T_COMMIT:
+ case HiveSqlParser.T_PRESERVE:
+ case HiveSqlParser.T_ROWS:
+ case HiveSqlParser.T_SEGMENT:
+ case HiveSqlParser.T_CREATION:
+ case HiveSqlParser.T_IMMEDIATE:
+ case HiveSqlParser.T_DEFERRED:
+ case HiveSqlParser.T_PCTFREE:
+ case HiveSqlParser.T_PCTUSED:
+ case HiveSqlParser.T_INITRANS:
+ case HiveSqlParser.T_MAXTRANS:
+ case HiveSqlParser.T_NOCOMPRESS:
+ case HiveSqlParser.T_LOGGING:
+ case HiveSqlParser.T_NOLOGGING:
+ case HiveSqlParser.T_STORAGE:
+ case HiveSqlParser.T_TABLESPACE:
+ case HiveSqlParser.T_INDEX:
+ case HiveSqlParser.T_IN:
+ case HiveSqlParser.T_REPLACE:
+ case HiveSqlParser.T_DISTRIBUTE:
+ case HiveSqlParser.T_BY:
+ case HiveSqlParser.T_HASH:
+ case HiveSqlParser.T_LOGGED:
+ case HiveSqlParser.T_COMPRESS:
+ case HiveSqlParser.T_YES:
+ case HiveSqlParser.T_DEFINITION:
+ case HiveSqlParser.T_DROP:
+ case HiveSqlParser.T_DATA:
+ case HiveSqlParser.T_STORED:
+ case HiveSqlParser.T_ROW:
+ case HiveSqlParser.T_FORMAT:
+ case HiveSqlParser.T_DELIMITED:
+ case HiveSqlParser.T_FIELDS:
+ case HiveSqlParser.T_TERMINATED:
+ case HiveSqlParser.T_ESCAPED:
+ case HiveSqlParser.T_COLLECTION:
+ case HiveSqlParser.T_ITEMS:
+ case HiveSqlParser.T_MAP:
+ case HiveSqlParser.T_KEYS:
+ case HiveSqlParser.T_LINES:
+ case HiveSqlParser.T_DEFINED:
+ case HiveSqlParser.T_TEXTIMAGE_ON:
+ case HiveSqlParser.T_COMMENT:
+ case HiveSqlParser.T_CHARACTER:
+ case HiveSqlParser.T_CHARSET:
+ case HiveSqlParser.T_ENGINE:
+ case HiveSqlParser.T_ALTER:
+ case HiveSqlParser.T_ADD2:
+ case HiveSqlParser.T_CHAR:
+ case HiveSqlParser.T_BIGINT:
+ case HiveSqlParser.T_BINARY_DOUBLE:
+ case HiveSqlParser.T_BINARY_FLOAT:
+ case HiveSqlParser.T_BIT:
+ case HiveSqlParser.T_DATE:
+ case HiveSqlParser.T_DATETIME:
+ case HiveSqlParser.T_DEC:
+ case HiveSqlParser.T_DECIMAL:
+ case HiveSqlParser.T_DOUBLE:
+ case HiveSqlParser.T_PRECISION:
+ case HiveSqlParser.T_FLOAT:
+ case HiveSqlParser.T_INT:
+ case HiveSqlParser.T_INT2:
+ case HiveSqlParser.T_INT4:
+ case HiveSqlParser.T_INT8:
+ case HiveSqlParser.T_INTEGER:
+ case HiveSqlParser.T_NCHAR:
+ case HiveSqlParser.T_NVARCHAR:
+ case HiveSqlParser.T_NUMBER:
+ case HiveSqlParser.T_NUMERIC:
+ case HiveSqlParser.T_REAL:
+ case HiveSqlParser.T_RESULT_SET_LOCATOR:
+ case HiveSqlParser.T_VARYING:
+ case HiveSqlParser.T_SIMPLE_FLOAT:
+ case HiveSqlParser.T_SIMPLE_DOUBLE:
+ case HiveSqlParser.T_SMALLINT:
+ case HiveSqlParser.T_SMALLDATETIME:
+ case HiveSqlParser.T_STRING:
+ case HiveSqlParser.T_SYS_REFCURSOR:
+ case HiveSqlParser.T_TIMESTAMP:
+ case HiveSqlParser.T_VARCHAR:
+ case HiveSqlParser.T_VARCHAR2:
+ case HiveSqlParser.T_XML:
+ case HiveSqlParser.T_MAX:
+ case HiveSqlParser.T_BYTE:
+ case HiveSqlParser.T_CASESPECIFIC:
+ case HiveSqlParser.T_CS:
+ case HiveSqlParser.T_DATABASE:
+ case HiveSqlParser.T_SCHEMA:
+ case HiveSqlParser.T_LOCATION:
+ case HiveSqlParser.T_OR:
+ case HiveSqlParser.T_FUNCTION:
+ case HiveSqlParser.T_RETURNS:
+ case HiveSqlParser.T_PACKAGE:
+ case HiveSqlParser.T_PROC:
+ case HiveSqlParser.T_BODY:
+ case HiveSqlParser.T_OUT:
+ case HiveSqlParser.T_INOUT:
+ case HiveSqlParser.T_LANGUAGE:
+ case HiveSqlParser.T_SQL:
+ case HiveSqlParser.T_SECURITY:
+ case HiveSqlParser.T_CREATOR:
+ case HiveSqlParser.T_DEFINER:
+ case HiveSqlParser.T_INVOKER:
+ case HiveSqlParser.T_OWNER:
+ case HiveSqlParser.T_DYNAMIC:
+ case HiveSqlParser.T_SETS:
+ case HiveSqlParser.T_EXEC:
+ case HiveSqlParser.T_EXECUTE:
+ case HiveSqlParser.T_INTO:
+ case HiveSqlParser.T_INCLUDE:
+ case HiveSqlParser.T_INSERT:
+ case HiveSqlParser.T_OVERWRITE:
+ case HiveSqlParser.T_VALUES:
+ case HiveSqlParser.T_DIRECTORY:
+ case HiveSqlParser.T_GET:
+ case HiveSqlParser.T_DIAGNOSTICS:
+ case HiveSqlParser.T_MESSAGE_TEXT:
+ case HiveSqlParser.T_ROW_COUNT:
+ case HiveSqlParser.T_GRANT:
+ case HiveSqlParser.T_ROLE:
+ case HiveSqlParser.T_LEAVE:
+ case HiveSqlParser.T_OBJECT:
+ case HiveSqlParser.T_AT:
+ case HiveSqlParser.T_OPEN:
+ case HiveSqlParser.T_FETCH:
+ case HiveSqlParser.T_FROM:
+ case HiveSqlParser.T_COLLECT:
+ case HiveSqlParser.T_STATISTICS:
+ case HiveSqlParser.T_STATS:
+ case HiveSqlParser.T_COLUMN:
+ case HiveSqlParser.T_CLOSE:
+ case HiveSqlParser.T_CMP:
+ case HiveSqlParser.T_SUM:
+ case HiveSqlParser.T_COPY:
+ case HiveSqlParser.T_HDFS:
+ case HiveSqlParser.T_BATCHSIZE:
+ case HiveSqlParser.T_DELIMITER:
+ case HiveSqlParser.T_SQLINSERT:
+ case HiveSqlParser.T_IGNORE:
+ case HiveSqlParser.T_WORK:
+ case HiveSqlParser.T_PRINT:
+ case HiveSqlParser.T_QUIT:
+ case HiveSqlParser.T_RAISE:
+ case HiveSqlParser.T_RESIGNAL:
+ case HiveSqlParser.T_SQLSTATE:
+ case HiveSqlParser.T_VALUE:
+ case HiveSqlParser.T_ROLLBACK:
+ case HiveSqlParser.T_CURRENT:
+ case HiveSqlParser.T_CURRENT_SCHEMA:
+ case HiveSqlParser.T_ANSI_NULLS:
+ case HiveSqlParser.T_ANSI_PADDING:
+ case HiveSqlParser.T_NOCOUNT:
+ case HiveSqlParser.T_QUOTED_IDENTIFIER:
+ case HiveSqlParser.T_XACT_ABORT:
+ case HiveSqlParser.T_OFF:
+ case HiveSqlParser.T_QUERY_BAND:
+ case HiveSqlParser.T_NONE:
+ case HiveSqlParser.T_SESSION:
+ case HiveSqlParser.T_SIGNAL:
+ case HiveSqlParser.T_SUMMARY:
+ case HiveSqlParser.T_TOP:
+ case HiveSqlParser.T_LIMIT:
+ case HiveSqlParser.T_TRUNCATE:
+ case HiveSqlParser.T_USE:
+ case HiveSqlParser.T_WHILE:
+ case HiveSqlParser.T_DO:
+ case HiveSqlParser.T_LOOP:
+ case HiveSqlParser.T_REVERSE:
+ case HiveSqlParser.T_STEP:
+ case HiveSqlParser.T_USING:
+ case HiveSqlParser.T_ALL:
+ case HiveSqlParser.T_EXCEPT:
+ case HiveSqlParser.T_INTERSECT:
+ case HiveSqlParser.T_SELECT:
+ case HiveSqlParser.T_SEL:
+ case HiveSqlParser.T_DISTINCT:
+ case HiveSqlParser.T_TITLE:
+ case HiveSqlParser.T_INNER:
+ case HiveSqlParser.T_JOIN:
+ case HiveSqlParser.T_LEFT:
+ case HiveSqlParser.T_RIGHT:
+ case HiveSqlParser.T_FULL:
+ case HiveSqlParser.T_OUTER:
+ case HiveSqlParser.T_GROUP:
+ case HiveSqlParser.T_HAVING:
+ case HiveSqlParser.T_QUALIFY:
+ case HiveSqlParser.T_ORDER:
+ case HiveSqlParser.T_RR:
+ case HiveSqlParser.T_RS:
+ case HiveSqlParser.T_UR:
+ case HiveSqlParser.T_AND:
+ case HiveSqlParser.T_KEEP:
+ case HiveSqlParser.T_EXCLUSIVE:
+ case HiveSqlParser.T_SHARE:
+ case HiveSqlParser.T_LOCKS:
+ case HiveSqlParser.T_MERGE:
+ case HiveSqlParser.T_MATCHED:
+ case HiveSqlParser.T_DESCRIBE:
+ case HiveSqlParser.T_BETWEEN:
+ case HiveSqlParser.T_RLIKE:
+ case HiveSqlParser.T_REGEXP:
+ case HiveSqlParser.T_INTERVAL:
+ case HiveSqlParser.T_DAY:
+ case HiveSqlParser.T_DAYS:
+ case HiveSqlParser.T_MICROSECOND:
+ case HiveSqlParser.T_MICROSECONDS:
+ case HiveSqlParser.T_SECOND:
+ case HiveSqlParser.T_SECONDS:
+ case HiveSqlParser.T_CONCAT:
+ case HiveSqlParser.T_CASE:
+ case HiveSqlParser.T_ISOPEN:
+ case HiveSqlParser.T_NOTFOUND:
+ case HiveSqlParser.T_AVG:
+ case HiveSqlParser.T_COUNT:
+ case HiveSqlParser.T_COUNT_BIG:
+ case HiveSqlParser.T_CUME_DIST:
+ case HiveSqlParser.T_DENSE_RANK:
+ case HiveSqlParser.T_FIRST_VALUE:
+ case HiveSqlParser.T_LAG:
+ case HiveSqlParser.T_LAST_VALUE:
+ case HiveSqlParser.T_LEAD:
+ case HiveSqlParser.T_MIN:
+ case HiveSqlParser.T_RANK:
+ case HiveSqlParser.T_ROW_NUMBER:
+ case HiveSqlParser.T_STDEV:
+ case HiveSqlParser.T_VAR:
+ case HiveSqlParser.T_VARIANCE:
+ case HiveSqlParser.T_OVER:
+ case HiveSqlParser.T_PARTITION:
+ case HiveSqlParser.T_ACTIVITY_COUNT:
+ case HiveSqlParser.T_CAST:
+ case HiveSqlParser.T_CURRENT_DATE:
+ case HiveSqlParser.T_CURRENT_TIMESTAMP:
+ case HiveSqlParser.T_CURRENT_USER:
+ case HiveSqlParser.T_USER:
+ case HiveSqlParser.T_PART_COUNT:
+ case HiveSqlParser.T_PART_LOC:
+ case HiveSqlParser.T_TRIM:
+ case HiveSqlParser.T_SUBSTRING:
+ case HiveSqlParser.T_SYSDATE:
+ case HiveSqlParser.T_HIVE:
+ case HiveSqlParser.T_HOST:
+ case HiveSqlParser.T_TRUE:
+ case HiveSqlParser.T_FALSE:
+ case HiveSqlParser.T_DIR:
+ case HiveSqlParser.T_FILE:
+ case HiveSqlParser.T_FILES:
+ case HiveSqlParser.T_NEW:
+ case HiveSqlParser.T_PWD:
+ case HiveSqlParser.T_SESSIONS:
+ case HiveSqlParser.T_SUBDIR:
+ this.state = 1888;
+ this.table_name();
+ this.state = 1890;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,209,this._ctx);
+ if(la_===1) {
+ this.state = 1889;
+ this.where_clause();
+
+ }
+ break;
+ case HiveSqlParser.T_OPEN_P:
+ this.state = 1892;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 1893;
+ this.select_stmt();
+ this.state = 1894;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 1900;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,211,this._ctx);
+ if(la_===1) {
+ this.state = 1898;
+ this.match(HiveSqlParser.T_AT);
+ this.state = 1899;
+ this.ident();
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Copy_from_local_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_copy_from_local_stmt;
+ return this;
+}
+
+Copy_from_local_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Copy_from_local_stmtContext.prototype.constructor = Copy_from_local_stmtContext;
+
+Copy_from_local_stmtContext.prototype.T_COPY = function() {
+ return this.getToken(HiveSqlParser.T_COPY, 0);
+};
+
+Copy_from_local_stmtContext.prototype.T_FROM = function() {
+ return this.getToken(HiveSqlParser.T_FROM, 0);
+};
+
+Copy_from_local_stmtContext.prototype.T_LOCAL = function() {
+ return this.getToken(HiveSqlParser.T_LOCAL, 0);
+};
+
+Copy_from_local_stmtContext.prototype.copy_source = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Copy_sourceContext);
+ } else {
+ return this.getTypedRuleContext(Copy_sourceContext,i);
+ }
+};
+
+Copy_from_local_stmtContext.prototype.T_TO = function() {
+ return this.getToken(HiveSqlParser.T_TO, 0);
+};
+
+Copy_from_local_stmtContext.prototype.copy_target = function() {
+ return this.getTypedRuleContext(Copy_targetContext,0);
+};
+
+Copy_from_local_stmtContext.prototype.T_COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_COMMA);
+ } else {
+ return this.getToken(HiveSqlParser.T_COMMA, i);
+ }
+};
+
+
+Copy_from_local_stmtContext.prototype.copy_file_option = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Copy_file_optionContext);
+ } else {
+ return this.getTypedRuleContext(Copy_file_optionContext,i);
+ }
+};
+
+Copy_from_local_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCopy_from_local_stmt(this);
+ }
+};
+
+Copy_from_local_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCopy_from_local_stmt(this);
+ }
+};
+
+Copy_from_local_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCopy_from_local_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Copy_from_local_stmtContext = Copy_from_local_stmtContext;
+
+HiveSqlParser.prototype.copy_from_local_stmt = function() {
+
+ var localctx = new Copy_from_local_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 218, HiveSqlParser.RULE_copy_from_local_stmt);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1902;
+ this.match(HiveSqlParser.T_COPY);
+ this.state = 1903;
+ this.match(HiveSqlParser.T_FROM);
+ this.state = 1904;
+ this.match(HiveSqlParser.T_LOCAL);
+ this.state = 1905;
+ this.copy_source();
+ this.state = 1910;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===HiveSqlParser.T_COMMA) {
+ this.state = 1906;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 1907;
+ this.copy_source();
+ this.state = 1912;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 1913;
+ this.match(HiveSqlParser.T_TO);
+ this.state = 1914;
+ this.copy_target();
+ this.state = 1918;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,213,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 1915;
+ this.copy_file_option();
+ }
+ this.state = 1920;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,213,this._ctx);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Copy_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_copy_stmt;
+ return this;
+}
+
+Copy_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Copy_stmtContext.prototype.constructor = Copy_stmtContext;
+
+Copy_stmtContext.prototype.T_COPY = function() {
+ return this.getToken(HiveSqlParser.T_COPY, 0);
+};
+
+Copy_stmtContext.prototype.T_TO = function() {
+ return this.getToken(HiveSqlParser.T_TO, 0);
+};
+
+Copy_stmtContext.prototype.copy_target = function() {
+ return this.getTypedRuleContext(Copy_targetContext,0);
+};
+
+Copy_stmtContext.prototype.table_name = function() {
+ return this.getTypedRuleContext(Table_nameContext,0);
+};
+
+Copy_stmtContext.prototype.T_OPEN_P = function() {
+ return this.getToken(HiveSqlParser.T_OPEN_P, 0);
+};
+
+Copy_stmtContext.prototype.select_stmt = function() {
+ return this.getTypedRuleContext(Select_stmtContext,0);
+};
+
+Copy_stmtContext.prototype.T_CLOSE_P = function() {
+ return this.getToken(HiveSqlParser.T_CLOSE_P, 0);
+};
+
+Copy_stmtContext.prototype.T_HDFS = function() {
+ return this.getToken(HiveSqlParser.T_HDFS, 0);
+};
+
+Copy_stmtContext.prototype.copy_option = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Copy_optionContext);
+ } else {
+ return this.getTypedRuleContext(Copy_optionContext,i);
+ }
+};
+
+Copy_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCopy_stmt(this);
+ }
+};
+
+Copy_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCopy_stmt(this);
+ }
+};
+
+Copy_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCopy_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Copy_stmtContext = Copy_stmtContext;
+
+HiveSqlParser.prototype.copy_stmt = function() {
+
+ var localctx = new Copy_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 220, HiveSqlParser.RULE_copy_stmt);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1921;
+ this.match(HiveSqlParser.T_COPY);
+ this.state = 1927;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case HiveSqlParser.T__8:
+ case HiveSqlParser.T_GO:
+ case HiveSqlParser.T_BEGIN:
+ case HiveSqlParser.T_EXCEPTION:
+ case HiveSqlParser.L_ID:
+ case HiveSqlParser.T_THEN:
+ case HiveSqlParser.T_SET:
+ case HiveSqlParser.T_ALLOCATE:
+ case HiveSqlParser.T_CURSOR:
+ case HiveSqlParser.T_FOR:
+ case HiveSqlParser.T_RESULT:
+ case HiveSqlParser.T_PROCEDURE:
+ case HiveSqlParser.T_ASSOCIATE:
+ case HiveSqlParser.T_LOCATOR:
+ case HiveSqlParser.T_LOCATORS:
+ case HiveSqlParser.T_WITH:
+ case HiveSqlParser.T_TRANSACTION:
+ case HiveSqlParser.T_BREAK:
+ case HiveSqlParser.T_CALL:
+ case HiveSqlParser.T_DECLARE:
+ case HiveSqlParser.T_AS:
+ case HiveSqlParser.T_CONSTANT:
+ case HiveSqlParser.T_CONDITION:
+ case HiveSqlParser.T_IS:
+ case HiveSqlParser.T_RETURN:
+ case HiveSqlParser.T_ONLY:
+ case HiveSqlParser.T_TO:
+ case HiveSqlParser.T_CALLER:
+ case HiveSqlParser.T_CLIENT:
+ case HiveSqlParser.T_WITHOUT:
+ case HiveSqlParser.T_CONTINUE:
+ case HiveSqlParser.T_EXIT:
+ case HiveSqlParser.T_HANDLER:
+ case HiveSqlParser.T_SQLEXCEPTION:
+ case HiveSqlParser.T_SQLWARNING:
+ case HiveSqlParser.T_NOT:
+ case HiveSqlParser.T_FOUND:
+ case HiveSqlParser.T_GLOBAL:
+ case HiveSqlParser.T_TEMPORARY:
+ case HiveSqlParser.T_TABLE:
+ case HiveSqlParser.T_CREATE:
+ case HiveSqlParser.T_IF:
+ case HiveSqlParser.T_EXISTS:
+ case HiveSqlParser.T_LOCAL:
+ case HiveSqlParser.T_MULTISET:
+ case HiveSqlParser.T_VOLATILE:
+ case HiveSqlParser.T_LIKE:
+ case HiveSqlParser.T_CONSTRAINT:
+ case HiveSqlParser.T_PRIMARY:
+ case HiveSqlParser.T_KEY:
+ case HiveSqlParser.T_UNIQUE:
+ case HiveSqlParser.T_REFERENCES:
+ case HiveSqlParser.T_IDENTITY:
+ case HiveSqlParser.T_AUTO_INCREMENT:
+ case HiveSqlParser.T_ENABLE:
+ case HiveSqlParser.T_CLUSTERED:
+ case HiveSqlParser.T_ASC:
+ case HiveSqlParser.T_DESC:
+ case HiveSqlParser.T_FOREIGN:
+ case HiveSqlParser.T_ON:
+ case HiveSqlParser.T_UPDATE:
+ case HiveSqlParser.T_DELETE:
+ case HiveSqlParser.T_NO:
+ case HiveSqlParser.T_ACTION:
+ case HiveSqlParser.T_RESTRICT:
+ case HiveSqlParser.T_DEFAULT:
+ case HiveSqlParser.T_CASCADE:
+ case HiveSqlParser.T_LOG:
+ case HiveSqlParser.T_FALLBACK:
+ case HiveSqlParser.T_COMMIT:
+ case HiveSqlParser.T_PRESERVE:
+ case HiveSqlParser.T_ROWS:
+ case HiveSqlParser.T_SEGMENT:
+ case HiveSqlParser.T_CREATION:
+ case HiveSqlParser.T_IMMEDIATE:
+ case HiveSqlParser.T_DEFERRED:
+ case HiveSqlParser.T_PCTFREE:
+ case HiveSqlParser.T_PCTUSED:
+ case HiveSqlParser.T_INITRANS:
+ case HiveSqlParser.T_MAXTRANS:
+ case HiveSqlParser.T_NOCOMPRESS:
+ case HiveSqlParser.T_LOGGING:
+ case HiveSqlParser.T_NOLOGGING:
+ case HiveSqlParser.T_STORAGE:
+ case HiveSqlParser.T_TABLESPACE:
+ case HiveSqlParser.T_INDEX:
+ case HiveSqlParser.T_IN:
+ case HiveSqlParser.T_REPLACE:
+ case HiveSqlParser.T_DISTRIBUTE:
+ case HiveSqlParser.T_BY:
+ case HiveSqlParser.T_HASH:
+ case HiveSqlParser.T_LOGGED:
+ case HiveSqlParser.T_COMPRESS:
+ case HiveSqlParser.T_YES:
+ case HiveSqlParser.T_DEFINITION:
+ case HiveSqlParser.T_DROP:
+ case HiveSqlParser.T_DATA:
+ case HiveSqlParser.T_STORED:
+ case HiveSqlParser.T_ROW:
+ case HiveSqlParser.T_FORMAT:
+ case HiveSqlParser.T_DELIMITED:
+ case HiveSqlParser.T_FIELDS:
+ case HiveSqlParser.T_TERMINATED:
+ case HiveSqlParser.T_ESCAPED:
+ case HiveSqlParser.T_COLLECTION:
+ case HiveSqlParser.T_ITEMS:
+ case HiveSqlParser.T_MAP:
+ case HiveSqlParser.T_KEYS:
+ case HiveSqlParser.T_LINES:
+ case HiveSqlParser.T_DEFINED:
+ case HiveSqlParser.T_TEXTIMAGE_ON:
+ case HiveSqlParser.T_COMMENT:
+ case HiveSqlParser.T_CHARACTER:
+ case HiveSqlParser.T_CHARSET:
+ case HiveSqlParser.T_ENGINE:
+ case HiveSqlParser.T_ALTER:
+ case HiveSqlParser.T_ADD2:
+ case HiveSqlParser.T_CHAR:
+ case HiveSqlParser.T_BIGINT:
+ case HiveSqlParser.T_BINARY_DOUBLE:
+ case HiveSqlParser.T_BINARY_FLOAT:
+ case HiveSqlParser.T_BIT:
+ case HiveSqlParser.T_DATE:
+ case HiveSqlParser.T_DATETIME:
+ case HiveSqlParser.T_DEC:
+ case HiveSqlParser.T_DECIMAL:
+ case HiveSqlParser.T_DOUBLE:
+ case HiveSqlParser.T_PRECISION:
+ case HiveSqlParser.T_FLOAT:
+ case HiveSqlParser.T_INT:
+ case HiveSqlParser.T_INT2:
+ case HiveSqlParser.T_INT4:
+ case HiveSqlParser.T_INT8:
+ case HiveSqlParser.T_INTEGER:
+ case HiveSqlParser.T_NCHAR:
+ case HiveSqlParser.T_NVARCHAR:
+ case HiveSqlParser.T_NUMBER:
+ case HiveSqlParser.T_NUMERIC:
+ case HiveSqlParser.T_REAL:
+ case HiveSqlParser.T_RESULT_SET_LOCATOR:
+ case HiveSqlParser.T_VARYING:
+ case HiveSqlParser.T_SIMPLE_FLOAT:
+ case HiveSqlParser.T_SIMPLE_DOUBLE:
+ case HiveSqlParser.T_SMALLINT:
+ case HiveSqlParser.T_SMALLDATETIME:
+ case HiveSqlParser.T_STRING:
+ case HiveSqlParser.T_SYS_REFCURSOR:
+ case HiveSqlParser.T_TIMESTAMP:
+ case HiveSqlParser.T_VARCHAR:
+ case HiveSqlParser.T_VARCHAR2:
+ case HiveSqlParser.T_XML:
+ case HiveSqlParser.T_MAX:
+ case HiveSqlParser.T_BYTE:
+ case HiveSqlParser.T_CASESPECIFIC:
+ case HiveSqlParser.T_CS:
+ case HiveSqlParser.T_DATABASE:
+ case HiveSqlParser.T_SCHEMA:
+ case HiveSqlParser.T_LOCATION:
+ case HiveSqlParser.T_OR:
+ case HiveSqlParser.T_FUNCTION:
+ case HiveSqlParser.T_RETURNS:
+ case HiveSqlParser.T_PACKAGE:
+ case HiveSqlParser.T_PROC:
+ case HiveSqlParser.T_BODY:
+ case HiveSqlParser.T_OUT:
+ case HiveSqlParser.T_INOUT:
+ case HiveSqlParser.T_LANGUAGE:
+ case HiveSqlParser.T_SQL:
+ case HiveSqlParser.T_SECURITY:
+ case HiveSqlParser.T_CREATOR:
+ case HiveSqlParser.T_DEFINER:
+ case HiveSqlParser.T_INVOKER:
+ case HiveSqlParser.T_OWNER:
+ case HiveSqlParser.T_DYNAMIC:
+ case HiveSqlParser.T_SETS:
+ case HiveSqlParser.T_EXEC:
+ case HiveSqlParser.T_EXECUTE:
+ case HiveSqlParser.T_INTO:
+ case HiveSqlParser.T_INCLUDE:
+ case HiveSqlParser.T_INSERT:
+ case HiveSqlParser.T_OVERWRITE:
+ case HiveSqlParser.T_VALUES:
+ case HiveSqlParser.T_DIRECTORY:
+ case HiveSqlParser.T_GET:
+ case HiveSqlParser.T_DIAGNOSTICS:
+ case HiveSqlParser.T_MESSAGE_TEXT:
+ case HiveSqlParser.T_ROW_COUNT:
+ case HiveSqlParser.T_GRANT:
+ case HiveSqlParser.T_ROLE:
+ case HiveSqlParser.T_LEAVE:
+ case HiveSqlParser.T_OBJECT:
+ case HiveSqlParser.T_AT:
+ case HiveSqlParser.T_OPEN:
+ case HiveSqlParser.T_FETCH:
+ case HiveSqlParser.T_FROM:
+ case HiveSqlParser.T_COLLECT:
+ case HiveSqlParser.T_STATISTICS:
+ case HiveSqlParser.T_STATS:
+ case HiveSqlParser.T_COLUMN:
+ case HiveSqlParser.T_CLOSE:
+ case HiveSqlParser.T_CMP:
+ case HiveSqlParser.T_SUM:
+ case HiveSqlParser.T_COPY:
+ case HiveSqlParser.T_HDFS:
+ case HiveSqlParser.T_BATCHSIZE:
+ case HiveSqlParser.T_DELIMITER:
+ case HiveSqlParser.T_SQLINSERT:
+ case HiveSqlParser.T_IGNORE:
+ case HiveSqlParser.T_WORK:
+ case HiveSqlParser.T_PRINT:
+ case HiveSqlParser.T_QUIT:
+ case HiveSqlParser.T_RAISE:
+ case HiveSqlParser.T_RESIGNAL:
+ case HiveSqlParser.T_SQLSTATE:
+ case HiveSqlParser.T_VALUE:
+ case HiveSqlParser.T_ROLLBACK:
+ case HiveSqlParser.T_CURRENT:
+ case HiveSqlParser.T_CURRENT_SCHEMA:
+ case HiveSqlParser.T_ANSI_NULLS:
+ case HiveSqlParser.T_ANSI_PADDING:
+ case HiveSqlParser.T_NOCOUNT:
+ case HiveSqlParser.T_QUOTED_IDENTIFIER:
+ case HiveSqlParser.T_XACT_ABORT:
+ case HiveSqlParser.T_OFF:
+ case HiveSqlParser.T_QUERY_BAND:
+ case HiveSqlParser.T_NONE:
+ case HiveSqlParser.T_SESSION:
+ case HiveSqlParser.T_SIGNAL:
+ case HiveSqlParser.T_SUMMARY:
+ case HiveSqlParser.T_TOP:
+ case HiveSqlParser.T_LIMIT:
+ case HiveSqlParser.T_TRUNCATE:
+ case HiveSqlParser.T_USE:
+ case HiveSqlParser.T_WHILE:
+ case HiveSqlParser.T_DO:
+ case HiveSqlParser.T_LOOP:
+ case HiveSqlParser.T_REVERSE:
+ case HiveSqlParser.T_STEP:
+ case HiveSqlParser.T_USING:
+ case HiveSqlParser.T_ALL:
+ case HiveSqlParser.T_EXCEPT:
+ case HiveSqlParser.T_INTERSECT:
+ case HiveSqlParser.T_SELECT:
+ case HiveSqlParser.T_SEL:
+ case HiveSqlParser.T_DISTINCT:
+ case HiveSqlParser.T_TITLE:
+ case HiveSqlParser.T_INNER:
+ case HiveSqlParser.T_JOIN:
+ case HiveSqlParser.T_LEFT:
+ case HiveSqlParser.T_RIGHT:
+ case HiveSqlParser.T_FULL:
+ case HiveSqlParser.T_OUTER:
+ case HiveSqlParser.T_GROUP:
+ case HiveSqlParser.T_HAVING:
+ case HiveSqlParser.T_QUALIFY:
+ case HiveSqlParser.T_ORDER:
+ case HiveSqlParser.T_RR:
+ case HiveSqlParser.T_RS:
+ case HiveSqlParser.T_UR:
+ case HiveSqlParser.T_AND:
+ case HiveSqlParser.T_KEEP:
+ case HiveSqlParser.T_EXCLUSIVE:
+ case HiveSqlParser.T_SHARE:
+ case HiveSqlParser.T_LOCKS:
+ case HiveSqlParser.T_MERGE:
+ case HiveSqlParser.T_MATCHED:
+ case HiveSqlParser.T_DESCRIBE:
+ case HiveSqlParser.T_BETWEEN:
+ case HiveSqlParser.T_RLIKE:
+ case HiveSqlParser.T_REGEXP:
+ case HiveSqlParser.T_INTERVAL:
+ case HiveSqlParser.T_DAY:
+ case HiveSqlParser.T_DAYS:
+ case HiveSqlParser.T_MICROSECOND:
+ case HiveSqlParser.T_MICROSECONDS:
+ case HiveSqlParser.T_SECOND:
+ case HiveSqlParser.T_SECONDS:
+ case HiveSqlParser.T_CONCAT:
+ case HiveSqlParser.T_CASE:
+ case HiveSqlParser.T_ISOPEN:
+ case HiveSqlParser.T_NOTFOUND:
+ case HiveSqlParser.T_AVG:
+ case HiveSqlParser.T_COUNT:
+ case HiveSqlParser.T_COUNT_BIG:
+ case HiveSqlParser.T_CUME_DIST:
+ case HiveSqlParser.T_DENSE_RANK:
+ case HiveSqlParser.T_FIRST_VALUE:
+ case HiveSqlParser.T_LAG:
+ case HiveSqlParser.T_LAST_VALUE:
+ case HiveSqlParser.T_LEAD:
+ case HiveSqlParser.T_MIN:
+ case HiveSqlParser.T_RANK:
+ case HiveSqlParser.T_ROW_NUMBER:
+ case HiveSqlParser.T_STDEV:
+ case HiveSqlParser.T_VAR:
+ case HiveSqlParser.T_VARIANCE:
+ case HiveSqlParser.T_OVER:
+ case HiveSqlParser.T_PARTITION:
+ case HiveSqlParser.T_ACTIVITY_COUNT:
+ case HiveSqlParser.T_CAST:
+ case HiveSqlParser.T_CURRENT_DATE:
+ case HiveSqlParser.T_CURRENT_TIMESTAMP:
+ case HiveSqlParser.T_CURRENT_USER:
+ case HiveSqlParser.T_USER:
+ case HiveSqlParser.T_PART_COUNT:
+ case HiveSqlParser.T_PART_LOC:
+ case HiveSqlParser.T_TRIM:
+ case HiveSqlParser.T_SUBSTRING:
+ case HiveSqlParser.T_SYSDATE:
+ case HiveSqlParser.T_HIVE:
+ case HiveSqlParser.T_HOST:
+ case HiveSqlParser.T_TRUE:
+ case HiveSqlParser.T_FALSE:
+ case HiveSqlParser.T_DIR:
+ case HiveSqlParser.T_FILE:
+ case HiveSqlParser.T_FILES:
+ case HiveSqlParser.T_NEW:
+ case HiveSqlParser.T_PWD:
+ case HiveSqlParser.T_SESSIONS:
+ case HiveSqlParser.T_SUBDIR:
+ this.state = 1922;
+ this.table_name();
+ break;
+ case HiveSqlParser.T_OPEN_P:
+ this.state = 1923;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 1924;
+ this.select_stmt();
+ this.state = 1925;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 1929;
+ this.match(HiveSqlParser.T_TO);
+ this.state = 1931;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,215,this._ctx);
+ if(la_===1) {
+ this.state = 1930;
+ this.match(HiveSqlParser.T_HDFS);
+
+ }
+ this.state = 1933;
+ this.copy_target();
+ this.state = 1937;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,216,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 1934;
+ this.copy_option();
+ }
+ this.state = 1939;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,216,this._ctx);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Copy_sourceContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_copy_source;
+ return this;
+}
+
+Copy_sourceContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Copy_sourceContext.prototype.constructor = Copy_sourceContext;
+
+Copy_sourceContext.prototype.file_name = function() {
+ return this.getTypedRuleContext(File_nameContext,0);
+};
+
+Copy_sourceContext.prototype.expr = function() {
+ return this.getTypedRuleContext(ExprContext,0);
+};
+
+Copy_sourceContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCopy_source(this);
+ }
+};
+
+Copy_sourceContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCopy_source(this);
+ }
+};
+
+Copy_sourceContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCopy_source(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Copy_sourceContext = Copy_sourceContext;
+
+HiveSqlParser.prototype.copy_source = function() {
+
+ var localctx = new Copy_sourceContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 222, HiveSqlParser.RULE_copy_source);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1942;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,217,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 1940;
+ this.file_name();
+ break;
+
+ case 2:
+ this.state = 1941;
+ this.expr(0);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Copy_targetContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_copy_target;
+ return this;
+}
+
+Copy_targetContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Copy_targetContext.prototype.constructor = Copy_targetContext;
+
+Copy_targetContext.prototype.file_name = function() {
+ return this.getTypedRuleContext(File_nameContext,0);
+};
+
+Copy_targetContext.prototype.expr = function() {
+ return this.getTypedRuleContext(ExprContext,0);
+};
+
+Copy_targetContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCopy_target(this);
+ }
+};
+
+Copy_targetContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCopy_target(this);
+ }
+};
+
+Copy_targetContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCopy_target(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Copy_targetContext = Copy_targetContext;
+
+HiveSqlParser.prototype.copy_target = function() {
+
+ var localctx = new Copy_targetContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 224, HiveSqlParser.RULE_copy_target);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1946;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,218,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 1944;
+ this.file_name();
+ break;
+
+ case 2:
+ this.state = 1945;
+ this.expr(0);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Copy_optionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_copy_option;
+ return this;
+}
+
+Copy_optionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Copy_optionContext.prototype.constructor = Copy_optionContext;
+
+Copy_optionContext.prototype.T_AT = function() {
+ return this.getToken(HiveSqlParser.T_AT, 0);
+};
+
+Copy_optionContext.prototype.ident = function() {
+ return this.getTypedRuleContext(IdentContext,0);
+};
+
+Copy_optionContext.prototype.T_BATCHSIZE = function() {
+ return this.getToken(HiveSqlParser.T_BATCHSIZE, 0);
+};
+
+Copy_optionContext.prototype.expr = function() {
+ return this.getTypedRuleContext(ExprContext,0);
+};
+
+Copy_optionContext.prototype.T_DELIMITER = function() {
+ return this.getToken(HiveSqlParser.T_DELIMITER, 0);
+};
+
+Copy_optionContext.prototype.T_SQLINSERT = function() {
+ return this.getToken(HiveSqlParser.T_SQLINSERT, 0);
+};
+
+Copy_optionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCopy_option(this);
+ }
+};
+
+Copy_optionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCopy_option(this);
+ }
+};
+
+Copy_optionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCopy_option(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Copy_optionContext = Copy_optionContext;
+
+HiveSqlParser.prototype.copy_option = function() {
+
+ var localctx = new Copy_optionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 226, HiveSqlParser.RULE_copy_option);
+ try {
+ this.state = 1956;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case HiveSqlParser.T_AT:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1948;
+ this.match(HiveSqlParser.T_AT);
+ this.state = 1949;
+ this.ident();
+ break;
+ case HiveSqlParser.T_BATCHSIZE:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 1950;
+ this.match(HiveSqlParser.T_BATCHSIZE);
+ this.state = 1951;
+ this.expr(0);
+ break;
+ case HiveSqlParser.T_DELIMITER:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 1952;
+ this.match(HiveSqlParser.T_DELIMITER);
+ this.state = 1953;
+ this.expr(0);
+ break;
+ case HiveSqlParser.T_SQLINSERT:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 1954;
+ this.match(HiveSqlParser.T_SQLINSERT);
+ this.state = 1955;
+ this.ident();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Copy_file_optionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_copy_file_option;
+ return this;
+}
+
+Copy_file_optionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Copy_file_optionContext.prototype.constructor = Copy_file_optionContext;
+
+Copy_file_optionContext.prototype.T_DELETE = function() {
+ return this.getToken(HiveSqlParser.T_DELETE, 0);
+};
+
+Copy_file_optionContext.prototype.T_IGNORE = function() {
+ return this.getToken(HiveSqlParser.T_IGNORE, 0);
+};
+
+Copy_file_optionContext.prototype.T_OVERWRITE = function() {
+ return this.getToken(HiveSqlParser.T_OVERWRITE, 0);
+};
+
+Copy_file_optionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCopy_file_option(this);
+ }
+};
+
+Copy_file_optionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCopy_file_option(this);
+ }
+};
+
+Copy_file_optionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCopy_file_option(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Copy_file_optionContext = Copy_file_optionContext;
+
+HiveSqlParser.prototype.copy_file_option = function() {
+
+ var localctx = new Copy_file_optionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 228, HiveSqlParser.RULE_copy_file_option);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1958;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_DELETE || _la===HiveSqlParser.T_OVERWRITE || _la===HiveSqlParser.T_IGNORE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Commit_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_commit_stmt;
+ return this;
+}
+
+Commit_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Commit_stmtContext.prototype.constructor = Commit_stmtContext;
+
+Commit_stmtContext.prototype.T_COMMIT = function() {
+ return this.getToken(HiveSqlParser.T_COMMIT, 0);
+};
+
+Commit_stmtContext.prototype.T_WORK = function() {
+ return this.getToken(HiveSqlParser.T_WORK, 0);
+};
+
+Commit_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCommit_stmt(this);
+ }
+};
+
+Commit_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCommit_stmt(this);
+ }
+};
+
+Commit_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCommit_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Commit_stmtContext = Commit_stmtContext;
+
+HiveSqlParser.prototype.commit_stmt = function() {
+
+ var localctx = new Commit_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 230, HiveSqlParser.RULE_commit_stmt);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1960;
+ this.match(HiveSqlParser.T_COMMIT);
+ this.state = 1962;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,220,this._ctx);
+ if(la_===1) {
+ this.state = 1961;
+ this.match(HiveSqlParser.T_WORK);
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_index_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_create_index_stmt;
+ return this;
+}
+
+Create_index_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_index_stmtContext.prototype.constructor = Create_index_stmtContext;
+
+Create_index_stmtContext.prototype.T_CREATE = function() {
+ return this.getToken(HiveSqlParser.T_CREATE, 0);
+};
+
+Create_index_stmtContext.prototype.T_INDEX = function() {
+ return this.getToken(HiveSqlParser.T_INDEX, 0);
+};
+
+Create_index_stmtContext.prototype.ident = function() {
+ return this.getTypedRuleContext(IdentContext,0);
+};
+
+Create_index_stmtContext.prototype.T_ON = function() {
+ return this.getToken(HiveSqlParser.T_ON, 0);
+};
+
+Create_index_stmtContext.prototype.table_name = function() {
+ return this.getTypedRuleContext(Table_nameContext,0);
+};
+
+Create_index_stmtContext.prototype.T_OPEN_P = function() {
+ return this.getToken(HiveSqlParser.T_OPEN_P, 0);
+};
+
+Create_index_stmtContext.prototype.create_index_col = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Create_index_colContext);
+ } else {
+ return this.getTypedRuleContext(Create_index_colContext,i);
+ }
+};
+
+Create_index_stmtContext.prototype.T_CLOSE_P = function() {
+ return this.getToken(HiveSqlParser.T_CLOSE_P, 0);
+};
+
+Create_index_stmtContext.prototype.T_UNIQUE = function() {
+ return this.getToken(HiveSqlParser.T_UNIQUE, 0);
+};
+
+Create_index_stmtContext.prototype.T_COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_COMMA);
+ } else {
+ return this.getToken(HiveSqlParser.T_COMMA, i);
+ }
+};
+
+
+Create_index_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCreate_index_stmt(this);
+ }
+};
+
+Create_index_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCreate_index_stmt(this);
+ }
+};
+
+Create_index_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCreate_index_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Create_index_stmtContext = Create_index_stmtContext;
+
+HiveSqlParser.prototype.create_index_stmt = function() {
+
+ var localctx = new Create_index_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 232, HiveSqlParser.RULE_create_index_stmt);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1964;
+ this.match(HiveSqlParser.T_CREATE);
+ this.state = 1966;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_UNIQUE) {
+ this.state = 1965;
+ this.match(HiveSqlParser.T_UNIQUE);
+ }
+
+ this.state = 1968;
+ this.match(HiveSqlParser.T_INDEX);
+ this.state = 1969;
+ this.ident();
+ this.state = 1970;
+ this.match(HiveSqlParser.T_ON);
+ this.state = 1971;
+ this.table_name();
+ this.state = 1972;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 1973;
+ this.create_index_col();
+ this.state = 1978;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===HiveSqlParser.T_COMMA) {
+ this.state = 1974;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 1975;
+ this.create_index_col();
+ this.state = 1980;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 1981;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_index_colContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_create_index_col;
+ return this;
+}
+
+Create_index_colContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_index_colContext.prototype.constructor = Create_index_colContext;
+
+Create_index_colContext.prototype.ident = function() {
+ return this.getTypedRuleContext(IdentContext,0);
+};
+
+Create_index_colContext.prototype.T_ASC = function() {
+ return this.getToken(HiveSqlParser.T_ASC, 0);
+};
+
+Create_index_colContext.prototype.T_DESC = function() {
+ return this.getToken(HiveSqlParser.T_DESC, 0);
+};
+
+Create_index_colContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCreate_index_col(this);
+ }
+};
+
+Create_index_colContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCreate_index_col(this);
+ }
+};
+
+Create_index_colContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCreate_index_col(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Create_index_colContext = Create_index_colContext;
+
+HiveSqlParser.prototype.create_index_col = function() {
+
+ var localctx = new Create_index_colContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 234, HiveSqlParser.RULE_create_index_col);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1983;
+ this.ident();
+ this.state = 1985;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_ASC || _la===HiveSqlParser.T_DESC) {
+ this.state = 1984;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_ASC || _la===HiveSqlParser.T_DESC)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Index_storage_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_index_storage_clause;
+ return this;
+}
+
+Index_storage_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Index_storage_clauseContext.prototype.constructor = Index_storage_clauseContext;
+
+Index_storage_clauseContext.prototype.index_mssql_storage_clause = function() {
+ return this.getTypedRuleContext(Index_mssql_storage_clauseContext,0);
+};
+
+Index_storage_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterIndex_storage_clause(this);
+ }
+};
+
+Index_storage_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitIndex_storage_clause(this);
+ }
+};
+
+Index_storage_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitIndex_storage_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Index_storage_clauseContext = Index_storage_clauseContext;
+
+HiveSqlParser.prototype.index_storage_clause = function() {
+
+ var localctx = new Index_storage_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 236, HiveSqlParser.RULE_index_storage_clause);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1987;
+ this.index_mssql_storage_clause();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Index_mssql_storage_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_index_mssql_storage_clause;
+ return this;
+}
+
+Index_mssql_storage_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Index_mssql_storage_clauseContext.prototype.constructor = Index_mssql_storage_clauseContext;
+
+Index_mssql_storage_clauseContext.prototype.T_WITH = function() {
+ return this.getToken(HiveSqlParser.T_WITH, 0);
+};
+
+Index_mssql_storage_clauseContext.prototype.T_OPEN_P = function() {
+ return this.getToken(HiveSqlParser.T_OPEN_P, 0);
+};
+
+Index_mssql_storage_clauseContext.prototype.ident = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(IdentContext);
+ } else {
+ return this.getTypedRuleContext(IdentContext,i);
+ }
+};
+
+Index_mssql_storage_clauseContext.prototype.T_EQUAL = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_EQUAL);
+ } else {
+ return this.getToken(HiveSqlParser.T_EQUAL, i);
+ }
+};
+
+
+Index_mssql_storage_clauseContext.prototype.T_CLOSE_P = function() {
+ return this.getToken(HiveSqlParser.T_CLOSE_P, 0);
+};
+
+Index_mssql_storage_clauseContext.prototype.T_COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_COMMA);
+ } else {
+ return this.getToken(HiveSqlParser.T_COMMA, i);
+ }
+};
+
+
+Index_mssql_storage_clauseContext.prototype.create_table_options_mssql_item = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Create_table_options_mssql_itemContext);
+ } else {
+ return this.getTypedRuleContext(Create_table_options_mssql_itemContext,i);
+ }
+};
+
+Index_mssql_storage_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterIndex_mssql_storage_clause(this);
+ }
+};
+
+Index_mssql_storage_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitIndex_mssql_storage_clause(this);
+ }
+};
+
+Index_mssql_storage_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitIndex_mssql_storage_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Index_mssql_storage_clauseContext = Index_mssql_storage_clauseContext;
+
+HiveSqlParser.prototype.index_mssql_storage_clause = function() {
+
+ var localctx = new Index_mssql_storage_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 238, HiveSqlParser.RULE_index_mssql_storage_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1989;
+ this.match(HiveSqlParser.T_WITH);
+ this.state = 1990;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 1991;
+ this.ident();
+ this.state = 1992;
+ this.match(HiveSqlParser.T_EQUAL);
+ this.state = 1993;
+ this.ident();
+ this.state = 2001;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===HiveSqlParser.T_COMMA) {
+ this.state = 1994;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 1995;
+ this.ident();
+ this.state = 1996;
+ this.match(HiveSqlParser.T_EQUAL);
+ this.state = 1997;
+ this.ident();
+ this.state = 2003;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 2004;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ this.state = 2008;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,225,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 2005;
+ this.create_table_options_mssql_item();
+ }
+ this.state = 2010;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,225,this._ctx);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Print_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_print_stmt;
+ return this;
+}
+
+Print_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Print_stmtContext.prototype.constructor = Print_stmtContext;
+
+Print_stmtContext.prototype.T_PRINT = function() {
+ return this.getToken(HiveSqlParser.T_PRINT, 0);
+};
+
+Print_stmtContext.prototype.expr = function() {
+ return this.getTypedRuleContext(ExprContext,0);
+};
+
+Print_stmtContext.prototype.T_OPEN_P = function() {
+ return this.getToken(HiveSqlParser.T_OPEN_P, 0);
+};
+
+Print_stmtContext.prototype.T_CLOSE_P = function() {
+ return this.getToken(HiveSqlParser.T_CLOSE_P, 0);
+};
+
+Print_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterPrint_stmt(this);
+ }
+};
+
+Print_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitPrint_stmt(this);
+ }
+};
+
+Print_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitPrint_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Print_stmtContext = Print_stmtContext;
+
+HiveSqlParser.prototype.print_stmt = function() {
+
+ var localctx = new Print_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 240, HiveSqlParser.RULE_print_stmt);
+ try {
+ this.state = 2018;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,226,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2011;
+ this.match(HiveSqlParser.T_PRINT);
+ this.state = 2012;
+ this.expr(0);
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 2013;
+ this.match(HiveSqlParser.T_PRINT);
+ this.state = 2014;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 2015;
+ this.expr(0);
+ this.state = 2016;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Quit_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_quit_stmt;
+ return this;
+}
+
+Quit_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Quit_stmtContext.prototype.constructor = Quit_stmtContext;
+
+Quit_stmtContext.prototype.T_QUIT = function() {
+ return this.getToken(HiveSqlParser.T_QUIT, 0);
+};
+
+Quit_stmtContext.prototype.expr = function() {
+ return this.getTypedRuleContext(ExprContext,0);
+};
+
+Quit_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterQuit_stmt(this);
+ }
+};
+
+Quit_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitQuit_stmt(this);
+ }
+};
+
+Quit_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitQuit_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Quit_stmtContext = Quit_stmtContext;
+
+HiveSqlParser.prototype.quit_stmt = function() {
+
+ var localctx = new Quit_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 242, HiveSqlParser.RULE_quit_stmt);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2021;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T__4) {
+ this.state = 2020;
+ this.match(HiveSqlParser.T__4);
+ }
+
+ this.state = 2023;
+ this.match(HiveSqlParser.T_QUIT);
+ this.state = 2025;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,228,this._ctx);
+ if(la_===1) {
+ this.state = 2024;
+ this.expr(0);
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Raise_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_raise_stmt;
+ return this;
+}
+
+Raise_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Raise_stmtContext.prototype.constructor = Raise_stmtContext;
+
+Raise_stmtContext.prototype.T_RAISE = function() {
+ return this.getToken(HiveSqlParser.T_RAISE, 0);
+};
+
+Raise_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterRaise_stmt(this);
+ }
+};
+
+Raise_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitRaise_stmt(this);
+ }
+};
+
+Raise_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitRaise_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Raise_stmtContext = Raise_stmtContext;
+
+HiveSqlParser.prototype.raise_stmt = function() {
+
+ var localctx = new Raise_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 244, HiveSqlParser.RULE_raise_stmt);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2027;
+ this.match(HiveSqlParser.T_RAISE);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Resignal_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_resignal_stmt;
+ return this;
+}
+
+Resignal_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Resignal_stmtContext.prototype.constructor = Resignal_stmtContext;
+
+Resignal_stmtContext.prototype.T_RESIGNAL = function() {
+ return this.getToken(HiveSqlParser.T_RESIGNAL, 0);
+};
+
+Resignal_stmtContext.prototype.T_SQLSTATE = function() {
+ return this.getToken(HiveSqlParser.T_SQLSTATE, 0);
+};
+
+Resignal_stmtContext.prototype.expr = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ExprContext);
+ } else {
+ return this.getTypedRuleContext(ExprContext,i);
+ }
+};
+
+Resignal_stmtContext.prototype.T_VALUE = function() {
+ return this.getToken(HiveSqlParser.T_VALUE, 0);
+};
+
+Resignal_stmtContext.prototype.T_SET = function() {
+ return this.getToken(HiveSqlParser.T_SET, 0);
+};
+
+Resignal_stmtContext.prototype.T_MESSAGE_TEXT = function() {
+ return this.getToken(HiveSqlParser.T_MESSAGE_TEXT, 0);
+};
+
+Resignal_stmtContext.prototype.T_EQUAL = function() {
+ return this.getToken(HiveSqlParser.T_EQUAL, 0);
+};
+
+Resignal_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterResignal_stmt(this);
+ }
+};
+
+Resignal_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitResignal_stmt(this);
+ }
+};
+
+Resignal_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitResignal_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Resignal_stmtContext = Resignal_stmtContext;
+
+HiveSqlParser.prototype.resignal_stmt = function() {
+
+ var localctx = new Resignal_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 246, HiveSqlParser.RULE_resignal_stmt);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2029;
+ this.match(HiveSqlParser.T_RESIGNAL);
+ this.state = 2041;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,231,this._ctx);
+ if(la_===1) {
+ this.state = 2030;
+ this.match(HiveSqlParser.T_SQLSTATE);
+ this.state = 2032;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,229,this._ctx);
+ if(la_===1) {
+ this.state = 2031;
+ this.match(HiveSqlParser.T_VALUE);
+
+ }
+ this.state = 2034;
+ this.expr(0);
+ this.state = 2039;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,230,this._ctx);
+ if(la_===1) {
+ this.state = 2035;
+ this.match(HiveSqlParser.T_SET);
+ this.state = 2036;
+ this.match(HiveSqlParser.T_MESSAGE_TEXT);
+ this.state = 2037;
+ this.match(HiveSqlParser.T_EQUAL);
+ this.state = 2038;
+ this.expr(0);
+
+ }
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Return_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_return_stmt;
+ return this;
+}
+
+Return_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Return_stmtContext.prototype.constructor = Return_stmtContext;
+
+Return_stmtContext.prototype.T_RETURN = function() {
+ return this.getToken(HiveSqlParser.T_RETURN, 0);
+};
+
+Return_stmtContext.prototype.expr = function() {
+ return this.getTypedRuleContext(ExprContext,0);
+};
+
+Return_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterReturn_stmt(this);
+ }
+};
+
+Return_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitReturn_stmt(this);
+ }
+};
+
+Return_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitReturn_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Return_stmtContext = Return_stmtContext;
+
+HiveSqlParser.prototype.return_stmt = function() {
+
+ var localctx = new Return_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 248, HiveSqlParser.RULE_return_stmt);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2043;
+ this.match(HiveSqlParser.T_RETURN);
+ this.state = 2045;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,232,this._ctx);
+ if(la_===1) {
+ this.state = 2044;
+ this.expr(0);
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Rollback_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_rollback_stmt;
+ return this;
+}
+
+Rollback_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Rollback_stmtContext.prototype.constructor = Rollback_stmtContext;
+
+Rollback_stmtContext.prototype.T_ROLLBACK = function() {
+ return this.getToken(HiveSqlParser.T_ROLLBACK, 0);
+};
+
+Rollback_stmtContext.prototype.T_WORK = function() {
+ return this.getToken(HiveSqlParser.T_WORK, 0);
+};
+
+Rollback_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterRollback_stmt(this);
+ }
+};
+
+Rollback_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitRollback_stmt(this);
+ }
+};
+
+Rollback_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitRollback_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Rollback_stmtContext = Rollback_stmtContext;
+
+HiveSqlParser.prototype.rollback_stmt = function() {
+
+ var localctx = new Rollback_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 250, HiveSqlParser.RULE_rollback_stmt);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2047;
+ this.match(HiveSqlParser.T_ROLLBACK);
+ this.state = 2049;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,233,this._ctx);
+ if(la_===1) {
+ this.state = 2048;
+ this.match(HiveSqlParser.T_WORK);
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Set_session_optionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_set_session_option;
+ return this;
+}
+
+Set_session_optionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Set_session_optionContext.prototype.constructor = Set_session_optionContext;
+
+Set_session_optionContext.prototype.set_current_schema_option = function() {
+ return this.getTypedRuleContext(Set_current_schema_optionContext,0);
+};
+
+Set_session_optionContext.prototype.set_mssql_session_option = function() {
+ return this.getTypedRuleContext(Set_mssql_session_optionContext,0);
+};
+
+Set_session_optionContext.prototype.set_teradata_session_option = function() {
+ return this.getTypedRuleContext(Set_teradata_session_optionContext,0);
+};
+
+Set_session_optionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterSet_session_option(this);
+ }
+};
+
+Set_session_optionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitSet_session_option(this);
+ }
+};
+
+Set_session_optionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitSet_session_option(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Set_session_optionContext = Set_session_optionContext;
+
+HiveSqlParser.prototype.set_session_option = function() {
+
+ var localctx = new Set_session_optionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 252, HiveSqlParser.RULE_set_session_option);
+ try {
+ this.state = 2054;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case HiveSqlParser.T_SCHEMA:
+ case HiveSqlParser.T_CURRENT:
+ case HiveSqlParser.T_CURRENT_SCHEMA:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2051;
+ this.set_current_schema_option();
+ break;
+ case HiveSqlParser.T_ANSI_NULLS:
+ case HiveSqlParser.T_ANSI_PADDING:
+ case HiveSqlParser.T_NOCOUNT:
+ case HiveSqlParser.T_QUOTED_IDENTIFIER:
+ case HiveSqlParser.T_XACT_ABORT:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 2052;
+ this.set_mssql_session_option();
+ break;
+ case HiveSqlParser.T_QUERY_BAND:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 2053;
+ this.set_teradata_session_option();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Set_current_schema_optionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_set_current_schema_option;
+ return this;
+}
+
+Set_current_schema_optionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Set_current_schema_optionContext.prototype.constructor = Set_current_schema_optionContext;
+
+Set_current_schema_optionContext.prototype.expr = function() {
+ return this.getTypedRuleContext(ExprContext,0);
+};
+
+Set_current_schema_optionContext.prototype.T_CURRENT_SCHEMA = function() {
+ return this.getToken(HiveSqlParser.T_CURRENT_SCHEMA, 0);
+};
+
+Set_current_schema_optionContext.prototype.T_EQUAL = function() {
+ return this.getToken(HiveSqlParser.T_EQUAL, 0);
+};
+
+Set_current_schema_optionContext.prototype.T_SCHEMA = function() {
+ return this.getToken(HiveSqlParser.T_SCHEMA, 0);
+};
+
+Set_current_schema_optionContext.prototype.T_CURRENT = function() {
+ return this.getToken(HiveSqlParser.T_CURRENT, 0);
+};
+
+Set_current_schema_optionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterSet_current_schema_option(this);
+ }
+};
+
+Set_current_schema_optionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitSet_current_schema_option(this);
+ }
+};
+
+Set_current_schema_optionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitSet_current_schema_option(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Set_current_schema_optionContext = Set_current_schema_optionContext;
+
+HiveSqlParser.prototype.set_current_schema_option = function() {
+
+ var localctx = new Set_current_schema_optionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 254, HiveSqlParser.RULE_set_current_schema_option);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2061;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case HiveSqlParser.T_SCHEMA:
+ case HiveSqlParser.T_CURRENT:
+ this.state = 2057;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_CURRENT) {
+ this.state = 2056;
+ this.match(HiveSqlParser.T_CURRENT);
+ }
+
+ this.state = 2059;
+ this.match(HiveSqlParser.T_SCHEMA);
+ break;
+ case HiveSqlParser.T_CURRENT_SCHEMA:
+ this.state = 2060;
+ this.match(HiveSqlParser.T_CURRENT_SCHEMA);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 2064;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_EQUAL) {
+ this.state = 2063;
+ this.match(HiveSqlParser.T_EQUAL);
+ }
+
+ this.state = 2066;
+ this.expr(0);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Set_mssql_session_optionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_set_mssql_session_option;
+ return this;
+}
+
+Set_mssql_session_optionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Set_mssql_session_optionContext.prototype.constructor = Set_mssql_session_optionContext;
+
+Set_mssql_session_optionContext.prototype.T_ANSI_NULLS = function() {
+ return this.getToken(HiveSqlParser.T_ANSI_NULLS, 0);
+};
+
+Set_mssql_session_optionContext.prototype.T_ANSI_PADDING = function() {
+ return this.getToken(HiveSqlParser.T_ANSI_PADDING, 0);
+};
+
+Set_mssql_session_optionContext.prototype.T_NOCOUNT = function() {
+ return this.getToken(HiveSqlParser.T_NOCOUNT, 0);
+};
+
+Set_mssql_session_optionContext.prototype.T_QUOTED_IDENTIFIER = function() {
+ return this.getToken(HiveSqlParser.T_QUOTED_IDENTIFIER, 0);
+};
+
+Set_mssql_session_optionContext.prototype.T_XACT_ABORT = function() {
+ return this.getToken(HiveSqlParser.T_XACT_ABORT, 0);
+};
+
+Set_mssql_session_optionContext.prototype.T_ON = function() {
+ return this.getToken(HiveSqlParser.T_ON, 0);
+};
+
+Set_mssql_session_optionContext.prototype.T_OFF = function() {
+ return this.getToken(HiveSqlParser.T_OFF, 0);
+};
+
+Set_mssql_session_optionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterSet_mssql_session_option(this);
+ }
+};
+
+Set_mssql_session_optionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitSet_mssql_session_option(this);
+ }
+};
+
+Set_mssql_session_optionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitSet_mssql_session_option(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Set_mssql_session_optionContext = Set_mssql_session_optionContext;
+
+HiveSqlParser.prototype.set_mssql_session_option = function() {
+
+ var localctx = new Set_mssql_session_optionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 256, HiveSqlParser.RULE_set_mssql_session_option);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2068;
+ _la = this._input.LA(1);
+ if(!(((((_la - 247)) & ~0x1f) == 0 && ((1 << (_la - 247)) & ((1 << (HiveSqlParser.T_ANSI_NULLS - 247)) | (1 << (HiveSqlParser.T_ANSI_PADDING - 247)) | (1 << (HiveSqlParser.T_NOCOUNT - 247)) | (1 << (HiveSqlParser.T_QUOTED_IDENTIFIER - 247)) | (1 << (HiveSqlParser.T_XACT_ABORT - 247)))) !== 0))) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 2069;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_ON || _la===HiveSqlParser.T_OFF)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Set_teradata_session_optionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_set_teradata_session_option;
+ return this;
+}
+
+Set_teradata_session_optionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Set_teradata_session_optionContext.prototype.constructor = Set_teradata_session_optionContext;
+
+Set_teradata_session_optionContext.prototype.T_QUERY_BAND = function() {
+ return this.getToken(HiveSqlParser.T_QUERY_BAND, 0);
+};
+
+Set_teradata_session_optionContext.prototype.T_EQUAL = function() {
+ return this.getToken(HiveSqlParser.T_EQUAL, 0);
+};
+
+Set_teradata_session_optionContext.prototype.T_FOR = function() {
+ return this.getToken(HiveSqlParser.T_FOR, 0);
+};
+
+Set_teradata_session_optionContext.prototype.T_TRANSACTION = function() {
+ return this.getToken(HiveSqlParser.T_TRANSACTION, 0);
+};
+
+Set_teradata_session_optionContext.prototype.T_SESSION = function() {
+ return this.getToken(HiveSqlParser.T_SESSION, 0);
+};
+
+Set_teradata_session_optionContext.prototype.expr = function() {
+ return this.getTypedRuleContext(ExprContext,0);
+};
+
+Set_teradata_session_optionContext.prototype.T_NONE = function() {
+ return this.getToken(HiveSqlParser.T_NONE, 0);
+};
+
+Set_teradata_session_optionContext.prototype.T_UPDATE = function() {
+ return this.getToken(HiveSqlParser.T_UPDATE, 0);
+};
+
+Set_teradata_session_optionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterSet_teradata_session_option(this);
+ }
+};
+
+Set_teradata_session_optionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitSet_teradata_session_option(this);
+ }
+};
+
+Set_teradata_session_optionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitSet_teradata_session_option(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Set_teradata_session_optionContext = Set_teradata_session_optionContext;
+
+HiveSqlParser.prototype.set_teradata_session_option = function() {
+
+ var localctx = new Set_teradata_session_optionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 258, HiveSqlParser.RULE_set_teradata_session_option);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2071;
+ this.match(HiveSqlParser.T_QUERY_BAND);
+ this.state = 2072;
+ this.match(HiveSqlParser.T_EQUAL);
+ this.state = 2075;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,238,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 2073;
+ this.expr(0);
+ break;
+
+ case 2:
+ this.state = 2074;
+ this.match(HiveSqlParser.T_NONE);
+ break;
+
+ }
+ this.state = 2078;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_UPDATE) {
+ this.state = 2077;
+ this.match(HiveSqlParser.T_UPDATE);
+ }
+
+ this.state = 2080;
+ this.match(HiveSqlParser.T_FOR);
+ this.state = 2081;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_TRANSACTION || _la===HiveSqlParser.T_SESSION)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Signal_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_signal_stmt;
+ return this;
+}
+
+Signal_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Signal_stmtContext.prototype.constructor = Signal_stmtContext;
+
+Signal_stmtContext.prototype.T_SIGNAL = function() {
+ return this.getToken(HiveSqlParser.T_SIGNAL, 0);
+};
+
+Signal_stmtContext.prototype.ident = function() {
+ return this.getTypedRuleContext(IdentContext,0);
+};
+
+Signal_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterSignal_stmt(this);
+ }
+};
+
+Signal_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitSignal_stmt(this);
+ }
+};
+
+Signal_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitSignal_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Signal_stmtContext = Signal_stmtContext;
+
+HiveSqlParser.prototype.signal_stmt = function() {
+
+ var localctx = new Signal_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 260, HiveSqlParser.RULE_signal_stmt);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2083;
+ this.match(HiveSqlParser.T_SIGNAL);
+ this.state = 2084;
+ this.ident();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Summary_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_summary_stmt;
+ return this;
+}
+
+Summary_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Summary_stmtContext.prototype.constructor = Summary_stmtContext;
+
+Summary_stmtContext.prototype.T_SUMMARY = function() {
+ return this.getToken(HiveSqlParser.T_SUMMARY, 0);
+};
+
+Summary_stmtContext.prototype.T_FOR = function() {
+ return this.getToken(HiveSqlParser.T_FOR, 0);
+};
+
+Summary_stmtContext.prototype.select_stmt = function() {
+ return this.getTypedRuleContext(Select_stmtContext,0);
+};
+
+Summary_stmtContext.prototype.table_name = function() {
+ return this.getTypedRuleContext(Table_nameContext,0);
+};
+
+Summary_stmtContext.prototype.T_TOP = function() {
+ return this.getToken(HiveSqlParser.T_TOP, 0);
+};
+
+Summary_stmtContext.prototype.expr = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ExprContext);
+ } else {
+ return this.getTypedRuleContext(ExprContext,i);
+ }
+};
+
+Summary_stmtContext.prototype.where_clause = function() {
+ return this.getTypedRuleContext(Where_clauseContext,0);
+};
+
+Summary_stmtContext.prototype.T_LIMIT = function() {
+ return this.getToken(HiveSqlParser.T_LIMIT, 0);
+};
+
+Summary_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterSummary_stmt(this);
+ }
+};
+
+Summary_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitSummary_stmt(this);
+ }
+};
+
+Summary_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitSummary_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Summary_stmtContext = Summary_stmtContext;
+
+HiveSqlParser.prototype.summary_stmt = function() {
+
+ var localctx = new Summary_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 262, HiveSqlParser.RULE_summary_stmt);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2086;
+ this.match(HiveSqlParser.T_SUMMARY);
+ this.state = 2089;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_TOP) {
+ this.state = 2087;
+ this.match(HiveSqlParser.T_TOP);
+ this.state = 2088;
+ this.expr(0);
+ }
+
+ this.state = 2091;
+ this.match(HiveSqlParser.T_FOR);
+ this.state = 2101;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,243,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 2092;
+ this.select_stmt();
+ break;
+
+ case 2:
+ this.state = 2093;
+ this.table_name();
+ this.state = 2095;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,241,this._ctx);
+ if(la_===1) {
+ this.state = 2094;
+ this.where_clause();
+
+ }
+ this.state = 2099;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,242,this._ctx);
+ if(la_===1) {
+ this.state = 2097;
+ this.match(HiveSqlParser.T_LIMIT);
+ this.state = 2098;
+ this.expr(0);
+
+ }
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Truncate_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_truncate_stmt;
+ return this;
+}
+
+Truncate_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Truncate_stmtContext.prototype.constructor = Truncate_stmtContext;
+
+Truncate_stmtContext.prototype.T_TRUNCATE = function() {
+ return this.getToken(HiveSqlParser.T_TRUNCATE, 0);
+};
+
+Truncate_stmtContext.prototype.table_name = function() {
+ return this.getTypedRuleContext(Table_nameContext,0);
+};
+
+Truncate_stmtContext.prototype.T_TABLE = function() {
+ return this.getToken(HiveSqlParser.T_TABLE, 0);
+};
+
+Truncate_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterTruncate_stmt(this);
+ }
+};
+
+Truncate_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitTruncate_stmt(this);
+ }
+};
+
+Truncate_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitTruncate_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Truncate_stmtContext = Truncate_stmtContext;
+
+HiveSqlParser.prototype.truncate_stmt = function() {
+
+ var localctx = new Truncate_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 264, HiveSqlParser.RULE_truncate_stmt);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2103;
+ this.match(HiveSqlParser.T_TRUNCATE);
+ this.state = 2105;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,244,this._ctx);
+ if(la_===1) {
+ this.state = 2104;
+ this.match(HiveSqlParser.T_TABLE);
+
+ }
+ this.state = 2107;
+ this.table_name();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Use_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_use_stmt;
+ return this;
+}
+
+Use_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Use_stmtContext.prototype.constructor = Use_stmtContext;
+
+Use_stmtContext.prototype.T_USE = function() {
+ return this.getToken(HiveSqlParser.T_USE, 0);
+};
+
+Use_stmtContext.prototype.expr = function() {
+ return this.getTypedRuleContext(ExprContext,0);
+};
+
+Use_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterUse_stmt(this);
+ }
+};
+
+Use_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitUse_stmt(this);
+ }
+};
+
+Use_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitUse_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Use_stmtContext = Use_stmtContext;
+
+HiveSqlParser.prototype.use_stmt = function() {
+
+ var localctx = new Use_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 266, HiveSqlParser.RULE_use_stmt);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2109;
+ this.match(HiveSqlParser.T_USE);
+ this.state = 2110;
+ this.expr(0);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Values_into_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_values_into_stmt;
+ return this;
+}
+
+Values_into_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Values_into_stmtContext.prototype.constructor = Values_into_stmtContext;
+
+Values_into_stmtContext.prototype.T_VALUES = function() {
+ return this.getToken(HiveSqlParser.T_VALUES, 0);
+};
+
+Values_into_stmtContext.prototype.expr = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ExprContext);
+ } else {
+ return this.getTypedRuleContext(ExprContext,i);
+ }
+};
+
+Values_into_stmtContext.prototype.T_INTO = function() {
+ return this.getToken(HiveSqlParser.T_INTO, 0);
+};
+
+Values_into_stmtContext.prototype.ident = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(IdentContext);
+ } else {
+ return this.getTypedRuleContext(IdentContext,i);
+ }
+};
+
+Values_into_stmtContext.prototype.T_OPEN_P = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_OPEN_P);
+ } else {
+ return this.getToken(HiveSqlParser.T_OPEN_P, i);
+ }
+};
+
+
+Values_into_stmtContext.prototype.T_COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_COMMA);
+ } else {
+ return this.getToken(HiveSqlParser.T_COMMA, i);
+ }
+};
+
+
+Values_into_stmtContext.prototype.T_CLOSE_P = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_CLOSE_P);
+ } else {
+ return this.getToken(HiveSqlParser.T_CLOSE_P, i);
+ }
+};
+
+
+Values_into_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterValues_into_stmt(this);
+ }
+};
+
+Values_into_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitValues_into_stmt(this);
+ }
+};
+
+Values_into_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitValues_into_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Values_into_stmtContext = Values_into_stmtContext;
+
+HiveSqlParser.prototype.values_into_stmt = function() {
+
+ var localctx = new Values_into_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 268, HiveSqlParser.RULE_values_into_stmt);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2112;
+ this.match(HiveSqlParser.T_VALUES);
+ this.state = 2114;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,245,this._ctx);
+ if(la_===1) {
+ this.state = 2113;
+ this.match(HiveSqlParser.T_OPEN_P);
+
+ }
+ this.state = 2116;
+ this.expr(0);
+ this.state = 2121;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===HiveSqlParser.T_COMMA) {
+ this.state = 2117;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 2118;
+ this.expr(0);
+ this.state = 2123;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 2125;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_CLOSE_P) {
+ this.state = 2124;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ }
+
+ this.state = 2127;
+ this.match(HiveSqlParser.T_INTO);
+ this.state = 2129;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_OPEN_P) {
+ this.state = 2128;
+ this.match(HiveSqlParser.T_OPEN_P);
+ }
+
+ this.state = 2131;
+ this.ident();
+ this.state = 2136;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,249,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 2132;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 2133;
+ this.ident();
+ }
+ this.state = 2138;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,249,this._ctx);
+ }
+
+ this.state = 2140;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,250,this._ctx);
+ if(la_===1) {
+ this.state = 2139;
+ this.match(HiveSqlParser.T_CLOSE_P);
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function While_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_while_stmt;
+ return this;
+}
+
+While_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+While_stmtContext.prototype.constructor = While_stmtContext;
+
+While_stmtContext.prototype.T_WHILE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_WHILE);
+ } else {
+ return this.getToken(HiveSqlParser.T_WHILE, i);
+ }
+};
+
+
+While_stmtContext.prototype.bool_expr = function() {
+ return this.getTypedRuleContext(Bool_exprContext,0);
+};
+
+While_stmtContext.prototype.block = function() {
+ return this.getTypedRuleContext(BlockContext,0);
+};
+
+While_stmtContext.prototype.T_END = function() {
+ return this.getToken(HiveSqlParser.T_END, 0);
+};
+
+While_stmtContext.prototype.T_DO = function() {
+ return this.getToken(HiveSqlParser.T_DO, 0);
+};
+
+While_stmtContext.prototype.T_LOOP = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_LOOP);
+ } else {
+ return this.getToken(HiveSqlParser.T_LOOP, i);
+ }
+};
+
+
+While_stmtContext.prototype.T_THEN = function() {
+ return this.getToken(HiveSqlParser.T_THEN, 0);
+};
+
+While_stmtContext.prototype.T_BEGIN = function() {
+ return this.getToken(HiveSqlParser.T_BEGIN, 0);
+};
+
+While_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterWhile_stmt(this);
+ }
+};
+
+While_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitWhile_stmt(this);
+ }
+};
+
+While_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitWhile_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.While_stmtContext = While_stmtContext;
+
+HiveSqlParser.prototype.while_stmt = function() {
+
+ var localctx = new While_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 270, HiveSqlParser.RULE_while_stmt);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2142;
+ this.match(HiveSqlParser.T_WHILE);
+ this.state = 2143;
+ this.bool_expr(0);
+ this.state = 2144;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_BEGIN || _la===HiveSqlParser.T_THEN || _la===HiveSqlParser.T_DO || _la===HiveSqlParser.T_LOOP)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 2145;
+ this.block();
+ this.state = 2146;
+ this.match(HiveSqlParser.T_END);
+ this.state = 2148;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,251,this._ctx);
+ if(la_===1) {
+ this.state = 2147;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_WHILE || _la===HiveSqlParser.T_LOOP)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function For_cursor_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_for_cursor_stmt;
+ return this;
+}
+
+For_cursor_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+For_cursor_stmtContext.prototype.constructor = For_cursor_stmtContext;
+
+For_cursor_stmtContext.prototype.T_FOR = function() {
+ return this.getToken(HiveSqlParser.T_FOR, 0);
+};
+
+For_cursor_stmtContext.prototype.L_ID = function() {
+ return this.getToken(HiveSqlParser.L_ID, 0);
+};
+
+For_cursor_stmtContext.prototype.T_IN = function() {
+ return this.getToken(HiveSqlParser.T_IN, 0);
+};
+
+For_cursor_stmtContext.prototype.select_stmt = function() {
+ return this.getTypedRuleContext(Select_stmtContext,0);
+};
+
+For_cursor_stmtContext.prototype.T_LOOP = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_LOOP);
+ } else {
+ return this.getToken(HiveSqlParser.T_LOOP, i);
+ }
+};
+
+
+For_cursor_stmtContext.prototype.block = function() {
+ return this.getTypedRuleContext(BlockContext,0);
+};
+
+For_cursor_stmtContext.prototype.T_END = function() {
+ return this.getToken(HiveSqlParser.T_END, 0);
+};
+
+For_cursor_stmtContext.prototype.T_OPEN_P = function() {
+ return this.getToken(HiveSqlParser.T_OPEN_P, 0);
+};
+
+For_cursor_stmtContext.prototype.T_CLOSE_P = function() {
+ return this.getToken(HiveSqlParser.T_CLOSE_P, 0);
+};
+
+For_cursor_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterFor_cursor_stmt(this);
+ }
+};
+
+For_cursor_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitFor_cursor_stmt(this);
+ }
+};
+
+For_cursor_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitFor_cursor_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.For_cursor_stmtContext = For_cursor_stmtContext;
+
+HiveSqlParser.prototype.for_cursor_stmt = function() {
+
+ var localctx = new For_cursor_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 272, HiveSqlParser.RULE_for_cursor_stmt);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2150;
+ this.match(HiveSqlParser.T_FOR);
+ this.state = 2151;
+ this.match(HiveSqlParser.L_ID);
+ this.state = 2152;
+ this.match(HiveSqlParser.T_IN);
+ this.state = 2154;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,252,this._ctx);
+ if(la_===1) {
+ this.state = 2153;
+ this.match(HiveSqlParser.T_OPEN_P);
+
+ }
+ this.state = 2156;
+ this.select_stmt();
+ this.state = 2158;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_CLOSE_P) {
+ this.state = 2157;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ }
+
+ this.state = 2160;
+ this.match(HiveSqlParser.T_LOOP);
+ this.state = 2161;
+ this.block();
+ this.state = 2162;
+ this.match(HiveSqlParser.T_END);
+ this.state = 2163;
+ this.match(HiveSqlParser.T_LOOP);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function For_range_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_for_range_stmt;
+ return this;
+}
+
+For_range_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+For_range_stmtContext.prototype.constructor = For_range_stmtContext;
+
+For_range_stmtContext.prototype.T_FOR = function() {
+ return this.getToken(HiveSqlParser.T_FOR, 0);
+};
+
+For_range_stmtContext.prototype.L_ID = function() {
+ return this.getToken(HiveSqlParser.L_ID, 0);
+};
+
+For_range_stmtContext.prototype.T_IN = function() {
+ return this.getToken(HiveSqlParser.T_IN, 0);
+};
+
+For_range_stmtContext.prototype.expr = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ExprContext);
+ } else {
+ return this.getTypedRuleContext(ExprContext,i);
+ }
+};
+
+For_range_stmtContext.prototype.T_DOT2 = function() {
+ return this.getToken(HiveSqlParser.T_DOT2, 0);
+};
+
+For_range_stmtContext.prototype.T_LOOP = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_LOOP);
+ } else {
+ return this.getToken(HiveSqlParser.T_LOOP, i);
+ }
+};
+
+
+For_range_stmtContext.prototype.block = function() {
+ return this.getTypedRuleContext(BlockContext,0);
+};
+
+For_range_stmtContext.prototype.T_END = function() {
+ return this.getToken(HiveSqlParser.T_END, 0);
+};
+
+For_range_stmtContext.prototype.T_REVERSE = function() {
+ return this.getToken(HiveSqlParser.T_REVERSE, 0);
+};
+
+For_range_stmtContext.prototype.T_BY = function() {
+ return this.getToken(HiveSqlParser.T_BY, 0);
+};
+
+For_range_stmtContext.prototype.T_STEP = function() {
+ return this.getToken(HiveSqlParser.T_STEP, 0);
+};
+
+For_range_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterFor_range_stmt(this);
+ }
+};
+
+For_range_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitFor_range_stmt(this);
+ }
+};
+
+For_range_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitFor_range_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.For_range_stmtContext = For_range_stmtContext;
+
+HiveSqlParser.prototype.for_range_stmt = function() {
+
+ var localctx = new For_range_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 274, HiveSqlParser.RULE_for_range_stmt);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2165;
+ this.match(HiveSqlParser.T_FOR);
+ this.state = 2166;
+ this.match(HiveSqlParser.L_ID);
+ this.state = 2167;
+ this.match(HiveSqlParser.T_IN);
+ this.state = 2169;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,254,this._ctx);
+ if(la_===1) {
+ this.state = 2168;
+ this.match(HiveSqlParser.T_REVERSE);
+
+ }
+ this.state = 2171;
+ this.expr(0);
+ this.state = 2172;
+ this.match(HiveSqlParser.T_DOT2);
+ this.state = 2173;
+ this.expr(0);
+ this.state = 2176;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_BY || _la===HiveSqlParser.T_STEP) {
+ this.state = 2174;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_BY || _la===HiveSqlParser.T_STEP)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 2175;
+ this.expr(0);
+ }
+
+ this.state = 2178;
+ this.match(HiveSqlParser.T_LOOP);
+ this.state = 2179;
+ this.block();
+ this.state = 2180;
+ this.match(HiveSqlParser.T_END);
+ this.state = 2181;
+ this.match(HiveSqlParser.T_LOOP);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function LabelContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_label;
+ return this;
+}
+
+LabelContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+LabelContext.prototype.constructor = LabelContext;
+
+LabelContext.prototype.L_LABEL = function() {
+ return this.getToken(HiveSqlParser.L_LABEL, 0);
+};
+
+LabelContext.prototype.T_LESS = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_LESS);
+ } else {
+ return this.getToken(HiveSqlParser.T_LESS, i);
+ }
+};
+
+
+LabelContext.prototype.L_ID = function() {
+ return this.getToken(HiveSqlParser.L_ID, 0);
+};
+
+LabelContext.prototype.T_GREATER = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_GREATER);
+ } else {
+ return this.getToken(HiveSqlParser.T_GREATER, i);
+ }
+};
+
+
+LabelContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterLabel(this);
+ }
+};
+
+LabelContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitLabel(this);
+ }
+};
+
+LabelContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitLabel(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.LabelContext = LabelContext;
+
+HiveSqlParser.prototype.label = function() {
+
+ var localctx = new LabelContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 276, HiveSqlParser.RULE_label);
+ try {
+ this.state = 2189;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case HiveSqlParser.L_LABEL:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2183;
+ this.match(HiveSqlParser.L_LABEL);
+ break;
+ case HiveSqlParser.T_LESS:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 2184;
+ this.match(HiveSqlParser.T_LESS);
+ this.state = 2185;
+ this.match(HiveSqlParser.T_LESS);
+ this.state = 2186;
+ this.match(HiveSqlParser.L_ID);
+ this.state = 2187;
+ this.match(HiveSqlParser.T_GREATER);
+ this.state = 2188;
+ this.match(HiveSqlParser.T_GREATER);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Using_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_using_clause;
+ return this;
+}
+
+Using_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Using_clauseContext.prototype.constructor = Using_clauseContext;
+
+Using_clauseContext.prototype.T_USING = function() {
+ return this.getToken(HiveSqlParser.T_USING, 0);
+};
+
+Using_clauseContext.prototype.expr = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ExprContext);
+ } else {
+ return this.getTypedRuleContext(ExprContext,i);
+ }
+};
+
+Using_clauseContext.prototype.T_COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_COMMA);
+ } else {
+ return this.getToken(HiveSqlParser.T_COMMA, i);
+ }
+};
+
+
+Using_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterUsing_clause(this);
+ }
+};
+
+Using_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitUsing_clause(this);
+ }
+};
+
+Using_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitUsing_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Using_clauseContext = Using_clauseContext;
+
+HiveSqlParser.prototype.using_clause = function() {
+
+ var localctx = new Using_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 278, HiveSqlParser.RULE_using_clause);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2191;
+ this.match(HiveSqlParser.T_USING);
+ this.state = 2192;
+ this.expr(0);
+ this.state = 2197;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,257,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 2193;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 2194;
+ this.expr(0);
+ }
+ this.state = 2199;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,257,this._ctx);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Select_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_select_stmt;
+ return this;
+}
+
+Select_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Select_stmtContext.prototype.constructor = Select_stmtContext;
+
+Select_stmtContext.prototype.fullselect_stmt = function() {
+ return this.getTypedRuleContext(Fullselect_stmtContext,0);
+};
+
+Select_stmtContext.prototype.cte_select_stmt = function() {
+ return this.getTypedRuleContext(Cte_select_stmtContext,0);
+};
+
+Select_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterSelect_stmt(this);
+ }
+};
+
+Select_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitSelect_stmt(this);
+ }
+};
+
+Select_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitSelect_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Select_stmtContext = Select_stmtContext;
+
+HiveSqlParser.prototype.select_stmt = function() {
+
+ var localctx = new Select_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 280, HiveSqlParser.RULE_select_stmt);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2201;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_WITH) {
+ this.state = 2200;
+ this.cte_select_stmt();
+ }
+
+ this.state = 2203;
+ this.fullselect_stmt();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Cte_select_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_cte_select_stmt;
+ return this;
+}
+
+Cte_select_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Cte_select_stmtContext.prototype.constructor = Cte_select_stmtContext;
+
+Cte_select_stmtContext.prototype.T_WITH = function() {
+ return this.getToken(HiveSqlParser.T_WITH, 0);
+};
+
+Cte_select_stmtContext.prototype.cte_select_stmt_item = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Cte_select_stmt_itemContext);
+ } else {
+ return this.getTypedRuleContext(Cte_select_stmt_itemContext,i);
+ }
+};
+
+Cte_select_stmtContext.prototype.T_COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_COMMA);
+ } else {
+ return this.getToken(HiveSqlParser.T_COMMA, i);
+ }
+};
+
+
+Cte_select_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCte_select_stmt(this);
+ }
+};
+
+Cte_select_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCte_select_stmt(this);
+ }
+};
+
+Cte_select_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCte_select_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Cte_select_stmtContext = Cte_select_stmtContext;
+
+HiveSqlParser.prototype.cte_select_stmt = function() {
+
+ var localctx = new Cte_select_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 282, HiveSqlParser.RULE_cte_select_stmt);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2205;
+ this.match(HiveSqlParser.T_WITH);
+ this.state = 2206;
+ this.cte_select_stmt_item();
+ this.state = 2211;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===HiveSqlParser.T_COMMA) {
+ this.state = 2207;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 2208;
+ this.cte_select_stmt_item();
+ this.state = 2213;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Cte_select_stmt_itemContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_cte_select_stmt_item;
+ return this;
+}
+
+Cte_select_stmt_itemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Cte_select_stmt_itemContext.prototype.constructor = Cte_select_stmt_itemContext;
+
+Cte_select_stmt_itemContext.prototype.ident = function() {
+ return this.getTypedRuleContext(IdentContext,0);
+};
+
+Cte_select_stmt_itemContext.prototype.T_AS = function() {
+ return this.getToken(HiveSqlParser.T_AS, 0);
+};
+
+Cte_select_stmt_itemContext.prototype.T_OPEN_P = function() {
+ return this.getToken(HiveSqlParser.T_OPEN_P, 0);
+};
+
+Cte_select_stmt_itemContext.prototype.fullselect_stmt = function() {
+ return this.getTypedRuleContext(Fullselect_stmtContext,0);
+};
+
+Cte_select_stmt_itemContext.prototype.T_CLOSE_P = function() {
+ return this.getToken(HiveSqlParser.T_CLOSE_P, 0);
+};
+
+Cte_select_stmt_itemContext.prototype.cte_select_cols = function() {
+ return this.getTypedRuleContext(Cte_select_colsContext,0);
+};
+
+Cte_select_stmt_itemContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCte_select_stmt_item(this);
+ }
+};
+
+Cte_select_stmt_itemContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCte_select_stmt_item(this);
+ }
+};
+
+Cte_select_stmt_itemContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCte_select_stmt_item(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Cte_select_stmt_itemContext = Cte_select_stmt_itemContext;
+
+HiveSqlParser.prototype.cte_select_stmt_item = function() {
+
+ var localctx = new Cte_select_stmt_itemContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 284, HiveSqlParser.RULE_cte_select_stmt_item);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2214;
+ this.ident();
+ this.state = 2216;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_OPEN_P) {
+ this.state = 2215;
+ this.cte_select_cols();
+ }
+
+ this.state = 2218;
+ this.match(HiveSqlParser.T_AS);
+ this.state = 2219;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 2220;
+ this.fullselect_stmt();
+ this.state = 2221;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Cte_select_colsContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_cte_select_cols;
+ return this;
+}
+
+Cte_select_colsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Cte_select_colsContext.prototype.constructor = Cte_select_colsContext;
+
+Cte_select_colsContext.prototype.T_OPEN_P = function() {
+ return this.getToken(HiveSqlParser.T_OPEN_P, 0);
+};
+
+Cte_select_colsContext.prototype.ident = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(IdentContext);
+ } else {
+ return this.getTypedRuleContext(IdentContext,i);
+ }
+};
+
+Cte_select_colsContext.prototype.T_CLOSE_P = function() {
+ return this.getToken(HiveSqlParser.T_CLOSE_P, 0);
+};
+
+Cte_select_colsContext.prototype.T_COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_COMMA);
+ } else {
+ return this.getToken(HiveSqlParser.T_COMMA, i);
+ }
+};
+
+
+Cte_select_colsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterCte_select_cols(this);
+ }
+};
+
+Cte_select_colsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitCte_select_cols(this);
+ }
+};
+
+Cte_select_colsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitCte_select_cols(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Cte_select_colsContext = Cte_select_colsContext;
+
+HiveSqlParser.prototype.cte_select_cols = function() {
+
+ var localctx = new Cte_select_colsContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 286, HiveSqlParser.RULE_cte_select_cols);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2223;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 2224;
+ this.ident();
+ this.state = 2229;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===HiveSqlParser.T_COMMA) {
+ this.state = 2225;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 2226;
+ this.ident();
+ this.state = 2231;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 2232;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Fullselect_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_fullselect_stmt;
+ return this;
+}
+
+Fullselect_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Fullselect_stmtContext.prototype.constructor = Fullselect_stmtContext;
+
+Fullselect_stmtContext.prototype.fullselect_stmt_item = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Fullselect_stmt_itemContext);
+ } else {
+ return this.getTypedRuleContext(Fullselect_stmt_itemContext,i);
+ }
+};
+
+Fullselect_stmtContext.prototype.fullselect_set_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Fullselect_set_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Fullselect_set_clauseContext,i);
+ }
+};
+
+Fullselect_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterFullselect_stmt(this);
+ }
+};
+
+Fullselect_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitFullselect_stmt(this);
+ }
+};
+
+Fullselect_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitFullselect_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Fullselect_stmtContext = Fullselect_stmtContext;
+
+HiveSqlParser.prototype.fullselect_stmt = function() {
+
+ var localctx = new Fullselect_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 288, HiveSqlParser.RULE_fullselect_stmt);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2234;
+ this.fullselect_stmt_item();
+ this.state = 2240;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,262,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 2235;
+ this.fullselect_set_clause();
+ this.state = 2236;
+ this.fullselect_stmt_item();
+ }
+ this.state = 2242;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,262,this._ctx);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Fullselect_stmt_itemContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_fullselect_stmt_item;
+ return this;
+}
+
+Fullselect_stmt_itemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Fullselect_stmt_itemContext.prototype.constructor = Fullselect_stmt_itemContext;
+
+Fullselect_stmt_itemContext.prototype.subselect_stmt = function() {
+ return this.getTypedRuleContext(Subselect_stmtContext,0);
+};
+
+Fullselect_stmt_itemContext.prototype.T_OPEN_P = function() {
+ return this.getToken(HiveSqlParser.T_OPEN_P, 0);
+};
+
+Fullselect_stmt_itemContext.prototype.fullselect_stmt = function() {
+ return this.getTypedRuleContext(Fullselect_stmtContext,0);
+};
+
+Fullselect_stmt_itemContext.prototype.T_CLOSE_P = function() {
+ return this.getToken(HiveSqlParser.T_CLOSE_P, 0);
+};
+
+Fullselect_stmt_itemContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterFullselect_stmt_item(this);
+ }
+};
+
+Fullselect_stmt_itemContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitFullselect_stmt_item(this);
+ }
+};
+
+Fullselect_stmt_itemContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitFullselect_stmt_item(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Fullselect_stmt_itemContext = Fullselect_stmt_itemContext;
+
+HiveSqlParser.prototype.fullselect_stmt_item = function() {
+
+ var localctx = new Fullselect_stmt_itemContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 290, HiveSqlParser.RULE_fullselect_stmt_item);
+ try {
+ this.state = 2248;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case HiveSqlParser.T_SELECT:
+ case HiveSqlParser.T_SEL:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2243;
+ this.subselect_stmt();
+ break;
+ case HiveSqlParser.T_OPEN_P:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 2244;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 2245;
+ this.fullselect_stmt();
+ this.state = 2246;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Fullselect_set_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_fullselect_set_clause;
+ return this;
+}
+
+Fullselect_set_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Fullselect_set_clauseContext.prototype.constructor = Fullselect_set_clauseContext;
+
+Fullselect_set_clauseContext.prototype.T_UNION = function() {
+ return this.getToken(HiveSqlParser.T_UNION, 0);
+};
+
+Fullselect_set_clauseContext.prototype.T_ALL = function() {
+ return this.getToken(HiveSqlParser.T_ALL, 0);
+};
+
+Fullselect_set_clauseContext.prototype.T_EXCEPT = function() {
+ return this.getToken(HiveSqlParser.T_EXCEPT, 0);
+};
+
+Fullselect_set_clauseContext.prototype.T_INTERSECT = function() {
+ return this.getToken(HiveSqlParser.T_INTERSECT, 0);
+};
+
+Fullselect_set_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterFullselect_set_clause(this);
+ }
+};
+
+Fullselect_set_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitFullselect_set_clause(this);
+ }
+};
+
+Fullselect_set_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitFullselect_set_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Fullselect_set_clauseContext = Fullselect_set_clauseContext;
+
+HiveSqlParser.prototype.fullselect_set_clause = function() {
+
+ var localctx = new Fullselect_set_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 292, HiveSqlParser.RULE_fullselect_set_clause);
+ var _la = 0; // Token type
+ try {
+ this.state = 2262;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case HiveSqlParser.T_UNION:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2250;
+ this.match(HiveSqlParser.T_UNION);
+ this.state = 2252;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_ALL) {
+ this.state = 2251;
+ this.match(HiveSqlParser.T_ALL);
+ }
+
+ break;
+ case HiveSqlParser.T_EXCEPT:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 2254;
+ this.match(HiveSqlParser.T_EXCEPT);
+ this.state = 2256;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_ALL) {
+ this.state = 2255;
+ this.match(HiveSqlParser.T_ALL);
+ }
+
+ break;
+ case HiveSqlParser.T_INTERSECT:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 2258;
+ this.match(HiveSqlParser.T_INTERSECT);
+ this.state = 2260;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_ALL) {
+ this.state = 2259;
+ this.match(HiveSqlParser.T_ALL);
+ }
+
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Subselect_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_subselect_stmt;
+ return this;
+}
+
+Subselect_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Subselect_stmtContext.prototype.constructor = Subselect_stmtContext;
+
+Subselect_stmtContext.prototype.select_list = function() {
+ return this.getTypedRuleContext(Select_listContext,0);
+};
+
+Subselect_stmtContext.prototype.T_SELECT = function() {
+ return this.getToken(HiveSqlParser.T_SELECT, 0);
+};
+
+Subselect_stmtContext.prototype.T_SEL = function() {
+ return this.getToken(HiveSqlParser.T_SEL, 0);
+};
+
+Subselect_stmtContext.prototype.into_clause = function() {
+ return this.getTypedRuleContext(Into_clauseContext,0);
+};
+
+Subselect_stmtContext.prototype.from_clause = function() {
+ return this.getTypedRuleContext(From_clauseContext,0);
+};
+
+Subselect_stmtContext.prototype.where_clause = function() {
+ return this.getTypedRuleContext(Where_clauseContext,0);
+};
+
+Subselect_stmtContext.prototype.group_by_clause = function() {
+ return this.getTypedRuleContext(Group_by_clauseContext,0);
+};
+
+Subselect_stmtContext.prototype.having_clause = function() {
+ return this.getTypedRuleContext(Having_clauseContext,0);
+};
+
+Subselect_stmtContext.prototype.qualify_clause = function() {
+ return this.getTypedRuleContext(Qualify_clauseContext,0);
+};
+
+Subselect_stmtContext.prototype.order_by_clause = function() {
+ return this.getTypedRuleContext(Order_by_clauseContext,0);
+};
+
+Subselect_stmtContext.prototype.select_options = function() {
+ return this.getTypedRuleContext(Select_optionsContext,0);
+};
+
+Subselect_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterSubselect_stmt(this);
+ }
+};
+
+Subselect_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitSubselect_stmt(this);
+ }
+};
+
+Subselect_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitSubselect_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Subselect_stmtContext = Subselect_stmtContext;
+
+HiveSqlParser.prototype.subselect_stmt = function() {
+
+ var localctx = new Subselect_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 294, HiveSqlParser.RULE_subselect_stmt);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2264;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_SELECT || _la===HiveSqlParser.T_SEL)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 2265;
+ this.select_list();
+ this.state = 2267;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,268,this._ctx);
+ if(la_===1) {
+ this.state = 2266;
+ this.into_clause();
+
+ }
+ this.state = 2270;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,269,this._ctx);
+ if(la_===1) {
+ this.state = 2269;
+ this.from_clause();
+
+ }
+ this.state = 2273;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,270,this._ctx);
+ if(la_===1) {
+ this.state = 2272;
+ this.where_clause();
+
+ }
+ this.state = 2276;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,271,this._ctx);
+ if(la_===1) {
+ this.state = 2275;
+ this.group_by_clause();
+
+ }
+ this.state = 2280;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,272,this._ctx);
+ if(la_===1) {
+ this.state = 2278;
+ this.having_clause();
+
+ } else if(la_===2) {
+ this.state = 2279;
+ this.qualify_clause();
+
+ }
+ this.state = 2283;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,273,this._ctx);
+ if(la_===1) {
+ this.state = 2282;
+ this.order_by_clause();
+
+ }
+ this.state = 2286;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,274,this._ctx);
+ if(la_===1) {
+ this.state = 2285;
+ this.select_options();
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Select_listContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_select_list;
+ return this;
+}
+
+Select_listContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Select_listContext.prototype.constructor = Select_listContext;
+
+Select_listContext.prototype.select_list_item = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Select_list_itemContext);
+ } else {
+ return this.getTypedRuleContext(Select_list_itemContext,i);
+ }
+};
+
+Select_listContext.prototype.select_list_set = function() {
+ return this.getTypedRuleContext(Select_list_setContext,0);
+};
+
+Select_listContext.prototype.select_list_limit = function() {
+ return this.getTypedRuleContext(Select_list_limitContext,0);
+};
+
+Select_listContext.prototype.T_COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_COMMA);
+ } else {
+ return this.getToken(HiveSqlParser.T_COMMA, i);
+ }
+};
+
+
+Select_listContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterSelect_list(this);
+ }
+};
+
+Select_listContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitSelect_list(this);
+ }
+};
+
+Select_listContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitSelect_list(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Select_listContext = Select_listContext;
+
+HiveSqlParser.prototype.select_list = function() {
+
+ var localctx = new Select_listContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 296, HiveSqlParser.RULE_select_list);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2289;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,275,this._ctx);
+ if(la_===1) {
+ this.state = 2288;
+ this.select_list_set();
+
+ }
+ this.state = 2292;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,276,this._ctx);
+ if(la_===1) {
+ this.state = 2291;
+ this.select_list_limit();
+
+ }
+ this.state = 2294;
+ this.select_list_item();
+ this.state = 2299;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,277,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 2295;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 2296;
+ this.select_list_item();
+ }
+ this.state = 2301;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,277,this._ctx);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Select_list_setContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_select_list_set;
+ return this;
+}
+
+Select_list_setContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Select_list_setContext.prototype.constructor = Select_list_setContext;
+
+Select_list_setContext.prototype.T_ALL = function() {
+ return this.getToken(HiveSqlParser.T_ALL, 0);
+};
+
+Select_list_setContext.prototype.T_DISTINCT = function() {
+ return this.getToken(HiveSqlParser.T_DISTINCT, 0);
+};
+
+Select_list_setContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterSelect_list_set(this);
+ }
+};
+
+Select_list_setContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitSelect_list_set(this);
+ }
+};
+
+Select_list_setContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitSelect_list_set(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Select_list_setContext = Select_list_setContext;
+
+HiveSqlParser.prototype.select_list_set = function() {
+
+ var localctx = new Select_list_setContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 298, HiveSqlParser.RULE_select_list_set);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2302;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_ALL || _la===HiveSqlParser.T_DISTINCT)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Select_list_limitContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_select_list_limit;
+ return this;
+}
+
+Select_list_limitContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Select_list_limitContext.prototype.constructor = Select_list_limitContext;
+
+Select_list_limitContext.prototype.T_TOP = function() {
+ return this.getToken(HiveSqlParser.T_TOP, 0);
+};
+
+Select_list_limitContext.prototype.expr = function() {
+ return this.getTypedRuleContext(ExprContext,0);
+};
+
+Select_list_limitContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterSelect_list_limit(this);
+ }
+};
+
+Select_list_limitContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitSelect_list_limit(this);
+ }
+};
+
+Select_list_limitContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitSelect_list_limit(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Select_list_limitContext = Select_list_limitContext;
+
+HiveSqlParser.prototype.select_list_limit = function() {
+
+ var localctx = new Select_list_limitContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 300, HiveSqlParser.RULE_select_list_limit);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2304;
+ this.match(HiveSqlParser.T_TOP);
+ this.state = 2305;
+ this.expr(0);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Select_list_itemContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_select_list_item;
+ return this;
+}
+
+Select_list_itemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Select_list_itemContext.prototype.constructor = Select_list_itemContext;
+
+Select_list_itemContext.prototype.expr = function() {
+ return this.getTypedRuleContext(ExprContext,0);
+};
+
+Select_list_itemContext.prototype.select_list_asterisk = function() {
+ return this.getTypedRuleContext(Select_list_asteriskContext,0);
+};
+
+Select_list_itemContext.prototype.ident = function() {
+ return this.getTypedRuleContext(IdentContext,0);
+};
+
+Select_list_itemContext.prototype.T_EQUAL = function() {
+ return this.getToken(HiveSqlParser.T_EQUAL, 0);
+};
+
+Select_list_itemContext.prototype.select_list_alias = function() {
+ return this.getTypedRuleContext(Select_list_aliasContext,0);
+};
+
+Select_list_itemContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterSelect_list_item(this);
+ }
+};
+
+Select_list_itemContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitSelect_list_item(this);
+ }
+};
+
+Select_list_itemContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitSelect_list_item(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Select_list_itemContext = Select_list_itemContext;
+
+HiveSqlParser.prototype.select_list_item = function() {
+
+ var localctx = new Select_list_itemContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 302, HiveSqlParser.RULE_select_list_item);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2317;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,280,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 2310;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,278,this._ctx);
+ if(la_===1) {
+ this.state = 2307;
+ this.ident();
+ this.state = 2308;
+ this.match(HiveSqlParser.T_EQUAL);
+
+ }
+ this.state = 2312;
+ this.expr(0);
+ this.state = 2314;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,279,this._ctx);
+ if(la_===1) {
+ this.state = 2313;
+ this.select_list_alias();
+
+ }
+ break;
+
+ case 2:
+ this.state = 2316;
+ this.select_list_asterisk();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Select_list_aliasContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_select_list_alias;
+ return this;
+}
+
+Select_list_aliasContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Select_list_aliasContext.prototype.constructor = Select_list_aliasContext;
+
+Select_list_aliasContext.prototype.ident = function() {
+ return this.getTypedRuleContext(IdentContext,0);
+};
+
+Select_list_aliasContext.prototype.T_AS = function() {
+ return this.getToken(HiveSqlParser.T_AS, 0);
+};
+
+Select_list_aliasContext.prototype.T_OPEN_P = function() {
+ return this.getToken(HiveSqlParser.T_OPEN_P, 0);
+};
+
+Select_list_aliasContext.prototype.T_TITLE = function() {
+ return this.getToken(HiveSqlParser.T_TITLE, 0);
+};
+
+Select_list_aliasContext.prototype.L_S_STRING = function() {
+ return this.getToken(HiveSqlParser.L_S_STRING, 0);
+};
+
+Select_list_aliasContext.prototype.T_CLOSE_P = function() {
+ return this.getToken(HiveSqlParser.T_CLOSE_P, 0);
+};
+
+Select_list_aliasContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterSelect_list_alias(this);
+ }
+};
+
+Select_list_aliasContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitSelect_list_alias(this);
+ }
+};
+
+Select_list_aliasContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitSelect_list_alias(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Select_list_aliasContext = Select_list_aliasContext;
+
+HiveSqlParser.prototype.select_list_alias = function() {
+
+ var localctx = new Select_list_aliasContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 304, HiveSqlParser.RULE_select_list_alias);
+ try {
+ this.state = 2328;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,282,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2319;
+ if (!( !this._input.LT(1).getText().equalsIgnoreCase("INTO") && !this._input.LT(1).getText().equalsIgnoreCase("FROM"))) {
+ throw new antlr4.error.FailedPredicateException(this, "!this._input.LT(1).getText().equalsIgnoreCase(\"INTO\") && !this._input.LT(1).getText().equalsIgnoreCase(\"FROM\")");
+ }
+ this.state = 2321;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,281,this._ctx);
+ if(la_===1) {
+ this.state = 2320;
+ this.match(HiveSqlParser.T_AS);
+
+ }
+ this.state = 2323;
+ this.ident();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 2324;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 2325;
+ this.match(HiveSqlParser.T_TITLE);
+ this.state = 2326;
+ this.match(HiveSqlParser.L_S_STRING);
+ this.state = 2327;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Select_list_asteriskContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_select_list_asterisk;
+ return this;
+}
+
+Select_list_asteriskContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Select_list_asteriskContext.prototype.constructor = Select_list_asteriskContext;
+
+Select_list_asteriskContext.prototype.L_ID = function() {
+ return this.getToken(HiveSqlParser.L_ID, 0);
+};
+
+Select_list_asteriskContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterSelect_list_asterisk(this);
+ }
+};
+
+Select_list_asteriskContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitSelect_list_asterisk(this);
+ }
+};
+
+Select_list_asteriskContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitSelect_list_asterisk(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Select_list_asteriskContext = Select_list_asteriskContext;
+
+HiveSqlParser.prototype.select_list_asterisk = function() {
+
+ var localctx = new Select_list_asteriskContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 306, HiveSqlParser.RULE_select_list_asterisk);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2332;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.L_ID) {
+ this.state = 2330;
+ this.match(HiveSqlParser.L_ID);
+ this.state = 2331;
+ this.match(HiveSqlParser.T__4);
+ }
+
+ this.state = 2334;
+ this.match(HiveSqlParser.T__5);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Into_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_into_clause;
+ return this;
+}
+
+Into_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Into_clauseContext.prototype.constructor = Into_clauseContext;
+
+Into_clauseContext.prototype.T_INTO = function() {
+ return this.getToken(HiveSqlParser.T_INTO, 0);
+};
+
+Into_clauseContext.prototype.ident = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(IdentContext);
+ } else {
+ return this.getTypedRuleContext(IdentContext,i);
+ }
+};
+
+Into_clauseContext.prototype.T_COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_COMMA);
+ } else {
+ return this.getToken(HiveSqlParser.T_COMMA, i);
+ }
+};
+
+
+Into_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterInto_clause(this);
+ }
+};
+
+Into_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitInto_clause(this);
+ }
+};
+
+Into_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitInto_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Into_clauseContext = Into_clauseContext;
+
+HiveSqlParser.prototype.into_clause = function() {
+
+ var localctx = new Into_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 308, HiveSqlParser.RULE_into_clause);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2336;
+ this.match(HiveSqlParser.T_INTO);
+ this.state = 2337;
+ this.ident();
+ this.state = 2342;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,284,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 2338;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 2339;
+ this.ident();
+ }
+ this.state = 2344;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,284,this._ctx);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function From_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_from_clause;
+ return this;
+}
+
+From_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+From_clauseContext.prototype.constructor = From_clauseContext;
+
+From_clauseContext.prototype.T_FROM = function() {
+ return this.getToken(HiveSqlParser.T_FROM, 0);
+};
+
+From_clauseContext.prototype.from_table_clause = function() {
+ return this.getTypedRuleContext(From_table_clauseContext,0);
+};
+
+From_clauseContext.prototype.from_join_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(From_join_clauseContext);
+ } else {
+ return this.getTypedRuleContext(From_join_clauseContext,i);
+ }
+};
+
+From_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterFrom_clause(this);
+ }
+};
+
+From_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitFrom_clause(this);
+ }
+};
+
+From_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitFrom_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.From_clauseContext = From_clauseContext;
+
+HiveSqlParser.prototype.from_clause = function() {
+
+ var localctx = new From_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 310, HiveSqlParser.RULE_from_clause);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2345;
+ this.match(HiveSqlParser.T_FROM);
+ this.state = 2346;
+ this.from_table_clause();
+ this.state = 2350;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,285,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 2347;
+ this.from_join_clause();
+ }
+ this.state = 2352;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,285,this._ctx);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function From_table_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_from_table_clause;
+ return this;
+}
+
+From_table_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+From_table_clauseContext.prototype.constructor = From_table_clauseContext;
+
+From_table_clauseContext.prototype.from_table_name_clause = function() {
+ return this.getTypedRuleContext(From_table_name_clauseContext,0);
+};
+
+From_table_clauseContext.prototype.from_subselect_clause = function() {
+ return this.getTypedRuleContext(From_subselect_clauseContext,0);
+};
+
+From_table_clauseContext.prototype.from_table_values_clause = function() {
+ return this.getTypedRuleContext(From_table_values_clauseContext,0);
+};
+
+From_table_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterFrom_table_clause(this);
+ }
+};
+
+From_table_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitFrom_table_clause(this);
+ }
+};
+
+From_table_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitFrom_table_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.From_table_clauseContext = From_table_clauseContext;
+
+HiveSqlParser.prototype.from_table_clause = function() {
+
+ var localctx = new From_table_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 312, HiveSqlParser.RULE_from_table_clause);
+ try {
+ this.state = 2356;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,286,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2353;
+ this.from_table_name_clause();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 2354;
+ this.from_subselect_clause();
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 2355;
+ this.from_table_values_clause();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function From_table_name_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_from_table_name_clause;
+ return this;
+}
+
+From_table_name_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+From_table_name_clauseContext.prototype.constructor = From_table_name_clauseContext;
+
+From_table_name_clauseContext.prototype.table_name = function() {
+ return this.getTypedRuleContext(Table_nameContext,0);
+};
+
+From_table_name_clauseContext.prototype.from_alias_clause = function() {
+ return this.getTypedRuleContext(From_alias_clauseContext,0);
+};
+
+From_table_name_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterFrom_table_name_clause(this);
+ }
+};
+
+From_table_name_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitFrom_table_name_clause(this);
+ }
+};
+
+From_table_name_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitFrom_table_name_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.From_table_name_clauseContext = From_table_name_clauseContext;
+
+HiveSqlParser.prototype.from_table_name_clause = function() {
+
+ var localctx = new From_table_name_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 314, HiveSqlParser.RULE_from_table_name_clause);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2358;
+ this.table_name();
+ this.state = 2360;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,287,this._ctx);
+ if(la_===1) {
+ this.state = 2359;
+ this.from_alias_clause();
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function From_subselect_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_from_subselect_clause;
+ return this;
+}
+
+From_subselect_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+From_subselect_clauseContext.prototype.constructor = From_subselect_clauseContext;
+
+From_subselect_clauseContext.prototype.T_OPEN_P = function() {
+ return this.getToken(HiveSqlParser.T_OPEN_P, 0);
+};
+
+From_subselect_clauseContext.prototype.select_stmt = function() {
+ return this.getTypedRuleContext(Select_stmtContext,0);
+};
+
+From_subselect_clauseContext.prototype.T_CLOSE_P = function() {
+ return this.getToken(HiveSqlParser.T_CLOSE_P, 0);
+};
+
+From_subselect_clauseContext.prototype.from_alias_clause = function() {
+ return this.getTypedRuleContext(From_alias_clauseContext,0);
+};
+
+From_subselect_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterFrom_subselect_clause(this);
+ }
+};
+
+From_subselect_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitFrom_subselect_clause(this);
+ }
+};
+
+From_subselect_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitFrom_subselect_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.From_subselect_clauseContext = From_subselect_clauseContext;
+
+HiveSqlParser.prototype.from_subselect_clause = function() {
+
+ var localctx = new From_subselect_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 316, HiveSqlParser.RULE_from_subselect_clause);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2362;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 2363;
+ this.select_stmt();
+ this.state = 2364;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ this.state = 2366;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,288,this._ctx);
+ if(la_===1) {
+ this.state = 2365;
+ this.from_alias_clause();
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function From_join_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_from_join_clause;
+ return this;
+}
+
+From_join_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+From_join_clauseContext.prototype.constructor = From_join_clauseContext;
+
+From_join_clauseContext.prototype.T_COMMA = function() {
+ return this.getToken(HiveSqlParser.T_COMMA, 0);
+};
+
+From_join_clauseContext.prototype.from_table_clause = function() {
+ return this.getTypedRuleContext(From_table_clauseContext,0);
+};
+
+From_join_clauseContext.prototype.from_join_type_clause = function() {
+ return this.getTypedRuleContext(From_join_type_clauseContext,0);
+};
+
+From_join_clauseContext.prototype.T_ON = function() {
+ return this.getToken(HiveSqlParser.T_ON, 0);
+};
+
+From_join_clauseContext.prototype.bool_expr = function() {
+ return this.getTypedRuleContext(Bool_exprContext,0);
+};
+
+From_join_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterFrom_join_clause(this);
+ }
+};
+
+From_join_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitFrom_join_clause(this);
+ }
+};
+
+From_join_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitFrom_join_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.From_join_clauseContext = From_join_clauseContext;
+
+HiveSqlParser.prototype.from_join_clause = function() {
+
+ var localctx = new From_join_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 318, HiveSqlParser.RULE_from_join_clause);
+ try {
+ this.state = 2375;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case HiveSqlParser.T_COMMA:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2368;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 2369;
+ this.from_table_clause();
+ break;
+ case HiveSqlParser.T_INNER:
+ case HiveSqlParser.T_JOIN:
+ case HiveSqlParser.T_LEFT:
+ case HiveSqlParser.T_RIGHT:
+ case HiveSqlParser.T_FULL:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 2370;
+ this.from_join_type_clause();
+ this.state = 2371;
+ this.from_table_clause();
+ this.state = 2372;
+ this.match(HiveSqlParser.T_ON);
+ this.state = 2373;
+ this.bool_expr(0);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function From_join_type_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_from_join_type_clause;
+ return this;
+}
+
+From_join_type_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+From_join_type_clauseContext.prototype.constructor = From_join_type_clauseContext;
+
+From_join_type_clauseContext.prototype.T_JOIN = function() {
+ return this.getToken(HiveSqlParser.T_JOIN, 0);
+};
+
+From_join_type_clauseContext.prototype.T_INNER = function() {
+ return this.getToken(HiveSqlParser.T_INNER, 0);
+};
+
+From_join_type_clauseContext.prototype.T_LEFT = function() {
+ return this.getToken(HiveSqlParser.T_LEFT, 0);
+};
+
+From_join_type_clauseContext.prototype.T_RIGHT = function() {
+ return this.getToken(HiveSqlParser.T_RIGHT, 0);
+};
+
+From_join_type_clauseContext.prototype.T_FULL = function() {
+ return this.getToken(HiveSqlParser.T_FULL, 0);
+};
+
+From_join_type_clauseContext.prototype.T_OUTER = function() {
+ return this.getToken(HiveSqlParser.T_OUTER, 0);
+};
+
+From_join_type_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterFrom_join_type_clause(this);
+ }
+};
+
+From_join_type_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitFrom_join_type_clause(this);
+ }
+};
+
+From_join_type_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitFrom_join_type_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.From_join_type_clauseContext = From_join_type_clauseContext;
+
+HiveSqlParser.prototype.from_join_type_clause = function() {
+
+ var localctx = new From_join_type_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 320, HiveSqlParser.RULE_from_join_type_clause);
+ var _la = 0; // Token type
+ try {
+ this.state = 2386;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case HiveSqlParser.T_INNER:
+ case HiveSqlParser.T_JOIN:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2378;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_INNER) {
+ this.state = 2377;
+ this.match(HiveSqlParser.T_INNER);
+ }
+
+ this.state = 2380;
+ this.match(HiveSqlParser.T_JOIN);
+ break;
+ case HiveSqlParser.T_LEFT:
+ case HiveSqlParser.T_RIGHT:
+ case HiveSqlParser.T_FULL:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 2381;
+ _la = this._input.LA(1);
+ if(!(((((_la - 283)) & ~0x1f) == 0 && ((1 << (_la - 283)) & ((1 << (HiveSqlParser.T_LEFT - 283)) | (1 << (HiveSqlParser.T_RIGHT - 283)) | (1 << (HiveSqlParser.T_FULL - 283)))) !== 0))) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 2383;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_OUTER) {
+ this.state = 2382;
+ this.match(HiveSqlParser.T_OUTER);
+ }
+
+ this.state = 2385;
+ this.match(HiveSqlParser.T_JOIN);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function From_table_values_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_from_table_values_clause;
+ return this;
+}
+
+From_table_values_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+From_table_values_clauseContext.prototype.constructor = From_table_values_clauseContext;
+
+From_table_values_clauseContext.prototype.T_TABLE = function() {
+ return this.getToken(HiveSqlParser.T_TABLE, 0);
+};
+
+From_table_values_clauseContext.prototype.T_OPEN_P = function() {
+ return this.getToken(HiveSqlParser.T_OPEN_P, 0);
+};
+
+From_table_values_clauseContext.prototype.T_VALUES = function() {
+ return this.getToken(HiveSqlParser.T_VALUES, 0);
+};
+
+From_table_values_clauseContext.prototype.from_table_values_row = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(From_table_values_rowContext);
+ } else {
+ return this.getTypedRuleContext(From_table_values_rowContext,i);
+ }
+};
+
+From_table_values_clauseContext.prototype.T_CLOSE_P = function() {
+ return this.getToken(HiveSqlParser.T_CLOSE_P, 0);
+};
+
+From_table_values_clauseContext.prototype.T_COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_COMMA);
+ } else {
+ return this.getToken(HiveSqlParser.T_COMMA, i);
+ }
+};
+
+
+From_table_values_clauseContext.prototype.from_alias_clause = function() {
+ return this.getTypedRuleContext(From_alias_clauseContext,0);
+};
+
+From_table_values_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterFrom_table_values_clause(this);
+ }
+};
+
+From_table_values_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitFrom_table_values_clause(this);
+ }
+};
+
+From_table_values_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitFrom_table_values_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.From_table_values_clauseContext = From_table_values_clauseContext;
+
+HiveSqlParser.prototype.from_table_values_clause = function() {
+
+ var localctx = new From_table_values_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 322, HiveSqlParser.RULE_from_table_values_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2388;
+ this.match(HiveSqlParser.T_TABLE);
+ this.state = 2389;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 2390;
+ this.match(HiveSqlParser.T_VALUES);
+ this.state = 2391;
+ this.from_table_values_row();
+ this.state = 2396;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===HiveSqlParser.T_COMMA) {
+ this.state = 2392;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 2393;
+ this.from_table_values_row();
+ this.state = 2398;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 2399;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ this.state = 2401;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,294,this._ctx);
+ if(la_===1) {
+ this.state = 2400;
+ this.from_alias_clause();
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function From_table_values_rowContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_from_table_values_row;
+ return this;
+}
+
+From_table_values_rowContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+From_table_values_rowContext.prototype.constructor = From_table_values_rowContext;
+
+From_table_values_rowContext.prototype.expr = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ExprContext);
+ } else {
+ return this.getTypedRuleContext(ExprContext,i);
+ }
+};
+
+From_table_values_rowContext.prototype.T_OPEN_P = function() {
+ return this.getToken(HiveSqlParser.T_OPEN_P, 0);
+};
+
+From_table_values_rowContext.prototype.T_CLOSE_P = function() {
+ return this.getToken(HiveSqlParser.T_CLOSE_P, 0);
+};
+
+From_table_values_rowContext.prototype.T_COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_COMMA);
+ } else {
+ return this.getToken(HiveSqlParser.T_COMMA, i);
+ }
+};
+
+
+From_table_values_rowContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterFrom_table_values_row(this);
+ }
+};
+
+From_table_values_rowContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitFrom_table_values_row(this);
+ }
+};
+
+From_table_values_rowContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitFrom_table_values_row(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.From_table_values_rowContext = From_table_values_rowContext;
+
+HiveSqlParser.prototype.from_table_values_row = function() {
+
+ var localctx = new From_table_values_rowContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 324, HiveSqlParser.RULE_from_table_values_row);
+ var _la = 0; // Token type
+ try {
+ this.state = 2415;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,296,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2403;
+ this.expr(0);
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 2404;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 2405;
+ this.expr(0);
+ this.state = 2410;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===HiveSqlParser.T_COMMA) {
+ this.state = 2406;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 2407;
+ this.expr(0);
+ this.state = 2412;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 2413;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function From_alias_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_from_alias_clause;
+ return this;
+}
+
+From_alias_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+From_alias_clauseContext.prototype.constructor = From_alias_clauseContext;
+
+From_alias_clauseContext.prototype.ident = function() {
+ return this.getTypedRuleContext(IdentContext,0);
+};
+
+From_alias_clauseContext.prototype.T_AS = function() {
+ return this.getToken(HiveSqlParser.T_AS, 0);
+};
+
+From_alias_clauseContext.prototype.T_OPEN_P = function() {
+ return this.getToken(HiveSqlParser.T_OPEN_P, 0);
+};
+
+From_alias_clauseContext.prototype.L_ID = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.L_ID);
+ } else {
+ return this.getToken(HiveSqlParser.L_ID, i);
+ }
+};
+
+
+From_alias_clauseContext.prototype.T_CLOSE_P = function() {
+ return this.getToken(HiveSqlParser.T_CLOSE_P, 0);
+};
+
+From_alias_clauseContext.prototype.T_COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_COMMA);
+ } else {
+ return this.getToken(HiveSqlParser.T_COMMA, i);
+ }
+};
+
+
+From_alias_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterFrom_alias_clause(this);
+ }
+};
+
+From_alias_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitFrom_alias_clause(this);
+ }
+};
+
+From_alias_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitFrom_alias_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.From_alias_clauseContext = From_alias_clauseContext;
+
+HiveSqlParser.prototype.from_alias_clause = function() {
+
+ var localctx = new From_alias_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 326, HiveSqlParser.RULE_from_alias_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2417;
+ if (!( !this._input.LT(1).getText().equalsIgnoreCase("EXEC") &&
+ !this._input.LT(1).getText().equalsIgnoreCase("EXECUTE") &&
+ !this._input.LT(1).getText().equalsIgnoreCase("INNER") &&
+ !this._input.LT(1).getText().equalsIgnoreCase("LEFT") &&
+ !this._input.LT(1).getText().equalsIgnoreCase("GROUP") &&
+ !this._input.LT(1).getText().equalsIgnoreCase("ORDER") &&
+ !this._input.LT(1).getText().equalsIgnoreCase("LIMIT") &&
+ !this._input.LT(1).getText().equalsIgnoreCase("WITH"))) {
+ throw new antlr4.error.FailedPredicateException(this, "!this._input.LT(1).getText().equalsIgnoreCase(\"EXEC\") &&\n !this._input.LT(1).getText().equalsIgnoreCase(\"EXECUTE\") && \n !this._input.LT(1).getText().equalsIgnoreCase(\"INNER\") &&\n !this._input.LT(1).getText().equalsIgnoreCase(\"LEFT\") &&\n !this._input.LT(1).getText().equalsIgnoreCase(\"GROUP\") &&\n !this._input.LT(1).getText().equalsIgnoreCase(\"ORDER\") &&\n !this._input.LT(1).getText().equalsIgnoreCase(\"LIMIT\") &&\n !this._input.LT(1).getText().equalsIgnoreCase(\"WITH\")");
+ }
+ this.state = 2419;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,297,this._ctx);
+ if(la_===1) {
+ this.state = 2418;
+ this.match(HiveSqlParser.T_AS);
+
+ }
+ this.state = 2421;
+ this.ident();
+ this.state = 2432;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,299,this._ctx);
+ if(la_===1) {
+ this.state = 2422;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 2423;
+ this.match(HiveSqlParser.L_ID);
+ this.state = 2428;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===HiveSqlParser.T_COMMA) {
+ this.state = 2424;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 2425;
+ this.match(HiveSqlParser.L_ID);
+ this.state = 2430;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 2431;
+ this.match(HiveSqlParser.T_CLOSE_P);
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Table_nameContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_table_name;
+ return this;
+}
+
+Table_nameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Table_nameContext.prototype.constructor = Table_nameContext;
+
+Table_nameContext.prototype.ident = function() {
+ return this.getTypedRuleContext(IdentContext,0);
+};
+
+Table_nameContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterTable_name(this);
+ }
+};
+
+Table_nameContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitTable_name(this);
+ }
+};
+
+Table_nameContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitTable_name(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Table_nameContext = Table_nameContext;
+
+HiveSqlParser.prototype.table_name = function() {
+
+ var localctx = new Table_nameContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 328, HiveSqlParser.RULE_table_name);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2434;
+ this.ident();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Where_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_where_clause;
+ return this;
+}
+
+Where_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Where_clauseContext.prototype.constructor = Where_clauseContext;
+
+Where_clauseContext.prototype.T_WHERE = function() {
+ return this.getToken(HiveSqlParser.T_WHERE, 0);
+};
+
+Where_clauseContext.prototype.bool_expr = function() {
+ return this.getTypedRuleContext(Bool_exprContext,0);
+};
+
+Where_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterWhere_clause(this);
+ }
+};
+
+Where_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitWhere_clause(this);
+ }
+};
+
+Where_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitWhere_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Where_clauseContext = Where_clauseContext;
+
+HiveSqlParser.prototype.where_clause = function() {
+
+ var localctx = new Where_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 330, HiveSqlParser.RULE_where_clause);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2436;
+ this.match(HiveSqlParser.T_WHERE);
+ this.state = 2437;
+ this.bool_expr(0);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Group_by_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_group_by_clause;
+ return this;
+}
+
+Group_by_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Group_by_clauseContext.prototype.constructor = Group_by_clauseContext;
+
+Group_by_clauseContext.prototype.T_GROUP = function() {
+ return this.getToken(HiveSqlParser.T_GROUP, 0);
+};
+
+Group_by_clauseContext.prototype.T_BY = function() {
+ return this.getToken(HiveSqlParser.T_BY, 0);
+};
+
+Group_by_clauseContext.prototype.expr = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ExprContext);
+ } else {
+ return this.getTypedRuleContext(ExprContext,i);
+ }
+};
+
+Group_by_clauseContext.prototype.T_COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_COMMA);
+ } else {
+ return this.getToken(HiveSqlParser.T_COMMA, i);
+ }
+};
+
+
+Group_by_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterGroup_by_clause(this);
+ }
+};
+
+Group_by_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitGroup_by_clause(this);
+ }
+};
+
+Group_by_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitGroup_by_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Group_by_clauseContext = Group_by_clauseContext;
+
+HiveSqlParser.prototype.group_by_clause = function() {
+
+ var localctx = new Group_by_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 332, HiveSqlParser.RULE_group_by_clause);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2439;
+ this.match(HiveSqlParser.T_GROUP);
+ this.state = 2440;
+ this.match(HiveSqlParser.T_BY);
+ this.state = 2441;
+ this.expr(0);
+ this.state = 2446;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,300,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 2442;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 2443;
+ this.expr(0);
+ }
+ this.state = 2448;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,300,this._ctx);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Having_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_having_clause;
+ return this;
+}
+
+Having_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Having_clauseContext.prototype.constructor = Having_clauseContext;
+
+Having_clauseContext.prototype.T_HAVING = function() {
+ return this.getToken(HiveSqlParser.T_HAVING, 0);
+};
+
+Having_clauseContext.prototype.bool_expr = function() {
+ return this.getTypedRuleContext(Bool_exprContext,0);
+};
+
+Having_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterHaving_clause(this);
+ }
+};
+
+Having_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitHaving_clause(this);
+ }
+};
+
+Having_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitHaving_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Having_clauseContext = Having_clauseContext;
+
+HiveSqlParser.prototype.having_clause = function() {
+
+ var localctx = new Having_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 334, HiveSqlParser.RULE_having_clause);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2449;
+ this.match(HiveSqlParser.T_HAVING);
+ this.state = 2450;
+ this.bool_expr(0);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Qualify_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_qualify_clause;
+ return this;
+}
+
+Qualify_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Qualify_clauseContext.prototype.constructor = Qualify_clauseContext;
+
+Qualify_clauseContext.prototype.T_QUALIFY = function() {
+ return this.getToken(HiveSqlParser.T_QUALIFY, 0);
+};
+
+Qualify_clauseContext.prototype.bool_expr = function() {
+ return this.getTypedRuleContext(Bool_exprContext,0);
+};
+
+Qualify_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterQualify_clause(this);
+ }
+};
+
+Qualify_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitQualify_clause(this);
+ }
+};
+
+Qualify_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitQualify_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Qualify_clauseContext = Qualify_clauseContext;
+
+HiveSqlParser.prototype.qualify_clause = function() {
+
+ var localctx = new Qualify_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 336, HiveSqlParser.RULE_qualify_clause);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2452;
+ this.match(HiveSqlParser.T_QUALIFY);
+ this.state = 2453;
+ this.bool_expr(0);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Order_by_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_order_by_clause;
+ return this;
+}
+
+Order_by_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Order_by_clauseContext.prototype.constructor = Order_by_clauseContext;
+
+Order_by_clauseContext.prototype.T_ORDER = function() {
+ return this.getToken(HiveSqlParser.T_ORDER, 0);
+};
+
+Order_by_clauseContext.prototype.T_BY = function() {
+ return this.getToken(HiveSqlParser.T_BY, 0);
+};
+
+Order_by_clauseContext.prototype.expr = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ExprContext);
+ } else {
+ return this.getTypedRuleContext(ExprContext,i);
+ }
+};
+
+Order_by_clauseContext.prototype.T_COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_COMMA);
+ } else {
+ return this.getToken(HiveSqlParser.T_COMMA, i);
+ }
+};
+
+
+Order_by_clauseContext.prototype.T_ASC = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_ASC);
+ } else {
+ return this.getToken(HiveSqlParser.T_ASC, i);
+ }
+};
+
+
+Order_by_clauseContext.prototype.T_DESC = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_DESC);
+ } else {
+ return this.getToken(HiveSqlParser.T_DESC, i);
+ }
+};
+
+
+Order_by_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterOrder_by_clause(this);
+ }
+};
+
+Order_by_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitOrder_by_clause(this);
+ }
+};
+
+Order_by_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitOrder_by_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Order_by_clauseContext = Order_by_clauseContext;
+
+HiveSqlParser.prototype.order_by_clause = function() {
+
+ var localctx = new Order_by_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 338, HiveSqlParser.RULE_order_by_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2455;
+ this.match(HiveSqlParser.T_ORDER);
+ this.state = 2456;
+ this.match(HiveSqlParser.T_BY);
+ this.state = 2457;
+ this.expr(0);
+ this.state = 2459;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,301,this._ctx);
+ if(la_===1) {
+ this.state = 2458;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_ASC || _la===HiveSqlParser.T_DESC)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+
+ }
+ this.state = 2468;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,303,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 2461;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 2462;
+ this.expr(0);
+ this.state = 2464;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,302,this._ctx);
+ if(la_===1) {
+ this.state = 2463;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_ASC || _la===HiveSqlParser.T_DESC)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+
+ }
+ }
+ this.state = 2470;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,303,this._ctx);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Select_optionsContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_select_options;
+ return this;
+}
+
+Select_optionsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Select_optionsContext.prototype.constructor = Select_optionsContext;
+
+Select_optionsContext.prototype.select_options_item = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Select_options_itemContext);
+ } else {
+ return this.getTypedRuleContext(Select_options_itemContext,i);
+ }
+};
+
+Select_optionsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterSelect_options(this);
+ }
+};
+
+Select_optionsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitSelect_options(this);
+ }
+};
+
+Select_optionsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitSelect_options(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Select_optionsContext = Select_optionsContext;
+
+HiveSqlParser.prototype.select_options = function() {
+
+ var localctx = new Select_optionsContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 340, HiveSqlParser.RULE_select_options);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2472;
+ this._errHandler.sync(this);
+ var _alt = 1;
+ do {
+ switch (_alt) {
+ case 1:
+ this.state = 2471;
+ this.select_options_item();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 2474;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,304, this._ctx);
+ } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Select_options_itemContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_select_options_item;
+ return this;
+}
+
+Select_options_itemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Select_options_itemContext.prototype.constructor = Select_options_itemContext;
+
+Select_options_itemContext.prototype.T_LIMIT = function() {
+ return this.getToken(HiveSqlParser.T_LIMIT, 0);
+};
+
+Select_options_itemContext.prototype.expr = function() {
+ return this.getTypedRuleContext(ExprContext,0);
+};
+
+Select_options_itemContext.prototype.T_WITH = function() {
+ return this.getToken(HiveSqlParser.T_WITH, 0);
+};
+
+Select_options_itemContext.prototype.T_RR = function() {
+ return this.getToken(HiveSqlParser.T_RR, 0);
+};
+
+Select_options_itemContext.prototype.T_RS = function() {
+ return this.getToken(HiveSqlParser.T_RS, 0);
+};
+
+Select_options_itemContext.prototype.T_CS = function() {
+ return this.getToken(HiveSqlParser.T_CS, 0);
+};
+
+Select_options_itemContext.prototype.T_UR = function() {
+ return this.getToken(HiveSqlParser.T_UR, 0);
+};
+
+Select_options_itemContext.prototype.T_USE = function() {
+ return this.getToken(HiveSqlParser.T_USE, 0);
+};
+
+Select_options_itemContext.prototype.T_AND = function() {
+ return this.getToken(HiveSqlParser.T_AND, 0);
+};
+
+Select_options_itemContext.prototype.T_KEEP = function() {
+ return this.getToken(HiveSqlParser.T_KEEP, 0);
+};
+
+Select_options_itemContext.prototype.T_LOCKS = function() {
+ return this.getToken(HiveSqlParser.T_LOCKS, 0);
+};
+
+Select_options_itemContext.prototype.T_EXCLUSIVE = function() {
+ return this.getToken(HiveSqlParser.T_EXCLUSIVE, 0);
+};
+
+Select_options_itemContext.prototype.T_UPDATE = function() {
+ return this.getToken(HiveSqlParser.T_UPDATE, 0);
+};
+
+Select_options_itemContext.prototype.T_SHARE = function() {
+ return this.getToken(HiveSqlParser.T_SHARE, 0);
+};
+
+Select_options_itemContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterSelect_options_item(this);
+ }
+};
+
+Select_options_itemContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitSelect_options_item(this);
+ }
+};
+
+Select_options_itemContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitSelect_options_item(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Select_options_itemContext = Select_options_itemContext;
+
+HiveSqlParser.prototype.select_options_item = function() {
+
+ var localctx = new Select_options_itemContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 342, HiveSqlParser.RULE_select_options_item);
+ var _la = 0; // Token type
+ try {
+ this.state = 2487;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case HiveSqlParser.T_LIMIT:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2476;
+ this.match(HiveSqlParser.T_LIMIT);
+ this.state = 2477;
+ this.expr(0);
+ break;
+ case HiveSqlParser.T_WITH:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 2478;
+ this.match(HiveSqlParser.T_WITH);
+ this.state = 2479;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_CS || ((((_la - 292)) & ~0x1f) == 0 && ((1 << (_la - 292)) & ((1 << (HiveSqlParser.T_RR - 292)) | (1 << (HiveSqlParser.T_RS - 292)) | (1 << (HiveSqlParser.T_UR - 292)))) !== 0))) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 2485;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,305,this._ctx);
+ if(la_===1) {
+ this.state = 2480;
+ this.match(HiveSqlParser.T_USE);
+ this.state = 2481;
+ this.match(HiveSqlParser.T_AND);
+ this.state = 2482;
+ this.match(HiveSqlParser.T_KEEP);
+ this.state = 2483;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_UPDATE || _la===HiveSqlParser.T_EXCLUSIVE || _la===HiveSqlParser.T_SHARE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 2484;
+ this.match(HiveSqlParser.T_LOCKS);
+
+ }
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Update_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_update_stmt;
+ return this;
+}
+
+Update_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Update_stmtContext.prototype.constructor = Update_stmtContext;
+
+Update_stmtContext.prototype.T_UPDATE = function() {
+ return this.getToken(HiveSqlParser.T_UPDATE, 0);
+};
+
+Update_stmtContext.prototype.update_table = function() {
+ return this.getTypedRuleContext(Update_tableContext,0);
+};
+
+Update_stmtContext.prototype.T_SET = function() {
+ return this.getToken(HiveSqlParser.T_SET, 0);
+};
+
+Update_stmtContext.prototype.update_assignment = function() {
+ return this.getTypedRuleContext(Update_assignmentContext,0);
+};
+
+Update_stmtContext.prototype.where_clause = function() {
+ return this.getTypedRuleContext(Where_clauseContext,0);
+};
+
+Update_stmtContext.prototype.update_upsert = function() {
+ return this.getTypedRuleContext(Update_upsertContext,0);
+};
+
+Update_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterUpdate_stmt(this);
+ }
+};
+
+Update_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitUpdate_stmt(this);
+ }
+};
+
+Update_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitUpdate_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Update_stmtContext = Update_stmtContext;
+
+HiveSqlParser.prototype.update_stmt = function() {
+
+ var localctx = new Update_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 344, HiveSqlParser.RULE_update_stmt);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2489;
+ this.match(HiveSqlParser.T_UPDATE);
+ this.state = 2490;
+ this.update_table();
+ this.state = 2491;
+ this.match(HiveSqlParser.T_SET);
+ this.state = 2492;
+ this.update_assignment();
+ this.state = 2494;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,307,this._ctx);
+ if(la_===1) {
+ this.state = 2493;
+ this.where_clause();
+
+ }
+ this.state = 2497;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,308,this._ctx);
+ if(la_===1) {
+ this.state = 2496;
+ this.update_upsert();
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Update_assignmentContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_update_assignment;
+ return this;
+}
+
+Update_assignmentContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Update_assignmentContext.prototype.constructor = Update_assignmentContext;
+
+Update_assignmentContext.prototype.assignment_stmt_item = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Assignment_stmt_itemContext);
+ } else {
+ return this.getTypedRuleContext(Assignment_stmt_itemContext,i);
+ }
+};
+
+Update_assignmentContext.prototype.T_COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_COMMA);
+ } else {
+ return this.getToken(HiveSqlParser.T_COMMA, i);
+ }
+};
+
+
+Update_assignmentContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterUpdate_assignment(this);
+ }
+};
+
+Update_assignmentContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitUpdate_assignment(this);
+ }
+};
+
+Update_assignmentContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitUpdate_assignment(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Update_assignmentContext = Update_assignmentContext;
+
+HiveSqlParser.prototype.update_assignment = function() {
+
+ var localctx = new Update_assignmentContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 346, HiveSqlParser.RULE_update_assignment);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2499;
+ this.assignment_stmt_item();
+ this.state = 2504;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,309,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 2500;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 2501;
+ this.assignment_stmt_item();
+ }
+ this.state = 2506;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,309,this._ctx);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Update_tableContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_update_table;
+ return this;
+}
+
+Update_tableContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Update_tableContext.prototype.constructor = Update_tableContext;
+
+Update_tableContext.prototype.table_name = function() {
+ return this.getTypedRuleContext(Table_nameContext,0);
+};
+
+Update_tableContext.prototype.T_OPEN_P = function() {
+ return this.getToken(HiveSqlParser.T_OPEN_P, 0);
+};
+
+Update_tableContext.prototype.select_stmt = function() {
+ return this.getTypedRuleContext(Select_stmtContext,0);
+};
+
+Update_tableContext.prototype.T_CLOSE_P = function() {
+ return this.getToken(HiveSqlParser.T_CLOSE_P, 0);
+};
+
+Update_tableContext.prototype.ident = function() {
+ return this.getTypedRuleContext(IdentContext,0);
+};
+
+Update_tableContext.prototype.from_clause = function() {
+ return this.getTypedRuleContext(From_clauseContext,0);
+};
+
+Update_tableContext.prototype.T_AS = function() {
+ return this.getToken(HiveSqlParser.T_AS, 0);
+};
+
+Update_tableContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterUpdate_table(this);
+ }
+};
+
+Update_tableContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitUpdate_table(this);
+ }
+};
+
+Update_tableContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitUpdate_table(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Update_tableContext = Update_tableContext;
+
+HiveSqlParser.prototype.update_table = function() {
+
+ var localctx = new Update_tableContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 348, HiveSqlParser.RULE_update_table);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2515;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case HiveSqlParser.T__8:
+ case HiveSqlParser.T_GO:
+ case HiveSqlParser.T_BEGIN:
+ case HiveSqlParser.T_EXCEPTION:
+ case HiveSqlParser.L_ID:
+ case HiveSqlParser.T_THEN:
+ case HiveSqlParser.T_SET:
+ case HiveSqlParser.T_ALLOCATE:
+ case HiveSqlParser.T_CURSOR:
+ case HiveSqlParser.T_FOR:
+ case HiveSqlParser.T_RESULT:
+ case HiveSqlParser.T_PROCEDURE:
+ case HiveSqlParser.T_ASSOCIATE:
+ case HiveSqlParser.T_LOCATOR:
+ case HiveSqlParser.T_LOCATORS:
+ case HiveSqlParser.T_WITH:
+ case HiveSqlParser.T_TRANSACTION:
+ case HiveSqlParser.T_BREAK:
+ case HiveSqlParser.T_CALL:
+ case HiveSqlParser.T_DECLARE:
+ case HiveSqlParser.T_AS:
+ case HiveSqlParser.T_CONSTANT:
+ case HiveSqlParser.T_CONDITION:
+ case HiveSqlParser.T_IS:
+ case HiveSqlParser.T_RETURN:
+ case HiveSqlParser.T_ONLY:
+ case HiveSqlParser.T_TO:
+ case HiveSqlParser.T_CALLER:
+ case HiveSqlParser.T_CLIENT:
+ case HiveSqlParser.T_WITHOUT:
+ case HiveSqlParser.T_CONTINUE:
+ case HiveSqlParser.T_EXIT:
+ case HiveSqlParser.T_HANDLER:
+ case HiveSqlParser.T_SQLEXCEPTION:
+ case HiveSqlParser.T_SQLWARNING:
+ case HiveSqlParser.T_NOT:
+ case HiveSqlParser.T_FOUND:
+ case HiveSqlParser.T_GLOBAL:
+ case HiveSqlParser.T_TEMPORARY:
+ case HiveSqlParser.T_TABLE:
+ case HiveSqlParser.T_CREATE:
+ case HiveSqlParser.T_IF:
+ case HiveSqlParser.T_EXISTS:
+ case HiveSqlParser.T_LOCAL:
+ case HiveSqlParser.T_MULTISET:
+ case HiveSqlParser.T_VOLATILE:
+ case HiveSqlParser.T_LIKE:
+ case HiveSqlParser.T_CONSTRAINT:
+ case HiveSqlParser.T_PRIMARY:
+ case HiveSqlParser.T_KEY:
+ case HiveSqlParser.T_UNIQUE:
+ case HiveSqlParser.T_REFERENCES:
+ case HiveSqlParser.T_IDENTITY:
+ case HiveSqlParser.T_AUTO_INCREMENT:
+ case HiveSqlParser.T_ENABLE:
+ case HiveSqlParser.T_CLUSTERED:
+ case HiveSqlParser.T_ASC:
+ case HiveSqlParser.T_DESC:
+ case HiveSqlParser.T_FOREIGN:
+ case HiveSqlParser.T_ON:
+ case HiveSqlParser.T_UPDATE:
+ case HiveSqlParser.T_DELETE:
+ case HiveSqlParser.T_NO:
+ case HiveSqlParser.T_ACTION:
+ case HiveSqlParser.T_RESTRICT:
+ case HiveSqlParser.T_DEFAULT:
+ case HiveSqlParser.T_CASCADE:
+ case HiveSqlParser.T_LOG:
+ case HiveSqlParser.T_FALLBACK:
+ case HiveSqlParser.T_COMMIT:
+ case HiveSqlParser.T_PRESERVE:
+ case HiveSqlParser.T_ROWS:
+ case HiveSqlParser.T_SEGMENT:
+ case HiveSqlParser.T_CREATION:
+ case HiveSqlParser.T_IMMEDIATE:
+ case HiveSqlParser.T_DEFERRED:
+ case HiveSqlParser.T_PCTFREE:
+ case HiveSqlParser.T_PCTUSED:
+ case HiveSqlParser.T_INITRANS:
+ case HiveSqlParser.T_MAXTRANS:
+ case HiveSqlParser.T_NOCOMPRESS:
+ case HiveSqlParser.T_LOGGING:
+ case HiveSqlParser.T_NOLOGGING:
+ case HiveSqlParser.T_STORAGE:
+ case HiveSqlParser.T_TABLESPACE:
+ case HiveSqlParser.T_INDEX:
+ case HiveSqlParser.T_IN:
+ case HiveSqlParser.T_REPLACE:
+ case HiveSqlParser.T_DISTRIBUTE:
+ case HiveSqlParser.T_BY:
+ case HiveSqlParser.T_HASH:
+ case HiveSqlParser.T_LOGGED:
+ case HiveSqlParser.T_COMPRESS:
+ case HiveSqlParser.T_YES:
+ case HiveSqlParser.T_DEFINITION:
+ case HiveSqlParser.T_DROP:
+ case HiveSqlParser.T_DATA:
+ case HiveSqlParser.T_STORED:
+ case HiveSqlParser.T_ROW:
+ case HiveSqlParser.T_FORMAT:
+ case HiveSqlParser.T_DELIMITED:
+ case HiveSqlParser.T_FIELDS:
+ case HiveSqlParser.T_TERMINATED:
+ case HiveSqlParser.T_ESCAPED:
+ case HiveSqlParser.T_COLLECTION:
+ case HiveSqlParser.T_ITEMS:
+ case HiveSqlParser.T_MAP:
+ case HiveSqlParser.T_KEYS:
+ case HiveSqlParser.T_LINES:
+ case HiveSqlParser.T_DEFINED:
+ case HiveSqlParser.T_TEXTIMAGE_ON:
+ case HiveSqlParser.T_COMMENT:
+ case HiveSqlParser.T_CHARACTER:
+ case HiveSqlParser.T_CHARSET:
+ case HiveSqlParser.T_ENGINE:
+ case HiveSqlParser.T_ALTER:
+ case HiveSqlParser.T_ADD2:
+ case HiveSqlParser.T_CHAR:
+ case HiveSqlParser.T_BIGINT:
+ case HiveSqlParser.T_BINARY_DOUBLE:
+ case HiveSqlParser.T_BINARY_FLOAT:
+ case HiveSqlParser.T_BIT:
+ case HiveSqlParser.T_DATE:
+ case HiveSqlParser.T_DATETIME:
+ case HiveSqlParser.T_DEC:
+ case HiveSqlParser.T_DECIMAL:
+ case HiveSqlParser.T_DOUBLE:
+ case HiveSqlParser.T_PRECISION:
+ case HiveSqlParser.T_FLOAT:
+ case HiveSqlParser.T_INT:
+ case HiveSqlParser.T_INT2:
+ case HiveSqlParser.T_INT4:
+ case HiveSqlParser.T_INT8:
+ case HiveSqlParser.T_INTEGER:
+ case HiveSqlParser.T_NCHAR:
+ case HiveSqlParser.T_NVARCHAR:
+ case HiveSqlParser.T_NUMBER:
+ case HiveSqlParser.T_NUMERIC:
+ case HiveSqlParser.T_REAL:
+ case HiveSqlParser.T_RESULT_SET_LOCATOR:
+ case HiveSqlParser.T_VARYING:
+ case HiveSqlParser.T_SIMPLE_FLOAT:
+ case HiveSqlParser.T_SIMPLE_DOUBLE:
+ case HiveSqlParser.T_SMALLINT:
+ case HiveSqlParser.T_SMALLDATETIME:
+ case HiveSqlParser.T_STRING:
+ case HiveSqlParser.T_SYS_REFCURSOR:
+ case HiveSqlParser.T_TIMESTAMP:
+ case HiveSqlParser.T_VARCHAR:
+ case HiveSqlParser.T_VARCHAR2:
+ case HiveSqlParser.T_XML:
+ case HiveSqlParser.T_MAX:
+ case HiveSqlParser.T_BYTE:
+ case HiveSqlParser.T_CASESPECIFIC:
+ case HiveSqlParser.T_CS:
+ case HiveSqlParser.T_DATABASE:
+ case HiveSqlParser.T_SCHEMA:
+ case HiveSqlParser.T_LOCATION:
+ case HiveSqlParser.T_OR:
+ case HiveSqlParser.T_FUNCTION:
+ case HiveSqlParser.T_RETURNS:
+ case HiveSqlParser.T_PACKAGE:
+ case HiveSqlParser.T_PROC:
+ case HiveSqlParser.T_BODY:
+ case HiveSqlParser.T_OUT:
+ case HiveSqlParser.T_INOUT:
+ case HiveSqlParser.T_LANGUAGE:
+ case HiveSqlParser.T_SQL:
+ case HiveSqlParser.T_SECURITY:
+ case HiveSqlParser.T_CREATOR:
+ case HiveSqlParser.T_DEFINER:
+ case HiveSqlParser.T_INVOKER:
+ case HiveSqlParser.T_OWNER:
+ case HiveSqlParser.T_DYNAMIC:
+ case HiveSqlParser.T_SETS:
+ case HiveSqlParser.T_EXEC:
+ case HiveSqlParser.T_EXECUTE:
+ case HiveSqlParser.T_INTO:
+ case HiveSqlParser.T_INCLUDE:
+ case HiveSqlParser.T_INSERT:
+ case HiveSqlParser.T_OVERWRITE:
+ case HiveSqlParser.T_VALUES:
+ case HiveSqlParser.T_DIRECTORY:
+ case HiveSqlParser.T_GET:
+ case HiveSqlParser.T_DIAGNOSTICS:
+ case HiveSqlParser.T_MESSAGE_TEXT:
+ case HiveSqlParser.T_ROW_COUNT:
+ case HiveSqlParser.T_GRANT:
+ case HiveSqlParser.T_ROLE:
+ case HiveSqlParser.T_LEAVE:
+ case HiveSqlParser.T_OBJECT:
+ case HiveSqlParser.T_AT:
+ case HiveSqlParser.T_OPEN:
+ case HiveSqlParser.T_FETCH:
+ case HiveSqlParser.T_FROM:
+ case HiveSqlParser.T_COLLECT:
+ case HiveSqlParser.T_STATISTICS:
+ case HiveSqlParser.T_STATS:
+ case HiveSqlParser.T_COLUMN:
+ case HiveSqlParser.T_CLOSE:
+ case HiveSqlParser.T_CMP:
+ case HiveSqlParser.T_SUM:
+ case HiveSqlParser.T_COPY:
+ case HiveSqlParser.T_HDFS:
+ case HiveSqlParser.T_BATCHSIZE:
+ case HiveSqlParser.T_DELIMITER:
+ case HiveSqlParser.T_SQLINSERT:
+ case HiveSqlParser.T_IGNORE:
+ case HiveSqlParser.T_WORK:
+ case HiveSqlParser.T_PRINT:
+ case HiveSqlParser.T_QUIT:
+ case HiveSqlParser.T_RAISE:
+ case HiveSqlParser.T_RESIGNAL:
+ case HiveSqlParser.T_SQLSTATE:
+ case HiveSqlParser.T_VALUE:
+ case HiveSqlParser.T_ROLLBACK:
+ case HiveSqlParser.T_CURRENT:
+ case HiveSqlParser.T_CURRENT_SCHEMA:
+ case HiveSqlParser.T_ANSI_NULLS:
+ case HiveSqlParser.T_ANSI_PADDING:
+ case HiveSqlParser.T_NOCOUNT:
+ case HiveSqlParser.T_QUOTED_IDENTIFIER:
+ case HiveSqlParser.T_XACT_ABORT:
+ case HiveSqlParser.T_OFF:
+ case HiveSqlParser.T_QUERY_BAND:
+ case HiveSqlParser.T_NONE:
+ case HiveSqlParser.T_SESSION:
+ case HiveSqlParser.T_SIGNAL:
+ case HiveSqlParser.T_SUMMARY:
+ case HiveSqlParser.T_TOP:
+ case HiveSqlParser.T_LIMIT:
+ case HiveSqlParser.T_TRUNCATE:
+ case HiveSqlParser.T_USE:
+ case HiveSqlParser.T_WHILE:
+ case HiveSqlParser.T_DO:
+ case HiveSqlParser.T_LOOP:
+ case HiveSqlParser.T_REVERSE:
+ case HiveSqlParser.T_STEP:
+ case HiveSqlParser.T_USING:
+ case HiveSqlParser.T_ALL:
+ case HiveSqlParser.T_EXCEPT:
+ case HiveSqlParser.T_INTERSECT:
+ case HiveSqlParser.T_SELECT:
+ case HiveSqlParser.T_SEL:
+ case HiveSqlParser.T_DISTINCT:
+ case HiveSqlParser.T_TITLE:
+ case HiveSqlParser.T_INNER:
+ case HiveSqlParser.T_JOIN:
+ case HiveSqlParser.T_LEFT:
+ case HiveSqlParser.T_RIGHT:
+ case HiveSqlParser.T_FULL:
+ case HiveSqlParser.T_OUTER:
+ case HiveSqlParser.T_GROUP:
+ case HiveSqlParser.T_HAVING:
+ case HiveSqlParser.T_QUALIFY:
+ case HiveSqlParser.T_ORDER:
+ case HiveSqlParser.T_RR:
+ case HiveSqlParser.T_RS:
+ case HiveSqlParser.T_UR:
+ case HiveSqlParser.T_AND:
+ case HiveSqlParser.T_KEEP:
+ case HiveSqlParser.T_EXCLUSIVE:
+ case HiveSqlParser.T_SHARE:
+ case HiveSqlParser.T_LOCKS:
+ case HiveSqlParser.T_MERGE:
+ case HiveSqlParser.T_MATCHED:
+ case HiveSqlParser.T_DESCRIBE:
+ case HiveSqlParser.T_BETWEEN:
+ case HiveSqlParser.T_RLIKE:
+ case HiveSqlParser.T_REGEXP:
+ case HiveSqlParser.T_INTERVAL:
+ case HiveSqlParser.T_DAY:
+ case HiveSqlParser.T_DAYS:
+ case HiveSqlParser.T_MICROSECOND:
+ case HiveSqlParser.T_MICROSECONDS:
+ case HiveSqlParser.T_SECOND:
+ case HiveSqlParser.T_SECONDS:
+ case HiveSqlParser.T_CONCAT:
+ case HiveSqlParser.T_CASE:
+ case HiveSqlParser.T_ISOPEN:
+ case HiveSqlParser.T_NOTFOUND:
+ case HiveSqlParser.T_AVG:
+ case HiveSqlParser.T_COUNT:
+ case HiveSqlParser.T_COUNT_BIG:
+ case HiveSqlParser.T_CUME_DIST:
+ case HiveSqlParser.T_DENSE_RANK:
+ case HiveSqlParser.T_FIRST_VALUE:
+ case HiveSqlParser.T_LAG:
+ case HiveSqlParser.T_LAST_VALUE:
+ case HiveSqlParser.T_LEAD:
+ case HiveSqlParser.T_MIN:
+ case HiveSqlParser.T_RANK:
+ case HiveSqlParser.T_ROW_NUMBER:
+ case HiveSqlParser.T_STDEV:
+ case HiveSqlParser.T_VAR:
+ case HiveSqlParser.T_VARIANCE:
+ case HiveSqlParser.T_OVER:
+ case HiveSqlParser.T_PARTITION:
+ case HiveSqlParser.T_ACTIVITY_COUNT:
+ case HiveSqlParser.T_CAST:
+ case HiveSqlParser.T_CURRENT_DATE:
+ case HiveSqlParser.T_CURRENT_TIMESTAMP:
+ case HiveSqlParser.T_CURRENT_USER:
+ case HiveSqlParser.T_USER:
+ case HiveSqlParser.T_PART_COUNT:
+ case HiveSqlParser.T_PART_LOC:
+ case HiveSqlParser.T_TRIM:
+ case HiveSqlParser.T_SUBSTRING:
+ case HiveSqlParser.T_SYSDATE:
+ case HiveSqlParser.T_HIVE:
+ case HiveSqlParser.T_HOST:
+ case HiveSqlParser.T_TRUE:
+ case HiveSqlParser.T_FALSE:
+ case HiveSqlParser.T_DIR:
+ case HiveSqlParser.T_FILE:
+ case HiveSqlParser.T_FILES:
+ case HiveSqlParser.T_NEW:
+ case HiveSqlParser.T_PWD:
+ case HiveSqlParser.T_SESSIONS:
+ case HiveSqlParser.T_SUBDIR:
+ this.state = 2507;
+ this.table_name();
+ this.state = 2509;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,310,this._ctx);
+ if(la_===1) {
+ this.state = 2508;
+ this.from_clause();
+
+ }
+ break;
+ case HiveSqlParser.T_OPEN_P:
+ this.state = 2511;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 2512;
+ this.select_stmt();
+ this.state = 2513;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 2521;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,313,this._ctx);
+ if(la_===1) {
+ this.state = 2518;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,312,this._ctx);
+ if(la_===1) {
+ this.state = 2517;
+ this.match(HiveSqlParser.T_AS);
+
+ }
+ this.state = 2520;
+ this.ident();
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Update_upsertContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_update_upsert;
+ return this;
+}
+
+Update_upsertContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Update_upsertContext.prototype.constructor = Update_upsertContext;
+
+Update_upsertContext.prototype.T_ELSE = function() {
+ return this.getToken(HiveSqlParser.T_ELSE, 0);
+};
+
+Update_upsertContext.prototype.insert_stmt = function() {
+ return this.getTypedRuleContext(Insert_stmtContext,0);
+};
+
+Update_upsertContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterUpdate_upsert(this);
+ }
+};
+
+Update_upsertContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitUpdate_upsert(this);
+ }
+};
+
+Update_upsertContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitUpdate_upsert(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Update_upsertContext = Update_upsertContext;
+
+HiveSqlParser.prototype.update_upsert = function() {
+
+ var localctx = new Update_upsertContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 350, HiveSqlParser.RULE_update_upsert);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2523;
+ this.match(HiveSqlParser.T_ELSE);
+ this.state = 2524;
+ this.insert_stmt();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Merge_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_merge_stmt;
+ return this;
+}
+
+Merge_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Merge_stmtContext.prototype.constructor = Merge_stmtContext;
+
+Merge_stmtContext.prototype.T_MERGE = function() {
+ return this.getToken(HiveSqlParser.T_MERGE, 0);
+};
+
+Merge_stmtContext.prototype.T_INTO = function() {
+ return this.getToken(HiveSqlParser.T_INTO, 0);
+};
+
+Merge_stmtContext.prototype.merge_table = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Merge_tableContext);
+ } else {
+ return this.getTypedRuleContext(Merge_tableContext,i);
+ }
+};
+
+Merge_stmtContext.prototype.T_USING = function() {
+ return this.getToken(HiveSqlParser.T_USING, 0);
+};
+
+Merge_stmtContext.prototype.T_ON = function() {
+ return this.getToken(HiveSqlParser.T_ON, 0);
+};
+
+Merge_stmtContext.prototype.bool_expr = function() {
+ return this.getTypedRuleContext(Bool_exprContext,0);
+};
+
+Merge_stmtContext.prototype.merge_condition = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Merge_conditionContext);
+ } else {
+ return this.getTypedRuleContext(Merge_conditionContext,i);
+ }
+};
+
+Merge_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterMerge_stmt(this);
+ }
+};
+
+Merge_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitMerge_stmt(this);
+ }
+};
+
+Merge_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitMerge_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Merge_stmtContext = Merge_stmtContext;
+
+HiveSqlParser.prototype.merge_stmt = function() {
+
+ var localctx = new Merge_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 352, HiveSqlParser.RULE_merge_stmt);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2526;
+ this.match(HiveSqlParser.T_MERGE);
+ this.state = 2527;
+ this.match(HiveSqlParser.T_INTO);
+ this.state = 2528;
+ this.merge_table();
+ this.state = 2529;
+ this.match(HiveSqlParser.T_USING);
+ this.state = 2530;
+ this.merge_table();
+ this.state = 2531;
+ this.match(HiveSqlParser.T_ON);
+ this.state = 2532;
+ this.bool_expr(0);
+ this.state = 2534;
+ this._errHandler.sync(this);
+ var _alt = 1;
+ do {
+ switch (_alt) {
+ case 1:
+ this.state = 2533;
+ this.merge_condition();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 2536;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,314, this._ctx);
+ } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Merge_tableContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_merge_table;
+ return this;
+}
+
+Merge_tableContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Merge_tableContext.prototype.constructor = Merge_tableContext;
+
+Merge_tableContext.prototype.table_name = function() {
+ return this.getTypedRuleContext(Table_nameContext,0);
+};
+
+Merge_tableContext.prototype.ident = function() {
+ return this.getTypedRuleContext(IdentContext,0);
+};
+
+Merge_tableContext.prototype.T_OPEN_P = function() {
+ return this.getToken(HiveSqlParser.T_OPEN_P, 0);
+};
+
+Merge_tableContext.prototype.select_stmt = function() {
+ return this.getTypedRuleContext(Select_stmtContext,0);
+};
+
+Merge_tableContext.prototype.T_CLOSE_P = function() {
+ return this.getToken(HiveSqlParser.T_CLOSE_P, 0);
+};
+
+Merge_tableContext.prototype.T_AS = function() {
+ return this.getToken(HiveSqlParser.T_AS, 0);
+};
+
+Merge_tableContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterMerge_table(this);
+ }
+};
+
+Merge_tableContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitMerge_table(this);
+ }
+};
+
+Merge_tableContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitMerge_table(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Merge_tableContext = Merge_tableContext;
+
+HiveSqlParser.prototype.merge_table = function() {
+
+ var localctx = new Merge_tableContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 354, HiveSqlParser.RULE_merge_table);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2543;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case HiveSqlParser.T__8:
+ case HiveSqlParser.T_GO:
+ case HiveSqlParser.T_BEGIN:
+ case HiveSqlParser.T_EXCEPTION:
+ case HiveSqlParser.L_ID:
+ case HiveSqlParser.T_THEN:
+ case HiveSqlParser.T_SET:
+ case HiveSqlParser.T_ALLOCATE:
+ case HiveSqlParser.T_CURSOR:
+ case HiveSqlParser.T_FOR:
+ case HiveSqlParser.T_RESULT:
+ case HiveSqlParser.T_PROCEDURE:
+ case HiveSqlParser.T_ASSOCIATE:
+ case HiveSqlParser.T_LOCATOR:
+ case HiveSqlParser.T_LOCATORS:
+ case HiveSqlParser.T_WITH:
+ case HiveSqlParser.T_TRANSACTION:
+ case HiveSqlParser.T_BREAK:
+ case HiveSqlParser.T_CALL:
+ case HiveSqlParser.T_DECLARE:
+ case HiveSqlParser.T_AS:
+ case HiveSqlParser.T_CONSTANT:
+ case HiveSqlParser.T_CONDITION:
+ case HiveSqlParser.T_IS:
+ case HiveSqlParser.T_RETURN:
+ case HiveSqlParser.T_ONLY:
+ case HiveSqlParser.T_TO:
+ case HiveSqlParser.T_CALLER:
+ case HiveSqlParser.T_CLIENT:
+ case HiveSqlParser.T_WITHOUT:
+ case HiveSqlParser.T_CONTINUE:
+ case HiveSqlParser.T_EXIT:
+ case HiveSqlParser.T_HANDLER:
+ case HiveSqlParser.T_SQLEXCEPTION:
+ case HiveSqlParser.T_SQLWARNING:
+ case HiveSqlParser.T_NOT:
+ case HiveSqlParser.T_FOUND:
+ case HiveSqlParser.T_GLOBAL:
+ case HiveSqlParser.T_TEMPORARY:
+ case HiveSqlParser.T_TABLE:
+ case HiveSqlParser.T_CREATE:
+ case HiveSqlParser.T_IF:
+ case HiveSqlParser.T_EXISTS:
+ case HiveSqlParser.T_LOCAL:
+ case HiveSqlParser.T_MULTISET:
+ case HiveSqlParser.T_VOLATILE:
+ case HiveSqlParser.T_LIKE:
+ case HiveSqlParser.T_CONSTRAINT:
+ case HiveSqlParser.T_PRIMARY:
+ case HiveSqlParser.T_KEY:
+ case HiveSqlParser.T_UNIQUE:
+ case HiveSqlParser.T_REFERENCES:
+ case HiveSqlParser.T_IDENTITY:
+ case HiveSqlParser.T_AUTO_INCREMENT:
+ case HiveSqlParser.T_ENABLE:
+ case HiveSqlParser.T_CLUSTERED:
+ case HiveSqlParser.T_ASC:
+ case HiveSqlParser.T_DESC:
+ case HiveSqlParser.T_FOREIGN:
+ case HiveSqlParser.T_ON:
+ case HiveSqlParser.T_UPDATE:
+ case HiveSqlParser.T_DELETE:
+ case HiveSqlParser.T_NO:
+ case HiveSqlParser.T_ACTION:
+ case HiveSqlParser.T_RESTRICT:
+ case HiveSqlParser.T_DEFAULT:
+ case HiveSqlParser.T_CASCADE:
+ case HiveSqlParser.T_LOG:
+ case HiveSqlParser.T_FALLBACK:
+ case HiveSqlParser.T_COMMIT:
+ case HiveSqlParser.T_PRESERVE:
+ case HiveSqlParser.T_ROWS:
+ case HiveSqlParser.T_SEGMENT:
+ case HiveSqlParser.T_CREATION:
+ case HiveSqlParser.T_IMMEDIATE:
+ case HiveSqlParser.T_DEFERRED:
+ case HiveSqlParser.T_PCTFREE:
+ case HiveSqlParser.T_PCTUSED:
+ case HiveSqlParser.T_INITRANS:
+ case HiveSqlParser.T_MAXTRANS:
+ case HiveSqlParser.T_NOCOMPRESS:
+ case HiveSqlParser.T_LOGGING:
+ case HiveSqlParser.T_NOLOGGING:
+ case HiveSqlParser.T_STORAGE:
+ case HiveSqlParser.T_TABLESPACE:
+ case HiveSqlParser.T_INDEX:
+ case HiveSqlParser.T_IN:
+ case HiveSqlParser.T_REPLACE:
+ case HiveSqlParser.T_DISTRIBUTE:
+ case HiveSqlParser.T_BY:
+ case HiveSqlParser.T_HASH:
+ case HiveSqlParser.T_LOGGED:
+ case HiveSqlParser.T_COMPRESS:
+ case HiveSqlParser.T_YES:
+ case HiveSqlParser.T_DEFINITION:
+ case HiveSqlParser.T_DROP:
+ case HiveSqlParser.T_DATA:
+ case HiveSqlParser.T_STORED:
+ case HiveSqlParser.T_ROW:
+ case HiveSqlParser.T_FORMAT:
+ case HiveSqlParser.T_DELIMITED:
+ case HiveSqlParser.T_FIELDS:
+ case HiveSqlParser.T_TERMINATED:
+ case HiveSqlParser.T_ESCAPED:
+ case HiveSqlParser.T_COLLECTION:
+ case HiveSqlParser.T_ITEMS:
+ case HiveSqlParser.T_MAP:
+ case HiveSqlParser.T_KEYS:
+ case HiveSqlParser.T_LINES:
+ case HiveSqlParser.T_DEFINED:
+ case HiveSqlParser.T_TEXTIMAGE_ON:
+ case HiveSqlParser.T_COMMENT:
+ case HiveSqlParser.T_CHARACTER:
+ case HiveSqlParser.T_CHARSET:
+ case HiveSqlParser.T_ENGINE:
+ case HiveSqlParser.T_ALTER:
+ case HiveSqlParser.T_ADD2:
+ case HiveSqlParser.T_CHAR:
+ case HiveSqlParser.T_BIGINT:
+ case HiveSqlParser.T_BINARY_DOUBLE:
+ case HiveSqlParser.T_BINARY_FLOAT:
+ case HiveSqlParser.T_BIT:
+ case HiveSqlParser.T_DATE:
+ case HiveSqlParser.T_DATETIME:
+ case HiveSqlParser.T_DEC:
+ case HiveSqlParser.T_DECIMAL:
+ case HiveSqlParser.T_DOUBLE:
+ case HiveSqlParser.T_PRECISION:
+ case HiveSqlParser.T_FLOAT:
+ case HiveSqlParser.T_INT:
+ case HiveSqlParser.T_INT2:
+ case HiveSqlParser.T_INT4:
+ case HiveSqlParser.T_INT8:
+ case HiveSqlParser.T_INTEGER:
+ case HiveSqlParser.T_NCHAR:
+ case HiveSqlParser.T_NVARCHAR:
+ case HiveSqlParser.T_NUMBER:
+ case HiveSqlParser.T_NUMERIC:
+ case HiveSqlParser.T_REAL:
+ case HiveSqlParser.T_RESULT_SET_LOCATOR:
+ case HiveSqlParser.T_VARYING:
+ case HiveSqlParser.T_SIMPLE_FLOAT:
+ case HiveSqlParser.T_SIMPLE_DOUBLE:
+ case HiveSqlParser.T_SMALLINT:
+ case HiveSqlParser.T_SMALLDATETIME:
+ case HiveSqlParser.T_STRING:
+ case HiveSqlParser.T_SYS_REFCURSOR:
+ case HiveSqlParser.T_TIMESTAMP:
+ case HiveSqlParser.T_VARCHAR:
+ case HiveSqlParser.T_VARCHAR2:
+ case HiveSqlParser.T_XML:
+ case HiveSqlParser.T_MAX:
+ case HiveSqlParser.T_BYTE:
+ case HiveSqlParser.T_CASESPECIFIC:
+ case HiveSqlParser.T_CS:
+ case HiveSqlParser.T_DATABASE:
+ case HiveSqlParser.T_SCHEMA:
+ case HiveSqlParser.T_LOCATION:
+ case HiveSqlParser.T_OR:
+ case HiveSqlParser.T_FUNCTION:
+ case HiveSqlParser.T_RETURNS:
+ case HiveSqlParser.T_PACKAGE:
+ case HiveSqlParser.T_PROC:
+ case HiveSqlParser.T_BODY:
+ case HiveSqlParser.T_OUT:
+ case HiveSqlParser.T_INOUT:
+ case HiveSqlParser.T_LANGUAGE:
+ case HiveSqlParser.T_SQL:
+ case HiveSqlParser.T_SECURITY:
+ case HiveSqlParser.T_CREATOR:
+ case HiveSqlParser.T_DEFINER:
+ case HiveSqlParser.T_INVOKER:
+ case HiveSqlParser.T_OWNER:
+ case HiveSqlParser.T_DYNAMIC:
+ case HiveSqlParser.T_SETS:
+ case HiveSqlParser.T_EXEC:
+ case HiveSqlParser.T_EXECUTE:
+ case HiveSqlParser.T_INTO:
+ case HiveSqlParser.T_INCLUDE:
+ case HiveSqlParser.T_INSERT:
+ case HiveSqlParser.T_OVERWRITE:
+ case HiveSqlParser.T_VALUES:
+ case HiveSqlParser.T_DIRECTORY:
+ case HiveSqlParser.T_GET:
+ case HiveSqlParser.T_DIAGNOSTICS:
+ case HiveSqlParser.T_MESSAGE_TEXT:
+ case HiveSqlParser.T_ROW_COUNT:
+ case HiveSqlParser.T_GRANT:
+ case HiveSqlParser.T_ROLE:
+ case HiveSqlParser.T_LEAVE:
+ case HiveSqlParser.T_OBJECT:
+ case HiveSqlParser.T_AT:
+ case HiveSqlParser.T_OPEN:
+ case HiveSqlParser.T_FETCH:
+ case HiveSqlParser.T_FROM:
+ case HiveSqlParser.T_COLLECT:
+ case HiveSqlParser.T_STATISTICS:
+ case HiveSqlParser.T_STATS:
+ case HiveSqlParser.T_COLUMN:
+ case HiveSqlParser.T_CLOSE:
+ case HiveSqlParser.T_CMP:
+ case HiveSqlParser.T_SUM:
+ case HiveSqlParser.T_COPY:
+ case HiveSqlParser.T_HDFS:
+ case HiveSqlParser.T_BATCHSIZE:
+ case HiveSqlParser.T_DELIMITER:
+ case HiveSqlParser.T_SQLINSERT:
+ case HiveSqlParser.T_IGNORE:
+ case HiveSqlParser.T_WORK:
+ case HiveSqlParser.T_PRINT:
+ case HiveSqlParser.T_QUIT:
+ case HiveSqlParser.T_RAISE:
+ case HiveSqlParser.T_RESIGNAL:
+ case HiveSqlParser.T_SQLSTATE:
+ case HiveSqlParser.T_VALUE:
+ case HiveSqlParser.T_ROLLBACK:
+ case HiveSqlParser.T_CURRENT:
+ case HiveSqlParser.T_CURRENT_SCHEMA:
+ case HiveSqlParser.T_ANSI_NULLS:
+ case HiveSqlParser.T_ANSI_PADDING:
+ case HiveSqlParser.T_NOCOUNT:
+ case HiveSqlParser.T_QUOTED_IDENTIFIER:
+ case HiveSqlParser.T_XACT_ABORT:
+ case HiveSqlParser.T_OFF:
+ case HiveSqlParser.T_QUERY_BAND:
+ case HiveSqlParser.T_NONE:
+ case HiveSqlParser.T_SESSION:
+ case HiveSqlParser.T_SIGNAL:
+ case HiveSqlParser.T_SUMMARY:
+ case HiveSqlParser.T_TOP:
+ case HiveSqlParser.T_LIMIT:
+ case HiveSqlParser.T_TRUNCATE:
+ case HiveSqlParser.T_USE:
+ case HiveSqlParser.T_WHILE:
+ case HiveSqlParser.T_DO:
+ case HiveSqlParser.T_LOOP:
+ case HiveSqlParser.T_REVERSE:
+ case HiveSqlParser.T_STEP:
+ case HiveSqlParser.T_USING:
+ case HiveSqlParser.T_ALL:
+ case HiveSqlParser.T_EXCEPT:
+ case HiveSqlParser.T_INTERSECT:
+ case HiveSqlParser.T_SELECT:
+ case HiveSqlParser.T_SEL:
+ case HiveSqlParser.T_DISTINCT:
+ case HiveSqlParser.T_TITLE:
+ case HiveSqlParser.T_INNER:
+ case HiveSqlParser.T_JOIN:
+ case HiveSqlParser.T_LEFT:
+ case HiveSqlParser.T_RIGHT:
+ case HiveSqlParser.T_FULL:
+ case HiveSqlParser.T_OUTER:
+ case HiveSqlParser.T_GROUP:
+ case HiveSqlParser.T_HAVING:
+ case HiveSqlParser.T_QUALIFY:
+ case HiveSqlParser.T_ORDER:
+ case HiveSqlParser.T_RR:
+ case HiveSqlParser.T_RS:
+ case HiveSqlParser.T_UR:
+ case HiveSqlParser.T_AND:
+ case HiveSqlParser.T_KEEP:
+ case HiveSqlParser.T_EXCLUSIVE:
+ case HiveSqlParser.T_SHARE:
+ case HiveSqlParser.T_LOCKS:
+ case HiveSqlParser.T_MERGE:
+ case HiveSqlParser.T_MATCHED:
+ case HiveSqlParser.T_DESCRIBE:
+ case HiveSqlParser.T_BETWEEN:
+ case HiveSqlParser.T_RLIKE:
+ case HiveSqlParser.T_REGEXP:
+ case HiveSqlParser.T_INTERVAL:
+ case HiveSqlParser.T_DAY:
+ case HiveSqlParser.T_DAYS:
+ case HiveSqlParser.T_MICROSECOND:
+ case HiveSqlParser.T_MICROSECONDS:
+ case HiveSqlParser.T_SECOND:
+ case HiveSqlParser.T_SECONDS:
+ case HiveSqlParser.T_CONCAT:
+ case HiveSqlParser.T_CASE:
+ case HiveSqlParser.T_ISOPEN:
+ case HiveSqlParser.T_NOTFOUND:
+ case HiveSqlParser.T_AVG:
+ case HiveSqlParser.T_COUNT:
+ case HiveSqlParser.T_COUNT_BIG:
+ case HiveSqlParser.T_CUME_DIST:
+ case HiveSqlParser.T_DENSE_RANK:
+ case HiveSqlParser.T_FIRST_VALUE:
+ case HiveSqlParser.T_LAG:
+ case HiveSqlParser.T_LAST_VALUE:
+ case HiveSqlParser.T_LEAD:
+ case HiveSqlParser.T_MIN:
+ case HiveSqlParser.T_RANK:
+ case HiveSqlParser.T_ROW_NUMBER:
+ case HiveSqlParser.T_STDEV:
+ case HiveSqlParser.T_VAR:
+ case HiveSqlParser.T_VARIANCE:
+ case HiveSqlParser.T_OVER:
+ case HiveSqlParser.T_PARTITION:
+ case HiveSqlParser.T_ACTIVITY_COUNT:
+ case HiveSqlParser.T_CAST:
+ case HiveSqlParser.T_CURRENT_DATE:
+ case HiveSqlParser.T_CURRENT_TIMESTAMP:
+ case HiveSqlParser.T_CURRENT_USER:
+ case HiveSqlParser.T_USER:
+ case HiveSqlParser.T_PART_COUNT:
+ case HiveSqlParser.T_PART_LOC:
+ case HiveSqlParser.T_TRIM:
+ case HiveSqlParser.T_SUBSTRING:
+ case HiveSqlParser.T_SYSDATE:
+ case HiveSqlParser.T_HIVE:
+ case HiveSqlParser.T_HOST:
+ case HiveSqlParser.T_TRUE:
+ case HiveSqlParser.T_FALSE:
+ case HiveSqlParser.T_DIR:
+ case HiveSqlParser.T_FILE:
+ case HiveSqlParser.T_FILES:
+ case HiveSqlParser.T_NEW:
+ case HiveSqlParser.T_PWD:
+ case HiveSqlParser.T_SESSIONS:
+ case HiveSqlParser.T_SUBDIR:
+ this.state = 2538;
+ this.table_name();
+ break;
+ case HiveSqlParser.T_OPEN_P:
+ this.state = 2539;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 2540;
+ this.select_stmt();
+ this.state = 2541;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 2549;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,317,this._ctx);
+ if(la_===1) {
+ this.state = 2546;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,316,this._ctx);
+ if(la_===1) {
+ this.state = 2545;
+ this.match(HiveSqlParser.T_AS);
+
+ }
+ this.state = 2548;
+ this.ident();
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Merge_conditionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_merge_condition;
+ return this;
+}
+
+Merge_conditionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Merge_conditionContext.prototype.constructor = Merge_conditionContext;
+
+Merge_conditionContext.prototype.T_WHEN = function() {
+ return this.getToken(HiveSqlParser.T_WHEN, 0);
+};
+
+Merge_conditionContext.prototype.T_MATCHED = function() {
+ return this.getToken(HiveSqlParser.T_MATCHED, 0);
+};
+
+Merge_conditionContext.prototype.T_THEN = function() {
+ return this.getToken(HiveSqlParser.T_THEN, 0);
+};
+
+Merge_conditionContext.prototype.merge_action = function() {
+ return this.getTypedRuleContext(Merge_actionContext,0);
+};
+
+Merge_conditionContext.prototype.T_NOT = function() {
+ return this.getToken(HiveSqlParser.T_NOT, 0);
+};
+
+Merge_conditionContext.prototype.T_AND = function() {
+ return this.getToken(HiveSqlParser.T_AND, 0);
+};
+
+Merge_conditionContext.prototype.bool_expr = function() {
+ return this.getTypedRuleContext(Bool_exprContext,0);
+};
+
+Merge_conditionContext.prototype.T_ELSE = function() {
+ return this.getToken(HiveSqlParser.T_ELSE, 0);
+};
+
+Merge_conditionContext.prototype.T_IGNORE = function() {
+ return this.getToken(HiveSqlParser.T_IGNORE, 0);
+};
+
+Merge_conditionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterMerge_condition(this);
+ }
+};
+
+Merge_conditionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitMerge_condition(this);
+ }
+};
+
+Merge_conditionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitMerge_condition(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Merge_conditionContext = Merge_conditionContext;
+
+HiveSqlParser.prototype.merge_condition = function() {
+
+ var localctx = new Merge_conditionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 356, HiveSqlParser.RULE_merge_condition);
+ var _la = 0; // Token type
+ try {
+ this.state = 2564;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case HiveSqlParser.T_WHEN:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2551;
+ this.match(HiveSqlParser.T_WHEN);
+ this.state = 2553;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_NOT) {
+ this.state = 2552;
+ this.match(HiveSqlParser.T_NOT);
+ }
+
+ this.state = 2555;
+ this.match(HiveSqlParser.T_MATCHED);
+ this.state = 2558;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_AND) {
+ this.state = 2556;
+ this.match(HiveSqlParser.T_AND);
+ this.state = 2557;
+ this.bool_expr(0);
+ }
+
+ this.state = 2560;
+ this.match(HiveSqlParser.T_THEN);
+ this.state = 2561;
+ this.merge_action();
+ break;
+ case HiveSqlParser.T_ELSE:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 2562;
+ this.match(HiveSqlParser.T_ELSE);
+ this.state = 2563;
+ this.match(HiveSqlParser.T_IGNORE);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Merge_actionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_merge_action;
+ return this;
+}
+
+Merge_actionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Merge_actionContext.prototype.constructor = Merge_actionContext;
+
+Merge_actionContext.prototype.T_INSERT = function() {
+ return this.getToken(HiveSqlParser.T_INSERT, 0);
+};
+
+Merge_actionContext.prototype.T_VALUES = function() {
+ return this.getToken(HiveSqlParser.T_VALUES, 0);
+};
+
+Merge_actionContext.prototype.insert_stmt_row = function() {
+ return this.getTypedRuleContext(Insert_stmt_rowContext,0);
+};
+
+Merge_actionContext.prototype.insert_stmt_cols = function() {
+ return this.getTypedRuleContext(Insert_stmt_colsContext,0);
+};
+
+Merge_actionContext.prototype.T_UPDATE = function() {
+ return this.getToken(HiveSqlParser.T_UPDATE, 0);
+};
+
+Merge_actionContext.prototype.T_SET = function() {
+ return this.getToken(HiveSqlParser.T_SET, 0);
+};
+
+Merge_actionContext.prototype.assignment_stmt_item = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Assignment_stmt_itemContext);
+ } else {
+ return this.getTypedRuleContext(Assignment_stmt_itemContext,i);
+ }
+};
+
+Merge_actionContext.prototype.T_COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_COMMA);
+ } else {
+ return this.getToken(HiveSqlParser.T_COMMA, i);
+ }
+};
+
+
+Merge_actionContext.prototype.where_clause = function() {
+ return this.getTypedRuleContext(Where_clauseContext,0);
+};
+
+Merge_actionContext.prototype.T_DELETE = function() {
+ return this.getToken(HiveSqlParser.T_DELETE, 0);
+};
+
+Merge_actionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterMerge_action(this);
+ }
+};
+
+Merge_actionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitMerge_action(this);
+ }
+};
+
+Merge_actionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitMerge_action(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Merge_actionContext = Merge_actionContext;
+
+HiveSqlParser.prototype.merge_action = function() {
+
+ var localctx = new Merge_actionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 358, HiveSqlParser.RULE_merge_action);
+ var _la = 0; // Token type
+ try {
+ this.state = 2586;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case HiveSqlParser.T_INSERT:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2566;
+ this.match(HiveSqlParser.T_INSERT);
+ this.state = 2568;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_OPEN_P) {
+ this.state = 2567;
+ this.insert_stmt_cols();
+ }
+
+ this.state = 2570;
+ this.match(HiveSqlParser.T_VALUES);
+ this.state = 2571;
+ this.insert_stmt_row();
+ break;
+ case HiveSqlParser.T_UPDATE:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 2572;
+ this.match(HiveSqlParser.T_UPDATE);
+ this.state = 2573;
+ this.match(HiveSqlParser.T_SET);
+ this.state = 2574;
+ this.assignment_stmt_item();
+ this.state = 2579;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,322,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 2575;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 2576;
+ this.assignment_stmt_item();
+ }
+ this.state = 2581;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,322,this._ctx);
+ }
+
+ this.state = 2583;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,323,this._ctx);
+ if(la_===1) {
+ this.state = 2582;
+ this.where_clause();
+
+ }
+ break;
+ case HiveSqlParser.T_DELETE:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 2585;
+ this.match(HiveSqlParser.T_DELETE);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Delete_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_delete_stmt;
+ return this;
+}
+
+Delete_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Delete_stmtContext.prototype.constructor = Delete_stmtContext;
+
+Delete_stmtContext.prototype.T_DELETE = function() {
+ return this.getToken(HiveSqlParser.T_DELETE, 0);
+};
+
+Delete_stmtContext.prototype.table_name = function() {
+ return this.getTypedRuleContext(Table_nameContext,0);
+};
+
+Delete_stmtContext.prototype.T_FROM = function() {
+ return this.getToken(HiveSqlParser.T_FROM, 0);
+};
+
+Delete_stmtContext.prototype.delete_alias = function() {
+ return this.getTypedRuleContext(Delete_aliasContext,0);
+};
+
+Delete_stmtContext.prototype.where_clause = function() {
+ return this.getTypedRuleContext(Where_clauseContext,0);
+};
+
+Delete_stmtContext.prototype.T_ALL = function() {
+ return this.getToken(HiveSqlParser.T_ALL, 0);
+};
+
+Delete_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterDelete_stmt(this);
+ }
+};
+
+Delete_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitDelete_stmt(this);
+ }
+};
+
+Delete_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitDelete_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Delete_stmtContext = Delete_stmtContext;
+
+HiveSqlParser.prototype.delete_stmt = function() {
+
+ var localctx = new Delete_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 360, HiveSqlParser.RULE_delete_stmt);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2588;
+ this.match(HiveSqlParser.T_DELETE);
+ this.state = 2590;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,325,this._ctx);
+ if(la_===1) {
+ this.state = 2589;
+ this.match(HiveSqlParser.T_FROM);
+
+ }
+ this.state = 2592;
+ this.table_name();
+ this.state = 2594;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,326,this._ctx);
+ if(la_===1) {
+ this.state = 2593;
+ this.delete_alias();
+
+ }
+ this.state = 2598;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,327,this._ctx);
+ if(la_===1) {
+ this.state = 2596;
+ this.where_clause();
+
+ } else if(la_===2) {
+ this.state = 2597;
+ this.match(HiveSqlParser.T_ALL);
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Delete_aliasContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_delete_alias;
+ return this;
+}
+
+Delete_aliasContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Delete_aliasContext.prototype.constructor = Delete_aliasContext;
+
+Delete_aliasContext.prototype.ident = function() {
+ return this.getTypedRuleContext(IdentContext,0);
+};
+
+Delete_aliasContext.prototype.T_AS = function() {
+ return this.getToken(HiveSqlParser.T_AS, 0);
+};
+
+Delete_aliasContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterDelete_alias(this);
+ }
+};
+
+Delete_aliasContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitDelete_alias(this);
+ }
+};
+
+Delete_aliasContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitDelete_alias(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Delete_aliasContext = Delete_aliasContext;
+
+HiveSqlParser.prototype.delete_alias = function() {
+
+ var localctx = new Delete_aliasContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 362, HiveSqlParser.RULE_delete_alias);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2600;
+ if (!( !this._input.LT(1).getText().equalsIgnoreCase("ALL"))) {
+ throw new antlr4.error.FailedPredicateException(this, "!this._input.LT(1).getText().equalsIgnoreCase(\"ALL\")");
+ }
+ this.state = 2602;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,328,this._ctx);
+ if(la_===1) {
+ this.state = 2601;
+ this.match(HiveSqlParser.T_AS);
+
+ }
+ this.state = 2604;
+ this.ident();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Describe_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_describe_stmt;
+ return this;
+}
+
+Describe_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Describe_stmtContext.prototype.constructor = Describe_stmtContext;
+
+Describe_stmtContext.prototype.table_name = function() {
+ return this.getTypedRuleContext(Table_nameContext,0);
+};
+
+Describe_stmtContext.prototype.T_DESCRIBE = function() {
+ return this.getToken(HiveSqlParser.T_DESCRIBE, 0);
+};
+
+Describe_stmtContext.prototype.T_DESC = function() {
+ return this.getToken(HiveSqlParser.T_DESC, 0);
+};
+
+Describe_stmtContext.prototype.T_TABLE = function() {
+ return this.getToken(HiveSqlParser.T_TABLE, 0);
+};
+
+Describe_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterDescribe_stmt(this);
+ }
+};
+
+Describe_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitDescribe_stmt(this);
+ }
+};
+
+Describe_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitDescribe_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Describe_stmtContext = Describe_stmtContext;
+
+HiveSqlParser.prototype.describe_stmt = function() {
+
+ var localctx = new Describe_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 364, HiveSqlParser.RULE_describe_stmt);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2606;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_DESC || _la===HiveSqlParser.T_DESCRIBE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 2608;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,329,this._ctx);
+ if(la_===1) {
+ this.state = 2607;
+ this.match(HiveSqlParser.T_TABLE);
+
+ }
+ this.state = 2610;
+ this.table_name();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Bool_exprContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_bool_expr;
+ return this;
+}
+
+Bool_exprContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Bool_exprContext.prototype.constructor = Bool_exprContext;
+
+Bool_exprContext.prototype.T_OPEN_P = function() {
+ return this.getToken(HiveSqlParser.T_OPEN_P, 0);
+};
+
+Bool_exprContext.prototype.bool_expr = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Bool_exprContext);
+ } else {
+ return this.getTypedRuleContext(Bool_exprContext,i);
+ }
+};
+
+Bool_exprContext.prototype.T_CLOSE_P = function() {
+ return this.getToken(HiveSqlParser.T_CLOSE_P, 0);
+};
+
+Bool_exprContext.prototype.T_NOT = function() {
+ return this.getToken(HiveSqlParser.T_NOT, 0);
+};
+
+Bool_exprContext.prototype.bool_expr_atom = function() {
+ return this.getTypedRuleContext(Bool_expr_atomContext,0);
+};
+
+Bool_exprContext.prototype.bool_expr_logical_operator = function() {
+ return this.getTypedRuleContext(Bool_expr_logical_operatorContext,0);
+};
+
+Bool_exprContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterBool_expr(this);
+ }
+};
+
+Bool_exprContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitBool_expr(this);
+ }
+};
+
+Bool_exprContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitBool_expr(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+HiveSqlParser.prototype.bool_expr = function(_p) {
+ if(_p===undefined) {
+ _p = 0;
+ }
+ var _parentctx = this._ctx;
+ var _parentState = this.state;
+ var localctx = new Bool_exprContext(this, this._ctx, _parentState);
+ var _prevctx = localctx;
+ var _startState = 366;
+ this.enterRecursionRule(localctx, 366, HiveSqlParser.RULE_bool_expr, _p);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2621;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,331,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 2614;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_NOT) {
+ this.state = 2613;
+ this.match(HiveSqlParser.T_NOT);
+ }
+
+ this.state = 2616;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 2617;
+ this.bool_expr(0);
+ this.state = 2618;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ break;
+
+ case 2:
+ this.state = 2620;
+ this.bool_expr_atom();
+ break;
+
+ }
+ this._ctx.stop = this._input.LT(-1);
+ this.state = 2629;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,332,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ if(this._parseListeners!==null) {
+ this.triggerExitRuleEvent();
+ }
+ _prevctx = localctx;
+ localctx = new Bool_exprContext(this, _parentctx, _parentState);
+ this.pushNewRecursionContext(localctx, _startState, HiveSqlParser.RULE_bool_expr);
+ this.state = 2623;
+ if (!( this.precpred(this._ctx, 2))) {
+ throw new antlr4.error.FailedPredicateException(this, "this.precpred(this._ctx, 2)");
+ }
+ this.state = 2624;
+ this.bool_expr_logical_operator();
+ this.state = 2625;
+ this.bool_expr(3);
+ }
+ this.state = 2631;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,332,this._ctx);
+ }
+
+ } catch( error) {
+ if(error instanceof antlr4.error.RecognitionException) {
+ localctx.exception = error;
+ this._errHandler.reportError(this, error);
+ this._errHandler.recover(this, error);
+ } else {
+ throw error;
+ }
+ } finally {
+ this.unrollRecursionContexts(_parentctx)
+ }
+ return localctx;
+};
+
+
+function Bool_expr_atomContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_bool_expr_atom;
+ return this;
+}
+
+Bool_expr_atomContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Bool_expr_atomContext.prototype.constructor = Bool_expr_atomContext;
+
+Bool_expr_atomContext.prototype.bool_expr_unary = function() {
+ return this.getTypedRuleContext(Bool_expr_unaryContext,0);
+};
+
+Bool_expr_atomContext.prototype.bool_expr_binary = function() {
+ return this.getTypedRuleContext(Bool_expr_binaryContext,0);
+};
+
+Bool_expr_atomContext.prototype.expr = function() {
+ return this.getTypedRuleContext(ExprContext,0);
+};
+
+Bool_expr_atomContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterBool_expr_atom(this);
+ }
+};
+
+Bool_expr_atomContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitBool_expr_atom(this);
+ }
+};
+
+Bool_expr_atomContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitBool_expr_atom(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Bool_expr_atomContext = Bool_expr_atomContext;
+
+HiveSqlParser.prototype.bool_expr_atom = function() {
+
+ var localctx = new Bool_expr_atomContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 368, HiveSqlParser.RULE_bool_expr_atom);
+ try {
+ this.state = 2635;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,333,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2632;
+ this.bool_expr_unary();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 2633;
+ this.bool_expr_binary();
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 2634;
+ this.expr(0);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Bool_expr_unaryContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_bool_expr_unary;
+ return this;
+}
+
+Bool_expr_unaryContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Bool_expr_unaryContext.prototype.constructor = Bool_expr_unaryContext;
+
+Bool_expr_unaryContext.prototype.expr = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ExprContext);
+ } else {
+ return this.getTypedRuleContext(ExprContext,i);
+ }
+};
+
+Bool_expr_unaryContext.prototype.T_IS = function() {
+ return this.getToken(HiveSqlParser.T_IS, 0);
+};
+
+Bool_expr_unaryContext.prototype.T_NULL = function() {
+ return this.getToken(HiveSqlParser.T_NULL, 0);
+};
+
+Bool_expr_unaryContext.prototype.T_NOT = function() {
+ return this.getToken(HiveSqlParser.T_NOT, 0);
+};
+
+Bool_expr_unaryContext.prototype.T_BETWEEN = function() {
+ return this.getToken(HiveSqlParser.T_BETWEEN, 0);
+};
+
+Bool_expr_unaryContext.prototype.T_AND = function() {
+ return this.getToken(HiveSqlParser.T_AND, 0);
+};
+
+Bool_expr_unaryContext.prototype.T_EXISTS = function() {
+ return this.getToken(HiveSqlParser.T_EXISTS, 0);
+};
+
+Bool_expr_unaryContext.prototype.T_OPEN_P = function() {
+ return this.getToken(HiveSqlParser.T_OPEN_P, 0);
+};
+
+Bool_expr_unaryContext.prototype.select_stmt = function() {
+ return this.getTypedRuleContext(Select_stmtContext,0);
+};
+
+Bool_expr_unaryContext.prototype.T_CLOSE_P = function() {
+ return this.getToken(HiveSqlParser.T_CLOSE_P, 0);
+};
+
+Bool_expr_unaryContext.prototype.bool_expr_single_in = function() {
+ return this.getTypedRuleContext(Bool_expr_single_inContext,0);
+};
+
+Bool_expr_unaryContext.prototype.bool_expr_multi_in = function() {
+ return this.getTypedRuleContext(Bool_expr_multi_inContext,0);
+};
+
+Bool_expr_unaryContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterBool_expr_unary(this);
+ }
+};
+
+Bool_expr_unaryContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitBool_expr_unary(this);
+ }
+};
+
+Bool_expr_unaryContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitBool_expr_unary(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Bool_expr_unaryContext = Bool_expr_unaryContext;
+
+HiveSqlParser.prototype.bool_expr_unary = function() {
+
+ var localctx = new Bool_expr_unaryContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 370, HiveSqlParser.RULE_bool_expr_unary);
+ var _la = 0; // Token type
+ try {
+ this.state = 2660;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,336,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2637;
+ this.expr(0);
+ this.state = 2638;
+ this.match(HiveSqlParser.T_IS);
+ this.state = 2640;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_NOT) {
+ this.state = 2639;
+ this.match(HiveSqlParser.T_NOT);
+ }
+
+ this.state = 2642;
+ this.match(HiveSqlParser.T_NULL);
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 2644;
+ this.expr(0);
+ this.state = 2645;
+ this.match(HiveSqlParser.T_BETWEEN);
+ this.state = 2646;
+ this.expr(0);
+ this.state = 2647;
+ this.match(HiveSqlParser.T_AND);
+ this.state = 2648;
+ this.expr(0);
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 2651;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_NOT) {
+ this.state = 2650;
+ this.match(HiveSqlParser.T_NOT);
+ }
+
+ this.state = 2653;
+ this.match(HiveSqlParser.T_EXISTS);
+ this.state = 2654;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 2655;
+ this.select_stmt();
+ this.state = 2656;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ break;
+
+ case 4:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 2658;
+ this.bool_expr_single_in();
+ break;
+
+ case 5:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 2659;
+ this.bool_expr_multi_in();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Bool_expr_single_inContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_bool_expr_single_in;
+ return this;
+}
+
+Bool_expr_single_inContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Bool_expr_single_inContext.prototype.constructor = Bool_expr_single_inContext;
+
+Bool_expr_single_inContext.prototype.expr = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ExprContext);
+ } else {
+ return this.getTypedRuleContext(ExprContext,i);
+ }
+};
+
+Bool_expr_single_inContext.prototype.T_IN = function() {
+ return this.getToken(HiveSqlParser.T_IN, 0);
+};
+
+Bool_expr_single_inContext.prototype.T_OPEN_P = function() {
+ return this.getToken(HiveSqlParser.T_OPEN_P, 0);
+};
+
+Bool_expr_single_inContext.prototype.T_CLOSE_P = function() {
+ return this.getToken(HiveSqlParser.T_CLOSE_P, 0);
+};
+
+Bool_expr_single_inContext.prototype.select_stmt = function() {
+ return this.getTypedRuleContext(Select_stmtContext,0);
+};
+
+Bool_expr_single_inContext.prototype.T_NOT = function() {
+ return this.getToken(HiveSqlParser.T_NOT, 0);
+};
+
+Bool_expr_single_inContext.prototype.T_COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_COMMA);
+ } else {
+ return this.getToken(HiveSqlParser.T_COMMA, i);
+ }
+};
+
+
+Bool_expr_single_inContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterBool_expr_single_in(this);
+ }
+};
+
+Bool_expr_single_inContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitBool_expr_single_in(this);
+ }
+};
+
+Bool_expr_single_inContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitBool_expr_single_in(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Bool_expr_single_inContext = Bool_expr_single_inContext;
+
+HiveSqlParser.prototype.bool_expr_single_in = function() {
+
+ var localctx = new Bool_expr_single_inContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 372, HiveSqlParser.RULE_bool_expr_single_in);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2662;
+ this.expr(0);
+ this.state = 2664;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_NOT) {
+ this.state = 2663;
+ this.match(HiveSqlParser.T_NOT);
+ }
+
+ this.state = 2666;
+ this.match(HiveSqlParser.T_IN);
+ this.state = 2667;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 2677;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,339,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 2668;
+ this.expr(0);
+ this.state = 2673;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===HiveSqlParser.T_COMMA) {
+ this.state = 2669;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 2670;
+ this.expr(0);
+ this.state = 2675;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+
+ case 2:
+ this.state = 2676;
+ this.select_stmt();
+ break;
+
+ }
+ this.state = 2679;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Bool_expr_multi_inContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_bool_expr_multi_in;
+ return this;
+}
+
+Bool_expr_multi_inContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Bool_expr_multi_inContext.prototype.constructor = Bool_expr_multi_inContext;
+
+Bool_expr_multi_inContext.prototype.T_OPEN_P = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_OPEN_P);
+ } else {
+ return this.getToken(HiveSqlParser.T_OPEN_P, i);
+ }
+};
+
+
+Bool_expr_multi_inContext.prototype.expr = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ExprContext);
+ } else {
+ return this.getTypedRuleContext(ExprContext,i);
+ }
+};
+
+Bool_expr_multi_inContext.prototype.T_CLOSE_P = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_CLOSE_P);
+ } else {
+ return this.getToken(HiveSqlParser.T_CLOSE_P, i);
+ }
+};
+
+
+Bool_expr_multi_inContext.prototype.T_IN = function() {
+ return this.getToken(HiveSqlParser.T_IN, 0);
+};
+
+Bool_expr_multi_inContext.prototype.select_stmt = function() {
+ return this.getTypedRuleContext(Select_stmtContext,0);
+};
+
+Bool_expr_multi_inContext.prototype.T_COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_COMMA);
+ } else {
+ return this.getToken(HiveSqlParser.T_COMMA, i);
+ }
+};
+
+
+Bool_expr_multi_inContext.prototype.T_NOT = function() {
+ return this.getToken(HiveSqlParser.T_NOT, 0);
+};
+
+Bool_expr_multi_inContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterBool_expr_multi_in(this);
+ }
+};
+
+Bool_expr_multi_inContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitBool_expr_multi_in(this);
+ }
+};
+
+Bool_expr_multi_inContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitBool_expr_multi_in(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Bool_expr_multi_inContext = Bool_expr_multi_inContext;
+
+HiveSqlParser.prototype.bool_expr_multi_in = function() {
+
+ var localctx = new Bool_expr_multi_inContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 374, HiveSqlParser.RULE_bool_expr_multi_in);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2681;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 2682;
+ this.expr(0);
+ this.state = 2687;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===HiveSqlParser.T_COMMA) {
+ this.state = 2683;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 2684;
+ this.expr(0);
+ this.state = 2689;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 2690;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ this.state = 2692;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_NOT) {
+ this.state = 2691;
+ this.match(HiveSqlParser.T_NOT);
+ }
+
+ this.state = 2694;
+ this.match(HiveSqlParser.T_IN);
+ this.state = 2695;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 2696;
+ this.select_stmt();
+ this.state = 2697;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Bool_expr_binaryContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_bool_expr_binary;
+ return this;
+}
+
+Bool_expr_binaryContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Bool_expr_binaryContext.prototype.constructor = Bool_expr_binaryContext;
+
+Bool_expr_binaryContext.prototype.expr = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ExprContext);
+ } else {
+ return this.getTypedRuleContext(ExprContext,i);
+ }
+};
+
+Bool_expr_binaryContext.prototype.bool_expr_binary_operator = function() {
+ return this.getTypedRuleContext(Bool_expr_binary_operatorContext,0);
+};
+
+Bool_expr_binaryContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterBool_expr_binary(this);
+ }
+};
+
+Bool_expr_binaryContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitBool_expr_binary(this);
+ }
+};
+
+Bool_expr_binaryContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitBool_expr_binary(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Bool_expr_binaryContext = Bool_expr_binaryContext;
+
+HiveSqlParser.prototype.bool_expr_binary = function() {
+
+ var localctx = new Bool_expr_binaryContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 376, HiveSqlParser.RULE_bool_expr_binary);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2699;
+ this.expr(0);
+ this.state = 2700;
+ this.bool_expr_binary_operator();
+ this.state = 2701;
+ this.expr(0);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Bool_expr_logical_operatorContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_bool_expr_logical_operator;
+ return this;
+}
+
+Bool_expr_logical_operatorContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Bool_expr_logical_operatorContext.prototype.constructor = Bool_expr_logical_operatorContext;
+
+Bool_expr_logical_operatorContext.prototype.T_AND = function() {
+ return this.getToken(HiveSqlParser.T_AND, 0);
+};
+
+Bool_expr_logical_operatorContext.prototype.T_OR = function() {
+ return this.getToken(HiveSqlParser.T_OR, 0);
+};
+
+Bool_expr_logical_operatorContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterBool_expr_logical_operator(this);
+ }
+};
+
+Bool_expr_logical_operatorContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitBool_expr_logical_operator(this);
+ }
+};
+
+Bool_expr_logical_operatorContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitBool_expr_logical_operator(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Bool_expr_logical_operatorContext = Bool_expr_logical_operatorContext;
+
+HiveSqlParser.prototype.bool_expr_logical_operator = function() {
+
+ var localctx = new Bool_expr_logical_operatorContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 378, HiveSqlParser.RULE_bool_expr_logical_operator);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2703;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_OR || _la===HiveSqlParser.T_AND)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Bool_expr_binary_operatorContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_bool_expr_binary_operator;
+ return this;
+}
+
+Bool_expr_binary_operatorContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Bool_expr_binary_operatorContext.prototype.constructor = Bool_expr_binary_operatorContext;
+
+Bool_expr_binary_operatorContext.prototype.T_EQUAL = function() {
+ return this.getToken(HiveSqlParser.T_EQUAL, 0);
+};
+
+Bool_expr_binary_operatorContext.prototype.T_EQUAL2 = function() {
+ return this.getToken(HiveSqlParser.T_EQUAL2, 0);
+};
+
+Bool_expr_binary_operatorContext.prototype.T_NOTEQUAL = function() {
+ return this.getToken(HiveSqlParser.T_NOTEQUAL, 0);
+};
+
+Bool_expr_binary_operatorContext.prototype.T_NOTEQUAL2 = function() {
+ return this.getToken(HiveSqlParser.T_NOTEQUAL2, 0);
+};
+
+Bool_expr_binary_operatorContext.prototype.T_LESS = function() {
+ return this.getToken(HiveSqlParser.T_LESS, 0);
+};
+
+Bool_expr_binary_operatorContext.prototype.T_LESSEQUAL = function() {
+ return this.getToken(HiveSqlParser.T_LESSEQUAL, 0);
+};
+
+Bool_expr_binary_operatorContext.prototype.T_GREATER = function() {
+ return this.getToken(HiveSqlParser.T_GREATER, 0);
+};
+
+Bool_expr_binary_operatorContext.prototype.T_GREATEREQUAL = function() {
+ return this.getToken(HiveSqlParser.T_GREATEREQUAL, 0);
+};
+
+Bool_expr_binary_operatorContext.prototype.T_LIKE = function() {
+ return this.getToken(HiveSqlParser.T_LIKE, 0);
+};
+
+Bool_expr_binary_operatorContext.prototype.T_RLIKE = function() {
+ return this.getToken(HiveSqlParser.T_RLIKE, 0);
+};
+
+Bool_expr_binary_operatorContext.prototype.T_REGEXP = function() {
+ return this.getToken(HiveSqlParser.T_REGEXP, 0);
+};
+
+Bool_expr_binary_operatorContext.prototype.T_NOT = function() {
+ return this.getToken(HiveSqlParser.T_NOT, 0);
+};
+
+Bool_expr_binary_operatorContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterBool_expr_binary_operator(this);
+ }
+};
+
+Bool_expr_binary_operatorContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitBool_expr_binary_operator(this);
+ }
+};
+
+Bool_expr_binary_operatorContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitBool_expr_binary_operator(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Bool_expr_binary_operatorContext = Bool_expr_binary_operatorContext;
+
+HiveSqlParser.prototype.bool_expr_binary_operator = function() {
+
+ var localctx = new Bool_expr_binary_operatorContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 380, HiveSqlParser.RULE_bool_expr_binary_operator);
+ var _la = 0; // Token type
+ try {
+ this.state = 2717;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case HiveSqlParser.T_EQUAL:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2705;
+ this.match(HiveSqlParser.T_EQUAL);
+ break;
+ case HiveSqlParser.T_EQUAL2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 2706;
+ this.match(HiveSqlParser.T_EQUAL2);
+ break;
+ case HiveSqlParser.T_NOTEQUAL:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 2707;
+ this.match(HiveSqlParser.T_NOTEQUAL);
+ break;
+ case HiveSqlParser.T_NOTEQUAL2:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 2708;
+ this.match(HiveSqlParser.T_NOTEQUAL2);
+ break;
+ case HiveSqlParser.T_LESS:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 2709;
+ this.match(HiveSqlParser.T_LESS);
+ break;
+ case HiveSqlParser.T_LESSEQUAL:
+ this.enterOuterAlt(localctx, 6);
+ this.state = 2710;
+ this.match(HiveSqlParser.T_LESSEQUAL);
+ break;
+ case HiveSqlParser.T_GREATER:
+ this.enterOuterAlt(localctx, 7);
+ this.state = 2711;
+ this.match(HiveSqlParser.T_GREATER);
+ break;
+ case HiveSqlParser.T_GREATEREQUAL:
+ this.enterOuterAlt(localctx, 8);
+ this.state = 2712;
+ this.match(HiveSqlParser.T_GREATEREQUAL);
+ break;
+ case HiveSqlParser.T_NOT:
+ case HiveSqlParser.T_LIKE:
+ case HiveSqlParser.T_RLIKE:
+ case HiveSqlParser.T_REGEXP:
+ this.enterOuterAlt(localctx, 9);
+ this.state = 2714;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_NOT) {
+ this.state = 2713;
+ this.match(HiveSqlParser.T_NOT);
+ }
+
+ this.state = 2716;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_LIKE || _la===HiveSqlParser.T_RLIKE || _la===HiveSqlParser.T_REGEXP)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function ExprContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_expr;
+ return this;
+}
+
+ExprContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+ExprContext.prototype.constructor = ExprContext;
+
+ExprContext.prototype.T_OPEN_P = function() {
+ return this.getToken(HiveSqlParser.T_OPEN_P, 0);
+};
+
+ExprContext.prototype.select_stmt = function() {
+ return this.getTypedRuleContext(Select_stmtContext,0);
+};
+
+ExprContext.prototype.T_CLOSE_P = function() {
+ return this.getToken(HiveSqlParser.T_CLOSE_P, 0);
+};
+
+ExprContext.prototype.expr = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ExprContext);
+ } else {
+ return this.getTypedRuleContext(ExprContext,i);
+ }
+};
+
+ExprContext.prototype.expr_interval = function() {
+ return this.getTypedRuleContext(Expr_intervalContext,0);
+};
+
+ExprContext.prototype.expr_concat = function() {
+ return this.getTypedRuleContext(Expr_concatContext,0);
+};
+
+ExprContext.prototype.expr_case = function() {
+ return this.getTypedRuleContext(Expr_caseContext,0);
+};
+
+ExprContext.prototype.expr_cursor_attribute = function() {
+ return this.getTypedRuleContext(Expr_cursor_attributeContext,0);
+};
+
+ExprContext.prototype.expr_agg_window_func = function() {
+ return this.getTypedRuleContext(Expr_agg_window_funcContext,0);
+};
+
+ExprContext.prototype.expr_spec_func = function() {
+ return this.getTypedRuleContext(Expr_spec_funcContext,0);
+};
+
+ExprContext.prototype.expr_func = function() {
+ return this.getTypedRuleContext(Expr_funcContext,0);
+};
+
+ExprContext.prototype.expr_atom = function() {
+ return this.getTypedRuleContext(Expr_atomContext,0);
+};
+
+ExprContext.prototype.T_MUL = function() {
+ return this.getToken(HiveSqlParser.T_MUL, 0);
+};
+
+ExprContext.prototype.T_DIV = function() {
+ return this.getToken(HiveSqlParser.T_DIV, 0);
+};
+
+ExprContext.prototype.T_ADD = function() {
+ return this.getToken(HiveSqlParser.T_ADD, 0);
+};
+
+ExprContext.prototype.T_SUB = function() {
+ return this.getToken(HiveSqlParser.T_SUB, 0);
+};
+
+ExprContext.prototype.interval_item = function() {
+ return this.getTypedRuleContext(Interval_itemContext,0);
+};
+
+ExprContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterExpr(this);
+ }
+};
+
+ExprContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitExpr(this);
+ }
+};
+
+ExprContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitExpr(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+HiveSqlParser.prototype.expr = function(_p) {
+ if(_p===undefined) {
+ _p = 0;
+ }
+ var _parentctx = this._ctx;
+ var _parentState = this.state;
+ var localctx = new ExprContext(this, this._ctx, _parentState);
+ var _prevctx = localctx;
+ var _startState = 382;
+ this.enterRecursionRule(localctx, 382, HiveSqlParser.RULE_expr, _p);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2736;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,344,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 2720;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 2721;
+ this.select_stmt();
+ this.state = 2722;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ break;
+
+ case 2:
+ this.state = 2724;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 2725;
+ this.expr(0);
+ this.state = 2726;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ break;
+
+ case 3:
+ this.state = 2728;
+ this.expr_interval();
+ break;
+
+ case 4:
+ this.state = 2729;
+ this.expr_concat();
+ break;
+
+ case 5:
+ this.state = 2730;
+ this.expr_case();
+ break;
+
+ case 6:
+ this.state = 2731;
+ this.expr_cursor_attribute();
+ break;
+
+ case 7:
+ this.state = 2732;
+ this.expr_agg_window_func();
+ break;
+
+ case 8:
+ this.state = 2733;
+ this.expr_spec_func();
+ break;
+
+ case 9:
+ this.state = 2734;
+ this.expr_func();
+ break;
+
+ case 10:
+ this.state = 2735;
+ this.expr_atom();
+ break;
+
+ }
+ this._ctx.stop = this._input.LT(-1);
+ this.state = 2754;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,346,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ if(this._parseListeners!==null) {
+ this.triggerExitRuleEvent();
+ }
+ _prevctx = localctx;
+ this.state = 2752;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,345,this._ctx);
+ switch(la_) {
+ case 1:
+ localctx = new ExprContext(this, _parentctx, _parentState);
+ this.pushNewRecursionContext(localctx, _startState, HiveSqlParser.RULE_expr);
+ this.state = 2738;
+ if (!( this.precpred(this._ctx, 14))) {
+ throw new antlr4.error.FailedPredicateException(this, "this.precpred(this._ctx, 14)");
+ }
+ this.state = 2739;
+ this.match(HiveSqlParser.T_MUL);
+ this.state = 2740;
+ this.expr(15);
+ break;
+
+ case 2:
+ localctx = new ExprContext(this, _parentctx, _parentState);
+ this.pushNewRecursionContext(localctx, _startState, HiveSqlParser.RULE_expr);
+ this.state = 2741;
+ if (!( this.precpred(this._ctx, 13))) {
+ throw new antlr4.error.FailedPredicateException(this, "this.precpred(this._ctx, 13)");
+ }
+ this.state = 2742;
+ this.match(HiveSqlParser.T_DIV);
+ this.state = 2743;
+ this.expr(14);
+ break;
+
+ case 3:
+ localctx = new ExprContext(this, _parentctx, _parentState);
+ this.pushNewRecursionContext(localctx, _startState, HiveSqlParser.RULE_expr);
+ this.state = 2744;
+ if (!( this.precpred(this._ctx, 12))) {
+ throw new antlr4.error.FailedPredicateException(this, "this.precpred(this._ctx, 12)");
+ }
+ this.state = 2745;
+ this.match(HiveSqlParser.T_ADD);
+ this.state = 2746;
+ this.expr(13);
+ break;
+
+ case 4:
+ localctx = new ExprContext(this, _parentctx, _parentState);
+ this.pushNewRecursionContext(localctx, _startState, HiveSqlParser.RULE_expr);
+ this.state = 2747;
+ if (!( this.precpred(this._ctx, 11))) {
+ throw new antlr4.error.FailedPredicateException(this, "this.precpred(this._ctx, 11)");
+ }
+ this.state = 2748;
+ this.match(HiveSqlParser.T_SUB);
+ this.state = 2749;
+ this.expr(12);
+ break;
+
+ case 5:
+ localctx = new ExprContext(this, _parentctx, _parentState);
+ this.pushNewRecursionContext(localctx, _startState, HiveSqlParser.RULE_expr);
+ this.state = 2750;
+ if (!( this.precpred(this._ctx, 15))) {
+ throw new antlr4.error.FailedPredicateException(this, "this.precpred(this._ctx, 15)");
+ }
+ this.state = 2751;
+ this.interval_item();
+ break;
+
+ }
+ }
+ this.state = 2756;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,346,this._ctx);
+ }
+
+ } catch( error) {
+ if(error instanceof antlr4.error.RecognitionException) {
+ localctx.exception = error;
+ this._errHandler.reportError(this, error);
+ this._errHandler.recover(this, error);
+ } else {
+ throw error;
+ }
+ } finally {
+ this.unrollRecursionContexts(_parentctx)
+ }
+ return localctx;
+};
+
+
+function Expr_atomContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_expr_atom;
+ return this;
+}
+
+Expr_atomContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Expr_atomContext.prototype.constructor = Expr_atomContext;
+
+Expr_atomContext.prototype.date_literal = function() {
+ return this.getTypedRuleContext(Date_literalContext,0);
+};
+
+Expr_atomContext.prototype.timestamp_literal = function() {
+ return this.getTypedRuleContext(Timestamp_literalContext,0);
+};
+
+Expr_atomContext.prototype.bool_literal = function() {
+ return this.getTypedRuleContext(Bool_literalContext,0);
+};
+
+Expr_atomContext.prototype.ident = function() {
+ return this.getTypedRuleContext(IdentContext,0);
+};
+
+Expr_atomContext.prototype.string = function() {
+ return this.getTypedRuleContext(StringContext,0);
+};
+
+Expr_atomContext.prototype.dec_number = function() {
+ return this.getTypedRuleContext(Dec_numberContext,0);
+};
+
+Expr_atomContext.prototype.int_number = function() {
+ return this.getTypedRuleContext(Int_numberContext,0);
+};
+
+Expr_atomContext.prototype.null_const = function() {
+ return this.getTypedRuleContext(Null_constContext,0);
+};
+
+Expr_atomContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterExpr_atom(this);
+ }
+};
+
+Expr_atomContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitExpr_atom(this);
+ }
+};
+
+Expr_atomContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitExpr_atom(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Expr_atomContext = Expr_atomContext;
+
+HiveSqlParser.prototype.expr_atom = function() {
+
+ var localctx = new Expr_atomContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 384, HiveSqlParser.RULE_expr_atom);
+ try {
+ this.state = 2765;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,347,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2757;
+ this.date_literal();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 2758;
+ this.timestamp_literal();
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 2759;
+ this.bool_literal();
+ break;
+
+ case 4:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 2760;
+ this.ident();
+ break;
+
+ case 5:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 2761;
+ this.string();
+ break;
+
+ case 6:
+ this.enterOuterAlt(localctx, 6);
+ this.state = 2762;
+ this.dec_number();
+ break;
+
+ case 7:
+ this.enterOuterAlt(localctx, 7);
+ this.state = 2763;
+ this.int_number();
+ break;
+
+ case 8:
+ this.enterOuterAlt(localctx, 8);
+ this.state = 2764;
+ this.null_const();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Expr_intervalContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_expr_interval;
+ return this;
+}
+
+Expr_intervalContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Expr_intervalContext.prototype.constructor = Expr_intervalContext;
+
+Expr_intervalContext.prototype.T_INTERVAL = function() {
+ return this.getToken(HiveSqlParser.T_INTERVAL, 0);
+};
+
+Expr_intervalContext.prototype.expr = function() {
+ return this.getTypedRuleContext(ExprContext,0);
+};
+
+Expr_intervalContext.prototype.interval_item = function() {
+ return this.getTypedRuleContext(Interval_itemContext,0);
+};
+
+Expr_intervalContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterExpr_interval(this);
+ }
+};
+
+Expr_intervalContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitExpr_interval(this);
+ }
+};
+
+Expr_intervalContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitExpr_interval(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Expr_intervalContext = Expr_intervalContext;
+
+HiveSqlParser.prototype.expr_interval = function() {
+
+ var localctx = new Expr_intervalContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 386, HiveSqlParser.RULE_expr_interval);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2767;
+ this.match(HiveSqlParser.T_INTERVAL);
+ this.state = 2768;
+ this.expr(0);
+ this.state = 2769;
+ this.interval_item();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Interval_itemContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_interval_item;
+ return this;
+}
+
+Interval_itemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Interval_itemContext.prototype.constructor = Interval_itemContext;
+
+Interval_itemContext.prototype.T_DAY = function() {
+ return this.getToken(HiveSqlParser.T_DAY, 0);
+};
+
+Interval_itemContext.prototype.T_DAYS = function() {
+ return this.getToken(HiveSqlParser.T_DAYS, 0);
+};
+
+Interval_itemContext.prototype.T_MICROSECOND = function() {
+ return this.getToken(HiveSqlParser.T_MICROSECOND, 0);
+};
+
+Interval_itemContext.prototype.T_MICROSECONDS = function() {
+ return this.getToken(HiveSqlParser.T_MICROSECONDS, 0);
+};
+
+Interval_itemContext.prototype.T_SECOND = function() {
+ return this.getToken(HiveSqlParser.T_SECOND, 0);
+};
+
+Interval_itemContext.prototype.T_SECONDS = function() {
+ return this.getToken(HiveSqlParser.T_SECONDS, 0);
+};
+
+Interval_itemContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterInterval_item(this);
+ }
+};
+
+Interval_itemContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitInterval_item(this);
+ }
+};
+
+Interval_itemContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitInterval_item(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Interval_itemContext = Interval_itemContext;
+
+HiveSqlParser.prototype.interval_item = function() {
+
+ var localctx = new Interval_itemContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 388, HiveSqlParser.RULE_interval_item);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2771;
+ _la = this._input.LA(1);
+ if(!(((((_la - 316)) & ~0x1f) == 0 && ((1 << (_la - 316)) & ((1 << (HiveSqlParser.T_DAY - 316)) | (1 << (HiveSqlParser.T_DAYS - 316)) | (1 << (HiveSqlParser.T_MICROSECOND - 316)) | (1 << (HiveSqlParser.T_MICROSECONDS - 316)) | (1 << (HiveSqlParser.T_SECOND - 316)) | (1 << (HiveSqlParser.T_SECONDS - 316)))) !== 0))) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Expr_concatContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_expr_concat;
+ return this;
+}
+
+Expr_concatContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Expr_concatContext.prototype.constructor = Expr_concatContext;
+
+Expr_concatContext.prototype.expr_concat_item = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Expr_concat_itemContext);
+ } else {
+ return this.getTypedRuleContext(Expr_concat_itemContext,i);
+ }
+};
+
+Expr_concatContext.prototype.T_PIPE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_PIPE);
+ } else {
+ return this.getToken(HiveSqlParser.T_PIPE, i);
+ }
+};
+
+
+Expr_concatContext.prototype.T_CONCAT = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_CONCAT);
+ } else {
+ return this.getToken(HiveSqlParser.T_CONCAT, i);
+ }
+};
+
+
+Expr_concatContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterExpr_concat(this);
+ }
+};
+
+Expr_concatContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitExpr_concat(this);
+ }
+};
+
+Expr_concatContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitExpr_concat(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Expr_concatContext = Expr_concatContext;
+
+HiveSqlParser.prototype.expr_concat = function() {
+
+ var localctx = new Expr_concatContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 390, HiveSqlParser.RULE_expr_concat);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2773;
+ this.expr_concat_item();
+ this.state = 2774;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_PIPE || _la===HiveSqlParser.T_CONCAT)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 2775;
+ this.expr_concat_item();
+ this.state = 2780;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,348,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 2776;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_PIPE || _la===HiveSqlParser.T_CONCAT)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 2777;
+ this.expr_concat_item();
+ }
+ this.state = 2782;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,348,this._ctx);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Expr_concat_itemContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_expr_concat_item;
+ return this;
+}
+
+Expr_concat_itemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Expr_concat_itemContext.prototype.constructor = Expr_concat_itemContext;
+
+Expr_concat_itemContext.prototype.T_OPEN_P = function() {
+ return this.getToken(HiveSqlParser.T_OPEN_P, 0);
+};
+
+Expr_concat_itemContext.prototype.expr = function() {
+ return this.getTypedRuleContext(ExprContext,0);
+};
+
+Expr_concat_itemContext.prototype.T_CLOSE_P = function() {
+ return this.getToken(HiveSqlParser.T_CLOSE_P, 0);
+};
+
+Expr_concat_itemContext.prototype.expr_case = function() {
+ return this.getTypedRuleContext(Expr_caseContext,0);
+};
+
+Expr_concat_itemContext.prototype.expr_agg_window_func = function() {
+ return this.getTypedRuleContext(Expr_agg_window_funcContext,0);
+};
+
+Expr_concat_itemContext.prototype.expr_spec_func = function() {
+ return this.getTypedRuleContext(Expr_spec_funcContext,0);
+};
+
+Expr_concat_itemContext.prototype.expr_func = function() {
+ return this.getTypedRuleContext(Expr_funcContext,0);
+};
+
+Expr_concat_itemContext.prototype.expr_atom = function() {
+ return this.getTypedRuleContext(Expr_atomContext,0);
+};
+
+Expr_concat_itemContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterExpr_concat_item(this);
+ }
+};
+
+Expr_concat_itemContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitExpr_concat_item(this);
+ }
+};
+
+Expr_concat_itemContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitExpr_concat_item(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Expr_concat_itemContext = Expr_concat_itemContext;
+
+HiveSqlParser.prototype.expr_concat_item = function() {
+
+ var localctx = new Expr_concat_itemContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 392, HiveSqlParser.RULE_expr_concat_item);
+ try {
+ this.state = 2792;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,349,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2783;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 2784;
+ this.expr(0);
+ this.state = 2785;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 2787;
+ this.expr_case();
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 2788;
+ this.expr_agg_window_func();
+ break;
+
+ case 4:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 2789;
+ this.expr_spec_func();
+ break;
+
+ case 5:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 2790;
+ this.expr_func();
+ break;
+
+ case 6:
+ this.enterOuterAlt(localctx, 6);
+ this.state = 2791;
+ this.expr_atom();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Expr_caseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_expr_case;
+ return this;
+}
+
+Expr_caseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Expr_caseContext.prototype.constructor = Expr_caseContext;
+
+Expr_caseContext.prototype.expr_case_simple = function() {
+ return this.getTypedRuleContext(Expr_case_simpleContext,0);
+};
+
+Expr_caseContext.prototype.expr_case_searched = function() {
+ return this.getTypedRuleContext(Expr_case_searchedContext,0);
+};
+
+Expr_caseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterExpr_case(this);
+ }
+};
+
+Expr_caseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitExpr_case(this);
+ }
+};
+
+Expr_caseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitExpr_case(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Expr_caseContext = Expr_caseContext;
+
+HiveSqlParser.prototype.expr_case = function() {
+
+ var localctx = new Expr_caseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 394, HiveSqlParser.RULE_expr_case);
+ try {
+ this.state = 2796;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,350,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2794;
+ this.expr_case_simple();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 2795;
+ this.expr_case_searched();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Expr_case_simpleContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_expr_case_simple;
+ return this;
+}
+
+Expr_case_simpleContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Expr_case_simpleContext.prototype.constructor = Expr_case_simpleContext;
+
+Expr_case_simpleContext.prototype.T_CASE = function() {
+ return this.getToken(HiveSqlParser.T_CASE, 0);
+};
+
+Expr_case_simpleContext.prototype.expr = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ExprContext);
+ } else {
+ return this.getTypedRuleContext(ExprContext,i);
+ }
+};
+
+Expr_case_simpleContext.prototype.T_END = function() {
+ return this.getToken(HiveSqlParser.T_END, 0);
+};
+
+Expr_case_simpleContext.prototype.T_WHEN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_WHEN);
+ } else {
+ return this.getToken(HiveSqlParser.T_WHEN, i);
+ }
+};
+
+
+Expr_case_simpleContext.prototype.T_THEN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_THEN);
+ } else {
+ return this.getToken(HiveSqlParser.T_THEN, i);
+ }
+};
+
+
+Expr_case_simpleContext.prototype.T_ELSE = function() {
+ return this.getToken(HiveSqlParser.T_ELSE, 0);
+};
+
+Expr_case_simpleContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterExpr_case_simple(this);
+ }
+};
+
+Expr_case_simpleContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitExpr_case_simple(this);
+ }
+};
+
+Expr_case_simpleContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitExpr_case_simple(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Expr_case_simpleContext = Expr_case_simpleContext;
+
+HiveSqlParser.prototype.expr_case_simple = function() {
+
+ var localctx = new Expr_case_simpleContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 396, HiveSqlParser.RULE_expr_case_simple);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2798;
+ this.match(HiveSqlParser.T_CASE);
+ this.state = 2799;
+ this.expr(0);
+ this.state = 2805;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 2800;
+ this.match(HiveSqlParser.T_WHEN);
+ this.state = 2801;
+ this.expr(0);
+ this.state = 2802;
+ this.match(HiveSqlParser.T_THEN);
+ this.state = 2803;
+ this.expr(0);
+ this.state = 2807;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(_la===HiveSqlParser.T_WHEN);
+ this.state = 2811;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_ELSE) {
+ this.state = 2809;
+ this.match(HiveSqlParser.T_ELSE);
+ this.state = 2810;
+ this.expr(0);
+ }
+
+ this.state = 2813;
+ this.match(HiveSqlParser.T_END);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Expr_case_searchedContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_expr_case_searched;
+ return this;
+}
+
+Expr_case_searchedContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Expr_case_searchedContext.prototype.constructor = Expr_case_searchedContext;
+
+Expr_case_searchedContext.prototype.T_CASE = function() {
+ return this.getToken(HiveSqlParser.T_CASE, 0);
+};
+
+Expr_case_searchedContext.prototype.T_END = function() {
+ return this.getToken(HiveSqlParser.T_END, 0);
+};
+
+Expr_case_searchedContext.prototype.T_WHEN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_WHEN);
+ } else {
+ return this.getToken(HiveSqlParser.T_WHEN, i);
+ }
+};
+
+
+Expr_case_searchedContext.prototype.bool_expr = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Bool_exprContext);
+ } else {
+ return this.getTypedRuleContext(Bool_exprContext,i);
+ }
+};
+
+Expr_case_searchedContext.prototype.T_THEN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_THEN);
+ } else {
+ return this.getToken(HiveSqlParser.T_THEN, i);
+ }
+};
+
+
+Expr_case_searchedContext.prototype.expr = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ExprContext);
+ } else {
+ return this.getTypedRuleContext(ExprContext,i);
+ }
+};
+
+Expr_case_searchedContext.prototype.T_ELSE = function() {
+ return this.getToken(HiveSqlParser.T_ELSE, 0);
+};
+
+Expr_case_searchedContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterExpr_case_searched(this);
+ }
+};
+
+Expr_case_searchedContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitExpr_case_searched(this);
+ }
+};
+
+Expr_case_searchedContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitExpr_case_searched(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Expr_case_searchedContext = Expr_case_searchedContext;
+
+HiveSqlParser.prototype.expr_case_searched = function() {
+
+ var localctx = new Expr_case_searchedContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 398, HiveSqlParser.RULE_expr_case_searched);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2815;
+ this.match(HiveSqlParser.T_CASE);
+ this.state = 2821;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 2816;
+ this.match(HiveSqlParser.T_WHEN);
+ this.state = 2817;
+ this.bool_expr(0);
+ this.state = 2818;
+ this.match(HiveSqlParser.T_THEN);
+ this.state = 2819;
+ this.expr(0);
+ this.state = 2823;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(_la===HiveSqlParser.T_WHEN);
+ this.state = 2827;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_ELSE) {
+ this.state = 2825;
+ this.match(HiveSqlParser.T_ELSE);
+ this.state = 2826;
+ this.expr(0);
+ }
+
+ this.state = 2829;
+ this.match(HiveSqlParser.T_END);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Expr_cursor_attributeContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_expr_cursor_attribute;
+ return this;
+}
+
+Expr_cursor_attributeContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Expr_cursor_attributeContext.prototype.constructor = Expr_cursor_attributeContext;
+
+Expr_cursor_attributeContext.prototype.ident = function() {
+ return this.getTypedRuleContext(IdentContext,0);
+};
+
+Expr_cursor_attributeContext.prototype.T_ISOPEN = function() {
+ return this.getToken(HiveSqlParser.T_ISOPEN, 0);
+};
+
+Expr_cursor_attributeContext.prototype.T_FOUND = function() {
+ return this.getToken(HiveSqlParser.T_FOUND, 0);
+};
+
+Expr_cursor_attributeContext.prototype.T_NOTFOUND = function() {
+ return this.getToken(HiveSqlParser.T_NOTFOUND, 0);
+};
+
+Expr_cursor_attributeContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterExpr_cursor_attribute(this);
+ }
+};
+
+Expr_cursor_attributeContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitExpr_cursor_attribute(this);
+ }
+};
+
+Expr_cursor_attributeContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitExpr_cursor_attribute(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Expr_cursor_attributeContext = Expr_cursor_attributeContext;
+
+HiveSqlParser.prototype.expr_cursor_attribute = function() {
+
+ var localctx = new Expr_cursor_attributeContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 400, HiveSqlParser.RULE_expr_cursor_attribute);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2831;
+ this.ident();
+ this.state = 2832;
+ this.match(HiveSqlParser.T__3);
+ this.state = 2833;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_FOUND || _la===HiveSqlParser.T_ISOPEN || _la===HiveSqlParser.T_NOTFOUND)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Expr_agg_window_funcContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_expr_agg_window_func;
+ return this;
+}
+
+Expr_agg_window_funcContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Expr_agg_window_funcContext.prototype.constructor = Expr_agg_window_funcContext;
+
+Expr_agg_window_funcContext.prototype.T_AVG = function() {
+ return this.getToken(HiveSqlParser.T_AVG, 0);
+};
+
+Expr_agg_window_funcContext.prototype.T_OPEN_P = function() {
+ return this.getToken(HiveSqlParser.T_OPEN_P, 0);
+};
+
+Expr_agg_window_funcContext.prototype.expr = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ExprContext);
+ } else {
+ return this.getTypedRuleContext(ExprContext,i);
+ }
+};
+
+Expr_agg_window_funcContext.prototype.T_CLOSE_P = function() {
+ return this.getToken(HiveSqlParser.T_CLOSE_P, 0);
+};
+
+Expr_agg_window_funcContext.prototype.expr_func_all_distinct = function() {
+ return this.getTypedRuleContext(Expr_func_all_distinctContext,0);
+};
+
+Expr_agg_window_funcContext.prototype.expr_func_over_clause = function() {
+ return this.getTypedRuleContext(Expr_func_over_clauseContext,0);
+};
+
+Expr_agg_window_funcContext.prototype.T_COUNT = function() {
+ return this.getToken(HiveSqlParser.T_COUNT, 0);
+};
+
+Expr_agg_window_funcContext.prototype.T_COUNT_BIG = function() {
+ return this.getToken(HiveSqlParser.T_COUNT_BIG, 0);
+};
+
+Expr_agg_window_funcContext.prototype.T_CUME_DIST = function() {
+ return this.getToken(HiveSqlParser.T_CUME_DIST, 0);
+};
+
+Expr_agg_window_funcContext.prototype.T_DENSE_RANK = function() {
+ return this.getToken(HiveSqlParser.T_DENSE_RANK, 0);
+};
+
+Expr_agg_window_funcContext.prototype.T_FIRST_VALUE = function() {
+ return this.getToken(HiveSqlParser.T_FIRST_VALUE, 0);
+};
+
+Expr_agg_window_funcContext.prototype.T_LAG = function() {
+ return this.getToken(HiveSqlParser.T_LAG, 0);
+};
+
+Expr_agg_window_funcContext.prototype.T_COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_COMMA);
+ } else {
+ return this.getToken(HiveSqlParser.T_COMMA, i);
+ }
+};
+
+
+Expr_agg_window_funcContext.prototype.T_LAST_VALUE = function() {
+ return this.getToken(HiveSqlParser.T_LAST_VALUE, 0);
+};
+
+Expr_agg_window_funcContext.prototype.T_LEAD = function() {
+ return this.getToken(HiveSqlParser.T_LEAD, 0);
+};
+
+Expr_agg_window_funcContext.prototype.T_MAX = function() {
+ return this.getToken(HiveSqlParser.T_MAX, 0);
+};
+
+Expr_agg_window_funcContext.prototype.T_MIN = function() {
+ return this.getToken(HiveSqlParser.T_MIN, 0);
+};
+
+Expr_agg_window_funcContext.prototype.T_RANK = function() {
+ return this.getToken(HiveSqlParser.T_RANK, 0);
+};
+
+Expr_agg_window_funcContext.prototype.T_ROW_NUMBER = function() {
+ return this.getToken(HiveSqlParser.T_ROW_NUMBER, 0);
+};
+
+Expr_agg_window_funcContext.prototype.T_STDEV = function() {
+ return this.getToken(HiveSqlParser.T_STDEV, 0);
+};
+
+Expr_agg_window_funcContext.prototype.T_SUM = function() {
+ return this.getToken(HiveSqlParser.T_SUM, 0);
+};
+
+Expr_agg_window_funcContext.prototype.T_VAR = function() {
+ return this.getToken(HiveSqlParser.T_VAR, 0);
+};
+
+Expr_agg_window_funcContext.prototype.T_VARIANCE = function() {
+ return this.getToken(HiveSqlParser.T_VARIANCE, 0);
+};
+
+Expr_agg_window_funcContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterExpr_agg_window_func(this);
+ }
+};
+
+Expr_agg_window_funcContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitExpr_agg_window_func(this);
+ }
+};
+
+Expr_agg_window_funcContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitExpr_agg_window_func(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Expr_agg_window_funcContext = Expr_agg_window_funcContext;
+
+HiveSqlParser.prototype.expr_agg_window_func = function() {
+
+ var localctx = new Expr_agg_window_funcContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 402, HiveSqlParser.RULE_expr_agg_window_func);
+ var _la = 0; // Token type
+ try {
+ this.state = 2987;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case HiveSqlParser.T_AVG:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2835;
+ this.match(HiveSqlParser.T_AVG);
+ this.state = 2836;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 2838;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,355,this._ctx);
+ if(la_===1) {
+ this.state = 2837;
+ this.expr_func_all_distinct();
+
+ }
+ this.state = 2840;
+ this.expr(0);
+ this.state = 2841;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ this.state = 2843;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,356,this._ctx);
+ if(la_===1) {
+ this.state = 2842;
+ this.expr_func_over_clause();
+
+ }
+ break;
+ case HiveSqlParser.T_COUNT:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 2845;
+ this.match(HiveSqlParser.T_COUNT);
+ this.state = 2846;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 2852;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case HiveSqlParser.T__8:
+ case HiveSqlParser.T__9:
+ case HiveSqlParser.T_GO:
+ case HiveSqlParser.T_BEGIN:
+ case HiveSqlParser.T_EXCEPTION:
+ case HiveSqlParser.L_ID:
+ case HiveSqlParser.T_THEN:
+ case HiveSqlParser.T_NULL:
+ case HiveSqlParser.T_SET:
+ case HiveSqlParser.T_OPEN_P:
+ case HiveSqlParser.T_ALLOCATE:
+ case HiveSqlParser.T_CURSOR:
+ case HiveSqlParser.T_FOR:
+ case HiveSqlParser.T_RESULT:
+ case HiveSqlParser.T_PROCEDURE:
+ case HiveSqlParser.T_ASSOCIATE:
+ case HiveSqlParser.T_LOCATOR:
+ case HiveSqlParser.T_LOCATORS:
+ case HiveSqlParser.T_WITH:
+ case HiveSqlParser.T_TRANSACTION:
+ case HiveSqlParser.T_BREAK:
+ case HiveSqlParser.T_CALL:
+ case HiveSqlParser.T_DECLARE:
+ case HiveSqlParser.T_AS:
+ case HiveSqlParser.T_CONSTANT:
+ case HiveSqlParser.T_CONDITION:
+ case HiveSqlParser.T_IS:
+ case HiveSqlParser.T_RETURN:
+ case HiveSqlParser.T_ONLY:
+ case HiveSqlParser.T_TO:
+ case HiveSqlParser.T_CALLER:
+ case HiveSqlParser.T_CLIENT:
+ case HiveSqlParser.T_WITHOUT:
+ case HiveSqlParser.T_CONTINUE:
+ case HiveSqlParser.T_EXIT:
+ case HiveSqlParser.T_HANDLER:
+ case HiveSqlParser.T_SQLEXCEPTION:
+ case HiveSqlParser.T_SQLWARNING:
+ case HiveSqlParser.T_NOT:
+ case HiveSqlParser.T_FOUND:
+ case HiveSqlParser.T_GLOBAL:
+ case HiveSqlParser.T_TEMPORARY:
+ case HiveSqlParser.T_TABLE:
+ case HiveSqlParser.T_CREATE:
+ case HiveSqlParser.T_IF:
+ case HiveSqlParser.T_EXISTS:
+ case HiveSqlParser.T_LOCAL:
+ case HiveSqlParser.T_MULTISET:
+ case HiveSqlParser.T_VOLATILE:
+ case HiveSqlParser.T_LIKE:
+ case HiveSqlParser.T_CONSTRAINT:
+ case HiveSqlParser.T_PRIMARY:
+ case HiveSqlParser.T_KEY:
+ case HiveSqlParser.T_UNIQUE:
+ case HiveSqlParser.T_REFERENCES:
+ case HiveSqlParser.T_IDENTITY:
+ case HiveSqlParser.L_INT:
+ case HiveSqlParser.T_AUTO_INCREMENT:
+ case HiveSqlParser.T_ENABLE:
+ case HiveSqlParser.T_CLUSTERED:
+ case HiveSqlParser.T_ASC:
+ case HiveSqlParser.T_DESC:
+ case HiveSqlParser.T_FOREIGN:
+ case HiveSqlParser.T_ON:
+ case HiveSqlParser.T_UPDATE:
+ case HiveSqlParser.T_DELETE:
+ case HiveSqlParser.T_NO:
+ case HiveSqlParser.T_ACTION:
+ case HiveSqlParser.T_RESTRICT:
+ case HiveSqlParser.T_DEFAULT:
+ case HiveSqlParser.T_CASCADE:
+ case HiveSqlParser.T_LOG:
+ case HiveSqlParser.T_FALLBACK:
+ case HiveSqlParser.T_COMMIT:
+ case HiveSqlParser.T_PRESERVE:
+ case HiveSqlParser.T_ROWS:
+ case HiveSqlParser.T_SEGMENT:
+ case HiveSqlParser.T_CREATION:
+ case HiveSqlParser.T_IMMEDIATE:
+ case HiveSqlParser.T_DEFERRED:
+ case HiveSqlParser.T_PCTFREE:
+ case HiveSqlParser.T_PCTUSED:
+ case HiveSqlParser.T_INITRANS:
+ case HiveSqlParser.T_MAXTRANS:
+ case HiveSqlParser.T_NOCOMPRESS:
+ case HiveSqlParser.T_LOGGING:
+ case HiveSqlParser.T_NOLOGGING:
+ case HiveSqlParser.T_STORAGE:
+ case HiveSqlParser.T_TABLESPACE:
+ case HiveSqlParser.T_INDEX:
+ case HiveSqlParser.T_IN:
+ case HiveSqlParser.T_REPLACE:
+ case HiveSqlParser.T_DISTRIBUTE:
+ case HiveSqlParser.T_BY:
+ case HiveSqlParser.T_HASH:
+ case HiveSqlParser.T_LOGGED:
+ case HiveSqlParser.T_COMPRESS:
+ case HiveSqlParser.T_YES:
+ case HiveSqlParser.T_DEFINITION:
+ case HiveSqlParser.T_DROP:
+ case HiveSqlParser.T_DATA:
+ case HiveSqlParser.T_STORED:
+ case HiveSqlParser.T_ROW:
+ case HiveSqlParser.T_FORMAT:
+ case HiveSqlParser.T_DELIMITED:
+ case HiveSqlParser.T_FIELDS:
+ case HiveSqlParser.T_TERMINATED:
+ case HiveSqlParser.T_ESCAPED:
+ case HiveSqlParser.T_COLLECTION:
+ case HiveSqlParser.T_ITEMS:
+ case HiveSqlParser.T_MAP:
+ case HiveSqlParser.T_KEYS:
+ case HiveSqlParser.T_LINES:
+ case HiveSqlParser.T_DEFINED:
+ case HiveSqlParser.T_TEXTIMAGE_ON:
+ case HiveSqlParser.T_COMMENT:
+ case HiveSqlParser.T_CHARACTER:
+ case HiveSqlParser.T_CHARSET:
+ case HiveSqlParser.T_ENGINE:
+ case HiveSqlParser.T_ALTER:
+ case HiveSqlParser.T_ADD2:
+ case HiveSqlParser.T_CHAR:
+ case HiveSqlParser.T_BIGINT:
+ case HiveSqlParser.T_BINARY_DOUBLE:
+ case HiveSqlParser.T_BINARY_FLOAT:
+ case HiveSqlParser.T_BIT:
+ case HiveSqlParser.T_DATE:
+ case HiveSqlParser.T_DATETIME:
+ case HiveSqlParser.T_DEC:
+ case HiveSqlParser.T_DECIMAL:
+ case HiveSqlParser.T_DOUBLE:
+ case HiveSqlParser.T_PRECISION:
+ case HiveSqlParser.T_FLOAT:
+ case HiveSqlParser.T_INT:
+ case HiveSqlParser.T_INT2:
+ case HiveSqlParser.T_INT4:
+ case HiveSqlParser.T_INT8:
+ case HiveSqlParser.T_INTEGER:
+ case HiveSqlParser.T_NCHAR:
+ case HiveSqlParser.T_NVARCHAR:
+ case HiveSqlParser.T_NUMBER:
+ case HiveSqlParser.T_NUMERIC:
+ case HiveSqlParser.T_REAL:
+ case HiveSqlParser.T_RESULT_SET_LOCATOR:
+ case HiveSqlParser.T_VARYING:
+ case HiveSqlParser.T_SIMPLE_FLOAT:
+ case HiveSqlParser.T_SIMPLE_DOUBLE:
+ case HiveSqlParser.T_SMALLINT:
+ case HiveSqlParser.T_SMALLDATETIME:
+ case HiveSqlParser.T_STRING:
+ case HiveSqlParser.T_SYS_REFCURSOR:
+ case HiveSqlParser.T_TIMESTAMP:
+ case HiveSqlParser.T_VARCHAR:
+ case HiveSqlParser.T_VARCHAR2:
+ case HiveSqlParser.T_XML:
+ case HiveSqlParser.T_MAX:
+ case HiveSqlParser.T_BYTE:
+ case HiveSqlParser.T_CASESPECIFIC:
+ case HiveSqlParser.T_CS:
+ case HiveSqlParser.T_DATABASE:
+ case HiveSqlParser.T_SCHEMA:
+ case HiveSqlParser.T_LOCATION:
+ case HiveSqlParser.T_OR:
+ case HiveSqlParser.T_FUNCTION:
+ case HiveSqlParser.T_RETURNS:
+ case HiveSqlParser.T_PACKAGE:
+ case HiveSqlParser.T_PROC:
+ case HiveSqlParser.T_BODY:
+ case HiveSqlParser.T_OUT:
+ case HiveSqlParser.T_INOUT:
+ case HiveSqlParser.T_LANGUAGE:
+ case HiveSqlParser.T_SQL:
+ case HiveSqlParser.T_SECURITY:
+ case HiveSqlParser.T_CREATOR:
+ case HiveSqlParser.T_DEFINER:
+ case HiveSqlParser.T_INVOKER:
+ case HiveSqlParser.T_OWNER:
+ case HiveSqlParser.T_DYNAMIC:
+ case HiveSqlParser.T_SETS:
+ case HiveSqlParser.T_EXEC:
+ case HiveSqlParser.T_EXECUTE:
+ case HiveSqlParser.T_INTO:
+ case HiveSqlParser.T_INCLUDE:
+ case HiveSqlParser.T_INSERT:
+ case HiveSqlParser.T_OVERWRITE:
+ case HiveSqlParser.T_VALUES:
+ case HiveSqlParser.T_DIRECTORY:
+ case HiveSqlParser.T_GET:
+ case HiveSqlParser.T_DIAGNOSTICS:
+ case HiveSqlParser.T_MESSAGE_TEXT:
+ case HiveSqlParser.T_ROW_COUNT:
+ case HiveSqlParser.T_GRANT:
+ case HiveSqlParser.T_ROLE:
+ case HiveSqlParser.T_LEAVE:
+ case HiveSqlParser.T_OBJECT:
+ case HiveSqlParser.T_AT:
+ case HiveSqlParser.T_OPEN:
+ case HiveSqlParser.T_FETCH:
+ case HiveSqlParser.T_FROM:
+ case HiveSqlParser.T_COLLECT:
+ case HiveSqlParser.T_STATISTICS:
+ case HiveSqlParser.T_STATS:
+ case HiveSqlParser.T_COLUMN:
+ case HiveSqlParser.T_CLOSE:
+ case HiveSqlParser.T_CMP:
+ case HiveSqlParser.T_SUM:
+ case HiveSqlParser.T_COPY:
+ case HiveSqlParser.T_HDFS:
+ case HiveSqlParser.T_BATCHSIZE:
+ case HiveSqlParser.T_DELIMITER:
+ case HiveSqlParser.T_SQLINSERT:
+ case HiveSqlParser.T_IGNORE:
+ case HiveSqlParser.T_WORK:
+ case HiveSqlParser.T_PRINT:
+ case HiveSqlParser.T_QUIT:
+ case HiveSqlParser.T_RAISE:
+ case HiveSqlParser.T_RESIGNAL:
+ case HiveSqlParser.T_SQLSTATE:
+ case HiveSqlParser.T_VALUE:
+ case HiveSqlParser.T_ROLLBACK:
+ case HiveSqlParser.T_CURRENT:
+ case HiveSqlParser.T_CURRENT_SCHEMA:
+ case HiveSqlParser.T_ANSI_NULLS:
+ case HiveSqlParser.T_ANSI_PADDING:
+ case HiveSqlParser.T_NOCOUNT:
+ case HiveSqlParser.T_QUOTED_IDENTIFIER:
+ case HiveSqlParser.T_XACT_ABORT:
+ case HiveSqlParser.T_OFF:
+ case HiveSqlParser.T_QUERY_BAND:
+ case HiveSqlParser.T_NONE:
+ case HiveSqlParser.T_SESSION:
+ case HiveSqlParser.T_SIGNAL:
+ case HiveSqlParser.T_SUMMARY:
+ case HiveSqlParser.T_TOP:
+ case HiveSqlParser.T_LIMIT:
+ case HiveSqlParser.T_TRUNCATE:
+ case HiveSqlParser.T_USE:
+ case HiveSqlParser.T_WHILE:
+ case HiveSqlParser.T_DO:
+ case HiveSqlParser.T_LOOP:
+ case HiveSqlParser.T_REVERSE:
+ case HiveSqlParser.T_STEP:
+ case HiveSqlParser.T_USING:
+ case HiveSqlParser.T_ALL:
+ case HiveSqlParser.T_EXCEPT:
+ case HiveSqlParser.T_INTERSECT:
+ case HiveSqlParser.T_SELECT:
+ case HiveSqlParser.T_SEL:
+ case HiveSqlParser.T_DISTINCT:
+ case HiveSqlParser.T_TITLE:
+ case HiveSqlParser.L_S_STRING:
+ case HiveSqlParser.T_INNER:
+ case HiveSqlParser.T_JOIN:
+ case HiveSqlParser.T_LEFT:
+ case HiveSqlParser.T_RIGHT:
+ case HiveSqlParser.T_FULL:
+ case HiveSqlParser.T_OUTER:
+ case HiveSqlParser.T_GROUP:
+ case HiveSqlParser.T_HAVING:
+ case HiveSqlParser.T_QUALIFY:
+ case HiveSqlParser.T_ORDER:
+ case HiveSqlParser.T_RR:
+ case HiveSqlParser.T_RS:
+ case HiveSqlParser.T_UR:
+ case HiveSqlParser.T_AND:
+ case HiveSqlParser.T_KEEP:
+ case HiveSqlParser.T_EXCLUSIVE:
+ case HiveSqlParser.T_SHARE:
+ case HiveSqlParser.T_LOCKS:
+ case HiveSqlParser.T_MERGE:
+ case HiveSqlParser.T_MATCHED:
+ case HiveSqlParser.T_DESCRIBE:
+ case HiveSqlParser.T_BETWEEN:
+ case HiveSqlParser.T_RLIKE:
+ case HiveSqlParser.T_REGEXP:
+ case HiveSqlParser.T_INTERVAL:
+ case HiveSqlParser.T_DAY:
+ case HiveSqlParser.T_DAYS:
+ case HiveSqlParser.T_MICROSECOND:
+ case HiveSqlParser.T_MICROSECONDS:
+ case HiveSqlParser.T_SECOND:
+ case HiveSqlParser.T_SECONDS:
+ case HiveSqlParser.T_CONCAT:
+ case HiveSqlParser.T_CASE:
+ case HiveSqlParser.T_ISOPEN:
+ case HiveSqlParser.T_NOTFOUND:
+ case HiveSqlParser.T_AVG:
+ case HiveSqlParser.T_COUNT:
+ case HiveSqlParser.T_COUNT_BIG:
+ case HiveSqlParser.T_CUME_DIST:
+ case HiveSqlParser.T_DENSE_RANK:
+ case HiveSqlParser.T_FIRST_VALUE:
+ case HiveSqlParser.T_LAG:
+ case HiveSqlParser.T_LAST_VALUE:
+ case HiveSqlParser.T_LEAD:
+ case HiveSqlParser.T_MIN:
+ case HiveSqlParser.T_RANK:
+ case HiveSqlParser.T_ROW_NUMBER:
+ case HiveSqlParser.T_STDEV:
+ case HiveSqlParser.T_VAR:
+ case HiveSqlParser.T_VARIANCE:
+ case HiveSqlParser.T_OVER:
+ case HiveSqlParser.T_PARTITION:
+ case HiveSqlParser.T_ACTIVITY_COUNT:
+ case HiveSqlParser.T_CAST:
+ case HiveSqlParser.T_CURRENT_DATE:
+ case HiveSqlParser.T_CURRENT_TIMESTAMP:
+ case HiveSqlParser.T_CURRENT_USER:
+ case HiveSqlParser.T_USER:
+ case HiveSqlParser.T_MAX_PART_STRING:
+ case HiveSqlParser.T_MIN_PART_STRING:
+ case HiveSqlParser.T_MAX_PART_INT:
+ case HiveSqlParser.T_MIN_PART_INT:
+ case HiveSqlParser.T_MAX_PART_DATE:
+ case HiveSqlParser.T_MIN_PART_DATE:
+ case HiveSqlParser.T_PART_COUNT:
+ case HiveSqlParser.T_PART_LOC:
+ case HiveSqlParser.T_TRIM:
+ case HiveSqlParser.T_SUBSTRING:
+ case HiveSqlParser.T_SYSDATE:
+ case HiveSqlParser.T_HIVE:
+ case HiveSqlParser.T_HOST:
+ case HiveSqlParser.L_D_STRING:
+ case HiveSqlParser.L_DEC:
+ case HiveSqlParser.T_TRUE:
+ case HiveSqlParser.T_FALSE:
+ case HiveSqlParser.T_DIR:
+ case HiveSqlParser.T_FILE:
+ case HiveSqlParser.T_FILES:
+ case HiveSqlParser.T_NEW:
+ case HiveSqlParser.T_PWD:
+ case HiveSqlParser.T_SESSIONS:
+ case HiveSqlParser.T_SUBDIR:
+ this.state = 2848;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,357,this._ctx);
+ if(la_===1) {
+ this.state = 2847;
+ this.expr_func_all_distinct();
+
+ }
+ this.state = 2850;
+ this.expr(0);
+ break;
+ case HiveSqlParser.T__5:
+ this.state = 2851;
+ this.match(HiveSqlParser.T__5);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 2854;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ this.state = 2856;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,359,this._ctx);
+ if(la_===1) {
+ this.state = 2855;
+ this.expr_func_over_clause();
+
+ }
+ break;
+ case HiveSqlParser.T_COUNT_BIG:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 2858;
+ this.match(HiveSqlParser.T_COUNT_BIG);
+ this.state = 2859;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 2865;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case HiveSqlParser.T__8:
+ case HiveSqlParser.T__9:
+ case HiveSqlParser.T_GO:
+ case HiveSqlParser.T_BEGIN:
+ case HiveSqlParser.T_EXCEPTION:
+ case HiveSqlParser.L_ID:
+ case HiveSqlParser.T_THEN:
+ case HiveSqlParser.T_NULL:
+ case HiveSqlParser.T_SET:
+ case HiveSqlParser.T_OPEN_P:
+ case HiveSqlParser.T_ALLOCATE:
+ case HiveSqlParser.T_CURSOR:
+ case HiveSqlParser.T_FOR:
+ case HiveSqlParser.T_RESULT:
+ case HiveSqlParser.T_PROCEDURE:
+ case HiveSqlParser.T_ASSOCIATE:
+ case HiveSqlParser.T_LOCATOR:
+ case HiveSqlParser.T_LOCATORS:
+ case HiveSqlParser.T_WITH:
+ case HiveSqlParser.T_TRANSACTION:
+ case HiveSqlParser.T_BREAK:
+ case HiveSqlParser.T_CALL:
+ case HiveSqlParser.T_DECLARE:
+ case HiveSqlParser.T_AS:
+ case HiveSqlParser.T_CONSTANT:
+ case HiveSqlParser.T_CONDITION:
+ case HiveSqlParser.T_IS:
+ case HiveSqlParser.T_RETURN:
+ case HiveSqlParser.T_ONLY:
+ case HiveSqlParser.T_TO:
+ case HiveSqlParser.T_CALLER:
+ case HiveSqlParser.T_CLIENT:
+ case HiveSqlParser.T_WITHOUT:
+ case HiveSqlParser.T_CONTINUE:
+ case HiveSqlParser.T_EXIT:
+ case HiveSqlParser.T_HANDLER:
+ case HiveSqlParser.T_SQLEXCEPTION:
+ case HiveSqlParser.T_SQLWARNING:
+ case HiveSqlParser.T_NOT:
+ case HiveSqlParser.T_FOUND:
+ case HiveSqlParser.T_GLOBAL:
+ case HiveSqlParser.T_TEMPORARY:
+ case HiveSqlParser.T_TABLE:
+ case HiveSqlParser.T_CREATE:
+ case HiveSqlParser.T_IF:
+ case HiveSqlParser.T_EXISTS:
+ case HiveSqlParser.T_LOCAL:
+ case HiveSqlParser.T_MULTISET:
+ case HiveSqlParser.T_VOLATILE:
+ case HiveSqlParser.T_LIKE:
+ case HiveSqlParser.T_CONSTRAINT:
+ case HiveSqlParser.T_PRIMARY:
+ case HiveSqlParser.T_KEY:
+ case HiveSqlParser.T_UNIQUE:
+ case HiveSqlParser.T_REFERENCES:
+ case HiveSqlParser.T_IDENTITY:
+ case HiveSqlParser.L_INT:
+ case HiveSqlParser.T_AUTO_INCREMENT:
+ case HiveSqlParser.T_ENABLE:
+ case HiveSqlParser.T_CLUSTERED:
+ case HiveSqlParser.T_ASC:
+ case HiveSqlParser.T_DESC:
+ case HiveSqlParser.T_FOREIGN:
+ case HiveSqlParser.T_ON:
+ case HiveSqlParser.T_UPDATE:
+ case HiveSqlParser.T_DELETE:
+ case HiveSqlParser.T_NO:
+ case HiveSqlParser.T_ACTION:
+ case HiveSqlParser.T_RESTRICT:
+ case HiveSqlParser.T_DEFAULT:
+ case HiveSqlParser.T_CASCADE:
+ case HiveSqlParser.T_LOG:
+ case HiveSqlParser.T_FALLBACK:
+ case HiveSqlParser.T_COMMIT:
+ case HiveSqlParser.T_PRESERVE:
+ case HiveSqlParser.T_ROWS:
+ case HiveSqlParser.T_SEGMENT:
+ case HiveSqlParser.T_CREATION:
+ case HiveSqlParser.T_IMMEDIATE:
+ case HiveSqlParser.T_DEFERRED:
+ case HiveSqlParser.T_PCTFREE:
+ case HiveSqlParser.T_PCTUSED:
+ case HiveSqlParser.T_INITRANS:
+ case HiveSqlParser.T_MAXTRANS:
+ case HiveSqlParser.T_NOCOMPRESS:
+ case HiveSqlParser.T_LOGGING:
+ case HiveSqlParser.T_NOLOGGING:
+ case HiveSqlParser.T_STORAGE:
+ case HiveSqlParser.T_TABLESPACE:
+ case HiveSqlParser.T_INDEX:
+ case HiveSqlParser.T_IN:
+ case HiveSqlParser.T_REPLACE:
+ case HiveSqlParser.T_DISTRIBUTE:
+ case HiveSqlParser.T_BY:
+ case HiveSqlParser.T_HASH:
+ case HiveSqlParser.T_LOGGED:
+ case HiveSqlParser.T_COMPRESS:
+ case HiveSqlParser.T_YES:
+ case HiveSqlParser.T_DEFINITION:
+ case HiveSqlParser.T_DROP:
+ case HiveSqlParser.T_DATA:
+ case HiveSqlParser.T_STORED:
+ case HiveSqlParser.T_ROW:
+ case HiveSqlParser.T_FORMAT:
+ case HiveSqlParser.T_DELIMITED:
+ case HiveSqlParser.T_FIELDS:
+ case HiveSqlParser.T_TERMINATED:
+ case HiveSqlParser.T_ESCAPED:
+ case HiveSqlParser.T_COLLECTION:
+ case HiveSqlParser.T_ITEMS:
+ case HiveSqlParser.T_MAP:
+ case HiveSqlParser.T_KEYS:
+ case HiveSqlParser.T_LINES:
+ case HiveSqlParser.T_DEFINED:
+ case HiveSqlParser.T_TEXTIMAGE_ON:
+ case HiveSqlParser.T_COMMENT:
+ case HiveSqlParser.T_CHARACTER:
+ case HiveSqlParser.T_CHARSET:
+ case HiveSqlParser.T_ENGINE:
+ case HiveSqlParser.T_ALTER:
+ case HiveSqlParser.T_ADD2:
+ case HiveSqlParser.T_CHAR:
+ case HiveSqlParser.T_BIGINT:
+ case HiveSqlParser.T_BINARY_DOUBLE:
+ case HiveSqlParser.T_BINARY_FLOAT:
+ case HiveSqlParser.T_BIT:
+ case HiveSqlParser.T_DATE:
+ case HiveSqlParser.T_DATETIME:
+ case HiveSqlParser.T_DEC:
+ case HiveSqlParser.T_DECIMAL:
+ case HiveSqlParser.T_DOUBLE:
+ case HiveSqlParser.T_PRECISION:
+ case HiveSqlParser.T_FLOAT:
+ case HiveSqlParser.T_INT:
+ case HiveSqlParser.T_INT2:
+ case HiveSqlParser.T_INT4:
+ case HiveSqlParser.T_INT8:
+ case HiveSqlParser.T_INTEGER:
+ case HiveSqlParser.T_NCHAR:
+ case HiveSqlParser.T_NVARCHAR:
+ case HiveSqlParser.T_NUMBER:
+ case HiveSqlParser.T_NUMERIC:
+ case HiveSqlParser.T_REAL:
+ case HiveSqlParser.T_RESULT_SET_LOCATOR:
+ case HiveSqlParser.T_VARYING:
+ case HiveSqlParser.T_SIMPLE_FLOAT:
+ case HiveSqlParser.T_SIMPLE_DOUBLE:
+ case HiveSqlParser.T_SMALLINT:
+ case HiveSqlParser.T_SMALLDATETIME:
+ case HiveSqlParser.T_STRING:
+ case HiveSqlParser.T_SYS_REFCURSOR:
+ case HiveSqlParser.T_TIMESTAMP:
+ case HiveSqlParser.T_VARCHAR:
+ case HiveSqlParser.T_VARCHAR2:
+ case HiveSqlParser.T_XML:
+ case HiveSqlParser.T_MAX:
+ case HiveSqlParser.T_BYTE:
+ case HiveSqlParser.T_CASESPECIFIC:
+ case HiveSqlParser.T_CS:
+ case HiveSqlParser.T_DATABASE:
+ case HiveSqlParser.T_SCHEMA:
+ case HiveSqlParser.T_LOCATION:
+ case HiveSqlParser.T_OR:
+ case HiveSqlParser.T_FUNCTION:
+ case HiveSqlParser.T_RETURNS:
+ case HiveSqlParser.T_PACKAGE:
+ case HiveSqlParser.T_PROC:
+ case HiveSqlParser.T_BODY:
+ case HiveSqlParser.T_OUT:
+ case HiveSqlParser.T_INOUT:
+ case HiveSqlParser.T_LANGUAGE:
+ case HiveSqlParser.T_SQL:
+ case HiveSqlParser.T_SECURITY:
+ case HiveSqlParser.T_CREATOR:
+ case HiveSqlParser.T_DEFINER:
+ case HiveSqlParser.T_INVOKER:
+ case HiveSqlParser.T_OWNER:
+ case HiveSqlParser.T_DYNAMIC:
+ case HiveSqlParser.T_SETS:
+ case HiveSqlParser.T_EXEC:
+ case HiveSqlParser.T_EXECUTE:
+ case HiveSqlParser.T_INTO:
+ case HiveSqlParser.T_INCLUDE:
+ case HiveSqlParser.T_INSERT:
+ case HiveSqlParser.T_OVERWRITE:
+ case HiveSqlParser.T_VALUES:
+ case HiveSqlParser.T_DIRECTORY:
+ case HiveSqlParser.T_GET:
+ case HiveSqlParser.T_DIAGNOSTICS:
+ case HiveSqlParser.T_MESSAGE_TEXT:
+ case HiveSqlParser.T_ROW_COUNT:
+ case HiveSqlParser.T_GRANT:
+ case HiveSqlParser.T_ROLE:
+ case HiveSqlParser.T_LEAVE:
+ case HiveSqlParser.T_OBJECT:
+ case HiveSqlParser.T_AT:
+ case HiveSqlParser.T_OPEN:
+ case HiveSqlParser.T_FETCH:
+ case HiveSqlParser.T_FROM:
+ case HiveSqlParser.T_COLLECT:
+ case HiveSqlParser.T_STATISTICS:
+ case HiveSqlParser.T_STATS:
+ case HiveSqlParser.T_COLUMN:
+ case HiveSqlParser.T_CLOSE:
+ case HiveSqlParser.T_CMP:
+ case HiveSqlParser.T_SUM:
+ case HiveSqlParser.T_COPY:
+ case HiveSqlParser.T_HDFS:
+ case HiveSqlParser.T_BATCHSIZE:
+ case HiveSqlParser.T_DELIMITER:
+ case HiveSqlParser.T_SQLINSERT:
+ case HiveSqlParser.T_IGNORE:
+ case HiveSqlParser.T_WORK:
+ case HiveSqlParser.T_PRINT:
+ case HiveSqlParser.T_QUIT:
+ case HiveSqlParser.T_RAISE:
+ case HiveSqlParser.T_RESIGNAL:
+ case HiveSqlParser.T_SQLSTATE:
+ case HiveSqlParser.T_VALUE:
+ case HiveSqlParser.T_ROLLBACK:
+ case HiveSqlParser.T_CURRENT:
+ case HiveSqlParser.T_CURRENT_SCHEMA:
+ case HiveSqlParser.T_ANSI_NULLS:
+ case HiveSqlParser.T_ANSI_PADDING:
+ case HiveSqlParser.T_NOCOUNT:
+ case HiveSqlParser.T_QUOTED_IDENTIFIER:
+ case HiveSqlParser.T_XACT_ABORT:
+ case HiveSqlParser.T_OFF:
+ case HiveSqlParser.T_QUERY_BAND:
+ case HiveSqlParser.T_NONE:
+ case HiveSqlParser.T_SESSION:
+ case HiveSqlParser.T_SIGNAL:
+ case HiveSqlParser.T_SUMMARY:
+ case HiveSqlParser.T_TOP:
+ case HiveSqlParser.T_LIMIT:
+ case HiveSqlParser.T_TRUNCATE:
+ case HiveSqlParser.T_USE:
+ case HiveSqlParser.T_WHILE:
+ case HiveSqlParser.T_DO:
+ case HiveSqlParser.T_LOOP:
+ case HiveSqlParser.T_REVERSE:
+ case HiveSqlParser.T_STEP:
+ case HiveSqlParser.T_USING:
+ case HiveSqlParser.T_ALL:
+ case HiveSqlParser.T_EXCEPT:
+ case HiveSqlParser.T_INTERSECT:
+ case HiveSqlParser.T_SELECT:
+ case HiveSqlParser.T_SEL:
+ case HiveSqlParser.T_DISTINCT:
+ case HiveSqlParser.T_TITLE:
+ case HiveSqlParser.L_S_STRING:
+ case HiveSqlParser.T_INNER:
+ case HiveSqlParser.T_JOIN:
+ case HiveSqlParser.T_LEFT:
+ case HiveSqlParser.T_RIGHT:
+ case HiveSqlParser.T_FULL:
+ case HiveSqlParser.T_OUTER:
+ case HiveSqlParser.T_GROUP:
+ case HiveSqlParser.T_HAVING:
+ case HiveSqlParser.T_QUALIFY:
+ case HiveSqlParser.T_ORDER:
+ case HiveSqlParser.T_RR:
+ case HiveSqlParser.T_RS:
+ case HiveSqlParser.T_UR:
+ case HiveSqlParser.T_AND:
+ case HiveSqlParser.T_KEEP:
+ case HiveSqlParser.T_EXCLUSIVE:
+ case HiveSqlParser.T_SHARE:
+ case HiveSqlParser.T_LOCKS:
+ case HiveSqlParser.T_MERGE:
+ case HiveSqlParser.T_MATCHED:
+ case HiveSqlParser.T_DESCRIBE:
+ case HiveSqlParser.T_BETWEEN:
+ case HiveSqlParser.T_RLIKE:
+ case HiveSqlParser.T_REGEXP:
+ case HiveSqlParser.T_INTERVAL:
+ case HiveSqlParser.T_DAY:
+ case HiveSqlParser.T_DAYS:
+ case HiveSqlParser.T_MICROSECOND:
+ case HiveSqlParser.T_MICROSECONDS:
+ case HiveSqlParser.T_SECOND:
+ case HiveSqlParser.T_SECONDS:
+ case HiveSqlParser.T_CONCAT:
+ case HiveSqlParser.T_CASE:
+ case HiveSqlParser.T_ISOPEN:
+ case HiveSqlParser.T_NOTFOUND:
+ case HiveSqlParser.T_AVG:
+ case HiveSqlParser.T_COUNT:
+ case HiveSqlParser.T_COUNT_BIG:
+ case HiveSqlParser.T_CUME_DIST:
+ case HiveSqlParser.T_DENSE_RANK:
+ case HiveSqlParser.T_FIRST_VALUE:
+ case HiveSqlParser.T_LAG:
+ case HiveSqlParser.T_LAST_VALUE:
+ case HiveSqlParser.T_LEAD:
+ case HiveSqlParser.T_MIN:
+ case HiveSqlParser.T_RANK:
+ case HiveSqlParser.T_ROW_NUMBER:
+ case HiveSqlParser.T_STDEV:
+ case HiveSqlParser.T_VAR:
+ case HiveSqlParser.T_VARIANCE:
+ case HiveSqlParser.T_OVER:
+ case HiveSqlParser.T_PARTITION:
+ case HiveSqlParser.T_ACTIVITY_COUNT:
+ case HiveSqlParser.T_CAST:
+ case HiveSqlParser.T_CURRENT_DATE:
+ case HiveSqlParser.T_CURRENT_TIMESTAMP:
+ case HiveSqlParser.T_CURRENT_USER:
+ case HiveSqlParser.T_USER:
+ case HiveSqlParser.T_MAX_PART_STRING:
+ case HiveSqlParser.T_MIN_PART_STRING:
+ case HiveSqlParser.T_MAX_PART_INT:
+ case HiveSqlParser.T_MIN_PART_INT:
+ case HiveSqlParser.T_MAX_PART_DATE:
+ case HiveSqlParser.T_MIN_PART_DATE:
+ case HiveSqlParser.T_PART_COUNT:
+ case HiveSqlParser.T_PART_LOC:
+ case HiveSqlParser.T_TRIM:
+ case HiveSqlParser.T_SUBSTRING:
+ case HiveSqlParser.T_SYSDATE:
+ case HiveSqlParser.T_HIVE:
+ case HiveSqlParser.T_HOST:
+ case HiveSqlParser.L_D_STRING:
+ case HiveSqlParser.L_DEC:
+ case HiveSqlParser.T_TRUE:
+ case HiveSqlParser.T_FALSE:
+ case HiveSqlParser.T_DIR:
+ case HiveSqlParser.T_FILE:
+ case HiveSqlParser.T_FILES:
+ case HiveSqlParser.T_NEW:
+ case HiveSqlParser.T_PWD:
+ case HiveSqlParser.T_SESSIONS:
+ case HiveSqlParser.T_SUBDIR:
+ this.state = 2861;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,360,this._ctx);
+ if(la_===1) {
+ this.state = 2860;
+ this.expr_func_all_distinct();
+
+ }
+ this.state = 2863;
+ this.expr(0);
+ break;
+ case HiveSqlParser.T__5:
+ this.state = 2864;
+ this.match(HiveSqlParser.T__5);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 2867;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ this.state = 2869;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,362,this._ctx);
+ if(la_===1) {
+ this.state = 2868;
+ this.expr_func_over_clause();
+
+ }
+ break;
+ case HiveSqlParser.T_CUME_DIST:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 2871;
+ this.match(HiveSqlParser.T_CUME_DIST);
+ this.state = 2872;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 2873;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ this.state = 2874;
+ this.expr_func_over_clause();
+ break;
+ case HiveSqlParser.T_DENSE_RANK:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 2875;
+ this.match(HiveSqlParser.T_DENSE_RANK);
+ this.state = 2876;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 2877;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ this.state = 2878;
+ this.expr_func_over_clause();
+ break;
+ case HiveSqlParser.T_FIRST_VALUE:
+ this.enterOuterAlt(localctx, 6);
+ this.state = 2879;
+ this.match(HiveSqlParser.T_FIRST_VALUE);
+ this.state = 2880;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 2881;
+ this.expr(0);
+ this.state = 2882;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ this.state = 2883;
+ this.expr_func_over_clause();
+ break;
+ case HiveSqlParser.T_LAG:
+ this.enterOuterAlt(localctx, 7);
+ this.state = 2885;
+ this.match(HiveSqlParser.T_LAG);
+ this.state = 2886;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 2887;
+ this.expr(0);
+ this.state = 2894;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_COMMA) {
+ this.state = 2888;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 2889;
+ this.expr(0);
+ this.state = 2892;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_COMMA) {
+ this.state = 2890;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 2891;
+ this.expr(0);
+ }
+
+ }
+
+ this.state = 2896;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ this.state = 2897;
+ this.expr_func_over_clause();
+ break;
+ case HiveSqlParser.T_LAST_VALUE:
+ this.enterOuterAlt(localctx, 8);
+ this.state = 2899;
+ this.match(HiveSqlParser.T_LAST_VALUE);
+ this.state = 2900;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 2901;
+ this.expr(0);
+ this.state = 2902;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ this.state = 2903;
+ this.expr_func_over_clause();
+ break;
+ case HiveSqlParser.T_LEAD:
+ this.enterOuterAlt(localctx, 9);
+ this.state = 2905;
+ this.match(HiveSqlParser.T_LEAD);
+ this.state = 2906;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 2907;
+ this.expr(0);
+ this.state = 2914;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_COMMA) {
+ this.state = 2908;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 2909;
+ this.expr(0);
+ this.state = 2912;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_COMMA) {
+ this.state = 2910;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 2911;
+ this.expr(0);
+ }
+
+ }
+
+ this.state = 2916;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ this.state = 2917;
+ this.expr_func_over_clause();
+ break;
+ case HiveSqlParser.T_MAX:
+ this.enterOuterAlt(localctx, 10);
+ this.state = 2919;
+ this.match(HiveSqlParser.T_MAX);
+ this.state = 2920;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 2922;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,367,this._ctx);
+ if(la_===1) {
+ this.state = 2921;
+ this.expr_func_all_distinct();
+
+ }
+ this.state = 2924;
+ this.expr(0);
+ this.state = 2925;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ this.state = 2927;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,368,this._ctx);
+ if(la_===1) {
+ this.state = 2926;
+ this.expr_func_over_clause();
+
+ }
+ break;
+ case HiveSqlParser.T_MIN:
+ this.enterOuterAlt(localctx, 11);
+ this.state = 2929;
+ this.match(HiveSqlParser.T_MIN);
+ this.state = 2930;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 2932;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,369,this._ctx);
+ if(la_===1) {
+ this.state = 2931;
+ this.expr_func_all_distinct();
+
+ }
+ this.state = 2934;
+ this.expr(0);
+ this.state = 2935;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ this.state = 2937;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,370,this._ctx);
+ if(la_===1) {
+ this.state = 2936;
+ this.expr_func_over_clause();
+
+ }
+ break;
+ case HiveSqlParser.T_RANK:
+ this.enterOuterAlt(localctx, 12);
+ this.state = 2939;
+ this.match(HiveSqlParser.T_RANK);
+ this.state = 2940;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 2941;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ this.state = 2942;
+ this.expr_func_over_clause();
+ break;
+ case HiveSqlParser.T_ROW_NUMBER:
+ this.enterOuterAlt(localctx, 13);
+ this.state = 2943;
+ this.match(HiveSqlParser.T_ROW_NUMBER);
+ this.state = 2944;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 2945;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ this.state = 2946;
+ this.expr_func_over_clause();
+ break;
+ case HiveSqlParser.T_STDEV:
+ this.enterOuterAlt(localctx, 14);
+ this.state = 2947;
+ this.match(HiveSqlParser.T_STDEV);
+ this.state = 2948;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 2950;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,371,this._ctx);
+ if(la_===1) {
+ this.state = 2949;
+ this.expr_func_all_distinct();
+
+ }
+ this.state = 2952;
+ this.expr(0);
+ this.state = 2953;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ this.state = 2955;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,372,this._ctx);
+ if(la_===1) {
+ this.state = 2954;
+ this.expr_func_over_clause();
+
+ }
+ break;
+ case HiveSqlParser.T_SUM:
+ this.enterOuterAlt(localctx, 15);
+ this.state = 2957;
+ this.match(HiveSqlParser.T_SUM);
+ this.state = 2958;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 2960;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,373,this._ctx);
+ if(la_===1) {
+ this.state = 2959;
+ this.expr_func_all_distinct();
+
+ }
+ this.state = 2962;
+ this.expr(0);
+ this.state = 2963;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ this.state = 2965;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,374,this._ctx);
+ if(la_===1) {
+ this.state = 2964;
+ this.expr_func_over_clause();
+
+ }
+ break;
+ case HiveSqlParser.T_VAR:
+ this.enterOuterAlt(localctx, 16);
+ this.state = 2967;
+ this.match(HiveSqlParser.T_VAR);
+ this.state = 2968;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 2970;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,375,this._ctx);
+ if(la_===1) {
+ this.state = 2969;
+ this.expr_func_all_distinct();
+
+ }
+ this.state = 2972;
+ this.expr(0);
+ this.state = 2973;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ this.state = 2975;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,376,this._ctx);
+ if(la_===1) {
+ this.state = 2974;
+ this.expr_func_over_clause();
+
+ }
+ break;
+ case HiveSqlParser.T_VARIANCE:
+ this.enterOuterAlt(localctx, 17);
+ this.state = 2977;
+ this.match(HiveSqlParser.T_VARIANCE);
+ this.state = 2978;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 2980;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,377,this._ctx);
+ if(la_===1) {
+ this.state = 2979;
+ this.expr_func_all_distinct();
+
+ }
+ this.state = 2982;
+ this.expr(0);
+ this.state = 2983;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ this.state = 2985;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,378,this._ctx);
+ if(la_===1) {
+ this.state = 2984;
+ this.expr_func_over_clause();
+
+ }
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Expr_func_all_distinctContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_expr_func_all_distinct;
+ return this;
+}
+
+Expr_func_all_distinctContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Expr_func_all_distinctContext.prototype.constructor = Expr_func_all_distinctContext;
+
+Expr_func_all_distinctContext.prototype.T_ALL = function() {
+ return this.getToken(HiveSqlParser.T_ALL, 0);
+};
+
+Expr_func_all_distinctContext.prototype.T_DISTINCT = function() {
+ return this.getToken(HiveSqlParser.T_DISTINCT, 0);
+};
+
+Expr_func_all_distinctContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterExpr_func_all_distinct(this);
+ }
+};
+
+Expr_func_all_distinctContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitExpr_func_all_distinct(this);
+ }
+};
+
+Expr_func_all_distinctContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitExpr_func_all_distinct(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Expr_func_all_distinctContext = Expr_func_all_distinctContext;
+
+HiveSqlParser.prototype.expr_func_all_distinct = function() {
+
+ var localctx = new Expr_func_all_distinctContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 404, HiveSqlParser.RULE_expr_func_all_distinct);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2989;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_ALL || _la===HiveSqlParser.T_DISTINCT)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Expr_func_over_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_expr_func_over_clause;
+ return this;
+}
+
+Expr_func_over_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Expr_func_over_clauseContext.prototype.constructor = Expr_func_over_clauseContext;
+
+Expr_func_over_clauseContext.prototype.T_OVER = function() {
+ return this.getToken(HiveSqlParser.T_OVER, 0);
+};
+
+Expr_func_over_clauseContext.prototype.T_OPEN_P = function() {
+ return this.getToken(HiveSqlParser.T_OPEN_P, 0);
+};
+
+Expr_func_over_clauseContext.prototype.T_CLOSE_P = function() {
+ return this.getToken(HiveSqlParser.T_CLOSE_P, 0);
+};
+
+Expr_func_over_clauseContext.prototype.expr_func_partition_by_clause = function() {
+ return this.getTypedRuleContext(Expr_func_partition_by_clauseContext,0);
+};
+
+Expr_func_over_clauseContext.prototype.order_by_clause = function() {
+ return this.getTypedRuleContext(Order_by_clauseContext,0);
+};
+
+Expr_func_over_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterExpr_func_over_clause(this);
+ }
+};
+
+Expr_func_over_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitExpr_func_over_clause(this);
+ }
+};
+
+Expr_func_over_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitExpr_func_over_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Expr_func_over_clauseContext = Expr_func_over_clauseContext;
+
+HiveSqlParser.prototype.expr_func_over_clause = function() {
+
+ var localctx = new Expr_func_over_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 406, HiveSqlParser.RULE_expr_func_over_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2991;
+ this.match(HiveSqlParser.T_OVER);
+ this.state = 2992;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 2994;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_PARTITION) {
+ this.state = 2993;
+ this.expr_func_partition_by_clause();
+ }
+
+ this.state = 2997;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_ORDER) {
+ this.state = 2996;
+ this.order_by_clause();
+ }
+
+ this.state = 2999;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Expr_func_partition_by_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_expr_func_partition_by_clause;
+ return this;
+}
+
+Expr_func_partition_by_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Expr_func_partition_by_clauseContext.prototype.constructor = Expr_func_partition_by_clauseContext;
+
+Expr_func_partition_by_clauseContext.prototype.T_PARTITION = function() {
+ return this.getToken(HiveSqlParser.T_PARTITION, 0);
+};
+
+Expr_func_partition_by_clauseContext.prototype.T_BY = function() {
+ return this.getToken(HiveSqlParser.T_BY, 0);
+};
+
+Expr_func_partition_by_clauseContext.prototype.expr = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ExprContext);
+ } else {
+ return this.getTypedRuleContext(ExprContext,i);
+ }
+};
+
+Expr_func_partition_by_clauseContext.prototype.T_COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_COMMA);
+ } else {
+ return this.getToken(HiveSqlParser.T_COMMA, i);
+ }
+};
+
+
+Expr_func_partition_by_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterExpr_func_partition_by_clause(this);
+ }
+};
+
+Expr_func_partition_by_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitExpr_func_partition_by_clause(this);
+ }
+};
+
+Expr_func_partition_by_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitExpr_func_partition_by_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Expr_func_partition_by_clauseContext = Expr_func_partition_by_clauseContext;
+
+HiveSqlParser.prototype.expr_func_partition_by_clause = function() {
+
+ var localctx = new Expr_func_partition_by_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 408, HiveSqlParser.RULE_expr_func_partition_by_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3001;
+ this.match(HiveSqlParser.T_PARTITION);
+ this.state = 3002;
+ this.match(HiveSqlParser.T_BY);
+ this.state = 3003;
+ this.expr(0);
+ this.state = 3008;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===HiveSqlParser.T_COMMA) {
+ this.state = 3004;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 3005;
+ this.expr(0);
+ this.state = 3010;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Expr_spec_funcContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_expr_spec_func;
+ return this;
+}
+
+Expr_spec_funcContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Expr_spec_funcContext.prototype.constructor = Expr_spec_funcContext;
+
+Expr_spec_funcContext.prototype.T_ACTIVITY_COUNT = function() {
+ return this.getToken(HiveSqlParser.T_ACTIVITY_COUNT, 0);
+};
+
+Expr_spec_funcContext.prototype.T_CAST = function() {
+ return this.getToken(HiveSqlParser.T_CAST, 0);
+};
+
+Expr_spec_funcContext.prototype.T_OPEN_P = function() {
+ return this.getToken(HiveSqlParser.T_OPEN_P, 0);
+};
+
+Expr_spec_funcContext.prototype.expr = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ExprContext);
+ } else {
+ return this.getTypedRuleContext(ExprContext,i);
+ }
+};
+
+Expr_spec_funcContext.prototype.T_AS = function() {
+ return this.getToken(HiveSqlParser.T_AS, 0);
+};
+
+Expr_spec_funcContext.prototype.dtype = function() {
+ return this.getTypedRuleContext(DtypeContext,0);
+};
+
+Expr_spec_funcContext.prototype.T_CLOSE_P = function() {
+ return this.getToken(HiveSqlParser.T_CLOSE_P, 0);
+};
+
+Expr_spec_funcContext.prototype.dtype_len = function() {
+ return this.getTypedRuleContext(Dtype_lenContext,0);
+};
+
+Expr_spec_funcContext.prototype.T_COUNT = function() {
+ return this.getToken(HiveSqlParser.T_COUNT, 0);
+};
+
+Expr_spec_funcContext.prototype.T_CURRENT_DATE = function() {
+ return this.getToken(HiveSqlParser.T_CURRENT_DATE, 0);
+};
+
+Expr_spec_funcContext.prototype.T_CURRENT = function() {
+ return this.getToken(HiveSqlParser.T_CURRENT, 0);
+};
+
+Expr_spec_funcContext.prototype.T_DATE = function() {
+ return this.getToken(HiveSqlParser.T_DATE, 0);
+};
+
+Expr_spec_funcContext.prototype.T_CURRENT_TIMESTAMP = function() {
+ return this.getToken(HiveSqlParser.T_CURRENT_TIMESTAMP, 0);
+};
+
+Expr_spec_funcContext.prototype.T_TIMESTAMP = function() {
+ return this.getToken(HiveSqlParser.T_TIMESTAMP, 0);
+};
+
+Expr_spec_funcContext.prototype.T_CURRENT_USER = function() {
+ return this.getToken(HiveSqlParser.T_CURRENT_USER, 0);
+};
+
+Expr_spec_funcContext.prototype.T_USER = function() {
+ return this.getToken(HiveSqlParser.T_USER, 0);
+};
+
+Expr_spec_funcContext.prototype.T_MAX_PART_STRING = function() {
+ return this.getToken(HiveSqlParser.T_MAX_PART_STRING, 0);
+};
+
+Expr_spec_funcContext.prototype.T_COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_COMMA);
+ } else {
+ return this.getToken(HiveSqlParser.T_COMMA, i);
+ }
+};
+
+
+Expr_spec_funcContext.prototype.T_EQUAL = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_EQUAL);
+ } else {
+ return this.getToken(HiveSqlParser.T_EQUAL, i);
+ }
+};
+
+
+Expr_spec_funcContext.prototype.T_MIN_PART_STRING = function() {
+ return this.getToken(HiveSqlParser.T_MIN_PART_STRING, 0);
+};
+
+Expr_spec_funcContext.prototype.T_MAX_PART_INT = function() {
+ return this.getToken(HiveSqlParser.T_MAX_PART_INT, 0);
+};
+
+Expr_spec_funcContext.prototype.T_MIN_PART_INT = function() {
+ return this.getToken(HiveSqlParser.T_MIN_PART_INT, 0);
+};
+
+Expr_spec_funcContext.prototype.T_MAX_PART_DATE = function() {
+ return this.getToken(HiveSqlParser.T_MAX_PART_DATE, 0);
+};
+
+Expr_spec_funcContext.prototype.T_MIN_PART_DATE = function() {
+ return this.getToken(HiveSqlParser.T_MIN_PART_DATE, 0);
+};
+
+Expr_spec_funcContext.prototype.T_PART_COUNT = function() {
+ return this.getToken(HiveSqlParser.T_PART_COUNT, 0);
+};
+
+Expr_spec_funcContext.prototype.T_PART_LOC = function() {
+ return this.getToken(HiveSqlParser.T_PART_LOC, 0);
+};
+
+Expr_spec_funcContext.prototype.T_TRIM = function() {
+ return this.getToken(HiveSqlParser.T_TRIM, 0);
+};
+
+Expr_spec_funcContext.prototype.T_SUBSTRING = function() {
+ return this.getToken(HiveSqlParser.T_SUBSTRING, 0);
+};
+
+Expr_spec_funcContext.prototype.T_FROM = function() {
+ return this.getToken(HiveSqlParser.T_FROM, 0);
+};
+
+Expr_spec_funcContext.prototype.T_FOR = function() {
+ return this.getToken(HiveSqlParser.T_FOR, 0);
+};
+
+Expr_spec_funcContext.prototype.T_SYSDATE = function() {
+ return this.getToken(HiveSqlParser.T_SYSDATE, 0);
+};
+
+Expr_spec_funcContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterExpr_spec_func(this);
+ }
+};
+
+Expr_spec_funcContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitExpr_spec_func(this);
+ }
+};
+
+Expr_spec_funcContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitExpr_spec_func(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Expr_spec_funcContext = Expr_spec_funcContext;
+
+HiveSqlParser.prototype.expr_spec_func = function() {
+
+ var localctx = new Expr_spec_funcContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 410, HiveSqlParser.RULE_expr_spec_func);
+ var _la = 0; // Token type
+ try {
+ this.state = 3211;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,403,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3011;
+ this.match(HiveSqlParser.T_ACTIVITY_COUNT);
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 3012;
+ this.match(HiveSqlParser.T_CAST);
+ this.state = 3013;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 3014;
+ this.expr(0);
+ this.state = 3015;
+ this.match(HiveSqlParser.T_AS);
+ this.state = 3016;
+ this.dtype();
+ this.state = 3018;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_OPEN_P) {
+ this.state = 3017;
+ this.dtype_len();
+ }
+
+ this.state = 3020;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 3022;
+ this.match(HiveSqlParser.T_COUNT);
+ this.state = 3023;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 3026;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case HiveSqlParser.T__8:
+ case HiveSqlParser.T__9:
+ case HiveSqlParser.T_GO:
+ case HiveSqlParser.T_BEGIN:
+ case HiveSqlParser.T_EXCEPTION:
+ case HiveSqlParser.L_ID:
+ case HiveSqlParser.T_THEN:
+ case HiveSqlParser.T_NULL:
+ case HiveSqlParser.T_SET:
+ case HiveSqlParser.T_OPEN_P:
+ case HiveSqlParser.T_ALLOCATE:
+ case HiveSqlParser.T_CURSOR:
+ case HiveSqlParser.T_FOR:
+ case HiveSqlParser.T_RESULT:
+ case HiveSqlParser.T_PROCEDURE:
+ case HiveSqlParser.T_ASSOCIATE:
+ case HiveSqlParser.T_LOCATOR:
+ case HiveSqlParser.T_LOCATORS:
+ case HiveSqlParser.T_WITH:
+ case HiveSqlParser.T_TRANSACTION:
+ case HiveSqlParser.T_BREAK:
+ case HiveSqlParser.T_CALL:
+ case HiveSqlParser.T_DECLARE:
+ case HiveSqlParser.T_AS:
+ case HiveSqlParser.T_CONSTANT:
+ case HiveSqlParser.T_CONDITION:
+ case HiveSqlParser.T_IS:
+ case HiveSqlParser.T_RETURN:
+ case HiveSqlParser.T_ONLY:
+ case HiveSqlParser.T_TO:
+ case HiveSqlParser.T_CALLER:
+ case HiveSqlParser.T_CLIENT:
+ case HiveSqlParser.T_WITHOUT:
+ case HiveSqlParser.T_CONTINUE:
+ case HiveSqlParser.T_EXIT:
+ case HiveSqlParser.T_HANDLER:
+ case HiveSqlParser.T_SQLEXCEPTION:
+ case HiveSqlParser.T_SQLWARNING:
+ case HiveSqlParser.T_NOT:
+ case HiveSqlParser.T_FOUND:
+ case HiveSqlParser.T_GLOBAL:
+ case HiveSqlParser.T_TEMPORARY:
+ case HiveSqlParser.T_TABLE:
+ case HiveSqlParser.T_CREATE:
+ case HiveSqlParser.T_IF:
+ case HiveSqlParser.T_EXISTS:
+ case HiveSqlParser.T_LOCAL:
+ case HiveSqlParser.T_MULTISET:
+ case HiveSqlParser.T_VOLATILE:
+ case HiveSqlParser.T_LIKE:
+ case HiveSqlParser.T_CONSTRAINT:
+ case HiveSqlParser.T_PRIMARY:
+ case HiveSqlParser.T_KEY:
+ case HiveSqlParser.T_UNIQUE:
+ case HiveSqlParser.T_REFERENCES:
+ case HiveSqlParser.T_IDENTITY:
+ case HiveSqlParser.L_INT:
+ case HiveSqlParser.T_AUTO_INCREMENT:
+ case HiveSqlParser.T_ENABLE:
+ case HiveSqlParser.T_CLUSTERED:
+ case HiveSqlParser.T_ASC:
+ case HiveSqlParser.T_DESC:
+ case HiveSqlParser.T_FOREIGN:
+ case HiveSqlParser.T_ON:
+ case HiveSqlParser.T_UPDATE:
+ case HiveSqlParser.T_DELETE:
+ case HiveSqlParser.T_NO:
+ case HiveSqlParser.T_ACTION:
+ case HiveSqlParser.T_RESTRICT:
+ case HiveSqlParser.T_DEFAULT:
+ case HiveSqlParser.T_CASCADE:
+ case HiveSqlParser.T_LOG:
+ case HiveSqlParser.T_FALLBACK:
+ case HiveSqlParser.T_COMMIT:
+ case HiveSqlParser.T_PRESERVE:
+ case HiveSqlParser.T_ROWS:
+ case HiveSqlParser.T_SEGMENT:
+ case HiveSqlParser.T_CREATION:
+ case HiveSqlParser.T_IMMEDIATE:
+ case HiveSqlParser.T_DEFERRED:
+ case HiveSqlParser.T_PCTFREE:
+ case HiveSqlParser.T_PCTUSED:
+ case HiveSqlParser.T_INITRANS:
+ case HiveSqlParser.T_MAXTRANS:
+ case HiveSqlParser.T_NOCOMPRESS:
+ case HiveSqlParser.T_LOGGING:
+ case HiveSqlParser.T_NOLOGGING:
+ case HiveSqlParser.T_STORAGE:
+ case HiveSqlParser.T_TABLESPACE:
+ case HiveSqlParser.T_INDEX:
+ case HiveSqlParser.T_IN:
+ case HiveSqlParser.T_REPLACE:
+ case HiveSqlParser.T_DISTRIBUTE:
+ case HiveSqlParser.T_BY:
+ case HiveSqlParser.T_HASH:
+ case HiveSqlParser.T_LOGGED:
+ case HiveSqlParser.T_COMPRESS:
+ case HiveSqlParser.T_YES:
+ case HiveSqlParser.T_DEFINITION:
+ case HiveSqlParser.T_DROP:
+ case HiveSqlParser.T_DATA:
+ case HiveSqlParser.T_STORED:
+ case HiveSqlParser.T_ROW:
+ case HiveSqlParser.T_FORMAT:
+ case HiveSqlParser.T_DELIMITED:
+ case HiveSqlParser.T_FIELDS:
+ case HiveSqlParser.T_TERMINATED:
+ case HiveSqlParser.T_ESCAPED:
+ case HiveSqlParser.T_COLLECTION:
+ case HiveSqlParser.T_ITEMS:
+ case HiveSqlParser.T_MAP:
+ case HiveSqlParser.T_KEYS:
+ case HiveSqlParser.T_LINES:
+ case HiveSqlParser.T_DEFINED:
+ case HiveSqlParser.T_TEXTIMAGE_ON:
+ case HiveSqlParser.T_COMMENT:
+ case HiveSqlParser.T_CHARACTER:
+ case HiveSqlParser.T_CHARSET:
+ case HiveSqlParser.T_ENGINE:
+ case HiveSqlParser.T_ALTER:
+ case HiveSqlParser.T_ADD2:
+ case HiveSqlParser.T_CHAR:
+ case HiveSqlParser.T_BIGINT:
+ case HiveSqlParser.T_BINARY_DOUBLE:
+ case HiveSqlParser.T_BINARY_FLOAT:
+ case HiveSqlParser.T_BIT:
+ case HiveSqlParser.T_DATE:
+ case HiveSqlParser.T_DATETIME:
+ case HiveSqlParser.T_DEC:
+ case HiveSqlParser.T_DECIMAL:
+ case HiveSqlParser.T_DOUBLE:
+ case HiveSqlParser.T_PRECISION:
+ case HiveSqlParser.T_FLOAT:
+ case HiveSqlParser.T_INT:
+ case HiveSqlParser.T_INT2:
+ case HiveSqlParser.T_INT4:
+ case HiveSqlParser.T_INT8:
+ case HiveSqlParser.T_INTEGER:
+ case HiveSqlParser.T_NCHAR:
+ case HiveSqlParser.T_NVARCHAR:
+ case HiveSqlParser.T_NUMBER:
+ case HiveSqlParser.T_NUMERIC:
+ case HiveSqlParser.T_REAL:
+ case HiveSqlParser.T_RESULT_SET_LOCATOR:
+ case HiveSqlParser.T_VARYING:
+ case HiveSqlParser.T_SIMPLE_FLOAT:
+ case HiveSqlParser.T_SIMPLE_DOUBLE:
+ case HiveSqlParser.T_SMALLINT:
+ case HiveSqlParser.T_SMALLDATETIME:
+ case HiveSqlParser.T_STRING:
+ case HiveSqlParser.T_SYS_REFCURSOR:
+ case HiveSqlParser.T_TIMESTAMP:
+ case HiveSqlParser.T_VARCHAR:
+ case HiveSqlParser.T_VARCHAR2:
+ case HiveSqlParser.T_XML:
+ case HiveSqlParser.T_MAX:
+ case HiveSqlParser.T_BYTE:
+ case HiveSqlParser.T_CASESPECIFIC:
+ case HiveSqlParser.T_CS:
+ case HiveSqlParser.T_DATABASE:
+ case HiveSqlParser.T_SCHEMA:
+ case HiveSqlParser.T_LOCATION:
+ case HiveSqlParser.T_OR:
+ case HiveSqlParser.T_FUNCTION:
+ case HiveSqlParser.T_RETURNS:
+ case HiveSqlParser.T_PACKAGE:
+ case HiveSqlParser.T_PROC:
+ case HiveSqlParser.T_BODY:
+ case HiveSqlParser.T_OUT:
+ case HiveSqlParser.T_INOUT:
+ case HiveSqlParser.T_LANGUAGE:
+ case HiveSqlParser.T_SQL:
+ case HiveSqlParser.T_SECURITY:
+ case HiveSqlParser.T_CREATOR:
+ case HiveSqlParser.T_DEFINER:
+ case HiveSqlParser.T_INVOKER:
+ case HiveSqlParser.T_OWNER:
+ case HiveSqlParser.T_DYNAMIC:
+ case HiveSqlParser.T_SETS:
+ case HiveSqlParser.T_EXEC:
+ case HiveSqlParser.T_EXECUTE:
+ case HiveSqlParser.T_INTO:
+ case HiveSqlParser.T_INCLUDE:
+ case HiveSqlParser.T_INSERT:
+ case HiveSqlParser.T_OVERWRITE:
+ case HiveSqlParser.T_VALUES:
+ case HiveSqlParser.T_DIRECTORY:
+ case HiveSqlParser.T_GET:
+ case HiveSqlParser.T_DIAGNOSTICS:
+ case HiveSqlParser.T_MESSAGE_TEXT:
+ case HiveSqlParser.T_ROW_COUNT:
+ case HiveSqlParser.T_GRANT:
+ case HiveSqlParser.T_ROLE:
+ case HiveSqlParser.T_LEAVE:
+ case HiveSqlParser.T_OBJECT:
+ case HiveSqlParser.T_AT:
+ case HiveSqlParser.T_OPEN:
+ case HiveSqlParser.T_FETCH:
+ case HiveSqlParser.T_FROM:
+ case HiveSqlParser.T_COLLECT:
+ case HiveSqlParser.T_STATISTICS:
+ case HiveSqlParser.T_STATS:
+ case HiveSqlParser.T_COLUMN:
+ case HiveSqlParser.T_CLOSE:
+ case HiveSqlParser.T_CMP:
+ case HiveSqlParser.T_SUM:
+ case HiveSqlParser.T_COPY:
+ case HiveSqlParser.T_HDFS:
+ case HiveSqlParser.T_BATCHSIZE:
+ case HiveSqlParser.T_DELIMITER:
+ case HiveSqlParser.T_SQLINSERT:
+ case HiveSqlParser.T_IGNORE:
+ case HiveSqlParser.T_WORK:
+ case HiveSqlParser.T_PRINT:
+ case HiveSqlParser.T_QUIT:
+ case HiveSqlParser.T_RAISE:
+ case HiveSqlParser.T_RESIGNAL:
+ case HiveSqlParser.T_SQLSTATE:
+ case HiveSqlParser.T_VALUE:
+ case HiveSqlParser.T_ROLLBACK:
+ case HiveSqlParser.T_CURRENT:
+ case HiveSqlParser.T_CURRENT_SCHEMA:
+ case HiveSqlParser.T_ANSI_NULLS:
+ case HiveSqlParser.T_ANSI_PADDING:
+ case HiveSqlParser.T_NOCOUNT:
+ case HiveSqlParser.T_QUOTED_IDENTIFIER:
+ case HiveSqlParser.T_XACT_ABORT:
+ case HiveSqlParser.T_OFF:
+ case HiveSqlParser.T_QUERY_BAND:
+ case HiveSqlParser.T_NONE:
+ case HiveSqlParser.T_SESSION:
+ case HiveSqlParser.T_SIGNAL:
+ case HiveSqlParser.T_SUMMARY:
+ case HiveSqlParser.T_TOP:
+ case HiveSqlParser.T_LIMIT:
+ case HiveSqlParser.T_TRUNCATE:
+ case HiveSqlParser.T_USE:
+ case HiveSqlParser.T_WHILE:
+ case HiveSqlParser.T_DO:
+ case HiveSqlParser.T_LOOP:
+ case HiveSqlParser.T_REVERSE:
+ case HiveSqlParser.T_STEP:
+ case HiveSqlParser.T_USING:
+ case HiveSqlParser.T_ALL:
+ case HiveSqlParser.T_EXCEPT:
+ case HiveSqlParser.T_INTERSECT:
+ case HiveSqlParser.T_SELECT:
+ case HiveSqlParser.T_SEL:
+ case HiveSqlParser.T_DISTINCT:
+ case HiveSqlParser.T_TITLE:
+ case HiveSqlParser.L_S_STRING:
+ case HiveSqlParser.T_INNER:
+ case HiveSqlParser.T_JOIN:
+ case HiveSqlParser.T_LEFT:
+ case HiveSqlParser.T_RIGHT:
+ case HiveSqlParser.T_FULL:
+ case HiveSqlParser.T_OUTER:
+ case HiveSqlParser.T_GROUP:
+ case HiveSqlParser.T_HAVING:
+ case HiveSqlParser.T_QUALIFY:
+ case HiveSqlParser.T_ORDER:
+ case HiveSqlParser.T_RR:
+ case HiveSqlParser.T_RS:
+ case HiveSqlParser.T_UR:
+ case HiveSqlParser.T_AND:
+ case HiveSqlParser.T_KEEP:
+ case HiveSqlParser.T_EXCLUSIVE:
+ case HiveSqlParser.T_SHARE:
+ case HiveSqlParser.T_LOCKS:
+ case HiveSqlParser.T_MERGE:
+ case HiveSqlParser.T_MATCHED:
+ case HiveSqlParser.T_DESCRIBE:
+ case HiveSqlParser.T_BETWEEN:
+ case HiveSqlParser.T_RLIKE:
+ case HiveSqlParser.T_REGEXP:
+ case HiveSqlParser.T_INTERVAL:
+ case HiveSqlParser.T_DAY:
+ case HiveSqlParser.T_DAYS:
+ case HiveSqlParser.T_MICROSECOND:
+ case HiveSqlParser.T_MICROSECONDS:
+ case HiveSqlParser.T_SECOND:
+ case HiveSqlParser.T_SECONDS:
+ case HiveSqlParser.T_CONCAT:
+ case HiveSqlParser.T_CASE:
+ case HiveSqlParser.T_ISOPEN:
+ case HiveSqlParser.T_NOTFOUND:
+ case HiveSqlParser.T_AVG:
+ case HiveSqlParser.T_COUNT:
+ case HiveSqlParser.T_COUNT_BIG:
+ case HiveSqlParser.T_CUME_DIST:
+ case HiveSqlParser.T_DENSE_RANK:
+ case HiveSqlParser.T_FIRST_VALUE:
+ case HiveSqlParser.T_LAG:
+ case HiveSqlParser.T_LAST_VALUE:
+ case HiveSqlParser.T_LEAD:
+ case HiveSqlParser.T_MIN:
+ case HiveSqlParser.T_RANK:
+ case HiveSqlParser.T_ROW_NUMBER:
+ case HiveSqlParser.T_STDEV:
+ case HiveSqlParser.T_VAR:
+ case HiveSqlParser.T_VARIANCE:
+ case HiveSqlParser.T_OVER:
+ case HiveSqlParser.T_PARTITION:
+ case HiveSqlParser.T_ACTIVITY_COUNT:
+ case HiveSqlParser.T_CAST:
+ case HiveSqlParser.T_CURRENT_DATE:
+ case HiveSqlParser.T_CURRENT_TIMESTAMP:
+ case HiveSqlParser.T_CURRENT_USER:
+ case HiveSqlParser.T_USER:
+ case HiveSqlParser.T_MAX_PART_STRING:
+ case HiveSqlParser.T_MIN_PART_STRING:
+ case HiveSqlParser.T_MAX_PART_INT:
+ case HiveSqlParser.T_MIN_PART_INT:
+ case HiveSqlParser.T_MAX_PART_DATE:
+ case HiveSqlParser.T_MIN_PART_DATE:
+ case HiveSqlParser.T_PART_COUNT:
+ case HiveSqlParser.T_PART_LOC:
+ case HiveSqlParser.T_TRIM:
+ case HiveSqlParser.T_SUBSTRING:
+ case HiveSqlParser.T_SYSDATE:
+ case HiveSqlParser.T_HIVE:
+ case HiveSqlParser.T_HOST:
+ case HiveSqlParser.L_D_STRING:
+ case HiveSqlParser.L_DEC:
+ case HiveSqlParser.T_TRUE:
+ case HiveSqlParser.T_FALSE:
+ case HiveSqlParser.T_DIR:
+ case HiveSqlParser.T_FILE:
+ case HiveSqlParser.T_FILES:
+ case HiveSqlParser.T_NEW:
+ case HiveSqlParser.T_PWD:
+ case HiveSqlParser.T_SESSIONS:
+ case HiveSqlParser.T_SUBDIR:
+ this.state = 3024;
+ this.expr(0);
+ break;
+ case HiveSqlParser.T__5:
+ this.state = 3025;
+ this.match(HiveSqlParser.T__5);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 3028;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ break;
+
+ case 4:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 3029;
+ this.match(HiveSqlParser.T_CURRENT_DATE);
+ break;
+
+ case 5:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 3030;
+ this.match(HiveSqlParser.T_CURRENT);
+ this.state = 3031;
+ this.match(HiveSqlParser.T_DATE);
+ break;
+
+ case 6:
+ this.enterOuterAlt(localctx, 6);
+ this.state = 3035;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case HiveSqlParser.T_CURRENT_TIMESTAMP:
+ this.state = 3032;
+ this.match(HiveSqlParser.T_CURRENT_TIMESTAMP);
+ break;
+ case HiveSqlParser.T_CURRENT:
+ this.state = 3033;
+ this.match(HiveSqlParser.T_CURRENT);
+ this.state = 3034;
+ this.match(HiveSqlParser.T_TIMESTAMP);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 3041;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,386,this._ctx);
+ if(la_===1) {
+ this.state = 3037;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 3038;
+ this.expr(0);
+ this.state = 3039;
+ this.match(HiveSqlParser.T_CLOSE_P);
+
+ }
+ break;
+
+ case 7:
+ this.enterOuterAlt(localctx, 7);
+ this.state = 3043;
+ this.match(HiveSqlParser.T_CURRENT_USER);
+ break;
+
+ case 8:
+ this.enterOuterAlt(localctx, 8);
+ this.state = 3044;
+ this.match(HiveSqlParser.T_CURRENT);
+ this.state = 3045;
+ this.match(HiveSqlParser.T_USER);
+ break;
+
+ case 9:
+ this.enterOuterAlt(localctx, 9);
+ this.state = 3046;
+ this.match(HiveSqlParser.T_MAX_PART_STRING);
+ this.state = 3047;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 3048;
+ this.expr(0);
+ this.state = 3061;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_COMMA) {
+ this.state = 3049;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 3050;
+ this.expr(0);
+ this.state = 3058;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===HiveSqlParser.T_COMMA) {
+ this.state = 3051;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 3052;
+ this.expr(0);
+ this.state = 3053;
+ this.match(HiveSqlParser.T_EQUAL);
+ this.state = 3054;
+ this.expr(0);
+ this.state = 3060;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ }
+
+ this.state = 3063;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ break;
+
+ case 10:
+ this.enterOuterAlt(localctx, 10);
+ this.state = 3065;
+ this.match(HiveSqlParser.T_MIN_PART_STRING);
+ this.state = 3066;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 3067;
+ this.expr(0);
+ this.state = 3080;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_COMMA) {
+ this.state = 3068;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 3069;
+ this.expr(0);
+ this.state = 3077;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===HiveSqlParser.T_COMMA) {
+ this.state = 3070;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 3071;
+ this.expr(0);
+ this.state = 3072;
+ this.match(HiveSqlParser.T_EQUAL);
+ this.state = 3073;
+ this.expr(0);
+ this.state = 3079;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ }
+
+ this.state = 3082;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ break;
+
+ case 11:
+ this.enterOuterAlt(localctx, 11);
+ this.state = 3084;
+ this.match(HiveSqlParser.T_MAX_PART_INT);
+ this.state = 3085;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 3086;
+ this.expr(0);
+ this.state = 3099;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_COMMA) {
+ this.state = 3087;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 3088;
+ this.expr(0);
+ this.state = 3096;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===HiveSqlParser.T_COMMA) {
+ this.state = 3089;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 3090;
+ this.expr(0);
+ this.state = 3091;
+ this.match(HiveSqlParser.T_EQUAL);
+ this.state = 3092;
+ this.expr(0);
+ this.state = 3098;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ }
+
+ this.state = 3101;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ break;
+
+ case 12:
+ this.enterOuterAlt(localctx, 12);
+ this.state = 3103;
+ this.match(HiveSqlParser.T_MIN_PART_INT);
+ this.state = 3104;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 3105;
+ this.expr(0);
+ this.state = 3118;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_COMMA) {
+ this.state = 3106;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 3107;
+ this.expr(0);
+ this.state = 3115;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===HiveSqlParser.T_COMMA) {
+ this.state = 3108;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 3109;
+ this.expr(0);
+ this.state = 3110;
+ this.match(HiveSqlParser.T_EQUAL);
+ this.state = 3111;
+ this.expr(0);
+ this.state = 3117;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ }
+
+ this.state = 3120;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ break;
+
+ case 13:
+ this.enterOuterAlt(localctx, 13);
+ this.state = 3122;
+ this.match(HiveSqlParser.T_MAX_PART_DATE);
+ this.state = 3123;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 3124;
+ this.expr(0);
+ this.state = 3137;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_COMMA) {
+ this.state = 3125;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 3126;
+ this.expr(0);
+ this.state = 3134;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===HiveSqlParser.T_COMMA) {
+ this.state = 3127;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 3128;
+ this.expr(0);
+ this.state = 3129;
+ this.match(HiveSqlParser.T_EQUAL);
+ this.state = 3130;
+ this.expr(0);
+ this.state = 3136;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ }
+
+ this.state = 3139;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ break;
+
+ case 14:
+ this.enterOuterAlt(localctx, 14);
+ this.state = 3141;
+ this.match(HiveSqlParser.T_MIN_PART_DATE);
+ this.state = 3142;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 3143;
+ this.expr(0);
+ this.state = 3156;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_COMMA) {
+ this.state = 3144;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 3145;
+ this.expr(0);
+ this.state = 3153;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===HiveSqlParser.T_COMMA) {
+ this.state = 3146;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 3147;
+ this.expr(0);
+ this.state = 3148;
+ this.match(HiveSqlParser.T_EQUAL);
+ this.state = 3149;
+ this.expr(0);
+ this.state = 3155;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ }
+
+ this.state = 3158;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ break;
+
+ case 15:
+ this.enterOuterAlt(localctx, 15);
+ this.state = 3160;
+ this.match(HiveSqlParser.T_PART_COUNT);
+ this.state = 3161;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 3162;
+ this.expr(0);
+ this.state = 3170;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===HiveSqlParser.T_COMMA) {
+ this.state = 3163;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 3164;
+ this.expr(0);
+ this.state = 3165;
+ this.match(HiveSqlParser.T_EQUAL);
+ this.state = 3166;
+ this.expr(0);
+ this.state = 3172;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 3173;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ break;
+
+ case 16:
+ this.enterOuterAlt(localctx, 16);
+ this.state = 3175;
+ this.match(HiveSqlParser.T_PART_LOC);
+ this.state = 3176;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 3177;
+ this.expr(0);
+ this.state = 3183;
+ this._errHandler.sync(this);
+ var _alt = 1;
+ do {
+ switch (_alt) {
+ case 1:
+ this.state = 3178;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 3179;
+ this.expr(0);
+ this.state = 3180;
+ this.match(HiveSqlParser.T_EQUAL);
+ this.state = 3181;
+ this.expr(0);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 3185;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,400, this._ctx);
+ } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
+ this.state = 3189;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_COMMA) {
+ this.state = 3187;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 3188;
+ this.expr(0);
+ }
+
+ this.state = 3191;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ break;
+
+ case 17:
+ this.enterOuterAlt(localctx, 17);
+ this.state = 3193;
+ this.match(HiveSqlParser.T_TRIM);
+ this.state = 3194;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 3195;
+ this.expr(0);
+ this.state = 3196;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ break;
+
+ case 18:
+ this.enterOuterAlt(localctx, 18);
+ this.state = 3198;
+ this.match(HiveSqlParser.T_SUBSTRING);
+ this.state = 3199;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 3200;
+ this.expr(0);
+ this.state = 3201;
+ this.match(HiveSqlParser.T_FROM);
+ this.state = 3202;
+ this.expr(0);
+ this.state = 3205;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_FOR) {
+ this.state = 3203;
+ this.match(HiveSqlParser.T_FOR);
+ this.state = 3204;
+ this.expr(0);
+ }
+
+ this.state = 3207;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ break;
+
+ case 19:
+ this.enterOuterAlt(localctx, 19);
+ this.state = 3209;
+ this.match(HiveSqlParser.T_SYSDATE);
+ break;
+
+ case 20:
+ this.enterOuterAlt(localctx, 20);
+ this.state = 3210;
+ this.match(HiveSqlParser.T_USER);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Expr_funcContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_expr_func;
+ return this;
+}
+
+Expr_funcContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Expr_funcContext.prototype.constructor = Expr_funcContext;
+
+Expr_funcContext.prototype.ident = function() {
+ return this.getTypedRuleContext(IdentContext,0);
+};
+
+Expr_funcContext.prototype.T_OPEN_P = function() {
+ return this.getToken(HiveSqlParser.T_OPEN_P, 0);
+};
+
+Expr_funcContext.prototype.T_CLOSE_P = function() {
+ return this.getToken(HiveSqlParser.T_CLOSE_P, 0);
+};
+
+Expr_funcContext.prototype.expr_func_params = function() {
+ return this.getTypedRuleContext(Expr_func_paramsContext,0);
+};
+
+Expr_funcContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterExpr_func(this);
+ }
+};
+
+Expr_funcContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitExpr_func(this);
+ }
+};
+
+Expr_funcContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitExpr_func(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Expr_funcContext = Expr_funcContext;
+
+HiveSqlParser.prototype.expr_func = function() {
+
+ var localctx = new Expr_funcContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 412, HiveSqlParser.RULE_expr_func);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3213;
+ this.ident();
+ this.state = 3214;
+ this.match(HiveSqlParser.T_OPEN_P);
+ this.state = 3216;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,404,this._ctx);
+ if(la_===1) {
+ this.state = 3215;
+ this.expr_func_params();
+
+ }
+ this.state = 3218;
+ this.match(HiveSqlParser.T_CLOSE_P);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Expr_func_paramsContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_expr_func_params;
+ return this;
+}
+
+Expr_func_paramsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Expr_func_paramsContext.prototype.constructor = Expr_func_paramsContext;
+
+Expr_func_paramsContext.prototype.func_param = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Func_paramContext);
+ } else {
+ return this.getTypedRuleContext(Func_paramContext,i);
+ }
+};
+
+Expr_func_paramsContext.prototype.T_COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.T_COMMA);
+ } else {
+ return this.getToken(HiveSqlParser.T_COMMA, i);
+ }
+};
+
+
+Expr_func_paramsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterExpr_func_params(this);
+ }
+};
+
+Expr_func_paramsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitExpr_func_params(this);
+ }
+};
+
+Expr_func_paramsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitExpr_func_params(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Expr_func_paramsContext = Expr_func_paramsContext;
+
+HiveSqlParser.prototype.expr_func_params = function() {
+
+ var localctx = new Expr_func_paramsContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 414, HiveSqlParser.RULE_expr_func_params);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3220;
+ this.func_param();
+ this.state = 3225;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,405,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 3221;
+ this.match(HiveSqlParser.T_COMMA);
+ this.state = 3222;
+ this.func_param();
+ }
+ this.state = 3227;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,405,this._ctx);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Func_paramContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_func_param;
+ return this;
+}
+
+Func_paramContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Func_paramContext.prototype.constructor = Func_paramContext;
+
+Func_paramContext.prototype.expr = function() {
+ return this.getTypedRuleContext(ExprContext,0);
+};
+
+Func_paramContext.prototype.ident = function() {
+ return this.getTypedRuleContext(IdentContext,0);
+};
+
+Func_paramContext.prototype.T_EQUAL = function() {
+ return this.getToken(HiveSqlParser.T_EQUAL, 0);
+};
+
+Func_paramContext.prototype.T_GREATER = function() {
+ return this.getToken(HiveSqlParser.T_GREATER, 0);
+};
+
+Func_paramContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterFunc_param(this);
+ }
+};
+
+Func_paramContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitFunc_param(this);
+ }
+};
+
+Func_paramContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitFunc_param(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Func_paramContext = Func_paramContext;
+
+HiveSqlParser.prototype.func_param = function() {
+
+ var localctx = new Func_paramContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 416, HiveSqlParser.RULE_func_param);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3228;
+ if (!( !this._input.LT(1).getText().equalsIgnoreCase("INTO"))) {
+ throw new antlr4.error.FailedPredicateException(this, "!this._input.LT(1).getText().equalsIgnoreCase(\"INTO\")");
+ }
+ this.state = 3234;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,407,this._ctx);
+ if(la_===1) {
+ this.state = 3229;
+ this.ident();
+ this.state = 3230;
+ this.match(HiveSqlParser.T_EQUAL);
+ this.state = 3232;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T_GREATER) {
+ this.state = 3231;
+ this.match(HiveSqlParser.T_GREATER);
+ }
+
+
+ }
+ this.state = 3236;
+ this.expr(0);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Expr_selectContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_expr_select;
+ return this;
+}
+
+Expr_selectContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Expr_selectContext.prototype.constructor = Expr_selectContext;
+
+Expr_selectContext.prototype.select_stmt = function() {
+ return this.getTypedRuleContext(Select_stmtContext,0);
+};
+
+Expr_selectContext.prototype.expr = function() {
+ return this.getTypedRuleContext(ExprContext,0);
+};
+
+Expr_selectContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterExpr_select(this);
+ }
+};
+
+Expr_selectContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitExpr_select(this);
+ }
+};
+
+Expr_selectContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitExpr_select(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Expr_selectContext = Expr_selectContext;
+
+HiveSqlParser.prototype.expr_select = function() {
+
+ var localctx = new Expr_selectContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 418, HiveSqlParser.RULE_expr_select);
+ try {
+ this.state = 3240;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,408,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3238;
+ this.select_stmt();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 3239;
+ this.expr(0);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Expr_fileContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_expr_file;
+ return this;
+}
+
+Expr_fileContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Expr_fileContext.prototype.constructor = Expr_fileContext;
+
+Expr_fileContext.prototype.file_name = function() {
+ return this.getTypedRuleContext(File_nameContext,0);
+};
+
+Expr_fileContext.prototype.expr = function() {
+ return this.getTypedRuleContext(ExprContext,0);
+};
+
+Expr_fileContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterExpr_file(this);
+ }
+};
+
+Expr_fileContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitExpr_file(this);
+ }
+};
+
+Expr_fileContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitExpr_file(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Expr_fileContext = Expr_fileContext;
+
+HiveSqlParser.prototype.expr_file = function() {
+
+ var localctx = new Expr_fileContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 420, HiveSqlParser.RULE_expr_file);
+ try {
+ this.state = 3244;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,409,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3242;
+ this.file_name();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 3243;
+ this.expr(0);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function HiveContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_hive;
+ return this;
+}
+
+HiveContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+HiveContext.prototype.constructor = HiveContext;
+
+HiveContext.prototype.T_HIVE = function() {
+ return this.getToken(HiveSqlParser.T_HIVE, 0);
+};
+
+HiveContext.prototype.hive_item = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Hive_itemContext);
+ } else {
+ return this.getTypedRuleContext(Hive_itemContext,i);
+ }
+};
+
+HiveContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterHive(this);
+ }
+};
+
+HiveContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitHive(this);
+ }
+};
+
+HiveContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitHive(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.HiveContext = HiveContext;
+
+HiveSqlParser.prototype.hive = function() {
+
+ var localctx = new HiveContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 422, HiveSqlParser.RULE_hive);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3246;
+ this.match(HiveSqlParser.T_HIVE);
+ this.state = 3250;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,410,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 3247;
+ this.hive_item();
+ }
+ this.state = 3252;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,410,this._ctx);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Hive_itemContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_hive_item;
+ return this;
+}
+
+Hive_itemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Hive_itemContext.prototype.constructor = Hive_itemContext;
+
+Hive_itemContext.prototype.T_SUB = function() {
+ return this.getToken(HiveSqlParser.T_SUB, 0);
+};
+
+Hive_itemContext.prototype.ident = function() {
+ return this.getTypedRuleContext(IdentContext,0);
+};
+
+Hive_itemContext.prototype.expr = function() {
+ return this.getTypedRuleContext(ExprContext,0);
+};
+
+Hive_itemContext.prototype.L_ID = function() {
+ return this.getToken(HiveSqlParser.L_ID, 0);
+};
+
+Hive_itemContext.prototype.T_EQUAL = function() {
+ return this.getToken(HiveSqlParser.T_EQUAL, 0);
+};
+
+Hive_itemContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterHive_item(this);
+ }
+};
+
+Hive_itemContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitHive_item(this);
+ }
+};
+
+Hive_itemContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitHive_item(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Hive_itemContext = Hive_itemContext;
+
+HiveSqlParser.prototype.hive_item = function() {
+
+ var localctx = new Hive_itemContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 424, HiveSqlParser.RULE_hive_item);
+ try {
+ this.state = 3265;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,411,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3253;
+ this.match(HiveSqlParser.T_SUB);
+ this.state = 3254;
+ this.ident();
+ this.state = 3255;
+ this.expr(0);
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 3257;
+ this.match(HiveSqlParser.T_SUB);
+ this.state = 3258;
+ this.ident();
+ this.state = 3259;
+ this.match(HiveSqlParser.L_ID);
+ this.state = 3260;
+ this.match(HiveSqlParser.T_EQUAL);
+ this.state = 3261;
+ this.expr(0);
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 3263;
+ this.match(HiveSqlParser.T_SUB);
+ this.state = 3264;
+ this.ident();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function HostContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_host;
+ return this;
+}
+
+HostContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+HostContext.prototype.constructor = HostContext;
+
+HostContext.prototype.host_cmd = function() {
+ return this.getTypedRuleContext(Host_cmdContext,0);
+};
+
+HostContext.prototype.host_stmt = function() {
+ return this.getTypedRuleContext(Host_stmtContext,0);
+};
+
+HostContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterHost(this);
+ }
+};
+
+HostContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitHost(this);
+ }
+};
+
+HostContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitHost(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.HostContext = HostContext;
+
+HiveSqlParser.prototype.host = function() {
+
+ var localctx = new HostContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 426, HiveSqlParser.RULE_host);
+ try {
+ this.state = 3272;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case HiveSqlParser.T__6:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3267;
+ this.match(HiveSqlParser.T__6);
+ this.state = 3268;
+ this.host_cmd();
+ this.state = 3269;
+ this.match(HiveSqlParser.T__7);
+ break;
+ case HiveSqlParser.T_HOST:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 3271;
+ this.host_stmt();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Host_cmdContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_host_cmd;
+ return this;
+}
+
+Host_cmdContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Host_cmdContext.prototype.constructor = Host_cmdContext;
+
+
+Host_cmdContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterHost_cmd(this);
+ }
+};
+
+Host_cmdContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitHost_cmd(this);
+ }
+};
+
+Host_cmdContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitHost_cmd(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Host_cmdContext = Host_cmdContext;
+
+HiveSqlParser.prototype.host_cmd = function() {
+
+ var localctx = new Host_cmdContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 428, HiveSqlParser.RULE_host_cmd);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3277;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,413,this._ctx)
+ while(_alt!=1 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1+1) {
+ this.state = 3274;
+ this.matchWildcard();
+ }
+ this.state = 3279;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,413,this._ctx);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Host_stmtContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_host_stmt;
+ return this;
+}
+
+Host_stmtContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Host_stmtContext.prototype.constructor = Host_stmtContext;
+
+Host_stmtContext.prototype.T_HOST = function() {
+ return this.getToken(HiveSqlParser.T_HOST, 0);
+};
+
+Host_stmtContext.prototype.expr = function() {
+ return this.getTypedRuleContext(ExprContext,0);
+};
+
+Host_stmtContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterHost_stmt(this);
+ }
+};
+
+Host_stmtContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitHost_stmt(this);
+ }
+};
+
+Host_stmtContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitHost_stmt(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Host_stmtContext = Host_stmtContext;
+
+HiveSqlParser.prototype.host_stmt = function() {
+
+ var localctx = new Host_stmtContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 430, HiveSqlParser.RULE_host_stmt);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3280;
+ this.match(HiveSqlParser.T_HOST);
+ this.state = 3281;
+ this.expr(0);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function File_nameContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_file_name;
+ return this;
+}
+
+File_nameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+File_nameContext.prototype.constructor = File_nameContext;
+
+File_nameContext.prototype.L_FILE = function() {
+ return this.getToken(HiveSqlParser.L_FILE, 0);
+};
+
+File_nameContext.prototype.ident = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(IdentContext);
+ } else {
+ return this.getTypedRuleContext(IdentContext,i);
+ }
+};
+
+File_nameContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterFile_name(this);
+ }
+};
+
+File_nameContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitFile_name(this);
+ }
+};
+
+File_nameContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitFile_name(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.File_nameContext = File_nameContext;
+
+HiveSqlParser.prototype.file_name = function() {
+
+ var localctx = new File_nameContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 432, HiveSqlParser.RULE_file_name);
+ try {
+ this.state = 3297;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case HiveSqlParser.L_FILE:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3283;
+ this.match(HiveSqlParser.L_FILE);
+ break;
+ case HiveSqlParser.T__2:
+ case HiveSqlParser.T__4:
+ case HiveSqlParser.T__8:
+ case HiveSqlParser.T_GO:
+ case HiveSqlParser.T_BEGIN:
+ case HiveSqlParser.T_EXCEPTION:
+ case HiveSqlParser.L_ID:
+ case HiveSqlParser.T_THEN:
+ case HiveSqlParser.T_SET:
+ case HiveSqlParser.T_ALLOCATE:
+ case HiveSqlParser.T_CURSOR:
+ case HiveSqlParser.T_FOR:
+ case HiveSqlParser.T_RESULT:
+ case HiveSqlParser.T_PROCEDURE:
+ case HiveSqlParser.T_ASSOCIATE:
+ case HiveSqlParser.T_LOCATOR:
+ case HiveSqlParser.T_LOCATORS:
+ case HiveSqlParser.T_WITH:
+ case HiveSqlParser.T_TRANSACTION:
+ case HiveSqlParser.T_BREAK:
+ case HiveSqlParser.T_CALL:
+ case HiveSqlParser.T_DECLARE:
+ case HiveSqlParser.T_AS:
+ case HiveSqlParser.T_CONSTANT:
+ case HiveSqlParser.T_CONDITION:
+ case HiveSqlParser.T_IS:
+ case HiveSqlParser.T_RETURN:
+ case HiveSqlParser.T_ONLY:
+ case HiveSqlParser.T_TO:
+ case HiveSqlParser.T_CALLER:
+ case HiveSqlParser.T_CLIENT:
+ case HiveSqlParser.T_WITHOUT:
+ case HiveSqlParser.T_CONTINUE:
+ case HiveSqlParser.T_EXIT:
+ case HiveSqlParser.T_HANDLER:
+ case HiveSqlParser.T_SQLEXCEPTION:
+ case HiveSqlParser.T_SQLWARNING:
+ case HiveSqlParser.T_NOT:
+ case HiveSqlParser.T_FOUND:
+ case HiveSqlParser.T_GLOBAL:
+ case HiveSqlParser.T_TEMPORARY:
+ case HiveSqlParser.T_TABLE:
+ case HiveSqlParser.T_CREATE:
+ case HiveSqlParser.T_IF:
+ case HiveSqlParser.T_EXISTS:
+ case HiveSqlParser.T_LOCAL:
+ case HiveSqlParser.T_MULTISET:
+ case HiveSqlParser.T_VOLATILE:
+ case HiveSqlParser.T_LIKE:
+ case HiveSqlParser.T_CONSTRAINT:
+ case HiveSqlParser.T_PRIMARY:
+ case HiveSqlParser.T_KEY:
+ case HiveSqlParser.T_UNIQUE:
+ case HiveSqlParser.T_REFERENCES:
+ case HiveSqlParser.T_IDENTITY:
+ case HiveSqlParser.T_AUTO_INCREMENT:
+ case HiveSqlParser.T_ENABLE:
+ case HiveSqlParser.T_CLUSTERED:
+ case HiveSqlParser.T_ASC:
+ case HiveSqlParser.T_DESC:
+ case HiveSqlParser.T_FOREIGN:
+ case HiveSqlParser.T_ON:
+ case HiveSqlParser.T_UPDATE:
+ case HiveSqlParser.T_DELETE:
+ case HiveSqlParser.T_NO:
+ case HiveSqlParser.T_ACTION:
+ case HiveSqlParser.T_RESTRICT:
+ case HiveSqlParser.T_DEFAULT:
+ case HiveSqlParser.T_CASCADE:
+ case HiveSqlParser.T_LOG:
+ case HiveSqlParser.T_FALLBACK:
+ case HiveSqlParser.T_COMMIT:
+ case HiveSqlParser.T_PRESERVE:
+ case HiveSqlParser.T_ROWS:
+ case HiveSqlParser.T_SEGMENT:
+ case HiveSqlParser.T_CREATION:
+ case HiveSqlParser.T_IMMEDIATE:
+ case HiveSqlParser.T_DEFERRED:
+ case HiveSqlParser.T_PCTFREE:
+ case HiveSqlParser.T_PCTUSED:
+ case HiveSqlParser.T_INITRANS:
+ case HiveSqlParser.T_MAXTRANS:
+ case HiveSqlParser.T_NOCOMPRESS:
+ case HiveSqlParser.T_LOGGING:
+ case HiveSqlParser.T_NOLOGGING:
+ case HiveSqlParser.T_STORAGE:
+ case HiveSqlParser.T_TABLESPACE:
+ case HiveSqlParser.T_INDEX:
+ case HiveSqlParser.T_IN:
+ case HiveSqlParser.T_REPLACE:
+ case HiveSqlParser.T_DISTRIBUTE:
+ case HiveSqlParser.T_BY:
+ case HiveSqlParser.T_HASH:
+ case HiveSqlParser.T_LOGGED:
+ case HiveSqlParser.T_COMPRESS:
+ case HiveSqlParser.T_YES:
+ case HiveSqlParser.T_DEFINITION:
+ case HiveSqlParser.T_DROP:
+ case HiveSqlParser.T_DATA:
+ case HiveSqlParser.T_STORED:
+ case HiveSqlParser.T_ROW:
+ case HiveSqlParser.T_FORMAT:
+ case HiveSqlParser.T_DELIMITED:
+ case HiveSqlParser.T_FIELDS:
+ case HiveSqlParser.T_TERMINATED:
+ case HiveSqlParser.T_ESCAPED:
+ case HiveSqlParser.T_COLLECTION:
+ case HiveSqlParser.T_ITEMS:
+ case HiveSqlParser.T_MAP:
+ case HiveSqlParser.T_KEYS:
+ case HiveSqlParser.T_LINES:
+ case HiveSqlParser.T_DEFINED:
+ case HiveSqlParser.T_TEXTIMAGE_ON:
+ case HiveSqlParser.T_COMMENT:
+ case HiveSqlParser.T_CHARACTER:
+ case HiveSqlParser.T_CHARSET:
+ case HiveSqlParser.T_ENGINE:
+ case HiveSqlParser.T_ALTER:
+ case HiveSqlParser.T_ADD2:
+ case HiveSqlParser.T_CHAR:
+ case HiveSqlParser.T_BIGINT:
+ case HiveSqlParser.T_BINARY_DOUBLE:
+ case HiveSqlParser.T_BINARY_FLOAT:
+ case HiveSqlParser.T_BIT:
+ case HiveSqlParser.T_DATE:
+ case HiveSqlParser.T_DATETIME:
+ case HiveSqlParser.T_DEC:
+ case HiveSqlParser.T_DECIMAL:
+ case HiveSqlParser.T_DOUBLE:
+ case HiveSqlParser.T_PRECISION:
+ case HiveSqlParser.T_FLOAT:
+ case HiveSqlParser.T_INT:
+ case HiveSqlParser.T_INT2:
+ case HiveSqlParser.T_INT4:
+ case HiveSqlParser.T_INT8:
+ case HiveSqlParser.T_INTEGER:
+ case HiveSqlParser.T_NCHAR:
+ case HiveSqlParser.T_NVARCHAR:
+ case HiveSqlParser.T_NUMBER:
+ case HiveSqlParser.T_NUMERIC:
+ case HiveSqlParser.T_REAL:
+ case HiveSqlParser.T_RESULT_SET_LOCATOR:
+ case HiveSqlParser.T_VARYING:
+ case HiveSqlParser.T_SIMPLE_FLOAT:
+ case HiveSqlParser.T_SIMPLE_DOUBLE:
+ case HiveSqlParser.T_SMALLINT:
+ case HiveSqlParser.T_SMALLDATETIME:
+ case HiveSqlParser.T_STRING:
+ case HiveSqlParser.T_SYS_REFCURSOR:
+ case HiveSqlParser.T_TIMESTAMP:
+ case HiveSqlParser.T_VARCHAR:
+ case HiveSqlParser.T_VARCHAR2:
+ case HiveSqlParser.T_XML:
+ case HiveSqlParser.T_MAX:
+ case HiveSqlParser.T_BYTE:
+ case HiveSqlParser.T_CASESPECIFIC:
+ case HiveSqlParser.T_CS:
+ case HiveSqlParser.T_DATABASE:
+ case HiveSqlParser.T_SCHEMA:
+ case HiveSqlParser.T_LOCATION:
+ case HiveSqlParser.T_OR:
+ case HiveSqlParser.T_FUNCTION:
+ case HiveSqlParser.T_RETURNS:
+ case HiveSqlParser.T_PACKAGE:
+ case HiveSqlParser.T_PROC:
+ case HiveSqlParser.T_BODY:
+ case HiveSqlParser.T_OUT:
+ case HiveSqlParser.T_INOUT:
+ case HiveSqlParser.T_LANGUAGE:
+ case HiveSqlParser.T_SQL:
+ case HiveSqlParser.T_SECURITY:
+ case HiveSqlParser.T_CREATOR:
+ case HiveSqlParser.T_DEFINER:
+ case HiveSqlParser.T_INVOKER:
+ case HiveSqlParser.T_OWNER:
+ case HiveSqlParser.T_DYNAMIC:
+ case HiveSqlParser.T_SETS:
+ case HiveSqlParser.T_EXEC:
+ case HiveSqlParser.T_EXECUTE:
+ case HiveSqlParser.T_INTO:
+ case HiveSqlParser.T_INCLUDE:
+ case HiveSqlParser.T_INSERT:
+ case HiveSqlParser.T_OVERWRITE:
+ case HiveSqlParser.T_VALUES:
+ case HiveSqlParser.T_DIRECTORY:
+ case HiveSqlParser.T_GET:
+ case HiveSqlParser.T_DIAGNOSTICS:
+ case HiveSqlParser.T_MESSAGE_TEXT:
+ case HiveSqlParser.T_ROW_COUNT:
+ case HiveSqlParser.T_GRANT:
+ case HiveSqlParser.T_ROLE:
+ case HiveSqlParser.T_LEAVE:
+ case HiveSqlParser.T_OBJECT:
+ case HiveSqlParser.T_AT:
+ case HiveSqlParser.T_OPEN:
+ case HiveSqlParser.T_FETCH:
+ case HiveSqlParser.T_FROM:
+ case HiveSqlParser.T_COLLECT:
+ case HiveSqlParser.T_STATISTICS:
+ case HiveSqlParser.T_STATS:
+ case HiveSqlParser.T_COLUMN:
+ case HiveSqlParser.T_CLOSE:
+ case HiveSqlParser.T_CMP:
+ case HiveSqlParser.T_SUM:
+ case HiveSqlParser.T_COPY:
+ case HiveSqlParser.T_HDFS:
+ case HiveSqlParser.T_BATCHSIZE:
+ case HiveSqlParser.T_DELIMITER:
+ case HiveSqlParser.T_SQLINSERT:
+ case HiveSqlParser.T_IGNORE:
+ case HiveSqlParser.T_WORK:
+ case HiveSqlParser.T_PRINT:
+ case HiveSqlParser.T_QUIT:
+ case HiveSqlParser.T_RAISE:
+ case HiveSqlParser.T_RESIGNAL:
+ case HiveSqlParser.T_SQLSTATE:
+ case HiveSqlParser.T_VALUE:
+ case HiveSqlParser.T_ROLLBACK:
+ case HiveSqlParser.T_CURRENT:
+ case HiveSqlParser.T_CURRENT_SCHEMA:
+ case HiveSqlParser.T_ANSI_NULLS:
+ case HiveSqlParser.T_ANSI_PADDING:
+ case HiveSqlParser.T_NOCOUNT:
+ case HiveSqlParser.T_QUOTED_IDENTIFIER:
+ case HiveSqlParser.T_XACT_ABORT:
+ case HiveSqlParser.T_OFF:
+ case HiveSqlParser.T_QUERY_BAND:
+ case HiveSqlParser.T_NONE:
+ case HiveSqlParser.T_SESSION:
+ case HiveSqlParser.T_SIGNAL:
+ case HiveSqlParser.T_SUMMARY:
+ case HiveSqlParser.T_TOP:
+ case HiveSqlParser.T_LIMIT:
+ case HiveSqlParser.T_TRUNCATE:
+ case HiveSqlParser.T_USE:
+ case HiveSqlParser.T_WHILE:
+ case HiveSqlParser.T_DO:
+ case HiveSqlParser.T_LOOP:
+ case HiveSqlParser.T_REVERSE:
+ case HiveSqlParser.T_STEP:
+ case HiveSqlParser.T_USING:
+ case HiveSqlParser.T_ALL:
+ case HiveSqlParser.T_EXCEPT:
+ case HiveSqlParser.T_INTERSECT:
+ case HiveSqlParser.T_SELECT:
+ case HiveSqlParser.T_SEL:
+ case HiveSqlParser.T_DISTINCT:
+ case HiveSqlParser.T_TITLE:
+ case HiveSqlParser.T_INNER:
+ case HiveSqlParser.T_JOIN:
+ case HiveSqlParser.T_LEFT:
+ case HiveSqlParser.T_RIGHT:
+ case HiveSqlParser.T_FULL:
+ case HiveSqlParser.T_OUTER:
+ case HiveSqlParser.T_GROUP:
+ case HiveSqlParser.T_HAVING:
+ case HiveSqlParser.T_QUALIFY:
+ case HiveSqlParser.T_ORDER:
+ case HiveSqlParser.T_RR:
+ case HiveSqlParser.T_RS:
+ case HiveSqlParser.T_UR:
+ case HiveSqlParser.T_AND:
+ case HiveSqlParser.T_KEEP:
+ case HiveSqlParser.T_EXCLUSIVE:
+ case HiveSqlParser.T_SHARE:
+ case HiveSqlParser.T_LOCKS:
+ case HiveSqlParser.T_MERGE:
+ case HiveSqlParser.T_MATCHED:
+ case HiveSqlParser.T_DESCRIBE:
+ case HiveSqlParser.T_BETWEEN:
+ case HiveSqlParser.T_RLIKE:
+ case HiveSqlParser.T_REGEXP:
+ case HiveSqlParser.T_INTERVAL:
+ case HiveSqlParser.T_DAY:
+ case HiveSqlParser.T_DAYS:
+ case HiveSqlParser.T_MICROSECOND:
+ case HiveSqlParser.T_MICROSECONDS:
+ case HiveSqlParser.T_SECOND:
+ case HiveSqlParser.T_SECONDS:
+ case HiveSqlParser.T_CONCAT:
+ case HiveSqlParser.T_CASE:
+ case HiveSqlParser.T_ISOPEN:
+ case HiveSqlParser.T_NOTFOUND:
+ case HiveSqlParser.T_AVG:
+ case HiveSqlParser.T_COUNT:
+ case HiveSqlParser.T_COUNT_BIG:
+ case HiveSqlParser.T_CUME_DIST:
+ case HiveSqlParser.T_DENSE_RANK:
+ case HiveSqlParser.T_FIRST_VALUE:
+ case HiveSqlParser.T_LAG:
+ case HiveSqlParser.T_LAST_VALUE:
+ case HiveSqlParser.T_LEAD:
+ case HiveSqlParser.T_MIN:
+ case HiveSqlParser.T_RANK:
+ case HiveSqlParser.T_ROW_NUMBER:
+ case HiveSqlParser.T_STDEV:
+ case HiveSqlParser.T_VAR:
+ case HiveSqlParser.T_VARIANCE:
+ case HiveSqlParser.T_OVER:
+ case HiveSqlParser.T_PARTITION:
+ case HiveSqlParser.T_ACTIVITY_COUNT:
+ case HiveSqlParser.T_CAST:
+ case HiveSqlParser.T_CURRENT_DATE:
+ case HiveSqlParser.T_CURRENT_TIMESTAMP:
+ case HiveSqlParser.T_CURRENT_USER:
+ case HiveSqlParser.T_USER:
+ case HiveSqlParser.T_PART_COUNT:
+ case HiveSqlParser.T_PART_LOC:
+ case HiveSqlParser.T_TRIM:
+ case HiveSqlParser.T_SUBSTRING:
+ case HiveSqlParser.T_SYSDATE:
+ case HiveSqlParser.T_HIVE:
+ case HiveSqlParser.T_HOST:
+ case HiveSqlParser.T_TRUE:
+ case HiveSqlParser.T_FALSE:
+ case HiveSqlParser.T_DIR:
+ case HiveSqlParser.T_FILE:
+ case HiveSqlParser.T_FILES:
+ case HiveSqlParser.T_NEW:
+ case HiveSqlParser.T_PWD:
+ case HiveSqlParser.T_SESSIONS:
+ case HiveSqlParser.T_SUBDIR:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 3287;
+ this._errHandler.sync(this);
+ switch (this._input.LA(1)) {
+ case HiveSqlParser.T__2:
+ this.state = 3284;
+ this.match(HiveSqlParser.T__2);
+ break;
+ case HiveSqlParser.T__4:
+ this.state = 3285;
+ this.match(HiveSqlParser.T__4);
+ this.state = 3286;
+ this.match(HiveSqlParser.T__2);
+ break;
+ case HiveSqlParser.T__8:
+ case HiveSqlParser.T_GO:
+ case HiveSqlParser.T_BEGIN:
+ case HiveSqlParser.T_EXCEPTION:
+ case HiveSqlParser.L_ID:
+ case HiveSqlParser.T_THEN:
+ case HiveSqlParser.T_SET:
+ case HiveSqlParser.T_ALLOCATE:
+ case HiveSqlParser.T_CURSOR:
+ case HiveSqlParser.T_FOR:
+ case HiveSqlParser.T_RESULT:
+ case HiveSqlParser.T_PROCEDURE:
+ case HiveSqlParser.T_ASSOCIATE:
+ case HiveSqlParser.T_LOCATOR:
+ case HiveSqlParser.T_LOCATORS:
+ case HiveSqlParser.T_WITH:
+ case HiveSqlParser.T_TRANSACTION:
+ case HiveSqlParser.T_BREAK:
+ case HiveSqlParser.T_CALL:
+ case HiveSqlParser.T_DECLARE:
+ case HiveSqlParser.T_AS:
+ case HiveSqlParser.T_CONSTANT:
+ case HiveSqlParser.T_CONDITION:
+ case HiveSqlParser.T_IS:
+ case HiveSqlParser.T_RETURN:
+ case HiveSqlParser.T_ONLY:
+ case HiveSqlParser.T_TO:
+ case HiveSqlParser.T_CALLER:
+ case HiveSqlParser.T_CLIENT:
+ case HiveSqlParser.T_WITHOUT:
+ case HiveSqlParser.T_CONTINUE:
+ case HiveSqlParser.T_EXIT:
+ case HiveSqlParser.T_HANDLER:
+ case HiveSqlParser.T_SQLEXCEPTION:
+ case HiveSqlParser.T_SQLWARNING:
+ case HiveSqlParser.T_NOT:
+ case HiveSqlParser.T_FOUND:
+ case HiveSqlParser.T_GLOBAL:
+ case HiveSqlParser.T_TEMPORARY:
+ case HiveSqlParser.T_TABLE:
+ case HiveSqlParser.T_CREATE:
+ case HiveSqlParser.T_IF:
+ case HiveSqlParser.T_EXISTS:
+ case HiveSqlParser.T_LOCAL:
+ case HiveSqlParser.T_MULTISET:
+ case HiveSqlParser.T_VOLATILE:
+ case HiveSqlParser.T_LIKE:
+ case HiveSqlParser.T_CONSTRAINT:
+ case HiveSqlParser.T_PRIMARY:
+ case HiveSqlParser.T_KEY:
+ case HiveSqlParser.T_UNIQUE:
+ case HiveSqlParser.T_REFERENCES:
+ case HiveSqlParser.T_IDENTITY:
+ case HiveSqlParser.T_AUTO_INCREMENT:
+ case HiveSqlParser.T_ENABLE:
+ case HiveSqlParser.T_CLUSTERED:
+ case HiveSqlParser.T_ASC:
+ case HiveSqlParser.T_DESC:
+ case HiveSqlParser.T_FOREIGN:
+ case HiveSqlParser.T_ON:
+ case HiveSqlParser.T_UPDATE:
+ case HiveSqlParser.T_DELETE:
+ case HiveSqlParser.T_NO:
+ case HiveSqlParser.T_ACTION:
+ case HiveSqlParser.T_RESTRICT:
+ case HiveSqlParser.T_DEFAULT:
+ case HiveSqlParser.T_CASCADE:
+ case HiveSqlParser.T_LOG:
+ case HiveSqlParser.T_FALLBACK:
+ case HiveSqlParser.T_COMMIT:
+ case HiveSqlParser.T_PRESERVE:
+ case HiveSqlParser.T_ROWS:
+ case HiveSqlParser.T_SEGMENT:
+ case HiveSqlParser.T_CREATION:
+ case HiveSqlParser.T_IMMEDIATE:
+ case HiveSqlParser.T_DEFERRED:
+ case HiveSqlParser.T_PCTFREE:
+ case HiveSqlParser.T_PCTUSED:
+ case HiveSqlParser.T_INITRANS:
+ case HiveSqlParser.T_MAXTRANS:
+ case HiveSqlParser.T_NOCOMPRESS:
+ case HiveSqlParser.T_LOGGING:
+ case HiveSqlParser.T_NOLOGGING:
+ case HiveSqlParser.T_STORAGE:
+ case HiveSqlParser.T_TABLESPACE:
+ case HiveSqlParser.T_INDEX:
+ case HiveSqlParser.T_IN:
+ case HiveSqlParser.T_REPLACE:
+ case HiveSqlParser.T_DISTRIBUTE:
+ case HiveSqlParser.T_BY:
+ case HiveSqlParser.T_HASH:
+ case HiveSqlParser.T_LOGGED:
+ case HiveSqlParser.T_COMPRESS:
+ case HiveSqlParser.T_YES:
+ case HiveSqlParser.T_DEFINITION:
+ case HiveSqlParser.T_DROP:
+ case HiveSqlParser.T_DATA:
+ case HiveSqlParser.T_STORED:
+ case HiveSqlParser.T_ROW:
+ case HiveSqlParser.T_FORMAT:
+ case HiveSqlParser.T_DELIMITED:
+ case HiveSqlParser.T_FIELDS:
+ case HiveSqlParser.T_TERMINATED:
+ case HiveSqlParser.T_ESCAPED:
+ case HiveSqlParser.T_COLLECTION:
+ case HiveSqlParser.T_ITEMS:
+ case HiveSqlParser.T_MAP:
+ case HiveSqlParser.T_KEYS:
+ case HiveSqlParser.T_LINES:
+ case HiveSqlParser.T_DEFINED:
+ case HiveSqlParser.T_TEXTIMAGE_ON:
+ case HiveSqlParser.T_COMMENT:
+ case HiveSqlParser.T_CHARACTER:
+ case HiveSqlParser.T_CHARSET:
+ case HiveSqlParser.T_ENGINE:
+ case HiveSqlParser.T_ALTER:
+ case HiveSqlParser.T_ADD2:
+ case HiveSqlParser.T_CHAR:
+ case HiveSqlParser.T_BIGINT:
+ case HiveSqlParser.T_BINARY_DOUBLE:
+ case HiveSqlParser.T_BINARY_FLOAT:
+ case HiveSqlParser.T_BIT:
+ case HiveSqlParser.T_DATE:
+ case HiveSqlParser.T_DATETIME:
+ case HiveSqlParser.T_DEC:
+ case HiveSqlParser.T_DECIMAL:
+ case HiveSqlParser.T_DOUBLE:
+ case HiveSqlParser.T_PRECISION:
+ case HiveSqlParser.T_FLOAT:
+ case HiveSqlParser.T_INT:
+ case HiveSqlParser.T_INT2:
+ case HiveSqlParser.T_INT4:
+ case HiveSqlParser.T_INT8:
+ case HiveSqlParser.T_INTEGER:
+ case HiveSqlParser.T_NCHAR:
+ case HiveSqlParser.T_NVARCHAR:
+ case HiveSqlParser.T_NUMBER:
+ case HiveSqlParser.T_NUMERIC:
+ case HiveSqlParser.T_REAL:
+ case HiveSqlParser.T_RESULT_SET_LOCATOR:
+ case HiveSqlParser.T_VARYING:
+ case HiveSqlParser.T_SIMPLE_FLOAT:
+ case HiveSqlParser.T_SIMPLE_DOUBLE:
+ case HiveSqlParser.T_SMALLINT:
+ case HiveSqlParser.T_SMALLDATETIME:
+ case HiveSqlParser.T_STRING:
+ case HiveSqlParser.T_SYS_REFCURSOR:
+ case HiveSqlParser.T_TIMESTAMP:
+ case HiveSqlParser.T_VARCHAR:
+ case HiveSqlParser.T_VARCHAR2:
+ case HiveSqlParser.T_XML:
+ case HiveSqlParser.T_MAX:
+ case HiveSqlParser.T_BYTE:
+ case HiveSqlParser.T_CASESPECIFIC:
+ case HiveSqlParser.T_CS:
+ case HiveSqlParser.T_DATABASE:
+ case HiveSqlParser.T_SCHEMA:
+ case HiveSqlParser.T_LOCATION:
+ case HiveSqlParser.T_OR:
+ case HiveSqlParser.T_FUNCTION:
+ case HiveSqlParser.T_RETURNS:
+ case HiveSqlParser.T_PACKAGE:
+ case HiveSqlParser.T_PROC:
+ case HiveSqlParser.T_BODY:
+ case HiveSqlParser.T_OUT:
+ case HiveSqlParser.T_INOUT:
+ case HiveSqlParser.T_LANGUAGE:
+ case HiveSqlParser.T_SQL:
+ case HiveSqlParser.T_SECURITY:
+ case HiveSqlParser.T_CREATOR:
+ case HiveSqlParser.T_DEFINER:
+ case HiveSqlParser.T_INVOKER:
+ case HiveSqlParser.T_OWNER:
+ case HiveSqlParser.T_DYNAMIC:
+ case HiveSqlParser.T_SETS:
+ case HiveSqlParser.T_EXEC:
+ case HiveSqlParser.T_EXECUTE:
+ case HiveSqlParser.T_INTO:
+ case HiveSqlParser.T_INCLUDE:
+ case HiveSqlParser.T_INSERT:
+ case HiveSqlParser.T_OVERWRITE:
+ case HiveSqlParser.T_VALUES:
+ case HiveSqlParser.T_DIRECTORY:
+ case HiveSqlParser.T_GET:
+ case HiveSqlParser.T_DIAGNOSTICS:
+ case HiveSqlParser.T_MESSAGE_TEXT:
+ case HiveSqlParser.T_ROW_COUNT:
+ case HiveSqlParser.T_GRANT:
+ case HiveSqlParser.T_ROLE:
+ case HiveSqlParser.T_LEAVE:
+ case HiveSqlParser.T_OBJECT:
+ case HiveSqlParser.T_AT:
+ case HiveSqlParser.T_OPEN:
+ case HiveSqlParser.T_FETCH:
+ case HiveSqlParser.T_FROM:
+ case HiveSqlParser.T_COLLECT:
+ case HiveSqlParser.T_STATISTICS:
+ case HiveSqlParser.T_STATS:
+ case HiveSqlParser.T_COLUMN:
+ case HiveSqlParser.T_CLOSE:
+ case HiveSqlParser.T_CMP:
+ case HiveSqlParser.T_SUM:
+ case HiveSqlParser.T_COPY:
+ case HiveSqlParser.T_HDFS:
+ case HiveSqlParser.T_BATCHSIZE:
+ case HiveSqlParser.T_DELIMITER:
+ case HiveSqlParser.T_SQLINSERT:
+ case HiveSqlParser.T_IGNORE:
+ case HiveSqlParser.T_WORK:
+ case HiveSqlParser.T_PRINT:
+ case HiveSqlParser.T_QUIT:
+ case HiveSqlParser.T_RAISE:
+ case HiveSqlParser.T_RESIGNAL:
+ case HiveSqlParser.T_SQLSTATE:
+ case HiveSqlParser.T_VALUE:
+ case HiveSqlParser.T_ROLLBACK:
+ case HiveSqlParser.T_CURRENT:
+ case HiveSqlParser.T_CURRENT_SCHEMA:
+ case HiveSqlParser.T_ANSI_NULLS:
+ case HiveSqlParser.T_ANSI_PADDING:
+ case HiveSqlParser.T_NOCOUNT:
+ case HiveSqlParser.T_QUOTED_IDENTIFIER:
+ case HiveSqlParser.T_XACT_ABORT:
+ case HiveSqlParser.T_OFF:
+ case HiveSqlParser.T_QUERY_BAND:
+ case HiveSqlParser.T_NONE:
+ case HiveSqlParser.T_SESSION:
+ case HiveSqlParser.T_SIGNAL:
+ case HiveSqlParser.T_SUMMARY:
+ case HiveSqlParser.T_TOP:
+ case HiveSqlParser.T_LIMIT:
+ case HiveSqlParser.T_TRUNCATE:
+ case HiveSqlParser.T_USE:
+ case HiveSqlParser.T_WHILE:
+ case HiveSqlParser.T_DO:
+ case HiveSqlParser.T_LOOP:
+ case HiveSqlParser.T_REVERSE:
+ case HiveSqlParser.T_STEP:
+ case HiveSqlParser.T_USING:
+ case HiveSqlParser.T_ALL:
+ case HiveSqlParser.T_EXCEPT:
+ case HiveSqlParser.T_INTERSECT:
+ case HiveSqlParser.T_SELECT:
+ case HiveSqlParser.T_SEL:
+ case HiveSqlParser.T_DISTINCT:
+ case HiveSqlParser.T_TITLE:
+ case HiveSqlParser.T_INNER:
+ case HiveSqlParser.T_JOIN:
+ case HiveSqlParser.T_LEFT:
+ case HiveSqlParser.T_RIGHT:
+ case HiveSqlParser.T_FULL:
+ case HiveSqlParser.T_OUTER:
+ case HiveSqlParser.T_GROUP:
+ case HiveSqlParser.T_HAVING:
+ case HiveSqlParser.T_QUALIFY:
+ case HiveSqlParser.T_ORDER:
+ case HiveSqlParser.T_RR:
+ case HiveSqlParser.T_RS:
+ case HiveSqlParser.T_UR:
+ case HiveSqlParser.T_AND:
+ case HiveSqlParser.T_KEEP:
+ case HiveSqlParser.T_EXCLUSIVE:
+ case HiveSqlParser.T_SHARE:
+ case HiveSqlParser.T_LOCKS:
+ case HiveSqlParser.T_MERGE:
+ case HiveSqlParser.T_MATCHED:
+ case HiveSqlParser.T_DESCRIBE:
+ case HiveSqlParser.T_BETWEEN:
+ case HiveSqlParser.T_RLIKE:
+ case HiveSqlParser.T_REGEXP:
+ case HiveSqlParser.T_INTERVAL:
+ case HiveSqlParser.T_DAY:
+ case HiveSqlParser.T_DAYS:
+ case HiveSqlParser.T_MICROSECOND:
+ case HiveSqlParser.T_MICROSECONDS:
+ case HiveSqlParser.T_SECOND:
+ case HiveSqlParser.T_SECONDS:
+ case HiveSqlParser.T_CONCAT:
+ case HiveSqlParser.T_CASE:
+ case HiveSqlParser.T_ISOPEN:
+ case HiveSqlParser.T_NOTFOUND:
+ case HiveSqlParser.T_AVG:
+ case HiveSqlParser.T_COUNT:
+ case HiveSqlParser.T_COUNT_BIG:
+ case HiveSqlParser.T_CUME_DIST:
+ case HiveSqlParser.T_DENSE_RANK:
+ case HiveSqlParser.T_FIRST_VALUE:
+ case HiveSqlParser.T_LAG:
+ case HiveSqlParser.T_LAST_VALUE:
+ case HiveSqlParser.T_LEAD:
+ case HiveSqlParser.T_MIN:
+ case HiveSqlParser.T_RANK:
+ case HiveSqlParser.T_ROW_NUMBER:
+ case HiveSqlParser.T_STDEV:
+ case HiveSqlParser.T_VAR:
+ case HiveSqlParser.T_VARIANCE:
+ case HiveSqlParser.T_OVER:
+ case HiveSqlParser.T_PARTITION:
+ case HiveSqlParser.T_ACTIVITY_COUNT:
+ case HiveSqlParser.T_CAST:
+ case HiveSqlParser.T_CURRENT_DATE:
+ case HiveSqlParser.T_CURRENT_TIMESTAMP:
+ case HiveSqlParser.T_CURRENT_USER:
+ case HiveSqlParser.T_USER:
+ case HiveSqlParser.T_PART_COUNT:
+ case HiveSqlParser.T_PART_LOC:
+ case HiveSqlParser.T_TRIM:
+ case HiveSqlParser.T_SUBSTRING:
+ case HiveSqlParser.T_SYSDATE:
+ case HiveSqlParser.T_HIVE:
+ case HiveSqlParser.T_HOST:
+ case HiveSqlParser.T_TRUE:
+ case HiveSqlParser.T_FALSE:
+ case HiveSqlParser.T_DIR:
+ case HiveSqlParser.T_FILE:
+ case HiveSqlParser.T_FILES:
+ case HiveSqlParser.T_NEW:
+ case HiveSqlParser.T_PWD:
+ case HiveSqlParser.T_SESSIONS:
+ case HiveSqlParser.T_SUBDIR:
+ break;
+ default:
+ break;
+ }
+ this.state = 3289;
+ this.ident();
+ this.state = 3294;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,415,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 3290;
+ this.match(HiveSqlParser.T__2);
+ this.state = 3291;
+ this.ident();
+ }
+ this.state = 3296;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,415,this._ctx);
+ }
+
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Date_literalContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_date_literal;
+ return this;
+}
+
+Date_literalContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Date_literalContext.prototype.constructor = Date_literalContext;
+
+Date_literalContext.prototype.T_DATE = function() {
+ return this.getToken(HiveSqlParser.T_DATE, 0);
+};
+
+Date_literalContext.prototype.string = function() {
+ return this.getTypedRuleContext(StringContext,0);
+};
+
+Date_literalContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterDate_literal(this);
+ }
+};
+
+Date_literalContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitDate_literal(this);
+ }
+};
+
+Date_literalContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitDate_literal(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Date_literalContext = Date_literalContext;
+
+HiveSqlParser.prototype.date_literal = function() {
+
+ var localctx = new Date_literalContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 434, HiveSqlParser.RULE_date_literal);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3299;
+ this.match(HiveSqlParser.T_DATE);
+ this.state = 3300;
+ this.string();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Timestamp_literalContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_timestamp_literal;
+ return this;
+}
+
+Timestamp_literalContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Timestamp_literalContext.prototype.constructor = Timestamp_literalContext;
+
+Timestamp_literalContext.prototype.T_TIMESTAMP = function() {
+ return this.getToken(HiveSqlParser.T_TIMESTAMP, 0);
+};
+
+Timestamp_literalContext.prototype.string = function() {
+ return this.getTypedRuleContext(StringContext,0);
+};
+
+Timestamp_literalContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterTimestamp_literal(this);
+ }
+};
+
+Timestamp_literalContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitTimestamp_literal(this);
+ }
+};
+
+Timestamp_literalContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitTimestamp_literal(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Timestamp_literalContext = Timestamp_literalContext;
+
+HiveSqlParser.prototype.timestamp_literal = function() {
+
+ var localctx = new Timestamp_literalContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 436, HiveSqlParser.RULE_timestamp_literal);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3302;
+ this.match(HiveSqlParser.T_TIMESTAMP);
+ this.state = 3303;
+ this.string();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function IdentContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_ident;
+ return this;
+}
+
+IdentContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+IdentContext.prototype.constructor = IdentContext;
+
+IdentContext.prototype.L_ID = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(HiveSqlParser.L_ID);
+ } else {
+ return this.getToken(HiveSqlParser.L_ID, i);
+ }
+};
+
+
+IdentContext.prototype.non_reserved_words = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Non_reserved_wordsContext);
+ } else {
+ return this.getTypedRuleContext(Non_reserved_wordsContext,i);
+ }
+};
+
+IdentContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterIdent(this);
+ }
+};
+
+IdentContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitIdent(this);
+ }
+};
+
+IdentContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitIdent(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.IdentContext = IdentContext;
+
+HiveSqlParser.prototype.ident = function() {
+
+ var localctx = new IdentContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 438, HiveSqlParser.RULE_ident);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3306;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T__8) {
+ this.state = 3305;
+ this.match(HiveSqlParser.T__8);
+ }
+
+ this.state = 3310;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case HiveSqlParser.L_ID:
+ this.state = 3308;
+ this.match(HiveSqlParser.L_ID);
+ break;
+ case HiveSqlParser.T_GO:
+ case HiveSqlParser.T_BEGIN:
+ case HiveSqlParser.T_EXCEPTION:
+ case HiveSqlParser.T_THEN:
+ case HiveSqlParser.T_SET:
+ case HiveSqlParser.T_ALLOCATE:
+ case HiveSqlParser.T_CURSOR:
+ case HiveSqlParser.T_FOR:
+ case HiveSqlParser.T_RESULT:
+ case HiveSqlParser.T_PROCEDURE:
+ case HiveSqlParser.T_ASSOCIATE:
+ case HiveSqlParser.T_LOCATOR:
+ case HiveSqlParser.T_LOCATORS:
+ case HiveSqlParser.T_WITH:
+ case HiveSqlParser.T_TRANSACTION:
+ case HiveSqlParser.T_BREAK:
+ case HiveSqlParser.T_CALL:
+ case HiveSqlParser.T_DECLARE:
+ case HiveSqlParser.T_AS:
+ case HiveSqlParser.T_CONSTANT:
+ case HiveSqlParser.T_CONDITION:
+ case HiveSqlParser.T_IS:
+ case HiveSqlParser.T_RETURN:
+ case HiveSqlParser.T_ONLY:
+ case HiveSqlParser.T_TO:
+ case HiveSqlParser.T_CALLER:
+ case HiveSqlParser.T_CLIENT:
+ case HiveSqlParser.T_WITHOUT:
+ case HiveSqlParser.T_CONTINUE:
+ case HiveSqlParser.T_EXIT:
+ case HiveSqlParser.T_HANDLER:
+ case HiveSqlParser.T_SQLEXCEPTION:
+ case HiveSqlParser.T_SQLWARNING:
+ case HiveSqlParser.T_NOT:
+ case HiveSqlParser.T_FOUND:
+ case HiveSqlParser.T_GLOBAL:
+ case HiveSqlParser.T_TEMPORARY:
+ case HiveSqlParser.T_TABLE:
+ case HiveSqlParser.T_CREATE:
+ case HiveSqlParser.T_IF:
+ case HiveSqlParser.T_EXISTS:
+ case HiveSqlParser.T_LOCAL:
+ case HiveSqlParser.T_MULTISET:
+ case HiveSqlParser.T_VOLATILE:
+ case HiveSqlParser.T_LIKE:
+ case HiveSqlParser.T_CONSTRAINT:
+ case HiveSqlParser.T_PRIMARY:
+ case HiveSqlParser.T_KEY:
+ case HiveSqlParser.T_UNIQUE:
+ case HiveSqlParser.T_REFERENCES:
+ case HiveSqlParser.T_IDENTITY:
+ case HiveSqlParser.T_AUTO_INCREMENT:
+ case HiveSqlParser.T_ENABLE:
+ case HiveSqlParser.T_CLUSTERED:
+ case HiveSqlParser.T_ASC:
+ case HiveSqlParser.T_DESC:
+ case HiveSqlParser.T_FOREIGN:
+ case HiveSqlParser.T_ON:
+ case HiveSqlParser.T_UPDATE:
+ case HiveSqlParser.T_DELETE:
+ case HiveSqlParser.T_NO:
+ case HiveSqlParser.T_ACTION:
+ case HiveSqlParser.T_RESTRICT:
+ case HiveSqlParser.T_DEFAULT:
+ case HiveSqlParser.T_CASCADE:
+ case HiveSqlParser.T_LOG:
+ case HiveSqlParser.T_FALLBACK:
+ case HiveSqlParser.T_COMMIT:
+ case HiveSqlParser.T_PRESERVE:
+ case HiveSqlParser.T_ROWS:
+ case HiveSqlParser.T_SEGMENT:
+ case HiveSqlParser.T_CREATION:
+ case HiveSqlParser.T_IMMEDIATE:
+ case HiveSqlParser.T_DEFERRED:
+ case HiveSqlParser.T_PCTFREE:
+ case HiveSqlParser.T_PCTUSED:
+ case HiveSqlParser.T_INITRANS:
+ case HiveSqlParser.T_MAXTRANS:
+ case HiveSqlParser.T_NOCOMPRESS:
+ case HiveSqlParser.T_LOGGING:
+ case HiveSqlParser.T_NOLOGGING:
+ case HiveSqlParser.T_STORAGE:
+ case HiveSqlParser.T_TABLESPACE:
+ case HiveSqlParser.T_INDEX:
+ case HiveSqlParser.T_IN:
+ case HiveSqlParser.T_REPLACE:
+ case HiveSqlParser.T_DISTRIBUTE:
+ case HiveSqlParser.T_BY:
+ case HiveSqlParser.T_HASH:
+ case HiveSqlParser.T_LOGGED:
+ case HiveSqlParser.T_COMPRESS:
+ case HiveSqlParser.T_YES:
+ case HiveSqlParser.T_DEFINITION:
+ case HiveSqlParser.T_DROP:
+ case HiveSqlParser.T_DATA:
+ case HiveSqlParser.T_STORED:
+ case HiveSqlParser.T_ROW:
+ case HiveSqlParser.T_FORMAT:
+ case HiveSqlParser.T_DELIMITED:
+ case HiveSqlParser.T_FIELDS:
+ case HiveSqlParser.T_TERMINATED:
+ case HiveSqlParser.T_ESCAPED:
+ case HiveSqlParser.T_COLLECTION:
+ case HiveSqlParser.T_ITEMS:
+ case HiveSqlParser.T_MAP:
+ case HiveSqlParser.T_KEYS:
+ case HiveSqlParser.T_LINES:
+ case HiveSqlParser.T_DEFINED:
+ case HiveSqlParser.T_TEXTIMAGE_ON:
+ case HiveSqlParser.T_COMMENT:
+ case HiveSqlParser.T_CHARACTER:
+ case HiveSqlParser.T_CHARSET:
+ case HiveSqlParser.T_ENGINE:
+ case HiveSqlParser.T_ALTER:
+ case HiveSqlParser.T_ADD2:
+ case HiveSqlParser.T_CHAR:
+ case HiveSqlParser.T_BIGINT:
+ case HiveSqlParser.T_BINARY_DOUBLE:
+ case HiveSqlParser.T_BINARY_FLOAT:
+ case HiveSqlParser.T_BIT:
+ case HiveSqlParser.T_DATE:
+ case HiveSqlParser.T_DATETIME:
+ case HiveSqlParser.T_DEC:
+ case HiveSqlParser.T_DECIMAL:
+ case HiveSqlParser.T_DOUBLE:
+ case HiveSqlParser.T_PRECISION:
+ case HiveSqlParser.T_FLOAT:
+ case HiveSqlParser.T_INT:
+ case HiveSqlParser.T_INT2:
+ case HiveSqlParser.T_INT4:
+ case HiveSqlParser.T_INT8:
+ case HiveSqlParser.T_INTEGER:
+ case HiveSqlParser.T_NCHAR:
+ case HiveSqlParser.T_NVARCHAR:
+ case HiveSqlParser.T_NUMBER:
+ case HiveSqlParser.T_NUMERIC:
+ case HiveSqlParser.T_REAL:
+ case HiveSqlParser.T_RESULT_SET_LOCATOR:
+ case HiveSqlParser.T_VARYING:
+ case HiveSqlParser.T_SIMPLE_FLOAT:
+ case HiveSqlParser.T_SIMPLE_DOUBLE:
+ case HiveSqlParser.T_SMALLINT:
+ case HiveSqlParser.T_SMALLDATETIME:
+ case HiveSqlParser.T_STRING:
+ case HiveSqlParser.T_SYS_REFCURSOR:
+ case HiveSqlParser.T_TIMESTAMP:
+ case HiveSqlParser.T_VARCHAR:
+ case HiveSqlParser.T_VARCHAR2:
+ case HiveSqlParser.T_XML:
+ case HiveSqlParser.T_MAX:
+ case HiveSqlParser.T_BYTE:
+ case HiveSqlParser.T_CASESPECIFIC:
+ case HiveSqlParser.T_CS:
+ case HiveSqlParser.T_DATABASE:
+ case HiveSqlParser.T_SCHEMA:
+ case HiveSqlParser.T_LOCATION:
+ case HiveSqlParser.T_OR:
+ case HiveSqlParser.T_FUNCTION:
+ case HiveSqlParser.T_RETURNS:
+ case HiveSqlParser.T_PACKAGE:
+ case HiveSqlParser.T_PROC:
+ case HiveSqlParser.T_BODY:
+ case HiveSqlParser.T_OUT:
+ case HiveSqlParser.T_INOUT:
+ case HiveSqlParser.T_LANGUAGE:
+ case HiveSqlParser.T_SQL:
+ case HiveSqlParser.T_SECURITY:
+ case HiveSqlParser.T_CREATOR:
+ case HiveSqlParser.T_DEFINER:
+ case HiveSqlParser.T_INVOKER:
+ case HiveSqlParser.T_OWNER:
+ case HiveSqlParser.T_DYNAMIC:
+ case HiveSqlParser.T_SETS:
+ case HiveSqlParser.T_EXEC:
+ case HiveSqlParser.T_EXECUTE:
+ case HiveSqlParser.T_INTO:
+ case HiveSqlParser.T_INCLUDE:
+ case HiveSqlParser.T_INSERT:
+ case HiveSqlParser.T_OVERWRITE:
+ case HiveSqlParser.T_VALUES:
+ case HiveSqlParser.T_DIRECTORY:
+ case HiveSqlParser.T_GET:
+ case HiveSqlParser.T_DIAGNOSTICS:
+ case HiveSqlParser.T_MESSAGE_TEXT:
+ case HiveSqlParser.T_ROW_COUNT:
+ case HiveSqlParser.T_GRANT:
+ case HiveSqlParser.T_ROLE:
+ case HiveSqlParser.T_LEAVE:
+ case HiveSqlParser.T_OBJECT:
+ case HiveSqlParser.T_AT:
+ case HiveSqlParser.T_OPEN:
+ case HiveSqlParser.T_FETCH:
+ case HiveSqlParser.T_FROM:
+ case HiveSqlParser.T_COLLECT:
+ case HiveSqlParser.T_STATISTICS:
+ case HiveSqlParser.T_STATS:
+ case HiveSqlParser.T_COLUMN:
+ case HiveSqlParser.T_CLOSE:
+ case HiveSqlParser.T_CMP:
+ case HiveSqlParser.T_SUM:
+ case HiveSqlParser.T_COPY:
+ case HiveSqlParser.T_HDFS:
+ case HiveSqlParser.T_BATCHSIZE:
+ case HiveSqlParser.T_DELIMITER:
+ case HiveSqlParser.T_SQLINSERT:
+ case HiveSqlParser.T_IGNORE:
+ case HiveSqlParser.T_WORK:
+ case HiveSqlParser.T_PRINT:
+ case HiveSqlParser.T_QUIT:
+ case HiveSqlParser.T_RAISE:
+ case HiveSqlParser.T_RESIGNAL:
+ case HiveSqlParser.T_SQLSTATE:
+ case HiveSqlParser.T_VALUE:
+ case HiveSqlParser.T_ROLLBACK:
+ case HiveSqlParser.T_CURRENT:
+ case HiveSqlParser.T_CURRENT_SCHEMA:
+ case HiveSqlParser.T_ANSI_NULLS:
+ case HiveSqlParser.T_ANSI_PADDING:
+ case HiveSqlParser.T_NOCOUNT:
+ case HiveSqlParser.T_QUOTED_IDENTIFIER:
+ case HiveSqlParser.T_XACT_ABORT:
+ case HiveSqlParser.T_OFF:
+ case HiveSqlParser.T_QUERY_BAND:
+ case HiveSqlParser.T_NONE:
+ case HiveSqlParser.T_SESSION:
+ case HiveSqlParser.T_SIGNAL:
+ case HiveSqlParser.T_SUMMARY:
+ case HiveSqlParser.T_TOP:
+ case HiveSqlParser.T_LIMIT:
+ case HiveSqlParser.T_TRUNCATE:
+ case HiveSqlParser.T_USE:
+ case HiveSqlParser.T_WHILE:
+ case HiveSqlParser.T_DO:
+ case HiveSqlParser.T_LOOP:
+ case HiveSqlParser.T_REVERSE:
+ case HiveSqlParser.T_STEP:
+ case HiveSqlParser.T_USING:
+ case HiveSqlParser.T_ALL:
+ case HiveSqlParser.T_EXCEPT:
+ case HiveSqlParser.T_INTERSECT:
+ case HiveSqlParser.T_SELECT:
+ case HiveSqlParser.T_SEL:
+ case HiveSqlParser.T_DISTINCT:
+ case HiveSqlParser.T_TITLE:
+ case HiveSqlParser.T_INNER:
+ case HiveSqlParser.T_JOIN:
+ case HiveSqlParser.T_LEFT:
+ case HiveSqlParser.T_RIGHT:
+ case HiveSqlParser.T_FULL:
+ case HiveSqlParser.T_OUTER:
+ case HiveSqlParser.T_GROUP:
+ case HiveSqlParser.T_HAVING:
+ case HiveSqlParser.T_QUALIFY:
+ case HiveSqlParser.T_ORDER:
+ case HiveSqlParser.T_RR:
+ case HiveSqlParser.T_RS:
+ case HiveSqlParser.T_UR:
+ case HiveSqlParser.T_AND:
+ case HiveSqlParser.T_KEEP:
+ case HiveSqlParser.T_EXCLUSIVE:
+ case HiveSqlParser.T_SHARE:
+ case HiveSqlParser.T_LOCKS:
+ case HiveSqlParser.T_MERGE:
+ case HiveSqlParser.T_MATCHED:
+ case HiveSqlParser.T_DESCRIBE:
+ case HiveSqlParser.T_BETWEEN:
+ case HiveSqlParser.T_RLIKE:
+ case HiveSqlParser.T_REGEXP:
+ case HiveSqlParser.T_INTERVAL:
+ case HiveSqlParser.T_DAY:
+ case HiveSqlParser.T_DAYS:
+ case HiveSqlParser.T_MICROSECOND:
+ case HiveSqlParser.T_MICROSECONDS:
+ case HiveSqlParser.T_SECOND:
+ case HiveSqlParser.T_SECONDS:
+ case HiveSqlParser.T_CONCAT:
+ case HiveSqlParser.T_CASE:
+ case HiveSqlParser.T_ISOPEN:
+ case HiveSqlParser.T_NOTFOUND:
+ case HiveSqlParser.T_AVG:
+ case HiveSqlParser.T_COUNT:
+ case HiveSqlParser.T_COUNT_BIG:
+ case HiveSqlParser.T_CUME_DIST:
+ case HiveSqlParser.T_DENSE_RANK:
+ case HiveSqlParser.T_FIRST_VALUE:
+ case HiveSqlParser.T_LAG:
+ case HiveSqlParser.T_LAST_VALUE:
+ case HiveSqlParser.T_LEAD:
+ case HiveSqlParser.T_MIN:
+ case HiveSqlParser.T_RANK:
+ case HiveSqlParser.T_ROW_NUMBER:
+ case HiveSqlParser.T_STDEV:
+ case HiveSqlParser.T_VAR:
+ case HiveSqlParser.T_VARIANCE:
+ case HiveSqlParser.T_OVER:
+ case HiveSqlParser.T_PARTITION:
+ case HiveSqlParser.T_ACTIVITY_COUNT:
+ case HiveSqlParser.T_CAST:
+ case HiveSqlParser.T_CURRENT_DATE:
+ case HiveSqlParser.T_CURRENT_TIMESTAMP:
+ case HiveSqlParser.T_CURRENT_USER:
+ case HiveSqlParser.T_USER:
+ case HiveSqlParser.T_PART_COUNT:
+ case HiveSqlParser.T_PART_LOC:
+ case HiveSqlParser.T_TRIM:
+ case HiveSqlParser.T_SUBSTRING:
+ case HiveSqlParser.T_SYSDATE:
+ case HiveSqlParser.T_HIVE:
+ case HiveSqlParser.T_HOST:
+ case HiveSqlParser.T_TRUE:
+ case HiveSqlParser.T_FALSE:
+ case HiveSqlParser.T_DIR:
+ case HiveSqlParser.T_FILE:
+ case HiveSqlParser.T_FILES:
+ case HiveSqlParser.T_NEW:
+ case HiveSqlParser.T_PWD:
+ case HiveSqlParser.T_SESSIONS:
+ case HiveSqlParser.T_SUBDIR:
+ this.state = 3309;
+ this.non_reserved_words();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 3319;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,420,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 3312;
+ this.match(HiveSqlParser.T__4);
+ this.state = 3315;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case HiveSqlParser.L_ID:
+ this.state = 3313;
+ this.match(HiveSqlParser.L_ID);
+ break;
+ case HiveSqlParser.T_GO:
+ case HiveSqlParser.T_BEGIN:
+ case HiveSqlParser.T_EXCEPTION:
+ case HiveSqlParser.T_THEN:
+ case HiveSqlParser.T_SET:
+ case HiveSqlParser.T_ALLOCATE:
+ case HiveSqlParser.T_CURSOR:
+ case HiveSqlParser.T_FOR:
+ case HiveSqlParser.T_RESULT:
+ case HiveSqlParser.T_PROCEDURE:
+ case HiveSqlParser.T_ASSOCIATE:
+ case HiveSqlParser.T_LOCATOR:
+ case HiveSqlParser.T_LOCATORS:
+ case HiveSqlParser.T_WITH:
+ case HiveSqlParser.T_TRANSACTION:
+ case HiveSqlParser.T_BREAK:
+ case HiveSqlParser.T_CALL:
+ case HiveSqlParser.T_DECLARE:
+ case HiveSqlParser.T_AS:
+ case HiveSqlParser.T_CONSTANT:
+ case HiveSqlParser.T_CONDITION:
+ case HiveSqlParser.T_IS:
+ case HiveSqlParser.T_RETURN:
+ case HiveSqlParser.T_ONLY:
+ case HiveSqlParser.T_TO:
+ case HiveSqlParser.T_CALLER:
+ case HiveSqlParser.T_CLIENT:
+ case HiveSqlParser.T_WITHOUT:
+ case HiveSqlParser.T_CONTINUE:
+ case HiveSqlParser.T_EXIT:
+ case HiveSqlParser.T_HANDLER:
+ case HiveSqlParser.T_SQLEXCEPTION:
+ case HiveSqlParser.T_SQLWARNING:
+ case HiveSqlParser.T_NOT:
+ case HiveSqlParser.T_FOUND:
+ case HiveSqlParser.T_GLOBAL:
+ case HiveSqlParser.T_TEMPORARY:
+ case HiveSqlParser.T_TABLE:
+ case HiveSqlParser.T_CREATE:
+ case HiveSqlParser.T_IF:
+ case HiveSqlParser.T_EXISTS:
+ case HiveSqlParser.T_LOCAL:
+ case HiveSqlParser.T_MULTISET:
+ case HiveSqlParser.T_VOLATILE:
+ case HiveSqlParser.T_LIKE:
+ case HiveSqlParser.T_CONSTRAINT:
+ case HiveSqlParser.T_PRIMARY:
+ case HiveSqlParser.T_KEY:
+ case HiveSqlParser.T_UNIQUE:
+ case HiveSqlParser.T_REFERENCES:
+ case HiveSqlParser.T_IDENTITY:
+ case HiveSqlParser.T_AUTO_INCREMENT:
+ case HiveSqlParser.T_ENABLE:
+ case HiveSqlParser.T_CLUSTERED:
+ case HiveSqlParser.T_ASC:
+ case HiveSqlParser.T_DESC:
+ case HiveSqlParser.T_FOREIGN:
+ case HiveSqlParser.T_ON:
+ case HiveSqlParser.T_UPDATE:
+ case HiveSqlParser.T_DELETE:
+ case HiveSqlParser.T_NO:
+ case HiveSqlParser.T_ACTION:
+ case HiveSqlParser.T_RESTRICT:
+ case HiveSqlParser.T_DEFAULT:
+ case HiveSqlParser.T_CASCADE:
+ case HiveSqlParser.T_LOG:
+ case HiveSqlParser.T_FALLBACK:
+ case HiveSqlParser.T_COMMIT:
+ case HiveSqlParser.T_PRESERVE:
+ case HiveSqlParser.T_ROWS:
+ case HiveSqlParser.T_SEGMENT:
+ case HiveSqlParser.T_CREATION:
+ case HiveSqlParser.T_IMMEDIATE:
+ case HiveSqlParser.T_DEFERRED:
+ case HiveSqlParser.T_PCTFREE:
+ case HiveSqlParser.T_PCTUSED:
+ case HiveSqlParser.T_INITRANS:
+ case HiveSqlParser.T_MAXTRANS:
+ case HiveSqlParser.T_NOCOMPRESS:
+ case HiveSqlParser.T_LOGGING:
+ case HiveSqlParser.T_NOLOGGING:
+ case HiveSqlParser.T_STORAGE:
+ case HiveSqlParser.T_TABLESPACE:
+ case HiveSqlParser.T_INDEX:
+ case HiveSqlParser.T_IN:
+ case HiveSqlParser.T_REPLACE:
+ case HiveSqlParser.T_DISTRIBUTE:
+ case HiveSqlParser.T_BY:
+ case HiveSqlParser.T_HASH:
+ case HiveSqlParser.T_LOGGED:
+ case HiveSqlParser.T_COMPRESS:
+ case HiveSqlParser.T_YES:
+ case HiveSqlParser.T_DEFINITION:
+ case HiveSqlParser.T_DROP:
+ case HiveSqlParser.T_DATA:
+ case HiveSqlParser.T_STORED:
+ case HiveSqlParser.T_ROW:
+ case HiveSqlParser.T_FORMAT:
+ case HiveSqlParser.T_DELIMITED:
+ case HiveSqlParser.T_FIELDS:
+ case HiveSqlParser.T_TERMINATED:
+ case HiveSqlParser.T_ESCAPED:
+ case HiveSqlParser.T_COLLECTION:
+ case HiveSqlParser.T_ITEMS:
+ case HiveSqlParser.T_MAP:
+ case HiveSqlParser.T_KEYS:
+ case HiveSqlParser.T_LINES:
+ case HiveSqlParser.T_DEFINED:
+ case HiveSqlParser.T_TEXTIMAGE_ON:
+ case HiveSqlParser.T_COMMENT:
+ case HiveSqlParser.T_CHARACTER:
+ case HiveSqlParser.T_CHARSET:
+ case HiveSqlParser.T_ENGINE:
+ case HiveSqlParser.T_ALTER:
+ case HiveSqlParser.T_ADD2:
+ case HiveSqlParser.T_CHAR:
+ case HiveSqlParser.T_BIGINT:
+ case HiveSqlParser.T_BINARY_DOUBLE:
+ case HiveSqlParser.T_BINARY_FLOAT:
+ case HiveSqlParser.T_BIT:
+ case HiveSqlParser.T_DATE:
+ case HiveSqlParser.T_DATETIME:
+ case HiveSqlParser.T_DEC:
+ case HiveSqlParser.T_DECIMAL:
+ case HiveSqlParser.T_DOUBLE:
+ case HiveSqlParser.T_PRECISION:
+ case HiveSqlParser.T_FLOAT:
+ case HiveSqlParser.T_INT:
+ case HiveSqlParser.T_INT2:
+ case HiveSqlParser.T_INT4:
+ case HiveSqlParser.T_INT8:
+ case HiveSqlParser.T_INTEGER:
+ case HiveSqlParser.T_NCHAR:
+ case HiveSqlParser.T_NVARCHAR:
+ case HiveSqlParser.T_NUMBER:
+ case HiveSqlParser.T_NUMERIC:
+ case HiveSqlParser.T_REAL:
+ case HiveSqlParser.T_RESULT_SET_LOCATOR:
+ case HiveSqlParser.T_VARYING:
+ case HiveSqlParser.T_SIMPLE_FLOAT:
+ case HiveSqlParser.T_SIMPLE_DOUBLE:
+ case HiveSqlParser.T_SMALLINT:
+ case HiveSqlParser.T_SMALLDATETIME:
+ case HiveSqlParser.T_STRING:
+ case HiveSqlParser.T_SYS_REFCURSOR:
+ case HiveSqlParser.T_TIMESTAMP:
+ case HiveSqlParser.T_VARCHAR:
+ case HiveSqlParser.T_VARCHAR2:
+ case HiveSqlParser.T_XML:
+ case HiveSqlParser.T_MAX:
+ case HiveSqlParser.T_BYTE:
+ case HiveSqlParser.T_CASESPECIFIC:
+ case HiveSqlParser.T_CS:
+ case HiveSqlParser.T_DATABASE:
+ case HiveSqlParser.T_SCHEMA:
+ case HiveSqlParser.T_LOCATION:
+ case HiveSqlParser.T_OR:
+ case HiveSqlParser.T_FUNCTION:
+ case HiveSqlParser.T_RETURNS:
+ case HiveSqlParser.T_PACKAGE:
+ case HiveSqlParser.T_PROC:
+ case HiveSqlParser.T_BODY:
+ case HiveSqlParser.T_OUT:
+ case HiveSqlParser.T_INOUT:
+ case HiveSqlParser.T_LANGUAGE:
+ case HiveSqlParser.T_SQL:
+ case HiveSqlParser.T_SECURITY:
+ case HiveSqlParser.T_CREATOR:
+ case HiveSqlParser.T_DEFINER:
+ case HiveSqlParser.T_INVOKER:
+ case HiveSqlParser.T_OWNER:
+ case HiveSqlParser.T_DYNAMIC:
+ case HiveSqlParser.T_SETS:
+ case HiveSqlParser.T_EXEC:
+ case HiveSqlParser.T_EXECUTE:
+ case HiveSqlParser.T_INTO:
+ case HiveSqlParser.T_INCLUDE:
+ case HiveSqlParser.T_INSERT:
+ case HiveSqlParser.T_OVERWRITE:
+ case HiveSqlParser.T_VALUES:
+ case HiveSqlParser.T_DIRECTORY:
+ case HiveSqlParser.T_GET:
+ case HiveSqlParser.T_DIAGNOSTICS:
+ case HiveSqlParser.T_MESSAGE_TEXT:
+ case HiveSqlParser.T_ROW_COUNT:
+ case HiveSqlParser.T_GRANT:
+ case HiveSqlParser.T_ROLE:
+ case HiveSqlParser.T_LEAVE:
+ case HiveSqlParser.T_OBJECT:
+ case HiveSqlParser.T_AT:
+ case HiveSqlParser.T_OPEN:
+ case HiveSqlParser.T_FETCH:
+ case HiveSqlParser.T_FROM:
+ case HiveSqlParser.T_COLLECT:
+ case HiveSqlParser.T_STATISTICS:
+ case HiveSqlParser.T_STATS:
+ case HiveSqlParser.T_COLUMN:
+ case HiveSqlParser.T_CLOSE:
+ case HiveSqlParser.T_CMP:
+ case HiveSqlParser.T_SUM:
+ case HiveSqlParser.T_COPY:
+ case HiveSqlParser.T_HDFS:
+ case HiveSqlParser.T_BATCHSIZE:
+ case HiveSqlParser.T_DELIMITER:
+ case HiveSqlParser.T_SQLINSERT:
+ case HiveSqlParser.T_IGNORE:
+ case HiveSqlParser.T_WORK:
+ case HiveSqlParser.T_PRINT:
+ case HiveSqlParser.T_QUIT:
+ case HiveSqlParser.T_RAISE:
+ case HiveSqlParser.T_RESIGNAL:
+ case HiveSqlParser.T_SQLSTATE:
+ case HiveSqlParser.T_VALUE:
+ case HiveSqlParser.T_ROLLBACK:
+ case HiveSqlParser.T_CURRENT:
+ case HiveSqlParser.T_CURRENT_SCHEMA:
+ case HiveSqlParser.T_ANSI_NULLS:
+ case HiveSqlParser.T_ANSI_PADDING:
+ case HiveSqlParser.T_NOCOUNT:
+ case HiveSqlParser.T_QUOTED_IDENTIFIER:
+ case HiveSqlParser.T_XACT_ABORT:
+ case HiveSqlParser.T_OFF:
+ case HiveSqlParser.T_QUERY_BAND:
+ case HiveSqlParser.T_NONE:
+ case HiveSqlParser.T_SESSION:
+ case HiveSqlParser.T_SIGNAL:
+ case HiveSqlParser.T_SUMMARY:
+ case HiveSqlParser.T_TOP:
+ case HiveSqlParser.T_LIMIT:
+ case HiveSqlParser.T_TRUNCATE:
+ case HiveSqlParser.T_USE:
+ case HiveSqlParser.T_WHILE:
+ case HiveSqlParser.T_DO:
+ case HiveSqlParser.T_LOOP:
+ case HiveSqlParser.T_REVERSE:
+ case HiveSqlParser.T_STEP:
+ case HiveSqlParser.T_USING:
+ case HiveSqlParser.T_ALL:
+ case HiveSqlParser.T_EXCEPT:
+ case HiveSqlParser.T_INTERSECT:
+ case HiveSqlParser.T_SELECT:
+ case HiveSqlParser.T_SEL:
+ case HiveSqlParser.T_DISTINCT:
+ case HiveSqlParser.T_TITLE:
+ case HiveSqlParser.T_INNER:
+ case HiveSqlParser.T_JOIN:
+ case HiveSqlParser.T_LEFT:
+ case HiveSqlParser.T_RIGHT:
+ case HiveSqlParser.T_FULL:
+ case HiveSqlParser.T_OUTER:
+ case HiveSqlParser.T_GROUP:
+ case HiveSqlParser.T_HAVING:
+ case HiveSqlParser.T_QUALIFY:
+ case HiveSqlParser.T_ORDER:
+ case HiveSqlParser.T_RR:
+ case HiveSqlParser.T_RS:
+ case HiveSqlParser.T_UR:
+ case HiveSqlParser.T_AND:
+ case HiveSqlParser.T_KEEP:
+ case HiveSqlParser.T_EXCLUSIVE:
+ case HiveSqlParser.T_SHARE:
+ case HiveSqlParser.T_LOCKS:
+ case HiveSqlParser.T_MERGE:
+ case HiveSqlParser.T_MATCHED:
+ case HiveSqlParser.T_DESCRIBE:
+ case HiveSqlParser.T_BETWEEN:
+ case HiveSqlParser.T_RLIKE:
+ case HiveSqlParser.T_REGEXP:
+ case HiveSqlParser.T_INTERVAL:
+ case HiveSqlParser.T_DAY:
+ case HiveSqlParser.T_DAYS:
+ case HiveSqlParser.T_MICROSECOND:
+ case HiveSqlParser.T_MICROSECONDS:
+ case HiveSqlParser.T_SECOND:
+ case HiveSqlParser.T_SECONDS:
+ case HiveSqlParser.T_CONCAT:
+ case HiveSqlParser.T_CASE:
+ case HiveSqlParser.T_ISOPEN:
+ case HiveSqlParser.T_NOTFOUND:
+ case HiveSqlParser.T_AVG:
+ case HiveSqlParser.T_COUNT:
+ case HiveSqlParser.T_COUNT_BIG:
+ case HiveSqlParser.T_CUME_DIST:
+ case HiveSqlParser.T_DENSE_RANK:
+ case HiveSqlParser.T_FIRST_VALUE:
+ case HiveSqlParser.T_LAG:
+ case HiveSqlParser.T_LAST_VALUE:
+ case HiveSqlParser.T_LEAD:
+ case HiveSqlParser.T_MIN:
+ case HiveSqlParser.T_RANK:
+ case HiveSqlParser.T_ROW_NUMBER:
+ case HiveSqlParser.T_STDEV:
+ case HiveSqlParser.T_VAR:
+ case HiveSqlParser.T_VARIANCE:
+ case HiveSqlParser.T_OVER:
+ case HiveSqlParser.T_PARTITION:
+ case HiveSqlParser.T_ACTIVITY_COUNT:
+ case HiveSqlParser.T_CAST:
+ case HiveSqlParser.T_CURRENT_DATE:
+ case HiveSqlParser.T_CURRENT_TIMESTAMP:
+ case HiveSqlParser.T_CURRENT_USER:
+ case HiveSqlParser.T_USER:
+ case HiveSqlParser.T_PART_COUNT:
+ case HiveSqlParser.T_PART_LOC:
+ case HiveSqlParser.T_TRIM:
+ case HiveSqlParser.T_SUBSTRING:
+ case HiveSqlParser.T_SYSDATE:
+ case HiveSqlParser.T_HIVE:
+ case HiveSqlParser.T_HOST:
+ case HiveSqlParser.T_TRUE:
+ case HiveSqlParser.T_FALSE:
+ case HiveSqlParser.T_DIR:
+ case HiveSqlParser.T_FILE:
+ case HiveSqlParser.T_FILES:
+ case HiveSqlParser.T_NEW:
+ case HiveSqlParser.T_PWD:
+ case HiveSqlParser.T_SESSIONS:
+ case HiveSqlParser.T_SUBDIR:
+ this.state = 3314;
+ this.non_reserved_words();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ }
+ this.state = 3321;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,420,this._ctx);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function StringContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_string;
+ return this;
+}
+
+StringContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+StringContext.prototype.constructor = StringContext;
+
+
+
+StringContext.prototype.copyFrom = function(ctx) {
+ antlr4.ParserRuleContext.prototype.copyFrom.call(this, ctx);
+};
+
+
+function Double_quotedStringContext(parser, ctx) {
+ StringContext.call(this, parser);
+ StringContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+Double_quotedStringContext.prototype = Object.create(StringContext.prototype);
+Double_quotedStringContext.prototype.constructor = Double_quotedStringContext;
+
+HiveSqlParser.Double_quotedStringContext = Double_quotedStringContext;
+
+Double_quotedStringContext.prototype.L_D_STRING = function() {
+ return this.getToken(HiveSqlParser.L_D_STRING, 0);
+};
+Double_quotedStringContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterDouble_quotedString(this);
+ }
+};
+
+Double_quotedStringContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitDouble_quotedString(this);
+ }
+};
+
+Double_quotedStringContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitDouble_quotedString(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+function Single_quotedStringContext(parser, ctx) {
+ StringContext.call(this, parser);
+ StringContext.prototype.copyFrom.call(this, ctx);
+ return this;
+}
+
+Single_quotedStringContext.prototype = Object.create(StringContext.prototype);
+Single_quotedStringContext.prototype.constructor = Single_quotedStringContext;
+
+HiveSqlParser.Single_quotedStringContext = Single_quotedStringContext;
+
+Single_quotedStringContext.prototype.L_S_STRING = function() {
+ return this.getToken(HiveSqlParser.L_S_STRING, 0);
+};
+Single_quotedStringContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterSingle_quotedString(this);
+ }
+};
+
+Single_quotedStringContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitSingle_quotedString(this);
+ }
+};
+
+Single_quotedStringContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitSingle_quotedString(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+HiveSqlParser.StringContext = StringContext;
+
+HiveSqlParser.prototype.string = function() {
+
+ var localctx = new StringContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 440, HiveSqlParser.RULE_string);
+ try {
+ this.state = 3324;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case HiveSqlParser.L_S_STRING:
+ localctx = new Single_quotedStringContext(this, localctx);
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3322;
+ this.match(HiveSqlParser.L_S_STRING);
+ break;
+ case HiveSqlParser.L_D_STRING:
+ localctx = new Double_quotedStringContext(this, localctx);
+ this.enterOuterAlt(localctx, 2);
+ this.state = 3323;
+ this.match(HiveSqlParser.L_D_STRING);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Int_numberContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_int_number;
+ return this;
+}
+
+Int_numberContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Int_numberContext.prototype.constructor = Int_numberContext;
+
+Int_numberContext.prototype.L_INT = function() {
+ return this.getToken(HiveSqlParser.L_INT, 0);
+};
+
+Int_numberContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterInt_number(this);
+ }
+};
+
+Int_numberContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitInt_number(this);
+ }
+};
+
+Int_numberContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitInt_number(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Int_numberContext = Int_numberContext;
+
+HiveSqlParser.prototype.int_number = function() {
+
+ var localctx = new Int_numberContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 442, HiveSqlParser.RULE_int_number);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3327;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T__8 || _la===HiveSqlParser.T__9) {
+ this.state = 3326;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T__8 || _la===HiveSqlParser.T__9)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 3329;
+ this.match(HiveSqlParser.L_INT);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Dec_numberContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_dec_number;
+ return this;
+}
+
+Dec_numberContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Dec_numberContext.prototype.constructor = Dec_numberContext;
+
+Dec_numberContext.prototype.L_DEC = function() {
+ return this.getToken(HiveSqlParser.L_DEC, 0);
+};
+
+Dec_numberContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterDec_number(this);
+ }
+};
+
+Dec_numberContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitDec_number(this);
+ }
+};
+
+Dec_numberContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitDec_number(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Dec_numberContext = Dec_numberContext;
+
+HiveSqlParser.prototype.dec_number = function() {
+
+ var localctx = new Dec_numberContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 444, HiveSqlParser.RULE_dec_number);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3332;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===HiveSqlParser.T__8 || _la===HiveSqlParser.T__9) {
+ this.state = 3331;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T__8 || _la===HiveSqlParser.T__9)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 3334;
+ this.match(HiveSqlParser.L_DEC);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Bool_literalContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_bool_literal;
+ return this;
+}
+
+Bool_literalContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Bool_literalContext.prototype.constructor = Bool_literalContext;
+
+Bool_literalContext.prototype.T_TRUE = function() {
+ return this.getToken(HiveSqlParser.T_TRUE, 0);
+};
+
+Bool_literalContext.prototype.T_FALSE = function() {
+ return this.getToken(HiveSqlParser.T_FALSE, 0);
+};
+
+Bool_literalContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterBool_literal(this);
+ }
+};
+
+Bool_literalContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitBool_literal(this);
+ }
+};
+
+Bool_literalContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitBool_literal(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Bool_literalContext = Bool_literalContext;
+
+HiveSqlParser.prototype.bool_literal = function() {
+
+ var localctx = new Bool_literalContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 446, HiveSqlParser.RULE_bool_literal);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3336;
+ _la = this._input.LA(1);
+ if(!(_la===HiveSqlParser.T_TRUE || _la===HiveSqlParser.T_FALSE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Null_constContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_null_const;
+ return this;
+}
+
+Null_constContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Null_constContext.prototype.constructor = Null_constContext;
+
+Null_constContext.prototype.T_NULL = function() {
+ return this.getToken(HiveSqlParser.T_NULL, 0);
+};
+
+Null_constContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterNull_const(this);
+ }
+};
+
+Null_constContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitNull_const(this);
+ }
+};
+
+Null_constContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitNull_const(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Null_constContext = Null_constContext;
+
+HiveSqlParser.prototype.null_const = function() {
+
+ var localctx = new Null_constContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 448, HiveSqlParser.RULE_null_const);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3338;
+ this.match(HiveSqlParser.T_NULL);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Non_reserved_wordsContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = HiveSqlParser.RULE_non_reserved_words;
+ return this;
+}
+
+Non_reserved_wordsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Non_reserved_wordsContext.prototype.constructor = Non_reserved_wordsContext;
+
+Non_reserved_wordsContext.prototype.T_ACTION = function() {
+ return this.getToken(HiveSqlParser.T_ACTION, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_ACTIVITY_COUNT = function() {
+ return this.getToken(HiveSqlParser.T_ACTIVITY_COUNT, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_ADD2 = function() {
+ return this.getToken(HiveSqlParser.T_ADD2, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_ALL = function() {
+ return this.getToken(HiveSqlParser.T_ALL, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_ALLOCATE = function() {
+ return this.getToken(HiveSqlParser.T_ALLOCATE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_ALTER = function() {
+ return this.getToken(HiveSqlParser.T_ALTER, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_AND = function() {
+ return this.getToken(HiveSqlParser.T_AND, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_ANSI_NULLS = function() {
+ return this.getToken(HiveSqlParser.T_ANSI_NULLS, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_ANSI_PADDING = function() {
+ return this.getToken(HiveSqlParser.T_ANSI_PADDING, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_AS = function() {
+ return this.getToken(HiveSqlParser.T_AS, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_ASC = function() {
+ return this.getToken(HiveSqlParser.T_ASC, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_ASSOCIATE = function() {
+ return this.getToken(HiveSqlParser.T_ASSOCIATE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_AT = function() {
+ return this.getToken(HiveSqlParser.T_AT, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_AUTO_INCREMENT = function() {
+ return this.getToken(HiveSqlParser.T_AUTO_INCREMENT, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_AVG = function() {
+ return this.getToken(HiveSqlParser.T_AVG, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_BATCHSIZE = function() {
+ return this.getToken(HiveSqlParser.T_BATCHSIZE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_BEGIN = function() {
+ return this.getToken(HiveSqlParser.T_BEGIN, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_BETWEEN = function() {
+ return this.getToken(HiveSqlParser.T_BETWEEN, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_BIGINT = function() {
+ return this.getToken(HiveSqlParser.T_BIGINT, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_BINARY_DOUBLE = function() {
+ return this.getToken(HiveSqlParser.T_BINARY_DOUBLE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_BINARY_FLOAT = function() {
+ return this.getToken(HiveSqlParser.T_BINARY_FLOAT, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_BIT = function() {
+ return this.getToken(HiveSqlParser.T_BIT, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_BODY = function() {
+ return this.getToken(HiveSqlParser.T_BODY, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_BREAK = function() {
+ return this.getToken(HiveSqlParser.T_BREAK, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_BY = function() {
+ return this.getToken(HiveSqlParser.T_BY, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_BYTE = function() {
+ return this.getToken(HiveSqlParser.T_BYTE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_CALL = function() {
+ return this.getToken(HiveSqlParser.T_CALL, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_CALLER = function() {
+ return this.getToken(HiveSqlParser.T_CALLER, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_CASCADE = function() {
+ return this.getToken(HiveSqlParser.T_CASCADE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_CASE = function() {
+ return this.getToken(HiveSqlParser.T_CASE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_CASESPECIFIC = function() {
+ return this.getToken(HiveSqlParser.T_CASESPECIFIC, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_CAST = function() {
+ return this.getToken(HiveSqlParser.T_CAST, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_CHAR = function() {
+ return this.getToken(HiveSqlParser.T_CHAR, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_CHARACTER = function() {
+ return this.getToken(HiveSqlParser.T_CHARACTER, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_CHARSET = function() {
+ return this.getToken(HiveSqlParser.T_CHARSET, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_CLIENT = function() {
+ return this.getToken(HiveSqlParser.T_CLIENT, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_CLOSE = function() {
+ return this.getToken(HiveSqlParser.T_CLOSE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_CLUSTERED = function() {
+ return this.getToken(HiveSqlParser.T_CLUSTERED, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_CMP = function() {
+ return this.getToken(HiveSqlParser.T_CMP, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_COLLECT = function() {
+ return this.getToken(HiveSqlParser.T_COLLECT, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_COLLECTION = function() {
+ return this.getToken(HiveSqlParser.T_COLLECTION, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_COLUMN = function() {
+ return this.getToken(HiveSqlParser.T_COLUMN, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_COMMENT = function() {
+ return this.getToken(HiveSqlParser.T_COMMENT, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_COMPRESS = function() {
+ return this.getToken(HiveSqlParser.T_COMPRESS, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_CONSTANT = function() {
+ return this.getToken(HiveSqlParser.T_CONSTANT, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_COPY = function() {
+ return this.getToken(HiveSqlParser.T_COPY, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_COMMIT = function() {
+ return this.getToken(HiveSqlParser.T_COMMIT, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_CONCAT = function() {
+ return this.getToken(HiveSqlParser.T_CONCAT, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_CONDITION = function() {
+ return this.getToken(HiveSqlParser.T_CONDITION, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_CONSTRAINT = function() {
+ return this.getToken(HiveSqlParser.T_CONSTRAINT, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_CONTINUE = function() {
+ return this.getToken(HiveSqlParser.T_CONTINUE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_COUNT = function() {
+ return this.getToken(HiveSqlParser.T_COUNT, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_COUNT_BIG = function() {
+ return this.getToken(HiveSqlParser.T_COUNT_BIG, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_CREATE = function() {
+ return this.getToken(HiveSqlParser.T_CREATE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_CREATION = function() {
+ return this.getToken(HiveSqlParser.T_CREATION, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_CREATOR = function() {
+ return this.getToken(HiveSqlParser.T_CREATOR, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_CS = function() {
+ return this.getToken(HiveSqlParser.T_CS, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_CUME_DIST = function() {
+ return this.getToken(HiveSqlParser.T_CUME_DIST, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_CURRENT = function() {
+ return this.getToken(HiveSqlParser.T_CURRENT, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_CURRENT_DATE = function() {
+ return this.getToken(HiveSqlParser.T_CURRENT_DATE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_CURRENT_SCHEMA = function() {
+ return this.getToken(HiveSqlParser.T_CURRENT_SCHEMA, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_CURRENT_TIMESTAMP = function() {
+ return this.getToken(HiveSqlParser.T_CURRENT_TIMESTAMP, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_CURRENT_USER = function() {
+ return this.getToken(HiveSqlParser.T_CURRENT_USER, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_CURSOR = function() {
+ return this.getToken(HiveSqlParser.T_CURSOR, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_DATA = function() {
+ return this.getToken(HiveSqlParser.T_DATA, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_DATABASE = function() {
+ return this.getToken(HiveSqlParser.T_DATABASE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_DATE = function() {
+ return this.getToken(HiveSqlParser.T_DATE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_DATETIME = function() {
+ return this.getToken(HiveSqlParser.T_DATETIME, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_DAY = function() {
+ return this.getToken(HiveSqlParser.T_DAY, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_DAYS = function() {
+ return this.getToken(HiveSqlParser.T_DAYS, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_DEC = function() {
+ return this.getToken(HiveSqlParser.T_DEC, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_DECIMAL = function() {
+ return this.getToken(HiveSqlParser.T_DECIMAL, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_DECLARE = function() {
+ return this.getToken(HiveSqlParser.T_DECLARE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_DEFAULT = function() {
+ return this.getToken(HiveSqlParser.T_DEFAULT, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_DEFERRED = function() {
+ return this.getToken(HiveSqlParser.T_DEFERRED, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_DEFINED = function() {
+ return this.getToken(HiveSqlParser.T_DEFINED, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_DEFINER = function() {
+ return this.getToken(HiveSqlParser.T_DEFINER, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_DEFINITION = function() {
+ return this.getToken(HiveSqlParser.T_DEFINITION, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_DELETE = function() {
+ return this.getToken(HiveSqlParser.T_DELETE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_DELIMITED = function() {
+ return this.getToken(HiveSqlParser.T_DELIMITED, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_DELIMITER = function() {
+ return this.getToken(HiveSqlParser.T_DELIMITER, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_DENSE_RANK = function() {
+ return this.getToken(HiveSqlParser.T_DENSE_RANK, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_DESC = function() {
+ return this.getToken(HiveSqlParser.T_DESC, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_DESCRIBE = function() {
+ return this.getToken(HiveSqlParser.T_DESCRIBE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_DIAGNOSTICS = function() {
+ return this.getToken(HiveSqlParser.T_DIAGNOSTICS, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_DIR = function() {
+ return this.getToken(HiveSqlParser.T_DIR, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_DIRECTORY = function() {
+ return this.getToken(HiveSqlParser.T_DIRECTORY, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_DISTINCT = function() {
+ return this.getToken(HiveSqlParser.T_DISTINCT, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_DISTRIBUTE = function() {
+ return this.getToken(HiveSqlParser.T_DISTRIBUTE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_DO = function() {
+ return this.getToken(HiveSqlParser.T_DO, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_DOUBLE = function() {
+ return this.getToken(HiveSqlParser.T_DOUBLE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_DROP = function() {
+ return this.getToken(HiveSqlParser.T_DROP, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_DYNAMIC = function() {
+ return this.getToken(HiveSqlParser.T_DYNAMIC, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_ENABLE = function() {
+ return this.getToken(HiveSqlParser.T_ENABLE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_ENGINE = function() {
+ return this.getToken(HiveSqlParser.T_ENGINE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_ESCAPED = function() {
+ return this.getToken(HiveSqlParser.T_ESCAPED, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_EXCEPT = function() {
+ return this.getToken(HiveSqlParser.T_EXCEPT, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_EXEC = function() {
+ return this.getToken(HiveSqlParser.T_EXEC, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_EXECUTE = function() {
+ return this.getToken(HiveSqlParser.T_EXECUTE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_EXCEPTION = function() {
+ return this.getToken(HiveSqlParser.T_EXCEPTION, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_EXCLUSIVE = function() {
+ return this.getToken(HiveSqlParser.T_EXCLUSIVE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_EXISTS = function() {
+ return this.getToken(HiveSqlParser.T_EXISTS, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_EXIT = function() {
+ return this.getToken(HiveSqlParser.T_EXIT, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_FALLBACK = function() {
+ return this.getToken(HiveSqlParser.T_FALLBACK, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_FALSE = function() {
+ return this.getToken(HiveSqlParser.T_FALSE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_FETCH = function() {
+ return this.getToken(HiveSqlParser.T_FETCH, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_FIELDS = function() {
+ return this.getToken(HiveSqlParser.T_FIELDS, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_FILE = function() {
+ return this.getToken(HiveSqlParser.T_FILE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_FILES = function() {
+ return this.getToken(HiveSqlParser.T_FILES, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_FIRST_VALUE = function() {
+ return this.getToken(HiveSqlParser.T_FIRST_VALUE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_FLOAT = function() {
+ return this.getToken(HiveSqlParser.T_FLOAT, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_FOR = function() {
+ return this.getToken(HiveSqlParser.T_FOR, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_FOREIGN = function() {
+ return this.getToken(HiveSqlParser.T_FOREIGN, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_FORMAT = function() {
+ return this.getToken(HiveSqlParser.T_FORMAT, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_FOUND = function() {
+ return this.getToken(HiveSqlParser.T_FOUND, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_FROM = function() {
+ return this.getToken(HiveSqlParser.T_FROM, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_FULL = function() {
+ return this.getToken(HiveSqlParser.T_FULL, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_FUNCTION = function() {
+ return this.getToken(HiveSqlParser.T_FUNCTION, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_GET = function() {
+ return this.getToken(HiveSqlParser.T_GET, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_GLOBAL = function() {
+ return this.getToken(HiveSqlParser.T_GLOBAL, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_GO = function() {
+ return this.getToken(HiveSqlParser.T_GO, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_GRANT = function() {
+ return this.getToken(HiveSqlParser.T_GRANT, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_GROUP = function() {
+ return this.getToken(HiveSqlParser.T_GROUP, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_HANDLER = function() {
+ return this.getToken(HiveSqlParser.T_HANDLER, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_HASH = function() {
+ return this.getToken(HiveSqlParser.T_HASH, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_HAVING = function() {
+ return this.getToken(HiveSqlParser.T_HAVING, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_HDFS = function() {
+ return this.getToken(HiveSqlParser.T_HDFS, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_HIVE = function() {
+ return this.getToken(HiveSqlParser.T_HIVE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_HOST = function() {
+ return this.getToken(HiveSqlParser.T_HOST, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_IDENTITY = function() {
+ return this.getToken(HiveSqlParser.T_IDENTITY, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_IF = function() {
+ return this.getToken(HiveSqlParser.T_IF, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_IGNORE = function() {
+ return this.getToken(HiveSqlParser.T_IGNORE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_IMMEDIATE = function() {
+ return this.getToken(HiveSqlParser.T_IMMEDIATE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_IN = function() {
+ return this.getToken(HiveSqlParser.T_IN, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_INCLUDE = function() {
+ return this.getToken(HiveSqlParser.T_INCLUDE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_INDEX = function() {
+ return this.getToken(HiveSqlParser.T_INDEX, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_INITRANS = function() {
+ return this.getToken(HiveSqlParser.T_INITRANS, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_INNER = function() {
+ return this.getToken(HiveSqlParser.T_INNER, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_INOUT = function() {
+ return this.getToken(HiveSqlParser.T_INOUT, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_INSERT = function() {
+ return this.getToken(HiveSqlParser.T_INSERT, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_INT = function() {
+ return this.getToken(HiveSqlParser.T_INT, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_INT2 = function() {
+ return this.getToken(HiveSqlParser.T_INT2, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_INT4 = function() {
+ return this.getToken(HiveSqlParser.T_INT4, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_INT8 = function() {
+ return this.getToken(HiveSqlParser.T_INT8, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_INTEGER = function() {
+ return this.getToken(HiveSqlParser.T_INTEGER, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_INTERSECT = function() {
+ return this.getToken(HiveSqlParser.T_INTERSECT, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_INTERVAL = function() {
+ return this.getToken(HiveSqlParser.T_INTERVAL, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_INTO = function() {
+ return this.getToken(HiveSqlParser.T_INTO, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_INVOKER = function() {
+ return this.getToken(HiveSqlParser.T_INVOKER, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_ITEMS = function() {
+ return this.getToken(HiveSqlParser.T_ITEMS, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_IS = function() {
+ return this.getToken(HiveSqlParser.T_IS, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_ISOPEN = function() {
+ return this.getToken(HiveSqlParser.T_ISOPEN, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_JOIN = function() {
+ return this.getToken(HiveSqlParser.T_JOIN, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_KEEP = function() {
+ return this.getToken(HiveSqlParser.T_KEEP, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_KEY = function() {
+ return this.getToken(HiveSqlParser.T_KEY, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_KEYS = function() {
+ return this.getToken(HiveSqlParser.T_KEYS, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_LAG = function() {
+ return this.getToken(HiveSqlParser.T_LAG, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_LANGUAGE = function() {
+ return this.getToken(HiveSqlParser.T_LANGUAGE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_LAST_VALUE = function() {
+ return this.getToken(HiveSqlParser.T_LAST_VALUE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_LEAD = function() {
+ return this.getToken(HiveSqlParser.T_LEAD, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_LEAVE = function() {
+ return this.getToken(HiveSqlParser.T_LEAVE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_LEFT = function() {
+ return this.getToken(HiveSqlParser.T_LEFT, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_LIKE = function() {
+ return this.getToken(HiveSqlParser.T_LIKE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_LIMIT = function() {
+ return this.getToken(HiveSqlParser.T_LIMIT, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_LINES = function() {
+ return this.getToken(HiveSqlParser.T_LINES, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_LOCAL = function() {
+ return this.getToken(HiveSqlParser.T_LOCAL, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_LOCATION = function() {
+ return this.getToken(HiveSqlParser.T_LOCATION, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_LOCATOR = function() {
+ return this.getToken(HiveSqlParser.T_LOCATOR, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_LOCATORS = function() {
+ return this.getToken(HiveSqlParser.T_LOCATORS, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_LOCKS = function() {
+ return this.getToken(HiveSqlParser.T_LOCKS, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_LOG = function() {
+ return this.getToken(HiveSqlParser.T_LOG, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_LOGGED = function() {
+ return this.getToken(HiveSqlParser.T_LOGGED, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_LOGGING = function() {
+ return this.getToken(HiveSqlParser.T_LOGGING, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_LOOP = function() {
+ return this.getToken(HiveSqlParser.T_LOOP, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_MAP = function() {
+ return this.getToken(HiveSqlParser.T_MAP, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_MATCHED = function() {
+ return this.getToken(HiveSqlParser.T_MATCHED, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_MAX = function() {
+ return this.getToken(HiveSqlParser.T_MAX, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_MAXTRANS = function() {
+ return this.getToken(HiveSqlParser.T_MAXTRANS, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_MERGE = function() {
+ return this.getToken(HiveSqlParser.T_MERGE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_MESSAGE_TEXT = function() {
+ return this.getToken(HiveSqlParser.T_MESSAGE_TEXT, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_MICROSECOND = function() {
+ return this.getToken(HiveSqlParser.T_MICROSECOND, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_MICROSECONDS = function() {
+ return this.getToken(HiveSqlParser.T_MICROSECONDS, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_MIN = function() {
+ return this.getToken(HiveSqlParser.T_MIN, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_MULTISET = function() {
+ return this.getToken(HiveSqlParser.T_MULTISET, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_NCHAR = function() {
+ return this.getToken(HiveSqlParser.T_NCHAR, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_NEW = function() {
+ return this.getToken(HiveSqlParser.T_NEW, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_NVARCHAR = function() {
+ return this.getToken(HiveSqlParser.T_NVARCHAR, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_NO = function() {
+ return this.getToken(HiveSqlParser.T_NO, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_NOCOMPRESS = function() {
+ return this.getToken(HiveSqlParser.T_NOCOMPRESS, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_NOCOUNT = function() {
+ return this.getToken(HiveSqlParser.T_NOCOUNT, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_NOLOGGING = function() {
+ return this.getToken(HiveSqlParser.T_NOLOGGING, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_NONE = function() {
+ return this.getToken(HiveSqlParser.T_NONE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_NOT = function() {
+ return this.getToken(HiveSqlParser.T_NOT, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_NOTFOUND = function() {
+ return this.getToken(HiveSqlParser.T_NOTFOUND, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_NUMERIC = function() {
+ return this.getToken(HiveSqlParser.T_NUMERIC, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_NUMBER = function() {
+ return this.getToken(HiveSqlParser.T_NUMBER, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_OBJECT = function() {
+ return this.getToken(HiveSqlParser.T_OBJECT, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_OFF = function() {
+ return this.getToken(HiveSqlParser.T_OFF, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_ON = function() {
+ return this.getToken(HiveSqlParser.T_ON, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_ONLY = function() {
+ return this.getToken(HiveSqlParser.T_ONLY, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_OPEN = function() {
+ return this.getToken(HiveSqlParser.T_OPEN, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_OR = function() {
+ return this.getToken(HiveSqlParser.T_OR, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_ORDER = function() {
+ return this.getToken(HiveSqlParser.T_ORDER, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_OUT = function() {
+ return this.getToken(HiveSqlParser.T_OUT, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_OUTER = function() {
+ return this.getToken(HiveSqlParser.T_OUTER, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_OVER = function() {
+ return this.getToken(HiveSqlParser.T_OVER, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_OVERWRITE = function() {
+ return this.getToken(HiveSqlParser.T_OVERWRITE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_OWNER = function() {
+ return this.getToken(HiveSqlParser.T_OWNER, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_PACKAGE = function() {
+ return this.getToken(HiveSqlParser.T_PACKAGE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_PART_COUNT = function() {
+ return this.getToken(HiveSqlParser.T_PART_COUNT, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_PART_LOC = function() {
+ return this.getToken(HiveSqlParser.T_PART_LOC, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_PARTITION = function() {
+ return this.getToken(HiveSqlParser.T_PARTITION, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_PCTFREE = function() {
+ return this.getToken(HiveSqlParser.T_PCTFREE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_PCTUSED = function() {
+ return this.getToken(HiveSqlParser.T_PCTUSED, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_PRECISION = function() {
+ return this.getToken(HiveSqlParser.T_PRECISION, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_PRESERVE = function() {
+ return this.getToken(HiveSqlParser.T_PRESERVE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_PRIMARY = function() {
+ return this.getToken(HiveSqlParser.T_PRIMARY, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_PRINT = function() {
+ return this.getToken(HiveSqlParser.T_PRINT, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_PROC = function() {
+ return this.getToken(HiveSqlParser.T_PROC, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_PROCEDURE = function() {
+ return this.getToken(HiveSqlParser.T_PROCEDURE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_PWD = function() {
+ return this.getToken(HiveSqlParser.T_PWD, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_QUALIFY = function() {
+ return this.getToken(HiveSqlParser.T_QUALIFY, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_QUERY_BAND = function() {
+ return this.getToken(HiveSqlParser.T_QUERY_BAND, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_QUIT = function() {
+ return this.getToken(HiveSqlParser.T_QUIT, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_QUOTED_IDENTIFIER = function() {
+ return this.getToken(HiveSqlParser.T_QUOTED_IDENTIFIER, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_RAISE = function() {
+ return this.getToken(HiveSqlParser.T_RAISE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_RANK = function() {
+ return this.getToken(HiveSqlParser.T_RANK, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_REAL = function() {
+ return this.getToken(HiveSqlParser.T_REAL, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_REFERENCES = function() {
+ return this.getToken(HiveSqlParser.T_REFERENCES, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_REGEXP = function() {
+ return this.getToken(HiveSqlParser.T_REGEXP, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_RR = function() {
+ return this.getToken(HiveSqlParser.T_RR, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_REPLACE = function() {
+ return this.getToken(HiveSqlParser.T_REPLACE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_RESIGNAL = function() {
+ return this.getToken(HiveSqlParser.T_RESIGNAL, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_RESTRICT = function() {
+ return this.getToken(HiveSqlParser.T_RESTRICT, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_RESULT = function() {
+ return this.getToken(HiveSqlParser.T_RESULT, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_RESULT_SET_LOCATOR = function() {
+ return this.getToken(HiveSqlParser.T_RESULT_SET_LOCATOR, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_RETURN = function() {
+ return this.getToken(HiveSqlParser.T_RETURN, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_RETURNS = function() {
+ return this.getToken(HiveSqlParser.T_RETURNS, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_REVERSE = function() {
+ return this.getToken(HiveSqlParser.T_REVERSE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_RIGHT = function() {
+ return this.getToken(HiveSqlParser.T_RIGHT, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_RLIKE = function() {
+ return this.getToken(HiveSqlParser.T_RLIKE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_RS = function() {
+ return this.getToken(HiveSqlParser.T_RS, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_ROLE = function() {
+ return this.getToken(HiveSqlParser.T_ROLE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_ROLLBACK = function() {
+ return this.getToken(HiveSqlParser.T_ROLLBACK, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_ROW = function() {
+ return this.getToken(HiveSqlParser.T_ROW, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_ROWS = function() {
+ return this.getToken(HiveSqlParser.T_ROWS, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_ROW_COUNT = function() {
+ return this.getToken(HiveSqlParser.T_ROW_COUNT, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_ROW_NUMBER = function() {
+ return this.getToken(HiveSqlParser.T_ROW_NUMBER, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_SCHEMA = function() {
+ return this.getToken(HiveSqlParser.T_SCHEMA, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_SECOND = function() {
+ return this.getToken(HiveSqlParser.T_SECOND, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_SECONDS = function() {
+ return this.getToken(HiveSqlParser.T_SECONDS, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_SECURITY = function() {
+ return this.getToken(HiveSqlParser.T_SECURITY, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_SEGMENT = function() {
+ return this.getToken(HiveSqlParser.T_SEGMENT, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_SEL = function() {
+ return this.getToken(HiveSqlParser.T_SEL, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_SELECT = function() {
+ return this.getToken(HiveSqlParser.T_SELECT, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_SESSION = function() {
+ return this.getToken(HiveSqlParser.T_SESSION, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_SESSIONS = function() {
+ return this.getToken(HiveSqlParser.T_SESSIONS, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_SET = function() {
+ return this.getToken(HiveSqlParser.T_SET, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_SETS = function() {
+ return this.getToken(HiveSqlParser.T_SETS, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_SHARE = function() {
+ return this.getToken(HiveSqlParser.T_SHARE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_SIGNAL = function() {
+ return this.getToken(HiveSqlParser.T_SIGNAL, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_SIMPLE_DOUBLE = function() {
+ return this.getToken(HiveSqlParser.T_SIMPLE_DOUBLE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_SIMPLE_FLOAT = function() {
+ return this.getToken(HiveSqlParser.T_SIMPLE_FLOAT, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_SMALLDATETIME = function() {
+ return this.getToken(HiveSqlParser.T_SMALLDATETIME, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_SMALLINT = function() {
+ return this.getToken(HiveSqlParser.T_SMALLINT, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_SQL = function() {
+ return this.getToken(HiveSqlParser.T_SQL, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_SQLEXCEPTION = function() {
+ return this.getToken(HiveSqlParser.T_SQLEXCEPTION, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_SQLINSERT = function() {
+ return this.getToken(HiveSqlParser.T_SQLINSERT, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_SQLSTATE = function() {
+ return this.getToken(HiveSqlParser.T_SQLSTATE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_SQLWARNING = function() {
+ return this.getToken(HiveSqlParser.T_SQLWARNING, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_STATS = function() {
+ return this.getToken(HiveSqlParser.T_STATS, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_STATISTICS = function() {
+ return this.getToken(HiveSqlParser.T_STATISTICS, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_STEP = function() {
+ return this.getToken(HiveSqlParser.T_STEP, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_STDEV = function() {
+ return this.getToken(HiveSqlParser.T_STDEV, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_STORAGE = function() {
+ return this.getToken(HiveSqlParser.T_STORAGE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_STORED = function() {
+ return this.getToken(HiveSqlParser.T_STORED, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_STRING = function() {
+ return this.getToken(HiveSqlParser.T_STRING, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_SUBDIR = function() {
+ return this.getToken(HiveSqlParser.T_SUBDIR, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_SUBSTRING = function() {
+ return this.getToken(HiveSqlParser.T_SUBSTRING, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_SUM = function() {
+ return this.getToken(HiveSqlParser.T_SUM, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_SUMMARY = function() {
+ return this.getToken(HiveSqlParser.T_SUMMARY, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_SYSDATE = function() {
+ return this.getToken(HiveSqlParser.T_SYSDATE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_SYS_REFCURSOR = function() {
+ return this.getToken(HiveSqlParser.T_SYS_REFCURSOR, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_TABLE = function() {
+ return this.getToken(HiveSqlParser.T_TABLE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_TABLESPACE = function() {
+ return this.getToken(HiveSqlParser.T_TABLESPACE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_TEMPORARY = function() {
+ return this.getToken(HiveSqlParser.T_TEMPORARY, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_TERMINATED = function() {
+ return this.getToken(HiveSqlParser.T_TERMINATED, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_TEXTIMAGE_ON = function() {
+ return this.getToken(HiveSqlParser.T_TEXTIMAGE_ON, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_THEN = function() {
+ return this.getToken(HiveSqlParser.T_THEN, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_TIMESTAMP = function() {
+ return this.getToken(HiveSqlParser.T_TIMESTAMP, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_TITLE = function() {
+ return this.getToken(HiveSqlParser.T_TITLE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_TO = function() {
+ return this.getToken(HiveSqlParser.T_TO, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_TOP = function() {
+ return this.getToken(HiveSqlParser.T_TOP, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_TRANSACTION = function() {
+ return this.getToken(HiveSqlParser.T_TRANSACTION, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_TRIM = function() {
+ return this.getToken(HiveSqlParser.T_TRIM, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_TRUE = function() {
+ return this.getToken(HiveSqlParser.T_TRUE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_TRUNCATE = function() {
+ return this.getToken(HiveSqlParser.T_TRUNCATE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_UNIQUE = function() {
+ return this.getToken(HiveSqlParser.T_UNIQUE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_UPDATE = function() {
+ return this.getToken(HiveSqlParser.T_UPDATE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_UR = function() {
+ return this.getToken(HiveSqlParser.T_UR, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_USE = function() {
+ return this.getToken(HiveSqlParser.T_USE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_USER = function() {
+ return this.getToken(HiveSqlParser.T_USER, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_USING = function() {
+ return this.getToken(HiveSqlParser.T_USING, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_VALUE = function() {
+ return this.getToken(HiveSqlParser.T_VALUE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_VALUES = function() {
+ return this.getToken(HiveSqlParser.T_VALUES, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_VAR = function() {
+ return this.getToken(HiveSqlParser.T_VAR, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_VARCHAR = function() {
+ return this.getToken(HiveSqlParser.T_VARCHAR, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_VARCHAR2 = function() {
+ return this.getToken(HiveSqlParser.T_VARCHAR2, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_VARYING = function() {
+ return this.getToken(HiveSqlParser.T_VARYING, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_VARIANCE = function() {
+ return this.getToken(HiveSqlParser.T_VARIANCE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_VOLATILE = function() {
+ return this.getToken(HiveSqlParser.T_VOLATILE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_WHILE = function() {
+ return this.getToken(HiveSqlParser.T_WHILE, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_WITH = function() {
+ return this.getToken(HiveSqlParser.T_WITH, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_WITHOUT = function() {
+ return this.getToken(HiveSqlParser.T_WITHOUT, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_WORK = function() {
+ return this.getToken(HiveSqlParser.T_WORK, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_XACT_ABORT = function() {
+ return this.getToken(HiveSqlParser.T_XACT_ABORT, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_XML = function() {
+ return this.getToken(HiveSqlParser.T_XML, 0);
+};
+
+Non_reserved_wordsContext.prototype.T_YES = function() {
+ return this.getToken(HiveSqlParser.T_YES, 0);
+};
+
+Non_reserved_wordsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.enterNon_reserved_words(this);
+ }
+};
+
+Non_reserved_wordsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof HiveSqlListener ) {
+ listener.exitNon_reserved_words(this);
+ }
+};
+
+Non_reserved_wordsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof HiveSqlVisitor ) {
+ return visitor.visitNon_reserved_words(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+HiveSqlParser.Non_reserved_wordsContext = Non_reserved_wordsContext;
+
+HiveSqlParser.prototype.non_reserved_words = function() {
+
+ var localctx = new Non_reserved_wordsContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 450, HiveSqlParser.RULE_non_reserved_words);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3340;
+ _la = this._input.LA(1);
+ if(!((((_la) & ~0x1f) == 0 && ((1 << _la) & ((1 << HiveSqlParser.T_GO) | (1 << HiveSqlParser.T_BEGIN) | (1 << HiveSqlParser.T_EXCEPTION) | (1 << HiveSqlParser.T_THEN) | (1 << HiveSqlParser.T_SET) | (1 << HiveSqlParser.T_ALLOCATE) | (1 << HiveSqlParser.T_CURSOR) | (1 << HiveSqlParser.T_FOR) | (1 << HiveSqlParser.T_RESULT) | (1 << HiveSqlParser.T_PROCEDURE) | (1 << HiveSqlParser.T_ASSOCIATE))) !== 0) || ((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (HiveSqlParser.T_LOCATOR - 32)) | (1 << (HiveSqlParser.T_LOCATORS - 32)) | (1 << (HiveSqlParser.T_WITH - 32)) | (1 << (HiveSqlParser.T_TRANSACTION - 32)) | (1 << (HiveSqlParser.T_BREAK - 32)) | (1 << (HiveSqlParser.T_CALL - 32)) | (1 << (HiveSqlParser.T_DECLARE - 32)) | (1 << (HiveSqlParser.T_AS - 32)) | (1 << (HiveSqlParser.T_CONSTANT - 32)) | (1 << (HiveSqlParser.T_CONDITION - 32)) | (1 << (HiveSqlParser.T_IS - 32)) | (1 << (HiveSqlParser.T_RETURN - 32)) | (1 << (HiveSqlParser.T_ONLY - 32)) | (1 << (HiveSqlParser.T_TO - 32)) | (1 << (HiveSqlParser.T_CALLER - 32)) | (1 << (HiveSqlParser.T_CLIENT - 32)) | (1 << (HiveSqlParser.T_WITHOUT - 32)) | (1 << (HiveSqlParser.T_CONTINUE - 32)) | (1 << (HiveSqlParser.T_EXIT - 32)) | (1 << (HiveSqlParser.T_HANDLER - 32)) | (1 << (HiveSqlParser.T_SQLEXCEPTION - 32)) | (1 << (HiveSqlParser.T_SQLWARNING - 32)) | (1 << (HiveSqlParser.T_NOT - 32)) | (1 << (HiveSqlParser.T_FOUND - 32)) | (1 << (HiveSqlParser.T_GLOBAL - 32)) | (1 << (HiveSqlParser.T_TEMPORARY - 32)) | (1 << (HiveSqlParser.T_TABLE - 32)) | (1 << (HiveSqlParser.T_CREATE - 32)) | (1 << (HiveSqlParser.T_IF - 32)) | (1 << (HiveSqlParser.T_EXISTS - 32)) | (1 << (HiveSqlParser.T_LOCAL - 32)) | (1 << (HiveSqlParser.T_MULTISET - 32)))) !== 0) || ((((_la - 64)) & ~0x1f) == 0 && ((1 << (_la - 64)) & ((1 << (HiveSqlParser.T_VOLATILE - 64)) | (1 << (HiveSqlParser.T_LIKE - 64)) | (1 << (HiveSqlParser.T_CONSTRAINT - 64)) | (1 << (HiveSqlParser.T_PRIMARY - 64)) | (1 << (HiveSqlParser.T_KEY - 64)) | (1 << (HiveSqlParser.T_UNIQUE - 64)) | (1 << (HiveSqlParser.T_REFERENCES - 64)) | (1 << (HiveSqlParser.T_IDENTITY - 64)) | (1 << (HiveSqlParser.T_AUTO_INCREMENT - 64)) | (1 << (HiveSqlParser.T_ENABLE - 64)) | (1 << (HiveSqlParser.T_CLUSTERED - 64)) | (1 << (HiveSqlParser.T_ASC - 64)) | (1 << (HiveSqlParser.T_DESC - 64)) | (1 << (HiveSqlParser.T_FOREIGN - 64)) | (1 << (HiveSqlParser.T_ON - 64)) | (1 << (HiveSqlParser.T_UPDATE - 64)) | (1 << (HiveSqlParser.T_DELETE - 64)) | (1 << (HiveSqlParser.T_NO - 64)) | (1 << (HiveSqlParser.T_ACTION - 64)) | (1 << (HiveSqlParser.T_RESTRICT - 64)) | (1 << (HiveSqlParser.T_DEFAULT - 64)) | (1 << (HiveSqlParser.T_CASCADE - 64)) | (1 << (HiveSqlParser.T_LOG - 64)) | (1 << (HiveSqlParser.T_FALLBACK - 64)) | (1 << (HiveSqlParser.T_COMMIT - 64)) | (1 << (HiveSqlParser.T_PRESERVE - 64)) | (1 << (HiveSqlParser.T_ROWS - 64)) | (1 << (HiveSqlParser.T_SEGMENT - 64)) | (1 << (HiveSqlParser.T_CREATION - 64)) | (1 << (HiveSqlParser.T_IMMEDIATE - 64)) | (1 << (HiveSqlParser.T_DEFERRED - 64)))) !== 0) || ((((_la - 96)) & ~0x1f) == 0 && ((1 << (_la - 96)) & ((1 << (HiveSqlParser.T_PCTFREE - 96)) | (1 << (HiveSqlParser.T_PCTUSED - 96)) | (1 << (HiveSqlParser.T_INITRANS - 96)) | (1 << (HiveSqlParser.T_MAXTRANS - 96)) | (1 << (HiveSqlParser.T_NOCOMPRESS - 96)) | (1 << (HiveSqlParser.T_LOGGING - 96)) | (1 << (HiveSqlParser.T_NOLOGGING - 96)) | (1 << (HiveSqlParser.T_STORAGE - 96)) | (1 << (HiveSqlParser.T_TABLESPACE - 96)) | (1 << (HiveSqlParser.T_INDEX - 96)) | (1 << (HiveSqlParser.T_IN - 96)) | (1 << (HiveSqlParser.T_REPLACE - 96)) | (1 << (HiveSqlParser.T_DISTRIBUTE - 96)) | (1 << (HiveSqlParser.T_BY - 96)) | (1 << (HiveSqlParser.T_HASH - 96)) | (1 << (HiveSqlParser.T_LOGGED - 96)) | (1 << (HiveSqlParser.T_COMPRESS - 96)) | (1 << (HiveSqlParser.T_YES - 96)) | (1 << (HiveSqlParser.T_DEFINITION - 96)) | (1 << (HiveSqlParser.T_DROP - 96)) | (1 << (HiveSqlParser.T_DATA - 96)) | (1 << (HiveSqlParser.T_STORED - 96)) | (1 << (HiveSqlParser.T_ROW - 96)) | (1 << (HiveSqlParser.T_FORMAT - 96)) | (1 << (HiveSqlParser.T_DELIMITED - 96)) | (1 << (HiveSqlParser.T_FIELDS - 96)) | (1 << (HiveSqlParser.T_TERMINATED - 96)) | (1 << (HiveSqlParser.T_ESCAPED - 96)) | (1 << (HiveSqlParser.T_COLLECTION - 96)) | (1 << (HiveSqlParser.T_ITEMS - 96)) | (1 << (HiveSqlParser.T_MAP - 96)) | (1 << (HiveSqlParser.T_KEYS - 96)))) !== 0) || ((((_la - 128)) & ~0x1f) == 0 && ((1 << (_la - 128)) & ((1 << (HiveSqlParser.T_LINES - 128)) | (1 << (HiveSqlParser.T_DEFINED - 128)) | (1 << (HiveSqlParser.T_TEXTIMAGE_ON - 128)) | (1 << (HiveSqlParser.T_COMMENT - 128)) | (1 << (HiveSqlParser.T_CHARACTER - 128)) | (1 << (HiveSqlParser.T_CHARSET - 128)) | (1 << (HiveSqlParser.T_ENGINE - 128)) | (1 << (HiveSqlParser.T_ALTER - 128)) | (1 << (HiveSqlParser.T_ADD2 - 128)) | (1 << (HiveSqlParser.T_CHAR - 128)) | (1 << (HiveSqlParser.T_BIGINT - 128)) | (1 << (HiveSqlParser.T_BINARY_DOUBLE - 128)) | (1 << (HiveSqlParser.T_BINARY_FLOAT - 128)) | (1 << (HiveSqlParser.T_BIT - 128)) | (1 << (HiveSqlParser.T_DATE - 128)) | (1 << (HiveSqlParser.T_DATETIME - 128)) | (1 << (HiveSqlParser.T_DEC - 128)) | (1 << (HiveSqlParser.T_DECIMAL - 128)) | (1 << (HiveSqlParser.T_DOUBLE - 128)) | (1 << (HiveSqlParser.T_PRECISION - 128)) | (1 << (HiveSqlParser.T_FLOAT - 128)) | (1 << (HiveSqlParser.T_INT - 128)) | (1 << (HiveSqlParser.T_INT2 - 128)) | (1 << (HiveSqlParser.T_INT4 - 128)) | (1 << (HiveSqlParser.T_INT8 - 128)) | (1 << (HiveSqlParser.T_INTEGER - 128)) | (1 << (HiveSqlParser.T_NCHAR - 128)) | (1 << (HiveSqlParser.T_NVARCHAR - 128)) | (1 << (HiveSqlParser.T_NUMBER - 128)) | (1 << (HiveSqlParser.T_NUMERIC - 128)))) !== 0) || ((((_la - 160)) & ~0x1f) == 0 && ((1 << (_la - 160)) & ((1 << (HiveSqlParser.T_REAL - 160)) | (1 << (HiveSqlParser.T_RESULT_SET_LOCATOR - 160)) | (1 << (HiveSqlParser.T_VARYING - 160)) | (1 << (HiveSqlParser.T_SIMPLE_FLOAT - 160)) | (1 << (HiveSqlParser.T_SIMPLE_DOUBLE - 160)) | (1 << (HiveSqlParser.T_SMALLINT - 160)) | (1 << (HiveSqlParser.T_SMALLDATETIME - 160)) | (1 << (HiveSqlParser.T_STRING - 160)) | (1 << (HiveSqlParser.T_SYS_REFCURSOR - 160)) | (1 << (HiveSqlParser.T_TIMESTAMP - 160)) | (1 << (HiveSqlParser.T_VARCHAR - 160)) | (1 << (HiveSqlParser.T_VARCHAR2 - 160)) | (1 << (HiveSqlParser.T_XML - 160)) | (1 << (HiveSqlParser.T_MAX - 160)) | (1 << (HiveSqlParser.T_BYTE - 160)) | (1 << (HiveSqlParser.T_CASESPECIFIC - 160)) | (1 << (HiveSqlParser.T_CS - 160)) | (1 << (HiveSqlParser.T_DATABASE - 160)) | (1 << (HiveSqlParser.T_SCHEMA - 160)) | (1 << (HiveSqlParser.T_LOCATION - 160)) | (1 << (HiveSqlParser.T_OR - 160)) | (1 << (HiveSqlParser.T_FUNCTION - 160)) | (1 << (HiveSqlParser.T_RETURNS - 160)) | (1 << (HiveSqlParser.T_PACKAGE - 160)) | (1 << (HiveSqlParser.T_PROC - 160)) | (1 << (HiveSqlParser.T_BODY - 160)) | (1 << (HiveSqlParser.T_OUT - 160)) | (1 << (HiveSqlParser.T_INOUT - 160)))) !== 0) || ((((_la - 192)) & ~0x1f) == 0 && ((1 << (_la - 192)) & ((1 << (HiveSqlParser.T_LANGUAGE - 192)) | (1 << (HiveSqlParser.T_SQL - 192)) | (1 << (HiveSqlParser.T_SECURITY - 192)) | (1 << (HiveSqlParser.T_CREATOR - 192)) | (1 << (HiveSqlParser.T_DEFINER - 192)) | (1 << (HiveSqlParser.T_INVOKER - 192)) | (1 << (HiveSqlParser.T_OWNER - 192)) | (1 << (HiveSqlParser.T_DYNAMIC - 192)) | (1 << (HiveSqlParser.T_SETS - 192)) | (1 << (HiveSqlParser.T_EXEC - 192)) | (1 << (HiveSqlParser.T_EXECUTE - 192)) | (1 << (HiveSqlParser.T_INTO - 192)) | (1 << (HiveSqlParser.T_INCLUDE - 192)) | (1 << (HiveSqlParser.T_INSERT - 192)) | (1 << (HiveSqlParser.T_OVERWRITE - 192)) | (1 << (HiveSqlParser.T_VALUES - 192)) | (1 << (HiveSqlParser.T_DIRECTORY - 192)) | (1 << (HiveSqlParser.T_GET - 192)) | (1 << (HiveSqlParser.T_DIAGNOSTICS - 192)) | (1 << (HiveSqlParser.T_MESSAGE_TEXT - 192)) | (1 << (HiveSqlParser.T_ROW_COUNT - 192)) | (1 << (HiveSqlParser.T_GRANT - 192)) | (1 << (HiveSqlParser.T_ROLE - 192)) | (1 << (HiveSqlParser.T_LEAVE - 192)) | (1 << (HiveSqlParser.T_OBJECT - 192)) | (1 << (HiveSqlParser.T_AT - 192)) | (1 << (HiveSqlParser.T_OPEN - 192)) | (1 << (HiveSqlParser.T_FETCH - 192)) | (1 << (HiveSqlParser.T_FROM - 192)))) !== 0) || ((((_la - 224)) & ~0x1f) == 0 && ((1 << (_la - 224)) & ((1 << (HiveSqlParser.T_COLLECT - 224)) | (1 << (HiveSqlParser.T_STATISTICS - 224)) | (1 << (HiveSqlParser.T_STATS - 224)) | (1 << (HiveSqlParser.T_COLUMN - 224)) | (1 << (HiveSqlParser.T_CLOSE - 224)) | (1 << (HiveSqlParser.T_CMP - 224)) | (1 << (HiveSqlParser.T_SUM - 224)) | (1 << (HiveSqlParser.T_COPY - 224)) | (1 << (HiveSqlParser.T_HDFS - 224)) | (1 << (HiveSqlParser.T_BATCHSIZE - 224)) | (1 << (HiveSqlParser.T_DELIMITER - 224)) | (1 << (HiveSqlParser.T_SQLINSERT - 224)) | (1 << (HiveSqlParser.T_IGNORE - 224)) | (1 << (HiveSqlParser.T_WORK - 224)) | (1 << (HiveSqlParser.T_PRINT - 224)) | (1 << (HiveSqlParser.T_QUIT - 224)) | (1 << (HiveSqlParser.T_RAISE - 224)) | (1 << (HiveSqlParser.T_RESIGNAL - 224)) | (1 << (HiveSqlParser.T_SQLSTATE - 224)) | (1 << (HiveSqlParser.T_VALUE - 224)) | (1 << (HiveSqlParser.T_ROLLBACK - 224)) | (1 << (HiveSqlParser.T_CURRENT - 224)) | (1 << (HiveSqlParser.T_CURRENT_SCHEMA - 224)) | (1 << (HiveSqlParser.T_ANSI_NULLS - 224)) | (1 << (HiveSqlParser.T_ANSI_PADDING - 224)) | (1 << (HiveSqlParser.T_NOCOUNT - 224)) | (1 << (HiveSqlParser.T_QUOTED_IDENTIFIER - 224)) | (1 << (HiveSqlParser.T_XACT_ABORT - 224)) | (1 << (HiveSqlParser.T_OFF - 224)) | (1 << (HiveSqlParser.T_QUERY_BAND - 224)) | (1 << (HiveSqlParser.T_NONE - 224)) | (1 << (HiveSqlParser.T_SESSION - 224)))) !== 0) || ((((_la - 256)) & ~0x1f) == 0 && ((1 << (_la - 256)) & ((1 << (HiveSqlParser.T_SIGNAL - 256)) | (1 << (HiveSqlParser.T_SUMMARY - 256)) | (1 << (HiveSqlParser.T_TOP - 256)) | (1 << (HiveSqlParser.T_LIMIT - 256)) | (1 << (HiveSqlParser.T_TRUNCATE - 256)) | (1 << (HiveSqlParser.T_USE - 256)) | (1 << (HiveSqlParser.T_WHILE - 256)) | (1 << (HiveSqlParser.T_DO - 256)) | (1 << (HiveSqlParser.T_LOOP - 256)) | (1 << (HiveSqlParser.T_REVERSE - 256)) | (1 << (HiveSqlParser.T_STEP - 256)) | (1 << (HiveSqlParser.T_USING - 256)) | (1 << (HiveSqlParser.T_ALL - 256)) | (1 << (HiveSqlParser.T_EXCEPT - 256)) | (1 << (HiveSqlParser.T_INTERSECT - 256)) | (1 << (HiveSqlParser.T_SELECT - 256)) | (1 << (HiveSqlParser.T_SEL - 256)) | (1 << (HiveSqlParser.T_DISTINCT - 256)) | (1 << (HiveSqlParser.T_TITLE - 256)) | (1 << (HiveSqlParser.T_INNER - 256)) | (1 << (HiveSqlParser.T_JOIN - 256)) | (1 << (HiveSqlParser.T_LEFT - 256)) | (1 << (HiveSqlParser.T_RIGHT - 256)) | (1 << (HiveSqlParser.T_FULL - 256)) | (1 << (HiveSqlParser.T_OUTER - 256)))) !== 0) || ((((_la - 288)) & ~0x1f) == 0 && ((1 << (_la - 288)) & ((1 << (HiveSqlParser.T_GROUP - 288)) | (1 << (HiveSqlParser.T_HAVING - 288)) | (1 << (HiveSqlParser.T_QUALIFY - 288)) | (1 << (HiveSqlParser.T_ORDER - 288)) | (1 << (HiveSqlParser.T_RR - 288)) | (1 << (HiveSqlParser.T_RS - 288)) | (1 << (HiveSqlParser.T_UR - 288)) | (1 << (HiveSqlParser.T_AND - 288)) | (1 << (HiveSqlParser.T_KEEP - 288)) | (1 << (HiveSqlParser.T_EXCLUSIVE - 288)) | (1 << (HiveSqlParser.T_SHARE - 288)) | (1 << (HiveSqlParser.T_LOCKS - 288)) | (1 << (HiveSqlParser.T_MERGE - 288)) | (1 << (HiveSqlParser.T_MATCHED - 288)) | (1 << (HiveSqlParser.T_DESCRIBE - 288)) | (1 << (HiveSqlParser.T_BETWEEN - 288)) | (1 << (HiveSqlParser.T_RLIKE - 288)) | (1 << (HiveSqlParser.T_REGEXP - 288)) | (1 << (HiveSqlParser.T_INTERVAL - 288)) | (1 << (HiveSqlParser.T_DAY - 288)) | (1 << (HiveSqlParser.T_DAYS - 288)) | (1 << (HiveSqlParser.T_MICROSECOND - 288)) | (1 << (HiveSqlParser.T_MICROSECONDS - 288)))) !== 0) || ((((_la - 320)) & ~0x1f) == 0 && ((1 << (_la - 320)) & ((1 << (HiveSqlParser.T_SECOND - 320)) | (1 << (HiveSqlParser.T_SECONDS - 320)) | (1 << (HiveSqlParser.T_CONCAT - 320)) | (1 << (HiveSqlParser.T_CASE - 320)) | (1 << (HiveSqlParser.T_ISOPEN - 320)) | (1 << (HiveSqlParser.T_NOTFOUND - 320)) | (1 << (HiveSqlParser.T_AVG - 320)) | (1 << (HiveSqlParser.T_COUNT - 320)) | (1 << (HiveSqlParser.T_COUNT_BIG - 320)) | (1 << (HiveSqlParser.T_CUME_DIST - 320)) | (1 << (HiveSqlParser.T_DENSE_RANK - 320)) | (1 << (HiveSqlParser.T_FIRST_VALUE - 320)) | (1 << (HiveSqlParser.T_LAG - 320)) | (1 << (HiveSqlParser.T_LAST_VALUE - 320)) | (1 << (HiveSqlParser.T_LEAD - 320)) | (1 << (HiveSqlParser.T_MIN - 320)) | (1 << (HiveSqlParser.T_RANK - 320)) | (1 << (HiveSqlParser.T_ROW_NUMBER - 320)) | (1 << (HiveSqlParser.T_STDEV - 320)) | (1 << (HiveSqlParser.T_VAR - 320)) | (1 << (HiveSqlParser.T_VARIANCE - 320)) | (1 << (HiveSqlParser.T_OVER - 320)) | (1 << (HiveSqlParser.T_PARTITION - 320)) | (1 << (HiveSqlParser.T_ACTIVITY_COUNT - 320)) | (1 << (HiveSqlParser.T_CAST - 320)) | (1 << (HiveSqlParser.T_CURRENT_DATE - 320)) | (1 << (HiveSqlParser.T_CURRENT_TIMESTAMP - 320)) | (1 << (HiveSqlParser.T_CURRENT_USER - 320)) | (1 << (HiveSqlParser.T_USER - 320)))) !== 0) || ((((_la - 356)) & ~0x1f) == 0 && ((1 << (_la - 356)) & ((1 << (HiveSqlParser.T_PART_COUNT - 356)) | (1 << (HiveSqlParser.T_PART_LOC - 356)) | (1 << (HiveSqlParser.T_TRIM - 356)) | (1 << (HiveSqlParser.T_SUBSTRING - 356)) | (1 << (HiveSqlParser.T_SYSDATE - 356)) | (1 << (HiveSqlParser.T_HIVE - 356)) | (1 << (HiveSqlParser.T_HOST - 356)) | (1 << (HiveSqlParser.T_TRUE - 356)) | (1 << (HiveSqlParser.T_FALSE - 356)) | (1 << (HiveSqlParser.T_DIR - 356)) | (1 << (HiveSqlParser.T_FILE - 356)) | (1 << (HiveSqlParser.T_FILES - 356)) | (1 << (HiveSqlParser.T_NEW - 356)) | (1 << (HiveSqlParser.T_PWD - 356)) | (1 << (HiveSqlParser.T_SESSIONS - 356)) | (1 << (HiveSqlParser.T_SUBDIR - 356)))) !== 0))) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+HiveSqlParser.prototype.sempred = function(localctx, ruleIndex, predIndex) {
+ switch(ruleIndex) {
+ case 4:
+ return this.block_end_sempred(localctx, predIndex);
+ case 11:
+ return this.expr_stmt_sempred(localctx, predIndex);
+ case 74:
+ return this.create_routine_params_sempred(localctx, predIndex);
+ case 152:
+ return this.select_list_alias_sempred(localctx, predIndex);
+ case 163:
+ return this.from_alias_clause_sempred(localctx, predIndex);
+ case 181:
+ return this.delete_alias_sempred(localctx, predIndex);
+ case 183:
+ return this.bool_expr_sempred(localctx, predIndex);
+ case 191:
+ return this.expr_sempred(localctx, predIndex);
+ case 208:
+ return this.func_param_sempred(localctx, predIndex);
+ default:
+ throw "No predicate with index:" + ruleIndex;
+ }
+};
+
+HiveSqlParser.prototype.block_end_sempred = function(localctx, predIndex) {
+ switch(predIndex) {
+ case 0:
+ return !this._input.LT(2).getText().equalsIgnoreCase("TRANSACTION");
+ default:
+ throw "No predicate with index:" + predIndex;
+ }
+};
+
+HiveSqlParser.prototype.expr_stmt_sempred = function(localctx, predIndex) {
+ switch(predIndex) {
+ case 1:
+ return !this._input.LT(1).getText().equalsIgnoreCase("GO");
+ default:
+ throw "No predicate with index:" + predIndex;
+ }
+};
+
+HiveSqlParser.prototype.create_routine_params_sempred = function(localctx, predIndex) {
+ switch(predIndex) {
+ case 2:
+ return !this._input.LT(1).getText().equalsIgnoreCase("IS") &&
+ !this._input.LT(1).getText().equalsIgnoreCase("AS") &&
+ !(this._input.LT(1).getText().equalsIgnoreCase("DYNAMIC") && this._input.LT(2).getText().equalsIgnoreCase("RESULT"))
+ ;
+ default:
+ throw "No predicate with index:" + predIndex;
+ }
+};
+
+HiveSqlParser.prototype.select_list_alias_sempred = function(localctx, predIndex) {
+ switch(predIndex) {
+ case 3:
+ return !this._input.LT(1).getText().equalsIgnoreCase("INTO") && !this._input.LT(1).getText().equalsIgnoreCase("FROM");
+ default:
+ throw "No predicate with index:" + predIndex;
+ }
+};
+
+HiveSqlParser.prototype.from_alias_clause_sempred = function(localctx, predIndex) {
+ switch(predIndex) {
+ case 4:
+ return !this._input.LT(1).getText().equalsIgnoreCase("EXEC") &&
+ !this._input.LT(1).getText().equalsIgnoreCase("EXECUTE") &&
+ !this._input.LT(1).getText().equalsIgnoreCase("INNER") &&
+ !this._input.LT(1).getText().equalsIgnoreCase("LEFT") &&
+ !this._input.LT(1).getText().equalsIgnoreCase("GROUP") &&
+ !this._input.LT(1).getText().equalsIgnoreCase("ORDER") &&
+ !this._input.LT(1).getText().equalsIgnoreCase("LIMIT") &&
+ !this._input.LT(1).getText().equalsIgnoreCase("WITH");
+ default:
+ throw "No predicate with index:" + predIndex;
+ }
+};
+
+HiveSqlParser.prototype.delete_alias_sempred = function(localctx, predIndex) {
+ switch(predIndex) {
+ case 5:
+ return !this._input.LT(1).getText().equalsIgnoreCase("ALL");
+ default:
+ throw "No predicate with index:" + predIndex;
+ }
+};
+
+HiveSqlParser.prototype.bool_expr_sempred = function(localctx, predIndex) {
+ switch(predIndex) {
+ case 6:
+ return this.precpred(this._ctx, 2);
+ default:
+ throw "No predicate with index:" + predIndex;
+ }
+};
+
+HiveSqlParser.prototype.expr_sempred = function(localctx, predIndex) {
+ switch(predIndex) {
+ case 7:
+ return this.precpred(this._ctx, 14);
+ case 8:
+ return this.precpred(this._ctx, 13);
+ case 9:
+ return this.precpred(this._ctx, 12);
+ case 10:
+ return this.precpred(this._ctx, 11);
+ case 11:
+ return this.precpred(this._ctx, 15);
+ default:
+ throw "No predicate with index:" + predIndex;
+ }
+};
+
+HiveSqlParser.prototype.func_param_sempred = function(localctx, predIndex) {
+ switch(predIndex) {
+ case 12:
+ return !this._input.LT(1).getText().equalsIgnoreCase("INTO");
+ default:
+ throw "No predicate with index:" + predIndex;
+ }
+};
+
+
+exports.HiveSqlParser = HiveSqlParser;
diff --git a/src/lib/hive/HiveSqlVisitor.js b/src/lib/hive/HiveSqlVisitor.js
new file mode 100644
index 0000000..442334a
--- /dev/null
+++ b/src/lib/hive/HiveSqlVisitor.js
@@ -0,0 +1,1378 @@
+// Generated from /Users/ziv/Workspace/dt-sql-parser/src/grammar/hive/HiveSql.g4 by ANTLR 4.8
+// jshint ignore: start
+var antlr4 = require('antlr4/index');
+
+// This class defines a complete generic visitor for a parse tree produced by HiveSqlParser.
+
+function HiveSqlVisitor() {
+ antlr4.tree.ParseTreeVisitor.call(this);
+ return this;
+}
+
+HiveSqlVisitor.prototype = Object.create(antlr4.tree.ParseTreeVisitor.prototype);
+HiveSqlVisitor.prototype.constructor = HiveSqlVisitor;
+
+// Visit a parse tree produced by HiveSqlParser#program.
+HiveSqlVisitor.prototype.visitProgram = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#block.
+HiveSqlVisitor.prototype.visitBlock = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#begin_end_block.
+HiveSqlVisitor.prototype.visitBegin_end_block = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#single_block_stmt.
+HiveSqlVisitor.prototype.visitSingle_block_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#block_end.
+HiveSqlVisitor.prototype.visitBlock_end = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#proc_block.
+HiveSqlVisitor.prototype.visitProc_block = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#stmt.
+HiveSqlVisitor.prototype.visitStmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#semicolon_stmt.
+HiveSqlVisitor.prototype.visitSemicolon_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#exception_block.
+HiveSqlVisitor.prototype.visitException_block = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#exception_block_item.
+HiveSqlVisitor.prototype.visitException_block_item = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#null_stmt.
+HiveSqlVisitor.prototype.visitNull_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#expr_stmt.
+HiveSqlVisitor.prototype.visitExpr_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#assignment_stmt.
+HiveSqlVisitor.prototype.visitAssignment_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#assignment_stmt_item.
+HiveSqlVisitor.prototype.visitAssignment_stmt_item = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#assignment_stmt_single_item.
+HiveSqlVisitor.prototype.visitAssignment_stmt_single_item = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#assignment_stmt_multiple_item.
+HiveSqlVisitor.prototype.visitAssignment_stmt_multiple_item = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#assignment_stmt_select_item.
+HiveSqlVisitor.prototype.visitAssignment_stmt_select_item = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#allocate_cursor_stmt.
+HiveSqlVisitor.prototype.visitAllocate_cursor_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#associate_locator_stmt.
+HiveSqlVisitor.prototype.visitAssociate_locator_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#begin_transaction_stmt.
+HiveSqlVisitor.prototype.visitBegin_transaction_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#break_stmt.
+HiveSqlVisitor.prototype.visitBreak_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#call_stmt.
+HiveSqlVisitor.prototype.visitCall_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#declare_stmt.
+HiveSqlVisitor.prototype.visitDeclare_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#declare_block.
+HiveSqlVisitor.prototype.visitDeclare_block = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#declare_block_inplace.
+HiveSqlVisitor.prototype.visitDeclare_block_inplace = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#declare_stmt_item.
+HiveSqlVisitor.prototype.visitDeclare_stmt_item = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#declare_var_item.
+HiveSqlVisitor.prototype.visitDeclare_var_item = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#declare_condition_item.
+HiveSqlVisitor.prototype.visitDeclare_condition_item = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#declare_cursor_item.
+HiveSqlVisitor.prototype.visitDeclare_cursor_item = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#cursor_with_return.
+HiveSqlVisitor.prototype.visitCursor_with_return = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#cursor_without_return.
+HiveSqlVisitor.prototype.visitCursor_without_return = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#declare_handler_item.
+HiveSqlVisitor.prototype.visitDeclare_handler_item = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#declare_temporary_table_item.
+HiveSqlVisitor.prototype.visitDeclare_temporary_table_item = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#create_table_stmt.
+HiveSqlVisitor.prototype.visitCreate_table_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#create_local_temp_table_stmt.
+HiveSqlVisitor.prototype.visitCreate_local_temp_table_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#create_table_definition.
+HiveSqlVisitor.prototype.visitCreate_table_definition = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#create_table_columns.
+HiveSqlVisitor.prototype.visitCreate_table_columns = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#create_table_columns_item.
+HiveSqlVisitor.prototype.visitCreate_table_columns_item = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#column_name.
+HiveSqlVisitor.prototype.visitColumn_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#create_table_column_inline_cons.
+HiveSqlVisitor.prototype.visitCreate_table_column_inline_cons = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#create_table_column_cons.
+HiveSqlVisitor.prototype.visitCreate_table_column_cons = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#create_table_fk_action.
+HiveSqlVisitor.prototype.visitCreate_table_fk_action = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#create_table_preoptions.
+HiveSqlVisitor.prototype.visitCreate_table_preoptions = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#create_table_preoptions_item.
+HiveSqlVisitor.prototype.visitCreate_table_preoptions_item = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#create_table_preoptions_td_item.
+HiveSqlVisitor.prototype.visitCreate_table_preoptions_td_item = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#create_table_options.
+HiveSqlVisitor.prototype.visitCreate_table_options = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#create_table_options_item.
+HiveSqlVisitor.prototype.visitCreate_table_options_item = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#create_table_options_ora_item.
+HiveSqlVisitor.prototype.visitCreate_table_options_ora_item = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#create_table_options_db2_item.
+HiveSqlVisitor.prototype.visitCreate_table_options_db2_item = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#create_table_options_td_item.
+HiveSqlVisitor.prototype.visitCreate_table_options_td_item = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#create_table_options_hive_item.
+HiveSqlVisitor.prototype.visitCreate_table_options_hive_item = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#create_table_hive_row_format.
+HiveSqlVisitor.prototype.visitCreate_table_hive_row_format = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#create_table_hive_row_format_fields.
+HiveSqlVisitor.prototype.visitCreate_table_hive_row_format_fields = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#create_table_options_mssql_item.
+HiveSqlVisitor.prototype.visitCreate_table_options_mssql_item = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#create_table_options_mysql_item.
+HiveSqlVisitor.prototype.visitCreate_table_options_mysql_item = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#alter_table_stmt.
+HiveSqlVisitor.prototype.visitAlter_table_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#alter_table_item.
+HiveSqlVisitor.prototype.visitAlter_table_item = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#alter_table_add_constraint.
+HiveSqlVisitor.prototype.visitAlter_table_add_constraint = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#alter_table_add_constraint_item.
+HiveSqlVisitor.prototype.visitAlter_table_add_constraint_item = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#dtype.
+HiveSqlVisitor.prototype.visitDtype = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#dtype_len.
+HiveSqlVisitor.prototype.visitDtype_len = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#dtype_attr.
+HiveSqlVisitor.prototype.visitDtype_attr = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#dtype_default.
+HiveSqlVisitor.prototype.visitDtype_default = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#create_database_stmt.
+HiveSqlVisitor.prototype.visitCreate_database_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#create_database_option.
+HiveSqlVisitor.prototype.visitCreate_database_option = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#create_function_stmt.
+HiveSqlVisitor.prototype.visitCreate_function_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#create_function_return.
+HiveSqlVisitor.prototype.visitCreate_function_return = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#create_package_stmt.
+HiveSqlVisitor.prototype.visitCreate_package_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#package_spec.
+HiveSqlVisitor.prototype.visitPackage_spec = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#package_spec_item.
+HiveSqlVisitor.prototype.visitPackage_spec_item = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#create_package_body_stmt.
+HiveSqlVisitor.prototype.visitCreate_package_body_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#package_body.
+HiveSqlVisitor.prototype.visitPackage_body = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#package_body_item.
+HiveSqlVisitor.prototype.visitPackage_body_item = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#create_procedure_stmt.
+HiveSqlVisitor.prototype.visitCreate_procedure_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#create_routine_params.
+HiveSqlVisitor.prototype.visitCreate_routine_params = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#create_routine_param_item.
+HiveSqlVisitor.prototype.visitCreate_routine_param_item = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#create_routine_options.
+HiveSqlVisitor.prototype.visitCreate_routine_options = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#create_routine_option.
+HiveSqlVisitor.prototype.visitCreate_routine_option = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#drop_stmt.
+HiveSqlVisitor.prototype.visitDrop_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#end_transaction_stmt.
+HiveSqlVisitor.prototype.visitEnd_transaction_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#exec_stmt.
+HiveSqlVisitor.prototype.visitExec_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#if_stmt.
+HiveSqlVisitor.prototype.visitIf_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#if_plsql_stmt.
+HiveSqlVisitor.prototype.visitIf_plsql_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#if_tsql_stmt.
+HiveSqlVisitor.prototype.visitIf_tsql_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#if_bteq_stmt.
+HiveSqlVisitor.prototype.visitIf_bteq_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#elseif_block.
+HiveSqlVisitor.prototype.visitElseif_block = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#else_block.
+HiveSqlVisitor.prototype.visitElse_block = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#include_stmt.
+HiveSqlVisitor.prototype.visitInclude_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#insert_stmt.
+HiveSqlVisitor.prototype.visitInsert_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#insert_stmt_cols.
+HiveSqlVisitor.prototype.visitInsert_stmt_cols = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#insert_stmt_rows.
+HiveSqlVisitor.prototype.visitInsert_stmt_rows = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#insert_stmt_row.
+HiveSqlVisitor.prototype.visitInsert_stmt_row = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#insert_directory_stmt.
+HiveSqlVisitor.prototype.visitInsert_directory_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#exit_stmt.
+HiveSqlVisitor.prototype.visitExit_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#get_diag_stmt.
+HiveSqlVisitor.prototype.visitGet_diag_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#get_diag_stmt_item.
+HiveSqlVisitor.prototype.visitGet_diag_stmt_item = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#get_diag_stmt_exception_item.
+HiveSqlVisitor.prototype.visitGet_diag_stmt_exception_item = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#get_diag_stmt_rowcount_item.
+HiveSqlVisitor.prototype.visitGet_diag_stmt_rowcount_item = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#grant_stmt.
+HiveSqlVisitor.prototype.visitGrant_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#grant_stmt_item.
+HiveSqlVisitor.prototype.visitGrant_stmt_item = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#leave_stmt.
+HiveSqlVisitor.prototype.visitLeave_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#map_object_stmt.
+HiveSqlVisitor.prototype.visitMap_object_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#open_stmt.
+HiveSqlVisitor.prototype.visitOpen_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#fetch_stmt.
+HiveSqlVisitor.prototype.visitFetch_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#collect_stats_stmt.
+HiveSqlVisitor.prototype.visitCollect_stats_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#collect_stats_clause.
+HiveSqlVisitor.prototype.visitCollect_stats_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#close_stmt.
+HiveSqlVisitor.prototype.visitClose_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#cmp_stmt.
+HiveSqlVisitor.prototype.visitCmp_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#cmp_source.
+HiveSqlVisitor.prototype.visitCmp_source = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#copy_from_local_stmt.
+HiveSqlVisitor.prototype.visitCopy_from_local_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#copy_stmt.
+HiveSqlVisitor.prototype.visitCopy_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#copy_source.
+HiveSqlVisitor.prototype.visitCopy_source = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#copy_target.
+HiveSqlVisitor.prototype.visitCopy_target = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#copy_option.
+HiveSqlVisitor.prototype.visitCopy_option = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#copy_file_option.
+HiveSqlVisitor.prototype.visitCopy_file_option = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#commit_stmt.
+HiveSqlVisitor.prototype.visitCommit_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#create_index_stmt.
+HiveSqlVisitor.prototype.visitCreate_index_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#create_index_col.
+HiveSqlVisitor.prototype.visitCreate_index_col = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#index_storage_clause.
+HiveSqlVisitor.prototype.visitIndex_storage_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#index_mssql_storage_clause.
+HiveSqlVisitor.prototype.visitIndex_mssql_storage_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#print_stmt.
+HiveSqlVisitor.prototype.visitPrint_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#quit_stmt.
+HiveSqlVisitor.prototype.visitQuit_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#raise_stmt.
+HiveSqlVisitor.prototype.visitRaise_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#resignal_stmt.
+HiveSqlVisitor.prototype.visitResignal_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#return_stmt.
+HiveSqlVisitor.prototype.visitReturn_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#rollback_stmt.
+HiveSqlVisitor.prototype.visitRollback_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#set_session_option.
+HiveSqlVisitor.prototype.visitSet_session_option = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#set_current_schema_option.
+HiveSqlVisitor.prototype.visitSet_current_schema_option = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#set_mssql_session_option.
+HiveSqlVisitor.prototype.visitSet_mssql_session_option = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#set_teradata_session_option.
+HiveSqlVisitor.prototype.visitSet_teradata_session_option = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#signal_stmt.
+HiveSqlVisitor.prototype.visitSignal_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#summary_stmt.
+HiveSqlVisitor.prototype.visitSummary_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#truncate_stmt.
+HiveSqlVisitor.prototype.visitTruncate_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#use_stmt.
+HiveSqlVisitor.prototype.visitUse_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#values_into_stmt.
+HiveSqlVisitor.prototype.visitValues_into_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#while_stmt.
+HiveSqlVisitor.prototype.visitWhile_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#for_cursor_stmt.
+HiveSqlVisitor.prototype.visitFor_cursor_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#for_range_stmt.
+HiveSqlVisitor.prototype.visitFor_range_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#label.
+HiveSqlVisitor.prototype.visitLabel = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#using_clause.
+HiveSqlVisitor.prototype.visitUsing_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#select_stmt.
+HiveSqlVisitor.prototype.visitSelect_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#cte_select_stmt.
+HiveSqlVisitor.prototype.visitCte_select_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#cte_select_stmt_item.
+HiveSqlVisitor.prototype.visitCte_select_stmt_item = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#cte_select_cols.
+HiveSqlVisitor.prototype.visitCte_select_cols = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#fullselect_stmt.
+HiveSqlVisitor.prototype.visitFullselect_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#fullselect_stmt_item.
+HiveSqlVisitor.prototype.visitFullselect_stmt_item = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#fullselect_set_clause.
+HiveSqlVisitor.prototype.visitFullselect_set_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#subselect_stmt.
+HiveSqlVisitor.prototype.visitSubselect_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#select_list.
+HiveSqlVisitor.prototype.visitSelect_list = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#select_list_set.
+HiveSqlVisitor.prototype.visitSelect_list_set = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#select_list_limit.
+HiveSqlVisitor.prototype.visitSelect_list_limit = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#select_list_item.
+HiveSqlVisitor.prototype.visitSelect_list_item = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#select_list_alias.
+HiveSqlVisitor.prototype.visitSelect_list_alias = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#select_list_asterisk.
+HiveSqlVisitor.prototype.visitSelect_list_asterisk = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#into_clause.
+HiveSqlVisitor.prototype.visitInto_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#from_clause.
+HiveSqlVisitor.prototype.visitFrom_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#from_table_clause.
+HiveSqlVisitor.prototype.visitFrom_table_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#from_table_name_clause.
+HiveSqlVisitor.prototype.visitFrom_table_name_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#from_subselect_clause.
+HiveSqlVisitor.prototype.visitFrom_subselect_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#from_join_clause.
+HiveSqlVisitor.prototype.visitFrom_join_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#from_join_type_clause.
+HiveSqlVisitor.prototype.visitFrom_join_type_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#from_table_values_clause.
+HiveSqlVisitor.prototype.visitFrom_table_values_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#from_table_values_row.
+HiveSqlVisitor.prototype.visitFrom_table_values_row = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#from_alias_clause.
+HiveSqlVisitor.prototype.visitFrom_alias_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#table_name.
+HiveSqlVisitor.prototype.visitTable_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#where_clause.
+HiveSqlVisitor.prototype.visitWhere_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#group_by_clause.
+HiveSqlVisitor.prototype.visitGroup_by_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#having_clause.
+HiveSqlVisitor.prototype.visitHaving_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#qualify_clause.
+HiveSqlVisitor.prototype.visitQualify_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#order_by_clause.
+HiveSqlVisitor.prototype.visitOrder_by_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#select_options.
+HiveSqlVisitor.prototype.visitSelect_options = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#select_options_item.
+HiveSqlVisitor.prototype.visitSelect_options_item = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#update_stmt.
+HiveSqlVisitor.prototype.visitUpdate_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#update_assignment.
+HiveSqlVisitor.prototype.visitUpdate_assignment = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#update_table.
+HiveSqlVisitor.prototype.visitUpdate_table = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#update_upsert.
+HiveSqlVisitor.prototype.visitUpdate_upsert = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#merge_stmt.
+HiveSqlVisitor.prototype.visitMerge_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#merge_table.
+HiveSqlVisitor.prototype.visitMerge_table = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#merge_condition.
+HiveSqlVisitor.prototype.visitMerge_condition = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#merge_action.
+HiveSqlVisitor.prototype.visitMerge_action = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#delete_stmt.
+HiveSqlVisitor.prototype.visitDelete_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#delete_alias.
+HiveSqlVisitor.prototype.visitDelete_alias = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#describe_stmt.
+HiveSqlVisitor.prototype.visitDescribe_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#bool_expr.
+HiveSqlVisitor.prototype.visitBool_expr = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#bool_expr_atom.
+HiveSqlVisitor.prototype.visitBool_expr_atom = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#bool_expr_unary.
+HiveSqlVisitor.prototype.visitBool_expr_unary = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#bool_expr_single_in.
+HiveSqlVisitor.prototype.visitBool_expr_single_in = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#bool_expr_multi_in.
+HiveSqlVisitor.prototype.visitBool_expr_multi_in = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#bool_expr_binary.
+HiveSqlVisitor.prototype.visitBool_expr_binary = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#bool_expr_logical_operator.
+HiveSqlVisitor.prototype.visitBool_expr_logical_operator = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#bool_expr_binary_operator.
+HiveSqlVisitor.prototype.visitBool_expr_binary_operator = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#expr.
+HiveSqlVisitor.prototype.visitExpr = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#expr_atom.
+HiveSqlVisitor.prototype.visitExpr_atom = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#expr_interval.
+HiveSqlVisitor.prototype.visitExpr_interval = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#interval_item.
+HiveSqlVisitor.prototype.visitInterval_item = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#expr_concat.
+HiveSqlVisitor.prototype.visitExpr_concat = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#expr_concat_item.
+HiveSqlVisitor.prototype.visitExpr_concat_item = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#expr_case.
+HiveSqlVisitor.prototype.visitExpr_case = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#expr_case_simple.
+HiveSqlVisitor.prototype.visitExpr_case_simple = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#expr_case_searched.
+HiveSqlVisitor.prototype.visitExpr_case_searched = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#expr_cursor_attribute.
+HiveSqlVisitor.prototype.visitExpr_cursor_attribute = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#expr_agg_window_func.
+HiveSqlVisitor.prototype.visitExpr_agg_window_func = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#expr_func_all_distinct.
+HiveSqlVisitor.prototype.visitExpr_func_all_distinct = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#expr_func_over_clause.
+HiveSqlVisitor.prototype.visitExpr_func_over_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#expr_func_partition_by_clause.
+HiveSqlVisitor.prototype.visitExpr_func_partition_by_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#expr_spec_func.
+HiveSqlVisitor.prototype.visitExpr_spec_func = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#expr_func.
+HiveSqlVisitor.prototype.visitExpr_func = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#expr_func_params.
+HiveSqlVisitor.prototype.visitExpr_func_params = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#func_param.
+HiveSqlVisitor.prototype.visitFunc_param = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#expr_select.
+HiveSqlVisitor.prototype.visitExpr_select = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#expr_file.
+HiveSqlVisitor.prototype.visitExpr_file = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#hive.
+HiveSqlVisitor.prototype.visitHive = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#hive_item.
+HiveSqlVisitor.prototype.visitHive_item = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#host.
+HiveSqlVisitor.prototype.visitHost = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#host_cmd.
+HiveSqlVisitor.prototype.visitHost_cmd = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#host_stmt.
+HiveSqlVisitor.prototype.visitHost_stmt = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#file_name.
+HiveSqlVisitor.prototype.visitFile_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#date_literal.
+HiveSqlVisitor.prototype.visitDate_literal = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#timestamp_literal.
+HiveSqlVisitor.prototype.visitTimestamp_literal = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#ident.
+HiveSqlVisitor.prototype.visitIdent = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#single_quotedString.
+HiveSqlVisitor.prototype.visitSingle_quotedString = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#double_quotedString.
+HiveSqlVisitor.prototype.visitDouble_quotedString = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#int_number.
+HiveSqlVisitor.prototype.visitInt_number = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#dec_number.
+HiveSqlVisitor.prototype.visitDec_number = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#bool_literal.
+HiveSqlVisitor.prototype.visitBool_literal = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#null_const.
+HiveSqlVisitor.prototype.visitNull_const = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by HiveSqlParser#non_reserved_words.
+HiveSqlVisitor.prototype.visitNon_reserved_words = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+
+exports.HiveSqlVisitor = HiveSqlVisitor;
\ No newline at end of file
diff --git a/src/lib/plsql/PlSqlBaseLexer.js b/src/lib/plsql/PlSqlBaseLexer.js
new file mode 100644
index 0000000..817466a
--- /dev/null
+++ b/src/lib/plsql/PlSqlBaseLexer.js
@@ -0,0 +1,16 @@
+const Lexer = require('antlr4').Lexer;
+
+function PlSqlBaseLexer(...args) {
+ Lexer.call(this, ...args);
+ return this;
+}
+
+PlSqlBaseLexer.prototype = Object.create(Lexer.prototype);
+PlSqlBaseLexer.prototype.constructor = PlSqlBaseLexer;
+
+PlSqlBaseLexer.prototype.IsNewlineAtPos = function(pos) {
+ const la = this._input.LA(pos);
+ return la == -1 || la == '\n';
+};
+
+exports.PlSqlBaseLexer = PlSqlBaseLexer;
diff --git a/src/lib/plsql/PlSqlBaseParser.js b/src/lib/plsql/PlSqlBaseParser.js
new file mode 100644
index 0000000..cb9733b
--- /dev/null
+++ b/src/lib/plsql/PlSqlBaseParser.js
@@ -0,0 +1,27 @@
+
+const Parser = require('antlr4').Parser;
+
+function PlSqlBaseParser(...args) {
+ Parser.call(this, ...args);
+ this._isVersion10 = false;
+ this._isVersion12 = true;
+ return this;
+}
+
+PlSqlBaseParser.prototype = Object.create(Parser.prototype);
+PlSqlBaseParser.prototype.constructor = PlSqlBaseParser;
+
+PlSqlBaseParser.prototype.isVersion10 = function() {
+ return this._isVersion10;
+};
+PlSqlBaseParser.prototype.isVersion12 = function() {
+ return this._isVersion12;
+};
+PlSqlBaseParser.prototype.setVersion10 = function(value) {
+ this._isVersion10 = value;
+};
+PlSqlBaseParser.prototype.setVersion12 = function(value) {
+ this._isVersion12 = value;
+};
+
+exports.PlSqlBaseParser = PlSqlBaseParser;
diff --git a/src/lib/plsql/PlSqlLexer.interp b/src/lib/plsql/PlSqlLexer.interp
new file mode 100644
index 0000000..5322ae4
--- /dev/null
+++ b/src/lib/plsql/PlSqlLexer.interp
@@ -0,0 +1,6791 @@
+token literal names:
+null
+'ABORT'
+'ABS'
+'ACCESS'
+'ACCESSED'
+'ACCOUNT'
+'ACL'
+'ACOS'
+'ACTION'
+'ACTIONS'
+'ACTIVATE'
+'ACTIVE'
+'ACTIVE_COMPONENT'
+'ACTIVE_DATA'
+'ACTIVE_FUNCTION'
+'ACTIVE_TAG'
+'ACTIVITY'
+'ADAPTIVE_PLAN'
+'ADD'
+'ADD_COLUMN'
+'ADD_GROUP'
+'ADD_MONTHS'
+'ADJ_DATE'
+'ADMIN'
+'ADMINISTER'
+'ADMINISTRATOR'
+'ADVANCED'
+'ADVISE'
+'ADVISOR'
+'AFD_DISKSTRING'
+'AFTER'
+'AGENT'
+'AGGREGATE'
+'A'
+'ALIAS'
+'ALL'
+'ALLOCATE'
+'ALLOW'
+'ALL_ROWS'
+'ALTER'
+'ALWAYS'
+'ANALYZE'
+'ANCILLARY'
+'AND'
+'AND_EQUAL'
+'ANOMALY'
+'ANSI_REARCH'
+'ANTIJOIN'
+'ANY'
+'ANYSCHEMA'
+'APPEND'
+'APPENDCHILDXML'
+'APPEND_VALUES'
+'APPLICATION'
+'APPLY'
+'APPROX_COUNT_DISTINCT'
+'ARCHIVAL'
+'ARCHIVE'
+'ARCHIVED'
+'ARCHIVELOG'
+'ARRAY'
+'AS'
+'ASC'
+'ASCII'
+'ASCIISTR'
+'ASIN'
+'ASIS'
+'ASSEMBLY'
+'ASSIGN'
+'ASSOCIATE'
+'ASYNC'
+'ASYNCHRONOUS'
+'ATAN2'
+'ATAN'
+'AT'
+'ATTRIBUTE'
+'ATTRIBUTES'
+'AUDIT'
+'AUTHENTICATED'
+'AUTHENTICATION'
+'AUTHID'
+'AUTHORIZATION'
+'AUTOALLOCATE'
+'AUTO'
+'AUTOBACKUP'
+'AUTOEXTEND'
+'AUTO_LOGIN'
+'AUTOMATIC'
+'AUTONOMOUS_TRANSACTION'
+'AUTO_REOPTIMIZE'
+'AVAILABILITY'
+'AVRO'
+'BACKGROUND'
+'BACKUP'
+'BACKUPSET'
+'BASIC'
+'BASICFILE'
+'BATCH'
+'BATCHSIZE'
+'BATCH_TABLE_ACCESS_BY_ROWID'
+'BECOME'
+'BEFORE'
+'BEGIN'
+'BEGINNING'
+'BEGIN_OUTLINE_DATA'
+'BEHALF'
+'BEQUEATH'
+'BETWEEN'
+'BFILE'
+'BFILENAME'
+'BIGFILE'
+'BINARY'
+'BINARY_DOUBLE'
+'BINARY_DOUBLE_INFINITY'
+'BINARY_DOUBLE_NAN'
+'BINARY_FLOAT'
+'BINARY_FLOAT_INFINITY'
+'BINARY_FLOAT_NAN'
+'BINARY_INTEGER'
+'BIND_AWARE'
+'BINDING'
+'BIN_TO_NUM'
+'BITAND'
+'BITMAP_AND'
+'BITMAP'
+'BITMAPS'
+'BITMAP_TREE'
+'BITS'
+'BLOB'
+'BLOCK'
+'BLOCK_RANGE'
+'BLOCKS'
+'BLOCKSIZE'
+'BODY'
+'BOOLEAN'
+'BOTH'
+'BOUND'
+'BRANCH'
+'BREADTH'
+'BROADCAST'
+'BSON'
+'BUFFER'
+'BUFFER_CACHE'
+'BUFFER_POOL'
+'BUILD'
+'BULK'
+'BY'
+'BYPASS_RECURSIVE_CHECK'
+'BYPASS_UJVC'
+'BYTE'
+'CACHE'
+'CACHE_CB'
+'CACHE_INSTANCES'
+'CACHE_TEMP_TABLE'
+'CACHING'
+'CALCULATED'
+'CALLBACK'
+'CALL'
+'CANCEL'
+'CANONICAL'
+'CAPACITY'
+'CARDINALITY'
+'CASCADE'
+'CASE'
+'CAST'
+'CATEGORY'
+'CDB$DEFAULT'
+'CEIL'
+'CELL_FLASH_CACHE'
+'CERTIFICATE'
+'CFILE'
+'CHAINED'
+'CHANGE'
+'CHANGETRACKING'
+'CHANGE_DUPKEY_ERROR_INDEX'
+'CHARACTER'
+'CHAR'
+'CHAR_CS'
+'CHARTOROWID'
+'CHECK_ACL_REWRITE'
+'CHECK'
+'CHECKPOINT'
+'CHILD'
+'CHOOSE'
+'CHR'
+'CHUNK'
+'CLASS'
+'CLASSIFIER'
+'CLEANUP'
+'CLEAR'
+'C'
+'CLIENT'
+'CLOB'
+'CLONE'
+'CLOSE_CACHED_OPEN_CURSORS'
+'CLOSE'
+'CLUSTER_BY_ROWID'
+'CLUSTER'
+'CLUSTER_DETAILS'
+'CLUSTER_DISTANCE'
+'CLUSTER_ID'
+'CLUSTERING'
+'CLUSTERING_FACTOR'
+'CLUSTER_PROBABILITY'
+'CLUSTER_SET'
+'COALESCE'
+'COALESCE_SQ'
+'COARSE'
+'CO_AUTH_IND'
+'COLD'
+'COLLECT'
+'COLUMNAR'
+'COLUMN_AUTH_INDICATOR'
+'COLUMN'
+'COLUMNS'
+'COLUMN_STATS'
+'COLUMN_VALUE'
+'COMMENT'
+'COMMIT'
+'COMMITTED'
+'COMMON_DATA'
+'COMPACT'
+'COMPATIBILITY'
+'COMPILE'
+'COMPLETE'
+'COMPLIANCE'
+'COMPONENT'
+'COMPONENTS'
+'COMPOSE'
+'COMPOSITE'
+'COMPOSITE_LIMIT'
+'COMPOUND'
+'COMPRESS'
+'COMPUTE'
+'CONCAT'
+'CON_DBID_TO_ID'
+'CONDITIONAL'
+'CONDITION'
+'CONFIRM'
+'CONFORMING'
+'CON_GUID_TO_ID'
+'CON_ID'
+'CON_NAME_TO_ID'
+'CONNECT_BY_CB_WHR_ONLY'
+'CONNECT_BY_COMBINE_SW'
+'CONNECT_BY_COST_BASED'
+'CONNECT_BY_ELIM_DUPS'
+'CONNECT_BY_FILTERING'
+'CONNECT_BY_ISCYCLE'
+'CONNECT_BY_ISLEAF'
+'CONNECT_BY_ROOT'
+'CONNECT'
+'CONNECT_TIME'
+'CONSIDER'
+'CONSISTENT'
+'CONSTANT'
+'CONST'
+'CONSTRAINT'
+'CONSTRAINTS'
+'CONSTRUCTOR'
+'CONTAINER'
+'CONTAINER_DATA'
+'CONTAINERS'
+'CONTENT'
+'CONTENTS'
+'CONTEXT'
+'CONTINUE'
+'CONTROLFILE'
+'CON_UID_TO_ID'
+'CONVERT'
+'COOKIE'
+'COPY'
+'CORR_K'
+'CORR_S'
+'CORRUPTION'
+'CORRUPT_XID_ALL'
+'CORRUPT_XID'
+'COS'
+'COSH'
+'COST'
+'COST_XML_QUERY_REWRITE'
+'COUNT'
+'COVAR_POP'
+'COVAR_SAMP'
+'CPU_COSTING'
+'CPU_PER_CALL'
+'CPU_PER_SESSION'
+'CRASH'
+'CREATE'
+'CREATE_FILE_DEST'
+'CREATE_STORED_OUTLINES'
+'CREATION'
+'CREDENTIAL'
+'CRITICAL'
+'CROSS'
+'CROSSEDITION'
+'CSCONVERT'
+'CUBE_AJ'
+'CUBE'
+'CUBE_GB'
+'CUBE_SJ'
+'CUME_DISTM'
+'CURRENT'
+'CURRENT_DATE'
+'CURRENT_SCHEMA'
+'CURRENT_TIME'
+'CURRENT_TIMESTAMP'
+'CURRENT_USER'
+'CURRENTV'
+'CURSOR'
+'CURSOR_SHARING_EXACT'
+'CURSOR_SPECIFIC_SEGMENT'
+'CUSTOMDATUM'
+'CV'
+'CYCLE'
+'DANGLING'
+'DATABASE'
+'DATA'
+'DATAFILE'
+'DATAFILES'
+'DATAGUARDCONFIG'
+'DATAMOVEMENT'
+'DATAOBJNO'
+'DATAOBJ_TO_MAT_PARTITION'
+'DATAOBJ_TO_PARTITION'
+'DATAPUMP'
+'DATA_SECURITY_REWRITE_LIMIT'
+'DATE'
+'DATE_MODE'
+'DAY'
+'DAYS'
+'DBA'
+'DBA_RECYCLEBIN'
+'DBMS_STATS'
+'DB_ROLE_CHANGE'
+'DBTIMEZONE'
+'DB_UNIQUE_NAME'
+'DB_VERSION'
+'DDL'
+'DEALLOCATE'
+'DEBUG'
+'DEBUGGER'
+'DEC'
+'DECIMAL'
+'DECLARE'
+'DECOMPOSE'
+'DECORRELATE'
+'DECR'
+'DECREMENT'
+'DECRYPT'
+'DEDUPLICATE'
+'DEFAULT'
+'DEFAULTS'
+'DEFERRABLE'
+'DEFERRED'
+'DEFINED'
+'DEFINE'
+'DEFINER'
+'DEGREE'
+'DELAY'
+'DELEGATE'
+'DELETE_ALL'
+'DELETE'
+'DELETEXML'
+'DEMAND'
+'DENSE_RANKM'
+'DEPENDENT'
+'DEPTH'
+'DEQUEUE'
+'DEREF'
+'DEREF_NO_REWRITE'
+'DESC'
+'DESTROY'
+'DETACHED'
+'DETERMINES'
+'DETERMINISTIC'
+'DICTIONARY'
+'DIMENSION'
+'DIMENSIONS'
+'DIRECT_LOAD'
+'DIRECTORY'
+'DIRECT_PATH'
+'DISABLE_ALL'
+'DISABLE'
+'DISABLE_PARALLEL_DML'
+'DISABLE_PRESET'
+'DISABLE_RPKE'
+'DISALLOW'
+'DISASSOCIATE'
+'DISCARD'
+'DISCONNECT'
+'DISK'
+'DISKGROUP'
+'\'+ DISKGROUP'
+'DISKS'
+'DISMOUNT'
+'DISTINCT'
+'DISTINGUISHED'
+'DISTRIBUTED'
+'DISTRIBUTE'
+'DML'
+'DML_UPDATE'
+'DOCFIDELITY'
+'DOCUMENT'
+'DOMAIN_INDEX_FILTER'
+'DOMAIN_INDEX_NO_SORT'
+'DOMAIN_INDEX_SORT'
+'DOUBLE'
+'DOWNGRADE'
+'DRIVING_SITE'
+'DROP_COLUMN'
+'DROP'
+'DROP_GROUP'
+'DSINTERVAL_UNCONSTRAINED'
+'DST_UPGRADE_INSERT_CONV'
+'DUMP'
+'DUMPSET'
+'DUPLICATE'
+'DV'
+'DYNAMIC'
+'DYNAMIC_SAMPLING'
+'DYNAMIC_SAMPLING_EST_CDN'
+'EACH'
+'EDITIONABLE'
+'EDITION'
+'EDITIONING'
+'EDITIONS'
+'ELEMENT'
+'ELIM_GROUPBY'
+'ELIMINATE_JOIN'
+'ELIMINATE_OBY'
+'ELIMINATE_OUTER_JOIN'
+'ELSE'
+'ELSIF'
+'EM'
+'EMPTY_BLOB'
+'EMPTY_CLOB'
+'EMPTY'
+'ENABLE_ALL'
+'ENABLE'
+'ENABLE_PARALLEL_DML'
+'ENABLE_PRESET'
+'ENCODING'
+'ENCRYPT'
+'ENCRYPTION'
+'END'
+'END_OUTLINE_DATA'
+'ENFORCED'
+'ENFORCE'
+'ENQUEUE'
+'ENTERPRISE'
+'ENTITYESCAPING'
+'ENTRY'
+'EQUIPART'
+'ERR'
+'ERROR_ARGUMENT'
+'ERROR'
+'ERROR_ON_OVERLAP_TIME'
+'ERRORS'
+'ESCAPE'
+'ESTIMATE'
+'EVAL'
+'EVALNAME'
+'EVALUATE'
+'EVALUATION'
+'EVENTS'
+'EVERY'
+'EXCEPT'
+'EXCEPTION'
+'EXCEPTION_INIT'
+'EXCEPTIONS'
+'EXCHANGE'
+'EXCLUDE'
+'EXCLUDING'
+'EXCLUSIVE'
+'EXECUTE'
+'EXEMPT'
+'EXISTING'
+'EXISTS'
+'EXISTSNODE'
+'EXIT'
+'EXPAND_GSET_TO_UNION'
+'EXPAND_TABLE'
+'EXP'
+'EXPIRE'
+'EXPLAIN'
+'EXPLOSION'
+'EXPORT'
+'EXPR_CORR_CHECK'
+'EXPRESS'
+'EXTENDS'
+'EXTENT'
+'EXTENTS'
+'EXTERNAL'
+'EXTERNALLY'
+'EXTRACTCLOBXML'
+'EXTRACT'
+'EXTRACTVALUE'
+'EXTRA'
+'FACILITY'
+'FACT'
+'FACTOR'
+'FACTORIZE_JOIN'
+'FAILED'
+'FAILED_LOGIN_ATTEMPTS'
+'FAILGROUP'
+'FAILOVER'
+'FAILURE'
+'FALSE'
+'FAMILY'
+'FAR'
+'FAST'
+'FASTSTART'
+'FBTSCAN'
+'FEATURE_DETAILS'
+'FEATURE_ID'
+'FEATURE_SET'
+'FEATURE_VALUE'
+'FETCH'
+'FILE'
+'FILE_NAME_CONVERT'
+'FILESYSTEM_LIKE_LOGGING'
+'FILTER'
+'FINAL'
+'FINE'
+'FINISH'
+'FIRST'
+'FIRSTM'
+'FIRST_ROWS'
+'FIRST_VALUE'
+'FIXED_VIEW_DATA'
+'FLAGGER'
+'FLASHBACK'
+'FLASH_CACHE'
+'FLOAT'
+'FLOB'
+'FLOOR'
+'FLUSH'
+'FOLDER'
+'FOLLOWING'
+'FOLLOWS'
+'FORALL'
+'FORCE'
+'FORCE_XML_QUERY_REWRITE'
+'FOREIGN'
+'FOREVER'
+'FOR'
+'FORMAT'
+'FORWARD'
+'FRAGMENT_NUMBER'
+'FREELIST'
+'FREELISTS'
+'FREEPOOLS'
+'FRESH'
+'FROM'
+'FROM_TZ'
+'FULL'
+'FULL_OUTER_JOIN_TO_OUTER'
+'FUNCTION'
+'FUNCTIONS'
+'GATHER_OPTIMIZER_STATISTICS'
+'GATHER_PLAN_STATISTICS'
+'GBY_CONC_ROLLUP'
+'GBY_PUSHDOWN'
+'GENERATED'
+'GET'
+'GLOBAL'
+'GLOBALLY'
+'GLOBAL_NAME'
+'GLOBAL_TOPIC_ENABLED'
+'GOTO'
+'GRANT'
+'GROUP_BY'
+'GROUP'
+'GROUP_ID'
+'GROUPING'
+'GROUPING_ID'
+'GROUPS'
+'GUARANTEED'
+'GUARANTEE'
+'GUARD'
+'HASH_AJ'
+'HASH'
+'HASHKEYS'
+'HASH_SJ'
+'HAVING'
+'HEADER'
+'HEAP'
+'HELP'
+'HEXTORAW'
+'HEXTOREF'
+'HIDDEN'
+'HIDE'
+'HIERARCHY'
+'HIGH'
+'HINTSET_BEGIN'
+'HINTSET_END'
+'HOT'
+'HOUR'
+'HWM_BROKERED'
+'HYBRID'
+'IDENTIFIED'
+'IDENTIFIER'
+'IDENTITY'
+'IDGENERATORS'
+'ID'
+'IDLE_TIME'
+'IF'
+'IGNORE'
+'IGNORE_OPTIM_EMBEDDED_HINTS'
+'IGNORE_ROW_ON_DUPKEY_INDEX'
+'IGNORE_WHERE_CLAUSE'
+'ILM'
+'IMMEDIATE'
+'IMPACT'
+'IMPORT'
+'INACTIVE'
+'INCLUDE'
+'INCLUDE_VERSION'
+'INCLUDING'
+'INCREMENTAL'
+'INCREMENT'
+'INCR'
+'INDENT'
+'INDEX_ASC'
+'INDEX_COMBINE'
+'INDEX_DESC'
+'INDEXED'
+'INDEXES'
+'INDEX_FFS'
+'INDEX_FILTER'
+'INDEX'
+'INDEXING'
+'INDEX_JOIN'
+'INDEX_ROWS'
+'INDEX_RRS'
+'INDEX_RS_ASC'
+'INDEX_RS_DESC'
+'INDEX_RS'
+'INDEX_SCAN'
+'INDEX_SKIP_SCAN'
+'INDEX_SS_ASC'
+'INDEX_SS_DESC'
+'INDEX_SS'
+'INDEX_STATS'
+'INDEXTYPE'
+'INDEXTYPES'
+'INDICATOR'
+'INDICES'
+'INFINITE'
+'INFORMATIONAL'
+'INHERIT'
+'IN'
+'INITCAP'
+'INITIAL'
+'INITIALIZED'
+'INITIALLY'
+'INITRANS'
+'INLINE'
+'INLINE_XMLTYPE_NT'
+'INMEMORY'
+'IN_MEMORY_METADATA'
+'INMEMORY_PRUNING'
+'INNER'
+'INOUT'
+'INPLACE'
+'INSERTCHILDXMLAFTER'
+'INSERTCHILDXMLBEFORE'
+'INSERTCHILDXML'
+'INSERT'
+'INSERTXMLAFTER'
+'INSERTXMLBEFORE'
+'INSTANCE'
+'INSTANCES'
+'INSTANTIABLE'
+'INSTANTLY'
+'INSTEAD'
+'INSTR2'
+'INSTR4'
+'INSTRB'
+'INSTRC'
+'INSTR'
+'INTEGER'
+'INTERLEAVED'
+'INTERMEDIATE'
+'INTERNAL_CONVERT'
+'INTERNAL_USE'
+'INTERPRETED'
+'INTERSECT'
+'INTERVAL'
+'INT'
+'INTO'
+'INVALIDATE'
+'INVISIBLE'
+'IN_XQUERY'
+'IS'
+'ISOLATION'
+'ISOLATION_LEVEL'
+'ITERATE'
+'ITERATION_NUMBER'
+'JAVA'
+'JOB'
+'JOIN'
+'JSON_ARRAYAGG'
+'JSON_ARRAY'
+'JSON_EQUAL'
+'JSON_EXISTS2'
+'JSON_EXISTS'
+'JSONGET'
+'JSON'
+'JSON_OBJECTAGG'
+'JSON_OBJECT'
+'JSONPARSE'
+'JSON_QUERY'
+'JSON_SERIALIZE'
+'JSON_TABLE'
+'JSON_TEXTCONTAINS2'
+'JSON_TEXTCONTAINS'
+'JSON_VALUE'
+'KEEP_DUPLICATES'
+'KEEP'
+'KERBEROS'
+'KEY'
+'KEY_LENGTH'
+'KEYSIZE'
+'KEYS'
+'KEYSTORE'
+'KILL'
+'LABEL'
+'LANGUAGE'
+'LAST_DAY'
+'LAST'
+'LAST_VALUE'
+'LATERAL'
+'LAX'
+'LAYER'
+'LDAP_REGISTRATION_ENABLED'
+'LDAP_REGISTRATION'
+'LDAP_REG_SYNC_INTERVAL'
+'LEADING'
+'LEFT'
+'LENGTH2'
+'LENGTH4'
+'LENGTHB'
+'LENGTHC'
+'LENGTH'
+'LESS'
+'LEVEL'
+'LEVELS'
+'LIBRARY'
+'LIFECYCLE'
+'LIFE'
+'LIFETIME'
+'LIKE2'
+'LIKE4'
+'LIKEC'
+'LIKE_EXPAND'
+'LIKE'
+'LIMIT'
+'LINEAR'
+'LINK'
+'LIST'
+'LN'
+'LNNVL'
+'LOAD'
+'LOB'
+'LOBNVL'
+'LOBS'
+'LOCAL_INDEXES'
+'LOCAL'
+'LOCALTIME'
+'LOCALTIMESTAMP'
+'LOCATION'
+'LOCATOR'
+'LOCKED'
+'LOCKING'
+'LOCK'
+'LOGFILE'
+'LOGFILES'
+'LOGGING'
+'LOGICAL'
+'LOGICAL_READS_PER_CALL'
+'LOGICAL_READS_PER_SESSION'
+'LOG'
+'LOGMINING'
+'LOGOFF'
+'LOGON'
+'LOG_READ_ONLY_VIOLATIONS'
+'LONG'
+'LOOP'
+'LOWER'
+'LOW'
+'LPAD'
+'LTRIM'
+'MAIN'
+'MAKE_REF'
+'MANAGED'
+'MANAGE'
+'MANAGEMENT'
+'MANAGER'
+'MANUAL'
+'MAP'
+'MAPPING'
+'MASTER'
+'MATCHED'
+'MATCHES'
+'MATCH'
+'MATCH_NUMBER'
+'MATCH_RECOGNIZE'
+'MATERIALIZED'
+'MATERIALIZE'
+'MAXARCHLOGS'
+'MAXDATAFILES'
+'MAXEXTENTS'
+'MAXIMIZE'
+'MAXINSTANCES'
+'MAXLOGFILES'
+'MAXLOGHISTORY'
+'MAXLOGMEMBERS'
+'MAX_SHARED_TEMP_SIZE'
+'MAXSIZE'
+'MAXTRANS'
+'MAXVALUE'
+'MEASURE'
+'MEASURES'
+'MEDIUM'
+'MEMBER'
+'MEMCOMPRESS'
+'MEMORY'
+'MERGE$ACTIONS'
+'MERGE_AJ'
+'MERGE_CONST_ON'
+'MERGE'
+'MERGE_SJ'
+'METADATA'
+'METHOD'
+'MIGRATE'
+'MIGRATION'
+'MINEXTENTS'
+'MINIMIZE'
+'MINIMUM'
+'MINING'
+'MINUS'
+'MINUS_NULL'
+'MINUTE'
+'MINVALUE'
+'MIRRORCOLD'
+'MIRRORHOT'
+'MIRROR'
+'MLSLABEL'
+'MODEL_COMPILE_SUBQUERY'
+'MODEL_DONTVERIFY_UNIQUENESS'
+'MODEL_DYNAMIC_SUBQUERY'
+'MODEL_MIN_ANALYSIS'
+'MODEL'
+'MODEL_NB'
+'MODEL_NO_ANALYSIS'
+'MODEL_PBY'
+'MODEL_PUSH_REF'
+'MODEL_SV'
+'MODE'
+'MODIFICATION'
+'MODIFY_COLUMN_TYPE'
+'MODIFY'
+'MOD'
+'MODULE'
+'MONITORING'
+'MONITOR'
+'MONTH'
+'MONTHS_BETWEEN'
+'MONTHS'
+'MOUNT'
+'MOUNTPATH'
+'MOVEMENT'
+'MOVE'
+'MULTIDIMENSIONAL'
+'MULTISET'
+'MV_MERGE'
+'NAMED'
+'NAME'
+'NAMESPACE'
+'NAN'
+'NANVL'
+'NATIONAL'
+'NATIVE_FULL_OUTER_JOIN'
+'NATIVE'
+'NATURAL'
+'NATURALN'
+'NAV'
+'NCHAR_CS'
+'NCHAR'
+'NCHR'
+'NCLOB'
+'NEEDED'
+'NEG'
+'NESTED'
+'NESTED_TABLE_FAST_INSERT'
+'NESTED_TABLE_GET_REFS'
+'NESTED_TABLE_ID'
+'NESTED_TABLE_SET_REFS'
+'NESTED_TABLE_SET_SETID'
+'NETWORK'
+'NEVER'
+'NEW'
+'NEW_TIME'
+'NEXT_DAY'
+'NEXT'
+'NL_AJ'
+'NLJ_BATCHING'
+'NLJ_INDEX_FILTER'
+'NLJ_INDEX_SCAN'
+'NLJ_PREFETCH'
+'NLS_CALENDAR'
+'NLS_CHARACTERSET'
+'NLS_CHARSET_DECL_LEN'
+'NLS_CHARSET_ID'
+'NLS_CHARSET_NAME'
+'NLS_COMP'
+'NLS_CURRENCY'
+'NLS_DATE_FORMAT'
+'NLS_DATE_LANGUAGE'
+'NLS_INITCAP'
+'NLS_ISO_CURRENCY'
+'NL_SJ'
+'NLS_LANG'
+'NLS_LANGUAGE'
+'NLS_LENGTH_SEMANTICS'
+'NLS_LOWER'
+'NLS_NCHAR_CONV_EXCP'
+'NLS_NUMERIC_CHARACTERS'
+'NLS_SORT'
+'NLSSORT'
+'NLS_SPECIAL_CHARS'
+'NLS_TERRITORY'
+'NLS_UPPER'
+'NO_ACCESS'
+'NO_ADAPTIVE_PLAN'
+'NO_ANSI_REARCH'
+'NOAPPEND'
+'NOARCHIVELOG'
+'NOAUDIT'
+'NO_AUTO_REOPTIMIZE'
+'NO_BASETABLE_MULTIMV_REWRITE'
+'NO_BATCH_TABLE_ACCESS_BY_ROWID'
+'NO_BIND_AWARE'
+'NO_BUFFER'
+'NOCACHE'
+'NO_CARTESIAN'
+'NO_CHECK_ACL_REWRITE'
+'NO_CLUSTER_BY_ROWID'
+'NO_CLUSTERING'
+'NO_COALESCE_SQ'
+'NO_COMMON_DATA'
+'NOCOMPRESS'
+'NO_CONNECT_BY_CB_WHR_ONLY'
+'NO_CONNECT_BY_COMBINE_SW'
+'NO_CONNECT_BY_COST_BASED'
+'NO_CONNECT_BY_ELIM_DUPS'
+'NO_CONNECT_BY_FILTERING'
+'NOCOPY'
+'NO_COST_XML_QUERY_REWRITE'
+'NO_CPU_COSTING'
+'NOCPU_COSTING'
+'NOCYCLE'
+'NO_DATA_SECURITY_REWRITE'
+'NO_DECORRELATE'
+'NODELAY'
+'NO_DOMAIN_INDEX_FILTER'
+'NO_DST_UPGRADE_INSERT_CONV'
+'NO_ELIM_GROUPBY'
+'NO_ELIMINATE_JOIN'
+'NO_ELIMINATE_OBY'
+'NO_ELIMINATE_OUTER_JOIN'
+'NOENTITYESCAPING'
+'NO_EXPAND_GSET_TO_UNION'
+'NO_EXPAND'
+'NO_EXPAND_TABLE'
+'NO_FACT'
+'NO_FACTORIZE_JOIN'
+'NO_FILTERING'
+'NOFORCE'
+'NO_FULL_OUTER_JOIN_TO_OUTER'
+'NO_GATHER_OPTIMIZER_STATISTICS'
+'NO_GBY_PUSHDOWN'
+'NOGUARANTEE'
+'NO_INDEX_FFS'
+'NO_INDEX'
+'NO_INDEX_SS'
+'NO_INMEMORY'
+'NO_INMEMORY_PRUNING'
+'NOKEEP'
+'NO_LOAD'
+'NOLOCAL'
+'NOLOGGING'
+'NOMAPPING'
+'NOMAXVALUE'
+'NO_MERGE'
+'NOMINIMIZE'
+'NOMINVALUE'
+'NO_MODEL_PUSH_REF'
+'NO_MONITORING'
+'NOMONITORING'
+'NO_MONITOR'
+'NO_MULTIMV_REWRITE'
+'NO_NATIVE_FULL_OUTER_JOIN'
+'NONBLOCKING'
+'NONEDITIONABLE'
+'NONE'
+'NO_NLJ_BATCHING'
+'NO_NLJ_PREFETCH'
+'NO'
+'NONSCHEMA'
+'NO_OBJECT_LINK'
+'NOORDER'
+'NO_ORDER_ROLLUPS'
+'NO_OUTER_JOIN_TO_ANTI'
+'NO_OUTER_JOIN_TO_INNER'
+'NOOVERRIDE'
+'NO_PARALLEL_INDEX'
+'NOPARALLEL_INDEX'
+'NO_PARALLEL'
+'NOPARALLEL'
+'NO_PARTIAL_COMMIT'
+'NO_PARTIAL_JOIN'
+'NO_PARTIAL_ROLLUP_PUSHDOWN'
+'NOPARTITION'
+'NO_PLACE_DISTINCT'
+'NO_PLACE_GROUP_BY'
+'NO_PQ_CONCURRENT_UNION'
+'NO_PQ_MAP'
+'NO_PQ_REPLICATE'
+'NO_PQ_SKEW'
+'NO_PRUNE_GSETS'
+'NO_PULL_PRED'
+'NO_PUSH_PRED'
+'NO_PUSH_SUBQ'
+'NO_PX_FAULT_TOLERANCE'
+'NO_PX_JOIN_FILTER'
+'NO_QKN_BUFF'
+'NO_QUERY_TRANSFORMATION'
+'NO_REF_CASCADE'
+'NORELOCATE'
+'NORELY'
+'NOREPAIR'
+'NOREPLAY'
+'NORESETLOGS'
+'NO_RESULT_CACHE'
+'NOREVERSE'
+'NO_REWRITE'
+'NOREWRITE'
+'NORMAL'
+'NO_ROOT_SW_FOR_LOCAL'
+'NOROWDEPENDENCIES'
+'NOSCHEMACHECK'
+'NOSEGMENT'
+'NO_SEMIJOIN'
+'NO_SEMI_TO_INNER'
+'NO_SET_TO_JOIN'
+'NOSORT'
+'NO_SQL_TRANSLATION'
+'NO_SQL_TUNE'
+'NO_STAR_TRANSFORMATION'
+'NO_STATEMENT_QUEUING'
+'NO_STATS_GSETS'
+'NOSTRICT'
+'NO_SUBQUERY_PRUNING'
+'NO_SUBSTRB_PAD'
+'NO_SWAP_JOIN_INPUTS'
+'NOSWITCH'
+'NO_TABLE_LOOKUP_BY_NL'
+'NO_TEMP_TABLE'
+'NOTHING'
+'NOTIFICATION'
+'NOT'
+'NO_TRANSFORM_DISTINCT_AGG'
+'NO_UNNEST'
+'NO_USE_CUBE'
+'NO_USE_HASH_AGGREGATION'
+'NO_USE_HASH_GBY_FOR_PUSHDOWN'
+'NO_USE_HASH'
+'NO_USE_INVISIBLE_INDEXES'
+'NO_USE_MERGE'
+'NO_USE_NL'
+'NO_USE_VECTOR_AGGREGATION'
+'NOVALIDATE'
+'NO_VECTOR_TRANSFORM_DIMS'
+'NO_VECTOR_TRANSFORM_FACT'
+'NO_VECTOR_TRANSFORM'
+'NOWAIT'
+'NO_XDB_FASTPATH_INSERT'
+'NO_XML_DML_REWRITE'
+'NO_XMLINDEX_REWRITE_IN_SELECT'
+'NO_XMLINDEX_REWRITE'
+'NO_XML_QUERY_REWRITE'
+'NO_ZONEMAP'
+'NTH_VALUE'
+'NULLIF'
+'NULL'
+'NULLS'
+'NUMBER'
+'NUMERIC'
+'NUM_INDEX_KEYS'
+'NUMTODSINTERVAL'
+'NUMTOYMINTERVAL'
+'NVARCHAR2'
+'NVL2'
+'OBJECT2XML'
+'OBJECT'
+'OBJ_ID'
+'OBJNO'
+'OBJNO_REUSE'
+'OCCURENCES'
+'OFFLINE'
+'OFF'
+'OFFSET'
+'OF'
+'OIDINDEX'
+'OID'
+'OLAP'
+'OLD'
+'OLD_PUSH_PRED'
+'OLS'
+'OLTP'
+'OMIT'
+'ONE'
+'ONLINE'
+'ONLINELOG'
+'ONLY'
+'ON'
+'OPAQUE'
+'OPAQUE_TRANSFORM'
+'OPAQUE_XCANONICAL'
+'OPCODE'
+'OPEN'
+'OPERATIONS'
+'OPERATOR'
+'OPT_ESTIMATE'
+'OPTIMAL'
+'OPTIMIZE'
+'OPTIMIZER_FEATURES_ENABLE'
+'OPTIMIZER_GOAL'
+'OPTION'
+'OPT_PARAM'
+'ORA_BRANCH'
+'ORA_CHECK_ACL'
+'ORA_CHECK_PRIVILEGE'
+'ORA_CLUSTERING'
+'ORADATA'
+'ORADEBUG'
+'ORA_DST_AFFECTED'
+'ORA_DST_CONVERT'
+'ORA_DST_ERROR'
+'ORA_GET_ACLIDS'
+'ORA_GET_PRIVILEGES'
+'ORA_HASH'
+'ORA_INVOKING_USERID'
+'ORA_INVOKING_USER'
+'ORA_INVOKING_XS_USER_GUID'
+'ORA_INVOKING_XS_USER'
+'ORA_RAWCOMPARE'
+'ORA_RAWCONCAT'
+'ORA_ROWSCN'
+'ORA_ROWSCN_RAW'
+'ORA_ROWVERSION'
+'ORA_TABVERSION'
+'ORA_WRITE_TIME'
+'ORDERED'
+'ORDERED_PREDICATES'
+'ORDER'
+'ORDINALITY'
+'OR_EXPAND'
+'ORGANIZATION'
+'OR'
+'OR_PREDICATES'
+'OSERROR'
+'OTHER'
+'OUTER_JOIN_TO_ANTI'
+'OUTER_JOIN_TO_INNER'
+'OUTER'
+'OUTLINE_LEAF'
+'OUTLINE'
+'OUT_OF_LINE'
+'OUT'
+'OVERFLOW_NOMOVE'
+'OVERFLOW'
+'OVERLAPS'
+'OVER'
+'OVERRIDING'
+'OWNER'
+'OWNERSHIP'
+'OWN'
+'PACKAGE'
+'PACKAGES'
+'PARALLEL_ENABLE'
+'PARALLEL_INDEX'
+'PARALLEL'
+'PARAMETERFILE'
+'PARAMETERS'
+'PARAM'
+'PARENT'
+'PARITY'
+'PARTIAL_JOIN'
+'PARTIALLY'
+'PARTIAL'
+'PARTIAL_ROLLUP_PUSHDOWN'
+'PARTITION_HASH'
+'PARTITION_LIST'
+'PARTITION'
+'PARTITION_RANGE'
+'PARTITIONS'
+'PART$NUM$INST'
+'PASSING'
+'PASSWORD_GRACE_TIME'
+'PASSWORD_LIFE_TIME'
+'PASSWORD_LOCK_TIME'
+'PASSWORD'
+'PASSWORD_REUSE_MAX'
+'PASSWORD_REUSE_TIME'
+'PASSWORD_VERIFY_FUNCTION'
+'PAST'
+'PATCH'
+'PATH'
+'PATH_PREFIX'
+'PATHS'
+'PATTERN'
+'PBL_HS_BEGIN'
+'PBL_HS_END'
+'PCTFREE'
+'PCTINCREASE'
+'PCTTHRESHOLD'
+'PCTUSED'
+'PCTVERSION'
+'PENDING'
+null
+null
+null
+'PERCENT'
+'PERCENT_RANKM'
+null
+null
+null
+'PERFORMANCE'
+'PERIOD'
+'PERMANENT'
+'PERMISSION'
+'PERMUTE'
+'PER'
+'PFILE'
+'PHYSICAL'
+'PIKEY'
+'PIPELINED'
+'PIPE'
+'PIV_GB'
+'PIVOT'
+'PIV_SSF'
+'PLACE_DISTINCT'
+'PLACE_GROUP_BY'
+'PLAN'
+'PLSCOPE_SETTINGS'
+'PLS_INTEGER'
+'PLSQL_CCFLAGS'
+'PLSQL_CODE_TYPE'
+'PLSQL_DEBUG'
+'PLSQL_OPTIMIZE_LEVEL'
+'PLSQL_WARNINGS'
+'PLUGGABLE'
+'POINT'
+'POLICY'
+'POOL_16K'
+'POOL_2K'
+'POOL_32K'
+'POOL_4K'
+'POOL_8K'
+'POSITIVEN'
+'POSITIVE'
+'POST_TRANSACTION'
+'POWERMULTISET_BY_CARDINALITY'
+'POWERMULTISET'
+'POWER'
+'PQ_CONCURRENT_UNION'
+'PQ_DISTRIBUTE'
+'PQ_DISTRIBUTE_WINDOW'
+'PQ_FILTER'
+'PQ_MAP'
+'PQ_NOMAP'
+'PQ_REPLICATE'
+'PQ_SKEW'
+'PRAGMA'
+'PREBUILT'
+'PRECEDES'
+'PRECEDING'
+'PRECISION'
+'PRECOMPUTE_SUBQUERY'
+'PREDICATE_REORDERS'
+'PRELOAD'
+'PREPARE'
+'PRESENTNNV'
+'PRESENT'
+'PRESENTV'
+'PRESERVE_OID'
+'PRESERVE'
+'PRETTY'
+'PREVIOUS'
+'PREV'
+'PRIMARY'
+'PRINTBLOBTOCLOB'
+'PRIORITY'
+'PRIOR'
+'PRIVATE'
+'PRIVATE_SGA'
+'PRIVILEGED'
+'PRIVILEGE'
+'PRIVILEGES'
+'PROCEDURAL'
+'PROCEDURE'
+'PROCESS'
+'PROFILE'
+'PROGRAM'
+'PROJECT'
+'PROPAGATE'
+'PROTECTED'
+'PROTECTION'
+'PROXY'
+'PRUNING'
+'PUBLIC'
+'PULL_PRED'
+'PURGE'
+'PUSH_PRED'
+'PUSH_SUBQ'
+'PX_FAULT_TOLERANCE'
+'PX_GRANULE'
+'PX_JOIN_FILTER'
+'QB_NAME'
+'QUERY_BLOCK'
+'QUERY'
+'QUEUE_CURR'
+'QUEUE'
+'QUEUE_ROWP'
+'QUIESCE'
+'QUORUM'
+'QUOTA'
+'RAISE'
+'RANDOM_LOCAL'
+'RANDOM'
+'RANGE'
+'RANKM'
+'RAPIDLY'
+'RAW'
+'RAWTOHEX'
+'RAWTONHEX'
+'RBA'
+'RBO_OUTLINE'
+'RDBA'
+'READ'
+'READS'
+'REALM'
+'REAL'
+'REBALANCE'
+'REBUILD'
+'RECORD'
+'RECORDS_PER_BLOCK'
+'RECOVERABLE'
+'RECOVER'
+'RECOVERY'
+'RECYCLEBIN'
+'RECYCLE'
+'REDACTION'
+'REDEFINE'
+'REDO'
+'REDUCED'
+'REDUNDANCY'
+'REF_CASCADE_CURSOR'
+'REFERENCED'
+'REFERENCE'
+'REFERENCES'
+'REFERENCING'
+'REF'
+'REFRESH'
+'REFTOHEX'
+'REGEXP_COUNT'
+'REGEXP_INSTR'
+'REGEXP_LIKE'
+'REGEXP_REPLACE'
+'REGEXP_SUBSTR'
+'REGISTER'
+'REGR_AVGX'
+'REGR_AVGY'
+'REGR_COUNT'
+'REGR_INTERCEPT'
+'REGR_R2'
+'REGR_SLOPE'
+'REGR_SXX'
+'REGR_SXY'
+'REGR_SYY'
+'REGULAR'
+'REJECT'
+'REKEY'
+'RELATIONAL'
+'RELIES_ON'
+'RELOCATE'
+'RELY'
+'REMAINDER'
+'REMOTE_MAPPED'
+'REMOVE'
+'RENAME'
+'REPAIR'
+'REPEAT'
+'REPLACE'
+'REPLICATION'
+'REQUIRED'
+'RESETLOGS'
+'RESET'
+'RESIZE'
+'RESOLVE'
+'RESOLVER'
+'RESOURCE'
+'RESPECT'
+'RESTART'
+'RESTORE_AS_INTERVALS'
+'RESTORE'
+'RESTRICT_ALL_REF_CONS'
+'RESTRICTED'
+'RESTRICT_REFERENCES'
+'RESTRICT'
+'RESULT_CACHE'
+'RESULT'
+'RESUMABLE'
+'RESUME'
+'RETENTION'
+'RETRY_ON_ROW_CHANGE'
+'RETURNING'
+'RETURN'
+'REUSE'
+'REVERSE'
+'REVOKE'
+'REWRITE_OR_ERROR'
+'REWRITE'
+'RIGHT'
+'ROLE'
+'ROLESET'
+'ROLES'
+'ROLLBACK'
+'ROLLING'
+'ROLLUP'
+'ROWDEPENDENCIES'
+'ROWID_MAPPING_TABLE'
+'ROWID'
+'ROWIDTOCHAR'
+'ROWIDTONCHAR'
+'ROW_LENGTH'
+'ROWNUM'
+'ROW'
+'ROWS'
+'RPAD'
+'RTRIM'
+'RULE'
+'RULES'
+'RUNNING'
+'SALT'
+'SAMPLE'
+'SAVE_AS_INTERVALS'
+'SAVEPOINT'
+'SAVE'
+'SB4'
+'SCALE_ROWS'
+'SCALE'
+'SCAN_INSTANCES'
+'SCAN'
+'SCHEDULER'
+'SCHEMACHECK'
+'SCHEMA'
+'SCN_ASCENDING'
+'SCN'
+'SCOPE'
+'SCRUB'
+'SD_ALL'
+'SD_INHIBIT'
+'SDO_GEOM_MBR'
+'SD_SHOW'
+'SEARCH'
+'SECOND'
+'SECRET'
+'SECUREFILE_DBA'
+'SECUREFILE'
+'SECURITY'
+'SEED'
+'SEG_BLOCK'
+'SEG_FILE'
+'SEGMENT'
+'SELECTIVITY'
+'SELECT'
+'SELF'
+'SEMIJOIN_DRIVER'
+'SEMIJOIN'
+'SEMI_TO_INNER'
+'SEQUENCED'
+'SEQUENCE'
+'SEQUENTIAL'
+'SEQ'
+'SERIALIZABLE'
+'SERIALLY_REUSABLE'
+'SERIAL'
+'SERVERERROR'
+'SERVICE_NAME_CONVERT'
+'SERVICES'
+'SESSION_CACHED_CURSORS'
+'SESSION'
+'SESSIONS_PER_USER'
+'SESSIONTIMEZONE'
+'SESSIONTZNAME'
+'SET'
+'SETS'
+'SETTINGS'
+'SET_TO_JOIN'
+'SEVERE'
+'SHARED_POOL'
+'SHARED'
+'SHARE'
+'SHARING'
+'SHELFLIFE'
+'SHOW'
+'SHRINK'
+'SHUTDOWN'
+'SIBLINGS'
+'SID'
+'SIGNAL_COMPONENT'
+'SIGNAL_FUNCTION'
+'SIGN'
+'SIGNTYPE'
+'SIMPLE_INTEGER'
+'SIMPLE'
+'SINGLE'
+'SINGLETASK'
+'SINH'
+'SIN'
+'SIZE'
+'SKIP_EXT_OPTIMIZER'
+'SKIP'
+'SKIP_UNQ_UNUSABLE_IDX'
+'SKIP_UNUSABLE_INDEXES'
+'SMALLFILE'
+'SMALLINT'
+'SNAPSHOT'
+'SOME'
+'SORT'
+'SOUNDEX'
+'SOURCE_FILE_DIRECTORY'
+'SOURCE_FILE_NAME_CONVERT'
+'SOURCE'
+'SPACE'
+'SPECIFICATION'
+'SPFILE'
+'SPLIT'
+'SPREADSHEET'
+'SQLDATA'
+'SQLERROR'
+'SQLLDR'
+'SQL'
+'SQL_TRACE'
+'SQL_TRANSLATION_PROFILE'
+'SQRT'
+'STALE'
+'STANDALONE'
+'STANDARD_HASH'
+'STANDBY_MAX_DATA_DELAY'
+'STANDBYS'
+'STANDBY'
+'STAR'
+'STAR_TRANSFORMATION'
+'START'
+'STARTUP'
+'STATEMENT_ID'
+'STATEMENT_QUEUING'
+'STATEMENTS'
+'STATEMENT'
+'STATE'
+'STATIC'
+'STATISTICS'
+'STATS_BINOMIAL_TEST'
+'STATS_CROSSTAB'
+'STATS_F_TEST'
+'STATS_KS_TEST'
+'STATS_MODE'
+'STATS_MW_TEST'
+'STATS_ONE_WAY_ANOVA'
+'STATS_T_TEST_INDEP'
+'STATS_T_TEST_INDEPU'
+'STATS_T_TEST_ONE'
+'STATS_T_TEST_PAIRED'
+'STATS_WSR_TEST'
+'STDDEV_POP'
+'STDDEV_SAMP'
+'STOP'
+'STORAGE'
+'STORE'
+'STREAMS'
+'STREAM'
+'STRICT'
+'STRING'
+'STRIPE_COLUMNS'
+'STRIPE_WIDTH'
+'STRIP'
+'STRUCTURE'
+'SUBMULTISET'
+'SUBPARTITION_REL'
+'SUBPARTITIONS'
+'SUBPARTITION'
+'SUBQUERIES'
+'SUBQUERY_PRUNING'
+'SUBSCRIBE'
+'SUBSET'
+'SUBSTITUTABLE'
+'SUBSTR2'
+'SUBSTR4'
+'SUBSTRB'
+'SUBSTRC'
+'SUBTYPE'
+'SUCCESSFUL'
+'SUCCESS'
+'SUMMARY'
+'SUPPLEMENTAL'
+'SUSPEND'
+'SWAP_JOIN_INPUTS'
+'SWITCHOVER'
+'SWITCH'
+'SYNCHRONOUS'
+'SYNC'
+'SYNONYM'
+'SYSASM'
+'SYS_AUDIT'
+'SYSAUX'
+'SYSBACKUP'
+'SYS_CHECKACL'
+'SYS_CHECK_PRIVILEGE'
+'SYS_CONNECT_BY_PATH'
+'SYS_CONTEXT'
+'SYSDATE'
+'SYSDBA'
+'SYS_DBURIGEN'
+'SYSDG'
+'SYS_DL_CURSOR'
+'SYS_DM_RXFORM_CHR'
+'SYS_DM_RXFORM_NUM'
+'SYS_DOM_COMPARE'
+'SYS_DST_PRIM2SEC'
+'SYS_DST_SEC2PRIM'
+'SYS_ET_BFILE_TO_RAW'
+'SYS_ET_BLOB_TO_IMAGE'
+'SYS_ET_IMAGE_TO_BLOB'
+'SYS_ET_RAW_TO_BFILE'
+'SYS_EXTPDTXT'
+'SYS_EXTRACT_UTC'
+'SYS_FBT_INSDEL'
+'SYS_FILTER_ACLS'
+'SYS_FNMATCHES'
+'SYS_FNREPLACE'
+'SYS_GET_ACLIDS'
+'SYS_GET_COL_ACLIDS'
+'SYS_GET_PRIVILEGES'
+'SYS_GETTOKENID'
+'SYS_GETXTIVAL'
+'SYS_GUID'
+'SYSGUID'
+'SYSKM'
+'SYS_MAKE_XMLNODEID'
+'SYS_MAKEXML'
+'SYS_MKXMLATTR'
+'SYS_MKXTI'
+'SYSOBJ'
+'SYS_OP_ADT2BIN'
+'SYS_OP_ADTCONS'
+'SYS_OP_ALSCRVAL'
+'SYS_OP_ATG'
+'SYS_OP_BIN2ADT'
+'SYS_OP_BITVEC'
+'SYS_OP_BL2R'
+'SYS_OP_BLOOM_FILTER_LIST'
+'SYS_OP_BLOOM_FILTER'
+'SYS_OP_C2C'
+'SYS_OP_CAST'
+'SYS_OP_CEG'
+'SYS_OP_CL2C'
+'SYS_OP_COMBINED_HASH'
+'SYS_OP_COMP'
+'SYS_OP_CONVERT'
+'SYS_OP_COUNTCHG'
+'SYS_OP_CSCONV'
+'SYS_OP_CSCONVTEST'
+'SYS_OP_CSR'
+'SYS_OP_CSX_PATCH'
+'SYS_OP_CYCLED_SEQ'
+'SYS_OP_DECOMP'
+'SYS_OP_DESCEND'
+'SYS_OP_DISTINCT'
+'SYS_OP_DRA'
+'SYS_OP_DUMP'
+'SYS_OP_DV_CHECK'
+'SYS_OP_ENFORCE_NOT_NULL$'
+'SYSOPER'
+'SYS_OP_EXTRACT'
+'SYS_OP_GROUPING'
+'SYS_OP_GUID'
+'SYS_OP_HASH'
+'SYS_OP_IIX'
+'SYS_OP_ITR'
+'SYS_OP_KEY_VECTOR_CREATE'
+'SYS_OP_KEY_VECTOR_FILTER_LIST'
+'SYS_OP_KEY_VECTOR_FILTER'
+'SYS_OP_KEY_VECTOR_SUCCEEDED'
+'SYS_OP_KEY_VECTOR_USE'
+'SYS_OP_LBID'
+'SYS_OP_LOBLOC2BLOB'
+'SYS_OP_LOBLOC2CLOB'
+'SYS_OP_LOBLOC2ID'
+'SYS_OP_LOBLOC2NCLOB'
+'SYS_OP_LOBLOC2TYP'
+'SYS_OP_LSVI'
+'SYS_OP_LVL'
+'SYS_OP_MAKEOID'
+'SYS_OP_MAP_NONNULL'
+'SYS_OP_MSR'
+'SYS_OP_NICOMBINE'
+'SYS_OP_NIEXTRACT'
+'SYS_OP_NII'
+'SYS_OP_NIX'
+'SYS_OP_NOEXPAND'
+'SYS_OP_NTCIMG$'
+'SYS_OP_NUMTORAW'
+'SYS_OP_OIDVALUE'
+'SYS_OP_OPNSIZE'
+'SYS_OP_PAR_1'
+'SYS_OP_PARGID_1'
+'SYS_OP_PARGID'
+'SYS_OP_PAR'
+'SYS_OP_PART_ID'
+'SYS_OP_PIVOT'
+'SYS_OP_R2O'
+'SYS_OP_RAWTONUM'
+'SYS_OP_RDTM'
+'SYS_OP_REF'
+'SYS_OP_RMTD'
+'SYS_OP_ROWIDTOOBJ'
+'SYS_OP_RPB'
+'SYS_OPTLOBPRBSC'
+'SYS_OP_TOSETID'
+'SYS_OP_TPR'
+'SYS_OP_TRTB'
+'SYS_OPTXICMP'
+'SYS_OPTXQCASTASNQ'
+'SYS_OP_UNDESCEND'
+'SYS_OP_VECAND'
+'SYS_OP_VECBIT'
+'SYS_OP_VECOR'
+'SYS_OP_VECXOR'
+'SYS_OP_VERSION'
+'SYS_OP_VREF'
+'SYS_OP_VVD'
+'SYS_OP_XMLCONS_FOR_CSX'
+'SYS_OP_XPTHATG'
+'SYS_OP_XPTHIDX'
+'SYS_OP_XPTHOP'
+'SYS_OP_XTXT2SQLT'
+'SYS_OP_ZONE_ID'
+'SYS_ORDERKEY_DEPTH'
+'SYS_ORDERKEY_MAXCHILD'
+'SYS_ORDERKEY_PARENT'
+'SYS_PARALLEL_TXN'
+'SYS_PATHID_IS_ATTR'
+'SYS_PATHID_IS_NMSPC'
+'SYS_PATHID_LASTNAME'
+'SYS_PATHID_LASTNMSPC'
+'SYS_PATH_REVERSE'
+'SYS_PXQEXTRACT'
+'SYS_RAW_TO_XSID'
+'SYS_RID_ORDER'
+'SYS_ROW_DELTA'
+'SYS_SC_2_XMLT'
+'SYS_SYNRCIREDO'
+'SYSTEM_DEFINED'
+'SYSTEM'
+'SYSTIMESTAMP'
+'SYS_TYPEID'
+'SYS_UMAKEXML'
+'SYS_XMLANALYZE'
+'SYS_XMLCONTAINS'
+'SYS_XMLCONV'
+'SYS_XMLEXNSURI'
+'SYS_XMLGEN'
+'SYS_XMLI_LOC_ISNODE'
+'SYS_XMLI_LOC_ISTEXT'
+'SYS_XMLINSTR'
+'SYS_XMLLOCATOR_GETSVAL'
+'SYS_XMLNODEID_GETCID'
+'SYS_XMLNODEID_GETLOCATOR'
+'SYS_XMLNODEID_GETOKEY'
+'SYS_XMLNODEID_GETPATHID'
+'SYS_XMLNODEID_GETPTRID'
+'SYS_XMLNODEID_GETRID'
+'SYS_XMLNODEID_GETSVAL'
+'SYS_XMLNODEID_GETTID'
+'SYS_XMLNODEID'
+'SYS_XMLT_2_SC'
+'SYS_XMLTRANSLATE'
+'SYS_XMLTYPE2SQL'
+'SYS_XQ_ASQLCNV'
+'SYS_XQ_ATOMCNVCHK'
+'SYS_XQBASEURI'
+'SYS_XQCASTABLEERRH'
+'SYS_XQCODEP2STR'
+'SYS_XQCODEPEQ'
+'SYS_XQCON2SEQ'
+'SYS_XQCONCAT'
+'SYS_XQDELETE'
+'SYS_XQDFLTCOLATION'
+'SYS_XQDOC'
+'SYS_XQDOCURI'
+'SYS_XQDURDIV'
+'SYS_XQED4URI'
+'SYS_XQENDSWITH'
+'SYS_XQERRH'
+'SYS_XQERR'
+'SYS_XQESHTMLURI'
+'SYS_XQEXLOBVAL'
+'SYS_XQEXSTWRP'
+'SYS_XQEXTRACT'
+'SYS_XQEXTRREF'
+'SYS_XQEXVAL'
+'SYS_XQFB2STR'
+'SYS_XQFNBOOL'
+'SYS_XQFNCMP'
+'SYS_XQFNDATIM'
+'SYS_XQFNLNAME'
+'SYS_XQFNNM'
+'SYS_XQFNNSURI'
+'SYS_XQFNPREDTRUTH'
+'SYS_XQFNQNM'
+'SYS_XQFNROOT'
+'SYS_XQFORMATNUM'
+'SYS_XQFTCONTAIN'
+'SYS_XQFUNCR'
+'SYS_XQGETCONTENT'
+'SYS_XQINDXOF'
+'SYS_XQINSERT'
+'SYS_XQINSPFX'
+'SYS_XQIRI2URI'
+'SYS_XQLANG'
+'SYS_XQLLNMFRMQNM'
+'SYS_XQMKNODEREF'
+'SYS_XQNILLED'
+'SYS_XQNODENAME'
+'SYS_XQNORMSPACE'
+'SYS_XQNORMUCODE'
+'SYS_XQ_NRNG'
+'SYS_XQNSP4PFX'
+'SYS_XQNSPFRMQNM'
+'SYS_XQPFXFRMQNM'
+'SYS_XQ_PKSQL2XML'
+'SYS_XQPOLYABS'
+'SYS_XQPOLYADD'
+'SYS_XQPOLYCEL'
+'SYS_XQPOLYCSTBL'
+'SYS_XQPOLYCST'
+'SYS_XQPOLYDIV'
+'SYS_XQPOLYFLR'
+'SYS_XQPOLYMOD'
+'SYS_XQPOLYMUL'
+'SYS_XQPOLYRND'
+'SYS_XQPOLYSQRT'
+'SYS_XQPOLYSUB'
+'SYS_XQPOLYUMUS'
+'SYS_XQPOLYUPLS'
+'SYS_XQPOLYVEQ'
+'SYS_XQPOLYVGE'
+'SYS_XQPOLYVGT'
+'SYS_XQPOLYVLE'
+'SYS_XQPOLYVLT'
+'SYS_XQPOLYVNE'
+'SYS_XQREF2VAL'
+'SYS_XQRENAME'
+'SYS_XQREPLACE'
+'SYS_XQRESVURI'
+'SYS_XQRNDHALF2EVN'
+'SYS_XQRSLVQNM'
+'SYS_XQRYENVPGET'
+'SYS_XQRYVARGET'
+'SYS_XQRYWRP'
+'SYS_XQSEQ2CON4XC'
+'SYS_XQSEQ2CON'
+'SYS_XQSEQDEEPEQ'
+'SYS_XQSEQINSB'
+'SYS_XQSEQRM'
+'SYS_XQSEQRVS'
+'SYS_XQSEQSUB'
+'SYS_XQSEQTYPMATCH'
+'SYS_XQSTARTSWITH'
+'SYS_XQSTATBURI'
+'SYS_XQSTR2CODEP'
+'SYS_XQSTRJOIN'
+'SYS_XQSUBSTRAFT'
+'SYS_XQSUBSTRBEF'
+'SYS_XQTOKENIZE'
+'SYS_XQTREATAS'
+'SYS_XQ_UPKXML2SQL'
+'SYS_XQXFORM'
+'SYS_XSID_TO_RAW'
+'SYS_ZMAP_FILTER'
+'SYS_ZMAP_REFRESH'
+'TABLE_LOOKUP_BY_NL'
+'TABLESPACE_NO'
+'TABLESPACE'
+'TABLES'
+'TABLE_STATS'
+'TABLE'
+'TABNO'
+'TAG'
+'TANH'
+'TAN'
+'TBL$OR$IDX$PART$NUM'
+'TEMPFILE'
+'TEMPLATE'
+'TEMPORARY'
+'TEMP_TABLE'
+'TEST'
+'TEXT'
+'THAN'
+'THEN'
+'THE'
+'THREAD'
+'THROUGH'
+'TIER'
+'TIES'
+'TIMEOUT'
+'TIMESTAMP_LTZ_UNCONSTRAINED'
+'TIMESTAMP'
+'TIMESTAMP_TZ_UNCONSTRAINED'
+'TIMESTAMP_UNCONSTRAINED'
+'TIMES'
+'TIME'
+'TIMEZONE'
+'TIMEZONE_ABBR'
+'TIMEZONE_HOUR'
+'TIMEZONE_MINUTE'
+'TIMEZONE_OFFSET'
+'TIMEZONE_REGION'
+'TIME_ZONE'
+'TIV_GB'
+'TIV_SSF'
+'TO_ACLID'
+'TO_BINARY_DOUBLE'
+'TO_BINARY_FLOAT'
+'TO_BLOB'
+'TO_CLOB'
+'TO_DSINTERVAL'
+'TO_LOB'
+'TO_MULTI_BYTE'
+'TO_NCHAR'
+'TO_NCLOB'
+'TO_NUMBER'
+'TOPLEVEL'
+'TO_SINGLE_BYTE'
+'TO_TIMESTAMP'
+'TO_TIMESTAMP_TZ'
+'TO_TIME'
+'TO_TIME_TZ'
+'TO'
+'TO_YMINTERVAL'
+'TRACE'
+'TRACING'
+'TRACKING'
+'TRAILING'
+'TRANSACTION'
+'TRANSFORM_DISTINCT_AGG'
+'TRANSITIONAL'
+'TRANSITION'
+'TRANSLATE'
+'TRANSLATION'
+'TREAT'
+'TRIGGERS'
+'TRIGGER'
+'TRUE'
+'TRUNCATE'
+'TRUNC'
+'TRUSTED'
+'TRUST'
+'TUNING'
+'TX'
+'TYPES'
+'TYPE'
+'TZ_OFFSET'
+'UB2'
+'UBA'
+'UCS2'
+'UID'
+'UNARCHIVED'
+'UNBOUNDED'
+'UNBOUND'
+'UNCONDITIONAL'
+'UNDER'
+'UNDO'
+'UNDROP'
+'UNIFORM'
+'UNION'
+'UNIQUE'
+'UNISTR'
+'UNLIMITED'
+'UNLOAD'
+'UNLOCK'
+'UNMATCHED'
+'UNNEST_INNERJ_DISTINCT_VIEW'
+'UNNEST_NOSEMIJ_NODISTINCTVIEW'
+'UNNEST_SEMIJ_VIEW'
+'UNNEST'
+'UNPACKED'
+'UNPIVOT'
+'UNPLUG'
+'UNPROTECTED'
+'UNQUIESCE'
+'UNRECOVERABLE'
+'UNRESTRICTED'
+'UNSUBSCRIBE'
+'UNTIL'
+'UNUSABLE'
+'UNUSED'
+'UPDATABLE'
+'UPDATED'
+'UPDATE'
+'UPDATEXML'
+'UPD_INDEXES'
+'UPD_JOININDEX'
+'UPGRADE'
+'UPPER'
+'UPSERT'
+'UROWID'
+'USABLE'
+'USAGE'
+'USE_ANTI'
+'USE_CONCAT'
+'USE_CUBE'
+'USE_HASH_AGGREGATION'
+'USE_HASH_GBY_FOR_PUSHDOWN'
+'USE_HASH'
+'USE_HIDDEN_PARTITIONS'
+'USE_INVISIBLE_INDEXES'
+'USE_MERGE_CARTESIAN'
+'USE_MERGE'
+'USE_NL'
+'USE_NL_WITH_INDEX'
+'USE_PRIVATE_OUTLINES'
+'USER_DATA'
+'USER_DEFINED'
+'USERENV'
+'USERGROUP'
+'USER_RECYCLEBIN'
+'USERS'
+'USER_TABLESPACES'
+'USER'
+'USE_SEMI'
+'USE_STORED_OUTLINES'
+'USE_TTT_FOR_GSETS'
+'USE'
+'USE_VECTOR_AGGREGATION'
+'USE_WEAK_NAME_RESL'
+'USING_NO_EXPAND'
+'USING'
+'UTF16BE'
+'UTF16LE'
+'UTF32'
+'UTF8'
+'V1'
+'V2'
+'VALIDATE'
+'VALIDATION'
+'VALID_TIME_END'
+'VALUES'
+'VALUE'
+'VARCHAR2'
+'VARCHAR'
+'VARIABLE'
+'VAR_POP'
+'VARRAYS'
+'VARRAY'
+'VAR_SAMP'
+'VARYING'
+'VECTOR_READ_TRACE'
+'VECTOR_READ'
+'VECTOR_TRANSFORM_DIMS'
+'VECTOR_TRANSFORM_FACT'
+'VECTOR_TRANSFORM'
+'VERIFIER'
+'VERIFY'
+'VERSIONING'
+'VERSIONS_ENDSCN'
+'VERSIONS_ENDTIME'
+'VERSIONS_OPERATION'
+'VERSIONS_STARTSCN'
+'VERSIONS_STARTTIME'
+'VERSIONS'
+'VERSIONS_XID'
+'VERSION'
+'VIEW'
+'VIOLATION'
+'VIRTUAL'
+'VISIBILITY'
+'VISIBLE'
+'VOLUME'
+'VSIZE'
+'WAIT'
+'WALLET'
+'WARNING'
+'WEEKS'
+'WEEK'
+'WELLFORMED'
+'WHENEVER'
+'WHEN'
+'WHERE'
+'WHILE'
+'WHITESPACE'
+'WIDTH_BUCKET'
+'WITHIN'
+'WITHOUT'
+'WITH_PLSQL'
+'WITH'
+'WORK'
+'WRAPPED'
+'WRAPPER'
+'WRITE'
+'XDB_FASTPATH_INSERT'
+'XDB'
+'X_DYN_PRUNE'
+'XID'
+'XML2OBJECT'
+'XMLAGG'
+'XMLATTRIBUTES'
+'XMLCAST'
+'XMLCDATA'
+'XMLCOLATTVAL'
+'XMLCOMMENT'
+'XMLCONCAT'
+'XMLDIFF'
+'XML_DML_RWT_STMT'
+'XMLELEMENT'
+'XMLEXISTS2'
+'XMLEXISTS'
+'XMLFOREST'
+'XMLINDEX'
+'XMLINDEX_REWRITE_IN_SELECT'
+'XMLINDEX_REWRITE'
+'XMLINDEX_SEL_IDX_TBL'
+'XMLISNODE'
+'XMLISVALID'
+'XMLNAMESPACES'
+'XMLPARSE'
+'XMLPATCH'
+'XMLPI'
+'XMLQUERYVAL'
+'XMLQUERY'
+'XMLROOT'
+'XMLSCHEMA'
+'XMLSERIALIZE'
+'XMLTABLE'
+'XMLTRANSFORMBLOB'
+'XMLTRANSFORM'
+'XMLTYPE'
+'XML'
+'XPATHTABLE'
+'XS_SYS_CONTEXT'
+'XS'
+'XTRANSPORT'
+'YEARS'
+'YEAR'
+'YES'
+'YMINTERVAL_UNCONSTRAINED'
+'ZONEMAP'
+'ZONE'
+'PREDICTION'
+'PREDICTION_BOUNDS'
+'PREDICTION_COST'
+'PREDICTION_DETAILS'
+'PREDICTION_PROBABILITY'
+'PREDICTION_SET'
+'CUME_DIST'
+'DENSE_RANK'
+'LISTAGG'
+'PERCENT_RANK'
+'PERCENTILE_CONT'
+'PERCENTILE_DISC'
+'RANK'
+'AVG'
+'CORR'
+'COVAR_'
+'DECODE'
+'LAG'
+'LEAD'
+'MAX'
+'MEDIAN'
+'MIN'
+'NTILE'
+'NVL'
+'RATIO_TO_REPORT'
+'REGR_'
+'ROUND'
+'ROW_NUMBER'
+'SUBSTR'
+'TO_CHAR'
+'TRIM'
+'SUM'
+'STDDEV'
+'VAR_'
+'VARIANCE'
+'LEAST'
+'GREATEST'
+'TO_DATE'
+null
+null
+null
+'..'
+'.'
+null
+null
+null
+null
+'%'
+'&'
+'('
+')'
+'**'
+'*'
+'+'
+'-'
+','
+'/'
+'@'
+':='
+null
+null
+'^'
+'~'
+'!'
+'>'
+'<'
+':'
+';'
+'|'
+'='
+'['
+']'
+'_'
+null
+null
+null
+null
+null
+null
+null
+
+token symbolic names:
+null
+ABORT
+ABS
+ACCESS
+ACCESSED
+ACCOUNT
+ACL
+ACOS
+ACTION
+ACTIONS
+ACTIVATE
+ACTIVE
+ACTIVE_COMPONENT
+ACTIVE_DATA
+ACTIVE_FUNCTION
+ACTIVE_TAG
+ACTIVITY
+ADAPTIVE_PLAN
+ADD
+ADD_COLUMN
+ADD_GROUP
+ADD_MONTHS
+ADJ_DATE
+ADMIN
+ADMINISTER
+ADMINISTRATOR
+ADVANCED
+ADVISE
+ADVISOR
+AFD_DISKSTRING
+AFTER
+AGENT
+AGGREGATE
+A_LETTER
+ALIAS
+ALL
+ALLOCATE
+ALLOW
+ALL_ROWS
+ALTER
+ALWAYS
+ANALYZE
+ANCILLARY
+AND
+AND_EQUAL
+ANOMALY
+ANSI_REARCH
+ANTIJOIN
+ANY
+ANYSCHEMA
+APPEND
+APPENDCHILDXML
+APPEND_VALUES
+APPLICATION
+APPLY
+APPROX_COUNT_DISTINCT
+ARCHIVAL
+ARCHIVE
+ARCHIVED
+ARCHIVELOG
+ARRAY
+AS
+ASC
+ASCII
+ASCIISTR
+ASIN
+ASIS
+ASSEMBLY
+ASSIGN
+ASSOCIATE
+ASYNC
+ASYNCHRONOUS
+ATAN2
+ATAN
+AT
+ATTRIBUTE
+ATTRIBUTES
+AUDIT
+AUTHENTICATED
+AUTHENTICATION
+AUTHID
+AUTHORIZATION
+AUTOALLOCATE
+AUTO
+AUTOBACKUP
+AUTOEXTEND
+AUTO_LOGIN
+AUTOMATIC
+AUTONOMOUS_TRANSACTION
+AUTO_REOPTIMIZE
+AVAILABILITY
+AVRO
+BACKGROUND
+BACKUP
+BACKUPSET
+BASIC
+BASICFILE
+BATCH
+BATCHSIZE
+BATCH_TABLE_ACCESS_BY_ROWID
+BECOME
+BEFORE
+BEGIN
+BEGINNING
+BEGIN_OUTLINE_DATA
+BEHALF
+BEQUEATH
+BETWEEN
+BFILE
+BFILENAME
+BIGFILE
+BINARY
+BINARY_DOUBLE
+BINARY_DOUBLE_INFINITY
+BINARY_DOUBLE_NAN
+BINARY_FLOAT
+BINARY_FLOAT_INFINITY
+BINARY_FLOAT_NAN
+BINARY_INTEGER
+BIND_AWARE
+BINDING
+BIN_TO_NUM
+BITAND
+BITMAP_AND
+BITMAP
+BITMAPS
+BITMAP_TREE
+BITS
+BLOB
+BLOCK
+BLOCK_RANGE
+BLOCKS
+BLOCKSIZE
+BODY
+BOOLEAN
+BOTH
+BOUND
+BRANCH
+BREADTH
+BROADCAST
+BSON
+BUFFER
+BUFFER_CACHE
+BUFFER_POOL
+BUILD
+BULK
+BY
+BYPASS_RECURSIVE_CHECK
+BYPASS_UJVC
+BYTE
+CACHE
+CACHE_CB
+CACHE_INSTANCES
+CACHE_TEMP_TABLE
+CACHING
+CALCULATED
+CALLBACK
+CALL
+CANCEL
+CANONICAL
+CAPACITY
+CARDINALITY
+CASCADE
+CASE
+CAST
+CATEGORY
+CDBDEFAULT
+CEIL
+CELL_FLASH_CACHE
+CERTIFICATE
+CFILE
+CHAINED
+CHANGE
+CHANGETRACKING
+CHANGE_DUPKEY_ERROR_INDEX
+CHARACTER
+CHAR
+CHAR_CS
+CHARTOROWID
+CHECK_ACL_REWRITE
+CHECK
+CHECKPOINT
+CHILD
+CHOOSE
+CHR
+CHUNK
+CLASS
+CLASSIFIER
+CLEANUP
+CLEAR
+C_LETTER
+CLIENT
+CLOB
+CLONE
+CLOSE_CACHED_OPEN_CURSORS
+CLOSE
+CLUSTER_BY_ROWID
+CLUSTER
+CLUSTER_DETAILS
+CLUSTER_DISTANCE
+CLUSTER_ID
+CLUSTERING
+CLUSTERING_FACTOR
+CLUSTER_PROBABILITY
+CLUSTER_SET
+COALESCE
+COALESCE_SQ
+COARSE
+CO_AUTH_IND
+COLD
+COLLECT
+COLUMNAR
+COLUMN_AUTH_INDICATOR
+COLUMN
+COLUMNS
+COLUMN_STATS
+COLUMN_VALUE
+COMMENT
+COMMIT
+COMMITTED
+COMMON_DATA
+COMPACT
+COMPATIBILITY
+COMPILE
+COMPLETE
+COMPLIANCE
+COMPONENT
+COMPONENTS
+COMPOSE
+COMPOSITE
+COMPOSITE_LIMIT
+COMPOUND
+COMPRESS
+COMPUTE
+CONCAT
+CON_DBID_TO_ID
+CONDITIONAL
+CONDITION
+CONFIRM
+CONFORMING
+CON_GUID_TO_ID
+CON_ID
+CON_NAME_TO_ID
+CONNECT_BY_CB_WHR_ONLY
+CONNECT_BY_COMBINE_SW
+CONNECT_BY_COST_BASED
+CONNECT_BY_ELIM_DUPS
+CONNECT_BY_FILTERING
+CONNECT_BY_ISCYCLE
+CONNECT_BY_ISLEAF
+CONNECT_BY_ROOT
+CONNECT
+CONNECT_TIME
+CONSIDER
+CONSISTENT
+CONSTANT
+CONST
+CONSTRAINT
+CONSTRAINTS
+CONSTRUCTOR
+CONTAINER
+CONTAINER_DATA
+CONTAINERS
+CONTENT
+CONTENTS
+CONTEXT
+CONTINUE
+CONTROLFILE
+CON_UID_TO_ID
+CONVERT
+COOKIE
+COPY
+CORR_K
+CORR_S
+CORRUPTION
+CORRUPT_XID_ALL
+CORRUPT_XID
+COS
+COSH
+COST
+COST_XML_QUERY_REWRITE
+COUNT
+COVAR_POP
+COVAR_SAMP
+CPU_COSTING
+CPU_PER_CALL
+CPU_PER_SESSION
+CRASH
+CREATE
+CREATE_FILE_DEST
+CREATE_STORED_OUTLINES
+CREATION
+CREDENTIAL
+CRITICAL
+CROSS
+CROSSEDITION
+CSCONVERT
+CUBE_AJ
+CUBE
+CUBE_GB
+CUBE_SJ
+CUME_DISTM
+CURRENT
+CURRENT_DATE
+CURRENT_SCHEMA
+CURRENT_TIME
+CURRENT_TIMESTAMP
+CURRENT_USER
+CURRENTV
+CURSOR
+CURSOR_SHARING_EXACT
+CURSOR_SPECIFIC_SEGMENT
+CUSTOMDATUM
+CV
+CYCLE
+DANGLING
+DATABASE
+DATA
+DATAFILE
+DATAFILES
+DATAGUARDCONFIG
+DATAMOVEMENT
+DATAOBJNO
+DATAOBJ_TO_MAT_PARTITION
+DATAOBJ_TO_PARTITION
+DATAPUMP
+DATA_SECURITY_REWRITE_LIMIT
+DATE
+DATE_MODE
+DAY
+DAYS
+DBA
+DBA_RECYCLEBIN
+DBMS_STATS
+DB_ROLE_CHANGE
+DBTIMEZONE
+DB_UNIQUE_NAME
+DB_VERSION
+DDL
+DEALLOCATE
+DEBUG
+DEBUGGER
+DEC
+DECIMAL
+DECLARE
+DECOMPOSE
+DECORRELATE
+DECR
+DECREMENT
+DECRYPT
+DEDUPLICATE
+DEFAULT
+DEFAULTS
+DEFERRABLE
+DEFERRED
+DEFINED
+DEFINE
+DEFINER
+DEGREE
+DELAY
+DELEGATE
+DELETE_ALL
+DELETE
+DELETEXML
+DEMAND
+DENSE_RANKM
+DEPENDENT
+DEPTH
+DEQUEUE
+DEREF
+DEREF_NO_REWRITE
+DESC
+DESTROY
+DETACHED
+DETERMINES
+DETERMINISTIC
+DICTIONARY
+DIMENSION
+DIMENSIONS
+DIRECT_LOAD
+DIRECTORY
+DIRECT_PATH
+DISABLE_ALL
+DISABLE
+DISABLE_PARALLEL_DML
+DISABLE_PRESET
+DISABLE_RPKE
+DISALLOW
+DISASSOCIATE
+DISCARD
+DISCONNECT
+DISK
+DISKGROUP
+DISKGROUP_PLUS
+DISKS
+DISMOUNT
+DISTINCT
+DISTINGUISHED
+DISTRIBUTED
+DISTRIBUTE
+DML
+DML_UPDATE
+DOCFIDELITY
+DOCUMENT
+DOMAIN_INDEX_FILTER
+DOMAIN_INDEX_NO_SORT
+DOMAIN_INDEX_SORT
+DOUBLE
+DOWNGRADE
+DRIVING_SITE
+DROP_COLUMN
+DROP
+DROP_GROUP
+DSINTERVAL_UNCONSTRAINED
+DST_UPGRADE_INSERT_CONV
+DUMP
+DUMPSET
+DUPLICATE
+DV
+DYNAMIC
+DYNAMIC_SAMPLING
+DYNAMIC_SAMPLING_EST_CDN
+EACH
+EDITIONABLE
+EDITION
+EDITIONING
+EDITIONS
+ELEMENT
+ELIM_GROUPBY
+ELIMINATE_JOIN
+ELIMINATE_OBY
+ELIMINATE_OUTER_JOIN
+ELSE
+ELSIF
+EM
+EMPTY_BLOB
+EMPTY_CLOB
+EMPTY
+ENABLE_ALL
+ENABLE
+ENABLE_PARALLEL_DML
+ENABLE_PRESET
+ENCODING
+ENCRYPT
+ENCRYPTION
+END
+END_OUTLINE_DATA
+ENFORCED
+ENFORCE
+ENQUEUE
+ENTERPRISE
+ENTITYESCAPING
+ENTRY
+EQUIPART
+ERR
+ERROR_ARGUMENT
+ERROR
+ERROR_ON_OVERLAP_TIME
+ERRORS
+ESCAPE
+ESTIMATE
+EVAL
+EVALNAME
+EVALUATE
+EVALUATION
+EVENTS
+EVERY
+EXCEPT
+EXCEPTION
+EXCEPTION_INIT
+EXCEPTIONS
+EXCHANGE
+EXCLUDE
+EXCLUDING
+EXCLUSIVE
+EXECUTE
+EXEMPT
+EXISTING
+EXISTS
+EXISTSNODE
+EXIT
+EXPAND_GSET_TO_UNION
+EXPAND_TABLE
+EXP
+EXPIRE
+EXPLAIN
+EXPLOSION
+EXPORT
+EXPR_CORR_CHECK
+EXPRESS
+EXTENDS
+EXTENT
+EXTENTS
+EXTERNAL
+EXTERNALLY
+EXTRACTCLOBXML
+EXTRACT
+EXTRACTVALUE
+EXTRA
+FACILITY
+FACT
+FACTOR
+FACTORIZE_JOIN
+FAILED
+FAILED_LOGIN_ATTEMPTS
+FAILGROUP
+FAILOVER
+FAILURE
+FALSE
+FAMILY
+FAR
+FAST
+FASTSTART
+FBTSCAN
+FEATURE_DETAILS
+FEATURE_ID
+FEATURE_SET
+FEATURE_VALUE
+FETCH
+FILE
+FILE_NAME_CONVERT
+FILESYSTEM_LIKE_LOGGING
+FILTER
+FINAL
+FINE
+FINISH
+FIRST
+FIRSTM
+FIRST_ROWS
+FIRST_VALUE
+FIXED_VIEW_DATA
+FLAGGER
+FLASHBACK
+FLASH_CACHE
+FLOAT
+FLOB
+FLOOR
+FLUSH
+FOLDER
+FOLLOWING
+FOLLOWS
+FORALL
+FORCE
+FORCE_XML_QUERY_REWRITE
+FOREIGN
+FOREVER
+FOR
+FORMAT
+FORWARD
+FRAGMENT_NUMBER
+FREELIST
+FREELISTS
+FREEPOOLS
+FRESH
+FROM
+FROM_TZ
+FULL
+FULL_OUTER_JOIN_TO_OUTER
+FUNCTION
+FUNCTIONS
+GATHER_OPTIMIZER_STATISTICS
+GATHER_PLAN_STATISTICS
+GBY_CONC_ROLLUP
+GBY_PUSHDOWN
+GENERATED
+GET
+GLOBAL
+GLOBALLY
+GLOBAL_NAME
+GLOBAL_TOPIC_ENABLED
+GOTO
+GRANT
+GROUP_BY
+GROUP
+GROUP_ID
+GROUPING
+GROUPING_ID
+GROUPS
+GUARANTEED
+GUARANTEE
+GUARD
+HASH_AJ
+HASH
+HASHKEYS
+HASH_SJ
+HAVING
+HEADER
+HEAP
+HELP
+HEXTORAW
+HEXTOREF
+HIDDEN_KEYWORD
+HIDE
+HIERARCHY
+HIGH
+HINTSET_BEGIN
+HINTSET_END
+HOT
+HOUR
+HWM_BROKERED
+HYBRID
+IDENTIFIED
+IDENTIFIER
+IDENTITY
+IDGENERATORS
+ID
+IDLE_TIME
+IF
+IGNORE
+IGNORE_OPTIM_EMBEDDED_HINTS
+IGNORE_ROW_ON_DUPKEY_INDEX
+IGNORE_WHERE_CLAUSE
+ILM
+IMMEDIATE
+IMPACT
+IMPORT
+INACTIVE
+INCLUDE
+INCLUDE_VERSION
+INCLUDING
+INCREMENTAL
+INCREMENT
+INCR
+INDENT
+INDEX_ASC
+INDEX_COMBINE
+INDEX_DESC
+INDEXED
+INDEXES
+INDEX_FFS
+INDEX_FILTER
+INDEX
+INDEXING
+INDEX_JOIN
+INDEX_ROWS
+INDEX_RRS
+INDEX_RS_ASC
+INDEX_RS_DESC
+INDEX_RS
+INDEX_SCAN
+INDEX_SKIP_SCAN
+INDEX_SS_ASC
+INDEX_SS_DESC
+INDEX_SS
+INDEX_STATS
+INDEXTYPE
+INDEXTYPES
+INDICATOR
+INDICES
+INFINITE
+INFORMATIONAL
+INHERIT
+IN
+INITCAP
+INITIAL
+INITIALIZED
+INITIALLY
+INITRANS
+INLINE
+INLINE_XMLTYPE_NT
+INMEMORY
+IN_MEMORY_METADATA
+INMEMORY_PRUNING
+INNER
+INOUT
+INPLACE
+INSERTCHILDXMLAFTER
+INSERTCHILDXMLBEFORE
+INSERTCHILDXML
+INSERT
+INSERTXMLAFTER
+INSERTXMLBEFORE
+INSTANCE
+INSTANCES
+INSTANTIABLE
+INSTANTLY
+INSTEAD
+INSTR2
+INSTR4
+INSTRB
+INSTRC
+INSTR
+INTEGER
+INTERLEAVED
+INTERMEDIATE
+INTERNAL_CONVERT
+INTERNAL_USE
+INTERPRETED
+INTERSECT
+INTERVAL
+INT
+INTO
+INVALIDATE
+INVISIBLE
+IN_XQUERY
+IS
+ISOLATION
+ISOLATION_LEVEL
+ITERATE
+ITERATION_NUMBER
+JAVA
+JOB
+JOIN
+JSON_ARRAYAGG
+JSON_ARRAY
+JSON_EQUAL
+JSON_EXISTS2
+JSON_EXISTS
+JSONGET
+JSON
+JSON_OBJECTAGG
+JSON_OBJECT
+JSONPARSE
+JSON_QUERY
+JSON_SERIALIZE
+JSON_TABLE
+JSON_TEXTCONTAINS2
+JSON_TEXTCONTAINS
+JSON_VALUE
+KEEP_DUPLICATES
+KEEP
+KERBEROS
+KEY
+KEY_LENGTH
+KEYSIZE
+KEYS
+KEYSTORE
+KILL
+LABEL
+LANGUAGE
+LAST_DAY
+LAST
+LAST_VALUE
+LATERAL
+LAX
+LAYER
+LDAP_REGISTRATION_ENABLED
+LDAP_REGISTRATION
+LDAP_REG_SYNC_INTERVAL
+LEADING
+LEFT
+LENGTH2
+LENGTH4
+LENGTHB
+LENGTHC
+LENGTH
+LESS
+LEVEL
+LEVELS
+LIBRARY
+LIFECYCLE
+LIFE
+LIFETIME
+LIKE2
+LIKE4
+LIKEC
+LIKE_EXPAND
+LIKE
+LIMIT
+LINEAR
+LINK
+LIST
+LN
+LNNVL
+LOAD
+LOB
+LOBNVL
+LOBS
+LOCAL_INDEXES
+LOCAL
+LOCALTIME
+LOCALTIMESTAMP
+LOCATION
+LOCATOR
+LOCKED
+LOCKING
+LOCK
+LOGFILE
+LOGFILES
+LOGGING
+LOGICAL
+LOGICAL_READS_PER_CALL
+LOGICAL_READS_PER_SESSION
+LOG
+LOGMINING
+LOGOFF
+LOGON
+LOG_READ_ONLY_VIOLATIONS
+LONG
+LOOP
+LOWER
+LOW
+LPAD
+LTRIM
+MAIN
+MAKE_REF
+MANAGED
+MANAGE
+MANAGEMENT
+MANAGER
+MANUAL
+MAP
+MAPPING
+MASTER
+MATCHED
+MATCHES
+MATCH
+MATCH_NUMBER
+MATCH_RECOGNIZE
+MATERIALIZED
+MATERIALIZE
+MAXARCHLOGS
+MAXDATAFILES
+MAXEXTENTS
+MAXIMIZE
+MAXINSTANCES
+MAXLOGFILES
+MAXLOGHISTORY
+MAXLOGMEMBERS
+MAX_SHARED_TEMP_SIZE
+MAXSIZE
+MAXTRANS
+MAXVALUE
+MEASURE
+MEASURES
+MEDIUM
+MEMBER
+MEMCOMPRESS
+MEMORY
+MERGEACTIONS
+MERGE_AJ
+MERGE_CONST_ON
+MERGE
+MERGE_SJ
+METADATA
+METHOD
+MIGRATE
+MIGRATION
+MINEXTENTS
+MINIMIZE
+MINIMUM
+MINING
+MINUS
+MINUS_NULL
+MINUTE
+MINVALUE
+MIRRORCOLD
+MIRRORHOT
+MIRROR
+MLSLABEL
+MODEL_COMPILE_SUBQUERY
+MODEL_DONTVERIFY_UNIQUENESS
+MODEL_DYNAMIC_SUBQUERY
+MODEL_MIN_ANALYSIS
+MODEL
+MODEL_NB
+MODEL_NO_ANALYSIS
+MODEL_PBY
+MODEL_PUSH_REF
+MODEL_SV
+MODE
+MODIFICATION
+MODIFY_COLUMN_TYPE
+MODIFY
+MOD
+MODULE
+MONITORING
+MONITOR
+MONTH
+MONTHS_BETWEEN
+MONTHS
+MOUNT
+MOUNTPATH
+MOVEMENT
+MOVE
+MULTIDIMENSIONAL
+MULTISET
+MV_MERGE
+NAMED
+NAME
+NAMESPACE
+NAN
+NANVL
+NATIONAL
+NATIVE_FULL_OUTER_JOIN
+NATIVE
+NATURAL
+NATURALN
+NAV
+NCHAR_CS
+NCHAR
+NCHR
+NCLOB
+NEEDED
+NEG
+NESTED
+NESTED_TABLE_FAST_INSERT
+NESTED_TABLE_GET_REFS
+NESTED_TABLE_ID
+NESTED_TABLE_SET_REFS
+NESTED_TABLE_SET_SETID
+NETWORK
+NEVER
+NEW
+NEW_TIME
+NEXT_DAY
+NEXT
+NL_AJ
+NLJ_BATCHING
+NLJ_INDEX_FILTER
+NLJ_INDEX_SCAN
+NLJ_PREFETCH
+NLS_CALENDAR
+NLS_CHARACTERSET
+NLS_CHARSET_DECL_LEN
+NLS_CHARSET_ID
+NLS_CHARSET_NAME
+NLS_COMP
+NLS_CURRENCY
+NLS_DATE_FORMAT
+NLS_DATE_LANGUAGE
+NLS_INITCAP
+NLS_ISO_CURRENCY
+NL_SJ
+NLS_LANG
+NLS_LANGUAGE
+NLS_LENGTH_SEMANTICS
+NLS_LOWER
+NLS_NCHAR_CONV_EXCP
+NLS_NUMERIC_CHARACTERS
+NLS_SORT
+NLSSORT
+NLS_SPECIAL_CHARS
+NLS_TERRITORY
+NLS_UPPER
+NO_ACCESS
+NO_ADAPTIVE_PLAN
+NO_ANSI_REARCH
+NOAPPEND
+NOARCHIVELOG
+NOAUDIT
+NO_AUTO_REOPTIMIZE
+NO_BASETABLE_MULTIMV_REWRITE
+NO_BATCH_TABLE_ACCESS_BY_ROWID
+NO_BIND_AWARE
+NO_BUFFER
+NOCACHE
+NO_CARTESIAN
+NO_CHECK_ACL_REWRITE
+NO_CLUSTER_BY_ROWID
+NO_CLUSTERING
+NO_COALESCE_SQ
+NO_COMMON_DATA
+NOCOMPRESS
+NO_CONNECT_BY_CB_WHR_ONLY
+NO_CONNECT_BY_COMBINE_SW
+NO_CONNECT_BY_COST_BASED
+NO_CONNECT_BY_ELIM_DUPS
+NO_CONNECT_BY_FILTERING
+NOCOPY
+NO_COST_XML_QUERY_REWRITE
+NO_CPU_COSTING
+NOCPU_COSTING
+NOCYCLE
+NO_DATA_SECURITY_REWRITE
+NO_DECORRELATE
+NODELAY
+NO_DOMAIN_INDEX_FILTER
+NO_DST_UPGRADE_INSERT_CONV
+NO_ELIM_GROUPBY
+NO_ELIMINATE_JOIN
+NO_ELIMINATE_OBY
+NO_ELIMINATE_OUTER_JOIN
+NOENTITYESCAPING
+NO_EXPAND_GSET_TO_UNION
+NO_EXPAND
+NO_EXPAND_TABLE
+NO_FACT
+NO_FACTORIZE_JOIN
+NO_FILTERING
+NOFORCE
+NO_FULL_OUTER_JOIN_TO_OUTER
+NO_GATHER_OPTIMIZER_STATISTICS
+NO_GBY_PUSHDOWN
+NOGUARANTEE
+NO_INDEX_FFS
+NO_INDEX
+NO_INDEX_SS
+NO_INMEMORY
+NO_INMEMORY_PRUNING
+NOKEEP
+NO_LOAD
+NOLOCAL
+NOLOGGING
+NOMAPPING
+NOMAXVALUE
+NO_MERGE
+NOMINIMIZE
+NOMINVALUE
+NO_MODEL_PUSH_REF
+NO_MONITORING
+NOMONITORING
+NO_MONITOR
+NO_MULTIMV_REWRITE
+NO_NATIVE_FULL_OUTER_JOIN
+NONBLOCKING
+NONEDITIONABLE
+NONE
+NO_NLJ_BATCHING
+NO_NLJ_PREFETCH
+NO
+NONSCHEMA
+NO_OBJECT_LINK
+NOORDER
+NO_ORDER_ROLLUPS
+NO_OUTER_JOIN_TO_ANTI
+NO_OUTER_JOIN_TO_INNER
+NOOVERRIDE
+NO_PARALLEL_INDEX
+NOPARALLEL_INDEX
+NO_PARALLEL
+NOPARALLEL
+NO_PARTIAL_COMMIT
+NO_PARTIAL_JOIN
+NO_PARTIAL_ROLLUP_PUSHDOWN
+NOPARTITION
+NO_PLACE_DISTINCT
+NO_PLACE_GROUP_BY
+NO_PQ_CONCURRENT_UNION
+NO_PQ_MAP
+NO_PQ_REPLICATE
+NO_PQ_SKEW
+NO_PRUNE_GSETS
+NO_PULL_PRED
+NO_PUSH_PRED
+NO_PUSH_SUBQ
+NO_PX_FAULT_TOLERANCE
+NO_PX_JOIN_FILTER
+NO_QKN_BUFF
+NO_QUERY_TRANSFORMATION
+NO_REF_CASCADE
+NORELOCATE
+NORELY
+NOREPAIR
+NOREPLAY
+NORESETLOGS
+NO_RESULT_CACHE
+NOREVERSE
+NO_REWRITE
+NOREWRITE
+NORMAL
+NO_ROOT_SW_FOR_LOCAL
+NOROWDEPENDENCIES
+NOSCHEMACHECK
+NOSEGMENT
+NO_SEMIJOIN
+NO_SEMI_TO_INNER
+NO_SET_TO_JOIN
+NOSORT
+NO_SQL_TRANSLATION
+NO_SQL_TUNE
+NO_STAR_TRANSFORMATION
+NO_STATEMENT_QUEUING
+NO_STATS_GSETS
+NOSTRICT
+NO_SUBQUERY_PRUNING
+NO_SUBSTRB_PAD
+NO_SWAP_JOIN_INPUTS
+NOSWITCH
+NO_TABLE_LOOKUP_BY_NL
+NO_TEMP_TABLE
+NOTHING
+NOTIFICATION
+NOT
+NO_TRANSFORM_DISTINCT_AGG
+NO_UNNEST
+NO_USE_CUBE
+NO_USE_HASH_AGGREGATION
+NO_USE_HASH_GBY_FOR_PUSHDOWN
+NO_USE_HASH
+NO_USE_INVISIBLE_INDEXES
+NO_USE_MERGE
+NO_USE_NL
+NO_USE_VECTOR_AGGREGATION
+NOVALIDATE
+NO_VECTOR_TRANSFORM_DIMS
+NO_VECTOR_TRANSFORM_FACT
+NO_VECTOR_TRANSFORM
+NOWAIT
+NO_XDB_FASTPATH_INSERT
+NO_XML_DML_REWRITE
+NO_XMLINDEX_REWRITE_IN_SELECT
+NO_XMLINDEX_REWRITE
+NO_XML_QUERY_REWRITE
+NO_ZONEMAP
+NTH_VALUE
+NULLIF
+NULL_
+NULLS
+NUMBER
+NUMERIC
+NUM_INDEX_KEYS
+NUMTODSINTERVAL
+NUMTOYMINTERVAL
+NVARCHAR2
+NVL2
+OBJECT2XML
+OBJECT
+OBJ_ID
+OBJNO
+OBJNO_REUSE
+OCCURENCES
+OFFLINE
+OFF
+OFFSET
+OF
+OIDINDEX
+OID
+OLAP
+OLD
+OLD_PUSH_PRED
+OLS
+OLTP
+OMIT
+ONE
+ONLINE
+ONLINELOG
+ONLY
+ON
+OPAQUE
+OPAQUE_TRANSFORM
+OPAQUE_XCANONICAL
+OPCODE
+OPEN
+OPERATIONS
+OPERATOR
+OPT_ESTIMATE
+OPTIMAL
+OPTIMIZE
+OPTIMIZER_FEATURES_ENABLE
+OPTIMIZER_GOAL
+OPTION
+OPT_PARAM
+ORA_BRANCH
+ORA_CHECK_ACL
+ORA_CHECK_PRIVILEGE
+ORA_CLUSTERING
+ORADATA
+ORADEBUG
+ORA_DST_AFFECTED
+ORA_DST_CONVERT
+ORA_DST_ERROR
+ORA_GET_ACLIDS
+ORA_GET_PRIVILEGES
+ORA_HASH
+ORA_INVOKING_USERID
+ORA_INVOKING_USER
+ORA_INVOKING_XS_USER_GUID
+ORA_INVOKING_XS_USER
+ORA_RAWCOMPARE
+ORA_RAWCONCAT
+ORA_ROWSCN
+ORA_ROWSCN_RAW
+ORA_ROWVERSION
+ORA_TABVERSION
+ORA_WRITE_TIME
+ORDERED
+ORDERED_PREDICATES
+ORDER
+ORDINALITY
+OR_EXPAND
+ORGANIZATION
+OR
+OR_PREDICATES
+OSERROR
+OTHER
+OUTER_JOIN_TO_ANTI
+OUTER_JOIN_TO_INNER
+OUTER
+OUTLINE_LEAF
+OUTLINE
+OUT_OF_LINE
+OUT
+OVERFLOW_NOMOVE
+OVERFLOW
+OVERLAPS
+OVER
+OVERRIDING
+OWNER
+OWNERSHIP
+OWN
+PACKAGE
+PACKAGES
+PARALLEL_ENABLE
+PARALLEL_INDEX
+PARALLEL
+PARAMETERFILE
+PARAMETERS
+PARAM
+PARENT
+PARITY
+PARTIAL_JOIN
+PARTIALLY
+PARTIAL
+PARTIAL_ROLLUP_PUSHDOWN
+PARTITION_HASH
+PARTITION_LIST
+PARTITION
+PARTITION_RANGE
+PARTITIONS
+PARTNUMINST
+PASSING
+PASSWORD_GRACE_TIME
+PASSWORD_LIFE_TIME
+PASSWORD_LOCK_TIME
+PASSWORD
+PASSWORD_REUSE_MAX
+PASSWORD_REUSE_TIME
+PASSWORD_VERIFY_FUNCTION
+PAST
+PATCH
+PATH
+PATH_PREFIX
+PATHS
+PATTERN
+PBL_HS_BEGIN
+PBL_HS_END
+PCTFREE
+PCTINCREASE
+PCTTHRESHOLD
+PCTUSED
+PCTVERSION
+PENDING
+PERCENT_FOUND
+PERCENT_ISOPEN
+PERCENT_NOTFOUND
+PERCENT_KEYWORD
+PERCENT_RANKM
+PERCENT_ROWCOUNT
+PERCENT_ROWTYPE
+PERCENT_TYPE
+PERFORMANCE
+PERIOD_KEYWORD
+PERMANENT
+PERMISSION
+PERMUTE
+PER
+PFILE
+PHYSICAL
+PIKEY
+PIPELINED
+PIPE
+PIV_GB
+PIVOT
+PIV_SSF
+PLACE_DISTINCT
+PLACE_GROUP_BY
+PLAN
+PLSCOPE_SETTINGS
+PLS_INTEGER
+PLSQL_CCFLAGS
+PLSQL_CODE_TYPE
+PLSQL_DEBUG
+PLSQL_OPTIMIZE_LEVEL
+PLSQL_WARNINGS
+PLUGGABLE
+POINT
+POLICY
+POOL_16K
+POOL_2K
+POOL_32K
+POOL_4K
+POOL_8K
+POSITIVEN
+POSITIVE
+POST_TRANSACTION
+POWERMULTISET_BY_CARDINALITY
+POWERMULTISET
+POWER
+PQ_CONCURRENT_UNION
+PQ_DISTRIBUTE
+PQ_DISTRIBUTE_WINDOW
+PQ_FILTER
+PQ_MAP
+PQ_NOMAP
+PQ_REPLICATE
+PQ_SKEW
+PRAGMA
+PREBUILT
+PRECEDES
+PRECEDING
+PRECISION
+PRECOMPUTE_SUBQUERY
+PREDICATE_REORDERS
+PRELOAD
+PREPARE
+PRESENTNNV
+PRESENT
+PRESENTV
+PRESERVE_OID
+PRESERVE
+PRETTY
+PREVIOUS
+PREV
+PRIMARY
+PRINTBLOBTOCLOB
+PRIORITY
+PRIOR
+PRIVATE
+PRIVATE_SGA
+PRIVILEGED
+PRIVILEGE
+PRIVILEGES
+PROCEDURAL
+PROCEDURE
+PROCESS
+PROFILE
+PROGRAM
+PROJECT
+PROPAGATE
+PROTECTED
+PROTECTION
+PROXY
+PRUNING
+PUBLIC
+PULL_PRED
+PURGE
+PUSH_PRED
+PUSH_SUBQ
+PX_FAULT_TOLERANCE
+PX_GRANULE
+PX_JOIN_FILTER
+QB_NAME
+QUERY_BLOCK
+QUERY
+QUEUE_CURR
+QUEUE
+QUEUE_ROWP
+QUIESCE
+QUORUM
+QUOTA
+RAISE
+RANDOM_LOCAL
+RANDOM
+RANGE
+RANKM
+RAPIDLY
+RAW
+RAWTOHEX
+RAWTONHEX
+RBA
+RBO_OUTLINE
+RDBA
+READ
+READS
+REALM
+REAL
+REBALANCE
+REBUILD
+RECORD
+RECORDS_PER_BLOCK
+RECOVERABLE
+RECOVER
+RECOVERY
+RECYCLEBIN
+RECYCLE
+REDACTION
+REDEFINE
+REDO
+REDUCED
+REDUNDANCY
+REF_CASCADE_CURSOR
+REFERENCED
+REFERENCE
+REFERENCES
+REFERENCING
+REF
+REFRESH
+REFTOHEX
+REGEXP_COUNT
+REGEXP_INSTR
+REGEXP_LIKE
+REGEXP_REPLACE
+REGEXP_SUBSTR
+REGISTER
+REGR_AVGX
+REGR_AVGY
+REGR_COUNT
+REGR_INTERCEPT
+REGR_R2
+REGR_SLOPE
+REGR_SXX
+REGR_SXY
+REGR_SYY
+REGULAR
+REJECT
+REKEY
+RELATIONAL
+RELIES_ON
+RELOCATE
+RELY
+REMAINDER
+REMOTE_MAPPED
+REMOVE
+RENAME
+REPAIR
+REPEAT
+REPLACE
+REPLICATION
+REQUIRED
+RESETLOGS
+RESET
+RESIZE
+RESOLVE
+RESOLVER
+RESOURCE
+RESPECT
+RESTART
+RESTORE_AS_INTERVALS
+RESTORE
+RESTRICT_ALL_REF_CONS
+RESTRICTED
+RESTRICT_REFERENCES
+RESTRICT
+RESULT_CACHE
+RESULT
+RESUMABLE
+RESUME
+RETENTION
+RETRY_ON_ROW_CHANGE
+RETURNING
+RETURN
+REUSE
+REVERSE
+REVOKE
+REWRITE_OR_ERROR
+REWRITE
+RIGHT
+ROLE
+ROLESET
+ROLES
+ROLLBACK
+ROLLING
+ROLLUP
+ROWDEPENDENCIES
+ROWID_MAPPING_TABLE
+ROWID
+ROWIDTOCHAR
+ROWIDTONCHAR
+ROW_LENGTH
+ROWNUM
+ROW
+ROWS
+RPAD
+RTRIM
+RULE
+RULES
+RUNNING
+SALT
+SAMPLE
+SAVE_AS_INTERVALS
+SAVEPOINT
+SAVE
+SB4
+SCALE_ROWS
+SCALE
+SCAN_INSTANCES
+SCAN
+SCHEDULER
+SCHEMACHECK
+SCHEMA
+SCN_ASCENDING
+SCN
+SCOPE
+SCRUB
+SD_ALL
+SD_INHIBIT
+SDO_GEOM_MBR
+SD_SHOW
+SEARCH
+SECOND
+SECRET
+SECUREFILE_DBA
+SECUREFILE
+SECURITY
+SEED
+SEG_BLOCK
+SEG_FILE
+SEGMENT
+SELECTIVITY
+SELECT
+SELF
+SEMIJOIN_DRIVER
+SEMIJOIN
+SEMI_TO_INNER
+SEQUENCED
+SEQUENCE
+SEQUENTIAL
+SEQ
+SERIALIZABLE
+SERIALLY_REUSABLE
+SERIAL
+SERVERERROR
+SERVICE_NAME_CONVERT
+SERVICES
+SESSION_CACHED_CURSORS
+SESSION
+SESSIONS_PER_USER
+SESSIONTIMEZONE
+SESSIONTZNAME
+SET
+SETS
+SETTINGS
+SET_TO_JOIN
+SEVERE
+SHARED_POOL
+SHARED
+SHARE
+SHARING
+SHELFLIFE
+SHOW
+SHRINK
+SHUTDOWN
+SIBLINGS
+SID
+SIGNAL_COMPONENT
+SIGNAL_FUNCTION
+SIGN
+SIGNTYPE
+SIMPLE_INTEGER
+SIMPLE
+SINGLE
+SINGLETASK
+SINH
+SIN
+SIZE
+SKIP_EXT_OPTIMIZER
+SKIP_
+SKIP_UNQ_UNUSABLE_IDX
+SKIP_UNUSABLE_INDEXES
+SMALLFILE
+SMALLINT
+SNAPSHOT
+SOME
+SORT
+SOUNDEX
+SOURCE_FILE_DIRECTORY
+SOURCE_FILE_NAME_CONVERT
+SOURCE
+SPACE_KEYWORD
+SPECIFICATION
+SPFILE
+SPLIT
+SPREADSHEET
+SQLDATA
+SQLERROR
+SQLLDR
+SQL
+SQL_TRACE
+SQL_TRANSLATION_PROFILE
+SQRT
+STALE
+STANDALONE
+STANDARD_HASH
+STANDBY_MAX_DATA_DELAY
+STANDBYS
+STANDBY
+STAR
+STAR_TRANSFORMATION
+START
+STARTUP
+STATEMENT_ID
+STATEMENT_QUEUING
+STATEMENTS
+STATEMENT
+STATE
+STATIC
+STATISTICS
+STATS_BINOMIAL_TEST
+STATS_CROSSTAB
+STATS_F_TEST
+STATS_KS_TEST
+STATS_MODE
+STATS_MW_TEST
+STATS_ONE_WAY_ANOVA
+STATS_T_TEST_INDEP
+STATS_T_TEST_INDEPU
+STATS_T_TEST_ONE
+STATS_T_TEST_PAIRED
+STATS_WSR_TEST
+STDDEV_POP
+STDDEV_SAMP
+STOP
+STORAGE
+STORE
+STREAMS
+STREAM
+STRICT
+STRING
+STRIPE_COLUMNS
+STRIPE_WIDTH
+STRIP
+STRUCTURE
+SUBMULTISET
+SUBPARTITION_REL
+SUBPARTITIONS
+SUBPARTITION
+SUBQUERIES
+SUBQUERY_PRUNING
+SUBSCRIBE
+SUBSET
+SUBSTITUTABLE
+SUBSTR2
+SUBSTR4
+SUBSTRB
+SUBSTRC
+SUBTYPE
+SUCCESSFUL
+SUCCESS
+SUMMARY
+SUPPLEMENTAL
+SUSPEND
+SWAP_JOIN_INPUTS
+SWITCHOVER
+SWITCH
+SYNCHRONOUS
+SYNC
+SYNONYM
+SYSASM
+SYS_AUDIT
+SYSAUX
+SYSBACKUP
+SYS_CHECKACL
+SYS_CHECK_PRIVILEGE
+SYS_CONNECT_BY_PATH
+SYS_CONTEXT
+SYSDATE
+SYSDBA
+SYS_DBURIGEN
+SYSDG
+SYS_DL_CURSOR
+SYS_DM_RXFORM_CHR
+SYS_DM_RXFORM_NUM
+SYS_DOM_COMPARE
+SYS_DST_PRIM2SEC
+SYS_DST_SEC2PRIM
+SYS_ET_BFILE_TO_RAW
+SYS_ET_BLOB_TO_IMAGE
+SYS_ET_IMAGE_TO_BLOB
+SYS_ET_RAW_TO_BFILE
+SYS_EXTPDTXT
+SYS_EXTRACT_UTC
+SYS_FBT_INSDEL
+SYS_FILTER_ACLS
+SYS_FNMATCHES
+SYS_FNREPLACE
+SYS_GET_ACLIDS
+SYS_GET_COL_ACLIDS
+SYS_GET_PRIVILEGES
+SYS_GETTOKENID
+SYS_GETXTIVAL
+SYS_GUID
+SYSGUID
+SYSKM
+SYS_MAKE_XMLNODEID
+SYS_MAKEXML
+SYS_MKXMLATTR
+SYS_MKXTI
+SYSOBJ
+SYS_OP_ADT2BIN
+SYS_OP_ADTCONS
+SYS_OP_ALSCRVAL
+SYS_OP_ATG
+SYS_OP_BIN2ADT
+SYS_OP_BITVEC
+SYS_OP_BL2R
+SYS_OP_BLOOM_FILTER_LIST
+SYS_OP_BLOOM_FILTER
+SYS_OP_C2C
+SYS_OP_CAST
+SYS_OP_CEG
+SYS_OP_CL2C
+SYS_OP_COMBINED_HASH
+SYS_OP_COMP
+SYS_OP_CONVERT
+SYS_OP_COUNTCHG
+SYS_OP_CSCONV
+SYS_OP_CSCONVTEST
+SYS_OP_CSR
+SYS_OP_CSX_PATCH
+SYS_OP_CYCLED_SEQ
+SYS_OP_DECOMP
+SYS_OP_DESCEND
+SYS_OP_DISTINCT
+SYS_OP_DRA
+SYS_OP_DUMP
+SYS_OP_DV_CHECK
+SYS_OP_ENFORCE_NOT_NULL
+SYSOPER
+SYS_OP_EXTRACT
+SYS_OP_GROUPING
+SYS_OP_GUID
+SYS_OP_HASH
+SYS_OP_IIX
+SYS_OP_ITR
+SYS_OP_KEY_VECTOR_CREATE
+SYS_OP_KEY_VECTOR_FILTER_LIST
+SYS_OP_KEY_VECTOR_FILTER
+SYS_OP_KEY_VECTOR_SUCCEEDED
+SYS_OP_KEY_VECTOR_USE
+SYS_OP_LBID
+SYS_OP_LOBLOC2BLOB
+SYS_OP_LOBLOC2CLOB
+SYS_OP_LOBLOC2ID
+SYS_OP_LOBLOC2NCLOB
+SYS_OP_LOBLOC2TYP
+SYS_OP_LSVI
+SYS_OP_LVL
+SYS_OP_MAKEOID
+SYS_OP_MAP_NONNULL
+SYS_OP_MSR
+SYS_OP_NICOMBINE
+SYS_OP_NIEXTRACT
+SYS_OP_NII
+SYS_OP_NIX
+SYS_OP_NOEXPAND
+SYS_OP_NTCIMG
+SYS_OP_NUMTORAW
+SYS_OP_OIDVALUE
+SYS_OP_OPNSIZE
+SYS_OP_PAR_1
+SYS_OP_PARGID_1
+SYS_OP_PARGID
+SYS_OP_PAR
+SYS_OP_PART_ID
+SYS_OP_PIVOT
+SYS_OP_R2O
+SYS_OP_RAWTONUM
+SYS_OP_RDTM
+SYS_OP_REF
+SYS_OP_RMTD
+SYS_OP_ROWIDTOOBJ
+SYS_OP_RPB
+SYS_OPTLOBPRBSC
+SYS_OP_TOSETID
+SYS_OP_TPR
+SYS_OP_TRTB
+SYS_OPTXICMP
+SYS_OPTXQCASTASNQ
+SYS_OP_UNDESCEND
+SYS_OP_VECAND
+SYS_OP_VECBIT
+SYS_OP_VECOR
+SYS_OP_VECXOR
+SYS_OP_VERSION
+SYS_OP_VREF
+SYS_OP_VVD
+SYS_OP_XMLCONS_FOR_CSX
+SYS_OP_XPTHATG
+SYS_OP_XPTHIDX
+SYS_OP_XPTHOP
+SYS_OP_XTXT2SQLT
+SYS_OP_ZONE_ID
+SYS_ORDERKEY_DEPTH
+SYS_ORDERKEY_MAXCHILD
+SYS_ORDERKEY_PARENT
+SYS_PARALLEL_TXN
+SYS_PATHID_IS_ATTR
+SYS_PATHID_IS_NMSPC
+SYS_PATHID_LASTNAME
+SYS_PATHID_LASTNMSPC
+SYS_PATH_REVERSE
+SYS_PXQEXTRACT
+SYS_RAW_TO_XSID
+SYS_RID_ORDER
+SYS_ROW_DELTA
+SYS_SC_2_XMLT
+SYS_SYNRCIREDO
+SYSTEM_DEFINED
+SYSTEM
+SYSTIMESTAMP
+SYS_TYPEID
+SYS_UMAKEXML
+SYS_XMLANALYZE
+SYS_XMLCONTAINS
+SYS_XMLCONV
+SYS_XMLEXNSURI
+SYS_XMLGEN
+SYS_XMLI_LOC_ISNODE
+SYS_XMLI_LOC_ISTEXT
+SYS_XMLINSTR
+SYS_XMLLOCATOR_GETSVAL
+SYS_XMLNODEID_GETCID
+SYS_XMLNODEID_GETLOCATOR
+SYS_XMLNODEID_GETOKEY
+SYS_XMLNODEID_GETPATHID
+SYS_XMLNODEID_GETPTRID
+SYS_XMLNODEID_GETRID
+SYS_XMLNODEID_GETSVAL
+SYS_XMLNODEID_GETTID
+SYS_XMLNODEID
+SYS_XMLT_2_SC
+SYS_XMLTRANSLATE
+SYS_XMLTYPE2SQL
+SYS_XQ_ASQLCNV
+SYS_XQ_ATOMCNVCHK
+SYS_XQBASEURI
+SYS_XQCASTABLEERRH
+SYS_XQCODEP2STR
+SYS_XQCODEPEQ
+SYS_XQCON2SEQ
+SYS_XQCONCAT
+SYS_XQDELETE
+SYS_XQDFLTCOLATION
+SYS_XQDOC
+SYS_XQDOCURI
+SYS_XQDURDIV
+SYS_XQED4URI
+SYS_XQENDSWITH
+SYS_XQERRH
+SYS_XQERR
+SYS_XQESHTMLURI
+SYS_XQEXLOBVAL
+SYS_XQEXSTWRP
+SYS_XQEXTRACT
+SYS_XQEXTRREF
+SYS_XQEXVAL
+SYS_XQFB2STR
+SYS_XQFNBOOL
+SYS_XQFNCMP
+SYS_XQFNDATIM
+SYS_XQFNLNAME
+SYS_XQFNNM
+SYS_XQFNNSURI
+SYS_XQFNPREDTRUTH
+SYS_XQFNQNM
+SYS_XQFNROOT
+SYS_XQFORMATNUM
+SYS_XQFTCONTAIN
+SYS_XQFUNCR
+SYS_XQGETCONTENT
+SYS_XQINDXOF
+SYS_XQINSERT
+SYS_XQINSPFX
+SYS_XQIRI2URI
+SYS_XQLANG
+SYS_XQLLNMFRMQNM
+SYS_XQMKNODEREF
+SYS_XQNILLED
+SYS_XQNODENAME
+SYS_XQNORMSPACE
+SYS_XQNORMUCODE
+SYS_XQ_NRNG
+SYS_XQNSP4PFX
+SYS_XQNSPFRMQNM
+SYS_XQPFXFRMQNM
+SYS_XQ_PKSQL2XML
+SYS_XQPOLYABS
+SYS_XQPOLYADD
+SYS_XQPOLYCEL
+SYS_XQPOLYCSTBL
+SYS_XQPOLYCST
+SYS_XQPOLYDIV
+SYS_XQPOLYFLR
+SYS_XQPOLYMOD
+SYS_XQPOLYMUL
+SYS_XQPOLYRND
+SYS_XQPOLYSQRT
+SYS_XQPOLYSUB
+SYS_XQPOLYUMUS
+SYS_XQPOLYUPLS
+SYS_XQPOLYVEQ
+SYS_XQPOLYVGE
+SYS_XQPOLYVGT
+SYS_XQPOLYVLE
+SYS_XQPOLYVLT
+SYS_XQPOLYVNE
+SYS_XQREF2VAL
+SYS_XQRENAME
+SYS_XQREPLACE
+SYS_XQRESVURI
+SYS_XQRNDHALF2EVN
+SYS_XQRSLVQNM
+SYS_XQRYENVPGET
+SYS_XQRYVARGET
+SYS_XQRYWRP
+SYS_XQSEQ2CON4XC
+SYS_XQSEQ2CON
+SYS_XQSEQDEEPEQ
+SYS_XQSEQINSB
+SYS_XQSEQRM
+SYS_XQSEQRVS
+SYS_XQSEQSUB
+SYS_XQSEQTYPMATCH
+SYS_XQSTARTSWITH
+SYS_XQSTATBURI
+SYS_XQSTR2CODEP
+SYS_XQSTRJOIN
+SYS_XQSUBSTRAFT
+SYS_XQSUBSTRBEF
+SYS_XQTOKENIZE
+SYS_XQTREATAS
+SYS_XQ_UPKXML2SQL
+SYS_XQXFORM
+SYS_XSID_TO_RAW
+SYS_ZMAP_FILTER
+SYS_ZMAP_REFRESH
+TABLE_LOOKUP_BY_NL
+TABLESPACE_NO
+TABLESPACE
+TABLES
+TABLE_STATS
+TABLE
+TABNO
+TAG
+TANH
+TAN
+TBLORIDXPARTNUM
+TEMPFILE
+TEMPLATE
+TEMPORARY
+TEMP_TABLE
+TEST
+TEXT
+THAN
+THEN
+THE
+THREAD
+THROUGH
+TIER
+TIES
+TIMEOUT
+TIMESTAMP_LTZ_UNCONSTRAINED
+TIMESTAMP
+TIMESTAMP_TZ_UNCONSTRAINED
+TIMESTAMP_UNCONSTRAINED
+TIMES
+TIME
+TIMEZONE
+TIMEZONE_ABBR
+TIMEZONE_HOUR
+TIMEZONE_MINUTE
+TIMEZONE_OFFSET
+TIMEZONE_REGION
+TIME_ZONE
+TIV_GB
+TIV_SSF
+TO_ACLID
+TO_BINARY_DOUBLE
+TO_BINARY_FLOAT
+TO_BLOB
+TO_CLOB
+TO_DSINTERVAL
+TO_LOB
+TO_MULTI_BYTE
+TO_NCHAR
+TO_NCLOB
+TO_NUMBER
+TOPLEVEL
+TO_SINGLE_BYTE
+TO_TIMESTAMP
+TO_TIMESTAMP_TZ
+TO_TIME
+TO_TIME_TZ
+TO
+TO_YMINTERVAL
+TRACE
+TRACING
+TRACKING
+TRAILING
+TRANSACTION
+TRANSFORM_DISTINCT_AGG
+TRANSITIONAL
+TRANSITION
+TRANSLATE
+TRANSLATION
+TREAT
+TRIGGERS
+TRIGGER
+TRUE
+TRUNCATE
+TRUNC
+TRUSTED
+TRUST
+TUNING
+TX
+TYPES
+TYPE
+TZ_OFFSET
+UB2
+UBA
+UCS2
+UID
+UNARCHIVED
+UNBOUNDED
+UNBOUND
+UNCONDITIONAL
+UNDER
+UNDO
+UNDROP
+UNIFORM
+UNION
+UNIQUE
+UNISTR
+UNLIMITED
+UNLOAD
+UNLOCK
+UNMATCHED
+UNNEST_INNERJ_DISTINCT_VIEW
+UNNEST_NOSEMIJ_NODISTINCTVIEW
+UNNEST_SEMIJ_VIEW
+UNNEST
+UNPACKED
+UNPIVOT
+UNPLUG
+UNPROTECTED
+UNQUIESCE
+UNRECOVERABLE
+UNRESTRICTED
+UNSUBSCRIBE
+UNTIL
+UNUSABLE
+UNUSED
+UPDATABLE
+UPDATED
+UPDATE
+UPDATEXML
+UPD_INDEXES
+UPD_JOININDEX
+UPGRADE
+UPPER
+UPSERT
+UROWID
+USABLE
+USAGE
+USE_ANTI
+USE_CONCAT
+USE_CUBE
+USE_HASH_AGGREGATION
+USE_HASH_GBY_FOR_PUSHDOWN
+USE_HASH
+USE_HIDDEN_PARTITIONS
+USE_INVISIBLE_INDEXES
+USE_MERGE_CARTESIAN
+USE_MERGE
+USE_NL
+USE_NL_WITH_INDEX
+USE_PRIVATE_OUTLINES
+USER_DATA
+USER_DEFINED
+USERENV
+USERGROUP
+USER_RECYCLEBIN
+USERS
+USER_TABLESPACES
+USER
+USE_SEMI
+USE_STORED_OUTLINES
+USE_TTT_FOR_GSETS
+USE
+USE_VECTOR_AGGREGATION
+USE_WEAK_NAME_RESL
+USING_NO_EXPAND
+USING
+UTF16BE
+UTF16LE
+UTF32
+UTF8
+V1
+V2
+VALIDATE
+VALIDATION
+VALID_TIME_END
+VALUES
+VALUE
+VARCHAR2
+VARCHAR
+VARIABLE
+VAR_POP
+VARRAYS
+VARRAY
+VAR_SAMP
+VARYING
+VECTOR_READ_TRACE
+VECTOR_READ
+VECTOR_TRANSFORM_DIMS
+VECTOR_TRANSFORM_FACT
+VECTOR_TRANSFORM
+VERIFIER
+VERIFY
+VERSIONING
+VERSIONS_ENDSCN
+VERSIONS_ENDTIME
+VERSIONS_OPERATION
+VERSIONS_STARTSCN
+VERSIONS_STARTTIME
+VERSIONS
+VERSIONS_XID
+VERSION
+VIEW
+VIOLATION
+VIRTUAL
+VISIBILITY
+VISIBLE
+VOLUME
+VSIZE
+WAIT
+WALLET
+WARNING
+WEEKS
+WEEK
+WELLFORMED
+WHENEVER
+WHEN
+WHERE
+WHILE
+WHITESPACE
+WIDTH_BUCKET
+WITHIN
+WITHOUT
+WITH_PLSQL
+WITH
+WORK
+WRAPPED
+WRAPPER
+WRITE
+XDB_FASTPATH_INSERT
+XDB
+X_DYN_PRUNE
+XID
+XML2OBJECT
+XMLAGG
+XMLATTRIBUTES
+XMLCAST
+XMLCDATA
+XMLCOLATTVAL
+XMLCOMMENT
+XMLCONCAT
+XMLDIFF
+XML_DML_RWT_STMT
+XMLELEMENT
+XMLEXISTS2
+XMLEXISTS
+XMLFOREST
+XMLINDEX
+XMLINDEX_REWRITE_IN_SELECT
+XMLINDEX_REWRITE
+XMLINDEX_SEL_IDX_TBL
+XMLISNODE
+XMLISVALID
+XMLNAMESPACES
+XMLPARSE
+XMLPATCH
+XMLPI
+XMLQUERYVAL
+XMLQUERY
+XMLROOT
+XMLSCHEMA
+XMLSERIALIZE
+XMLTABLE
+XMLTRANSFORMBLOB
+XMLTRANSFORM
+XMLTYPE
+XML
+XPATHTABLE
+XS_SYS_CONTEXT
+XS
+XTRANSPORT
+YEARS
+YEAR
+YES
+YMINTERVAL_UNCONSTRAINED
+ZONEMAP
+ZONE
+PREDICTION
+PREDICTION_BOUNDS
+PREDICTION_COST
+PREDICTION_DETAILS
+PREDICTION_PROBABILITY
+PREDICTION_SET
+CUME_DIST
+DENSE_RANK
+LISTAGG
+PERCENT_RANK
+PERCENTILE_CONT
+PERCENTILE_DISC
+RANK
+AVG
+CORR
+COVAR_
+DECODE
+LAG
+LEAD
+MAX
+MEDIAN
+MIN
+NTILE
+NVL
+RATIO_TO_REPORT
+REGR_
+ROUND
+ROW_NUMBER
+SUBSTR
+TO_CHAR
+TRIM
+SUM
+STDDEV
+VAR_
+VARIANCE
+LEAST
+GREATEST
+TO_DATE
+NATIONAL_CHAR_STRING_LIT
+BIT_STRING_LIT
+HEX_STRING_LIT
+DOUBLE_PERIOD
+PERIOD
+UNSIGNED_INTEGER
+APPROXIMATE_NUM_LIT
+CHAR_STRING
+DELIMITED_ID
+PERCENT
+AMPERSAND
+LEFT_PAREN
+RIGHT_PAREN
+DOUBLE_ASTERISK
+ASTERISK
+PLUS_SIGN
+MINUS_SIGN
+COMMA
+SOLIDUS
+AT_SIGN
+ASSIGN_OP
+BINDVAR
+NOT_EQUAL_OP
+CARRET_OPERATOR_PART
+TILDE_OPERATOR_PART
+EXCLAMATION_OPERATOR_PART
+GREATER_THAN_OP
+LESS_THAN_OP
+COLON
+SEMICOLON
+BAR
+EQUALS_OP
+LEFT_BRACKET
+RIGHT_BRACKET
+INTRODUCER
+SINGLE_LINE_COMMENT
+MULTI_LINE_COMMENT
+REMARK_COMMENT
+PROMPT_MESSAGE
+START_CMD
+REGULAR_ID
+SPACES
+
+rule names:
+ABORT
+ABS
+ACCESS
+ACCESSED
+ACCOUNT
+ACL
+ACOS
+ACTION
+ACTIONS
+ACTIVATE
+ACTIVE
+ACTIVE_COMPONENT
+ACTIVE_DATA
+ACTIVE_FUNCTION
+ACTIVE_TAG
+ACTIVITY
+ADAPTIVE_PLAN
+ADD
+ADD_COLUMN
+ADD_GROUP
+ADD_MONTHS
+ADJ_DATE
+ADMIN
+ADMINISTER
+ADMINISTRATOR
+ADVANCED
+ADVISE
+ADVISOR
+AFD_DISKSTRING
+AFTER
+AGENT
+AGGREGATE
+A_LETTER
+ALIAS
+ALL
+ALLOCATE
+ALLOW
+ALL_ROWS
+ALTER
+ALWAYS
+ANALYZE
+ANCILLARY
+AND
+AND_EQUAL
+ANOMALY
+ANSI_REARCH
+ANTIJOIN
+ANY
+ANYSCHEMA
+APPEND
+APPENDCHILDXML
+APPEND_VALUES
+APPLICATION
+APPLY
+APPROX_COUNT_DISTINCT
+ARCHIVAL
+ARCHIVE
+ARCHIVED
+ARCHIVELOG
+ARRAY
+AS
+ASC
+ASCII
+ASCIISTR
+ASIN
+ASIS
+ASSEMBLY
+ASSIGN
+ASSOCIATE
+ASYNC
+ASYNCHRONOUS
+ATAN2
+ATAN
+AT
+ATTRIBUTE
+ATTRIBUTES
+AUDIT
+AUTHENTICATED
+AUTHENTICATION
+AUTHID
+AUTHORIZATION
+AUTOALLOCATE
+AUTO
+AUTOBACKUP
+AUTOEXTEND
+AUTO_LOGIN
+AUTOMATIC
+AUTONOMOUS_TRANSACTION
+AUTO_REOPTIMIZE
+AVAILABILITY
+AVRO
+BACKGROUND
+BACKUP
+BACKUPSET
+BASIC
+BASICFILE
+BATCH
+BATCHSIZE
+BATCH_TABLE_ACCESS_BY_ROWID
+BECOME
+BEFORE
+BEGIN
+BEGINNING
+BEGIN_OUTLINE_DATA
+BEHALF
+BEQUEATH
+BETWEEN
+BFILE
+BFILENAME
+BIGFILE
+BINARY
+BINARY_DOUBLE
+BINARY_DOUBLE_INFINITY
+BINARY_DOUBLE_NAN
+BINARY_FLOAT
+BINARY_FLOAT_INFINITY
+BINARY_FLOAT_NAN
+BINARY_INTEGER
+BIND_AWARE
+BINDING
+BIN_TO_NUM
+BITAND
+BITMAP_AND
+BITMAP
+BITMAPS
+BITMAP_TREE
+BITS
+BLOB
+BLOCK
+BLOCK_RANGE
+BLOCKS
+BLOCKSIZE
+BODY
+BOOLEAN
+BOTH
+BOUND
+BRANCH
+BREADTH
+BROADCAST
+BSON
+BUFFER
+BUFFER_CACHE
+BUFFER_POOL
+BUILD
+BULK
+BY
+BYPASS_RECURSIVE_CHECK
+BYPASS_UJVC
+BYTE
+CACHE
+CACHE_CB
+CACHE_INSTANCES
+CACHE_TEMP_TABLE
+CACHING
+CALCULATED
+CALLBACK
+CALL
+CANCEL
+CANONICAL
+CAPACITY
+CARDINALITY
+CASCADE
+CASE
+CAST
+CATEGORY
+CDBDEFAULT
+CEIL
+CELL_FLASH_CACHE
+CERTIFICATE
+CFILE
+CHAINED
+CHANGE
+CHANGETRACKING
+CHANGE_DUPKEY_ERROR_INDEX
+CHARACTER
+CHAR
+CHAR_CS
+CHARTOROWID
+CHECK_ACL_REWRITE
+CHECK
+CHECKPOINT
+CHILD
+CHOOSE
+CHR
+CHUNK
+CLASS
+CLASSIFIER
+CLEANUP
+CLEAR
+C_LETTER
+CLIENT
+CLOB
+CLONE
+CLOSE_CACHED_OPEN_CURSORS
+CLOSE
+CLUSTER_BY_ROWID
+CLUSTER
+CLUSTER_DETAILS
+CLUSTER_DISTANCE
+CLUSTER_ID
+CLUSTERING
+CLUSTERING_FACTOR
+CLUSTER_PROBABILITY
+CLUSTER_SET
+COALESCE
+COALESCE_SQ
+COARSE
+CO_AUTH_IND
+COLD
+COLLECT
+COLUMNAR
+COLUMN_AUTH_INDICATOR
+COLUMN
+COLUMNS
+COLUMN_STATS
+COLUMN_VALUE
+COMMENT
+COMMIT
+COMMITTED
+COMMON_DATA
+COMPACT
+COMPATIBILITY
+COMPILE
+COMPLETE
+COMPLIANCE
+COMPONENT
+COMPONENTS
+COMPOSE
+COMPOSITE
+COMPOSITE_LIMIT
+COMPOUND
+COMPRESS
+COMPUTE
+CONCAT
+CON_DBID_TO_ID
+CONDITIONAL
+CONDITION
+CONFIRM
+CONFORMING
+CON_GUID_TO_ID
+CON_ID
+CON_NAME_TO_ID
+CONNECT_BY_CB_WHR_ONLY
+CONNECT_BY_COMBINE_SW
+CONNECT_BY_COST_BASED
+CONNECT_BY_ELIM_DUPS
+CONNECT_BY_FILTERING
+CONNECT_BY_ISCYCLE
+CONNECT_BY_ISLEAF
+CONNECT_BY_ROOT
+CONNECT
+CONNECT_TIME
+CONSIDER
+CONSISTENT
+CONSTANT
+CONST
+CONSTRAINT
+CONSTRAINTS
+CONSTRUCTOR
+CONTAINER
+CONTAINER_DATA
+CONTAINERS
+CONTENT
+CONTENTS
+CONTEXT
+CONTINUE
+CONTROLFILE
+CON_UID_TO_ID
+CONVERT
+COOKIE
+COPY
+CORR_K
+CORR_S
+CORRUPTION
+CORRUPT_XID_ALL
+CORRUPT_XID
+COS
+COSH
+COST
+COST_XML_QUERY_REWRITE
+COUNT
+COVAR_POP
+COVAR_SAMP
+CPU_COSTING
+CPU_PER_CALL
+CPU_PER_SESSION
+CRASH
+CREATE
+CREATE_FILE_DEST
+CREATE_STORED_OUTLINES
+CREATION
+CREDENTIAL
+CRITICAL
+CROSS
+CROSSEDITION
+CSCONVERT
+CUBE_AJ
+CUBE
+CUBE_GB
+CUBE_SJ
+CUME_DISTM
+CURRENT
+CURRENT_DATE
+CURRENT_SCHEMA
+CURRENT_TIME
+CURRENT_TIMESTAMP
+CURRENT_USER
+CURRENTV
+CURSOR
+CURSOR_SHARING_EXACT
+CURSOR_SPECIFIC_SEGMENT
+CUSTOMDATUM
+CV
+CYCLE
+DANGLING
+DATABASE
+DATA
+DATAFILE
+DATAFILES
+DATAGUARDCONFIG
+DATAMOVEMENT
+DATAOBJNO
+DATAOBJ_TO_MAT_PARTITION
+DATAOBJ_TO_PARTITION
+DATAPUMP
+DATA_SECURITY_REWRITE_LIMIT
+DATE
+DATE_MODE
+DAY
+DAYS
+DBA
+DBA_RECYCLEBIN
+DBMS_STATS
+DB_ROLE_CHANGE
+DBTIMEZONE
+DB_UNIQUE_NAME
+DB_VERSION
+DDL
+DEALLOCATE
+DEBUG
+DEBUGGER
+DEC
+DECIMAL
+DECLARE
+DECOMPOSE
+DECORRELATE
+DECR
+DECREMENT
+DECRYPT
+DEDUPLICATE
+DEFAULT
+DEFAULTS
+DEFERRABLE
+DEFERRED
+DEFINED
+DEFINE
+DEFINER
+DEGREE
+DELAY
+DELEGATE
+DELETE_ALL
+DELETE
+DELETEXML
+DEMAND
+DENSE_RANKM
+DEPENDENT
+DEPTH
+DEQUEUE
+DEREF
+DEREF_NO_REWRITE
+DESC
+DESTROY
+DETACHED
+DETERMINES
+DETERMINISTIC
+DICTIONARY
+DIMENSION
+DIMENSIONS
+DIRECT_LOAD
+DIRECTORY
+DIRECT_PATH
+DISABLE_ALL
+DISABLE
+DISABLE_PARALLEL_DML
+DISABLE_PRESET
+DISABLE_RPKE
+DISALLOW
+DISASSOCIATE
+DISCARD
+DISCONNECT
+DISK
+DISKGROUP
+DISKGROUP_PLUS
+DISKS
+DISMOUNT
+DISTINCT
+DISTINGUISHED
+DISTRIBUTED
+DISTRIBUTE
+DML
+DML_UPDATE
+DOCFIDELITY
+DOCUMENT
+DOMAIN_INDEX_FILTER
+DOMAIN_INDEX_NO_SORT
+DOMAIN_INDEX_SORT
+DOUBLE
+DOWNGRADE
+DRIVING_SITE
+DROP_COLUMN
+DROP
+DROP_GROUP
+DSINTERVAL_UNCONSTRAINED
+DST_UPGRADE_INSERT_CONV
+DUMP
+DUMPSET
+DUPLICATE
+DV
+DYNAMIC
+DYNAMIC_SAMPLING
+DYNAMIC_SAMPLING_EST_CDN
+EACH
+EDITIONABLE
+EDITION
+EDITIONING
+EDITIONS
+ELEMENT
+ELIM_GROUPBY
+ELIMINATE_JOIN
+ELIMINATE_OBY
+ELIMINATE_OUTER_JOIN
+ELSE
+ELSIF
+EM
+EMPTY_BLOB
+EMPTY_CLOB
+EMPTY
+ENABLE_ALL
+ENABLE
+ENABLE_PARALLEL_DML
+ENABLE_PRESET
+ENCODING
+ENCRYPT
+ENCRYPTION
+END
+END_OUTLINE_DATA
+ENFORCED
+ENFORCE
+ENQUEUE
+ENTERPRISE
+ENTITYESCAPING
+ENTRY
+EQUIPART
+ERR
+ERROR_ARGUMENT
+ERROR
+ERROR_ON_OVERLAP_TIME
+ERRORS
+ESCAPE
+ESTIMATE
+EVAL
+EVALNAME
+EVALUATE
+EVALUATION
+EVENTS
+EVERY
+EXCEPT
+EXCEPTION
+EXCEPTION_INIT
+EXCEPTIONS
+EXCHANGE
+EXCLUDE
+EXCLUDING
+EXCLUSIVE
+EXECUTE
+EXEMPT
+EXISTING
+EXISTS
+EXISTSNODE
+EXIT
+EXPAND_GSET_TO_UNION
+EXPAND_TABLE
+EXP
+EXPIRE
+EXPLAIN
+EXPLOSION
+EXPORT
+EXPR_CORR_CHECK
+EXPRESS
+EXTENDS
+EXTENT
+EXTENTS
+EXTERNAL
+EXTERNALLY
+EXTRACTCLOBXML
+EXTRACT
+EXTRACTVALUE
+EXTRA
+FACILITY
+FACT
+FACTOR
+FACTORIZE_JOIN
+FAILED
+FAILED_LOGIN_ATTEMPTS
+FAILGROUP
+FAILOVER
+FAILURE
+FALSE
+FAMILY
+FAR
+FAST
+FASTSTART
+FBTSCAN
+FEATURE_DETAILS
+FEATURE_ID
+FEATURE_SET
+FEATURE_VALUE
+FETCH
+FILE
+FILE_NAME_CONVERT
+FILESYSTEM_LIKE_LOGGING
+FILTER
+FINAL
+FINE
+FINISH
+FIRST
+FIRSTM
+FIRST_ROWS
+FIRST_VALUE
+FIXED_VIEW_DATA
+FLAGGER
+FLASHBACK
+FLASH_CACHE
+FLOAT
+FLOB
+FLOOR
+FLUSH
+FOLDER
+FOLLOWING
+FOLLOWS
+FORALL
+FORCE
+FORCE_XML_QUERY_REWRITE
+FOREIGN
+FOREVER
+FOR
+FORMAT
+FORWARD
+FRAGMENT_NUMBER
+FREELIST
+FREELISTS
+FREEPOOLS
+FRESH
+FROM
+FROM_TZ
+FULL
+FULL_OUTER_JOIN_TO_OUTER
+FUNCTION
+FUNCTIONS
+GATHER_OPTIMIZER_STATISTICS
+GATHER_PLAN_STATISTICS
+GBY_CONC_ROLLUP
+GBY_PUSHDOWN
+GENERATED
+GET
+GLOBAL
+GLOBALLY
+GLOBAL_NAME
+GLOBAL_TOPIC_ENABLED
+GOTO
+GRANT
+GROUP_BY
+GROUP
+GROUP_ID
+GROUPING
+GROUPING_ID
+GROUPS
+GUARANTEED
+GUARANTEE
+GUARD
+HASH_AJ
+HASH
+HASHKEYS
+HASH_SJ
+HAVING
+HEADER
+HEAP
+HELP
+HEXTORAW
+HEXTOREF
+HIDDEN_KEYWORD
+HIDE
+HIERARCHY
+HIGH
+HINTSET_BEGIN
+HINTSET_END
+HOT
+HOUR
+HWM_BROKERED
+HYBRID
+IDENTIFIED
+IDENTIFIER
+IDENTITY
+IDGENERATORS
+ID
+IDLE_TIME
+IF
+IGNORE
+IGNORE_OPTIM_EMBEDDED_HINTS
+IGNORE_ROW_ON_DUPKEY_INDEX
+IGNORE_WHERE_CLAUSE
+ILM
+IMMEDIATE
+IMPACT
+IMPORT
+INACTIVE
+INCLUDE
+INCLUDE_VERSION
+INCLUDING
+INCREMENTAL
+INCREMENT
+INCR
+INDENT
+INDEX_ASC
+INDEX_COMBINE
+INDEX_DESC
+INDEXED
+INDEXES
+INDEX_FFS
+INDEX_FILTER
+INDEX
+INDEXING
+INDEX_JOIN
+INDEX_ROWS
+INDEX_RRS
+INDEX_RS_ASC
+INDEX_RS_DESC
+INDEX_RS
+INDEX_SCAN
+INDEX_SKIP_SCAN
+INDEX_SS_ASC
+INDEX_SS_DESC
+INDEX_SS
+INDEX_STATS
+INDEXTYPE
+INDEXTYPES
+INDICATOR
+INDICES
+INFINITE
+INFORMATIONAL
+INHERIT
+IN
+INITCAP
+INITIAL
+INITIALIZED
+INITIALLY
+INITRANS
+INLINE
+INLINE_XMLTYPE_NT
+INMEMORY
+IN_MEMORY_METADATA
+INMEMORY_PRUNING
+INNER
+INOUT
+INPLACE
+INSERTCHILDXMLAFTER
+INSERTCHILDXMLBEFORE
+INSERTCHILDXML
+INSERT
+INSERTXMLAFTER
+INSERTXMLBEFORE
+INSTANCE
+INSTANCES
+INSTANTIABLE
+INSTANTLY
+INSTEAD
+INSTR2
+INSTR4
+INSTRB
+INSTRC
+INSTR
+INTEGER
+INTERLEAVED
+INTERMEDIATE
+INTERNAL_CONVERT
+INTERNAL_USE
+INTERPRETED
+INTERSECT
+INTERVAL
+INT
+INTO
+INVALIDATE
+INVISIBLE
+IN_XQUERY
+IS
+ISOLATION
+ISOLATION_LEVEL
+ITERATE
+ITERATION_NUMBER
+JAVA
+JOB
+JOIN
+JSON_ARRAYAGG
+JSON_ARRAY
+JSON_EQUAL
+JSON_EXISTS2
+JSON_EXISTS
+JSONGET
+JSON
+JSON_OBJECTAGG
+JSON_OBJECT
+JSONPARSE
+JSON_QUERY
+JSON_SERIALIZE
+JSON_TABLE
+JSON_TEXTCONTAINS2
+JSON_TEXTCONTAINS
+JSON_VALUE
+KEEP_DUPLICATES
+KEEP
+KERBEROS
+KEY
+KEY_LENGTH
+KEYSIZE
+KEYS
+KEYSTORE
+KILL
+LABEL
+LANGUAGE
+LAST_DAY
+LAST
+LAST_VALUE
+LATERAL
+LAX
+LAYER
+LDAP_REGISTRATION_ENABLED
+LDAP_REGISTRATION
+LDAP_REG_SYNC_INTERVAL
+LEADING
+LEFT
+LENGTH2
+LENGTH4
+LENGTHB
+LENGTHC
+LENGTH
+LESS
+LEVEL
+LEVELS
+LIBRARY
+LIFECYCLE
+LIFE
+LIFETIME
+LIKE2
+LIKE4
+LIKEC
+LIKE_EXPAND
+LIKE
+LIMIT
+LINEAR
+LINK
+LIST
+LN
+LNNVL
+LOAD
+LOB
+LOBNVL
+LOBS
+LOCAL_INDEXES
+LOCAL
+LOCALTIME
+LOCALTIMESTAMP
+LOCATION
+LOCATOR
+LOCKED
+LOCKING
+LOCK
+LOGFILE
+LOGFILES
+LOGGING
+LOGICAL
+LOGICAL_READS_PER_CALL
+LOGICAL_READS_PER_SESSION
+LOG
+LOGMINING
+LOGOFF
+LOGON
+LOG_READ_ONLY_VIOLATIONS
+LONG
+LOOP
+LOWER
+LOW
+LPAD
+LTRIM
+MAIN
+MAKE_REF
+MANAGED
+MANAGE
+MANAGEMENT
+MANAGER
+MANUAL
+MAP
+MAPPING
+MASTER
+MATCHED
+MATCHES
+MATCH
+MATCH_NUMBER
+MATCH_RECOGNIZE
+MATERIALIZED
+MATERIALIZE
+MAXARCHLOGS
+MAXDATAFILES
+MAXEXTENTS
+MAXIMIZE
+MAXINSTANCES
+MAXLOGFILES
+MAXLOGHISTORY
+MAXLOGMEMBERS
+MAX_SHARED_TEMP_SIZE
+MAXSIZE
+MAXTRANS
+MAXVALUE
+MEASURE
+MEASURES
+MEDIUM
+MEMBER
+MEMCOMPRESS
+MEMORY
+MERGEACTIONS
+MERGE_AJ
+MERGE_CONST_ON
+MERGE
+MERGE_SJ
+METADATA
+METHOD
+MIGRATE
+MIGRATION
+MINEXTENTS
+MINIMIZE
+MINIMUM
+MINING
+MINUS
+MINUS_NULL
+MINUTE
+MINVALUE
+MIRRORCOLD
+MIRRORHOT
+MIRROR
+MLSLABEL
+MODEL_COMPILE_SUBQUERY
+MODEL_DONTVERIFY_UNIQUENESS
+MODEL_DYNAMIC_SUBQUERY
+MODEL_MIN_ANALYSIS
+MODEL
+MODEL_NB
+MODEL_NO_ANALYSIS
+MODEL_PBY
+MODEL_PUSH_REF
+MODEL_SV
+MODE
+MODIFICATION
+MODIFY_COLUMN_TYPE
+MODIFY
+MOD
+MODULE
+MONITORING
+MONITOR
+MONTH
+MONTHS_BETWEEN
+MONTHS
+MOUNT
+MOUNTPATH
+MOVEMENT
+MOVE
+MULTIDIMENSIONAL
+MULTISET
+MV_MERGE
+NAMED
+NAME
+NAMESPACE
+NAN
+NANVL
+NATIONAL
+NATIVE_FULL_OUTER_JOIN
+NATIVE
+NATURAL
+NATURALN
+NAV
+NCHAR_CS
+NCHAR
+NCHR
+NCLOB
+NEEDED
+NEG
+NESTED
+NESTED_TABLE_FAST_INSERT
+NESTED_TABLE_GET_REFS
+NESTED_TABLE_ID
+NESTED_TABLE_SET_REFS
+NESTED_TABLE_SET_SETID
+NETWORK
+NEVER
+NEW
+NEW_TIME
+NEXT_DAY
+NEXT
+NL_AJ
+NLJ_BATCHING
+NLJ_INDEX_FILTER
+NLJ_INDEX_SCAN
+NLJ_PREFETCH
+NLS_CALENDAR
+NLS_CHARACTERSET
+NLS_CHARSET_DECL_LEN
+NLS_CHARSET_ID
+NLS_CHARSET_NAME
+NLS_COMP
+NLS_CURRENCY
+NLS_DATE_FORMAT
+NLS_DATE_LANGUAGE
+NLS_INITCAP
+NLS_ISO_CURRENCY
+NL_SJ
+NLS_LANG
+NLS_LANGUAGE
+NLS_LENGTH_SEMANTICS
+NLS_LOWER
+NLS_NCHAR_CONV_EXCP
+NLS_NUMERIC_CHARACTERS
+NLS_SORT
+NLSSORT
+NLS_SPECIAL_CHARS
+NLS_TERRITORY
+NLS_UPPER
+NO_ACCESS
+NO_ADAPTIVE_PLAN
+NO_ANSI_REARCH
+NOAPPEND
+NOARCHIVELOG
+NOAUDIT
+NO_AUTO_REOPTIMIZE
+NO_BASETABLE_MULTIMV_REWRITE
+NO_BATCH_TABLE_ACCESS_BY_ROWID
+NO_BIND_AWARE
+NO_BUFFER
+NOCACHE
+NO_CARTESIAN
+NO_CHECK_ACL_REWRITE
+NO_CLUSTER_BY_ROWID
+NO_CLUSTERING
+NO_COALESCE_SQ
+NO_COMMON_DATA
+NOCOMPRESS
+NO_CONNECT_BY_CB_WHR_ONLY
+NO_CONNECT_BY_COMBINE_SW
+NO_CONNECT_BY_COST_BASED
+NO_CONNECT_BY_ELIM_DUPS
+NO_CONNECT_BY_FILTERING
+NOCOPY
+NO_COST_XML_QUERY_REWRITE
+NO_CPU_COSTING
+NOCPU_COSTING
+NOCYCLE
+NO_DATA_SECURITY_REWRITE
+NO_DECORRELATE
+NODELAY
+NO_DOMAIN_INDEX_FILTER
+NO_DST_UPGRADE_INSERT_CONV
+NO_ELIM_GROUPBY
+NO_ELIMINATE_JOIN
+NO_ELIMINATE_OBY
+NO_ELIMINATE_OUTER_JOIN
+NOENTITYESCAPING
+NO_EXPAND_GSET_TO_UNION
+NO_EXPAND
+NO_EXPAND_TABLE
+NO_FACT
+NO_FACTORIZE_JOIN
+NO_FILTERING
+NOFORCE
+NO_FULL_OUTER_JOIN_TO_OUTER
+NO_GATHER_OPTIMIZER_STATISTICS
+NO_GBY_PUSHDOWN
+NOGUARANTEE
+NO_INDEX_FFS
+NO_INDEX
+NO_INDEX_SS
+NO_INMEMORY
+NO_INMEMORY_PRUNING
+NOKEEP
+NO_LOAD
+NOLOCAL
+NOLOGGING
+NOMAPPING
+NOMAXVALUE
+NO_MERGE
+NOMINIMIZE
+NOMINVALUE
+NO_MODEL_PUSH_REF
+NO_MONITORING
+NOMONITORING
+NO_MONITOR
+NO_MULTIMV_REWRITE
+NO_NATIVE_FULL_OUTER_JOIN
+NONBLOCKING
+NONEDITIONABLE
+NONE
+NO_NLJ_BATCHING
+NO_NLJ_PREFETCH
+NO
+NONSCHEMA
+NO_OBJECT_LINK
+NOORDER
+NO_ORDER_ROLLUPS
+NO_OUTER_JOIN_TO_ANTI
+NO_OUTER_JOIN_TO_INNER
+NOOVERRIDE
+NO_PARALLEL_INDEX
+NOPARALLEL_INDEX
+NO_PARALLEL
+NOPARALLEL
+NO_PARTIAL_COMMIT
+NO_PARTIAL_JOIN
+NO_PARTIAL_ROLLUP_PUSHDOWN
+NOPARTITION
+NO_PLACE_DISTINCT
+NO_PLACE_GROUP_BY
+NO_PQ_CONCURRENT_UNION
+NO_PQ_MAP
+NO_PQ_REPLICATE
+NO_PQ_SKEW
+NO_PRUNE_GSETS
+NO_PULL_PRED
+NO_PUSH_PRED
+NO_PUSH_SUBQ
+NO_PX_FAULT_TOLERANCE
+NO_PX_JOIN_FILTER
+NO_QKN_BUFF
+NO_QUERY_TRANSFORMATION
+NO_REF_CASCADE
+NORELOCATE
+NORELY
+NOREPAIR
+NOREPLAY
+NORESETLOGS
+NO_RESULT_CACHE
+NOREVERSE
+NO_REWRITE
+NOREWRITE
+NORMAL
+NO_ROOT_SW_FOR_LOCAL
+NOROWDEPENDENCIES
+NOSCHEMACHECK
+NOSEGMENT
+NO_SEMIJOIN
+NO_SEMI_TO_INNER
+NO_SET_TO_JOIN
+NOSORT
+NO_SQL_TRANSLATION
+NO_SQL_TUNE
+NO_STAR_TRANSFORMATION
+NO_STATEMENT_QUEUING
+NO_STATS_GSETS
+NOSTRICT
+NO_SUBQUERY_PRUNING
+NO_SUBSTRB_PAD
+NO_SWAP_JOIN_INPUTS
+NOSWITCH
+NO_TABLE_LOOKUP_BY_NL
+NO_TEMP_TABLE
+NOTHING
+NOTIFICATION
+NOT
+NO_TRANSFORM_DISTINCT_AGG
+NO_UNNEST
+NO_USE_CUBE
+NO_USE_HASH_AGGREGATION
+NO_USE_HASH_GBY_FOR_PUSHDOWN
+NO_USE_HASH
+NO_USE_INVISIBLE_INDEXES
+NO_USE_MERGE
+NO_USE_NL
+NO_USE_VECTOR_AGGREGATION
+NOVALIDATE
+NO_VECTOR_TRANSFORM_DIMS
+NO_VECTOR_TRANSFORM_FACT
+NO_VECTOR_TRANSFORM
+NOWAIT
+NO_XDB_FASTPATH_INSERT
+NO_XML_DML_REWRITE
+NO_XMLINDEX_REWRITE_IN_SELECT
+NO_XMLINDEX_REWRITE
+NO_XML_QUERY_REWRITE
+NO_ZONEMAP
+NTH_VALUE
+NULLIF
+NULL_
+NULLS
+NUMBER
+NUMERIC
+NUM_INDEX_KEYS
+NUMTODSINTERVAL
+NUMTOYMINTERVAL
+NVARCHAR2
+NVL2
+OBJECT2XML
+OBJECT
+OBJ_ID
+OBJNO
+OBJNO_REUSE
+OCCURENCES
+OFFLINE
+OFF
+OFFSET
+OF
+OIDINDEX
+OID
+OLAP
+OLD
+OLD_PUSH_PRED
+OLS
+OLTP
+OMIT
+ONE
+ONLINE
+ONLINELOG
+ONLY
+ON
+OPAQUE
+OPAQUE_TRANSFORM
+OPAQUE_XCANONICAL
+OPCODE
+OPEN
+OPERATIONS
+OPERATOR
+OPT_ESTIMATE
+OPTIMAL
+OPTIMIZE
+OPTIMIZER_FEATURES_ENABLE
+OPTIMIZER_GOAL
+OPTION
+OPT_PARAM
+ORA_BRANCH
+ORA_CHECK_ACL
+ORA_CHECK_PRIVILEGE
+ORA_CLUSTERING
+ORADATA
+ORADEBUG
+ORA_DST_AFFECTED
+ORA_DST_CONVERT
+ORA_DST_ERROR
+ORA_GET_ACLIDS
+ORA_GET_PRIVILEGES
+ORA_HASH
+ORA_INVOKING_USERID
+ORA_INVOKING_USER
+ORA_INVOKING_XS_USER_GUID
+ORA_INVOKING_XS_USER
+ORA_RAWCOMPARE
+ORA_RAWCONCAT
+ORA_ROWSCN
+ORA_ROWSCN_RAW
+ORA_ROWVERSION
+ORA_TABVERSION
+ORA_WRITE_TIME
+ORDERED
+ORDERED_PREDICATES
+ORDER
+ORDINALITY
+OR_EXPAND
+ORGANIZATION
+OR
+OR_PREDICATES
+OSERROR
+OTHER
+OUTER_JOIN_TO_ANTI
+OUTER_JOIN_TO_INNER
+OUTER
+OUTLINE_LEAF
+OUTLINE
+OUT_OF_LINE
+OUT
+OVERFLOW_NOMOVE
+OVERFLOW
+OVERLAPS
+OVER
+OVERRIDING
+OWNER
+OWNERSHIP
+OWN
+PACKAGE
+PACKAGES
+PARALLEL_ENABLE
+PARALLEL_INDEX
+PARALLEL
+PARAMETERFILE
+PARAMETERS
+PARAM
+PARENT
+PARITY
+PARTIAL_JOIN
+PARTIALLY
+PARTIAL
+PARTIAL_ROLLUP_PUSHDOWN
+PARTITION_HASH
+PARTITION_LIST
+PARTITION
+PARTITION_RANGE
+PARTITIONS
+PARTNUMINST
+PASSING
+PASSWORD_GRACE_TIME
+PASSWORD_LIFE_TIME
+PASSWORD_LOCK_TIME
+PASSWORD
+PASSWORD_REUSE_MAX
+PASSWORD_REUSE_TIME
+PASSWORD_VERIFY_FUNCTION
+PAST
+PATCH
+PATH
+PATH_PREFIX
+PATHS
+PATTERN
+PBL_HS_BEGIN
+PBL_HS_END
+PCTFREE
+PCTINCREASE
+PCTTHRESHOLD
+PCTUSED
+PCTVERSION
+PENDING
+PERCENT_FOUND
+PERCENT_ISOPEN
+PERCENT_NOTFOUND
+PERCENT_KEYWORD
+PERCENT_RANKM
+PERCENT_ROWCOUNT
+PERCENT_ROWTYPE
+PERCENT_TYPE
+PERFORMANCE
+PERIOD_KEYWORD
+PERMANENT
+PERMISSION
+PERMUTE
+PER
+PFILE
+PHYSICAL
+PIKEY
+PIPELINED
+PIPE
+PIV_GB
+PIVOT
+PIV_SSF
+PLACE_DISTINCT
+PLACE_GROUP_BY
+PLAN
+PLSCOPE_SETTINGS
+PLS_INTEGER
+PLSQL_CCFLAGS
+PLSQL_CODE_TYPE
+PLSQL_DEBUG
+PLSQL_OPTIMIZE_LEVEL
+PLSQL_WARNINGS
+PLUGGABLE
+POINT
+POLICY
+POOL_16K
+POOL_2K
+POOL_32K
+POOL_4K
+POOL_8K
+POSITIVEN
+POSITIVE
+POST_TRANSACTION
+POWERMULTISET_BY_CARDINALITY
+POWERMULTISET
+POWER
+PQ_CONCURRENT_UNION
+PQ_DISTRIBUTE
+PQ_DISTRIBUTE_WINDOW
+PQ_FILTER
+PQ_MAP
+PQ_NOMAP
+PQ_REPLICATE
+PQ_SKEW
+PRAGMA
+PREBUILT
+PRECEDES
+PRECEDING
+PRECISION
+PRECOMPUTE_SUBQUERY
+PREDICATE_REORDERS
+PRELOAD
+PREPARE
+PRESENTNNV
+PRESENT
+PRESENTV
+PRESERVE_OID
+PRESERVE
+PRETTY
+PREVIOUS
+PREV
+PRIMARY
+PRINTBLOBTOCLOB
+PRIORITY
+PRIOR
+PRIVATE
+PRIVATE_SGA
+PRIVILEGED
+PRIVILEGE
+PRIVILEGES
+PROCEDURAL
+PROCEDURE
+PROCESS
+PROFILE
+PROGRAM
+PROJECT
+PROPAGATE
+PROTECTED
+PROTECTION
+PROXY
+PRUNING
+PUBLIC
+PULL_PRED
+PURGE
+PUSH_PRED
+PUSH_SUBQ
+PX_FAULT_TOLERANCE
+PX_GRANULE
+PX_JOIN_FILTER
+QB_NAME
+QUERY_BLOCK
+QUERY
+QUEUE_CURR
+QUEUE
+QUEUE_ROWP
+QUIESCE
+QUORUM
+QUOTA
+RAISE
+RANDOM_LOCAL
+RANDOM
+RANGE
+RANKM
+RAPIDLY
+RAW
+RAWTOHEX
+RAWTONHEX
+RBA
+RBO_OUTLINE
+RDBA
+READ
+READS
+REALM
+REAL
+REBALANCE
+REBUILD
+RECORD
+RECORDS_PER_BLOCK
+RECOVERABLE
+RECOVER
+RECOVERY
+RECYCLEBIN
+RECYCLE
+REDACTION
+REDEFINE
+REDO
+REDUCED
+REDUNDANCY
+REF_CASCADE_CURSOR
+REFERENCED
+REFERENCE
+REFERENCES
+REFERENCING
+REF
+REFRESH
+REFTOHEX
+REGEXP_COUNT
+REGEXP_INSTR
+REGEXP_LIKE
+REGEXP_REPLACE
+REGEXP_SUBSTR
+REGISTER
+REGR_AVGX
+REGR_AVGY
+REGR_COUNT
+REGR_INTERCEPT
+REGR_R2
+REGR_SLOPE
+REGR_SXX
+REGR_SXY
+REGR_SYY
+REGULAR
+REJECT
+REKEY
+RELATIONAL
+RELIES_ON
+RELOCATE
+RELY
+REMAINDER
+REMOTE_MAPPED
+REMOVE
+RENAME
+REPAIR
+REPEAT
+REPLACE
+REPLICATION
+REQUIRED
+RESETLOGS
+RESET
+RESIZE
+RESOLVE
+RESOLVER
+RESOURCE
+RESPECT
+RESTART
+RESTORE_AS_INTERVALS
+RESTORE
+RESTRICT_ALL_REF_CONS
+RESTRICTED
+RESTRICT_REFERENCES
+RESTRICT
+RESULT_CACHE
+RESULT
+RESUMABLE
+RESUME
+RETENTION
+RETRY_ON_ROW_CHANGE
+RETURNING
+RETURN
+REUSE
+REVERSE
+REVOKE
+REWRITE_OR_ERROR
+REWRITE
+RIGHT
+ROLE
+ROLESET
+ROLES
+ROLLBACK
+ROLLING
+ROLLUP
+ROWDEPENDENCIES
+ROWID_MAPPING_TABLE
+ROWID
+ROWIDTOCHAR
+ROWIDTONCHAR
+ROW_LENGTH
+ROWNUM
+ROW
+ROWS
+RPAD
+RTRIM
+RULE
+RULES
+RUNNING
+SALT
+SAMPLE
+SAVE_AS_INTERVALS
+SAVEPOINT
+SAVE
+SB4
+SCALE_ROWS
+SCALE
+SCAN_INSTANCES
+SCAN
+SCHEDULER
+SCHEMACHECK
+SCHEMA
+SCN_ASCENDING
+SCN
+SCOPE
+SCRUB
+SD_ALL
+SD_INHIBIT
+SDO_GEOM_MBR
+SD_SHOW
+SEARCH
+SECOND
+SECRET
+SECUREFILE_DBA
+SECUREFILE
+SECURITY
+SEED
+SEG_BLOCK
+SEG_FILE
+SEGMENT
+SELECTIVITY
+SELECT
+SELF
+SEMIJOIN_DRIVER
+SEMIJOIN
+SEMI_TO_INNER
+SEQUENCED
+SEQUENCE
+SEQUENTIAL
+SEQ
+SERIALIZABLE
+SERIALLY_REUSABLE
+SERIAL
+SERVERERROR
+SERVICE_NAME_CONVERT
+SERVICES
+SESSION_CACHED_CURSORS
+SESSION
+SESSIONS_PER_USER
+SESSIONTIMEZONE
+SESSIONTZNAME
+SET
+SETS
+SETTINGS
+SET_TO_JOIN
+SEVERE
+SHARED_POOL
+SHARED
+SHARE
+SHARING
+SHELFLIFE
+SHOW
+SHRINK
+SHUTDOWN
+SIBLINGS
+SID
+SIGNAL_COMPONENT
+SIGNAL_FUNCTION
+SIGN
+SIGNTYPE
+SIMPLE_INTEGER
+SIMPLE
+SINGLE
+SINGLETASK
+SINH
+SIN
+SIZE
+SKIP_EXT_OPTIMIZER
+SKIP_
+SKIP_UNQ_UNUSABLE_IDX
+SKIP_UNUSABLE_INDEXES
+SMALLFILE
+SMALLINT
+SNAPSHOT
+SOME
+SORT
+SOUNDEX
+SOURCE_FILE_DIRECTORY
+SOURCE_FILE_NAME_CONVERT
+SOURCE
+SPACE_KEYWORD
+SPECIFICATION
+SPFILE
+SPLIT
+SPREADSHEET
+SQLDATA
+SQLERROR
+SQLLDR
+SQL
+SQL_TRACE
+SQL_TRANSLATION_PROFILE
+SQRT
+STALE
+STANDALONE
+STANDARD_HASH
+STANDBY_MAX_DATA_DELAY
+STANDBYS
+STANDBY
+STAR
+STAR_TRANSFORMATION
+START
+STARTUP
+STATEMENT_ID
+STATEMENT_QUEUING
+STATEMENTS
+STATEMENT
+STATE
+STATIC
+STATISTICS
+STATS_BINOMIAL_TEST
+STATS_CROSSTAB
+STATS_F_TEST
+STATS_KS_TEST
+STATS_MODE
+STATS_MW_TEST
+STATS_ONE_WAY_ANOVA
+STATS_T_TEST_INDEP
+STATS_T_TEST_INDEPU
+STATS_T_TEST_ONE
+STATS_T_TEST_PAIRED
+STATS_WSR_TEST
+STDDEV_POP
+STDDEV_SAMP
+STOP
+STORAGE
+STORE
+STREAMS
+STREAM
+STRICT
+STRING
+STRIPE_COLUMNS
+STRIPE_WIDTH
+STRIP
+STRUCTURE
+SUBMULTISET
+SUBPARTITION_REL
+SUBPARTITIONS
+SUBPARTITION
+SUBQUERIES
+SUBQUERY_PRUNING
+SUBSCRIBE
+SUBSET
+SUBSTITUTABLE
+SUBSTR2
+SUBSTR4
+SUBSTRB
+SUBSTRC
+SUBTYPE
+SUCCESSFUL
+SUCCESS
+SUMMARY
+SUPPLEMENTAL
+SUSPEND
+SWAP_JOIN_INPUTS
+SWITCHOVER
+SWITCH
+SYNCHRONOUS
+SYNC
+SYNONYM
+SYSASM
+SYS_AUDIT
+SYSAUX
+SYSBACKUP
+SYS_CHECKACL
+SYS_CHECK_PRIVILEGE
+SYS_CONNECT_BY_PATH
+SYS_CONTEXT
+SYSDATE
+SYSDBA
+SYS_DBURIGEN
+SYSDG
+SYS_DL_CURSOR
+SYS_DM_RXFORM_CHR
+SYS_DM_RXFORM_NUM
+SYS_DOM_COMPARE
+SYS_DST_PRIM2SEC
+SYS_DST_SEC2PRIM
+SYS_ET_BFILE_TO_RAW
+SYS_ET_BLOB_TO_IMAGE
+SYS_ET_IMAGE_TO_BLOB
+SYS_ET_RAW_TO_BFILE
+SYS_EXTPDTXT
+SYS_EXTRACT_UTC
+SYS_FBT_INSDEL
+SYS_FILTER_ACLS
+SYS_FNMATCHES
+SYS_FNREPLACE
+SYS_GET_ACLIDS
+SYS_GET_COL_ACLIDS
+SYS_GET_PRIVILEGES
+SYS_GETTOKENID
+SYS_GETXTIVAL
+SYS_GUID
+SYSGUID
+SYSKM
+SYS_MAKE_XMLNODEID
+SYS_MAKEXML
+SYS_MKXMLATTR
+SYS_MKXTI
+SYSOBJ
+SYS_OP_ADT2BIN
+SYS_OP_ADTCONS
+SYS_OP_ALSCRVAL
+SYS_OP_ATG
+SYS_OP_BIN2ADT
+SYS_OP_BITVEC
+SYS_OP_BL2R
+SYS_OP_BLOOM_FILTER_LIST
+SYS_OP_BLOOM_FILTER
+SYS_OP_C2C
+SYS_OP_CAST
+SYS_OP_CEG
+SYS_OP_CL2C
+SYS_OP_COMBINED_HASH
+SYS_OP_COMP
+SYS_OP_CONVERT
+SYS_OP_COUNTCHG
+SYS_OP_CSCONV
+SYS_OP_CSCONVTEST
+SYS_OP_CSR
+SYS_OP_CSX_PATCH
+SYS_OP_CYCLED_SEQ
+SYS_OP_DECOMP
+SYS_OP_DESCEND
+SYS_OP_DISTINCT
+SYS_OP_DRA
+SYS_OP_DUMP
+SYS_OP_DV_CHECK
+SYS_OP_ENFORCE_NOT_NULL
+SYSOPER
+SYS_OP_EXTRACT
+SYS_OP_GROUPING
+SYS_OP_GUID
+SYS_OP_HASH
+SYS_OP_IIX
+SYS_OP_ITR
+SYS_OP_KEY_VECTOR_CREATE
+SYS_OP_KEY_VECTOR_FILTER_LIST
+SYS_OP_KEY_VECTOR_FILTER
+SYS_OP_KEY_VECTOR_SUCCEEDED
+SYS_OP_KEY_VECTOR_USE
+SYS_OP_LBID
+SYS_OP_LOBLOC2BLOB
+SYS_OP_LOBLOC2CLOB
+SYS_OP_LOBLOC2ID
+SYS_OP_LOBLOC2NCLOB
+SYS_OP_LOBLOC2TYP
+SYS_OP_LSVI
+SYS_OP_LVL
+SYS_OP_MAKEOID
+SYS_OP_MAP_NONNULL
+SYS_OP_MSR
+SYS_OP_NICOMBINE
+SYS_OP_NIEXTRACT
+SYS_OP_NII
+SYS_OP_NIX
+SYS_OP_NOEXPAND
+SYS_OP_NTCIMG
+SYS_OP_NUMTORAW
+SYS_OP_OIDVALUE
+SYS_OP_OPNSIZE
+SYS_OP_PAR_1
+SYS_OP_PARGID_1
+SYS_OP_PARGID
+SYS_OP_PAR
+SYS_OP_PART_ID
+SYS_OP_PIVOT
+SYS_OP_R2O
+SYS_OP_RAWTONUM
+SYS_OP_RDTM
+SYS_OP_REF
+SYS_OP_RMTD
+SYS_OP_ROWIDTOOBJ
+SYS_OP_RPB
+SYS_OPTLOBPRBSC
+SYS_OP_TOSETID
+SYS_OP_TPR
+SYS_OP_TRTB
+SYS_OPTXICMP
+SYS_OPTXQCASTASNQ
+SYS_OP_UNDESCEND
+SYS_OP_VECAND
+SYS_OP_VECBIT
+SYS_OP_VECOR
+SYS_OP_VECXOR
+SYS_OP_VERSION
+SYS_OP_VREF
+SYS_OP_VVD
+SYS_OP_XMLCONS_FOR_CSX
+SYS_OP_XPTHATG
+SYS_OP_XPTHIDX
+SYS_OP_XPTHOP
+SYS_OP_XTXT2SQLT
+SYS_OP_ZONE_ID
+SYS_ORDERKEY_DEPTH
+SYS_ORDERKEY_MAXCHILD
+SYS_ORDERKEY_PARENT
+SYS_PARALLEL_TXN
+SYS_PATHID_IS_ATTR
+SYS_PATHID_IS_NMSPC
+SYS_PATHID_LASTNAME
+SYS_PATHID_LASTNMSPC
+SYS_PATH_REVERSE
+SYS_PXQEXTRACT
+SYS_RAW_TO_XSID
+SYS_RID_ORDER
+SYS_ROW_DELTA
+SYS_SC_2_XMLT
+SYS_SYNRCIREDO
+SYSTEM_DEFINED
+SYSTEM
+SYSTIMESTAMP
+SYS_TYPEID
+SYS_UMAKEXML
+SYS_XMLANALYZE
+SYS_XMLCONTAINS
+SYS_XMLCONV
+SYS_XMLEXNSURI
+SYS_XMLGEN
+SYS_XMLI_LOC_ISNODE
+SYS_XMLI_LOC_ISTEXT
+SYS_XMLINSTR
+SYS_XMLLOCATOR_GETSVAL
+SYS_XMLNODEID_GETCID
+SYS_XMLNODEID_GETLOCATOR
+SYS_XMLNODEID_GETOKEY
+SYS_XMLNODEID_GETPATHID
+SYS_XMLNODEID_GETPTRID
+SYS_XMLNODEID_GETRID
+SYS_XMLNODEID_GETSVAL
+SYS_XMLNODEID_GETTID
+SYS_XMLNODEID
+SYS_XMLT_2_SC
+SYS_XMLTRANSLATE
+SYS_XMLTYPE2SQL
+SYS_XQ_ASQLCNV
+SYS_XQ_ATOMCNVCHK
+SYS_XQBASEURI
+SYS_XQCASTABLEERRH
+SYS_XQCODEP2STR
+SYS_XQCODEPEQ
+SYS_XQCON2SEQ
+SYS_XQCONCAT
+SYS_XQDELETE
+SYS_XQDFLTCOLATION
+SYS_XQDOC
+SYS_XQDOCURI
+SYS_XQDURDIV
+SYS_XQED4URI
+SYS_XQENDSWITH
+SYS_XQERRH
+SYS_XQERR
+SYS_XQESHTMLURI
+SYS_XQEXLOBVAL
+SYS_XQEXSTWRP
+SYS_XQEXTRACT
+SYS_XQEXTRREF
+SYS_XQEXVAL
+SYS_XQFB2STR
+SYS_XQFNBOOL
+SYS_XQFNCMP
+SYS_XQFNDATIM
+SYS_XQFNLNAME
+SYS_XQFNNM
+SYS_XQFNNSURI
+SYS_XQFNPREDTRUTH
+SYS_XQFNQNM
+SYS_XQFNROOT
+SYS_XQFORMATNUM
+SYS_XQFTCONTAIN
+SYS_XQFUNCR
+SYS_XQGETCONTENT
+SYS_XQINDXOF
+SYS_XQINSERT
+SYS_XQINSPFX
+SYS_XQIRI2URI
+SYS_XQLANG
+SYS_XQLLNMFRMQNM
+SYS_XQMKNODEREF
+SYS_XQNILLED
+SYS_XQNODENAME
+SYS_XQNORMSPACE
+SYS_XQNORMUCODE
+SYS_XQ_NRNG
+SYS_XQNSP4PFX
+SYS_XQNSPFRMQNM
+SYS_XQPFXFRMQNM
+SYS_XQ_PKSQL2XML
+SYS_XQPOLYABS
+SYS_XQPOLYADD
+SYS_XQPOLYCEL
+SYS_XQPOLYCSTBL
+SYS_XQPOLYCST
+SYS_XQPOLYDIV
+SYS_XQPOLYFLR
+SYS_XQPOLYMOD
+SYS_XQPOLYMUL
+SYS_XQPOLYRND
+SYS_XQPOLYSQRT
+SYS_XQPOLYSUB
+SYS_XQPOLYUMUS
+SYS_XQPOLYUPLS
+SYS_XQPOLYVEQ
+SYS_XQPOLYVGE
+SYS_XQPOLYVGT
+SYS_XQPOLYVLE
+SYS_XQPOLYVLT
+SYS_XQPOLYVNE
+SYS_XQREF2VAL
+SYS_XQRENAME
+SYS_XQREPLACE
+SYS_XQRESVURI
+SYS_XQRNDHALF2EVN
+SYS_XQRSLVQNM
+SYS_XQRYENVPGET
+SYS_XQRYVARGET
+SYS_XQRYWRP
+SYS_XQSEQ2CON4XC
+SYS_XQSEQ2CON
+SYS_XQSEQDEEPEQ
+SYS_XQSEQINSB
+SYS_XQSEQRM
+SYS_XQSEQRVS
+SYS_XQSEQSUB
+SYS_XQSEQTYPMATCH
+SYS_XQSTARTSWITH
+SYS_XQSTATBURI
+SYS_XQSTR2CODEP
+SYS_XQSTRJOIN
+SYS_XQSUBSTRAFT
+SYS_XQSUBSTRBEF
+SYS_XQTOKENIZE
+SYS_XQTREATAS
+SYS_XQ_UPKXML2SQL
+SYS_XQXFORM
+SYS_XSID_TO_RAW
+SYS_ZMAP_FILTER
+SYS_ZMAP_REFRESH
+TABLE_LOOKUP_BY_NL
+TABLESPACE_NO
+TABLESPACE
+TABLES
+TABLE_STATS
+TABLE
+TABNO
+TAG
+TANH
+TAN
+TBLORIDXPARTNUM
+TEMPFILE
+TEMPLATE
+TEMPORARY
+TEMP_TABLE
+TEST
+TEXT
+THAN
+THEN
+THE
+THREAD
+THROUGH
+TIER
+TIES
+TIMEOUT
+TIMESTAMP_LTZ_UNCONSTRAINED
+TIMESTAMP
+TIMESTAMP_TZ_UNCONSTRAINED
+TIMESTAMP_UNCONSTRAINED
+TIMES
+TIME
+TIMEZONE
+TIMEZONE_ABBR
+TIMEZONE_HOUR
+TIMEZONE_MINUTE
+TIMEZONE_OFFSET
+TIMEZONE_REGION
+TIME_ZONE
+TIV_GB
+TIV_SSF
+TO_ACLID
+TO_BINARY_DOUBLE
+TO_BINARY_FLOAT
+TO_BLOB
+TO_CLOB
+TO_DSINTERVAL
+TO_LOB
+TO_MULTI_BYTE
+TO_NCHAR
+TO_NCLOB
+TO_NUMBER
+TOPLEVEL
+TO_SINGLE_BYTE
+TO_TIMESTAMP
+TO_TIMESTAMP_TZ
+TO_TIME
+TO_TIME_TZ
+TO
+TO_YMINTERVAL
+TRACE
+TRACING
+TRACKING
+TRAILING
+TRANSACTION
+TRANSFORM_DISTINCT_AGG
+TRANSITIONAL
+TRANSITION
+TRANSLATE
+TRANSLATION
+TREAT
+TRIGGERS
+TRIGGER
+TRUE
+TRUNCATE
+TRUNC
+TRUSTED
+TRUST
+TUNING
+TX
+TYPES
+TYPE
+TZ_OFFSET
+UB2
+UBA
+UCS2
+UID
+UNARCHIVED
+UNBOUNDED
+UNBOUND
+UNCONDITIONAL
+UNDER
+UNDO
+UNDROP
+UNIFORM
+UNION
+UNIQUE
+UNISTR
+UNLIMITED
+UNLOAD
+UNLOCK
+UNMATCHED
+UNNEST_INNERJ_DISTINCT_VIEW
+UNNEST_NOSEMIJ_NODISTINCTVIEW
+UNNEST_SEMIJ_VIEW
+UNNEST
+UNPACKED
+UNPIVOT
+UNPLUG
+UNPROTECTED
+UNQUIESCE
+UNRECOVERABLE
+UNRESTRICTED
+UNSUBSCRIBE
+UNTIL
+UNUSABLE
+UNUSED
+UPDATABLE
+UPDATED
+UPDATE
+UPDATEXML
+UPD_INDEXES
+UPD_JOININDEX
+UPGRADE
+UPPER
+UPSERT
+UROWID
+USABLE
+USAGE
+USE_ANTI
+USE_CONCAT
+USE_CUBE
+USE_HASH_AGGREGATION
+USE_HASH_GBY_FOR_PUSHDOWN
+USE_HASH
+USE_HIDDEN_PARTITIONS
+USE_INVISIBLE_INDEXES
+USE_MERGE_CARTESIAN
+USE_MERGE
+USE_NL
+USE_NL_WITH_INDEX
+USE_PRIVATE_OUTLINES
+USER_DATA
+USER_DEFINED
+USERENV
+USERGROUP
+USER_RECYCLEBIN
+USERS
+USER_TABLESPACES
+USER
+USE_SEMI
+USE_STORED_OUTLINES
+USE_TTT_FOR_GSETS
+USE
+USE_VECTOR_AGGREGATION
+USE_WEAK_NAME_RESL
+USING_NO_EXPAND
+USING
+UTF16BE
+UTF16LE
+UTF32
+UTF8
+V1
+V2
+VALIDATE
+VALIDATION
+VALID_TIME_END
+VALUES
+VALUE
+VARCHAR2
+VARCHAR
+VARIABLE
+VAR_POP
+VARRAYS
+VARRAY
+VAR_SAMP
+VARYING
+VECTOR_READ_TRACE
+VECTOR_READ
+VECTOR_TRANSFORM_DIMS
+VECTOR_TRANSFORM_FACT
+VECTOR_TRANSFORM
+VERIFIER
+VERIFY
+VERSIONING
+VERSIONS_ENDSCN
+VERSIONS_ENDTIME
+VERSIONS_OPERATION
+VERSIONS_STARTSCN
+VERSIONS_STARTTIME
+VERSIONS
+VERSIONS_XID
+VERSION
+VIEW
+VIOLATION
+VIRTUAL
+VISIBILITY
+VISIBLE
+VOLUME
+VSIZE
+WAIT
+WALLET
+WARNING
+WEEKS
+WEEK
+WELLFORMED
+WHENEVER
+WHEN
+WHERE
+WHILE
+WHITESPACE
+WIDTH_BUCKET
+WITHIN
+WITHOUT
+WITH_PLSQL
+WITH
+WORK
+WRAPPED
+WRAPPER
+WRITE
+XDB_FASTPATH_INSERT
+XDB
+X_DYN_PRUNE
+XID
+XML2OBJECT
+XMLAGG
+XMLATTRIBUTES
+XMLCAST
+XMLCDATA
+XMLCOLATTVAL
+XMLCOMMENT
+XMLCONCAT
+XMLDIFF
+XML_DML_RWT_STMT
+XMLELEMENT
+XMLEXISTS2
+XMLEXISTS
+XMLFOREST
+XMLINDEX
+XMLINDEX_REWRITE_IN_SELECT
+XMLINDEX_REWRITE
+XMLINDEX_SEL_IDX_TBL
+XMLISNODE
+XMLISVALID
+XMLNAMESPACES
+XMLPARSE
+XMLPATCH
+XMLPI
+XMLQUERYVAL
+XMLQUERY
+XMLROOT
+XMLSCHEMA
+XMLSERIALIZE
+XMLTABLE
+XMLTRANSFORMBLOB
+XMLTRANSFORM
+XMLTYPE
+XML
+XPATHTABLE
+XS_SYS_CONTEXT
+XS
+XTRANSPORT
+YEARS
+YEAR
+YES
+YMINTERVAL_UNCONSTRAINED
+ZONEMAP
+ZONE
+PREDICTION
+PREDICTION_BOUNDS
+PREDICTION_COST
+PREDICTION_DETAILS
+PREDICTION_PROBABILITY
+PREDICTION_SET
+CUME_DIST
+DENSE_RANK
+LISTAGG
+PERCENT_RANK
+PERCENTILE_CONT
+PERCENTILE_DISC
+RANK
+AVG
+CORR
+COVAR_
+DECODE
+LAG
+LEAD
+MAX
+MEDIAN
+MIN
+NTILE
+NVL
+RATIO_TO_REPORT
+REGR_
+ROUND
+ROW_NUMBER
+SUBSTR
+TO_CHAR
+TRIM
+SUM
+STDDEV
+VAR_
+VARIANCE
+LEAST
+GREATEST
+TO_DATE
+NATIONAL_CHAR_STRING_LIT
+BIT_STRING_LIT
+HEX_STRING_LIT
+DOUBLE_PERIOD
+PERIOD
+UNSIGNED_INTEGER
+APPROXIMATE_NUM_LIT
+CHAR_STRING
+CHAR_STRING_PERL
+QS_ANGLE
+QS_BRACE
+QS_BRACK
+QS_PAREN
+QS_EXCLAM
+QS_SHARP
+QS_QUOTE
+QS_DQUOTE
+DELIMITED_ID
+PERCENT
+AMPERSAND
+LEFT_PAREN
+RIGHT_PAREN
+DOUBLE_ASTERISK
+ASTERISK
+PLUS_SIGN
+MINUS_SIGN
+COMMA
+SOLIDUS
+AT_SIGN
+ASSIGN_OP
+BINDVAR
+NOT_EQUAL_OP
+CARRET_OPERATOR_PART
+TILDE_OPERATOR_PART
+EXCLAMATION_OPERATOR_PART
+GREATER_THAN_OP
+LESS_THAN_OP
+COLON
+SEMICOLON
+BAR
+EQUALS_OP
+LEFT_BRACKET
+RIGHT_BRACKET
+INTRODUCER
+SINGLE_LINE_COMMENT
+MULTI_LINE_COMMENT
+REMARK_COMMENT
+PROMPT_MESSAGE
+START_CMD
+REGULAR_ID
+SPACES
+NEWLINE_EOF
+QUESTION_MARK
+SIMPLE_LETTER
+FLOAT_FRAGMENT
+NEWLINE
+SPACE
+
+channel names:
+DEFAULT_TOKEN_CHANNEL
+HIDDEN
+
+mode names:
+DEFAULT_MODE
+
+atn:
+[3, 24715, 42794, 33075, 47597, 16764, 15335, 30598, 22884, 2, 2255, 29745, 8, 1, 4, 2, 9, 2, 4, 3, 9, 3, 4, 4, 9, 4, 4, 5, 9, 5, 4, 6, 9, 6, 4, 7, 9, 7, 4, 8, 9, 8, 4, 9, 9, 9, 4, 10, 9, 10, 4, 11, 9, 11, 4, 12, 9, 12, 4, 13, 9, 13, 4, 14, 9, 14, 4, 15, 9, 15, 4, 16, 9, 16, 4, 17, 9, 17, 4, 18, 9, 18, 4, 19, 9, 19, 4, 20, 9, 20, 4, 21, 9, 21, 4, 22, 9, 22, 4, 23, 9, 23, 4, 24, 9, 24, 4, 25, 9, 25, 4, 26, 9, 26, 4, 27, 9, 27, 4, 28, 9, 28, 4, 29, 9, 29, 4, 30, 9, 30, 4, 31, 9, 31, 4, 32, 9, 32, 4, 33, 9, 33, 4, 34, 9, 34, 4, 35, 9, 35, 4, 36, 9, 36, 4, 37, 9, 37, 4, 38, 9, 38, 4, 39, 9, 39, 4, 40, 9, 40, 4, 41, 9, 41, 4, 42, 9, 42, 4, 43, 9, 43, 4, 44, 9, 44, 4, 45, 9, 45, 4, 46, 9, 46, 4, 47, 9, 47, 4, 48, 9, 48, 4, 49, 9, 49, 4, 50, 9, 50, 4, 51, 9, 51, 4, 52, 9, 52, 4, 53, 9, 53, 4, 54, 9, 54, 4, 55, 9, 55, 4, 56, 9, 56, 4, 57, 9, 57, 4, 58, 9, 58, 4, 59, 9, 59, 4, 60, 9, 60, 4, 61, 9, 61, 4, 62, 9, 62, 4, 63, 9, 63, 4, 64, 9, 64, 4, 65, 9, 65, 4, 66, 9, 66, 4, 67, 9, 67, 4, 68, 9, 68, 4, 69, 9, 69, 4, 70, 9, 70, 4, 71, 9, 71, 4, 72, 9, 72, 4, 73, 9, 73, 4, 74, 9, 74, 4, 75, 9, 75, 4, 76, 9, 76, 4, 77, 9, 77, 4, 78, 9, 78, 4, 79, 9, 79, 4, 80, 9, 80, 4, 81, 9, 81, 4, 82, 9, 82, 4, 83, 9, 83, 4, 84, 9, 84, 4, 85, 9, 85, 4, 86, 9, 86, 4, 87, 9, 87, 4, 88, 9, 88, 4, 89, 9, 89, 4, 90, 9, 90, 4, 91, 9, 91, 4, 92, 9, 92, 4, 93, 9, 93, 4, 94, 9, 94, 4, 95, 9, 95, 4, 96, 9, 96, 4, 97, 9, 97, 4, 98, 9, 98, 4, 99, 9, 99, 4, 100, 9, 100, 4, 101, 9, 101, 4, 102, 9, 102, 4, 103, 9, 103, 4, 104, 9, 104, 4, 105, 9, 105, 4, 106, 9, 106, 4, 107, 9, 107, 4, 108, 9, 108, 4, 109, 9, 109, 4, 110, 9, 110, 4, 111, 9, 111, 4, 112, 9, 112, 4, 113, 9, 113, 4, 114, 9, 114, 4, 115, 9, 115, 4, 116, 9, 116, 4, 117, 9, 117, 4, 118, 9, 118, 4, 119, 9, 119, 4, 120, 9, 120, 4, 121, 9, 121, 4, 122, 9, 122, 4, 123, 9, 123, 4, 124, 9, 124, 4, 125, 9, 125, 4, 126, 9, 126, 4, 127, 9, 127, 4, 128, 9, 128, 4, 129, 9, 129, 4, 130, 9, 130, 4, 131, 9, 131, 4, 132, 9, 132, 4, 133, 9, 133, 4, 134, 9, 134, 4, 135, 9, 135, 4, 136, 9, 136, 4, 137, 9, 137, 4, 138, 9, 138, 4, 139, 9, 139, 4, 140, 9, 140, 4, 141, 9, 141, 4, 142, 9, 142, 4, 143, 9, 143, 4, 144, 9, 144, 4, 145, 9, 145, 4, 146, 9, 146, 4, 147, 9, 147, 4, 148, 9, 148, 4, 149, 9, 149, 4, 150, 9, 150, 4, 151, 9, 151, 4, 152, 9, 152, 4, 153, 9, 153, 4, 154, 9, 154, 4, 155, 9, 155, 4, 156, 9, 156, 4, 157, 9, 157, 4, 158, 9, 158, 4, 159, 9, 159, 4, 160, 9, 160, 4, 161, 9, 161, 4, 162, 9, 162, 4, 163, 9, 163, 4, 164, 9, 164, 4, 165, 9, 165, 4, 166, 9, 166, 4, 167, 9, 167, 4, 168, 9, 168, 4, 169, 9, 169, 4, 170, 9, 170, 4, 171, 9, 171, 4, 172, 9, 172, 4, 173, 9, 173, 4, 174, 9, 174, 4, 175, 9, 175, 4, 176, 9, 176, 4, 177, 9, 177, 4, 178, 9, 178, 4, 179, 9, 179, 4, 180, 9, 180, 4, 181, 9, 181, 4, 182, 9, 182, 4, 183, 9, 183, 4, 184, 9, 184, 4, 185, 9, 185, 4, 186, 9, 186, 4, 187, 9, 187, 4, 188, 9, 188, 4, 189, 9, 189, 4, 190, 9, 190, 4, 191, 9, 191, 4, 192, 9, 192, 4, 193, 9, 193, 4, 194, 9, 194, 4, 195, 9, 195, 4, 196, 9, 196, 4, 197, 9, 197, 4, 198, 9, 198, 4, 199, 9, 199, 4, 200, 9, 200, 4, 201, 9, 201, 4, 202, 9, 202, 4, 203, 9, 203, 4, 204, 9, 204, 4, 205, 9, 205, 4, 206, 9, 206, 4, 207, 9, 207, 4, 208, 9, 208, 4, 209, 9, 209, 4, 210, 9, 210, 4, 211, 9, 211, 4, 212, 9, 212, 4, 213, 9, 213, 4, 214, 9, 214, 4, 215, 9, 215, 4, 216, 9, 216, 4, 217, 9, 217, 4, 218, 9, 218, 4, 219, 9, 219, 4, 220, 9, 220, 4, 221, 9, 221, 4, 222, 9, 222, 4, 223, 9, 223, 4, 224, 9, 224, 4, 225, 9, 225, 4, 226, 9, 226, 4, 227, 9, 227, 4, 228, 9, 228, 4, 229, 9, 229, 4, 230, 9, 230, 4, 231, 9, 231, 4, 232, 9, 232, 4, 233, 9, 233, 4, 234, 9, 234, 4, 235, 9, 235, 4, 236, 9, 236, 4, 237, 9, 237, 4, 238, 9, 238, 4, 239, 9, 239, 4, 240, 9, 240, 4, 241, 9, 241, 4, 242, 9, 242, 4, 243, 9, 243, 4, 244, 9, 244, 4, 245, 9, 245, 4, 246, 9, 246, 4, 247, 9, 247, 4, 248, 9, 248, 4, 249, 9, 249, 4, 250, 9, 250, 4, 251, 9, 251, 4, 252, 9, 252, 4, 253, 9, 253, 4, 254, 9, 254, 4, 255, 9, 255, 4, 256, 9, 256, 4, 257, 9, 257, 4, 258, 9, 258, 4, 259, 9, 259, 4, 260, 9, 260, 4, 261, 9, 261, 4, 262, 9, 262, 4, 263, 9, 263, 4, 264, 9, 264, 4, 265, 9, 265, 4, 266, 9, 266, 4, 267, 9, 267, 4, 268, 9, 268, 4, 269, 9, 269, 4, 270, 9, 270, 4, 271, 9, 271, 4, 272, 9, 272, 4, 273, 9, 273, 4, 274, 9, 274, 4, 275, 9, 275, 4, 276, 9, 276, 4, 277, 9, 277, 4, 278, 9, 278, 4, 279, 9, 279, 4, 280, 9, 280, 4, 281, 9, 281, 4, 282, 9, 282, 4, 283, 9, 283, 4, 284, 9, 284, 4, 285, 9, 285, 4, 286, 9, 286, 4, 287, 9, 287, 4, 288, 9, 288, 4, 289, 9, 289, 4, 290, 9, 290, 4, 291, 9, 291, 4, 292, 9, 292, 4, 293, 9, 293, 4, 294, 9, 294, 4, 295, 9, 295, 4, 296, 9, 296, 4, 297, 9, 297, 4, 298, 9, 298, 4, 299, 9, 299, 4, 300, 9, 300, 4, 301, 9, 301, 4, 302, 9, 302, 4, 303, 9, 303, 4, 304, 9, 304, 4, 305, 9, 305, 4, 306, 9, 306, 4, 307, 9, 307, 4, 308, 9, 308, 4, 309, 9, 309, 4, 310, 9, 310, 4, 311, 9, 311, 4, 312, 9, 312, 4, 313, 9, 313, 4, 314, 9, 314, 4, 315, 9, 315, 4, 316, 9, 316, 4, 317, 9, 317, 4, 318, 9, 318, 4, 319, 9, 319, 4, 320, 9, 320, 4, 321, 9, 321, 4, 322, 9, 322, 4, 323, 9, 323, 4, 324, 9, 324, 4, 325, 9, 325, 4, 326, 9, 326, 4, 327, 9, 327, 4, 328, 9, 328, 4, 329, 9, 329, 4, 330, 9, 330, 4, 331, 9, 331, 4, 332, 9, 332, 4, 333, 9, 333, 4, 334, 9, 334, 4, 335, 9, 335, 4, 336, 9, 336, 4, 337, 9, 337, 4, 338, 9, 338, 4, 339, 9, 339, 4, 340, 9, 340, 4, 341, 9, 341, 4, 342, 9, 342, 4, 343, 9, 343, 4, 344, 9, 344, 4, 345, 9, 345, 4, 346, 9, 346, 4, 347, 9, 347, 4, 348, 9, 348, 4, 349, 9, 349, 4, 350, 9, 350, 4, 351, 9, 351, 4, 352, 9, 352, 4, 353, 9, 353, 4, 354, 9, 354, 4, 355, 9, 355, 4, 356, 9, 356, 4, 357, 9, 357, 4, 358, 9, 358, 4, 359, 9, 359, 4, 360, 9, 360, 4, 361, 9, 361, 4, 362, 9, 362, 4, 363, 9, 363, 4, 364, 9, 364, 4, 365, 9, 365, 4, 366, 9, 366, 4, 367, 9, 367, 4, 368, 9, 368, 4, 369, 9, 369, 4, 370, 9, 370, 4, 371, 9, 371, 4, 372, 9, 372, 4, 373, 9, 373, 4, 374, 9, 374, 4, 375, 9, 375, 4, 376, 9, 376, 4, 377, 9, 377, 4, 378, 9, 378, 4, 379, 9, 379, 4, 380, 9, 380, 4, 381, 9, 381, 4, 382, 9, 382, 4, 383, 9, 383, 4, 384, 9, 384, 4, 385, 9, 385, 4, 386, 9, 386, 4, 387, 9, 387, 4, 388, 9, 388, 4, 389, 9, 389, 4, 390, 9, 390, 4, 391, 9, 391, 4, 392, 9, 392, 4, 393, 9, 393, 4, 394, 9, 394, 4, 395, 9, 395, 4, 396, 9, 396, 4, 397, 9, 397, 4, 398, 9, 398, 4, 399, 9, 399, 4, 400, 9, 400, 4, 401, 9, 401, 4, 402, 9, 402, 4, 403, 9, 403, 4, 404, 9, 404, 4, 405, 9, 405, 4, 406, 9, 406, 4, 407, 9, 407, 4, 408, 9, 408, 4, 409, 9, 409, 4, 410, 9, 410, 4, 411, 9, 411, 4, 412, 9, 412, 4, 413, 9, 413, 4, 414, 9, 414, 4, 415, 9, 415, 4, 416, 9, 416, 4, 417, 9, 417, 4, 418, 9, 418, 4, 419, 9, 419, 4, 420, 9, 420, 4, 421, 9, 421, 4, 422, 9, 422, 4, 423, 9, 423, 4, 424, 9, 424, 4, 425, 9, 425, 4, 426, 9, 426, 4, 427, 9, 427, 4, 428, 9, 428, 4, 429, 9, 429, 4, 430, 9, 430, 4, 431, 9, 431, 4, 432, 9, 432, 4, 433, 9, 433, 4, 434, 9, 434, 4, 435, 9, 435, 4, 436, 9, 436, 4, 437, 9, 437, 4, 438, 9, 438, 4, 439, 9, 439, 4, 440, 9, 440, 4, 441, 9, 441, 4, 442, 9, 442, 4, 443, 9, 443, 4, 444, 9, 444, 4, 445, 9, 445, 4, 446, 9, 446, 4, 447, 9, 447, 4, 448, 9, 448, 4, 449, 9, 449, 4, 450, 9, 450, 4, 451, 9, 451, 4, 452, 9, 452, 4, 453, 9, 453, 4, 454, 9, 454, 4, 455, 9, 455, 4, 456, 9, 456, 4, 457, 9, 457, 4, 458, 9, 458, 4, 459, 9, 459, 4, 460, 9, 460, 4, 461, 9, 461, 4, 462, 9, 462, 4, 463, 9, 463, 4, 464, 9, 464, 4, 465, 9, 465, 4, 466, 9, 466, 4, 467, 9, 467, 4, 468, 9, 468, 4, 469, 9, 469, 4, 470, 9, 470, 4, 471, 9, 471, 4, 472, 9, 472, 4, 473, 9, 473, 4, 474, 9, 474, 4, 475, 9, 475, 4, 476, 9, 476, 4, 477, 9, 477, 4, 478, 9, 478, 4, 479, 9, 479, 4, 480, 9, 480, 4, 481, 9, 481, 4, 482, 9, 482, 4, 483, 9, 483, 4, 484, 9, 484, 4, 485, 9, 485, 4, 486, 9, 486, 4, 487, 9, 487, 4, 488, 9, 488, 4, 489, 9, 489, 4, 490, 9, 490, 4, 491, 9, 491, 4, 492, 9, 492, 4, 493, 9, 493, 4, 494, 9, 494, 4, 495, 9, 495, 4, 496, 9, 496, 4, 497, 9, 497, 4, 498, 9, 498, 4, 499, 9, 499, 4, 500, 9, 500, 4, 501, 9, 501, 4, 502, 9, 502, 4, 503, 9, 503, 4, 504, 9, 504, 4, 505, 9, 505, 4, 506, 9, 506, 4, 507, 9, 507, 4, 508, 9, 508, 4, 509, 9, 509, 4, 510, 9, 510, 4, 511, 9, 511, 4, 512, 9, 512, 4, 513, 9, 513, 4, 514, 9, 514, 4, 515, 9, 515, 4, 516, 9, 516, 4, 517, 9, 517, 4, 518, 9, 518, 4, 519, 9, 519, 4, 520, 9, 520, 4, 521, 9, 521, 4, 522, 9, 522, 4, 523, 9, 523, 4, 524, 9, 524, 4, 525, 9, 525, 4, 526, 9, 526, 4, 527, 9, 527, 4, 528, 9, 528, 4, 529, 9, 529, 4, 530, 9, 530, 4, 531, 9, 531, 4, 532, 9, 532, 4, 533, 9, 533, 4, 534, 9, 534, 4, 535, 9, 535, 4, 536, 9, 536, 4, 537, 9, 537, 4, 538, 9, 538, 4, 539, 9, 539, 4, 540, 9, 540, 4, 541, 9, 541, 4, 542, 9, 542, 4, 543, 9, 543, 4, 544, 9, 544, 4, 545, 9, 545, 4, 546, 9, 546, 4, 547, 9, 547, 4, 548, 9, 548, 4, 549, 9, 549, 4, 550, 9, 550, 4, 551, 9, 551, 4, 552, 9, 552, 4, 553, 9, 553, 4, 554, 9, 554, 4, 555, 9, 555, 4, 556, 9, 556, 4, 557, 9, 557, 4, 558, 9, 558, 4, 559, 9, 559, 4, 560, 9, 560, 4, 561, 9, 561, 4, 562, 9, 562, 4, 563, 9, 563, 4, 564, 9, 564, 4, 565, 9, 565, 4, 566, 9, 566, 4, 567, 9, 567, 4, 568, 9, 568, 4, 569, 9, 569, 4, 570, 9, 570, 4, 571, 9, 571, 4, 572, 9, 572, 4, 573, 9, 573, 4, 574, 9, 574, 4, 575, 9, 575, 4, 576, 9, 576, 4, 577, 9, 577, 4, 578, 9, 578, 4, 579, 9, 579, 4, 580, 9, 580, 4, 581, 9, 581, 4, 582, 9, 582, 4, 583, 9, 583, 4, 584, 9, 584, 4, 585, 9, 585, 4, 586, 9, 586, 4, 587, 9, 587, 4, 588, 9, 588, 4, 589, 9, 589, 4, 590, 9, 590, 4, 591, 9, 591, 4, 592, 9, 592, 4, 593, 9, 593, 4, 594, 9, 594, 4, 595, 9, 595, 4, 596, 9, 596, 4, 597, 9, 597, 4, 598, 9, 598, 4, 599, 9, 599, 4, 600, 9, 600, 4, 601, 9, 601, 4, 602, 9, 602, 4, 603, 9, 603, 4, 604, 9, 604, 4, 605, 9, 605, 4, 606, 9, 606, 4, 607, 9, 607, 4, 608, 9, 608, 4, 609, 9, 609, 4, 610, 9, 610, 4, 611, 9, 611, 4, 612, 9, 612, 4, 613, 9, 613, 4, 614, 9, 614, 4, 615, 9, 615, 4, 616, 9, 616, 4, 617, 9, 617, 4, 618, 9, 618, 4, 619, 9, 619, 4, 620, 9, 620, 4, 621, 9, 621, 4, 622, 9, 622, 4, 623, 9, 623, 4, 624, 9, 624, 4, 625, 9, 625, 4, 626, 9, 626, 4, 627, 9, 627, 4, 628, 9, 628, 4, 629, 9, 629, 4, 630, 9, 630, 4, 631, 9, 631, 4, 632, 9, 632, 4, 633, 9, 633, 4, 634, 9, 634, 4, 635, 9, 635, 4, 636, 9, 636, 4, 637, 9, 637, 4, 638, 9, 638, 4, 639, 9, 639, 4, 640, 9, 640, 4, 641, 9, 641, 4, 642, 9, 642, 4, 643, 9, 643, 4, 644, 9, 644, 4, 645, 9, 645, 4, 646, 9, 646, 4, 647, 9, 647, 4, 648, 9, 648, 4, 649, 9, 649, 4, 650, 9, 650, 4, 651, 9, 651, 4, 652, 9, 652, 4, 653, 9, 653, 4, 654, 9, 654, 4, 655, 9, 655, 4, 656, 9, 656, 4, 657, 9, 657, 4, 658, 9, 658, 4, 659, 9, 659, 4, 660, 9, 660, 4, 661, 9, 661, 4, 662, 9, 662, 4, 663, 9, 663, 4, 664, 9, 664, 4, 665, 9, 665, 4, 666, 9, 666, 4, 667, 9, 667, 4, 668, 9, 668, 4, 669, 9, 669, 4, 670, 9, 670, 4, 671, 9, 671, 4, 672, 9, 672, 4, 673, 9, 673, 4, 674, 9, 674, 4, 675, 9, 675, 4, 676, 9, 676, 4, 677, 9, 677, 4, 678, 9, 678, 4, 679, 9, 679, 4, 680, 9, 680, 4, 681, 9, 681, 4, 682, 9, 682, 4, 683, 9, 683, 4, 684, 9, 684, 4, 685, 9, 685, 4, 686, 9, 686, 4, 687, 9, 687, 4, 688, 9, 688, 4, 689, 9, 689, 4, 690, 9, 690, 4, 691, 9, 691, 4, 692, 9, 692, 4, 693, 9, 693, 4, 694, 9, 694, 4, 695, 9, 695, 4, 696, 9, 696, 4, 697, 9, 697, 4, 698, 9, 698, 4, 699, 9, 699, 4, 700, 9, 700, 4, 701, 9, 701, 4, 702, 9, 702, 4, 703, 9, 703, 4, 704, 9, 704, 4, 705, 9, 705, 4, 706, 9, 706, 4, 707, 9, 707, 4, 708, 9, 708, 4, 709, 9, 709, 4, 710, 9, 710, 4, 711, 9, 711, 4, 712, 9, 712, 4, 713, 9, 713, 4, 714, 9, 714, 4, 715, 9, 715, 4, 716, 9, 716, 4, 717, 9, 717, 4, 718, 9, 718, 4, 719, 9, 719, 4, 720, 9, 720, 4, 721, 9, 721, 4, 722, 9, 722, 4, 723, 9, 723, 4, 724, 9, 724, 4, 725, 9, 725, 4, 726, 9, 726, 4, 727, 9, 727, 4, 728, 9, 728, 4, 729, 9, 729, 4, 730, 9, 730, 4, 731, 9, 731, 4, 732, 9, 732, 4, 733, 9, 733, 4, 734, 9, 734, 4, 735, 9, 735, 4, 736, 9, 736, 4, 737, 9, 737, 4, 738, 9, 738, 4, 739, 9, 739, 4, 740, 9, 740, 4, 741, 9, 741, 4, 742, 9, 742, 4, 743, 9, 743, 4, 744, 9, 744, 4, 745, 9, 745, 4, 746, 9, 746, 4, 747, 9, 747, 4, 748, 9, 748, 4, 749, 9, 749, 4, 750, 9, 750, 4, 751, 9, 751, 4, 752, 9, 752, 4, 753, 9, 753, 4, 754, 9, 754, 4, 755, 9, 755, 4, 756, 9, 756, 4, 757, 9, 757, 4, 758, 9, 758, 4, 759, 9, 759, 4, 760, 9, 760, 4, 761, 9, 761, 4, 762, 9, 762, 4, 763, 9, 763, 4, 764, 9, 764, 4, 765, 9, 765, 4, 766, 9, 766, 4, 767, 9, 767, 4, 768, 9, 768, 4, 769, 9, 769, 4, 770, 9, 770, 4, 771, 9, 771, 4, 772, 9, 772, 4, 773, 9, 773, 4, 774, 9, 774, 4, 775, 9, 775, 4, 776, 9, 776, 4, 777, 9, 777, 4, 778, 9, 778, 4, 779, 9, 779, 4, 780, 9, 780, 4, 781, 9, 781, 4, 782, 9, 782, 4, 783, 9, 783, 4, 784, 9, 784, 4, 785, 9, 785, 4, 786, 9, 786, 4, 787, 9, 787, 4, 788, 9, 788, 4, 789, 9, 789, 4, 790, 9, 790, 4, 791, 9, 791, 4, 792, 9, 792, 4, 793, 9, 793, 4, 794, 9, 794, 4, 795, 9, 795, 4, 796, 9, 796, 4, 797, 9, 797, 4, 798, 9, 798, 4, 799, 9, 799, 4, 800, 9, 800, 4, 801, 9, 801, 4, 802, 9, 802, 4, 803, 9, 803, 4, 804, 9, 804, 4, 805, 9, 805, 4, 806, 9, 806, 4, 807, 9, 807, 4, 808, 9, 808, 4, 809, 9, 809, 4, 810, 9, 810, 4, 811, 9, 811, 4, 812, 9, 812, 4, 813, 9, 813, 4, 814, 9, 814, 4, 815, 9, 815, 4, 816, 9, 816, 4, 817, 9, 817, 4, 818, 9, 818, 4, 819, 9, 819, 4, 820, 9, 820, 4, 821, 9, 821, 4, 822, 9, 822, 4, 823, 9, 823, 4, 824, 9, 824, 4, 825, 9, 825, 4, 826, 9, 826, 4, 827, 9, 827, 4, 828, 9, 828, 4, 829, 9, 829, 4, 830, 9, 830, 4, 831, 9, 831, 4, 832, 9, 832, 4, 833, 9, 833, 4, 834, 9, 834, 4, 835, 9, 835, 4, 836, 9, 836, 4, 837, 9, 837, 4, 838, 9, 838, 4, 839, 9, 839, 4, 840, 9, 840, 4, 841, 9, 841, 4, 842, 9, 842, 4, 843, 9, 843, 4, 844, 9, 844, 4, 845, 9, 845, 4, 846, 9, 846, 4, 847, 9, 847, 4, 848, 9, 848, 4, 849, 9, 849, 4, 850, 9, 850, 4, 851, 9, 851, 4, 852, 9, 852, 4, 853, 9, 853, 4, 854, 9, 854, 4, 855, 9, 855, 4, 856, 9, 856, 4, 857, 9, 857, 4, 858, 9, 858, 4, 859, 9, 859, 4, 860, 9, 860, 4, 861, 9, 861, 4, 862, 9, 862, 4, 863, 9, 863, 4, 864, 9, 864, 4, 865, 9, 865, 4, 866, 9, 866, 4, 867, 9, 867, 4, 868, 9, 868, 4, 869, 9, 869, 4, 870, 9, 870, 4, 871, 9, 871, 4, 872, 9, 872, 4, 873, 9, 873, 4, 874, 9, 874, 4, 875, 9, 875, 4, 876, 9, 876, 4, 877, 9, 877, 4, 878, 9, 878, 4, 879, 9, 879, 4, 880, 9, 880, 4, 881, 9, 881, 4, 882, 9, 882, 4, 883, 9, 883, 4, 884, 9, 884, 4, 885, 9, 885, 4, 886, 9, 886, 4, 887, 9, 887, 4, 888, 9, 888, 4, 889, 9, 889, 4, 890, 9, 890, 4, 891, 9, 891, 4, 892, 9, 892, 4, 893, 9, 893, 4, 894, 9, 894, 4, 895, 9, 895, 4, 896, 9, 896, 4, 897, 9, 897, 4, 898, 9, 898, 4, 899, 9, 899, 4, 900, 9, 900, 4, 901, 9, 901, 4, 902, 9, 902, 4, 903, 9, 903, 4, 904, 9, 904, 4, 905, 9, 905, 4, 906, 9, 906, 4, 907, 9, 907, 4, 908, 9, 908, 4, 909, 9, 909, 4, 910, 9, 910, 4, 911, 9, 911, 4, 912, 9, 912, 4, 913, 9, 913, 4, 914, 9, 914, 4, 915, 9, 915, 4, 916, 9, 916, 4, 917, 9, 917, 4, 918, 9, 918, 4, 919, 9, 919, 4, 920, 9, 920, 4, 921, 9, 921, 4, 922, 9, 922, 4, 923, 9, 923, 4, 924, 9, 924, 4, 925, 9, 925, 4, 926, 9, 926, 4, 927, 9, 927, 4, 928, 9, 928, 4, 929, 9, 929, 4, 930, 9, 930, 4, 931, 9, 931, 4, 932, 9, 932, 4, 933, 9, 933, 4, 934, 9, 934, 4, 935, 9, 935, 4, 936, 9, 936, 4, 937, 9, 937, 4, 938, 9, 938, 4, 939, 9, 939, 4, 940, 9, 940, 4, 941, 9, 941, 4, 942, 9, 942, 4, 943, 9, 943, 4, 944, 9, 944, 4, 945, 9, 945, 4, 946, 9, 946, 4, 947, 9, 947, 4, 948, 9, 948, 4, 949, 9, 949, 4, 950, 9, 950, 4, 951, 9, 951, 4, 952, 9, 952, 4, 953, 9, 953, 4, 954, 9, 954, 4, 955, 9, 955, 4, 956, 9, 956, 4, 957, 9, 957, 4, 958, 9, 958, 4, 959, 9, 959, 4, 960, 9, 960, 4, 961, 9, 961, 4, 962, 9, 962, 4, 963, 9, 963, 4, 964, 9, 964, 4, 965, 9, 965, 4, 966, 9, 966, 4, 967, 9, 967, 4, 968, 9, 968, 4, 969, 9, 969, 4, 970, 9, 970, 4, 971, 9, 971, 4, 972, 9, 972, 4, 973, 9, 973, 4, 974, 9, 974, 4, 975, 9, 975, 4, 976, 9, 976, 4, 977, 9, 977, 4, 978, 9, 978, 4, 979, 9, 979, 4, 980, 9, 980, 4, 981, 9, 981, 4, 982, 9, 982, 4, 983, 9, 983, 4, 984, 9, 984, 4, 985, 9, 985, 4, 986, 9, 986, 4, 987, 9, 987, 4, 988, 9, 988, 4, 989, 9, 989, 4, 990, 9, 990, 4, 991, 9, 991, 4, 992, 9, 992, 4, 993, 9, 993, 4, 994, 9, 994, 4, 995, 9, 995, 4, 996, 9, 996, 4, 997, 9, 997, 4, 998, 9, 998, 4, 999, 9, 999, 4, 1000, 9, 1000, 4, 1001, 9, 1001, 4, 1002, 9, 1002, 4, 1003, 9, 1003, 4, 1004, 9, 1004, 4, 1005, 9, 1005, 4, 1006, 9, 1006, 4, 1007, 9, 1007, 4, 1008, 9, 1008, 4, 1009, 9, 1009, 4, 1010, 9, 1010, 4, 1011, 9, 1011, 4, 1012, 9, 1012, 4, 1013, 9, 1013, 4, 1014, 9, 1014, 4, 1015, 9, 1015, 4, 1016, 9, 1016, 4, 1017, 9, 1017, 4, 1018, 9, 1018, 4, 1019, 9, 1019, 4, 1020, 9, 1020, 4, 1021, 9, 1021, 4, 1022, 9, 1022, 4, 1023, 9, 1023, 4, 1024, 9, 1024, 4, 1025, 9, 1025, 4, 1026, 9, 1026, 4, 1027, 9, 1027, 4, 1028, 9, 1028, 4, 1029, 9, 1029, 4, 1030, 9, 1030, 4, 1031, 9, 1031, 4, 1032, 9, 1032, 4, 1033, 9, 1033, 4, 1034, 9, 1034, 4, 1035, 9, 1035, 4, 1036, 9, 1036, 4, 1037, 9, 1037, 4, 1038, 9, 1038, 4, 1039, 9, 1039, 4, 1040, 9, 1040, 4, 1041, 9, 1041, 4, 1042, 9, 1042, 4, 1043, 9, 1043, 4, 1044, 9, 1044, 4, 1045, 9, 1045, 4, 1046, 9, 1046, 4, 1047, 9, 1047, 4, 1048, 9, 1048, 4, 1049, 9, 1049, 4, 1050, 9, 1050, 4, 1051, 9, 1051, 4, 1052, 9, 1052, 4, 1053, 9, 1053, 4, 1054, 9, 1054, 4, 1055, 9, 1055, 4, 1056, 9, 1056, 4, 1057, 9, 1057, 4, 1058, 9, 1058, 4, 1059, 9, 1059, 4, 1060, 9, 1060, 4, 1061, 9, 1061, 4, 1062, 9, 1062, 4, 1063, 9, 1063, 4, 1064, 9, 1064, 4, 1065, 9, 1065, 4, 1066, 9, 1066, 4, 1067, 9, 1067, 4, 1068, 9, 1068, 4, 1069, 9, 1069, 4, 1070, 9, 1070, 4, 1071, 9, 1071, 4, 1072, 9, 1072, 4, 1073, 9, 1073, 4, 1074, 9, 1074, 4, 1075, 9, 1075, 4, 1076, 9, 1076, 4, 1077, 9, 1077, 4, 1078, 9, 1078, 4, 1079, 9, 1079, 4, 1080, 9, 1080, 4, 1081, 9, 1081, 4, 1082, 9, 1082, 4, 1083, 9, 1083, 4, 1084, 9, 1084, 4, 1085, 9, 1085, 4, 1086, 9, 1086, 4, 1087, 9, 1087, 4, 1088, 9, 1088, 4, 1089, 9, 1089, 4, 1090, 9, 1090, 4, 1091, 9, 1091, 4, 1092, 9, 1092, 4, 1093, 9, 1093, 4, 1094, 9, 1094, 4, 1095, 9, 1095, 4, 1096, 9, 1096, 4, 1097, 9, 1097, 4, 1098, 9, 1098, 4, 1099, 9, 1099, 4, 1100, 9, 1100, 4, 1101, 9, 1101, 4, 1102, 9, 1102, 4, 1103, 9, 1103, 4, 1104, 9, 1104, 4, 1105, 9, 1105, 4, 1106, 9, 1106, 4, 1107, 9, 1107, 4, 1108, 9, 1108, 4, 1109, 9, 1109, 4, 1110, 9, 1110, 4, 1111, 9, 1111, 4, 1112, 9, 1112, 4, 1113, 9, 1113, 4, 1114, 9, 1114, 4, 1115, 9, 1115, 4, 1116, 9, 1116, 4, 1117, 9, 1117, 4, 1118, 9, 1118, 4, 1119, 9, 1119, 4, 1120, 9, 1120, 4, 1121, 9, 1121, 4, 1122, 9, 1122, 4, 1123, 9, 1123, 4, 1124, 9, 1124, 4, 1125, 9, 1125, 4, 1126, 9, 1126, 4, 1127, 9, 1127, 4, 1128, 9, 1128, 4, 1129, 9, 1129, 4, 1130, 9, 1130, 4, 1131, 9, 1131, 4, 1132, 9, 1132, 4, 1133, 9, 1133, 4, 1134, 9, 1134, 4, 1135, 9, 1135, 4, 1136, 9, 1136, 4, 1137, 9, 1137, 4, 1138, 9, 1138, 4, 1139, 9, 1139, 4, 1140, 9, 1140, 4, 1141, 9, 1141, 4, 1142, 9, 1142, 4, 1143, 9, 1143, 4, 1144, 9, 1144, 4, 1145, 9, 1145, 4, 1146, 9, 1146, 4, 1147, 9, 1147, 4, 1148, 9, 1148, 4, 1149, 9, 1149, 4, 1150, 9, 1150, 4, 1151, 9, 1151, 4, 1152, 9, 1152, 4, 1153, 9, 1153, 4, 1154, 9, 1154, 4, 1155, 9, 1155, 4, 1156, 9, 1156, 4, 1157, 9, 1157, 4, 1158, 9, 1158, 4, 1159, 9, 1159, 4, 1160, 9, 1160, 4, 1161, 9, 1161, 4, 1162, 9, 1162, 4, 1163, 9, 1163, 4, 1164, 9, 1164, 4, 1165, 9, 1165, 4, 1166, 9, 1166, 4, 1167, 9, 1167, 4, 1168, 9, 1168, 4, 1169, 9, 1169, 4, 1170, 9, 1170, 4, 1171, 9, 1171, 4, 1172, 9, 1172, 4, 1173, 9, 1173, 4, 1174, 9, 1174, 4, 1175, 9, 1175, 4, 1176, 9, 1176, 4, 1177, 9, 1177, 4, 1178, 9, 1178, 4, 1179, 9, 1179, 4, 1180, 9, 1180, 4, 1181, 9, 1181, 4, 1182, 9, 1182, 4, 1183, 9, 1183, 4, 1184, 9, 1184, 4, 1185, 9, 1185, 4, 1186, 9, 1186, 4, 1187, 9, 1187, 4, 1188, 9, 1188, 4, 1189, 9, 1189, 4, 1190, 9, 1190, 4, 1191, 9, 1191, 4, 1192, 9, 1192, 4, 1193, 9, 1193, 4, 1194, 9, 1194, 4, 1195, 9, 1195, 4, 1196, 9, 1196, 4, 1197, 9, 1197, 4, 1198, 9, 1198, 4, 1199, 9, 1199, 4, 1200, 9, 1200, 4, 1201, 9, 1201, 4, 1202, 9, 1202, 4, 1203, 9, 1203, 4, 1204, 9, 1204, 4, 1205, 9, 1205, 4, 1206, 9, 1206, 4, 1207, 9, 1207, 4, 1208, 9, 1208, 4, 1209, 9, 1209, 4, 1210, 9, 1210, 4, 1211, 9, 1211, 4, 1212, 9, 1212, 4, 1213, 9, 1213, 4, 1214, 9, 1214, 4, 1215, 9, 1215, 4, 1216, 9, 1216, 4, 1217, 9, 1217, 4, 1218, 9, 1218, 4, 1219, 9, 1219, 4, 1220, 9, 1220, 4, 1221, 9, 1221, 4, 1222, 9, 1222, 4, 1223, 9, 1223, 4, 1224, 9, 1224, 4, 1225, 9, 1225, 4, 1226, 9, 1226, 4, 1227, 9, 1227, 4, 1228, 9, 1228, 4, 1229, 9, 1229, 4, 1230, 9, 1230, 4, 1231, 9, 1231, 4, 1232, 9, 1232, 4, 1233, 9, 1233, 4, 1234, 9, 1234, 4, 1235, 9, 1235, 4, 1236, 9, 1236, 4, 1237, 9, 1237, 4, 1238, 9, 1238, 4, 1239, 9, 1239, 4, 1240, 9, 1240, 4, 1241, 9, 1241, 4, 1242, 9, 1242, 4, 1243, 9, 1243, 4, 1244, 9, 1244, 4, 1245, 9, 1245, 4, 1246, 9, 1246, 4, 1247, 9, 1247, 4, 1248, 9, 1248, 4, 1249, 9, 1249, 4, 1250, 9, 1250, 4, 1251, 9, 1251, 4, 1252, 9, 1252, 4, 1253, 9, 1253, 4, 1254, 9, 1254, 4, 1255, 9, 1255, 4, 1256, 9, 1256, 4, 1257, 9, 1257, 4, 1258, 9, 1258, 4, 1259, 9, 1259, 4, 1260, 9, 1260, 4, 1261, 9, 1261, 4, 1262, 9, 1262, 4, 1263, 9, 1263, 4, 1264, 9, 1264, 4, 1265, 9, 1265, 4, 1266, 9, 1266, 4, 1267, 9, 1267, 4, 1268, 9, 1268, 4, 1269, 9, 1269, 4, 1270, 9, 1270, 4, 1271, 9, 1271, 4, 1272, 9, 1272, 4, 1273, 9, 1273, 4, 1274, 9, 1274, 4, 1275, 9, 1275, 4, 1276, 9, 1276, 4, 1277, 9, 1277, 4, 1278, 9, 1278, 4, 1279, 9, 1279, 4, 1280, 9, 1280, 4, 1281, 9, 1281, 4, 1282, 9, 1282, 4, 1283, 9, 1283, 4, 1284, 9, 1284, 4, 1285, 9, 1285, 4, 1286, 9, 1286, 4, 1287, 9, 1287, 4, 1288, 9, 1288, 4, 1289, 9, 1289, 4, 1290, 9, 1290, 4, 1291, 9, 1291, 4, 1292, 9, 1292, 4, 1293, 9, 1293, 4, 1294, 9, 1294, 4, 1295, 9, 1295, 4, 1296, 9, 1296, 4, 1297, 9, 1297, 4, 1298, 9, 1298, 4, 1299, 9, 1299, 4, 1300, 9, 1300, 4, 1301, 9, 1301, 4, 1302, 9, 1302, 4, 1303, 9, 1303, 4, 1304, 9, 1304, 4, 1305, 9, 1305, 4, 1306, 9, 1306, 4, 1307, 9, 1307, 4, 1308, 9, 1308, 4, 1309, 9, 1309, 4, 1310, 9, 1310, 4, 1311, 9, 1311, 4, 1312, 9, 1312, 4, 1313, 9, 1313, 4, 1314, 9, 1314, 4, 1315, 9, 1315, 4, 1316, 9, 1316, 4, 1317, 9, 1317, 4, 1318, 9, 1318, 4, 1319, 9, 1319, 4, 1320, 9, 1320, 4, 1321, 9, 1321, 4, 1322, 9, 1322, 4, 1323, 9, 1323, 4, 1324, 9, 1324, 4, 1325, 9, 1325, 4, 1326, 9, 1326, 4, 1327, 9, 1327, 4, 1328, 9, 1328, 4, 1329, 9, 1329, 4, 1330, 9, 1330, 4, 1331, 9, 1331, 4, 1332, 9, 1332, 4, 1333, 9, 1333, 4, 1334, 9, 1334, 4, 1335, 9, 1335, 4, 1336, 9, 1336, 4, 1337, 9, 1337, 4, 1338, 9, 1338, 4, 1339, 9, 1339, 4, 1340, 9, 1340, 4, 1341, 9, 1341, 4, 1342, 9, 1342, 4, 1343, 9, 1343, 4, 1344, 9, 1344, 4, 1345, 9, 1345, 4, 1346, 9, 1346, 4, 1347, 9, 1347, 4, 1348, 9, 1348, 4, 1349, 9, 1349, 4, 1350, 9, 1350, 4, 1351, 9, 1351, 4, 1352, 9, 1352, 4, 1353, 9, 1353, 4, 1354, 9, 1354, 4, 1355, 9, 1355, 4, 1356, 9, 1356, 4, 1357, 9, 1357, 4, 1358, 9, 1358, 4, 1359, 9, 1359, 4, 1360, 9, 1360, 4, 1361, 9, 1361, 4, 1362, 9, 1362, 4, 1363, 9, 1363, 4, 1364, 9, 1364, 4, 1365, 9, 1365, 4, 1366, 9, 1366, 4, 1367, 9, 1367, 4, 1368, 9, 1368, 4, 1369, 9, 1369, 4, 1370, 9, 1370, 4, 1371, 9, 1371, 4, 1372, 9, 1372, 4, 1373, 9, 1373, 4, 1374, 9, 1374, 4, 1375, 9, 1375, 4, 1376, 9, 1376, 4, 1377, 9, 1377, 4, 1378, 9, 1378, 4, 1379, 9, 1379, 4, 1380, 9, 1380, 4, 1381, 9, 1381, 4, 1382, 9, 1382, 4, 1383, 9, 1383, 4, 1384, 9, 1384, 4, 1385, 9, 1385, 4, 1386, 9, 1386, 4, 1387, 9, 1387, 4, 1388, 9, 1388, 4, 1389, 9, 1389, 4, 1390, 9, 1390, 4, 1391, 9, 1391, 4, 1392, 9, 1392, 4, 1393, 9, 1393, 4, 1394, 9, 1394, 4, 1395, 9, 1395, 4, 1396, 9, 1396, 4, 1397, 9, 1397, 4, 1398, 9, 1398, 4, 1399, 9, 1399, 4, 1400, 9, 1400, 4, 1401, 9, 1401, 4, 1402, 9, 1402, 4, 1403, 9, 1403, 4, 1404, 9, 1404, 4, 1405, 9, 1405, 4, 1406, 9, 1406, 4, 1407, 9, 1407, 4, 1408, 9, 1408, 4, 1409, 9, 1409, 4, 1410, 9, 1410, 4, 1411, 9, 1411, 4, 1412, 9, 1412, 4, 1413, 9, 1413, 4, 1414, 9, 1414, 4, 1415, 9, 1415, 4, 1416, 9, 1416, 4, 1417, 9, 1417, 4, 1418, 9, 1418, 4, 1419, 9, 1419, 4, 1420, 9, 1420, 4, 1421, 9, 1421, 4, 1422, 9, 1422, 4, 1423, 9, 1423, 4, 1424, 9, 1424, 4, 1425, 9, 1425, 4, 1426, 9, 1426, 4, 1427, 9, 1427, 4, 1428, 9, 1428, 4, 1429, 9, 1429, 4, 1430, 9, 1430, 4, 1431, 9, 1431, 4, 1432, 9, 1432, 4, 1433, 9, 1433, 4, 1434, 9, 1434, 4, 1435, 9, 1435, 4, 1436, 9, 1436, 4, 1437, 9, 1437, 4, 1438, 9, 1438, 4, 1439, 9, 1439, 4, 1440, 9, 1440, 4, 1441, 9, 1441, 4, 1442, 9, 1442, 4, 1443, 9, 1443, 4, 1444, 9, 1444, 4, 1445, 9, 1445, 4, 1446, 9, 1446, 4, 1447, 9, 1447, 4, 1448, 9, 1448, 4, 1449, 9, 1449, 4, 1450, 9, 1450, 4, 1451, 9, 1451, 4, 1452, 9, 1452, 4, 1453, 9, 1453, 4, 1454, 9, 1454, 4, 1455, 9, 1455, 4, 1456, 9, 1456, 4, 1457, 9, 1457, 4, 1458, 9, 1458, 4, 1459, 9, 1459, 4, 1460, 9, 1460, 4, 1461, 9, 1461, 4, 1462, 9, 1462, 4, 1463, 9, 1463, 4, 1464, 9, 1464, 4, 1465, 9, 1465, 4, 1466, 9, 1466, 4, 1467, 9, 1467, 4, 1468, 9, 1468, 4, 1469, 9, 1469, 4, 1470, 9, 1470, 4, 1471, 9, 1471, 4, 1472, 9, 1472, 4, 1473, 9, 1473, 4, 1474, 9, 1474, 4, 1475, 9, 1475, 4, 1476, 9, 1476, 4, 1477, 9, 1477, 4, 1478, 9, 1478, 4, 1479, 9, 1479, 4, 1480, 9, 1480, 4, 1481, 9, 1481, 4, 1482, 9, 1482, 4, 1483, 9, 1483, 4, 1484, 9, 1484, 4, 1485, 9, 1485, 4, 1486, 9, 1486, 4, 1487, 9, 1487, 4, 1488, 9, 1488, 4, 1489, 9, 1489, 4, 1490, 9, 1490, 4, 1491, 9, 1491, 4, 1492, 9, 1492, 4, 1493, 9, 1493, 4, 1494, 9, 1494, 4, 1495, 9, 1495, 4, 1496, 9, 1496, 4, 1497, 9, 1497, 4, 1498, 9, 1498, 4, 1499, 9, 1499, 4, 1500, 9, 1500, 4, 1501, 9, 1501, 4, 1502, 9, 1502, 4, 1503, 9, 1503, 4, 1504, 9, 1504, 4, 1505, 9, 1505, 4, 1506, 9, 1506, 4, 1507, 9, 1507, 4, 1508, 9, 1508, 4, 1509, 9, 1509, 4, 1510, 9, 1510, 4, 1511, 9, 1511, 4, 1512, 9, 1512, 4, 1513, 9, 1513, 4, 1514, 9, 1514, 4, 1515, 9, 1515, 4, 1516, 9, 1516, 4, 1517, 9, 1517, 4, 1518, 9, 1518, 4, 1519, 9, 1519, 4, 1520, 9, 1520, 4, 1521, 9, 1521, 4, 1522, 9, 1522, 4, 1523, 9, 1523, 4, 1524, 9, 1524, 4, 1525, 9, 1525, 4, 1526, 9, 1526, 4, 1527, 9, 1527, 4, 1528, 9, 1528, 4, 1529, 9, 1529, 4, 1530, 9, 1530, 4, 1531, 9, 1531, 4, 1532, 9, 1532, 4, 1533, 9, 1533, 4, 1534, 9, 1534, 4, 1535, 9, 1535, 4, 1536, 9, 1536, 4, 1537, 9, 1537, 4, 1538, 9, 1538, 4, 1539, 9, 1539, 4, 1540, 9, 1540, 4, 1541, 9, 1541, 4, 1542, 9, 1542, 4, 1543, 9, 1543, 4, 1544, 9, 1544, 4, 1545, 9, 1545, 4, 1546, 9, 1546, 4, 1547, 9, 1547, 4, 1548, 9, 1548, 4, 1549, 9, 1549, 4, 1550, 9, 1550, 4, 1551, 9, 1551, 4, 1552, 9, 1552, 4, 1553, 9, 1553, 4, 1554, 9, 1554, 4, 1555, 9, 1555, 4, 1556, 9, 1556, 4, 1557, 9, 1557, 4, 1558, 9, 1558, 4, 1559, 9, 1559, 4, 1560, 9, 1560, 4, 1561, 9, 1561, 4, 1562, 9, 1562, 4, 1563, 9, 1563, 4, 1564, 9, 1564, 4, 1565, 9, 1565, 4, 1566, 9, 1566, 4, 1567, 9, 1567, 4, 1568, 9, 1568, 4, 1569, 9, 1569, 4, 1570, 9, 1570, 4, 1571, 9, 1571, 4, 1572, 9, 1572, 4, 1573, 9, 1573, 4, 1574, 9, 1574, 4, 1575, 9, 1575, 4, 1576, 9, 1576, 4, 1577, 9, 1577, 4, 1578, 9, 1578, 4, 1579, 9, 1579, 4, 1580, 9, 1580, 4, 1581, 9, 1581, 4, 1582, 9, 1582, 4, 1583, 9, 1583, 4, 1584, 9, 1584, 4, 1585, 9, 1585, 4, 1586, 9, 1586, 4, 1587, 9, 1587, 4, 1588, 9, 1588, 4, 1589, 9, 1589, 4, 1590, 9, 1590, 4, 1591, 9, 1591, 4, 1592, 9, 1592, 4, 1593, 9, 1593, 4, 1594, 9, 1594, 4, 1595, 9, 1595, 4, 1596, 9, 1596, 4, 1597, 9, 1597, 4, 1598, 9, 1598, 4, 1599, 9, 1599, 4, 1600, 9, 1600, 4, 1601, 9, 1601, 4, 1602, 9, 1602, 4, 1603, 9, 1603, 4, 1604, 9, 1604, 4, 1605, 9, 1605, 4, 1606, 9, 1606, 4, 1607, 9, 1607, 4, 1608, 9, 1608, 4, 1609, 9, 1609, 4, 1610, 9, 1610, 4, 1611, 9, 1611, 4, 1612, 9, 1612, 4, 1613, 9, 1613, 4, 1614, 9, 1614, 4, 1615, 9, 1615, 4, 1616, 9, 1616, 4, 1617, 9, 1617, 4, 1618, 9, 1618, 4, 1619, 9, 1619, 4, 1620, 9, 1620, 4, 1621, 9, 1621, 4, 1622, 9, 1622, 4, 1623, 9, 1623, 4, 1624, 9, 1624, 4, 1625, 9, 1625, 4, 1626, 9, 1626, 4, 1627, 9, 1627, 4, 1628, 9, 1628, 4, 1629, 9, 1629, 4, 1630, 9, 1630, 4, 1631, 9, 1631, 4, 1632, 9, 1632, 4, 1633, 9, 1633, 4, 1634, 9, 1634, 4, 1635, 9, 1635, 4, 1636, 9, 1636, 4, 1637, 9, 1637, 4, 1638, 9, 1638, 4, 1639, 9, 1639, 4, 1640, 9, 1640, 4, 1641, 9, 1641, 4, 1642, 9, 1642, 4, 1643, 9, 1643, 4, 1644, 9, 1644, 4, 1645, 9, 1645, 4, 1646, 9, 1646, 4, 1647, 9, 1647, 4, 1648, 9, 1648, 4, 1649, 9, 1649, 4, 1650, 9, 1650, 4, 1651, 9, 1651, 4, 1652, 9, 1652, 4, 1653, 9, 1653, 4, 1654, 9, 1654, 4, 1655, 9, 1655, 4, 1656, 9, 1656, 4, 1657, 9, 1657, 4, 1658, 9, 1658, 4, 1659, 9, 1659, 4, 1660, 9, 1660, 4, 1661, 9, 1661, 4, 1662, 9, 1662, 4, 1663, 9, 1663, 4, 1664, 9, 1664, 4, 1665, 9, 1665, 4, 1666, 9, 1666, 4, 1667, 9, 1667, 4, 1668, 9, 1668, 4, 1669, 9, 1669, 4, 1670, 9, 1670, 4, 1671, 9, 1671, 4, 1672, 9, 1672, 4, 1673, 9, 1673, 4, 1674, 9, 1674, 4, 1675, 9, 1675, 4, 1676, 9, 1676, 4, 1677, 9, 1677, 4, 1678, 9, 1678, 4, 1679, 9, 1679, 4, 1680, 9, 1680, 4, 1681, 9, 1681, 4, 1682, 9, 1682, 4, 1683, 9, 1683, 4, 1684, 9, 1684, 4, 1685, 9, 1685, 4, 1686, 9, 1686, 4, 1687, 9, 1687, 4, 1688, 9, 1688, 4, 1689, 9, 1689, 4, 1690, 9, 1690, 4, 1691, 9, 1691, 4, 1692, 9, 1692, 4, 1693, 9, 1693, 4, 1694, 9, 1694, 4, 1695, 9, 1695, 4, 1696, 9, 1696, 4, 1697, 9, 1697, 4, 1698, 9, 1698, 4, 1699, 9, 1699, 4, 1700, 9, 1700, 4, 1701, 9, 1701, 4, 1702, 9, 1702, 4, 1703, 9, 1703, 4, 1704, 9, 1704, 4, 1705, 9, 1705, 4, 1706, 9, 1706, 4, 1707, 9, 1707, 4, 1708, 9, 1708, 4, 1709, 9, 1709, 4, 1710, 9, 1710, 4, 1711, 9, 1711, 4, 1712, 9, 1712, 4, 1713, 9, 1713, 4, 1714, 9, 1714, 4, 1715, 9, 1715, 4, 1716, 9, 1716, 4, 1717, 9, 1717, 4, 1718, 9, 1718, 4, 1719, 9, 1719, 4, 1720, 9, 1720, 4, 1721, 9, 1721, 4, 1722, 9, 1722, 4, 1723, 9, 1723, 4, 1724, 9, 1724, 4, 1725, 9, 1725, 4, 1726, 9, 1726, 4, 1727, 9, 1727, 4, 1728, 9, 1728, 4, 1729, 9, 1729, 4, 1730, 9, 1730, 4, 1731, 9, 1731, 4, 1732, 9, 1732, 4, 1733, 9, 1733, 4, 1734, 9, 1734, 4, 1735, 9, 1735, 4, 1736, 9, 1736, 4, 1737, 9, 1737, 4, 1738, 9, 1738, 4, 1739, 9, 1739, 4, 1740, 9, 1740, 4, 1741, 9, 1741, 4, 1742, 9, 1742, 4, 1743, 9, 1743, 4, 1744, 9, 1744, 4, 1745, 9, 1745, 4, 1746, 9, 1746, 4, 1747, 9, 1747, 4, 1748, 9, 1748, 4, 1749, 9, 1749, 4, 1750, 9, 1750, 4, 1751, 9, 1751, 4, 1752, 9, 1752, 4, 1753, 9, 1753, 4, 1754, 9, 1754, 4, 1755, 9, 1755, 4, 1756, 9, 1756, 4, 1757, 9, 1757, 4, 1758, 9, 1758, 4, 1759, 9, 1759, 4, 1760, 9, 1760, 4, 1761, 9, 1761, 4, 1762, 9, 1762, 4, 1763, 9, 1763, 4, 1764, 9, 1764, 4, 1765, 9, 1765, 4, 1766, 9, 1766, 4, 1767, 9, 1767, 4, 1768, 9, 1768, 4, 1769, 9, 1769, 4, 1770, 9, 1770, 4, 1771, 9, 1771, 4, 1772, 9, 1772, 4, 1773, 9, 1773, 4, 1774, 9, 1774, 4, 1775, 9, 1775, 4, 1776, 9, 1776, 4, 1777, 9, 1777, 4, 1778, 9, 1778, 4, 1779, 9, 1779, 4, 1780, 9, 1780, 4, 1781, 9, 1781, 4, 1782, 9, 1782, 4, 1783, 9, 1783, 4, 1784, 9, 1784, 4, 1785, 9, 1785, 4, 1786, 9, 1786, 4, 1787, 9, 1787, 4, 1788, 9, 1788, 4, 1789, 9, 1789, 4, 1790, 9, 1790, 4, 1791, 9, 1791, 4, 1792, 9, 1792, 4, 1793, 9, 1793, 4, 1794, 9, 1794, 4, 1795, 9, 1795, 4, 1796, 9, 1796, 4, 1797, 9, 1797, 4, 1798, 9, 1798, 4, 1799, 9, 1799, 4, 1800, 9, 1800, 4, 1801, 9, 1801, 4, 1802, 9, 1802, 4, 1803, 9, 1803, 4, 1804, 9, 1804, 4, 1805, 9, 1805, 4, 1806, 9, 1806, 4, 1807, 9, 1807, 4, 1808, 9, 1808, 4, 1809, 9, 1809, 4, 1810, 9, 1810, 4, 1811, 9, 1811, 4, 1812, 9, 1812, 4, 1813, 9, 1813, 4, 1814, 9, 1814, 4, 1815, 9, 1815, 4, 1816, 9, 1816, 4, 1817, 9, 1817, 4, 1818, 9, 1818, 4, 1819, 9, 1819, 4, 1820, 9, 1820, 4, 1821, 9, 1821, 4, 1822, 9, 1822, 4, 1823, 9, 1823, 4, 1824, 9, 1824, 4, 1825, 9, 1825, 4, 1826, 9, 1826, 4, 1827, 9, 1827, 4, 1828, 9, 1828, 4, 1829, 9, 1829, 4, 1830, 9, 1830, 4, 1831, 9, 1831, 4, 1832, 9, 1832, 4, 1833, 9, 1833, 4, 1834, 9, 1834, 4, 1835, 9, 1835, 4, 1836, 9, 1836, 4, 1837, 9, 1837, 4, 1838, 9, 1838, 4, 1839, 9, 1839, 4, 1840, 9, 1840, 4, 1841, 9, 1841, 4, 1842, 9, 1842, 4, 1843, 9, 1843, 4, 1844, 9, 1844, 4, 1845, 9, 1845, 4, 1846, 9, 1846, 4, 1847, 9, 1847, 4, 1848, 9, 1848, 4, 1849, 9, 1849, 4, 1850, 9, 1850, 4, 1851, 9, 1851, 4, 1852, 9, 1852, 4, 1853, 9, 1853, 4, 1854, 9, 1854, 4, 1855, 9, 1855, 4, 1856, 9, 1856, 4, 1857, 9, 1857, 4, 1858, 9, 1858, 4, 1859, 9, 1859, 4, 1860, 9, 1860, 4, 1861, 9, 1861, 4, 1862, 9, 1862, 4, 1863, 9, 1863, 4, 1864, 9, 1864, 4, 1865, 9, 1865, 4, 1866, 9, 1866, 4, 1867, 9, 1867, 4, 1868, 9, 1868, 4, 1869, 9, 1869, 4, 1870, 9, 1870, 4, 1871, 9, 1871, 4, 1872, 9, 1872, 4, 1873, 9, 1873, 4, 1874, 9, 1874, 4, 1875, 9, 1875, 4, 1876, 9, 1876, 4, 1877, 9, 1877, 4, 1878, 9, 1878, 4, 1879, 9, 1879, 4, 1880, 9, 1880, 4, 1881, 9, 1881, 4, 1882, 9, 1882, 4, 1883, 9, 1883, 4, 1884, 9, 1884, 4, 1885, 9, 1885, 4, 1886, 9, 1886, 4, 1887, 9, 1887, 4, 1888, 9, 1888, 4, 1889, 9, 1889, 4, 1890, 9, 1890, 4, 1891, 9, 1891, 4, 1892, 9, 1892, 4, 1893, 9, 1893, 4, 1894, 9, 1894, 4, 1895, 9, 1895, 4, 1896, 9, 1896, 4, 1897, 9, 1897, 4, 1898, 9, 1898, 4, 1899, 9, 1899, 4, 1900, 9, 1900, 4, 1901, 9, 1901, 4, 1902, 9, 1902, 4, 1903, 9, 1903, 4, 1904, 9, 1904, 4, 1905, 9, 1905, 4, 1906, 9, 1906, 4, 1907, 9, 1907, 4, 1908, 9, 1908, 4, 1909, 9, 1909, 4, 1910, 9, 1910, 4, 1911, 9, 1911, 4, 1912, 9, 1912, 4, 1913, 9, 1913, 4, 1914, 9, 1914, 4, 1915, 9, 1915, 4, 1916, 9, 1916, 4, 1917, 9, 1917, 4, 1918, 9, 1918, 4, 1919, 9, 1919, 4, 1920, 9, 1920, 4, 1921, 9, 1921, 4, 1922, 9, 1922, 4, 1923, 9, 1923, 4, 1924, 9, 1924, 4, 1925, 9, 1925, 4, 1926, 9, 1926, 4, 1927, 9, 1927, 4, 1928, 9, 1928, 4, 1929, 9, 1929, 4, 1930, 9, 1930, 4, 1931, 9, 1931, 4, 1932, 9, 1932, 4, 1933, 9, 1933, 4, 1934, 9, 1934, 4, 1935, 9, 1935, 4, 1936, 9, 1936, 4, 1937, 9, 1937, 4, 1938, 9, 1938, 4, 1939, 9, 1939, 4, 1940, 9, 1940, 4, 1941, 9, 1941, 4, 1942, 9, 1942, 4, 1943, 9, 1943, 4, 1944, 9, 1944, 4, 1945, 9, 1945, 4, 1946, 9, 1946, 4, 1947, 9, 1947, 4, 1948, 9, 1948, 4, 1949, 9, 1949, 4, 1950, 9, 1950, 4, 1951, 9, 1951, 4, 1952, 9, 1952, 4, 1953, 9, 1953, 4, 1954, 9, 1954, 4, 1955, 9, 1955, 4, 1956, 9, 1956, 4, 1957, 9, 1957, 4, 1958, 9, 1958, 4, 1959, 9, 1959, 4, 1960, 9, 1960, 4, 1961, 9, 1961, 4, 1962, 9, 1962, 4, 1963, 9, 1963, 4, 1964, 9, 1964, 4, 1965, 9, 1965, 4, 1966, 9, 1966, 4, 1967, 9, 1967, 4, 1968, 9, 1968, 4, 1969, 9, 1969, 4, 1970, 9, 1970, 4, 1971, 9, 1971, 4, 1972, 9, 1972, 4, 1973, 9, 1973, 4, 1974, 9, 1974, 4, 1975, 9, 1975, 4, 1976, 9, 1976, 4, 1977, 9, 1977, 4, 1978, 9, 1978, 4, 1979, 9, 1979, 4, 1980, 9, 1980, 4, 1981, 9, 1981, 4, 1982, 9, 1982, 4, 1983, 9, 1983, 4, 1984, 9, 1984, 4, 1985, 9, 1985, 4, 1986, 9, 1986, 4, 1987, 9, 1987, 4, 1988, 9, 1988, 4, 1989, 9, 1989, 4, 1990, 9, 1990, 4, 1991, 9, 1991, 4, 1992, 9, 1992, 4, 1993, 9, 1993, 4, 1994, 9, 1994, 4, 1995, 9, 1995, 4, 1996, 9, 1996, 4, 1997, 9, 1997, 4, 1998, 9, 1998, 4, 1999, 9, 1999, 4, 2000, 9, 2000, 4, 2001, 9, 2001, 4, 2002, 9, 2002, 4, 2003, 9, 2003, 4, 2004, 9, 2004, 4, 2005, 9, 2005, 4, 2006, 9, 2006, 4, 2007, 9, 2007, 4, 2008, 9, 2008, 4, 2009, 9, 2009, 4, 2010, 9, 2010, 4, 2011, 9, 2011, 4, 2012, 9, 2012, 4, 2013, 9, 2013, 4, 2014, 9, 2014, 4, 2015, 9, 2015, 4, 2016, 9, 2016, 4, 2017, 9, 2017, 4, 2018, 9, 2018, 4, 2019, 9, 2019, 4, 2020, 9, 2020, 4, 2021, 9, 2021, 4, 2022, 9, 2022, 4, 2023, 9, 2023, 4, 2024, 9, 2024, 4, 2025, 9, 2025, 4, 2026, 9, 2026, 4, 2027, 9, 2027, 4, 2028, 9, 2028, 4, 2029, 9, 2029, 4, 2030, 9, 2030, 4, 2031, 9, 2031, 4, 2032, 9, 2032, 4, 2033, 9, 2033, 4, 2034, 9, 2034, 4, 2035, 9, 2035, 4, 2036, 9, 2036, 4, 2037, 9, 2037, 4, 2038, 9, 2038, 4, 2039, 9, 2039, 4, 2040, 9, 2040, 4, 2041, 9, 2041, 4, 2042, 9, 2042, 4, 2043, 9, 2043, 4, 2044, 9, 2044, 4, 2045, 9, 2045, 4, 2046, 9, 2046, 4, 2047, 9, 2047, 4, 2048, 9, 2048, 4, 2049, 9, 2049, 4, 2050, 9, 2050, 4, 2051, 9, 2051, 4, 2052, 9, 2052, 4, 2053, 9, 2053, 4, 2054, 9, 2054, 4, 2055, 9, 2055, 4, 2056, 9, 2056, 4, 2057, 9, 2057, 4, 2058, 9, 2058, 4, 2059, 9, 2059, 4, 2060, 9, 2060, 4, 2061, 9, 2061, 4, 2062, 9, 2062, 4, 2063, 9, 2063, 4, 2064, 9, 2064, 4, 2065, 9, 2065, 4, 2066, 9, 2066, 4, 2067, 9, 2067, 4, 2068, 9, 2068, 4, 2069, 9, 2069, 4, 2070, 9, 2070, 4, 2071, 9, 2071, 4, 2072, 9, 2072, 4, 2073, 9, 2073, 4, 2074, 9, 2074, 4, 2075, 9, 2075, 4, 2076, 9, 2076, 4, 2077, 9, 2077, 4, 2078, 9, 2078, 4, 2079, 9, 2079, 4, 2080, 9, 2080, 4, 2081, 9, 2081, 4, 2082, 9, 2082, 4, 2083, 9, 2083, 4, 2084, 9, 2084, 4, 2085, 9, 2085, 4, 2086, 9, 2086, 4, 2087, 9, 2087, 4, 2088, 9, 2088, 4, 2089, 9, 2089, 4, 2090, 9, 2090, 4, 2091, 9, 2091, 4, 2092, 9, 2092, 4, 2093, 9, 2093, 4, 2094, 9, 2094, 4, 2095, 9, 2095, 4, 2096, 9, 2096, 4, 2097, 9, 2097, 4, 2098, 9, 2098, 4, 2099, 9, 2099, 4, 2100, 9, 2100, 4, 2101, 9, 2101, 4, 2102, 9, 2102, 4, 2103, 9, 2103, 4, 2104, 9, 2104, 4, 2105, 9, 2105, 4, 2106, 9, 2106, 4, 2107, 9, 2107, 4, 2108, 9, 2108, 4, 2109, 9, 2109, 4, 2110, 9, 2110, 4, 2111, 9, 2111, 4, 2112, 9, 2112, 4, 2113, 9, 2113, 4, 2114, 9, 2114, 4, 2115, 9, 2115, 4, 2116, 9, 2116, 4, 2117, 9, 2117, 4, 2118, 9, 2118, 4, 2119, 9, 2119, 4, 2120, 9, 2120, 4, 2121, 9, 2121, 4, 2122, 9, 2122, 4, 2123, 9, 2123, 4, 2124, 9, 2124, 4, 2125, 9, 2125, 4, 2126, 9, 2126, 4, 2127, 9, 2127, 4, 2128, 9, 2128, 4, 2129, 9, 2129, 4, 2130, 9, 2130, 4, 2131, 9, 2131, 4, 2132, 9, 2132, 4, 2133, 9, 2133, 4, 2134, 9, 2134, 4, 2135, 9, 2135, 4, 2136, 9, 2136, 4, 2137, 9, 2137, 4, 2138, 9, 2138, 4, 2139, 9, 2139, 4, 2140, 9, 2140, 4, 2141, 9, 2141, 4, 2142, 9, 2142, 4, 2143, 9, 2143, 4, 2144, 9, 2144, 4, 2145, 9, 2145, 4, 2146, 9, 2146, 4, 2147, 9, 2147, 4, 2148, 9, 2148, 4, 2149, 9, 2149, 4, 2150, 9, 2150, 4, 2151, 9, 2151, 4, 2152, 9, 2152, 4, 2153, 9, 2153, 4, 2154, 9, 2154, 4, 2155, 9, 2155, 4, 2156, 9, 2156, 4, 2157, 9, 2157, 4, 2158, 9, 2158, 4, 2159, 9, 2159, 4, 2160, 9, 2160, 4, 2161, 9, 2161, 4, 2162, 9, 2162, 4, 2163, 9, 2163, 4, 2164, 9, 2164, 4, 2165, 9, 2165, 4, 2166, 9, 2166, 4, 2167, 9, 2167, 4, 2168, 9, 2168, 4, 2169, 9, 2169, 4, 2170, 9, 2170, 4, 2171, 9, 2171, 4, 2172, 9, 2172, 4, 2173, 9, 2173, 4, 2174, 9, 2174, 4, 2175, 9, 2175, 4, 2176, 9, 2176, 4, 2177, 9, 2177, 4, 2178, 9, 2178, 4, 2179, 9, 2179, 4, 2180, 9, 2180, 4, 2181, 9, 2181, 4, 2182, 9, 2182, 4, 2183, 9, 2183, 4, 2184, 9, 2184, 4, 2185, 9, 2185, 4, 2186, 9, 2186, 4, 2187, 9, 2187, 4, 2188, 9, 2188, 4, 2189, 9, 2189, 4, 2190, 9, 2190, 4, 2191, 9, 2191, 4, 2192, 9, 2192, 4, 2193, 9, 2193, 4, 2194, 9, 2194, 4, 2195, 9, 2195, 4, 2196, 9, 2196, 4, 2197, 9, 2197, 4, 2198, 9, 2198, 4, 2199, 9, 2199, 4, 2200, 9, 2200, 4, 2201, 9, 2201, 4, 2202, 9, 2202, 4, 2203, 9, 2203, 4, 2204, 9, 2204, 4, 2205, 9, 2205, 4, 2206, 9, 2206, 4, 2207, 9, 2207, 4, 2208, 9, 2208, 4, 2209, 9, 2209, 4, 2210, 9, 2210, 4, 2211, 9, 2211, 4, 2212, 9, 2212, 4, 2213, 9, 2213, 4, 2214, 9, 2214, 4, 2215, 9, 2215, 4, 2216, 9, 2216, 4, 2217, 9, 2217, 4, 2218, 9, 2218, 4, 2219, 9, 2219, 4, 2220, 9, 2220, 4, 2221, 9, 2221, 4, 2222, 9, 2222, 4, 2223, 9, 2223, 4, 2224, 9, 2224, 4, 2225, 9, 2225, 4, 2226, 9, 2226, 4, 2227, 9, 2227, 4, 2228, 9, 2228, 4, 2229, 9, 2229, 4, 2230, 9, 2230, 4, 2231, 9, 2231, 4, 2232, 9, 2232, 4, 2233, 9, 2233, 4, 2234, 9, 2234, 4, 2235, 9, 2235, 4, 2236, 9, 2236, 4, 2237, 9, 2237, 4, 2238, 9, 2238, 4, 2239, 9, 2239, 4, 2240, 9, 2240, 4, 2241, 9, 2241, 4, 2242, 9, 2242, 4, 2243, 9, 2243, 4, 2244, 9, 2244, 4, 2245, 9, 2245, 4, 2246, 9, 2246, 4, 2247, 9, 2247, 4, 2248, 9, 2248, 4, 2249, 9, 2249, 4, 2250, 9, 2250, 4, 2251, 9, 2251, 4, 2252, 9, 2252, 4, 2253, 9, 2253, 4, 2254, 9, 2254, 4, 2255, 9, 2255, 4, 2256, 9, 2256, 4, 2257, 9, 2257, 4, 2258, 9, 2258, 4, 2259, 9, 2259, 4, 2260, 9, 2260, 4, 2261, 9, 2261, 4, 2262, 9, 2262, 4, 2263, 9, 2263, 4, 2264, 9, 2264, 4, 2265, 9, 2265, 4, 2266, 9, 2266, 4, 2267, 9, 2267, 4, 2268, 9, 2268, 4, 2269, 9, 2269, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 2, 3, 3, 3, 3, 3, 3, 3, 3, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 5, 3, 5, 3, 5, 3, 5, 3, 5, 3, 5, 3, 5, 3, 5, 3, 5, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 3, 7, 3, 7, 3, 7, 3, 7, 3, 8, 3, 8, 3, 8, 3, 8, 3, 8, 3, 9, 3, 9, 3, 9, 3, 9, 3, 9, 3, 9, 3, 9, 3, 10, 3, 10, 3, 10, 3, 10, 3, 10, 3, 10, 3, 10, 3, 10, 3, 11, 3, 11, 3, 11, 3, 11, 3, 11, 3, 11, 3, 11, 3, 11, 3, 11, 3, 12, 3, 12, 3, 12, 3, 12, 3, 12, 3, 12, 3, 12, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 13, 3, 14, 3, 14, 3, 14, 3, 14, 3, 14, 3, 14, 3, 14, 3, 14, 3, 14, 3, 14, 3, 14, 3, 14, 3, 15, 3, 15, 3, 15, 3, 15, 3, 15, 3, 15, 3, 15, 3, 15, 3, 15, 3, 15, 3, 15, 3, 15, 3, 15, 3, 15, 3, 15, 3, 15, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 17, 3, 17, 3, 17, 3, 17, 3, 17, 3, 17, 3, 17, 3, 17, 3, 17, 3, 18, 3, 18, 3, 18, 3, 18, 3, 18, 3, 18, 3, 18, 3, 18, 3, 18, 3, 18, 3, 18, 3, 18, 3, 18, 3, 18, 3, 19, 3, 19, 3, 19, 3, 19, 3, 20, 3, 20, 3, 20, 3, 20, 3, 20, 3, 20, 3, 20, 3, 20, 3, 20, 3, 20, 3, 20, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 22, 3, 22, 3, 22, 3, 22, 3, 22, 3, 22, 3, 22, 3, 22, 3, 22, 3, 22, 3, 22, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 24, 3, 24, 3, 24, 3, 24, 3, 24, 3, 24, 3, 25, 3, 25, 3, 25, 3, 25, 3, 25, 3, 25, 3, 25, 3, 25, 3, 25, 3, 25, 3, 25, 3, 26, 3, 26, 3, 26, 3, 26, 3, 26, 3, 26, 3, 26, 3, 26, 3, 26, 3, 26, 3, 26, 3, 26, 3, 26, 3, 26, 3, 27, 3, 27, 3, 27, 3, 27, 3, 27, 3, 27, 3, 27, 3, 27, 3, 27, 3, 28, 3, 28, 3, 28, 3, 28, 3, 28, 3, 28, 3, 28, 3, 29, 3, 29, 3, 29, 3, 29, 3, 29, 3, 29, 3, 29, 3, 29, 3, 30, 3, 30, 3, 30, 3, 30, 3, 30, 3, 30, 3, 30, 3, 30, 3, 30, 3, 30, 3, 30, 3, 30, 3, 30, 3, 30, 3, 30, 3, 31, 3, 31, 3, 31, 3, 31, 3, 31, 3, 31, 3, 32, 3, 32, 3, 32, 3, 32, 3, 32, 3, 32, 3, 33, 3, 33, 3, 33, 3, 33, 3, 33, 3, 33, 3, 33, 3, 33, 3, 33, 3, 33, 3, 34, 3, 34, 3, 35, 3, 35, 3, 35, 3, 35, 3, 35, 3, 35, 3, 36, 3, 36, 3, 36, 3, 36, 3, 37, 3, 37, 3, 37, 3, 37, 3, 37, 3, 37, 3, 37, 3, 37, 3, 37, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 40, 3, 40, 3, 40, 3, 40, 3, 40, 3, 40, 3, 41, 3, 41, 3, 41, 3, 41, 3, 41, 3, 41, 3, 41, 3, 42, 3, 42, 3, 42, 3, 42, 3, 42, 3, 42, 3, 42, 3, 42, 3, 43, 3, 43, 3, 43, 3, 43, 3, 43, 3, 43, 3, 43, 3, 43, 3, 43, 3, 43, 3, 44, 3, 44, 3, 44, 3, 44, 3, 45, 3, 45, 3, 45, 3, 45, 3, 45, 3, 45, 3, 45, 3, 45, 3, 45, 3, 45, 3, 46, 3, 46, 3, 46, 3, 46, 3, 46, 3, 46, 3, 46, 3, 46, 3, 47, 3, 47, 3, 47, 3, 47, 3, 47, 3, 47, 3, 47, 3, 47, 3, 47, 3, 47, 3, 47, 3, 47, 3, 48, 3, 48, 3, 48, 3, 48, 3, 48, 3, 48, 3, 48, 3, 48, 3, 48, 3, 49, 3, 49, 3, 49, 3, 49, 3, 50, 3, 50, 3, 50, 3, 50, 3, 50, 3, 50, 3, 50, 3, 50, 3, 50, 3, 50, 3, 51, 3, 51, 3, 51, 3, 51, 3, 51, 3, 51, 3, 51, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 52, 3, 53, 3, 53, 3, 53, 3, 53, 3, 53, 3, 53, 3, 53, 3, 53, 3, 53, 3, 53, 3, 53, 3, 53, 3, 53, 3, 53, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 55, 3, 55, 3, 55, 3, 55, 3, 55, 3, 55, 3, 56, 3, 56, 3, 56, 3, 56, 3, 56, 3, 56, 3, 56, 3, 56, 3, 56, 3, 56, 3, 56, 3, 56, 3, 56, 3, 56, 3, 56, 3, 56, 3, 56, 3, 56, 3, 56, 3, 56, 3, 56, 3, 56, 3, 57, 3, 57, 3, 57, 3, 57, 3, 57, 3, 57, 3, 57, 3, 57, 3, 57, 3, 58, 3, 58, 3, 58, 3, 58, 3, 58, 3, 58, 3, 58, 3, 58, 3, 59, 3, 59, 3, 59, 3, 59, 3, 59, 3, 59, 3, 59, 3, 59, 3, 59, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 60, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 3, 62, 3, 62, 3, 62, 3, 63, 3, 63, 3, 63, 3, 63, 3, 64, 3, 64, 3, 64, 3, 64, 3, 64, 3, 64, 3, 65, 3, 65, 3, 65, 3, 65, 3, 65, 3, 65, 3, 65, 3, 65, 3, 65, 3, 66, 3, 66, 3, 66, 3, 66, 3, 66, 3, 67, 3, 67, 3, 67, 3, 67, 3, 67, 3, 68, 3, 68, 3, 68, 3, 68, 3, 68, 3, 68, 3, 68, 3, 68, 3, 68, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 70, 3, 70, 3, 70, 3, 70, 3, 70, 3, 70, 3, 70, 3, 70, 3, 70, 3, 70, 3, 71, 3, 71, 3, 71, 3, 71, 3, 71, 3, 71, 3, 72, 3, 72, 3, 72, 3, 72, 3, 72, 3, 72, 3, 72, 3, 72, 3, 72, 3, 72, 3, 72, 3, 72, 3, 72, 3, 73, 3, 73, 3, 73, 3, 73, 3, 73, 3, 73, 3, 74, 3, 74, 3, 74, 3, 74, 3, 74, 3, 75, 3, 75, 3, 75, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 76, 3, 77, 3, 77, 3, 77, 3, 77, 3, 77, 3, 77, 3, 77, 3, 77, 3, 77, 3, 77, 3, 77, 3, 78, 3, 78, 3, 78, 3, 78, 3, 78, 3, 78, 3, 79, 3, 79, 3, 79, 3, 79, 3, 79, 3, 79, 3, 79, 3, 79, 3, 79, 3, 79, 3, 79, 3, 79, 3, 79, 3, 79, 3, 80, 3, 80, 3, 80, 3, 80, 3, 80, 3, 80, 3, 80, 3, 80, 3, 80, 3, 80, 3, 80, 3, 80, 3, 80, 3, 80, 3, 80, 3, 81, 3, 81, 3, 81, 3, 81, 3, 81, 3, 81, 3, 81, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 83, 3, 83, 3, 83, 3, 83, 3, 83, 3, 83, 3, 83, 3, 83, 3, 83, 3, 83, 3, 83, 3, 83, 3, 83, 3, 84, 3, 84, 3, 84, 3, 84, 3, 84, 3, 85, 3, 85, 3, 85, 3, 85, 3, 85, 3, 85, 3, 85, 3, 85, 3, 85, 3, 85, 3, 85, 3, 86, 3, 86, 3, 86, 3, 86, 3, 86, 3, 86, 3, 86, 3, 86, 3, 86, 3, 86, 3, 86, 3, 87, 3, 87, 3, 87, 3, 87, 3, 87, 3, 87, 3, 87, 3, 87, 3, 87, 3, 87, 3, 87, 3, 88, 3, 88, 3, 88, 3, 88, 3, 88, 3, 88, 3, 88, 3, 88, 3, 88, 3, 88, 3, 89, 3, 89, 3, 89, 3, 89, 3, 89, 3, 89, 3, 89, 3, 89, 3, 89, 3, 89, 3, 89, 3, 89, 3, 89, 3, 89, 3, 89, 3, 89, 3, 89, 3, 89, 3, 89, 3, 89, 3, 89, 3, 89, 3, 89, 3, 90, 3, 90, 3, 90, 3, 90, 3, 90, 3, 90, 3, 90, 3, 90, 3, 90, 3, 90, 3, 90, 3, 90, 3, 90, 3, 90, 3, 90, 3, 90, 3, 91, 3, 91, 3, 91, 3, 91, 3, 91, 3, 91, 3, 91, 3, 91, 3, 91, 3, 91, 3, 91, 3, 91, 3, 91, 3, 92, 3, 92, 3, 92, 3, 92, 3, 92, 3, 93, 3, 93, 3, 93, 3, 93, 3, 93, 3, 93, 3, 93, 3, 93, 3, 93, 3, 93, 3, 93, 3, 94, 3, 94, 3, 94, 3, 94, 3, 94, 3, 94, 3, 94, 3, 95, 3, 95, 3, 95, 3, 95, 3, 95, 3, 95, 3, 95, 3, 95, 3, 95, 3, 95, 3, 96, 3, 96, 3, 96, 3, 96, 3, 96, 3, 96, 3, 97, 3, 97, 3, 97, 3, 97, 3, 97, 3, 97, 3, 97, 3, 97, 3, 97, 3, 97, 3, 98, 3, 98, 3, 98, 3, 98, 3, 98, 3, 98, 3, 99, 3, 99, 3, 99, 3, 99, 3, 99, 3, 99, 3, 99, 3, 99, 3, 99, 3, 99, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 101, 3, 101, 3, 101, 3, 101, 3, 101, 3, 101, 3, 101, 3, 102, 3, 102, 3, 102, 3, 102, 3, 102, 3, 102, 3, 102, 3, 103, 3, 103, 3, 103, 3, 103, 3, 103, 3, 103, 3, 104, 3, 104, 3, 104, 3, 104, 3, 104, 3, 104, 3, 104, 3, 104, 3, 104, 3, 104, 3, 105, 3, 105, 3, 105, 3, 105, 3, 105, 3, 105, 3, 105, 3, 105, 3, 105, 3, 105, 3, 105, 3, 105, 3, 105, 3, 105, 3, 105, 3, 105, 3, 105, 3, 105, 3, 105, 3, 106, 3, 106, 3, 106, 3, 106, 3, 106, 3, 106, 3, 106, 3, 107, 3, 107, 3, 107, 3, 107, 3, 107, 3, 107, 3, 107, 3, 107, 3, 107, 3, 108, 3, 108, 3, 108, 3, 108, 3, 108, 3, 108, 3, 108, 3, 108, 3, 109, 3, 109, 3, 109, 3, 109, 3, 109, 3, 109, 3, 110, 3, 110, 3, 110, 3, 110, 3, 110, 3, 110, 3, 110, 3, 110, 3, 110, 3, 110, 3, 111, 3, 111, 3, 111, 3, 111, 3, 111, 3, 111, 3, 111, 3, 111, 3, 112, 3, 112, 3, 112, 3, 112, 3, 112, 3, 112, 3, 112, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 3, 114, 3, 115, 3, 115, 3, 115, 3, 115, 3, 115, 3, 115, 3, 115, 3, 115, 3, 115, 3, 115, 3, 115, 3, 115, 3, 115, 3, 115, 3, 115, 3, 115, 3, 115, 3, 115, 3, 116, 3, 116, 3, 116, 3, 116, 3, 116, 3, 116, 3, 116, 3, 116, 3, 116, 3, 116, 3, 116, 3, 116, 3, 116, 3, 117, 3, 117, 3, 117, 3, 117, 3, 117, 3, 117, 3, 117, 3, 117, 3, 117, 3, 117, 3, 117, 3, 117, 3, 117, 3, 117, 3, 117, 3, 117, 3, 117, 3, 117, 3, 117, 3, 117, 3, 117, 3, 117, 3, 118, 3, 118, 3, 118, 3, 118, 3, 118, 3, 118, 3, 118, 3, 118, 3, 118, 3, 118, 3, 118, 3, 118, 3, 118, 3, 118, 3, 118, 3, 118, 3, 118, 3, 119, 3, 119, 3, 119, 3, 119, 3, 119, 3, 119, 3, 119, 3, 119, 3, 119, 3, 119, 3, 119, 3, 119, 3, 119, 3, 119, 3, 119, 3, 120, 3, 120, 3, 120, 3, 120, 3, 120, 3, 120, 3, 120, 3, 120, 3, 120, 3, 120, 3, 120, 3, 121, 3, 121, 3, 121, 3, 121, 3, 121, 3, 121, 3, 121, 3, 121, 3, 122, 3, 122, 3, 122, 3, 122, 3, 122, 3, 122, 3, 122, 3, 122, 3, 122, 3, 122, 3, 122, 3, 123, 3, 123, 3, 123, 3, 123, 3, 123, 3, 123, 3, 123, 3, 124, 3, 124, 3, 124, 3, 124, 3, 124, 3, 124, 3, 124, 3, 124, 3, 124, 3, 124, 3, 124, 3, 125, 3, 125, 3, 125, 3, 125, 3, 125, 3, 125, 3, 125, 3, 126, 3, 126, 3, 126, 3, 126, 3, 126, 3, 126, 3, 126, 3, 126, 3, 127, 3, 127, 3, 127, 3, 127, 3, 127, 3, 127, 3, 127, 3, 127, 3, 127, 3, 127, 3, 127, 3, 127, 3, 128, 3, 128, 3, 128, 3, 128, 3, 128, 3, 129, 3, 129, 3, 129, 3, 129, 3, 129, 3, 130, 3, 130, 3, 130, 3, 130, 3, 130, 3, 130, 3, 131, 3, 131, 3, 131, 3, 131, 3, 131, 3, 131, 3, 131, 3, 131, 3, 131, 3, 131, 3, 131, 3, 131, 3, 132, 3, 132, 3, 132, 3, 132, 3, 132, 3, 132, 3, 132, 3, 133, 3, 133, 3, 133, 3, 133, 3, 133, 3, 133, 3, 133, 3, 133, 3, 133, 3, 133, 3, 134, 3, 134, 3, 134, 3, 134, 3, 134, 3, 135, 3, 135, 3, 135, 3, 135, 3, 135, 3, 135, 3, 135, 3, 135, 3, 136, 3, 136, 3, 136, 3, 136, 3, 136, 3, 137, 3, 137, 3, 137, 3, 137, 3, 137, 3, 137, 3, 138, 3, 138, 3, 138, 3, 138, 3, 138, 3, 138, 3, 138, 3, 139, 3, 139, 3, 139, 3, 139, 3, 139, 3, 139, 3, 139, 3, 139, 3, 140, 3, 140, 3, 140, 3, 140, 3, 140, 3, 140, 3, 140, 3, 140, 3, 140, 3, 140, 3, 141, 3, 141, 3, 141, 3, 141, 3, 141, 3, 142, 3, 142, 3, 142, 3, 142, 3, 142, 3, 142, 3, 142, 3, 143, 3, 143, 3, 143, 3, 143, 3, 143, 3, 143, 3, 143, 3, 143, 3, 143, 3, 143, 3, 143, 3, 143, 3, 143, 3, 144, 3, 144, 3, 144, 3, 144, 3, 144, 3, 144, 3, 144, 3, 144, 3, 144, 3, 144, 3, 144, 3, 144, 3, 145, 3, 145, 3, 145, 3, 145, 3, 145, 3, 145, 3, 146, 3, 146, 3, 146, 3, 146, 3, 146, 3, 147, 3, 147, 3, 147, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 148, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 3, 149, 3, 150, 3, 150, 3, 150, 3, 150, 3, 150, 3, 151, 3, 151, 3, 151, 3, 151, 3, 151, 3, 151, 3, 152, 3, 152, 3, 152, 3, 152, 3, 152, 3, 152, 3, 152, 3, 152, 3, 152, 3, 153, 3, 153, 3, 153, 3, 153, 3, 153, 3, 153, 3, 153, 3, 153, 3, 153, 3, 153, 3, 153, 3, 153, 3, 153, 3, 153, 3, 153, 3, 153, 3, 154, 3, 154, 3, 154, 3, 154, 3, 154, 3, 154, 3, 154, 3, 154, 3, 154, 3, 154, 3, 154, 3, 154, 3, 154, 3, 154, 3, 154, 3, 154, 3, 154, 3, 155, 3, 155, 3, 155, 3, 155, 3, 155, 3, 155, 3, 155, 3, 155, 3, 156, 3, 156, 3, 156, 3, 156, 3, 156, 3, 156, 3, 156, 3, 156, 3, 156, 3, 156, 3, 156, 3, 157, 3, 157, 3, 157, 3, 157, 3, 157, 3, 157, 3, 157, 3, 157, 3, 157, 3, 158, 3, 158, 3, 158, 3, 158, 3, 158, 3, 159, 3, 159, 3, 159, 3, 159, 3, 159, 3, 159, 3, 159, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 160, 3, 161, 3, 161, 3, 161, 3, 161, 3, 161, 3, 161, 3, 161, 3, 161, 3, 161, 3, 162, 3, 162, 3, 162, 3, 162, 3, 162, 3, 162, 3, 162, 3, 162, 3, 162, 3, 162, 3, 162, 3, 162, 3, 163, 3, 163, 3, 163, 3, 163, 3, 163, 3, 163, 3, 163, 3, 163, 3, 164, 3, 164, 3, 164, 3, 164, 3, 164, 3, 165, 3, 165, 3, 165, 3, 165, 3, 165, 3, 166, 3, 166, 3, 166, 3, 166, 3, 166, 3, 166, 3, 166, 3, 166, 3, 166, 3, 167, 3, 167, 3, 167, 3, 167, 3, 167, 3, 167, 3, 167, 3, 167, 3, 167, 3, 167, 3, 167, 3, 167, 3, 168, 3, 168, 3, 168, 3, 168, 3, 168, 3, 169, 3, 169, 3, 169, 3, 169, 3, 169, 3, 169, 3, 169, 3, 169, 3, 169, 3, 169, 3, 169, 3, 169, 3, 169, 3, 169, 3, 169, 3, 169, 3, 169, 3, 170, 3, 170, 3, 170, 3, 170, 3, 170, 3, 170, 3, 170, 3, 170, 3, 170, 3, 170, 3, 170, 3, 170, 3, 171, 3, 171, 3, 171, 3, 171, 3, 171, 3, 171, 3, 172, 3, 172, 3, 172, 3, 172, 3, 172, 3, 172, 3, 172, 3, 172, 3, 173, 3, 173, 3, 173, 3, 173, 3, 173, 3, 173, 3, 173, 3, 174, 3, 174, 3, 174, 3, 174, 3, 174, 3, 174, 3, 174, 3, 174, 3, 174, 3, 174, 3, 174, 3, 174, 3, 174, 3, 174, 3, 174, 3, 175, 3, 175, 3, 175, 3, 175, 3, 175, 3, 175, 3, 175, 3, 175, 3, 175, 3, 175, 3, 175, 3, 175, 3, 175, 3, 175, 3, 175, 3, 175, 3, 175, 3, 175, 3, 175, 3, 175, 3, 175, 3, 175, 3, 175, 3, 175, 3, 175, 3, 175, 3, 176, 3, 176, 3, 176, 3, 176, 3, 176, 3, 176, 3, 176, 3, 176, 3, 176, 3, 176, 3, 177, 3, 177, 3, 177, 3, 177, 3, 177, 3, 178, 3, 178, 3, 178, 3, 178, 3, 178, 3, 178, 3, 178, 3, 178, 3, 179, 3, 179, 3, 179, 3, 179, 3, 179, 3, 179, 3, 179, 3, 179, 3, 179, 3, 179, 3, 179, 3, 179, 3, 180, 3, 180, 3, 180, 3, 180, 3, 180, 3, 180, 3, 180, 3, 180, 3, 180, 3, 180, 3, 180, 3, 180, 3, 180, 3, 180, 3, 180, 3, 180, 3, 180, 3, 180, 3, 181, 3, 181, 3, 181, 3, 181, 3, 181, 3, 181, 3, 182, 3, 182, 3, 182, 3, 182, 3, 182, 3, 182, 3, 182, 3, 182, 3, 182, 3, 182, 3, 182, 3, 183, 3, 183, 3, 183, 3, 183, 3, 183, 3, 183, 3, 184, 3, 184, 3, 184, 3, 184, 3, 184, 3, 184, 3, 184, 3, 185, 3, 185, 3, 185, 3, 185, 3, 186, 3, 186, 3, 186, 3, 186, 3, 186, 3, 186, 3, 187, 3, 187, 3, 187, 3, 187, 3, 187, 3, 187, 3, 188, 3, 188, 3, 188, 3, 188, 3, 188, 3, 188, 3, 188, 3, 188, 3, 188, 3, 188, 3, 188, 3, 189, 3, 189, 3, 189, 3, 189, 3, 189, 3, 189, 3, 189, 3, 189, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 191, 3, 191, 3, 192, 3, 192, 3, 192, 3, 192, 3, 192, 3, 192, 3, 192, 3, 193, 3, 193, 3, 193, 3, 193, 3, 193, 3, 194, 3, 194, 3, 194, 3, 194, 3, 194, 3, 194, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 196, 3, 196, 3, 196, 3, 196, 3, 196, 3, 196, 3, 197, 3, 197, 3, 197, 3, 197, 3, 197, 3, 197, 3, 197, 3, 197, 3, 197, 3, 197, 3, 197, 3, 197, 3, 197, 3, 197, 3, 197, 3, 197, 3, 197, 3, 198, 3, 198, 3, 198, 3, 198, 3, 198, 3, 198, 3, 198, 3, 198, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 199, 3, 200, 3, 200, 3, 200, 3, 200, 3, 200, 3, 200, 3, 200, 3, 200, 3, 200, 3, 200, 3, 200, 3, 200, 3, 200, 3, 200, 3, 200, 3, 200, 3, 200, 3, 201, 3, 201, 3, 201, 3, 201, 3, 201, 3, 201, 3, 201, 3, 201, 3, 201, 3, 201, 3, 201, 3, 202, 3, 202, 3, 202, 3, 202, 3, 202, 3, 202, 3, 202, 3, 202, 3, 202, 3, 202, 3, 202, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 203, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 3, 205, 3, 205, 3, 205, 3, 205, 3, 205, 3, 205, 3, 205, 3, 205, 3, 205, 3, 205, 3, 205, 3, 205, 3, 206, 3, 206, 3, 206, 3, 206, 3, 206, 3, 206, 3, 206, 3, 206, 3, 206, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 207, 3, 208, 3, 208, 3, 208, 3, 208, 3, 208, 3, 208, 3, 208, 3, 209, 3, 209, 3, 209, 3, 209, 3, 209, 3, 209, 3, 209, 3, 209, 3, 209, 3, 209, 3, 209, 3, 209, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 211, 3, 211, 3, 211, 3, 211, 3, 211, 3, 211, 3, 211, 3, 211, 3, 212, 3, 212, 3, 212, 3, 212, 3, 212, 3, 212, 3, 212, 3, 212, 3, 212, 3, 213, 3, 213, 3, 213, 3, 213, 3, 213, 3, 213, 3, 213, 3, 213, 3, 213, 3, 213, 3, 213, 3, 213, 3, 213, 3, 213, 3, 213, 3, 213, 3, 213, 3, 213, 3, 213, 3, 213, 3, 213, 3, 213, 3, 214, 3, 214, 3, 214, 3, 214, 3, 214, 3, 214, 3, 214, 3, 215, 3, 215, 3, 215, 3, 215, 3, 215, 3, 215, 3, 215, 3, 215, 3, 216, 3, 216, 3, 216, 3, 216, 3, 216, 3, 216, 3, 216, 3, 216, 3, 216, 3, 216, 3, 216, 3, 216, 3, 216, 3, 217, 3, 217, 3, 217, 3, 217, 3, 217, 3, 217, 3, 217, 3, 217, 3, 217, 3, 217, 3, 217, 3, 217, 3, 217, 3, 218, 3, 218, 3, 218, 3, 218, 3, 218, 3, 218, 3, 218, 3, 218, 3, 219, 3, 219, 3, 219, 3, 219, 3, 219, 3, 219, 3, 219, 3, 220, 3, 220, 3, 220, 3, 220, 3, 220, 3, 220, 3, 220, 3, 220, 3, 220, 3, 220, 3, 221, 3, 221, 3, 221, 3, 221, 3, 221, 3, 221, 3, 221, 3, 221, 3, 221, 3, 221, 3, 221, 3, 221, 3, 222, 3, 222, 3, 222, 3, 222, 3, 222, 3, 222, 3, 222, 3, 222, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 223, 3, 224, 3, 224, 3, 224, 3, 224, 3, 224, 3, 224, 3, 224, 3, 224, 3, 225, 3, 225, 3, 225, 3, 225, 3, 225, 3, 225, 3, 225, 3, 225, 3, 225, 3, 226, 3, 226, 3, 226, 3, 226, 3, 226, 3, 226, 3, 226, 3, 226, 3, 226, 3, 226, 3, 226, 3, 227, 3, 227, 3, 227, 3, 227, 3, 227, 3, 227, 3, 227, 3, 227, 3, 227, 3, 227, 3, 228, 3, 228, 3, 228, 3, 228, 3, 228, 3, 228, 3, 228, 3, 228, 3, 228, 3, 228, 3, 228, 3, 229, 3, 229, 3, 229, 3, 229, 3, 229, 3, 229, 3, 229, 3, 229, 3, 230, 3, 230, 3, 230, 3, 230, 3, 230, 3, 230, 3, 230, 3, 230, 3, 230, 3, 230, 3, 231, 3, 231, 3, 231, 3, 231, 3, 231, 3, 231, 3, 231, 3, 231, 3, 231, 3, 231, 3, 231, 3, 231, 3, 231, 3, 231, 3, 231, 3, 231, 3, 232, 3, 232, 3, 232, 3, 232, 3, 232, 3, 232, 3, 232, 3, 232, 3, 232, 3, 233, 3, 233, 3, 233, 3, 233, 3, 233, 3, 233, 3, 233, 3, 233, 3, 233, 3, 234, 3, 234, 3, 234, 3, 234, 3, 234, 3, 234, 3, 234, 3, 234, 3, 235, 3, 235, 3, 235, 3, 235, 3, 235, 3, 235, 3, 235, 3, 236, 3, 236, 3, 236, 3, 236, 3, 236, 3, 236, 3, 236, 3, 236, 3, 236, 3, 236, 3, 236, 3, 236, 3, 236, 3, 236, 3, 236, 3, 237, 3, 237, 3, 237, 3, 237, 3, 237, 3, 237, 3, 237, 3, 237, 3, 237, 3, 237, 3, 237, 3, 237, 3, 238, 3, 238, 3, 238, 3, 238, 3, 238, 3, 238, 3, 238, 3, 238, 3, 238, 3, 238, 3, 239, 3, 239, 3, 239, 3, 239, 3, 239, 3, 239, 3, 239, 3, 239, 3, 240, 3, 240, 3, 240, 3, 240, 3, 240, 3, 240, 3, 240, 3, 240, 3, 240, 3, 240, 3, 240, 3, 241, 3, 241, 3, 241, 3, 241, 3, 241, 3, 241, 3, 241, 3, 241, 3, 241, 3, 241, 3, 241, 3, 241, 3, 241, 3, 241, 3, 241, 3, 242, 3, 242, 3, 242, 3, 242, 3, 242, 3, 242, 3, 242, 3, 243, 3, 243, 3, 243, 3, 243, 3, 243, 3, 243, 3, 243, 3, 243, 3, 243, 3, 243, 3, 243, 3, 243, 3, 243, 3, 243, 3, 243, 3, 244, 3, 244, 3, 244, 3, 244, 3, 244, 3, 244, 3, 244, 3, 244, 3, 244, 3, 244, 3, 244, 3, 244, 3, 244, 3, 244, 3, 244, 3, 244, 3, 244, 3, 244, 3, 244, 3, 244, 3, 244, 3, 244, 3, 244, 3, 245, 3, 245, 3, 245, 3, 245, 3, 245, 3, 245, 3, 245, 3, 245, 3, 245, 3, 245, 3, 245, 3, 245, 3, 245, 3, 245, 3, 245, 3, 245, 3, 245, 3, 245, 3, 245, 3, 245, 3, 245, 3, 245, 3, 246, 3, 246, 3, 246, 3, 246, 3, 246, 3, 246, 3, 246, 3, 246, 3, 246, 3, 246, 3, 246, 3, 246, 3, 246, 3, 246, 3, 246, 3, 246, 3, 246, 3, 246, 3, 246, 3, 246, 3, 246, 3, 246, 3, 247, 3, 247, 3, 247, 3, 247, 3, 247, 3, 247, 3, 247, 3, 247, 3, 247, 3, 247, 3, 247, 3, 247, 3, 247, 3, 247, 3, 247, 3, 247, 3, 247, 3, 247, 3, 247, 3, 247, 3, 247, 3, 248, 3, 248, 3, 248, 3, 248, 3, 248, 3, 248, 3, 248, 3, 248, 3, 248, 3, 248, 3, 248, 3, 248, 3, 248, 3, 248, 3, 248, 3, 248, 3, 248, 3, 248, 3, 248, 3, 248, 3, 248, 3, 249, 3, 249, 3, 249, 3, 249, 3, 249, 3, 249, 3, 249, 3, 249, 3, 249, 3, 249, 3, 249, 3, 249, 3, 249, 3, 249, 3, 249, 3, 249, 3, 249, 3, 249, 3, 249, 3, 250, 3, 250, 3, 250, 3, 250, 3, 250, 3, 250, 3, 250, 3, 250, 3, 250, 3, 250, 3, 250, 3, 250, 3, 250, 3, 250, 3, 250, 3, 250, 3, 250, 3, 250, 3, 251, 3, 251, 3, 251, 3, 251, 3, 251, 3, 251, 3, 251, 3, 251, 3, 251, 3, 251, 3, 251, 3, 251, 3, 251, 3, 251, 3, 251, 3, 251, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 252, 3, 253, 3, 253, 3, 253, 3, 253, 3, 253, 3, 253, 3, 253, 3, 253, 3, 253, 3, 253, 3, 253, 3, 253, 3, 253, 3, 254, 3, 254, 3, 254, 3, 254, 3, 254, 3, 254, 3, 254, 3, 254, 3, 254, 3, 255, 3, 255, 3, 255, 3, 255, 3, 255, 3, 255, 3, 255, 3, 255, 3, 255, 3, 255, 3, 255, 3, 256, 3, 256, 3, 256, 3, 256, 3, 256, 3, 256, 3, 256, 3, 256, 3, 256, 3, 257, 3, 257, 3, 257, 3, 257, 3, 257, 3, 257, 3, 258, 3, 258, 3, 258, 3, 258, 3, 258, 3, 258, 3, 258, 3, 258, 3, 258, 3, 258, 3, 258, 3, 259, 3, 259, 3, 259, 3, 259, 3, 259, 3, 259, 3, 259, 3, 259, 3, 259, 3, 259, 3, 259, 3, 259, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 261, 3, 261, 3, 261, 3, 261, 3, 261, 3, 261, 3, 261, 3, 261, 3, 261, 3, 261, 3, 262, 3, 262, 3, 262, 3, 262, 3, 262, 3, 262, 3, 262, 3, 262, 3, 262, 3, 262, 3, 262, 3, 262, 3, 262, 3, 262, 3, 262, 3, 263, 3, 263, 3, 263, 3, 263, 3, 263, 3, 263, 3, 263, 3, 263, 3, 263, 3, 263, 3, 263, 3, 264, 3, 264, 3, 264, 3, 264, 3, 264, 3, 264, 3, 264, 3, 264, 3, 265, 3, 265, 3, 265, 3, 265, 3, 265, 3, 265, 3, 265, 3, 265, 3, 265, 3, 266, 3, 266, 3, 266, 3, 266, 3, 266, 3, 266, 3, 266, 3, 266, 3, 267, 3, 267, 3, 267, 3, 267, 3, 267, 3, 267, 3, 267, 3, 267, 3, 267, 3, 268, 3, 268, 3, 268, 3, 268, 3, 268, 3, 268, 3, 268, 3, 268, 3, 268, 3, 268, 3, 268, 3, 268, 3, 269, 3, 269, 3, 269, 3, 269, 3, 269, 3, 269, 3, 269, 3, 269, 3, 269, 3, 269, 3, 269, 3, 269, 3, 269, 3, 269, 3, 270, 3, 270, 3, 270, 3, 270, 3, 270, 3, 270, 3, 270, 3, 270, 3, 271, 3, 271, 3, 271, 3, 271, 3, 271, 3, 271, 3, 271, 3, 272, 3, 272, 3, 272, 3, 272, 3, 272, 3, 273, 3, 273, 3, 273, 3, 273, 3, 273, 3, 273, 3, 273, 3, 274, 3, 274, 3, 274, 3, 274, 3, 274, 3, 274, 3, 274, 3, 275, 3, 275, 3, 275, 3, 275, 3, 275, 3, 275, 3, 275, 3, 275, 3, 275, 3, 275, 3, 275, 3, 276, 3, 276, 3, 276, 3, 276, 3, 276, 3, 276, 3, 276, 3, 276, 3, 276, 3, 276, 3, 276, 3, 276, 3, 276, 3, 276, 3, 276, 3, 276, 3, 277, 3, 277, 3, 277, 3, 277, 3, 277, 3, 277, 3, 277, 3, 277, 3, 277, 3, 277, 3, 277, 3, 277, 3, 278, 3, 278, 3, 278, 3, 278, 3, 279, 3, 279, 3, 279, 3, 279, 3, 279, 3, 280, 3, 280, 3, 280, 3, 280, 3, 280, 3, 281, 3, 281, 3, 281, 3, 281, 3, 281, 3, 281, 3, 281, 3, 281, 3, 281, 3, 281, 3, 281, 3, 281, 3, 281, 3, 281, 3, 281, 3, 281, 3, 281, 3, 281, 3, 281, 3, 281, 3, 281, 3, 281, 3, 281, 3, 282, 3, 282, 3, 282, 3, 282, 3, 282, 3, 282, 3, 283, 3, 283, 3, 283, 3, 283, 3, 283, 3, 283, 3, 283, 3, 283, 3, 283, 3, 283, 3, 284, 3, 284, 3, 284, 3, 284, 3, 284, 3, 284, 3, 284, 3, 284, 3, 284, 3, 284, 3, 284, 3, 285, 3, 285, 3, 285, 3, 285, 3, 285, 3, 285, 3, 285, 3, 285, 3, 285, 3, 285, 3, 285, 3, 285, 3, 286, 3, 286, 3, 286, 3, 286, 3, 286, 3, 286, 3, 286, 3, 286, 3, 286, 3, 286, 3, 286, 3, 286, 3, 286, 3, 287, 3, 287, 3, 287, 3, 287, 3, 287, 3, 287, 3, 287, 3, 287, 3, 287, 3, 287, 3, 287, 3, 287, 3, 287, 3, 287, 3, 287, 3, 287, 3, 288, 3, 288, 3, 288, 3, 288, 3, 288, 3, 288, 3, 289, 3, 289, 3, 289, 3, 289, 3, 289, 3, 289, 3, 289, 3, 290, 3, 290, 3, 290, 3, 290, 3, 290, 3, 290, 3, 290, 3, 290, 3, 290, 3, 290, 3, 290, 3, 290, 3, 290, 3, 290, 3, 290, 3, 290, 3, 290, 3, 291, 3, 291, 3, 291, 3, 291, 3, 291, 3, 291, 3, 291, 3, 291, 3, 291, 3, 291, 3, 291, 3, 291, 3, 291, 3, 291, 3, 291, 3, 291, 3, 291, 3, 291, 3, 291, 3, 291, 3, 291, 3, 291, 3, 291, 3, 292, 3, 292, 3, 292, 3, 292, 3, 292, 3, 292, 3, 292, 3, 292, 3, 292, 3, 293, 3, 293, 3, 293, 3, 293, 3, 293, 3, 293, 3, 293, 3, 293, 3, 293, 3, 293, 3, 293, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 294, 3, 295, 3, 295, 3, 295, 3, 295, 3, 295, 3, 295, 3, 296, 3, 296, 3, 296, 3, 296, 3, 296, 3, 296, 3, 296, 3, 296, 3, 296, 3, 296, 3, 296, 3, 296, 3, 296, 3, 297, 3, 297, 3, 297, 3, 297, 3, 297, 3, 297, 3, 297, 3, 297, 3, 297, 3, 297, 3, 298, 3, 298, 3, 298, 3, 298, 3, 298, 3, 298, 3, 298, 3, 298, 3, 299, 3, 299, 3, 299, 3, 299, 3, 299, 3, 300, 3, 300, 3, 300, 3, 300, 3, 300, 3, 300, 3, 300, 3, 300, 3, 301, 3, 301, 3, 301, 3, 301, 3, 301, 3, 301, 3, 301, 3, 301, 3, 302, 3, 302, 3, 302, 3, 302, 3, 302, 3, 302, 3, 302, 3, 302, 3, 302, 3, 302, 3, 302, 3, 303, 3, 303, 3, 303, 3, 303, 3, 303, 3, 303, 3, 303, 3, 303, 3, 304, 3, 304, 3, 304, 3, 304, 3, 304, 3, 304, 3, 304, 3, 304, 3, 304, 3, 304, 3, 304, 3, 304, 3, 304, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 305, 3, 306, 3, 306, 3, 306, 3, 306, 3, 306, 3, 306, 3, 306, 3, 306, 3, 306, 3, 306, 3, 306, 3, 306, 3, 306, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 3, 309, 3, 309, 3, 309, 3, 309, 3, 309, 3, 309, 3, 309, 3, 309, 3, 309, 3, 310, 3, 310, 3, 310, 3, 310, 3, 310, 3, 310, 3, 310, 3, 311, 3, 311, 3, 311, 3, 311, 3, 311, 3, 311, 3, 311, 3, 311, 3, 311, 3, 311, 3, 311, 3, 311, 3, 311, 3, 311, 3, 311, 3, 311, 3, 311, 3, 311, 3, 311, 3, 311, 3, 311, 3, 312, 3, 312, 3, 312, 3, 312, 3, 312, 3, 312, 3, 312, 3, 312, 3, 312, 3, 312, 3, 312, 3, 312, 3, 312, 3, 312, 3, 312, 3, 312, 3, 312, 3, 312, 3, 312, 3, 312, 3, 312, 3, 312, 3, 312, 3, 312, 3, 313, 3, 313, 3, 313, 3, 313, 3, 313, 3, 313, 3, 313, 3, 313, 3, 313, 3, 313, 3, 313, 3, 313, 3, 314, 3, 314, 3, 314, 3, 315, 3, 315, 3, 315, 3, 315, 3, 315, 3, 315, 3, 316, 3, 316, 3, 316, 3, 316, 3, 316, 3, 316, 3, 316, 3, 316, 3, 316, 3, 317, 3, 317, 3, 317, 3, 317, 3, 317, 3, 317, 3, 317, 3, 317, 3, 317, 3, 318, 3, 318, 3, 318, 3, 318, 3, 318, 3, 319, 3, 319, 3, 319, 3, 319, 3, 319, 3, 319, 3, 319, 3, 319, 3, 319, 3, 320, 3, 320, 3, 320, 3, 320, 3, 320, 3, 320, 3, 320, 3, 320, 3, 320, 3, 320, 3, 321, 3, 321, 3, 321, 3, 321, 3, 321, 3, 321, 3, 321, 3, 321, 3, 321, 3, 321, 3, 321, 3, 321, 3, 321, 3, 321, 3, 321, 3, 321, 3, 322, 3, 322, 3, 322, 3, 322, 3, 322, 3, 322, 3, 322, 3, 322, 3, 322, 3, 322, 3, 322, 3, 322, 3, 322, 3, 323, 3, 323, 3, 323, 3, 323, 3, 323, 3, 323, 3, 323, 3, 323, 3, 323, 3, 323, 3, 324, 3, 324, 3, 324, 3, 324, 3, 324, 3, 324, 3, 324, 3, 324, 3, 324, 3, 324, 3, 324, 3, 324, 3, 324, 3, 324, 3, 324, 3, 324, 3, 324, 3, 324, 3, 324, 3, 324, 3, 324, 3, 324, 3, 324, 3, 324, 3, 324, 3, 325, 3, 325, 3, 325, 3, 325, 3, 325, 3, 325, 3, 325, 3, 325, 3, 325, 3, 325, 3, 325, 3, 325, 3, 325, 3, 325, 3, 325, 3, 325, 3, 325, 3, 325, 3, 325, 3, 325, 3, 325, 3, 326, 3, 326, 3, 326, 3, 326, 3, 326, 3, 326, 3, 326, 3, 326, 3, 326, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 327, 3, 328, 3, 328, 3, 328, 3, 328, 3, 328, 3, 329, 3, 329, 3, 329, 3, 329, 3, 329, 3, 329, 3, 329, 3, 329, 3, 329, 3, 329, 3, 330, 3, 330, 3, 330, 3, 330, 3, 331, 3, 331, 3, 331, 3, 331, 3, 331, 3, 332, 3, 332, 3, 332, 3, 332, 3, 333, 3, 333, 3, 333, 3, 333, 3, 333, 3, 333, 3, 333, 3, 333, 3, 333, 3, 333, 3, 333, 3, 333, 3, 333, 3, 333, 3, 333, 3, 334, 3, 334, 3, 334, 3, 334, 3, 334, 3, 334, 3, 334, 3, 334, 3, 334, 3, 334, 3, 334, 3, 335, 3, 335, 3, 335, 3, 335, 3, 335, 3, 335, 3, 335, 3, 335, 3, 335, 3, 335, 3, 335, 3, 335, 3, 335, 3, 335, 3, 335, 3, 336, 3, 336, 3, 336, 3, 336, 3, 336, 3, 336, 3, 336, 3, 336, 3, 336, 3, 336, 3, 336, 3, 337, 3, 337, 3, 337, 3, 337, 3, 337, 3, 337, 3, 337, 3, 337, 3, 337, 3, 337, 3, 337, 3, 337, 3, 337, 3, 337, 3, 337, 3, 338, 3, 338, 3, 338, 3, 338, 3, 338, 3, 338, 3, 338, 3, 338, 3, 338, 3, 338, 3, 338, 3, 339, 3, 339, 3, 339, 3, 339, 3, 340, 3, 340, 3, 340, 3, 340, 3, 340, 3, 340, 3, 340, 3, 340, 3, 340, 3, 340, 3, 340, 3, 341, 3, 341, 3, 341, 3, 341, 3, 341, 3, 341, 3, 342, 3, 342, 3, 342, 3, 342, 3, 342, 3, 342, 3, 342, 3, 342, 3, 342, 3, 343, 3, 343, 3, 343, 3, 343, 3, 344, 3, 344, 3, 344, 3, 344, 3, 344, 3, 344, 3, 344, 3, 344, 3, 345, 3, 345, 3, 345, 3, 345, 3, 345, 3, 345, 3, 345, 3, 345, 3, 346, 3, 346, 3, 346, 3, 346, 3, 346, 3, 346, 3, 346, 3, 346, 3, 346, 3, 346, 3, 347, 3, 347, 3, 347, 3, 347, 3, 347, 3, 347, 3, 347, 3, 347, 3, 347, 3, 347, 3, 347, 3, 347, 3, 348, 3, 348, 3, 348, 3, 348, 3, 348, 3, 349, 3, 349, 3, 349, 3, 349, 3, 349, 3, 349, 3, 349, 3, 349, 3, 349, 3, 349, 3, 350, 3, 350, 3, 350, 3, 350, 3, 350, 3, 350, 3, 350, 3, 350, 3, 351, 3, 351, 3, 351, 3, 351, 3, 351, 3, 351, 3, 351, 3, 351, 3, 351, 3, 351, 3, 351, 3, 351, 3, 352, 3, 352, 3, 352, 3, 352, 3, 352, 3, 352, 3, 352, 3, 352, 3, 353, 3, 353, 3, 353, 3, 353, 3, 353, 3, 353, 3, 353, 3, 353, 3, 353, 3, 354, 3, 354, 3, 354, 3, 354, 3, 354, 3, 354, 3, 354, 3, 354, 3, 354, 3, 354, 3, 354, 3, 355, 3, 355, 3, 355, 3, 355, 3, 355, 3, 355, 3, 355, 3, 355, 3, 355, 3, 356, 3, 356, 3, 356, 3, 356, 3, 356, 3, 356, 3, 356, 3, 356, 3, 357, 3, 357, 3, 357, 3, 357, 3, 357, 3, 357, 3, 357, 3, 358, 3, 358, 3, 358, 3, 358, 3, 358, 3, 358, 3, 358, 3, 358, 3, 359, 3, 359, 3, 359, 3, 359, 3, 359, 3, 359, 3, 359, 3, 360, 3, 360, 3, 360, 3, 360, 3, 360, 3, 360, 3, 361, 3, 361, 3, 361, 3, 361, 3, 361, 3, 361, 3, 361, 3, 361, 3, 361, 3, 362, 3, 362, 3, 362, 3, 362, 3, 362, 3, 362, 3, 362, 3, 362, 3, 362, 3, 362, 3, 362, 3, 363, 3, 363, 3, 363, 3, 363, 3, 363, 3, 363, 3, 363, 3, 364, 3, 364, 3, 364, 3, 364, 3, 364, 3, 364, 3, 364, 3, 364, 3, 364, 3, 364, 3, 365, 3, 365, 3, 365, 3, 365, 3, 365, 3, 365, 3, 365, 3, 366, 3, 366, 3, 366, 3, 366, 3, 366, 3, 366, 3, 366, 3, 366, 3, 366, 3, 366, 3, 366, 3, 366, 3, 367, 3, 367, 3, 367, 3, 367, 3, 367, 3, 367, 3, 367, 3, 367, 3, 367, 3, 367, 3, 368, 3, 368, 3, 368, 3, 368, 3, 368, 3, 368, 3, 369, 3, 369, 3, 369, 3, 369, 3, 369, 3, 369, 3, 369, 3, 369, 3, 370, 3, 370, 3, 370, 3, 370, 3, 370, 3, 370, 3, 371, 3, 371, 3, 371, 3, 371, 3, 371, 3, 371, 3, 371, 3, 371, 3, 371, 3, 371, 3, 371, 3, 371, 3, 371, 3, 371, 3, 371, 3, 371, 3, 371, 3, 372, 3, 372, 3, 372, 3, 372, 3, 372, 3, 373, 3, 373, 3, 373, 3, 373, 3, 373, 3, 373, 3, 373, 3, 373, 3, 374, 3, 374, 3, 374, 3, 374, 3, 374, 3, 374, 3, 374, 3, 374, 3, 374, 3, 375, 3, 375, 3, 375, 3, 375, 3, 375, 3, 375, 3, 375, 3, 375, 3, 375, 3, 375, 3, 375, 3, 376, 3, 376, 3, 376, 3, 376, 3, 376, 3, 376, 3, 376, 3, 376, 3, 376, 3, 376, 3, 376, 3, 376, 3, 376, 3, 376, 3, 377, 3, 377, 3, 377, 3, 377, 3, 377, 3, 377, 3, 377, 3, 377, 3, 377, 3, 377, 3, 377, 3, 378, 3, 378, 3, 378, 3, 378, 3, 378, 3, 378, 3, 378, 3, 378, 3, 378, 3, 378, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 380, 3, 380, 3, 380, 3, 380, 3, 380, 3, 380, 3, 380, 3, 380, 3, 380, 3, 380, 3, 380, 3, 380, 3, 381, 3, 381, 3, 381, 3, 381, 3, 381, 3, 381, 3, 381, 3, 381, 3, 381, 3, 381, 3, 382, 3, 382, 3, 382, 3, 382, 3, 382, 3, 382, 3, 382, 3, 382, 3, 382, 3, 382, 3, 382, 3, 382, 3, 383, 3, 383, 3, 383, 3, 383, 3, 383, 3, 383, 3, 383, 3, 383, 3, 383, 3, 383, 3, 383, 3, 383, 3, 384, 3, 384, 3, 384, 3, 384, 3, 384, 3, 384, 3, 384, 3, 384, 3, 385, 3, 385, 3, 385, 3, 385, 3, 385, 3, 385, 3, 385, 3, 385, 3, 385, 3, 385, 3, 385, 3, 385, 3, 385, 3, 385, 3, 385, 3, 385, 3, 385, 3, 385, 3, 385, 3, 385, 3, 385, 3, 386, 3, 386, 3, 386, 3, 386, 3, 386, 3, 386, 3, 386, 3, 386, 3, 386, 3, 386, 3, 386, 3, 386, 3, 386, 3, 386, 3, 386, 3, 387, 3, 387, 3, 387, 3, 387, 3, 387, 3, 387, 3, 387, 3, 387, 3, 387, 3, 387, 3, 387, 3, 387, 3, 387, 3, 388, 3, 388, 3, 388, 3, 388, 3, 388, 3, 388, 3, 388, 3, 388, 3, 388, 3, 389, 3, 389, 3, 389, 3, 389, 3, 389, 3, 389, 3, 389, 3, 389, 3, 389, 3, 389, 3, 389, 3, 389, 3, 389, 3, 390, 3, 390, 3, 390, 3, 390, 3, 390, 3, 390, 3, 390, 3, 390, 3, 391, 3, 391, 3, 391, 3, 391, 3, 391, 3, 391, 3, 391, 3, 391, 3, 391, 3, 391, 3, 391, 3, 392, 3, 392, 3, 392, 3, 392, 3, 392, 3, 393, 3, 393, 3, 393, 3, 393, 3, 393, 3, 393, 3, 393, 3, 393, 3, 393, 3, 393, 3, 394, 3, 394, 3, 394, 3, 394, 3, 394, 3, 394, 3, 394, 3, 394, 3, 394, 3, 394, 3, 394, 3, 394, 3, 394, 3, 395, 3, 395, 3, 395, 3, 395, 3, 395, 3, 395, 3, 396, 3, 396, 3, 396, 3, 396, 3, 396, 3, 396, 3, 396, 3, 396, 3, 396, 3, 397, 3, 397, 3, 397, 3, 397, 3, 397, 3, 397, 3, 397, 3, 397, 3, 397, 3, 398, 3, 398, 3, 398, 3, 398, 3, 398, 3, 398, 3, 398, 3, 398, 3, 398, 3, 398, 3, 398, 3, 398, 3, 398, 3, 398, 3, 399, 3, 399, 3, 399, 3, 399, 3, 399, 3, 399, 3, 399, 3, 399, 3, 399, 3, 399, 3, 399, 3, 399, 3, 400, 3, 400, 3, 400, 3, 400, 3, 400, 3, 400, 3, 400, 3, 400, 3, 400, 3, 400, 3, 400, 3, 401, 3, 401, 3, 401, 3, 401, 3, 402, 3, 402, 3, 402, 3, 402, 3, 402, 3, 402, 3, 402, 3, 402, 3, 402, 3, 402, 3, 402, 3, 403, 3, 403, 3, 403, 3, 403, 3, 403, 3, 403, 3, 403, 3, 403, 3, 403, 3, 403, 3, 403, 3, 403, 3, 404, 3, 404, 3, 404, 3, 404, 3, 404, 3, 404, 3, 404, 3, 404, 3, 404, 3, 405, 3, 405, 3, 405, 3, 405, 3, 405, 3, 405, 3, 405, 3, 405, 3, 405, 3, 405, 3, 405, 3, 405, 3, 405, 3, 405, 3, 405, 3, 405, 3, 405, 3, 405, 3, 405, 3, 405, 3, 406, 3, 406, 3, 406, 3, 406, 3, 406, 3, 406, 3, 406, 3, 406, 3, 406, 3, 406, 3, 406, 3, 406, 3, 406, 3, 406, 3, 406, 3, 406, 3, 406, 3, 406, 3, 406, 3, 406, 3, 406, 3, 407, 3, 407, 3, 407, 3, 407, 3, 407, 3, 407, 3, 407, 3, 407, 3, 407, 3, 407, 3, 407, 3, 407, 3, 407, 3, 407, 3, 407, 3, 407, 3, 407, 3, 407, 3, 408, 3, 408, 3, 408, 3, 408, 3, 408, 3, 408, 3, 408, 3, 409, 3, 409, 3, 409, 3, 409, 3, 409, 3, 409, 3, 409, 3, 409, 3, 409, 3, 409, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 410, 3, 411, 3, 411, 3, 411, 3, 411, 3, 411, 3, 411, 3, 411, 3, 411, 3, 411, 3, 411, 3, 411, 3, 411, 3, 412, 3, 412, 3, 412, 3, 412, 3, 412, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 415, 3, 415, 3, 415, 3, 415, 3, 415, 3, 415, 3, 415, 3, 415, 3, 415, 3, 415, 3, 415, 3, 415, 3, 415, 3, 415, 3, 415, 3, 415, 3, 415, 3, 415, 3, 415, 3, 415, 3, 415, 3, 415, 3, 415, 3, 415, 3, 416, 3, 416, 3, 416, 3, 416, 3, 416, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 417, 3, 418, 3, 418, 3, 418, 3, 418, 3, 418, 3, 418, 3, 418, 3, 418, 3, 418, 3, 418, 3, 419, 3, 419, 3, 419, 3, 420, 3, 420, 3, 420, 3, 420, 3, 420, 3, 420, 3, 420, 3, 420, 3, 421, 3, 421, 3, 421, 3, 421, 3, 421, 3, 421, 3, 421, 3, 421, 3, 421, 3, 421, 3, 421, 3, 421, 3, 421, 3, 421, 3, 421, 3, 421, 3, 421, 3, 422, 3, 422, 3, 422, 3, 422, 3, 422, 3, 422, 3, 422, 3, 422, 3, 422, 3, 422, 3, 422, 3, 422, 3, 422, 3, 422, 3, 422, 3, 422, 3, 422, 3, 422, 3, 422, 3, 422, 3, 422, 3, 422, 3, 422, 3, 422, 3, 422, 3, 423, 3, 423, 3, 423, 3, 423, 3, 423, 3, 424, 3, 424, 3, 424, 3, 424, 3, 424, 3, 424, 3, 424, 3, 424, 3, 424, 3, 424, 3, 424, 3, 424, 3, 425, 3, 425, 3, 425, 3, 425, 3, 425, 3, 425, 3, 425, 3, 425, 3, 426, 3, 426, 3, 426, 3, 426, 3, 426, 3, 426, 3, 426, 3, 426, 3, 426, 3, 426, 3, 426, 3, 427, 3, 427, 3, 427, 3, 427, 3, 427, 3, 427, 3, 427, 3, 427, 3, 427, 3, 428, 3, 428, 3, 428, 3, 428, 3, 428, 3, 428, 3, 428, 3, 428, 3, 429, 3, 429, 3, 429, 3, 429, 3, 429, 3, 429, 3, 429, 3, 429, 3, 429, 3, 429, 3, 429, 3, 429, 3, 429, 3, 430, 3, 430, 3, 430, 3, 430, 3, 430, 3, 430, 3, 430, 3, 430, 3, 430, 3, 430, 3, 430, 3, 430, 3, 430, 3, 430, 3, 430, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 431, 3, 432, 3, 432, 3, 432, 3, 432, 3, 432, 3, 432, 3, 432, 3, 432, 3, 432, 3, 432, 3, 432, 3, 432, 3, 432, 3, 432, 3, 432, 3, 432, 3, 432, 3, 432, 3, 432, 3, 432, 3, 432, 3, 433, 3, 433, 3, 433, 3, 433, 3, 433, 3, 434, 3, 434, 3, 434, 3, 434, 3, 434, 3, 434, 3, 435, 3, 435, 3, 435, 3, 436, 3, 436, 3, 436, 3, 436, 3, 436, 3, 436, 3, 436, 3, 436, 3, 436, 3, 436, 3, 436, 3, 437, 3, 437, 3, 437, 3, 437, 3, 437, 3, 437, 3, 437, 3, 437, 3, 437, 3, 437, 3, 437, 3, 438, 3, 438, 3, 438, 3, 438, 3, 438, 3, 438, 3, 439, 3, 439, 3, 439, 3, 439, 3, 439, 3, 439, 3, 439, 3, 439, 3, 439, 3, 439, 3, 439, 3, 440, 3, 440, 3, 440, 3, 440, 3, 440, 3, 440, 3, 440, 3, 441, 3, 441, 3, 441, 3, 441, 3, 441, 3, 441, 3, 441, 3, 441, 3, 441, 3, 441, 3, 441, 3, 441, 3, 441, 3, 441, 3, 441, 3, 441, 3, 441, 3, 441, 3, 441, 3, 441, 3, 442, 3, 442, 3, 442, 3, 442, 3, 442, 3, 442, 3, 442, 3, 442, 3, 442, 3, 442, 3, 442, 3, 442, 3, 442, 3, 442, 3, 443, 3, 443, 3, 443, 3, 443, 3, 443, 3, 443, 3, 443, 3, 443, 3, 443, 3, 444, 3, 444, 3, 444, 3, 444, 3, 444, 3, 444, 3, 444, 3, 444, 3, 445, 3, 445, 3, 445, 3, 445, 3, 445, 3, 445, 3, 445, 3, 445, 3, 445, 3, 445, 3, 445, 3, 446, 3, 446, 3, 446, 3, 446, 3, 447, 3, 447, 3, 447, 3, 447, 3, 447, 3, 447, 3, 447, 3, 447, 3, 447, 3, 447, 3, 447, 3, 447, 3, 447, 3, 447, 3, 447, 3, 447, 3, 447, 3, 448, 3, 448, 3, 448, 3, 448, 3, 448, 3, 448, 3, 448, 3, 448, 3, 448, 3, 449, 3, 449, 3, 449, 3, 449, 3, 449, 3, 449, 3, 449, 3, 449, 3, 450, 3, 450, 3, 450, 3, 450, 3, 450, 3, 450, 3, 450, 3, 450, 3, 451, 3, 451, 3, 451, 3, 451, 3, 451, 3, 451, 3, 451, 3, 451, 3, 451, 3, 451, 3, 451, 3, 452, 3, 452, 3, 452, 3, 452, 3, 452, 3, 452, 3, 452, 3, 452, 3, 452, 3, 452, 3, 452, 3, 452, 3, 452, 3, 452, 3, 452, 3, 453, 3, 453, 3, 453, 3, 453, 3, 453, 3, 453, 3, 454, 3, 454, 3, 454, 3, 454, 3, 454, 3, 454, 3, 454, 3, 454, 3, 454, 3, 455, 3, 455, 3, 455, 3, 455, 3, 456, 3, 456, 3, 456, 3, 456, 3, 456, 3, 456, 3, 456, 3, 456, 3, 456, 3, 456, 3, 456, 3, 456, 3, 456, 3, 456, 3, 456, 3, 457, 3, 457, 3, 457, 3, 457, 3, 457, 3, 457, 3, 458, 3, 458, 3, 458, 3, 458, 3, 458, 3, 458, 3, 458, 3, 458, 3, 458, 3, 458, 3, 458, 3, 458, 3, 458, 3, 458, 3, 458, 3, 458, 3, 458, 3, 458, 3, 458, 3, 458, 3, 458, 3, 458, 3, 459, 3, 459, 3, 459, 3, 459, 3, 459, 3, 459, 3, 459, 3, 460, 3, 460, 3, 460, 3, 460, 3, 460, 3, 460, 3, 460, 3, 461, 3, 461, 3, 461, 3, 461, 3, 461, 3, 461, 3, 461, 3, 461, 3, 461, 3, 462, 3, 462, 3, 462, 3, 462, 3, 462, 3, 463, 3, 463, 3, 463, 3, 463, 3, 463, 3, 463, 3, 463, 3, 463, 3, 463, 3, 464, 3, 464, 3, 464, 3, 464, 3, 464, 3, 464, 3, 464, 3, 464, 3, 464, 3, 465, 3, 465, 3, 465, 3, 465, 3, 465, 3, 465, 3, 465, 3, 465, 3, 465, 3, 465, 3, 465, 3, 466, 3, 466, 3, 466, 3, 466, 3, 466, 3, 466, 3, 466, 3, 467, 3, 467, 3, 467, 3, 467, 3, 467, 3, 467, 3, 468, 3, 468, 3, 468, 3, 468, 3, 468, 3, 468, 3, 468, 3, 469, 3, 469, 3, 469, 3, 469, 3, 469, 3, 469, 3, 469, 3, 469, 3, 469, 3, 469, 3, 470, 3, 470, 3, 470, 3, 470, 3, 470, 3, 470, 3, 470, 3, 470, 3, 470, 3, 470, 3, 470, 3, 470, 3, 470, 3, 470, 3, 470, 3, 471, 3, 471, 3, 471, 3, 471, 3, 471, 3, 471, 3, 471, 3, 471, 3, 471, 3, 471, 3, 471, 3, 472, 3, 472, 3, 472, 3, 472, 3, 472, 3, 472, 3, 472, 3, 472, 3, 472, 3, 473, 3, 473, 3, 473, 3, 473, 3, 473, 3, 473, 3, 473, 3, 473, 3, 474, 3, 474, 3, 474, 3, 474, 3, 474, 3, 474, 3, 474, 3, 474, 3, 474, 3, 474, 3, 475, 3, 475, 3, 475, 3, 475, 3, 475, 3, 475, 3, 475, 3, 475, 3, 475, 3, 475, 3, 476, 3, 476, 3, 476, 3, 476, 3, 476, 3, 476, 3, 476, 3, 476, 3, 477, 3, 477, 3, 477, 3, 477, 3, 477, 3, 477, 3, 477, 3, 478, 3, 478, 3, 478, 3, 478, 3, 478, 3, 478, 3, 478, 3, 478, 3, 478, 3, 479, 3, 479, 3, 479, 3, 479, 3, 479, 3, 479, 3, 479, 3, 480, 3, 480, 3, 480, 3, 480, 3, 480, 3, 480, 3, 480, 3, 480, 3, 480, 3, 480, 3, 480, 3, 481, 3, 481, 3, 481, 3, 481, 3, 481, 3, 482, 3, 482, 3, 482, 3, 482, 3, 482, 3, 482, 3, 482, 3, 482, 3, 482, 3, 482, 3, 482, 3, 482, 3, 482, 3, 482, 3, 482, 3, 482, 3, 482, 3, 482, 3, 482, 3, 482, 3, 482, 3, 483, 3, 483, 3, 483, 3, 483, 3, 483, 3, 483, 3, 483, 3, 483, 3, 483, 3, 483, 3, 483, 3, 483, 3, 483, 3, 484, 3, 484, 3, 484, 3, 484, 3, 485, 3, 485, 3, 485, 3, 485, 3, 485, 3, 485, 3, 485, 3, 486, 3, 486, 3, 486, 3, 486, 3, 486, 3, 486, 3, 486, 3, 486, 3, 487, 3, 487, 3, 487, 3, 487, 3, 487, 3, 487, 3, 487, 3, 487, 3, 487, 3, 487, 3, 488, 3, 488, 3, 488, 3, 488, 3, 488, 3, 488, 3, 488, 3, 489, 3, 489, 3, 489, 3, 489, 3, 489, 3, 489, 3, 489, 3, 489, 3, 489, 3, 489, 3, 489, 3, 489, 3, 489, 3, 489, 3, 489, 3, 489, 3, 490, 3, 490, 3, 490, 3, 490, 3, 490, 3, 490, 3, 490, 3, 490, 3, 491, 3, 491, 3, 491, 3, 491, 3, 491, 3, 491, 3, 491, 3, 491, 3, 492, 3, 492, 3, 492, 3, 492, 3, 492, 3, 492, 3, 492, 3, 493, 3, 493, 3, 493, 3, 493, 3, 493, 3, 493, 3, 493, 3, 493, 3, 494, 3, 494, 3, 494, 3, 494, 3, 494, 3, 494, 3, 494, 3, 494, 3, 494, 3, 495, 3, 495, 3, 495, 3, 495, 3, 495, 3, 495, 3, 495, 3, 495, 3, 495, 3, 495, 3, 495, 3, 496, 3, 496, 3, 496, 3, 496, 3, 496, 3, 496, 3, 496, 3, 496, 3, 496, 3, 496, 3, 496, 3, 496, 3, 496, 3, 496, 3, 496, 3, 497, 3, 497, 3, 497, 3, 497, 3, 497, 3, 497, 3, 497, 3, 497, 3, 498, 3, 498, 3, 498, 3, 498, 3, 498, 3, 498, 3, 498, 3, 498, 3, 498, 3, 498, 3, 498, 3, 498, 3, 498, 3, 499, 3, 499, 3, 499, 3, 499, 3, 499, 3, 499, 3, 500, 3, 500, 3, 500, 3, 500, 3, 500, 3, 500, 3, 500, 3, 500, 3, 500, 3, 501, 3, 501, 3, 501, 3, 501, 3, 501, 3, 502, 3, 502, 3, 502, 3, 502, 3, 502, 3, 502, 3, 502, 3, 503, 3, 503, 3, 503, 3, 503, 3, 503, 3, 503, 3, 503, 3, 503, 3, 503, 3, 503, 3, 503, 3, 503, 3, 503, 3, 503, 3, 503, 3, 504, 3, 504, 3, 504, 3, 504, 3, 504, 3, 504, 3, 504, 3, 505, 3, 505, 3, 505, 3, 505, 3, 505, 3, 505, 3, 505, 3, 505, 3, 505, 3, 505, 3, 505, 3, 505, 3, 505, 3, 505, 3, 505, 3, 505, 3, 505, 3, 505, 3, 505, 3, 505, 3, 505, 3, 505, 3, 506, 3, 506, 3, 506, 3, 506, 3, 506, 3, 506, 3, 506, 3, 506, 3, 506, 3, 506, 3, 507, 3, 507, 3, 507, 3, 507, 3, 507, 3, 507, 3, 507, 3, 507, 3, 507, 3, 508, 3, 508, 3, 508, 3, 508, 3, 508, 3, 508, 3, 508, 3, 508, 3, 509, 3, 509, 3, 509, 3, 509, 3, 509, 3, 509, 3, 510, 3, 510, 3, 510, 3, 510, 3, 510, 3, 510, 3, 510, 3, 511, 3, 511, 3, 511, 3, 511, 3, 512, 3, 512, 3, 512, 3, 512, 3, 512, 3, 513, 3, 513, 3, 513, 3, 513, 3, 513, 3, 513, 3, 513, 3, 513, 3, 513, 3, 513, 3, 514, 3, 514, 3, 514, 3, 514, 3, 514, 3, 514, 3, 514, 3, 514, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 516, 3, 516, 3, 516, 3, 516, 3, 516, 3, 516, 3, 516, 3, 516, 3, 516, 3, 516, 3, 516, 3, 517, 3, 517, 3, 517, 3, 517, 3, 517, 3, 517, 3, 517, 3, 517, 3, 517, 3, 517, 3, 517, 3, 517, 3, 518, 3, 518, 3, 518, 3, 518, 3, 518, 3, 518, 3, 518, 3, 518, 3, 518, 3, 518, 3, 518, 3, 518, 3, 518, 3, 518, 3, 519, 3, 519, 3, 519, 3, 519, 3, 519, 3, 519, 3, 520, 3, 520, 3, 520, 3, 520, 3, 520, 3, 521, 3, 521, 3, 521, 3, 521, 3, 521, 3, 521, 3, 521, 3, 521, 3, 521, 3, 521, 3, 521, 3, 521, 3, 521, 3, 521, 3, 521, 3, 521, 3, 521, 3, 521, 3, 522, 3, 522, 3, 522, 3, 522, 3, 522, 3, 522, 3, 522, 3, 522, 3, 522, 3, 522, 3, 522, 3, 522, 3, 522, 3, 522, 3, 522, 3, 522, 3, 522, 3, 522, 3, 522, 3, 522, 3, 522, 3, 522, 3, 522, 3, 522, 3, 523, 3, 523, 3, 523, 3, 523, 3, 523, 3, 523, 3, 523, 3, 524, 3, 524, 3, 524, 3, 524, 3, 524, 3, 524, 3, 525, 3, 525, 3, 525, 3, 525, 3, 525, 3, 526, 3, 526, 3, 526, 3, 526, 3, 526, 3, 526, 3, 526, 3, 527, 3, 527, 3, 527, 3, 527, 3, 527, 3, 527, 3, 528, 3, 528, 3, 528, 3, 528, 3, 528, 3, 528, 3, 528, 3, 529, 3, 529, 3, 529, 3, 529, 3, 529, 3, 529, 3, 529, 3, 529, 3, 529, 3, 529, 3, 529, 3, 530, 3, 530, 3, 530, 3, 530, 3, 530, 3, 530, 3, 530, 3, 530, 3, 530, 3, 530, 3, 530, 3, 530, 3, 531, 3, 531, 3, 531, 3, 531, 3, 531, 3, 531, 3, 531, 3, 531, 3, 531, 3, 531, 3, 531, 3, 531, 3, 531, 3, 531, 3, 531, 3, 531, 3, 532, 3, 532, 3, 532, 3, 532, 3, 532, 3, 532, 3, 532, 3, 532, 3, 533, 3, 533, 3, 533, 3, 533, 3, 533, 3, 533, 3, 533, 3, 533, 3, 533, 3, 533, 3, 534, 3, 534, 3, 534, 3, 534, 3, 534, 3, 534, 3, 534, 3, 534, 3, 534, 3, 534, 3, 534, 3, 534, 3, 535, 3, 535, 3, 535, 3, 535, 3, 535, 3, 535, 3, 536, 3, 536, 3, 536, 3, 536, 3, 536, 3, 537, 3, 537, 3, 537, 3, 537, 3, 537, 3, 537, 3, 538, 3, 538, 3, 538, 3, 538, 3, 538, 3, 538, 3, 539, 3, 539, 3, 539, 3, 539, 3, 539, 3, 539, 3, 539, 3, 540, 3, 540, 3, 540, 3, 540, 3, 540, 3, 540, 3, 540, 3, 540, 3, 540, 3, 540, 3, 541, 3, 541, 3, 541, 3, 541, 3, 541, 3, 541, 3, 541, 3, 541, 3, 542, 3, 542, 3, 542, 3, 542, 3, 542, 3, 542, 3, 542, 3, 543, 3, 543, 3, 543, 3, 543, 3, 543, 3, 543, 3, 544, 3, 544, 3, 544, 3, 544, 3, 544, 3, 544, 3, 544, 3, 544, 3, 544, 3, 544, 3, 544, 3, 544, 3, 544, 3, 544, 3, 544, 3, 544, 3, 544, 3, 544, 3, 544, 3, 544, 3, 544, 3, 544, 3, 544, 3, 544, 3, 545, 3, 545, 3, 545, 3, 545, 3, 545, 3, 545, 3, 545, 3, 545, 3, 546, 3, 546, 3, 546, 3, 546, 3, 546, 3, 546, 3, 546, 3, 546, 3, 547, 3, 547, 3, 547, 3, 547, 3, 548, 3, 548, 3, 548, 3, 548, 3, 548, 3, 548, 3, 548, 3, 549, 3, 549, 3, 549, 3, 549, 3, 549, 3, 549, 3, 549, 3, 549, 3, 550, 3, 550, 3, 550, 3, 550, 3, 550, 3, 550, 3, 550, 3, 550, 3, 550, 3, 550, 3, 550, 3, 550, 3, 550, 3, 550, 3, 550, 3, 550, 3, 551, 3, 551, 3, 551, 3, 551, 3, 551, 3, 551, 3, 551, 3, 551, 3, 551, 3, 552, 3, 552, 3, 552, 3, 552, 3, 552, 3, 552, 3, 552, 3, 552, 3, 552, 3, 552, 3, 553, 3, 553, 3, 553, 3, 553, 3, 553, 3, 553, 3, 553, 3, 553, 3, 553, 3, 553, 3, 554, 3, 554, 3, 554, 3, 554, 3, 554, 3, 554, 3, 555, 3, 555, 3, 555, 3, 555, 3, 555, 3, 556, 3, 556, 3, 556, 3, 556, 3, 556, 3, 556, 3, 556, 3, 556, 3, 557, 3, 557, 3, 557, 3, 557, 3, 557, 3, 558, 3, 558, 3, 558, 3, 558, 3, 558, 3, 558, 3, 558, 3, 558, 3, 558, 3, 558, 3, 558, 3, 558, 3, 558, 3, 558, 3, 558, 3, 558, 3, 558, 3, 558, 3, 558, 3, 558, 3, 558, 3, 558, 3, 558, 3, 558, 3, 558, 3, 559, 3, 559, 3, 559, 3, 559, 3, 559, 3, 559, 3, 559, 3, 559, 3, 559, 3, 560, 3, 560, 3, 560, 3, 560, 3, 560, 3, 560, 3, 560, 3, 560, 3, 560, 3, 560, 3, 561, 3, 561, 3, 561, 3, 561, 3, 561, 3, 561, 3, 561, 3, 561, 3, 561, 3, 561, 3, 561, 3, 561, 3, 561, 3, 561, 3, 561, 3, 561, 3, 561, 3, 561, 3, 561, 3, 561, 3, 561, 3, 561, 3, 561, 3, 561, 3, 561, 3, 561, 3, 561, 3, 561, 3, 562, 3, 562, 3, 562, 3, 562, 3, 562, 3, 562, 3, 562, 3, 562, 3, 562, 3, 562, 3, 562, 3, 562, 3, 562, 3, 562, 3, 562, 3, 562, 3, 562, 3, 562, 3, 562, 3, 562, 3, 562, 3, 562, 3, 562, 3, 563, 3, 563, 3, 563, 3, 563, 3, 563, 3, 563, 3, 563, 3, 563, 3, 563, 3, 563, 3, 563, 3, 563, 3, 563, 3, 563, 3, 563, 3, 563, 3, 564, 3, 564, 3, 564, 3, 564, 3, 564, 3, 564, 3, 564, 3, 564, 3, 564, 3, 564, 3, 564, 3, 564, 3, 564, 3, 565, 3, 565, 3, 565, 3, 565, 3, 565, 3, 565, 3, 565, 3, 565, 3, 565, 3, 565, 3, 566, 3, 566, 3, 566, 3, 566, 3, 567, 3, 567, 3, 567, 3, 567, 3, 567, 3, 567, 3, 567, 3, 568, 3, 568, 3, 568, 3, 568, 3, 568, 3, 568, 3, 568, 3, 568, 3, 568, 3, 569, 3, 569, 3, 569, 3, 569, 3, 569, 3, 569, 3, 569, 3, 569, 3, 569, 3, 569, 3, 569, 3, 569, 3, 570, 3, 570, 3, 570, 3, 570, 3, 570, 3, 570, 3, 570, 3, 570, 3, 570, 3, 570, 3, 570, 3, 570, 3, 570, 3, 570, 3, 570, 3, 570, 3, 570, 3, 570, 3, 570, 3, 570, 3, 570, 3, 571, 3, 571, 3, 571, 3, 571, 3, 571, 3, 572, 3, 572, 3, 572, 3, 572, 3, 572, 3, 572, 3, 573, 3, 573, 3, 573, 3, 573, 3, 573, 3, 573, 3, 573, 3, 573, 3, 573, 3, 574, 3, 574, 3, 574, 3, 574, 3, 574, 3, 574, 3, 575, 3, 575, 3, 575, 3, 575, 3, 575, 3, 575, 3, 575, 3, 575, 3, 575, 3, 576, 3, 576, 3, 576, 3, 576, 3, 576, 3, 576, 3, 576, 3, 576, 3, 576, 3, 577, 3, 577, 3, 577, 3, 577, 3, 577, 3, 577, 3, 577, 3, 577, 3, 577, 3, 577, 3, 577, 3, 577, 3, 578, 3, 578, 3, 578, 3, 578, 3, 578, 3, 578, 3, 578, 3, 579, 3, 579, 3, 579, 3, 579, 3, 579, 3, 579, 3, 579, 3, 579, 3, 579, 3, 579, 3, 579, 3, 580, 3, 580, 3, 580, 3, 580, 3, 580, 3, 580, 3, 580, 3, 580, 3, 580, 3, 580, 3, 581, 3, 581, 3, 581, 3, 581, 3, 581, 3, 581, 3, 582, 3, 582, 3, 582, 3, 582, 3, 582, 3, 582, 3, 582, 3, 582, 3, 583, 3, 583, 3, 583, 3, 583, 3, 583, 3, 584, 3, 584, 3, 584, 3, 584, 3, 584, 3, 584, 3, 584, 3, 584, 3, 584, 3, 585, 3, 585, 3, 585, 3, 585, 3, 585, 3, 585, 3, 585, 3, 585, 3, 586, 3, 586, 3, 586, 3, 586, 3, 586, 3, 586, 3, 586, 3, 587, 3, 587, 3, 587, 3, 587, 3, 587, 3, 587, 3, 587, 3, 588, 3, 588, 3, 588, 3, 588, 3, 588, 3, 589, 3, 589, 3, 589, 3, 589, 3, 589, 3, 590, 3, 590, 3, 590, 3, 590, 3, 590, 3, 590, 3, 590, 3, 590, 3, 590, 3, 591, 3, 591, 3, 591, 3, 591, 3, 591, 3, 591, 3, 591, 3, 591, 3, 591, 3, 592, 3, 592, 3, 592, 3, 592, 3, 592, 3, 592, 3, 592, 3, 593, 3, 593, 3, 593, 3, 593, 3, 593, 3, 594, 3, 594, 3, 594, 3, 594, 3, 594, 3, 594, 3, 594, 3, 594, 3, 594, 3, 594, 3, 595, 3, 595, 3, 595, 3, 595, 3, 595, 3, 596, 3, 596, 3, 596, 3, 596, 3, 596, 3, 596, 3, 596, 3, 596, 3, 596, 3, 596, 3, 596, 3, 596, 3, 596, 3, 596, 3, 597, 3, 597, 3, 597, 3, 597, 3, 597, 3, 597, 3, 597, 3, 597, 3, 597, 3, 597, 3, 597, 3, 597, 3, 598, 3, 598, 3, 598, 3, 598, 3, 599, 3, 599, 3, 599, 3, 599, 3, 599, 3, 600, 3, 600, 3, 600, 3, 600, 3, 600, 3, 600, 3, 600, 3, 600, 3, 600, 3, 600, 3, 600, 3, 600, 3, 600, 3, 601, 3, 601, 3, 601, 3, 601, 3, 601, 3, 601, 3, 601, 3, 602, 3, 602, 3, 602, 3, 602, 3, 602, 3, 602, 3, 602, 3, 602, 3, 602, 3, 602, 3, 602, 3, 603, 3, 603, 3, 603, 3, 603, 3, 603, 3, 603, 3, 603, 3, 603, 3, 603, 3, 603, 3, 603, 3, 604, 3, 604, 3, 604, 3, 604, 3, 604, 3, 604, 3, 604, 3, 604, 3, 604, 3, 605, 3, 605, 3, 605, 3, 605, 3, 605, 3, 605, 3, 605, 3, 605, 3, 605, 3, 605, 3, 605, 3, 605, 3, 605, 3, 606, 3, 606, 3, 606, 3, 607, 3, 607, 3, 607, 3, 607, 3, 607, 3, 607, 3, 607, 3, 607, 3, 607, 3, 607, 3, 608, 3, 608, 3, 608, 3, 609, 3, 609, 3, 609, 3, 609, 3, 609, 3, 609, 3, 609, 3, 610, 3, 610, 3, 610, 3, 610, 3, 610, 3, 610, 3, 610, 3, 610, 3, 610, 3, 610, 3, 610, 3, 610, 3, 610, 3, 610, 3, 610, 3, 610, 3, 610, 3, 610, 3, 610, 3, 610, 3, 610, 3, 610, 3, 610, 3, 610, 3, 610, 3, 610, 3, 610, 3, 610, 3, 611, 3, 611, 3, 611, 3, 611, 3, 611, 3, 611, 3, 611, 3, 611, 3, 611, 3, 611, 3, 611, 3, 611, 3, 611, 3, 611, 3, 611, 3, 611, 3, 611, 3, 611, 3, 611, 3, 611, 3, 611, 3, 611, 3, 611, 3, 611, 3, 611, 3, 611, 3, 611, 3, 612, 3, 612, 3, 612, 3, 612, 3, 612, 3, 612, 3, 612, 3, 612, 3, 612, 3, 612, 3, 612, 3, 612, 3, 612, 3, 612, 3, 612, 3, 612, 3, 612, 3, 612, 3, 612, 3, 612, 3, 613, 3, 613, 3, 613, 3, 613, 3, 614, 3, 614, 3, 614, 3, 614, 3, 614, 3, 614, 3, 614, 3, 614, 3, 614, 3, 614, 3, 615, 3, 615, 3, 615, 3, 615, 3, 615, 3, 615, 3, 615, 3, 616, 3, 616, 3, 616, 3, 616, 3, 616, 3, 616, 3, 616, 3, 617, 3, 617, 3, 617, 3, 617, 3, 617, 3, 617, 3, 617, 3, 617, 3, 617, 3, 618, 3, 618, 3, 618, 3, 618, 3, 618, 3, 618, 3, 618, 3, 618, 3, 619, 3, 619, 3, 619, 3, 619, 3, 619, 3, 619, 3, 619, 3, 619, 3, 619, 3, 619, 3, 619, 3, 619, 3, 619, 3, 619, 3, 619, 3, 619, 3, 620, 3, 620, 3, 620, 3, 620, 3, 620, 3, 620, 3, 620, 3, 620, 3, 620, 3, 620, 3, 621, 3, 621, 3, 621, 3, 621, 3, 621, 3, 621, 3, 621, 3, 621, 3, 621, 3, 621, 3, 621, 3, 621, 3, 622, 3, 622, 3, 622, 3, 622, 3, 622, 3, 622, 3, 622, 3, 622, 3, 622, 3, 622, 3, 623, 3, 623, 3, 623, 3, 623, 3, 623, 3, 624, 3, 624, 3, 624, 3, 624, 3, 624, 3, 624, 3, 624, 3, 625, 3, 625, 3, 625, 3, 625, 3, 625, 3, 625, 3, 625, 3, 625, 3, 625, 3, 625, 3, 626, 3, 626, 3, 626, 3, 626, 3, 626, 3, 626, 3, 626, 3, 626, 3, 626, 3, 626, 3, 626, 3, 626, 3, 626, 3, 626, 3, 627, 3, 627, 3, 627, 3, 627, 3, 627, 3, 627, 3, 627, 3, 627, 3, 627, 3, 627, 3, 627, 3, 628, 3, 628, 3, 628, 3, 628, 3, 628, 3, 628, 3, 628, 3, 628, 3, 629, 3, 629, 3, 629, 3, 629, 3, 629, 3, 629, 3, 629, 3, 629, 3, 630, 3, 630, 3, 630, 3, 630, 3, 630, 3, 630, 3, 630, 3, 630, 3, 630, 3, 630, 3, 631, 3, 631, 3, 631, 3, 631, 3, 631, 3, 631, 3, 631, 3, 631, 3, 631, 3, 631, 3, 631, 3, 631, 3, 631, 3, 632, 3, 632, 3, 632, 3, 632, 3, 632, 3, 632, 3, 633, 3, 633, 3, 633, 3, 633, 3, 633, 3, 633, 3, 633, 3, 633, 3, 633, 3, 634, 3, 634, 3, 634, 3, 634, 3, 634, 3, 634, 3, 634, 3, 634, 3, 634, 3, 634, 3, 634, 3, 635, 3, 635, 3, 635, 3, 635, 3, 635, 3, 635, 3, 635, 3, 635, 3, 635, 3, 635, 3, 635, 3, 636, 3, 636, 3, 636, 3, 636, 3, 636, 3, 636, 3, 636, 3, 636, 3, 636, 3, 636, 3, 637, 3, 637, 3, 637, 3, 637, 3, 637, 3, 637, 3, 637, 3, 637, 3, 637, 3, 637, 3, 637, 3, 637, 3, 637, 3, 638, 3, 638, 3, 638, 3, 638, 3, 638, 3, 638, 3, 638, 3, 638, 3, 638, 3, 638, 3, 638, 3, 638, 3, 638, 3, 638, 3, 639, 3, 639, 3, 639, 3, 639, 3, 639, 3, 639, 3, 639, 3, 639, 3, 639, 3, 640, 3, 640, 3, 640, 3, 640, 3, 640, 3, 640, 3, 640, 3, 640, 3, 640, 3, 640, 3, 640, 3, 641, 3, 641, 3, 641, 3, 641, 3, 641, 3, 641, 3, 641, 3, 641, 3, 641, 3, 641, 3, 641, 3, 641, 3, 641, 3, 641, 3, 641, 3, 641, 3, 642, 3, 642, 3, 642, 3, 642, 3, 642, 3, 642, 3, 642, 3, 642, 3, 642, 3, 642, 3, 642, 3, 642, 3, 642, 3, 643, 3, 643, 3, 643, 3, 643, 3, 643, 3, 643, 3, 643, 3, 643, 3, 643, 3, 643, 3, 643, 3, 643, 3, 643, 3, 643, 3, 644, 3, 644, 3, 644, 3, 644, 3, 644, 3, 644, 3, 644, 3, 644, 3, 644, 3, 645, 3, 645, 3, 645, 3, 645, 3, 645, 3, 645, 3, 645, 3, 645, 3, 645, 3, 645, 3, 645, 3, 645, 3, 646, 3, 646, 3, 646, 3, 646, 3, 646, 3, 646, 3, 646, 3, 646, 3, 646, 3, 646, 3, 647, 3, 647, 3, 647, 3, 647, 3, 647, 3, 647, 3, 647, 3, 647, 3, 647, 3, 647, 3, 647, 3, 648, 3, 648, 3, 648, 3, 648, 3, 648, 3, 648, 3, 648, 3, 648, 3, 648, 3, 648, 3, 649, 3, 649, 3, 649, 3, 649, 3, 649, 3, 649, 3, 649, 3, 649, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 651, 3, 651, 3, 651, 3, 651, 3, 651, 3, 651, 3, 651, 3, 651, 3, 651, 3, 651, 3, 651, 3, 651, 3, 651, 3, 651, 3, 652, 3, 652, 3, 652, 3, 652, 3, 652, 3, 652, 3, 652, 3, 652, 3, 653, 3, 653, 3, 653, 3, 654, 3, 654, 3, 654, 3, 654, 3, 654, 3, 654, 3, 654, 3, 654, 3, 655, 3, 655, 3, 655, 3, 655, 3, 655, 3, 655, 3, 655, 3, 655, 3, 656, 3, 656, 3, 656, 3, 656, 3, 656, 3, 656, 3, 656, 3, 656, 3, 656, 3, 656, 3, 656, 3, 656, 3, 657, 3, 657, 3, 657, 3, 657, 3, 657, 3, 657, 3, 657, 3, 657, 3, 657, 3, 657, 3, 658, 3, 658, 3, 658, 3, 658, 3, 658, 3, 658, 3, 658, 3, 658, 3, 658, 3, 659, 3, 659, 3, 659, 3, 659, 3, 659, 3, 659, 3, 659, 3, 660, 3, 660, 3, 660, 3, 660, 3, 660, 3, 660, 3, 660, 3, 660, 3, 660, 3, 660, 3, 660, 3, 660, 3, 660, 3, 660, 3, 660, 3, 660, 3, 660, 3, 660, 3, 661, 3, 661, 3, 661, 3, 661, 3, 661, 3, 661, 3, 661, 3, 661, 3, 661, 3, 662, 3, 662, 3, 662, 3, 662, 3, 662, 3, 662, 3, 662, 3, 662, 3, 662, 3, 662, 3, 662, 3, 662, 3, 662, 3, 662, 3, 662, 3, 662, 3, 662, 3, 662, 3, 662, 3, 663, 3, 663, 3, 663, 3, 663, 3, 663, 3, 663, 3, 663, 3, 663, 3, 663, 3, 663, 3, 663, 3, 663, 3, 663, 3, 663, 3, 663, 3, 663, 3, 663, 3, 664, 3, 664, 3, 664, 3, 664, 3, 664, 3, 664, 3, 665, 3, 665, 3, 665, 3, 665, 3, 665, 3, 665, 3, 666, 3, 666, 3, 666, 3, 666, 3, 666, 3, 666, 3, 666, 3, 666, 3, 667, 3, 667, 3, 667, 3, 667, 3, 667, 3, 667, 3, 667, 3, 667, 3, 667, 3, 667, 3, 667, 3, 667, 3, 667, 3, 667, 3, 667, 3, 667, 3, 667, 3, 667, 3, 667, 3, 667, 3, 668, 3, 668, 3, 668, 3, 668, 3, 668, 3, 668, 3, 668, 3, 668, 3, 668, 3, 668, 3, 668, 3, 668, 3, 668, 3, 668, 3, 668, 3, 668, 3, 668, 3, 668, 3, 668, 3, 668, 3, 668, 3, 669, 3, 669, 3, 669, 3, 669, 3, 669, 3, 669, 3, 669, 3, 669, 3, 669, 3, 669, 3, 669, 3, 669, 3, 669, 3, 669, 3, 669, 3, 670, 3, 670, 3, 670, 3, 670, 3, 670, 3, 670, 3, 670, 3, 671, 3, 671, 3, 671, 3, 671, 3, 671, 3, 671, 3, 671, 3, 671, 3, 671, 3, 671, 3, 671, 3, 671, 3, 671, 3, 671, 3, 671, 3, 672, 3, 672, 3, 672, 3, 672, 3, 672, 3, 672, 3, 672, 3, 672, 3, 672, 3, 672, 3, 672, 3, 672, 3, 672, 3, 672, 3, 672, 3, 672, 3, 673, 3, 673, 3, 673, 3, 673, 3, 673, 3, 673, 3, 673, 3, 673, 3, 673, 3, 674, 3, 674, 3, 674, 3, 674, 3, 674, 3, 674, 3, 674, 3, 674, 3, 674, 3, 674, 3, 675, 3, 675, 3, 675, 3, 675, 3, 675, 3, 675, 3, 675, 3, 675, 3, 675, 3, 675, 3, 675, 3, 675, 3, 675, 3, 676, 3, 676, 3, 676, 3, 676, 3, 676, 3, 676, 3, 676, 3, 676, 3, 676, 3, 676, 3, 677, 3, 677, 3, 677, 3, 677, 3, 677, 3, 677, 3, 677, 3, 677, 3, 678, 3, 678, 3, 678, 3, 678, 3, 678, 3, 678, 3, 678, 3, 679, 3, 679, 3, 679, 3, 679, 3, 679, 3, 679, 3, 679, 3, 680, 3, 680, 3, 680, 3, 680, 3, 680, 3, 680, 3, 680, 3, 681, 3, 681, 3, 681, 3, 681, 3, 681, 3, 681, 3, 681, 3, 682, 3, 682, 3, 682, 3, 682, 3, 682, 3, 682, 3, 683, 3, 683, 3, 683, 3, 683, 3, 683, 3, 683, 3, 683, 3, 683, 3, 684, 3, 684, 3, 684, 3, 684, 3, 684, 3, 684, 3, 684, 3, 684, 3, 684, 3, 684, 3, 684, 3, 684, 3, 685, 3, 685, 3, 685, 3, 685, 3, 685, 3, 685, 3, 685, 3, 685, 3, 685, 3, 685, 3, 685, 3, 685, 3, 685, 3, 686, 3, 686, 3, 686, 3, 686, 3, 686, 3, 686, 3, 686, 3, 686, 3, 686, 3, 686, 3, 686, 3, 686, 3, 686, 3, 686, 3, 686, 3, 686, 3, 686, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 687, 3, 688, 3, 688, 3, 688, 3, 688, 3, 688, 3, 688, 3, 688, 3, 688, 3, 688, 3, 688, 3, 688, 3, 688, 3, 689, 3, 689, 3, 689, 3, 689, 3, 689, 3, 689, 3, 689, 3, 689, 3, 689, 3, 689, 3, 690, 3, 690, 3, 690, 3, 690, 3, 690, 3, 690, 3, 690, 3, 690, 3, 690, 3, 691, 3, 691, 3, 691, 3, 691, 3, 692, 3, 692, 3, 692, 3, 692, 3, 692, 3, 693, 3, 693, 3, 693, 3, 693, 3, 693, 3, 693, 3, 693, 3, 693, 3, 693, 3, 693, 3, 693, 3, 694, 3, 694, 3, 694, 3, 694, 3, 694, 3, 694, 3, 694, 3, 694, 3, 694, 3, 694, 3, 695, 3, 695, 3, 695, 3, 695, 3, 695, 3, 695, 3, 695, 3, 695, 3, 695, 3, 695, 3, 696, 3, 696, 3, 696, 3, 697, 3, 697, 3, 697, 3, 697, 3, 697, 3, 697, 3, 697, 3, 697, 3, 697, 3, 697, 3, 698, 3, 698, 3, 698, 3, 698, 3, 698, 3, 698, 3, 698, 3, 698, 3, 698, 3, 698, 3, 698, 3, 698, 3, 698, 3, 698, 3, 698, 3, 698, 3, 699, 3, 699, 3, 699, 3, 699, 3, 699, 3, 699, 3, 699, 3, 699, 3, 700, 3, 700, 3, 700, 3, 700, 3, 700, 3, 700, 3, 700, 3, 700, 3, 700, 3, 700, 3, 700, 3, 700, 3, 700, 3, 700, 3, 700, 3, 700, 3, 700, 3, 701, 3, 701, 3, 701, 3, 701, 3, 701, 3, 702, 3, 702, 3, 702, 3, 702, 3, 703, 3, 703, 3, 703, 3, 703, 3, 703, 3, 704, 3, 704, 3, 704, 3, 704, 3, 704, 3, 704, 3, 704, 3, 704, 3, 704, 3, 704, 3, 704, 3, 704, 3, 704, 3, 704, 3, 705, 3, 705, 3, 705, 3, 705, 3, 705, 3, 705, 3, 705, 3, 705, 3, 705, 3, 705, 3, 705, 3, 706, 3, 706, 3, 706, 3, 706, 3, 706, 3, 706, 3, 706, 3, 706, 3, 706, 3, 706, 3, 706, 3, 707, 3, 707, 3, 707, 3, 707, 3, 707, 3, 707, 3, 707, 3, 707, 3, 707, 3, 707, 3, 707, 3, 707, 3, 707, 3, 708, 3, 708, 3, 708, 3, 708, 3, 708, 3, 708, 3, 708, 3, 708, 3, 708, 3, 708, 3, 708, 3, 708, 3, 709, 3, 709, 3, 709, 3, 709, 3, 709, 3, 709, 3, 709, 3, 709, 3, 710, 3, 710, 3, 710, 3, 710, 3, 710, 3, 711, 3, 711, 3, 711, 3, 711, 3, 711, 3, 711, 3, 711, 3, 711, 3, 711, 3, 711, 3, 711, 3, 711, 3, 711, 3, 711, 3, 711, 3, 712, 3, 712, 3, 712, 3, 712, 3, 712, 3, 712, 3, 712, 3, 712, 3, 712, 3, 712, 3, 712, 3, 712, 3, 713, 3, 713, 3, 713, 3, 713, 3, 713, 3, 713, 3, 713, 3, 713, 3, 713, 3, 713, 3, 714, 3, 714, 3, 714, 3, 714, 3, 714, 3, 714, 3, 714, 3, 714, 3, 714, 3, 714, 3, 714, 3, 715, 3, 715, 3, 715, 3, 715, 3, 715, 3, 715, 3, 715, 3, 715, 3, 715, 3, 715, 3, 715, 3, 715, 3, 715, 3, 715, 3, 715, 3, 716, 3, 716, 3, 716, 3, 716, 3, 716, 3, 716, 3, 716, 3, 716, 3, 716, 3, 716, 3, 716, 3, 717, 3, 717, 3, 717, 3, 717, 3, 717, 3, 717, 3, 717, 3, 717, 3, 717, 3, 717, 3, 717, 3, 717, 3, 717, 3, 717, 3, 717, 3, 717, 3, 717, 3, 717, 3, 717, 3, 718, 3, 718, 3, 718, 3, 718, 3, 718, 3, 718, 3, 718, 3, 718, 3, 718, 3, 718, 3, 718, 3, 718, 3, 718, 3, 718, 3, 718, 3, 718, 3, 718, 3, 718, 3, 719, 3, 719, 3, 719, 3, 719, 3, 719, 3, 719, 3, 719, 3, 719, 3, 719, 3, 719, 3, 719, 3, 720, 3, 720, 3, 720, 3, 720, 3, 720, 3, 720, 3, 720, 3, 720, 3, 720, 3, 720, 3, 720, 3, 720, 3, 720, 3, 720, 3, 720, 3, 720, 3, 721, 3, 721, 3, 721, 3, 721, 3, 721, 3, 722, 3, 722, 3, 722, 3, 722, 3, 722, 3, 722, 3, 722, 3, 722, 3, 722, 3, 723, 3, 723, 3, 723, 3, 723, 3, 724, 3, 724, 3, 724, 3, 724, 3, 724, 3, 724, 3, 724, 3, 724, 3, 724, 3, 724, 3, 724, 3, 725, 3, 725, 3, 725, 3, 725, 3, 725, 3, 725, 3, 725, 3, 725, 3, 726, 3, 726, 3, 726, 3, 726, 3, 726, 3, 727, 3, 727, 3, 727, 3, 727, 3, 727, 3, 727, 3, 727, 3, 727, 3, 727, 3, 728, 3, 728, 3, 728, 3, 728, 3, 728, 3, 729, 3, 729, 3, 729, 3, 729, 3, 729, 3, 729, 3, 730, 3, 730, 3, 730, 3, 730, 3, 730, 3, 730, 3, 730, 3, 730, 3, 730, 3, 731, 3, 731, 3, 731, 3, 731, 3, 731, 3, 731, 3, 731, 3, 731, 3, 731, 3, 732, 3, 732, 3, 732, 3, 732, 3, 732, 3, 733, 3, 733, 3, 733, 3, 733, 3, 733, 3, 733, 3, 733, 3, 733, 3, 733, 3, 733, 3, 733, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 735, 3, 735, 3, 735, 3, 735, 3, 736, 3, 736, 3, 736, 3, 736, 3, 736, 3, 736, 3, 737, 3, 737, 3, 737, 3, 737, 3, 737, 3, 737, 3, 737, 3, 737, 3, 737, 3, 737, 3, 737, 3, 737, 3, 737, 3, 737, 3, 737, 3, 737, 3, 737, 3, 737, 3, 737, 3, 737, 3, 737, 3, 737, 3, 737, 3, 737, 3, 737, 3, 737, 3, 738, 3, 738, 3, 738, 3, 738, 3, 738, 3, 738, 3, 738, 3, 738, 3, 738, 3, 738, 3, 738, 3, 738, 3, 738, 3, 738, 3, 738, 3, 738, 3, 738, 3, 738, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 741, 3, 741, 3, 741, 3, 741, 3, 741, 3, 742, 3, 742, 3, 742, 3, 742, 3, 742, 3, 742, 3, 742, 3, 742, 3, 743, 3, 743, 3, 743, 3, 743, 3, 743, 3, 743, 3, 743, 3, 743, 3, 744, 3, 744, 3, 744, 3, 744, 3, 744, 3, 744, 3, 744, 3, 744, 3, 745, 3, 745, 3, 745, 3, 745, 3, 745, 3, 745, 3, 745, 3, 745, 3, 746, 3, 746, 3, 746, 3, 746, 3, 746, 3, 746, 3, 746, 3, 747, 3, 747, 3, 747, 3, 747, 3, 747, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 749, 3, 749, 3, 749, 3, 749, 3, 749, 3, 749, 3, 749, 3, 750, 3, 750, 3, 750, 3, 750, 3, 750, 3, 750, 3, 750, 3, 750, 3, 751, 3, 751, 3, 751, 3, 751, 3, 751, 3, 751, 3, 751, 3, 751, 3, 751, 3, 751, 3, 752, 3, 752, 3, 752, 3, 752, 3, 752, 3, 753, 3, 753, 3, 753, 3, 753, 3, 753, 3, 753, 3, 753, 3, 753, 3, 753, 3, 754, 3, 754, 3, 754, 3, 754, 3, 754, 3, 754, 3, 755, 3, 755, 3, 755, 3, 755, 3, 755, 3, 755, 3, 756, 3, 756, 3, 756, 3, 756, 3, 756, 3, 756, 3, 757, 3, 757, 3, 757, 3, 757, 3, 757, 3, 757, 3, 757, 3, 757, 3, 757, 3, 757, 3, 757, 3, 757, 3, 758, 3, 758, 3, 758, 3, 758, 3, 758, 3, 759, 3, 759, 3, 759, 3, 759, 3, 759, 3, 759, 3, 760, 3, 760, 3, 760, 3, 760, 3, 760, 3, 760, 3, 760, 3, 761, 3, 761, 3, 761, 3, 761, 3, 761, 3, 762, 3, 762, 3, 762, 3, 762, 3, 762, 3, 763, 3, 763, 3, 763, 3, 764, 3, 764, 3, 764, 3, 764, 3, 764, 3, 764, 3, 765, 3, 765, 3, 765, 3, 765, 3, 765, 3, 766, 3, 766, 3, 766, 3, 766, 3, 767, 3, 767, 3, 767, 3, 767, 3, 767, 3, 767, 3, 767, 3, 768, 3, 768, 3, 768, 3, 768, 3, 768, 3, 769, 3, 769, 3, 769, 3, 769, 3, 769, 3, 769, 3, 769, 3, 769, 3, 769, 3, 769, 3, 769, 3, 769, 3, 769, 3, 769, 3, 770, 3, 770, 3, 770, 3, 770, 3, 770, 3, 770, 3, 771, 3, 771, 3, 771, 3, 771, 3, 771, 3, 771, 3, 771, 3, 771, 3, 771, 3, 771, 3, 772, 3, 772, 3, 772, 3, 772, 3, 772, 3, 772, 3, 772, 3, 772, 3, 772, 3, 772, 3, 772, 3, 772, 3, 772, 3, 772, 3, 772, 3, 773, 3, 773, 3, 773, 3, 773, 3, 773, 3, 773, 3, 773, 3, 773, 3, 773, 3, 774, 3, 774, 3, 774, 3, 774, 3, 774, 3, 774, 3, 774, 3, 774, 3, 775, 3, 775, 3, 775, 3, 775, 3, 775, 3, 775, 3, 775, 3, 776, 3, 776, 3, 776, 3, 776, 3, 776, 3, 776, 3, 776, 3, 776, 3, 777, 3, 777, 3, 777, 3, 777, 3, 777, 3, 778, 3, 778, 3, 778, 3, 778, 3, 778, 3, 778, 3, 778, 3, 778, 3, 779, 3, 779, 3, 779, 3, 779, 3, 779, 3, 779, 3, 779, 3, 779, 3, 779, 3, 780, 3, 780, 3, 780, 3, 780, 3, 780, 3, 780, 3, 780, 3, 780, 3, 781, 3, 781, 3, 781, 3, 781, 3, 781, 3, 781, 3, 781, 3, 781, 3, 782, 3, 782, 3, 782, 3, 782, 3, 782, 3, 782, 3, 782, 3, 782, 3, 782, 3, 782, 3, 782, 3, 782, 3, 782, 3, 782, 3, 782, 3, 782, 3, 782, 3, 782, 3, 782, 3, 782, 3, 782, 3, 782, 3, 782, 3, 783, 3, 783, 3, 783, 3, 783, 3, 783, 3, 783, 3, 783, 3, 783, 3, 783, 3, 783, 3, 783, 3, 783, 3, 783, 3, 783, 3, 783, 3, 783, 3, 783, 3, 783, 3, 783, 3, 783, 3, 783, 3, 783, 3, 783, 3, 783, 3, 783, 3, 783, 3, 784, 3, 784, 3, 784, 3, 784, 3, 785, 3, 785, 3, 785, 3, 785, 3, 785, 3, 785, 3, 785, 3, 785, 3, 785, 3, 785, 3, 786, 3, 786, 3, 786, 3, 786, 3, 786, 3, 786, 3, 786, 3, 787, 3, 787, 3, 787, 3, 787, 3, 787, 3, 787, 3, 788, 3, 788, 3, 788, 3, 788, 3, 788, 3, 788, 3, 788, 3, 788, 3, 788, 3, 788, 3, 788, 3, 788, 3, 788, 3, 788, 3, 788, 3, 788, 3, 788, 3, 788, 3, 788, 3, 788, 3, 788, 3, 788, 3, 788, 3, 788, 3, 788, 3, 789, 3, 789, 3, 789, 3, 789, 3, 789, 3, 790, 3, 790, 3, 790, 3, 790, 3, 790, 3, 791, 3, 791, 3, 791, 3, 791, 3, 791, 3, 791, 3, 792, 3, 792, 3, 792, 3, 792, 3, 793, 3, 793, 3, 793, 3, 793, 3, 793, 3, 794, 3, 794, 3, 794, 3, 794, 3, 794, 3, 794, 3, 795, 3, 795, 3, 795, 3, 795, 3, 795, 3, 796, 3, 796, 3, 796, 3, 796, 3, 796, 3, 796, 3, 796, 3, 796, 3, 796, 3, 797, 3, 797, 3, 797, 3, 797, 3, 797, 3, 797, 3, 797, 3, 797, 3, 798, 3, 798, 3, 798, 3, 798, 3, 798, 3, 798, 3, 798, 3, 799, 3, 799, 3, 799, 3, 799, 3, 799, 3, 799, 3, 799, 3, 799, 3, 799, 3, 799, 3, 799, 3, 800, 3, 800, 3, 800, 3, 800, 3, 800, 3, 800, 3, 800, 3, 800, 3, 801, 3, 801, 3, 801, 3, 801, 3, 801, 3, 801, 3, 801, 3, 802, 3, 802, 3, 802, 3, 802, 3, 803, 3, 803, 3, 803, 3, 803, 3, 803, 3, 803, 3, 803, 3, 803, 3, 804, 3, 804, 3, 804, 3, 804, 3, 804, 3, 804, 3, 804, 3, 805, 3, 805, 3, 805, 3, 805, 3, 805, 3, 805, 3, 805, 3, 805, 3, 806, 3, 806, 3, 806, 3, 806, 3, 806, 3, 806, 3, 806, 3, 806, 3, 807, 3, 807, 3, 807, 3, 807, 3, 807, 3, 807, 3, 808, 3, 808, 3, 808, 3, 808, 3, 808, 3, 808, 3, 808, 3, 808, 3, 808, 3, 808, 3, 808, 3, 808, 3, 808, 3, 809, 3, 809, 3, 809, 3, 809, 3, 809, 3, 809, 3, 809, 3, 809, 3, 809, 3, 809, 3, 809, 3, 809, 3, 809, 3, 809, 3, 809, 3, 809, 3, 810, 3, 810, 3, 810, 3, 810, 3, 810, 3, 810, 3, 810, 3, 810, 3, 810, 3, 810, 3, 810, 3, 810, 3, 810, 3, 811, 3, 811, 3, 811, 3, 811, 3, 811, 3, 811, 3, 811, 3, 811, 3, 811, 3, 811, 3, 811, 3, 811, 3, 812, 3, 812, 3, 812, 3, 812, 3, 812, 3, 812, 3, 812, 3, 812, 3, 812, 3, 812, 3, 812, 3, 812, 3, 813, 3, 813, 3, 813, 3, 813, 3, 813, 3, 813, 3, 813, 3, 813, 3, 813, 3, 813, 3, 813, 3, 813, 3, 813, 3, 814, 3, 814, 3, 814, 3, 814, 3, 814, 3, 814, 3, 814, 3, 814, 3, 814, 3, 814, 3, 814, 3, 815, 3, 815, 3, 815, 3, 815, 3, 815, 3, 815, 3, 815, 3, 815, 3, 815, 3, 816, 3, 816, 3, 816, 3, 816, 3, 816, 3, 816, 3, 816, 3, 816, 3, 816, 3, 816, 3, 816, 3, 816, 3, 816, 3, 817, 3, 817, 3, 817, 3, 817, 3, 817, 3, 817, 3, 817, 3, 817, 3, 817, 3, 817, 3, 817, 3, 817, 3, 818, 3, 818, 3, 818, 3, 818, 3, 818, 3, 818, 3, 818, 3, 818, 3, 818, 3, 818, 3, 818, 3, 818, 3, 818, 3, 818, 3, 819, 3, 819, 3, 819, 3, 819, 3, 819, 3, 819, 3, 819, 3, 819, 3, 819, 3, 819, 3, 819, 3, 819, 3, 819, 3, 819, 3, 820, 3, 820, 3, 820, 3, 820, 3, 820, 3, 820, 3, 820, 3, 820, 3, 820, 3, 820, 3, 820, 3, 820, 3, 820, 3, 820, 3, 820, 3, 820, 3, 820, 3, 820, 3, 820, 3, 820, 3, 820, 3, 821, 3, 821, 3, 821, 3, 821, 3, 821, 3, 821, 3, 821, 3, 821, 3, 822, 3, 822, 3, 822, 3, 822, 3, 822, 3, 822, 3, 822, 3, 822, 3, 822, 3, 823, 3, 823, 3, 823, 3, 823, 3, 823, 3, 823, 3, 823, 3, 823, 3, 823, 3, 824, 3, 824, 3, 824, 3, 824, 3, 824, 3, 824, 3, 824, 3, 824, 3, 825, 3, 825, 3, 825, 3, 825, 3, 825, 3, 825, 3, 825, 3, 825, 3, 825, 3, 826, 3, 826, 3, 826, 3, 826, 3, 826, 3, 826, 3, 826, 3, 827, 3, 827, 3, 827, 3, 827, 3, 827, 3, 827, 3, 827, 3, 828, 3, 828, 3, 828, 3, 828, 3, 828, 3, 828, 3, 828, 3, 828, 3, 828, 3, 828, 3, 828, 3, 828, 3, 829, 3, 829, 3, 829, 3, 829, 3, 829, 3, 829, 3, 829, 3, 830, 3, 830, 3, 830, 3, 830, 3, 830, 3, 830, 3, 830, 3, 830, 3, 830, 3, 830, 3, 830, 3, 830, 3, 830, 3, 830, 3, 831, 3, 831, 3, 831, 3, 831, 3, 831, 3, 831, 3, 831, 3, 831, 3, 831, 3, 832, 3, 832, 3, 832, 3, 832, 3, 832, 3, 832, 3, 832, 3, 832, 3, 832, 3, 832, 3, 832, 3, 832, 3, 832, 3, 832, 3, 832, 3, 833, 3, 833, 3, 833, 3, 833, 3, 833, 3, 833, 3, 834, 3, 834, 3, 834, 3, 834, 3, 834, 3, 834, 3, 834, 3, 834, 3, 834, 3, 835, 3, 835, 3, 835, 3, 835, 3, 835, 3, 835, 3, 835, 3, 835, 3, 835, 3, 836, 3, 836, 3, 836, 3, 836, 3, 836, 3, 836, 3, 836, 3, 837, 3, 837, 3, 837, 3, 837, 3, 837, 3, 837, 3, 837, 3, 837, 3, 838, 3, 838, 3, 838, 3, 838, 3, 838, 3, 838, 3, 838, 3, 838, 3, 838, 3, 838, 3, 839, 3, 839, 3, 839, 3, 839, 3, 839, 3, 839, 3, 839, 3, 839, 3, 839, 3, 839, 3, 839, 3, 840, 3, 840, 3, 840, 3, 840, 3, 840, 3, 840, 3, 840, 3, 840, 3, 840, 3, 841, 3, 841, 3, 841, 3, 841, 3, 841, 3, 841, 3, 841, 3, 841, 3, 842, 3, 842, 3, 842, 3, 842, 3, 842, 3, 842, 3, 842, 3, 843, 3, 843, 3, 843, 3, 843, 3, 843, 3, 843, 3, 844, 3, 844, 3, 844, 3, 844, 3, 844, 3, 844, 3, 844, 3, 844, 3, 844, 3, 844, 3, 844, 3, 845, 3, 845, 3, 845, 3, 845, 3, 845, 3, 845, 3, 845, 3, 846, 3, 846, 3, 846, 3, 846, 3, 846, 3, 846, 3, 846, 3, 846, 3, 846, 3, 847, 3, 847, 3, 847, 3, 847, 3, 847, 3, 847, 3, 847, 3, 847, 3, 847, 3, 847, 3, 847, 3, 848, 3, 848, 3, 848, 3, 848, 3, 848, 3, 848, 3, 848, 3, 848, 3, 848, 3, 848, 3, 849, 3, 849, 3, 849, 3, 849, 3, 849, 3, 849, 3, 849, 3, 850, 3, 850, 3, 850, 3, 850, 3, 850, 3, 850, 3, 850, 3, 850, 3, 850, 3, 851, 3, 851, 3, 851, 3, 851, 3, 851, 3, 851, 3, 851, 3, 851, 3, 851, 3, 851, 3, 851, 3, 851, 3, 851, 3, 851, 3, 851, 3, 851, 3, 851, 3, 851, 3, 851, 3, 851, 3, 851, 3, 851, 3, 851, 3, 852, 3, 852, 3, 852, 3, 852, 3, 852, 3, 852, 3, 852, 3, 852, 3, 852, 3, 852, 3, 852, 3, 852, 3, 852, 3, 852, 3, 852, 3, 852, 3, 852, 3, 852, 3, 852, 3, 852, 3, 852, 3, 852, 3, 852, 3, 852, 3, 852, 3, 852, 3, 852, 3, 852, 3, 853, 3, 853, 3, 853, 3, 853, 3, 853, 3, 853, 3, 853, 3, 853, 3, 853, 3, 853, 3, 853, 3, 853, 3, 853, 3, 853, 3, 853, 3, 853, 3, 853, 3, 853, 3, 853, 3, 853, 3, 853, 3, 853, 3, 853, 3, 854, 3, 854, 3, 854, 3, 854, 3, 854, 3, 854, 3, 854, 3, 854, 3, 854, 3, 854, 3, 854, 3, 854, 3, 854, 3, 854, 3, 854, 3, 854, 3, 854, 3, 854, 3, 854, 3, 855, 3, 855, 3, 855, 3, 855, 3, 855, 3, 855, 3, 856, 3, 856, 3, 856, 3, 856, 3, 856, 3, 856, 3, 856, 3, 856, 3, 856, 3, 857, 3, 857, 3, 857, 3, 857, 3, 857, 3, 857, 3, 857, 3, 857, 3, 857, 3, 857, 3, 857, 3, 857, 3, 857, 3, 857, 3, 857, 3, 857, 3, 857, 3, 857, 3, 858, 3, 858, 3, 858, 3, 858, 3, 858, 3, 858, 3, 858, 3, 858, 3, 858, 3, 858, 3, 859, 3, 859, 3, 859, 3, 859, 3, 859, 3, 859, 3, 859, 3, 859, 3, 859, 3, 859, 3, 859, 3, 859, 3, 859, 3, 859, 3, 859, 3, 860, 3, 860, 3, 860, 3, 860, 3, 860, 3, 860, 3, 860, 3, 860, 3, 860, 3, 861, 3, 861, 3, 861, 3, 861, 3, 861, 3, 862, 3, 862, 3, 862, 3, 862, 3, 862, 3, 862, 3, 862, 3, 862, 3, 862, 3, 862, 3, 862, 3, 862, 3, 862, 3, 863, 3, 863, 3, 863, 3, 863, 3, 863, 3, 863, 3, 863, 3, 863, 3, 863, 3, 863, 3, 863, 3, 863, 3, 863, 3, 863, 3, 863, 3, 863, 3, 863, 3, 863, 3, 863, 3, 864, 3, 864, 3, 864, 3, 864, 3, 864, 3, 864, 3, 864, 3, 865, 3, 865, 3, 865, 3, 865, 3, 866, 3, 866, 3, 866, 3, 866, 3, 866, 3, 866, 3, 866, 3, 867, 3, 867, 3, 867, 3, 867, 3, 867, 3, 867, 3, 867, 3, 867, 3, 867, 3, 867, 3, 867, 3, 868, 3, 868, 3, 868, 3, 868, 3, 868, 3, 868, 3, 868, 3, 868, 3, 869, 3, 869, 3, 869, 3, 869, 3, 869, 3, 869, 3, 870, 3, 870, 3, 870, 3, 870, 3, 870, 3, 870, 3, 870, 3, 870, 3, 870, 3, 870, 3, 870, 3, 870, 3, 870, 3, 870, 3, 870, 3, 871, 3, 871, 3, 871, 3, 871, 3, 871, 3, 871, 3, 871, 3, 872, 3, 872, 3, 872, 3, 872, 3, 872, 3, 872, 3, 873, 3, 873, 3, 873, 3, 873, 3, 873, 3, 873, 3, 873, 3, 873, 3, 873, 3, 873, 3, 874, 3, 874, 3, 874, 3, 874, 3, 874, 3, 874, 3, 874, 3, 874, 3, 874, 3, 875, 3, 875, 3, 875, 3, 875, 3, 875, 3, 876, 3, 876, 3, 876, 3, 876, 3, 876, 3, 876, 3, 876, 3, 876, 3, 876, 3, 876, 3, 876, 3, 876, 3, 876, 3, 876, 3, 876, 3, 876, 3, 876, 3, 877, 3, 877, 3, 877, 3, 877, 3, 877, 3, 877, 3, 877, 3, 877, 3, 877, 3, 878, 3, 878, 3, 878, 3, 878, 3, 878, 3, 878, 3, 878, 3, 878, 3, 878, 3, 879, 3, 879, 3, 879, 3, 879, 3, 879, 3, 879, 3, 880, 3, 880, 3, 880, 3, 880, 3, 880, 3, 881, 3, 881, 3, 881, 3, 881, 3, 881, 3, 881, 3, 881, 3, 881, 3, 881, 3, 881, 3, 882, 3, 882, 3, 882, 3, 882, 3, 883, 3, 883, 3, 883, 3, 883, 3, 883, 3, 883, 3, 884, 3, 884, 3, 884, 3, 884, 3, 884, 3, 884, 3, 884, 3, 884, 3, 884, 3, 885, 3, 885, 3, 885, 3, 885, 3, 885, 3, 885, 3, 885, 3, 885, 3, 885, 3, 885, 3, 885, 3, 885, 3, 885, 3, 885, 3, 885, 3, 885, 3, 885, 3, 885, 3, 885, 3, 885, 3, 885, 3, 885, 3, 885, 3, 886, 3, 886, 3, 886, 3, 886, 3, 886, 3, 886, 3, 886, 3, 887, 3, 887, 3, 887, 3, 887, 3, 887, 3, 887, 3, 887, 3, 887, 3, 888, 3, 888, 3, 888, 3, 888, 3, 888, 3, 888, 3, 888, 3, 888, 3, 888, 3, 889, 3, 889, 3, 889, 3, 889, 3, 890, 3, 890, 3, 890, 3, 890, 3, 890, 3, 890, 3, 890, 3, 890, 3, 890, 3, 891, 3, 891, 3, 891, 3, 891, 3, 891, 3, 891, 3, 892, 3, 892, 3, 892, 3, 892, 3, 892, 3, 893, 3, 893, 3, 893, 3, 893, 3, 893, 3, 893, 3, 894, 3, 894, 3, 894, 3, 894, 3, 894, 3, 894, 3, 894, 3, 895, 3, 895, 3, 895, 3, 895, 3, 896, 3, 896, 3, 896, 3, 896, 3, 896, 3, 896, 3, 896, 3, 897, 3, 897, 3, 897, 3, 897, 3, 897, 3, 897, 3, 897, 3, 897, 3, 897, 3, 897, 3, 897, 3, 897, 3, 897, 3, 897, 3, 897, 3, 897, 3, 897, 3, 897, 3, 897, 3, 897, 3, 897, 3, 897, 3, 897, 3, 897, 3, 897, 3, 898, 3, 898, 3, 898, 3, 898, 3, 898, 3, 898, 3, 898, 3, 898, 3, 898, 3, 898, 3, 898, 3, 898, 3, 898, 3, 898, 3, 898, 3, 898, 3, 898, 3, 898, 3, 898, 3, 898, 3, 898, 3, 898, 3, 899, 3, 899, 3, 899, 3, 899, 3, 899, 3, 899, 3, 899, 3, 899, 3, 899, 3, 899, 3, 899, 3, 899, 3, 899, 3, 899, 3, 899, 3, 899, 3, 900, 3, 900, 3, 900, 3, 900, 3, 900, 3, 900, 3, 900, 3, 900, 3, 900, 3, 900, 3, 900, 3, 900, 3, 900, 3, 900, 3, 900, 3, 900, 3, 900, 3, 900, 3, 900, 3, 900, 3, 900, 3, 900, 3, 901, 3, 901, 3, 901, 3, 901, 3, 901, 3, 901, 3, 901, 3, 901, 3, 901, 3, 901, 3, 901, 3, 901, 3, 901, 3, 901, 3, 901, 3, 901, 3, 901, 3, 901, 3, 901, 3, 901, 3, 901, 3, 901, 3, 901, 3, 902, 3, 902, 3, 902, 3, 902, 3, 902, 3, 902, 3, 902, 3, 902, 3, 903, 3, 903, 3, 903, 3, 903, 3, 903, 3, 903, 3, 904, 3, 904, 3, 904, 3, 904, 3, 905, 3, 905, 3, 905, 3, 905, 3, 905, 3, 905, 3, 905, 3, 905, 3, 905, 3, 906, 3, 906, 3, 906, 3, 906, 3, 906, 3, 906, 3, 906, 3, 906, 3, 906, 3, 907, 3, 907, 3, 907, 3, 907, 3, 907, 3, 908, 3, 908, 3, 908, 3, 908, 3, 908, 3, 908, 3, 909, 3, 909, 3, 909, 3, 909, 3, 909, 3, 909, 3, 909, 3, 909, 3, 909, 3, 909, 3, 909, 3, 909, 3, 909, 3, 910, 3, 910, 3, 910, 3, 910, 3, 910, 3, 910, 3, 910, 3, 910, 3, 910, 3, 910, 3, 910, 3, 910, 3, 910, 3, 910, 3, 910, 3, 910, 3, 910, 3, 911, 3, 911, 3, 911, 3, 911, 3, 911, 3, 911, 3, 911, 3, 911, 3, 911, 3, 911, 3, 911, 3, 911, 3, 911, 3, 911, 3, 911, 3, 912, 3, 912, 3, 912, 3, 912, 3, 912, 3, 912, 3, 912, 3, 912, 3, 912, 3, 912, 3, 912, 3, 912, 3, 912, 3, 913, 3, 913, 3, 913, 3, 913, 3, 913, 3, 913, 3, 913, 3, 913, 3, 913, 3, 913, 3, 913, 3, 913, 3, 913, 3, 914, 3, 914, 3, 914, 3, 914, 3, 914, 3, 914, 3, 914, 3, 914, 3, 914, 3, 914, 3, 914, 3, 914, 3, 914, 3, 914, 3, 914, 3, 914, 3, 914, 3, 915, 3, 915, 3, 915, 3, 915, 3, 915, 3, 915, 3, 915, 3, 915, 3, 915, 3, 915, 3, 915, 3, 915, 3, 915, 3, 915, 3, 915, 3, 915, 3, 915, 3, 915, 3, 915, 3, 915, 3, 915, 3, 916, 3, 916, 3, 916, 3, 916, 3, 916, 3, 916, 3, 916, 3, 916, 3, 916, 3, 916, 3, 916, 3, 916, 3, 916, 3, 916, 3, 916, 3, 917, 3, 917, 3, 917, 3, 917, 3, 917, 3, 917, 3, 917, 3, 917, 3, 917, 3, 917, 3, 917, 3, 917, 3, 917, 3, 917, 3, 917, 3, 917, 3, 917, 3, 918, 3, 918, 3, 918, 3, 918, 3, 918, 3, 918, 3, 918, 3, 918, 3, 918, 3, 919, 3, 919, 3, 919, 3, 919, 3, 919, 3, 919, 3, 919, 3, 919, 3, 919, 3, 919, 3, 919, 3, 919, 3, 919, 3, 920, 3, 920, 3, 920, 3, 920, 3, 920, 3, 920, 3, 920, 3, 920, 3, 920, 3, 920, 3, 920, 3, 920, 3, 920, 3, 920, 3, 920, 3, 920, 3, 921, 3, 921, 3, 921, 3, 921, 3, 921, 3, 921, 3, 921, 3, 921, 3, 921, 3, 921, 3, 921, 3, 921, 3, 921, 3, 921, 3, 921, 3, 921, 3, 921, 3, 921, 3, 922, 3, 922, 3, 922, 3, 922, 3, 922, 3, 922, 3, 922, 3, 922, 3, 922, 3, 922, 3, 922, 3, 922, 3, 923, 3, 923, 3, 923, 3, 923, 3, 923, 3, 923, 3, 923, 3, 923, 3, 923, 3, 923, 3, 923, 3, 923, 3, 923, 3, 923, 3, 923, 3, 923, 3, 923, 3, 924, 3, 924, 3, 924, 3, 924, 3, 924, 3, 924, 3, 925, 3, 925, 3, 925, 3, 925, 3, 925, 3, 925, 3, 925, 3, 925, 3, 925, 3, 926, 3, 926, 3, 926, 3, 926, 3, 926, 3, 926, 3, 926, 3, 926, 3, 926, 3, 926, 3, 926, 3, 926, 3, 926, 3, 927, 3, 927, 3, 927, 3, 927, 3, 927, 3, 927, 3, 927, 3, 927, 3, 927, 3, 927, 3, 927, 3, 927, 3, 927, 3, 927, 3, 927, 3, 927, 3, 927, 3, 927, 3, 927, 3, 927, 3, 927, 3, 928, 3, 928, 3, 928, 3, 928, 3, 928, 3, 928, 3, 928, 3, 928, 3, 928, 3, 928, 3, 929, 3, 929, 3, 929, 3, 929, 3, 929, 3, 929, 3, 929, 3, 929, 3, 929, 3, 929, 3, 929, 3, 929, 3, 929, 3, 929, 3, 929, 3, 929, 3, 929, 3, 929, 3, 929, 3, 929, 3, 930, 3, 930, 3, 930, 3, 930, 3, 930, 3, 930, 3, 930, 3, 930, 3, 930, 3, 930, 3, 930, 3, 930, 3, 930, 3, 930, 3, 930, 3, 930, 3, 930, 3, 930, 3, 930, 3, 930, 3, 930, 3, 930, 3, 930, 3, 931, 3, 931, 3, 931, 3, 931, 3, 931, 3, 931, 3, 931, 3, 931, 3, 931, 3, 932, 3, 932, 3, 932, 3, 932, 3, 932, 3, 932, 3, 932, 3, 932, 3, 933, 3, 933, 3, 933, 3, 933, 3, 933, 3, 933, 3, 933, 3, 933, 3, 933, 3, 933, 3, 933, 3, 933, 3, 933, 3, 933, 3, 933, 3, 933, 3, 933, 3, 933, 3, 934, 3, 934, 3, 934, 3, 934, 3, 934, 3, 934, 3, 934, 3, 934, 3, 934, 3, 934, 3, 934, 3, 934, 3, 934, 3, 934, 3, 935, 3, 935, 3, 935, 3, 935, 3, 935, 3, 935, 3, 935, 3, 935, 3, 935, 3, 935, 3, 936, 3, 936, 3, 936, 3, 936, 3, 936, 3, 936, 3, 936, 3, 936, 3, 936, 3, 936, 3, 937, 3, 937, 3, 937, 3, 937, 3, 937, 3, 937, 3, 937, 3, 937, 3, 937, 3, 937, 3, 937, 3, 937, 3, 937, 3, 937, 3, 937, 3, 937, 3, 937, 3, 938, 3, 938, 3, 938, 3, 938, 3, 938, 3, 938, 3, 938, 3, 938, 3, 938, 3, 938, 3, 938, 3, 938, 3, 938, 3, 938, 3, 938, 3, 939, 3, 939, 3, 939, 3, 939, 3, 939, 3, 939, 3, 939, 3, 939, 3, 939, 3, 940, 3, 940, 3, 940, 3, 940, 3, 940, 3, 940, 3, 940, 3, 940, 3, 940, 3, 940, 3, 940, 3, 940, 3, 940, 3, 941, 3, 941, 3, 941, 3, 941, 3, 941, 3, 941, 3, 941, 3, 941, 3, 942, 3, 942, 3, 942, 3, 942, 3, 942, 3, 942, 3, 942, 3, 942, 3, 942, 3, 942, 3, 942, 3, 942, 3, 942, 3, 942, 3, 942, 3, 942, 3, 942, 3, 942, 3, 942, 3, 943, 3, 943, 3, 943, 3, 943, 3, 943, 3, 943, 3, 943, 3, 943, 3, 943, 3, 943, 3, 943, 3, 943, 3, 943, 3, 943, 3, 943, 3, 943, 3, 943, 3, 943, 3, 943, 3, 943, 3, 943, 3, 943, 3, 943, 3, 943, 3, 943, 3, 943, 3, 943, 3, 943, 3, 943, 3, 944, 3, 944, 3, 944, 3, 944, 3, 944, 3, 944, 3, 944, 3, 944, 3, 944, 3, 944, 3, 944, 3, 944, 3, 944, 3, 944, 3, 944, 3, 944, 3, 944, 3, 944, 3, 944, 3, 944, 3, 944, 3, 944, 3, 944, 3, 944, 3, 944, 3, 944, 3, 944, 3, 944, 3, 944, 3, 944, 3, 944, 3, 945, 3, 945, 3, 945, 3, 945, 3, 945, 3, 945, 3, 945, 3, 945, 3, 945, 3, 945, 3, 945, 3, 945, 3, 945, 3, 945, 3, 946, 3, 946, 3, 946, 3, 946, 3, 946, 3, 946, 3, 946, 3, 946, 3, 946, 3, 946, 3, 947, 3, 947, 3, 947, 3, 947, 3, 947, 3, 947, 3, 947, 3, 947, 3, 948, 3, 948, 3, 948, 3, 948, 3, 948, 3, 948, 3, 948, 3, 948, 3, 948, 3, 948, 3, 948, 3, 948, 3, 948, 3, 949, 3, 949, 3, 949, 3, 949, 3, 949, 3, 949, 3, 949, 3, 949, 3, 949, 3, 949, 3, 949, 3, 949, 3, 949, 3, 949, 3, 949, 3, 949, 3, 949, 3, 949, 3, 949, 3, 949, 3, 949, 3, 950, 3, 950, 3, 950, 3, 950, 3, 950, 3, 950, 3, 950, 3, 950, 3, 950, 3, 950, 3, 950, 3, 950, 3, 950, 3, 950, 3, 950, 3, 950, 3, 950, 3, 950, 3, 950, 3, 950, 3, 951, 3, 951, 3, 951, 3, 951, 3, 951, 3, 951, 3, 951, 3, 951, 3, 951, 3, 951, 3, 951, 3, 951, 3, 951, 3, 951, 3, 952, 3, 952, 3, 952, 3, 952, 3, 952, 3, 952, 3, 952, 3, 952, 3, 952, 3, 952, 3, 952, 3, 952, 3, 952, 3, 952, 3, 952, 3, 953, 3, 953, 3, 953, 3, 953, 3, 953, 3, 953, 3, 953, 3, 953, 3, 953, 3, 953, 3, 953, 3, 953, 3, 953, 3, 953, 3, 953, 3, 954, 3, 954, 3, 954, 3, 954, 3, 954, 3, 954, 3, 954, 3, 954, 3, 954, 3, 954, 3, 954, 3, 955, 3, 955, 3, 955, 3, 955, 3, 955, 3, 955, 3, 955, 3, 955, 3, 955, 3, 955, 3, 955, 3, 955, 3, 955, 3, 955, 3, 955, 3, 955, 3, 955, 3, 955, 3, 955, 3, 955, 3, 955, 3, 955, 3, 955, 3, 955, 3, 955, 3, 955, 3, 956, 3, 956, 3, 956, 3, 956, 3, 956, 3, 956, 3, 956, 3, 956, 3, 956, 3, 956, 3, 956, 3, 956, 3, 956, 3, 956, 3, 956, 3, 956, 3, 956, 3, 956, 3, 956, 3, 956, 3, 956, 3, 956, 3, 956, 3, 956, 3, 956, 3, 957, 3, 957, 3, 957, 3, 957, 3, 957, 3, 957, 3, 957, 3, 957, 3, 957, 3, 957, 3, 957, 3, 957, 3, 957, 3, 957, 3, 957, 3, 957, 3, 957, 3, 957, 3, 957, 3, 957, 3, 957, 3, 957, 3, 957, 3, 957, 3, 957, 3, 958, 3, 958, 3, 958, 3, 958, 3, 958, 3, 958, 3, 958, 3, 958, 3, 958, 3, 958, 3, 958, 3, 958, 3, 958, 3, 958, 3, 958, 3, 958, 3, 958, 3, 958, 3, 958, 3, 958, 3, 958, 3, 958, 3, 958, 3, 958, 3, 959, 3, 959, 3, 959, 3, 959, 3, 959, 3, 959, 3, 959, 3, 959, 3, 959, 3, 959, 3, 959, 3, 959, 3, 959, 3, 959, 3, 959, 3, 959, 3, 959, 3, 959, 3, 959, 3, 959, 3, 959, 3, 959, 3, 959, 3, 959, 3, 960, 3, 960, 3, 960, 3, 960, 3, 960, 3, 960, 3, 960, 3, 961, 3, 961, 3, 961, 3, 961, 3, 961, 3, 961, 3, 961, 3, 961, 3, 961, 3, 961, 3, 961, 3, 961, 3, 961, 3, 961, 3, 961, 3, 961, 3, 961, 3, 961, 3, 961, 3, 961, 3, 961, 3, 961, 3, 961, 3, 961, 3, 961, 3, 961, 3, 962, 3, 962, 3, 962, 3, 962, 3, 962, 3, 962, 3, 962, 3, 962, 3, 962, 3, 962, 3, 962, 3, 962, 3, 962, 3, 962, 3, 962, 3, 963, 3, 963, 3, 963, 3, 963, 3, 963, 3, 963, 3, 963, 3, 963, 3, 963, 3, 963, 3, 963, 3, 963, 3, 963, 3, 963, 3, 964, 3, 964, 3, 964, 3, 964, 3, 964, 3, 964, 3, 964, 3, 964, 3, 965, 3, 965, 3, 965, 3, 965, 3, 965, 3, 965, 3, 965, 3, 965, 3, 965, 3, 965, 3, 965, 3, 965, 3, 965, 3, 965, 3, 965, 3, 965, 3, 965, 3, 965, 3, 965, 3, 965, 3, 965, 3, 965, 3, 965, 3, 965, 3, 965, 3, 966, 3, 966, 3, 966, 3, 966, 3, 966, 3, 966, 3, 966, 3, 966, 3, 966, 3, 966, 3, 966, 3, 966, 3, 966, 3, 966, 3, 966, 3, 967, 3, 967, 3, 967, 3, 967, 3, 967, 3, 967, 3, 967, 3, 967, 3, 968, 3, 968, 3, 968, 3, 968, 3, 968, 3, 968, 3, 968, 3, 968, 3, 968, 3, 968, 3, 968, 3, 968, 3, 968, 3, 968, 3, 968, 3, 968, 3, 968, 3, 968, 3, 968, 3, 968, 3, 968, 3, 968, 3, 968, 3, 969, 3, 969, 3, 969, 3, 969, 3, 969, 3, 969, 3, 969, 3, 969, 3, 969, 3, 969, 3, 969, 3, 969, 3, 969, 3, 969, 3, 969, 3, 969, 3, 969, 3, 969, 3, 969, 3, 969, 3, 969, 3, 969, 3, 969, 3, 969, 3, 969, 3, 969, 3, 969, 3, 970, 3, 970, 3, 970, 3, 970, 3, 970, 3, 970, 3, 970, 3, 970, 3, 970, 3, 970, 3, 970, 3, 970, 3, 970, 3, 970, 3, 970, 3, 970, 3, 971, 3, 971, 3, 971, 3, 971, 3, 971, 3, 971, 3, 971, 3, 971, 3, 971, 3, 971, 3, 971, 3, 971, 3, 971, 3, 971, 3, 971, 3, 971, 3, 971, 3, 971, 3, 972, 3, 972, 3, 972, 3, 972, 3, 972, 3, 972, 3, 972, 3, 972, 3, 972, 3, 972, 3, 972, 3, 972, 3, 972, 3, 972, 3, 972, 3, 972, 3, 972, 3, 973, 3, 973, 3, 973, 3, 973, 3, 973, 3, 973, 3, 973, 3, 973, 3, 973, 3, 973, 3, 973, 3, 973, 3, 973, 3, 973, 3, 973, 3, 973, 3, 973, 3, 973, 3, 973, 3, 973, 3, 973, 3, 973, 3, 973, 3, 973, 3, 974, 3, 974, 3, 974, 3, 974, 3, 974, 3, 974, 3, 974, 3, 974, 3, 974, 3, 974, 3, 974, 3, 974, 3, 974, 3, 974, 3, 974, 3, 974, 3, 974, 3, 975, 3, 975, 3, 975, 3, 975, 3, 975, 3, 975, 3, 975, 3, 975, 3, 975, 3, 975, 3, 975, 3, 975, 3, 975, 3, 975, 3, 975, 3, 975, 3, 975, 3, 975, 3, 975, 3, 975, 3, 975, 3, 975, 3, 975, 3, 975, 3, 976, 3, 976, 3, 976, 3, 976, 3, 976, 3, 976, 3, 976, 3, 976, 3, 976, 3, 976, 3, 977, 3, 977, 3, 977, 3, 977, 3, 977, 3, 977, 3, 977, 3, 977, 3, 977, 3, 977, 3, 977, 3, 977, 3, 977, 3, 977, 3, 977, 3, 977, 3, 978, 3, 978, 3, 978, 3, 978, 3, 978, 3, 978, 3, 978, 3, 978, 3, 979, 3, 979, 3, 979, 3, 979, 3, 979, 3, 979, 3, 979, 3, 979, 3, 979, 3, 979, 3, 979, 3, 979, 3, 979, 3, 979, 3, 979, 3, 979, 3, 979, 3, 979, 3, 980, 3, 980, 3, 980, 3, 980, 3, 980, 3, 980, 3, 980, 3, 980, 3, 980, 3, 980, 3, 980, 3, 980, 3, 980, 3, 981, 3, 981, 3, 981, 3, 981, 3, 981, 3, 981, 3, 981, 3, 981, 3, 982, 3, 982, 3, 982, 3, 982, 3, 982, 3, 982, 3, 982, 3, 982, 3, 982, 3, 982, 3, 982, 3, 982, 3, 982, 3, 982, 3, 982, 3, 982, 3, 982, 3, 982, 3, 982, 3, 982, 3, 982, 3, 982, 3, 982, 3, 982, 3, 982, 3, 982, 3, 982, 3, 982, 3, 983, 3, 983, 3, 983, 3, 983, 3, 983, 3, 983, 3, 983, 3, 983, 3, 983, 3, 983, 3, 983, 3, 983, 3, 983, 3, 983, 3, 983, 3, 983, 3, 983, 3, 983, 3, 983, 3, 983, 3, 983, 3, 983, 3, 983, 3, 983, 3, 983, 3, 983, 3, 983, 3, 983, 3, 983, 3, 983, 3, 983, 3, 984, 3, 984, 3, 984, 3, 984, 3, 984, 3, 984, 3, 984, 3, 984, 3, 984, 3, 984, 3, 984, 3, 984, 3, 984, 3, 984, 3, 984, 3, 984, 3, 985, 3, 985, 3, 985, 3, 985, 3, 985, 3, 985, 3, 985, 3, 985, 3, 985, 3, 985, 3, 985, 3, 985, 3, 986, 3, 986, 3, 986, 3, 986, 3, 986, 3, 986, 3, 986, 3, 986, 3, 986, 3, 986, 3, 986, 3, 986, 3, 986, 3, 987, 3, 987, 3, 987, 3, 987, 3, 987, 3, 987, 3, 987, 3, 987, 3, 987, 3, 988, 3, 988, 3, 988, 3, 988, 3, 988, 3, 988, 3, 988, 3, 988, 3, 988, 3, 988, 3, 988, 3, 988, 3, 989, 3, 989, 3, 989, 3, 989, 3, 989, 3, 989, 3, 989, 3, 989, 3, 989, 3, 989, 3, 989, 3, 989, 3, 990, 3, 990, 3, 990, 3, 990, 3, 990, 3, 990, 3, 990, 3, 990, 3, 990, 3, 990, 3, 990, 3, 990, 3, 990, 3, 990, 3, 990, 3, 990, 3, 990, 3, 990, 3, 990, 3, 990, 3, 991, 3, 991, 3, 991, 3, 991, 3, 991, 3, 991, 3, 991, 3, 992, 3, 992, 3, 992, 3, 992, 3, 992, 3, 992, 3, 992, 3, 992, 3, 993, 3, 993, 3, 993, 3, 993, 3, 993, 3, 993, 3, 993, 3, 993, 3, 994, 3, 994, 3, 994, 3, 994, 3, 994, 3, 994, 3, 994, 3, 994, 3, 994, 3, 994, 3, 995, 3, 995, 3, 995, 3, 995, 3, 995, 3, 995, 3, 995, 3, 995, 3, 995, 3, 995, 3, 996, 3, 996, 3, 996, 3, 996, 3, 996, 3, 996, 3, 996, 3, 996, 3, 996, 3, 996, 3, 996, 3, 997, 3, 997, 3, 997, 3, 997, 3, 997, 3, 997, 3, 997, 3, 997, 3, 997, 3, 998, 3, 998, 3, 998, 3, 998, 3, 998, 3, 998, 3, 998, 3, 998, 3, 998, 3, 998, 3, 998, 3, 999, 3, 999, 3, 999, 3, 999, 3, 999, 3, 999, 3, 999, 3, 999, 3, 999, 3, 999, 3, 999, 3, 1000, 3, 1000, 3, 1000, 3, 1000, 3, 1000, 3, 1000, 3, 1000, 3, 1000, 3, 1000, 3, 1000, 3, 1000, 3, 1000, 3, 1000, 3, 1000, 3, 1000, 3, 1000, 3, 1000, 3, 1000, 3, 1001, 3, 1001, 3, 1001, 3, 1001, 3, 1001, 3, 1001, 3, 1001, 3, 1001, 3, 1001, 3, 1001, 3, 1001, 3, 1001, 3, 1001, 3, 1001, 3, 1002, 3, 1002, 3, 1002, 3, 1002, 3, 1002, 3, 1002, 3, 1002, 3, 1002, 3, 1002, 3, 1002, 3, 1002, 3, 1002, 3, 1002, 3, 1003, 3, 1003, 3, 1003, 3, 1003, 3, 1003, 3, 1003, 3, 1003, 3, 1003, 3, 1003, 3, 1003, 3, 1003, 3, 1004, 3, 1004, 3, 1004, 3, 1004, 3, 1004, 3, 1004, 3, 1004, 3, 1004, 3, 1004, 3, 1004, 3, 1004, 3, 1004, 3, 1004, 3, 1004, 3, 1004, 3, 1004, 3, 1004, 3, 1004, 3, 1004, 3, 1005, 3, 1005, 3, 1005, 3, 1005, 3, 1005, 3, 1005, 3, 1005, 3, 1005, 3, 1005, 3, 1005, 3, 1005, 3, 1005, 3, 1005, 3, 1005, 3, 1005, 3, 1005, 3, 1005, 3, 1005, 3, 1005, 3, 1005, 3, 1005, 3, 1005, 3, 1005, 3, 1005, 3, 1005, 3, 1005, 3, 1006, 3, 1006, 3, 1006, 3, 1006, 3, 1006, 3, 1006, 3, 1006, 3, 1006, 3, 1006, 3, 1006, 3, 1006, 3, 1006, 3, 1007, 3, 1007, 3, 1007, 3, 1007, 3, 1007, 3, 1007, 3, 1007, 3, 1007, 3, 1007, 3, 1007, 3, 1007, 3, 1007, 3, 1007, 3, 1007, 3, 1007, 3, 1008, 3, 1008, 3, 1008, 3, 1008, 3, 1008, 3, 1009, 3, 1009, 3, 1009, 3, 1009, 3, 1009, 3, 1009, 3, 1009, 3, 1009, 3, 1009, 3, 1009, 3, 1009, 3, 1009, 3, 1009, 3, 1009, 3, 1009, 3, 1009, 3, 1010, 3, 1010, 3, 1010, 3, 1010, 3, 1010, 3, 1010, 3, 1010, 3, 1010, 3, 1010, 3, 1010, 3, 1010, 3, 1010, 3, 1010, 3, 1010, 3, 1010, 3, 1010, 3, 1011, 3, 1011, 3, 1011, 3, 1012, 3, 1012, 3, 1012, 3, 1012, 3, 1012, 3, 1012, 3, 1012, 3, 1012, 3, 1012, 3, 1012, 3, 1013, 3, 1013, 3, 1013, 3, 1013, 3, 1013, 3, 1013, 3, 1013, 3, 1013, 3, 1013, 3, 1013, 3, 1013, 3, 1013, 3, 1013, 3, 1013, 3, 1013, 3, 1014, 3, 1014, 3, 1014, 3, 1014, 3, 1014, 3, 1014, 3, 1014, 3, 1014, 3, 1015, 3, 1015, 3, 1015, 3, 1015, 3, 1015, 3, 1015, 3, 1015, 3, 1015, 3, 1015, 3, 1015, 3, 1015, 3, 1015, 3, 1015, 3, 1015, 3, 1015, 3, 1015, 3, 1015, 3, 1016, 3, 1016, 3, 1016, 3, 1016, 3, 1016, 3, 1016, 3, 1016, 3, 1016, 3, 1016, 3, 1016, 3, 1016, 3, 1016, 3, 1016, 3, 1016, 3, 1016, 3, 1016, 3, 1016, 3, 1016, 3, 1016, 3, 1016, 3, 1016, 3, 1016, 3, 1017, 3, 1017, 3, 1017, 3, 1017, 3, 1017, 3, 1017, 3, 1017, 3, 1017, 3, 1017, 3, 1017, 3, 1017, 3, 1017, 3, 1017, 3, 1017, 3, 1017, 3, 1017, 3, 1017, 3, 1017, 3, 1017, 3, 1017, 3, 1017, 3, 1017, 3, 1017, 3, 1018, 3, 1018, 3, 1018, 3, 1018, 3, 1018, 3, 1018, 3, 1018, 3, 1018, 3, 1018, 3, 1018, 3, 1018, 3, 1019, 3, 1019, 3, 1019, 3, 1019, 3, 1019, 3, 1019, 3, 1019, 3, 1019, 3, 1019, 3, 1019, 3, 1019, 3, 1019, 3, 1019, 3, 1019, 3, 1019, 3, 1019, 3, 1019, 3, 1019, 3, 1020, 3, 1020, 3, 1020, 3, 1020, 3, 1020, 3, 1020, 3, 1020, 3, 1020, 3, 1020, 3, 1020, 3, 1020, 3, 1020, 3, 1020, 3, 1020, 3, 1020, 3, 1020, 3, 1020, 3, 1021, 3, 1021, 3, 1021, 3, 1021, 3, 1021, 3, 1021, 3, 1021, 3, 1021, 3, 1021, 3, 1021, 3, 1021, 3, 1021, 3, 1022, 3, 1022, 3, 1022, 3, 1022, 3, 1022, 3, 1022, 3, 1022, 3, 1022, 3, 1022, 3, 1022, 3, 1022, 3, 1023, 3, 1023, 3, 1023, 3, 1023, 3, 1023, 3, 1023, 3, 1023, 3, 1023, 3, 1023, 3, 1023, 3, 1023, 3, 1023, 3, 1023, 3, 1023, 3, 1023, 3, 1023, 3, 1023, 3, 1023, 3, 1024, 3, 1024, 3, 1024, 3, 1024, 3, 1024, 3, 1024, 3, 1024, 3, 1024, 3, 1024, 3, 1024, 3, 1024, 3, 1024, 3, 1024, 3, 1024, 3, 1024, 3, 1024, 3, 1025, 3, 1025, 3, 1025, 3, 1025, 3, 1025, 3, 1025, 3, 1025, 3, 1025, 3, 1025, 3, 1025, 3, 1025, 3, 1025, 3, 1025, 3, 1025, 3, 1025, 3, 1025, 3, 1025, 3, 1025, 3, 1025, 3, 1025, 3, 1025, 3, 1025, 3, 1025, 3, 1025, 3, 1025, 3, 1025, 3, 1025, 3, 1026, 3, 1026, 3, 1026, 3, 1026, 3, 1026, 3, 1026, 3, 1026, 3, 1026, 3, 1026, 3, 1026, 3, 1026, 3, 1026, 3, 1027, 3, 1027, 3, 1027, 3, 1027, 3, 1027, 3, 1027, 3, 1027, 3, 1027, 3, 1027, 3, 1027, 3, 1027, 3, 1027, 3, 1027, 3, 1027, 3, 1027, 3, 1027, 3, 1027, 3, 1027, 3, 1028, 3, 1028, 3, 1028, 3, 1028, 3, 1028, 3, 1028, 3, 1028, 3, 1028, 3, 1028, 3, 1028, 3, 1028, 3, 1028, 3, 1028, 3, 1028, 3, 1028, 3, 1028, 3, 1028, 3, 1028, 3, 1029, 3, 1029, 3, 1029, 3, 1029, 3, 1029, 3, 1029, 3, 1029, 3, 1029, 3, 1029, 3, 1029, 3, 1029, 3, 1029, 3, 1029, 3, 1029, 3, 1029, 3, 1029, 3, 1029, 3, 1029, 3, 1029, 3, 1029, 3, 1029, 3, 1029, 3, 1029, 3, 1030, 3, 1030, 3, 1030, 3, 1030, 3, 1030, 3, 1030, 3, 1030, 3, 1030, 3, 1030, 3, 1030, 3, 1031, 3, 1031, 3, 1031, 3, 1031, 3, 1031, 3, 1031, 3, 1031, 3, 1031, 3, 1031, 3, 1031, 3, 1031, 3, 1031, 3, 1031, 3, 1031, 3, 1031, 3, 1031, 3, 1032, 3, 1032, 3, 1032, 3, 1032, 3, 1032, 3, 1032, 3, 1032, 3, 1032, 3, 1032, 3, 1032, 3, 1032, 3, 1033, 3, 1033, 3, 1033, 3, 1033, 3, 1033, 3, 1033, 3, 1033, 3, 1033, 3, 1033, 3, 1033, 3, 1033, 3, 1033, 3, 1033, 3, 1033, 3, 1033, 3, 1034, 3, 1034, 3, 1034, 3, 1034, 3, 1034, 3, 1034, 3, 1034, 3, 1034, 3, 1034, 3, 1034, 3, 1034, 3, 1034, 3, 1034, 3, 1035, 3, 1035, 3, 1035, 3, 1035, 3, 1035, 3, 1035, 3, 1035, 3, 1035, 3, 1035, 3, 1035, 3, 1035, 3, 1035, 3, 1035, 3, 1036, 3, 1036, 3, 1036, 3, 1036, 3, 1036, 3, 1036, 3, 1036, 3, 1036, 3, 1036, 3, 1036, 3, 1036, 3, 1036, 3, 1036, 3, 1037, 3, 1037, 3, 1037, 3, 1037, 3, 1037, 3, 1037, 3, 1037, 3, 1037, 3, 1037, 3, 1037, 3, 1037, 3, 1037, 3, 1037, 3, 1037, 3, 1037, 3, 1037, 3, 1037, 3, 1037, 3, 1037, 3, 1037, 3, 1037, 3, 1037, 3, 1038, 3, 1038, 3, 1038, 3, 1038, 3, 1038, 3, 1038, 3, 1038, 3, 1038, 3, 1038, 3, 1038, 3, 1038, 3, 1038, 3, 1038, 3, 1038, 3, 1038, 3, 1038, 3, 1038, 3, 1038, 3, 1039, 3, 1039, 3, 1039, 3, 1039, 3, 1039, 3, 1039, 3, 1039, 3, 1039, 3, 1039, 3, 1039, 3, 1039, 3, 1039, 3, 1040, 3, 1040, 3, 1040, 3, 1040, 3, 1040, 3, 1040, 3, 1040, 3, 1040, 3, 1040, 3, 1040, 3, 1040, 3, 1040, 3, 1040, 3, 1040, 3, 1040, 3, 1040, 3, 1040, 3, 1040, 3, 1040, 3, 1040, 3, 1040, 3, 1040, 3, 1040, 3, 1040, 3, 1041, 3, 1041, 3, 1041, 3, 1041, 3, 1041, 3, 1041, 3, 1041, 3, 1041, 3, 1041, 3, 1041, 3, 1041, 3, 1041, 3, 1041, 3, 1041, 3, 1041, 3, 1042, 3, 1042, 3, 1042, 3, 1042, 3, 1042, 3, 1042, 3, 1042, 3, 1042, 3, 1042, 3, 1042, 3, 1042, 3, 1043, 3, 1043, 3, 1043, 3, 1043, 3, 1043, 3, 1043, 3, 1043, 3, 1044, 3, 1044, 3, 1044, 3, 1044, 3, 1044, 3, 1044, 3, 1044, 3, 1044, 3, 1044, 3, 1045, 3, 1045, 3, 1045, 3, 1045, 3, 1045, 3, 1045, 3, 1045, 3, 1045, 3, 1045, 3, 1046, 3, 1046, 3, 1046, 3, 1046, 3, 1046, 3, 1046, 3, 1046, 3, 1046, 3, 1046, 3, 1046, 3, 1046, 3, 1046, 3, 1047, 3, 1047, 3, 1047, 3, 1047, 3, 1047, 3, 1047, 3, 1047, 3, 1047, 3, 1047, 3, 1047, 3, 1047, 3, 1047, 3, 1047, 3, 1047, 3, 1047, 3, 1047, 3, 1048, 3, 1048, 3, 1048, 3, 1048, 3, 1048, 3, 1048, 3, 1048, 3, 1048, 3, 1048, 3, 1048, 3, 1049, 3, 1049, 3, 1049, 3, 1049, 3, 1049, 3, 1049, 3, 1049, 3, 1049, 3, 1049, 3, 1049, 3, 1049, 3, 1050, 3, 1050, 3, 1050, 3, 1050, 3, 1050, 3, 1050, 3, 1050, 3, 1050, 3, 1050, 3, 1050, 3, 1051, 3, 1051, 3, 1051, 3, 1051, 3, 1051, 3, 1051, 3, 1051, 3, 1052, 3, 1052, 3, 1052, 3, 1052, 3, 1052, 3, 1052, 3, 1052, 3, 1052, 3, 1052, 3, 1052, 3, 1052, 3, 1052, 3, 1052, 3, 1052, 3, 1052, 3, 1052, 3, 1052, 3, 1052, 3, 1052, 3, 1052, 3, 1052, 3, 1053, 3, 1053, 3, 1053, 3, 1053, 3, 1053, 3, 1053, 3, 1053, 3, 1053, 3, 1053, 3, 1053, 3, 1053, 3, 1053, 3, 1053, 3, 1053, 3, 1053, 3, 1053, 3, 1053, 3, 1053, 3, 1054, 3, 1054, 3, 1054, 3, 1054, 3, 1054, 3, 1054, 3, 1054, 3, 1054, 3, 1054, 3, 1054, 3, 1054, 3, 1054, 3, 1054, 3, 1054, 3, 1055, 3, 1055, 3, 1055, 3, 1055, 3, 1055, 3, 1055, 3, 1055, 3, 1055, 3, 1055, 3, 1055, 3, 1056, 3, 1056, 3, 1056, 3, 1056, 3, 1056, 3, 1056, 3, 1056, 3, 1056, 3, 1056, 3, 1056, 3, 1056, 3, 1056, 3, 1057, 3, 1057, 3, 1057, 3, 1057, 3, 1057, 3, 1057, 3, 1057, 3, 1057, 3, 1057, 3, 1057, 3, 1057, 3, 1057, 3, 1057, 3, 1057, 3, 1057, 3, 1057, 3, 1057, 3, 1058, 3, 1058, 3, 1058, 3, 1058, 3, 1058, 3, 1058, 3, 1058, 3, 1058, 3, 1058, 3, 1058, 3, 1058, 3, 1058, 3, 1058, 3, 1058, 3, 1058, 3, 1059, 3, 1059, 3, 1059, 3, 1059, 3, 1059, 3, 1059, 3, 1059, 3, 1060, 3, 1060, 3, 1060, 3, 1060, 3, 1060, 3, 1060, 3, 1060, 3, 1060, 3, 1060, 3, 1060, 3, 1060, 3, 1060, 3, 1060, 3, 1060, 3, 1060, 3, 1060, 3, 1060, 3, 1060, 3, 1060, 3, 1061, 3, 1061, 3, 1061, 3, 1061, 3, 1061, 3, 1061, 3, 1061, 3, 1061, 3, 1061, 3, 1061, 3, 1061, 3, 1061, 3, 1062, 3, 1062, 3, 1062, 3, 1062, 3, 1062, 3, 1062, 3, 1062, 3, 1062, 3, 1062, 3, 1062, 3, 1062, 3, 1062, 3, 1062, 3, 1062, 3, 1062, 3, 1062, 3, 1062, 3, 1062, 3, 1062, 3, 1062, 3, 1062, 3, 1062, 3, 1062, 3, 1063, 3, 1063, 3, 1063, 3, 1063, 3, 1063, 3, 1063, 3, 1063, 3, 1063, 3, 1063, 3, 1063, 3, 1063, 3, 1063, 3, 1063, 3, 1063, 3, 1063, 3, 1063, 3, 1063, 3, 1063, 3, 1063, 3, 1063, 3, 1063, 3, 1064, 3, 1064, 3, 1064, 3, 1064, 3, 1064, 3, 1064, 3, 1064, 3, 1064, 3, 1064, 3, 1064, 3, 1064, 3, 1064, 3, 1064, 3, 1064, 3, 1064, 3, 1065, 3, 1065, 3, 1065, 3, 1065, 3, 1065, 3, 1065, 3, 1065, 3, 1065, 3, 1065, 3, 1066, 3, 1066, 3, 1066, 3, 1066, 3, 1066, 3, 1066, 3, 1066, 3, 1066, 3, 1066, 3, 1066, 3, 1066, 3, 1066, 3, 1066, 3, 1066, 3, 1066, 3, 1066, 3, 1066, 3, 1066, 3, 1066, 3, 1066, 3, 1067, 3, 1067, 3, 1067, 3, 1067, 3, 1067, 3, 1067, 3, 1067, 3, 1067, 3, 1067, 3, 1067, 3, 1067, 3, 1067, 3, 1067, 3, 1067, 3, 1067, 3, 1068, 3, 1068, 3, 1068, 3, 1068, 3, 1068, 3, 1068, 3, 1068, 3, 1068, 3, 1068, 3, 1068, 3, 1068, 3, 1068, 3, 1068, 3, 1068, 3, 1068, 3, 1068, 3, 1068, 3, 1068, 3, 1068, 3, 1068, 3, 1069, 3, 1069, 3, 1069, 3, 1069, 3, 1069, 3, 1069, 3, 1069, 3, 1069, 3, 1069, 3, 1070, 3, 1070, 3, 1070, 3, 1070, 3, 1070, 3, 1070, 3, 1070, 3, 1070, 3, 1070, 3, 1070, 3, 1070, 3, 1070, 3, 1070, 3, 1070, 3, 1070, 3, 1070, 3, 1070, 3, 1070, 3, 1070, 3, 1070, 3, 1070, 3, 1070, 3, 1071, 3, 1071, 3, 1071, 3, 1071, 3, 1071, 3, 1071, 3, 1071, 3, 1071, 3, 1071, 3, 1071, 3, 1071, 3, 1071, 3, 1071, 3, 1071, 3, 1072, 3, 1072, 3, 1072, 3, 1072, 3, 1072, 3, 1072, 3, 1072, 3, 1072, 3, 1073, 3, 1073, 3, 1073, 3, 1073, 3, 1073, 3, 1073, 3, 1073, 3, 1073, 3, 1073, 3, 1073, 3, 1073, 3, 1073, 3, 1073, 3, 1074, 3, 1074, 3, 1074, 3, 1074, 3, 1075, 3, 1075, 3, 1075, 3, 1075, 3, 1075, 3, 1075, 3, 1075, 3, 1075, 3, 1075, 3, 1075, 3, 1075, 3, 1075, 3, 1075, 3, 1075, 3, 1075, 3, 1075, 3, 1075, 3, 1075, 3, 1075, 3, 1075, 3, 1075, 3, 1075, 3, 1075, 3, 1075, 3, 1075, 3, 1075, 3, 1076, 3, 1076, 3, 1076, 3, 1076, 3, 1076, 3, 1076, 3, 1076, 3, 1076, 3, 1076, 3, 1076, 3, 1077, 3, 1077, 3, 1077, 3, 1077, 3, 1077, 3, 1077, 3, 1077, 3, 1077, 3, 1077, 3, 1077, 3, 1077, 3, 1077, 3, 1078, 3, 1078, 3, 1078, 3, 1078, 3, 1078, 3, 1078, 3, 1078, 3, 1078, 3, 1078, 3, 1078, 3, 1078, 3, 1078, 3, 1078, 3, 1078, 3, 1078, 3, 1078, 3, 1078, 3, 1078, 3, 1078, 3, 1078, 3, 1078, 3, 1078, 3, 1078, 3, 1078, 3, 1079, 3, 1079, 3, 1079, 3, 1079, 3, 1079, 3, 1079, 3, 1079, 3, 1079, 3, 1079, 3, 1079, 3, 1079, 3, 1079, 3, 1079, 3, 1079, 3, 1079, 3, 1079, 3, 1079, 3, 1079, 3, 1079, 3, 1079, 3, 1079, 3, 1079, 3, 1079, 3, 1079, 3, 1079, 3, 1079, 3, 1079, 3, 1079, 3, 1079, 3, 1080, 3, 1080, 3, 1080, 3, 1080, 3, 1080, 3, 1080, 3, 1080, 3, 1080, 3, 1080, 3, 1080, 3, 1080, 3, 1080, 3, 1081, 3, 1081, 3, 1081, 3, 1081, 3, 1081, 3, 1081, 3, 1081, 3, 1081, 3, 1081, 3, 1081, 3, 1081, 3, 1081, 3, 1081, 3, 1081, 3, 1081, 3, 1081, 3, 1081, 3, 1081, 3, 1081, 3, 1081, 3, 1081, 3, 1081, 3, 1081, 3, 1081, 3, 1081, 3, 1082, 3, 1082, 3, 1082, 3, 1082, 3, 1082, 3, 1082, 3, 1082, 3, 1082, 3, 1082, 3, 1082, 3, 1082, 3, 1082, 3, 1082, 3, 1083, 3, 1083, 3, 1083, 3, 1083, 3, 1083, 3, 1083, 3, 1083, 3, 1083, 3, 1083, 3, 1083, 3, 1084, 3, 1084, 3, 1084, 3, 1084, 3, 1084, 3, 1084, 3, 1084, 3, 1084, 3, 1084, 3, 1084, 3, 1084, 3, 1084, 3, 1084, 3, 1084, 3, 1084, 3, 1084, 3, 1084, 3, 1084, 3, 1084, 3, 1084, 3, 1084, 3, 1084, 3, 1084, 3, 1084, 3, 1084, 3, 1084, 3, 1085, 3, 1085, 3, 1085, 3, 1085, 3, 1085, 3, 1085, 3, 1085, 3, 1085, 3, 1085, 3, 1085, 3, 1085, 3, 1086, 3, 1086, 3, 1086, 3, 1086, 3, 1086, 3, 1086, 3, 1086, 3, 1086, 3, 1086, 3, 1086, 3, 1086, 3, 1086, 3, 1086, 3, 1086, 3, 1086, 3, 1086, 3, 1086, 3, 1086, 3, 1086, 3, 1086, 3, 1086, 3, 1086, 3, 1086, 3, 1086, 3, 1086, 3, 1087, 3, 1087, 3, 1087, 3, 1087, 3, 1087, 3, 1087, 3, 1087, 3, 1087, 3, 1087, 3, 1087, 3, 1087, 3, 1087, 3, 1087, 3, 1087, 3, 1087, 3, 1087, 3, 1087, 3, 1087, 3, 1087, 3, 1087, 3, 1087, 3, 1087, 3, 1087, 3, 1087, 3, 1087, 3, 1088, 3, 1088, 3, 1088, 3, 1088, 3, 1088, 3, 1088, 3, 1088, 3, 1088, 3, 1088, 3, 1088, 3, 1088, 3, 1088, 3, 1088, 3, 1088, 3, 1088, 3, 1088, 3, 1088, 3, 1088, 3, 1088, 3, 1088, 3, 1089, 3, 1089, 3, 1089, 3, 1089, 3, 1089, 3, 1089, 3, 1089, 3, 1090, 3, 1090, 3, 1090, 3, 1090, 3, 1090, 3, 1090, 3, 1090, 3, 1090, 3, 1090, 3, 1090, 3, 1090, 3, 1090, 3, 1090, 3, 1090, 3, 1090, 3, 1090, 3, 1090, 3, 1090, 3, 1090, 3, 1090, 3, 1090, 3, 1090, 3, 1090, 3, 1091, 3, 1091, 3, 1091, 3, 1091, 3, 1091, 3, 1091, 3, 1091, 3, 1091, 3, 1091, 3, 1091, 3, 1091, 3, 1091, 3, 1091, 3, 1091, 3, 1091, 3, 1091, 3, 1091, 3, 1091, 3, 1091, 3, 1092, 3, 1092, 3, 1092, 3, 1092, 3, 1092, 3, 1092, 3, 1092, 3, 1092, 3, 1092, 3, 1092, 3, 1092, 3, 1092, 3, 1092, 3, 1092, 3, 1092, 3, 1092, 3, 1092, 3, 1092, 3, 1092, 3, 1092, 3, 1092, 3, 1092, 3, 1092, 3, 1092, 3, 1092, 3, 1092, 3, 1092, 3, 1092, 3, 1092, 3, 1092, 3, 1093, 3, 1093, 3, 1093, 3, 1093, 3, 1093, 3, 1093, 3, 1093, 3, 1093, 3, 1093, 3, 1093, 3, 1093, 3, 1093, 3, 1093, 3, 1093, 3, 1093, 3, 1093, 3, 1093, 3, 1093, 3, 1093, 3, 1093, 3, 1094, 3, 1094, 3, 1094, 3, 1094, 3, 1094, 3, 1094, 3, 1094, 3, 1094, 3, 1094, 3, 1094, 3, 1094, 3, 1094, 3, 1094, 3, 1094, 3, 1094, 3, 1094, 3, 1094, 3, 1094, 3, 1094, 3, 1094, 3, 1094, 3, 1095, 3, 1095, 3, 1095, 3, 1095, 3, 1095, 3, 1095, 3, 1095, 3, 1095, 3, 1095, 3, 1095, 3, 1095, 3, 1096, 3, 1096, 3, 1096, 3, 1096, 3, 1096, 3, 1096, 3, 1096, 3, 1096, 3, 1096, 3, 1096, 3, 1097, 3, 1097, 3, 1097, 3, 1097, 3, 1097, 3, 1097, 3, 1097, 3, 1098, 3, 1098, 3, 1098, 3, 1098, 3, 1098, 3, 1099, 3, 1099, 3, 1099, 3, 1099, 3, 1099, 3, 1099, 3, 1100, 3, 1100, 3, 1100, 3, 1100, 3, 1100, 3, 1100, 3, 1100, 3, 1101, 3, 1101, 3, 1101, 3, 1101, 3, 1101, 3, 1101, 3, 1101, 3, 1101, 3, 1102, 3, 1102, 3, 1102, 3, 1102, 3, 1102, 3, 1102, 3, 1102, 3, 1102, 3, 1102, 3, 1102, 3, 1102, 3, 1102, 3, 1102, 3, 1102, 3, 1102, 3, 1103, 3, 1103, 3, 1103, 3, 1103, 3, 1103, 3, 1103, 3, 1103, 3, 1103, 3, 1103, 3, 1103, 3, 1103, 3, 1103, 3, 1103, 3, 1103, 3, 1103, 3, 1103, 3, 1104, 3, 1104, 3, 1104, 3, 1104, 3, 1104, 3, 1104, 3, 1104, 3, 1104, 3, 1104, 3, 1104, 3, 1104, 3, 1104, 3, 1104, 3, 1104, 3, 1104, 3, 1104, 3, 1105, 3, 1105, 3, 1105, 3, 1105, 3, 1105, 3, 1105, 3, 1105, 3, 1105, 3, 1105, 3, 1105, 3, 1106, 3, 1106, 3, 1106, 3, 1106, 3, 1106, 3, 1107, 3, 1107, 3, 1107, 3, 1107, 3, 1107, 3, 1107, 3, 1107, 3, 1107, 3, 1107, 3, 1107, 3, 1107, 3, 1108, 3, 1108, 3, 1108, 3, 1108, 3, 1108, 3, 1108, 3, 1108, 3, 1109, 3, 1109, 3, 1109, 3, 1109, 3, 1109, 3, 1109, 3, 1109, 3, 1110, 3, 1110, 3, 1110, 3, 1110, 3, 1110, 3, 1110, 3, 1111, 3, 1111, 3, 1111, 3, 1111, 3, 1111, 3, 1111, 3, 1111, 3, 1111, 3, 1111, 3, 1111, 3, 1111, 3, 1111, 3, 1112, 3, 1112, 3, 1112, 3, 1112, 3, 1112, 3, 1112, 3, 1112, 3, 1112, 3, 1112, 3, 1112, 3, 1112, 3, 1113, 3, 1113, 3, 1113, 3, 1113, 3, 1113, 3, 1113, 3, 1113, 3, 1113, 3, 1114, 3, 1114, 3, 1114, 3, 1114, 3, 1115, 3, 1115, 3, 1115, 3, 1115, 3, 1115, 3, 1115, 3, 1115, 3, 1116, 3, 1116, 3, 1116, 3, 1117, 3, 1117, 3, 1117, 3, 1117, 3, 1117, 3, 1117, 3, 1117, 3, 1117, 3, 1117, 3, 1118, 3, 1118, 3, 1118, 3, 1118, 3, 1119, 3, 1119, 3, 1119, 3, 1119, 3, 1119, 3, 1120, 3, 1120, 3, 1120, 3, 1120, 3, 1121, 3, 1121, 3, 1121, 3, 1121, 3, 1121, 3, 1121, 3, 1121, 3, 1121, 3, 1121, 3, 1121, 3, 1121, 3, 1121, 3, 1121, 3, 1121, 3, 1122, 3, 1122, 3, 1122, 3, 1122, 3, 1123, 3, 1123, 3, 1123, 3, 1123, 3, 1123, 3, 1124, 3, 1124, 3, 1124, 3, 1124, 3, 1124, 3, 1125, 3, 1125, 3, 1125, 3, 1125, 3, 1126, 3, 1126, 3, 1126, 3, 1126, 3, 1126, 3, 1126, 3, 1126, 3, 1127, 3, 1127, 3, 1127, 3, 1127, 3, 1127, 3, 1127, 3, 1127, 3, 1127, 3, 1127, 3, 1127, 3, 1128, 3, 1128, 3, 1128, 3, 1128, 3, 1128, 3, 1129, 3, 1129, 3, 1129, 3, 1130, 3, 1130, 3, 1130, 3, 1130, 3, 1130, 3, 1130, 3, 1130, 3, 1131, 3, 1131, 3, 1131, 3, 1131, 3, 1131, 3, 1131, 3, 1131, 3, 1131, 3, 1131, 3, 1131, 3, 1131, 3, 1131, 3, 1131, 3, 1131, 3, 1131, 3, 1131, 3, 1131, 3, 1132, 3, 1132, 3, 1132, 3, 1132, 3, 1132, 3, 1132, 3, 1132, 3, 1132, 3, 1132, 3, 1132, 3, 1132, 3, 1132, 3, 1132, 3, 1132, 3, 1132, 3, 1132, 3, 1132, 3, 1132, 3, 1133, 3, 1133, 3, 1133, 3, 1133, 3, 1133, 3, 1133, 3, 1133, 3, 1134, 3, 1134, 3, 1134, 3, 1134, 3, 1134, 3, 1135, 3, 1135, 3, 1135, 3, 1135, 3, 1135, 3, 1135, 3, 1135, 3, 1135, 3, 1135, 3, 1135, 3, 1135, 3, 1136, 3, 1136, 3, 1136, 3, 1136, 3, 1136, 3, 1136, 3, 1136, 3, 1136, 3, 1136, 3, 1137, 3, 1137, 3, 1137, 3, 1137, 3, 1137, 3, 1137, 3, 1137, 3, 1137, 3, 1137, 3, 1137, 3, 1137, 3, 1137, 3, 1137, 3, 1138, 3, 1138, 3, 1138, 3, 1138, 3, 1138, 3, 1138, 3, 1138, 3, 1138, 3, 1139, 3, 1139, 3, 1139, 3, 1139, 3, 1139, 3, 1139, 3, 1139, 3, 1139, 3, 1139, 3, 1140, 3, 1140, 3, 1140, 3, 1140, 3, 1140, 3, 1140, 3, 1140, 3, 1140, 3, 1140, 3, 1140, 3, 1140, 3, 1140, 3, 1140, 3, 1140, 3, 1140, 3, 1140, 3, 1140, 3, 1140, 3, 1140, 3, 1140, 3, 1140, 3, 1140, 3, 1140, 3, 1140, 3, 1140, 3, 1140, 3, 1141, 3, 1141, 3, 1141, 3, 1141, 3, 1141, 3, 1141, 3, 1141, 3, 1141, 3, 1141, 3, 1141, 3, 1141, 3, 1141, 3, 1141, 3, 1141, 3, 1141, 3, 1142, 3, 1142, 3, 1142, 3, 1142, 3, 1142, 3, 1142, 3, 1142, 3, 1143, 3, 1143, 3, 1143, 3, 1143, 3, 1143, 3, 1143, 3, 1143, 3, 1143, 3, 1143, 3, 1143, 3, 1144, 3, 1144, 3, 1144, 3, 1144, 3, 1144, 3, 1144, 3, 1144, 3, 1144, 3, 1144, 3, 1144, 3, 1144, 3, 1145, 3, 1145, 3, 1145, 3, 1145, 3, 1145, 3, 1145, 3, 1145, 3, 1145, 3, 1145, 3, 1145, 3, 1145, 3, 1145, 3, 1145, 3, 1145, 3, 1146, 3, 1146, 3, 1146, 3, 1146, 3, 1146, 3, 1146, 3, 1146, 3, 1146, 3, 1146, 3, 1146, 3, 1146, 3, 1146, 3, 1146, 3, 1146, 3, 1146, 3, 1146, 3, 1146, 3, 1146, 3, 1146, 3, 1146, 3, 1147, 3, 1147, 3, 1147, 3, 1147, 3, 1147, 3, 1147, 3, 1147, 3, 1147, 3, 1147, 3, 1147, 3, 1147, 3, 1147, 3, 1147, 3, 1147, 3, 1147, 3, 1148, 3, 1148, 3, 1148, 3, 1148, 3, 1148, 3, 1148, 3, 1148, 3, 1148, 3, 1149, 3, 1149, 3, 1149, 3, 1149, 3, 1149, 3, 1149, 3, 1149, 3, 1149, 3, 1149, 3, 1150, 3, 1150, 3, 1150, 3, 1150, 3, 1150, 3, 1150, 3, 1150, 3, 1150, 3, 1150, 3, 1150, 3, 1150, 3, 1150, 3, 1150, 3, 1150, 3, 1150, 3, 1150, 3, 1150, 3, 1151, 3, 1151, 3, 1151, 3, 1151, 3, 1151, 3, 1151, 3, 1151, 3, 1151, 3, 1151, 3, 1151, 3, 1151, 3, 1151, 3, 1151, 3, 1151, 3, 1151, 3, 1151, 3, 1152, 3, 1152, 3, 1152, 3, 1152, 3, 1152, 3, 1152, 3, 1152, 3, 1152, 3, 1152, 3, 1152, 3, 1152, 3, 1152, 3, 1152, 3, 1152, 3, 1153, 3, 1153, 3, 1153, 3, 1153, 3, 1153, 3, 1153, 3, 1153, 3, 1153, 3, 1153, 3, 1153, 3, 1153, 3, 1153, 3, 1153, 3, 1153, 3, 1153, 3, 1154, 3, 1154, 3, 1154, 3, 1154, 3, 1154, 3, 1154, 3, 1154, 3, 1154, 3, 1154, 3, 1154, 3, 1154, 3, 1154, 3, 1154, 3, 1154, 3, 1154, 3, 1154, 3, 1154, 3, 1154, 3, 1154, 3, 1155, 3, 1155, 3, 1155, 3, 1155, 3, 1155, 3, 1155, 3, 1155, 3, 1155, 3, 1155, 3, 1156, 3, 1156, 3, 1156, 3, 1156, 3, 1156, 3, 1156, 3, 1156, 3, 1156, 3, 1156, 3, 1156, 3, 1156, 3, 1156, 3, 1156, 3, 1156, 3, 1156, 3, 1156, 3, 1156, 3, 1156, 3, 1156, 3, 1156, 3, 1157, 3, 1157, 3, 1157, 3, 1157, 3, 1157, 3, 1157, 3, 1157, 3, 1157, 3, 1157, 3, 1157, 3, 1157, 3, 1157, 3, 1157, 3, 1157, 3, 1157, 3, 1157, 3, 1157, 3, 1157, 3, 1158, 3, 1158, 3, 1158, 3, 1158, 3, 1158, 3, 1158, 3, 1158, 3, 1158, 3, 1158, 3, 1158, 3, 1158, 3, 1158, 3, 1158, 3, 1158, 3, 1158, 3, 1158, 3, 1158, 3, 1158, 3, 1158, 3, 1158, 3, 1158, 3, 1158, 3, 1158, 3, 1158, 3, 1158, 3, 1158, 3, 1159, 3, 1159, 3, 1159, 3, 1159, 3, 1159, 3, 1159, 3, 1159, 3, 1159, 3, 1159, 3, 1159, 3, 1159, 3, 1159, 3, 1159, 3, 1159, 3, 1159, 3, 1159, 3, 1159, 3, 1159, 3, 1159, 3, 1159, 3, 1159, 3, 1160, 3, 1160, 3, 1160, 3, 1160, 3, 1160, 3, 1160, 3, 1160, 3, 1160, 3, 1160, 3, 1160, 3, 1160, 3, 1160, 3, 1160, 3, 1160, 3, 1160, 3, 1161, 3, 1161, 3, 1161, 3, 1161, 3, 1161, 3, 1161, 3, 1161, 3, 1161, 3, 1161, 3, 1161, 3, 1161, 3, 1161, 3, 1161, 3, 1161, 3, 1162, 3, 1162, 3, 1162, 3, 1162, 3, 1162, 3, 1162, 3, 1162, 3, 1162, 3, 1162, 3, 1162, 3, 1162, 3, 1163, 3, 1163, 3, 1163, 3, 1163, 3, 1163, 3, 1163, 3, 1163, 3, 1163, 3, 1163, 3, 1163, 3, 1163, 3, 1163, 3, 1163, 3, 1163, 3, 1163, 3, 1164, 3, 1164, 3, 1164, 3, 1164, 3, 1164, 3, 1164, 3, 1164, 3, 1164, 3, 1164, 3, 1164, 3, 1164, 3, 1164, 3, 1164, 3, 1164, 3, 1164, 3, 1165, 3, 1165, 3, 1165, 3, 1165, 3, 1165, 3, 1165, 3, 1165, 3, 1165, 3, 1165, 3, 1165, 3, 1165, 3, 1165, 3, 1165, 3, 1165, 3, 1165, 3, 1166, 3, 1166, 3, 1166, 3, 1166, 3, 1166, 3, 1166, 3, 1166, 3, 1166, 3, 1166, 3, 1166, 3, 1166, 3, 1166, 3, 1166, 3, 1166, 3, 1166, 3, 1167, 3, 1167, 3, 1167, 3, 1167, 3, 1167, 3, 1167, 3, 1167, 3, 1167, 3, 1168, 3, 1168, 3, 1168, 3, 1168, 3, 1168, 3, 1168, 3, 1168, 3, 1168, 3, 1168, 3, 1168, 3, 1168, 3, 1168, 3, 1168, 3, 1168, 3, 1168, 3, 1168, 3, 1168, 3, 1168, 3, 1168, 3, 1169, 3, 1169, 3, 1169, 3, 1169, 3, 1169, 3, 1169, 3, 1170, 3, 1170, 3, 1170, 3, 1170, 3, 1170, 3, 1170, 3, 1170, 3, 1170, 3, 1170, 3, 1170, 3, 1170, 3, 1171, 3, 1171, 3, 1171, 3, 1171, 3, 1171, 3, 1171, 3, 1171, 3, 1171, 3, 1171, 3, 1171, 3, 1172, 3, 1172, 3, 1172, 3, 1172, 3, 1172, 3, 1172, 3, 1172, 3, 1172, 3, 1172, 3, 1172, 3, 1172, 3, 1172, 3, 1172, 3, 1173, 3, 1173, 3, 1173, 3, 1174, 3, 1174, 3, 1174, 3, 1174, 3, 1174, 3, 1174, 3, 1174, 3, 1174, 3, 1174, 3, 1174, 3, 1174, 3, 1174, 3, 1174, 3, 1174, 3, 1175, 3, 1175, 3, 1175, 3, 1175, 3, 1175, 3, 1175, 3, 1175, 3, 1175, 3, 1176, 3, 1176, 3, 1176, 3, 1176, 3, 1176, 3, 1176, 3, 1177, 3, 1177, 3, 1177, 3, 1177, 3, 1177, 3, 1177, 3, 1177, 3, 1177, 3, 1177, 3, 1177, 3, 1177, 3, 1177, 3, 1177, 3, 1177, 3, 1177, 3, 1177, 3, 1177, 3, 1177, 3, 1177, 3, 1178, 3, 1178, 3, 1178, 3, 1178, 3, 1178, 3, 1178, 3, 1178, 3, 1178, 3, 1178, 3, 1178, 3, 1178, 3, 1178, 3, 1178, 3, 1178, 3, 1178, 3, 1178, 3, 1178, 3, 1178, 3, 1178, 3, 1178, 3, 1179, 3, 1179, 3, 1179, 3, 1179, 3, 1179, 3, 1179, 3, 1180, 3, 1180, 3, 1180, 3, 1180, 3, 1180, 3, 1180, 3, 1180, 3, 1180, 3, 1180, 3, 1180, 3, 1180, 3, 1180, 3, 1180, 3, 1181, 3, 1181, 3, 1181, 3, 1181, 3, 1181, 3, 1181, 3, 1181, 3, 1181, 3, 1182, 3, 1182, 3, 1182, 3, 1182, 3, 1182, 3, 1182, 3, 1182, 3, 1182, 3, 1182, 3, 1182, 3, 1182, 3, 1182, 3, 1183, 3, 1183, 3, 1183, 3, 1183, 3, 1184, 3, 1184, 3, 1184, 3, 1184, 3, 1184, 3, 1184, 3, 1184, 3, 1184, 3, 1184, 3, 1184, 3, 1184, 3, 1184, 3, 1184, 3, 1184, 3, 1184, 3, 1184, 3, 1185, 3, 1185, 3, 1185, 3, 1185, 3, 1185, 3, 1185, 3, 1185, 3, 1185, 3, 1185, 3, 1186, 3, 1186, 3, 1186, 3, 1186, 3, 1186, 3, 1186, 3, 1186, 3, 1186, 3, 1186, 3, 1187, 3, 1187, 3, 1187, 3, 1187, 3, 1187, 3, 1188, 3, 1188, 3, 1188, 3, 1188, 3, 1188, 3, 1188, 3, 1188, 3, 1188, 3, 1188, 3, 1188, 3, 1188, 3, 1189, 3, 1189, 3, 1189, 3, 1189, 3, 1189, 3, 1189, 3, 1190, 3, 1190, 3, 1190, 3, 1190, 3, 1190, 3, 1190, 3, 1190, 3, 1190, 3, 1190, 3, 1190, 3, 1191, 3, 1191, 3, 1191, 3, 1191, 3, 1192, 3, 1192, 3, 1192, 3, 1192, 3, 1192, 3, 1192, 3, 1192, 3, 1192, 3, 1193, 3, 1193, 3, 1193, 3, 1193, 3, 1193, 3, 1193, 3, 1193, 3, 1193, 3, 1193, 3, 1194, 3, 1194, 3, 1194, 3, 1194, 3, 1194, 3, 1194, 3, 1194, 3, 1194, 3, 1194, 3, 1194, 3, 1194, 3, 1194, 3, 1194, 3, 1194, 3, 1194, 3, 1194, 3, 1195, 3, 1195, 3, 1195, 3, 1195, 3, 1195, 3, 1195, 3, 1195, 3, 1195, 3, 1195, 3, 1195, 3, 1195, 3, 1195, 3, 1195, 3, 1195, 3, 1195, 3, 1196, 3, 1196, 3, 1196, 3, 1196, 3, 1196, 3, 1196, 3, 1196, 3, 1196, 3, 1196, 3, 1197, 3, 1197, 3, 1197, 3, 1197, 3, 1197, 3, 1197, 3, 1197, 3, 1197, 3, 1197, 3, 1197, 3, 1197, 3, 1197, 3, 1197, 3, 1197, 3, 1198, 3, 1198, 3, 1198, 3, 1198, 3, 1198, 3, 1198, 3, 1198, 3, 1198, 3, 1198, 3, 1198, 3, 1198, 3, 1199, 3, 1199, 3, 1199, 3, 1199, 3, 1199, 3, 1199, 3, 1200, 3, 1200, 3, 1200, 3, 1200, 3, 1200, 3, 1200, 3, 1200, 3, 1201, 3, 1201, 3, 1201, 3, 1201, 3, 1201, 3, 1201, 3, 1201, 3, 1202, 3, 1202, 3, 1202, 3, 1202, 3, 1202, 3, 1202, 3, 1202, 3, 1202, 3, 1202, 3, 1202, 3, 1202, 3, 1202, 3, 1202, 3, 1203, 3, 1203, 3, 1203, 3, 1203, 3, 1203, 3, 1203, 3, 1203, 3, 1203, 3, 1203, 3, 1203, 3, 1204, 3, 1204, 3, 1204, 3, 1204, 3, 1204, 3, 1204, 3, 1204, 3, 1204, 3, 1205, 3, 1205, 3, 1205, 3, 1205, 3, 1205, 3, 1205, 3, 1205, 3, 1205, 3, 1205, 3, 1205, 3, 1205, 3, 1205, 3, 1205, 3, 1205, 3, 1205, 3, 1205, 3, 1205, 3, 1205, 3, 1205, 3, 1205, 3, 1205, 3, 1205, 3, 1205, 3, 1205, 3, 1206, 3, 1206, 3, 1206, 3, 1206, 3, 1206, 3, 1206, 3, 1206, 3, 1206, 3, 1206, 3, 1206, 3, 1206, 3, 1206, 3, 1206, 3, 1206, 3, 1206, 3, 1207, 3, 1207, 3, 1207, 3, 1207, 3, 1207, 3, 1207, 3, 1207, 3, 1207, 3, 1207, 3, 1207, 3, 1207, 3, 1207, 3, 1207, 3, 1207, 3, 1207, 3, 1208, 3, 1208, 3, 1208, 3, 1208, 3, 1208, 3, 1208, 3, 1208, 3, 1208, 3, 1208, 3, 1208, 3, 1209, 3, 1209, 3, 1209, 3, 1209, 3, 1209, 3, 1209, 3, 1209, 3, 1209, 3, 1209, 3, 1209, 3, 1209, 3, 1209, 3, 1209, 3, 1209, 3, 1209, 3, 1209, 3, 1210, 3, 1210, 3, 1210, 3, 1210, 3, 1210, 3, 1210, 3, 1210, 3, 1210, 3, 1210, 3, 1210, 3, 1210, 3, 1211, 3, 1211, 3, 1211, 3, 1211, 3, 1211, 3, 1211, 3, 1211, 3, 1211, 3, 1211, 3, 1211, 3, 1211, 3, 1211, 3, 1211, 3, 1211, 3, 1212, 3, 1212, 3, 1212, 3, 1212, 3, 1212, 3, 1212, 3, 1212, 3, 1212, 3, 1213, 3, 1213, 3, 1213, 3, 1213, 3, 1213, 3, 1213, 3, 1213, 3, 1213, 3, 1213, 3, 1213, 3, 1213, 3, 1213, 3, 1213, 3, 1213, 3, 1213, 3, 1213, 3, 1213, 3, 1213, 3, 1213, 3, 1213, 3, 1214, 3, 1214, 3, 1214, 3, 1214, 3, 1214, 3, 1214, 3, 1214, 3, 1214, 3, 1214, 3, 1214, 3, 1214, 3, 1214, 3, 1214, 3, 1214, 3, 1214, 3, 1214, 3, 1214, 3, 1214, 3, 1214, 3, 1215, 3, 1215, 3, 1215, 3, 1215, 3, 1215, 3, 1215, 3, 1215, 3, 1215, 3, 1215, 3, 1215, 3, 1215, 3, 1215, 3, 1215, 3, 1215, 3, 1215, 3, 1215, 3, 1215, 3, 1215, 3, 1215, 3, 1216, 3, 1216, 3, 1216, 3, 1216, 3, 1216, 3, 1216, 3, 1216, 3, 1216, 3, 1216, 3, 1217, 3, 1217, 3, 1217, 3, 1217, 3, 1217, 3, 1217, 3, 1217, 3, 1217, 3, 1217, 3, 1217, 3, 1217, 3, 1217, 3, 1217, 3, 1217, 3, 1217, 3, 1217, 3, 1217, 3, 1217, 3, 1217, 3, 1218, 3, 1218, 3, 1218, 3, 1218, 3, 1218, 3, 1218, 3, 1218, 3, 1218, 3, 1218, 3, 1218, 3, 1218, 3, 1218, 3, 1218, 3, 1218, 3, 1218, 3, 1218, 3, 1218, 3, 1218, 3, 1218, 3, 1218, 3, 1219, 3, 1219, 3, 1219, 3, 1219, 3, 1219, 3, 1219, 3, 1219, 3, 1219, 3, 1219, 3, 1219, 3, 1219, 3, 1219, 3, 1219, 3, 1219, 3, 1219, 3, 1219, 3, 1219, 3, 1219, 3, 1219, 3, 1219, 3, 1219, 3, 1219, 3, 1219, 3, 1219, 3, 1219, 3, 1220, 3, 1220, 3, 1220, 3, 1220, 3, 1220, 3, 1221, 3, 1221, 3, 1221, 3, 1221, 3, 1221, 3, 1221, 3, 1222, 3, 1222, 3, 1222, 3, 1222, 3, 1222, 3, 1223, 3, 1223, 3, 1223, 3, 1223, 3, 1223, 3, 1223, 3, 1223, 3, 1223, 3, 1223, 3, 1223, 3, 1223, 3, 1223, 3, 1224, 3, 1224, 3, 1224, 3, 1224, 3, 1224, 3, 1224, 3, 1225, 3, 1225, 3, 1225, 3, 1225, 3, 1225, 3, 1225, 3, 1225, 3, 1225, 3, 1226, 3, 1226, 3, 1226, 3, 1226, 3, 1226, 3, 1226, 3, 1226, 3, 1226, 3, 1226, 3, 1226, 3, 1226, 3, 1226, 3, 1226, 3, 1227, 3, 1227, 3, 1227, 3, 1227, 3, 1227, 3, 1227, 3, 1227, 3, 1227, 3, 1227, 3, 1227, 3, 1227, 3, 1228, 3, 1228, 3, 1228, 3, 1228, 3, 1228, 3, 1228, 3, 1228, 3, 1228, 3, 1229, 3, 1229, 3, 1229, 3, 1229, 3, 1229, 3, 1229, 3, 1229, 3, 1229, 3, 1229, 3, 1229, 3, 1229, 3, 1229, 3, 1230, 3, 1230, 3, 1230, 3, 1230, 3, 1230, 3, 1230, 3, 1230, 3, 1230, 3, 1230, 3, 1230, 3, 1230, 3, 1230, 3, 1230, 3, 1231, 3, 1231, 3, 1231, 3, 1231, 3, 1231, 3, 1231, 3, 1231, 3, 1231, 3, 1232, 3, 1232, 3, 1232, 3, 1232, 3, 1232, 3, 1232, 3, 1232, 3, 1232, 3, 1232, 3, 1232, 3, 1232, 3, 1233, 3, 1233, 3, 1233, 3, 1233, 3, 1233, 3, 1233, 3, 1233, 3, 1233, 3, 1234, 3, 1234, 7, 1234, 18047, 10, 1234, 12, 1234, 14, 1234, 18050, 11, 1234, 3, 1234, 3, 1234, 3, 1234, 3, 1234, 3, 1234, 3, 1234, 3, 1235, 3, 1235, 7, 1235, 18060, 10, 1235, 12, 1235, 14, 1235, 18063, 11, 1235, 3, 1235, 3, 1235, 3, 1235, 3, 1235, 3, 1235, 3, 1235, 3, 1235, 3, 1236, 3, 1236, 7, 1236, 18074, 10, 1236, 12, 1236, 14, 1236, 18077, 11, 1236, 3, 1236, 3, 1236, 3, 1236, 3, 1236, 3, 1236, 3, 1236, 3, 1236, 3, 1236, 3, 1236, 3, 1237, 3, 1237, 3, 1237, 3, 1237, 3, 1237, 3, 1237, 3, 1237, 3, 1237, 3, 1238, 3, 1238, 3, 1238, 3, 1238, 3, 1238, 3, 1238, 3, 1238, 3, 1238, 3, 1238, 3, 1238, 3, 1238, 3, 1238, 3, 1238, 3, 1238, 3, 1239, 3, 1239, 7, 1239, 18112, 10, 1239, 12, 1239, 14, 1239, 18115, 11, 1239, 3, 1239, 3, 1239, 3, 1239, 3, 1239, 3, 1239, 3, 1239, 3, 1239, 3, 1239, 3, 1239, 3, 1240, 3, 1240, 7, 1240, 18128, 10, 1240, 12, 1240, 14, 1240, 18131, 11, 1240, 3, 1240, 3, 1240, 3, 1240, 3, 1240, 3, 1240, 3, 1240, 3, 1240, 3, 1240, 3, 1241, 3, 1241, 7, 1241, 18143, 10, 1241, 12, 1241, 14, 1241, 18146, 11, 1241, 3, 1241, 3, 1241, 3, 1241, 3, 1241, 3, 1241, 3, 1242, 3, 1242, 3, 1242, 3, 1242, 3, 1242, 3, 1242, 3, 1242, 3, 1242, 3, 1242, 3, 1242, 3, 1242, 3, 1242, 3, 1243, 3, 1243, 3, 1243, 3, 1243, 3, 1243, 3, 1243, 3, 1243, 3, 1244, 3, 1244, 3, 1244, 3, 1244, 3, 1244, 3, 1244, 3, 1244, 3, 1244, 3, 1244, 3, 1244, 3, 1245, 3, 1245, 3, 1245, 3, 1245, 3, 1245, 3, 1245, 3, 1245, 3, 1245, 3, 1245, 3, 1245, 3, 1245, 3, 1246, 3, 1246, 3, 1246, 3, 1246, 3, 1246, 3, 1246, 3, 1246, 3, 1246, 3, 1247, 3, 1247, 3, 1247, 3, 1247, 3, 1248, 3, 1248, 3, 1248, 3, 1248, 3, 1248, 3, 1248, 3, 1249, 3, 1249, 3, 1249, 3, 1249, 3, 1249, 3, 1249, 3, 1249, 3, 1249, 3, 1249, 3, 1250, 3, 1250, 3, 1250, 3, 1250, 3, 1250, 3, 1250, 3, 1251, 3, 1251, 3, 1251, 3, 1251, 3, 1251, 3, 1251, 3, 1251, 3, 1251, 3, 1251, 3, 1251, 3, 1252, 3, 1252, 3, 1252, 3, 1252, 3, 1252, 3, 1253, 3, 1253, 3, 1253, 3, 1253, 3, 1253, 3, 1253, 3, 1253, 3, 1254, 3, 1254, 3, 1254, 3, 1254, 3, 1254, 3, 1254, 3, 1255, 3, 1255, 3, 1255, 3, 1255, 3, 1255, 3, 1255, 3, 1255, 3, 1255, 3, 1256, 3, 1256, 3, 1256, 3, 1256, 3, 1256, 3, 1256, 3, 1256, 3, 1256, 3, 1256, 3, 1256, 3, 1256, 3, 1256, 3, 1256, 3, 1256, 3, 1256, 3, 1257, 3, 1257, 3, 1257, 3, 1257, 3, 1257, 3, 1257, 3, 1257, 3, 1257, 3, 1257, 3, 1257, 3, 1257, 3, 1257, 3, 1257, 3, 1257, 3, 1257, 3, 1258, 3, 1258, 3, 1258, 3, 1258, 3, 1258, 3, 1259, 3, 1259, 3, 1259, 3, 1259, 3, 1259, 3, 1259, 3, 1259, 3, 1259, 3, 1259, 3, 1259, 3, 1259, 3, 1259, 3, 1259, 3, 1259, 3, 1259, 3, 1259, 3, 1259, 3, 1260, 3, 1260, 3, 1260, 3, 1260, 3, 1260, 3, 1260, 3, 1260, 3, 1260, 3, 1260, 3, 1260, 3, 1260, 3, 1260, 3, 1261, 3, 1261, 3, 1261, 3, 1261, 3, 1261, 3, 1261, 3, 1261, 3, 1261, 3, 1261, 3, 1261, 3, 1261, 3, 1261, 3, 1261, 3, 1261, 3, 1262, 3, 1262, 3, 1262, 3, 1262, 3, 1262, 3, 1262, 3, 1262, 3, 1262, 3, 1262, 3, 1262, 3, 1262, 3, 1262, 3, 1262, 3, 1262, 3, 1262, 3, 1262, 3, 1263, 3, 1263, 3, 1263, 3, 1263, 3, 1263, 3, 1263, 3, 1263, 3, 1263, 3, 1263, 3, 1263, 3, 1263, 3, 1263, 3, 1264, 3, 1264, 3, 1264, 3, 1264, 3, 1264, 3, 1264, 3, 1264, 3, 1264, 3, 1264, 3, 1264, 3, 1264, 3, 1264, 3, 1264, 3, 1264, 3, 1264, 3, 1264, 3, 1264, 3, 1264, 3, 1264, 3, 1264, 3, 1264, 3, 1265, 3, 1265, 3, 1265, 3, 1265, 3, 1265, 3, 1265, 3, 1265, 3, 1265, 3, 1265, 3, 1265, 3, 1265, 3, 1265, 3, 1265, 3, 1265, 3, 1265, 3, 1266, 3, 1266, 3, 1266, 3, 1266, 3, 1266, 3, 1266, 3, 1266, 3, 1266, 3, 1266, 3, 1266, 3, 1267, 3, 1267, 3, 1267, 3, 1267, 3, 1267, 3, 1267, 3, 1268, 3, 1268, 3, 1268, 3, 1268, 3, 1268, 3, 1268, 3, 1268, 3, 1269, 3, 1269, 3, 1269, 3, 1269, 3, 1269, 3, 1269, 3, 1269, 3, 1269, 3, 1269, 3, 1270, 3, 1270, 3, 1270, 3, 1270, 3, 1270, 3, 1270, 3, 1270, 3, 1270, 3, 1271, 3, 1271, 3, 1271, 3, 1271, 3, 1271, 3, 1271, 3, 1271, 3, 1271, 3, 1271, 3, 1272, 3, 1272, 3, 1272, 3, 1272, 3, 1272, 3, 1272, 3, 1272, 3, 1272, 3, 1273, 3, 1273, 3, 1273, 3, 1273, 3, 1273, 3, 1273, 3, 1273, 3, 1273, 3, 1274, 3, 1274, 3, 1274, 3, 1274, 3, 1274, 3, 1274, 3, 1274, 3, 1274, 3, 1274, 3, 1274, 3, 1275, 3, 1275, 3, 1275, 3, 1275, 3, 1275, 3, 1275, 3, 1275, 3, 1275, 3, 1275, 3, 1276, 3, 1276, 3, 1276, 3, 1276, 3, 1276, 3, 1276, 3, 1276, 3, 1276, 3, 1276, 3, 1276, 3, 1276, 3, 1276, 3, 1276, 3, 1276, 3, 1276, 3, 1276, 3, 1276, 3, 1277, 3, 1277, 3, 1277, 3, 1277, 3, 1277, 3, 1277, 3, 1277, 3, 1277, 3, 1277, 3, 1277, 3, 1277, 3, 1277, 3, 1277, 3, 1277, 3, 1277, 3, 1277, 3, 1277, 3, 1277, 3, 1277, 3, 1277, 3, 1277, 3, 1277, 3, 1277, 3, 1277, 3, 1277, 3, 1277, 3, 1277, 3, 1277, 3, 1277, 3, 1278, 3, 1278, 3, 1278, 3, 1278, 3, 1278, 3, 1278, 3, 1278, 3, 1278, 3, 1278, 3, 1278, 3, 1278, 3, 1278, 3, 1278, 3, 1278, 3, 1279, 3, 1279, 3, 1279, 3, 1279, 3, 1279, 3, 1279, 3, 1280, 3, 1280, 3, 1280, 3, 1280, 3, 1280, 3, 1280, 3, 1280, 3, 1280, 3, 1280, 3, 1280, 3, 1280, 3, 1280, 3, 1280, 3, 1280, 3, 1280, 3, 1280, 3, 1280, 3, 1280, 3, 1280, 3, 1280, 3, 1281, 3, 1281, 3, 1281, 3, 1281, 3, 1281, 3, 1281, 3, 1281, 3, 1281, 3, 1281, 3, 1281, 3, 1281, 3, 1281, 3, 1281, 3, 1281, 3, 1282, 3, 1282, 3, 1282, 3, 1282, 3, 1282, 3, 1282, 3, 1282, 3, 1282, 3, 1282, 3, 1282, 3, 1282, 3, 1282, 3, 1282, 3, 1282, 3, 1282, 3, 1282, 3, 1282, 3, 1282, 3, 1282, 3, 1282, 3, 1282, 3, 1283, 3, 1283, 3, 1283, 3, 1283, 3, 1283, 3, 1283, 3, 1283, 3, 1283, 3, 1283, 3, 1283, 3, 1284, 3, 1284, 3, 1284, 3, 1284, 3, 1284, 3, 1284, 3, 1284, 3, 1285, 3, 1285, 3, 1285, 3, 1285, 3, 1285, 3, 1285, 3, 1285, 3, 1285, 3, 1285, 3, 1286, 3, 1286, 3, 1286, 3, 1286, 3, 1286, 3, 1286, 3, 1286, 3, 1286, 3, 1286, 3, 1286, 3, 1286, 3, 1286, 3, 1286, 3, 1287, 3, 1287, 3, 1287, 3, 1287, 3, 1287, 3, 1287, 3, 1287, 3, 1287, 3, 1288, 3, 1288, 3, 1288, 3, 1288, 3, 1288, 3, 1288, 3, 1288, 3, 1289, 3, 1289, 3, 1289, 3, 1289, 3, 1289, 3, 1289, 3, 1289, 3, 1289, 3, 1289, 3, 1290, 3, 1290, 3, 1290, 3, 1290, 3, 1290, 3, 1290, 3, 1290, 3, 1290, 3, 1290, 3, 1291, 3, 1291, 3, 1291, 3, 1291, 3, 1291, 3, 1291, 3, 1291, 3, 1291, 3, 1291, 3, 1291, 3, 1292, 3, 1292, 3, 1292, 3, 1292, 3, 1292, 3, 1292, 3, 1292, 3, 1292, 3, 1292, 3, 1292, 3, 1293, 3, 1293, 3, 1293, 3, 1293, 3, 1293, 3, 1293, 3, 1293, 3, 1293, 3, 1293, 3, 1293, 3, 1293, 3, 1293, 3, 1293, 3, 1293, 3, 1293, 3, 1293, 3, 1293, 3, 1293, 3, 1293, 3, 1293, 3, 1294, 3, 1294, 3, 1294, 3, 1294, 3, 1294, 3, 1294, 3, 1294, 3, 1294, 3, 1294, 3, 1294, 3, 1294, 3, 1294, 3, 1294, 3, 1294, 3, 1294, 3, 1294, 3, 1294, 3, 1294, 3, 1294, 3, 1295, 3, 1295, 3, 1295, 3, 1295, 3, 1295, 3, 1295, 3, 1295, 3, 1295, 3, 1296, 3, 1296, 3, 1296, 3, 1296, 3, 1296, 3, 1296, 3, 1296, 3, 1296, 3, 1297, 3, 1297, 3, 1297, 3, 1297, 3, 1297, 3, 1297, 3, 1297, 3, 1297, 3, 1297, 3, 1297, 3, 1297, 3, 1298, 3, 1298, 3, 1298, 3, 1298, 3, 1298, 3, 1298, 3, 1298, 3, 1298, 3, 1299, 3, 1299, 3, 1299, 3, 1299, 3, 1299, 3, 1299, 3, 1299, 3, 1299, 3, 1299, 3, 1300, 3, 1300, 3, 1300, 3, 1300, 3, 1300, 3, 1300, 3, 1300, 3, 1300, 3, 1300, 3, 1300, 3, 1300, 3, 1300, 3, 1300, 3, 1301, 3, 1301, 3, 1301, 3, 1301, 3, 1301, 3, 1301, 3, 1301, 3, 1301, 3, 1301, 3, 1302, 3, 1302, 3, 1302, 3, 1302, 3, 1302, 3, 1302, 3, 1302, 3, 1303, 3, 1303, 3, 1303, 3, 1303, 3, 1303, 3, 1303, 3, 1303, 3, 1303, 3, 1303, 3, 1304, 3, 1304, 3, 1304, 3, 1304, 3, 1304, 3, 1305, 3, 1305, 3, 1305, 3, 1305, 3, 1305, 3, 1305, 3, 1305, 3, 1305, 3, 1306, 3, 1306, 3, 1306, 3, 1306, 3, 1306, 3, 1306, 3, 1306, 3, 1306, 3, 1306, 3, 1306, 3, 1306, 3, 1306, 3, 1306, 3, 1306, 3, 1306, 3, 1306, 3, 1307, 3, 1307, 3, 1307, 3, 1307, 3, 1307, 3, 1307, 3, 1307, 3, 1307, 3, 1307, 3, 1308, 3, 1308, 3, 1308, 3, 1308, 3, 1308, 3, 1308, 3, 1309, 3, 1309, 3, 1309, 3, 1309, 3, 1309, 3, 1309, 3, 1309, 3, 1309, 3, 1310, 3, 1310, 3, 1310, 3, 1310, 3, 1310, 3, 1310, 3, 1310, 3, 1310, 3, 1310, 3, 1310, 3, 1310, 3, 1310, 3, 1311, 3, 1311, 3, 1311, 3, 1311, 3, 1311, 3, 1311, 3, 1311, 3, 1311, 3, 1311, 3, 1311, 3, 1311, 3, 1312, 3, 1312, 3, 1312, 3, 1312, 3, 1312, 3, 1312, 3, 1312, 3, 1312, 3, 1312, 3, 1312, 3, 1313, 3, 1313, 3, 1313, 3, 1313, 3, 1313, 3, 1313, 3, 1313, 3, 1313, 3, 1313, 3, 1313, 3, 1313, 3, 1314, 3, 1314, 3, 1314, 3, 1314, 3, 1314, 3, 1314, 3, 1314, 3, 1314, 3, 1314, 3, 1314, 3, 1314, 3, 1315, 3, 1315, 3, 1315, 3, 1315, 3, 1315, 3, 1315, 3, 1315, 3, 1315, 3, 1315, 3, 1315, 3, 1316, 3, 1316, 3, 1316, 3, 1316, 3, 1316, 3, 1316, 3, 1316, 3, 1316, 3, 1317, 3, 1317, 3, 1317, 3, 1317, 3, 1317, 3, 1317, 3, 1317, 3, 1317, 3, 1318, 3, 1318, 3, 1318, 3, 1318, 3, 1318, 3, 1318, 3, 1318, 3, 1318, 3, 1319, 3, 1319, 3, 1319, 3, 1319, 3, 1319, 3, 1319, 3, 1319, 3, 1319, 3, 1320, 3, 1320, 3, 1320, 3, 1320, 3, 1320, 3, 1320, 3, 1320, 3, 1320, 3, 1320, 3, 1320, 3, 1321, 3, 1321, 3, 1321, 3, 1321, 3, 1321, 3, 1321, 3, 1321, 3, 1321, 3, 1321, 3, 1321, 3, 1322, 3, 1322, 3, 1322, 3, 1322, 3, 1322, 3, 1322, 3, 1322, 3, 1322, 3, 1322, 3, 1322, 3, 1322, 3, 1323, 3, 1323, 3, 1323, 3, 1323, 3, 1323, 3, 1323, 3, 1324, 3, 1324, 3, 1324, 3, 1324, 3, 1324, 3, 1324, 3, 1324, 3, 1324, 3, 1325, 3, 1325, 3, 1325, 3, 1325, 3, 1325, 3, 1325, 3, 1325, 3, 1326, 3, 1326, 3, 1326, 3, 1326, 3, 1326, 3, 1326, 3, 1326, 3, 1326, 3, 1326, 3, 1326, 3, 1327, 3, 1327, 3, 1327, 3, 1327, 3, 1327, 3, 1327, 3, 1328, 3, 1328, 3, 1328, 3, 1328, 3, 1328, 3, 1328, 3, 1328, 3, 1328, 3, 1328, 3, 1328, 3, 1329, 3, 1329, 3, 1329, 3, 1329, 3, 1329, 3, 1329, 3, 1329, 3, 1329, 3, 1329, 3, 1329, 3, 1330, 3, 1330, 3, 1330, 3, 1330, 3, 1330, 3, 1330, 3, 1330, 3, 1330, 3, 1330, 3, 1330, 3, 1330, 3, 1330, 3, 1330, 3, 1330, 3, 1330, 3, 1330, 3, 1330, 3, 1330, 3, 1330, 3, 1331, 3, 1331, 3, 1331, 3, 1331, 3, 1331, 3, 1331, 3, 1331, 3, 1331, 3, 1331, 3, 1331, 3, 1331, 3, 1332, 3, 1332, 3, 1332, 3, 1332, 3, 1332, 3, 1332, 3, 1332, 3, 1332, 3, 1332, 3, 1332, 3, 1332, 3, 1332, 3, 1332, 3, 1332, 3, 1332, 3, 1333, 3, 1333, 3, 1333, 3, 1333, 3, 1333, 3, 1333, 3, 1333, 3, 1333, 3, 1334, 3, 1334, 3, 1334, 3, 1334, 3, 1334, 3, 1334, 3, 1334, 3, 1334, 3, 1334, 3, 1334, 3, 1334, 3, 1334, 3, 1335, 3, 1335, 3, 1335, 3, 1335, 3, 1335, 3, 1335, 3, 1336, 3, 1336, 3, 1336, 3, 1336, 3, 1336, 3, 1336, 3, 1336, 3, 1336, 3, 1336, 3, 1336, 3, 1336, 3, 1337, 3, 1337, 3, 1337, 3, 1337, 3, 1337, 3, 1337, 3, 1338, 3, 1338, 3, 1338, 3, 1338, 3, 1338, 3, 1338, 3, 1338, 3, 1338, 3, 1338, 3, 1338, 3, 1338, 3, 1339, 3, 1339, 3, 1339, 3, 1339, 3, 1339, 3, 1339, 3, 1339, 3, 1339, 3, 1340, 3, 1340, 3, 1340, 3, 1340, 3, 1340, 3, 1340, 3, 1340, 3, 1341, 3, 1341, 3, 1341, 3, 1341, 3, 1341, 3, 1341, 3, 1342, 3, 1342, 3, 1342, 3, 1342, 3, 1342, 3, 1342, 3, 1343, 3, 1343, 3, 1343, 3, 1343, 3, 1343, 3, 1343, 3, 1343, 3, 1343, 3, 1343, 3, 1343, 3, 1343, 3, 1343, 3, 1343, 3, 1344, 3, 1344, 3, 1344, 3, 1344, 3, 1344, 3, 1344, 3, 1344, 3, 1345, 3, 1345, 3, 1345, 3, 1345, 3, 1345, 3, 1345, 3, 1346, 3, 1346, 3, 1346, 3, 1346, 3, 1346, 3, 1346, 3, 1347, 3, 1347, 3, 1347, 3, 1347, 3, 1347, 3, 1347, 3, 1347, 3, 1347, 3, 1348, 3, 1348, 3, 1348, 3, 1348, 3, 1349, 3, 1349, 3, 1349, 3, 1349, 3, 1349, 3, 1349, 3, 1349, 3, 1349, 3, 1349, 3, 1350, 3, 1350, 3, 1350, 3, 1350, 3, 1350, 3, 1350, 3, 1350, 3, 1350, 3, 1350, 3, 1350, 3, 1351, 3, 1351, 3, 1351, 3, 1351, 3, 1352, 3, 1352, 3, 1352, 3, 1352, 3, 1352, 3, 1352, 3, 1352, 3, 1352, 3, 1352, 3, 1352, 3, 1352, 3, 1352, 3, 1353, 3, 1353, 3, 1353, 3, 1353, 3, 1353, 3, 1354, 3, 1354, 3, 1354, 3, 1354, 3, 1354, 3, 1355, 3, 1355, 3, 1355, 3, 1355, 3, 1355, 3, 1355, 3, 1356, 3, 1356, 3, 1356, 3, 1356, 3, 1356, 3, 1356, 3, 1357, 3, 1357, 3, 1357, 3, 1357, 3, 1357, 3, 1358, 3, 1358, 3, 1358, 3, 1358, 3, 1358, 3, 1358, 3, 1358, 3, 1358, 3, 1358, 3, 1358, 3, 1359, 3, 1359, 3, 1359, 3, 1359, 3, 1359, 3, 1359, 3, 1359, 3, 1359, 3, 1360, 3, 1360, 3, 1360, 3, 1360, 3, 1360, 3, 1360, 3, 1360, 3, 1361, 3, 1361, 3, 1361, 3, 1361, 3, 1361, 3, 1361, 3, 1361, 3, 1361, 3, 1361, 3, 1361, 3, 1361, 3, 1361, 3, 1361, 3, 1361, 3, 1361, 3, 1361, 3, 1361, 3, 1361, 3, 1362, 3, 1362, 3, 1362, 3, 1362, 3, 1362, 3, 1362, 3, 1362, 3, 1362, 3, 1362, 3, 1362, 3, 1362, 3, 1362, 3, 1363, 3, 1363, 3, 1363, 3, 1363, 3, 1363, 3, 1363, 3, 1363, 3, 1363, 3, 1364, 3, 1364, 3, 1364, 3, 1364, 3, 1364, 3, 1364, 3, 1364, 3, 1364, 3, 1364, 3, 1365, 3, 1365, 3, 1365, 3, 1365, 3, 1365, 3, 1365, 3, 1365, 3, 1365, 3, 1365, 3, 1365, 3, 1365, 3, 1366, 3, 1366, 3, 1366, 3, 1366, 3, 1366, 3, 1366, 3, 1366, 3, 1366, 3, 1367, 3, 1367, 3, 1367, 3, 1367, 3, 1367, 3, 1367, 3, 1367, 3, 1367, 3, 1367, 3, 1367, 3, 1368, 3, 1368, 3, 1368, 3, 1368, 3, 1368, 3, 1368, 3, 1368, 3, 1368, 3, 1368, 3, 1369, 3, 1369, 3, 1369, 3, 1369, 3, 1369, 3, 1370, 3, 1370, 3, 1370, 3, 1370, 3, 1370, 3, 1370, 3, 1370, 3, 1370, 3, 1371, 3, 1371, 3, 1371, 3, 1371, 3, 1371, 3, 1371, 3, 1371, 3, 1371, 3, 1371, 3, 1371, 3, 1371, 3, 1372, 3, 1372, 3, 1372, 3, 1372, 3, 1372, 3, 1372, 3, 1372, 3, 1372, 3, 1372, 3, 1372, 3, 1372, 3, 1372, 3, 1372, 3, 1372, 3, 1372, 3, 1372, 3, 1372, 3, 1372, 3, 1372, 3, 1373, 3, 1373, 3, 1373, 3, 1373, 3, 1373, 3, 1373, 3, 1373, 3, 1373, 3, 1373, 3, 1373, 3, 1373, 3, 1374, 3, 1374, 3, 1374, 3, 1374, 3, 1374, 3, 1374, 3, 1374, 3, 1374, 3, 1374, 3, 1374, 3, 1375, 3, 1375, 3, 1375, 3, 1375, 3, 1375, 3, 1375, 3, 1375, 3, 1375, 3, 1375, 3, 1375, 3, 1375, 3, 1376, 3, 1376, 3, 1376, 3, 1376, 3, 1376, 3, 1376, 3, 1376, 3, 1376, 3, 1376, 3, 1376, 3, 1376, 3, 1376, 3, 1377, 3, 1377, 3, 1377, 3, 1377, 3, 1378, 3, 1378, 3, 1378, 3, 1378, 3, 1378, 3, 1378, 3, 1378, 3, 1378, 3, 1379, 3, 1379, 3, 1379, 3, 1379, 3, 1379, 3, 1379, 3, 1379, 3, 1379, 3, 1379, 3, 1380, 3, 1380, 3, 1380, 3, 1380, 3, 1380, 3, 1380, 3, 1380, 3, 1380, 3, 1380, 3, 1380, 3, 1380, 3, 1380, 3, 1380, 3, 1381, 3, 1381, 3, 1381, 3, 1381, 3, 1381, 3, 1381, 3, 1381, 3, 1381, 3, 1381, 3, 1381, 3, 1381, 3, 1381, 3, 1381, 3, 1382, 3, 1382, 3, 1382, 3, 1382, 3, 1382, 3, 1382, 3, 1382, 3, 1382, 3, 1382, 3, 1382, 3, 1382, 3, 1382, 3, 1383, 3, 1383, 3, 1383, 3, 1383, 3, 1383, 3, 1383, 3, 1383, 3, 1383, 3, 1383, 3, 1383, 3, 1383, 3, 1383, 3, 1383, 3, 1383, 3, 1383, 3, 1384, 3, 1384, 3, 1384, 3, 1384, 3, 1384, 3, 1384, 3, 1384, 3, 1384, 3, 1384, 3, 1384, 3, 1384, 3, 1384, 3, 1384, 3, 1384, 3, 1385, 3, 1385, 3, 1385, 3, 1385, 3, 1385, 3, 1385, 3, 1385, 3, 1385, 3, 1385, 3, 1386, 3, 1386, 3, 1386, 3, 1386, 3, 1386, 3, 1386, 3, 1386, 3, 1386, 3, 1386, 3, 1386, 3, 1387, 3, 1387, 3, 1387, 3, 1387, 3, 1387, 3, 1387, 3, 1387, 3, 1387, 3, 1387, 3, 1387, 3, 1388, 3, 1388, 3, 1388, 3, 1388, 3, 1388, 3, 1388, 3, 1388, 3, 1388, 3, 1388, 3, 1388, 3, 1388, 3, 1389, 3, 1389, 3, 1389, 3, 1389, 3, 1389, 3, 1389, 3, 1389, 3, 1389, 3, 1389, 3, 1389, 3, 1389, 3, 1389, 3, 1389, 3, 1389, 3, 1389, 3, 1390, 3, 1390, 3, 1390, 3, 1390, 3, 1390, 3, 1390, 3, 1390, 3, 1390, 3, 1391, 3, 1391, 3, 1391, 3, 1391, 3, 1391, 3, 1391, 3, 1391, 3, 1391, 3, 1391, 3, 1391, 3, 1391, 3, 1392, 3, 1392, 3, 1392, 3, 1392, 3, 1392, 3, 1392, 3, 1392, 3, 1392, 3, 1392, 3, 1393, 3, 1393, 3, 1393, 3, 1393, 3, 1393, 3, 1393, 3, 1393, 3, 1393, 3, 1393, 3, 1394, 3, 1394, 3, 1394, 3, 1394, 3, 1394, 3, 1394, 3, 1394, 3, 1394, 3, 1394, 3, 1395, 3, 1395, 3, 1395, 3, 1395, 3, 1395, 3, 1395, 3, 1395, 3, 1395, 3, 1396, 3, 1396, 3, 1396, 3, 1396, 3, 1396, 3, 1396, 3, 1396, 3, 1397, 3, 1397, 3, 1397, 3, 1397, 3, 1397, 3, 1397, 3, 1398, 3, 1398, 3, 1398, 3, 1398, 3, 1398, 3, 1398, 3, 1398, 3, 1398, 3, 1398, 3, 1398, 3, 1398, 3, 1399, 3, 1399, 3, 1399, 3, 1399, 3, 1399, 3, 1399, 3, 1399, 3, 1399, 3, 1399, 3, 1399, 3, 1400, 3, 1400, 3, 1400, 3, 1400, 3, 1400, 3, 1400, 3, 1400, 3, 1400, 3, 1400, 3, 1401, 3, 1401, 3, 1401, 3, 1401, 3, 1401, 3, 1402, 3, 1402, 3, 1402, 3, 1402, 3, 1402, 3, 1402, 3, 1402, 3, 1402, 3, 1402, 3, 1402, 3, 1403, 3, 1403, 3, 1403, 3, 1403, 3, 1403, 3, 1403, 3, 1403, 3, 1403, 3, 1403, 3, 1403, 3, 1403, 3, 1403, 3, 1403, 3, 1403, 3, 1404, 3, 1404, 3, 1404, 3, 1404, 3, 1404, 3, 1404, 3, 1404, 3, 1405, 3, 1405, 3, 1405, 3, 1405, 3, 1405, 3, 1405, 3, 1405, 3, 1406, 3, 1406, 3, 1406, 3, 1406, 3, 1406, 3, 1406, 3, 1406, 3, 1407, 3, 1407, 3, 1407, 3, 1407, 3, 1407, 3, 1407, 3, 1407, 3, 1408, 3, 1408, 3, 1408, 3, 1408, 3, 1408, 3, 1408, 3, 1408, 3, 1408, 3, 1409, 3, 1409, 3, 1409, 3, 1409, 3, 1409, 3, 1409, 3, 1409, 3, 1409, 3, 1409, 3, 1409, 3, 1409, 3, 1409, 3, 1410, 3, 1410, 3, 1410, 3, 1410, 3, 1410, 3, 1410, 3, 1410, 3, 1410, 3, 1410, 3, 1411, 3, 1411, 3, 1411, 3, 1411, 3, 1411, 3, 1411, 3, 1411, 3, 1411, 3, 1411, 3, 1411, 3, 1412, 3, 1412, 3, 1412, 3, 1412, 3, 1412, 3, 1412, 3, 1413, 3, 1413, 3, 1413, 3, 1413, 3, 1413, 3, 1413, 3, 1413, 3, 1414, 3, 1414, 3, 1414, 3, 1414, 3, 1414, 3, 1414, 3, 1414, 3, 1414, 3, 1415, 3, 1415, 3, 1415, 3, 1415, 3, 1415, 3, 1415, 3, 1415, 3, 1415, 3, 1415, 3, 1416, 3, 1416, 3, 1416, 3, 1416, 3, 1416, 3, 1416, 3, 1416, 3, 1416, 3, 1416, 3, 1417, 3, 1417, 3, 1417, 3, 1417, 3, 1417, 3, 1417, 3, 1417, 3, 1417, 3, 1418, 3, 1418, 3, 1418, 3, 1418, 3, 1418, 3, 1418, 3, 1418, 3, 1418, 3, 1419, 3, 1419, 3, 1419, 3, 1419, 3, 1419, 3, 1419, 3, 1419, 3, 1419, 3, 1419, 3, 1419, 3, 1419, 3, 1419, 3, 1419, 3, 1419, 3, 1419, 3, 1419, 3, 1419, 3, 1419, 3, 1419, 3, 1419, 3, 1419, 3, 1420, 3, 1420, 3, 1420, 3, 1420, 3, 1420, 3, 1420, 3, 1420, 3, 1420, 3, 1421, 3, 1421, 3, 1421, 3, 1421, 3, 1421, 3, 1421, 3, 1421, 3, 1421, 3, 1421, 3, 1421, 3, 1421, 3, 1421, 3, 1421, 3, 1421, 3, 1421, 3, 1421, 3, 1421, 3, 1421, 3, 1421, 3, 1421, 3, 1421, 3, 1421, 3, 1422, 3, 1422, 3, 1422, 3, 1422, 3, 1422, 3, 1422, 3, 1422, 3, 1422, 3, 1422, 3, 1422, 3, 1422, 3, 1423, 3, 1423, 3, 1423, 3, 1423, 3, 1423, 3, 1423, 3, 1423, 3, 1423, 3, 1423, 3, 1423, 3, 1423, 3, 1423, 3, 1423, 3, 1423, 3, 1423, 3, 1423, 3, 1423, 3, 1423, 3, 1423, 3, 1423, 3, 1424, 3, 1424, 3, 1424, 3, 1424, 3, 1424, 3, 1424, 3, 1424, 3, 1424, 3, 1424, 3, 1425, 3, 1425, 3, 1425, 3, 1425, 3, 1425, 3, 1425, 3, 1425, 3, 1425, 3, 1425, 3, 1425, 3, 1425, 3, 1425, 3, 1425, 3, 1426, 3, 1426, 3, 1426, 3, 1426, 3, 1426, 3, 1426, 3, 1426, 3, 1427, 3, 1427, 3, 1427, 3, 1427, 3, 1427, 3, 1427, 3, 1427, 3, 1427, 3, 1427, 3, 1427, 3, 1428, 3, 1428, 3, 1428, 3, 1428, 3, 1428, 3, 1428, 3, 1428, 3, 1429, 3, 1429, 3, 1429, 3, 1429, 3, 1429, 3, 1429, 3, 1429, 3, 1429, 3, 1429, 3, 1429, 3, 1430, 3, 1430, 3, 1430, 3, 1430, 3, 1430, 3, 1430, 3, 1430, 3, 1430, 3, 1430, 3, 1430, 3, 1430, 3, 1430, 3, 1430, 3, 1430, 3, 1430, 3, 1430, 3, 1430, 3, 1430, 3, 1430, 3, 1430, 3, 1431, 3, 1431, 3, 1431, 3, 1431, 3, 1431, 3, 1431, 3, 1431, 3, 1431, 3, 1431, 3, 1431, 3, 1432, 3, 1432, 3, 1432, 3, 1432, 3, 1432, 3, 1432, 3, 1432, 3, 1433, 3, 1433, 3, 1433, 3, 1433, 3, 1433, 3, 1433, 3, 1434, 3, 1434, 3, 1434, 3, 1434, 3, 1434, 3, 1434, 3, 1434, 3, 1434, 3, 1435, 3, 1435, 3, 1435, 3, 1435, 3, 1435, 3, 1435, 3, 1435, 3, 1436, 3, 1436, 3, 1436, 3, 1436, 3, 1436, 3, 1436, 3, 1436, 3, 1436, 3, 1436, 3, 1436, 3, 1436, 3, 1436, 3, 1436, 3, 1436, 3, 1436, 3, 1436, 3, 1436, 3, 1437, 3, 1437, 3, 1437, 3, 1437, 3, 1437, 3, 1437, 3, 1437, 3, 1437, 3, 1438, 3, 1438, 3, 1438, 3, 1438, 3, 1438, 3, 1438, 3, 1439, 3, 1439, 3, 1439, 3, 1439, 3, 1439, 3, 1440, 3, 1440, 3, 1440, 3, 1440, 3, 1440, 3, 1440, 3, 1440, 3, 1440, 3, 1441, 3, 1441, 3, 1441, 3, 1441, 3, 1441, 3, 1441, 3, 1442, 3, 1442, 3, 1442, 3, 1442, 3, 1442, 3, 1442, 3, 1442, 3, 1442, 3, 1442, 3, 1443, 3, 1443, 3, 1443, 3, 1443, 3, 1443, 3, 1443, 3, 1443, 3, 1443, 3, 1444, 3, 1444, 3, 1444, 3, 1444, 3, 1444, 3, 1444, 3, 1444, 3, 1445, 3, 1445, 3, 1445, 3, 1445, 3, 1445, 3, 1445, 3, 1445, 3, 1445, 3, 1445, 3, 1445, 3, 1445, 3, 1445, 3, 1445, 3, 1445, 3, 1445, 3, 1445, 3, 1446, 3, 1446, 3, 1446, 3, 1446, 3, 1446, 3, 1446, 3, 1446, 3, 1446, 3, 1446, 3, 1446, 3, 1446, 3, 1446, 3, 1446, 3, 1446, 3, 1446, 3, 1446, 3, 1446, 3, 1446, 3, 1446, 3, 1446, 3, 1447, 3, 1447, 3, 1447, 3, 1447, 3, 1447, 3, 1447, 3, 1448, 3, 1448, 3, 1448, 3, 1448, 3, 1448, 3, 1448, 3, 1448, 3, 1448, 3, 1448, 3, 1448, 3, 1448, 3, 1448, 3, 1449, 3, 1449, 3, 1449, 3, 1449, 3, 1449, 3, 1449, 3, 1449, 3, 1449, 3, 1449, 3, 1449, 3, 1449, 3, 1449, 3, 1449, 3, 1450, 3, 1450, 3, 1450, 3, 1450, 3, 1450, 3, 1450, 3, 1450, 3, 1450, 3, 1450, 3, 1450, 3, 1450, 3, 1451, 3, 1451, 3, 1451, 3, 1451, 3, 1451, 3, 1451, 3, 1451, 3, 1452, 3, 1452, 3, 1452, 3, 1452, 3, 1453, 3, 1453, 3, 1453, 3, 1453, 3, 1453, 3, 1454, 3, 1454, 3, 1454, 3, 1454, 3, 1454, 3, 1455, 3, 1455, 3, 1455, 3, 1455, 3, 1455, 3, 1455, 3, 1456, 3, 1456, 3, 1456, 3, 1456, 3, 1456, 3, 1457, 3, 1457, 3, 1457, 3, 1457, 3, 1457, 3, 1457, 3, 1458, 3, 1458, 3, 1458, 3, 1458, 3, 1458, 3, 1458, 3, 1458, 3, 1458, 3, 1459, 3, 1459, 3, 1459, 3, 1459, 3, 1459, 3, 1460, 3, 1460, 3, 1460, 3, 1460, 3, 1460, 3, 1460, 3, 1460, 3, 1461, 3, 1461, 3, 1461, 3, 1461, 3, 1461, 3, 1461, 3, 1461, 3, 1461, 3, 1461, 3, 1461, 3, 1461, 3, 1461, 3, 1461, 3, 1461, 3, 1461, 3, 1461, 3, 1461, 3, 1461, 3, 1462, 3, 1462, 3, 1462, 3, 1462, 3, 1462, 3, 1462, 3, 1462, 3, 1462, 3, 1462, 3, 1462, 3, 1463, 3, 1463, 3, 1463, 3, 1463, 3, 1463, 3, 1464, 3, 1464, 3, 1464, 3, 1464, 3, 1465, 3, 1465, 3, 1465, 3, 1465, 3, 1465, 3, 1465, 3, 1465, 3, 1465, 3, 1465, 3, 1465, 3, 1465, 3, 1466, 3, 1466, 3, 1466, 3, 1466, 3, 1466, 3, 1466, 3, 1467, 3, 1467, 3, 1467, 3, 1467, 3, 1467, 3, 1467, 3, 1467, 3, 1467, 3, 1467, 3, 1467, 3, 1467, 3, 1467, 3, 1467, 3, 1467, 3, 1467, 3, 1468, 3, 1468, 3, 1468, 3, 1468, 3, 1468, 3, 1469, 3, 1469, 3, 1469, 3, 1469, 3, 1469, 3, 1469, 3, 1469, 3, 1469, 3, 1469, 3, 1469, 3, 1470, 3, 1470, 3, 1470, 3, 1470, 3, 1470, 3, 1470, 3, 1470, 3, 1470, 3, 1470, 3, 1470, 3, 1470, 3, 1470, 3, 1471, 3, 1471, 3, 1471, 3, 1471, 3, 1471, 3, 1471, 3, 1471, 3, 1472, 3, 1472, 3, 1472, 3, 1472, 3, 1472, 3, 1472, 3, 1472, 3, 1472, 3, 1472, 3, 1472, 3, 1472, 3, 1472, 3, 1472, 3, 1472, 3, 1473, 3, 1473, 3, 1473, 3, 1473, 3, 1474, 3, 1474, 3, 1474, 3, 1474, 3, 1474, 3, 1474, 3, 1475, 3, 1475, 3, 1475, 3, 1475, 3, 1475, 3, 1475, 3, 1476, 3, 1476, 3, 1476, 3, 1476, 3, 1476, 3, 1476, 3, 1476, 3, 1477, 3, 1477, 3, 1477, 3, 1477, 3, 1477, 3, 1477, 3, 1477, 3, 1477, 3, 1477, 3, 1477, 3, 1477, 3, 1478, 3, 1478, 3, 1478, 3, 1478, 3, 1478, 3, 1478, 3, 1478, 3, 1478, 3, 1478, 3, 1478, 3, 1478, 3, 1478, 3, 1478, 3, 1479, 3, 1479, 3, 1479, 3, 1479, 3, 1479, 3, 1479, 3, 1479, 3, 1479, 3, 1480, 3, 1480, 3, 1480, 3, 1480, 3, 1480, 3, 1480, 3, 1480, 3, 1481, 3, 1481, 3, 1481, 3, 1481, 3, 1481, 3, 1481, 3, 1481, 3, 1482, 3, 1482, 3, 1482, 3, 1482, 3, 1482, 3, 1482, 3, 1482, 3, 1483, 3, 1483, 3, 1483, 3, 1483, 3, 1483, 3, 1483, 3, 1483, 3, 1483, 3, 1483, 3, 1483, 3, 1483, 3, 1483, 3, 1483, 3, 1483, 3, 1483, 3, 1484, 3, 1484, 3, 1484, 3, 1484, 3, 1484, 3, 1484, 3, 1484, 3, 1484, 3, 1484, 3, 1484, 3, 1484, 3, 1485, 3, 1485, 3, 1485, 3, 1485, 3, 1485, 3, 1485, 3, 1485, 3, 1485, 3, 1485, 3, 1486, 3, 1486, 3, 1486, 3, 1486, 3, 1486, 3, 1487, 3, 1487, 3, 1487, 3, 1487, 3, 1487, 3, 1487, 3, 1487, 3, 1487, 3, 1487, 3, 1487, 3, 1488, 3, 1488, 3, 1488, 3, 1488, 3, 1488, 3, 1488, 3, 1488, 3, 1488, 3, 1488, 3, 1489, 3, 1489, 3, 1489, 3, 1489, 3, 1489, 3, 1489, 3, 1489, 3, 1489, 3, 1490, 3, 1490, 3, 1490, 3, 1490, 3, 1490, 3, 1490, 3, 1490, 3, 1490, 3, 1490, 3, 1490, 3, 1490, 3, 1490, 3, 1491, 3, 1491, 3, 1491, 3, 1491, 3, 1491, 3, 1491, 3, 1491, 3, 1492, 3, 1492, 3, 1492, 3, 1492, 3, 1492, 3, 1493, 3, 1493, 3, 1493, 3, 1493, 3, 1493, 3, 1493, 3, 1493, 3, 1493, 3, 1493, 3, 1493, 3, 1493, 3, 1493, 3, 1493, 3, 1493, 3, 1493, 3, 1493, 3, 1494, 3, 1494, 3, 1494, 3, 1494, 3, 1494, 3, 1494, 3, 1494, 3, 1494, 3, 1494, 3, 1495, 3, 1495, 3, 1495, 3, 1495, 3, 1495, 3, 1495, 3, 1495, 3, 1495, 3, 1495, 3, 1495, 3, 1495, 3, 1495, 3, 1495, 3, 1495, 3, 1496, 3, 1496, 3, 1496, 3, 1496, 3, 1496, 3, 1496, 3, 1496, 3, 1496, 3, 1496, 3, 1496, 3, 1497, 3, 1497, 3, 1497, 3, 1497, 3, 1497, 3, 1497, 3, 1497, 3, 1497, 3, 1497, 3, 1498, 3, 1498, 3, 1498, 3, 1498, 3, 1498, 3, 1498, 3, 1498, 3, 1498, 3, 1498, 3, 1498, 3, 1498, 3, 1499, 3, 1499, 3, 1499, 3, 1499, 3, 1500, 3, 1500, 3, 1500, 3, 1500, 3, 1500, 3, 1500, 3, 1500, 3, 1500, 3, 1500, 3, 1500, 3, 1500, 3, 1500, 3, 1500, 3, 1501, 3, 1501, 3, 1501, 3, 1501, 3, 1501, 3, 1501, 3, 1501, 3, 1501, 3, 1501, 3, 1501, 3, 1501, 3, 1501, 3, 1501, 3, 1501, 3, 1501, 3, 1501, 3, 1501, 3, 1501, 3, 1502, 3, 1502, 3, 1502, 3, 1502, 3, 1502, 3, 1502, 3, 1502, 3, 1503, 3, 1503, 3, 1503, 3, 1503, 3, 1503, 3, 1503, 3, 1503, 3, 1503, 3, 1503, 3, 1503, 3, 1503, 3, 1503, 3, 1504, 3, 1504, 3, 1504, 3, 1504, 3, 1504, 3, 1504, 3, 1504, 3, 1504, 3, 1504, 3, 1504, 3, 1504, 3, 1504, 3, 1504, 3, 1504, 3, 1504, 3, 1504, 3, 1504, 3, 1504, 3, 1504, 3, 1504, 3, 1504, 3, 1505, 3, 1505, 3, 1505, 3, 1505, 3, 1505, 3, 1505, 3, 1505, 3, 1505, 3, 1505, 3, 1506, 3, 1506, 3, 1506, 3, 1506, 3, 1506, 3, 1506, 3, 1506, 3, 1506, 3, 1506, 3, 1506, 3, 1506, 3, 1506, 3, 1506, 3, 1506, 3, 1506, 3, 1506, 3, 1506, 3, 1506, 3, 1506, 3, 1506, 3, 1506, 3, 1506, 3, 1506, 3, 1507, 3, 1507, 3, 1507, 3, 1507, 3, 1507, 3, 1507, 3, 1507, 3, 1507, 3, 1508, 3, 1508, 3, 1508, 3, 1508, 3, 1508, 3, 1508, 3, 1508, 3, 1508, 3, 1508, 3, 1508, 3, 1508, 3, 1508, 3, 1508, 3, 1508, 3, 1508, 3, 1508, 3, 1508, 3, 1508, 3, 1509, 3, 1509, 3, 1509, 3, 1509, 3, 1509, 3, 1509, 3, 1509, 3, 1509, 3, 1509, 3, 1509, 3, 1509, 3, 1509, 3, 1509, 3, 1509, 3, 1509, 3, 1509, 3, 1510, 3, 1510, 3, 1510, 3, 1510, 3, 1510, 3, 1510, 3, 1510, 3, 1510, 3, 1510, 3, 1510, 3, 1510, 3, 1510, 3, 1510, 3, 1510, 3, 1511, 3, 1511, 3, 1511, 3, 1511, 3, 1512, 3, 1512, 3, 1512, 3, 1512, 3, 1512, 3, 1513, 3, 1513, 3, 1513, 3, 1513, 3, 1513, 3, 1513, 3, 1513, 3, 1513, 3, 1513, 3, 1514, 3, 1514, 3, 1514, 3, 1514, 3, 1514, 3, 1514, 3, 1514, 3, 1514, 3, 1514, 3, 1514, 3, 1514, 3, 1514, 3, 1515, 3, 1515, 3, 1515, 3, 1515, 3, 1515, 3, 1515, 3, 1515, 3, 1516, 3, 1516, 3, 1516, 3, 1516, 3, 1516, 3, 1516, 3, 1516, 3, 1516, 3, 1516, 3, 1516, 3, 1516, 3, 1516, 3, 1517, 3, 1517, 3, 1517, 3, 1517, 3, 1517, 3, 1517, 3, 1517, 3, 1518, 3, 1518, 3, 1518, 3, 1518, 3, 1518, 3, 1518, 3, 1519, 3, 1519, 3, 1519, 3, 1519, 3, 1519, 3, 1519, 3, 1519, 3, 1519, 3, 1520, 3, 1520, 3, 1520, 3, 1520, 3, 1520, 3, 1520, 3, 1520, 3, 1520, 3, 1520, 3, 1520, 3, 1521, 3, 1521, 3, 1521, 3, 1521, 3, 1521, 3, 1522, 3, 1522, 3, 1522, 3, 1522, 3, 1522, 3, 1522, 3, 1522, 3, 1523, 3, 1523, 3, 1523, 3, 1523, 3, 1523, 3, 1523, 3, 1523, 3, 1523, 3, 1523, 3, 1524, 3, 1524, 3, 1524, 3, 1524, 3, 1524, 3, 1524, 3, 1524, 3, 1524, 3, 1524, 3, 1525, 3, 1525, 3, 1525, 3, 1525, 3, 1526, 3, 1526, 3, 1526, 3, 1526, 3, 1526, 3, 1526, 3, 1526, 3, 1526, 3, 1526, 3, 1526, 3, 1526, 3, 1526, 3, 1526, 3, 1526, 3, 1526, 3, 1526, 3, 1526, 3, 1527, 3, 1527, 3, 1527, 3, 1527, 3, 1527, 3, 1527, 3, 1527, 3, 1527, 3, 1527, 3, 1527, 3, 1527, 3, 1527, 3, 1527, 3, 1527, 3, 1527, 3, 1527, 3, 1528, 3, 1528, 3, 1528, 3, 1528, 3, 1528, 3, 1529, 3, 1529, 3, 1529, 3, 1529, 3, 1529, 3, 1529, 3, 1529, 3, 1529, 3, 1529, 3, 1530, 3, 1530, 3, 1530, 3, 1530, 3, 1530, 3, 1530, 3, 1530, 3, 1530, 3, 1530, 3, 1530, 3, 1530, 3, 1530, 3, 1530, 3, 1530, 3, 1530, 3, 1531, 3, 1531, 3, 1531, 3, 1531, 3, 1531, 3, 1531, 3, 1531, 3, 1532, 3, 1532, 3, 1532, 3, 1532, 3, 1532, 3, 1532, 3, 1532, 3, 1533, 3, 1533, 3, 1533, 3, 1533, 3, 1533, 3, 1533, 3, 1533, 3, 1533, 3, 1533, 3, 1533, 3, 1533, 3, 1534, 3, 1534, 3, 1534, 3, 1534, 3, 1534, 3, 1535, 3, 1535, 3, 1535, 3, 1535, 3, 1536, 3, 1536, 3, 1536, 3, 1536, 3, 1536, 3, 1537, 3, 1537, 3, 1537, 3, 1537, 3, 1537, 3, 1537, 3, 1537, 3, 1537, 3, 1537, 3, 1537, 3, 1537, 3, 1537, 3, 1537, 3, 1537, 3, 1537, 3, 1537, 3, 1537, 3, 1537, 3, 1537, 3, 1538, 3, 1538, 3, 1538, 3, 1538, 3, 1538, 3, 1539, 3, 1539, 3, 1539, 3, 1539, 3, 1539, 3, 1539, 3, 1539, 3, 1539, 3, 1539, 3, 1539, 3, 1539, 3, 1539, 3, 1539, 3, 1539, 3, 1539, 3, 1539, 3, 1539, 3, 1539, 3, 1539, 3, 1539, 3, 1539, 3, 1539, 3, 1540, 3, 1540, 3, 1540, 3, 1540, 3, 1540, 3, 1540, 3, 1540, 3, 1540, 3, 1540, 3, 1540, 3, 1540, 3, 1540, 3, 1540, 3, 1540, 3, 1540, 3, 1540, 3, 1540, 3, 1540, 3, 1540, 3, 1540, 3, 1540, 3, 1540, 3, 1541, 3, 1541, 3, 1541, 3, 1541, 3, 1541, 3, 1541, 3, 1541, 3, 1541, 3, 1541, 3, 1541, 3, 1542, 3, 1542, 3, 1542, 3, 1542, 3, 1542, 3, 1542, 3, 1542, 3, 1542, 3, 1542, 3, 1543, 3, 1543, 3, 1543, 3, 1543, 3, 1543, 3, 1543, 3, 1543, 3, 1543, 3, 1543, 3, 1544, 3, 1544, 3, 1544, 3, 1544, 3, 1544, 3, 1545, 3, 1545, 3, 1545, 3, 1545, 3, 1545, 3, 1546, 3, 1546, 3, 1546, 3, 1546, 3, 1546, 3, 1546, 3, 1546, 3, 1546, 3, 1547, 3, 1547, 3, 1547, 3, 1547, 3, 1547, 3, 1547, 3, 1547, 3, 1547, 3, 1547, 3, 1547, 3, 1547, 3, 1547, 3, 1547, 3, 1547, 3, 1547, 3, 1547, 3, 1547, 3, 1547, 3, 1547, 3, 1547, 3, 1547, 3, 1547, 3, 1548, 3, 1548, 3, 1548, 3, 1548, 3, 1548, 3, 1548, 3, 1548, 3, 1548, 3, 1548, 3, 1548, 3, 1548, 3, 1548, 3, 1548, 3, 1548, 3, 1548, 3, 1548, 3, 1548, 3, 1548, 3, 1548, 3, 1548, 3, 1548, 3, 1548, 3, 1548, 3, 1548, 3, 1548, 3, 1549, 3, 1549, 3, 1549, 3, 1549, 3, 1549, 3, 1549, 3, 1549, 3, 1550, 3, 1550, 3, 1550, 3, 1550, 3, 1550, 3, 1550, 3, 1551, 3, 1551, 3, 1551, 3, 1551, 3, 1551, 3, 1551, 3, 1551, 3, 1551, 3, 1551, 3, 1551, 3, 1551, 3, 1551, 3, 1551, 3, 1551, 3, 1552, 3, 1552, 3, 1552, 3, 1552, 3, 1552, 3, 1552, 3, 1552, 3, 1553, 3, 1553, 3, 1553, 3, 1553, 3, 1553, 3, 1553, 3, 1554, 3, 1554, 3, 1554, 3, 1554, 3, 1554, 3, 1554, 3, 1554, 3, 1554, 3, 1554, 3, 1554, 3, 1554, 3, 1554, 3, 1555, 3, 1555, 3, 1555, 3, 1555, 3, 1555, 3, 1555, 3, 1555, 3, 1555, 3, 1556, 3, 1556, 3, 1556, 3, 1556, 3, 1556, 3, 1556, 3, 1556, 3, 1556, 3, 1556, 3, 1557, 3, 1557, 3, 1557, 3, 1557, 3, 1557, 3, 1557, 3, 1557, 3, 1558, 3, 1558, 3, 1558, 3, 1558, 3, 1559, 3, 1559, 3, 1559, 3, 1559, 3, 1559, 3, 1559, 3, 1559, 3, 1559, 3, 1559, 3, 1559, 3, 1560, 3, 1560, 3, 1560, 3, 1560, 3, 1560, 3, 1560, 3, 1560, 3, 1560, 3, 1560, 3, 1560, 3, 1560, 3, 1560, 3, 1560, 3, 1560, 3, 1560, 3, 1560, 3, 1560, 3, 1560, 3, 1560, 3, 1560, 3, 1560, 3, 1560, 3, 1560, 3, 1560, 3, 1561, 3, 1561, 3, 1561, 3, 1561, 3, 1561, 3, 1562, 3, 1562, 3, 1562, 3, 1562, 3, 1562, 3, 1562, 3, 1563, 3, 1563, 3, 1563, 3, 1563, 3, 1563, 3, 1563, 3, 1563, 3, 1563, 3, 1563, 3, 1563, 3, 1563, 3, 1564, 3, 1564, 3, 1564, 3, 1564, 3, 1564, 3, 1564, 3, 1564, 3, 1564, 3, 1564, 3, 1564, 3, 1564, 3, 1564, 3, 1564, 3, 1564, 3, 1565, 3, 1565, 3, 1565, 3, 1565, 3, 1565, 3, 1565, 3, 1565, 3, 1565, 3, 1565, 3, 1565, 3, 1565, 3, 1565, 3, 1565, 3, 1565, 3, 1565, 3, 1565, 3, 1565, 3, 1565, 3, 1565, 3, 1565, 3, 1565, 3, 1565, 3, 1565, 3, 1566, 3, 1566, 3, 1566, 3, 1566, 3, 1566, 3, 1566, 3, 1566, 3, 1566, 3, 1566, 3, 1567, 3, 1567, 3, 1567, 3, 1567, 3, 1567, 3, 1567, 3, 1567, 3, 1567, 3, 1568, 3, 1568, 3, 1568, 3, 1568, 3, 1568, 3, 1569, 3, 1569, 3, 1569, 3, 1569, 3, 1569, 3, 1569, 3, 1569, 3, 1569, 3, 1569, 3, 1569, 3, 1569, 3, 1569, 3, 1569, 3, 1569, 3, 1569, 3, 1569, 3, 1569, 3, 1569, 3, 1569, 3, 1569, 3, 1570, 3, 1570, 3, 1570, 3, 1570, 3, 1570, 3, 1570, 3, 1571, 3, 1571, 3, 1571, 3, 1571, 3, 1571, 3, 1571, 3, 1571, 3, 1571, 3, 1572, 3, 1572, 3, 1572, 3, 1572, 3, 1572, 3, 1572, 3, 1572, 3, 1572, 3, 1572, 3, 1572, 3, 1572, 3, 1572, 3, 1572, 3, 1573, 3, 1573, 3, 1573, 3, 1573, 3, 1573, 3, 1573, 3, 1573, 3, 1573, 3, 1573, 3, 1573, 3, 1573, 3, 1573, 3, 1573, 3, 1573, 3, 1573, 3, 1573, 3, 1573, 3, 1573, 3, 1574, 3, 1574, 3, 1574, 3, 1574, 3, 1574, 3, 1574, 3, 1574, 3, 1574, 3, 1574, 3, 1574, 3, 1574, 3, 1575, 3, 1575, 3, 1575, 3, 1575, 3, 1575, 3, 1575, 3, 1575, 3, 1575, 3, 1575, 3, 1575, 3, 1576, 3, 1576, 3, 1576, 3, 1576, 3, 1576, 3, 1576, 3, 1577, 3, 1577, 3, 1577, 3, 1577, 3, 1577, 3, 1577, 3, 1577, 3, 1578, 3, 1578, 3, 1578, 3, 1578, 3, 1578, 3, 1578, 3, 1578, 3, 1578, 3, 1578, 3, 1578, 3, 1578, 3, 1579, 3, 1579, 3, 1579, 3, 1579, 3, 1579, 3, 1579, 3, 1579, 3, 1579, 3, 1579, 3, 1579, 3, 1579, 3, 1579, 3, 1579, 3, 1579, 3, 1579, 3, 1579, 3, 1579, 3, 1579, 3, 1579, 3, 1579, 3, 1580, 3, 1580, 3, 1580, 3, 1580, 3, 1580, 3, 1580, 3, 1580, 3, 1580, 3, 1580, 3, 1580, 3, 1580, 3, 1580, 3, 1580, 3, 1580, 3, 1580, 3, 1581, 3, 1581, 3, 1581, 3, 1581, 3, 1581, 3, 1581, 3, 1581, 3, 1581, 3, 1581, 3, 1581, 3, 1581, 3, 1581, 3, 1581, 3, 1582, 3, 1582, 3, 1582, 3, 1582, 3, 1582, 3, 1582, 3, 1582, 3, 1582, 3, 1582, 3, 1582, 3, 1582, 3, 1582, 3, 1582, 3, 1582, 3, 1583, 3, 1583, 3, 1583, 3, 1583, 3, 1583, 3, 1583, 3, 1583, 3, 1583, 3, 1583, 3, 1583, 3, 1583, 3, 1584, 3, 1584, 3, 1584, 3, 1584, 3, 1584, 3, 1584, 3, 1584, 3, 1584, 3, 1584, 3, 1584, 3, 1584, 3, 1584, 3, 1584, 3, 1584, 3, 1585, 3, 1585, 3, 1585, 3, 1585, 3, 1585, 3, 1585, 3, 1585, 3, 1585, 3, 1585, 3, 1585, 3, 1585, 3, 1585, 3, 1585, 3, 1585, 3, 1585, 3, 1585, 3, 1585, 3, 1585, 3, 1585, 3, 1585, 3, 1586, 3, 1586, 3, 1586, 3, 1586, 3, 1586, 3, 1586, 3, 1586, 3, 1586, 3, 1586, 3, 1586, 3, 1586, 3, 1586, 3, 1586, 3, 1586, 3, 1586, 3, 1586, 3, 1586, 3, 1586, 3, 1586, 3, 1587, 3, 1587, 3, 1587, 3, 1587, 3, 1587, 3, 1587, 3, 1587, 3, 1587, 3, 1587, 3, 1587, 3, 1587, 3, 1587, 3, 1587, 3, 1587, 3, 1587, 3, 1587, 3, 1587, 3, 1587, 3, 1587, 3, 1587, 3, 1588, 3, 1588, 3, 1588, 3, 1588, 3, 1588, 3, 1588, 3, 1588, 3, 1588, 3, 1588, 3, 1588, 3, 1588, 3, 1588, 3, 1588, 3, 1588, 3, 1588, 3, 1588, 3, 1588, 3, 1589, 3, 1589, 3, 1589, 3, 1589, 3, 1589, 3, 1589, 3, 1589, 3, 1589, 3, 1589, 3, 1589, 3, 1589, 3, 1589, 3, 1589, 3, 1589, 3, 1589, 3, 1589, 3, 1589, 3, 1589, 3, 1589, 3, 1589, 3, 1590, 3, 1590, 3, 1590, 3, 1590, 3, 1590, 3, 1590, 3, 1590, 3, 1590, 3, 1590, 3, 1590, 3, 1590, 3, 1590, 3, 1590, 3, 1590, 3, 1590, 3, 1591, 3, 1591, 3, 1591, 3, 1591, 3, 1591, 3, 1591, 3, 1591, 3, 1591, 3, 1591, 3, 1591, 3, 1591, 3, 1592, 3, 1592, 3, 1592, 3, 1592, 3, 1592, 3, 1592, 3, 1592, 3, 1592, 3, 1592, 3, 1592, 3, 1592, 3, 1592, 3, 1593, 3, 1593, 3, 1593, 3, 1593, 3, 1593, 3, 1594, 3, 1594, 3, 1594, 3, 1594, 3, 1594, 3, 1594, 3, 1594, 3, 1594, 3, 1595, 3, 1595, 3, 1595, 3, 1595, 3, 1595, 3, 1595, 3, 1596, 3, 1596, 3, 1596, 3, 1596, 3, 1596, 3, 1596, 3, 1596, 3, 1596, 3, 1597, 3, 1597, 3, 1597, 3, 1597, 3, 1597, 3, 1597, 3, 1597, 3, 1598, 3, 1598, 3, 1598, 3, 1598, 3, 1598, 3, 1598, 3, 1598, 3, 1599, 3, 1599, 3, 1599, 3, 1599, 3, 1599, 3, 1599, 3, 1599, 3, 1600, 3, 1600, 3, 1600, 3, 1600, 3, 1600, 3, 1600, 3, 1600, 3, 1600, 3, 1600, 3, 1600, 3, 1600, 3, 1600, 3, 1600, 3, 1600, 3, 1600, 3, 1601, 3, 1601, 3, 1601, 3, 1601, 3, 1601, 3, 1601, 3, 1601, 3, 1601, 3, 1601, 3, 1601, 3, 1601, 3, 1601, 3, 1601, 3, 1602, 3, 1602, 3, 1602, 3, 1602, 3, 1602, 3, 1602, 3, 1603, 3, 1603, 3, 1603, 3, 1603, 3, 1603, 3, 1603, 3, 1603, 3, 1603, 3, 1603, 3, 1603, 3, 1604, 3, 1604, 3, 1604, 3, 1604, 3, 1604, 3, 1604, 3, 1604, 3, 1604, 3, 1604, 3, 1604, 3, 1604, 3, 1604, 3, 1605, 3, 1605, 3, 1605, 3, 1605, 3, 1605, 3, 1605, 3, 1605, 3, 1605, 3, 1605, 3, 1605, 3, 1605, 3, 1605, 3, 1605, 3, 1605, 3, 1605, 3, 1605, 3, 1605, 3, 1606, 3, 1606, 3, 1606, 3, 1606, 3, 1606, 3, 1606, 3, 1606, 3, 1606, 3, 1606, 3, 1606, 3, 1606, 3, 1606, 3, 1606, 3, 1606, 3, 1607, 3, 1607, 3, 1607, 3, 1607, 3, 1607, 3, 1607, 3, 1607, 3, 1607, 3, 1607, 3, 1607, 3, 1607, 3, 1607, 3, 1607, 3, 1608, 3, 1608, 3, 1608, 3, 1608, 3, 1608, 3, 1608, 3, 1608, 3, 1608, 3, 1608, 3, 1608, 3, 1608, 3, 1609, 3, 1609, 3, 1609, 3, 1609, 3, 1609, 3, 1609, 3, 1609, 3, 1609, 3, 1609, 3, 1609, 3, 1609, 3, 1609, 3, 1609, 3, 1609, 3, 1609, 3, 1609, 3, 1609, 3, 1610, 3, 1610, 3, 1610, 3, 1610, 3, 1610, 3, 1610, 3, 1610, 3, 1610, 3, 1610, 3, 1610, 3, 1611, 3, 1611, 3, 1611, 3, 1611, 3, 1611, 3, 1611, 3, 1611, 3, 1612, 3, 1612, 3, 1612, 3, 1612, 3, 1612, 3, 1612, 3, 1612, 3, 1612, 3, 1612, 3, 1612, 3, 1612, 3, 1612, 3, 1612, 3, 1612, 3, 1613, 3, 1613, 3, 1613, 3, 1613, 3, 1613, 3, 1613, 3, 1613, 3, 1613, 3, 1614, 3, 1614, 3, 1614, 3, 1614, 3, 1614, 3, 1614, 3, 1614, 3, 1614, 3, 1615, 3, 1615, 3, 1615, 3, 1615, 3, 1615, 3, 1615, 3, 1615, 3, 1615, 3, 1616, 3, 1616, 3, 1616, 3, 1616, 3, 1616, 3, 1616, 3, 1616, 3, 1616, 3, 1617, 3, 1617, 3, 1617, 3, 1617, 3, 1617, 3, 1617, 3, 1617, 3, 1617, 3, 1618, 3, 1618, 3, 1618, 3, 1618, 3, 1618, 3, 1618, 3, 1618, 3, 1618, 3, 1618, 3, 1618, 3, 1618, 3, 1619, 3, 1619, 3, 1619, 3, 1619, 3, 1619, 3, 1619, 3, 1619, 3, 1619, 3, 1620, 3, 1620, 3, 1620, 3, 1620, 3, 1620, 3, 1620, 3, 1620, 3, 1620, 3, 1621, 3, 1621, 3, 1621, 3, 1621, 3, 1621, 3, 1621, 3, 1621, 3, 1621, 3, 1621, 3, 1621, 3, 1621, 3, 1621, 3, 1621, 3, 1622, 3, 1622, 3, 1622, 3, 1622, 3, 1622, 3, 1622, 3, 1622, 3, 1622, 3, 1623, 3, 1623, 3, 1623, 3, 1623, 3, 1623, 3, 1623, 3, 1623, 3, 1623, 3, 1623, 3, 1623, 3, 1623, 3, 1623, 3, 1623, 3, 1623, 3, 1623, 3, 1623, 3, 1623, 3, 1624, 3, 1624, 3, 1624, 3, 1624, 3, 1624, 3, 1624, 3, 1624, 3, 1624, 3, 1624, 3, 1624, 3, 1624, 3, 1625, 3, 1625, 3, 1625, 3, 1625, 3, 1625, 3, 1625, 3, 1625, 3, 1626, 3, 1626, 3, 1626, 3, 1626, 3, 1626, 3, 1626, 3, 1626, 3, 1626, 3, 1626, 3, 1626, 3, 1626, 3, 1626, 3, 1627, 3, 1627, 3, 1627, 3, 1627, 3, 1627, 3, 1628, 3, 1628, 3, 1628, 3, 1628, 3, 1628, 3, 1628, 3, 1628, 3, 1628, 3, 1629, 3, 1629, 3, 1629, 3, 1629, 3, 1629, 3, 1629, 3, 1629, 3, 1630, 3, 1630, 3, 1630, 3, 1630, 3, 1630, 3, 1630, 3, 1630, 3, 1630, 3, 1630, 3, 1630, 3, 1631, 3, 1631, 3, 1631, 3, 1631, 3, 1631, 3, 1631, 3, 1631, 3, 1632, 3, 1632, 3, 1632, 3, 1632, 3, 1632, 3, 1632, 3, 1632, 3, 1632, 3, 1632, 3, 1632, 3, 1633, 3, 1633, 3, 1633, 3, 1633, 3, 1633, 3, 1633, 3, 1633, 3, 1633, 3, 1633, 3, 1633, 3, 1633, 3, 1633, 3, 1633, 3, 1634, 3, 1634, 3, 1634, 3, 1634, 3, 1634, 3, 1634, 3, 1634, 3, 1634, 3, 1634, 3, 1634, 3, 1634, 3, 1634, 3, 1634, 3, 1634, 3, 1634, 3, 1634, 3, 1634, 3, 1634, 3, 1634, 3, 1634, 3, 1635, 3, 1635, 3, 1635, 3, 1635, 3, 1635, 3, 1635, 3, 1635, 3, 1635, 3, 1635, 3, 1635, 3, 1635, 3, 1635, 3, 1635, 3, 1635, 3, 1635, 3, 1635, 3, 1635, 3, 1635, 3, 1635, 3, 1635, 3, 1636, 3, 1636, 3, 1636, 3, 1636, 3, 1636, 3, 1636, 3, 1636, 3, 1636, 3, 1636, 3, 1636, 3, 1636, 3, 1636, 3, 1637, 3, 1637, 3, 1637, 3, 1637, 3, 1637, 3, 1637, 3, 1637, 3, 1637, 3, 1638, 3, 1638, 3, 1638, 3, 1638, 3, 1638, 3, 1638, 3, 1638, 3, 1639, 3, 1639, 3, 1639, 3, 1639, 3, 1639, 3, 1639, 3, 1639, 3, 1639, 3, 1639, 3, 1639, 3, 1639, 3, 1639, 3, 1639, 3, 1640, 3, 1640, 3, 1640, 3, 1640, 3, 1640, 3, 1640, 3, 1641, 3, 1641, 3, 1641, 3, 1641, 3, 1641, 3, 1641, 3, 1641, 3, 1641, 3, 1641, 3, 1641, 3, 1641, 3, 1641, 3, 1641, 3, 1641, 3, 1642, 3, 1642, 3, 1642, 3, 1642, 3, 1642, 3, 1642, 3, 1642, 3, 1642, 3, 1642, 3, 1642, 3, 1642, 3, 1642, 3, 1642, 3, 1642, 3, 1642, 3, 1642, 3, 1642, 3, 1642, 3, 1643, 3, 1643, 3, 1643, 3, 1643, 3, 1643, 3, 1643, 3, 1643, 3, 1643, 3, 1643, 3, 1643, 3, 1643, 3, 1643, 3, 1643, 3, 1643, 3, 1643, 3, 1643, 3, 1643, 3, 1643, 3, 1644, 3, 1644, 3, 1644, 3, 1644, 3, 1644, 3, 1644, 3, 1644, 3, 1644, 3, 1644, 3, 1644, 3, 1644, 3, 1644, 3, 1644, 3, 1644, 3, 1644, 3, 1644, 3, 1645, 3, 1645, 3, 1645, 3, 1645, 3, 1645, 3, 1645, 3, 1645, 3, 1645, 3, 1645, 3, 1645, 3, 1645, 3, 1645, 3, 1645, 3, 1645, 3, 1645, 3, 1645, 3, 1645, 3, 1646, 3, 1646, 3, 1646, 3, 1646, 3, 1646, 3, 1646, 3, 1646, 3, 1646, 3, 1646, 3, 1646, 3, 1646, 3, 1646, 3, 1646, 3, 1646, 3, 1646, 3, 1646, 3, 1646, 3, 1647, 3, 1647, 3, 1647, 3, 1647, 3, 1647, 3, 1647, 3, 1647, 3, 1647, 3, 1647, 3, 1647, 3, 1647, 3, 1647, 3, 1647, 3, 1647, 3, 1647, 3, 1647, 3, 1647, 3, 1647, 3, 1647, 3, 1647, 3, 1648, 3, 1648, 3, 1648, 3, 1648, 3, 1648, 3, 1648, 3, 1648, 3, 1648, 3, 1648, 3, 1648, 3, 1648, 3, 1648, 3, 1648, 3, 1648, 3, 1648, 3, 1648, 3, 1648, 3, 1648, 3, 1648, 3, 1648, 3, 1648, 3, 1649, 3, 1649, 3, 1649, 3, 1649, 3, 1649, 3, 1649, 3, 1649, 3, 1649, 3, 1649, 3, 1649, 3, 1649, 3, 1649, 3, 1649, 3, 1649, 3, 1649, 3, 1649, 3, 1649, 3, 1649, 3, 1649, 3, 1649, 3, 1649, 3, 1650, 3, 1650, 3, 1650, 3, 1650, 3, 1650, 3, 1650, 3, 1650, 3, 1650, 3, 1650, 3, 1650, 3, 1650, 3, 1650, 3, 1650, 3, 1650, 3, 1650, 3, 1650, 3, 1650, 3, 1650, 3, 1650, 3, 1650, 3, 1651, 3, 1651, 3, 1651, 3, 1651, 3, 1651, 3, 1651, 3, 1651, 3, 1651, 3, 1651, 3, 1651, 3, 1651, 3, 1651, 3, 1651, 3, 1652, 3, 1652, 3, 1652, 3, 1652, 3, 1652, 3, 1652, 3, 1652, 3, 1652, 3, 1652, 3, 1652, 3, 1652, 3, 1652, 3, 1652, 3, 1652, 3, 1652, 3, 1652, 3, 1653, 3, 1653, 3, 1653, 3, 1653, 3, 1653, 3, 1653, 3, 1653, 3, 1653, 3, 1653, 3, 1653, 3, 1653, 3, 1653, 3, 1653, 3, 1653, 3, 1653, 3, 1654, 3, 1654, 3, 1654, 3, 1654, 3, 1654, 3, 1654, 3, 1654, 3, 1654, 3, 1654, 3, 1654, 3, 1654, 3, 1654, 3, 1654, 3, 1654, 3, 1654, 3, 1654, 3, 1655, 3, 1655, 3, 1655, 3, 1655, 3, 1655, 3, 1655, 3, 1655, 3, 1655, 3, 1655, 3, 1655, 3, 1655, 3, 1655, 3, 1655, 3, 1655, 3, 1656, 3, 1656, 3, 1656, 3, 1656, 3, 1656, 3, 1656, 3, 1656, 3, 1656, 3, 1656, 3, 1656, 3, 1656, 3, 1656, 3, 1656, 3, 1656, 3, 1657, 3, 1657, 3, 1657, 3, 1657, 3, 1657, 3, 1657, 3, 1657, 3, 1657, 3, 1657, 3, 1657, 3, 1657, 3, 1657, 3, 1657, 3, 1657, 3, 1657, 3, 1658, 3, 1658, 3, 1658, 3, 1658, 3, 1658, 3, 1658, 3, 1658, 3, 1658, 3, 1658, 3, 1658, 3, 1658, 3, 1658, 3, 1658, 3, 1658, 3, 1658, 3, 1658, 3, 1658, 3, 1658, 3, 1658, 3, 1659, 3, 1659, 3, 1659, 3, 1659, 3, 1659, 3, 1659, 3, 1659, 3, 1659, 3, 1659, 3, 1659, 3, 1659, 3, 1659, 3, 1659, 3, 1659, 3, 1659, 3, 1659, 3, 1659, 3, 1659, 3, 1659, 3, 1660, 3, 1660, 3, 1660, 3, 1660, 3, 1660, 3, 1660, 3, 1660, 3, 1660, 3, 1660, 3, 1660, 3, 1660, 3, 1660, 3, 1660, 3, 1660, 3, 1660, 3, 1661, 3, 1661, 3, 1661, 3, 1661, 3, 1661, 3, 1661, 3, 1661, 3, 1661, 3, 1661, 3, 1661, 3, 1661, 3, 1661, 3, 1661, 3, 1661, 3, 1662, 3, 1662, 3, 1662, 3, 1662, 3, 1662, 3, 1662, 3, 1662, 3, 1662, 3, 1662, 3, 1663, 3, 1663, 3, 1663, 3, 1663, 3, 1663, 3, 1663, 3, 1663, 3, 1663, 3, 1664, 3, 1664, 3, 1664, 3, 1664, 3, 1664, 3, 1664, 3, 1665, 3, 1665, 3, 1665, 3, 1665, 3, 1665, 3, 1665, 3, 1665, 3, 1665, 3, 1665, 3, 1665, 3, 1665, 3, 1665, 3, 1665, 3, 1665, 3, 1665, 3, 1665, 3, 1665, 3, 1665, 3, 1665, 3, 1666, 3, 1666, 3, 1666, 3, 1666, 3, 1666, 3, 1666, 3, 1666, 3, 1666, 3, 1666, 3, 1666, 3, 1666, 3, 1666, 3, 1667, 3, 1667, 3, 1667, 3, 1667, 3, 1667, 3, 1667, 3, 1667, 3, 1667, 3, 1667, 3, 1667, 3, 1667, 3, 1667, 3, 1667, 3, 1667, 3, 1668, 3, 1668, 3, 1668, 3, 1668, 3, 1668, 3, 1668, 3, 1668, 3, 1668, 3, 1668, 3, 1668, 3, 1669, 3, 1669, 3, 1669, 3, 1669, 3, 1669, 3, 1669, 3, 1669, 3, 1670, 3, 1670, 3, 1670, 3, 1670, 3, 1670, 3, 1670, 3, 1670, 3, 1670, 3, 1670, 3, 1670, 3, 1670, 3, 1670, 3, 1670, 3, 1670, 3, 1670, 3, 1671, 3, 1671, 3, 1671, 3, 1671, 3, 1671, 3, 1671, 3, 1671, 3, 1671, 3, 1671, 3, 1671, 3, 1671, 3, 1671, 3, 1671, 3, 1671, 3, 1671, 3, 1672, 3, 1672, 3, 1672, 3, 1672, 3, 1672, 3, 1672, 3, 1672, 3, 1672, 3, 1672, 3, 1672, 3, 1672, 3, 1672, 3, 1672, 3, 1672, 3, 1672, 3, 1672, 3, 1673, 3, 1673, 3, 1673, 3, 1673, 3, 1673, 3, 1673, 3, 1673, 3, 1673, 3, 1673, 3, 1673, 3, 1673, 3, 1674, 3, 1674, 3, 1674, 3, 1674, 3, 1674, 3, 1674, 3, 1674, 3, 1674, 3, 1674, 3, 1674, 3, 1674, 3, 1674, 3, 1674, 3, 1674, 3, 1674, 3, 1675, 3, 1675, 3, 1675, 3, 1675, 3, 1675, 3, 1675, 3, 1675, 3, 1675, 3, 1675, 3, 1675, 3, 1675, 3, 1675, 3, 1675, 3, 1675, 3, 1676, 3, 1676, 3, 1676, 3, 1676, 3, 1676, 3, 1676, 3, 1676, 3, 1676, 3, 1676, 3, 1676, 3, 1676, 3, 1676, 3, 1677, 3, 1677, 3, 1677, 3, 1677, 3, 1677, 3, 1677, 3, 1677, 3, 1677, 3, 1677, 3, 1677, 3, 1677, 3, 1677, 3, 1677, 3, 1677, 3, 1677, 3, 1677, 3, 1677, 3, 1677, 3, 1677, 3, 1677, 3, 1677, 3, 1677, 3, 1677, 3, 1677, 3, 1677, 3, 1678, 3, 1678, 3, 1678, 3, 1678, 3, 1678, 3, 1678, 3, 1678, 3, 1678, 3, 1678, 3, 1678, 3, 1678, 3, 1678, 3, 1678, 3, 1678, 3, 1678, 3, 1678, 3, 1678, 3, 1678, 3, 1678, 3, 1678, 3, 1679, 3, 1679, 3, 1679, 3, 1679, 3, 1679, 3, 1679, 3, 1679, 3, 1679, 3, 1679, 3, 1679, 3, 1679, 3, 1680, 3, 1680, 3, 1680, 3, 1680, 3, 1680, 3, 1680, 3, 1680, 3, 1680, 3, 1680, 3, 1680, 3, 1680, 3, 1680, 3, 1681, 3, 1681, 3, 1681, 3, 1681, 3, 1681, 3, 1681, 3, 1681, 3, 1681, 3, 1681, 3, 1681, 3, 1681, 3, 1682, 3, 1682, 3, 1682, 3, 1682, 3, 1682, 3, 1682, 3, 1682, 3, 1682, 3, 1682, 3, 1682, 3, 1682, 3, 1682, 3, 1683, 3, 1683, 3, 1683, 3, 1683, 3, 1683, 3, 1683, 3, 1683, 3, 1683, 3, 1683, 3, 1683, 3, 1683, 3, 1683, 3, 1683, 3, 1683, 3, 1683, 3, 1683, 3, 1683, 3, 1683, 3, 1683, 3, 1683, 3, 1683, 3, 1684, 3, 1684, 3, 1684, 3, 1684, 3, 1684, 3, 1684, 3, 1684, 3, 1684, 3, 1684, 3, 1684, 3, 1684, 3, 1684, 3, 1685, 3, 1685, 3, 1685, 3, 1685, 3, 1685, 3, 1685, 3, 1685, 3, 1685, 3, 1685, 3, 1685, 3, 1685, 3, 1685, 3, 1685, 3, 1685, 3, 1685, 3, 1686, 3, 1686, 3, 1686, 3, 1686, 3, 1686, 3, 1686, 3, 1686, 3, 1686, 3, 1686, 3, 1686, 3, 1686, 3, 1686, 3, 1686, 3, 1686, 3, 1686, 3, 1686, 3, 1687, 3, 1687, 3, 1687, 3, 1687, 3, 1687, 3, 1687, 3, 1687, 3, 1687, 3, 1687, 3, 1687, 3, 1687, 3, 1687, 3, 1687, 3, 1687, 3, 1688, 3, 1688, 3, 1688, 3, 1688, 3, 1688, 3, 1688, 3, 1688, 3, 1688, 3, 1688, 3, 1688, 3, 1688, 3, 1688, 3, 1688, 3, 1688, 3, 1688, 3, 1688, 3, 1688, 3, 1688, 3, 1689, 3, 1689, 3, 1689, 3, 1689, 3, 1689, 3, 1689, 3, 1689, 3, 1689, 3, 1689, 3, 1689, 3, 1689, 3, 1690, 3, 1690, 3, 1690, 3, 1690, 3, 1690, 3, 1690, 3, 1690, 3, 1690, 3, 1690, 3, 1690, 3, 1690, 3, 1690, 3, 1690, 3, 1690, 3, 1690, 3, 1690, 3, 1690, 3, 1691, 3, 1691, 3, 1691, 3, 1691, 3, 1691, 3, 1691, 3, 1691, 3, 1691, 3, 1691, 3, 1691, 3, 1691, 3, 1691, 3, 1691, 3, 1691, 3, 1691, 3, 1691, 3, 1691, 3, 1691, 3, 1692, 3, 1692, 3, 1692, 3, 1692, 3, 1692, 3, 1692, 3, 1692, 3, 1692, 3, 1692, 3, 1692, 3, 1692, 3, 1692, 3, 1692, 3, 1692, 3, 1693, 3, 1693, 3, 1693, 3, 1693, 3, 1693, 3, 1693, 3, 1693, 3, 1693, 3, 1693, 3, 1693, 3, 1693, 3, 1693, 3, 1693, 3, 1693, 3, 1693, 3, 1694, 3, 1694, 3, 1694, 3, 1694, 3, 1694, 3, 1694, 3, 1694, 3, 1694, 3, 1694, 3, 1694, 3, 1694, 3, 1694, 3, 1694, 3, 1694, 3, 1694, 3, 1694, 3, 1695, 3, 1695, 3, 1695, 3, 1695, 3, 1695, 3, 1695, 3, 1695, 3, 1695, 3, 1695, 3, 1695, 3, 1695, 3, 1696, 3, 1696, 3, 1696, 3, 1696, 3, 1696, 3, 1696, 3, 1696, 3, 1696, 3, 1696, 3, 1696, 3, 1696, 3, 1696, 3, 1697, 3, 1697, 3, 1697, 3, 1697, 3, 1697, 3, 1697, 3, 1697, 3, 1697, 3, 1697, 3, 1697, 3, 1697, 3, 1697, 3, 1697, 3, 1697, 3, 1697, 3, 1697, 3, 1698, 3, 1698, 3, 1698, 3, 1698, 3, 1698, 3, 1698, 3, 1698, 3, 1698, 3, 1698, 3, 1698, 3, 1698, 3, 1698, 3, 1698, 3, 1698, 3, 1698, 3, 1698, 3, 1698, 3, 1698, 3, 1698, 3, 1698, 3, 1698, 3, 1698, 3, 1698, 3, 1698, 3, 1698, 3, 1699, 3, 1699, 3, 1699, 3, 1699, 3, 1699, 3, 1699, 3, 1699, 3, 1699, 3, 1700, 3, 1700, 3, 1700, 3, 1700, 3, 1700, 3, 1700, 3, 1700, 3, 1700, 3, 1700, 3, 1700, 3, 1700, 3, 1700, 3, 1700, 3, 1700, 3, 1700, 3, 1701, 3, 1701, 3, 1701, 3, 1701, 3, 1701, 3, 1701, 3, 1701, 3, 1701, 3, 1701, 3, 1701, 3, 1701, 3, 1701, 3, 1701, 3, 1701, 3, 1701, 3, 1701, 3, 1702, 3, 1702, 3, 1702, 3, 1702, 3, 1702, 3, 1702, 3, 1702, 3, 1702, 3, 1702, 3, 1702, 3, 1702, 3, 1702, 3, 1703, 3, 1703, 3, 1703, 3, 1703, 3, 1703, 3, 1703, 3, 1703, 3, 1703, 3, 1703, 3, 1703, 3, 1703, 3, 1703, 3, 1704, 3, 1704, 3, 1704, 3, 1704, 3, 1704, 3, 1704, 3, 1704, 3, 1704, 3, 1704, 3, 1704, 3, 1704, 3, 1705, 3, 1705, 3, 1705, 3, 1705, 3, 1705, 3, 1705, 3, 1705, 3, 1705, 3, 1705, 3, 1705, 3, 1705, 3, 1706, 3, 1706, 3, 1706, 3, 1706, 3, 1706, 3, 1706, 3, 1706, 3, 1706, 3, 1706, 3, 1706, 3, 1706, 3, 1706, 3, 1706, 3, 1706, 3, 1706, 3, 1706, 3, 1706, 3, 1706, 3, 1706, 3, 1706, 3, 1706, 3, 1706, 3, 1706, 3, 1706, 3, 1706, 3, 1707, 3, 1707, 3, 1707, 3, 1707, 3, 1707, 3, 1707, 3, 1707, 3, 1707, 3, 1707, 3, 1707, 3, 1707, 3, 1707, 3, 1707, 3, 1707, 3, 1707, 3, 1707, 3, 1707, 3, 1707, 3, 1707, 3, 1707, 3, 1707, 3, 1707, 3, 1707, 3, 1707, 3, 1707, 3, 1707, 3, 1707, 3, 1707, 3, 1707, 3, 1707, 3, 1708, 3, 1708, 3, 1708, 3, 1708, 3, 1708, 3, 1708, 3, 1708, 3, 1708, 3, 1708, 3, 1708, 3, 1708, 3, 1708, 3, 1708, 3, 1708, 3, 1708, 3, 1708, 3, 1708, 3, 1708, 3, 1708, 3, 1708, 3, 1708, 3, 1708, 3, 1708, 3, 1708, 3, 1708, 3, 1709, 3, 1709, 3, 1709, 3, 1709, 3, 1709, 3, 1709, 3, 1709, 3, 1709, 3, 1709, 3, 1709, 3, 1709, 3, 1709, 3, 1709, 3, 1709, 3, 1709, 3, 1709, 3, 1709, 3, 1709, 3, 1709, 3, 1709, 3, 1709, 3, 1709, 3, 1709, 3, 1709, 3, 1709, 3, 1709, 3, 1709, 3, 1709, 3, 1710, 3, 1710, 3, 1710, 3, 1710, 3, 1710, 3, 1710, 3, 1710, 3, 1710, 3, 1710, 3, 1710, 3, 1710, 3, 1710, 3, 1710, 3, 1710, 3, 1710, 3, 1710, 3, 1710, 3, 1710, 3, 1710, 3, 1710, 3, 1710, 3, 1710, 3, 1711, 3, 1711, 3, 1711, 3, 1711, 3, 1711, 3, 1711, 3, 1711, 3, 1711, 3, 1711, 3, 1711, 3, 1711, 3, 1711, 3, 1712, 3, 1712, 3, 1712, 3, 1712, 3, 1712, 3, 1712, 3, 1712, 3, 1712, 3, 1712, 3, 1712, 3, 1712, 3, 1712, 3, 1712, 3, 1712, 3, 1712, 3, 1712, 3, 1712, 3, 1712, 3, 1712, 3, 1713, 3, 1713, 3, 1713, 3, 1713, 3, 1713, 3, 1713, 3, 1713, 3, 1713, 3, 1713, 3, 1713, 3, 1713, 3, 1713, 3, 1713, 3, 1713, 3, 1713, 3, 1713, 3, 1713, 3, 1713, 3, 1713, 3, 1714, 3, 1714, 3, 1714, 3, 1714, 3, 1714, 3, 1714, 3, 1714, 3, 1714, 3, 1714, 3, 1714, 3, 1714, 3, 1714, 3, 1714, 3, 1714, 3, 1714, 3, 1714, 3, 1714, 3, 1715, 3, 1715, 3, 1715, 3, 1715, 3, 1715, 3, 1715, 3, 1715, 3, 1715, 3, 1715, 3, 1715, 3, 1715, 3, 1715, 3, 1715, 3, 1715, 3, 1715, 3, 1715, 3, 1715, 3, 1715, 3, 1715, 3, 1715, 3, 1716, 3, 1716, 3, 1716, 3, 1716, 3, 1716, 3, 1716, 3, 1716, 3, 1716, 3, 1716, 3, 1716, 3, 1716, 3, 1716, 3, 1716, 3, 1716, 3, 1716, 3, 1716, 3, 1716, 3, 1716, 3, 1717, 3, 1717, 3, 1717, 3, 1717, 3, 1717, 3, 1717, 3, 1717, 3, 1717, 3, 1717, 3, 1717, 3, 1717, 3, 1717, 3, 1718, 3, 1718, 3, 1718, 3, 1718, 3, 1718, 3, 1718, 3, 1718, 3, 1718, 3, 1718, 3, 1718, 3, 1718, 3, 1719, 3, 1719, 3, 1719, 3, 1719, 3, 1719, 3, 1719, 3, 1719, 3, 1719, 3, 1719, 3, 1719, 3, 1719, 3, 1719, 3, 1719, 3, 1719, 3, 1719, 3, 1720, 3, 1720, 3, 1720, 3, 1720, 3, 1720, 3, 1720, 3, 1720, 3, 1720, 3, 1720, 3, 1720, 3, 1720, 3, 1720, 3, 1720, 3, 1720, 3, 1720, 3, 1720, 3, 1720, 3, 1720, 3, 1720, 3, 1721, 3, 1721, 3, 1721, 3, 1721, 3, 1721, 3, 1721, 3, 1721, 3, 1721, 3, 1721, 3, 1721, 3, 1721, 3, 1722, 3, 1722, 3, 1722, 3, 1722, 3, 1722, 3, 1722, 3, 1722, 3, 1722, 3, 1722, 3, 1722, 3, 1722, 3, 1722, 3, 1722, 3, 1722, 3, 1722, 3, 1722, 3, 1722, 3, 1723, 3, 1723, 3, 1723, 3, 1723, 3, 1723, 3, 1723, 3, 1723, 3, 1723, 3, 1723, 3, 1723, 3, 1723, 3, 1723, 3, 1723, 3, 1723, 3, 1723, 3, 1723, 3, 1723, 3, 1724, 3, 1724, 3, 1724, 3, 1724, 3, 1724, 3, 1724, 3, 1724, 3, 1724, 3, 1724, 3, 1724, 3, 1724, 3, 1725, 3, 1725, 3, 1725, 3, 1725, 3, 1725, 3, 1725, 3, 1725, 3, 1725, 3, 1725, 3, 1725, 3, 1725, 3, 1726, 3, 1726, 3, 1726, 3, 1726, 3, 1726, 3, 1726, 3, 1726, 3, 1726, 3, 1726, 3, 1726, 3, 1726, 3, 1726, 3, 1726, 3, 1726, 3, 1726, 3, 1726, 3, 1727, 3, 1727, 3, 1727, 3, 1727, 3, 1727, 3, 1727, 3, 1727, 3, 1727, 3, 1727, 3, 1727, 3, 1727, 3, 1727, 3, 1727, 3, 1727, 3, 1727, 3, 1728, 3, 1728, 3, 1728, 3, 1728, 3, 1728, 3, 1728, 3, 1728, 3, 1728, 3, 1728, 3, 1728, 3, 1728, 3, 1728, 3, 1728, 3, 1728, 3, 1728, 3, 1728, 3, 1729, 3, 1729, 3, 1729, 3, 1729, 3, 1729, 3, 1729, 3, 1729, 3, 1729, 3, 1729, 3, 1729, 3, 1729, 3, 1729, 3, 1729, 3, 1729, 3, 1729, 3, 1729, 3, 1730, 3, 1730, 3, 1730, 3, 1730, 3, 1730, 3, 1730, 3, 1730, 3, 1730, 3, 1730, 3, 1730, 3, 1730, 3, 1730, 3, 1730, 3, 1730, 3, 1730, 3, 1731, 3, 1731, 3, 1731, 3, 1731, 3, 1731, 3, 1731, 3, 1731, 3, 1731, 3, 1731, 3, 1731, 3, 1731, 3, 1731, 3, 1731, 3, 1732, 3, 1732, 3, 1732, 3, 1732, 3, 1732, 3, 1732, 3, 1732, 3, 1732, 3, 1732, 3, 1732, 3, 1732, 3, 1732, 3, 1732, 3, 1732, 3, 1732, 3, 1732, 3, 1733, 3, 1733, 3, 1733, 3, 1733, 3, 1733, 3, 1733, 3, 1733, 3, 1733, 3, 1733, 3, 1733, 3, 1733, 3, 1733, 3, 1733, 3, 1733, 3, 1734, 3, 1734, 3, 1734, 3, 1734, 3, 1734, 3, 1734, 3, 1734, 3, 1734, 3, 1734, 3, 1734, 3, 1734, 3, 1735, 3, 1735, 3, 1735, 3, 1735, 3, 1735, 3, 1735, 3, 1735, 3, 1735, 3, 1735, 3, 1735, 3, 1735, 3, 1735, 3, 1735, 3, 1735, 3, 1735, 3, 1736, 3, 1736, 3, 1736, 3, 1736, 3, 1736, 3, 1736, 3, 1736, 3, 1736, 3, 1736, 3, 1736, 3, 1736, 3, 1736, 3, 1736, 3, 1737, 3, 1737, 3, 1737, 3, 1737, 3, 1737, 3, 1737, 3, 1737, 3, 1737, 3, 1737, 3, 1737, 3, 1737, 3, 1738, 3, 1738, 3, 1738, 3, 1738, 3, 1738, 3, 1738, 3, 1738, 3, 1738, 3, 1738, 3, 1738, 3, 1738, 3, 1738, 3, 1738, 3, 1738, 3, 1738, 3, 1738, 3, 1739, 3, 1739, 3, 1739, 3, 1739, 3, 1739, 3, 1739, 3, 1739, 3, 1739, 3, 1739, 3, 1739, 3, 1739, 3, 1739, 3, 1740, 3, 1740, 3, 1740, 3, 1740, 3, 1740, 3, 1740, 3, 1740, 3, 1740, 3, 1740, 3, 1740, 3, 1740, 3, 1741, 3, 1741, 3, 1741, 3, 1741, 3, 1741, 3, 1741, 3, 1741, 3, 1741, 3, 1741, 3, 1741, 3, 1741, 3, 1741, 3, 1742, 3, 1742, 3, 1742, 3, 1742, 3, 1742, 3, 1742, 3, 1742, 3, 1742, 3, 1742, 3, 1742, 3, 1742, 3, 1742, 3, 1742, 3, 1742, 3, 1742, 3, 1742, 3, 1742, 3, 1742, 3, 1743, 3, 1743, 3, 1743, 3, 1743, 3, 1743, 3, 1743, 3, 1743, 3, 1743, 3, 1743, 3, 1743, 3, 1743, 3, 1744, 3, 1744, 3, 1744, 3, 1744, 3, 1744, 3, 1744, 3, 1744, 3, 1744, 3, 1744, 3, 1744, 3, 1744, 3, 1744, 3, 1744, 3, 1744, 3, 1744, 3, 1744, 3, 1745, 3, 1745, 3, 1745, 3, 1745, 3, 1745, 3, 1745, 3, 1745, 3, 1745, 3, 1745, 3, 1745, 3, 1745, 3, 1745, 3, 1745, 3, 1745, 3, 1745, 3, 1746, 3, 1746, 3, 1746, 3, 1746, 3, 1746, 3, 1746, 3, 1746, 3, 1746, 3, 1746, 3, 1746, 3, 1746, 3, 1747, 3, 1747, 3, 1747, 3, 1747, 3, 1747, 3, 1747, 3, 1747, 3, 1747, 3, 1747, 3, 1747, 3, 1747, 3, 1747, 3, 1748, 3, 1748, 3, 1748, 3, 1748, 3, 1748, 3, 1748, 3, 1748, 3, 1748, 3, 1748, 3, 1748, 3, 1748, 3, 1748, 3, 1748, 3, 1749, 3, 1749, 3, 1749, 3, 1749, 3, 1749, 3, 1749, 3, 1749, 3, 1749, 3, 1749, 3, 1749, 3, 1749, 3, 1749, 3, 1749, 3, 1749, 3, 1749, 3, 1749, 3, 1749, 3, 1749, 3, 1750, 3, 1750, 3, 1750, 3, 1750, 3, 1750, 3, 1750, 3, 1750, 3, 1750, 3, 1750, 3, 1750, 3, 1750, 3, 1750, 3, 1750, 3, 1750, 3, 1750, 3, 1750, 3, 1750, 3, 1751, 3, 1751, 3, 1751, 3, 1751, 3, 1751, 3, 1751, 3, 1751, 3, 1751, 3, 1751, 3, 1751, 3, 1751, 3, 1751, 3, 1751, 3, 1751, 3, 1752, 3, 1752, 3, 1752, 3, 1752, 3, 1752, 3, 1752, 3, 1752, 3, 1752, 3, 1752, 3, 1752, 3, 1752, 3, 1752, 3, 1752, 3, 1752, 3, 1753, 3, 1753, 3, 1753, 3, 1753, 3, 1753, 3, 1753, 3, 1753, 3, 1753, 3, 1753, 3, 1753, 3, 1753, 3, 1753, 3, 1753, 3, 1754, 3, 1754, 3, 1754, 3, 1754, 3, 1754, 3, 1754, 3, 1754, 3, 1754, 3, 1754, 3, 1754, 3, 1754, 3, 1754, 3, 1754, 3, 1754, 3, 1755, 3, 1755, 3, 1755, 3, 1755, 3, 1755, 3, 1755, 3, 1755, 3, 1755, 3, 1755, 3, 1755, 3, 1755, 3, 1755, 3, 1755, 3, 1755, 3, 1755, 3, 1756, 3, 1756, 3, 1756, 3, 1756, 3, 1756, 3, 1756, 3, 1756, 3, 1756, 3, 1756, 3, 1756, 3, 1756, 3, 1756, 3, 1757, 3, 1757, 3, 1757, 3, 1757, 3, 1757, 3, 1757, 3, 1757, 3, 1757, 3, 1757, 3, 1757, 3, 1757, 3, 1758, 3, 1758, 3, 1758, 3, 1758, 3, 1758, 3, 1758, 3, 1758, 3, 1758, 3, 1758, 3, 1758, 3, 1758, 3, 1758, 3, 1758, 3, 1758, 3, 1758, 3, 1758, 3, 1758, 3, 1758, 3, 1758, 3, 1758, 3, 1758, 3, 1758, 3, 1758, 3, 1759, 3, 1759, 3, 1759, 3, 1759, 3, 1759, 3, 1759, 3, 1759, 3, 1759, 3, 1759, 3, 1759, 3, 1759, 3, 1759, 3, 1759, 3, 1759, 3, 1759, 3, 1760, 3, 1760, 3, 1760, 3, 1760, 3, 1760, 3, 1760, 3, 1760, 3, 1760, 3, 1760, 3, 1760, 3, 1760, 3, 1760, 3, 1760, 3, 1760, 3, 1760, 3, 1761, 3, 1761, 3, 1761, 3, 1761, 3, 1761, 3, 1761, 3, 1761, 3, 1761, 3, 1761, 3, 1761, 3, 1761, 3, 1761, 3, 1761, 3, 1761, 3, 1762, 3, 1762, 3, 1762, 3, 1762, 3, 1762, 3, 1762, 3, 1762, 3, 1762, 3, 1762, 3, 1762, 3, 1762, 3, 1762, 3, 1762, 3, 1762, 3, 1762, 3, 1762, 3, 1762, 3, 1763, 3, 1763, 3, 1763, 3, 1763, 3, 1763, 3, 1763, 3, 1763, 3, 1763, 3, 1763, 3, 1763, 3, 1763, 3, 1763, 3, 1763, 3, 1763, 3, 1763, 3, 1764, 3, 1764, 3, 1764, 3, 1764, 3, 1764, 3, 1764, 3, 1764, 3, 1764, 3, 1764, 3, 1764, 3, 1764, 3, 1764, 3, 1764, 3, 1764, 3, 1764, 3, 1764, 3, 1764, 3, 1764, 3, 1764, 3, 1765, 3, 1765, 3, 1765, 3, 1765, 3, 1765, 3, 1765, 3, 1765, 3, 1765, 3, 1765, 3, 1765, 3, 1765, 3, 1765, 3, 1765, 3, 1765, 3, 1765, 3, 1765, 3, 1765, 3, 1765, 3, 1765, 3, 1765, 3, 1765, 3, 1765, 3, 1766, 3, 1766, 3, 1766, 3, 1766, 3, 1766, 3, 1766, 3, 1766, 3, 1766, 3, 1766, 3, 1766, 3, 1766, 3, 1766, 3, 1766, 3, 1766, 3, 1766, 3, 1766, 3, 1766, 3, 1766, 3, 1766, 3, 1766, 3, 1767, 3, 1767, 3, 1767, 3, 1767, 3, 1767, 3, 1767, 3, 1767, 3, 1767, 3, 1767, 3, 1767, 3, 1767, 3, 1767, 3, 1767, 3, 1767, 3, 1767, 3, 1767, 3, 1767, 3, 1768, 3, 1768, 3, 1768, 3, 1768, 3, 1768, 3, 1768, 3, 1768, 3, 1768, 3, 1768, 3, 1768, 3, 1768, 3, 1768, 3, 1768, 3, 1768, 3, 1768, 3, 1768, 3, 1768, 3, 1768, 3, 1768, 3, 1769, 3, 1769, 3, 1769, 3, 1769, 3, 1769, 3, 1769, 3, 1769, 3, 1769, 3, 1769, 3, 1769, 3, 1769, 3, 1769, 3, 1769, 3, 1769, 3, 1769, 3, 1769, 3, 1769, 3, 1769, 3, 1769, 3, 1769, 3, 1770, 3, 1770, 3, 1770, 3, 1770, 3, 1770, 3, 1770, 3, 1770, 3, 1770, 3, 1770, 3, 1770, 3, 1770, 3, 1770, 3, 1770, 3, 1770, 3, 1770, 3, 1770, 3, 1770, 3, 1770, 3, 1770, 3, 1770, 3, 1771, 3, 1771, 3, 1771, 3, 1771, 3, 1771, 3, 1771, 3, 1771, 3, 1771, 3, 1771, 3, 1771, 3, 1771, 3, 1771, 3, 1771, 3, 1771, 3, 1771, 3, 1771, 3, 1771, 3, 1771, 3, 1771, 3, 1771, 3, 1771, 3, 1772, 3, 1772, 3, 1772, 3, 1772, 3, 1772, 3, 1772, 3, 1772, 3, 1772, 3, 1772, 3, 1772, 3, 1772, 3, 1772, 3, 1772, 3, 1772, 3, 1772, 3, 1772, 3, 1772, 3, 1773, 3, 1773, 3, 1773, 3, 1773, 3, 1773, 3, 1773, 3, 1773, 3, 1773, 3, 1773, 3, 1773, 3, 1773, 3, 1773, 3, 1773, 3, 1773, 3, 1773, 3, 1774, 3, 1774, 3, 1774, 3, 1774, 3, 1774, 3, 1774, 3, 1774, 3, 1774, 3, 1774, 3, 1774, 3, 1774, 3, 1774, 3, 1774, 3, 1774, 3, 1774, 3, 1774, 3, 1775, 3, 1775, 3, 1775, 3, 1775, 3, 1775, 3, 1775, 3, 1775, 3, 1775, 3, 1775, 3, 1775, 3, 1775, 3, 1775, 3, 1775, 3, 1775, 3, 1776, 3, 1776, 3, 1776, 3, 1776, 3, 1776, 3, 1776, 3, 1776, 3, 1776, 3, 1776, 3, 1776, 3, 1776, 3, 1776, 3, 1776, 3, 1776, 3, 1777, 3, 1777, 3, 1777, 3, 1777, 3, 1777, 3, 1777, 3, 1777, 3, 1777, 3, 1777, 3, 1777, 3, 1777, 3, 1777, 3, 1777, 3, 1777, 3, 1778, 3, 1778, 3, 1778, 3, 1778, 3, 1778, 3, 1778, 3, 1778, 3, 1778, 3, 1778, 3, 1778, 3, 1778, 3, 1778, 3, 1778, 3, 1778, 3, 1778, 3, 1779, 3, 1779, 3, 1779, 3, 1779, 3, 1779, 3, 1779, 3, 1779, 3, 1779, 3, 1779, 3, 1779, 3, 1779, 3, 1779, 3, 1779, 3, 1779, 3, 1779, 3, 1780, 3, 1780, 3, 1780, 3, 1780, 3, 1780, 3, 1780, 3, 1780, 3, 1781, 3, 1781, 3, 1781, 3, 1781, 3, 1781, 3, 1781, 3, 1781, 3, 1781, 3, 1781, 3, 1781, 3, 1781, 3, 1781, 3, 1781, 3, 1782, 3, 1782, 3, 1782, 3, 1782, 3, 1782, 3, 1782, 3, 1782, 3, 1782, 3, 1782, 3, 1782, 3, 1782, 3, 1783, 3, 1783, 3, 1783, 3, 1783, 3, 1783, 3, 1783, 3, 1783, 3, 1783, 3, 1783, 3, 1783, 3, 1783, 3, 1783, 3, 1783, 3, 1784, 3, 1784, 3, 1784, 3, 1784, 3, 1784, 3, 1784, 3, 1784, 3, 1784, 3, 1784, 3, 1784, 3, 1784, 3, 1784, 3, 1784, 3, 1784, 3, 1784, 3, 1785, 3, 1785, 3, 1785, 3, 1785, 3, 1785, 3, 1785, 3, 1785, 3, 1785, 3, 1785, 3, 1785, 3, 1785, 3, 1785, 3, 1785, 3, 1785, 3, 1785, 3, 1785, 3, 1786, 3, 1786, 3, 1786, 3, 1786, 3, 1786, 3, 1786, 3, 1786, 3, 1786, 3, 1786, 3, 1786, 3, 1786, 3, 1786, 3, 1787, 3, 1787, 3, 1787, 3, 1787, 3, 1787, 3, 1787, 3, 1787, 3, 1787, 3, 1787, 3, 1787, 3, 1787, 3, 1787, 3, 1787, 3, 1787, 3, 1787, 3, 1788, 3, 1788, 3, 1788, 3, 1788, 3, 1788, 3, 1788, 3, 1788, 3, 1788, 3, 1788, 3, 1788, 3, 1788, 3, 1789, 3, 1789, 3, 1789, 3, 1789, 3, 1789, 3, 1789, 3, 1789, 3, 1789, 3, 1789, 3, 1789, 3, 1789, 3, 1789, 3, 1789, 3, 1789, 3, 1789, 3, 1789, 3, 1789, 3, 1789, 3, 1789, 3, 1789, 3, 1790, 3, 1790, 3, 1790, 3, 1790, 3, 1790, 3, 1790, 3, 1790, 3, 1790, 3, 1790, 3, 1790, 3, 1790, 3, 1790, 3, 1790, 3, 1790, 3, 1790, 3, 1790, 3, 1790, 3, 1790, 3, 1790, 3, 1790, 3, 1791, 3, 1791, 3, 1791, 3, 1791, 3, 1791, 3, 1791, 3, 1791, 3, 1791, 3, 1791, 3, 1791, 3, 1791, 3, 1791, 3, 1791, 3, 1792, 3, 1792, 3, 1792, 3, 1792, 3, 1792, 3, 1792, 3, 1792, 3, 1792, 3, 1792, 3, 1792, 3, 1792, 3, 1792, 3, 1792, 3, 1792, 3, 1792, 3, 1792, 3, 1792, 3, 1792, 3, 1792, 3, 1792, 3, 1792, 3, 1792, 3, 1792, 3, 1793, 3, 1793, 3, 1793, 3, 1793, 3, 1793, 3, 1793, 3, 1793, 3, 1793, 3, 1793, 3, 1793, 3, 1793, 3, 1793, 3, 1793, 3, 1793, 3, 1793, 3, 1793, 3, 1793, 3, 1793, 3, 1793, 3, 1793, 3, 1793, 3, 1794, 3, 1794, 3, 1794, 3, 1794, 3, 1794, 3, 1794, 3, 1794, 3, 1794, 3, 1794, 3, 1794, 3, 1794, 3, 1794, 3, 1794, 3, 1794, 3, 1794, 3, 1794, 3, 1794, 3, 1794, 3, 1794, 3, 1794, 3, 1794, 3, 1794, 3, 1794, 3, 1794, 3, 1794, 3, 1795, 3, 1795, 3, 1795, 3, 1795, 3, 1795, 3, 1795, 3, 1795, 3, 1795, 3, 1795, 3, 1795, 3, 1795, 3, 1795, 3, 1795, 3, 1795, 3, 1795, 3, 1795, 3, 1795, 3, 1795, 3, 1795, 3, 1795, 3, 1795, 3, 1795, 3, 1796, 3, 1796, 3, 1796, 3, 1796, 3, 1796, 3, 1796, 3, 1796, 3, 1796, 3, 1796, 3, 1796, 3, 1796, 3, 1796, 3, 1796, 3, 1796, 3, 1796, 3, 1796, 3, 1796, 3, 1796, 3, 1796, 3, 1796, 3, 1796, 3, 1796, 3, 1796, 3, 1796, 3, 1797, 3, 1797, 3, 1797, 3, 1797, 3, 1797, 3, 1797, 3, 1797, 3, 1797, 3, 1797, 3, 1797, 3, 1797, 3, 1797, 3, 1797, 3, 1797, 3, 1797, 3, 1797, 3, 1797, 3, 1797, 3, 1797, 3, 1797, 3, 1797, 3, 1797, 3, 1797, 3, 1798, 3, 1798, 3, 1798, 3, 1798, 3, 1798, 3, 1798, 3, 1798, 3, 1798, 3, 1798, 3, 1798, 3, 1798, 3, 1798, 3, 1798, 3, 1798, 3, 1798, 3, 1798, 3, 1798, 3, 1798, 3, 1798, 3, 1798, 3, 1798, 3, 1799, 3, 1799, 3, 1799, 3, 1799, 3, 1799, 3, 1799, 3, 1799, 3, 1799, 3, 1799, 3, 1799, 3, 1799, 3, 1799, 3, 1799, 3, 1799, 3, 1799, 3, 1799, 3, 1799, 3, 1799, 3, 1799, 3, 1799, 3, 1799, 3, 1799, 3, 1800, 3, 1800, 3, 1800, 3, 1800, 3, 1800, 3, 1800, 3, 1800, 3, 1800, 3, 1800, 3, 1800, 3, 1800, 3, 1800, 3, 1800, 3, 1800, 3, 1800, 3, 1800, 3, 1800, 3, 1800, 3, 1800, 3, 1800, 3, 1800, 3, 1801, 3, 1801, 3, 1801, 3, 1801, 3, 1801, 3, 1801, 3, 1801, 3, 1801, 3, 1801, 3, 1801, 3, 1801, 3, 1801, 3, 1801, 3, 1801, 3, 1802, 3, 1802, 3, 1802, 3, 1802, 3, 1802, 3, 1802, 3, 1802, 3, 1802, 3, 1802, 3, 1802, 3, 1802, 3, 1802, 3, 1802, 3, 1802, 3, 1803, 3, 1803, 3, 1803, 3, 1803, 3, 1803, 3, 1803, 3, 1803, 3, 1803, 3, 1803, 3, 1803, 3, 1803, 3, 1803, 3, 1803, 3, 1803, 3, 1803, 3, 1803, 3, 1803, 3, 1804, 3, 1804, 3, 1804, 3, 1804, 3, 1804, 3, 1804, 3, 1804, 3, 1804, 3, 1804, 3, 1804, 3, 1804, 3, 1804, 3, 1804, 3, 1804, 3, 1804, 3, 1804, 3, 1805, 3, 1805, 3, 1805, 3, 1805, 3, 1805, 3, 1805, 3, 1805, 3, 1805, 3, 1805, 3, 1805, 3, 1805, 3, 1805, 3, 1805, 3, 1805, 3, 1805, 3, 1806, 3, 1806, 3, 1806, 3, 1806, 3, 1806, 3, 1806, 3, 1806, 3, 1806, 3, 1806, 3, 1806, 3, 1806, 3, 1806, 3, 1806, 3, 1806, 3, 1806, 3, 1806, 3, 1806, 3, 1806, 3, 1807, 3, 1807, 3, 1807, 3, 1807, 3, 1807, 3, 1807, 3, 1807, 3, 1807, 3, 1807, 3, 1807, 3, 1807, 3, 1807, 3, 1807, 3, 1807, 3, 1808, 3, 1808, 3, 1808, 3, 1808, 3, 1808, 3, 1808, 3, 1808, 3, 1808, 3, 1808, 3, 1808, 3, 1808, 3, 1808, 3, 1808, 3, 1808, 3, 1808, 3, 1808, 3, 1808, 3, 1808, 3, 1808, 3, 1809, 3, 1809, 3, 1809, 3, 1809, 3, 1809, 3, 1809, 3, 1809, 3, 1809, 3, 1809, 3, 1809, 3, 1809, 3, 1809, 3, 1809, 3, 1809, 3, 1809, 3, 1809, 3, 1810, 3, 1810, 3, 1810, 3, 1810, 3, 1810, 3, 1810, 3, 1810, 3, 1810, 3, 1810, 3, 1810, 3, 1810, 3, 1810, 3, 1810, 3, 1810, 3, 1811, 3, 1811, 3, 1811, 3, 1811, 3, 1811, 3, 1811, 3, 1811, 3, 1811, 3, 1811, 3, 1811, 3, 1811, 3, 1811, 3, 1811, 3, 1811, 3, 1812, 3, 1812, 3, 1812, 3, 1812, 3, 1812, 3, 1812, 3, 1812, 3, 1812, 3, 1812, 3, 1812, 3, 1812, 3, 1812, 3, 1812, 3, 1813, 3, 1813, 3, 1813, 3, 1813, 3, 1813, 3, 1813, 3, 1813, 3, 1813, 3, 1813, 3, 1813, 3, 1813, 3, 1813, 3, 1813, 3, 1814, 3, 1814, 3, 1814, 3, 1814, 3, 1814, 3, 1814, 3, 1814, 3, 1814, 3, 1814, 3, 1814, 3, 1814, 3, 1814, 3, 1814, 3, 1814, 3, 1814, 3, 1814, 3, 1814, 3, 1814, 3, 1814, 3, 1815, 3, 1815, 3, 1815, 3, 1815, 3, 1815, 3, 1815, 3, 1815, 3, 1815, 3, 1815, 3, 1815, 3, 1816, 3, 1816, 3, 1816, 3, 1816, 3, 1816, 3, 1816, 3, 1816, 3, 1816, 3, 1816, 3, 1816, 3, 1816, 3, 1816, 3, 1816, 3, 1817, 3, 1817, 3, 1817, 3, 1817, 3, 1817, 3, 1817, 3, 1817, 3, 1817, 3, 1817, 3, 1817, 3, 1817, 3, 1817, 3, 1817, 3, 1818, 3, 1818, 3, 1818, 3, 1818, 3, 1818, 3, 1818, 3, 1818, 3, 1818, 3, 1818, 3, 1818, 3, 1818, 3, 1818, 3, 1818, 3, 1819, 3, 1819, 3, 1819, 3, 1819, 3, 1819, 3, 1819, 3, 1819, 3, 1819, 3, 1819, 3, 1819, 3, 1819, 3, 1819, 3, 1819, 3, 1819, 3, 1819, 3, 1820, 3, 1820, 3, 1820, 3, 1820, 3, 1820, 3, 1820, 3, 1820, 3, 1820, 3, 1820, 3, 1820, 3, 1820, 3, 1821, 3, 1821, 3, 1821, 3, 1821, 3, 1821, 3, 1821, 3, 1821, 3, 1821, 3, 1821, 3, 1821, 3, 1822, 3, 1822, 3, 1822, 3, 1822, 3, 1822, 3, 1822, 3, 1822, 3, 1822, 3, 1822, 3, 1822, 3, 1822, 3, 1822, 3, 1822, 3, 1822, 3, 1822, 3, 1822, 3, 1823, 3, 1823, 3, 1823, 3, 1823, 3, 1823, 3, 1823, 3, 1823, 3, 1823, 3, 1823, 3, 1823, 3, 1823, 3, 1823, 3, 1823, 3, 1823, 3, 1823, 3, 1824, 3, 1824, 3, 1824, 3, 1824, 3, 1824, 3, 1824, 3, 1824, 3, 1824, 3, 1824, 3, 1824, 3, 1824, 3, 1824, 3, 1824, 3, 1824, 3, 1825, 3, 1825, 3, 1825, 3, 1825, 3, 1825, 3, 1825, 3, 1825, 3, 1825, 3, 1825, 3, 1825, 3, 1825, 3, 1825, 3, 1825, 3, 1825, 3, 1826, 3, 1826, 3, 1826, 3, 1826, 3, 1826, 3, 1826, 3, 1826, 3, 1826, 3, 1826, 3, 1826, 3, 1826, 3, 1826, 3, 1826, 3, 1826, 3, 1827, 3, 1827, 3, 1827, 3, 1827, 3, 1827, 3, 1827, 3, 1827, 3, 1827, 3, 1827, 3, 1827, 3, 1827, 3, 1827, 3, 1828, 3, 1828, 3, 1828, 3, 1828, 3, 1828, 3, 1828, 3, 1828, 3, 1828, 3, 1828, 3, 1828, 3, 1828, 3, 1828, 3, 1828, 3, 1829, 3, 1829, 3, 1829, 3, 1829, 3, 1829, 3, 1829, 3, 1829, 3, 1829, 3, 1829, 3, 1829, 3, 1829, 3, 1829, 3, 1829, 3, 1830, 3, 1830, 3, 1830, 3, 1830, 3, 1830, 3, 1830, 3, 1830, 3, 1830, 3, 1830, 3, 1830, 3, 1830, 3, 1830, 3, 1831, 3, 1831, 3, 1831, 3, 1831, 3, 1831, 3, 1831, 3, 1831, 3, 1831, 3, 1831, 3, 1831, 3, 1831, 3, 1831, 3, 1831, 3, 1831, 3, 1832, 3, 1832, 3, 1832, 3, 1832, 3, 1832, 3, 1832, 3, 1832, 3, 1832, 3, 1832, 3, 1832, 3, 1832, 3, 1832, 3, 1832, 3, 1832, 3, 1833, 3, 1833, 3, 1833, 3, 1833, 3, 1833, 3, 1833, 3, 1833, 3, 1833, 3, 1833, 3, 1833, 3, 1833, 3, 1834, 3, 1834, 3, 1834, 3, 1834, 3, 1834, 3, 1834, 3, 1834, 3, 1834, 3, 1834, 3, 1834, 3, 1834, 3, 1834, 3, 1834, 3, 1834, 3, 1835, 3, 1835, 3, 1835, 3, 1835, 3, 1835, 3, 1835, 3, 1835, 3, 1835, 3, 1835, 3, 1835, 3, 1835, 3, 1835, 3, 1835, 3, 1835, 3, 1835, 3, 1835, 3, 1835, 3, 1835, 3, 1836, 3, 1836, 3, 1836, 3, 1836, 3, 1836, 3, 1836, 3, 1836, 3, 1836, 3, 1836, 3, 1836, 3, 1836, 3, 1836, 3, 1837, 3, 1837, 3, 1837, 3, 1837, 3, 1837, 3, 1837, 3, 1837, 3, 1837, 3, 1837, 3, 1837, 3, 1837, 3, 1837, 3, 1837, 3, 1838, 3, 1838, 3, 1838, 3, 1838, 3, 1838, 3, 1838, 3, 1838, 3, 1838, 3, 1838, 3, 1838, 3, 1838, 3, 1838, 3, 1838, 3, 1838, 3, 1838, 3, 1838, 3, 1839, 3, 1839, 3, 1839, 3, 1839, 3, 1839, 3, 1839, 3, 1839, 3, 1839, 3, 1839, 3, 1839, 3, 1839, 3, 1839, 3, 1839, 3, 1839, 3, 1839, 3, 1839, 3, 1840, 3, 1840, 3, 1840, 3, 1840, 3, 1840, 3, 1840, 3, 1840, 3, 1840, 3, 1840, 3, 1840, 3, 1840, 3, 1840, 3, 1841, 3, 1841, 3, 1841, 3, 1841, 3, 1841, 3, 1841, 3, 1841, 3, 1841, 3, 1841, 3, 1841, 3, 1841, 3, 1841, 3, 1841, 3, 1841, 3, 1841, 3, 1841, 3, 1841, 3, 1842, 3, 1842, 3, 1842, 3, 1842, 3, 1842, 3, 1842, 3, 1842, 3, 1842, 3, 1842, 3, 1842, 3, 1842, 3, 1842, 3, 1842, 3, 1843, 3, 1843, 3, 1843, 3, 1843, 3, 1843, 3, 1843, 3, 1843, 3, 1843, 3, 1843, 3, 1843, 3, 1843, 3, 1843, 3, 1843, 3, 1844, 3, 1844, 3, 1844, 3, 1844, 3, 1844, 3, 1844, 3, 1844, 3, 1844, 3, 1844, 3, 1844, 3, 1844, 3, 1844, 3, 1844, 3, 1845, 3, 1845, 3, 1845, 3, 1845, 3, 1845, 3, 1845, 3, 1845, 3, 1845, 3, 1845, 3, 1845, 3, 1845, 3, 1845, 3, 1845, 3, 1845, 3, 1846, 3, 1846, 3, 1846, 3, 1846, 3, 1846, 3, 1846, 3, 1846, 3, 1846, 3, 1846, 3, 1846, 3, 1846, 3, 1847, 3, 1847, 3, 1847, 3, 1847, 3, 1847, 3, 1847, 3, 1847, 3, 1847, 3, 1847, 3, 1847, 3, 1847, 3, 1847, 3, 1847, 3, 1847, 3, 1847, 3, 1847, 3, 1847, 3, 1848, 3, 1848, 3, 1848, 3, 1848, 3, 1848, 3, 1848, 3, 1848, 3, 1848, 3, 1848, 3, 1848, 3, 1848, 3, 1848, 3, 1848, 3, 1848, 3, 1848, 3, 1848, 3, 1849, 3, 1849, 3, 1849, 3, 1849, 3, 1849, 3, 1849, 3, 1849, 3, 1849, 3, 1849, 3, 1849, 3, 1849, 3, 1849, 3, 1849, 3, 1850, 3, 1850, 3, 1850, 3, 1850, 3, 1850, 3, 1850, 3, 1850, 3, 1850, 3, 1850, 3, 1850, 3, 1850, 3, 1850, 3, 1850, 3, 1850, 3, 1850, 3, 1851, 3, 1851, 3, 1851, 3, 1851, 3, 1851, 3, 1851, 3, 1851, 3, 1851, 3, 1851, 3, 1851, 3, 1851, 3, 1851, 3, 1851, 3, 1851, 3, 1851, 3, 1851, 3, 1852, 3, 1852, 3, 1852, 3, 1852, 3, 1852, 3, 1852, 3, 1852, 3, 1852, 3, 1852, 3, 1852, 3, 1852, 3, 1852, 3, 1852, 3, 1852, 3, 1852, 3, 1852, 3, 1853, 3, 1853, 3, 1853, 3, 1853, 3, 1853, 3, 1853, 3, 1853, 3, 1853, 3, 1853, 3, 1853, 3, 1853, 3, 1853, 3, 1854, 3, 1854, 3, 1854, 3, 1854, 3, 1854, 3, 1854, 3, 1854, 3, 1854, 3, 1854, 3, 1854, 3, 1854, 3, 1854, 3, 1854, 3, 1854, 3, 1855, 3, 1855, 3, 1855, 3, 1855, 3, 1855, 3, 1855, 3, 1855, 3, 1855, 3, 1855, 3, 1855, 3, 1855, 3, 1855, 3, 1855, 3, 1855, 3, 1855, 3, 1855, 3, 1856, 3, 1856, 3, 1856, 3, 1856, 3, 1856, 3, 1856, 3, 1856, 3, 1856, 3, 1856, 3, 1856, 3, 1856, 3, 1856, 3, 1856, 3, 1856, 3, 1856, 3, 1856, 3, 1857, 3, 1857, 3, 1857, 3, 1857, 3, 1857, 3, 1857, 3, 1857, 3, 1857, 3, 1857, 3, 1857, 3, 1857, 3, 1857, 3, 1857, 3, 1857, 3, 1857, 3, 1857, 3, 1857, 3, 1858, 3, 1858, 3, 1858, 3, 1858, 3, 1858, 3, 1858, 3, 1858, 3, 1858, 3, 1858, 3, 1858, 3, 1858, 3, 1858, 3, 1858, 3, 1858, 3, 1859, 3, 1859, 3, 1859, 3, 1859, 3, 1859, 3, 1859, 3, 1859, 3, 1859, 3, 1859, 3, 1859, 3, 1859, 3, 1859, 3, 1859, 3, 1859, 3, 1860, 3, 1860, 3, 1860, 3, 1860, 3, 1860, 3, 1860, 3, 1860, 3, 1860, 3, 1860, 3, 1860, 3, 1860, 3, 1860, 3, 1860, 3, 1860, 3, 1861, 3, 1861, 3, 1861, 3, 1861, 3, 1861, 3, 1861, 3, 1861, 3, 1861, 3, 1861, 3, 1861, 3, 1861, 3, 1861, 3, 1861, 3, 1861, 3, 1861, 3, 1861, 3, 1862, 3, 1862, 3, 1862, 3, 1862, 3, 1862, 3, 1862, 3, 1862, 3, 1862, 3, 1862, 3, 1862, 3, 1862, 3, 1862, 3, 1862, 3, 1862, 3, 1863, 3, 1863, 3, 1863, 3, 1863, 3, 1863, 3, 1863, 3, 1863, 3, 1863, 3, 1863, 3, 1863, 3, 1863, 3, 1863, 3, 1863, 3, 1863, 3, 1864, 3, 1864, 3, 1864, 3, 1864, 3, 1864, 3, 1864, 3, 1864, 3, 1864, 3, 1864, 3, 1864, 3, 1864, 3, 1864, 3, 1864, 3, 1864, 3, 1865, 3, 1865, 3, 1865, 3, 1865, 3, 1865, 3, 1865, 3, 1865, 3, 1865, 3, 1865, 3, 1865, 3, 1865, 3, 1865, 3, 1865, 3, 1865, 3, 1866, 3, 1866, 3, 1866, 3, 1866, 3, 1866, 3, 1866, 3, 1866, 3, 1866, 3, 1866, 3, 1866, 3, 1866, 3, 1866, 3, 1866, 3, 1866, 3, 1867, 3, 1867, 3, 1867, 3, 1867, 3, 1867, 3, 1867, 3, 1867, 3, 1867, 3, 1867, 3, 1867, 3, 1867, 3, 1867, 3, 1867, 3, 1867, 3, 1868, 3, 1868, 3, 1868, 3, 1868, 3, 1868, 3, 1868, 3, 1868, 3, 1868, 3, 1868, 3, 1868, 3, 1868, 3, 1868, 3, 1868, 3, 1868, 3, 1868, 3, 1869, 3, 1869, 3, 1869, 3, 1869, 3, 1869, 3, 1869, 3, 1869, 3, 1869, 3, 1869, 3, 1869, 3, 1869, 3, 1869, 3, 1869, 3, 1869, 3, 1870, 3, 1870, 3, 1870, 3, 1870, 3, 1870, 3, 1870, 3, 1870, 3, 1870, 3, 1870, 3, 1870, 3, 1870, 3, 1870, 3, 1870, 3, 1870, 3, 1870, 3, 1871, 3, 1871, 3, 1871, 3, 1871, 3, 1871, 3, 1871, 3, 1871, 3, 1871, 3, 1871, 3, 1871, 3, 1871, 3, 1871, 3, 1871, 3, 1871, 3, 1871, 3, 1872, 3, 1872, 3, 1872, 3, 1872, 3, 1872, 3, 1872, 3, 1872, 3, 1872, 3, 1872, 3, 1872, 3, 1872, 3, 1872, 3, 1872, 3, 1872, 3, 1873, 3, 1873, 3, 1873, 3, 1873, 3, 1873, 3, 1873, 3, 1873, 3, 1873, 3, 1873, 3, 1873, 3, 1873, 3, 1873, 3, 1873, 3, 1873, 3, 1874, 3, 1874, 3, 1874, 3, 1874, 3, 1874, 3, 1874, 3, 1874, 3, 1874, 3, 1874, 3, 1874, 3, 1874, 3, 1874, 3, 1874, 3, 1874, 3, 1875, 3, 1875, 3, 1875, 3, 1875, 3, 1875, 3, 1875, 3, 1875, 3, 1875, 3, 1875, 3, 1875, 3, 1875, 3, 1875, 3, 1875, 3, 1875, 3, 1876, 3, 1876, 3, 1876, 3, 1876, 3, 1876, 3, 1876, 3, 1876, 3, 1876, 3, 1876, 3, 1876, 3, 1876, 3, 1876, 3, 1876, 3, 1876, 3, 1877, 3, 1877, 3, 1877, 3, 1877, 3, 1877, 3, 1877, 3, 1877, 3, 1877, 3, 1877, 3, 1877, 3, 1877, 3, 1877, 3, 1877, 3, 1877, 3, 1878, 3, 1878, 3, 1878, 3, 1878, 3, 1878, 3, 1878, 3, 1878, 3, 1878, 3, 1878, 3, 1878, 3, 1878, 3, 1878, 3, 1878, 3, 1878, 3, 1879, 3, 1879, 3, 1879, 3, 1879, 3, 1879, 3, 1879, 3, 1879, 3, 1879, 3, 1879, 3, 1879, 3, 1879, 3, 1879, 3, 1879, 3, 1880, 3, 1880, 3, 1880, 3, 1880, 3, 1880, 3, 1880, 3, 1880, 3, 1880, 3, 1880, 3, 1880, 3, 1880, 3, 1880, 3, 1880, 3, 1880, 3, 1881, 3, 1881, 3, 1881, 3, 1881, 3, 1881, 3, 1881, 3, 1881, 3, 1881, 3, 1881, 3, 1881, 3, 1881, 3, 1881, 3, 1881, 3, 1881, 3, 1882, 3, 1882, 3, 1882, 3, 1882, 3, 1882, 3, 1882, 3, 1882, 3, 1882, 3, 1882, 3, 1882, 3, 1882, 3, 1882, 3, 1882, 3, 1882, 3, 1882, 3, 1882, 3, 1882, 3, 1882, 3, 1883, 3, 1883, 3, 1883, 3, 1883, 3, 1883, 3, 1883, 3, 1883, 3, 1883, 3, 1883, 3, 1883, 3, 1883, 3, 1883, 3, 1883, 3, 1883, 3, 1884, 3, 1884, 3, 1884, 3, 1884, 3, 1884, 3, 1884, 3, 1884, 3, 1884, 3, 1884, 3, 1884, 3, 1884, 3, 1884, 3, 1884, 3, 1884, 3, 1884, 3, 1884, 3, 1885, 3, 1885, 3, 1885, 3, 1885, 3, 1885, 3, 1885, 3, 1885, 3, 1885, 3, 1885, 3, 1885, 3, 1885, 3, 1885, 3, 1885, 3, 1885, 3, 1885, 3, 1886, 3, 1886, 3, 1886, 3, 1886, 3, 1886, 3, 1886, 3, 1886, 3, 1886, 3, 1886, 3, 1886, 3, 1886, 3, 1886, 3, 1887, 3, 1887, 3, 1887, 3, 1887, 3, 1887, 3, 1887, 3, 1887, 3, 1887, 3, 1887, 3, 1887, 3, 1887, 3, 1887, 3, 1887, 3, 1887, 3, 1887, 3, 1887, 3, 1887, 3, 1888, 3, 1888, 3, 1888, 3, 1888, 3, 1888, 3, 1888, 3, 1888, 3, 1888, 3, 1888, 3, 1888, 3, 1888, 3, 1888, 3, 1888, 3, 1888, 3, 1889, 3, 1889, 3, 1889, 3, 1889, 3, 1889, 3, 1889, 3, 1889, 3, 1889, 3, 1889, 3, 1889, 3, 1889, 3, 1889, 3, 1889, 3, 1889, 3, 1889, 3, 1889, 3, 1890, 3, 1890, 3, 1890, 3, 1890, 3, 1890, 3, 1890, 3, 1890, 3, 1890, 3, 1890, 3, 1890, 3, 1890, 3, 1890, 3, 1890, 3, 1890, 3, 1891, 3, 1891, 3, 1891, 3, 1891, 3, 1891, 3, 1891, 3, 1891, 3, 1891, 3, 1891, 3, 1891, 3, 1891, 3, 1891, 3, 1892, 3, 1892, 3, 1892, 3, 1892, 3, 1892, 3, 1892, 3, 1892, 3, 1892, 3, 1892, 3, 1892, 3, 1892, 3, 1892, 3, 1892, 3, 1893, 3, 1893, 3, 1893, 3, 1893, 3, 1893, 3, 1893, 3, 1893, 3, 1893, 3, 1893, 3, 1893, 3, 1893, 3, 1893, 3, 1893, 3, 1894, 3, 1894, 3, 1894, 3, 1894, 3, 1894, 3, 1894, 3, 1894, 3, 1894, 3, 1894, 3, 1894, 3, 1894, 3, 1894, 3, 1894, 3, 1894, 3, 1894, 3, 1894, 3, 1894, 3, 1894, 3, 1895, 3, 1895, 3, 1895, 3, 1895, 3, 1895, 3, 1895, 3, 1895, 3, 1895, 3, 1895, 3, 1895, 3, 1895, 3, 1895, 3, 1895, 3, 1895, 3, 1895, 3, 1895, 3, 1895, 3, 1896, 3, 1896, 3, 1896, 3, 1896, 3, 1896, 3, 1896, 3, 1896, 3, 1896, 3, 1896, 3, 1896, 3, 1896, 3, 1896, 3, 1896, 3, 1896, 3, 1896, 3, 1897, 3, 1897, 3, 1897, 3, 1897, 3, 1897, 3, 1897, 3, 1897, 3, 1897, 3, 1897, 3, 1897, 3, 1897, 3, 1897, 3, 1897, 3, 1897, 3, 1897, 3, 1897, 3, 1898, 3, 1898, 3, 1898, 3, 1898, 3, 1898, 3, 1898, 3, 1898, 3, 1898, 3, 1898, 3, 1898, 3, 1898, 3, 1898, 3, 1898, 3, 1898, 3, 1899, 3, 1899, 3, 1899, 3, 1899, 3, 1899, 3, 1899, 3, 1899, 3, 1899, 3, 1899, 3, 1899, 3, 1899, 3, 1899, 3, 1899, 3, 1899, 3, 1899, 3, 1899, 3, 1900, 3, 1900, 3, 1900, 3, 1900, 3, 1900, 3, 1900, 3, 1900, 3, 1900, 3, 1900, 3, 1900, 3, 1900, 3, 1900, 3, 1900, 3, 1900, 3, 1900, 3, 1900, 3, 1901, 3, 1901, 3, 1901, 3, 1901, 3, 1901, 3, 1901, 3, 1901, 3, 1901, 3, 1901, 3, 1901, 3, 1901, 3, 1901, 3, 1901, 3, 1901, 3, 1901, 3, 1902, 3, 1902, 3, 1902, 3, 1902, 3, 1902, 3, 1902, 3, 1902, 3, 1902, 3, 1902, 3, 1902, 3, 1902, 3, 1902, 3, 1902, 3, 1902, 3, 1903, 3, 1903, 3, 1903, 3, 1903, 3, 1903, 3, 1903, 3, 1903, 3, 1903, 3, 1903, 3, 1903, 3, 1903, 3, 1903, 3, 1903, 3, 1903, 3, 1903, 3, 1903, 3, 1903, 3, 1903, 3, 1904, 3, 1904, 3, 1904, 3, 1904, 3, 1904, 3, 1904, 3, 1904, 3, 1904, 3, 1904, 3, 1904, 3, 1904, 3, 1904, 3, 1905, 3, 1905, 3, 1905, 3, 1905, 3, 1905, 3, 1905, 3, 1905, 3, 1905, 3, 1905, 3, 1905, 3, 1905, 3, 1905, 3, 1905, 3, 1905, 3, 1905, 3, 1905, 3, 1906, 3, 1906, 3, 1906, 3, 1906, 3, 1906, 3, 1906, 3, 1906, 3, 1906, 3, 1906, 3, 1906, 3, 1906, 3, 1906, 3, 1906, 3, 1906, 3, 1906, 3, 1906, 3, 1907, 3, 1907, 3, 1907, 3, 1907, 3, 1907, 3, 1907, 3, 1907, 3, 1907, 3, 1907, 3, 1907, 3, 1907, 3, 1907, 3, 1907, 3, 1907, 3, 1907, 3, 1907, 3, 1907, 3, 1908, 3, 1908, 3, 1908, 3, 1908, 3, 1908, 3, 1908, 3, 1908, 3, 1908, 3, 1908, 3, 1908, 3, 1908, 3, 1908, 3, 1908, 3, 1908, 3, 1908, 3, 1908, 3, 1908, 3, 1908, 3, 1908, 3, 1909, 3, 1909, 3, 1909, 3, 1909, 3, 1909, 3, 1909, 3, 1909, 3, 1909, 3, 1909, 3, 1909, 3, 1909, 3, 1909, 3, 1909, 3, 1909, 3, 1910, 3, 1910, 3, 1910, 3, 1910, 3, 1910, 3, 1910, 3, 1910, 3, 1910, 3, 1910, 3, 1910, 3, 1910, 3, 1911, 3, 1911, 3, 1911, 3, 1911, 3, 1911, 3, 1911, 3, 1911, 3, 1912, 3, 1912, 3, 1912, 3, 1912, 3, 1912, 3, 1912, 3, 1912, 3, 1912, 3, 1912, 3, 1912, 3, 1912, 3, 1912, 3, 1913, 3, 1913, 3, 1913, 3, 1913, 3, 1913, 3, 1913, 3, 1914, 3, 1914, 3, 1914, 3, 1914, 3, 1914, 3, 1914, 3, 1915, 3, 1915, 3, 1915, 3, 1915, 3, 1916, 3, 1916, 3, 1916, 3, 1916, 3, 1916, 3, 1917, 3, 1917, 3, 1917, 3, 1917, 3, 1918, 3, 1918, 3, 1918, 3, 1918, 3, 1918, 3, 1918, 3, 1918, 3, 1918, 3, 1918, 3, 1918, 3, 1918, 3, 1918, 3, 1918, 3, 1918, 3, 1918, 3, 1918, 3, 1918, 3, 1918, 3, 1918, 3, 1918, 3, 1919, 3, 1919, 3, 1919, 3, 1919, 3, 1919, 3, 1919, 3, 1919, 3, 1919, 3, 1919, 3, 1920, 3, 1920, 3, 1920, 3, 1920, 3, 1920, 3, 1920, 3, 1920, 3, 1920, 3, 1920, 3, 1921, 3, 1921, 3, 1921, 3, 1921, 3, 1921, 3, 1921, 3, 1921, 3, 1921, 3, 1921, 3, 1921, 3, 1922, 3, 1922, 3, 1922, 3, 1922, 3, 1922, 3, 1922, 3, 1922, 3, 1922, 3, 1922, 3, 1922, 3, 1922, 3, 1923, 3, 1923, 3, 1923, 3, 1923, 3, 1923, 3, 1924, 3, 1924, 3, 1924, 3, 1924, 3, 1924, 3, 1925, 3, 1925, 3, 1925, 3, 1925, 3, 1925, 3, 1926, 3, 1926, 3, 1926, 3, 1926, 3, 1926, 3, 1927, 3, 1927, 3, 1927, 3, 1927, 3, 1928, 3, 1928, 3, 1928, 3, 1928, 3, 1928, 3, 1928, 3, 1928, 3, 1929, 3, 1929, 3, 1929, 3, 1929, 3, 1929, 3, 1929, 3, 1929, 3, 1929, 3, 1930, 3, 1930, 3, 1930, 3, 1930, 3, 1930, 3, 1931, 3, 1931, 3, 1931, 3, 1931, 3, 1931, 3, 1932, 3, 1932, 3, 1932, 3, 1932, 3, 1932, 3, 1932, 3, 1932, 3, 1932, 3, 1933, 3, 1933, 3, 1933, 3, 1933, 3, 1933, 3, 1933, 3, 1933, 3, 1933, 3, 1933, 3, 1933, 3, 1933, 3, 1933, 3, 1933, 3, 1933, 3, 1933, 3, 1933, 3, 1933, 3, 1933, 3, 1933, 3, 1933, 3, 1933, 3, 1933, 3, 1933, 3, 1933, 3, 1933, 3, 1933, 3, 1933, 3, 1933, 3, 1934, 3, 1934, 3, 1934, 3, 1934, 3, 1934, 3, 1934, 3, 1934, 3, 1934, 3, 1934, 3, 1934, 3, 1935, 3, 1935, 3, 1935, 3, 1935, 3, 1935, 3, 1935, 3, 1935, 3, 1935, 3, 1935, 3, 1935, 3, 1935, 3, 1935, 3, 1935, 3, 1935, 3, 1935, 3, 1935, 3, 1935, 3, 1935, 3, 1935, 3, 1935, 3, 1935, 3, 1935, 3, 1935, 3, 1935, 3, 1935, 3, 1935, 3, 1935, 3, 1936, 3, 1936, 3, 1936, 3, 1936, 3, 1936, 3, 1936, 3, 1936, 3, 1936, 3, 1936, 3, 1936, 3, 1936, 3, 1936, 3, 1936, 3, 1936, 3, 1936, 3, 1936, 3, 1936, 3, 1936, 3, 1936, 3, 1936, 3, 1936, 3, 1936, 3, 1936, 3, 1936, 3, 1937, 3, 1937, 3, 1937, 3, 1937, 3, 1937, 3, 1937, 3, 1938, 3, 1938, 3, 1938, 3, 1938, 3, 1938, 3, 1939, 3, 1939, 3, 1939, 3, 1939, 3, 1939, 3, 1939, 3, 1939, 3, 1939, 3, 1939, 3, 1940, 3, 1940, 3, 1940, 3, 1940, 3, 1940, 3, 1940, 3, 1940, 3, 1940, 3, 1940, 3, 1940, 3, 1940, 3, 1940, 3, 1940, 3, 1940, 3, 1941, 3, 1941, 3, 1941, 3, 1941, 3, 1941, 3, 1941, 3, 1941, 3, 1941, 3, 1941, 3, 1941, 3, 1941, 3, 1941, 3, 1941, 3, 1941, 3, 1942, 3, 1942, 3, 1942, 3, 1942, 3, 1942, 3, 1942, 3, 1942, 3, 1942, 3, 1942, 3, 1942, 3, 1942, 3, 1942, 3, 1942, 3, 1942, 3, 1942, 3, 1942, 3, 1943, 3, 1943, 3, 1943, 3, 1943, 3, 1943, 3, 1943, 3, 1943, 3, 1943, 3, 1943, 3, 1943, 3, 1943, 3, 1943, 3, 1943, 3, 1943, 3, 1943, 3, 1943, 3, 1944, 3, 1944, 3, 1944, 3, 1944, 3, 1944, 3, 1944, 3, 1944, 3, 1944, 3, 1944, 3, 1944, 3, 1944, 3, 1944, 3, 1944, 3, 1944, 3, 1944, 3, 1944, 3, 1945, 3, 1945, 3, 1945, 3, 1945, 3, 1945, 3, 1945, 3, 1945, 3, 1945, 3, 1945, 3, 1945, 3, 1946, 3, 1946, 3, 1946, 3, 1946, 3, 1946, 3, 1946, 3, 1946, 3, 1947, 3, 1947, 3, 1947, 3, 1947, 3, 1947, 3, 1947, 3, 1947, 3, 1947, 3, 1948, 3, 1948, 3, 1948, 3, 1948, 3, 1948, 3, 1948, 3, 1948, 3, 1948, 3, 1948, 3, 1949, 3, 1949, 3, 1949, 3, 1949, 3, 1949, 3, 1949, 3, 1949, 3, 1949, 3, 1949, 3, 1949, 3, 1949, 3, 1949, 3, 1949, 3, 1949, 3, 1949, 3, 1949, 3, 1949, 3, 1950, 3, 1950, 3, 1950, 3, 1950, 3, 1950, 3, 1950, 3, 1950, 3, 1950, 3, 1950, 3, 1950, 3, 1950, 3, 1950, 3, 1950, 3, 1950, 3, 1950, 3, 1950, 3, 1951, 3, 1951, 3, 1951, 3, 1951, 3, 1951, 3, 1951, 3, 1951, 3, 1951, 3, 1952, 3, 1952, 3, 1952, 3, 1952, 3, 1952, 3, 1952, 3, 1952, 3, 1952, 3, 1953, 3, 1953, 3, 1953, 3, 1953, 3, 1953, 3, 1953, 3, 1953, 3, 1953, 3, 1953, 3, 1953, 3, 1953, 3, 1953, 3, 1953, 3, 1953, 3, 1954, 3, 1954, 3, 1954, 3, 1954, 3, 1954, 3, 1954, 3, 1954, 3, 1955, 3, 1955, 3, 1955, 3, 1955, 3, 1955, 3, 1955, 3, 1955, 3, 1955, 3, 1955, 3, 1955, 3, 1955, 3, 1955, 3, 1955, 3, 1955, 3, 1956, 3, 1956, 3, 1956, 3, 1956, 3, 1956, 3, 1956, 3, 1956, 3, 1956, 3, 1956, 3, 1957, 3, 1957, 3, 1957, 3, 1957, 3, 1957, 3, 1957, 3, 1957, 3, 1957, 3, 1957, 3, 1958, 3, 1958, 3, 1958, 3, 1958, 3, 1958, 3, 1958, 3, 1958, 3, 1958, 3, 1958, 3, 1958, 3, 1959, 3, 1959, 3, 1959, 3, 1959, 3, 1959, 3, 1959, 3, 1959, 3, 1959, 3, 1959, 3, 1960, 3, 1960, 3, 1960, 3, 1960, 3, 1960, 3, 1960, 3, 1960, 3, 1960, 3, 1960, 3, 1960, 3, 1960, 3, 1960, 3, 1960, 3, 1960, 3, 1960, 3, 1961, 3, 1961, 3, 1961, 3, 1961, 3, 1961, 3, 1961, 3, 1961, 3, 1961, 3, 1961, 3, 1961, 3, 1961, 3, 1961, 3, 1961, 3, 1962, 3, 1962, 3, 1962, 3, 1962, 3, 1962, 3, 1962, 3, 1962, 3, 1962, 3, 1962, 3, 1962, 3, 1962, 3, 1962, 3, 1962, 3, 1962, 3, 1962, 3, 1962, 3, 1963, 3, 1963, 3, 1963, 3, 1963, 3, 1963, 3, 1963, 3, 1963, 3, 1963, 3, 1964, 3, 1964, 3, 1964, 3, 1964, 3, 1964, 3, 1964, 3, 1964, 3, 1964, 3, 1964, 3, 1964, 3, 1964, 3, 1965, 3, 1965, 3, 1965, 3, 1966, 3, 1966, 3, 1966, 3, 1966, 3, 1966, 3, 1966, 3, 1966, 3, 1966, 3, 1966, 3, 1966, 3, 1966, 3, 1966, 3, 1966, 3, 1966, 3, 1967, 3, 1967, 3, 1967, 3, 1967, 3, 1967, 3, 1967, 3, 1968, 3, 1968, 3, 1968, 3, 1968, 3, 1968, 3, 1968, 3, 1968, 3, 1968, 3, 1969, 3, 1969, 3, 1969, 3, 1969, 3, 1969, 3, 1969, 3, 1969, 3, 1969, 3, 1969, 3, 1970, 3, 1970, 3, 1970, 3, 1970, 3, 1970, 3, 1970, 3, 1970, 3, 1970, 3, 1970, 3, 1971, 3, 1971, 3, 1971, 3, 1971, 3, 1971, 3, 1971, 3, 1971, 3, 1971, 3, 1971, 3, 1971, 3, 1971, 3, 1971, 3, 1972, 3, 1972, 3, 1972, 3, 1972, 3, 1972, 3, 1972, 3, 1972, 3, 1972, 3, 1972, 3, 1972, 3, 1972, 3, 1972, 3, 1972, 3, 1972, 3, 1972, 3, 1972, 3, 1972, 3, 1972, 3, 1972, 3, 1972, 3, 1972, 3, 1972, 3, 1972, 3, 1973, 3, 1973, 3, 1973, 3, 1973, 3, 1973, 3, 1973, 3, 1973, 3, 1973, 3, 1973, 3, 1973, 3, 1973, 3, 1973, 3, 1973, 3, 1974, 3, 1974, 3, 1974, 3, 1974, 3, 1974, 3, 1974, 3, 1974, 3, 1974, 3, 1974, 3, 1974, 3, 1974, 3, 1975, 3, 1975, 3, 1975, 3, 1975, 3, 1975, 3, 1975, 3, 1975, 3, 1975, 3, 1975, 3, 1975, 3, 1976, 3, 1976, 3, 1976, 3, 1976, 3, 1976, 3, 1976, 3, 1976, 3, 1976, 3, 1976, 3, 1976, 3, 1976, 3, 1976, 3, 1977, 3, 1977, 3, 1977, 3, 1977, 3, 1977, 3, 1977, 3, 1978, 3, 1978, 3, 1978, 3, 1978, 3, 1978, 3, 1978, 3, 1978, 3, 1978, 3, 1978, 3, 1979, 3, 1979, 3, 1979, 3, 1979, 3, 1979, 3, 1979, 3, 1979, 3, 1979, 3, 1980, 3, 1980, 3, 1980, 3, 1980, 3, 1980, 3, 1981, 3, 1981, 3, 1981, 3, 1981, 3, 1981, 3, 1981, 3, 1981, 3, 1981, 3, 1981, 3, 1982, 3, 1982, 3, 1982, 3, 1982, 3, 1982, 3, 1982, 3, 1983, 3, 1983, 3, 1983, 3, 1983, 3, 1983, 3, 1983, 3, 1983, 3, 1983, 3, 1984, 3, 1984, 3, 1984, 3, 1984, 3, 1984, 3, 1984, 3, 1985, 3, 1985, 3, 1985, 3, 1985, 3, 1985, 3, 1985, 3, 1985, 3, 1986, 3, 1986, 3, 1986, 3, 1987, 3, 1987, 3, 1987, 3, 1987, 3, 1987, 3, 1987, 3, 1988, 3, 1988, 3, 1988, 3, 1988, 3, 1988, 3, 1989, 3, 1989, 3, 1989, 3, 1989, 3, 1989, 3, 1989, 3, 1989, 3, 1989, 3, 1989, 3, 1989, 3, 1990, 3, 1990, 3, 1990, 3, 1990, 3, 1991, 3, 1991, 3, 1991, 3, 1991, 3, 1992, 3, 1992, 3, 1992, 3, 1992, 3, 1992, 3, 1993, 3, 1993, 3, 1993, 3, 1993, 3, 1994, 3, 1994, 3, 1994, 3, 1994, 3, 1994, 3, 1994, 3, 1994, 3, 1994, 3, 1994, 3, 1994, 3, 1994, 3, 1995, 3, 1995, 3, 1995, 3, 1995, 3, 1995, 3, 1995, 3, 1995, 3, 1995, 3, 1995, 3, 1995, 3, 1996, 3, 1996, 3, 1996, 3, 1996, 3, 1996, 3, 1996, 3, 1996, 3, 1996, 3, 1997, 3, 1997, 3, 1997, 3, 1997, 3, 1997, 3, 1997, 3, 1997, 3, 1997, 3, 1997, 3, 1997, 3, 1997, 3, 1997, 3, 1997, 3, 1997, 3, 1998, 3, 1998, 3, 1998, 3, 1998, 3, 1998, 3, 1998, 3, 1999, 3, 1999, 3, 1999, 3, 1999, 3, 1999, 3, 2000, 3, 2000, 3, 2000, 3, 2000, 3, 2000, 3, 2000, 3, 2000, 3, 2001, 3, 2001, 3, 2001, 3, 2001, 3, 2001, 3, 2001, 3, 2001, 3, 2001, 3, 2002, 3, 2002, 3, 2002, 3, 2002, 3, 2002, 3, 2002, 3, 2003, 3, 2003, 3, 2003, 3, 2003, 3, 2003, 3, 2003, 3, 2003, 3, 2004, 3, 2004, 3, 2004, 3, 2004, 3, 2004, 3, 2004, 3, 2004, 3, 2005, 3, 2005, 3, 2005, 3, 2005, 3, 2005, 3, 2005, 3, 2005, 3, 2005, 3, 2005, 3, 2005, 3, 2006, 3, 2006, 3, 2006, 3, 2006, 3, 2006, 3, 2006, 3, 2006, 3, 2007, 3, 2007, 3, 2007, 3, 2007, 3, 2007, 3, 2007, 3, 2007, 3, 2008, 3, 2008, 3, 2008, 3, 2008, 3, 2008, 3, 2008, 3, 2008, 3, 2008, 3, 2008, 3, 2008, 3, 2009, 3, 2009, 3, 2009, 3, 2009, 3, 2009, 3, 2009, 3, 2009, 3, 2009, 3, 2009, 3, 2009, 3, 2009, 3, 2009, 3, 2009, 3, 2009, 3, 2009, 3, 2009, 3, 2009, 3, 2009, 3, 2009, 3, 2009, 3, 2009, 3, 2009, 3, 2009, 3, 2009, 3, 2009, 3, 2009, 3, 2009, 3, 2009, 3, 2010, 3, 2010, 3, 2010, 3, 2010, 3, 2010, 3, 2010, 3, 2010, 3, 2010, 3, 2010, 3, 2010, 3, 2010, 3, 2010, 3, 2010, 3, 2010, 3, 2010, 3, 2010, 3, 2010, 3, 2010, 3, 2010, 3, 2010, 3, 2010, 3, 2010, 3, 2010, 3, 2010, 3, 2010, 3, 2010, 3, 2010, 3, 2010, 3, 2010, 3, 2010, 3, 2011, 3, 2011, 3, 2011, 3, 2011, 3, 2011, 3, 2011, 3, 2011, 3, 2011, 3, 2011, 3, 2011, 3, 2011, 3, 2011, 3, 2011, 3, 2011, 3, 2011, 3, 2011, 3, 2011, 3, 2011, 3, 2012, 3, 2012, 3, 2012, 3, 2012, 3, 2012, 3, 2012, 3, 2012, 3, 2013, 3, 2013, 3, 2013, 3, 2013, 3, 2013, 3, 2013, 3, 2013, 3, 2013, 3, 2013, 3, 2014, 3, 2014, 3, 2014, 3, 2014, 3, 2014, 3, 2014, 3, 2014, 3, 2014, 3, 2015, 3, 2015, 3, 2015, 3, 2015, 3, 2015, 3, 2015, 3, 2015, 3, 2016, 3, 2016, 3, 2016, 3, 2016, 3, 2016, 3, 2016, 3, 2016, 3, 2016, 3, 2016, 3, 2016, 3, 2016, 3, 2016, 3, 2017, 3, 2017, 3, 2017, 3, 2017, 3, 2017, 3, 2017, 3, 2017, 3, 2017, 3, 2017, 3, 2017, 3, 2018, 3, 2018, 3, 2018, 3, 2018, 3, 2018, 3, 2018, 3, 2018, 3, 2018, 3, 2018, 3, 2018, 3, 2018, 3, 2018, 3, 2018, 3, 2018, 3, 2019, 3, 2019, 3, 2019, 3, 2019, 3, 2019, 3, 2019, 3, 2019, 3, 2019, 3, 2019, 3, 2019, 3, 2019, 3, 2019, 3, 2019, 3, 2020, 3, 2020, 3, 2020, 3, 2020, 3, 2020, 3, 2020, 3, 2020, 3, 2020, 3, 2020, 3, 2020, 3, 2020, 3, 2020, 3, 2021, 3, 2021, 3, 2021, 3, 2021, 3, 2021, 3, 2021, 3, 2022, 3, 2022, 3, 2022, 3, 2022, 3, 2022, 3, 2022, 3, 2022, 3, 2022, 3, 2022, 3, 2023, 3, 2023, 3, 2023, 3, 2023, 3, 2023, 3, 2023, 3, 2023, 3, 2024, 3, 2024, 3, 2024, 3, 2024, 3, 2024, 3, 2024, 3, 2024, 3, 2024, 3, 2024, 3, 2024, 3, 2025, 3, 2025, 3, 2025, 3, 2025, 3, 2025, 3, 2025, 3, 2025, 3, 2025, 3, 2026, 3, 2026, 3, 2026, 3, 2026, 3, 2026, 3, 2026, 3, 2026, 3, 2027, 3, 2027, 3, 2027, 3, 2027, 3, 2027, 3, 2027, 3, 2027, 3, 2027, 3, 2027, 3, 2027, 3, 2028, 3, 2028, 3, 2028, 3, 2028, 3, 2028, 3, 2028, 3, 2028, 3, 2028, 3, 2028, 3, 2028, 3, 2028, 3, 2028, 3, 2029, 3, 2029, 3, 2029, 3, 2029, 3, 2029, 3, 2029, 3, 2029, 3, 2029, 3, 2029, 3, 2029, 3, 2029, 3, 2029, 3, 2029, 3, 2029, 3, 2030, 3, 2030, 3, 2030, 3, 2030, 3, 2030, 3, 2030, 3, 2030, 3, 2030, 3, 2031, 3, 2031, 3, 2031, 3, 2031, 3, 2031, 3, 2031, 3, 2032, 3, 2032, 3, 2032, 3, 2032, 3, 2032, 3, 2032, 3, 2032, 3, 2033, 3, 2033, 3, 2033, 3, 2033, 3, 2033, 3, 2033, 3, 2033, 3, 2034, 3, 2034, 3, 2034, 3, 2034, 3, 2034, 3, 2034, 3, 2034, 3, 2035, 3, 2035, 3, 2035, 3, 2035, 3, 2035, 3, 2035, 3, 2036, 3, 2036, 3, 2036, 3, 2036, 3, 2036, 3, 2036, 3, 2036, 3, 2036, 3, 2036, 3, 2037, 3, 2037, 3, 2037, 3, 2037, 3, 2037, 3, 2037, 3, 2037, 3, 2037, 3, 2037, 3, 2037, 3, 2037, 3, 2038, 3, 2038, 3, 2038, 3, 2038, 3, 2038, 3, 2038, 3, 2038, 3, 2038, 3, 2038, 3, 2039, 3, 2039, 3, 2039, 3, 2039, 3, 2039, 3, 2039, 3, 2039, 3, 2039, 3, 2039, 3, 2039, 3, 2039, 3, 2039, 3, 2039, 3, 2039, 3, 2039, 3, 2039, 3, 2039, 3, 2039, 3, 2039, 3, 2039, 3, 2039, 3, 2040, 3, 2040, 3, 2040, 3, 2040, 3, 2040, 3, 2040, 3, 2040, 3, 2040, 3, 2040, 3, 2040, 3, 2040, 3, 2040, 3, 2040, 3, 2040, 3, 2040, 3, 2040, 3, 2040, 3, 2040, 3, 2040, 3, 2040, 3, 2040, 3, 2040, 3, 2040, 3, 2040, 3, 2040, 3, 2040, 3, 2041, 3, 2041, 3, 2041, 3, 2041, 3, 2041, 3, 2041, 3, 2041, 3, 2041, 3, 2041, 3, 2042, 3, 2042, 3, 2042, 3, 2042, 3, 2042, 3, 2042, 3, 2042, 3, 2042, 3, 2042, 3, 2042, 3, 2042, 3, 2042, 3, 2042, 3, 2042, 3, 2042, 3, 2042, 3, 2042, 3, 2042, 3, 2042, 3, 2042, 3, 2042, 3, 2042, 3, 2043, 3, 2043, 3, 2043, 3, 2043, 3, 2043, 3, 2043, 3, 2043, 3, 2043, 3, 2043, 3, 2043, 3, 2043, 3, 2043, 3, 2043, 3, 2043, 3, 2043, 3, 2043, 3, 2043, 3, 2043, 3, 2043, 3, 2043, 3, 2043, 3, 2043, 3, 2044, 3, 2044, 3, 2044, 3, 2044, 3, 2044, 3, 2044, 3, 2044, 3, 2044, 3, 2044, 3, 2044, 3, 2044, 3, 2044, 3, 2044, 3, 2044, 3, 2044, 3, 2044, 3, 2044, 3, 2044, 3, 2044, 3, 2044, 3, 2045, 3, 2045, 3, 2045, 3, 2045, 3, 2045, 3, 2045, 3, 2045, 3, 2045, 3, 2045, 3, 2045, 3, 2046, 3, 2046, 3, 2046, 3, 2046, 3, 2046, 3, 2046, 3, 2046, 3, 2047, 3, 2047, 3, 2047, 3, 2047, 3, 2047, 3, 2047, 3, 2047, 3, 2047, 3, 2047, 3, 2047, 3, 2047, 3, 2047, 3, 2047, 3, 2047, 3, 2047, 3, 2047, 3, 2047, 3, 2047, 3, 2048, 3, 2048, 3, 2048, 3, 2048, 3, 2048, 3, 2048, 3, 2048, 3, 2048, 3, 2048, 3, 2048, 3, 2048, 3, 2048, 3, 2048, 3, 2048, 3, 2048, 3, 2048, 3, 2048, 3, 2048, 3, 2048, 3, 2048, 3, 2048, 3, 2049, 3, 2049, 3, 2049, 3, 2049, 3, 2049, 3, 2049, 3, 2049, 3, 2049, 3, 2049, 3, 2049, 3, 2050, 3, 2050, 3, 2050, 3, 2050, 3, 2050, 3, 2050, 3, 2050, 3, 2050, 3, 2050, 3, 2050, 3, 2050, 3, 2050, 3, 2050, 3, 2051, 3, 2051, 3, 2051, 3, 2051, 3, 2051, 3, 2051, 3, 2051, 3, 2051, 3, 2052, 3, 2052, 3, 2052, 3, 2052, 3, 2052, 3, 2052, 3, 2052, 3, 2052, 3, 2052, 3, 2052, 3, 2053, 3, 2053, 3, 2053, 3, 2053, 3, 2053, 3, 2053, 3, 2053, 3, 2053, 3, 2053, 3, 2053, 3, 2053, 3, 2053, 3, 2053, 3, 2053, 3, 2053, 3, 2053, 3, 2054, 3, 2054, 3, 2054, 3, 2054, 3, 2054, 3, 2054, 3, 2055, 3, 2055, 3, 2055, 3, 2055, 3, 2055, 3, 2055, 3, 2055, 3, 2055, 3, 2055, 3, 2055, 3, 2055, 3, 2055, 3, 2055, 3, 2055, 3, 2055, 3, 2055, 3, 2055, 3, 2056, 3, 2056, 3, 2056, 3, 2056, 3, 2056, 3, 2057, 3, 2057, 3, 2057, 3, 2057, 3, 2057, 3, 2057, 3, 2057, 3, 2057, 3, 2057, 3, 2058, 3, 2058, 3, 2058, 3, 2058, 3, 2058, 3, 2058, 3, 2058, 3, 2058, 3, 2058, 3, 2058, 3, 2058, 3, 2058, 3, 2058, 3, 2058, 3, 2058, 3, 2058, 3, 2058, 3, 2058, 3, 2058, 3, 2058, 3, 2059, 3, 2059, 3, 2059, 3, 2059, 3, 2059, 3, 2059, 3, 2059, 3, 2059, 3, 2059, 3, 2059, 3, 2059, 3, 2059, 3, 2059, 3, 2059, 3, 2059, 3, 2059, 3, 2059, 3, 2059, 3, 2060, 3, 2060, 3, 2060, 3, 2060, 3, 2061, 3, 2061, 3, 2061, 3, 2061, 3, 2061, 3, 2061, 3, 2061, 3, 2061, 3, 2061, 3, 2061, 3, 2061, 3, 2061, 3, 2061, 3, 2061, 3, 2061, 3, 2061, 3, 2061, 3, 2061, 3, 2061, 3, 2061, 3, 2061, 3, 2061, 3, 2061, 3, 2062, 3, 2062, 3, 2062, 3, 2062, 3, 2062, 3, 2062, 3, 2062, 3, 2062, 3, 2062, 3, 2062, 3, 2062, 3, 2062, 3, 2062, 3, 2062, 3, 2062, 3, 2062, 3, 2062, 3, 2062, 3, 2062, 3, 2063, 3, 2063, 3, 2063, 3, 2063, 3, 2063, 3, 2063, 3, 2063, 3, 2063, 3, 2063, 3, 2063, 3, 2063, 3, 2063, 3, 2063, 3, 2063, 3, 2063, 3, 2063, 3, 2064, 3, 2064, 3, 2064, 3, 2064, 3, 2064, 3, 2064, 3, 2065, 3, 2065, 3, 2065, 3, 2065, 3, 2065, 3, 2065, 3, 2065, 3, 2065, 3, 2066, 3, 2066, 3, 2066, 3, 2066, 3, 2066, 3, 2066, 3, 2066, 3, 2066, 3, 2067, 3, 2067, 3, 2067, 3, 2067, 3, 2067, 3, 2067, 3, 2068, 3, 2068, 3, 2068, 3, 2068, 3, 2068, 3, 2069, 3, 2069, 3, 2069, 3, 2070, 3, 2070, 3, 2070, 3, 2071, 3, 2071, 3, 2071, 3, 2071, 3, 2071, 3, 2071, 3, 2071, 3, 2071, 3, 2071, 3, 2072, 3, 2072, 3, 2072, 3, 2072, 3, 2072, 3, 2072, 3, 2072, 3, 2072, 3, 2072, 3, 2072, 3, 2072, 3, 2073, 3, 2073, 3, 2073, 3, 2073, 3, 2073, 3, 2073, 3, 2073, 3, 2073, 3, 2073, 3, 2073, 3, 2073, 3, 2073, 3, 2073, 3, 2073, 3, 2073, 3, 2074, 3, 2074, 3, 2074, 3, 2074, 3, 2074, 3, 2074, 3, 2074, 3, 2075, 3, 2075, 3, 2075, 3, 2075, 3, 2075, 3, 2075, 3, 2076, 3, 2076, 3, 2076, 3, 2076, 3, 2076, 3, 2076, 3, 2076, 3, 2076, 3, 2076, 3, 2077, 3, 2077, 3, 2077, 3, 2077, 3, 2077, 3, 2077, 3, 2077, 3, 2077, 3, 2078, 3, 2078, 3, 2078, 3, 2078, 3, 2078, 3, 2078, 3, 2078, 3, 2078, 3, 2078, 3, 2079, 3, 2079, 3, 2079, 3, 2079, 3, 2079, 3, 2079, 3, 2079, 3, 2079, 3, 2080, 3, 2080, 3, 2080, 3, 2080, 3, 2080, 3, 2080, 3, 2080, 3, 2080, 3, 2081, 3, 2081, 3, 2081, 3, 2081, 3, 2081, 3, 2081, 3, 2081, 3, 2082, 3, 2082, 3, 2082, 3, 2082, 3, 2082, 3, 2082, 3, 2082, 3, 2082, 3, 2082, 3, 2083, 3, 2083, 3, 2083, 3, 2083, 3, 2083, 3, 2083, 3, 2083, 3, 2083, 3, 2084, 3, 2084, 3, 2084, 3, 2084, 3, 2084, 3, 2084, 3, 2084, 3, 2084, 3, 2084, 3, 2084, 3, 2084, 3, 2084, 3, 2084, 3, 2084, 3, 2084, 3, 2084, 3, 2084, 3, 2084, 3, 2085, 3, 2085, 3, 2085, 3, 2085, 3, 2085, 3, 2085, 3, 2085, 3, 2085, 3, 2085, 3, 2085, 3, 2085, 3, 2085, 3, 2086, 3, 2086, 3, 2086, 3, 2086, 3, 2086, 3, 2086, 3, 2086, 3, 2086, 3, 2086, 3, 2086, 3, 2086, 3, 2086, 3, 2086, 3, 2086, 3, 2086, 3, 2086, 3, 2086, 3, 2086, 3, 2086, 3, 2086, 3, 2086, 3, 2086, 3, 2087, 3, 2087, 3, 2087, 3, 2087, 3, 2087, 3, 2087, 3, 2087, 3, 2087, 3, 2087, 3, 2087, 3, 2087, 3, 2087, 3, 2087, 3, 2087, 3, 2087, 3, 2087, 3, 2087, 3, 2087, 3, 2087, 3, 2087, 3, 2087, 3, 2087, 3, 2088, 3, 2088, 3, 2088, 3, 2088, 3, 2088, 3, 2088, 3, 2088, 3, 2088, 3, 2088, 3, 2088, 3, 2088, 3, 2088, 3, 2088, 3, 2088, 3, 2088, 3, 2088, 3, 2088, 3, 2089, 3, 2089, 3, 2089, 3, 2089, 3, 2089, 3, 2089, 3, 2089, 3, 2089, 3, 2089, 3, 2090, 3, 2090, 3, 2090, 3, 2090, 3, 2090, 3, 2090, 3, 2090, 3, 2091, 3, 2091, 3, 2091, 3, 2091, 3, 2091, 3, 2091, 3, 2091, 3, 2091, 3, 2091, 3, 2091, 3, 2091, 3, 2092, 3, 2092, 3, 2092, 3, 2092, 3, 2092, 3, 2092, 3, 2092, 3, 2092, 3, 2092, 3, 2092, 3, 2092, 3, 2092, 3, 2092, 3, 2092, 3, 2092, 3, 2092, 3, 2093, 3, 2093, 3, 2093, 3, 2093, 3, 2093, 3, 2093, 3, 2093, 3, 2093, 3, 2093, 3, 2093, 3, 2093, 3, 2093, 3, 2093, 3, 2093, 3, 2093, 3, 2093, 3, 2093, 3, 2094, 3, 2094, 3, 2094, 3, 2094, 3, 2094, 3, 2094, 3, 2094, 3, 2094, 3, 2094, 3, 2094, 3, 2094, 3, 2094, 3, 2094, 3, 2094, 3, 2094, 3, 2094, 3, 2094, 3, 2094, 3, 2094, 3, 2095, 3, 2095, 3, 2095, 3, 2095, 3, 2095, 3, 2095, 3, 2095, 3, 2095, 3, 2095, 3, 2095, 3, 2095, 3, 2095, 3, 2095, 3, 2095, 3, 2095, 3, 2095, 3, 2095, 3, 2095, 3, 2096, 3, 2096, 3, 2096, 3, 2096, 3, 2096, 3, 2096, 3, 2096, 3, 2096, 3, 2096, 3, 2096, 3, 2096, 3, 2096, 3, 2096, 3, 2096, 3, 2096, 3, 2096, 3, 2096, 3, 2096, 3, 2096, 3, 2097, 3, 2097, 3, 2097, 3, 2097, 3, 2097, 3, 2097, 3, 2097, 3, 2097, 3, 2097, 3, 2098, 3, 2098, 3, 2098, 3, 2098, 3, 2098, 3, 2098, 3, 2098, 3, 2098, 3, 2098, 3, 2098, 3, 2098, 3, 2098, 3, 2098, 3, 2099, 3, 2099, 3, 2099, 3, 2099, 3, 2099, 3, 2099, 3, 2099, 3, 2099, 3, 2100, 3, 2100, 3, 2100, 3, 2100, 3, 2100, 3, 2101, 3, 2101, 3, 2101, 3, 2101, 3, 2101, 3, 2101, 3, 2101, 3, 2101, 3, 2101, 3, 2101, 3, 2102, 3, 2102, 3, 2102, 3, 2102, 3, 2102, 3, 2102, 3, 2102, 3, 2102, 3, 2103, 3, 2103, 3, 2103, 3, 2103, 3, 2103, 3, 2103, 3, 2103, 3, 2103, 3, 2103, 3, 2103, 3, 2103, 3, 2104, 3, 2104, 3, 2104, 3, 2104, 3, 2104, 3, 2104, 3, 2104, 3, 2104, 3, 2105, 3, 2105, 3, 2105, 3, 2105, 3, 2105, 3, 2105, 3, 2105, 3, 2106, 3, 2106, 3, 2106, 3, 2106, 3, 2106, 3, 2106, 3, 2107, 3, 2107, 3, 2107, 3, 2107, 3, 2107, 3, 2108, 3, 2108, 3, 2108, 3, 2108, 3, 2108, 3, 2108, 3, 2108, 3, 2109, 3, 2109, 3, 2109, 3, 2109, 3, 2109, 3, 2109, 3, 2109, 3, 2109, 3, 2110, 3, 2110, 3, 2110, 3, 2110, 3, 2110, 3, 2110, 3, 2111, 3, 2111, 3, 2111, 3, 2111, 3, 2111, 3, 2112, 3, 2112, 3, 2112, 3, 2112, 3, 2112, 3, 2112, 3, 2112, 3, 2112, 3, 2112, 3, 2112, 3, 2112, 3, 2113, 3, 2113, 3, 2113, 3, 2113, 3, 2113, 3, 2113, 3, 2113, 3, 2113, 3, 2113, 3, 2114, 3, 2114, 3, 2114, 3, 2114, 3, 2114, 3, 2115, 3, 2115, 3, 2115, 3, 2115, 3, 2115, 3, 2115, 3, 2116, 3, 2116, 3, 2116, 3, 2116, 3, 2116, 3, 2116, 3, 2117, 3, 2117, 3, 2117, 3, 2117, 3, 2117, 3, 2117, 3, 2117, 3, 2117, 3, 2117, 3, 2117, 3, 2117, 3, 2118, 3, 2118, 3, 2118, 3, 2118, 3, 2118, 3, 2118, 3, 2118, 3, 2118, 3, 2118, 3, 2118, 3, 2118, 3, 2118, 3, 2118, 3, 2119, 3, 2119, 3, 2119, 3, 2119, 3, 2119, 3, 2119, 3, 2119, 3, 2120, 3, 2120, 3, 2120, 3, 2120, 3, 2120, 3, 2120, 3, 2120, 3, 2120, 3, 2121, 3, 2121, 3, 2121, 3, 2121, 3, 2121, 3, 2121, 3, 2121, 3, 2121, 3, 2121, 3, 2121, 3, 2121, 3, 2122, 3, 2122, 3, 2122, 3, 2122, 3, 2122, 3, 2123, 3, 2123, 3, 2123, 3, 2123, 3, 2123, 3, 2124, 3, 2124, 3, 2124, 3, 2124, 3, 2124, 3, 2124, 3, 2124, 3, 2124, 3, 2125, 3, 2125, 3, 2125, 3, 2125, 3, 2125, 3, 2125, 3, 2125, 3, 2125, 3, 2126, 3, 2126, 3, 2126, 3, 2126, 3, 2126, 3, 2126, 3, 2127, 3, 2127, 3, 2127, 3, 2127, 3, 2127, 3, 2127, 3, 2127, 3, 2127, 3, 2127, 3, 2127, 3, 2127, 3, 2127, 3, 2127, 3, 2127, 3, 2127, 3, 2127, 3, 2127, 3, 2127, 3, 2127, 3, 2127, 3, 2128, 3, 2128, 3, 2128, 3, 2128, 3, 2129, 3, 2129, 3, 2129, 3, 2129, 3, 2129, 3, 2129, 3, 2129, 3, 2129, 3, 2129, 3, 2129, 3, 2129, 3, 2129, 3, 2130, 3, 2130, 3, 2130, 3, 2130, 3, 2131, 3, 2131, 3, 2131, 3, 2131, 3, 2131, 3, 2131, 3, 2131, 3, 2131, 3, 2131, 3, 2131, 3, 2131, 3, 2132, 3, 2132, 3, 2132, 3, 2132, 3, 2132, 3, 2132, 3, 2132, 3, 2133, 3, 2133, 3, 2133, 3, 2133, 3, 2133, 3, 2133, 3, 2133, 3, 2133, 3, 2133, 3, 2133, 3, 2133, 3, 2133, 3, 2133, 3, 2133, 3, 2134, 3, 2134, 3, 2134, 3, 2134, 3, 2134, 3, 2134, 3, 2134, 3, 2134, 3, 2135, 3, 2135, 3, 2135, 3, 2135, 3, 2135, 3, 2135, 3, 2135, 3, 2135, 3, 2135, 3, 2136, 3, 2136, 3, 2136, 3, 2136, 3, 2136, 3, 2136, 3, 2136, 3, 2136, 3, 2136, 3, 2136, 3, 2136, 3, 2136, 3, 2136, 3, 2137, 3, 2137, 3, 2137, 3, 2137, 3, 2137, 3, 2137, 3, 2137, 3, 2137, 3, 2137, 3, 2137, 3, 2137, 3, 2138, 3, 2138, 3, 2138, 3, 2138, 3, 2138, 3, 2138, 3, 2138, 3, 2138, 3, 2138, 3, 2138, 3, 2139, 3, 2139, 3, 2139, 3, 2139, 3, 2139, 3, 2139, 3, 2139, 3, 2139, 3, 2140, 3, 2140, 3, 2140, 3, 2140, 3, 2140, 3, 2140, 3, 2140, 3, 2140, 3, 2140, 3, 2140, 3, 2140, 3, 2140, 3, 2140, 3, 2140, 3, 2140, 3, 2140, 3, 2140, 3, 2141, 3, 2141, 3, 2141, 3, 2141, 3, 2141, 3, 2141, 3, 2141, 3, 2141, 3, 2141, 3, 2141, 3, 2141, 3, 2142, 3, 2142, 3, 2142, 3, 2142, 3, 2142, 3, 2142, 3, 2142, 3, 2142, 3, 2142, 3, 2142, 3, 2142, 3, 2143, 3, 2143, 3, 2143, 3, 2143, 3, 2143, 3, 2143, 3, 2143, 3, 2143, 3, 2143, 3, 2143, 3, 2144, 3, 2144, 3, 2144, 3, 2144, 3, 2144, 3, 2144, 3, 2144, 3, 2144, 3, 2144, 3, 2144, 3, 2145, 3, 2145, 3, 2145, 3, 2145, 3, 2145, 3, 2145, 3, 2145, 3, 2145, 3, 2145, 3, 2146, 3, 2146, 3, 2146, 3, 2146, 3, 2146, 3, 2146, 3, 2146, 3, 2146, 3, 2146, 3, 2146, 3, 2146, 3, 2146, 3, 2146, 3, 2146, 3, 2146, 3, 2146, 3, 2146, 3, 2146, 3, 2146, 3, 2146, 3, 2146, 3, 2146, 3, 2146, 3, 2146, 3, 2146, 3, 2146, 3, 2146, 3, 2147, 3, 2147, 3, 2147, 3, 2147, 3, 2147, 3, 2147, 3, 2147, 3, 2147, 3, 2147, 3, 2147, 3, 2147, 3, 2147, 3, 2147, 3, 2147, 3, 2147, 3, 2147, 3, 2147, 3, 2148, 3, 2148, 3, 2148, 3, 2148, 3, 2148, 3, 2148, 3, 2148, 3, 2148, 3, 2148, 3, 2148, 3, 2148, 3, 2148, 3, 2148, 3, 2148, 3, 2148, 3, 2148, 3, 2148, 3, 2148, 3, 2148, 3, 2148, 3, 2148, 3, 2149, 3, 2149, 3, 2149, 3, 2149, 3, 2149, 3, 2149, 3, 2149, 3, 2149, 3, 2149, 3, 2149, 3, 2150, 3, 2150, 3, 2150, 3, 2150, 3, 2150, 3, 2150, 3, 2150, 3, 2150, 3, 2150, 3, 2150, 3, 2150, 3, 2151, 3, 2151, 3, 2151, 3, 2151, 3, 2151, 3, 2151, 3, 2151, 3, 2151, 3, 2151, 3, 2151, 3, 2151, 3, 2151, 3, 2151, 3, 2151, 3, 2152, 3, 2152, 3, 2152, 3, 2152, 3, 2152, 3, 2152, 3, 2152, 3, 2152, 3, 2152, 3, 2153, 3, 2153, 3, 2153, 3, 2153, 3, 2153, 3, 2153, 3, 2153, 3, 2153, 3, 2153, 3, 2154, 3, 2154, 3, 2154, 3, 2154, 3, 2154, 3, 2154, 3, 2155, 3, 2155, 3, 2155, 3, 2155, 3, 2155, 3, 2155, 3, 2155, 3, 2155, 3, 2155, 3, 2155, 3, 2155, 3, 2155, 3, 2156, 3, 2156, 3, 2156, 3, 2156, 3, 2156, 3, 2156, 3, 2156, 3, 2156, 3, 2156, 3, 2157, 3, 2157, 3, 2157, 3, 2157, 3, 2157, 3, 2157, 3, 2157, 3, 2157, 3, 2158, 3, 2158, 3, 2158, 3, 2158, 3, 2158, 3, 2158, 3, 2158, 3, 2158, 3, 2158, 3, 2158, 3, 2159, 3, 2159, 3, 2159, 3, 2159, 3, 2159, 3, 2159, 3, 2159, 3, 2159, 3, 2159, 3, 2159, 3, 2159, 3, 2159, 3, 2159, 3, 2160, 3, 2160, 3, 2160, 3, 2160, 3, 2160, 3, 2160, 3, 2160, 3, 2160, 3, 2160, 3, 2161, 3, 2161, 3, 2161, 3, 2161, 3, 2161, 3, 2161, 3, 2161, 3, 2161, 3, 2161, 3, 2161, 3, 2161, 3, 2161, 3, 2161, 3, 2161, 3, 2161, 3, 2161, 3, 2161, 3, 2162, 3, 2162, 3, 2162, 3, 2162, 3, 2162, 3, 2162, 3, 2162, 3, 2162, 3, 2162, 3, 2162, 3, 2162, 3, 2162, 3, 2162, 3, 2163, 3, 2163, 3, 2163, 3, 2163, 3, 2163, 3, 2163, 3, 2163, 3, 2163, 3, 2164, 3, 2164, 3, 2164, 3, 2164, 3, 2165, 3, 2165, 3, 2165, 3, 2165, 3, 2165, 3, 2165, 3, 2165, 3, 2165, 3, 2165, 3, 2165, 3, 2165, 3, 2166, 3, 2166, 3, 2166, 3, 2166, 3, 2166, 3, 2166, 3, 2166, 3, 2166, 3, 2166, 3, 2166, 3, 2166, 3, 2166, 3, 2166, 3, 2166, 3, 2166, 3, 2167, 3, 2167, 3, 2167, 3, 2168, 3, 2168, 3, 2168, 3, 2168, 3, 2168, 3, 2168, 3, 2168, 3, 2168, 3, 2168, 3, 2168, 3, 2168, 3, 2169, 3, 2169, 3, 2169, 3, 2169, 3, 2169, 3, 2169, 3, 2170, 3, 2170, 3, 2170, 3, 2170, 3, 2170, 3, 2171, 3, 2171, 3, 2171, 3, 2171, 3, 2172, 3, 2172, 3, 2172, 3, 2172, 3, 2172, 3, 2172, 3, 2172, 3, 2172, 3, 2172, 3, 2172, 3, 2172, 3, 2172, 3, 2172, 3, 2172, 3, 2172, 3, 2172, 3, 2172, 3, 2172, 3, 2172, 3, 2172, 3, 2172, 3, 2172, 3, 2172, 3, 2172, 3, 2172, 3, 2173, 3, 2173, 3, 2173, 3, 2173, 3, 2173, 3, 2173, 3, 2173, 3, 2173, 3, 2174, 3, 2174, 3, 2174, 3, 2174, 3, 2174, 3, 2175, 3, 2175, 3, 2175, 3, 2175, 3, 2175, 3, 2175, 3, 2175, 3, 2175, 3, 2175, 3, 2175, 3, 2175, 3, 2176, 3, 2176, 3, 2176, 3, 2176, 3, 2176, 3, 2176, 3, 2176, 3, 2176, 3, 2176, 3, 2176, 3, 2176, 3, 2176, 3, 2176, 3, 2176, 3, 2176, 3, 2176, 3, 2176, 3, 2176, 3, 2177, 3, 2177, 3, 2177, 3, 2177, 3, 2177, 3, 2177, 3, 2177, 3, 2177, 3, 2177, 3, 2177, 3, 2177, 3, 2177, 3, 2177, 3, 2177, 3, 2177, 3, 2177, 3, 2178, 3, 2178, 3, 2178, 3, 2178, 3, 2178, 3, 2178, 3, 2178, 3, 2178, 3, 2178, 3, 2178, 3, 2178, 3, 2178, 3, 2178, 3, 2178, 3, 2178, 3, 2178, 3, 2178, 3, 2178, 3, 2178, 3, 2179, 3, 2179, 3, 2179, 3, 2179, 3, 2179, 3, 2179, 3, 2179, 3, 2179, 3, 2179, 3, 2179, 3, 2179, 3, 2179, 3, 2179, 3, 2179, 3, 2179, 3, 2179, 3, 2179, 3, 2179, 3, 2179, 3, 2179, 3, 2179, 3, 2179, 3, 2179, 3, 2180, 3, 2180, 3, 2180, 3, 2180, 3, 2180, 3, 2180, 3, 2180, 3, 2180, 3, 2180, 3, 2180, 3, 2180, 3, 2180, 3, 2180, 3, 2180, 3, 2180, 3, 2181, 3, 2181, 3, 2181, 3, 2181, 3, 2181, 3, 2181, 3, 2181, 3, 2181, 3, 2181, 3, 2181, 3, 2182, 3, 2182, 3, 2182, 3, 2182, 3, 2182, 3, 2182, 3, 2182, 3, 2182, 3, 2182, 3, 2182, 3, 2182, 3, 2183, 3, 2183, 3, 2183, 3, 2183, 3, 2183, 3, 2183, 3, 2183, 3, 2183, 3, 2184, 3, 2184, 3, 2184, 3, 2184, 3, 2184, 3, 2184, 3, 2184, 3, 2184, 3, 2184, 3, 2184, 3, 2184, 3, 2184, 3, 2184, 3, 2185, 3, 2185, 3, 2185, 3, 2185, 3, 2185, 3, 2185, 3, 2185, 3, 2185, 3, 2185, 3, 2185, 3, 2185, 3, 2185, 3, 2185, 3, 2185, 3, 2185, 3, 2185, 3, 2186, 3, 2186, 3, 2186, 3, 2186, 3, 2186, 3, 2186, 3, 2186, 3, 2186, 3, 2186, 3, 2186, 3, 2186, 3, 2186, 3, 2186, 3, 2186, 3, 2186, 3, 2186, 3, 2187, 3, 2187, 3, 2187, 3, 2187, 3, 2187, 3, 2188, 3, 2188, 3, 2188, 3, 2188, 3, 2189, 3, 2189, 3, 2189, 3, 2189, 3, 2189, 3, 2190, 3, 2190, 3, 2190, 3, 2190, 3, 2190, 3, 2190, 3, 2190, 3, 2191, 3, 2191, 3, 2191, 3, 2191, 3, 2191, 3, 2191, 3, 2191, 3, 2192, 3, 2192, 3, 2192, 3, 2192, 3, 2193, 3, 2193, 3, 2193, 3, 2193, 3, 2193, 3, 2194, 3, 2194, 3, 2194, 3, 2194, 3, 2195, 3, 2195, 3, 2195, 3, 2195, 3, 2195, 3, 2195, 3, 2195, 3, 2196, 3, 2196, 3, 2196, 3, 2196, 3, 2197, 3, 2197, 3, 2197, 3, 2197, 3, 2197, 3, 2197, 3, 2198, 3, 2198, 3, 2198, 3, 2198, 3, 2199, 3, 2199, 3, 2199, 3, 2199, 3, 2199, 3, 2199, 3, 2199, 3, 2199, 3, 2199, 3, 2199, 3, 2199, 3, 2199, 3, 2199, 3, 2199, 3, 2199, 3, 2199, 3, 2200, 3, 2200, 3, 2200, 3, 2200, 3, 2200, 3, 2200, 3, 2201, 3, 2201, 3, 2201, 3, 2201, 3, 2201, 3, 2201, 3, 2202, 3, 2202, 3, 2202, 3, 2202, 3, 2202, 3, 2202, 3, 2202, 3, 2202, 3, 2202, 3, 2202, 3, 2202, 3, 2203, 3, 2203, 3, 2203, 3, 2203, 3, 2203, 3, 2203, 3, 2203, 3, 2204, 3, 2204, 3, 2204, 3, 2204, 3, 2204, 3, 2204, 3, 2204, 3, 2204, 3, 2205, 3, 2205, 3, 2205, 3, 2205, 3, 2205, 3, 2206, 3, 2206, 3, 2206, 3, 2206, 3, 2207, 3, 2207, 3, 2207, 3, 2207, 3, 2207, 3, 2207, 3, 2207, 3, 2208, 3, 2208, 3, 2208, 3, 2208, 3, 2208, 3, 2209, 3, 2209, 3, 2209, 3, 2209, 3, 2209, 3, 2209, 3, 2209, 3, 2209, 3, 2209, 3, 2210, 3, 2210, 3, 2210, 3, 2210, 3, 2210, 3, 2210, 3, 2211, 3, 2211, 3, 2211, 3, 2211, 3, 2211, 3, 2211, 3, 2211, 3, 2211, 3, 2211, 3, 2212, 3, 2212, 3, 2212, 3, 2212, 3, 2212, 3, 2212, 3, 2212, 3, 2212, 3, 2213, 3, 2213, 3, 2213, 3, 2213, 3, 2213, 3, 2213, 7, 2213, 29371, 10, 2213, 12, 2213, 14, 2213, 29374, 11, 2213, 3, 2213, 3, 2213, 3, 2214, 3, 2214, 3, 2214, 7, 2214, 29381, 10, 2214, 12, 2214, 14, 2214, 29384, 11, 2214, 3, 2214, 6, 2214, 29387, 10, 2214, 13, 2214, 14, 2214, 29388, 3, 2215, 3, 2215, 3, 2215, 7, 2215, 29394, 10, 2215, 12, 2215, 14, 2215, 29397, 11, 2215, 3, 2215, 6, 2215, 29400, 10, 2215, 13, 2215, 14, 2215, 29401, 3, 2216, 3, 2216, 3, 2216, 3, 2217, 3, 2217, 3, 2218, 6, 2218, 29410, 10, 2218, 13, 2218, 14, 2218, 29411, 3, 2219, 3, 2219, 3, 2219, 5, 2219, 29417, 10, 2219, 3, 2219, 3, 2219, 6, 2219, 29421, 10, 2219, 13, 2219, 14, 2219, 29422, 5, 2219, 29425, 10, 2219, 5, 2219, 29427, 10, 2219, 3, 2219, 5, 2219, 29430, 10, 2219, 3, 2220, 3, 2220, 3, 2220, 3, 2220, 3, 2220, 7, 2220, 29437, 10, 2220, 12, 2220, 14, 2220, 29440, 11, 2220, 3, 2220, 3, 2220, 3, 2221, 3, 2221, 3, 2221, 3, 2221, 3, 2221, 3, 2221, 3, 2221, 3, 2221, 3, 2221, 3, 2221, 5, 2221, 29454, 10, 2221, 3, 2221, 3, 2221, 3, 2221, 3, 2221, 3, 2222, 3, 2222, 7, 2222, 29462, 10, 2222, 12, 2222, 14, 2222, 29465, 11, 2222, 3, 2222, 3, 2222, 3, 2223, 3, 2223, 7, 2223, 29471, 10, 2223, 12, 2223, 14, 2223, 29474, 11, 2223, 3, 2223, 3, 2223, 3, 2224, 3, 2224, 7, 2224, 29480, 10, 2224, 12, 2224, 14, 2224, 29483, 11, 2224, 3, 2224, 3, 2224, 3, 2225, 3, 2225, 7, 2225, 29489, 10, 2225, 12, 2225, 14, 2225, 29492, 11, 2225, 3, 2225, 3, 2225, 3, 2226, 3, 2226, 7, 2226, 29498, 10, 2226, 12, 2226, 14, 2226, 29501, 11, 2226, 3, 2226, 3, 2226, 3, 2227, 3, 2227, 7, 2227, 29507, 10, 2227, 12, 2227, 14, 2227, 29510, 11, 2227, 3, 2227, 3, 2227, 3, 2228, 3, 2228, 7, 2228, 29516, 10, 2228, 12, 2228, 14, 2228, 29519, 11, 2228, 3, 2228, 3, 2228, 3, 2229, 3, 2229, 7, 2229, 29525, 10, 2229, 12, 2229, 14, 2229, 29528, 11, 2229, 3, 2229, 3, 2229, 3, 2230, 3, 2230, 3, 2230, 3, 2230, 6, 2230, 29536, 10, 2230, 13, 2230, 14, 2230, 29537, 3, 2230, 3, 2230, 3, 2231, 3, 2231, 3, 2232, 3, 2232, 3, 2233, 3, 2233, 3, 2234, 3, 2234, 3, 2235, 3, 2235, 3, 2235, 3, 2236, 3, 2236, 3, 2237, 3, 2237, 3, 2238, 3, 2238, 3, 2239, 3, 2239, 3, 2240, 3, 2240, 3, 2241, 3, 2241, 3, 2242, 3, 2242, 3, 2242, 3, 2243, 3, 2243, 3, 2243, 3, 2243, 7, 2243, 29572, 10, 2243, 12, 2243, 14, 2243, 29575, 11, 2243, 3, 2243, 3, 2243, 3, 2243, 3, 2243, 3, 2243, 5, 2243, 29582, 10, 2243, 3, 2244, 3, 2244, 3, 2244, 3, 2244, 3, 2244, 3, 2244, 3, 2244, 3, 2244, 5, 2244, 29592, 10, 2244, 3, 2245, 3, 2245, 3, 2246, 3, 2246, 3, 2247, 3, 2247, 3, 2248, 3, 2248, 3, 2249, 3, 2249, 3, 2250, 3, 2250, 3, 2251, 3, 2251, 3, 2252, 3, 2252, 3, 2253, 3, 2253, 3, 2254, 3, 2254, 3, 2255, 3, 2255, 3, 2256, 3, 2256, 3, 2257, 3, 2257, 3, 2257, 3, 2257, 7, 2257, 29622, 10, 2257, 12, 2257, 14, 2257, 29625, 11, 2257, 3, 2257, 3, 2257, 3, 2257, 3, 2257, 3, 2258, 3, 2258, 3, 2258, 3, 2258, 7, 2258, 29635, 10, 2258, 12, 2258, 14, 2258, 29638, 11, 2258, 3, 2258, 3, 2258, 3, 2258, 3, 2258, 3, 2258, 3, 2259, 3, 2259, 3, 2259, 3, 2259, 3, 2259, 3, 2259, 3, 2259, 3, 2259, 5, 2259, 29653, 10, 2259, 3, 2259, 3, 2259, 7, 2259, 29657, 10, 2259, 12, 2259, 14, 2259, 29660, 11, 2259, 5, 2259, 29662, 10, 2259, 3, 2259, 3, 2259, 3, 2259, 3, 2259, 3, 2260, 3, 2260, 3, 2260, 3, 2260, 3, 2260, 3, 2260, 3, 2260, 3, 2260, 5, 2260, 29676, 10, 2260, 3, 2260, 3, 2260, 7, 2260, 29680, 10, 2260, 12, 2260, 14, 2260, 29683, 11, 2260, 5, 2260, 29685, 10, 2260, 3, 2260, 3, 2260, 3, 2261, 3, 2261, 3, 2261, 5, 2261, 29692, 10, 2261, 3, 2261, 7, 2261, 29695, 10, 2261, 12, 2261, 14, 2261, 29698, 11, 2261, 3, 2261, 3, 2261, 3, 2262, 3, 2262, 3, 2262, 7, 2262, 29705, 10, 2262, 12, 2262, 14, 2262, 29708, 11, 2262, 3, 2263, 6, 2263, 29711, 10, 2263, 13, 2263, 14, 2263, 29712, 3, 2263, 3, 2263, 3, 2264, 3, 2264, 5, 2264, 29719, 10, 2264, 3, 2265, 3, 2265, 3, 2266, 3, 2266, 3, 2267, 7, 2267, 29726, 10, 2267, 12, 2267, 14, 2267, 29729, 11, 2267, 3, 2267, 5, 2267, 29732, 10, 2267, 3, 2267, 6, 2267, 29735, 10, 2267, 13, 2267, 14, 2267, 29736, 3, 2268, 5, 2268, 29740, 10, 2268, 3, 2268, 3, 2268, 3, 2269, 3, 2269, 11, 29463, 29472, 29481, 29490, 29499, 29508, 29517, 29526, 29636, 2, 2270, 3, 3, 5, 4, 7, 5, 9, 6, 11, 7, 13, 8, 15, 9, 17, 10, 19, 11, 21, 12, 23, 13, 25, 14, 27, 15, 29, 16, 31, 17, 33, 18, 35, 19, 37, 20, 39, 21, 41, 22, 43, 23, 45, 24, 47, 25, 49, 26, 51, 27, 53, 28, 55, 29, 57, 30, 59, 31, 61, 32, 63, 33, 65, 34, 67, 35, 69, 36, 71, 37, 73, 38, 75, 39, 77, 40, 79, 41, 81, 42, 83, 43, 85, 44, 87, 45, 89, 46, 91, 47, 93, 48, 95, 49, 97, 50, 99, 51, 101, 52, 103, 53, 105, 54, 107, 55, 109, 56, 111, 57, 113, 58, 115, 59, 117, 60, 119, 61, 121, 62, 123, 63, 125, 64, 127, 65, 129, 66, 131, 67, 133, 68, 135, 69, 137, 70, 139, 71, 141, 72, 143, 73, 145, 74, 147, 75, 149, 76, 151, 77, 153, 78, 155, 79, 157, 80, 159, 81, 161, 82, 163, 83, 165, 84, 167, 85, 169, 86, 171, 87, 173, 88, 175, 89, 177, 90, 179, 91, 181, 92, 183, 93, 185, 94, 187, 95, 189, 96, 191, 97, 193, 98, 195, 99, 197, 100, 199, 101, 201, 102, 203, 103, 205, 104, 207, 105, 209, 106, 211, 107, 213, 108, 215, 109, 217, 110, 219, 111, 221, 112, 223, 113, 225, 114, 227, 115, 229, 116, 231, 117, 233, 118, 235, 119, 237, 120, 239, 121, 241, 122, 243, 123, 245, 124, 247, 125, 249, 126, 251, 127, 253, 128, 255, 129, 257, 130, 259, 131, 261, 132, 263, 133, 265, 134, 267, 135, 269, 136, 271, 137, 273, 138, 275, 139, 277, 140, 279, 141, 281, 142, 283, 143, 285, 144, 287, 145, 289, 146, 291, 147, 293, 148, 295, 149, 297, 150, 299, 151, 301, 152, 303, 153, 305, 154, 307, 155, 309, 156, 311, 157, 313, 158, 315, 159, 317, 160, 319, 161, 321, 162, 323, 163, 325, 164, 327, 165, 329, 166, 331, 167, 333, 168, 335, 169, 337, 170, 339, 171, 341, 172, 343, 173, 345, 174, 347, 175, 349, 176, 351, 177, 353, 178, 355, 179, 357, 180, 359, 181, 361, 182, 363, 183, 365, 184, 367, 185, 369, 186, 371, 187, 373, 188, 375, 189, 377, 190, 379, 191, 381, 192, 383, 193, 385, 194, 387, 195, 389, 196, 391, 197, 393, 198, 395, 199, 397, 200, 399, 201, 401, 202, 403, 203, 405, 204, 407, 205, 409, 206, 411, 207, 413, 208, 415, 209, 417, 210, 419, 211, 421, 212, 423, 213, 425, 214, 427, 215, 429, 216, 431, 217, 433, 218, 435, 219, 437, 220, 439, 221, 441, 222, 443, 223, 445, 224, 447, 225, 449, 226, 451, 227, 453, 228, 455, 229, 457, 230, 459, 231, 461, 232, 463, 233, 465, 234, 467, 235, 469, 236, 471, 237, 473, 238, 475, 239, 477, 240, 479, 241, 481, 242, 483, 243, 485, 244, 487, 245, 489, 246, 491, 247, 493, 248, 495, 249, 497, 250, 499, 251, 501, 252, 503, 253, 505, 254, 507, 255, 509, 256, 511, 257, 513, 258, 515, 259, 517, 260, 519, 261, 521, 262, 523, 263, 525, 264, 527, 265, 529, 266, 531, 267, 533, 268, 535, 269, 537, 270, 539, 271, 541, 272, 543, 273, 545, 274, 547, 275, 549, 276, 551, 277, 553, 278, 555, 279, 557, 280, 559, 281, 561, 282, 563, 283, 565, 284, 567, 285, 569, 286, 571, 287, 573, 288, 575, 289, 577, 290, 579, 291, 581, 292, 583, 293, 585, 294, 587, 295, 589, 296, 591, 297, 593, 298, 595, 299, 597, 300, 599, 301, 601, 302, 603, 303, 605, 304, 607, 305, 609, 306, 611, 307, 613, 308, 615, 309, 617, 310, 619, 311, 621, 312, 623, 313, 625, 314, 627, 315, 629, 316, 631, 317, 633, 318, 635, 319, 637, 320, 639, 321, 641, 322, 643, 323, 645, 324, 647, 325, 649, 326, 651, 327, 653, 328, 655, 329, 657, 330, 659, 331, 661, 332, 663, 333, 665, 334, 667, 335, 669, 336, 671, 337, 673, 338, 675, 339, 677, 340, 679, 341, 681, 342, 683, 343, 685, 344, 687, 345, 689, 346, 691, 347, 693, 348, 695, 349, 697, 350, 699, 351, 701, 352, 703, 353, 705, 354, 707, 355, 709, 356, 711, 357, 713, 358, 715, 359, 717, 360, 719, 361, 721, 362, 723, 363, 725, 364, 727, 365, 729, 366, 731, 367, 733, 368, 735, 369, 737, 370, 739, 371, 741, 372, 743, 373, 745, 374, 747, 375, 749, 376, 751, 377, 753, 378, 755, 379, 757, 380, 759, 381, 761, 382, 763, 383, 765, 384, 767, 385, 769, 386, 771, 387, 773, 388, 775, 389, 777, 390, 779, 391, 781, 392, 783, 393, 785, 394, 787, 395, 789, 396, 791, 397, 793, 398, 795, 399, 797, 400, 799, 401, 801, 402, 803, 403, 805, 404, 807, 405, 809, 406, 811, 407, 813, 408, 815, 409, 817, 410, 819, 411, 821, 412, 823, 413, 825, 414, 827, 415, 829, 416, 831, 417, 833, 418, 835, 419, 837, 420, 839, 421, 841, 422, 843, 423, 845, 424, 847, 425, 849, 426, 851, 427, 853, 428, 855, 429, 857, 430, 859, 431, 861, 432, 863, 433, 865, 434, 867, 435, 869, 436, 871, 437, 873, 438, 875, 439, 877, 440, 879, 441, 881, 442, 883, 443, 885, 444, 887, 445, 889, 446, 891, 447, 893, 448, 895, 449, 897, 450, 899, 451, 901, 452, 903, 453, 905, 454, 907, 455, 909, 456, 911, 457, 913, 458, 915, 459, 917, 460, 919, 461, 921, 462, 923, 463, 925, 464, 927, 465, 929, 466, 931, 467, 933, 468, 935, 469, 937, 470, 939, 471, 941, 472, 943, 473, 945, 474, 947, 475, 949, 476, 951, 477, 953, 478, 955, 479, 957, 480, 959, 481, 961, 482, 963, 483, 965, 484, 967, 485, 969, 486, 971, 487, 973, 488, 975, 489, 977, 490, 979, 491, 981, 492, 983, 493, 985, 494, 987, 495, 989, 496, 991, 497, 993, 498, 995, 499, 997, 500, 999, 501, 1001, 502, 1003, 503, 1005, 504, 1007, 505, 1009, 506, 1011, 507, 1013, 508, 1015, 509, 1017, 510, 1019, 511, 1021, 512, 1023, 513, 1025, 514, 1027, 515, 1029, 516, 1031, 517, 1033, 518, 1035, 519, 1037, 520, 1039, 521, 1041, 522, 1043, 523, 1045, 524, 1047, 525, 1049, 526, 1051, 527, 1053, 528, 1055, 529, 1057, 530, 1059, 531, 1061, 532, 1063, 533, 1065, 534, 1067, 535, 1069, 536, 1071, 537, 1073, 538, 1075, 539, 1077, 540, 1079, 541, 1081, 542, 1083, 543, 1085, 544, 1087, 545, 1089, 546, 1091, 547, 1093, 548, 1095, 549, 1097, 550, 1099, 551, 1101, 552, 1103, 553, 1105, 554, 1107, 555, 1109, 556, 1111, 557, 1113, 558, 1115, 559, 1117, 560, 1119, 561, 1121, 562, 1123, 563, 1125, 564, 1127, 565, 1129, 566, 1131, 567, 1133, 568, 1135, 569, 1137, 570, 1139, 571, 1141, 572, 1143, 573, 1145, 574, 1147, 575, 1149, 576, 1151, 577, 1153, 578, 1155, 579, 1157, 580, 1159, 581, 1161, 582, 1163, 583, 1165, 584, 1167, 585, 1169, 586, 1171, 587, 1173, 588, 1175, 589, 1177, 590, 1179, 591, 1181, 592, 1183, 593, 1185, 594, 1187, 595, 1189, 596, 1191, 597, 1193, 598, 1195, 599, 1197, 600, 1199, 601, 1201, 602, 1203, 603, 1205, 604, 1207, 605, 1209, 606, 1211, 607, 1213, 608, 1215, 609, 1217, 610, 1219, 611, 1221, 612, 1223, 613, 1225, 614, 1227, 615, 1229, 616, 1231, 617, 1233, 618, 1235, 619, 1237, 620, 1239, 621, 1241, 622, 1243, 623, 1245, 624, 1247, 625, 1249, 626, 1251, 627, 1253, 628, 1255, 629, 1257, 630, 1259, 631, 1261, 632, 1263, 633, 1265, 634, 1267, 635, 1269, 636, 1271, 637, 1273, 638, 1275, 639, 1277, 640, 1279, 641, 1281, 642, 1283, 643, 1285, 644, 1287, 645, 1289, 646, 1291, 647, 1293, 648, 1295, 649, 1297, 650, 1299, 651, 1301, 652, 1303, 653, 1305, 654, 1307, 655, 1309, 656, 1311, 657, 1313, 658, 1315, 659, 1317, 660, 1319, 661, 1321, 662, 1323, 663, 1325, 664, 1327, 665, 1329, 666, 1331, 667, 1333, 668, 1335, 669, 1337, 670, 1339, 671, 1341, 672, 1343, 673, 1345, 674, 1347, 675, 1349, 676, 1351, 677, 1353, 678, 1355, 679, 1357, 680, 1359, 681, 1361, 682, 1363, 683, 1365, 684, 1367, 685, 1369, 686, 1371, 687, 1373, 688, 1375, 689, 1377, 690, 1379, 691, 1381, 692, 1383, 693, 1385, 694, 1387, 695, 1389, 696, 1391, 697, 1393, 698, 1395, 699, 1397, 700, 1399, 701, 1401, 702, 1403, 703, 1405, 704, 1407, 705, 1409, 706, 1411, 707, 1413, 708, 1415, 709, 1417, 710, 1419, 711, 1421, 712, 1423, 713, 1425, 714, 1427, 715, 1429, 716, 1431, 717, 1433, 718, 1435, 719, 1437, 720, 1439, 721, 1441, 722, 1443, 723, 1445, 724, 1447, 725, 1449, 726, 1451, 727, 1453, 728, 1455, 729, 1457, 730, 1459, 731, 1461, 732, 1463, 733, 1465, 734, 1467, 735, 1469, 736, 1471, 737, 1473, 738, 1475, 739, 1477, 740, 1479, 741, 1481, 742, 1483, 743, 1485, 744, 1487, 745, 1489, 746, 1491, 747, 1493, 748, 1495, 749, 1497, 750, 1499, 751, 1501, 752, 1503, 753, 1505, 754, 1507, 755, 1509, 756, 1511, 757, 1513, 758, 1515, 759, 1517, 760, 1519, 761, 1521, 762, 1523, 763, 1525, 764, 1527, 765, 1529, 766, 1531, 767, 1533, 768, 1535, 769, 1537, 770, 1539, 771, 1541, 772, 1543, 773, 1545, 774, 1547, 775, 1549, 776, 1551, 777, 1553, 778, 1555, 779, 1557, 780, 1559, 781, 1561, 782, 1563, 783, 1565, 784, 1567, 785, 1569, 786, 1571, 787, 1573, 788, 1575, 789, 1577, 790, 1579, 791, 1581, 792, 1583, 793, 1585, 794, 1587, 795, 1589, 796, 1591, 797, 1593, 798, 1595, 799, 1597, 800, 1599, 801, 1601, 802, 1603, 803, 1605, 804, 1607, 805, 1609, 806, 1611, 807, 1613, 808, 1615, 809, 1617, 810, 1619, 811, 1621, 812, 1623, 813, 1625, 814, 1627, 815, 1629, 816, 1631, 817, 1633, 818, 1635, 819, 1637, 820, 1639, 821, 1641, 822, 1643, 823, 1645, 824, 1647, 825, 1649, 826, 1651, 827, 1653, 828, 1655, 829, 1657, 830, 1659, 831, 1661, 832, 1663, 833, 1665, 834, 1667, 835, 1669, 836, 1671, 837, 1673, 838, 1675, 839, 1677, 840, 1679, 841, 1681, 842, 1683, 843, 1685, 844, 1687, 845, 1689, 846, 1691, 847, 1693, 848, 1695, 849, 1697, 850, 1699, 851, 1701, 852, 1703, 853, 1705, 854, 1707, 855, 1709, 856, 1711, 857, 1713, 858, 1715, 859, 1717, 860, 1719, 861, 1721, 862, 1723, 863, 1725, 864, 1727, 865, 1729, 866, 1731, 867, 1733, 868, 1735, 869, 1737, 870, 1739, 871, 1741, 872, 1743, 873, 1745, 874, 1747, 875, 1749, 876, 1751, 877, 1753, 878, 1755, 879, 1757, 880, 1759, 881, 1761, 882, 1763, 883, 1765, 884, 1767, 885, 1769, 886, 1771, 887, 1773, 888, 1775, 889, 1777, 890, 1779, 891, 1781, 892, 1783, 893, 1785, 894, 1787, 895, 1789, 896, 1791, 897, 1793, 898, 1795, 899, 1797, 900, 1799, 901, 1801, 902, 1803, 903, 1805, 904, 1807, 905, 1809, 906, 1811, 907, 1813, 908, 1815, 909, 1817, 910, 1819, 911, 1821, 912, 1823, 913, 1825, 914, 1827, 915, 1829, 916, 1831, 917, 1833, 918, 1835, 919, 1837, 920, 1839, 921, 1841, 922, 1843, 923, 1845, 924, 1847, 925, 1849, 926, 1851, 927, 1853, 928, 1855, 929, 1857, 930, 1859, 931, 1861, 932, 1863, 933, 1865, 934, 1867, 935, 1869, 936, 1871, 937, 1873, 938, 1875, 939, 1877, 940, 1879, 941, 1881, 942, 1883, 943, 1885, 944, 1887, 945, 1889, 946, 1891, 947, 1893, 948, 1895, 949, 1897, 950, 1899, 951, 1901, 952, 1903, 953, 1905, 954, 1907, 955, 1909, 956, 1911, 957, 1913, 958, 1915, 959, 1917, 960, 1919, 961, 1921, 962, 1923, 963, 1925, 964, 1927, 965, 1929, 966, 1931, 967, 1933, 968, 1935, 969, 1937, 970, 1939, 971, 1941, 972, 1943, 973, 1945, 974, 1947, 975, 1949, 976, 1951, 977, 1953, 978, 1955, 979, 1957, 980, 1959, 981, 1961, 982, 1963, 983, 1965, 984, 1967, 985, 1969, 986, 1971, 987, 1973, 988, 1975, 989, 1977, 990, 1979, 991, 1981, 992, 1983, 993, 1985, 994, 1987, 995, 1989, 996, 1991, 997, 1993, 998, 1995, 999, 1997, 1000, 1999, 1001, 2001, 1002, 2003, 1003, 2005, 1004, 2007, 1005, 2009, 1006, 2011, 1007, 2013, 1008, 2015, 1009, 2017, 1010, 2019, 1011, 2021, 1012, 2023, 1013, 2025, 1014, 2027, 1015, 2029, 1016, 2031, 1017, 2033, 1018, 2035, 1019, 2037, 1020, 2039, 1021, 2041, 1022, 2043, 1023, 2045, 1024, 2047, 1025, 2049, 1026, 2051, 1027, 2053, 1028, 2055, 1029, 2057, 1030, 2059, 1031, 2061, 1032, 2063, 1033, 2065, 1034, 2067, 1035, 2069, 1036, 2071, 1037, 2073, 1038, 2075, 1039, 2077, 1040, 2079, 1041, 2081, 1042, 2083, 1043, 2085, 1044, 2087, 1045, 2089, 1046, 2091, 1047, 2093, 1048, 2095, 1049, 2097, 1050, 2099, 1051, 2101, 1052, 2103, 1053, 2105, 1054, 2107, 1055, 2109, 1056, 2111, 1057, 2113, 1058, 2115, 1059, 2117, 1060, 2119, 1061, 2121, 1062, 2123, 1063, 2125, 1064, 2127, 1065, 2129, 1066, 2131, 1067, 2133, 1068, 2135, 1069, 2137, 1070, 2139, 1071, 2141, 1072, 2143, 1073, 2145, 1074, 2147, 1075, 2149, 1076, 2151, 1077, 2153, 1078, 2155, 1079, 2157, 1080, 2159, 1081, 2161, 1082, 2163, 1083, 2165, 1084, 2167, 1085, 2169, 1086, 2171, 1087, 2173, 1088, 2175, 1089, 2177, 1090, 2179, 1091, 2181, 1092, 2183, 1093, 2185, 1094, 2187, 1095, 2189, 1096, 2191, 1097, 2193, 1098, 2195, 1099, 2197, 1100, 2199, 1101, 2201, 1102, 2203, 1103, 2205, 1104, 2207, 1105, 2209, 1106, 2211, 1107, 2213, 1108, 2215, 1109, 2217, 1110, 2219, 1111, 2221, 1112, 2223, 1113, 2225, 1114, 2227, 1115, 2229, 1116, 2231, 1117, 2233, 1118, 2235, 1119, 2237, 1120, 2239, 1121, 2241, 1122, 2243, 1123, 2245, 1124, 2247, 1125, 2249, 1126, 2251, 1127, 2253, 1128, 2255, 1129, 2257, 1130, 2259, 1131, 2261, 1132, 2263, 1133, 2265, 1134, 2267, 1135, 2269, 1136, 2271, 1137, 2273, 1138, 2275, 1139, 2277, 1140, 2279, 1141, 2281, 1142, 2283, 1143, 2285, 1144, 2287, 1145, 2289, 1146, 2291, 1147, 2293, 1148, 2295, 1149, 2297, 1150, 2299, 1151, 2301, 1152, 2303, 1153, 2305, 1154, 2307, 1155, 2309, 1156, 2311, 1157, 2313, 1158, 2315, 1159, 2317, 1160, 2319, 1161, 2321, 1162, 2323, 1163, 2325, 1164, 2327, 1165, 2329, 1166, 2331, 1167, 2333, 1168, 2335, 1169, 2337, 1170, 2339, 1171, 2341, 1172, 2343, 1173, 2345, 1174, 2347, 1175, 2349, 1176, 2351, 1177, 2353, 1178, 2355, 1179, 2357, 1180, 2359, 1181, 2361, 1182, 2363, 1183, 2365, 1184, 2367, 1185, 2369, 1186, 2371, 1187, 2373, 1188, 2375, 1189, 2377, 1190, 2379, 1191, 2381, 1192, 2383, 1193, 2385, 1194, 2387, 1195, 2389, 1196, 2391, 1197, 2393, 1198, 2395, 1199, 2397, 1200, 2399, 1201, 2401, 1202, 2403, 1203, 2405, 1204, 2407, 1205, 2409, 1206, 2411, 1207, 2413, 1208, 2415, 1209, 2417, 1210, 2419, 1211, 2421, 1212, 2423, 1213, 2425, 1214, 2427, 1215, 2429, 1216, 2431, 1217, 2433, 1218, 2435, 1219, 2437, 1220, 2439, 1221, 2441, 1222, 2443, 1223, 2445, 1224, 2447, 1225, 2449, 1226, 2451, 1227, 2453, 1228, 2455, 1229, 2457, 1230, 2459, 1231, 2461, 1232, 2463, 1233, 2465, 1234, 2467, 1235, 2469, 1236, 2471, 1237, 2473, 1238, 2475, 1239, 2477, 1240, 2479, 1241, 2481, 1242, 2483, 1243, 2485, 1244, 2487, 1245, 2489, 1246, 2491, 1247, 2493, 1248, 2495, 1249, 2497, 1250, 2499, 1251, 2501, 1252, 2503, 1253, 2505, 1254, 2507, 1255, 2509, 1256, 2511, 1257, 2513, 1258, 2515, 1259, 2517, 1260, 2519, 1261, 2521, 1262, 2523, 1263, 2525, 1264, 2527, 1265, 2529, 1266, 2531, 1267, 2533, 1268, 2535, 1269, 2537, 1270, 2539, 1271, 2541, 1272, 2543, 1273, 2545, 1274, 2547, 1275, 2549, 1276, 2551, 1277, 2553, 1278, 2555, 1279, 2557, 1280, 2559, 1281, 2561, 1282, 2563, 1283, 2565, 1284, 2567, 1285, 2569, 1286, 2571, 1287, 2573, 1288, 2575, 1289, 2577, 1290, 2579, 1291, 2581, 1292, 2583, 1293, 2585, 1294, 2587, 1295, 2589, 1296, 2591, 1297, 2593, 1298, 2595, 1299, 2597, 1300, 2599, 1301, 2601, 1302, 2603, 1303, 2605, 1304, 2607, 1305, 2609, 1306, 2611, 1307, 2613, 1308, 2615, 1309, 2617, 1310, 2619, 1311, 2621, 1312, 2623, 1313, 2625, 1314, 2627, 1315, 2629, 1316, 2631, 1317, 2633, 1318, 2635, 1319, 2637, 1320, 2639, 1321, 2641, 1322, 2643, 1323, 2645, 1324, 2647, 1325, 2649, 1326, 2651, 1327, 2653, 1328, 2655, 1329, 2657, 1330, 2659, 1331, 2661, 1332, 2663, 1333, 2665, 1334, 2667, 1335, 2669, 1336, 2671, 1337, 2673, 1338, 2675, 1339, 2677, 1340, 2679, 1341, 2681, 1342, 2683, 1343, 2685, 1344, 2687, 1345, 2689, 1346, 2691, 1347, 2693, 1348, 2695, 1349, 2697, 1350, 2699, 1351, 2701, 1352, 2703, 1353, 2705, 1354, 2707, 1355, 2709, 1356, 2711, 1357, 2713, 1358, 2715, 1359, 2717, 1360, 2719, 1361, 2721, 1362, 2723, 1363, 2725, 1364, 2727, 1365, 2729, 1366, 2731, 1367, 2733, 1368, 2735, 1369, 2737, 1370, 2739, 1371, 2741, 1372, 2743, 1373, 2745, 1374, 2747, 1375, 2749, 1376, 2751, 1377, 2753, 1378, 2755, 1379, 2757, 1380, 2759, 1381, 2761, 1382, 2763, 1383, 2765, 1384, 2767, 1385, 2769, 1386, 2771, 1387, 2773, 1388, 2775, 1389, 2777, 1390, 2779, 1391, 2781, 1392, 2783, 1393, 2785, 1394, 2787, 1395, 2789, 1396, 2791, 1397, 2793, 1398, 2795, 1399, 2797, 1400, 2799, 1401, 2801, 1402, 2803, 1403, 2805, 1404, 2807, 1405, 2809, 1406, 2811, 1407, 2813, 1408, 2815, 1409, 2817, 1410, 2819, 1411, 2821, 1412, 2823, 1413, 2825, 1414, 2827, 1415, 2829, 1416, 2831, 1417, 2833, 1418, 2835, 1419, 2837, 1420, 2839, 1421, 2841, 1422, 2843, 1423, 2845, 1424, 2847, 1425, 2849, 1426, 2851, 1427, 2853, 1428, 2855, 1429, 2857, 1430, 2859, 1431, 2861, 1432, 2863, 1433, 2865, 1434, 2867, 1435, 2869, 1436, 2871, 1437, 2873, 1438, 2875, 1439, 2877, 1440, 2879, 1441, 2881, 1442, 2883, 1443, 2885, 1444, 2887, 1445, 2889, 1446, 2891, 1447, 2893, 1448, 2895, 1449, 2897, 1450, 2899, 1451, 2901, 1452, 2903, 1453, 2905, 1454, 2907, 1455, 2909, 1456, 2911, 1457, 2913, 1458, 2915, 1459, 2917, 1460, 2919, 1461, 2921, 1462, 2923, 1463, 2925, 1464, 2927, 1465, 2929, 1466, 2931, 1467, 2933, 1468, 2935, 1469, 2937, 1470, 2939, 1471, 2941, 1472, 2943, 1473, 2945, 1474, 2947, 1475, 2949, 1476, 2951, 1477, 2953, 1478, 2955, 1479, 2957, 1480, 2959, 1481, 2961, 1482, 2963, 1483, 2965, 1484, 2967, 1485, 2969, 1486, 2971, 1487, 2973, 1488, 2975, 1489, 2977, 1490, 2979, 1491, 2981, 1492, 2983, 1493, 2985, 1494, 2987, 1495, 2989, 1496, 2991, 1497, 2993, 1498, 2995, 1499, 2997, 1500, 2999, 1501, 3001, 1502, 3003, 1503, 3005, 1504, 3007, 1505, 3009, 1506, 3011, 1507, 3013, 1508, 3015, 1509, 3017, 1510, 3019, 1511, 3021, 1512, 3023, 1513, 3025, 1514, 3027, 1515, 3029, 1516, 3031, 1517, 3033, 1518, 3035, 1519, 3037, 1520, 3039, 1521, 3041, 1522, 3043, 1523, 3045, 1524, 3047, 1525, 3049, 1526, 3051, 1527, 3053, 1528, 3055, 1529, 3057, 1530, 3059, 1531, 3061, 1532, 3063, 1533, 3065, 1534, 3067, 1535, 3069, 1536, 3071, 1537, 3073, 1538, 3075, 1539, 3077, 1540, 3079, 1541, 3081, 1542, 3083, 1543, 3085, 1544, 3087, 1545, 3089, 1546, 3091, 1547, 3093, 1548, 3095, 1549, 3097, 1550, 3099, 1551, 3101, 1552, 3103, 1553, 3105, 1554, 3107, 1555, 3109, 1556, 3111, 1557, 3113, 1558, 3115, 1559, 3117, 1560, 3119, 1561, 3121, 1562, 3123, 1563, 3125, 1564, 3127, 1565, 3129, 1566, 3131, 1567, 3133, 1568, 3135, 1569, 3137, 1570, 3139, 1571, 3141, 1572, 3143, 1573, 3145, 1574, 3147, 1575, 3149, 1576, 3151, 1577, 3153, 1578, 3155, 1579, 3157, 1580, 3159, 1581, 3161, 1582, 3163, 1583, 3165, 1584, 3167, 1585, 3169, 1586, 3171, 1587, 3173, 1588, 3175, 1589, 3177, 1590, 3179, 1591, 3181, 1592, 3183, 1593, 3185, 1594, 3187, 1595, 3189, 1596, 3191, 1597, 3193, 1598, 3195, 1599, 3197, 1600, 3199, 1601, 3201, 1602, 3203, 1603, 3205, 1604, 3207, 1605, 3209, 1606, 3211, 1607, 3213, 1608, 3215, 1609, 3217, 1610, 3219, 1611, 3221, 1612, 3223, 1613, 3225, 1614, 3227, 1615, 3229, 1616, 3231, 1617, 3233, 1618, 3235, 1619, 3237, 1620, 3239, 1621, 3241, 1622, 3243, 1623, 3245, 1624, 3247, 1625, 3249, 1626, 3251, 1627, 3253, 1628, 3255, 1629, 3257, 1630, 3259, 1631, 3261, 1632, 3263, 1633, 3265, 1634, 3267, 1635, 3269, 1636, 3271, 1637, 3273, 1638, 3275, 1639, 3277, 1640, 3279, 1641, 3281, 1642, 3283, 1643, 3285, 1644, 3287, 1645, 3289, 1646, 3291, 1647, 3293, 1648, 3295, 1649, 3297, 1650, 3299, 1651, 3301, 1652, 3303, 1653, 3305, 1654, 3307, 1655, 3309, 1656, 3311, 1657, 3313, 1658, 3315, 1659, 3317, 1660, 3319, 1661, 3321, 1662, 3323, 1663, 3325, 1664, 3327, 1665, 3329, 1666, 3331, 1667, 3333, 1668, 3335, 1669, 3337, 1670, 3339, 1671, 3341, 1672, 3343, 1673, 3345, 1674, 3347, 1675, 3349, 1676, 3351, 1677, 3353, 1678, 3355, 1679, 3357, 1680, 3359, 1681, 3361, 1682, 3363, 1683, 3365, 1684, 3367, 1685, 3369, 1686, 3371, 1687, 3373, 1688, 3375, 1689, 3377, 1690, 3379, 1691, 3381, 1692, 3383, 1693, 3385, 1694, 3387, 1695, 3389, 1696, 3391, 1697, 3393, 1698, 3395, 1699, 3397, 1700, 3399, 1701, 3401, 1702, 3403, 1703, 3405, 1704, 3407, 1705, 3409, 1706, 3411, 1707, 3413, 1708, 3415, 1709, 3417, 1710, 3419, 1711, 3421, 1712, 3423, 1713, 3425, 1714, 3427, 1715, 3429, 1716, 3431, 1717, 3433, 1718, 3435, 1719, 3437, 1720, 3439, 1721, 3441, 1722, 3443, 1723, 3445, 1724, 3447, 1725, 3449, 1726, 3451, 1727, 3453, 1728, 3455, 1729, 3457, 1730, 3459, 1731, 3461, 1732, 3463, 1733, 3465, 1734, 3467, 1735, 3469, 1736, 3471, 1737, 3473, 1738, 3475, 1739, 3477, 1740, 3479, 1741, 3481, 1742, 3483, 1743, 3485, 1744, 3487, 1745, 3489, 1746, 3491, 1747, 3493, 1748, 3495, 1749, 3497, 1750, 3499, 1751, 3501, 1752, 3503, 1753, 3505, 1754, 3507, 1755, 3509, 1756, 3511, 1757, 3513, 1758, 3515, 1759, 3517, 1760, 3519, 1761, 3521, 1762, 3523, 1763, 3525, 1764, 3527, 1765, 3529, 1766, 3531, 1767, 3533, 1768, 3535, 1769, 3537, 1770, 3539, 1771, 3541, 1772, 3543, 1773, 3545, 1774, 3547, 1775, 3549, 1776, 3551, 1777, 3553, 1778, 3555, 1779, 3557, 1780, 3559, 1781, 3561, 1782, 3563, 1783, 3565, 1784, 3567, 1785, 3569, 1786, 3571, 1787, 3573, 1788, 3575, 1789, 3577, 1790, 3579, 1791, 3581, 1792, 3583, 1793, 3585, 1794, 3587, 1795, 3589, 1796, 3591, 1797, 3593, 1798, 3595, 1799, 3597, 1800, 3599, 1801, 3601, 1802, 3603, 1803, 3605, 1804, 3607, 1805, 3609, 1806, 3611, 1807, 3613, 1808, 3615, 1809, 3617, 1810, 3619, 1811, 3621, 1812, 3623, 1813, 3625, 1814, 3627, 1815, 3629, 1816, 3631, 1817, 3633, 1818, 3635, 1819, 3637, 1820, 3639, 1821, 3641, 1822, 3643, 1823, 3645, 1824, 3647, 1825, 3649, 1826, 3651, 1827, 3653, 1828, 3655, 1829, 3657, 1830, 3659, 1831, 3661, 1832, 3663, 1833, 3665, 1834, 3667, 1835, 3669, 1836, 3671, 1837, 3673, 1838, 3675, 1839, 3677, 1840, 3679, 1841, 3681, 1842, 3683, 1843, 3685, 1844, 3687, 1845, 3689, 1846, 3691, 1847, 3693, 1848, 3695, 1849, 3697, 1850, 3699, 1851, 3701, 1852, 3703, 1853, 3705, 1854, 3707, 1855, 3709, 1856, 3711, 1857, 3713, 1858, 3715, 1859, 3717, 1860, 3719, 1861, 3721, 1862, 3723, 1863, 3725, 1864, 3727, 1865, 3729, 1866, 3731, 1867, 3733, 1868, 3735, 1869, 3737, 1870, 3739, 1871, 3741, 1872, 3743, 1873, 3745, 1874, 3747, 1875, 3749, 1876, 3751, 1877, 3753, 1878, 3755, 1879, 3757, 1880, 3759, 1881, 3761, 1882, 3763, 1883, 3765, 1884, 3767, 1885, 3769, 1886, 3771, 1887, 3773, 1888, 3775, 1889, 3777, 1890, 3779, 1891, 3781, 1892, 3783, 1893, 3785, 1894, 3787, 1895, 3789, 1896, 3791, 1897, 3793, 1898, 3795, 1899, 3797, 1900, 3799, 1901, 3801, 1902, 3803, 1903, 3805, 1904, 3807, 1905, 3809, 1906, 3811, 1907, 3813, 1908, 3815, 1909, 3817, 1910, 3819, 1911, 3821, 1912, 3823, 1913, 3825, 1914, 3827, 1915, 3829, 1916, 3831, 1917, 3833, 1918, 3835, 1919, 3837, 1920, 3839, 1921, 3841, 1922, 3843, 1923, 3845, 1924, 3847, 1925, 3849, 1926, 3851, 1927, 3853, 1928, 3855, 1929, 3857, 1930, 3859, 1931, 3861, 1932, 3863, 1933, 3865, 1934, 3867, 1935, 3869, 1936, 3871, 1937, 3873, 1938, 3875, 1939, 3877, 1940, 3879, 1941, 3881, 1942, 3883, 1943, 3885, 1944, 3887, 1945, 3889, 1946, 3891, 1947, 3893, 1948, 3895, 1949, 3897, 1950, 3899, 1951, 3901, 1952, 3903, 1953, 3905, 1954, 3907, 1955, 3909, 1956, 3911, 1957, 3913, 1958, 3915, 1959, 3917, 1960, 3919, 1961, 3921, 1962, 3923, 1963, 3925, 1964, 3927, 1965, 3929, 1966, 3931, 1967, 3933, 1968, 3935, 1969, 3937, 1970, 3939, 1971, 3941, 1972, 3943, 1973, 3945, 1974, 3947, 1975, 3949, 1976, 3951, 1977, 3953, 1978, 3955, 1979, 3957, 1980, 3959, 1981, 3961, 1982, 3963, 1983, 3965, 1984, 3967, 1985, 3969, 1986, 3971, 1987, 3973, 1988, 3975, 1989, 3977, 1990, 3979, 1991, 3981, 1992, 3983, 1993, 3985, 1994, 3987, 1995, 3989, 1996, 3991, 1997, 3993, 1998, 3995, 1999, 3997, 2000, 3999, 2001, 4001, 2002, 4003, 2003, 4005, 2004, 4007, 2005, 4009, 2006, 4011, 2007, 4013, 2008, 4015, 2009, 4017, 2010, 4019, 2011, 4021, 2012, 4023, 2013, 4025, 2014, 4027, 2015, 4029, 2016, 4031, 2017, 4033, 2018, 4035, 2019, 4037, 2020, 4039, 2021, 4041, 2022, 4043, 2023, 4045, 2024, 4047, 2025, 4049, 2026, 4051, 2027, 4053, 2028, 4055, 2029, 4057, 2030, 4059, 2031, 4061, 2032, 4063, 2033, 4065, 2034, 4067, 2035, 4069, 2036, 4071, 2037, 4073, 2038, 4075, 2039, 4077, 2040, 4079, 2041, 4081, 2042, 4083, 2043, 4085, 2044, 4087, 2045, 4089, 2046, 4091, 2047, 4093, 2048, 4095, 2049, 4097, 2050, 4099, 2051, 4101, 2052, 4103, 2053, 4105, 2054, 4107, 2055, 4109, 2056, 4111, 2057, 4113, 2058, 4115, 2059, 4117, 2060, 4119, 2061, 4121, 2062, 4123, 2063, 4125, 2064, 4127, 2065, 4129, 2066, 4131, 2067, 4133, 2068, 4135, 2069, 4137, 2070, 4139, 2071, 4141, 2072, 4143, 2073, 4145, 2074, 4147, 2075, 4149, 2076, 4151, 2077, 4153, 2078, 4155, 2079, 4157, 2080, 4159, 2081, 4161, 2082, 4163, 2083, 4165, 2084, 4167, 2085, 4169, 2086, 4171, 2087, 4173, 2088, 4175, 2089, 4177, 2090, 4179, 2091, 4181, 2092, 4183, 2093, 4185, 2094, 4187, 2095, 4189, 2096, 4191, 2097, 4193, 2098, 4195, 2099, 4197, 2100, 4199, 2101, 4201, 2102, 4203, 2103, 4205, 2104, 4207, 2105, 4209, 2106, 4211, 2107, 4213, 2108, 4215, 2109, 4217, 2110, 4219, 2111, 4221, 2112, 4223, 2113, 4225, 2114, 4227, 2115, 4229, 2116, 4231, 2117, 4233, 2118, 4235, 2119, 4237, 2120, 4239, 2121, 4241, 2122, 4243, 2123, 4245, 2124, 4247, 2125, 4249, 2126, 4251, 2127, 4253, 2128, 4255, 2129, 4257, 2130, 4259, 2131, 4261, 2132, 4263, 2133, 4265, 2134, 4267, 2135, 4269, 2136, 4271, 2137, 4273, 2138, 4275, 2139, 4277, 2140, 4279, 2141, 4281, 2142, 4283, 2143, 4285, 2144, 4287, 2145, 4289, 2146, 4291, 2147, 4293, 2148, 4295, 2149, 4297, 2150, 4299, 2151, 4301, 2152, 4303, 2153, 4305, 2154, 4307, 2155, 4309, 2156, 4311, 2157, 4313, 2158, 4315, 2159, 4317, 2160, 4319, 2161, 4321, 2162, 4323, 2163, 4325, 2164, 4327, 2165, 4329, 2166, 4331, 2167, 4333, 2168, 4335, 2169, 4337, 2170, 4339, 2171, 4341, 2172, 4343, 2173, 4345, 2174, 4347, 2175, 4349, 2176, 4351, 2177, 4353, 2178, 4355, 2179, 4357, 2180, 4359, 2181, 4361, 2182, 4363, 2183, 4365, 2184, 4367, 2185, 4369, 2186, 4371, 2187, 4373, 2188, 4375, 2189, 4377, 2190, 4379, 2191, 4381, 2192, 4383, 2193, 4385, 2194, 4387, 2195, 4389, 2196, 4391, 2197, 4393, 2198, 4395, 2199, 4397, 2200, 4399, 2201, 4401, 2202, 4403, 2203, 4405, 2204, 4407, 2205, 4409, 2206, 4411, 2207, 4413, 2208, 4415, 2209, 4417, 2210, 4419, 2211, 4421, 2212, 4423, 2213, 4425, 2214, 4427, 2215, 4429, 2216, 4431, 2217, 4433, 2218, 4435, 2219, 4437, 2220, 4439, 2221, 4441, 2, 4443, 2, 4445, 2, 4447, 2, 4449, 2, 4451, 2, 4453, 2, 4455, 2, 4457, 2, 4459, 2222, 4461, 2223, 4463, 2224, 4465, 2225, 4467, 2226, 4469, 2227, 4471, 2228, 4473, 2229, 4475, 2230, 4477, 2231, 4479, 2232, 4481, 2233, 4483, 2234, 4485, 2235, 4487, 2236, 4489, 2237, 4491, 2238, 4493, 2239, 4495, 2240, 4497, 2241, 4499, 2242, 4501, 2243, 4503, 2244, 4505, 2245, 4507, 2246, 4509, 2247, 4511, 2248, 4513, 2249, 4515, 2250, 4517, 2251, 4519, 2252, 4521, 2253, 4523, 2254, 4525, 2255, 4527, 2, 4529, 2, 4531, 2, 4533, 2, 4535, 2, 4537, 2, 3, 2, 15, 5, 2, 12, 12, 15, 15, 41, 41, 3, 2, 50, 51, 4, 2, 50, 59, 67, 72, 3, 2, 50, 59, 4, 2, 45, 45, 47, 47, 4, 2, 70, 70, 72, 72, 5, 2, 12, 12, 15, 15, 36, 36, 4, 2, 50, 59, 97, 97, 4, 2, 12, 12, 15, 15, 5, 2, 37, 38, 50, 59, 97, 97, 5, 2, 11, 12, 15, 15, 34, 34, 3, 2, 67, 92, 4, 2, 11, 11, 34, 34, 2, 29795, 2, 3, 3, 2, 2, 2, 2, 5, 3, 2, 2, 2, 2, 7, 3, 2, 2, 2, 2, 9, 3, 2, 2, 2, 2, 11, 3, 2, 2, 2, 2, 13, 3, 2, 2, 2, 2, 15, 3, 2, 2, 2, 2, 17, 3, 2, 2, 2, 2, 19, 3, 2, 2, 2, 2, 21, 3, 2, 2, 2, 2, 23, 3, 2, 2, 2, 2, 25, 3, 2, 2, 2, 2, 27, 3, 2, 2, 2, 2, 29, 3, 2, 2, 2, 2, 31, 3, 2, 2, 2, 2, 33, 3, 2, 2, 2, 2, 35, 3, 2, 2, 2, 2, 37, 3, 2, 2, 2, 2, 39, 3, 2, 2, 2, 2, 41, 3, 2, 2, 2, 2, 43, 3, 2, 2, 2, 2, 45, 3, 2, 2, 2, 2, 47, 3, 2, 2, 2, 2, 49, 3, 2, 2, 2, 2, 51, 3, 2, 2, 2, 2, 53, 3, 2, 2, 2, 2, 55, 3, 2, 2, 2, 2, 57, 3, 2, 2, 2, 2, 59, 3, 2, 2, 2, 2, 61, 3, 2, 2, 2, 2, 63, 3, 2, 2, 2, 2, 65, 3, 2, 2, 2, 2, 67, 3, 2, 2, 2, 2, 69, 3, 2, 2, 2, 2, 71, 3, 2, 2, 2, 2, 73, 3, 2, 2, 2, 2, 75, 3, 2, 2, 2, 2, 77, 3, 2, 2, 2, 2, 79, 3, 2, 2, 2, 2, 81, 3, 2, 2, 2, 2, 83, 3, 2, 2, 2, 2, 85, 3, 2, 2, 2, 2, 87, 3, 2, 2, 2, 2, 89, 3, 2, 2, 2, 2, 91, 3, 2, 2, 2, 2, 93, 3, 2, 2, 2, 2, 95, 3, 2, 2, 2, 2, 97, 3, 2, 2, 2, 2, 99, 3, 2, 2, 2, 2, 101, 3, 2, 2, 2, 2, 103, 3, 2, 2, 2, 2, 105, 3, 2, 2, 2, 2, 107, 3, 2, 2, 2, 2, 109, 3, 2, 2, 2, 2, 111, 3, 2, 2, 2, 2, 113, 3, 2, 2, 2, 2, 115, 3, 2, 2, 2, 2, 117, 3, 2, 2, 2, 2, 119, 3, 2, 2, 2, 2, 121, 3, 2, 2, 2, 2, 123, 3, 2, 2, 2, 2, 125, 3, 2, 2, 2, 2, 127, 3, 2, 2, 2, 2, 129, 3, 2, 2, 2, 2, 131, 3, 2, 2, 2, 2, 133, 3, 2, 2, 2, 2, 135, 3, 2, 2, 2, 2, 137, 3, 2, 2, 2, 2, 139, 3, 2, 2, 2, 2, 141, 3, 2, 2, 2, 2, 143, 3, 2, 2, 2, 2, 145, 3, 2, 2, 2, 2, 147, 3, 2, 2, 2, 2, 149, 3, 2, 2, 2, 2, 151, 3, 2, 2, 2, 2, 153, 3, 2, 2, 2, 2, 155, 3, 2, 2, 2, 2, 157, 3, 2, 2, 2, 2, 159, 3, 2, 2, 2, 2, 161, 3, 2, 2, 2, 2, 163, 3, 2, 2, 2, 2, 165, 3, 2, 2, 2, 2, 167, 3, 2, 2, 2, 2, 169, 3, 2, 2, 2, 2, 171, 3, 2, 2, 2, 2, 173, 3, 2, 2, 2, 2, 175, 3, 2, 2, 2, 2, 177, 3, 2, 2, 2, 2, 179, 3, 2, 2, 2, 2, 181, 3, 2, 2, 2, 2, 183, 3, 2, 2, 2, 2, 185, 3, 2, 2, 2, 2, 187, 3, 2, 2, 2, 2, 189, 3, 2, 2, 2, 2, 191, 3, 2, 2, 2, 2, 193, 3, 2, 2, 2, 2, 195, 3, 2, 2, 2, 2, 197, 3, 2, 2, 2, 2, 199, 3, 2, 2, 2, 2, 201, 3, 2, 2, 2, 2, 203, 3, 2, 2, 2, 2, 205, 3, 2, 2, 2, 2, 207, 3, 2, 2, 2, 2, 209, 3, 2, 2, 2, 2, 211, 3, 2, 2, 2, 2, 213, 3, 2, 2, 2, 2, 215, 3, 2, 2, 2, 2, 217, 3, 2, 2, 2, 2, 219, 3, 2, 2, 2, 2, 221, 3, 2, 2, 2, 2, 223, 3, 2, 2, 2, 2, 225, 3, 2, 2, 2, 2, 227, 3, 2, 2, 2, 2, 229, 3, 2, 2, 2, 2, 231, 3, 2, 2, 2, 2, 233, 3, 2, 2, 2, 2, 235, 3, 2, 2, 2, 2, 237, 3, 2, 2, 2, 2, 239, 3, 2, 2, 2, 2, 241, 3, 2, 2, 2, 2, 243, 3, 2, 2, 2, 2, 245, 3, 2, 2, 2, 2, 247, 3, 2, 2, 2, 2, 249, 3, 2, 2, 2, 2, 251, 3, 2, 2, 2, 2, 253, 3, 2, 2, 2, 2, 255, 3, 2, 2, 2, 2, 257, 3, 2, 2, 2, 2, 259, 3, 2, 2, 2, 2, 261, 3, 2, 2, 2, 2, 263, 3, 2, 2, 2, 2, 265, 3, 2, 2, 2, 2, 267, 3, 2, 2, 2, 2, 269, 3, 2, 2, 2, 2, 271, 3, 2, 2, 2, 2, 273, 3, 2, 2, 2, 2, 275, 3, 2, 2, 2, 2, 277, 3, 2, 2, 2, 2, 279, 3, 2, 2, 2, 2, 281, 3, 2, 2, 2, 2, 283, 3, 2, 2, 2, 2, 285, 3, 2, 2, 2, 2, 287, 3, 2, 2, 2, 2, 289, 3, 2, 2, 2, 2, 291, 3, 2, 2, 2, 2, 293, 3, 2, 2, 2, 2, 295, 3, 2, 2, 2, 2, 297, 3, 2, 2, 2, 2, 299, 3, 2, 2, 2, 2, 301, 3, 2, 2, 2, 2, 303, 3, 2, 2, 2, 2, 305, 3, 2, 2, 2, 2, 307, 3, 2, 2, 2, 2, 309, 3, 2, 2, 2, 2, 311, 3, 2, 2, 2, 2, 313, 3, 2, 2, 2, 2, 315, 3, 2, 2, 2, 2, 317, 3, 2, 2, 2, 2, 319, 3, 2, 2, 2, 2, 321, 3, 2, 2, 2, 2, 323, 3, 2, 2, 2, 2, 325, 3, 2, 2, 2, 2, 327, 3, 2, 2, 2, 2, 329, 3, 2, 2, 2, 2, 331, 3, 2, 2, 2, 2, 333, 3, 2, 2, 2, 2, 335, 3, 2, 2, 2, 2, 337, 3, 2, 2, 2, 2, 339, 3, 2, 2, 2, 2, 341, 3, 2, 2, 2, 2, 343, 3, 2, 2, 2, 2, 345, 3, 2, 2, 2, 2, 347, 3, 2, 2, 2, 2, 349, 3, 2, 2, 2, 2, 351, 3, 2, 2, 2, 2, 353, 3, 2, 2, 2, 2, 355, 3, 2, 2, 2, 2, 357, 3, 2, 2, 2, 2, 359, 3, 2, 2, 2, 2, 361, 3, 2, 2, 2, 2, 363, 3, 2, 2, 2, 2, 365, 3, 2, 2, 2, 2, 367, 3, 2, 2, 2, 2, 369, 3, 2, 2, 2, 2, 371, 3, 2, 2, 2, 2, 373, 3, 2, 2, 2, 2, 375, 3, 2, 2, 2, 2, 377, 3, 2, 2, 2, 2, 379, 3, 2, 2, 2, 2, 381, 3, 2, 2, 2, 2, 383, 3, 2, 2, 2, 2, 385, 3, 2, 2, 2, 2, 387, 3, 2, 2, 2, 2, 389, 3, 2, 2, 2, 2, 391, 3, 2, 2, 2, 2, 393, 3, 2, 2, 2, 2, 395, 3, 2, 2, 2, 2, 397, 3, 2, 2, 2, 2, 399, 3, 2, 2, 2, 2, 401, 3, 2, 2, 2, 2, 403, 3, 2, 2, 2, 2, 405, 3, 2, 2, 2, 2, 407, 3, 2, 2, 2, 2, 409, 3, 2, 2, 2, 2, 411, 3, 2, 2, 2, 2, 413, 3, 2, 2, 2, 2, 415, 3, 2, 2, 2, 2, 417, 3, 2, 2, 2, 2, 419, 3, 2, 2, 2, 2, 421, 3, 2, 2, 2, 2, 423, 3, 2, 2, 2, 2, 425, 3, 2, 2, 2, 2, 427, 3, 2, 2, 2, 2, 429, 3, 2, 2, 2, 2, 431, 3, 2, 2, 2, 2, 433, 3, 2, 2, 2, 2, 435, 3, 2, 2, 2, 2, 437, 3, 2, 2, 2, 2, 439, 3, 2, 2, 2, 2, 441, 3, 2, 2, 2, 2, 443, 3, 2, 2, 2, 2, 445, 3, 2, 2, 2, 2, 447, 3, 2, 2, 2, 2, 449, 3, 2, 2, 2, 2, 451, 3, 2, 2, 2, 2, 453, 3, 2, 2, 2, 2, 455, 3, 2, 2, 2, 2, 457, 3, 2, 2, 2, 2, 459, 3, 2, 2, 2, 2, 461, 3, 2, 2, 2, 2, 463, 3, 2, 2, 2, 2, 465, 3, 2, 2, 2, 2, 467, 3, 2, 2, 2, 2, 469, 3, 2, 2, 2, 2, 471, 3, 2, 2, 2, 2, 473, 3, 2, 2, 2, 2, 475, 3, 2, 2, 2, 2, 477, 3, 2, 2, 2, 2, 479, 3, 2, 2, 2, 2, 481, 3, 2, 2, 2, 2, 483, 3, 2, 2, 2, 2, 485, 3, 2, 2, 2, 2, 487, 3, 2, 2, 2, 2, 489, 3, 2, 2, 2, 2, 491, 3, 2, 2, 2, 2, 493, 3, 2, 2, 2, 2, 495, 3, 2, 2, 2, 2, 497, 3, 2, 2, 2, 2, 499, 3, 2, 2, 2, 2, 501, 3, 2, 2, 2, 2, 503, 3, 2, 2, 2, 2, 505, 3, 2, 2, 2, 2, 507, 3, 2, 2, 2, 2, 509, 3, 2, 2, 2, 2, 511, 3, 2, 2, 2, 2, 513, 3, 2, 2, 2, 2, 515, 3, 2, 2, 2, 2, 517, 3, 2, 2, 2, 2, 519, 3, 2, 2, 2, 2, 521, 3, 2, 2, 2, 2, 523, 3, 2, 2, 2, 2, 525, 3, 2, 2, 2, 2, 527, 3, 2, 2, 2, 2, 529, 3, 2, 2, 2, 2, 531, 3, 2, 2, 2, 2, 533, 3, 2, 2, 2, 2, 535, 3, 2, 2, 2, 2, 537, 3, 2, 2, 2, 2, 539, 3, 2, 2, 2, 2, 541, 3, 2, 2, 2, 2, 543, 3, 2, 2, 2, 2, 545, 3, 2, 2, 2, 2, 547, 3, 2, 2, 2, 2, 549, 3, 2, 2, 2, 2, 551, 3, 2, 2, 2, 2, 553, 3, 2, 2, 2, 2, 555, 3, 2, 2, 2, 2, 557, 3, 2, 2, 2, 2, 559, 3, 2, 2, 2, 2, 561, 3, 2, 2, 2, 2, 563, 3, 2, 2, 2, 2, 565, 3, 2, 2, 2, 2, 567, 3, 2, 2, 2, 2, 569, 3, 2, 2, 2, 2, 571, 3, 2, 2, 2, 2, 573, 3, 2, 2, 2, 2, 575, 3, 2, 2, 2, 2, 577, 3, 2, 2, 2, 2, 579, 3, 2, 2, 2, 2, 581, 3, 2, 2, 2, 2, 583, 3, 2, 2, 2, 2, 585, 3, 2, 2, 2, 2, 587, 3, 2, 2, 2, 2, 589, 3, 2, 2, 2, 2, 591, 3, 2, 2, 2, 2, 593, 3, 2, 2, 2, 2, 595, 3, 2, 2, 2, 2, 597, 3, 2, 2, 2, 2, 599, 3, 2, 2, 2, 2, 601, 3, 2, 2, 2, 2, 603, 3, 2, 2, 2, 2, 605, 3, 2, 2, 2, 2, 607, 3, 2, 2, 2, 2, 609, 3, 2, 2, 2, 2, 611, 3, 2, 2, 2, 2, 613, 3, 2, 2, 2, 2, 615, 3, 2, 2, 2, 2, 617, 3, 2, 2, 2, 2, 619, 3, 2, 2, 2, 2, 621, 3, 2, 2, 2, 2, 623, 3, 2, 2, 2, 2, 625, 3, 2, 2, 2, 2, 627, 3, 2, 2, 2, 2, 629, 3, 2, 2, 2, 2, 631, 3, 2, 2, 2, 2, 633, 3, 2, 2, 2, 2, 635, 3, 2, 2, 2, 2, 637, 3, 2, 2, 2, 2, 639, 3, 2, 2, 2, 2, 641, 3, 2, 2, 2, 2, 643, 3, 2, 2, 2, 2, 645, 3, 2, 2, 2, 2, 647, 3, 2, 2, 2, 2, 649, 3, 2, 2, 2, 2, 651, 3, 2, 2, 2, 2, 653, 3, 2, 2, 2, 2, 655, 3, 2, 2, 2, 2, 657, 3, 2, 2, 2, 2, 659, 3, 2, 2, 2, 2, 661, 3, 2, 2, 2, 2, 663, 3, 2, 2, 2, 2, 665, 3, 2, 2, 2, 2, 667, 3, 2, 2, 2, 2, 669, 3, 2, 2, 2, 2, 671, 3, 2, 2, 2, 2, 673, 3, 2, 2, 2, 2, 675, 3, 2, 2, 2, 2, 677, 3, 2, 2, 2, 2, 679, 3, 2, 2, 2, 2, 681, 3, 2, 2, 2, 2, 683, 3, 2, 2, 2, 2, 685, 3, 2, 2, 2, 2, 687, 3, 2, 2, 2, 2, 689, 3, 2, 2, 2, 2, 691, 3, 2, 2, 2, 2, 693, 3, 2, 2, 2, 2, 695, 3, 2, 2, 2, 2, 697, 3, 2, 2, 2, 2, 699, 3, 2, 2, 2, 2, 701, 3, 2, 2, 2, 2, 703, 3, 2, 2, 2, 2, 705, 3, 2, 2, 2, 2, 707, 3, 2, 2, 2, 2, 709, 3, 2, 2, 2, 2, 711, 3, 2, 2, 2, 2, 713, 3, 2, 2, 2, 2, 715, 3, 2, 2, 2, 2, 717, 3, 2, 2, 2, 2, 719, 3, 2, 2, 2, 2, 721, 3, 2, 2, 2, 2, 723, 3, 2, 2, 2, 2, 725, 3, 2, 2, 2, 2, 727, 3, 2, 2, 2, 2, 729, 3, 2, 2, 2, 2, 731, 3, 2, 2, 2, 2, 733, 3, 2, 2, 2, 2, 735, 3, 2, 2, 2, 2, 737, 3, 2, 2, 2, 2, 739, 3, 2, 2, 2, 2, 741, 3, 2, 2, 2, 2, 743, 3, 2, 2, 2, 2, 745, 3, 2, 2, 2, 2, 747, 3, 2, 2, 2, 2, 749, 3, 2, 2, 2, 2, 751, 3, 2, 2, 2, 2, 753, 3, 2, 2, 2, 2, 755, 3, 2, 2, 2, 2, 757, 3, 2, 2, 2, 2, 759, 3, 2, 2, 2, 2, 761, 3, 2, 2, 2, 2, 763, 3, 2, 2, 2, 2, 765, 3, 2, 2, 2, 2, 767, 3, 2, 2, 2, 2, 769, 3, 2, 2, 2, 2, 771, 3, 2, 2, 2, 2, 773, 3, 2, 2, 2, 2, 775, 3, 2, 2, 2, 2, 777, 3, 2, 2, 2, 2, 779, 3, 2, 2, 2, 2, 781, 3, 2, 2, 2, 2, 783, 3, 2, 2, 2, 2, 785, 3, 2, 2, 2, 2, 787, 3, 2, 2, 2, 2, 789, 3, 2, 2, 2, 2, 791, 3, 2, 2, 2, 2, 793, 3, 2, 2, 2, 2, 795, 3, 2, 2, 2, 2, 797, 3, 2, 2, 2, 2, 799, 3, 2, 2, 2, 2, 801, 3, 2, 2, 2, 2, 803, 3, 2, 2, 2, 2, 805, 3, 2, 2, 2, 2, 807, 3, 2, 2, 2, 2, 809, 3, 2, 2, 2, 2, 811, 3, 2, 2, 2, 2, 813, 3, 2, 2, 2, 2, 815, 3, 2, 2, 2, 2, 817, 3, 2, 2, 2, 2, 819, 3, 2, 2, 2, 2, 821, 3, 2, 2, 2, 2, 823, 3, 2, 2, 2, 2, 825, 3, 2, 2, 2, 2, 827, 3, 2, 2, 2, 2, 829, 3, 2, 2, 2, 2, 831, 3, 2, 2, 2, 2, 833, 3, 2, 2, 2, 2, 835, 3, 2, 2, 2, 2, 837, 3, 2, 2, 2, 2, 839, 3, 2, 2, 2, 2, 841, 3, 2, 2, 2, 2, 843, 3, 2, 2, 2, 2, 845, 3, 2, 2, 2, 2, 847, 3, 2, 2, 2, 2, 849, 3, 2, 2, 2, 2, 851, 3, 2, 2, 2, 2, 853, 3, 2, 2, 2, 2, 855, 3, 2, 2, 2, 2, 857, 3, 2, 2, 2, 2, 859, 3, 2, 2, 2, 2, 861, 3, 2, 2, 2, 2, 863, 3, 2, 2, 2, 2, 865, 3, 2, 2, 2, 2, 867, 3, 2, 2, 2, 2, 869, 3, 2, 2, 2, 2, 871, 3, 2, 2, 2, 2, 873, 3, 2, 2, 2, 2, 875, 3, 2, 2, 2, 2, 877, 3, 2, 2, 2, 2, 879, 3, 2, 2, 2, 2, 881, 3, 2, 2, 2, 2, 883, 3, 2, 2, 2, 2, 885, 3, 2, 2, 2, 2, 887, 3, 2, 2, 2, 2, 889, 3, 2, 2, 2, 2, 891, 3, 2, 2, 2, 2, 893, 3, 2, 2, 2, 2, 895, 3, 2, 2, 2, 2, 897, 3, 2, 2, 2, 2, 899, 3, 2, 2, 2, 2, 901, 3, 2, 2, 2, 2, 903, 3, 2, 2, 2, 2, 905, 3, 2, 2, 2, 2, 907, 3, 2, 2, 2, 2, 909, 3, 2, 2, 2, 2, 911, 3, 2, 2, 2, 2, 913, 3, 2, 2, 2, 2, 915, 3, 2, 2, 2, 2, 917, 3, 2, 2, 2, 2, 919, 3, 2, 2, 2, 2, 921, 3, 2, 2, 2, 2, 923, 3, 2, 2, 2, 2, 925, 3, 2, 2, 2, 2, 927, 3, 2, 2, 2, 2, 929, 3, 2, 2, 2, 2, 931, 3, 2, 2, 2, 2, 933, 3, 2, 2, 2, 2, 935, 3, 2, 2, 2, 2, 937, 3, 2, 2, 2, 2, 939, 3, 2, 2, 2, 2, 941, 3, 2, 2, 2, 2, 943, 3, 2, 2, 2, 2, 945, 3, 2, 2, 2, 2, 947, 3, 2, 2, 2, 2, 949, 3, 2, 2, 2, 2, 951, 3, 2, 2, 2, 2, 953, 3, 2, 2, 2, 2, 955, 3, 2, 2, 2, 2, 957, 3, 2, 2, 2, 2, 959, 3, 2, 2, 2, 2, 961, 3, 2, 2, 2, 2, 963, 3, 2, 2, 2, 2, 965, 3, 2, 2, 2, 2, 967, 3, 2, 2, 2, 2, 969, 3, 2, 2, 2, 2, 971, 3, 2, 2, 2, 2, 973, 3, 2, 2, 2, 2, 975, 3, 2, 2, 2, 2, 977, 3, 2, 2, 2, 2, 979, 3, 2, 2, 2, 2, 981, 3, 2, 2, 2, 2, 983, 3, 2, 2, 2, 2, 985, 3, 2, 2, 2, 2, 987, 3, 2, 2, 2, 2, 989, 3, 2, 2, 2, 2, 991, 3, 2, 2, 2, 2, 993, 3, 2, 2, 2, 2, 995, 3, 2, 2, 2, 2, 997, 3, 2, 2, 2, 2, 999, 3, 2, 2, 2, 2, 1001, 3, 2, 2, 2, 2, 1003, 3, 2, 2, 2, 2, 1005, 3, 2, 2, 2, 2, 1007, 3, 2, 2, 2, 2, 1009, 3, 2, 2, 2, 2, 1011, 3, 2, 2, 2, 2, 1013, 3, 2, 2, 2, 2, 1015, 3, 2, 2, 2, 2, 1017, 3, 2, 2, 2, 2, 1019, 3, 2, 2, 2, 2, 1021, 3, 2, 2, 2, 2, 1023, 3, 2, 2, 2, 2, 1025, 3, 2, 2, 2, 2, 1027, 3, 2, 2, 2, 2, 1029, 3, 2, 2, 2, 2, 1031, 3, 2, 2, 2, 2, 1033, 3, 2, 2, 2, 2, 1035, 3, 2, 2, 2, 2, 1037, 3, 2, 2, 2, 2, 1039, 3, 2, 2, 2, 2, 1041, 3, 2, 2, 2, 2, 1043, 3, 2, 2, 2, 2, 1045, 3, 2, 2, 2, 2, 1047, 3, 2, 2, 2, 2, 1049, 3, 2, 2, 2, 2, 1051, 3, 2, 2, 2, 2, 1053, 3, 2, 2, 2, 2, 1055, 3, 2, 2, 2, 2, 1057, 3, 2, 2, 2, 2, 1059, 3, 2, 2, 2, 2, 1061, 3, 2, 2, 2, 2, 1063, 3, 2, 2, 2, 2, 1065, 3, 2, 2, 2, 2, 1067, 3, 2, 2, 2, 2, 1069, 3, 2, 2, 2, 2, 1071, 3, 2, 2, 2, 2, 1073, 3, 2, 2, 2, 2, 1075, 3, 2, 2, 2, 2, 1077, 3, 2, 2, 2, 2, 1079, 3, 2, 2, 2, 2, 1081, 3, 2, 2, 2, 2, 1083, 3, 2, 2, 2, 2, 1085, 3, 2, 2, 2, 2, 1087, 3, 2, 2, 2, 2, 1089, 3, 2, 2, 2, 2, 1091, 3, 2, 2, 2, 2, 1093, 3, 2, 2, 2, 2, 1095, 3, 2, 2, 2, 2, 1097, 3, 2, 2, 2, 2, 1099, 3, 2, 2, 2, 2, 1101, 3, 2, 2, 2, 2, 1103, 3, 2, 2, 2, 2, 1105, 3, 2, 2, 2, 2, 1107, 3, 2, 2, 2, 2, 1109, 3, 2, 2, 2, 2, 1111, 3, 2, 2, 2, 2, 1113, 3, 2, 2, 2, 2, 1115, 3, 2, 2, 2, 2, 1117, 3, 2, 2, 2, 2, 1119, 3, 2, 2, 2, 2, 1121, 3, 2, 2, 2, 2, 1123, 3, 2, 2, 2, 2, 1125, 3, 2, 2, 2, 2, 1127, 3, 2, 2, 2, 2, 1129, 3, 2, 2, 2, 2, 1131, 3, 2, 2, 2, 2, 1133, 3, 2, 2, 2, 2, 1135, 3, 2, 2, 2, 2, 1137, 3, 2, 2, 2, 2, 1139, 3, 2, 2, 2, 2, 1141, 3, 2, 2, 2, 2, 1143, 3, 2, 2, 2, 2, 1145, 3, 2, 2, 2, 2, 1147, 3, 2, 2, 2, 2, 1149, 3, 2, 2, 2, 2, 1151, 3, 2, 2, 2, 2, 1153, 3, 2, 2, 2, 2, 1155, 3, 2, 2, 2, 2, 1157, 3, 2, 2, 2, 2, 1159, 3, 2, 2, 2, 2, 1161, 3, 2, 2, 2, 2, 1163, 3, 2, 2, 2, 2, 1165, 3, 2, 2, 2, 2, 1167, 3, 2, 2, 2, 2, 1169, 3, 2, 2, 2, 2, 1171, 3, 2, 2, 2, 2, 1173, 3, 2, 2, 2, 2, 1175, 3, 2, 2, 2, 2, 1177, 3, 2, 2, 2, 2, 1179, 3, 2, 2, 2, 2, 1181, 3, 2, 2, 2, 2, 1183, 3, 2, 2, 2, 2, 1185, 3, 2, 2, 2, 2, 1187, 3, 2, 2, 2, 2, 1189, 3, 2, 2, 2, 2, 1191, 3, 2, 2, 2, 2, 1193, 3, 2, 2, 2, 2, 1195, 3, 2, 2, 2, 2, 1197, 3, 2, 2, 2, 2, 1199, 3, 2, 2, 2, 2, 1201, 3, 2, 2, 2, 2, 1203, 3, 2, 2, 2, 2, 1205, 3, 2, 2, 2, 2, 1207, 3, 2, 2, 2, 2, 1209, 3, 2, 2, 2, 2, 1211, 3, 2, 2, 2, 2, 1213, 3, 2, 2, 2, 2, 1215, 3, 2, 2, 2, 2, 1217, 3, 2, 2, 2, 2, 1219, 3, 2, 2, 2, 2, 1221, 3, 2, 2, 2, 2, 1223, 3, 2, 2, 2, 2, 1225, 3, 2, 2, 2, 2, 1227, 3, 2, 2, 2, 2, 1229, 3, 2, 2, 2, 2, 1231, 3, 2, 2, 2, 2, 1233, 3, 2, 2, 2, 2, 1235, 3, 2, 2, 2, 2, 1237, 3, 2, 2, 2, 2, 1239, 3, 2, 2, 2, 2, 1241, 3, 2, 2, 2, 2, 1243, 3, 2, 2, 2, 2, 1245, 3, 2, 2, 2, 2, 1247, 3, 2, 2, 2, 2, 1249, 3, 2, 2, 2, 2, 1251, 3, 2, 2, 2, 2, 1253, 3, 2, 2, 2, 2, 1255, 3, 2, 2, 2, 2, 1257, 3, 2, 2, 2, 2, 1259, 3, 2, 2, 2, 2, 1261, 3, 2, 2, 2, 2, 1263, 3, 2, 2, 2, 2, 1265, 3, 2, 2, 2, 2, 1267, 3, 2, 2, 2, 2, 1269, 3, 2, 2, 2, 2, 1271, 3, 2, 2, 2, 2, 1273, 3, 2, 2, 2, 2, 1275, 3, 2, 2, 2, 2, 1277, 3, 2, 2, 2, 2, 1279, 3, 2, 2, 2, 2, 1281, 3, 2, 2, 2, 2, 1283, 3, 2, 2, 2, 2, 1285, 3, 2, 2, 2, 2, 1287, 3, 2, 2, 2, 2, 1289, 3, 2, 2, 2, 2, 1291, 3, 2, 2, 2, 2, 1293, 3, 2, 2, 2, 2, 1295, 3, 2, 2, 2, 2, 1297, 3, 2, 2, 2, 2, 1299, 3, 2, 2, 2, 2, 1301, 3, 2, 2, 2, 2, 1303, 3, 2, 2, 2, 2, 1305, 3, 2, 2, 2, 2, 1307, 3, 2, 2, 2, 2, 1309, 3, 2, 2, 2, 2, 1311, 3, 2, 2, 2, 2, 1313, 3, 2, 2, 2, 2, 1315, 3, 2, 2, 2, 2, 1317, 3, 2, 2, 2, 2, 1319, 3, 2, 2, 2, 2, 1321, 3, 2, 2, 2, 2, 1323, 3, 2, 2, 2, 2, 1325, 3, 2, 2, 2, 2, 1327, 3, 2, 2, 2, 2, 1329, 3, 2, 2, 2, 2, 1331, 3, 2, 2, 2, 2, 1333, 3, 2, 2, 2, 2, 1335, 3, 2, 2, 2, 2, 1337, 3, 2, 2, 2, 2, 1339, 3, 2, 2, 2, 2, 1341, 3, 2, 2, 2, 2, 1343, 3, 2, 2, 2, 2, 1345, 3, 2, 2, 2, 2, 1347, 3, 2, 2, 2, 2, 1349, 3, 2, 2, 2, 2, 1351, 3, 2, 2, 2, 2, 1353, 3, 2, 2, 2, 2, 1355, 3, 2, 2, 2, 2, 1357, 3, 2, 2, 2, 2, 1359, 3, 2, 2, 2, 2, 1361, 3, 2, 2, 2, 2, 1363, 3, 2, 2, 2, 2, 1365, 3, 2, 2, 2, 2, 1367, 3, 2, 2, 2, 2, 1369, 3, 2, 2, 2, 2, 1371, 3, 2, 2, 2, 2, 1373, 3, 2, 2, 2, 2, 1375, 3, 2, 2, 2, 2, 1377, 3, 2, 2, 2, 2, 1379, 3, 2, 2, 2, 2, 1381, 3, 2, 2, 2, 2, 1383, 3, 2, 2, 2, 2, 1385, 3, 2, 2, 2, 2, 1387, 3, 2, 2, 2, 2, 1389, 3, 2, 2, 2, 2, 1391, 3, 2, 2, 2, 2, 1393, 3, 2, 2, 2, 2, 1395, 3, 2, 2, 2, 2, 1397, 3, 2, 2, 2, 2, 1399, 3, 2, 2, 2, 2, 1401, 3, 2, 2, 2, 2, 1403, 3, 2, 2, 2, 2, 1405, 3, 2, 2, 2, 2, 1407, 3, 2, 2, 2, 2, 1409, 3, 2, 2, 2, 2, 1411, 3, 2, 2, 2, 2, 1413, 3, 2, 2, 2, 2, 1415, 3, 2, 2, 2, 2, 1417, 3, 2, 2, 2, 2, 1419, 3, 2, 2, 2, 2, 1421, 3, 2, 2, 2, 2, 1423, 3, 2, 2, 2, 2, 1425, 3, 2, 2, 2, 2, 1427, 3, 2, 2, 2, 2, 1429, 3, 2, 2, 2, 2, 1431, 3, 2, 2, 2, 2, 1433, 3, 2, 2, 2, 2, 1435, 3, 2, 2, 2, 2, 1437, 3, 2, 2, 2, 2, 1439, 3, 2, 2, 2, 2, 1441, 3, 2, 2, 2, 2, 1443, 3, 2, 2, 2, 2, 1445, 3, 2, 2, 2, 2, 1447, 3, 2, 2, 2, 2, 1449, 3, 2, 2, 2, 2, 1451, 3, 2, 2, 2, 2, 1453, 3, 2, 2, 2, 2, 1455, 3, 2, 2, 2, 2, 1457, 3, 2, 2, 2, 2, 1459, 3, 2, 2, 2, 2, 1461, 3, 2, 2, 2, 2, 1463, 3, 2, 2, 2, 2, 1465, 3, 2, 2, 2, 2, 1467, 3, 2, 2, 2, 2, 1469, 3, 2, 2, 2, 2, 1471, 3, 2, 2, 2, 2, 1473, 3, 2, 2, 2, 2, 1475, 3, 2, 2, 2, 2, 1477, 3, 2, 2, 2, 2, 1479, 3, 2, 2, 2, 2, 1481, 3, 2, 2, 2, 2, 1483, 3, 2, 2, 2, 2, 1485, 3, 2, 2, 2, 2, 1487, 3, 2, 2, 2, 2, 1489, 3, 2, 2, 2, 2, 1491, 3, 2, 2, 2, 2, 1493, 3, 2, 2, 2, 2, 1495, 3, 2, 2, 2, 2, 1497, 3, 2, 2, 2, 2, 1499, 3, 2, 2, 2, 2, 1501, 3, 2, 2, 2, 2, 1503, 3, 2, 2, 2, 2, 1505, 3, 2, 2, 2, 2, 1507, 3, 2, 2, 2, 2, 1509, 3, 2, 2, 2, 2, 1511, 3, 2, 2, 2, 2, 1513, 3, 2, 2, 2, 2, 1515, 3, 2, 2, 2, 2, 1517, 3, 2, 2, 2, 2, 1519, 3, 2, 2, 2, 2, 1521, 3, 2, 2, 2, 2, 1523, 3, 2, 2, 2, 2, 1525, 3, 2, 2, 2, 2, 1527, 3, 2, 2, 2, 2, 1529, 3, 2, 2, 2, 2, 1531, 3, 2, 2, 2, 2, 1533, 3, 2, 2, 2, 2, 1535, 3, 2, 2, 2, 2, 1537, 3, 2, 2, 2, 2, 1539, 3, 2, 2, 2, 2, 1541, 3, 2, 2, 2, 2, 1543, 3, 2, 2, 2, 2, 1545, 3, 2, 2, 2, 2, 1547, 3, 2, 2, 2, 2, 1549, 3, 2, 2, 2, 2, 1551, 3, 2, 2, 2, 2, 1553, 3, 2, 2, 2, 2, 1555, 3, 2, 2, 2, 2, 1557, 3, 2, 2, 2, 2, 1559, 3, 2, 2, 2, 2, 1561, 3, 2, 2, 2, 2, 1563, 3, 2, 2, 2, 2, 1565, 3, 2, 2, 2, 2, 1567, 3, 2, 2, 2, 2, 1569, 3, 2, 2, 2, 2, 1571, 3, 2, 2, 2, 2, 1573, 3, 2, 2, 2, 2, 1575, 3, 2, 2, 2, 2, 1577, 3, 2, 2, 2, 2, 1579, 3, 2, 2, 2, 2, 1581, 3, 2, 2, 2, 2, 1583, 3, 2, 2, 2, 2, 1585, 3, 2, 2, 2, 2, 1587, 3, 2, 2, 2, 2, 1589, 3, 2, 2, 2, 2, 1591, 3, 2, 2, 2, 2, 1593, 3, 2, 2, 2, 2, 1595, 3, 2, 2, 2, 2, 1597, 3, 2, 2, 2, 2, 1599, 3, 2, 2, 2, 2, 1601, 3, 2, 2, 2, 2, 1603, 3, 2, 2, 2, 2, 1605, 3, 2, 2, 2, 2, 1607, 3, 2, 2, 2, 2, 1609, 3, 2, 2, 2, 2, 1611, 3, 2, 2, 2, 2, 1613, 3, 2, 2, 2, 2, 1615, 3, 2, 2, 2, 2, 1617, 3, 2, 2, 2, 2, 1619, 3, 2, 2, 2, 2, 1621, 3, 2, 2, 2, 2, 1623, 3, 2, 2, 2, 2, 1625, 3, 2, 2, 2, 2, 1627, 3, 2, 2, 2, 2, 1629, 3, 2, 2, 2, 2, 1631, 3, 2, 2, 2, 2, 1633, 3, 2, 2, 2, 2, 1635, 3, 2, 2, 2, 2, 1637, 3, 2, 2, 2, 2, 1639, 3, 2, 2, 2, 2, 1641, 3, 2, 2, 2, 2, 1643, 3, 2, 2, 2, 2, 1645, 3, 2, 2, 2, 2, 1647, 3, 2, 2, 2, 2, 1649, 3, 2, 2, 2, 2, 1651, 3, 2, 2, 2, 2, 1653, 3, 2, 2, 2, 2, 1655, 3, 2, 2, 2, 2, 1657, 3, 2, 2, 2, 2, 1659, 3, 2, 2, 2, 2, 1661, 3, 2, 2, 2, 2, 1663, 3, 2, 2, 2, 2, 1665, 3, 2, 2, 2, 2, 1667, 3, 2, 2, 2, 2, 1669, 3, 2, 2, 2, 2, 1671, 3, 2, 2, 2, 2, 1673, 3, 2, 2, 2, 2, 1675, 3, 2, 2, 2, 2, 1677, 3, 2, 2, 2, 2, 1679, 3, 2, 2, 2, 2, 1681, 3, 2, 2, 2, 2, 1683, 3, 2, 2, 2, 2, 1685, 3, 2, 2, 2, 2, 1687, 3, 2, 2, 2, 2, 1689, 3, 2, 2, 2, 2, 1691, 3, 2, 2, 2, 2, 1693, 3, 2, 2, 2, 2, 1695, 3, 2, 2, 2, 2, 1697, 3, 2, 2, 2, 2, 1699, 3, 2, 2, 2, 2, 1701, 3, 2, 2, 2, 2, 1703, 3, 2, 2, 2, 2, 1705, 3, 2, 2, 2, 2, 1707, 3, 2, 2, 2, 2, 1709, 3, 2, 2, 2, 2, 1711, 3, 2, 2, 2, 2, 1713, 3, 2, 2, 2, 2, 1715, 3, 2, 2, 2, 2, 1717, 3, 2, 2, 2, 2, 1719, 3, 2, 2, 2, 2, 1721, 3, 2, 2, 2, 2, 1723, 3, 2, 2, 2, 2, 1725, 3, 2, 2, 2, 2, 1727, 3, 2, 2, 2, 2, 1729, 3, 2, 2, 2, 2, 1731, 3, 2, 2, 2, 2, 1733, 3, 2, 2, 2, 2, 1735, 3, 2, 2, 2, 2, 1737, 3, 2, 2, 2, 2, 1739, 3, 2, 2, 2, 2, 1741, 3, 2, 2, 2, 2, 1743, 3, 2, 2, 2, 2, 1745, 3, 2, 2, 2, 2, 1747, 3, 2, 2, 2, 2, 1749, 3, 2, 2, 2, 2, 1751, 3, 2, 2, 2, 2, 1753, 3, 2, 2, 2, 2, 1755, 3, 2, 2, 2, 2, 1757, 3, 2, 2, 2, 2, 1759, 3, 2, 2, 2, 2, 1761, 3, 2, 2, 2, 2, 1763, 3, 2, 2, 2, 2, 1765, 3, 2, 2, 2, 2, 1767, 3, 2, 2, 2, 2, 1769, 3, 2, 2, 2, 2, 1771, 3, 2, 2, 2, 2, 1773, 3, 2, 2, 2, 2, 1775, 3, 2, 2, 2, 2, 1777, 3, 2, 2, 2, 2, 1779, 3, 2, 2, 2, 2, 1781, 3, 2, 2, 2, 2, 1783, 3, 2, 2, 2, 2, 1785, 3, 2, 2, 2, 2, 1787, 3, 2, 2, 2, 2, 1789, 3, 2, 2, 2, 2, 1791, 3, 2, 2, 2, 2, 1793, 3, 2, 2, 2, 2, 1795, 3, 2, 2, 2, 2, 1797, 3, 2, 2, 2, 2, 1799, 3, 2, 2, 2, 2, 1801, 3, 2, 2, 2, 2, 1803, 3, 2, 2, 2, 2, 1805, 3, 2, 2, 2, 2, 1807, 3, 2, 2, 2, 2, 1809, 3, 2, 2, 2, 2, 1811, 3, 2, 2, 2, 2, 1813, 3, 2, 2, 2, 2, 1815, 3, 2, 2, 2, 2, 1817, 3, 2, 2, 2, 2, 1819, 3, 2, 2, 2, 2, 1821, 3, 2, 2, 2, 2, 1823, 3, 2, 2, 2, 2, 1825, 3, 2, 2, 2, 2, 1827, 3, 2, 2, 2, 2, 1829, 3, 2, 2, 2, 2, 1831, 3, 2, 2, 2, 2, 1833, 3, 2, 2, 2, 2, 1835, 3, 2, 2, 2, 2, 1837, 3, 2, 2, 2, 2, 1839, 3, 2, 2, 2, 2, 1841, 3, 2, 2, 2, 2, 1843, 3, 2, 2, 2, 2, 1845, 3, 2, 2, 2, 2, 1847, 3, 2, 2, 2, 2, 1849, 3, 2, 2, 2, 2, 1851, 3, 2, 2, 2, 2, 1853, 3, 2, 2, 2, 2, 1855, 3, 2, 2, 2, 2, 1857, 3, 2, 2, 2, 2, 1859, 3, 2, 2, 2, 2, 1861, 3, 2, 2, 2, 2, 1863, 3, 2, 2, 2, 2, 1865, 3, 2, 2, 2, 2, 1867, 3, 2, 2, 2, 2, 1869, 3, 2, 2, 2, 2, 1871, 3, 2, 2, 2, 2, 1873, 3, 2, 2, 2, 2, 1875, 3, 2, 2, 2, 2, 1877, 3, 2, 2, 2, 2, 1879, 3, 2, 2, 2, 2, 1881, 3, 2, 2, 2, 2, 1883, 3, 2, 2, 2, 2, 1885, 3, 2, 2, 2, 2, 1887, 3, 2, 2, 2, 2, 1889, 3, 2, 2, 2, 2, 1891, 3, 2, 2, 2, 2, 1893, 3, 2, 2, 2, 2, 1895, 3, 2, 2, 2, 2, 1897, 3, 2, 2, 2, 2, 1899, 3, 2, 2, 2, 2, 1901, 3, 2, 2, 2, 2, 1903, 3, 2, 2, 2, 2, 1905, 3, 2, 2, 2, 2, 1907, 3, 2, 2, 2, 2, 1909, 3, 2, 2, 2, 2, 1911, 3, 2, 2, 2, 2, 1913, 3, 2, 2, 2, 2, 1915, 3, 2, 2, 2, 2, 1917, 3, 2, 2, 2, 2, 1919, 3, 2, 2, 2, 2, 1921, 3, 2, 2, 2, 2, 1923, 3, 2, 2, 2, 2, 1925, 3, 2, 2, 2, 2, 1927, 3, 2, 2, 2, 2, 1929, 3, 2, 2, 2, 2, 1931, 3, 2, 2, 2, 2, 1933, 3, 2, 2, 2, 2, 1935, 3, 2, 2, 2, 2, 1937, 3, 2, 2, 2, 2, 1939, 3, 2, 2, 2, 2, 1941, 3, 2, 2, 2, 2, 1943, 3, 2, 2, 2, 2, 1945, 3, 2, 2, 2, 2, 1947, 3, 2, 2, 2, 2, 1949, 3, 2, 2, 2, 2, 1951, 3, 2, 2, 2, 2, 1953, 3, 2, 2, 2, 2, 1955, 3, 2, 2, 2, 2, 1957, 3, 2, 2, 2, 2, 1959, 3, 2, 2, 2, 2, 1961, 3, 2, 2, 2, 2, 1963, 3, 2, 2, 2, 2, 1965, 3, 2, 2, 2, 2, 1967, 3, 2, 2, 2, 2, 1969, 3, 2, 2, 2, 2, 1971, 3, 2, 2, 2, 2, 1973, 3, 2, 2, 2, 2, 1975, 3, 2, 2, 2, 2, 1977, 3, 2, 2, 2, 2, 1979, 3, 2, 2, 2, 2, 1981, 3, 2, 2, 2, 2, 1983, 3, 2, 2, 2, 2, 1985, 3, 2, 2, 2, 2, 1987, 3, 2, 2, 2, 2, 1989, 3, 2, 2, 2, 2, 1991, 3, 2, 2, 2, 2, 1993, 3, 2, 2, 2, 2, 1995, 3, 2, 2, 2, 2, 1997, 3, 2, 2, 2, 2, 1999, 3, 2, 2, 2, 2, 2001, 3, 2, 2, 2, 2, 2003, 3, 2, 2, 2, 2, 2005, 3, 2, 2, 2, 2, 2007, 3, 2, 2, 2, 2, 2009, 3, 2, 2, 2, 2, 2011, 3, 2, 2, 2, 2, 2013, 3, 2, 2, 2, 2, 2015, 3, 2, 2, 2, 2, 2017, 3, 2, 2, 2, 2, 2019, 3, 2, 2, 2, 2, 2021, 3, 2, 2, 2, 2, 2023, 3, 2, 2, 2, 2, 2025, 3, 2, 2, 2, 2, 2027, 3, 2, 2, 2, 2, 2029, 3, 2, 2, 2, 2, 2031, 3, 2, 2, 2, 2, 2033, 3, 2, 2, 2, 2, 2035, 3, 2, 2, 2, 2, 2037, 3, 2, 2, 2, 2, 2039, 3, 2, 2, 2, 2, 2041, 3, 2, 2, 2, 2, 2043, 3, 2, 2, 2, 2, 2045, 3, 2, 2, 2, 2, 2047, 3, 2, 2, 2, 2, 2049, 3, 2, 2, 2, 2, 2051, 3, 2, 2, 2, 2, 2053, 3, 2, 2, 2, 2, 2055, 3, 2, 2, 2, 2, 2057, 3, 2, 2, 2, 2, 2059, 3, 2, 2, 2, 2, 2061, 3, 2, 2, 2, 2, 2063, 3, 2, 2, 2, 2, 2065, 3, 2, 2, 2, 2, 2067, 3, 2, 2, 2, 2, 2069, 3, 2, 2, 2, 2, 2071, 3, 2, 2, 2, 2, 2073, 3, 2, 2, 2, 2, 2075, 3, 2, 2, 2, 2, 2077, 3, 2, 2, 2, 2, 2079, 3, 2, 2, 2, 2, 2081, 3, 2, 2, 2, 2, 2083, 3, 2, 2, 2, 2, 2085, 3, 2, 2, 2, 2, 2087, 3, 2, 2, 2, 2, 2089, 3, 2, 2, 2, 2, 2091, 3, 2, 2, 2, 2, 2093, 3, 2, 2, 2, 2, 2095, 3, 2, 2, 2, 2, 2097, 3, 2, 2, 2, 2, 2099, 3, 2, 2, 2, 2, 2101, 3, 2, 2, 2, 2, 2103, 3, 2, 2, 2, 2, 2105, 3, 2, 2, 2, 2, 2107, 3, 2, 2, 2, 2, 2109, 3, 2, 2, 2, 2, 2111, 3, 2, 2, 2, 2, 2113, 3, 2, 2, 2, 2, 2115, 3, 2, 2, 2, 2, 2117, 3, 2, 2, 2, 2, 2119, 3, 2, 2, 2, 2, 2121, 3, 2, 2, 2, 2, 2123, 3, 2, 2, 2, 2, 2125, 3, 2, 2, 2, 2, 2127, 3, 2, 2, 2, 2, 2129, 3, 2, 2, 2, 2, 2131, 3, 2, 2, 2, 2, 2133, 3, 2, 2, 2, 2, 2135, 3, 2, 2, 2, 2, 2137, 3, 2, 2, 2, 2, 2139, 3, 2, 2, 2, 2, 2141, 3, 2, 2, 2, 2, 2143, 3, 2, 2, 2, 2, 2145, 3, 2, 2, 2, 2, 2147, 3, 2, 2, 2, 2, 2149, 3, 2, 2, 2, 2, 2151, 3, 2, 2, 2, 2, 2153, 3, 2, 2, 2, 2, 2155, 3, 2, 2, 2, 2, 2157, 3, 2, 2, 2, 2, 2159, 3, 2, 2, 2, 2, 2161, 3, 2, 2, 2, 2, 2163, 3, 2, 2, 2, 2, 2165, 3, 2, 2, 2, 2, 2167, 3, 2, 2, 2, 2, 2169, 3, 2, 2, 2, 2, 2171, 3, 2, 2, 2, 2, 2173, 3, 2, 2, 2, 2, 2175, 3, 2, 2, 2, 2, 2177, 3, 2, 2, 2, 2, 2179, 3, 2, 2, 2, 2, 2181, 3, 2, 2, 2, 2, 2183, 3, 2, 2, 2, 2, 2185, 3, 2, 2, 2, 2, 2187, 3, 2, 2, 2, 2, 2189, 3, 2, 2, 2, 2, 2191, 3, 2, 2, 2, 2, 2193, 3, 2, 2, 2, 2, 2195, 3, 2, 2, 2, 2, 2197, 3, 2, 2, 2, 2, 2199, 3, 2, 2, 2, 2, 2201, 3, 2, 2, 2, 2, 2203, 3, 2, 2, 2, 2, 2205, 3, 2, 2, 2, 2, 2207, 3, 2, 2, 2, 2, 2209, 3, 2, 2, 2, 2, 2211, 3, 2, 2, 2, 2, 2213, 3, 2, 2, 2, 2, 2215, 3, 2, 2, 2, 2, 2217, 3, 2, 2, 2, 2, 2219, 3, 2, 2, 2, 2, 2221, 3, 2, 2, 2, 2, 2223, 3, 2, 2, 2, 2, 2225, 3, 2, 2, 2, 2, 2227, 3, 2, 2, 2, 2, 2229, 3, 2, 2, 2, 2, 2231, 3, 2, 2, 2, 2, 2233, 3, 2, 2, 2, 2, 2235, 3, 2, 2, 2, 2, 2237, 3, 2, 2, 2, 2, 2239, 3, 2, 2, 2, 2, 2241, 3, 2, 2, 2, 2, 2243, 3, 2, 2, 2, 2, 2245, 3, 2, 2, 2, 2, 2247, 3, 2, 2, 2, 2, 2249, 3, 2, 2, 2, 2, 2251, 3, 2, 2, 2, 2, 2253, 3, 2, 2, 2, 2, 2255, 3, 2, 2, 2, 2, 2257, 3, 2, 2, 2, 2, 2259, 3, 2, 2, 2, 2, 2261, 3, 2, 2, 2, 2, 2263, 3, 2, 2, 2, 2, 2265, 3, 2, 2, 2, 2, 2267, 3, 2, 2, 2, 2, 2269, 3, 2, 2, 2, 2, 2271, 3, 2, 2, 2, 2, 2273, 3, 2, 2, 2, 2, 2275, 3, 2, 2, 2, 2, 2277, 3, 2, 2, 2, 2, 2279, 3, 2, 2, 2, 2, 2281, 3, 2, 2, 2, 2, 2283, 3, 2, 2, 2, 2, 2285, 3, 2, 2, 2, 2, 2287, 3, 2, 2, 2, 2, 2289, 3, 2, 2, 2, 2, 2291, 3, 2, 2, 2, 2, 2293, 3, 2, 2, 2, 2, 2295, 3, 2, 2, 2, 2, 2297, 3, 2, 2, 2, 2, 2299, 3, 2, 2, 2, 2, 2301, 3, 2, 2, 2, 2, 2303, 3, 2, 2, 2, 2, 2305, 3, 2, 2, 2, 2, 2307, 3, 2, 2, 2, 2, 2309, 3, 2, 2, 2, 2, 2311, 3, 2, 2, 2, 2, 2313, 3, 2, 2, 2, 2, 2315, 3, 2, 2, 2, 2, 2317, 3, 2, 2, 2, 2, 2319, 3, 2, 2, 2, 2, 2321, 3, 2, 2, 2, 2, 2323, 3, 2, 2, 2, 2, 2325, 3, 2, 2, 2, 2, 2327, 3, 2, 2, 2, 2, 2329, 3, 2, 2, 2, 2, 2331, 3, 2, 2, 2, 2, 2333, 3, 2, 2, 2, 2, 2335, 3, 2, 2, 2, 2, 2337, 3, 2, 2, 2, 2, 2339, 3, 2, 2, 2, 2, 2341, 3, 2, 2, 2, 2, 2343, 3, 2, 2, 2, 2, 2345, 3, 2, 2, 2, 2, 2347, 3, 2, 2, 2, 2, 2349, 3, 2, 2, 2, 2, 2351, 3, 2, 2, 2, 2, 2353, 3, 2, 2, 2, 2, 2355, 3, 2, 2, 2, 2, 2357, 3, 2, 2, 2, 2, 2359, 3, 2, 2, 2, 2, 2361, 3, 2, 2, 2, 2, 2363, 3, 2, 2, 2, 2, 2365, 3, 2, 2, 2, 2, 2367, 3, 2, 2, 2, 2, 2369, 3, 2, 2, 2, 2, 2371, 3, 2, 2, 2, 2, 2373, 3, 2, 2, 2, 2, 2375, 3, 2, 2, 2, 2, 2377, 3, 2, 2, 2, 2, 2379, 3, 2, 2, 2, 2, 2381, 3, 2, 2, 2, 2, 2383, 3, 2, 2, 2, 2, 2385, 3, 2, 2, 2, 2, 2387, 3, 2, 2, 2, 2, 2389, 3, 2, 2, 2, 2, 2391, 3, 2, 2, 2, 2, 2393, 3, 2, 2, 2, 2, 2395, 3, 2, 2, 2, 2, 2397, 3, 2, 2, 2, 2, 2399, 3, 2, 2, 2, 2, 2401, 3, 2, 2, 2, 2, 2403, 3, 2, 2, 2, 2, 2405, 3, 2, 2, 2, 2, 2407, 3, 2, 2, 2, 2, 2409, 3, 2, 2, 2, 2, 2411, 3, 2, 2, 2, 2, 2413, 3, 2, 2, 2, 2, 2415, 3, 2, 2, 2, 2, 2417, 3, 2, 2, 2, 2, 2419, 3, 2, 2, 2, 2, 2421, 3, 2, 2, 2, 2, 2423, 3, 2, 2, 2, 2, 2425, 3, 2, 2, 2, 2, 2427, 3, 2, 2, 2, 2, 2429, 3, 2, 2, 2, 2, 2431, 3, 2, 2, 2, 2, 2433, 3, 2, 2, 2, 2, 2435, 3, 2, 2, 2, 2, 2437, 3, 2, 2, 2, 2, 2439, 3, 2, 2, 2, 2, 2441, 3, 2, 2, 2, 2, 2443, 3, 2, 2, 2, 2, 2445, 3, 2, 2, 2, 2, 2447, 3, 2, 2, 2, 2, 2449, 3, 2, 2, 2, 2, 2451, 3, 2, 2, 2, 2, 2453, 3, 2, 2, 2, 2, 2455, 3, 2, 2, 2, 2, 2457, 3, 2, 2, 2, 2, 2459, 3, 2, 2, 2, 2, 2461, 3, 2, 2, 2, 2, 2463, 3, 2, 2, 2, 2, 2465, 3, 2, 2, 2, 2, 2467, 3, 2, 2, 2, 2, 2469, 3, 2, 2, 2, 2, 2471, 3, 2, 2, 2, 2, 2473, 3, 2, 2, 2, 2, 2475, 3, 2, 2, 2, 2, 2477, 3, 2, 2, 2, 2, 2479, 3, 2, 2, 2, 2, 2481, 3, 2, 2, 2, 2, 2483, 3, 2, 2, 2, 2, 2485, 3, 2, 2, 2, 2, 2487, 3, 2, 2, 2, 2, 2489, 3, 2, 2, 2, 2, 2491, 3, 2, 2, 2, 2, 2493, 3, 2, 2, 2, 2, 2495, 3, 2, 2, 2, 2, 2497, 3, 2, 2, 2, 2, 2499, 3, 2, 2, 2, 2, 2501, 3, 2, 2, 2, 2, 2503, 3, 2, 2, 2, 2, 2505, 3, 2, 2, 2, 2, 2507, 3, 2, 2, 2, 2, 2509, 3, 2, 2, 2, 2, 2511, 3, 2, 2, 2, 2, 2513, 3, 2, 2, 2, 2, 2515, 3, 2, 2, 2, 2, 2517, 3, 2, 2, 2, 2, 2519, 3, 2, 2, 2, 2, 2521, 3, 2, 2, 2, 2, 2523, 3, 2, 2, 2, 2, 2525, 3, 2, 2, 2, 2, 2527, 3, 2, 2, 2, 2, 2529, 3, 2, 2, 2, 2, 2531, 3, 2, 2, 2, 2, 2533, 3, 2, 2, 2, 2, 2535, 3, 2, 2, 2, 2, 2537, 3, 2, 2, 2, 2, 2539, 3, 2, 2, 2, 2, 2541, 3, 2, 2, 2, 2, 2543, 3, 2, 2, 2, 2, 2545, 3, 2, 2, 2, 2, 2547, 3, 2, 2, 2, 2, 2549, 3, 2, 2, 2, 2, 2551, 3, 2, 2, 2, 2, 2553, 3, 2, 2, 2, 2, 2555, 3, 2, 2, 2, 2, 2557, 3, 2, 2, 2, 2, 2559, 3, 2, 2, 2, 2, 2561, 3, 2, 2, 2, 2, 2563, 3, 2, 2, 2, 2, 2565, 3, 2, 2, 2, 2, 2567, 3, 2, 2, 2, 2, 2569, 3, 2, 2, 2, 2, 2571, 3, 2, 2, 2, 2, 2573, 3, 2, 2, 2, 2, 2575, 3, 2, 2, 2, 2, 2577, 3, 2, 2, 2, 2, 2579, 3, 2, 2, 2, 2, 2581, 3, 2, 2, 2, 2, 2583, 3, 2, 2, 2, 2, 2585, 3, 2, 2, 2, 2, 2587, 3, 2, 2, 2, 2, 2589, 3, 2, 2, 2, 2, 2591, 3, 2, 2, 2, 2, 2593, 3, 2, 2, 2, 2, 2595, 3, 2, 2, 2, 2, 2597, 3, 2, 2, 2, 2, 2599, 3, 2, 2, 2, 2, 2601, 3, 2, 2, 2, 2, 2603, 3, 2, 2, 2, 2, 2605, 3, 2, 2, 2, 2, 2607, 3, 2, 2, 2, 2, 2609, 3, 2, 2, 2, 2, 2611, 3, 2, 2, 2, 2, 2613, 3, 2, 2, 2, 2, 2615, 3, 2, 2, 2, 2, 2617, 3, 2, 2, 2, 2, 2619, 3, 2, 2, 2, 2, 2621, 3, 2, 2, 2, 2, 2623, 3, 2, 2, 2, 2, 2625, 3, 2, 2, 2, 2, 2627, 3, 2, 2, 2, 2, 2629, 3, 2, 2, 2, 2, 2631, 3, 2, 2, 2, 2, 2633, 3, 2, 2, 2, 2, 2635, 3, 2, 2, 2, 2, 2637, 3, 2, 2, 2, 2, 2639, 3, 2, 2, 2, 2, 2641, 3, 2, 2, 2, 2, 2643, 3, 2, 2, 2, 2, 2645, 3, 2, 2, 2, 2, 2647, 3, 2, 2, 2, 2, 2649, 3, 2, 2, 2, 2, 2651, 3, 2, 2, 2, 2, 2653, 3, 2, 2, 2, 2, 2655, 3, 2, 2, 2, 2, 2657, 3, 2, 2, 2, 2, 2659, 3, 2, 2, 2, 2, 2661, 3, 2, 2, 2, 2, 2663, 3, 2, 2, 2, 2, 2665, 3, 2, 2, 2, 2, 2667, 3, 2, 2, 2, 2, 2669, 3, 2, 2, 2, 2, 2671, 3, 2, 2, 2, 2, 2673, 3, 2, 2, 2, 2, 2675, 3, 2, 2, 2, 2, 2677, 3, 2, 2, 2, 2, 2679, 3, 2, 2, 2, 2, 2681, 3, 2, 2, 2, 2, 2683, 3, 2, 2, 2, 2, 2685, 3, 2, 2, 2, 2, 2687, 3, 2, 2, 2, 2, 2689, 3, 2, 2, 2, 2, 2691, 3, 2, 2, 2, 2, 2693, 3, 2, 2, 2, 2, 2695, 3, 2, 2, 2, 2, 2697, 3, 2, 2, 2, 2, 2699, 3, 2, 2, 2, 2, 2701, 3, 2, 2, 2, 2, 2703, 3, 2, 2, 2, 2, 2705, 3, 2, 2, 2, 2, 2707, 3, 2, 2, 2, 2, 2709, 3, 2, 2, 2, 2, 2711, 3, 2, 2, 2, 2, 2713, 3, 2, 2, 2, 2, 2715, 3, 2, 2, 2, 2, 2717, 3, 2, 2, 2, 2, 2719, 3, 2, 2, 2, 2, 2721, 3, 2, 2, 2, 2, 2723, 3, 2, 2, 2, 2, 2725, 3, 2, 2, 2, 2, 2727, 3, 2, 2, 2, 2, 2729, 3, 2, 2, 2, 2, 2731, 3, 2, 2, 2, 2, 2733, 3, 2, 2, 2, 2, 2735, 3, 2, 2, 2, 2, 2737, 3, 2, 2, 2, 2, 2739, 3, 2, 2, 2, 2, 2741, 3, 2, 2, 2, 2, 2743, 3, 2, 2, 2, 2, 2745, 3, 2, 2, 2, 2, 2747, 3, 2, 2, 2, 2, 2749, 3, 2, 2, 2, 2, 2751, 3, 2, 2, 2, 2, 2753, 3, 2, 2, 2, 2, 2755, 3, 2, 2, 2, 2, 2757, 3, 2, 2, 2, 2, 2759, 3, 2, 2, 2, 2, 2761, 3, 2, 2, 2, 2, 2763, 3, 2, 2, 2, 2, 2765, 3, 2, 2, 2, 2, 2767, 3, 2, 2, 2, 2, 2769, 3, 2, 2, 2, 2, 2771, 3, 2, 2, 2, 2, 2773, 3, 2, 2, 2, 2, 2775, 3, 2, 2, 2, 2, 2777, 3, 2, 2, 2, 2, 2779, 3, 2, 2, 2, 2, 2781, 3, 2, 2, 2, 2, 2783, 3, 2, 2, 2, 2, 2785, 3, 2, 2, 2, 2, 2787, 3, 2, 2, 2, 2, 2789, 3, 2, 2, 2, 2, 2791, 3, 2, 2, 2, 2, 2793, 3, 2, 2, 2, 2, 2795, 3, 2, 2, 2, 2, 2797, 3, 2, 2, 2, 2, 2799, 3, 2, 2, 2, 2, 2801, 3, 2, 2, 2, 2, 2803, 3, 2, 2, 2, 2, 2805, 3, 2, 2, 2, 2, 2807, 3, 2, 2, 2, 2, 2809, 3, 2, 2, 2, 2, 2811, 3, 2, 2, 2, 2, 2813, 3, 2, 2, 2, 2, 2815, 3, 2, 2, 2, 2, 2817, 3, 2, 2, 2, 2, 2819, 3, 2, 2, 2, 2, 2821, 3, 2, 2, 2, 2, 2823, 3, 2, 2, 2, 2, 2825, 3, 2, 2, 2, 2, 2827, 3, 2, 2, 2, 2, 2829, 3, 2, 2, 2, 2, 2831, 3, 2, 2, 2, 2, 2833, 3, 2, 2, 2, 2, 2835, 3, 2, 2, 2, 2, 2837, 3, 2, 2, 2, 2, 2839, 3, 2, 2, 2, 2, 2841, 3, 2, 2, 2, 2, 2843, 3, 2, 2, 2, 2, 2845, 3, 2, 2, 2, 2, 2847, 3, 2, 2, 2, 2, 2849, 3, 2, 2, 2, 2, 2851, 3, 2, 2, 2, 2, 2853, 3, 2, 2, 2, 2, 2855, 3, 2, 2, 2, 2, 2857, 3, 2, 2, 2, 2, 2859, 3, 2, 2, 2, 2, 2861, 3, 2, 2, 2, 2, 2863, 3, 2, 2, 2, 2, 2865, 3, 2, 2, 2, 2, 2867, 3, 2, 2, 2, 2, 2869, 3, 2, 2, 2, 2, 2871, 3, 2, 2, 2, 2, 2873, 3, 2, 2, 2, 2, 2875, 3, 2, 2, 2, 2, 2877, 3, 2, 2, 2, 2, 2879, 3, 2, 2, 2, 2, 2881, 3, 2, 2, 2, 2, 2883, 3, 2, 2, 2, 2, 2885, 3, 2, 2, 2, 2, 2887, 3, 2, 2, 2, 2, 2889, 3, 2, 2, 2, 2, 2891, 3, 2, 2, 2, 2, 2893, 3, 2, 2, 2, 2, 2895, 3, 2, 2, 2, 2, 2897, 3, 2, 2, 2, 2, 2899, 3, 2, 2, 2, 2, 2901, 3, 2, 2, 2, 2, 2903, 3, 2, 2, 2, 2, 2905, 3, 2, 2, 2, 2, 2907, 3, 2, 2, 2, 2, 2909, 3, 2, 2, 2, 2, 2911, 3, 2, 2, 2, 2, 2913, 3, 2, 2, 2, 2, 2915, 3, 2, 2, 2, 2, 2917, 3, 2, 2, 2, 2, 2919, 3, 2, 2, 2, 2, 2921, 3, 2, 2, 2, 2, 2923, 3, 2, 2, 2, 2, 2925, 3, 2, 2, 2, 2, 2927, 3, 2, 2, 2, 2, 2929, 3, 2, 2, 2, 2, 2931, 3, 2, 2, 2, 2, 2933, 3, 2, 2, 2, 2, 2935, 3, 2, 2, 2, 2, 2937, 3, 2, 2, 2, 2, 2939, 3, 2, 2, 2, 2, 2941, 3, 2, 2, 2, 2, 2943, 3, 2, 2, 2, 2, 2945, 3, 2, 2, 2, 2, 2947, 3, 2, 2, 2, 2, 2949, 3, 2, 2, 2, 2, 2951, 3, 2, 2, 2, 2, 2953, 3, 2, 2, 2, 2, 2955, 3, 2, 2, 2, 2, 2957, 3, 2, 2, 2, 2, 2959, 3, 2, 2, 2, 2, 2961, 3, 2, 2, 2, 2, 2963, 3, 2, 2, 2, 2, 2965, 3, 2, 2, 2, 2, 2967, 3, 2, 2, 2, 2, 2969, 3, 2, 2, 2, 2, 2971, 3, 2, 2, 2, 2, 2973, 3, 2, 2, 2, 2, 2975, 3, 2, 2, 2, 2, 2977, 3, 2, 2, 2, 2, 2979, 3, 2, 2, 2, 2, 2981, 3, 2, 2, 2, 2, 2983, 3, 2, 2, 2, 2, 2985, 3, 2, 2, 2, 2, 2987, 3, 2, 2, 2, 2, 2989, 3, 2, 2, 2, 2, 2991, 3, 2, 2, 2, 2, 2993, 3, 2, 2, 2, 2, 2995, 3, 2, 2, 2, 2, 2997, 3, 2, 2, 2, 2, 2999, 3, 2, 2, 2, 2, 3001, 3, 2, 2, 2, 2, 3003, 3, 2, 2, 2, 2, 3005, 3, 2, 2, 2, 2, 3007, 3, 2, 2, 2, 2, 3009, 3, 2, 2, 2, 2, 3011, 3, 2, 2, 2, 2, 3013, 3, 2, 2, 2, 2, 3015, 3, 2, 2, 2, 2, 3017, 3, 2, 2, 2, 2, 3019, 3, 2, 2, 2, 2, 3021, 3, 2, 2, 2, 2, 3023, 3, 2, 2, 2, 2, 3025, 3, 2, 2, 2, 2, 3027, 3, 2, 2, 2, 2, 3029, 3, 2, 2, 2, 2, 3031, 3, 2, 2, 2, 2, 3033, 3, 2, 2, 2, 2, 3035, 3, 2, 2, 2, 2, 3037, 3, 2, 2, 2, 2, 3039, 3, 2, 2, 2, 2, 3041, 3, 2, 2, 2, 2, 3043, 3, 2, 2, 2, 2, 3045, 3, 2, 2, 2, 2, 3047, 3, 2, 2, 2, 2, 3049, 3, 2, 2, 2, 2, 3051, 3, 2, 2, 2, 2, 3053, 3, 2, 2, 2, 2, 3055, 3, 2, 2, 2, 2, 3057, 3, 2, 2, 2, 2, 3059, 3, 2, 2, 2, 2, 3061, 3, 2, 2, 2, 2, 3063, 3, 2, 2, 2, 2, 3065, 3, 2, 2, 2, 2, 3067, 3, 2, 2, 2, 2, 3069, 3, 2, 2, 2, 2, 3071, 3, 2, 2, 2, 2, 3073, 3, 2, 2, 2, 2, 3075, 3, 2, 2, 2, 2, 3077, 3, 2, 2, 2, 2, 3079, 3, 2, 2, 2, 2, 3081, 3, 2, 2, 2, 2, 3083, 3, 2, 2, 2, 2, 3085, 3, 2, 2, 2, 2, 3087, 3, 2, 2, 2, 2, 3089, 3, 2, 2, 2, 2, 3091, 3, 2, 2, 2, 2, 3093, 3, 2, 2, 2, 2, 3095, 3, 2, 2, 2, 2, 3097, 3, 2, 2, 2, 2, 3099, 3, 2, 2, 2, 2, 3101, 3, 2, 2, 2, 2, 3103, 3, 2, 2, 2, 2, 3105, 3, 2, 2, 2, 2, 3107, 3, 2, 2, 2, 2, 3109, 3, 2, 2, 2, 2, 3111, 3, 2, 2, 2, 2, 3113, 3, 2, 2, 2, 2, 3115, 3, 2, 2, 2, 2, 3117, 3, 2, 2, 2, 2, 3119, 3, 2, 2, 2, 2, 3121, 3, 2, 2, 2, 2, 3123, 3, 2, 2, 2, 2, 3125, 3, 2, 2, 2, 2, 3127, 3, 2, 2, 2, 2, 3129, 3, 2, 2, 2, 2, 3131, 3, 2, 2, 2, 2, 3133, 3, 2, 2, 2, 2, 3135, 3, 2, 2, 2, 2, 3137, 3, 2, 2, 2, 2, 3139, 3, 2, 2, 2, 2, 3141, 3, 2, 2, 2, 2, 3143, 3, 2, 2, 2, 2, 3145, 3, 2, 2, 2, 2, 3147, 3, 2, 2, 2, 2, 3149, 3, 2, 2, 2, 2, 3151, 3, 2, 2, 2, 2, 3153, 3, 2, 2, 2, 2, 3155, 3, 2, 2, 2, 2, 3157, 3, 2, 2, 2, 2, 3159, 3, 2, 2, 2, 2, 3161, 3, 2, 2, 2, 2, 3163, 3, 2, 2, 2, 2, 3165, 3, 2, 2, 2, 2, 3167, 3, 2, 2, 2, 2, 3169, 3, 2, 2, 2, 2, 3171, 3, 2, 2, 2, 2, 3173, 3, 2, 2, 2, 2, 3175, 3, 2, 2, 2, 2, 3177, 3, 2, 2, 2, 2, 3179, 3, 2, 2, 2, 2, 3181, 3, 2, 2, 2, 2, 3183, 3, 2, 2, 2, 2, 3185, 3, 2, 2, 2, 2, 3187, 3, 2, 2, 2, 2, 3189, 3, 2, 2, 2, 2, 3191, 3, 2, 2, 2, 2, 3193, 3, 2, 2, 2, 2, 3195, 3, 2, 2, 2, 2, 3197, 3, 2, 2, 2, 2, 3199, 3, 2, 2, 2, 2, 3201, 3, 2, 2, 2, 2, 3203, 3, 2, 2, 2, 2, 3205, 3, 2, 2, 2, 2, 3207, 3, 2, 2, 2, 2, 3209, 3, 2, 2, 2, 2, 3211, 3, 2, 2, 2, 2, 3213, 3, 2, 2, 2, 2, 3215, 3, 2, 2, 2, 2, 3217, 3, 2, 2, 2, 2, 3219, 3, 2, 2, 2, 2, 3221, 3, 2, 2, 2, 2, 3223, 3, 2, 2, 2, 2, 3225, 3, 2, 2, 2, 2, 3227, 3, 2, 2, 2, 2, 3229, 3, 2, 2, 2, 2, 3231, 3, 2, 2, 2, 2, 3233, 3, 2, 2, 2, 2, 3235, 3, 2, 2, 2, 2, 3237, 3, 2, 2, 2, 2, 3239, 3, 2, 2, 2, 2, 3241, 3, 2, 2, 2, 2, 3243, 3, 2, 2, 2, 2, 3245, 3, 2, 2, 2, 2, 3247, 3, 2, 2, 2, 2, 3249, 3, 2, 2, 2, 2, 3251, 3, 2, 2, 2, 2, 3253, 3, 2, 2, 2, 2, 3255, 3, 2, 2, 2, 2, 3257, 3, 2, 2, 2, 2, 3259, 3, 2, 2, 2, 2, 3261, 3, 2, 2, 2, 2, 3263, 3, 2, 2, 2, 2, 3265, 3, 2, 2, 2, 2, 3267, 3, 2, 2, 2, 2, 3269, 3, 2, 2, 2, 2, 3271, 3, 2, 2, 2, 2, 3273, 3, 2, 2, 2, 2, 3275, 3, 2, 2, 2, 2, 3277, 3, 2, 2, 2, 2, 3279, 3, 2, 2, 2, 2, 3281, 3, 2, 2, 2, 2, 3283, 3, 2, 2, 2, 2, 3285, 3, 2, 2, 2, 2, 3287, 3, 2, 2, 2, 2, 3289, 3, 2, 2, 2, 2, 3291, 3, 2, 2, 2, 2, 3293, 3, 2, 2, 2, 2, 3295, 3, 2, 2, 2, 2, 3297, 3, 2, 2, 2, 2, 3299, 3, 2, 2, 2, 2, 3301, 3, 2, 2, 2, 2, 3303, 3, 2, 2, 2, 2, 3305, 3, 2, 2, 2, 2, 3307, 3, 2, 2, 2, 2, 3309, 3, 2, 2, 2, 2, 3311, 3, 2, 2, 2, 2, 3313, 3, 2, 2, 2, 2, 3315, 3, 2, 2, 2, 2, 3317, 3, 2, 2, 2, 2, 3319, 3, 2, 2, 2, 2, 3321, 3, 2, 2, 2, 2, 3323, 3, 2, 2, 2, 2, 3325, 3, 2, 2, 2, 2, 3327, 3, 2, 2, 2, 2, 3329, 3, 2, 2, 2, 2, 3331, 3, 2, 2, 2, 2, 3333, 3, 2, 2, 2, 2, 3335, 3, 2, 2, 2, 2, 3337, 3, 2, 2, 2, 2, 3339, 3, 2, 2, 2, 2, 3341, 3, 2, 2, 2, 2, 3343, 3, 2, 2, 2, 2, 3345, 3, 2, 2, 2, 2, 3347, 3, 2, 2, 2, 2, 3349, 3, 2, 2, 2, 2, 3351, 3, 2, 2, 2, 2, 3353, 3, 2, 2, 2, 2, 3355, 3, 2, 2, 2, 2, 3357, 3, 2, 2, 2, 2, 3359, 3, 2, 2, 2, 2, 3361, 3, 2, 2, 2, 2, 3363, 3, 2, 2, 2, 2, 3365, 3, 2, 2, 2, 2, 3367, 3, 2, 2, 2, 2, 3369, 3, 2, 2, 2, 2, 3371, 3, 2, 2, 2, 2, 3373, 3, 2, 2, 2, 2, 3375, 3, 2, 2, 2, 2, 3377, 3, 2, 2, 2, 2, 3379, 3, 2, 2, 2, 2, 3381, 3, 2, 2, 2, 2, 3383, 3, 2, 2, 2, 2, 3385, 3, 2, 2, 2, 2, 3387, 3, 2, 2, 2, 2, 3389, 3, 2, 2, 2, 2, 3391, 3, 2, 2, 2, 2, 3393, 3, 2, 2, 2, 2, 3395, 3, 2, 2, 2, 2, 3397, 3, 2, 2, 2, 2, 3399, 3, 2, 2, 2, 2, 3401, 3, 2, 2, 2, 2, 3403, 3, 2, 2, 2, 2, 3405, 3, 2, 2, 2, 2, 3407, 3, 2, 2, 2, 2, 3409, 3, 2, 2, 2, 2, 3411, 3, 2, 2, 2, 2, 3413, 3, 2, 2, 2, 2, 3415, 3, 2, 2, 2, 2, 3417, 3, 2, 2, 2, 2, 3419, 3, 2, 2, 2, 2, 3421, 3, 2, 2, 2, 2, 3423, 3, 2, 2, 2, 2, 3425, 3, 2, 2, 2, 2, 3427, 3, 2, 2, 2, 2, 3429, 3, 2, 2, 2, 2, 3431, 3, 2, 2, 2, 2, 3433, 3, 2, 2, 2, 2, 3435, 3, 2, 2, 2, 2, 3437, 3, 2, 2, 2, 2, 3439, 3, 2, 2, 2, 2, 3441, 3, 2, 2, 2, 2, 3443, 3, 2, 2, 2, 2, 3445, 3, 2, 2, 2, 2, 3447, 3, 2, 2, 2, 2, 3449, 3, 2, 2, 2, 2, 3451, 3, 2, 2, 2, 2, 3453, 3, 2, 2, 2, 2, 3455, 3, 2, 2, 2, 2, 3457, 3, 2, 2, 2, 2, 3459, 3, 2, 2, 2, 2, 3461, 3, 2, 2, 2, 2, 3463, 3, 2, 2, 2, 2, 3465, 3, 2, 2, 2, 2, 3467, 3, 2, 2, 2, 2, 3469, 3, 2, 2, 2, 2, 3471, 3, 2, 2, 2, 2, 3473, 3, 2, 2, 2, 2, 3475, 3, 2, 2, 2, 2, 3477, 3, 2, 2, 2, 2, 3479, 3, 2, 2, 2, 2, 3481, 3, 2, 2, 2, 2, 3483, 3, 2, 2, 2, 2, 3485, 3, 2, 2, 2, 2, 3487, 3, 2, 2, 2, 2, 3489, 3, 2, 2, 2, 2, 3491, 3, 2, 2, 2, 2, 3493, 3, 2, 2, 2, 2, 3495, 3, 2, 2, 2, 2, 3497, 3, 2, 2, 2, 2, 3499, 3, 2, 2, 2, 2, 3501, 3, 2, 2, 2, 2, 3503, 3, 2, 2, 2, 2, 3505, 3, 2, 2, 2, 2, 3507, 3, 2, 2, 2, 2, 3509, 3, 2, 2, 2, 2, 3511, 3, 2, 2, 2, 2, 3513, 3, 2, 2, 2, 2, 3515, 3, 2, 2, 2, 2, 3517, 3, 2, 2, 2, 2, 3519, 3, 2, 2, 2, 2, 3521, 3, 2, 2, 2, 2, 3523, 3, 2, 2, 2, 2, 3525, 3, 2, 2, 2, 2, 3527, 3, 2, 2, 2, 2, 3529, 3, 2, 2, 2, 2, 3531, 3, 2, 2, 2, 2, 3533, 3, 2, 2, 2, 2, 3535, 3, 2, 2, 2, 2, 3537, 3, 2, 2, 2, 2, 3539, 3, 2, 2, 2, 2, 3541, 3, 2, 2, 2, 2, 3543, 3, 2, 2, 2, 2, 3545, 3, 2, 2, 2, 2, 3547, 3, 2, 2, 2, 2, 3549, 3, 2, 2, 2, 2, 3551, 3, 2, 2, 2, 2, 3553, 3, 2, 2, 2, 2, 3555, 3, 2, 2, 2, 2, 3557, 3, 2, 2, 2, 2, 3559, 3, 2, 2, 2, 2, 3561, 3, 2, 2, 2, 2, 3563, 3, 2, 2, 2, 2, 3565, 3, 2, 2, 2, 2, 3567, 3, 2, 2, 2, 2, 3569, 3, 2, 2, 2, 2, 3571, 3, 2, 2, 2, 2, 3573, 3, 2, 2, 2, 2, 3575, 3, 2, 2, 2, 2, 3577, 3, 2, 2, 2, 2, 3579, 3, 2, 2, 2, 2, 3581, 3, 2, 2, 2, 2, 3583, 3, 2, 2, 2, 2, 3585, 3, 2, 2, 2, 2, 3587, 3, 2, 2, 2, 2, 3589, 3, 2, 2, 2, 2, 3591, 3, 2, 2, 2, 2, 3593, 3, 2, 2, 2, 2, 3595, 3, 2, 2, 2, 2, 3597, 3, 2, 2, 2, 2, 3599, 3, 2, 2, 2, 2, 3601, 3, 2, 2, 2, 2, 3603, 3, 2, 2, 2, 2, 3605, 3, 2, 2, 2, 2, 3607, 3, 2, 2, 2, 2, 3609, 3, 2, 2, 2, 2, 3611, 3, 2, 2, 2, 2, 3613, 3, 2, 2, 2, 2, 3615, 3, 2, 2, 2, 2, 3617, 3, 2, 2, 2, 2, 3619, 3, 2, 2, 2, 2, 3621, 3, 2, 2, 2, 2, 3623, 3, 2, 2, 2, 2, 3625, 3, 2, 2, 2, 2, 3627, 3, 2, 2, 2, 2, 3629, 3, 2, 2, 2, 2, 3631, 3, 2, 2, 2, 2, 3633, 3, 2, 2, 2, 2, 3635, 3, 2, 2, 2, 2, 3637, 3, 2, 2, 2, 2, 3639, 3, 2, 2, 2, 2, 3641, 3, 2, 2, 2, 2, 3643, 3, 2, 2, 2, 2, 3645, 3, 2, 2, 2, 2, 3647, 3, 2, 2, 2, 2, 3649, 3, 2, 2, 2, 2, 3651, 3, 2, 2, 2, 2, 3653, 3, 2, 2, 2, 2, 3655, 3, 2, 2, 2, 2, 3657, 3, 2, 2, 2, 2, 3659, 3, 2, 2, 2, 2, 3661, 3, 2, 2, 2, 2, 3663, 3, 2, 2, 2, 2, 3665, 3, 2, 2, 2, 2, 3667, 3, 2, 2, 2, 2, 3669, 3, 2, 2, 2, 2, 3671, 3, 2, 2, 2, 2, 3673, 3, 2, 2, 2, 2, 3675, 3, 2, 2, 2, 2, 3677, 3, 2, 2, 2, 2, 3679, 3, 2, 2, 2, 2, 3681, 3, 2, 2, 2, 2, 3683, 3, 2, 2, 2, 2, 3685, 3, 2, 2, 2, 2, 3687, 3, 2, 2, 2, 2, 3689, 3, 2, 2, 2, 2, 3691, 3, 2, 2, 2, 2, 3693, 3, 2, 2, 2, 2, 3695, 3, 2, 2, 2, 2, 3697, 3, 2, 2, 2, 2, 3699, 3, 2, 2, 2, 2, 3701, 3, 2, 2, 2, 2, 3703, 3, 2, 2, 2, 2, 3705, 3, 2, 2, 2, 2, 3707, 3, 2, 2, 2, 2, 3709, 3, 2, 2, 2, 2, 3711, 3, 2, 2, 2, 2, 3713, 3, 2, 2, 2, 2, 3715, 3, 2, 2, 2, 2, 3717, 3, 2, 2, 2, 2, 3719, 3, 2, 2, 2, 2, 3721, 3, 2, 2, 2, 2, 3723, 3, 2, 2, 2, 2, 3725, 3, 2, 2, 2, 2, 3727, 3, 2, 2, 2, 2, 3729, 3, 2, 2, 2, 2, 3731, 3, 2, 2, 2, 2, 3733, 3, 2, 2, 2, 2, 3735, 3, 2, 2, 2, 2, 3737, 3, 2, 2, 2, 2, 3739, 3, 2, 2, 2, 2, 3741, 3, 2, 2, 2, 2, 3743, 3, 2, 2, 2, 2, 3745, 3, 2, 2, 2, 2, 3747, 3, 2, 2, 2, 2, 3749, 3, 2, 2, 2, 2, 3751, 3, 2, 2, 2, 2, 3753, 3, 2, 2, 2, 2, 3755, 3, 2, 2, 2, 2, 3757, 3, 2, 2, 2, 2, 3759, 3, 2, 2, 2, 2, 3761, 3, 2, 2, 2, 2, 3763, 3, 2, 2, 2, 2, 3765, 3, 2, 2, 2, 2, 3767, 3, 2, 2, 2, 2, 3769, 3, 2, 2, 2, 2, 3771, 3, 2, 2, 2, 2, 3773, 3, 2, 2, 2, 2, 3775, 3, 2, 2, 2, 2, 3777, 3, 2, 2, 2, 2, 3779, 3, 2, 2, 2, 2, 3781, 3, 2, 2, 2, 2, 3783, 3, 2, 2, 2, 2, 3785, 3, 2, 2, 2, 2, 3787, 3, 2, 2, 2, 2, 3789, 3, 2, 2, 2, 2, 3791, 3, 2, 2, 2, 2, 3793, 3, 2, 2, 2, 2, 3795, 3, 2, 2, 2, 2, 3797, 3, 2, 2, 2, 2, 3799, 3, 2, 2, 2, 2, 3801, 3, 2, 2, 2, 2, 3803, 3, 2, 2, 2, 2, 3805, 3, 2, 2, 2, 2, 3807, 3, 2, 2, 2, 2, 3809, 3, 2, 2, 2, 2, 3811, 3, 2, 2, 2, 2, 3813, 3, 2, 2, 2, 2, 3815, 3, 2, 2, 2, 2, 3817, 3, 2, 2, 2, 2, 3819, 3, 2, 2, 2, 2, 3821, 3, 2, 2, 2, 2, 3823, 3, 2, 2, 2, 2, 3825, 3, 2, 2, 2, 2, 3827, 3, 2, 2, 2, 2, 3829, 3, 2, 2, 2, 2, 3831, 3, 2, 2, 2, 2, 3833, 3, 2, 2, 2, 2, 3835, 3, 2, 2, 2, 2, 3837, 3, 2, 2, 2, 2, 3839, 3, 2, 2, 2, 2, 3841, 3, 2, 2, 2, 2, 3843, 3, 2, 2, 2, 2, 3845, 3, 2, 2, 2, 2, 3847, 3, 2, 2, 2, 2, 3849, 3, 2, 2, 2, 2, 3851, 3, 2, 2, 2, 2, 3853, 3, 2, 2, 2, 2, 3855, 3, 2, 2, 2, 2, 3857, 3, 2, 2, 2, 2, 3859, 3, 2, 2, 2, 2, 3861, 3, 2, 2, 2, 2, 3863, 3, 2, 2, 2, 2, 3865, 3, 2, 2, 2, 2, 3867, 3, 2, 2, 2, 2, 3869, 3, 2, 2, 2, 2, 3871, 3, 2, 2, 2, 2, 3873, 3, 2, 2, 2, 2, 3875, 3, 2, 2, 2, 2, 3877, 3, 2, 2, 2, 2, 3879, 3, 2, 2, 2, 2, 3881, 3, 2, 2, 2, 2, 3883, 3, 2, 2, 2, 2, 3885, 3, 2, 2, 2, 2, 3887, 3, 2, 2, 2, 2, 3889, 3, 2, 2, 2, 2, 3891, 3, 2, 2, 2, 2, 3893, 3, 2, 2, 2, 2, 3895, 3, 2, 2, 2, 2, 3897, 3, 2, 2, 2, 2, 3899, 3, 2, 2, 2, 2, 3901, 3, 2, 2, 2, 2, 3903, 3, 2, 2, 2, 2, 3905, 3, 2, 2, 2, 2, 3907, 3, 2, 2, 2, 2, 3909, 3, 2, 2, 2, 2, 3911, 3, 2, 2, 2, 2, 3913, 3, 2, 2, 2, 2, 3915, 3, 2, 2, 2, 2, 3917, 3, 2, 2, 2, 2, 3919, 3, 2, 2, 2, 2, 3921, 3, 2, 2, 2, 2, 3923, 3, 2, 2, 2, 2, 3925, 3, 2, 2, 2, 2, 3927, 3, 2, 2, 2, 2, 3929, 3, 2, 2, 2, 2, 3931, 3, 2, 2, 2, 2, 3933, 3, 2, 2, 2, 2, 3935, 3, 2, 2, 2, 2, 3937, 3, 2, 2, 2, 2, 3939, 3, 2, 2, 2, 2, 3941, 3, 2, 2, 2, 2, 3943, 3, 2, 2, 2, 2, 3945, 3, 2, 2, 2, 2, 3947, 3, 2, 2, 2, 2, 3949, 3, 2, 2, 2, 2, 3951, 3, 2, 2, 2, 2, 3953, 3, 2, 2, 2, 2, 3955, 3, 2, 2, 2, 2, 3957, 3, 2, 2, 2, 2, 3959, 3, 2, 2, 2, 2, 3961, 3, 2, 2, 2, 2, 3963, 3, 2, 2, 2, 2, 3965, 3, 2, 2, 2, 2, 3967, 3, 2, 2, 2, 2, 3969, 3, 2, 2, 2, 2, 3971, 3, 2, 2, 2, 2, 3973, 3, 2, 2, 2, 2, 3975, 3, 2, 2, 2, 2, 3977, 3, 2, 2, 2, 2, 3979, 3, 2, 2, 2, 2, 3981, 3, 2, 2, 2, 2, 3983, 3, 2, 2, 2, 2, 3985, 3, 2, 2, 2, 2, 3987, 3, 2, 2, 2, 2, 3989, 3, 2, 2, 2, 2, 3991, 3, 2, 2, 2, 2, 3993, 3, 2, 2, 2, 2, 3995, 3, 2, 2, 2, 2, 3997, 3, 2, 2, 2, 2, 3999, 3, 2, 2, 2, 2, 4001, 3, 2, 2, 2, 2, 4003, 3, 2, 2, 2, 2, 4005, 3, 2, 2, 2, 2, 4007, 3, 2, 2, 2, 2, 4009, 3, 2, 2, 2, 2, 4011, 3, 2, 2, 2, 2, 4013, 3, 2, 2, 2, 2, 4015, 3, 2, 2, 2, 2, 4017, 3, 2, 2, 2, 2, 4019, 3, 2, 2, 2, 2, 4021, 3, 2, 2, 2, 2, 4023, 3, 2, 2, 2, 2, 4025, 3, 2, 2, 2, 2, 4027, 3, 2, 2, 2, 2, 4029, 3, 2, 2, 2, 2, 4031, 3, 2, 2, 2, 2, 4033, 3, 2, 2, 2, 2, 4035, 3, 2, 2, 2, 2, 4037, 3, 2, 2, 2, 2, 4039, 3, 2, 2, 2, 2, 4041, 3, 2, 2, 2, 2, 4043, 3, 2, 2, 2, 2, 4045, 3, 2, 2, 2, 2, 4047, 3, 2, 2, 2, 2, 4049, 3, 2, 2, 2, 2, 4051, 3, 2, 2, 2, 2, 4053, 3, 2, 2, 2, 2, 4055, 3, 2, 2, 2, 2, 4057, 3, 2, 2, 2, 2, 4059, 3, 2, 2, 2, 2, 4061, 3, 2, 2, 2, 2, 4063, 3, 2, 2, 2, 2, 4065, 3, 2, 2, 2, 2, 4067, 3, 2, 2, 2, 2, 4069, 3, 2, 2, 2, 2, 4071, 3, 2, 2, 2, 2, 4073, 3, 2, 2, 2, 2, 4075, 3, 2, 2, 2, 2, 4077, 3, 2, 2, 2, 2, 4079, 3, 2, 2, 2, 2, 4081, 3, 2, 2, 2, 2, 4083, 3, 2, 2, 2, 2, 4085, 3, 2, 2, 2, 2, 4087, 3, 2, 2, 2, 2, 4089, 3, 2, 2, 2, 2, 4091, 3, 2, 2, 2, 2, 4093, 3, 2, 2, 2, 2, 4095, 3, 2, 2, 2, 2, 4097, 3, 2, 2, 2, 2, 4099, 3, 2, 2, 2, 2, 4101, 3, 2, 2, 2, 2, 4103, 3, 2, 2, 2, 2, 4105, 3, 2, 2, 2, 2, 4107, 3, 2, 2, 2, 2, 4109, 3, 2, 2, 2, 2, 4111, 3, 2, 2, 2, 2, 4113, 3, 2, 2, 2, 2, 4115, 3, 2, 2, 2, 2, 4117, 3, 2, 2, 2, 2, 4119, 3, 2, 2, 2, 2, 4121, 3, 2, 2, 2, 2, 4123, 3, 2, 2, 2, 2, 4125, 3, 2, 2, 2, 2, 4127, 3, 2, 2, 2, 2, 4129, 3, 2, 2, 2, 2, 4131, 3, 2, 2, 2, 2, 4133, 3, 2, 2, 2, 2, 4135, 3, 2, 2, 2, 2, 4137, 3, 2, 2, 2, 2, 4139, 3, 2, 2, 2, 2, 4141, 3, 2, 2, 2, 2, 4143, 3, 2, 2, 2, 2, 4145, 3, 2, 2, 2, 2, 4147, 3, 2, 2, 2, 2, 4149, 3, 2, 2, 2, 2, 4151, 3, 2, 2, 2, 2, 4153, 3, 2, 2, 2, 2, 4155, 3, 2, 2, 2, 2, 4157, 3, 2, 2, 2, 2, 4159, 3, 2, 2, 2, 2, 4161, 3, 2, 2, 2, 2, 4163, 3, 2, 2, 2, 2, 4165, 3, 2, 2, 2, 2, 4167, 3, 2, 2, 2, 2, 4169, 3, 2, 2, 2, 2, 4171, 3, 2, 2, 2, 2, 4173, 3, 2, 2, 2, 2, 4175, 3, 2, 2, 2, 2, 4177, 3, 2, 2, 2, 2, 4179, 3, 2, 2, 2, 2, 4181, 3, 2, 2, 2, 2, 4183, 3, 2, 2, 2, 2, 4185, 3, 2, 2, 2, 2, 4187, 3, 2, 2, 2, 2, 4189, 3, 2, 2, 2, 2, 4191, 3, 2, 2, 2, 2, 4193, 3, 2, 2, 2, 2, 4195, 3, 2, 2, 2, 2, 4197, 3, 2, 2, 2, 2, 4199, 3, 2, 2, 2, 2, 4201, 3, 2, 2, 2, 2, 4203, 3, 2, 2, 2, 2, 4205, 3, 2, 2, 2, 2, 4207, 3, 2, 2, 2, 2, 4209, 3, 2, 2, 2, 2, 4211, 3, 2, 2, 2, 2, 4213, 3, 2, 2, 2, 2, 4215, 3, 2, 2, 2, 2, 4217, 3, 2, 2, 2, 2, 4219, 3, 2, 2, 2, 2, 4221, 3, 2, 2, 2, 2, 4223, 3, 2, 2, 2, 2, 4225, 3, 2, 2, 2, 2, 4227, 3, 2, 2, 2, 2, 4229, 3, 2, 2, 2, 2, 4231, 3, 2, 2, 2, 2, 4233, 3, 2, 2, 2, 2, 4235, 3, 2, 2, 2, 2, 4237, 3, 2, 2, 2, 2, 4239, 3, 2, 2, 2, 2, 4241, 3, 2, 2, 2, 2, 4243, 3, 2, 2, 2, 2, 4245, 3, 2, 2, 2, 2, 4247, 3, 2, 2, 2, 2, 4249, 3, 2, 2, 2, 2, 4251, 3, 2, 2, 2, 2, 4253, 3, 2, 2, 2, 2, 4255, 3, 2, 2, 2, 2, 4257, 3, 2, 2, 2, 2, 4259, 3, 2, 2, 2, 2, 4261, 3, 2, 2, 2, 2, 4263, 3, 2, 2, 2, 2, 4265, 3, 2, 2, 2, 2, 4267, 3, 2, 2, 2, 2, 4269, 3, 2, 2, 2, 2, 4271, 3, 2, 2, 2, 2, 4273, 3, 2, 2, 2, 2, 4275, 3, 2, 2, 2, 2, 4277, 3, 2, 2, 2, 2, 4279, 3, 2, 2, 2, 2, 4281, 3, 2, 2, 2, 2, 4283, 3, 2, 2, 2, 2, 4285, 3, 2, 2, 2, 2, 4287, 3, 2, 2, 2, 2, 4289, 3, 2, 2, 2, 2, 4291, 3, 2, 2, 2, 2, 4293, 3, 2, 2, 2, 2, 4295, 3, 2, 2, 2, 2, 4297, 3, 2, 2, 2, 2, 4299, 3, 2, 2, 2, 2, 4301, 3, 2, 2, 2, 2, 4303, 3, 2, 2, 2, 2, 4305, 3, 2, 2, 2, 2, 4307, 3, 2, 2, 2, 2, 4309, 3, 2, 2, 2, 2, 4311, 3, 2, 2, 2, 2, 4313, 3, 2, 2, 2, 2, 4315, 3, 2, 2, 2, 2, 4317, 3, 2, 2, 2, 2, 4319, 3, 2, 2, 2, 2, 4321, 3, 2, 2, 2, 2, 4323, 3, 2, 2, 2, 2, 4325, 3, 2, 2, 2, 2, 4327, 3, 2, 2, 2, 2, 4329, 3, 2, 2, 2, 2, 4331, 3, 2, 2, 2, 2, 4333, 3, 2, 2, 2, 2, 4335, 3, 2, 2, 2, 2, 4337, 3, 2, 2, 2, 2, 4339, 3, 2, 2, 2, 2, 4341, 3, 2, 2, 2, 2, 4343, 3, 2, 2, 2, 2, 4345, 3, 2, 2, 2, 2, 4347, 3, 2, 2, 2, 2, 4349, 3, 2, 2, 2, 2, 4351, 3, 2, 2, 2, 2, 4353, 3, 2, 2, 2, 2, 4355, 3, 2, 2, 2, 2, 4357, 3, 2, 2, 2, 2, 4359, 3, 2, 2, 2, 2, 4361, 3, 2, 2, 2, 2, 4363, 3, 2, 2, 2, 2, 4365, 3, 2, 2, 2, 2, 4367, 3, 2, 2, 2, 2, 4369, 3, 2, 2, 2, 2, 4371, 3, 2, 2, 2, 2, 4373, 3, 2, 2, 2, 2, 4375, 3, 2, 2, 2, 2, 4377, 3, 2, 2, 2, 2, 4379, 3, 2, 2, 2, 2, 4381, 3, 2, 2, 2, 2, 4383, 3, 2, 2, 2, 2, 4385, 3, 2, 2, 2, 2, 4387, 3, 2, 2, 2, 2, 4389, 3, 2, 2, 2, 2, 4391, 3, 2, 2, 2, 2, 4393, 3, 2, 2, 2, 2, 4395, 3, 2, 2, 2, 2, 4397, 3, 2, 2, 2, 2, 4399, 3, 2, 2, 2, 2, 4401, 3, 2, 2, 2, 2, 4403, 3, 2, 2, 2, 2, 4405, 3, 2, 2, 2, 2, 4407, 3, 2, 2, 2, 2, 4409, 3, 2, 2, 2, 2, 4411, 3, 2, 2, 2, 2, 4413, 3, 2, 2, 2, 2, 4415, 3, 2, 2, 2, 2, 4417, 3, 2, 2, 2, 2, 4419, 3, 2, 2, 2, 2, 4421, 3, 2, 2, 2, 2, 4423, 3, 2, 2, 2, 2, 4425, 3, 2, 2, 2, 2, 4427, 3, 2, 2, 2, 2, 4429, 3, 2, 2, 2, 2, 4431, 3, 2, 2, 2, 2, 4433, 3, 2, 2, 2, 2, 4435, 3, 2, 2, 2, 2, 4437, 3, 2, 2, 2, 2, 4439, 3, 2, 2, 2, 2, 4441, 3, 2, 2, 2, 2, 4459, 3, 2, 2, 2, 2, 4461, 3, 2, 2, 2, 2, 4463, 3, 2, 2, 2, 2, 4465, 3, 2, 2, 2, 2, 4467, 3, 2, 2, 2, 2, 4469, 3, 2, 2, 2, 2, 4471, 3, 2, 2, 2, 2, 4473, 3, 2, 2, 2, 2, 4475, 3, 2, 2, 2, 2, 4477, 3, 2, 2, 2, 2, 4479, 3, 2, 2, 2, 2, 4481, 3, 2, 2, 2, 2, 4483, 3, 2, 2, 2, 2, 4485, 3, 2, 2, 2, 2, 4487, 3, 2, 2, 2, 2, 4489, 3, 2, 2, 2, 2, 4491, 3, 2, 2, 2, 2, 4493, 3, 2, 2, 2, 2, 4495, 3, 2, 2, 2, 2, 4497, 3, 2, 2, 2, 2, 4499, 3, 2, 2, 2, 2, 4501, 3, 2, 2, 2, 2, 4503, 3, 2, 2, 2, 2, 4505, 3, 2, 2, 2, 2, 4507, 3, 2, 2, 2, 2, 4509, 3, 2, 2, 2, 2, 4511, 3, 2, 2, 2, 2, 4513, 3, 2, 2, 2, 2, 4515, 3, 2, 2, 2, 2, 4517, 3, 2, 2, 2, 2, 4519, 3, 2, 2, 2, 2, 4521, 3, 2, 2, 2, 2, 4523, 3, 2, 2, 2, 2, 4525, 3, 2, 2, 2, 3, 4539, 3, 2, 2, 2, 5, 4545, 3, 2, 2, 2, 7, 4549, 3, 2, 2, 2, 9, 4556, 3, 2, 2, 2, 11, 4565, 3, 2, 2, 2, 13, 4573, 3, 2, 2, 2, 15, 4577, 3, 2, 2, 2, 17, 4582, 3, 2, 2, 2, 19, 4589, 3, 2, 2, 2, 21, 4597, 3, 2, 2, 2, 23, 4606, 3, 2, 2, 2, 25, 4613, 3, 2, 2, 2, 27, 4630, 3, 2, 2, 2, 29, 4642, 3, 2, 2, 2, 31, 4658, 3, 2, 2, 2, 33, 4669, 3, 2, 2, 2, 35, 4678, 3, 2, 2, 2, 37, 4692, 3, 2, 2, 2, 39, 4696, 3, 2, 2, 2, 41, 4707, 3, 2, 2, 2, 43, 4717, 3, 2, 2, 2, 45, 4728, 3, 2, 2, 2, 47, 4737, 3, 2, 2, 2, 49, 4743, 3, 2, 2, 2, 51, 4754, 3, 2, 2, 2, 53, 4768, 3, 2, 2, 2, 55, 4777, 3, 2, 2, 2, 57, 4784, 3, 2, 2, 2, 59, 4792, 3, 2, 2, 2, 61, 4807, 3, 2, 2, 2, 63, 4813, 3, 2, 2, 2, 65, 4819, 3, 2, 2, 2, 67, 4829, 3, 2, 2, 2, 69, 4831, 3, 2, 2, 2, 71, 4837, 3, 2, 2, 2, 73, 4841, 3, 2, 2, 2, 75, 4850, 3, 2, 2, 2, 77, 4856, 3, 2, 2, 2, 79, 4865, 3, 2, 2, 2, 81, 4871, 3, 2, 2, 2, 83, 4878, 3, 2, 2, 2, 85, 4886, 3, 2, 2, 2, 87, 4896, 3, 2, 2, 2, 89, 4900, 3, 2, 2, 2, 91, 4910, 3, 2, 2, 2, 93, 4918, 3, 2, 2, 2, 95, 4930, 3, 2, 2, 2, 97, 4939, 3, 2, 2, 2, 99, 4943, 3, 2, 2, 2, 101, 4953, 3, 2, 2, 2, 103, 4960, 3, 2, 2, 2, 105, 4975, 3, 2, 2, 2, 107, 4989, 3, 2, 2, 2, 109, 5001, 3, 2, 2, 2, 111, 5007, 3, 2, 2, 2, 113, 5029, 3, 2, 2, 2, 115, 5038, 3, 2, 2, 2, 117, 5046, 3, 2, 2, 2, 119, 5055, 3, 2, 2, 2, 121, 5066, 3, 2, 2, 2, 123, 5072, 3, 2, 2, 2, 125, 5075, 3, 2, 2, 2, 127, 5079, 3, 2, 2, 2, 129, 5085, 3, 2, 2, 2, 131, 5094, 3, 2, 2, 2, 133, 5099, 3, 2, 2, 2, 135, 5104, 3, 2, 2, 2, 137, 5113, 3, 2, 2, 2, 139, 5120, 3, 2, 2, 2, 141, 5130, 3, 2, 2, 2, 143, 5136, 3, 2, 2, 2, 145, 5149, 3, 2, 2, 2, 147, 5155, 3, 2, 2, 2, 149, 5160, 3, 2, 2, 2, 151, 5163, 3, 2, 2, 2, 153, 5173, 3, 2, 2, 2, 155, 5184, 3, 2, 2, 2, 157, 5190, 3, 2, 2, 2, 159, 5204, 3, 2, 2, 2, 161, 5219, 3, 2, 2, 2, 163, 5226, 3, 2, 2, 2, 165, 5240, 3, 2, 2, 2, 167, 5253, 3, 2, 2, 2, 169, 5258, 3, 2, 2, 2, 171, 5269, 3, 2, 2, 2, 173, 5280, 3, 2, 2, 2, 175, 5291, 3, 2, 2, 2, 177, 5301, 3, 2, 2, 2, 179, 5324, 3, 2, 2, 2, 181, 5340, 3, 2, 2, 2, 183, 5353, 3, 2, 2, 2, 185, 5358, 3, 2, 2, 2, 187, 5369, 3, 2, 2, 2, 189, 5376, 3, 2, 2, 2, 191, 5386, 3, 2, 2, 2, 193, 5392, 3, 2, 2, 2, 195, 5402, 3, 2, 2, 2, 197, 5408, 3, 2, 2, 2, 199, 5418, 3, 2, 2, 2, 201, 5446, 3, 2, 2, 2, 203, 5453, 3, 2, 2, 2, 205, 5460, 3, 2, 2, 2, 207, 5466, 3, 2, 2, 2, 209, 5476, 3, 2, 2, 2, 211, 5495, 3, 2, 2, 2, 213, 5502, 3, 2, 2, 2, 215, 5511, 3, 2, 2, 2, 217, 5519, 3, 2, 2, 2, 219, 5525, 3, 2, 2, 2, 221, 5535, 3, 2, 2, 2, 223, 5543, 3, 2, 2, 2, 225, 5550, 3, 2, 2, 2, 227, 5564, 3, 2, 2, 2, 229, 5587, 3, 2, 2, 2, 231, 5605, 3, 2, 2, 2, 233, 5618, 3, 2, 2, 2, 235, 5640, 3, 2, 2, 2, 237, 5657, 3, 2, 2, 2, 239, 5672, 3, 2, 2, 2, 241, 5683, 3, 2, 2, 2, 243, 5691, 3, 2, 2, 2, 245, 5702, 3, 2, 2, 2, 247, 5709, 3, 2, 2, 2, 249, 5720, 3, 2, 2, 2, 251, 5727, 3, 2, 2, 2, 253, 5735, 3, 2, 2, 2, 255, 5747, 3, 2, 2, 2, 257, 5752, 3, 2, 2, 2, 259, 5757, 3, 2, 2, 2, 261, 5763, 3, 2, 2, 2, 263, 5775, 3, 2, 2, 2, 265, 5782, 3, 2, 2, 2, 267, 5792, 3, 2, 2, 2, 269, 5797, 3, 2, 2, 2, 271, 5805, 3, 2, 2, 2, 273, 5810, 3, 2, 2, 2, 275, 5816, 3, 2, 2, 2, 277, 5823, 3, 2, 2, 2, 279, 5831, 3, 2, 2, 2, 281, 5841, 3, 2, 2, 2, 283, 5846, 3, 2, 2, 2, 285, 5853, 3, 2, 2, 2, 287, 5866, 3, 2, 2, 2, 289, 5878, 3, 2, 2, 2, 291, 5884, 3, 2, 2, 2, 293, 5889, 3, 2, 2, 2, 295, 5892, 3, 2, 2, 2, 297, 5915, 3, 2, 2, 2, 299, 5927, 3, 2, 2, 2, 301, 5932, 3, 2, 2, 2, 303, 5938, 3, 2, 2, 2, 305, 5947, 3, 2, 2, 2, 307, 5963, 3, 2, 2, 2, 309, 5980, 3, 2, 2, 2, 311, 5988, 3, 2, 2, 2, 313, 5999, 3, 2, 2, 2, 315, 6008, 3, 2, 2, 2, 317, 6013, 3, 2, 2, 2, 319, 6020, 3, 2, 2, 2, 321, 6030, 3, 2, 2, 2, 323, 6039, 3, 2, 2, 2, 325, 6051, 3, 2, 2, 2, 327, 6059, 3, 2, 2, 2, 329, 6064, 3, 2, 2, 2, 331, 6069, 3, 2, 2, 2, 333, 6078, 3, 2, 2, 2, 335, 6090, 3, 2, 2, 2, 337, 6095, 3, 2, 2, 2, 339, 6112, 3, 2, 2, 2, 341, 6124, 3, 2, 2, 2, 343, 6130, 3, 2, 2, 2, 345, 6138, 3, 2, 2, 2, 347, 6145, 3, 2, 2, 2, 349, 6160, 3, 2, 2, 2, 351, 6186, 3, 2, 2, 2, 353, 6196, 3, 2, 2, 2, 355, 6201, 3, 2, 2, 2, 357, 6209, 3, 2, 2, 2, 359, 6221, 3, 2, 2, 2, 361, 6239, 3, 2, 2, 2, 363, 6245, 3, 2, 2, 2, 365, 6256, 3, 2, 2, 2, 367, 6262, 3, 2, 2, 2, 369, 6269, 3, 2, 2, 2, 371, 6273, 3, 2, 2, 2, 373, 6279, 3, 2, 2, 2, 375, 6285, 3, 2, 2, 2, 377, 6296, 3, 2, 2, 2, 379, 6304, 3, 2, 2, 2, 381, 6310, 3, 2, 2, 2, 383, 6312, 3, 2, 2, 2, 385, 6319, 3, 2, 2, 2, 387, 6324, 3, 2, 2, 2, 389, 6330, 3, 2, 2, 2, 391, 6356, 3, 2, 2, 2, 393, 6362, 3, 2, 2, 2, 395, 6379, 3, 2, 2, 2, 397, 6387, 3, 2, 2, 2, 399, 6403, 3, 2, 2, 2, 401, 6420, 3, 2, 2, 2, 403, 6431, 3, 2, 2, 2, 405, 6442, 3, 2, 2, 2, 407, 6460, 3, 2, 2, 2, 409, 6480, 3, 2, 2, 2, 411, 6492, 3, 2, 2, 2, 413, 6501, 3, 2, 2, 2, 415, 6513, 3, 2, 2, 2, 417, 6520, 3, 2, 2, 2, 419, 6532, 3, 2, 2, 2, 421, 6537, 3, 2, 2, 2, 423, 6545, 3, 2, 2, 2, 425, 6554, 3, 2, 2, 2, 427, 6576, 3, 2, 2, 2, 429, 6583, 3, 2, 2, 2, 431, 6591, 3, 2, 2, 2, 433, 6604, 3, 2, 2, 2, 435, 6617, 3, 2, 2, 2, 437, 6625, 3, 2, 2, 2, 439, 6632, 3, 2, 2, 2, 441, 6642, 3, 2, 2, 2, 443, 6654, 3, 2, 2, 2, 445, 6662, 3, 2, 2, 2, 447, 6676, 3, 2, 2, 2, 449, 6684, 3, 2, 2, 2, 451, 6693, 3, 2, 2, 2, 453, 6704, 3, 2, 2, 2, 455, 6714, 3, 2, 2, 2, 457, 6725, 3, 2, 2, 2, 459, 6733, 3, 2, 2, 2, 461, 6743, 3, 2, 2, 2, 463, 6759, 3, 2, 2, 2, 465, 6768, 3, 2, 2, 2, 467, 6777, 3, 2, 2, 2, 469, 6785, 3, 2, 2, 2, 471, 6792, 3, 2, 2, 2, 473, 6807, 3, 2, 2, 2, 475, 6819, 3, 2, 2, 2, 477, 6829, 3, 2, 2, 2, 479, 6837, 3, 2, 2, 2, 481, 6848, 3, 2, 2, 2, 483, 6863, 3, 2, 2, 2, 485, 6870, 3, 2, 2, 2, 487, 6885, 3, 2, 2, 2, 489, 6908, 3, 2, 2, 2, 491, 6930, 3, 2, 2, 2, 493, 6952, 3, 2, 2, 2, 495, 6973, 3, 2, 2, 2, 497, 6994, 3, 2, 2, 2, 499, 7013, 3, 2, 2, 2, 501, 7031, 3, 2, 2, 2, 503, 7047, 3, 2, 2, 2, 505, 7055, 3, 2, 2, 2, 507, 7068, 3, 2, 2, 2, 509, 7077, 3, 2, 2, 2, 511, 7088, 3, 2, 2, 2, 513, 7097, 3, 2, 2, 2, 515, 7103, 3, 2, 2, 2, 517, 7114, 3, 2, 2, 2, 519, 7126, 3, 2, 2, 2, 521, 7138, 3, 2, 2, 2, 523, 7148, 3, 2, 2, 2, 525, 7163, 3, 2, 2, 2, 527, 7174, 3, 2, 2, 2, 529, 7182, 3, 2, 2, 2, 531, 7191, 3, 2, 2, 2, 533, 7199, 3, 2, 2, 2, 535, 7208, 3, 2, 2, 2, 537, 7220, 3, 2, 2, 2, 539, 7234, 3, 2, 2, 2, 541, 7242, 3, 2, 2, 2, 543, 7249, 3, 2, 2, 2, 545, 7254, 3, 2, 2, 2, 547, 7261, 3, 2, 2, 2, 549, 7268, 3, 2, 2, 2, 551, 7279, 3, 2, 2, 2, 553, 7295, 3, 2, 2, 2, 555, 7307, 3, 2, 2, 2, 557, 7311, 3, 2, 2, 2, 559, 7316, 3, 2, 2, 2, 561, 7321, 3, 2, 2, 2, 563, 7344, 3, 2, 2, 2, 565, 7350, 3, 2, 2, 2, 567, 7360, 3, 2, 2, 2, 569, 7371, 3, 2, 2, 2, 571, 7383, 3, 2, 2, 2, 573, 7396, 3, 2, 2, 2, 575, 7412, 3, 2, 2, 2, 577, 7418, 3, 2, 2, 2, 579, 7425, 3, 2, 2, 2, 581, 7442, 3, 2, 2, 2, 583, 7465, 3, 2, 2, 2, 585, 7474, 3, 2, 2, 2, 587, 7485, 3, 2, 2, 2, 589, 7494, 3, 2, 2, 2, 591, 7500, 3, 2, 2, 2, 593, 7513, 3, 2, 2, 2, 595, 7523, 3, 2, 2, 2, 597, 7531, 3, 2, 2, 2, 599, 7536, 3, 2, 2, 2, 601, 7544, 3, 2, 2, 2, 603, 7552, 3, 2, 2, 2, 605, 7563, 3, 2, 2, 2, 607, 7571, 3, 2, 2, 2, 609, 7584, 3, 2, 2, 2, 611, 7599, 3, 2, 2, 2, 613, 7612, 3, 2, 2, 2, 615, 7630, 3, 2, 2, 2, 617, 7643, 3, 2, 2, 2, 619, 7652, 3, 2, 2, 2, 621, 7659, 3, 2, 2, 2, 623, 7680, 3, 2, 2, 2, 625, 7704, 3, 2, 2, 2, 627, 7716, 3, 2, 2, 2, 629, 7719, 3, 2, 2, 2, 631, 7725, 3, 2, 2, 2, 633, 7734, 3, 2, 2, 2, 635, 7743, 3, 2, 2, 2, 637, 7748, 3, 2, 2, 2, 639, 7757, 3, 2, 2, 2, 641, 7767, 3, 2, 2, 2, 643, 7783, 3, 2, 2, 2, 645, 7796, 3, 2, 2, 2, 647, 7806, 3, 2, 2, 2, 649, 7831, 3, 2, 2, 2, 651, 7852, 3, 2, 2, 2, 653, 7861, 3, 2, 2, 2, 655, 7889, 3, 2, 2, 2, 657, 7894, 3, 2, 2, 2, 659, 7904, 3, 2, 2, 2, 661, 7908, 3, 2, 2, 2, 663, 7913, 3, 2, 2, 2, 665, 7917, 3, 2, 2, 2, 667, 7932, 3, 2, 2, 2, 669, 7943, 3, 2, 2, 2, 671, 7958, 3, 2, 2, 2, 673, 7969, 3, 2, 2, 2, 675, 7984, 3, 2, 2, 2, 677, 7995, 3, 2, 2, 2, 679, 7999, 3, 2, 2, 2, 681, 8010, 3, 2, 2, 2, 683, 8016, 3, 2, 2, 2, 685, 8025, 3, 2, 2, 2, 687, 8029, 3, 2, 2, 2, 689, 8037, 3, 2, 2, 2, 691, 8045, 3, 2, 2, 2, 693, 8055, 3, 2, 2, 2, 695, 8067, 3, 2, 2, 2, 697, 8072, 3, 2, 2, 2, 699, 8082, 3, 2, 2, 2, 701, 8090, 3, 2, 2, 2, 703, 8102, 3, 2, 2, 2, 705, 8110, 3, 2, 2, 2, 707, 8119, 3, 2, 2, 2, 709, 8130, 3, 2, 2, 2, 711, 8139, 3, 2, 2, 2, 713, 8147, 3, 2, 2, 2, 715, 8154, 3, 2, 2, 2, 717, 8162, 3, 2, 2, 2, 719, 8169, 3, 2, 2, 2, 721, 8175, 3, 2, 2, 2, 723, 8184, 3, 2, 2, 2, 725, 8195, 3, 2, 2, 2, 727, 8202, 3, 2, 2, 2, 729, 8212, 3, 2, 2, 2, 731, 8219, 3, 2, 2, 2, 733, 8231, 3, 2, 2, 2, 735, 8241, 3, 2, 2, 2, 737, 8247, 3, 2, 2, 2, 739, 8255, 3, 2, 2, 2, 741, 8261, 3, 2, 2, 2, 743, 8278, 3, 2, 2, 2, 745, 8283, 3, 2, 2, 2, 747, 8291, 3, 2, 2, 2, 749, 8300, 3, 2, 2, 2, 751, 8311, 3, 2, 2, 2, 753, 8325, 3, 2, 2, 2, 755, 8336, 3, 2, 2, 2, 757, 8346, 3, 2, 2, 2, 759, 8357, 3, 2, 2, 2, 761, 8369, 3, 2, 2, 2, 763, 8379, 3, 2, 2, 2, 765, 8391, 3, 2, 2, 2, 767, 8403, 3, 2, 2, 2, 769, 8411, 3, 2, 2, 2, 771, 8432, 3, 2, 2, 2, 773, 8447, 3, 2, 2, 2, 775, 8460, 3, 2, 2, 2, 777, 8469, 3, 2, 2, 2, 779, 8482, 3, 2, 2, 2, 781, 8490, 3, 2, 2, 2, 783, 8501, 3, 2, 2, 2, 785, 8506, 3, 2, 2, 2, 787, 8516, 3, 2, 2, 2, 789, 8529, 3, 2, 2, 2, 791, 8535, 3, 2, 2, 2, 793, 8544, 3, 2, 2, 2, 795, 8553, 3, 2, 2, 2, 797, 8567, 3, 2, 2, 2, 799, 8579, 3, 2, 2, 2, 801, 8590, 3, 2, 2, 2, 803, 8594, 3, 2, 2, 2, 805, 8605, 3, 2, 2, 2, 807, 8617, 3, 2, 2, 2, 809, 8626, 3, 2, 2, 2, 811, 8646, 3, 2, 2, 2, 813, 8667, 3, 2, 2, 2, 815, 8685, 3, 2, 2, 2, 817, 8692, 3, 2, 2, 2, 819, 8702, 3, 2, 2, 2, 821, 8715, 3, 2, 2, 2, 823, 8727, 3, 2, 2, 2, 825, 8732, 3, 2, 2, 2, 827, 8743, 3, 2, 2, 2, 829, 8768, 3, 2, 2, 2, 831, 8792, 3, 2, 2, 2, 833, 8797, 3, 2, 2, 2, 835, 8805, 3, 2, 2, 2, 837, 8815, 3, 2, 2, 2, 839, 8818, 3, 2, 2, 2, 841, 8826, 3, 2, 2, 2, 843, 8843, 3, 2, 2, 2, 845, 8868, 3, 2, 2, 2, 847, 8873, 3, 2, 2, 2, 849, 8885, 3, 2, 2, 2, 851, 8893, 3, 2, 2, 2, 853, 8904, 3, 2, 2, 2, 855, 8913, 3, 2, 2, 2, 857, 8921, 3, 2, 2, 2, 859, 8934, 3, 2, 2, 2, 861, 8949, 3, 2, 2, 2, 863, 8963, 3, 2, 2, 2, 865, 8984, 3, 2, 2, 2, 867, 8989, 3, 2, 2, 2, 869, 8995, 3, 2, 2, 2, 871, 8998, 3, 2, 2, 2, 873, 9009, 3, 2, 2, 2, 875, 9020, 3, 2, 2, 2, 877, 9026, 3, 2, 2, 2, 879, 9037, 3, 2, 2, 2, 881, 9044, 3, 2, 2, 2, 883, 9064, 3, 2, 2, 2, 885, 9078, 3, 2, 2, 2, 887, 9087, 3, 2, 2, 2, 889, 9095, 3, 2, 2, 2, 891, 9106, 3, 2, 2, 2, 893, 9110, 3, 2, 2, 2, 895, 9127, 3, 2, 2, 2, 897, 9136, 3, 2, 2, 2, 899, 9144, 3, 2, 2, 2, 901, 9152, 3, 2, 2, 2, 903, 9163, 3, 2, 2, 2, 905, 9178, 3, 2, 2, 2, 907, 9184, 3, 2, 2, 2, 909, 9193, 3, 2, 2, 2, 911, 9197, 3, 2, 2, 2, 913, 9212, 3, 2, 2, 2, 915, 9218, 3, 2, 2, 2, 917, 9240, 3, 2, 2, 2, 919, 9247, 3, 2, 2, 2, 921, 9254, 3, 2, 2, 2, 923, 9263, 3, 2, 2, 2, 925, 9268, 3, 2, 2, 2, 927, 9277, 3, 2, 2, 2, 929, 9286, 3, 2, 2, 2, 931, 9297, 3, 2, 2, 2, 933, 9304, 3, 2, 2, 2, 935, 9310, 3, 2, 2, 2, 937, 9317, 3, 2, 2, 2, 939, 9327, 3, 2, 2, 2, 941, 9342, 3, 2, 2, 2, 943, 9353, 3, 2, 2, 2, 945, 9362, 3, 2, 2, 2, 947, 9370, 3, 2, 2, 2, 949, 9380, 3, 2, 2, 2, 951, 9390, 3, 2, 2, 2, 953, 9398, 3, 2, 2, 2, 955, 9405, 3, 2, 2, 2, 957, 9414, 3, 2, 2, 2, 959, 9421, 3, 2, 2, 2, 961, 9432, 3, 2, 2, 2, 963, 9437, 3, 2, 2, 2, 965, 9458, 3, 2, 2, 2, 967, 9471, 3, 2, 2, 2, 969, 9475, 3, 2, 2, 2, 971, 9482, 3, 2, 2, 2, 973, 9490, 3, 2, 2, 2, 975, 9500, 3, 2, 2, 2, 977, 9507, 3, 2, 2, 2, 979, 9523, 3, 2, 2, 2, 981, 9531, 3, 2, 2, 2, 983, 9539, 3, 2, 2, 2, 985, 9546, 3, 2, 2, 2, 987, 9554, 3, 2, 2, 2, 989, 9563, 3, 2, 2, 2, 991, 9574, 3, 2, 2, 2, 993, 9589, 3, 2, 2, 2, 995, 9597, 3, 2, 2, 2, 997, 9610, 3, 2, 2, 2, 999, 9616, 3, 2, 2, 2, 1001, 9625, 3, 2, 2, 2, 1003, 9630, 3, 2, 2, 2, 1005, 9637, 3, 2, 2, 2, 1007, 9652, 3, 2, 2, 2, 1009, 9659, 3, 2, 2, 2, 1011, 9681, 3, 2, 2, 2, 1013, 9691, 3, 2, 2, 2, 1015, 9700, 3, 2, 2, 2, 1017, 9708, 3, 2, 2, 2, 1019, 9714, 3, 2, 2, 2, 1021, 9721, 3, 2, 2, 2, 1023, 9725, 3, 2, 2, 2, 1025, 9730, 3, 2, 2, 2, 1027, 9740, 3, 2, 2, 2, 1029, 9748, 3, 2, 2, 2, 1031, 9764, 3, 2, 2, 2, 1033, 9775, 3, 2, 2, 2, 1035, 9787, 3, 2, 2, 2, 1037, 9801, 3, 2, 2, 2, 1039, 9807, 3, 2, 2, 2, 1041, 9812, 3, 2, 2, 2, 1043, 9830, 3, 2, 2, 2, 1045, 9854, 3, 2, 2, 2, 1047, 9861, 3, 2, 2, 2, 1049, 9867, 3, 2, 2, 2, 1051, 9872, 3, 2, 2, 2, 1053, 9879, 3, 2, 2, 2, 1055, 9885, 3, 2, 2, 2, 1057, 9892, 3, 2, 2, 2, 1059, 9903, 3, 2, 2, 2, 1061, 9915, 3, 2, 2, 2, 1063, 9931, 3, 2, 2, 2, 1065, 9939, 3, 2, 2, 2, 1067, 9949, 3, 2, 2, 2, 1069, 9961, 3, 2, 2, 2, 1071, 9967, 3, 2, 2, 2, 1073, 9972, 3, 2, 2, 2, 1075, 9978, 3, 2, 2, 2, 1077, 9984, 3, 2, 2, 2, 1079, 9991, 3, 2, 2, 2, 1081, 10001, 3, 2, 2, 2, 1083, 10009, 3, 2, 2, 2, 1085, 10016, 3, 2, 2, 2, 1087, 10022, 3, 2, 2, 2, 1089, 10046, 3, 2, 2, 2, 1091, 10054, 3, 2, 2, 2, 1093, 10062, 3, 2, 2, 2, 1095, 10066, 3, 2, 2, 2, 1097, 10073, 3, 2, 2, 2, 1099, 10081, 3, 2, 2, 2, 1101, 10097, 3, 2, 2, 2, 1103, 10106, 3, 2, 2, 2, 1105, 10116, 3, 2, 2, 2, 1107, 10126, 3, 2, 2, 2, 1109, 10132, 3, 2, 2, 2, 1111, 10137, 3, 2, 2, 2, 1113, 10145, 3, 2, 2, 2, 1115, 10150, 3, 2, 2, 2, 1117, 10175, 3, 2, 2, 2, 1119, 10184, 3, 2, 2, 2, 1121, 10194, 3, 2, 2, 2, 1123, 10222, 3, 2, 2, 2, 1125, 10245, 3, 2, 2, 2, 1127, 10261, 3, 2, 2, 2, 1129, 10274, 3, 2, 2, 2, 1131, 10284, 3, 2, 2, 2, 1133, 10288, 3, 2, 2, 2, 1135, 10295, 3, 2, 2, 2, 1137, 10304, 3, 2, 2, 2, 1139, 10316, 3, 2, 2, 2, 1141, 10337, 3, 2, 2, 2, 1143, 10342, 3, 2, 2, 2, 1145, 10348, 3, 2, 2, 2, 1147, 10357, 3, 2, 2, 2, 1149, 10363, 3, 2, 2, 2, 1151, 10372, 3, 2, 2, 2, 1153, 10381, 3, 2, 2, 2, 1155, 10393, 3, 2, 2, 2, 1157, 10400, 3, 2, 2, 2, 1159, 10411, 3, 2, 2, 2, 1161, 10421, 3, 2, 2, 2, 1163, 10427, 3, 2, 2, 2, 1165, 10435, 3, 2, 2, 2, 1167, 10440, 3, 2, 2, 2, 1169, 10449, 3, 2, 2, 2, 1171, 10457, 3, 2, 2, 2, 1173, 10464, 3, 2, 2, 2, 1175, 10471, 3, 2, 2, 2, 1177, 10476, 3, 2, 2, 2, 1179, 10481, 3, 2, 2, 2, 1181, 10490, 3, 2, 2, 2, 1183, 10499, 3, 2, 2, 2, 1185, 10506, 3, 2, 2, 2, 1187, 10511, 3, 2, 2, 2, 1189, 10521, 3, 2, 2, 2, 1191, 10526, 3, 2, 2, 2, 1193, 10540, 3, 2, 2, 2, 1195, 10552, 3, 2, 2, 2, 1197, 10556, 3, 2, 2, 2, 1199, 10561, 3, 2, 2, 2, 1201, 10574, 3, 2, 2, 2, 1203, 10581, 3, 2, 2, 2, 1205, 10592, 3, 2, 2, 2, 1207, 10603, 3, 2, 2, 2, 1209, 10612, 3, 2, 2, 2, 1211, 10625, 3, 2, 2, 2, 1213, 10628, 3, 2, 2, 2, 1215, 10638, 3, 2, 2, 2, 1217, 10641, 3, 2, 2, 2, 1219, 10648, 3, 2, 2, 2, 1221, 10676, 3, 2, 2, 2, 1223, 10703, 3, 2, 2, 2, 1225, 10723, 3, 2, 2, 2, 1227, 10727, 3, 2, 2, 2, 1229, 10737, 3, 2, 2, 2, 1231, 10744, 3, 2, 2, 2, 1233, 10751, 3, 2, 2, 2, 1235, 10760, 3, 2, 2, 2, 1237, 10768, 3, 2, 2, 2, 1239, 10784, 3, 2, 2, 2, 1241, 10794, 3, 2, 2, 2, 1243, 10806, 3, 2, 2, 2, 1245, 10816, 3, 2, 2, 2, 1247, 10821, 3, 2, 2, 2, 1249, 10828, 3, 2, 2, 2, 1251, 10838, 3, 2, 2, 2, 1253, 10852, 3, 2, 2, 2, 1255, 10863, 3, 2, 2, 2, 1257, 10871, 3, 2, 2, 2, 1259, 10879, 3, 2, 2, 2, 1261, 10889, 3, 2, 2, 2, 1263, 10902, 3, 2, 2, 2, 1265, 10908, 3, 2, 2, 2, 1267, 10917, 3, 2, 2, 2, 1269, 10928, 3, 2, 2, 2, 1271, 10939, 3, 2, 2, 2, 1273, 10949, 3, 2, 2, 2, 1275, 10962, 3, 2, 2, 2, 1277, 10976, 3, 2, 2, 2, 1279, 10985, 3, 2, 2, 2, 1281, 10996, 3, 2, 2, 2, 1283, 11012, 3, 2, 2, 2, 1285, 11025, 3, 2, 2, 2, 1287, 11039, 3, 2, 2, 2, 1289, 11048, 3, 2, 2, 2, 1291, 11060, 3, 2, 2, 2, 1293, 11070, 3, 2, 2, 2, 1295, 11081, 3, 2, 2, 2, 1297, 11091, 3, 2, 2, 2, 1299, 11099, 3, 2, 2, 2, 1301, 11108, 3, 2, 2, 2, 1303, 11122, 3, 2, 2, 2, 1305, 11130, 3, 2, 2, 2, 1307, 11133, 3, 2, 2, 2, 1309, 11141, 3, 2, 2, 2, 1311, 11149, 3, 2, 2, 2, 1313, 11161, 3, 2, 2, 2, 1315, 11171, 3, 2, 2, 2, 1317, 11180, 3, 2, 2, 2, 1319, 11187, 3, 2, 2, 2, 1321, 11205, 3, 2, 2, 2, 1323, 11214, 3, 2, 2, 2, 1325, 11233, 3, 2, 2, 2, 1327, 11250, 3, 2, 2, 2, 1329, 11256, 3, 2, 2, 2, 1331, 11262, 3, 2, 2, 2, 1333, 11270, 3, 2, 2, 2, 1335, 11290, 3, 2, 2, 2, 1337, 11311, 3, 2, 2, 2, 1339, 11326, 3, 2, 2, 2, 1341, 11333, 3, 2, 2, 2, 1343, 11348, 3, 2, 2, 2, 1345, 11364, 3, 2, 2, 2, 1347, 11373, 3, 2, 2, 2, 1349, 11383, 3, 2, 2, 2, 1351, 11396, 3, 2, 2, 2, 1353, 11406, 3, 2, 2, 2, 1355, 11414, 3, 2, 2, 2, 1357, 11421, 3, 2, 2, 2, 1359, 11428, 3, 2, 2, 2, 1361, 11435, 3, 2, 2, 2, 1363, 11442, 3, 2, 2, 2, 1365, 11448, 3, 2, 2, 2, 1367, 11456, 3, 2, 2, 2, 1369, 11468, 3, 2, 2, 2, 1371, 11481, 3, 2, 2, 2, 1373, 11498, 3, 2, 2, 2, 1375, 11511, 3, 2, 2, 2, 1377, 11523, 3, 2, 2, 2, 1379, 11533, 3, 2, 2, 2, 1381, 11542, 3, 2, 2, 2, 1383, 11546, 3, 2, 2, 2, 1385, 11551, 3, 2, 2, 2, 1387, 11562, 3, 2, 2, 2, 1389, 11572, 3, 2, 2, 2, 1391, 11582, 3, 2, 2, 2, 1393, 11585, 3, 2, 2, 2, 1395, 11595, 3, 2, 2, 2, 1397, 11611, 3, 2, 2, 2, 1399, 11619, 3, 2, 2, 2, 1401, 11636, 3, 2, 2, 2, 1403, 11641, 3, 2, 2, 2, 1405, 11645, 3, 2, 2, 2, 1407, 11650, 3, 2, 2, 2, 1409, 11664, 3, 2, 2, 2, 1411, 11675, 3, 2, 2, 2, 1413, 11686, 3, 2, 2, 2, 1415, 11699, 3, 2, 2, 2, 1417, 11711, 3, 2, 2, 2, 1419, 11719, 3, 2, 2, 2, 1421, 11724, 3, 2, 2, 2, 1423, 11739, 3, 2, 2, 2, 1425, 11751, 3, 2, 2, 2, 1427, 11761, 3, 2, 2, 2, 1429, 11772, 3, 2, 2, 2, 1431, 11787, 3, 2, 2, 2, 1433, 11798, 3, 2, 2, 2, 1435, 11817, 3, 2, 2, 2, 1437, 11835, 3, 2, 2, 2, 1439, 11846, 3, 2, 2, 2, 1441, 11862, 3, 2, 2, 2, 1443, 11867, 3, 2, 2, 2, 1445, 11876, 3, 2, 2, 2, 1447, 11880, 3, 2, 2, 2, 1449, 11891, 3, 2, 2, 2, 1451, 11899, 3, 2, 2, 2, 1453, 11904, 3, 2, 2, 2, 1455, 11913, 3, 2, 2, 2, 1457, 11918, 3, 2, 2, 2, 1459, 11924, 3, 2, 2, 2, 1461, 11933, 3, 2, 2, 2, 1463, 11942, 3, 2, 2, 2, 1465, 11947, 3, 2, 2, 2, 1467, 11958, 3, 2, 2, 2, 1469, 11966, 3, 2, 2, 2, 1471, 11970, 3, 2, 2, 2, 1473, 11976, 3, 2, 2, 2, 1475, 12002, 3, 2, 2, 2, 1477, 12020, 3, 2, 2, 2, 1479, 12043, 3, 2, 2, 2, 1481, 12051, 3, 2, 2, 2, 1483, 12056, 3, 2, 2, 2, 1485, 12064, 3, 2, 2, 2, 1487, 12072, 3, 2, 2, 2, 1489, 12080, 3, 2, 2, 2, 1491, 12088, 3, 2, 2, 2, 1493, 12095, 3, 2, 2, 2, 1495, 12100, 3, 2, 2, 2, 1497, 12106, 3, 2, 2, 2, 1499, 12113, 3, 2, 2, 2, 1501, 12121, 3, 2, 2, 2, 1503, 12131, 3, 2, 2, 2, 1505, 12136, 3, 2, 2, 2, 1507, 12145, 3, 2, 2, 2, 1509, 12151, 3, 2, 2, 2, 1511, 12157, 3, 2, 2, 2, 1513, 12163, 3, 2, 2, 2, 1515, 12175, 3, 2, 2, 2, 1517, 12180, 3, 2, 2, 2, 1519, 12186, 3, 2, 2, 2, 1521, 12193, 3, 2, 2, 2, 1523, 12198, 3, 2, 2, 2, 1525, 12203, 3, 2, 2, 2, 1527, 12206, 3, 2, 2, 2, 1529, 12212, 3, 2, 2, 2, 1531, 12217, 3, 2, 2, 2, 1533, 12221, 3, 2, 2, 2, 1535, 12228, 3, 2, 2, 2, 1537, 12233, 3, 2, 2, 2, 1539, 12247, 3, 2, 2, 2, 1541, 12253, 3, 2, 2, 2, 1543, 12263, 3, 2, 2, 2, 1545, 12278, 3, 2, 2, 2, 1547, 12287, 3, 2, 2, 2, 1549, 12295, 3, 2, 2, 2, 1551, 12302, 3, 2, 2, 2, 1553, 12310, 3, 2, 2, 2, 1555, 12315, 3, 2, 2, 2, 1557, 12323, 3, 2, 2, 2, 1559, 12332, 3, 2, 2, 2, 1561, 12340, 3, 2, 2, 2, 1563, 12348, 3, 2, 2, 2, 1565, 12371, 3, 2, 2, 2, 1567, 12397, 3, 2, 2, 2, 1569, 12401, 3, 2, 2, 2, 1571, 12411, 3, 2, 2, 2, 1573, 12418, 3, 2, 2, 2, 1575, 12424, 3, 2, 2, 2, 1577, 12449, 3, 2, 2, 2, 1579, 12454, 3, 2, 2, 2, 1581, 12459, 3, 2, 2, 2, 1583, 12465, 3, 2, 2, 2, 1585, 12469, 3, 2, 2, 2, 1587, 12474, 3, 2, 2, 2, 1589, 12480, 3, 2, 2, 2, 1591, 12485, 3, 2, 2, 2, 1593, 12494, 3, 2, 2, 2, 1595, 12502, 3, 2, 2, 2, 1597, 12509, 3, 2, 2, 2, 1599, 12520, 3, 2, 2, 2, 1601, 12528, 3, 2, 2, 2, 1603, 12535, 3, 2, 2, 2, 1605, 12539, 3, 2, 2, 2, 1607, 12547, 3, 2, 2, 2, 1609, 12554, 3, 2, 2, 2, 1611, 12562, 3, 2, 2, 2, 1613, 12570, 3, 2, 2, 2, 1615, 12576, 3, 2, 2, 2, 1617, 12589, 3, 2, 2, 2, 1619, 12605, 3, 2, 2, 2, 1621, 12618, 3, 2, 2, 2, 1623, 12630, 3, 2, 2, 2, 1625, 12642, 3, 2, 2, 2, 1627, 12655, 3, 2, 2, 2, 1629, 12666, 3, 2, 2, 2, 1631, 12675, 3, 2, 2, 2, 1633, 12688, 3, 2, 2, 2, 1635, 12700, 3, 2, 2, 2, 1637, 12714, 3, 2, 2, 2, 1639, 12728, 3, 2, 2, 2, 1641, 12749, 3, 2, 2, 2, 1643, 12757, 3, 2, 2, 2, 1645, 12766, 3, 2, 2, 2, 1647, 12775, 3, 2, 2, 2, 1649, 12783, 3, 2, 2, 2, 1651, 12792, 3, 2, 2, 2, 1653, 12799, 3, 2, 2, 2, 1655, 12806, 3, 2, 2, 2, 1657, 12818, 3, 2, 2, 2, 1659, 12825, 3, 2, 2, 2, 1661, 12839, 3, 2, 2, 2, 1663, 12848, 3, 2, 2, 2, 1665, 12863, 3, 2, 2, 2, 1667, 12869, 3, 2, 2, 2, 1669, 12878, 3, 2, 2, 2, 1671, 12887, 3, 2, 2, 2, 1673, 12894, 3, 2, 2, 2, 1675, 12902, 3, 2, 2, 2, 1677, 12912, 3, 2, 2, 2, 1679, 12923, 3, 2, 2, 2, 1681, 12932, 3, 2, 2, 2, 1683, 12940, 3, 2, 2, 2, 1685, 12947, 3, 2, 2, 2, 1687, 12953, 3, 2, 2, 2, 1689, 12964, 3, 2, 2, 2, 1691, 12971, 3, 2, 2, 2, 1693, 12980, 3, 2, 2, 2, 1695, 12991, 3, 2, 2, 2, 1697, 13001, 3, 2, 2, 2, 1699, 13008, 3, 2, 2, 2, 1701, 13017, 3, 2, 2, 2, 1703, 13040, 3, 2, 2, 2, 1705, 13068, 3, 2, 2, 2, 1707, 13091, 3, 2, 2, 2, 1709, 13110, 3, 2, 2, 2, 1711, 13116, 3, 2, 2, 2, 1713, 13125, 3, 2, 2, 2, 1715, 13143, 3, 2, 2, 2, 1717, 13153, 3, 2, 2, 2, 1719, 13168, 3, 2, 2, 2, 1721, 13177, 3, 2, 2, 2, 1723, 13182, 3, 2, 2, 2, 1725, 13195, 3, 2, 2, 2, 1727, 13214, 3, 2, 2, 2, 1729, 13221, 3, 2, 2, 2, 1731, 13225, 3, 2, 2, 2, 1733, 13232, 3, 2, 2, 2, 1735, 13243, 3, 2, 2, 2, 1737, 13251, 3, 2, 2, 2, 1739, 13257, 3, 2, 2, 2, 1741, 13272, 3, 2, 2, 2, 1743, 13279, 3, 2, 2, 2, 1745, 13285, 3, 2, 2, 2, 1747, 13295, 3, 2, 2, 2, 1749, 13304, 3, 2, 2, 2, 1751, 13309, 3, 2, 2, 2, 1753, 13326, 3, 2, 2, 2, 1755, 13335, 3, 2, 2, 2, 1757, 13344, 3, 2, 2, 2, 1759, 13350, 3, 2, 2, 2, 1761, 13355, 3, 2, 2, 2, 1763, 13365, 3, 2, 2, 2, 1765, 13369, 3, 2, 2, 2, 1767, 13375, 3, 2, 2, 2, 1769, 13384, 3, 2, 2, 2, 1771, 13407, 3, 2, 2, 2, 1773, 13414, 3, 2, 2, 2, 1775, 13422, 3, 2, 2, 2, 1777, 13431, 3, 2, 2, 2, 1779, 13435, 3, 2, 2, 2, 1781, 13444, 3, 2, 2, 2, 1783, 13450, 3, 2, 2, 2, 1785, 13455, 3, 2, 2, 2, 1787, 13461, 3, 2, 2, 2, 1789, 13468, 3, 2, 2, 2, 1791, 13472, 3, 2, 2, 2, 1793, 13479, 3, 2, 2, 2, 1795, 13504, 3, 2, 2, 2, 1797, 13526, 3, 2, 2, 2, 1799, 13542, 3, 2, 2, 2, 1801, 13564, 3, 2, 2, 2, 1803, 13587, 3, 2, 2, 2, 1805, 13595, 3, 2, 2, 2, 1807, 13601, 3, 2, 2, 2, 1809, 13605, 3, 2, 2, 2, 1811, 13614, 3, 2, 2, 2, 1813, 13623, 3, 2, 2, 2, 1815, 13628, 3, 2, 2, 2, 1817, 13634, 3, 2, 2, 2, 1819, 13647, 3, 2, 2, 2, 1821, 13664, 3, 2, 2, 2, 1823, 13679, 3, 2, 2, 2, 1825, 13692, 3, 2, 2, 2, 1827, 13705, 3, 2, 2, 2, 1829, 13722, 3, 2, 2, 2, 1831, 13743, 3, 2, 2, 2, 1833, 13758, 3, 2, 2, 2, 1835, 13775, 3, 2, 2, 2, 1837, 13784, 3, 2, 2, 2, 1839, 13797, 3, 2, 2, 2, 1841, 13813, 3, 2, 2, 2, 1843, 13831, 3, 2, 2, 2, 1845, 13843, 3, 2, 2, 2, 1847, 13860, 3, 2, 2, 2, 1849, 13866, 3, 2, 2, 2, 1851, 13875, 3, 2, 2, 2, 1853, 13888, 3, 2, 2, 2, 1855, 13909, 3, 2, 2, 2, 1857, 13919, 3, 2, 2, 2, 1859, 13939, 3, 2, 2, 2, 1861, 13962, 3, 2, 2, 2, 1863, 13971, 3, 2, 2, 2, 1865, 13979, 3, 2, 2, 2, 1867, 13997, 3, 2, 2, 2, 1869, 14011, 3, 2, 2, 2, 1871, 14021, 3, 2, 2, 2, 1873, 14031, 3, 2, 2, 2, 1875, 14048, 3, 2, 2, 2, 1877, 14063, 3, 2, 2, 2, 1879, 14072, 3, 2, 2, 2, 1881, 14085, 3, 2, 2, 2, 1883, 14093, 3, 2, 2, 2, 1885, 14112, 3, 2, 2, 2, 1887, 14141, 3, 2, 2, 2, 1889, 14172, 3, 2, 2, 2, 1891, 14186, 3, 2, 2, 2, 1893, 14196, 3, 2, 2, 2, 1895, 14204, 3, 2, 2, 2, 1897, 14217, 3, 2, 2, 2, 1899, 14238, 3, 2, 2, 2, 1901, 14258, 3, 2, 2, 2, 1903, 14272, 3, 2, 2, 2, 1905, 14287, 3, 2, 2, 2, 1907, 14302, 3, 2, 2, 2, 1909, 14313, 3, 2, 2, 2, 1911, 14339, 3, 2, 2, 2, 1913, 14364, 3, 2, 2, 2, 1915, 14389, 3, 2, 2, 2, 1917, 14413, 3, 2, 2, 2, 1919, 14437, 3, 2, 2, 2, 1921, 14444, 3, 2, 2, 2, 1923, 14470, 3, 2, 2, 2, 1925, 14485, 3, 2, 2, 2, 1927, 14499, 3, 2, 2, 2, 1929, 14507, 3, 2, 2, 2, 1931, 14532, 3, 2, 2, 2, 1933, 14547, 3, 2, 2, 2, 1935, 14555, 3, 2, 2, 2, 1937, 14578, 3, 2, 2, 2, 1939, 14605, 3, 2, 2, 2, 1941, 14621, 3, 2, 2, 2, 1943, 14639, 3, 2, 2, 2, 1945, 14656, 3, 2, 2, 2, 1947, 14680, 3, 2, 2, 2, 1949, 14697, 3, 2, 2, 2, 1951, 14721, 3, 2, 2, 2, 1953, 14731, 3, 2, 2, 2, 1955, 14747, 3, 2, 2, 2, 1957, 14755, 3, 2, 2, 2, 1959, 14773, 3, 2, 2, 2, 1961, 14786, 3, 2, 2, 2, 1963, 14794, 3, 2, 2, 2, 1965, 14822, 3, 2, 2, 2, 1967, 14853, 3, 2, 2, 2, 1969, 14869, 3, 2, 2, 2, 1971, 14881, 3, 2, 2, 2, 1973, 14894, 3, 2, 2, 2, 1975, 14903, 3, 2, 2, 2, 1977, 14915, 3, 2, 2, 2, 1979, 14927, 3, 2, 2, 2, 1981, 14947, 3, 2, 2, 2, 1983, 14954, 3, 2, 2, 2, 1985, 14962, 3, 2, 2, 2, 1987, 14970, 3, 2, 2, 2, 1989, 14980, 3, 2, 2, 2, 1991, 14990, 3, 2, 2, 2, 1993, 15001, 3, 2, 2, 2, 1995, 15010, 3, 2, 2, 2, 1997, 15021, 3, 2, 2, 2, 1999, 15032, 3, 2, 2, 2, 2001, 15050, 3, 2, 2, 2, 2003, 15064, 3, 2, 2, 2, 2005, 15077, 3, 2, 2, 2, 2007, 15088, 3, 2, 2, 2, 2009, 15107, 3, 2, 2, 2, 2011, 15133, 3, 2, 2, 2, 2013, 15145, 3, 2, 2, 2, 2015, 15160, 3, 2, 2, 2, 2017, 15165, 3, 2, 2, 2, 2019, 15181, 3, 2, 2, 2, 2021, 15197, 3, 2, 2, 2, 2023, 15200, 3, 2, 2, 2, 2025, 15210, 3, 2, 2, 2, 2027, 15225, 3, 2, 2, 2, 2029, 15233, 3, 2, 2, 2, 2031, 15250, 3, 2, 2, 2, 2033, 15272, 3, 2, 2, 2, 2035, 15295, 3, 2, 2, 2, 2037, 15306, 3, 2, 2, 2, 2039, 15324, 3, 2, 2, 2, 2041, 15341, 3, 2, 2, 2, 2043, 15353, 3, 2, 2, 2, 2045, 15364, 3, 2, 2, 2, 2047, 15382, 3, 2, 2, 2, 2049, 15398, 3, 2, 2, 2, 2051, 15425, 3, 2, 2, 2, 2053, 15437, 3, 2, 2, 2, 2055, 15455, 3, 2, 2, 2, 2057, 15473, 3, 2, 2, 2, 2059, 15496, 3, 2, 2, 2, 2061, 15506, 3, 2, 2, 2, 2063, 15522, 3, 2, 2, 2, 2065, 15533, 3, 2, 2, 2, 2067, 15548, 3, 2, 2, 2, 2069, 15561, 3, 2, 2, 2, 2071, 15574, 3, 2, 2, 2, 2073, 15587, 3, 2, 2, 2, 2075, 15609, 3, 2, 2, 2, 2077, 15627, 3, 2, 2, 2, 2079, 15639, 3, 2, 2, 2, 2081, 15663, 3, 2, 2, 2, 2083, 15678, 3, 2, 2, 2, 2085, 15689, 3, 2, 2, 2, 2087, 15696, 3, 2, 2, 2, 2089, 15705, 3, 2, 2, 2, 2091, 15714, 3, 2, 2, 2, 2093, 15726, 3, 2, 2, 2, 2095, 15742, 3, 2, 2, 2, 2097, 15752, 3, 2, 2, 2, 2099, 15763, 3, 2, 2, 2, 2101, 15773, 3, 2, 2, 2, 2103, 15780, 3, 2, 2, 2, 2105, 15801, 3, 2, 2, 2, 2107, 15819, 3, 2, 2, 2, 2109, 15833, 3, 2, 2, 2, 2111, 15843, 3, 2, 2, 2, 2113, 15855, 3, 2, 2, 2, 2115, 15872, 3, 2, 2, 2, 2117, 15887, 3, 2, 2, 2, 2119, 15894, 3, 2, 2, 2, 2121, 15913, 3, 2, 2, 2, 2123, 15925, 3, 2, 2, 2, 2125, 15948, 3, 2, 2, 2, 2127, 15969, 3, 2, 2, 2, 2129, 15984, 3, 2, 2, 2, 2131, 15993, 3, 2, 2, 2, 2133, 16013, 3, 2, 2, 2, 2135, 16028, 3, 2, 2, 2, 2137, 16048, 3, 2, 2, 2, 2139, 16057, 3, 2, 2, 2, 2141, 16079, 3, 2, 2, 2, 2143, 16093, 3, 2, 2, 2, 2145, 16101, 3, 2, 2, 2, 2147, 16114, 3, 2, 2, 2, 2149, 16118, 3, 2, 2, 2, 2151, 16144, 3, 2, 2, 2, 2153, 16154, 3, 2, 2, 2, 2155, 16166, 3, 2, 2, 2, 2157, 16190, 3, 2, 2, 2, 2159, 16219, 3, 2, 2, 2, 2161, 16231, 3, 2, 2, 2, 2163, 16256, 3, 2, 2, 2, 2165, 16269, 3, 2, 2, 2, 2167, 16279, 3, 2, 2, 2, 2169, 16305, 3, 2, 2, 2, 2171, 16316, 3, 2, 2, 2, 2173, 16341, 3, 2, 2, 2, 2175, 16366, 3, 2, 2, 2, 2177, 16386, 3, 2, 2, 2, 2179, 16393, 3, 2, 2, 2, 2181, 16416, 3, 2, 2, 2, 2183, 16435, 3, 2, 2, 2, 2185, 16465, 3, 2, 2, 2, 2187, 16485, 3, 2, 2, 2, 2189, 16506, 3, 2, 2, 2, 2191, 16517, 3, 2, 2, 2, 2193, 16527, 3, 2, 2, 2, 2195, 16534, 3, 2, 2, 2, 2197, 16539, 3, 2, 2, 2, 2199, 16545, 3, 2, 2, 2, 2201, 16552, 3, 2, 2, 2, 2203, 16560, 3, 2, 2, 2, 2205, 16575, 3, 2, 2, 2, 2207, 16591, 3, 2, 2, 2, 2209, 16607, 3, 2, 2, 2, 2211, 16617, 3, 2, 2, 2, 2213, 16622, 3, 2, 2, 2, 2215, 16633, 3, 2, 2, 2, 2217, 16640, 3, 2, 2, 2, 2219, 16647, 3, 2, 2, 2, 2221, 16653, 3, 2, 2, 2, 2223, 16665, 3, 2, 2, 2, 2225, 16676, 3, 2, 2, 2, 2227, 16684, 3, 2, 2, 2, 2229, 16688, 3, 2, 2, 2, 2231, 16695, 3, 2, 2, 2, 2233, 16698, 3, 2, 2, 2, 2235, 16707, 3, 2, 2, 2, 2237, 16711, 3, 2, 2, 2, 2239, 16716, 3, 2, 2, 2, 2241, 16720, 3, 2, 2, 2, 2243, 16734, 3, 2, 2, 2, 2245, 16738, 3, 2, 2, 2, 2247, 16743, 3, 2, 2, 2, 2249, 16748, 3, 2, 2, 2, 2251, 16752, 3, 2, 2, 2, 2253, 16759, 3, 2, 2, 2, 2255, 16769, 3, 2, 2, 2, 2257, 16774, 3, 2, 2, 2, 2259, 16777, 3, 2, 2, 2, 2261, 16784, 3, 2, 2, 2, 2263, 16801, 3, 2, 2, 2, 2265, 16819, 3, 2, 2, 2, 2267, 16826, 3, 2, 2, 2, 2269, 16831, 3, 2, 2, 2, 2271, 16842, 3, 2, 2, 2, 2273, 16851, 3, 2, 2, 2, 2275, 16864, 3, 2, 2, 2, 2277, 16872, 3, 2, 2, 2, 2279, 16881, 3, 2, 2, 2, 2281, 16907, 3, 2, 2, 2, 2283, 16922, 3, 2, 2, 2, 2285, 16929, 3, 2, 2, 2, 2287, 16939, 3, 2, 2, 2, 2289, 16950, 3, 2, 2, 2, 2291, 16964, 3, 2, 2, 2, 2293, 16984, 3, 2, 2, 2, 2295, 16999, 3, 2, 2, 2, 2297, 17007, 3, 2, 2, 2, 2299, 17016, 3, 2, 2, 2, 2301, 17033, 3, 2, 2, 2, 2303, 17049, 3, 2, 2, 2, 2305, 17063, 3, 2, 2, 2, 2307, 17078, 3, 2, 2, 2, 2309, 17097, 3, 2, 2, 2, 2311, 17106, 3, 2, 2, 2, 2313, 17126, 3, 2, 2, 2, 2315, 17144, 3, 2, 2, 2, 2317, 17170, 3, 2, 2, 2, 2319, 17191, 3, 2, 2, 2, 2321, 17206, 3, 2, 2, 2, 2323, 17220, 3, 2, 2, 2, 2325, 17231, 3, 2, 2, 2, 2327, 17246, 3, 2, 2, 2, 2329, 17261, 3, 2, 2, 2, 2331, 17276, 3, 2, 2, 2, 2333, 17291, 3, 2, 2, 2, 2335, 17299, 3, 2, 2, 2, 2337, 17318, 3, 2, 2, 2, 2339, 17324, 3, 2, 2, 2, 2341, 17335, 3, 2, 2, 2, 2343, 17345, 3, 2, 2, 2, 2345, 17358, 3, 2, 2, 2, 2347, 17361, 3, 2, 2, 2, 2349, 17375, 3, 2, 2, 2, 2351, 17383, 3, 2, 2, 2, 2353, 17389, 3, 2, 2, 2, 2355, 17408, 3, 2, 2, 2, 2357, 17428, 3, 2, 2, 2, 2359, 17434, 3, 2, 2, 2, 2361, 17447, 3, 2, 2, 2, 2363, 17455, 3, 2, 2, 2, 2365, 17467, 3, 2, 2, 2, 2367, 17471, 3, 2, 2, 2, 2369, 17487, 3, 2, 2, 2, 2371, 17496, 3, 2, 2, 2, 2373, 17505, 3, 2, 2, 2, 2375, 17510, 3, 2, 2, 2, 2377, 17521, 3, 2, 2, 2, 2379, 17527, 3, 2, 2, 2, 2381, 17537, 3, 2, 2, 2, 2383, 17541, 3, 2, 2, 2, 2385, 17549, 3, 2, 2, 2, 2387, 17558, 3, 2, 2, 2, 2389, 17574, 3, 2, 2, 2, 2391, 17589, 3, 2, 2, 2, 2393, 17598, 3, 2, 2, 2, 2395, 17612, 3, 2, 2, 2, 2397, 17623, 3, 2, 2, 2, 2399, 17629, 3, 2, 2, 2, 2401, 17636, 3, 2, 2, 2, 2403, 17643, 3, 2, 2, 2, 2405, 17656, 3, 2, 2, 2, 2407, 17666, 3, 2, 2, 2, 2409, 17674, 3, 2, 2, 2, 2411, 17698, 3, 2, 2, 2, 2413, 17713, 3, 2, 2, 2, 2415, 17728, 3, 2, 2, 2, 2417, 17738, 3, 2, 2, 2, 2419, 17754, 3, 2, 2, 2, 2421, 17765, 3, 2, 2, 2, 2423, 17779, 3, 2, 2, 2, 2425, 17787, 3, 2, 2, 2, 2427, 17807, 3, 2, 2, 2, 2429, 17826, 3, 2, 2, 2, 2431, 17845, 3, 2, 2, 2, 2433, 17854, 3, 2, 2, 2, 2435, 17873, 3, 2, 2, 2, 2437, 17893, 3, 2, 2, 2, 2439, 17918, 3, 2, 2, 2, 2441, 17923, 3, 2, 2, 2, 2443, 17929, 3, 2, 2, 2, 2445, 17934, 3, 2, 2, 2, 2447, 17946, 3, 2, 2, 2, 2449, 17952, 3, 2, 2, 2, 2451, 17960, 3, 2, 2, 2, 2453, 17973, 3, 2, 2, 2, 2455, 17984, 3, 2, 2, 2, 2457, 17992, 3, 2, 2, 2, 2459, 18004, 3, 2, 2, 2, 2461, 18017, 3, 2, 2, 2, 2463, 18025, 3, 2, 2, 2, 2465, 18036, 3, 2, 2, 2, 2467, 18044, 3, 2, 2, 2, 2469, 18057, 3, 2, 2, 2, 2471, 18071, 3, 2, 2, 2, 2473, 18087, 3, 2, 2, 2, 2475, 18095, 3, 2, 2, 2, 2477, 18109, 3, 2, 2, 2, 2479, 18125, 3, 2, 2, 2, 2481, 18140, 3, 2, 2, 2, 2483, 18152, 3, 2, 2, 2, 2485, 18164, 3, 2, 2, 2, 2487, 18171, 3, 2, 2, 2, 2489, 18181, 3, 2, 2, 2, 2491, 18192, 3, 2, 2, 2, 2493, 18200, 3, 2, 2, 2, 2495, 18204, 3, 2, 2, 2, 2497, 18210, 3, 2, 2, 2, 2499, 18219, 3, 2, 2, 2, 2501, 18225, 3, 2, 2, 2, 2503, 18235, 3, 2, 2, 2, 2505, 18240, 3, 2, 2, 2, 2507, 18247, 3, 2, 2, 2, 2509, 18253, 3, 2, 2, 2, 2511, 18261, 3, 2, 2, 2, 2513, 18276, 3, 2, 2, 2, 2515, 18291, 3, 2, 2, 2, 2517, 18296, 3, 2, 2, 2, 2519, 18313, 3, 2, 2, 2, 2521, 18325, 3, 2, 2, 2, 2523, 18339, 3, 2, 2, 2, 2525, 18355, 3, 2, 2, 2, 2527, 18367, 3, 2, 2, 2, 2529, 18388, 3, 2, 2, 2, 2531, 18403, 3, 2, 2, 2, 2533, 18413, 3, 2, 2, 2, 2535, 18419, 3, 2, 2, 2, 2537, 18426, 3, 2, 2, 2, 2539, 18435, 3, 2, 2, 2, 2541, 18443, 3, 2, 2, 2, 2543, 18452, 3, 2, 2, 2, 2545, 18460, 3, 2, 2, 2, 2547, 18468, 3, 2, 2, 2, 2549, 18478, 3, 2, 2, 2, 2551, 18487, 3, 2, 2, 2, 2553, 18504, 3, 2, 2, 2, 2555, 18533, 3, 2, 2, 2, 2557, 18547, 3, 2, 2, 2, 2559, 18553, 3, 2, 2, 2, 2561, 18573, 3, 2, 2, 2, 2563, 18587, 3, 2, 2, 2, 2565, 18608, 3, 2, 2, 2, 2567, 18618, 3, 2, 2, 2, 2569, 18625, 3, 2, 2, 2, 2571, 18634, 3, 2, 2, 2, 2573, 18647, 3, 2, 2, 2, 2575, 18655, 3, 2, 2, 2, 2577, 18662, 3, 2, 2, 2, 2579, 18671, 3, 2, 2, 2, 2581, 18680, 3, 2, 2, 2, 2583, 18690, 3, 2, 2, 2, 2585, 18700, 3, 2, 2, 2, 2587, 18720, 3, 2, 2, 2, 2589, 18739, 3, 2, 2, 2, 2591, 18747, 3, 2, 2, 2, 2593, 18755, 3, 2, 2, 2, 2595, 18766, 3, 2, 2, 2, 2597, 18774, 3, 2, 2, 2, 2599, 18783, 3, 2, 2, 2, 2601, 18796, 3, 2, 2, 2, 2603, 18805, 3, 2, 2, 2, 2605, 18812, 3, 2, 2, 2, 2607, 18821, 3, 2, 2, 2, 2609, 18826, 3, 2, 2, 2, 2611, 18834, 3, 2, 2, 2, 2613, 18850, 3, 2, 2, 2, 2615, 18859, 3, 2, 2, 2, 2617, 18865, 3, 2, 2, 2, 2619, 18873, 3, 2, 2, 2, 2621, 18885, 3, 2, 2, 2, 2623, 18896, 3, 2, 2, 2, 2625, 18906, 3, 2, 2, 2, 2627, 18917, 3, 2, 2, 2, 2629, 18928, 3, 2, 2, 2, 2631, 18938, 3, 2, 2, 2, 2633, 18946, 3, 2, 2, 2, 2635, 18954, 3, 2, 2, 2, 2637, 18962, 3, 2, 2, 2, 2639, 18970, 3, 2, 2, 2, 2641, 18980, 3, 2, 2, 2, 2643, 18990, 3, 2, 2, 2, 2645, 19001, 3, 2, 2, 2, 2647, 19007, 3, 2, 2, 2, 2649, 19015, 3, 2, 2, 2, 2651, 19022, 3, 2, 2, 2, 2653, 19032, 3, 2, 2, 2, 2655, 19038, 3, 2, 2, 2, 2657, 19048, 3, 2, 2, 2, 2659, 19058, 3, 2, 2, 2, 2661, 19077, 3, 2, 2, 2, 2663, 19088, 3, 2, 2, 2, 2665, 19103, 3, 2, 2, 2, 2667, 19111, 3, 2, 2, 2, 2669, 19123, 3, 2, 2, 2, 2671, 19129, 3, 2, 2, 2, 2673, 19140, 3, 2, 2, 2, 2675, 19146, 3, 2, 2, 2, 2677, 19157, 3, 2, 2, 2, 2679, 19165, 3, 2, 2, 2, 2681, 19172, 3, 2, 2, 2, 2683, 19178, 3, 2, 2, 2, 2685, 19184, 3, 2, 2, 2, 2687, 19197, 3, 2, 2, 2, 2689, 19204, 3, 2, 2, 2, 2691, 19210, 3, 2, 2, 2, 2693, 19216, 3, 2, 2, 2, 2695, 19224, 3, 2, 2, 2, 2697, 19228, 3, 2, 2, 2, 2699, 19237, 3, 2, 2, 2, 2701, 19247, 3, 2, 2, 2, 2703, 19251, 3, 2, 2, 2, 2705, 19263, 3, 2, 2, 2, 2707, 19268, 3, 2, 2, 2, 2709, 19273, 3, 2, 2, 2, 2711, 19279, 3, 2, 2, 2, 2713, 19285, 3, 2, 2, 2, 2715, 19290, 3, 2, 2, 2, 2717, 19300, 3, 2, 2, 2, 2719, 19308, 3, 2, 2, 2, 2721, 19315, 3, 2, 2, 2, 2723, 19333, 3, 2, 2, 2, 2725, 19345, 3, 2, 2, 2, 2727, 19353, 3, 2, 2, 2, 2729, 19362, 3, 2, 2, 2, 2731, 19373, 3, 2, 2, 2, 2733, 19381, 3, 2, 2, 2, 2735, 19391, 3, 2, 2, 2, 2737, 19400, 3, 2, 2, 2, 2739, 19405, 3, 2, 2, 2, 2741, 19413, 3, 2, 2, 2, 2743, 19424, 3, 2, 2, 2, 2745, 19443, 3, 2, 2, 2, 2747, 19454, 3, 2, 2, 2, 2749, 19464, 3, 2, 2, 2, 2751, 19475, 3, 2, 2, 2, 2753, 19487, 3, 2, 2, 2, 2755, 19491, 3, 2, 2, 2, 2757, 19499, 3, 2, 2, 2, 2759, 19508, 3, 2, 2, 2, 2761, 19521, 3, 2, 2, 2, 2763, 19534, 3, 2, 2, 2, 2765, 19546, 3, 2, 2, 2, 2767, 19561, 3, 2, 2, 2, 2769, 19575, 3, 2, 2, 2, 2771, 19584, 3, 2, 2, 2, 2773, 19594, 3, 2, 2, 2, 2775, 19604, 3, 2, 2, 2, 2777, 19615, 3, 2, 2, 2, 2779, 19630, 3, 2, 2, 2, 2781, 19638, 3, 2, 2, 2, 2783, 19649, 3, 2, 2, 2, 2785, 19658, 3, 2, 2, 2, 2787, 19667, 3, 2, 2, 2, 2789, 19676, 3, 2, 2, 2, 2791, 19684, 3, 2, 2, 2, 2793, 19691, 3, 2, 2, 2, 2795, 19697, 3, 2, 2, 2, 2797, 19708, 3, 2, 2, 2, 2799, 19718, 3, 2, 2, 2, 2801, 19727, 3, 2, 2, 2, 2803, 19732, 3, 2, 2, 2, 2805, 19742, 3, 2, 2, 2, 2807, 19756, 3, 2, 2, 2, 2809, 19763, 3, 2, 2, 2, 2811, 19770, 3, 2, 2, 2, 2813, 19777, 3, 2, 2, 2, 2815, 19784, 3, 2, 2, 2, 2817, 19792, 3, 2, 2, 2, 2819, 19804, 3, 2, 2, 2, 2821, 19813, 3, 2, 2, 2, 2823, 19823, 3, 2, 2, 2, 2825, 19829, 3, 2, 2, 2, 2827, 19836, 3, 2, 2, 2, 2829, 19844, 3, 2, 2, 2, 2831, 19853, 3, 2, 2, 2, 2833, 19862, 3, 2, 2, 2, 2835, 19870, 3, 2, 2, 2, 2837, 19878, 3, 2, 2, 2, 2839, 19899, 3, 2, 2, 2, 2841, 19907, 3, 2, 2, 2, 2843, 19929, 3, 2, 2, 2, 2845, 19940, 3, 2, 2, 2, 2847, 19960, 3, 2, 2, 2, 2849, 19969, 3, 2, 2, 2, 2851, 19982, 3, 2, 2, 2, 2853, 19989, 3, 2, 2, 2, 2855, 19999, 3, 2, 2, 2, 2857, 20006, 3, 2, 2, 2, 2859, 20016, 3, 2, 2, 2, 2861, 20036, 3, 2, 2, 2, 2863, 20046, 3, 2, 2, 2, 2865, 20053, 3, 2, 2, 2, 2867, 20059, 3, 2, 2, 2, 2869, 20067, 3, 2, 2, 2, 2871, 20074, 3, 2, 2, 2, 2873, 20091, 3, 2, 2, 2, 2875, 20099, 3, 2, 2, 2, 2877, 20105, 3, 2, 2, 2, 2879, 20110, 3, 2, 2, 2, 2881, 20118, 3, 2, 2, 2, 2883, 20124, 3, 2, 2, 2, 2885, 20133, 3, 2, 2, 2, 2887, 20141, 3, 2, 2, 2, 2889, 20148, 3, 2, 2, 2, 2891, 20164, 3, 2, 2, 2, 2893, 20184, 3, 2, 2, 2, 2895, 20190, 3, 2, 2, 2, 2897, 20202, 3, 2, 2, 2, 2899, 20215, 3, 2, 2, 2, 2901, 20226, 3, 2, 2, 2, 2903, 20233, 3, 2, 2, 2, 2905, 20237, 3, 2, 2, 2, 2907, 20242, 3, 2, 2, 2, 2909, 20247, 3, 2, 2, 2, 2911, 20253, 3, 2, 2, 2, 2913, 20258, 3, 2, 2, 2, 2915, 20264, 3, 2, 2, 2, 2917, 20272, 3, 2, 2, 2, 2919, 20277, 3, 2, 2, 2, 2921, 20284, 3, 2, 2, 2, 2923, 20302, 3, 2, 2, 2, 2925, 20312, 3, 2, 2, 2, 2927, 20317, 3, 2, 2, 2, 2929, 20321, 3, 2, 2, 2, 2931, 20332, 3, 2, 2, 2, 2933, 20338, 3, 2, 2, 2, 2935, 20353, 3, 2, 2, 2, 2937, 20358, 3, 2, 2, 2, 2939, 20368, 3, 2, 2, 2, 2941, 20380, 3, 2, 2, 2, 2943, 20387, 3, 2, 2, 2, 2945, 20401, 3, 2, 2, 2, 2947, 20405, 3, 2, 2, 2, 2949, 20411, 3, 2, 2, 2, 2951, 20417, 3, 2, 2, 2, 2953, 20424, 3, 2, 2, 2, 2955, 20435, 3, 2, 2, 2, 2957, 20448, 3, 2, 2, 2, 2959, 20456, 3, 2, 2, 2, 2961, 20463, 3, 2, 2, 2, 2963, 20470, 3, 2, 2, 2, 2965, 20477, 3, 2, 2, 2, 2967, 20492, 3, 2, 2, 2, 2969, 20503, 3, 2, 2, 2, 2971, 20512, 3, 2, 2, 2, 2973, 20517, 3, 2, 2, 2, 2975, 20527, 3, 2, 2, 2, 2977, 20536, 3, 2, 2, 2, 2979, 20544, 3, 2, 2, 2, 2981, 20556, 3, 2, 2, 2, 2983, 20563, 3, 2, 2, 2, 2985, 20568, 3, 2, 2, 2, 2987, 20584, 3, 2, 2, 2, 2989, 20593, 3, 2, 2, 2, 2991, 20607, 3, 2, 2, 2, 2993, 20617, 3, 2, 2, 2, 2995, 20626, 3, 2, 2, 2, 2997, 20637, 3, 2, 2, 2, 2999, 20641, 3, 2, 2, 2, 3001, 20654, 3, 2, 2, 2, 3003, 20672, 3, 2, 2, 2, 3005, 20679, 3, 2, 2, 2, 3007, 20691, 3, 2, 2, 2, 3009, 20712, 3, 2, 2, 2, 3011, 20721, 3, 2, 2, 2, 3013, 20744, 3, 2, 2, 2, 3015, 20752, 3, 2, 2, 2, 3017, 20770, 3, 2, 2, 2, 3019, 20786, 3, 2, 2, 2, 3021, 20800, 3, 2, 2, 2, 3023, 20804, 3, 2, 2, 2, 3025, 20809, 3, 2, 2, 2, 3027, 20818, 3, 2, 2, 2, 3029, 20830, 3, 2, 2, 2, 3031, 20837, 3, 2, 2, 2, 3033, 20849, 3, 2, 2, 2, 3035, 20856, 3, 2, 2, 2, 3037, 20862, 3, 2, 2, 2, 3039, 20870, 3, 2, 2, 2, 3041, 20880, 3, 2, 2, 2, 3043, 20885, 3, 2, 2, 2, 3045, 20892, 3, 2, 2, 2, 3047, 20901, 3, 2, 2, 2, 3049, 20910, 3, 2, 2, 2, 3051, 20914, 3, 2, 2, 2, 3053, 20931, 3, 2, 2, 2, 3055, 20947, 3, 2, 2, 2, 3057, 20952, 3, 2, 2, 2, 3059, 20961, 3, 2, 2, 2, 3061, 20976, 3, 2, 2, 2, 3063, 20983, 3, 2, 2, 2, 3065, 20990, 3, 2, 2, 2, 3067, 21001, 3, 2, 2, 2, 3069, 21006, 3, 2, 2, 2, 3071, 21010, 3, 2, 2, 2, 3073, 21015, 3, 2, 2, 2, 3075, 21034, 3, 2, 2, 2, 3077, 21039, 3, 2, 2, 2, 3079, 21061, 3, 2, 2, 2, 3081, 21083, 3, 2, 2, 2, 3083, 21093, 3, 2, 2, 2, 3085, 21102, 3, 2, 2, 2, 3087, 21111, 3, 2, 2, 2, 3089, 21116, 3, 2, 2, 2, 3091, 21121, 3, 2, 2, 2, 3093, 21129, 3, 2, 2, 2, 3095, 21151, 3, 2, 2, 2, 3097, 21176, 3, 2, 2, 2, 3099, 21183, 3, 2, 2, 2, 3101, 21189, 3, 2, 2, 2, 3103, 21203, 3, 2, 2, 2, 3105, 21210, 3, 2, 2, 2, 3107, 21216, 3, 2, 2, 2, 3109, 21228, 3, 2, 2, 2, 3111, 21236, 3, 2, 2, 2, 3113, 21245, 3, 2, 2, 2, 3115, 21252, 3, 2, 2, 2, 3117, 21256, 3, 2, 2, 2, 3119, 21266, 3, 2, 2, 2, 3121, 21290, 3, 2, 2, 2, 3123, 21295, 3, 2, 2, 2, 3125, 21301, 3, 2, 2, 2, 3127, 21312, 3, 2, 2, 2, 3129, 21326, 3, 2, 2, 2, 3131, 21349, 3, 2, 2, 2, 3133, 21358, 3, 2, 2, 2, 3135, 21366, 3, 2, 2, 2, 3137, 21371, 3, 2, 2, 2, 3139, 21391, 3, 2, 2, 2, 3141, 21397, 3, 2, 2, 2, 3143, 21405, 3, 2, 2, 2, 3145, 21418, 3, 2, 2, 2, 3147, 21436, 3, 2, 2, 2, 3149, 21447, 3, 2, 2, 2, 3151, 21457, 3, 2, 2, 2, 3153, 21463, 3, 2, 2, 2, 3155, 21470, 3, 2, 2, 2, 3157, 21481, 3, 2, 2, 2, 3159, 21501, 3, 2, 2, 2, 3161, 21516, 3, 2, 2, 2, 3163, 21529, 3, 2, 2, 2, 3165, 21543, 3, 2, 2, 2, 3167, 21554, 3, 2, 2, 2, 3169, 21568, 3, 2, 2, 2, 3171, 21588, 3, 2, 2, 2, 3173, 21607, 3, 2, 2, 2, 3175, 21627, 3, 2, 2, 2, 3177, 21644, 3, 2, 2, 2, 3179, 21664, 3, 2, 2, 2, 3181, 21679, 3, 2, 2, 2, 3183, 21690, 3, 2, 2, 2, 3185, 21702, 3, 2, 2, 2, 3187, 21707, 3, 2, 2, 2, 3189, 21715, 3, 2, 2, 2, 3191, 21721, 3, 2, 2, 2, 3193, 21729, 3, 2, 2, 2, 3195, 21736, 3, 2, 2, 2, 3197, 21743, 3, 2, 2, 2, 3199, 21750, 3, 2, 2, 2, 3201, 21765, 3, 2, 2, 2, 3203, 21778, 3, 2, 2, 2, 3205, 21784, 3, 2, 2, 2, 3207, 21794, 3, 2, 2, 2, 3209, 21806, 3, 2, 2, 2, 3211, 21823, 3, 2, 2, 2, 3213, 21837, 3, 2, 2, 2, 3215, 21850, 3, 2, 2, 2, 3217, 21861, 3, 2, 2, 2, 3219, 21878, 3, 2, 2, 2, 3221, 21888, 3, 2, 2, 2, 3223, 21895, 3, 2, 2, 2, 3225, 21909, 3, 2, 2, 2, 3227, 21917, 3, 2, 2, 2, 3229, 21925, 3, 2, 2, 2, 3231, 21933, 3, 2, 2, 2, 3233, 21941, 3, 2, 2, 2, 3235, 21949, 3, 2, 2, 2, 3237, 21960, 3, 2, 2, 2, 3239, 21968, 3, 2, 2, 2, 3241, 21976, 3, 2, 2, 2, 3243, 21989, 3, 2, 2, 2, 3245, 21997, 3, 2, 2, 2, 3247, 22014, 3, 2, 2, 2, 3249, 22025, 3, 2, 2, 2, 3251, 22032, 3, 2, 2, 2, 3253, 22044, 3, 2, 2, 2, 3255, 22049, 3, 2, 2, 2, 3257, 22057, 3, 2, 2, 2, 3259, 22064, 3, 2, 2, 2, 3261, 22074, 3, 2, 2, 2, 3263, 22081, 3, 2, 2, 2, 3265, 22091, 3, 2, 2, 2, 3267, 22104, 3, 2, 2, 2, 3269, 22124, 3, 2, 2, 2, 3271, 22144, 3, 2, 2, 2, 3273, 22156, 3, 2, 2, 2, 3275, 22164, 3, 2, 2, 2, 3277, 22171, 3, 2, 2, 2, 3279, 22184, 3, 2, 2, 2, 3281, 22190, 3, 2, 2, 2, 3283, 22204, 3, 2, 2, 2, 3285, 22222, 3, 2, 2, 2, 3287, 22240, 3, 2, 2, 2, 3289, 22256, 3, 2, 2, 2, 3291, 22273, 3, 2, 2, 2, 3293, 22290, 3, 2, 2, 2, 3295, 22310, 3, 2, 2, 2, 3297, 22331, 3, 2, 2, 2, 3299, 22352, 3, 2, 2, 2, 3301, 22372, 3, 2, 2, 2, 3303, 22385, 3, 2, 2, 2, 3305, 22401, 3, 2, 2, 2, 3307, 22416, 3, 2, 2, 2, 3309, 22432, 3, 2, 2, 2, 3311, 22446, 3, 2, 2, 2, 3313, 22460, 3, 2, 2, 2, 3315, 22475, 3, 2, 2, 2, 3317, 22494, 3, 2, 2, 2, 3319, 22513, 3, 2, 2, 2, 3321, 22528, 3, 2, 2, 2, 3323, 22542, 3, 2, 2, 2, 3325, 22551, 3, 2, 2, 2, 3327, 22559, 3, 2, 2, 2, 3329, 22565, 3, 2, 2, 2, 3331, 22584, 3, 2, 2, 2, 3333, 22596, 3, 2, 2, 2, 3335, 22610, 3, 2, 2, 2, 3337, 22620, 3, 2, 2, 2, 3339, 22627, 3, 2, 2, 2, 3341, 22642, 3, 2, 2, 2, 3343, 22657, 3, 2, 2, 2, 3345, 22673, 3, 2, 2, 2, 3347, 22684, 3, 2, 2, 2, 3349, 22699, 3, 2, 2, 2, 3351, 22713, 3, 2, 2, 2, 3353, 22725, 3, 2, 2, 2, 3355, 22750, 3, 2, 2, 2, 3357, 22770, 3, 2, 2, 2, 3359, 22781, 3, 2, 2, 2, 3361, 22793, 3, 2, 2, 2, 3363, 22804, 3, 2, 2, 2, 3365, 22816, 3, 2, 2, 2, 3367, 22837, 3, 2, 2, 2, 3369, 22849, 3, 2, 2, 2, 3371, 22864, 3, 2, 2, 2, 3373, 22880, 3, 2, 2, 2, 3375, 22894, 3, 2, 2, 2, 3377, 22912, 3, 2, 2, 2, 3379, 22923, 3, 2, 2, 2, 3381, 22940, 3, 2, 2, 2, 3383, 22958, 3, 2, 2, 2, 3385, 22972, 3, 2, 2, 2, 3387, 22987, 3, 2, 2, 2, 3389, 23003, 3, 2, 2, 2, 3391, 23014, 3, 2, 2, 2, 3393, 23026, 3, 2, 2, 2, 3395, 23042, 3, 2, 2, 2, 3397, 23067, 3, 2, 2, 2, 3399, 23075, 3, 2, 2, 2, 3401, 23090, 3, 2, 2, 2, 3403, 23106, 3, 2, 2, 2, 3405, 23118, 3, 2, 2, 2, 3407, 23130, 3, 2, 2, 2, 3409, 23141, 3, 2, 2, 2, 3411, 23152, 3, 2, 2, 2, 3413, 23177, 3, 2, 2, 2, 3415, 23207, 3, 2, 2, 2, 3417, 23232, 3, 2, 2, 2, 3419, 23260, 3, 2, 2, 2, 3421, 23282, 3, 2, 2, 2, 3423, 23294, 3, 2, 2, 2, 3425, 23313, 3, 2, 2, 2, 3427, 23332, 3, 2, 2, 2, 3429, 23349, 3, 2, 2, 2, 3431, 23369, 3, 2, 2, 2, 3433, 23387, 3, 2, 2, 2, 3435, 23399, 3, 2, 2, 2, 3437, 23410, 3, 2, 2, 2, 3439, 23425, 3, 2, 2, 2, 3441, 23444, 3, 2, 2, 2, 3443, 23455, 3, 2, 2, 2, 3445, 23472, 3, 2, 2, 2, 3447, 23489, 3, 2, 2, 2, 3449, 23500, 3, 2, 2, 2, 3451, 23511, 3, 2, 2, 2, 3453, 23527, 3, 2, 2, 2, 3455, 23542, 3, 2, 2, 2, 3457, 23558, 3, 2, 2, 2, 3459, 23574, 3, 2, 2, 2, 3461, 23589, 3, 2, 2, 2, 3463, 23602, 3, 2, 2, 2, 3465, 23618, 3, 2, 2, 2, 3467, 23632, 3, 2, 2, 2, 3469, 23643, 3, 2, 2, 2, 3471, 23658, 3, 2, 2, 2, 3473, 23671, 3, 2, 2, 2, 3475, 23682, 3, 2, 2, 2, 3477, 23698, 3, 2, 2, 2, 3479, 23710, 3, 2, 2, 2, 3481, 23721, 3, 2, 2, 2, 3483, 23733, 3, 2, 2, 2, 3485, 23751, 3, 2, 2, 2, 3487, 23762, 3, 2, 2, 2, 3489, 23778, 3, 2, 2, 2, 3491, 23793, 3, 2, 2, 2, 3493, 23804, 3, 2, 2, 2, 3495, 23816, 3, 2, 2, 2, 3497, 23829, 3, 2, 2, 2, 3499, 23847, 3, 2, 2, 2, 3501, 23864, 3, 2, 2, 2, 3503, 23878, 3, 2, 2, 2, 3505, 23892, 3, 2, 2, 2, 3507, 23905, 3, 2, 2, 2, 3509, 23919, 3, 2, 2, 2, 3511, 23934, 3, 2, 2, 2, 3513, 23946, 3, 2, 2, 2, 3515, 23957, 3, 2, 2, 2, 3517, 23980, 3, 2, 2, 2, 3519, 23995, 3, 2, 2, 2, 3521, 24010, 3, 2, 2, 2, 3523, 24024, 3, 2, 2, 2, 3525, 24041, 3, 2, 2, 2, 3527, 24056, 3, 2, 2, 2, 3529, 24075, 3, 2, 2, 2, 3531, 24097, 3, 2, 2, 2, 3533, 24117, 3, 2, 2, 2, 3535, 24134, 3, 2, 2, 2, 3537, 24153, 3, 2, 2, 2, 3539, 24173, 3, 2, 2, 2, 3541, 24193, 3, 2, 2, 2, 3543, 24214, 3, 2, 2, 2, 3545, 24231, 3, 2, 2, 2, 3547, 24246, 3, 2, 2, 2, 3549, 24262, 3, 2, 2, 2, 3551, 24276, 3, 2, 2, 2, 3553, 24290, 3, 2, 2, 2, 3555, 24304, 3, 2, 2, 2, 3557, 24319, 3, 2, 2, 2, 3559, 24334, 3, 2, 2, 2, 3561, 24341, 3, 2, 2, 2, 3563, 24354, 3, 2, 2, 2, 3565, 24365, 3, 2, 2, 2, 3567, 24378, 3, 2, 2, 2, 3569, 24393, 3, 2, 2, 2, 3571, 24409, 3, 2, 2, 2, 3573, 24421, 3, 2, 2, 2, 3575, 24436, 3, 2, 2, 2, 3577, 24447, 3, 2, 2, 2, 3579, 24467, 3, 2, 2, 2, 3581, 24487, 3, 2, 2, 2, 3583, 24500, 3, 2, 2, 2, 3585, 24523, 3, 2, 2, 2, 3587, 24544, 3, 2, 2, 2, 3589, 24569, 3, 2, 2, 2, 3591, 24591, 3, 2, 2, 2, 3593, 24615, 3, 2, 2, 2, 3595, 24638, 3, 2, 2, 2, 3597, 24659, 3, 2, 2, 2, 3599, 24681, 3, 2, 2, 2, 3601, 24702, 3, 2, 2, 2, 3603, 24716, 3, 2, 2, 2, 3605, 24730, 3, 2, 2, 2, 3607, 24747, 3, 2, 2, 2, 3609, 24763, 3, 2, 2, 2, 3611, 24778, 3, 2, 2, 2, 3613, 24796, 3, 2, 2, 2, 3615, 24810, 3, 2, 2, 2, 3617, 24829, 3, 2, 2, 2, 3619, 24845, 3, 2, 2, 2, 3621, 24859, 3, 2, 2, 2, 3623, 24873, 3, 2, 2, 2, 3625, 24886, 3, 2, 2, 2, 3627, 24899, 3, 2, 2, 2, 3629, 24918, 3, 2, 2, 2, 3631, 24928, 3, 2, 2, 2, 3633, 24941, 3, 2, 2, 2, 3635, 24954, 3, 2, 2, 2, 3637, 24967, 3, 2, 2, 2, 3639, 24982, 3, 2, 2, 2, 3641, 24993, 3, 2, 2, 2, 3643, 25003, 3, 2, 2, 2, 3645, 25019, 3, 2, 2, 2, 3647, 25034, 3, 2, 2, 2, 3649, 25048, 3, 2, 2, 2, 3651, 25062, 3, 2, 2, 2, 3653, 25076, 3, 2, 2, 2, 3655, 25088, 3, 2, 2, 2, 3657, 25101, 3, 2, 2, 2, 3659, 25114, 3, 2, 2, 2, 3661, 25126, 3, 2, 2, 2, 3663, 25140, 3, 2, 2, 2, 3665, 25154, 3, 2, 2, 2, 3667, 25165, 3, 2, 2, 2, 3669, 25179, 3, 2, 2, 2, 3671, 25197, 3, 2, 2, 2, 3673, 25209, 3, 2, 2, 2, 3675, 25222, 3, 2, 2, 2, 3677, 25238, 3, 2, 2, 2, 3679, 25254, 3, 2, 2, 2, 3681, 25266, 3, 2, 2, 2, 3683, 25283, 3, 2, 2, 2, 3685, 25296, 3, 2, 2, 2, 3687, 25309, 3, 2, 2, 2, 3689, 25322, 3, 2, 2, 2, 3691, 25336, 3, 2, 2, 2, 3693, 25347, 3, 2, 2, 2, 3695, 25364, 3, 2, 2, 2, 3697, 25380, 3, 2, 2, 2, 3699, 25393, 3, 2, 2, 2, 3701, 25408, 3, 2, 2, 2, 3703, 25424, 3, 2, 2, 2, 3705, 25440, 3, 2, 2, 2, 3707, 25452, 3, 2, 2, 2, 3709, 25466, 3, 2, 2, 2, 3711, 25482, 3, 2, 2, 2, 3713, 25498, 3, 2, 2, 2, 3715, 25515, 3, 2, 2, 2, 3717, 25529, 3, 2, 2, 2, 3719, 25543, 3, 2, 2, 2, 3721, 25557, 3, 2, 2, 2, 3723, 25573, 3, 2, 2, 2, 3725, 25587, 3, 2, 2, 2, 3727, 25601, 3, 2, 2, 2, 3729, 25615, 3, 2, 2, 2, 3731, 25629, 3, 2, 2, 2, 3733, 25643, 3, 2, 2, 2, 3735, 25657, 3, 2, 2, 2, 3737, 25672, 3, 2, 2, 2, 3739, 25686, 3, 2, 2, 2, 3741, 25701, 3, 2, 2, 2, 3743, 25716, 3, 2, 2, 2, 3745, 25730, 3, 2, 2, 2, 3747, 25744, 3, 2, 2, 2, 3749, 25758, 3, 2, 2, 2, 3751, 25772, 3, 2, 2, 2, 3753, 25786, 3, 2, 2, 2, 3755, 25800, 3, 2, 2, 2, 3757, 25814, 3, 2, 2, 2, 3759, 25827, 3, 2, 2, 2, 3761, 25841, 3, 2, 2, 2, 3763, 25855, 3, 2, 2, 2, 3765, 25873, 3, 2, 2, 2, 3767, 25887, 3, 2, 2, 2, 3769, 25903, 3, 2, 2, 2, 3771, 25918, 3, 2, 2, 2, 3773, 25930, 3, 2, 2, 2, 3775, 25947, 3, 2, 2, 2, 3777, 25961, 3, 2, 2, 2, 3779, 25977, 3, 2, 2, 2, 3781, 25991, 3, 2, 2, 2, 3783, 26003, 3, 2, 2, 2, 3785, 26016, 3, 2, 2, 2, 3787, 26029, 3, 2, 2, 2, 3789, 26047, 3, 2, 2, 2, 3791, 26064, 3, 2, 2, 2, 3793, 26079, 3, 2, 2, 2, 3795, 26095, 3, 2, 2, 2, 3797, 26109, 3, 2, 2, 2, 3799, 26125, 3, 2, 2, 2, 3801, 26141, 3, 2, 2, 2, 3803, 26156, 3, 2, 2, 2, 3805, 26170, 3, 2, 2, 2, 3807, 26188, 3, 2, 2, 2, 3809, 26200, 3, 2, 2, 2, 3811, 26216, 3, 2, 2, 2, 3813, 26232, 3, 2, 2, 2, 3815, 26249, 3, 2, 2, 2, 3817, 26268, 3, 2, 2, 2, 3819, 26282, 3, 2, 2, 2, 3821, 26293, 3, 2, 2, 2, 3823, 26300, 3, 2, 2, 2, 3825, 26312, 3, 2, 2, 2, 3827, 26318, 3, 2, 2, 2, 3829, 26324, 3, 2, 2, 2, 3831, 26328, 3, 2, 2, 2, 3833, 26333, 3, 2, 2, 2, 3835, 26337, 3, 2, 2, 2, 3837, 26357, 3, 2, 2, 2, 3839, 26366, 3, 2, 2, 2, 3841, 26375, 3, 2, 2, 2, 3843, 26385, 3, 2, 2, 2, 3845, 26396, 3, 2, 2, 2, 3847, 26401, 3, 2, 2, 2, 3849, 26406, 3, 2, 2, 2, 3851, 26411, 3, 2, 2, 2, 3853, 26416, 3, 2, 2, 2, 3855, 26420, 3, 2, 2, 2, 3857, 26427, 3, 2, 2, 2, 3859, 26435, 3, 2, 2, 2, 3861, 26440, 3, 2, 2, 2, 3863, 26445, 3, 2, 2, 2, 3865, 26453, 3, 2, 2, 2, 3867, 26481, 3, 2, 2, 2, 3869, 26491, 3, 2, 2, 2, 3871, 26518, 3, 2, 2, 2, 3873, 26542, 3, 2, 2, 2, 3875, 26548, 3, 2, 2, 2, 3877, 26553, 3, 2, 2, 2, 3879, 26562, 3, 2, 2, 2, 3881, 26576, 3, 2, 2, 2, 3883, 26590, 3, 2, 2, 2, 3885, 26606, 3, 2, 2, 2, 3887, 26622, 3, 2, 2, 2, 3889, 26638, 3, 2, 2, 2, 3891, 26648, 3, 2, 2, 2, 3893, 26655, 3, 2, 2, 2, 3895, 26663, 3, 2, 2, 2, 3897, 26672, 3, 2, 2, 2, 3899, 26689, 3, 2, 2, 2, 3901, 26705, 3, 2, 2, 2, 3903, 26713, 3, 2, 2, 2, 3905, 26721, 3, 2, 2, 2, 3907, 26735, 3, 2, 2, 2, 3909, 26742, 3, 2, 2, 2, 3911, 26756, 3, 2, 2, 2, 3913, 26765, 3, 2, 2, 2, 3915, 26774, 3, 2, 2, 2, 3917, 26784, 3, 2, 2, 2, 3919, 26793, 3, 2, 2, 2, 3921, 26808, 3, 2, 2, 2, 3923, 26821, 3, 2, 2, 2, 3925, 26837, 3, 2, 2, 2, 3927, 26845, 3, 2, 2, 2, 3929, 26856, 3, 2, 2, 2, 3931, 26859, 3, 2, 2, 2, 3933, 26873, 3, 2, 2, 2, 3935, 26879, 3, 2, 2, 2, 3937, 26887, 3, 2, 2, 2, 3939, 26896, 3, 2, 2, 2, 3941, 26905, 3, 2, 2, 2, 3943, 26917, 3, 2, 2, 2, 3945, 26940, 3, 2, 2, 2, 3947, 26953, 3, 2, 2, 2, 3949, 26964, 3, 2, 2, 2, 3951, 26974, 3, 2, 2, 2, 3953, 26986, 3, 2, 2, 2, 3955, 26992, 3, 2, 2, 2, 3957, 27001, 3, 2, 2, 2, 3959, 27009, 3, 2, 2, 2, 3961, 27014, 3, 2, 2, 2, 3963, 27023, 3, 2, 2, 2, 3965, 27029, 3, 2, 2, 2, 3967, 27037, 3, 2, 2, 2, 3969, 27043, 3, 2, 2, 2, 3971, 27050, 3, 2, 2, 2, 3973, 27053, 3, 2, 2, 2, 3975, 27059, 3, 2, 2, 2, 3977, 27064, 3, 2, 2, 2, 3979, 27074, 3, 2, 2, 2, 3981, 27078, 3, 2, 2, 2, 3983, 27082, 3, 2, 2, 2, 3985, 27087, 3, 2, 2, 2, 3987, 27091, 3, 2, 2, 2, 3989, 27102, 3, 2, 2, 2, 3991, 27112, 3, 2, 2, 2, 3993, 27120, 3, 2, 2, 2, 3995, 27134, 3, 2, 2, 2, 3997, 27140, 3, 2, 2, 2, 3999, 27145, 3, 2, 2, 2, 4001, 27152, 3, 2, 2, 2, 4003, 27160, 3, 2, 2, 2, 4005, 27166, 3, 2, 2, 2, 4007, 27173, 3, 2, 2, 2, 4009, 27180, 3, 2, 2, 2, 4011, 27190, 3, 2, 2, 2, 4013, 27197, 3, 2, 2, 2, 4015, 27204, 3, 2, 2, 2, 4017, 27214, 3, 2, 2, 2, 4019, 27242, 3, 2, 2, 2, 4021, 27272, 3, 2, 2, 2, 4023, 27290, 3, 2, 2, 2, 4025, 27297, 3, 2, 2, 2, 4027, 27306, 3, 2, 2, 2, 4029, 27314, 3, 2, 2, 2, 4031, 27321, 3, 2, 2, 2, 4033, 27333, 3, 2, 2, 2, 4035, 27343, 3, 2, 2, 2, 4037, 27357, 3, 2, 2, 2, 4039, 27370, 3, 2, 2, 2, 4041, 27382, 3, 2, 2, 2, 4043, 27388, 3, 2, 2, 2, 4045, 27397, 3, 2, 2, 2, 4047, 27404, 3, 2, 2, 2, 4049, 27414, 3, 2, 2, 2, 4051, 27422, 3, 2, 2, 2, 4053, 27429, 3, 2, 2, 2, 4055, 27439, 3, 2, 2, 2, 4057, 27451, 3, 2, 2, 2, 4059, 27465, 3, 2, 2, 2, 4061, 27473, 3, 2, 2, 2, 4063, 27479, 3, 2, 2, 2, 4065, 27486, 3, 2, 2, 2, 4067, 27493, 3, 2, 2, 2, 4069, 27500, 3, 2, 2, 2, 4071, 27506, 3, 2, 2, 2, 4073, 27515, 3, 2, 2, 2, 4075, 27526, 3, 2, 2, 2, 4077, 27535, 3, 2, 2, 2, 4079, 27556, 3, 2, 2, 2, 4081, 27582, 3, 2, 2, 2, 4083, 27591, 3, 2, 2, 2, 4085, 27613, 3, 2, 2, 2, 4087, 27635, 3, 2, 2, 2, 4089, 27655, 3, 2, 2, 2, 4091, 27665, 3, 2, 2, 2, 4093, 27672, 3, 2, 2, 2, 4095, 27690, 3, 2, 2, 2, 4097, 27711, 3, 2, 2, 2, 4099, 27721, 3, 2, 2, 2, 4101, 27734, 3, 2, 2, 2, 4103, 27742, 3, 2, 2, 2, 4105, 27752, 3, 2, 2, 2, 4107, 27768, 3, 2, 2, 2, 4109, 27774, 3, 2, 2, 2, 4111, 27791, 3, 2, 2, 2, 4113, 27796, 3, 2, 2, 2, 4115, 27805, 3, 2, 2, 2, 4117, 27825, 3, 2, 2, 2, 4119, 27843, 3, 2, 2, 2, 4121, 27847, 3, 2, 2, 2, 4123, 27870, 3, 2, 2, 2, 4125, 27889, 3, 2, 2, 2, 4127, 27905, 3, 2, 2, 2, 4129, 27911, 3, 2, 2, 2, 4131, 27919, 3, 2, 2, 2, 4133, 27927, 3, 2, 2, 2, 4135, 27933, 3, 2, 2, 2, 4137, 27938, 3, 2, 2, 2, 4139, 27941, 3, 2, 2, 2, 4141, 27944, 3, 2, 2, 2, 4143, 27953, 3, 2, 2, 2, 4145, 27964, 3, 2, 2, 2, 4147, 27979, 3, 2, 2, 2, 4149, 27986, 3, 2, 2, 2, 4151, 27992, 3, 2, 2, 2, 4153, 28001, 3, 2, 2, 2, 4155, 28009, 3, 2, 2, 2, 4157, 28018, 3, 2, 2, 2, 4159, 28026, 3, 2, 2, 2, 4161, 28034, 3, 2, 2, 2, 4163, 28041, 3, 2, 2, 2, 4165, 28050, 3, 2, 2, 2, 4167, 28058, 3, 2, 2, 2, 4169, 28076, 3, 2, 2, 2, 4171, 28088, 3, 2, 2, 2, 4173, 28110, 3, 2, 2, 2, 4175, 28132, 3, 2, 2, 2, 4177, 28149, 3, 2, 2, 2, 4179, 28158, 3, 2, 2, 2, 4181, 28165, 3, 2, 2, 2, 4183, 28176, 3, 2, 2, 2, 4185, 28192, 3, 2, 2, 2, 4187, 28209, 3, 2, 2, 2, 4189, 28228, 3, 2, 2, 2, 4191, 28246, 3, 2, 2, 2, 4193, 28265, 3, 2, 2, 2, 4195, 28274, 3, 2, 2, 2, 4197, 28287, 3, 2, 2, 2, 4199, 28295, 3, 2, 2, 2, 4201, 28300, 3, 2, 2, 2, 4203, 28310, 3, 2, 2, 2, 4205, 28318, 3, 2, 2, 2, 4207, 28329, 3, 2, 2, 2, 4209, 28337, 3, 2, 2, 2, 4211, 28344, 3, 2, 2, 2, 4213, 28350, 3, 2, 2, 2, 4215, 28355, 3, 2, 2, 2, 4217, 28362, 3, 2, 2, 2, 4219, 28370, 3, 2, 2, 2, 4221, 28376, 3, 2, 2, 2, 4223, 28381, 3, 2, 2, 2, 4225, 28392, 3, 2, 2, 2, 4227, 28401, 3, 2, 2, 2, 4229, 28406, 3, 2, 2, 2, 4231, 28412, 3, 2, 2, 2, 4233, 28418, 3, 2, 2, 2, 4235, 28429, 3, 2, 2, 2, 4237, 28442, 3, 2, 2, 2, 4239, 28449, 3, 2, 2, 2, 4241, 28457, 3, 2, 2, 2, 4243, 28468, 3, 2, 2, 2, 4245, 28473, 3, 2, 2, 2, 4247, 28478, 3, 2, 2, 2, 4249, 28486, 3, 2, 2, 2, 4251, 28494, 3, 2, 2, 2, 4253, 28500, 3, 2, 2, 2, 4255, 28520, 3, 2, 2, 2, 4257, 28524, 3, 2, 2, 2, 4259, 28536, 3, 2, 2, 2, 4261, 28540, 3, 2, 2, 2, 4263, 28551, 3, 2, 2, 2, 4265, 28558, 3, 2, 2, 2, 4267, 28572, 3, 2, 2, 2, 4269, 28580, 3, 2, 2, 2, 4271, 28589, 3, 2, 2, 2, 4273, 28602, 3, 2, 2, 2, 4275, 28613, 3, 2, 2, 2, 4277, 28623, 3, 2, 2, 2, 4279, 28631, 3, 2, 2, 2, 4281, 28648, 3, 2, 2, 2, 4283, 28659, 3, 2, 2, 2, 4285, 28670, 3, 2, 2, 2, 4287, 28680, 3, 2, 2, 2, 4289, 28690, 3, 2, 2, 2, 4291, 28699, 3, 2, 2, 2, 4293, 28726, 3, 2, 2, 2, 4295, 28743, 3, 2, 2, 2, 4297, 28764, 3, 2, 2, 2, 4299, 28774, 3, 2, 2, 2, 4301, 28785, 3, 2, 2, 2, 4303, 28799, 3, 2, 2, 2, 4305, 28808, 3, 2, 2, 2, 4307, 28817, 3, 2, 2, 2, 4309, 28823, 3, 2, 2, 2, 4311, 28835, 3, 2, 2, 2, 4313, 28844, 3, 2, 2, 2, 4315, 28852, 3, 2, 2, 2, 4317, 28862, 3, 2, 2, 2, 4319, 28875, 3, 2, 2, 2, 4321, 28884, 3, 2, 2, 2, 4323, 28901, 3, 2, 2, 2, 4325, 28914, 3, 2, 2, 2, 4327, 28922, 3, 2, 2, 2, 4329, 28926, 3, 2, 2, 2, 4331, 28937, 3, 2, 2, 2, 4333, 28952, 3, 2, 2, 2, 4335, 28955, 3, 2, 2, 2, 4337, 28966, 3, 2, 2, 2, 4339, 28972, 3, 2, 2, 2, 4341, 28977, 3, 2, 2, 2, 4343, 28981, 3, 2, 2, 2, 4345, 29006, 3, 2, 2, 2, 4347, 29014, 3, 2, 2, 2, 4349, 29019, 3, 2, 2, 2, 4351, 29030, 3, 2, 2, 2, 4353, 29048, 3, 2, 2, 2, 4355, 29064, 3, 2, 2, 2, 4357, 29083, 3, 2, 2, 2, 4359, 29106, 3, 2, 2, 2, 4361, 29121, 3, 2, 2, 2, 4363, 29131, 3, 2, 2, 2, 4365, 29142, 3, 2, 2, 2, 4367, 29150, 3, 2, 2, 2, 4369, 29163, 3, 2, 2, 2, 4371, 29179, 3, 2, 2, 2, 4373, 29195, 3, 2, 2, 2, 4375, 29200, 3, 2, 2, 2, 4377, 29204, 3, 2, 2, 2, 4379, 29209, 3, 2, 2, 2, 4381, 29216, 3, 2, 2, 2, 4383, 29223, 3, 2, 2, 2, 4385, 29227, 3, 2, 2, 2, 4387, 29232, 3, 2, 2, 2, 4389, 29236, 3, 2, 2, 2, 4391, 29243, 3, 2, 2, 2, 4393, 29247, 3, 2, 2, 2, 4395, 29253, 3, 2, 2, 2, 4397, 29257, 3, 2, 2, 2, 4399, 29273, 3, 2, 2, 2, 4401, 29279, 3, 2, 2, 2, 4403, 29285, 3, 2, 2, 2, 4405, 29296, 3, 2, 2, 2, 4407, 29303, 3, 2, 2, 2, 4409, 29311, 3, 2, 2, 2, 4411, 29316, 3, 2, 2, 2, 4413, 29320, 3, 2, 2, 2, 4415, 29327, 3, 2, 2, 2, 4417, 29332, 3, 2, 2, 2, 4419, 29341, 3, 2, 2, 2, 4421, 29347, 3, 2, 2, 2, 4423, 29356, 3, 2, 2, 2, 4425, 29364, 3, 2, 2, 2, 4427, 29377, 3, 2, 2, 2, 4429, 29390, 3, 2, 2, 2, 4431, 29403, 3, 2, 2, 2, 4433, 29406, 3, 2, 2, 2, 4435, 29409, 3, 2, 2, 2, 4437, 29413, 3, 2, 2, 2, 4439, 29431, 3, 2, 2, 2, 4441, 29443, 3, 2, 2, 2, 4443, 29459, 3, 2, 2, 2, 4445, 29468, 3, 2, 2, 2, 4447, 29477, 3, 2, 2, 2, 4449, 29486, 3, 2, 2, 2, 4451, 29495, 3, 2, 2, 2, 4453, 29504, 3, 2, 2, 2, 4455, 29513, 3, 2, 2, 2, 4457, 29522, 3, 2, 2, 2, 4459, 29531, 3, 2, 2, 2, 4461, 29541, 3, 2, 2, 2, 4463, 29543, 3, 2, 2, 2, 4465, 29545, 3, 2, 2, 2, 4467, 29547, 3, 2, 2, 2, 4469, 29549, 3, 2, 2, 2, 4471, 29552, 3, 2, 2, 2, 4473, 29554, 3, 2, 2, 2, 4475, 29556, 3, 2, 2, 2, 4477, 29558, 3, 2, 2, 2, 4479, 29560, 3, 2, 2, 2, 4481, 29562, 3, 2, 2, 2, 4483, 29564, 3, 2, 2, 2, 4485, 29581, 3, 2, 2, 2, 4487, 29591, 3, 2, 2, 2, 4489, 29593, 3, 2, 2, 2, 4491, 29595, 3, 2, 2, 2, 4493, 29597, 3, 2, 2, 2, 4495, 29599, 3, 2, 2, 2, 4497, 29601, 3, 2, 2, 2, 4499, 29603, 3, 2, 2, 2, 4501, 29605, 3, 2, 2, 2, 4503, 29607, 3, 2, 2, 2, 4505, 29609, 3, 2, 2, 2, 4507, 29611, 3, 2, 2, 2, 4509, 29613, 3, 2, 2, 2, 4511, 29615, 3, 2, 2, 2, 4513, 29617, 3, 2, 2, 2, 4515, 29630, 3, 2, 2, 2, 4517, 29644, 3, 2, 2, 2, 4519, 29667, 3, 2, 2, 2, 4521, 29688, 3, 2, 2, 2, 4523, 29701, 3, 2, 2, 2, 4525, 29710, 3, 2, 2, 2, 4527, 29718, 3, 2, 2, 2, 4529, 29720, 3, 2, 2, 2, 4531, 29722, 3, 2, 2, 2, 4533, 29727, 3, 2, 2, 2, 4535, 29739, 3, 2, 2, 2, 4537, 29743, 3, 2, 2, 2, 4539, 4540, 7, 67, 2, 2, 4540, 4541, 7, 68, 2, 2, 4541, 4542, 7, 81, 2, 2, 4542, 4543, 7, 84, 2, 2, 4543, 4544, 7, 86, 2, 2, 4544, 4, 3, 2, 2, 2, 4545, 4546, 7, 67, 2, 2, 4546, 4547, 7, 68, 2, 2, 4547, 4548, 7, 85, 2, 2, 4548, 6, 3, 2, 2, 2, 4549, 4550, 7, 67, 2, 2, 4550, 4551, 7, 69, 2, 2, 4551, 4552, 7, 69, 2, 2, 4552, 4553, 7, 71, 2, 2, 4553, 4554, 7, 85, 2, 2, 4554, 4555, 7, 85, 2, 2, 4555, 8, 3, 2, 2, 2, 4556, 4557, 7, 67, 2, 2, 4557, 4558, 7, 69, 2, 2, 4558, 4559, 7, 69, 2, 2, 4559, 4560, 7, 71, 2, 2, 4560, 4561, 7, 85, 2, 2, 4561, 4562, 7, 85, 2, 2, 4562, 4563, 7, 71, 2, 2, 4563, 4564, 7, 70, 2, 2, 4564, 10, 3, 2, 2, 2, 4565, 4566, 7, 67, 2, 2, 4566, 4567, 7, 69, 2, 2, 4567, 4568, 7, 69, 2, 2, 4568, 4569, 7, 81, 2, 2, 4569, 4570, 7, 87, 2, 2, 4570, 4571, 7, 80, 2, 2, 4571, 4572, 7, 86, 2, 2, 4572, 12, 3, 2, 2, 2, 4573, 4574, 7, 67, 2, 2, 4574, 4575, 7, 69, 2, 2, 4575, 4576, 7, 78, 2, 2, 4576, 14, 3, 2, 2, 2, 4577, 4578, 7, 67, 2, 2, 4578, 4579, 7, 69, 2, 2, 4579, 4580, 7, 81, 2, 2, 4580, 4581, 7, 85, 2, 2, 4581, 16, 3, 2, 2, 2, 4582, 4583, 7, 67, 2, 2, 4583, 4584, 7, 69, 2, 2, 4584, 4585, 7, 86, 2, 2, 4585, 4586, 7, 75, 2, 2, 4586, 4587, 7, 81, 2, 2, 4587, 4588, 7, 80, 2, 2, 4588, 18, 3, 2, 2, 2, 4589, 4590, 7, 67, 2, 2, 4590, 4591, 7, 69, 2, 2, 4591, 4592, 7, 86, 2, 2, 4592, 4593, 7, 75, 2, 2, 4593, 4594, 7, 81, 2, 2, 4594, 4595, 7, 80, 2, 2, 4595, 4596, 7, 85, 2, 2, 4596, 20, 3, 2, 2, 2, 4597, 4598, 7, 67, 2, 2, 4598, 4599, 7, 69, 2, 2, 4599, 4600, 7, 86, 2, 2, 4600, 4601, 7, 75, 2, 2, 4601, 4602, 7, 88, 2, 2, 4602, 4603, 7, 67, 2, 2, 4603, 4604, 7, 86, 2, 2, 4604, 4605, 7, 71, 2, 2, 4605, 22, 3, 2, 2, 2, 4606, 4607, 7, 67, 2, 2, 4607, 4608, 7, 69, 2, 2, 4608, 4609, 7, 86, 2, 2, 4609, 4610, 7, 75, 2, 2, 4610, 4611, 7, 88, 2, 2, 4611, 4612, 7, 71, 2, 2, 4612, 24, 3, 2, 2, 2, 4613, 4614, 7, 67, 2, 2, 4614, 4615, 7, 69, 2, 2, 4615, 4616, 7, 86, 2, 2, 4616, 4617, 7, 75, 2, 2, 4617, 4618, 7, 88, 2, 2, 4618, 4619, 7, 71, 2, 2, 4619, 4620, 7, 97, 2, 2, 4620, 4621, 7, 69, 2, 2, 4621, 4622, 7, 81, 2, 2, 4622, 4623, 7, 79, 2, 2, 4623, 4624, 7, 82, 2, 2, 4624, 4625, 7, 81, 2, 2, 4625, 4626, 7, 80, 2, 2, 4626, 4627, 7, 71, 2, 2, 4627, 4628, 7, 80, 2, 2, 4628, 4629, 7, 86, 2, 2, 4629, 26, 3, 2, 2, 2, 4630, 4631, 7, 67, 2, 2, 4631, 4632, 7, 69, 2, 2, 4632, 4633, 7, 86, 2, 2, 4633, 4634, 7, 75, 2, 2, 4634, 4635, 7, 88, 2, 2, 4635, 4636, 7, 71, 2, 2, 4636, 4637, 7, 97, 2, 2, 4637, 4638, 7, 70, 2, 2, 4638, 4639, 7, 67, 2, 2, 4639, 4640, 7, 86, 2, 2, 4640, 4641, 7, 67, 2, 2, 4641, 28, 3, 2, 2, 2, 4642, 4643, 7, 67, 2, 2, 4643, 4644, 7, 69, 2, 2, 4644, 4645, 7, 86, 2, 2, 4645, 4646, 7, 75, 2, 2, 4646, 4647, 7, 88, 2, 2, 4647, 4648, 7, 71, 2, 2, 4648, 4649, 7, 97, 2, 2, 4649, 4650, 7, 72, 2, 2, 4650, 4651, 7, 87, 2, 2, 4651, 4652, 7, 80, 2, 2, 4652, 4653, 7, 69, 2, 2, 4653, 4654, 7, 86, 2, 2, 4654, 4655, 7, 75, 2, 2, 4655, 4656, 7, 81, 2, 2, 4656, 4657, 7, 80, 2, 2, 4657, 30, 3, 2, 2, 2, 4658, 4659, 7, 67, 2, 2, 4659, 4660, 7, 69, 2, 2, 4660, 4661, 7, 86, 2, 2, 4661, 4662, 7, 75, 2, 2, 4662, 4663, 7, 88, 2, 2, 4663, 4664, 7, 71, 2, 2, 4664, 4665, 7, 97, 2, 2, 4665, 4666, 7, 86, 2, 2, 4666, 4667, 7, 67, 2, 2, 4667, 4668, 7, 73, 2, 2, 4668, 32, 3, 2, 2, 2, 4669, 4670, 7, 67, 2, 2, 4670, 4671, 7, 69, 2, 2, 4671, 4672, 7, 86, 2, 2, 4672, 4673, 7, 75, 2, 2, 4673, 4674, 7, 88, 2, 2, 4674, 4675, 7, 75, 2, 2, 4675, 4676, 7, 86, 2, 2, 4676, 4677, 7, 91, 2, 2, 4677, 34, 3, 2, 2, 2, 4678, 4679, 7, 67, 2, 2, 4679, 4680, 7, 70, 2, 2, 4680, 4681, 7, 67, 2, 2, 4681, 4682, 7, 82, 2, 2, 4682, 4683, 7, 86, 2, 2, 4683, 4684, 7, 75, 2, 2, 4684, 4685, 7, 88, 2, 2, 4685, 4686, 7, 71, 2, 2, 4686, 4687, 7, 97, 2, 2, 4687, 4688, 7, 82, 2, 2, 4688, 4689, 7, 78, 2, 2, 4689, 4690, 7, 67, 2, 2, 4690, 4691, 7, 80, 2, 2, 4691, 36, 3, 2, 2, 2, 4692, 4693, 7, 67, 2, 2, 4693, 4694, 7, 70, 2, 2, 4694, 4695, 7, 70, 2, 2, 4695, 38, 3, 2, 2, 2, 4696, 4697, 7, 67, 2, 2, 4697, 4698, 7, 70, 2, 2, 4698, 4699, 7, 70, 2, 2, 4699, 4700, 7, 97, 2, 2, 4700, 4701, 7, 69, 2, 2, 4701, 4702, 7, 81, 2, 2, 4702, 4703, 7, 78, 2, 2, 4703, 4704, 7, 87, 2, 2, 4704, 4705, 7, 79, 2, 2, 4705, 4706, 7, 80, 2, 2, 4706, 40, 3, 2, 2, 2, 4707, 4708, 7, 67, 2, 2, 4708, 4709, 7, 70, 2, 2, 4709, 4710, 7, 70, 2, 2, 4710, 4711, 7, 97, 2, 2, 4711, 4712, 7, 73, 2, 2, 4712, 4713, 7, 84, 2, 2, 4713, 4714, 7, 81, 2, 2, 4714, 4715, 7, 87, 2, 2, 4715, 4716, 7, 82, 2, 2, 4716, 42, 3, 2, 2, 2, 4717, 4718, 7, 67, 2, 2, 4718, 4719, 7, 70, 2, 2, 4719, 4720, 7, 70, 2, 2, 4720, 4721, 7, 97, 2, 2, 4721, 4722, 7, 79, 2, 2, 4722, 4723, 7, 81, 2, 2, 4723, 4724, 7, 80, 2, 2, 4724, 4725, 7, 86, 2, 2, 4725, 4726, 7, 74, 2, 2, 4726, 4727, 7, 85, 2, 2, 4727, 44, 3, 2, 2, 2, 4728, 4729, 7, 67, 2, 2, 4729, 4730, 7, 70, 2, 2, 4730, 4731, 7, 76, 2, 2, 4731, 4732, 7, 97, 2, 2, 4732, 4733, 7, 70, 2, 2, 4733, 4734, 7, 67, 2, 2, 4734, 4735, 7, 86, 2, 2, 4735, 4736, 7, 71, 2, 2, 4736, 46, 3, 2, 2, 2, 4737, 4738, 7, 67, 2, 2, 4738, 4739, 7, 70, 2, 2, 4739, 4740, 7, 79, 2, 2, 4740, 4741, 7, 75, 2, 2, 4741, 4742, 7, 80, 2, 2, 4742, 48, 3, 2, 2, 2, 4743, 4744, 7, 67, 2, 2, 4744, 4745, 7, 70, 2, 2, 4745, 4746, 7, 79, 2, 2, 4746, 4747, 7, 75, 2, 2, 4747, 4748, 7, 80, 2, 2, 4748, 4749, 7, 75, 2, 2, 4749, 4750, 7, 85, 2, 2, 4750, 4751, 7, 86, 2, 2, 4751, 4752, 7, 71, 2, 2, 4752, 4753, 7, 84, 2, 2, 4753, 50, 3, 2, 2, 2, 4754, 4755, 7, 67, 2, 2, 4755, 4756, 7, 70, 2, 2, 4756, 4757, 7, 79, 2, 2, 4757, 4758, 7, 75, 2, 2, 4758, 4759, 7, 80, 2, 2, 4759, 4760, 7, 75, 2, 2, 4760, 4761, 7, 85, 2, 2, 4761, 4762, 7, 86, 2, 2, 4762, 4763, 7, 84, 2, 2, 4763, 4764, 7, 67, 2, 2, 4764, 4765, 7, 86, 2, 2, 4765, 4766, 7, 81, 2, 2, 4766, 4767, 7, 84, 2, 2, 4767, 52, 3, 2, 2, 2, 4768, 4769, 7, 67, 2, 2, 4769, 4770, 7, 70, 2, 2, 4770, 4771, 7, 88, 2, 2, 4771, 4772, 7, 67, 2, 2, 4772, 4773, 7, 80, 2, 2, 4773, 4774, 7, 69, 2, 2, 4774, 4775, 7, 71, 2, 2, 4775, 4776, 7, 70, 2, 2, 4776, 54, 3, 2, 2, 2, 4777, 4778, 7, 67, 2, 2, 4778, 4779, 7, 70, 2, 2, 4779, 4780, 7, 88, 2, 2, 4780, 4781, 7, 75, 2, 2, 4781, 4782, 7, 85, 2, 2, 4782, 4783, 7, 71, 2, 2, 4783, 56, 3, 2, 2, 2, 4784, 4785, 7, 67, 2, 2, 4785, 4786, 7, 70, 2, 2, 4786, 4787, 7, 88, 2, 2, 4787, 4788, 7, 75, 2, 2, 4788, 4789, 7, 85, 2, 2, 4789, 4790, 7, 81, 2, 2, 4790, 4791, 7, 84, 2, 2, 4791, 58, 3, 2, 2, 2, 4792, 4793, 7, 67, 2, 2, 4793, 4794, 7, 72, 2, 2, 4794, 4795, 7, 70, 2, 2, 4795, 4796, 7, 97, 2, 2, 4796, 4797, 7, 70, 2, 2, 4797, 4798, 7, 75, 2, 2, 4798, 4799, 7, 85, 2, 2, 4799, 4800, 7, 77, 2, 2, 4800, 4801, 7, 85, 2, 2, 4801, 4802, 7, 86, 2, 2, 4802, 4803, 7, 84, 2, 2, 4803, 4804, 7, 75, 2, 2, 4804, 4805, 7, 80, 2, 2, 4805, 4806, 7, 73, 2, 2, 4806, 60, 3, 2, 2, 2, 4807, 4808, 7, 67, 2, 2, 4808, 4809, 7, 72, 2, 2, 4809, 4810, 7, 86, 2, 2, 4810, 4811, 7, 71, 2, 2, 4811, 4812, 7, 84, 2, 2, 4812, 62, 3, 2, 2, 2, 4813, 4814, 7, 67, 2, 2, 4814, 4815, 7, 73, 2, 2, 4815, 4816, 7, 71, 2, 2, 4816, 4817, 7, 80, 2, 2, 4817, 4818, 7, 86, 2, 2, 4818, 64, 3, 2, 2, 2, 4819, 4820, 7, 67, 2, 2, 4820, 4821, 7, 73, 2, 2, 4821, 4822, 7, 73, 2, 2, 4822, 4823, 7, 84, 2, 2, 4823, 4824, 7, 71, 2, 2, 4824, 4825, 7, 73, 2, 2, 4825, 4826, 7, 67, 2, 2, 4826, 4827, 7, 86, 2, 2, 4827, 4828, 7, 71, 2, 2, 4828, 66, 3, 2, 2, 2, 4829, 4830, 7, 67, 2, 2, 4830, 68, 3, 2, 2, 2, 4831, 4832, 7, 67, 2, 2, 4832, 4833, 7, 78, 2, 2, 4833, 4834, 7, 75, 2, 2, 4834, 4835, 7, 67, 2, 2, 4835, 4836, 7, 85, 2, 2, 4836, 70, 3, 2, 2, 2, 4837, 4838, 7, 67, 2, 2, 4838, 4839, 7, 78, 2, 2, 4839, 4840, 7, 78, 2, 2, 4840, 72, 3, 2, 2, 2, 4841, 4842, 7, 67, 2, 2, 4842, 4843, 7, 78, 2, 2, 4843, 4844, 7, 78, 2, 2, 4844, 4845, 7, 81, 2, 2, 4845, 4846, 7, 69, 2, 2, 4846, 4847, 7, 67, 2, 2, 4847, 4848, 7, 86, 2, 2, 4848, 4849, 7, 71, 2, 2, 4849, 74, 3, 2, 2, 2, 4850, 4851, 7, 67, 2, 2, 4851, 4852, 7, 78, 2, 2, 4852, 4853, 7, 78, 2, 2, 4853, 4854, 7, 81, 2, 2, 4854, 4855, 7, 89, 2, 2, 4855, 76, 3, 2, 2, 2, 4856, 4857, 7, 67, 2, 2, 4857, 4858, 7, 78, 2, 2, 4858, 4859, 7, 78, 2, 2, 4859, 4860, 7, 97, 2, 2, 4860, 4861, 7, 84, 2, 2, 4861, 4862, 7, 81, 2, 2, 4862, 4863, 7, 89, 2, 2, 4863, 4864, 7, 85, 2, 2, 4864, 78, 3, 2, 2, 2, 4865, 4866, 7, 67, 2, 2, 4866, 4867, 7, 78, 2, 2, 4867, 4868, 7, 86, 2, 2, 4868, 4869, 7, 71, 2, 2, 4869, 4870, 7, 84, 2, 2, 4870, 80, 3, 2, 2, 2, 4871, 4872, 7, 67, 2, 2, 4872, 4873, 7, 78, 2, 2, 4873, 4874, 7, 89, 2, 2, 4874, 4875, 7, 67, 2, 2, 4875, 4876, 7, 91, 2, 2, 4876, 4877, 7, 85, 2, 2, 4877, 82, 3, 2, 2, 2, 4878, 4879, 7, 67, 2, 2, 4879, 4880, 7, 80, 2, 2, 4880, 4881, 7, 67, 2, 2, 4881, 4882, 7, 78, 2, 2, 4882, 4883, 7, 91, 2, 2, 4883, 4884, 7, 92, 2, 2, 4884, 4885, 7, 71, 2, 2, 4885, 84, 3, 2, 2, 2, 4886, 4887, 7, 67, 2, 2, 4887, 4888, 7, 80, 2, 2, 4888, 4889, 7, 69, 2, 2, 4889, 4890, 7, 75, 2, 2, 4890, 4891, 7, 78, 2, 2, 4891, 4892, 7, 78, 2, 2, 4892, 4893, 7, 67, 2, 2, 4893, 4894, 7, 84, 2, 2, 4894, 4895, 7, 91, 2, 2, 4895, 86, 3, 2, 2, 2, 4896, 4897, 7, 67, 2, 2, 4897, 4898, 7, 80, 2, 2, 4898, 4899, 7, 70, 2, 2, 4899, 88, 3, 2, 2, 2, 4900, 4901, 7, 67, 2, 2, 4901, 4902, 7, 80, 2, 2, 4902, 4903, 7, 70, 2, 2, 4903, 4904, 7, 97, 2, 2, 4904, 4905, 7, 71, 2, 2, 4905, 4906, 7, 83, 2, 2, 4906, 4907, 7, 87, 2, 2, 4907, 4908, 7, 67, 2, 2, 4908, 4909, 7, 78, 2, 2, 4909, 90, 3, 2, 2, 2, 4910, 4911, 7, 67, 2, 2, 4911, 4912, 7, 80, 2, 2, 4912, 4913, 7, 81, 2, 2, 4913, 4914, 7, 79, 2, 2, 4914, 4915, 7, 67, 2, 2, 4915, 4916, 7, 78, 2, 2, 4916, 4917, 7, 91, 2, 2, 4917, 92, 3, 2, 2, 2, 4918, 4919, 7, 67, 2, 2, 4919, 4920, 7, 80, 2, 2, 4920, 4921, 7, 85, 2, 2, 4921, 4922, 7, 75, 2, 2, 4922, 4923, 7, 97, 2, 2, 4923, 4924, 7, 84, 2, 2, 4924, 4925, 7, 71, 2, 2, 4925, 4926, 7, 67, 2, 2, 4926, 4927, 7, 84, 2, 2, 4927, 4928, 7, 69, 2, 2, 4928, 4929, 7, 74, 2, 2, 4929, 94, 3, 2, 2, 2, 4930, 4931, 7, 67, 2, 2, 4931, 4932, 7, 80, 2, 2, 4932, 4933, 7, 86, 2, 2, 4933, 4934, 7, 75, 2, 2, 4934, 4935, 7, 76, 2, 2, 4935, 4936, 7, 81, 2, 2, 4936, 4937, 7, 75, 2, 2, 4937, 4938, 7, 80, 2, 2, 4938, 96, 3, 2, 2, 2, 4939, 4940, 7, 67, 2, 2, 4940, 4941, 7, 80, 2, 2, 4941, 4942, 7, 91, 2, 2, 4942, 98, 3, 2, 2, 2, 4943, 4944, 7, 67, 2, 2, 4944, 4945, 7, 80, 2, 2, 4945, 4946, 7, 91, 2, 2, 4946, 4947, 7, 85, 2, 2, 4947, 4948, 7, 69, 2, 2, 4948, 4949, 7, 74, 2, 2, 4949, 4950, 7, 71, 2, 2, 4950, 4951, 7, 79, 2, 2, 4951, 4952, 7, 67, 2, 2, 4952, 100, 3, 2, 2, 2, 4953, 4954, 7, 67, 2, 2, 4954, 4955, 7, 82, 2, 2, 4955, 4956, 7, 82, 2, 2, 4956, 4957, 7, 71, 2, 2, 4957, 4958, 7, 80, 2, 2, 4958, 4959, 7, 70, 2, 2, 4959, 102, 3, 2, 2, 2, 4960, 4961, 7, 67, 2, 2, 4961, 4962, 7, 82, 2, 2, 4962, 4963, 7, 82, 2, 2, 4963, 4964, 7, 71, 2, 2, 4964, 4965, 7, 80, 2, 2, 4965, 4966, 7, 70, 2, 2, 4966, 4967, 7, 69, 2, 2, 4967, 4968, 7, 74, 2, 2, 4968, 4969, 7, 75, 2, 2, 4969, 4970, 7, 78, 2, 2, 4970, 4971, 7, 70, 2, 2, 4971, 4972, 7, 90, 2, 2, 4972, 4973, 7, 79, 2, 2, 4973, 4974, 7, 78, 2, 2, 4974, 104, 3, 2, 2, 2, 4975, 4976, 7, 67, 2, 2, 4976, 4977, 7, 82, 2, 2, 4977, 4978, 7, 82, 2, 2, 4978, 4979, 7, 71, 2, 2, 4979, 4980, 7, 80, 2, 2, 4980, 4981, 7, 70, 2, 2, 4981, 4982, 7, 97, 2, 2, 4982, 4983, 7, 88, 2, 2, 4983, 4984, 7, 67, 2, 2, 4984, 4985, 7, 78, 2, 2, 4985, 4986, 7, 87, 2, 2, 4986, 4987, 7, 71, 2, 2, 4987, 4988, 7, 85, 2, 2, 4988, 106, 3, 2, 2, 2, 4989, 4990, 7, 67, 2, 2, 4990, 4991, 7, 82, 2, 2, 4991, 4992, 7, 82, 2, 2, 4992, 4993, 7, 78, 2, 2, 4993, 4994, 7, 75, 2, 2, 4994, 4995, 7, 69, 2, 2, 4995, 4996, 7, 67, 2, 2, 4996, 4997, 7, 86, 2, 2, 4997, 4998, 7, 75, 2, 2, 4998, 4999, 7, 81, 2, 2, 4999, 5000, 7, 80, 2, 2, 5000, 108, 3, 2, 2, 2, 5001, 5002, 7, 67, 2, 2, 5002, 5003, 7, 82, 2, 2, 5003, 5004, 7, 82, 2, 2, 5004, 5005, 7, 78, 2, 2, 5005, 5006, 7, 91, 2, 2, 5006, 110, 3, 2, 2, 2, 5007, 5008, 7, 67, 2, 2, 5008, 5009, 7, 82, 2, 2, 5009, 5010, 7, 82, 2, 2, 5010, 5011, 7, 84, 2, 2, 5011, 5012, 7, 81, 2, 2, 5012, 5013, 7, 90, 2, 2, 5013, 5014, 7, 97, 2, 2, 5014, 5015, 7, 69, 2, 2, 5015, 5016, 7, 81, 2, 2, 5016, 5017, 7, 87, 2, 2, 5017, 5018, 7, 80, 2, 2, 5018, 5019, 7, 86, 2, 2, 5019, 5020, 7, 97, 2, 2, 5020, 5021, 7, 70, 2, 2, 5021, 5022, 7, 75, 2, 2, 5022, 5023, 7, 85, 2, 2, 5023, 5024, 7, 86, 2, 2, 5024, 5025, 7, 75, 2, 2, 5025, 5026, 7, 80, 2, 2, 5026, 5027, 7, 69, 2, 2, 5027, 5028, 7, 86, 2, 2, 5028, 112, 3, 2, 2, 2, 5029, 5030, 7, 67, 2, 2, 5030, 5031, 7, 84, 2, 2, 5031, 5032, 7, 69, 2, 2, 5032, 5033, 7, 74, 2, 2, 5033, 5034, 7, 75, 2, 2, 5034, 5035, 7, 88, 2, 2, 5035, 5036, 7, 67, 2, 2, 5036, 5037, 7, 78, 2, 2, 5037, 114, 3, 2, 2, 2, 5038, 5039, 7, 67, 2, 2, 5039, 5040, 7, 84, 2, 2, 5040, 5041, 7, 69, 2, 2, 5041, 5042, 7, 74, 2, 2, 5042, 5043, 7, 75, 2, 2, 5043, 5044, 7, 88, 2, 2, 5044, 5045, 7, 71, 2, 2, 5045, 116, 3, 2, 2, 2, 5046, 5047, 7, 67, 2, 2, 5047, 5048, 7, 84, 2, 2, 5048, 5049, 7, 69, 2, 2, 5049, 5050, 7, 74, 2, 2, 5050, 5051, 7, 75, 2, 2, 5051, 5052, 7, 88, 2, 2, 5052, 5053, 7, 71, 2, 2, 5053, 5054, 7, 70, 2, 2, 5054, 118, 3, 2, 2, 2, 5055, 5056, 7, 67, 2, 2, 5056, 5057, 7, 84, 2, 2, 5057, 5058, 7, 69, 2, 2, 5058, 5059, 7, 74, 2, 2, 5059, 5060, 7, 75, 2, 2, 5060, 5061, 7, 88, 2, 2, 5061, 5062, 7, 71, 2, 2, 5062, 5063, 7, 78, 2, 2, 5063, 5064, 7, 81, 2, 2, 5064, 5065, 7, 73, 2, 2, 5065, 120, 3, 2, 2, 2, 5066, 5067, 7, 67, 2, 2, 5067, 5068, 7, 84, 2, 2, 5068, 5069, 7, 84, 2, 2, 5069, 5070, 7, 67, 2, 2, 5070, 5071, 7, 91, 2, 2, 5071, 122, 3, 2, 2, 2, 5072, 5073, 7, 67, 2, 2, 5073, 5074, 7, 85, 2, 2, 5074, 124, 3, 2, 2, 2, 5075, 5076, 7, 67, 2, 2, 5076, 5077, 7, 85, 2, 2, 5077, 5078, 7, 69, 2, 2, 5078, 126, 3, 2, 2, 2, 5079, 5080, 7, 67, 2, 2, 5080, 5081, 7, 85, 2, 2, 5081, 5082, 7, 69, 2, 2, 5082, 5083, 7, 75, 2, 2, 5083, 5084, 7, 75, 2, 2, 5084, 128, 3, 2, 2, 2, 5085, 5086, 7, 67, 2, 2, 5086, 5087, 7, 85, 2, 2, 5087, 5088, 7, 69, 2, 2, 5088, 5089, 7, 75, 2, 2, 5089, 5090, 7, 75, 2, 2, 5090, 5091, 7, 85, 2, 2, 5091, 5092, 7, 86, 2, 2, 5092, 5093, 7, 84, 2, 2, 5093, 130, 3, 2, 2, 2, 5094, 5095, 7, 67, 2, 2, 5095, 5096, 7, 85, 2, 2, 5096, 5097, 7, 75, 2, 2, 5097, 5098, 7, 80, 2, 2, 5098, 132, 3, 2, 2, 2, 5099, 5100, 7, 67, 2, 2, 5100, 5101, 7, 85, 2, 2, 5101, 5102, 7, 75, 2, 2, 5102, 5103, 7, 85, 2, 2, 5103, 134, 3, 2, 2, 2, 5104, 5105, 7, 67, 2, 2, 5105, 5106, 7, 85, 2, 2, 5106, 5107, 7, 85, 2, 2, 5107, 5108, 7, 71, 2, 2, 5108, 5109, 7, 79, 2, 2, 5109, 5110, 7, 68, 2, 2, 5110, 5111, 7, 78, 2, 2, 5111, 5112, 7, 91, 2, 2, 5112, 136, 3, 2, 2, 2, 5113, 5114, 7, 67, 2, 2, 5114, 5115, 7, 85, 2, 2, 5115, 5116, 7, 85, 2, 2, 5116, 5117, 7, 75, 2, 2, 5117, 5118, 7, 73, 2, 2, 5118, 5119, 7, 80, 2, 2, 5119, 138, 3, 2, 2, 2, 5120, 5121, 7, 67, 2, 2, 5121, 5122, 7, 85, 2, 2, 5122, 5123, 7, 85, 2, 2, 5123, 5124, 7, 81, 2, 2, 5124, 5125, 7, 69, 2, 2, 5125, 5126, 7, 75, 2, 2, 5126, 5127, 7, 67, 2, 2, 5127, 5128, 7, 86, 2, 2, 5128, 5129, 7, 71, 2, 2, 5129, 140, 3, 2, 2, 2, 5130, 5131, 7, 67, 2, 2, 5131, 5132, 7, 85, 2, 2, 5132, 5133, 7, 91, 2, 2, 5133, 5134, 7, 80, 2, 2, 5134, 5135, 7, 69, 2, 2, 5135, 142, 3, 2, 2, 2, 5136, 5137, 7, 67, 2, 2, 5137, 5138, 7, 85, 2, 2, 5138, 5139, 7, 91, 2, 2, 5139, 5140, 7, 80, 2, 2, 5140, 5141, 7, 69, 2, 2, 5141, 5142, 7, 74, 2, 2, 5142, 5143, 7, 84, 2, 2, 5143, 5144, 7, 81, 2, 2, 5144, 5145, 7, 80, 2, 2, 5145, 5146, 7, 81, 2, 2, 5146, 5147, 7, 87, 2, 2, 5147, 5148, 7, 85, 2, 2, 5148, 144, 3, 2, 2, 2, 5149, 5150, 7, 67, 2, 2, 5150, 5151, 7, 86, 2, 2, 5151, 5152, 7, 67, 2, 2, 5152, 5153, 7, 80, 2, 2, 5153, 5154, 7, 52, 2, 2, 5154, 146, 3, 2, 2, 2, 5155, 5156, 7, 67, 2, 2, 5156, 5157, 7, 86, 2, 2, 5157, 5158, 7, 67, 2, 2, 5158, 5159, 7, 80, 2, 2, 5159, 148, 3, 2, 2, 2, 5160, 5161, 7, 67, 2, 2, 5161, 5162, 7, 86, 2, 2, 5162, 150, 3, 2, 2, 2, 5163, 5164, 7, 67, 2, 2, 5164, 5165, 7, 86, 2, 2, 5165, 5166, 7, 86, 2, 2, 5166, 5167, 7, 84, 2, 2, 5167, 5168, 7, 75, 2, 2, 5168, 5169, 7, 68, 2, 2, 5169, 5170, 7, 87, 2, 2, 5170, 5171, 7, 86, 2, 2, 5171, 5172, 7, 71, 2, 2, 5172, 152, 3, 2, 2, 2, 5173, 5174, 7, 67, 2, 2, 5174, 5175, 7, 86, 2, 2, 5175, 5176, 7, 86, 2, 2, 5176, 5177, 7, 84, 2, 2, 5177, 5178, 7, 75, 2, 2, 5178, 5179, 7, 68, 2, 2, 5179, 5180, 7, 87, 2, 2, 5180, 5181, 7, 86, 2, 2, 5181, 5182, 7, 71, 2, 2, 5182, 5183, 7, 85, 2, 2, 5183, 154, 3, 2, 2, 2, 5184, 5185, 7, 67, 2, 2, 5185, 5186, 7, 87, 2, 2, 5186, 5187, 7, 70, 2, 2, 5187, 5188, 7, 75, 2, 2, 5188, 5189, 7, 86, 2, 2, 5189, 156, 3, 2, 2, 2, 5190, 5191, 7, 67, 2, 2, 5191, 5192, 7, 87, 2, 2, 5192, 5193, 7, 86, 2, 2, 5193, 5194, 7, 74, 2, 2, 5194, 5195, 7, 71, 2, 2, 5195, 5196, 7, 80, 2, 2, 5196, 5197, 7, 86, 2, 2, 5197, 5198, 7, 75, 2, 2, 5198, 5199, 7, 69, 2, 2, 5199, 5200, 7, 67, 2, 2, 5200, 5201, 7, 86, 2, 2, 5201, 5202, 7, 71, 2, 2, 5202, 5203, 7, 70, 2, 2, 5203, 158, 3, 2, 2, 2, 5204, 5205, 7, 67, 2, 2, 5205, 5206, 7, 87, 2, 2, 5206, 5207, 7, 86, 2, 2, 5207, 5208, 7, 74, 2, 2, 5208, 5209, 7, 71, 2, 2, 5209, 5210, 7, 80, 2, 2, 5210, 5211, 7, 86, 2, 2, 5211, 5212, 7, 75, 2, 2, 5212, 5213, 7, 69, 2, 2, 5213, 5214, 7, 67, 2, 2, 5214, 5215, 7, 86, 2, 2, 5215, 5216, 7, 75, 2, 2, 5216, 5217, 7, 81, 2, 2, 5217, 5218, 7, 80, 2, 2, 5218, 160, 3, 2, 2, 2, 5219, 5220, 7, 67, 2, 2, 5220, 5221, 7, 87, 2, 2, 5221, 5222, 7, 86, 2, 2, 5222, 5223, 7, 74, 2, 2, 5223, 5224, 7, 75, 2, 2, 5224, 5225, 7, 70, 2, 2, 5225, 162, 3, 2, 2, 2, 5226, 5227, 7, 67, 2, 2, 5227, 5228, 7, 87, 2, 2, 5228, 5229, 7, 86, 2, 2, 5229, 5230, 7, 74, 2, 2, 5230, 5231, 7, 81, 2, 2, 5231, 5232, 7, 84, 2, 2, 5232, 5233, 7, 75, 2, 2, 5233, 5234, 7, 92, 2, 2, 5234, 5235, 7, 67, 2, 2, 5235, 5236, 7, 86, 2, 2, 5236, 5237, 7, 75, 2, 2, 5237, 5238, 7, 81, 2, 2, 5238, 5239, 7, 80, 2, 2, 5239, 164, 3, 2, 2, 2, 5240, 5241, 7, 67, 2, 2, 5241, 5242, 7, 87, 2, 2, 5242, 5243, 7, 86, 2, 2, 5243, 5244, 7, 81, 2, 2, 5244, 5245, 7, 67, 2, 2, 5245, 5246, 7, 78, 2, 2, 5246, 5247, 7, 78, 2, 2, 5247, 5248, 7, 81, 2, 2, 5248, 5249, 7, 69, 2, 2, 5249, 5250, 7, 67, 2, 2, 5250, 5251, 7, 86, 2, 2, 5251, 5252, 7, 71, 2, 2, 5252, 166, 3, 2, 2, 2, 5253, 5254, 7, 67, 2, 2, 5254, 5255, 7, 87, 2, 2, 5255, 5256, 7, 86, 2, 2, 5256, 5257, 7, 81, 2, 2, 5257, 168, 3, 2, 2, 2, 5258, 5259, 7, 67, 2, 2, 5259, 5260, 7, 87, 2, 2, 5260, 5261, 7, 86, 2, 2, 5261, 5262, 7, 81, 2, 2, 5262, 5263, 7, 68, 2, 2, 5263, 5264, 7, 67, 2, 2, 5264, 5265, 7, 69, 2, 2, 5265, 5266, 7, 77, 2, 2, 5266, 5267, 7, 87, 2, 2, 5267, 5268, 7, 82, 2, 2, 5268, 170, 3, 2, 2, 2, 5269, 5270, 7, 67, 2, 2, 5270, 5271, 7, 87, 2, 2, 5271, 5272, 7, 86, 2, 2, 5272, 5273, 7, 81, 2, 2, 5273, 5274, 7, 71, 2, 2, 5274, 5275, 7, 90, 2, 2, 5275, 5276, 7, 86, 2, 2, 5276, 5277, 7, 71, 2, 2, 5277, 5278, 7, 80, 2, 2, 5278, 5279, 7, 70, 2, 2, 5279, 172, 3, 2, 2, 2, 5280, 5281, 7, 67, 2, 2, 5281, 5282, 7, 87, 2, 2, 5282, 5283, 7, 86, 2, 2, 5283, 5284, 7, 81, 2, 2, 5284, 5285, 7, 97, 2, 2, 5285, 5286, 7, 78, 2, 2, 5286, 5287, 7, 81, 2, 2, 5287, 5288, 7, 73, 2, 2, 5288, 5289, 7, 75, 2, 2, 5289, 5290, 7, 80, 2, 2, 5290, 174, 3, 2, 2, 2, 5291, 5292, 7, 67, 2, 2, 5292, 5293, 7, 87, 2, 2, 5293, 5294, 7, 86, 2, 2, 5294, 5295, 7, 81, 2, 2, 5295, 5296, 7, 79, 2, 2, 5296, 5297, 7, 67, 2, 2, 5297, 5298, 7, 86, 2, 2, 5298, 5299, 7, 75, 2, 2, 5299, 5300, 7, 69, 2, 2, 5300, 176, 3, 2, 2, 2, 5301, 5302, 7, 67, 2, 2, 5302, 5303, 7, 87, 2, 2, 5303, 5304, 7, 86, 2, 2, 5304, 5305, 7, 81, 2, 2, 5305, 5306, 7, 80, 2, 2, 5306, 5307, 7, 81, 2, 2, 5307, 5308, 7, 79, 2, 2, 5308, 5309, 7, 81, 2, 2, 5309, 5310, 7, 87, 2, 2, 5310, 5311, 7, 85, 2, 2, 5311, 5312, 7, 97, 2, 2, 5312, 5313, 7, 86, 2, 2, 5313, 5314, 7, 84, 2, 2, 5314, 5315, 7, 67, 2, 2, 5315, 5316, 7, 80, 2, 2, 5316, 5317, 7, 85, 2, 2, 5317, 5318, 7, 67, 2, 2, 5318, 5319, 7, 69, 2, 2, 5319, 5320, 7, 86, 2, 2, 5320, 5321, 7, 75, 2, 2, 5321, 5322, 7, 81, 2, 2, 5322, 5323, 7, 80, 2, 2, 5323, 178, 3, 2, 2, 2, 5324, 5325, 7, 67, 2, 2, 5325, 5326, 7, 87, 2, 2, 5326, 5327, 7, 86, 2, 2, 5327, 5328, 7, 81, 2, 2, 5328, 5329, 7, 97, 2, 2, 5329, 5330, 7, 84, 2, 2, 5330, 5331, 7, 71, 2, 2, 5331, 5332, 7, 81, 2, 2, 5332, 5333, 7, 82, 2, 2, 5333, 5334, 7, 86, 2, 2, 5334, 5335, 7, 75, 2, 2, 5335, 5336, 7, 79, 2, 2, 5336, 5337, 7, 75, 2, 2, 5337, 5338, 7, 92, 2, 2, 5338, 5339, 7, 71, 2, 2, 5339, 180, 3, 2, 2, 2, 5340, 5341, 7, 67, 2, 2, 5341, 5342, 7, 88, 2, 2, 5342, 5343, 7, 67, 2, 2, 5343, 5344, 7, 75, 2, 2, 5344, 5345, 7, 78, 2, 2, 5345, 5346, 7, 67, 2, 2, 5346, 5347, 7, 68, 2, 2, 5347, 5348, 7, 75, 2, 2, 5348, 5349, 7, 78, 2, 2, 5349, 5350, 7, 75, 2, 2, 5350, 5351, 7, 86, 2, 2, 5351, 5352, 7, 91, 2, 2, 5352, 182, 3, 2, 2, 2, 5353, 5354, 7, 67, 2, 2, 5354, 5355, 7, 88, 2, 2, 5355, 5356, 7, 84, 2, 2, 5356, 5357, 7, 81, 2, 2, 5357, 184, 3, 2, 2, 2, 5358, 5359, 7, 68, 2, 2, 5359, 5360, 7, 67, 2, 2, 5360, 5361, 7, 69, 2, 2, 5361, 5362, 7, 77, 2, 2, 5362, 5363, 7, 73, 2, 2, 5363, 5364, 7, 84, 2, 2, 5364, 5365, 7, 81, 2, 2, 5365, 5366, 7, 87, 2, 2, 5366, 5367, 7, 80, 2, 2, 5367, 5368, 7, 70, 2, 2, 5368, 186, 3, 2, 2, 2, 5369, 5370, 7, 68, 2, 2, 5370, 5371, 7, 67, 2, 2, 5371, 5372, 7, 69, 2, 2, 5372, 5373, 7, 77, 2, 2, 5373, 5374, 7, 87, 2, 2, 5374, 5375, 7, 82, 2, 2, 5375, 188, 3, 2, 2, 2, 5376, 5377, 7, 68, 2, 2, 5377, 5378, 7, 67, 2, 2, 5378, 5379, 7, 69, 2, 2, 5379, 5380, 7, 77, 2, 2, 5380, 5381, 7, 87, 2, 2, 5381, 5382, 7, 82, 2, 2, 5382, 5383, 7, 85, 2, 2, 5383, 5384, 7, 71, 2, 2, 5384, 5385, 7, 86, 2, 2, 5385, 190, 3, 2, 2, 2, 5386, 5387, 7, 68, 2, 2, 5387, 5388, 7, 67, 2, 2, 5388, 5389, 7, 85, 2, 2, 5389, 5390, 7, 75, 2, 2, 5390, 5391, 7, 69, 2, 2, 5391, 192, 3, 2, 2, 2, 5392, 5393, 7, 68, 2, 2, 5393, 5394, 7, 67, 2, 2, 5394, 5395, 7, 85, 2, 2, 5395, 5396, 7, 75, 2, 2, 5396, 5397, 7, 69, 2, 2, 5397, 5398, 7, 72, 2, 2, 5398, 5399, 7, 75, 2, 2, 5399, 5400, 7, 78, 2, 2, 5400, 5401, 7, 71, 2, 2, 5401, 194, 3, 2, 2, 2, 5402, 5403, 7, 68, 2, 2, 5403, 5404, 7, 67, 2, 2, 5404, 5405, 7, 86, 2, 2, 5405, 5406, 7, 69, 2, 2, 5406, 5407, 7, 74, 2, 2, 5407, 196, 3, 2, 2, 2, 5408, 5409, 7, 68, 2, 2, 5409, 5410, 7, 67, 2, 2, 5410, 5411, 7, 86, 2, 2, 5411, 5412, 7, 69, 2, 2, 5412, 5413, 7, 74, 2, 2, 5413, 5414, 7, 85, 2, 2, 5414, 5415, 7, 75, 2, 2, 5415, 5416, 7, 92, 2, 2, 5416, 5417, 7, 71, 2, 2, 5417, 198, 3, 2, 2, 2, 5418, 5419, 7, 68, 2, 2, 5419, 5420, 7, 67, 2, 2, 5420, 5421, 7, 86, 2, 2, 5421, 5422, 7, 69, 2, 2, 5422, 5423, 7, 74, 2, 2, 5423, 5424, 7, 97, 2, 2, 5424, 5425, 7, 86, 2, 2, 5425, 5426, 7, 67, 2, 2, 5426, 5427, 7, 68, 2, 2, 5427, 5428, 7, 78, 2, 2, 5428, 5429, 7, 71, 2, 2, 5429, 5430, 7, 97, 2, 2, 5430, 5431, 7, 67, 2, 2, 5431, 5432, 7, 69, 2, 2, 5432, 5433, 7, 69, 2, 2, 5433, 5434, 7, 71, 2, 2, 5434, 5435, 7, 85, 2, 2, 5435, 5436, 7, 85, 2, 2, 5436, 5437, 7, 97, 2, 2, 5437, 5438, 7, 68, 2, 2, 5438, 5439, 7, 91, 2, 2, 5439, 5440, 7, 97, 2, 2, 5440, 5441, 7, 84, 2, 2, 5441, 5442, 7, 81, 2, 2, 5442, 5443, 7, 89, 2, 2, 5443, 5444, 7, 75, 2, 2, 5444, 5445, 7, 70, 2, 2, 5445, 200, 3, 2, 2, 2, 5446, 5447, 7, 68, 2, 2, 5447, 5448, 7, 71, 2, 2, 5448, 5449, 7, 69, 2, 2, 5449, 5450, 7, 81, 2, 2, 5450, 5451, 7, 79, 2, 2, 5451, 5452, 7, 71, 2, 2, 5452, 202, 3, 2, 2, 2, 5453, 5454, 7, 68, 2, 2, 5454, 5455, 7, 71, 2, 2, 5455, 5456, 7, 72, 2, 2, 5456, 5457, 7, 81, 2, 2, 5457, 5458, 7, 84, 2, 2, 5458, 5459, 7, 71, 2, 2, 5459, 204, 3, 2, 2, 2, 5460, 5461, 7, 68, 2, 2, 5461, 5462, 7, 71, 2, 2, 5462, 5463, 7, 73, 2, 2, 5463, 5464, 7, 75, 2, 2, 5464, 5465, 7, 80, 2, 2, 5465, 206, 3, 2, 2, 2, 5466, 5467, 7, 68, 2, 2, 5467, 5468, 7, 71, 2, 2, 5468, 5469, 7, 73, 2, 2, 5469, 5470, 7, 75, 2, 2, 5470, 5471, 7, 80, 2, 2, 5471, 5472, 7, 80, 2, 2, 5472, 5473, 7, 75, 2, 2, 5473, 5474, 7, 80, 2, 2, 5474, 5475, 7, 73, 2, 2, 5475, 208, 3, 2, 2, 2, 5476, 5477, 7, 68, 2, 2, 5477, 5478, 7, 71, 2, 2, 5478, 5479, 7, 73, 2, 2, 5479, 5480, 7, 75, 2, 2, 5480, 5481, 7, 80, 2, 2, 5481, 5482, 7, 97, 2, 2, 5482, 5483, 7, 81, 2, 2, 5483, 5484, 7, 87, 2, 2, 5484, 5485, 7, 86, 2, 2, 5485, 5486, 7, 78, 2, 2, 5486, 5487, 7, 75, 2, 2, 5487, 5488, 7, 80, 2, 2, 5488, 5489, 7, 71, 2, 2, 5489, 5490, 7, 97, 2, 2, 5490, 5491, 7, 70, 2, 2, 5491, 5492, 7, 67, 2, 2, 5492, 5493, 7, 86, 2, 2, 5493, 5494, 7, 67, 2, 2, 5494, 210, 3, 2, 2, 2, 5495, 5496, 7, 68, 2, 2, 5496, 5497, 7, 71, 2, 2, 5497, 5498, 7, 74, 2, 2, 5498, 5499, 7, 67, 2, 2, 5499, 5500, 7, 78, 2, 2, 5500, 5501, 7, 72, 2, 2, 5501, 212, 3, 2, 2, 2, 5502, 5503, 7, 68, 2, 2, 5503, 5504, 7, 71, 2, 2, 5504, 5505, 7, 83, 2, 2, 5505, 5506, 7, 87, 2, 2, 5506, 5507, 7, 71, 2, 2, 5507, 5508, 7, 67, 2, 2, 5508, 5509, 7, 86, 2, 2, 5509, 5510, 7, 74, 2, 2, 5510, 214, 3, 2, 2, 2, 5511, 5512, 7, 68, 2, 2, 5512, 5513, 7, 71, 2, 2, 5513, 5514, 7, 86, 2, 2, 5514, 5515, 7, 89, 2, 2, 5515, 5516, 7, 71, 2, 2, 5516, 5517, 7, 71, 2, 2, 5517, 5518, 7, 80, 2, 2, 5518, 216, 3, 2, 2, 2, 5519, 5520, 7, 68, 2, 2, 5520, 5521, 7, 72, 2, 2, 5521, 5522, 7, 75, 2, 2, 5522, 5523, 7, 78, 2, 2, 5523, 5524, 7, 71, 2, 2, 5524, 218, 3, 2, 2, 2, 5525, 5526, 7, 68, 2, 2, 5526, 5527, 7, 72, 2, 2, 5527, 5528, 7, 75, 2, 2, 5528, 5529, 7, 78, 2, 2, 5529, 5530, 7, 71, 2, 2, 5530, 5531, 7, 80, 2, 2, 5531, 5532, 7, 67, 2, 2, 5532, 5533, 7, 79, 2, 2, 5533, 5534, 7, 71, 2, 2, 5534, 220, 3, 2, 2, 2, 5535, 5536, 7, 68, 2, 2, 5536, 5537, 7, 75, 2, 2, 5537, 5538, 7, 73, 2, 2, 5538, 5539, 7, 72, 2, 2, 5539, 5540, 7, 75, 2, 2, 5540, 5541, 7, 78, 2, 2, 5541, 5542, 7, 71, 2, 2, 5542, 222, 3, 2, 2, 2, 5543, 5544, 7, 68, 2, 2, 5544, 5545, 7, 75, 2, 2, 5545, 5546, 7, 80, 2, 2, 5546, 5547, 7, 67, 2, 2, 5547, 5548, 7, 84, 2, 2, 5548, 5549, 7, 91, 2, 2, 5549, 224, 3, 2, 2, 2, 5550, 5551, 7, 68, 2, 2, 5551, 5552, 7, 75, 2, 2, 5552, 5553, 7, 80, 2, 2, 5553, 5554, 7, 67, 2, 2, 5554, 5555, 7, 84, 2, 2, 5555, 5556, 7, 91, 2, 2, 5556, 5557, 7, 97, 2, 2, 5557, 5558, 7, 70, 2, 2, 5558, 5559, 7, 81, 2, 2, 5559, 5560, 7, 87, 2, 2, 5560, 5561, 7, 68, 2, 2, 5561, 5562, 7, 78, 2, 2, 5562, 5563, 7, 71, 2, 2, 5563, 226, 3, 2, 2, 2, 5564, 5565, 7, 68, 2, 2, 5565, 5566, 7, 75, 2, 2, 5566, 5567, 7, 80, 2, 2, 5567, 5568, 7, 67, 2, 2, 5568, 5569, 7, 84, 2, 2, 5569, 5570, 7, 91, 2, 2, 5570, 5571, 7, 97, 2, 2, 5571, 5572, 7, 70, 2, 2, 5572, 5573, 7, 81, 2, 2, 5573, 5574, 7, 87, 2, 2, 5574, 5575, 7, 68, 2, 2, 5575, 5576, 7, 78, 2, 2, 5576, 5577, 7, 71, 2, 2, 5577, 5578, 7, 97, 2, 2, 5578, 5579, 7, 75, 2, 2, 5579, 5580, 7, 80, 2, 2, 5580, 5581, 7, 72, 2, 2, 5581, 5582, 7, 75, 2, 2, 5582, 5583, 7, 80, 2, 2, 5583, 5584, 7, 75, 2, 2, 5584, 5585, 7, 86, 2, 2, 5585, 5586, 7, 91, 2, 2, 5586, 228, 3, 2, 2, 2, 5587, 5588, 7, 68, 2, 2, 5588, 5589, 7, 75, 2, 2, 5589, 5590, 7, 80, 2, 2, 5590, 5591, 7, 67, 2, 2, 5591, 5592, 7, 84, 2, 2, 5592, 5593, 7, 91, 2, 2, 5593, 5594, 7, 97, 2, 2, 5594, 5595, 7, 70, 2, 2, 5595, 5596, 7, 81, 2, 2, 5596, 5597, 7, 87, 2, 2, 5597, 5598, 7, 68, 2, 2, 5598, 5599, 7, 78, 2, 2, 5599, 5600, 7, 71, 2, 2, 5600, 5601, 7, 97, 2, 2, 5601, 5602, 7, 80, 2, 2, 5602, 5603, 7, 67, 2, 2, 5603, 5604, 7, 80, 2, 2, 5604, 230, 3, 2, 2, 2, 5605, 5606, 7, 68, 2, 2, 5606, 5607, 7, 75, 2, 2, 5607, 5608, 7, 80, 2, 2, 5608, 5609, 7, 67, 2, 2, 5609, 5610, 7, 84, 2, 2, 5610, 5611, 7, 91, 2, 2, 5611, 5612, 7, 97, 2, 2, 5612, 5613, 7, 72, 2, 2, 5613, 5614, 7, 78, 2, 2, 5614, 5615, 7, 81, 2, 2, 5615, 5616, 7, 67, 2, 2, 5616, 5617, 7, 86, 2, 2, 5617, 232, 3, 2, 2, 2, 5618, 5619, 7, 68, 2, 2, 5619, 5620, 7, 75, 2, 2, 5620, 5621, 7, 80, 2, 2, 5621, 5622, 7, 67, 2, 2, 5622, 5623, 7, 84, 2, 2, 5623, 5624, 7, 91, 2, 2, 5624, 5625, 7, 97, 2, 2, 5625, 5626, 7, 72, 2, 2, 5626, 5627, 7, 78, 2, 2, 5627, 5628, 7, 81, 2, 2, 5628, 5629, 7, 67, 2, 2, 5629, 5630, 7, 86, 2, 2, 5630, 5631, 7, 97, 2, 2, 5631, 5632, 7, 75, 2, 2, 5632, 5633, 7, 80, 2, 2, 5633, 5634, 7, 72, 2, 2, 5634, 5635, 7, 75, 2, 2, 5635, 5636, 7, 80, 2, 2, 5636, 5637, 7, 75, 2, 2, 5637, 5638, 7, 86, 2, 2, 5638, 5639, 7, 91, 2, 2, 5639, 234, 3, 2, 2, 2, 5640, 5641, 7, 68, 2, 2, 5641, 5642, 7, 75, 2, 2, 5642, 5643, 7, 80, 2, 2, 5643, 5644, 7, 67, 2, 2, 5644, 5645, 7, 84, 2, 2, 5645, 5646, 7, 91, 2, 2, 5646, 5647, 7, 97, 2, 2, 5647, 5648, 7, 72, 2, 2, 5648, 5649, 7, 78, 2, 2, 5649, 5650, 7, 81, 2, 2, 5650, 5651, 7, 67, 2, 2, 5651, 5652, 7, 86, 2, 2, 5652, 5653, 7, 97, 2, 2, 5653, 5654, 7, 80, 2, 2, 5654, 5655, 7, 67, 2, 2, 5655, 5656, 7, 80, 2, 2, 5656, 236, 3, 2, 2, 2, 5657, 5658, 7, 68, 2, 2, 5658, 5659, 7, 75, 2, 2, 5659, 5660, 7, 80, 2, 2, 5660, 5661, 7, 67, 2, 2, 5661, 5662, 7, 84, 2, 2, 5662, 5663, 7, 91, 2, 2, 5663, 5664, 7, 97, 2, 2, 5664, 5665, 7, 75, 2, 2, 5665, 5666, 7, 80, 2, 2, 5666, 5667, 7, 86, 2, 2, 5667, 5668, 7, 71, 2, 2, 5668, 5669, 7, 73, 2, 2, 5669, 5670, 7, 71, 2, 2, 5670, 5671, 7, 84, 2, 2, 5671, 238, 3, 2, 2, 2, 5672, 5673, 7, 68, 2, 2, 5673, 5674, 7, 75, 2, 2, 5674, 5675, 7, 80, 2, 2, 5675, 5676, 7, 70, 2, 2, 5676, 5677, 7, 97, 2, 2, 5677, 5678, 7, 67, 2, 2, 5678, 5679, 7, 89, 2, 2, 5679, 5680, 7, 67, 2, 2, 5680, 5681, 7, 84, 2, 2, 5681, 5682, 7, 71, 2, 2, 5682, 240, 3, 2, 2, 2, 5683, 5684, 7, 68, 2, 2, 5684, 5685, 7, 75, 2, 2, 5685, 5686, 7, 80, 2, 2, 5686, 5687, 7, 70, 2, 2, 5687, 5688, 7, 75, 2, 2, 5688, 5689, 7, 80, 2, 2, 5689, 5690, 7, 73, 2, 2, 5690, 242, 3, 2, 2, 2, 5691, 5692, 7, 68, 2, 2, 5692, 5693, 7, 75, 2, 2, 5693, 5694, 7, 80, 2, 2, 5694, 5695, 7, 97, 2, 2, 5695, 5696, 7, 86, 2, 2, 5696, 5697, 7, 81, 2, 2, 5697, 5698, 7, 97, 2, 2, 5698, 5699, 7, 80, 2, 2, 5699, 5700, 7, 87, 2, 2, 5700, 5701, 7, 79, 2, 2, 5701, 244, 3, 2, 2, 2, 5702, 5703, 7, 68, 2, 2, 5703, 5704, 7, 75, 2, 2, 5704, 5705, 7, 86, 2, 2, 5705, 5706, 7, 67, 2, 2, 5706, 5707, 7, 80, 2, 2, 5707, 5708, 7, 70, 2, 2, 5708, 246, 3, 2, 2, 2, 5709, 5710, 7, 68, 2, 2, 5710, 5711, 7, 75, 2, 2, 5711, 5712, 7, 86, 2, 2, 5712, 5713, 7, 79, 2, 2, 5713, 5714, 7, 67, 2, 2, 5714, 5715, 7, 82, 2, 2, 5715, 5716, 7, 97, 2, 2, 5716, 5717, 7, 67, 2, 2, 5717, 5718, 7, 80, 2, 2, 5718, 5719, 7, 70, 2, 2, 5719, 248, 3, 2, 2, 2, 5720, 5721, 7, 68, 2, 2, 5721, 5722, 7, 75, 2, 2, 5722, 5723, 7, 86, 2, 2, 5723, 5724, 7, 79, 2, 2, 5724, 5725, 7, 67, 2, 2, 5725, 5726, 7, 82, 2, 2, 5726, 250, 3, 2, 2, 2, 5727, 5728, 7, 68, 2, 2, 5728, 5729, 7, 75, 2, 2, 5729, 5730, 7, 86, 2, 2, 5730, 5731, 7, 79, 2, 2, 5731, 5732, 7, 67, 2, 2, 5732, 5733, 7, 82, 2, 2, 5733, 5734, 7, 85, 2, 2, 5734, 252, 3, 2, 2, 2, 5735, 5736, 7, 68, 2, 2, 5736, 5737, 7, 75, 2, 2, 5737, 5738, 7, 86, 2, 2, 5738, 5739, 7, 79, 2, 2, 5739, 5740, 7, 67, 2, 2, 5740, 5741, 7, 82, 2, 2, 5741, 5742, 7, 97, 2, 2, 5742, 5743, 7, 86, 2, 2, 5743, 5744, 7, 84, 2, 2, 5744, 5745, 7, 71, 2, 2, 5745, 5746, 7, 71, 2, 2, 5746, 254, 3, 2, 2, 2, 5747, 5748, 7, 68, 2, 2, 5748, 5749, 7, 75, 2, 2, 5749, 5750, 7, 86, 2, 2, 5750, 5751, 7, 85, 2, 2, 5751, 256, 3, 2, 2, 2, 5752, 5753, 7, 68, 2, 2, 5753, 5754, 7, 78, 2, 2, 5754, 5755, 7, 81, 2, 2, 5755, 5756, 7, 68, 2, 2, 5756, 258, 3, 2, 2, 2, 5757, 5758, 7, 68, 2, 2, 5758, 5759, 7, 78, 2, 2, 5759, 5760, 7, 81, 2, 2, 5760, 5761, 7, 69, 2, 2, 5761, 5762, 7, 77, 2, 2, 5762, 260, 3, 2, 2, 2, 5763, 5764, 7, 68, 2, 2, 5764, 5765, 7, 78, 2, 2, 5765, 5766, 7, 81, 2, 2, 5766, 5767, 7, 69, 2, 2, 5767, 5768, 7, 77, 2, 2, 5768, 5769, 7, 97, 2, 2, 5769, 5770, 7, 84, 2, 2, 5770, 5771, 7, 67, 2, 2, 5771, 5772, 7, 80, 2, 2, 5772, 5773, 7, 73, 2, 2, 5773, 5774, 7, 71, 2, 2, 5774, 262, 3, 2, 2, 2, 5775, 5776, 7, 68, 2, 2, 5776, 5777, 7, 78, 2, 2, 5777, 5778, 7, 81, 2, 2, 5778, 5779, 7, 69, 2, 2, 5779, 5780, 7, 77, 2, 2, 5780, 5781, 7, 85, 2, 2, 5781, 264, 3, 2, 2, 2, 5782, 5783, 7, 68, 2, 2, 5783, 5784, 7, 78, 2, 2, 5784, 5785, 7, 81, 2, 2, 5785, 5786, 7, 69, 2, 2, 5786, 5787, 7, 77, 2, 2, 5787, 5788, 7, 85, 2, 2, 5788, 5789, 7, 75, 2, 2, 5789, 5790, 7, 92, 2, 2, 5790, 5791, 7, 71, 2, 2, 5791, 266, 3, 2, 2, 2, 5792, 5793, 7, 68, 2, 2, 5793, 5794, 7, 81, 2, 2, 5794, 5795, 7, 70, 2, 2, 5795, 5796, 7, 91, 2, 2, 5796, 268, 3, 2, 2, 2, 5797, 5798, 7, 68, 2, 2, 5798, 5799, 7, 81, 2, 2, 5799, 5800, 7, 81, 2, 2, 5800, 5801, 7, 78, 2, 2, 5801, 5802, 7, 71, 2, 2, 5802, 5803, 7, 67, 2, 2, 5803, 5804, 7, 80, 2, 2, 5804, 270, 3, 2, 2, 2, 5805, 5806, 7, 68, 2, 2, 5806, 5807, 7, 81, 2, 2, 5807, 5808, 7, 86, 2, 2, 5808, 5809, 7, 74, 2, 2, 5809, 272, 3, 2, 2, 2, 5810, 5811, 7, 68, 2, 2, 5811, 5812, 7, 81, 2, 2, 5812, 5813, 7, 87, 2, 2, 5813, 5814, 7, 80, 2, 2, 5814, 5815, 7, 70, 2, 2, 5815, 274, 3, 2, 2, 2, 5816, 5817, 7, 68, 2, 2, 5817, 5818, 7, 84, 2, 2, 5818, 5819, 7, 67, 2, 2, 5819, 5820, 7, 80, 2, 2, 5820, 5821, 7, 69, 2, 2, 5821, 5822, 7, 74, 2, 2, 5822, 276, 3, 2, 2, 2, 5823, 5824, 7, 68, 2, 2, 5824, 5825, 7, 84, 2, 2, 5825, 5826, 7, 71, 2, 2, 5826, 5827, 7, 67, 2, 2, 5827, 5828, 7, 70, 2, 2, 5828, 5829, 7, 86, 2, 2, 5829, 5830, 7, 74, 2, 2, 5830, 278, 3, 2, 2, 2, 5831, 5832, 7, 68, 2, 2, 5832, 5833, 7, 84, 2, 2, 5833, 5834, 7, 81, 2, 2, 5834, 5835, 7, 67, 2, 2, 5835, 5836, 7, 70, 2, 2, 5836, 5837, 7, 69, 2, 2, 5837, 5838, 7, 67, 2, 2, 5838, 5839, 7, 85, 2, 2, 5839, 5840, 7, 86, 2, 2, 5840, 280, 3, 2, 2, 2, 5841, 5842, 7, 68, 2, 2, 5842, 5843, 7, 85, 2, 2, 5843, 5844, 7, 81, 2, 2, 5844, 5845, 7, 80, 2, 2, 5845, 282, 3, 2, 2, 2, 5846, 5847, 7, 68, 2, 2, 5847, 5848, 7, 87, 2, 2, 5848, 5849, 7, 72, 2, 2, 5849, 5850, 7, 72, 2, 2, 5850, 5851, 7, 71, 2, 2, 5851, 5852, 7, 84, 2, 2, 5852, 284, 3, 2, 2, 2, 5853, 5854, 7, 68, 2, 2, 5854, 5855, 7, 87, 2, 2, 5855, 5856, 7, 72, 2, 2, 5856, 5857, 7, 72, 2, 2, 5857, 5858, 7, 71, 2, 2, 5858, 5859, 7, 84, 2, 2, 5859, 5860, 7, 97, 2, 2, 5860, 5861, 7, 69, 2, 2, 5861, 5862, 7, 67, 2, 2, 5862, 5863, 7, 69, 2, 2, 5863, 5864, 7, 74, 2, 2, 5864, 5865, 7, 71, 2, 2, 5865, 286, 3, 2, 2, 2, 5866, 5867, 7, 68, 2, 2, 5867, 5868, 7, 87, 2, 2, 5868, 5869, 7, 72, 2, 2, 5869, 5870, 7, 72, 2, 2, 5870, 5871, 7, 71, 2, 2, 5871, 5872, 7, 84, 2, 2, 5872, 5873, 7, 97, 2, 2, 5873, 5874, 7, 82, 2, 2, 5874, 5875, 7, 81, 2, 2, 5875, 5876, 7, 81, 2, 2, 5876, 5877, 7, 78, 2, 2, 5877, 288, 3, 2, 2, 2, 5878, 5879, 7, 68, 2, 2, 5879, 5880, 7, 87, 2, 2, 5880, 5881, 7, 75, 2, 2, 5881, 5882, 7, 78, 2, 2, 5882, 5883, 7, 70, 2, 2, 5883, 290, 3, 2, 2, 2, 5884, 5885, 7, 68, 2, 2, 5885, 5886, 7, 87, 2, 2, 5886, 5887, 7, 78, 2, 2, 5887, 5888, 7, 77, 2, 2, 5888, 292, 3, 2, 2, 2, 5889, 5890, 7, 68, 2, 2, 5890, 5891, 7, 91, 2, 2, 5891, 294, 3, 2, 2, 2, 5892, 5893, 7, 68, 2, 2, 5893, 5894, 7, 91, 2, 2, 5894, 5895, 7, 82, 2, 2, 5895, 5896, 7, 67, 2, 2, 5896, 5897, 7, 85, 2, 2, 5897, 5898, 7, 85, 2, 2, 5898, 5899, 7, 97, 2, 2, 5899, 5900, 7, 84, 2, 2, 5900, 5901, 7, 71, 2, 2, 5901, 5902, 7, 69, 2, 2, 5902, 5903, 7, 87, 2, 2, 5903, 5904, 7, 84, 2, 2, 5904, 5905, 7, 85, 2, 2, 5905, 5906, 7, 75, 2, 2, 5906, 5907, 7, 88, 2, 2, 5907, 5908, 7, 71, 2, 2, 5908, 5909, 7, 97, 2, 2, 5909, 5910, 7, 69, 2, 2, 5910, 5911, 7, 74, 2, 2, 5911, 5912, 7, 71, 2, 2, 5912, 5913, 7, 69, 2, 2, 5913, 5914, 7, 77, 2, 2, 5914, 296, 3, 2, 2, 2, 5915, 5916, 7, 68, 2, 2, 5916, 5917, 7, 91, 2, 2, 5917, 5918, 7, 82, 2, 2, 5918, 5919, 7, 67, 2, 2, 5919, 5920, 7, 85, 2, 2, 5920, 5921, 7, 85, 2, 2, 5921, 5922, 7, 97, 2, 2, 5922, 5923, 7, 87, 2, 2, 5923, 5924, 7, 76, 2, 2, 5924, 5925, 7, 88, 2, 2, 5925, 5926, 7, 69, 2, 2, 5926, 298, 3, 2, 2, 2, 5927, 5928, 7, 68, 2, 2, 5928, 5929, 7, 91, 2, 2, 5929, 5930, 7, 86, 2, 2, 5930, 5931, 7, 71, 2, 2, 5931, 300, 3, 2, 2, 2, 5932, 5933, 7, 69, 2, 2, 5933, 5934, 7, 67, 2, 2, 5934, 5935, 7, 69, 2, 2, 5935, 5936, 7, 74, 2, 2, 5936, 5937, 7, 71, 2, 2, 5937, 302, 3, 2, 2, 2, 5938, 5939, 7, 69, 2, 2, 5939, 5940, 7, 67, 2, 2, 5940, 5941, 7, 69, 2, 2, 5941, 5942, 7, 74, 2, 2, 5942, 5943, 7, 71, 2, 2, 5943, 5944, 7, 97, 2, 2, 5944, 5945, 7, 69, 2, 2, 5945, 5946, 7, 68, 2, 2, 5946, 304, 3, 2, 2, 2, 5947, 5948, 7, 69, 2, 2, 5948, 5949, 7, 67, 2, 2, 5949, 5950, 7, 69, 2, 2, 5950, 5951, 7, 74, 2, 2, 5951, 5952, 7, 71, 2, 2, 5952, 5953, 7, 97, 2, 2, 5953, 5954, 7, 75, 2, 2, 5954, 5955, 7, 80, 2, 2, 5955, 5956, 7, 85, 2, 2, 5956, 5957, 7, 86, 2, 2, 5957, 5958, 7, 67, 2, 2, 5958, 5959, 7, 80, 2, 2, 5959, 5960, 7, 69, 2, 2, 5960, 5961, 7, 71, 2, 2, 5961, 5962, 7, 85, 2, 2, 5962, 306, 3, 2, 2, 2, 5963, 5964, 7, 69, 2, 2, 5964, 5965, 7, 67, 2, 2, 5965, 5966, 7, 69, 2, 2, 5966, 5967, 7, 74, 2, 2, 5967, 5968, 7, 71, 2, 2, 5968, 5969, 7, 97, 2, 2, 5969, 5970, 7, 86, 2, 2, 5970, 5971, 7, 71, 2, 2, 5971, 5972, 7, 79, 2, 2, 5972, 5973, 7, 82, 2, 2, 5973, 5974, 7, 97, 2, 2, 5974, 5975, 7, 86, 2, 2, 5975, 5976, 7, 67, 2, 2, 5976, 5977, 7, 68, 2, 2, 5977, 5978, 7, 78, 2, 2, 5978, 5979, 7, 71, 2, 2, 5979, 308, 3, 2, 2, 2, 5980, 5981, 7, 69, 2, 2, 5981, 5982, 7, 67, 2, 2, 5982, 5983, 7, 69, 2, 2, 5983, 5984, 7, 74, 2, 2, 5984, 5985, 7, 75, 2, 2, 5985, 5986, 7, 80, 2, 2, 5986, 5987, 7, 73, 2, 2, 5987, 310, 3, 2, 2, 2, 5988, 5989, 7, 69, 2, 2, 5989, 5990, 7, 67, 2, 2, 5990, 5991, 7, 78, 2, 2, 5991, 5992, 7, 69, 2, 2, 5992, 5993, 7, 87, 2, 2, 5993, 5994, 7, 78, 2, 2, 5994, 5995, 7, 67, 2, 2, 5995, 5996, 7, 86, 2, 2, 5996, 5997, 7, 71, 2, 2, 5997, 5998, 7, 70, 2, 2, 5998, 312, 3, 2, 2, 2, 5999, 6000, 7, 69, 2, 2, 6000, 6001, 7, 67, 2, 2, 6001, 6002, 7, 78, 2, 2, 6002, 6003, 7, 78, 2, 2, 6003, 6004, 7, 68, 2, 2, 6004, 6005, 7, 67, 2, 2, 6005, 6006, 7, 69, 2, 2, 6006, 6007, 7, 77, 2, 2, 6007, 314, 3, 2, 2, 2, 6008, 6009, 7, 69, 2, 2, 6009, 6010, 7, 67, 2, 2, 6010, 6011, 7, 78, 2, 2, 6011, 6012, 7, 78, 2, 2, 6012, 316, 3, 2, 2, 2, 6013, 6014, 7, 69, 2, 2, 6014, 6015, 7, 67, 2, 2, 6015, 6016, 7, 80, 2, 2, 6016, 6017, 7, 69, 2, 2, 6017, 6018, 7, 71, 2, 2, 6018, 6019, 7, 78, 2, 2, 6019, 318, 3, 2, 2, 2, 6020, 6021, 7, 69, 2, 2, 6021, 6022, 7, 67, 2, 2, 6022, 6023, 7, 80, 2, 2, 6023, 6024, 7, 81, 2, 2, 6024, 6025, 7, 80, 2, 2, 6025, 6026, 7, 75, 2, 2, 6026, 6027, 7, 69, 2, 2, 6027, 6028, 7, 67, 2, 2, 6028, 6029, 7, 78, 2, 2, 6029, 320, 3, 2, 2, 2, 6030, 6031, 7, 69, 2, 2, 6031, 6032, 7, 67, 2, 2, 6032, 6033, 7, 82, 2, 2, 6033, 6034, 7, 67, 2, 2, 6034, 6035, 7, 69, 2, 2, 6035, 6036, 7, 75, 2, 2, 6036, 6037, 7, 86, 2, 2, 6037, 6038, 7, 91, 2, 2, 6038, 322, 3, 2, 2, 2, 6039, 6040, 7, 69, 2, 2, 6040, 6041, 7, 67, 2, 2, 6041, 6042, 7, 84, 2, 2, 6042, 6043, 7, 70, 2, 2, 6043, 6044, 7, 75, 2, 2, 6044, 6045, 7, 80, 2, 2, 6045, 6046, 7, 67, 2, 2, 6046, 6047, 7, 78, 2, 2, 6047, 6048, 7, 75, 2, 2, 6048, 6049, 7, 86, 2, 2, 6049, 6050, 7, 91, 2, 2, 6050, 324, 3, 2, 2, 2, 6051, 6052, 7, 69, 2, 2, 6052, 6053, 7, 67, 2, 2, 6053, 6054, 7, 85, 2, 2, 6054, 6055, 7, 69, 2, 2, 6055, 6056, 7, 67, 2, 2, 6056, 6057, 7, 70, 2, 2, 6057, 6058, 7, 71, 2, 2, 6058, 326, 3, 2, 2, 2, 6059, 6060, 7, 69, 2, 2, 6060, 6061, 7, 67, 2, 2, 6061, 6062, 7, 85, 2, 2, 6062, 6063, 7, 71, 2, 2, 6063, 328, 3, 2, 2, 2, 6064, 6065, 7, 69, 2, 2, 6065, 6066, 7, 67, 2, 2, 6066, 6067, 7, 85, 2, 2, 6067, 6068, 7, 86, 2, 2, 6068, 330, 3, 2, 2, 2, 6069, 6070, 7, 69, 2, 2, 6070, 6071, 7, 67, 2, 2, 6071, 6072, 7, 86, 2, 2, 6072, 6073, 7, 71, 2, 2, 6073, 6074, 7, 73, 2, 2, 6074, 6075, 7, 81, 2, 2, 6075, 6076, 7, 84, 2, 2, 6076, 6077, 7, 91, 2, 2, 6077, 332, 3, 2, 2, 2, 6078, 6079, 7, 69, 2, 2, 6079, 6080, 7, 70, 2, 2, 6080, 6081, 7, 68, 2, 2, 6081, 6082, 7, 38, 2, 2, 6082, 6083, 7, 70, 2, 2, 6083, 6084, 7, 71, 2, 2, 6084, 6085, 7, 72, 2, 2, 6085, 6086, 7, 67, 2, 2, 6086, 6087, 7, 87, 2, 2, 6087, 6088, 7, 78, 2, 2, 6088, 6089, 7, 86, 2, 2, 6089, 334, 3, 2, 2, 2, 6090, 6091, 7, 69, 2, 2, 6091, 6092, 7, 71, 2, 2, 6092, 6093, 7, 75, 2, 2, 6093, 6094, 7, 78, 2, 2, 6094, 336, 3, 2, 2, 2, 6095, 6096, 7, 69, 2, 2, 6096, 6097, 7, 71, 2, 2, 6097, 6098, 7, 78, 2, 2, 6098, 6099, 7, 78, 2, 2, 6099, 6100, 7, 97, 2, 2, 6100, 6101, 7, 72, 2, 2, 6101, 6102, 7, 78, 2, 2, 6102, 6103, 7, 67, 2, 2, 6103, 6104, 7, 85, 2, 2, 6104, 6105, 7, 74, 2, 2, 6105, 6106, 7, 97, 2, 2, 6106, 6107, 7, 69, 2, 2, 6107, 6108, 7, 67, 2, 2, 6108, 6109, 7, 69, 2, 2, 6109, 6110, 7, 74, 2, 2, 6110, 6111, 7, 71, 2, 2, 6111, 338, 3, 2, 2, 2, 6112, 6113, 7, 69, 2, 2, 6113, 6114, 7, 71, 2, 2, 6114, 6115, 7, 84, 2, 2, 6115, 6116, 7, 86, 2, 2, 6116, 6117, 7, 75, 2, 2, 6117, 6118, 7, 72, 2, 2, 6118, 6119, 7, 75, 2, 2, 6119, 6120, 7, 69, 2, 2, 6120, 6121, 7, 67, 2, 2, 6121, 6122, 7, 86, 2, 2, 6122, 6123, 7, 71, 2, 2, 6123, 340, 3, 2, 2, 2, 6124, 6125, 7, 69, 2, 2, 6125, 6126, 7, 72, 2, 2, 6126, 6127, 7, 75, 2, 2, 6127, 6128, 7, 78, 2, 2, 6128, 6129, 7, 71, 2, 2, 6129, 342, 3, 2, 2, 2, 6130, 6131, 7, 69, 2, 2, 6131, 6132, 7, 74, 2, 2, 6132, 6133, 7, 67, 2, 2, 6133, 6134, 7, 75, 2, 2, 6134, 6135, 7, 80, 2, 2, 6135, 6136, 7, 71, 2, 2, 6136, 6137, 7, 70, 2, 2, 6137, 344, 3, 2, 2, 2, 6138, 6139, 7, 69, 2, 2, 6139, 6140, 7, 74, 2, 2, 6140, 6141, 7, 67, 2, 2, 6141, 6142, 7, 80, 2, 2, 6142, 6143, 7, 73, 2, 2, 6143, 6144, 7, 71, 2, 2, 6144, 346, 3, 2, 2, 2, 6145, 6146, 7, 69, 2, 2, 6146, 6147, 7, 74, 2, 2, 6147, 6148, 7, 67, 2, 2, 6148, 6149, 7, 80, 2, 2, 6149, 6150, 7, 73, 2, 2, 6150, 6151, 7, 71, 2, 2, 6151, 6152, 7, 86, 2, 2, 6152, 6153, 7, 84, 2, 2, 6153, 6154, 7, 67, 2, 2, 6154, 6155, 7, 69, 2, 2, 6155, 6156, 7, 77, 2, 2, 6156, 6157, 7, 75, 2, 2, 6157, 6158, 7, 80, 2, 2, 6158, 6159, 7, 73, 2, 2, 6159, 348, 3, 2, 2, 2, 6160, 6161, 7, 69, 2, 2, 6161, 6162, 7, 74, 2, 2, 6162, 6163, 7, 67, 2, 2, 6163, 6164, 7, 80, 2, 2, 6164, 6165, 7, 73, 2, 2, 6165, 6166, 7, 71, 2, 2, 6166, 6167, 7, 97, 2, 2, 6167, 6168, 7, 70, 2, 2, 6168, 6169, 7, 87, 2, 2, 6169, 6170, 7, 82, 2, 2, 6170, 6171, 7, 77, 2, 2, 6171, 6172, 7, 71, 2, 2, 6172, 6173, 7, 91, 2, 2, 6173, 6174, 7, 97, 2, 2, 6174, 6175, 7, 71, 2, 2, 6175, 6176, 7, 84, 2, 2, 6176, 6177, 7, 84, 2, 2, 6177, 6178, 7, 81, 2, 2, 6178, 6179, 7, 84, 2, 2, 6179, 6180, 7, 97, 2, 2, 6180, 6181, 7, 75, 2, 2, 6181, 6182, 7, 80, 2, 2, 6182, 6183, 7, 70, 2, 2, 6183, 6184, 7, 71, 2, 2, 6184, 6185, 7, 90, 2, 2, 6185, 350, 3, 2, 2, 2, 6186, 6187, 7, 69, 2, 2, 6187, 6188, 7, 74, 2, 2, 6188, 6189, 7, 67, 2, 2, 6189, 6190, 7, 84, 2, 2, 6190, 6191, 7, 67, 2, 2, 6191, 6192, 7, 69, 2, 2, 6192, 6193, 7, 86, 2, 2, 6193, 6194, 7, 71, 2, 2, 6194, 6195, 7, 84, 2, 2, 6195, 352, 3, 2, 2, 2, 6196, 6197, 7, 69, 2, 2, 6197, 6198, 7, 74, 2, 2, 6198, 6199, 7, 67, 2, 2, 6199, 6200, 7, 84, 2, 2, 6200, 354, 3, 2, 2, 2, 6201, 6202, 7, 69, 2, 2, 6202, 6203, 7, 74, 2, 2, 6203, 6204, 7, 67, 2, 2, 6204, 6205, 7, 84, 2, 2, 6205, 6206, 7, 97, 2, 2, 6206, 6207, 7, 69, 2, 2, 6207, 6208, 7, 85, 2, 2, 6208, 356, 3, 2, 2, 2, 6209, 6210, 7, 69, 2, 2, 6210, 6211, 7, 74, 2, 2, 6211, 6212, 7, 67, 2, 2, 6212, 6213, 7, 84, 2, 2, 6213, 6214, 7, 86, 2, 2, 6214, 6215, 7, 81, 2, 2, 6215, 6216, 7, 84, 2, 2, 6216, 6217, 7, 81, 2, 2, 6217, 6218, 7, 89, 2, 2, 6218, 6219, 7, 75, 2, 2, 6219, 6220, 7, 70, 2, 2, 6220, 358, 3, 2, 2, 2, 6221, 6222, 7, 69, 2, 2, 6222, 6223, 7, 74, 2, 2, 6223, 6224, 7, 71, 2, 2, 6224, 6225, 7, 69, 2, 2, 6225, 6226, 7, 77, 2, 2, 6226, 6227, 7, 97, 2, 2, 6227, 6228, 7, 67, 2, 2, 6228, 6229, 7, 69, 2, 2, 6229, 6230, 7, 78, 2, 2, 6230, 6231, 7, 97, 2, 2, 6231, 6232, 7, 84, 2, 2, 6232, 6233, 7, 71, 2, 2, 6233, 6234, 7, 89, 2, 2, 6234, 6235, 7, 84, 2, 2, 6235, 6236, 7, 75, 2, 2, 6236, 6237, 7, 86, 2, 2, 6237, 6238, 7, 71, 2, 2, 6238, 360, 3, 2, 2, 2, 6239, 6240, 7, 69, 2, 2, 6240, 6241, 7, 74, 2, 2, 6241, 6242, 7, 71, 2, 2, 6242, 6243, 7, 69, 2, 2, 6243, 6244, 7, 77, 2, 2, 6244, 362, 3, 2, 2, 2, 6245, 6246, 7, 69, 2, 2, 6246, 6247, 7, 74, 2, 2, 6247, 6248, 7, 71, 2, 2, 6248, 6249, 7, 69, 2, 2, 6249, 6250, 7, 77, 2, 2, 6250, 6251, 7, 82, 2, 2, 6251, 6252, 7, 81, 2, 2, 6252, 6253, 7, 75, 2, 2, 6253, 6254, 7, 80, 2, 2, 6254, 6255, 7, 86, 2, 2, 6255, 364, 3, 2, 2, 2, 6256, 6257, 7, 69, 2, 2, 6257, 6258, 7, 74, 2, 2, 6258, 6259, 7, 75, 2, 2, 6259, 6260, 7, 78, 2, 2, 6260, 6261, 7, 70, 2, 2, 6261, 366, 3, 2, 2, 2, 6262, 6263, 7, 69, 2, 2, 6263, 6264, 7, 74, 2, 2, 6264, 6265, 7, 81, 2, 2, 6265, 6266, 7, 81, 2, 2, 6266, 6267, 7, 85, 2, 2, 6267, 6268, 7, 71, 2, 2, 6268, 368, 3, 2, 2, 2, 6269, 6270, 7, 69, 2, 2, 6270, 6271, 7, 74, 2, 2, 6271, 6272, 7, 84, 2, 2, 6272, 370, 3, 2, 2, 2, 6273, 6274, 7, 69, 2, 2, 6274, 6275, 7, 74, 2, 2, 6275, 6276, 7, 87, 2, 2, 6276, 6277, 7, 80, 2, 2, 6277, 6278, 7, 77, 2, 2, 6278, 372, 3, 2, 2, 2, 6279, 6280, 7, 69, 2, 2, 6280, 6281, 7, 78, 2, 2, 6281, 6282, 7, 67, 2, 2, 6282, 6283, 7, 85, 2, 2, 6283, 6284, 7, 85, 2, 2, 6284, 374, 3, 2, 2, 2, 6285, 6286, 7, 69, 2, 2, 6286, 6287, 7, 78, 2, 2, 6287, 6288, 7, 67, 2, 2, 6288, 6289, 7, 85, 2, 2, 6289, 6290, 7, 85, 2, 2, 6290, 6291, 7, 75, 2, 2, 6291, 6292, 7, 72, 2, 2, 6292, 6293, 7, 75, 2, 2, 6293, 6294, 7, 71, 2, 2, 6294, 6295, 7, 84, 2, 2, 6295, 376, 3, 2, 2, 2, 6296, 6297, 7, 69, 2, 2, 6297, 6298, 7, 78, 2, 2, 6298, 6299, 7, 71, 2, 2, 6299, 6300, 7, 67, 2, 2, 6300, 6301, 7, 80, 2, 2, 6301, 6302, 7, 87, 2, 2, 6302, 6303, 7, 82, 2, 2, 6303, 378, 3, 2, 2, 2, 6304, 6305, 7, 69, 2, 2, 6305, 6306, 7, 78, 2, 2, 6306, 6307, 7, 71, 2, 2, 6307, 6308, 7, 67, 2, 2, 6308, 6309, 7, 84, 2, 2, 6309, 380, 3, 2, 2, 2, 6310, 6311, 7, 69, 2, 2, 6311, 382, 3, 2, 2, 2, 6312, 6313, 7, 69, 2, 2, 6313, 6314, 7, 78, 2, 2, 6314, 6315, 7, 75, 2, 2, 6315, 6316, 7, 71, 2, 2, 6316, 6317, 7, 80, 2, 2, 6317, 6318, 7, 86, 2, 2, 6318, 384, 3, 2, 2, 2, 6319, 6320, 7, 69, 2, 2, 6320, 6321, 7, 78, 2, 2, 6321, 6322, 7, 81, 2, 2, 6322, 6323, 7, 68, 2, 2, 6323, 386, 3, 2, 2, 2, 6324, 6325, 7, 69, 2, 2, 6325, 6326, 7, 78, 2, 2, 6326, 6327, 7, 81, 2, 2, 6327, 6328, 7, 80, 2, 2, 6328, 6329, 7, 71, 2, 2, 6329, 388, 3, 2, 2, 2, 6330, 6331, 7, 69, 2, 2, 6331, 6332, 7, 78, 2, 2, 6332, 6333, 7, 81, 2, 2, 6333, 6334, 7, 85, 2, 2, 6334, 6335, 7, 71, 2, 2, 6335, 6336, 7, 97, 2, 2, 6336, 6337, 7, 69, 2, 2, 6337, 6338, 7, 67, 2, 2, 6338, 6339, 7, 69, 2, 2, 6339, 6340, 7, 74, 2, 2, 6340, 6341, 7, 71, 2, 2, 6341, 6342, 7, 70, 2, 2, 6342, 6343, 7, 97, 2, 2, 6343, 6344, 7, 81, 2, 2, 6344, 6345, 7, 82, 2, 2, 6345, 6346, 7, 71, 2, 2, 6346, 6347, 7, 80, 2, 2, 6347, 6348, 7, 97, 2, 2, 6348, 6349, 7, 69, 2, 2, 6349, 6350, 7, 87, 2, 2, 6350, 6351, 7, 84, 2, 2, 6351, 6352, 7, 85, 2, 2, 6352, 6353, 7, 81, 2, 2, 6353, 6354, 7, 84, 2, 2, 6354, 6355, 7, 85, 2, 2, 6355, 390, 3, 2, 2, 2, 6356, 6357, 7, 69, 2, 2, 6357, 6358, 7, 78, 2, 2, 6358, 6359, 7, 81, 2, 2, 6359, 6360, 7, 85, 2, 2, 6360, 6361, 7, 71, 2, 2, 6361, 392, 3, 2, 2, 2, 6362, 6363, 7, 69, 2, 2, 6363, 6364, 7, 78, 2, 2, 6364, 6365, 7, 87, 2, 2, 6365, 6366, 7, 85, 2, 2, 6366, 6367, 7, 86, 2, 2, 6367, 6368, 7, 71, 2, 2, 6368, 6369, 7, 84, 2, 2, 6369, 6370, 7, 97, 2, 2, 6370, 6371, 7, 68, 2, 2, 6371, 6372, 7, 91, 2, 2, 6372, 6373, 7, 97, 2, 2, 6373, 6374, 7, 84, 2, 2, 6374, 6375, 7, 81, 2, 2, 6375, 6376, 7, 89, 2, 2, 6376, 6377, 7, 75, 2, 2, 6377, 6378, 7, 70, 2, 2, 6378, 394, 3, 2, 2, 2, 6379, 6380, 7, 69, 2, 2, 6380, 6381, 7, 78, 2, 2, 6381, 6382, 7, 87, 2, 2, 6382, 6383, 7, 85, 2, 2, 6383, 6384, 7, 86, 2, 2, 6384, 6385, 7, 71, 2, 2, 6385, 6386, 7, 84, 2, 2, 6386, 396, 3, 2, 2, 2, 6387, 6388, 7, 69, 2, 2, 6388, 6389, 7, 78, 2, 2, 6389, 6390, 7, 87, 2, 2, 6390, 6391, 7, 85, 2, 2, 6391, 6392, 7, 86, 2, 2, 6392, 6393, 7, 71, 2, 2, 6393, 6394, 7, 84, 2, 2, 6394, 6395, 7, 97, 2, 2, 6395, 6396, 7, 70, 2, 2, 6396, 6397, 7, 71, 2, 2, 6397, 6398, 7, 86, 2, 2, 6398, 6399, 7, 67, 2, 2, 6399, 6400, 7, 75, 2, 2, 6400, 6401, 7, 78, 2, 2, 6401, 6402, 7, 85, 2, 2, 6402, 398, 3, 2, 2, 2, 6403, 6404, 7, 69, 2, 2, 6404, 6405, 7, 78, 2, 2, 6405, 6406, 7, 87, 2, 2, 6406, 6407, 7, 85, 2, 2, 6407, 6408, 7, 86, 2, 2, 6408, 6409, 7, 71, 2, 2, 6409, 6410, 7, 84, 2, 2, 6410, 6411, 7, 97, 2, 2, 6411, 6412, 7, 70, 2, 2, 6412, 6413, 7, 75, 2, 2, 6413, 6414, 7, 85, 2, 2, 6414, 6415, 7, 86, 2, 2, 6415, 6416, 7, 67, 2, 2, 6416, 6417, 7, 80, 2, 2, 6417, 6418, 7, 69, 2, 2, 6418, 6419, 7, 71, 2, 2, 6419, 400, 3, 2, 2, 2, 6420, 6421, 7, 69, 2, 2, 6421, 6422, 7, 78, 2, 2, 6422, 6423, 7, 87, 2, 2, 6423, 6424, 7, 85, 2, 2, 6424, 6425, 7, 86, 2, 2, 6425, 6426, 7, 71, 2, 2, 6426, 6427, 7, 84, 2, 2, 6427, 6428, 7, 97, 2, 2, 6428, 6429, 7, 75, 2, 2, 6429, 6430, 7, 70, 2, 2, 6430, 402, 3, 2, 2, 2, 6431, 6432, 7, 69, 2, 2, 6432, 6433, 7, 78, 2, 2, 6433, 6434, 7, 87, 2, 2, 6434, 6435, 7, 85, 2, 2, 6435, 6436, 7, 86, 2, 2, 6436, 6437, 7, 71, 2, 2, 6437, 6438, 7, 84, 2, 2, 6438, 6439, 7, 75, 2, 2, 6439, 6440, 7, 80, 2, 2, 6440, 6441, 7, 73, 2, 2, 6441, 404, 3, 2, 2, 2, 6442, 6443, 7, 69, 2, 2, 6443, 6444, 7, 78, 2, 2, 6444, 6445, 7, 87, 2, 2, 6445, 6446, 7, 85, 2, 2, 6446, 6447, 7, 86, 2, 2, 6447, 6448, 7, 71, 2, 2, 6448, 6449, 7, 84, 2, 2, 6449, 6450, 7, 75, 2, 2, 6450, 6451, 7, 80, 2, 2, 6451, 6452, 7, 73, 2, 2, 6452, 6453, 7, 97, 2, 2, 6453, 6454, 7, 72, 2, 2, 6454, 6455, 7, 67, 2, 2, 6455, 6456, 7, 69, 2, 2, 6456, 6457, 7, 86, 2, 2, 6457, 6458, 7, 81, 2, 2, 6458, 6459, 7, 84, 2, 2, 6459, 406, 3, 2, 2, 2, 6460, 6461, 7, 69, 2, 2, 6461, 6462, 7, 78, 2, 2, 6462, 6463, 7, 87, 2, 2, 6463, 6464, 7, 85, 2, 2, 6464, 6465, 7, 86, 2, 2, 6465, 6466, 7, 71, 2, 2, 6466, 6467, 7, 84, 2, 2, 6467, 6468, 7, 97, 2, 2, 6468, 6469, 7, 82, 2, 2, 6469, 6470, 7, 84, 2, 2, 6470, 6471, 7, 81, 2, 2, 6471, 6472, 7, 68, 2, 2, 6472, 6473, 7, 67, 2, 2, 6473, 6474, 7, 68, 2, 2, 6474, 6475, 7, 75, 2, 2, 6475, 6476, 7, 78, 2, 2, 6476, 6477, 7, 75, 2, 2, 6477, 6478, 7, 86, 2, 2, 6478, 6479, 7, 91, 2, 2, 6479, 408, 3, 2, 2, 2, 6480, 6481, 7, 69, 2, 2, 6481, 6482, 7, 78, 2, 2, 6482, 6483, 7, 87, 2, 2, 6483, 6484, 7, 85, 2, 2, 6484, 6485, 7, 86, 2, 2, 6485, 6486, 7, 71, 2, 2, 6486, 6487, 7, 84, 2, 2, 6487, 6488, 7, 97, 2, 2, 6488, 6489, 7, 85, 2, 2, 6489, 6490, 7, 71, 2, 2, 6490, 6491, 7, 86, 2, 2, 6491, 410, 3, 2, 2, 2, 6492, 6493, 7, 69, 2, 2, 6493, 6494, 7, 81, 2, 2, 6494, 6495, 7, 67, 2, 2, 6495, 6496, 7, 78, 2, 2, 6496, 6497, 7, 71, 2, 2, 6497, 6498, 7, 85, 2, 2, 6498, 6499, 7, 69, 2, 2, 6499, 6500, 7, 71, 2, 2, 6500, 412, 3, 2, 2, 2, 6501, 6502, 7, 69, 2, 2, 6502, 6503, 7, 81, 2, 2, 6503, 6504, 7, 67, 2, 2, 6504, 6505, 7, 78, 2, 2, 6505, 6506, 7, 71, 2, 2, 6506, 6507, 7, 85, 2, 2, 6507, 6508, 7, 69, 2, 2, 6508, 6509, 7, 71, 2, 2, 6509, 6510, 7, 97, 2, 2, 6510, 6511, 7, 85, 2, 2, 6511, 6512, 7, 83, 2, 2, 6512, 414, 3, 2, 2, 2, 6513, 6514, 7, 69, 2, 2, 6514, 6515, 7, 81, 2, 2, 6515, 6516, 7, 67, 2, 2, 6516, 6517, 7, 84, 2, 2, 6517, 6518, 7, 85, 2, 2, 6518, 6519, 7, 71, 2, 2, 6519, 416, 3, 2, 2, 2, 6520, 6521, 7, 69, 2, 2, 6521, 6522, 7, 81, 2, 2, 6522, 6523, 7, 97, 2, 2, 6523, 6524, 7, 67, 2, 2, 6524, 6525, 7, 87, 2, 2, 6525, 6526, 7, 86, 2, 2, 6526, 6527, 7, 74, 2, 2, 6527, 6528, 7, 97, 2, 2, 6528, 6529, 7, 75, 2, 2, 6529, 6530, 7, 80, 2, 2, 6530, 6531, 7, 70, 2, 2, 6531, 418, 3, 2, 2, 2, 6532, 6533, 7, 69, 2, 2, 6533, 6534, 7, 81, 2, 2, 6534, 6535, 7, 78, 2, 2, 6535, 6536, 7, 70, 2, 2, 6536, 420, 3, 2, 2, 2, 6537, 6538, 7, 69, 2, 2, 6538, 6539, 7, 81, 2, 2, 6539, 6540, 7, 78, 2, 2, 6540, 6541, 7, 78, 2, 2, 6541, 6542, 7, 71, 2, 2, 6542, 6543, 7, 69, 2, 2, 6543, 6544, 7, 86, 2, 2, 6544, 422, 3, 2, 2, 2, 6545, 6546, 7, 69, 2, 2, 6546, 6547, 7, 81, 2, 2, 6547, 6548, 7, 78, 2, 2, 6548, 6549, 7, 87, 2, 2, 6549, 6550, 7, 79, 2, 2, 6550, 6551, 7, 80, 2, 2, 6551, 6552, 7, 67, 2, 2, 6552, 6553, 7, 84, 2, 2, 6553, 424, 3, 2, 2, 2, 6554, 6555, 7, 69, 2, 2, 6555, 6556, 7, 81, 2, 2, 6556, 6557, 7, 78, 2, 2, 6557, 6558, 7, 87, 2, 2, 6558, 6559, 7, 79, 2, 2, 6559, 6560, 7, 80, 2, 2, 6560, 6561, 7, 97, 2, 2, 6561, 6562, 7, 67, 2, 2, 6562, 6563, 7, 87, 2, 2, 6563, 6564, 7, 86, 2, 2, 6564, 6565, 7, 74, 2, 2, 6565, 6566, 7, 97, 2, 2, 6566, 6567, 7, 75, 2, 2, 6567, 6568, 7, 80, 2, 2, 6568, 6569, 7, 70, 2, 2, 6569, 6570, 7, 75, 2, 2, 6570, 6571, 7, 69, 2, 2, 6571, 6572, 7, 67, 2, 2, 6572, 6573, 7, 86, 2, 2, 6573, 6574, 7, 81, 2, 2, 6574, 6575, 7, 84, 2, 2, 6575, 426, 3, 2, 2, 2, 6576, 6577, 7, 69, 2, 2, 6577, 6578, 7, 81, 2, 2, 6578, 6579, 7, 78, 2, 2, 6579, 6580, 7, 87, 2, 2, 6580, 6581, 7, 79, 2, 2, 6581, 6582, 7, 80, 2, 2, 6582, 428, 3, 2, 2, 2, 6583, 6584, 7, 69, 2, 2, 6584, 6585, 7, 81, 2, 2, 6585, 6586, 7, 78, 2, 2, 6586, 6587, 7, 87, 2, 2, 6587, 6588, 7, 79, 2, 2, 6588, 6589, 7, 80, 2, 2, 6589, 6590, 7, 85, 2, 2, 6590, 430, 3, 2, 2, 2, 6591, 6592, 7, 69, 2, 2, 6592, 6593, 7, 81, 2, 2, 6593, 6594, 7, 78, 2, 2, 6594, 6595, 7, 87, 2, 2, 6595, 6596, 7, 79, 2, 2, 6596, 6597, 7, 80, 2, 2, 6597, 6598, 7, 97, 2, 2, 6598, 6599, 7, 85, 2, 2, 6599, 6600, 7, 86, 2, 2, 6600, 6601, 7, 67, 2, 2, 6601, 6602, 7, 86, 2, 2, 6602, 6603, 7, 85, 2, 2, 6603, 432, 3, 2, 2, 2, 6604, 6605, 7, 69, 2, 2, 6605, 6606, 7, 81, 2, 2, 6606, 6607, 7, 78, 2, 2, 6607, 6608, 7, 87, 2, 2, 6608, 6609, 7, 79, 2, 2, 6609, 6610, 7, 80, 2, 2, 6610, 6611, 7, 97, 2, 2, 6611, 6612, 7, 88, 2, 2, 6612, 6613, 7, 67, 2, 2, 6613, 6614, 7, 78, 2, 2, 6614, 6615, 7, 87, 2, 2, 6615, 6616, 7, 71, 2, 2, 6616, 434, 3, 2, 2, 2, 6617, 6618, 7, 69, 2, 2, 6618, 6619, 7, 81, 2, 2, 6619, 6620, 7, 79, 2, 2, 6620, 6621, 7, 79, 2, 2, 6621, 6622, 7, 71, 2, 2, 6622, 6623, 7, 80, 2, 2, 6623, 6624, 7, 86, 2, 2, 6624, 436, 3, 2, 2, 2, 6625, 6626, 7, 69, 2, 2, 6626, 6627, 7, 81, 2, 2, 6627, 6628, 7, 79, 2, 2, 6628, 6629, 7, 79, 2, 2, 6629, 6630, 7, 75, 2, 2, 6630, 6631, 7, 86, 2, 2, 6631, 438, 3, 2, 2, 2, 6632, 6633, 7, 69, 2, 2, 6633, 6634, 7, 81, 2, 2, 6634, 6635, 7, 79, 2, 2, 6635, 6636, 7, 79, 2, 2, 6636, 6637, 7, 75, 2, 2, 6637, 6638, 7, 86, 2, 2, 6638, 6639, 7, 86, 2, 2, 6639, 6640, 7, 71, 2, 2, 6640, 6641, 7, 70, 2, 2, 6641, 440, 3, 2, 2, 2, 6642, 6643, 7, 69, 2, 2, 6643, 6644, 7, 81, 2, 2, 6644, 6645, 7, 79, 2, 2, 6645, 6646, 7, 79, 2, 2, 6646, 6647, 7, 81, 2, 2, 6647, 6648, 7, 80, 2, 2, 6648, 6649, 7, 97, 2, 2, 6649, 6650, 7, 70, 2, 2, 6650, 6651, 7, 67, 2, 2, 6651, 6652, 7, 86, 2, 2, 6652, 6653, 7, 67, 2, 2, 6653, 442, 3, 2, 2, 2, 6654, 6655, 7, 69, 2, 2, 6655, 6656, 7, 81, 2, 2, 6656, 6657, 7, 79, 2, 2, 6657, 6658, 7, 82, 2, 2, 6658, 6659, 7, 67, 2, 2, 6659, 6660, 7, 69, 2, 2, 6660, 6661, 7, 86, 2, 2, 6661, 444, 3, 2, 2, 2, 6662, 6663, 7, 69, 2, 2, 6663, 6664, 7, 81, 2, 2, 6664, 6665, 7, 79, 2, 2, 6665, 6666, 7, 82, 2, 2, 6666, 6667, 7, 67, 2, 2, 6667, 6668, 7, 86, 2, 2, 6668, 6669, 7, 75, 2, 2, 6669, 6670, 7, 68, 2, 2, 6670, 6671, 7, 75, 2, 2, 6671, 6672, 7, 78, 2, 2, 6672, 6673, 7, 75, 2, 2, 6673, 6674, 7, 86, 2, 2, 6674, 6675, 7, 91, 2, 2, 6675, 446, 3, 2, 2, 2, 6676, 6677, 7, 69, 2, 2, 6677, 6678, 7, 81, 2, 2, 6678, 6679, 7, 79, 2, 2, 6679, 6680, 7, 82, 2, 2, 6680, 6681, 7, 75, 2, 2, 6681, 6682, 7, 78, 2, 2, 6682, 6683, 7, 71, 2, 2, 6683, 448, 3, 2, 2, 2, 6684, 6685, 7, 69, 2, 2, 6685, 6686, 7, 81, 2, 2, 6686, 6687, 7, 79, 2, 2, 6687, 6688, 7, 82, 2, 2, 6688, 6689, 7, 78, 2, 2, 6689, 6690, 7, 71, 2, 2, 6690, 6691, 7, 86, 2, 2, 6691, 6692, 7, 71, 2, 2, 6692, 450, 3, 2, 2, 2, 6693, 6694, 7, 69, 2, 2, 6694, 6695, 7, 81, 2, 2, 6695, 6696, 7, 79, 2, 2, 6696, 6697, 7, 82, 2, 2, 6697, 6698, 7, 78, 2, 2, 6698, 6699, 7, 75, 2, 2, 6699, 6700, 7, 67, 2, 2, 6700, 6701, 7, 80, 2, 2, 6701, 6702, 7, 69, 2, 2, 6702, 6703, 7, 71, 2, 2, 6703, 452, 3, 2, 2, 2, 6704, 6705, 7, 69, 2, 2, 6705, 6706, 7, 81, 2, 2, 6706, 6707, 7, 79, 2, 2, 6707, 6708, 7, 82, 2, 2, 6708, 6709, 7, 81, 2, 2, 6709, 6710, 7, 80, 2, 2, 6710, 6711, 7, 71, 2, 2, 6711, 6712, 7, 80, 2, 2, 6712, 6713, 7, 86, 2, 2, 6713, 454, 3, 2, 2, 2, 6714, 6715, 7, 69, 2, 2, 6715, 6716, 7, 81, 2, 2, 6716, 6717, 7, 79, 2, 2, 6717, 6718, 7, 82, 2, 2, 6718, 6719, 7, 81, 2, 2, 6719, 6720, 7, 80, 2, 2, 6720, 6721, 7, 71, 2, 2, 6721, 6722, 7, 80, 2, 2, 6722, 6723, 7, 86, 2, 2, 6723, 6724, 7, 85, 2, 2, 6724, 456, 3, 2, 2, 2, 6725, 6726, 7, 69, 2, 2, 6726, 6727, 7, 81, 2, 2, 6727, 6728, 7, 79, 2, 2, 6728, 6729, 7, 82, 2, 2, 6729, 6730, 7, 81, 2, 2, 6730, 6731, 7, 85, 2, 2, 6731, 6732, 7, 71, 2, 2, 6732, 458, 3, 2, 2, 2, 6733, 6734, 7, 69, 2, 2, 6734, 6735, 7, 81, 2, 2, 6735, 6736, 7, 79, 2, 2, 6736, 6737, 7, 82, 2, 2, 6737, 6738, 7, 81, 2, 2, 6738, 6739, 7, 85, 2, 2, 6739, 6740, 7, 75, 2, 2, 6740, 6741, 7, 86, 2, 2, 6741, 6742, 7, 71, 2, 2, 6742, 460, 3, 2, 2, 2, 6743, 6744, 7, 69, 2, 2, 6744, 6745, 7, 81, 2, 2, 6745, 6746, 7, 79, 2, 2, 6746, 6747, 7, 82, 2, 2, 6747, 6748, 7, 81, 2, 2, 6748, 6749, 7, 85, 2, 2, 6749, 6750, 7, 75, 2, 2, 6750, 6751, 7, 86, 2, 2, 6751, 6752, 7, 71, 2, 2, 6752, 6753, 7, 97, 2, 2, 6753, 6754, 7, 78, 2, 2, 6754, 6755, 7, 75, 2, 2, 6755, 6756, 7, 79, 2, 2, 6756, 6757, 7, 75, 2, 2, 6757, 6758, 7, 86, 2, 2, 6758, 462, 3, 2, 2, 2, 6759, 6760, 7, 69, 2, 2, 6760, 6761, 7, 81, 2, 2, 6761, 6762, 7, 79, 2, 2, 6762, 6763, 7, 82, 2, 2, 6763, 6764, 7, 81, 2, 2, 6764, 6765, 7, 87, 2, 2, 6765, 6766, 7, 80, 2, 2, 6766, 6767, 7, 70, 2, 2, 6767, 464, 3, 2, 2, 2, 6768, 6769, 7, 69, 2, 2, 6769, 6770, 7, 81, 2, 2, 6770, 6771, 7, 79, 2, 2, 6771, 6772, 7, 82, 2, 2, 6772, 6773, 7, 84, 2, 2, 6773, 6774, 7, 71, 2, 2, 6774, 6775, 7, 85, 2, 2, 6775, 6776, 7, 85, 2, 2, 6776, 466, 3, 2, 2, 2, 6777, 6778, 7, 69, 2, 2, 6778, 6779, 7, 81, 2, 2, 6779, 6780, 7, 79, 2, 2, 6780, 6781, 7, 82, 2, 2, 6781, 6782, 7, 87, 2, 2, 6782, 6783, 7, 86, 2, 2, 6783, 6784, 7, 71, 2, 2, 6784, 468, 3, 2, 2, 2, 6785, 6786, 7, 69, 2, 2, 6786, 6787, 7, 81, 2, 2, 6787, 6788, 7, 80, 2, 2, 6788, 6789, 7, 69, 2, 2, 6789, 6790, 7, 67, 2, 2, 6790, 6791, 7, 86, 2, 2, 6791, 470, 3, 2, 2, 2, 6792, 6793, 7, 69, 2, 2, 6793, 6794, 7, 81, 2, 2, 6794, 6795, 7, 80, 2, 2, 6795, 6796, 7, 97, 2, 2, 6796, 6797, 7, 70, 2, 2, 6797, 6798, 7, 68, 2, 2, 6798, 6799, 7, 75, 2, 2, 6799, 6800, 7, 70, 2, 2, 6800, 6801, 7, 97, 2, 2, 6801, 6802, 7, 86, 2, 2, 6802, 6803, 7, 81, 2, 2, 6803, 6804, 7, 97, 2, 2, 6804, 6805, 7, 75, 2, 2, 6805, 6806, 7, 70, 2, 2, 6806, 472, 3, 2, 2, 2, 6807, 6808, 7, 69, 2, 2, 6808, 6809, 7, 81, 2, 2, 6809, 6810, 7, 80, 2, 2, 6810, 6811, 7, 70, 2, 2, 6811, 6812, 7, 75, 2, 2, 6812, 6813, 7, 86, 2, 2, 6813, 6814, 7, 75, 2, 2, 6814, 6815, 7, 81, 2, 2, 6815, 6816, 7, 80, 2, 2, 6816, 6817, 7, 67, 2, 2, 6817, 6818, 7, 78, 2, 2, 6818, 474, 3, 2, 2, 2, 6819, 6820, 7, 69, 2, 2, 6820, 6821, 7, 81, 2, 2, 6821, 6822, 7, 80, 2, 2, 6822, 6823, 7, 70, 2, 2, 6823, 6824, 7, 75, 2, 2, 6824, 6825, 7, 86, 2, 2, 6825, 6826, 7, 75, 2, 2, 6826, 6827, 7, 81, 2, 2, 6827, 6828, 7, 80, 2, 2, 6828, 476, 3, 2, 2, 2, 6829, 6830, 7, 69, 2, 2, 6830, 6831, 7, 81, 2, 2, 6831, 6832, 7, 80, 2, 2, 6832, 6833, 7, 72, 2, 2, 6833, 6834, 7, 75, 2, 2, 6834, 6835, 7, 84, 2, 2, 6835, 6836, 7, 79, 2, 2, 6836, 478, 3, 2, 2, 2, 6837, 6838, 7, 69, 2, 2, 6838, 6839, 7, 81, 2, 2, 6839, 6840, 7, 80, 2, 2, 6840, 6841, 7, 72, 2, 2, 6841, 6842, 7, 81, 2, 2, 6842, 6843, 7, 84, 2, 2, 6843, 6844, 7, 79, 2, 2, 6844, 6845, 7, 75, 2, 2, 6845, 6846, 7, 80, 2, 2, 6846, 6847, 7, 73, 2, 2, 6847, 480, 3, 2, 2, 2, 6848, 6849, 7, 69, 2, 2, 6849, 6850, 7, 81, 2, 2, 6850, 6851, 7, 80, 2, 2, 6851, 6852, 7, 97, 2, 2, 6852, 6853, 7, 73, 2, 2, 6853, 6854, 7, 87, 2, 2, 6854, 6855, 7, 75, 2, 2, 6855, 6856, 7, 70, 2, 2, 6856, 6857, 7, 97, 2, 2, 6857, 6858, 7, 86, 2, 2, 6858, 6859, 7, 81, 2, 2, 6859, 6860, 7, 97, 2, 2, 6860, 6861, 7, 75, 2, 2, 6861, 6862, 7, 70, 2, 2, 6862, 482, 3, 2, 2, 2, 6863, 6864, 7, 69, 2, 2, 6864, 6865, 7, 81, 2, 2, 6865, 6866, 7, 80, 2, 2, 6866, 6867, 7, 97, 2, 2, 6867, 6868, 7, 75, 2, 2, 6868, 6869, 7, 70, 2, 2, 6869, 484, 3, 2, 2, 2, 6870, 6871, 7, 69, 2, 2, 6871, 6872, 7, 81, 2, 2, 6872, 6873, 7, 80, 2, 2, 6873, 6874, 7, 97, 2, 2, 6874, 6875, 7, 80, 2, 2, 6875, 6876, 7, 67, 2, 2, 6876, 6877, 7, 79, 2, 2, 6877, 6878, 7, 71, 2, 2, 6878, 6879, 7, 97, 2, 2, 6879, 6880, 7, 86, 2, 2, 6880, 6881, 7, 81, 2, 2, 6881, 6882, 7, 97, 2, 2, 6882, 6883, 7, 75, 2, 2, 6883, 6884, 7, 70, 2, 2, 6884, 486, 3, 2, 2, 2, 6885, 6886, 7, 69, 2, 2, 6886, 6887, 7, 81, 2, 2, 6887, 6888, 7, 80, 2, 2, 6888, 6889, 7, 80, 2, 2, 6889, 6890, 7, 71, 2, 2, 6890, 6891, 7, 69, 2, 2, 6891, 6892, 7, 86, 2, 2, 6892, 6893, 7, 97, 2, 2, 6893, 6894, 7, 68, 2, 2, 6894, 6895, 7, 91, 2, 2, 6895, 6896, 7, 97, 2, 2, 6896, 6897, 7, 69, 2, 2, 6897, 6898, 7, 68, 2, 2, 6898, 6899, 7, 97, 2, 2, 6899, 6900, 7, 89, 2, 2, 6900, 6901, 7, 74, 2, 2, 6901, 6902, 7, 84, 2, 2, 6902, 6903, 7, 97, 2, 2, 6903, 6904, 7, 81, 2, 2, 6904, 6905, 7, 80, 2, 2, 6905, 6906, 7, 78, 2, 2, 6906, 6907, 7, 91, 2, 2, 6907, 488, 3, 2, 2, 2, 6908, 6909, 7, 69, 2, 2, 6909, 6910, 7, 81, 2, 2, 6910, 6911, 7, 80, 2, 2, 6911, 6912, 7, 80, 2, 2, 6912, 6913, 7, 71, 2, 2, 6913, 6914, 7, 69, 2, 2, 6914, 6915, 7, 86, 2, 2, 6915, 6916, 7, 97, 2, 2, 6916, 6917, 7, 68, 2, 2, 6917, 6918, 7, 91, 2, 2, 6918, 6919, 7, 97, 2, 2, 6919, 6920, 7, 69, 2, 2, 6920, 6921, 7, 81, 2, 2, 6921, 6922, 7, 79, 2, 2, 6922, 6923, 7, 68, 2, 2, 6923, 6924, 7, 75, 2, 2, 6924, 6925, 7, 80, 2, 2, 6925, 6926, 7, 71, 2, 2, 6926, 6927, 7, 97, 2, 2, 6927, 6928, 7, 85, 2, 2, 6928, 6929, 7, 89, 2, 2, 6929, 490, 3, 2, 2, 2, 6930, 6931, 7, 69, 2, 2, 6931, 6932, 7, 81, 2, 2, 6932, 6933, 7, 80, 2, 2, 6933, 6934, 7, 80, 2, 2, 6934, 6935, 7, 71, 2, 2, 6935, 6936, 7, 69, 2, 2, 6936, 6937, 7, 86, 2, 2, 6937, 6938, 7, 97, 2, 2, 6938, 6939, 7, 68, 2, 2, 6939, 6940, 7, 91, 2, 2, 6940, 6941, 7, 97, 2, 2, 6941, 6942, 7, 69, 2, 2, 6942, 6943, 7, 81, 2, 2, 6943, 6944, 7, 85, 2, 2, 6944, 6945, 7, 86, 2, 2, 6945, 6946, 7, 97, 2, 2, 6946, 6947, 7, 68, 2, 2, 6947, 6948, 7, 67, 2, 2, 6948, 6949, 7, 85, 2, 2, 6949, 6950, 7, 71, 2, 2, 6950, 6951, 7, 70, 2, 2, 6951, 492, 3, 2, 2, 2, 6952, 6953, 7, 69, 2, 2, 6953, 6954, 7, 81, 2, 2, 6954, 6955, 7, 80, 2, 2, 6955, 6956, 7, 80, 2, 2, 6956, 6957, 7, 71, 2, 2, 6957, 6958, 7, 69, 2, 2, 6958, 6959, 7, 86, 2, 2, 6959, 6960, 7, 97, 2, 2, 6960, 6961, 7, 68, 2, 2, 6961, 6962, 7, 91, 2, 2, 6962, 6963, 7, 97, 2, 2, 6963, 6964, 7, 71, 2, 2, 6964, 6965, 7, 78, 2, 2, 6965, 6966, 7, 75, 2, 2, 6966, 6967, 7, 79, 2, 2, 6967, 6968, 7, 97, 2, 2, 6968, 6969, 7, 70, 2, 2, 6969, 6970, 7, 87, 2, 2, 6970, 6971, 7, 82, 2, 2, 6971, 6972, 7, 85, 2, 2, 6972, 494, 3, 2, 2, 2, 6973, 6974, 7, 69, 2, 2, 6974, 6975, 7, 81, 2, 2, 6975, 6976, 7, 80, 2, 2, 6976, 6977, 7, 80, 2, 2, 6977, 6978, 7, 71, 2, 2, 6978, 6979, 7, 69, 2, 2, 6979, 6980, 7, 86, 2, 2, 6980, 6981, 7, 97, 2, 2, 6981, 6982, 7, 68, 2, 2, 6982, 6983, 7, 91, 2, 2, 6983, 6984, 7, 97, 2, 2, 6984, 6985, 7, 72, 2, 2, 6985, 6986, 7, 75, 2, 2, 6986, 6987, 7, 78, 2, 2, 6987, 6988, 7, 86, 2, 2, 6988, 6989, 7, 71, 2, 2, 6989, 6990, 7, 84, 2, 2, 6990, 6991, 7, 75, 2, 2, 6991, 6992, 7, 80, 2, 2, 6992, 6993, 7, 73, 2, 2, 6993, 496, 3, 2, 2, 2, 6994, 6995, 7, 69, 2, 2, 6995, 6996, 7, 81, 2, 2, 6996, 6997, 7, 80, 2, 2, 6997, 6998, 7, 80, 2, 2, 6998, 6999, 7, 71, 2, 2, 6999, 7000, 7, 69, 2, 2, 7000, 7001, 7, 86, 2, 2, 7001, 7002, 7, 97, 2, 2, 7002, 7003, 7, 68, 2, 2, 7003, 7004, 7, 91, 2, 2, 7004, 7005, 7, 97, 2, 2, 7005, 7006, 7, 75, 2, 2, 7006, 7007, 7, 85, 2, 2, 7007, 7008, 7, 69, 2, 2, 7008, 7009, 7, 91, 2, 2, 7009, 7010, 7, 69, 2, 2, 7010, 7011, 7, 78, 2, 2, 7011, 7012, 7, 71, 2, 2, 7012, 498, 3, 2, 2, 2, 7013, 7014, 7, 69, 2, 2, 7014, 7015, 7, 81, 2, 2, 7015, 7016, 7, 80, 2, 2, 7016, 7017, 7, 80, 2, 2, 7017, 7018, 7, 71, 2, 2, 7018, 7019, 7, 69, 2, 2, 7019, 7020, 7, 86, 2, 2, 7020, 7021, 7, 97, 2, 2, 7021, 7022, 7, 68, 2, 2, 7022, 7023, 7, 91, 2, 2, 7023, 7024, 7, 97, 2, 2, 7024, 7025, 7, 75, 2, 2, 7025, 7026, 7, 85, 2, 2, 7026, 7027, 7, 78, 2, 2, 7027, 7028, 7, 71, 2, 2, 7028, 7029, 7, 67, 2, 2, 7029, 7030, 7, 72, 2, 2, 7030, 500, 3, 2, 2, 2, 7031, 7032, 7, 69, 2, 2, 7032, 7033, 7, 81, 2, 2, 7033, 7034, 7, 80, 2, 2, 7034, 7035, 7, 80, 2, 2, 7035, 7036, 7, 71, 2, 2, 7036, 7037, 7, 69, 2, 2, 7037, 7038, 7, 86, 2, 2, 7038, 7039, 7, 97, 2, 2, 7039, 7040, 7, 68, 2, 2, 7040, 7041, 7, 91, 2, 2, 7041, 7042, 7, 97, 2, 2, 7042, 7043, 7, 84, 2, 2, 7043, 7044, 7, 81, 2, 2, 7044, 7045, 7, 81, 2, 2, 7045, 7046, 7, 86, 2, 2, 7046, 502, 3, 2, 2, 2, 7047, 7048, 7, 69, 2, 2, 7048, 7049, 7, 81, 2, 2, 7049, 7050, 7, 80, 2, 2, 7050, 7051, 7, 80, 2, 2, 7051, 7052, 7, 71, 2, 2, 7052, 7053, 7, 69, 2, 2, 7053, 7054, 7, 86, 2, 2, 7054, 504, 3, 2, 2, 2, 7055, 7056, 7, 69, 2, 2, 7056, 7057, 7, 81, 2, 2, 7057, 7058, 7, 80, 2, 2, 7058, 7059, 7, 80, 2, 2, 7059, 7060, 7, 71, 2, 2, 7060, 7061, 7, 69, 2, 2, 7061, 7062, 7, 86, 2, 2, 7062, 7063, 7, 97, 2, 2, 7063, 7064, 7, 86, 2, 2, 7064, 7065, 7, 75, 2, 2, 7065, 7066, 7, 79, 2, 2, 7066, 7067, 7, 71, 2, 2, 7067, 506, 3, 2, 2, 2, 7068, 7069, 7, 69, 2, 2, 7069, 7070, 7, 81, 2, 2, 7070, 7071, 7, 80, 2, 2, 7071, 7072, 7, 85, 2, 2, 7072, 7073, 7, 75, 2, 2, 7073, 7074, 7, 70, 2, 2, 7074, 7075, 7, 71, 2, 2, 7075, 7076, 7, 84, 2, 2, 7076, 508, 3, 2, 2, 2, 7077, 7078, 7, 69, 2, 2, 7078, 7079, 7, 81, 2, 2, 7079, 7080, 7, 80, 2, 2, 7080, 7081, 7, 85, 2, 2, 7081, 7082, 7, 75, 2, 2, 7082, 7083, 7, 85, 2, 2, 7083, 7084, 7, 86, 2, 2, 7084, 7085, 7, 71, 2, 2, 7085, 7086, 7, 80, 2, 2, 7086, 7087, 7, 86, 2, 2, 7087, 510, 3, 2, 2, 2, 7088, 7089, 7, 69, 2, 2, 7089, 7090, 7, 81, 2, 2, 7090, 7091, 7, 80, 2, 2, 7091, 7092, 7, 85, 2, 2, 7092, 7093, 7, 86, 2, 2, 7093, 7094, 7, 67, 2, 2, 7094, 7095, 7, 80, 2, 2, 7095, 7096, 7, 86, 2, 2, 7096, 512, 3, 2, 2, 2, 7097, 7098, 7, 69, 2, 2, 7098, 7099, 7, 81, 2, 2, 7099, 7100, 7, 80, 2, 2, 7100, 7101, 7, 85, 2, 2, 7101, 7102, 7, 86, 2, 2, 7102, 514, 3, 2, 2, 2, 7103, 7104, 7, 69, 2, 2, 7104, 7105, 7, 81, 2, 2, 7105, 7106, 7, 80, 2, 2, 7106, 7107, 7, 85, 2, 2, 7107, 7108, 7, 86, 2, 2, 7108, 7109, 7, 84, 2, 2, 7109, 7110, 7, 67, 2, 2, 7110, 7111, 7, 75, 2, 2, 7111, 7112, 7, 80, 2, 2, 7112, 7113, 7, 86, 2, 2, 7113, 516, 3, 2, 2, 2, 7114, 7115, 7, 69, 2, 2, 7115, 7116, 7, 81, 2, 2, 7116, 7117, 7, 80, 2, 2, 7117, 7118, 7, 85, 2, 2, 7118, 7119, 7, 86, 2, 2, 7119, 7120, 7, 84, 2, 2, 7120, 7121, 7, 67, 2, 2, 7121, 7122, 7, 75, 2, 2, 7122, 7123, 7, 80, 2, 2, 7123, 7124, 7, 86, 2, 2, 7124, 7125, 7, 85, 2, 2, 7125, 518, 3, 2, 2, 2, 7126, 7127, 7, 69, 2, 2, 7127, 7128, 7, 81, 2, 2, 7128, 7129, 7, 80, 2, 2, 7129, 7130, 7, 85, 2, 2, 7130, 7131, 7, 86, 2, 2, 7131, 7132, 7, 84, 2, 2, 7132, 7133, 7, 87, 2, 2, 7133, 7134, 7, 69, 2, 2, 7134, 7135, 7, 86, 2, 2, 7135, 7136, 7, 81, 2, 2, 7136, 7137, 7, 84, 2, 2, 7137, 520, 3, 2, 2, 2, 7138, 7139, 7, 69, 2, 2, 7139, 7140, 7, 81, 2, 2, 7140, 7141, 7, 80, 2, 2, 7141, 7142, 7, 86, 2, 2, 7142, 7143, 7, 67, 2, 2, 7143, 7144, 7, 75, 2, 2, 7144, 7145, 7, 80, 2, 2, 7145, 7146, 7, 71, 2, 2, 7146, 7147, 7, 84, 2, 2, 7147, 522, 3, 2, 2, 2, 7148, 7149, 7, 69, 2, 2, 7149, 7150, 7, 81, 2, 2, 7150, 7151, 7, 80, 2, 2, 7151, 7152, 7, 86, 2, 2, 7152, 7153, 7, 67, 2, 2, 7153, 7154, 7, 75, 2, 2, 7154, 7155, 7, 80, 2, 2, 7155, 7156, 7, 71, 2, 2, 7156, 7157, 7, 84, 2, 2, 7157, 7158, 7, 97, 2, 2, 7158, 7159, 7, 70, 2, 2, 7159, 7160, 7, 67, 2, 2, 7160, 7161, 7, 86, 2, 2, 7161, 7162, 7, 67, 2, 2, 7162, 524, 3, 2, 2, 2, 7163, 7164, 7, 69, 2, 2, 7164, 7165, 7, 81, 2, 2, 7165, 7166, 7, 80, 2, 2, 7166, 7167, 7, 86, 2, 2, 7167, 7168, 7, 67, 2, 2, 7168, 7169, 7, 75, 2, 2, 7169, 7170, 7, 80, 2, 2, 7170, 7171, 7, 71, 2, 2, 7171, 7172, 7, 84, 2, 2, 7172, 7173, 7, 85, 2, 2, 7173, 526, 3, 2, 2, 2, 7174, 7175, 7, 69, 2, 2, 7175, 7176, 7, 81, 2, 2, 7176, 7177, 7, 80, 2, 2, 7177, 7178, 7, 86, 2, 2, 7178, 7179, 7, 71, 2, 2, 7179, 7180, 7, 80, 2, 2, 7180, 7181, 7, 86, 2, 2, 7181, 528, 3, 2, 2, 2, 7182, 7183, 7, 69, 2, 2, 7183, 7184, 7, 81, 2, 2, 7184, 7185, 7, 80, 2, 2, 7185, 7186, 7, 86, 2, 2, 7186, 7187, 7, 71, 2, 2, 7187, 7188, 7, 80, 2, 2, 7188, 7189, 7, 86, 2, 2, 7189, 7190, 7, 85, 2, 2, 7190, 530, 3, 2, 2, 2, 7191, 7192, 7, 69, 2, 2, 7192, 7193, 7, 81, 2, 2, 7193, 7194, 7, 80, 2, 2, 7194, 7195, 7, 86, 2, 2, 7195, 7196, 7, 71, 2, 2, 7196, 7197, 7, 90, 2, 2, 7197, 7198, 7, 86, 2, 2, 7198, 532, 3, 2, 2, 2, 7199, 7200, 7, 69, 2, 2, 7200, 7201, 7, 81, 2, 2, 7201, 7202, 7, 80, 2, 2, 7202, 7203, 7, 86, 2, 2, 7203, 7204, 7, 75, 2, 2, 7204, 7205, 7, 80, 2, 2, 7205, 7206, 7, 87, 2, 2, 7206, 7207, 7, 71, 2, 2, 7207, 534, 3, 2, 2, 2, 7208, 7209, 7, 69, 2, 2, 7209, 7210, 7, 81, 2, 2, 7210, 7211, 7, 80, 2, 2, 7211, 7212, 7, 86, 2, 2, 7212, 7213, 7, 84, 2, 2, 7213, 7214, 7, 81, 2, 2, 7214, 7215, 7, 78, 2, 2, 7215, 7216, 7, 72, 2, 2, 7216, 7217, 7, 75, 2, 2, 7217, 7218, 7, 78, 2, 2, 7218, 7219, 7, 71, 2, 2, 7219, 536, 3, 2, 2, 2, 7220, 7221, 7, 69, 2, 2, 7221, 7222, 7, 81, 2, 2, 7222, 7223, 7, 80, 2, 2, 7223, 7224, 7, 97, 2, 2, 7224, 7225, 7, 87, 2, 2, 7225, 7226, 7, 75, 2, 2, 7226, 7227, 7, 70, 2, 2, 7227, 7228, 7, 97, 2, 2, 7228, 7229, 7, 86, 2, 2, 7229, 7230, 7, 81, 2, 2, 7230, 7231, 7, 97, 2, 2, 7231, 7232, 7, 75, 2, 2, 7232, 7233, 7, 70, 2, 2, 7233, 538, 3, 2, 2, 2, 7234, 7235, 7, 69, 2, 2, 7235, 7236, 7, 81, 2, 2, 7236, 7237, 7, 80, 2, 2, 7237, 7238, 7, 88, 2, 2, 7238, 7239, 7, 71, 2, 2, 7239, 7240, 7, 84, 2, 2, 7240, 7241, 7, 86, 2, 2, 7241, 540, 3, 2, 2, 2, 7242, 7243, 7, 69, 2, 2, 7243, 7244, 7, 81, 2, 2, 7244, 7245, 7, 81, 2, 2, 7245, 7246, 7, 77, 2, 2, 7246, 7247, 7, 75, 2, 2, 7247, 7248, 7, 71, 2, 2, 7248, 542, 3, 2, 2, 2, 7249, 7250, 7, 69, 2, 2, 7250, 7251, 7, 81, 2, 2, 7251, 7252, 7, 82, 2, 2, 7252, 7253, 7, 91, 2, 2, 7253, 544, 3, 2, 2, 2, 7254, 7255, 7, 69, 2, 2, 7255, 7256, 7, 81, 2, 2, 7256, 7257, 7, 84, 2, 2, 7257, 7258, 7, 84, 2, 2, 7258, 7259, 7, 97, 2, 2, 7259, 7260, 7, 77, 2, 2, 7260, 546, 3, 2, 2, 2, 7261, 7262, 7, 69, 2, 2, 7262, 7263, 7, 81, 2, 2, 7263, 7264, 7, 84, 2, 2, 7264, 7265, 7, 84, 2, 2, 7265, 7266, 7, 97, 2, 2, 7266, 7267, 7, 85, 2, 2, 7267, 548, 3, 2, 2, 2, 7268, 7269, 7, 69, 2, 2, 7269, 7270, 7, 81, 2, 2, 7270, 7271, 7, 84, 2, 2, 7271, 7272, 7, 84, 2, 2, 7272, 7273, 7, 87, 2, 2, 7273, 7274, 7, 82, 2, 2, 7274, 7275, 7, 86, 2, 2, 7275, 7276, 7, 75, 2, 2, 7276, 7277, 7, 81, 2, 2, 7277, 7278, 7, 80, 2, 2, 7278, 550, 3, 2, 2, 2, 7279, 7280, 7, 69, 2, 2, 7280, 7281, 7, 81, 2, 2, 7281, 7282, 7, 84, 2, 2, 7282, 7283, 7, 84, 2, 2, 7283, 7284, 7, 87, 2, 2, 7284, 7285, 7, 82, 2, 2, 7285, 7286, 7, 86, 2, 2, 7286, 7287, 7, 97, 2, 2, 7287, 7288, 7, 90, 2, 2, 7288, 7289, 7, 75, 2, 2, 7289, 7290, 7, 70, 2, 2, 7290, 7291, 7, 97, 2, 2, 7291, 7292, 7, 67, 2, 2, 7292, 7293, 7, 78, 2, 2, 7293, 7294, 7, 78, 2, 2, 7294, 552, 3, 2, 2, 2, 7295, 7296, 7, 69, 2, 2, 7296, 7297, 7, 81, 2, 2, 7297, 7298, 7, 84, 2, 2, 7298, 7299, 7, 84, 2, 2, 7299, 7300, 7, 87, 2, 2, 7300, 7301, 7, 82, 2, 2, 7301, 7302, 7, 86, 2, 2, 7302, 7303, 7, 97, 2, 2, 7303, 7304, 7, 90, 2, 2, 7304, 7305, 7, 75, 2, 2, 7305, 7306, 7, 70, 2, 2, 7306, 554, 3, 2, 2, 2, 7307, 7308, 7, 69, 2, 2, 7308, 7309, 7, 81, 2, 2, 7309, 7310, 7, 85, 2, 2, 7310, 556, 3, 2, 2, 2, 7311, 7312, 7, 69, 2, 2, 7312, 7313, 7, 81, 2, 2, 7313, 7314, 7, 85, 2, 2, 7314, 7315, 7, 74, 2, 2, 7315, 558, 3, 2, 2, 2, 7316, 7317, 7, 69, 2, 2, 7317, 7318, 7, 81, 2, 2, 7318, 7319, 7, 85, 2, 2, 7319, 7320, 7, 86, 2, 2, 7320, 560, 3, 2, 2, 2, 7321, 7322, 7, 69, 2, 2, 7322, 7323, 7, 81, 2, 2, 7323, 7324, 7, 85, 2, 2, 7324, 7325, 7, 86, 2, 2, 7325, 7326, 7, 97, 2, 2, 7326, 7327, 7, 90, 2, 2, 7327, 7328, 7, 79, 2, 2, 7328, 7329, 7, 78, 2, 2, 7329, 7330, 7, 97, 2, 2, 7330, 7331, 7, 83, 2, 2, 7331, 7332, 7, 87, 2, 2, 7332, 7333, 7, 71, 2, 2, 7333, 7334, 7, 84, 2, 2, 7334, 7335, 7, 91, 2, 2, 7335, 7336, 7, 97, 2, 2, 7336, 7337, 7, 84, 2, 2, 7337, 7338, 7, 71, 2, 2, 7338, 7339, 7, 89, 2, 2, 7339, 7340, 7, 84, 2, 2, 7340, 7341, 7, 75, 2, 2, 7341, 7342, 7, 86, 2, 2, 7342, 7343, 7, 71, 2, 2, 7343, 562, 3, 2, 2, 2, 7344, 7345, 7, 69, 2, 2, 7345, 7346, 7, 81, 2, 2, 7346, 7347, 7, 87, 2, 2, 7347, 7348, 7, 80, 2, 2, 7348, 7349, 7, 86, 2, 2, 7349, 564, 3, 2, 2, 2, 7350, 7351, 7, 69, 2, 2, 7351, 7352, 7, 81, 2, 2, 7352, 7353, 7, 88, 2, 2, 7353, 7354, 7, 67, 2, 2, 7354, 7355, 7, 84, 2, 2, 7355, 7356, 7, 97, 2, 2, 7356, 7357, 7, 82, 2, 2, 7357, 7358, 7, 81, 2, 2, 7358, 7359, 7, 82, 2, 2, 7359, 566, 3, 2, 2, 2, 7360, 7361, 7, 69, 2, 2, 7361, 7362, 7, 81, 2, 2, 7362, 7363, 7, 88, 2, 2, 7363, 7364, 7, 67, 2, 2, 7364, 7365, 7, 84, 2, 2, 7365, 7366, 7, 97, 2, 2, 7366, 7367, 7, 85, 2, 2, 7367, 7368, 7, 67, 2, 2, 7368, 7369, 7, 79, 2, 2, 7369, 7370, 7, 82, 2, 2, 7370, 568, 3, 2, 2, 2, 7371, 7372, 7, 69, 2, 2, 7372, 7373, 7, 82, 2, 2, 7373, 7374, 7, 87, 2, 2, 7374, 7375, 7, 97, 2, 2, 7375, 7376, 7, 69, 2, 2, 7376, 7377, 7, 81, 2, 2, 7377, 7378, 7, 85, 2, 2, 7378, 7379, 7, 86, 2, 2, 7379, 7380, 7, 75, 2, 2, 7380, 7381, 7, 80, 2, 2, 7381, 7382, 7, 73, 2, 2, 7382, 570, 3, 2, 2, 2, 7383, 7384, 7, 69, 2, 2, 7384, 7385, 7, 82, 2, 2, 7385, 7386, 7, 87, 2, 2, 7386, 7387, 7, 97, 2, 2, 7387, 7388, 7, 82, 2, 2, 7388, 7389, 7, 71, 2, 2, 7389, 7390, 7, 84, 2, 2, 7390, 7391, 7, 97, 2, 2, 7391, 7392, 7, 69, 2, 2, 7392, 7393, 7, 67, 2, 2, 7393, 7394, 7, 78, 2, 2, 7394, 7395, 7, 78, 2, 2, 7395, 572, 3, 2, 2, 2, 7396, 7397, 7, 69, 2, 2, 7397, 7398, 7, 82, 2, 2, 7398, 7399, 7, 87, 2, 2, 7399, 7400, 7, 97, 2, 2, 7400, 7401, 7, 82, 2, 2, 7401, 7402, 7, 71, 2, 2, 7402, 7403, 7, 84, 2, 2, 7403, 7404, 7, 97, 2, 2, 7404, 7405, 7, 85, 2, 2, 7405, 7406, 7, 71, 2, 2, 7406, 7407, 7, 85, 2, 2, 7407, 7408, 7, 85, 2, 2, 7408, 7409, 7, 75, 2, 2, 7409, 7410, 7, 81, 2, 2, 7410, 7411, 7, 80, 2, 2, 7411, 574, 3, 2, 2, 2, 7412, 7413, 7, 69, 2, 2, 7413, 7414, 7, 84, 2, 2, 7414, 7415, 7, 67, 2, 2, 7415, 7416, 7, 85, 2, 2, 7416, 7417, 7, 74, 2, 2, 7417, 576, 3, 2, 2, 2, 7418, 7419, 7, 69, 2, 2, 7419, 7420, 7, 84, 2, 2, 7420, 7421, 7, 71, 2, 2, 7421, 7422, 7, 67, 2, 2, 7422, 7423, 7, 86, 2, 2, 7423, 7424, 7, 71, 2, 2, 7424, 578, 3, 2, 2, 2, 7425, 7426, 7, 69, 2, 2, 7426, 7427, 7, 84, 2, 2, 7427, 7428, 7, 71, 2, 2, 7428, 7429, 7, 67, 2, 2, 7429, 7430, 7, 86, 2, 2, 7430, 7431, 7, 71, 2, 2, 7431, 7432, 7, 97, 2, 2, 7432, 7433, 7, 72, 2, 2, 7433, 7434, 7, 75, 2, 2, 7434, 7435, 7, 78, 2, 2, 7435, 7436, 7, 71, 2, 2, 7436, 7437, 7, 97, 2, 2, 7437, 7438, 7, 70, 2, 2, 7438, 7439, 7, 71, 2, 2, 7439, 7440, 7, 85, 2, 2, 7440, 7441, 7, 86, 2, 2, 7441, 580, 3, 2, 2, 2, 7442, 7443, 7, 69, 2, 2, 7443, 7444, 7, 84, 2, 2, 7444, 7445, 7, 71, 2, 2, 7445, 7446, 7, 67, 2, 2, 7446, 7447, 7, 86, 2, 2, 7447, 7448, 7, 71, 2, 2, 7448, 7449, 7, 97, 2, 2, 7449, 7450, 7, 85, 2, 2, 7450, 7451, 7, 86, 2, 2, 7451, 7452, 7, 81, 2, 2, 7452, 7453, 7, 84, 2, 2, 7453, 7454, 7, 71, 2, 2, 7454, 7455, 7, 70, 2, 2, 7455, 7456, 7, 97, 2, 2, 7456, 7457, 7, 81, 2, 2, 7457, 7458, 7, 87, 2, 2, 7458, 7459, 7, 86, 2, 2, 7459, 7460, 7, 78, 2, 2, 7460, 7461, 7, 75, 2, 2, 7461, 7462, 7, 80, 2, 2, 7462, 7463, 7, 71, 2, 2, 7463, 7464, 7, 85, 2, 2, 7464, 582, 3, 2, 2, 2, 7465, 7466, 7, 69, 2, 2, 7466, 7467, 7, 84, 2, 2, 7467, 7468, 7, 71, 2, 2, 7468, 7469, 7, 67, 2, 2, 7469, 7470, 7, 86, 2, 2, 7470, 7471, 7, 75, 2, 2, 7471, 7472, 7, 81, 2, 2, 7472, 7473, 7, 80, 2, 2, 7473, 584, 3, 2, 2, 2, 7474, 7475, 7, 69, 2, 2, 7475, 7476, 7, 84, 2, 2, 7476, 7477, 7, 71, 2, 2, 7477, 7478, 7, 70, 2, 2, 7478, 7479, 7, 71, 2, 2, 7479, 7480, 7, 80, 2, 2, 7480, 7481, 7, 86, 2, 2, 7481, 7482, 7, 75, 2, 2, 7482, 7483, 7, 67, 2, 2, 7483, 7484, 7, 78, 2, 2, 7484, 586, 3, 2, 2, 2, 7485, 7486, 7, 69, 2, 2, 7486, 7487, 7, 84, 2, 2, 7487, 7488, 7, 75, 2, 2, 7488, 7489, 7, 86, 2, 2, 7489, 7490, 7, 75, 2, 2, 7490, 7491, 7, 69, 2, 2, 7491, 7492, 7, 67, 2, 2, 7492, 7493, 7, 78, 2, 2, 7493, 588, 3, 2, 2, 2, 7494, 7495, 7, 69, 2, 2, 7495, 7496, 7, 84, 2, 2, 7496, 7497, 7, 81, 2, 2, 7497, 7498, 7, 85, 2, 2, 7498, 7499, 7, 85, 2, 2, 7499, 590, 3, 2, 2, 2, 7500, 7501, 7, 69, 2, 2, 7501, 7502, 7, 84, 2, 2, 7502, 7503, 7, 81, 2, 2, 7503, 7504, 7, 85, 2, 2, 7504, 7505, 7, 85, 2, 2, 7505, 7506, 7, 71, 2, 2, 7506, 7507, 7, 70, 2, 2, 7507, 7508, 7, 75, 2, 2, 7508, 7509, 7, 86, 2, 2, 7509, 7510, 7, 75, 2, 2, 7510, 7511, 7, 81, 2, 2, 7511, 7512, 7, 80, 2, 2, 7512, 592, 3, 2, 2, 2, 7513, 7514, 7, 69, 2, 2, 7514, 7515, 7, 85, 2, 2, 7515, 7516, 7, 69, 2, 2, 7516, 7517, 7, 81, 2, 2, 7517, 7518, 7, 80, 2, 2, 7518, 7519, 7, 88, 2, 2, 7519, 7520, 7, 71, 2, 2, 7520, 7521, 7, 84, 2, 2, 7521, 7522, 7, 86, 2, 2, 7522, 594, 3, 2, 2, 2, 7523, 7524, 7, 69, 2, 2, 7524, 7525, 7, 87, 2, 2, 7525, 7526, 7, 68, 2, 2, 7526, 7527, 7, 71, 2, 2, 7527, 7528, 7, 97, 2, 2, 7528, 7529, 7, 67, 2, 2, 7529, 7530, 7, 76, 2, 2, 7530, 596, 3, 2, 2, 2, 7531, 7532, 7, 69, 2, 2, 7532, 7533, 7, 87, 2, 2, 7533, 7534, 7, 68, 2, 2, 7534, 7535, 7, 71, 2, 2, 7535, 598, 3, 2, 2, 2, 7536, 7537, 7, 69, 2, 2, 7537, 7538, 7, 87, 2, 2, 7538, 7539, 7, 68, 2, 2, 7539, 7540, 7, 71, 2, 2, 7540, 7541, 7, 97, 2, 2, 7541, 7542, 7, 73, 2, 2, 7542, 7543, 7, 68, 2, 2, 7543, 600, 3, 2, 2, 2, 7544, 7545, 7, 69, 2, 2, 7545, 7546, 7, 87, 2, 2, 7546, 7547, 7, 68, 2, 2, 7547, 7548, 7, 71, 2, 2, 7548, 7549, 7, 97, 2, 2, 7549, 7550, 7, 85, 2, 2, 7550, 7551, 7, 76, 2, 2, 7551, 602, 3, 2, 2, 2, 7552, 7553, 7, 69, 2, 2, 7553, 7554, 7, 87, 2, 2, 7554, 7555, 7, 79, 2, 2, 7555, 7556, 7, 71, 2, 2, 7556, 7557, 7, 97, 2, 2, 7557, 7558, 7, 70, 2, 2, 7558, 7559, 7, 75, 2, 2, 7559, 7560, 7, 85, 2, 2, 7560, 7561, 7, 86, 2, 2, 7561, 7562, 7, 79, 2, 2, 7562, 604, 3, 2, 2, 2, 7563, 7564, 7, 69, 2, 2, 7564, 7565, 7, 87, 2, 2, 7565, 7566, 7, 84, 2, 2, 7566, 7567, 7, 84, 2, 2, 7567, 7568, 7, 71, 2, 2, 7568, 7569, 7, 80, 2, 2, 7569, 7570, 7, 86, 2, 2, 7570, 606, 3, 2, 2, 2, 7571, 7572, 7, 69, 2, 2, 7572, 7573, 7, 87, 2, 2, 7573, 7574, 7, 84, 2, 2, 7574, 7575, 7, 84, 2, 2, 7575, 7576, 7, 71, 2, 2, 7576, 7577, 7, 80, 2, 2, 7577, 7578, 7, 86, 2, 2, 7578, 7579, 7, 97, 2, 2, 7579, 7580, 7, 70, 2, 2, 7580, 7581, 7, 67, 2, 2, 7581, 7582, 7, 86, 2, 2, 7582, 7583, 7, 71, 2, 2, 7583, 608, 3, 2, 2, 2, 7584, 7585, 7, 69, 2, 2, 7585, 7586, 7, 87, 2, 2, 7586, 7587, 7, 84, 2, 2, 7587, 7588, 7, 84, 2, 2, 7588, 7589, 7, 71, 2, 2, 7589, 7590, 7, 80, 2, 2, 7590, 7591, 7, 86, 2, 2, 7591, 7592, 7, 97, 2, 2, 7592, 7593, 7, 85, 2, 2, 7593, 7594, 7, 69, 2, 2, 7594, 7595, 7, 74, 2, 2, 7595, 7596, 7, 71, 2, 2, 7596, 7597, 7, 79, 2, 2, 7597, 7598, 7, 67, 2, 2, 7598, 610, 3, 2, 2, 2, 7599, 7600, 7, 69, 2, 2, 7600, 7601, 7, 87, 2, 2, 7601, 7602, 7, 84, 2, 2, 7602, 7603, 7, 84, 2, 2, 7603, 7604, 7, 71, 2, 2, 7604, 7605, 7, 80, 2, 2, 7605, 7606, 7, 86, 2, 2, 7606, 7607, 7, 97, 2, 2, 7607, 7608, 7, 86, 2, 2, 7608, 7609, 7, 75, 2, 2, 7609, 7610, 7, 79, 2, 2, 7610, 7611, 7, 71, 2, 2, 7611, 612, 3, 2, 2, 2, 7612, 7613, 7, 69, 2, 2, 7613, 7614, 7, 87, 2, 2, 7614, 7615, 7, 84, 2, 2, 7615, 7616, 7, 84, 2, 2, 7616, 7617, 7, 71, 2, 2, 7617, 7618, 7, 80, 2, 2, 7618, 7619, 7, 86, 2, 2, 7619, 7620, 7, 97, 2, 2, 7620, 7621, 7, 86, 2, 2, 7621, 7622, 7, 75, 2, 2, 7622, 7623, 7, 79, 2, 2, 7623, 7624, 7, 71, 2, 2, 7624, 7625, 7, 85, 2, 2, 7625, 7626, 7, 86, 2, 2, 7626, 7627, 7, 67, 2, 2, 7627, 7628, 7, 79, 2, 2, 7628, 7629, 7, 82, 2, 2, 7629, 614, 3, 2, 2, 2, 7630, 7631, 7, 69, 2, 2, 7631, 7632, 7, 87, 2, 2, 7632, 7633, 7, 84, 2, 2, 7633, 7634, 7, 84, 2, 2, 7634, 7635, 7, 71, 2, 2, 7635, 7636, 7, 80, 2, 2, 7636, 7637, 7, 86, 2, 2, 7637, 7638, 7, 97, 2, 2, 7638, 7639, 7, 87, 2, 2, 7639, 7640, 7, 85, 2, 2, 7640, 7641, 7, 71, 2, 2, 7641, 7642, 7, 84, 2, 2, 7642, 616, 3, 2, 2, 2, 7643, 7644, 7, 69, 2, 2, 7644, 7645, 7, 87, 2, 2, 7645, 7646, 7, 84, 2, 2, 7646, 7647, 7, 84, 2, 2, 7647, 7648, 7, 71, 2, 2, 7648, 7649, 7, 80, 2, 2, 7649, 7650, 7, 86, 2, 2, 7650, 7651, 7, 88, 2, 2, 7651, 618, 3, 2, 2, 2, 7652, 7653, 7, 69, 2, 2, 7653, 7654, 7, 87, 2, 2, 7654, 7655, 7, 84, 2, 2, 7655, 7656, 7, 85, 2, 2, 7656, 7657, 7, 81, 2, 2, 7657, 7658, 7, 84, 2, 2, 7658, 620, 3, 2, 2, 2, 7659, 7660, 7, 69, 2, 2, 7660, 7661, 7, 87, 2, 2, 7661, 7662, 7, 84, 2, 2, 7662, 7663, 7, 85, 2, 2, 7663, 7664, 7, 81, 2, 2, 7664, 7665, 7, 84, 2, 2, 7665, 7666, 7, 97, 2, 2, 7666, 7667, 7, 85, 2, 2, 7667, 7668, 7, 74, 2, 2, 7668, 7669, 7, 67, 2, 2, 7669, 7670, 7, 84, 2, 2, 7670, 7671, 7, 75, 2, 2, 7671, 7672, 7, 80, 2, 2, 7672, 7673, 7, 73, 2, 2, 7673, 7674, 7, 97, 2, 2, 7674, 7675, 7, 71, 2, 2, 7675, 7676, 7, 90, 2, 2, 7676, 7677, 7, 67, 2, 2, 7677, 7678, 7, 69, 2, 2, 7678, 7679, 7, 86, 2, 2, 7679, 622, 3, 2, 2, 2, 7680, 7681, 7, 69, 2, 2, 7681, 7682, 7, 87, 2, 2, 7682, 7683, 7, 84, 2, 2, 7683, 7684, 7, 85, 2, 2, 7684, 7685, 7, 81, 2, 2, 7685, 7686, 7, 84, 2, 2, 7686, 7687, 7, 97, 2, 2, 7687, 7688, 7, 85, 2, 2, 7688, 7689, 7, 82, 2, 2, 7689, 7690, 7, 71, 2, 2, 7690, 7691, 7, 69, 2, 2, 7691, 7692, 7, 75, 2, 2, 7692, 7693, 7, 72, 2, 2, 7693, 7694, 7, 75, 2, 2, 7694, 7695, 7, 69, 2, 2, 7695, 7696, 7, 97, 2, 2, 7696, 7697, 7, 85, 2, 2, 7697, 7698, 7, 71, 2, 2, 7698, 7699, 7, 73, 2, 2, 7699, 7700, 7, 79, 2, 2, 7700, 7701, 7, 71, 2, 2, 7701, 7702, 7, 80, 2, 2, 7702, 7703, 7, 86, 2, 2, 7703, 624, 3, 2, 2, 2, 7704, 7705, 7, 69, 2, 2, 7705, 7706, 7, 87, 2, 2, 7706, 7707, 7, 85, 2, 2, 7707, 7708, 7, 86, 2, 2, 7708, 7709, 7, 81, 2, 2, 7709, 7710, 7, 79, 2, 2, 7710, 7711, 7, 70, 2, 2, 7711, 7712, 7, 67, 2, 2, 7712, 7713, 7, 86, 2, 2, 7713, 7714, 7, 87, 2, 2, 7714, 7715, 7, 79, 2, 2, 7715, 626, 3, 2, 2, 2, 7716, 7717, 7, 69, 2, 2, 7717, 7718, 7, 88, 2, 2, 7718, 628, 3, 2, 2, 2, 7719, 7720, 7, 69, 2, 2, 7720, 7721, 7, 91, 2, 2, 7721, 7722, 7, 69, 2, 2, 7722, 7723, 7, 78, 2, 2, 7723, 7724, 7, 71, 2, 2, 7724, 630, 3, 2, 2, 2, 7725, 7726, 7, 70, 2, 2, 7726, 7727, 7, 67, 2, 2, 7727, 7728, 7, 80, 2, 2, 7728, 7729, 7, 73, 2, 2, 7729, 7730, 7, 78, 2, 2, 7730, 7731, 7, 75, 2, 2, 7731, 7732, 7, 80, 2, 2, 7732, 7733, 7, 73, 2, 2, 7733, 632, 3, 2, 2, 2, 7734, 7735, 7, 70, 2, 2, 7735, 7736, 7, 67, 2, 2, 7736, 7737, 7, 86, 2, 2, 7737, 7738, 7, 67, 2, 2, 7738, 7739, 7, 68, 2, 2, 7739, 7740, 7, 67, 2, 2, 7740, 7741, 7, 85, 2, 2, 7741, 7742, 7, 71, 2, 2, 7742, 634, 3, 2, 2, 2, 7743, 7744, 7, 70, 2, 2, 7744, 7745, 7, 67, 2, 2, 7745, 7746, 7, 86, 2, 2, 7746, 7747, 7, 67, 2, 2, 7747, 636, 3, 2, 2, 2, 7748, 7749, 7, 70, 2, 2, 7749, 7750, 7, 67, 2, 2, 7750, 7751, 7, 86, 2, 2, 7751, 7752, 7, 67, 2, 2, 7752, 7753, 7, 72, 2, 2, 7753, 7754, 7, 75, 2, 2, 7754, 7755, 7, 78, 2, 2, 7755, 7756, 7, 71, 2, 2, 7756, 638, 3, 2, 2, 2, 7757, 7758, 7, 70, 2, 2, 7758, 7759, 7, 67, 2, 2, 7759, 7760, 7, 86, 2, 2, 7760, 7761, 7, 67, 2, 2, 7761, 7762, 7, 72, 2, 2, 7762, 7763, 7, 75, 2, 2, 7763, 7764, 7, 78, 2, 2, 7764, 7765, 7, 71, 2, 2, 7765, 7766, 7, 85, 2, 2, 7766, 640, 3, 2, 2, 2, 7767, 7768, 7, 70, 2, 2, 7768, 7769, 7, 67, 2, 2, 7769, 7770, 7, 86, 2, 2, 7770, 7771, 7, 67, 2, 2, 7771, 7772, 7, 73, 2, 2, 7772, 7773, 7, 87, 2, 2, 7773, 7774, 7, 67, 2, 2, 7774, 7775, 7, 84, 2, 2, 7775, 7776, 7, 70, 2, 2, 7776, 7777, 7, 69, 2, 2, 7777, 7778, 7, 81, 2, 2, 7778, 7779, 7, 80, 2, 2, 7779, 7780, 7, 72, 2, 2, 7780, 7781, 7, 75, 2, 2, 7781, 7782, 7, 73, 2, 2, 7782, 642, 3, 2, 2, 2, 7783, 7784, 7, 70, 2, 2, 7784, 7785, 7, 67, 2, 2, 7785, 7786, 7, 86, 2, 2, 7786, 7787, 7, 67, 2, 2, 7787, 7788, 7, 79, 2, 2, 7788, 7789, 7, 81, 2, 2, 7789, 7790, 7, 88, 2, 2, 7790, 7791, 7, 71, 2, 2, 7791, 7792, 7, 79, 2, 2, 7792, 7793, 7, 71, 2, 2, 7793, 7794, 7, 80, 2, 2, 7794, 7795, 7, 86, 2, 2, 7795, 644, 3, 2, 2, 2, 7796, 7797, 7, 70, 2, 2, 7797, 7798, 7, 67, 2, 2, 7798, 7799, 7, 86, 2, 2, 7799, 7800, 7, 67, 2, 2, 7800, 7801, 7, 81, 2, 2, 7801, 7802, 7, 68, 2, 2, 7802, 7803, 7, 76, 2, 2, 7803, 7804, 7, 80, 2, 2, 7804, 7805, 7, 81, 2, 2, 7805, 646, 3, 2, 2, 2, 7806, 7807, 7, 70, 2, 2, 7807, 7808, 7, 67, 2, 2, 7808, 7809, 7, 86, 2, 2, 7809, 7810, 7, 67, 2, 2, 7810, 7811, 7, 81, 2, 2, 7811, 7812, 7, 68, 2, 2, 7812, 7813, 7, 76, 2, 2, 7813, 7814, 7, 97, 2, 2, 7814, 7815, 7, 86, 2, 2, 7815, 7816, 7, 81, 2, 2, 7816, 7817, 7, 97, 2, 2, 7817, 7818, 7, 79, 2, 2, 7818, 7819, 7, 67, 2, 2, 7819, 7820, 7, 86, 2, 2, 7820, 7821, 7, 97, 2, 2, 7821, 7822, 7, 82, 2, 2, 7822, 7823, 7, 67, 2, 2, 7823, 7824, 7, 84, 2, 2, 7824, 7825, 7, 86, 2, 2, 7825, 7826, 7, 75, 2, 2, 7826, 7827, 7, 86, 2, 2, 7827, 7828, 7, 75, 2, 2, 7828, 7829, 7, 81, 2, 2, 7829, 7830, 7, 80, 2, 2, 7830, 648, 3, 2, 2, 2, 7831, 7832, 7, 70, 2, 2, 7832, 7833, 7, 67, 2, 2, 7833, 7834, 7, 86, 2, 2, 7834, 7835, 7, 67, 2, 2, 7835, 7836, 7, 81, 2, 2, 7836, 7837, 7, 68, 2, 2, 7837, 7838, 7, 76, 2, 2, 7838, 7839, 7, 97, 2, 2, 7839, 7840, 7, 86, 2, 2, 7840, 7841, 7, 81, 2, 2, 7841, 7842, 7, 97, 2, 2, 7842, 7843, 7, 82, 2, 2, 7843, 7844, 7, 67, 2, 2, 7844, 7845, 7, 84, 2, 2, 7845, 7846, 7, 86, 2, 2, 7846, 7847, 7, 75, 2, 2, 7847, 7848, 7, 86, 2, 2, 7848, 7849, 7, 75, 2, 2, 7849, 7850, 7, 81, 2, 2, 7850, 7851, 7, 80, 2, 2, 7851, 650, 3, 2, 2, 2, 7852, 7853, 7, 70, 2, 2, 7853, 7854, 7, 67, 2, 2, 7854, 7855, 7, 86, 2, 2, 7855, 7856, 7, 67, 2, 2, 7856, 7857, 7, 82, 2, 2, 7857, 7858, 7, 87, 2, 2, 7858, 7859, 7, 79, 2, 2, 7859, 7860, 7, 82, 2, 2, 7860, 652, 3, 2, 2, 2, 7861, 7862, 7, 70, 2, 2, 7862, 7863, 7, 67, 2, 2, 7863, 7864, 7, 86, 2, 2, 7864, 7865, 7, 67, 2, 2, 7865, 7866, 7, 97, 2, 2, 7866, 7867, 7, 85, 2, 2, 7867, 7868, 7, 71, 2, 2, 7868, 7869, 7, 69, 2, 2, 7869, 7870, 7, 87, 2, 2, 7870, 7871, 7, 84, 2, 2, 7871, 7872, 7, 75, 2, 2, 7872, 7873, 7, 86, 2, 2, 7873, 7874, 7, 91, 2, 2, 7874, 7875, 7, 97, 2, 2, 7875, 7876, 7, 84, 2, 2, 7876, 7877, 7, 71, 2, 2, 7877, 7878, 7, 89, 2, 2, 7878, 7879, 7, 84, 2, 2, 7879, 7880, 7, 75, 2, 2, 7880, 7881, 7, 86, 2, 2, 7881, 7882, 7, 71, 2, 2, 7882, 7883, 7, 97, 2, 2, 7883, 7884, 7, 78, 2, 2, 7884, 7885, 7, 75, 2, 2, 7885, 7886, 7, 79, 2, 2, 7886, 7887, 7, 75, 2, 2, 7887, 7888, 7, 86, 2, 2, 7888, 654, 3, 2, 2, 2, 7889, 7890, 7, 70, 2, 2, 7890, 7891, 7, 67, 2, 2, 7891, 7892, 7, 86, 2, 2, 7892, 7893, 7, 71, 2, 2, 7893, 656, 3, 2, 2, 2, 7894, 7895, 7, 70, 2, 2, 7895, 7896, 7, 67, 2, 2, 7896, 7897, 7, 86, 2, 2, 7897, 7898, 7, 71, 2, 2, 7898, 7899, 7, 97, 2, 2, 7899, 7900, 7, 79, 2, 2, 7900, 7901, 7, 81, 2, 2, 7901, 7902, 7, 70, 2, 2, 7902, 7903, 7, 71, 2, 2, 7903, 658, 3, 2, 2, 2, 7904, 7905, 7, 70, 2, 2, 7905, 7906, 7, 67, 2, 2, 7906, 7907, 7, 91, 2, 2, 7907, 660, 3, 2, 2, 2, 7908, 7909, 7, 70, 2, 2, 7909, 7910, 7, 67, 2, 2, 7910, 7911, 7, 91, 2, 2, 7911, 7912, 7, 85, 2, 2, 7912, 662, 3, 2, 2, 2, 7913, 7914, 7, 70, 2, 2, 7914, 7915, 7, 68, 2, 2, 7915, 7916, 7, 67, 2, 2, 7916, 664, 3, 2, 2, 2, 7917, 7918, 7, 70, 2, 2, 7918, 7919, 7, 68, 2, 2, 7919, 7920, 7, 67, 2, 2, 7920, 7921, 7, 97, 2, 2, 7921, 7922, 7, 84, 2, 2, 7922, 7923, 7, 71, 2, 2, 7923, 7924, 7, 69, 2, 2, 7924, 7925, 7, 91, 2, 2, 7925, 7926, 7, 69, 2, 2, 7926, 7927, 7, 78, 2, 2, 7927, 7928, 7, 71, 2, 2, 7928, 7929, 7, 68, 2, 2, 7929, 7930, 7, 75, 2, 2, 7930, 7931, 7, 80, 2, 2, 7931, 666, 3, 2, 2, 2, 7932, 7933, 7, 70, 2, 2, 7933, 7934, 7, 68, 2, 2, 7934, 7935, 7, 79, 2, 2, 7935, 7936, 7, 85, 2, 2, 7936, 7937, 7, 97, 2, 2, 7937, 7938, 7, 85, 2, 2, 7938, 7939, 7, 86, 2, 2, 7939, 7940, 7, 67, 2, 2, 7940, 7941, 7, 86, 2, 2, 7941, 7942, 7, 85, 2, 2, 7942, 668, 3, 2, 2, 2, 7943, 7944, 7, 70, 2, 2, 7944, 7945, 7, 68, 2, 2, 7945, 7946, 7, 97, 2, 2, 7946, 7947, 7, 84, 2, 2, 7947, 7948, 7, 81, 2, 2, 7948, 7949, 7, 78, 2, 2, 7949, 7950, 7, 71, 2, 2, 7950, 7951, 7, 97, 2, 2, 7951, 7952, 7, 69, 2, 2, 7952, 7953, 7, 74, 2, 2, 7953, 7954, 7, 67, 2, 2, 7954, 7955, 7, 80, 2, 2, 7955, 7956, 7, 73, 2, 2, 7956, 7957, 7, 71, 2, 2, 7957, 670, 3, 2, 2, 2, 7958, 7959, 7, 70, 2, 2, 7959, 7960, 7, 68, 2, 2, 7960, 7961, 7, 86, 2, 2, 7961, 7962, 7, 75, 2, 2, 7962, 7963, 7, 79, 2, 2, 7963, 7964, 7, 71, 2, 2, 7964, 7965, 7, 92, 2, 2, 7965, 7966, 7, 81, 2, 2, 7966, 7967, 7, 80, 2, 2, 7967, 7968, 7, 71, 2, 2, 7968, 672, 3, 2, 2, 2, 7969, 7970, 7, 70, 2, 2, 7970, 7971, 7, 68, 2, 2, 7971, 7972, 7, 97, 2, 2, 7972, 7973, 7, 87, 2, 2, 7973, 7974, 7, 80, 2, 2, 7974, 7975, 7, 75, 2, 2, 7975, 7976, 7, 83, 2, 2, 7976, 7977, 7, 87, 2, 2, 7977, 7978, 7, 71, 2, 2, 7978, 7979, 7, 97, 2, 2, 7979, 7980, 7, 80, 2, 2, 7980, 7981, 7, 67, 2, 2, 7981, 7982, 7, 79, 2, 2, 7982, 7983, 7, 71, 2, 2, 7983, 674, 3, 2, 2, 2, 7984, 7985, 7, 70, 2, 2, 7985, 7986, 7, 68, 2, 2, 7986, 7987, 7, 97, 2, 2, 7987, 7988, 7, 88, 2, 2, 7988, 7989, 7, 71, 2, 2, 7989, 7990, 7, 84, 2, 2, 7990, 7991, 7, 85, 2, 2, 7991, 7992, 7, 75, 2, 2, 7992, 7993, 7, 81, 2, 2, 7993, 7994, 7, 80, 2, 2, 7994, 676, 3, 2, 2, 2, 7995, 7996, 7, 70, 2, 2, 7996, 7997, 7, 70, 2, 2, 7997, 7998, 7, 78, 2, 2, 7998, 678, 3, 2, 2, 2, 7999, 8000, 7, 70, 2, 2, 8000, 8001, 7, 71, 2, 2, 8001, 8002, 7, 67, 2, 2, 8002, 8003, 7, 78, 2, 2, 8003, 8004, 7, 78, 2, 2, 8004, 8005, 7, 81, 2, 2, 8005, 8006, 7, 69, 2, 2, 8006, 8007, 7, 67, 2, 2, 8007, 8008, 7, 86, 2, 2, 8008, 8009, 7, 71, 2, 2, 8009, 680, 3, 2, 2, 2, 8010, 8011, 7, 70, 2, 2, 8011, 8012, 7, 71, 2, 2, 8012, 8013, 7, 68, 2, 2, 8013, 8014, 7, 87, 2, 2, 8014, 8015, 7, 73, 2, 2, 8015, 682, 3, 2, 2, 2, 8016, 8017, 7, 70, 2, 2, 8017, 8018, 7, 71, 2, 2, 8018, 8019, 7, 68, 2, 2, 8019, 8020, 7, 87, 2, 2, 8020, 8021, 7, 73, 2, 2, 8021, 8022, 7, 73, 2, 2, 8022, 8023, 7, 71, 2, 2, 8023, 8024, 7, 84, 2, 2, 8024, 684, 3, 2, 2, 2, 8025, 8026, 7, 70, 2, 2, 8026, 8027, 7, 71, 2, 2, 8027, 8028, 7, 69, 2, 2, 8028, 686, 3, 2, 2, 2, 8029, 8030, 7, 70, 2, 2, 8030, 8031, 7, 71, 2, 2, 8031, 8032, 7, 69, 2, 2, 8032, 8033, 7, 75, 2, 2, 8033, 8034, 7, 79, 2, 2, 8034, 8035, 7, 67, 2, 2, 8035, 8036, 7, 78, 2, 2, 8036, 688, 3, 2, 2, 2, 8037, 8038, 7, 70, 2, 2, 8038, 8039, 7, 71, 2, 2, 8039, 8040, 7, 69, 2, 2, 8040, 8041, 7, 78, 2, 2, 8041, 8042, 7, 67, 2, 2, 8042, 8043, 7, 84, 2, 2, 8043, 8044, 7, 71, 2, 2, 8044, 690, 3, 2, 2, 2, 8045, 8046, 7, 70, 2, 2, 8046, 8047, 7, 71, 2, 2, 8047, 8048, 7, 69, 2, 2, 8048, 8049, 7, 81, 2, 2, 8049, 8050, 7, 79, 2, 2, 8050, 8051, 7, 82, 2, 2, 8051, 8052, 7, 81, 2, 2, 8052, 8053, 7, 85, 2, 2, 8053, 8054, 7, 71, 2, 2, 8054, 692, 3, 2, 2, 2, 8055, 8056, 7, 70, 2, 2, 8056, 8057, 7, 71, 2, 2, 8057, 8058, 7, 69, 2, 2, 8058, 8059, 7, 81, 2, 2, 8059, 8060, 7, 84, 2, 2, 8060, 8061, 7, 84, 2, 2, 8061, 8062, 7, 71, 2, 2, 8062, 8063, 7, 78, 2, 2, 8063, 8064, 7, 67, 2, 2, 8064, 8065, 7, 86, 2, 2, 8065, 8066, 7, 71, 2, 2, 8066, 694, 3, 2, 2, 2, 8067, 8068, 7, 70, 2, 2, 8068, 8069, 7, 71, 2, 2, 8069, 8070, 7, 69, 2, 2, 8070, 8071, 7, 84, 2, 2, 8071, 696, 3, 2, 2, 2, 8072, 8073, 7, 70, 2, 2, 8073, 8074, 7, 71, 2, 2, 8074, 8075, 7, 69, 2, 2, 8075, 8076, 7, 84, 2, 2, 8076, 8077, 7, 71, 2, 2, 8077, 8078, 7, 79, 2, 2, 8078, 8079, 7, 71, 2, 2, 8079, 8080, 7, 80, 2, 2, 8080, 8081, 7, 86, 2, 2, 8081, 698, 3, 2, 2, 2, 8082, 8083, 7, 70, 2, 2, 8083, 8084, 7, 71, 2, 2, 8084, 8085, 7, 69, 2, 2, 8085, 8086, 7, 84, 2, 2, 8086, 8087, 7, 91, 2, 2, 8087, 8088, 7, 82, 2, 2, 8088, 8089, 7, 86, 2, 2, 8089, 700, 3, 2, 2, 2, 8090, 8091, 7, 70, 2, 2, 8091, 8092, 7, 71, 2, 2, 8092, 8093, 7, 70, 2, 2, 8093, 8094, 7, 87, 2, 2, 8094, 8095, 7, 82, 2, 2, 8095, 8096, 7, 78, 2, 2, 8096, 8097, 7, 75, 2, 2, 8097, 8098, 7, 69, 2, 2, 8098, 8099, 7, 67, 2, 2, 8099, 8100, 7, 86, 2, 2, 8100, 8101, 7, 71, 2, 2, 8101, 702, 3, 2, 2, 2, 8102, 8103, 7, 70, 2, 2, 8103, 8104, 7, 71, 2, 2, 8104, 8105, 7, 72, 2, 2, 8105, 8106, 7, 67, 2, 2, 8106, 8107, 7, 87, 2, 2, 8107, 8108, 7, 78, 2, 2, 8108, 8109, 7, 86, 2, 2, 8109, 704, 3, 2, 2, 2, 8110, 8111, 7, 70, 2, 2, 8111, 8112, 7, 71, 2, 2, 8112, 8113, 7, 72, 2, 2, 8113, 8114, 7, 67, 2, 2, 8114, 8115, 7, 87, 2, 2, 8115, 8116, 7, 78, 2, 2, 8116, 8117, 7, 86, 2, 2, 8117, 8118, 7, 85, 2, 2, 8118, 706, 3, 2, 2, 2, 8119, 8120, 7, 70, 2, 2, 8120, 8121, 7, 71, 2, 2, 8121, 8122, 7, 72, 2, 2, 8122, 8123, 7, 71, 2, 2, 8123, 8124, 7, 84, 2, 2, 8124, 8125, 7, 84, 2, 2, 8125, 8126, 7, 67, 2, 2, 8126, 8127, 7, 68, 2, 2, 8127, 8128, 7, 78, 2, 2, 8128, 8129, 7, 71, 2, 2, 8129, 708, 3, 2, 2, 2, 8130, 8131, 7, 70, 2, 2, 8131, 8132, 7, 71, 2, 2, 8132, 8133, 7, 72, 2, 2, 8133, 8134, 7, 71, 2, 2, 8134, 8135, 7, 84, 2, 2, 8135, 8136, 7, 84, 2, 2, 8136, 8137, 7, 71, 2, 2, 8137, 8138, 7, 70, 2, 2, 8138, 710, 3, 2, 2, 2, 8139, 8140, 7, 70, 2, 2, 8140, 8141, 7, 71, 2, 2, 8141, 8142, 7, 72, 2, 2, 8142, 8143, 7, 75, 2, 2, 8143, 8144, 7, 80, 2, 2, 8144, 8145, 7, 71, 2, 2, 8145, 8146, 7, 70, 2, 2, 8146, 712, 3, 2, 2, 2, 8147, 8148, 7, 70, 2, 2, 8148, 8149, 7, 71, 2, 2, 8149, 8150, 7, 72, 2, 2, 8150, 8151, 7, 75, 2, 2, 8151, 8152, 7, 80, 2, 2, 8152, 8153, 7, 71, 2, 2, 8153, 714, 3, 2, 2, 2, 8154, 8155, 7, 70, 2, 2, 8155, 8156, 7, 71, 2, 2, 8156, 8157, 7, 72, 2, 2, 8157, 8158, 7, 75, 2, 2, 8158, 8159, 7, 80, 2, 2, 8159, 8160, 7, 71, 2, 2, 8160, 8161, 7, 84, 2, 2, 8161, 716, 3, 2, 2, 2, 8162, 8163, 7, 70, 2, 2, 8163, 8164, 7, 71, 2, 2, 8164, 8165, 7, 73, 2, 2, 8165, 8166, 7, 84, 2, 2, 8166, 8167, 7, 71, 2, 2, 8167, 8168, 7, 71, 2, 2, 8168, 718, 3, 2, 2, 2, 8169, 8170, 7, 70, 2, 2, 8170, 8171, 7, 71, 2, 2, 8171, 8172, 7, 78, 2, 2, 8172, 8173, 7, 67, 2, 2, 8173, 8174, 7, 91, 2, 2, 8174, 720, 3, 2, 2, 2, 8175, 8176, 7, 70, 2, 2, 8176, 8177, 7, 71, 2, 2, 8177, 8178, 7, 78, 2, 2, 8178, 8179, 7, 71, 2, 2, 8179, 8180, 7, 73, 2, 2, 8180, 8181, 7, 67, 2, 2, 8181, 8182, 7, 86, 2, 2, 8182, 8183, 7, 71, 2, 2, 8183, 722, 3, 2, 2, 2, 8184, 8185, 7, 70, 2, 2, 8185, 8186, 7, 71, 2, 2, 8186, 8187, 7, 78, 2, 2, 8187, 8188, 7, 71, 2, 2, 8188, 8189, 7, 86, 2, 2, 8189, 8190, 7, 71, 2, 2, 8190, 8191, 7, 97, 2, 2, 8191, 8192, 7, 67, 2, 2, 8192, 8193, 7, 78, 2, 2, 8193, 8194, 7, 78, 2, 2, 8194, 724, 3, 2, 2, 2, 8195, 8196, 7, 70, 2, 2, 8196, 8197, 7, 71, 2, 2, 8197, 8198, 7, 78, 2, 2, 8198, 8199, 7, 71, 2, 2, 8199, 8200, 7, 86, 2, 2, 8200, 8201, 7, 71, 2, 2, 8201, 726, 3, 2, 2, 2, 8202, 8203, 7, 70, 2, 2, 8203, 8204, 7, 71, 2, 2, 8204, 8205, 7, 78, 2, 2, 8205, 8206, 7, 71, 2, 2, 8206, 8207, 7, 86, 2, 2, 8207, 8208, 7, 71, 2, 2, 8208, 8209, 7, 90, 2, 2, 8209, 8210, 7, 79, 2, 2, 8210, 8211, 7, 78, 2, 2, 8211, 728, 3, 2, 2, 2, 8212, 8213, 7, 70, 2, 2, 8213, 8214, 7, 71, 2, 2, 8214, 8215, 7, 79, 2, 2, 8215, 8216, 7, 67, 2, 2, 8216, 8217, 7, 80, 2, 2, 8217, 8218, 7, 70, 2, 2, 8218, 730, 3, 2, 2, 2, 8219, 8220, 7, 70, 2, 2, 8220, 8221, 7, 71, 2, 2, 8221, 8222, 7, 80, 2, 2, 8222, 8223, 7, 85, 2, 2, 8223, 8224, 7, 71, 2, 2, 8224, 8225, 7, 97, 2, 2, 8225, 8226, 7, 84, 2, 2, 8226, 8227, 7, 67, 2, 2, 8227, 8228, 7, 80, 2, 2, 8228, 8229, 7, 77, 2, 2, 8229, 8230, 7, 79, 2, 2, 8230, 732, 3, 2, 2, 2, 8231, 8232, 7, 70, 2, 2, 8232, 8233, 7, 71, 2, 2, 8233, 8234, 7, 82, 2, 2, 8234, 8235, 7, 71, 2, 2, 8235, 8236, 7, 80, 2, 2, 8236, 8237, 7, 70, 2, 2, 8237, 8238, 7, 71, 2, 2, 8238, 8239, 7, 80, 2, 2, 8239, 8240, 7, 86, 2, 2, 8240, 734, 3, 2, 2, 2, 8241, 8242, 7, 70, 2, 2, 8242, 8243, 7, 71, 2, 2, 8243, 8244, 7, 82, 2, 2, 8244, 8245, 7, 86, 2, 2, 8245, 8246, 7, 74, 2, 2, 8246, 736, 3, 2, 2, 2, 8247, 8248, 7, 70, 2, 2, 8248, 8249, 7, 71, 2, 2, 8249, 8250, 7, 83, 2, 2, 8250, 8251, 7, 87, 2, 2, 8251, 8252, 7, 71, 2, 2, 8252, 8253, 7, 87, 2, 2, 8253, 8254, 7, 71, 2, 2, 8254, 738, 3, 2, 2, 2, 8255, 8256, 7, 70, 2, 2, 8256, 8257, 7, 71, 2, 2, 8257, 8258, 7, 84, 2, 2, 8258, 8259, 7, 71, 2, 2, 8259, 8260, 7, 72, 2, 2, 8260, 740, 3, 2, 2, 2, 8261, 8262, 7, 70, 2, 2, 8262, 8263, 7, 71, 2, 2, 8263, 8264, 7, 84, 2, 2, 8264, 8265, 7, 71, 2, 2, 8265, 8266, 7, 72, 2, 2, 8266, 8267, 7, 97, 2, 2, 8267, 8268, 7, 80, 2, 2, 8268, 8269, 7, 81, 2, 2, 8269, 8270, 7, 97, 2, 2, 8270, 8271, 7, 84, 2, 2, 8271, 8272, 7, 71, 2, 2, 8272, 8273, 7, 89, 2, 2, 8273, 8274, 7, 84, 2, 2, 8274, 8275, 7, 75, 2, 2, 8275, 8276, 7, 86, 2, 2, 8276, 8277, 7, 71, 2, 2, 8277, 742, 3, 2, 2, 2, 8278, 8279, 7, 70, 2, 2, 8279, 8280, 7, 71, 2, 2, 8280, 8281, 7, 85, 2, 2, 8281, 8282, 7, 69, 2, 2, 8282, 744, 3, 2, 2, 2, 8283, 8284, 7, 70, 2, 2, 8284, 8285, 7, 71, 2, 2, 8285, 8286, 7, 85, 2, 2, 8286, 8287, 7, 86, 2, 2, 8287, 8288, 7, 84, 2, 2, 8288, 8289, 7, 81, 2, 2, 8289, 8290, 7, 91, 2, 2, 8290, 746, 3, 2, 2, 2, 8291, 8292, 7, 70, 2, 2, 8292, 8293, 7, 71, 2, 2, 8293, 8294, 7, 86, 2, 2, 8294, 8295, 7, 67, 2, 2, 8295, 8296, 7, 69, 2, 2, 8296, 8297, 7, 74, 2, 2, 8297, 8298, 7, 71, 2, 2, 8298, 8299, 7, 70, 2, 2, 8299, 748, 3, 2, 2, 2, 8300, 8301, 7, 70, 2, 2, 8301, 8302, 7, 71, 2, 2, 8302, 8303, 7, 86, 2, 2, 8303, 8304, 7, 71, 2, 2, 8304, 8305, 7, 84, 2, 2, 8305, 8306, 7, 79, 2, 2, 8306, 8307, 7, 75, 2, 2, 8307, 8308, 7, 80, 2, 2, 8308, 8309, 7, 71, 2, 2, 8309, 8310, 7, 85, 2, 2, 8310, 750, 3, 2, 2, 2, 8311, 8312, 7, 70, 2, 2, 8312, 8313, 7, 71, 2, 2, 8313, 8314, 7, 86, 2, 2, 8314, 8315, 7, 71, 2, 2, 8315, 8316, 7, 84, 2, 2, 8316, 8317, 7, 79, 2, 2, 8317, 8318, 7, 75, 2, 2, 8318, 8319, 7, 80, 2, 2, 8319, 8320, 7, 75, 2, 2, 8320, 8321, 7, 85, 2, 2, 8321, 8322, 7, 86, 2, 2, 8322, 8323, 7, 75, 2, 2, 8323, 8324, 7, 69, 2, 2, 8324, 752, 3, 2, 2, 2, 8325, 8326, 7, 70, 2, 2, 8326, 8327, 7, 75, 2, 2, 8327, 8328, 7, 69, 2, 2, 8328, 8329, 7, 86, 2, 2, 8329, 8330, 7, 75, 2, 2, 8330, 8331, 7, 81, 2, 2, 8331, 8332, 7, 80, 2, 2, 8332, 8333, 7, 67, 2, 2, 8333, 8334, 7, 84, 2, 2, 8334, 8335, 7, 91, 2, 2, 8335, 754, 3, 2, 2, 2, 8336, 8337, 7, 70, 2, 2, 8337, 8338, 7, 75, 2, 2, 8338, 8339, 7, 79, 2, 2, 8339, 8340, 7, 71, 2, 2, 8340, 8341, 7, 80, 2, 2, 8341, 8342, 7, 85, 2, 2, 8342, 8343, 7, 75, 2, 2, 8343, 8344, 7, 81, 2, 2, 8344, 8345, 7, 80, 2, 2, 8345, 756, 3, 2, 2, 2, 8346, 8347, 7, 70, 2, 2, 8347, 8348, 7, 75, 2, 2, 8348, 8349, 7, 79, 2, 2, 8349, 8350, 7, 71, 2, 2, 8350, 8351, 7, 80, 2, 2, 8351, 8352, 7, 85, 2, 2, 8352, 8353, 7, 75, 2, 2, 8353, 8354, 7, 81, 2, 2, 8354, 8355, 7, 80, 2, 2, 8355, 8356, 7, 85, 2, 2, 8356, 758, 3, 2, 2, 2, 8357, 8358, 7, 70, 2, 2, 8358, 8359, 7, 75, 2, 2, 8359, 8360, 7, 84, 2, 2, 8360, 8361, 7, 71, 2, 2, 8361, 8362, 7, 69, 2, 2, 8362, 8363, 7, 86, 2, 2, 8363, 8364, 7, 97, 2, 2, 8364, 8365, 7, 78, 2, 2, 8365, 8366, 7, 81, 2, 2, 8366, 8367, 7, 67, 2, 2, 8367, 8368, 7, 70, 2, 2, 8368, 760, 3, 2, 2, 2, 8369, 8370, 7, 70, 2, 2, 8370, 8371, 7, 75, 2, 2, 8371, 8372, 7, 84, 2, 2, 8372, 8373, 7, 71, 2, 2, 8373, 8374, 7, 69, 2, 2, 8374, 8375, 7, 86, 2, 2, 8375, 8376, 7, 81, 2, 2, 8376, 8377, 7, 84, 2, 2, 8377, 8378, 7, 91, 2, 2, 8378, 762, 3, 2, 2, 2, 8379, 8380, 7, 70, 2, 2, 8380, 8381, 7, 75, 2, 2, 8381, 8382, 7, 84, 2, 2, 8382, 8383, 7, 71, 2, 2, 8383, 8384, 7, 69, 2, 2, 8384, 8385, 7, 86, 2, 2, 8385, 8386, 7, 97, 2, 2, 8386, 8387, 7, 82, 2, 2, 8387, 8388, 7, 67, 2, 2, 8388, 8389, 7, 86, 2, 2, 8389, 8390, 7, 74, 2, 2, 8390, 764, 3, 2, 2, 2, 8391, 8392, 7, 70, 2, 2, 8392, 8393, 7, 75, 2, 2, 8393, 8394, 7, 85, 2, 2, 8394, 8395, 7, 67, 2, 2, 8395, 8396, 7, 68, 2, 2, 8396, 8397, 7, 78, 2, 2, 8397, 8398, 7, 71, 2, 2, 8398, 8399, 7, 97, 2, 2, 8399, 8400, 7, 67, 2, 2, 8400, 8401, 7, 78, 2, 2, 8401, 8402, 7, 78, 2, 2, 8402, 766, 3, 2, 2, 2, 8403, 8404, 7, 70, 2, 2, 8404, 8405, 7, 75, 2, 2, 8405, 8406, 7, 85, 2, 2, 8406, 8407, 7, 67, 2, 2, 8407, 8408, 7, 68, 2, 2, 8408, 8409, 7, 78, 2, 2, 8409, 8410, 7, 71, 2, 2, 8410, 768, 3, 2, 2, 2, 8411, 8412, 7, 70, 2, 2, 8412, 8413, 7, 75, 2, 2, 8413, 8414, 7, 85, 2, 2, 8414, 8415, 7, 67, 2, 2, 8415, 8416, 7, 68, 2, 2, 8416, 8417, 7, 78, 2, 2, 8417, 8418, 7, 71, 2, 2, 8418, 8419, 7, 97, 2, 2, 8419, 8420, 7, 82, 2, 2, 8420, 8421, 7, 67, 2, 2, 8421, 8422, 7, 84, 2, 2, 8422, 8423, 7, 67, 2, 2, 8423, 8424, 7, 78, 2, 2, 8424, 8425, 7, 78, 2, 2, 8425, 8426, 7, 71, 2, 2, 8426, 8427, 7, 78, 2, 2, 8427, 8428, 7, 97, 2, 2, 8428, 8429, 7, 70, 2, 2, 8429, 8430, 7, 79, 2, 2, 8430, 8431, 7, 78, 2, 2, 8431, 770, 3, 2, 2, 2, 8432, 8433, 7, 70, 2, 2, 8433, 8434, 7, 75, 2, 2, 8434, 8435, 7, 85, 2, 2, 8435, 8436, 7, 67, 2, 2, 8436, 8437, 7, 68, 2, 2, 8437, 8438, 7, 78, 2, 2, 8438, 8439, 7, 71, 2, 2, 8439, 8440, 7, 97, 2, 2, 8440, 8441, 7, 82, 2, 2, 8441, 8442, 7, 84, 2, 2, 8442, 8443, 7, 71, 2, 2, 8443, 8444, 7, 85, 2, 2, 8444, 8445, 7, 71, 2, 2, 8445, 8446, 7, 86, 2, 2, 8446, 772, 3, 2, 2, 2, 8447, 8448, 7, 70, 2, 2, 8448, 8449, 7, 75, 2, 2, 8449, 8450, 7, 85, 2, 2, 8450, 8451, 7, 67, 2, 2, 8451, 8452, 7, 68, 2, 2, 8452, 8453, 7, 78, 2, 2, 8453, 8454, 7, 71, 2, 2, 8454, 8455, 7, 97, 2, 2, 8455, 8456, 7, 84, 2, 2, 8456, 8457, 7, 82, 2, 2, 8457, 8458, 7, 77, 2, 2, 8458, 8459, 7, 71, 2, 2, 8459, 774, 3, 2, 2, 2, 8460, 8461, 7, 70, 2, 2, 8461, 8462, 7, 75, 2, 2, 8462, 8463, 7, 85, 2, 2, 8463, 8464, 7, 67, 2, 2, 8464, 8465, 7, 78, 2, 2, 8465, 8466, 7, 78, 2, 2, 8466, 8467, 7, 81, 2, 2, 8467, 8468, 7, 89, 2, 2, 8468, 776, 3, 2, 2, 2, 8469, 8470, 7, 70, 2, 2, 8470, 8471, 7, 75, 2, 2, 8471, 8472, 7, 85, 2, 2, 8472, 8473, 7, 67, 2, 2, 8473, 8474, 7, 85, 2, 2, 8474, 8475, 7, 85, 2, 2, 8475, 8476, 7, 81, 2, 2, 8476, 8477, 7, 69, 2, 2, 8477, 8478, 7, 75, 2, 2, 8478, 8479, 7, 67, 2, 2, 8479, 8480, 7, 86, 2, 2, 8480, 8481, 7, 71, 2, 2, 8481, 778, 3, 2, 2, 2, 8482, 8483, 7, 70, 2, 2, 8483, 8484, 7, 75, 2, 2, 8484, 8485, 7, 85, 2, 2, 8485, 8486, 7, 69, 2, 2, 8486, 8487, 7, 67, 2, 2, 8487, 8488, 7, 84, 2, 2, 8488, 8489, 7, 70, 2, 2, 8489, 780, 3, 2, 2, 2, 8490, 8491, 7, 70, 2, 2, 8491, 8492, 7, 75, 2, 2, 8492, 8493, 7, 85, 2, 2, 8493, 8494, 7, 69, 2, 2, 8494, 8495, 7, 81, 2, 2, 8495, 8496, 7, 80, 2, 2, 8496, 8497, 7, 80, 2, 2, 8497, 8498, 7, 71, 2, 2, 8498, 8499, 7, 69, 2, 2, 8499, 8500, 7, 86, 2, 2, 8500, 782, 3, 2, 2, 2, 8501, 8502, 7, 70, 2, 2, 8502, 8503, 7, 75, 2, 2, 8503, 8504, 7, 85, 2, 2, 8504, 8505, 7, 77, 2, 2, 8505, 784, 3, 2, 2, 2, 8506, 8507, 7, 70, 2, 2, 8507, 8508, 7, 75, 2, 2, 8508, 8509, 7, 85, 2, 2, 8509, 8510, 7, 77, 2, 2, 8510, 8511, 7, 73, 2, 2, 8511, 8512, 7, 84, 2, 2, 8512, 8513, 7, 81, 2, 2, 8513, 8514, 7, 87, 2, 2, 8514, 8515, 7, 82, 2, 2, 8515, 786, 3, 2, 2, 2, 8516, 8517, 7, 41, 2, 2, 8517, 8518, 7, 45, 2, 2, 8518, 8519, 7, 34, 2, 2, 8519, 8520, 7, 70, 2, 2, 8520, 8521, 7, 75, 2, 2, 8521, 8522, 7, 85, 2, 2, 8522, 8523, 7, 77, 2, 2, 8523, 8524, 7, 73, 2, 2, 8524, 8525, 7, 84, 2, 2, 8525, 8526, 7, 81, 2, 2, 8526, 8527, 7, 87, 2, 2, 8527, 8528, 7, 82, 2, 2, 8528, 788, 3, 2, 2, 2, 8529, 8530, 7, 70, 2, 2, 8530, 8531, 7, 75, 2, 2, 8531, 8532, 7, 85, 2, 2, 8532, 8533, 7, 77, 2, 2, 8533, 8534, 7, 85, 2, 2, 8534, 790, 3, 2, 2, 2, 8535, 8536, 7, 70, 2, 2, 8536, 8537, 7, 75, 2, 2, 8537, 8538, 7, 85, 2, 2, 8538, 8539, 7, 79, 2, 2, 8539, 8540, 7, 81, 2, 2, 8540, 8541, 7, 87, 2, 2, 8541, 8542, 7, 80, 2, 2, 8542, 8543, 7, 86, 2, 2, 8543, 792, 3, 2, 2, 2, 8544, 8545, 7, 70, 2, 2, 8545, 8546, 7, 75, 2, 2, 8546, 8547, 7, 85, 2, 2, 8547, 8548, 7, 86, 2, 2, 8548, 8549, 7, 75, 2, 2, 8549, 8550, 7, 80, 2, 2, 8550, 8551, 7, 69, 2, 2, 8551, 8552, 7, 86, 2, 2, 8552, 794, 3, 2, 2, 2, 8553, 8554, 7, 70, 2, 2, 8554, 8555, 7, 75, 2, 2, 8555, 8556, 7, 85, 2, 2, 8556, 8557, 7, 86, 2, 2, 8557, 8558, 7, 75, 2, 2, 8558, 8559, 7, 80, 2, 2, 8559, 8560, 7, 73, 2, 2, 8560, 8561, 7, 87, 2, 2, 8561, 8562, 7, 75, 2, 2, 8562, 8563, 7, 85, 2, 2, 8563, 8564, 7, 74, 2, 2, 8564, 8565, 7, 71, 2, 2, 8565, 8566, 7, 70, 2, 2, 8566, 796, 3, 2, 2, 2, 8567, 8568, 7, 70, 2, 2, 8568, 8569, 7, 75, 2, 2, 8569, 8570, 7, 85, 2, 2, 8570, 8571, 7, 86, 2, 2, 8571, 8572, 7, 84, 2, 2, 8572, 8573, 7, 75, 2, 2, 8573, 8574, 7, 68, 2, 2, 8574, 8575, 7, 87, 2, 2, 8575, 8576, 7, 86, 2, 2, 8576, 8577, 7, 71, 2, 2, 8577, 8578, 7, 70, 2, 2, 8578, 798, 3, 2, 2, 2, 8579, 8580, 7, 70, 2, 2, 8580, 8581, 7, 75, 2, 2, 8581, 8582, 7, 85, 2, 2, 8582, 8583, 7, 86, 2, 2, 8583, 8584, 7, 84, 2, 2, 8584, 8585, 7, 75, 2, 2, 8585, 8586, 7, 68, 2, 2, 8586, 8587, 7, 87, 2, 2, 8587, 8588, 7, 86, 2, 2, 8588, 8589, 7, 71, 2, 2, 8589, 800, 3, 2, 2, 2, 8590, 8591, 7, 70, 2, 2, 8591, 8592, 7, 79, 2, 2, 8592, 8593, 7, 78, 2, 2, 8593, 802, 3, 2, 2, 2, 8594, 8595, 7, 70, 2, 2, 8595, 8596, 7, 79, 2, 2, 8596, 8597, 7, 78, 2, 2, 8597, 8598, 7, 97, 2, 2, 8598, 8599, 7, 87, 2, 2, 8599, 8600, 7, 82, 2, 2, 8600, 8601, 7, 70, 2, 2, 8601, 8602, 7, 67, 2, 2, 8602, 8603, 7, 86, 2, 2, 8603, 8604, 7, 71, 2, 2, 8604, 804, 3, 2, 2, 2, 8605, 8606, 7, 70, 2, 2, 8606, 8607, 7, 81, 2, 2, 8607, 8608, 7, 69, 2, 2, 8608, 8609, 7, 72, 2, 2, 8609, 8610, 7, 75, 2, 2, 8610, 8611, 7, 70, 2, 2, 8611, 8612, 7, 71, 2, 2, 8612, 8613, 7, 78, 2, 2, 8613, 8614, 7, 75, 2, 2, 8614, 8615, 7, 86, 2, 2, 8615, 8616, 7, 91, 2, 2, 8616, 806, 3, 2, 2, 2, 8617, 8618, 7, 70, 2, 2, 8618, 8619, 7, 81, 2, 2, 8619, 8620, 7, 69, 2, 2, 8620, 8621, 7, 87, 2, 2, 8621, 8622, 7, 79, 2, 2, 8622, 8623, 7, 71, 2, 2, 8623, 8624, 7, 80, 2, 2, 8624, 8625, 7, 86, 2, 2, 8625, 808, 3, 2, 2, 2, 8626, 8627, 7, 70, 2, 2, 8627, 8628, 7, 81, 2, 2, 8628, 8629, 7, 79, 2, 2, 8629, 8630, 7, 67, 2, 2, 8630, 8631, 7, 75, 2, 2, 8631, 8632, 7, 80, 2, 2, 8632, 8633, 7, 97, 2, 2, 8633, 8634, 7, 75, 2, 2, 8634, 8635, 7, 80, 2, 2, 8635, 8636, 7, 70, 2, 2, 8636, 8637, 7, 71, 2, 2, 8637, 8638, 7, 90, 2, 2, 8638, 8639, 7, 97, 2, 2, 8639, 8640, 7, 72, 2, 2, 8640, 8641, 7, 75, 2, 2, 8641, 8642, 7, 78, 2, 2, 8642, 8643, 7, 86, 2, 2, 8643, 8644, 7, 71, 2, 2, 8644, 8645, 7, 84, 2, 2, 8645, 810, 3, 2, 2, 2, 8646, 8647, 7, 70, 2, 2, 8647, 8648, 7, 81, 2, 2, 8648, 8649, 7, 79, 2, 2, 8649, 8650, 7, 67, 2, 2, 8650, 8651, 7, 75, 2, 2, 8651, 8652, 7, 80, 2, 2, 8652, 8653, 7, 97, 2, 2, 8653, 8654, 7, 75, 2, 2, 8654, 8655, 7, 80, 2, 2, 8655, 8656, 7, 70, 2, 2, 8656, 8657, 7, 71, 2, 2, 8657, 8658, 7, 90, 2, 2, 8658, 8659, 7, 97, 2, 2, 8659, 8660, 7, 80, 2, 2, 8660, 8661, 7, 81, 2, 2, 8661, 8662, 7, 97, 2, 2, 8662, 8663, 7, 85, 2, 2, 8663, 8664, 7, 81, 2, 2, 8664, 8665, 7, 84, 2, 2, 8665, 8666, 7, 86, 2, 2, 8666, 812, 3, 2, 2, 2, 8667, 8668, 7, 70, 2, 2, 8668, 8669, 7, 81, 2, 2, 8669, 8670, 7, 79, 2, 2, 8670, 8671, 7, 67, 2, 2, 8671, 8672, 7, 75, 2, 2, 8672, 8673, 7, 80, 2, 2, 8673, 8674, 7, 97, 2, 2, 8674, 8675, 7, 75, 2, 2, 8675, 8676, 7, 80, 2, 2, 8676, 8677, 7, 70, 2, 2, 8677, 8678, 7, 71, 2, 2, 8678, 8679, 7, 90, 2, 2, 8679, 8680, 7, 97, 2, 2, 8680, 8681, 7, 85, 2, 2, 8681, 8682, 7, 81, 2, 2, 8682, 8683, 7, 84, 2, 2, 8683, 8684, 7, 86, 2, 2, 8684, 814, 3, 2, 2, 2, 8685, 8686, 7, 70, 2, 2, 8686, 8687, 7, 81, 2, 2, 8687, 8688, 7, 87, 2, 2, 8688, 8689, 7, 68, 2, 2, 8689, 8690, 7, 78, 2, 2, 8690, 8691, 7, 71, 2, 2, 8691, 816, 3, 2, 2, 2, 8692, 8693, 7, 70, 2, 2, 8693, 8694, 7, 81, 2, 2, 8694, 8695, 7, 89, 2, 2, 8695, 8696, 7, 80, 2, 2, 8696, 8697, 7, 73, 2, 2, 8697, 8698, 7, 84, 2, 2, 8698, 8699, 7, 67, 2, 2, 8699, 8700, 7, 70, 2, 2, 8700, 8701, 7, 71, 2, 2, 8701, 818, 3, 2, 2, 2, 8702, 8703, 7, 70, 2, 2, 8703, 8704, 7, 84, 2, 2, 8704, 8705, 7, 75, 2, 2, 8705, 8706, 7, 88, 2, 2, 8706, 8707, 7, 75, 2, 2, 8707, 8708, 7, 80, 2, 2, 8708, 8709, 7, 73, 2, 2, 8709, 8710, 7, 97, 2, 2, 8710, 8711, 7, 85, 2, 2, 8711, 8712, 7, 75, 2, 2, 8712, 8713, 7, 86, 2, 2, 8713, 8714, 7, 71, 2, 2, 8714, 820, 3, 2, 2, 2, 8715, 8716, 7, 70, 2, 2, 8716, 8717, 7, 84, 2, 2, 8717, 8718, 7, 81, 2, 2, 8718, 8719, 7, 82, 2, 2, 8719, 8720, 7, 97, 2, 2, 8720, 8721, 7, 69, 2, 2, 8721, 8722, 7, 81, 2, 2, 8722, 8723, 7, 78, 2, 2, 8723, 8724, 7, 87, 2, 2, 8724, 8725, 7, 79, 2, 2, 8725, 8726, 7, 80, 2, 2, 8726, 822, 3, 2, 2, 2, 8727, 8728, 7, 70, 2, 2, 8728, 8729, 7, 84, 2, 2, 8729, 8730, 7, 81, 2, 2, 8730, 8731, 7, 82, 2, 2, 8731, 824, 3, 2, 2, 2, 8732, 8733, 7, 70, 2, 2, 8733, 8734, 7, 84, 2, 2, 8734, 8735, 7, 81, 2, 2, 8735, 8736, 7, 82, 2, 2, 8736, 8737, 7, 97, 2, 2, 8737, 8738, 7, 73, 2, 2, 8738, 8739, 7, 84, 2, 2, 8739, 8740, 7, 81, 2, 2, 8740, 8741, 7, 87, 2, 2, 8741, 8742, 7, 82, 2, 2, 8742, 826, 3, 2, 2, 2, 8743, 8744, 7, 70, 2, 2, 8744, 8745, 7, 85, 2, 2, 8745, 8746, 7, 75, 2, 2, 8746, 8747, 7, 80, 2, 2, 8747, 8748, 7, 86, 2, 2, 8748, 8749, 7, 71, 2, 2, 8749, 8750, 7, 84, 2, 2, 8750, 8751, 7, 88, 2, 2, 8751, 8752, 7, 67, 2, 2, 8752, 8753, 7, 78, 2, 2, 8753, 8754, 7, 97, 2, 2, 8754, 8755, 7, 87, 2, 2, 8755, 8756, 7, 80, 2, 2, 8756, 8757, 7, 69, 2, 2, 8757, 8758, 7, 81, 2, 2, 8758, 8759, 7, 80, 2, 2, 8759, 8760, 7, 85, 2, 2, 8760, 8761, 7, 86, 2, 2, 8761, 8762, 7, 84, 2, 2, 8762, 8763, 7, 67, 2, 2, 8763, 8764, 7, 75, 2, 2, 8764, 8765, 7, 80, 2, 2, 8765, 8766, 7, 71, 2, 2, 8766, 8767, 7, 70, 2, 2, 8767, 828, 3, 2, 2, 2, 8768, 8769, 7, 70, 2, 2, 8769, 8770, 7, 85, 2, 2, 8770, 8771, 7, 86, 2, 2, 8771, 8772, 7, 97, 2, 2, 8772, 8773, 7, 87, 2, 2, 8773, 8774, 7, 82, 2, 2, 8774, 8775, 7, 73, 2, 2, 8775, 8776, 7, 84, 2, 2, 8776, 8777, 7, 67, 2, 2, 8777, 8778, 7, 70, 2, 2, 8778, 8779, 7, 71, 2, 2, 8779, 8780, 7, 97, 2, 2, 8780, 8781, 7, 75, 2, 2, 8781, 8782, 7, 80, 2, 2, 8782, 8783, 7, 85, 2, 2, 8783, 8784, 7, 71, 2, 2, 8784, 8785, 7, 84, 2, 2, 8785, 8786, 7, 86, 2, 2, 8786, 8787, 7, 97, 2, 2, 8787, 8788, 7, 69, 2, 2, 8788, 8789, 7, 81, 2, 2, 8789, 8790, 7, 80, 2, 2, 8790, 8791, 7, 88, 2, 2, 8791, 830, 3, 2, 2, 2, 8792, 8793, 7, 70, 2, 2, 8793, 8794, 7, 87, 2, 2, 8794, 8795, 7, 79, 2, 2, 8795, 8796, 7, 82, 2, 2, 8796, 832, 3, 2, 2, 2, 8797, 8798, 7, 70, 2, 2, 8798, 8799, 7, 87, 2, 2, 8799, 8800, 7, 79, 2, 2, 8800, 8801, 7, 82, 2, 2, 8801, 8802, 7, 85, 2, 2, 8802, 8803, 7, 71, 2, 2, 8803, 8804, 7, 86, 2, 2, 8804, 834, 3, 2, 2, 2, 8805, 8806, 7, 70, 2, 2, 8806, 8807, 7, 87, 2, 2, 8807, 8808, 7, 82, 2, 2, 8808, 8809, 7, 78, 2, 2, 8809, 8810, 7, 75, 2, 2, 8810, 8811, 7, 69, 2, 2, 8811, 8812, 7, 67, 2, 2, 8812, 8813, 7, 86, 2, 2, 8813, 8814, 7, 71, 2, 2, 8814, 836, 3, 2, 2, 2, 8815, 8816, 7, 70, 2, 2, 8816, 8817, 7, 88, 2, 2, 8817, 838, 3, 2, 2, 2, 8818, 8819, 7, 70, 2, 2, 8819, 8820, 7, 91, 2, 2, 8820, 8821, 7, 80, 2, 2, 8821, 8822, 7, 67, 2, 2, 8822, 8823, 7, 79, 2, 2, 8823, 8824, 7, 75, 2, 2, 8824, 8825, 7, 69, 2, 2, 8825, 840, 3, 2, 2, 2, 8826, 8827, 7, 70, 2, 2, 8827, 8828, 7, 91, 2, 2, 8828, 8829, 7, 80, 2, 2, 8829, 8830, 7, 67, 2, 2, 8830, 8831, 7, 79, 2, 2, 8831, 8832, 7, 75, 2, 2, 8832, 8833, 7, 69, 2, 2, 8833, 8834, 7, 97, 2, 2, 8834, 8835, 7, 85, 2, 2, 8835, 8836, 7, 67, 2, 2, 8836, 8837, 7, 79, 2, 2, 8837, 8838, 7, 82, 2, 2, 8838, 8839, 7, 78, 2, 2, 8839, 8840, 7, 75, 2, 2, 8840, 8841, 7, 80, 2, 2, 8841, 8842, 7, 73, 2, 2, 8842, 842, 3, 2, 2, 2, 8843, 8844, 7, 70, 2, 2, 8844, 8845, 7, 91, 2, 2, 8845, 8846, 7, 80, 2, 2, 8846, 8847, 7, 67, 2, 2, 8847, 8848, 7, 79, 2, 2, 8848, 8849, 7, 75, 2, 2, 8849, 8850, 7, 69, 2, 2, 8850, 8851, 7, 97, 2, 2, 8851, 8852, 7, 85, 2, 2, 8852, 8853, 7, 67, 2, 2, 8853, 8854, 7, 79, 2, 2, 8854, 8855, 7, 82, 2, 2, 8855, 8856, 7, 78, 2, 2, 8856, 8857, 7, 75, 2, 2, 8857, 8858, 7, 80, 2, 2, 8858, 8859, 7, 73, 2, 2, 8859, 8860, 7, 97, 2, 2, 8860, 8861, 7, 71, 2, 2, 8861, 8862, 7, 85, 2, 2, 8862, 8863, 7, 86, 2, 2, 8863, 8864, 7, 97, 2, 2, 8864, 8865, 7, 69, 2, 2, 8865, 8866, 7, 70, 2, 2, 8866, 8867, 7, 80, 2, 2, 8867, 844, 3, 2, 2, 2, 8868, 8869, 7, 71, 2, 2, 8869, 8870, 7, 67, 2, 2, 8870, 8871, 7, 69, 2, 2, 8871, 8872, 7, 74, 2, 2, 8872, 846, 3, 2, 2, 2, 8873, 8874, 7, 71, 2, 2, 8874, 8875, 7, 70, 2, 2, 8875, 8876, 7, 75, 2, 2, 8876, 8877, 7, 86, 2, 2, 8877, 8878, 7, 75, 2, 2, 8878, 8879, 7, 81, 2, 2, 8879, 8880, 7, 80, 2, 2, 8880, 8881, 7, 67, 2, 2, 8881, 8882, 7, 68, 2, 2, 8882, 8883, 7, 78, 2, 2, 8883, 8884, 7, 71, 2, 2, 8884, 848, 3, 2, 2, 2, 8885, 8886, 7, 71, 2, 2, 8886, 8887, 7, 70, 2, 2, 8887, 8888, 7, 75, 2, 2, 8888, 8889, 7, 86, 2, 2, 8889, 8890, 7, 75, 2, 2, 8890, 8891, 7, 81, 2, 2, 8891, 8892, 7, 80, 2, 2, 8892, 850, 3, 2, 2, 2, 8893, 8894, 7, 71, 2, 2, 8894, 8895, 7, 70, 2, 2, 8895, 8896, 7, 75, 2, 2, 8896, 8897, 7, 86, 2, 2, 8897, 8898, 7, 75, 2, 2, 8898, 8899, 7, 81, 2, 2, 8899, 8900, 7, 80, 2, 2, 8900, 8901, 7, 75, 2, 2, 8901, 8902, 7, 80, 2, 2, 8902, 8903, 7, 73, 2, 2, 8903, 852, 3, 2, 2, 2, 8904, 8905, 7, 71, 2, 2, 8905, 8906, 7, 70, 2, 2, 8906, 8907, 7, 75, 2, 2, 8907, 8908, 7, 86, 2, 2, 8908, 8909, 7, 75, 2, 2, 8909, 8910, 7, 81, 2, 2, 8910, 8911, 7, 80, 2, 2, 8911, 8912, 7, 85, 2, 2, 8912, 854, 3, 2, 2, 2, 8913, 8914, 7, 71, 2, 2, 8914, 8915, 7, 78, 2, 2, 8915, 8916, 7, 71, 2, 2, 8916, 8917, 7, 79, 2, 2, 8917, 8918, 7, 71, 2, 2, 8918, 8919, 7, 80, 2, 2, 8919, 8920, 7, 86, 2, 2, 8920, 856, 3, 2, 2, 2, 8921, 8922, 7, 71, 2, 2, 8922, 8923, 7, 78, 2, 2, 8923, 8924, 7, 75, 2, 2, 8924, 8925, 7, 79, 2, 2, 8925, 8926, 7, 97, 2, 2, 8926, 8927, 7, 73, 2, 2, 8927, 8928, 7, 84, 2, 2, 8928, 8929, 7, 81, 2, 2, 8929, 8930, 7, 87, 2, 2, 8930, 8931, 7, 82, 2, 2, 8931, 8932, 7, 68, 2, 2, 8932, 8933, 7, 91, 2, 2, 8933, 858, 3, 2, 2, 2, 8934, 8935, 7, 71, 2, 2, 8935, 8936, 7, 78, 2, 2, 8936, 8937, 7, 75, 2, 2, 8937, 8938, 7, 79, 2, 2, 8938, 8939, 7, 75, 2, 2, 8939, 8940, 7, 80, 2, 2, 8940, 8941, 7, 67, 2, 2, 8941, 8942, 7, 86, 2, 2, 8942, 8943, 7, 71, 2, 2, 8943, 8944, 7, 97, 2, 2, 8944, 8945, 7, 76, 2, 2, 8945, 8946, 7, 81, 2, 2, 8946, 8947, 7, 75, 2, 2, 8947, 8948, 7, 80, 2, 2, 8948, 860, 3, 2, 2, 2, 8949, 8950, 7, 71, 2, 2, 8950, 8951, 7, 78, 2, 2, 8951, 8952, 7, 75, 2, 2, 8952, 8953, 7, 79, 2, 2, 8953, 8954, 7, 75, 2, 2, 8954, 8955, 7, 80, 2, 2, 8955, 8956, 7, 67, 2, 2, 8956, 8957, 7, 86, 2, 2, 8957, 8958, 7, 71, 2, 2, 8958, 8959, 7, 97, 2, 2, 8959, 8960, 7, 81, 2, 2, 8960, 8961, 7, 68, 2, 2, 8961, 8962, 7, 91, 2, 2, 8962, 862, 3, 2, 2, 2, 8963, 8964, 7, 71, 2, 2, 8964, 8965, 7, 78, 2, 2, 8965, 8966, 7, 75, 2, 2, 8966, 8967, 7, 79, 2, 2, 8967, 8968, 7, 75, 2, 2, 8968, 8969, 7, 80, 2, 2, 8969, 8970, 7, 67, 2, 2, 8970, 8971, 7, 86, 2, 2, 8971, 8972, 7, 71, 2, 2, 8972, 8973, 7, 97, 2, 2, 8973, 8974, 7, 81, 2, 2, 8974, 8975, 7, 87, 2, 2, 8975, 8976, 7, 86, 2, 2, 8976, 8977, 7, 71, 2, 2, 8977, 8978, 7, 84, 2, 2, 8978, 8979, 7, 97, 2, 2, 8979, 8980, 7, 76, 2, 2, 8980, 8981, 7, 81, 2, 2, 8981, 8982, 7, 75, 2, 2, 8982, 8983, 7, 80, 2, 2, 8983, 864, 3, 2, 2, 2, 8984, 8985, 7, 71, 2, 2, 8985, 8986, 7, 78, 2, 2, 8986, 8987, 7, 85, 2, 2, 8987, 8988, 7, 71, 2, 2, 8988, 866, 3, 2, 2, 2, 8989, 8990, 7, 71, 2, 2, 8990, 8991, 7, 78, 2, 2, 8991, 8992, 7, 85, 2, 2, 8992, 8993, 7, 75, 2, 2, 8993, 8994, 7, 72, 2, 2, 8994, 868, 3, 2, 2, 2, 8995, 8996, 7, 71, 2, 2, 8996, 8997, 7, 79, 2, 2, 8997, 870, 3, 2, 2, 2, 8998, 8999, 7, 71, 2, 2, 8999, 9000, 7, 79, 2, 2, 9000, 9001, 7, 82, 2, 2, 9001, 9002, 7, 86, 2, 2, 9002, 9003, 7, 91, 2, 2, 9003, 9004, 7, 97, 2, 2, 9004, 9005, 7, 68, 2, 2, 9005, 9006, 7, 78, 2, 2, 9006, 9007, 7, 81, 2, 2, 9007, 9008, 7, 68, 2, 2, 9008, 872, 3, 2, 2, 2, 9009, 9010, 7, 71, 2, 2, 9010, 9011, 7, 79, 2, 2, 9011, 9012, 7, 82, 2, 2, 9012, 9013, 7, 86, 2, 2, 9013, 9014, 7, 91, 2, 2, 9014, 9015, 7, 97, 2, 2, 9015, 9016, 7, 69, 2, 2, 9016, 9017, 7, 78, 2, 2, 9017, 9018, 7, 81, 2, 2, 9018, 9019, 7, 68, 2, 2, 9019, 874, 3, 2, 2, 2, 9020, 9021, 7, 71, 2, 2, 9021, 9022, 7, 79, 2, 2, 9022, 9023, 7, 82, 2, 2, 9023, 9024, 7, 86, 2, 2, 9024, 9025, 7, 91, 2, 2, 9025, 876, 3, 2, 2, 2, 9026, 9027, 7, 71, 2, 2, 9027, 9028, 7, 80, 2, 2, 9028, 9029, 7, 67, 2, 2, 9029, 9030, 7, 68, 2, 2, 9030, 9031, 7, 78, 2, 2, 9031, 9032, 7, 71, 2, 2, 9032, 9033, 7, 97, 2, 2, 9033, 9034, 7, 67, 2, 2, 9034, 9035, 7, 78, 2, 2, 9035, 9036, 7, 78, 2, 2, 9036, 878, 3, 2, 2, 2, 9037, 9038, 7, 71, 2, 2, 9038, 9039, 7, 80, 2, 2, 9039, 9040, 7, 67, 2, 2, 9040, 9041, 7, 68, 2, 2, 9041, 9042, 7, 78, 2, 2, 9042, 9043, 7, 71, 2, 2, 9043, 880, 3, 2, 2, 2, 9044, 9045, 7, 71, 2, 2, 9045, 9046, 7, 80, 2, 2, 9046, 9047, 7, 67, 2, 2, 9047, 9048, 7, 68, 2, 2, 9048, 9049, 7, 78, 2, 2, 9049, 9050, 7, 71, 2, 2, 9050, 9051, 7, 97, 2, 2, 9051, 9052, 7, 82, 2, 2, 9052, 9053, 7, 67, 2, 2, 9053, 9054, 7, 84, 2, 2, 9054, 9055, 7, 67, 2, 2, 9055, 9056, 7, 78, 2, 2, 9056, 9057, 7, 78, 2, 2, 9057, 9058, 7, 71, 2, 2, 9058, 9059, 7, 78, 2, 2, 9059, 9060, 7, 97, 2, 2, 9060, 9061, 7, 70, 2, 2, 9061, 9062, 7, 79, 2, 2, 9062, 9063, 7, 78, 2, 2, 9063, 882, 3, 2, 2, 2, 9064, 9065, 7, 71, 2, 2, 9065, 9066, 7, 80, 2, 2, 9066, 9067, 7, 67, 2, 2, 9067, 9068, 7, 68, 2, 2, 9068, 9069, 7, 78, 2, 2, 9069, 9070, 7, 71, 2, 2, 9070, 9071, 7, 97, 2, 2, 9071, 9072, 7, 82, 2, 2, 9072, 9073, 7, 84, 2, 2, 9073, 9074, 7, 71, 2, 2, 9074, 9075, 7, 85, 2, 2, 9075, 9076, 7, 71, 2, 2, 9076, 9077, 7, 86, 2, 2, 9077, 884, 3, 2, 2, 2, 9078, 9079, 7, 71, 2, 2, 9079, 9080, 7, 80, 2, 2, 9080, 9081, 7, 69, 2, 2, 9081, 9082, 7, 81, 2, 2, 9082, 9083, 7, 70, 2, 2, 9083, 9084, 7, 75, 2, 2, 9084, 9085, 7, 80, 2, 2, 9085, 9086, 7, 73, 2, 2, 9086, 886, 3, 2, 2, 2, 9087, 9088, 7, 71, 2, 2, 9088, 9089, 7, 80, 2, 2, 9089, 9090, 7, 69, 2, 2, 9090, 9091, 7, 84, 2, 2, 9091, 9092, 7, 91, 2, 2, 9092, 9093, 7, 82, 2, 2, 9093, 9094, 7, 86, 2, 2, 9094, 888, 3, 2, 2, 2, 9095, 9096, 7, 71, 2, 2, 9096, 9097, 7, 80, 2, 2, 9097, 9098, 7, 69, 2, 2, 9098, 9099, 7, 84, 2, 2, 9099, 9100, 7, 91, 2, 2, 9100, 9101, 7, 82, 2, 2, 9101, 9102, 7, 86, 2, 2, 9102, 9103, 7, 75, 2, 2, 9103, 9104, 7, 81, 2, 2, 9104, 9105, 7, 80, 2, 2, 9105, 890, 3, 2, 2, 2, 9106, 9107, 7, 71, 2, 2, 9107, 9108, 7, 80, 2, 2, 9108, 9109, 7, 70, 2, 2, 9109, 892, 3, 2, 2, 2, 9110, 9111, 7, 71, 2, 2, 9111, 9112, 7, 80, 2, 2, 9112, 9113, 7, 70, 2, 2, 9113, 9114, 7, 97, 2, 2, 9114, 9115, 7, 81, 2, 2, 9115, 9116, 7, 87, 2, 2, 9116, 9117, 7, 86, 2, 2, 9117, 9118, 7, 78, 2, 2, 9118, 9119, 7, 75, 2, 2, 9119, 9120, 7, 80, 2, 2, 9120, 9121, 7, 71, 2, 2, 9121, 9122, 7, 97, 2, 2, 9122, 9123, 7, 70, 2, 2, 9123, 9124, 7, 67, 2, 2, 9124, 9125, 7, 86, 2, 2, 9125, 9126, 7, 67, 2, 2, 9126, 894, 3, 2, 2, 2, 9127, 9128, 7, 71, 2, 2, 9128, 9129, 7, 80, 2, 2, 9129, 9130, 7, 72, 2, 2, 9130, 9131, 7, 81, 2, 2, 9131, 9132, 7, 84, 2, 2, 9132, 9133, 7, 69, 2, 2, 9133, 9134, 7, 71, 2, 2, 9134, 9135, 7, 70, 2, 2, 9135, 896, 3, 2, 2, 2, 9136, 9137, 7, 71, 2, 2, 9137, 9138, 7, 80, 2, 2, 9138, 9139, 7, 72, 2, 2, 9139, 9140, 7, 81, 2, 2, 9140, 9141, 7, 84, 2, 2, 9141, 9142, 7, 69, 2, 2, 9142, 9143, 7, 71, 2, 2, 9143, 898, 3, 2, 2, 2, 9144, 9145, 7, 71, 2, 2, 9145, 9146, 7, 80, 2, 2, 9146, 9147, 7, 83, 2, 2, 9147, 9148, 7, 87, 2, 2, 9148, 9149, 7, 71, 2, 2, 9149, 9150, 7, 87, 2, 2, 9150, 9151, 7, 71, 2, 2, 9151, 900, 3, 2, 2, 2, 9152, 9153, 7, 71, 2, 2, 9153, 9154, 7, 80, 2, 2, 9154, 9155, 7, 86, 2, 2, 9155, 9156, 7, 71, 2, 2, 9156, 9157, 7, 84, 2, 2, 9157, 9158, 7, 82, 2, 2, 9158, 9159, 7, 84, 2, 2, 9159, 9160, 7, 75, 2, 2, 9160, 9161, 7, 85, 2, 2, 9161, 9162, 7, 71, 2, 2, 9162, 902, 3, 2, 2, 2, 9163, 9164, 7, 71, 2, 2, 9164, 9165, 7, 80, 2, 2, 9165, 9166, 7, 86, 2, 2, 9166, 9167, 7, 75, 2, 2, 9167, 9168, 7, 86, 2, 2, 9168, 9169, 7, 91, 2, 2, 9169, 9170, 7, 71, 2, 2, 9170, 9171, 7, 85, 2, 2, 9171, 9172, 7, 69, 2, 2, 9172, 9173, 7, 67, 2, 2, 9173, 9174, 7, 82, 2, 2, 9174, 9175, 7, 75, 2, 2, 9175, 9176, 7, 80, 2, 2, 9176, 9177, 7, 73, 2, 2, 9177, 904, 3, 2, 2, 2, 9178, 9179, 7, 71, 2, 2, 9179, 9180, 7, 80, 2, 2, 9180, 9181, 7, 86, 2, 2, 9181, 9182, 7, 84, 2, 2, 9182, 9183, 7, 91, 2, 2, 9183, 906, 3, 2, 2, 2, 9184, 9185, 7, 71, 2, 2, 9185, 9186, 7, 83, 2, 2, 9186, 9187, 7, 87, 2, 2, 9187, 9188, 7, 75, 2, 2, 9188, 9189, 7, 82, 2, 2, 9189, 9190, 7, 67, 2, 2, 9190, 9191, 7, 84, 2, 2, 9191, 9192, 7, 86, 2, 2, 9192, 908, 3, 2, 2, 2, 9193, 9194, 7, 71, 2, 2, 9194, 9195, 7, 84, 2, 2, 9195, 9196, 7, 84, 2, 2, 9196, 910, 3, 2, 2, 2, 9197, 9198, 7, 71, 2, 2, 9198, 9199, 7, 84, 2, 2, 9199, 9200, 7, 84, 2, 2, 9200, 9201, 7, 81, 2, 2, 9201, 9202, 7, 84, 2, 2, 9202, 9203, 7, 97, 2, 2, 9203, 9204, 7, 67, 2, 2, 9204, 9205, 7, 84, 2, 2, 9205, 9206, 7, 73, 2, 2, 9206, 9207, 7, 87, 2, 2, 9207, 9208, 7, 79, 2, 2, 9208, 9209, 7, 71, 2, 2, 9209, 9210, 7, 80, 2, 2, 9210, 9211, 7, 86, 2, 2, 9211, 912, 3, 2, 2, 2, 9212, 9213, 7, 71, 2, 2, 9213, 9214, 7, 84, 2, 2, 9214, 9215, 7, 84, 2, 2, 9215, 9216, 7, 81, 2, 2, 9216, 9217, 7, 84, 2, 2, 9217, 914, 3, 2, 2, 2, 9218, 9219, 7, 71, 2, 2, 9219, 9220, 7, 84, 2, 2, 9220, 9221, 7, 84, 2, 2, 9221, 9222, 7, 81, 2, 2, 9222, 9223, 7, 84, 2, 2, 9223, 9224, 7, 97, 2, 2, 9224, 9225, 7, 81, 2, 2, 9225, 9226, 7, 80, 2, 2, 9226, 9227, 7, 97, 2, 2, 9227, 9228, 7, 81, 2, 2, 9228, 9229, 7, 88, 2, 2, 9229, 9230, 7, 71, 2, 2, 9230, 9231, 7, 84, 2, 2, 9231, 9232, 7, 78, 2, 2, 9232, 9233, 7, 67, 2, 2, 9233, 9234, 7, 82, 2, 2, 9234, 9235, 7, 97, 2, 2, 9235, 9236, 7, 86, 2, 2, 9236, 9237, 7, 75, 2, 2, 9237, 9238, 7, 79, 2, 2, 9238, 9239, 7, 71, 2, 2, 9239, 916, 3, 2, 2, 2, 9240, 9241, 7, 71, 2, 2, 9241, 9242, 7, 84, 2, 2, 9242, 9243, 7, 84, 2, 2, 9243, 9244, 7, 81, 2, 2, 9244, 9245, 7, 84, 2, 2, 9245, 9246, 7, 85, 2, 2, 9246, 918, 3, 2, 2, 2, 9247, 9248, 7, 71, 2, 2, 9248, 9249, 7, 85, 2, 2, 9249, 9250, 7, 69, 2, 2, 9250, 9251, 7, 67, 2, 2, 9251, 9252, 7, 82, 2, 2, 9252, 9253, 7, 71, 2, 2, 9253, 920, 3, 2, 2, 2, 9254, 9255, 7, 71, 2, 2, 9255, 9256, 7, 85, 2, 2, 9256, 9257, 7, 86, 2, 2, 9257, 9258, 7, 75, 2, 2, 9258, 9259, 7, 79, 2, 2, 9259, 9260, 7, 67, 2, 2, 9260, 9261, 7, 86, 2, 2, 9261, 9262, 7, 71, 2, 2, 9262, 922, 3, 2, 2, 2, 9263, 9264, 7, 71, 2, 2, 9264, 9265, 7, 88, 2, 2, 9265, 9266, 7, 67, 2, 2, 9266, 9267, 7, 78, 2, 2, 9267, 924, 3, 2, 2, 2, 9268, 9269, 7, 71, 2, 2, 9269, 9270, 7, 88, 2, 2, 9270, 9271, 7, 67, 2, 2, 9271, 9272, 7, 78, 2, 2, 9272, 9273, 7, 80, 2, 2, 9273, 9274, 7, 67, 2, 2, 9274, 9275, 7, 79, 2, 2, 9275, 9276, 7, 71, 2, 2, 9276, 926, 3, 2, 2, 2, 9277, 9278, 7, 71, 2, 2, 9278, 9279, 7, 88, 2, 2, 9279, 9280, 7, 67, 2, 2, 9280, 9281, 7, 78, 2, 2, 9281, 9282, 7, 87, 2, 2, 9282, 9283, 7, 67, 2, 2, 9283, 9284, 7, 86, 2, 2, 9284, 9285, 7, 71, 2, 2, 9285, 928, 3, 2, 2, 2, 9286, 9287, 7, 71, 2, 2, 9287, 9288, 7, 88, 2, 2, 9288, 9289, 7, 67, 2, 2, 9289, 9290, 7, 78, 2, 2, 9290, 9291, 7, 87, 2, 2, 9291, 9292, 7, 67, 2, 2, 9292, 9293, 7, 86, 2, 2, 9293, 9294, 7, 75, 2, 2, 9294, 9295, 7, 81, 2, 2, 9295, 9296, 7, 80, 2, 2, 9296, 930, 3, 2, 2, 2, 9297, 9298, 7, 71, 2, 2, 9298, 9299, 7, 88, 2, 2, 9299, 9300, 7, 71, 2, 2, 9300, 9301, 7, 80, 2, 2, 9301, 9302, 7, 86, 2, 2, 9302, 9303, 7, 85, 2, 2, 9303, 932, 3, 2, 2, 2, 9304, 9305, 7, 71, 2, 2, 9305, 9306, 7, 88, 2, 2, 9306, 9307, 7, 71, 2, 2, 9307, 9308, 7, 84, 2, 2, 9308, 9309, 7, 91, 2, 2, 9309, 934, 3, 2, 2, 2, 9310, 9311, 7, 71, 2, 2, 9311, 9312, 7, 90, 2, 2, 9312, 9313, 7, 69, 2, 2, 9313, 9314, 7, 71, 2, 2, 9314, 9315, 7, 82, 2, 2, 9315, 9316, 7, 86, 2, 2, 9316, 936, 3, 2, 2, 2, 9317, 9318, 7, 71, 2, 2, 9318, 9319, 7, 90, 2, 2, 9319, 9320, 7, 69, 2, 2, 9320, 9321, 7, 71, 2, 2, 9321, 9322, 7, 82, 2, 2, 9322, 9323, 7, 86, 2, 2, 9323, 9324, 7, 75, 2, 2, 9324, 9325, 7, 81, 2, 2, 9325, 9326, 7, 80, 2, 2, 9326, 938, 3, 2, 2, 2, 9327, 9328, 7, 71, 2, 2, 9328, 9329, 7, 90, 2, 2, 9329, 9330, 7, 69, 2, 2, 9330, 9331, 7, 71, 2, 2, 9331, 9332, 7, 82, 2, 2, 9332, 9333, 7, 86, 2, 2, 9333, 9334, 7, 75, 2, 2, 9334, 9335, 7, 81, 2, 2, 9335, 9336, 7, 80, 2, 2, 9336, 9337, 7, 97, 2, 2, 9337, 9338, 7, 75, 2, 2, 9338, 9339, 7, 80, 2, 2, 9339, 9340, 7, 75, 2, 2, 9340, 9341, 7, 86, 2, 2, 9341, 940, 3, 2, 2, 2, 9342, 9343, 7, 71, 2, 2, 9343, 9344, 7, 90, 2, 2, 9344, 9345, 7, 69, 2, 2, 9345, 9346, 7, 71, 2, 2, 9346, 9347, 7, 82, 2, 2, 9347, 9348, 7, 86, 2, 2, 9348, 9349, 7, 75, 2, 2, 9349, 9350, 7, 81, 2, 2, 9350, 9351, 7, 80, 2, 2, 9351, 9352, 7, 85, 2, 2, 9352, 942, 3, 2, 2, 2, 9353, 9354, 7, 71, 2, 2, 9354, 9355, 7, 90, 2, 2, 9355, 9356, 7, 69, 2, 2, 9356, 9357, 7, 74, 2, 2, 9357, 9358, 7, 67, 2, 2, 9358, 9359, 7, 80, 2, 2, 9359, 9360, 7, 73, 2, 2, 9360, 9361, 7, 71, 2, 2, 9361, 944, 3, 2, 2, 2, 9362, 9363, 7, 71, 2, 2, 9363, 9364, 7, 90, 2, 2, 9364, 9365, 7, 69, 2, 2, 9365, 9366, 7, 78, 2, 2, 9366, 9367, 7, 87, 2, 2, 9367, 9368, 7, 70, 2, 2, 9368, 9369, 7, 71, 2, 2, 9369, 946, 3, 2, 2, 2, 9370, 9371, 7, 71, 2, 2, 9371, 9372, 7, 90, 2, 2, 9372, 9373, 7, 69, 2, 2, 9373, 9374, 7, 78, 2, 2, 9374, 9375, 7, 87, 2, 2, 9375, 9376, 7, 70, 2, 2, 9376, 9377, 7, 75, 2, 2, 9377, 9378, 7, 80, 2, 2, 9378, 9379, 7, 73, 2, 2, 9379, 948, 3, 2, 2, 2, 9380, 9381, 7, 71, 2, 2, 9381, 9382, 7, 90, 2, 2, 9382, 9383, 7, 69, 2, 2, 9383, 9384, 7, 78, 2, 2, 9384, 9385, 7, 87, 2, 2, 9385, 9386, 7, 85, 2, 2, 9386, 9387, 7, 75, 2, 2, 9387, 9388, 7, 88, 2, 2, 9388, 9389, 7, 71, 2, 2, 9389, 950, 3, 2, 2, 2, 9390, 9391, 7, 71, 2, 2, 9391, 9392, 7, 90, 2, 2, 9392, 9393, 7, 71, 2, 2, 9393, 9394, 7, 69, 2, 2, 9394, 9395, 7, 87, 2, 2, 9395, 9396, 7, 86, 2, 2, 9396, 9397, 7, 71, 2, 2, 9397, 952, 3, 2, 2, 2, 9398, 9399, 7, 71, 2, 2, 9399, 9400, 7, 90, 2, 2, 9400, 9401, 7, 71, 2, 2, 9401, 9402, 7, 79, 2, 2, 9402, 9403, 7, 82, 2, 2, 9403, 9404, 7, 86, 2, 2, 9404, 954, 3, 2, 2, 2, 9405, 9406, 7, 71, 2, 2, 9406, 9407, 7, 90, 2, 2, 9407, 9408, 7, 75, 2, 2, 9408, 9409, 7, 85, 2, 2, 9409, 9410, 7, 86, 2, 2, 9410, 9411, 7, 75, 2, 2, 9411, 9412, 7, 80, 2, 2, 9412, 9413, 7, 73, 2, 2, 9413, 956, 3, 2, 2, 2, 9414, 9415, 7, 71, 2, 2, 9415, 9416, 7, 90, 2, 2, 9416, 9417, 7, 75, 2, 2, 9417, 9418, 7, 85, 2, 2, 9418, 9419, 7, 86, 2, 2, 9419, 9420, 7, 85, 2, 2, 9420, 958, 3, 2, 2, 2, 9421, 9422, 7, 71, 2, 2, 9422, 9423, 7, 90, 2, 2, 9423, 9424, 7, 75, 2, 2, 9424, 9425, 7, 85, 2, 2, 9425, 9426, 7, 86, 2, 2, 9426, 9427, 7, 85, 2, 2, 9427, 9428, 7, 80, 2, 2, 9428, 9429, 7, 81, 2, 2, 9429, 9430, 7, 70, 2, 2, 9430, 9431, 7, 71, 2, 2, 9431, 960, 3, 2, 2, 2, 9432, 9433, 7, 71, 2, 2, 9433, 9434, 7, 90, 2, 2, 9434, 9435, 7, 75, 2, 2, 9435, 9436, 7, 86, 2, 2, 9436, 962, 3, 2, 2, 2, 9437, 9438, 7, 71, 2, 2, 9438, 9439, 7, 90, 2, 2, 9439, 9440, 7, 82, 2, 2, 9440, 9441, 7, 67, 2, 2, 9441, 9442, 7, 80, 2, 2, 9442, 9443, 7, 70, 2, 2, 9443, 9444, 7, 97, 2, 2, 9444, 9445, 7, 73, 2, 2, 9445, 9446, 7, 85, 2, 2, 9446, 9447, 7, 71, 2, 2, 9447, 9448, 7, 86, 2, 2, 9448, 9449, 7, 97, 2, 2, 9449, 9450, 7, 86, 2, 2, 9450, 9451, 7, 81, 2, 2, 9451, 9452, 7, 97, 2, 2, 9452, 9453, 7, 87, 2, 2, 9453, 9454, 7, 80, 2, 2, 9454, 9455, 7, 75, 2, 2, 9455, 9456, 7, 81, 2, 2, 9456, 9457, 7, 80, 2, 2, 9457, 964, 3, 2, 2, 2, 9458, 9459, 7, 71, 2, 2, 9459, 9460, 7, 90, 2, 2, 9460, 9461, 7, 82, 2, 2, 9461, 9462, 7, 67, 2, 2, 9462, 9463, 7, 80, 2, 2, 9463, 9464, 7, 70, 2, 2, 9464, 9465, 7, 97, 2, 2, 9465, 9466, 7, 86, 2, 2, 9466, 9467, 7, 67, 2, 2, 9467, 9468, 7, 68, 2, 2, 9468, 9469, 7, 78, 2, 2, 9469, 9470, 7, 71, 2, 2, 9470, 966, 3, 2, 2, 2, 9471, 9472, 7, 71, 2, 2, 9472, 9473, 7, 90, 2, 2, 9473, 9474, 7, 82, 2, 2, 9474, 968, 3, 2, 2, 2, 9475, 9476, 7, 71, 2, 2, 9476, 9477, 7, 90, 2, 2, 9477, 9478, 7, 82, 2, 2, 9478, 9479, 7, 75, 2, 2, 9479, 9480, 7, 84, 2, 2, 9480, 9481, 7, 71, 2, 2, 9481, 970, 3, 2, 2, 2, 9482, 9483, 7, 71, 2, 2, 9483, 9484, 7, 90, 2, 2, 9484, 9485, 7, 82, 2, 2, 9485, 9486, 7, 78, 2, 2, 9486, 9487, 7, 67, 2, 2, 9487, 9488, 7, 75, 2, 2, 9488, 9489, 7, 80, 2, 2, 9489, 972, 3, 2, 2, 2, 9490, 9491, 7, 71, 2, 2, 9491, 9492, 7, 90, 2, 2, 9492, 9493, 7, 82, 2, 2, 9493, 9494, 7, 78, 2, 2, 9494, 9495, 7, 81, 2, 2, 9495, 9496, 7, 85, 2, 2, 9496, 9497, 7, 75, 2, 2, 9497, 9498, 7, 81, 2, 2, 9498, 9499, 7, 80, 2, 2, 9499, 974, 3, 2, 2, 2, 9500, 9501, 7, 71, 2, 2, 9501, 9502, 7, 90, 2, 2, 9502, 9503, 7, 82, 2, 2, 9503, 9504, 7, 81, 2, 2, 9504, 9505, 7, 84, 2, 2, 9505, 9506, 7, 86, 2, 2, 9506, 976, 3, 2, 2, 2, 9507, 9508, 7, 71, 2, 2, 9508, 9509, 7, 90, 2, 2, 9509, 9510, 7, 82, 2, 2, 9510, 9511, 7, 84, 2, 2, 9511, 9512, 7, 97, 2, 2, 9512, 9513, 7, 69, 2, 2, 9513, 9514, 7, 81, 2, 2, 9514, 9515, 7, 84, 2, 2, 9515, 9516, 7, 84, 2, 2, 9516, 9517, 7, 97, 2, 2, 9517, 9518, 7, 69, 2, 2, 9518, 9519, 7, 74, 2, 2, 9519, 9520, 7, 71, 2, 2, 9520, 9521, 7, 69, 2, 2, 9521, 9522, 7, 77, 2, 2, 9522, 978, 3, 2, 2, 2, 9523, 9524, 7, 71, 2, 2, 9524, 9525, 7, 90, 2, 2, 9525, 9526, 7, 82, 2, 2, 9526, 9527, 7, 84, 2, 2, 9527, 9528, 7, 71, 2, 2, 9528, 9529, 7, 85, 2, 2, 9529, 9530, 7, 85, 2, 2, 9530, 980, 3, 2, 2, 2, 9531, 9532, 7, 71, 2, 2, 9532, 9533, 7, 90, 2, 2, 9533, 9534, 7, 86, 2, 2, 9534, 9535, 7, 71, 2, 2, 9535, 9536, 7, 80, 2, 2, 9536, 9537, 7, 70, 2, 2, 9537, 9538, 7, 85, 2, 2, 9538, 982, 3, 2, 2, 2, 9539, 9540, 7, 71, 2, 2, 9540, 9541, 7, 90, 2, 2, 9541, 9542, 7, 86, 2, 2, 9542, 9543, 7, 71, 2, 2, 9543, 9544, 7, 80, 2, 2, 9544, 9545, 7, 86, 2, 2, 9545, 984, 3, 2, 2, 2, 9546, 9547, 7, 71, 2, 2, 9547, 9548, 7, 90, 2, 2, 9548, 9549, 7, 86, 2, 2, 9549, 9550, 7, 71, 2, 2, 9550, 9551, 7, 80, 2, 2, 9551, 9552, 7, 86, 2, 2, 9552, 9553, 7, 85, 2, 2, 9553, 986, 3, 2, 2, 2, 9554, 9555, 7, 71, 2, 2, 9555, 9556, 7, 90, 2, 2, 9556, 9557, 7, 86, 2, 2, 9557, 9558, 7, 71, 2, 2, 9558, 9559, 7, 84, 2, 2, 9559, 9560, 7, 80, 2, 2, 9560, 9561, 7, 67, 2, 2, 9561, 9562, 7, 78, 2, 2, 9562, 988, 3, 2, 2, 2, 9563, 9564, 7, 71, 2, 2, 9564, 9565, 7, 90, 2, 2, 9565, 9566, 7, 86, 2, 2, 9566, 9567, 7, 71, 2, 2, 9567, 9568, 7, 84, 2, 2, 9568, 9569, 7, 80, 2, 2, 9569, 9570, 7, 67, 2, 2, 9570, 9571, 7, 78, 2, 2, 9571, 9572, 7, 78, 2, 2, 9572, 9573, 7, 91, 2, 2, 9573, 990, 3, 2, 2, 2, 9574, 9575, 7, 71, 2, 2, 9575, 9576, 7, 90, 2, 2, 9576, 9577, 7, 86, 2, 2, 9577, 9578, 7, 84, 2, 2, 9578, 9579, 7, 67, 2, 2, 9579, 9580, 7, 69, 2, 2, 9580, 9581, 7, 86, 2, 2, 9581, 9582, 7, 69, 2, 2, 9582, 9583, 7, 78, 2, 2, 9583, 9584, 7, 81, 2, 2, 9584, 9585, 7, 68, 2, 2, 9585, 9586, 7, 90, 2, 2, 9586, 9587, 7, 79, 2, 2, 9587, 9588, 7, 78, 2, 2, 9588, 992, 3, 2, 2, 2, 9589, 9590, 7, 71, 2, 2, 9590, 9591, 7, 90, 2, 2, 9591, 9592, 7, 86, 2, 2, 9592, 9593, 7, 84, 2, 2, 9593, 9594, 7, 67, 2, 2, 9594, 9595, 7, 69, 2, 2, 9595, 9596, 7, 86, 2, 2, 9596, 994, 3, 2, 2, 2, 9597, 9598, 7, 71, 2, 2, 9598, 9599, 7, 90, 2, 2, 9599, 9600, 7, 86, 2, 2, 9600, 9601, 7, 84, 2, 2, 9601, 9602, 7, 67, 2, 2, 9602, 9603, 7, 69, 2, 2, 9603, 9604, 7, 86, 2, 2, 9604, 9605, 7, 88, 2, 2, 9605, 9606, 7, 67, 2, 2, 9606, 9607, 7, 78, 2, 2, 9607, 9608, 7, 87, 2, 2, 9608, 9609, 7, 71, 2, 2, 9609, 996, 3, 2, 2, 2, 9610, 9611, 7, 71, 2, 2, 9611, 9612, 7, 90, 2, 2, 9612, 9613, 7, 86, 2, 2, 9613, 9614, 7, 84, 2, 2, 9614, 9615, 7, 67, 2, 2, 9615, 998, 3, 2, 2, 2, 9616, 9617, 7, 72, 2, 2, 9617, 9618, 7, 67, 2, 2, 9618, 9619, 7, 69, 2, 2, 9619, 9620, 7, 75, 2, 2, 9620, 9621, 7, 78, 2, 2, 9621, 9622, 7, 75, 2, 2, 9622, 9623, 7, 86, 2, 2, 9623, 9624, 7, 91, 2, 2, 9624, 1000, 3, 2, 2, 2, 9625, 9626, 7, 72, 2, 2, 9626, 9627, 7, 67, 2, 2, 9627, 9628, 7, 69, 2, 2, 9628, 9629, 7, 86, 2, 2, 9629, 1002, 3, 2, 2, 2, 9630, 9631, 7, 72, 2, 2, 9631, 9632, 7, 67, 2, 2, 9632, 9633, 7, 69, 2, 2, 9633, 9634, 7, 86, 2, 2, 9634, 9635, 7, 81, 2, 2, 9635, 9636, 7, 84, 2, 2, 9636, 1004, 3, 2, 2, 2, 9637, 9638, 7, 72, 2, 2, 9638, 9639, 7, 67, 2, 2, 9639, 9640, 7, 69, 2, 2, 9640, 9641, 7, 86, 2, 2, 9641, 9642, 7, 81, 2, 2, 9642, 9643, 7, 84, 2, 2, 9643, 9644, 7, 75, 2, 2, 9644, 9645, 7, 92, 2, 2, 9645, 9646, 7, 71, 2, 2, 9646, 9647, 7, 97, 2, 2, 9647, 9648, 7, 76, 2, 2, 9648, 9649, 7, 81, 2, 2, 9649, 9650, 7, 75, 2, 2, 9650, 9651, 7, 80, 2, 2, 9651, 1006, 3, 2, 2, 2, 9652, 9653, 7, 72, 2, 2, 9653, 9654, 7, 67, 2, 2, 9654, 9655, 7, 75, 2, 2, 9655, 9656, 7, 78, 2, 2, 9656, 9657, 7, 71, 2, 2, 9657, 9658, 7, 70, 2, 2, 9658, 1008, 3, 2, 2, 2, 9659, 9660, 7, 72, 2, 2, 9660, 9661, 7, 67, 2, 2, 9661, 9662, 7, 75, 2, 2, 9662, 9663, 7, 78, 2, 2, 9663, 9664, 7, 71, 2, 2, 9664, 9665, 7, 70, 2, 2, 9665, 9666, 7, 97, 2, 2, 9666, 9667, 7, 78, 2, 2, 9667, 9668, 7, 81, 2, 2, 9668, 9669, 7, 73, 2, 2, 9669, 9670, 7, 75, 2, 2, 9670, 9671, 7, 80, 2, 2, 9671, 9672, 7, 97, 2, 2, 9672, 9673, 7, 67, 2, 2, 9673, 9674, 7, 86, 2, 2, 9674, 9675, 7, 86, 2, 2, 9675, 9676, 7, 71, 2, 2, 9676, 9677, 7, 79, 2, 2, 9677, 9678, 7, 82, 2, 2, 9678, 9679, 7, 86, 2, 2, 9679, 9680, 7, 85, 2, 2, 9680, 1010, 3, 2, 2, 2, 9681, 9682, 7, 72, 2, 2, 9682, 9683, 7, 67, 2, 2, 9683, 9684, 7, 75, 2, 2, 9684, 9685, 7, 78, 2, 2, 9685, 9686, 7, 73, 2, 2, 9686, 9687, 7, 84, 2, 2, 9687, 9688, 7, 81, 2, 2, 9688, 9689, 7, 87, 2, 2, 9689, 9690, 7, 82, 2, 2, 9690, 1012, 3, 2, 2, 2, 9691, 9692, 7, 72, 2, 2, 9692, 9693, 7, 67, 2, 2, 9693, 9694, 7, 75, 2, 2, 9694, 9695, 7, 78, 2, 2, 9695, 9696, 7, 81, 2, 2, 9696, 9697, 7, 88, 2, 2, 9697, 9698, 7, 71, 2, 2, 9698, 9699, 7, 84, 2, 2, 9699, 1014, 3, 2, 2, 2, 9700, 9701, 7, 72, 2, 2, 9701, 9702, 7, 67, 2, 2, 9702, 9703, 7, 75, 2, 2, 9703, 9704, 7, 78, 2, 2, 9704, 9705, 7, 87, 2, 2, 9705, 9706, 7, 84, 2, 2, 9706, 9707, 7, 71, 2, 2, 9707, 1016, 3, 2, 2, 2, 9708, 9709, 7, 72, 2, 2, 9709, 9710, 7, 67, 2, 2, 9710, 9711, 7, 78, 2, 2, 9711, 9712, 7, 85, 2, 2, 9712, 9713, 7, 71, 2, 2, 9713, 1018, 3, 2, 2, 2, 9714, 9715, 7, 72, 2, 2, 9715, 9716, 7, 67, 2, 2, 9716, 9717, 7, 79, 2, 2, 9717, 9718, 7, 75, 2, 2, 9718, 9719, 7, 78, 2, 2, 9719, 9720, 7, 91, 2, 2, 9720, 1020, 3, 2, 2, 2, 9721, 9722, 7, 72, 2, 2, 9722, 9723, 7, 67, 2, 2, 9723, 9724, 7, 84, 2, 2, 9724, 1022, 3, 2, 2, 2, 9725, 9726, 7, 72, 2, 2, 9726, 9727, 7, 67, 2, 2, 9727, 9728, 7, 85, 2, 2, 9728, 9729, 7, 86, 2, 2, 9729, 1024, 3, 2, 2, 2, 9730, 9731, 7, 72, 2, 2, 9731, 9732, 7, 67, 2, 2, 9732, 9733, 7, 85, 2, 2, 9733, 9734, 7, 86, 2, 2, 9734, 9735, 7, 85, 2, 2, 9735, 9736, 7, 86, 2, 2, 9736, 9737, 7, 67, 2, 2, 9737, 9738, 7, 84, 2, 2, 9738, 9739, 7, 86, 2, 2, 9739, 1026, 3, 2, 2, 2, 9740, 9741, 7, 72, 2, 2, 9741, 9742, 7, 68, 2, 2, 9742, 9743, 7, 86, 2, 2, 9743, 9744, 7, 85, 2, 2, 9744, 9745, 7, 69, 2, 2, 9745, 9746, 7, 67, 2, 2, 9746, 9747, 7, 80, 2, 2, 9747, 1028, 3, 2, 2, 2, 9748, 9749, 7, 72, 2, 2, 9749, 9750, 7, 71, 2, 2, 9750, 9751, 7, 67, 2, 2, 9751, 9752, 7, 86, 2, 2, 9752, 9753, 7, 87, 2, 2, 9753, 9754, 7, 84, 2, 2, 9754, 9755, 7, 71, 2, 2, 9755, 9756, 7, 97, 2, 2, 9756, 9757, 7, 70, 2, 2, 9757, 9758, 7, 71, 2, 2, 9758, 9759, 7, 86, 2, 2, 9759, 9760, 7, 67, 2, 2, 9760, 9761, 7, 75, 2, 2, 9761, 9762, 7, 78, 2, 2, 9762, 9763, 7, 85, 2, 2, 9763, 1030, 3, 2, 2, 2, 9764, 9765, 7, 72, 2, 2, 9765, 9766, 7, 71, 2, 2, 9766, 9767, 7, 67, 2, 2, 9767, 9768, 7, 86, 2, 2, 9768, 9769, 7, 87, 2, 2, 9769, 9770, 7, 84, 2, 2, 9770, 9771, 7, 71, 2, 2, 9771, 9772, 7, 97, 2, 2, 9772, 9773, 7, 75, 2, 2, 9773, 9774, 7, 70, 2, 2, 9774, 1032, 3, 2, 2, 2, 9775, 9776, 7, 72, 2, 2, 9776, 9777, 7, 71, 2, 2, 9777, 9778, 7, 67, 2, 2, 9778, 9779, 7, 86, 2, 2, 9779, 9780, 7, 87, 2, 2, 9780, 9781, 7, 84, 2, 2, 9781, 9782, 7, 71, 2, 2, 9782, 9783, 7, 97, 2, 2, 9783, 9784, 7, 85, 2, 2, 9784, 9785, 7, 71, 2, 2, 9785, 9786, 7, 86, 2, 2, 9786, 1034, 3, 2, 2, 2, 9787, 9788, 7, 72, 2, 2, 9788, 9789, 7, 71, 2, 2, 9789, 9790, 7, 67, 2, 2, 9790, 9791, 7, 86, 2, 2, 9791, 9792, 7, 87, 2, 2, 9792, 9793, 7, 84, 2, 2, 9793, 9794, 7, 71, 2, 2, 9794, 9795, 7, 97, 2, 2, 9795, 9796, 7, 88, 2, 2, 9796, 9797, 7, 67, 2, 2, 9797, 9798, 7, 78, 2, 2, 9798, 9799, 7, 87, 2, 2, 9799, 9800, 7, 71, 2, 2, 9800, 1036, 3, 2, 2, 2, 9801, 9802, 7, 72, 2, 2, 9802, 9803, 7, 71, 2, 2, 9803, 9804, 7, 86, 2, 2, 9804, 9805, 7, 69, 2, 2, 9805, 9806, 7, 74, 2, 2, 9806, 1038, 3, 2, 2, 2, 9807, 9808, 7, 72, 2, 2, 9808, 9809, 7, 75, 2, 2, 9809, 9810, 7, 78, 2, 2, 9810, 9811, 7, 71, 2, 2, 9811, 1040, 3, 2, 2, 2, 9812, 9813, 7, 72, 2, 2, 9813, 9814, 7, 75, 2, 2, 9814, 9815, 7, 78, 2, 2, 9815, 9816, 7, 71, 2, 2, 9816, 9817, 7, 97, 2, 2, 9817, 9818, 7, 80, 2, 2, 9818, 9819, 7, 67, 2, 2, 9819, 9820, 7, 79, 2, 2, 9820, 9821, 7, 71, 2, 2, 9821, 9822, 7, 97, 2, 2, 9822, 9823, 7, 69, 2, 2, 9823, 9824, 7, 81, 2, 2, 9824, 9825, 7, 80, 2, 2, 9825, 9826, 7, 88, 2, 2, 9826, 9827, 7, 71, 2, 2, 9827, 9828, 7, 84, 2, 2, 9828, 9829, 7, 86, 2, 2, 9829, 1042, 3, 2, 2, 2, 9830, 9831, 7, 72, 2, 2, 9831, 9832, 7, 75, 2, 2, 9832, 9833, 7, 78, 2, 2, 9833, 9834, 7, 71, 2, 2, 9834, 9835, 7, 85, 2, 2, 9835, 9836, 7, 91, 2, 2, 9836, 9837, 7, 85, 2, 2, 9837, 9838, 7, 86, 2, 2, 9838, 9839, 7, 71, 2, 2, 9839, 9840, 7, 79, 2, 2, 9840, 9841, 7, 97, 2, 2, 9841, 9842, 7, 78, 2, 2, 9842, 9843, 7, 75, 2, 2, 9843, 9844, 7, 77, 2, 2, 9844, 9845, 7, 71, 2, 2, 9845, 9846, 7, 97, 2, 2, 9846, 9847, 7, 78, 2, 2, 9847, 9848, 7, 81, 2, 2, 9848, 9849, 7, 73, 2, 2, 9849, 9850, 7, 73, 2, 2, 9850, 9851, 7, 75, 2, 2, 9851, 9852, 7, 80, 2, 2, 9852, 9853, 7, 73, 2, 2, 9853, 1044, 3, 2, 2, 2, 9854, 9855, 7, 72, 2, 2, 9855, 9856, 7, 75, 2, 2, 9856, 9857, 7, 78, 2, 2, 9857, 9858, 7, 86, 2, 2, 9858, 9859, 7, 71, 2, 2, 9859, 9860, 7, 84, 2, 2, 9860, 1046, 3, 2, 2, 2, 9861, 9862, 7, 72, 2, 2, 9862, 9863, 7, 75, 2, 2, 9863, 9864, 7, 80, 2, 2, 9864, 9865, 7, 67, 2, 2, 9865, 9866, 7, 78, 2, 2, 9866, 1048, 3, 2, 2, 2, 9867, 9868, 7, 72, 2, 2, 9868, 9869, 7, 75, 2, 2, 9869, 9870, 7, 80, 2, 2, 9870, 9871, 7, 71, 2, 2, 9871, 1050, 3, 2, 2, 2, 9872, 9873, 7, 72, 2, 2, 9873, 9874, 7, 75, 2, 2, 9874, 9875, 7, 80, 2, 2, 9875, 9876, 7, 75, 2, 2, 9876, 9877, 7, 85, 2, 2, 9877, 9878, 7, 74, 2, 2, 9878, 1052, 3, 2, 2, 2, 9879, 9880, 7, 72, 2, 2, 9880, 9881, 7, 75, 2, 2, 9881, 9882, 7, 84, 2, 2, 9882, 9883, 7, 85, 2, 2, 9883, 9884, 7, 86, 2, 2, 9884, 1054, 3, 2, 2, 2, 9885, 9886, 7, 72, 2, 2, 9886, 9887, 7, 75, 2, 2, 9887, 9888, 7, 84, 2, 2, 9888, 9889, 7, 85, 2, 2, 9889, 9890, 7, 86, 2, 2, 9890, 9891, 7, 79, 2, 2, 9891, 1056, 3, 2, 2, 2, 9892, 9893, 7, 72, 2, 2, 9893, 9894, 7, 75, 2, 2, 9894, 9895, 7, 84, 2, 2, 9895, 9896, 7, 85, 2, 2, 9896, 9897, 7, 86, 2, 2, 9897, 9898, 7, 97, 2, 2, 9898, 9899, 7, 84, 2, 2, 9899, 9900, 7, 81, 2, 2, 9900, 9901, 7, 89, 2, 2, 9901, 9902, 7, 85, 2, 2, 9902, 1058, 3, 2, 2, 2, 9903, 9904, 7, 72, 2, 2, 9904, 9905, 7, 75, 2, 2, 9905, 9906, 7, 84, 2, 2, 9906, 9907, 7, 85, 2, 2, 9907, 9908, 7, 86, 2, 2, 9908, 9909, 7, 97, 2, 2, 9909, 9910, 7, 88, 2, 2, 9910, 9911, 7, 67, 2, 2, 9911, 9912, 7, 78, 2, 2, 9912, 9913, 7, 87, 2, 2, 9913, 9914, 7, 71, 2, 2, 9914, 1060, 3, 2, 2, 2, 9915, 9916, 7, 72, 2, 2, 9916, 9917, 7, 75, 2, 2, 9917, 9918, 7, 90, 2, 2, 9918, 9919, 7, 71, 2, 2, 9919, 9920, 7, 70, 2, 2, 9920, 9921, 7, 97, 2, 2, 9921, 9922, 7, 88, 2, 2, 9922, 9923, 7, 75, 2, 2, 9923, 9924, 7, 71, 2, 2, 9924, 9925, 7, 89, 2, 2, 9925, 9926, 7, 97, 2, 2, 9926, 9927, 7, 70, 2, 2, 9927, 9928, 7, 67, 2, 2, 9928, 9929, 7, 86, 2, 2, 9929, 9930, 7, 67, 2, 2, 9930, 1062, 3, 2, 2, 2, 9931, 9932, 7, 72, 2, 2, 9932, 9933, 7, 78, 2, 2, 9933, 9934, 7, 67, 2, 2, 9934, 9935, 7, 73, 2, 2, 9935, 9936, 7, 73, 2, 2, 9936, 9937, 7, 71, 2, 2, 9937, 9938, 7, 84, 2, 2, 9938, 1064, 3, 2, 2, 2, 9939, 9940, 7, 72, 2, 2, 9940, 9941, 7, 78, 2, 2, 9941, 9942, 7, 67, 2, 2, 9942, 9943, 7, 85, 2, 2, 9943, 9944, 7, 74, 2, 2, 9944, 9945, 7, 68, 2, 2, 9945, 9946, 7, 67, 2, 2, 9946, 9947, 7, 69, 2, 2, 9947, 9948, 7, 77, 2, 2, 9948, 1066, 3, 2, 2, 2, 9949, 9950, 7, 72, 2, 2, 9950, 9951, 7, 78, 2, 2, 9951, 9952, 7, 67, 2, 2, 9952, 9953, 7, 85, 2, 2, 9953, 9954, 7, 74, 2, 2, 9954, 9955, 7, 97, 2, 2, 9955, 9956, 7, 69, 2, 2, 9956, 9957, 7, 67, 2, 2, 9957, 9958, 7, 69, 2, 2, 9958, 9959, 7, 74, 2, 2, 9959, 9960, 7, 71, 2, 2, 9960, 1068, 3, 2, 2, 2, 9961, 9962, 7, 72, 2, 2, 9962, 9963, 7, 78, 2, 2, 9963, 9964, 7, 81, 2, 2, 9964, 9965, 7, 67, 2, 2, 9965, 9966, 7, 86, 2, 2, 9966, 1070, 3, 2, 2, 2, 9967, 9968, 7, 72, 2, 2, 9968, 9969, 7, 78, 2, 2, 9969, 9970, 7, 81, 2, 2, 9970, 9971, 7, 68, 2, 2, 9971, 1072, 3, 2, 2, 2, 9972, 9973, 7, 72, 2, 2, 9973, 9974, 7, 78, 2, 2, 9974, 9975, 7, 81, 2, 2, 9975, 9976, 7, 81, 2, 2, 9976, 9977, 7, 84, 2, 2, 9977, 1074, 3, 2, 2, 2, 9978, 9979, 7, 72, 2, 2, 9979, 9980, 7, 78, 2, 2, 9980, 9981, 7, 87, 2, 2, 9981, 9982, 7, 85, 2, 2, 9982, 9983, 7, 74, 2, 2, 9983, 1076, 3, 2, 2, 2, 9984, 9985, 7, 72, 2, 2, 9985, 9986, 7, 81, 2, 2, 9986, 9987, 7, 78, 2, 2, 9987, 9988, 7, 70, 2, 2, 9988, 9989, 7, 71, 2, 2, 9989, 9990, 7, 84, 2, 2, 9990, 1078, 3, 2, 2, 2, 9991, 9992, 7, 72, 2, 2, 9992, 9993, 7, 81, 2, 2, 9993, 9994, 7, 78, 2, 2, 9994, 9995, 7, 78, 2, 2, 9995, 9996, 7, 81, 2, 2, 9996, 9997, 7, 89, 2, 2, 9997, 9998, 7, 75, 2, 2, 9998, 9999, 7, 80, 2, 2, 9999, 10000, 7, 73, 2, 2, 10000, 1080, 3, 2, 2, 2, 10001, 10002, 7, 72, 2, 2, 10002, 10003, 7, 81, 2, 2, 10003, 10004, 7, 78, 2, 2, 10004, 10005, 7, 78, 2, 2, 10005, 10006, 7, 81, 2, 2, 10006, 10007, 7, 89, 2, 2, 10007, 10008, 7, 85, 2, 2, 10008, 1082, 3, 2, 2, 2, 10009, 10010, 7, 72, 2, 2, 10010, 10011, 7, 81, 2, 2, 10011, 10012, 7, 84, 2, 2, 10012, 10013, 7, 67, 2, 2, 10013, 10014, 7, 78, 2, 2, 10014, 10015, 7, 78, 2, 2, 10015, 1084, 3, 2, 2, 2, 10016, 10017, 7, 72, 2, 2, 10017, 10018, 7, 81, 2, 2, 10018, 10019, 7, 84, 2, 2, 10019, 10020, 7, 69, 2, 2, 10020, 10021, 7, 71, 2, 2, 10021, 1086, 3, 2, 2, 2, 10022, 10023, 7, 72, 2, 2, 10023, 10024, 7, 81, 2, 2, 10024, 10025, 7, 84, 2, 2, 10025, 10026, 7, 69, 2, 2, 10026, 10027, 7, 71, 2, 2, 10027, 10028, 7, 97, 2, 2, 10028, 10029, 7, 90, 2, 2, 10029, 10030, 7, 79, 2, 2, 10030, 10031, 7, 78, 2, 2, 10031, 10032, 7, 97, 2, 2, 10032, 10033, 7, 83, 2, 2, 10033, 10034, 7, 87, 2, 2, 10034, 10035, 7, 71, 2, 2, 10035, 10036, 7, 84, 2, 2, 10036, 10037, 7, 91, 2, 2, 10037, 10038, 7, 97, 2, 2, 10038, 10039, 7, 84, 2, 2, 10039, 10040, 7, 71, 2, 2, 10040, 10041, 7, 89, 2, 2, 10041, 10042, 7, 84, 2, 2, 10042, 10043, 7, 75, 2, 2, 10043, 10044, 7, 86, 2, 2, 10044, 10045, 7, 71, 2, 2, 10045, 1088, 3, 2, 2, 2, 10046, 10047, 7, 72, 2, 2, 10047, 10048, 7, 81, 2, 2, 10048, 10049, 7, 84, 2, 2, 10049, 10050, 7, 71, 2, 2, 10050, 10051, 7, 75, 2, 2, 10051, 10052, 7, 73, 2, 2, 10052, 10053, 7, 80, 2, 2, 10053, 1090, 3, 2, 2, 2, 10054, 10055, 7, 72, 2, 2, 10055, 10056, 7, 81, 2, 2, 10056, 10057, 7, 84, 2, 2, 10057, 10058, 7, 71, 2, 2, 10058, 10059, 7, 88, 2, 2, 10059, 10060, 7, 71, 2, 2, 10060, 10061, 7, 84, 2, 2, 10061, 1092, 3, 2, 2, 2, 10062, 10063, 7, 72, 2, 2, 10063, 10064, 7, 81, 2, 2, 10064, 10065, 7, 84, 2, 2, 10065, 1094, 3, 2, 2, 2, 10066, 10067, 7, 72, 2, 2, 10067, 10068, 7, 81, 2, 2, 10068, 10069, 7, 84, 2, 2, 10069, 10070, 7, 79, 2, 2, 10070, 10071, 7, 67, 2, 2, 10071, 10072, 7, 86, 2, 2, 10072, 1096, 3, 2, 2, 2, 10073, 10074, 7, 72, 2, 2, 10074, 10075, 7, 81, 2, 2, 10075, 10076, 7, 84, 2, 2, 10076, 10077, 7, 89, 2, 2, 10077, 10078, 7, 67, 2, 2, 10078, 10079, 7, 84, 2, 2, 10079, 10080, 7, 70, 2, 2, 10080, 1098, 3, 2, 2, 2, 10081, 10082, 7, 72, 2, 2, 10082, 10083, 7, 84, 2, 2, 10083, 10084, 7, 67, 2, 2, 10084, 10085, 7, 73, 2, 2, 10085, 10086, 7, 79, 2, 2, 10086, 10087, 7, 71, 2, 2, 10087, 10088, 7, 80, 2, 2, 10088, 10089, 7, 86, 2, 2, 10089, 10090, 7, 97, 2, 2, 10090, 10091, 7, 80, 2, 2, 10091, 10092, 7, 87, 2, 2, 10092, 10093, 7, 79, 2, 2, 10093, 10094, 7, 68, 2, 2, 10094, 10095, 7, 71, 2, 2, 10095, 10096, 7, 84, 2, 2, 10096, 1100, 3, 2, 2, 2, 10097, 10098, 7, 72, 2, 2, 10098, 10099, 7, 84, 2, 2, 10099, 10100, 7, 71, 2, 2, 10100, 10101, 7, 71, 2, 2, 10101, 10102, 7, 78, 2, 2, 10102, 10103, 7, 75, 2, 2, 10103, 10104, 7, 85, 2, 2, 10104, 10105, 7, 86, 2, 2, 10105, 1102, 3, 2, 2, 2, 10106, 10107, 7, 72, 2, 2, 10107, 10108, 7, 84, 2, 2, 10108, 10109, 7, 71, 2, 2, 10109, 10110, 7, 71, 2, 2, 10110, 10111, 7, 78, 2, 2, 10111, 10112, 7, 75, 2, 2, 10112, 10113, 7, 85, 2, 2, 10113, 10114, 7, 86, 2, 2, 10114, 10115, 7, 85, 2, 2, 10115, 1104, 3, 2, 2, 2, 10116, 10117, 7, 72, 2, 2, 10117, 10118, 7, 84, 2, 2, 10118, 10119, 7, 71, 2, 2, 10119, 10120, 7, 71, 2, 2, 10120, 10121, 7, 82, 2, 2, 10121, 10122, 7, 81, 2, 2, 10122, 10123, 7, 81, 2, 2, 10123, 10124, 7, 78, 2, 2, 10124, 10125, 7, 85, 2, 2, 10125, 1106, 3, 2, 2, 2, 10126, 10127, 7, 72, 2, 2, 10127, 10128, 7, 84, 2, 2, 10128, 10129, 7, 71, 2, 2, 10129, 10130, 7, 85, 2, 2, 10130, 10131, 7, 74, 2, 2, 10131, 1108, 3, 2, 2, 2, 10132, 10133, 7, 72, 2, 2, 10133, 10134, 7, 84, 2, 2, 10134, 10135, 7, 81, 2, 2, 10135, 10136, 7, 79, 2, 2, 10136, 1110, 3, 2, 2, 2, 10137, 10138, 7, 72, 2, 2, 10138, 10139, 7, 84, 2, 2, 10139, 10140, 7, 81, 2, 2, 10140, 10141, 7, 79, 2, 2, 10141, 10142, 7, 97, 2, 2, 10142, 10143, 7, 86, 2, 2, 10143, 10144, 7, 92, 2, 2, 10144, 1112, 3, 2, 2, 2, 10145, 10146, 7, 72, 2, 2, 10146, 10147, 7, 87, 2, 2, 10147, 10148, 7, 78, 2, 2, 10148, 10149, 7, 78, 2, 2, 10149, 1114, 3, 2, 2, 2, 10150, 10151, 7, 72, 2, 2, 10151, 10152, 7, 87, 2, 2, 10152, 10153, 7, 78, 2, 2, 10153, 10154, 7, 78, 2, 2, 10154, 10155, 7, 97, 2, 2, 10155, 10156, 7, 81, 2, 2, 10156, 10157, 7, 87, 2, 2, 10157, 10158, 7, 86, 2, 2, 10158, 10159, 7, 71, 2, 2, 10159, 10160, 7, 84, 2, 2, 10160, 10161, 7, 97, 2, 2, 10161, 10162, 7, 76, 2, 2, 10162, 10163, 7, 81, 2, 2, 10163, 10164, 7, 75, 2, 2, 10164, 10165, 7, 80, 2, 2, 10165, 10166, 7, 97, 2, 2, 10166, 10167, 7, 86, 2, 2, 10167, 10168, 7, 81, 2, 2, 10168, 10169, 7, 97, 2, 2, 10169, 10170, 7, 81, 2, 2, 10170, 10171, 7, 87, 2, 2, 10171, 10172, 7, 86, 2, 2, 10172, 10173, 7, 71, 2, 2, 10173, 10174, 7, 84, 2, 2, 10174, 1116, 3, 2, 2, 2, 10175, 10176, 7, 72, 2, 2, 10176, 10177, 7, 87, 2, 2, 10177, 10178, 7, 80, 2, 2, 10178, 10179, 7, 69, 2, 2, 10179, 10180, 7, 86, 2, 2, 10180, 10181, 7, 75, 2, 2, 10181, 10182, 7, 81, 2, 2, 10182, 10183, 7, 80, 2, 2, 10183, 1118, 3, 2, 2, 2, 10184, 10185, 7, 72, 2, 2, 10185, 10186, 7, 87, 2, 2, 10186, 10187, 7, 80, 2, 2, 10187, 10188, 7, 69, 2, 2, 10188, 10189, 7, 86, 2, 2, 10189, 10190, 7, 75, 2, 2, 10190, 10191, 7, 81, 2, 2, 10191, 10192, 7, 80, 2, 2, 10192, 10193, 7, 85, 2, 2, 10193, 1120, 3, 2, 2, 2, 10194, 10195, 7, 73, 2, 2, 10195, 10196, 7, 67, 2, 2, 10196, 10197, 7, 86, 2, 2, 10197, 10198, 7, 74, 2, 2, 10198, 10199, 7, 71, 2, 2, 10199, 10200, 7, 84, 2, 2, 10200, 10201, 7, 97, 2, 2, 10201, 10202, 7, 81, 2, 2, 10202, 10203, 7, 82, 2, 2, 10203, 10204, 7, 86, 2, 2, 10204, 10205, 7, 75, 2, 2, 10205, 10206, 7, 79, 2, 2, 10206, 10207, 7, 75, 2, 2, 10207, 10208, 7, 92, 2, 2, 10208, 10209, 7, 71, 2, 2, 10209, 10210, 7, 84, 2, 2, 10210, 10211, 7, 97, 2, 2, 10211, 10212, 7, 85, 2, 2, 10212, 10213, 7, 86, 2, 2, 10213, 10214, 7, 67, 2, 2, 10214, 10215, 7, 86, 2, 2, 10215, 10216, 7, 75, 2, 2, 10216, 10217, 7, 85, 2, 2, 10217, 10218, 7, 86, 2, 2, 10218, 10219, 7, 75, 2, 2, 10219, 10220, 7, 69, 2, 2, 10220, 10221, 7, 85, 2, 2, 10221, 1122, 3, 2, 2, 2, 10222, 10223, 7, 73, 2, 2, 10223, 10224, 7, 67, 2, 2, 10224, 10225, 7, 86, 2, 2, 10225, 10226, 7, 74, 2, 2, 10226, 10227, 7, 71, 2, 2, 10227, 10228, 7, 84, 2, 2, 10228, 10229, 7, 97, 2, 2, 10229, 10230, 7, 82, 2, 2, 10230, 10231, 7, 78, 2, 2, 10231, 10232, 7, 67, 2, 2, 10232, 10233, 7, 80, 2, 2, 10233, 10234, 7, 97, 2, 2, 10234, 10235, 7, 85, 2, 2, 10235, 10236, 7, 86, 2, 2, 10236, 10237, 7, 67, 2, 2, 10237, 10238, 7, 86, 2, 2, 10238, 10239, 7, 75, 2, 2, 10239, 10240, 7, 85, 2, 2, 10240, 10241, 7, 86, 2, 2, 10241, 10242, 7, 75, 2, 2, 10242, 10243, 7, 69, 2, 2, 10243, 10244, 7, 85, 2, 2, 10244, 1124, 3, 2, 2, 2, 10245, 10246, 7, 73, 2, 2, 10246, 10247, 7, 68, 2, 2, 10247, 10248, 7, 91, 2, 2, 10248, 10249, 7, 97, 2, 2, 10249, 10250, 7, 69, 2, 2, 10250, 10251, 7, 81, 2, 2, 10251, 10252, 7, 80, 2, 2, 10252, 10253, 7, 69, 2, 2, 10253, 10254, 7, 97, 2, 2, 10254, 10255, 7, 84, 2, 2, 10255, 10256, 7, 81, 2, 2, 10256, 10257, 7, 78, 2, 2, 10257, 10258, 7, 78, 2, 2, 10258, 10259, 7, 87, 2, 2, 10259, 10260, 7, 82, 2, 2, 10260, 1126, 3, 2, 2, 2, 10261, 10262, 7, 73, 2, 2, 10262, 10263, 7, 68, 2, 2, 10263, 10264, 7, 91, 2, 2, 10264, 10265, 7, 97, 2, 2, 10265, 10266, 7, 82, 2, 2, 10266, 10267, 7, 87, 2, 2, 10267, 10268, 7, 85, 2, 2, 10268, 10269, 7, 74, 2, 2, 10269, 10270, 7, 70, 2, 2, 10270, 10271, 7, 81, 2, 2, 10271, 10272, 7, 89, 2, 2, 10272, 10273, 7, 80, 2, 2, 10273, 1128, 3, 2, 2, 2, 10274, 10275, 7, 73, 2, 2, 10275, 10276, 7, 71, 2, 2, 10276, 10277, 7, 80, 2, 2, 10277, 10278, 7, 71, 2, 2, 10278, 10279, 7, 84, 2, 2, 10279, 10280, 7, 67, 2, 2, 10280, 10281, 7, 86, 2, 2, 10281, 10282, 7, 71, 2, 2, 10282, 10283, 7, 70, 2, 2, 10283, 1130, 3, 2, 2, 2, 10284, 10285, 7, 73, 2, 2, 10285, 10286, 7, 71, 2, 2, 10286, 10287, 7, 86, 2, 2, 10287, 1132, 3, 2, 2, 2, 10288, 10289, 7, 73, 2, 2, 10289, 10290, 7, 78, 2, 2, 10290, 10291, 7, 81, 2, 2, 10291, 10292, 7, 68, 2, 2, 10292, 10293, 7, 67, 2, 2, 10293, 10294, 7, 78, 2, 2, 10294, 1134, 3, 2, 2, 2, 10295, 10296, 7, 73, 2, 2, 10296, 10297, 7, 78, 2, 2, 10297, 10298, 7, 81, 2, 2, 10298, 10299, 7, 68, 2, 2, 10299, 10300, 7, 67, 2, 2, 10300, 10301, 7, 78, 2, 2, 10301, 10302, 7, 78, 2, 2, 10302, 10303, 7, 91, 2, 2, 10303, 1136, 3, 2, 2, 2, 10304, 10305, 7, 73, 2, 2, 10305, 10306, 7, 78, 2, 2, 10306, 10307, 7, 81, 2, 2, 10307, 10308, 7, 68, 2, 2, 10308, 10309, 7, 67, 2, 2, 10309, 10310, 7, 78, 2, 2, 10310, 10311, 7, 97, 2, 2, 10311, 10312, 7, 80, 2, 2, 10312, 10313, 7, 67, 2, 2, 10313, 10314, 7, 79, 2, 2, 10314, 10315, 7, 71, 2, 2, 10315, 1138, 3, 2, 2, 2, 10316, 10317, 7, 73, 2, 2, 10317, 10318, 7, 78, 2, 2, 10318, 10319, 7, 81, 2, 2, 10319, 10320, 7, 68, 2, 2, 10320, 10321, 7, 67, 2, 2, 10321, 10322, 7, 78, 2, 2, 10322, 10323, 7, 97, 2, 2, 10323, 10324, 7, 86, 2, 2, 10324, 10325, 7, 81, 2, 2, 10325, 10326, 7, 82, 2, 2, 10326, 10327, 7, 75, 2, 2, 10327, 10328, 7, 69, 2, 2, 10328, 10329, 7, 97, 2, 2, 10329, 10330, 7, 71, 2, 2, 10330, 10331, 7, 80, 2, 2, 10331, 10332, 7, 67, 2, 2, 10332, 10333, 7, 68, 2, 2, 10333, 10334, 7, 78, 2, 2, 10334, 10335, 7, 71, 2, 2, 10335, 10336, 7, 70, 2, 2, 10336, 1140, 3, 2, 2, 2, 10337, 10338, 7, 73, 2, 2, 10338, 10339, 7, 81, 2, 2, 10339, 10340, 7, 86, 2, 2, 10340, 10341, 7, 81, 2, 2, 10341, 1142, 3, 2, 2, 2, 10342, 10343, 7, 73, 2, 2, 10343, 10344, 7, 84, 2, 2, 10344, 10345, 7, 67, 2, 2, 10345, 10346, 7, 80, 2, 2, 10346, 10347, 7, 86, 2, 2, 10347, 1144, 3, 2, 2, 2, 10348, 10349, 7, 73, 2, 2, 10349, 10350, 7, 84, 2, 2, 10350, 10351, 7, 81, 2, 2, 10351, 10352, 7, 87, 2, 2, 10352, 10353, 7, 82, 2, 2, 10353, 10354, 7, 97, 2, 2, 10354, 10355, 7, 68, 2, 2, 10355, 10356, 7, 91, 2, 2, 10356, 1146, 3, 2, 2, 2, 10357, 10358, 7, 73, 2, 2, 10358, 10359, 7, 84, 2, 2, 10359, 10360, 7, 81, 2, 2, 10360, 10361, 7, 87, 2, 2, 10361, 10362, 7, 82, 2, 2, 10362, 1148, 3, 2, 2, 2, 10363, 10364, 7, 73, 2, 2, 10364, 10365, 7, 84, 2, 2, 10365, 10366, 7, 81, 2, 2, 10366, 10367, 7, 87, 2, 2, 10367, 10368, 7, 82, 2, 2, 10368, 10369, 7, 97, 2, 2, 10369, 10370, 7, 75, 2, 2, 10370, 10371, 7, 70, 2, 2, 10371, 1150, 3, 2, 2, 2, 10372, 10373, 7, 73, 2, 2, 10373, 10374, 7, 84, 2, 2, 10374, 10375, 7, 81, 2, 2, 10375, 10376, 7, 87, 2, 2, 10376, 10377, 7, 82, 2, 2, 10377, 10378, 7, 75, 2, 2, 10378, 10379, 7, 80, 2, 2, 10379, 10380, 7, 73, 2, 2, 10380, 1152, 3, 2, 2, 2, 10381, 10382, 7, 73, 2, 2, 10382, 10383, 7, 84, 2, 2, 10383, 10384, 7, 81, 2, 2, 10384, 10385, 7, 87, 2, 2, 10385, 10386, 7, 82, 2, 2, 10386, 10387, 7, 75, 2, 2, 10387, 10388, 7, 80, 2, 2, 10388, 10389, 7, 73, 2, 2, 10389, 10390, 7, 97, 2, 2, 10390, 10391, 7, 75, 2, 2, 10391, 10392, 7, 70, 2, 2, 10392, 1154, 3, 2, 2, 2, 10393, 10394, 7, 73, 2, 2, 10394, 10395, 7, 84, 2, 2, 10395, 10396, 7, 81, 2, 2, 10396, 10397, 7, 87, 2, 2, 10397, 10398, 7, 82, 2, 2, 10398, 10399, 7, 85, 2, 2, 10399, 1156, 3, 2, 2, 2, 10400, 10401, 7, 73, 2, 2, 10401, 10402, 7, 87, 2, 2, 10402, 10403, 7, 67, 2, 2, 10403, 10404, 7, 84, 2, 2, 10404, 10405, 7, 67, 2, 2, 10405, 10406, 7, 80, 2, 2, 10406, 10407, 7, 86, 2, 2, 10407, 10408, 7, 71, 2, 2, 10408, 10409, 7, 71, 2, 2, 10409, 10410, 7, 70, 2, 2, 10410, 1158, 3, 2, 2, 2, 10411, 10412, 7, 73, 2, 2, 10412, 10413, 7, 87, 2, 2, 10413, 10414, 7, 67, 2, 2, 10414, 10415, 7, 84, 2, 2, 10415, 10416, 7, 67, 2, 2, 10416, 10417, 7, 80, 2, 2, 10417, 10418, 7, 86, 2, 2, 10418, 10419, 7, 71, 2, 2, 10419, 10420, 7, 71, 2, 2, 10420, 1160, 3, 2, 2, 2, 10421, 10422, 7, 73, 2, 2, 10422, 10423, 7, 87, 2, 2, 10423, 10424, 7, 67, 2, 2, 10424, 10425, 7, 84, 2, 2, 10425, 10426, 7, 70, 2, 2, 10426, 1162, 3, 2, 2, 2, 10427, 10428, 7, 74, 2, 2, 10428, 10429, 7, 67, 2, 2, 10429, 10430, 7, 85, 2, 2, 10430, 10431, 7, 74, 2, 2, 10431, 10432, 7, 97, 2, 2, 10432, 10433, 7, 67, 2, 2, 10433, 10434, 7, 76, 2, 2, 10434, 1164, 3, 2, 2, 2, 10435, 10436, 7, 74, 2, 2, 10436, 10437, 7, 67, 2, 2, 10437, 10438, 7, 85, 2, 2, 10438, 10439, 7, 74, 2, 2, 10439, 1166, 3, 2, 2, 2, 10440, 10441, 7, 74, 2, 2, 10441, 10442, 7, 67, 2, 2, 10442, 10443, 7, 85, 2, 2, 10443, 10444, 7, 74, 2, 2, 10444, 10445, 7, 77, 2, 2, 10445, 10446, 7, 71, 2, 2, 10446, 10447, 7, 91, 2, 2, 10447, 10448, 7, 85, 2, 2, 10448, 1168, 3, 2, 2, 2, 10449, 10450, 7, 74, 2, 2, 10450, 10451, 7, 67, 2, 2, 10451, 10452, 7, 85, 2, 2, 10452, 10453, 7, 74, 2, 2, 10453, 10454, 7, 97, 2, 2, 10454, 10455, 7, 85, 2, 2, 10455, 10456, 7, 76, 2, 2, 10456, 1170, 3, 2, 2, 2, 10457, 10458, 7, 74, 2, 2, 10458, 10459, 7, 67, 2, 2, 10459, 10460, 7, 88, 2, 2, 10460, 10461, 7, 75, 2, 2, 10461, 10462, 7, 80, 2, 2, 10462, 10463, 7, 73, 2, 2, 10463, 1172, 3, 2, 2, 2, 10464, 10465, 7, 74, 2, 2, 10465, 10466, 7, 71, 2, 2, 10466, 10467, 7, 67, 2, 2, 10467, 10468, 7, 70, 2, 2, 10468, 10469, 7, 71, 2, 2, 10469, 10470, 7, 84, 2, 2, 10470, 1174, 3, 2, 2, 2, 10471, 10472, 7, 74, 2, 2, 10472, 10473, 7, 71, 2, 2, 10473, 10474, 7, 67, 2, 2, 10474, 10475, 7, 82, 2, 2, 10475, 1176, 3, 2, 2, 2, 10476, 10477, 7, 74, 2, 2, 10477, 10478, 7, 71, 2, 2, 10478, 10479, 7, 78, 2, 2, 10479, 10480, 7, 82, 2, 2, 10480, 1178, 3, 2, 2, 2, 10481, 10482, 7, 74, 2, 2, 10482, 10483, 7, 71, 2, 2, 10483, 10484, 7, 90, 2, 2, 10484, 10485, 7, 86, 2, 2, 10485, 10486, 7, 81, 2, 2, 10486, 10487, 7, 84, 2, 2, 10487, 10488, 7, 67, 2, 2, 10488, 10489, 7, 89, 2, 2, 10489, 1180, 3, 2, 2, 2, 10490, 10491, 7, 74, 2, 2, 10491, 10492, 7, 71, 2, 2, 10492, 10493, 7, 90, 2, 2, 10493, 10494, 7, 86, 2, 2, 10494, 10495, 7, 81, 2, 2, 10495, 10496, 7, 84, 2, 2, 10496, 10497, 7, 71, 2, 2, 10497, 10498, 7, 72, 2, 2, 10498, 1182, 3, 2, 2, 2, 10499, 10500, 7, 74, 2, 2, 10500, 10501, 7, 75, 2, 2, 10501, 10502, 7, 70, 2, 2, 10502, 10503, 7, 70, 2, 2, 10503, 10504, 7, 71, 2, 2, 10504, 10505, 7, 80, 2, 2, 10505, 1184, 3, 2, 2, 2, 10506, 10507, 7, 74, 2, 2, 10507, 10508, 7, 75, 2, 2, 10508, 10509, 7, 70, 2, 2, 10509, 10510, 7, 71, 2, 2, 10510, 1186, 3, 2, 2, 2, 10511, 10512, 7, 74, 2, 2, 10512, 10513, 7, 75, 2, 2, 10513, 10514, 7, 71, 2, 2, 10514, 10515, 7, 84, 2, 2, 10515, 10516, 7, 67, 2, 2, 10516, 10517, 7, 84, 2, 2, 10517, 10518, 7, 69, 2, 2, 10518, 10519, 7, 74, 2, 2, 10519, 10520, 7, 91, 2, 2, 10520, 1188, 3, 2, 2, 2, 10521, 10522, 7, 74, 2, 2, 10522, 10523, 7, 75, 2, 2, 10523, 10524, 7, 73, 2, 2, 10524, 10525, 7, 74, 2, 2, 10525, 1190, 3, 2, 2, 2, 10526, 10527, 7, 74, 2, 2, 10527, 10528, 7, 75, 2, 2, 10528, 10529, 7, 80, 2, 2, 10529, 10530, 7, 86, 2, 2, 10530, 10531, 7, 85, 2, 2, 10531, 10532, 7, 71, 2, 2, 10532, 10533, 7, 86, 2, 2, 10533, 10534, 7, 97, 2, 2, 10534, 10535, 7, 68, 2, 2, 10535, 10536, 7, 71, 2, 2, 10536, 10537, 7, 73, 2, 2, 10537, 10538, 7, 75, 2, 2, 10538, 10539, 7, 80, 2, 2, 10539, 1192, 3, 2, 2, 2, 10540, 10541, 7, 74, 2, 2, 10541, 10542, 7, 75, 2, 2, 10542, 10543, 7, 80, 2, 2, 10543, 10544, 7, 86, 2, 2, 10544, 10545, 7, 85, 2, 2, 10545, 10546, 7, 71, 2, 2, 10546, 10547, 7, 86, 2, 2, 10547, 10548, 7, 97, 2, 2, 10548, 10549, 7, 71, 2, 2, 10549, 10550, 7, 80, 2, 2, 10550, 10551, 7, 70, 2, 2, 10551, 1194, 3, 2, 2, 2, 10552, 10553, 7, 74, 2, 2, 10553, 10554, 7, 81, 2, 2, 10554, 10555, 7, 86, 2, 2, 10555, 1196, 3, 2, 2, 2, 10556, 10557, 7, 74, 2, 2, 10557, 10558, 7, 81, 2, 2, 10558, 10559, 7, 87, 2, 2, 10559, 10560, 7, 84, 2, 2, 10560, 1198, 3, 2, 2, 2, 10561, 10562, 7, 74, 2, 2, 10562, 10563, 7, 89, 2, 2, 10563, 10564, 7, 79, 2, 2, 10564, 10565, 7, 97, 2, 2, 10565, 10566, 7, 68, 2, 2, 10566, 10567, 7, 84, 2, 2, 10567, 10568, 7, 81, 2, 2, 10568, 10569, 7, 77, 2, 2, 10569, 10570, 7, 71, 2, 2, 10570, 10571, 7, 84, 2, 2, 10571, 10572, 7, 71, 2, 2, 10572, 10573, 7, 70, 2, 2, 10573, 1200, 3, 2, 2, 2, 10574, 10575, 7, 74, 2, 2, 10575, 10576, 7, 91, 2, 2, 10576, 10577, 7, 68, 2, 2, 10577, 10578, 7, 84, 2, 2, 10578, 10579, 7, 75, 2, 2, 10579, 10580, 7, 70, 2, 2, 10580, 1202, 3, 2, 2, 2, 10581, 10582, 7, 75, 2, 2, 10582, 10583, 7, 70, 2, 2, 10583, 10584, 7, 71, 2, 2, 10584, 10585, 7, 80, 2, 2, 10585, 10586, 7, 86, 2, 2, 10586, 10587, 7, 75, 2, 2, 10587, 10588, 7, 72, 2, 2, 10588, 10589, 7, 75, 2, 2, 10589, 10590, 7, 71, 2, 2, 10590, 10591, 7, 70, 2, 2, 10591, 1204, 3, 2, 2, 2, 10592, 10593, 7, 75, 2, 2, 10593, 10594, 7, 70, 2, 2, 10594, 10595, 7, 71, 2, 2, 10595, 10596, 7, 80, 2, 2, 10596, 10597, 7, 86, 2, 2, 10597, 10598, 7, 75, 2, 2, 10598, 10599, 7, 72, 2, 2, 10599, 10600, 7, 75, 2, 2, 10600, 10601, 7, 71, 2, 2, 10601, 10602, 7, 84, 2, 2, 10602, 1206, 3, 2, 2, 2, 10603, 10604, 7, 75, 2, 2, 10604, 10605, 7, 70, 2, 2, 10605, 10606, 7, 71, 2, 2, 10606, 10607, 7, 80, 2, 2, 10607, 10608, 7, 86, 2, 2, 10608, 10609, 7, 75, 2, 2, 10609, 10610, 7, 86, 2, 2, 10610, 10611, 7, 91, 2, 2, 10611, 1208, 3, 2, 2, 2, 10612, 10613, 7, 75, 2, 2, 10613, 10614, 7, 70, 2, 2, 10614, 10615, 7, 73, 2, 2, 10615, 10616, 7, 71, 2, 2, 10616, 10617, 7, 80, 2, 2, 10617, 10618, 7, 71, 2, 2, 10618, 10619, 7, 84, 2, 2, 10619, 10620, 7, 67, 2, 2, 10620, 10621, 7, 86, 2, 2, 10621, 10622, 7, 81, 2, 2, 10622, 10623, 7, 84, 2, 2, 10623, 10624, 7, 85, 2, 2, 10624, 1210, 3, 2, 2, 2, 10625, 10626, 7, 75, 2, 2, 10626, 10627, 7, 70, 2, 2, 10627, 1212, 3, 2, 2, 2, 10628, 10629, 7, 75, 2, 2, 10629, 10630, 7, 70, 2, 2, 10630, 10631, 7, 78, 2, 2, 10631, 10632, 7, 71, 2, 2, 10632, 10633, 7, 97, 2, 2, 10633, 10634, 7, 86, 2, 2, 10634, 10635, 7, 75, 2, 2, 10635, 10636, 7, 79, 2, 2, 10636, 10637, 7, 71, 2, 2, 10637, 1214, 3, 2, 2, 2, 10638, 10639, 7, 75, 2, 2, 10639, 10640, 7, 72, 2, 2, 10640, 1216, 3, 2, 2, 2, 10641, 10642, 7, 75, 2, 2, 10642, 10643, 7, 73, 2, 2, 10643, 10644, 7, 80, 2, 2, 10644, 10645, 7, 81, 2, 2, 10645, 10646, 7, 84, 2, 2, 10646, 10647, 7, 71, 2, 2, 10647, 1218, 3, 2, 2, 2, 10648, 10649, 7, 75, 2, 2, 10649, 10650, 7, 73, 2, 2, 10650, 10651, 7, 80, 2, 2, 10651, 10652, 7, 81, 2, 2, 10652, 10653, 7, 84, 2, 2, 10653, 10654, 7, 71, 2, 2, 10654, 10655, 7, 97, 2, 2, 10655, 10656, 7, 81, 2, 2, 10656, 10657, 7, 82, 2, 2, 10657, 10658, 7, 86, 2, 2, 10658, 10659, 7, 75, 2, 2, 10659, 10660, 7, 79, 2, 2, 10660, 10661, 7, 97, 2, 2, 10661, 10662, 7, 71, 2, 2, 10662, 10663, 7, 79, 2, 2, 10663, 10664, 7, 68, 2, 2, 10664, 10665, 7, 71, 2, 2, 10665, 10666, 7, 70, 2, 2, 10666, 10667, 7, 70, 2, 2, 10667, 10668, 7, 71, 2, 2, 10668, 10669, 7, 70, 2, 2, 10669, 10670, 7, 97, 2, 2, 10670, 10671, 7, 74, 2, 2, 10671, 10672, 7, 75, 2, 2, 10672, 10673, 7, 80, 2, 2, 10673, 10674, 7, 86, 2, 2, 10674, 10675, 7, 85, 2, 2, 10675, 1220, 3, 2, 2, 2, 10676, 10677, 7, 75, 2, 2, 10677, 10678, 7, 73, 2, 2, 10678, 10679, 7, 80, 2, 2, 10679, 10680, 7, 81, 2, 2, 10680, 10681, 7, 84, 2, 2, 10681, 10682, 7, 71, 2, 2, 10682, 10683, 7, 97, 2, 2, 10683, 10684, 7, 84, 2, 2, 10684, 10685, 7, 81, 2, 2, 10685, 10686, 7, 89, 2, 2, 10686, 10687, 7, 97, 2, 2, 10687, 10688, 7, 81, 2, 2, 10688, 10689, 7, 80, 2, 2, 10689, 10690, 7, 97, 2, 2, 10690, 10691, 7, 70, 2, 2, 10691, 10692, 7, 87, 2, 2, 10692, 10693, 7, 82, 2, 2, 10693, 10694, 7, 77, 2, 2, 10694, 10695, 7, 71, 2, 2, 10695, 10696, 7, 91, 2, 2, 10696, 10697, 7, 97, 2, 2, 10697, 10698, 7, 75, 2, 2, 10698, 10699, 7, 80, 2, 2, 10699, 10700, 7, 70, 2, 2, 10700, 10701, 7, 71, 2, 2, 10701, 10702, 7, 90, 2, 2, 10702, 1222, 3, 2, 2, 2, 10703, 10704, 7, 75, 2, 2, 10704, 10705, 7, 73, 2, 2, 10705, 10706, 7, 80, 2, 2, 10706, 10707, 7, 81, 2, 2, 10707, 10708, 7, 84, 2, 2, 10708, 10709, 7, 71, 2, 2, 10709, 10710, 7, 97, 2, 2, 10710, 10711, 7, 89, 2, 2, 10711, 10712, 7, 74, 2, 2, 10712, 10713, 7, 71, 2, 2, 10713, 10714, 7, 84, 2, 2, 10714, 10715, 7, 71, 2, 2, 10715, 10716, 7, 97, 2, 2, 10716, 10717, 7, 69, 2, 2, 10717, 10718, 7, 78, 2, 2, 10718, 10719, 7, 67, 2, 2, 10719, 10720, 7, 87, 2, 2, 10720, 10721, 7, 85, 2, 2, 10721, 10722, 7, 71, 2, 2, 10722, 1224, 3, 2, 2, 2, 10723, 10724, 7, 75, 2, 2, 10724, 10725, 7, 78, 2, 2, 10725, 10726, 7, 79, 2, 2, 10726, 1226, 3, 2, 2, 2, 10727, 10728, 7, 75, 2, 2, 10728, 10729, 7, 79, 2, 2, 10729, 10730, 7, 79, 2, 2, 10730, 10731, 7, 71, 2, 2, 10731, 10732, 7, 70, 2, 2, 10732, 10733, 7, 75, 2, 2, 10733, 10734, 7, 67, 2, 2, 10734, 10735, 7, 86, 2, 2, 10735, 10736, 7, 71, 2, 2, 10736, 1228, 3, 2, 2, 2, 10737, 10738, 7, 75, 2, 2, 10738, 10739, 7, 79, 2, 2, 10739, 10740, 7, 82, 2, 2, 10740, 10741, 7, 67, 2, 2, 10741, 10742, 7, 69, 2, 2, 10742, 10743, 7, 86, 2, 2, 10743, 1230, 3, 2, 2, 2, 10744, 10745, 7, 75, 2, 2, 10745, 10746, 7, 79, 2, 2, 10746, 10747, 7, 82, 2, 2, 10747, 10748, 7, 81, 2, 2, 10748, 10749, 7, 84, 2, 2, 10749, 10750, 7, 86, 2, 2, 10750, 1232, 3, 2, 2, 2, 10751, 10752, 7, 75, 2, 2, 10752, 10753, 7, 80, 2, 2, 10753, 10754, 7, 67, 2, 2, 10754, 10755, 7, 69, 2, 2, 10755, 10756, 7, 86, 2, 2, 10756, 10757, 7, 75, 2, 2, 10757, 10758, 7, 88, 2, 2, 10758, 10759, 7, 71, 2, 2, 10759, 1234, 3, 2, 2, 2, 10760, 10761, 7, 75, 2, 2, 10761, 10762, 7, 80, 2, 2, 10762, 10763, 7, 69, 2, 2, 10763, 10764, 7, 78, 2, 2, 10764, 10765, 7, 87, 2, 2, 10765, 10766, 7, 70, 2, 2, 10766, 10767, 7, 71, 2, 2, 10767, 1236, 3, 2, 2, 2, 10768, 10769, 7, 75, 2, 2, 10769, 10770, 7, 80, 2, 2, 10770, 10771, 7, 69, 2, 2, 10771, 10772, 7, 78, 2, 2, 10772, 10773, 7, 87, 2, 2, 10773, 10774, 7, 70, 2, 2, 10774, 10775, 7, 71, 2, 2, 10775, 10776, 7, 97, 2, 2, 10776, 10777, 7, 88, 2, 2, 10777, 10778, 7, 71, 2, 2, 10778, 10779, 7, 84, 2, 2, 10779, 10780, 7, 85, 2, 2, 10780, 10781, 7, 75, 2, 2, 10781, 10782, 7, 81, 2, 2, 10782, 10783, 7, 80, 2, 2, 10783, 1238, 3, 2, 2, 2, 10784, 10785, 7, 75, 2, 2, 10785, 10786, 7, 80, 2, 2, 10786, 10787, 7, 69, 2, 2, 10787, 10788, 7, 78, 2, 2, 10788, 10789, 7, 87, 2, 2, 10789, 10790, 7, 70, 2, 2, 10790, 10791, 7, 75, 2, 2, 10791, 10792, 7, 80, 2, 2, 10792, 10793, 7, 73, 2, 2, 10793, 1240, 3, 2, 2, 2, 10794, 10795, 7, 75, 2, 2, 10795, 10796, 7, 80, 2, 2, 10796, 10797, 7, 69, 2, 2, 10797, 10798, 7, 84, 2, 2, 10798, 10799, 7, 71, 2, 2, 10799, 10800, 7, 79, 2, 2, 10800, 10801, 7, 71, 2, 2, 10801, 10802, 7, 80, 2, 2, 10802, 10803, 7, 86, 2, 2, 10803, 10804, 7, 67, 2, 2, 10804, 10805, 7, 78, 2, 2, 10805, 1242, 3, 2, 2, 2, 10806, 10807, 7, 75, 2, 2, 10807, 10808, 7, 80, 2, 2, 10808, 10809, 7, 69, 2, 2, 10809, 10810, 7, 84, 2, 2, 10810, 10811, 7, 71, 2, 2, 10811, 10812, 7, 79, 2, 2, 10812, 10813, 7, 71, 2, 2, 10813, 10814, 7, 80, 2, 2, 10814, 10815, 7, 86, 2, 2, 10815, 1244, 3, 2, 2, 2, 10816, 10817, 7, 75, 2, 2, 10817, 10818, 7, 80, 2, 2, 10818, 10819, 7, 69, 2, 2, 10819, 10820, 7, 84, 2, 2, 10820, 1246, 3, 2, 2, 2, 10821, 10822, 7, 75, 2, 2, 10822, 10823, 7, 80, 2, 2, 10823, 10824, 7, 70, 2, 2, 10824, 10825, 7, 71, 2, 2, 10825, 10826, 7, 80, 2, 2, 10826, 10827, 7, 86, 2, 2, 10827, 1248, 3, 2, 2, 2, 10828, 10829, 7, 75, 2, 2, 10829, 10830, 7, 80, 2, 2, 10830, 10831, 7, 70, 2, 2, 10831, 10832, 7, 71, 2, 2, 10832, 10833, 7, 90, 2, 2, 10833, 10834, 7, 97, 2, 2, 10834, 10835, 7, 67, 2, 2, 10835, 10836, 7, 85, 2, 2, 10836, 10837, 7, 69, 2, 2, 10837, 1250, 3, 2, 2, 2, 10838, 10839, 7, 75, 2, 2, 10839, 10840, 7, 80, 2, 2, 10840, 10841, 7, 70, 2, 2, 10841, 10842, 7, 71, 2, 2, 10842, 10843, 7, 90, 2, 2, 10843, 10844, 7, 97, 2, 2, 10844, 10845, 7, 69, 2, 2, 10845, 10846, 7, 81, 2, 2, 10846, 10847, 7, 79, 2, 2, 10847, 10848, 7, 68, 2, 2, 10848, 10849, 7, 75, 2, 2, 10849, 10850, 7, 80, 2, 2, 10850, 10851, 7, 71, 2, 2, 10851, 1252, 3, 2, 2, 2, 10852, 10853, 7, 75, 2, 2, 10853, 10854, 7, 80, 2, 2, 10854, 10855, 7, 70, 2, 2, 10855, 10856, 7, 71, 2, 2, 10856, 10857, 7, 90, 2, 2, 10857, 10858, 7, 97, 2, 2, 10858, 10859, 7, 70, 2, 2, 10859, 10860, 7, 71, 2, 2, 10860, 10861, 7, 85, 2, 2, 10861, 10862, 7, 69, 2, 2, 10862, 1254, 3, 2, 2, 2, 10863, 10864, 7, 75, 2, 2, 10864, 10865, 7, 80, 2, 2, 10865, 10866, 7, 70, 2, 2, 10866, 10867, 7, 71, 2, 2, 10867, 10868, 7, 90, 2, 2, 10868, 10869, 7, 71, 2, 2, 10869, 10870, 7, 70, 2, 2, 10870, 1256, 3, 2, 2, 2, 10871, 10872, 7, 75, 2, 2, 10872, 10873, 7, 80, 2, 2, 10873, 10874, 7, 70, 2, 2, 10874, 10875, 7, 71, 2, 2, 10875, 10876, 7, 90, 2, 2, 10876, 10877, 7, 71, 2, 2, 10877, 10878, 7, 85, 2, 2, 10878, 1258, 3, 2, 2, 2, 10879, 10880, 7, 75, 2, 2, 10880, 10881, 7, 80, 2, 2, 10881, 10882, 7, 70, 2, 2, 10882, 10883, 7, 71, 2, 2, 10883, 10884, 7, 90, 2, 2, 10884, 10885, 7, 97, 2, 2, 10885, 10886, 7, 72, 2, 2, 10886, 10887, 7, 72, 2, 2, 10887, 10888, 7, 85, 2, 2, 10888, 1260, 3, 2, 2, 2, 10889, 10890, 7, 75, 2, 2, 10890, 10891, 7, 80, 2, 2, 10891, 10892, 7, 70, 2, 2, 10892, 10893, 7, 71, 2, 2, 10893, 10894, 7, 90, 2, 2, 10894, 10895, 7, 97, 2, 2, 10895, 10896, 7, 72, 2, 2, 10896, 10897, 7, 75, 2, 2, 10897, 10898, 7, 78, 2, 2, 10898, 10899, 7, 86, 2, 2, 10899, 10900, 7, 71, 2, 2, 10900, 10901, 7, 84, 2, 2, 10901, 1262, 3, 2, 2, 2, 10902, 10903, 7, 75, 2, 2, 10903, 10904, 7, 80, 2, 2, 10904, 10905, 7, 70, 2, 2, 10905, 10906, 7, 71, 2, 2, 10906, 10907, 7, 90, 2, 2, 10907, 1264, 3, 2, 2, 2, 10908, 10909, 7, 75, 2, 2, 10909, 10910, 7, 80, 2, 2, 10910, 10911, 7, 70, 2, 2, 10911, 10912, 7, 71, 2, 2, 10912, 10913, 7, 90, 2, 2, 10913, 10914, 7, 75, 2, 2, 10914, 10915, 7, 80, 2, 2, 10915, 10916, 7, 73, 2, 2, 10916, 1266, 3, 2, 2, 2, 10917, 10918, 7, 75, 2, 2, 10918, 10919, 7, 80, 2, 2, 10919, 10920, 7, 70, 2, 2, 10920, 10921, 7, 71, 2, 2, 10921, 10922, 7, 90, 2, 2, 10922, 10923, 7, 97, 2, 2, 10923, 10924, 7, 76, 2, 2, 10924, 10925, 7, 81, 2, 2, 10925, 10926, 7, 75, 2, 2, 10926, 10927, 7, 80, 2, 2, 10927, 1268, 3, 2, 2, 2, 10928, 10929, 7, 75, 2, 2, 10929, 10930, 7, 80, 2, 2, 10930, 10931, 7, 70, 2, 2, 10931, 10932, 7, 71, 2, 2, 10932, 10933, 7, 90, 2, 2, 10933, 10934, 7, 97, 2, 2, 10934, 10935, 7, 84, 2, 2, 10935, 10936, 7, 81, 2, 2, 10936, 10937, 7, 89, 2, 2, 10937, 10938, 7, 85, 2, 2, 10938, 1270, 3, 2, 2, 2, 10939, 10940, 7, 75, 2, 2, 10940, 10941, 7, 80, 2, 2, 10941, 10942, 7, 70, 2, 2, 10942, 10943, 7, 71, 2, 2, 10943, 10944, 7, 90, 2, 2, 10944, 10945, 7, 97, 2, 2, 10945, 10946, 7, 84, 2, 2, 10946, 10947, 7, 84, 2, 2, 10947, 10948, 7, 85, 2, 2, 10948, 1272, 3, 2, 2, 2, 10949, 10950, 7, 75, 2, 2, 10950, 10951, 7, 80, 2, 2, 10951, 10952, 7, 70, 2, 2, 10952, 10953, 7, 71, 2, 2, 10953, 10954, 7, 90, 2, 2, 10954, 10955, 7, 97, 2, 2, 10955, 10956, 7, 84, 2, 2, 10956, 10957, 7, 85, 2, 2, 10957, 10958, 7, 97, 2, 2, 10958, 10959, 7, 67, 2, 2, 10959, 10960, 7, 85, 2, 2, 10960, 10961, 7, 69, 2, 2, 10961, 1274, 3, 2, 2, 2, 10962, 10963, 7, 75, 2, 2, 10963, 10964, 7, 80, 2, 2, 10964, 10965, 7, 70, 2, 2, 10965, 10966, 7, 71, 2, 2, 10966, 10967, 7, 90, 2, 2, 10967, 10968, 7, 97, 2, 2, 10968, 10969, 7, 84, 2, 2, 10969, 10970, 7, 85, 2, 2, 10970, 10971, 7, 97, 2, 2, 10971, 10972, 7, 70, 2, 2, 10972, 10973, 7, 71, 2, 2, 10973, 10974, 7, 85, 2, 2, 10974, 10975, 7, 69, 2, 2, 10975, 1276, 3, 2, 2, 2, 10976, 10977, 7, 75, 2, 2, 10977, 10978, 7, 80, 2, 2, 10978, 10979, 7, 70, 2, 2, 10979, 10980, 7, 71, 2, 2, 10980, 10981, 7, 90, 2, 2, 10981, 10982, 7, 97, 2, 2, 10982, 10983, 7, 84, 2, 2, 10983, 10984, 7, 85, 2, 2, 10984, 1278, 3, 2, 2, 2, 10985, 10986, 7, 75, 2, 2, 10986, 10987, 7, 80, 2, 2, 10987, 10988, 7, 70, 2, 2, 10988, 10989, 7, 71, 2, 2, 10989, 10990, 7, 90, 2, 2, 10990, 10991, 7, 97, 2, 2, 10991, 10992, 7, 85, 2, 2, 10992, 10993, 7, 69, 2, 2, 10993, 10994, 7, 67, 2, 2, 10994, 10995, 7, 80, 2, 2, 10995, 1280, 3, 2, 2, 2, 10996, 10997, 7, 75, 2, 2, 10997, 10998, 7, 80, 2, 2, 10998, 10999, 7, 70, 2, 2, 10999, 11000, 7, 71, 2, 2, 11000, 11001, 7, 90, 2, 2, 11001, 11002, 7, 97, 2, 2, 11002, 11003, 7, 85, 2, 2, 11003, 11004, 7, 77, 2, 2, 11004, 11005, 7, 75, 2, 2, 11005, 11006, 7, 82, 2, 2, 11006, 11007, 7, 97, 2, 2, 11007, 11008, 7, 85, 2, 2, 11008, 11009, 7, 69, 2, 2, 11009, 11010, 7, 67, 2, 2, 11010, 11011, 7, 80, 2, 2, 11011, 1282, 3, 2, 2, 2, 11012, 11013, 7, 75, 2, 2, 11013, 11014, 7, 80, 2, 2, 11014, 11015, 7, 70, 2, 2, 11015, 11016, 7, 71, 2, 2, 11016, 11017, 7, 90, 2, 2, 11017, 11018, 7, 97, 2, 2, 11018, 11019, 7, 85, 2, 2, 11019, 11020, 7, 85, 2, 2, 11020, 11021, 7, 97, 2, 2, 11021, 11022, 7, 67, 2, 2, 11022, 11023, 7, 85, 2, 2, 11023, 11024, 7, 69, 2, 2, 11024, 1284, 3, 2, 2, 2, 11025, 11026, 7, 75, 2, 2, 11026, 11027, 7, 80, 2, 2, 11027, 11028, 7, 70, 2, 2, 11028, 11029, 7, 71, 2, 2, 11029, 11030, 7, 90, 2, 2, 11030, 11031, 7, 97, 2, 2, 11031, 11032, 7, 85, 2, 2, 11032, 11033, 7, 85, 2, 2, 11033, 11034, 7, 97, 2, 2, 11034, 11035, 7, 70, 2, 2, 11035, 11036, 7, 71, 2, 2, 11036, 11037, 7, 85, 2, 2, 11037, 11038, 7, 69, 2, 2, 11038, 1286, 3, 2, 2, 2, 11039, 11040, 7, 75, 2, 2, 11040, 11041, 7, 80, 2, 2, 11041, 11042, 7, 70, 2, 2, 11042, 11043, 7, 71, 2, 2, 11043, 11044, 7, 90, 2, 2, 11044, 11045, 7, 97, 2, 2, 11045, 11046, 7, 85, 2, 2, 11046, 11047, 7, 85, 2, 2, 11047, 1288, 3, 2, 2, 2, 11048, 11049, 7, 75, 2, 2, 11049, 11050, 7, 80, 2, 2, 11050, 11051, 7, 70, 2, 2, 11051, 11052, 7, 71, 2, 2, 11052, 11053, 7, 90, 2, 2, 11053, 11054, 7, 97, 2, 2, 11054, 11055, 7, 85, 2, 2, 11055, 11056, 7, 86, 2, 2, 11056, 11057, 7, 67, 2, 2, 11057, 11058, 7, 86, 2, 2, 11058, 11059, 7, 85, 2, 2, 11059, 1290, 3, 2, 2, 2, 11060, 11061, 7, 75, 2, 2, 11061, 11062, 7, 80, 2, 2, 11062, 11063, 7, 70, 2, 2, 11063, 11064, 7, 71, 2, 2, 11064, 11065, 7, 90, 2, 2, 11065, 11066, 7, 86, 2, 2, 11066, 11067, 7, 91, 2, 2, 11067, 11068, 7, 82, 2, 2, 11068, 11069, 7, 71, 2, 2, 11069, 1292, 3, 2, 2, 2, 11070, 11071, 7, 75, 2, 2, 11071, 11072, 7, 80, 2, 2, 11072, 11073, 7, 70, 2, 2, 11073, 11074, 7, 71, 2, 2, 11074, 11075, 7, 90, 2, 2, 11075, 11076, 7, 86, 2, 2, 11076, 11077, 7, 91, 2, 2, 11077, 11078, 7, 82, 2, 2, 11078, 11079, 7, 71, 2, 2, 11079, 11080, 7, 85, 2, 2, 11080, 1294, 3, 2, 2, 2, 11081, 11082, 7, 75, 2, 2, 11082, 11083, 7, 80, 2, 2, 11083, 11084, 7, 70, 2, 2, 11084, 11085, 7, 75, 2, 2, 11085, 11086, 7, 69, 2, 2, 11086, 11087, 7, 67, 2, 2, 11087, 11088, 7, 86, 2, 2, 11088, 11089, 7, 81, 2, 2, 11089, 11090, 7, 84, 2, 2, 11090, 1296, 3, 2, 2, 2, 11091, 11092, 7, 75, 2, 2, 11092, 11093, 7, 80, 2, 2, 11093, 11094, 7, 70, 2, 2, 11094, 11095, 7, 75, 2, 2, 11095, 11096, 7, 69, 2, 2, 11096, 11097, 7, 71, 2, 2, 11097, 11098, 7, 85, 2, 2, 11098, 1298, 3, 2, 2, 2, 11099, 11100, 7, 75, 2, 2, 11100, 11101, 7, 80, 2, 2, 11101, 11102, 7, 72, 2, 2, 11102, 11103, 7, 75, 2, 2, 11103, 11104, 7, 80, 2, 2, 11104, 11105, 7, 75, 2, 2, 11105, 11106, 7, 86, 2, 2, 11106, 11107, 7, 71, 2, 2, 11107, 1300, 3, 2, 2, 2, 11108, 11109, 7, 75, 2, 2, 11109, 11110, 7, 80, 2, 2, 11110, 11111, 7, 72, 2, 2, 11111, 11112, 7, 81, 2, 2, 11112, 11113, 7, 84, 2, 2, 11113, 11114, 7, 79, 2, 2, 11114, 11115, 7, 67, 2, 2, 11115, 11116, 7, 86, 2, 2, 11116, 11117, 7, 75, 2, 2, 11117, 11118, 7, 81, 2, 2, 11118, 11119, 7, 80, 2, 2, 11119, 11120, 7, 67, 2, 2, 11120, 11121, 7, 78, 2, 2, 11121, 1302, 3, 2, 2, 2, 11122, 11123, 7, 75, 2, 2, 11123, 11124, 7, 80, 2, 2, 11124, 11125, 7, 74, 2, 2, 11125, 11126, 7, 71, 2, 2, 11126, 11127, 7, 84, 2, 2, 11127, 11128, 7, 75, 2, 2, 11128, 11129, 7, 86, 2, 2, 11129, 1304, 3, 2, 2, 2, 11130, 11131, 7, 75, 2, 2, 11131, 11132, 7, 80, 2, 2, 11132, 1306, 3, 2, 2, 2, 11133, 11134, 7, 75, 2, 2, 11134, 11135, 7, 80, 2, 2, 11135, 11136, 7, 75, 2, 2, 11136, 11137, 7, 86, 2, 2, 11137, 11138, 7, 69, 2, 2, 11138, 11139, 7, 67, 2, 2, 11139, 11140, 7, 82, 2, 2, 11140, 1308, 3, 2, 2, 2, 11141, 11142, 7, 75, 2, 2, 11142, 11143, 7, 80, 2, 2, 11143, 11144, 7, 75, 2, 2, 11144, 11145, 7, 86, 2, 2, 11145, 11146, 7, 75, 2, 2, 11146, 11147, 7, 67, 2, 2, 11147, 11148, 7, 78, 2, 2, 11148, 1310, 3, 2, 2, 2, 11149, 11150, 7, 75, 2, 2, 11150, 11151, 7, 80, 2, 2, 11151, 11152, 7, 75, 2, 2, 11152, 11153, 7, 86, 2, 2, 11153, 11154, 7, 75, 2, 2, 11154, 11155, 7, 67, 2, 2, 11155, 11156, 7, 78, 2, 2, 11156, 11157, 7, 75, 2, 2, 11157, 11158, 7, 92, 2, 2, 11158, 11159, 7, 71, 2, 2, 11159, 11160, 7, 70, 2, 2, 11160, 1312, 3, 2, 2, 2, 11161, 11162, 7, 75, 2, 2, 11162, 11163, 7, 80, 2, 2, 11163, 11164, 7, 75, 2, 2, 11164, 11165, 7, 86, 2, 2, 11165, 11166, 7, 75, 2, 2, 11166, 11167, 7, 67, 2, 2, 11167, 11168, 7, 78, 2, 2, 11168, 11169, 7, 78, 2, 2, 11169, 11170, 7, 91, 2, 2, 11170, 1314, 3, 2, 2, 2, 11171, 11172, 7, 75, 2, 2, 11172, 11173, 7, 80, 2, 2, 11173, 11174, 7, 75, 2, 2, 11174, 11175, 7, 86, 2, 2, 11175, 11176, 7, 84, 2, 2, 11176, 11177, 7, 67, 2, 2, 11177, 11178, 7, 80, 2, 2, 11178, 11179, 7, 85, 2, 2, 11179, 1316, 3, 2, 2, 2, 11180, 11181, 7, 75, 2, 2, 11181, 11182, 7, 80, 2, 2, 11182, 11183, 7, 78, 2, 2, 11183, 11184, 7, 75, 2, 2, 11184, 11185, 7, 80, 2, 2, 11185, 11186, 7, 71, 2, 2, 11186, 1318, 3, 2, 2, 2, 11187, 11188, 7, 75, 2, 2, 11188, 11189, 7, 80, 2, 2, 11189, 11190, 7, 78, 2, 2, 11190, 11191, 7, 75, 2, 2, 11191, 11192, 7, 80, 2, 2, 11192, 11193, 7, 71, 2, 2, 11193, 11194, 7, 97, 2, 2, 11194, 11195, 7, 90, 2, 2, 11195, 11196, 7, 79, 2, 2, 11196, 11197, 7, 78, 2, 2, 11197, 11198, 7, 86, 2, 2, 11198, 11199, 7, 91, 2, 2, 11199, 11200, 7, 82, 2, 2, 11200, 11201, 7, 71, 2, 2, 11201, 11202, 7, 97, 2, 2, 11202, 11203, 7, 80, 2, 2, 11203, 11204, 7, 86, 2, 2, 11204, 1320, 3, 2, 2, 2, 11205, 11206, 7, 75, 2, 2, 11206, 11207, 7, 80, 2, 2, 11207, 11208, 7, 79, 2, 2, 11208, 11209, 7, 71, 2, 2, 11209, 11210, 7, 79, 2, 2, 11210, 11211, 7, 81, 2, 2, 11211, 11212, 7, 84, 2, 2, 11212, 11213, 7, 91, 2, 2, 11213, 1322, 3, 2, 2, 2, 11214, 11215, 7, 75, 2, 2, 11215, 11216, 7, 80, 2, 2, 11216, 11217, 7, 97, 2, 2, 11217, 11218, 7, 79, 2, 2, 11218, 11219, 7, 71, 2, 2, 11219, 11220, 7, 79, 2, 2, 11220, 11221, 7, 81, 2, 2, 11221, 11222, 7, 84, 2, 2, 11222, 11223, 7, 91, 2, 2, 11223, 11224, 7, 97, 2, 2, 11224, 11225, 7, 79, 2, 2, 11225, 11226, 7, 71, 2, 2, 11226, 11227, 7, 86, 2, 2, 11227, 11228, 7, 67, 2, 2, 11228, 11229, 7, 70, 2, 2, 11229, 11230, 7, 67, 2, 2, 11230, 11231, 7, 86, 2, 2, 11231, 11232, 7, 67, 2, 2, 11232, 1324, 3, 2, 2, 2, 11233, 11234, 7, 75, 2, 2, 11234, 11235, 7, 80, 2, 2, 11235, 11236, 7, 79, 2, 2, 11236, 11237, 7, 71, 2, 2, 11237, 11238, 7, 79, 2, 2, 11238, 11239, 7, 81, 2, 2, 11239, 11240, 7, 84, 2, 2, 11240, 11241, 7, 91, 2, 2, 11241, 11242, 7, 97, 2, 2, 11242, 11243, 7, 82, 2, 2, 11243, 11244, 7, 84, 2, 2, 11244, 11245, 7, 87, 2, 2, 11245, 11246, 7, 80, 2, 2, 11246, 11247, 7, 75, 2, 2, 11247, 11248, 7, 80, 2, 2, 11248, 11249, 7, 73, 2, 2, 11249, 1326, 3, 2, 2, 2, 11250, 11251, 7, 75, 2, 2, 11251, 11252, 7, 80, 2, 2, 11252, 11253, 7, 80, 2, 2, 11253, 11254, 7, 71, 2, 2, 11254, 11255, 7, 84, 2, 2, 11255, 1328, 3, 2, 2, 2, 11256, 11257, 7, 75, 2, 2, 11257, 11258, 7, 80, 2, 2, 11258, 11259, 7, 81, 2, 2, 11259, 11260, 7, 87, 2, 2, 11260, 11261, 7, 86, 2, 2, 11261, 1330, 3, 2, 2, 2, 11262, 11263, 7, 75, 2, 2, 11263, 11264, 7, 80, 2, 2, 11264, 11265, 7, 82, 2, 2, 11265, 11266, 7, 78, 2, 2, 11266, 11267, 7, 67, 2, 2, 11267, 11268, 7, 69, 2, 2, 11268, 11269, 7, 71, 2, 2, 11269, 1332, 3, 2, 2, 2, 11270, 11271, 7, 75, 2, 2, 11271, 11272, 7, 80, 2, 2, 11272, 11273, 7, 85, 2, 2, 11273, 11274, 7, 71, 2, 2, 11274, 11275, 7, 84, 2, 2, 11275, 11276, 7, 86, 2, 2, 11276, 11277, 7, 69, 2, 2, 11277, 11278, 7, 74, 2, 2, 11278, 11279, 7, 75, 2, 2, 11279, 11280, 7, 78, 2, 2, 11280, 11281, 7, 70, 2, 2, 11281, 11282, 7, 90, 2, 2, 11282, 11283, 7, 79, 2, 2, 11283, 11284, 7, 78, 2, 2, 11284, 11285, 7, 67, 2, 2, 11285, 11286, 7, 72, 2, 2, 11286, 11287, 7, 86, 2, 2, 11287, 11288, 7, 71, 2, 2, 11288, 11289, 7, 84, 2, 2, 11289, 1334, 3, 2, 2, 2, 11290, 11291, 7, 75, 2, 2, 11291, 11292, 7, 80, 2, 2, 11292, 11293, 7, 85, 2, 2, 11293, 11294, 7, 71, 2, 2, 11294, 11295, 7, 84, 2, 2, 11295, 11296, 7, 86, 2, 2, 11296, 11297, 7, 69, 2, 2, 11297, 11298, 7, 74, 2, 2, 11298, 11299, 7, 75, 2, 2, 11299, 11300, 7, 78, 2, 2, 11300, 11301, 7, 70, 2, 2, 11301, 11302, 7, 90, 2, 2, 11302, 11303, 7, 79, 2, 2, 11303, 11304, 7, 78, 2, 2, 11304, 11305, 7, 68, 2, 2, 11305, 11306, 7, 71, 2, 2, 11306, 11307, 7, 72, 2, 2, 11307, 11308, 7, 81, 2, 2, 11308, 11309, 7, 84, 2, 2, 11309, 11310, 7, 71, 2, 2, 11310, 1336, 3, 2, 2, 2, 11311, 11312, 7, 75, 2, 2, 11312, 11313, 7, 80, 2, 2, 11313, 11314, 7, 85, 2, 2, 11314, 11315, 7, 71, 2, 2, 11315, 11316, 7, 84, 2, 2, 11316, 11317, 7, 86, 2, 2, 11317, 11318, 7, 69, 2, 2, 11318, 11319, 7, 74, 2, 2, 11319, 11320, 7, 75, 2, 2, 11320, 11321, 7, 78, 2, 2, 11321, 11322, 7, 70, 2, 2, 11322, 11323, 7, 90, 2, 2, 11323, 11324, 7, 79, 2, 2, 11324, 11325, 7, 78, 2, 2, 11325, 1338, 3, 2, 2, 2, 11326, 11327, 7, 75, 2, 2, 11327, 11328, 7, 80, 2, 2, 11328, 11329, 7, 85, 2, 2, 11329, 11330, 7, 71, 2, 2, 11330, 11331, 7, 84, 2, 2, 11331, 11332, 7, 86, 2, 2, 11332, 1340, 3, 2, 2, 2, 11333, 11334, 7, 75, 2, 2, 11334, 11335, 7, 80, 2, 2, 11335, 11336, 7, 85, 2, 2, 11336, 11337, 7, 71, 2, 2, 11337, 11338, 7, 84, 2, 2, 11338, 11339, 7, 86, 2, 2, 11339, 11340, 7, 90, 2, 2, 11340, 11341, 7, 79, 2, 2, 11341, 11342, 7, 78, 2, 2, 11342, 11343, 7, 67, 2, 2, 11343, 11344, 7, 72, 2, 2, 11344, 11345, 7, 86, 2, 2, 11345, 11346, 7, 71, 2, 2, 11346, 11347, 7, 84, 2, 2, 11347, 1342, 3, 2, 2, 2, 11348, 11349, 7, 75, 2, 2, 11349, 11350, 7, 80, 2, 2, 11350, 11351, 7, 85, 2, 2, 11351, 11352, 7, 71, 2, 2, 11352, 11353, 7, 84, 2, 2, 11353, 11354, 7, 86, 2, 2, 11354, 11355, 7, 90, 2, 2, 11355, 11356, 7, 79, 2, 2, 11356, 11357, 7, 78, 2, 2, 11357, 11358, 7, 68, 2, 2, 11358, 11359, 7, 71, 2, 2, 11359, 11360, 7, 72, 2, 2, 11360, 11361, 7, 81, 2, 2, 11361, 11362, 7, 84, 2, 2, 11362, 11363, 7, 71, 2, 2, 11363, 1344, 3, 2, 2, 2, 11364, 11365, 7, 75, 2, 2, 11365, 11366, 7, 80, 2, 2, 11366, 11367, 7, 85, 2, 2, 11367, 11368, 7, 86, 2, 2, 11368, 11369, 7, 67, 2, 2, 11369, 11370, 7, 80, 2, 2, 11370, 11371, 7, 69, 2, 2, 11371, 11372, 7, 71, 2, 2, 11372, 1346, 3, 2, 2, 2, 11373, 11374, 7, 75, 2, 2, 11374, 11375, 7, 80, 2, 2, 11375, 11376, 7, 85, 2, 2, 11376, 11377, 7, 86, 2, 2, 11377, 11378, 7, 67, 2, 2, 11378, 11379, 7, 80, 2, 2, 11379, 11380, 7, 69, 2, 2, 11380, 11381, 7, 71, 2, 2, 11381, 11382, 7, 85, 2, 2, 11382, 1348, 3, 2, 2, 2, 11383, 11384, 7, 75, 2, 2, 11384, 11385, 7, 80, 2, 2, 11385, 11386, 7, 85, 2, 2, 11386, 11387, 7, 86, 2, 2, 11387, 11388, 7, 67, 2, 2, 11388, 11389, 7, 80, 2, 2, 11389, 11390, 7, 86, 2, 2, 11390, 11391, 7, 75, 2, 2, 11391, 11392, 7, 67, 2, 2, 11392, 11393, 7, 68, 2, 2, 11393, 11394, 7, 78, 2, 2, 11394, 11395, 7, 71, 2, 2, 11395, 1350, 3, 2, 2, 2, 11396, 11397, 7, 75, 2, 2, 11397, 11398, 7, 80, 2, 2, 11398, 11399, 7, 85, 2, 2, 11399, 11400, 7, 86, 2, 2, 11400, 11401, 7, 67, 2, 2, 11401, 11402, 7, 80, 2, 2, 11402, 11403, 7, 86, 2, 2, 11403, 11404, 7, 78, 2, 2, 11404, 11405, 7, 91, 2, 2, 11405, 1352, 3, 2, 2, 2, 11406, 11407, 7, 75, 2, 2, 11407, 11408, 7, 80, 2, 2, 11408, 11409, 7, 85, 2, 2, 11409, 11410, 7, 86, 2, 2, 11410, 11411, 7, 71, 2, 2, 11411, 11412, 7, 67, 2, 2, 11412, 11413, 7, 70, 2, 2, 11413, 1354, 3, 2, 2, 2, 11414, 11415, 7, 75, 2, 2, 11415, 11416, 7, 80, 2, 2, 11416, 11417, 7, 85, 2, 2, 11417, 11418, 7, 86, 2, 2, 11418, 11419, 7, 84, 2, 2, 11419, 11420, 7, 52, 2, 2, 11420, 1356, 3, 2, 2, 2, 11421, 11422, 7, 75, 2, 2, 11422, 11423, 7, 80, 2, 2, 11423, 11424, 7, 85, 2, 2, 11424, 11425, 7, 86, 2, 2, 11425, 11426, 7, 84, 2, 2, 11426, 11427, 7, 54, 2, 2, 11427, 1358, 3, 2, 2, 2, 11428, 11429, 7, 75, 2, 2, 11429, 11430, 7, 80, 2, 2, 11430, 11431, 7, 85, 2, 2, 11431, 11432, 7, 86, 2, 2, 11432, 11433, 7, 84, 2, 2, 11433, 11434, 7, 68, 2, 2, 11434, 1360, 3, 2, 2, 2, 11435, 11436, 7, 75, 2, 2, 11436, 11437, 7, 80, 2, 2, 11437, 11438, 7, 85, 2, 2, 11438, 11439, 7, 86, 2, 2, 11439, 11440, 7, 84, 2, 2, 11440, 11441, 7, 69, 2, 2, 11441, 1362, 3, 2, 2, 2, 11442, 11443, 7, 75, 2, 2, 11443, 11444, 7, 80, 2, 2, 11444, 11445, 7, 85, 2, 2, 11445, 11446, 7, 86, 2, 2, 11446, 11447, 7, 84, 2, 2, 11447, 1364, 3, 2, 2, 2, 11448, 11449, 7, 75, 2, 2, 11449, 11450, 7, 80, 2, 2, 11450, 11451, 7, 86, 2, 2, 11451, 11452, 7, 71, 2, 2, 11452, 11453, 7, 73, 2, 2, 11453, 11454, 7, 71, 2, 2, 11454, 11455, 7, 84, 2, 2, 11455, 1366, 3, 2, 2, 2, 11456, 11457, 7, 75, 2, 2, 11457, 11458, 7, 80, 2, 2, 11458, 11459, 7, 86, 2, 2, 11459, 11460, 7, 71, 2, 2, 11460, 11461, 7, 84, 2, 2, 11461, 11462, 7, 78, 2, 2, 11462, 11463, 7, 71, 2, 2, 11463, 11464, 7, 67, 2, 2, 11464, 11465, 7, 88, 2, 2, 11465, 11466, 7, 71, 2, 2, 11466, 11467, 7, 70, 2, 2, 11467, 1368, 3, 2, 2, 2, 11468, 11469, 7, 75, 2, 2, 11469, 11470, 7, 80, 2, 2, 11470, 11471, 7, 86, 2, 2, 11471, 11472, 7, 71, 2, 2, 11472, 11473, 7, 84, 2, 2, 11473, 11474, 7, 79, 2, 2, 11474, 11475, 7, 71, 2, 2, 11475, 11476, 7, 70, 2, 2, 11476, 11477, 7, 75, 2, 2, 11477, 11478, 7, 67, 2, 2, 11478, 11479, 7, 86, 2, 2, 11479, 11480, 7, 71, 2, 2, 11480, 1370, 3, 2, 2, 2, 11481, 11482, 7, 75, 2, 2, 11482, 11483, 7, 80, 2, 2, 11483, 11484, 7, 86, 2, 2, 11484, 11485, 7, 71, 2, 2, 11485, 11486, 7, 84, 2, 2, 11486, 11487, 7, 80, 2, 2, 11487, 11488, 7, 67, 2, 2, 11488, 11489, 7, 78, 2, 2, 11489, 11490, 7, 97, 2, 2, 11490, 11491, 7, 69, 2, 2, 11491, 11492, 7, 81, 2, 2, 11492, 11493, 7, 80, 2, 2, 11493, 11494, 7, 88, 2, 2, 11494, 11495, 7, 71, 2, 2, 11495, 11496, 7, 84, 2, 2, 11496, 11497, 7, 86, 2, 2, 11497, 1372, 3, 2, 2, 2, 11498, 11499, 7, 75, 2, 2, 11499, 11500, 7, 80, 2, 2, 11500, 11501, 7, 86, 2, 2, 11501, 11502, 7, 71, 2, 2, 11502, 11503, 7, 84, 2, 2, 11503, 11504, 7, 80, 2, 2, 11504, 11505, 7, 67, 2, 2, 11505, 11506, 7, 78, 2, 2, 11506, 11507, 7, 97, 2, 2, 11507, 11508, 7, 87, 2, 2, 11508, 11509, 7, 85, 2, 2, 11509, 11510, 7, 71, 2, 2, 11510, 1374, 3, 2, 2, 2, 11511, 11512, 7, 75, 2, 2, 11512, 11513, 7, 80, 2, 2, 11513, 11514, 7, 86, 2, 2, 11514, 11515, 7, 71, 2, 2, 11515, 11516, 7, 84, 2, 2, 11516, 11517, 7, 82, 2, 2, 11517, 11518, 7, 84, 2, 2, 11518, 11519, 7, 71, 2, 2, 11519, 11520, 7, 86, 2, 2, 11520, 11521, 7, 71, 2, 2, 11521, 11522, 7, 70, 2, 2, 11522, 1376, 3, 2, 2, 2, 11523, 11524, 7, 75, 2, 2, 11524, 11525, 7, 80, 2, 2, 11525, 11526, 7, 86, 2, 2, 11526, 11527, 7, 71, 2, 2, 11527, 11528, 7, 84, 2, 2, 11528, 11529, 7, 85, 2, 2, 11529, 11530, 7, 71, 2, 2, 11530, 11531, 7, 69, 2, 2, 11531, 11532, 7, 86, 2, 2, 11532, 1378, 3, 2, 2, 2, 11533, 11534, 7, 75, 2, 2, 11534, 11535, 7, 80, 2, 2, 11535, 11536, 7, 86, 2, 2, 11536, 11537, 7, 71, 2, 2, 11537, 11538, 7, 84, 2, 2, 11538, 11539, 7, 88, 2, 2, 11539, 11540, 7, 67, 2, 2, 11540, 11541, 7, 78, 2, 2, 11541, 1380, 3, 2, 2, 2, 11542, 11543, 7, 75, 2, 2, 11543, 11544, 7, 80, 2, 2, 11544, 11545, 7, 86, 2, 2, 11545, 1382, 3, 2, 2, 2, 11546, 11547, 7, 75, 2, 2, 11547, 11548, 7, 80, 2, 2, 11548, 11549, 7, 86, 2, 2, 11549, 11550, 7, 81, 2, 2, 11550, 1384, 3, 2, 2, 2, 11551, 11552, 7, 75, 2, 2, 11552, 11553, 7, 80, 2, 2, 11553, 11554, 7, 88, 2, 2, 11554, 11555, 7, 67, 2, 2, 11555, 11556, 7, 78, 2, 2, 11556, 11557, 7, 75, 2, 2, 11557, 11558, 7, 70, 2, 2, 11558, 11559, 7, 67, 2, 2, 11559, 11560, 7, 86, 2, 2, 11560, 11561, 7, 71, 2, 2, 11561, 1386, 3, 2, 2, 2, 11562, 11563, 7, 75, 2, 2, 11563, 11564, 7, 80, 2, 2, 11564, 11565, 7, 88, 2, 2, 11565, 11566, 7, 75, 2, 2, 11566, 11567, 7, 85, 2, 2, 11567, 11568, 7, 75, 2, 2, 11568, 11569, 7, 68, 2, 2, 11569, 11570, 7, 78, 2, 2, 11570, 11571, 7, 71, 2, 2, 11571, 1388, 3, 2, 2, 2, 11572, 11573, 7, 75, 2, 2, 11573, 11574, 7, 80, 2, 2, 11574, 11575, 7, 97, 2, 2, 11575, 11576, 7, 90, 2, 2, 11576, 11577, 7, 83, 2, 2, 11577, 11578, 7, 87, 2, 2, 11578, 11579, 7, 71, 2, 2, 11579, 11580, 7, 84, 2, 2, 11580, 11581, 7, 91, 2, 2, 11581, 1390, 3, 2, 2, 2, 11582, 11583, 7, 75, 2, 2, 11583, 11584, 7, 85, 2, 2, 11584, 1392, 3, 2, 2, 2, 11585, 11586, 7, 75, 2, 2, 11586, 11587, 7, 85, 2, 2, 11587, 11588, 7, 81, 2, 2, 11588, 11589, 7, 78, 2, 2, 11589, 11590, 7, 67, 2, 2, 11590, 11591, 7, 86, 2, 2, 11591, 11592, 7, 75, 2, 2, 11592, 11593, 7, 81, 2, 2, 11593, 11594, 7, 80, 2, 2, 11594, 1394, 3, 2, 2, 2, 11595, 11596, 7, 75, 2, 2, 11596, 11597, 7, 85, 2, 2, 11597, 11598, 7, 81, 2, 2, 11598, 11599, 7, 78, 2, 2, 11599, 11600, 7, 67, 2, 2, 11600, 11601, 7, 86, 2, 2, 11601, 11602, 7, 75, 2, 2, 11602, 11603, 7, 81, 2, 2, 11603, 11604, 7, 80, 2, 2, 11604, 11605, 7, 97, 2, 2, 11605, 11606, 7, 78, 2, 2, 11606, 11607, 7, 71, 2, 2, 11607, 11608, 7, 88, 2, 2, 11608, 11609, 7, 71, 2, 2, 11609, 11610, 7, 78, 2, 2, 11610, 1396, 3, 2, 2, 2, 11611, 11612, 7, 75, 2, 2, 11612, 11613, 7, 86, 2, 2, 11613, 11614, 7, 71, 2, 2, 11614, 11615, 7, 84, 2, 2, 11615, 11616, 7, 67, 2, 2, 11616, 11617, 7, 86, 2, 2, 11617, 11618, 7, 71, 2, 2, 11618, 1398, 3, 2, 2, 2, 11619, 11620, 7, 75, 2, 2, 11620, 11621, 7, 86, 2, 2, 11621, 11622, 7, 71, 2, 2, 11622, 11623, 7, 84, 2, 2, 11623, 11624, 7, 67, 2, 2, 11624, 11625, 7, 86, 2, 2, 11625, 11626, 7, 75, 2, 2, 11626, 11627, 7, 81, 2, 2, 11627, 11628, 7, 80, 2, 2, 11628, 11629, 7, 97, 2, 2, 11629, 11630, 7, 80, 2, 2, 11630, 11631, 7, 87, 2, 2, 11631, 11632, 7, 79, 2, 2, 11632, 11633, 7, 68, 2, 2, 11633, 11634, 7, 71, 2, 2, 11634, 11635, 7, 84, 2, 2, 11635, 1400, 3, 2, 2, 2, 11636, 11637, 7, 76, 2, 2, 11637, 11638, 7, 67, 2, 2, 11638, 11639, 7, 88, 2, 2, 11639, 11640, 7, 67, 2, 2, 11640, 1402, 3, 2, 2, 2, 11641, 11642, 7, 76, 2, 2, 11642, 11643, 7, 81, 2, 2, 11643, 11644, 7, 68, 2, 2, 11644, 1404, 3, 2, 2, 2, 11645, 11646, 7, 76, 2, 2, 11646, 11647, 7, 81, 2, 2, 11647, 11648, 7, 75, 2, 2, 11648, 11649, 7, 80, 2, 2, 11649, 1406, 3, 2, 2, 2, 11650, 11651, 7, 76, 2, 2, 11651, 11652, 7, 85, 2, 2, 11652, 11653, 7, 81, 2, 2, 11653, 11654, 7, 80, 2, 2, 11654, 11655, 7, 97, 2, 2, 11655, 11656, 7, 67, 2, 2, 11656, 11657, 7, 84, 2, 2, 11657, 11658, 7, 84, 2, 2, 11658, 11659, 7, 67, 2, 2, 11659, 11660, 7, 91, 2, 2, 11660, 11661, 7, 67, 2, 2, 11661, 11662, 7, 73, 2, 2, 11662, 11663, 7, 73, 2, 2, 11663, 1408, 3, 2, 2, 2, 11664, 11665, 7, 76, 2, 2, 11665, 11666, 7, 85, 2, 2, 11666, 11667, 7, 81, 2, 2, 11667, 11668, 7, 80, 2, 2, 11668, 11669, 7, 97, 2, 2, 11669, 11670, 7, 67, 2, 2, 11670, 11671, 7, 84, 2, 2, 11671, 11672, 7, 84, 2, 2, 11672, 11673, 7, 67, 2, 2, 11673, 11674, 7, 91, 2, 2, 11674, 1410, 3, 2, 2, 2, 11675, 11676, 7, 76, 2, 2, 11676, 11677, 7, 85, 2, 2, 11677, 11678, 7, 81, 2, 2, 11678, 11679, 7, 80, 2, 2, 11679, 11680, 7, 97, 2, 2, 11680, 11681, 7, 71, 2, 2, 11681, 11682, 7, 83, 2, 2, 11682, 11683, 7, 87, 2, 2, 11683, 11684, 7, 67, 2, 2, 11684, 11685, 7, 78, 2, 2, 11685, 1412, 3, 2, 2, 2, 11686, 11687, 7, 76, 2, 2, 11687, 11688, 7, 85, 2, 2, 11688, 11689, 7, 81, 2, 2, 11689, 11690, 7, 80, 2, 2, 11690, 11691, 7, 97, 2, 2, 11691, 11692, 7, 71, 2, 2, 11692, 11693, 7, 90, 2, 2, 11693, 11694, 7, 75, 2, 2, 11694, 11695, 7, 85, 2, 2, 11695, 11696, 7, 86, 2, 2, 11696, 11697, 7, 85, 2, 2, 11697, 11698, 7, 52, 2, 2, 11698, 1414, 3, 2, 2, 2, 11699, 11700, 7, 76, 2, 2, 11700, 11701, 7, 85, 2, 2, 11701, 11702, 7, 81, 2, 2, 11702, 11703, 7, 80, 2, 2, 11703, 11704, 7, 97, 2, 2, 11704, 11705, 7, 71, 2, 2, 11705, 11706, 7, 90, 2, 2, 11706, 11707, 7, 75, 2, 2, 11707, 11708, 7, 85, 2, 2, 11708, 11709, 7, 86, 2, 2, 11709, 11710, 7, 85, 2, 2, 11710, 1416, 3, 2, 2, 2, 11711, 11712, 7, 76, 2, 2, 11712, 11713, 7, 85, 2, 2, 11713, 11714, 7, 81, 2, 2, 11714, 11715, 7, 80, 2, 2, 11715, 11716, 7, 73, 2, 2, 11716, 11717, 7, 71, 2, 2, 11717, 11718, 7, 86, 2, 2, 11718, 1418, 3, 2, 2, 2, 11719, 11720, 7, 76, 2, 2, 11720, 11721, 7, 85, 2, 2, 11721, 11722, 7, 81, 2, 2, 11722, 11723, 7, 80, 2, 2, 11723, 1420, 3, 2, 2, 2, 11724, 11725, 7, 76, 2, 2, 11725, 11726, 7, 85, 2, 2, 11726, 11727, 7, 81, 2, 2, 11727, 11728, 7, 80, 2, 2, 11728, 11729, 7, 97, 2, 2, 11729, 11730, 7, 81, 2, 2, 11730, 11731, 7, 68, 2, 2, 11731, 11732, 7, 76, 2, 2, 11732, 11733, 7, 71, 2, 2, 11733, 11734, 7, 69, 2, 2, 11734, 11735, 7, 86, 2, 2, 11735, 11736, 7, 67, 2, 2, 11736, 11737, 7, 73, 2, 2, 11737, 11738, 7, 73, 2, 2, 11738, 1422, 3, 2, 2, 2, 11739, 11740, 7, 76, 2, 2, 11740, 11741, 7, 85, 2, 2, 11741, 11742, 7, 81, 2, 2, 11742, 11743, 7, 80, 2, 2, 11743, 11744, 7, 97, 2, 2, 11744, 11745, 7, 81, 2, 2, 11745, 11746, 7, 68, 2, 2, 11746, 11747, 7, 76, 2, 2, 11747, 11748, 7, 71, 2, 2, 11748, 11749, 7, 69, 2, 2, 11749, 11750, 7, 86, 2, 2, 11750, 1424, 3, 2, 2, 2, 11751, 11752, 7, 76, 2, 2, 11752, 11753, 7, 85, 2, 2, 11753, 11754, 7, 81, 2, 2, 11754, 11755, 7, 80, 2, 2, 11755, 11756, 7, 82, 2, 2, 11756, 11757, 7, 67, 2, 2, 11757, 11758, 7, 84, 2, 2, 11758, 11759, 7, 85, 2, 2, 11759, 11760, 7, 71, 2, 2, 11760, 1426, 3, 2, 2, 2, 11761, 11762, 7, 76, 2, 2, 11762, 11763, 7, 85, 2, 2, 11763, 11764, 7, 81, 2, 2, 11764, 11765, 7, 80, 2, 2, 11765, 11766, 7, 97, 2, 2, 11766, 11767, 7, 83, 2, 2, 11767, 11768, 7, 87, 2, 2, 11768, 11769, 7, 71, 2, 2, 11769, 11770, 7, 84, 2, 2, 11770, 11771, 7, 91, 2, 2, 11771, 1428, 3, 2, 2, 2, 11772, 11773, 7, 76, 2, 2, 11773, 11774, 7, 85, 2, 2, 11774, 11775, 7, 81, 2, 2, 11775, 11776, 7, 80, 2, 2, 11776, 11777, 7, 97, 2, 2, 11777, 11778, 7, 85, 2, 2, 11778, 11779, 7, 71, 2, 2, 11779, 11780, 7, 84, 2, 2, 11780, 11781, 7, 75, 2, 2, 11781, 11782, 7, 67, 2, 2, 11782, 11783, 7, 78, 2, 2, 11783, 11784, 7, 75, 2, 2, 11784, 11785, 7, 92, 2, 2, 11785, 11786, 7, 71, 2, 2, 11786, 1430, 3, 2, 2, 2, 11787, 11788, 7, 76, 2, 2, 11788, 11789, 7, 85, 2, 2, 11789, 11790, 7, 81, 2, 2, 11790, 11791, 7, 80, 2, 2, 11791, 11792, 7, 97, 2, 2, 11792, 11793, 7, 86, 2, 2, 11793, 11794, 7, 67, 2, 2, 11794, 11795, 7, 68, 2, 2, 11795, 11796, 7, 78, 2, 2, 11796, 11797, 7, 71, 2, 2, 11797, 1432, 3, 2, 2, 2, 11798, 11799, 7, 76, 2, 2, 11799, 11800, 7, 85, 2, 2, 11800, 11801, 7, 81, 2, 2, 11801, 11802, 7, 80, 2, 2, 11802, 11803, 7, 97, 2, 2, 11803, 11804, 7, 86, 2, 2, 11804, 11805, 7, 71, 2, 2, 11805, 11806, 7, 90, 2, 2, 11806, 11807, 7, 86, 2, 2, 11807, 11808, 7, 69, 2, 2, 11808, 11809, 7, 81, 2, 2, 11809, 11810, 7, 80, 2, 2, 11810, 11811, 7, 86, 2, 2, 11811, 11812, 7, 67, 2, 2, 11812, 11813, 7, 75, 2, 2, 11813, 11814, 7, 80, 2, 2, 11814, 11815, 7, 85, 2, 2, 11815, 11816, 7, 52, 2, 2, 11816, 1434, 3, 2, 2, 2, 11817, 11818, 7, 76, 2, 2, 11818, 11819, 7, 85, 2, 2, 11819, 11820, 7, 81, 2, 2, 11820, 11821, 7, 80, 2, 2, 11821, 11822, 7, 97, 2, 2, 11822, 11823, 7, 86, 2, 2, 11823, 11824, 7, 71, 2, 2, 11824, 11825, 7, 90, 2, 2, 11825, 11826, 7, 86, 2, 2, 11826, 11827, 7, 69, 2, 2, 11827, 11828, 7, 81, 2, 2, 11828, 11829, 7, 80, 2, 2, 11829, 11830, 7, 86, 2, 2, 11830, 11831, 7, 67, 2, 2, 11831, 11832, 7, 75, 2, 2, 11832, 11833, 7, 80, 2, 2, 11833, 11834, 7, 85, 2, 2, 11834, 1436, 3, 2, 2, 2, 11835, 11836, 7, 76, 2, 2, 11836, 11837, 7, 85, 2, 2, 11837, 11838, 7, 81, 2, 2, 11838, 11839, 7, 80, 2, 2, 11839, 11840, 7, 97, 2, 2, 11840, 11841, 7, 88, 2, 2, 11841, 11842, 7, 67, 2, 2, 11842, 11843, 7, 78, 2, 2, 11843, 11844, 7, 87, 2, 2, 11844, 11845, 7, 71, 2, 2, 11845, 1438, 3, 2, 2, 2, 11846, 11847, 7, 77, 2, 2, 11847, 11848, 7, 71, 2, 2, 11848, 11849, 7, 71, 2, 2, 11849, 11850, 7, 82, 2, 2, 11850, 11851, 7, 97, 2, 2, 11851, 11852, 7, 70, 2, 2, 11852, 11853, 7, 87, 2, 2, 11853, 11854, 7, 82, 2, 2, 11854, 11855, 7, 78, 2, 2, 11855, 11856, 7, 75, 2, 2, 11856, 11857, 7, 69, 2, 2, 11857, 11858, 7, 67, 2, 2, 11858, 11859, 7, 86, 2, 2, 11859, 11860, 7, 71, 2, 2, 11860, 11861, 7, 85, 2, 2, 11861, 1440, 3, 2, 2, 2, 11862, 11863, 7, 77, 2, 2, 11863, 11864, 7, 71, 2, 2, 11864, 11865, 7, 71, 2, 2, 11865, 11866, 7, 82, 2, 2, 11866, 1442, 3, 2, 2, 2, 11867, 11868, 7, 77, 2, 2, 11868, 11869, 7, 71, 2, 2, 11869, 11870, 7, 84, 2, 2, 11870, 11871, 7, 68, 2, 2, 11871, 11872, 7, 71, 2, 2, 11872, 11873, 7, 84, 2, 2, 11873, 11874, 7, 81, 2, 2, 11874, 11875, 7, 85, 2, 2, 11875, 1444, 3, 2, 2, 2, 11876, 11877, 7, 77, 2, 2, 11877, 11878, 7, 71, 2, 2, 11878, 11879, 7, 91, 2, 2, 11879, 1446, 3, 2, 2, 2, 11880, 11881, 7, 77, 2, 2, 11881, 11882, 7, 71, 2, 2, 11882, 11883, 7, 91, 2, 2, 11883, 11884, 7, 97, 2, 2, 11884, 11885, 7, 78, 2, 2, 11885, 11886, 7, 71, 2, 2, 11886, 11887, 7, 80, 2, 2, 11887, 11888, 7, 73, 2, 2, 11888, 11889, 7, 86, 2, 2, 11889, 11890, 7, 74, 2, 2, 11890, 1448, 3, 2, 2, 2, 11891, 11892, 7, 77, 2, 2, 11892, 11893, 7, 71, 2, 2, 11893, 11894, 7, 91, 2, 2, 11894, 11895, 7, 85, 2, 2, 11895, 11896, 7, 75, 2, 2, 11896, 11897, 7, 92, 2, 2, 11897, 11898, 7, 71, 2, 2, 11898, 1450, 3, 2, 2, 2, 11899, 11900, 7, 77, 2, 2, 11900, 11901, 7, 71, 2, 2, 11901, 11902, 7, 91, 2, 2, 11902, 11903, 7, 85, 2, 2, 11903, 1452, 3, 2, 2, 2, 11904, 11905, 7, 77, 2, 2, 11905, 11906, 7, 71, 2, 2, 11906, 11907, 7, 91, 2, 2, 11907, 11908, 7, 85, 2, 2, 11908, 11909, 7, 86, 2, 2, 11909, 11910, 7, 81, 2, 2, 11910, 11911, 7, 84, 2, 2, 11911, 11912, 7, 71, 2, 2, 11912, 1454, 3, 2, 2, 2, 11913, 11914, 7, 77, 2, 2, 11914, 11915, 7, 75, 2, 2, 11915, 11916, 7, 78, 2, 2, 11916, 11917, 7, 78, 2, 2, 11917, 1456, 3, 2, 2, 2, 11918, 11919, 7, 78, 2, 2, 11919, 11920, 7, 67, 2, 2, 11920, 11921, 7, 68, 2, 2, 11921, 11922, 7, 71, 2, 2, 11922, 11923, 7, 78, 2, 2, 11923, 1458, 3, 2, 2, 2, 11924, 11925, 7, 78, 2, 2, 11925, 11926, 7, 67, 2, 2, 11926, 11927, 7, 80, 2, 2, 11927, 11928, 7, 73, 2, 2, 11928, 11929, 7, 87, 2, 2, 11929, 11930, 7, 67, 2, 2, 11930, 11931, 7, 73, 2, 2, 11931, 11932, 7, 71, 2, 2, 11932, 1460, 3, 2, 2, 2, 11933, 11934, 7, 78, 2, 2, 11934, 11935, 7, 67, 2, 2, 11935, 11936, 7, 85, 2, 2, 11936, 11937, 7, 86, 2, 2, 11937, 11938, 7, 97, 2, 2, 11938, 11939, 7, 70, 2, 2, 11939, 11940, 7, 67, 2, 2, 11940, 11941, 7, 91, 2, 2, 11941, 1462, 3, 2, 2, 2, 11942, 11943, 7, 78, 2, 2, 11943, 11944, 7, 67, 2, 2, 11944, 11945, 7, 85, 2, 2, 11945, 11946, 7, 86, 2, 2, 11946, 1464, 3, 2, 2, 2, 11947, 11948, 7, 78, 2, 2, 11948, 11949, 7, 67, 2, 2, 11949, 11950, 7, 85, 2, 2, 11950, 11951, 7, 86, 2, 2, 11951, 11952, 7, 97, 2, 2, 11952, 11953, 7, 88, 2, 2, 11953, 11954, 7, 67, 2, 2, 11954, 11955, 7, 78, 2, 2, 11955, 11956, 7, 87, 2, 2, 11956, 11957, 7, 71, 2, 2, 11957, 1466, 3, 2, 2, 2, 11958, 11959, 7, 78, 2, 2, 11959, 11960, 7, 67, 2, 2, 11960, 11961, 7, 86, 2, 2, 11961, 11962, 7, 71, 2, 2, 11962, 11963, 7, 84, 2, 2, 11963, 11964, 7, 67, 2, 2, 11964, 11965, 7, 78, 2, 2, 11965, 1468, 3, 2, 2, 2, 11966, 11967, 7, 78, 2, 2, 11967, 11968, 7, 67, 2, 2, 11968, 11969, 7, 90, 2, 2, 11969, 1470, 3, 2, 2, 2, 11970, 11971, 7, 78, 2, 2, 11971, 11972, 7, 67, 2, 2, 11972, 11973, 7, 91, 2, 2, 11973, 11974, 7, 71, 2, 2, 11974, 11975, 7, 84, 2, 2, 11975, 1472, 3, 2, 2, 2, 11976, 11977, 7, 78, 2, 2, 11977, 11978, 7, 70, 2, 2, 11978, 11979, 7, 67, 2, 2, 11979, 11980, 7, 82, 2, 2, 11980, 11981, 7, 97, 2, 2, 11981, 11982, 7, 84, 2, 2, 11982, 11983, 7, 71, 2, 2, 11983, 11984, 7, 73, 2, 2, 11984, 11985, 7, 75, 2, 2, 11985, 11986, 7, 85, 2, 2, 11986, 11987, 7, 86, 2, 2, 11987, 11988, 7, 84, 2, 2, 11988, 11989, 7, 67, 2, 2, 11989, 11990, 7, 86, 2, 2, 11990, 11991, 7, 75, 2, 2, 11991, 11992, 7, 81, 2, 2, 11992, 11993, 7, 80, 2, 2, 11993, 11994, 7, 97, 2, 2, 11994, 11995, 7, 71, 2, 2, 11995, 11996, 7, 80, 2, 2, 11996, 11997, 7, 67, 2, 2, 11997, 11998, 7, 68, 2, 2, 11998, 11999, 7, 78, 2, 2, 11999, 12000, 7, 71, 2, 2, 12000, 12001, 7, 70, 2, 2, 12001, 1474, 3, 2, 2, 2, 12002, 12003, 7, 78, 2, 2, 12003, 12004, 7, 70, 2, 2, 12004, 12005, 7, 67, 2, 2, 12005, 12006, 7, 82, 2, 2, 12006, 12007, 7, 97, 2, 2, 12007, 12008, 7, 84, 2, 2, 12008, 12009, 7, 71, 2, 2, 12009, 12010, 7, 73, 2, 2, 12010, 12011, 7, 75, 2, 2, 12011, 12012, 7, 85, 2, 2, 12012, 12013, 7, 86, 2, 2, 12013, 12014, 7, 84, 2, 2, 12014, 12015, 7, 67, 2, 2, 12015, 12016, 7, 86, 2, 2, 12016, 12017, 7, 75, 2, 2, 12017, 12018, 7, 81, 2, 2, 12018, 12019, 7, 80, 2, 2, 12019, 1476, 3, 2, 2, 2, 12020, 12021, 7, 78, 2, 2, 12021, 12022, 7, 70, 2, 2, 12022, 12023, 7, 67, 2, 2, 12023, 12024, 7, 82, 2, 2, 12024, 12025, 7, 97, 2, 2, 12025, 12026, 7, 84, 2, 2, 12026, 12027, 7, 71, 2, 2, 12027, 12028, 7, 73, 2, 2, 12028, 12029, 7, 97, 2, 2, 12029, 12030, 7, 85, 2, 2, 12030, 12031, 7, 91, 2, 2, 12031, 12032, 7, 80, 2, 2, 12032, 12033, 7, 69, 2, 2, 12033, 12034, 7, 97, 2, 2, 12034, 12035, 7, 75, 2, 2, 12035, 12036, 7, 80, 2, 2, 12036, 12037, 7, 86, 2, 2, 12037, 12038, 7, 71, 2, 2, 12038, 12039, 7, 84, 2, 2, 12039, 12040, 7, 88, 2, 2, 12040, 12041, 7, 67, 2, 2, 12041, 12042, 7, 78, 2, 2, 12042, 1478, 3, 2, 2, 2, 12043, 12044, 7, 78, 2, 2, 12044, 12045, 7, 71, 2, 2, 12045, 12046, 7, 67, 2, 2, 12046, 12047, 7, 70, 2, 2, 12047, 12048, 7, 75, 2, 2, 12048, 12049, 7, 80, 2, 2, 12049, 12050, 7, 73, 2, 2, 12050, 1480, 3, 2, 2, 2, 12051, 12052, 7, 78, 2, 2, 12052, 12053, 7, 71, 2, 2, 12053, 12054, 7, 72, 2, 2, 12054, 12055, 7, 86, 2, 2, 12055, 1482, 3, 2, 2, 2, 12056, 12057, 7, 78, 2, 2, 12057, 12058, 7, 71, 2, 2, 12058, 12059, 7, 80, 2, 2, 12059, 12060, 7, 73, 2, 2, 12060, 12061, 7, 86, 2, 2, 12061, 12062, 7, 74, 2, 2, 12062, 12063, 7, 52, 2, 2, 12063, 1484, 3, 2, 2, 2, 12064, 12065, 7, 78, 2, 2, 12065, 12066, 7, 71, 2, 2, 12066, 12067, 7, 80, 2, 2, 12067, 12068, 7, 73, 2, 2, 12068, 12069, 7, 86, 2, 2, 12069, 12070, 7, 74, 2, 2, 12070, 12071, 7, 54, 2, 2, 12071, 1486, 3, 2, 2, 2, 12072, 12073, 7, 78, 2, 2, 12073, 12074, 7, 71, 2, 2, 12074, 12075, 7, 80, 2, 2, 12075, 12076, 7, 73, 2, 2, 12076, 12077, 7, 86, 2, 2, 12077, 12078, 7, 74, 2, 2, 12078, 12079, 7, 68, 2, 2, 12079, 1488, 3, 2, 2, 2, 12080, 12081, 7, 78, 2, 2, 12081, 12082, 7, 71, 2, 2, 12082, 12083, 7, 80, 2, 2, 12083, 12084, 7, 73, 2, 2, 12084, 12085, 7, 86, 2, 2, 12085, 12086, 7, 74, 2, 2, 12086, 12087, 7, 69, 2, 2, 12087, 1490, 3, 2, 2, 2, 12088, 12089, 7, 78, 2, 2, 12089, 12090, 7, 71, 2, 2, 12090, 12091, 7, 80, 2, 2, 12091, 12092, 7, 73, 2, 2, 12092, 12093, 7, 86, 2, 2, 12093, 12094, 7, 74, 2, 2, 12094, 1492, 3, 2, 2, 2, 12095, 12096, 7, 78, 2, 2, 12096, 12097, 7, 71, 2, 2, 12097, 12098, 7, 85, 2, 2, 12098, 12099, 7, 85, 2, 2, 12099, 1494, 3, 2, 2, 2, 12100, 12101, 7, 78, 2, 2, 12101, 12102, 7, 71, 2, 2, 12102, 12103, 7, 88, 2, 2, 12103, 12104, 7, 71, 2, 2, 12104, 12105, 7, 78, 2, 2, 12105, 1496, 3, 2, 2, 2, 12106, 12107, 7, 78, 2, 2, 12107, 12108, 7, 71, 2, 2, 12108, 12109, 7, 88, 2, 2, 12109, 12110, 7, 71, 2, 2, 12110, 12111, 7, 78, 2, 2, 12111, 12112, 7, 85, 2, 2, 12112, 1498, 3, 2, 2, 2, 12113, 12114, 7, 78, 2, 2, 12114, 12115, 7, 75, 2, 2, 12115, 12116, 7, 68, 2, 2, 12116, 12117, 7, 84, 2, 2, 12117, 12118, 7, 67, 2, 2, 12118, 12119, 7, 84, 2, 2, 12119, 12120, 7, 91, 2, 2, 12120, 1500, 3, 2, 2, 2, 12121, 12122, 7, 78, 2, 2, 12122, 12123, 7, 75, 2, 2, 12123, 12124, 7, 72, 2, 2, 12124, 12125, 7, 71, 2, 2, 12125, 12126, 7, 69, 2, 2, 12126, 12127, 7, 91, 2, 2, 12127, 12128, 7, 69, 2, 2, 12128, 12129, 7, 78, 2, 2, 12129, 12130, 7, 71, 2, 2, 12130, 1502, 3, 2, 2, 2, 12131, 12132, 7, 78, 2, 2, 12132, 12133, 7, 75, 2, 2, 12133, 12134, 7, 72, 2, 2, 12134, 12135, 7, 71, 2, 2, 12135, 1504, 3, 2, 2, 2, 12136, 12137, 7, 78, 2, 2, 12137, 12138, 7, 75, 2, 2, 12138, 12139, 7, 72, 2, 2, 12139, 12140, 7, 71, 2, 2, 12140, 12141, 7, 86, 2, 2, 12141, 12142, 7, 75, 2, 2, 12142, 12143, 7, 79, 2, 2, 12143, 12144, 7, 71, 2, 2, 12144, 1506, 3, 2, 2, 2, 12145, 12146, 7, 78, 2, 2, 12146, 12147, 7, 75, 2, 2, 12147, 12148, 7, 77, 2, 2, 12148, 12149, 7, 71, 2, 2, 12149, 12150, 7, 52, 2, 2, 12150, 1508, 3, 2, 2, 2, 12151, 12152, 7, 78, 2, 2, 12152, 12153, 7, 75, 2, 2, 12153, 12154, 7, 77, 2, 2, 12154, 12155, 7, 71, 2, 2, 12155, 12156, 7, 54, 2, 2, 12156, 1510, 3, 2, 2, 2, 12157, 12158, 7, 78, 2, 2, 12158, 12159, 7, 75, 2, 2, 12159, 12160, 7, 77, 2, 2, 12160, 12161, 7, 71, 2, 2, 12161, 12162, 7, 69, 2, 2, 12162, 1512, 3, 2, 2, 2, 12163, 12164, 7, 78, 2, 2, 12164, 12165, 7, 75, 2, 2, 12165, 12166, 7, 77, 2, 2, 12166, 12167, 7, 71, 2, 2, 12167, 12168, 7, 97, 2, 2, 12168, 12169, 7, 71, 2, 2, 12169, 12170, 7, 90, 2, 2, 12170, 12171, 7, 82, 2, 2, 12171, 12172, 7, 67, 2, 2, 12172, 12173, 7, 80, 2, 2, 12173, 12174, 7, 70, 2, 2, 12174, 1514, 3, 2, 2, 2, 12175, 12176, 7, 78, 2, 2, 12176, 12177, 7, 75, 2, 2, 12177, 12178, 7, 77, 2, 2, 12178, 12179, 7, 71, 2, 2, 12179, 1516, 3, 2, 2, 2, 12180, 12181, 7, 78, 2, 2, 12181, 12182, 7, 75, 2, 2, 12182, 12183, 7, 79, 2, 2, 12183, 12184, 7, 75, 2, 2, 12184, 12185, 7, 86, 2, 2, 12185, 1518, 3, 2, 2, 2, 12186, 12187, 7, 78, 2, 2, 12187, 12188, 7, 75, 2, 2, 12188, 12189, 7, 80, 2, 2, 12189, 12190, 7, 71, 2, 2, 12190, 12191, 7, 67, 2, 2, 12191, 12192, 7, 84, 2, 2, 12192, 1520, 3, 2, 2, 2, 12193, 12194, 7, 78, 2, 2, 12194, 12195, 7, 75, 2, 2, 12195, 12196, 7, 80, 2, 2, 12196, 12197, 7, 77, 2, 2, 12197, 1522, 3, 2, 2, 2, 12198, 12199, 7, 78, 2, 2, 12199, 12200, 7, 75, 2, 2, 12200, 12201, 7, 85, 2, 2, 12201, 12202, 7, 86, 2, 2, 12202, 1524, 3, 2, 2, 2, 12203, 12204, 7, 78, 2, 2, 12204, 12205, 7, 80, 2, 2, 12205, 1526, 3, 2, 2, 2, 12206, 12207, 7, 78, 2, 2, 12207, 12208, 7, 80, 2, 2, 12208, 12209, 7, 80, 2, 2, 12209, 12210, 7, 88, 2, 2, 12210, 12211, 7, 78, 2, 2, 12211, 1528, 3, 2, 2, 2, 12212, 12213, 7, 78, 2, 2, 12213, 12214, 7, 81, 2, 2, 12214, 12215, 7, 67, 2, 2, 12215, 12216, 7, 70, 2, 2, 12216, 1530, 3, 2, 2, 2, 12217, 12218, 7, 78, 2, 2, 12218, 12219, 7, 81, 2, 2, 12219, 12220, 7, 68, 2, 2, 12220, 1532, 3, 2, 2, 2, 12221, 12222, 7, 78, 2, 2, 12222, 12223, 7, 81, 2, 2, 12223, 12224, 7, 68, 2, 2, 12224, 12225, 7, 80, 2, 2, 12225, 12226, 7, 88, 2, 2, 12226, 12227, 7, 78, 2, 2, 12227, 1534, 3, 2, 2, 2, 12228, 12229, 7, 78, 2, 2, 12229, 12230, 7, 81, 2, 2, 12230, 12231, 7, 68, 2, 2, 12231, 12232, 7, 85, 2, 2, 12232, 1536, 3, 2, 2, 2, 12233, 12234, 7, 78, 2, 2, 12234, 12235, 7, 81, 2, 2, 12235, 12236, 7, 69, 2, 2, 12236, 12237, 7, 67, 2, 2, 12237, 12238, 7, 78, 2, 2, 12238, 12239, 7, 97, 2, 2, 12239, 12240, 7, 75, 2, 2, 12240, 12241, 7, 80, 2, 2, 12241, 12242, 7, 70, 2, 2, 12242, 12243, 7, 71, 2, 2, 12243, 12244, 7, 90, 2, 2, 12244, 12245, 7, 71, 2, 2, 12245, 12246, 7, 85, 2, 2, 12246, 1538, 3, 2, 2, 2, 12247, 12248, 7, 78, 2, 2, 12248, 12249, 7, 81, 2, 2, 12249, 12250, 7, 69, 2, 2, 12250, 12251, 7, 67, 2, 2, 12251, 12252, 7, 78, 2, 2, 12252, 1540, 3, 2, 2, 2, 12253, 12254, 7, 78, 2, 2, 12254, 12255, 7, 81, 2, 2, 12255, 12256, 7, 69, 2, 2, 12256, 12257, 7, 67, 2, 2, 12257, 12258, 7, 78, 2, 2, 12258, 12259, 7, 86, 2, 2, 12259, 12260, 7, 75, 2, 2, 12260, 12261, 7, 79, 2, 2, 12261, 12262, 7, 71, 2, 2, 12262, 1542, 3, 2, 2, 2, 12263, 12264, 7, 78, 2, 2, 12264, 12265, 7, 81, 2, 2, 12265, 12266, 7, 69, 2, 2, 12266, 12267, 7, 67, 2, 2, 12267, 12268, 7, 78, 2, 2, 12268, 12269, 7, 86, 2, 2, 12269, 12270, 7, 75, 2, 2, 12270, 12271, 7, 79, 2, 2, 12271, 12272, 7, 71, 2, 2, 12272, 12273, 7, 85, 2, 2, 12273, 12274, 7, 86, 2, 2, 12274, 12275, 7, 67, 2, 2, 12275, 12276, 7, 79, 2, 2, 12276, 12277, 7, 82, 2, 2, 12277, 1544, 3, 2, 2, 2, 12278, 12279, 7, 78, 2, 2, 12279, 12280, 7, 81, 2, 2, 12280, 12281, 7, 69, 2, 2, 12281, 12282, 7, 67, 2, 2, 12282, 12283, 7, 86, 2, 2, 12283, 12284, 7, 75, 2, 2, 12284, 12285, 7, 81, 2, 2, 12285, 12286, 7, 80, 2, 2, 12286, 1546, 3, 2, 2, 2, 12287, 12288, 7, 78, 2, 2, 12288, 12289, 7, 81, 2, 2, 12289, 12290, 7, 69, 2, 2, 12290, 12291, 7, 67, 2, 2, 12291, 12292, 7, 86, 2, 2, 12292, 12293, 7, 81, 2, 2, 12293, 12294, 7, 84, 2, 2, 12294, 1548, 3, 2, 2, 2, 12295, 12296, 7, 78, 2, 2, 12296, 12297, 7, 81, 2, 2, 12297, 12298, 7, 69, 2, 2, 12298, 12299, 7, 77, 2, 2, 12299, 12300, 7, 71, 2, 2, 12300, 12301, 7, 70, 2, 2, 12301, 1550, 3, 2, 2, 2, 12302, 12303, 7, 78, 2, 2, 12303, 12304, 7, 81, 2, 2, 12304, 12305, 7, 69, 2, 2, 12305, 12306, 7, 77, 2, 2, 12306, 12307, 7, 75, 2, 2, 12307, 12308, 7, 80, 2, 2, 12308, 12309, 7, 73, 2, 2, 12309, 1552, 3, 2, 2, 2, 12310, 12311, 7, 78, 2, 2, 12311, 12312, 7, 81, 2, 2, 12312, 12313, 7, 69, 2, 2, 12313, 12314, 7, 77, 2, 2, 12314, 1554, 3, 2, 2, 2, 12315, 12316, 7, 78, 2, 2, 12316, 12317, 7, 81, 2, 2, 12317, 12318, 7, 73, 2, 2, 12318, 12319, 7, 72, 2, 2, 12319, 12320, 7, 75, 2, 2, 12320, 12321, 7, 78, 2, 2, 12321, 12322, 7, 71, 2, 2, 12322, 1556, 3, 2, 2, 2, 12323, 12324, 7, 78, 2, 2, 12324, 12325, 7, 81, 2, 2, 12325, 12326, 7, 73, 2, 2, 12326, 12327, 7, 72, 2, 2, 12327, 12328, 7, 75, 2, 2, 12328, 12329, 7, 78, 2, 2, 12329, 12330, 7, 71, 2, 2, 12330, 12331, 7, 85, 2, 2, 12331, 1558, 3, 2, 2, 2, 12332, 12333, 7, 78, 2, 2, 12333, 12334, 7, 81, 2, 2, 12334, 12335, 7, 73, 2, 2, 12335, 12336, 7, 73, 2, 2, 12336, 12337, 7, 75, 2, 2, 12337, 12338, 7, 80, 2, 2, 12338, 12339, 7, 73, 2, 2, 12339, 1560, 3, 2, 2, 2, 12340, 12341, 7, 78, 2, 2, 12341, 12342, 7, 81, 2, 2, 12342, 12343, 7, 73, 2, 2, 12343, 12344, 7, 75, 2, 2, 12344, 12345, 7, 69, 2, 2, 12345, 12346, 7, 67, 2, 2, 12346, 12347, 7, 78, 2, 2, 12347, 1562, 3, 2, 2, 2, 12348, 12349, 7, 78, 2, 2, 12349, 12350, 7, 81, 2, 2, 12350, 12351, 7, 73, 2, 2, 12351, 12352, 7, 75, 2, 2, 12352, 12353, 7, 69, 2, 2, 12353, 12354, 7, 67, 2, 2, 12354, 12355, 7, 78, 2, 2, 12355, 12356, 7, 97, 2, 2, 12356, 12357, 7, 84, 2, 2, 12357, 12358, 7, 71, 2, 2, 12358, 12359, 7, 67, 2, 2, 12359, 12360, 7, 70, 2, 2, 12360, 12361, 7, 85, 2, 2, 12361, 12362, 7, 97, 2, 2, 12362, 12363, 7, 82, 2, 2, 12363, 12364, 7, 71, 2, 2, 12364, 12365, 7, 84, 2, 2, 12365, 12366, 7, 97, 2, 2, 12366, 12367, 7, 69, 2, 2, 12367, 12368, 7, 67, 2, 2, 12368, 12369, 7, 78, 2, 2, 12369, 12370, 7, 78, 2, 2, 12370, 1564, 3, 2, 2, 2, 12371, 12372, 7, 78, 2, 2, 12372, 12373, 7, 81, 2, 2, 12373, 12374, 7, 73, 2, 2, 12374, 12375, 7, 75, 2, 2, 12375, 12376, 7, 69, 2, 2, 12376, 12377, 7, 67, 2, 2, 12377, 12378, 7, 78, 2, 2, 12378, 12379, 7, 97, 2, 2, 12379, 12380, 7, 84, 2, 2, 12380, 12381, 7, 71, 2, 2, 12381, 12382, 7, 67, 2, 2, 12382, 12383, 7, 70, 2, 2, 12383, 12384, 7, 85, 2, 2, 12384, 12385, 7, 97, 2, 2, 12385, 12386, 7, 82, 2, 2, 12386, 12387, 7, 71, 2, 2, 12387, 12388, 7, 84, 2, 2, 12388, 12389, 7, 97, 2, 2, 12389, 12390, 7, 85, 2, 2, 12390, 12391, 7, 71, 2, 2, 12391, 12392, 7, 85, 2, 2, 12392, 12393, 7, 85, 2, 2, 12393, 12394, 7, 75, 2, 2, 12394, 12395, 7, 81, 2, 2, 12395, 12396, 7, 80, 2, 2, 12396, 1566, 3, 2, 2, 2, 12397, 12398, 7, 78, 2, 2, 12398, 12399, 7, 81, 2, 2, 12399, 12400, 7, 73, 2, 2, 12400, 1568, 3, 2, 2, 2, 12401, 12402, 7, 78, 2, 2, 12402, 12403, 7, 81, 2, 2, 12403, 12404, 7, 73, 2, 2, 12404, 12405, 7, 79, 2, 2, 12405, 12406, 7, 75, 2, 2, 12406, 12407, 7, 80, 2, 2, 12407, 12408, 7, 75, 2, 2, 12408, 12409, 7, 80, 2, 2, 12409, 12410, 7, 73, 2, 2, 12410, 1570, 3, 2, 2, 2, 12411, 12412, 7, 78, 2, 2, 12412, 12413, 7, 81, 2, 2, 12413, 12414, 7, 73, 2, 2, 12414, 12415, 7, 81, 2, 2, 12415, 12416, 7, 72, 2, 2, 12416, 12417, 7, 72, 2, 2, 12417, 1572, 3, 2, 2, 2, 12418, 12419, 7, 78, 2, 2, 12419, 12420, 7, 81, 2, 2, 12420, 12421, 7, 73, 2, 2, 12421, 12422, 7, 81, 2, 2, 12422, 12423, 7, 80, 2, 2, 12423, 1574, 3, 2, 2, 2, 12424, 12425, 7, 78, 2, 2, 12425, 12426, 7, 81, 2, 2, 12426, 12427, 7, 73, 2, 2, 12427, 12428, 7, 97, 2, 2, 12428, 12429, 7, 84, 2, 2, 12429, 12430, 7, 71, 2, 2, 12430, 12431, 7, 67, 2, 2, 12431, 12432, 7, 70, 2, 2, 12432, 12433, 7, 97, 2, 2, 12433, 12434, 7, 81, 2, 2, 12434, 12435, 7, 80, 2, 2, 12435, 12436, 7, 78, 2, 2, 12436, 12437, 7, 91, 2, 2, 12437, 12438, 7, 97, 2, 2, 12438, 12439, 7, 88, 2, 2, 12439, 12440, 7, 75, 2, 2, 12440, 12441, 7, 81, 2, 2, 12441, 12442, 7, 78, 2, 2, 12442, 12443, 7, 67, 2, 2, 12443, 12444, 7, 86, 2, 2, 12444, 12445, 7, 75, 2, 2, 12445, 12446, 7, 81, 2, 2, 12446, 12447, 7, 80, 2, 2, 12447, 12448, 7, 85, 2, 2, 12448, 1576, 3, 2, 2, 2, 12449, 12450, 7, 78, 2, 2, 12450, 12451, 7, 81, 2, 2, 12451, 12452, 7, 80, 2, 2, 12452, 12453, 7, 73, 2, 2, 12453, 1578, 3, 2, 2, 2, 12454, 12455, 7, 78, 2, 2, 12455, 12456, 7, 81, 2, 2, 12456, 12457, 7, 81, 2, 2, 12457, 12458, 7, 82, 2, 2, 12458, 1580, 3, 2, 2, 2, 12459, 12460, 7, 78, 2, 2, 12460, 12461, 7, 81, 2, 2, 12461, 12462, 7, 89, 2, 2, 12462, 12463, 7, 71, 2, 2, 12463, 12464, 7, 84, 2, 2, 12464, 1582, 3, 2, 2, 2, 12465, 12466, 7, 78, 2, 2, 12466, 12467, 7, 81, 2, 2, 12467, 12468, 7, 89, 2, 2, 12468, 1584, 3, 2, 2, 2, 12469, 12470, 7, 78, 2, 2, 12470, 12471, 7, 82, 2, 2, 12471, 12472, 7, 67, 2, 2, 12472, 12473, 7, 70, 2, 2, 12473, 1586, 3, 2, 2, 2, 12474, 12475, 7, 78, 2, 2, 12475, 12476, 7, 86, 2, 2, 12476, 12477, 7, 84, 2, 2, 12477, 12478, 7, 75, 2, 2, 12478, 12479, 7, 79, 2, 2, 12479, 1588, 3, 2, 2, 2, 12480, 12481, 7, 79, 2, 2, 12481, 12482, 7, 67, 2, 2, 12482, 12483, 7, 75, 2, 2, 12483, 12484, 7, 80, 2, 2, 12484, 1590, 3, 2, 2, 2, 12485, 12486, 7, 79, 2, 2, 12486, 12487, 7, 67, 2, 2, 12487, 12488, 7, 77, 2, 2, 12488, 12489, 7, 71, 2, 2, 12489, 12490, 7, 97, 2, 2, 12490, 12491, 7, 84, 2, 2, 12491, 12492, 7, 71, 2, 2, 12492, 12493, 7, 72, 2, 2, 12493, 1592, 3, 2, 2, 2, 12494, 12495, 7, 79, 2, 2, 12495, 12496, 7, 67, 2, 2, 12496, 12497, 7, 80, 2, 2, 12497, 12498, 7, 67, 2, 2, 12498, 12499, 7, 73, 2, 2, 12499, 12500, 7, 71, 2, 2, 12500, 12501, 7, 70, 2, 2, 12501, 1594, 3, 2, 2, 2, 12502, 12503, 7, 79, 2, 2, 12503, 12504, 7, 67, 2, 2, 12504, 12505, 7, 80, 2, 2, 12505, 12506, 7, 67, 2, 2, 12506, 12507, 7, 73, 2, 2, 12507, 12508, 7, 71, 2, 2, 12508, 1596, 3, 2, 2, 2, 12509, 12510, 7, 79, 2, 2, 12510, 12511, 7, 67, 2, 2, 12511, 12512, 7, 80, 2, 2, 12512, 12513, 7, 67, 2, 2, 12513, 12514, 7, 73, 2, 2, 12514, 12515, 7, 71, 2, 2, 12515, 12516, 7, 79, 2, 2, 12516, 12517, 7, 71, 2, 2, 12517, 12518, 7, 80, 2, 2, 12518, 12519, 7, 86, 2, 2, 12519, 1598, 3, 2, 2, 2, 12520, 12521, 7, 79, 2, 2, 12521, 12522, 7, 67, 2, 2, 12522, 12523, 7, 80, 2, 2, 12523, 12524, 7, 67, 2, 2, 12524, 12525, 7, 73, 2, 2, 12525, 12526, 7, 71, 2, 2, 12526, 12527, 7, 84, 2, 2, 12527, 1600, 3, 2, 2, 2, 12528, 12529, 7, 79, 2, 2, 12529, 12530, 7, 67, 2, 2, 12530, 12531, 7, 80, 2, 2, 12531, 12532, 7, 87, 2, 2, 12532, 12533, 7, 67, 2, 2, 12533, 12534, 7, 78, 2, 2, 12534, 1602, 3, 2, 2, 2, 12535, 12536, 7, 79, 2, 2, 12536, 12537, 7, 67, 2, 2, 12537, 12538, 7, 82, 2, 2, 12538, 1604, 3, 2, 2, 2, 12539, 12540, 7, 79, 2, 2, 12540, 12541, 7, 67, 2, 2, 12541, 12542, 7, 82, 2, 2, 12542, 12543, 7, 82, 2, 2, 12543, 12544, 7, 75, 2, 2, 12544, 12545, 7, 80, 2, 2, 12545, 12546, 7, 73, 2, 2, 12546, 1606, 3, 2, 2, 2, 12547, 12548, 7, 79, 2, 2, 12548, 12549, 7, 67, 2, 2, 12549, 12550, 7, 85, 2, 2, 12550, 12551, 7, 86, 2, 2, 12551, 12552, 7, 71, 2, 2, 12552, 12553, 7, 84, 2, 2, 12553, 1608, 3, 2, 2, 2, 12554, 12555, 7, 79, 2, 2, 12555, 12556, 7, 67, 2, 2, 12556, 12557, 7, 86, 2, 2, 12557, 12558, 7, 69, 2, 2, 12558, 12559, 7, 74, 2, 2, 12559, 12560, 7, 71, 2, 2, 12560, 12561, 7, 70, 2, 2, 12561, 1610, 3, 2, 2, 2, 12562, 12563, 7, 79, 2, 2, 12563, 12564, 7, 67, 2, 2, 12564, 12565, 7, 86, 2, 2, 12565, 12566, 7, 69, 2, 2, 12566, 12567, 7, 74, 2, 2, 12567, 12568, 7, 71, 2, 2, 12568, 12569, 7, 85, 2, 2, 12569, 1612, 3, 2, 2, 2, 12570, 12571, 7, 79, 2, 2, 12571, 12572, 7, 67, 2, 2, 12572, 12573, 7, 86, 2, 2, 12573, 12574, 7, 69, 2, 2, 12574, 12575, 7, 74, 2, 2, 12575, 1614, 3, 2, 2, 2, 12576, 12577, 7, 79, 2, 2, 12577, 12578, 7, 67, 2, 2, 12578, 12579, 7, 86, 2, 2, 12579, 12580, 7, 69, 2, 2, 12580, 12581, 7, 74, 2, 2, 12581, 12582, 7, 97, 2, 2, 12582, 12583, 7, 80, 2, 2, 12583, 12584, 7, 87, 2, 2, 12584, 12585, 7, 79, 2, 2, 12585, 12586, 7, 68, 2, 2, 12586, 12587, 7, 71, 2, 2, 12587, 12588, 7, 84, 2, 2, 12588, 1616, 3, 2, 2, 2, 12589, 12590, 7, 79, 2, 2, 12590, 12591, 7, 67, 2, 2, 12591, 12592, 7, 86, 2, 2, 12592, 12593, 7, 69, 2, 2, 12593, 12594, 7, 74, 2, 2, 12594, 12595, 7, 97, 2, 2, 12595, 12596, 7, 84, 2, 2, 12596, 12597, 7, 71, 2, 2, 12597, 12598, 7, 69, 2, 2, 12598, 12599, 7, 81, 2, 2, 12599, 12600, 7, 73, 2, 2, 12600, 12601, 7, 80, 2, 2, 12601, 12602, 7, 75, 2, 2, 12602, 12603, 7, 92, 2, 2, 12603, 12604, 7, 71, 2, 2, 12604, 1618, 3, 2, 2, 2, 12605, 12606, 7, 79, 2, 2, 12606, 12607, 7, 67, 2, 2, 12607, 12608, 7, 86, 2, 2, 12608, 12609, 7, 71, 2, 2, 12609, 12610, 7, 84, 2, 2, 12610, 12611, 7, 75, 2, 2, 12611, 12612, 7, 67, 2, 2, 12612, 12613, 7, 78, 2, 2, 12613, 12614, 7, 75, 2, 2, 12614, 12615, 7, 92, 2, 2, 12615, 12616, 7, 71, 2, 2, 12616, 12617, 7, 70, 2, 2, 12617, 1620, 3, 2, 2, 2, 12618, 12619, 7, 79, 2, 2, 12619, 12620, 7, 67, 2, 2, 12620, 12621, 7, 86, 2, 2, 12621, 12622, 7, 71, 2, 2, 12622, 12623, 7, 84, 2, 2, 12623, 12624, 7, 75, 2, 2, 12624, 12625, 7, 67, 2, 2, 12625, 12626, 7, 78, 2, 2, 12626, 12627, 7, 75, 2, 2, 12627, 12628, 7, 92, 2, 2, 12628, 12629, 7, 71, 2, 2, 12629, 1622, 3, 2, 2, 2, 12630, 12631, 7, 79, 2, 2, 12631, 12632, 7, 67, 2, 2, 12632, 12633, 7, 90, 2, 2, 12633, 12634, 7, 67, 2, 2, 12634, 12635, 7, 84, 2, 2, 12635, 12636, 7, 69, 2, 2, 12636, 12637, 7, 74, 2, 2, 12637, 12638, 7, 78, 2, 2, 12638, 12639, 7, 81, 2, 2, 12639, 12640, 7, 73, 2, 2, 12640, 12641, 7, 85, 2, 2, 12641, 1624, 3, 2, 2, 2, 12642, 12643, 7, 79, 2, 2, 12643, 12644, 7, 67, 2, 2, 12644, 12645, 7, 90, 2, 2, 12645, 12646, 7, 70, 2, 2, 12646, 12647, 7, 67, 2, 2, 12647, 12648, 7, 86, 2, 2, 12648, 12649, 7, 67, 2, 2, 12649, 12650, 7, 72, 2, 2, 12650, 12651, 7, 75, 2, 2, 12651, 12652, 7, 78, 2, 2, 12652, 12653, 7, 71, 2, 2, 12653, 12654, 7, 85, 2, 2, 12654, 1626, 3, 2, 2, 2, 12655, 12656, 7, 79, 2, 2, 12656, 12657, 7, 67, 2, 2, 12657, 12658, 7, 90, 2, 2, 12658, 12659, 7, 71, 2, 2, 12659, 12660, 7, 90, 2, 2, 12660, 12661, 7, 86, 2, 2, 12661, 12662, 7, 71, 2, 2, 12662, 12663, 7, 80, 2, 2, 12663, 12664, 7, 86, 2, 2, 12664, 12665, 7, 85, 2, 2, 12665, 1628, 3, 2, 2, 2, 12666, 12667, 7, 79, 2, 2, 12667, 12668, 7, 67, 2, 2, 12668, 12669, 7, 90, 2, 2, 12669, 12670, 7, 75, 2, 2, 12670, 12671, 7, 79, 2, 2, 12671, 12672, 7, 75, 2, 2, 12672, 12673, 7, 92, 2, 2, 12673, 12674, 7, 71, 2, 2, 12674, 1630, 3, 2, 2, 2, 12675, 12676, 7, 79, 2, 2, 12676, 12677, 7, 67, 2, 2, 12677, 12678, 7, 90, 2, 2, 12678, 12679, 7, 75, 2, 2, 12679, 12680, 7, 80, 2, 2, 12680, 12681, 7, 85, 2, 2, 12681, 12682, 7, 86, 2, 2, 12682, 12683, 7, 67, 2, 2, 12683, 12684, 7, 80, 2, 2, 12684, 12685, 7, 69, 2, 2, 12685, 12686, 7, 71, 2, 2, 12686, 12687, 7, 85, 2, 2, 12687, 1632, 3, 2, 2, 2, 12688, 12689, 7, 79, 2, 2, 12689, 12690, 7, 67, 2, 2, 12690, 12691, 7, 90, 2, 2, 12691, 12692, 7, 78, 2, 2, 12692, 12693, 7, 81, 2, 2, 12693, 12694, 7, 73, 2, 2, 12694, 12695, 7, 72, 2, 2, 12695, 12696, 7, 75, 2, 2, 12696, 12697, 7, 78, 2, 2, 12697, 12698, 7, 71, 2, 2, 12698, 12699, 7, 85, 2, 2, 12699, 1634, 3, 2, 2, 2, 12700, 12701, 7, 79, 2, 2, 12701, 12702, 7, 67, 2, 2, 12702, 12703, 7, 90, 2, 2, 12703, 12704, 7, 78, 2, 2, 12704, 12705, 7, 81, 2, 2, 12705, 12706, 7, 73, 2, 2, 12706, 12707, 7, 74, 2, 2, 12707, 12708, 7, 75, 2, 2, 12708, 12709, 7, 85, 2, 2, 12709, 12710, 7, 86, 2, 2, 12710, 12711, 7, 81, 2, 2, 12711, 12712, 7, 84, 2, 2, 12712, 12713, 7, 91, 2, 2, 12713, 1636, 3, 2, 2, 2, 12714, 12715, 7, 79, 2, 2, 12715, 12716, 7, 67, 2, 2, 12716, 12717, 7, 90, 2, 2, 12717, 12718, 7, 78, 2, 2, 12718, 12719, 7, 81, 2, 2, 12719, 12720, 7, 73, 2, 2, 12720, 12721, 7, 79, 2, 2, 12721, 12722, 7, 71, 2, 2, 12722, 12723, 7, 79, 2, 2, 12723, 12724, 7, 68, 2, 2, 12724, 12725, 7, 71, 2, 2, 12725, 12726, 7, 84, 2, 2, 12726, 12727, 7, 85, 2, 2, 12727, 1638, 3, 2, 2, 2, 12728, 12729, 7, 79, 2, 2, 12729, 12730, 7, 67, 2, 2, 12730, 12731, 7, 90, 2, 2, 12731, 12732, 7, 97, 2, 2, 12732, 12733, 7, 85, 2, 2, 12733, 12734, 7, 74, 2, 2, 12734, 12735, 7, 67, 2, 2, 12735, 12736, 7, 84, 2, 2, 12736, 12737, 7, 71, 2, 2, 12737, 12738, 7, 70, 2, 2, 12738, 12739, 7, 97, 2, 2, 12739, 12740, 7, 86, 2, 2, 12740, 12741, 7, 71, 2, 2, 12741, 12742, 7, 79, 2, 2, 12742, 12743, 7, 82, 2, 2, 12743, 12744, 7, 97, 2, 2, 12744, 12745, 7, 85, 2, 2, 12745, 12746, 7, 75, 2, 2, 12746, 12747, 7, 92, 2, 2, 12747, 12748, 7, 71, 2, 2, 12748, 1640, 3, 2, 2, 2, 12749, 12750, 7, 79, 2, 2, 12750, 12751, 7, 67, 2, 2, 12751, 12752, 7, 90, 2, 2, 12752, 12753, 7, 85, 2, 2, 12753, 12754, 7, 75, 2, 2, 12754, 12755, 7, 92, 2, 2, 12755, 12756, 7, 71, 2, 2, 12756, 1642, 3, 2, 2, 2, 12757, 12758, 7, 79, 2, 2, 12758, 12759, 7, 67, 2, 2, 12759, 12760, 7, 90, 2, 2, 12760, 12761, 7, 86, 2, 2, 12761, 12762, 7, 84, 2, 2, 12762, 12763, 7, 67, 2, 2, 12763, 12764, 7, 80, 2, 2, 12764, 12765, 7, 85, 2, 2, 12765, 1644, 3, 2, 2, 2, 12766, 12767, 7, 79, 2, 2, 12767, 12768, 7, 67, 2, 2, 12768, 12769, 7, 90, 2, 2, 12769, 12770, 7, 88, 2, 2, 12770, 12771, 7, 67, 2, 2, 12771, 12772, 7, 78, 2, 2, 12772, 12773, 7, 87, 2, 2, 12773, 12774, 7, 71, 2, 2, 12774, 1646, 3, 2, 2, 2, 12775, 12776, 7, 79, 2, 2, 12776, 12777, 7, 71, 2, 2, 12777, 12778, 7, 67, 2, 2, 12778, 12779, 7, 85, 2, 2, 12779, 12780, 7, 87, 2, 2, 12780, 12781, 7, 84, 2, 2, 12781, 12782, 7, 71, 2, 2, 12782, 1648, 3, 2, 2, 2, 12783, 12784, 7, 79, 2, 2, 12784, 12785, 7, 71, 2, 2, 12785, 12786, 7, 67, 2, 2, 12786, 12787, 7, 85, 2, 2, 12787, 12788, 7, 87, 2, 2, 12788, 12789, 7, 84, 2, 2, 12789, 12790, 7, 71, 2, 2, 12790, 12791, 7, 85, 2, 2, 12791, 1650, 3, 2, 2, 2, 12792, 12793, 7, 79, 2, 2, 12793, 12794, 7, 71, 2, 2, 12794, 12795, 7, 70, 2, 2, 12795, 12796, 7, 75, 2, 2, 12796, 12797, 7, 87, 2, 2, 12797, 12798, 7, 79, 2, 2, 12798, 1652, 3, 2, 2, 2, 12799, 12800, 7, 79, 2, 2, 12800, 12801, 7, 71, 2, 2, 12801, 12802, 7, 79, 2, 2, 12802, 12803, 7, 68, 2, 2, 12803, 12804, 7, 71, 2, 2, 12804, 12805, 7, 84, 2, 2, 12805, 1654, 3, 2, 2, 2, 12806, 12807, 7, 79, 2, 2, 12807, 12808, 7, 71, 2, 2, 12808, 12809, 7, 79, 2, 2, 12809, 12810, 7, 69, 2, 2, 12810, 12811, 7, 81, 2, 2, 12811, 12812, 7, 79, 2, 2, 12812, 12813, 7, 82, 2, 2, 12813, 12814, 7, 84, 2, 2, 12814, 12815, 7, 71, 2, 2, 12815, 12816, 7, 85, 2, 2, 12816, 12817, 7, 85, 2, 2, 12817, 1656, 3, 2, 2, 2, 12818, 12819, 7, 79, 2, 2, 12819, 12820, 7, 71, 2, 2, 12820, 12821, 7, 79, 2, 2, 12821, 12822, 7, 81, 2, 2, 12822, 12823, 7, 84, 2, 2, 12823, 12824, 7, 91, 2, 2, 12824, 1658, 3, 2, 2, 2, 12825, 12826, 7, 79, 2, 2, 12826, 12827, 7, 71, 2, 2, 12827, 12828, 7, 84, 2, 2, 12828, 12829, 7, 73, 2, 2, 12829, 12830, 7, 71, 2, 2, 12830, 12831, 7, 38, 2, 2, 12831, 12832, 7, 67, 2, 2, 12832, 12833, 7, 69, 2, 2, 12833, 12834, 7, 86, 2, 2, 12834, 12835, 7, 75, 2, 2, 12835, 12836, 7, 81, 2, 2, 12836, 12837, 7, 80, 2, 2, 12837, 12838, 7, 85, 2, 2, 12838, 1660, 3, 2, 2, 2, 12839, 12840, 7, 79, 2, 2, 12840, 12841, 7, 71, 2, 2, 12841, 12842, 7, 84, 2, 2, 12842, 12843, 7, 73, 2, 2, 12843, 12844, 7, 71, 2, 2, 12844, 12845, 7, 97, 2, 2, 12845, 12846, 7, 67, 2, 2, 12846, 12847, 7, 76, 2, 2, 12847, 1662, 3, 2, 2, 2, 12848, 12849, 7, 79, 2, 2, 12849, 12850, 7, 71, 2, 2, 12850, 12851, 7, 84, 2, 2, 12851, 12852, 7, 73, 2, 2, 12852, 12853, 7, 71, 2, 2, 12853, 12854, 7, 97, 2, 2, 12854, 12855, 7, 69, 2, 2, 12855, 12856, 7, 81, 2, 2, 12856, 12857, 7, 80, 2, 2, 12857, 12858, 7, 85, 2, 2, 12858, 12859, 7, 86, 2, 2, 12859, 12860, 7, 97, 2, 2, 12860, 12861, 7, 81, 2, 2, 12861, 12862, 7, 80, 2, 2, 12862, 1664, 3, 2, 2, 2, 12863, 12864, 7, 79, 2, 2, 12864, 12865, 7, 71, 2, 2, 12865, 12866, 7, 84, 2, 2, 12866, 12867, 7, 73, 2, 2, 12867, 12868, 7, 71, 2, 2, 12868, 1666, 3, 2, 2, 2, 12869, 12870, 7, 79, 2, 2, 12870, 12871, 7, 71, 2, 2, 12871, 12872, 7, 84, 2, 2, 12872, 12873, 7, 73, 2, 2, 12873, 12874, 7, 71, 2, 2, 12874, 12875, 7, 97, 2, 2, 12875, 12876, 7, 85, 2, 2, 12876, 12877, 7, 76, 2, 2, 12877, 1668, 3, 2, 2, 2, 12878, 12879, 7, 79, 2, 2, 12879, 12880, 7, 71, 2, 2, 12880, 12881, 7, 86, 2, 2, 12881, 12882, 7, 67, 2, 2, 12882, 12883, 7, 70, 2, 2, 12883, 12884, 7, 67, 2, 2, 12884, 12885, 7, 86, 2, 2, 12885, 12886, 7, 67, 2, 2, 12886, 1670, 3, 2, 2, 2, 12887, 12888, 7, 79, 2, 2, 12888, 12889, 7, 71, 2, 2, 12889, 12890, 7, 86, 2, 2, 12890, 12891, 7, 74, 2, 2, 12891, 12892, 7, 81, 2, 2, 12892, 12893, 7, 70, 2, 2, 12893, 1672, 3, 2, 2, 2, 12894, 12895, 7, 79, 2, 2, 12895, 12896, 7, 75, 2, 2, 12896, 12897, 7, 73, 2, 2, 12897, 12898, 7, 84, 2, 2, 12898, 12899, 7, 67, 2, 2, 12899, 12900, 7, 86, 2, 2, 12900, 12901, 7, 71, 2, 2, 12901, 1674, 3, 2, 2, 2, 12902, 12903, 7, 79, 2, 2, 12903, 12904, 7, 75, 2, 2, 12904, 12905, 7, 73, 2, 2, 12905, 12906, 7, 84, 2, 2, 12906, 12907, 7, 67, 2, 2, 12907, 12908, 7, 86, 2, 2, 12908, 12909, 7, 75, 2, 2, 12909, 12910, 7, 81, 2, 2, 12910, 12911, 7, 80, 2, 2, 12911, 1676, 3, 2, 2, 2, 12912, 12913, 7, 79, 2, 2, 12913, 12914, 7, 75, 2, 2, 12914, 12915, 7, 80, 2, 2, 12915, 12916, 7, 71, 2, 2, 12916, 12917, 7, 90, 2, 2, 12917, 12918, 7, 86, 2, 2, 12918, 12919, 7, 71, 2, 2, 12919, 12920, 7, 80, 2, 2, 12920, 12921, 7, 86, 2, 2, 12921, 12922, 7, 85, 2, 2, 12922, 1678, 3, 2, 2, 2, 12923, 12924, 7, 79, 2, 2, 12924, 12925, 7, 75, 2, 2, 12925, 12926, 7, 80, 2, 2, 12926, 12927, 7, 75, 2, 2, 12927, 12928, 7, 79, 2, 2, 12928, 12929, 7, 75, 2, 2, 12929, 12930, 7, 92, 2, 2, 12930, 12931, 7, 71, 2, 2, 12931, 1680, 3, 2, 2, 2, 12932, 12933, 7, 79, 2, 2, 12933, 12934, 7, 75, 2, 2, 12934, 12935, 7, 80, 2, 2, 12935, 12936, 7, 75, 2, 2, 12936, 12937, 7, 79, 2, 2, 12937, 12938, 7, 87, 2, 2, 12938, 12939, 7, 79, 2, 2, 12939, 1682, 3, 2, 2, 2, 12940, 12941, 7, 79, 2, 2, 12941, 12942, 7, 75, 2, 2, 12942, 12943, 7, 80, 2, 2, 12943, 12944, 7, 75, 2, 2, 12944, 12945, 7, 80, 2, 2, 12945, 12946, 7, 73, 2, 2, 12946, 1684, 3, 2, 2, 2, 12947, 12948, 7, 79, 2, 2, 12948, 12949, 7, 75, 2, 2, 12949, 12950, 7, 80, 2, 2, 12950, 12951, 7, 87, 2, 2, 12951, 12952, 7, 85, 2, 2, 12952, 1686, 3, 2, 2, 2, 12953, 12954, 7, 79, 2, 2, 12954, 12955, 7, 75, 2, 2, 12955, 12956, 7, 80, 2, 2, 12956, 12957, 7, 87, 2, 2, 12957, 12958, 7, 85, 2, 2, 12958, 12959, 7, 97, 2, 2, 12959, 12960, 7, 80, 2, 2, 12960, 12961, 7, 87, 2, 2, 12961, 12962, 7, 78, 2, 2, 12962, 12963, 7, 78, 2, 2, 12963, 1688, 3, 2, 2, 2, 12964, 12965, 7, 79, 2, 2, 12965, 12966, 7, 75, 2, 2, 12966, 12967, 7, 80, 2, 2, 12967, 12968, 7, 87, 2, 2, 12968, 12969, 7, 86, 2, 2, 12969, 12970, 7, 71, 2, 2, 12970, 1690, 3, 2, 2, 2, 12971, 12972, 7, 79, 2, 2, 12972, 12973, 7, 75, 2, 2, 12973, 12974, 7, 80, 2, 2, 12974, 12975, 7, 88, 2, 2, 12975, 12976, 7, 67, 2, 2, 12976, 12977, 7, 78, 2, 2, 12977, 12978, 7, 87, 2, 2, 12978, 12979, 7, 71, 2, 2, 12979, 1692, 3, 2, 2, 2, 12980, 12981, 7, 79, 2, 2, 12981, 12982, 7, 75, 2, 2, 12982, 12983, 7, 84, 2, 2, 12983, 12984, 7, 84, 2, 2, 12984, 12985, 7, 81, 2, 2, 12985, 12986, 7, 84, 2, 2, 12986, 12987, 7, 69, 2, 2, 12987, 12988, 7, 81, 2, 2, 12988, 12989, 7, 78, 2, 2, 12989, 12990, 7, 70, 2, 2, 12990, 1694, 3, 2, 2, 2, 12991, 12992, 7, 79, 2, 2, 12992, 12993, 7, 75, 2, 2, 12993, 12994, 7, 84, 2, 2, 12994, 12995, 7, 84, 2, 2, 12995, 12996, 7, 81, 2, 2, 12996, 12997, 7, 84, 2, 2, 12997, 12998, 7, 74, 2, 2, 12998, 12999, 7, 81, 2, 2, 12999, 13000, 7, 86, 2, 2, 13000, 1696, 3, 2, 2, 2, 13001, 13002, 7, 79, 2, 2, 13002, 13003, 7, 75, 2, 2, 13003, 13004, 7, 84, 2, 2, 13004, 13005, 7, 84, 2, 2, 13005, 13006, 7, 81, 2, 2, 13006, 13007, 7, 84, 2, 2, 13007, 1698, 3, 2, 2, 2, 13008, 13009, 7, 79, 2, 2, 13009, 13010, 7, 78, 2, 2, 13010, 13011, 7, 85, 2, 2, 13011, 13012, 7, 78, 2, 2, 13012, 13013, 7, 67, 2, 2, 13013, 13014, 7, 68, 2, 2, 13014, 13015, 7, 71, 2, 2, 13015, 13016, 7, 78, 2, 2, 13016, 1700, 3, 2, 2, 2, 13017, 13018, 7, 79, 2, 2, 13018, 13019, 7, 81, 2, 2, 13019, 13020, 7, 70, 2, 2, 13020, 13021, 7, 71, 2, 2, 13021, 13022, 7, 78, 2, 2, 13022, 13023, 7, 97, 2, 2, 13023, 13024, 7, 69, 2, 2, 13024, 13025, 7, 81, 2, 2, 13025, 13026, 7, 79, 2, 2, 13026, 13027, 7, 82, 2, 2, 13027, 13028, 7, 75, 2, 2, 13028, 13029, 7, 78, 2, 2, 13029, 13030, 7, 71, 2, 2, 13030, 13031, 7, 97, 2, 2, 13031, 13032, 7, 85, 2, 2, 13032, 13033, 7, 87, 2, 2, 13033, 13034, 7, 68, 2, 2, 13034, 13035, 7, 83, 2, 2, 13035, 13036, 7, 87, 2, 2, 13036, 13037, 7, 71, 2, 2, 13037, 13038, 7, 84, 2, 2, 13038, 13039, 7, 91, 2, 2, 13039, 1702, 3, 2, 2, 2, 13040, 13041, 7, 79, 2, 2, 13041, 13042, 7, 81, 2, 2, 13042, 13043, 7, 70, 2, 2, 13043, 13044, 7, 71, 2, 2, 13044, 13045, 7, 78, 2, 2, 13045, 13046, 7, 97, 2, 2, 13046, 13047, 7, 70, 2, 2, 13047, 13048, 7, 81, 2, 2, 13048, 13049, 7, 80, 2, 2, 13049, 13050, 7, 86, 2, 2, 13050, 13051, 7, 88, 2, 2, 13051, 13052, 7, 71, 2, 2, 13052, 13053, 7, 84, 2, 2, 13053, 13054, 7, 75, 2, 2, 13054, 13055, 7, 72, 2, 2, 13055, 13056, 7, 91, 2, 2, 13056, 13057, 7, 97, 2, 2, 13057, 13058, 7, 87, 2, 2, 13058, 13059, 7, 80, 2, 2, 13059, 13060, 7, 75, 2, 2, 13060, 13061, 7, 83, 2, 2, 13061, 13062, 7, 87, 2, 2, 13062, 13063, 7, 71, 2, 2, 13063, 13064, 7, 80, 2, 2, 13064, 13065, 7, 71, 2, 2, 13065, 13066, 7, 85, 2, 2, 13066, 13067, 7, 85, 2, 2, 13067, 1704, 3, 2, 2, 2, 13068, 13069, 7, 79, 2, 2, 13069, 13070, 7, 81, 2, 2, 13070, 13071, 7, 70, 2, 2, 13071, 13072, 7, 71, 2, 2, 13072, 13073, 7, 78, 2, 2, 13073, 13074, 7, 97, 2, 2, 13074, 13075, 7, 70, 2, 2, 13075, 13076, 7, 91, 2, 2, 13076, 13077, 7, 80, 2, 2, 13077, 13078, 7, 67, 2, 2, 13078, 13079, 7, 79, 2, 2, 13079, 13080, 7, 75, 2, 2, 13080, 13081, 7, 69, 2, 2, 13081, 13082, 7, 97, 2, 2, 13082, 13083, 7, 85, 2, 2, 13083, 13084, 7, 87, 2, 2, 13084, 13085, 7, 68, 2, 2, 13085, 13086, 7, 83, 2, 2, 13086, 13087, 7, 87, 2, 2, 13087, 13088, 7, 71, 2, 2, 13088, 13089, 7, 84, 2, 2, 13089, 13090, 7, 91, 2, 2, 13090, 1706, 3, 2, 2, 2, 13091, 13092, 7, 79, 2, 2, 13092, 13093, 7, 81, 2, 2, 13093, 13094, 7, 70, 2, 2, 13094, 13095, 7, 71, 2, 2, 13095, 13096, 7, 78, 2, 2, 13096, 13097, 7, 97, 2, 2, 13097, 13098, 7, 79, 2, 2, 13098, 13099, 7, 75, 2, 2, 13099, 13100, 7, 80, 2, 2, 13100, 13101, 7, 97, 2, 2, 13101, 13102, 7, 67, 2, 2, 13102, 13103, 7, 80, 2, 2, 13103, 13104, 7, 67, 2, 2, 13104, 13105, 7, 78, 2, 2, 13105, 13106, 7, 91, 2, 2, 13106, 13107, 7, 85, 2, 2, 13107, 13108, 7, 75, 2, 2, 13108, 13109, 7, 85, 2, 2, 13109, 1708, 3, 2, 2, 2, 13110, 13111, 7, 79, 2, 2, 13111, 13112, 7, 81, 2, 2, 13112, 13113, 7, 70, 2, 2, 13113, 13114, 7, 71, 2, 2, 13114, 13115, 7, 78, 2, 2, 13115, 1710, 3, 2, 2, 2, 13116, 13117, 7, 79, 2, 2, 13117, 13118, 7, 81, 2, 2, 13118, 13119, 7, 70, 2, 2, 13119, 13120, 7, 71, 2, 2, 13120, 13121, 7, 78, 2, 2, 13121, 13122, 7, 97, 2, 2, 13122, 13123, 7, 80, 2, 2, 13123, 13124, 7, 68, 2, 2, 13124, 1712, 3, 2, 2, 2, 13125, 13126, 7, 79, 2, 2, 13126, 13127, 7, 81, 2, 2, 13127, 13128, 7, 70, 2, 2, 13128, 13129, 7, 71, 2, 2, 13129, 13130, 7, 78, 2, 2, 13130, 13131, 7, 97, 2, 2, 13131, 13132, 7, 80, 2, 2, 13132, 13133, 7, 81, 2, 2, 13133, 13134, 7, 97, 2, 2, 13134, 13135, 7, 67, 2, 2, 13135, 13136, 7, 80, 2, 2, 13136, 13137, 7, 67, 2, 2, 13137, 13138, 7, 78, 2, 2, 13138, 13139, 7, 91, 2, 2, 13139, 13140, 7, 85, 2, 2, 13140, 13141, 7, 75, 2, 2, 13141, 13142, 7, 85, 2, 2, 13142, 1714, 3, 2, 2, 2, 13143, 13144, 7, 79, 2, 2, 13144, 13145, 7, 81, 2, 2, 13145, 13146, 7, 70, 2, 2, 13146, 13147, 7, 71, 2, 2, 13147, 13148, 7, 78, 2, 2, 13148, 13149, 7, 97, 2, 2, 13149, 13150, 7, 82, 2, 2, 13150, 13151, 7, 68, 2, 2, 13151, 13152, 7, 91, 2, 2, 13152, 1716, 3, 2, 2, 2, 13153, 13154, 7, 79, 2, 2, 13154, 13155, 7, 81, 2, 2, 13155, 13156, 7, 70, 2, 2, 13156, 13157, 7, 71, 2, 2, 13157, 13158, 7, 78, 2, 2, 13158, 13159, 7, 97, 2, 2, 13159, 13160, 7, 82, 2, 2, 13160, 13161, 7, 87, 2, 2, 13161, 13162, 7, 85, 2, 2, 13162, 13163, 7, 74, 2, 2, 13163, 13164, 7, 97, 2, 2, 13164, 13165, 7, 84, 2, 2, 13165, 13166, 7, 71, 2, 2, 13166, 13167, 7, 72, 2, 2, 13167, 1718, 3, 2, 2, 2, 13168, 13169, 7, 79, 2, 2, 13169, 13170, 7, 81, 2, 2, 13170, 13171, 7, 70, 2, 2, 13171, 13172, 7, 71, 2, 2, 13172, 13173, 7, 78, 2, 2, 13173, 13174, 7, 97, 2, 2, 13174, 13175, 7, 85, 2, 2, 13175, 13176, 7, 88, 2, 2, 13176, 1720, 3, 2, 2, 2, 13177, 13178, 7, 79, 2, 2, 13178, 13179, 7, 81, 2, 2, 13179, 13180, 7, 70, 2, 2, 13180, 13181, 7, 71, 2, 2, 13181, 1722, 3, 2, 2, 2, 13182, 13183, 7, 79, 2, 2, 13183, 13184, 7, 81, 2, 2, 13184, 13185, 7, 70, 2, 2, 13185, 13186, 7, 75, 2, 2, 13186, 13187, 7, 72, 2, 2, 13187, 13188, 7, 75, 2, 2, 13188, 13189, 7, 69, 2, 2, 13189, 13190, 7, 67, 2, 2, 13190, 13191, 7, 86, 2, 2, 13191, 13192, 7, 75, 2, 2, 13192, 13193, 7, 81, 2, 2, 13193, 13194, 7, 80, 2, 2, 13194, 1724, 3, 2, 2, 2, 13195, 13196, 7, 79, 2, 2, 13196, 13197, 7, 81, 2, 2, 13197, 13198, 7, 70, 2, 2, 13198, 13199, 7, 75, 2, 2, 13199, 13200, 7, 72, 2, 2, 13200, 13201, 7, 91, 2, 2, 13201, 13202, 7, 97, 2, 2, 13202, 13203, 7, 69, 2, 2, 13203, 13204, 7, 81, 2, 2, 13204, 13205, 7, 78, 2, 2, 13205, 13206, 7, 87, 2, 2, 13206, 13207, 7, 79, 2, 2, 13207, 13208, 7, 80, 2, 2, 13208, 13209, 7, 97, 2, 2, 13209, 13210, 7, 86, 2, 2, 13210, 13211, 7, 91, 2, 2, 13211, 13212, 7, 82, 2, 2, 13212, 13213, 7, 71, 2, 2, 13213, 1726, 3, 2, 2, 2, 13214, 13215, 7, 79, 2, 2, 13215, 13216, 7, 81, 2, 2, 13216, 13217, 7, 70, 2, 2, 13217, 13218, 7, 75, 2, 2, 13218, 13219, 7, 72, 2, 2, 13219, 13220, 7, 91, 2, 2, 13220, 1728, 3, 2, 2, 2, 13221, 13222, 7, 79, 2, 2, 13222, 13223, 7, 81, 2, 2, 13223, 13224, 7, 70, 2, 2, 13224, 1730, 3, 2, 2, 2, 13225, 13226, 7, 79, 2, 2, 13226, 13227, 7, 81, 2, 2, 13227, 13228, 7, 70, 2, 2, 13228, 13229, 7, 87, 2, 2, 13229, 13230, 7, 78, 2, 2, 13230, 13231, 7, 71, 2, 2, 13231, 1732, 3, 2, 2, 2, 13232, 13233, 7, 79, 2, 2, 13233, 13234, 7, 81, 2, 2, 13234, 13235, 7, 80, 2, 2, 13235, 13236, 7, 75, 2, 2, 13236, 13237, 7, 86, 2, 2, 13237, 13238, 7, 81, 2, 2, 13238, 13239, 7, 84, 2, 2, 13239, 13240, 7, 75, 2, 2, 13240, 13241, 7, 80, 2, 2, 13241, 13242, 7, 73, 2, 2, 13242, 1734, 3, 2, 2, 2, 13243, 13244, 7, 79, 2, 2, 13244, 13245, 7, 81, 2, 2, 13245, 13246, 7, 80, 2, 2, 13246, 13247, 7, 75, 2, 2, 13247, 13248, 7, 86, 2, 2, 13248, 13249, 7, 81, 2, 2, 13249, 13250, 7, 84, 2, 2, 13250, 1736, 3, 2, 2, 2, 13251, 13252, 7, 79, 2, 2, 13252, 13253, 7, 81, 2, 2, 13253, 13254, 7, 80, 2, 2, 13254, 13255, 7, 86, 2, 2, 13255, 13256, 7, 74, 2, 2, 13256, 1738, 3, 2, 2, 2, 13257, 13258, 7, 79, 2, 2, 13258, 13259, 7, 81, 2, 2, 13259, 13260, 7, 80, 2, 2, 13260, 13261, 7, 86, 2, 2, 13261, 13262, 7, 74, 2, 2, 13262, 13263, 7, 85, 2, 2, 13263, 13264, 7, 97, 2, 2, 13264, 13265, 7, 68, 2, 2, 13265, 13266, 7, 71, 2, 2, 13266, 13267, 7, 86, 2, 2, 13267, 13268, 7, 89, 2, 2, 13268, 13269, 7, 71, 2, 2, 13269, 13270, 7, 71, 2, 2, 13270, 13271, 7, 80, 2, 2, 13271, 1740, 3, 2, 2, 2, 13272, 13273, 7, 79, 2, 2, 13273, 13274, 7, 81, 2, 2, 13274, 13275, 7, 80, 2, 2, 13275, 13276, 7, 86, 2, 2, 13276, 13277, 7, 74, 2, 2, 13277, 13278, 7, 85, 2, 2, 13278, 1742, 3, 2, 2, 2, 13279, 13280, 7, 79, 2, 2, 13280, 13281, 7, 81, 2, 2, 13281, 13282, 7, 87, 2, 2, 13282, 13283, 7, 80, 2, 2, 13283, 13284, 7, 86, 2, 2, 13284, 1744, 3, 2, 2, 2, 13285, 13286, 7, 79, 2, 2, 13286, 13287, 7, 81, 2, 2, 13287, 13288, 7, 87, 2, 2, 13288, 13289, 7, 80, 2, 2, 13289, 13290, 7, 86, 2, 2, 13290, 13291, 7, 82, 2, 2, 13291, 13292, 7, 67, 2, 2, 13292, 13293, 7, 86, 2, 2, 13293, 13294, 7, 74, 2, 2, 13294, 1746, 3, 2, 2, 2, 13295, 13296, 7, 79, 2, 2, 13296, 13297, 7, 81, 2, 2, 13297, 13298, 7, 88, 2, 2, 13298, 13299, 7, 71, 2, 2, 13299, 13300, 7, 79, 2, 2, 13300, 13301, 7, 71, 2, 2, 13301, 13302, 7, 80, 2, 2, 13302, 13303, 7, 86, 2, 2, 13303, 1748, 3, 2, 2, 2, 13304, 13305, 7, 79, 2, 2, 13305, 13306, 7, 81, 2, 2, 13306, 13307, 7, 88, 2, 2, 13307, 13308, 7, 71, 2, 2, 13308, 1750, 3, 2, 2, 2, 13309, 13310, 7, 79, 2, 2, 13310, 13311, 7, 87, 2, 2, 13311, 13312, 7, 78, 2, 2, 13312, 13313, 7, 86, 2, 2, 13313, 13314, 7, 75, 2, 2, 13314, 13315, 7, 70, 2, 2, 13315, 13316, 7, 75, 2, 2, 13316, 13317, 7, 79, 2, 2, 13317, 13318, 7, 71, 2, 2, 13318, 13319, 7, 80, 2, 2, 13319, 13320, 7, 85, 2, 2, 13320, 13321, 7, 75, 2, 2, 13321, 13322, 7, 81, 2, 2, 13322, 13323, 7, 80, 2, 2, 13323, 13324, 7, 67, 2, 2, 13324, 13325, 7, 78, 2, 2, 13325, 1752, 3, 2, 2, 2, 13326, 13327, 7, 79, 2, 2, 13327, 13328, 7, 87, 2, 2, 13328, 13329, 7, 78, 2, 2, 13329, 13330, 7, 86, 2, 2, 13330, 13331, 7, 75, 2, 2, 13331, 13332, 7, 85, 2, 2, 13332, 13333, 7, 71, 2, 2, 13333, 13334, 7, 86, 2, 2, 13334, 1754, 3, 2, 2, 2, 13335, 13336, 7, 79, 2, 2, 13336, 13337, 7, 88, 2, 2, 13337, 13338, 7, 97, 2, 2, 13338, 13339, 7, 79, 2, 2, 13339, 13340, 7, 71, 2, 2, 13340, 13341, 7, 84, 2, 2, 13341, 13342, 7, 73, 2, 2, 13342, 13343, 7, 71, 2, 2, 13343, 1756, 3, 2, 2, 2, 13344, 13345, 7, 80, 2, 2, 13345, 13346, 7, 67, 2, 2, 13346, 13347, 7, 79, 2, 2, 13347, 13348, 7, 71, 2, 2, 13348, 13349, 7, 70, 2, 2, 13349, 1758, 3, 2, 2, 2, 13350, 13351, 7, 80, 2, 2, 13351, 13352, 7, 67, 2, 2, 13352, 13353, 7, 79, 2, 2, 13353, 13354, 7, 71, 2, 2, 13354, 1760, 3, 2, 2, 2, 13355, 13356, 7, 80, 2, 2, 13356, 13357, 7, 67, 2, 2, 13357, 13358, 7, 79, 2, 2, 13358, 13359, 7, 71, 2, 2, 13359, 13360, 7, 85, 2, 2, 13360, 13361, 7, 82, 2, 2, 13361, 13362, 7, 67, 2, 2, 13362, 13363, 7, 69, 2, 2, 13363, 13364, 7, 71, 2, 2, 13364, 1762, 3, 2, 2, 2, 13365, 13366, 7, 80, 2, 2, 13366, 13367, 7, 67, 2, 2, 13367, 13368, 7, 80, 2, 2, 13368, 1764, 3, 2, 2, 2, 13369, 13370, 7, 80, 2, 2, 13370, 13371, 7, 67, 2, 2, 13371, 13372, 7, 80, 2, 2, 13372, 13373, 7, 88, 2, 2, 13373, 13374, 7, 78, 2, 2, 13374, 1766, 3, 2, 2, 2, 13375, 13376, 7, 80, 2, 2, 13376, 13377, 7, 67, 2, 2, 13377, 13378, 7, 86, 2, 2, 13378, 13379, 7, 75, 2, 2, 13379, 13380, 7, 81, 2, 2, 13380, 13381, 7, 80, 2, 2, 13381, 13382, 7, 67, 2, 2, 13382, 13383, 7, 78, 2, 2, 13383, 1768, 3, 2, 2, 2, 13384, 13385, 7, 80, 2, 2, 13385, 13386, 7, 67, 2, 2, 13386, 13387, 7, 86, 2, 2, 13387, 13388, 7, 75, 2, 2, 13388, 13389, 7, 88, 2, 2, 13389, 13390, 7, 71, 2, 2, 13390, 13391, 7, 97, 2, 2, 13391, 13392, 7, 72, 2, 2, 13392, 13393, 7, 87, 2, 2, 13393, 13394, 7, 78, 2, 2, 13394, 13395, 7, 78, 2, 2, 13395, 13396, 7, 97, 2, 2, 13396, 13397, 7, 81, 2, 2, 13397, 13398, 7, 87, 2, 2, 13398, 13399, 7, 86, 2, 2, 13399, 13400, 7, 71, 2, 2, 13400, 13401, 7, 84, 2, 2, 13401, 13402, 7, 97, 2, 2, 13402, 13403, 7, 76, 2, 2, 13403, 13404, 7, 81, 2, 2, 13404, 13405, 7, 75, 2, 2, 13405, 13406, 7, 80, 2, 2, 13406, 1770, 3, 2, 2, 2, 13407, 13408, 7, 80, 2, 2, 13408, 13409, 7, 67, 2, 2, 13409, 13410, 7, 86, 2, 2, 13410, 13411, 7, 75, 2, 2, 13411, 13412, 7, 88, 2, 2, 13412, 13413, 7, 71, 2, 2, 13413, 1772, 3, 2, 2, 2, 13414, 13415, 7, 80, 2, 2, 13415, 13416, 7, 67, 2, 2, 13416, 13417, 7, 86, 2, 2, 13417, 13418, 7, 87, 2, 2, 13418, 13419, 7, 84, 2, 2, 13419, 13420, 7, 67, 2, 2, 13420, 13421, 7, 78, 2, 2, 13421, 1774, 3, 2, 2, 2, 13422, 13423, 7, 80, 2, 2, 13423, 13424, 7, 67, 2, 2, 13424, 13425, 7, 86, 2, 2, 13425, 13426, 7, 87, 2, 2, 13426, 13427, 7, 84, 2, 2, 13427, 13428, 7, 67, 2, 2, 13428, 13429, 7, 78, 2, 2, 13429, 13430, 7, 80, 2, 2, 13430, 1776, 3, 2, 2, 2, 13431, 13432, 7, 80, 2, 2, 13432, 13433, 7, 67, 2, 2, 13433, 13434, 7, 88, 2, 2, 13434, 1778, 3, 2, 2, 2, 13435, 13436, 7, 80, 2, 2, 13436, 13437, 7, 69, 2, 2, 13437, 13438, 7, 74, 2, 2, 13438, 13439, 7, 67, 2, 2, 13439, 13440, 7, 84, 2, 2, 13440, 13441, 7, 97, 2, 2, 13441, 13442, 7, 69, 2, 2, 13442, 13443, 7, 85, 2, 2, 13443, 1780, 3, 2, 2, 2, 13444, 13445, 7, 80, 2, 2, 13445, 13446, 7, 69, 2, 2, 13446, 13447, 7, 74, 2, 2, 13447, 13448, 7, 67, 2, 2, 13448, 13449, 7, 84, 2, 2, 13449, 1782, 3, 2, 2, 2, 13450, 13451, 7, 80, 2, 2, 13451, 13452, 7, 69, 2, 2, 13452, 13453, 7, 74, 2, 2, 13453, 13454, 7, 84, 2, 2, 13454, 1784, 3, 2, 2, 2, 13455, 13456, 7, 80, 2, 2, 13456, 13457, 7, 69, 2, 2, 13457, 13458, 7, 78, 2, 2, 13458, 13459, 7, 81, 2, 2, 13459, 13460, 7, 68, 2, 2, 13460, 1786, 3, 2, 2, 2, 13461, 13462, 7, 80, 2, 2, 13462, 13463, 7, 71, 2, 2, 13463, 13464, 7, 71, 2, 2, 13464, 13465, 7, 70, 2, 2, 13465, 13466, 7, 71, 2, 2, 13466, 13467, 7, 70, 2, 2, 13467, 1788, 3, 2, 2, 2, 13468, 13469, 7, 80, 2, 2, 13469, 13470, 7, 71, 2, 2, 13470, 13471, 7, 73, 2, 2, 13471, 1790, 3, 2, 2, 2, 13472, 13473, 7, 80, 2, 2, 13473, 13474, 7, 71, 2, 2, 13474, 13475, 7, 85, 2, 2, 13475, 13476, 7, 86, 2, 2, 13476, 13477, 7, 71, 2, 2, 13477, 13478, 7, 70, 2, 2, 13478, 1792, 3, 2, 2, 2, 13479, 13480, 7, 80, 2, 2, 13480, 13481, 7, 71, 2, 2, 13481, 13482, 7, 85, 2, 2, 13482, 13483, 7, 86, 2, 2, 13483, 13484, 7, 71, 2, 2, 13484, 13485, 7, 70, 2, 2, 13485, 13486, 7, 97, 2, 2, 13486, 13487, 7, 86, 2, 2, 13487, 13488, 7, 67, 2, 2, 13488, 13489, 7, 68, 2, 2, 13489, 13490, 7, 78, 2, 2, 13490, 13491, 7, 71, 2, 2, 13491, 13492, 7, 97, 2, 2, 13492, 13493, 7, 72, 2, 2, 13493, 13494, 7, 67, 2, 2, 13494, 13495, 7, 85, 2, 2, 13495, 13496, 7, 86, 2, 2, 13496, 13497, 7, 97, 2, 2, 13497, 13498, 7, 75, 2, 2, 13498, 13499, 7, 80, 2, 2, 13499, 13500, 7, 85, 2, 2, 13500, 13501, 7, 71, 2, 2, 13501, 13502, 7, 84, 2, 2, 13502, 13503, 7, 86, 2, 2, 13503, 1794, 3, 2, 2, 2, 13504, 13505, 7, 80, 2, 2, 13505, 13506, 7, 71, 2, 2, 13506, 13507, 7, 85, 2, 2, 13507, 13508, 7, 86, 2, 2, 13508, 13509, 7, 71, 2, 2, 13509, 13510, 7, 70, 2, 2, 13510, 13511, 7, 97, 2, 2, 13511, 13512, 7, 86, 2, 2, 13512, 13513, 7, 67, 2, 2, 13513, 13514, 7, 68, 2, 2, 13514, 13515, 7, 78, 2, 2, 13515, 13516, 7, 71, 2, 2, 13516, 13517, 7, 97, 2, 2, 13517, 13518, 7, 73, 2, 2, 13518, 13519, 7, 71, 2, 2, 13519, 13520, 7, 86, 2, 2, 13520, 13521, 7, 97, 2, 2, 13521, 13522, 7, 84, 2, 2, 13522, 13523, 7, 71, 2, 2, 13523, 13524, 7, 72, 2, 2, 13524, 13525, 7, 85, 2, 2, 13525, 1796, 3, 2, 2, 2, 13526, 13527, 7, 80, 2, 2, 13527, 13528, 7, 71, 2, 2, 13528, 13529, 7, 85, 2, 2, 13529, 13530, 7, 86, 2, 2, 13530, 13531, 7, 71, 2, 2, 13531, 13532, 7, 70, 2, 2, 13532, 13533, 7, 97, 2, 2, 13533, 13534, 7, 86, 2, 2, 13534, 13535, 7, 67, 2, 2, 13535, 13536, 7, 68, 2, 2, 13536, 13537, 7, 78, 2, 2, 13537, 13538, 7, 71, 2, 2, 13538, 13539, 7, 97, 2, 2, 13539, 13540, 7, 75, 2, 2, 13540, 13541, 7, 70, 2, 2, 13541, 1798, 3, 2, 2, 2, 13542, 13543, 7, 80, 2, 2, 13543, 13544, 7, 71, 2, 2, 13544, 13545, 7, 85, 2, 2, 13545, 13546, 7, 86, 2, 2, 13546, 13547, 7, 71, 2, 2, 13547, 13548, 7, 70, 2, 2, 13548, 13549, 7, 97, 2, 2, 13549, 13550, 7, 86, 2, 2, 13550, 13551, 7, 67, 2, 2, 13551, 13552, 7, 68, 2, 2, 13552, 13553, 7, 78, 2, 2, 13553, 13554, 7, 71, 2, 2, 13554, 13555, 7, 97, 2, 2, 13555, 13556, 7, 85, 2, 2, 13556, 13557, 7, 71, 2, 2, 13557, 13558, 7, 86, 2, 2, 13558, 13559, 7, 97, 2, 2, 13559, 13560, 7, 84, 2, 2, 13560, 13561, 7, 71, 2, 2, 13561, 13562, 7, 72, 2, 2, 13562, 13563, 7, 85, 2, 2, 13563, 1800, 3, 2, 2, 2, 13564, 13565, 7, 80, 2, 2, 13565, 13566, 7, 71, 2, 2, 13566, 13567, 7, 85, 2, 2, 13567, 13568, 7, 86, 2, 2, 13568, 13569, 7, 71, 2, 2, 13569, 13570, 7, 70, 2, 2, 13570, 13571, 7, 97, 2, 2, 13571, 13572, 7, 86, 2, 2, 13572, 13573, 7, 67, 2, 2, 13573, 13574, 7, 68, 2, 2, 13574, 13575, 7, 78, 2, 2, 13575, 13576, 7, 71, 2, 2, 13576, 13577, 7, 97, 2, 2, 13577, 13578, 7, 85, 2, 2, 13578, 13579, 7, 71, 2, 2, 13579, 13580, 7, 86, 2, 2, 13580, 13581, 7, 97, 2, 2, 13581, 13582, 7, 85, 2, 2, 13582, 13583, 7, 71, 2, 2, 13583, 13584, 7, 86, 2, 2, 13584, 13585, 7, 75, 2, 2, 13585, 13586, 7, 70, 2, 2, 13586, 1802, 3, 2, 2, 2, 13587, 13588, 7, 80, 2, 2, 13588, 13589, 7, 71, 2, 2, 13589, 13590, 7, 86, 2, 2, 13590, 13591, 7, 89, 2, 2, 13591, 13592, 7, 81, 2, 2, 13592, 13593, 7, 84, 2, 2, 13593, 13594, 7, 77, 2, 2, 13594, 1804, 3, 2, 2, 2, 13595, 13596, 7, 80, 2, 2, 13596, 13597, 7, 71, 2, 2, 13597, 13598, 7, 88, 2, 2, 13598, 13599, 7, 71, 2, 2, 13599, 13600, 7, 84, 2, 2, 13600, 1806, 3, 2, 2, 2, 13601, 13602, 7, 80, 2, 2, 13602, 13603, 7, 71, 2, 2, 13603, 13604, 7, 89, 2, 2, 13604, 1808, 3, 2, 2, 2, 13605, 13606, 7, 80, 2, 2, 13606, 13607, 7, 71, 2, 2, 13607, 13608, 7, 89, 2, 2, 13608, 13609, 7, 97, 2, 2, 13609, 13610, 7, 86, 2, 2, 13610, 13611, 7, 75, 2, 2, 13611, 13612, 7, 79, 2, 2, 13612, 13613, 7, 71, 2, 2, 13613, 1810, 3, 2, 2, 2, 13614, 13615, 7, 80, 2, 2, 13615, 13616, 7, 71, 2, 2, 13616, 13617, 7, 90, 2, 2, 13617, 13618, 7, 86, 2, 2, 13618, 13619, 7, 97, 2, 2, 13619, 13620, 7, 70, 2, 2, 13620, 13621, 7, 67, 2, 2, 13621, 13622, 7, 91, 2, 2, 13622, 1812, 3, 2, 2, 2, 13623, 13624, 7, 80, 2, 2, 13624, 13625, 7, 71, 2, 2, 13625, 13626, 7, 90, 2, 2, 13626, 13627, 7, 86, 2, 2, 13627, 1814, 3, 2, 2, 2, 13628, 13629, 7, 80, 2, 2, 13629, 13630, 7, 78, 2, 2, 13630, 13631, 7, 97, 2, 2, 13631, 13632, 7, 67, 2, 2, 13632, 13633, 7, 76, 2, 2, 13633, 1816, 3, 2, 2, 2, 13634, 13635, 7, 80, 2, 2, 13635, 13636, 7, 78, 2, 2, 13636, 13637, 7, 76, 2, 2, 13637, 13638, 7, 97, 2, 2, 13638, 13639, 7, 68, 2, 2, 13639, 13640, 7, 67, 2, 2, 13640, 13641, 7, 86, 2, 2, 13641, 13642, 7, 69, 2, 2, 13642, 13643, 7, 74, 2, 2, 13643, 13644, 7, 75, 2, 2, 13644, 13645, 7, 80, 2, 2, 13645, 13646, 7, 73, 2, 2, 13646, 1818, 3, 2, 2, 2, 13647, 13648, 7, 80, 2, 2, 13648, 13649, 7, 78, 2, 2, 13649, 13650, 7, 76, 2, 2, 13650, 13651, 7, 97, 2, 2, 13651, 13652, 7, 75, 2, 2, 13652, 13653, 7, 80, 2, 2, 13653, 13654, 7, 70, 2, 2, 13654, 13655, 7, 71, 2, 2, 13655, 13656, 7, 90, 2, 2, 13656, 13657, 7, 97, 2, 2, 13657, 13658, 7, 72, 2, 2, 13658, 13659, 7, 75, 2, 2, 13659, 13660, 7, 78, 2, 2, 13660, 13661, 7, 86, 2, 2, 13661, 13662, 7, 71, 2, 2, 13662, 13663, 7, 84, 2, 2, 13663, 1820, 3, 2, 2, 2, 13664, 13665, 7, 80, 2, 2, 13665, 13666, 7, 78, 2, 2, 13666, 13667, 7, 76, 2, 2, 13667, 13668, 7, 97, 2, 2, 13668, 13669, 7, 75, 2, 2, 13669, 13670, 7, 80, 2, 2, 13670, 13671, 7, 70, 2, 2, 13671, 13672, 7, 71, 2, 2, 13672, 13673, 7, 90, 2, 2, 13673, 13674, 7, 97, 2, 2, 13674, 13675, 7, 85, 2, 2, 13675, 13676, 7, 69, 2, 2, 13676, 13677, 7, 67, 2, 2, 13677, 13678, 7, 80, 2, 2, 13678, 1822, 3, 2, 2, 2, 13679, 13680, 7, 80, 2, 2, 13680, 13681, 7, 78, 2, 2, 13681, 13682, 7, 76, 2, 2, 13682, 13683, 7, 97, 2, 2, 13683, 13684, 7, 82, 2, 2, 13684, 13685, 7, 84, 2, 2, 13685, 13686, 7, 71, 2, 2, 13686, 13687, 7, 72, 2, 2, 13687, 13688, 7, 71, 2, 2, 13688, 13689, 7, 86, 2, 2, 13689, 13690, 7, 69, 2, 2, 13690, 13691, 7, 74, 2, 2, 13691, 1824, 3, 2, 2, 2, 13692, 13693, 7, 80, 2, 2, 13693, 13694, 7, 78, 2, 2, 13694, 13695, 7, 85, 2, 2, 13695, 13696, 7, 97, 2, 2, 13696, 13697, 7, 69, 2, 2, 13697, 13698, 7, 67, 2, 2, 13698, 13699, 7, 78, 2, 2, 13699, 13700, 7, 71, 2, 2, 13700, 13701, 7, 80, 2, 2, 13701, 13702, 7, 70, 2, 2, 13702, 13703, 7, 67, 2, 2, 13703, 13704, 7, 84, 2, 2, 13704, 1826, 3, 2, 2, 2, 13705, 13706, 7, 80, 2, 2, 13706, 13707, 7, 78, 2, 2, 13707, 13708, 7, 85, 2, 2, 13708, 13709, 7, 97, 2, 2, 13709, 13710, 7, 69, 2, 2, 13710, 13711, 7, 74, 2, 2, 13711, 13712, 7, 67, 2, 2, 13712, 13713, 7, 84, 2, 2, 13713, 13714, 7, 67, 2, 2, 13714, 13715, 7, 69, 2, 2, 13715, 13716, 7, 86, 2, 2, 13716, 13717, 7, 71, 2, 2, 13717, 13718, 7, 84, 2, 2, 13718, 13719, 7, 85, 2, 2, 13719, 13720, 7, 71, 2, 2, 13720, 13721, 7, 86, 2, 2, 13721, 1828, 3, 2, 2, 2, 13722, 13723, 7, 80, 2, 2, 13723, 13724, 7, 78, 2, 2, 13724, 13725, 7, 85, 2, 2, 13725, 13726, 7, 97, 2, 2, 13726, 13727, 7, 69, 2, 2, 13727, 13728, 7, 74, 2, 2, 13728, 13729, 7, 67, 2, 2, 13729, 13730, 7, 84, 2, 2, 13730, 13731, 7, 85, 2, 2, 13731, 13732, 7, 71, 2, 2, 13732, 13733, 7, 86, 2, 2, 13733, 13734, 7, 97, 2, 2, 13734, 13735, 7, 70, 2, 2, 13735, 13736, 7, 71, 2, 2, 13736, 13737, 7, 69, 2, 2, 13737, 13738, 7, 78, 2, 2, 13738, 13739, 7, 97, 2, 2, 13739, 13740, 7, 78, 2, 2, 13740, 13741, 7, 71, 2, 2, 13741, 13742, 7, 80, 2, 2, 13742, 1830, 3, 2, 2, 2, 13743, 13744, 7, 80, 2, 2, 13744, 13745, 7, 78, 2, 2, 13745, 13746, 7, 85, 2, 2, 13746, 13747, 7, 97, 2, 2, 13747, 13748, 7, 69, 2, 2, 13748, 13749, 7, 74, 2, 2, 13749, 13750, 7, 67, 2, 2, 13750, 13751, 7, 84, 2, 2, 13751, 13752, 7, 85, 2, 2, 13752, 13753, 7, 71, 2, 2, 13753, 13754, 7, 86, 2, 2, 13754, 13755, 7, 97, 2, 2, 13755, 13756, 7, 75, 2, 2, 13756, 13757, 7, 70, 2, 2, 13757, 1832, 3, 2, 2, 2, 13758, 13759, 7, 80, 2, 2, 13759, 13760, 7, 78, 2, 2, 13760, 13761, 7, 85, 2, 2, 13761, 13762, 7, 97, 2, 2, 13762, 13763, 7, 69, 2, 2, 13763, 13764, 7, 74, 2, 2, 13764, 13765, 7, 67, 2, 2, 13765, 13766, 7, 84, 2, 2, 13766, 13767, 7, 85, 2, 2, 13767, 13768, 7, 71, 2, 2, 13768, 13769, 7, 86, 2, 2, 13769, 13770, 7, 97, 2, 2, 13770, 13771, 7, 80, 2, 2, 13771, 13772, 7, 67, 2, 2, 13772, 13773, 7, 79, 2, 2, 13773, 13774, 7, 71, 2, 2, 13774, 1834, 3, 2, 2, 2, 13775, 13776, 7, 80, 2, 2, 13776, 13777, 7, 78, 2, 2, 13777, 13778, 7, 85, 2, 2, 13778, 13779, 7, 97, 2, 2, 13779, 13780, 7, 69, 2, 2, 13780, 13781, 7, 81, 2, 2, 13781, 13782, 7, 79, 2, 2, 13782, 13783, 7, 82, 2, 2, 13783, 1836, 3, 2, 2, 2, 13784, 13785, 7, 80, 2, 2, 13785, 13786, 7, 78, 2, 2, 13786, 13787, 7, 85, 2, 2, 13787, 13788, 7, 97, 2, 2, 13788, 13789, 7, 69, 2, 2, 13789, 13790, 7, 87, 2, 2, 13790, 13791, 7, 84, 2, 2, 13791, 13792, 7, 84, 2, 2, 13792, 13793, 7, 71, 2, 2, 13793, 13794, 7, 80, 2, 2, 13794, 13795, 7, 69, 2, 2, 13795, 13796, 7, 91, 2, 2, 13796, 1838, 3, 2, 2, 2, 13797, 13798, 7, 80, 2, 2, 13798, 13799, 7, 78, 2, 2, 13799, 13800, 7, 85, 2, 2, 13800, 13801, 7, 97, 2, 2, 13801, 13802, 7, 70, 2, 2, 13802, 13803, 7, 67, 2, 2, 13803, 13804, 7, 86, 2, 2, 13804, 13805, 7, 71, 2, 2, 13805, 13806, 7, 97, 2, 2, 13806, 13807, 7, 72, 2, 2, 13807, 13808, 7, 81, 2, 2, 13808, 13809, 7, 84, 2, 2, 13809, 13810, 7, 79, 2, 2, 13810, 13811, 7, 67, 2, 2, 13811, 13812, 7, 86, 2, 2, 13812, 1840, 3, 2, 2, 2, 13813, 13814, 7, 80, 2, 2, 13814, 13815, 7, 78, 2, 2, 13815, 13816, 7, 85, 2, 2, 13816, 13817, 7, 97, 2, 2, 13817, 13818, 7, 70, 2, 2, 13818, 13819, 7, 67, 2, 2, 13819, 13820, 7, 86, 2, 2, 13820, 13821, 7, 71, 2, 2, 13821, 13822, 7, 97, 2, 2, 13822, 13823, 7, 78, 2, 2, 13823, 13824, 7, 67, 2, 2, 13824, 13825, 7, 80, 2, 2, 13825, 13826, 7, 73, 2, 2, 13826, 13827, 7, 87, 2, 2, 13827, 13828, 7, 67, 2, 2, 13828, 13829, 7, 73, 2, 2, 13829, 13830, 7, 71, 2, 2, 13830, 1842, 3, 2, 2, 2, 13831, 13832, 7, 80, 2, 2, 13832, 13833, 7, 78, 2, 2, 13833, 13834, 7, 85, 2, 2, 13834, 13835, 7, 97, 2, 2, 13835, 13836, 7, 75, 2, 2, 13836, 13837, 7, 80, 2, 2, 13837, 13838, 7, 75, 2, 2, 13838, 13839, 7, 86, 2, 2, 13839, 13840, 7, 69, 2, 2, 13840, 13841, 7, 67, 2, 2, 13841, 13842, 7, 82, 2, 2, 13842, 1844, 3, 2, 2, 2, 13843, 13844, 7, 80, 2, 2, 13844, 13845, 7, 78, 2, 2, 13845, 13846, 7, 85, 2, 2, 13846, 13847, 7, 97, 2, 2, 13847, 13848, 7, 75, 2, 2, 13848, 13849, 7, 85, 2, 2, 13849, 13850, 7, 81, 2, 2, 13850, 13851, 7, 97, 2, 2, 13851, 13852, 7, 69, 2, 2, 13852, 13853, 7, 87, 2, 2, 13853, 13854, 7, 84, 2, 2, 13854, 13855, 7, 84, 2, 2, 13855, 13856, 7, 71, 2, 2, 13856, 13857, 7, 80, 2, 2, 13857, 13858, 7, 69, 2, 2, 13858, 13859, 7, 91, 2, 2, 13859, 1846, 3, 2, 2, 2, 13860, 13861, 7, 80, 2, 2, 13861, 13862, 7, 78, 2, 2, 13862, 13863, 7, 97, 2, 2, 13863, 13864, 7, 85, 2, 2, 13864, 13865, 7, 76, 2, 2, 13865, 1848, 3, 2, 2, 2, 13866, 13867, 7, 80, 2, 2, 13867, 13868, 7, 78, 2, 2, 13868, 13869, 7, 85, 2, 2, 13869, 13870, 7, 97, 2, 2, 13870, 13871, 7, 78, 2, 2, 13871, 13872, 7, 67, 2, 2, 13872, 13873, 7, 80, 2, 2, 13873, 13874, 7, 73, 2, 2, 13874, 1850, 3, 2, 2, 2, 13875, 13876, 7, 80, 2, 2, 13876, 13877, 7, 78, 2, 2, 13877, 13878, 7, 85, 2, 2, 13878, 13879, 7, 97, 2, 2, 13879, 13880, 7, 78, 2, 2, 13880, 13881, 7, 67, 2, 2, 13881, 13882, 7, 80, 2, 2, 13882, 13883, 7, 73, 2, 2, 13883, 13884, 7, 87, 2, 2, 13884, 13885, 7, 67, 2, 2, 13885, 13886, 7, 73, 2, 2, 13886, 13887, 7, 71, 2, 2, 13887, 1852, 3, 2, 2, 2, 13888, 13889, 7, 80, 2, 2, 13889, 13890, 7, 78, 2, 2, 13890, 13891, 7, 85, 2, 2, 13891, 13892, 7, 97, 2, 2, 13892, 13893, 7, 78, 2, 2, 13893, 13894, 7, 71, 2, 2, 13894, 13895, 7, 80, 2, 2, 13895, 13896, 7, 73, 2, 2, 13896, 13897, 7, 86, 2, 2, 13897, 13898, 7, 74, 2, 2, 13898, 13899, 7, 97, 2, 2, 13899, 13900, 7, 85, 2, 2, 13900, 13901, 7, 71, 2, 2, 13901, 13902, 7, 79, 2, 2, 13902, 13903, 7, 67, 2, 2, 13903, 13904, 7, 80, 2, 2, 13904, 13905, 7, 86, 2, 2, 13905, 13906, 7, 75, 2, 2, 13906, 13907, 7, 69, 2, 2, 13907, 13908, 7, 85, 2, 2, 13908, 1854, 3, 2, 2, 2, 13909, 13910, 7, 80, 2, 2, 13910, 13911, 7, 78, 2, 2, 13911, 13912, 7, 85, 2, 2, 13912, 13913, 7, 97, 2, 2, 13913, 13914, 7, 78, 2, 2, 13914, 13915, 7, 81, 2, 2, 13915, 13916, 7, 89, 2, 2, 13916, 13917, 7, 71, 2, 2, 13917, 13918, 7, 84, 2, 2, 13918, 1856, 3, 2, 2, 2, 13919, 13920, 7, 80, 2, 2, 13920, 13921, 7, 78, 2, 2, 13921, 13922, 7, 85, 2, 2, 13922, 13923, 7, 97, 2, 2, 13923, 13924, 7, 80, 2, 2, 13924, 13925, 7, 69, 2, 2, 13925, 13926, 7, 74, 2, 2, 13926, 13927, 7, 67, 2, 2, 13927, 13928, 7, 84, 2, 2, 13928, 13929, 7, 97, 2, 2, 13929, 13930, 7, 69, 2, 2, 13930, 13931, 7, 81, 2, 2, 13931, 13932, 7, 80, 2, 2, 13932, 13933, 7, 88, 2, 2, 13933, 13934, 7, 97, 2, 2, 13934, 13935, 7, 71, 2, 2, 13935, 13936, 7, 90, 2, 2, 13936, 13937, 7, 69, 2, 2, 13937, 13938, 7, 82, 2, 2, 13938, 1858, 3, 2, 2, 2, 13939, 13940, 7, 80, 2, 2, 13940, 13941, 7, 78, 2, 2, 13941, 13942, 7, 85, 2, 2, 13942, 13943, 7, 97, 2, 2, 13943, 13944, 7, 80, 2, 2, 13944, 13945, 7, 87, 2, 2, 13945, 13946, 7, 79, 2, 2, 13946, 13947, 7, 71, 2, 2, 13947, 13948, 7, 84, 2, 2, 13948, 13949, 7, 75, 2, 2, 13949, 13950, 7, 69, 2, 2, 13950, 13951, 7, 97, 2, 2, 13951, 13952, 7, 69, 2, 2, 13952, 13953, 7, 74, 2, 2, 13953, 13954, 7, 67, 2, 2, 13954, 13955, 7, 84, 2, 2, 13955, 13956, 7, 67, 2, 2, 13956, 13957, 7, 69, 2, 2, 13957, 13958, 7, 86, 2, 2, 13958, 13959, 7, 71, 2, 2, 13959, 13960, 7, 84, 2, 2, 13960, 13961, 7, 85, 2, 2, 13961, 1860, 3, 2, 2, 2, 13962, 13963, 7, 80, 2, 2, 13963, 13964, 7, 78, 2, 2, 13964, 13965, 7, 85, 2, 2, 13965, 13966, 7, 97, 2, 2, 13966, 13967, 7, 85, 2, 2, 13967, 13968, 7, 81, 2, 2, 13968, 13969, 7, 84, 2, 2, 13969, 13970, 7, 86, 2, 2, 13970, 1862, 3, 2, 2, 2, 13971, 13972, 7, 80, 2, 2, 13972, 13973, 7, 78, 2, 2, 13973, 13974, 7, 85, 2, 2, 13974, 13975, 7, 85, 2, 2, 13975, 13976, 7, 81, 2, 2, 13976, 13977, 7, 84, 2, 2, 13977, 13978, 7, 86, 2, 2, 13978, 1864, 3, 2, 2, 2, 13979, 13980, 7, 80, 2, 2, 13980, 13981, 7, 78, 2, 2, 13981, 13982, 7, 85, 2, 2, 13982, 13983, 7, 97, 2, 2, 13983, 13984, 7, 85, 2, 2, 13984, 13985, 7, 82, 2, 2, 13985, 13986, 7, 71, 2, 2, 13986, 13987, 7, 69, 2, 2, 13987, 13988, 7, 75, 2, 2, 13988, 13989, 7, 67, 2, 2, 13989, 13990, 7, 78, 2, 2, 13990, 13991, 7, 97, 2, 2, 13991, 13992, 7, 69, 2, 2, 13992, 13993, 7, 74, 2, 2, 13993, 13994, 7, 67, 2, 2, 13994, 13995, 7, 84, 2, 2, 13995, 13996, 7, 85, 2, 2, 13996, 1866, 3, 2, 2, 2, 13997, 13998, 7, 80, 2, 2, 13998, 13999, 7, 78, 2, 2, 13999, 14000, 7, 85, 2, 2, 14000, 14001, 7, 97, 2, 2, 14001, 14002, 7, 86, 2, 2, 14002, 14003, 7, 71, 2, 2, 14003, 14004, 7, 84, 2, 2, 14004, 14005, 7, 84, 2, 2, 14005, 14006, 7, 75, 2, 2, 14006, 14007, 7, 86, 2, 2, 14007, 14008, 7, 81, 2, 2, 14008, 14009, 7, 84, 2, 2, 14009, 14010, 7, 91, 2, 2, 14010, 1868, 3, 2, 2, 2, 14011, 14012, 7, 80, 2, 2, 14012, 14013, 7, 78, 2, 2, 14013, 14014, 7, 85, 2, 2, 14014, 14015, 7, 97, 2, 2, 14015, 14016, 7, 87, 2, 2, 14016, 14017, 7, 82, 2, 2, 14017, 14018, 7, 82, 2, 2, 14018, 14019, 7, 71, 2, 2, 14019, 14020, 7, 84, 2, 2, 14020, 1870, 3, 2, 2, 2, 14021, 14022, 7, 80, 2, 2, 14022, 14023, 7, 81, 2, 2, 14023, 14024, 7, 97, 2, 2, 14024, 14025, 7, 67, 2, 2, 14025, 14026, 7, 69, 2, 2, 14026, 14027, 7, 69, 2, 2, 14027, 14028, 7, 71, 2, 2, 14028, 14029, 7, 85, 2, 2, 14029, 14030, 7, 85, 2, 2, 14030, 1872, 3, 2, 2, 2, 14031, 14032, 7, 80, 2, 2, 14032, 14033, 7, 81, 2, 2, 14033, 14034, 7, 97, 2, 2, 14034, 14035, 7, 67, 2, 2, 14035, 14036, 7, 70, 2, 2, 14036, 14037, 7, 67, 2, 2, 14037, 14038, 7, 82, 2, 2, 14038, 14039, 7, 86, 2, 2, 14039, 14040, 7, 75, 2, 2, 14040, 14041, 7, 88, 2, 2, 14041, 14042, 7, 71, 2, 2, 14042, 14043, 7, 97, 2, 2, 14043, 14044, 7, 82, 2, 2, 14044, 14045, 7, 78, 2, 2, 14045, 14046, 7, 67, 2, 2, 14046, 14047, 7, 80, 2, 2, 14047, 1874, 3, 2, 2, 2, 14048, 14049, 7, 80, 2, 2, 14049, 14050, 7, 81, 2, 2, 14050, 14051, 7, 97, 2, 2, 14051, 14052, 7, 67, 2, 2, 14052, 14053, 7, 80, 2, 2, 14053, 14054, 7, 85, 2, 2, 14054, 14055, 7, 75, 2, 2, 14055, 14056, 7, 97, 2, 2, 14056, 14057, 7, 84, 2, 2, 14057, 14058, 7, 71, 2, 2, 14058, 14059, 7, 67, 2, 2, 14059, 14060, 7, 84, 2, 2, 14060, 14061, 7, 69, 2, 2, 14061, 14062, 7, 74, 2, 2, 14062, 1876, 3, 2, 2, 2, 14063, 14064, 7, 80, 2, 2, 14064, 14065, 7, 81, 2, 2, 14065, 14066, 7, 67, 2, 2, 14066, 14067, 7, 82, 2, 2, 14067, 14068, 7, 82, 2, 2, 14068, 14069, 7, 71, 2, 2, 14069, 14070, 7, 80, 2, 2, 14070, 14071, 7, 70, 2, 2, 14071, 1878, 3, 2, 2, 2, 14072, 14073, 7, 80, 2, 2, 14073, 14074, 7, 81, 2, 2, 14074, 14075, 7, 67, 2, 2, 14075, 14076, 7, 84, 2, 2, 14076, 14077, 7, 69, 2, 2, 14077, 14078, 7, 74, 2, 2, 14078, 14079, 7, 75, 2, 2, 14079, 14080, 7, 88, 2, 2, 14080, 14081, 7, 71, 2, 2, 14081, 14082, 7, 78, 2, 2, 14082, 14083, 7, 81, 2, 2, 14083, 14084, 7, 73, 2, 2, 14084, 1880, 3, 2, 2, 2, 14085, 14086, 7, 80, 2, 2, 14086, 14087, 7, 81, 2, 2, 14087, 14088, 7, 67, 2, 2, 14088, 14089, 7, 87, 2, 2, 14089, 14090, 7, 70, 2, 2, 14090, 14091, 7, 75, 2, 2, 14091, 14092, 7, 86, 2, 2, 14092, 1882, 3, 2, 2, 2, 14093, 14094, 7, 80, 2, 2, 14094, 14095, 7, 81, 2, 2, 14095, 14096, 7, 97, 2, 2, 14096, 14097, 7, 67, 2, 2, 14097, 14098, 7, 87, 2, 2, 14098, 14099, 7, 86, 2, 2, 14099, 14100, 7, 81, 2, 2, 14100, 14101, 7, 97, 2, 2, 14101, 14102, 7, 84, 2, 2, 14102, 14103, 7, 71, 2, 2, 14103, 14104, 7, 81, 2, 2, 14104, 14105, 7, 82, 2, 2, 14105, 14106, 7, 86, 2, 2, 14106, 14107, 7, 75, 2, 2, 14107, 14108, 7, 79, 2, 2, 14108, 14109, 7, 75, 2, 2, 14109, 14110, 7, 92, 2, 2, 14110, 14111, 7, 71, 2, 2, 14111, 1884, 3, 2, 2, 2, 14112, 14113, 7, 80, 2, 2, 14113, 14114, 7, 81, 2, 2, 14114, 14115, 7, 97, 2, 2, 14115, 14116, 7, 68, 2, 2, 14116, 14117, 7, 67, 2, 2, 14117, 14118, 7, 85, 2, 2, 14118, 14119, 7, 71, 2, 2, 14119, 14120, 7, 86, 2, 2, 14120, 14121, 7, 67, 2, 2, 14121, 14122, 7, 68, 2, 2, 14122, 14123, 7, 78, 2, 2, 14123, 14124, 7, 71, 2, 2, 14124, 14125, 7, 97, 2, 2, 14125, 14126, 7, 79, 2, 2, 14126, 14127, 7, 87, 2, 2, 14127, 14128, 7, 78, 2, 2, 14128, 14129, 7, 86, 2, 2, 14129, 14130, 7, 75, 2, 2, 14130, 14131, 7, 79, 2, 2, 14131, 14132, 7, 88, 2, 2, 14132, 14133, 7, 97, 2, 2, 14133, 14134, 7, 84, 2, 2, 14134, 14135, 7, 71, 2, 2, 14135, 14136, 7, 89, 2, 2, 14136, 14137, 7, 84, 2, 2, 14137, 14138, 7, 75, 2, 2, 14138, 14139, 7, 86, 2, 2, 14139, 14140, 7, 71, 2, 2, 14140, 1886, 3, 2, 2, 2, 14141, 14142, 7, 80, 2, 2, 14142, 14143, 7, 81, 2, 2, 14143, 14144, 7, 97, 2, 2, 14144, 14145, 7, 68, 2, 2, 14145, 14146, 7, 67, 2, 2, 14146, 14147, 7, 86, 2, 2, 14147, 14148, 7, 69, 2, 2, 14148, 14149, 7, 74, 2, 2, 14149, 14150, 7, 97, 2, 2, 14150, 14151, 7, 86, 2, 2, 14151, 14152, 7, 67, 2, 2, 14152, 14153, 7, 68, 2, 2, 14153, 14154, 7, 78, 2, 2, 14154, 14155, 7, 71, 2, 2, 14155, 14156, 7, 97, 2, 2, 14156, 14157, 7, 67, 2, 2, 14157, 14158, 7, 69, 2, 2, 14158, 14159, 7, 69, 2, 2, 14159, 14160, 7, 71, 2, 2, 14160, 14161, 7, 85, 2, 2, 14161, 14162, 7, 85, 2, 2, 14162, 14163, 7, 97, 2, 2, 14163, 14164, 7, 68, 2, 2, 14164, 14165, 7, 91, 2, 2, 14165, 14166, 7, 97, 2, 2, 14166, 14167, 7, 84, 2, 2, 14167, 14168, 7, 81, 2, 2, 14168, 14169, 7, 89, 2, 2, 14169, 14170, 7, 75, 2, 2, 14170, 14171, 7, 70, 2, 2, 14171, 1888, 3, 2, 2, 2, 14172, 14173, 7, 80, 2, 2, 14173, 14174, 7, 81, 2, 2, 14174, 14175, 7, 97, 2, 2, 14175, 14176, 7, 68, 2, 2, 14176, 14177, 7, 75, 2, 2, 14177, 14178, 7, 80, 2, 2, 14178, 14179, 7, 70, 2, 2, 14179, 14180, 7, 97, 2, 2, 14180, 14181, 7, 67, 2, 2, 14181, 14182, 7, 89, 2, 2, 14182, 14183, 7, 67, 2, 2, 14183, 14184, 7, 84, 2, 2, 14184, 14185, 7, 71, 2, 2, 14185, 1890, 3, 2, 2, 2, 14186, 14187, 7, 80, 2, 2, 14187, 14188, 7, 81, 2, 2, 14188, 14189, 7, 97, 2, 2, 14189, 14190, 7, 68, 2, 2, 14190, 14191, 7, 87, 2, 2, 14191, 14192, 7, 72, 2, 2, 14192, 14193, 7, 72, 2, 2, 14193, 14194, 7, 71, 2, 2, 14194, 14195, 7, 84, 2, 2, 14195, 1892, 3, 2, 2, 2, 14196, 14197, 7, 80, 2, 2, 14197, 14198, 7, 81, 2, 2, 14198, 14199, 7, 69, 2, 2, 14199, 14200, 7, 67, 2, 2, 14200, 14201, 7, 69, 2, 2, 14201, 14202, 7, 74, 2, 2, 14202, 14203, 7, 71, 2, 2, 14203, 1894, 3, 2, 2, 2, 14204, 14205, 7, 80, 2, 2, 14205, 14206, 7, 81, 2, 2, 14206, 14207, 7, 97, 2, 2, 14207, 14208, 7, 69, 2, 2, 14208, 14209, 7, 67, 2, 2, 14209, 14210, 7, 84, 2, 2, 14210, 14211, 7, 86, 2, 2, 14211, 14212, 7, 71, 2, 2, 14212, 14213, 7, 85, 2, 2, 14213, 14214, 7, 75, 2, 2, 14214, 14215, 7, 67, 2, 2, 14215, 14216, 7, 80, 2, 2, 14216, 1896, 3, 2, 2, 2, 14217, 14218, 7, 80, 2, 2, 14218, 14219, 7, 81, 2, 2, 14219, 14220, 7, 97, 2, 2, 14220, 14221, 7, 69, 2, 2, 14221, 14222, 7, 74, 2, 2, 14222, 14223, 7, 71, 2, 2, 14223, 14224, 7, 69, 2, 2, 14224, 14225, 7, 77, 2, 2, 14225, 14226, 7, 97, 2, 2, 14226, 14227, 7, 67, 2, 2, 14227, 14228, 7, 69, 2, 2, 14228, 14229, 7, 78, 2, 2, 14229, 14230, 7, 97, 2, 2, 14230, 14231, 7, 84, 2, 2, 14231, 14232, 7, 71, 2, 2, 14232, 14233, 7, 89, 2, 2, 14233, 14234, 7, 84, 2, 2, 14234, 14235, 7, 75, 2, 2, 14235, 14236, 7, 86, 2, 2, 14236, 14237, 7, 71, 2, 2, 14237, 1898, 3, 2, 2, 2, 14238, 14239, 7, 80, 2, 2, 14239, 14240, 7, 81, 2, 2, 14240, 14241, 7, 97, 2, 2, 14241, 14242, 7, 69, 2, 2, 14242, 14243, 7, 78, 2, 2, 14243, 14244, 7, 87, 2, 2, 14244, 14245, 7, 85, 2, 2, 14245, 14246, 7, 86, 2, 2, 14246, 14247, 7, 71, 2, 2, 14247, 14248, 7, 84, 2, 2, 14248, 14249, 7, 97, 2, 2, 14249, 14250, 7, 68, 2, 2, 14250, 14251, 7, 91, 2, 2, 14251, 14252, 7, 97, 2, 2, 14252, 14253, 7, 84, 2, 2, 14253, 14254, 7, 81, 2, 2, 14254, 14255, 7, 89, 2, 2, 14255, 14256, 7, 75, 2, 2, 14256, 14257, 7, 70, 2, 2, 14257, 1900, 3, 2, 2, 2, 14258, 14259, 7, 80, 2, 2, 14259, 14260, 7, 81, 2, 2, 14260, 14261, 7, 97, 2, 2, 14261, 14262, 7, 69, 2, 2, 14262, 14263, 7, 78, 2, 2, 14263, 14264, 7, 87, 2, 2, 14264, 14265, 7, 85, 2, 2, 14265, 14266, 7, 86, 2, 2, 14266, 14267, 7, 71, 2, 2, 14267, 14268, 7, 84, 2, 2, 14268, 14269, 7, 75, 2, 2, 14269, 14270, 7, 80, 2, 2, 14270, 14271, 7, 73, 2, 2, 14271, 1902, 3, 2, 2, 2, 14272, 14273, 7, 80, 2, 2, 14273, 14274, 7, 81, 2, 2, 14274, 14275, 7, 97, 2, 2, 14275, 14276, 7, 69, 2, 2, 14276, 14277, 7, 81, 2, 2, 14277, 14278, 7, 67, 2, 2, 14278, 14279, 7, 78, 2, 2, 14279, 14280, 7, 71, 2, 2, 14280, 14281, 7, 85, 2, 2, 14281, 14282, 7, 69, 2, 2, 14282, 14283, 7, 71, 2, 2, 14283, 14284, 7, 97, 2, 2, 14284, 14285, 7, 85, 2, 2, 14285, 14286, 7, 83, 2, 2, 14286, 1904, 3, 2, 2, 2, 14287, 14288, 7, 80, 2, 2, 14288, 14289, 7, 81, 2, 2, 14289, 14290, 7, 97, 2, 2, 14290, 14291, 7, 69, 2, 2, 14291, 14292, 7, 81, 2, 2, 14292, 14293, 7, 79, 2, 2, 14293, 14294, 7, 79, 2, 2, 14294, 14295, 7, 81, 2, 2, 14295, 14296, 7, 80, 2, 2, 14296, 14297, 7, 97, 2, 2, 14297, 14298, 7, 70, 2, 2, 14298, 14299, 7, 67, 2, 2, 14299, 14300, 7, 86, 2, 2, 14300, 14301, 7, 67, 2, 2, 14301, 1906, 3, 2, 2, 2, 14302, 14303, 7, 80, 2, 2, 14303, 14304, 7, 81, 2, 2, 14304, 14305, 7, 69, 2, 2, 14305, 14306, 7, 81, 2, 2, 14306, 14307, 7, 79, 2, 2, 14307, 14308, 7, 82, 2, 2, 14308, 14309, 7, 84, 2, 2, 14309, 14310, 7, 71, 2, 2, 14310, 14311, 7, 85, 2, 2, 14311, 14312, 7, 85, 2, 2, 14312, 1908, 3, 2, 2, 2, 14313, 14314, 7, 80, 2, 2, 14314, 14315, 7, 81, 2, 2, 14315, 14316, 7, 97, 2, 2, 14316, 14317, 7, 69, 2, 2, 14317, 14318, 7, 81, 2, 2, 14318, 14319, 7, 80, 2, 2, 14319, 14320, 7, 80, 2, 2, 14320, 14321, 7, 71, 2, 2, 14321, 14322, 7, 69, 2, 2, 14322, 14323, 7, 86, 2, 2, 14323, 14324, 7, 97, 2, 2, 14324, 14325, 7, 68, 2, 2, 14325, 14326, 7, 91, 2, 2, 14326, 14327, 7, 97, 2, 2, 14327, 14328, 7, 69, 2, 2, 14328, 14329, 7, 68, 2, 2, 14329, 14330, 7, 97, 2, 2, 14330, 14331, 7, 89, 2, 2, 14331, 14332, 7, 74, 2, 2, 14332, 14333, 7, 84, 2, 2, 14333, 14334, 7, 97, 2, 2, 14334, 14335, 7, 81, 2, 2, 14335, 14336, 7, 80, 2, 2, 14336, 14337, 7, 78, 2, 2, 14337, 14338, 7, 91, 2, 2, 14338, 1910, 3, 2, 2, 2, 14339, 14340, 7, 80, 2, 2, 14340, 14341, 7, 81, 2, 2, 14341, 14342, 7, 97, 2, 2, 14342, 14343, 7, 69, 2, 2, 14343, 14344, 7, 81, 2, 2, 14344, 14345, 7, 80, 2, 2, 14345, 14346, 7, 80, 2, 2, 14346, 14347, 7, 71, 2, 2, 14347, 14348, 7, 69, 2, 2, 14348, 14349, 7, 86, 2, 2, 14349, 14350, 7, 97, 2, 2, 14350, 14351, 7, 68, 2, 2, 14351, 14352, 7, 91, 2, 2, 14352, 14353, 7, 97, 2, 2, 14353, 14354, 7, 69, 2, 2, 14354, 14355, 7, 81, 2, 2, 14355, 14356, 7, 79, 2, 2, 14356, 14357, 7, 68, 2, 2, 14357, 14358, 7, 75, 2, 2, 14358, 14359, 7, 80, 2, 2, 14359, 14360, 7, 71, 2, 2, 14360, 14361, 7, 97, 2, 2, 14361, 14362, 7, 85, 2, 2, 14362, 14363, 7, 89, 2, 2, 14363, 1912, 3, 2, 2, 2, 14364, 14365, 7, 80, 2, 2, 14365, 14366, 7, 81, 2, 2, 14366, 14367, 7, 97, 2, 2, 14367, 14368, 7, 69, 2, 2, 14368, 14369, 7, 81, 2, 2, 14369, 14370, 7, 80, 2, 2, 14370, 14371, 7, 80, 2, 2, 14371, 14372, 7, 71, 2, 2, 14372, 14373, 7, 69, 2, 2, 14373, 14374, 7, 86, 2, 2, 14374, 14375, 7, 97, 2, 2, 14375, 14376, 7, 68, 2, 2, 14376, 14377, 7, 91, 2, 2, 14377, 14378, 7, 97, 2, 2, 14378, 14379, 7, 69, 2, 2, 14379, 14380, 7, 81, 2, 2, 14380, 14381, 7, 85, 2, 2, 14381, 14382, 7, 86, 2, 2, 14382, 14383, 7, 97, 2, 2, 14383, 14384, 7, 68, 2, 2, 14384, 14385, 7, 67, 2, 2, 14385, 14386, 7, 85, 2, 2, 14386, 14387, 7, 71, 2, 2, 14387, 14388, 7, 70, 2, 2, 14388, 1914, 3, 2, 2, 2, 14389, 14390, 7, 80, 2, 2, 14390, 14391, 7, 81, 2, 2, 14391, 14392, 7, 97, 2, 2, 14392, 14393, 7, 69, 2, 2, 14393, 14394, 7, 81, 2, 2, 14394, 14395, 7, 80, 2, 2, 14395, 14396, 7, 80, 2, 2, 14396, 14397, 7, 71, 2, 2, 14397, 14398, 7, 69, 2, 2, 14398, 14399, 7, 86, 2, 2, 14399, 14400, 7, 97, 2, 2, 14400, 14401, 7, 68, 2, 2, 14401, 14402, 7, 91, 2, 2, 14402, 14403, 7, 97, 2, 2, 14403, 14404, 7, 71, 2, 2, 14404, 14405, 7, 78, 2, 2, 14405, 14406, 7, 75, 2, 2, 14406, 14407, 7, 79, 2, 2, 14407, 14408, 7, 97, 2, 2, 14408, 14409, 7, 70, 2, 2, 14409, 14410, 7, 87, 2, 2, 14410, 14411, 7, 82, 2, 2, 14411, 14412, 7, 85, 2, 2, 14412, 1916, 3, 2, 2, 2, 14413, 14414, 7, 80, 2, 2, 14414, 14415, 7, 81, 2, 2, 14415, 14416, 7, 97, 2, 2, 14416, 14417, 7, 69, 2, 2, 14417, 14418, 7, 81, 2, 2, 14418, 14419, 7, 80, 2, 2, 14419, 14420, 7, 80, 2, 2, 14420, 14421, 7, 71, 2, 2, 14421, 14422, 7, 69, 2, 2, 14422, 14423, 7, 86, 2, 2, 14423, 14424, 7, 97, 2, 2, 14424, 14425, 7, 68, 2, 2, 14425, 14426, 7, 91, 2, 2, 14426, 14427, 7, 97, 2, 2, 14427, 14428, 7, 72, 2, 2, 14428, 14429, 7, 75, 2, 2, 14429, 14430, 7, 78, 2, 2, 14430, 14431, 7, 86, 2, 2, 14431, 14432, 7, 71, 2, 2, 14432, 14433, 7, 84, 2, 2, 14433, 14434, 7, 75, 2, 2, 14434, 14435, 7, 80, 2, 2, 14435, 14436, 7, 73, 2, 2, 14436, 1918, 3, 2, 2, 2, 14437, 14438, 7, 80, 2, 2, 14438, 14439, 7, 81, 2, 2, 14439, 14440, 7, 69, 2, 2, 14440, 14441, 7, 81, 2, 2, 14441, 14442, 7, 82, 2, 2, 14442, 14443, 7, 91, 2, 2, 14443, 1920, 3, 2, 2, 2, 14444, 14445, 7, 80, 2, 2, 14445, 14446, 7, 81, 2, 2, 14446, 14447, 7, 97, 2, 2, 14447, 14448, 7, 69, 2, 2, 14448, 14449, 7, 81, 2, 2, 14449, 14450, 7, 85, 2, 2, 14450, 14451, 7, 86, 2, 2, 14451, 14452, 7, 97, 2, 2, 14452, 14453, 7, 90, 2, 2, 14453, 14454, 7, 79, 2, 2, 14454, 14455, 7, 78, 2, 2, 14455, 14456, 7, 97, 2, 2, 14456, 14457, 7, 83, 2, 2, 14457, 14458, 7, 87, 2, 2, 14458, 14459, 7, 71, 2, 2, 14459, 14460, 7, 84, 2, 2, 14460, 14461, 7, 91, 2, 2, 14461, 14462, 7, 97, 2, 2, 14462, 14463, 7, 84, 2, 2, 14463, 14464, 7, 71, 2, 2, 14464, 14465, 7, 89, 2, 2, 14465, 14466, 7, 84, 2, 2, 14466, 14467, 7, 75, 2, 2, 14467, 14468, 7, 86, 2, 2, 14468, 14469, 7, 71, 2, 2, 14469, 1922, 3, 2, 2, 2, 14470, 14471, 7, 80, 2, 2, 14471, 14472, 7, 81, 2, 2, 14472, 14473, 7, 97, 2, 2, 14473, 14474, 7, 69, 2, 2, 14474, 14475, 7, 82, 2, 2, 14475, 14476, 7, 87, 2, 2, 14476, 14477, 7, 97, 2, 2, 14477, 14478, 7, 69, 2, 2, 14478, 14479, 7, 81, 2, 2, 14479, 14480, 7, 85, 2, 2, 14480, 14481, 7, 86, 2, 2, 14481, 14482, 7, 75, 2, 2, 14482, 14483, 7, 80, 2, 2, 14483, 14484, 7, 73, 2, 2, 14484, 1924, 3, 2, 2, 2, 14485, 14486, 7, 80, 2, 2, 14486, 14487, 7, 81, 2, 2, 14487, 14488, 7, 69, 2, 2, 14488, 14489, 7, 82, 2, 2, 14489, 14490, 7, 87, 2, 2, 14490, 14491, 7, 97, 2, 2, 14491, 14492, 7, 69, 2, 2, 14492, 14493, 7, 81, 2, 2, 14493, 14494, 7, 85, 2, 2, 14494, 14495, 7, 86, 2, 2, 14495, 14496, 7, 75, 2, 2, 14496, 14497, 7, 80, 2, 2, 14497, 14498, 7, 73, 2, 2, 14498, 1926, 3, 2, 2, 2, 14499, 14500, 7, 80, 2, 2, 14500, 14501, 7, 81, 2, 2, 14501, 14502, 7, 69, 2, 2, 14502, 14503, 7, 91, 2, 2, 14503, 14504, 7, 69, 2, 2, 14504, 14505, 7, 78, 2, 2, 14505, 14506, 7, 71, 2, 2, 14506, 1928, 3, 2, 2, 2, 14507, 14508, 7, 80, 2, 2, 14508, 14509, 7, 81, 2, 2, 14509, 14510, 7, 97, 2, 2, 14510, 14511, 7, 70, 2, 2, 14511, 14512, 7, 67, 2, 2, 14512, 14513, 7, 86, 2, 2, 14513, 14514, 7, 67, 2, 2, 14514, 14515, 7, 97, 2, 2, 14515, 14516, 7, 85, 2, 2, 14516, 14517, 7, 71, 2, 2, 14517, 14518, 7, 69, 2, 2, 14518, 14519, 7, 87, 2, 2, 14519, 14520, 7, 84, 2, 2, 14520, 14521, 7, 75, 2, 2, 14521, 14522, 7, 86, 2, 2, 14522, 14523, 7, 91, 2, 2, 14523, 14524, 7, 97, 2, 2, 14524, 14525, 7, 84, 2, 2, 14525, 14526, 7, 71, 2, 2, 14526, 14527, 7, 89, 2, 2, 14527, 14528, 7, 84, 2, 2, 14528, 14529, 7, 75, 2, 2, 14529, 14530, 7, 86, 2, 2, 14530, 14531, 7, 71, 2, 2, 14531, 1930, 3, 2, 2, 2, 14532, 14533, 7, 80, 2, 2, 14533, 14534, 7, 81, 2, 2, 14534, 14535, 7, 97, 2, 2, 14535, 14536, 7, 70, 2, 2, 14536, 14537, 7, 71, 2, 2, 14537, 14538, 7, 69, 2, 2, 14538, 14539, 7, 81, 2, 2, 14539, 14540, 7, 84, 2, 2, 14540, 14541, 7, 84, 2, 2, 14541, 14542, 7, 71, 2, 2, 14542, 14543, 7, 78, 2, 2, 14543, 14544, 7, 67, 2, 2, 14544, 14545, 7, 86, 2, 2, 14545, 14546, 7, 71, 2, 2, 14546, 1932, 3, 2, 2, 2, 14547, 14548, 7, 80, 2, 2, 14548, 14549, 7, 81, 2, 2, 14549, 14550, 7, 70, 2, 2, 14550, 14551, 7, 71, 2, 2, 14551, 14552, 7, 78, 2, 2, 14552, 14553, 7, 67, 2, 2, 14553, 14554, 7, 91, 2, 2, 14554, 1934, 3, 2, 2, 2, 14555, 14556, 7, 80, 2, 2, 14556, 14557, 7, 81, 2, 2, 14557, 14558, 7, 97, 2, 2, 14558, 14559, 7, 70, 2, 2, 14559, 14560, 7, 81, 2, 2, 14560, 14561, 7, 79, 2, 2, 14561, 14562, 7, 67, 2, 2, 14562, 14563, 7, 75, 2, 2, 14563, 14564, 7, 80, 2, 2, 14564, 14565, 7, 97, 2, 2, 14565, 14566, 7, 75, 2, 2, 14566, 14567, 7, 80, 2, 2, 14567, 14568, 7, 70, 2, 2, 14568, 14569, 7, 71, 2, 2, 14569, 14570, 7, 90, 2, 2, 14570, 14571, 7, 97, 2, 2, 14571, 14572, 7, 72, 2, 2, 14572, 14573, 7, 75, 2, 2, 14573, 14574, 7, 78, 2, 2, 14574, 14575, 7, 86, 2, 2, 14575, 14576, 7, 71, 2, 2, 14576, 14577, 7, 84, 2, 2, 14577, 1936, 3, 2, 2, 2, 14578, 14579, 7, 80, 2, 2, 14579, 14580, 7, 81, 2, 2, 14580, 14581, 7, 97, 2, 2, 14581, 14582, 7, 70, 2, 2, 14582, 14583, 7, 85, 2, 2, 14583, 14584, 7, 86, 2, 2, 14584, 14585, 7, 97, 2, 2, 14585, 14586, 7, 87, 2, 2, 14586, 14587, 7, 82, 2, 2, 14587, 14588, 7, 73, 2, 2, 14588, 14589, 7, 84, 2, 2, 14589, 14590, 7, 67, 2, 2, 14590, 14591, 7, 70, 2, 2, 14591, 14592, 7, 71, 2, 2, 14592, 14593, 7, 97, 2, 2, 14593, 14594, 7, 75, 2, 2, 14594, 14595, 7, 80, 2, 2, 14595, 14596, 7, 85, 2, 2, 14596, 14597, 7, 71, 2, 2, 14597, 14598, 7, 84, 2, 2, 14598, 14599, 7, 86, 2, 2, 14599, 14600, 7, 97, 2, 2, 14600, 14601, 7, 69, 2, 2, 14601, 14602, 7, 81, 2, 2, 14602, 14603, 7, 80, 2, 2, 14603, 14604, 7, 88, 2, 2, 14604, 1938, 3, 2, 2, 2, 14605, 14606, 7, 80, 2, 2, 14606, 14607, 7, 81, 2, 2, 14607, 14608, 7, 97, 2, 2, 14608, 14609, 7, 71, 2, 2, 14609, 14610, 7, 78, 2, 2, 14610, 14611, 7, 75, 2, 2, 14611, 14612, 7, 79, 2, 2, 14612, 14613, 7, 97, 2, 2, 14613, 14614, 7, 73, 2, 2, 14614, 14615, 7, 84, 2, 2, 14615, 14616, 7, 81, 2, 2, 14616, 14617, 7, 87, 2, 2, 14617, 14618, 7, 82, 2, 2, 14618, 14619, 7, 68, 2, 2, 14619, 14620, 7, 91, 2, 2, 14620, 1940, 3, 2, 2, 2, 14621, 14622, 7, 80, 2, 2, 14622, 14623, 7, 81, 2, 2, 14623, 14624, 7, 97, 2, 2, 14624, 14625, 7, 71, 2, 2, 14625, 14626, 7, 78, 2, 2, 14626, 14627, 7, 75, 2, 2, 14627, 14628, 7, 79, 2, 2, 14628, 14629, 7, 75, 2, 2, 14629, 14630, 7, 80, 2, 2, 14630, 14631, 7, 67, 2, 2, 14631, 14632, 7, 86, 2, 2, 14632, 14633, 7, 71, 2, 2, 14633, 14634, 7, 97, 2, 2, 14634, 14635, 7, 76, 2, 2, 14635, 14636, 7, 81, 2, 2, 14636, 14637, 7, 75, 2, 2, 14637, 14638, 7, 80, 2, 2, 14638, 1942, 3, 2, 2, 2, 14639, 14640, 7, 80, 2, 2, 14640, 14641, 7, 81, 2, 2, 14641, 14642, 7, 97, 2, 2, 14642, 14643, 7, 71, 2, 2, 14643, 14644, 7, 78, 2, 2, 14644, 14645, 7, 75, 2, 2, 14645, 14646, 7, 79, 2, 2, 14646, 14647, 7, 75, 2, 2, 14647, 14648, 7, 80, 2, 2, 14648, 14649, 7, 67, 2, 2, 14649, 14650, 7, 86, 2, 2, 14650, 14651, 7, 71, 2, 2, 14651, 14652, 7, 97, 2, 2, 14652, 14653, 7, 81, 2, 2, 14653, 14654, 7, 68, 2, 2, 14654, 14655, 7, 91, 2, 2, 14655, 1944, 3, 2, 2, 2, 14656, 14657, 7, 80, 2, 2, 14657, 14658, 7, 81, 2, 2, 14658, 14659, 7, 97, 2, 2, 14659, 14660, 7, 71, 2, 2, 14660, 14661, 7, 78, 2, 2, 14661, 14662, 7, 75, 2, 2, 14662, 14663, 7, 79, 2, 2, 14663, 14664, 7, 75, 2, 2, 14664, 14665, 7, 80, 2, 2, 14665, 14666, 7, 67, 2, 2, 14666, 14667, 7, 86, 2, 2, 14667, 14668, 7, 71, 2, 2, 14668, 14669, 7, 97, 2, 2, 14669, 14670, 7, 81, 2, 2, 14670, 14671, 7, 87, 2, 2, 14671, 14672, 7, 86, 2, 2, 14672, 14673, 7, 71, 2, 2, 14673, 14674, 7, 84, 2, 2, 14674, 14675, 7, 97, 2, 2, 14675, 14676, 7, 76, 2, 2, 14676, 14677, 7, 81, 2, 2, 14677, 14678, 7, 75, 2, 2, 14678, 14679, 7, 80, 2, 2, 14679, 1946, 3, 2, 2, 2, 14680, 14681, 7, 80, 2, 2, 14681, 14682, 7, 81, 2, 2, 14682, 14683, 7, 71, 2, 2, 14683, 14684, 7, 80, 2, 2, 14684, 14685, 7, 86, 2, 2, 14685, 14686, 7, 75, 2, 2, 14686, 14687, 7, 86, 2, 2, 14687, 14688, 7, 91, 2, 2, 14688, 14689, 7, 71, 2, 2, 14689, 14690, 7, 85, 2, 2, 14690, 14691, 7, 69, 2, 2, 14691, 14692, 7, 67, 2, 2, 14692, 14693, 7, 82, 2, 2, 14693, 14694, 7, 75, 2, 2, 14694, 14695, 7, 80, 2, 2, 14695, 14696, 7, 73, 2, 2, 14696, 1948, 3, 2, 2, 2, 14697, 14698, 7, 80, 2, 2, 14698, 14699, 7, 81, 2, 2, 14699, 14700, 7, 97, 2, 2, 14700, 14701, 7, 71, 2, 2, 14701, 14702, 7, 90, 2, 2, 14702, 14703, 7, 82, 2, 2, 14703, 14704, 7, 67, 2, 2, 14704, 14705, 7, 80, 2, 2, 14705, 14706, 7, 70, 2, 2, 14706, 14707, 7, 97, 2, 2, 14707, 14708, 7, 73, 2, 2, 14708, 14709, 7, 85, 2, 2, 14709, 14710, 7, 71, 2, 2, 14710, 14711, 7, 86, 2, 2, 14711, 14712, 7, 97, 2, 2, 14712, 14713, 7, 86, 2, 2, 14713, 14714, 7, 81, 2, 2, 14714, 14715, 7, 97, 2, 2, 14715, 14716, 7, 87, 2, 2, 14716, 14717, 7, 80, 2, 2, 14717, 14718, 7, 75, 2, 2, 14718, 14719, 7, 81, 2, 2, 14719, 14720, 7, 80, 2, 2, 14720, 1950, 3, 2, 2, 2, 14721, 14722, 7, 80, 2, 2, 14722, 14723, 7, 81, 2, 2, 14723, 14724, 7, 97, 2, 2, 14724, 14725, 7, 71, 2, 2, 14725, 14726, 7, 90, 2, 2, 14726, 14727, 7, 82, 2, 2, 14727, 14728, 7, 67, 2, 2, 14728, 14729, 7, 80, 2, 2, 14729, 14730, 7, 70, 2, 2, 14730, 1952, 3, 2, 2, 2, 14731, 14732, 7, 80, 2, 2, 14732, 14733, 7, 81, 2, 2, 14733, 14734, 7, 97, 2, 2, 14734, 14735, 7, 71, 2, 2, 14735, 14736, 7, 90, 2, 2, 14736, 14737, 7, 82, 2, 2, 14737, 14738, 7, 67, 2, 2, 14738, 14739, 7, 80, 2, 2, 14739, 14740, 7, 70, 2, 2, 14740, 14741, 7, 97, 2, 2, 14741, 14742, 7, 86, 2, 2, 14742, 14743, 7, 67, 2, 2, 14743, 14744, 7, 68, 2, 2, 14744, 14745, 7, 78, 2, 2, 14745, 14746, 7, 71, 2, 2, 14746, 1954, 3, 2, 2, 2, 14747, 14748, 7, 80, 2, 2, 14748, 14749, 7, 81, 2, 2, 14749, 14750, 7, 97, 2, 2, 14750, 14751, 7, 72, 2, 2, 14751, 14752, 7, 67, 2, 2, 14752, 14753, 7, 69, 2, 2, 14753, 14754, 7, 86, 2, 2, 14754, 1956, 3, 2, 2, 2, 14755, 14756, 7, 80, 2, 2, 14756, 14757, 7, 81, 2, 2, 14757, 14758, 7, 97, 2, 2, 14758, 14759, 7, 72, 2, 2, 14759, 14760, 7, 67, 2, 2, 14760, 14761, 7, 69, 2, 2, 14761, 14762, 7, 86, 2, 2, 14762, 14763, 7, 81, 2, 2, 14763, 14764, 7, 84, 2, 2, 14764, 14765, 7, 75, 2, 2, 14765, 14766, 7, 92, 2, 2, 14766, 14767, 7, 71, 2, 2, 14767, 14768, 7, 97, 2, 2, 14768, 14769, 7, 76, 2, 2, 14769, 14770, 7, 81, 2, 2, 14770, 14771, 7, 75, 2, 2, 14771, 14772, 7, 80, 2, 2, 14772, 1958, 3, 2, 2, 2, 14773, 14774, 7, 80, 2, 2, 14774, 14775, 7, 81, 2, 2, 14775, 14776, 7, 97, 2, 2, 14776, 14777, 7, 72, 2, 2, 14777, 14778, 7, 75, 2, 2, 14778, 14779, 7, 78, 2, 2, 14779, 14780, 7, 86, 2, 2, 14780, 14781, 7, 71, 2, 2, 14781, 14782, 7, 84, 2, 2, 14782, 14783, 7, 75, 2, 2, 14783, 14784, 7, 80, 2, 2, 14784, 14785, 7, 73, 2, 2, 14785, 1960, 3, 2, 2, 2, 14786, 14787, 7, 80, 2, 2, 14787, 14788, 7, 81, 2, 2, 14788, 14789, 7, 72, 2, 2, 14789, 14790, 7, 81, 2, 2, 14790, 14791, 7, 84, 2, 2, 14791, 14792, 7, 69, 2, 2, 14792, 14793, 7, 71, 2, 2, 14793, 1962, 3, 2, 2, 2, 14794, 14795, 7, 80, 2, 2, 14795, 14796, 7, 81, 2, 2, 14796, 14797, 7, 97, 2, 2, 14797, 14798, 7, 72, 2, 2, 14798, 14799, 7, 87, 2, 2, 14799, 14800, 7, 78, 2, 2, 14800, 14801, 7, 78, 2, 2, 14801, 14802, 7, 97, 2, 2, 14802, 14803, 7, 81, 2, 2, 14803, 14804, 7, 87, 2, 2, 14804, 14805, 7, 86, 2, 2, 14805, 14806, 7, 71, 2, 2, 14806, 14807, 7, 84, 2, 2, 14807, 14808, 7, 97, 2, 2, 14808, 14809, 7, 76, 2, 2, 14809, 14810, 7, 81, 2, 2, 14810, 14811, 7, 75, 2, 2, 14811, 14812, 7, 80, 2, 2, 14812, 14813, 7, 97, 2, 2, 14813, 14814, 7, 86, 2, 2, 14814, 14815, 7, 81, 2, 2, 14815, 14816, 7, 97, 2, 2, 14816, 14817, 7, 81, 2, 2, 14817, 14818, 7, 87, 2, 2, 14818, 14819, 7, 86, 2, 2, 14819, 14820, 7, 71, 2, 2, 14820, 14821, 7, 84, 2, 2, 14821, 1964, 3, 2, 2, 2, 14822, 14823, 7, 80, 2, 2, 14823, 14824, 7, 81, 2, 2, 14824, 14825, 7, 97, 2, 2, 14825, 14826, 7, 73, 2, 2, 14826, 14827, 7, 67, 2, 2, 14827, 14828, 7, 86, 2, 2, 14828, 14829, 7, 74, 2, 2, 14829, 14830, 7, 71, 2, 2, 14830, 14831, 7, 84, 2, 2, 14831, 14832, 7, 97, 2, 2, 14832, 14833, 7, 81, 2, 2, 14833, 14834, 7, 82, 2, 2, 14834, 14835, 7, 86, 2, 2, 14835, 14836, 7, 75, 2, 2, 14836, 14837, 7, 79, 2, 2, 14837, 14838, 7, 75, 2, 2, 14838, 14839, 7, 92, 2, 2, 14839, 14840, 7, 71, 2, 2, 14840, 14841, 7, 84, 2, 2, 14841, 14842, 7, 97, 2, 2, 14842, 14843, 7, 85, 2, 2, 14843, 14844, 7, 86, 2, 2, 14844, 14845, 7, 67, 2, 2, 14845, 14846, 7, 86, 2, 2, 14846, 14847, 7, 75, 2, 2, 14847, 14848, 7, 85, 2, 2, 14848, 14849, 7, 86, 2, 2, 14849, 14850, 7, 75, 2, 2, 14850, 14851, 7, 69, 2, 2, 14851, 14852, 7, 85, 2, 2, 14852, 1966, 3, 2, 2, 2, 14853, 14854, 7, 80, 2, 2, 14854, 14855, 7, 81, 2, 2, 14855, 14856, 7, 97, 2, 2, 14856, 14857, 7, 73, 2, 2, 14857, 14858, 7, 68, 2, 2, 14858, 14859, 7, 91, 2, 2, 14859, 14860, 7, 97, 2, 2, 14860, 14861, 7, 82, 2, 2, 14861, 14862, 7, 87, 2, 2, 14862, 14863, 7, 85, 2, 2, 14863, 14864, 7, 74, 2, 2, 14864, 14865, 7, 70, 2, 2, 14865, 14866, 7, 81, 2, 2, 14866, 14867, 7, 89, 2, 2, 14867, 14868, 7, 80, 2, 2, 14868, 1968, 3, 2, 2, 2, 14869, 14870, 7, 80, 2, 2, 14870, 14871, 7, 81, 2, 2, 14871, 14872, 7, 73, 2, 2, 14872, 14873, 7, 87, 2, 2, 14873, 14874, 7, 67, 2, 2, 14874, 14875, 7, 84, 2, 2, 14875, 14876, 7, 67, 2, 2, 14876, 14877, 7, 80, 2, 2, 14877, 14878, 7, 86, 2, 2, 14878, 14879, 7, 71, 2, 2, 14879, 14880, 7, 71, 2, 2, 14880, 1970, 3, 2, 2, 2, 14881, 14882, 7, 80, 2, 2, 14882, 14883, 7, 81, 2, 2, 14883, 14884, 7, 97, 2, 2, 14884, 14885, 7, 75, 2, 2, 14885, 14886, 7, 80, 2, 2, 14886, 14887, 7, 70, 2, 2, 14887, 14888, 7, 71, 2, 2, 14888, 14889, 7, 90, 2, 2, 14889, 14890, 7, 97, 2, 2, 14890, 14891, 7, 72, 2, 2, 14891, 14892, 7, 72, 2, 2, 14892, 14893, 7, 85, 2, 2, 14893, 1972, 3, 2, 2, 2, 14894, 14895, 7, 80, 2, 2, 14895, 14896, 7, 81, 2, 2, 14896, 14897, 7, 97, 2, 2, 14897, 14898, 7, 75, 2, 2, 14898, 14899, 7, 80, 2, 2, 14899, 14900, 7, 70, 2, 2, 14900, 14901, 7, 71, 2, 2, 14901, 14902, 7, 90, 2, 2, 14902, 1974, 3, 2, 2, 2, 14903, 14904, 7, 80, 2, 2, 14904, 14905, 7, 81, 2, 2, 14905, 14906, 7, 97, 2, 2, 14906, 14907, 7, 75, 2, 2, 14907, 14908, 7, 80, 2, 2, 14908, 14909, 7, 70, 2, 2, 14909, 14910, 7, 71, 2, 2, 14910, 14911, 7, 90, 2, 2, 14911, 14912, 7, 97, 2, 2, 14912, 14913, 7, 85, 2, 2, 14913, 14914, 7, 85, 2, 2, 14914, 1976, 3, 2, 2, 2, 14915, 14916, 7, 80, 2, 2, 14916, 14917, 7, 81, 2, 2, 14917, 14918, 7, 97, 2, 2, 14918, 14919, 7, 75, 2, 2, 14919, 14920, 7, 80, 2, 2, 14920, 14921, 7, 79, 2, 2, 14921, 14922, 7, 71, 2, 2, 14922, 14923, 7, 79, 2, 2, 14923, 14924, 7, 81, 2, 2, 14924, 14925, 7, 84, 2, 2, 14925, 14926, 7, 91, 2, 2, 14926, 1978, 3, 2, 2, 2, 14927, 14928, 7, 80, 2, 2, 14928, 14929, 7, 81, 2, 2, 14929, 14930, 7, 97, 2, 2, 14930, 14931, 7, 75, 2, 2, 14931, 14932, 7, 80, 2, 2, 14932, 14933, 7, 79, 2, 2, 14933, 14934, 7, 71, 2, 2, 14934, 14935, 7, 79, 2, 2, 14935, 14936, 7, 81, 2, 2, 14936, 14937, 7, 84, 2, 2, 14937, 14938, 7, 91, 2, 2, 14938, 14939, 7, 97, 2, 2, 14939, 14940, 7, 82, 2, 2, 14940, 14941, 7, 84, 2, 2, 14941, 14942, 7, 87, 2, 2, 14942, 14943, 7, 80, 2, 2, 14943, 14944, 7, 75, 2, 2, 14944, 14945, 7, 80, 2, 2, 14945, 14946, 7, 73, 2, 2, 14946, 1980, 3, 2, 2, 2, 14947, 14948, 7, 80, 2, 2, 14948, 14949, 7, 81, 2, 2, 14949, 14950, 7, 77, 2, 2, 14950, 14951, 7, 71, 2, 2, 14951, 14952, 7, 71, 2, 2, 14952, 14953, 7, 82, 2, 2, 14953, 1982, 3, 2, 2, 2, 14954, 14955, 7, 80, 2, 2, 14955, 14956, 7, 81, 2, 2, 14956, 14957, 7, 97, 2, 2, 14957, 14958, 7, 78, 2, 2, 14958, 14959, 7, 81, 2, 2, 14959, 14960, 7, 67, 2, 2, 14960, 14961, 7, 70, 2, 2, 14961, 1984, 3, 2, 2, 2, 14962, 14963, 7, 80, 2, 2, 14963, 14964, 7, 81, 2, 2, 14964, 14965, 7, 78, 2, 2, 14965, 14966, 7, 81, 2, 2, 14966, 14967, 7, 69, 2, 2, 14967, 14968, 7, 67, 2, 2, 14968, 14969, 7, 78, 2, 2, 14969, 1986, 3, 2, 2, 2, 14970, 14971, 7, 80, 2, 2, 14971, 14972, 7, 81, 2, 2, 14972, 14973, 7, 78, 2, 2, 14973, 14974, 7, 81, 2, 2, 14974, 14975, 7, 73, 2, 2, 14975, 14976, 7, 73, 2, 2, 14976, 14977, 7, 75, 2, 2, 14977, 14978, 7, 80, 2, 2, 14978, 14979, 7, 73, 2, 2, 14979, 1988, 3, 2, 2, 2, 14980, 14981, 7, 80, 2, 2, 14981, 14982, 7, 81, 2, 2, 14982, 14983, 7, 79, 2, 2, 14983, 14984, 7, 67, 2, 2, 14984, 14985, 7, 82, 2, 2, 14985, 14986, 7, 82, 2, 2, 14986, 14987, 7, 75, 2, 2, 14987, 14988, 7, 80, 2, 2, 14988, 14989, 7, 73, 2, 2, 14989, 1990, 3, 2, 2, 2, 14990, 14991, 7, 80, 2, 2, 14991, 14992, 7, 81, 2, 2, 14992, 14993, 7, 79, 2, 2, 14993, 14994, 7, 67, 2, 2, 14994, 14995, 7, 90, 2, 2, 14995, 14996, 7, 88, 2, 2, 14996, 14997, 7, 67, 2, 2, 14997, 14998, 7, 78, 2, 2, 14998, 14999, 7, 87, 2, 2, 14999, 15000, 7, 71, 2, 2, 15000, 1992, 3, 2, 2, 2, 15001, 15002, 7, 80, 2, 2, 15002, 15003, 7, 81, 2, 2, 15003, 15004, 7, 97, 2, 2, 15004, 15005, 7, 79, 2, 2, 15005, 15006, 7, 71, 2, 2, 15006, 15007, 7, 84, 2, 2, 15007, 15008, 7, 73, 2, 2, 15008, 15009, 7, 71, 2, 2, 15009, 1994, 3, 2, 2, 2, 15010, 15011, 7, 80, 2, 2, 15011, 15012, 7, 81, 2, 2, 15012, 15013, 7, 79, 2, 2, 15013, 15014, 7, 75, 2, 2, 15014, 15015, 7, 80, 2, 2, 15015, 15016, 7, 75, 2, 2, 15016, 15017, 7, 79, 2, 2, 15017, 15018, 7, 75, 2, 2, 15018, 15019, 7, 92, 2, 2, 15019, 15020, 7, 71, 2, 2, 15020, 1996, 3, 2, 2, 2, 15021, 15022, 7, 80, 2, 2, 15022, 15023, 7, 81, 2, 2, 15023, 15024, 7, 79, 2, 2, 15024, 15025, 7, 75, 2, 2, 15025, 15026, 7, 80, 2, 2, 15026, 15027, 7, 88, 2, 2, 15027, 15028, 7, 67, 2, 2, 15028, 15029, 7, 78, 2, 2, 15029, 15030, 7, 87, 2, 2, 15030, 15031, 7, 71, 2, 2, 15031, 1998, 3, 2, 2, 2, 15032, 15033, 7, 80, 2, 2, 15033, 15034, 7, 81, 2, 2, 15034, 15035, 7, 97, 2, 2, 15035, 15036, 7, 79, 2, 2, 15036, 15037, 7, 81, 2, 2, 15037, 15038, 7, 70, 2, 2, 15038, 15039, 7, 71, 2, 2, 15039, 15040, 7, 78, 2, 2, 15040, 15041, 7, 97, 2, 2, 15041, 15042, 7, 82, 2, 2, 15042, 15043, 7, 87, 2, 2, 15043, 15044, 7, 85, 2, 2, 15044, 15045, 7, 74, 2, 2, 15045, 15046, 7, 97, 2, 2, 15046, 15047, 7, 84, 2, 2, 15047, 15048, 7, 71, 2, 2, 15048, 15049, 7, 72, 2, 2, 15049, 2000, 3, 2, 2, 2, 15050, 15051, 7, 80, 2, 2, 15051, 15052, 7, 81, 2, 2, 15052, 15053, 7, 97, 2, 2, 15053, 15054, 7, 79, 2, 2, 15054, 15055, 7, 81, 2, 2, 15055, 15056, 7, 80, 2, 2, 15056, 15057, 7, 75, 2, 2, 15057, 15058, 7, 86, 2, 2, 15058, 15059, 7, 81, 2, 2, 15059, 15060, 7, 84, 2, 2, 15060, 15061, 7, 75, 2, 2, 15061, 15062, 7, 80, 2, 2, 15062, 15063, 7, 73, 2, 2, 15063, 2002, 3, 2, 2, 2, 15064, 15065, 7, 80, 2, 2, 15065, 15066, 7, 81, 2, 2, 15066, 15067, 7, 79, 2, 2, 15067, 15068, 7, 81, 2, 2, 15068, 15069, 7, 80, 2, 2, 15069, 15070, 7, 75, 2, 2, 15070, 15071, 7, 86, 2, 2, 15071, 15072, 7, 81, 2, 2, 15072, 15073, 7, 84, 2, 2, 15073, 15074, 7, 75, 2, 2, 15074, 15075, 7, 80, 2, 2, 15075, 15076, 7, 73, 2, 2, 15076, 2004, 3, 2, 2, 2, 15077, 15078, 7, 80, 2, 2, 15078, 15079, 7, 81, 2, 2, 15079, 15080, 7, 97, 2, 2, 15080, 15081, 7, 79, 2, 2, 15081, 15082, 7, 81, 2, 2, 15082, 15083, 7, 80, 2, 2, 15083, 15084, 7, 75, 2, 2, 15084, 15085, 7, 86, 2, 2, 15085, 15086, 7, 81, 2, 2, 15086, 15087, 7, 84, 2, 2, 15087, 2006, 3, 2, 2, 2, 15088, 15089, 7, 80, 2, 2, 15089, 15090, 7, 81, 2, 2, 15090, 15091, 7, 97, 2, 2, 15091, 15092, 7, 79, 2, 2, 15092, 15093, 7, 87, 2, 2, 15093, 15094, 7, 78, 2, 2, 15094, 15095, 7, 86, 2, 2, 15095, 15096, 7, 75, 2, 2, 15096, 15097, 7, 79, 2, 2, 15097, 15098, 7, 88, 2, 2, 15098, 15099, 7, 97, 2, 2, 15099, 15100, 7, 84, 2, 2, 15100, 15101, 7, 71, 2, 2, 15101, 15102, 7, 89, 2, 2, 15102, 15103, 7, 84, 2, 2, 15103, 15104, 7, 75, 2, 2, 15104, 15105, 7, 86, 2, 2, 15105, 15106, 7, 71, 2, 2, 15106, 2008, 3, 2, 2, 2, 15107, 15108, 7, 80, 2, 2, 15108, 15109, 7, 81, 2, 2, 15109, 15110, 7, 97, 2, 2, 15110, 15111, 7, 80, 2, 2, 15111, 15112, 7, 67, 2, 2, 15112, 15113, 7, 86, 2, 2, 15113, 15114, 7, 75, 2, 2, 15114, 15115, 7, 88, 2, 2, 15115, 15116, 7, 71, 2, 2, 15116, 15117, 7, 97, 2, 2, 15117, 15118, 7, 72, 2, 2, 15118, 15119, 7, 87, 2, 2, 15119, 15120, 7, 78, 2, 2, 15120, 15121, 7, 78, 2, 2, 15121, 15122, 7, 97, 2, 2, 15122, 15123, 7, 81, 2, 2, 15123, 15124, 7, 87, 2, 2, 15124, 15125, 7, 86, 2, 2, 15125, 15126, 7, 71, 2, 2, 15126, 15127, 7, 84, 2, 2, 15127, 15128, 7, 97, 2, 2, 15128, 15129, 7, 76, 2, 2, 15129, 15130, 7, 81, 2, 2, 15130, 15131, 7, 75, 2, 2, 15131, 15132, 7, 80, 2, 2, 15132, 2010, 3, 2, 2, 2, 15133, 15134, 7, 80, 2, 2, 15134, 15135, 7, 81, 2, 2, 15135, 15136, 7, 80, 2, 2, 15136, 15137, 7, 68, 2, 2, 15137, 15138, 7, 78, 2, 2, 15138, 15139, 7, 81, 2, 2, 15139, 15140, 7, 69, 2, 2, 15140, 15141, 7, 77, 2, 2, 15141, 15142, 7, 75, 2, 2, 15142, 15143, 7, 80, 2, 2, 15143, 15144, 7, 73, 2, 2, 15144, 2012, 3, 2, 2, 2, 15145, 15146, 7, 80, 2, 2, 15146, 15147, 7, 81, 2, 2, 15147, 15148, 7, 80, 2, 2, 15148, 15149, 7, 71, 2, 2, 15149, 15150, 7, 70, 2, 2, 15150, 15151, 7, 75, 2, 2, 15151, 15152, 7, 86, 2, 2, 15152, 15153, 7, 75, 2, 2, 15153, 15154, 7, 81, 2, 2, 15154, 15155, 7, 80, 2, 2, 15155, 15156, 7, 67, 2, 2, 15156, 15157, 7, 68, 2, 2, 15157, 15158, 7, 78, 2, 2, 15158, 15159, 7, 71, 2, 2, 15159, 2014, 3, 2, 2, 2, 15160, 15161, 7, 80, 2, 2, 15161, 15162, 7, 81, 2, 2, 15162, 15163, 7, 80, 2, 2, 15163, 15164, 7, 71, 2, 2, 15164, 2016, 3, 2, 2, 2, 15165, 15166, 7, 80, 2, 2, 15166, 15167, 7, 81, 2, 2, 15167, 15168, 7, 97, 2, 2, 15168, 15169, 7, 80, 2, 2, 15169, 15170, 7, 78, 2, 2, 15170, 15171, 7, 76, 2, 2, 15171, 15172, 7, 97, 2, 2, 15172, 15173, 7, 68, 2, 2, 15173, 15174, 7, 67, 2, 2, 15174, 15175, 7, 86, 2, 2, 15175, 15176, 7, 69, 2, 2, 15176, 15177, 7, 74, 2, 2, 15177, 15178, 7, 75, 2, 2, 15178, 15179, 7, 80, 2, 2, 15179, 15180, 7, 73, 2, 2, 15180, 2018, 3, 2, 2, 2, 15181, 15182, 7, 80, 2, 2, 15182, 15183, 7, 81, 2, 2, 15183, 15184, 7, 97, 2, 2, 15184, 15185, 7, 80, 2, 2, 15185, 15186, 7, 78, 2, 2, 15186, 15187, 7, 76, 2, 2, 15187, 15188, 7, 97, 2, 2, 15188, 15189, 7, 82, 2, 2, 15189, 15190, 7, 84, 2, 2, 15190, 15191, 7, 71, 2, 2, 15191, 15192, 7, 72, 2, 2, 15192, 15193, 7, 71, 2, 2, 15193, 15194, 7, 86, 2, 2, 15194, 15195, 7, 69, 2, 2, 15195, 15196, 7, 74, 2, 2, 15196, 2020, 3, 2, 2, 2, 15197, 15198, 7, 80, 2, 2, 15198, 15199, 7, 81, 2, 2, 15199, 2022, 3, 2, 2, 2, 15200, 15201, 7, 80, 2, 2, 15201, 15202, 7, 81, 2, 2, 15202, 15203, 7, 80, 2, 2, 15203, 15204, 7, 85, 2, 2, 15204, 15205, 7, 69, 2, 2, 15205, 15206, 7, 74, 2, 2, 15206, 15207, 7, 71, 2, 2, 15207, 15208, 7, 79, 2, 2, 15208, 15209, 7, 67, 2, 2, 15209, 2024, 3, 2, 2, 2, 15210, 15211, 7, 80, 2, 2, 15211, 15212, 7, 81, 2, 2, 15212, 15213, 7, 97, 2, 2, 15213, 15214, 7, 81, 2, 2, 15214, 15215, 7, 68, 2, 2, 15215, 15216, 7, 76, 2, 2, 15216, 15217, 7, 71, 2, 2, 15217, 15218, 7, 69, 2, 2, 15218, 15219, 7, 86, 2, 2, 15219, 15220, 7, 97, 2, 2, 15220, 15221, 7, 78, 2, 2, 15221, 15222, 7, 75, 2, 2, 15222, 15223, 7, 80, 2, 2, 15223, 15224, 7, 77, 2, 2, 15224, 2026, 3, 2, 2, 2, 15225, 15226, 7, 80, 2, 2, 15226, 15227, 7, 81, 2, 2, 15227, 15228, 7, 81, 2, 2, 15228, 15229, 7, 84, 2, 2, 15229, 15230, 7, 70, 2, 2, 15230, 15231, 7, 71, 2, 2, 15231, 15232, 7, 84, 2, 2, 15232, 2028, 3, 2, 2, 2, 15233, 15234, 7, 80, 2, 2, 15234, 15235, 7, 81, 2, 2, 15235, 15236, 7, 97, 2, 2, 15236, 15237, 7, 81, 2, 2, 15237, 15238, 7, 84, 2, 2, 15238, 15239, 7, 70, 2, 2, 15239, 15240, 7, 71, 2, 2, 15240, 15241, 7, 84, 2, 2, 15241, 15242, 7, 97, 2, 2, 15242, 15243, 7, 84, 2, 2, 15243, 15244, 7, 81, 2, 2, 15244, 15245, 7, 78, 2, 2, 15245, 15246, 7, 78, 2, 2, 15246, 15247, 7, 87, 2, 2, 15247, 15248, 7, 82, 2, 2, 15248, 15249, 7, 85, 2, 2, 15249, 2030, 3, 2, 2, 2, 15250, 15251, 7, 80, 2, 2, 15251, 15252, 7, 81, 2, 2, 15252, 15253, 7, 97, 2, 2, 15253, 15254, 7, 81, 2, 2, 15254, 15255, 7, 87, 2, 2, 15255, 15256, 7, 86, 2, 2, 15256, 15257, 7, 71, 2, 2, 15257, 15258, 7, 84, 2, 2, 15258, 15259, 7, 97, 2, 2, 15259, 15260, 7, 76, 2, 2, 15260, 15261, 7, 81, 2, 2, 15261, 15262, 7, 75, 2, 2, 15262, 15263, 7, 80, 2, 2, 15263, 15264, 7, 97, 2, 2, 15264, 15265, 7, 86, 2, 2, 15265, 15266, 7, 81, 2, 2, 15266, 15267, 7, 97, 2, 2, 15267, 15268, 7, 67, 2, 2, 15268, 15269, 7, 80, 2, 2, 15269, 15270, 7, 86, 2, 2, 15270, 15271, 7, 75, 2, 2, 15271, 2032, 3, 2, 2, 2, 15272, 15273, 7, 80, 2, 2, 15273, 15274, 7, 81, 2, 2, 15274, 15275, 7, 97, 2, 2, 15275, 15276, 7, 81, 2, 2, 15276, 15277, 7, 87, 2, 2, 15277, 15278, 7, 86, 2, 2, 15278, 15279, 7, 71, 2, 2, 15279, 15280, 7, 84, 2, 2, 15280, 15281, 7, 97, 2, 2, 15281, 15282, 7, 76, 2, 2, 15282, 15283, 7, 81, 2, 2, 15283, 15284, 7, 75, 2, 2, 15284, 15285, 7, 80, 2, 2, 15285, 15286, 7, 97, 2, 2, 15286, 15287, 7, 86, 2, 2, 15287, 15288, 7, 81, 2, 2, 15288, 15289, 7, 97, 2, 2, 15289, 15290, 7, 75, 2, 2, 15290, 15291, 7, 80, 2, 2, 15291, 15292, 7, 80, 2, 2, 15292, 15293, 7, 71, 2, 2, 15293, 15294, 7, 84, 2, 2, 15294, 2034, 3, 2, 2, 2, 15295, 15296, 7, 80, 2, 2, 15296, 15297, 7, 81, 2, 2, 15297, 15298, 7, 81, 2, 2, 15298, 15299, 7, 88, 2, 2, 15299, 15300, 7, 71, 2, 2, 15300, 15301, 7, 84, 2, 2, 15301, 15302, 7, 84, 2, 2, 15302, 15303, 7, 75, 2, 2, 15303, 15304, 7, 70, 2, 2, 15304, 15305, 7, 71, 2, 2, 15305, 2036, 3, 2, 2, 2, 15306, 15307, 7, 80, 2, 2, 15307, 15308, 7, 81, 2, 2, 15308, 15309, 7, 97, 2, 2, 15309, 15310, 7, 82, 2, 2, 15310, 15311, 7, 67, 2, 2, 15311, 15312, 7, 84, 2, 2, 15312, 15313, 7, 67, 2, 2, 15313, 15314, 7, 78, 2, 2, 15314, 15315, 7, 78, 2, 2, 15315, 15316, 7, 71, 2, 2, 15316, 15317, 7, 78, 2, 2, 15317, 15318, 7, 97, 2, 2, 15318, 15319, 7, 75, 2, 2, 15319, 15320, 7, 80, 2, 2, 15320, 15321, 7, 70, 2, 2, 15321, 15322, 7, 71, 2, 2, 15322, 15323, 7, 90, 2, 2, 15323, 2038, 3, 2, 2, 2, 15324, 15325, 7, 80, 2, 2, 15325, 15326, 7, 81, 2, 2, 15326, 15327, 7, 82, 2, 2, 15327, 15328, 7, 67, 2, 2, 15328, 15329, 7, 84, 2, 2, 15329, 15330, 7, 67, 2, 2, 15330, 15331, 7, 78, 2, 2, 15331, 15332, 7, 78, 2, 2, 15332, 15333, 7, 71, 2, 2, 15333, 15334, 7, 78, 2, 2, 15334, 15335, 7, 97, 2, 2, 15335, 15336, 7, 75, 2, 2, 15336, 15337, 7, 80, 2, 2, 15337, 15338, 7, 70, 2, 2, 15338, 15339, 7, 71, 2, 2, 15339, 15340, 7, 90, 2, 2, 15340, 2040, 3, 2, 2, 2, 15341, 15342, 7, 80, 2, 2, 15342, 15343, 7, 81, 2, 2, 15343, 15344, 7, 97, 2, 2, 15344, 15345, 7, 82, 2, 2, 15345, 15346, 7, 67, 2, 2, 15346, 15347, 7, 84, 2, 2, 15347, 15348, 7, 67, 2, 2, 15348, 15349, 7, 78, 2, 2, 15349, 15350, 7, 78, 2, 2, 15350, 15351, 7, 71, 2, 2, 15351, 15352, 7, 78, 2, 2, 15352, 2042, 3, 2, 2, 2, 15353, 15354, 7, 80, 2, 2, 15354, 15355, 7, 81, 2, 2, 15355, 15356, 7, 82, 2, 2, 15356, 15357, 7, 67, 2, 2, 15357, 15358, 7, 84, 2, 2, 15358, 15359, 7, 67, 2, 2, 15359, 15360, 7, 78, 2, 2, 15360, 15361, 7, 78, 2, 2, 15361, 15362, 7, 71, 2, 2, 15362, 15363, 7, 78, 2, 2, 15363, 2044, 3, 2, 2, 2, 15364, 15365, 7, 80, 2, 2, 15365, 15366, 7, 81, 2, 2, 15366, 15367, 7, 97, 2, 2, 15367, 15368, 7, 82, 2, 2, 15368, 15369, 7, 67, 2, 2, 15369, 15370, 7, 84, 2, 2, 15370, 15371, 7, 86, 2, 2, 15371, 15372, 7, 75, 2, 2, 15372, 15373, 7, 67, 2, 2, 15373, 15374, 7, 78, 2, 2, 15374, 15375, 7, 97, 2, 2, 15375, 15376, 7, 69, 2, 2, 15376, 15377, 7, 81, 2, 2, 15377, 15378, 7, 79, 2, 2, 15378, 15379, 7, 79, 2, 2, 15379, 15380, 7, 75, 2, 2, 15380, 15381, 7, 86, 2, 2, 15381, 2046, 3, 2, 2, 2, 15382, 15383, 7, 80, 2, 2, 15383, 15384, 7, 81, 2, 2, 15384, 15385, 7, 97, 2, 2, 15385, 15386, 7, 82, 2, 2, 15386, 15387, 7, 67, 2, 2, 15387, 15388, 7, 84, 2, 2, 15388, 15389, 7, 86, 2, 2, 15389, 15390, 7, 75, 2, 2, 15390, 15391, 7, 67, 2, 2, 15391, 15392, 7, 78, 2, 2, 15392, 15393, 7, 97, 2, 2, 15393, 15394, 7, 76, 2, 2, 15394, 15395, 7, 81, 2, 2, 15395, 15396, 7, 75, 2, 2, 15396, 15397, 7, 80, 2, 2, 15397, 2048, 3, 2, 2, 2, 15398, 15399, 7, 80, 2, 2, 15399, 15400, 7, 81, 2, 2, 15400, 15401, 7, 97, 2, 2, 15401, 15402, 7, 82, 2, 2, 15402, 15403, 7, 67, 2, 2, 15403, 15404, 7, 84, 2, 2, 15404, 15405, 7, 86, 2, 2, 15405, 15406, 7, 75, 2, 2, 15406, 15407, 7, 67, 2, 2, 15407, 15408, 7, 78, 2, 2, 15408, 15409, 7, 97, 2, 2, 15409, 15410, 7, 84, 2, 2, 15410, 15411, 7, 81, 2, 2, 15411, 15412, 7, 78, 2, 2, 15412, 15413, 7, 78, 2, 2, 15413, 15414, 7, 87, 2, 2, 15414, 15415, 7, 82, 2, 2, 15415, 15416, 7, 97, 2, 2, 15416, 15417, 7, 82, 2, 2, 15417, 15418, 7, 87, 2, 2, 15418, 15419, 7, 85, 2, 2, 15419, 15420, 7, 74, 2, 2, 15420, 15421, 7, 70, 2, 2, 15421, 15422, 7, 81, 2, 2, 15422, 15423, 7, 89, 2, 2, 15423, 15424, 7, 80, 2, 2, 15424, 2050, 3, 2, 2, 2, 15425, 15426, 7, 80, 2, 2, 15426, 15427, 7, 81, 2, 2, 15427, 15428, 7, 82, 2, 2, 15428, 15429, 7, 67, 2, 2, 15429, 15430, 7, 84, 2, 2, 15430, 15431, 7, 86, 2, 2, 15431, 15432, 7, 75, 2, 2, 15432, 15433, 7, 86, 2, 2, 15433, 15434, 7, 75, 2, 2, 15434, 15435, 7, 81, 2, 2, 15435, 15436, 7, 80, 2, 2, 15436, 2052, 3, 2, 2, 2, 15437, 15438, 7, 80, 2, 2, 15438, 15439, 7, 81, 2, 2, 15439, 15440, 7, 97, 2, 2, 15440, 15441, 7, 82, 2, 2, 15441, 15442, 7, 78, 2, 2, 15442, 15443, 7, 67, 2, 2, 15443, 15444, 7, 69, 2, 2, 15444, 15445, 7, 71, 2, 2, 15445, 15446, 7, 97, 2, 2, 15446, 15447, 7, 70, 2, 2, 15447, 15448, 7, 75, 2, 2, 15448, 15449, 7, 85, 2, 2, 15449, 15450, 7, 86, 2, 2, 15450, 15451, 7, 75, 2, 2, 15451, 15452, 7, 80, 2, 2, 15452, 15453, 7, 69, 2, 2, 15453, 15454, 7, 86, 2, 2, 15454, 2054, 3, 2, 2, 2, 15455, 15456, 7, 80, 2, 2, 15456, 15457, 7, 81, 2, 2, 15457, 15458, 7, 97, 2, 2, 15458, 15459, 7, 82, 2, 2, 15459, 15460, 7, 78, 2, 2, 15460, 15461, 7, 67, 2, 2, 15461, 15462, 7, 69, 2, 2, 15462, 15463, 7, 71, 2, 2, 15463, 15464, 7, 97, 2, 2, 15464, 15465, 7, 73, 2, 2, 15465, 15466, 7, 84, 2, 2, 15466, 15467, 7, 81, 2, 2, 15467, 15468, 7, 87, 2, 2, 15468, 15469, 7, 82, 2, 2, 15469, 15470, 7, 97, 2, 2, 15470, 15471, 7, 68, 2, 2, 15471, 15472, 7, 91, 2, 2, 15472, 2056, 3, 2, 2, 2, 15473, 15474, 7, 80, 2, 2, 15474, 15475, 7, 81, 2, 2, 15475, 15476, 7, 97, 2, 2, 15476, 15477, 7, 82, 2, 2, 15477, 15478, 7, 83, 2, 2, 15478, 15479, 7, 97, 2, 2, 15479, 15480, 7, 69, 2, 2, 15480, 15481, 7, 81, 2, 2, 15481, 15482, 7, 80, 2, 2, 15482, 15483, 7, 69, 2, 2, 15483, 15484, 7, 87, 2, 2, 15484, 15485, 7, 84, 2, 2, 15485, 15486, 7, 84, 2, 2, 15486, 15487, 7, 71, 2, 2, 15487, 15488, 7, 80, 2, 2, 15488, 15489, 7, 86, 2, 2, 15489, 15490, 7, 97, 2, 2, 15490, 15491, 7, 87, 2, 2, 15491, 15492, 7, 80, 2, 2, 15492, 15493, 7, 75, 2, 2, 15493, 15494, 7, 81, 2, 2, 15494, 15495, 7, 80, 2, 2, 15495, 2058, 3, 2, 2, 2, 15496, 15497, 7, 80, 2, 2, 15497, 15498, 7, 81, 2, 2, 15498, 15499, 7, 97, 2, 2, 15499, 15500, 7, 82, 2, 2, 15500, 15501, 7, 83, 2, 2, 15501, 15502, 7, 97, 2, 2, 15502, 15503, 7, 79, 2, 2, 15503, 15504, 7, 67, 2, 2, 15504, 15505, 7, 82, 2, 2, 15505, 2060, 3, 2, 2, 2, 15506, 15507, 7, 80, 2, 2, 15507, 15508, 7, 81, 2, 2, 15508, 15509, 7, 97, 2, 2, 15509, 15510, 7, 82, 2, 2, 15510, 15511, 7, 83, 2, 2, 15511, 15512, 7, 97, 2, 2, 15512, 15513, 7, 84, 2, 2, 15513, 15514, 7, 71, 2, 2, 15514, 15515, 7, 82, 2, 2, 15515, 15516, 7, 78, 2, 2, 15516, 15517, 7, 75, 2, 2, 15517, 15518, 7, 69, 2, 2, 15518, 15519, 7, 67, 2, 2, 15519, 15520, 7, 86, 2, 2, 15520, 15521, 7, 71, 2, 2, 15521, 2062, 3, 2, 2, 2, 15522, 15523, 7, 80, 2, 2, 15523, 15524, 7, 81, 2, 2, 15524, 15525, 7, 97, 2, 2, 15525, 15526, 7, 82, 2, 2, 15526, 15527, 7, 83, 2, 2, 15527, 15528, 7, 97, 2, 2, 15528, 15529, 7, 85, 2, 2, 15529, 15530, 7, 77, 2, 2, 15530, 15531, 7, 71, 2, 2, 15531, 15532, 7, 89, 2, 2, 15532, 2064, 3, 2, 2, 2, 15533, 15534, 7, 80, 2, 2, 15534, 15535, 7, 81, 2, 2, 15535, 15536, 7, 97, 2, 2, 15536, 15537, 7, 82, 2, 2, 15537, 15538, 7, 84, 2, 2, 15538, 15539, 7, 87, 2, 2, 15539, 15540, 7, 80, 2, 2, 15540, 15541, 7, 71, 2, 2, 15541, 15542, 7, 97, 2, 2, 15542, 15543, 7, 73, 2, 2, 15543, 15544, 7, 85, 2, 2, 15544, 15545, 7, 71, 2, 2, 15545, 15546, 7, 86, 2, 2, 15546, 15547, 7, 85, 2, 2, 15547, 2066, 3, 2, 2, 2, 15548, 15549, 7, 80, 2, 2, 15549, 15550, 7, 81, 2, 2, 15550, 15551, 7, 97, 2, 2, 15551, 15552, 7, 82, 2, 2, 15552, 15553, 7, 87, 2, 2, 15553, 15554, 7, 78, 2, 2, 15554, 15555, 7, 78, 2, 2, 15555, 15556, 7, 97, 2, 2, 15556, 15557, 7, 82, 2, 2, 15557, 15558, 7, 84, 2, 2, 15558, 15559, 7, 71, 2, 2, 15559, 15560, 7, 70, 2, 2, 15560, 2068, 3, 2, 2, 2, 15561, 15562, 7, 80, 2, 2, 15562, 15563, 7, 81, 2, 2, 15563, 15564, 7, 97, 2, 2, 15564, 15565, 7, 82, 2, 2, 15565, 15566, 7, 87, 2, 2, 15566, 15567, 7, 85, 2, 2, 15567, 15568, 7, 74, 2, 2, 15568, 15569, 7, 97, 2, 2, 15569, 15570, 7, 82, 2, 2, 15570, 15571, 7, 84, 2, 2, 15571, 15572, 7, 71, 2, 2, 15572, 15573, 7, 70, 2, 2, 15573, 2070, 3, 2, 2, 2, 15574, 15575, 7, 80, 2, 2, 15575, 15576, 7, 81, 2, 2, 15576, 15577, 7, 97, 2, 2, 15577, 15578, 7, 82, 2, 2, 15578, 15579, 7, 87, 2, 2, 15579, 15580, 7, 85, 2, 2, 15580, 15581, 7, 74, 2, 2, 15581, 15582, 7, 97, 2, 2, 15582, 15583, 7, 85, 2, 2, 15583, 15584, 7, 87, 2, 2, 15584, 15585, 7, 68, 2, 2, 15585, 15586, 7, 83, 2, 2, 15586, 2072, 3, 2, 2, 2, 15587, 15588, 7, 80, 2, 2, 15588, 15589, 7, 81, 2, 2, 15589, 15590, 7, 97, 2, 2, 15590, 15591, 7, 82, 2, 2, 15591, 15592, 7, 90, 2, 2, 15592, 15593, 7, 97, 2, 2, 15593, 15594, 7, 72, 2, 2, 15594, 15595, 7, 67, 2, 2, 15595, 15596, 7, 87, 2, 2, 15596, 15597, 7, 78, 2, 2, 15597, 15598, 7, 86, 2, 2, 15598, 15599, 7, 97, 2, 2, 15599, 15600, 7, 86, 2, 2, 15600, 15601, 7, 81, 2, 2, 15601, 15602, 7, 78, 2, 2, 15602, 15603, 7, 71, 2, 2, 15603, 15604, 7, 84, 2, 2, 15604, 15605, 7, 67, 2, 2, 15605, 15606, 7, 80, 2, 2, 15606, 15607, 7, 69, 2, 2, 15607, 15608, 7, 71, 2, 2, 15608, 2074, 3, 2, 2, 2, 15609, 15610, 7, 80, 2, 2, 15610, 15611, 7, 81, 2, 2, 15611, 15612, 7, 97, 2, 2, 15612, 15613, 7, 82, 2, 2, 15613, 15614, 7, 90, 2, 2, 15614, 15615, 7, 97, 2, 2, 15615, 15616, 7, 76, 2, 2, 15616, 15617, 7, 81, 2, 2, 15617, 15618, 7, 75, 2, 2, 15618, 15619, 7, 80, 2, 2, 15619, 15620, 7, 97, 2, 2, 15620, 15621, 7, 72, 2, 2, 15621, 15622, 7, 75, 2, 2, 15622, 15623, 7, 78, 2, 2, 15623, 15624, 7, 86, 2, 2, 15624, 15625, 7, 71, 2, 2, 15625, 15626, 7, 84, 2, 2, 15626, 2076, 3, 2, 2, 2, 15627, 15628, 7, 80, 2, 2, 15628, 15629, 7, 81, 2, 2, 15629, 15630, 7, 97, 2, 2, 15630, 15631, 7, 83, 2, 2, 15631, 15632, 7, 77, 2, 2, 15632, 15633, 7, 80, 2, 2, 15633, 15634, 7, 97, 2, 2, 15634, 15635, 7, 68, 2, 2, 15635, 15636, 7, 87, 2, 2, 15636, 15637, 7, 72, 2, 2, 15637, 15638, 7, 72, 2, 2, 15638, 2078, 3, 2, 2, 2, 15639, 15640, 7, 80, 2, 2, 15640, 15641, 7, 81, 2, 2, 15641, 15642, 7, 97, 2, 2, 15642, 15643, 7, 83, 2, 2, 15643, 15644, 7, 87, 2, 2, 15644, 15645, 7, 71, 2, 2, 15645, 15646, 7, 84, 2, 2, 15646, 15647, 7, 91, 2, 2, 15647, 15648, 7, 97, 2, 2, 15648, 15649, 7, 86, 2, 2, 15649, 15650, 7, 84, 2, 2, 15650, 15651, 7, 67, 2, 2, 15651, 15652, 7, 80, 2, 2, 15652, 15653, 7, 85, 2, 2, 15653, 15654, 7, 72, 2, 2, 15654, 15655, 7, 81, 2, 2, 15655, 15656, 7, 84, 2, 2, 15656, 15657, 7, 79, 2, 2, 15657, 15658, 7, 67, 2, 2, 15658, 15659, 7, 86, 2, 2, 15659, 15660, 7, 75, 2, 2, 15660, 15661, 7, 81, 2, 2, 15661, 15662, 7, 80, 2, 2, 15662, 2080, 3, 2, 2, 2, 15663, 15664, 7, 80, 2, 2, 15664, 15665, 7, 81, 2, 2, 15665, 15666, 7, 97, 2, 2, 15666, 15667, 7, 84, 2, 2, 15667, 15668, 7, 71, 2, 2, 15668, 15669, 7, 72, 2, 2, 15669, 15670, 7, 97, 2, 2, 15670, 15671, 7, 69, 2, 2, 15671, 15672, 7, 67, 2, 2, 15672, 15673, 7, 85, 2, 2, 15673, 15674, 7, 69, 2, 2, 15674, 15675, 7, 67, 2, 2, 15675, 15676, 7, 70, 2, 2, 15676, 15677, 7, 71, 2, 2, 15677, 2082, 3, 2, 2, 2, 15678, 15679, 7, 80, 2, 2, 15679, 15680, 7, 81, 2, 2, 15680, 15681, 7, 84, 2, 2, 15681, 15682, 7, 71, 2, 2, 15682, 15683, 7, 78, 2, 2, 15683, 15684, 7, 81, 2, 2, 15684, 15685, 7, 69, 2, 2, 15685, 15686, 7, 67, 2, 2, 15686, 15687, 7, 86, 2, 2, 15687, 15688, 7, 71, 2, 2, 15688, 2084, 3, 2, 2, 2, 15689, 15690, 7, 80, 2, 2, 15690, 15691, 7, 81, 2, 2, 15691, 15692, 7, 84, 2, 2, 15692, 15693, 7, 71, 2, 2, 15693, 15694, 7, 78, 2, 2, 15694, 15695, 7, 91, 2, 2, 15695, 2086, 3, 2, 2, 2, 15696, 15697, 7, 80, 2, 2, 15697, 15698, 7, 81, 2, 2, 15698, 15699, 7, 84, 2, 2, 15699, 15700, 7, 71, 2, 2, 15700, 15701, 7, 82, 2, 2, 15701, 15702, 7, 67, 2, 2, 15702, 15703, 7, 75, 2, 2, 15703, 15704, 7, 84, 2, 2, 15704, 2088, 3, 2, 2, 2, 15705, 15706, 7, 80, 2, 2, 15706, 15707, 7, 81, 2, 2, 15707, 15708, 7, 84, 2, 2, 15708, 15709, 7, 71, 2, 2, 15709, 15710, 7, 82, 2, 2, 15710, 15711, 7, 78, 2, 2, 15711, 15712, 7, 67, 2, 2, 15712, 15713, 7, 91, 2, 2, 15713, 2090, 3, 2, 2, 2, 15714, 15715, 7, 80, 2, 2, 15715, 15716, 7, 81, 2, 2, 15716, 15717, 7, 84, 2, 2, 15717, 15718, 7, 71, 2, 2, 15718, 15719, 7, 85, 2, 2, 15719, 15720, 7, 71, 2, 2, 15720, 15721, 7, 86, 2, 2, 15721, 15722, 7, 78, 2, 2, 15722, 15723, 7, 81, 2, 2, 15723, 15724, 7, 73, 2, 2, 15724, 15725, 7, 85, 2, 2, 15725, 2092, 3, 2, 2, 2, 15726, 15727, 7, 80, 2, 2, 15727, 15728, 7, 81, 2, 2, 15728, 15729, 7, 97, 2, 2, 15729, 15730, 7, 84, 2, 2, 15730, 15731, 7, 71, 2, 2, 15731, 15732, 7, 85, 2, 2, 15732, 15733, 7, 87, 2, 2, 15733, 15734, 7, 78, 2, 2, 15734, 15735, 7, 86, 2, 2, 15735, 15736, 7, 97, 2, 2, 15736, 15737, 7, 69, 2, 2, 15737, 15738, 7, 67, 2, 2, 15738, 15739, 7, 69, 2, 2, 15739, 15740, 7, 74, 2, 2, 15740, 15741, 7, 71, 2, 2, 15741, 2094, 3, 2, 2, 2, 15742, 15743, 7, 80, 2, 2, 15743, 15744, 7, 81, 2, 2, 15744, 15745, 7, 84, 2, 2, 15745, 15746, 7, 71, 2, 2, 15746, 15747, 7, 88, 2, 2, 15747, 15748, 7, 71, 2, 2, 15748, 15749, 7, 84, 2, 2, 15749, 15750, 7, 85, 2, 2, 15750, 15751, 7, 71, 2, 2, 15751, 2096, 3, 2, 2, 2, 15752, 15753, 7, 80, 2, 2, 15753, 15754, 7, 81, 2, 2, 15754, 15755, 7, 97, 2, 2, 15755, 15756, 7, 84, 2, 2, 15756, 15757, 7, 71, 2, 2, 15757, 15758, 7, 89, 2, 2, 15758, 15759, 7, 84, 2, 2, 15759, 15760, 7, 75, 2, 2, 15760, 15761, 7, 86, 2, 2, 15761, 15762, 7, 71, 2, 2, 15762, 2098, 3, 2, 2, 2, 15763, 15764, 7, 80, 2, 2, 15764, 15765, 7, 81, 2, 2, 15765, 15766, 7, 84, 2, 2, 15766, 15767, 7, 71, 2, 2, 15767, 15768, 7, 89, 2, 2, 15768, 15769, 7, 84, 2, 2, 15769, 15770, 7, 75, 2, 2, 15770, 15771, 7, 86, 2, 2, 15771, 15772, 7, 71, 2, 2, 15772, 2100, 3, 2, 2, 2, 15773, 15774, 7, 80, 2, 2, 15774, 15775, 7, 81, 2, 2, 15775, 15776, 7, 84, 2, 2, 15776, 15777, 7, 79, 2, 2, 15777, 15778, 7, 67, 2, 2, 15778, 15779, 7, 78, 2, 2, 15779, 2102, 3, 2, 2, 2, 15780, 15781, 7, 80, 2, 2, 15781, 15782, 7, 81, 2, 2, 15782, 15783, 7, 97, 2, 2, 15783, 15784, 7, 84, 2, 2, 15784, 15785, 7, 81, 2, 2, 15785, 15786, 7, 81, 2, 2, 15786, 15787, 7, 86, 2, 2, 15787, 15788, 7, 97, 2, 2, 15788, 15789, 7, 85, 2, 2, 15789, 15790, 7, 89, 2, 2, 15790, 15791, 7, 97, 2, 2, 15791, 15792, 7, 72, 2, 2, 15792, 15793, 7, 81, 2, 2, 15793, 15794, 7, 84, 2, 2, 15794, 15795, 7, 97, 2, 2, 15795, 15796, 7, 78, 2, 2, 15796, 15797, 7, 81, 2, 2, 15797, 15798, 7, 69, 2, 2, 15798, 15799, 7, 67, 2, 2, 15799, 15800, 7, 78, 2, 2, 15800, 2104, 3, 2, 2, 2, 15801, 15802, 7, 80, 2, 2, 15802, 15803, 7, 81, 2, 2, 15803, 15804, 7, 84, 2, 2, 15804, 15805, 7, 81, 2, 2, 15805, 15806, 7, 89, 2, 2, 15806, 15807, 7, 70, 2, 2, 15807, 15808, 7, 71, 2, 2, 15808, 15809, 7, 82, 2, 2, 15809, 15810, 7, 71, 2, 2, 15810, 15811, 7, 80, 2, 2, 15811, 15812, 7, 70, 2, 2, 15812, 15813, 7, 71, 2, 2, 15813, 15814, 7, 80, 2, 2, 15814, 15815, 7, 69, 2, 2, 15815, 15816, 7, 75, 2, 2, 15816, 15817, 7, 71, 2, 2, 15817, 15818, 7, 85, 2, 2, 15818, 2106, 3, 2, 2, 2, 15819, 15820, 7, 80, 2, 2, 15820, 15821, 7, 81, 2, 2, 15821, 15822, 7, 85, 2, 2, 15822, 15823, 7, 69, 2, 2, 15823, 15824, 7, 74, 2, 2, 15824, 15825, 7, 71, 2, 2, 15825, 15826, 7, 79, 2, 2, 15826, 15827, 7, 67, 2, 2, 15827, 15828, 7, 69, 2, 2, 15828, 15829, 7, 74, 2, 2, 15829, 15830, 7, 71, 2, 2, 15830, 15831, 7, 69, 2, 2, 15831, 15832, 7, 77, 2, 2, 15832, 2108, 3, 2, 2, 2, 15833, 15834, 7, 80, 2, 2, 15834, 15835, 7, 81, 2, 2, 15835, 15836, 7, 85, 2, 2, 15836, 15837, 7, 71, 2, 2, 15837, 15838, 7, 73, 2, 2, 15838, 15839, 7, 79, 2, 2, 15839, 15840, 7, 71, 2, 2, 15840, 15841, 7, 80, 2, 2, 15841, 15842, 7, 86, 2, 2, 15842, 2110, 3, 2, 2, 2, 15843, 15844, 7, 80, 2, 2, 15844, 15845, 7, 81, 2, 2, 15845, 15846, 7, 97, 2, 2, 15846, 15847, 7, 85, 2, 2, 15847, 15848, 7, 71, 2, 2, 15848, 15849, 7, 79, 2, 2, 15849, 15850, 7, 75, 2, 2, 15850, 15851, 7, 76, 2, 2, 15851, 15852, 7, 81, 2, 2, 15852, 15853, 7, 75, 2, 2, 15853, 15854, 7, 80, 2, 2, 15854, 2112, 3, 2, 2, 2, 15855, 15856, 7, 80, 2, 2, 15856, 15857, 7, 81, 2, 2, 15857, 15858, 7, 97, 2, 2, 15858, 15859, 7, 85, 2, 2, 15859, 15860, 7, 71, 2, 2, 15860, 15861, 7, 79, 2, 2, 15861, 15862, 7, 75, 2, 2, 15862, 15863, 7, 97, 2, 2, 15863, 15864, 7, 86, 2, 2, 15864, 15865, 7, 81, 2, 2, 15865, 15866, 7, 97, 2, 2, 15866, 15867, 7, 75, 2, 2, 15867, 15868, 7, 80, 2, 2, 15868, 15869, 7, 80, 2, 2, 15869, 15870, 7, 71, 2, 2, 15870, 15871, 7, 84, 2, 2, 15871, 2114, 3, 2, 2, 2, 15872, 15873, 7, 80, 2, 2, 15873, 15874, 7, 81, 2, 2, 15874, 15875, 7, 97, 2, 2, 15875, 15876, 7, 85, 2, 2, 15876, 15877, 7, 71, 2, 2, 15877, 15878, 7, 86, 2, 2, 15878, 15879, 7, 97, 2, 2, 15879, 15880, 7, 86, 2, 2, 15880, 15881, 7, 81, 2, 2, 15881, 15882, 7, 97, 2, 2, 15882, 15883, 7, 76, 2, 2, 15883, 15884, 7, 81, 2, 2, 15884, 15885, 7, 75, 2, 2, 15885, 15886, 7, 80, 2, 2, 15886, 2116, 3, 2, 2, 2, 15887, 15888, 7, 80, 2, 2, 15888, 15889, 7, 81, 2, 2, 15889, 15890, 7, 85, 2, 2, 15890, 15891, 7, 81, 2, 2, 15891, 15892, 7, 84, 2, 2, 15892, 15893, 7, 86, 2, 2, 15893, 2118, 3, 2, 2, 2, 15894, 15895, 7, 80, 2, 2, 15895, 15896, 7, 81, 2, 2, 15896, 15897, 7, 97, 2, 2, 15897, 15898, 7, 85, 2, 2, 15898, 15899, 7, 83, 2, 2, 15899, 15900, 7, 78, 2, 2, 15900, 15901, 7, 97, 2, 2, 15901, 15902, 7, 86, 2, 2, 15902, 15903, 7, 84, 2, 2, 15903, 15904, 7, 67, 2, 2, 15904, 15905, 7, 80, 2, 2, 15905, 15906, 7, 85, 2, 2, 15906, 15907, 7, 78, 2, 2, 15907, 15908, 7, 67, 2, 2, 15908, 15909, 7, 86, 2, 2, 15909, 15910, 7, 75, 2, 2, 15910, 15911, 7, 81, 2, 2, 15911, 15912, 7, 80, 2, 2, 15912, 2120, 3, 2, 2, 2, 15913, 15914, 7, 80, 2, 2, 15914, 15915, 7, 81, 2, 2, 15915, 15916, 7, 97, 2, 2, 15916, 15917, 7, 85, 2, 2, 15917, 15918, 7, 83, 2, 2, 15918, 15919, 7, 78, 2, 2, 15919, 15920, 7, 97, 2, 2, 15920, 15921, 7, 86, 2, 2, 15921, 15922, 7, 87, 2, 2, 15922, 15923, 7, 80, 2, 2, 15923, 15924, 7, 71, 2, 2, 15924, 2122, 3, 2, 2, 2, 15925, 15926, 7, 80, 2, 2, 15926, 15927, 7, 81, 2, 2, 15927, 15928, 7, 97, 2, 2, 15928, 15929, 7, 85, 2, 2, 15929, 15930, 7, 86, 2, 2, 15930, 15931, 7, 67, 2, 2, 15931, 15932, 7, 84, 2, 2, 15932, 15933, 7, 97, 2, 2, 15933, 15934, 7, 86, 2, 2, 15934, 15935, 7, 84, 2, 2, 15935, 15936, 7, 67, 2, 2, 15936, 15937, 7, 80, 2, 2, 15937, 15938, 7, 85, 2, 2, 15938, 15939, 7, 72, 2, 2, 15939, 15940, 7, 81, 2, 2, 15940, 15941, 7, 84, 2, 2, 15941, 15942, 7, 79, 2, 2, 15942, 15943, 7, 67, 2, 2, 15943, 15944, 7, 86, 2, 2, 15944, 15945, 7, 75, 2, 2, 15945, 15946, 7, 81, 2, 2, 15946, 15947, 7, 80, 2, 2, 15947, 2124, 3, 2, 2, 2, 15948, 15949, 7, 80, 2, 2, 15949, 15950, 7, 81, 2, 2, 15950, 15951, 7, 97, 2, 2, 15951, 15952, 7, 85, 2, 2, 15952, 15953, 7, 86, 2, 2, 15953, 15954, 7, 67, 2, 2, 15954, 15955, 7, 86, 2, 2, 15955, 15956, 7, 71, 2, 2, 15956, 15957, 7, 79, 2, 2, 15957, 15958, 7, 71, 2, 2, 15958, 15959, 7, 80, 2, 2, 15959, 15960, 7, 86, 2, 2, 15960, 15961, 7, 97, 2, 2, 15961, 15962, 7, 83, 2, 2, 15962, 15963, 7, 87, 2, 2, 15963, 15964, 7, 71, 2, 2, 15964, 15965, 7, 87, 2, 2, 15965, 15966, 7, 75, 2, 2, 15966, 15967, 7, 80, 2, 2, 15967, 15968, 7, 73, 2, 2, 15968, 2126, 3, 2, 2, 2, 15969, 15970, 7, 80, 2, 2, 15970, 15971, 7, 81, 2, 2, 15971, 15972, 7, 97, 2, 2, 15972, 15973, 7, 85, 2, 2, 15973, 15974, 7, 86, 2, 2, 15974, 15975, 7, 67, 2, 2, 15975, 15976, 7, 86, 2, 2, 15976, 15977, 7, 85, 2, 2, 15977, 15978, 7, 97, 2, 2, 15978, 15979, 7, 73, 2, 2, 15979, 15980, 7, 85, 2, 2, 15980, 15981, 7, 71, 2, 2, 15981, 15982, 7, 86, 2, 2, 15982, 15983, 7, 85, 2, 2, 15983, 2128, 3, 2, 2, 2, 15984, 15985, 7, 80, 2, 2, 15985, 15986, 7, 81, 2, 2, 15986, 15987, 7, 85, 2, 2, 15987, 15988, 7, 86, 2, 2, 15988, 15989, 7, 84, 2, 2, 15989, 15990, 7, 75, 2, 2, 15990, 15991, 7, 69, 2, 2, 15991, 15992, 7, 86, 2, 2, 15992, 2130, 3, 2, 2, 2, 15993, 15994, 7, 80, 2, 2, 15994, 15995, 7, 81, 2, 2, 15995, 15996, 7, 97, 2, 2, 15996, 15997, 7, 85, 2, 2, 15997, 15998, 7, 87, 2, 2, 15998, 15999, 7, 68, 2, 2, 15999, 16000, 7, 83, 2, 2, 16000, 16001, 7, 87, 2, 2, 16001, 16002, 7, 71, 2, 2, 16002, 16003, 7, 84, 2, 2, 16003, 16004, 7, 91, 2, 2, 16004, 16005, 7, 97, 2, 2, 16005, 16006, 7, 82, 2, 2, 16006, 16007, 7, 84, 2, 2, 16007, 16008, 7, 87, 2, 2, 16008, 16009, 7, 80, 2, 2, 16009, 16010, 7, 75, 2, 2, 16010, 16011, 7, 80, 2, 2, 16011, 16012, 7, 73, 2, 2, 16012, 2132, 3, 2, 2, 2, 16013, 16014, 7, 80, 2, 2, 16014, 16015, 7, 81, 2, 2, 16015, 16016, 7, 97, 2, 2, 16016, 16017, 7, 85, 2, 2, 16017, 16018, 7, 87, 2, 2, 16018, 16019, 7, 68, 2, 2, 16019, 16020, 7, 85, 2, 2, 16020, 16021, 7, 86, 2, 2, 16021, 16022, 7, 84, 2, 2, 16022, 16023, 7, 68, 2, 2, 16023, 16024, 7, 97, 2, 2, 16024, 16025, 7, 82, 2, 2, 16025, 16026, 7, 67, 2, 2, 16026, 16027, 7, 70, 2, 2, 16027, 2134, 3, 2, 2, 2, 16028, 16029, 7, 80, 2, 2, 16029, 16030, 7, 81, 2, 2, 16030, 16031, 7, 97, 2, 2, 16031, 16032, 7, 85, 2, 2, 16032, 16033, 7, 89, 2, 2, 16033, 16034, 7, 67, 2, 2, 16034, 16035, 7, 82, 2, 2, 16035, 16036, 7, 97, 2, 2, 16036, 16037, 7, 76, 2, 2, 16037, 16038, 7, 81, 2, 2, 16038, 16039, 7, 75, 2, 2, 16039, 16040, 7, 80, 2, 2, 16040, 16041, 7, 97, 2, 2, 16041, 16042, 7, 75, 2, 2, 16042, 16043, 7, 80, 2, 2, 16043, 16044, 7, 82, 2, 2, 16044, 16045, 7, 87, 2, 2, 16045, 16046, 7, 86, 2, 2, 16046, 16047, 7, 85, 2, 2, 16047, 2136, 3, 2, 2, 2, 16048, 16049, 7, 80, 2, 2, 16049, 16050, 7, 81, 2, 2, 16050, 16051, 7, 85, 2, 2, 16051, 16052, 7, 89, 2, 2, 16052, 16053, 7, 75, 2, 2, 16053, 16054, 7, 86, 2, 2, 16054, 16055, 7, 69, 2, 2, 16055, 16056, 7, 74, 2, 2, 16056, 2138, 3, 2, 2, 2, 16057, 16058, 7, 80, 2, 2, 16058, 16059, 7, 81, 2, 2, 16059, 16060, 7, 97, 2, 2, 16060, 16061, 7, 86, 2, 2, 16061, 16062, 7, 67, 2, 2, 16062, 16063, 7, 68, 2, 2, 16063, 16064, 7, 78, 2, 2, 16064, 16065, 7, 71, 2, 2, 16065, 16066, 7, 97, 2, 2, 16066, 16067, 7, 78, 2, 2, 16067, 16068, 7, 81, 2, 2, 16068, 16069, 7, 81, 2, 2, 16069, 16070, 7, 77, 2, 2, 16070, 16071, 7, 87, 2, 2, 16071, 16072, 7, 82, 2, 2, 16072, 16073, 7, 97, 2, 2, 16073, 16074, 7, 68, 2, 2, 16074, 16075, 7, 91, 2, 2, 16075, 16076, 7, 97, 2, 2, 16076, 16077, 7, 80, 2, 2, 16077, 16078, 7, 78, 2, 2, 16078, 2140, 3, 2, 2, 2, 16079, 16080, 7, 80, 2, 2, 16080, 16081, 7, 81, 2, 2, 16081, 16082, 7, 97, 2, 2, 16082, 16083, 7, 86, 2, 2, 16083, 16084, 7, 71, 2, 2, 16084, 16085, 7, 79, 2, 2, 16085, 16086, 7, 82, 2, 2, 16086, 16087, 7, 97, 2, 2, 16087, 16088, 7, 86, 2, 2, 16088, 16089, 7, 67, 2, 2, 16089, 16090, 7, 68, 2, 2, 16090, 16091, 7, 78, 2, 2, 16091, 16092, 7, 71, 2, 2, 16092, 2142, 3, 2, 2, 2, 16093, 16094, 7, 80, 2, 2, 16094, 16095, 7, 81, 2, 2, 16095, 16096, 7, 86, 2, 2, 16096, 16097, 7, 74, 2, 2, 16097, 16098, 7, 75, 2, 2, 16098, 16099, 7, 80, 2, 2, 16099, 16100, 7, 73, 2, 2, 16100, 2144, 3, 2, 2, 2, 16101, 16102, 7, 80, 2, 2, 16102, 16103, 7, 81, 2, 2, 16103, 16104, 7, 86, 2, 2, 16104, 16105, 7, 75, 2, 2, 16105, 16106, 7, 72, 2, 2, 16106, 16107, 7, 75, 2, 2, 16107, 16108, 7, 69, 2, 2, 16108, 16109, 7, 67, 2, 2, 16109, 16110, 7, 86, 2, 2, 16110, 16111, 7, 75, 2, 2, 16111, 16112, 7, 81, 2, 2, 16112, 16113, 7, 80, 2, 2, 16113, 2146, 3, 2, 2, 2, 16114, 16115, 7, 80, 2, 2, 16115, 16116, 7, 81, 2, 2, 16116, 16117, 7, 86, 2, 2, 16117, 2148, 3, 2, 2, 2, 16118, 16119, 7, 80, 2, 2, 16119, 16120, 7, 81, 2, 2, 16120, 16121, 7, 97, 2, 2, 16121, 16122, 7, 86, 2, 2, 16122, 16123, 7, 84, 2, 2, 16123, 16124, 7, 67, 2, 2, 16124, 16125, 7, 80, 2, 2, 16125, 16126, 7, 85, 2, 2, 16126, 16127, 7, 72, 2, 2, 16127, 16128, 7, 81, 2, 2, 16128, 16129, 7, 84, 2, 2, 16129, 16130, 7, 79, 2, 2, 16130, 16131, 7, 97, 2, 2, 16131, 16132, 7, 70, 2, 2, 16132, 16133, 7, 75, 2, 2, 16133, 16134, 7, 85, 2, 2, 16134, 16135, 7, 86, 2, 2, 16135, 16136, 7, 75, 2, 2, 16136, 16137, 7, 80, 2, 2, 16137, 16138, 7, 69, 2, 2, 16138, 16139, 7, 86, 2, 2, 16139, 16140, 7, 97, 2, 2, 16140, 16141, 7, 67, 2, 2, 16141, 16142, 7, 73, 2, 2, 16142, 16143, 7, 73, 2, 2, 16143, 2150, 3, 2, 2, 2, 16144, 16145, 7, 80, 2, 2, 16145, 16146, 7, 81, 2, 2, 16146, 16147, 7, 97, 2, 2, 16147, 16148, 7, 87, 2, 2, 16148, 16149, 7, 80, 2, 2, 16149, 16150, 7, 80, 2, 2, 16150, 16151, 7, 71, 2, 2, 16151, 16152, 7, 85, 2, 2, 16152, 16153, 7, 86, 2, 2, 16153, 2152, 3, 2, 2, 2, 16154, 16155, 7, 80, 2, 2, 16155, 16156, 7, 81, 2, 2, 16156, 16157, 7, 97, 2, 2, 16157, 16158, 7, 87, 2, 2, 16158, 16159, 7, 85, 2, 2, 16159, 16160, 7, 71, 2, 2, 16160, 16161, 7, 97, 2, 2, 16161, 16162, 7, 69, 2, 2, 16162, 16163, 7, 87, 2, 2, 16163, 16164, 7, 68, 2, 2, 16164, 16165, 7, 71, 2, 2, 16165, 2154, 3, 2, 2, 2, 16166, 16167, 7, 80, 2, 2, 16167, 16168, 7, 81, 2, 2, 16168, 16169, 7, 97, 2, 2, 16169, 16170, 7, 87, 2, 2, 16170, 16171, 7, 85, 2, 2, 16171, 16172, 7, 71, 2, 2, 16172, 16173, 7, 97, 2, 2, 16173, 16174, 7, 74, 2, 2, 16174, 16175, 7, 67, 2, 2, 16175, 16176, 7, 85, 2, 2, 16176, 16177, 7, 74, 2, 2, 16177, 16178, 7, 97, 2, 2, 16178, 16179, 7, 67, 2, 2, 16179, 16180, 7, 73, 2, 2, 16180, 16181, 7, 73, 2, 2, 16181, 16182, 7, 84, 2, 2, 16182, 16183, 7, 71, 2, 2, 16183, 16184, 7, 73, 2, 2, 16184, 16185, 7, 67, 2, 2, 16185, 16186, 7, 86, 2, 2, 16186, 16187, 7, 75, 2, 2, 16187, 16188, 7, 81, 2, 2, 16188, 16189, 7, 80, 2, 2, 16189, 2156, 3, 2, 2, 2, 16190, 16191, 7, 80, 2, 2, 16191, 16192, 7, 81, 2, 2, 16192, 16193, 7, 97, 2, 2, 16193, 16194, 7, 87, 2, 2, 16194, 16195, 7, 85, 2, 2, 16195, 16196, 7, 71, 2, 2, 16196, 16197, 7, 97, 2, 2, 16197, 16198, 7, 74, 2, 2, 16198, 16199, 7, 67, 2, 2, 16199, 16200, 7, 85, 2, 2, 16200, 16201, 7, 74, 2, 2, 16201, 16202, 7, 97, 2, 2, 16202, 16203, 7, 73, 2, 2, 16203, 16204, 7, 68, 2, 2, 16204, 16205, 7, 91, 2, 2, 16205, 16206, 7, 97, 2, 2, 16206, 16207, 7, 72, 2, 2, 16207, 16208, 7, 81, 2, 2, 16208, 16209, 7, 84, 2, 2, 16209, 16210, 7, 97, 2, 2, 16210, 16211, 7, 82, 2, 2, 16211, 16212, 7, 87, 2, 2, 16212, 16213, 7, 85, 2, 2, 16213, 16214, 7, 74, 2, 2, 16214, 16215, 7, 70, 2, 2, 16215, 16216, 7, 81, 2, 2, 16216, 16217, 7, 89, 2, 2, 16217, 16218, 7, 80, 2, 2, 16218, 2158, 3, 2, 2, 2, 16219, 16220, 7, 80, 2, 2, 16220, 16221, 7, 81, 2, 2, 16221, 16222, 7, 97, 2, 2, 16222, 16223, 7, 87, 2, 2, 16223, 16224, 7, 85, 2, 2, 16224, 16225, 7, 71, 2, 2, 16225, 16226, 7, 97, 2, 2, 16226, 16227, 7, 74, 2, 2, 16227, 16228, 7, 67, 2, 2, 16228, 16229, 7, 85, 2, 2, 16229, 16230, 7, 74, 2, 2, 16230, 2160, 3, 2, 2, 2, 16231, 16232, 7, 80, 2, 2, 16232, 16233, 7, 81, 2, 2, 16233, 16234, 7, 97, 2, 2, 16234, 16235, 7, 87, 2, 2, 16235, 16236, 7, 85, 2, 2, 16236, 16237, 7, 71, 2, 2, 16237, 16238, 7, 97, 2, 2, 16238, 16239, 7, 75, 2, 2, 16239, 16240, 7, 80, 2, 2, 16240, 16241, 7, 88, 2, 2, 16241, 16242, 7, 75, 2, 2, 16242, 16243, 7, 85, 2, 2, 16243, 16244, 7, 75, 2, 2, 16244, 16245, 7, 68, 2, 2, 16245, 16246, 7, 78, 2, 2, 16246, 16247, 7, 71, 2, 2, 16247, 16248, 7, 97, 2, 2, 16248, 16249, 7, 75, 2, 2, 16249, 16250, 7, 80, 2, 2, 16250, 16251, 7, 70, 2, 2, 16251, 16252, 7, 71, 2, 2, 16252, 16253, 7, 90, 2, 2, 16253, 16254, 7, 71, 2, 2, 16254, 16255, 7, 85, 2, 2, 16255, 2162, 3, 2, 2, 2, 16256, 16257, 7, 80, 2, 2, 16257, 16258, 7, 81, 2, 2, 16258, 16259, 7, 97, 2, 2, 16259, 16260, 7, 87, 2, 2, 16260, 16261, 7, 85, 2, 2, 16261, 16262, 7, 71, 2, 2, 16262, 16263, 7, 97, 2, 2, 16263, 16264, 7, 79, 2, 2, 16264, 16265, 7, 71, 2, 2, 16265, 16266, 7, 84, 2, 2, 16266, 16267, 7, 73, 2, 2, 16267, 16268, 7, 71, 2, 2, 16268, 2164, 3, 2, 2, 2, 16269, 16270, 7, 80, 2, 2, 16270, 16271, 7, 81, 2, 2, 16271, 16272, 7, 97, 2, 2, 16272, 16273, 7, 87, 2, 2, 16273, 16274, 7, 85, 2, 2, 16274, 16275, 7, 71, 2, 2, 16275, 16276, 7, 97, 2, 2, 16276, 16277, 7, 80, 2, 2, 16277, 16278, 7, 78, 2, 2, 16278, 2166, 3, 2, 2, 2, 16279, 16280, 7, 80, 2, 2, 16280, 16281, 7, 81, 2, 2, 16281, 16282, 7, 97, 2, 2, 16282, 16283, 7, 87, 2, 2, 16283, 16284, 7, 85, 2, 2, 16284, 16285, 7, 71, 2, 2, 16285, 16286, 7, 97, 2, 2, 16286, 16287, 7, 88, 2, 2, 16287, 16288, 7, 71, 2, 2, 16288, 16289, 7, 69, 2, 2, 16289, 16290, 7, 86, 2, 2, 16290, 16291, 7, 81, 2, 2, 16291, 16292, 7, 84, 2, 2, 16292, 16293, 7, 97, 2, 2, 16293, 16294, 7, 67, 2, 2, 16294, 16295, 7, 73, 2, 2, 16295, 16296, 7, 73, 2, 2, 16296, 16297, 7, 84, 2, 2, 16297, 16298, 7, 71, 2, 2, 16298, 16299, 7, 73, 2, 2, 16299, 16300, 7, 67, 2, 2, 16300, 16301, 7, 86, 2, 2, 16301, 16302, 7, 75, 2, 2, 16302, 16303, 7, 81, 2, 2, 16303, 16304, 7, 80, 2, 2, 16304, 2168, 3, 2, 2, 2, 16305, 16306, 7, 80, 2, 2, 16306, 16307, 7, 81, 2, 2, 16307, 16308, 7, 88, 2, 2, 16308, 16309, 7, 67, 2, 2, 16309, 16310, 7, 78, 2, 2, 16310, 16311, 7, 75, 2, 2, 16311, 16312, 7, 70, 2, 2, 16312, 16313, 7, 67, 2, 2, 16313, 16314, 7, 86, 2, 2, 16314, 16315, 7, 71, 2, 2, 16315, 2170, 3, 2, 2, 2, 16316, 16317, 7, 80, 2, 2, 16317, 16318, 7, 81, 2, 2, 16318, 16319, 7, 97, 2, 2, 16319, 16320, 7, 88, 2, 2, 16320, 16321, 7, 71, 2, 2, 16321, 16322, 7, 69, 2, 2, 16322, 16323, 7, 86, 2, 2, 16323, 16324, 7, 81, 2, 2, 16324, 16325, 7, 84, 2, 2, 16325, 16326, 7, 97, 2, 2, 16326, 16327, 7, 86, 2, 2, 16327, 16328, 7, 84, 2, 2, 16328, 16329, 7, 67, 2, 2, 16329, 16330, 7, 80, 2, 2, 16330, 16331, 7, 85, 2, 2, 16331, 16332, 7, 72, 2, 2, 16332, 16333, 7, 81, 2, 2, 16333, 16334, 7, 84, 2, 2, 16334, 16335, 7, 79, 2, 2, 16335, 16336, 7, 97, 2, 2, 16336, 16337, 7, 70, 2, 2, 16337, 16338, 7, 75, 2, 2, 16338, 16339, 7, 79, 2, 2, 16339, 16340, 7, 85, 2, 2, 16340, 2172, 3, 2, 2, 2, 16341, 16342, 7, 80, 2, 2, 16342, 16343, 7, 81, 2, 2, 16343, 16344, 7, 97, 2, 2, 16344, 16345, 7, 88, 2, 2, 16345, 16346, 7, 71, 2, 2, 16346, 16347, 7, 69, 2, 2, 16347, 16348, 7, 86, 2, 2, 16348, 16349, 7, 81, 2, 2, 16349, 16350, 7, 84, 2, 2, 16350, 16351, 7, 97, 2, 2, 16351, 16352, 7, 86, 2, 2, 16352, 16353, 7, 84, 2, 2, 16353, 16354, 7, 67, 2, 2, 16354, 16355, 7, 80, 2, 2, 16355, 16356, 7, 85, 2, 2, 16356, 16357, 7, 72, 2, 2, 16357, 16358, 7, 81, 2, 2, 16358, 16359, 7, 84, 2, 2, 16359, 16360, 7, 79, 2, 2, 16360, 16361, 7, 97, 2, 2, 16361, 16362, 7, 72, 2, 2, 16362, 16363, 7, 67, 2, 2, 16363, 16364, 7, 69, 2, 2, 16364, 16365, 7, 86, 2, 2, 16365, 2174, 3, 2, 2, 2, 16366, 16367, 7, 80, 2, 2, 16367, 16368, 7, 81, 2, 2, 16368, 16369, 7, 97, 2, 2, 16369, 16370, 7, 88, 2, 2, 16370, 16371, 7, 71, 2, 2, 16371, 16372, 7, 69, 2, 2, 16372, 16373, 7, 86, 2, 2, 16373, 16374, 7, 81, 2, 2, 16374, 16375, 7, 84, 2, 2, 16375, 16376, 7, 97, 2, 2, 16376, 16377, 7, 86, 2, 2, 16377, 16378, 7, 84, 2, 2, 16378, 16379, 7, 67, 2, 2, 16379, 16380, 7, 80, 2, 2, 16380, 16381, 7, 85, 2, 2, 16381, 16382, 7, 72, 2, 2, 16382, 16383, 7, 81, 2, 2, 16383, 16384, 7, 84, 2, 2, 16384, 16385, 7, 79, 2, 2, 16385, 2176, 3, 2, 2, 2, 16386, 16387, 7, 80, 2, 2, 16387, 16388, 7, 81, 2, 2, 16388, 16389, 7, 89, 2, 2, 16389, 16390, 7, 67, 2, 2, 16390, 16391, 7, 75, 2, 2, 16391, 16392, 7, 86, 2, 2, 16392, 2178, 3, 2, 2, 2, 16393, 16394, 7, 80, 2, 2, 16394, 16395, 7, 81, 2, 2, 16395, 16396, 7, 97, 2, 2, 16396, 16397, 7, 90, 2, 2, 16397, 16398, 7, 70, 2, 2, 16398, 16399, 7, 68, 2, 2, 16399, 16400, 7, 97, 2, 2, 16400, 16401, 7, 72, 2, 2, 16401, 16402, 7, 67, 2, 2, 16402, 16403, 7, 85, 2, 2, 16403, 16404, 7, 86, 2, 2, 16404, 16405, 7, 82, 2, 2, 16405, 16406, 7, 67, 2, 2, 16406, 16407, 7, 86, 2, 2, 16407, 16408, 7, 74, 2, 2, 16408, 16409, 7, 97, 2, 2, 16409, 16410, 7, 75, 2, 2, 16410, 16411, 7, 80, 2, 2, 16411, 16412, 7, 85, 2, 2, 16412, 16413, 7, 71, 2, 2, 16413, 16414, 7, 84, 2, 2, 16414, 16415, 7, 86, 2, 2, 16415, 2180, 3, 2, 2, 2, 16416, 16417, 7, 80, 2, 2, 16417, 16418, 7, 81, 2, 2, 16418, 16419, 7, 97, 2, 2, 16419, 16420, 7, 90, 2, 2, 16420, 16421, 7, 79, 2, 2, 16421, 16422, 7, 78, 2, 2, 16422, 16423, 7, 97, 2, 2, 16423, 16424, 7, 70, 2, 2, 16424, 16425, 7, 79, 2, 2, 16425, 16426, 7, 78, 2, 2, 16426, 16427, 7, 97, 2, 2, 16427, 16428, 7, 84, 2, 2, 16428, 16429, 7, 71, 2, 2, 16429, 16430, 7, 89, 2, 2, 16430, 16431, 7, 84, 2, 2, 16431, 16432, 7, 75, 2, 2, 16432, 16433, 7, 86, 2, 2, 16433, 16434, 7, 71, 2, 2, 16434, 2182, 3, 2, 2, 2, 16435, 16436, 7, 80, 2, 2, 16436, 16437, 7, 81, 2, 2, 16437, 16438, 7, 97, 2, 2, 16438, 16439, 7, 90, 2, 2, 16439, 16440, 7, 79, 2, 2, 16440, 16441, 7, 78, 2, 2, 16441, 16442, 7, 75, 2, 2, 16442, 16443, 7, 80, 2, 2, 16443, 16444, 7, 70, 2, 2, 16444, 16445, 7, 71, 2, 2, 16445, 16446, 7, 90, 2, 2, 16446, 16447, 7, 97, 2, 2, 16447, 16448, 7, 84, 2, 2, 16448, 16449, 7, 71, 2, 2, 16449, 16450, 7, 89, 2, 2, 16450, 16451, 7, 84, 2, 2, 16451, 16452, 7, 75, 2, 2, 16452, 16453, 7, 86, 2, 2, 16453, 16454, 7, 71, 2, 2, 16454, 16455, 7, 97, 2, 2, 16455, 16456, 7, 75, 2, 2, 16456, 16457, 7, 80, 2, 2, 16457, 16458, 7, 97, 2, 2, 16458, 16459, 7, 85, 2, 2, 16459, 16460, 7, 71, 2, 2, 16460, 16461, 7, 78, 2, 2, 16461, 16462, 7, 71, 2, 2, 16462, 16463, 7, 69, 2, 2, 16463, 16464, 7, 86, 2, 2, 16464, 2184, 3, 2, 2, 2, 16465, 16466, 7, 80, 2, 2, 16466, 16467, 7, 81, 2, 2, 16467, 16468, 7, 97, 2, 2, 16468, 16469, 7, 90, 2, 2, 16469, 16470, 7, 79, 2, 2, 16470, 16471, 7, 78, 2, 2, 16471, 16472, 7, 75, 2, 2, 16472, 16473, 7, 80, 2, 2, 16473, 16474, 7, 70, 2, 2, 16474, 16475, 7, 71, 2, 2, 16475, 16476, 7, 90, 2, 2, 16476, 16477, 7, 97, 2, 2, 16477, 16478, 7, 84, 2, 2, 16478, 16479, 7, 71, 2, 2, 16479, 16480, 7, 89, 2, 2, 16480, 16481, 7, 84, 2, 2, 16481, 16482, 7, 75, 2, 2, 16482, 16483, 7, 86, 2, 2, 16483, 16484, 7, 71, 2, 2, 16484, 2186, 3, 2, 2, 2, 16485, 16486, 7, 80, 2, 2, 16486, 16487, 7, 81, 2, 2, 16487, 16488, 7, 97, 2, 2, 16488, 16489, 7, 90, 2, 2, 16489, 16490, 7, 79, 2, 2, 16490, 16491, 7, 78, 2, 2, 16491, 16492, 7, 97, 2, 2, 16492, 16493, 7, 83, 2, 2, 16493, 16494, 7, 87, 2, 2, 16494, 16495, 7, 71, 2, 2, 16495, 16496, 7, 84, 2, 2, 16496, 16497, 7, 91, 2, 2, 16497, 16498, 7, 97, 2, 2, 16498, 16499, 7, 84, 2, 2, 16499, 16500, 7, 71, 2, 2, 16500, 16501, 7, 89, 2, 2, 16501, 16502, 7, 84, 2, 2, 16502, 16503, 7, 75, 2, 2, 16503, 16504, 7, 86, 2, 2, 16504, 16505, 7, 71, 2, 2, 16505, 2188, 3, 2, 2, 2, 16506, 16507, 7, 80, 2, 2, 16507, 16508, 7, 81, 2, 2, 16508, 16509, 7, 97, 2, 2, 16509, 16510, 7, 92, 2, 2, 16510, 16511, 7, 81, 2, 2, 16511, 16512, 7, 80, 2, 2, 16512, 16513, 7, 71, 2, 2, 16513, 16514, 7, 79, 2, 2, 16514, 16515, 7, 67, 2, 2, 16515, 16516, 7, 82, 2, 2, 16516, 2190, 3, 2, 2, 2, 16517, 16518, 7, 80, 2, 2, 16518, 16519, 7, 86, 2, 2, 16519, 16520, 7, 74, 2, 2, 16520, 16521, 7, 97, 2, 2, 16521, 16522, 7, 88, 2, 2, 16522, 16523, 7, 67, 2, 2, 16523, 16524, 7, 78, 2, 2, 16524, 16525, 7, 87, 2, 2, 16525, 16526, 7, 71, 2, 2, 16526, 2192, 3, 2, 2, 2, 16527, 16528, 7, 80, 2, 2, 16528, 16529, 7, 87, 2, 2, 16529, 16530, 7, 78, 2, 2, 16530, 16531, 7, 78, 2, 2, 16531, 16532, 7, 75, 2, 2, 16532, 16533, 7, 72, 2, 2, 16533, 2194, 3, 2, 2, 2, 16534, 16535, 7, 80, 2, 2, 16535, 16536, 7, 87, 2, 2, 16536, 16537, 7, 78, 2, 2, 16537, 16538, 7, 78, 2, 2, 16538, 2196, 3, 2, 2, 2, 16539, 16540, 7, 80, 2, 2, 16540, 16541, 7, 87, 2, 2, 16541, 16542, 7, 78, 2, 2, 16542, 16543, 7, 78, 2, 2, 16543, 16544, 7, 85, 2, 2, 16544, 2198, 3, 2, 2, 2, 16545, 16546, 7, 80, 2, 2, 16546, 16547, 7, 87, 2, 2, 16547, 16548, 7, 79, 2, 2, 16548, 16549, 7, 68, 2, 2, 16549, 16550, 7, 71, 2, 2, 16550, 16551, 7, 84, 2, 2, 16551, 2200, 3, 2, 2, 2, 16552, 16553, 7, 80, 2, 2, 16553, 16554, 7, 87, 2, 2, 16554, 16555, 7, 79, 2, 2, 16555, 16556, 7, 71, 2, 2, 16556, 16557, 7, 84, 2, 2, 16557, 16558, 7, 75, 2, 2, 16558, 16559, 7, 69, 2, 2, 16559, 2202, 3, 2, 2, 2, 16560, 16561, 7, 80, 2, 2, 16561, 16562, 7, 87, 2, 2, 16562, 16563, 7, 79, 2, 2, 16563, 16564, 7, 97, 2, 2, 16564, 16565, 7, 75, 2, 2, 16565, 16566, 7, 80, 2, 2, 16566, 16567, 7, 70, 2, 2, 16567, 16568, 7, 71, 2, 2, 16568, 16569, 7, 90, 2, 2, 16569, 16570, 7, 97, 2, 2, 16570, 16571, 7, 77, 2, 2, 16571, 16572, 7, 71, 2, 2, 16572, 16573, 7, 91, 2, 2, 16573, 16574, 7, 85, 2, 2, 16574, 2204, 3, 2, 2, 2, 16575, 16576, 7, 80, 2, 2, 16576, 16577, 7, 87, 2, 2, 16577, 16578, 7, 79, 2, 2, 16578, 16579, 7, 86, 2, 2, 16579, 16580, 7, 81, 2, 2, 16580, 16581, 7, 70, 2, 2, 16581, 16582, 7, 85, 2, 2, 16582, 16583, 7, 75, 2, 2, 16583, 16584, 7, 80, 2, 2, 16584, 16585, 7, 86, 2, 2, 16585, 16586, 7, 71, 2, 2, 16586, 16587, 7, 84, 2, 2, 16587, 16588, 7, 88, 2, 2, 16588, 16589, 7, 67, 2, 2, 16589, 16590, 7, 78, 2, 2, 16590, 2206, 3, 2, 2, 2, 16591, 16592, 7, 80, 2, 2, 16592, 16593, 7, 87, 2, 2, 16593, 16594, 7, 79, 2, 2, 16594, 16595, 7, 86, 2, 2, 16595, 16596, 7, 81, 2, 2, 16596, 16597, 7, 91, 2, 2, 16597, 16598, 7, 79, 2, 2, 16598, 16599, 7, 75, 2, 2, 16599, 16600, 7, 80, 2, 2, 16600, 16601, 7, 86, 2, 2, 16601, 16602, 7, 71, 2, 2, 16602, 16603, 7, 84, 2, 2, 16603, 16604, 7, 88, 2, 2, 16604, 16605, 7, 67, 2, 2, 16605, 16606, 7, 78, 2, 2, 16606, 2208, 3, 2, 2, 2, 16607, 16608, 7, 80, 2, 2, 16608, 16609, 7, 88, 2, 2, 16609, 16610, 7, 67, 2, 2, 16610, 16611, 7, 84, 2, 2, 16611, 16612, 7, 69, 2, 2, 16612, 16613, 7, 74, 2, 2, 16613, 16614, 7, 67, 2, 2, 16614, 16615, 7, 84, 2, 2, 16615, 16616, 7, 52, 2, 2, 16616, 2210, 3, 2, 2, 2, 16617, 16618, 7, 80, 2, 2, 16618, 16619, 7, 88, 2, 2, 16619, 16620, 7, 78, 2, 2, 16620, 16621, 7, 52, 2, 2, 16621, 2212, 3, 2, 2, 2, 16622, 16623, 7, 81, 2, 2, 16623, 16624, 7, 68, 2, 2, 16624, 16625, 7, 76, 2, 2, 16625, 16626, 7, 71, 2, 2, 16626, 16627, 7, 69, 2, 2, 16627, 16628, 7, 86, 2, 2, 16628, 16629, 7, 52, 2, 2, 16629, 16630, 7, 90, 2, 2, 16630, 16631, 7, 79, 2, 2, 16631, 16632, 7, 78, 2, 2, 16632, 2214, 3, 2, 2, 2, 16633, 16634, 7, 81, 2, 2, 16634, 16635, 7, 68, 2, 2, 16635, 16636, 7, 76, 2, 2, 16636, 16637, 7, 71, 2, 2, 16637, 16638, 7, 69, 2, 2, 16638, 16639, 7, 86, 2, 2, 16639, 2216, 3, 2, 2, 2, 16640, 16641, 7, 81, 2, 2, 16641, 16642, 7, 68, 2, 2, 16642, 16643, 7, 76, 2, 2, 16643, 16644, 7, 97, 2, 2, 16644, 16645, 7, 75, 2, 2, 16645, 16646, 7, 70, 2, 2, 16646, 2218, 3, 2, 2, 2, 16647, 16648, 7, 81, 2, 2, 16648, 16649, 7, 68, 2, 2, 16649, 16650, 7, 76, 2, 2, 16650, 16651, 7, 80, 2, 2, 16651, 16652, 7, 81, 2, 2, 16652, 2220, 3, 2, 2, 2, 16653, 16654, 7, 81, 2, 2, 16654, 16655, 7, 68, 2, 2, 16655, 16656, 7, 76, 2, 2, 16656, 16657, 7, 80, 2, 2, 16657, 16658, 7, 81, 2, 2, 16658, 16659, 7, 97, 2, 2, 16659, 16660, 7, 84, 2, 2, 16660, 16661, 7, 71, 2, 2, 16661, 16662, 7, 87, 2, 2, 16662, 16663, 7, 85, 2, 2, 16663, 16664, 7, 71, 2, 2, 16664, 2222, 3, 2, 2, 2, 16665, 16666, 7, 81, 2, 2, 16666, 16667, 7, 69, 2, 2, 16667, 16668, 7, 69, 2, 2, 16668, 16669, 7, 87, 2, 2, 16669, 16670, 7, 84, 2, 2, 16670, 16671, 7, 71, 2, 2, 16671, 16672, 7, 80, 2, 2, 16672, 16673, 7, 69, 2, 2, 16673, 16674, 7, 71, 2, 2, 16674, 16675, 7, 85, 2, 2, 16675, 2224, 3, 2, 2, 2, 16676, 16677, 7, 81, 2, 2, 16677, 16678, 7, 72, 2, 2, 16678, 16679, 7, 72, 2, 2, 16679, 16680, 7, 78, 2, 2, 16680, 16681, 7, 75, 2, 2, 16681, 16682, 7, 80, 2, 2, 16682, 16683, 7, 71, 2, 2, 16683, 2226, 3, 2, 2, 2, 16684, 16685, 7, 81, 2, 2, 16685, 16686, 7, 72, 2, 2, 16686, 16687, 7, 72, 2, 2, 16687, 2228, 3, 2, 2, 2, 16688, 16689, 7, 81, 2, 2, 16689, 16690, 7, 72, 2, 2, 16690, 16691, 7, 72, 2, 2, 16691, 16692, 7, 85, 2, 2, 16692, 16693, 7, 71, 2, 2, 16693, 16694, 7, 86, 2, 2, 16694, 2230, 3, 2, 2, 2, 16695, 16696, 7, 81, 2, 2, 16696, 16697, 7, 72, 2, 2, 16697, 2232, 3, 2, 2, 2, 16698, 16699, 7, 81, 2, 2, 16699, 16700, 7, 75, 2, 2, 16700, 16701, 7, 70, 2, 2, 16701, 16702, 7, 75, 2, 2, 16702, 16703, 7, 80, 2, 2, 16703, 16704, 7, 70, 2, 2, 16704, 16705, 7, 71, 2, 2, 16705, 16706, 7, 90, 2, 2, 16706, 2234, 3, 2, 2, 2, 16707, 16708, 7, 81, 2, 2, 16708, 16709, 7, 75, 2, 2, 16709, 16710, 7, 70, 2, 2, 16710, 2236, 3, 2, 2, 2, 16711, 16712, 7, 81, 2, 2, 16712, 16713, 7, 78, 2, 2, 16713, 16714, 7, 67, 2, 2, 16714, 16715, 7, 82, 2, 2, 16715, 2238, 3, 2, 2, 2, 16716, 16717, 7, 81, 2, 2, 16717, 16718, 7, 78, 2, 2, 16718, 16719, 7, 70, 2, 2, 16719, 2240, 3, 2, 2, 2, 16720, 16721, 7, 81, 2, 2, 16721, 16722, 7, 78, 2, 2, 16722, 16723, 7, 70, 2, 2, 16723, 16724, 7, 97, 2, 2, 16724, 16725, 7, 82, 2, 2, 16725, 16726, 7, 87, 2, 2, 16726, 16727, 7, 85, 2, 2, 16727, 16728, 7, 74, 2, 2, 16728, 16729, 7, 97, 2, 2, 16729, 16730, 7, 82, 2, 2, 16730, 16731, 7, 84, 2, 2, 16731, 16732, 7, 71, 2, 2, 16732, 16733, 7, 70, 2, 2, 16733, 2242, 3, 2, 2, 2, 16734, 16735, 7, 81, 2, 2, 16735, 16736, 7, 78, 2, 2, 16736, 16737, 7, 85, 2, 2, 16737, 2244, 3, 2, 2, 2, 16738, 16739, 7, 81, 2, 2, 16739, 16740, 7, 78, 2, 2, 16740, 16741, 7, 86, 2, 2, 16741, 16742, 7, 82, 2, 2, 16742, 2246, 3, 2, 2, 2, 16743, 16744, 7, 81, 2, 2, 16744, 16745, 7, 79, 2, 2, 16745, 16746, 7, 75, 2, 2, 16746, 16747, 7, 86, 2, 2, 16747, 2248, 3, 2, 2, 2, 16748, 16749, 7, 81, 2, 2, 16749, 16750, 7, 80, 2, 2, 16750, 16751, 7, 71, 2, 2, 16751, 2250, 3, 2, 2, 2, 16752, 16753, 7, 81, 2, 2, 16753, 16754, 7, 80, 2, 2, 16754, 16755, 7, 78, 2, 2, 16755, 16756, 7, 75, 2, 2, 16756, 16757, 7, 80, 2, 2, 16757, 16758, 7, 71, 2, 2, 16758, 2252, 3, 2, 2, 2, 16759, 16760, 7, 81, 2, 2, 16760, 16761, 7, 80, 2, 2, 16761, 16762, 7, 78, 2, 2, 16762, 16763, 7, 75, 2, 2, 16763, 16764, 7, 80, 2, 2, 16764, 16765, 7, 71, 2, 2, 16765, 16766, 7, 78, 2, 2, 16766, 16767, 7, 81, 2, 2, 16767, 16768, 7, 73, 2, 2, 16768, 2254, 3, 2, 2, 2, 16769, 16770, 7, 81, 2, 2, 16770, 16771, 7, 80, 2, 2, 16771, 16772, 7, 78, 2, 2, 16772, 16773, 7, 91, 2, 2, 16773, 2256, 3, 2, 2, 2, 16774, 16775, 7, 81, 2, 2, 16775, 16776, 7, 80, 2, 2, 16776, 2258, 3, 2, 2, 2, 16777, 16778, 7, 81, 2, 2, 16778, 16779, 7, 82, 2, 2, 16779, 16780, 7, 67, 2, 2, 16780, 16781, 7, 83, 2, 2, 16781, 16782, 7, 87, 2, 2, 16782, 16783, 7, 71, 2, 2, 16783, 2260, 3, 2, 2, 2, 16784, 16785, 7, 81, 2, 2, 16785, 16786, 7, 82, 2, 2, 16786, 16787, 7, 67, 2, 2, 16787, 16788, 7, 83, 2, 2, 16788, 16789, 7, 87, 2, 2, 16789, 16790, 7, 71, 2, 2, 16790, 16791, 7, 97, 2, 2, 16791, 16792, 7, 86, 2, 2, 16792, 16793, 7, 84, 2, 2, 16793, 16794, 7, 67, 2, 2, 16794, 16795, 7, 80, 2, 2, 16795, 16796, 7, 85, 2, 2, 16796, 16797, 7, 72, 2, 2, 16797, 16798, 7, 81, 2, 2, 16798, 16799, 7, 84, 2, 2, 16799, 16800, 7, 79, 2, 2, 16800, 2262, 3, 2, 2, 2, 16801, 16802, 7, 81, 2, 2, 16802, 16803, 7, 82, 2, 2, 16803, 16804, 7, 67, 2, 2, 16804, 16805, 7, 83, 2, 2, 16805, 16806, 7, 87, 2, 2, 16806, 16807, 7, 71, 2, 2, 16807, 16808, 7, 97, 2, 2, 16808, 16809, 7, 90, 2, 2, 16809, 16810, 7, 69, 2, 2, 16810, 16811, 7, 67, 2, 2, 16811, 16812, 7, 80, 2, 2, 16812, 16813, 7, 81, 2, 2, 16813, 16814, 7, 80, 2, 2, 16814, 16815, 7, 75, 2, 2, 16815, 16816, 7, 69, 2, 2, 16816, 16817, 7, 67, 2, 2, 16817, 16818, 7, 78, 2, 2, 16818, 2264, 3, 2, 2, 2, 16819, 16820, 7, 81, 2, 2, 16820, 16821, 7, 82, 2, 2, 16821, 16822, 7, 69, 2, 2, 16822, 16823, 7, 81, 2, 2, 16823, 16824, 7, 70, 2, 2, 16824, 16825, 7, 71, 2, 2, 16825, 2266, 3, 2, 2, 2, 16826, 16827, 7, 81, 2, 2, 16827, 16828, 7, 82, 2, 2, 16828, 16829, 7, 71, 2, 2, 16829, 16830, 7, 80, 2, 2, 16830, 2268, 3, 2, 2, 2, 16831, 16832, 7, 81, 2, 2, 16832, 16833, 7, 82, 2, 2, 16833, 16834, 7, 71, 2, 2, 16834, 16835, 7, 84, 2, 2, 16835, 16836, 7, 67, 2, 2, 16836, 16837, 7, 86, 2, 2, 16837, 16838, 7, 75, 2, 2, 16838, 16839, 7, 81, 2, 2, 16839, 16840, 7, 80, 2, 2, 16840, 16841, 7, 85, 2, 2, 16841, 2270, 3, 2, 2, 2, 16842, 16843, 7, 81, 2, 2, 16843, 16844, 7, 82, 2, 2, 16844, 16845, 7, 71, 2, 2, 16845, 16846, 7, 84, 2, 2, 16846, 16847, 7, 67, 2, 2, 16847, 16848, 7, 86, 2, 2, 16848, 16849, 7, 81, 2, 2, 16849, 16850, 7, 84, 2, 2, 16850, 2272, 3, 2, 2, 2, 16851, 16852, 7, 81, 2, 2, 16852, 16853, 7, 82, 2, 2, 16853, 16854, 7, 86, 2, 2, 16854, 16855, 7, 97, 2, 2, 16855, 16856, 7, 71, 2, 2, 16856, 16857, 7, 85, 2, 2, 16857, 16858, 7, 86, 2, 2, 16858, 16859, 7, 75, 2, 2, 16859, 16860, 7, 79, 2, 2, 16860, 16861, 7, 67, 2, 2, 16861, 16862, 7, 86, 2, 2, 16862, 16863, 7, 71, 2, 2, 16863, 2274, 3, 2, 2, 2, 16864, 16865, 7, 81, 2, 2, 16865, 16866, 7, 82, 2, 2, 16866, 16867, 7, 86, 2, 2, 16867, 16868, 7, 75, 2, 2, 16868, 16869, 7, 79, 2, 2, 16869, 16870, 7, 67, 2, 2, 16870, 16871, 7, 78, 2, 2, 16871, 2276, 3, 2, 2, 2, 16872, 16873, 7, 81, 2, 2, 16873, 16874, 7, 82, 2, 2, 16874, 16875, 7, 86, 2, 2, 16875, 16876, 7, 75, 2, 2, 16876, 16877, 7, 79, 2, 2, 16877, 16878, 7, 75, 2, 2, 16878, 16879, 7, 92, 2, 2, 16879, 16880, 7, 71, 2, 2, 16880, 2278, 3, 2, 2, 2, 16881, 16882, 7, 81, 2, 2, 16882, 16883, 7, 82, 2, 2, 16883, 16884, 7, 86, 2, 2, 16884, 16885, 7, 75, 2, 2, 16885, 16886, 7, 79, 2, 2, 16886, 16887, 7, 75, 2, 2, 16887, 16888, 7, 92, 2, 2, 16888, 16889, 7, 71, 2, 2, 16889, 16890, 7, 84, 2, 2, 16890, 16891, 7, 97, 2, 2, 16891, 16892, 7, 72, 2, 2, 16892, 16893, 7, 71, 2, 2, 16893, 16894, 7, 67, 2, 2, 16894, 16895, 7, 86, 2, 2, 16895, 16896, 7, 87, 2, 2, 16896, 16897, 7, 84, 2, 2, 16897, 16898, 7, 71, 2, 2, 16898, 16899, 7, 85, 2, 2, 16899, 16900, 7, 97, 2, 2, 16900, 16901, 7, 71, 2, 2, 16901, 16902, 7, 80, 2, 2, 16902, 16903, 7, 67, 2, 2, 16903, 16904, 7, 68, 2, 2, 16904, 16905, 7, 78, 2, 2, 16905, 16906, 7, 71, 2, 2, 16906, 2280, 3, 2, 2, 2, 16907, 16908, 7, 81, 2, 2, 16908, 16909, 7, 82, 2, 2, 16909, 16910, 7, 86, 2, 2, 16910, 16911, 7, 75, 2, 2, 16911, 16912, 7, 79, 2, 2, 16912, 16913, 7, 75, 2, 2, 16913, 16914, 7, 92, 2, 2, 16914, 16915, 7, 71, 2, 2, 16915, 16916, 7, 84, 2, 2, 16916, 16917, 7, 97, 2, 2, 16917, 16918, 7, 73, 2, 2, 16918, 16919, 7, 81, 2, 2, 16919, 16920, 7, 67, 2, 2, 16920, 16921, 7, 78, 2, 2, 16921, 2282, 3, 2, 2, 2, 16922, 16923, 7, 81, 2, 2, 16923, 16924, 7, 82, 2, 2, 16924, 16925, 7, 86, 2, 2, 16925, 16926, 7, 75, 2, 2, 16926, 16927, 7, 81, 2, 2, 16927, 16928, 7, 80, 2, 2, 16928, 2284, 3, 2, 2, 2, 16929, 16930, 7, 81, 2, 2, 16930, 16931, 7, 82, 2, 2, 16931, 16932, 7, 86, 2, 2, 16932, 16933, 7, 97, 2, 2, 16933, 16934, 7, 82, 2, 2, 16934, 16935, 7, 67, 2, 2, 16935, 16936, 7, 84, 2, 2, 16936, 16937, 7, 67, 2, 2, 16937, 16938, 7, 79, 2, 2, 16938, 2286, 3, 2, 2, 2, 16939, 16940, 7, 81, 2, 2, 16940, 16941, 7, 84, 2, 2, 16941, 16942, 7, 67, 2, 2, 16942, 16943, 7, 97, 2, 2, 16943, 16944, 7, 68, 2, 2, 16944, 16945, 7, 84, 2, 2, 16945, 16946, 7, 67, 2, 2, 16946, 16947, 7, 80, 2, 2, 16947, 16948, 7, 69, 2, 2, 16948, 16949, 7, 74, 2, 2, 16949, 2288, 3, 2, 2, 2, 16950, 16951, 7, 81, 2, 2, 16951, 16952, 7, 84, 2, 2, 16952, 16953, 7, 67, 2, 2, 16953, 16954, 7, 97, 2, 2, 16954, 16955, 7, 69, 2, 2, 16955, 16956, 7, 74, 2, 2, 16956, 16957, 7, 71, 2, 2, 16957, 16958, 7, 69, 2, 2, 16958, 16959, 7, 77, 2, 2, 16959, 16960, 7, 97, 2, 2, 16960, 16961, 7, 67, 2, 2, 16961, 16962, 7, 69, 2, 2, 16962, 16963, 7, 78, 2, 2, 16963, 2290, 3, 2, 2, 2, 16964, 16965, 7, 81, 2, 2, 16965, 16966, 7, 84, 2, 2, 16966, 16967, 7, 67, 2, 2, 16967, 16968, 7, 97, 2, 2, 16968, 16969, 7, 69, 2, 2, 16969, 16970, 7, 74, 2, 2, 16970, 16971, 7, 71, 2, 2, 16971, 16972, 7, 69, 2, 2, 16972, 16973, 7, 77, 2, 2, 16973, 16974, 7, 97, 2, 2, 16974, 16975, 7, 82, 2, 2, 16975, 16976, 7, 84, 2, 2, 16976, 16977, 7, 75, 2, 2, 16977, 16978, 7, 88, 2, 2, 16978, 16979, 7, 75, 2, 2, 16979, 16980, 7, 78, 2, 2, 16980, 16981, 7, 71, 2, 2, 16981, 16982, 7, 73, 2, 2, 16982, 16983, 7, 71, 2, 2, 16983, 2292, 3, 2, 2, 2, 16984, 16985, 7, 81, 2, 2, 16985, 16986, 7, 84, 2, 2, 16986, 16987, 7, 67, 2, 2, 16987, 16988, 7, 97, 2, 2, 16988, 16989, 7, 69, 2, 2, 16989, 16990, 7, 78, 2, 2, 16990, 16991, 7, 87, 2, 2, 16991, 16992, 7, 85, 2, 2, 16992, 16993, 7, 86, 2, 2, 16993, 16994, 7, 71, 2, 2, 16994, 16995, 7, 84, 2, 2, 16995, 16996, 7, 75, 2, 2, 16996, 16997, 7, 80, 2, 2, 16997, 16998, 7, 73, 2, 2, 16998, 2294, 3, 2, 2, 2, 16999, 17000, 7, 81, 2, 2, 17000, 17001, 7, 84, 2, 2, 17001, 17002, 7, 67, 2, 2, 17002, 17003, 7, 70, 2, 2, 17003, 17004, 7, 67, 2, 2, 17004, 17005, 7, 86, 2, 2, 17005, 17006, 7, 67, 2, 2, 17006, 2296, 3, 2, 2, 2, 17007, 17008, 7, 81, 2, 2, 17008, 17009, 7, 84, 2, 2, 17009, 17010, 7, 67, 2, 2, 17010, 17011, 7, 70, 2, 2, 17011, 17012, 7, 71, 2, 2, 17012, 17013, 7, 68, 2, 2, 17013, 17014, 7, 87, 2, 2, 17014, 17015, 7, 73, 2, 2, 17015, 2298, 3, 2, 2, 2, 17016, 17017, 7, 81, 2, 2, 17017, 17018, 7, 84, 2, 2, 17018, 17019, 7, 67, 2, 2, 17019, 17020, 7, 97, 2, 2, 17020, 17021, 7, 70, 2, 2, 17021, 17022, 7, 85, 2, 2, 17022, 17023, 7, 86, 2, 2, 17023, 17024, 7, 97, 2, 2, 17024, 17025, 7, 67, 2, 2, 17025, 17026, 7, 72, 2, 2, 17026, 17027, 7, 72, 2, 2, 17027, 17028, 7, 71, 2, 2, 17028, 17029, 7, 69, 2, 2, 17029, 17030, 7, 86, 2, 2, 17030, 17031, 7, 71, 2, 2, 17031, 17032, 7, 70, 2, 2, 17032, 2300, 3, 2, 2, 2, 17033, 17034, 7, 81, 2, 2, 17034, 17035, 7, 84, 2, 2, 17035, 17036, 7, 67, 2, 2, 17036, 17037, 7, 97, 2, 2, 17037, 17038, 7, 70, 2, 2, 17038, 17039, 7, 85, 2, 2, 17039, 17040, 7, 86, 2, 2, 17040, 17041, 7, 97, 2, 2, 17041, 17042, 7, 69, 2, 2, 17042, 17043, 7, 81, 2, 2, 17043, 17044, 7, 80, 2, 2, 17044, 17045, 7, 88, 2, 2, 17045, 17046, 7, 71, 2, 2, 17046, 17047, 7, 84, 2, 2, 17047, 17048, 7, 86, 2, 2, 17048, 2302, 3, 2, 2, 2, 17049, 17050, 7, 81, 2, 2, 17050, 17051, 7, 84, 2, 2, 17051, 17052, 7, 67, 2, 2, 17052, 17053, 7, 97, 2, 2, 17053, 17054, 7, 70, 2, 2, 17054, 17055, 7, 85, 2, 2, 17055, 17056, 7, 86, 2, 2, 17056, 17057, 7, 97, 2, 2, 17057, 17058, 7, 71, 2, 2, 17058, 17059, 7, 84, 2, 2, 17059, 17060, 7, 84, 2, 2, 17060, 17061, 7, 81, 2, 2, 17061, 17062, 7, 84, 2, 2, 17062, 2304, 3, 2, 2, 2, 17063, 17064, 7, 81, 2, 2, 17064, 17065, 7, 84, 2, 2, 17065, 17066, 7, 67, 2, 2, 17066, 17067, 7, 97, 2, 2, 17067, 17068, 7, 73, 2, 2, 17068, 17069, 7, 71, 2, 2, 17069, 17070, 7, 86, 2, 2, 17070, 17071, 7, 97, 2, 2, 17071, 17072, 7, 67, 2, 2, 17072, 17073, 7, 69, 2, 2, 17073, 17074, 7, 78, 2, 2, 17074, 17075, 7, 75, 2, 2, 17075, 17076, 7, 70, 2, 2, 17076, 17077, 7, 85, 2, 2, 17077, 2306, 3, 2, 2, 2, 17078, 17079, 7, 81, 2, 2, 17079, 17080, 7, 84, 2, 2, 17080, 17081, 7, 67, 2, 2, 17081, 17082, 7, 97, 2, 2, 17082, 17083, 7, 73, 2, 2, 17083, 17084, 7, 71, 2, 2, 17084, 17085, 7, 86, 2, 2, 17085, 17086, 7, 97, 2, 2, 17086, 17087, 7, 82, 2, 2, 17087, 17088, 7, 84, 2, 2, 17088, 17089, 7, 75, 2, 2, 17089, 17090, 7, 88, 2, 2, 17090, 17091, 7, 75, 2, 2, 17091, 17092, 7, 78, 2, 2, 17092, 17093, 7, 71, 2, 2, 17093, 17094, 7, 73, 2, 2, 17094, 17095, 7, 71, 2, 2, 17095, 17096, 7, 85, 2, 2, 17096, 2308, 3, 2, 2, 2, 17097, 17098, 7, 81, 2, 2, 17098, 17099, 7, 84, 2, 2, 17099, 17100, 7, 67, 2, 2, 17100, 17101, 7, 97, 2, 2, 17101, 17102, 7, 74, 2, 2, 17102, 17103, 7, 67, 2, 2, 17103, 17104, 7, 85, 2, 2, 17104, 17105, 7, 74, 2, 2, 17105, 2310, 3, 2, 2, 2, 17106, 17107, 7, 81, 2, 2, 17107, 17108, 7, 84, 2, 2, 17108, 17109, 7, 67, 2, 2, 17109, 17110, 7, 97, 2, 2, 17110, 17111, 7, 75, 2, 2, 17111, 17112, 7, 80, 2, 2, 17112, 17113, 7, 88, 2, 2, 17113, 17114, 7, 81, 2, 2, 17114, 17115, 7, 77, 2, 2, 17115, 17116, 7, 75, 2, 2, 17116, 17117, 7, 80, 2, 2, 17117, 17118, 7, 73, 2, 2, 17118, 17119, 7, 97, 2, 2, 17119, 17120, 7, 87, 2, 2, 17120, 17121, 7, 85, 2, 2, 17121, 17122, 7, 71, 2, 2, 17122, 17123, 7, 84, 2, 2, 17123, 17124, 7, 75, 2, 2, 17124, 17125, 7, 70, 2, 2, 17125, 2312, 3, 2, 2, 2, 17126, 17127, 7, 81, 2, 2, 17127, 17128, 7, 84, 2, 2, 17128, 17129, 7, 67, 2, 2, 17129, 17130, 7, 97, 2, 2, 17130, 17131, 7, 75, 2, 2, 17131, 17132, 7, 80, 2, 2, 17132, 17133, 7, 88, 2, 2, 17133, 17134, 7, 81, 2, 2, 17134, 17135, 7, 77, 2, 2, 17135, 17136, 7, 75, 2, 2, 17136, 17137, 7, 80, 2, 2, 17137, 17138, 7, 73, 2, 2, 17138, 17139, 7, 97, 2, 2, 17139, 17140, 7, 87, 2, 2, 17140, 17141, 7, 85, 2, 2, 17141, 17142, 7, 71, 2, 2, 17142, 17143, 7, 84, 2, 2, 17143, 2314, 3, 2, 2, 2, 17144, 17145, 7, 81, 2, 2, 17145, 17146, 7, 84, 2, 2, 17146, 17147, 7, 67, 2, 2, 17147, 17148, 7, 97, 2, 2, 17148, 17149, 7, 75, 2, 2, 17149, 17150, 7, 80, 2, 2, 17150, 17151, 7, 88, 2, 2, 17151, 17152, 7, 81, 2, 2, 17152, 17153, 7, 77, 2, 2, 17153, 17154, 7, 75, 2, 2, 17154, 17155, 7, 80, 2, 2, 17155, 17156, 7, 73, 2, 2, 17156, 17157, 7, 97, 2, 2, 17157, 17158, 7, 90, 2, 2, 17158, 17159, 7, 85, 2, 2, 17159, 17160, 7, 97, 2, 2, 17160, 17161, 7, 87, 2, 2, 17161, 17162, 7, 85, 2, 2, 17162, 17163, 7, 71, 2, 2, 17163, 17164, 7, 84, 2, 2, 17164, 17165, 7, 97, 2, 2, 17165, 17166, 7, 73, 2, 2, 17166, 17167, 7, 87, 2, 2, 17167, 17168, 7, 75, 2, 2, 17168, 17169, 7, 70, 2, 2, 17169, 2316, 3, 2, 2, 2, 17170, 17171, 7, 81, 2, 2, 17171, 17172, 7, 84, 2, 2, 17172, 17173, 7, 67, 2, 2, 17173, 17174, 7, 97, 2, 2, 17174, 17175, 7, 75, 2, 2, 17175, 17176, 7, 80, 2, 2, 17176, 17177, 7, 88, 2, 2, 17177, 17178, 7, 81, 2, 2, 17178, 17179, 7, 77, 2, 2, 17179, 17180, 7, 75, 2, 2, 17180, 17181, 7, 80, 2, 2, 17181, 17182, 7, 73, 2, 2, 17182, 17183, 7, 97, 2, 2, 17183, 17184, 7, 90, 2, 2, 17184, 17185, 7, 85, 2, 2, 17185, 17186, 7, 97, 2, 2, 17186, 17187, 7, 87, 2, 2, 17187, 17188, 7, 85, 2, 2, 17188, 17189, 7, 71, 2, 2, 17189, 17190, 7, 84, 2, 2, 17190, 2318, 3, 2, 2, 2, 17191, 17192, 7, 81, 2, 2, 17192, 17193, 7, 84, 2, 2, 17193, 17194, 7, 67, 2, 2, 17194, 17195, 7, 97, 2, 2, 17195, 17196, 7, 84, 2, 2, 17196, 17197, 7, 67, 2, 2, 17197, 17198, 7, 89, 2, 2, 17198, 17199, 7, 69, 2, 2, 17199, 17200, 7, 81, 2, 2, 17200, 17201, 7, 79, 2, 2, 17201, 17202, 7, 82, 2, 2, 17202, 17203, 7, 67, 2, 2, 17203, 17204, 7, 84, 2, 2, 17204, 17205, 7, 71, 2, 2, 17205, 2320, 3, 2, 2, 2, 17206, 17207, 7, 81, 2, 2, 17207, 17208, 7, 84, 2, 2, 17208, 17209, 7, 67, 2, 2, 17209, 17210, 7, 97, 2, 2, 17210, 17211, 7, 84, 2, 2, 17211, 17212, 7, 67, 2, 2, 17212, 17213, 7, 89, 2, 2, 17213, 17214, 7, 69, 2, 2, 17214, 17215, 7, 81, 2, 2, 17215, 17216, 7, 80, 2, 2, 17216, 17217, 7, 69, 2, 2, 17217, 17218, 7, 67, 2, 2, 17218, 17219, 7, 86, 2, 2, 17219, 2322, 3, 2, 2, 2, 17220, 17221, 7, 81, 2, 2, 17221, 17222, 7, 84, 2, 2, 17222, 17223, 7, 67, 2, 2, 17223, 17224, 7, 97, 2, 2, 17224, 17225, 7, 84, 2, 2, 17225, 17226, 7, 81, 2, 2, 17226, 17227, 7, 89, 2, 2, 17227, 17228, 7, 85, 2, 2, 17228, 17229, 7, 69, 2, 2, 17229, 17230, 7, 80, 2, 2, 17230, 2324, 3, 2, 2, 2, 17231, 17232, 7, 81, 2, 2, 17232, 17233, 7, 84, 2, 2, 17233, 17234, 7, 67, 2, 2, 17234, 17235, 7, 97, 2, 2, 17235, 17236, 7, 84, 2, 2, 17236, 17237, 7, 81, 2, 2, 17237, 17238, 7, 89, 2, 2, 17238, 17239, 7, 85, 2, 2, 17239, 17240, 7, 69, 2, 2, 17240, 17241, 7, 80, 2, 2, 17241, 17242, 7, 97, 2, 2, 17242, 17243, 7, 84, 2, 2, 17243, 17244, 7, 67, 2, 2, 17244, 17245, 7, 89, 2, 2, 17245, 2326, 3, 2, 2, 2, 17246, 17247, 7, 81, 2, 2, 17247, 17248, 7, 84, 2, 2, 17248, 17249, 7, 67, 2, 2, 17249, 17250, 7, 97, 2, 2, 17250, 17251, 7, 84, 2, 2, 17251, 17252, 7, 81, 2, 2, 17252, 17253, 7, 89, 2, 2, 17253, 17254, 7, 88, 2, 2, 17254, 17255, 7, 71, 2, 2, 17255, 17256, 7, 84, 2, 2, 17256, 17257, 7, 85, 2, 2, 17257, 17258, 7, 75, 2, 2, 17258, 17259, 7, 81, 2, 2, 17259, 17260, 7, 80, 2, 2, 17260, 2328, 3, 2, 2, 2, 17261, 17262, 7, 81, 2, 2, 17262, 17263, 7, 84, 2, 2, 17263, 17264, 7, 67, 2, 2, 17264, 17265, 7, 97, 2, 2, 17265, 17266, 7, 86, 2, 2, 17266, 17267, 7, 67, 2, 2, 17267, 17268, 7, 68, 2, 2, 17268, 17269, 7, 88, 2, 2, 17269, 17270, 7, 71, 2, 2, 17270, 17271, 7, 84, 2, 2, 17271, 17272, 7, 85, 2, 2, 17272, 17273, 7, 75, 2, 2, 17273, 17274, 7, 81, 2, 2, 17274, 17275, 7, 80, 2, 2, 17275, 2330, 3, 2, 2, 2, 17276, 17277, 7, 81, 2, 2, 17277, 17278, 7, 84, 2, 2, 17278, 17279, 7, 67, 2, 2, 17279, 17280, 7, 97, 2, 2, 17280, 17281, 7, 89, 2, 2, 17281, 17282, 7, 84, 2, 2, 17282, 17283, 7, 75, 2, 2, 17283, 17284, 7, 86, 2, 2, 17284, 17285, 7, 71, 2, 2, 17285, 17286, 7, 97, 2, 2, 17286, 17287, 7, 86, 2, 2, 17287, 17288, 7, 75, 2, 2, 17288, 17289, 7, 79, 2, 2, 17289, 17290, 7, 71, 2, 2, 17290, 2332, 3, 2, 2, 2, 17291, 17292, 7, 81, 2, 2, 17292, 17293, 7, 84, 2, 2, 17293, 17294, 7, 70, 2, 2, 17294, 17295, 7, 71, 2, 2, 17295, 17296, 7, 84, 2, 2, 17296, 17297, 7, 71, 2, 2, 17297, 17298, 7, 70, 2, 2, 17298, 2334, 3, 2, 2, 2, 17299, 17300, 7, 81, 2, 2, 17300, 17301, 7, 84, 2, 2, 17301, 17302, 7, 70, 2, 2, 17302, 17303, 7, 71, 2, 2, 17303, 17304, 7, 84, 2, 2, 17304, 17305, 7, 71, 2, 2, 17305, 17306, 7, 70, 2, 2, 17306, 17307, 7, 97, 2, 2, 17307, 17308, 7, 82, 2, 2, 17308, 17309, 7, 84, 2, 2, 17309, 17310, 7, 71, 2, 2, 17310, 17311, 7, 70, 2, 2, 17311, 17312, 7, 75, 2, 2, 17312, 17313, 7, 69, 2, 2, 17313, 17314, 7, 67, 2, 2, 17314, 17315, 7, 86, 2, 2, 17315, 17316, 7, 71, 2, 2, 17316, 17317, 7, 85, 2, 2, 17317, 2336, 3, 2, 2, 2, 17318, 17319, 7, 81, 2, 2, 17319, 17320, 7, 84, 2, 2, 17320, 17321, 7, 70, 2, 2, 17321, 17322, 7, 71, 2, 2, 17322, 17323, 7, 84, 2, 2, 17323, 2338, 3, 2, 2, 2, 17324, 17325, 7, 81, 2, 2, 17325, 17326, 7, 84, 2, 2, 17326, 17327, 7, 70, 2, 2, 17327, 17328, 7, 75, 2, 2, 17328, 17329, 7, 80, 2, 2, 17329, 17330, 7, 67, 2, 2, 17330, 17331, 7, 78, 2, 2, 17331, 17332, 7, 75, 2, 2, 17332, 17333, 7, 86, 2, 2, 17333, 17334, 7, 91, 2, 2, 17334, 2340, 3, 2, 2, 2, 17335, 17336, 7, 81, 2, 2, 17336, 17337, 7, 84, 2, 2, 17337, 17338, 7, 97, 2, 2, 17338, 17339, 7, 71, 2, 2, 17339, 17340, 7, 90, 2, 2, 17340, 17341, 7, 82, 2, 2, 17341, 17342, 7, 67, 2, 2, 17342, 17343, 7, 80, 2, 2, 17343, 17344, 7, 70, 2, 2, 17344, 2342, 3, 2, 2, 2, 17345, 17346, 7, 81, 2, 2, 17346, 17347, 7, 84, 2, 2, 17347, 17348, 7, 73, 2, 2, 17348, 17349, 7, 67, 2, 2, 17349, 17350, 7, 80, 2, 2, 17350, 17351, 7, 75, 2, 2, 17351, 17352, 7, 92, 2, 2, 17352, 17353, 7, 67, 2, 2, 17353, 17354, 7, 86, 2, 2, 17354, 17355, 7, 75, 2, 2, 17355, 17356, 7, 81, 2, 2, 17356, 17357, 7, 80, 2, 2, 17357, 2344, 3, 2, 2, 2, 17358, 17359, 7, 81, 2, 2, 17359, 17360, 7, 84, 2, 2, 17360, 2346, 3, 2, 2, 2, 17361, 17362, 7, 81, 2, 2, 17362, 17363, 7, 84, 2, 2, 17363, 17364, 7, 97, 2, 2, 17364, 17365, 7, 82, 2, 2, 17365, 17366, 7, 84, 2, 2, 17366, 17367, 7, 71, 2, 2, 17367, 17368, 7, 70, 2, 2, 17368, 17369, 7, 75, 2, 2, 17369, 17370, 7, 69, 2, 2, 17370, 17371, 7, 67, 2, 2, 17371, 17372, 7, 86, 2, 2, 17372, 17373, 7, 71, 2, 2, 17373, 17374, 7, 85, 2, 2, 17374, 2348, 3, 2, 2, 2, 17375, 17376, 7, 81, 2, 2, 17376, 17377, 7, 85, 2, 2, 17377, 17378, 7, 71, 2, 2, 17378, 17379, 7, 84, 2, 2, 17379, 17380, 7, 84, 2, 2, 17380, 17381, 7, 81, 2, 2, 17381, 17382, 7, 84, 2, 2, 17382, 2350, 3, 2, 2, 2, 17383, 17384, 7, 81, 2, 2, 17384, 17385, 7, 86, 2, 2, 17385, 17386, 7, 74, 2, 2, 17386, 17387, 7, 71, 2, 2, 17387, 17388, 7, 84, 2, 2, 17388, 2352, 3, 2, 2, 2, 17389, 17390, 7, 81, 2, 2, 17390, 17391, 7, 87, 2, 2, 17391, 17392, 7, 86, 2, 2, 17392, 17393, 7, 71, 2, 2, 17393, 17394, 7, 84, 2, 2, 17394, 17395, 7, 97, 2, 2, 17395, 17396, 7, 76, 2, 2, 17396, 17397, 7, 81, 2, 2, 17397, 17398, 7, 75, 2, 2, 17398, 17399, 7, 80, 2, 2, 17399, 17400, 7, 97, 2, 2, 17400, 17401, 7, 86, 2, 2, 17401, 17402, 7, 81, 2, 2, 17402, 17403, 7, 97, 2, 2, 17403, 17404, 7, 67, 2, 2, 17404, 17405, 7, 80, 2, 2, 17405, 17406, 7, 86, 2, 2, 17406, 17407, 7, 75, 2, 2, 17407, 2354, 3, 2, 2, 2, 17408, 17409, 7, 81, 2, 2, 17409, 17410, 7, 87, 2, 2, 17410, 17411, 7, 86, 2, 2, 17411, 17412, 7, 71, 2, 2, 17412, 17413, 7, 84, 2, 2, 17413, 17414, 7, 97, 2, 2, 17414, 17415, 7, 76, 2, 2, 17415, 17416, 7, 81, 2, 2, 17416, 17417, 7, 75, 2, 2, 17417, 17418, 7, 80, 2, 2, 17418, 17419, 7, 97, 2, 2, 17419, 17420, 7, 86, 2, 2, 17420, 17421, 7, 81, 2, 2, 17421, 17422, 7, 97, 2, 2, 17422, 17423, 7, 75, 2, 2, 17423, 17424, 7, 80, 2, 2, 17424, 17425, 7, 80, 2, 2, 17425, 17426, 7, 71, 2, 2, 17426, 17427, 7, 84, 2, 2, 17427, 2356, 3, 2, 2, 2, 17428, 17429, 7, 81, 2, 2, 17429, 17430, 7, 87, 2, 2, 17430, 17431, 7, 86, 2, 2, 17431, 17432, 7, 71, 2, 2, 17432, 17433, 7, 84, 2, 2, 17433, 2358, 3, 2, 2, 2, 17434, 17435, 7, 81, 2, 2, 17435, 17436, 7, 87, 2, 2, 17436, 17437, 7, 86, 2, 2, 17437, 17438, 7, 78, 2, 2, 17438, 17439, 7, 75, 2, 2, 17439, 17440, 7, 80, 2, 2, 17440, 17441, 7, 71, 2, 2, 17441, 17442, 7, 97, 2, 2, 17442, 17443, 7, 78, 2, 2, 17443, 17444, 7, 71, 2, 2, 17444, 17445, 7, 67, 2, 2, 17445, 17446, 7, 72, 2, 2, 17446, 2360, 3, 2, 2, 2, 17447, 17448, 7, 81, 2, 2, 17448, 17449, 7, 87, 2, 2, 17449, 17450, 7, 86, 2, 2, 17450, 17451, 7, 78, 2, 2, 17451, 17452, 7, 75, 2, 2, 17452, 17453, 7, 80, 2, 2, 17453, 17454, 7, 71, 2, 2, 17454, 2362, 3, 2, 2, 2, 17455, 17456, 7, 81, 2, 2, 17456, 17457, 7, 87, 2, 2, 17457, 17458, 7, 86, 2, 2, 17458, 17459, 7, 97, 2, 2, 17459, 17460, 7, 81, 2, 2, 17460, 17461, 7, 72, 2, 2, 17461, 17462, 7, 97, 2, 2, 17462, 17463, 7, 78, 2, 2, 17463, 17464, 7, 75, 2, 2, 17464, 17465, 7, 80, 2, 2, 17465, 17466, 7, 71, 2, 2, 17466, 2364, 3, 2, 2, 2, 17467, 17468, 7, 81, 2, 2, 17468, 17469, 7, 87, 2, 2, 17469, 17470, 7, 86, 2, 2, 17470, 2366, 3, 2, 2, 2, 17471, 17472, 7, 81, 2, 2, 17472, 17473, 7, 88, 2, 2, 17473, 17474, 7, 71, 2, 2, 17474, 17475, 7, 84, 2, 2, 17475, 17476, 7, 72, 2, 2, 17476, 17477, 7, 78, 2, 2, 17477, 17478, 7, 81, 2, 2, 17478, 17479, 7, 89, 2, 2, 17479, 17480, 7, 97, 2, 2, 17480, 17481, 7, 80, 2, 2, 17481, 17482, 7, 81, 2, 2, 17482, 17483, 7, 79, 2, 2, 17483, 17484, 7, 81, 2, 2, 17484, 17485, 7, 88, 2, 2, 17485, 17486, 7, 71, 2, 2, 17486, 2368, 3, 2, 2, 2, 17487, 17488, 7, 81, 2, 2, 17488, 17489, 7, 88, 2, 2, 17489, 17490, 7, 71, 2, 2, 17490, 17491, 7, 84, 2, 2, 17491, 17492, 7, 72, 2, 2, 17492, 17493, 7, 78, 2, 2, 17493, 17494, 7, 81, 2, 2, 17494, 17495, 7, 89, 2, 2, 17495, 2370, 3, 2, 2, 2, 17496, 17497, 7, 81, 2, 2, 17497, 17498, 7, 88, 2, 2, 17498, 17499, 7, 71, 2, 2, 17499, 17500, 7, 84, 2, 2, 17500, 17501, 7, 78, 2, 2, 17501, 17502, 7, 67, 2, 2, 17502, 17503, 7, 82, 2, 2, 17503, 17504, 7, 85, 2, 2, 17504, 2372, 3, 2, 2, 2, 17505, 17506, 7, 81, 2, 2, 17506, 17507, 7, 88, 2, 2, 17507, 17508, 7, 71, 2, 2, 17508, 17509, 7, 84, 2, 2, 17509, 2374, 3, 2, 2, 2, 17510, 17511, 7, 81, 2, 2, 17511, 17512, 7, 88, 2, 2, 17512, 17513, 7, 71, 2, 2, 17513, 17514, 7, 84, 2, 2, 17514, 17515, 7, 84, 2, 2, 17515, 17516, 7, 75, 2, 2, 17516, 17517, 7, 70, 2, 2, 17517, 17518, 7, 75, 2, 2, 17518, 17519, 7, 80, 2, 2, 17519, 17520, 7, 73, 2, 2, 17520, 2376, 3, 2, 2, 2, 17521, 17522, 7, 81, 2, 2, 17522, 17523, 7, 89, 2, 2, 17523, 17524, 7, 80, 2, 2, 17524, 17525, 7, 71, 2, 2, 17525, 17526, 7, 84, 2, 2, 17526, 2378, 3, 2, 2, 2, 17527, 17528, 7, 81, 2, 2, 17528, 17529, 7, 89, 2, 2, 17529, 17530, 7, 80, 2, 2, 17530, 17531, 7, 71, 2, 2, 17531, 17532, 7, 84, 2, 2, 17532, 17533, 7, 85, 2, 2, 17533, 17534, 7, 74, 2, 2, 17534, 17535, 7, 75, 2, 2, 17535, 17536, 7, 82, 2, 2, 17536, 2380, 3, 2, 2, 2, 17537, 17538, 7, 81, 2, 2, 17538, 17539, 7, 89, 2, 2, 17539, 17540, 7, 80, 2, 2, 17540, 2382, 3, 2, 2, 2, 17541, 17542, 7, 82, 2, 2, 17542, 17543, 7, 67, 2, 2, 17543, 17544, 7, 69, 2, 2, 17544, 17545, 7, 77, 2, 2, 17545, 17546, 7, 67, 2, 2, 17546, 17547, 7, 73, 2, 2, 17547, 17548, 7, 71, 2, 2, 17548, 2384, 3, 2, 2, 2, 17549, 17550, 7, 82, 2, 2, 17550, 17551, 7, 67, 2, 2, 17551, 17552, 7, 69, 2, 2, 17552, 17553, 7, 77, 2, 2, 17553, 17554, 7, 67, 2, 2, 17554, 17555, 7, 73, 2, 2, 17555, 17556, 7, 71, 2, 2, 17556, 17557, 7, 85, 2, 2, 17557, 2386, 3, 2, 2, 2, 17558, 17559, 7, 82, 2, 2, 17559, 17560, 7, 67, 2, 2, 17560, 17561, 7, 84, 2, 2, 17561, 17562, 7, 67, 2, 2, 17562, 17563, 7, 78, 2, 2, 17563, 17564, 7, 78, 2, 2, 17564, 17565, 7, 71, 2, 2, 17565, 17566, 7, 78, 2, 2, 17566, 17567, 7, 97, 2, 2, 17567, 17568, 7, 71, 2, 2, 17568, 17569, 7, 80, 2, 2, 17569, 17570, 7, 67, 2, 2, 17570, 17571, 7, 68, 2, 2, 17571, 17572, 7, 78, 2, 2, 17572, 17573, 7, 71, 2, 2, 17573, 2388, 3, 2, 2, 2, 17574, 17575, 7, 82, 2, 2, 17575, 17576, 7, 67, 2, 2, 17576, 17577, 7, 84, 2, 2, 17577, 17578, 7, 67, 2, 2, 17578, 17579, 7, 78, 2, 2, 17579, 17580, 7, 78, 2, 2, 17580, 17581, 7, 71, 2, 2, 17581, 17582, 7, 78, 2, 2, 17582, 17583, 7, 97, 2, 2, 17583, 17584, 7, 75, 2, 2, 17584, 17585, 7, 80, 2, 2, 17585, 17586, 7, 70, 2, 2, 17586, 17587, 7, 71, 2, 2, 17587, 17588, 7, 90, 2, 2, 17588, 2390, 3, 2, 2, 2, 17589, 17590, 7, 82, 2, 2, 17590, 17591, 7, 67, 2, 2, 17591, 17592, 7, 84, 2, 2, 17592, 17593, 7, 67, 2, 2, 17593, 17594, 7, 78, 2, 2, 17594, 17595, 7, 78, 2, 2, 17595, 17596, 7, 71, 2, 2, 17596, 17597, 7, 78, 2, 2, 17597, 2392, 3, 2, 2, 2, 17598, 17599, 7, 82, 2, 2, 17599, 17600, 7, 67, 2, 2, 17600, 17601, 7, 84, 2, 2, 17601, 17602, 7, 67, 2, 2, 17602, 17603, 7, 79, 2, 2, 17603, 17604, 7, 71, 2, 2, 17604, 17605, 7, 86, 2, 2, 17605, 17606, 7, 71, 2, 2, 17606, 17607, 7, 84, 2, 2, 17607, 17608, 7, 72, 2, 2, 17608, 17609, 7, 75, 2, 2, 17609, 17610, 7, 78, 2, 2, 17610, 17611, 7, 71, 2, 2, 17611, 2394, 3, 2, 2, 2, 17612, 17613, 7, 82, 2, 2, 17613, 17614, 7, 67, 2, 2, 17614, 17615, 7, 84, 2, 2, 17615, 17616, 7, 67, 2, 2, 17616, 17617, 7, 79, 2, 2, 17617, 17618, 7, 71, 2, 2, 17618, 17619, 7, 86, 2, 2, 17619, 17620, 7, 71, 2, 2, 17620, 17621, 7, 84, 2, 2, 17621, 17622, 7, 85, 2, 2, 17622, 2396, 3, 2, 2, 2, 17623, 17624, 7, 82, 2, 2, 17624, 17625, 7, 67, 2, 2, 17625, 17626, 7, 84, 2, 2, 17626, 17627, 7, 67, 2, 2, 17627, 17628, 7, 79, 2, 2, 17628, 2398, 3, 2, 2, 2, 17629, 17630, 7, 82, 2, 2, 17630, 17631, 7, 67, 2, 2, 17631, 17632, 7, 84, 2, 2, 17632, 17633, 7, 71, 2, 2, 17633, 17634, 7, 80, 2, 2, 17634, 17635, 7, 86, 2, 2, 17635, 2400, 3, 2, 2, 2, 17636, 17637, 7, 82, 2, 2, 17637, 17638, 7, 67, 2, 2, 17638, 17639, 7, 84, 2, 2, 17639, 17640, 7, 75, 2, 2, 17640, 17641, 7, 86, 2, 2, 17641, 17642, 7, 91, 2, 2, 17642, 2402, 3, 2, 2, 2, 17643, 17644, 7, 82, 2, 2, 17644, 17645, 7, 67, 2, 2, 17645, 17646, 7, 84, 2, 2, 17646, 17647, 7, 86, 2, 2, 17647, 17648, 7, 75, 2, 2, 17648, 17649, 7, 67, 2, 2, 17649, 17650, 7, 78, 2, 2, 17650, 17651, 7, 97, 2, 2, 17651, 17652, 7, 76, 2, 2, 17652, 17653, 7, 81, 2, 2, 17653, 17654, 7, 75, 2, 2, 17654, 17655, 7, 80, 2, 2, 17655, 2404, 3, 2, 2, 2, 17656, 17657, 7, 82, 2, 2, 17657, 17658, 7, 67, 2, 2, 17658, 17659, 7, 84, 2, 2, 17659, 17660, 7, 86, 2, 2, 17660, 17661, 7, 75, 2, 2, 17661, 17662, 7, 67, 2, 2, 17662, 17663, 7, 78, 2, 2, 17663, 17664, 7, 78, 2, 2, 17664, 17665, 7, 91, 2, 2, 17665, 2406, 3, 2, 2, 2, 17666, 17667, 7, 82, 2, 2, 17667, 17668, 7, 67, 2, 2, 17668, 17669, 7, 84, 2, 2, 17669, 17670, 7, 86, 2, 2, 17670, 17671, 7, 75, 2, 2, 17671, 17672, 7, 67, 2, 2, 17672, 17673, 7, 78, 2, 2, 17673, 2408, 3, 2, 2, 2, 17674, 17675, 7, 82, 2, 2, 17675, 17676, 7, 67, 2, 2, 17676, 17677, 7, 84, 2, 2, 17677, 17678, 7, 86, 2, 2, 17678, 17679, 7, 75, 2, 2, 17679, 17680, 7, 67, 2, 2, 17680, 17681, 7, 78, 2, 2, 17681, 17682, 7, 97, 2, 2, 17682, 17683, 7, 84, 2, 2, 17683, 17684, 7, 81, 2, 2, 17684, 17685, 7, 78, 2, 2, 17685, 17686, 7, 78, 2, 2, 17686, 17687, 7, 87, 2, 2, 17687, 17688, 7, 82, 2, 2, 17688, 17689, 7, 97, 2, 2, 17689, 17690, 7, 82, 2, 2, 17690, 17691, 7, 87, 2, 2, 17691, 17692, 7, 85, 2, 2, 17692, 17693, 7, 74, 2, 2, 17693, 17694, 7, 70, 2, 2, 17694, 17695, 7, 81, 2, 2, 17695, 17696, 7, 89, 2, 2, 17696, 17697, 7, 80, 2, 2, 17697, 2410, 3, 2, 2, 2, 17698, 17699, 7, 82, 2, 2, 17699, 17700, 7, 67, 2, 2, 17700, 17701, 7, 84, 2, 2, 17701, 17702, 7, 86, 2, 2, 17702, 17703, 7, 75, 2, 2, 17703, 17704, 7, 86, 2, 2, 17704, 17705, 7, 75, 2, 2, 17705, 17706, 7, 81, 2, 2, 17706, 17707, 7, 80, 2, 2, 17707, 17708, 7, 97, 2, 2, 17708, 17709, 7, 74, 2, 2, 17709, 17710, 7, 67, 2, 2, 17710, 17711, 7, 85, 2, 2, 17711, 17712, 7, 74, 2, 2, 17712, 2412, 3, 2, 2, 2, 17713, 17714, 7, 82, 2, 2, 17714, 17715, 7, 67, 2, 2, 17715, 17716, 7, 84, 2, 2, 17716, 17717, 7, 86, 2, 2, 17717, 17718, 7, 75, 2, 2, 17718, 17719, 7, 86, 2, 2, 17719, 17720, 7, 75, 2, 2, 17720, 17721, 7, 81, 2, 2, 17721, 17722, 7, 80, 2, 2, 17722, 17723, 7, 97, 2, 2, 17723, 17724, 7, 78, 2, 2, 17724, 17725, 7, 75, 2, 2, 17725, 17726, 7, 85, 2, 2, 17726, 17727, 7, 86, 2, 2, 17727, 2414, 3, 2, 2, 2, 17728, 17729, 7, 82, 2, 2, 17729, 17730, 7, 67, 2, 2, 17730, 17731, 7, 84, 2, 2, 17731, 17732, 7, 86, 2, 2, 17732, 17733, 7, 75, 2, 2, 17733, 17734, 7, 86, 2, 2, 17734, 17735, 7, 75, 2, 2, 17735, 17736, 7, 81, 2, 2, 17736, 17737, 7, 80, 2, 2, 17737, 2416, 3, 2, 2, 2, 17738, 17739, 7, 82, 2, 2, 17739, 17740, 7, 67, 2, 2, 17740, 17741, 7, 84, 2, 2, 17741, 17742, 7, 86, 2, 2, 17742, 17743, 7, 75, 2, 2, 17743, 17744, 7, 86, 2, 2, 17744, 17745, 7, 75, 2, 2, 17745, 17746, 7, 81, 2, 2, 17746, 17747, 7, 80, 2, 2, 17747, 17748, 7, 97, 2, 2, 17748, 17749, 7, 84, 2, 2, 17749, 17750, 7, 67, 2, 2, 17750, 17751, 7, 80, 2, 2, 17751, 17752, 7, 73, 2, 2, 17752, 17753, 7, 71, 2, 2, 17753, 2418, 3, 2, 2, 2, 17754, 17755, 7, 82, 2, 2, 17755, 17756, 7, 67, 2, 2, 17756, 17757, 7, 84, 2, 2, 17757, 17758, 7, 86, 2, 2, 17758, 17759, 7, 75, 2, 2, 17759, 17760, 7, 86, 2, 2, 17760, 17761, 7, 75, 2, 2, 17761, 17762, 7, 81, 2, 2, 17762, 17763, 7, 80, 2, 2, 17763, 17764, 7, 85, 2, 2, 17764, 2420, 3, 2, 2, 2, 17765, 17766, 7, 82, 2, 2, 17766, 17767, 7, 67, 2, 2, 17767, 17768, 7, 84, 2, 2, 17768, 17769, 7, 86, 2, 2, 17769, 17770, 7, 38, 2, 2, 17770, 17771, 7, 80, 2, 2, 17771, 17772, 7, 87, 2, 2, 17772, 17773, 7, 79, 2, 2, 17773, 17774, 7, 38, 2, 2, 17774, 17775, 7, 75, 2, 2, 17775, 17776, 7, 80, 2, 2, 17776, 17777, 7, 85, 2, 2, 17777, 17778, 7, 86, 2, 2, 17778, 2422, 3, 2, 2, 2, 17779, 17780, 7, 82, 2, 2, 17780, 17781, 7, 67, 2, 2, 17781, 17782, 7, 85, 2, 2, 17782, 17783, 7, 85, 2, 2, 17783, 17784, 7, 75, 2, 2, 17784, 17785, 7, 80, 2, 2, 17785, 17786, 7, 73, 2, 2, 17786, 2424, 3, 2, 2, 2, 17787, 17788, 7, 82, 2, 2, 17788, 17789, 7, 67, 2, 2, 17789, 17790, 7, 85, 2, 2, 17790, 17791, 7, 85, 2, 2, 17791, 17792, 7, 89, 2, 2, 17792, 17793, 7, 81, 2, 2, 17793, 17794, 7, 84, 2, 2, 17794, 17795, 7, 70, 2, 2, 17795, 17796, 7, 97, 2, 2, 17796, 17797, 7, 73, 2, 2, 17797, 17798, 7, 84, 2, 2, 17798, 17799, 7, 67, 2, 2, 17799, 17800, 7, 69, 2, 2, 17800, 17801, 7, 71, 2, 2, 17801, 17802, 7, 97, 2, 2, 17802, 17803, 7, 86, 2, 2, 17803, 17804, 7, 75, 2, 2, 17804, 17805, 7, 79, 2, 2, 17805, 17806, 7, 71, 2, 2, 17806, 2426, 3, 2, 2, 2, 17807, 17808, 7, 82, 2, 2, 17808, 17809, 7, 67, 2, 2, 17809, 17810, 7, 85, 2, 2, 17810, 17811, 7, 85, 2, 2, 17811, 17812, 7, 89, 2, 2, 17812, 17813, 7, 81, 2, 2, 17813, 17814, 7, 84, 2, 2, 17814, 17815, 7, 70, 2, 2, 17815, 17816, 7, 97, 2, 2, 17816, 17817, 7, 78, 2, 2, 17817, 17818, 7, 75, 2, 2, 17818, 17819, 7, 72, 2, 2, 17819, 17820, 7, 71, 2, 2, 17820, 17821, 7, 97, 2, 2, 17821, 17822, 7, 86, 2, 2, 17822, 17823, 7, 75, 2, 2, 17823, 17824, 7, 79, 2, 2, 17824, 17825, 7, 71, 2, 2, 17825, 2428, 3, 2, 2, 2, 17826, 17827, 7, 82, 2, 2, 17827, 17828, 7, 67, 2, 2, 17828, 17829, 7, 85, 2, 2, 17829, 17830, 7, 85, 2, 2, 17830, 17831, 7, 89, 2, 2, 17831, 17832, 7, 81, 2, 2, 17832, 17833, 7, 84, 2, 2, 17833, 17834, 7, 70, 2, 2, 17834, 17835, 7, 97, 2, 2, 17835, 17836, 7, 78, 2, 2, 17836, 17837, 7, 81, 2, 2, 17837, 17838, 7, 69, 2, 2, 17838, 17839, 7, 77, 2, 2, 17839, 17840, 7, 97, 2, 2, 17840, 17841, 7, 86, 2, 2, 17841, 17842, 7, 75, 2, 2, 17842, 17843, 7, 79, 2, 2, 17843, 17844, 7, 71, 2, 2, 17844, 2430, 3, 2, 2, 2, 17845, 17846, 7, 82, 2, 2, 17846, 17847, 7, 67, 2, 2, 17847, 17848, 7, 85, 2, 2, 17848, 17849, 7, 85, 2, 2, 17849, 17850, 7, 89, 2, 2, 17850, 17851, 7, 81, 2, 2, 17851, 17852, 7, 84, 2, 2, 17852, 17853, 7, 70, 2, 2, 17853, 2432, 3, 2, 2, 2, 17854, 17855, 7, 82, 2, 2, 17855, 17856, 7, 67, 2, 2, 17856, 17857, 7, 85, 2, 2, 17857, 17858, 7, 85, 2, 2, 17858, 17859, 7, 89, 2, 2, 17859, 17860, 7, 81, 2, 2, 17860, 17861, 7, 84, 2, 2, 17861, 17862, 7, 70, 2, 2, 17862, 17863, 7, 97, 2, 2, 17863, 17864, 7, 84, 2, 2, 17864, 17865, 7, 71, 2, 2, 17865, 17866, 7, 87, 2, 2, 17866, 17867, 7, 85, 2, 2, 17867, 17868, 7, 71, 2, 2, 17868, 17869, 7, 97, 2, 2, 17869, 17870, 7, 79, 2, 2, 17870, 17871, 7, 67, 2, 2, 17871, 17872, 7, 90, 2, 2, 17872, 2434, 3, 2, 2, 2, 17873, 17874, 7, 82, 2, 2, 17874, 17875, 7, 67, 2, 2, 17875, 17876, 7, 85, 2, 2, 17876, 17877, 7, 85, 2, 2, 17877, 17878, 7, 89, 2, 2, 17878, 17879, 7, 81, 2, 2, 17879, 17880, 7, 84, 2, 2, 17880, 17881, 7, 70, 2, 2, 17881, 17882, 7, 97, 2, 2, 17882, 17883, 7, 84, 2, 2, 17883, 17884, 7, 71, 2, 2, 17884, 17885, 7, 87, 2, 2, 17885, 17886, 7, 85, 2, 2, 17886, 17887, 7, 71, 2, 2, 17887, 17888, 7, 97, 2, 2, 17888, 17889, 7, 86, 2, 2, 17889, 17890, 7, 75, 2, 2, 17890, 17891, 7, 79, 2, 2, 17891, 17892, 7, 71, 2, 2, 17892, 2436, 3, 2, 2, 2, 17893, 17894, 7, 82, 2, 2, 17894, 17895, 7, 67, 2, 2, 17895, 17896, 7, 85, 2, 2, 17896, 17897, 7, 85, 2, 2, 17897, 17898, 7, 89, 2, 2, 17898, 17899, 7, 81, 2, 2, 17899, 17900, 7, 84, 2, 2, 17900, 17901, 7, 70, 2, 2, 17901, 17902, 7, 97, 2, 2, 17902, 17903, 7, 88, 2, 2, 17903, 17904, 7, 71, 2, 2, 17904, 17905, 7, 84, 2, 2, 17905, 17906, 7, 75, 2, 2, 17906, 17907, 7, 72, 2, 2, 17907, 17908, 7, 91, 2, 2, 17908, 17909, 7, 97, 2, 2, 17909, 17910, 7, 72, 2, 2, 17910, 17911, 7, 87, 2, 2, 17911, 17912, 7, 80, 2, 2, 17912, 17913, 7, 69, 2, 2, 17913, 17914, 7, 86, 2, 2, 17914, 17915, 7, 75, 2, 2, 17915, 17916, 7, 81, 2, 2, 17916, 17917, 7, 80, 2, 2, 17917, 2438, 3, 2, 2, 2, 17918, 17919, 7, 82, 2, 2, 17919, 17920, 7, 67, 2, 2, 17920, 17921, 7, 85, 2, 2, 17921, 17922, 7, 86, 2, 2, 17922, 2440, 3, 2, 2, 2, 17923, 17924, 7, 82, 2, 2, 17924, 17925, 7, 67, 2, 2, 17925, 17926, 7, 86, 2, 2, 17926, 17927, 7, 69, 2, 2, 17927, 17928, 7, 74, 2, 2, 17928, 2442, 3, 2, 2, 2, 17929, 17930, 7, 82, 2, 2, 17930, 17931, 7, 67, 2, 2, 17931, 17932, 7, 86, 2, 2, 17932, 17933, 7, 74, 2, 2, 17933, 2444, 3, 2, 2, 2, 17934, 17935, 7, 82, 2, 2, 17935, 17936, 7, 67, 2, 2, 17936, 17937, 7, 86, 2, 2, 17937, 17938, 7, 74, 2, 2, 17938, 17939, 7, 97, 2, 2, 17939, 17940, 7, 82, 2, 2, 17940, 17941, 7, 84, 2, 2, 17941, 17942, 7, 71, 2, 2, 17942, 17943, 7, 72, 2, 2, 17943, 17944, 7, 75, 2, 2, 17944, 17945, 7, 90, 2, 2, 17945, 2446, 3, 2, 2, 2, 17946, 17947, 7, 82, 2, 2, 17947, 17948, 7, 67, 2, 2, 17948, 17949, 7, 86, 2, 2, 17949, 17950, 7, 74, 2, 2, 17950, 17951, 7, 85, 2, 2, 17951, 2448, 3, 2, 2, 2, 17952, 17953, 7, 82, 2, 2, 17953, 17954, 7, 67, 2, 2, 17954, 17955, 7, 86, 2, 2, 17955, 17956, 7, 86, 2, 2, 17956, 17957, 7, 71, 2, 2, 17957, 17958, 7, 84, 2, 2, 17958, 17959, 7, 80, 2, 2, 17959, 2450, 3, 2, 2, 2, 17960, 17961, 7, 82, 2, 2, 17961, 17962, 7, 68, 2, 2, 17962, 17963, 7, 78, 2, 2, 17963, 17964, 7, 97, 2, 2, 17964, 17965, 7, 74, 2, 2, 17965, 17966, 7, 85, 2, 2, 17966, 17967, 7, 97, 2, 2, 17967, 17968, 7, 68, 2, 2, 17968, 17969, 7, 71, 2, 2, 17969, 17970, 7, 73, 2, 2, 17970, 17971, 7, 75, 2, 2, 17971, 17972, 7, 80, 2, 2, 17972, 2452, 3, 2, 2, 2, 17973, 17974, 7, 82, 2, 2, 17974, 17975, 7, 68, 2, 2, 17975, 17976, 7, 78, 2, 2, 17976, 17977, 7, 97, 2, 2, 17977, 17978, 7, 74, 2, 2, 17978, 17979, 7, 85, 2, 2, 17979, 17980, 7, 97, 2, 2, 17980, 17981, 7, 71, 2, 2, 17981, 17982, 7, 80, 2, 2, 17982, 17983, 7, 70, 2, 2, 17983, 2454, 3, 2, 2, 2, 17984, 17985, 7, 82, 2, 2, 17985, 17986, 7, 69, 2, 2, 17986, 17987, 7, 86, 2, 2, 17987, 17988, 7, 72, 2, 2, 17988, 17989, 7, 84, 2, 2, 17989, 17990, 7, 71, 2, 2, 17990, 17991, 7, 71, 2, 2, 17991, 2456, 3, 2, 2, 2, 17992, 17993, 7, 82, 2, 2, 17993, 17994, 7, 69, 2, 2, 17994, 17995, 7, 86, 2, 2, 17995, 17996, 7, 75, 2, 2, 17996, 17997, 7, 80, 2, 2, 17997, 17998, 7, 69, 2, 2, 17998, 17999, 7, 84, 2, 2, 17999, 18000, 7, 71, 2, 2, 18000, 18001, 7, 67, 2, 2, 18001, 18002, 7, 85, 2, 2, 18002, 18003, 7, 71, 2, 2, 18003, 2458, 3, 2, 2, 2, 18004, 18005, 7, 82, 2, 2, 18005, 18006, 7, 69, 2, 2, 18006, 18007, 7, 86, 2, 2, 18007, 18008, 7, 86, 2, 2, 18008, 18009, 7, 74, 2, 2, 18009, 18010, 7, 84, 2, 2, 18010, 18011, 7, 71, 2, 2, 18011, 18012, 7, 85, 2, 2, 18012, 18013, 7, 74, 2, 2, 18013, 18014, 7, 81, 2, 2, 18014, 18015, 7, 78, 2, 2, 18015, 18016, 7, 70, 2, 2, 18016, 2460, 3, 2, 2, 2, 18017, 18018, 7, 82, 2, 2, 18018, 18019, 7, 69, 2, 2, 18019, 18020, 7, 86, 2, 2, 18020, 18021, 7, 87, 2, 2, 18021, 18022, 7, 85, 2, 2, 18022, 18023, 7, 71, 2, 2, 18023, 18024, 7, 70, 2, 2, 18024, 2462, 3, 2, 2, 2, 18025, 18026, 7, 82, 2, 2, 18026, 18027, 7, 69, 2, 2, 18027, 18028, 7, 86, 2, 2, 18028, 18029, 7, 88, 2, 2, 18029, 18030, 7, 71, 2, 2, 18030, 18031, 7, 84, 2, 2, 18031, 18032, 7, 85, 2, 2, 18032, 18033, 7, 75, 2, 2, 18033, 18034, 7, 81, 2, 2, 18034, 18035, 7, 80, 2, 2, 18035, 2464, 3, 2, 2, 2, 18036, 18037, 7, 82, 2, 2, 18037, 18038, 7, 71, 2, 2, 18038, 18039, 7, 80, 2, 2, 18039, 18040, 7, 70, 2, 2, 18040, 18041, 7, 75, 2, 2, 18041, 18042, 7, 80, 2, 2, 18042, 18043, 7, 73, 2, 2, 18043, 2466, 3, 2, 2, 2, 18044, 18048, 7, 39, 2, 2, 18045, 18047, 5, 4537, 2269, 2, 18046, 18045, 3, 2, 2, 2, 18047, 18050, 3, 2, 2, 2, 18048, 18046, 3, 2, 2, 2, 18048, 18049, 3, 2, 2, 2, 18049, 18051, 3, 2, 2, 2, 18050, 18048, 3, 2, 2, 2, 18051, 18052, 7, 72, 2, 2, 18052, 18053, 7, 81, 2, 2, 18053, 18054, 7, 87, 2, 2, 18054, 18055, 7, 80, 2, 2, 18055, 18056, 7, 70, 2, 2, 18056, 2468, 3, 2, 2, 2, 18057, 18061, 7, 39, 2, 2, 18058, 18060, 5, 4537, 2269, 2, 18059, 18058, 3, 2, 2, 2, 18060, 18063, 3, 2, 2, 2, 18061, 18059, 3, 2, 2, 2, 18061, 18062, 3, 2, 2, 2, 18062, 18064, 3, 2, 2, 2, 18063, 18061, 3, 2, 2, 2, 18064, 18065, 7, 75, 2, 2, 18065, 18066, 7, 85, 2, 2, 18066, 18067, 7, 81, 2, 2, 18067, 18068, 7, 82, 2, 2, 18068, 18069, 7, 71, 2, 2, 18069, 18070, 7, 80, 2, 2, 18070, 2470, 3, 2, 2, 2, 18071, 18075, 7, 39, 2, 2, 18072, 18074, 5, 4537, 2269, 2, 18073, 18072, 3, 2, 2, 2, 18074, 18077, 3, 2, 2, 2, 18075, 18073, 3, 2, 2, 2, 18075, 18076, 3, 2, 2, 2, 18076, 18078, 3, 2, 2, 2, 18077, 18075, 3, 2, 2, 2, 18078, 18079, 7, 80, 2, 2, 18079, 18080, 7, 81, 2, 2, 18080, 18081, 7, 86, 2, 2, 18081, 18082, 7, 72, 2, 2, 18082, 18083, 7, 81, 2, 2, 18083, 18084, 7, 87, 2, 2, 18084, 18085, 7, 80, 2, 2, 18085, 18086, 7, 70, 2, 2, 18086, 2472, 3, 2, 2, 2, 18087, 18088, 7, 82, 2, 2, 18088, 18089, 7, 71, 2, 2, 18089, 18090, 7, 84, 2, 2, 18090, 18091, 7, 69, 2, 2, 18091, 18092, 7, 71, 2, 2, 18092, 18093, 7, 80, 2, 2, 18093, 18094, 7, 86, 2, 2, 18094, 2474, 3, 2, 2, 2, 18095, 18096, 7, 82, 2, 2, 18096, 18097, 7, 71, 2, 2, 18097, 18098, 7, 84, 2, 2, 18098, 18099, 7, 69, 2, 2, 18099, 18100, 7, 71, 2, 2, 18100, 18101, 7, 80, 2, 2, 18101, 18102, 7, 86, 2, 2, 18102, 18103, 7, 97, 2, 2, 18103, 18104, 7, 84, 2, 2, 18104, 18105, 7, 67, 2, 2, 18105, 18106, 7, 80, 2, 2, 18106, 18107, 7, 77, 2, 2, 18107, 18108, 7, 79, 2, 2, 18108, 2476, 3, 2, 2, 2, 18109, 18113, 7, 39, 2, 2, 18110, 18112, 5, 4537, 2269, 2, 18111, 18110, 3, 2, 2, 2, 18112, 18115, 3, 2, 2, 2, 18113, 18111, 3, 2, 2, 2, 18113, 18114, 3, 2, 2, 2, 18114, 18116, 3, 2, 2, 2, 18115, 18113, 3, 2, 2, 2, 18116, 18117, 7, 84, 2, 2, 18117, 18118, 7, 81, 2, 2, 18118, 18119, 7, 89, 2, 2, 18119, 18120, 7, 69, 2, 2, 18120, 18121, 7, 81, 2, 2, 18121, 18122, 7, 87, 2, 2, 18122, 18123, 7, 80, 2, 2, 18123, 18124, 7, 86, 2, 2, 18124, 2478, 3, 2, 2, 2, 18125, 18129, 7, 39, 2, 2, 18126, 18128, 5, 4537, 2269, 2, 18127, 18126, 3, 2, 2, 2, 18128, 18131, 3, 2, 2, 2, 18129, 18127, 3, 2, 2, 2, 18129, 18130, 3, 2, 2, 2, 18130, 18132, 3, 2, 2, 2, 18131, 18129, 3, 2, 2, 2, 18132, 18133, 7, 84, 2, 2, 18133, 18134, 7, 81, 2, 2, 18134, 18135, 7, 89, 2, 2, 18135, 18136, 7, 86, 2, 2, 18136, 18137, 7, 91, 2, 2, 18137, 18138, 7, 82, 2, 2, 18138, 18139, 7, 71, 2, 2, 18139, 2480, 3, 2, 2, 2, 18140, 18144, 7, 39, 2, 2, 18141, 18143, 5, 4537, 2269, 2, 18142, 18141, 3, 2, 2, 2, 18143, 18146, 3, 2, 2, 2, 18144, 18142, 3, 2, 2, 2, 18144, 18145, 3, 2, 2, 2, 18145, 18147, 3, 2, 2, 2, 18146, 18144, 3, 2, 2, 2, 18147, 18148, 7, 86, 2, 2, 18148, 18149, 7, 91, 2, 2, 18149, 18150, 7, 82, 2, 2, 18150, 18151, 7, 71, 2, 2, 18151, 2482, 3, 2, 2, 2, 18152, 18153, 7, 82, 2, 2, 18153, 18154, 7, 71, 2, 2, 18154, 18155, 7, 84, 2, 2, 18155, 18156, 7, 72, 2, 2, 18156, 18157, 7, 81, 2, 2, 18157, 18158, 7, 84, 2, 2, 18158, 18159, 7, 79, 2, 2, 18159, 18160, 7, 67, 2, 2, 18160, 18161, 7, 80, 2, 2, 18161, 18162, 7, 69, 2, 2, 18162, 18163, 7, 71, 2, 2, 18163, 2484, 3, 2, 2, 2, 18164, 18165, 7, 82, 2, 2, 18165, 18166, 7, 71, 2, 2, 18166, 18167, 7, 84, 2, 2, 18167, 18168, 7, 75, 2, 2, 18168, 18169, 7, 81, 2, 2, 18169, 18170, 7, 70, 2, 2, 18170, 2486, 3, 2, 2, 2, 18171, 18172, 7, 82, 2, 2, 18172, 18173, 7, 71, 2, 2, 18173, 18174, 7, 84, 2, 2, 18174, 18175, 7, 79, 2, 2, 18175, 18176, 7, 67, 2, 2, 18176, 18177, 7, 80, 2, 2, 18177, 18178, 7, 71, 2, 2, 18178, 18179, 7, 80, 2, 2, 18179, 18180, 7, 86, 2, 2, 18180, 2488, 3, 2, 2, 2, 18181, 18182, 7, 82, 2, 2, 18182, 18183, 7, 71, 2, 2, 18183, 18184, 7, 84, 2, 2, 18184, 18185, 7, 79, 2, 2, 18185, 18186, 7, 75, 2, 2, 18186, 18187, 7, 85, 2, 2, 18187, 18188, 7, 85, 2, 2, 18188, 18189, 7, 75, 2, 2, 18189, 18190, 7, 81, 2, 2, 18190, 18191, 7, 80, 2, 2, 18191, 2490, 3, 2, 2, 2, 18192, 18193, 7, 82, 2, 2, 18193, 18194, 7, 71, 2, 2, 18194, 18195, 7, 84, 2, 2, 18195, 18196, 7, 79, 2, 2, 18196, 18197, 7, 87, 2, 2, 18197, 18198, 7, 86, 2, 2, 18198, 18199, 7, 71, 2, 2, 18199, 2492, 3, 2, 2, 2, 18200, 18201, 7, 82, 2, 2, 18201, 18202, 7, 71, 2, 2, 18202, 18203, 7, 84, 2, 2, 18203, 2494, 3, 2, 2, 2, 18204, 18205, 7, 82, 2, 2, 18205, 18206, 7, 72, 2, 2, 18206, 18207, 7, 75, 2, 2, 18207, 18208, 7, 78, 2, 2, 18208, 18209, 7, 71, 2, 2, 18209, 2496, 3, 2, 2, 2, 18210, 18211, 7, 82, 2, 2, 18211, 18212, 7, 74, 2, 2, 18212, 18213, 7, 91, 2, 2, 18213, 18214, 7, 85, 2, 2, 18214, 18215, 7, 75, 2, 2, 18215, 18216, 7, 69, 2, 2, 18216, 18217, 7, 67, 2, 2, 18217, 18218, 7, 78, 2, 2, 18218, 2498, 3, 2, 2, 2, 18219, 18220, 7, 82, 2, 2, 18220, 18221, 7, 75, 2, 2, 18221, 18222, 7, 77, 2, 2, 18222, 18223, 7, 71, 2, 2, 18223, 18224, 7, 91, 2, 2, 18224, 2500, 3, 2, 2, 2, 18225, 18226, 7, 82, 2, 2, 18226, 18227, 7, 75, 2, 2, 18227, 18228, 7, 82, 2, 2, 18228, 18229, 7, 71, 2, 2, 18229, 18230, 7, 78, 2, 2, 18230, 18231, 7, 75, 2, 2, 18231, 18232, 7, 80, 2, 2, 18232, 18233, 7, 71, 2, 2, 18233, 18234, 7, 70, 2, 2, 18234, 2502, 3, 2, 2, 2, 18235, 18236, 7, 82, 2, 2, 18236, 18237, 7, 75, 2, 2, 18237, 18238, 7, 82, 2, 2, 18238, 18239, 7, 71, 2, 2, 18239, 2504, 3, 2, 2, 2, 18240, 18241, 7, 82, 2, 2, 18241, 18242, 7, 75, 2, 2, 18242, 18243, 7, 88, 2, 2, 18243, 18244, 7, 97, 2, 2, 18244, 18245, 7, 73, 2, 2, 18245, 18246, 7, 68, 2, 2, 18246, 2506, 3, 2, 2, 2, 18247, 18248, 7, 82, 2, 2, 18248, 18249, 7, 75, 2, 2, 18249, 18250, 7, 88, 2, 2, 18250, 18251, 7, 81, 2, 2, 18251, 18252, 7, 86, 2, 2, 18252, 2508, 3, 2, 2, 2, 18253, 18254, 7, 82, 2, 2, 18254, 18255, 7, 75, 2, 2, 18255, 18256, 7, 88, 2, 2, 18256, 18257, 7, 97, 2, 2, 18257, 18258, 7, 85, 2, 2, 18258, 18259, 7, 85, 2, 2, 18259, 18260, 7, 72, 2, 2, 18260, 2510, 3, 2, 2, 2, 18261, 18262, 7, 82, 2, 2, 18262, 18263, 7, 78, 2, 2, 18263, 18264, 7, 67, 2, 2, 18264, 18265, 7, 69, 2, 2, 18265, 18266, 7, 71, 2, 2, 18266, 18267, 7, 97, 2, 2, 18267, 18268, 7, 70, 2, 2, 18268, 18269, 7, 75, 2, 2, 18269, 18270, 7, 85, 2, 2, 18270, 18271, 7, 86, 2, 2, 18271, 18272, 7, 75, 2, 2, 18272, 18273, 7, 80, 2, 2, 18273, 18274, 7, 69, 2, 2, 18274, 18275, 7, 86, 2, 2, 18275, 2512, 3, 2, 2, 2, 18276, 18277, 7, 82, 2, 2, 18277, 18278, 7, 78, 2, 2, 18278, 18279, 7, 67, 2, 2, 18279, 18280, 7, 69, 2, 2, 18280, 18281, 7, 71, 2, 2, 18281, 18282, 7, 97, 2, 2, 18282, 18283, 7, 73, 2, 2, 18283, 18284, 7, 84, 2, 2, 18284, 18285, 7, 81, 2, 2, 18285, 18286, 7, 87, 2, 2, 18286, 18287, 7, 82, 2, 2, 18287, 18288, 7, 97, 2, 2, 18288, 18289, 7, 68, 2, 2, 18289, 18290, 7, 91, 2, 2, 18290, 2514, 3, 2, 2, 2, 18291, 18292, 7, 82, 2, 2, 18292, 18293, 7, 78, 2, 2, 18293, 18294, 7, 67, 2, 2, 18294, 18295, 7, 80, 2, 2, 18295, 2516, 3, 2, 2, 2, 18296, 18297, 7, 82, 2, 2, 18297, 18298, 7, 78, 2, 2, 18298, 18299, 7, 85, 2, 2, 18299, 18300, 7, 69, 2, 2, 18300, 18301, 7, 81, 2, 2, 18301, 18302, 7, 82, 2, 2, 18302, 18303, 7, 71, 2, 2, 18303, 18304, 7, 97, 2, 2, 18304, 18305, 7, 85, 2, 2, 18305, 18306, 7, 71, 2, 2, 18306, 18307, 7, 86, 2, 2, 18307, 18308, 7, 86, 2, 2, 18308, 18309, 7, 75, 2, 2, 18309, 18310, 7, 80, 2, 2, 18310, 18311, 7, 73, 2, 2, 18311, 18312, 7, 85, 2, 2, 18312, 2518, 3, 2, 2, 2, 18313, 18314, 7, 82, 2, 2, 18314, 18315, 7, 78, 2, 2, 18315, 18316, 7, 85, 2, 2, 18316, 18317, 7, 97, 2, 2, 18317, 18318, 7, 75, 2, 2, 18318, 18319, 7, 80, 2, 2, 18319, 18320, 7, 86, 2, 2, 18320, 18321, 7, 71, 2, 2, 18321, 18322, 7, 73, 2, 2, 18322, 18323, 7, 71, 2, 2, 18323, 18324, 7, 84, 2, 2, 18324, 2520, 3, 2, 2, 2, 18325, 18326, 7, 82, 2, 2, 18326, 18327, 7, 78, 2, 2, 18327, 18328, 7, 85, 2, 2, 18328, 18329, 7, 83, 2, 2, 18329, 18330, 7, 78, 2, 2, 18330, 18331, 7, 97, 2, 2, 18331, 18332, 7, 69, 2, 2, 18332, 18333, 7, 69, 2, 2, 18333, 18334, 7, 72, 2, 2, 18334, 18335, 7, 78, 2, 2, 18335, 18336, 7, 67, 2, 2, 18336, 18337, 7, 73, 2, 2, 18337, 18338, 7, 85, 2, 2, 18338, 2522, 3, 2, 2, 2, 18339, 18340, 7, 82, 2, 2, 18340, 18341, 7, 78, 2, 2, 18341, 18342, 7, 85, 2, 2, 18342, 18343, 7, 83, 2, 2, 18343, 18344, 7, 78, 2, 2, 18344, 18345, 7, 97, 2, 2, 18345, 18346, 7, 69, 2, 2, 18346, 18347, 7, 81, 2, 2, 18347, 18348, 7, 70, 2, 2, 18348, 18349, 7, 71, 2, 2, 18349, 18350, 7, 97, 2, 2, 18350, 18351, 7, 86, 2, 2, 18351, 18352, 7, 91, 2, 2, 18352, 18353, 7, 82, 2, 2, 18353, 18354, 7, 71, 2, 2, 18354, 2524, 3, 2, 2, 2, 18355, 18356, 7, 82, 2, 2, 18356, 18357, 7, 78, 2, 2, 18357, 18358, 7, 85, 2, 2, 18358, 18359, 7, 83, 2, 2, 18359, 18360, 7, 78, 2, 2, 18360, 18361, 7, 97, 2, 2, 18361, 18362, 7, 70, 2, 2, 18362, 18363, 7, 71, 2, 2, 18363, 18364, 7, 68, 2, 2, 18364, 18365, 7, 87, 2, 2, 18365, 18366, 7, 73, 2, 2, 18366, 2526, 3, 2, 2, 2, 18367, 18368, 7, 82, 2, 2, 18368, 18369, 7, 78, 2, 2, 18369, 18370, 7, 85, 2, 2, 18370, 18371, 7, 83, 2, 2, 18371, 18372, 7, 78, 2, 2, 18372, 18373, 7, 97, 2, 2, 18373, 18374, 7, 81, 2, 2, 18374, 18375, 7, 82, 2, 2, 18375, 18376, 7, 86, 2, 2, 18376, 18377, 7, 75, 2, 2, 18377, 18378, 7, 79, 2, 2, 18378, 18379, 7, 75, 2, 2, 18379, 18380, 7, 92, 2, 2, 18380, 18381, 7, 71, 2, 2, 18381, 18382, 7, 97, 2, 2, 18382, 18383, 7, 78, 2, 2, 18383, 18384, 7, 71, 2, 2, 18384, 18385, 7, 88, 2, 2, 18385, 18386, 7, 71, 2, 2, 18386, 18387, 7, 78, 2, 2, 18387, 2528, 3, 2, 2, 2, 18388, 18389, 7, 82, 2, 2, 18389, 18390, 7, 78, 2, 2, 18390, 18391, 7, 85, 2, 2, 18391, 18392, 7, 83, 2, 2, 18392, 18393, 7, 78, 2, 2, 18393, 18394, 7, 97, 2, 2, 18394, 18395, 7, 89, 2, 2, 18395, 18396, 7, 67, 2, 2, 18396, 18397, 7, 84, 2, 2, 18397, 18398, 7, 80, 2, 2, 18398, 18399, 7, 75, 2, 2, 18399, 18400, 7, 80, 2, 2, 18400, 18401, 7, 73, 2, 2, 18401, 18402, 7, 85, 2, 2, 18402, 2530, 3, 2, 2, 2, 18403, 18404, 7, 82, 2, 2, 18404, 18405, 7, 78, 2, 2, 18405, 18406, 7, 87, 2, 2, 18406, 18407, 7, 73, 2, 2, 18407, 18408, 7, 73, 2, 2, 18408, 18409, 7, 67, 2, 2, 18409, 18410, 7, 68, 2, 2, 18410, 18411, 7, 78, 2, 2, 18411, 18412, 7, 71, 2, 2, 18412, 2532, 3, 2, 2, 2, 18413, 18414, 7, 82, 2, 2, 18414, 18415, 7, 81, 2, 2, 18415, 18416, 7, 75, 2, 2, 18416, 18417, 7, 80, 2, 2, 18417, 18418, 7, 86, 2, 2, 18418, 2534, 3, 2, 2, 2, 18419, 18420, 7, 82, 2, 2, 18420, 18421, 7, 81, 2, 2, 18421, 18422, 7, 78, 2, 2, 18422, 18423, 7, 75, 2, 2, 18423, 18424, 7, 69, 2, 2, 18424, 18425, 7, 91, 2, 2, 18425, 2536, 3, 2, 2, 2, 18426, 18427, 7, 82, 2, 2, 18427, 18428, 7, 81, 2, 2, 18428, 18429, 7, 81, 2, 2, 18429, 18430, 7, 78, 2, 2, 18430, 18431, 7, 97, 2, 2, 18431, 18432, 7, 51, 2, 2, 18432, 18433, 7, 56, 2, 2, 18433, 18434, 7, 77, 2, 2, 18434, 2538, 3, 2, 2, 2, 18435, 18436, 7, 82, 2, 2, 18436, 18437, 7, 81, 2, 2, 18437, 18438, 7, 81, 2, 2, 18438, 18439, 7, 78, 2, 2, 18439, 18440, 7, 97, 2, 2, 18440, 18441, 7, 52, 2, 2, 18441, 18442, 7, 77, 2, 2, 18442, 2540, 3, 2, 2, 2, 18443, 18444, 7, 82, 2, 2, 18444, 18445, 7, 81, 2, 2, 18445, 18446, 7, 81, 2, 2, 18446, 18447, 7, 78, 2, 2, 18447, 18448, 7, 97, 2, 2, 18448, 18449, 7, 53, 2, 2, 18449, 18450, 7, 52, 2, 2, 18450, 18451, 7, 77, 2, 2, 18451, 2542, 3, 2, 2, 2, 18452, 18453, 7, 82, 2, 2, 18453, 18454, 7, 81, 2, 2, 18454, 18455, 7, 81, 2, 2, 18455, 18456, 7, 78, 2, 2, 18456, 18457, 7, 97, 2, 2, 18457, 18458, 7, 54, 2, 2, 18458, 18459, 7, 77, 2, 2, 18459, 2544, 3, 2, 2, 2, 18460, 18461, 7, 82, 2, 2, 18461, 18462, 7, 81, 2, 2, 18462, 18463, 7, 81, 2, 2, 18463, 18464, 7, 78, 2, 2, 18464, 18465, 7, 97, 2, 2, 18465, 18466, 7, 58, 2, 2, 18466, 18467, 7, 77, 2, 2, 18467, 2546, 3, 2, 2, 2, 18468, 18469, 7, 82, 2, 2, 18469, 18470, 7, 81, 2, 2, 18470, 18471, 7, 85, 2, 2, 18471, 18472, 7, 75, 2, 2, 18472, 18473, 7, 86, 2, 2, 18473, 18474, 7, 75, 2, 2, 18474, 18475, 7, 88, 2, 2, 18475, 18476, 7, 71, 2, 2, 18476, 18477, 7, 80, 2, 2, 18477, 2548, 3, 2, 2, 2, 18478, 18479, 7, 82, 2, 2, 18479, 18480, 7, 81, 2, 2, 18480, 18481, 7, 85, 2, 2, 18481, 18482, 7, 75, 2, 2, 18482, 18483, 7, 86, 2, 2, 18483, 18484, 7, 75, 2, 2, 18484, 18485, 7, 88, 2, 2, 18485, 18486, 7, 71, 2, 2, 18486, 2550, 3, 2, 2, 2, 18487, 18488, 7, 82, 2, 2, 18488, 18489, 7, 81, 2, 2, 18489, 18490, 7, 85, 2, 2, 18490, 18491, 7, 86, 2, 2, 18491, 18492, 7, 97, 2, 2, 18492, 18493, 7, 86, 2, 2, 18493, 18494, 7, 84, 2, 2, 18494, 18495, 7, 67, 2, 2, 18495, 18496, 7, 80, 2, 2, 18496, 18497, 7, 85, 2, 2, 18497, 18498, 7, 67, 2, 2, 18498, 18499, 7, 69, 2, 2, 18499, 18500, 7, 86, 2, 2, 18500, 18501, 7, 75, 2, 2, 18501, 18502, 7, 81, 2, 2, 18502, 18503, 7, 80, 2, 2, 18503, 2552, 3, 2, 2, 2, 18504, 18505, 7, 82, 2, 2, 18505, 18506, 7, 81, 2, 2, 18506, 18507, 7, 89, 2, 2, 18507, 18508, 7, 71, 2, 2, 18508, 18509, 7, 84, 2, 2, 18509, 18510, 7, 79, 2, 2, 18510, 18511, 7, 87, 2, 2, 18511, 18512, 7, 78, 2, 2, 18512, 18513, 7, 86, 2, 2, 18513, 18514, 7, 75, 2, 2, 18514, 18515, 7, 85, 2, 2, 18515, 18516, 7, 71, 2, 2, 18516, 18517, 7, 86, 2, 2, 18517, 18518, 7, 97, 2, 2, 18518, 18519, 7, 68, 2, 2, 18519, 18520, 7, 91, 2, 2, 18520, 18521, 7, 97, 2, 2, 18521, 18522, 7, 69, 2, 2, 18522, 18523, 7, 67, 2, 2, 18523, 18524, 7, 84, 2, 2, 18524, 18525, 7, 70, 2, 2, 18525, 18526, 7, 75, 2, 2, 18526, 18527, 7, 80, 2, 2, 18527, 18528, 7, 67, 2, 2, 18528, 18529, 7, 78, 2, 2, 18529, 18530, 7, 75, 2, 2, 18530, 18531, 7, 86, 2, 2, 18531, 18532, 7, 91, 2, 2, 18532, 2554, 3, 2, 2, 2, 18533, 18534, 7, 82, 2, 2, 18534, 18535, 7, 81, 2, 2, 18535, 18536, 7, 89, 2, 2, 18536, 18537, 7, 71, 2, 2, 18537, 18538, 7, 84, 2, 2, 18538, 18539, 7, 79, 2, 2, 18539, 18540, 7, 87, 2, 2, 18540, 18541, 7, 78, 2, 2, 18541, 18542, 7, 86, 2, 2, 18542, 18543, 7, 75, 2, 2, 18543, 18544, 7, 85, 2, 2, 18544, 18545, 7, 71, 2, 2, 18545, 18546, 7, 86, 2, 2, 18546, 2556, 3, 2, 2, 2, 18547, 18548, 7, 82, 2, 2, 18548, 18549, 7, 81, 2, 2, 18549, 18550, 7, 89, 2, 2, 18550, 18551, 7, 71, 2, 2, 18551, 18552, 7, 84, 2, 2, 18552, 2558, 3, 2, 2, 2, 18553, 18554, 7, 82, 2, 2, 18554, 18555, 7, 83, 2, 2, 18555, 18556, 7, 97, 2, 2, 18556, 18557, 7, 69, 2, 2, 18557, 18558, 7, 81, 2, 2, 18558, 18559, 7, 80, 2, 2, 18559, 18560, 7, 69, 2, 2, 18560, 18561, 7, 87, 2, 2, 18561, 18562, 7, 84, 2, 2, 18562, 18563, 7, 84, 2, 2, 18563, 18564, 7, 71, 2, 2, 18564, 18565, 7, 80, 2, 2, 18565, 18566, 7, 86, 2, 2, 18566, 18567, 7, 97, 2, 2, 18567, 18568, 7, 87, 2, 2, 18568, 18569, 7, 80, 2, 2, 18569, 18570, 7, 75, 2, 2, 18570, 18571, 7, 81, 2, 2, 18571, 18572, 7, 80, 2, 2, 18572, 2560, 3, 2, 2, 2, 18573, 18574, 7, 82, 2, 2, 18574, 18575, 7, 83, 2, 2, 18575, 18576, 7, 97, 2, 2, 18576, 18577, 7, 70, 2, 2, 18577, 18578, 7, 75, 2, 2, 18578, 18579, 7, 85, 2, 2, 18579, 18580, 7, 86, 2, 2, 18580, 18581, 7, 84, 2, 2, 18581, 18582, 7, 75, 2, 2, 18582, 18583, 7, 68, 2, 2, 18583, 18584, 7, 87, 2, 2, 18584, 18585, 7, 86, 2, 2, 18585, 18586, 7, 71, 2, 2, 18586, 2562, 3, 2, 2, 2, 18587, 18588, 7, 82, 2, 2, 18588, 18589, 7, 83, 2, 2, 18589, 18590, 7, 97, 2, 2, 18590, 18591, 7, 70, 2, 2, 18591, 18592, 7, 75, 2, 2, 18592, 18593, 7, 85, 2, 2, 18593, 18594, 7, 86, 2, 2, 18594, 18595, 7, 84, 2, 2, 18595, 18596, 7, 75, 2, 2, 18596, 18597, 7, 68, 2, 2, 18597, 18598, 7, 87, 2, 2, 18598, 18599, 7, 86, 2, 2, 18599, 18600, 7, 71, 2, 2, 18600, 18601, 7, 97, 2, 2, 18601, 18602, 7, 89, 2, 2, 18602, 18603, 7, 75, 2, 2, 18603, 18604, 7, 80, 2, 2, 18604, 18605, 7, 70, 2, 2, 18605, 18606, 7, 81, 2, 2, 18606, 18607, 7, 89, 2, 2, 18607, 2564, 3, 2, 2, 2, 18608, 18609, 7, 82, 2, 2, 18609, 18610, 7, 83, 2, 2, 18610, 18611, 7, 97, 2, 2, 18611, 18612, 7, 72, 2, 2, 18612, 18613, 7, 75, 2, 2, 18613, 18614, 7, 78, 2, 2, 18614, 18615, 7, 86, 2, 2, 18615, 18616, 7, 71, 2, 2, 18616, 18617, 7, 84, 2, 2, 18617, 2566, 3, 2, 2, 2, 18618, 18619, 7, 82, 2, 2, 18619, 18620, 7, 83, 2, 2, 18620, 18621, 7, 97, 2, 2, 18621, 18622, 7, 79, 2, 2, 18622, 18623, 7, 67, 2, 2, 18623, 18624, 7, 82, 2, 2, 18624, 2568, 3, 2, 2, 2, 18625, 18626, 7, 82, 2, 2, 18626, 18627, 7, 83, 2, 2, 18627, 18628, 7, 97, 2, 2, 18628, 18629, 7, 80, 2, 2, 18629, 18630, 7, 81, 2, 2, 18630, 18631, 7, 79, 2, 2, 18631, 18632, 7, 67, 2, 2, 18632, 18633, 7, 82, 2, 2, 18633, 2570, 3, 2, 2, 2, 18634, 18635, 7, 82, 2, 2, 18635, 18636, 7, 83, 2, 2, 18636, 18637, 7, 97, 2, 2, 18637, 18638, 7, 84, 2, 2, 18638, 18639, 7, 71, 2, 2, 18639, 18640, 7, 82, 2, 2, 18640, 18641, 7, 78, 2, 2, 18641, 18642, 7, 75, 2, 2, 18642, 18643, 7, 69, 2, 2, 18643, 18644, 7, 67, 2, 2, 18644, 18645, 7, 86, 2, 2, 18645, 18646, 7, 71, 2, 2, 18646, 2572, 3, 2, 2, 2, 18647, 18648, 7, 82, 2, 2, 18648, 18649, 7, 83, 2, 2, 18649, 18650, 7, 97, 2, 2, 18650, 18651, 7, 85, 2, 2, 18651, 18652, 7, 77, 2, 2, 18652, 18653, 7, 71, 2, 2, 18653, 18654, 7, 89, 2, 2, 18654, 2574, 3, 2, 2, 2, 18655, 18656, 7, 82, 2, 2, 18656, 18657, 7, 84, 2, 2, 18657, 18658, 7, 67, 2, 2, 18658, 18659, 7, 73, 2, 2, 18659, 18660, 7, 79, 2, 2, 18660, 18661, 7, 67, 2, 2, 18661, 2576, 3, 2, 2, 2, 18662, 18663, 7, 82, 2, 2, 18663, 18664, 7, 84, 2, 2, 18664, 18665, 7, 71, 2, 2, 18665, 18666, 7, 68, 2, 2, 18666, 18667, 7, 87, 2, 2, 18667, 18668, 7, 75, 2, 2, 18668, 18669, 7, 78, 2, 2, 18669, 18670, 7, 86, 2, 2, 18670, 2578, 3, 2, 2, 2, 18671, 18672, 7, 82, 2, 2, 18672, 18673, 7, 84, 2, 2, 18673, 18674, 7, 71, 2, 2, 18674, 18675, 7, 69, 2, 2, 18675, 18676, 7, 71, 2, 2, 18676, 18677, 7, 70, 2, 2, 18677, 18678, 7, 71, 2, 2, 18678, 18679, 7, 85, 2, 2, 18679, 2580, 3, 2, 2, 2, 18680, 18681, 7, 82, 2, 2, 18681, 18682, 7, 84, 2, 2, 18682, 18683, 7, 71, 2, 2, 18683, 18684, 7, 69, 2, 2, 18684, 18685, 7, 71, 2, 2, 18685, 18686, 7, 70, 2, 2, 18686, 18687, 7, 75, 2, 2, 18687, 18688, 7, 80, 2, 2, 18688, 18689, 7, 73, 2, 2, 18689, 2582, 3, 2, 2, 2, 18690, 18691, 7, 82, 2, 2, 18691, 18692, 7, 84, 2, 2, 18692, 18693, 7, 71, 2, 2, 18693, 18694, 7, 69, 2, 2, 18694, 18695, 7, 75, 2, 2, 18695, 18696, 7, 85, 2, 2, 18696, 18697, 7, 75, 2, 2, 18697, 18698, 7, 81, 2, 2, 18698, 18699, 7, 80, 2, 2, 18699, 2584, 3, 2, 2, 2, 18700, 18701, 7, 82, 2, 2, 18701, 18702, 7, 84, 2, 2, 18702, 18703, 7, 71, 2, 2, 18703, 18704, 7, 69, 2, 2, 18704, 18705, 7, 81, 2, 2, 18705, 18706, 7, 79, 2, 2, 18706, 18707, 7, 82, 2, 2, 18707, 18708, 7, 87, 2, 2, 18708, 18709, 7, 86, 2, 2, 18709, 18710, 7, 71, 2, 2, 18710, 18711, 7, 97, 2, 2, 18711, 18712, 7, 85, 2, 2, 18712, 18713, 7, 87, 2, 2, 18713, 18714, 7, 68, 2, 2, 18714, 18715, 7, 83, 2, 2, 18715, 18716, 7, 87, 2, 2, 18716, 18717, 7, 71, 2, 2, 18717, 18718, 7, 84, 2, 2, 18718, 18719, 7, 91, 2, 2, 18719, 2586, 3, 2, 2, 2, 18720, 18721, 7, 82, 2, 2, 18721, 18722, 7, 84, 2, 2, 18722, 18723, 7, 71, 2, 2, 18723, 18724, 7, 70, 2, 2, 18724, 18725, 7, 75, 2, 2, 18725, 18726, 7, 69, 2, 2, 18726, 18727, 7, 67, 2, 2, 18727, 18728, 7, 86, 2, 2, 18728, 18729, 7, 71, 2, 2, 18729, 18730, 7, 97, 2, 2, 18730, 18731, 7, 84, 2, 2, 18731, 18732, 7, 71, 2, 2, 18732, 18733, 7, 81, 2, 2, 18733, 18734, 7, 84, 2, 2, 18734, 18735, 7, 70, 2, 2, 18735, 18736, 7, 71, 2, 2, 18736, 18737, 7, 84, 2, 2, 18737, 18738, 7, 85, 2, 2, 18738, 2588, 3, 2, 2, 2, 18739, 18740, 7, 82, 2, 2, 18740, 18741, 7, 84, 2, 2, 18741, 18742, 7, 71, 2, 2, 18742, 18743, 7, 78, 2, 2, 18743, 18744, 7, 81, 2, 2, 18744, 18745, 7, 67, 2, 2, 18745, 18746, 7, 70, 2, 2, 18746, 2590, 3, 2, 2, 2, 18747, 18748, 7, 82, 2, 2, 18748, 18749, 7, 84, 2, 2, 18749, 18750, 7, 71, 2, 2, 18750, 18751, 7, 82, 2, 2, 18751, 18752, 7, 67, 2, 2, 18752, 18753, 7, 84, 2, 2, 18753, 18754, 7, 71, 2, 2, 18754, 2592, 3, 2, 2, 2, 18755, 18756, 7, 82, 2, 2, 18756, 18757, 7, 84, 2, 2, 18757, 18758, 7, 71, 2, 2, 18758, 18759, 7, 85, 2, 2, 18759, 18760, 7, 71, 2, 2, 18760, 18761, 7, 80, 2, 2, 18761, 18762, 7, 86, 2, 2, 18762, 18763, 7, 80, 2, 2, 18763, 18764, 7, 80, 2, 2, 18764, 18765, 7, 88, 2, 2, 18765, 2594, 3, 2, 2, 2, 18766, 18767, 7, 82, 2, 2, 18767, 18768, 7, 84, 2, 2, 18768, 18769, 7, 71, 2, 2, 18769, 18770, 7, 85, 2, 2, 18770, 18771, 7, 71, 2, 2, 18771, 18772, 7, 80, 2, 2, 18772, 18773, 7, 86, 2, 2, 18773, 2596, 3, 2, 2, 2, 18774, 18775, 7, 82, 2, 2, 18775, 18776, 7, 84, 2, 2, 18776, 18777, 7, 71, 2, 2, 18777, 18778, 7, 85, 2, 2, 18778, 18779, 7, 71, 2, 2, 18779, 18780, 7, 80, 2, 2, 18780, 18781, 7, 86, 2, 2, 18781, 18782, 7, 88, 2, 2, 18782, 2598, 3, 2, 2, 2, 18783, 18784, 7, 82, 2, 2, 18784, 18785, 7, 84, 2, 2, 18785, 18786, 7, 71, 2, 2, 18786, 18787, 7, 85, 2, 2, 18787, 18788, 7, 71, 2, 2, 18788, 18789, 7, 84, 2, 2, 18789, 18790, 7, 88, 2, 2, 18790, 18791, 7, 71, 2, 2, 18791, 18792, 7, 97, 2, 2, 18792, 18793, 7, 81, 2, 2, 18793, 18794, 7, 75, 2, 2, 18794, 18795, 7, 70, 2, 2, 18795, 2600, 3, 2, 2, 2, 18796, 18797, 7, 82, 2, 2, 18797, 18798, 7, 84, 2, 2, 18798, 18799, 7, 71, 2, 2, 18799, 18800, 7, 85, 2, 2, 18800, 18801, 7, 71, 2, 2, 18801, 18802, 7, 84, 2, 2, 18802, 18803, 7, 88, 2, 2, 18803, 18804, 7, 71, 2, 2, 18804, 2602, 3, 2, 2, 2, 18805, 18806, 7, 82, 2, 2, 18806, 18807, 7, 84, 2, 2, 18807, 18808, 7, 71, 2, 2, 18808, 18809, 7, 86, 2, 2, 18809, 18810, 7, 86, 2, 2, 18810, 18811, 7, 91, 2, 2, 18811, 2604, 3, 2, 2, 2, 18812, 18813, 7, 82, 2, 2, 18813, 18814, 7, 84, 2, 2, 18814, 18815, 7, 71, 2, 2, 18815, 18816, 7, 88, 2, 2, 18816, 18817, 7, 75, 2, 2, 18817, 18818, 7, 81, 2, 2, 18818, 18819, 7, 87, 2, 2, 18819, 18820, 7, 85, 2, 2, 18820, 2606, 3, 2, 2, 2, 18821, 18822, 7, 82, 2, 2, 18822, 18823, 7, 84, 2, 2, 18823, 18824, 7, 71, 2, 2, 18824, 18825, 7, 88, 2, 2, 18825, 2608, 3, 2, 2, 2, 18826, 18827, 7, 82, 2, 2, 18827, 18828, 7, 84, 2, 2, 18828, 18829, 7, 75, 2, 2, 18829, 18830, 7, 79, 2, 2, 18830, 18831, 7, 67, 2, 2, 18831, 18832, 7, 84, 2, 2, 18832, 18833, 7, 91, 2, 2, 18833, 2610, 3, 2, 2, 2, 18834, 18835, 7, 82, 2, 2, 18835, 18836, 7, 84, 2, 2, 18836, 18837, 7, 75, 2, 2, 18837, 18838, 7, 80, 2, 2, 18838, 18839, 7, 86, 2, 2, 18839, 18840, 7, 68, 2, 2, 18840, 18841, 7, 78, 2, 2, 18841, 18842, 7, 81, 2, 2, 18842, 18843, 7, 68, 2, 2, 18843, 18844, 7, 86, 2, 2, 18844, 18845, 7, 81, 2, 2, 18845, 18846, 7, 69, 2, 2, 18846, 18847, 7, 78, 2, 2, 18847, 18848, 7, 81, 2, 2, 18848, 18849, 7, 68, 2, 2, 18849, 2612, 3, 2, 2, 2, 18850, 18851, 7, 82, 2, 2, 18851, 18852, 7, 84, 2, 2, 18852, 18853, 7, 75, 2, 2, 18853, 18854, 7, 81, 2, 2, 18854, 18855, 7, 84, 2, 2, 18855, 18856, 7, 75, 2, 2, 18856, 18857, 7, 86, 2, 2, 18857, 18858, 7, 91, 2, 2, 18858, 2614, 3, 2, 2, 2, 18859, 18860, 7, 82, 2, 2, 18860, 18861, 7, 84, 2, 2, 18861, 18862, 7, 75, 2, 2, 18862, 18863, 7, 81, 2, 2, 18863, 18864, 7, 84, 2, 2, 18864, 2616, 3, 2, 2, 2, 18865, 18866, 7, 82, 2, 2, 18866, 18867, 7, 84, 2, 2, 18867, 18868, 7, 75, 2, 2, 18868, 18869, 7, 88, 2, 2, 18869, 18870, 7, 67, 2, 2, 18870, 18871, 7, 86, 2, 2, 18871, 18872, 7, 71, 2, 2, 18872, 2618, 3, 2, 2, 2, 18873, 18874, 7, 82, 2, 2, 18874, 18875, 7, 84, 2, 2, 18875, 18876, 7, 75, 2, 2, 18876, 18877, 7, 88, 2, 2, 18877, 18878, 7, 67, 2, 2, 18878, 18879, 7, 86, 2, 2, 18879, 18880, 7, 71, 2, 2, 18880, 18881, 7, 97, 2, 2, 18881, 18882, 7, 85, 2, 2, 18882, 18883, 7, 73, 2, 2, 18883, 18884, 7, 67, 2, 2, 18884, 2620, 3, 2, 2, 2, 18885, 18886, 7, 82, 2, 2, 18886, 18887, 7, 84, 2, 2, 18887, 18888, 7, 75, 2, 2, 18888, 18889, 7, 88, 2, 2, 18889, 18890, 7, 75, 2, 2, 18890, 18891, 7, 78, 2, 2, 18891, 18892, 7, 71, 2, 2, 18892, 18893, 7, 73, 2, 2, 18893, 18894, 7, 71, 2, 2, 18894, 18895, 7, 70, 2, 2, 18895, 2622, 3, 2, 2, 2, 18896, 18897, 7, 82, 2, 2, 18897, 18898, 7, 84, 2, 2, 18898, 18899, 7, 75, 2, 2, 18899, 18900, 7, 88, 2, 2, 18900, 18901, 7, 75, 2, 2, 18901, 18902, 7, 78, 2, 2, 18902, 18903, 7, 71, 2, 2, 18903, 18904, 7, 73, 2, 2, 18904, 18905, 7, 71, 2, 2, 18905, 2624, 3, 2, 2, 2, 18906, 18907, 7, 82, 2, 2, 18907, 18908, 7, 84, 2, 2, 18908, 18909, 7, 75, 2, 2, 18909, 18910, 7, 88, 2, 2, 18910, 18911, 7, 75, 2, 2, 18911, 18912, 7, 78, 2, 2, 18912, 18913, 7, 71, 2, 2, 18913, 18914, 7, 73, 2, 2, 18914, 18915, 7, 71, 2, 2, 18915, 18916, 7, 85, 2, 2, 18916, 2626, 3, 2, 2, 2, 18917, 18918, 7, 82, 2, 2, 18918, 18919, 7, 84, 2, 2, 18919, 18920, 7, 81, 2, 2, 18920, 18921, 7, 69, 2, 2, 18921, 18922, 7, 71, 2, 2, 18922, 18923, 7, 70, 2, 2, 18923, 18924, 7, 87, 2, 2, 18924, 18925, 7, 84, 2, 2, 18925, 18926, 7, 67, 2, 2, 18926, 18927, 7, 78, 2, 2, 18927, 2628, 3, 2, 2, 2, 18928, 18929, 7, 82, 2, 2, 18929, 18930, 7, 84, 2, 2, 18930, 18931, 7, 81, 2, 2, 18931, 18932, 7, 69, 2, 2, 18932, 18933, 7, 71, 2, 2, 18933, 18934, 7, 70, 2, 2, 18934, 18935, 7, 87, 2, 2, 18935, 18936, 7, 84, 2, 2, 18936, 18937, 7, 71, 2, 2, 18937, 2630, 3, 2, 2, 2, 18938, 18939, 7, 82, 2, 2, 18939, 18940, 7, 84, 2, 2, 18940, 18941, 7, 81, 2, 2, 18941, 18942, 7, 69, 2, 2, 18942, 18943, 7, 71, 2, 2, 18943, 18944, 7, 85, 2, 2, 18944, 18945, 7, 85, 2, 2, 18945, 2632, 3, 2, 2, 2, 18946, 18947, 7, 82, 2, 2, 18947, 18948, 7, 84, 2, 2, 18948, 18949, 7, 81, 2, 2, 18949, 18950, 7, 72, 2, 2, 18950, 18951, 7, 75, 2, 2, 18951, 18952, 7, 78, 2, 2, 18952, 18953, 7, 71, 2, 2, 18953, 2634, 3, 2, 2, 2, 18954, 18955, 7, 82, 2, 2, 18955, 18956, 7, 84, 2, 2, 18956, 18957, 7, 81, 2, 2, 18957, 18958, 7, 73, 2, 2, 18958, 18959, 7, 84, 2, 2, 18959, 18960, 7, 67, 2, 2, 18960, 18961, 7, 79, 2, 2, 18961, 2636, 3, 2, 2, 2, 18962, 18963, 7, 82, 2, 2, 18963, 18964, 7, 84, 2, 2, 18964, 18965, 7, 81, 2, 2, 18965, 18966, 7, 76, 2, 2, 18966, 18967, 7, 71, 2, 2, 18967, 18968, 7, 69, 2, 2, 18968, 18969, 7, 86, 2, 2, 18969, 2638, 3, 2, 2, 2, 18970, 18971, 7, 82, 2, 2, 18971, 18972, 7, 84, 2, 2, 18972, 18973, 7, 81, 2, 2, 18973, 18974, 7, 82, 2, 2, 18974, 18975, 7, 67, 2, 2, 18975, 18976, 7, 73, 2, 2, 18976, 18977, 7, 67, 2, 2, 18977, 18978, 7, 86, 2, 2, 18978, 18979, 7, 71, 2, 2, 18979, 2640, 3, 2, 2, 2, 18980, 18981, 7, 82, 2, 2, 18981, 18982, 7, 84, 2, 2, 18982, 18983, 7, 81, 2, 2, 18983, 18984, 7, 86, 2, 2, 18984, 18985, 7, 71, 2, 2, 18985, 18986, 7, 69, 2, 2, 18986, 18987, 7, 86, 2, 2, 18987, 18988, 7, 71, 2, 2, 18988, 18989, 7, 70, 2, 2, 18989, 2642, 3, 2, 2, 2, 18990, 18991, 7, 82, 2, 2, 18991, 18992, 7, 84, 2, 2, 18992, 18993, 7, 81, 2, 2, 18993, 18994, 7, 86, 2, 2, 18994, 18995, 7, 71, 2, 2, 18995, 18996, 7, 69, 2, 2, 18996, 18997, 7, 86, 2, 2, 18997, 18998, 7, 75, 2, 2, 18998, 18999, 7, 81, 2, 2, 18999, 19000, 7, 80, 2, 2, 19000, 2644, 3, 2, 2, 2, 19001, 19002, 7, 82, 2, 2, 19002, 19003, 7, 84, 2, 2, 19003, 19004, 7, 81, 2, 2, 19004, 19005, 7, 90, 2, 2, 19005, 19006, 7, 91, 2, 2, 19006, 2646, 3, 2, 2, 2, 19007, 19008, 7, 82, 2, 2, 19008, 19009, 7, 84, 2, 2, 19009, 19010, 7, 87, 2, 2, 19010, 19011, 7, 80, 2, 2, 19011, 19012, 7, 75, 2, 2, 19012, 19013, 7, 80, 2, 2, 19013, 19014, 7, 73, 2, 2, 19014, 2648, 3, 2, 2, 2, 19015, 19016, 7, 82, 2, 2, 19016, 19017, 7, 87, 2, 2, 19017, 19018, 7, 68, 2, 2, 19018, 19019, 7, 78, 2, 2, 19019, 19020, 7, 75, 2, 2, 19020, 19021, 7, 69, 2, 2, 19021, 2650, 3, 2, 2, 2, 19022, 19023, 7, 82, 2, 2, 19023, 19024, 7, 87, 2, 2, 19024, 19025, 7, 78, 2, 2, 19025, 19026, 7, 78, 2, 2, 19026, 19027, 7, 97, 2, 2, 19027, 19028, 7, 82, 2, 2, 19028, 19029, 7, 84, 2, 2, 19029, 19030, 7, 71, 2, 2, 19030, 19031, 7, 70, 2, 2, 19031, 2652, 3, 2, 2, 2, 19032, 19033, 7, 82, 2, 2, 19033, 19034, 7, 87, 2, 2, 19034, 19035, 7, 84, 2, 2, 19035, 19036, 7, 73, 2, 2, 19036, 19037, 7, 71, 2, 2, 19037, 2654, 3, 2, 2, 2, 19038, 19039, 7, 82, 2, 2, 19039, 19040, 7, 87, 2, 2, 19040, 19041, 7, 85, 2, 2, 19041, 19042, 7, 74, 2, 2, 19042, 19043, 7, 97, 2, 2, 19043, 19044, 7, 82, 2, 2, 19044, 19045, 7, 84, 2, 2, 19045, 19046, 7, 71, 2, 2, 19046, 19047, 7, 70, 2, 2, 19047, 2656, 3, 2, 2, 2, 19048, 19049, 7, 82, 2, 2, 19049, 19050, 7, 87, 2, 2, 19050, 19051, 7, 85, 2, 2, 19051, 19052, 7, 74, 2, 2, 19052, 19053, 7, 97, 2, 2, 19053, 19054, 7, 85, 2, 2, 19054, 19055, 7, 87, 2, 2, 19055, 19056, 7, 68, 2, 2, 19056, 19057, 7, 83, 2, 2, 19057, 2658, 3, 2, 2, 2, 19058, 19059, 7, 82, 2, 2, 19059, 19060, 7, 90, 2, 2, 19060, 19061, 7, 97, 2, 2, 19061, 19062, 7, 72, 2, 2, 19062, 19063, 7, 67, 2, 2, 19063, 19064, 7, 87, 2, 2, 19064, 19065, 7, 78, 2, 2, 19065, 19066, 7, 86, 2, 2, 19066, 19067, 7, 97, 2, 2, 19067, 19068, 7, 86, 2, 2, 19068, 19069, 7, 81, 2, 2, 19069, 19070, 7, 78, 2, 2, 19070, 19071, 7, 71, 2, 2, 19071, 19072, 7, 84, 2, 2, 19072, 19073, 7, 67, 2, 2, 19073, 19074, 7, 80, 2, 2, 19074, 19075, 7, 69, 2, 2, 19075, 19076, 7, 71, 2, 2, 19076, 2660, 3, 2, 2, 2, 19077, 19078, 7, 82, 2, 2, 19078, 19079, 7, 90, 2, 2, 19079, 19080, 7, 97, 2, 2, 19080, 19081, 7, 73, 2, 2, 19081, 19082, 7, 84, 2, 2, 19082, 19083, 7, 67, 2, 2, 19083, 19084, 7, 80, 2, 2, 19084, 19085, 7, 87, 2, 2, 19085, 19086, 7, 78, 2, 2, 19086, 19087, 7, 71, 2, 2, 19087, 2662, 3, 2, 2, 2, 19088, 19089, 7, 82, 2, 2, 19089, 19090, 7, 90, 2, 2, 19090, 19091, 7, 97, 2, 2, 19091, 19092, 7, 76, 2, 2, 19092, 19093, 7, 81, 2, 2, 19093, 19094, 7, 75, 2, 2, 19094, 19095, 7, 80, 2, 2, 19095, 19096, 7, 97, 2, 2, 19096, 19097, 7, 72, 2, 2, 19097, 19098, 7, 75, 2, 2, 19098, 19099, 7, 78, 2, 2, 19099, 19100, 7, 86, 2, 2, 19100, 19101, 7, 71, 2, 2, 19101, 19102, 7, 84, 2, 2, 19102, 2664, 3, 2, 2, 2, 19103, 19104, 7, 83, 2, 2, 19104, 19105, 7, 68, 2, 2, 19105, 19106, 7, 97, 2, 2, 19106, 19107, 7, 80, 2, 2, 19107, 19108, 7, 67, 2, 2, 19108, 19109, 7, 79, 2, 2, 19109, 19110, 7, 71, 2, 2, 19110, 2666, 3, 2, 2, 2, 19111, 19112, 7, 83, 2, 2, 19112, 19113, 7, 87, 2, 2, 19113, 19114, 7, 71, 2, 2, 19114, 19115, 7, 84, 2, 2, 19115, 19116, 7, 91, 2, 2, 19116, 19117, 7, 97, 2, 2, 19117, 19118, 7, 68, 2, 2, 19118, 19119, 7, 78, 2, 2, 19119, 19120, 7, 81, 2, 2, 19120, 19121, 7, 69, 2, 2, 19121, 19122, 7, 77, 2, 2, 19122, 2668, 3, 2, 2, 2, 19123, 19124, 7, 83, 2, 2, 19124, 19125, 7, 87, 2, 2, 19125, 19126, 7, 71, 2, 2, 19126, 19127, 7, 84, 2, 2, 19127, 19128, 7, 91, 2, 2, 19128, 2670, 3, 2, 2, 2, 19129, 19130, 7, 83, 2, 2, 19130, 19131, 7, 87, 2, 2, 19131, 19132, 7, 71, 2, 2, 19132, 19133, 7, 87, 2, 2, 19133, 19134, 7, 71, 2, 2, 19134, 19135, 7, 97, 2, 2, 19135, 19136, 7, 69, 2, 2, 19136, 19137, 7, 87, 2, 2, 19137, 19138, 7, 84, 2, 2, 19138, 19139, 7, 84, 2, 2, 19139, 2672, 3, 2, 2, 2, 19140, 19141, 7, 83, 2, 2, 19141, 19142, 7, 87, 2, 2, 19142, 19143, 7, 71, 2, 2, 19143, 19144, 7, 87, 2, 2, 19144, 19145, 7, 71, 2, 2, 19145, 2674, 3, 2, 2, 2, 19146, 19147, 7, 83, 2, 2, 19147, 19148, 7, 87, 2, 2, 19148, 19149, 7, 71, 2, 2, 19149, 19150, 7, 87, 2, 2, 19150, 19151, 7, 71, 2, 2, 19151, 19152, 7, 97, 2, 2, 19152, 19153, 7, 84, 2, 2, 19153, 19154, 7, 81, 2, 2, 19154, 19155, 7, 89, 2, 2, 19155, 19156, 7, 82, 2, 2, 19156, 2676, 3, 2, 2, 2, 19157, 19158, 7, 83, 2, 2, 19158, 19159, 7, 87, 2, 2, 19159, 19160, 7, 75, 2, 2, 19160, 19161, 7, 71, 2, 2, 19161, 19162, 7, 85, 2, 2, 19162, 19163, 7, 69, 2, 2, 19163, 19164, 7, 71, 2, 2, 19164, 2678, 3, 2, 2, 2, 19165, 19166, 7, 83, 2, 2, 19166, 19167, 7, 87, 2, 2, 19167, 19168, 7, 81, 2, 2, 19168, 19169, 7, 84, 2, 2, 19169, 19170, 7, 87, 2, 2, 19170, 19171, 7, 79, 2, 2, 19171, 2680, 3, 2, 2, 2, 19172, 19173, 7, 83, 2, 2, 19173, 19174, 7, 87, 2, 2, 19174, 19175, 7, 81, 2, 2, 19175, 19176, 7, 86, 2, 2, 19176, 19177, 7, 67, 2, 2, 19177, 2682, 3, 2, 2, 2, 19178, 19179, 7, 84, 2, 2, 19179, 19180, 7, 67, 2, 2, 19180, 19181, 7, 75, 2, 2, 19181, 19182, 7, 85, 2, 2, 19182, 19183, 7, 71, 2, 2, 19183, 2684, 3, 2, 2, 2, 19184, 19185, 7, 84, 2, 2, 19185, 19186, 7, 67, 2, 2, 19186, 19187, 7, 80, 2, 2, 19187, 19188, 7, 70, 2, 2, 19188, 19189, 7, 81, 2, 2, 19189, 19190, 7, 79, 2, 2, 19190, 19191, 7, 97, 2, 2, 19191, 19192, 7, 78, 2, 2, 19192, 19193, 7, 81, 2, 2, 19193, 19194, 7, 69, 2, 2, 19194, 19195, 7, 67, 2, 2, 19195, 19196, 7, 78, 2, 2, 19196, 2686, 3, 2, 2, 2, 19197, 19198, 7, 84, 2, 2, 19198, 19199, 7, 67, 2, 2, 19199, 19200, 7, 80, 2, 2, 19200, 19201, 7, 70, 2, 2, 19201, 19202, 7, 81, 2, 2, 19202, 19203, 7, 79, 2, 2, 19203, 2688, 3, 2, 2, 2, 19204, 19205, 7, 84, 2, 2, 19205, 19206, 7, 67, 2, 2, 19206, 19207, 7, 80, 2, 2, 19207, 19208, 7, 73, 2, 2, 19208, 19209, 7, 71, 2, 2, 19209, 2690, 3, 2, 2, 2, 19210, 19211, 7, 84, 2, 2, 19211, 19212, 7, 67, 2, 2, 19212, 19213, 7, 80, 2, 2, 19213, 19214, 7, 77, 2, 2, 19214, 19215, 7, 79, 2, 2, 19215, 2692, 3, 2, 2, 2, 19216, 19217, 7, 84, 2, 2, 19217, 19218, 7, 67, 2, 2, 19218, 19219, 7, 82, 2, 2, 19219, 19220, 7, 75, 2, 2, 19220, 19221, 7, 70, 2, 2, 19221, 19222, 7, 78, 2, 2, 19222, 19223, 7, 91, 2, 2, 19223, 2694, 3, 2, 2, 2, 19224, 19225, 7, 84, 2, 2, 19225, 19226, 7, 67, 2, 2, 19226, 19227, 7, 89, 2, 2, 19227, 2696, 3, 2, 2, 2, 19228, 19229, 7, 84, 2, 2, 19229, 19230, 7, 67, 2, 2, 19230, 19231, 7, 89, 2, 2, 19231, 19232, 7, 86, 2, 2, 19232, 19233, 7, 81, 2, 2, 19233, 19234, 7, 74, 2, 2, 19234, 19235, 7, 71, 2, 2, 19235, 19236, 7, 90, 2, 2, 19236, 2698, 3, 2, 2, 2, 19237, 19238, 7, 84, 2, 2, 19238, 19239, 7, 67, 2, 2, 19239, 19240, 7, 89, 2, 2, 19240, 19241, 7, 86, 2, 2, 19241, 19242, 7, 81, 2, 2, 19242, 19243, 7, 80, 2, 2, 19243, 19244, 7, 74, 2, 2, 19244, 19245, 7, 71, 2, 2, 19245, 19246, 7, 90, 2, 2, 19246, 2700, 3, 2, 2, 2, 19247, 19248, 7, 84, 2, 2, 19248, 19249, 7, 68, 2, 2, 19249, 19250, 7, 67, 2, 2, 19250, 2702, 3, 2, 2, 2, 19251, 19252, 7, 84, 2, 2, 19252, 19253, 7, 68, 2, 2, 19253, 19254, 7, 81, 2, 2, 19254, 19255, 7, 97, 2, 2, 19255, 19256, 7, 81, 2, 2, 19256, 19257, 7, 87, 2, 2, 19257, 19258, 7, 86, 2, 2, 19258, 19259, 7, 78, 2, 2, 19259, 19260, 7, 75, 2, 2, 19260, 19261, 7, 80, 2, 2, 19261, 19262, 7, 71, 2, 2, 19262, 2704, 3, 2, 2, 2, 19263, 19264, 7, 84, 2, 2, 19264, 19265, 7, 70, 2, 2, 19265, 19266, 7, 68, 2, 2, 19266, 19267, 7, 67, 2, 2, 19267, 2706, 3, 2, 2, 2, 19268, 19269, 7, 84, 2, 2, 19269, 19270, 7, 71, 2, 2, 19270, 19271, 7, 67, 2, 2, 19271, 19272, 7, 70, 2, 2, 19272, 2708, 3, 2, 2, 2, 19273, 19274, 7, 84, 2, 2, 19274, 19275, 7, 71, 2, 2, 19275, 19276, 7, 67, 2, 2, 19276, 19277, 7, 70, 2, 2, 19277, 19278, 7, 85, 2, 2, 19278, 2710, 3, 2, 2, 2, 19279, 19280, 7, 84, 2, 2, 19280, 19281, 7, 71, 2, 2, 19281, 19282, 7, 67, 2, 2, 19282, 19283, 7, 78, 2, 2, 19283, 19284, 7, 79, 2, 2, 19284, 2712, 3, 2, 2, 2, 19285, 19286, 7, 84, 2, 2, 19286, 19287, 7, 71, 2, 2, 19287, 19288, 7, 67, 2, 2, 19288, 19289, 7, 78, 2, 2, 19289, 2714, 3, 2, 2, 2, 19290, 19291, 7, 84, 2, 2, 19291, 19292, 7, 71, 2, 2, 19292, 19293, 7, 68, 2, 2, 19293, 19294, 7, 67, 2, 2, 19294, 19295, 7, 78, 2, 2, 19295, 19296, 7, 67, 2, 2, 19296, 19297, 7, 80, 2, 2, 19297, 19298, 7, 69, 2, 2, 19298, 19299, 7, 71, 2, 2, 19299, 2716, 3, 2, 2, 2, 19300, 19301, 7, 84, 2, 2, 19301, 19302, 7, 71, 2, 2, 19302, 19303, 7, 68, 2, 2, 19303, 19304, 7, 87, 2, 2, 19304, 19305, 7, 75, 2, 2, 19305, 19306, 7, 78, 2, 2, 19306, 19307, 7, 70, 2, 2, 19307, 2718, 3, 2, 2, 2, 19308, 19309, 7, 84, 2, 2, 19309, 19310, 7, 71, 2, 2, 19310, 19311, 7, 69, 2, 2, 19311, 19312, 7, 81, 2, 2, 19312, 19313, 7, 84, 2, 2, 19313, 19314, 7, 70, 2, 2, 19314, 2720, 3, 2, 2, 2, 19315, 19316, 7, 84, 2, 2, 19316, 19317, 7, 71, 2, 2, 19317, 19318, 7, 69, 2, 2, 19318, 19319, 7, 81, 2, 2, 19319, 19320, 7, 84, 2, 2, 19320, 19321, 7, 70, 2, 2, 19321, 19322, 7, 85, 2, 2, 19322, 19323, 7, 97, 2, 2, 19323, 19324, 7, 82, 2, 2, 19324, 19325, 7, 71, 2, 2, 19325, 19326, 7, 84, 2, 2, 19326, 19327, 7, 97, 2, 2, 19327, 19328, 7, 68, 2, 2, 19328, 19329, 7, 78, 2, 2, 19329, 19330, 7, 81, 2, 2, 19330, 19331, 7, 69, 2, 2, 19331, 19332, 7, 77, 2, 2, 19332, 2722, 3, 2, 2, 2, 19333, 19334, 7, 84, 2, 2, 19334, 19335, 7, 71, 2, 2, 19335, 19336, 7, 69, 2, 2, 19336, 19337, 7, 81, 2, 2, 19337, 19338, 7, 88, 2, 2, 19338, 19339, 7, 71, 2, 2, 19339, 19340, 7, 84, 2, 2, 19340, 19341, 7, 67, 2, 2, 19341, 19342, 7, 68, 2, 2, 19342, 19343, 7, 78, 2, 2, 19343, 19344, 7, 71, 2, 2, 19344, 2724, 3, 2, 2, 2, 19345, 19346, 7, 84, 2, 2, 19346, 19347, 7, 71, 2, 2, 19347, 19348, 7, 69, 2, 2, 19348, 19349, 7, 81, 2, 2, 19349, 19350, 7, 88, 2, 2, 19350, 19351, 7, 71, 2, 2, 19351, 19352, 7, 84, 2, 2, 19352, 2726, 3, 2, 2, 2, 19353, 19354, 7, 84, 2, 2, 19354, 19355, 7, 71, 2, 2, 19355, 19356, 7, 69, 2, 2, 19356, 19357, 7, 81, 2, 2, 19357, 19358, 7, 88, 2, 2, 19358, 19359, 7, 71, 2, 2, 19359, 19360, 7, 84, 2, 2, 19360, 19361, 7, 91, 2, 2, 19361, 2728, 3, 2, 2, 2, 19362, 19363, 7, 84, 2, 2, 19363, 19364, 7, 71, 2, 2, 19364, 19365, 7, 69, 2, 2, 19365, 19366, 7, 91, 2, 2, 19366, 19367, 7, 69, 2, 2, 19367, 19368, 7, 78, 2, 2, 19368, 19369, 7, 71, 2, 2, 19369, 19370, 7, 68, 2, 2, 19370, 19371, 7, 75, 2, 2, 19371, 19372, 7, 80, 2, 2, 19372, 2730, 3, 2, 2, 2, 19373, 19374, 7, 84, 2, 2, 19374, 19375, 7, 71, 2, 2, 19375, 19376, 7, 69, 2, 2, 19376, 19377, 7, 91, 2, 2, 19377, 19378, 7, 69, 2, 2, 19378, 19379, 7, 78, 2, 2, 19379, 19380, 7, 71, 2, 2, 19380, 2732, 3, 2, 2, 2, 19381, 19382, 7, 84, 2, 2, 19382, 19383, 7, 71, 2, 2, 19383, 19384, 7, 70, 2, 2, 19384, 19385, 7, 67, 2, 2, 19385, 19386, 7, 69, 2, 2, 19386, 19387, 7, 86, 2, 2, 19387, 19388, 7, 75, 2, 2, 19388, 19389, 7, 81, 2, 2, 19389, 19390, 7, 80, 2, 2, 19390, 2734, 3, 2, 2, 2, 19391, 19392, 7, 84, 2, 2, 19392, 19393, 7, 71, 2, 2, 19393, 19394, 7, 70, 2, 2, 19394, 19395, 7, 71, 2, 2, 19395, 19396, 7, 72, 2, 2, 19396, 19397, 7, 75, 2, 2, 19397, 19398, 7, 80, 2, 2, 19398, 19399, 7, 71, 2, 2, 19399, 2736, 3, 2, 2, 2, 19400, 19401, 7, 84, 2, 2, 19401, 19402, 7, 71, 2, 2, 19402, 19403, 7, 70, 2, 2, 19403, 19404, 7, 81, 2, 2, 19404, 2738, 3, 2, 2, 2, 19405, 19406, 7, 84, 2, 2, 19406, 19407, 7, 71, 2, 2, 19407, 19408, 7, 70, 2, 2, 19408, 19409, 7, 87, 2, 2, 19409, 19410, 7, 69, 2, 2, 19410, 19411, 7, 71, 2, 2, 19411, 19412, 7, 70, 2, 2, 19412, 2740, 3, 2, 2, 2, 19413, 19414, 7, 84, 2, 2, 19414, 19415, 7, 71, 2, 2, 19415, 19416, 7, 70, 2, 2, 19416, 19417, 7, 87, 2, 2, 19417, 19418, 7, 80, 2, 2, 19418, 19419, 7, 70, 2, 2, 19419, 19420, 7, 67, 2, 2, 19420, 19421, 7, 80, 2, 2, 19421, 19422, 7, 69, 2, 2, 19422, 19423, 7, 91, 2, 2, 19423, 2742, 3, 2, 2, 2, 19424, 19425, 7, 84, 2, 2, 19425, 19426, 7, 71, 2, 2, 19426, 19427, 7, 72, 2, 2, 19427, 19428, 7, 97, 2, 2, 19428, 19429, 7, 69, 2, 2, 19429, 19430, 7, 67, 2, 2, 19430, 19431, 7, 85, 2, 2, 19431, 19432, 7, 69, 2, 2, 19432, 19433, 7, 67, 2, 2, 19433, 19434, 7, 70, 2, 2, 19434, 19435, 7, 71, 2, 2, 19435, 19436, 7, 97, 2, 2, 19436, 19437, 7, 69, 2, 2, 19437, 19438, 7, 87, 2, 2, 19438, 19439, 7, 84, 2, 2, 19439, 19440, 7, 85, 2, 2, 19440, 19441, 7, 81, 2, 2, 19441, 19442, 7, 84, 2, 2, 19442, 2744, 3, 2, 2, 2, 19443, 19444, 7, 84, 2, 2, 19444, 19445, 7, 71, 2, 2, 19445, 19446, 7, 72, 2, 2, 19446, 19447, 7, 71, 2, 2, 19447, 19448, 7, 84, 2, 2, 19448, 19449, 7, 71, 2, 2, 19449, 19450, 7, 80, 2, 2, 19450, 19451, 7, 69, 2, 2, 19451, 19452, 7, 71, 2, 2, 19452, 19453, 7, 70, 2, 2, 19453, 2746, 3, 2, 2, 2, 19454, 19455, 7, 84, 2, 2, 19455, 19456, 7, 71, 2, 2, 19456, 19457, 7, 72, 2, 2, 19457, 19458, 7, 71, 2, 2, 19458, 19459, 7, 84, 2, 2, 19459, 19460, 7, 71, 2, 2, 19460, 19461, 7, 80, 2, 2, 19461, 19462, 7, 69, 2, 2, 19462, 19463, 7, 71, 2, 2, 19463, 2748, 3, 2, 2, 2, 19464, 19465, 7, 84, 2, 2, 19465, 19466, 7, 71, 2, 2, 19466, 19467, 7, 72, 2, 2, 19467, 19468, 7, 71, 2, 2, 19468, 19469, 7, 84, 2, 2, 19469, 19470, 7, 71, 2, 2, 19470, 19471, 7, 80, 2, 2, 19471, 19472, 7, 69, 2, 2, 19472, 19473, 7, 71, 2, 2, 19473, 19474, 7, 85, 2, 2, 19474, 2750, 3, 2, 2, 2, 19475, 19476, 7, 84, 2, 2, 19476, 19477, 7, 71, 2, 2, 19477, 19478, 7, 72, 2, 2, 19478, 19479, 7, 71, 2, 2, 19479, 19480, 7, 84, 2, 2, 19480, 19481, 7, 71, 2, 2, 19481, 19482, 7, 80, 2, 2, 19482, 19483, 7, 69, 2, 2, 19483, 19484, 7, 75, 2, 2, 19484, 19485, 7, 80, 2, 2, 19485, 19486, 7, 73, 2, 2, 19486, 2752, 3, 2, 2, 2, 19487, 19488, 7, 84, 2, 2, 19488, 19489, 7, 71, 2, 2, 19489, 19490, 7, 72, 2, 2, 19490, 2754, 3, 2, 2, 2, 19491, 19492, 7, 84, 2, 2, 19492, 19493, 7, 71, 2, 2, 19493, 19494, 7, 72, 2, 2, 19494, 19495, 7, 84, 2, 2, 19495, 19496, 7, 71, 2, 2, 19496, 19497, 7, 85, 2, 2, 19497, 19498, 7, 74, 2, 2, 19498, 2756, 3, 2, 2, 2, 19499, 19500, 7, 84, 2, 2, 19500, 19501, 7, 71, 2, 2, 19501, 19502, 7, 72, 2, 2, 19502, 19503, 7, 86, 2, 2, 19503, 19504, 7, 81, 2, 2, 19504, 19505, 7, 74, 2, 2, 19505, 19506, 7, 71, 2, 2, 19506, 19507, 7, 90, 2, 2, 19507, 2758, 3, 2, 2, 2, 19508, 19509, 7, 84, 2, 2, 19509, 19510, 7, 71, 2, 2, 19510, 19511, 7, 73, 2, 2, 19511, 19512, 7, 71, 2, 2, 19512, 19513, 7, 90, 2, 2, 19513, 19514, 7, 82, 2, 2, 19514, 19515, 7, 97, 2, 2, 19515, 19516, 7, 69, 2, 2, 19516, 19517, 7, 81, 2, 2, 19517, 19518, 7, 87, 2, 2, 19518, 19519, 7, 80, 2, 2, 19519, 19520, 7, 86, 2, 2, 19520, 2760, 3, 2, 2, 2, 19521, 19522, 7, 84, 2, 2, 19522, 19523, 7, 71, 2, 2, 19523, 19524, 7, 73, 2, 2, 19524, 19525, 7, 71, 2, 2, 19525, 19526, 7, 90, 2, 2, 19526, 19527, 7, 82, 2, 2, 19527, 19528, 7, 97, 2, 2, 19528, 19529, 7, 75, 2, 2, 19529, 19530, 7, 80, 2, 2, 19530, 19531, 7, 85, 2, 2, 19531, 19532, 7, 86, 2, 2, 19532, 19533, 7, 84, 2, 2, 19533, 2762, 3, 2, 2, 2, 19534, 19535, 7, 84, 2, 2, 19535, 19536, 7, 71, 2, 2, 19536, 19537, 7, 73, 2, 2, 19537, 19538, 7, 71, 2, 2, 19538, 19539, 7, 90, 2, 2, 19539, 19540, 7, 82, 2, 2, 19540, 19541, 7, 97, 2, 2, 19541, 19542, 7, 78, 2, 2, 19542, 19543, 7, 75, 2, 2, 19543, 19544, 7, 77, 2, 2, 19544, 19545, 7, 71, 2, 2, 19545, 2764, 3, 2, 2, 2, 19546, 19547, 7, 84, 2, 2, 19547, 19548, 7, 71, 2, 2, 19548, 19549, 7, 73, 2, 2, 19549, 19550, 7, 71, 2, 2, 19550, 19551, 7, 90, 2, 2, 19551, 19552, 7, 82, 2, 2, 19552, 19553, 7, 97, 2, 2, 19553, 19554, 7, 84, 2, 2, 19554, 19555, 7, 71, 2, 2, 19555, 19556, 7, 82, 2, 2, 19556, 19557, 7, 78, 2, 2, 19557, 19558, 7, 67, 2, 2, 19558, 19559, 7, 69, 2, 2, 19559, 19560, 7, 71, 2, 2, 19560, 2766, 3, 2, 2, 2, 19561, 19562, 7, 84, 2, 2, 19562, 19563, 7, 71, 2, 2, 19563, 19564, 7, 73, 2, 2, 19564, 19565, 7, 71, 2, 2, 19565, 19566, 7, 90, 2, 2, 19566, 19567, 7, 82, 2, 2, 19567, 19568, 7, 97, 2, 2, 19568, 19569, 7, 85, 2, 2, 19569, 19570, 7, 87, 2, 2, 19570, 19571, 7, 68, 2, 2, 19571, 19572, 7, 85, 2, 2, 19572, 19573, 7, 86, 2, 2, 19573, 19574, 7, 84, 2, 2, 19574, 2768, 3, 2, 2, 2, 19575, 19576, 7, 84, 2, 2, 19576, 19577, 7, 71, 2, 2, 19577, 19578, 7, 73, 2, 2, 19578, 19579, 7, 75, 2, 2, 19579, 19580, 7, 85, 2, 2, 19580, 19581, 7, 86, 2, 2, 19581, 19582, 7, 71, 2, 2, 19582, 19583, 7, 84, 2, 2, 19583, 2770, 3, 2, 2, 2, 19584, 19585, 7, 84, 2, 2, 19585, 19586, 7, 71, 2, 2, 19586, 19587, 7, 73, 2, 2, 19587, 19588, 7, 84, 2, 2, 19588, 19589, 7, 97, 2, 2, 19589, 19590, 7, 67, 2, 2, 19590, 19591, 7, 88, 2, 2, 19591, 19592, 7, 73, 2, 2, 19592, 19593, 7, 90, 2, 2, 19593, 2772, 3, 2, 2, 2, 19594, 19595, 7, 84, 2, 2, 19595, 19596, 7, 71, 2, 2, 19596, 19597, 7, 73, 2, 2, 19597, 19598, 7, 84, 2, 2, 19598, 19599, 7, 97, 2, 2, 19599, 19600, 7, 67, 2, 2, 19600, 19601, 7, 88, 2, 2, 19601, 19602, 7, 73, 2, 2, 19602, 19603, 7, 91, 2, 2, 19603, 2774, 3, 2, 2, 2, 19604, 19605, 7, 84, 2, 2, 19605, 19606, 7, 71, 2, 2, 19606, 19607, 7, 73, 2, 2, 19607, 19608, 7, 84, 2, 2, 19608, 19609, 7, 97, 2, 2, 19609, 19610, 7, 69, 2, 2, 19610, 19611, 7, 81, 2, 2, 19611, 19612, 7, 87, 2, 2, 19612, 19613, 7, 80, 2, 2, 19613, 19614, 7, 86, 2, 2, 19614, 2776, 3, 2, 2, 2, 19615, 19616, 7, 84, 2, 2, 19616, 19617, 7, 71, 2, 2, 19617, 19618, 7, 73, 2, 2, 19618, 19619, 7, 84, 2, 2, 19619, 19620, 7, 97, 2, 2, 19620, 19621, 7, 75, 2, 2, 19621, 19622, 7, 80, 2, 2, 19622, 19623, 7, 86, 2, 2, 19623, 19624, 7, 71, 2, 2, 19624, 19625, 7, 84, 2, 2, 19625, 19626, 7, 69, 2, 2, 19626, 19627, 7, 71, 2, 2, 19627, 19628, 7, 82, 2, 2, 19628, 19629, 7, 86, 2, 2, 19629, 2778, 3, 2, 2, 2, 19630, 19631, 7, 84, 2, 2, 19631, 19632, 7, 71, 2, 2, 19632, 19633, 7, 73, 2, 2, 19633, 19634, 7, 84, 2, 2, 19634, 19635, 7, 97, 2, 2, 19635, 19636, 7, 84, 2, 2, 19636, 19637, 7, 52, 2, 2, 19637, 2780, 3, 2, 2, 2, 19638, 19639, 7, 84, 2, 2, 19639, 19640, 7, 71, 2, 2, 19640, 19641, 7, 73, 2, 2, 19641, 19642, 7, 84, 2, 2, 19642, 19643, 7, 97, 2, 2, 19643, 19644, 7, 85, 2, 2, 19644, 19645, 7, 78, 2, 2, 19645, 19646, 7, 81, 2, 2, 19646, 19647, 7, 82, 2, 2, 19647, 19648, 7, 71, 2, 2, 19648, 2782, 3, 2, 2, 2, 19649, 19650, 7, 84, 2, 2, 19650, 19651, 7, 71, 2, 2, 19651, 19652, 7, 73, 2, 2, 19652, 19653, 7, 84, 2, 2, 19653, 19654, 7, 97, 2, 2, 19654, 19655, 7, 85, 2, 2, 19655, 19656, 7, 90, 2, 2, 19656, 19657, 7, 90, 2, 2, 19657, 2784, 3, 2, 2, 2, 19658, 19659, 7, 84, 2, 2, 19659, 19660, 7, 71, 2, 2, 19660, 19661, 7, 73, 2, 2, 19661, 19662, 7, 84, 2, 2, 19662, 19663, 7, 97, 2, 2, 19663, 19664, 7, 85, 2, 2, 19664, 19665, 7, 90, 2, 2, 19665, 19666, 7, 91, 2, 2, 19666, 2786, 3, 2, 2, 2, 19667, 19668, 7, 84, 2, 2, 19668, 19669, 7, 71, 2, 2, 19669, 19670, 7, 73, 2, 2, 19670, 19671, 7, 84, 2, 2, 19671, 19672, 7, 97, 2, 2, 19672, 19673, 7, 85, 2, 2, 19673, 19674, 7, 91, 2, 2, 19674, 19675, 7, 91, 2, 2, 19675, 2788, 3, 2, 2, 2, 19676, 19677, 7, 84, 2, 2, 19677, 19678, 7, 71, 2, 2, 19678, 19679, 7, 73, 2, 2, 19679, 19680, 7, 87, 2, 2, 19680, 19681, 7, 78, 2, 2, 19681, 19682, 7, 67, 2, 2, 19682, 19683, 7, 84, 2, 2, 19683, 2790, 3, 2, 2, 2, 19684, 19685, 7, 84, 2, 2, 19685, 19686, 7, 71, 2, 2, 19686, 19687, 7, 76, 2, 2, 19687, 19688, 7, 71, 2, 2, 19688, 19689, 7, 69, 2, 2, 19689, 19690, 7, 86, 2, 2, 19690, 2792, 3, 2, 2, 2, 19691, 19692, 7, 84, 2, 2, 19692, 19693, 7, 71, 2, 2, 19693, 19694, 7, 77, 2, 2, 19694, 19695, 7, 71, 2, 2, 19695, 19696, 7, 91, 2, 2, 19696, 2794, 3, 2, 2, 2, 19697, 19698, 7, 84, 2, 2, 19698, 19699, 7, 71, 2, 2, 19699, 19700, 7, 78, 2, 2, 19700, 19701, 7, 67, 2, 2, 19701, 19702, 7, 86, 2, 2, 19702, 19703, 7, 75, 2, 2, 19703, 19704, 7, 81, 2, 2, 19704, 19705, 7, 80, 2, 2, 19705, 19706, 7, 67, 2, 2, 19706, 19707, 7, 78, 2, 2, 19707, 2796, 3, 2, 2, 2, 19708, 19709, 7, 84, 2, 2, 19709, 19710, 7, 71, 2, 2, 19710, 19711, 7, 78, 2, 2, 19711, 19712, 7, 75, 2, 2, 19712, 19713, 7, 71, 2, 2, 19713, 19714, 7, 85, 2, 2, 19714, 19715, 7, 97, 2, 2, 19715, 19716, 7, 81, 2, 2, 19716, 19717, 7, 80, 2, 2, 19717, 2798, 3, 2, 2, 2, 19718, 19719, 7, 84, 2, 2, 19719, 19720, 7, 71, 2, 2, 19720, 19721, 7, 78, 2, 2, 19721, 19722, 7, 81, 2, 2, 19722, 19723, 7, 69, 2, 2, 19723, 19724, 7, 67, 2, 2, 19724, 19725, 7, 86, 2, 2, 19725, 19726, 7, 71, 2, 2, 19726, 2800, 3, 2, 2, 2, 19727, 19728, 7, 84, 2, 2, 19728, 19729, 7, 71, 2, 2, 19729, 19730, 7, 78, 2, 2, 19730, 19731, 7, 91, 2, 2, 19731, 2802, 3, 2, 2, 2, 19732, 19733, 7, 84, 2, 2, 19733, 19734, 7, 71, 2, 2, 19734, 19735, 7, 79, 2, 2, 19735, 19736, 7, 67, 2, 2, 19736, 19737, 7, 75, 2, 2, 19737, 19738, 7, 80, 2, 2, 19738, 19739, 7, 70, 2, 2, 19739, 19740, 7, 71, 2, 2, 19740, 19741, 7, 84, 2, 2, 19741, 2804, 3, 2, 2, 2, 19742, 19743, 7, 84, 2, 2, 19743, 19744, 7, 71, 2, 2, 19744, 19745, 7, 79, 2, 2, 19745, 19746, 7, 81, 2, 2, 19746, 19747, 7, 86, 2, 2, 19747, 19748, 7, 71, 2, 2, 19748, 19749, 7, 97, 2, 2, 19749, 19750, 7, 79, 2, 2, 19750, 19751, 7, 67, 2, 2, 19751, 19752, 7, 82, 2, 2, 19752, 19753, 7, 82, 2, 2, 19753, 19754, 7, 71, 2, 2, 19754, 19755, 7, 70, 2, 2, 19755, 2806, 3, 2, 2, 2, 19756, 19757, 7, 84, 2, 2, 19757, 19758, 7, 71, 2, 2, 19758, 19759, 7, 79, 2, 2, 19759, 19760, 7, 81, 2, 2, 19760, 19761, 7, 88, 2, 2, 19761, 19762, 7, 71, 2, 2, 19762, 2808, 3, 2, 2, 2, 19763, 19764, 7, 84, 2, 2, 19764, 19765, 7, 71, 2, 2, 19765, 19766, 7, 80, 2, 2, 19766, 19767, 7, 67, 2, 2, 19767, 19768, 7, 79, 2, 2, 19768, 19769, 7, 71, 2, 2, 19769, 2810, 3, 2, 2, 2, 19770, 19771, 7, 84, 2, 2, 19771, 19772, 7, 71, 2, 2, 19772, 19773, 7, 82, 2, 2, 19773, 19774, 7, 67, 2, 2, 19774, 19775, 7, 75, 2, 2, 19775, 19776, 7, 84, 2, 2, 19776, 2812, 3, 2, 2, 2, 19777, 19778, 7, 84, 2, 2, 19778, 19779, 7, 71, 2, 2, 19779, 19780, 7, 82, 2, 2, 19780, 19781, 7, 71, 2, 2, 19781, 19782, 7, 67, 2, 2, 19782, 19783, 7, 86, 2, 2, 19783, 2814, 3, 2, 2, 2, 19784, 19785, 7, 84, 2, 2, 19785, 19786, 7, 71, 2, 2, 19786, 19787, 7, 82, 2, 2, 19787, 19788, 7, 78, 2, 2, 19788, 19789, 7, 67, 2, 2, 19789, 19790, 7, 69, 2, 2, 19790, 19791, 7, 71, 2, 2, 19791, 2816, 3, 2, 2, 2, 19792, 19793, 7, 84, 2, 2, 19793, 19794, 7, 71, 2, 2, 19794, 19795, 7, 82, 2, 2, 19795, 19796, 7, 78, 2, 2, 19796, 19797, 7, 75, 2, 2, 19797, 19798, 7, 69, 2, 2, 19798, 19799, 7, 67, 2, 2, 19799, 19800, 7, 86, 2, 2, 19800, 19801, 7, 75, 2, 2, 19801, 19802, 7, 81, 2, 2, 19802, 19803, 7, 80, 2, 2, 19803, 2818, 3, 2, 2, 2, 19804, 19805, 7, 84, 2, 2, 19805, 19806, 7, 71, 2, 2, 19806, 19807, 7, 83, 2, 2, 19807, 19808, 7, 87, 2, 2, 19808, 19809, 7, 75, 2, 2, 19809, 19810, 7, 84, 2, 2, 19810, 19811, 7, 71, 2, 2, 19811, 19812, 7, 70, 2, 2, 19812, 2820, 3, 2, 2, 2, 19813, 19814, 7, 84, 2, 2, 19814, 19815, 7, 71, 2, 2, 19815, 19816, 7, 85, 2, 2, 19816, 19817, 7, 71, 2, 2, 19817, 19818, 7, 86, 2, 2, 19818, 19819, 7, 78, 2, 2, 19819, 19820, 7, 81, 2, 2, 19820, 19821, 7, 73, 2, 2, 19821, 19822, 7, 85, 2, 2, 19822, 2822, 3, 2, 2, 2, 19823, 19824, 7, 84, 2, 2, 19824, 19825, 7, 71, 2, 2, 19825, 19826, 7, 85, 2, 2, 19826, 19827, 7, 71, 2, 2, 19827, 19828, 7, 86, 2, 2, 19828, 2824, 3, 2, 2, 2, 19829, 19830, 7, 84, 2, 2, 19830, 19831, 7, 71, 2, 2, 19831, 19832, 7, 85, 2, 2, 19832, 19833, 7, 75, 2, 2, 19833, 19834, 7, 92, 2, 2, 19834, 19835, 7, 71, 2, 2, 19835, 2826, 3, 2, 2, 2, 19836, 19837, 7, 84, 2, 2, 19837, 19838, 7, 71, 2, 2, 19838, 19839, 7, 85, 2, 2, 19839, 19840, 7, 81, 2, 2, 19840, 19841, 7, 78, 2, 2, 19841, 19842, 7, 88, 2, 2, 19842, 19843, 7, 71, 2, 2, 19843, 2828, 3, 2, 2, 2, 19844, 19845, 7, 84, 2, 2, 19845, 19846, 7, 71, 2, 2, 19846, 19847, 7, 85, 2, 2, 19847, 19848, 7, 81, 2, 2, 19848, 19849, 7, 78, 2, 2, 19849, 19850, 7, 88, 2, 2, 19850, 19851, 7, 71, 2, 2, 19851, 19852, 7, 84, 2, 2, 19852, 2830, 3, 2, 2, 2, 19853, 19854, 7, 84, 2, 2, 19854, 19855, 7, 71, 2, 2, 19855, 19856, 7, 85, 2, 2, 19856, 19857, 7, 81, 2, 2, 19857, 19858, 7, 87, 2, 2, 19858, 19859, 7, 84, 2, 2, 19859, 19860, 7, 69, 2, 2, 19860, 19861, 7, 71, 2, 2, 19861, 2832, 3, 2, 2, 2, 19862, 19863, 7, 84, 2, 2, 19863, 19864, 7, 71, 2, 2, 19864, 19865, 7, 85, 2, 2, 19865, 19866, 7, 82, 2, 2, 19866, 19867, 7, 71, 2, 2, 19867, 19868, 7, 69, 2, 2, 19868, 19869, 7, 86, 2, 2, 19869, 2834, 3, 2, 2, 2, 19870, 19871, 7, 84, 2, 2, 19871, 19872, 7, 71, 2, 2, 19872, 19873, 7, 85, 2, 2, 19873, 19874, 7, 86, 2, 2, 19874, 19875, 7, 67, 2, 2, 19875, 19876, 7, 84, 2, 2, 19876, 19877, 7, 86, 2, 2, 19877, 2836, 3, 2, 2, 2, 19878, 19879, 7, 84, 2, 2, 19879, 19880, 7, 71, 2, 2, 19880, 19881, 7, 85, 2, 2, 19881, 19882, 7, 86, 2, 2, 19882, 19883, 7, 81, 2, 2, 19883, 19884, 7, 84, 2, 2, 19884, 19885, 7, 71, 2, 2, 19885, 19886, 7, 97, 2, 2, 19886, 19887, 7, 67, 2, 2, 19887, 19888, 7, 85, 2, 2, 19888, 19889, 7, 97, 2, 2, 19889, 19890, 7, 75, 2, 2, 19890, 19891, 7, 80, 2, 2, 19891, 19892, 7, 86, 2, 2, 19892, 19893, 7, 71, 2, 2, 19893, 19894, 7, 84, 2, 2, 19894, 19895, 7, 88, 2, 2, 19895, 19896, 7, 67, 2, 2, 19896, 19897, 7, 78, 2, 2, 19897, 19898, 7, 85, 2, 2, 19898, 2838, 3, 2, 2, 2, 19899, 19900, 7, 84, 2, 2, 19900, 19901, 7, 71, 2, 2, 19901, 19902, 7, 85, 2, 2, 19902, 19903, 7, 86, 2, 2, 19903, 19904, 7, 81, 2, 2, 19904, 19905, 7, 84, 2, 2, 19905, 19906, 7, 71, 2, 2, 19906, 2840, 3, 2, 2, 2, 19907, 19908, 7, 84, 2, 2, 19908, 19909, 7, 71, 2, 2, 19909, 19910, 7, 85, 2, 2, 19910, 19911, 7, 86, 2, 2, 19911, 19912, 7, 84, 2, 2, 19912, 19913, 7, 75, 2, 2, 19913, 19914, 7, 69, 2, 2, 19914, 19915, 7, 86, 2, 2, 19915, 19916, 7, 97, 2, 2, 19916, 19917, 7, 67, 2, 2, 19917, 19918, 7, 78, 2, 2, 19918, 19919, 7, 78, 2, 2, 19919, 19920, 7, 97, 2, 2, 19920, 19921, 7, 84, 2, 2, 19921, 19922, 7, 71, 2, 2, 19922, 19923, 7, 72, 2, 2, 19923, 19924, 7, 97, 2, 2, 19924, 19925, 7, 69, 2, 2, 19925, 19926, 7, 81, 2, 2, 19926, 19927, 7, 80, 2, 2, 19927, 19928, 7, 85, 2, 2, 19928, 2842, 3, 2, 2, 2, 19929, 19930, 7, 84, 2, 2, 19930, 19931, 7, 71, 2, 2, 19931, 19932, 7, 85, 2, 2, 19932, 19933, 7, 86, 2, 2, 19933, 19934, 7, 84, 2, 2, 19934, 19935, 7, 75, 2, 2, 19935, 19936, 7, 69, 2, 2, 19936, 19937, 7, 86, 2, 2, 19937, 19938, 7, 71, 2, 2, 19938, 19939, 7, 70, 2, 2, 19939, 2844, 3, 2, 2, 2, 19940, 19941, 7, 84, 2, 2, 19941, 19942, 7, 71, 2, 2, 19942, 19943, 7, 85, 2, 2, 19943, 19944, 7, 86, 2, 2, 19944, 19945, 7, 84, 2, 2, 19945, 19946, 7, 75, 2, 2, 19946, 19947, 7, 69, 2, 2, 19947, 19948, 7, 86, 2, 2, 19948, 19949, 7, 97, 2, 2, 19949, 19950, 7, 84, 2, 2, 19950, 19951, 7, 71, 2, 2, 19951, 19952, 7, 72, 2, 2, 19952, 19953, 7, 71, 2, 2, 19953, 19954, 7, 84, 2, 2, 19954, 19955, 7, 71, 2, 2, 19955, 19956, 7, 80, 2, 2, 19956, 19957, 7, 69, 2, 2, 19957, 19958, 7, 71, 2, 2, 19958, 19959, 7, 85, 2, 2, 19959, 2846, 3, 2, 2, 2, 19960, 19961, 7, 84, 2, 2, 19961, 19962, 7, 71, 2, 2, 19962, 19963, 7, 85, 2, 2, 19963, 19964, 7, 86, 2, 2, 19964, 19965, 7, 84, 2, 2, 19965, 19966, 7, 75, 2, 2, 19966, 19967, 7, 69, 2, 2, 19967, 19968, 7, 86, 2, 2, 19968, 2848, 3, 2, 2, 2, 19969, 19970, 7, 84, 2, 2, 19970, 19971, 7, 71, 2, 2, 19971, 19972, 7, 85, 2, 2, 19972, 19973, 7, 87, 2, 2, 19973, 19974, 7, 78, 2, 2, 19974, 19975, 7, 86, 2, 2, 19975, 19976, 7, 97, 2, 2, 19976, 19977, 7, 69, 2, 2, 19977, 19978, 7, 67, 2, 2, 19978, 19979, 7, 69, 2, 2, 19979, 19980, 7, 74, 2, 2, 19980, 19981, 7, 71, 2, 2, 19981, 2850, 3, 2, 2, 2, 19982, 19983, 7, 84, 2, 2, 19983, 19984, 7, 71, 2, 2, 19984, 19985, 7, 85, 2, 2, 19985, 19986, 7, 87, 2, 2, 19986, 19987, 7, 78, 2, 2, 19987, 19988, 7, 86, 2, 2, 19988, 2852, 3, 2, 2, 2, 19989, 19990, 7, 84, 2, 2, 19990, 19991, 7, 71, 2, 2, 19991, 19992, 7, 85, 2, 2, 19992, 19993, 7, 87, 2, 2, 19993, 19994, 7, 79, 2, 2, 19994, 19995, 7, 67, 2, 2, 19995, 19996, 7, 68, 2, 2, 19996, 19997, 7, 78, 2, 2, 19997, 19998, 7, 71, 2, 2, 19998, 2854, 3, 2, 2, 2, 19999, 20000, 7, 84, 2, 2, 20000, 20001, 7, 71, 2, 2, 20001, 20002, 7, 85, 2, 2, 20002, 20003, 7, 87, 2, 2, 20003, 20004, 7, 79, 2, 2, 20004, 20005, 7, 71, 2, 2, 20005, 2856, 3, 2, 2, 2, 20006, 20007, 7, 84, 2, 2, 20007, 20008, 7, 71, 2, 2, 20008, 20009, 7, 86, 2, 2, 20009, 20010, 7, 71, 2, 2, 20010, 20011, 7, 80, 2, 2, 20011, 20012, 7, 86, 2, 2, 20012, 20013, 7, 75, 2, 2, 20013, 20014, 7, 81, 2, 2, 20014, 20015, 7, 80, 2, 2, 20015, 2858, 3, 2, 2, 2, 20016, 20017, 7, 84, 2, 2, 20017, 20018, 7, 71, 2, 2, 20018, 20019, 7, 86, 2, 2, 20019, 20020, 7, 84, 2, 2, 20020, 20021, 7, 91, 2, 2, 20021, 20022, 7, 97, 2, 2, 20022, 20023, 7, 81, 2, 2, 20023, 20024, 7, 80, 2, 2, 20024, 20025, 7, 97, 2, 2, 20025, 20026, 7, 84, 2, 2, 20026, 20027, 7, 81, 2, 2, 20027, 20028, 7, 89, 2, 2, 20028, 20029, 7, 97, 2, 2, 20029, 20030, 7, 69, 2, 2, 20030, 20031, 7, 74, 2, 2, 20031, 20032, 7, 67, 2, 2, 20032, 20033, 7, 80, 2, 2, 20033, 20034, 7, 73, 2, 2, 20034, 20035, 7, 71, 2, 2, 20035, 2860, 3, 2, 2, 2, 20036, 20037, 7, 84, 2, 2, 20037, 20038, 7, 71, 2, 2, 20038, 20039, 7, 86, 2, 2, 20039, 20040, 7, 87, 2, 2, 20040, 20041, 7, 84, 2, 2, 20041, 20042, 7, 80, 2, 2, 20042, 20043, 7, 75, 2, 2, 20043, 20044, 7, 80, 2, 2, 20044, 20045, 7, 73, 2, 2, 20045, 2862, 3, 2, 2, 2, 20046, 20047, 7, 84, 2, 2, 20047, 20048, 7, 71, 2, 2, 20048, 20049, 7, 86, 2, 2, 20049, 20050, 7, 87, 2, 2, 20050, 20051, 7, 84, 2, 2, 20051, 20052, 7, 80, 2, 2, 20052, 2864, 3, 2, 2, 2, 20053, 20054, 7, 84, 2, 2, 20054, 20055, 7, 71, 2, 2, 20055, 20056, 7, 87, 2, 2, 20056, 20057, 7, 85, 2, 2, 20057, 20058, 7, 71, 2, 2, 20058, 2866, 3, 2, 2, 2, 20059, 20060, 7, 84, 2, 2, 20060, 20061, 7, 71, 2, 2, 20061, 20062, 7, 88, 2, 2, 20062, 20063, 7, 71, 2, 2, 20063, 20064, 7, 84, 2, 2, 20064, 20065, 7, 85, 2, 2, 20065, 20066, 7, 71, 2, 2, 20066, 2868, 3, 2, 2, 2, 20067, 20068, 7, 84, 2, 2, 20068, 20069, 7, 71, 2, 2, 20069, 20070, 7, 88, 2, 2, 20070, 20071, 7, 81, 2, 2, 20071, 20072, 7, 77, 2, 2, 20072, 20073, 7, 71, 2, 2, 20073, 2870, 3, 2, 2, 2, 20074, 20075, 7, 84, 2, 2, 20075, 20076, 7, 71, 2, 2, 20076, 20077, 7, 89, 2, 2, 20077, 20078, 7, 84, 2, 2, 20078, 20079, 7, 75, 2, 2, 20079, 20080, 7, 86, 2, 2, 20080, 20081, 7, 71, 2, 2, 20081, 20082, 7, 97, 2, 2, 20082, 20083, 7, 81, 2, 2, 20083, 20084, 7, 84, 2, 2, 20084, 20085, 7, 97, 2, 2, 20085, 20086, 7, 71, 2, 2, 20086, 20087, 7, 84, 2, 2, 20087, 20088, 7, 84, 2, 2, 20088, 20089, 7, 81, 2, 2, 20089, 20090, 7, 84, 2, 2, 20090, 2872, 3, 2, 2, 2, 20091, 20092, 7, 84, 2, 2, 20092, 20093, 7, 71, 2, 2, 20093, 20094, 7, 89, 2, 2, 20094, 20095, 7, 84, 2, 2, 20095, 20096, 7, 75, 2, 2, 20096, 20097, 7, 86, 2, 2, 20097, 20098, 7, 71, 2, 2, 20098, 2874, 3, 2, 2, 2, 20099, 20100, 7, 84, 2, 2, 20100, 20101, 7, 75, 2, 2, 20101, 20102, 7, 73, 2, 2, 20102, 20103, 7, 74, 2, 2, 20103, 20104, 7, 86, 2, 2, 20104, 2876, 3, 2, 2, 2, 20105, 20106, 7, 84, 2, 2, 20106, 20107, 7, 81, 2, 2, 20107, 20108, 7, 78, 2, 2, 20108, 20109, 7, 71, 2, 2, 20109, 2878, 3, 2, 2, 2, 20110, 20111, 7, 84, 2, 2, 20111, 20112, 7, 81, 2, 2, 20112, 20113, 7, 78, 2, 2, 20113, 20114, 7, 71, 2, 2, 20114, 20115, 7, 85, 2, 2, 20115, 20116, 7, 71, 2, 2, 20116, 20117, 7, 86, 2, 2, 20117, 2880, 3, 2, 2, 2, 20118, 20119, 7, 84, 2, 2, 20119, 20120, 7, 81, 2, 2, 20120, 20121, 7, 78, 2, 2, 20121, 20122, 7, 71, 2, 2, 20122, 20123, 7, 85, 2, 2, 20123, 2882, 3, 2, 2, 2, 20124, 20125, 7, 84, 2, 2, 20125, 20126, 7, 81, 2, 2, 20126, 20127, 7, 78, 2, 2, 20127, 20128, 7, 78, 2, 2, 20128, 20129, 7, 68, 2, 2, 20129, 20130, 7, 67, 2, 2, 20130, 20131, 7, 69, 2, 2, 20131, 20132, 7, 77, 2, 2, 20132, 2884, 3, 2, 2, 2, 20133, 20134, 7, 84, 2, 2, 20134, 20135, 7, 81, 2, 2, 20135, 20136, 7, 78, 2, 2, 20136, 20137, 7, 78, 2, 2, 20137, 20138, 7, 75, 2, 2, 20138, 20139, 7, 80, 2, 2, 20139, 20140, 7, 73, 2, 2, 20140, 2886, 3, 2, 2, 2, 20141, 20142, 7, 84, 2, 2, 20142, 20143, 7, 81, 2, 2, 20143, 20144, 7, 78, 2, 2, 20144, 20145, 7, 78, 2, 2, 20145, 20146, 7, 87, 2, 2, 20146, 20147, 7, 82, 2, 2, 20147, 2888, 3, 2, 2, 2, 20148, 20149, 7, 84, 2, 2, 20149, 20150, 7, 81, 2, 2, 20150, 20151, 7, 89, 2, 2, 20151, 20152, 7, 70, 2, 2, 20152, 20153, 7, 71, 2, 2, 20153, 20154, 7, 82, 2, 2, 20154, 20155, 7, 71, 2, 2, 20155, 20156, 7, 80, 2, 2, 20156, 20157, 7, 70, 2, 2, 20157, 20158, 7, 71, 2, 2, 20158, 20159, 7, 80, 2, 2, 20159, 20160, 7, 69, 2, 2, 20160, 20161, 7, 75, 2, 2, 20161, 20162, 7, 71, 2, 2, 20162, 20163, 7, 85, 2, 2, 20163, 2890, 3, 2, 2, 2, 20164, 20165, 7, 84, 2, 2, 20165, 20166, 7, 81, 2, 2, 20166, 20167, 7, 89, 2, 2, 20167, 20168, 7, 75, 2, 2, 20168, 20169, 7, 70, 2, 2, 20169, 20170, 7, 97, 2, 2, 20170, 20171, 7, 79, 2, 2, 20171, 20172, 7, 67, 2, 2, 20172, 20173, 7, 82, 2, 2, 20173, 20174, 7, 82, 2, 2, 20174, 20175, 7, 75, 2, 2, 20175, 20176, 7, 80, 2, 2, 20176, 20177, 7, 73, 2, 2, 20177, 20178, 7, 97, 2, 2, 20178, 20179, 7, 86, 2, 2, 20179, 20180, 7, 67, 2, 2, 20180, 20181, 7, 68, 2, 2, 20181, 20182, 7, 78, 2, 2, 20182, 20183, 7, 71, 2, 2, 20183, 2892, 3, 2, 2, 2, 20184, 20185, 7, 84, 2, 2, 20185, 20186, 7, 81, 2, 2, 20186, 20187, 7, 89, 2, 2, 20187, 20188, 7, 75, 2, 2, 20188, 20189, 7, 70, 2, 2, 20189, 2894, 3, 2, 2, 2, 20190, 20191, 7, 84, 2, 2, 20191, 20192, 7, 81, 2, 2, 20192, 20193, 7, 89, 2, 2, 20193, 20194, 7, 75, 2, 2, 20194, 20195, 7, 70, 2, 2, 20195, 20196, 7, 86, 2, 2, 20196, 20197, 7, 81, 2, 2, 20197, 20198, 7, 69, 2, 2, 20198, 20199, 7, 74, 2, 2, 20199, 20200, 7, 67, 2, 2, 20200, 20201, 7, 84, 2, 2, 20201, 2896, 3, 2, 2, 2, 20202, 20203, 7, 84, 2, 2, 20203, 20204, 7, 81, 2, 2, 20204, 20205, 7, 89, 2, 2, 20205, 20206, 7, 75, 2, 2, 20206, 20207, 7, 70, 2, 2, 20207, 20208, 7, 86, 2, 2, 20208, 20209, 7, 81, 2, 2, 20209, 20210, 7, 80, 2, 2, 20210, 20211, 7, 69, 2, 2, 20211, 20212, 7, 74, 2, 2, 20212, 20213, 7, 67, 2, 2, 20213, 20214, 7, 84, 2, 2, 20214, 2898, 3, 2, 2, 2, 20215, 20216, 7, 84, 2, 2, 20216, 20217, 7, 81, 2, 2, 20217, 20218, 7, 89, 2, 2, 20218, 20219, 7, 97, 2, 2, 20219, 20220, 7, 78, 2, 2, 20220, 20221, 7, 71, 2, 2, 20221, 20222, 7, 80, 2, 2, 20222, 20223, 7, 73, 2, 2, 20223, 20224, 7, 86, 2, 2, 20224, 20225, 7, 74, 2, 2, 20225, 2900, 3, 2, 2, 2, 20226, 20227, 7, 84, 2, 2, 20227, 20228, 7, 81, 2, 2, 20228, 20229, 7, 89, 2, 2, 20229, 20230, 7, 80, 2, 2, 20230, 20231, 7, 87, 2, 2, 20231, 20232, 7, 79, 2, 2, 20232, 2902, 3, 2, 2, 2, 20233, 20234, 7, 84, 2, 2, 20234, 20235, 7, 81, 2, 2, 20235, 20236, 7, 89, 2, 2, 20236, 2904, 3, 2, 2, 2, 20237, 20238, 7, 84, 2, 2, 20238, 20239, 7, 81, 2, 2, 20239, 20240, 7, 89, 2, 2, 20240, 20241, 7, 85, 2, 2, 20241, 2906, 3, 2, 2, 2, 20242, 20243, 7, 84, 2, 2, 20243, 20244, 7, 82, 2, 2, 20244, 20245, 7, 67, 2, 2, 20245, 20246, 7, 70, 2, 2, 20246, 2908, 3, 2, 2, 2, 20247, 20248, 7, 84, 2, 2, 20248, 20249, 7, 86, 2, 2, 20249, 20250, 7, 84, 2, 2, 20250, 20251, 7, 75, 2, 2, 20251, 20252, 7, 79, 2, 2, 20252, 2910, 3, 2, 2, 2, 20253, 20254, 7, 84, 2, 2, 20254, 20255, 7, 87, 2, 2, 20255, 20256, 7, 78, 2, 2, 20256, 20257, 7, 71, 2, 2, 20257, 2912, 3, 2, 2, 2, 20258, 20259, 7, 84, 2, 2, 20259, 20260, 7, 87, 2, 2, 20260, 20261, 7, 78, 2, 2, 20261, 20262, 7, 71, 2, 2, 20262, 20263, 7, 85, 2, 2, 20263, 2914, 3, 2, 2, 2, 20264, 20265, 7, 84, 2, 2, 20265, 20266, 7, 87, 2, 2, 20266, 20267, 7, 80, 2, 2, 20267, 20268, 7, 80, 2, 2, 20268, 20269, 7, 75, 2, 2, 20269, 20270, 7, 80, 2, 2, 20270, 20271, 7, 73, 2, 2, 20271, 2916, 3, 2, 2, 2, 20272, 20273, 7, 85, 2, 2, 20273, 20274, 7, 67, 2, 2, 20274, 20275, 7, 78, 2, 2, 20275, 20276, 7, 86, 2, 2, 20276, 2918, 3, 2, 2, 2, 20277, 20278, 7, 85, 2, 2, 20278, 20279, 7, 67, 2, 2, 20279, 20280, 7, 79, 2, 2, 20280, 20281, 7, 82, 2, 2, 20281, 20282, 7, 78, 2, 2, 20282, 20283, 7, 71, 2, 2, 20283, 2920, 3, 2, 2, 2, 20284, 20285, 7, 85, 2, 2, 20285, 20286, 7, 67, 2, 2, 20286, 20287, 7, 88, 2, 2, 20287, 20288, 7, 71, 2, 2, 20288, 20289, 7, 97, 2, 2, 20289, 20290, 7, 67, 2, 2, 20290, 20291, 7, 85, 2, 2, 20291, 20292, 7, 97, 2, 2, 20292, 20293, 7, 75, 2, 2, 20293, 20294, 7, 80, 2, 2, 20294, 20295, 7, 86, 2, 2, 20295, 20296, 7, 71, 2, 2, 20296, 20297, 7, 84, 2, 2, 20297, 20298, 7, 88, 2, 2, 20298, 20299, 7, 67, 2, 2, 20299, 20300, 7, 78, 2, 2, 20300, 20301, 7, 85, 2, 2, 20301, 2922, 3, 2, 2, 2, 20302, 20303, 7, 85, 2, 2, 20303, 20304, 7, 67, 2, 2, 20304, 20305, 7, 88, 2, 2, 20305, 20306, 7, 71, 2, 2, 20306, 20307, 7, 82, 2, 2, 20307, 20308, 7, 81, 2, 2, 20308, 20309, 7, 75, 2, 2, 20309, 20310, 7, 80, 2, 2, 20310, 20311, 7, 86, 2, 2, 20311, 2924, 3, 2, 2, 2, 20312, 20313, 7, 85, 2, 2, 20313, 20314, 7, 67, 2, 2, 20314, 20315, 7, 88, 2, 2, 20315, 20316, 7, 71, 2, 2, 20316, 2926, 3, 2, 2, 2, 20317, 20318, 7, 85, 2, 2, 20318, 20319, 7, 68, 2, 2, 20319, 20320, 7, 54, 2, 2, 20320, 2928, 3, 2, 2, 2, 20321, 20322, 7, 85, 2, 2, 20322, 20323, 7, 69, 2, 2, 20323, 20324, 7, 67, 2, 2, 20324, 20325, 7, 78, 2, 2, 20325, 20326, 7, 71, 2, 2, 20326, 20327, 7, 97, 2, 2, 20327, 20328, 7, 84, 2, 2, 20328, 20329, 7, 81, 2, 2, 20329, 20330, 7, 89, 2, 2, 20330, 20331, 7, 85, 2, 2, 20331, 2930, 3, 2, 2, 2, 20332, 20333, 7, 85, 2, 2, 20333, 20334, 7, 69, 2, 2, 20334, 20335, 7, 67, 2, 2, 20335, 20336, 7, 78, 2, 2, 20336, 20337, 7, 71, 2, 2, 20337, 2932, 3, 2, 2, 2, 20338, 20339, 7, 85, 2, 2, 20339, 20340, 7, 69, 2, 2, 20340, 20341, 7, 67, 2, 2, 20341, 20342, 7, 80, 2, 2, 20342, 20343, 7, 97, 2, 2, 20343, 20344, 7, 75, 2, 2, 20344, 20345, 7, 80, 2, 2, 20345, 20346, 7, 85, 2, 2, 20346, 20347, 7, 86, 2, 2, 20347, 20348, 7, 67, 2, 2, 20348, 20349, 7, 80, 2, 2, 20349, 20350, 7, 69, 2, 2, 20350, 20351, 7, 71, 2, 2, 20351, 20352, 7, 85, 2, 2, 20352, 2934, 3, 2, 2, 2, 20353, 20354, 7, 85, 2, 2, 20354, 20355, 7, 69, 2, 2, 20355, 20356, 7, 67, 2, 2, 20356, 20357, 7, 80, 2, 2, 20357, 2936, 3, 2, 2, 2, 20358, 20359, 7, 85, 2, 2, 20359, 20360, 7, 69, 2, 2, 20360, 20361, 7, 74, 2, 2, 20361, 20362, 7, 71, 2, 2, 20362, 20363, 7, 70, 2, 2, 20363, 20364, 7, 87, 2, 2, 20364, 20365, 7, 78, 2, 2, 20365, 20366, 7, 71, 2, 2, 20366, 20367, 7, 84, 2, 2, 20367, 2938, 3, 2, 2, 2, 20368, 20369, 7, 85, 2, 2, 20369, 20370, 7, 69, 2, 2, 20370, 20371, 7, 74, 2, 2, 20371, 20372, 7, 71, 2, 2, 20372, 20373, 7, 79, 2, 2, 20373, 20374, 7, 67, 2, 2, 20374, 20375, 7, 69, 2, 2, 20375, 20376, 7, 74, 2, 2, 20376, 20377, 7, 71, 2, 2, 20377, 20378, 7, 69, 2, 2, 20378, 20379, 7, 77, 2, 2, 20379, 2940, 3, 2, 2, 2, 20380, 20381, 7, 85, 2, 2, 20381, 20382, 7, 69, 2, 2, 20382, 20383, 7, 74, 2, 2, 20383, 20384, 7, 71, 2, 2, 20384, 20385, 7, 79, 2, 2, 20385, 20386, 7, 67, 2, 2, 20386, 2942, 3, 2, 2, 2, 20387, 20388, 7, 85, 2, 2, 20388, 20389, 7, 69, 2, 2, 20389, 20390, 7, 80, 2, 2, 20390, 20391, 7, 97, 2, 2, 20391, 20392, 7, 67, 2, 2, 20392, 20393, 7, 85, 2, 2, 20393, 20394, 7, 69, 2, 2, 20394, 20395, 7, 71, 2, 2, 20395, 20396, 7, 80, 2, 2, 20396, 20397, 7, 70, 2, 2, 20397, 20398, 7, 75, 2, 2, 20398, 20399, 7, 80, 2, 2, 20399, 20400, 7, 73, 2, 2, 20400, 2944, 3, 2, 2, 2, 20401, 20402, 7, 85, 2, 2, 20402, 20403, 7, 69, 2, 2, 20403, 20404, 7, 80, 2, 2, 20404, 2946, 3, 2, 2, 2, 20405, 20406, 7, 85, 2, 2, 20406, 20407, 7, 69, 2, 2, 20407, 20408, 7, 81, 2, 2, 20408, 20409, 7, 82, 2, 2, 20409, 20410, 7, 71, 2, 2, 20410, 2948, 3, 2, 2, 2, 20411, 20412, 7, 85, 2, 2, 20412, 20413, 7, 69, 2, 2, 20413, 20414, 7, 84, 2, 2, 20414, 20415, 7, 87, 2, 2, 20415, 20416, 7, 68, 2, 2, 20416, 2950, 3, 2, 2, 2, 20417, 20418, 7, 85, 2, 2, 20418, 20419, 7, 70, 2, 2, 20419, 20420, 7, 97, 2, 2, 20420, 20421, 7, 67, 2, 2, 20421, 20422, 7, 78, 2, 2, 20422, 20423, 7, 78, 2, 2, 20423, 2952, 3, 2, 2, 2, 20424, 20425, 7, 85, 2, 2, 20425, 20426, 7, 70, 2, 2, 20426, 20427, 7, 97, 2, 2, 20427, 20428, 7, 75, 2, 2, 20428, 20429, 7, 80, 2, 2, 20429, 20430, 7, 74, 2, 2, 20430, 20431, 7, 75, 2, 2, 20431, 20432, 7, 68, 2, 2, 20432, 20433, 7, 75, 2, 2, 20433, 20434, 7, 86, 2, 2, 20434, 2954, 3, 2, 2, 2, 20435, 20436, 7, 85, 2, 2, 20436, 20437, 7, 70, 2, 2, 20437, 20438, 7, 81, 2, 2, 20438, 20439, 7, 97, 2, 2, 20439, 20440, 7, 73, 2, 2, 20440, 20441, 7, 71, 2, 2, 20441, 20442, 7, 81, 2, 2, 20442, 20443, 7, 79, 2, 2, 20443, 20444, 7, 97, 2, 2, 20444, 20445, 7, 79, 2, 2, 20445, 20446, 7, 68, 2, 2, 20446, 20447, 7, 84, 2, 2, 20447, 2956, 3, 2, 2, 2, 20448, 20449, 7, 85, 2, 2, 20449, 20450, 7, 70, 2, 2, 20450, 20451, 7, 97, 2, 2, 20451, 20452, 7, 85, 2, 2, 20452, 20453, 7, 74, 2, 2, 20453, 20454, 7, 81, 2, 2, 20454, 20455, 7, 89, 2, 2, 20455, 2958, 3, 2, 2, 2, 20456, 20457, 7, 85, 2, 2, 20457, 20458, 7, 71, 2, 2, 20458, 20459, 7, 67, 2, 2, 20459, 20460, 7, 84, 2, 2, 20460, 20461, 7, 69, 2, 2, 20461, 20462, 7, 74, 2, 2, 20462, 2960, 3, 2, 2, 2, 20463, 20464, 7, 85, 2, 2, 20464, 20465, 7, 71, 2, 2, 20465, 20466, 7, 69, 2, 2, 20466, 20467, 7, 81, 2, 2, 20467, 20468, 7, 80, 2, 2, 20468, 20469, 7, 70, 2, 2, 20469, 2962, 3, 2, 2, 2, 20470, 20471, 7, 85, 2, 2, 20471, 20472, 7, 71, 2, 2, 20472, 20473, 7, 69, 2, 2, 20473, 20474, 7, 84, 2, 2, 20474, 20475, 7, 71, 2, 2, 20475, 20476, 7, 86, 2, 2, 20476, 2964, 3, 2, 2, 2, 20477, 20478, 7, 85, 2, 2, 20478, 20479, 7, 71, 2, 2, 20479, 20480, 7, 69, 2, 2, 20480, 20481, 7, 87, 2, 2, 20481, 20482, 7, 84, 2, 2, 20482, 20483, 7, 71, 2, 2, 20483, 20484, 7, 72, 2, 2, 20484, 20485, 7, 75, 2, 2, 20485, 20486, 7, 78, 2, 2, 20486, 20487, 7, 71, 2, 2, 20487, 20488, 7, 97, 2, 2, 20488, 20489, 7, 70, 2, 2, 20489, 20490, 7, 68, 2, 2, 20490, 20491, 7, 67, 2, 2, 20491, 2966, 3, 2, 2, 2, 20492, 20493, 7, 85, 2, 2, 20493, 20494, 7, 71, 2, 2, 20494, 20495, 7, 69, 2, 2, 20495, 20496, 7, 87, 2, 2, 20496, 20497, 7, 84, 2, 2, 20497, 20498, 7, 71, 2, 2, 20498, 20499, 7, 72, 2, 2, 20499, 20500, 7, 75, 2, 2, 20500, 20501, 7, 78, 2, 2, 20501, 20502, 7, 71, 2, 2, 20502, 2968, 3, 2, 2, 2, 20503, 20504, 7, 85, 2, 2, 20504, 20505, 7, 71, 2, 2, 20505, 20506, 7, 69, 2, 2, 20506, 20507, 7, 87, 2, 2, 20507, 20508, 7, 84, 2, 2, 20508, 20509, 7, 75, 2, 2, 20509, 20510, 7, 86, 2, 2, 20510, 20511, 7, 91, 2, 2, 20511, 2970, 3, 2, 2, 2, 20512, 20513, 7, 85, 2, 2, 20513, 20514, 7, 71, 2, 2, 20514, 20515, 7, 71, 2, 2, 20515, 20516, 7, 70, 2, 2, 20516, 2972, 3, 2, 2, 2, 20517, 20518, 7, 85, 2, 2, 20518, 20519, 7, 71, 2, 2, 20519, 20520, 7, 73, 2, 2, 20520, 20521, 7, 97, 2, 2, 20521, 20522, 7, 68, 2, 2, 20522, 20523, 7, 78, 2, 2, 20523, 20524, 7, 81, 2, 2, 20524, 20525, 7, 69, 2, 2, 20525, 20526, 7, 77, 2, 2, 20526, 2974, 3, 2, 2, 2, 20527, 20528, 7, 85, 2, 2, 20528, 20529, 7, 71, 2, 2, 20529, 20530, 7, 73, 2, 2, 20530, 20531, 7, 97, 2, 2, 20531, 20532, 7, 72, 2, 2, 20532, 20533, 7, 75, 2, 2, 20533, 20534, 7, 78, 2, 2, 20534, 20535, 7, 71, 2, 2, 20535, 2976, 3, 2, 2, 2, 20536, 20537, 7, 85, 2, 2, 20537, 20538, 7, 71, 2, 2, 20538, 20539, 7, 73, 2, 2, 20539, 20540, 7, 79, 2, 2, 20540, 20541, 7, 71, 2, 2, 20541, 20542, 7, 80, 2, 2, 20542, 20543, 7, 86, 2, 2, 20543, 2978, 3, 2, 2, 2, 20544, 20545, 7, 85, 2, 2, 20545, 20546, 7, 71, 2, 2, 20546, 20547, 7, 78, 2, 2, 20547, 20548, 7, 71, 2, 2, 20548, 20549, 7, 69, 2, 2, 20549, 20550, 7, 86, 2, 2, 20550, 20551, 7, 75, 2, 2, 20551, 20552, 7, 88, 2, 2, 20552, 20553, 7, 75, 2, 2, 20553, 20554, 7, 86, 2, 2, 20554, 20555, 7, 91, 2, 2, 20555, 2980, 3, 2, 2, 2, 20556, 20557, 7, 85, 2, 2, 20557, 20558, 7, 71, 2, 2, 20558, 20559, 7, 78, 2, 2, 20559, 20560, 7, 71, 2, 2, 20560, 20561, 7, 69, 2, 2, 20561, 20562, 7, 86, 2, 2, 20562, 2982, 3, 2, 2, 2, 20563, 20564, 7, 85, 2, 2, 20564, 20565, 7, 71, 2, 2, 20565, 20566, 7, 78, 2, 2, 20566, 20567, 7, 72, 2, 2, 20567, 2984, 3, 2, 2, 2, 20568, 20569, 7, 85, 2, 2, 20569, 20570, 7, 71, 2, 2, 20570, 20571, 7, 79, 2, 2, 20571, 20572, 7, 75, 2, 2, 20572, 20573, 7, 76, 2, 2, 20573, 20574, 7, 81, 2, 2, 20574, 20575, 7, 75, 2, 2, 20575, 20576, 7, 80, 2, 2, 20576, 20577, 7, 97, 2, 2, 20577, 20578, 7, 70, 2, 2, 20578, 20579, 7, 84, 2, 2, 20579, 20580, 7, 75, 2, 2, 20580, 20581, 7, 88, 2, 2, 20581, 20582, 7, 71, 2, 2, 20582, 20583, 7, 84, 2, 2, 20583, 2986, 3, 2, 2, 2, 20584, 20585, 7, 85, 2, 2, 20585, 20586, 7, 71, 2, 2, 20586, 20587, 7, 79, 2, 2, 20587, 20588, 7, 75, 2, 2, 20588, 20589, 7, 76, 2, 2, 20589, 20590, 7, 81, 2, 2, 20590, 20591, 7, 75, 2, 2, 20591, 20592, 7, 80, 2, 2, 20592, 2988, 3, 2, 2, 2, 20593, 20594, 7, 85, 2, 2, 20594, 20595, 7, 71, 2, 2, 20595, 20596, 7, 79, 2, 2, 20596, 20597, 7, 75, 2, 2, 20597, 20598, 7, 97, 2, 2, 20598, 20599, 7, 86, 2, 2, 20599, 20600, 7, 81, 2, 2, 20600, 20601, 7, 97, 2, 2, 20601, 20602, 7, 75, 2, 2, 20602, 20603, 7, 80, 2, 2, 20603, 20604, 7, 80, 2, 2, 20604, 20605, 7, 71, 2, 2, 20605, 20606, 7, 84, 2, 2, 20606, 2990, 3, 2, 2, 2, 20607, 20608, 7, 85, 2, 2, 20608, 20609, 7, 71, 2, 2, 20609, 20610, 7, 83, 2, 2, 20610, 20611, 7, 87, 2, 2, 20611, 20612, 7, 71, 2, 2, 20612, 20613, 7, 80, 2, 2, 20613, 20614, 7, 69, 2, 2, 20614, 20615, 7, 71, 2, 2, 20615, 20616, 7, 70, 2, 2, 20616, 2992, 3, 2, 2, 2, 20617, 20618, 7, 85, 2, 2, 20618, 20619, 7, 71, 2, 2, 20619, 20620, 7, 83, 2, 2, 20620, 20621, 7, 87, 2, 2, 20621, 20622, 7, 71, 2, 2, 20622, 20623, 7, 80, 2, 2, 20623, 20624, 7, 69, 2, 2, 20624, 20625, 7, 71, 2, 2, 20625, 2994, 3, 2, 2, 2, 20626, 20627, 7, 85, 2, 2, 20627, 20628, 7, 71, 2, 2, 20628, 20629, 7, 83, 2, 2, 20629, 20630, 7, 87, 2, 2, 20630, 20631, 7, 71, 2, 2, 20631, 20632, 7, 80, 2, 2, 20632, 20633, 7, 86, 2, 2, 20633, 20634, 7, 75, 2, 2, 20634, 20635, 7, 67, 2, 2, 20635, 20636, 7, 78, 2, 2, 20636, 2996, 3, 2, 2, 2, 20637, 20638, 7, 85, 2, 2, 20638, 20639, 7, 71, 2, 2, 20639, 20640, 7, 83, 2, 2, 20640, 2998, 3, 2, 2, 2, 20641, 20642, 7, 85, 2, 2, 20642, 20643, 7, 71, 2, 2, 20643, 20644, 7, 84, 2, 2, 20644, 20645, 7, 75, 2, 2, 20645, 20646, 7, 67, 2, 2, 20646, 20647, 7, 78, 2, 2, 20647, 20648, 7, 75, 2, 2, 20648, 20649, 7, 92, 2, 2, 20649, 20650, 7, 67, 2, 2, 20650, 20651, 7, 68, 2, 2, 20651, 20652, 7, 78, 2, 2, 20652, 20653, 7, 71, 2, 2, 20653, 3000, 3, 2, 2, 2, 20654, 20655, 7, 85, 2, 2, 20655, 20656, 7, 71, 2, 2, 20656, 20657, 7, 84, 2, 2, 20657, 20658, 7, 75, 2, 2, 20658, 20659, 7, 67, 2, 2, 20659, 20660, 7, 78, 2, 2, 20660, 20661, 7, 78, 2, 2, 20661, 20662, 7, 91, 2, 2, 20662, 20663, 7, 97, 2, 2, 20663, 20664, 7, 84, 2, 2, 20664, 20665, 7, 71, 2, 2, 20665, 20666, 7, 87, 2, 2, 20666, 20667, 7, 85, 2, 2, 20667, 20668, 7, 67, 2, 2, 20668, 20669, 7, 68, 2, 2, 20669, 20670, 7, 78, 2, 2, 20670, 20671, 7, 71, 2, 2, 20671, 3002, 3, 2, 2, 2, 20672, 20673, 7, 85, 2, 2, 20673, 20674, 7, 71, 2, 2, 20674, 20675, 7, 84, 2, 2, 20675, 20676, 7, 75, 2, 2, 20676, 20677, 7, 67, 2, 2, 20677, 20678, 7, 78, 2, 2, 20678, 3004, 3, 2, 2, 2, 20679, 20680, 7, 85, 2, 2, 20680, 20681, 7, 71, 2, 2, 20681, 20682, 7, 84, 2, 2, 20682, 20683, 7, 88, 2, 2, 20683, 20684, 7, 71, 2, 2, 20684, 20685, 7, 84, 2, 2, 20685, 20686, 7, 71, 2, 2, 20686, 20687, 7, 84, 2, 2, 20687, 20688, 7, 84, 2, 2, 20688, 20689, 7, 81, 2, 2, 20689, 20690, 7, 84, 2, 2, 20690, 3006, 3, 2, 2, 2, 20691, 20692, 7, 85, 2, 2, 20692, 20693, 7, 71, 2, 2, 20693, 20694, 7, 84, 2, 2, 20694, 20695, 7, 88, 2, 2, 20695, 20696, 7, 75, 2, 2, 20696, 20697, 7, 69, 2, 2, 20697, 20698, 7, 71, 2, 2, 20698, 20699, 7, 97, 2, 2, 20699, 20700, 7, 80, 2, 2, 20700, 20701, 7, 67, 2, 2, 20701, 20702, 7, 79, 2, 2, 20702, 20703, 7, 71, 2, 2, 20703, 20704, 7, 97, 2, 2, 20704, 20705, 7, 69, 2, 2, 20705, 20706, 7, 81, 2, 2, 20706, 20707, 7, 80, 2, 2, 20707, 20708, 7, 88, 2, 2, 20708, 20709, 7, 71, 2, 2, 20709, 20710, 7, 84, 2, 2, 20710, 20711, 7, 86, 2, 2, 20711, 3008, 3, 2, 2, 2, 20712, 20713, 7, 85, 2, 2, 20713, 20714, 7, 71, 2, 2, 20714, 20715, 7, 84, 2, 2, 20715, 20716, 7, 88, 2, 2, 20716, 20717, 7, 75, 2, 2, 20717, 20718, 7, 69, 2, 2, 20718, 20719, 7, 71, 2, 2, 20719, 20720, 7, 85, 2, 2, 20720, 3010, 3, 2, 2, 2, 20721, 20722, 7, 85, 2, 2, 20722, 20723, 7, 71, 2, 2, 20723, 20724, 7, 85, 2, 2, 20724, 20725, 7, 85, 2, 2, 20725, 20726, 7, 75, 2, 2, 20726, 20727, 7, 81, 2, 2, 20727, 20728, 7, 80, 2, 2, 20728, 20729, 7, 97, 2, 2, 20729, 20730, 7, 69, 2, 2, 20730, 20731, 7, 67, 2, 2, 20731, 20732, 7, 69, 2, 2, 20732, 20733, 7, 74, 2, 2, 20733, 20734, 7, 71, 2, 2, 20734, 20735, 7, 70, 2, 2, 20735, 20736, 7, 97, 2, 2, 20736, 20737, 7, 69, 2, 2, 20737, 20738, 7, 87, 2, 2, 20738, 20739, 7, 84, 2, 2, 20739, 20740, 7, 85, 2, 2, 20740, 20741, 7, 81, 2, 2, 20741, 20742, 7, 84, 2, 2, 20742, 20743, 7, 85, 2, 2, 20743, 3012, 3, 2, 2, 2, 20744, 20745, 7, 85, 2, 2, 20745, 20746, 7, 71, 2, 2, 20746, 20747, 7, 85, 2, 2, 20747, 20748, 7, 85, 2, 2, 20748, 20749, 7, 75, 2, 2, 20749, 20750, 7, 81, 2, 2, 20750, 20751, 7, 80, 2, 2, 20751, 3014, 3, 2, 2, 2, 20752, 20753, 7, 85, 2, 2, 20753, 20754, 7, 71, 2, 2, 20754, 20755, 7, 85, 2, 2, 20755, 20756, 7, 85, 2, 2, 20756, 20757, 7, 75, 2, 2, 20757, 20758, 7, 81, 2, 2, 20758, 20759, 7, 80, 2, 2, 20759, 20760, 7, 85, 2, 2, 20760, 20761, 7, 97, 2, 2, 20761, 20762, 7, 82, 2, 2, 20762, 20763, 7, 71, 2, 2, 20763, 20764, 7, 84, 2, 2, 20764, 20765, 7, 97, 2, 2, 20765, 20766, 7, 87, 2, 2, 20766, 20767, 7, 85, 2, 2, 20767, 20768, 7, 71, 2, 2, 20768, 20769, 7, 84, 2, 2, 20769, 3016, 3, 2, 2, 2, 20770, 20771, 7, 85, 2, 2, 20771, 20772, 7, 71, 2, 2, 20772, 20773, 7, 85, 2, 2, 20773, 20774, 7, 85, 2, 2, 20774, 20775, 7, 75, 2, 2, 20775, 20776, 7, 81, 2, 2, 20776, 20777, 7, 80, 2, 2, 20777, 20778, 7, 86, 2, 2, 20778, 20779, 7, 75, 2, 2, 20779, 20780, 7, 79, 2, 2, 20780, 20781, 7, 71, 2, 2, 20781, 20782, 7, 92, 2, 2, 20782, 20783, 7, 81, 2, 2, 20783, 20784, 7, 80, 2, 2, 20784, 20785, 7, 71, 2, 2, 20785, 3018, 3, 2, 2, 2, 20786, 20787, 7, 85, 2, 2, 20787, 20788, 7, 71, 2, 2, 20788, 20789, 7, 85, 2, 2, 20789, 20790, 7, 85, 2, 2, 20790, 20791, 7, 75, 2, 2, 20791, 20792, 7, 81, 2, 2, 20792, 20793, 7, 80, 2, 2, 20793, 20794, 7, 86, 2, 2, 20794, 20795, 7, 92, 2, 2, 20795, 20796, 7, 80, 2, 2, 20796, 20797, 7, 67, 2, 2, 20797, 20798, 7, 79, 2, 2, 20798, 20799, 7, 71, 2, 2, 20799, 3020, 3, 2, 2, 2, 20800, 20801, 7, 85, 2, 2, 20801, 20802, 7, 71, 2, 2, 20802, 20803, 7, 86, 2, 2, 20803, 3022, 3, 2, 2, 2, 20804, 20805, 7, 85, 2, 2, 20805, 20806, 7, 71, 2, 2, 20806, 20807, 7, 86, 2, 2, 20807, 20808, 7, 85, 2, 2, 20808, 3024, 3, 2, 2, 2, 20809, 20810, 7, 85, 2, 2, 20810, 20811, 7, 71, 2, 2, 20811, 20812, 7, 86, 2, 2, 20812, 20813, 7, 86, 2, 2, 20813, 20814, 7, 75, 2, 2, 20814, 20815, 7, 80, 2, 2, 20815, 20816, 7, 73, 2, 2, 20816, 20817, 7, 85, 2, 2, 20817, 3026, 3, 2, 2, 2, 20818, 20819, 7, 85, 2, 2, 20819, 20820, 7, 71, 2, 2, 20820, 20821, 7, 86, 2, 2, 20821, 20822, 7, 97, 2, 2, 20822, 20823, 7, 86, 2, 2, 20823, 20824, 7, 81, 2, 2, 20824, 20825, 7, 97, 2, 2, 20825, 20826, 7, 76, 2, 2, 20826, 20827, 7, 81, 2, 2, 20827, 20828, 7, 75, 2, 2, 20828, 20829, 7, 80, 2, 2, 20829, 3028, 3, 2, 2, 2, 20830, 20831, 7, 85, 2, 2, 20831, 20832, 7, 71, 2, 2, 20832, 20833, 7, 88, 2, 2, 20833, 20834, 7, 71, 2, 2, 20834, 20835, 7, 84, 2, 2, 20835, 20836, 7, 71, 2, 2, 20836, 3030, 3, 2, 2, 2, 20837, 20838, 7, 85, 2, 2, 20838, 20839, 7, 74, 2, 2, 20839, 20840, 7, 67, 2, 2, 20840, 20841, 7, 84, 2, 2, 20841, 20842, 7, 71, 2, 2, 20842, 20843, 7, 70, 2, 2, 20843, 20844, 7, 97, 2, 2, 20844, 20845, 7, 82, 2, 2, 20845, 20846, 7, 81, 2, 2, 20846, 20847, 7, 81, 2, 2, 20847, 20848, 7, 78, 2, 2, 20848, 3032, 3, 2, 2, 2, 20849, 20850, 7, 85, 2, 2, 20850, 20851, 7, 74, 2, 2, 20851, 20852, 7, 67, 2, 2, 20852, 20853, 7, 84, 2, 2, 20853, 20854, 7, 71, 2, 2, 20854, 20855, 7, 70, 2, 2, 20855, 3034, 3, 2, 2, 2, 20856, 20857, 7, 85, 2, 2, 20857, 20858, 7, 74, 2, 2, 20858, 20859, 7, 67, 2, 2, 20859, 20860, 7, 84, 2, 2, 20860, 20861, 7, 71, 2, 2, 20861, 3036, 3, 2, 2, 2, 20862, 20863, 7, 85, 2, 2, 20863, 20864, 7, 74, 2, 2, 20864, 20865, 7, 67, 2, 2, 20865, 20866, 7, 84, 2, 2, 20866, 20867, 7, 75, 2, 2, 20867, 20868, 7, 80, 2, 2, 20868, 20869, 7, 73, 2, 2, 20869, 3038, 3, 2, 2, 2, 20870, 20871, 7, 85, 2, 2, 20871, 20872, 7, 74, 2, 2, 20872, 20873, 7, 71, 2, 2, 20873, 20874, 7, 78, 2, 2, 20874, 20875, 7, 72, 2, 2, 20875, 20876, 7, 78, 2, 2, 20876, 20877, 7, 75, 2, 2, 20877, 20878, 7, 72, 2, 2, 20878, 20879, 7, 71, 2, 2, 20879, 3040, 3, 2, 2, 2, 20880, 20881, 7, 85, 2, 2, 20881, 20882, 7, 74, 2, 2, 20882, 20883, 7, 81, 2, 2, 20883, 20884, 7, 89, 2, 2, 20884, 3042, 3, 2, 2, 2, 20885, 20886, 7, 85, 2, 2, 20886, 20887, 7, 74, 2, 2, 20887, 20888, 7, 84, 2, 2, 20888, 20889, 7, 75, 2, 2, 20889, 20890, 7, 80, 2, 2, 20890, 20891, 7, 77, 2, 2, 20891, 3044, 3, 2, 2, 2, 20892, 20893, 7, 85, 2, 2, 20893, 20894, 7, 74, 2, 2, 20894, 20895, 7, 87, 2, 2, 20895, 20896, 7, 86, 2, 2, 20896, 20897, 7, 70, 2, 2, 20897, 20898, 7, 81, 2, 2, 20898, 20899, 7, 89, 2, 2, 20899, 20900, 7, 80, 2, 2, 20900, 3046, 3, 2, 2, 2, 20901, 20902, 7, 85, 2, 2, 20902, 20903, 7, 75, 2, 2, 20903, 20904, 7, 68, 2, 2, 20904, 20905, 7, 78, 2, 2, 20905, 20906, 7, 75, 2, 2, 20906, 20907, 7, 80, 2, 2, 20907, 20908, 7, 73, 2, 2, 20908, 20909, 7, 85, 2, 2, 20909, 3048, 3, 2, 2, 2, 20910, 20911, 7, 85, 2, 2, 20911, 20912, 7, 75, 2, 2, 20912, 20913, 7, 70, 2, 2, 20913, 3050, 3, 2, 2, 2, 20914, 20915, 7, 85, 2, 2, 20915, 20916, 7, 75, 2, 2, 20916, 20917, 7, 73, 2, 2, 20917, 20918, 7, 80, 2, 2, 20918, 20919, 7, 67, 2, 2, 20919, 20920, 7, 78, 2, 2, 20920, 20921, 7, 97, 2, 2, 20921, 20922, 7, 69, 2, 2, 20922, 20923, 7, 81, 2, 2, 20923, 20924, 7, 79, 2, 2, 20924, 20925, 7, 82, 2, 2, 20925, 20926, 7, 81, 2, 2, 20926, 20927, 7, 80, 2, 2, 20927, 20928, 7, 71, 2, 2, 20928, 20929, 7, 80, 2, 2, 20929, 20930, 7, 86, 2, 2, 20930, 3052, 3, 2, 2, 2, 20931, 20932, 7, 85, 2, 2, 20932, 20933, 7, 75, 2, 2, 20933, 20934, 7, 73, 2, 2, 20934, 20935, 7, 80, 2, 2, 20935, 20936, 7, 67, 2, 2, 20936, 20937, 7, 78, 2, 2, 20937, 20938, 7, 97, 2, 2, 20938, 20939, 7, 72, 2, 2, 20939, 20940, 7, 87, 2, 2, 20940, 20941, 7, 80, 2, 2, 20941, 20942, 7, 69, 2, 2, 20942, 20943, 7, 86, 2, 2, 20943, 20944, 7, 75, 2, 2, 20944, 20945, 7, 81, 2, 2, 20945, 20946, 7, 80, 2, 2, 20946, 3054, 3, 2, 2, 2, 20947, 20948, 7, 85, 2, 2, 20948, 20949, 7, 75, 2, 2, 20949, 20950, 7, 73, 2, 2, 20950, 20951, 7, 80, 2, 2, 20951, 3056, 3, 2, 2, 2, 20952, 20953, 7, 85, 2, 2, 20953, 20954, 7, 75, 2, 2, 20954, 20955, 7, 73, 2, 2, 20955, 20956, 7, 80, 2, 2, 20956, 20957, 7, 86, 2, 2, 20957, 20958, 7, 91, 2, 2, 20958, 20959, 7, 82, 2, 2, 20959, 20960, 7, 71, 2, 2, 20960, 3058, 3, 2, 2, 2, 20961, 20962, 7, 85, 2, 2, 20962, 20963, 7, 75, 2, 2, 20963, 20964, 7, 79, 2, 2, 20964, 20965, 7, 82, 2, 2, 20965, 20966, 7, 78, 2, 2, 20966, 20967, 7, 71, 2, 2, 20967, 20968, 7, 97, 2, 2, 20968, 20969, 7, 75, 2, 2, 20969, 20970, 7, 80, 2, 2, 20970, 20971, 7, 86, 2, 2, 20971, 20972, 7, 71, 2, 2, 20972, 20973, 7, 73, 2, 2, 20973, 20974, 7, 71, 2, 2, 20974, 20975, 7, 84, 2, 2, 20975, 3060, 3, 2, 2, 2, 20976, 20977, 7, 85, 2, 2, 20977, 20978, 7, 75, 2, 2, 20978, 20979, 7, 79, 2, 2, 20979, 20980, 7, 82, 2, 2, 20980, 20981, 7, 78, 2, 2, 20981, 20982, 7, 71, 2, 2, 20982, 3062, 3, 2, 2, 2, 20983, 20984, 7, 85, 2, 2, 20984, 20985, 7, 75, 2, 2, 20985, 20986, 7, 80, 2, 2, 20986, 20987, 7, 73, 2, 2, 20987, 20988, 7, 78, 2, 2, 20988, 20989, 7, 71, 2, 2, 20989, 3064, 3, 2, 2, 2, 20990, 20991, 7, 85, 2, 2, 20991, 20992, 7, 75, 2, 2, 20992, 20993, 7, 80, 2, 2, 20993, 20994, 7, 73, 2, 2, 20994, 20995, 7, 78, 2, 2, 20995, 20996, 7, 71, 2, 2, 20996, 20997, 7, 86, 2, 2, 20997, 20998, 7, 67, 2, 2, 20998, 20999, 7, 85, 2, 2, 20999, 21000, 7, 77, 2, 2, 21000, 3066, 3, 2, 2, 2, 21001, 21002, 7, 85, 2, 2, 21002, 21003, 7, 75, 2, 2, 21003, 21004, 7, 80, 2, 2, 21004, 21005, 7, 74, 2, 2, 21005, 3068, 3, 2, 2, 2, 21006, 21007, 7, 85, 2, 2, 21007, 21008, 7, 75, 2, 2, 21008, 21009, 7, 80, 2, 2, 21009, 3070, 3, 2, 2, 2, 21010, 21011, 7, 85, 2, 2, 21011, 21012, 7, 75, 2, 2, 21012, 21013, 7, 92, 2, 2, 21013, 21014, 7, 71, 2, 2, 21014, 3072, 3, 2, 2, 2, 21015, 21016, 7, 85, 2, 2, 21016, 21017, 7, 77, 2, 2, 21017, 21018, 7, 75, 2, 2, 21018, 21019, 7, 82, 2, 2, 21019, 21020, 7, 97, 2, 2, 21020, 21021, 7, 71, 2, 2, 21021, 21022, 7, 90, 2, 2, 21022, 21023, 7, 86, 2, 2, 21023, 21024, 7, 97, 2, 2, 21024, 21025, 7, 81, 2, 2, 21025, 21026, 7, 82, 2, 2, 21026, 21027, 7, 86, 2, 2, 21027, 21028, 7, 75, 2, 2, 21028, 21029, 7, 79, 2, 2, 21029, 21030, 7, 75, 2, 2, 21030, 21031, 7, 92, 2, 2, 21031, 21032, 7, 71, 2, 2, 21032, 21033, 7, 84, 2, 2, 21033, 3074, 3, 2, 2, 2, 21034, 21035, 7, 85, 2, 2, 21035, 21036, 7, 77, 2, 2, 21036, 21037, 7, 75, 2, 2, 21037, 21038, 7, 82, 2, 2, 21038, 3076, 3, 2, 2, 2, 21039, 21040, 7, 85, 2, 2, 21040, 21041, 7, 77, 2, 2, 21041, 21042, 7, 75, 2, 2, 21042, 21043, 7, 82, 2, 2, 21043, 21044, 7, 97, 2, 2, 21044, 21045, 7, 87, 2, 2, 21045, 21046, 7, 80, 2, 2, 21046, 21047, 7, 83, 2, 2, 21047, 21048, 7, 97, 2, 2, 21048, 21049, 7, 87, 2, 2, 21049, 21050, 7, 80, 2, 2, 21050, 21051, 7, 87, 2, 2, 21051, 21052, 7, 85, 2, 2, 21052, 21053, 7, 67, 2, 2, 21053, 21054, 7, 68, 2, 2, 21054, 21055, 7, 78, 2, 2, 21055, 21056, 7, 71, 2, 2, 21056, 21057, 7, 97, 2, 2, 21057, 21058, 7, 75, 2, 2, 21058, 21059, 7, 70, 2, 2, 21059, 21060, 7, 90, 2, 2, 21060, 3078, 3, 2, 2, 2, 21061, 21062, 7, 85, 2, 2, 21062, 21063, 7, 77, 2, 2, 21063, 21064, 7, 75, 2, 2, 21064, 21065, 7, 82, 2, 2, 21065, 21066, 7, 97, 2, 2, 21066, 21067, 7, 87, 2, 2, 21067, 21068, 7, 80, 2, 2, 21068, 21069, 7, 87, 2, 2, 21069, 21070, 7, 85, 2, 2, 21070, 21071, 7, 67, 2, 2, 21071, 21072, 7, 68, 2, 2, 21072, 21073, 7, 78, 2, 2, 21073, 21074, 7, 71, 2, 2, 21074, 21075, 7, 97, 2, 2, 21075, 21076, 7, 75, 2, 2, 21076, 21077, 7, 80, 2, 2, 21077, 21078, 7, 70, 2, 2, 21078, 21079, 7, 71, 2, 2, 21079, 21080, 7, 90, 2, 2, 21080, 21081, 7, 71, 2, 2, 21081, 21082, 7, 85, 2, 2, 21082, 3080, 3, 2, 2, 2, 21083, 21084, 7, 85, 2, 2, 21084, 21085, 7, 79, 2, 2, 21085, 21086, 7, 67, 2, 2, 21086, 21087, 7, 78, 2, 2, 21087, 21088, 7, 78, 2, 2, 21088, 21089, 7, 72, 2, 2, 21089, 21090, 7, 75, 2, 2, 21090, 21091, 7, 78, 2, 2, 21091, 21092, 7, 71, 2, 2, 21092, 3082, 3, 2, 2, 2, 21093, 21094, 7, 85, 2, 2, 21094, 21095, 7, 79, 2, 2, 21095, 21096, 7, 67, 2, 2, 21096, 21097, 7, 78, 2, 2, 21097, 21098, 7, 78, 2, 2, 21098, 21099, 7, 75, 2, 2, 21099, 21100, 7, 80, 2, 2, 21100, 21101, 7, 86, 2, 2, 21101, 3084, 3, 2, 2, 2, 21102, 21103, 7, 85, 2, 2, 21103, 21104, 7, 80, 2, 2, 21104, 21105, 7, 67, 2, 2, 21105, 21106, 7, 82, 2, 2, 21106, 21107, 7, 85, 2, 2, 21107, 21108, 7, 74, 2, 2, 21108, 21109, 7, 81, 2, 2, 21109, 21110, 7, 86, 2, 2, 21110, 3086, 3, 2, 2, 2, 21111, 21112, 7, 85, 2, 2, 21112, 21113, 7, 81, 2, 2, 21113, 21114, 7, 79, 2, 2, 21114, 21115, 7, 71, 2, 2, 21115, 3088, 3, 2, 2, 2, 21116, 21117, 7, 85, 2, 2, 21117, 21118, 7, 81, 2, 2, 21118, 21119, 7, 84, 2, 2, 21119, 21120, 7, 86, 2, 2, 21120, 3090, 3, 2, 2, 2, 21121, 21122, 7, 85, 2, 2, 21122, 21123, 7, 81, 2, 2, 21123, 21124, 7, 87, 2, 2, 21124, 21125, 7, 80, 2, 2, 21125, 21126, 7, 70, 2, 2, 21126, 21127, 7, 71, 2, 2, 21127, 21128, 7, 90, 2, 2, 21128, 3092, 3, 2, 2, 2, 21129, 21130, 7, 85, 2, 2, 21130, 21131, 7, 81, 2, 2, 21131, 21132, 7, 87, 2, 2, 21132, 21133, 7, 84, 2, 2, 21133, 21134, 7, 69, 2, 2, 21134, 21135, 7, 71, 2, 2, 21135, 21136, 7, 97, 2, 2, 21136, 21137, 7, 72, 2, 2, 21137, 21138, 7, 75, 2, 2, 21138, 21139, 7, 78, 2, 2, 21139, 21140, 7, 71, 2, 2, 21140, 21141, 7, 97, 2, 2, 21141, 21142, 7, 70, 2, 2, 21142, 21143, 7, 75, 2, 2, 21143, 21144, 7, 84, 2, 2, 21144, 21145, 7, 71, 2, 2, 21145, 21146, 7, 69, 2, 2, 21146, 21147, 7, 86, 2, 2, 21147, 21148, 7, 81, 2, 2, 21148, 21149, 7, 84, 2, 2, 21149, 21150, 7, 91, 2, 2, 21150, 3094, 3, 2, 2, 2, 21151, 21152, 7, 85, 2, 2, 21152, 21153, 7, 81, 2, 2, 21153, 21154, 7, 87, 2, 2, 21154, 21155, 7, 84, 2, 2, 21155, 21156, 7, 69, 2, 2, 21156, 21157, 7, 71, 2, 2, 21157, 21158, 7, 97, 2, 2, 21158, 21159, 7, 72, 2, 2, 21159, 21160, 7, 75, 2, 2, 21160, 21161, 7, 78, 2, 2, 21161, 21162, 7, 71, 2, 2, 21162, 21163, 7, 97, 2, 2, 21163, 21164, 7, 80, 2, 2, 21164, 21165, 7, 67, 2, 2, 21165, 21166, 7, 79, 2, 2, 21166, 21167, 7, 71, 2, 2, 21167, 21168, 7, 97, 2, 2, 21168, 21169, 7, 69, 2, 2, 21169, 21170, 7, 81, 2, 2, 21170, 21171, 7, 80, 2, 2, 21171, 21172, 7, 88, 2, 2, 21172, 21173, 7, 71, 2, 2, 21173, 21174, 7, 84, 2, 2, 21174, 21175, 7, 86, 2, 2, 21175, 3096, 3, 2, 2, 2, 21176, 21177, 7, 85, 2, 2, 21177, 21178, 7, 81, 2, 2, 21178, 21179, 7, 87, 2, 2, 21179, 21180, 7, 84, 2, 2, 21180, 21181, 7, 69, 2, 2, 21181, 21182, 7, 71, 2, 2, 21182, 3098, 3, 2, 2, 2, 21183, 21184, 7, 85, 2, 2, 21184, 21185, 7, 82, 2, 2, 21185, 21186, 7, 67, 2, 2, 21186, 21187, 7, 69, 2, 2, 21187, 21188, 7, 71, 2, 2, 21188, 3100, 3, 2, 2, 2, 21189, 21190, 7, 85, 2, 2, 21190, 21191, 7, 82, 2, 2, 21191, 21192, 7, 71, 2, 2, 21192, 21193, 7, 69, 2, 2, 21193, 21194, 7, 75, 2, 2, 21194, 21195, 7, 72, 2, 2, 21195, 21196, 7, 75, 2, 2, 21196, 21197, 7, 69, 2, 2, 21197, 21198, 7, 67, 2, 2, 21198, 21199, 7, 86, 2, 2, 21199, 21200, 7, 75, 2, 2, 21200, 21201, 7, 81, 2, 2, 21201, 21202, 7, 80, 2, 2, 21202, 3102, 3, 2, 2, 2, 21203, 21204, 7, 85, 2, 2, 21204, 21205, 7, 82, 2, 2, 21205, 21206, 7, 72, 2, 2, 21206, 21207, 7, 75, 2, 2, 21207, 21208, 7, 78, 2, 2, 21208, 21209, 7, 71, 2, 2, 21209, 3104, 3, 2, 2, 2, 21210, 21211, 7, 85, 2, 2, 21211, 21212, 7, 82, 2, 2, 21212, 21213, 7, 78, 2, 2, 21213, 21214, 7, 75, 2, 2, 21214, 21215, 7, 86, 2, 2, 21215, 3106, 3, 2, 2, 2, 21216, 21217, 7, 85, 2, 2, 21217, 21218, 7, 82, 2, 2, 21218, 21219, 7, 84, 2, 2, 21219, 21220, 7, 71, 2, 2, 21220, 21221, 7, 67, 2, 2, 21221, 21222, 7, 70, 2, 2, 21222, 21223, 7, 85, 2, 2, 21223, 21224, 7, 74, 2, 2, 21224, 21225, 7, 71, 2, 2, 21225, 21226, 7, 71, 2, 2, 21226, 21227, 7, 86, 2, 2, 21227, 3108, 3, 2, 2, 2, 21228, 21229, 7, 85, 2, 2, 21229, 21230, 7, 83, 2, 2, 21230, 21231, 7, 78, 2, 2, 21231, 21232, 7, 70, 2, 2, 21232, 21233, 7, 67, 2, 2, 21233, 21234, 7, 86, 2, 2, 21234, 21235, 7, 67, 2, 2, 21235, 3110, 3, 2, 2, 2, 21236, 21237, 7, 85, 2, 2, 21237, 21238, 7, 83, 2, 2, 21238, 21239, 7, 78, 2, 2, 21239, 21240, 7, 71, 2, 2, 21240, 21241, 7, 84, 2, 2, 21241, 21242, 7, 84, 2, 2, 21242, 21243, 7, 81, 2, 2, 21243, 21244, 7, 84, 2, 2, 21244, 3112, 3, 2, 2, 2, 21245, 21246, 7, 85, 2, 2, 21246, 21247, 7, 83, 2, 2, 21247, 21248, 7, 78, 2, 2, 21248, 21249, 7, 78, 2, 2, 21249, 21250, 7, 70, 2, 2, 21250, 21251, 7, 84, 2, 2, 21251, 3114, 3, 2, 2, 2, 21252, 21253, 7, 85, 2, 2, 21253, 21254, 7, 83, 2, 2, 21254, 21255, 7, 78, 2, 2, 21255, 3116, 3, 2, 2, 2, 21256, 21257, 7, 85, 2, 2, 21257, 21258, 7, 83, 2, 2, 21258, 21259, 7, 78, 2, 2, 21259, 21260, 7, 97, 2, 2, 21260, 21261, 7, 86, 2, 2, 21261, 21262, 7, 84, 2, 2, 21262, 21263, 7, 67, 2, 2, 21263, 21264, 7, 69, 2, 2, 21264, 21265, 7, 71, 2, 2, 21265, 3118, 3, 2, 2, 2, 21266, 21267, 7, 85, 2, 2, 21267, 21268, 7, 83, 2, 2, 21268, 21269, 7, 78, 2, 2, 21269, 21270, 7, 97, 2, 2, 21270, 21271, 7, 86, 2, 2, 21271, 21272, 7, 84, 2, 2, 21272, 21273, 7, 67, 2, 2, 21273, 21274, 7, 80, 2, 2, 21274, 21275, 7, 85, 2, 2, 21275, 21276, 7, 78, 2, 2, 21276, 21277, 7, 67, 2, 2, 21277, 21278, 7, 86, 2, 2, 21278, 21279, 7, 75, 2, 2, 21279, 21280, 7, 81, 2, 2, 21280, 21281, 7, 80, 2, 2, 21281, 21282, 7, 97, 2, 2, 21282, 21283, 7, 82, 2, 2, 21283, 21284, 7, 84, 2, 2, 21284, 21285, 7, 81, 2, 2, 21285, 21286, 7, 72, 2, 2, 21286, 21287, 7, 75, 2, 2, 21287, 21288, 7, 78, 2, 2, 21288, 21289, 7, 71, 2, 2, 21289, 3120, 3, 2, 2, 2, 21290, 21291, 7, 85, 2, 2, 21291, 21292, 7, 83, 2, 2, 21292, 21293, 7, 84, 2, 2, 21293, 21294, 7, 86, 2, 2, 21294, 3122, 3, 2, 2, 2, 21295, 21296, 7, 85, 2, 2, 21296, 21297, 7, 86, 2, 2, 21297, 21298, 7, 67, 2, 2, 21298, 21299, 7, 78, 2, 2, 21299, 21300, 7, 71, 2, 2, 21300, 3124, 3, 2, 2, 2, 21301, 21302, 7, 85, 2, 2, 21302, 21303, 7, 86, 2, 2, 21303, 21304, 7, 67, 2, 2, 21304, 21305, 7, 80, 2, 2, 21305, 21306, 7, 70, 2, 2, 21306, 21307, 7, 67, 2, 2, 21307, 21308, 7, 78, 2, 2, 21308, 21309, 7, 81, 2, 2, 21309, 21310, 7, 80, 2, 2, 21310, 21311, 7, 71, 2, 2, 21311, 3126, 3, 2, 2, 2, 21312, 21313, 7, 85, 2, 2, 21313, 21314, 7, 86, 2, 2, 21314, 21315, 7, 67, 2, 2, 21315, 21316, 7, 80, 2, 2, 21316, 21317, 7, 70, 2, 2, 21317, 21318, 7, 67, 2, 2, 21318, 21319, 7, 84, 2, 2, 21319, 21320, 7, 70, 2, 2, 21320, 21321, 7, 97, 2, 2, 21321, 21322, 7, 74, 2, 2, 21322, 21323, 7, 67, 2, 2, 21323, 21324, 7, 85, 2, 2, 21324, 21325, 7, 74, 2, 2, 21325, 3128, 3, 2, 2, 2, 21326, 21327, 7, 85, 2, 2, 21327, 21328, 7, 86, 2, 2, 21328, 21329, 7, 67, 2, 2, 21329, 21330, 7, 80, 2, 2, 21330, 21331, 7, 70, 2, 2, 21331, 21332, 7, 68, 2, 2, 21332, 21333, 7, 91, 2, 2, 21333, 21334, 7, 97, 2, 2, 21334, 21335, 7, 79, 2, 2, 21335, 21336, 7, 67, 2, 2, 21336, 21337, 7, 90, 2, 2, 21337, 21338, 7, 97, 2, 2, 21338, 21339, 7, 70, 2, 2, 21339, 21340, 7, 67, 2, 2, 21340, 21341, 7, 86, 2, 2, 21341, 21342, 7, 67, 2, 2, 21342, 21343, 7, 97, 2, 2, 21343, 21344, 7, 70, 2, 2, 21344, 21345, 7, 71, 2, 2, 21345, 21346, 7, 78, 2, 2, 21346, 21347, 7, 67, 2, 2, 21347, 21348, 7, 91, 2, 2, 21348, 3130, 3, 2, 2, 2, 21349, 21350, 7, 85, 2, 2, 21350, 21351, 7, 86, 2, 2, 21351, 21352, 7, 67, 2, 2, 21352, 21353, 7, 80, 2, 2, 21353, 21354, 7, 70, 2, 2, 21354, 21355, 7, 68, 2, 2, 21355, 21356, 7, 91, 2, 2, 21356, 21357, 7, 85, 2, 2, 21357, 3132, 3, 2, 2, 2, 21358, 21359, 7, 85, 2, 2, 21359, 21360, 7, 86, 2, 2, 21360, 21361, 7, 67, 2, 2, 21361, 21362, 7, 80, 2, 2, 21362, 21363, 7, 70, 2, 2, 21363, 21364, 7, 68, 2, 2, 21364, 21365, 7, 91, 2, 2, 21365, 3134, 3, 2, 2, 2, 21366, 21367, 7, 85, 2, 2, 21367, 21368, 7, 86, 2, 2, 21368, 21369, 7, 67, 2, 2, 21369, 21370, 7, 84, 2, 2, 21370, 3136, 3, 2, 2, 2, 21371, 21372, 7, 85, 2, 2, 21372, 21373, 7, 86, 2, 2, 21373, 21374, 7, 67, 2, 2, 21374, 21375, 7, 84, 2, 2, 21375, 21376, 7, 97, 2, 2, 21376, 21377, 7, 86, 2, 2, 21377, 21378, 7, 84, 2, 2, 21378, 21379, 7, 67, 2, 2, 21379, 21380, 7, 80, 2, 2, 21380, 21381, 7, 85, 2, 2, 21381, 21382, 7, 72, 2, 2, 21382, 21383, 7, 81, 2, 2, 21383, 21384, 7, 84, 2, 2, 21384, 21385, 7, 79, 2, 2, 21385, 21386, 7, 67, 2, 2, 21386, 21387, 7, 86, 2, 2, 21387, 21388, 7, 75, 2, 2, 21388, 21389, 7, 81, 2, 2, 21389, 21390, 7, 80, 2, 2, 21390, 3138, 3, 2, 2, 2, 21391, 21392, 7, 85, 2, 2, 21392, 21393, 7, 86, 2, 2, 21393, 21394, 7, 67, 2, 2, 21394, 21395, 7, 84, 2, 2, 21395, 21396, 7, 86, 2, 2, 21396, 3140, 3, 2, 2, 2, 21397, 21398, 7, 85, 2, 2, 21398, 21399, 7, 86, 2, 2, 21399, 21400, 7, 67, 2, 2, 21400, 21401, 7, 84, 2, 2, 21401, 21402, 7, 86, 2, 2, 21402, 21403, 7, 87, 2, 2, 21403, 21404, 7, 82, 2, 2, 21404, 3142, 3, 2, 2, 2, 21405, 21406, 7, 85, 2, 2, 21406, 21407, 7, 86, 2, 2, 21407, 21408, 7, 67, 2, 2, 21408, 21409, 7, 86, 2, 2, 21409, 21410, 7, 71, 2, 2, 21410, 21411, 7, 79, 2, 2, 21411, 21412, 7, 71, 2, 2, 21412, 21413, 7, 80, 2, 2, 21413, 21414, 7, 86, 2, 2, 21414, 21415, 7, 97, 2, 2, 21415, 21416, 7, 75, 2, 2, 21416, 21417, 7, 70, 2, 2, 21417, 3144, 3, 2, 2, 2, 21418, 21419, 7, 85, 2, 2, 21419, 21420, 7, 86, 2, 2, 21420, 21421, 7, 67, 2, 2, 21421, 21422, 7, 86, 2, 2, 21422, 21423, 7, 71, 2, 2, 21423, 21424, 7, 79, 2, 2, 21424, 21425, 7, 71, 2, 2, 21425, 21426, 7, 80, 2, 2, 21426, 21427, 7, 86, 2, 2, 21427, 21428, 7, 97, 2, 2, 21428, 21429, 7, 83, 2, 2, 21429, 21430, 7, 87, 2, 2, 21430, 21431, 7, 71, 2, 2, 21431, 21432, 7, 87, 2, 2, 21432, 21433, 7, 75, 2, 2, 21433, 21434, 7, 80, 2, 2, 21434, 21435, 7, 73, 2, 2, 21435, 3146, 3, 2, 2, 2, 21436, 21437, 7, 85, 2, 2, 21437, 21438, 7, 86, 2, 2, 21438, 21439, 7, 67, 2, 2, 21439, 21440, 7, 86, 2, 2, 21440, 21441, 7, 71, 2, 2, 21441, 21442, 7, 79, 2, 2, 21442, 21443, 7, 71, 2, 2, 21443, 21444, 7, 80, 2, 2, 21444, 21445, 7, 86, 2, 2, 21445, 21446, 7, 85, 2, 2, 21446, 3148, 3, 2, 2, 2, 21447, 21448, 7, 85, 2, 2, 21448, 21449, 7, 86, 2, 2, 21449, 21450, 7, 67, 2, 2, 21450, 21451, 7, 86, 2, 2, 21451, 21452, 7, 71, 2, 2, 21452, 21453, 7, 79, 2, 2, 21453, 21454, 7, 71, 2, 2, 21454, 21455, 7, 80, 2, 2, 21455, 21456, 7, 86, 2, 2, 21456, 3150, 3, 2, 2, 2, 21457, 21458, 7, 85, 2, 2, 21458, 21459, 7, 86, 2, 2, 21459, 21460, 7, 67, 2, 2, 21460, 21461, 7, 86, 2, 2, 21461, 21462, 7, 71, 2, 2, 21462, 3152, 3, 2, 2, 2, 21463, 21464, 7, 85, 2, 2, 21464, 21465, 7, 86, 2, 2, 21465, 21466, 7, 67, 2, 2, 21466, 21467, 7, 86, 2, 2, 21467, 21468, 7, 75, 2, 2, 21468, 21469, 7, 69, 2, 2, 21469, 3154, 3, 2, 2, 2, 21470, 21471, 7, 85, 2, 2, 21471, 21472, 7, 86, 2, 2, 21472, 21473, 7, 67, 2, 2, 21473, 21474, 7, 86, 2, 2, 21474, 21475, 7, 75, 2, 2, 21475, 21476, 7, 85, 2, 2, 21476, 21477, 7, 86, 2, 2, 21477, 21478, 7, 75, 2, 2, 21478, 21479, 7, 69, 2, 2, 21479, 21480, 7, 85, 2, 2, 21480, 3156, 3, 2, 2, 2, 21481, 21482, 7, 85, 2, 2, 21482, 21483, 7, 86, 2, 2, 21483, 21484, 7, 67, 2, 2, 21484, 21485, 7, 86, 2, 2, 21485, 21486, 7, 85, 2, 2, 21486, 21487, 7, 97, 2, 2, 21487, 21488, 7, 68, 2, 2, 21488, 21489, 7, 75, 2, 2, 21489, 21490, 7, 80, 2, 2, 21490, 21491, 7, 81, 2, 2, 21491, 21492, 7, 79, 2, 2, 21492, 21493, 7, 75, 2, 2, 21493, 21494, 7, 67, 2, 2, 21494, 21495, 7, 78, 2, 2, 21495, 21496, 7, 97, 2, 2, 21496, 21497, 7, 86, 2, 2, 21497, 21498, 7, 71, 2, 2, 21498, 21499, 7, 85, 2, 2, 21499, 21500, 7, 86, 2, 2, 21500, 3158, 3, 2, 2, 2, 21501, 21502, 7, 85, 2, 2, 21502, 21503, 7, 86, 2, 2, 21503, 21504, 7, 67, 2, 2, 21504, 21505, 7, 86, 2, 2, 21505, 21506, 7, 85, 2, 2, 21506, 21507, 7, 97, 2, 2, 21507, 21508, 7, 69, 2, 2, 21508, 21509, 7, 84, 2, 2, 21509, 21510, 7, 81, 2, 2, 21510, 21511, 7, 85, 2, 2, 21511, 21512, 7, 85, 2, 2, 21512, 21513, 7, 86, 2, 2, 21513, 21514, 7, 67, 2, 2, 21514, 21515, 7, 68, 2, 2, 21515, 3160, 3, 2, 2, 2, 21516, 21517, 7, 85, 2, 2, 21517, 21518, 7, 86, 2, 2, 21518, 21519, 7, 67, 2, 2, 21519, 21520, 7, 86, 2, 2, 21520, 21521, 7, 85, 2, 2, 21521, 21522, 7, 97, 2, 2, 21522, 21523, 7, 72, 2, 2, 21523, 21524, 7, 97, 2, 2, 21524, 21525, 7, 86, 2, 2, 21525, 21526, 7, 71, 2, 2, 21526, 21527, 7, 85, 2, 2, 21527, 21528, 7, 86, 2, 2, 21528, 3162, 3, 2, 2, 2, 21529, 21530, 7, 85, 2, 2, 21530, 21531, 7, 86, 2, 2, 21531, 21532, 7, 67, 2, 2, 21532, 21533, 7, 86, 2, 2, 21533, 21534, 7, 85, 2, 2, 21534, 21535, 7, 97, 2, 2, 21535, 21536, 7, 77, 2, 2, 21536, 21537, 7, 85, 2, 2, 21537, 21538, 7, 97, 2, 2, 21538, 21539, 7, 86, 2, 2, 21539, 21540, 7, 71, 2, 2, 21540, 21541, 7, 85, 2, 2, 21541, 21542, 7, 86, 2, 2, 21542, 3164, 3, 2, 2, 2, 21543, 21544, 7, 85, 2, 2, 21544, 21545, 7, 86, 2, 2, 21545, 21546, 7, 67, 2, 2, 21546, 21547, 7, 86, 2, 2, 21547, 21548, 7, 85, 2, 2, 21548, 21549, 7, 97, 2, 2, 21549, 21550, 7, 79, 2, 2, 21550, 21551, 7, 81, 2, 2, 21551, 21552, 7, 70, 2, 2, 21552, 21553, 7, 71, 2, 2, 21553, 3166, 3, 2, 2, 2, 21554, 21555, 7, 85, 2, 2, 21555, 21556, 7, 86, 2, 2, 21556, 21557, 7, 67, 2, 2, 21557, 21558, 7, 86, 2, 2, 21558, 21559, 7, 85, 2, 2, 21559, 21560, 7, 97, 2, 2, 21560, 21561, 7, 79, 2, 2, 21561, 21562, 7, 89, 2, 2, 21562, 21563, 7, 97, 2, 2, 21563, 21564, 7, 86, 2, 2, 21564, 21565, 7, 71, 2, 2, 21565, 21566, 7, 85, 2, 2, 21566, 21567, 7, 86, 2, 2, 21567, 3168, 3, 2, 2, 2, 21568, 21569, 7, 85, 2, 2, 21569, 21570, 7, 86, 2, 2, 21570, 21571, 7, 67, 2, 2, 21571, 21572, 7, 86, 2, 2, 21572, 21573, 7, 85, 2, 2, 21573, 21574, 7, 97, 2, 2, 21574, 21575, 7, 81, 2, 2, 21575, 21576, 7, 80, 2, 2, 21576, 21577, 7, 71, 2, 2, 21577, 21578, 7, 97, 2, 2, 21578, 21579, 7, 89, 2, 2, 21579, 21580, 7, 67, 2, 2, 21580, 21581, 7, 91, 2, 2, 21581, 21582, 7, 97, 2, 2, 21582, 21583, 7, 67, 2, 2, 21583, 21584, 7, 80, 2, 2, 21584, 21585, 7, 81, 2, 2, 21585, 21586, 7, 88, 2, 2, 21586, 21587, 7, 67, 2, 2, 21587, 3170, 3, 2, 2, 2, 21588, 21589, 7, 85, 2, 2, 21589, 21590, 7, 86, 2, 2, 21590, 21591, 7, 67, 2, 2, 21591, 21592, 7, 86, 2, 2, 21592, 21593, 7, 85, 2, 2, 21593, 21594, 7, 97, 2, 2, 21594, 21595, 7, 86, 2, 2, 21595, 21596, 7, 97, 2, 2, 21596, 21597, 7, 86, 2, 2, 21597, 21598, 7, 71, 2, 2, 21598, 21599, 7, 85, 2, 2, 21599, 21600, 7, 86, 2, 2, 21600, 21601, 7, 97, 2, 2, 21601, 21602, 7, 75, 2, 2, 21602, 21603, 7, 80, 2, 2, 21603, 21604, 7, 70, 2, 2, 21604, 21605, 7, 71, 2, 2, 21605, 21606, 7, 82, 2, 2, 21606, 3172, 3, 2, 2, 2, 21607, 21608, 7, 85, 2, 2, 21608, 21609, 7, 86, 2, 2, 21609, 21610, 7, 67, 2, 2, 21610, 21611, 7, 86, 2, 2, 21611, 21612, 7, 85, 2, 2, 21612, 21613, 7, 97, 2, 2, 21613, 21614, 7, 86, 2, 2, 21614, 21615, 7, 97, 2, 2, 21615, 21616, 7, 86, 2, 2, 21616, 21617, 7, 71, 2, 2, 21617, 21618, 7, 85, 2, 2, 21618, 21619, 7, 86, 2, 2, 21619, 21620, 7, 97, 2, 2, 21620, 21621, 7, 75, 2, 2, 21621, 21622, 7, 80, 2, 2, 21622, 21623, 7, 70, 2, 2, 21623, 21624, 7, 71, 2, 2, 21624, 21625, 7, 82, 2, 2, 21625, 21626, 7, 87, 2, 2, 21626, 3174, 3, 2, 2, 2, 21627, 21628, 7, 85, 2, 2, 21628, 21629, 7, 86, 2, 2, 21629, 21630, 7, 67, 2, 2, 21630, 21631, 7, 86, 2, 2, 21631, 21632, 7, 85, 2, 2, 21632, 21633, 7, 97, 2, 2, 21633, 21634, 7, 86, 2, 2, 21634, 21635, 7, 97, 2, 2, 21635, 21636, 7, 86, 2, 2, 21636, 21637, 7, 71, 2, 2, 21637, 21638, 7, 85, 2, 2, 21638, 21639, 7, 86, 2, 2, 21639, 21640, 7, 97, 2, 2, 21640, 21641, 7, 81, 2, 2, 21641, 21642, 7, 80, 2, 2, 21642, 21643, 7, 71, 2, 2, 21643, 3176, 3, 2, 2, 2, 21644, 21645, 7, 85, 2, 2, 21645, 21646, 7, 86, 2, 2, 21646, 21647, 7, 67, 2, 2, 21647, 21648, 7, 86, 2, 2, 21648, 21649, 7, 85, 2, 2, 21649, 21650, 7, 97, 2, 2, 21650, 21651, 7, 86, 2, 2, 21651, 21652, 7, 97, 2, 2, 21652, 21653, 7, 86, 2, 2, 21653, 21654, 7, 71, 2, 2, 21654, 21655, 7, 85, 2, 2, 21655, 21656, 7, 86, 2, 2, 21656, 21657, 7, 97, 2, 2, 21657, 21658, 7, 82, 2, 2, 21658, 21659, 7, 67, 2, 2, 21659, 21660, 7, 75, 2, 2, 21660, 21661, 7, 84, 2, 2, 21661, 21662, 7, 71, 2, 2, 21662, 21663, 7, 70, 2, 2, 21663, 3178, 3, 2, 2, 2, 21664, 21665, 7, 85, 2, 2, 21665, 21666, 7, 86, 2, 2, 21666, 21667, 7, 67, 2, 2, 21667, 21668, 7, 86, 2, 2, 21668, 21669, 7, 85, 2, 2, 21669, 21670, 7, 97, 2, 2, 21670, 21671, 7, 89, 2, 2, 21671, 21672, 7, 85, 2, 2, 21672, 21673, 7, 84, 2, 2, 21673, 21674, 7, 97, 2, 2, 21674, 21675, 7, 86, 2, 2, 21675, 21676, 7, 71, 2, 2, 21676, 21677, 7, 85, 2, 2, 21677, 21678, 7, 86, 2, 2, 21678, 3180, 3, 2, 2, 2, 21679, 21680, 7, 85, 2, 2, 21680, 21681, 7, 86, 2, 2, 21681, 21682, 7, 70, 2, 2, 21682, 21683, 7, 70, 2, 2, 21683, 21684, 7, 71, 2, 2, 21684, 21685, 7, 88, 2, 2, 21685, 21686, 7, 97, 2, 2, 21686, 21687, 7, 82, 2, 2, 21687, 21688, 7, 81, 2, 2, 21688, 21689, 7, 82, 2, 2, 21689, 3182, 3, 2, 2, 2, 21690, 21691, 7, 85, 2, 2, 21691, 21692, 7, 86, 2, 2, 21692, 21693, 7, 70, 2, 2, 21693, 21694, 7, 70, 2, 2, 21694, 21695, 7, 71, 2, 2, 21695, 21696, 7, 88, 2, 2, 21696, 21697, 7, 97, 2, 2, 21697, 21698, 7, 85, 2, 2, 21698, 21699, 7, 67, 2, 2, 21699, 21700, 7, 79, 2, 2, 21700, 21701, 7, 82, 2, 2, 21701, 3184, 3, 2, 2, 2, 21702, 21703, 7, 85, 2, 2, 21703, 21704, 7, 86, 2, 2, 21704, 21705, 7, 81, 2, 2, 21705, 21706, 7, 82, 2, 2, 21706, 3186, 3, 2, 2, 2, 21707, 21708, 7, 85, 2, 2, 21708, 21709, 7, 86, 2, 2, 21709, 21710, 7, 81, 2, 2, 21710, 21711, 7, 84, 2, 2, 21711, 21712, 7, 67, 2, 2, 21712, 21713, 7, 73, 2, 2, 21713, 21714, 7, 71, 2, 2, 21714, 3188, 3, 2, 2, 2, 21715, 21716, 7, 85, 2, 2, 21716, 21717, 7, 86, 2, 2, 21717, 21718, 7, 81, 2, 2, 21718, 21719, 7, 84, 2, 2, 21719, 21720, 7, 71, 2, 2, 21720, 3190, 3, 2, 2, 2, 21721, 21722, 7, 85, 2, 2, 21722, 21723, 7, 86, 2, 2, 21723, 21724, 7, 84, 2, 2, 21724, 21725, 7, 71, 2, 2, 21725, 21726, 7, 67, 2, 2, 21726, 21727, 7, 79, 2, 2, 21727, 21728, 7, 85, 2, 2, 21728, 3192, 3, 2, 2, 2, 21729, 21730, 7, 85, 2, 2, 21730, 21731, 7, 86, 2, 2, 21731, 21732, 7, 84, 2, 2, 21732, 21733, 7, 71, 2, 2, 21733, 21734, 7, 67, 2, 2, 21734, 21735, 7, 79, 2, 2, 21735, 3194, 3, 2, 2, 2, 21736, 21737, 7, 85, 2, 2, 21737, 21738, 7, 86, 2, 2, 21738, 21739, 7, 84, 2, 2, 21739, 21740, 7, 75, 2, 2, 21740, 21741, 7, 69, 2, 2, 21741, 21742, 7, 86, 2, 2, 21742, 3196, 3, 2, 2, 2, 21743, 21744, 7, 85, 2, 2, 21744, 21745, 7, 86, 2, 2, 21745, 21746, 7, 84, 2, 2, 21746, 21747, 7, 75, 2, 2, 21747, 21748, 7, 80, 2, 2, 21748, 21749, 7, 73, 2, 2, 21749, 3198, 3, 2, 2, 2, 21750, 21751, 7, 85, 2, 2, 21751, 21752, 7, 86, 2, 2, 21752, 21753, 7, 84, 2, 2, 21753, 21754, 7, 75, 2, 2, 21754, 21755, 7, 82, 2, 2, 21755, 21756, 7, 71, 2, 2, 21756, 21757, 7, 97, 2, 2, 21757, 21758, 7, 69, 2, 2, 21758, 21759, 7, 81, 2, 2, 21759, 21760, 7, 78, 2, 2, 21760, 21761, 7, 87, 2, 2, 21761, 21762, 7, 79, 2, 2, 21762, 21763, 7, 80, 2, 2, 21763, 21764, 7, 85, 2, 2, 21764, 3200, 3, 2, 2, 2, 21765, 21766, 7, 85, 2, 2, 21766, 21767, 7, 86, 2, 2, 21767, 21768, 7, 84, 2, 2, 21768, 21769, 7, 75, 2, 2, 21769, 21770, 7, 82, 2, 2, 21770, 21771, 7, 71, 2, 2, 21771, 21772, 7, 97, 2, 2, 21772, 21773, 7, 89, 2, 2, 21773, 21774, 7, 75, 2, 2, 21774, 21775, 7, 70, 2, 2, 21775, 21776, 7, 86, 2, 2, 21776, 21777, 7, 74, 2, 2, 21777, 3202, 3, 2, 2, 2, 21778, 21779, 7, 85, 2, 2, 21779, 21780, 7, 86, 2, 2, 21780, 21781, 7, 84, 2, 2, 21781, 21782, 7, 75, 2, 2, 21782, 21783, 7, 82, 2, 2, 21783, 3204, 3, 2, 2, 2, 21784, 21785, 7, 85, 2, 2, 21785, 21786, 7, 86, 2, 2, 21786, 21787, 7, 84, 2, 2, 21787, 21788, 7, 87, 2, 2, 21788, 21789, 7, 69, 2, 2, 21789, 21790, 7, 86, 2, 2, 21790, 21791, 7, 87, 2, 2, 21791, 21792, 7, 84, 2, 2, 21792, 21793, 7, 71, 2, 2, 21793, 3206, 3, 2, 2, 2, 21794, 21795, 7, 85, 2, 2, 21795, 21796, 7, 87, 2, 2, 21796, 21797, 7, 68, 2, 2, 21797, 21798, 7, 79, 2, 2, 21798, 21799, 7, 87, 2, 2, 21799, 21800, 7, 78, 2, 2, 21800, 21801, 7, 86, 2, 2, 21801, 21802, 7, 75, 2, 2, 21802, 21803, 7, 85, 2, 2, 21803, 21804, 7, 71, 2, 2, 21804, 21805, 7, 86, 2, 2, 21805, 3208, 3, 2, 2, 2, 21806, 21807, 7, 85, 2, 2, 21807, 21808, 7, 87, 2, 2, 21808, 21809, 7, 68, 2, 2, 21809, 21810, 7, 82, 2, 2, 21810, 21811, 7, 67, 2, 2, 21811, 21812, 7, 84, 2, 2, 21812, 21813, 7, 86, 2, 2, 21813, 21814, 7, 75, 2, 2, 21814, 21815, 7, 86, 2, 2, 21815, 21816, 7, 75, 2, 2, 21816, 21817, 7, 81, 2, 2, 21817, 21818, 7, 80, 2, 2, 21818, 21819, 7, 97, 2, 2, 21819, 21820, 7, 84, 2, 2, 21820, 21821, 7, 71, 2, 2, 21821, 21822, 7, 78, 2, 2, 21822, 3210, 3, 2, 2, 2, 21823, 21824, 7, 85, 2, 2, 21824, 21825, 7, 87, 2, 2, 21825, 21826, 7, 68, 2, 2, 21826, 21827, 7, 82, 2, 2, 21827, 21828, 7, 67, 2, 2, 21828, 21829, 7, 84, 2, 2, 21829, 21830, 7, 86, 2, 2, 21830, 21831, 7, 75, 2, 2, 21831, 21832, 7, 86, 2, 2, 21832, 21833, 7, 75, 2, 2, 21833, 21834, 7, 81, 2, 2, 21834, 21835, 7, 80, 2, 2, 21835, 21836, 7, 85, 2, 2, 21836, 3212, 3, 2, 2, 2, 21837, 21838, 7, 85, 2, 2, 21838, 21839, 7, 87, 2, 2, 21839, 21840, 7, 68, 2, 2, 21840, 21841, 7, 82, 2, 2, 21841, 21842, 7, 67, 2, 2, 21842, 21843, 7, 84, 2, 2, 21843, 21844, 7, 86, 2, 2, 21844, 21845, 7, 75, 2, 2, 21845, 21846, 7, 86, 2, 2, 21846, 21847, 7, 75, 2, 2, 21847, 21848, 7, 81, 2, 2, 21848, 21849, 7, 80, 2, 2, 21849, 3214, 3, 2, 2, 2, 21850, 21851, 7, 85, 2, 2, 21851, 21852, 7, 87, 2, 2, 21852, 21853, 7, 68, 2, 2, 21853, 21854, 7, 83, 2, 2, 21854, 21855, 7, 87, 2, 2, 21855, 21856, 7, 71, 2, 2, 21856, 21857, 7, 84, 2, 2, 21857, 21858, 7, 75, 2, 2, 21858, 21859, 7, 71, 2, 2, 21859, 21860, 7, 85, 2, 2, 21860, 3216, 3, 2, 2, 2, 21861, 21862, 7, 85, 2, 2, 21862, 21863, 7, 87, 2, 2, 21863, 21864, 7, 68, 2, 2, 21864, 21865, 7, 83, 2, 2, 21865, 21866, 7, 87, 2, 2, 21866, 21867, 7, 71, 2, 2, 21867, 21868, 7, 84, 2, 2, 21868, 21869, 7, 91, 2, 2, 21869, 21870, 7, 97, 2, 2, 21870, 21871, 7, 82, 2, 2, 21871, 21872, 7, 84, 2, 2, 21872, 21873, 7, 87, 2, 2, 21873, 21874, 7, 80, 2, 2, 21874, 21875, 7, 75, 2, 2, 21875, 21876, 7, 80, 2, 2, 21876, 21877, 7, 73, 2, 2, 21877, 3218, 3, 2, 2, 2, 21878, 21879, 7, 85, 2, 2, 21879, 21880, 7, 87, 2, 2, 21880, 21881, 7, 68, 2, 2, 21881, 21882, 7, 85, 2, 2, 21882, 21883, 7, 69, 2, 2, 21883, 21884, 7, 84, 2, 2, 21884, 21885, 7, 75, 2, 2, 21885, 21886, 7, 68, 2, 2, 21886, 21887, 7, 71, 2, 2, 21887, 3220, 3, 2, 2, 2, 21888, 21889, 7, 85, 2, 2, 21889, 21890, 7, 87, 2, 2, 21890, 21891, 7, 68, 2, 2, 21891, 21892, 7, 85, 2, 2, 21892, 21893, 7, 71, 2, 2, 21893, 21894, 7, 86, 2, 2, 21894, 3222, 3, 2, 2, 2, 21895, 21896, 7, 85, 2, 2, 21896, 21897, 7, 87, 2, 2, 21897, 21898, 7, 68, 2, 2, 21898, 21899, 7, 85, 2, 2, 21899, 21900, 7, 86, 2, 2, 21900, 21901, 7, 75, 2, 2, 21901, 21902, 7, 86, 2, 2, 21902, 21903, 7, 87, 2, 2, 21903, 21904, 7, 86, 2, 2, 21904, 21905, 7, 67, 2, 2, 21905, 21906, 7, 68, 2, 2, 21906, 21907, 7, 78, 2, 2, 21907, 21908, 7, 71, 2, 2, 21908, 3224, 3, 2, 2, 2, 21909, 21910, 7, 85, 2, 2, 21910, 21911, 7, 87, 2, 2, 21911, 21912, 7, 68, 2, 2, 21912, 21913, 7, 85, 2, 2, 21913, 21914, 7, 86, 2, 2, 21914, 21915, 7, 84, 2, 2, 21915, 21916, 7, 52, 2, 2, 21916, 3226, 3, 2, 2, 2, 21917, 21918, 7, 85, 2, 2, 21918, 21919, 7, 87, 2, 2, 21919, 21920, 7, 68, 2, 2, 21920, 21921, 7, 85, 2, 2, 21921, 21922, 7, 86, 2, 2, 21922, 21923, 7, 84, 2, 2, 21923, 21924, 7, 54, 2, 2, 21924, 3228, 3, 2, 2, 2, 21925, 21926, 7, 85, 2, 2, 21926, 21927, 7, 87, 2, 2, 21927, 21928, 7, 68, 2, 2, 21928, 21929, 7, 85, 2, 2, 21929, 21930, 7, 86, 2, 2, 21930, 21931, 7, 84, 2, 2, 21931, 21932, 7, 68, 2, 2, 21932, 3230, 3, 2, 2, 2, 21933, 21934, 7, 85, 2, 2, 21934, 21935, 7, 87, 2, 2, 21935, 21936, 7, 68, 2, 2, 21936, 21937, 7, 85, 2, 2, 21937, 21938, 7, 86, 2, 2, 21938, 21939, 7, 84, 2, 2, 21939, 21940, 7, 69, 2, 2, 21940, 3232, 3, 2, 2, 2, 21941, 21942, 7, 85, 2, 2, 21942, 21943, 7, 87, 2, 2, 21943, 21944, 7, 68, 2, 2, 21944, 21945, 7, 86, 2, 2, 21945, 21946, 7, 91, 2, 2, 21946, 21947, 7, 82, 2, 2, 21947, 21948, 7, 71, 2, 2, 21948, 3234, 3, 2, 2, 2, 21949, 21950, 7, 85, 2, 2, 21950, 21951, 7, 87, 2, 2, 21951, 21952, 7, 69, 2, 2, 21952, 21953, 7, 69, 2, 2, 21953, 21954, 7, 71, 2, 2, 21954, 21955, 7, 85, 2, 2, 21955, 21956, 7, 85, 2, 2, 21956, 21957, 7, 72, 2, 2, 21957, 21958, 7, 87, 2, 2, 21958, 21959, 7, 78, 2, 2, 21959, 3236, 3, 2, 2, 2, 21960, 21961, 7, 85, 2, 2, 21961, 21962, 7, 87, 2, 2, 21962, 21963, 7, 69, 2, 2, 21963, 21964, 7, 69, 2, 2, 21964, 21965, 7, 71, 2, 2, 21965, 21966, 7, 85, 2, 2, 21966, 21967, 7, 85, 2, 2, 21967, 3238, 3, 2, 2, 2, 21968, 21969, 7, 85, 2, 2, 21969, 21970, 7, 87, 2, 2, 21970, 21971, 7, 79, 2, 2, 21971, 21972, 7, 79, 2, 2, 21972, 21973, 7, 67, 2, 2, 21973, 21974, 7, 84, 2, 2, 21974, 21975, 7, 91, 2, 2, 21975, 3240, 3, 2, 2, 2, 21976, 21977, 7, 85, 2, 2, 21977, 21978, 7, 87, 2, 2, 21978, 21979, 7, 82, 2, 2, 21979, 21980, 7, 82, 2, 2, 21980, 21981, 7, 78, 2, 2, 21981, 21982, 7, 71, 2, 2, 21982, 21983, 7, 79, 2, 2, 21983, 21984, 7, 71, 2, 2, 21984, 21985, 7, 80, 2, 2, 21985, 21986, 7, 86, 2, 2, 21986, 21987, 7, 67, 2, 2, 21987, 21988, 7, 78, 2, 2, 21988, 3242, 3, 2, 2, 2, 21989, 21990, 7, 85, 2, 2, 21990, 21991, 7, 87, 2, 2, 21991, 21992, 7, 85, 2, 2, 21992, 21993, 7, 82, 2, 2, 21993, 21994, 7, 71, 2, 2, 21994, 21995, 7, 80, 2, 2, 21995, 21996, 7, 70, 2, 2, 21996, 3244, 3, 2, 2, 2, 21997, 21998, 7, 85, 2, 2, 21998, 21999, 7, 89, 2, 2, 21999, 22000, 7, 67, 2, 2, 22000, 22001, 7, 82, 2, 2, 22001, 22002, 7, 97, 2, 2, 22002, 22003, 7, 76, 2, 2, 22003, 22004, 7, 81, 2, 2, 22004, 22005, 7, 75, 2, 2, 22005, 22006, 7, 80, 2, 2, 22006, 22007, 7, 97, 2, 2, 22007, 22008, 7, 75, 2, 2, 22008, 22009, 7, 80, 2, 2, 22009, 22010, 7, 82, 2, 2, 22010, 22011, 7, 87, 2, 2, 22011, 22012, 7, 86, 2, 2, 22012, 22013, 7, 85, 2, 2, 22013, 3246, 3, 2, 2, 2, 22014, 22015, 7, 85, 2, 2, 22015, 22016, 7, 89, 2, 2, 22016, 22017, 7, 75, 2, 2, 22017, 22018, 7, 86, 2, 2, 22018, 22019, 7, 69, 2, 2, 22019, 22020, 7, 74, 2, 2, 22020, 22021, 7, 81, 2, 2, 22021, 22022, 7, 88, 2, 2, 22022, 22023, 7, 71, 2, 2, 22023, 22024, 7, 84, 2, 2, 22024, 3248, 3, 2, 2, 2, 22025, 22026, 7, 85, 2, 2, 22026, 22027, 7, 89, 2, 2, 22027, 22028, 7, 75, 2, 2, 22028, 22029, 7, 86, 2, 2, 22029, 22030, 7, 69, 2, 2, 22030, 22031, 7, 74, 2, 2, 22031, 3250, 3, 2, 2, 2, 22032, 22033, 7, 85, 2, 2, 22033, 22034, 7, 91, 2, 2, 22034, 22035, 7, 80, 2, 2, 22035, 22036, 7, 69, 2, 2, 22036, 22037, 7, 74, 2, 2, 22037, 22038, 7, 84, 2, 2, 22038, 22039, 7, 81, 2, 2, 22039, 22040, 7, 80, 2, 2, 22040, 22041, 7, 81, 2, 2, 22041, 22042, 7, 87, 2, 2, 22042, 22043, 7, 85, 2, 2, 22043, 3252, 3, 2, 2, 2, 22044, 22045, 7, 85, 2, 2, 22045, 22046, 7, 91, 2, 2, 22046, 22047, 7, 80, 2, 2, 22047, 22048, 7, 69, 2, 2, 22048, 3254, 3, 2, 2, 2, 22049, 22050, 7, 85, 2, 2, 22050, 22051, 7, 91, 2, 2, 22051, 22052, 7, 80, 2, 2, 22052, 22053, 7, 81, 2, 2, 22053, 22054, 7, 80, 2, 2, 22054, 22055, 7, 91, 2, 2, 22055, 22056, 7, 79, 2, 2, 22056, 3256, 3, 2, 2, 2, 22057, 22058, 7, 85, 2, 2, 22058, 22059, 7, 91, 2, 2, 22059, 22060, 7, 85, 2, 2, 22060, 22061, 7, 67, 2, 2, 22061, 22062, 7, 85, 2, 2, 22062, 22063, 7, 79, 2, 2, 22063, 3258, 3, 2, 2, 2, 22064, 22065, 7, 85, 2, 2, 22065, 22066, 7, 91, 2, 2, 22066, 22067, 7, 85, 2, 2, 22067, 22068, 7, 97, 2, 2, 22068, 22069, 7, 67, 2, 2, 22069, 22070, 7, 87, 2, 2, 22070, 22071, 7, 70, 2, 2, 22071, 22072, 7, 75, 2, 2, 22072, 22073, 7, 86, 2, 2, 22073, 3260, 3, 2, 2, 2, 22074, 22075, 7, 85, 2, 2, 22075, 22076, 7, 91, 2, 2, 22076, 22077, 7, 85, 2, 2, 22077, 22078, 7, 67, 2, 2, 22078, 22079, 7, 87, 2, 2, 22079, 22080, 7, 90, 2, 2, 22080, 3262, 3, 2, 2, 2, 22081, 22082, 7, 85, 2, 2, 22082, 22083, 7, 91, 2, 2, 22083, 22084, 7, 85, 2, 2, 22084, 22085, 7, 68, 2, 2, 22085, 22086, 7, 67, 2, 2, 22086, 22087, 7, 69, 2, 2, 22087, 22088, 7, 77, 2, 2, 22088, 22089, 7, 87, 2, 2, 22089, 22090, 7, 82, 2, 2, 22090, 3264, 3, 2, 2, 2, 22091, 22092, 7, 85, 2, 2, 22092, 22093, 7, 91, 2, 2, 22093, 22094, 7, 85, 2, 2, 22094, 22095, 7, 97, 2, 2, 22095, 22096, 7, 69, 2, 2, 22096, 22097, 7, 74, 2, 2, 22097, 22098, 7, 71, 2, 2, 22098, 22099, 7, 69, 2, 2, 22099, 22100, 7, 77, 2, 2, 22100, 22101, 7, 67, 2, 2, 22101, 22102, 7, 69, 2, 2, 22102, 22103, 7, 78, 2, 2, 22103, 3266, 3, 2, 2, 2, 22104, 22105, 7, 85, 2, 2, 22105, 22106, 7, 91, 2, 2, 22106, 22107, 7, 85, 2, 2, 22107, 22108, 7, 97, 2, 2, 22108, 22109, 7, 69, 2, 2, 22109, 22110, 7, 74, 2, 2, 22110, 22111, 7, 71, 2, 2, 22111, 22112, 7, 69, 2, 2, 22112, 22113, 7, 77, 2, 2, 22113, 22114, 7, 97, 2, 2, 22114, 22115, 7, 82, 2, 2, 22115, 22116, 7, 84, 2, 2, 22116, 22117, 7, 75, 2, 2, 22117, 22118, 7, 88, 2, 2, 22118, 22119, 7, 75, 2, 2, 22119, 22120, 7, 78, 2, 2, 22120, 22121, 7, 71, 2, 2, 22121, 22122, 7, 73, 2, 2, 22122, 22123, 7, 71, 2, 2, 22123, 3268, 3, 2, 2, 2, 22124, 22125, 7, 85, 2, 2, 22125, 22126, 7, 91, 2, 2, 22126, 22127, 7, 85, 2, 2, 22127, 22128, 7, 97, 2, 2, 22128, 22129, 7, 69, 2, 2, 22129, 22130, 7, 81, 2, 2, 22130, 22131, 7, 80, 2, 2, 22131, 22132, 7, 80, 2, 2, 22132, 22133, 7, 71, 2, 2, 22133, 22134, 7, 69, 2, 2, 22134, 22135, 7, 86, 2, 2, 22135, 22136, 7, 97, 2, 2, 22136, 22137, 7, 68, 2, 2, 22137, 22138, 7, 91, 2, 2, 22138, 22139, 7, 97, 2, 2, 22139, 22140, 7, 82, 2, 2, 22140, 22141, 7, 67, 2, 2, 22141, 22142, 7, 86, 2, 2, 22142, 22143, 7, 74, 2, 2, 22143, 3270, 3, 2, 2, 2, 22144, 22145, 7, 85, 2, 2, 22145, 22146, 7, 91, 2, 2, 22146, 22147, 7, 85, 2, 2, 22147, 22148, 7, 97, 2, 2, 22148, 22149, 7, 69, 2, 2, 22149, 22150, 7, 81, 2, 2, 22150, 22151, 7, 80, 2, 2, 22151, 22152, 7, 86, 2, 2, 22152, 22153, 7, 71, 2, 2, 22153, 22154, 7, 90, 2, 2, 22154, 22155, 7, 86, 2, 2, 22155, 3272, 3, 2, 2, 2, 22156, 22157, 7, 85, 2, 2, 22157, 22158, 7, 91, 2, 2, 22158, 22159, 7, 85, 2, 2, 22159, 22160, 7, 70, 2, 2, 22160, 22161, 7, 67, 2, 2, 22161, 22162, 7, 86, 2, 2, 22162, 22163, 7, 71, 2, 2, 22163, 3274, 3, 2, 2, 2, 22164, 22165, 7, 85, 2, 2, 22165, 22166, 7, 91, 2, 2, 22166, 22167, 7, 85, 2, 2, 22167, 22168, 7, 70, 2, 2, 22168, 22169, 7, 68, 2, 2, 22169, 22170, 7, 67, 2, 2, 22170, 3276, 3, 2, 2, 2, 22171, 22172, 7, 85, 2, 2, 22172, 22173, 7, 91, 2, 2, 22173, 22174, 7, 85, 2, 2, 22174, 22175, 7, 97, 2, 2, 22175, 22176, 7, 70, 2, 2, 22176, 22177, 7, 68, 2, 2, 22177, 22178, 7, 87, 2, 2, 22178, 22179, 7, 84, 2, 2, 22179, 22180, 7, 75, 2, 2, 22180, 22181, 7, 73, 2, 2, 22181, 22182, 7, 71, 2, 2, 22182, 22183, 7, 80, 2, 2, 22183, 3278, 3, 2, 2, 2, 22184, 22185, 7, 85, 2, 2, 22185, 22186, 7, 91, 2, 2, 22186, 22187, 7, 85, 2, 2, 22187, 22188, 7, 70, 2, 2, 22188, 22189, 7, 73, 2, 2, 22189, 3280, 3, 2, 2, 2, 22190, 22191, 7, 85, 2, 2, 22191, 22192, 7, 91, 2, 2, 22192, 22193, 7, 85, 2, 2, 22193, 22194, 7, 97, 2, 2, 22194, 22195, 7, 70, 2, 2, 22195, 22196, 7, 78, 2, 2, 22196, 22197, 7, 97, 2, 2, 22197, 22198, 7, 69, 2, 2, 22198, 22199, 7, 87, 2, 2, 22199, 22200, 7, 84, 2, 2, 22200, 22201, 7, 85, 2, 2, 22201, 22202, 7, 81, 2, 2, 22202, 22203, 7, 84, 2, 2, 22203, 3282, 3, 2, 2, 2, 22204, 22205, 7, 85, 2, 2, 22205, 22206, 7, 91, 2, 2, 22206, 22207, 7, 85, 2, 2, 22207, 22208, 7, 97, 2, 2, 22208, 22209, 7, 70, 2, 2, 22209, 22210, 7, 79, 2, 2, 22210, 22211, 7, 97, 2, 2, 22211, 22212, 7, 84, 2, 2, 22212, 22213, 7, 90, 2, 2, 22213, 22214, 7, 72, 2, 2, 22214, 22215, 7, 81, 2, 2, 22215, 22216, 7, 84, 2, 2, 22216, 22217, 7, 79, 2, 2, 22217, 22218, 7, 97, 2, 2, 22218, 22219, 7, 69, 2, 2, 22219, 22220, 7, 74, 2, 2, 22220, 22221, 7, 84, 2, 2, 22221, 3284, 3, 2, 2, 2, 22222, 22223, 7, 85, 2, 2, 22223, 22224, 7, 91, 2, 2, 22224, 22225, 7, 85, 2, 2, 22225, 22226, 7, 97, 2, 2, 22226, 22227, 7, 70, 2, 2, 22227, 22228, 7, 79, 2, 2, 22228, 22229, 7, 97, 2, 2, 22229, 22230, 7, 84, 2, 2, 22230, 22231, 7, 90, 2, 2, 22231, 22232, 7, 72, 2, 2, 22232, 22233, 7, 81, 2, 2, 22233, 22234, 7, 84, 2, 2, 22234, 22235, 7, 79, 2, 2, 22235, 22236, 7, 97, 2, 2, 22236, 22237, 7, 80, 2, 2, 22237, 22238, 7, 87, 2, 2, 22238, 22239, 7, 79, 2, 2, 22239, 3286, 3, 2, 2, 2, 22240, 22241, 7, 85, 2, 2, 22241, 22242, 7, 91, 2, 2, 22242, 22243, 7, 85, 2, 2, 22243, 22244, 7, 97, 2, 2, 22244, 22245, 7, 70, 2, 2, 22245, 22246, 7, 81, 2, 2, 22246, 22247, 7, 79, 2, 2, 22247, 22248, 7, 97, 2, 2, 22248, 22249, 7, 69, 2, 2, 22249, 22250, 7, 81, 2, 2, 22250, 22251, 7, 79, 2, 2, 22251, 22252, 7, 82, 2, 2, 22252, 22253, 7, 67, 2, 2, 22253, 22254, 7, 84, 2, 2, 22254, 22255, 7, 71, 2, 2, 22255, 3288, 3, 2, 2, 2, 22256, 22257, 7, 85, 2, 2, 22257, 22258, 7, 91, 2, 2, 22258, 22259, 7, 85, 2, 2, 22259, 22260, 7, 97, 2, 2, 22260, 22261, 7, 70, 2, 2, 22261, 22262, 7, 85, 2, 2, 22262, 22263, 7, 86, 2, 2, 22263, 22264, 7, 97, 2, 2, 22264, 22265, 7, 82, 2, 2, 22265, 22266, 7, 84, 2, 2, 22266, 22267, 7, 75, 2, 2, 22267, 22268, 7, 79, 2, 2, 22268, 22269, 7, 52, 2, 2, 22269, 22270, 7, 85, 2, 2, 22270, 22271, 7, 71, 2, 2, 22271, 22272, 7, 69, 2, 2, 22272, 3290, 3, 2, 2, 2, 22273, 22274, 7, 85, 2, 2, 22274, 22275, 7, 91, 2, 2, 22275, 22276, 7, 85, 2, 2, 22276, 22277, 7, 97, 2, 2, 22277, 22278, 7, 70, 2, 2, 22278, 22279, 7, 85, 2, 2, 22279, 22280, 7, 86, 2, 2, 22280, 22281, 7, 97, 2, 2, 22281, 22282, 7, 85, 2, 2, 22282, 22283, 7, 71, 2, 2, 22283, 22284, 7, 69, 2, 2, 22284, 22285, 7, 52, 2, 2, 22285, 22286, 7, 82, 2, 2, 22286, 22287, 7, 84, 2, 2, 22287, 22288, 7, 75, 2, 2, 22288, 22289, 7, 79, 2, 2, 22289, 3292, 3, 2, 2, 2, 22290, 22291, 7, 85, 2, 2, 22291, 22292, 7, 91, 2, 2, 22292, 22293, 7, 85, 2, 2, 22293, 22294, 7, 97, 2, 2, 22294, 22295, 7, 71, 2, 2, 22295, 22296, 7, 86, 2, 2, 22296, 22297, 7, 97, 2, 2, 22297, 22298, 7, 68, 2, 2, 22298, 22299, 7, 72, 2, 2, 22299, 22300, 7, 75, 2, 2, 22300, 22301, 7, 78, 2, 2, 22301, 22302, 7, 71, 2, 2, 22302, 22303, 7, 97, 2, 2, 22303, 22304, 7, 86, 2, 2, 22304, 22305, 7, 81, 2, 2, 22305, 22306, 7, 97, 2, 2, 22306, 22307, 7, 84, 2, 2, 22307, 22308, 7, 67, 2, 2, 22308, 22309, 7, 89, 2, 2, 22309, 3294, 3, 2, 2, 2, 22310, 22311, 7, 85, 2, 2, 22311, 22312, 7, 91, 2, 2, 22312, 22313, 7, 85, 2, 2, 22313, 22314, 7, 97, 2, 2, 22314, 22315, 7, 71, 2, 2, 22315, 22316, 7, 86, 2, 2, 22316, 22317, 7, 97, 2, 2, 22317, 22318, 7, 68, 2, 2, 22318, 22319, 7, 78, 2, 2, 22319, 22320, 7, 81, 2, 2, 22320, 22321, 7, 68, 2, 2, 22321, 22322, 7, 97, 2, 2, 22322, 22323, 7, 86, 2, 2, 22323, 22324, 7, 81, 2, 2, 22324, 22325, 7, 97, 2, 2, 22325, 22326, 7, 75, 2, 2, 22326, 22327, 7, 79, 2, 2, 22327, 22328, 7, 67, 2, 2, 22328, 22329, 7, 73, 2, 2, 22329, 22330, 7, 71, 2, 2, 22330, 3296, 3, 2, 2, 2, 22331, 22332, 7, 85, 2, 2, 22332, 22333, 7, 91, 2, 2, 22333, 22334, 7, 85, 2, 2, 22334, 22335, 7, 97, 2, 2, 22335, 22336, 7, 71, 2, 2, 22336, 22337, 7, 86, 2, 2, 22337, 22338, 7, 97, 2, 2, 22338, 22339, 7, 75, 2, 2, 22339, 22340, 7, 79, 2, 2, 22340, 22341, 7, 67, 2, 2, 22341, 22342, 7, 73, 2, 2, 22342, 22343, 7, 71, 2, 2, 22343, 22344, 7, 97, 2, 2, 22344, 22345, 7, 86, 2, 2, 22345, 22346, 7, 81, 2, 2, 22346, 22347, 7, 97, 2, 2, 22347, 22348, 7, 68, 2, 2, 22348, 22349, 7, 78, 2, 2, 22349, 22350, 7, 81, 2, 2, 22350, 22351, 7, 68, 2, 2, 22351, 3298, 3, 2, 2, 2, 22352, 22353, 7, 85, 2, 2, 22353, 22354, 7, 91, 2, 2, 22354, 22355, 7, 85, 2, 2, 22355, 22356, 7, 97, 2, 2, 22356, 22357, 7, 71, 2, 2, 22357, 22358, 7, 86, 2, 2, 22358, 22359, 7, 97, 2, 2, 22359, 22360, 7, 84, 2, 2, 22360, 22361, 7, 67, 2, 2, 22361, 22362, 7, 89, 2, 2, 22362, 22363, 7, 97, 2, 2, 22363, 22364, 7, 86, 2, 2, 22364, 22365, 7, 81, 2, 2, 22365, 22366, 7, 97, 2, 2, 22366, 22367, 7, 68, 2, 2, 22367, 22368, 7, 72, 2, 2, 22368, 22369, 7, 75, 2, 2, 22369, 22370, 7, 78, 2, 2, 22370, 22371, 7, 71, 2, 2, 22371, 3300, 3, 2, 2, 2, 22372, 22373, 7, 85, 2, 2, 22373, 22374, 7, 91, 2, 2, 22374, 22375, 7, 85, 2, 2, 22375, 22376, 7, 97, 2, 2, 22376, 22377, 7, 71, 2, 2, 22377, 22378, 7, 90, 2, 2, 22378, 22379, 7, 86, 2, 2, 22379, 22380, 7, 82, 2, 2, 22380, 22381, 7, 70, 2, 2, 22381, 22382, 7, 86, 2, 2, 22382, 22383, 7, 90, 2, 2, 22383, 22384, 7, 86, 2, 2, 22384, 3302, 3, 2, 2, 2, 22385, 22386, 7, 85, 2, 2, 22386, 22387, 7, 91, 2, 2, 22387, 22388, 7, 85, 2, 2, 22388, 22389, 7, 97, 2, 2, 22389, 22390, 7, 71, 2, 2, 22390, 22391, 7, 90, 2, 2, 22391, 22392, 7, 86, 2, 2, 22392, 22393, 7, 84, 2, 2, 22393, 22394, 7, 67, 2, 2, 22394, 22395, 7, 69, 2, 2, 22395, 22396, 7, 86, 2, 2, 22396, 22397, 7, 97, 2, 2, 22397, 22398, 7, 87, 2, 2, 22398, 22399, 7, 86, 2, 2, 22399, 22400, 7, 69, 2, 2, 22400, 3304, 3, 2, 2, 2, 22401, 22402, 7, 85, 2, 2, 22402, 22403, 7, 91, 2, 2, 22403, 22404, 7, 85, 2, 2, 22404, 22405, 7, 97, 2, 2, 22405, 22406, 7, 72, 2, 2, 22406, 22407, 7, 68, 2, 2, 22407, 22408, 7, 86, 2, 2, 22408, 22409, 7, 97, 2, 2, 22409, 22410, 7, 75, 2, 2, 22410, 22411, 7, 80, 2, 2, 22411, 22412, 7, 85, 2, 2, 22412, 22413, 7, 70, 2, 2, 22413, 22414, 7, 71, 2, 2, 22414, 22415, 7, 78, 2, 2, 22415, 3306, 3, 2, 2, 2, 22416, 22417, 7, 85, 2, 2, 22417, 22418, 7, 91, 2, 2, 22418, 22419, 7, 85, 2, 2, 22419, 22420, 7, 97, 2, 2, 22420, 22421, 7, 72, 2, 2, 22421, 22422, 7, 75, 2, 2, 22422, 22423, 7, 78, 2, 2, 22423, 22424, 7, 86, 2, 2, 22424, 22425, 7, 71, 2, 2, 22425, 22426, 7, 84, 2, 2, 22426, 22427, 7, 97, 2, 2, 22427, 22428, 7, 67, 2, 2, 22428, 22429, 7, 69, 2, 2, 22429, 22430, 7, 78, 2, 2, 22430, 22431, 7, 85, 2, 2, 22431, 3308, 3, 2, 2, 2, 22432, 22433, 7, 85, 2, 2, 22433, 22434, 7, 91, 2, 2, 22434, 22435, 7, 85, 2, 2, 22435, 22436, 7, 97, 2, 2, 22436, 22437, 7, 72, 2, 2, 22437, 22438, 7, 80, 2, 2, 22438, 22439, 7, 79, 2, 2, 22439, 22440, 7, 67, 2, 2, 22440, 22441, 7, 86, 2, 2, 22441, 22442, 7, 69, 2, 2, 22442, 22443, 7, 74, 2, 2, 22443, 22444, 7, 71, 2, 2, 22444, 22445, 7, 85, 2, 2, 22445, 3310, 3, 2, 2, 2, 22446, 22447, 7, 85, 2, 2, 22447, 22448, 7, 91, 2, 2, 22448, 22449, 7, 85, 2, 2, 22449, 22450, 7, 97, 2, 2, 22450, 22451, 7, 72, 2, 2, 22451, 22452, 7, 80, 2, 2, 22452, 22453, 7, 84, 2, 2, 22453, 22454, 7, 71, 2, 2, 22454, 22455, 7, 82, 2, 2, 22455, 22456, 7, 78, 2, 2, 22456, 22457, 7, 67, 2, 2, 22457, 22458, 7, 69, 2, 2, 22458, 22459, 7, 71, 2, 2, 22459, 3312, 3, 2, 2, 2, 22460, 22461, 7, 85, 2, 2, 22461, 22462, 7, 91, 2, 2, 22462, 22463, 7, 85, 2, 2, 22463, 22464, 7, 97, 2, 2, 22464, 22465, 7, 73, 2, 2, 22465, 22466, 7, 71, 2, 2, 22466, 22467, 7, 86, 2, 2, 22467, 22468, 7, 97, 2, 2, 22468, 22469, 7, 67, 2, 2, 22469, 22470, 7, 69, 2, 2, 22470, 22471, 7, 78, 2, 2, 22471, 22472, 7, 75, 2, 2, 22472, 22473, 7, 70, 2, 2, 22473, 22474, 7, 85, 2, 2, 22474, 3314, 3, 2, 2, 2, 22475, 22476, 7, 85, 2, 2, 22476, 22477, 7, 91, 2, 2, 22477, 22478, 7, 85, 2, 2, 22478, 22479, 7, 97, 2, 2, 22479, 22480, 7, 73, 2, 2, 22480, 22481, 7, 71, 2, 2, 22481, 22482, 7, 86, 2, 2, 22482, 22483, 7, 97, 2, 2, 22483, 22484, 7, 69, 2, 2, 22484, 22485, 7, 81, 2, 2, 22485, 22486, 7, 78, 2, 2, 22486, 22487, 7, 97, 2, 2, 22487, 22488, 7, 67, 2, 2, 22488, 22489, 7, 69, 2, 2, 22489, 22490, 7, 78, 2, 2, 22490, 22491, 7, 75, 2, 2, 22491, 22492, 7, 70, 2, 2, 22492, 22493, 7, 85, 2, 2, 22493, 3316, 3, 2, 2, 2, 22494, 22495, 7, 85, 2, 2, 22495, 22496, 7, 91, 2, 2, 22496, 22497, 7, 85, 2, 2, 22497, 22498, 7, 97, 2, 2, 22498, 22499, 7, 73, 2, 2, 22499, 22500, 7, 71, 2, 2, 22500, 22501, 7, 86, 2, 2, 22501, 22502, 7, 97, 2, 2, 22502, 22503, 7, 82, 2, 2, 22503, 22504, 7, 84, 2, 2, 22504, 22505, 7, 75, 2, 2, 22505, 22506, 7, 88, 2, 2, 22506, 22507, 7, 75, 2, 2, 22507, 22508, 7, 78, 2, 2, 22508, 22509, 7, 71, 2, 2, 22509, 22510, 7, 73, 2, 2, 22510, 22511, 7, 71, 2, 2, 22511, 22512, 7, 85, 2, 2, 22512, 3318, 3, 2, 2, 2, 22513, 22514, 7, 85, 2, 2, 22514, 22515, 7, 91, 2, 2, 22515, 22516, 7, 85, 2, 2, 22516, 22517, 7, 97, 2, 2, 22517, 22518, 7, 73, 2, 2, 22518, 22519, 7, 71, 2, 2, 22519, 22520, 7, 86, 2, 2, 22520, 22521, 7, 86, 2, 2, 22521, 22522, 7, 81, 2, 2, 22522, 22523, 7, 77, 2, 2, 22523, 22524, 7, 71, 2, 2, 22524, 22525, 7, 80, 2, 2, 22525, 22526, 7, 75, 2, 2, 22526, 22527, 7, 70, 2, 2, 22527, 3320, 3, 2, 2, 2, 22528, 22529, 7, 85, 2, 2, 22529, 22530, 7, 91, 2, 2, 22530, 22531, 7, 85, 2, 2, 22531, 22532, 7, 97, 2, 2, 22532, 22533, 7, 73, 2, 2, 22533, 22534, 7, 71, 2, 2, 22534, 22535, 7, 86, 2, 2, 22535, 22536, 7, 90, 2, 2, 22536, 22537, 7, 86, 2, 2, 22537, 22538, 7, 75, 2, 2, 22538, 22539, 7, 88, 2, 2, 22539, 22540, 7, 67, 2, 2, 22540, 22541, 7, 78, 2, 2, 22541, 3322, 3, 2, 2, 2, 22542, 22543, 7, 85, 2, 2, 22543, 22544, 7, 91, 2, 2, 22544, 22545, 7, 85, 2, 2, 22545, 22546, 7, 97, 2, 2, 22546, 22547, 7, 73, 2, 2, 22547, 22548, 7, 87, 2, 2, 22548, 22549, 7, 75, 2, 2, 22549, 22550, 7, 70, 2, 2, 22550, 3324, 3, 2, 2, 2, 22551, 22552, 7, 85, 2, 2, 22552, 22553, 7, 91, 2, 2, 22553, 22554, 7, 85, 2, 2, 22554, 22555, 7, 73, 2, 2, 22555, 22556, 7, 87, 2, 2, 22556, 22557, 7, 75, 2, 2, 22557, 22558, 7, 70, 2, 2, 22558, 3326, 3, 2, 2, 2, 22559, 22560, 7, 85, 2, 2, 22560, 22561, 7, 91, 2, 2, 22561, 22562, 7, 85, 2, 2, 22562, 22563, 7, 77, 2, 2, 22563, 22564, 7, 79, 2, 2, 22564, 3328, 3, 2, 2, 2, 22565, 22566, 7, 85, 2, 2, 22566, 22567, 7, 91, 2, 2, 22567, 22568, 7, 85, 2, 2, 22568, 22569, 7, 97, 2, 2, 22569, 22570, 7, 79, 2, 2, 22570, 22571, 7, 67, 2, 2, 22571, 22572, 7, 77, 2, 2, 22572, 22573, 7, 71, 2, 2, 22573, 22574, 7, 97, 2, 2, 22574, 22575, 7, 90, 2, 2, 22575, 22576, 7, 79, 2, 2, 22576, 22577, 7, 78, 2, 2, 22577, 22578, 7, 80, 2, 2, 22578, 22579, 7, 81, 2, 2, 22579, 22580, 7, 70, 2, 2, 22580, 22581, 7, 71, 2, 2, 22581, 22582, 7, 75, 2, 2, 22582, 22583, 7, 70, 2, 2, 22583, 3330, 3, 2, 2, 2, 22584, 22585, 7, 85, 2, 2, 22585, 22586, 7, 91, 2, 2, 22586, 22587, 7, 85, 2, 2, 22587, 22588, 7, 97, 2, 2, 22588, 22589, 7, 79, 2, 2, 22589, 22590, 7, 67, 2, 2, 22590, 22591, 7, 77, 2, 2, 22591, 22592, 7, 71, 2, 2, 22592, 22593, 7, 90, 2, 2, 22593, 22594, 7, 79, 2, 2, 22594, 22595, 7, 78, 2, 2, 22595, 3332, 3, 2, 2, 2, 22596, 22597, 7, 85, 2, 2, 22597, 22598, 7, 91, 2, 2, 22598, 22599, 7, 85, 2, 2, 22599, 22600, 7, 97, 2, 2, 22600, 22601, 7, 79, 2, 2, 22601, 22602, 7, 77, 2, 2, 22602, 22603, 7, 90, 2, 2, 22603, 22604, 7, 79, 2, 2, 22604, 22605, 7, 78, 2, 2, 22605, 22606, 7, 67, 2, 2, 22606, 22607, 7, 86, 2, 2, 22607, 22608, 7, 86, 2, 2, 22608, 22609, 7, 84, 2, 2, 22609, 3334, 3, 2, 2, 2, 22610, 22611, 7, 85, 2, 2, 22611, 22612, 7, 91, 2, 2, 22612, 22613, 7, 85, 2, 2, 22613, 22614, 7, 97, 2, 2, 22614, 22615, 7, 79, 2, 2, 22615, 22616, 7, 77, 2, 2, 22616, 22617, 7, 90, 2, 2, 22617, 22618, 7, 86, 2, 2, 22618, 22619, 7, 75, 2, 2, 22619, 3336, 3, 2, 2, 2, 22620, 22621, 7, 85, 2, 2, 22621, 22622, 7, 91, 2, 2, 22622, 22623, 7, 85, 2, 2, 22623, 22624, 7, 81, 2, 2, 22624, 22625, 7, 68, 2, 2, 22625, 22626, 7, 76, 2, 2, 22626, 3338, 3, 2, 2, 2, 22627, 22628, 7, 85, 2, 2, 22628, 22629, 7, 91, 2, 2, 22629, 22630, 7, 85, 2, 2, 22630, 22631, 7, 97, 2, 2, 22631, 22632, 7, 81, 2, 2, 22632, 22633, 7, 82, 2, 2, 22633, 22634, 7, 97, 2, 2, 22634, 22635, 7, 67, 2, 2, 22635, 22636, 7, 70, 2, 2, 22636, 22637, 7, 86, 2, 2, 22637, 22638, 7, 52, 2, 2, 22638, 22639, 7, 68, 2, 2, 22639, 22640, 7, 75, 2, 2, 22640, 22641, 7, 80, 2, 2, 22641, 3340, 3, 2, 2, 2, 22642, 22643, 7, 85, 2, 2, 22643, 22644, 7, 91, 2, 2, 22644, 22645, 7, 85, 2, 2, 22645, 22646, 7, 97, 2, 2, 22646, 22647, 7, 81, 2, 2, 22647, 22648, 7, 82, 2, 2, 22648, 22649, 7, 97, 2, 2, 22649, 22650, 7, 67, 2, 2, 22650, 22651, 7, 70, 2, 2, 22651, 22652, 7, 86, 2, 2, 22652, 22653, 7, 69, 2, 2, 22653, 22654, 7, 81, 2, 2, 22654, 22655, 7, 80, 2, 2, 22655, 22656, 7, 85, 2, 2, 22656, 3342, 3, 2, 2, 2, 22657, 22658, 7, 85, 2, 2, 22658, 22659, 7, 91, 2, 2, 22659, 22660, 7, 85, 2, 2, 22660, 22661, 7, 97, 2, 2, 22661, 22662, 7, 81, 2, 2, 22662, 22663, 7, 82, 2, 2, 22663, 22664, 7, 97, 2, 2, 22664, 22665, 7, 67, 2, 2, 22665, 22666, 7, 78, 2, 2, 22666, 22667, 7, 85, 2, 2, 22667, 22668, 7, 69, 2, 2, 22668, 22669, 7, 84, 2, 2, 22669, 22670, 7, 88, 2, 2, 22670, 22671, 7, 67, 2, 2, 22671, 22672, 7, 78, 2, 2, 22672, 3344, 3, 2, 2, 2, 22673, 22674, 7, 85, 2, 2, 22674, 22675, 7, 91, 2, 2, 22675, 22676, 7, 85, 2, 2, 22676, 22677, 7, 97, 2, 2, 22677, 22678, 7, 81, 2, 2, 22678, 22679, 7, 82, 2, 2, 22679, 22680, 7, 97, 2, 2, 22680, 22681, 7, 67, 2, 2, 22681, 22682, 7, 86, 2, 2, 22682, 22683, 7, 73, 2, 2, 22683, 3346, 3, 2, 2, 2, 22684, 22685, 7, 85, 2, 2, 22685, 22686, 7, 91, 2, 2, 22686, 22687, 7, 85, 2, 2, 22687, 22688, 7, 97, 2, 2, 22688, 22689, 7, 81, 2, 2, 22689, 22690, 7, 82, 2, 2, 22690, 22691, 7, 97, 2, 2, 22691, 22692, 7, 68, 2, 2, 22692, 22693, 7, 75, 2, 2, 22693, 22694, 7, 80, 2, 2, 22694, 22695, 7, 52, 2, 2, 22695, 22696, 7, 67, 2, 2, 22696, 22697, 7, 70, 2, 2, 22697, 22698, 7, 86, 2, 2, 22698, 3348, 3, 2, 2, 2, 22699, 22700, 7, 85, 2, 2, 22700, 22701, 7, 91, 2, 2, 22701, 22702, 7, 85, 2, 2, 22702, 22703, 7, 97, 2, 2, 22703, 22704, 7, 81, 2, 2, 22704, 22705, 7, 82, 2, 2, 22705, 22706, 7, 97, 2, 2, 22706, 22707, 7, 68, 2, 2, 22707, 22708, 7, 75, 2, 2, 22708, 22709, 7, 86, 2, 2, 22709, 22710, 7, 88, 2, 2, 22710, 22711, 7, 71, 2, 2, 22711, 22712, 7, 69, 2, 2, 22712, 3350, 3, 2, 2, 2, 22713, 22714, 7, 85, 2, 2, 22714, 22715, 7, 91, 2, 2, 22715, 22716, 7, 85, 2, 2, 22716, 22717, 7, 97, 2, 2, 22717, 22718, 7, 81, 2, 2, 22718, 22719, 7, 82, 2, 2, 22719, 22720, 7, 97, 2, 2, 22720, 22721, 7, 68, 2, 2, 22721, 22722, 7, 78, 2, 2, 22722, 22723, 7, 52, 2, 2, 22723, 22724, 7, 84, 2, 2, 22724, 3352, 3, 2, 2, 2, 22725, 22726, 7, 85, 2, 2, 22726, 22727, 7, 91, 2, 2, 22727, 22728, 7, 85, 2, 2, 22728, 22729, 7, 97, 2, 2, 22729, 22730, 7, 81, 2, 2, 22730, 22731, 7, 82, 2, 2, 22731, 22732, 7, 97, 2, 2, 22732, 22733, 7, 68, 2, 2, 22733, 22734, 7, 78, 2, 2, 22734, 22735, 7, 81, 2, 2, 22735, 22736, 7, 81, 2, 2, 22736, 22737, 7, 79, 2, 2, 22737, 22738, 7, 97, 2, 2, 22738, 22739, 7, 72, 2, 2, 22739, 22740, 7, 75, 2, 2, 22740, 22741, 7, 78, 2, 2, 22741, 22742, 7, 86, 2, 2, 22742, 22743, 7, 71, 2, 2, 22743, 22744, 7, 84, 2, 2, 22744, 22745, 7, 97, 2, 2, 22745, 22746, 7, 78, 2, 2, 22746, 22747, 7, 75, 2, 2, 22747, 22748, 7, 85, 2, 2, 22748, 22749, 7, 86, 2, 2, 22749, 3354, 3, 2, 2, 2, 22750, 22751, 7, 85, 2, 2, 22751, 22752, 7, 91, 2, 2, 22752, 22753, 7, 85, 2, 2, 22753, 22754, 7, 97, 2, 2, 22754, 22755, 7, 81, 2, 2, 22755, 22756, 7, 82, 2, 2, 22756, 22757, 7, 97, 2, 2, 22757, 22758, 7, 68, 2, 2, 22758, 22759, 7, 78, 2, 2, 22759, 22760, 7, 81, 2, 2, 22760, 22761, 7, 81, 2, 2, 22761, 22762, 7, 79, 2, 2, 22762, 22763, 7, 97, 2, 2, 22763, 22764, 7, 72, 2, 2, 22764, 22765, 7, 75, 2, 2, 22765, 22766, 7, 78, 2, 2, 22766, 22767, 7, 86, 2, 2, 22767, 22768, 7, 71, 2, 2, 22768, 22769, 7, 84, 2, 2, 22769, 3356, 3, 2, 2, 2, 22770, 22771, 7, 85, 2, 2, 22771, 22772, 7, 91, 2, 2, 22772, 22773, 7, 85, 2, 2, 22773, 22774, 7, 97, 2, 2, 22774, 22775, 7, 81, 2, 2, 22775, 22776, 7, 82, 2, 2, 22776, 22777, 7, 97, 2, 2, 22777, 22778, 7, 69, 2, 2, 22778, 22779, 7, 52, 2, 2, 22779, 22780, 7, 69, 2, 2, 22780, 3358, 3, 2, 2, 2, 22781, 22782, 7, 85, 2, 2, 22782, 22783, 7, 91, 2, 2, 22783, 22784, 7, 85, 2, 2, 22784, 22785, 7, 97, 2, 2, 22785, 22786, 7, 81, 2, 2, 22786, 22787, 7, 82, 2, 2, 22787, 22788, 7, 97, 2, 2, 22788, 22789, 7, 69, 2, 2, 22789, 22790, 7, 67, 2, 2, 22790, 22791, 7, 85, 2, 2, 22791, 22792, 7, 86, 2, 2, 22792, 3360, 3, 2, 2, 2, 22793, 22794, 7, 85, 2, 2, 22794, 22795, 7, 91, 2, 2, 22795, 22796, 7, 85, 2, 2, 22796, 22797, 7, 97, 2, 2, 22797, 22798, 7, 81, 2, 2, 22798, 22799, 7, 82, 2, 2, 22799, 22800, 7, 97, 2, 2, 22800, 22801, 7, 69, 2, 2, 22801, 22802, 7, 71, 2, 2, 22802, 22803, 7, 73, 2, 2, 22803, 3362, 3, 2, 2, 2, 22804, 22805, 7, 85, 2, 2, 22805, 22806, 7, 91, 2, 2, 22806, 22807, 7, 85, 2, 2, 22807, 22808, 7, 97, 2, 2, 22808, 22809, 7, 81, 2, 2, 22809, 22810, 7, 82, 2, 2, 22810, 22811, 7, 97, 2, 2, 22811, 22812, 7, 69, 2, 2, 22812, 22813, 7, 78, 2, 2, 22813, 22814, 7, 52, 2, 2, 22814, 22815, 7, 69, 2, 2, 22815, 3364, 3, 2, 2, 2, 22816, 22817, 7, 85, 2, 2, 22817, 22818, 7, 91, 2, 2, 22818, 22819, 7, 85, 2, 2, 22819, 22820, 7, 97, 2, 2, 22820, 22821, 7, 81, 2, 2, 22821, 22822, 7, 82, 2, 2, 22822, 22823, 7, 97, 2, 2, 22823, 22824, 7, 69, 2, 2, 22824, 22825, 7, 81, 2, 2, 22825, 22826, 7, 79, 2, 2, 22826, 22827, 7, 68, 2, 2, 22827, 22828, 7, 75, 2, 2, 22828, 22829, 7, 80, 2, 2, 22829, 22830, 7, 71, 2, 2, 22830, 22831, 7, 70, 2, 2, 22831, 22832, 7, 97, 2, 2, 22832, 22833, 7, 74, 2, 2, 22833, 22834, 7, 67, 2, 2, 22834, 22835, 7, 85, 2, 2, 22835, 22836, 7, 74, 2, 2, 22836, 3366, 3, 2, 2, 2, 22837, 22838, 7, 85, 2, 2, 22838, 22839, 7, 91, 2, 2, 22839, 22840, 7, 85, 2, 2, 22840, 22841, 7, 97, 2, 2, 22841, 22842, 7, 81, 2, 2, 22842, 22843, 7, 82, 2, 2, 22843, 22844, 7, 97, 2, 2, 22844, 22845, 7, 69, 2, 2, 22845, 22846, 7, 81, 2, 2, 22846, 22847, 7, 79, 2, 2, 22847, 22848, 7, 82, 2, 2, 22848, 3368, 3, 2, 2, 2, 22849, 22850, 7, 85, 2, 2, 22850, 22851, 7, 91, 2, 2, 22851, 22852, 7, 85, 2, 2, 22852, 22853, 7, 97, 2, 2, 22853, 22854, 7, 81, 2, 2, 22854, 22855, 7, 82, 2, 2, 22855, 22856, 7, 97, 2, 2, 22856, 22857, 7, 69, 2, 2, 22857, 22858, 7, 81, 2, 2, 22858, 22859, 7, 80, 2, 2, 22859, 22860, 7, 88, 2, 2, 22860, 22861, 7, 71, 2, 2, 22861, 22862, 7, 84, 2, 2, 22862, 22863, 7, 86, 2, 2, 22863, 3370, 3, 2, 2, 2, 22864, 22865, 7, 85, 2, 2, 22865, 22866, 7, 91, 2, 2, 22866, 22867, 7, 85, 2, 2, 22867, 22868, 7, 97, 2, 2, 22868, 22869, 7, 81, 2, 2, 22869, 22870, 7, 82, 2, 2, 22870, 22871, 7, 97, 2, 2, 22871, 22872, 7, 69, 2, 2, 22872, 22873, 7, 81, 2, 2, 22873, 22874, 7, 87, 2, 2, 22874, 22875, 7, 80, 2, 2, 22875, 22876, 7, 86, 2, 2, 22876, 22877, 7, 69, 2, 2, 22877, 22878, 7, 74, 2, 2, 22878, 22879, 7, 73, 2, 2, 22879, 3372, 3, 2, 2, 2, 22880, 22881, 7, 85, 2, 2, 22881, 22882, 7, 91, 2, 2, 22882, 22883, 7, 85, 2, 2, 22883, 22884, 7, 97, 2, 2, 22884, 22885, 7, 81, 2, 2, 22885, 22886, 7, 82, 2, 2, 22886, 22887, 7, 97, 2, 2, 22887, 22888, 7, 69, 2, 2, 22888, 22889, 7, 85, 2, 2, 22889, 22890, 7, 69, 2, 2, 22890, 22891, 7, 81, 2, 2, 22891, 22892, 7, 80, 2, 2, 22892, 22893, 7, 88, 2, 2, 22893, 3374, 3, 2, 2, 2, 22894, 22895, 7, 85, 2, 2, 22895, 22896, 7, 91, 2, 2, 22896, 22897, 7, 85, 2, 2, 22897, 22898, 7, 97, 2, 2, 22898, 22899, 7, 81, 2, 2, 22899, 22900, 7, 82, 2, 2, 22900, 22901, 7, 97, 2, 2, 22901, 22902, 7, 69, 2, 2, 22902, 22903, 7, 85, 2, 2, 22903, 22904, 7, 69, 2, 2, 22904, 22905, 7, 81, 2, 2, 22905, 22906, 7, 80, 2, 2, 22906, 22907, 7, 88, 2, 2, 22907, 22908, 7, 86, 2, 2, 22908, 22909, 7, 71, 2, 2, 22909, 22910, 7, 85, 2, 2, 22910, 22911, 7, 86, 2, 2, 22911, 3376, 3, 2, 2, 2, 22912, 22913, 7, 85, 2, 2, 22913, 22914, 7, 91, 2, 2, 22914, 22915, 7, 85, 2, 2, 22915, 22916, 7, 97, 2, 2, 22916, 22917, 7, 81, 2, 2, 22917, 22918, 7, 82, 2, 2, 22918, 22919, 7, 97, 2, 2, 22919, 22920, 7, 69, 2, 2, 22920, 22921, 7, 85, 2, 2, 22921, 22922, 7, 84, 2, 2, 22922, 3378, 3, 2, 2, 2, 22923, 22924, 7, 85, 2, 2, 22924, 22925, 7, 91, 2, 2, 22925, 22926, 7, 85, 2, 2, 22926, 22927, 7, 97, 2, 2, 22927, 22928, 7, 81, 2, 2, 22928, 22929, 7, 82, 2, 2, 22929, 22930, 7, 97, 2, 2, 22930, 22931, 7, 69, 2, 2, 22931, 22932, 7, 85, 2, 2, 22932, 22933, 7, 90, 2, 2, 22933, 22934, 7, 97, 2, 2, 22934, 22935, 7, 82, 2, 2, 22935, 22936, 7, 67, 2, 2, 22936, 22937, 7, 86, 2, 2, 22937, 22938, 7, 69, 2, 2, 22938, 22939, 7, 74, 2, 2, 22939, 3380, 3, 2, 2, 2, 22940, 22941, 7, 85, 2, 2, 22941, 22942, 7, 91, 2, 2, 22942, 22943, 7, 85, 2, 2, 22943, 22944, 7, 97, 2, 2, 22944, 22945, 7, 81, 2, 2, 22945, 22946, 7, 82, 2, 2, 22946, 22947, 7, 97, 2, 2, 22947, 22948, 7, 69, 2, 2, 22948, 22949, 7, 91, 2, 2, 22949, 22950, 7, 69, 2, 2, 22950, 22951, 7, 78, 2, 2, 22951, 22952, 7, 71, 2, 2, 22952, 22953, 7, 70, 2, 2, 22953, 22954, 7, 97, 2, 2, 22954, 22955, 7, 85, 2, 2, 22955, 22956, 7, 71, 2, 2, 22956, 22957, 7, 83, 2, 2, 22957, 3382, 3, 2, 2, 2, 22958, 22959, 7, 85, 2, 2, 22959, 22960, 7, 91, 2, 2, 22960, 22961, 7, 85, 2, 2, 22961, 22962, 7, 97, 2, 2, 22962, 22963, 7, 81, 2, 2, 22963, 22964, 7, 82, 2, 2, 22964, 22965, 7, 97, 2, 2, 22965, 22966, 7, 70, 2, 2, 22966, 22967, 7, 71, 2, 2, 22967, 22968, 7, 69, 2, 2, 22968, 22969, 7, 81, 2, 2, 22969, 22970, 7, 79, 2, 2, 22970, 22971, 7, 82, 2, 2, 22971, 3384, 3, 2, 2, 2, 22972, 22973, 7, 85, 2, 2, 22973, 22974, 7, 91, 2, 2, 22974, 22975, 7, 85, 2, 2, 22975, 22976, 7, 97, 2, 2, 22976, 22977, 7, 81, 2, 2, 22977, 22978, 7, 82, 2, 2, 22978, 22979, 7, 97, 2, 2, 22979, 22980, 7, 70, 2, 2, 22980, 22981, 7, 71, 2, 2, 22981, 22982, 7, 85, 2, 2, 22982, 22983, 7, 69, 2, 2, 22983, 22984, 7, 71, 2, 2, 22984, 22985, 7, 80, 2, 2, 22985, 22986, 7, 70, 2, 2, 22986, 3386, 3, 2, 2, 2, 22987, 22988, 7, 85, 2, 2, 22988, 22989, 7, 91, 2, 2, 22989, 22990, 7, 85, 2, 2, 22990, 22991, 7, 97, 2, 2, 22991, 22992, 7, 81, 2, 2, 22992, 22993, 7, 82, 2, 2, 22993, 22994, 7, 97, 2, 2, 22994, 22995, 7, 70, 2, 2, 22995, 22996, 7, 75, 2, 2, 22996, 22997, 7, 85, 2, 2, 22997, 22998, 7, 86, 2, 2, 22998, 22999, 7, 75, 2, 2, 22999, 23000, 7, 80, 2, 2, 23000, 23001, 7, 69, 2, 2, 23001, 23002, 7, 86, 2, 2, 23002, 3388, 3, 2, 2, 2, 23003, 23004, 7, 85, 2, 2, 23004, 23005, 7, 91, 2, 2, 23005, 23006, 7, 85, 2, 2, 23006, 23007, 7, 97, 2, 2, 23007, 23008, 7, 81, 2, 2, 23008, 23009, 7, 82, 2, 2, 23009, 23010, 7, 97, 2, 2, 23010, 23011, 7, 70, 2, 2, 23011, 23012, 7, 84, 2, 2, 23012, 23013, 7, 67, 2, 2, 23013, 3390, 3, 2, 2, 2, 23014, 23015, 7, 85, 2, 2, 23015, 23016, 7, 91, 2, 2, 23016, 23017, 7, 85, 2, 2, 23017, 23018, 7, 97, 2, 2, 23018, 23019, 7, 81, 2, 2, 23019, 23020, 7, 82, 2, 2, 23020, 23021, 7, 97, 2, 2, 23021, 23022, 7, 70, 2, 2, 23022, 23023, 7, 87, 2, 2, 23023, 23024, 7, 79, 2, 2, 23024, 23025, 7, 82, 2, 2, 23025, 3392, 3, 2, 2, 2, 23026, 23027, 7, 85, 2, 2, 23027, 23028, 7, 91, 2, 2, 23028, 23029, 7, 85, 2, 2, 23029, 23030, 7, 97, 2, 2, 23030, 23031, 7, 81, 2, 2, 23031, 23032, 7, 82, 2, 2, 23032, 23033, 7, 97, 2, 2, 23033, 23034, 7, 70, 2, 2, 23034, 23035, 7, 88, 2, 2, 23035, 23036, 7, 97, 2, 2, 23036, 23037, 7, 69, 2, 2, 23037, 23038, 7, 74, 2, 2, 23038, 23039, 7, 71, 2, 2, 23039, 23040, 7, 69, 2, 2, 23040, 23041, 7, 77, 2, 2, 23041, 3394, 3, 2, 2, 2, 23042, 23043, 7, 85, 2, 2, 23043, 23044, 7, 91, 2, 2, 23044, 23045, 7, 85, 2, 2, 23045, 23046, 7, 97, 2, 2, 23046, 23047, 7, 81, 2, 2, 23047, 23048, 7, 82, 2, 2, 23048, 23049, 7, 97, 2, 2, 23049, 23050, 7, 71, 2, 2, 23050, 23051, 7, 80, 2, 2, 23051, 23052, 7, 72, 2, 2, 23052, 23053, 7, 81, 2, 2, 23053, 23054, 7, 84, 2, 2, 23054, 23055, 7, 69, 2, 2, 23055, 23056, 7, 71, 2, 2, 23056, 23057, 7, 97, 2, 2, 23057, 23058, 7, 80, 2, 2, 23058, 23059, 7, 81, 2, 2, 23059, 23060, 7, 86, 2, 2, 23060, 23061, 7, 97, 2, 2, 23061, 23062, 7, 80, 2, 2, 23062, 23063, 7, 87, 2, 2, 23063, 23064, 7, 78, 2, 2, 23064, 23065, 7, 78, 2, 2, 23065, 23066, 7, 38, 2, 2, 23066, 3396, 3, 2, 2, 2, 23067, 23068, 7, 85, 2, 2, 23068, 23069, 7, 91, 2, 2, 23069, 23070, 7, 85, 2, 2, 23070, 23071, 7, 81, 2, 2, 23071, 23072, 7, 82, 2, 2, 23072, 23073, 7, 71, 2, 2, 23073, 23074, 7, 84, 2, 2, 23074, 3398, 3, 2, 2, 2, 23075, 23076, 7, 85, 2, 2, 23076, 23077, 7, 91, 2, 2, 23077, 23078, 7, 85, 2, 2, 23078, 23079, 7, 97, 2, 2, 23079, 23080, 7, 81, 2, 2, 23080, 23081, 7, 82, 2, 2, 23081, 23082, 7, 97, 2, 2, 23082, 23083, 7, 71, 2, 2, 23083, 23084, 7, 90, 2, 2, 23084, 23085, 7, 86, 2, 2, 23085, 23086, 7, 84, 2, 2, 23086, 23087, 7, 67, 2, 2, 23087, 23088, 7, 69, 2, 2, 23088, 23089, 7, 86, 2, 2, 23089, 3400, 3, 2, 2, 2, 23090, 23091, 7, 85, 2, 2, 23091, 23092, 7, 91, 2, 2, 23092, 23093, 7, 85, 2, 2, 23093, 23094, 7, 97, 2, 2, 23094, 23095, 7, 81, 2, 2, 23095, 23096, 7, 82, 2, 2, 23096, 23097, 7, 97, 2, 2, 23097, 23098, 7, 73, 2, 2, 23098, 23099, 7, 84, 2, 2, 23099, 23100, 7, 81, 2, 2, 23100, 23101, 7, 87, 2, 2, 23101, 23102, 7, 82, 2, 2, 23102, 23103, 7, 75, 2, 2, 23103, 23104, 7, 80, 2, 2, 23104, 23105, 7, 73, 2, 2, 23105, 3402, 3, 2, 2, 2, 23106, 23107, 7, 85, 2, 2, 23107, 23108, 7, 91, 2, 2, 23108, 23109, 7, 85, 2, 2, 23109, 23110, 7, 97, 2, 2, 23110, 23111, 7, 81, 2, 2, 23111, 23112, 7, 82, 2, 2, 23112, 23113, 7, 97, 2, 2, 23113, 23114, 7, 73, 2, 2, 23114, 23115, 7, 87, 2, 2, 23115, 23116, 7, 75, 2, 2, 23116, 23117, 7, 70, 2, 2, 23117, 3404, 3, 2, 2, 2, 23118, 23119, 7, 85, 2, 2, 23119, 23120, 7, 91, 2, 2, 23120, 23121, 7, 85, 2, 2, 23121, 23122, 7, 97, 2, 2, 23122, 23123, 7, 81, 2, 2, 23123, 23124, 7, 82, 2, 2, 23124, 23125, 7, 97, 2, 2, 23125, 23126, 7, 74, 2, 2, 23126, 23127, 7, 67, 2, 2, 23127, 23128, 7, 85, 2, 2, 23128, 23129, 7, 74, 2, 2, 23129, 3406, 3, 2, 2, 2, 23130, 23131, 7, 85, 2, 2, 23131, 23132, 7, 91, 2, 2, 23132, 23133, 7, 85, 2, 2, 23133, 23134, 7, 97, 2, 2, 23134, 23135, 7, 81, 2, 2, 23135, 23136, 7, 82, 2, 2, 23136, 23137, 7, 97, 2, 2, 23137, 23138, 7, 75, 2, 2, 23138, 23139, 7, 75, 2, 2, 23139, 23140, 7, 90, 2, 2, 23140, 3408, 3, 2, 2, 2, 23141, 23142, 7, 85, 2, 2, 23142, 23143, 7, 91, 2, 2, 23143, 23144, 7, 85, 2, 2, 23144, 23145, 7, 97, 2, 2, 23145, 23146, 7, 81, 2, 2, 23146, 23147, 7, 82, 2, 2, 23147, 23148, 7, 97, 2, 2, 23148, 23149, 7, 75, 2, 2, 23149, 23150, 7, 86, 2, 2, 23150, 23151, 7, 84, 2, 2, 23151, 3410, 3, 2, 2, 2, 23152, 23153, 7, 85, 2, 2, 23153, 23154, 7, 91, 2, 2, 23154, 23155, 7, 85, 2, 2, 23155, 23156, 7, 97, 2, 2, 23156, 23157, 7, 81, 2, 2, 23157, 23158, 7, 82, 2, 2, 23158, 23159, 7, 97, 2, 2, 23159, 23160, 7, 77, 2, 2, 23160, 23161, 7, 71, 2, 2, 23161, 23162, 7, 91, 2, 2, 23162, 23163, 7, 97, 2, 2, 23163, 23164, 7, 88, 2, 2, 23164, 23165, 7, 71, 2, 2, 23165, 23166, 7, 69, 2, 2, 23166, 23167, 7, 86, 2, 2, 23167, 23168, 7, 81, 2, 2, 23168, 23169, 7, 84, 2, 2, 23169, 23170, 7, 97, 2, 2, 23170, 23171, 7, 69, 2, 2, 23171, 23172, 7, 84, 2, 2, 23172, 23173, 7, 71, 2, 2, 23173, 23174, 7, 67, 2, 2, 23174, 23175, 7, 86, 2, 2, 23175, 23176, 7, 71, 2, 2, 23176, 3412, 3, 2, 2, 2, 23177, 23178, 7, 85, 2, 2, 23178, 23179, 7, 91, 2, 2, 23179, 23180, 7, 85, 2, 2, 23180, 23181, 7, 97, 2, 2, 23181, 23182, 7, 81, 2, 2, 23182, 23183, 7, 82, 2, 2, 23183, 23184, 7, 97, 2, 2, 23184, 23185, 7, 77, 2, 2, 23185, 23186, 7, 71, 2, 2, 23186, 23187, 7, 91, 2, 2, 23187, 23188, 7, 97, 2, 2, 23188, 23189, 7, 88, 2, 2, 23189, 23190, 7, 71, 2, 2, 23190, 23191, 7, 69, 2, 2, 23191, 23192, 7, 86, 2, 2, 23192, 23193, 7, 81, 2, 2, 23193, 23194, 7, 84, 2, 2, 23194, 23195, 7, 97, 2, 2, 23195, 23196, 7, 72, 2, 2, 23196, 23197, 7, 75, 2, 2, 23197, 23198, 7, 78, 2, 2, 23198, 23199, 7, 86, 2, 2, 23199, 23200, 7, 71, 2, 2, 23200, 23201, 7, 84, 2, 2, 23201, 23202, 7, 97, 2, 2, 23202, 23203, 7, 78, 2, 2, 23203, 23204, 7, 75, 2, 2, 23204, 23205, 7, 85, 2, 2, 23205, 23206, 7, 86, 2, 2, 23206, 3414, 3, 2, 2, 2, 23207, 23208, 7, 85, 2, 2, 23208, 23209, 7, 91, 2, 2, 23209, 23210, 7, 85, 2, 2, 23210, 23211, 7, 97, 2, 2, 23211, 23212, 7, 81, 2, 2, 23212, 23213, 7, 82, 2, 2, 23213, 23214, 7, 97, 2, 2, 23214, 23215, 7, 77, 2, 2, 23215, 23216, 7, 71, 2, 2, 23216, 23217, 7, 91, 2, 2, 23217, 23218, 7, 97, 2, 2, 23218, 23219, 7, 88, 2, 2, 23219, 23220, 7, 71, 2, 2, 23220, 23221, 7, 69, 2, 2, 23221, 23222, 7, 86, 2, 2, 23222, 23223, 7, 81, 2, 2, 23223, 23224, 7, 84, 2, 2, 23224, 23225, 7, 97, 2, 2, 23225, 23226, 7, 72, 2, 2, 23226, 23227, 7, 75, 2, 2, 23227, 23228, 7, 78, 2, 2, 23228, 23229, 7, 86, 2, 2, 23229, 23230, 7, 71, 2, 2, 23230, 23231, 7, 84, 2, 2, 23231, 3416, 3, 2, 2, 2, 23232, 23233, 7, 85, 2, 2, 23233, 23234, 7, 91, 2, 2, 23234, 23235, 7, 85, 2, 2, 23235, 23236, 7, 97, 2, 2, 23236, 23237, 7, 81, 2, 2, 23237, 23238, 7, 82, 2, 2, 23238, 23239, 7, 97, 2, 2, 23239, 23240, 7, 77, 2, 2, 23240, 23241, 7, 71, 2, 2, 23241, 23242, 7, 91, 2, 2, 23242, 23243, 7, 97, 2, 2, 23243, 23244, 7, 88, 2, 2, 23244, 23245, 7, 71, 2, 2, 23245, 23246, 7, 69, 2, 2, 23246, 23247, 7, 86, 2, 2, 23247, 23248, 7, 81, 2, 2, 23248, 23249, 7, 84, 2, 2, 23249, 23250, 7, 97, 2, 2, 23250, 23251, 7, 85, 2, 2, 23251, 23252, 7, 87, 2, 2, 23252, 23253, 7, 69, 2, 2, 23253, 23254, 7, 69, 2, 2, 23254, 23255, 7, 71, 2, 2, 23255, 23256, 7, 71, 2, 2, 23256, 23257, 7, 70, 2, 2, 23257, 23258, 7, 71, 2, 2, 23258, 23259, 7, 70, 2, 2, 23259, 3418, 3, 2, 2, 2, 23260, 23261, 7, 85, 2, 2, 23261, 23262, 7, 91, 2, 2, 23262, 23263, 7, 85, 2, 2, 23263, 23264, 7, 97, 2, 2, 23264, 23265, 7, 81, 2, 2, 23265, 23266, 7, 82, 2, 2, 23266, 23267, 7, 97, 2, 2, 23267, 23268, 7, 77, 2, 2, 23268, 23269, 7, 71, 2, 2, 23269, 23270, 7, 91, 2, 2, 23270, 23271, 7, 97, 2, 2, 23271, 23272, 7, 88, 2, 2, 23272, 23273, 7, 71, 2, 2, 23273, 23274, 7, 69, 2, 2, 23274, 23275, 7, 86, 2, 2, 23275, 23276, 7, 81, 2, 2, 23276, 23277, 7, 84, 2, 2, 23277, 23278, 7, 97, 2, 2, 23278, 23279, 7, 87, 2, 2, 23279, 23280, 7, 85, 2, 2, 23280, 23281, 7, 71, 2, 2, 23281, 3420, 3, 2, 2, 2, 23282, 23283, 7, 85, 2, 2, 23283, 23284, 7, 91, 2, 2, 23284, 23285, 7, 85, 2, 2, 23285, 23286, 7, 97, 2, 2, 23286, 23287, 7, 81, 2, 2, 23287, 23288, 7, 82, 2, 2, 23288, 23289, 7, 97, 2, 2, 23289, 23290, 7, 78, 2, 2, 23290, 23291, 7, 68, 2, 2, 23291, 23292, 7, 75, 2, 2, 23292, 23293, 7, 70, 2, 2, 23293, 3422, 3, 2, 2, 2, 23294, 23295, 7, 85, 2, 2, 23295, 23296, 7, 91, 2, 2, 23296, 23297, 7, 85, 2, 2, 23297, 23298, 7, 97, 2, 2, 23298, 23299, 7, 81, 2, 2, 23299, 23300, 7, 82, 2, 2, 23300, 23301, 7, 97, 2, 2, 23301, 23302, 7, 78, 2, 2, 23302, 23303, 7, 81, 2, 2, 23303, 23304, 7, 68, 2, 2, 23304, 23305, 7, 78, 2, 2, 23305, 23306, 7, 81, 2, 2, 23306, 23307, 7, 69, 2, 2, 23307, 23308, 7, 52, 2, 2, 23308, 23309, 7, 68, 2, 2, 23309, 23310, 7, 78, 2, 2, 23310, 23311, 7, 81, 2, 2, 23311, 23312, 7, 68, 2, 2, 23312, 3424, 3, 2, 2, 2, 23313, 23314, 7, 85, 2, 2, 23314, 23315, 7, 91, 2, 2, 23315, 23316, 7, 85, 2, 2, 23316, 23317, 7, 97, 2, 2, 23317, 23318, 7, 81, 2, 2, 23318, 23319, 7, 82, 2, 2, 23319, 23320, 7, 97, 2, 2, 23320, 23321, 7, 78, 2, 2, 23321, 23322, 7, 81, 2, 2, 23322, 23323, 7, 68, 2, 2, 23323, 23324, 7, 78, 2, 2, 23324, 23325, 7, 81, 2, 2, 23325, 23326, 7, 69, 2, 2, 23326, 23327, 7, 52, 2, 2, 23327, 23328, 7, 69, 2, 2, 23328, 23329, 7, 78, 2, 2, 23329, 23330, 7, 81, 2, 2, 23330, 23331, 7, 68, 2, 2, 23331, 3426, 3, 2, 2, 2, 23332, 23333, 7, 85, 2, 2, 23333, 23334, 7, 91, 2, 2, 23334, 23335, 7, 85, 2, 2, 23335, 23336, 7, 97, 2, 2, 23336, 23337, 7, 81, 2, 2, 23337, 23338, 7, 82, 2, 2, 23338, 23339, 7, 97, 2, 2, 23339, 23340, 7, 78, 2, 2, 23340, 23341, 7, 81, 2, 2, 23341, 23342, 7, 68, 2, 2, 23342, 23343, 7, 78, 2, 2, 23343, 23344, 7, 81, 2, 2, 23344, 23345, 7, 69, 2, 2, 23345, 23346, 7, 52, 2, 2, 23346, 23347, 7, 75, 2, 2, 23347, 23348, 7, 70, 2, 2, 23348, 3428, 3, 2, 2, 2, 23349, 23350, 7, 85, 2, 2, 23350, 23351, 7, 91, 2, 2, 23351, 23352, 7, 85, 2, 2, 23352, 23353, 7, 97, 2, 2, 23353, 23354, 7, 81, 2, 2, 23354, 23355, 7, 82, 2, 2, 23355, 23356, 7, 97, 2, 2, 23356, 23357, 7, 78, 2, 2, 23357, 23358, 7, 81, 2, 2, 23358, 23359, 7, 68, 2, 2, 23359, 23360, 7, 78, 2, 2, 23360, 23361, 7, 81, 2, 2, 23361, 23362, 7, 69, 2, 2, 23362, 23363, 7, 52, 2, 2, 23363, 23364, 7, 80, 2, 2, 23364, 23365, 7, 69, 2, 2, 23365, 23366, 7, 78, 2, 2, 23366, 23367, 7, 81, 2, 2, 23367, 23368, 7, 68, 2, 2, 23368, 3430, 3, 2, 2, 2, 23369, 23370, 7, 85, 2, 2, 23370, 23371, 7, 91, 2, 2, 23371, 23372, 7, 85, 2, 2, 23372, 23373, 7, 97, 2, 2, 23373, 23374, 7, 81, 2, 2, 23374, 23375, 7, 82, 2, 2, 23375, 23376, 7, 97, 2, 2, 23376, 23377, 7, 78, 2, 2, 23377, 23378, 7, 81, 2, 2, 23378, 23379, 7, 68, 2, 2, 23379, 23380, 7, 78, 2, 2, 23380, 23381, 7, 81, 2, 2, 23381, 23382, 7, 69, 2, 2, 23382, 23383, 7, 52, 2, 2, 23383, 23384, 7, 86, 2, 2, 23384, 23385, 7, 91, 2, 2, 23385, 23386, 7, 82, 2, 2, 23386, 3432, 3, 2, 2, 2, 23387, 23388, 7, 85, 2, 2, 23388, 23389, 7, 91, 2, 2, 23389, 23390, 7, 85, 2, 2, 23390, 23391, 7, 97, 2, 2, 23391, 23392, 7, 81, 2, 2, 23392, 23393, 7, 82, 2, 2, 23393, 23394, 7, 97, 2, 2, 23394, 23395, 7, 78, 2, 2, 23395, 23396, 7, 85, 2, 2, 23396, 23397, 7, 88, 2, 2, 23397, 23398, 7, 75, 2, 2, 23398, 3434, 3, 2, 2, 2, 23399, 23400, 7, 85, 2, 2, 23400, 23401, 7, 91, 2, 2, 23401, 23402, 7, 85, 2, 2, 23402, 23403, 7, 97, 2, 2, 23403, 23404, 7, 81, 2, 2, 23404, 23405, 7, 82, 2, 2, 23405, 23406, 7, 97, 2, 2, 23406, 23407, 7, 78, 2, 2, 23407, 23408, 7, 88, 2, 2, 23408, 23409, 7, 78, 2, 2, 23409, 3436, 3, 2, 2, 2, 23410, 23411, 7, 85, 2, 2, 23411, 23412, 7, 91, 2, 2, 23412, 23413, 7, 85, 2, 2, 23413, 23414, 7, 97, 2, 2, 23414, 23415, 7, 81, 2, 2, 23415, 23416, 7, 82, 2, 2, 23416, 23417, 7, 97, 2, 2, 23417, 23418, 7, 79, 2, 2, 23418, 23419, 7, 67, 2, 2, 23419, 23420, 7, 77, 2, 2, 23420, 23421, 7, 71, 2, 2, 23421, 23422, 7, 81, 2, 2, 23422, 23423, 7, 75, 2, 2, 23423, 23424, 7, 70, 2, 2, 23424, 3438, 3, 2, 2, 2, 23425, 23426, 7, 85, 2, 2, 23426, 23427, 7, 91, 2, 2, 23427, 23428, 7, 85, 2, 2, 23428, 23429, 7, 97, 2, 2, 23429, 23430, 7, 81, 2, 2, 23430, 23431, 7, 82, 2, 2, 23431, 23432, 7, 97, 2, 2, 23432, 23433, 7, 79, 2, 2, 23433, 23434, 7, 67, 2, 2, 23434, 23435, 7, 82, 2, 2, 23435, 23436, 7, 97, 2, 2, 23436, 23437, 7, 80, 2, 2, 23437, 23438, 7, 81, 2, 2, 23438, 23439, 7, 80, 2, 2, 23439, 23440, 7, 80, 2, 2, 23440, 23441, 7, 87, 2, 2, 23441, 23442, 7, 78, 2, 2, 23442, 23443, 7, 78, 2, 2, 23443, 3440, 3, 2, 2, 2, 23444, 23445, 7, 85, 2, 2, 23445, 23446, 7, 91, 2, 2, 23446, 23447, 7, 85, 2, 2, 23447, 23448, 7, 97, 2, 2, 23448, 23449, 7, 81, 2, 2, 23449, 23450, 7, 82, 2, 2, 23450, 23451, 7, 97, 2, 2, 23451, 23452, 7, 79, 2, 2, 23452, 23453, 7, 85, 2, 2, 23453, 23454, 7, 84, 2, 2, 23454, 3442, 3, 2, 2, 2, 23455, 23456, 7, 85, 2, 2, 23456, 23457, 7, 91, 2, 2, 23457, 23458, 7, 85, 2, 2, 23458, 23459, 7, 97, 2, 2, 23459, 23460, 7, 81, 2, 2, 23460, 23461, 7, 82, 2, 2, 23461, 23462, 7, 97, 2, 2, 23462, 23463, 7, 80, 2, 2, 23463, 23464, 7, 75, 2, 2, 23464, 23465, 7, 69, 2, 2, 23465, 23466, 7, 81, 2, 2, 23466, 23467, 7, 79, 2, 2, 23467, 23468, 7, 68, 2, 2, 23468, 23469, 7, 75, 2, 2, 23469, 23470, 7, 80, 2, 2, 23470, 23471, 7, 71, 2, 2, 23471, 3444, 3, 2, 2, 2, 23472, 23473, 7, 85, 2, 2, 23473, 23474, 7, 91, 2, 2, 23474, 23475, 7, 85, 2, 2, 23475, 23476, 7, 97, 2, 2, 23476, 23477, 7, 81, 2, 2, 23477, 23478, 7, 82, 2, 2, 23478, 23479, 7, 97, 2, 2, 23479, 23480, 7, 80, 2, 2, 23480, 23481, 7, 75, 2, 2, 23481, 23482, 7, 71, 2, 2, 23482, 23483, 7, 90, 2, 2, 23483, 23484, 7, 86, 2, 2, 23484, 23485, 7, 84, 2, 2, 23485, 23486, 7, 67, 2, 2, 23486, 23487, 7, 69, 2, 2, 23487, 23488, 7, 86, 2, 2, 23488, 3446, 3, 2, 2, 2, 23489, 23490, 7, 85, 2, 2, 23490, 23491, 7, 91, 2, 2, 23491, 23492, 7, 85, 2, 2, 23492, 23493, 7, 97, 2, 2, 23493, 23494, 7, 81, 2, 2, 23494, 23495, 7, 82, 2, 2, 23495, 23496, 7, 97, 2, 2, 23496, 23497, 7, 80, 2, 2, 23497, 23498, 7, 75, 2, 2, 23498, 23499, 7, 75, 2, 2, 23499, 3448, 3, 2, 2, 2, 23500, 23501, 7, 85, 2, 2, 23501, 23502, 7, 91, 2, 2, 23502, 23503, 7, 85, 2, 2, 23503, 23504, 7, 97, 2, 2, 23504, 23505, 7, 81, 2, 2, 23505, 23506, 7, 82, 2, 2, 23506, 23507, 7, 97, 2, 2, 23507, 23508, 7, 80, 2, 2, 23508, 23509, 7, 75, 2, 2, 23509, 23510, 7, 90, 2, 2, 23510, 3450, 3, 2, 2, 2, 23511, 23512, 7, 85, 2, 2, 23512, 23513, 7, 91, 2, 2, 23513, 23514, 7, 85, 2, 2, 23514, 23515, 7, 97, 2, 2, 23515, 23516, 7, 81, 2, 2, 23516, 23517, 7, 82, 2, 2, 23517, 23518, 7, 97, 2, 2, 23518, 23519, 7, 80, 2, 2, 23519, 23520, 7, 81, 2, 2, 23520, 23521, 7, 71, 2, 2, 23521, 23522, 7, 90, 2, 2, 23522, 23523, 7, 82, 2, 2, 23523, 23524, 7, 67, 2, 2, 23524, 23525, 7, 80, 2, 2, 23525, 23526, 7, 70, 2, 2, 23526, 3452, 3, 2, 2, 2, 23527, 23528, 7, 85, 2, 2, 23528, 23529, 7, 91, 2, 2, 23529, 23530, 7, 85, 2, 2, 23530, 23531, 7, 97, 2, 2, 23531, 23532, 7, 81, 2, 2, 23532, 23533, 7, 82, 2, 2, 23533, 23534, 7, 97, 2, 2, 23534, 23535, 7, 80, 2, 2, 23535, 23536, 7, 86, 2, 2, 23536, 23537, 7, 69, 2, 2, 23537, 23538, 7, 75, 2, 2, 23538, 23539, 7, 79, 2, 2, 23539, 23540, 7, 73, 2, 2, 23540, 23541, 7, 38, 2, 2, 23541, 3454, 3, 2, 2, 2, 23542, 23543, 7, 85, 2, 2, 23543, 23544, 7, 91, 2, 2, 23544, 23545, 7, 85, 2, 2, 23545, 23546, 7, 97, 2, 2, 23546, 23547, 7, 81, 2, 2, 23547, 23548, 7, 82, 2, 2, 23548, 23549, 7, 97, 2, 2, 23549, 23550, 7, 80, 2, 2, 23550, 23551, 7, 87, 2, 2, 23551, 23552, 7, 79, 2, 2, 23552, 23553, 7, 86, 2, 2, 23553, 23554, 7, 81, 2, 2, 23554, 23555, 7, 84, 2, 2, 23555, 23556, 7, 67, 2, 2, 23556, 23557, 7, 89, 2, 2, 23557, 3456, 3, 2, 2, 2, 23558, 23559, 7, 85, 2, 2, 23559, 23560, 7, 91, 2, 2, 23560, 23561, 7, 85, 2, 2, 23561, 23562, 7, 97, 2, 2, 23562, 23563, 7, 81, 2, 2, 23563, 23564, 7, 82, 2, 2, 23564, 23565, 7, 97, 2, 2, 23565, 23566, 7, 81, 2, 2, 23566, 23567, 7, 75, 2, 2, 23567, 23568, 7, 70, 2, 2, 23568, 23569, 7, 88, 2, 2, 23569, 23570, 7, 67, 2, 2, 23570, 23571, 7, 78, 2, 2, 23571, 23572, 7, 87, 2, 2, 23572, 23573, 7, 71, 2, 2, 23573, 3458, 3, 2, 2, 2, 23574, 23575, 7, 85, 2, 2, 23575, 23576, 7, 91, 2, 2, 23576, 23577, 7, 85, 2, 2, 23577, 23578, 7, 97, 2, 2, 23578, 23579, 7, 81, 2, 2, 23579, 23580, 7, 82, 2, 2, 23580, 23581, 7, 97, 2, 2, 23581, 23582, 7, 81, 2, 2, 23582, 23583, 7, 82, 2, 2, 23583, 23584, 7, 80, 2, 2, 23584, 23585, 7, 85, 2, 2, 23585, 23586, 7, 75, 2, 2, 23586, 23587, 7, 92, 2, 2, 23587, 23588, 7, 71, 2, 2, 23588, 3460, 3, 2, 2, 2, 23589, 23590, 7, 85, 2, 2, 23590, 23591, 7, 91, 2, 2, 23591, 23592, 7, 85, 2, 2, 23592, 23593, 7, 97, 2, 2, 23593, 23594, 7, 81, 2, 2, 23594, 23595, 7, 82, 2, 2, 23595, 23596, 7, 97, 2, 2, 23596, 23597, 7, 82, 2, 2, 23597, 23598, 7, 67, 2, 2, 23598, 23599, 7, 84, 2, 2, 23599, 23600, 7, 97, 2, 2, 23600, 23601, 7, 51, 2, 2, 23601, 3462, 3, 2, 2, 2, 23602, 23603, 7, 85, 2, 2, 23603, 23604, 7, 91, 2, 2, 23604, 23605, 7, 85, 2, 2, 23605, 23606, 7, 97, 2, 2, 23606, 23607, 7, 81, 2, 2, 23607, 23608, 7, 82, 2, 2, 23608, 23609, 7, 97, 2, 2, 23609, 23610, 7, 82, 2, 2, 23610, 23611, 7, 67, 2, 2, 23611, 23612, 7, 84, 2, 2, 23612, 23613, 7, 73, 2, 2, 23613, 23614, 7, 75, 2, 2, 23614, 23615, 7, 70, 2, 2, 23615, 23616, 7, 97, 2, 2, 23616, 23617, 7, 51, 2, 2, 23617, 3464, 3, 2, 2, 2, 23618, 23619, 7, 85, 2, 2, 23619, 23620, 7, 91, 2, 2, 23620, 23621, 7, 85, 2, 2, 23621, 23622, 7, 97, 2, 2, 23622, 23623, 7, 81, 2, 2, 23623, 23624, 7, 82, 2, 2, 23624, 23625, 7, 97, 2, 2, 23625, 23626, 7, 82, 2, 2, 23626, 23627, 7, 67, 2, 2, 23627, 23628, 7, 84, 2, 2, 23628, 23629, 7, 73, 2, 2, 23629, 23630, 7, 75, 2, 2, 23630, 23631, 7, 70, 2, 2, 23631, 3466, 3, 2, 2, 2, 23632, 23633, 7, 85, 2, 2, 23633, 23634, 7, 91, 2, 2, 23634, 23635, 7, 85, 2, 2, 23635, 23636, 7, 97, 2, 2, 23636, 23637, 7, 81, 2, 2, 23637, 23638, 7, 82, 2, 2, 23638, 23639, 7, 97, 2, 2, 23639, 23640, 7, 82, 2, 2, 23640, 23641, 7, 67, 2, 2, 23641, 23642, 7, 84, 2, 2, 23642, 3468, 3, 2, 2, 2, 23643, 23644, 7, 85, 2, 2, 23644, 23645, 7, 91, 2, 2, 23645, 23646, 7, 85, 2, 2, 23646, 23647, 7, 97, 2, 2, 23647, 23648, 7, 81, 2, 2, 23648, 23649, 7, 82, 2, 2, 23649, 23650, 7, 97, 2, 2, 23650, 23651, 7, 82, 2, 2, 23651, 23652, 7, 67, 2, 2, 23652, 23653, 7, 84, 2, 2, 23653, 23654, 7, 86, 2, 2, 23654, 23655, 7, 97, 2, 2, 23655, 23656, 7, 75, 2, 2, 23656, 23657, 7, 70, 2, 2, 23657, 3470, 3, 2, 2, 2, 23658, 23659, 7, 85, 2, 2, 23659, 23660, 7, 91, 2, 2, 23660, 23661, 7, 85, 2, 2, 23661, 23662, 7, 97, 2, 2, 23662, 23663, 7, 81, 2, 2, 23663, 23664, 7, 82, 2, 2, 23664, 23665, 7, 97, 2, 2, 23665, 23666, 7, 82, 2, 2, 23666, 23667, 7, 75, 2, 2, 23667, 23668, 7, 88, 2, 2, 23668, 23669, 7, 81, 2, 2, 23669, 23670, 7, 86, 2, 2, 23670, 3472, 3, 2, 2, 2, 23671, 23672, 7, 85, 2, 2, 23672, 23673, 7, 91, 2, 2, 23673, 23674, 7, 85, 2, 2, 23674, 23675, 7, 97, 2, 2, 23675, 23676, 7, 81, 2, 2, 23676, 23677, 7, 82, 2, 2, 23677, 23678, 7, 97, 2, 2, 23678, 23679, 7, 84, 2, 2, 23679, 23680, 7, 52, 2, 2, 23680, 23681, 7, 81, 2, 2, 23681, 3474, 3, 2, 2, 2, 23682, 23683, 7, 85, 2, 2, 23683, 23684, 7, 91, 2, 2, 23684, 23685, 7, 85, 2, 2, 23685, 23686, 7, 97, 2, 2, 23686, 23687, 7, 81, 2, 2, 23687, 23688, 7, 82, 2, 2, 23688, 23689, 7, 97, 2, 2, 23689, 23690, 7, 84, 2, 2, 23690, 23691, 7, 67, 2, 2, 23691, 23692, 7, 89, 2, 2, 23692, 23693, 7, 86, 2, 2, 23693, 23694, 7, 81, 2, 2, 23694, 23695, 7, 80, 2, 2, 23695, 23696, 7, 87, 2, 2, 23696, 23697, 7, 79, 2, 2, 23697, 3476, 3, 2, 2, 2, 23698, 23699, 7, 85, 2, 2, 23699, 23700, 7, 91, 2, 2, 23700, 23701, 7, 85, 2, 2, 23701, 23702, 7, 97, 2, 2, 23702, 23703, 7, 81, 2, 2, 23703, 23704, 7, 82, 2, 2, 23704, 23705, 7, 97, 2, 2, 23705, 23706, 7, 84, 2, 2, 23706, 23707, 7, 70, 2, 2, 23707, 23708, 7, 86, 2, 2, 23708, 23709, 7, 79, 2, 2, 23709, 3478, 3, 2, 2, 2, 23710, 23711, 7, 85, 2, 2, 23711, 23712, 7, 91, 2, 2, 23712, 23713, 7, 85, 2, 2, 23713, 23714, 7, 97, 2, 2, 23714, 23715, 7, 81, 2, 2, 23715, 23716, 7, 82, 2, 2, 23716, 23717, 7, 97, 2, 2, 23717, 23718, 7, 84, 2, 2, 23718, 23719, 7, 71, 2, 2, 23719, 23720, 7, 72, 2, 2, 23720, 3480, 3, 2, 2, 2, 23721, 23722, 7, 85, 2, 2, 23722, 23723, 7, 91, 2, 2, 23723, 23724, 7, 85, 2, 2, 23724, 23725, 7, 97, 2, 2, 23725, 23726, 7, 81, 2, 2, 23726, 23727, 7, 82, 2, 2, 23727, 23728, 7, 97, 2, 2, 23728, 23729, 7, 84, 2, 2, 23729, 23730, 7, 79, 2, 2, 23730, 23731, 7, 86, 2, 2, 23731, 23732, 7, 70, 2, 2, 23732, 3482, 3, 2, 2, 2, 23733, 23734, 7, 85, 2, 2, 23734, 23735, 7, 91, 2, 2, 23735, 23736, 7, 85, 2, 2, 23736, 23737, 7, 97, 2, 2, 23737, 23738, 7, 81, 2, 2, 23738, 23739, 7, 82, 2, 2, 23739, 23740, 7, 97, 2, 2, 23740, 23741, 7, 84, 2, 2, 23741, 23742, 7, 81, 2, 2, 23742, 23743, 7, 89, 2, 2, 23743, 23744, 7, 75, 2, 2, 23744, 23745, 7, 70, 2, 2, 23745, 23746, 7, 86, 2, 2, 23746, 23747, 7, 81, 2, 2, 23747, 23748, 7, 81, 2, 2, 23748, 23749, 7, 68, 2, 2, 23749, 23750, 7, 76, 2, 2, 23750, 3484, 3, 2, 2, 2, 23751, 23752, 7, 85, 2, 2, 23752, 23753, 7, 91, 2, 2, 23753, 23754, 7, 85, 2, 2, 23754, 23755, 7, 97, 2, 2, 23755, 23756, 7, 81, 2, 2, 23756, 23757, 7, 82, 2, 2, 23757, 23758, 7, 97, 2, 2, 23758, 23759, 7, 84, 2, 2, 23759, 23760, 7, 82, 2, 2, 23760, 23761, 7, 68, 2, 2, 23761, 3486, 3, 2, 2, 2, 23762, 23763, 7, 85, 2, 2, 23763, 23764, 7, 91, 2, 2, 23764, 23765, 7, 85, 2, 2, 23765, 23766, 7, 97, 2, 2, 23766, 23767, 7, 81, 2, 2, 23767, 23768, 7, 82, 2, 2, 23768, 23769, 7, 86, 2, 2, 23769, 23770, 7, 78, 2, 2, 23770, 23771, 7, 81, 2, 2, 23771, 23772, 7, 68, 2, 2, 23772, 23773, 7, 82, 2, 2, 23773, 23774, 7, 84, 2, 2, 23774, 23775, 7, 68, 2, 2, 23775, 23776, 7, 85, 2, 2, 23776, 23777, 7, 69, 2, 2, 23777, 3488, 3, 2, 2, 2, 23778, 23779, 7, 85, 2, 2, 23779, 23780, 7, 91, 2, 2, 23780, 23781, 7, 85, 2, 2, 23781, 23782, 7, 97, 2, 2, 23782, 23783, 7, 81, 2, 2, 23783, 23784, 7, 82, 2, 2, 23784, 23785, 7, 97, 2, 2, 23785, 23786, 7, 86, 2, 2, 23786, 23787, 7, 81, 2, 2, 23787, 23788, 7, 85, 2, 2, 23788, 23789, 7, 71, 2, 2, 23789, 23790, 7, 86, 2, 2, 23790, 23791, 7, 75, 2, 2, 23791, 23792, 7, 70, 2, 2, 23792, 3490, 3, 2, 2, 2, 23793, 23794, 7, 85, 2, 2, 23794, 23795, 7, 91, 2, 2, 23795, 23796, 7, 85, 2, 2, 23796, 23797, 7, 97, 2, 2, 23797, 23798, 7, 81, 2, 2, 23798, 23799, 7, 82, 2, 2, 23799, 23800, 7, 97, 2, 2, 23800, 23801, 7, 86, 2, 2, 23801, 23802, 7, 82, 2, 2, 23802, 23803, 7, 84, 2, 2, 23803, 3492, 3, 2, 2, 2, 23804, 23805, 7, 85, 2, 2, 23805, 23806, 7, 91, 2, 2, 23806, 23807, 7, 85, 2, 2, 23807, 23808, 7, 97, 2, 2, 23808, 23809, 7, 81, 2, 2, 23809, 23810, 7, 82, 2, 2, 23810, 23811, 7, 97, 2, 2, 23811, 23812, 7, 86, 2, 2, 23812, 23813, 7, 84, 2, 2, 23813, 23814, 7, 86, 2, 2, 23814, 23815, 7, 68, 2, 2, 23815, 3494, 3, 2, 2, 2, 23816, 23817, 7, 85, 2, 2, 23817, 23818, 7, 91, 2, 2, 23818, 23819, 7, 85, 2, 2, 23819, 23820, 7, 97, 2, 2, 23820, 23821, 7, 81, 2, 2, 23821, 23822, 7, 82, 2, 2, 23822, 23823, 7, 86, 2, 2, 23823, 23824, 7, 90, 2, 2, 23824, 23825, 7, 75, 2, 2, 23825, 23826, 7, 69, 2, 2, 23826, 23827, 7, 79, 2, 2, 23827, 23828, 7, 82, 2, 2, 23828, 3496, 3, 2, 2, 2, 23829, 23830, 7, 85, 2, 2, 23830, 23831, 7, 91, 2, 2, 23831, 23832, 7, 85, 2, 2, 23832, 23833, 7, 97, 2, 2, 23833, 23834, 7, 81, 2, 2, 23834, 23835, 7, 82, 2, 2, 23835, 23836, 7, 86, 2, 2, 23836, 23837, 7, 90, 2, 2, 23837, 23838, 7, 83, 2, 2, 23838, 23839, 7, 69, 2, 2, 23839, 23840, 7, 67, 2, 2, 23840, 23841, 7, 85, 2, 2, 23841, 23842, 7, 86, 2, 2, 23842, 23843, 7, 67, 2, 2, 23843, 23844, 7, 85, 2, 2, 23844, 23845, 7, 80, 2, 2, 23845, 23846, 7, 83, 2, 2, 23846, 3498, 3, 2, 2, 2, 23847, 23848, 7, 85, 2, 2, 23848, 23849, 7, 91, 2, 2, 23849, 23850, 7, 85, 2, 2, 23850, 23851, 7, 97, 2, 2, 23851, 23852, 7, 81, 2, 2, 23852, 23853, 7, 82, 2, 2, 23853, 23854, 7, 97, 2, 2, 23854, 23855, 7, 87, 2, 2, 23855, 23856, 7, 80, 2, 2, 23856, 23857, 7, 70, 2, 2, 23857, 23858, 7, 71, 2, 2, 23858, 23859, 7, 85, 2, 2, 23859, 23860, 7, 69, 2, 2, 23860, 23861, 7, 71, 2, 2, 23861, 23862, 7, 80, 2, 2, 23862, 23863, 7, 70, 2, 2, 23863, 3500, 3, 2, 2, 2, 23864, 23865, 7, 85, 2, 2, 23865, 23866, 7, 91, 2, 2, 23866, 23867, 7, 85, 2, 2, 23867, 23868, 7, 97, 2, 2, 23868, 23869, 7, 81, 2, 2, 23869, 23870, 7, 82, 2, 2, 23870, 23871, 7, 97, 2, 2, 23871, 23872, 7, 88, 2, 2, 23872, 23873, 7, 71, 2, 2, 23873, 23874, 7, 69, 2, 2, 23874, 23875, 7, 67, 2, 2, 23875, 23876, 7, 80, 2, 2, 23876, 23877, 7, 70, 2, 2, 23877, 3502, 3, 2, 2, 2, 23878, 23879, 7, 85, 2, 2, 23879, 23880, 7, 91, 2, 2, 23880, 23881, 7, 85, 2, 2, 23881, 23882, 7, 97, 2, 2, 23882, 23883, 7, 81, 2, 2, 23883, 23884, 7, 82, 2, 2, 23884, 23885, 7, 97, 2, 2, 23885, 23886, 7, 88, 2, 2, 23886, 23887, 7, 71, 2, 2, 23887, 23888, 7, 69, 2, 2, 23888, 23889, 7, 68, 2, 2, 23889, 23890, 7, 75, 2, 2, 23890, 23891, 7, 86, 2, 2, 23891, 3504, 3, 2, 2, 2, 23892, 23893, 7, 85, 2, 2, 23893, 23894, 7, 91, 2, 2, 23894, 23895, 7, 85, 2, 2, 23895, 23896, 7, 97, 2, 2, 23896, 23897, 7, 81, 2, 2, 23897, 23898, 7, 82, 2, 2, 23898, 23899, 7, 97, 2, 2, 23899, 23900, 7, 88, 2, 2, 23900, 23901, 7, 71, 2, 2, 23901, 23902, 7, 69, 2, 2, 23902, 23903, 7, 81, 2, 2, 23903, 23904, 7, 84, 2, 2, 23904, 3506, 3, 2, 2, 2, 23905, 23906, 7, 85, 2, 2, 23906, 23907, 7, 91, 2, 2, 23907, 23908, 7, 85, 2, 2, 23908, 23909, 7, 97, 2, 2, 23909, 23910, 7, 81, 2, 2, 23910, 23911, 7, 82, 2, 2, 23911, 23912, 7, 97, 2, 2, 23912, 23913, 7, 88, 2, 2, 23913, 23914, 7, 71, 2, 2, 23914, 23915, 7, 69, 2, 2, 23915, 23916, 7, 90, 2, 2, 23916, 23917, 7, 81, 2, 2, 23917, 23918, 7, 84, 2, 2, 23918, 3508, 3, 2, 2, 2, 23919, 23920, 7, 85, 2, 2, 23920, 23921, 7, 91, 2, 2, 23921, 23922, 7, 85, 2, 2, 23922, 23923, 7, 97, 2, 2, 23923, 23924, 7, 81, 2, 2, 23924, 23925, 7, 82, 2, 2, 23925, 23926, 7, 97, 2, 2, 23926, 23927, 7, 88, 2, 2, 23927, 23928, 7, 71, 2, 2, 23928, 23929, 7, 84, 2, 2, 23929, 23930, 7, 85, 2, 2, 23930, 23931, 7, 75, 2, 2, 23931, 23932, 7, 81, 2, 2, 23932, 23933, 7, 80, 2, 2, 23933, 3510, 3, 2, 2, 2, 23934, 23935, 7, 85, 2, 2, 23935, 23936, 7, 91, 2, 2, 23936, 23937, 7, 85, 2, 2, 23937, 23938, 7, 97, 2, 2, 23938, 23939, 7, 81, 2, 2, 23939, 23940, 7, 82, 2, 2, 23940, 23941, 7, 97, 2, 2, 23941, 23942, 7, 88, 2, 2, 23942, 23943, 7, 84, 2, 2, 23943, 23944, 7, 71, 2, 2, 23944, 23945, 7, 72, 2, 2, 23945, 3512, 3, 2, 2, 2, 23946, 23947, 7, 85, 2, 2, 23947, 23948, 7, 91, 2, 2, 23948, 23949, 7, 85, 2, 2, 23949, 23950, 7, 97, 2, 2, 23950, 23951, 7, 81, 2, 2, 23951, 23952, 7, 82, 2, 2, 23952, 23953, 7, 97, 2, 2, 23953, 23954, 7, 88, 2, 2, 23954, 23955, 7, 88, 2, 2, 23955, 23956, 7, 70, 2, 2, 23956, 3514, 3, 2, 2, 2, 23957, 23958, 7, 85, 2, 2, 23958, 23959, 7, 91, 2, 2, 23959, 23960, 7, 85, 2, 2, 23960, 23961, 7, 97, 2, 2, 23961, 23962, 7, 81, 2, 2, 23962, 23963, 7, 82, 2, 2, 23963, 23964, 7, 97, 2, 2, 23964, 23965, 7, 90, 2, 2, 23965, 23966, 7, 79, 2, 2, 23966, 23967, 7, 78, 2, 2, 23967, 23968, 7, 69, 2, 2, 23968, 23969, 7, 81, 2, 2, 23969, 23970, 7, 80, 2, 2, 23970, 23971, 7, 85, 2, 2, 23971, 23972, 7, 97, 2, 2, 23972, 23973, 7, 72, 2, 2, 23973, 23974, 7, 81, 2, 2, 23974, 23975, 7, 84, 2, 2, 23975, 23976, 7, 97, 2, 2, 23976, 23977, 7, 69, 2, 2, 23977, 23978, 7, 85, 2, 2, 23978, 23979, 7, 90, 2, 2, 23979, 3516, 3, 2, 2, 2, 23980, 23981, 7, 85, 2, 2, 23981, 23982, 7, 91, 2, 2, 23982, 23983, 7, 85, 2, 2, 23983, 23984, 7, 97, 2, 2, 23984, 23985, 7, 81, 2, 2, 23985, 23986, 7, 82, 2, 2, 23986, 23987, 7, 97, 2, 2, 23987, 23988, 7, 90, 2, 2, 23988, 23989, 7, 82, 2, 2, 23989, 23990, 7, 86, 2, 2, 23990, 23991, 7, 74, 2, 2, 23991, 23992, 7, 67, 2, 2, 23992, 23993, 7, 86, 2, 2, 23993, 23994, 7, 73, 2, 2, 23994, 3518, 3, 2, 2, 2, 23995, 23996, 7, 85, 2, 2, 23996, 23997, 7, 91, 2, 2, 23997, 23998, 7, 85, 2, 2, 23998, 23999, 7, 97, 2, 2, 23999, 24000, 7, 81, 2, 2, 24000, 24001, 7, 82, 2, 2, 24001, 24002, 7, 97, 2, 2, 24002, 24003, 7, 90, 2, 2, 24003, 24004, 7, 82, 2, 2, 24004, 24005, 7, 86, 2, 2, 24005, 24006, 7, 74, 2, 2, 24006, 24007, 7, 75, 2, 2, 24007, 24008, 7, 70, 2, 2, 24008, 24009, 7, 90, 2, 2, 24009, 3520, 3, 2, 2, 2, 24010, 24011, 7, 85, 2, 2, 24011, 24012, 7, 91, 2, 2, 24012, 24013, 7, 85, 2, 2, 24013, 24014, 7, 97, 2, 2, 24014, 24015, 7, 81, 2, 2, 24015, 24016, 7, 82, 2, 2, 24016, 24017, 7, 97, 2, 2, 24017, 24018, 7, 90, 2, 2, 24018, 24019, 7, 82, 2, 2, 24019, 24020, 7, 86, 2, 2, 24020, 24021, 7, 74, 2, 2, 24021, 24022, 7, 81, 2, 2, 24022, 24023, 7, 82, 2, 2, 24023, 3522, 3, 2, 2, 2, 24024, 24025, 7, 85, 2, 2, 24025, 24026, 7, 91, 2, 2, 24026, 24027, 7, 85, 2, 2, 24027, 24028, 7, 97, 2, 2, 24028, 24029, 7, 81, 2, 2, 24029, 24030, 7, 82, 2, 2, 24030, 24031, 7, 97, 2, 2, 24031, 24032, 7, 90, 2, 2, 24032, 24033, 7, 86, 2, 2, 24033, 24034, 7, 90, 2, 2, 24034, 24035, 7, 86, 2, 2, 24035, 24036, 7, 52, 2, 2, 24036, 24037, 7, 85, 2, 2, 24037, 24038, 7, 83, 2, 2, 24038, 24039, 7, 78, 2, 2, 24039, 24040, 7, 86, 2, 2, 24040, 3524, 3, 2, 2, 2, 24041, 24042, 7, 85, 2, 2, 24042, 24043, 7, 91, 2, 2, 24043, 24044, 7, 85, 2, 2, 24044, 24045, 7, 97, 2, 2, 24045, 24046, 7, 81, 2, 2, 24046, 24047, 7, 82, 2, 2, 24047, 24048, 7, 97, 2, 2, 24048, 24049, 7, 92, 2, 2, 24049, 24050, 7, 81, 2, 2, 24050, 24051, 7, 80, 2, 2, 24051, 24052, 7, 71, 2, 2, 24052, 24053, 7, 97, 2, 2, 24053, 24054, 7, 75, 2, 2, 24054, 24055, 7, 70, 2, 2, 24055, 3526, 3, 2, 2, 2, 24056, 24057, 7, 85, 2, 2, 24057, 24058, 7, 91, 2, 2, 24058, 24059, 7, 85, 2, 2, 24059, 24060, 7, 97, 2, 2, 24060, 24061, 7, 81, 2, 2, 24061, 24062, 7, 84, 2, 2, 24062, 24063, 7, 70, 2, 2, 24063, 24064, 7, 71, 2, 2, 24064, 24065, 7, 84, 2, 2, 24065, 24066, 7, 77, 2, 2, 24066, 24067, 7, 71, 2, 2, 24067, 24068, 7, 91, 2, 2, 24068, 24069, 7, 97, 2, 2, 24069, 24070, 7, 70, 2, 2, 24070, 24071, 7, 71, 2, 2, 24071, 24072, 7, 82, 2, 2, 24072, 24073, 7, 86, 2, 2, 24073, 24074, 7, 74, 2, 2, 24074, 3528, 3, 2, 2, 2, 24075, 24076, 7, 85, 2, 2, 24076, 24077, 7, 91, 2, 2, 24077, 24078, 7, 85, 2, 2, 24078, 24079, 7, 97, 2, 2, 24079, 24080, 7, 81, 2, 2, 24080, 24081, 7, 84, 2, 2, 24081, 24082, 7, 70, 2, 2, 24082, 24083, 7, 71, 2, 2, 24083, 24084, 7, 84, 2, 2, 24084, 24085, 7, 77, 2, 2, 24085, 24086, 7, 71, 2, 2, 24086, 24087, 7, 91, 2, 2, 24087, 24088, 7, 97, 2, 2, 24088, 24089, 7, 79, 2, 2, 24089, 24090, 7, 67, 2, 2, 24090, 24091, 7, 90, 2, 2, 24091, 24092, 7, 69, 2, 2, 24092, 24093, 7, 74, 2, 2, 24093, 24094, 7, 75, 2, 2, 24094, 24095, 7, 78, 2, 2, 24095, 24096, 7, 70, 2, 2, 24096, 3530, 3, 2, 2, 2, 24097, 24098, 7, 85, 2, 2, 24098, 24099, 7, 91, 2, 2, 24099, 24100, 7, 85, 2, 2, 24100, 24101, 7, 97, 2, 2, 24101, 24102, 7, 81, 2, 2, 24102, 24103, 7, 84, 2, 2, 24103, 24104, 7, 70, 2, 2, 24104, 24105, 7, 71, 2, 2, 24105, 24106, 7, 84, 2, 2, 24106, 24107, 7, 77, 2, 2, 24107, 24108, 7, 71, 2, 2, 24108, 24109, 7, 91, 2, 2, 24109, 24110, 7, 97, 2, 2, 24110, 24111, 7, 82, 2, 2, 24111, 24112, 7, 67, 2, 2, 24112, 24113, 7, 84, 2, 2, 24113, 24114, 7, 71, 2, 2, 24114, 24115, 7, 80, 2, 2, 24115, 24116, 7, 86, 2, 2, 24116, 3532, 3, 2, 2, 2, 24117, 24118, 7, 85, 2, 2, 24118, 24119, 7, 91, 2, 2, 24119, 24120, 7, 85, 2, 2, 24120, 24121, 7, 97, 2, 2, 24121, 24122, 7, 82, 2, 2, 24122, 24123, 7, 67, 2, 2, 24123, 24124, 7, 84, 2, 2, 24124, 24125, 7, 67, 2, 2, 24125, 24126, 7, 78, 2, 2, 24126, 24127, 7, 78, 2, 2, 24127, 24128, 7, 71, 2, 2, 24128, 24129, 7, 78, 2, 2, 24129, 24130, 7, 97, 2, 2, 24130, 24131, 7, 86, 2, 2, 24131, 24132, 7, 90, 2, 2, 24132, 24133, 7, 80, 2, 2, 24133, 3534, 3, 2, 2, 2, 24134, 24135, 7, 85, 2, 2, 24135, 24136, 7, 91, 2, 2, 24136, 24137, 7, 85, 2, 2, 24137, 24138, 7, 97, 2, 2, 24138, 24139, 7, 82, 2, 2, 24139, 24140, 7, 67, 2, 2, 24140, 24141, 7, 86, 2, 2, 24141, 24142, 7, 74, 2, 2, 24142, 24143, 7, 75, 2, 2, 24143, 24144, 7, 70, 2, 2, 24144, 24145, 7, 97, 2, 2, 24145, 24146, 7, 75, 2, 2, 24146, 24147, 7, 85, 2, 2, 24147, 24148, 7, 97, 2, 2, 24148, 24149, 7, 67, 2, 2, 24149, 24150, 7, 86, 2, 2, 24150, 24151, 7, 86, 2, 2, 24151, 24152, 7, 84, 2, 2, 24152, 3536, 3, 2, 2, 2, 24153, 24154, 7, 85, 2, 2, 24154, 24155, 7, 91, 2, 2, 24155, 24156, 7, 85, 2, 2, 24156, 24157, 7, 97, 2, 2, 24157, 24158, 7, 82, 2, 2, 24158, 24159, 7, 67, 2, 2, 24159, 24160, 7, 86, 2, 2, 24160, 24161, 7, 74, 2, 2, 24161, 24162, 7, 75, 2, 2, 24162, 24163, 7, 70, 2, 2, 24163, 24164, 7, 97, 2, 2, 24164, 24165, 7, 75, 2, 2, 24165, 24166, 7, 85, 2, 2, 24166, 24167, 7, 97, 2, 2, 24167, 24168, 7, 80, 2, 2, 24168, 24169, 7, 79, 2, 2, 24169, 24170, 7, 85, 2, 2, 24170, 24171, 7, 82, 2, 2, 24171, 24172, 7, 69, 2, 2, 24172, 3538, 3, 2, 2, 2, 24173, 24174, 7, 85, 2, 2, 24174, 24175, 7, 91, 2, 2, 24175, 24176, 7, 85, 2, 2, 24176, 24177, 7, 97, 2, 2, 24177, 24178, 7, 82, 2, 2, 24178, 24179, 7, 67, 2, 2, 24179, 24180, 7, 86, 2, 2, 24180, 24181, 7, 74, 2, 2, 24181, 24182, 7, 75, 2, 2, 24182, 24183, 7, 70, 2, 2, 24183, 24184, 7, 97, 2, 2, 24184, 24185, 7, 78, 2, 2, 24185, 24186, 7, 67, 2, 2, 24186, 24187, 7, 85, 2, 2, 24187, 24188, 7, 86, 2, 2, 24188, 24189, 7, 80, 2, 2, 24189, 24190, 7, 67, 2, 2, 24190, 24191, 7, 79, 2, 2, 24191, 24192, 7, 71, 2, 2, 24192, 3540, 3, 2, 2, 2, 24193, 24194, 7, 85, 2, 2, 24194, 24195, 7, 91, 2, 2, 24195, 24196, 7, 85, 2, 2, 24196, 24197, 7, 97, 2, 2, 24197, 24198, 7, 82, 2, 2, 24198, 24199, 7, 67, 2, 2, 24199, 24200, 7, 86, 2, 2, 24200, 24201, 7, 74, 2, 2, 24201, 24202, 7, 75, 2, 2, 24202, 24203, 7, 70, 2, 2, 24203, 24204, 7, 97, 2, 2, 24204, 24205, 7, 78, 2, 2, 24205, 24206, 7, 67, 2, 2, 24206, 24207, 7, 85, 2, 2, 24207, 24208, 7, 86, 2, 2, 24208, 24209, 7, 80, 2, 2, 24209, 24210, 7, 79, 2, 2, 24210, 24211, 7, 85, 2, 2, 24211, 24212, 7, 82, 2, 2, 24212, 24213, 7, 69, 2, 2, 24213, 3542, 3, 2, 2, 2, 24214, 24215, 7, 85, 2, 2, 24215, 24216, 7, 91, 2, 2, 24216, 24217, 7, 85, 2, 2, 24217, 24218, 7, 97, 2, 2, 24218, 24219, 7, 82, 2, 2, 24219, 24220, 7, 67, 2, 2, 24220, 24221, 7, 86, 2, 2, 24221, 24222, 7, 74, 2, 2, 24222, 24223, 7, 97, 2, 2, 24223, 24224, 7, 84, 2, 2, 24224, 24225, 7, 71, 2, 2, 24225, 24226, 7, 88, 2, 2, 24226, 24227, 7, 71, 2, 2, 24227, 24228, 7, 84, 2, 2, 24228, 24229, 7, 85, 2, 2, 24229, 24230, 7, 71, 2, 2, 24230, 3544, 3, 2, 2, 2, 24231, 24232, 7, 85, 2, 2, 24232, 24233, 7, 91, 2, 2, 24233, 24234, 7, 85, 2, 2, 24234, 24235, 7, 97, 2, 2, 24235, 24236, 7, 82, 2, 2, 24236, 24237, 7, 90, 2, 2, 24237, 24238, 7, 83, 2, 2, 24238, 24239, 7, 71, 2, 2, 24239, 24240, 7, 90, 2, 2, 24240, 24241, 7, 86, 2, 2, 24241, 24242, 7, 84, 2, 2, 24242, 24243, 7, 67, 2, 2, 24243, 24244, 7, 69, 2, 2, 24244, 24245, 7, 86, 2, 2, 24245, 3546, 3, 2, 2, 2, 24246, 24247, 7, 85, 2, 2, 24247, 24248, 7, 91, 2, 2, 24248, 24249, 7, 85, 2, 2, 24249, 24250, 7, 97, 2, 2, 24250, 24251, 7, 84, 2, 2, 24251, 24252, 7, 67, 2, 2, 24252, 24253, 7, 89, 2, 2, 24253, 24254, 7, 97, 2, 2, 24254, 24255, 7, 86, 2, 2, 24255, 24256, 7, 81, 2, 2, 24256, 24257, 7, 97, 2, 2, 24257, 24258, 7, 90, 2, 2, 24258, 24259, 7, 85, 2, 2, 24259, 24260, 7, 75, 2, 2, 24260, 24261, 7, 70, 2, 2, 24261, 3548, 3, 2, 2, 2, 24262, 24263, 7, 85, 2, 2, 24263, 24264, 7, 91, 2, 2, 24264, 24265, 7, 85, 2, 2, 24265, 24266, 7, 97, 2, 2, 24266, 24267, 7, 84, 2, 2, 24267, 24268, 7, 75, 2, 2, 24268, 24269, 7, 70, 2, 2, 24269, 24270, 7, 97, 2, 2, 24270, 24271, 7, 81, 2, 2, 24271, 24272, 7, 84, 2, 2, 24272, 24273, 7, 70, 2, 2, 24273, 24274, 7, 71, 2, 2, 24274, 24275, 7, 84, 2, 2, 24275, 3550, 3, 2, 2, 2, 24276, 24277, 7, 85, 2, 2, 24277, 24278, 7, 91, 2, 2, 24278, 24279, 7, 85, 2, 2, 24279, 24280, 7, 97, 2, 2, 24280, 24281, 7, 84, 2, 2, 24281, 24282, 7, 81, 2, 2, 24282, 24283, 7, 89, 2, 2, 24283, 24284, 7, 97, 2, 2, 24284, 24285, 7, 70, 2, 2, 24285, 24286, 7, 71, 2, 2, 24286, 24287, 7, 78, 2, 2, 24287, 24288, 7, 86, 2, 2, 24288, 24289, 7, 67, 2, 2, 24289, 3552, 3, 2, 2, 2, 24290, 24291, 7, 85, 2, 2, 24291, 24292, 7, 91, 2, 2, 24292, 24293, 7, 85, 2, 2, 24293, 24294, 7, 97, 2, 2, 24294, 24295, 7, 85, 2, 2, 24295, 24296, 7, 69, 2, 2, 24296, 24297, 7, 97, 2, 2, 24297, 24298, 7, 52, 2, 2, 24298, 24299, 7, 97, 2, 2, 24299, 24300, 7, 90, 2, 2, 24300, 24301, 7, 79, 2, 2, 24301, 24302, 7, 78, 2, 2, 24302, 24303, 7, 86, 2, 2, 24303, 3554, 3, 2, 2, 2, 24304, 24305, 7, 85, 2, 2, 24305, 24306, 7, 91, 2, 2, 24306, 24307, 7, 85, 2, 2, 24307, 24308, 7, 97, 2, 2, 24308, 24309, 7, 85, 2, 2, 24309, 24310, 7, 91, 2, 2, 24310, 24311, 7, 80, 2, 2, 24311, 24312, 7, 84, 2, 2, 24312, 24313, 7, 69, 2, 2, 24313, 24314, 7, 75, 2, 2, 24314, 24315, 7, 84, 2, 2, 24315, 24316, 7, 71, 2, 2, 24316, 24317, 7, 70, 2, 2, 24317, 24318, 7, 81, 2, 2, 24318, 3556, 3, 2, 2, 2, 24319, 24320, 7, 85, 2, 2, 24320, 24321, 7, 91, 2, 2, 24321, 24322, 7, 85, 2, 2, 24322, 24323, 7, 86, 2, 2, 24323, 24324, 7, 71, 2, 2, 24324, 24325, 7, 79, 2, 2, 24325, 24326, 7, 97, 2, 2, 24326, 24327, 7, 70, 2, 2, 24327, 24328, 7, 71, 2, 2, 24328, 24329, 7, 72, 2, 2, 24329, 24330, 7, 75, 2, 2, 24330, 24331, 7, 80, 2, 2, 24331, 24332, 7, 71, 2, 2, 24332, 24333, 7, 70, 2, 2, 24333, 3558, 3, 2, 2, 2, 24334, 24335, 7, 85, 2, 2, 24335, 24336, 7, 91, 2, 2, 24336, 24337, 7, 85, 2, 2, 24337, 24338, 7, 86, 2, 2, 24338, 24339, 7, 71, 2, 2, 24339, 24340, 7, 79, 2, 2, 24340, 3560, 3, 2, 2, 2, 24341, 24342, 7, 85, 2, 2, 24342, 24343, 7, 91, 2, 2, 24343, 24344, 7, 85, 2, 2, 24344, 24345, 7, 86, 2, 2, 24345, 24346, 7, 75, 2, 2, 24346, 24347, 7, 79, 2, 2, 24347, 24348, 7, 71, 2, 2, 24348, 24349, 7, 85, 2, 2, 24349, 24350, 7, 86, 2, 2, 24350, 24351, 7, 67, 2, 2, 24351, 24352, 7, 79, 2, 2, 24352, 24353, 7, 82, 2, 2, 24353, 3562, 3, 2, 2, 2, 24354, 24355, 7, 85, 2, 2, 24355, 24356, 7, 91, 2, 2, 24356, 24357, 7, 85, 2, 2, 24357, 24358, 7, 97, 2, 2, 24358, 24359, 7, 86, 2, 2, 24359, 24360, 7, 91, 2, 2, 24360, 24361, 7, 82, 2, 2, 24361, 24362, 7, 71, 2, 2, 24362, 24363, 7, 75, 2, 2, 24363, 24364, 7, 70, 2, 2, 24364, 3564, 3, 2, 2, 2, 24365, 24366, 7, 85, 2, 2, 24366, 24367, 7, 91, 2, 2, 24367, 24368, 7, 85, 2, 2, 24368, 24369, 7, 97, 2, 2, 24369, 24370, 7, 87, 2, 2, 24370, 24371, 7, 79, 2, 2, 24371, 24372, 7, 67, 2, 2, 24372, 24373, 7, 77, 2, 2, 24373, 24374, 7, 71, 2, 2, 24374, 24375, 7, 90, 2, 2, 24375, 24376, 7, 79, 2, 2, 24376, 24377, 7, 78, 2, 2, 24377, 3566, 3, 2, 2, 2, 24378, 24379, 7, 85, 2, 2, 24379, 24380, 7, 91, 2, 2, 24380, 24381, 7, 85, 2, 2, 24381, 24382, 7, 97, 2, 2, 24382, 24383, 7, 90, 2, 2, 24383, 24384, 7, 79, 2, 2, 24384, 24385, 7, 78, 2, 2, 24385, 24386, 7, 67, 2, 2, 24386, 24387, 7, 80, 2, 2, 24387, 24388, 7, 67, 2, 2, 24388, 24389, 7, 78, 2, 2, 24389, 24390, 7, 91, 2, 2, 24390, 24391, 7, 92, 2, 2, 24391, 24392, 7, 71, 2, 2, 24392, 3568, 3, 2, 2, 2, 24393, 24394, 7, 85, 2, 2, 24394, 24395, 7, 91, 2, 2, 24395, 24396, 7, 85, 2, 2, 24396, 24397, 7, 97, 2, 2, 24397, 24398, 7, 90, 2, 2, 24398, 24399, 7, 79, 2, 2, 24399, 24400, 7, 78, 2, 2, 24400, 24401, 7, 69, 2, 2, 24401, 24402, 7, 81, 2, 2, 24402, 24403, 7, 80, 2, 2, 24403, 24404, 7, 86, 2, 2, 24404, 24405, 7, 67, 2, 2, 24405, 24406, 7, 75, 2, 2, 24406, 24407, 7, 80, 2, 2, 24407, 24408, 7, 85, 2, 2, 24408, 3570, 3, 2, 2, 2, 24409, 24410, 7, 85, 2, 2, 24410, 24411, 7, 91, 2, 2, 24411, 24412, 7, 85, 2, 2, 24412, 24413, 7, 97, 2, 2, 24413, 24414, 7, 90, 2, 2, 24414, 24415, 7, 79, 2, 2, 24415, 24416, 7, 78, 2, 2, 24416, 24417, 7, 69, 2, 2, 24417, 24418, 7, 81, 2, 2, 24418, 24419, 7, 80, 2, 2, 24419, 24420, 7, 88, 2, 2, 24420, 3572, 3, 2, 2, 2, 24421, 24422, 7, 85, 2, 2, 24422, 24423, 7, 91, 2, 2, 24423, 24424, 7, 85, 2, 2, 24424, 24425, 7, 97, 2, 2, 24425, 24426, 7, 90, 2, 2, 24426, 24427, 7, 79, 2, 2, 24427, 24428, 7, 78, 2, 2, 24428, 24429, 7, 71, 2, 2, 24429, 24430, 7, 90, 2, 2, 24430, 24431, 7, 80, 2, 2, 24431, 24432, 7, 85, 2, 2, 24432, 24433, 7, 87, 2, 2, 24433, 24434, 7, 84, 2, 2, 24434, 24435, 7, 75, 2, 2, 24435, 3574, 3, 2, 2, 2, 24436, 24437, 7, 85, 2, 2, 24437, 24438, 7, 91, 2, 2, 24438, 24439, 7, 85, 2, 2, 24439, 24440, 7, 97, 2, 2, 24440, 24441, 7, 90, 2, 2, 24441, 24442, 7, 79, 2, 2, 24442, 24443, 7, 78, 2, 2, 24443, 24444, 7, 73, 2, 2, 24444, 24445, 7, 71, 2, 2, 24445, 24446, 7, 80, 2, 2, 24446, 3576, 3, 2, 2, 2, 24447, 24448, 7, 85, 2, 2, 24448, 24449, 7, 91, 2, 2, 24449, 24450, 7, 85, 2, 2, 24450, 24451, 7, 97, 2, 2, 24451, 24452, 7, 90, 2, 2, 24452, 24453, 7, 79, 2, 2, 24453, 24454, 7, 78, 2, 2, 24454, 24455, 7, 75, 2, 2, 24455, 24456, 7, 97, 2, 2, 24456, 24457, 7, 78, 2, 2, 24457, 24458, 7, 81, 2, 2, 24458, 24459, 7, 69, 2, 2, 24459, 24460, 7, 97, 2, 2, 24460, 24461, 7, 75, 2, 2, 24461, 24462, 7, 85, 2, 2, 24462, 24463, 7, 80, 2, 2, 24463, 24464, 7, 81, 2, 2, 24464, 24465, 7, 70, 2, 2, 24465, 24466, 7, 71, 2, 2, 24466, 3578, 3, 2, 2, 2, 24467, 24468, 7, 85, 2, 2, 24468, 24469, 7, 91, 2, 2, 24469, 24470, 7, 85, 2, 2, 24470, 24471, 7, 97, 2, 2, 24471, 24472, 7, 90, 2, 2, 24472, 24473, 7, 79, 2, 2, 24473, 24474, 7, 78, 2, 2, 24474, 24475, 7, 75, 2, 2, 24475, 24476, 7, 97, 2, 2, 24476, 24477, 7, 78, 2, 2, 24477, 24478, 7, 81, 2, 2, 24478, 24479, 7, 69, 2, 2, 24479, 24480, 7, 97, 2, 2, 24480, 24481, 7, 75, 2, 2, 24481, 24482, 7, 85, 2, 2, 24482, 24483, 7, 86, 2, 2, 24483, 24484, 7, 71, 2, 2, 24484, 24485, 7, 90, 2, 2, 24485, 24486, 7, 86, 2, 2, 24486, 3580, 3, 2, 2, 2, 24487, 24488, 7, 85, 2, 2, 24488, 24489, 7, 91, 2, 2, 24489, 24490, 7, 85, 2, 2, 24490, 24491, 7, 97, 2, 2, 24491, 24492, 7, 90, 2, 2, 24492, 24493, 7, 79, 2, 2, 24493, 24494, 7, 78, 2, 2, 24494, 24495, 7, 75, 2, 2, 24495, 24496, 7, 80, 2, 2, 24496, 24497, 7, 85, 2, 2, 24497, 24498, 7, 86, 2, 2, 24498, 24499, 7, 84, 2, 2, 24499, 3582, 3, 2, 2, 2, 24500, 24501, 7, 85, 2, 2, 24501, 24502, 7, 91, 2, 2, 24502, 24503, 7, 85, 2, 2, 24503, 24504, 7, 97, 2, 2, 24504, 24505, 7, 90, 2, 2, 24505, 24506, 7, 79, 2, 2, 24506, 24507, 7, 78, 2, 2, 24507, 24508, 7, 78, 2, 2, 24508, 24509, 7, 81, 2, 2, 24509, 24510, 7, 69, 2, 2, 24510, 24511, 7, 67, 2, 2, 24511, 24512, 7, 86, 2, 2, 24512, 24513, 7, 81, 2, 2, 24513, 24514, 7, 84, 2, 2, 24514, 24515, 7, 97, 2, 2, 24515, 24516, 7, 73, 2, 2, 24516, 24517, 7, 71, 2, 2, 24517, 24518, 7, 86, 2, 2, 24518, 24519, 7, 85, 2, 2, 24519, 24520, 7, 88, 2, 2, 24520, 24521, 7, 67, 2, 2, 24521, 24522, 7, 78, 2, 2, 24522, 3584, 3, 2, 2, 2, 24523, 24524, 7, 85, 2, 2, 24524, 24525, 7, 91, 2, 2, 24525, 24526, 7, 85, 2, 2, 24526, 24527, 7, 97, 2, 2, 24527, 24528, 7, 90, 2, 2, 24528, 24529, 7, 79, 2, 2, 24529, 24530, 7, 78, 2, 2, 24530, 24531, 7, 80, 2, 2, 24531, 24532, 7, 81, 2, 2, 24532, 24533, 7, 70, 2, 2, 24533, 24534, 7, 71, 2, 2, 24534, 24535, 7, 75, 2, 2, 24535, 24536, 7, 70, 2, 2, 24536, 24537, 7, 97, 2, 2, 24537, 24538, 7, 73, 2, 2, 24538, 24539, 7, 71, 2, 2, 24539, 24540, 7, 86, 2, 2, 24540, 24541, 7, 69, 2, 2, 24541, 24542, 7, 75, 2, 2, 24542, 24543, 7, 70, 2, 2, 24543, 3586, 3, 2, 2, 2, 24544, 24545, 7, 85, 2, 2, 24545, 24546, 7, 91, 2, 2, 24546, 24547, 7, 85, 2, 2, 24547, 24548, 7, 97, 2, 2, 24548, 24549, 7, 90, 2, 2, 24549, 24550, 7, 79, 2, 2, 24550, 24551, 7, 78, 2, 2, 24551, 24552, 7, 80, 2, 2, 24552, 24553, 7, 81, 2, 2, 24553, 24554, 7, 70, 2, 2, 24554, 24555, 7, 71, 2, 2, 24555, 24556, 7, 75, 2, 2, 24556, 24557, 7, 70, 2, 2, 24557, 24558, 7, 97, 2, 2, 24558, 24559, 7, 73, 2, 2, 24559, 24560, 7, 71, 2, 2, 24560, 24561, 7, 86, 2, 2, 24561, 24562, 7, 78, 2, 2, 24562, 24563, 7, 81, 2, 2, 24563, 24564, 7, 69, 2, 2, 24564, 24565, 7, 67, 2, 2, 24565, 24566, 7, 86, 2, 2, 24566, 24567, 7, 81, 2, 2, 24567, 24568, 7, 84, 2, 2, 24568, 3588, 3, 2, 2, 2, 24569, 24570, 7, 85, 2, 2, 24570, 24571, 7, 91, 2, 2, 24571, 24572, 7, 85, 2, 2, 24572, 24573, 7, 97, 2, 2, 24573, 24574, 7, 90, 2, 2, 24574, 24575, 7, 79, 2, 2, 24575, 24576, 7, 78, 2, 2, 24576, 24577, 7, 80, 2, 2, 24577, 24578, 7, 81, 2, 2, 24578, 24579, 7, 70, 2, 2, 24579, 24580, 7, 71, 2, 2, 24580, 24581, 7, 75, 2, 2, 24581, 24582, 7, 70, 2, 2, 24582, 24583, 7, 97, 2, 2, 24583, 24584, 7, 73, 2, 2, 24584, 24585, 7, 71, 2, 2, 24585, 24586, 7, 86, 2, 2, 24586, 24587, 7, 81, 2, 2, 24587, 24588, 7, 77, 2, 2, 24588, 24589, 7, 71, 2, 2, 24589, 24590, 7, 91, 2, 2, 24590, 3590, 3, 2, 2, 2, 24591, 24592, 7, 85, 2, 2, 24592, 24593, 7, 91, 2, 2, 24593, 24594, 7, 85, 2, 2, 24594, 24595, 7, 97, 2, 2, 24595, 24596, 7, 90, 2, 2, 24596, 24597, 7, 79, 2, 2, 24597, 24598, 7, 78, 2, 2, 24598, 24599, 7, 80, 2, 2, 24599, 24600, 7, 81, 2, 2, 24600, 24601, 7, 70, 2, 2, 24601, 24602, 7, 71, 2, 2, 24602, 24603, 7, 75, 2, 2, 24603, 24604, 7, 70, 2, 2, 24604, 24605, 7, 97, 2, 2, 24605, 24606, 7, 73, 2, 2, 24606, 24607, 7, 71, 2, 2, 24607, 24608, 7, 86, 2, 2, 24608, 24609, 7, 82, 2, 2, 24609, 24610, 7, 67, 2, 2, 24610, 24611, 7, 86, 2, 2, 24611, 24612, 7, 74, 2, 2, 24612, 24613, 7, 75, 2, 2, 24613, 24614, 7, 70, 2, 2, 24614, 3592, 3, 2, 2, 2, 24615, 24616, 7, 85, 2, 2, 24616, 24617, 7, 91, 2, 2, 24617, 24618, 7, 85, 2, 2, 24618, 24619, 7, 97, 2, 2, 24619, 24620, 7, 90, 2, 2, 24620, 24621, 7, 79, 2, 2, 24621, 24622, 7, 78, 2, 2, 24622, 24623, 7, 80, 2, 2, 24623, 24624, 7, 81, 2, 2, 24624, 24625, 7, 70, 2, 2, 24625, 24626, 7, 71, 2, 2, 24626, 24627, 7, 75, 2, 2, 24627, 24628, 7, 70, 2, 2, 24628, 24629, 7, 97, 2, 2, 24629, 24630, 7, 73, 2, 2, 24630, 24631, 7, 71, 2, 2, 24631, 24632, 7, 86, 2, 2, 24632, 24633, 7, 82, 2, 2, 24633, 24634, 7, 86, 2, 2, 24634, 24635, 7, 84, 2, 2, 24635, 24636, 7, 75, 2, 2, 24636, 24637, 7, 70, 2, 2, 24637, 3594, 3, 2, 2, 2, 24638, 24639, 7, 85, 2, 2, 24639, 24640, 7, 91, 2, 2, 24640, 24641, 7, 85, 2, 2, 24641, 24642, 7, 97, 2, 2, 24642, 24643, 7, 90, 2, 2, 24643, 24644, 7, 79, 2, 2, 24644, 24645, 7, 78, 2, 2, 24645, 24646, 7, 80, 2, 2, 24646, 24647, 7, 81, 2, 2, 24647, 24648, 7, 70, 2, 2, 24648, 24649, 7, 71, 2, 2, 24649, 24650, 7, 75, 2, 2, 24650, 24651, 7, 70, 2, 2, 24651, 24652, 7, 97, 2, 2, 24652, 24653, 7, 73, 2, 2, 24653, 24654, 7, 71, 2, 2, 24654, 24655, 7, 86, 2, 2, 24655, 24656, 7, 84, 2, 2, 24656, 24657, 7, 75, 2, 2, 24657, 24658, 7, 70, 2, 2, 24658, 3596, 3, 2, 2, 2, 24659, 24660, 7, 85, 2, 2, 24660, 24661, 7, 91, 2, 2, 24661, 24662, 7, 85, 2, 2, 24662, 24663, 7, 97, 2, 2, 24663, 24664, 7, 90, 2, 2, 24664, 24665, 7, 79, 2, 2, 24665, 24666, 7, 78, 2, 2, 24666, 24667, 7, 80, 2, 2, 24667, 24668, 7, 81, 2, 2, 24668, 24669, 7, 70, 2, 2, 24669, 24670, 7, 71, 2, 2, 24670, 24671, 7, 75, 2, 2, 24671, 24672, 7, 70, 2, 2, 24672, 24673, 7, 97, 2, 2, 24673, 24674, 7, 73, 2, 2, 24674, 24675, 7, 71, 2, 2, 24675, 24676, 7, 86, 2, 2, 24676, 24677, 7, 85, 2, 2, 24677, 24678, 7, 88, 2, 2, 24678, 24679, 7, 67, 2, 2, 24679, 24680, 7, 78, 2, 2, 24680, 3598, 3, 2, 2, 2, 24681, 24682, 7, 85, 2, 2, 24682, 24683, 7, 91, 2, 2, 24683, 24684, 7, 85, 2, 2, 24684, 24685, 7, 97, 2, 2, 24685, 24686, 7, 90, 2, 2, 24686, 24687, 7, 79, 2, 2, 24687, 24688, 7, 78, 2, 2, 24688, 24689, 7, 80, 2, 2, 24689, 24690, 7, 81, 2, 2, 24690, 24691, 7, 70, 2, 2, 24691, 24692, 7, 71, 2, 2, 24692, 24693, 7, 75, 2, 2, 24693, 24694, 7, 70, 2, 2, 24694, 24695, 7, 97, 2, 2, 24695, 24696, 7, 73, 2, 2, 24696, 24697, 7, 71, 2, 2, 24697, 24698, 7, 86, 2, 2, 24698, 24699, 7, 86, 2, 2, 24699, 24700, 7, 75, 2, 2, 24700, 24701, 7, 70, 2, 2, 24701, 3600, 3, 2, 2, 2, 24702, 24703, 7, 85, 2, 2, 24703, 24704, 7, 91, 2, 2, 24704, 24705, 7, 85, 2, 2, 24705, 24706, 7, 97, 2, 2, 24706, 24707, 7, 90, 2, 2, 24707, 24708, 7, 79, 2, 2, 24708, 24709, 7, 78, 2, 2, 24709, 24710, 7, 80, 2, 2, 24710, 24711, 7, 81, 2, 2, 24711, 24712, 7, 70, 2, 2, 24712, 24713, 7, 71, 2, 2, 24713, 24714, 7, 75, 2, 2, 24714, 24715, 7, 70, 2, 2, 24715, 3602, 3, 2, 2, 2, 24716, 24717, 7, 85, 2, 2, 24717, 24718, 7, 91, 2, 2, 24718, 24719, 7, 85, 2, 2, 24719, 24720, 7, 97, 2, 2, 24720, 24721, 7, 90, 2, 2, 24721, 24722, 7, 79, 2, 2, 24722, 24723, 7, 78, 2, 2, 24723, 24724, 7, 86, 2, 2, 24724, 24725, 7, 97, 2, 2, 24725, 24726, 7, 52, 2, 2, 24726, 24727, 7, 97, 2, 2, 24727, 24728, 7, 85, 2, 2, 24728, 24729, 7, 69, 2, 2, 24729, 3604, 3, 2, 2, 2, 24730, 24731, 7, 85, 2, 2, 24731, 24732, 7, 91, 2, 2, 24732, 24733, 7, 85, 2, 2, 24733, 24734, 7, 97, 2, 2, 24734, 24735, 7, 90, 2, 2, 24735, 24736, 7, 79, 2, 2, 24736, 24737, 7, 78, 2, 2, 24737, 24738, 7, 86, 2, 2, 24738, 24739, 7, 84, 2, 2, 24739, 24740, 7, 67, 2, 2, 24740, 24741, 7, 80, 2, 2, 24741, 24742, 7, 85, 2, 2, 24742, 24743, 7, 78, 2, 2, 24743, 24744, 7, 67, 2, 2, 24744, 24745, 7, 86, 2, 2, 24745, 24746, 7, 71, 2, 2, 24746, 3606, 3, 2, 2, 2, 24747, 24748, 7, 85, 2, 2, 24748, 24749, 7, 91, 2, 2, 24749, 24750, 7, 85, 2, 2, 24750, 24751, 7, 97, 2, 2, 24751, 24752, 7, 90, 2, 2, 24752, 24753, 7, 79, 2, 2, 24753, 24754, 7, 78, 2, 2, 24754, 24755, 7, 86, 2, 2, 24755, 24756, 7, 91, 2, 2, 24756, 24757, 7, 82, 2, 2, 24757, 24758, 7, 71, 2, 2, 24758, 24759, 7, 52, 2, 2, 24759, 24760, 7, 85, 2, 2, 24760, 24761, 7, 83, 2, 2, 24761, 24762, 7, 78, 2, 2, 24762, 3608, 3, 2, 2, 2, 24763, 24764, 7, 85, 2, 2, 24764, 24765, 7, 91, 2, 2, 24765, 24766, 7, 85, 2, 2, 24766, 24767, 7, 97, 2, 2, 24767, 24768, 7, 90, 2, 2, 24768, 24769, 7, 83, 2, 2, 24769, 24770, 7, 97, 2, 2, 24770, 24771, 7, 67, 2, 2, 24771, 24772, 7, 85, 2, 2, 24772, 24773, 7, 83, 2, 2, 24773, 24774, 7, 78, 2, 2, 24774, 24775, 7, 69, 2, 2, 24775, 24776, 7, 80, 2, 2, 24776, 24777, 7, 88, 2, 2, 24777, 3610, 3, 2, 2, 2, 24778, 24779, 7, 85, 2, 2, 24779, 24780, 7, 91, 2, 2, 24780, 24781, 7, 85, 2, 2, 24781, 24782, 7, 97, 2, 2, 24782, 24783, 7, 90, 2, 2, 24783, 24784, 7, 83, 2, 2, 24784, 24785, 7, 97, 2, 2, 24785, 24786, 7, 67, 2, 2, 24786, 24787, 7, 86, 2, 2, 24787, 24788, 7, 81, 2, 2, 24788, 24789, 7, 79, 2, 2, 24789, 24790, 7, 69, 2, 2, 24790, 24791, 7, 80, 2, 2, 24791, 24792, 7, 88, 2, 2, 24792, 24793, 7, 69, 2, 2, 24793, 24794, 7, 74, 2, 2, 24794, 24795, 7, 77, 2, 2, 24795, 3612, 3, 2, 2, 2, 24796, 24797, 7, 85, 2, 2, 24797, 24798, 7, 91, 2, 2, 24798, 24799, 7, 85, 2, 2, 24799, 24800, 7, 97, 2, 2, 24800, 24801, 7, 90, 2, 2, 24801, 24802, 7, 83, 2, 2, 24802, 24803, 7, 68, 2, 2, 24803, 24804, 7, 67, 2, 2, 24804, 24805, 7, 85, 2, 2, 24805, 24806, 7, 71, 2, 2, 24806, 24807, 7, 87, 2, 2, 24807, 24808, 7, 84, 2, 2, 24808, 24809, 7, 75, 2, 2, 24809, 3614, 3, 2, 2, 2, 24810, 24811, 7, 85, 2, 2, 24811, 24812, 7, 91, 2, 2, 24812, 24813, 7, 85, 2, 2, 24813, 24814, 7, 97, 2, 2, 24814, 24815, 7, 90, 2, 2, 24815, 24816, 7, 83, 2, 2, 24816, 24817, 7, 69, 2, 2, 24817, 24818, 7, 67, 2, 2, 24818, 24819, 7, 85, 2, 2, 24819, 24820, 7, 86, 2, 2, 24820, 24821, 7, 67, 2, 2, 24821, 24822, 7, 68, 2, 2, 24822, 24823, 7, 78, 2, 2, 24823, 24824, 7, 71, 2, 2, 24824, 24825, 7, 71, 2, 2, 24825, 24826, 7, 84, 2, 2, 24826, 24827, 7, 84, 2, 2, 24827, 24828, 7, 74, 2, 2, 24828, 3616, 3, 2, 2, 2, 24829, 24830, 7, 85, 2, 2, 24830, 24831, 7, 91, 2, 2, 24831, 24832, 7, 85, 2, 2, 24832, 24833, 7, 97, 2, 2, 24833, 24834, 7, 90, 2, 2, 24834, 24835, 7, 83, 2, 2, 24835, 24836, 7, 69, 2, 2, 24836, 24837, 7, 81, 2, 2, 24837, 24838, 7, 70, 2, 2, 24838, 24839, 7, 71, 2, 2, 24839, 24840, 7, 82, 2, 2, 24840, 24841, 7, 52, 2, 2, 24841, 24842, 7, 85, 2, 2, 24842, 24843, 7, 86, 2, 2, 24843, 24844, 7, 84, 2, 2, 24844, 3618, 3, 2, 2, 2, 24845, 24846, 7, 85, 2, 2, 24846, 24847, 7, 91, 2, 2, 24847, 24848, 7, 85, 2, 2, 24848, 24849, 7, 97, 2, 2, 24849, 24850, 7, 90, 2, 2, 24850, 24851, 7, 83, 2, 2, 24851, 24852, 7, 69, 2, 2, 24852, 24853, 7, 81, 2, 2, 24853, 24854, 7, 70, 2, 2, 24854, 24855, 7, 71, 2, 2, 24855, 24856, 7, 82, 2, 2, 24856, 24857, 7, 71, 2, 2, 24857, 24858, 7, 83, 2, 2, 24858, 3620, 3, 2, 2, 2, 24859, 24860, 7, 85, 2, 2, 24860, 24861, 7, 91, 2, 2, 24861, 24862, 7, 85, 2, 2, 24862, 24863, 7, 97, 2, 2, 24863, 24864, 7, 90, 2, 2, 24864, 24865, 7, 83, 2, 2, 24865, 24866, 7, 69, 2, 2, 24866, 24867, 7, 81, 2, 2, 24867, 24868, 7, 80, 2, 2, 24868, 24869, 7, 52, 2, 2, 24869, 24870, 7, 85, 2, 2, 24870, 24871, 7, 71, 2, 2, 24871, 24872, 7, 83, 2, 2, 24872, 3622, 3, 2, 2, 2, 24873, 24874, 7, 85, 2, 2, 24874, 24875, 7, 91, 2, 2, 24875, 24876, 7, 85, 2, 2, 24876, 24877, 7, 97, 2, 2, 24877, 24878, 7, 90, 2, 2, 24878, 24879, 7, 83, 2, 2, 24879, 24880, 7, 69, 2, 2, 24880, 24881, 7, 81, 2, 2, 24881, 24882, 7, 80, 2, 2, 24882, 24883, 7, 69, 2, 2, 24883, 24884, 7, 67, 2, 2, 24884, 24885, 7, 86, 2, 2, 24885, 3624, 3, 2, 2, 2, 24886, 24887, 7, 85, 2, 2, 24887, 24888, 7, 91, 2, 2, 24888, 24889, 7, 85, 2, 2, 24889, 24890, 7, 97, 2, 2, 24890, 24891, 7, 90, 2, 2, 24891, 24892, 7, 83, 2, 2, 24892, 24893, 7, 70, 2, 2, 24893, 24894, 7, 71, 2, 2, 24894, 24895, 7, 78, 2, 2, 24895, 24896, 7, 71, 2, 2, 24896, 24897, 7, 86, 2, 2, 24897, 24898, 7, 71, 2, 2, 24898, 3626, 3, 2, 2, 2, 24899, 24900, 7, 85, 2, 2, 24900, 24901, 7, 91, 2, 2, 24901, 24902, 7, 85, 2, 2, 24902, 24903, 7, 97, 2, 2, 24903, 24904, 7, 90, 2, 2, 24904, 24905, 7, 83, 2, 2, 24905, 24906, 7, 70, 2, 2, 24906, 24907, 7, 72, 2, 2, 24907, 24908, 7, 78, 2, 2, 24908, 24909, 7, 86, 2, 2, 24909, 24910, 7, 69, 2, 2, 24910, 24911, 7, 81, 2, 2, 24911, 24912, 7, 78, 2, 2, 24912, 24913, 7, 67, 2, 2, 24913, 24914, 7, 86, 2, 2, 24914, 24915, 7, 75, 2, 2, 24915, 24916, 7, 81, 2, 2, 24916, 24917, 7, 80, 2, 2, 24917, 3628, 3, 2, 2, 2, 24918, 24919, 7, 85, 2, 2, 24919, 24920, 7, 91, 2, 2, 24920, 24921, 7, 85, 2, 2, 24921, 24922, 7, 97, 2, 2, 24922, 24923, 7, 90, 2, 2, 24923, 24924, 7, 83, 2, 2, 24924, 24925, 7, 70, 2, 2, 24925, 24926, 7, 81, 2, 2, 24926, 24927, 7, 69, 2, 2, 24927, 3630, 3, 2, 2, 2, 24928, 24929, 7, 85, 2, 2, 24929, 24930, 7, 91, 2, 2, 24930, 24931, 7, 85, 2, 2, 24931, 24932, 7, 97, 2, 2, 24932, 24933, 7, 90, 2, 2, 24933, 24934, 7, 83, 2, 2, 24934, 24935, 7, 70, 2, 2, 24935, 24936, 7, 81, 2, 2, 24936, 24937, 7, 69, 2, 2, 24937, 24938, 7, 87, 2, 2, 24938, 24939, 7, 84, 2, 2, 24939, 24940, 7, 75, 2, 2, 24940, 3632, 3, 2, 2, 2, 24941, 24942, 7, 85, 2, 2, 24942, 24943, 7, 91, 2, 2, 24943, 24944, 7, 85, 2, 2, 24944, 24945, 7, 97, 2, 2, 24945, 24946, 7, 90, 2, 2, 24946, 24947, 7, 83, 2, 2, 24947, 24948, 7, 70, 2, 2, 24948, 24949, 7, 87, 2, 2, 24949, 24950, 7, 84, 2, 2, 24950, 24951, 7, 70, 2, 2, 24951, 24952, 7, 75, 2, 2, 24952, 24953, 7, 88, 2, 2, 24953, 3634, 3, 2, 2, 2, 24954, 24955, 7, 85, 2, 2, 24955, 24956, 7, 91, 2, 2, 24956, 24957, 7, 85, 2, 2, 24957, 24958, 7, 97, 2, 2, 24958, 24959, 7, 90, 2, 2, 24959, 24960, 7, 83, 2, 2, 24960, 24961, 7, 71, 2, 2, 24961, 24962, 7, 70, 2, 2, 24962, 24963, 7, 54, 2, 2, 24963, 24964, 7, 87, 2, 2, 24964, 24965, 7, 84, 2, 2, 24965, 24966, 7, 75, 2, 2, 24966, 3636, 3, 2, 2, 2, 24967, 24968, 7, 85, 2, 2, 24968, 24969, 7, 91, 2, 2, 24969, 24970, 7, 85, 2, 2, 24970, 24971, 7, 97, 2, 2, 24971, 24972, 7, 90, 2, 2, 24972, 24973, 7, 83, 2, 2, 24973, 24974, 7, 71, 2, 2, 24974, 24975, 7, 80, 2, 2, 24975, 24976, 7, 70, 2, 2, 24976, 24977, 7, 85, 2, 2, 24977, 24978, 7, 89, 2, 2, 24978, 24979, 7, 75, 2, 2, 24979, 24980, 7, 86, 2, 2, 24980, 24981, 7, 74, 2, 2, 24981, 3638, 3, 2, 2, 2, 24982, 24983, 7, 85, 2, 2, 24983, 24984, 7, 91, 2, 2, 24984, 24985, 7, 85, 2, 2, 24985, 24986, 7, 97, 2, 2, 24986, 24987, 7, 90, 2, 2, 24987, 24988, 7, 83, 2, 2, 24988, 24989, 7, 71, 2, 2, 24989, 24990, 7, 84, 2, 2, 24990, 24991, 7, 84, 2, 2, 24991, 24992, 7, 74, 2, 2, 24992, 3640, 3, 2, 2, 2, 24993, 24994, 7, 85, 2, 2, 24994, 24995, 7, 91, 2, 2, 24995, 24996, 7, 85, 2, 2, 24996, 24997, 7, 97, 2, 2, 24997, 24998, 7, 90, 2, 2, 24998, 24999, 7, 83, 2, 2, 24999, 25000, 7, 71, 2, 2, 25000, 25001, 7, 84, 2, 2, 25001, 25002, 7, 84, 2, 2, 25002, 3642, 3, 2, 2, 2, 25003, 25004, 7, 85, 2, 2, 25004, 25005, 7, 91, 2, 2, 25005, 25006, 7, 85, 2, 2, 25006, 25007, 7, 97, 2, 2, 25007, 25008, 7, 90, 2, 2, 25008, 25009, 7, 83, 2, 2, 25009, 25010, 7, 71, 2, 2, 25010, 25011, 7, 85, 2, 2, 25011, 25012, 7, 74, 2, 2, 25012, 25013, 7, 86, 2, 2, 25013, 25014, 7, 79, 2, 2, 25014, 25015, 7, 78, 2, 2, 25015, 25016, 7, 87, 2, 2, 25016, 25017, 7, 84, 2, 2, 25017, 25018, 7, 75, 2, 2, 25018, 3644, 3, 2, 2, 2, 25019, 25020, 7, 85, 2, 2, 25020, 25021, 7, 91, 2, 2, 25021, 25022, 7, 85, 2, 2, 25022, 25023, 7, 97, 2, 2, 25023, 25024, 7, 90, 2, 2, 25024, 25025, 7, 83, 2, 2, 25025, 25026, 7, 71, 2, 2, 25026, 25027, 7, 90, 2, 2, 25027, 25028, 7, 78, 2, 2, 25028, 25029, 7, 81, 2, 2, 25029, 25030, 7, 68, 2, 2, 25030, 25031, 7, 88, 2, 2, 25031, 25032, 7, 67, 2, 2, 25032, 25033, 7, 78, 2, 2, 25033, 3646, 3, 2, 2, 2, 25034, 25035, 7, 85, 2, 2, 25035, 25036, 7, 91, 2, 2, 25036, 25037, 7, 85, 2, 2, 25037, 25038, 7, 97, 2, 2, 25038, 25039, 7, 90, 2, 2, 25039, 25040, 7, 83, 2, 2, 25040, 25041, 7, 71, 2, 2, 25041, 25042, 7, 90, 2, 2, 25042, 25043, 7, 85, 2, 2, 25043, 25044, 7, 86, 2, 2, 25044, 25045, 7, 89, 2, 2, 25045, 25046, 7, 84, 2, 2, 25046, 25047, 7, 82, 2, 2, 25047, 3648, 3, 2, 2, 2, 25048, 25049, 7, 85, 2, 2, 25049, 25050, 7, 91, 2, 2, 25050, 25051, 7, 85, 2, 2, 25051, 25052, 7, 97, 2, 2, 25052, 25053, 7, 90, 2, 2, 25053, 25054, 7, 83, 2, 2, 25054, 25055, 7, 71, 2, 2, 25055, 25056, 7, 90, 2, 2, 25056, 25057, 7, 86, 2, 2, 25057, 25058, 7, 84, 2, 2, 25058, 25059, 7, 67, 2, 2, 25059, 25060, 7, 69, 2, 2, 25060, 25061, 7, 86, 2, 2, 25061, 3650, 3, 2, 2, 2, 25062, 25063, 7, 85, 2, 2, 25063, 25064, 7, 91, 2, 2, 25064, 25065, 7, 85, 2, 2, 25065, 25066, 7, 97, 2, 2, 25066, 25067, 7, 90, 2, 2, 25067, 25068, 7, 83, 2, 2, 25068, 25069, 7, 71, 2, 2, 25069, 25070, 7, 90, 2, 2, 25070, 25071, 7, 86, 2, 2, 25071, 25072, 7, 84, 2, 2, 25072, 25073, 7, 84, 2, 2, 25073, 25074, 7, 71, 2, 2, 25074, 25075, 7, 72, 2, 2, 25075, 3652, 3, 2, 2, 2, 25076, 25077, 7, 85, 2, 2, 25077, 25078, 7, 91, 2, 2, 25078, 25079, 7, 85, 2, 2, 25079, 25080, 7, 97, 2, 2, 25080, 25081, 7, 90, 2, 2, 25081, 25082, 7, 83, 2, 2, 25082, 25083, 7, 71, 2, 2, 25083, 25084, 7, 90, 2, 2, 25084, 25085, 7, 88, 2, 2, 25085, 25086, 7, 67, 2, 2, 25086, 25087, 7, 78, 2, 2, 25087, 3654, 3, 2, 2, 2, 25088, 25089, 7, 85, 2, 2, 25089, 25090, 7, 91, 2, 2, 25090, 25091, 7, 85, 2, 2, 25091, 25092, 7, 97, 2, 2, 25092, 25093, 7, 90, 2, 2, 25093, 25094, 7, 83, 2, 2, 25094, 25095, 7, 72, 2, 2, 25095, 25096, 7, 68, 2, 2, 25096, 25097, 7, 52, 2, 2, 25097, 25098, 7, 85, 2, 2, 25098, 25099, 7, 86, 2, 2, 25099, 25100, 7, 84, 2, 2, 25100, 3656, 3, 2, 2, 2, 25101, 25102, 7, 85, 2, 2, 25102, 25103, 7, 91, 2, 2, 25103, 25104, 7, 85, 2, 2, 25104, 25105, 7, 97, 2, 2, 25105, 25106, 7, 90, 2, 2, 25106, 25107, 7, 83, 2, 2, 25107, 25108, 7, 72, 2, 2, 25108, 25109, 7, 80, 2, 2, 25109, 25110, 7, 68, 2, 2, 25110, 25111, 7, 81, 2, 2, 25111, 25112, 7, 81, 2, 2, 25112, 25113, 7, 78, 2, 2, 25113, 3658, 3, 2, 2, 2, 25114, 25115, 7, 85, 2, 2, 25115, 25116, 7, 91, 2, 2, 25116, 25117, 7, 85, 2, 2, 25117, 25118, 7, 97, 2, 2, 25118, 25119, 7, 90, 2, 2, 25119, 25120, 7, 83, 2, 2, 25120, 25121, 7, 72, 2, 2, 25121, 25122, 7, 80, 2, 2, 25122, 25123, 7, 69, 2, 2, 25123, 25124, 7, 79, 2, 2, 25124, 25125, 7, 82, 2, 2, 25125, 3660, 3, 2, 2, 2, 25126, 25127, 7, 85, 2, 2, 25127, 25128, 7, 91, 2, 2, 25128, 25129, 7, 85, 2, 2, 25129, 25130, 7, 97, 2, 2, 25130, 25131, 7, 90, 2, 2, 25131, 25132, 7, 83, 2, 2, 25132, 25133, 7, 72, 2, 2, 25133, 25134, 7, 80, 2, 2, 25134, 25135, 7, 70, 2, 2, 25135, 25136, 7, 67, 2, 2, 25136, 25137, 7, 86, 2, 2, 25137, 25138, 7, 75, 2, 2, 25138, 25139, 7, 79, 2, 2, 25139, 3662, 3, 2, 2, 2, 25140, 25141, 7, 85, 2, 2, 25141, 25142, 7, 91, 2, 2, 25142, 25143, 7, 85, 2, 2, 25143, 25144, 7, 97, 2, 2, 25144, 25145, 7, 90, 2, 2, 25145, 25146, 7, 83, 2, 2, 25146, 25147, 7, 72, 2, 2, 25147, 25148, 7, 80, 2, 2, 25148, 25149, 7, 78, 2, 2, 25149, 25150, 7, 80, 2, 2, 25150, 25151, 7, 67, 2, 2, 25151, 25152, 7, 79, 2, 2, 25152, 25153, 7, 71, 2, 2, 25153, 3664, 3, 2, 2, 2, 25154, 25155, 7, 85, 2, 2, 25155, 25156, 7, 91, 2, 2, 25156, 25157, 7, 85, 2, 2, 25157, 25158, 7, 97, 2, 2, 25158, 25159, 7, 90, 2, 2, 25159, 25160, 7, 83, 2, 2, 25160, 25161, 7, 72, 2, 2, 25161, 25162, 7, 80, 2, 2, 25162, 25163, 7, 80, 2, 2, 25163, 25164, 7, 79, 2, 2, 25164, 3666, 3, 2, 2, 2, 25165, 25166, 7, 85, 2, 2, 25166, 25167, 7, 91, 2, 2, 25167, 25168, 7, 85, 2, 2, 25168, 25169, 7, 97, 2, 2, 25169, 25170, 7, 90, 2, 2, 25170, 25171, 7, 83, 2, 2, 25171, 25172, 7, 72, 2, 2, 25172, 25173, 7, 80, 2, 2, 25173, 25174, 7, 80, 2, 2, 25174, 25175, 7, 85, 2, 2, 25175, 25176, 7, 87, 2, 2, 25176, 25177, 7, 84, 2, 2, 25177, 25178, 7, 75, 2, 2, 25178, 3668, 3, 2, 2, 2, 25179, 25180, 7, 85, 2, 2, 25180, 25181, 7, 91, 2, 2, 25181, 25182, 7, 85, 2, 2, 25182, 25183, 7, 97, 2, 2, 25183, 25184, 7, 90, 2, 2, 25184, 25185, 7, 83, 2, 2, 25185, 25186, 7, 72, 2, 2, 25186, 25187, 7, 80, 2, 2, 25187, 25188, 7, 82, 2, 2, 25188, 25189, 7, 84, 2, 2, 25189, 25190, 7, 71, 2, 2, 25190, 25191, 7, 70, 2, 2, 25191, 25192, 7, 86, 2, 2, 25192, 25193, 7, 84, 2, 2, 25193, 25194, 7, 87, 2, 2, 25194, 25195, 7, 86, 2, 2, 25195, 25196, 7, 74, 2, 2, 25196, 3670, 3, 2, 2, 2, 25197, 25198, 7, 85, 2, 2, 25198, 25199, 7, 91, 2, 2, 25199, 25200, 7, 85, 2, 2, 25200, 25201, 7, 97, 2, 2, 25201, 25202, 7, 90, 2, 2, 25202, 25203, 7, 83, 2, 2, 25203, 25204, 7, 72, 2, 2, 25204, 25205, 7, 80, 2, 2, 25205, 25206, 7, 83, 2, 2, 25206, 25207, 7, 80, 2, 2, 25207, 25208, 7, 79, 2, 2, 25208, 3672, 3, 2, 2, 2, 25209, 25210, 7, 85, 2, 2, 25210, 25211, 7, 91, 2, 2, 25211, 25212, 7, 85, 2, 2, 25212, 25213, 7, 97, 2, 2, 25213, 25214, 7, 90, 2, 2, 25214, 25215, 7, 83, 2, 2, 25215, 25216, 7, 72, 2, 2, 25216, 25217, 7, 80, 2, 2, 25217, 25218, 7, 84, 2, 2, 25218, 25219, 7, 81, 2, 2, 25219, 25220, 7, 81, 2, 2, 25220, 25221, 7, 86, 2, 2, 25221, 3674, 3, 2, 2, 2, 25222, 25223, 7, 85, 2, 2, 25223, 25224, 7, 91, 2, 2, 25224, 25225, 7, 85, 2, 2, 25225, 25226, 7, 97, 2, 2, 25226, 25227, 7, 90, 2, 2, 25227, 25228, 7, 83, 2, 2, 25228, 25229, 7, 72, 2, 2, 25229, 25230, 7, 81, 2, 2, 25230, 25231, 7, 84, 2, 2, 25231, 25232, 7, 79, 2, 2, 25232, 25233, 7, 67, 2, 2, 25233, 25234, 7, 86, 2, 2, 25234, 25235, 7, 80, 2, 2, 25235, 25236, 7, 87, 2, 2, 25236, 25237, 7, 79, 2, 2, 25237, 3676, 3, 2, 2, 2, 25238, 25239, 7, 85, 2, 2, 25239, 25240, 7, 91, 2, 2, 25240, 25241, 7, 85, 2, 2, 25241, 25242, 7, 97, 2, 2, 25242, 25243, 7, 90, 2, 2, 25243, 25244, 7, 83, 2, 2, 25244, 25245, 7, 72, 2, 2, 25245, 25246, 7, 86, 2, 2, 25246, 25247, 7, 69, 2, 2, 25247, 25248, 7, 81, 2, 2, 25248, 25249, 7, 80, 2, 2, 25249, 25250, 7, 86, 2, 2, 25250, 25251, 7, 67, 2, 2, 25251, 25252, 7, 75, 2, 2, 25252, 25253, 7, 80, 2, 2, 25253, 3678, 3, 2, 2, 2, 25254, 25255, 7, 85, 2, 2, 25255, 25256, 7, 91, 2, 2, 25256, 25257, 7, 85, 2, 2, 25257, 25258, 7, 97, 2, 2, 25258, 25259, 7, 90, 2, 2, 25259, 25260, 7, 83, 2, 2, 25260, 25261, 7, 72, 2, 2, 25261, 25262, 7, 87, 2, 2, 25262, 25263, 7, 80, 2, 2, 25263, 25264, 7, 69, 2, 2, 25264, 25265, 7, 84, 2, 2, 25265, 3680, 3, 2, 2, 2, 25266, 25267, 7, 85, 2, 2, 25267, 25268, 7, 91, 2, 2, 25268, 25269, 7, 85, 2, 2, 25269, 25270, 7, 97, 2, 2, 25270, 25271, 7, 90, 2, 2, 25271, 25272, 7, 83, 2, 2, 25272, 25273, 7, 73, 2, 2, 25273, 25274, 7, 71, 2, 2, 25274, 25275, 7, 86, 2, 2, 25275, 25276, 7, 69, 2, 2, 25276, 25277, 7, 81, 2, 2, 25277, 25278, 7, 80, 2, 2, 25278, 25279, 7, 86, 2, 2, 25279, 25280, 7, 71, 2, 2, 25280, 25281, 7, 80, 2, 2, 25281, 25282, 7, 86, 2, 2, 25282, 3682, 3, 2, 2, 2, 25283, 25284, 7, 85, 2, 2, 25284, 25285, 7, 91, 2, 2, 25285, 25286, 7, 85, 2, 2, 25286, 25287, 7, 97, 2, 2, 25287, 25288, 7, 90, 2, 2, 25288, 25289, 7, 83, 2, 2, 25289, 25290, 7, 75, 2, 2, 25290, 25291, 7, 80, 2, 2, 25291, 25292, 7, 70, 2, 2, 25292, 25293, 7, 90, 2, 2, 25293, 25294, 7, 81, 2, 2, 25294, 25295, 7, 72, 2, 2, 25295, 3684, 3, 2, 2, 2, 25296, 25297, 7, 85, 2, 2, 25297, 25298, 7, 91, 2, 2, 25298, 25299, 7, 85, 2, 2, 25299, 25300, 7, 97, 2, 2, 25300, 25301, 7, 90, 2, 2, 25301, 25302, 7, 83, 2, 2, 25302, 25303, 7, 75, 2, 2, 25303, 25304, 7, 80, 2, 2, 25304, 25305, 7, 85, 2, 2, 25305, 25306, 7, 71, 2, 2, 25306, 25307, 7, 84, 2, 2, 25307, 25308, 7, 86, 2, 2, 25308, 3686, 3, 2, 2, 2, 25309, 25310, 7, 85, 2, 2, 25310, 25311, 7, 91, 2, 2, 25311, 25312, 7, 85, 2, 2, 25312, 25313, 7, 97, 2, 2, 25313, 25314, 7, 90, 2, 2, 25314, 25315, 7, 83, 2, 2, 25315, 25316, 7, 75, 2, 2, 25316, 25317, 7, 80, 2, 2, 25317, 25318, 7, 85, 2, 2, 25318, 25319, 7, 82, 2, 2, 25319, 25320, 7, 72, 2, 2, 25320, 25321, 7, 90, 2, 2, 25321, 3688, 3, 2, 2, 2, 25322, 25323, 7, 85, 2, 2, 25323, 25324, 7, 91, 2, 2, 25324, 25325, 7, 85, 2, 2, 25325, 25326, 7, 97, 2, 2, 25326, 25327, 7, 90, 2, 2, 25327, 25328, 7, 83, 2, 2, 25328, 25329, 7, 75, 2, 2, 25329, 25330, 7, 84, 2, 2, 25330, 25331, 7, 75, 2, 2, 25331, 25332, 7, 52, 2, 2, 25332, 25333, 7, 87, 2, 2, 25333, 25334, 7, 84, 2, 2, 25334, 25335, 7, 75, 2, 2, 25335, 3690, 3, 2, 2, 2, 25336, 25337, 7, 85, 2, 2, 25337, 25338, 7, 91, 2, 2, 25338, 25339, 7, 85, 2, 2, 25339, 25340, 7, 97, 2, 2, 25340, 25341, 7, 90, 2, 2, 25341, 25342, 7, 83, 2, 2, 25342, 25343, 7, 78, 2, 2, 25343, 25344, 7, 67, 2, 2, 25344, 25345, 7, 80, 2, 2, 25345, 25346, 7, 73, 2, 2, 25346, 3692, 3, 2, 2, 2, 25347, 25348, 7, 85, 2, 2, 25348, 25349, 7, 91, 2, 2, 25349, 25350, 7, 85, 2, 2, 25350, 25351, 7, 97, 2, 2, 25351, 25352, 7, 90, 2, 2, 25352, 25353, 7, 83, 2, 2, 25353, 25354, 7, 78, 2, 2, 25354, 25355, 7, 78, 2, 2, 25355, 25356, 7, 80, 2, 2, 25356, 25357, 7, 79, 2, 2, 25357, 25358, 7, 72, 2, 2, 25358, 25359, 7, 84, 2, 2, 25359, 25360, 7, 79, 2, 2, 25360, 25361, 7, 83, 2, 2, 25361, 25362, 7, 80, 2, 2, 25362, 25363, 7, 79, 2, 2, 25363, 3694, 3, 2, 2, 2, 25364, 25365, 7, 85, 2, 2, 25365, 25366, 7, 91, 2, 2, 25366, 25367, 7, 85, 2, 2, 25367, 25368, 7, 97, 2, 2, 25368, 25369, 7, 90, 2, 2, 25369, 25370, 7, 83, 2, 2, 25370, 25371, 7, 79, 2, 2, 25371, 25372, 7, 77, 2, 2, 25372, 25373, 7, 80, 2, 2, 25373, 25374, 7, 81, 2, 2, 25374, 25375, 7, 70, 2, 2, 25375, 25376, 7, 71, 2, 2, 25376, 25377, 7, 84, 2, 2, 25377, 25378, 7, 71, 2, 2, 25378, 25379, 7, 72, 2, 2, 25379, 3696, 3, 2, 2, 2, 25380, 25381, 7, 85, 2, 2, 25381, 25382, 7, 91, 2, 2, 25382, 25383, 7, 85, 2, 2, 25383, 25384, 7, 97, 2, 2, 25384, 25385, 7, 90, 2, 2, 25385, 25386, 7, 83, 2, 2, 25386, 25387, 7, 80, 2, 2, 25387, 25388, 7, 75, 2, 2, 25388, 25389, 7, 78, 2, 2, 25389, 25390, 7, 78, 2, 2, 25390, 25391, 7, 71, 2, 2, 25391, 25392, 7, 70, 2, 2, 25392, 3698, 3, 2, 2, 2, 25393, 25394, 7, 85, 2, 2, 25394, 25395, 7, 91, 2, 2, 25395, 25396, 7, 85, 2, 2, 25396, 25397, 7, 97, 2, 2, 25397, 25398, 7, 90, 2, 2, 25398, 25399, 7, 83, 2, 2, 25399, 25400, 7, 80, 2, 2, 25400, 25401, 7, 81, 2, 2, 25401, 25402, 7, 70, 2, 2, 25402, 25403, 7, 71, 2, 2, 25403, 25404, 7, 80, 2, 2, 25404, 25405, 7, 67, 2, 2, 25405, 25406, 7, 79, 2, 2, 25406, 25407, 7, 71, 2, 2, 25407, 3700, 3, 2, 2, 2, 25408, 25409, 7, 85, 2, 2, 25409, 25410, 7, 91, 2, 2, 25410, 25411, 7, 85, 2, 2, 25411, 25412, 7, 97, 2, 2, 25412, 25413, 7, 90, 2, 2, 25413, 25414, 7, 83, 2, 2, 25414, 25415, 7, 80, 2, 2, 25415, 25416, 7, 81, 2, 2, 25416, 25417, 7, 84, 2, 2, 25417, 25418, 7, 79, 2, 2, 25418, 25419, 7, 85, 2, 2, 25419, 25420, 7, 82, 2, 2, 25420, 25421, 7, 67, 2, 2, 25421, 25422, 7, 69, 2, 2, 25422, 25423, 7, 71, 2, 2, 25423, 3702, 3, 2, 2, 2, 25424, 25425, 7, 85, 2, 2, 25425, 25426, 7, 91, 2, 2, 25426, 25427, 7, 85, 2, 2, 25427, 25428, 7, 97, 2, 2, 25428, 25429, 7, 90, 2, 2, 25429, 25430, 7, 83, 2, 2, 25430, 25431, 7, 80, 2, 2, 25431, 25432, 7, 81, 2, 2, 25432, 25433, 7, 84, 2, 2, 25433, 25434, 7, 79, 2, 2, 25434, 25435, 7, 87, 2, 2, 25435, 25436, 7, 69, 2, 2, 25436, 25437, 7, 81, 2, 2, 25437, 25438, 7, 70, 2, 2, 25438, 25439, 7, 71, 2, 2, 25439, 3704, 3, 2, 2, 2, 25440, 25441, 7, 85, 2, 2, 25441, 25442, 7, 91, 2, 2, 25442, 25443, 7, 85, 2, 2, 25443, 25444, 7, 97, 2, 2, 25444, 25445, 7, 90, 2, 2, 25445, 25446, 7, 83, 2, 2, 25446, 25447, 7, 97, 2, 2, 25447, 25448, 7, 80, 2, 2, 25448, 25449, 7, 84, 2, 2, 25449, 25450, 7, 80, 2, 2, 25450, 25451, 7, 73, 2, 2, 25451, 3706, 3, 2, 2, 2, 25452, 25453, 7, 85, 2, 2, 25453, 25454, 7, 91, 2, 2, 25454, 25455, 7, 85, 2, 2, 25455, 25456, 7, 97, 2, 2, 25456, 25457, 7, 90, 2, 2, 25457, 25458, 7, 83, 2, 2, 25458, 25459, 7, 80, 2, 2, 25459, 25460, 7, 85, 2, 2, 25460, 25461, 7, 82, 2, 2, 25461, 25462, 7, 54, 2, 2, 25462, 25463, 7, 82, 2, 2, 25463, 25464, 7, 72, 2, 2, 25464, 25465, 7, 90, 2, 2, 25465, 3708, 3, 2, 2, 2, 25466, 25467, 7, 85, 2, 2, 25467, 25468, 7, 91, 2, 2, 25468, 25469, 7, 85, 2, 2, 25469, 25470, 7, 97, 2, 2, 25470, 25471, 7, 90, 2, 2, 25471, 25472, 7, 83, 2, 2, 25472, 25473, 7, 80, 2, 2, 25473, 25474, 7, 85, 2, 2, 25474, 25475, 7, 82, 2, 2, 25475, 25476, 7, 72, 2, 2, 25476, 25477, 7, 84, 2, 2, 25477, 25478, 7, 79, 2, 2, 25478, 25479, 7, 83, 2, 2, 25479, 25480, 7, 80, 2, 2, 25480, 25481, 7, 79, 2, 2, 25481, 3710, 3, 2, 2, 2, 25482, 25483, 7, 85, 2, 2, 25483, 25484, 7, 91, 2, 2, 25484, 25485, 7, 85, 2, 2, 25485, 25486, 7, 97, 2, 2, 25486, 25487, 7, 90, 2, 2, 25487, 25488, 7, 83, 2, 2, 25488, 25489, 7, 82, 2, 2, 25489, 25490, 7, 72, 2, 2, 25490, 25491, 7, 90, 2, 2, 25491, 25492, 7, 72, 2, 2, 25492, 25493, 7, 84, 2, 2, 25493, 25494, 7, 79, 2, 2, 25494, 25495, 7, 83, 2, 2, 25495, 25496, 7, 80, 2, 2, 25496, 25497, 7, 79, 2, 2, 25497, 3712, 3, 2, 2, 2, 25498, 25499, 7, 85, 2, 2, 25499, 25500, 7, 91, 2, 2, 25500, 25501, 7, 85, 2, 2, 25501, 25502, 7, 97, 2, 2, 25502, 25503, 7, 90, 2, 2, 25503, 25504, 7, 83, 2, 2, 25504, 25505, 7, 97, 2, 2, 25505, 25506, 7, 82, 2, 2, 25506, 25507, 7, 77, 2, 2, 25507, 25508, 7, 85, 2, 2, 25508, 25509, 7, 83, 2, 2, 25509, 25510, 7, 78, 2, 2, 25510, 25511, 7, 52, 2, 2, 25511, 25512, 7, 90, 2, 2, 25512, 25513, 7, 79, 2, 2, 25513, 25514, 7, 78, 2, 2, 25514, 3714, 3, 2, 2, 2, 25515, 25516, 7, 85, 2, 2, 25516, 25517, 7, 91, 2, 2, 25517, 25518, 7, 85, 2, 2, 25518, 25519, 7, 97, 2, 2, 25519, 25520, 7, 90, 2, 2, 25520, 25521, 7, 83, 2, 2, 25521, 25522, 7, 82, 2, 2, 25522, 25523, 7, 81, 2, 2, 25523, 25524, 7, 78, 2, 2, 25524, 25525, 7, 91, 2, 2, 25525, 25526, 7, 67, 2, 2, 25526, 25527, 7, 68, 2, 2, 25527, 25528, 7, 85, 2, 2, 25528, 3716, 3, 2, 2, 2, 25529, 25530, 7, 85, 2, 2, 25530, 25531, 7, 91, 2, 2, 25531, 25532, 7, 85, 2, 2, 25532, 25533, 7, 97, 2, 2, 25533, 25534, 7, 90, 2, 2, 25534, 25535, 7, 83, 2, 2, 25535, 25536, 7, 82, 2, 2, 25536, 25537, 7, 81, 2, 2, 25537, 25538, 7, 78, 2, 2, 25538, 25539, 7, 91, 2, 2, 25539, 25540, 7, 67, 2, 2, 25540, 25541, 7, 70, 2, 2, 25541, 25542, 7, 70, 2, 2, 25542, 3718, 3, 2, 2, 2, 25543, 25544, 7, 85, 2, 2, 25544, 25545, 7, 91, 2, 2, 25545, 25546, 7, 85, 2, 2, 25546, 25547, 7, 97, 2, 2, 25547, 25548, 7, 90, 2, 2, 25548, 25549, 7, 83, 2, 2, 25549, 25550, 7, 82, 2, 2, 25550, 25551, 7, 81, 2, 2, 25551, 25552, 7, 78, 2, 2, 25552, 25553, 7, 91, 2, 2, 25553, 25554, 7, 69, 2, 2, 25554, 25555, 7, 71, 2, 2, 25555, 25556, 7, 78, 2, 2, 25556, 3720, 3, 2, 2, 2, 25557, 25558, 7, 85, 2, 2, 25558, 25559, 7, 91, 2, 2, 25559, 25560, 7, 85, 2, 2, 25560, 25561, 7, 97, 2, 2, 25561, 25562, 7, 90, 2, 2, 25562, 25563, 7, 83, 2, 2, 25563, 25564, 7, 82, 2, 2, 25564, 25565, 7, 81, 2, 2, 25565, 25566, 7, 78, 2, 2, 25566, 25567, 7, 91, 2, 2, 25567, 25568, 7, 69, 2, 2, 25568, 25569, 7, 85, 2, 2, 25569, 25570, 7, 86, 2, 2, 25570, 25571, 7, 68, 2, 2, 25571, 25572, 7, 78, 2, 2, 25572, 3722, 3, 2, 2, 2, 25573, 25574, 7, 85, 2, 2, 25574, 25575, 7, 91, 2, 2, 25575, 25576, 7, 85, 2, 2, 25576, 25577, 7, 97, 2, 2, 25577, 25578, 7, 90, 2, 2, 25578, 25579, 7, 83, 2, 2, 25579, 25580, 7, 82, 2, 2, 25580, 25581, 7, 81, 2, 2, 25581, 25582, 7, 78, 2, 2, 25582, 25583, 7, 91, 2, 2, 25583, 25584, 7, 69, 2, 2, 25584, 25585, 7, 85, 2, 2, 25585, 25586, 7, 86, 2, 2, 25586, 3724, 3, 2, 2, 2, 25587, 25588, 7, 85, 2, 2, 25588, 25589, 7, 91, 2, 2, 25589, 25590, 7, 85, 2, 2, 25590, 25591, 7, 97, 2, 2, 25591, 25592, 7, 90, 2, 2, 25592, 25593, 7, 83, 2, 2, 25593, 25594, 7, 82, 2, 2, 25594, 25595, 7, 81, 2, 2, 25595, 25596, 7, 78, 2, 2, 25596, 25597, 7, 91, 2, 2, 25597, 25598, 7, 70, 2, 2, 25598, 25599, 7, 75, 2, 2, 25599, 25600, 7, 88, 2, 2, 25600, 3726, 3, 2, 2, 2, 25601, 25602, 7, 85, 2, 2, 25602, 25603, 7, 91, 2, 2, 25603, 25604, 7, 85, 2, 2, 25604, 25605, 7, 97, 2, 2, 25605, 25606, 7, 90, 2, 2, 25606, 25607, 7, 83, 2, 2, 25607, 25608, 7, 82, 2, 2, 25608, 25609, 7, 81, 2, 2, 25609, 25610, 7, 78, 2, 2, 25610, 25611, 7, 91, 2, 2, 25611, 25612, 7, 72, 2, 2, 25612, 25613, 7, 78, 2, 2, 25613, 25614, 7, 84, 2, 2, 25614, 3728, 3, 2, 2, 2, 25615, 25616, 7, 85, 2, 2, 25616, 25617, 7, 91, 2, 2, 25617, 25618, 7, 85, 2, 2, 25618, 25619, 7, 97, 2, 2, 25619, 25620, 7, 90, 2, 2, 25620, 25621, 7, 83, 2, 2, 25621, 25622, 7, 82, 2, 2, 25622, 25623, 7, 81, 2, 2, 25623, 25624, 7, 78, 2, 2, 25624, 25625, 7, 91, 2, 2, 25625, 25626, 7, 79, 2, 2, 25626, 25627, 7, 81, 2, 2, 25627, 25628, 7, 70, 2, 2, 25628, 3730, 3, 2, 2, 2, 25629, 25630, 7, 85, 2, 2, 25630, 25631, 7, 91, 2, 2, 25631, 25632, 7, 85, 2, 2, 25632, 25633, 7, 97, 2, 2, 25633, 25634, 7, 90, 2, 2, 25634, 25635, 7, 83, 2, 2, 25635, 25636, 7, 82, 2, 2, 25636, 25637, 7, 81, 2, 2, 25637, 25638, 7, 78, 2, 2, 25638, 25639, 7, 91, 2, 2, 25639, 25640, 7, 79, 2, 2, 25640, 25641, 7, 87, 2, 2, 25641, 25642, 7, 78, 2, 2, 25642, 3732, 3, 2, 2, 2, 25643, 25644, 7, 85, 2, 2, 25644, 25645, 7, 91, 2, 2, 25645, 25646, 7, 85, 2, 2, 25646, 25647, 7, 97, 2, 2, 25647, 25648, 7, 90, 2, 2, 25648, 25649, 7, 83, 2, 2, 25649, 25650, 7, 82, 2, 2, 25650, 25651, 7, 81, 2, 2, 25651, 25652, 7, 78, 2, 2, 25652, 25653, 7, 91, 2, 2, 25653, 25654, 7, 84, 2, 2, 25654, 25655, 7, 80, 2, 2, 25655, 25656, 7, 70, 2, 2, 25656, 3734, 3, 2, 2, 2, 25657, 25658, 7, 85, 2, 2, 25658, 25659, 7, 91, 2, 2, 25659, 25660, 7, 85, 2, 2, 25660, 25661, 7, 97, 2, 2, 25661, 25662, 7, 90, 2, 2, 25662, 25663, 7, 83, 2, 2, 25663, 25664, 7, 82, 2, 2, 25664, 25665, 7, 81, 2, 2, 25665, 25666, 7, 78, 2, 2, 25666, 25667, 7, 91, 2, 2, 25667, 25668, 7, 85, 2, 2, 25668, 25669, 7, 83, 2, 2, 25669, 25670, 7, 84, 2, 2, 25670, 25671, 7, 86, 2, 2, 25671, 3736, 3, 2, 2, 2, 25672, 25673, 7, 85, 2, 2, 25673, 25674, 7, 91, 2, 2, 25674, 25675, 7, 85, 2, 2, 25675, 25676, 7, 97, 2, 2, 25676, 25677, 7, 90, 2, 2, 25677, 25678, 7, 83, 2, 2, 25678, 25679, 7, 82, 2, 2, 25679, 25680, 7, 81, 2, 2, 25680, 25681, 7, 78, 2, 2, 25681, 25682, 7, 91, 2, 2, 25682, 25683, 7, 85, 2, 2, 25683, 25684, 7, 87, 2, 2, 25684, 25685, 7, 68, 2, 2, 25685, 3738, 3, 2, 2, 2, 25686, 25687, 7, 85, 2, 2, 25687, 25688, 7, 91, 2, 2, 25688, 25689, 7, 85, 2, 2, 25689, 25690, 7, 97, 2, 2, 25690, 25691, 7, 90, 2, 2, 25691, 25692, 7, 83, 2, 2, 25692, 25693, 7, 82, 2, 2, 25693, 25694, 7, 81, 2, 2, 25694, 25695, 7, 78, 2, 2, 25695, 25696, 7, 91, 2, 2, 25696, 25697, 7, 87, 2, 2, 25697, 25698, 7, 79, 2, 2, 25698, 25699, 7, 87, 2, 2, 25699, 25700, 7, 85, 2, 2, 25700, 3740, 3, 2, 2, 2, 25701, 25702, 7, 85, 2, 2, 25702, 25703, 7, 91, 2, 2, 25703, 25704, 7, 85, 2, 2, 25704, 25705, 7, 97, 2, 2, 25705, 25706, 7, 90, 2, 2, 25706, 25707, 7, 83, 2, 2, 25707, 25708, 7, 82, 2, 2, 25708, 25709, 7, 81, 2, 2, 25709, 25710, 7, 78, 2, 2, 25710, 25711, 7, 91, 2, 2, 25711, 25712, 7, 87, 2, 2, 25712, 25713, 7, 82, 2, 2, 25713, 25714, 7, 78, 2, 2, 25714, 25715, 7, 85, 2, 2, 25715, 3742, 3, 2, 2, 2, 25716, 25717, 7, 85, 2, 2, 25717, 25718, 7, 91, 2, 2, 25718, 25719, 7, 85, 2, 2, 25719, 25720, 7, 97, 2, 2, 25720, 25721, 7, 90, 2, 2, 25721, 25722, 7, 83, 2, 2, 25722, 25723, 7, 82, 2, 2, 25723, 25724, 7, 81, 2, 2, 25724, 25725, 7, 78, 2, 2, 25725, 25726, 7, 91, 2, 2, 25726, 25727, 7, 88, 2, 2, 25727, 25728, 7, 71, 2, 2, 25728, 25729, 7, 83, 2, 2, 25729, 3744, 3, 2, 2, 2, 25730, 25731, 7, 85, 2, 2, 25731, 25732, 7, 91, 2, 2, 25732, 25733, 7, 85, 2, 2, 25733, 25734, 7, 97, 2, 2, 25734, 25735, 7, 90, 2, 2, 25735, 25736, 7, 83, 2, 2, 25736, 25737, 7, 82, 2, 2, 25737, 25738, 7, 81, 2, 2, 25738, 25739, 7, 78, 2, 2, 25739, 25740, 7, 91, 2, 2, 25740, 25741, 7, 88, 2, 2, 25741, 25742, 7, 73, 2, 2, 25742, 25743, 7, 71, 2, 2, 25743, 3746, 3, 2, 2, 2, 25744, 25745, 7, 85, 2, 2, 25745, 25746, 7, 91, 2, 2, 25746, 25747, 7, 85, 2, 2, 25747, 25748, 7, 97, 2, 2, 25748, 25749, 7, 90, 2, 2, 25749, 25750, 7, 83, 2, 2, 25750, 25751, 7, 82, 2, 2, 25751, 25752, 7, 81, 2, 2, 25752, 25753, 7, 78, 2, 2, 25753, 25754, 7, 91, 2, 2, 25754, 25755, 7, 88, 2, 2, 25755, 25756, 7, 73, 2, 2, 25756, 25757, 7, 86, 2, 2, 25757, 3748, 3, 2, 2, 2, 25758, 25759, 7, 85, 2, 2, 25759, 25760, 7, 91, 2, 2, 25760, 25761, 7, 85, 2, 2, 25761, 25762, 7, 97, 2, 2, 25762, 25763, 7, 90, 2, 2, 25763, 25764, 7, 83, 2, 2, 25764, 25765, 7, 82, 2, 2, 25765, 25766, 7, 81, 2, 2, 25766, 25767, 7, 78, 2, 2, 25767, 25768, 7, 91, 2, 2, 25768, 25769, 7, 88, 2, 2, 25769, 25770, 7, 78, 2, 2, 25770, 25771, 7, 71, 2, 2, 25771, 3750, 3, 2, 2, 2, 25772, 25773, 7, 85, 2, 2, 25773, 25774, 7, 91, 2, 2, 25774, 25775, 7, 85, 2, 2, 25775, 25776, 7, 97, 2, 2, 25776, 25777, 7, 90, 2, 2, 25777, 25778, 7, 83, 2, 2, 25778, 25779, 7, 82, 2, 2, 25779, 25780, 7, 81, 2, 2, 25780, 25781, 7, 78, 2, 2, 25781, 25782, 7, 91, 2, 2, 25782, 25783, 7, 88, 2, 2, 25783, 25784, 7, 78, 2, 2, 25784, 25785, 7, 86, 2, 2, 25785, 3752, 3, 2, 2, 2, 25786, 25787, 7, 85, 2, 2, 25787, 25788, 7, 91, 2, 2, 25788, 25789, 7, 85, 2, 2, 25789, 25790, 7, 97, 2, 2, 25790, 25791, 7, 90, 2, 2, 25791, 25792, 7, 83, 2, 2, 25792, 25793, 7, 82, 2, 2, 25793, 25794, 7, 81, 2, 2, 25794, 25795, 7, 78, 2, 2, 25795, 25796, 7, 91, 2, 2, 25796, 25797, 7, 88, 2, 2, 25797, 25798, 7, 80, 2, 2, 25798, 25799, 7, 71, 2, 2, 25799, 3754, 3, 2, 2, 2, 25800, 25801, 7, 85, 2, 2, 25801, 25802, 7, 91, 2, 2, 25802, 25803, 7, 85, 2, 2, 25803, 25804, 7, 97, 2, 2, 25804, 25805, 7, 90, 2, 2, 25805, 25806, 7, 83, 2, 2, 25806, 25807, 7, 84, 2, 2, 25807, 25808, 7, 71, 2, 2, 25808, 25809, 7, 72, 2, 2, 25809, 25810, 7, 52, 2, 2, 25810, 25811, 7, 88, 2, 2, 25811, 25812, 7, 67, 2, 2, 25812, 25813, 7, 78, 2, 2, 25813, 3756, 3, 2, 2, 2, 25814, 25815, 7, 85, 2, 2, 25815, 25816, 7, 91, 2, 2, 25816, 25817, 7, 85, 2, 2, 25817, 25818, 7, 97, 2, 2, 25818, 25819, 7, 90, 2, 2, 25819, 25820, 7, 83, 2, 2, 25820, 25821, 7, 84, 2, 2, 25821, 25822, 7, 71, 2, 2, 25822, 25823, 7, 80, 2, 2, 25823, 25824, 7, 67, 2, 2, 25824, 25825, 7, 79, 2, 2, 25825, 25826, 7, 71, 2, 2, 25826, 3758, 3, 2, 2, 2, 25827, 25828, 7, 85, 2, 2, 25828, 25829, 7, 91, 2, 2, 25829, 25830, 7, 85, 2, 2, 25830, 25831, 7, 97, 2, 2, 25831, 25832, 7, 90, 2, 2, 25832, 25833, 7, 83, 2, 2, 25833, 25834, 7, 84, 2, 2, 25834, 25835, 7, 71, 2, 2, 25835, 25836, 7, 82, 2, 2, 25836, 25837, 7, 78, 2, 2, 25837, 25838, 7, 67, 2, 2, 25838, 25839, 7, 69, 2, 2, 25839, 25840, 7, 71, 2, 2, 25840, 3760, 3, 2, 2, 2, 25841, 25842, 7, 85, 2, 2, 25842, 25843, 7, 91, 2, 2, 25843, 25844, 7, 85, 2, 2, 25844, 25845, 7, 97, 2, 2, 25845, 25846, 7, 90, 2, 2, 25846, 25847, 7, 83, 2, 2, 25847, 25848, 7, 84, 2, 2, 25848, 25849, 7, 71, 2, 2, 25849, 25850, 7, 85, 2, 2, 25850, 25851, 7, 88, 2, 2, 25851, 25852, 7, 87, 2, 2, 25852, 25853, 7, 84, 2, 2, 25853, 25854, 7, 75, 2, 2, 25854, 3762, 3, 2, 2, 2, 25855, 25856, 7, 85, 2, 2, 25856, 25857, 7, 91, 2, 2, 25857, 25858, 7, 85, 2, 2, 25858, 25859, 7, 97, 2, 2, 25859, 25860, 7, 90, 2, 2, 25860, 25861, 7, 83, 2, 2, 25861, 25862, 7, 84, 2, 2, 25862, 25863, 7, 80, 2, 2, 25863, 25864, 7, 70, 2, 2, 25864, 25865, 7, 74, 2, 2, 25865, 25866, 7, 67, 2, 2, 25866, 25867, 7, 78, 2, 2, 25867, 25868, 7, 72, 2, 2, 25868, 25869, 7, 52, 2, 2, 25869, 25870, 7, 71, 2, 2, 25870, 25871, 7, 88, 2, 2, 25871, 25872, 7, 80, 2, 2, 25872, 3764, 3, 2, 2, 2, 25873, 25874, 7, 85, 2, 2, 25874, 25875, 7, 91, 2, 2, 25875, 25876, 7, 85, 2, 2, 25876, 25877, 7, 97, 2, 2, 25877, 25878, 7, 90, 2, 2, 25878, 25879, 7, 83, 2, 2, 25879, 25880, 7, 84, 2, 2, 25880, 25881, 7, 85, 2, 2, 25881, 25882, 7, 78, 2, 2, 25882, 25883, 7, 88, 2, 2, 25883, 25884, 7, 83, 2, 2, 25884, 25885, 7, 80, 2, 2, 25885, 25886, 7, 79, 2, 2, 25886, 3766, 3, 2, 2, 2, 25887, 25888, 7, 85, 2, 2, 25888, 25889, 7, 91, 2, 2, 25889, 25890, 7, 85, 2, 2, 25890, 25891, 7, 97, 2, 2, 25891, 25892, 7, 90, 2, 2, 25892, 25893, 7, 83, 2, 2, 25893, 25894, 7, 84, 2, 2, 25894, 25895, 7, 91, 2, 2, 25895, 25896, 7, 71, 2, 2, 25896, 25897, 7, 80, 2, 2, 25897, 25898, 7, 88, 2, 2, 25898, 25899, 7, 82, 2, 2, 25899, 25900, 7, 73, 2, 2, 25900, 25901, 7, 71, 2, 2, 25901, 25902, 7, 86, 2, 2, 25902, 3768, 3, 2, 2, 2, 25903, 25904, 7, 85, 2, 2, 25904, 25905, 7, 91, 2, 2, 25905, 25906, 7, 85, 2, 2, 25906, 25907, 7, 97, 2, 2, 25907, 25908, 7, 90, 2, 2, 25908, 25909, 7, 83, 2, 2, 25909, 25910, 7, 84, 2, 2, 25910, 25911, 7, 91, 2, 2, 25911, 25912, 7, 88, 2, 2, 25912, 25913, 7, 67, 2, 2, 25913, 25914, 7, 84, 2, 2, 25914, 25915, 7, 73, 2, 2, 25915, 25916, 7, 71, 2, 2, 25916, 25917, 7, 86, 2, 2, 25917, 3770, 3, 2, 2, 2, 25918, 25919, 7, 85, 2, 2, 25919, 25920, 7, 91, 2, 2, 25920, 25921, 7, 85, 2, 2, 25921, 25922, 7, 97, 2, 2, 25922, 25923, 7, 90, 2, 2, 25923, 25924, 7, 83, 2, 2, 25924, 25925, 7, 84, 2, 2, 25925, 25926, 7, 91, 2, 2, 25926, 25927, 7, 89, 2, 2, 25927, 25928, 7, 84, 2, 2, 25928, 25929, 7, 82, 2, 2, 25929, 3772, 3, 2, 2, 2, 25930, 25931, 7, 85, 2, 2, 25931, 25932, 7, 91, 2, 2, 25932, 25933, 7, 85, 2, 2, 25933, 25934, 7, 97, 2, 2, 25934, 25935, 7, 90, 2, 2, 25935, 25936, 7, 83, 2, 2, 25936, 25937, 7, 85, 2, 2, 25937, 25938, 7, 71, 2, 2, 25938, 25939, 7, 83, 2, 2, 25939, 25940, 7, 52, 2, 2, 25940, 25941, 7, 69, 2, 2, 25941, 25942, 7, 81, 2, 2, 25942, 25943, 7, 80, 2, 2, 25943, 25944, 7, 54, 2, 2, 25944, 25945, 7, 90, 2, 2, 25945, 25946, 7, 69, 2, 2, 25946, 3774, 3, 2, 2, 2, 25947, 25948, 7, 85, 2, 2, 25948, 25949, 7, 91, 2, 2, 25949, 25950, 7, 85, 2, 2, 25950, 25951, 7, 97, 2, 2, 25951, 25952, 7, 90, 2, 2, 25952, 25953, 7, 83, 2, 2, 25953, 25954, 7, 85, 2, 2, 25954, 25955, 7, 71, 2, 2, 25955, 25956, 7, 83, 2, 2, 25956, 25957, 7, 52, 2, 2, 25957, 25958, 7, 69, 2, 2, 25958, 25959, 7, 81, 2, 2, 25959, 25960, 7, 80, 2, 2, 25960, 3776, 3, 2, 2, 2, 25961, 25962, 7, 85, 2, 2, 25962, 25963, 7, 91, 2, 2, 25963, 25964, 7, 85, 2, 2, 25964, 25965, 7, 97, 2, 2, 25965, 25966, 7, 90, 2, 2, 25966, 25967, 7, 83, 2, 2, 25967, 25968, 7, 85, 2, 2, 25968, 25969, 7, 71, 2, 2, 25969, 25970, 7, 83, 2, 2, 25970, 25971, 7, 70, 2, 2, 25971, 25972, 7, 71, 2, 2, 25972, 25973, 7, 71, 2, 2, 25973, 25974, 7, 82, 2, 2, 25974, 25975, 7, 71, 2, 2, 25975, 25976, 7, 83, 2, 2, 25976, 3778, 3, 2, 2, 2, 25977, 25978, 7, 85, 2, 2, 25978, 25979, 7, 91, 2, 2, 25979, 25980, 7, 85, 2, 2, 25980, 25981, 7, 97, 2, 2, 25981, 25982, 7, 90, 2, 2, 25982, 25983, 7, 83, 2, 2, 25983, 25984, 7, 85, 2, 2, 25984, 25985, 7, 71, 2, 2, 25985, 25986, 7, 83, 2, 2, 25986, 25987, 7, 75, 2, 2, 25987, 25988, 7, 80, 2, 2, 25988, 25989, 7, 85, 2, 2, 25989, 25990, 7, 68, 2, 2, 25990, 3780, 3, 2, 2, 2, 25991, 25992, 7, 85, 2, 2, 25992, 25993, 7, 91, 2, 2, 25993, 25994, 7, 85, 2, 2, 25994, 25995, 7, 97, 2, 2, 25995, 25996, 7, 90, 2, 2, 25996, 25997, 7, 83, 2, 2, 25997, 25998, 7, 85, 2, 2, 25998, 25999, 7, 71, 2, 2, 25999, 26000, 7, 83, 2, 2, 26000, 26001, 7, 84, 2, 2, 26001, 26002, 7, 79, 2, 2, 26002, 3782, 3, 2, 2, 2, 26003, 26004, 7, 85, 2, 2, 26004, 26005, 7, 91, 2, 2, 26005, 26006, 7, 85, 2, 2, 26006, 26007, 7, 97, 2, 2, 26007, 26008, 7, 90, 2, 2, 26008, 26009, 7, 83, 2, 2, 26009, 26010, 7, 85, 2, 2, 26010, 26011, 7, 71, 2, 2, 26011, 26012, 7, 83, 2, 2, 26012, 26013, 7, 84, 2, 2, 26013, 26014, 7, 88, 2, 2, 26014, 26015, 7, 85, 2, 2, 26015, 3784, 3, 2, 2, 2, 26016, 26017, 7, 85, 2, 2, 26017, 26018, 7, 91, 2, 2, 26018, 26019, 7, 85, 2, 2, 26019, 26020, 7, 97, 2, 2, 26020, 26021, 7, 90, 2, 2, 26021, 26022, 7, 83, 2, 2, 26022, 26023, 7, 85, 2, 2, 26023, 26024, 7, 71, 2, 2, 26024, 26025, 7, 83, 2, 2, 26025, 26026, 7, 85, 2, 2, 26026, 26027, 7, 87, 2, 2, 26027, 26028, 7, 68, 2, 2, 26028, 3786, 3, 2, 2, 2, 26029, 26030, 7, 85, 2, 2, 26030, 26031, 7, 91, 2, 2, 26031, 26032, 7, 85, 2, 2, 26032, 26033, 7, 97, 2, 2, 26033, 26034, 7, 90, 2, 2, 26034, 26035, 7, 83, 2, 2, 26035, 26036, 7, 85, 2, 2, 26036, 26037, 7, 71, 2, 2, 26037, 26038, 7, 83, 2, 2, 26038, 26039, 7, 86, 2, 2, 26039, 26040, 7, 91, 2, 2, 26040, 26041, 7, 82, 2, 2, 26041, 26042, 7, 79, 2, 2, 26042, 26043, 7, 67, 2, 2, 26043, 26044, 7, 86, 2, 2, 26044, 26045, 7, 69, 2, 2, 26045, 26046, 7, 74, 2, 2, 26046, 3788, 3, 2, 2, 2, 26047, 26048, 7, 85, 2, 2, 26048, 26049, 7, 91, 2, 2, 26049, 26050, 7, 85, 2, 2, 26050, 26051, 7, 97, 2, 2, 26051, 26052, 7, 90, 2, 2, 26052, 26053, 7, 83, 2, 2, 26053, 26054, 7, 85, 2, 2, 26054, 26055, 7, 86, 2, 2, 26055, 26056, 7, 67, 2, 2, 26056, 26057, 7, 84, 2, 2, 26057, 26058, 7, 86, 2, 2, 26058, 26059, 7, 85, 2, 2, 26059, 26060, 7, 89, 2, 2, 26060, 26061, 7, 75, 2, 2, 26061, 26062, 7, 86, 2, 2, 26062, 26063, 7, 74, 2, 2, 26063, 3790, 3, 2, 2, 2, 26064, 26065, 7, 85, 2, 2, 26065, 26066, 7, 91, 2, 2, 26066, 26067, 7, 85, 2, 2, 26067, 26068, 7, 97, 2, 2, 26068, 26069, 7, 90, 2, 2, 26069, 26070, 7, 83, 2, 2, 26070, 26071, 7, 85, 2, 2, 26071, 26072, 7, 86, 2, 2, 26072, 26073, 7, 67, 2, 2, 26073, 26074, 7, 86, 2, 2, 26074, 26075, 7, 68, 2, 2, 26075, 26076, 7, 87, 2, 2, 26076, 26077, 7, 84, 2, 2, 26077, 26078, 7, 75, 2, 2, 26078, 3792, 3, 2, 2, 2, 26079, 26080, 7, 85, 2, 2, 26080, 26081, 7, 91, 2, 2, 26081, 26082, 7, 85, 2, 2, 26082, 26083, 7, 97, 2, 2, 26083, 26084, 7, 90, 2, 2, 26084, 26085, 7, 83, 2, 2, 26085, 26086, 7, 85, 2, 2, 26086, 26087, 7, 86, 2, 2, 26087, 26088, 7, 84, 2, 2, 26088, 26089, 7, 52, 2, 2, 26089, 26090, 7, 69, 2, 2, 26090, 26091, 7, 81, 2, 2, 26091, 26092, 7, 70, 2, 2, 26092, 26093, 7, 71, 2, 2, 26093, 26094, 7, 82, 2, 2, 26094, 3794, 3, 2, 2, 2, 26095, 26096, 7, 85, 2, 2, 26096, 26097, 7, 91, 2, 2, 26097, 26098, 7, 85, 2, 2, 26098, 26099, 7, 97, 2, 2, 26099, 26100, 7, 90, 2, 2, 26100, 26101, 7, 83, 2, 2, 26101, 26102, 7, 85, 2, 2, 26102, 26103, 7, 86, 2, 2, 26103, 26104, 7, 84, 2, 2, 26104, 26105, 7, 76, 2, 2, 26105, 26106, 7, 81, 2, 2, 26106, 26107, 7, 75, 2, 2, 26107, 26108, 7, 80, 2, 2, 26108, 3796, 3, 2, 2, 2, 26109, 26110, 7, 85, 2, 2, 26110, 26111, 7, 91, 2, 2, 26111, 26112, 7, 85, 2, 2, 26112, 26113, 7, 97, 2, 2, 26113, 26114, 7, 90, 2, 2, 26114, 26115, 7, 83, 2, 2, 26115, 26116, 7, 85, 2, 2, 26116, 26117, 7, 87, 2, 2, 26117, 26118, 7, 68, 2, 2, 26118, 26119, 7, 85, 2, 2, 26119, 26120, 7, 86, 2, 2, 26120, 26121, 7, 84, 2, 2, 26121, 26122, 7, 67, 2, 2, 26122, 26123, 7, 72, 2, 2, 26123, 26124, 7, 86, 2, 2, 26124, 3798, 3, 2, 2, 2, 26125, 26126, 7, 85, 2, 2, 26126, 26127, 7, 91, 2, 2, 26127, 26128, 7, 85, 2, 2, 26128, 26129, 7, 97, 2, 2, 26129, 26130, 7, 90, 2, 2, 26130, 26131, 7, 83, 2, 2, 26131, 26132, 7, 85, 2, 2, 26132, 26133, 7, 87, 2, 2, 26133, 26134, 7, 68, 2, 2, 26134, 26135, 7, 85, 2, 2, 26135, 26136, 7, 86, 2, 2, 26136, 26137, 7, 84, 2, 2, 26137, 26138, 7, 68, 2, 2, 26138, 26139, 7, 71, 2, 2, 26139, 26140, 7, 72, 2, 2, 26140, 3800, 3, 2, 2, 2, 26141, 26142, 7, 85, 2, 2, 26142, 26143, 7, 91, 2, 2, 26143, 26144, 7, 85, 2, 2, 26144, 26145, 7, 97, 2, 2, 26145, 26146, 7, 90, 2, 2, 26146, 26147, 7, 83, 2, 2, 26147, 26148, 7, 86, 2, 2, 26148, 26149, 7, 81, 2, 2, 26149, 26150, 7, 77, 2, 2, 26150, 26151, 7, 71, 2, 2, 26151, 26152, 7, 80, 2, 2, 26152, 26153, 7, 75, 2, 2, 26153, 26154, 7, 92, 2, 2, 26154, 26155, 7, 71, 2, 2, 26155, 3802, 3, 2, 2, 2, 26156, 26157, 7, 85, 2, 2, 26157, 26158, 7, 91, 2, 2, 26158, 26159, 7, 85, 2, 2, 26159, 26160, 7, 97, 2, 2, 26160, 26161, 7, 90, 2, 2, 26161, 26162, 7, 83, 2, 2, 26162, 26163, 7, 86, 2, 2, 26163, 26164, 7, 84, 2, 2, 26164, 26165, 7, 71, 2, 2, 26165, 26166, 7, 67, 2, 2, 26166, 26167, 7, 86, 2, 2, 26167, 26168, 7, 67, 2, 2, 26168, 26169, 7, 85, 2, 2, 26169, 3804, 3, 2, 2, 2, 26170, 26171, 7, 85, 2, 2, 26171, 26172, 7, 91, 2, 2, 26172, 26173, 7, 85, 2, 2, 26173, 26174, 7, 97, 2, 2, 26174, 26175, 7, 90, 2, 2, 26175, 26176, 7, 83, 2, 2, 26176, 26177, 7, 97, 2, 2, 26177, 26178, 7, 87, 2, 2, 26178, 26179, 7, 82, 2, 2, 26179, 26180, 7, 77, 2, 2, 26180, 26181, 7, 90, 2, 2, 26181, 26182, 7, 79, 2, 2, 26182, 26183, 7, 78, 2, 2, 26183, 26184, 7, 52, 2, 2, 26184, 26185, 7, 85, 2, 2, 26185, 26186, 7, 83, 2, 2, 26186, 26187, 7, 78, 2, 2, 26187, 3806, 3, 2, 2, 2, 26188, 26189, 7, 85, 2, 2, 26189, 26190, 7, 91, 2, 2, 26190, 26191, 7, 85, 2, 2, 26191, 26192, 7, 97, 2, 2, 26192, 26193, 7, 90, 2, 2, 26193, 26194, 7, 83, 2, 2, 26194, 26195, 7, 90, 2, 2, 26195, 26196, 7, 72, 2, 2, 26196, 26197, 7, 81, 2, 2, 26197, 26198, 7, 84, 2, 2, 26198, 26199, 7, 79, 2, 2, 26199, 3808, 3, 2, 2, 2, 26200, 26201, 7, 85, 2, 2, 26201, 26202, 7, 91, 2, 2, 26202, 26203, 7, 85, 2, 2, 26203, 26204, 7, 97, 2, 2, 26204, 26205, 7, 90, 2, 2, 26205, 26206, 7, 85, 2, 2, 26206, 26207, 7, 75, 2, 2, 26207, 26208, 7, 70, 2, 2, 26208, 26209, 7, 97, 2, 2, 26209, 26210, 7, 86, 2, 2, 26210, 26211, 7, 81, 2, 2, 26211, 26212, 7, 97, 2, 2, 26212, 26213, 7, 84, 2, 2, 26213, 26214, 7, 67, 2, 2, 26214, 26215, 7, 89, 2, 2, 26215, 3810, 3, 2, 2, 2, 26216, 26217, 7, 85, 2, 2, 26217, 26218, 7, 91, 2, 2, 26218, 26219, 7, 85, 2, 2, 26219, 26220, 7, 97, 2, 2, 26220, 26221, 7, 92, 2, 2, 26221, 26222, 7, 79, 2, 2, 26222, 26223, 7, 67, 2, 2, 26223, 26224, 7, 82, 2, 2, 26224, 26225, 7, 97, 2, 2, 26225, 26226, 7, 72, 2, 2, 26226, 26227, 7, 75, 2, 2, 26227, 26228, 7, 78, 2, 2, 26228, 26229, 7, 86, 2, 2, 26229, 26230, 7, 71, 2, 2, 26230, 26231, 7, 84, 2, 2, 26231, 3812, 3, 2, 2, 2, 26232, 26233, 7, 85, 2, 2, 26233, 26234, 7, 91, 2, 2, 26234, 26235, 7, 85, 2, 2, 26235, 26236, 7, 97, 2, 2, 26236, 26237, 7, 92, 2, 2, 26237, 26238, 7, 79, 2, 2, 26238, 26239, 7, 67, 2, 2, 26239, 26240, 7, 82, 2, 2, 26240, 26241, 7, 97, 2, 2, 26241, 26242, 7, 84, 2, 2, 26242, 26243, 7, 71, 2, 2, 26243, 26244, 7, 72, 2, 2, 26244, 26245, 7, 84, 2, 2, 26245, 26246, 7, 71, 2, 2, 26246, 26247, 7, 85, 2, 2, 26247, 26248, 7, 74, 2, 2, 26248, 3814, 3, 2, 2, 2, 26249, 26250, 7, 86, 2, 2, 26250, 26251, 7, 67, 2, 2, 26251, 26252, 7, 68, 2, 2, 26252, 26253, 7, 78, 2, 2, 26253, 26254, 7, 71, 2, 2, 26254, 26255, 7, 97, 2, 2, 26255, 26256, 7, 78, 2, 2, 26256, 26257, 7, 81, 2, 2, 26257, 26258, 7, 81, 2, 2, 26258, 26259, 7, 77, 2, 2, 26259, 26260, 7, 87, 2, 2, 26260, 26261, 7, 82, 2, 2, 26261, 26262, 7, 97, 2, 2, 26262, 26263, 7, 68, 2, 2, 26263, 26264, 7, 91, 2, 2, 26264, 26265, 7, 97, 2, 2, 26265, 26266, 7, 80, 2, 2, 26266, 26267, 7, 78, 2, 2, 26267, 3816, 3, 2, 2, 2, 26268, 26269, 7, 86, 2, 2, 26269, 26270, 7, 67, 2, 2, 26270, 26271, 7, 68, 2, 2, 26271, 26272, 7, 78, 2, 2, 26272, 26273, 7, 71, 2, 2, 26273, 26274, 7, 85, 2, 2, 26274, 26275, 7, 82, 2, 2, 26275, 26276, 7, 67, 2, 2, 26276, 26277, 7, 69, 2, 2, 26277, 26278, 7, 71, 2, 2, 26278, 26279, 7, 97, 2, 2, 26279, 26280, 7, 80, 2, 2, 26280, 26281, 7, 81, 2, 2, 26281, 3818, 3, 2, 2, 2, 26282, 26283, 7, 86, 2, 2, 26283, 26284, 7, 67, 2, 2, 26284, 26285, 7, 68, 2, 2, 26285, 26286, 7, 78, 2, 2, 26286, 26287, 7, 71, 2, 2, 26287, 26288, 7, 85, 2, 2, 26288, 26289, 7, 82, 2, 2, 26289, 26290, 7, 67, 2, 2, 26290, 26291, 7, 69, 2, 2, 26291, 26292, 7, 71, 2, 2, 26292, 3820, 3, 2, 2, 2, 26293, 26294, 7, 86, 2, 2, 26294, 26295, 7, 67, 2, 2, 26295, 26296, 7, 68, 2, 2, 26296, 26297, 7, 78, 2, 2, 26297, 26298, 7, 71, 2, 2, 26298, 26299, 7, 85, 2, 2, 26299, 3822, 3, 2, 2, 2, 26300, 26301, 7, 86, 2, 2, 26301, 26302, 7, 67, 2, 2, 26302, 26303, 7, 68, 2, 2, 26303, 26304, 7, 78, 2, 2, 26304, 26305, 7, 71, 2, 2, 26305, 26306, 7, 97, 2, 2, 26306, 26307, 7, 85, 2, 2, 26307, 26308, 7, 86, 2, 2, 26308, 26309, 7, 67, 2, 2, 26309, 26310, 7, 86, 2, 2, 26310, 26311, 7, 85, 2, 2, 26311, 3824, 3, 2, 2, 2, 26312, 26313, 7, 86, 2, 2, 26313, 26314, 7, 67, 2, 2, 26314, 26315, 7, 68, 2, 2, 26315, 26316, 7, 78, 2, 2, 26316, 26317, 7, 71, 2, 2, 26317, 3826, 3, 2, 2, 2, 26318, 26319, 7, 86, 2, 2, 26319, 26320, 7, 67, 2, 2, 26320, 26321, 7, 68, 2, 2, 26321, 26322, 7, 80, 2, 2, 26322, 26323, 7, 81, 2, 2, 26323, 3828, 3, 2, 2, 2, 26324, 26325, 7, 86, 2, 2, 26325, 26326, 7, 67, 2, 2, 26326, 26327, 7, 73, 2, 2, 26327, 3830, 3, 2, 2, 2, 26328, 26329, 7, 86, 2, 2, 26329, 26330, 7, 67, 2, 2, 26330, 26331, 7, 80, 2, 2, 26331, 26332, 7, 74, 2, 2, 26332, 3832, 3, 2, 2, 2, 26333, 26334, 7, 86, 2, 2, 26334, 26335, 7, 67, 2, 2, 26335, 26336, 7, 80, 2, 2, 26336, 3834, 3, 2, 2, 2, 26337, 26338, 7, 86, 2, 2, 26338, 26339, 7, 68, 2, 2, 26339, 26340, 7, 78, 2, 2, 26340, 26341, 7, 38, 2, 2, 26341, 26342, 7, 81, 2, 2, 26342, 26343, 7, 84, 2, 2, 26343, 26344, 7, 38, 2, 2, 26344, 26345, 7, 75, 2, 2, 26345, 26346, 7, 70, 2, 2, 26346, 26347, 7, 90, 2, 2, 26347, 26348, 7, 38, 2, 2, 26348, 26349, 7, 82, 2, 2, 26349, 26350, 7, 67, 2, 2, 26350, 26351, 7, 84, 2, 2, 26351, 26352, 7, 86, 2, 2, 26352, 26353, 7, 38, 2, 2, 26353, 26354, 7, 80, 2, 2, 26354, 26355, 7, 87, 2, 2, 26355, 26356, 7, 79, 2, 2, 26356, 3836, 3, 2, 2, 2, 26357, 26358, 7, 86, 2, 2, 26358, 26359, 7, 71, 2, 2, 26359, 26360, 7, 79, 2, 2, 26360, 26361, 7, 82, 2, 2, 26361, 26362, 7, 72, 2, 2, 26362, 26363, 7, 75, 2, 2, 26363, 26364, 7, 78, 2, 2, 26364, 26365, 7, 71, 2, 2, 26365, 3838, 3, 2, 2, 2, 26366, 26367, 7, 86, 2, 2, 26367, 26368, 7, 71, 2, 2, 26368, 26369, 7, 79, 2, 2, 26369, 26370, 7, 82, 2, 2, 26370, 26371, 7, 78, 2, 2, 26371, 26372, 7, 67, 2, 2, 26372, 26373, 7, 86, 2, 2, 26373, 26374, 7, 71, 2, 2, 26374, 3840, 3, 2, 2, 2, 26375, 26376, 7, 86, 2, 2, 26376, 26377, 7, 71, 2, 2, 26377, 26378, 7, 79, 2, 2, 26378, 26379, 7, 82, 2, 2, 26379, 26380, 7, 81, 2, 2, 26380, 26381, 7, 84, 2, 2, 26381, 26382, 7, 67, 2, 2, 26382, 26383, 7, 84, 2, 2, 26383, 26384, 7, 91, 2, 2, 26384, 3842, 3, 2, 2, 2, 26385, 26386, 7, 86, 2, 2, 26386, 26387, 7, 71, 2, 2, 26387, 26388, 7, 79, 2, 2, 26388, 26389, 7, 82, 2, 2, 26389, 26390, 7, 97, 2, 2, 26390, 26391, 7, 86, 2, 2, 26391, 26392, 7, 67, 2, 2, 26392, 26393, 7, 68, 2, 2, 26393, 26394, 7, 78, 2, 2, 26394, 26395, 7, 71, 2, 2, 26395, 3844, 3, 2, 2, 2, 26396, 26397, 7, 86, 2, 2, 26397, 26398, 7, 71, 2, 2, 26398, 26399, 7, 85, 2, 2, 26399, 26400, 7, 86, 2, 2, 26400, 3846, 3, 2, 2, 2, 26401, 26402, 7, 86, 2, 2, 26402, 26403, 7, 71, 2, 2, 26403, 26404, 7, 90, 2, 2, 26404, 26405, 7, 86, 2, 2, 26405, 3848, 3, 2, 2, 2, 26406, 26407, 7, 86, 2, 2, 26407, 26408, 7, 74, 2, 2, 26408, 26409, 7, 67, 2, 2, 26409, 26410, 7, 80, 2, 2, 26410, 3850, 3, 2, 2, 2, 26411, 26412, 7, 86, 2, 2, 26412, 26413, 7, 74, 2, 2, 26413, 26414, 7, 71, 2, 2, 26414, 26415, 7, 80, 2, 2, 26415, 3852, 3, 2, 2, 2, 26416, 26417, 7, 86, 2, 2, 26417, 26418, 7, 74, 2, 2, 26418, 26419, 7, 71, 2, 2, 26419, 3854, 3, 2, 2, 2, 26420, 26421, 7, 86, 2, 2, 26421, 26422, 7, 74, 2, 2, 26422, 26423, 7, 84, 2, 2, 26423, 26424, 7, 71, 2, 2, 26424, 26425, 7, 67, 2, 2, 26425, 26426, 7, 70, 2, 2, 26426, 3856, 3, 2, 2, 2, 26427, 26428, 7, 86, 2, 2, 26428, 26429, 7, 74, 2, 2, 26429, 26430, 7, 84, 2, 2, 26430, 26431, 7, 81, 2, 2, 26431, 26432, 7, 87, 2, 2, 26432, 26433, 7, 73, 2, 2, 26433, 26434, 7, 74, 2, 2, 26434, 3858, 3, 2, 2, 2, 26435, 26436, 7, 86, 2, 2, 26436, 26437, 7, 75, 2, 2, 26437, 26438, 7, 71, 2, 2, 26438, 26439, 7, 84, 2, 2, 26439, 3860, 3, 2, 2, 2, 26440, 26441, 7, 86, 2, 2, 26441, 26442, 7, 75, 2, 2, 26442, 26443, 7, 71, 2, 2, 26443, 26444, 7, 85, 2, 2, 26444, 3862, 3, 2, 2, 2, 26445, 26446, 7, 86, 2, 2, 26446, 26447, 7, 75, 2, 2, 26447, 26448, 7, 79, 2, 2, 26448, 26449, 7, 71, 2, 2, 26449, 26450, 7, 81, 2, 2, 26450, 26451, 7, 87, 2, 2, 26451, 26452, 7, 86, 2, 2, 26452, 3864, 3, 2, 2, 2, 26453, 26454, 7, 86, 2, 2, 26454, 26455, 7, 75, 2, 2, 26455, 26456, 7, 79, 2, 2, 26456, 26457, 7, 71, 2, 2, 26457, 26458, 7, 85, 2, 2, 26458, 26459, 7, 86, 2, 2, 26459, 26460, 7, 67, 2, 2, 26460, 26461, 7, 79, 2, 2, 26461, 26462, 7, 82, 2, 2, 26462, 26463, 7, 97, 2, 2, 26463, 26464, 7, 78, 2, 2, 26464, 26465, 7, 86, 2, 2, 26465, 26466, 7, 92, 2, 2, 26466, 26467, 7, 97, 2, 2, 26467, 26468, 7, 87, 2, 2, 26468, 26469, 7, 80, 2, 2, 26469, 26470, 7, 69, 2, 2, 26470, 26471, 7, 81, 2, 2, 26471, 26472, 7, 80, 2, 2, 26472, 26473, 7, 85, 2, 2, 26473, 26474, 7, 86, 2, 2, 26474, 26475, 7, 84, 2, 2, 26475, 26476, 7, 67, 2, 2, 26476, 26477, 7, 75, 2, 2, 26477, 26478, 7, 80, 2, 2, 26478, 26479, 7, 71, 2, 2, 26479, 26480, 7, 70, 2, 2, 26480, 3866, 3, 2, 2, 2, 26481, 26482, 7, 86, 2, 2, 26482, 26483, 7, 75, 2, 2, 26483, 26484, 7, 79, 2, 2, 26484, 26485, 7, 71, 2, 2, 26485, 26486, 7, 85, 2, 2, 26486, 26487, 7, 86, 2, 2, 26487, 26488, 7, 67, 2, 2, 26488, 26489, 7, 79, 2, 2, 26489, 26490, 7, 82, 2, 2, 26490, 3868, 3, 2, 2, 2, 26491, 26492, 7, 86, 2, 2, 26492, 26493, 7, 75, 2, 2, 26493, 26494, 7, 79, 2, 2, 26494, 26495, 7, 71, 2, 2, 26495, 26496, 7, 85, 2, 2, 26496, 26497, 7, 86, 2, 2, 26497, 26498, 7, 67, 2, 2, 26498, 26499, 7, 79, 2, 2, 26499, 26500, 7, 82, 2, 2, 26500, 26501, 7, 97, 2, 2, 26501, 26502, 7, 86, 2, 2, 26502, 26503, 7, 92, 2, 2, 26503, 26504, 7, 97, 2, 2, 26504, 26505, 7, 87, 2, 2, 26505, 26506, 7, 80, 2, 2, 26506, 26507, 7, 69, 2, 2, 26507, 26508, 7, 81, 2, 2, 26508, 26509, 7, 80, 2, 2, 26509, 26510, 7, 85, 2, 2, 26510, 26511, 7, 86, 2, 2, 26511, 26512, 7, 84, 2, 2, 26512, 26513, 7, 67, 2, 2, 26513, 26514, 7, 75, 2, 2, 26514, 26515, 7, 80, 2, 2, 26515, 26516, 7, 71, 2, 2, 26516, 26517, 7, 70, 2, 2, 26517, 3870, 3, 2, 2, 2, 26518, 26519, 7, 86, 2, 2, 26519, 26520, 7, 75, 2, 2, 26520, 26521, 7, 79, 2, 2, 26521, 26522, 7, 71, 2, 2, 26522, 26523, 7, 85, 2, 2, 26523, 26524, 7, 86, 2, 2, 26524, 26525, 7, 67, 2, 2, 26525, 26526, 7, 79, 2, 2, 26526, 26527, 7, 82, 2, 2, 26527, 26528, 7, 97, 2, 2, 26528, 26529, 7, 87, 2, 2, 26529, 26530, 7, 80, 2, 2, 26530, 26531, 7, 69, 2, 2, 26531, 26532, 7, 81, 2, 2, 26532, 26533, 7, 80, 2, 2, 26533, 26534, 7, 85, 2, 2, 26534, 26535, 7, 86, 2, 2, 26535, 26536, 7, 84, 2, 2, 26536, 26537, 7, 67, 2, 2, 26537, 26538, 7, 75, 2, 2, 26538, 26539, 7, 80, 2, 2, 26539, 26540, 7, 71, 2, 2, 26540, 26541, 7, 70, 2, 2, 26541, 3872, 3, 2, 2, 2, 26542, 26543, 7, 86, 2, 2, 26543, 26544, 7, 75, 2, 2, 26544, 26545, 7, 79, 2, 2, 26545, 26546, 7, 71, 2, 2, 26546, 26547, 7, 85, 2, 2, 26547, 3874, 3, 2, 2, 2, 26548, 26549, 7, 86, 2, 2, 26549, 26550, 7, 75, 2, 2, 26550, 26551, 7, 79, 2, 2, 26551, 26552, 7, 71, 2, 2, 26552, 3876, 3, 2, 2, 2, 26553, 26554, 7, 86, 2, 2, 26554, 26555, 7, 75, 2, 2, 26555, 26556, 7, 79, 2, 2, 26556, 26557, 7, 71, 2, 2, 26557, 26558, 7, 92, 2, 2, 26558, 26559, 7, 81, 2, 2, 26559, 26560, 7, 80, 2, 2, 26560, 26561, 7, 71, 2, 2, 26561, 3878, 3, 2, 2, 2, 26562, 26563, 7, 86, 2, 2, 26563, 26564, 7, 75, 2, 2, 26564, 26565, 7, 79, 2, 2, 26565, 26566, 7, 71, 2, 2, 26566, 26567, 7, 92, 2, 2, 26567, 26568, 7, 81, 2, 2, 26568, 26569, 7, 80, 2, 2, 26569, 26570, 7, 71, 2, 2, 26570, 26571, 7, 97, 2, 2, 26571, 26572, 7, 67, 2, 2, 26572, 26573, 7, 68, 2, 2, 26573, 26574, 7, 68, 2, 2, 26574, 26575, 7, 84, 2, 2, 26575, 3880, 3, 2, 2, 2, 26576, 26577, 7, 86, 2, 2, 26577, 26578, 7, 75, 2, 2, 26578, 26579, 7, 79, 2, 2, 26579, 26580, 7, 71, 2, 2, 26580, 26581, 7, 92, 2, 2, 26581, 26582, 7, 81, 2, 2, 26582, 26583, 7, 80, 2, 2, 26583, 26584, 7, 71, 2, 2, 26584, 26585, 7, 97, 2, 2, 26585, 26586, 7, 74, 2, 2, 26586, 26587, 7, 81, 2, 2, 26587, 26588, 7, 87, 2, 2, 26588, 26589, 7, 84, 2, 2, 26589, 3882, 3, 2, 2, 2, 26590, 26591, 7, 86, 2, 2, 26591, 26592, 7, 75, 2, 2, 26592, 26593, 7, 79, 2, 2, 26593, 26594, 7, 71, 2, 2, 26594, 26595, 7, 92, 2, 2, 26595, 26596, 7, 81, 2, 2, 26596, 26597, 7, 80, 2, 2, 26597, 26598, 7, 71, 2, 2, 26598, 26599, 7, 97, 2, 2, 26599, 26600, 7, 79, 2, 2, 26600, 26601, 7, 75, 2, 2, 26601, 26602, 7, 80, 2, 2, 26602, 26603, 7, 87, 2, 2, 26603, 26604, 7, 86, 2, 2, 26604, 26605, 7, 71, 2, 2, 26605, 3884, 3, 2, 2, 2, 26606, 26607, 7, 86, 2, 2, 26607, 26608, 7, 75, 2, 2, 26608, 26609, 7, 79, 2, 2, 26609, 26610, 7, 71, 2, 2, 26610, 26611, 7, 92, 2, 2, 26611, 26612, 7, 81, 2, 2, 26612, 26613, 7, 80, 2, 2, 26613, 26614, 7, 71, 2, 2, 26614, 26615, 7, 97, 2, 2, 26615, 26616, 7, 81, 2, 2, 26616, 26617, 7, 72, 2, 2, 26617, 26618, 7, 72, 2, 2, 26618, 26619, 7, 85, 2, 2, 26619, 26620, 7, 71, 2, 2, 26620, 26621, 7, 86, 2, 2, 26621, 3886, 3, 2, 2, 2, 26622, 26623, 7, 86, 2, 2, 26623, 26624, 7, 75, 2, 2, 26624, 26625, 7, 79, 2, 2, 26625, 26626, 7, 71, 2, 2, 26626, 26627, 7, 92, 2, 2, 26627, 26628, 7, 81, 2, 2, 26628, 26629, 7, 80, 2, 2, 26629, 26630, 7, 71, 2, 2, 26630, 26631, 7, 97, 2, 2, 26631, 26632, 7, 84, 2, 2, 26632, 26633, 7, 71, 2, 2, 26633, 26634, 7, 73, 2, 2, 26634, 26635, 7, 75, 2, 2, 26635, 26636, 7, 81, 2, 2, 26636, 26637, 7, 80, 2, 2, 26637, 3888, 3, 2, 2, 2, 26638, 26639, 7, 86, 2, 2, 26639, 26640, 7, 75, 2, 2, 26640, 26641, 7, 79, 2, 2, 26641, 26642, 7, 71, 2, 2, 26642, 26643, 7, 97, 2, 2, 26643, 26644, 7, 92, 2, 2, 26644, 26645, 7, 81, 2, 2, 26645, 26646, 7, 80, 2, 2, 26646, 26647, 7, 71, 2, 2, 26647, 3890, 3, 2, 2, 2, 26648, 26649, 7, 86, 2, 2, 26649, 26650, 7, 75, 2, 2, 26650, 26651, 7, 88, 2, 2, 26651, 26652, 7, 97, 2, 2, 26652, 26653, 7, 73, 2, 2, 26653, 26654, 7, 68, 2, 2, 26654, 3892, 3, 2, 2, 2, 26655, 26656, 7, 86, 2, 2, 26656, 26657, 7, 75, 2, 2, 26657, 26658, 7, 88, 2, 2, 26658, 26659, 7, 97, 2, 2, 26659, 26660, 7, 85, 2, 2, 26660, 26661, 7, 85, 2, 2, 26661, 26662, 7, 72, 2, 2, 26662, 3894, 3, 2, 2, 2, 26663, 26664, 7, 86, 2, 2, 26664, 26665, 7, 81, 2, 2, 26665, 26666, 7, 97, 2, 2, 26666, 26667, 7, 67, 2, 2, 26667, 26668, 7, 69, 2, 2, 26668, 26669, 7, 78, 2, 2, 26669, 26670, 7, 75, 2, 2, 26670, 26671, 7, 70, 2, 2, 26671, 3896, 3, 2, 2, 2, 26672, 26673, 7, 86, 2, 2, 26673, 26674, 7, 81, 2, 2, 26674, 26675, 7, 97, 2, 2, 26675, 26676, 7, 68, 2, 2, 26676, 26677, 7, 75, 2, 2, 26677, 26678, 7, 80, 2, 2, 26678, 26679, 7, 67, 2, 2, 26679, 26680, 7, 84, 2, 2, 26680, 26681, 7, 91, 2, 2, 26681, 26682, 7, 97, 2, 2, 26682, 26683, 7, 70, 2, 2, 26683, 26684, 7, 81, 2, 2, 26684, 26685, 7, 87, 2, 2, 26685, 26686, 7, 68, 2, 2, 26686, 26687, 7, 78, 2, 2, 26687, 26688, 7, 71, 2, 2, 26688, 3898, 3, 2, 2, 2, 26689, 26690, 7, 86, 2, 2, 26690, 26691, 7, 81, 2, 2, 26691, 26692, 7, 97, 2, 2, 26692, 26693, 7, 68, 2, 2, 26693, 26694, 7, 75, 2, 2, 26694, 26695, 7, 80, 2, 2, 26695, 26696, 7, 67, 2, 2, 26696, 26697, 7, 84, 2, 2, 26697, 26698, 7, 91, 2, 2, 26698, 26699, 7, 97, 2, 2, 26699, 26700, 7, 72, 2, 2, 26700, 26701, 7, 78, 2, 2, 26701, 26702, 7, 81, 2, 2, 26702, 26703, 7, 67, 2, 2, 26703, 26704, 7, 86, 2, 2, 26704, 3900, 3, 2, 2, 2, 26705, 26706, 7, 86, 2, 2, 26706, 26707, 7, 81, 2, 2, 26707, 26708, 7, 97, 2, 2, 26708, 26709, 7, 68, 2, 2, 26709, 26710, 7, 78, 2, 2, 26710, 26711, 7, 81, 2, 2, 26711, 26712, 7, 68, 2, 2, 26712, 3902, 3, 2, 2, 2, 26713, 26714, 7, 86, 2, 2, 26714, 26715, 7, 81, 2, 2, 26715, 26716, 7, 97, 2, 2, 26716, 26717, 7, 69, 2, 2, 26717, 26718, 7, 78, 2, 2, 26718, 26719, 7, 81, 2, 2, 26719, 26720, 7, 68, 2, 2, 26720, 3904, 3, 2, 2, 2, 26721, 26722, 7, 86, 2, 2, 26722, 26723, 7, 81, 2, 2, 26723, 26724, 7, 97, 2, 2, 26724, 26725, 7, 70, 2, 2, 26725, 26726, 7, 85, 2, 2, 26726, 26727, 7, 75, 2, 2, 26727, 26728, 7, 80, 2, 2, 26728, 26729, 7, 86, 2, 2, 26729, 26730, 7, 71, 2, 2, 26730, 26731, 7, 84, 2, 2, 26731, 26732, 7, 88, 2, 2, 26732, 26733, 7, 67, 2, 2, 26733, 26734, 7, 78, 2, 2, 26734, 3906, 3, 2, 2, 2, 26735, 26736, 7, 86, 2, 2, 26736, 26737, 7, 81, 2, 2, 26737, 26738, 7, 97, 2, 2, 26738, 26739, 7, 78, 2, 2, 26739, 26740, 7, 81, 2, 2, 26740, 26741, 7, 68, 2, 2, 26741, 3908, 3, 2, 2, 2, 26742, 26743, 7, 86, 2, 2, 26743, 26744, 7, 81, 2, 2, 26744, 26745, 7, 97, 2, 2, 26745, 26746, 7, 79, 2, 2, 26746, 26747, 7, 87, 2, 2, 26747, 26748, 7, 78, 2, 2, 26748, 26749, 7, 86, 2, 2, 26749, 26750, 7, 75, 2, 2, 26750, 26751, 7, 97, 2, 2, 26751, 26752, 7, 68, 2, 2, 26752, 26753, 7, 91, 2, 2, 26753, 26754, 7, 86, 2, 2, 26754, 26755, 7, 71, 2, 2, 26755, 3910, 3, 2, 2, 2, 26756, 26757, 7, 86, 2, 2, 26757, 26758, 7, 81, 2, 2, 26758, 26759, 7, 97, 2, 2, 26759, 26760, 7, 80, 2, 2, 26760, 26761, 7, 69, 2, 2, 26761, 26762, 7, 74, 2, 2, 26762, 26763, 7, 67, 2, 2, 26763, 26764, 7, 84, 2, 2, 26764, 3912, 3, 2, 2, 2, 26765, 26766, 7, 86, 2, 2, 26766, 26767, 7, 81, 2, 2, 26767, 26768, 7, 97, 2, 2, 26768, 26769, 7, 80, 2, 2, 26769, 26770, 7, 69, 2, 2, 26770, 26771, 7, 78, 2, 2, 26771, 26772, 7, 81, 2, 2, 26772, 26773, 7, 68, 2, 2, 26773, 3914, 3, 2, 2, 2, 26774, 26775, 7, 86, 2, 2, 26775, 26776, 7, 81, 2, 2, 26776, 26777, 7, 97, 2, 2, 26777, 26778, 7, 80, 2, 2, 26778, 26779, 7, 87, 2, 2, 26779, 26780, 7, 79, 2, 2, 26780, 26781, 7, 68, 2, 2, 26781, 26782, 7, 71, 2, 2, 26782, 26783, 7, 84, 2, 2, 26783, 3916, 3, 2, 2, 2, 26784, 26785, 7, 86, 2, 2, 26785, 26786, 7, 81, 2, 2, 26786, 26787, 7, 82, 2, 2, 26787, 26788, 7, 78, 2, 2, 26788, 26789, 7, 71, 2, 2, 26789, 26790, 7, 88, 2, 2, 26790, 26791, 7, 71, 2, 2, 26791, 26792, 7, 78, 2, 2, 26792, 3918, 3, 2, 2, 2, 26793, 26794, 7, 86, 2, 2, 26794, 26795, 7, 81, 2, 2, 26795, 26796, 7, 97, 2, 2, 26796, 26797, 7, 85, 2, 2, 26797, 26798, 7, 75, 2, 2, 26798, 26799, 7, 80, 2, 2, 26799, 26800, 7, 73, 2, 2, 26800, 26801, 7, 78, 2, 2, 26801, 26802, 7, 71, 2, 2, 26802, 26803, 7, 97, 2, 2, 26803, 26804, 7, 68, 2, 2, 26804, 26805, 7, 91, 2, 2, 26805, 26806, 7, 86, 2, 2, 26806, 26807, 7, 71, 2, 2, 26807, 3920, 3, 2, 2, 2, 26808, 26809, 7, 86, 2, 2, 26809, 26810, 7, 81, 2, 2, 26810, 26811, 7, 97, 2, 2, 26811, 26812, 7, 86, 2, 2, 26812, 26813, 7, 75, 2, 2, 26813, 26814, 7, 79, 2, 2, 26814, 26815, 7, 71, 2, 2, 26815, 26816, 7, 85, 2, 2, 26816, 26817, 7, 86, 2, 2, 26817, 26818, 7, 67, 2, 2, 26818, 26819, 7, 79, 2, 2, 26819, 26820, 7, 82, 2, 2, 26820, 3922, 3, 2, 2, 2, 26821, 26822, 7, 86, 2, 2, 26822, 26823, 7, 81, 2, 2, 26823, 26824, 7, 97, 2, 2, 26824, 26825, 7, 86, 2, 2, 26825, 26826, 7, 75, 2, 2, 26826, 26827, 7, 79, 2, 2, 26827, 26828, 7, 71, 2, 2, 26828, 26829, 7, 85, 2, 2, 26829, 26830, 7, 86, 2, 2, 26830, 26831, 7, 67, 2, 2, 26831, 26832, 7, 79, 2, 2, 26832, 26833, 7, 82, 2, 2, 26833, 26834, 7, 97, 2, 2, 26834, 26835, 7, 86, 2, 2, 26835, 26836, 7, 92, 2, 2, 26836, 3924, 3, 2, 2, 2, 26837, 26838, 7, 86, 2, 2, 26838, 26839, 7, 81, 2, 2, 26839, 26840, 7, 97, 2, 2, 26840, 26841, 7, 86, 2, 2, 26841, 26842, 7, 75, 2, 2, 26842, 26843, 7, 79, 2, 2, 26843, 26844, 7, 71, 2, 2, 26844, 3926, 3, 2, 2, 2, 26845, 26846, 7, 86, 2, 2, 26846, 26847, 7, 81, 2, 2, 26847, 26848, 7, 97, 2, 2, 26848, 26849, 7, 86, 2, 2, 26849, 26850, 7, 75, 2, 2, 26850, 26851, 7, 79, 2, 2, 26851, 26852, 7, 71, 2, 2, 26852, 26853, 7, 97, 2, 2, 26853, 26854, 7, 86, 2, 2, 26854, 26855, 7, 92, 2, 2, 26855, 3928, 3, 2, 2, 2, 26856, 26857, 7, 86, 2, 2, 26857, 26858, 7, 81, 2, 2, 26858, 3930, 3, 2, 2, 2, 26859, 26860, 7, 86, 2, 2, 26860, 26861, 7, 81, 2, 2, 26861, 26862, 7, 97, 2, 2, 26862, 26863, 7, 91, 2, 2, 26863, 26864, 7, 79, 2, 2, 26864, 26865, 7, 75, 2, 2, 26865, 26866, 7, 80, 2, 2, 26866, 26867, 7, 86, 2, 2, 26867, 26868, 7, 71, 2, 2, 26868, 26869, 7, 84, 2, 2, 26869, 26870, 7, 88, 2, 2, 26870, 26871, 7, 67, 2, 2, 26871, 26872, 7, 78, 2, 2, 26872, 3932, 3, 2, 2, 2, 26873, 26874, 7, 86, 2, 2, 26874, 26875, 7, 84, 2, 2, 26875, 26876, 7, 67, 2, 2, 26876, 26877, 7, 69, 2, 2, 26877, 26878, 7, 71, 2, 2, 26878, 3934, 3, 2, 2, 2, 26879, 26880, 7, 86, 2, 2, 26880, 26881, 7, 84, 2, 2, 26881, 26882, 7, 67, 2, 2, 26882, 26883, 7, 69, 2, 2, 26883, 26884, 7, 75, 2, 2, 26884, 26885, 7, 80, 2, 2, 26885, 26886, 7, 73, 2, 2, 26886, 3936, 3, 2, 2, 2, 26887, 26888, 7, 86, 2, 2, 26888, 26889, 7, 84, 2, 2, 26889, 26890, 7, 67, 2, 2, 26890, 26891, 7, 69, 2, 2, 26891, 26892, 7, 77, 2, 2, 26892, 26893, 7, 75, 2, 2, 26893, 26894, 7, 80, 2, 2, 26894, 26895, 7, 73, 2, 2, 26895, 3938, 3, 2, 2, 2, 26896, 26897, 7, 86, 2, 2, 26897, 26898, 7, 84, 2, 2, 26898, 26899, 7, 67, 2, 2, 26899, 26900, 7, 75, 2, 2, 26900, 26901, 7, 78, 2, 2, 26901, 26902, 7, 75, 2, 2, 26902, 26903, 7, 80, 2, 2, 26903, 26904, 7, 73, 2, 2, 26904, 3940, 3, 2, 2, 2, 26905, 26906, 7, 86, 2, 2, 26906, 26907, 7, 84, 2, 2, 26907, 26908, 7, 67, 2, 2, 26908, 26909, 7, 80, 2, 2, 26909, 26910, 7, 85, 2, 2, 26910, 26911, 7, 67, 2, 2, 26911, 26912, 7, 69, 2, 2, 26912, 26913, 7, 86, 2, 2, 26913, 26914, 7, 75, 2, 2, 26914, 26915, 7, 81, 2, 2, 26915, 26916, 7, 80, 2, 2, 26916, 3942, 3, 2, 2, 2, 26917, 26918, 7, 86, 2, 2, 26918, 26919, 7, 84, 2, 2, 26919, 26920, 7, 67, 2, 2, 26920, 26921, 7, 80, 2, 2, 26921, 26922, 7, 85, 2, 2, 26922, 26923, 7, 72, 2, 2, 26923, 26924, 7, 81, 2, 2, 26924, 26925, 7, 84, 2, 2, 26925, 26926, 7, 79, 2, 2, 26926, 26927, 7, 97, 2, 2, 26927, 26928, 7, 70, 2, 2, 26928, 26929, 7, 75, 2, 2, 26929, 26930, 7, 85, 2, 2, 26930, 26931, 7, 86, 2, 2, 26931, 26932, 7, 75, 2, 2, 26932, 26933, 7, 80, 2, 2, 26933, 26934, 7, 69, 2, 2, 26934, 26935, 7, 86, 2, 2, 26935, 26936, 7, 97, 2, 2, 26936, 26937, 7, 67, 2, 2, 26937, 26938, 7, 73, 2, 2, 26938, 26939, 7, 73, 2, 2, 26939, 3944, 3, 2, 2, 2, 26940, 26941, 7, 86, 2, 2, 26941, 26942, 7, 84, 2, 2, 26942, 26943, 7, 67, 2, 2, 26943, 26944, 7, 80, 2, 2, 26944, 26945, 7, 85, 2, 2, 26945, 26946, 7, 75, 2, 2, 26946, 26947, 7, 86, 2, 2, 26947, 26948, 7, 75, 2, 2, 26948, 26949, 7, 81, 2, 2, 26949, 26950, 7, 80, 2, 2, 26950, 26951, 7, 67, 2, 2, 26951, 26952, 7, 78, 2, 2, 26952, 3946, 3, 2, 2, 2, 26953, 26954, 7, 86, 2, 2, 26954, 26955, 7, 84, 2, 2, 26955, 26956, 7, 67, 2, 2, 26956, 26957, 7, 80, 2, 2, 26957, 26958, 7, 85, 2, 2, 26958, 26959, 7, 75, 2, 2, 26959, 26960, 7, 86, 2, 2, 26960, 26961, 7, 75, 2, 2, 26961, 26962, 7, 81, 2, 2, 26962, 26963, 7, 80, 2, 2, 26963, 3948, 3, 2, 2, 2, 26964, 26965, 7, 86, 2, 2, 26965, 26966, 7, 84, 2, 2, 26966, 26967, 7, 67, 2, 2, 26967, 26968, 7, 80, 2, 2, 26968, 26969, 7, 85, 2, 2, 26969, 26970, 7, 78, 2, 2, 26970, 26971, 7, 67, 2, 2, 26971, 26972, 7, 86, 2, 2, 26972, 26973, 7, 71, 2, 2, 26973, 3950, 3, 2, 2, 2, 26974, 26975, 7, 86, 2, 2, 26975, 26976, 7, 84, 2, 2, 26976, 26977, 7, 67, 2, 2, 26977, 26978, 7, 80, 2, 2, 26978, 26979, 7, 85, 2, 2, 26979, 26980, 7, 78, 2, 2, 26980, 26981, 7, 67, 2, 2, 26981, 26982, 7, 86, 2, 2, 26982, 26983, 7, 75, 2, 2, 26983, 26984, 7, 81, 2, 2, 26984, 26985, 7, 80, 2, 2, 26985, 3952, 3, 2, 2, 2, 26986, 26987, 7, 86, 2, 2, 26987, 26988, 7, 84, 2, 2, 26988, 26989, 7, 71, 2, 2, 26989, 26990, 7, 67, 2, 2, 26990, 26991, 7, 86, 2, 2, 26991, 3954, 3, 2, 2, 2, 26992, 26993, 7, 86, 2, 2, 26993, 26994, 7, 84, 2, 2, 26994, 26995, 7, 75, 2, 2, 26995, 26996, 7, 73, 2, 2, 26996, 26997, 7, 73, 2, 2, 26997, 26998, 7, 71, 2, 2, 26998, 26999, 7, 84, 2, 2, 26999, 27000, 7, 85, 2, 2, 27000, 3956, 3, 2, 2, 2, 27001, 27002, 7, 86, 2, 2, 27002, 27003, 7, 84, 2, 2, 27003, 27004, 7, 75, 2, 2, 27004, 27005, 7, 73, 2, 2, 27005, 27006, 7, 73, 2, 2, 27006, 27007, 7, 71, 2, 2, 27007, 27008, 7, 84, 2, 2, 27008, 3958, 3, 2, 2, 2, 27009, 27010, 7, 86, 2, 2, 27010, 27011, 7, 84, 2, 2, 27011, 27012, 7, 87, 2, 2, 27012, 27013, 7, 71, 2, 2, 27013, 3960, 3, 2, 2, 2, 27014, 27015, 7, 86, 2, 2, 27015, 27016, 7, 84, 2, 2, 27016, 27017, 7, 87, 2, 2, 27017, 27018, 7, 80, 2, 2, 27018, 27019, 7, 69, 2, 2, 27019, 27020, 7, 67, 2, 2, 27020, 27021, 7, 86, 2, 2, 27021, 27022, 7, 71, 2, 2, 27022, 3962, 3, 2, 2, 2, 27023, 27024, 7, 86, 2, 2, 27024, 27025, 7, 84, 2, 2, 27025, 27026, 7, 87, 2, 2, 27026, 27027, 7, 80, 2, 2, 27027, 27028, 7, 69, 2, 2, 27028, 3964, 3, 2, 2, 2, 27029, 27030, 7, 86, 2, 2, 27030, 27031, 7, 84, 2, 2, 27031, 27032, 7, 87, 2, 2, 27032, 27033, 7, 85, 2, 2, 27033, 27034, 7, 86, 2, 2, 27034, 27035, 7, 71, 2, 2, 27035, 27036, 7, 70, 2, 2, 27036, 3966, 3, 2, 2, 2, 27037, 27038, 7, 86, 2, 2, 27038, 27039, 7, 84, 2, 2, 27039, 27040, 7, 87, 2, 2, 27040, 27041, 7, 85, 2, 2, 27041, 27042, 7, 86, 2, 2, 27042, 3968, 3, 2, 2, 2, 27043, 27044, 7, 86, 2, 2, 27044, 27045, 7, 87, 2, 2, 27045, 27046, 7, 80, 2, 2, 27046, 27047, 7, 75, 2, 2, 27047, 27048, 7, 80, 2, 2, 27048, 27049, 7, 73, 2, 2, 27049, 3970, 3, 2, 2, 2, 27050, 27051, 7, 86, 2, 2, 27051, 27052, 7, 90, 2, 2, 27052, 3972, 3, 2, 2, 2, 27053, 27054, 7, 86, 2, 2, 27054, 27055, 7, 91, 2, 2, 27055, 27056, 7, 82, 2, 2, 27056, 27057, 7, 71, 2, 2, 27057, 27058, 7, 85, 2, 2, 27058, 3974, 3, 2, 2, 2, 27059, 27060, 7, 86, 2, 2, 27060, 27061, 7, 91, 2, 2, 27061, 27062, 7, 82, 2, 2, 27062, 27063, 7, 71, 2, 2, 27063, 3976, 3, 2, 2, 2, 27064, 27065, 7, 86, 2, 2, 27065, 27066, 7, 92, 2, 2, 27066, 27067, 7, 97, 2, 2, 27067, 27068, 7, 81, 2, 2, 27068, 27069, 7, 72, 2, 2, 27069, 27070, 7, 72, 2, 2, 27070, 27071, 7, 85, 2, 2, 27071, 27072, 7, 71, 2, 2, 27072, 27073, 7, 86, 2, 2, 27073, 3978, 3, 2, 2, 2, 27074, 27075, 7, 87, 2, 2, 27075, 27076, 7, 68, 2, 2, 27076, 27077, 7, 52, 2, 2, 27077, 3980, 3, 2, 2, 2, 27078, 27079, 7, 87, 2, 2, 27079, 27080, 7, 68, 2, 2, 27080, 27081, 7, 67, 2, 2, 27081, 3982, 3, 2, 2, 2, 27082, 27083, 7, 87, 2, 2, 27083, 27084, 7, 69, 2, 2, 27084, 27085, 7, 85, 2, 2, 27085, 27086, 7, 52, 2, 2, 27086, 3984, 3, 2, 2, 2, 27087, 27088, 7, 87, 2, 2, 27088, 27089, 7, 75, 2, 2, 27089, 27090, 7, 70, 2, 2, 27090, 3986, 3, 2, 2, 2, 27091, 27092, 7, 87, 2, 2, 27092, 27093, 7, 80, 2, 2, 27093, 27094, 7, 67, 2, 2, 27094, 27095, 7, 84, 2, 2, 27095, 27096, 7, 69, 2, 2, 27096, 27097, 7, 74, 2, 2, 27097, 27098, 7, 75, 2, 2, 27098, 27099, 7, 88, 2, 2, 27099, 27100, 7, 71, 2, 2, 27100, 27101, 7, 70, 2, 2, 27101, 3988, 3, 2, 2, 2, 27102, 27103, 7, 87, 2, 2, 27103, 27104, 7, 80, 2, 2, 27104, 27105, 7, 68, 2, 2, 27105, 27106, 7, 81, 2, 2, 27106, 27107, 7, 87, 2, 2, 27107, 27108, 7, 80, 2, 2, 27108, 27109, 7, 70, 2, 2, 27109, 27110, 7, 71, 2, 2, 27110, 27111, 7, 70, 2, 2, 27111, 3990, 3, 2, 2, 2, 27112, 27113, 7, 87, 2, 2, 27113, 27114, 7, 80, 2, 2, 27114, 27115, 7, 68, 2, 2, 27115, 27116, 7, 81, 2, 2, 27116, 27117, 7, 87, 2, 2, 27117, 27118, 7, 80, 2, 2, 27118, 27119, 7, 70, 2, 2, 27119, 3992, 3, 2, 2, 2, 27120, 27121, 7, 87, 2, 2, 27121, 27122, 7, 80, 2, 2, 27122, 27123, 7, 69, 2, 2, 27123, 27124, 7, 81, 2, 2, 27124, 27125, 7, 80, 2, 2, 27125, 27126, 7, 70, 2, 2, 27126, 27127, 7, 75, 2, 2, 27127, 27128, 7, 86, 2, 2, 27128, 27129, 7, 75, 2, 2, 27129, 27130, 7, 81, 2, 2, 27130, 27131, 7, 80, 2, 2, 27131, 27132, 7, 67, 2, 2, 27132, 27133, 7, 78, 2, 2, 27133, 3994, 3, 2, 2, 2, 27134, 27135, 7, 87, 2, 2, 27135, 27136, 7, 80, 2, 2, 27136, 27137, 7, 70, 2, 2, 27137, 27138, 7, 71, 2, 2, 27138, 27139, 7, 84, 2, 2, 27139, 3996, 3, 2, 2, 2, 27140, 27141, 7, 87, 2, 2, 27141, 27142, 7, 80, 2, 2, 27142, 27143, 7, 70, 2, 2, 27143, 27144, 7, 81, 2, 2, 27144, 3998, 3, 2, 2, 2, 27145, 27146, 7, 87, 2, 2, 27146, 27147, 7, 80, 2, 2, 27147, 27148, 7, 70, 2, 2, 27148, 27149, 7, 84, 2, 2, 27149, 27150, 7, 81, 2, 2, 27150, 27151, 7, 82, 2, 2, 27151, 4000, 3, 2, 2, 2, 27152, 27153, 7, 87, 2, 2, 27153, 27154, 7, 80, 2, 2, 27154, 27155, 7, 75, 2, 2, 27155, 27156, 7, 72, 2, 2, 27156, 27157, 7, 81, 2, 2, 27157, 27158, 7, 84, 2, 2, 27158, 27159, 7, 79, 2, 2, 27159, 4002, 3, 2, 2, 2, 27160, 27161, 7, 87, 2, 2, 27161, 27162, 7, 80, 2, 2, 27162, 27163, 7, 75, 2, 2, 27163, 27164, 7, 81, 2, 2, 27164, 27165, 7, 80, 2, 2, 27165, 4004, 3, 2, 2, 2, 27166, 27167, 7, 87, 2, 2, 27167, 27168, 7, 80, 2, 2, 27168, 27169, 7, 75, 2, 2, 27169, 27170, 7, 83, 2, 2, 27170, 27171, 7, 87, 2, 2, 27171, 27172, 7, 71, 2, 2, 27172, 4006, 3, 2, 2, 2, 27173, 27174, 7, 87, 2, 2, 27174, 27175, 7, 80, 2, 2, 27175, 27176, 7, 75, 2, 2, 27176, 27177, 7, 85, 2, 2, 27177, 27178, 7, 86, 2, 2, 27178, 27179, 7, 84, 2, 2, 27179, 4008, 3, 2, 2, 2, 27180, 27181, 7, 87, 2, 2, 27181, 27182, 7, 80, 2, 2, 27182, 27183, 7, 78, 2, 2, 27183, 27184, 7, 75, 2, 2, 27184, 27185, 7, 79, 2, 2, 27185, 27186, 7, 75, 2, 2, 27186, 27187, 7, 86, 2, 2, 27187, 27188, 7, 71, 2, 2, 27188, 27189, 7, 70, 2, 2, 27189, 4010, 3, 2, 2, 2, 27190, 27191, 7, 87, 2, 2, 27191, 27192, 7, 80, 2, 2, 27192, 27193, 7, 78, 2, 2, 27193, 27194, 7, 81, 2, 2, 27194, 27195, 7, 67, 2, 2, 27195, 27196, 7, 70, 2, 2, 27196, 4012, 3, 2, 2, 2, 27197, 27198, 7, 87, 2, 2, 27198, 27199, 7, 80, 2, 2, 27199, 27200, 7, 78, 2, 2, 27200, 27201, 7, 81, 2, 2, 27201, 27202, 7, 69, 2, 2, 27202, 27203, 7, 77, 2, 2, 27203, 4014, 3, 2, 2, 2, 27204, 27205, 7, 87, 2, 2, 27205, 27206, 7, 80, 2, 2, 27206, 27207, 7, 79, 2, 2, 27207, 27208, 7, 67, 2, 2, 27208, 27209, 7, 86, 2, 2, 27209, 27210, 7, 69, 2, 2, 27210, 27211, 7, 74, 2, 2, 27211, 27212, 7, 71, 2, 2, 27212, 27213, 7, 70, 2, 2, 27213, 4016, 3, 2, 2, 2, 27214, 27215, 7, 87, 2, 2, 27215, 27216, 7, 80, 2, 2, 27216, 27217, 7, 80, 2, 2, 27217, 27218, 7, 71, 2, 2, 27218, 27219, 7, 85, 2, 2, 27219, 27220, 7, 86, 2, 2, 27220, 27221, 7, 97, 2, 2, 27221, 27222, 7, 75, 2, 2, 27222, 27223, 7, 80, 2, 2, 27223, 27224, 7, 80, 2, 2, 27224, 27225, 7, 71, 2, 2, 27225, 27226, 7, 84, 2, 2, 27226, 27227, 7, 76, 2, 2, 27227, 27228, 7, 97, 2, 2, 27228, 27229, 7, 70, 2, 2, 27229, 27230, 7, 75, 2, 2, 27230, 27231, 7, 85, 2, 2, 27231, 27232, 7, 86, 2, 2, 27232, 27233, 7, 75, 2, 2, 27233, 27234, 7, 80, 2, 2, 27234, 27235, 7, 69, 2, 2, 27235, 27236, 7, 86, 2, 2, 27236, 27237, 7, 97, 2, 2, 27237, 27238, 7, 88, 2, 2, 27238, 27239, 7, 75, 2, 2, 27239, 27240, 7, 71, 2, 2, 27240, 27241, 7, 89, 2, 2, 27241, 4018, 3, 2, 2, 2, 27242, 27243, 7, 87, 2, 2, 27243, 27244, 7, 80, 2, 2, 27244, 27245, 7, 80, 2, 2, 27245, 27246, 7, 71, 2, 2, 27246, 27247, 7, 85, 2, 2, 27247, 27248, 7, 86, 2, 2, 27248, 27249, 7, 97, 2, 2, 27249, 27250, 7, 80, 2, 2, 27250, 27251, 7, 81, 2, 2, 27251, 27252, 7, 85, 2, 2, 27252, 27253, 7, 71, 2, 2, 27253, 27254, 7, 79, 2, 2, 27254, 27255, 7, 75, 2, 2, 27255, 27256, 7, 76, 2, 2, 27256, 27257, 7, 97, 2, 2, 27257, 27258, 7, 80, 2, 2, 27258, 27259, 7, 81, 2, 2, 27259, 27260, 7, 70, 2, 2, 27260, 27261, 7, 75, 2, 2, 27261, 27262, 7, 85, 2, 2, 27262, 27263, 7, 86, 2, 2, 27263, 27264, 7, 75, 2, 2, 27264, 27265, 7, 80, 2, 2, 27265, 27266, 7, 69, 2, 2, 27266, 27267, 7, 86, 2, 2, 27267, 27268, 7, 88, 2, 2, 27268, 27269, 7, 75, 2, 2, 27269, 27270, 7, 71, 2, 2, 27270, 27271, 7, 89, 2, 2, 27271, 4020, 3, 2, 2, 2, 27272, 27273, 7, 87, 2, 2, 27273, 27274, 7, 80, 2, 2, 27274, 27275, 7, 80, 2, 2, 27275, 27276, 7, 71, 2, 2, 27276, 27277, 7, 85, 2, 2, 27277, 27278, 7, 86, 2, 2, 27278, 27279, 7, 97, 2, 2, 27279, 27280, 7, 85, 2, 2, 27280, 27281, 7, 71, 2, 2, 27281, 27282, 7, 79, 2, 2, 27282, 27283, 7, 75, 2, 2, 27283, 27284, 7, 76, 2, 2, 27284, 27285, 7, 97, 2, 2, 27285, 27286, 7, 88, 2, 2, 27286, 27287, 7, 75, 2, 2, 27287, 27288, 7, 71, 2, 2, 27288, 27289, 7, 89, 2, 2, 27289, 4022, 3, 2, 2, 2, 27290, 27291, 7, 87, 2, 2, 27291, 27292, 7, 80, 2, 2, 27292, 27293, 7, 80, 2, 2, 27293, 27294, 7, 71, 2, 2, 27294, 27295, 7, 85, 2, 2, 27295, 27296, 7, 86, 2, 2, 27296, 4024, 3, 2, 2, 2, 27297, 27298, 7, 87, 2, 2, 27298, 27299, 7, 80, 2, 2, 27299, 27300, 7, 82, 2, 2, 27300, 27301, 7, 67, 2, 2, 27301, 27302, 7, 69, 2, 2, 27302, 27303, 7, 77, 2, 2, 27303, 27304, 7, 71, 2, 2, 27304, 27305, 7, 70, 2, 2, 27305, 4026, 3, 2, 2, 2, 27306, 27307, 7, 87, 2, 2, 27307, 27308, 7, 80, 2, 2, 27308, 27309, 7, 82, 2, 2, 27309, 27310, 7, 75, 2, 2, 27310, 27311, 7, 88, 2, 2, 27311, 27312, 7, 81, 2, 2, 27312, 27313, 7, 86, 2, 2, 27313, 4028, 3, 2, 2, 2, 27314, 27315, 7, 87, 2, 2, 27315, 27316, 7, 80, 2, 2, 27316, 27317, 7, 82, 2, 2, 27317, 27318, 7, 78, 2, 2, 27318, 27319, 7, 87, 2, 2, 27319, 27320, 7, 73, 2, 2, 27320, 4030, 3, 2, 2, 2, 27321, 27322, 7, 87, 2, 2, 27322, 27323, 7, 80, 2, 2, 27323, 27324, 7, 82, 2, 2, 27324, 27325, 7, 84, 2, 2, 27325, 27326, 7, 81, 2, 2, 27326, 27327, 7, 86, 2, 2, 27327, 27328, 7, 71, 2, 2, 27328, 27329, 7, 69, 2, 2, 27329, 27330, 7, 86, 2, 2, 27330, 27331, 7, 71, 2, 2, 27331, 27332, 7, 70, 2, 2, 27332, 4032, 3, 2, 2, 2, 27333, 27334, 7, 87, 2, 2, 27334, 27335, 7, 80, 2, 2, 27335, 27336, 7, 83, 2, 2, 27336, 27337, 7, 87, 2, 2, 27337, 27338, 7, 75, 2, 2, 27338, 27339, 7, 71, 2, 2, 27339, 27340, 7, 85, 2, 2, 27340, 27341, 7, 69, 2, 2, 27341, 27342, 7, 71, 2, 2, 27342, 4034, 3, 2, 2, 2, 27343, 27344, 7, 87, 2, 2, 27344, 27345, 7, 80, 2, 2, 27345, 27346, 7, 84, 2, 2, 27346, 27347, 7, 71, 2, 2, 27347, 27348, 7, 69, 2, 2, 27348, 27349, 7, 81, 2, 2, 27349, 27350, 7, 88, 2, 2, 27350, 27351, 7, 71, 2, 2, 27351, 27352, 7, 84, 2, 2, 27352, 27353, 7, 67, 2, 2, 27353, 27354, 7, 68, 2, 2, 27354, 27355, 7, 78, 2, 2, 27355, 27356, 7, 71, 2, 2, 27356, 4036, 3, 2, 2, 2, 27357, 27358, 7, 87, 2, 2, 27358, 27359, 7, 80, 2, 2, 27359, 27360, 7, 84, 2, 2, 27360, 27361, 7, 71, 2, 2, 27361, 27362, 7, 85, 2, 2, 27362, 27363, 7, 86, 2, 2, 27363, 27364, 7, 84, 2, 2, 27364, 27365, 7, 75, 2, 2, 27365, 27366, 7, 69, 2, 2, 27366, 27367, 7, 86, 2, 2, 27367, 27368, 7, 71, 2, 2, 27368, 27369, 7, 70, 2, 2, 27369, 4038, 3, 2, 2, 2, 27370, 27371, 7, 87, 2, 2, 27371, 27372, 7, 80, 2, 2, 27372, 27373, 7, 85, 2, 2, 27373, 27374, 7, 87, 2, 2, 27374, 27375, 7, 68, 2, 2, 27375, 27376, 7, 85, 2, 2, 27376, 27377, 7, 69, 2, 2, 27377, 27378, 7, 84, 2, 2, 27378, 27379, 7, 75, 2, 2, 27379, 27380, 7, 68, 2, 2, 27380, 27381, 7, 71, 2, 2, 27381, 4040, 3, 2, 2, 2, 27382, 27383, 7, 87, 2, 2, 27383, 27384, 7, 80, 2, 2, 27384, 27385, 7, 86, 2, 2, 27385, 27386, 7, 75, 2, 2, 27386, 27387, 7, 78, 2, 2, 27387, 4042, 3, 2, 2, 2, 27388, 27389, 7, 87, 2, 2, 27389, 27390, 7, 80, 2, 2, 27390, 27391, 7, 87, 2, 2, 27391, 27392, 7, 85, 2, 2, 27392, 27393, 7, 67, 2, 2, 27393, 27394, 7, 68, 2, 2, 27394, 27395, 7, 78, 2, 2, 27395, 27396, 7, 71, 2, 2, 27396, 4044, 3, 2, 2, 2, 27397, 27398, 7, 87, 2, 2, 27398, 27399, 7, 80, 2, 2, 27399, 27400, 7, 87, 2, 2, 27400, 27401, 7, 85, 2, 2, 27401, 27402, 7, 71, 2, 2, 27402, 27403, 7, 70, 2, 2, 27403, 4046, 3, 2, 2, 2, 27404, 27405, 7, 87, 2, 2, 27405, 27406, 7, 82, 2, 2, 27406, 27407, 7, 70, 2, 2, 27407, 27408, 7, 67, 2, 2, 27408, 27409, 7, 86, 2, 2, 27409, 27410, 7, 67, 2, 2, 27410, 27411, 7, 68, 2, 2, 27411, 27412, 7, 78, 2, 2, 27412, 27413, 7, 71, 2, 2, 27413, 4048, 3, 2, 2, 2, 27414, 27415, 7, 87, 2, 2, 27415, 27416, 7, 82, 2, 2, 27416, 27417, 7, 70, 2, 2, 27417, 27418, 7, 67, 2, 2, 27418, 27419, 7, 86, 2, 2, 27419, 27420, 7, 71, 2, 2, 27420, 27421, 7, 70, 2, 2, 27421, 4050, 3, 2, 2, 2, 27422, 27423, 7, 87, 2, 2, 27423, 27424, 7, 82, 2, 2, 27424, 27425, 7, 70, 2, 2, 27425, 27426, 7, 67, 2, 2, 27426, 27427, 7, 86, 2, 2, 27427, 27428, 7, 71, 2, 2, 27428, 4052, 3, 2, 2, 2, 27429, 27430, 7, 87, 2, 2, 27430, 27431, 7, 82, 2, 2, 27431, 27432, 7, 70, 2, 2, 27432, 27433, 7, 67, 2, 2, 27433, 27434, 7, 86, 2, 2, 27434, 27435, 7, 71, 2, 2, 27435, 27436, 7, 90, 2, 2, 27436, 27437, 7, 79, 2, 2, 27437, 27438, 7, 78, 2, 2, 27438, 4054, 3, 2, 2, 2, 27439, 27440, 7, 87, 2, 2, 27440, 27441, 7, 82, 2, 2, 27441, 27442, 7, 70, 2, 2, 27442, 27443, 7, 97, 2, 2, 27443, 27444, 7, 75, 2, 2, 27444, 27445, 7, 80, 2, 2, 27445, 27446, 7, 70, 2, 2, 27446, 27447, 7, 71, 2, 2, 27447, 27448, 7, 90, 2, 2, 27448, 27449, 7, 71, 2, 2, 27449, 27450, 7, 85, 2, 2, 27450, 4056, 3, 2, 2, 2, 27451, 27452, 7, 87, 2, 2, 27452, 27453, 7, 82, 2, 2, 27453, 27454, 7, 70, 2, 2, 27454, 27455, 7, 97, 2, 2, 27455, 27456, 7, 76, 2, 2, 27456, 27457, 7, 81, 2, 2, 27457, 27458, 7, 75, 2, 2, 27458, 27459, 7, 80, 2, 2, 27459, 27460, 7, 75, 2, 2, 27460, 27461, 7, 80, 2, 2, 27461, 27462, 7, 70, 2, 2, 27462, 27463, 7, 71, 2, 2, 27463, 27464, 7, 90, 2, 2, 27464, 4058, 3, 2, 2, 2, 27465, 27466, 7, 87, 2, 2, 27466, 27467, 7, 82, 2, 2, 27467, 27468, 7, 73, 2, 2, 27468, 27469, 7, 84, 2, 2, 27469, 27470, 7, 67, 2, 2, 27470, 27471, 7, 70, 2, 2, 27471, 27472, 7, 71, 2, 2, 27472, 4060, 3, 2, 2, 2, 27473, 27474, 7, 87, 2, 2, 27474, 27475, 7, 82, 2, 2, 27475, 27476, 7, 82, 2, 2, 27476, 27477, 7, 71, 2, 2, 27477, 27478, 7, 84, 2, 2, 27478, 4062, 3, 2, 2, 2, 27479, 27480, 7, 87, 2, 2, 27480, 27481, 7, 82, 2, 2, 27481, 27482, 7, 85, 2, 2, 27482, 27483, 7, 71, 2, 2, 27483, 27484, 7, 84, 2, 2, 27484, 27485, 7, 86, 2, 2, 27485, 4064, 3, 2, 2, 2, 27486, 27487, 7, 87, 2, 2, 27487, 27488, 7, 84, 2, 2, 27488, 27489, 7, 81, 2, 2, 27489, 27490, 7, 89, 2, 2, 27490, 27491, 7, 75, 2, 2, 27491, 27492, 7, 70, 2, 2, 27492, 4066, 3, 2, 2, 2, 27493, 27494, 7, 87, 2, 2, 27494, 27495, 7, 85, 2, 2, 27495, 27496, 7, 67, 2, 2, 27496, 27497, 7, 68, 2, 2, 27497, 27498, 7, 78, 2, 2, 27498, 27499, 7, 71, 2, 2, 27499, 4068, 3, 2, 2, 2, 27500, 27501, 7, 87, 2, 2, 27501, 27502, 7, 85, 2, 2, 27502, 27503, 7, 67, 2, 2, 27503, 27504, 7, 73, 2, 2, 27504, 27505, 7, 71, 2, 2, 27505, 4070, 3, 2, 2, 2, 27506, 27507, 7, 87, 2, 2, 27507, 27508, 7, 85, 2, 2, 27508, 27509, 7, 71, 2, 2, 27509, 27510, 7, 97, 2, 2, 27510, 27511, 7, 67, 2, 2, 27511, 27512, 7, 80, 2, 2, 27512, 27513, 7, 86, 2, 2, 27513, 27514, 7, 75, 2, 2, 27514, 4072, 3, 2, 2, 2, 27515, 27516, 7, 87, 2, 2, 27516, 27517, 7, 85, 2, 2, 27517, 27518, 7, 71, 2, 2, 27518, 27519, 7, 97, 2, 2, 27519, 27520, 7, 69, 2, 2, 27520, 27521, 7, 81, 2, 2, 27521, 27522, 7, 80, 2, 2, 27522, 27523, 7, 69, 2, 2, 27523, 27524, 7, 67, 2, 2, 27524, 27525, 7, 86, 2, 2, 27525, 4074, 3, 2, 2, 2, 27526, 27527, 7, 87, 2, 2, 27527, 27528, 7, 85, 2, 2, 27528, 27529, 7, 71, 2, 2, 27529, 27530, 7, 97, 2, 2, 27530, 27531, 7, 69, 2, 2, 27531, 27532, 7, 87, 2, 2, 27532, 27533, 7, 68, 2, 2, 27533, 27534, 7, 71, 2, 2, 27534, 4076, 3, 2, 2, 2, 27535, 27536, 7, 87, 2, 2, 27536, 27537, 7, 85, 2, 2, 27537, 27538, 7, 71, 2, 2, 27538, 27539, 7, 97, 2, 2, 27539, 27540, 7, 74, 2, 2, 27540, 27541, 7, 67, 2, 2, 27541, 27542, 7, 85, 2, 2, 27542, 27543, 7, 74, 2, 2, 27543, 27544, 7, 97, 2, 2, 27544, 27545, 7, 67, 2, 2, 27545, 27546, 7, 73, 2, 2, 27546, 27547, 7, 73, 2, 2, 27547, 27548, 7, 84, 2, 2, 27548, 27549, 7, 71, 2, 2, 27549, 27550, 7, 73, 2, 2, 27550, 27551, 7, 67, 2, 2, 27551, 27552, 7, 86, 2, 2, 27552, 27553, 7, 75, 2, 2, 27553, 27554, 7, 81, 2, 2, 27554, 27555, 7, 80, 2, 2, 27555, 4078, 3, 2, 2, 2, 27556, 27557, 7, 87, 2, 2, 27557, 27558, 7, 85, 2, 2, 27558, 27559, 7, 71, 2, 2, 27559, 27560, 7, 97, 2, 2, 27560, 27561, 7, 74, 2, 2, 27561, 27562, 7, 67, 2, 2, 27562, 27563, 7, 85, 2, 2, 27563, 27564, 7, 74, 2, 2, 27564, 27565, 7, 97, 2, 2, 27565, 27566, 7, 73, 2, 2, 27566, 27567, 7, 68, 2, 2, 27567, 27568, 7, 91, 2, 2, 27568, 27569, 7, 97, 2, 2, 27569, 27570, 7, 72, 2, 2, 27570, 27571, 7, 81, 2, 2, 27571, 27572, 7, 84, 2, 2, 27572, 27573, 7, 97, 2, 2, 27573, 27574, 7, 82, 2, 2, 27574, 27575, 7, 87, 2, 2, 27575, 27576, 7, 85, 2, 2, 27576, 27577, 7, 74, 2, 2, 27577, 27578, 7, 70, 2, 2, 27578, 27579, 7, 81, 2, 2, 27579, 27580, 7, 89, 2, 2, 27580, 27581, 7, 80, 2, 2, 27581, 4080, 3, 2, 2, 2, 27582, 27583, 7, 87, 2, 2, 27583, 27584, 7, 85, 2, 2, 27584, 27585, 7, 71, 2, 2, 27585, 27586, 7, 97, 2, 2, 27586, 27587, 7, 74, 2, 2, 27587, 27588, 7, 67, 2, 2, 27588, 27589, 7, 85, 2, 2, 27589, 27590, 7, 74, 2, 2, 27590, 4082, 3, 2, 2, 2, 27591, 27592, 7, 87, 2, 2, 27592, 27593, 7, 85, 2, 2, 27593, 27594, 7, 71, 2, 2, 27594, 27595, 7, 97, 2, 2, 27595, 27596, 7, 74, 2, 2, 27596, 27597, 7, 75, 2, 2, 27597, 27598, 7, 70, 2, 2, 27598, 27599, 7, 70, 2, 2, 27599, 27600, 7, 71, 2, 2, 27600, 27601, 7, 80, 2, 2, 27601, 27602, 7, 97, 2, 2, 27602, 27603, 7, 82, 2, 2, 27603, 27604, 7, 67, 2, 2, 27604, 27605, 7, 84, 2, 2, 27605, 27606, 7, 86, 2, 2, 27606, 27607, 7, 75, 2, 2, 27607, 27608, 7, 86, 2, 2, 27608, 27609, 7, 75, 2, 2, 27609, 27610, 7, 81, 2, 2, 27610, 27611, 7, 80, 2, 2, 27611, 27612, 7, 85, 2, 2, 27612, 4084, 3, 2, 2, 2, 27613, 27614, 7, 87, 2, 2, 27614, 27615, 7, 85, 2, 2, 27615, 27616, 7, 71, 2, 2, 27616, 27617, 7, 97, 2, 2, 27617, 27618, 7, 75, 2, 2, 27618, 27619, 7, 80, 2, 2, 27619, 27620, 7, 88, 2, 2, 27620, 27621, 7, 75, 2, 2, 27621, 27622, 7, 85, 2, 2, 27622, 27623, 7, 75, 2, 2, 27623, 27624, 7, 68, 2, 2, 27624, 27625, 7, 78, 2, 2, 27625, 27626, 7, 71, 2, 2, 27626, 27627, 7, 97, 2, 2, 27627, 27628, 7, 75, 2, 2, 27628, 27629, 7, 80, 2, 2, 27629, 27630, 7, 70, 2, 2, 27630, 27631, 7, 71, 2, 2, 27631, 27632, 7, 90, 2, 2, 27632, 27633, 7, 71, 2, 2, 27633, 27634, 7, 85, 2, 2, 27634, 4086, 3, 2, 2, 2, 27635, 27636, 7, 87, 2, 2, 27636, 27637, 7, 85, 2, 2, 27637, 27638, 7, 71, 2, 2, 27638, 27639, 7, 97, 2, 2, 27639, 27640, 7, 79, 2, 2, 27640, 27641, 7, 71, 2, 2, 27641, 27642, 7, 84, 2, 2, 27642, 27643, 7, 73, 2, 2, 27643, 27644, 7, 71, 2, 2, 27644, 27645, 7, 97, 2, 2, 27645, 27646, 7, 69, 2, 2, 27646, 27647, 7, 67, 2, 2, 27647, 27648, 7, 84, 2, 2, 27648, 27649, 7, 86, 2, 2, 27649, 27650, 7, 71, 2, 2, 27650, 27651, 7, 85, 2, 2, 27651, 27652, 7, 75, 2, 2, 27652, 27653, 7, 67, 2, 2, 27653, 27654, 7, 80, 2, 2, 27654, 4088, 3, 2, 2, 2, 27655, 27656, 7, 87, 2, 2, 27656, 27657, 7, 85, 2, 2, 27657, 27658, 7, 71, 2, 2, 27658, 27659, 7, 97, 2, 2, 27659, 27660, 7, 79, 2, 2, 27660, 27661, 7, 71, 2, 2, 27661, 27662, 7, 84, 2, 2, 27662, 27663, 7, 73, 2, 2, 27663, 27664, 7, 71, 2, 2, 27664, 4090, 3, 2, 2, 2, 27665, 27666, 7, 87, 2, 2, 27666, 27667, 7, 85, 2, 2, 27667, 27668, 7, 71, 2, 2, 27668, 27669, 7, 97, 2, 2, 27669, 27670, 7, 80, 2, 2, 27670, 27671, 7, 78, 2, 2, 27671, 4092, 3, 2, 2, 2, 27672, 27673, 7, 87, 2, 2, 27673, 27674, 7, 85, 2, 2, 27674, 27675, 7, 71, 2, 2, 27675, 27676, 7, 97, 2, 2, 27676, 27677, 7, 80, 2, 2, 27677, 27678, 7, 78, 2, 2, 27678, 27679, 7, 97, 2, 2, 27679, 27680, 7, 89, 2, 2, 27680, 27681, 7, 75, 2, 2, 27681, 27682, 7, 86, 2, 2, 27682, 27683, 7, 74, 2, 2, 27683, 27684, 7, 97, 2, 2, 27684, 27685, 7, 75, 2, 2, 27685, 27686, 7, 80, 2, 2, 27686, 27687, 7, 70, 2, 2, 27687, 27688, 7, 71, 2, 2, 27688, 27689, 7, 90, 2, 2, 27689, 4094, 3, 2, 2, 2, 27690, 27691, 7, 87, 2, 2, 27691, 27692, 7, 85, 2, 2, 27692, 27693, 7, 71, 2, 2, 27693, 27694, 7, 97, 2, 2, 27694, 27695, 7, 82, 2, 2, 27695, 27696, 7, 84, 2, 2, 27696, 27697, 7, 75, 2, 2, 27697, 27698, 7, 88, 2, 2, 27698, 27699, 7, 67, 2, 2, 27699, 27700, 7, 86, 2, 2, 27700, 27701, 7, 71, 2, 2, 27701, 27702, 7, 97, 2, 2, 27702, 27703, 7, 81, 2, 2, 27703, 27704, 7, 87, 2, 2, 27704, 27705, 7, 86, 2, 2, 27705, 27706, 7, 78, 2, 2, 27706, 27707, 7, 75, 2, 2, 27707, 27708, 7, 80, 2, 2, 27708, 27709, 7, 71, 2, 2, 27709, 27710, 7, 85, 2, 2, 27710, 4096, 3, 2, 2, 2, 27711, 27712, 7, 87, 2, 2, 27712, 27713, 7, 85, 2, 2, 27713, 27714, 7, 71, 2, 2, 27714, 27715, 7, 84, 2, 2, 27715, 27716, 7, 97, 2, 2, 27716, 27717, 7, 70, 2, 2, 27717, 27718, 7, 67, 2, 2, 27718, 27719, 7, 86, 2, 2, 27719, 27720, 7, 67, 2, 2, 27720, 4098, 3, 2, 2, 2, 27721, 27722, 7, 87, 2, 2, 27722, 27723, 7, 85, 2, 2, 27723, 27724, 7, 71, 2, 2, 27724, 27725, 7, 84, 2, 2, 27725, 27726, 7, 97, 2, 2, 27726, 27727, 7, 70, 2, 2, 27727, 27728, 7, 71, 2, 2, 27728, 27729, 7, 72, 2, 2, 27729, 27730, 7, 75, 2, 2, 27730, 27731, 7, 80, 2, 2, 27731, 27732, 7, 71, 2, 2, 27732, 27733, 7, 70, 2, 2, 27733, 4100, 3, 2, 2, 2, 27734, 27735, 7, 87, 2, 2, 27735, 27736, 7, 85, 2, 2, 27736, 27737, 7, 71, 2, 2, 27737, 27738, 7, 84, 2, 2, 27738, 27739, 7, 71, 2, 2, 27739, 27740, 7, 80, 2, 2, 27740, 27741, 7, 88, 2, 2, 27741, 4102, 3, 2, 2, 2, 27742, 27743, 7, 87, 2, 2, 27743, 27744, 7, 85, 2, 2, 27744, 27745, 7, 71, 2, 2, 27745, 27746, 7, 84, 2, 2, 27746, 27747, 7, 73, 2, 2, 27747, 27748, 7, 84, 2, 2, 27748, 27749, 7, 81, 2, 2, 27749, 27750, 7, 87, 2, 2, 27750, 27751, 7, 82, 2, 2, 27751, 4104, 3, 2, 2, 2, 27752, 27753, 7, 87, 2, 2, 27753, 27754, 7, 85, 2, 2, 27754, 27755, 7, 71, 2, 2, 27755, 27756, 7, 84, 2, 2, 27756, 27757, 7, 97, 2, 2, 27757, 27758, 7, 84, 2, 2, 27758, 27759, 7, 71, 2, 2, 27759, 27760, 7, 69, 2, 2, 27760, 27761, 7, 91, 2, 2, 27761, 27762, 7, 69, 2, 2, 27762, 27763, 7, 78, 2, 2, 27763, 27764, 7, 71, 2, 2, 27764, 27765, 7, 68, 2, 2, 27765, 27766, 7, 75, 2, 2, 27766, 27767, 7, 80, 2, 2, 27767, 4106, 3, 2, 2, 2, 27768, 27769, 7, 87, 2, 2, 27769, 27770, 7, 85, 2, 2, 27770, 27771, 7, 71, 2, 2, 27771, 27772, 7, 84, 2, 2, 27772, 27773, 7, 85, 2, 2, 27773, 4108, 3, 2, 2, 2, 27774, 27775, 7, 87, 2, 2, 27775, 27776, 7, 85, 2, 2, 27776, 27777, 7, 71, 2, 2, 27777, 27778, 7, 84, 2, 2, 27778, 27779, 7, 97, 2, 2, 27779, 27780, 7, 86, 2, 2, 27780, 27781, 7, 67, 2, 2, 27781, 27782, 7, 68, 2, 2, 27782, 27783, 7, 78, 2, 2, 27783, 27784, 7, 71, 2, 2, 27784, 27785, 7, 85, 2, 2, 27785, 27786, 7, 82, 2, 2, 27786, 27787, 7, 67, 2, 2, 27787, 27788, 7, 69, 2, 2, 27788, 27789, 7, 71, 2, 2, 27789, 27790, 7, 85, 2, 2, 27790, 4110, 3, 2, 2, 2, 27791, 27792, 7, 87, 2, 2, 27792, 27793, 7, 85, 2, 2, 27793, 27794, 7, 71, 2, 2, 27794, 27795, 7, 84, 2, 2, 27795, 4112, 3, 2, 2, 2, 27796, 27797, 7, 87, 2, 2, 27797, 27798, 7, 85, 2, 2, 27798, 27799, 7, 71, 2, 2, 27799, 27800, 7, 97, 2, 2, 27800, 27801, 7, 85, 2, 2, 27801, 27802, 7, 71, 2, 2, 27802, 27803, 7, 79, 2, 2, 27803, 27804, 7, 75, 2, 2, 27804, 4114, 3, 2, 2, 2, 27805, 27806, 7, 87, 2, 2, 27806, 27807, 7, 85, 2, 2, 27807, 27808, 7, 71, 2, 2, 27808, 27809, 7, 97, 2, 2, 27809, 27810, 7, 85, 2, 2, 27810, 27811, 7, 86, 2, 2, 27811, 27812, 7, 81, 2, 2, 27812, 27813, 7, 84, 2, 2, 27813, 27814, 7, 71, 2, 2, 27814, 27815, 7, 70, 2, 2, 27815, 27816, 7, 97, 2, 2, 27816, 27817, 7, 81, 2, 2, 27817, 27818, 7, 87, 2, 2, 27818, 27819, 7, 86, 2, 2, 27819, 27820, 7, 78, 2, 2, 27820, 27821, 7, 75, 2, 2, 27821, 27822, 7, 80, 2, 2, 27822, 27823, 7, 71, 2, 2, 27823, 27824, 7, 85, 2, 2, 27824, 4116, 3, 2, 2, 2, 27825, 27826, 7, 87, 2, 2, 27826, 27827, 7, 85, 2, 2, 27827, 27828, 7, 71, 2, 2, 27828, 27829, 7, 97, 2, 2, 27829, 27830, 7, 86, 2, 2, 27830, 27831, 7, 86, 2, 2, 27831, 27832, 7, 86, 2, 2, 27832, 27833, 7, 97, 2, 2, 27833, 27834, 7, 72, 2, 2, 27834, 27835, 7, 81, 2, 2, 27835, 27836, 7, 84, 2, 2, 27836, 27837, 7, 97, 2, 2, 27837, 27838, 7, 73, 2, 2, 27838, 27839, 7, 85, 2, 2, 27839, 27840, 7, 71, 2, 2, 27840, 27841, 7, 86, 2, 2, 27841, 27842, 7, 85, 2, 2, 27842, 4118, 3, 2, 2, 2, 27843, 27844, 7, 87, 2, 2, 27844, 27845, 7, 85, 2, 2, 27845, 27846, 7, 71, 2, 2, 27846, 4120, 3, 2, 2, 2, 27847, 27848, 7, 87, 2, 2, 27848, 27849, 7, 85, 2, 2, 27849, 27850, 7, 71, 2, 2, 27850, 27851, 7, 97, 2, 2, 27851, 27852, 7, 88, 2, 2, 27852, 27853, 7, 71, 2, 2, 27853, 27854, 7, 69, 2, 2, 27854, 27855, 7, 86, 2, 2, 27855, 27856, 7, 81, 2, 2, 27856, 27857, 7, 84, 2, 2, 27857, 27858, 7, 97, 2, 2, 27858, 27859, 7, 67, 2, 2, 27859, 27860, 7, 73, 2, 2, 27860, 27861, 7, 73, 2, 2, 27861, 27862, 7, 84, 2, 2, 27862, 27863, 7, 71, 2, 2, 27863, 27864, 7, 73, 2, 2, 27864, 27865, 7, 67, 2, 2, 27865, 27866, 7, 86, 2, 2, 27866, 27867, 7, 75, 2, 2, 27867, 27868, 7, 81, 2, 2, 27868, 27869, 7, 80, 2, 2, 27869, 4122, 3, 2, 2, 2, 27870, 27871, 7, 87, 2, 2, 27871, 27872, 7, 85, 2, 2, 27872, 27873, 7, 71, 2, 2, 27873, 27874, 7, 97, 2, 2, 27874, 27875, 7, 89, 2, 2, 27875, 27876, 7, 71, 2, 2, 27876, 27877, 7, 67, 2, 2, 27877, 27878, 7, 77, 2, 2, 27878, 27879, 7, 97, 2, 2, 27879, 27880, 7, 80, 2, 2, 27880, 27881, 7, 67, 2, 2, 27881, 27882, 7, 79, 2, 2, 27882, 27883, 7, 71, 2, 2, 27883, 27884, 7, 97, 2, 2, 27884, 27885, 7, 84, 2, 2, 27885, 27886, 7, 71, 2, 2, 27886, 27887, 7, 85, 2, 2, 27887, 27888, 7, 78, 2, 2, 27888, 4124, 3, 2, 2, 2, 27889, 27890, 7, 87, 2, 2, 27890, 27891, 7, 85, 2, 2, 27891, 27892, 7, 75, 2, 2, 27892, 27893, 7, 80, 2, 2, 27893, 27894, 7, 73, 2, 2, 27894, 27895, 7, 97, 2, 2, 27895, 27896, 7, 80, 2, 2, 27896, 27897, 7, 81, 2, 2, 27897, 27898, 7, 97, 2, 2, 27898, 27899, 7, 71, 2, 2, 27899, 27900, 7, 90, 2, 2, 27900, 27901, 7, 82, 2, 2, 27901, 27902, 7, 67, 2, 2, 27902, 27903, 7, 80, 2, 2, 27903, 27904, 7, 70, 2, 2, 27904, 4126, 3, 2, 2, 2, 27905, 27906, 7, 87, 2, 2, 27906, 27907, 7, 85, 2, 2, 27907, 27908, 7, 75, 2, 2, 27908, 27909, 7, 80, 2, 2, 27909, 27910, 7, 73, 2, 2, 27910, 4128, 3, 2, 2, 2, 27911, 27912, 7, 87, 2, 2, 27912, 27913, 7, 86, 2, 2, 27913, 27914, 7, 72, 2, 2, 27914, 27915, 7, 51, 2, 2, 27915, 27916, 7, 56, 2, 2, 27916, 27917, 7, 68, 2, 2, 27917, 27918, 7, 71, 2, 2, 27918, 4130, 3, 2, 2, 2, 27919, 27920, 7, 87, 2, 2, 27920, 27921, 7, 86, 2, 2, 27921, 27922, 7, 72, 2, 2, 27922, 27923, 7, 51, 2, 2, 27923, 27924, 7, 56, 2, 2, 27924, 27925, 7, 78, 2, 2, 27925, 27926, 7, 71, 2, 2, 27926, 4132, 3, 2, 2, 2, 27927, 27928, 7, 87, 2, 2, 27928, 27929, 7, 86, 2, 2, 27929, 27930, 7, 72, 2, 2, 27930, 27931, 7, 53, 2, 2, 27931, 27932, 7, 52, 2, 2, 27932, 4134, 3, 2, 2, 2, 27933, 27934, 7, 87, 2, 2, 27934, 27935, 7, 86, 2, 2, 27935, 27936, 7, 72, 2, 2, 27936, 27937, 7, 58, 2, 2, 27937, 4136, 3, 2, 2, 2, 27938, 27939, 7, 88, 2, 2, 27939, 27940, 7, 51, 2, 2, 27940, 4138, 3, 2, 2, 2, 27941, 27942, 7, 88, 2, 2, 27942, 27943, 7, 52, 2, 2, 27943, 4140, 3, 2, 2, 2, 27944, 27945, 7, 88, 2, 2, 27945, 27946, 7, 67, 2, 2, 27946, 27947, 7, 78, 2, 2, 27947, 27948, 7, 75, 2, 2, 27948, 27949, 7, 70, 2, 2, 27949, 27950, 7, 67, 2, 2, 27950, 27951, 7, 86, 2, 2, 27951, 27952, 7, 71, 2, 2, 27952, 4142, 3, 2, 2, 2, 27953, 27954, 7, 88, 2, 2, 27954, 27955, 7, 67, 2, 2, 27955, 27956, 7, 78, 2, 2, 27956, 27957, 7, 75, 2, 2, 27957, 27958, 7, 70, 2, 2, 27958, 27959, 7, 67, 2, 2, 27959, 27960, 7, 86, 2, 2, 27960, 27961, 7, 75, 2, 2, 27961, 27962, 7, 81, 2, 2, 27962, 27963, 7, 80, 2, 2, 27963, 4144, 3, 2, 2, 2, 27964, 27965, 7, 88, 2, 2, 27965, 27966, 7, 67, 2, 2, 27966, 27967, 7, 78, 2, 2, 27967, 27968, 7, 75, 2, 2, 27968, 27969, 7, 70, 2, 2, 27969, 27970, 7, 97, 2, 2, 27970, 27971, 7, 86, 2, 2, 27971, 27972, 7, 75, 2, 2, 27972, 27973, 7, 79, 2, 2, 27973, 27974, 7, 71, 2, 2, 27974, 27975, 7, 97, 2, 2, 27975, 27976, 7, 71, 2, 2, 27976, 27977, 7, 80, 2, 2, 27977, 27978, 7, 70, 2, 2, 27978, 4146, 3, 2, 2, 2, 27979, 27980, 7, 88, 2, 2, 27980, 27981, 7, 67, 2, 2, 27981, 27982, 7, 78, 2, 2, 27982, 27983, 7, 87, 2, 2, 27983, 27984, 7, 71, 2, 2, 27984, 27985, 7, 85, 2, 2, 27985, 4148, 3, 2, 2, 2, 27986, 27987, 7, 88, 2, 2, 27987, 27988, 7, 67, 2, 2, 27988, 27989, 7, 78, 2, 2, 27989, 27990, 7, 87, 2, 2, 27990, 27991, 7, 71, 2, 2, 27991, 4150, 3, 2, 2, 2, 27992, 27993, 7, 88, 2, 2, 27993, 27994, 7, 67, 2, 2, 27994, 27995, 7, 84, 2, 2, 27995, 27996, 7, 69, 2, 2, 27996, 27997, 7, 74, 2, 2, 27997, 27998, 7, 67, 2, 2, 27998, 27999, 7, 84, 2, 2, 27999, 28000, 7, 52, 2, 2, 28000, 4152, 3, 2, 2, 2, 28001, 28002, 7, 88, 2, 2, 28002, 28003, 7, 67, 2, 2, 28003, 28004, 7, 84, 2, 2, 28004, 28005, 7, 69, 2, 2, 28005, 28006, 7, 74, 2, 2, 28006, 28007, 7, 67, 2, 2, 28007, 28008, 7, 84, 2, 2, 28008, 4154, 3, 2, 2, 2, 28009, 28010, 7, 88, 2, 2, 28010, 28011, 7, 67, 2, 2, 28011, 28012, 7, 84, 2, 2, 28012, 28013, 7, 75, 2, 2, 28013, 28014, 7, 67, 2, 2, 28014, 28015, 7, 68, 2, 2, 28015, 28016, 7, 78, 2, 2, 28016, 28017, 7, 71, 2, 2, 28017, 4156, 3, 2, 2, 2, 28018, 28019, 7, 88, 2, 2, 28019, 28020, 7, 67, 2, 2, 28020, 28021, 7, 84, 2, 2, 28021, 28022, 7, 97, 2, 2, 28022, 28023, 7, 82, 2, 2, 28023, 28024, 7, 81, 2, 2, 28024, 28025, 7, 82, 2, 2, 28025, 4158, 3, 2, 2, 2, 28026, 28027, 7, 88, 2, 2, 28027, 28028, 7, 67, 2, 2, 28028, 28029, 7, 84, 2, 2, 28029, 28030, 7, 84, 2, 2, 28030, 28031, 7, 67, 2, 2, 28031, 28032, 7, 91, 2, 2, 28032, 28033, 7, 85, 2, 2, 28033, 4160, 3, 2, 2, 2, 28034, 28035, 7, 88, 2, 2, 28035, 28036, 7, 67, 2, 2, 28036, 28037, 7, 84, 2, 2, 28037, 28038, 7, 84, 2, 2, 28038, 28039, 7, 67, 2, 2, 28039, 28040, 7, 91, 2, 2, 28040, 4162, 3, 2, 2, 2, 28041, 28042, 7, 88, 2, 2, 28042, 28043, 7, 67, 2, 2, 28043, 28044, 7, 84, 2, 2, 28044, 28045, 7, 97, 2, 2, 28045, 28046, 7, 85, 2, 2, 28046, 28047, 7, 67, 2, 2, 28047, 28048, 7, 79, 2, 2, 28048, 28049, 7, 82, 2, 2, 28049, 4164, 3, 2, 2, 2, 28050, 28051, 7, 88, 2, 2, 28051, 28052, 7, 67, 2, 2, 28052, 28053, 7, 84, 2, 2, 28053, 28054, 7, 91, 2, 2, 28054, 28055, 7, 75, 2, 2, 28055, 28056, 7, 80, 2, 2, 28056, 28057, 7, 73, 2, 2, 28057, 4166, 3, 2, 2, 2, 28058, 28059, 7, 88, 2, 2, 28059, 28060, 7, 71, 2, 2, 28060, 28061, 7, 69, 2, 2, 28061, 28062, 7, 86, 2, 2, 28062, 28063, 7, 81, 2, 2, 28063, 28064, 7, 84, 2, 2, 28064, 28065, 7, 97, 2, 2, 28065, 28066, 7, 84, 2, 2, 28066, 28067, 7, 71, 2, 2, 28067, 28068, 7, 67, 2, 2, 28068, 28069, 7, 70, 2, 2, 28069, 28070, 7, 97, 2, 2, 28070, 28071, 7, 86, 2, 2, 28071, 28072, 7, 84, 2, 2, 28072, 28073, 7, 67, 2, 2, 28073, 28074, 7, 69, 2, 2, 28074, 28075, 7, 71, 2, 2, 28075, 4168, 3, 2, 2, 2, 28076, 28077, 7, 88, 2, 2, 28077, 28078, 7, 71, 2, 2, 28078, 28079, 7, 69, 2, 2, 28079, 28080, 7, 86, 2, 2, 28080, 28081, 7, 81, 2, 2, 28081, 28082, 7, 84, 2, 2, 28082, 28083, 7, 97, 2, 2, 28083, 28084, 7, 84, 2, 2, 28084, 28085, 7, 71, 2, 2, 28085, 28086, 7, 67, 2, 2, 28086, 28087, 7, 70, 2, 2, 28087, 4170, 3, 2, 2, 2, 28088, 28089, 7, 88, 2, 2, 28089, 28090, 7, 71, 2, 2, 28090, 28091, 7, 69, 2, 2, 28091, 28092, 7, 86, 2, 2, 28092, 28093, 7, 81, 2, 2, 28093, 28094, 7, 84, 2, 2, 28094, 28095, 7, 97, 2, 2, 28095, 28096, 7, 86, 2, 2, 28096, 28097, 7, 84, 2, 2, 28097, 28098, 7, 67, 2, 2, 28098, 28099, 7, 80, 2, 2, 28099, 28100, 7, 85, 2, 2, 28100, 28101, 7, 72, 2, 2, 28101, 28102, 7, 81, 2, 2, 28102, 28103, 7, 84, 2, 2, 28103, 28104, 7, 79, 2, 2, 28104, 28105, 7, 97, 2, 2, 28105, 28106, 7, 70, 2, 2, 28106, 28107, 7, 75, 2, 2, 28107, 28108, 7, 79, 2, 2, 28108, 28109, 7, 85, 2, 2, 28109, 4172, 3, 2, 2, 2, 28110, 28111, 7, 88, 2, 2, 28111, 28112, 7, 71, 2, 2, 28112, 28113, 7, 69, 2, 2, 28113, 28114, 7, 86, 2, 2, 28114, 28115, 7, 81, 2, 2, 28115, 28116, 7, 84, 2, 2, 28116, 28117, 7, 97, 2, 2, 28117, 28118, 7, 86, 2, 2, 28118, 28119, 7, 84, 2, 2, 28119, 28120, 7, 67, 2, 2, 28120, 28121, 7, 80, 2, 2, 28121, 28122, 7, 85, 2, 2, 28122, 28123, 7, 72, 2, 2, 28123, 28124, 7, 81, 2, 2, 28124, 28125, 7, 84, 2, 2, 28125, 28126, 7, 79, 2, 2, 28126, 28127, 7, 97, 2, 2, 28127, 28128, 7, 72, 2, 2, 28128, 28129, 7, 67, 2, 2, 28129, 28130, 7, 69, 2, 2, 28130, 28131, 7, 86, 2, 2, 28131, 4174, 3, 2, 2, 2, 28132, 28133, 7, 88, 2, 2, 28133, 28134, 7, 71, 2, 2, 28134, 28135, 7, 69, 2, 2, 28135, 28136, 7, 86, 2, 2, 28136, 28137, 7, 81, 2, 2, 28137, 28138, 7, 84, 2, 2, 28138, 28139, 7, 97, 2, 2, 28139, 28140, 7, 86, 2, 2, 28140, 28141, 7, 84, 2, 2, 28141, 28142, 7, 67, 2, 2, 28142, 28143, 7, 80, 2, 2, 28143, 28144, 7, 85, 2, 2, 28144, 28145, 7, 72, 2, 2, 28145, 28146, 7, 81, 2, 2, 28146, 28147, 7, 84, 2, 2, 28147, 28148, 7, 79, 2, 2, 28148, 4176, 3, 2, 2, 2, 28149, 28150, 7, 88, 2, 2, 28150, 28151, 7, 71, 2, 2, 28151, 28152, 7, 84, 2, 2, 28152, 28153, 7, 75, 2, 2, 28153, 28154, 7, 72, 2, 2, 28154, 28155, 7, 75, 2, 2, 28155, 28156, 7, 71, 2, 2, 28156, 28157, 7, 84, 2, 2, 28157, 4178, 3, 2, 2, 2, 28158, 28159, 7, 88, 2, 2, 28159, 28160, 7, 71, 2, 2, 28160, 28161, 7, 84, 2, 2, 28161, 28162, 7, 75, 2, 2, 28162, 28163, 7, 72, 2, 2, 28163, 28164, 7, 91, 2, 2, 28164, 4180, 3, 2, 2, 2, 28165, 28166, 7, 88, 2, 2, 28166, 28167, 7, 71, 2, 2, 28167, 28168, 7, 84, 2, 2, 28168, 28169, 7, 85, 2, 2, 28169, 28170, 7, 75, 2, 2, 28170, 28171, 7, 81, 2, 2, 28171, 28172, 7, 80, 2, 2, 28172, 28173, 7, 75, 2, 2, 28173, 28174, 7, 80, 2, 2, 28174, 28175, 7, 73, 2, 2, 28175, 4182, 3, 2, 2, 2, 28176, 28177, 7, 88, 2, 2, 28177, 28178, 7, 71, 2, 2, 28178, 28179, 7, 84, 2, 2, 28179, 28180, 7, 85, 2, 2, 28180, 28181, 7, 75, 2, 2, 28181, 28182, 7, 81, 2, 2, 28182, 28183, 7, 80, 2, 2, 28183, 28184, 7, 85, 2, 2, 28184, 28185, 7, 97, 2, 2, 28185, 28186, 7, 71, 2, 2, 28186, 28187, 7, 80, 2, 2, 28187, 28188, 7, 70, 2, 2, 28188, 28189, 7, 85, 2, 2, 28189, 28190, 7, 69, 2, 2, 28190, 28191, 7, 80, 2, 2, 28191, 4184, 3, 2, 2, 2, 28192, 28193, 7, 88, 2, 2, 28193, 28194, 7, 71, 2, 2, 28194, 28195, 7, 84, 2, 2, 28195, 28196, 7, 85, 2, 2, 28196, 28197, 7, 75, 2, 2, 28197, 28198, 7, 81, 2, 2, 28198, 28199, 7, 80, 2, 2, 28199, 28200, 7, 85, 2, 2, 28200, 28201, 7, 97, 2, 2, 28201, 28202, 7, 71, 2, 2, 28202, 28203, 7, 80, 2, 2, 28203, 28204, 7, 70, 2, 2, 28204, 28205, 7, 86, 2, 2, 28205, 28206, 7, 75, 2, 2, 28206, 28207, 7, 79, 2, 2, 28207, 28208, 7, 71, 2, 2, 28208, 4186, 3, 2, 2, 2, 28209, 28210, 7, 88, 2, 2, 28210, 28211, 7, 71, 2, 2, 28211, 28212, 7, 84, 2, 2, 28212, 28213, 7, 85, 2, 2, 28213, 28214, 7, 75, 2, 2, 28214, 28215, 7, 81, 2, 2, 28215, 28216, 7, 80, 2, 2, 28216, 28217, 7, 85, 2, 2, 28217, 28218, 7, 97, 2, 2, 28218, 28219, 7, 81, 2, 2, 28219, 28220, 7, 82, 2, 2, 28220, 28221, 7, 71, 2, 2, 28221, 28222, 7, 84, 2, 2, 28222, 28223, 7, 67, 2, 2, 28223, 28224, 7, 86, 2, 2, 28224, 28225, 7, 75, 2, 2, 28225, 28226, 7, 81, 2, 2, 28226, 28227, 7, 80, 2, 2, 28227, 4188, 3, 2, 2, 2, 28228, 28229, 7, 88, 2, 2, 28229, 28230, 7, 71, 2, 2, 28230, 28231, 7, 84, 2, 2, 28231, 28232, 7, 85, 2, 2, 28232, 28233, 7, 75, 2, 2, 28233, 28234, 7, 81, 2, 2, 28234, 28235, 7, 80, 2, 2, 28235, 28236, 7, 85, 2, 2, 28236, 28237, 7, 97, 2, 2, 28237, 28238, 7, 85, 2, 2, 28238, 28239, 7, 86, 2, 2, 28239, 28240, 7, 67, 2, 2, 28240, 28241, 7, 84, 2, 2, 28241, 28242, 7, 86, 2, 2, 28242, 28243, 7, 85, 2, 2, 28243, 28244, 7, 69, 2, 2, 28244, 28245, 7, 80, 2, 2, 28245, 4190, 3, 2, 2, 2, 28246, 28247, 7, 88, 2, 2, 28247, 28248, 7, 71, 2, 2, 28248, 28249, 7, 84, 2, 2, 28249, 28250, 7, 85, 2, 2, 28250, 28251, 7, 75, 2, 2, 28251, 28252, 7, 81, 2, 2, 28252, 28253, 7, 80, 2, 2, 28253, 28254, 7, 85, 2, 2, 28254, 28255, 7, 97, 2, 2, 28255, 28256, 7, 85, 2, 2, 28256, 28257, 7, 86, 2, 2, 28257, 28258, 7, 67, 2, 2, 28258, 28259, 7, 84, 2, 2, 28259, 28260, 7, 86, 2, 2, 28260, 28261, 7, 86, 2, 2, 28261, 28262, 7, 75, 2, 2, 28262, 28263, 7, 79, 2, 2, 28263, 28264, 7, 71, 2, 2, 28264, 4192, 3, 2, 2, 2, 28265, 28266, 7, 88, 2, 2, 28266, 28267, 7, 71, 2, 2, 28267, 28268, 7, 84, 2, 2, 28268, 28269, 7, 85, 2, 2, 28269, 28270, 7, 75, 2, 2, 28270, 28271, 7, 81, 2, 2, 28271, 28272, 7, 80, 2, 2, 28272, 28273, 7, 85, 2, 2, 28273, 4194, 3, 2, 2, 2, 28274, 28275, 7, 88, 2, 2, 28275, 28276, 7, 71, 2, 2, 28276, 28277, 7, 84, 2, 2, 28277, 28278, 7, 85, 2, 2, 28278, 28279, 7, 75, 2, 2, 28279, 28280, 7, 81, 2, 2, 28280, 28281, 7, 80, 2, 2, 28281, 28282, 7, 85, 2, 2, 28282, 28283, 7, 97, 2, 2, 28283, 28284, 7, 90, 2, 2, 28284, 28285, 7, 75, 2, 2, 28285, 28286, 7, 70, 2, 2, 28286, 4196, 3, 2, 2, 2, 28287, 28288, 7, 88, 2, 2, 28288, 28289, 7, 71, 2, 2, 28289, 28290, 7, 84, 2, 2, 28290, 28291, 7, 85, 2, 2, 28291, 28292, 7, 75, 2, 2, 28292, 28293, 7, 81, 2, 2, 28293, 28294, 7, 80, 2, 2, 28294, 4198, 3, 2, 2, 2, 28295, 28296, 7, 88, 2, 2, 28296, 28297, 7, 75, 2, 2, 28297, 28298, 7, 71, 2, 2, 28298, 28299, 7, 89, 2, 2, 28299, 4200, 3, 2, 2, 2, 28300, 28301, 7, 88, 2, 2, 28301, 28302, 7, 75, 2, 2, 28302, 28303, 7, 81, 2, 2, 28303, 28304, 7, 78, 2, 2, 28304, 28305, 7, 67, 2, 2, 28305, 28306, 7, 86, 2, 2, 28306, 28307, 7, 75, 2, 2, 28307, 28308, 7, 81, 2, 2, 28308, 28309, 7, 80, 2, 2, 28309, 4202, 3, 2, 2, 2, 28310, 28311, 7, 88, 2, 2, 28311, 28312, 7, 75, 2, 2, 28312, 28313, 7, 84, 2, 2, 28313, 28314, 7, 86, 2, 2, 28314, 28315, 7, 87, 2, 2, 28315, 28316, 7, 67, 2, 2, 28316, 28317, 7, 78, 2, 2, 28317, 4204, 3, 2, 2, 2, 28318, 28319, 7, 88, 2, 2, 28319, 28320, 7, 75, 2, 2, 28320, 28321, 7, 85, 2, 2, 28321, 28322, 7, 75, 2, 2, 28322, 28323, 7, 68, 2, 2, 28323, 28324, 7, 75, 2, 2, 28324, 28325, 7, 78, 2, 2, 28325, 28326, 7, 75, 2, 2, 28326, 28327, 7, 86, 2, 2, 28327, 28328, 7, 91, 2, 2, 28328, 4206, 3, 2, 2, 2, 28329, 28330, 7, 88, 2, 2, 28330, 28331, 7, 75, 2, 2, 28331, 28332, 7, 85, 2, 2, 28332, 28333, 7, 75, 2, 2, 28333, 28334, 7, 68, 2, 2, 28334, 28335, 7, 78, 2, 2, 28335, 28336, 7, 71, 2, 2, 28336, 4208, 3, 2, 2, 2, 28337, 28338, 7, 88, 2, 2, 28338, 28339, 7, 81, 2, 2, 28339, 28340, 7, 78, 2, 2, 28340, 28341, 7, 87, 2, 2, 28341, 28342, 7, 79, 2, 2, 28342, 28343, 7, 71, 2, 2, 28343, 4210, 3, 2, 2, 2, 28344, 28345, 7, 88, 2, 2, 28345, 28346, 7, 85, 2, 2, 28346, 28347, 7, 75, 2, 2, 28347, 28348, 7, 92, 2, 2, 28348, 28349, 7, 71, 2, 2, 28349, 4212, 3, 2, 2, 2, 28350, 28351, 7, 89, 2, 2, 28351, 28352, 7, 67, 2, 2, 28352, 28353, 7, 75, 2, 2, 28353, 28354, 7, 86, 2, 2, 28354, 4214, 3, 2, 2, 2, 28355, 28356, 7, 89, 2, 2, 28356, 28357, 7, 67, 2, 2, 28357, 28358, 7, 78, 2, 2, 28358, 28359, 7, 78, 2, 2, 28359, 28360, 7, 71, 2, 2, 28360, 28361, 7, 86, 2, 2, 28361, 4216, 3, 2, 2, 2, 28362, 28363, 7, 89, 2, 2, 28363, 28364, 7, 67, 2, 2, 28364, 28365, 7, 84, 2, 2, 28365, 28366, 7, 80, 2, 2, 28366, 28367, 7, 75, 2, 2, 28367, 28368, 7, 80, 2, 2, 28368, 28369, 7, 73, 2, 2, 28369, 4218, 3, 2, 2, 2, 28370, 28371, 7, 89, 2, 2, 28371, 28372, 7, 71, 2, 2, 28372, 28373, 7, 71, 2, 2, 28373, 28374, 7, 77, 2, 2, 28374, 28375, 7, 85, 2, 2, 28375, 4220, 3, 2, 2, 2, 28376, 28377, 7, 89, 2, 2, 28377, 28378, 7, 71, 2, 2, 28378, 28379, 7, 71, 2, 2, 28379, 28380, 7, 77, 2, 2, 28380, 4222, 3, 2, 2, 2, 28381, 28382, 7, 89, 2, 2, 28382, 28383, 7, 71, 2, 2, 28383, 28384, 7, 78, 2, 2, 28384, 28385, 7, 78, 2, 2, 28385, 28386, 7, 72, 2, 2, 28386, 28387, 7, 81, 2, 2, 28387, 28388, 7, 84, 2, 2, 28388, 28389, 7, 79, 2, 2, 28389, 28390, 7, 71, 2, 2, 28390, 28391, 7, 70, 2, 2, 28391, 4224, 3, 2, 2, 2, 28392, 28393, 7, 89, 2, 2, 28393, 28394, 7, 74, 2, 2, 28394, 28395, 7, 71, 2, 2, 28395, 28396, 7, 80, 2, 2, 28396, 28397, 7, 71, 2, 2, 28397, 28398, 7, 88, 2, 2, 28398, 28399, 7, 71, 2, 2, 28399, 28400, 7, 84, 2, 2, 28400, 4226, 3, 2, 2, 2, 28401, 28402, 7, 89, 2, 2, 28402, 28403, 7, 74, 2, 2, 28403, 28404, 7, 71, 2, 2, 28404, 28405, 7, 80, 2, 2, 28405, 4228, 3, 2, 2, 2, 28406, 28407, 7, 89, 2, 2, 28407, 28408, 7, 74, 2, 2, 28408, 28409, 7, 71, 2, 2, 28409, 28410, 7, 84, 2, 2, 28410, 28411, 7, 71, 2, 2, 28411, 4230, 3, 2, 2, 2, 28412, 28413, 7, 89, 2, 2, 28413, 28414, 7, 74, 2, 2, 28414, 28415, 7, 75, 2, 2, 28415, 28416, 7, 78, 2, 2, 28416, 28417, 7, 71, 2, 2, 28417, 4232, 3, 2, 2, 2, 28418, 28419, 7, 89, 2, 2, 28419, 28420, 7, 74, 2, 2, 28420, 28421, 7, 75, 2, 2, 28421, 28422, 7, 86, 2, 2, 28422, 28423, 7, 71, 2, 2, 28423, 28424, 7, 85, 2, 2, 28424, 28425, 7, 82, 2, 2, 28425, 28426, 7, 67, 2, 2, 28426, 28427, 7, 69, 2, 2, 28427, 28428, 7, 71, 2, 2, 28428, 4234, 3, 2, 2, 2, 28429, 28430, 7, 89, 2, 2, 28430, 28431, 7, 75, 2, 2, 28431, 28432, 7, 70, 2, 2, 28432, 28433, 7, 86, 2, 2, 28433, 28434, 7, 74, 2, 2, 28434, 28435, 7, 97, 2, 2, 28435, 28436, 7, 68, 2, 2, 28436, 28437, 7, 87, 2, 2, 28437, 28438, 7, 69, 2, 2, 28438, 28439, 7, 77, 2, 2, 28439, 28440, 7, 71, 2, 2, 28440, 28441, 7, 86, 2, 2, 28441, 4236, 3, 2, 2, 2, 28442, 28443, 7, 89, 2, 2, 28443, 28444, 7, 75, 2, 2, 28444, 28445, 7, 86, 2, 2, 28445, 28446, 7, 74, 2, 2, 28446, 28447, 7, 75, 2, 2, 28447, 28448, 7, 80, 2, 2, 28448, 4238, 3, 2, 2, 2, 28449, 28450, 7, 89, 2, 2, 28450, 28451, 7, 75, 2, 2, 28451, 28452, 7, 86, 2, 2, 28452, 28453, 7, 74, 2, 2, 28453, 28454, 7, 81, 2, 2, 28454, 28455, 7, 87, 2, 2, 28455, 28456, 7, 86, 2, 2, 28456, 4240, 3, 2, 2, 2, 28457, 28458, 7, 89, 2, 2, 28458, 28459, 7, 75, 2, 2, 28459, 28460, 7, 86, 2, 2, 28460, 28461, 7, 74, 2, 2, 28461, 28462, 7, 97, 2, 2, 28462, 28463, 7, 82, 2, 2, 28463, 28464, 7, 78, 2, 2, 28464, 28465, 7, 85, 2, 2, 28465, 28466, 7, 83, 2, 2, 28466, 28467, 7, 78, 2, 2, 28467, 4242, 3, 2, 2, 2, 28468, 28469, 7, 89, 2, 2, 28469, 28470, 7, 75, 2, 2, 28470, 28471, 7, 86, 2, 2, 28471, 28472, 7, 74, 2, 2, 28472, 4244, 3, 2, 2, 2, 28473, 28474, 7, 89, 2, 2, 28474, 28475, 7, 81, 2, 2, 28475, 28476, 7, 84, 2, 2, 28476, 28477, 7, 77, 2, 2, 28477, 4246, 3, 2, 2, 2, 28478, 28479, 7, 89, 2, 2, 28479, 28480, 7, 84, 2, 2, 28480, 28481, 7, 67, 2, 2, 28481, 28482, 7, 82, 2, 2, 28482, 28483, 7, 82, 2, 2, 28483, 28484, 7, 71, 2, 2, 28484, 28485, 7, 70, 2, 2, 28485, 4248, 3, 2, 2, 2, 28486, 28487, 7, 89, 2, 2, 28487, 28488, 7, 84, 2, 2, 28488, 28489, 7, 67, 2, 2, 28489, 28490, 7, 82, 2, 2, 28490, 28491, 7, 82, 2, 2, 28491, 28492, 7, 71, 2, 2, 28492, 28493, 7, 84, 2, 2, 28493, 4250, 3, 2, 2, 2, 28494, 28495, 7, 89, 2, 2, 28495, 28496, 7, 84, 2, 2, 28496, 28497, 7, 75, 2, 2, 28497, 28498, 7, 86, 2, 2, 28498, 28499, 7, 71, 2, 2, 28499, 4252, 3, 2, 2, 2, 28500, 28501, 7, 90, 2, 2, 28501, 28502, 7, 70, 2, 2, 28502, 28503, 7, 68, 2, 2, 28503, 28504, 7, 97, 2, 2, 28504, 28505, 7, 72, 2, 2, 28505, 28506, 7, 67, 2, 2, 28506, 28507, 7, 85, 2, 2, 28507, 28508, 7, 86, 2, 2, 28508, 28509, 7, 82, 2, 2, 28509, 28510, 7, 67, 2, 2, 28510, 28511, 7, 86, 2, 2, 28511, 28512, 7, 74, 2, 2, 28512, 28513, 7, 97, 2, 2, 28513, 28514, 7, 75, 2, 2, 28514, 28515, 7, 80, 2, 2, 28515, 28516, 7, 85, 2, 2, 28516, 28517, 7, 71, 2, 2, 28517, 28518, 7, 84, 2, 2, 28518, 28519, 7, 86, 2, 2, 28519, 4254, 3, 2, 2, 2, 28520, 28521, 7, 90, 2, 2, 28521, 28522, 7, 70, 2, 2, 28522, 28523, 7, 68, 2, 2, 28523, 4256, 3, 2, 2, 2, 28524, 28525, 7, 90, 2, 2, 28525, 28526, 7, 97, 2, 2, 28526, 28527, 7, 70, 2, 2, 28527, 28528, 7, 91, 2, 2, 28528, 28529, 7, 80, 2, 2, 28529, 28530, 7, 97, 2, 2, 28530, 28531, 7, 82, 2, 2, 28531, 28532, 7, 84, 2, 2, 28532, 28533, 7, 87, 2, 2, 28533, 28534, 7, 80, 2, 2, 28534, 28535, 7, 71, 2, 2, 28535, 4258, 3, 2, 2, 2, 28536, 28537, 7, 90, 2, 2, 28537, 28538, 7, 75, 2, 2, 28538, 28539, 7, 70, 2, 2, 28539, 4260, 3, 2, 2, 2, 28540, 28541, 7, 90, 2, 2, 28541, 28542, 7, 79, 2, 2, 28542, 28543, 7, 78, 2, 2, 28543, 28544, 7, 52, 2, 2, 28544, 28545, 7, 81, 2, 2, 28545, 28546, 7, 68, 2, 2, 28546, 28547, 7, 76, 2, 2, 28547, 28548, 7, 71, 2, 2, 28548, 28549, 7, 69, 2, 2, 28549, 28550, 7, 86, 2, 2, 28550, 4262, 3, 2, 2, 2, 28551, 28552, 7, 90, 2, 2, 28552, 28553, 7, 79, 2, 2, 28553, 28554, 7, 78, 2, 2, 28554, 28555, 7, 67, 2, 2, 28555, 28556, 7, 73, 2, 2, 28556, 28557, 7, 73, 2, 2, 28557, 4264, 3, 2, 2, 2, 28558, 28559, 7, 90, 2, 2, 28559, 28560, 7, 79, 2, 2, 28560, 28561, 7, 78, 2, 2, 28561, 28562, 7, 67, 2, 2, 28562, 28563, 7, 86, 2, 2, 28563, 28564, 7, 86, 2, 2, 28564, 28565, 7, 84, 2, 2, 28565, 28566, 7, 75, 2, 2, 28566, 28567, 7, 68, 2, 2, 28567, 28568, 7, 87, 2, 2, 28568, 28569, 7, 86, 2, 2, 28569, 28570, 7, 71, 2, 2, 28570, 28571, 7, 85, 2, 2, 28571, 4266, 3, 2, 2, 2, 28572, 28573, 7, 90, 2, 2, 28573, 28574, 7, 79, 2, 2, 28574, 28575, 7, 78, 2, 2, 28575, 28576, 7, 69, 2, 2, 28576, 28577, 7, 67, 2, 2, 28577, 28578, 7, 85, 2, 2, 28578, 28579, 7, 86, 2, 2, 28579, 4268, 3, 2, 2, 2, 28580, 28581, 7, 90, 2, 2, 28581, 28582, 7, 79, 2, 2, 28582, 28583, 7, 78, 2, 2, 28583, 28584, 7, 69, 2, 2, 28584, 28585, 7, 70, 2, 2, 28585, 28586, 7, 67, 2, 2, 28586, 28587, 7, 86, 2, 2, 28587, 28588, 7, 67, 2, 2, 28588, 4270, 3, 2, 2, 2, 28589, 28590, 7, 90, 2, 2, 28590, 28591, 7, 79, 2, 2, 28591, 28592, 7, 78, 2, 2, 28592, 28593, 7, 69, 2, 2, 28593, 28594, 7, 81, 2, 2, 28594, 28595, 7, 78, 2, 2, 28595, 28596, 7, 67, 2, 2, 28596, 28597, 7, 86, 2, 2, 28597, 28598, 7, 86, 2, 2, 28598, 28599, 7, 88, 2, 2, 28599, 28600, 7, 67, 2, 2, 28600, 28601, 7, 78, 2, 2, 28601, 4272, 3, 2, 2, 2, 28602, 28603, 7, 90, 2, 2, 28603, 28604, 7, 79, 2, 2, 28604, 28605, 7, 78, 2, 2, 28605, 28606, 7, 69, 2, 2, 28606, 28607, 7, 81, 2, 2, 28607, 28608, 7, 79, 2, 2, 28608, 28609, 7, 79, 2, 2, 28609, 28610, 7, 71, 2, 2, 28610, 28611, 7, 80, 2, 2, 28611, 28612, 7, 86, 2, 2, 28612, 4274, 3, 2, 2, 2, 28613, 28614, 7, 90, 2, 2, 28614, 28615, 7, 79, 2, 2, 28615, 28616, 7, 78, 2, 2, 28616, 28617, 7, 69, 2, 2, 28617, 28618, 7, 81, 2, 2, 28618, 28619, 7, 80, 2, 2, 28619, 28620, 7, 69, 2, 2, 28620, 28621, 7, 67, 2, 2, 28621, 28622, 7, 86, 2, 2, 28622, 4276, 3, 2, 2, 2, 28623, 28624, 7, 90, 2, 2, 28624, 28625, 7, 79, 2, 2, 28625, 28626, 7, 78, 2, 2, 28626, 28627, 7, 70, 2, 2, 28627, 28628, 7, 75, 2, 2, 28628, 28629, 7, 72, 2, 2, 28629, 28630, 7, 72, 2, 2, 28630, 4278, 3, 2, 2, 2, 28631, 28632, 7, 90, 2, 2, 28632, 28633, 7, 79, 2, 2, 28633, 28634, 7, 78, 2, 2, 28634, 28635, 7, 97, 2, 2, 28635, 28636, 7, 70, 2, 2, 28636, 28637, 7, 79, 2, 2, 28637, 28638, 7, 78, 2, 2, 28638, 28639, 7, 97, 2, 2, 28639, 28640, 7, 84, 2, 2, 28640, 28641, 7, 89, 2, 2, 28641, 28642, 7, 86, 2, 2, 28642, 28643, 7, 97, 2, 2, 28643, 28644, 7, 85, 2, 2, 28644, 28645, 7, 86, 2, 2, 28645, 28646, 7, 79, 2, 2, 28646, 28647, 7, 86, 2, 2, 28647, 4280, 3, 2, 2, 2, 28648, 28649, 7, 90, 2, 2, 28649, 28650, 7, 79, 2, 2, 28650, 28651, 7, 78, 2, 2, 28651, 28652, 7, 71, 2, 2, 28652, 28653, 7, 78, 2, 2, 28653, 28654, 7, 71, 2, 2, 28654, 28655, 7, 79, 2, 2, 28655, 28656, 7, 71, 2, 2, 28656, 28657, 7, 80, 2, 2, 28657, 28658, 7, 86, 2, 2, 28658, 4282, 3, 2, 2, 2, 28659, 28660, 7, 90, 2, 2, 28660, 28661, 7, 79, 2, 2, 28661, 28662, 7, 78, 2, 2, 28662, 28663, 7, 71, 2, 2, 28663, 28664, 7, 90, 2, 2, 28664, 28665, 7, 75, 2, 2, 28665, 28666, 7, 85, 2, 2, 28666, 28667, 7, 86, 2, 2, 28667, 28668, 7, 85, 2, 2, 28668, 28669, 7, 52, 2, 2, 28669, 4284, 3, 2, 2, 2, 28670, 28671, 7, 90, 2, 2, 28671, 28672, 7, 79, 2, 2, 28672, 28673, 7, 78, 2, 2, 28673, 28674, 7, 71, 2, 2, 28674, 28675, 7, 90, 2, 2, 28675, 28676, 7, 75, 2, 2, 28676, 28677, 7, 85, 2, 2, 28677, 28678, 7, 86, 2, 2, 28678, 28679, 7, 85, 2, 2, 28679, 4286, 3, 2, 2, 2, 28680, 28681, 7, 90, 2, 2, 28681, 28682, 7, 79, 2, 2, 28682, 28683, 7, 78, 2, 2, 28683, 28684, 7, 72, 2, 2, 28684, 28685, 7, 81, 2, 2, 28685, 28686, 7, 84, 2, 2, 28686, 28687, 7, 71, 2, 2, 28687, 28688, 7, 85, 2, 2, 28688, 28689, 7, 86, 2, 2, 28689, 4288, 3, 2, 2, 2, 28690, 28691, 7, 90, 2, 2, 28691, 28692, 7, 79, 2, 2, 28692, 28693, 7, 78, 2, 2, 28693, 28694, 7, 75, 2, 2, 28694, 28695, 7, 80, 2, 2, 28695, 28696, 7, 70, 2, 2, 28696, 28697, 7, 71, 2, 2, 28697, 28698, 7, 90, 2, 2, 28698, 4290, 3, 2, 2, 2, 28699, 28700, 7, 90, 2, 2, 28700, 28701, 7, 79, 2, 2, 28701, 28702, 7, 78, 2, 2, 28702, 28703, 7, 75, 2, 2, 28703, 28704, 7, 80, 2, 2, 28704, 28705, 7, 70, 2, 2, 28705, 28706, 7, 71, 2, 2, 28706, 28707, 7, 90, 2, 2, 28707, 28708, 7, 97, 2, 2, 28708, 28709, 7, 84, 2, 2, 28709, 28710, 7, 71, 2, 2, 28710, 28711, 7, 89, 2, 2, 28711, 28712, 7, 84, 2, 2, 28712, 28713, 7, 75, 2, 2, 28713, 28714, 7, 86, 2, 2, 28714, 28715, 7, 71, 2, 2, 28715, 28716, 7, 97, 2, 2, 28716, 28717, 7, 75, 2, 2, 28717, 28718, 7, 80, 2, 2, 28718, 28719, 7, 97, 2, 2, 28719, 28720, 7, 85, 2, 2, 28720, 28721, 7, 71, 2, 2, 28721, 28722, 7, 78, 2, 2, 28722, 28723, 7, 71, 2, 2, 28723, 28724, 7, 69, 2, 2, 28724, 28725, 7, 86, 2, 2, 28725, 4292, 3, 2, 2, 2, 28726, 28727, 7, 90, 2, 2, 28727, 28728, 7, 79, 2, 2, 28728, 28729, 7, 78, 2, 2, 28729, 28730, 7, 75, 2, 2, 28730, 28731, 7, 80, 2, 2, 28731, 28732, 7, 70, 2, 2, 28732, 28733, 7, 71, 2, 2, 28733, 28734, 7, 90, 2, 2, 28734, 28735, 7, 97, 2, 2, 28735, 28736, 7, 84, 2, 2, 28736, 28737, 7, 71, 2, 2, 28737, 28738, 7, 89, 2, 2, 28738, 28739, 7, 84, 2, 2, 28739, 28740, 7, 75, 2, 2, 28740, 28741, 7, 86, 2, 2, 28741, 28742, 7, 71, 2, 2, 28742, 4294, 3, 2, 2, 2, 28743, 28744, 7, 90, 2, 2, 28744, 28745, 7, 79, 2, 2, 28745, 28746, 7, 78, 2, 2, 28746, 28747, 7, 75, 2, 2, 28747, 28748, 7, 80, 2, 2, 28748, 28749, 7, 70, 2, 2, 28749, 28750, 7, 71, 2, 2, 28750, 28751, 7, 90, 2, 2, 28751, 28752, 7, 97, 2, 2, 28752, 28753, 7, 85, 2, 2, 28753, 28754, 7, 71, 2, 2, 28754, 28755, 7, 78, 2, 2, 28755, 28756, 7, 97, 2, 2, 28756, 28757, 7, 75, 2, 2, 28757, 28758, 7, 70, 2, 2, 28758, 28759, 7, 90, 2, 2, 28759, 28760, 7, 97, 2, 2, 28760, 28761, 7, 86, 2, 2, 28761, 28762, 7, 68, 2, 2, 28762, 28763, 7, 78, 2, 2, 28763, 4296, 3, 2, 2, 2, 28764, 28765, 7, 90, 2, 2, 28765, 28766, 7, 79, 2, 2, 28766, 28767, 7, 78, 2, 2, 28767, 28768, 7, 75, 2, 2, 28768, 28769, 7, 85, 2, 2, 28769, 28770, 7, 80, 2, 2, 28770, 28771, 7, 81, 2, 2, 28771, 28772, 7, 70, 2, 2, 28772, 28773, 7, 71, 2, 2, 28773, 4298, 3, 2, 2, 2, 28774, 28775, 7, 90, 2, 2, 28775, 28776, 7, 79, 2, 2, 28776, 28777, 7, 78, 2, 2, 28777, 28778, 7, 75, 2, 2, 28778, 28779, 7, 85, 2, 2, 28779, 28780, 7, 88, 2, 2, 28780, 28781, 7, 67, 2, 2, 28781, 28782, 7, 78, 2, 2, 28782, 28783, 7, 75, 2, 2, 28783, 28784, 7, 70, 2, 2, 28784, 4300, 3, 2, 2, 2, 28785, 28786, 7, 90, 2, 2, 28786, 28787, 7, 79, 2, 2, 28787, 28788, 7, 78, 2, 2, 28788, 28789, 7, 80, 2, 2, 28789, 28790, 7, 67, 2, 2, 28790, 28791, 7, 79, 2, 2, 28791, 28792, 7, 71, 2, 2, 28792, 28793, 7, 85, 2, 2, 28793, 28794, 7, 82, 2, 2, 28794, 28795, 7, 67, 2, 2, 28795, 28796, 7, 69, 2, 2, 28796, 28797, 7, 71, 2, 2, 28797, 28798, 7, 85, 2, 2, 28798, 4302, 3, 2, 2, 2, 28799, 28800, 7, 90, 2, 2, 28800, 28801, 7, 79, 2, 2, 28801, 28802, 7, 78, 2, 2, 28802, 28803, 7, 82, 2, 2, 28803, 28804, 7, 67, 2, 2, 28804, 28805, 7, 84, 2, 2, 28805, 28806, 7, 85, 2, 2, 28806, 28807, 7, 71, 2, 2, 28807, 4304, 3, 2, 2, 2, 28808, 28809, 7, 90, 2, 2, 28809, 28810, 7, 79, 2, 2, 28810, 28811, 7, 78, 2, 2, 28811, 28812, 7, 82, 2, 2, 28812, 28813, 7, 67, 2, 2, 28813, 28814, 7, 86, 2, 2, 28814, 28815, 7, 69, 2, 2, 28815, 28816, 7, 74, 2, 2, 28816, 4306, 3, 2, 2, 2, 28817, 28818, 7, 90, 2, 2, 28818, 28819, 7, 79, 2, 2, 28819, 28820, 7, 78, 2, 2, 28820, 28821, 7, 82, 2, 2, 28821, 28822, 7, 75, 2, 2, 28822, 4308, 3, 2, 2, 2, 28823, 28824, 7, 90, 2, 2, 28824, 28825, 7, 79, 2, 2, 28825, 28826, 7, 78, 2, 2, 28826, 28827, 7, 83, 2, 2, 28827, 28828, 7, 87, 2, 2, 28828, 28829, 7, 71, 2, 2, 28829, 28830, 7, 84, 2, 2, 28830, 28831, 7, 91, 2, 2, 28831, 28832, 7, 88, 2, 2, 28832, 28833, 7, 67, 2, 2, 28833, 28834, 7, 78, 2, 2, 28834, 4310, 3, 2, 2, 2, 28835, 28836, 7, 90, 2, 2, 28836, 28837, 7, 79, 2, 2, 28837, 28838, 7, 78, 2, 2, 28838, 28839, 7, 83, 2, 2, 28839, 28840, 7, 87, 2, 2, 28840, 28841, 7, 71, 2, 2, 28841, 28842, 7, 84, 2, 2, 28842, 28843, 7, 91, 2, 2, 28843, 4312, 3, 2, 2, 2, 28844, 28845, 7, 90, 2, 2, 28845, 28846, 7, 79, 2, 2, 28846, 28847, 7, 78, 2, 2, 28847, 28848, 7, 84, 2, 2, 28848, 28849, 7, 81, 2, 2, 28849, 28850, 7, 81, 2, 2, 28850, 28851, 7, 86, 2, 2, 28851, 4314, 3, 2, 2, 2, 28852, 28853, 7, 90, 2, 2, 28853, 28854, 7, 79, 2, 2, 28854, 28855, 7, 78, 2, 2, 28855, 28856, 7, 85, 2, 2, 28856, 28857, 7, 69, 2, 2, 28857, 28858, 7, 74, 2, 2, 28858, 28859, 7, 71, 2, 2, 28859, 28860, 7, 79, 2, 2, 28860, 28861, 7, 67, 2, 2, 28861, 4316, 3, 2, 2, 2, 28862, 28863, 7, 90, 2, 2, 28863, 28864, 7, 79, 2, 2, 28864, 28865, 7, 78, 2, 2, 28865, 28866, 7, 85, 2, 2, 28866, 28867, 7, 71, 2, 2, 28867, 28868, 7, 84, 2, 2, 28868, 28869, 7, 75, 2, 2, 28869, 28870, 7, 67, 2, 2, 28870, 28871, 7, 78, 2, 2, 28871, 28872, 7, 75, 2, 2, 28872, 28873, 7, 92, 2, 2, 28873, 28874, 7, 71, 2, 2, 28874, 4318, 3, 2, 2, 2, 28875, 28876, 7, 90, 2, 2, 28876, 28877, 7, 79, 2, 2, 28877, 28878, 7, 78, 2, 2, 28878, 28879, 7, 86, 2, 2, 28879, 28880, 7, 67, 2, 2, 28880, 28881, 7, 68, 2, 2, 28881, 28882, 7, 78, 2, 2, 28882, 28883, 7, 71, 2, 2, 28883, 4320, 3, 2, 2, 2, 28884, 28885, 7, 90, 2, 2, 28885, 28886, 7, 79, 2, 2, 28886, 28887, 7, 78, 2, 2, 28887, 28888, 7, 86, 2, 2, 28888, 28889, 7, 84, 2, 2, 28889, 28890, 7, 67, 2, 2, 28890, 28891, 7, 80, 2, 2, 28891, 28892, 7, 85, 2, 2, 28892, 28893, 7, 72, 2, 2, 28893, 28894, 7, 81, 2, 2, 28894, 28895, 7, 84, 2, 2, 28895, 28896, 7, 79, 2, 2, 28896, 28897, 7, 68, 2, 2, 28897, 28898, 7, 78, 2, 2, 28898, 28899, 7, 81, 2, 2, 28899, 28900, 7, 68, 2, 2, 28900, 4322, 3, 2, 2, 2, 28901, 28902, 7, 90, 2, 2, 28902, 28903, 7, 79, 2, 2, 28903, 28904, 7, 78, 2, 2, 28904, 28905, 7, 86, 2, 2, 28905, 28906, 7, 84, 2, 2, 28906, 28907, 7, 67, 2, 2, 28907, 28908, 7, 80, 2, 2, 28908, 28909, 7, 85, 2, 2, 28909, 28910, 7, 72, 2, 2, 28910, 28911, 7, 81, 2, 2, 28911, 28912, 7, 84, 2, 2, 28912, 28913, 7, 79, 2, 2, 28913, 4324, 3, 2, 2, 2, 28914, 28915, 7, 90, 2, 2, 28915, 28916, 7, 79, 2, 2, 28916, 28917, 7, 78, 2, 2, 28917, 28918, 7, 86, 2, 2, 28918, 28919, 7, 91, 2, 2, 28919, 28920, 7, 82, 2, 2, 28920, 28921, 7, 71, 2, 2, 28921, 4326, 3, 2, 2, 2, 28922, 28923, 7, 90, 2, 2, 28923, 28924, 7, 79, 2, 2, 28924, 28925, 7, 78, 2, 2, 28925, 4328, 3, 2, 2, 2, 28926, 28927, 7, 90, 2, 2, 28927, 28928, 7, 82, 2, 2, 28928, 28929, 7, 67, 2, 2, 28929, 28930, 7, 86, 2, 2, 28930, 28931, 7, 74, 2, 2, 28931, 28932, 7, 86, 2, 2, 28932, 28933, 7, 67, 2, 2, 28933, 28934, 7, 68, 2, 2, 28934, 28935, 7, 78, 2, 2, 28935, 28936, 7, 71, 2, 2, 28936, 4330, 3, 2, 2, 2, 28937, 28938, 7, 90, 2, 2, 28938, 28939, 7, 85, 2, 2, 28939, 28940, 7, 97, 2, 2, 28940, 28941, 7, 85, 2, 2, 28941, 28942, 7, 91, 2, 2, 28942, 28943, 7, 85, 2, 2, 28943, 28944, 7, 97, 2, 2, 28944, 28945, 7, 69, 2, 2, 28945, 28946, 7, 81, 2, 2, 28946, 28947, 7, 80, 2, 2, 28947, 28948, 7, 86, 2, 2, 28948, 28949, 7, 71, 2, 2, 28949, 28950, 7, 90, 2, 2, 28950, 28951, 7, 86, 2, 2, 28951, 4332, 3, 2, 2, 2, 28952, 28953, 7, 90, 2, 2, 28953, 28954, 7, 85, 2, 2, 28954, 4334, 3, 2, 2, 2, 28955, 28956, 7, 90, 2, 2, 28956, 28957, 7, 86, 2, 2, 28957, 28958, 7, 84, 2, 2, 28958, 28959, 7, 67, 2, 2, 28959, 28960, 7, 80, 2, 2, 28960, 28961, 7, 85, 2, 2, 28961, 28962, 7, 82, 2, 2, 28962, 28963, 7, 81, 2, 2, 28963, 28964, 7, 84, 2, 2, 28964, 28965, 7, 86, 2, 2, 28965, 4336, 3, 2, 2, 2, 28966, 28967, 7, 91, 2, 2, 28967, 28968, 7, 71, 2, 2, 28968, 28969, 7, 67, 2, 2, 28969, 28970, 7, 84, 2, 2, 28970, 28971, 7, 85, 2, 2, 28971, 4338, 3, 2, 2, 2, 28972, 28973, 7, 91, 2, 2, 28973, 28974, 7, 71, 2, 2, 28974, 28975, 7, 67, 2, 2, 28975, 28976, 7, 84, 2, 2, 28976, 4340, 3, 2, 2, 2, 28977, 28978, 7, 91, 2, 2, 28978, 28979, 7, 71, 2, 2, 28979, 28980, 7, 85, 2, 2, 28980, 4342, 3, 2, 2, 2, 28981, 28982, 7, 91, 2, 2, 28982, 28983, 7, 79, 2, 2, 28983, 28984, 7, 75, 2, 2, 28984, 28985, 7, 80, 2, 2, 28985, 28986, 7, 86, 2, 2, 28986, 28987, 7, 71, 2, 2, 28987, 28988, 7, 84, 2, 2, 28988, 28989, 7, 88, 2, 2, 28989, 28990, 7, 67, 2, 2, 28990, 28991, 7, 78, 2, 2, 28991, 28992, 7, 97, 2, 2, 28992, 28993, 7, 87, 2, 2, 28993, 28994, 7, 80, 2, 2, 28994, 28995, 7, 69, 2, 2, 28995, 28996, 7, 81, 2, 2, 28996, 28997, 7, 80, 2, 2, 28997, 28998, 7, 85, 2, 2, 28998, 28999, 7, 86, 2, 2, 28999, 29000, 7, 84, 2, 2, 29000, 29001, 7, 67, 2, 2, 29001, 29002, 7, 75, 2, 2, 29002, 29003, 7, 80, 2, 2, 29003, 29004, 7, 71, 2, 2, 29004, 29005, 7, 70, 2, 2, 29005, 4344, 3, 2, 2, 2, 29006, 29007, 7, 92, 2, 2, 29007, 29008, 7, 81, 2, 2, 29008, 29009, 7, 80, 2, 2, 29009, 29010, 7, 71, 2, 2, 29010, 29011, 7, 79, 2, 2, 29011, 29012, 7, 67, 2, 2, 29012, 29013, 7, 82, 2, 2, 29013, 4346, 3, 2, 2, 2, 29014, 29015, 7, 92, 2, 2, 29015, 29016, 7, 81, 2, 2, 29016, 29017, 7, 80, 2, 2, 29017, 29018, 7, 71, 2, 2, 29018, 4348, 3, 2, 2, 2, 29019, 29020, 7, 82, 2, 2, 29020, 29021, 7, 84, 2, 2, 29021, 29022, 7, 71, 2, 2, 29022, 29023, 7, 70, 2, 2, 29023, 29024, 7, 75, 2, 2, 29024, 29025, 7, 69, 2, 2, 29025, 29026, 7, 86, 2, 2, 29026, 29027, 7, 75, 2, 2, 29027, 29028, 7, 81, 2, 2, 29028, 29029, 7, 80, 2, 2, 29029, 4350, 3, 2, 2, 2, 29030, 29031, 7, 82, 2, 2, 29031, 29032, 7, 84, 2, 2, 29032, 29033, 7, 71, 2, 2, 29033, 29034, 7, 70, 2, 2, 29034, 29035, 7, 75, 2, 2, 29035, 29036, 7, 69, 2, 2, 29036, 29037, 7, 86, 2, 2, 29037, 29038, 7, 75, 2, 2, 29038, 29039, 7, 81, 2, 2, 29039, 29040, 7, 80, 2, 2, 29040, 29041, 7, 97, 2, 2, 29041, 29042, 7, 68, 2, 2, 29042, 29043, 7, 81, 2, 2, 29043, 29044, 7, 87, 2, 2, 29044, 29045, 7, 80, 2, 2, 29045, 29046, 7, 70, 2, 2, 29046, 29047, 7, 85, 2, 2, 29047, 4352, 3, 2, 2, 2, 29048, 29049, 7, 82, 2, 2, 29049, 29050, 7, 84, 2, 2, 29050, 29051, 7, 71, 2, 2, 29051, 29052, 7, 70, 2, 2, 29052, 29053, 7, 75, 2, 2, 29053, 29054, 7, 69, 2, 2, 29054, 29055, 7, 86, 2, 2, 29055, 29056, 7, 75, 2, 2, 29056, 29057, 7, 81, 2, 2, 29057, 29058, 7, 80, 2, 2, 29058, 29059, 7, 97, 2, 2, 29059, 29060, 7, 69, 2, 2, 29060, 29061, 7, 81, 2, 2, 29061, 29062, 7, 85, 2, 2, 29062, 29063, 7, 86, 2, 2, 29063, 4354, 3, 2, 2, 2, 29064, 29065, 7, 82, 2, 2, 29065, 29066, 7, 84, 2, 2, 29066, 29067, 7, 71, 2, 2, 29067, 29068, 7, 70, 2, 2, 29068, 29069, 7, 75, 2, 2, 29069, 29070, 7, 69, 2, 2, 29070, 29071, 7, 86, 2, 2, 29071, 29072, 7, 75, 2, 2, 29072, 29073, 7, 81, 2, 2, 29073, 29074, 7, 80, 2, 2, 29074, 29075, 7, 97, 2, 2, 29075, 29076, 7, 70, 2, 2, 29076, 29077, 7, 71, 2, 2, 29077, 29078, 7, 86, 2, 2, 29078, 29079, 7, 67, 2, 2, 29079, 29080, 7, 75, 2, 2, 29080, 29081, 7, 78, 2, 2, 29081, 29082, 7, 85, 2, 2, 29082, 4356, 3, 2, 2, 2, 29083, 29084, 7, 82, 2, 2, 29084, 29085, 7, 84, 2, 2, 29085, 29086, 7, 71, 2, 2, 29086, 29087, 7, 70, 2, 2, 29087, 29088, 7, 75, 2, 2, 29088, 29089, 7, 69, 2, 2, 29089, 29090, 7, 86, 2, 2, 29090, 29091, 7, 75, 2, 2, 29091, 29092, 7, 81, 2, 2, 29092, 29093, 7, 80, 2, 2, 29093, 29094, 7, 97, 2, 2, 29094, 29095, 7, 82, 2, 2, 29095, 29096, 7, 84, 2, 2, 29096, 29097, 7, 81, 2, 2, 29097, 29098, 7, 68, 2, 2, 29098, 29099, 7, 67, 2, 2, 29099, 29100, 7, 68, 2, 2, 29100, 29101, 7, 75, 2, 2, 29101, 29102, 7, 78, 2, 2, 29102, 29103, 7, 75, 2, 2, 29103, 29104, 7, 86, 2, 2, 29104, 29105, 7, 91, 2, 2, 29105, 4358, 3, 2, 2, 2, 29106, 29107, 7, 82, 2, 2, 29107, 29108, 7, 84, 2, 2, 29108, 29109, 7, 71, 2, 2, 29109, 29110, 7, 70, 2, 2, 29110, 29111, 7, 75, 2, 2, 29111, 29112, 7, 69, 2, 2, 29112, 29113, 7, 86, 2, 2, 29113, 29114, 7, 75, 2, 2, 29114, 29115, 7, 81, 2, 2, 29115, 29116, 7, 80, 2, 2, 29116, 29117, 7, 97, 2, 2, 29117, 29118, 7, 85, 2, 2, 29118, 29119, 7, 71, 2, 2, 29119, 29120, 7, 86, 2, 2, 29120, 4360, 3, 2, 2, 2, 29121, 29122, 7, 69, 2, 2, 29122, 29123, 7, 87, 2, 2, 29123, 29124, 7, 79, 2, 2, 29124, 29125, 7, 71, 2, 2, 29125, 29126, 7, 97, 2, 2, 29126, 29127, 7, 70, 2, 2, 29127, 29128, 7, 75, 2, 2, 29128, 29129, 7, 85, 2, 2, 29129, 29130, 7, 86, 2, 2, 29130, 4362, 3, 2, 2, 2, 29131, 29132, 7, 70, 2, 2, 29132, 29133, 7, 71, 2, 2, 29133, 29134, 7, 80, 2, 2, 29134, 29135, 7, 85, 2, 2, 29135, 29136, 7, 71, 2, 2, 29136, 29137, 7, 97, 2, 2, 29137, 29138, 7, 84, 2, 2, 29138, 29139, 7, 67, 2, 2, 29139, 29140, 7, 80, 2, 2, 29140, 29141, 7, 77, 2, 2, 29141, 4364, 3, 2, 2, 2, 29142, 29143, 7, 78, 2, 2, 29143, 29144, 7, 75, 2, 2, 29144, 29145, 7, 85, 2, 2, 29145, 29146, 7, 86, 2, 2, 29146, 29147, 7, 67, 2, 2, 29147, 29148, 7, 73, 2, 2, 29148, 29149, 7, 73, 2, 2, 29149, 4366, 3, 2, 2, 2, 29150, 29151, 7, 82, 2, 2, 29151, 29152, 7, 71, 2, 2, 29152, 29153, 7, 84, 2, 2, 29153, 29154, 7, 69, 2, 2, 29154, 29155, 7, 71, 2, 2, 29155, 29156, 7, 80, 2, 2, 29156, 29157, 7, 86, 2, 2, 29157, 29158, 7, 97, 2, 2, 29158, 29159, 7, 84, 2, 2, 29159, 29160, 7, 67, 2, 2, 29160, 29161, 7, 80, 2, 2, 29161, 29162, 7, 77, 2, 2, 29162, 4368, 3, 2, 2, 2, 29163, 29164, 7, 82, 2, 2, 29164, 29165, 7, 71, 2, 2, 29165, 29166, 7, 84, 2, 2, 29166, 29167, 7, 69, 2, 2, 29167, 29168, 7, 71, 2, 2, 29168, 29169, 7, 80, 2, 2, 29169, 29170, 7, 86, 2, 2, 29170, 29171, 7, 75, 2, 2, 29171, 29172, 7, 78, 2, 2, 29172, 29173, 7, 71, 2, 2, 29173, 29174, 7, 97, 2, 2, 29174, 29175, 7, 69, 2, 2, 29175, 29176, 7, 81, 2, 2, 29176, 29177, 7, 80, 2, 2, 29177, 29178, 7, 86, 2, 2, 29178, 4370, 3, 2, 2, 2, 29179, 29180, 7, 82, 2, 2, 29180, 29181, 7, 71, 2, 2, 29181, 29182, 7, 84, 2, 2, 29182, 29183, 7, 69, 2, 2, 29183, 29184, 7, 71, 2, 2, 29184, 29185, 7, 80, 2, 2, 29185, 29186, 7, 86, 2, 2, 29186, 29187, 7, 75, 2, 2, 29187, 29188, 7, 78, 2, 2, 29188, 29189, 7, 71, 2, 2, 29189, 29190, 7, 97, 2, 2, 29190, 29191, 7, 70, 2, 2, 29191, 29192, 7, 75, 2, 2, 29192, 29193, 7, 85, 2, 2, 29193, 29194, 7, 69, 2, 2, 29194, 4372, 3, 2, 2, 2, 29195, 29196, 7, 84, 2, 2, 29196, 29197, 7, 67, 2, 2, 29197, 29198, 7, 80, 2, 2, 29198, 29199, 7, 77, 2, 2, 29199, 4374, 3, 2, 2, 2, 29200, 29201, 7, 67, 2, 2, 29201, 29202, 7, 88, 2, 2, 29202, 29203, 7, 73, 2, 2, 29203, 4376, 3, 2, 2, 2, 29204, 29205, 7, 69, 2, 2, 29205, 29206, 7, 81, 2, 2, 29206, 29207, 7, 84, 2, 2, 29207, 29208, 7, 84, 2, 2, 29208, 4378, 3, 2, 2, 2, 29209, 29210, 7, 69, 2, 2, 29210, 29211, 7, 81, 2, 2, 29211, 29212, 7, 88, 2, 2, 29212, 29213, 7, 67, 2, 2, 29213, 29214, 7, 84, 2, 2, 29214, 29215, 7, 97, 2, 2, 29215, 4380, 3, 2, 2, 2, 29216, 29217, 7, 70, 2, 2, 29217, 29218, 7, 71, 2, 2, 29218, 29219, 7, 69, 2, 2, 29219, 29220, 7, 81, 2, 2, 29220, 29221, 7, 70, 2, 2, 29221, 29222, 7, 71, 2, 2, 29222, 4382, 3, 2, 2, 2, 29223, 29224, 7, 78, 2, 2, 29224, 29225, 7, 67, 2, 2, 29225, 29226, 7, 73, 2, 2, 29226, 4384, 3, 2, 2, 2, 29227, 29228, 7, 78, 2, 2, 29228, 29229, 7, 71, 2, 2, 29229, 29230, 7, 67, 2, 2, 29230, 29231, 7, 70, 2, 2, 29231, 4386, 3, 2, 2, 2, 29232, 29233, 7, 79, 2, 2, 29233, 29234, 7, 67, 2, 2, 29234, 29235, 7, 90, 2, 2, 29235, 4388, 3, 2, 2, 2, 29236, 29237, 7, 79, 2, 2, 29237, 29238, 7, 71, 2, 2, 29238, 29239, 7, 70, 2, 2, 29239, 29240, 7, 75, 2, 2, 29240, 29241, 7, 67, 2, 2, 29241, 29242, 7, 80, 2, 2, 29242, 4390, 3, 2, 2, 2, 29243, 29244, 7, 79, 2, 2, 29244, 29245, 7, 75, 2, 2, 29245, 29246, 7, 80, 2, 2, 29246, 4392, 3, 2, 2, 2, 29247, 29248, 7, 80, 2, 2, 29248, 29249, 7, 86, 2, 2, 29249, 29250, 7, 75, 2, 2, 29250, 29251, 7, 78, 2, 2, 29251, 29252, 7, 71, 2, 2, 29252, 4394, 3, 2, 2, 2, 29253, 29254, 7, 80, 2, 2, 29254, 29255, 7, 88, 2, 2, 29255, 29256, 7, 78, 2, 2, 29256, 4396, 3, 2, 2, 2, 29257, 29258, 7, 84, 2, 2, 29258, 29259, 7, 67, 2, 2, 29259, 29260, 7, 86, 2, 2, 29260, 29261, 7, 75, 2, 2, 29261, 29262, 7, 81, 2, 2, 29262, 29263, 7, 97, 2, 2, 29263, 29264, 7, 86, 2, 2, 29264, 29265, 7, 81, 2, 2, 29265, 29266, 7, 97, 2, 2, 29266, 29267, 7, 84, 2, 2, 29267, 29268, 7, 71, 2, 2, 29268, 29269, 7, 82, 2, 2, 29269, 29270, 7, 81, 2, 2, 29270, 29271, 7, 84, 2, 2, 29271, 29272, 7, 86, 2, 2, 29272, 4398, 3, 2, 2, 2, 29273, 29274, 7, 84, 2, 2, 29274, 29275, 7, 71, 2, 2, 29275, 29276, 7, 73, 2, 2, 29276, 29277, 7, 84, 2, 2, 29277, 29278, 7, 97, 2, 2, 29278, 4400, 3, 2, 2, 2, 29279, 29280, 7, 84, 2, 2, 29280, 29281, 7, 81, 2, 2, 29281, 29282, 7, 87, 2, 2, 29282, 29283, 7, 80, 2, 2, 29283, 29284, 7, 70, 2, 2, 29284, 4402, 3, 2, 2, 2, 29285, 29286, 7, 84, 2, 2, 29286, 29287, 7, 81, 2, 2, 29287, 29288, 7, 89, 2, 2, 29288, 29289, 7, 97, 2, 2, 29289, 29290, 7, 80, 2, 2, 29290, 29291, 7, 87, 2, 2, 29291, 29292, 7, 79, 2, 2, 29292, 29293, 7, 68, 2, 2, 29293, 29294, 7, 71, 2, 2, 29294, 29295, 7, 84, 2, 2, 29295, 4404, 3, 2, 2, 2, 29296, 29297, 7, 85, 2, 2, 29297, 29298, 7, 87, 2, 2, 29298, 29299, 7, 68, 2, 2, 29299, 29300, 7, 85, 2, 2, 29300, 29301, 7, 86, 2, 2, 29301, 29302, 7, 84, 2, 2, 29302, 4406, 3, 2, 2, 2, 29303, 29304, 7, 86, 2, 2, 29304, 29305, 7, 81, 2, 2, 29305, 29306, 7, 97, 2, 2, 29306, 29307, 7, 69, 2, 2, 29307, 29308, 7, 74, 2, 2, 29308, 29309, 7, 67, 2, 2, 29309, 29310, 7, 84, 2, 2, 29310, 4408, 3, 2, 2, 2, 29311, 29312, 7, 86, 2, 2, 29312, 29313, 7, 84, 2, 2, 29313, 29314, 7, 75, 2, 2, 29314, 29315, 7, 79, 2, 2, 29315, 4410, 3, 2, 2, 2, 29316, 29317, 7, 85, 2, 2, 29317, 29318, 7, 87, 2, 2, 29318, 29319, 7, 79, 2, 2, 29319, 4412, 3, 2, 2, 2, 29320, 29321, 7, 85, 2, 2, 29321, 29322, 7, 86, 2, 2, 29322, 29323, 7, 70, 2, 2, 29323, 29324, 7, 70, 2, 2, 29324, 29325, 7, 71, 2, 2, 29325, 29326, 7, 88, 2, 2, 29326, 4414, 3, 2, 2, 2, 29327, 29328, 7, 88, 2, 2, 29328, 29329, 7, 67, 2, 2, 29329, 29330, 7, 84, 2, 2, 29330, 29331, 7, 97, 2, 2, 29331, 4416, 3, 2, 2, 2, 29332, 29333, 7, 88, 2, 2, 29333, 29334, 7, 67, 2, 2, 29334, 29335, 7, 84, 2, 2, 29335, 29336, 7, 75, 2, 2, 29336, 29337, 7, 67, 2, 2, 29337, 29338, 7, 80, 2, 2, 29338, 29339, 7, 69, 2, 2, 29339, 29340, 7, 71, 2, 2, 29340, 4418, 3, 2, 2, 2, 29341, 29342, 7, 78, 2, 2, 29342, 29343, 7, 71, 2, 2, 29343, 29344, 7, 67, 2, 2, 29344, 29345, 7, 85, 2, 2, 29345, 29346, 7, 86, 2, 2, 29346, 4420, 3, 2, 2, 2, 29347, 29348, 7, 73, 2, 2, 29348, 29349, 7, 84, 2, 2, 29349, 29350, 7, 71, 2, 2, 29350, 29351, 7, 67, 2, 2, 29351, 29352, 7, 86, 2, 2, 29352, 29353, 7, 71, 2, 2, 29353, 29354, 7, 85, 2, 2, 29354, 29355, 7, 86, 2, 2, 29355, 4422, 3, 2, 2, 2, 29356, 29357, 7, 86, 2, 2, 29357, 29358, 7, 81, 2, 2, 29358, 29359, 7, 97, 2, 2, 29359, 29360, 7, 70, 2, 2, 29360, 29361, 7, 67, 2, 2, 29361, 29362, 7, 86, 2, 2, 29362, 29363, 7, 71, 2, 2, 29363, 4424, 3, 2, 2, 2, 29364, 29365, 7, 80, 2, 2, 29365, 29372, 7, 41, 2, 2, 29366, 29371, 10, 2, 2, 2, 29367, 29368, 7, 41, 2, 2, 29368, 29371, 7, 41, 2, 2, 29369, 29371, 5, 4535, 2268, 2, 29370, 29366, 3, 2, 2, 2, 29370, 29367, 3, 2, 2, 2, 29370, 29369, 3, 2, 2, 2, 29371, 29374, 3, 2, 2, 2, 29372, 29370, 3, 2, 2, 2, 29372, 29373, 3, 2, 2, 2, 29373, 29375, 3, 2, 2, 2, 29374, 29372, 3, 2, 2, 2, 29375, 29376, 7, 41, 2, 2, 29376, 4426, 3, 2, 2, 2, 29377, 29386, 7, 68, 2, 2, 29378, 29382, 7, 41, 2, 2, 29379, 29381, 9, 3, 2, 2, 29380, 29379, 3, 2, 2, 2, 29381, 29384, 3, 2, 2, 2, 29382, 29380, 3, 2, 2, 2, 29382, 29383, 3, 2, 2, 2, 29383, 29385, 3, 2, 2, 2, 29384, 29382, 3, 2, 2, 2, 29385, 29387, 7, 41, 2, 2, 29386, 29378, 3, 2, 2, 2, 29387, 29388, 3, 2, 2, 2, 29388, 29386, 3, 2, 2, 2, 29388, 29389, 3, 2, 2, 2, 29389, 4428, 3, 2, 2, 2, 29390, 29399, 7, 90, 2, 2, 29391, 29395, 7, 41, 2, 2, 29392, 29394, 9, 4, 2, 2, 29393, 29392, 3, 2, 2, 2, 29394, 29397, 3, 2, 2, 2, 29395, 29393, 3, 2, 2, 2, 29395, 29396, 3, 2, 2, 2, 29396, 29398, 3, 2, 2, 2, 29397, 29395, 3, 2, 2, 2, 29398, 29400, 7, 41, 2, 2, 29399, 29391, 3, 2, 2, 2, 29400, 29401, 3, 2, 2, 2, 29401, 29399, 3, 2, 2, 2, 29401, 29402, 3, 2, 2, 2, 29402, 4430, 3, 2, 2, 2, 29403, 29404, 7, 48, 2, 2, 29404, 29405, 7, 48, 2, 2, 29405, 4432, 3, 2, 2, 2, 29406, 29407, 7, 48, 2, 2, 29407, 4434, 3, 2, 2, 2, 29408, 29410, 9, 5, 2, 2, 29409, 29408, 3, 2, 2, 2, 29410, 29411, 3, 2, 2, 2, 29411, 29409, 3, 2, 2, 2, 29411, 29412, 3, 2, 2, 2, 29412, 4436, 3, 2, 2, 2, 29413, 29426, 5, 4533, 2267, 2, 29414, 29416, 7, 71, 2, 2, 29415, 29417, 9, 6, 2, 2, 29416, 29415, 3, 2, 2, 2, 29416, 29417, 3, 2, 2, 2, 29417, 29424, 3, 2, 2, 2, 29418, 29425, 5, 4533, 2267, 2, 29419, 29421, 9, 5, 2, 2, 29420, 29419, 3, 2, 2, 2, 29421, 29422, 3, 2, 2, 2, 29422, 29420, 3, 2, 2, 2, 29422, 29423, 3, 2, 2, 2, 29423, 29425, 3, 2, 2, 2, 29424, 29418, 3, 2, 2, 2, 29424, 29420, 3, 2, 2, 2, 29425, 29427, 3, 2, 2, 2, 29426, 29414, 3, 2, 2, 2, 29426, 29427, 3, 2, 2, 2, 29427, 29429, 3, 2, 2, 2, 29428, 29430, 9, 7, 2, 2, 29429, 29428, 3, 2, 2, 2, 29429, 29430, 3, 2, 2, 2, 29430, 4438, 3, 2, 2, 2, 29431, 29438, 7, 41, 2, 2, 29432, 29437, 10, 2, 2, 2, 29433, 29434, 7, 41, 2, 2, 29434, 29437, 7, 41, 2, 2, 29435, 29437, 5, 4535, 2268, 2, 29436, 29432, 3, 2, 2, 2, 29436, 29433, 3, 2, 2, 2, 29436, 29435, 3, 2, 2, 2, 29437, 29440, 3, 2, 2, 2, 29438, 29436, 3, 2, 2, 2, 29438, 29439, 3, 2, 2, 2, 29439, 29441, 3, 2, 2, 2, 29440, 29438, 3, 2, 2, 2, 29441, 29442, 7, 41, 2, 2, 29442, 4440, 3, 2, 2, 2, 29443, 29444, 7, 83, 2, 2, 29444, 29453, 7, 41, 2, 2, 29445, 29454, 5, 4443, 2222, 2, 29446, 29454, 5, 4445, 2223, 2, 29447, 29454, 5, 4447, 2224, 2, 29448, 29454, 5, 4449, 2225, 2, 29449, 29454, 5, 4451, 2226, 2, 29450, 29454, 5, 4453, 2227, 2, 29451, 29454, 5, 4455, 2228, 2, 29452, 29454, 5, 4457, 2229, 2, 29453, 29445, 3, 2, 2, 2, 29453, 29446, 3, 2, 2, 2, 29453, 29447, 3, 2, 2, 2, 29453, 29448, 3, 2, 2, 2, 29453, 29449, 3, 2, 2, 2, 29453, 29450, 3, 2, 2, 2, 29453, 29451, 3, 2, 2, 2, 29453, 29452, 3, 2, 2, 2, 29454, 29455, 3, 2, 2, 2, 29455, 29456, 7, 41, 2, 2, 29456, 29457, 3, 2, 2, 2, 29457, 29458, 8, 2221, 2, 2, 29458, 4442, 3, 2, 2, 2, 29459, 29463, 7, 62, 2, 2, 29460, 29462, 11, 2, 2, 2, 29461, 29460, 3, 2, 2, 2, 29462, 29465, 3, 2, 2, 2, 29463, 29464, 3, 2, 2, 2, 29463, 29461, 3, 2, 2, 2, 29464, 29466, 3, 2, 2, 2, 29465, 29463, 3, 2, 2, 2, 29466, 29467, 7, 64, 2, 2, 29467, 4444, 3, 2, 2, 2, 29468, 29472, 7, 125, 2, 2, 29469, 29471, 11, 2, 2, 2, 29470, 29469, 3, 2, 2, 2, 29471, 29474, 3, 2, 2, 2, 29472, 29473, 3, 2, 2, 2, 29472, 29470, 3, 2, 2, 2, 29473, 29475, 3, 2, 2, 2, 29474, 29472, 3, 2, 2, 2, 29475, 29476, 7, 127, 2, 2, 29476, 4446, 3, 2, 2, 2, 29477, 29481, 7, 93, 2, 2, 29478, 29480, 11, 2, 2, 2, 29479, 29478, 3, 2, 2, 2, 29480, 29483, 3, 2, 2, 2, 29481, 29482, 3, 2, 2, 2, 29481, 29479, 3, 2, 2, 2, 29482, 29484, 3, 2, 2, 2, 29483, 29481, 3, 2, 2, 2, 29484, 29485, 7, 95, 2, 2, 29485, 4448, 3, 2, 2, 2, 29486, 29490, 7, 42, 2, 2, 29487, 29489, 11, 2, 2, 2, 29488, 29487, 3, 2, 2, 2, 29489, 29492, 3, 2, 2, 2, 29490, 29491, 3, 2, 2, 2, 29490, 29488, 3, 2, 2, 2, 29491, 29493, 3, 2, 2, 2, 29492, 29490, 3, 2, 2, 2, 29493, 29494, 7, 43, 2, 2, 29494, 4450, 3, 2, 2, 2, 29495, 29499, 7, 35, 2, 2, 29496, 29498, 11, 2, 2, 2, 29497, 29496, 3, 2, 2, 2, 29498, 29501, 3, 2, 2, 2, 29499, 29500, 3, 2, 2, 2, 29499, 29497, 3, 2, 2, 2, 29500, 29502, 3, 2, 2, 2, 29501, 29499, 3, 2, 2, 2, 29502, 29503, 7, 35, 2, 2, 29503, 4452, 3, 2, 2, 2, 29504, 29508, 7, 37, 2, 2, 29505, 29507, 11, 2, 2, 2, 29506, 29505, 3, 2, 2, 2, 29507, 29510, 3, 2, 2, 2, 29508, 29509, 3, 2, 2, 2, 29508, 29506, 3, 2, 2, 2, 29509, 29511, 3, 2, 2, 2, 29510, 29508, 3, 2, 2, 2, 29511, 29512, 7, 37, 2, 2, 29512, 4454, 3, 2, 2, 2, 29513, 29517, 7, 41, 2, 2, 29514, 29516, 11, 2, 2, 2, 29515, 29514, 3, 2, 2, 2, 29516, 29519, 3, 2, 2, 2, 29517, 29518, 3, 2, 2, 2, 29517, 29515, 3, 2, 2, 2, 29518, 29520, 3, 2, 2, 2, 29519, 29517, 3, 2, 2, 2, 29520, 29521, 7, 41, 2, 2, 29521, 4456, 3, 2, 2, 2, 29522, 29526, 7, 36, 2, 2, 29523, 29525, 11, 2, 2, 2, 29524, 29523, 3, 2, 2, 2, 29525, 29528, 3, 2, 2, 2, 29526, 29527, 3, 2, 2, 2, 29526, 29524, 3, 2, 2, 2, 29527, 29529, 3, 2, 2, 2, 29528, 29526, 3, 2, 2, 2, 29529, 29530, 7, 36, 2, 2, 29530, 4458, 3, 2, 2, 2, 29531, 29535, 7, 36, 2, 2, 29532, 29536, 10, 8, 2, 2, 29533, 29534, 7, 36, 2, 2, 29534, 29536, 7, 36, 2, 2, 29535, 29532, 3, 2, 2, 2, 29535, 29533, 3, 2, 2, 2, 29536, 29537, 3, 2, 2, 2, 29537, 29535, 3, 2, 2, 2, 29537, 29538, 3, 2, 2, 2, 29538, 29539, 3, 2, 2, 2, 29539, 29540, 7, 36, 2, 2, 29540, 4460, 3, 2, 2, 2, 29541, 29542, 7, 39, 2, 2, 29542, 4462, 3, 2, 2, 2, 29543, 29544, 7, 40, 2, 2, 29544, 4464, 3, 2, 2, 2, 29545, 29546, 7, 42, 2, 2, 29546, 4466, 3, 2, 2, 2, 29547, 29548, 7, 43, 2, 2, 29548, 4468, 3, 2, 2, 2, 29549, 29550, 7, 44, 2, 2, 29550, 29551, 7, 44, 2, 2, 29551, 4470, 3, 2, 2, 2, 29552, 29553, 7, 44, 2, 2, 29553, 4472, 3, 2, 2, 2, 29554, 29555, 7, 45, 2, 2, 29555, 4474, 3, 2, 2, 2, 29556, 29557, 7, 47, 2, 2, 29557, 4476, 3, 2, 2, 2, 29558, 29559, 7, 46, 2, 2, 29559, 4478, 3, 2, 2, 2, 29560, 29561, 7, 49, 2, 2, 29561, 4480, 3, 2, 2, 2, 29562, 29563, 7, 66, 2, 2, 29563, 4482, 3, 2, 2, 2, 29564, 29565, 7, 60, 2, 2, 29565, 29566, 7, 63, 2, 2, 29566, 4484, 3, 2, 2, 2, 29567, 29568, 7, 60, 2, 2, 29568, 29573, 5, 4531, 2266, 2, 29569, 29572, 5, 4531, 2266, 2, 29570, 29572, 9, 9, 2, 2, 29571, 29569, 3, 2, 2, 2, 29571, 29570, 3, 2, 2, 2, 29572, 29575, 3, 2, 2, 2, 29573, 29571, 3, 2, 2, 2, 29573, 29574, 3, 2, 2, 2, 29574, 29582, 3, 2, 2, 2, 29575, 29573, 3, 2, 2, 2, 29576, 29577, 7, 60, 2, 2, 29577, 29582, 5, 4459, 2230, 2, 29578, 29579, 7, 60, 2, 2, 29579, 29582, 5, 4435, 2218, 2, 29580, 29582, 5, 4529, 2265, 2, 29581, 29567, 3, 2, 2, 2, 29581, 29576, 3, 2, 2, 2, 29581, 29578, 3, 2, 2, 2, 29581, 29580, 3, 2, 2, 2, 29582, 4486, 3, 2, 2, 2, 29583, 29584, 7, 35, 2, 2, 29584, 29592, 7, 63, 2, 2, 29585, 29586, 7, 62, 2, 2, 29586, 29592, 7, 64, 2, 2, 29587, 29588, 7, 96, 2, 2, 29588, 29592, 7, 63, 2, 2, 29589, 29590, 7, 128, 2, 2, 29590, 29592, 7, 63, 2, 2, 29591, 29583, 3, 2, 2, 2, 29591, 29585, 3, 2, 2, 2, 29591, 29587, 3, 2, 2, 2, 29591, 29589, 3, 2, 2, 2, 29592, 4488, 3, 2, 2, 2, 29593, 29594, 7, 96, 2, 2, 29594, 4490, 3, 2, 2, 2, 29595, 29596, 7, 128, 2, 2, 29596, 4492, 3, 2, 2, 2, 29597, 29598, 7, 35, 2, 2, 29598, 4494, 3, 2, 2, 2, 29599, 29600, 7, 64, 2, 2, 29600, 4496, 3, 2, 2, 2, 29601, 29602, 7, 62, 2, 2, 29602, 4498, 3, 2, 2, 2, 29603, 29604, 7, 60, 2, 2, 29604, 4500, 3, 2, 2, 2, 29605, 29606, 7, 61, 2, 2, 29606, 4502, 3, 2, 2, 2, 29607, 29608, 7, 126, 2, 2, 29608, 4504, 3, 2, 2, 2, 29609, 29610, 7, 63, 2, 2, 29610, 4506, 3, 2, 2, 2, 29611, 29612, 7, 93, 2, 2, 29612, 4508, 3, 2, 2, 2, 29613, 29614, 7, 95, 2, 2, 29614, 4510, 3, 2, 2, 2, 29615, 29616, 7, 97, 2, 2, 29616, 4512, 3, 2, 2, 2, 29617, 29618, 7, 47, 2, 2, 29618, 29619, 7, 47, 2, 2, 29619, 29623, 3, 2, 2, 2, 29620, 29622, 10, 10, 2, 2, 29621, 29620, 3, 2, 2, 2, 29622, 29625, 3, 2, 2, 2, 29623, 29621, 3, 2, 2, 2, 29623, 29624, 3, 2, 2, 2, 29624, 29626, 3, 2, 2, 2, 29625, 29623, 3, 2, 2, 2, 29626, 29627, 5, 4527, 2264, 2, 29627, 29628, 3, 2, 2, 2, 29628, 29629, 8, 2257, 3, 2, 29629, 4514, 3, 2, 2, 2, 29630, 29631, 7, 49, 2, 2, 29631, 29632, 7, 44, 2, 2, 29632, 29636, 3, 2, 2, 2, 29633, 29635, 11, 2, 2, 2, 29634, 29633, 3, 2, 2, 2, 29635, 29638, 3, 2, 2, 2, 29636, 29637, 3, 2, 2, 2, 29636, 29634, 3, 2, 2, 2, 29637, 29639, 3, 2, 2, 2, 29638, 29636, 3, 2, 2, 2, 29639, 29640, 7, 44, 2, 2, 29640, 29641, 7, 49, 2, 2, 29641, 29642, 3, 2, 2, 2, 29642, 29643, 8, 2258, 3, 2, 29643, 4516, 3, 2, 2, 2, 29644, 29645, 7, 84, 2, 2, 29645, 29646, 7, 71, 2, 2, 29646, 29647, 7, 79, 2, 2, 29647, 29648, 3, 2, 2, 2, 29648, 29652, 6, 2259, 2, 2, 29649, 29650, 7, 67, 2, 2, 29650, 29651, 7, 84, 2, 2, 29651, 29653, 7, 77, 2, 2, 29652, 29649, 3, 2, 2, 2, 29652, 29653, 3, 2, 2, 2, 29653, 29661, 3, 2, 2, 2, 29654, 29658, 7, 34, 2, 2, 29655, 29657, 10, 10, 2, 2, 29656, 29655, 3, 2, 2, 2, 29657, 29660, 3, 2, 2, 2, 29658, 29656, 3, 2, 2, 2, 29658, 29659, 3, 2, 2, 2, 29659, 29662, 3, 2, 2, 2, 29660, 29658, 3, 2, 2, 2, 29661, 29654, 3, 2, 2, 2, 29661, 29662, 3, 2, 2, 2, 29662, 29663, 3, 2, 2, 2, 29663, 29664, 5, 4527, 2264, 2, 29664, 29665, 3, 2, 2, 2, 29665, 29666, 8, 2259, 3, 2, 29666, 4518, 3, 2, 2, 2, 29667, 29668, 7, 82, 2, 2, 29668, 29669, 7, 84, 2, 2, 29669, 29670, 7, 81, 2, 2, 29670, 29671, 3, 2, 2, 2, 29671, 29675, 6, 2260, 3, 2, 29672, 29673, 7, 79, 2, 2, 29673, 29674, 7, 82, 2, 2, 29674, 29676, 7, 86, 2, 2, 29675, 29672, 3, 2, 2, 2, 29675, 29676, 3, 2, 2, 2, 29676, 29684, 3, 2, 2, 2, 29677, 29681, 7, 34, 2, 2, 29678, 29680, 10, 10, 2, 2, 29679, 29678, 3, 2, 2, 2, 29680, 29683, 3, 2, 2, 2, 29681, 29679, 3, 2, 2, 2, 29681, 29682, 3, 2, 2, 2, 29682, 29685, 3, 2, 2, 2, 29683, 29681, 3, 2, 2, 2, 29684, 29677, 3, 2, 2, 2, 29684, 29685, 3, 2, 2, 2, 29685, 29686, 3, 2, 2, 2, 29686, 29687, 5, 4527, 2264, 2, 29687, 4520, 3, 2, 2, 2, 29688, 29689, 7, 66, 2, 2, 29689, 29691, 6, 2261, 4, 2, 29690, 29692, 7, 66, 2, 2, 29691, 29690, 3, 2, 2, 2, 29691, 29692, 3, 2, 2, 2, 29692, 29696, 3, 2, 2, 2, 29693, 29695, 10, 10, 2, 2, 29694, 29693, 3, 2, 2, 2, 29695, 29698, 3, 2, 2, 2, 29696, 29694, 3, 2, 2, 2, 29696, 29697, 3, 2, 2, 2, 29697, 29699, 3, 2, 2, 2, 29698, 29696, 3, 2, 2, 2, 29699, 29700, 5, 4527, 2264, 2, 29700, 4522, 3, 2, 2, 2, 29701, 29706, 5, 4531, 2266, 2, 29702, 29705, 5, 4531, 2266, 2, 29703, 29705, 9, 11, 2, 2, 29704, 29702, 3, 2, 2, 2, 29704, 29703, 3, 2, 2, 2, 29705, 29708, 3, 2, 2, 2, 29706, 29704, 3, 2, 2, 2, 29706, 29707, 3, 2, 2, 2, 29707, 4524, 3, 2, 2, 2, 29708, 29706, 3, 2, 2, 2, 29709, 29711, 9, 12, 2, 2, 29710, 29709, 3, 2, 2, 2, 29711, 29712, 3, 2, 2, 2, 29712, 29710, 3, 2, 2, 2, 29712, 29713, 3, 2, 2, 2, 29713, 29714, 3, 2, 2, 2, 29714, 29715, 8, 2263, 3, 2, 29715, 4526, 3, 2, 2, 2, 29716, 29719, 5, 4535, 2268, 2, 29717, 29719, 7, 2, 2, 3, 29718, 29716, 3, 2, 2, 2, 29718, 29717, 3, 2, 2, 2, 29719, 4528, 3, 2, 2, 2, 29720, 29721, 7, 65, 2, 2, 29721, 4530, 3, 2, 2, 2, 29722, 29723, 9, 13, 2, 2, 29723, 4532, 3, 2, 2, 2, 29724, 29726, 5, 4435, 2218, 2, 29725, 29724, 3, 2, 2, 2, 29726, 29729, 3, 2, 2, 2, 29727, 29725, 3, 2, 2, 2, 29727, 29728, 3, 2, 2, 2, 29728, 29731, 3, 2, 2, 2, 29729, 29727, 3, 2, 2, 2, 29730, 29732, 7, 48, 2, 2, 29731, 29730, 3, 2, 2, 2, 29731, 29732, 3, 2, 2, 2, 29732, 29734, 3, 2, 2, 2, 29733, 29735, 5, 4435, 2218, 2, 29734, 29733, 3, 2, 2, 2, 29735, 29736, 3, 2, 2, 2, 29736, 29734, 3, 2, 2, 2, 29736, 29737, 3, 2, 2, 2, 29737, 4534, 3, 2, 2, 2, 29738, 29740, 7, 15, 2, 2, 29739, 29738, 3, 2, 2, 2, 29739, 29740, 3, 2, 2, 2, 29740, 29741, 3, 2, 2, 2, 29741, 29742, 7, 12, 2, 2, 29742, 4536, 3, 2, 2, 2, 29743, 29744, 9, 14, 2, 2, 29744, 4538, 3, 2, 2, 2, 56, 2, 18048, 18061, 18075, 18113, 18129, 18144, 29370, 29372, 29382, 29388, 29395, 29401, 29411, 29416, 29422, 29424, 29426, 29429, 29436, 29438, 29453, 29463, 29472, 29481, 29490, 29499, 29508, 29517, 29526, 29535, 29537, 29571, 29573, 29581, 29591, 29623, 29636, 29652, 29658, 29661, 29675, 29681, 29684, 29691, 29696, 29704, 29706, 29712, 29718, 29727, 29731, 29736, 29739, 4, 9, 2221, 2, 2, 3, 2]
\ No newline at end of file
diff --git a/src/lib/plsql/PlSqlLexer.js b/src/lib/plsql/PlSqlLexer.js
new file mode 100644
index 0000000..fee16dc
--- /dev/null
+++ b/src/lib/plsql/PlSqlLexer.js
@@ -0,0 +1,23834 @@
+// Generated from /Users/ziv/Workspace/dt-sql-parser/src/grammar/plsql/PlSqlLexer.g4 by ANTLR 4.8
+// jshint ignore: start
+var antlr4 = require('antlr4/index');
+
+
+var PlSqlBaseLexer = require('./PlSqlBaseLexer').PlSqlBaseLexer;
+
+
+var serializedATN = ["\u0003\u608b\ua72a\u8133\ub9ed\u417c\u3be7\u7786\u5964",
+ "\u0002\u08cf\u7431\b\u0001\u0004\u0002\t\u0002\u0004\u0003\t\u0003\u0004",
+ "\u0004\t\u0004\u0004\u0005\t\u0005\u0004\u0006\t\u0006\u0004\u0007\t",
+ "\u0007\u0004\b\t\b\u0004\t\t\t\u0004\n\t\n\u0004\u000b\t\u000b\u0004",
+ "\f\t\f\u0004\r\t\r\u0004\u000e\t\u000e\u0004\u000f\t\u000f\u0004\u0010",
+ "\t\u0010\u0004\u0011\t\u0011\u0004\u0012\t\u0012\u0004\u0013\t\u0013",
+ "\u0004\u0014\t\u0014\u0004\u0015\t\u0015\u0004\u0016\t\u0016\u0004\u0017",
+ "\t\u0017\u0004\u0018\t\u0018\u0004\u0019\t\u0019\u0004\u001a\t\u001a",
+ "\u0004\u001b\t\u001b\u0004\u001c\t\u001c\u0004\u001d\t\u001d\u0004\u001e",
+ "\t\u001e\u0004\u001f\t\u001f\u0004 \t \u0004!\t!\u0004\"\t\"\u0004#",
+ "\t#\u0004$\t$\u0004%\t%\u0004&\t&\u0004\'\t\'\u0004(\t(\u0004)\t)\u0004",
+ "*\t*\u0004+\t+\u0004,\t,\u0004-\t-\u0004.\t.\u0004/\t/\u00040\t0\u0004",
+ "1\t1\u00042\t2\u00043\t3\u00044\t4\u00045\t5\u00046\t6\u00047\t7\u0004",
+ "8\t8\u00049\t9\u0004:\t:\u0004;\t;\u0004<\t<\u0004=\t=\u0004>\t>\u0004",
+ "?\t?\u0004@\t@\u0004A\tA\u0004B\tB\u0004C\tC\u0004D\tD\u0004E\tE\u0004",
+ "F\tF\u0004G\tG\u0004H\tH\u0004I\tI\u0004J\tJ\u0004K\tK\u0004L\tL\u0004",
+ "M\tM\u0004N\tN\u0004O\tO\u0004P\tP\u0004Q\tQ\u0004R\tR\u0004S\tS\u0004",
+ "T\tT\u0004U\tU\u0004V\tV\u0004W\tW\u0004X\tX\u0004Y\tY\u0004Z\tZ\u0004",
+ "[\t[\u0004\\\t\\\u0004]\t]\u0004^\t^\u0004_\t_\u0004`\t`\u0004a\ta\u0004",
+ "b\tb\u0004c\tc\u0004d\td\u0004e\te\u0004f\tf\u0004g\tg\u0004h\th\u0004",
+ "i\ti\u0004j\tj\u0004k\tk\u0004l\tl\u0004m\tm\u0004n\tn\u0004o\to\u0004",
+ "p\tp\u0004q\tq\u0004r\tr\u0004s\ts\u0004t\tt\u0004u\tu\u0004v\tv\u0004",
+ "w\tw\u0004x\tx\u0004y\ty\u0004z\tz\u0004{\t{\u0004|\t|\u0004}\t}\u0004",
+ "~\t~\u0004\u007f\t\u007f\u0004\u0080\t\u0080\u0004\u0081\t\u0081\u0004",
+ "\u0082\t\u0082\u0004\u0083\t\u0083\u0004\u0084\t\u0084\u0004\u0085\t",
+ "\u0085\u0004\u0086\t\u0086\u0004\u0087\t\u0087\u0004\u0088\t\u0088\u0004",
+ "\u0089\t\u0089\u0004\u008a\t\u008a\u0004\u008b\t\u008b\u0004\u008c\t",
+ "\u008c\u0004\u008d\t\u008d\u0004\u008e\t\u008e\u0004\u008f\t\u008f\u0004",
+ "\u0090\t\u0090\u0004\u0091\t\u0091\u0004\u0092\t\u0092\u0004\u0093\t",
+ "\u0093\u0004\u0094\t\u0094\u0004\u0095\t\u0095\u0004\u0096\t\u0096\u0004",
+ "\u0097\t\u0097\u0004\u0098\t\u0098\u0004\u0099\t\u0099\u0004\u009a\t",
+ "\u009a\u0004\u009b\t\u009b\u0004\u009c\t\u009c\u0004\u009d\t\u009d\u0004",
+ "\u009e\t\u009e\u0004\u009f\t\u009f\u0004\u00a0\t\u00a0\u0004\u00a1\t",
+ "\u00a1\u0004\u00a2\t\u00a2\u0004\u00a3\t\u00a3\u0004\u00a4\t\u00a4\u0004",
+ "\u00a5\t\u00a5\u0004\u00a6\t\u00a6\u0004\u00a7\t\u00a7\u0004\u00a8\t",
+ "\u00a8\u0004\u00a9\t\u00a9\u0004\u00aa\t\u00aa\u0004\u00ab\t\u00ab\u0004",
+ "\u00ac\t\u00ac\u0004\u00ad\t\u00ad\u0004\u00ae\t\u00ae\u0004\u00af\t",
+ "\u00af\u0004\u00b0\t\u00b0\u0004\u00b1\t\u00b1\u0004\u00b2\t\u00b2\u0004",
+ "\u00b3\t\u00b3\u0004\u00b4\t\u00b4\u0004\u00b5\t\u00b5\u0004\u00b6\t",
+ "\u00b6\u0004\u00b7\t\u00b7\u0004\u00b8\t\u00b8\u0004\u00b9\t\u00b9\u0004",
+ "\u00ba\t\u00ba\u0004\u00bb\t\u00bb\u0004\u00bc\t\u00bc\u0004\u00bd\t",
+ "\u00bd\u0004\u00be\t\u00be\u0004\u00bf\t\u00bf\u0004\u00c0\t\u00c0\u0004",
+ "\u00c1\t\u00c1\u0004\u00c2\t\u00c2\u0004\u00c3\t\u00c3\u0004\u00c4\t",
+ "\u00c4\u0004\u00c5\t\u00c5\u0004\u00c6\t\u00c6\u0004\u00c7\t\u00c7\u0004",
+ "\u00c8\t\u00c8\u0004\u00c9\t\u00c9\u0004\u00ca\t\u00ca\u0004\u00cb\t",
+ "\u00cb\u0004\u00cc\t\u00cc\u0004\u00cd\t\u00cd\u0004\u00ce\t\u00ce\u0004",
+ "\u00cf\t\u00cf\u0004\u00d0\t\u00d0\u0004\u00d1\t\u00d1\u0004\u00d2\t",
+ "\u00d2\u0004\u00d3\t\u00d3\u0004\u00d4\t\u00d4\u0004\u00d5\t\u00d5\u0004",
+ "\u00d6\t\u00d6\u0004\u00d7\t\u00d7\u0004\u00d8\t\u00d8\u0004\u00d9\t",
+ "\u00d9\u0004\u00da\t\u00da\u0004\u00db\t\u00db\u0004\u00dc\t\u00dc\u0004",
+ "\u00dd\t\u00dd\u0004\u00de\t\u00de\u0004\u00df\t\u00df\u0004\u00e0\t",
+ "\u00e0\u0004\u00e1\t\u00e1\u0004\u00e2\t\u00e2\u0004\u00e3\t\u00e3\u0004",
+ "\u00e4\t\u00e4\u0004\u00e5\t\u00e5\u0004\u00e6\t\u00e6\u0004\u00e7\t",
+ "\u00e7\u0004\u00e8\t\u00e8\u0004\u00e9\t\u00e9\u0004\u00ea\t\u00ea\u0004",
+ "\u00eb\t\u00eb\u0004\u00ec\t\u00ec\u0004\u00ed\t\u00ed\u0004\u00ee\t",
+ "\u00ee\u0004\u00ef\t\u00ef\u0004\u00f0\t\u00f0\u0004\u00f1\t\u00f1\u0004",
+ "\u00f2\t\u00f2\u0004\u00f3\t\u00f3\u0004\u00f4\t\u00f4\u0004\u00f5\t",
+ "\u00f5\u0004\u00f6\t\u00f6\u0004\u00f7\t\u00f7\u0004\u00f8\t\u00f8\u0004",
+ "\u00f9\t\u00f9\u0004\u00fa\t\u00fa\u0004\u00fb\t\u00fb\u0004\u00fc\t",
+ "\u00fc\u0004\u00fd\t\u00fd\u0004\u00fe\t\u00fe\u0004\u00ff\t\u00ff\u0004",
+ "\u0100\t\u0100\u0004\u0101\t\u0101\u0004\u0102\t\u0102\u0004\u0103\t",
+ "\u0103\u0004\u0104\t\u0104\u0004\u0105\t\u0105\u0004\u0106\t\u0106\u0004",
+ "\u0107\t\u0107\u0004\u0108\t\u0108\u0004\u0109\t\u0109\u0004\u010a\t",
+ "\u010a\u0004\u010b\t\u010b\u0004\u010c\t\u010c\u0004\u010d\t\u010d\u0004",
+ "\u010e\t\u010e\u0004\u010f\t\u010f\u0004\u0110\t\u0110\u0004\u0111\t",
+ "\u0111\u0004\u0112\t\u0112\u0004\u0113\t\u0113\u0004\u0114\t\u0114\u0004",
+ "\u0115\t\u0115\u0004\u0116\t\u0116\u0004\u0117\t\u0117\u0004\u0118\t",
+ "\u0118\u0004\u0119\t\u0119\u0004\u011a\t\u011a\u0004\u011b\t\u011b\u0004",
+ "\u011c\t\u011c\u0004\u011d\t\u011d\u0004\u011e\t\u011e\u0004\u011f\t",
+ "\u011f\u0004\u0120\t\u0120\u0004\u0121\t\u0121\u0004\u0122\t\u0122\u0004",
+ "\u0123\t\u0123\u0004\u0124\t\u0124\u0004\u0125\t\u0125\u0004\u0126\t",
+ "\u0126\u0004\u0127\t\u0127\u0004\u0128\t\u0128\u0004\u0129\t\u0129\u0004",
+ "\u012a\t\u012a\u0004\u012b\t\u012b\u0004\u012c\t\u012c\u0004\u012d\t",
+ "\u012d\u0004\u012e\t\u012e\u0004\u012f\t\u012f\u0004\u0130\t\u0130\u0004",
+ "\u0131\t\u0131\u0004\u0132\t\u0132\u0004\u0133\t\u0133\u0004\u0134\t",
+ "\u0134\u0004\u0135\t\u0135\u0004\u0136\t\u0136\u0004\u0137\t\u0137\u0004",
+ "\u0138\t\u0138\u0004\u0139\t\u0139\u0004\u013a\t\u013a\u0004\u013b\t",
+ "\u013b\u0004\u013c\t\u013c\u0004\u013d\t\u013d\u0004\u013e\t\u013e\u0004",
+ "\u013f\t\u013f\u0004\u0140\t\u0140\u0004\u0141\t\u0141\u0004\u0142\t",
+ "\u0142\u0004\u0143\t\u0143\u0004\u0144\t\u0144\u0004\u0145\t\u0145\u0004",
+ "\u0146\t\u0146\u0004\u0147\t\u0147\u0004\u0148\t\u0148\u0004\u0149\t",
+ "\u0149\u0004\u014a\t\u014a\u0004\u014b\t\u014b\u0004\u014c\t\u014c\u0004",
+ "\u014d\t\u014d\u0004\u014e\t\u014e\u0004\u014f\t\u014f\u0004\u0150\t",
+ "\u0150\u0004\u0151\t\u0151\u0004\u0152\t\u0152\u0004\u0153\t\u0153\u0004",
+ "\u0154\t\u0154\u0004\u0155\t\u0155\u0004\u0156\t\u0156\u0004\u0157\t",
+ "\u0157\u0004\u0158\t\u0158\u0004\u0159\t\u0159\u0004\u015a\t\u015a\u0004",
+ "\u015b\t\u015b\u0004\u015c\t\u015c\u0004\u015d\t\u015d\u0004\u015e\t",
+ "\u015e\u0004\u015f\t\u015f\u0004\u0160\t\u0160\u0004\u0161\t\u0161\u0004",
+ "\u0162\t\u0162\u0004\u0163\t\u0163\u0004\u0164\t\u0164\u0004\u0165\t",
+ "\u0165\u0004\u0166\t\u0166\u0004\u0167\t\u0167\u0004\u0168\t\u0168\u0004",
+ "\u0169\t\u0169\u0004\u016a\t\u016a\u0004\u016b\t\u016b\u0004\u016c\t",
+ "\u016c\u0004\u016d\t\u016d\u0004\u016e\t\u016e\u0004\u016f\t\u016f\u0004",
+ "\u0170\t\u0170\u0004\u0171\t\u0171\u0004\u0172\t\u0172\u0004\u0173\t",
+ "\u0173\u0004\u0174\t\u0174\u0004\u0175\t\u0175\u0004\u0176\t\u0176\u0004",
+ "\u0177\t\u0177\u0004\u0178\t\u0178\u0004\u0179\t\u0179\u0004\u017a\t",
+ "\u017a\u0004\u017b\t\u017b\u0004\u017c\t\u017c\u0004\u017d\t\u017d\u0004",
+ "\u017e\t\u017e\u0004\u017f\t\u017f\u0004\u0180\t\u0180\u0004\u0181\t",
+ "\u0181\u0004\u0182\t\u0182\u0004\u0183\t\u0183\u0004\u0184\t\u0184\u0004",
+ "\u0185\t\u0185\u0004\u0186\t\u0186\u0004\u0187\t\u0187\u0004\u0188\t",
+ "\u0188\u0004\u0189\t\u0189\u0004\u018a\t\u018a\u0004\u018b\t\u018b\u0004",
+ "\u018c\t\u018c\u0004\u018d\t\u018d\u0004\u018e\t\u018e\u0004\u018f\t",
+ "\u018f\u0004\u0190\t\u0190\u0004\u0191\t\u0191\u0004\u0192\t\u0192\u0004",
+ "\u0193\t\u0193\u0004\u0194\t\u0194\u0004\u0195\t\u0195\u0004\u0196\t",
+ "\u0196\u0004\u0197\t\u0197\u0004\u0198\t\u0198\u0004\u0199\t\u0199\u0004",
+ "\u019a\t\u019a\u0004\u019b\t\u019b\u0004\u019c\t\u019c\u0004\u019d\t",
+ "\u019d\u0004\u019e\t\u019e\u0004\u019f\t\u019f\u0004\u01a0\t\u01a0\u0004",
+ "\u01a1\t\u01a1\u0004\u01a2\t\u01a2\u0004\u01a3\t\u01a3\u0004\u01a4\t",
+ "\u01a4\u0004\u01a5\t\u01a5\u0004\u01a6\t\u01a6\u0004\u01a7\t\u01a7\u0004",
+ "\u01a8\t\u01a8\u0004\u01a9\t\u01a9\u0004\u01aa\t\u01aa\u0004\u01ab\t",
+ "\u01ab\u0004\u01ac\t\u01ac\u0004\u01ad\t\u01ad\u0004\u01ae\t\u01ae\u0004",
+ "\u01af\t\u01af\u0004\u01b0\t\u01b0\u0004\u01b1\t\u01b1\u0004\u01b2\t",
+ "\u01b2\u0004\u01b3\t\u01b3\u0004\u01b4\t\u01b4\u0004\u01b5\t\u01b5\u0004",
+ "\u01b6\t\u01b6\u0004\u01b7\t\u01b7\u0004\u01b8\t\u01b8\u0004\u01b9\t",
+ "\u01b9\u0004\u01ba\t\u01ba\u0004\u01bb\t\u01bb\u0004\u01bc\t\u01bc\u0004",
+ "\u01bd\t\u01bd\u0004\u01be\t\u01be\u0004\u01bf\t\u01bf\u0004\u01c0\t",
+ "\u01c0\u0004\u01c1\t\u01c1\u0004\u01c2\t\u01c2\u0004\u01c3\t\u01c3\u0004",
+ "\u01c4\t\u01c4\u0004\u01c5\t\u01c5\u0004\u01c6\t\u01c6\u0004\u01c7\t",
+ "\u01c7\u0004\u01c8\t\u01c8\u0004\u01c9\t\u01c9\u0004\u01ca\t\u01ca\u0004",
+ "\u01cb\t\u01cb\u0004\u01cc\t\u01cc\u0004\u01cd\t\u01cd\u0004\u01ce\t",
+ "\u01ce\u0004\u01cf\t\u01cf\u0004\u01d0\t\u01d0\u0004\u01d1\t\u01d1\u0004",
+ "\u01d2\t\u01d2\u0004\u01d3\t\u01d3\u0004\u01d4\t\u01d4\u0004\u01d5\t",
+ "\u01d5\u0004\u01d6\t\u01d6\u0004\u01d7\t\u01d7\u0004\u01d8\t\u01d8\u0004",
+ "\u01d9\t\u01d9\u0004\u01da\t\u01da\u0004\u01db\t\u01db\u0004\u01dc\t",
+ "\u01dc\u0004\u01dd\t\u01dd\u0004\u01de\t\u01de\u0004\u01df\t\u01df\u0004",
+ "\u01e0\t\u01e0\u0004\u01e1\t\u01e1\u0004\u01e2\t\u01e2\u0004\u01e3\t",
+ "\u01e3\u0004\u01e4\t\u01e4\u0004\u01e5\t\u01e5\u0004\u01e6\t\u01e6\u0004",
+ "\u01e7\t\u01e7\u0004\u01e8\t\u01e8\u0004\u01e9\t\u01e9\u0004\u01ea\t",
+ "\u01ea\u0004\u01eb\t\u01eb\u0004\u01ec\t\u01ec\u0004\u01ed\t\u01ed\u0004",
+ "\u01ee\t\u01ee\u0004\u01ef\t\u01ef\u0004\u01f0\t\u01f0\u0004\u01f1\t",
+ "\u01f1\u0004\u01f2\t\u01f2\u0004\u01f3\t\u01f3\u0004\u01f4\t\u01f4\u0004",
+ "\u01f5\t\u01f5\u0004\u01f6\t\u01f6\u0004\u01f7\t\u01f7\u0004\u01f8\t",
+ "\u01f8\u0004\u01f9\t\u01f9\u0004\u01fa\t\u01fa\u0004\u01fb\t\u01fb\u0004",
+ "\u01fc\t\u01fc\u0004\u01fd\t\u01fd\u0004\u01fe\t\u01fe\u0004\u01ff\t",
+ "\u01ff\u0004\u0200\t\u0200\u0004\u0201\t\u0201\u0004\u0202\t\u0202\u0004",
+ "\u0203\t\u0203\u0004\u0204\t\u0204\u0004\u0205\t\u0205\u0004\u0206\t",
+ "\u0206\u0004\u0207\t\u0207\u0004\u0208\t\u0208\u0004\u0209\t\u0209\u0004",
+ "\u020a\t\u020a\u0004\u020b\t\u020b\u0004\u020c\t\u020c\u0004\u020d\t",
+ "\u020d\u0004\u020e\t\u020e\u0004\u020f\t\u020f\u0004\u0210\t\u0210\u0004",
+ "\u0211\t\u0211\u0004\u0212\t\u0212\u0004\u0213\t\u0213\u0004\u0214\t",
+ "\u0214\u0004\u0215\t\u0215\u0004\u0216\t\u0216\u0004\u0217\t\u0217\u0004",
+ "\u0218\t\u0218\u0004\u0219\t\u0219\u0004\u021a\t\u021a\u0004\u021b\t",
+ "\u021b\u0004\u021c\t\u021c\u0004\u021d\t\u021d\u0004\u021e\t\u021e\u0004",
+ "\u021f\t\u021f\u0004\u0220\t\u0220\u0004\u0221\t\u0221\u0004\u0222\t",
+ "\u0222\u0004\u0223\t\u0223\u0004\u0224\t\u0224\u0004\u0225\t\u0225\u0004",
+ "\u0226\t\u0226\u0004\u0227\t\u0227\u0004\u0228\t\u0228\u0004\u0229\t",
+ "\u0229\u0004\u022a\t\u022a\u0004\u022b\t\u022b\u0004\u022c\t\u022c\u0004",
+ "\u022d\t\u022d\u0004\u022e\t\u022e\u0004\u022f\t\u022f\u0004\u0230\t",
+ "\u0230\u0004\u0231\t\u0231\u0004\u0232\t\u0232\u0004\u0233\t\u0233\u0004",
+ "\u0234\t\u0234\u0004\u0235\t\u0235\u0004\u0236\t\u0236\u0004\u0237\t",
+ "\u0237\u0004\u0238\t\u0238\u0004\u0239\t\u0239\u0004\u023a\t\u023a\u0004",
+ "\u023b\t\u023b\u0004\u023c\t\u023c\u0004\u023d\t\u023d\u0004\u023e\t",
+ "\u023e\u0004\u023f\t\u023f\u0004\u0240\t\u0240\u0004\u0241\t\u0241\u0004",
+ "\u0242\t\u0242\u0004\u0243\t\u0243\u0004\u0244\t\u0244\u0004\u0245\t",
+ "\u0245\u0004\u0246\t\u0246\u0004\u0247\t\u0247\u0004\u0248\t\u0248\u0004",
+ "\u0249\t\u0249\u0004\u024a\t\u024a\u0004\u024b\t\u024b\u0004\u024c\t",
+ "\u024c\u0004\u024d\t\u024d\u0004\u024e\t\u024e\u0004\u024f\t\u024f\u0004",
+ "\u0250\t\u0250\u0004\u0251\t\u0251\u0004\u0252\t\u0252\u0004\u0253\t",
+ "\u0253\u0004\u0254\t\u0254\u0004\u0255\t\u0255\u0004\u0256\t\u0256\u0004",
+ "\u0257\t\u0257\u0004\u0258\t\u0258\u0004\u0259\t\u0259\u0004\u025a\t",
+ "\u025a\u0004\u025b\t\u025b\u0004\u025c\t\u025c\u0004\u025d\t\u025d\u0004",
+ "\u025e\t\u025e\u0004\u025f\t\u025f\u0004\u0260\t\u0260\u0004\u0261\t",
+ "\u0261\u0004\u0262\t\u0262\u0004\u0263\t\u0263\u0004\u0264\t\u0264\u0004",
+ "\u0265\t\u0265\u0004\u0266\t\u0266\u0004\u0267\t\u0267\u0004\u0268\t",
+ "\u0268\u0004\u0269\t\u0269\u0004\u026a\t\u026a\u0004\u026b\t\u026b\u0004",
+ "\u026c\t\u026c\u0004\u026d\t\u026d\u0004\u026e\t\u026e\u0004\u026f\t",
+ "\u026f\u0004\u0270\t\u0270\u0004\u0271\t\u0271\u0004\u0272\t\u0272\u0004",
+ "\u0273\t\u0273\u0004\u0274\t\u0274\u0004\u0275\t\u0275\u0004\u0276\t",
+ "\u0276\u0004\u0277\t\u0277\u0004\u0278\t\u0278\u0004\u0279\t\u0279\u0004",
+ "\u027a\t\u027a\u0004\u027b\t\u027b\u0004\u027c\t\u027c\u0004\u027d\t",
+ "\u027d\u0004\u027e\t\u027e\u0004\u027f\t\u027f\u0004\u0280\t\u0280\u0004",
+ "\u0281\t\u0281\u0004\u0282\t\u0282\u0004\u0283\t\u0283\u0004\u0284\t",
+ "\u0284\u0004\u0285\t\u0285\u0004\u0286\t\u0286\u0004\u0287\t\u0287\u0004",
+ "\u0288\t\u0288\u0004\u0289\t\u0289\u0004\u028a\t\u028a\u0004\u028b\t",
+ "\u028b\u0004\u028c\t\u028c\u0004\u028d\t\u028d\u0004\u028e\t\u028e\u0004",
+ "\u028f\t\u028f\u0004\u0290\t\u0290\u0004\u0291\t\u0291\u0004\u0292\t",
+ "\u0292\u0004\u0293\t\u0293\u0004\u0294\t\u0294\u0004\u0295\t\u0295\u0004",
+ "\u0296\t\u0296\u0004\u0297\t\u0297\u0004\u0298\t\u0298\u0004\u0299\t",
+ "\u0299\u0004\u029a\t\u029a\u0004\u029b\t\u029b\u0004\u029c\t\u029c\u0004",
+ "\u029d\t\u029d\u0004\u029e\t\u029e\u0004\u029f\t\u029f\u0004\u02a0\t",
+ "\u02a0\u0004\u02a1\t\u02a1\u0004\u02a2\t\u02a2\u0004\u02a3\t\u02a3\u0004",
+ "\u02a4\t\u02a4\u0004\u02a5\t\u02a5\u0004\u02a6\t\u02a6\u0004\u02a7\t",
+ "\u02a7\u0004\u02a8\t\u02a8\u0004\u02a9\t\u02a9\u0004\u02aa\t\u02aa\u0004",
+ "\u02ab\t\u02ab\u0004\u02ac\t\u02ac\u0004\u02ad\t\u02ad\u0004\u02ae\t",
+ "\u02ae\u0004\u02af\t\u02af\u0004\u02b0\t\u02b0\u0004\u02b1\t\u02b1\u0004",
+ "\u02b2\t\u02b2\u0004\u02b3\t\u02b3\u0004\u02b4\t\u02b4\u0004\u02b5\t",
+ "\u02b5\u0004\u02b6\t\u02b6\u0004\u02b7\t\u02b7\u0004\u02b8\t\u02b8\u0004",
+ "\u02b9\t\u02b9\u0004\u02ba\t\u02ba\u0004\u02bb\t\u02bb\u0004\u02bc\t",
+ "\u02bc\u0004\u02bd\t\u02bd\u0004\u02be\t\u02be\u0004\u02bf\t\u02bf\u0004",
+ "\u02c0\t\u02c0\u0004\u02c1\t\u02c1\u0004\u02c2\t\u02c2\u0004\u02c3\t",
+ "\u02c3\u0004\u02c4\t\u02c4\u0004\u02c5\t\u02c5\u0004\u02c6\t\u02c6\u0004",
+ "\u02c7\t\u02c7\u0004\u02c8\t\u02c8\u0004\u02c9\t\u02c9\u0004\u02ca\t",
+ "\u02ca\u0004\u02cb\t\u02cb\u0004\u02cc\t\u02cc\u0004\u02cd\t\u02cd\u0004",
+ "\u02ce\t\u02ce\u0004\u02cf\t\u02cf\u0004\u02d0\t\u02d0\u0004\u02d1\t",
+ "\u02d1\u0004\u02d2\t\u02d2\u0004\u02d3\t\u02d3\u0004\u02d4\t\u02d4\u0004",
+ "\u02d5\t\u02d5\u0004\u02d6\t\u02d6\u0004\u02d7\t\u02d7\u0004\u02d8\t",
+ "\u02d8\u0004\u02d9\t\u02d9\u0004\u02da\t\u02da\u0004\u02db\t\u02db\u0004",
+ "\u02dc\t\u02dc\u0004\u02dd\t\u02dd\u0004\u02de\t\u02de\u0004\u02df\t",
+ "\u02df\u0004\u02e0\t\u02e0\u0004\u02e1\t\u02e1\u0004\u02e2\t\u02e2\u0004",
+ "\u02e3\t\u02e3\u0004\u02e4\t\u02e4\u0004\u02e5\t\u02e5\u0004\u02e6\t",
+ "\u02e6\u0004\u02e7\t\u02e7\u0004\u02e8\t\u02e8\u0004\u02e9\t\u02e9\u0004",
+ "\u02ea\t\u02ea\u0004\u02eb\t\u02eb\u0004\u02ec\t\u02ec\u0004\u02ed\t",
+ "\u02ed\u0004\u02ee\t\u02ee\u0004\u02ef\t\u02ef\u0004\u02f0\t\u02f0\u0004",
+ "\u02f1\t\u02f1\u0004\u02f2\t\u02f2\u0004\u02f3\t\u02f3\u0004\u02f4\t",
+ "\u02f4\u0004\u02f5\t\u02f5\u0004\u02f6\t\u02f6\u0004\u02f7\t\u02f7\u0004",
+ "\u02f8\t\u02f8\u0004\u02f9\t\u02f9\u0004\u02fa\t\u02fa\u0004\u02fb\t",
+ "\u02fb\u0004\u02fc\t\u02fc\u0004\u02fd\t\u02fd\u0004\u02fe\t\u02fe\u0004",
+ "\u02ff\t\u02ff\u0004\u0300\t\u0300\u0004\u0301\t\u0301\u0004\u0302\t",
+ "\u0302\u0004\u0303\t\u0303\u0004\u0304\t\u0304\u0004\u0305\t\u0305\u0004",
+ "\u0306\t\u0306\u0004\u0307\t\u0307\u0004\u0308\t\u0308\u0004\u0309\t",
+ "\u0309\u0004\u030a\t\u030a\u0004\u030b\t\u030b\u0004\u030c\t\u030c\u0004",
+ "\u030d\t\u030d\u0004\u030e\t\u030e\u0004\u030f\t\u030f\u0004\u0310\t",
+ "\u0310\u0004\u0311\t\u0311\u0004\u0312\t\u0312\u0004\u0313\t\u0313\u0004",
+ "\u0314\t\u0314\u0004\u0315\t\u0315\u0004\u0316\t\u0316\u0004\u0317\t",
+ "\u0317\u0004\u0318\t\u0318\u0004\u0319\t\u0319\u0004\u031a\t\u031a\u0004",
+ "\u031b\t\u031b\u0004\u031c\t\u031c\u0004\u031d\t\u031d\u0004\u031e\t",
+ "\u031e\u0004\u031f\t\u031f\u0004\u0320\t\u0320\u0004\u0321\t\u0321\u0004",
+ "\u0322\t\u0322\u0004\u0323\t\u0323\u0004\u0324\t\u0324\u0004\u0325\t",
+ "\u0325\u0004\u0326\t\u0326\u0004\u0327\t\u0327\u0004\u0328\t\u0328\u0004",
+ "\u0329\t\u0329\u0004\u032a\t\u032a\u0004\u032b\t\u032b\u0004\u032c\t",
+ "\u032c\u0004\u032d\t\u032d\u0004\u032e\t\u032e\u0004\u032f\t\u032f\u0004",
+ "\u0330\t\u0330\u0004\u0331\t\u0331\u0004\u0332\t\u0332\u0004\u0333\t",
+ "\u0333\u0004\u0334\t\u0334\u0004\u0335\t\u0335\u0004\u0336\t\u0336\u0004",
+ "\u0337\t\u0337\u0004\u0338\t\u0338\u0004\u0339\t\u0339\u0004\u033a\t",
+ "\u033a\u0004\u033b\t\u033b\u0004\u033c\t\u033c\u0004\u033d\t\u033d\u0004",
+ "\u033e\t\u033e\u0004\u033f\t\u033f\u0004\u0340\t\u0340\u0004\u0341\t",
+ "\u0341\u0004\u0342\t\u0342\u0004\u0343\t\u0343\u0004\u0344\t\u0344\u0004",
+ "\u0345\t\u0345\u0004\u0346\t\u0346\u0004\u0347\t\u0347\u0004\u0348\t",
+ "\u0348\u0004\u0349\t\u0349\u0004\u034a\t\u034a\u0004\u034b\t\u034b\u0004",
+ "\u034c\t\u034c\u0004\u034d\t\u034d\u0004\u034e\t\u034e\u0004\u034f\t",
+ "\u034f\u0004\u0350\t\u0350\u0004\u0351\t\u0351\u0004\u0352\t\u0352\u0004",
+ "\u0353\t\u0353\u0004\u0354\t\u0354\u0004\u0355\t\u0355\u0004\u0356\t",
+ "\u0356\u0004\u0357\t\u0357\u0004\u0358\t\u0358\u0004\u0359\t\u0359\u0004",
+ "\u035a\t\u035a\u0004\u035b\t\u035b\u0004\u035c\t\u035c\u0004\u035d\t",
+ "\u035d\u0004\u035e\t\u035e\u0004\u035f\t\u035f\u0004\u0360\t\u0360\u0004",
+ "\u0361\t\u0361\u0004\u0362\t\u0362\u0004\u0363\t\u0363\u0004\u0364\t",
+ "\u0364\u0004\u0365\t\u0365\u0004\u0366\t\u0366\u0004\u0367\t\u0367\u0004",
+ "\u0368\t\u0368\u0004\u0369\t\u0369\u0004\u036a\t\u036a\u0004\u036b\t",
+ "\u036b\u0004\u036c\t\u036c\u0004\u036d\t\u036d\u0004\u036e\t\u036e\u0004",
+ "\u036f\t\u036f\u0004\u0370\t\u0370\u0004\u0371\t\u0371\u0004\u0372\t",
+ "\u0372\u0004\u0373\t\u0373\u0004\u0374\t\u0374\u0004\u0375\t\u0375\u0004",
+ "\u0376\t\u0376\u0004\u0377\t\u0377\u0004\u0378\t\u0378\u0004\u0379\t",
+ "\u0379\u0004\u037a\t\u037a\u0004\u037b\t\u037b\u0004\u037c\t\u037c\u0004",
+ "\u037d\t\u037d\u0004\u037e\t\u037e\u0004\u037f\t\u037f\u0004\u0380\t",
+ "\u0380\u0004\u0381\t\u0381\u0004\u0382\t\u0382\u0004\u0383\t\u0383\u0004",
+ "\u0384\t\u0384\u0004\u0385\t\u0385\u0004\u0386\t\u0386\u0004\u0387\t",
+ "\u0387\u0004\u0388\t\u0388\u0004\u0389\t\u0389\u0004\u038a\t\u038a\u0004",
+ "\u038b\t\u038b\u0004\u038c\t\u038c\u0004\u038d\t\u038d\u0004\u038e\t",
+ "\u038e\u0004\u038f\t\u038f\u0004\u0390\t\u0390\u0004\u0391\t\u0391\u0004",
+ "\u0392\t\u0392\u0004\u0393\t\u0393\u0004\u0394\t\u0394\u0004\u0395\t",
+ "\u0395\u0004\u0396\t\u0396\u0004\u0397\t\u0397\u0004\u0398\t\u0398\u0004",
+ "\u0399\t\u0399\u0004\u039a\t\u039a\u0004\u039b\t\u039b\u0004\u039c\t",
+ "\u039c\u0004\u039d\t\u039d\u0004\u039e\t\u039e\u0004\u039f\t\u039f\u0004",
+ "\u03a0\t\u03a0\u0004\u03a1\t\u03a1\u0004\u03a2\t\u03a2\u0004\u03a3\t",
+ "\u03a3\u0004\u03a4\t\u03a4\u0004\u03a5\t\u03a5\u0004\u03a6\t\u03a6\u0004",
+ "\u03a7\t\u03a7\u0004\u03a8\t\u03a8\u0004\u03a9\t\u03a9\u0004\u03aa\t",
+ "\u03aa\u0004\u03ab\t\u03ab\u0004\u03ac\t\u03ac\u0004\u03ad\t\u03ad\u0004",
+ "\u03ae\t\u03ae\u0004\u03af\t\u03af\u0004\u03b0\t\u03b0\u0004\u03b1\t",
+ "\u03b1\u0004\u03b2\t\u03b2\u0004\u03b3\t\u03b3\u0004\u03b4\t\u03b4\u0004",
+ "\u03b5\t\u03b5\u0004\u03b6\t\u03b6\u0004\u03b7\t\u03b7\u0004\u03b8\t",
+ "\u03b8\u0004\u03b9\t\u03b9\u0004\u03ba\t\u03ba\u0004\u03bb\t\u03bb\u0004",
+ "\u03bc\t\u03bc\u0004\u03bd\t\u03bd\u0004\u03be\t\u03be\u0004\u03bf\t",
+ "\u03bf\u0004\u03c0\t\u03c0\u0004\u03c1\t\u03c1\u0004\u03c2\t\u03c2\u0004",
+ "\u03c3\t\u03c3\u0004\u03c4\t\u03c4\u0004\u03c5\t\u03c5\u0004\u03c6\t",
+ "\u03c6\u0004\u03c7\t\u03c7\u0004\u03c8\t\u03c8\u0004\u03c9\t\u03c9\u0004",
+ "\u03ca\t\u03ca\u0004\u03cb\t\u03cb\u0004\u03cc\t\u03cc\u0004\u03cd\t",
+ "\u03cd\u0004\u03ce\t\u03ce\u0004\u03cf\t\u03cf\u0004\u03d0\t\u03d0\u0004",
+ "\u03d1\t\u03d1\u0004\u03d2\t\u03d2\u0004\u03d3\t\u03d3\u0004\u03d4\t",
+ "\u03d4\u0004\u03d5\t\u03d5\u0004\u03d6\t\u03d6\u0004\u03d7\t\u03d7\u0004",
+ "\u03d8\t\u03d8\u0004\u03d9\t\u03d9\u0004\u03da\t\u03da\u0004\u03db\t",
+ "\u03db\u0004\u03dc\t\u03dc\u0004\u03dd\t\u03dd\u0004\u03de\t\u03de\u0004",
+ "\u03df\t\u03df\u0004\u03e0\t\u03e0\u0004\u03e1\t\u03e1\u0004\u03e2\t",
+ "\u03e2\u0004\u03e3\t\u03e3\u0004\u03e4\t\u03e4\u0004\u03e5\t\u03e5\u0004",
+ "\u03e6\t\u03e6\u0004\u03e7\t\u03e7\u0004\u03e8\t\u03e8\u0004\u03e9\t",
+ "\u03e9\u0004\u03ea\t\u03ea\u0004\u03eb\t\u03eb\u0004\u03ec\t\u03ec\u0004",
+ "\u03ed\t\u03ed\u0004\u03ee\t\u03ee\u0004\u03ef\t\u03ef\u0004\u03f0\t",
+ "\u03f0\u0004\u03f1\t\u03f1\u0004\u03f2\t\u03f2\u0004\u03f3\t\u03f3\u0004",
+ "\u03f4\t\u03f4\u0004\u03f5\t\u03f5\u0004\u03f6\t\u03f6\u0004\u03f7\t",
+ "\u03f7\u0004\u03f8\t\u03f8\u0004\u03f9\t\u03f9\u0004\u03fa\t\u03fa\u0004",
+ "\u03fb\t\u03fb\u0004\u03fc\t\u03fc\u0004\u03fd\t\u03fd\u0004\u03fe\t",
+ "\u03fe\u0004\u03ff\t\u03ff\u0004\u0400\t\u0400\u0004\u0401\t\u0401\u0004",
+ "\u0402\t\u0402\u0004\u0403\t\u0403\u0004\u0404\t\u0404\u0004\u0405\t",
+ "\u0405\u0004\u0406\t\u0406\u0004\u0407\t\u0407\u0004\u0408\t\u0408\u0004",
+ "\u0409\t\u0409\u0004\u040a\t\u040a\u0004\u040b\t\u040b\u0004\u040c\t",
+ "\u040c\u0004\u040d\t\u040d\u0004\u040e\t\u040e\u0004\u040f\t\u040f\u0004",
+ "\u0410\t\u0410\u0004\u0411\t\u0411\u0004\u0412\t\u0412\u0004\u0413\t",
+ "\u0413\u0004\u0414\t\u0414\u0004\u0415\t\u0415\u0004\u0416\t\u0416\u0004",
+ "\u0417\t\u0417\u0004\u0418\t\u0418\u0004\u0419\t\u0419\u0004\u041a\t",
+ "\u041a\u0004\u041b\t\u041b\u0004\u041c\t\u041c\u0004\u041d\t\u041d\u0004",
+ "\u041e\t\u041e\u0004\u041f\t\u041f\u0004\u0420\t\u0420\u0004\u0421\t",
+ "\u0421\u0004\u0422\t\u0422\u0004\u0423\t\u0423\u0004\u0424\t\u0424\u0004",
+ "\u0425\t\u0425\u0004\u0426\t\u0426\u0004\u0427\t\u0427\u0004\u0428\t",
+ "\u0428\u0004\u0429\t\u0429\u0004\u042a\t\u042a\u0004\u042b\t\u042b\u0004",
+ "\u042c\t\u042c\u0004\u042d\t\u042d\u0004\u042e\t\u042e\u0004\u042f\t",
+ "\u042f\u0004\u0430\t\u0430\u0004\u0431\t\u0431\u0004\u0432\t\u0432\u0004",
+ "\u0433\t\u0433\u0004\u0434\t\u0434\u0004\u0435\t\u0435\u0004\u0436\t",
+ "\u0436\u0004\u0437\t\u0437\u0004\u0438\t\u0438\u0004\u0439\t\u0439\u0004",
+ "\u043a\t\u043a\u0004\u043b\t\u043b\u0004\u043c\t\u043c\u0004\u043d\t",
+ "\u043d\u0004\u043e\t\u043e\u0004\u043f\t\u043f\u0004\u0440\t\u0440\u0004",
+ "\u0441\t\u0441\u0004\u0442\t\u0442\u0004\u0443\t\u0443\u0004\u0444\t",
+ "\u0444\u0004\u0445\t\u0445\u0004\u0446\t\u0446\u0004\u0447\t\u0447\u0004",
+ "\u0448\t\u0448\u0004\u0449\t\u0449\u0004\u044a\t\u044a\u0004\u044b\t",
+ "\u044b\u0004\u044c\t\u044c\u0004\u044d\t\u044d\u0004\u044e\t\u044e\u0004",
+ "\u044f\t\u044f\u0004\u0450\t\u0450\u0004\u0451\t\u0451\u0004\u0452\t",
+ "\u0452\u0004\u0453\t\u0453\u0004\u0454\t\u0454\u0004\u0455\t\u0455\u0004",
+ "\u0456\t\u0456\u0004\u0457\t\u0457\u0004\u0458\t\u0458\u0004\u0459\t",
+ "\u0459\u0004\u045a\t\u045a\u0004\u045b\t\u045b\u0004\u045c\t\u045c\u0004",
+ "\u045d\t\u045d\u0004\u045e\t\u045e\u0004\u045f\t\u045f\u0004\u0460\t",
+ "\u0460\u0004\u0461\t\u0461\u0004\u0462\t\u0462\u0004\u0463\t\u0463\u0004",
+ "\u0464\t\u0464\u0004\u0465\t\u0465\u0004\u0466\t\u0466\u0004\u0467\t",
+ "\u0467\u0004\u0468\t\u0468\u0004\u0469\t\u0469\u0004\u046a\t\u046a\u0004",
+ "\u046b\t\u046b\u0004\u046c\t\u046c\u0004\u046d\t\u046d\u0004\u046e\t",
+ "\u046e\u0004\u046f\t\u046f\u0004\u0470\t\u0470\u0004\u0471\t\u0471\u0004",
+ "\u0472\t\u0472\u0004\u0473\t\u0473\u0004\u0474\t\u0474\u0004\u0475\t",
+ "\u0475\u0004\u0476\t\u0476\u0004\u0477\t\u0477\u0004\u0478\t\u0478\u0004",
+ "\u0479\t\u0479\u0004\u047a\t\u047a\u0004\u047b\t\u047b\u0004\u047c\t",
+ "\u047c\u0004\u047d\t\u047d\u0004\u047e\t\u047e\u0004\u047f\t\u047f\u0004",
+ "\u0480\t\u0480\u0004\u0481\t\u0481\u0004\u0482\t\u0482\u0004\u0483\t",
+ "\u0483\u0004\u0484\t\u0484\u0004\u0485\t\u0485\u0004\u0486\t\u0486\u0004",
+ "\u0487\t\u0487\u0004\u0488\t\u0488\u0004\u0489\t\u0489\u0004\u048a\t",
+ "\u048a\u0004\u048b\t\u048b\u0004\u048c\t\u048c\u0004\u048d\t\u048d\u0004",
+ "\u048e\t\u048e\u0004\u048f\t\u048f\u0004\u0490\t\u0490\u0004\u0491\t",
+ "\u0491\u0004\u0492\t\u0492\u0004\u0493\t\u0493\u0004\u0494\t\u0494\u0004",
+ "\u0495\t\u0495\u0004\u0496\t\u0496\u0004\u0497\t\u0497\u0004\u0498\t",
+ "\u0498\u0004\u0499\t\u0499\u0004\u049a\t\u049a\u0004\u049b\t\u049b\u0004",
+ "\u049c\t\u049c\u0004\u049d\t\u049d\u0004\u049e\t\u049e\u0004\u049f\t",
+ "\u049f\u0004\u04a0\t\u04a0\u0004\u04a1\t\u04a1\u0004\u04a2\t\u04a2\u0004",
+ "\u04a3\t\u04a3\u0004\u04a4\t\u04a4\u0004\u04a5\t\u04a5\u0004\u04a6\t",
+ "\u04a6\u0004\u04a7\t\u04a7\u0004\u04a8\t\u04a8\u0004\u04a9\t\u04a9\u0004",
+ "\u04aa\t\u04aa\u0004\u04ab\t\u04ab\u0004\u04ac\t\u04ac\u0004\u04ad\t",
+ "\u04ad\u0004\u04ae\t\u04ae\u0004\u04af\t\u04af\u0004\u04b0\t\u04b0\u0004",
+ "\u04b1\t\u04b1\u0004\u04b2\t\u04b2\u0004\u04b3\t\u04b3\u0004\u04b4\t",
+ "\u04b4\u0004\u04b5\t\u04b5\u0004\u04b6\t\u04b6\u0004\u04b7\t\u04b7\u0004",
+ "\u04b8\t\u04b8\u0004\u04b9\t\u04b9\u0004\u04ba\t\u04ba\u0004\u04bb\t",
+ "\u04bb\u0004\u04bc\t\u04bc\u0004\u04bd\t\u04bd\u0004\u04be\t\u04be\u0004",
+ "\u04bf\t\u04bf\u0004\u04c0\t\u04c0\u0004\u04c1\t\u04c1\u0004\u04c2\t",
+ "\u04c2\u0004\u04c3\t\u04c3\u0004\u04c4\t\u04c4\u0004\u04c5\t\u04c5\u0004",
+ "\u04c6\t\u04c6\u0004\u04c7\t\u04c7\u0004\u04c8\t\u04c8\u0004\u04c9\t",
+ "\u04c9\u0004\u04ca\t\u04ca\u0004\u04cb\t\u04cb\u0004\u04cc\t\u04cc\u0004",
+ "\u04cd\t\u04cd\u0004\u04ce\t\u04ce\u0004\u04cf\t\u04cf\u0004\u04d0\t",
+ "\u04d0\u0004\u04d1\t\u04d1\u0004\u04d2\t\u04d2\u0004\u04d3\t\u04d3\u0004",
+ "\u04d4\t\u04d4\u0004\u04d5\t\u04d5\u0004\u04d6\t\u04d6\u0004\u04d7\t",
+ "\u04d7\u0004\u04d8\t\u04d8\u0004\u04d9\t\u04d9\u0004\u04da\t\u04da\u0004",
+ "\u04db\t\u04db\u0004\u04dc\t\u04dc\u0004\u04dd\t\u04dd\u0004\u04de\t",
+ "\u04de\u0004\u04df\t\u04df\u0004\u04e0\t\u04e0\u0004\u04e1\t\u04e1\u0004",
+ "\u04e2\t\u04e2\u0004\u04e3\t\u04e3\u0004\u04e4\t\u04e4\u0004\u04e5\t",
+ "\u04e5\u0004\u04e6\t\u04e6\u0004\u04e7\t\u04e7\u0004\u04e8\t\u04e8\u0004",
+ "\u04e9\t\u04e9\u0004\u04ea\t\u04ea\u0004\u04eb\t\u04eb\u0004\u04ec\t",
+ "\u04ec\u0004\u04ed\t\u04ed\u0004\u04ee\t\u04ee\u0004\u04ef\t\u04ef\u0004",
+ "\u04f0\t\u04f0\u0004\u04f1\t\u04f1\u0004\u04f2\t\u04f2\u0004\u04f3\t",
+ "\u04f3\u0004\u04f4\t\u04f4\u0004\u04f5\t\u04f5\u0004\u04f6\t\u04f6\u0004",
+ "\u04f7\t\u04f7\u0004\u04f8\t\u04f8\u0004\u04f9\t\u04f9\u0004\u04fa\t",
+ "\u04fa\u0004\u04fb\t\u04fb\u0004\u04fc\t\u04fc\u0004\u04fd\t\u04fd\u0004",
+ "\u04fe\t\u04fe\u0004\u04ff\t\u04ff\u0004\u0500\t\u0500\u0004\u0501\t",
+ "\u0501\u0004\u0502\t\u0502\u0004\u0503\t\u0503\u0004\u0504\t\u0504\u0004",
+ "\u0505\t\u0505\u0004\u0506\t\u0506\u0004\u0507\t\u0507\u0004\u0508\t",
+ "\u0508\u0004\u0509\t\u0509\u0004\u050a\t\u050a\u0004\u050b\t\u050b\u0004",
+ "\u050c\t\u050c\u0004\u050d\t\u050d\u0004\u050e\t\u050e\u0004\u050f\t",
+ "\u050f\u0004\u0510\t\u0510\u0004\u0511\t\u0511\u0004\u0512\t\u0512\u0004",
+ "\u0513\t\u0513\u0004\u0514\t\u0514\u0004\u0515\t\u0515\u0004\u0516\t",
+ "\u0516\u0004\u0517\t\u0517\u0004\u0518\t\u0518\u0004\u0519\t\u0519\u0004",
+ "\u051a\t\u051a\u0004\u051b\t\u051b\u0004\u051c\t\u051c\u0004\u051d\t",
+ "\u051d\u0004\u051e\t\u051e\u0004\u051f\t\u051f\u0004\u0520\t\u0520\u0004",
+ "\u0521\t\u0521\u0004\u0522\t\u0522\u0004\u0523\t\u0523\u0004\u0524\t",
+ "\u0524\u0004\u0525\t\u0525\u0004\u0526\t\u0526\u0004\u0527\t\u0527\u0004",
+ "\u0528\t\u0528\u0004\u0529\t\u0529\u0004\u052a\t\u052a\u0004\u052b\t",
+ "\u052b\u0004\u052c\t\u052c\u0004\u052d\t\u052d\u0004\u052e\t\u052e\u0004",
+ "\u052f\t\u052f\u0004\u0530\t\u0530\u0004\u0531\t\u0531\u0004\u0532\t",
+ "\u0532\u0004\u0533\t\u0533\u0004\u0534\t\u0534\u0004\u0535\t\u0535\u0004",
+ "\u0536\t\u0536\u0004\u0537\t\u0537\u0004\u0538\t\u0538\u0004\u0539\t",
+ "\u0539\u0004\u053a\t\u053a\u0004\u053b\t\u053b\u0004\u053c\t\u053c\u0004",
+ "\u053d\t\u053d\u0004\u053e\t\u053e\u0004\u053f\t\u053f\u0004\u0540\t",
+ "\u0540\u0004\u0541\t\u0541\u0004\u0542\t\u0542\u0004\u0543\t\u0543\u0004",
+ "\u0544\t\u0544\u0004\u0545\t\u0545\u0004\u0546\t\u0546\u0004\u0547\t",
+ "\u0547\u0004\u0548\t\u0548\u0004\u0549\t\u0549\u0004\u054a\t\u054a\u0004",
+ "\u054b\t\u054b\u0004\u054c\t\u054c\u0004\u054d\t\u054d\u0004\u054e\t",
+ "\u054e\u0004\u054f\t\u054f\u0004\u0550\t\u0550\u0004\u0551\t\u0551\u0004",
+ "\u0552\t\u0552\u0004\u0553\t\u0553\u0004\u0554\t\u0554\u0004\u0555\t",
+ "\u0555\u0004\u0556\t\u0556\u0004\u0557\t\u0557\u0004\u0558\t\u0558\u0004",
+ "\u0559\t\u0559\u0004\u055a\t\u055a\u0004\u055b\t\u055b\u0004\u055c\t",
+ "\u055c\u0004\u055d\t\u055d\u0004\u055e\t\u055e\u0004\u055f\t\u055f\u0004",
+ "\u0560\t\u0560\u0004\u0561\t\u0561\u0004\u0562\t\u0562\u0004\u0563\t",
+ "\u0563\u0004\u0564\t\u0564\u0004\u0565\t\u0565\u0004\u0566\t\u0566\u0004",
+ "\u0567\t\u0567\u0004\u0568\t\u0568\u0004\u0569\t\u0569\u0004\u056a\t",
+ "\u056a\u0004\u056b\t\u056b\u0004\u056c\t\u056c\u0004\u056d\t\u056d\u0004",
+ "\u056e\t\u056e\u0004\u056f\t\u056f\u0004\u0570\t\u0570\u0004\u0571\t",
+ "\u0571\u0004\u0572\t\u0572\u0004\u0573\t\u0573\u0004\u0574\t\u0574\u0004",
+ "\u0575\t\u0575\u0004\u0576\t\u0576\u0004\u0577\t\u0577\u0004\u0578\t",
+ "\u0578\u0004\u0579\t\u0579\u0004\u057a\t\u057a\u0004\u057b\t\u057b\u0004",
+ "\u057c\t\u057c\u0004\u057d\t\u057d\u0004\u057e\t\u057e\u0004\u057f\t",
+ "\u057f\u0004\u0580\t\u0580\u0004\u0581\t\u0581\u0004\u0582\t\u0582\u0004",
+ "\u0583\t\u0583\u0004\u0584\t\u0584\u0004\u0585\t\u0585\u0004\u0586\t",
+ "\u0586\u0004\u0587\t\u0587\u0004\u0588\t\u0588\u0004\u0589\t\u0589\u0004",
+ "\u058a\t\u058a\u0004\u058b\t\u058b\u0004\u058c\t\u058c\u0004\u058d\t",
+ "\u058d\u0004\u058e\t\u058e\u0004\u058f\t\u058f\u0004\u0590\t\u0590\u0004",
+ "\u0591\t\u0591\u0004\u0592\t\u0592\u0004\u0593\t\u0593\u0004\u0594\t",
+ "\u0594\u0004\u0595\t\u0595\u0004\u0596\t\u0596\u0004\u0597\t\u0597\u0004",
+ "\u0598\t\u0598\u0004\u0599\t\u0599\u0004\u059a\t\u059a\u0004\u059b\t",
+ "\u059b\u0004\u059c\t\u059c\u0004\u059d\t\u059d\u0004\u059e\t\u059e\u0004",
+ "\u059f\t\u059f\u0004\u05a0\t\u05a0\u0004\u05a1\t\u05a1\u0004\u05a2\t",
+ "\u05a2\u0004\u05a3\t\u05a3\u0004\u05a4\t\u05a4\u0004\u05a5\t\u05a5\u0004",
+ "\u05a6\t\u05a6\u0004\u05a7\t\u05a7\u0004\u05a8\t\u05a8\u0004\u05a9\t",
+ "\u05a9\u0004\u05aa\t\u05aa\u0004\u05ab\t\u05ab\u0004\u05ac\t\u05ac\u0004",
+ "\u05ad\t\u05ad\u0004\u05ae\t\u05ae\u0004\u05af\t\u05af\u0004\u05b0\t",
+ "\u05b0\u0004\u05b1\t\u05b1\u0004\u05b2\t\u05b2\u0004\u05b3\t\u05b3\u0004",
+ "\u05b4\t\u05b4\u0004\u05b5\t\u05b5\u0004\u05b6\t\u05b6\u0004\u05b7\t",
+ "\u05b7\u0004\u05b8\t\u05b8\u0004\u05b9\t\u05b9\u0004\u05ba\t\u05ba\u0004",
+ "\u05bb\t\u05bb\u0004\u05bc\t\u05bc\u0004\u05bd\t\u05bd\u0004\u05be\t",
+ "\u05be\u0004\u05bf\t\u05bf\u0004\u05c0\t\u05c0\u0004\u05c1\t\u05c1\u0004",
+ "\u05c2\t\u05c2\u0004\u05c3\t\u05c3\u0004\u05c4\t\u05c4\u0004\u05c5\t",
+ "\u05c5\u0004\u05c6\t\u05c6\u0004\u05c7\t\u05c7\u0004\u05c8\t\u05c8\u0004",
+ "\u05c9\t\u05c9\u0004\u05ca\t\u05ca\u0004\u05cb\t\u05cb\u0004\u05cc\t",
+ "\u05cc\u0004\u05cd\t\u05cd\u0004\u05ce\t\u05ce\u0004\u05cf\t\u05cf\u0004",
+ "\u05d0\t\u05d0\u0004\u05d1\t\u05d1\u0004\u05d2\t\u05d2\u0004\u05d3\t",
+ "\u05d3\u0004\u05d4\t\u05d4\u0004\u05d5\t\u05d5\u0004\u05d6\t\u05d6\u0004",
+ "\u05d7\t\u05d7\u0004\u05d8\t\u05d8\u0004\u05d9\t\u05d9\u0004\u05da\t",
+ "\u05da\u0004\u05db\t\u05db\u0004\u05dc\t\u05dc\u0004\u05dd\t\u05dd\u0004",
+ "\u05de\t\u05de\u0004\u05df\t\u05df\u0004\u05e0\t\u05e0\u0004\u05e1\t",
+ "\u05e1\u0004\u05e2\t\u05e2\u0004\u05e3\t\u05e3\u0004\u05e4\t\u05e4\u0004",
+ "\u05e5\t\u05e5\u0004\u05e6\t\u05e6\u0004\u05e7\t\u05e7\u0004\u05e8\t",
+ "\u05e8\u0004\u05e9\t\u05e9\u0004\u05ea\t\u05ea\u0004\u05eb\t\u05eb\u0004",
+ "\u05ec\t\u05ec\u0004\u05ed\t\u05ed\u0004\u05ee\t\u05ee\u0004\u05ef\t",
+ "\u05ef\u0004\u05f0\t\u05f0\u0004\u05f1\t\u05f1\u0004\u05f2\t\u05f2\u0004",
+ "\u05f3\t\u05f3\u0004\u05f4\t\u05f4\u0004\u05f5\t\u05f5\u0004\u05f6\t",
+ "\u05f6\u0004\u05f7\t\u05f7\u0004\u05f8\t\u05f8\u0004\u05f9\t\u05f9\u0004",
+ "\u05fa\t\u05fa\u0004\u05fb\t\u05fb\u0004\u05fc\t\u05fc\u0004\u05fd\t",
+ "\u05fd\u0004\u05fe\t\u05fe\u0004\u05ff\t\u05ff\u0004\u0600\t\u0600\u0004",
+ "\u0601\t\u0601\u0004\u0602\t\u0602\u0004\u0603\t\u0603\u0004\u0604\t",
+ "\u0604\u0004\u0605\t\u0605\u0004\u0606\t\u0606\u0004\u0607\t\u0607\u0004",
+ "\u0608\t\u0608\u0004\u0609\t\u0609\u0004\u060a\t\u060a\u0004\u060b\t",
+ "\u060b\u0004\u060c\t\u060c\u0004\u060d\t\u060d\u0004\u060e\t\u060e\u0004",
+ "\u060f\t\u060f\u0004\u0610\t\u0610\u0004\u0611\t\u0611\u0004\u0612\t",
+ "\u0612\u0004\u0613\t\u0613\u0004\u0614\t\u0614\u0004\u0615\t\u0615\u0004",
+ "\u0616\t\u0616\u0004\u0617\t\u0617\u0004\u0618\t\u0618\u0004\u0619\t",
+ "\u0619\u0004\u061a\t\u061a\u0004\u061b\t\u061b\u0004\u061c\t\u061c\u0004",
+ "\u061d\t\u061d\u0004\u061e\t\u061e\u0004\u061f\t\u061f\u0004\u0620\t",
+ "\u0620\u0004\u0621\t\u0621\u0004\u0622\t\u0622\u0004\u0623\t\u0623\u0004",
+ "\u0624\t\u0624\u0004\u0625\t\u0625\u0004\u0626\t\u0626\u0004\u0627\t",
+ "\u0627\u0004\u0628\t\u0628\u0004\u0629\t\u0629\u0004\u062a\t\u062a\u0004",
+ "\u062b\t\u062b\u0004\u062c\t\u062c\u0004\u062d\t\u062d\u0004\u062e\t",
+ "\u062e\u0004\u062f\t\u062f\u0004\u0630\t\u0630\u0004\u0631\t\u0631\u0004",
+ "\u0632\t\u0632\u0004\u0633\t\u0633\u0004\u0634\t\u0634\u0004\u0635\t",
+ "\u0635\u0004\u0636\t\u0636\u0004\u0637\t\u0637\u0004\u0638\t\u0638\u0004",
+ "\u0639\t\u0639\u0004\u063a\t\u063a\u0004\u063b\t\u063b\u0004\u063c\t",
+ "\u063c\u0004\u063d\t\u063d\u0004\u063e\t\u063e\u0004\u063f\t\u063f\u0004",
+ "\u0640\t\u0640\u0004\u0641\t\u0641\u0004\u0642\t\u0642\u0004\u0643\t",
+ "\u0643\u0004\u0644\t\u0644\u0004\u0645\t\u0645\u0004\u0646\t\u0646\u0004",
+ "\u0647\t\u0647\u0004\u0648\t\u0648\u0004\u0649\t\u0649\u0004\u064a\t",
+ "\u064a\u0004\u064b\t\u064b\u0004\u064c\t\u064c\u0004\u064d\t\u064d\u0004",
+ "\u064e\t\u064e\u0004\u064f\t\u064f\u0004\u0650\t\u0650\u0004\u0651\t",
+ "\u0651\u0004\u0652\t\u0652\u0004\u0653\t\u0653\u0004\u0654\t\u0654\u0004",
+ "\u0655\t\u0655\u0004\u0656\t\u0656\u0004\u0657\t\u0657\u0004\u0658\t",
+ "\u0658\u0004\u0659\t\u0659\u0004\u065a\t\u065a\u0004\u065b\t\u065b\u0004",
+ "\u065c\t\u065c\u0004\u065d\t\u065d\u0004\u065e\t\u065e\u0004\u065f\t",
+ "\u065f\u0004\u0660\t\u0660\u0004\u0661\t\u0661\u0004\u0662\t\u0662\u0004",
+ "\u0663\t\u0663\u0004\u0664\t\u0664\u0004\u0665\t\u0665\u0004\u0666\t",
+ "\u0666\u0004\u0667\t\u0667\u0004\u0668\t\u0668\u0004\u0669\t\u0669\u0004",
+ "\u066a\t\u066a\u0004\u066b\t\u066b\u0004\u066c\t\u066c\u0004\u066d\t",
+ "\u066d\u0004\u066e\t\u066e\u0004\u066f\t\u066f\u0004\u0670\t\u0670\u0004",
+ "\u0671\t\u0671\u0004\u0672\t\u0672\u0004\u0673\t\u0673\u0004\u0674\t",
+ "\u0674\u0004\u0675\t\u0675\u0004\u0676\t\u0676\u0004\u0677\t\u0677\u0004",
+ "\u0678\t\u0678\u0004\u0679\t\u0679\u0004\u067a\t\u067a\u0004\u067b\t",
+ "\u067b\u0004\u067c\t\u067c\u0004\u067d\t\u067d\u0004\u067e\t\u067e\u0004",
+ "\u067f\t\u067f\u0004\u0680\t\u0680\u0004\u0681\t\u0681\u0004\u0682\t",
+ "\u0682\u0004\u0683\t\u0683\u0004\u0684\t\u0684\u0004\u0685\t\u0685\u0004",
+ "\u0686\t\u0686\u0004\u0687\t\u0687\u0004\u0688\t\u0688\u0004\u0689\t",
+ "\u0689\u0004\u068a\t\u068a\u0004\u068b\t\u068b\u0004\u068c\t\u068c\u0004",
+ "\u068d\t\u068d\u0004\u068e\t\u068e\u0004\u068f\t\u068f\u0004\u0690\t",
+ "\u0690\u0004\u0691\t\u0691\u0004\u0692\t\u0692\u0004\u0693\t\u0693\u0004",
+ "\u0694\t\u0694\u0004\u0695\t\u0695\u0004\u0696\t\u0696\u0004\u0697\t",
+ "\u0697\u0004\u0698\t\u0698\u0004\u0699\t\u0699\u0004\u069a\t\u069a\u0004",
+ "\u069b\t\u069b\u0004\u069c\t\u069c\u0004\u069d\t\u069d\u0004\u069e\t",
+ "\u069e\u0004\u069f\t\u069f\u0004\u06a0\t\u06a0\u0004\u06a1\t\u06a1\u0004",
+ "\u06a2\t\u06a2\u0004\u06a3\t\u06a3\u0004\u06a4\t\u06a4\u0004\u06a5\t",
+ "\u06a5\u0004\u06a6\t\u06a6\u0004\u06a7\t\u06a7\u0004\u06a8\t\u06a8\u0004",
+ "\u06a9\t\u06a9\u0004\u06aa\t\u06aa\u0004\u06ab\t\u06ab\u0004\u06ac\t",
+ "\u06ac\u0004\u06ad\t\u06ad\u0004\u06ae\t\u06ae\u0004\u06af\t\u06af\u0004",
+ "\u06b0\t\u06b0\u0004\u06b1\t\u06b1\u0004\u06b2\t\u06b2\u0004\u06b3\t",
+ "\u06b3\u0004\u06b4\t\u06b4\u0004\u06b5\t\u06b5\u0004\u06b6\t\u06b6\u0004",
+ "\u06b7\t\u06b7\u0004\u06b8\t\u06b8\u0004\u06b9\t\u06b9\u0004\u06ba\t",
+ "\u06ba\u0004\u06bb\t\u06bb\u0004\u06bc\t\u06bc\u0004\u06bd\t\u06bd\u0004",
+ "\u06be\t\u06be\u0004\u06bf\t\u06bf\u0004\u06c0\t\u06c0\u0004\u06c1\t",
+ "\u06c1\u0004\u06c2\t\u06c2\u0004\u06c3\t\u06c3\u0004\u06c4\t\u06c4\u0004",
+ "\u06c5\t\u06c5\u0004\u06c6\t\u06c6\u0004\u06c7\t\u06c7\u0004\u06c8\t",
+ "\u06c8\u0004\u06c9\t\u06c9\u0004\u06ca\t\u06ca\u0004\u06cb\t\u06cb\u0004",
+ "\u06cc\t\u06cc\u0004\u06cd\t\u06cd\u0004\u06ce\t\u06ce\u0004\u06cf\t",
+ "\u06cf\u0004\u06d0\t\u06d0\u0004\u06d1\t\u06d1\u0004\u06d2\t\u06d2\u0004",
+ "\u06d3\t\u06d3\u0004\u06d4\t\u06d4\u0004\u06d5\t\u06d5\u0004\u06d6\t",
+ "\u06d6\u0004\u06d7\t\u06d7\u0004\u06d8\t\u06d8\u0004\u06d9\t\u06d9\u0004",
+ "\u06da\t\u06da\u0004\u06db\t\u06db\u0004\u06dc\t\u06dc\u0004\u06dd\t",
+ "\u06dd\u0004\u06de\t\u06de\u0004\u06df\t\u06df\u0004\u06e0\t\u06e0\u0004",
+ "\u06e1\t\u06e1\u0004\u06e2\t\u06e2\u0004\u06e3\t\u06e3\u0004\u06e4\t",
+ "\u06e4\u0004\u06e5\t\u06e5\u0004\u06e6\t\u06e6\u0004\u06e7\t\u06e7\u0004",
+ "\u06e8\t\u06e8\u0004\u06e9\t\u06e9\u0004\u06ea\t\u06ea\u0004\u06eb\t",
+ "\u06eb\u0004\u06ec\t\u06ec\u0004\u06ed\t\u06ed\u0004\u06ee\t\u06ee\u0004",
+ "\u06ef\t\u06ef\u0004\u06f0\t\u06f0\u0004\u06f1\t\u06f1\u0004\u06f2\t",
+ "\u06f2\u0004\u06f3\t\u06f3\u0004\u06f4\t\u06f4\u0004\u06f5\t\u06f5\u0004",
+ "\u06f6\t\u06f6\u0004\u06f7\t\u06f7\u0004\u06f8\t\u06f8\u0004\u06f9\t",
+ "\u06f9\u0004\u06fa\t\u06fa\u0004\u06fb\t\u06fb\u0004\u06fc\t\u06fc\u0004",
+ "\u06fd\t\u06fd\u0004\u06fe\t\u06fe\u0004\u06ff\t\u06ff\u0004\u0700\t",
+ "\u0700\u0004\u0701\t\u0701\u0004\u0702\t\u0702\u0004\u0703\t\u0703\u0004",
+ "\u0704\t\u0704\u0004\u0705\t\u0705\u0004\u0706\t\u0706\u0004\u0707\t",
+ "\u0707\u0004\u0708\t\u0708\u0004\u0709\t\u0709\u0004\u070a\t\u070a\u0004",
+ "\u070b\t\u070b\u0004\u070c\t\u070c\u0004\u070d\t\u070d\u0004\u070e\t",
+ "\u070e\u0004\u070f\t\u070f\u0004\u0710\t\u0710\u0004\u0711\t\u0711\u0004",
+ "\u0712\t\u0712\u0004\u0713\t\u0713\u0004\u0714\t\u0714\u0004\u0715\t",
+ "\u0715\u0004\u0716\t\u0716\u0004\u0717\t\u0717\u0004\u0718\t\u0718\u0004",
+ "\u0719\t\u0719\u0004\u071a\t\u071a\u0004\u071b\t\u071b\u0004\u071c\t",
+ "\u071c\u0004\u071d\t\u071d\u0004\u071e\t\u071e\u0004\u071f\t\u071f\u0004",
+ "\u0720\t\u0720\u0004\u0721\t\u0721\u0004\u0722\t\u0722\u0004\u0723\t",
+ "\u0723\u0004\u0724\t\u0724\u0004\u0725\t\u0725\u0004\u0726\t\u0726\u0004",
+ "\u0727\t\u0727\u0004\u0728\t\u0728\u0004\u0729\t\u0729\u0004\u072a\t",
+ "\u072a\u0004\u072b\t\u072b\u0004\u072c\t\u072c\u0004\u072d\t\u072d\u0004",
+ "\u072e\t\u072e\u0004\u072f\t\u072f\u0004\u0730\t\u0730\u0004\u0731\t",
+ "\u0731\u0004\u0732\t\u0732\u0004\u0733\t\u0733\u0004\u0734\t\u0734\u0004",
+ "\u0735\t\u0735\u0004\u0736\t\u0736\u0004\u0737\t\u0737\u0004\u0738\t",
+ "\u0738\u0004\u0739\t\u0739\u0004\u073a\t\u073a\u0004\u073b\t\u073b\u0004",
+ "\u073c\t\u073c\u0004\u073d\t\u073d\u0004\u073e\t\u073e\u0004\u073f\t",
+ "\u073f\u0004\u0740\t\u0740\u0004\u0741\t\u0741\u0004\u0742\t\u0742\u0004",
+ "\u0743\t\u0743\u0004\u0744\t\u0744\u0004\u0745\t\u0745\u0004\u0746\t",
+ "\u0746\u0004\u0747\t\u0747\u0004\u0748\t\u0748\u0004\u0749\t\u0749\u0004",
+ "\u074a\t\u074a\u0004\u074b\t\u074b\u0004\u074c\t\u074c\u0004\u074d\t",
+ "\u074d\u0004\u074e\t\u074e\u0004\u074f\t\u074f\u0004\u0750\t\u0750\u0004",
+ "\u0751\t\u0751\u0004\u0752\t\u0752\u0004\u0753\t\u0753\u0004\u0754\t",
+ "\u0754\u0004\u0755\t\u0755\u0004\u0756\t\u0756\u0004\u0757\t\u0757\u0004",
+ "\u0758\t\u0758\u0004\u0759\t\u0759\u0004\u075a\t\u075a\u0004\u075b\t",
+ "\u075b\u0004\u075c\t\u075c\u0004\u075d\t\u075d\u0004\u075e\t\u075e\u0004",
+ "\u075f\t\u075f\u0004\u0760\t\u0760\u0004\u0761\t\u0761\u0004\u0762\t",
+ "\u0762\u0004\u0763\t\u0763\u0004\u0764\t\u0764\u0004\u0765\t\u0765\u0004",
+ "\u0766\t\u0766\u0004\u0767\t\u0767\u0004\u0768\t\u0768\u0004\u0769\t",
+ "\u0769\u0004\u076a\t\u076a\u0004\u076b\t\u076b\u0004\u076c\t\u076c\u0004",
+ "\u076d\t\u076d\u0004\u076e\t\u076e\u0004\u076f\t\u076f\u0004\u0770\t",
+ "\u0770\u0004\u0771\t\u0771\u0004\u0772\t\u0772\u0004\u0773\t\u0773\u0004",
+ "\u0774\t\u0774\u0004\u0775\t\u0775\u0004\u0776\t\u0776\u0004\u0777\t",
+ "\u0777\u0004\u0778\t\u0778\u0004\u0779\t\u0779\u0004\u077a\t\u077a\u0004",
+ "\u077b\t\u077b\u0004\u077c\t\u077c\u0004\u077d\t\u077d\u0004\u077e\t",
+ "\u077e\u0004\u077f\t\u077f\u0004\u0780\t\u0780\u0004\u0781\t\u0781\u0004",
+ "\u0782\t\u0782\u0004\u0783\t\u0783\u0004\u0784\t\u0784\u0004\u0785\t",
+ "\u0785\u0004\u0786\t\u0786\u0004\u0787\t\u0787\u0004\u0788\t\u0788\u0004",
+ "\u0789\t\u0789\u0004\u078a\t\u078a\u0004\u078b\t\u078b\u0004\u078c\t",
+ "\u078c\u0004\u078d\t\u078d\u0004\u078e\t\u078e\u0004\u078f\t\u078f\u0004",
+ "\u0790\t\u0790\u0004\u0791\t\u0791\u0004\u0792\t\u0792\u0004\u0793\t",
+ "\u0793\u0004\u0794\t\u0794\u0004\u0795\t\u0795\u0004\u0796\t\u0796\u0004",
+ "\u0797\t\u0797\u0004\u0798\t\u0798\u0004\u0799\t\u0799\u0004\u079a\t",
+ "\u079a\u0004\u079b\t\u079b\u0004\u079c\t\u079c\u0004\u079d\t\u079d\u0004",
+ "\u079e\t\u079e\u0004\u079f\t\u079f\u0004\u07a0\t\u07a0\u0004\u07a1\t",
+ "\u07a1\u0004\u07a2\t\u07a2\u0004\u07a3\t\u07a3\u0004\u07a4\t\u07a4\u0004",
+ "\u07a5\t\u07a5\u0004\u07a6\t\u07a6\u0004\u07a7\t\u07a7\u0004\u07a8\t",
+ "\u07a8\u0004\u07a9\t\u07a9\u0004\u07aa\t\u07aa\u0004\u07ab\t\u07ab\u0004",
+ "\u07ac\t\u07ac\u0004\u07ad\t\u07ad\u0004\u07ae\t\u07ae\u0004\u07af\t",
+ "\u07af\u0004\u07b0\t\u07b0\u0004\u07b1\t\u07b1\u0004\u07b2\t\u07b2\u0004",
+ "\u07b3\t\u07b3\u0004\u07b4\t\u07b4\u0004\u07b5\t\u07b5\u0004\u07b6\t",
+ "\u07b6\u0004\u07b7\t\u07b7\u0004\u07b8\t\u07b8\u0004\u07b9\t\u07b9\u0004",
+ "\u07ba\t\u07ba\u0004\u07bb\t\u07bb\u0004\u07bc\t\u07bc\u0004\u07bd\t",
+ "\u07bd\u0004\u07be\t\u07be\u0004\u07bf\t\u07bf\u0004\u07c0\t\u07c0\u0004",
+ "\u07c1\t\u07c1\u0004\u07c2\t\u07c2\u0004\u07c3\t\u07c3\u0004\u07c4\t",
+ "\u07c4\u0004\u07c5\t\u07c5\u0004\u07c6\t\u07c6\u0004\u07c7\t\u07c7\u0004",
+ "\u07c8\t\u07c8\u0004\u07c9\t\u07c9\u0004\u07ca\t\u07ca\u0004\u07cb\t",
+ "\u07cb\u0004\u07cc\t\u07cc\u0004\u07cd\t\u07cd\u0004\u07ce\t\u07ce\u0004",
+ "\u07cf\t\u07cf\u0004\u07d0\t\u07d0\u0004\u07d1\t\u07d1\u0004\u07d2\t",
+ "\u07d2\u0004\u07d3\t\u07d3\u0004\u07d4\t\u07d4\u0004\u07d5\t\u07d5\u0004",
+ "\u07d6\t\u07d6\u0004\u07d7\t\u07d7\u0004\u07d8\t\u07d8\u0004\u07d9\t",
+ "\u07d9\u0004\u07da\t\u07da\u0004\u07db\t\u07db\u0004\u07dc\t\u07dc\u0004",
+ "\u07dd\t\u07dd\u0004\u07de\t\u07de\u0004\u07df\t\u07df\u0004\u07e0\t",
+ "\u07e0\u0004\u07e1\t\u07e1\u0004\u07e2\t\u07e2\u0004\u07e3\t\u07e3\u0004",
+ "\u07e4\t\u07e4\u0004\u07e5\t\u07e5\u0004\u07e6\t\u07e6\u0004\u07e7\t",
+ "\u07e7\u0004\u07e8\t\u07e8\u0004\u07e9\t\u07e9\u0004\u07ea\t\u07ea\u0004",
+ "\u07eb\t\u07eb\u0004\u07ec\t\u07ec\u0004\u07ed\t\u07ed\u0004\u07ee\t",
+ "\u07ee\u0004\u07ef\t\u07ef\u0004\u07f0\t\u07f0\u0004\u07f1\t\u07f1\u0004",
+ "\u07f2\t\u07f2\u0004\u07f3\t\u07f3\u0004\u07f4\t\u07f4\u0004\u07f5\t",
+ "\u07f5\u0004\u07f6\t\u07f6\u0004\u07f7\t\u07f7\u0004\u07f8\t\u07f8\u0004",
+ "\u07f9\t\u07f9\u0004\u07fa\t\u07fa\u0004\u07fb\t\u07fb\u0004\u07fc\t",
+ "\u07fc\u0004\u07fd\t\u07fd\u0004\u07fe\t\u07fe\u0004\u07ff\t\u07ff\u0004",
+ "\u0800\t\u0800\u0004\u0801\t\u0801\u0004\u0802\t\u0802\u0004\u0803\t",
+ "\u0803\u0004\u0804\t\u0804\u0004\u0805\t\u0805\u0004\u0806\t\u0806\u0004",
+ "\u0807\t\u0807\u0004\u0808\t\u0808\u0004\u0809\t\u0809\u0004\u080a\t",
+ "\u080a\u0004\u080b\t\u080b\u0004\u080c\t\u080c\u0004\u080d\t\u080d\u0004",
+ "\u080e\t\u080e\u0004\u080f\t\u080f\u0004\u0810\t\u0810\u0004\u0811\t",
+ "\u0811\u0004\u0812\t\u0812\u0004\u0813\t\u0813\u0004\u0814\t\u0814\u0004",
+ "\u0815\t\u0815\u0004\u0816\t\u0816\u0004\u0817\t\u0817\u0004\u0818\t",
+ "\u0818\u0004\u0819\t\u0819\u0004\u081a\t\u081a\u0004\u081b\t\u081b\u0004",
+ "\u081c\t\u081c\u0004\u081d\t\u081d\u0004\u081e\t\u081e\u0004\u081f\t",
+ "\u081f\u0004\u0820\t\u0820\u0004\u0821\t\u0821\u0004\u0822\t\u0822\u0004",
+ "\u0823\t\u0823\u0004\u0824\t\u0824\u0004\u0825\t\u0825\u0004\u0826\t",
+ "\u0826\u0004\u0827\t\u0827\u0004\u0828\t\u0828\u0004\u0829\t\u0829\u0004",
+ "\u082a\t\u082a\u0004\u082b\t\u082b\u0004\u082c\t\u082c\u0004\u082d\t",
+ "\u082d\u0004\u082e\t\u082e\u0004\u082f\t\u082f\u0004\u0830\t\u0830\u0004",
+ "\u0831\t\u0831\u0004\u0832\t\u0832\u0004\u0833\t\u0833\u0004\u0834\t",
+ "\u0834\u0004\u0835\t\u0835\u0004\u0836\t\u0836\u0004\u0837\t\u0837\u0004",
+ "\u0838\t\u0838\u0004\u0839\t\u0839\u0004\u083a\t\u083a\u0004\u083b\t",
+ "\u083b\u0004\u083c\t\u083c\u0004\u083d\t\u083d\u0004\u083e\t\u083e\u0004",
+ "\u083f\t\u083f\u0004\u0840\t\u0840\u0004\u0841\t\u0841\u0004\u0842\t",
+ "\u0842\u0004\u0843\t\u0843\u0004\u0844\t\u0844\u0004\u0845\t\u0845\u0004",
+ "\u0846\t\u0846\u0004\u0847\t\u0847\u0004\u0848\t\u0848\u0004\u0849\t",
+ "\u0849\u0004\u084a\t\u084a\u0004\u084b\t\u084b\u0004\u084c\t\u084c\u0004",
+ "\u084d\t\u084d\u0004\u084e\t\u084e\u0004\u084f\t\u084f\u0004\u0850\t",
+ "\u0850\u0004\u0851\t\u0851\u0004\u0852\t\u0852\u0004\u0853\t\u0853\u0004",
+ "\u0854\t\u0854\u0004\u0855\t\u0855\u0004\u0856\t\u0856\u0004\u0857\t",
+ "\u0857\u0004\u0858\t\u0858\u0004\u0859\t\u0859\u0004\u085a\t\u085a\u0004",
+ "\u085b\t\u085b\u0004\u085c\t\u085c\u0004\u085d\t\u085d\u0004\u085e\t",
+ "\u085e\u0004\u085f\t\u085f\u0004\u0860\t\u0860\u0004\u0861\t\u0861\u0004",
+ "\u0862\t\u0862\u0004\u0863\t\u0863\u0004\u0864\t\u0864\u0004\u0865\t",
+ "\u0865\u0004\u0866\t\u0866\u0004\u0867\t\u0867\u0004\u0868\t\u0868\u0004",
+ "\u0869\t\u0869\u0004\u086a\t\u086a\u0004\u086b\t\u086b\u0004\u086c\t",
+ "\u086c\u0004\u086d\t\u086d\u0004\u086e\t\u086e\u0004\u086f\t\u086f\u0004",
+ "\u0870\t\u0870\u0004\u0871\t\u0871\u0004\u0872\t\u0872\u0004\u0873\t",
+ "\u0873\u0004\u0874\t\u0874\u0004\u0875\t\u0875\u0004\u0876\t\u0876\u0004",
+ "\u0877\t\u0877\u0004\u0878\t\u0878\u0004\u0879\t\u0879\u0004\u087a\t",
+ "\u087a\u0004\u087b\t\u087b\u0004\u087c\t\u087c\u0004\u087d\t\u087d\u0004",
+ "\u087e\t\u087e\u0004\u087f\t\u087f\u0004\u0880\t\u0880\u0004\u0881\t",
+ "\u0881\u0004\u0882\t\u0882\u0004\u0883\t\u0883\u0004\u0884\t\u0884\u0004",
+ "\u0885\t\u0885\u0004\u0886\t\u0886\u0004\u0887\t\u0887\u0004\u0888\t",
+ "\u0888\u0004\u0889\t\u0889\u0004\u088a\t\u088a\u0004\u088b\t\u088b\u0004",
+ "\u088c\t\u088c\u0004\u088d\t\u088d\u0004\u088e\t\u088e\u0004\u088f\t",
+ "\u088f\u0004\u0890\t\u0890\u0004\u0891\t\u0891\u0004\u0892\t\u0892\u0004",
+ "\u0893\t\u0893\u0004\u0894\t\u0894\u0004\u0895\t\u0895\u0004\u0896\t",
+ "\u0896\u0004\u0897\t\u0897\u0004\u0898\t\u0898\u0004\u0899\t\u0899\u0004",
+ "\u089a\t\u089a\u0004\u089b\t\u089b\u0004\u089c\t\u089c\u0004\u089d\t",
+ "\u089d\u0004\u089e\t\u089e\u0004\u089f\t\u089f\u0004\u08a0\t\u08a0\u0004",
+ "\u08a1\t\u08a1\u0004\u08a2\t\u08a2\u0004\u08a3\t\u08a3\u0004\u08a4\t",
+ "\u08a4\u0004\u08a5\t\u08a5\u0004\u08a6\t\u08a6\u0004\u08a7\t\u08a7\u0004",
+ "\u08a8\t\u08a8\u0004\u08a9\t\u08a9\u0004\u08aa\t\u08aa\u0004\u08ab\t",
+ "\u08ab\u0004\u08ac\t\u08ac\u0004\u08ad\t\u08ad\u0004\u08ae\t\u08ae\u0004",
+ "\u08af\t\u08af\u0004\u08b0\t\u08b0\u0004\u08b1\t\u08b1\u0004\u08b2\t",
+ "\u08b2\u0004\u08b3\t\u08b3\u0004\u08b4\t\u08b4\u0004\u08b5\t\u08b5\u0004",
+ "\u08b6\t\u08b6\u0004\u08b7\t\u08b7\u0004\u08b8\t\u08b8\u0004\u08b9\t",
+ "\u08b9\u0004\u08ba\t\u08ba\u0004\u08bb\t\u08bb\u0004\u08bc\t\u08bc\u0004",
+ "\u08bd\t\u08bd\u0004\u08be\t\u08be\u0004\u08bf\t\u08bf\u0004\u08c0\t",
+ "\u08c0\u0004\u08c1\t\u08c1\u0004\u08c2\t\u08c2\u0004\u08c3\t\u08c3\u0004",
+ "\u08c4\t\u08c4\u0004\u08c5\t\u08c5\u0004\u08c6\t\u08c6\u0004\u08c7\t",
+ "\u08c7\u0004\u08c8\t\u08c8\u0004\u08c9\t\u08c9\u0004\u08ca\t\u08ca\u0004",
+ "\u08cb\t\u08cb\u0004\u08cc\t\u08cc\u0004\u08cd\t\u08cd\u0004\u08ce\t",
+ "\u08ce\u0004\u08cf\t\u08cf\u0004\u08d0\t\u08d0\u0004\u08d1\t\u08d1\u0004",
+ "\u08d2\t\u08d2\u0004\u08d3\t\u08d3\u0004\u08d4\t\u08d4\u0004\u08d5\t",
+ "\u08d5\u0004\u08d6\t\u08d6\u0004\u08d7\t\u08d7\u0004\u08d8\t\u08d8\u0004",
+ "\u08d9\t\u08d9\u0004\u08da\t\u08da\u0004\u08db\t\u08db\u0004\u08dc\t",
+ "\u08dc\u0004\u08dd\t\u08dd\u0003\u0002\u0003\u0002\u0003\u0002\u0003",
+ "\u0002\u0003\u0002\u0003\u0002\u0003\u0003\u0003\u0003\u0003\u0003\u0003",
+ "\u0003\u0003\u0004\u0003\u0004\u0003\u0004\u0003\u0004\u0003\u0004\u0003",
+ "\u0004\u0003\u0004\u0003\u0005\u0003\u0005\u0003\u0005\u0003\u0005\u0003",
+ "\u0005\u0003\u0005\u0003\u0005\u0003\u0005\u0003\u0005\u0003\u0006\u0003",
+ "\u0006\u0003\u0006\u0003\u0006\u0003\u0006\u0003\u0006\u0003\u0006\u0003",
+ "\u0006\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003\b\u0003",
+ "\b\u0003\b\u0003\b\u0003\b\u0003\t\u0003\t\u0003\t\u0003\t\u0003\t\u0003",
+ "\t\u0003\t\u0003\n\u0003\n\u0003\n\u0003\n\u0003\n\u0003\n\u0003\n\u0003",
+ "\n\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003",
+ "\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0003\f\u0003\f\u0003\f\u0003",
+ "\f\u0003\f\u0003\f\u0003\f\u0003\r\u0003\r\u0003\r\u0003\r\u0003\r\u0003",
+ "\r\u0003\r\u0003\r\u0003\r\u0003\r\u0003\r\u0003\r\u0003\r\u0003\r\u0003",
+ "\r\u0003\r\u0003\r\u0003\u000e\u0003\u000e\u0003\u000e\u0003\u000e\u0003",
+ "\u000e\u0003\u000e\u0003\u000e\u0003\u000e\u0003\u000e\u0003\u000e\u0003",
+ "\u000e\u0003\u000e\u0003\u000f\u0003\u000f\u0003\u000f\u0003\u000f\u0003",
+ "\u000f\u0003\u000f\u0003\u000f\u0003\u000f\u0003\u000f\u0003\u000f\u0003",
+ "\u000f\u0003\u000f\u0003\u000f\u0003\u000f\u0003\u000f\u0003\u000f\u0003",
+ "\u0010\u0003\u0010\u0003\u0010\u0003\u0010\u0003\u0010\u0003\u0010\u0003",
+ "\u0010\u0003\u0010\u0003\u0010\u0003\u0010\u0003\u0010\u0003\u0011\u0003",
+ "\u0011\u0003\u0011\u0003\u0011\u0003\u0011\u0003\u0011\u0003\u0011\u0003",
+ "\u0011\u0003\u0011\u0003\u0012\u0003\u0012\u0003\u0012\u0003\u0012\u0003",
+ "\u0012\u0003\u0012\u0003\u0012\u0003\u0012\u0003\u0012\u0003\u0012\u0003",
+ "\u0012\u0003\u0012\u0003\u0012\u0003\u0012\u0003\u0013\u0003\u0013\u0003",
+ "\u0013\u0003\u0013\u0003\u0014\u0003\u0014\u0003\u0014\u0003\u0014\u0003",
+ "\u0014\u0003\u0014\u0003\u0014\u0003\u0014\u0003\u0014\u0003\u0014\u0003",
+ "\u0014\u0003\u0015\u0003\u0015\u0003\u0015\u0003\u0015\u0003\u0015\u0003",
+ "\u0015\u0003\u0015\u0003\u0015\u0003\u0015\u0003\u0015\u0003\u0016\u0003",
+ "\u0016\u0003\u0016\u0003\u0016\u0003\u0016\u0003\u0016\u0003\u0016\u0003",
+ "\u0016\u0003\u0016\u0003\u0016\u0003\u0016\u0003\u0017\u0003\u0017\u0003",
+ "\u0017\u0003\u0017\u0003\u0017\u0003\u0017\u0003\u0017\u0003\u0017\u0003",
+ "\u0017\u0003\u0018\u0003\u0018\u0003\u0018\u0003\u0018\u0003\u0018\u0003",
+ "\u0018\u0003\u0019\u0003\u0019\u0003\u0019\u0003\u0019\u0003\u0019\u0003",
+ "\u0019\u0003\u0019\u0003\u0019\u0003\u0019\u0003\u0019\u0003\u0019\u0003",
+ "\u001a\u0003\u001a\u0003\u001a\u0003\u001a\u0003\u001a\u0003\u001a\u0003",
+ "\u001a\u0003\u001a\u0003\u001a\u0003\u001a\u0003\u001a\u0003\u001a\u0003",
+ "\u001a\u0003\u001a\u0003\u001b\u0003\u001b\u0003\u001b\u0003\u001b\u0003",
+ "\u001b\u0003\u001b\u0003\u001b\u0003\u001b\u0003\u001b\u0003\u001c\u0003",
+ "\u001c\u0003\u001c\u0003\u001c\u0003\u001c\u0003\u001c\u0003\u001c\u0003",
+ "\u001d\u0003\u001d\u0003\u001d\u0003\u001d\u0003\u001d\u0003\u001d\u0003",
+ "\u001d\u0003\u001d\u0003\u001e\u0003\u001e\u0003\u001e\u0003\u001e\u0003",
+ "\u001e\u0003\u001e\u0003\u001e\u0003\u001e\u0003\u001e\u0003\u001e\u0003",
+ "\u001e\u0003\u001e\u0003\u001e\u0003\u001e\u0003\u001e\u0003\u001f\u0003",
+ "\u001f\u0003\u001f\u0003\u001f\u0003\u001f\u0003\u001f\u0003 \u0003",
+ " \u0003 \u0003 \u0003 \u0003 \u0003!\u0003!\u0003!\u0003!\u0003!\u0003",
+ "!\u0003!\u0003!\u0003!\u0003!\u0003\"\u0003\"\u0003#\u0003#\u0003#\u0003",
+ "#\u0003#\u0003#\u0003$\u0003$\u0003$\u0003$\u0003%\u0003%\u0003%\u0003",
+ "%\u0003%\u0003%\u0003%\u0003%\u0003%\u0003&\u0003&\u0003&\u0003&\u0003",
+ "&\u0003&\u0003\'\u0003\'\u0003\'\u0003\'\u0003\'\u0003\'\u0003\'\u0003",
+ "\'\u0003\'\u0003(\u0003(\u0003(\u0003(\u0003(\u0003(\u0003)\u0003)\u0003",
+ ")\u0003)\u0003)\u0003)\u0003)\u0003*\u0003*\u0003*\u0003*\u0003*\u0003",
+ "*\u0003*\u0003*\u0003+\u0003+\u0003+\u0003+\u0003+\u0003+\u0003+\u0003",
+ "+\u0003+\u0003+\u0003,\u0003,\u0003,\u0003,\u0003-\u0003-\u0003-\u0003",
+ "-\u0003-\u0003-\u0003-\u0003-\u0003-\u0003-\u0003.\u0003.\u0003.\u0003",
+ ".\u0003.\u0003.\u0003.\u0003.\u0003/\u0003/\u0003/\u0003/\u0003/\u0003",
+ "/\u0003/\u0003/\u0003/\u0003/\u0003/\u0003/\u00030\u00030\u00030\u0003",
+ "0\u00030\u00030\u00030\u00030\u00030\u00031\u00031\u00031\u00031\u0003",
+ "2\u00032\u00032\u00032\u00032\u00032\u00032\u00032\u00032\u00032\u0003",
+ "3\u00033\u00033\u00033\u00033\u00033\u00033\u00034\u00034\u00034\u0003",
+ "4\u00034\u00034\u00034\u00034\u00034\u00034\u00034\u00034\u00034\u0003",
+ "4\u00034\u00035\u00035\u00035\u00035\u00035\u00035\u00035\u00035\u0003",
+ "5\u00035\u00035\u00035\u00035\u00035\u00036\u00036\u00036\u00036\u0003",
+ "6\u00036\u00036\u00036\u00036\u00036\u00036\u00036\u00037\u00037\u0003",
+ "7\u00037\u00037\u00037\u00038\u00038\u00038\u00038\u00038\u00038\u0003",
+ "8\u00038\u00038\u00038\u00038\u00038\u00038\u00038\u00038\u00038\u0003",
+ "8\u00038\u00038\u00038\u00038\u00038\u00039\u00039\u00039\u00039\u0003",
+ "9\u00039\u00039\u00039\u00039\u0003:\u0003:\u0003:\u0003:\u0003:\u0003",
+ ":\u0003:\u0003:\u0003;\u0003;\u0003;\u0003;\u0003;\u0003;\u0003;\u0003",
+ ";\u0003;\u0003<\u0003<\u0003<\u0003<\u0003<\u0003<\u0003<\u0003<\u0003",
+ "<\u0003<\u0003<\u0003=\u0003=\u0003=\u0003=\u0003=\u0003=\u0003>\u0003",
+ ">\u0003>\u0003?\u0003?\u0003?\u0003?\u0003@\u0003@\u0003@\u0003@\u0003",
+ "@\u0003@\u0003A\u0003A\u0003A\u0003A\u0003A\u0003A\u0003A\u0003A\u0003",
+ "A\u0003B\u0003B\u0003B\u0003B\u0003B\u0003C\u0003C\u0003C\u0003C\u0003",
+ "C\u0003D\u0003D\u0003D\u0003D\u0003D\u0003D\u0003D\u0003D\u0003D\u0003",
+ "E\u0003E\u0003E\u0003E\u0003E\u0003E\u0003E\u0003F\u0003F\u0003F\u0003",
+ "F\u0003F\u0003F\u0003F\u0003F\u0003F\u0003F\u0003G\u0003G\u0003G\u0003",
+ "G\u0003G\u0003G\u0003H\u0003H\u0003H\u0003H\u0003H\u0003H\u0003H\u0003",
+ "H\u0003H\u0003H\u0003H\u0003H\u0003H\u0003I\u0003I\u0003I\u0003I\u0003",
+ "I\u0003I\u0003J\u0003J\u0003J\u0003J\u0003J\u0003K\u0003K\u0003K\u0003",
+ "L\u0003L\u0003L\u0003L\u0003L\u0003L\u0003L\u0003L\u0003L\u0003L\u0003",
+ "M\u0003M\u0003M\u0003M\u0003M\u0003M\u0003M\u0003M\u0003M\u0003M\u0003",
+ "M\u0003N\u0003N\u0003N\u0003N\u0003N\u0003N\u0003O\u0003O\u0003O\u0003",
+ "O\u0003O\u0003O\u0003O\u0003O\u0003O\u0003O\u0003O\u0003O\u0003O\u0003",
+ "O\u0003P\u0003P\u0003P\u0003P\u0003P\u0003P\u0003P\u0003P\u0003P\u0003",
+ "P\u0003P\u0003P\u0003P\u0003P\u0003P\u0003Q\u0003Q\u0003Q\u0003Q\u0003",
+ "Q\u0003Q\u0003Q\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003",
+ "R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003R\u0003S\u0003S\u0003S\u0003",
+ "S\u0003S\u0003S\u0003S\u0003S\u0003S\u0003S\u0003S\u0003S\u0003S\u0003",
+ "T\u0003T\u0003T\u0003T\u0003T\u0003U\u0003U\u0003U\u0003U\u0003U\u0003",
+ "U\u0003U\u0003U\u0003U\u0003U\u0003U\u0003V\u0003V\u0003V\u0003V\u0003",
+ "V\u0003V\u0003V\u0003V\u0003V\u0003V\u0003V\u0003W\u0003W\u0003W\u0003",
+ "W\u0003W\u0003W\u0003W\u0003W\u0003W\u0003W\u0003W\u0003X\u0003X\u0003",
+ "X\u0003X\u0003X\u0003X\u0003X\u0003X\u0003X\u0003X\u0003Y\u0003Y\u0003",
+ "Y\u0003Y\u0003Y\u0003Y\u0003Y\u0003Y\u0003Y\u0003Y\u0003Y\u0003Y\u0003",
+ "Y\u0003Y\u0003Y\u0003Y\u0003Y\u0003Y\u0003Y\u0003Y\u0003Y\u0003Y\u0003",
+ "Y\u0003Z\u0003Z\u0003Z\u0003Z\u0003Z\u0003Z\u0003Z\u0003Z\u0003Z\u0003",
+ "Z\u0003Z\u0003Z\u0003Z\u0003Z\u0003Z\u0003Z\u0003[\u0003[\u0003[\u0003",
+ "[\u0003[\u0003[\u0003[\u0003[\u0003[\u0003[\u0003[\u0003[\u0003[\u0003",
+ "\\\u0003\\\u0003\\\u0003\\\u0003\\\u0003]\u0003]\u0003]\u0003]\u0003",
+ "]\u0003]\u0003]\u0003]\u0003]\u0003]\u0003]\u0003^\u0003^\u0003^\u0003",
+ "^\u0003^\u0003^\u0003^\u0003_\u0003_\u0003_\u0003_\u0003_\u0003_\u0003",
+ "_\u0003_\u0003_\u0003_\u0003`\u0003`\u0003`\u0003`\u0003`\u0003`\u0003",
+ "a\u0003a\u0003a\u0003a\u0003a\u0003a\u0003a\u0003a\u0003a\u0003a\u0003",
+ "b\u0003b\u0003b\u0003b\u0003b\u0003b\u0003c\u0003c\u0003c\u0003c\u0003",
+ "c\u0003c\u0003c\u0003c\u0003c\u0003c\u0003d\u0003d\u0003d\u0003d\u0003",
+ "d\u0003d\u0003d\u0003d\u0003d\u0003d\u0003d\u0003d\u0003d\u0003d\u0003",
+ "d\u0003d\u0003d\u0003d\u0003d\u0003d\u0003d\u0003d\u0003d\u0003d\u0003",
+ "d\u0003d\u0003d\u0003d\u0003e\u0003e\u0003e\u0003e\u0003e\u0003e\u0003",
+ "e\u0003f\u0003f\u0003f\u0003f\u0003f\u0003f\u0003f\u0003g\u0003g\u0003",
+ "g\u0003g\u0003g\u0003g\u0003h\u0003h\u0003h\u0003h\u0003h\u0003h\u0003",
+ "h\u0003h\u0003h\u0003h\u0003i\u0003i\u0003i\u0003i\u0003i\u0003i\u0003",
+ "i\u0003i\u0003i\u0003i\u0003i\u0003i\u0003i\u0003i\u0003i\u0003i\u0003",
+ "i\u0003i\u0003i\u0003j\u0003j\u0003j\u0003j\u0003j\u0003j\u0003j\u0003",
+ "k\u0003k\u0003k\u0003k\u0003k\u0003k\u0003k\u0003k\u0003k\u0003l\u0003",
+ "l\u0003l\u0003l\u0003l\u0003l\u0003l\u0003l\u0003m\u0003m\u0003m\u0003",
+ "m\u0003m\u0003m\u0003n\u0003n\u0003n\u0003n\u0003n\u0003n\u0003n\u0003",
+ "n\u0003n\u0003n\u0003o\u0003o\u0003o\u0003o\u0003o\u0003o\u0003o\u0003",
+ "o\u0003p\u0003p\u0003p\u0003p\u0003p\u0003p\u0003p\u0003q\u0003q\u0003",
+ "q\u0003q\u0003q\u0003q\u0003q\u0003q\u0003q\u0003q\u0003q\u0003q\u0003",
+ "q\u0003q\u0003r\u0003r\u0003r\u0003r\u0003r\u0003r\u0003r\u0003r\u0003",
+ "r\u0003r\u0003r\u0003r\u0003r\u0003r\u0003r\u0003r\u0003r\u0003r\u0003",
+ "r\u0003r\u0003r\u0003r\u0003r\u0003s\u0003s\u0003s\u0003s\u0003s\u0003",
+ "s\u0003s\u0003s\u0003s\u0003s\u0003s\u0003s\u0003s\u0003s\u0003s\u0003",
+ "s\u0003s\u0003s\u0003t\u0003t\u0003t\u0003t\u0003t\u0003t\u0003t\u0003",
+ "t\u0003t\u0003t\u0003t\u0003t\u0003t\u0003u\u0003u\u0003u\u0003u\u0003",
+ "u\u0003u\u0003u\u0003u\u0003u\u0003u\u0003u\u0003u\u0003u\u0003u\u0003",
+ "u\u0003u\u0003u\u0003u\u0003u\u0003u\u0003u\u0003u\u0003v\u0003v\u0003",
+ "v\u0003v\u0003v\u0003v\u0003v\u0003v\u0003v\u0003v\u0003v\u0003v\u0003",
+ "v\u0003v\u0003v\u0003v\u0003v\u0003w\u0003w\u0003w\u0003w\u0003w\u0003",
+ "w\u0003w\u0003w\u0003w\u0003w\u0003w\u0003w\u0003w\u0003w\u0003w\u0003",
+ "x\u0003x\u0003x\u0003x\u0003x\u0003x\u0003x\u0003x\u0003x\u0003x\u0003",
+ "x\u0003y\u0003y\u0003y\u0003y\u0003y\u0003y\u0003y\u0003y\u0003z\u0003",
+ "z\u0003z\u0003z\u0003z\u0003z\u0003z\u0003z\u0003z\u0003z\u0003z\u0003",
+ "{\u0003{\u0003{\u0003{\u0003{\u0003{\u0003{\u0003|\u0003|\u0003|\u0003",
+ "|\u0003|\u0003|\u0003|\u0003|\u0003|\u0003|\u0003|\u0003}\u0003}\u0003",
+ "}\u0003}\u0003}\u0003}\u0003}\u0003~\u0003~\u0003~\u0003~\u0003~\u0003",
+ "~\u0003~\u0003~\u0003\u007f\u0003\u007f\u0003\u007f\u0003\u007f\u0003",
+ "\u007f\u0003\u007f\u0003\u007f\u0003\u007f\u0003\u007f\u0003\u007f\u0003",
+ "\u007f\u0003\u007f\u0003\u0080\u0003\u0080\u0003\u0080\u0003\u0080\u0003",
+ "\u0080\u0003\u0081\u0003\u0081\u0003\u0081\u0003\u0081\u0003\u0081\u0003",
+ "\u0082\u0003\u0082\u0003\u0082\u0003\u0082\u0003\u0082\u0003\u0082\u0003",
+ "\u0083\u0003\u0083\u0003\u0083\u0003\u0083\u0003\u0083\u0003\u0083\u0003",
+ "\u0083\u0003\u0083\u0003\u0083\u0003\u0083\u0003\u0083\u0003\u0083\u0003",
+ "\u0084\u0003\u0084\u0003\u0084\u0003\u0084\u0003\u0084\u0003\u0084\u0003",
+ "\u0084\u0003\u0085\u0003\u0085\u0003\u0085\u0003\u0085\u0003\u0085\u0003",
+ "\u0085\u0003\u0085\u0003\u0085\u0003\u0085\u0003\u0085\u0003\u0086\u0003",
+ "\u0086\u0003\u0086\u0003\u0086\u0003\u0086\u0003\u0087\u0003\u0087\u0003",
+ "\u0087\u0003\u0087\u0003\u0087\u0003\u0087\u0003\u0087\u0003\u0087\u0003",
+ "\u0088\u0003\u0088\u0003\u0088\u0003\u0088\u0003\u0088\u0003\u0089\u0003",
+ "\u0089\u0003\u0089\u0003\u0089\u0003\u0089\u0003\u0089\u0003\u008a\u0003",
+ "\u008a\u0003\u008a\u0003\u008a\u0003\u008a\u0003\u008a\u0003\u008a\u0003",
+ "\u008b\u0003\u008b\u0003\u008b\u0003\u008b\u0003\u008b\u0003\u008b\u0003",
+ "\u008b\u0003\u008b\u0003\u008c\u0003\u008c\u0003\u008c\u0003\u008c\u0003",
+ "\u008c\u0003\u008c\u0003\u008c\u0003\u008c\u0003\u008c\u0003\u008c\u0003",
+ "\u008d\u0003\u008d\u0003\u008d\u0003\u008d\u0003\u008d\u0003\u008e\u0003",
+ "\u008e\u0003\u008e\u0003\u008e\u0003\u008e\u0003\u008e\u0003\u008e\u0003",
+ "\u008f\u0003\u008f\u0003\u008f\u0003\u008f\u0003\u008f\u0003\u008f\u0003",
+ "\u008f\u0003\u008f\u0003\u008f\u0003\u008f\u0003\u008f\u0003\u008f\u0003",
+ "\u008f\u0003\u0090\u0003\u0090\u0003\u0090\u0003\u0090\u0003\u0090\u0003",
+ "\u0090\u0003\u0090\u0003\u0090\u0003\u0090\u0003\u0090\u0003\u0090\u0003",
+ "\u0090\u0003\u0091\u0003\u0091\u0003\u0091\u0003\u0091\u0003\u0091\u0003",
+ "\u0091\u0003\u0092\u0003\u0092\u0003\u0092\u0003\u0092\u0003\u0092\u0003",
+ "\u0093\u0003\u0093\u0003\u0093\u0003\u0094\u0003\u0094\u0003\u0094\u0003",
+ "\u0094\u0003\u0094\u0003\u0094\u0003\u0094\u0003\u0094\u0003\u0094\u0003",
+ "\u0094\u0003\u0094\u0003\u0094\u0003\u0094\u0003\u0094\u0003\u0094\u0003",
+ "\u0094\u0003\u0094\u0003\u0094\u0003\u0094\u0003\u0094\u0003\u0094\u0003",
+ "\u0094\u0003\u0094\u0003\u0095\u0003\u0095\u0003\u0095\u0003\u0095\u0003",
+ "\u0095\u0003\u0095\u0003\u0095\u0003\u0095\u0003\u0095\u0003\u0095\u0003",
+ "\u0095\u0003\u0095\u0003\u0096\u0003\u0096\u0003\u0096\u0003\u0096\u0003",
+ "\u0096\u0003\u0097\u0003\u0097\u0003\u0097\u0003\u0097\u0003\u0097\u0003",
+ "\u0097\u0003\u0098\u0003\u0098\u0003\u0098\u0003\u0098\u0003\u0098\u0003",
+ "\u0098\u0003\u0098\u0003\u0098\u0003\u0098\u0003\u0099\u0003\u0099\u0003",
+ "\u0099\u0003\u0099\u0003\u0099\u0003\u0099\u0003\u0099\u0003\u0099\u0003",
+ "\u0099\u0003\u0099\u0003\u0099\u0003\u0099\u0003\u0099\u0003\u0099\u0003",
+ "\u0099\u0003\u0099\u0003\u009a\u0003\u009a\u0003\u009a\u0003\u009a\u0003",
+ "\u009a\u0003\u009a\u0003\u009a\u0003\u009a\u0003\u009a\u0003\u009a\u0003",
+ "\u009a\u0003\u009a\u0003\u009a\u0003\u009a\u0003\u009a\u0003\u009a\u0003",
+ "\u009a\u0003\u009b\u0003\u009b\u0003\u009b\u0003\u009b\u0003\u009b\u0003",
+ "\u009b\u0003\u009b\u0003\u009b\u0003\u009c\u0003\u009c\u0003\u009c\u0003",
+ "\u009c\u0003\u009c\u0003\u009c\u0003\u009c\u0003\u009c\u0003\u009c\u0003",
+ "\u009c\u0003\u009c\u0003\u009d\u0003\u009d\u0003\u009d\u0003\u009d\u0003",
+ "\u009d\u0003\u009d\u0003\u009d\u0003\u009d\u0003\u009d\u0003\u009e\u0003",
+ "\u009e\u0003\u009e\u0003\u009e\u0003\u009e\u0003\u009f\u0003\u009f\u0003",
+ "\u009f\u0003\u009f\u0003\u009f\u0003\u009f\u0003\u009f\u0003\u00a0\u0003",
+ "\u00a0\u0003\u00a0\u0003\u00a0\u0003\u00a0\u0003\u00a0\u0003\u00a0\u0003",
+ "\u00a0\u0003\u00a0\u0003\u00a0\u0003\u00a1\u0003\u00a1\u0003\u00a1\u0003",
+ "\u00a1\u0003\u00a1\u0003\u00a1\u0003\u00a1\u0003\u00a1\u0003\u00a1\u0003",
+ "\u00a2\u0003\u00a2\u0003\u00a2\u0003\u00a2\u0003\u00a2\u0003\u00a2\u0003",
+ "\u00a2\u0003\u00a2\u0003\u00a2\u0003\u00a2\u0003\u00a2\u0003\u00a2\u0003",
+ "\u00a3\u0003\u00a3\u0003\u00a3\u0003\u00a3\u0003\u00a3\u0003\u00a3\u0003",
+ "\u00a3\u0003\u00a3\u0003\u00a4\u0003\u00a4\u0003\u00a4\u0003\u00a4\u0003",
+ "\u00a4\u0003\u00a5\u0003\u00a5\u0003\u00a5\u0003\u00a5\u0003\u00a5\u0003",
+ "\u00a6\u0003\u00a6\u0003\u00a6\u0003\u00a6\u0003\u00a6\u0003\u00a6\u0003",
+ "\u00a6\u0003\u00a6\u0003\u00a6\u0003\u00a7\u0003\u00a7\u0003\u00a7\u0003",
+ "\u00a7\u0003\u00a7\u0003\u00a7\u0003\u00a7\u0003\u00a7\u0003\u00a7\u0003",
+ "\u00a7\u0003\u00a7\u0003\u00a7\u0003\u00a8\u0003\u00a8\u0003\u00a8\u0003",
+ "\u00a8\u0003\u00a8\u0003\u00a9\u0003\u00a9\u0003\u00a9\u0003\u00a9\u0003",
+ "\u00a9\u0003\u00a9\u0003\u00a9\u0003\u00a9\u0003\u00a9\u0003\u00a9\u0003",
+ "\u00a9\u0003\u00a9\u0003\u00a9\u0003\u00a9\u0003\u00a9\u0003\u00a9\u0003",
+ "\u00a9\u0003\u00aa\u0003\u00aa\u0003\u00aa\u0003\u00aa\u0003\u00aa\u0003",
+ "\u00aa\u0003\u00aa\u0003\u00aa\u0003\u00aa\u0003\u00aa\u0003\u00aa\u0003",
+ "\u00aa\u0003\u00ab\u0003\u00ab\u0003\u00ab\u0003\u00ab\u0003\u00ab\u0003",
+ "\u00ab\u0003\u00ac\u0003\u00ac\u0003\u00ac\u0003\u00ac\u0003\u00ac\u0003",
+ "\u00ac\u0003\u00ac\u0003\u00ac\u0003\u00ad\u0003\u00ad\u0003\u00ad\u0003",
+ "\u00ad\u0003\u00ad\u0003\u00ad\u0003\u00ad\u0003\u00ae\u0003\u00ae\u0003",
+ "\u00ae\u0003\u00ae\u0003\u00ae\u0003\u00ae\u0003\u00ae\u0003\u00ae\u0003",
+ "\u00ae\u0003\u00ae\u0003\u00ae\u0003\u00ae\u0003\u00ae\u0003\u00ae\u0003",
+ "\u00ae\u0003\u00af\u0003\u00af\u0003\u00af\u0003\u00af\u0003\u00af\u0003",
+ "\u00af\u0003\u00af\u0003\u00af\u0003\u00af\u0003\u00af\u0003\u00af\u0003",
+ "\u00af\u0003\u00af\u0003\u00af\u0003\u00af\u0003\u00af\u0003\u00af\u0003",
+ "\u00af\u0003\u00af\u0003\u00af\u0003\u00af\u0003\u00af\u0003\u00af\u0003",
+ "\u00af\u0003\u00af\u0003\u00af\u0003\u00b0\u0003\u00b0\u0003\u00b0\u0003",
+ "\u00b0\u0003\u00b0\u0003\u00b0\u0003\u00b0\u0003\u00b0\u0003\u00b0\u0003",
+ "\u00b0\u0003\u00b1\u0003\u00b1\u0003\u00b1\u0003\u00b1\u0003\u00b1\u0003",
+ "\u00b2\u0003\u00b2\u0003\u00b2\u0003\u00b2\u0003\u00b2\u0003\u00b2\u0003",
+ "\u00b2\u0003\u00b2\u0003\u00b3\u0003\u00b3\u0003\u00b3\u0003\u00b3\u0003",
+ "\u00b3\u0003\u00b3\u0003\u00b3\u0003\u00b3\u0003\u00b3\u0003\u00b3\u0003",
+ "\u00b3\u0003\u00b3\u0003\u00b4\u0003\u00b4\u0003\u00b4\u0003\u00b4\u0003",
+ "\u00b4\u0003\u00b4\u0003\u00b4\u0003\u00b4\u0003\u00b4\u0003\u00b4\u0003",
+ "\u00b4\u0003\u00b4\u0003\u00b4\u0003\u00b4\u0003\u00b4\u0003\u00b4\u0003",
+ "\u00b4\u0003\u00b4\u0003\u00b5\u0003\u00b5\u0003\u00b5\u0003\u00b5\u0003",
+ "\u00b5\u0003\u00b5\u0003\u00b6\u0003\u00b6\u0003\u00b6\u0003\u00b6\u0003",
+ "\u00b6\u0003\u00b6\u0003\u00b6\u0003\u00b6\u0003\u00b6\u0003\u00b6\u0003",
+ "\u00b6\u0003\u00b7\u0003\u00b7\u0003\u00b7\u0003\u00b7\u0003\u00b7\u0003",
+ "\u00b7\u0003\u00b8\u0003\u00b8\u0003\u00b8\u0003\u00b8\u0003\u00b8\u0003",
+ "\u00b8\u0003\u00b8\u0003\u00b9\u0003\u00b9\u0003\u00b9\u0003\u00b9\u0003",
+ "\u00ba\u0003\u00ba\u0003\u00ba\u0003\u00ba\u0003\u00ba\u0003\u00ba\u0003",
+ "\u00bb\u0003\u00bb\u0003\u00bb\u0003\u00bb\u0003\u00bb\u0003\u00bb\u0003",
+ "\u00bc\u0003\u00bc\u0003\u00bc\u0003\u00bc\u0003\u00bc\u0003\u00bc\u0003",
+ "\u00bc\u0003\u00bc\u0003\u00bc\u0003\u00bc\u0003\u00bc\u0003\u00bd\u0003",
+ "\u00bd\u0003\u00bd\u0003\u00bd\u0003\u00bd\u0003\u00bd\u0003\u00bd\u0003",
+ "\u00bd\u0003\u00be\u0003\u00be\u0003\u00be\u0003\u00be\u0003\u00be\u0003",
+ "\u00be\u0003\u00bf\u0003\u00bf\u0003\u00c0\u0003\u00c0\u0003\u00c0\u0003",
+ "\u00c0\u0003\u00c0\u0003\u00c0\u0003\u00c0\u0003\u00c1\u0003\u00c1\u0003",
+ "\u00c1\u0003\u00c1\u0003\u00c1\u0003\u00c2\u0003\u00c2\u0003\u00c2\u0003",
+ "\u00c2\u0003\u00c2\u0003\u00c2\u0003\u00c3\u0003\u00c3\u0003\u00c3\u0003",
+ "\u00c3\u0003\u00c3\u0003\u00c3\u0003\u00c3\u0003\u00c3\u0003\u00c3\u0003",
+ "\u00c3\u0003\u00c3\u0003\u00c3\u0003\u00c3\u0003\u00c3\u0003\u00c3\u0003",
+ "\u00c3\u0003\u00c3\u0003\u00c3\u0003\u00c3\u0003\u00c3\u0003\u00c3\u0003",
+ "\u00c3\u0003\u00c3\u0003\u00c3\u0003\u00c3\u0003\u00c3\u0003\u00c4\u0003",
+ "\u00c4\u0003\u00c4\u0003\u00c4\u0003\u00c4\u0003\u00c4\u0003\u00c5\u0003",
+ "\u00c5\u0003\u00c5\u0003\u00c5\u0003\u00c5\u0003\u00c5\u0003\u00c5\u0003",
+ "\u00c5\u0003\u00c5\u0003\u00c5\u0003\u00c5\u0003\u00c5\u0003\u00c5\u0003",
+ "\u00c5\u0003\u00c5\u0003\u00c5\u0003\u00c5\u0003\u00c6\u0003\u00c6\u0003",
+ "\u00c6\u0003\u00c6\u0003\u00c6\u0003\u00c6\u0003\u00c6\u0003\u00c6\u0003",
+ "\u00c7\u0003\u00c7\u0003\u00c7\u0003\u00c7\u0003\u00c7\u0003\u00c7\u0003",
+ "\u00c7\u0003\u00c7\u0003\u00c7\u0003\u00c7\u0003\u00c7\u0003\u00c7\u0003",
+ "\u00c7\u0003\u00c7\u0003\u00c7\u0003\u00c7\u0003\u00c8\u0003\u00c8\u0003",
+ "\u00c8\u0003\u00c8\u0003\u00c8\u0003\u00c8\u0003\u00c8\u0003\u00c8\u0003",
+ "\u00c8\u0003\u00c8\u0003\u00c8\u0003\u00c8\u0003\u00c8\u0003\u00c8\u0003",
+ "\u00c8\u0003\u00c8\u0003\u00c8\u0003\u00c9\u0003\u00c9\u0003\u00c9\u0003",
+ "\u00c9\u0003\u00c9\u0003\u00c9\u0003\u00c9\u0003\u00c9\u0003\u00c9\u0003",
+ "\u00c9\u0003\u00c9\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0003",
+ "\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0003\u00ca\u0003",
+ "\u00ca\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0003",
+ "\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0003",
+ "\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0003",
+ "\u00cb\u0003\u00cc\u0003\u00cc\u0003\u00cc\u0003\u00cc\u0003\u00cc\u0003",
+ "\u00cc\u0003\u00cc\u0003\u00cc\u0003\u00cc\u0003\u00cc\u0003\u00cc\u0003",
+ "\u00cc\u0003\u00cc\u0003\u00cc\u0003\u00cc\u0003\u00cc\u0003\u00cc\u0003",
+ "\u00cc\u0003\u00cc\u0003\u00cc\u0003\u00cd\u0003\u00cd\u0003\u00cd\u0003",
+ "\u00cd\u0003\u00cd\u0003\u00cd\u0003\u00cd\u0003\u00cd\u0003\u00cd\u0003",
+ "\u00cd\u0003\u00cd\u0003\u00cd\u0003\u00ce\u0003\u00ce\u0003\u00ce\u0003",
+ "\u00ce\u0003\u00ce\u0003\u00ce\u0003\u00ce\u0003\u00ce\u0003\u00ce\u0003",
+ "\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003",
+ "\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003\u00cf\u0003",
+ "\u00d0\u0003\u00d0\u0003\u00d0\u0003\u00d0\u0003\u00d0\u0003\u00d0\u0003",
+ "\u00d0\u0003\u00d1\u0003\u00d1\u0003\u00d1\u0003\u00d1\u0003\u00d1\u0003",
+ "\u00d1\u0003\u00d1\u0003\u00d1\u0003\u00d1\u0003\u00d1\u0003\u00d1\u0003",
+ "\u00d1\u0003\u00d2\u0003\u00d2\u0003\u00d2\u0003\u00d2\u0003\u00d2\u0003",
+ "\u00d3\u0003\u00d3\u0003\u00d3\u0003\u00d3\u0003\u00d3\u0003\u00d3\u0003",
+ "\u00d3\u0003\u00d3\u0003\u00d4\u0003\u00d4\u0003\u00d4\u0003\u00d4\u0003",
+ "\u00d4\u0003\u00d4\u0003\u00d4\u0003\u00d4\u0003\u00d4\u0003\u00d5\u0003",
+ "\u00d5\u0003\u00d5\u0003\u00d5\u0003\u00d5\u0003\u00d5\u0003\u00d5\u0003",
+ "\u00d5\u0003\u00d5\u0003\u00d5\u0003\u00d5\u0003\u00d5\u0003\u00d5\u0003",
+ "\u00d5\u0003\u00d5\u0003\u00d5\u0003\u00d5\u0003\u00d5\u0003\u00d5\u0003",
+ "\u00d5\u0003\u00d5\u0003\u00d5\u0003\u00d6\u0003\u00d6\u0003\u00d6\u0003",
+ "\u00d6\u0003\u00d6\u0003\u00d6\u0003\u00d6\u0003\u00d7\u0003\u00d7\u0003",
+ "\u00d7\u0003\u00d7\u0003\u00d7\u0003\u00d7\u0003\u00d7\u0003\u00d7\u0003",
+ "\u00d8\u0003\u00d8\u0003\u00d8\u0003\u00d8\u0003\u00d8\u0003\u00d8\u0003",
+ "\u00d8\u0003\u00d8\u0003\u00d8\u0003\u00d8\u0003\u00d8\u0003\u00d8\u0003",
+ "\u00d8\u0003\u00d9\u0003\u00d9\u0003\u00d9\u0003\u00d9\u0003\u00d9\u0003",
+ "\u00d9\u0003\u00d9\u0003\u00d9\u0003\u00d9\u0003\u00d9\u0003\u00d9\u0003",
+ "\u00d9\u0003\u00d9\u0003\u00da\u0003\u00da\u0003\u00da\u0003\u00da\u0003",
+ "\u00da\u0003\u00da\u0003\u00da\u0003\u00da\u0003\u00db\u0003\u00db\u0003",
+ "\u00db\u0003\u00db\u0003\u00db\u0003\u00db\u0003\u00db\u0003\u00dc\u0003",
+ "\u00dc\u0003\u00dc\u0003\u00dc\u0003\u00dc\u0003\u00dc\u0003\u00dc\u0003",
+ "\u00dc\u0003\u00dc\u0003\u00dc\u0003\u00dd\u0003\u00dd\u0003\u00dd\u0003",
+ "\u00dd\u0003\u00dd\u0003\u00dd\u0003\u00dd\u0003\u00dd\u0003\u00dd\u0003",
+ "\u00dd\u0003\u00dd\u0003\u00dd\u0003\u00de\u0003\u00de\u0003\u00de\u0003",
+ "\u00de\u0003\u00de\u0003\u00de\u0003\u00de\u0003\u00de\u0003\u00df\u0003",
+ "\u00df\u0003\u00df\u0003\u00df\u0003\u00df\u0003\u00df\u0003\u00df\u0003",
+ "\u00df\u0003\u00df\u0003\u00df\u0003\u00df\u0003\u00df\u0003\u00df\u0003",
+ "\u00df\u0003\u00e0\u0003\u00e0\u0003\u00e0\u0003\u00e0\u0003\u00e0\u0003",
+ "\u00e0\u0003\u00e0\u0003\u00e0\u0003\u00e1\u0003\u00e1\u0003\u00e1\u0003",
+ "\u00e1\u0003\u00e1\u0003\u00e1\u0003\u00e1\u0003\u00e1\u0003\u00e1\u0003",
+ "\u00e2\u0003\u00e2\u0003\u00e2\u0003\u00e2\u0003\u00e2\u0003\u00e2\u0003",
+ "\u00e2\u0003\u00e2\u0003\u00e2\u0003\u00e2\u0003\u00e2\u0003\u00e3\u0003",
+ "\u00e3\u0003\u00e3\u0003\u00e3\u0003\u00e3\u0003\u00e3\u0003\u00e3\u0003",
+ "\u00e3\u0003\u00e3\u0003\u00e3\u0003\u00e4\u0003\u00e4\u0003\u00e4\u0003",
+ "\u00e4\u0003\u00e4\u0003\u00e4\u0003\u00e4\u0003\u00e4\u0003\u00e4\u0003",
+ "\u00e4\u0003\u00e4\u0003\u00e5\u0003\u00e5\u0003\u00e5\u0003\u00e5\u0003",
+ "\u00e5\u0003\u00e5\u0003\u00e5\u0003\u00e5\u0003\u00e6\u0003\u00e6\u0003",
+ "\u00e6\u0003\u00e6\u0003\u00e6\u0003\u00e6\u0003\u00e6\u0003\u00e6\u0003",
+ "\u00e6\u0003\u00e6\u0003\u00e7\u0003\u00e7\u0003\u00e7\u0003\u00e7\u0003",
+ "\u00e7\u0003\u00e7\u0003\u00e7\u0003\u00e7\u0003\u00e7\u0003\u00e7\u0003",
+ "\u00e7\u0003\u00e7\u0003\u00e7\u0003\u00e7\u0003\u00e7\u0003\u00e7\u0003",
+ "\u00e8\u0003\u00e8\u0003\u00e8\u0003\u00e8\u0003\u00e8\u0003\u00e8\u0003",
+ "\u00e8\u0003\u00e8\u0003\u00e8\u0003\u00e9\u0003\u00e9\u0003\u00e9\u0003",
+ "\u00e9\u0003\u00e9\u0003\u00e9\u0003\u00e9\u0003\u00e9\u0003\u00e9\u0003",
+ "\u00ea\u0003\u00ea\u0003\u00ea\u0003\u00ea\u0003\u00ea\u0003\u00ea\u0003",
+ "\u00ea\u0003\u00ea\u0003\u00eb\u0003\u00eb\u0003\u00eb\u0003\u00eb\u0003",
+ "\u00eb\u0003\u00eb\u0003\u00eb\u0003\u00ec\u0003\u00ec\u0003\u00ec\u0003",
+ "\u00ec\u0003\u00ec\u0003\u00ec\u0003\u00ec\u0003\u00ec\u0003\u00ec\u0003",
+ "\u00ec\u0003\u00ec\u0003\u00ec\u0003\u00ec\u0003\u00ec\u0003\u00ec\u0003",
+ "\u00ed\u0003\u00ed\u0003\u00ed\u0003\u00ed\u0003\u00ed\u0003\u00ed\u0003",
+ "\u00ed\u0003\u00ed\u0003\u00ed\u0003\u00ed\u0003\u00ed\u0003\u00ed\u0003",
+ "\u00ee\u0003\u00ee\u0003\u00ee\u0003\u00ee\u0003\u00ee\u0003\u00ee\u0003",
+ "\u00ee\u0003\u00ee\u0003\u00ee\u0003\u00ee\u0003\u00ef\u0003\u00ef\u0003",
+ "\u00ef\u0003\u00ef\u0003\u00ef\u0003\u00ef\u0003\u00ef\u0003\u00ef\u0003",
+ "\u00f0\u0003\u00f0\u0003\u00f0\u0003\u00f0\u0003\u00f0\u0003\u00f0\u0003",
+ "\u00f0\u0003\u00f0\u0003\u00f0\u0003\u00f0\u0003\u00f0\u0003\u00f1\u0003",
+ "\u00f1\u0003\u00f1\u0003\u00f1\u0003\u00f1\u0003\u00f1\u0003\u00f1\u0003",
+ "\u00f1\u0003\u00f1\u0003\u00f1\u0003\u00f1\u0003\u00f1\u0003\u00f1\u0003",
+ "\u00f1\u0003\u00f1\u0003\u00f2\u0003\u00f2\u0003\u00f2\u0003\u00f2\u0003",
+ "\u00f2\u0003\u00f2\u0003\u00f2\u0003\u00f3\u0003\u00f3\u0003\u00f3\u0003",
+ "\u00f3\u0003\u00f3\u0003\u00f3\u0003\u00f3\u0003\u00f3\u0003\u00f3\u0003",
+ "\u00f3\u0003\u00f3\u0003\u00f3\u0003\u00f3\u0003\u00f3\u0003\u00f3\u0003",
+ "\u00f4\u0003\u00f4\u0003\u00f4\u0003\u00f4\u0003\u00f4\u0003\u00f4\u0003",
+ "\u00f4\u0003\u00f4\u0003\u00f4\u0003\u00f4\u0003\u00f4\u0003\u00f4\u0003",
+ "\u00f4\u0003\u00f4\u0003\u00f4\u0003\u00f4\u0003\u00f4\u0003\u00f4\u0003",
+ "\u00f4\u0003\u00f4\u0003\u00f4\u0003\u00f4\u0003\u00f4\u0003\u00f5\u0003",
+ "\u00f5\u0003\u00f5\u0003\u00f5\u0003\u00f5\u0003\u00f5\u0003\u00f5\u0003",
+ "\u00f5\u0003\u00f5\u0003\u00f5\u0003\u00f5\u0003\u00f5\u0003\u00f5\u0003",
+ "\u00f5\u0003\u00f5\u0003\u00f5\u0003\u00f5\u0003\u00f5\u0003\u00f5\u0003",
+ "\u00f5\u0003\u00f5\u0003\u00f5\u0003\u00f6\u0003\u00f6\u0003\u00f6\u0003",
+ "\u00f6\u0003\u00f6\u0003\u00f6\u0003\u00f6\u0003\u00f6\u0003\u00f6\u0003",
+ "\u00f6\u0003\u00f6\u0003\u00f6\u0003\u00f6\u0003\u00f6\u0003\u00f6\u0003",
+ "\u00f6\u0003\u00f6\u0003\u00f6\u0003\u00f6\u0003\u00f6\u0003\u00f6\u0003",
+ "\u00f6\u0003\u00f7\u0003\u00f7\u0003\u00f7\u0003\u00f7\u0003\u00f7\u0003",
+ "\u00f7\u0003\u00f7\u0003\u00f7\u0003\u00f7\u0003\u00f7\u0003\u00f7\u0003",
+ "\u00f7\u0003\u00f7\u0003\u00f7\u0003\u00f7\u0003\u00f7\u0003\u00f7\u0003",
+ "\u00f7\u0003\u00f7\u0003\u00f7\u0003\u00f7\u0003\u00f8\u0003\u00f8\u0003",
+ "\u00f8\u0003\u00f8\u0003\u00f8\u0003\u00f8\u0003\u00f8\u0003\u00f8\u0003",
+ "\u00f8\u0003\u00f8\u0003\u00f8\u0003\u00f8\u0003\u00f8\u0003\u00f8\u0003",
+ "\u00f8\u0003\u00f8\u0003\u00f8\u0003\u00f8\u0003\u00f8\u0003\u00f8\u0003",
+ "\u00f8\u0003\u00f9\u0003\u00f9\u0003\u00f9\u0003\u00f9\u0003\u00f9\u0003",
+ "\u00f9\u0003\u00f9\u0003\u00f9\u0003\u00f9\u0003\u00f9\u0003\u00f9\u0003",
+ "\u00f9\u0003\u00f9\u0003\u00f9\u0003\u00f9\u0003\u00f9\u0003\u00f9\u0003",
+ "\u00f9\u0003\u00f9\u0003\u00fa\u0003\u00fa\u0003\u00fa\u0003\u00fa\u0003",
+ "\u00fa\u0003\u00fa\u0003\u00fa\u0003\u00fa\u0003\u00fa\u0003\u00fa\u0003",
+ "\u00fa\u0003\u00fa\u0003\u00fa\u0003\u00fa\u0003\u00fa\u0003\u00fa\u0003",
+ "\u00fa\u0003\u00fa\u0003\u00fb\u0003\u00fb\u0003\u00fb\u0003\u00fb\u0003",
+ "\u00fb\u0003\u00fb\u0003\u00fb\u0003\u00fb\u0003\u00fb\u0003\u00fb\u0003",
+ "\u00fb\u0003\u00fb\u0003\u00fb\u0003\u00fb\u0003\u00fb\u0003\u00fb\u0003",
+ "\u00fc\u0003\u00fc\u0003\u00fc\u0003\u00fc\u0003\u00fc\u0003\u00fc\u0003",
+ "\u00fc\u0003\u00fc\u0003\u00fd\u0003\u00fd\u0003\u00fd\u0003\u00fd\u0003",
+ "\u00fd\u0003\u00fd\u0003\u00fd\u0003\u00fd\u0003\u00fd\u0003\u00fd\u0003",
+ "\u00fd\u0003\u00fd\u0003\u00fd\u0003\u00fe\u0003\u00fe\u0003\u00fe\u0003",
+ "\u00fe\u0003\u00fe\u0003\u00fe\u0003\u00fe\u0003\u00fe\u0003\u00fe\u0003",
+ "\u00ff\u0003\u00ff\u0003\u00ff\u0003\u00ff\u0003\u00ff\u0003\u00ff\u0003",
+ "\u00ff\u0003\u00ff\u0003\u00ff\u0003\u00ff\u0003\u00ff\u0003\u0100\u0003",
+ "\u0100\u0003\u0100\u0003\u0100\u0003\u0100\u0003\u0100\u0003\u0100\u0003",
+ "\u0100\u0003\u0100\u0003\u0101\u0003\u0101\u0003\u0101\u0003\u0101\u0003",
+ "\u0101\u0003\u0101\u0003\u0102\u0003\u0102\u0003\u0102\u0003\u0102\u0003",
+ "\u0102\u0003\u0102\u0003\u0102\u0003\u0102\u0003\u0102\u0003\u0102\u0003",
+ "\u0102\u0003\u0103\u0003\u0103\u0003\u0103\u0003\u0103\u0003\u0103\u0003",
+ "\u0103\u0003\u0103\u0003\u0103\u0003\u0103\u0003\u0103\u0003\u0103\u0003",
+ "\u0103\u0003\u0104\u0003\u0104\u0003\u0104\u0003\u0104\u0003\u0104\u0003",
+ "\u0104\u0003\u0104\u0003\u0104\u0003\u0104\u0003\u0104\u0003\u0104\u0003",
+ "\u0104\u0003\u0105\u0003\u0105\u0003\u0105\u0003\u0105\u0003\u0105\u0003",
+ "\u0105\u0003\u0105\u0003\u0105\u0003\u0105\u0003\u0105\u0003\u0106\u0003",
+ "\u0106\u0003\u0106\u0003\u0106\u0003\u0106\u0003\u0106\u0003\u0106\u0003",
+ "\u0106\u0003\u0106\u0003\u0106\u0003\u0106\u0003\u0106\u0003\u0106\u0003",
+ "\u0106\u0003\u0106\u0003\u0107\u0003\u0107\u0003\u0107\u0003\u0107\u0003",
+ "\u0107\u0003\u0107\u0003\u0107\u0003\u0107\u0003\u0107\u0003\u0107\u0003",
+ "\u0107\u0003\u0108\u0003\u0108\u0003\u0108\u0003\u0108\u0003\u0108\u0003",
+ "\u0108\u0003\u0108\u0003\u0108\u0003\u0109\u0003\u0109\u0003\u0109\u0003",
+ "\u0109\u0003\u0109\u0003\u0109\u0003\u0109\u0003\u0109\u0003\u0109\u0003",
+ "\u010a\u0003\u010a\u0003\u010a\u0003\u010a\u0003\u010a\u0003\u010a\u0003",
+ "\u010a\u0003\u010a\u0003\u010b\u0003\u010b\u0003\u010b\u0003\u010b\u0003",
+ "\u010b\u0003\u010b\u0003\u010b\u0003\u010b\u0003\u010b\u0003\u010c\u0003",
+ "\u010c\u0003\u010c\u0003\u010c\u0003\u010c\u0003\u010c\u0003\u010c\u0003",
+ "\u010c\u0003\u010c\u0003\u010c\u0003\u010c\u0003\u010c\u0003\u010d\u0003",
+ "\u010d\u0003\u010d\u0003\u010d\u0003\u010d\u0003\u010d\u0003\u010d\u0003",
+ "\u010d\u0003\u010d\u0003\u010d\u0003\u010d\u0003\u010d\u0003\u010d\u0003",
+ "\u010d\u0003\u010e\u0003\u010e\u0003\u010e\u0003\u010e\u0003\u010e\u0003",
+ "\u010e\u0003\u010e\u0003\u010e\u0003\u010f\u0003\u010f\u0003\u010f\u0003",
+ "\u010f\u0003\u010f\u0003\u010f\u0003\u010f\u0003\u0110\u0003\u0110\u0003",
+ "\u0110\u0003\u0110\u0003\u0110\u0003\u0111\u0003\u0111\u0003\u0111\u0003",
+ "\u0111\u0003\u0111\u0003\u0111\u0003\u0111\u0003\u0112\u0003\u0112\u0003",
+ "\u0112\u0003\u0112\u0003\u0112\u0003\u0112\u0003\u0112\u0003\u0113\u0003",
+ "\u0113\u0003\u0113\u0003\u0113\u0003\u0113\u0003\u0113\u0003\u0113\u0003",
+ "\u0113\u0003\u0113\u0003\u0113\u0003\u0113\u0003\u0114\u0003\u0114\u0003",
+ "\u0114\u0003\u0114\u0003\u0114\u0003\u0114\u0003\u0114\u0003\u0114\u0003",
+ "\u0114\u0003\u0114\u0003\u0114\u0003\u0114\u0003\u0114\u0003\u0114\u0003",
+ "\u0114\u0003\u0114\u0003\u0115\u0003\u0115\u0003\u0115\u0003\u0115\u0003",
+ "\u0115\u0003\u0115\u0003\u0115\u0003\u0115\u0003\u0115\u0003\u0115\u0003",
+ "\u0115\u0003\u0115\u0003\u0116\u0003\u0116\u0003\u0116\u0003\u0116\u0003",
+ "\u0117\u0003\u0117\u0003\u0117\u0003\u0117\u0003\u0117\u0003\u0118\u0003",
+ "\u0118\u0003\u0118\u0003\u0118\u0003\u0118\u0003\u0119\u0003\u0119\u0003",
+ "\u0119\u0003\u0119\u0003\u0119\u0003\u0119\u0003\u0119\u0003\u0119\u0003",
+ "\u0119\u0003\u0119\u0003\u0119\u0003\u0119\u0003\u0119\u0003\u0119\u0003",
+ "\u0119\u0003\u0119\u0003\u0119\u0003\u0119\u0003\u0119\u0003\u0119\u0003",
+ "\u0119\u0003\u0119\u0003\u0119\u0003\u011a\u0003\u011a\u0003\u011a\u0003",
+ "\u011a\u0003\u011a\u0003\u011a\u0003\u011b\u0003\u011b\u0003\u011b\u0003",
+ "\u011b\u0003\u011b\u0003\u011b\u0003\u011b\u0003\u011b\u0003\u011b\u0003",
+ "\u011b\u0003\u011c\u0003\u011c\u0003\u011c\u0003\u011c\u0003\u011c\u0003",
+ "\u011c\u0003\u011c\u0003\u011c\u0003\u011c\u0003\u011c\u0003\u011c\u0003",
+ "\u011d\u0003\u011d\u0003\u011d\u0003\u011d\u0003\u011d\u0003\u011d\u0003",
+ "\u011d\u0003\u011d\u0003\u011d\u0003\u011d\u0003\u011d\u0003\u011d\u0003",
+ "\u011e\u0003\u011e\u0003\u011e\u0003\u011e\u0003\u011e\u0003\u011e\u0003",
+ "\u011e\u0003\u011e\u0003\u011e\u0003\u011e\u0003\u011e\u0003\u011e\u0003",
+ "\u011e\u0003\u011f\u0003\u011f\u0003\u011f\u0003\u011f\u0003\u011f\u0003",
+ "\u011f\u0003\u011f\u0003\u011f\u0003\u011f\u0003\u011f\u0003\u011f\u0003",
+ "\u011f\u0003\u011f\u0003\u011f\u0003\u011f\u0003\u011f\u0003\u0120\u0003",
+ "\u0120\u0003\u0120\u0003\u0120\u0003\u0120\u0003\u0120\u0003\u0121\u0003",
+ "\u0121\u0003\u0121\u0003\u0121\u0003\u0121\u0003\u0121\u0003\u0121\u0003",
+ "\u0122\u0003\u0122\u0003\u0122\u0003\u0122\u0003\u0122\u0003\u0122\u0003",
+ "\u0122\u0003\u0122\u0003\u0122\u0003\u0122\u0003\u0122\u0003\u0122\u0003",
+ "\u0122\u0003\u0122\u0003\u0122\u0003\u0122\u0003\u0122\u0003\u0123\u0003",
+ "\u0123\u0003\u0123\u0003\u0123\u0003\u0123\u0003\u0123\u0003\u0123\u0003",
+ "\u0123\u0003\u0123\u0003\u0123\u0003\u0123\u0003\u0123\u0003\u0123\u0003",
+ "\u0123\u0003\u0123\u0003\u0123\u0003\u0123\u0003\u0123\u0003\u0123\u0003",
+ "\u0123\u0003\u0123\u0003\u0123\u0003\u0123\u0003\u0124\u0003\u0124\u0003",
+ "\u0124\u0003\u0124\u0003\u0124\u0003\u0124\u0003\u0124\u0003\u0124\u0003",
+ "\u0124\u0003\u0125\u0003\u0125\u0003\u0125\u0003\u0125\u0003\u0125\u0003",
+ "\u0125\u0003\u0125\u0003\u0125\u0003\u0125\u0003\u0125\u0003\u0125\u0003",
+ "\u0126\u0003\u0126\u0003\u0126\u0003\u0126\u0003\u0126\u0003\u0126\u0003",
+ "\u0126\u0003\u0126\u0003\u0126\u0003\u0127\u0003\u0127\u0003\u0127\u0003",
+ "\u0127\u0003\u0127\u0003\u0127\u0003\u0128\u0003\u0128\u0003\u0128\u0003",
+ "\u0128\u0003\u0128\u0003\u0128\u0003\u0128\u0003\u0128\u0003\u0128\u0003",
+ "\u0128\u0003\u0128\u0003\u0128\u0003\u0128\u0003\u0129\u0003\u0129\u0003",
+ "\u0129\u0003\u0129\u0003\u0129\u0003\u0129\u0003\u0129\u0003\u0129\u0003",
+ "\u0129\u0003\u0129\u0003\u012a\u0003\u012a\u0003\u012a\u0003\u012a\u0003",
+ "\u012a\u0003\u012a\u0003\u012a\u0003\u012a\u0003\u012b\u0003\u012b\u0003",
+ "\u012b\u0003\u012b\u0003\u012b\u0003\u012c\u0003\u012c\u0003\u012c\u0003",
+ "\u012c\u0003\u012c\u0003\u012c\u0003\u012c\u0003\u012c\u0003\u012d\u0003",
+ "\u012d\u0003\u012d\u0003\u012d\u0003\u012d\u0003\u012d\u0003\u012d\u0003",
+ "\u012d\u0003\u012e\u0003\u012e\u0003\u012e\u0003\u012e\u0003\u012e\u0003",
+ "\u012e\u0003\u012e\u0003\u012e\u0003\u012e\u0003\u012e\u0003\u012e\u0003",
+ "\u012f\u0003\u012f\u0003\u012f\u0003\u012f\u0003\u012f\u0003\u012f\u0003",
+ "\u012f\u0003\u012f\u0003\u0130\u0003\u0130\u0003\u0130\u0003\u0130\u0003",
+ "\u0130\u0003\u0130\u0003\u0130\u0003\u0130\u0003\u0130\u0003\u0130\u0003",
+ "\u0130\u0003\u0130\u0003\u0130\u0003\u0131\u0003\u0131\u0003\u0131\u0003",
+ "\u0131\u0003\u0131\u0003\u0131\u0003\u0131\u0003\u0131\u0003\u0131\u0003",
+ "\u0131\u0003\u0131\u0003\u0131\u0003\u0131\u0003\u0131\u0003\u0131\u0003",
+ "\u0132\u0003\u0132\u0003\u0132\u0003\u0132\u0003\u0132\u0003\u0132\u0003",
+ "\u0132\u0003\u0132\u0003\u0132\u0003\u0132\u0003\u0132\u0003\u0132\u0003",
+ "\u0132\u0003\u0133\u0003\u0133\u0003\u0133\u0003\u0133\u0003\u0133\u0003",
+ "\u0133\u0003\u0133\u0003\u0133\u0003\u0133\u0003\u0133\u0003\u0133\u0003",
+ "\u0133\u0003\u0133\u0003\u0133\u0003\u0133\u0003\u0133\u0003\u0133\u0003",
+ "\u0133\u0003\u0134\u0003\u0134\u0003\u0134\u0003\u0134\u0003\u0134\u0003",
+ "\u0134\u0003\u0134\u0003\u0134\u0003\u0134\u0003\u0134\u0003\u0134\u0003",
+ "\u0134\u0003\u0134\u0003\u0135\u0003\u0135\u0003\u0135\u0003\u0135\u0003",
+ "\u0135\u0003\u0135\u0003\u0135\u0003\u0135\u0003\u0135\u0003\u0136\u0003",
+ "\u0136\u0003\u0136\u0003\u0136\u0003\u0136\u0003\u0136\u0003\u0136\u0003",
+ "\u0137\u0003\u0137\u0003\u0137\u0003\u0137\u0003\u0137\u0003\u0137\u0003",
+ "\u0137\u0003\u0137\u0003\u0137\u0003\u0137\u0003\u0137\u0003\u0137\u0003",
+ "\u0137\u0003\u0137\u0003\u0137\u0003\u0137\u0003\u0137\u0003\u0137\u0003",
+ "\u0137\u0003\u0137\u0003\u0137\u0003\u0138\u0003\u0138\u0003\u0138\u0003",
+ "\u0138\u0003\u0138\u0003\u0138\u0003\u0138\u0003\u0138\u0003\u0138\u0003",
+ "\u0138\u0003\u0138\u0003\u0138\u0003\u0138\u0003\u0138\u0003\u0138\u0003",
+ "\u0138\u0003\u0138\u0003\u0138\u0003\u0138\u0003\u0138\u0003\u0138\u0003",
+ "\u0138\u0003\u0138\u0003\u0138\u0003\u0139\u0003\u0139\u0003\u0139\u0003",
+ "\u0139\u0003\u0139\u0003\u0139\u0003\u0139\u0003\u0139\u0003\u0139\u0003",
+ "\u0139\u0003\u0139\u0003\u0139\u0003\u013a\u0003\u013a\u0003\u013a\u0003",
+ "\u013b\u0003\u013b\u0003\u013b\u0003\u013b\u0003\u013b\u0003\u013b\u0003",
+ "\u013c\u0003\u013c\u0003\u013c\u0003\u013c\u0003\u013c\u0003\u013c\u0003",
+ "\u013c\u0003\u013c\u0003\u013c\u0003\u013d\u0003\u013d\u0003\u013d\u0003",
+ "\u013d\u0003\u013d\u0003\u013d\u0003\u013d\u0003\u013d\u0003\u013d\u0003",
+ "\u013e\u0003\u013e\u0003\u013e\u0003\u013e\u0003\u013e\u0003\u013f\u0003",
+ "\u013f\u0003\u013f\u0003\u013f\u0003\u013f\u0003\u013f\u0003\u013f\u0003",
+ "\u013f\u0003\u013f\u0003\u0140\u0003\u0140\u0003\u0140\u0003\u0140\u0003",
+ "\u0140\u0003\u0140\u0003\u0140\u0003\u0140\u0003\u0140\u0003\u0140\u0003",
+ "\u0141\u0003\u0141\u0003\u0141\u0003\u0141\u0003\u0141\u0003\u0141\u0003",
+ "\u0141\u0003\u0141\u0003\u0141\u0003\u0141\u0003\u0141\u0003\u0141\u0003",
+ "\u0141\u0003\u0141\u0003\u0141\u0003\u0141\u0003\u0142\u0003\u0142\u0003",
+ "\u0142\u0003\u0142\u0003\u0142\u0003\u0142\u0003\u0142\u0003\u0142\u0003",
+ "\u0142\u0003\u0142\u0003\u0142\u0003\u0142\u0003\u0142\u0003\u0143\u0003",
+ "\u0143\u0003\u0143\u0003\u0143\u0003\u0143\u0003\u0143\u0003\u0143\u0003",
+ "\u0143\u0003\u0143\u0003\u0143\u0003\u0144\u0003\u0144\u0003\u0144\u0003",
+ "\u0144\u0003\u0144\u0003\u0144\u0003\u0144\u0003\u0144\u0003\u0144\u0003",
+ "\u0144\u0003\u0144\u0003\u0144\u0003\u0144\u0003\u0144\u0003\u0144\u0003",
+ "\u0144\u0003\u0144\u0003\u0144\u0003\u0144\u0003\u0144\u0003\u0144\u0003",
+ "\u0144\u0003\u0144\u0003\u0144\u0003\u0144\u0003\u0145\u0003\u0145\u0003",
+ "\u0145\u0003\u0145\u0003\u0145\u0003\u0145\u0003\u0145\u0003\u0145\u0003",
+ "\u0145\u0003\u0145\u0003\u0145\u0003\u0145\u0003\u0145\u0003\u0145\u0003",
+ "\u0145\u0003\u0145\u0003\u0145\u0003\u0145\u0003\u0145\u0003\u0145\u0003",
+ "\u0145\u0003\u0146\u0003\u0146\u0003\u0146\u0003\u0146\u0003\u0146\u0003",
+ "\u0146\u0003\u0146\u0003\u0146\u0003\u0146\u0003\u0147\u0003\u0147\u0003",
+ "\u0147\u0003\u0147\u0003\u0147\u0003\u0147\u0003\u0147\u0003\u0147\u0003",
+ "\u0147\u0003\u0147\u0003\u0147\u0003\u0147\u0003\u0147\u0003\u0147\u0003",
+ "\u0147\u0003\u0147\u0003\u0147\u0003\u0147\u0003\u0147\u0003\u0147\u0003",
+ "\u0147\u0003\u0147\u0003\u0147\u0003\u0147\u0003\u0147\u0003\u0147\u0003",
+ "\u0147\u0003\u0147\u0003\u0148\u0003\u0148\u0003\u0148\u0003\u0148\u0003",
+ "\u0148\u0003\u0149\u0003\u0149\u0003\u0149\u0003\u0149\u0003\u0149\u0003",
+ "\u0149\u0003\u0149\u0003\u0149\u0003\u0149\u0003\u0149\u0003\u014a\u0003",
+ "\u014a\u0003\u014a\u0003\u014a\u0003\u014b\u0003\u014b\u0003\u014b\u0003",
+ "\u014b\u0003\u014b\u0003\u014c\u0003\u014c\u0003\u014c\u0003\u014c\u0003",
+ "\u014d\u0003\u014d\u0003\u014d\u0003\u014d\u0003\u014d\u0003\u014d\u0003",
+ "\u014d\u0003\u014d\u0003\u014d\u0003\u014d\u0003\u014d\u0003\u014d\u0003",
+ "\u014d\u0003\u014d\u0003\u014d\u0003\u014e\u0003\u014e\u0003\u014e\u0003",
+ "\u014e\u0003\u014e\u0003\u014e\u0003\u014e\u0003\u014e\u0003\u014e\u0003",
+ "\u014e\u0003\u014e\u0003\u014f\u0003\u014f\u0003\u014f\u0003\u014f\u0003",
+ "\u014f\u0003\u014f\u0003\u014f\u0003\u014f\u0003\u014f\u0003\u014f\u0003",
+ "\u014f\u0003\u014f\u0003\u014f\u0003\u014f\u0003\u014f\u0003\u0150\u0003",
+ "\u0150\u0003\u0150\u0003\u0150\u0003\u0150\u0003\u0150\u0003\u0150\u0003",
+ "\u0150\u0003\u0150\u0003\u0150\u0003\u0150\u0003\u0151\u0003\u0151\u0003",
+ "\u0151\u0003\u0151\u0003\u0151\u0003\u0151\u0003\u0151\u0003\u0151\u0003",
+ "\u0151\u0003\u0151\u0003\u0151\u0003\u0151\u0003\u0151\u0003\u0151\u0003",
+ "\u0151\u0003\u0152\u0003\u0152\u0003\u0152\u0003\u0152\u0003\u0152\u0003",
+ "\u0152\u0003\u0152\u0003\u0152\u0003\u0152\u0003\u0152\u0003\u0152\u0003",
+ "\u0153\u0003\u0153\u0003\u0153\u0003\u0153\u0003\u0154\u0003\u0154\u0003",
+ "\u0154\u0003\u0154\u0003\u0154\u0003\u0154\u0003\u0154\u0003\u0154\u0003",
+ "\u0154\u0003\u0154\u0003\u0154\u0003\u0155\u0003\u0155\u0003\u0155\u0003",
+ "\u0155\u0003\u0155\u0003\u0155\u0003\u0156\u0003\u0156\u0003\u0156\u0003",
+ "\u0156\u0003\u0156\u0003\u0156\u0003\u0156\u0003\u0156\u0003\u0156\u0003",
+ "\u0157\u0003\u0157\u0003\u0157\u0003\u0157\u0003\u0158\u0003\u0158\u0003",
+ "\u0158\u0003\u0158\u0003\u0158\u0003\u0158\u0003\u0158\u0003\u0158\u0003",
+ "\u0159\u0003\u0159\u0003\u0159\u0003\u0159\u0003\u0159\u0003\u0159\u0003",
+ "\u0159\u0003\u0159\u0003\u015a\u0003\u015a\u0003\u015a\u0003\u015a\u0003",
+ "\u015a\u0003\u015a\u0003\u015a\u0003\u015a\u0003\u015a\u0003\u015a\u0003",
+ "\u015b\u0003\u015b\u0003\u015b\u0003\u015b\u0003\u015b\u0003\u015b\u0003",
+ "\u015b\u0003\u015b\u0003\u015b\u0003\u015b\u0003\u015b\u0003\u015b\u0003",
+ "\u015c\u0003\u015c\u0003\u015c\u0003\u015c\u0003\u015c\u0003\u015d\u0003",
+ "\u015d\u0003\u015d\u0003\u015d\u0003\u015d\u0003\u015d\u0003\u015d\u0003",
+ "\u015d\u0003\u015d\u0003\u015d\u0003\u015e\u0003\u015e\u0003\u015e\u0003",
+ "\u015e\u0003\u015e\u0003\u015e\u0003\u015e\u0003\u015e\u0003\u015f\u0003",
+ "\u015f\u0003\u015f\u0003\u015f\u0003\u015f\u0003\u015f\u0003\u015f\u0003",
+ "\u015f\u0003\u015f\u0003\u015f\u0003\u015f\u0003\u015f\u0003\u0160\u0003",
+ "\u0160\u0003\u0160\u0003\u0160\u0003\u0160\u0003\u0160\u0003\u0160\u0003",
+ "\u0160\u0003\u0161\u0003\u0161\u0003\u0161\u0003\u0161\u0003\u0161\u0003",
+ "\u0161\u0003\u0161\u0003\u0161\u0003\u0161\u0003\u0162\u0003\u0162\u0003",
+ "\u0162\u0003\u0162\u0003\u0162\u0003\u0162\u0003\u0162\u0003\u0162\u0003",
+ "\u0162\u0003\u0162\u0003\u0162\u0003\u0163\u0003\u0163\u0003\u0163\u0003",
+ "\u0163\u0003\u0163\u0003\u0163\u0003\u0163\u0003\u0163\u0003\u0163\u0003",
+ "\u0164\u0003\u0164\u0003\u0164\u0003\u0164\u0003\u0164\u0003\u0164\u0003",
+ "\u0164\u0003\u0164\u0003\u0165\u0003\u0165\u0003\u0165\u0003\u0165\u0003",
+ "\u0165\u0003\u0165\u0003\u0165\u0003\u0166\u0003\u0166\u0003\u0166\u0003",
+ "\u0166\u0003\u0166\u0003\u0166\u0003\u0166\u0003\u0166\u0003\u0167\u0003",
+ "\u0167\u0003\u0167\u0003\u0167\u0003\u0167\u0003\u0167\u0003\u0167\u0003",
+ "\u0168\u0003\u0168\u0003\u0168\u0003\u0168\u0003\u0168\u0003\u0168\u0003",
+ "\u0169\u0003\u0169\u0003\u0169\u0003\u0169\u0003\u0169\u0003\u0169\u0003",
+ "\u0169\u0003\u0169\u0003\u0169\u0003\u016a\u0003\u016a\u0003\u016a\u0003",
+ "\u016a\u0003\u016a\u0003\u016a\u0003\u016a\u0003\u016a\u0003\u016a\u0003",
+ "\u016a\u0003\u016a\u0003\u016b\u0003\u016b\u0003\u016b\u0003\u016b\u0003",
+ "\u016b\u0003\u016b\u0003\u016b\u0003\u016c\u0003\u016c\u0003\u016c\u0003",
+ "\u016c\u0003\u016c\u0003\u016c\u0003\u016c\u0003\u016c\u0003\u016c\u0003",
+ "\u016c\u0003\u016d\u0003\u016d\u0003\u016d\u0003\u016d\u0003\u016d\u0003",
+ "\u016d\u0003\u016d\u0003\u016e\u0003\u016e\u0003\u016e\u0003\u016e\u0003",
+ "\u016e\u0003\u016e\u0003\u016e\u0003\u016e\u0003\u016e\u0003\u016e\u0003",
+ "\u016e\u0003\u016e\u0003\u016f\u0003\u016f\u0003\u016f\u0003\u016f\u0003",
+ "\u016f\u0003\u016f\u0003\u016f\u0003\u016f\u0003\u016f\u0003\u016f\u0003",
+ "\u0170\u0003\u0170\u0003\u0170\u0003\u0170\u0003\u0170\u0003\u0170\u0003",
+ "\u0171\u0003\u0171\u0003\u0171\u0003\u0171\u0003\u0171\u0003\u0171\u0003",
+ "\u0171\u0003\u0171\u0003\u0172\u0003\u0172\u0003\u0172\u0003\u0172\u0003",
+ "\u0172\u0003\u0172\u0003\u0173\u0003\u0173\u0003\u0173\u0003\u0173\u0003",
+ "\u0173\u0003\u0173\u0003\u0173\u0003\u0173\u0003\u0173\u0003\u0173\u0003",
+ "\u0173\u0003\u0173\u0003\u0173\u0003\u0173\u0003\u0173\u0003\u0173\u0003",
+ "\u0173\u0003\u0174\u0003\u0174\u0003\u0174\u0003\u0174\u0003\u0174\u0003",
+ "\u0175\u0003\u0175\u0003\u0175\u0003\u0175\u0003\u0175\u0003\u0175\u0003",
+ "\u0175\u0003\u0175\u0003\u0176\u0003\u0176\u0003\u0176\u0003\u0176\u0003",
+ "\u0176\u0003\u0176\u0003\u0176\u0003\u0176\u0003\u0176\u0003\u0177\u0003",
+ "\u0177\u0003\u0177\u0003\u0177\u0003\u0177\u0003\u0177\u0003\u0177\u0003",
+ "\u0177\u0003\u0177\u0003\u0177\u0003\u0177\u0003\u0178\u0003\u0178\u0003",
+ "\u0178\u0003\u0178\u0003\u0178\u0003\u0178\u0003\u0178\u0003\u0178\u0003",
+ "\u0178\u0003\u0178\u0003\u0178\u0003\u0178\u0003\u0178\u0003\u0178\u0003",
+ "\u0179\u0003\u0179\u0003\u0179\u0003\u0179\u0003\u0179\u0003\u0179\u0003",
+ "\u0179\u0003\u0179\u0003\u0179\u0003\u0179\u0003\u0179\u0003\u017a\u0003",
+ "\u017a\u0003\u017a\u0003\u017a\u0003\u017a\u0003\u017a\u0003\u017a\u0003",
+ "\u017a\u0003\u017a\u0003\u017a\u0003\u017b\u0003\u017b\u0003\u017b\u0003",
+ "\u017b\u0003\u017b\u0003\u017b\u0003\u017b\u0003\u017b\u0003\u017b\u0003",
+ "\u017b\u0003\u017b\u0003\u017c\u0003\u017c\u0003\u017c\u0003\u017c\u0003",
+ "\u017c\u0003\u017c\u0003\u017c\u0003\u017c\u0003\u017c\u0003\u017c\u0003",
+ "\u017c\u0003\u017c\u0003\u017d\u0003\u017d\u0003\u017d\u0003\u017d\u0003",
+ "\u017d\u0003\u017d\u0003\u017d\u0003\u017d\u0003\u017d\u0003\u017d\u0003",
+ "\u017e\u0003\u017e\u0003\u017e\u0003\u017e\u0003\u017e\u0003\u017e\u0003",
+ "\u017e\u0003\u017e\u0003\u017e\u0003\u017e\u0003\u017e\u0003\u017e\u0003",
+ "\u017f\u0003\u017f\u0003\u017f\u0003\u017f\u0003\u017f\u0003\u017f\u0003",
+ "\u017f\u0003\u017f\u0003\u017f\u0003\u017f\u0003\u017f\u0003\u017f\u0003",
+ "\u0180\u0003\u0180\u0003\u0180\u0003\u0180\u0003\u0180\u0003\u0180\u0003",
+ "\u0180\u0003\u0180\u0003\u0181\u0003\u0181\u0003\u0181\u0003\u0181\u0003",
+ "\u0181\u0003\u0181\u0003\u0181\u0003\u0181\u0003\u0181\u0003\u0181\u0003",
+ "\u0181\u0003\u0181\u0003\u0181\u0003\u0181\u0003\u0181\u0003\u0181\u0003",
+ "\u0181\u0003\u0181\u0003\u0181\u0003\u0181\u0003\u0181\u0003\u0182\u0003",
+ "\u0182\u0003\u0182\u0003\u0182\u0003\u0182\u0003\u0182\u0003\u0182\u0003",
+ "\u0182\u0003\u0182\u0003\u0182\u0003\u0182\u0003\u0182\u0003\u0182\u0003",
+ "\u0182\u0003\u0182\u0003\u0183\u0003\u0183\u0003\u0183\u0003\u0183\u0003",
+ "\u0183\u0003\u0183\u0003\u0183\u0003\u0183\u0003\u0183\u0003\u0183\u0003",
+ "\u0183\u0003\u0183\u0003\u0183\u0003\u0184\u0003\u0184\u0003\u0184\u0003",
+ "\u0184\u0003\u0184\u0003\u0184\u0003\u0184\u0003\u0184\u0003\u0184\u0003",
+ "\u0185\u0003\u0185\u0003\u0185\u0003\u0185\u0003\u0185\u0003\u0185\u0003",
+ "\u0185\u0003\u0185\u0003\u0185\u0003\u0185\u0003\u0185\u0003\u0185\u0003",
+ "\u0185\u0003\u0186\u0003\u0186\u0003\u0186\u0003\u0186\u0003\u0186\u0003",
+ "\u0186\u0003\u0186\u0003\u0186\u0003\u0187\u0003\u0187\u0003\u0187\u0003",
+ "\u0187\u0003\u0187\u0003\u0187\u0003\u0187\u0003\u0187\u0003\u0187\u0003",
+ "\u0187\u0003\u0187\u0003\u0188\u0003\u0188\u0003\u0188\u0003\u0188\u0003",
+ "\u0188\u0003\u0189\u0003\u0189\u0003\u0189\u0003\u0189\u0003\u0189\u0003",
+ "\u0189\u0003\u0189\u0003\u0189\u0003\u0189\u0003\u0189\u0003\u018a\u0003",
+ "\u018a\u0003\u018a\u0003\u018a\u0003\u018a\u0003\u018a\u0003\u018a\u0003",
+ "\u018a\u0003\u018a\u0003\u018a\u0003\u018a\u0003\u018a\u0003\u018a\u0003",
+ "\u018b\u0003\u018b\u0003\u018b\u0003\u018b\u0003\u018b\u0003\u018b\u0003",
+ "\u018c\u0003\u018c\u0003\u018c\u0003\u018c\u0003\u018c\u0003\u018c\u0003",
+ "\u018c\u0003\u018c\u0003\u018c\u0003\u018d\u0003\u018d\u0003\u018d\u0003",
+ "\u018d\u0003\u018d\u0003\u018d\u0003\u018d\u0003\u018d\u0003\u018d\u0003",
+ "\u018e\u0003\u018e\u0003\u018e\u0003\u018e\u0003\u018e\u0003\u018e\u0003",
+ "\u018e\u0003\u018e\u0003\u018e\u0003\u018e\u0003\u018e\u0003\u018e\u0003",
+ "\u018e\u0003\u018e\u0003\u018f\u0003\u018f\u0003\u018f\u0003\u018f\u0003",
+ "\u018f\u0003\u018f\u0003\u018f\u0003\u018f\u0003\u018f\u0003\u018f\u0003",
+ "\u018f\u0003\u018f\u0003\u0190\u0003\u0190\u0003\u0190\u0003\u0190\u0003",
+ "\u0190\u0003\u0190\u0003\u0190\u0003\u0190\u0003\u0190\u0003\u0190\u0003",
+ "\u0190\u0003\u0191\u0003\u0191\u0003\u0191\u0003\u0191\u0003\u0192\u0003",
+ "\u0192\u0003\u0192\u0003\u0192\u0003\u0192\u0003\u0192\u0003\u0192\u0003",
+ "\u0192\u0003\u0192\u0003\u0192\u0003\u0192\u0003\u0193\u0003\u0193\u0003",
+ "\u0193\u0003\u0193\u0003\u0193\u0003\u0193\u0003\u0193\u0003\u0193\u0003",
+ "\u0193\u0003\u0193\u0003\u0193\u0003\u0193\u0003\u0194\u0003\u0194\u0003",
+ "\u0194\u0003\u0194\u0003\u0194\u0003\u0194\u0003\u0194\u0003\u0194\u0003",
+ "\u0194\u0003\u0195\u0003\u0195\u0003\u0195\u0003\u0195\u0003\u0195\u0003",
+ "\u0195\u0003\u0195\u0003\u0195\u0003\u0195\u0003\u0195\u0003\u0195\u0003",
+ "\u0195\u0003\u0195\u0003\u0195\u0003\u0195\u0003\u0195\u0003\u0195\u0003",
+ "\u0195\u0003\u0195\u0003\u0195\u0003\u0196\u0003\u0196\u0003\u0196\u0003",
+ "\u0196\u0003\u0196\u0003\u0196\u0003\u0196\u0003\u0196\u0003\u0196\u0003",
+ "\u0196\u0003\u0196\u0003\u0196\u0003\u0196\u0003\u0196\u0003\u0196\u0003",
+ "\u0196\u0003\u0196\u0003\u0196\u0003\u0196\u0003\u0196\u0003\u0196\u0003",
+ "\u0197\u0003\u0197\u0003\u0197\u0003\u0197\u0003\u0197\u0003\u0197\u0003",
+ "\u0197\u0003\u0197\u0003\u0197\u0003\u0197\u0003\u0197\u0003\u0197\u0003",
+ "\u0197\u0003\u0197\u0003\u0197\u0003\u0197\u0003\u0197\u0003\u0197\u0003",
+ "\u0198\u0003\u0198\u0003\u0198\u0003\u0198\u0003\u0198\u0003\u0198\u0003",
+ "\u0198\u0003\u0199\u0003\u0199\u0003\u0199\u0003\u0199\u0003\u0199\u0003",
+ "\u0199\u0003\u0199\u0003\u0199\u0003\u0199\u0003\u0199\u0003\u019a\u0003",
+ "\u019a\u0003\u019a\u0003\u019a\u0003\u019a\u0003\u019a\u0003\u019a\u0003",
+ "\u019a\u0003\u019a\u0003\u019a\u0003\u019a\u0003\u019a\u0003\u019a\u0003",
+ "\u019b\u0003\u019b\u0003\u019b\u0003\u019b\u0003\u019b\u0003\u019b\u0003",
+ "\u019b\u0003\u019b\u0003\u019b\u0003\u019b\u0003\u019b\u0003\u019b\u0003",
+ "\u019c\u0003\u019c\u0003\u019c\u0003\u019c\u0003\u019c\u0003\u019d\u0003",
+ "\u019d\u0003\u019d\u0003\u019d\u0003\u019d\u0003\u019d\u0003\u019d\u0003",
+ "\u019d\u0003\u019d\u0003\u019d\u0003\u019d\u0003\u019e\u0003\u019e\u0003",
+ "\u019e\u0003\u019e\u0003\u019e\u0003\u019e\u0003\u019e\u0003\u019e\u0003",
+ "\u019e\u0003\u019e\u0003\u019e\u0003\u019e\u0003\u019e\u0003\u019e\u0003",
+ "\u019e\u0003\u019e\u0003\u019e\u0003\u019e\u0003\u019e\u0003\u019e\u0003",
+ "\u019e\u0003\u019e\u0003\u019e\u0003\u019e\u0003\u019e\u0003\u019f\u0003",
+ "\u019f\u0003\u019f\u0003\u019f\u0003\u019f\u0003\u019f\u0003\u019f\u0003",
+ "\u019f\u0003\u019f\u0003\u019f\u0003\u019f\u0003\u019f\u0003\u019f\u0003",
+ "\u019f\u0003\u019f\u0003\u019f\u0003\u019f\u0003\u019f\u0003\u019f\u0003",
+ "\u019f\u0003\u019f\u0003\u019f\u0003\u019f\u0003\u019f\u0003\u01a0\u0003",
+ "\u01a0\u0003\u01a0\u0003\u01a0\u0003\u01a0\u0003\u01a1\u0003\u01a1\u0003",
+ "\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0003",
+ "\u01a2\u0003\u01a2\u0003\u01a2\u0003\u01a2\u0003\u01a2\u0003\u01a2\u0003",
+ "\u01a2\u0003\u01a2\u0003\u01a2\u0003\u01a2\u0003\u01a3\u0003\u01a3\u0003",
+ "\u01a3\u0003\u01a4\u0003\u01a4\u0003\u01a4\u0003\u01a4\u0003\u01a4\u0003",
+ "\u01a4\u0003\u01a4\u0003\u01a4\u0003\u01a5\u0003\u01a5\u0003\u01a5\u0003",
+ "\u01a5\u0003\u01a5\u0003\u01a5\u0003\u01a5\u0003\u01a5\u0003\u01a5\u0003",
+ "\u01a5\u0003\u01a5\u0003\u01a5\u0003\u01a5\u0003\u01a5\u0003\u01a5\u0003",
+ "\u01a5\u0003\u01a5\u0003\u01a6\u0003\u01a6\u0003\u01a6\u0003\u01a6\u0003",
+ "\u01a6\u0003\u01a6\u0003\u01a6\u0003\u01a6\u0003\u01a6\u0003\u01a6\u0003",
+ "\u01a6\u0003\u01a6\u0003\u01a6\u0003\u01a6\u0003\u01a6\u0003\u01a6\u0003",
+ "\u01a6\u0003\u01a6\u0003\u01a6\u0003\u01a6\u0003\u01a6\u0003\u01a6\u0003",
+ "\u01a6\u0003\u01a6\u0003\u01a6\u0003\u01a7\u0003\u01a7\u0003\u01a7\u0003",
+ "\u01a7\u0003\u01a7\u0003\u01a8\u0003\u01a8\u0003\u01a8\u0003\u01a8\u0003",
+ "\u01a8\u0003\u01a8\u0003\u01a8\u0003\u01a8\u0003\u01a8\u0003\u01a8\u0003",
+ "\u01a8\u0003\u01a8\u0003\u01a9\u0003\u01a9\u0003\u01a9\u0003\u01a9\u0003",
+ "\u01a9\u0003\u01a9\u0003\u01a9\u0003\u01a9\u0003\u01aa\u0003\u01aa\u0003",
+ "\u01aa\u0003\u01aa\u0003\u01aa\u0003\u01aa\u0003\u01aa\u0003\u01aa\u0003",
+ "\u01aa\u0003\u01aa\u0003\u01aa\u0003\u01ab\u0003\u01ab\u0003\u01ab\u0003",
+ "\u01ab\u0003\u01ab\u0003\u01ab\u0003\u01ab\u0003\u01ab\u0003\u01ab\u0003",
+ "\u01ac\u0003\u01ac\u0003\u01ac\u0003\u01ac\u0003\u01ac\u0003\u01ac\u0003",
+ "\u01ac\u0003\u01ac\u0003\u01ad\u0003\u01ad\u0003\u01ad\u0003\u01ad\u0003",
+ "\u01ad\u0003\u01ad\u0003\u01ad\u0003\u01ad\u0003\u01ad\u0003\u01ad\u0003",
+ "\u01ad\u0003\u01ad\u0003\u01ad\u0003\u01ae\u0003\u01ae\u0003\u01ae\u0003",
+ "\u01ae\u0003\u01ae\u0003\u01ae\u0003\u01ae\u0003\u01ae\u0003\u01ae\u0003",
+ "\u01ae\u0003\u01ae\u0003\u01ae\u0003\u01ae\u0003\u01ae\u0003\u01ae\u0003",
+ "\u01af\u0003\u01af\u0003\u01af\u0003\u01af\u0003\u01af\u0003\u01af\u0003",
+ "\u01af\u0003\u01af\u0003\u01af\u0003\u01af\u0003\u01af\u0003\u01af\u0003",
+ "\u01af\u0003\u01af\u0003\u01b0\u0003\u01b0\u0003\u01b0\u0003\u01b0\u0003",
+ "\u01b0\u0003\u01b0\u0003\u01b0\u0003\u01b0\u0003\u01b0\u0003\u01b0\u0003",
+ "\u01b0\u0003\u01b0\u0003\u01b0\u0003\u01b0\u0003\u01b0\u0003\u01b0\u0003",
+ "\u01b0\u0003\u01b0\u0003\u01b0\u0003\u01b0\u0003\u01b0\u0003\u01b1\u0003",
+ "\u01b1\u0003\u01b1\u0003\u01b1\u0003\u01b1\u0003\u01b2\u0003\u01b2\u0003",
+ "\u01b2\u0003\u01b2\u0003\u01b2\u0003\u01b2\u0003\u01b3\u0003\u01b3\u0003",
+ "\u01b3\u0003\u01b4\u0003\u01b4\u0003\u01b4\u0003\u01b4\u0003\u01b4\u0003",
+ "\u01b4\u0003\u01b4\u0003\u01b4\u0003\u01b4\u0003\u01b4\u0003\u01b4\u0003",
+ "\u01b5\u0003\u01b5\u0003\u01b5\u0003\u01b5\u0003\u01b5\u0003\u01b5\u0003",
+ "\u01b5\u0003\u01b5\u0003\u01b5\u0003\u01b5\u0003\u01b5\u0003\u01b6\u0003",
+ "\u01b6\u0003\u01b6\u0003\u01b6\u0003\u01b6\u0003\u01b6\u0003\u01b7\u0003",
+ "\u01b7\u0003\u01b7\u0003\u01b7\u0003\u01b7\u0003\u01b7\u0003\u01b7\u0003",
+ "\u01b7\u0003\u01b7\u0003\u01b7\u0003\u01b7\u0003\u01b8\u0003\u01b8\u0003",
+ "\u01b8\u0003\u01b8\u0003\u01b8\u0003\u01b8\u0003\u01b8\u0003\u01b9\u0003",
+ "\u01b9\u0003\u01b9\u0003\u01b9\u0003\u01b9\u0003\u01b9\u0003\u01b9\u0003",
+ "\u01b9\u0003\u01b9\u0003\u01b9\u0003\u01b9\u0003\u01b9\u0003\u01b9\u0003",
+ "\u01b9\u0003\u01b9\u0003\u01b9\u0003\u01b9\u0003\u01b9\u0003\u01b9\u0003",
+ "\u01b9\u0003\u01ba\u0003\u01ba\u0003\u01ba\u0003\u01ba\u0003\u01ba\u0003",
+ "\u01ba\u0003\u01ba\u0003\u01ba\u0003\u01ba\u0003\u01ba\u0003\u01ba\u0003",
+ "\u01ba\u0003\u01ba\u0003\u01ba\u0003\u01bb\u0003\u01bb\u0003\u01bb\u0003",
+ "\u01bb\u0003\u01bb\u0003\u01bb\u0003\u01bb\u0003\u01bb\u0003\u01bb\u0003",
+ "\u01bc\u0003\u01bc\u0003\u01bc\u0003\u01bc\u0003\u01bc\u0003\u01bc\u0003",
+ "\u01bc\u0003\u01bc\u0003\u01bd\u0003\u01bd\u0003\u01bd\u0003\u01bd\u0003",
+ "\u01bd\u0003\u01bd\u0003\u01bd\u0003\u01bd\u0003\u01bd\u0003\u01bd\u0003",
+ "\u01bd\u0003\u01be\u0003\u01be\u0003\u01be\u0003\u01be\u0003\u01bf\u0003",
+ "\u01bf\u0003\u01bf\u0003\u01bf\u0003\u01bf\u0003\u01bf\u0003\u01bf\u0003",
+ "\u01bf\u0003\u01bf\u0003\u01bf\u0003\u01bf\u0003\u01bf\u0003\u01bf\u0003",
+ "\u01bf\u0003\u01bf\u0003\u01bf\u0003\u01bf\u0003\u01c0\u0003\u01c0\u0003",
+ "\u01c0\u0003\u01c0\u0003\u01c0\u0003\u01c0\u0003\u01c0\u0003\u01c0\u0003",
+ "\u01c0\u0003\u01c1\u0003\u01c1\u0003\u01c1\u0003\u01c1\u0003\u01c1\u0003",
+ "\u01c1\u0003\u01c1\u0003\u01c1\u0003\u01c2\u0003\u01c2\u0003\u01c2\u0003",
+ "\u01c2\u0003\u01c2\u0003\u01c2\u0003\u01c2\u0003\u01c2\u0003\u01c3\u0003",
+ "\u01c3\u0003\u01c3\u0003\u01c3\u0003\u01c3\u0003\u01c3\u0003\u01c3\u0003",
+ "\u01c3\u0003\u01c3\u0003\u01c3\u0003\u01c3\u0003\u01c4\u0003\u01c4\u0003",
+ "\u01c4\u0003\u01c4\u0003\u01c4\u0003\u01c4\u0003\u01c4\u0003\u01c4\u0003",
+ "\u01c4\u0003\u01c4\u0003\u01c4\u0003\u01c4\u0003\u01c4\u0003\u01c4\u0003",
+ "\u01c4\u0003\u01c5\u0003\u01c5\u0003\u01c5\u0003\u01c5\u0003\u01c5\u0003",
+ "\u01c5\u0003\u01c6\u0003\u01c6\u0003\u01c6\u0003\u01c6\u0003\u01c6\u0003",
+ "\u01c6\u0003\u01c6\u0003\u01c6\u0003\u01c6\u0003\u01c7\u0003\u01c7\u0003",
+ "\u01c7\u0003\u01c7\u0003\u01c8\u0003\u01c8\u0003\u01c8\u0003\u01c8\u0003",
+ "\u01c8\u0003\u01c8\u0003\u01c8\u0003\u01c8\u0003\u01c8\u0003\u01c8\u0003",
+ "\u01c8\u0003\u01c8\u0003\u01c8\u0003\u01c8\u0003\u01c8\u0003\u01c9\u0003",
+ "\u01c9\u0003\u01c9\u0003\u01c9\u0003\u01c9\u0003\u01c9\u0003\u01ca\u0003",
+ "\u01ca\u0003\u01ca\u0003\u01ca\u0003\u01ca\u0003\u01ca\u0003\u01ca\u0003",
+ "\u01ca\u0003\u01ca\u0003\u01ca\u0003\u01ca\u0003\u01ca\u0003\u01ca\u0003",
+ "\u01ca\u0003\u01ca\u0003\u01ca\u0003\u01ca\u0003\u01ca\u0003\u01ca\u0003",
+ "\u01ca\u0003\u01ca\u0003\u01ca\u0003\u01cb\u0003\u01cb\u0003\u01cb\u0003",
+ "\u01cb\u0003\u01cb\u0003\u01cb\u0003\u01cb\u0003\u01cc\u0003\u01cc\u0003",
+ "\u01cc\u0003\u01cc\u0003\u01cc\u0003\u01cc\u0003\u01cc\u0003\u01cd\u0003",
+ "\u01cd\u0003\u01cd\u0003\u01cd\u0003\u01cd\u0003\u01cd\u0003\u01cd\u0003",
+ "\u01cd\u0003\u01cd\u0003\u01ce\u0003\u01ce\u0003\u01ce\u0003\u01ce\u0003",
+ "\u01ce\u0003\u01cf\u0003\u01cf\u0003\u01cf\u0003\u01cf\u0003\u01cf\u0003",
+ "\u01cf\u0003\u01cf\u0003\u01cf\u0003\u01cf\u0003\u01d0\u0003\u01d0\u0003",
+ "\u01d0\u0003\u01d0\u0003\u01d0\u0003\u01d0\u0003\u01d0\u0003\u01d0\u0003",
+ "\u01d0\u0003\u01d1\u0003\u01d1\u0003\u01d1\u0003\u01d1\u0003\u01d1\u0003",
+ "\u01d1\u0003\u01d1\u0003\u01d1\u0003\u01d1\u0003\u01d1\u0003\u01d1\u0003",
+ "\u01d2\u0003\u01d2\u0003\u01d2\u0003\u01d2\u0003\u01d2\u0003\u01d2\u0003",
+ "\u01d2\u0003\u01d3\u0003\u01d3\u0003\u01d3\u0003\u01d3\u0003\u01d3\u0003",
+ "\u01d3\u0003\u01d4\u0003\u01d4\u0003\u01d4\u0003\u01d4\u0003\u01d4\u0003",
+ "\u01d4\u0003\u01d4\u0003\u01d5\u0003\u01d5\u0003\u01d5\u0003\u01d5\u0003",
+ "\u01d5\u0003\u01d5\u0003\u01d5\u0003\u01d5\u0003\u01d5\u0003\u01d5\u0003",
+ "\u01d6\u0003\u01d6\u0003\u01d6\u0003\u01d6\u0003\u01d6\u0003\u01d6\u0003",
+ "\u01d6\u0003\u01d6\u0003\u01d6\u0003\u01d6\u0003\u01d6\u0003\u01d6\u0003",
+ "\u01d6\u0003\u01d6\u0003\u01d6\u0003\u01d7\u0003\u01d7\u0003\u01d7\u0003",
+ "\u01d7\u0003\u01d7\u0003\u01d7\u0003\u01d7\u0003\u01d7\u0003\u01d7\u0003",
+ "\u01d7\u0003\u01d7\u0003\u01d8\u0003\u01d8\u0003\u01d8\u0003\u01d8\u0003",
+ "\u01d8\u0003\u01d8\u0003\u01d8\u0003\u01d8\u0003\u01d8\u0003\u01d9\u0003",
+ "\u01d9\u0003\u01d9\u0003\u01d9\u0003\u01d9\u0003\u01d9\u0003\u01d9\u0003",
+ "\u01d9\u0003\u01da\u0003\u01da\u0003\u01da\u0003\u01da\u0003\u01da\u0003",
+ "\u01da\u0003\u01da\u0003\u01da\u0003\u01da\u0003\u01da\u0003\u01db\u0003",
+ "\u01db\u0003\u01db\u0003\u01db\u0003\u01db\u0003\u01db\u0003\u01db\u0003",
+ "\u01db\u0003\u01db\u0003\u01db\u0003\u01dc\u0003\u01dc\u0003\u01dc\u0003",
+ "\u01dc\u0003\u01dc\u0003\u01dc\u0003\u01dc\u0003\u01dc\u0003\u01dd\u0003",
+ "\u01dd\u0003\u01dd\u0003\u01dd\u0003\u01dd\u0003\u01dd\u0003\u01dd\u0003",
+ "\u01de\u0003\u01de\u0003\u01de\u0003\u01de\u0003\u01de\u0003\u01de\u0003",
+ "\u01de\u0003\u01de\u0003\u01de\u0003\u01df\u0003\u01df\u0003\u01df\u0003",
+ "\u01df\u0003\u01df\u0003\u01df\u0003\u01df\u0003\u01e0\u0003\u01e0\u0003",
+ "\u01e0\u0003\u01e0\u0003\u01e0\u0003\u01e0\u0003\u01e0\u0003\u01e0\u0003",
+ "\u01e0\u0003\u01e0\u0003\u01e0\u0003\u01e1\u0003\u01e1\u0003\u01e1\u0003",
+ "\u01e1\u0003\u01e1\u0003\u01e2\u0003\u01e2\u0003\u01e2\u0003\u01e2\u0003",
+ "\u01e2\u0003\u01e2\u0003\u01e2\u0003\u01e2\u0003\u01e2\u0003\u01e2\u0003",
+ "\u01e2\u0003\u01e2\u0003\u01e2\u0003\u01e2\u0003\u01e2\u0003\u01e2\u0003",
+ "\u01e2\u0003\u01e2\u0003\u01e2\u0003\u01e2\u0003\u01e2\u0003\u01e3\u0003",
+ "\u01e3\u0003\u01e3\u0003\u01e3\u0003\u01e3\u0003\u01e3\u0003\u01e3\u0003",
+ "\u01e3\u0003\u01e3\u0003\u01e3\u0003\u01e3\u0003\u01e3\u0003\u01e3\u0003",
+ "\u01e4\u0003\u01e4\u0003\u01e4\u0003\u01e4\u0003\u01e5\u0003\u01e5\u0003",
+ "\u01e5\u0003\u01e5\u0003\u01e5\u0003\u01e5\u0003\u01e5\u0003\u01e6\u0003",
+ "\u01e6\u0003\u01e6\u0003\u01e6\u0003\u01e6\u0003\u01e6\u0003\u01e6\u0003",
+ "\u01e6\u0003\u01e7\u0003\u01e7\u0003\u01e7\u0003\u01e7\u0003\u01e7\u0003",
+ "\u01e7\u0003\u01e7\u0003\u01e7\u0003\u01e7\u0003\u01e7\u0003\u01e8\u0003",
+ "\u01e8\u0003\u01e8\u0003\u01e8\u0003\u01e8\u0003\u01e8\u0003\u01e8\u0003",
+ "\u01e9\u0003\u01e9\u0003\u01e9\u0003\u01e9\u0003\u01e9\u0003\u01e9\u0003",
+ "\u01e9\u0003\u01e9\u0003\u01e9\u0003\u01e9\u0003\u01e9\u0003\u01e9\u0003",
+ "\u01e9\u0003\u01e9\u0003\u01e9\u0003\u01e9\u0003\u01ea\u0003\u01ea\u0003",
+ "\u01ea\u0003\u01ea\u0003\u01ea\u0003\u01ea\u0003\u01ea\u0003\u01ea\u0003",
+ "\u01eb\u0003\u01eb\u0003\u01eb\u0003\u01eb\u0003\u01eb\u0003\u01eb\u0003",
+ "\u01eb\u0003\u01eb\u0003\u01ec\u0003\u01ec\u0003\u01ec\u0003\u01ec\u0003",
+ "\u01ec\u0003\u01ec\u0003\u01ec\u0003\u01ed\u0003\u01ed\u0003\u01ed\u0003",
+ "\u01ed\u0003\u01ed\u0003\u01ed\u0003\u01ed\u0003\u01ed\u0003\u01ee\u0003",
+ "\u01ee\u0003\u01ee\u0003\u01ee\u0003\u01ee\u0003\u01ee\u0003\u01ee\u0003",
+ "\u01ee\u0003\u01ee\u0003\u01ef\u0003\u01ef\u0003\u01ef\u0003\u01ef\u0003",
+ "\u01ef\u0003\u01ef\u0003\u01ef\u0003\u01ef\u0003\u01ef\u0003\u01ef\u0003",
+ "\u01ef\u0003\u01f0\u0003\u01f0\u0003\u01f0\u0003\u01f0\u0003\u01f0\u0003",
+ "\u01f0\u0003\u01f0\u0003\u01f0\u0003\u01f0\u0003\u01f0\u0003\u01f0\u0003",
+ "\u01f0\u0003\u01f0\u0003\u01f0\u0003\u01f0\u0003\u01f1\u0003\u01f1\u0003",
+ "\u01f1\u0003\u01f1\u0003\u01f1\u0003\u01f1\u0003\u01f1\u0003\u01f1\u0003",
+ "\u01f2\u0003\u01f2\u0003\u01f2\u0003\u01f2\u0003\u01f2\u0003\u01f2\u0003",
+ "\u01f2\u0003\u01f2\u0003\u01f2\u0003\u01f2\u0003\u01f2\u0003\u01f2\u0003",
+ "\u01f2\u0003\u01f3\u0003\u01f3\u0003\u01f3\u0003\u01f3\u0003\u01f3\u0003",
+ "\u01f3\u0003\u01f4\u0003\u01f4\u0003\u01f4\u0003\u01f4\u0003\u01f4\u0003",
+ "\u01f4\u0003\u01f4\u0003\u01f4\u0003\u01f4\u0003\u01f5\u0003\u01f5\u0003",
+ "\u01f5\u0003\u01f5\u0003\u01f5\u0003\u01f6\u0003\u01f6\u0003\u01f6\u0003",
+ "\u01f6\u0003\u01f6\u0003\u01f6\u0003\u01f6\u0003\u01f7\u0003\u01f7\u0003",
+ "\u01f7\u0003\u01f7\u0003\u01f7\u0003\u01f7\u0003\u01f7\u0003\u01f7\u0003",
+ "\u01f7\u0003\u01f7\u0003\u01f7\u0003\u01f7\u0003\u01f7\u0003\u01f7\u0003",
+ "\u01f7\u0003\u01f8\u0003\u01f8\u0003\u01f8\u0003\u01f8\u0003\u01f8\u0003",
+ "\u01f8\u0003\u01f8\u0003\u01f9\u0003\u01f9\u0003\u01f9\u0003\u01f9\u0003",
+ "\u01f9\u0003\u01f9\u0003\u01f9\u0003\u01f9\u0003\u01f9\u0003\u01f9\u0003",
+ "\u01f9\u0003\u01f9\u0003\u01f9\u0003\u01f9\u0003\u01f9\u0003\u01f9\u0003",
+ "\u01f9\u0003\u01f9\u0003\u01f9\u0003\u01f9\u0003\u01f9\u0003\u01f9\u0003",
+ "\u01fa\u0003\u01fa\u0003\u01fa\u0003\u01fa\u0003\u01fa\u0003\u01fa\u0003",
+ "\u01fa\u0003\u01fa\u0003\u01fa\u0003\u01fa\u0003\u01fb\u0003\u01fb\u0003",
+ "\u01fb\u0003\u01fb\u0003\u01fb\u0003\u01fb\u0003\u01fb\u0003\u01fb\u0003",
+ "\u01fb\u0003\u01fc\u0003\u01fc\u0003\u01fc\u0003\u01fc\u0003\u01fc\u0003",
+ "\u01fc\u0003\u01fc\u0003\u01fc\u0003\u01fd\u0003\u01fd\u0003\u01fd\u0003",
+ "\u01fd\u0003\u01fd\u0003\u01fd\u0003\u01fe\u0003\u01fe\u0003\u01fe\u0003",
+ "\u01fe\u0003\u01fe\u0003\u01fe\u0003\u01fe\u0003\u01ff\u0003\u01ff\u0003",
+ "\u01ff\u0003\u01ff\u0003\u0200\u0003\u0200\u0003\u0200\u0003\u0200\u0003",
+ "\u0200\u0003\u0201\u0003\u0201\u0003\u0201\u0003\u0201\u0003\u0201\u0003",
+ "\u0201\u0003\u0201\u0003\u0201\u0003\u0201\u0003\u0201\u0003\u0202\u0003",
+ "\u0202\u0003\u0202\u0003\u0202\u0003\u0202\u0003\u0202\u0003\u0202\u0003",
+ "\u0202\u0003\u0203\u0003\u0203\u0003\u0203\u0003\u0203\u0003\u0203\u0003",
+ "\u0203\u0003\u0203\u0003\u0203\u0003\u0203\u0003\u0203\u0003\u0203\u0003",
+ "\u0203\u0003\u0203\u0003\u0203\u0003\u0203\u0003\u0203\u0003\u0204\u0003",
+ "\u0204\u0003\u0204\u0003\u0204\u0003\u0204\u0003\u0204\u0003\u0204\u0003",
+ "\u0204\u0003\u0204\u0003\u0204\u0003\u0204\u0003\u0205\u0003\u0205\u0003",
+ "\u0205\u0003\u0205\u0003\u0205\u0003\u0205\u0003\u0205\u0003\u0205\u0003",
+ "\u0205\u0003\u0205\u0003\u0205\u0003\u0205\u0003\u0206\u0003\u0206\u0003",
+ "\u0206\u0003\u0206\u0003\u0206\u0003\u0206\u0003\u0206\u0003\u0206\u0003",
+ "\u0206\u0003\u0206\u0003\u0206\u0003\u0206\u0003\u0206\u0003\u0206\u0003",
+ "\u0207\u0003\u0207\u0003\u0207\u0003\u0207\u0003\u0207\u0003\u0207\u0003",
+ "\u0208\u0003\u0208\u0003\u0208\u0003\u0208\u0003\u0208\u0003\u0209\u0003",
+ "\u0209\u0003\u0209\u0003\u0209\u0003\u0209\u0003\u0209\u0003\u0209\u0003",
+ "\u0209\u0003\u0209\u0003\u0209\u0003\u0209\u0003\u0209\u0003\u0209\u0003",
+ "\u0209\u0003\u0209\u0003\u0209\u0003\u0209\u0003\u0209\u0003\u020a\u0003",
+ "\u020a\u0003\u020a\u0003\u020a\u0003\u020a\u0003\u020a\u0003\u020a\u0003",
+ "\u020a\u0003\u020a\u0003\u020a\u0003\u020a\u0003\u020a\u0003\u020a\u0003",
+ "\u020a\u0003\u020a\u0003\u020a\u0003\u020a\u0003\u020a\u0003\u020a\u0003",
+ "\u020a\u0003\u020a\u0003\u020a\u0003\u020a\u0003\u020a\u0003\u020b\u0003",
+ "\u020b\u0003\u020b\u0003\u020b\u0003\u020b\u0003\u020b\u0003\u020b\u0003",
+ "\u020c\u0003\u020c\u0003\u020c\u0003\u020c\u0003\u020c\u0003\u020c\u0003",
+ "\u020d\u0003\u020d\u0003\u020d\u0003\u020d\u0003\u020d\u0003\u020e\u0003",
+ "\u020e\u0003\u020e\u0003\u020e\u0003\u020e\u0003\u020e\u0003\u020e\u0003",
+ "\u020f\u0003\u020f\u0003\u020f\u0003\u020f\u0003\u020f\u0003\u020f\u0003",
+ "\u0210\u0003\u0210\u0003\u0210\u0003\u0210\u0003\u0210\u0003\u0210\u0003",
+ "\u0210\u0003\u0211\u0003\u0211\u0003\u0211\u0003\u0211\u0003\u0211\u0003",
+ "\u0211\u0003\u0211\u0003\u0211\u0003\u0211\u0003\u0211\u0003\u0211\u0003",
+ "\u0212\u0003\u0212\u0003\u0212\u0003\u0212\u0003\u0212\u0003\u0212\u0003",
+ "\u0212\u0003\u0212\u0003\u0212\u0003\u0212\u0003\u0212\u0003\u0212\u0003",
+ "\u0213\u0003\u0213\u0003\u0213\u0003\u0213\u0003\u0213\u0003\u0213\u0003",
+ "\u0213\u0003\u0213\u0003\u0213\u0003\u0213\u0003\u0213\u0003\u0213\u0003",
+ "\u0213\u0003\u0213\u0003\u0213\u0003\u0213\u0003\u0214\u0003\u0214\u0003",
+ "\u0214\u0003\u0214\u0003\u0214\u0003\u0214\u0003\u0214\u0003\u0214\u0003",
+ "\u0215\u0003\u0215\u0003\u0215\u0003\u0215\u0003\u0215\u0003\u0215\u0003",
+ "\u0215\u0003\u0215\u0003\u0215\u0003\u0215\u0003\u0216\u0003\u0216\u0003",
+ "\u0216\u0003\u0216\u0003\u0216\u0003\u0216\u0003\u0216\u0003\u0216\u0003",
+ "\u0216\u0003\u0216\u0003\u0216\u0003\u0216\u0003\u0217\u0003\u0217\u0003",
+ "\u0217\u0003\u0217\u0003\u0217\u0003\u0217\u0003\u0218\u0003\u0218\u0003",
+ "\u0218\u0003\u0218\u0003\u0218\u0003\u0219\u0003\u0219\u0003\u0219\u0003",
+ "\u0219\u0003\u0219\u0003\u0219\u0003\u021a\u0003\u021a\u0003\u021a\u0003",
+ "\u021a\u0003\u021a\u0003\u021a\u0003\u021b\u0003\u021b\u0003\u021b\u0003",
+ "\u021b\u0003\u021b\u0003\u021b\u0003\u021b\u0003\u021c\u0003\u021c\u0003",
+ "\u021c\u0003\u021c\u0003\u021c\u0003\u021c\u0003\u021c\u0003\u021c\u0003",
+ "\u021c\u0003\u021c\u0003\u021d\u0003\u021d\u0003\u021d\u0003\u021d\u0003",
+ "\u021d\u0003\u021d\u0003\u021d\u0003\u021d\u0003\u021e\u0003\u021e\u0003",
+ "\u021e\u0003\u021e\u0003\u021e\u0003\u021e\u0003\u021e\u0003\u021f\u0003",
+ "\u021f\u0003\u021f\u0003\u021f\u0003\u021f\u0003\u021f\u0003\u0220\u0003",
+ "\u0220\u0003\u0220\u0003\u0220\u0003\u0220\u0003\u0220\u0003\u0220\u0003",
+ "\u0220\u0003\u0220\u0003\u0220\u0003\u0220\u0003\u0220\u0003\u0220\u0003",
+ "\u0220\u0003\u0220\u0003\u0220\u0003\u0220\u0003\u0220\u0003\u0220\u0003",
+ "\u0220\u0003\u0220\u0003\u0220\u0003\u0220\u0003\u0220\u0003\u0221\u0003",
+ "\u0221\u0003\u0221\u0003\u0221\u0003\u0221\u0003\u0221\u0003\u0221\u0003",
+ "\u0221\u0003\u0222\u0003\u0222\u0003\u0222\u0003\u0222\u0003\u0222\u0003",
+ "\u0222\u0003\u0222\u0003\u0222\u0003\u0223\u0003\u0223\u0003\u0223\u0003",
+ "\u0223\u0003\u0224\u0003\u0224\u0003\u0224\u0003\u0224\u0003\u0224\u0003",
+ "\u0224\u0003\u0224\u0003\u0225\u0003\u0225\u0003\u0225\u0003\u0225\u0003",
+ "\u0225\u0003\u0225\u0003\u0225\u0003\u0225\u0003\u0226\u0003\u0226\u0003",
+ "\u0226\u0003\u0226\u0003\u0226\u0003\u0226\u0003\u0226\u0003\u0226\u0003",
+ "\u0226\u0003\u0226\u0003\u0226\u0003\u0226\u0003\u0226\u0003\u0226\u0003",
+ "\u0226\u0003\u0226\u0003\u0227\u0003\u0227\u0003\u0227\u0003\u0227\u0003",
+ "\u0227\u0003\u0227\u0003\u0227\u0003\u0227\u0003\u0227\u0003\u0228\u0003",
+ "\u0228\u0003\u0228\u0003\u0228\u0003\u0228\u0003\u0228\u0003\u0228\u0003",
+ "\u0228\u0003\u0228\u0003\u0228\u0003\u0229\u0003\u0229\u0003\u0229\u0003",
+ "\u0229\u0003\u0229\u0003\u0229\u0003\u0229\u0003\u0229\u0003\u0229\u0003",
+ "\u0229\u0003\u022a\u0003\u022a\u0003\u022a\u0003\u022a\u0003\u022a\u0003",
+ "\u022a\u0003\u022b\u0003\u022b\u0003\u022b\u0003\u022b\u0003\u022b\u0003",
+ "\u022c\u0003\u022c\u0003\u022c\u0003\u022c\u0003\u022c\u0003\u022c\u0003",
+ "\u022c\u0003\u022c\u0003\u022d\u0003\u022d\u0003\u022d\u0003\u022d\u0003",
+ "\u022d\u0003\u022e\u0003\u022e\u0003\u022e\u0003\u022e\u0003\u022e\u0003",
+ "\u022e\u0003\u022e\u0003\u022e\u0003\u022e\u0003\u022e\u0003\u022e\u0003",
+ "\u022e\u0003\u022e\u0003\u022e\u0003\u022e\u0003\u022e\u0003\u022e\u0003",
+ "\u022e\u0003\u022e\u0003\u022e\u0003\u022e\u0003\u022e\u0003\u022e\u0003",
+ "\u022e\u0003\u022e\u0003\u022f\u0003\u022f\u0003\u022f\u0003\u022f\u0003",
+ "\u022f\u0003\u022f\u0003\u022f\u0003\u022f\u0003\u022f\u0003\u0230\u0003",
+ "\u0230\u0003\u0230\u0003\u0230\u0003\u0230\u0003\u0230\u0003\u0230\u0003",
+ "\u0230\u0003\u0230\u0003\u0230\u0003\u0231\u0003\u0231\u0003\u0231\u0003",
+ "\u0231\u0003\u0231\u0003\u0231\u0003\u0231\u0003\u0231\u0003\u0231\u0003",
+ "\u0231\u0003\u0231\u0003\u0231\u0003\u0231\u0003\u0231\u0003\u0231\u0003",
+ "\u0231\u0003\u0231\u0003\u0231\u0003\u0231\u0003\u0231\u0003\u0231\u0003",
+ "\u0231\u0003\u0231\u0003\u0231\u0003\u0231\u0003\u0231\u0003\u0231\u0003",
+ "\u0231\u0003\u0232\u0003\u0232\u0003\u0232\u0003\u0232\u0003\u0232\u0003",
+ "\u0232\u0003\u0232\u0003\u0232\u0003\u0232\u0003\u0232\u0003\u0232\u0003",
+ "\u0232\u0003\u0232\u0003\u0232\u0003\u0232\u0003\u0232\u0003\u0232\u0003",
+ "\u0232\u0003\u0232\u0003\u0232\u0003\u0232\u0003\u0232\u0003\u0232\u0003",
+ "\u0233\u0003\u0233\u0003\u0233\u0003\u0233\u0003\u0233\u0003\u0233\u0003",
+ "\u0233\u0003\u0233\u0003\u0233\u0003\u0233\u0003\u0233\u0003\u0233\u0003",
+ "\u0233\u0003\u0233\u0003\u0233\u0003\u0233\u0003\u0234\u0003\u0234\u0003",
+ "\u0234\u0003\u0234\u0003\u0234\u0003\u0234\u0003\u0234\u0003\u0234\u0003",
+ "\u0234\u0003\u0234\u0003\u0234\u0003\u0234\u0003\u0234\u0003\u0235\u0003",
+ "\u0235\u0003\u0235\u0003\u0235\u0003\u0235\u0003\u0235\u0003\u0235\u0003",
+ "\u0235\u0003\u0235\u0003\u0235\u0003\u0236\u0003\u0236\u0003\u0236\u0003",
+ "\u0236\u0003\u0237\u0003\u0237\u0003\u0237\u0003\u0237\u0003\u0237\u0003",
+ "\u0237\u0003\u0237\u0003\u0238\u0003\u0238\u0003\u0238\u0003\u0238\u0003",
+ "\u0238\u0003\u0238\u0003\u0238\u0003\u0238\u0003\u0238\u0003\u0239\u0003",
+ "\u0239\u0003\u0239\u0003\u0239\u0003\u0239\u0003\u0239\u0003\u0239\u0003",
+ "\u0239\u0003\u0239\u0003\u0239\u0003\u0239\u0003\u0239\u0003\u023a\u0003",
+ "\u023a\u0003\u023a\u0003\u023a\u0003\u023a\u0003\u023a\u0003\u023a\u0003",
+ "\u023a\u0003\u023a\u0003\u023a\u0003\u023a\u0003\u023a\u0003\u023a\u0003",
+ "\u023a\u0003\u023a\u0003\u023a\u0003\u023a\u0003\u023a\u0003\u023a\u0003",
+ "\u023a\u0003\u023a\u0003\u023b\u0003\u023b\u0003\u023b\u0003\u023b\u0003",
+ "\u023b\u0003\u023c\u0003\u023c\u0003\u023c\u0003\u023c\u0003\u023c\u0003",
+ "\u023c\u0003\u023d\u0003\u023d\u0003\u023d\u0003\u023d\u0003\u023d\u0003",
+ "\u023d\u0003\u023d\u0003\u023d\u0003\u023d\u0003\u023e\u0003\u023e\u0003",
+ "\u023e\u0003\u023e\u0003\u023e\u0003\u023e\u0003\u023f\u0003\u023f\u0003",
+ "\u023f\u0003\u023f\u0003\u023f\u0003\u023f\u0003\u023f\u0003\u023f\u0003",
+ "\u023f\u0003\u0240\u0003\u0240\u0003\u0240\u0003\u0240\u0003\u0240\u0003",
+ "\u0240\u0003\u0240\u0003\u0240\u0003\u0240\u0003\u0241\u0003\u0241\u0003",
+ "\u0241\u0003\u0241\u0003\u0241\u0003\u0241\u0003\u0241\u0003\u0241\u0003",
+ "\u0241\u0003\u0241\u0003\u0241\u0003\u0241\u0003\u0242\u0003\u0242\u0003",
+ "\u0242\u0003\u0242\u0003\u0242\u0003\u0242\u0003\u0242\u0003\u0243\u0003",
+ "\u0243\u0003\u0243\u0003\u0243\u0003\u0243\u0003\u0243\u0003\u0243\u0003",
+ "\u0243\u0003\u0243\u0003\u0243\u0003\u0243\u0003\u0244\u0003\u0244\u0003",
+ "\u0244\u0003\u0244\u0003\u0244\u0003\u0244\u0003\u0244\u0003\u0244\u0003",
+ "\u0244\u0003\u0244\u0003\u0245\u0003\u0245\u0003\u0245\u0003\u0245\u0003",
+ "\u0245\u0003\u0245\u0003\u0246\u0003\u0246\u0003\u0246\u0003\u0246\u0003",
+ "\u0246\u0003\u0246\u0003\u0246\u0003\u0246\u0003\u0247\u0003\u0247\u0003",
+ "\u0247\u0003\u0247\u0003\u0247\u0003\u0248\u0003\u0248\u0003\u0248\u0003",
+ "\u0248\u0003\u0248\u0003\u0248\u0003\u0248\u0003\u0248\u0003\u0248\u0003",
+ "\u0249\u0003\u0249\u0003\u0249\u0003\u0249\u0003\u0249\u0003\u0249\u0003",
+ "\u0249\u0003\u0249\u0003\u024a\u0003\u024a\u0003\u024a\u0003\u024a\u0003",
+ "\u024a\u0003\u024a\u0003\u024a\u0003\u024b\u0003\u024b\u0003\u024b\u0003",
+ "\u024b\u0003\u024b\u0003\u024b\u0003\u024b\u0003\u024c\u0003\u024c\u0003",
+ "\u024c\u0003\u024c\u0003\u024c\u0003\u024d\u0003\u024d\u0003\u024d\u0003",
+ "\u024d\u0003\u024d\u0003\u024e\u0003\u024e\u0003\u024e\u0003\u024e\u0003",
+ "\u024e\u0003\u024e\u0003\u024e\u0003\u024e\u0003\u024e\u0003\u024f\u0003",
+ "\u024f\u0003\u024f\u0003\u024f\u0003\u024f\u0003\u024f\u0003\u024f\u0003",
+ "\u024f\u0003\u024f\u0003\u0250\u0003\u0250\u0003\u0250\u0003\u0250\u0003",
+ "\u0250\u0003\u0250\u0003\u0250\u0003\u0251\u0003\u0251\u0003\u0251\u0003",
+ "\u0251\u0003\u0251\u0003\u0252\u0003\u0252\u0003\u0252\u0003\u0252\u0003",
+ "\u0252\u0003\u0252\u0003\u0252\u0003\u0252\u0003\u0252\u0003\u0252\u0003",
+ "\u0253\u0003\u0253\u0003\u0253\u0003\u0253\u0003\u0253\u0003\u0254\u0003",
+ "\u0254\u0003\u0254\u0003\u0254\u0003\u0254\u0003\u0254\u0003\u0254\u0003",
+ "\u0254\u0003\u0254\u0003\u0254\u0003\u0254\u0003\u0254\u0003\u0254\u0003",
+ "\u0254\u0003\u0255\u0003\u0255\u0003\u0255\u0003\u0255\u0003\u0255\u0003",
+ "\u0255\u0003\u0255\u0003\u0255\u0003\u0255\u0003\u0255\u0003\u0255\u0003",
+ "\u0255\u0003\u0256\u0003\u0256\u0003\u0256\u0003\u0256\u0003\u0257\u0003",
+ "\u0257\u0003\u0257\u0003\u0257\u0003\u0257\u0003\u0258\u0003\u0258\u0003",
+ "\u0258\u0003\u0258\u0003\u0258\u0003\u0258\u0003\u0258\u0003\u0258\u0003",
+ "\u0258\u0003\u0258\u0003\u0258\u0003\u0258\u0003\u0258\u0003\u0259\u0003",
+ "\u0259\u0003\u0259\u0003\u0259\u0003\u0259\u0003\u0259\u0003\u0259\u0003",
+ "\u025a\u0003\u025a\u0003\u025a\u0003\u025a\u0003\u025a\u0003\u025a\u0003",
+ "\u025a\u0003\u025a\u0003\u025a\u0003\u025a\u0003\u025a\u0003\u025b\u0003",
+ "\u025b\u0003\u025b\u0003\u025b\u0003\u025b\u0003\u025b\u0003\u025b\u0003",
+ "\u025b\u0003\u025b\u0003\u025b\u0003\u025b\u0003\u025c\u0003\u025c\u0003",
+ "\u025c\u0003\u025c\u0003\u025c\u0003\u025c\u0003\u025c\u0003\u025c\u0003",
+ "\u025c\u0003\u025d\u0003\u025d\u0003\u025d\u0003\u025d\u0003\u025d\u0003",
+ "\u025d\u0003\u025d\u0003\u025d\u0003\u025d\u0003\u025d\u0003\u025d\u0003",
+ "\u025d\u0003\u025d\u0003\u025e\u0003\u025e\u0003\u025e\u0003\u025f\u0003",
+ "\u025f\u0003\u025f\u0003\u025f\u0003\u025f\u0003\u025f\u0003\u025f\u0003",
+ "\u025f\u0003\u025f\u0003\u025f\u0003\u0260\u0003\u0260\u0003\u0260\u0003",
+ "\u0261\u0003\u0261\u0003\u0261\u0003\u0261\u0003\u0261\u0003\u0261\u0003",
+ "\u0261\u0003\u0262\u0003\u0262\u0003\u0262\u0003\u0262\u0003\u0262\u0003",
+ "\u0262\u0003\u0262\u0003\u0262\u0003\u0262\u0003\u0262\u0003\u0262\u0003",
+ "\u0262\u0003\u0262\u0003\u0262\u0003\u0262\u0003\u0262\u0003\u0262\u0003",
+ "\u0262\u0003\u0262\u0003\u0262\u0003\u0262\u0003\u0262\u0003\u0262\u0003",
+ "\u0262\u0003\u0262\u0003\u0262\u0003\u0262\u0003\u0262\u0003\u0263\u0003",
+ "\u0263\u0003\u0263\u0003\u0263\u0003\u0263\u0003\u0263\u0003\u0263\u0003",
+ "\u0263\u0003\u0263\u0003\u0263\u0003\u0263\u0003\u0263\u0003\u0263\u0003",
+ "\u0263\u0003\u0263\u0003\u0263\u0003\u0263\u0003\u0263\u0003\u0263\u0003",
+ "\u0263\u0003\u0263\u0003\u0263\u0003\u0263\u0003\u0263\u0003\u0263\u0003",
+ "\u0263\u0003\u0263\u0003\u0264\u0003\u0264\u0003\u0264\u0003\u0264\u0003",
+ "\u0264\u0003\u0264\u0003\u0264\u0003\u0264\u0003\u0264\u0003\u0264\u0003",
+ "\u0264\u0003\u0264\u0003\u0264\u0003\u0264\u0003\u0264\u0003\u0264\u0003",
+ "\u0264\u0003\u0264\u0003\u0264\u0003\u0264\u0003\u0265\u0003\u0265\u0003",
+ "\u0265\u0003\u0265\u0003\u0266\u0003\u0266\u0003\u0266\u0003\u0266\u0003",
+ "\u0266\u0003\u0266\u0003\u0266\u0003\u0266\u0003\u0266\u0003\u0266\u0003",
+ "\u0267\u0003\u0267\u0003\u0267\u0003\u0267\u0003\u0267\u0003\u0267\u0003",
+ "\u0267\u0003\u0268\u0003\u0268\u0003\u0268\u0003\u0268\u0003\u0268\u0003",
+ "\u0268\u0003\u0268\u0003\u0269\u0003\u0269\u0003\u0269\u0003\u0269\u0003",
+ "\u0269\u0003\u0269\u0003\u0269\u0003\u0269\u0003\u0269\u0003\u026a\u0003",
+ "\u026a\u0003\u026a\u0003\u026a\u0003\u026a\u0003\u026a\u0003\u026a\u0003",
+ "\u026a\u0003\u026b\u0003\u026b\u0003\u026b\u0003\u026b\u0003\u026b\u0003",
+ "\u026b\u0003\u026b\u0003\u026b\u0003\u026b\u0003\u026b\u0003\u026b\u0003",
+ "\u026b\u0003\u026b\u0003\u026b\u0003\u026b\u0003\u026b\u0003\u026c\u0003",
+ "\u026c\u0003\u026c\u0003\u026c\u0003\u026c\u0003\u026c\u0003\u026c\u0003",
+ "\u026c\u0003\u026c\u0003\u026c\u0003\u026d\u0003\u026d\u0003\u026d\u0003",
+ "\u026d\u0003\u026d\u0003\u026d\u0003\u026d\u0003\u026d\u0003\u026d\u0003",
+ "\u026d\u0003\u026d\u0003\u026d\u0003\u026e\u0003\u026e\u0003\u026e\u0003",
+ "\u026e\u0003\u026e\u0003\u026e\u0003\u026e\u0003\u026e\u0003\u026e\u0003",
+ "\u026e\u0003\u026f\u0003\u026f\u0003\u026f\u0003\u026f\u0003\u026f\u0003",
+ "\u0270\u0003\u0270\u0003\u0270\u0003\u0270\u0003\u0270\u0003\u0270\u0003",
+ "\u0270\u0003\u0271\u0003\u0271\u0003\u0271\u0003\u0271\u0003\u0271\u0003",
+ "\u0271\u0003\u0271\u0003\u0271\u0003\u0271\u0003\u0271\u0003\u0272\u0003",
+ "\u0272\u0003\u0272\u0003\u0272\u0003\u0272\u0003\u0272\u0003\u0272\u0003",
+ "\u0272\u0003\u0272\u0003\u0272\u0003\u0272\u0003\u0272\u0003\u0272\u0003",
+ "\u0272\u0003\u0273\u0003\u0273\u0003\u0273\u0003\u0273\u0003\u0273\u0003",
+ "\u0273\u0003\u0273\u0003\u0273\u0003\u0273\u0003\u0273\u0003\u0273\u0003",
+ "\u0274\u0003\u0274\u0003\u0274\u0003\u0274\u0003\u0274\u0003\u0274\u0003",
+ "\u0274\u0003\u0274\u0003\u0275\u0003\u0275\u0003\u0275\u0003\u0275\u0003",
+ "\u0275\u0003\u0275\u0003\u0275\u0003\u0275\u0003\u0276\u0003\u0276\u0003",
+ "\u0276\u0003\u0276\u0003\u0276\u0003\u0276\u0003\u0276\u0003\u0276\u0003",
+ "\u0276\u0003\u0276\u0003\u0277\u0003\u0277\u0003\u0277\u0003\u0277\u0003",
+ "\u0277\u0003\u0277\u0003\u0277\u0003\u0277\u0003\u0277\u0003\u0277\u0003",
+ "\u0277\u0003\u0277\u0003\u0277\u0003\u0278\u0003\u0278\u0003\u0278\u0003",
+ "\u0278\u0003\u0278\u0003\u0278\u0003\u0279\u0003\u0279\u0003\u0279\u0003",
+ "\u0279\u0003\u0279\u0003\u0279\u0003\u0279\u0003\u0279\u0003\u0279\u0003",
+ "\u027a\u0003\u027a\u0003\u027a\u0003\u027a\u0003\u027a\u0003\u027a\u0003",
+ "\u027a\u0003\u027a\u0003\u027a\u0003\u027a\u0003\u027a\u0003\u027b\u0003",
+ "\u027b\u0003\u027b\u0003\u027b\u0003\u027b\u0003\u027b\u0003\u027b\u0003",
+ "\u027b\u0003\u027b\u0003\u027b\u0003\u027b\u0003\u027c\u0003\u027c\u0003",
+ "\u027c\u0003\u027c\u0003\u027c\u0003\u027c\u0003\u027c\u0003\u027c\u0003",
+ "\u027c\u0003\u027c\u0003\u027d\u0003\u027d\u0003\u027d\u0003\u027d\u0003",
+ "\u027d\u0003\u027d\u0003\u027d\u0003\u027d\u0003\u027d\u0003\u027d\u0003",
+ "\u027d\u0003\u027d\u0003\u027d\u0003\u027e\u0003\u027e\u0003\u027e\u0003",
+ "\u027e\u0003\u027e\u0003\u027e\u0003\u027e\u0003\u027e\u0003\u027e\u0003",
+ "\u027e\u0003\u027e\u0003\u027e\u0003\u027e\u0003\u027e\u0003\u027f\u0003",
+ "\u027f\u0003\u027f\u0003\u027f\u0003\u027f\u0003\u027f\u0003\u027f\u0003",
+ "\u027f\u0003\u027f\u0003\u0280\u0003\u0280\u0003\u0280\u0003\u0280\u0003",
+ "\u0280\u0003\u0280\u0003\u0280\u0003\u0280\u0003\u0280\u0003\u0280\u0003",
+ "\u0280\u0003\u0281\u0003\u0281\u0003\u0281\u0003\u0281\u0003\u0281\u0003",
+ "\u0281\u0003\u0281\u0003\u0281\u0003\u0281\u0003\u0281\u0003\u0281\u0003",
+ "\u0281\u0003\u0281\u0003\u0281\u0003\u0281\u0003\u0281\u0003\u0282\u0003",
+ "\u0282\u0003\u0282\u0003\u0282\u0003\u0282\u0003\u0282\u0003\u0282\u0003",
+ "\u0282\u0003\u0282\u0003\u0282\u0003\u0282\u0003\u0282\u0003\u0282\u0003",
+ "\u0283\u0003\u0283\u0003\u0283\u0003\u0283\u0003\u0283\u0003\u0283\u0003",
+ "\u0283\u0003\u0283\u0003\u0283\u0003\u0283\u0003\u0283\u0003\u0283\u0003",
+ "\u0283\u0003\u0283\u0003\u0284\u0003\u0284\u0003\u0284\u0003\u0284\u0003",
+ "\u0284\u0003\u0284\u0003\u0284\u0003\u0284\u0003\u0284\u0003\u0285\u0003",
+ "\u0285\u0003\u0285\u0003\u0285\u0003\u0285\u0003\u0285\u0003\u0285\u0003",
+ "\u0285\u0003\u0285\u0003\u0285\u0003\u0285\u0003\u0285\u0003\u0286\u0003",
+ "\u0286\u0003\u0286\u0003\u0286\u0003\u0286\u0003\u0286\u0003\u0286\u0003",
+ "\u0286\u0003\u0286\u0003\u0286\u0003\u0287\u0003\u0287\u0003\u0287\u0003",
+ "\u0287\u0003\u0287\u0003\u0287\u0003\u0287\u0003\u0287\u0003\u0287\u0003",
+ "\u0287\u0003\u0287\u0003\u0288\u0003\u0288\u0003\u0288\u0003\u0288\u0003",
+ "\u0288\u0003\u0288\u0003\u0288\u0003\u0288\u0003\u0288\u0003\u0288\u0003",
+ "\u0289\u0003\u0289\u0003\u0289\u0003\u0289\u0003\u0289\u0003\u0289\u0003",
+ "\u0289\u0003\u0289\u0003\u028a\u0003\u028a\u0003\u028a\u0003\u028a\u0003",
+ "\u028a\u0003\u028a\u0003\u028a\u0003\u028a\u0003\u028a\u0003\u028b\u0003",
+ "\u028b\u0003\u028b\u0003\u028b\u0003\u028b\u0003\u028b\u0003\u028b\u0003",
+ "\u028b\u0003\u028b\u0003\u028b\u0003\u028b\u0003\u028b\u0003\u028b\u0003",
+ "\u028b\u0003\u028c\u0003\u028c\u0003\u028c\u0003\u028c\u0003\u028c\u0003",
+ "\u028c\u0003\u028c\u0003\u028c\u0003\u028d\u0003\u028d\u0003\u028d\u0003",
+ "\u028e\u0003\u028e\u0003\u028e\u0003\u028e\u0003\u028e\u0003\u028e\u0003",
+ "\u028e\u0003\u028e\u0003\u028f\u0003\u028f\u0003\u028f\u0003\u028f\u0003",
+ "\u028f\u0003\u028f\u0003\u028f\u0003\u028f\u0003\u0290\u0003\u0290\u0003",
+ "\u0290\u0003\u0290\u0003\u0290\u0003\u0290\u0003\u0290\u0003\u0290\u0003",
+ "\u0290\u0003\u0290\u0003\u0290\u0003\u0290\u0003\u0291\u0003\u0291\u0003",
+ "\u0291\u0003\u0291\u0003\u0291\u0003\u0291\u0003\u0291\u0003\u0291\u0003",
+ "\u0291\u0003\u0291\u0003\u0292\u0003\u0292\u0003\u0292\u0003\u0292\u0003",
+ "\u0292\u0003\u0292\u0003\u0292\u0003\u0292\u0003\u0292\u0003\u0293\u0003",
+ "\u0293\u0003\u0293\u0003\u0293\u0003\u0293\u0003\u0293\u0003\u0293\u0003",
+ "\u0294\u0003\u0294\u0003\u0294\u0003\u0294\u0003\u0294\u0003\u0294\u0003",
+ "\u0294\u0003\u0294\u0003\u0294\u0003\u0294\u0003\u0294\u0003\u0294\u0003",
+ "\u0294\u0003\u0294\u0003\u0294\u0003\u0294\u0003\u0294\u0003\u0294\u0003",
+ "\u0295\u0003\u0295\u0003\u0295\u0003\u0295\u0003\u0295\u0003\u0295\u0003",
+ "\u0295\u0003\u0295\u0003\u0295\u0003\u0296\u0003\u0296\u0003\u0296\u0003",
+ "\u0296\u0003\u0296\u0003\u0296\u0003\u0296\u0003\u0296\u0003\u0296\u0003",
+ "\u0296\u0003\u0296\u0003\u0296\u0003\u0296\u0003\u0296\u0003\u0296\u0003",
+ "\u0296\u0003\u0296\u0003\u0296\u0003\u0296\u0003\u0297\u0003\u0297\u0003",
+ "\u0297\u0003\u0297\u0003\u0297\u0003\u0297\u0003\u0297\u0003\u0297\u0003",
+ "\u0297\u0003\u0297\u0003\u0297\u0003\u0297\u0003\u0297\u0003\u0297\u0003",
+ "\u0297\u0003\u0297\u0003\u0297\u0003\u0298\u0003\u0298\u0003\u0298\u0003",
+ "\u0298\u0003\u0298\u0003\u0298\u0003\u0299\u0003\u0299\u0003\u0299\u0003",
+ "\u0299\u0003\u0299\u0003\u0299\u0003\u029a\u0003\u029a\u0003\u029a\u0003",
+ "\u029a\u0003\u029a\u0003\u029a\u0003\u029a\u0003\u029a\u0003\u029b\u0003",
+ "\u029b\u0003\u029b\u0003\u029b\u0003\u029b\u0003\u029b\u0003\u029b\u0003",
+ "\u029b\u0003\u029b\u0003\u029b\u0003\u029b\u0003\u029b\u0003\u029b\u0003",
+ "\u029b\u0003\u029b\u0003\u029b\u0003\u029b\u0003\u029b\u0003\u029b\u0003",
+ "\u029b\u0003\u029c\u0003\u029c\u0003\u029c\u0003\u029c\u0003\u029c\u0003",
+ "\u029c\u0003\u029c\u0003\u029c\u0003\u029c\u0003\u029c\u0003\u029c\u0003",
+ "\u029c\u0003\u029c\u0003\u029c\u0003\u029c\u0003\u029c\u0003\u029c\u0003",
+ "\u029c\u0003\u029c\u0003\u029c\u0003\u029c\u0003\u029d\u0003\u029d\u0003",
+ "\u029d\u0003\u029d\u0003\u029d\u0003\u029d\u0003\u029d\u0003\u029d\u0003",
+ "\u029d\u0003\u029d\u0003\u029d\u0003\u029d\u0003\u029d\u0003\u029d\u0003",
+ "\u029d\u0003\u029e\u0003\u029e\u0003\u029e\u0003\u029e\u0003\u029e\u0003",
+ "\u029e\u0003\u029e\u0003\u029f\u0003\u029f\u0003\u029f\u0003\u029f\u0003",
+ "\u029f\u0003\u029f\u0003\u029f\u0003\u029f\u0003\u029f\u0003\u029f\u0003",
+ "\u029f\u0003\u029f\u0003\u029f\u0003\u029f\u0003\u029f\u0003\u02a0\u0003",
+ "\u02a0\u0003\u02a0\u0003\u02a0\u0003\u02a0\u0003\u02a0\u0003\u02a0\u0003",
+ "\u02a0\u0003\u02a0\u0003\u02a0\u0003\u02a0\u0003\u02a0\u0003\u02a0\u0003",
+ "\u02a0\u0003\u02a0\u0003\u02a0\u0003\u02a1\u0003\u02a1\u0003\u02a1\u0003",
+ "\u02a1\u0003\u02a1\u0003\u02a1\u0003\u02a1\u0003\u02a1\u0003\u02a1\u0003",
+ "\u02a2\u0003\u02a2\u0003\u02a2\u0003\u02a2\u0003\u02a2\u0003\u02a2\u0003",
+ "\u02a2\u0003\u02a2\u0003\u02a2\u0003\u02a2\u0003\u02a3\u0003\u02a3\u0003",
+ "\u02a3\u0003\u02a3\u0003\u02a3\u0003\u02a3\u0003\u02a3\u0003\u02a3\u0003",
+ "\u02a3\u0003\u02a3\u0003\u02a3\u0003\u02a3\u0003\u02a3\u0003\u02a4\u0003",
+ "\u02a4\u0003\u02a4\u0003\u02a4\u0003\u02a4\u0003\u02a4\u0003\u02a4\u0003",
+ "\u02a4\u0003\u02a4\u0003\u02a4\u0003\u02a5\u0003\u02a5\u0003\u02a5\u0003",
+ "\u02a5\u0003\u02a5\u0003\u02a5\u0003\u02a5\u0003\u02a5\u0003\u02a6\u0003",
+ "\u02a6\u0003\u02a6\u0003\u02a6\u0003\u02a6\u0003\u02a6\u0003\u02a6\u0003",
+ "\u02a7\u0003\u02a7\u0003\u02a7\u0003\u02a7\u0003\u02a7\u0003\u02a7\u0003",
+ "\u02a7\u0003\u02a8\u0003\u02a8\u0003\u02a8\u0003\u02a8\u0003\u02a8\u0003",
+ "\u02a8\u0003\u02a8\u0003\u02a9\u0003\u02a9\u0003\u02a9\u0003\u02a9\u0003",
+ "\u02a9\u0003\u02a9\u0003\u02a9\u0003\u02aa\u0003\u02aa\u0003\u02aa\u0003",
+ "\u02aa\u0003\u02aa\u0003\u02aa\u0003\u02ab\u0003\u02ab\u0003\u02ab\u0003",
+ "\u02ab\u0003\u02ab\u0003\u02ab\u0003\u02ab\u0003\u02ab\u0003\u02ac\u0003",
+ "\u02ac\u0003\u02ac\u0003\u02ac\u0003\u02ac\u0003\u02ac\u0003\u02ac\u0003",
+ "\u02ac\u0003\u02ac\u0003\u02ac\u0003\u02ac\u0003\u02ac\u0003\u02ad\u0003",
+ "\u02ad\u0003\u02ad\u0003\u02ad\u0003\u02ad\u0003\u02ad\u0003\u02ad\u0003",
+ "\u02ad\u0003\u02ad\u0003\u02ad\u0003\u02ad\u0003\u02ad\u0003\u02ad\u0003",
+ "\u02ae\u0003\u02ae\u0003\u02ae\u0003\u02ae\u0003\u02ae\u0003\u02ae\u0003",
+ "\u02ae\u0003\u02ae\u0003\u02ae\u0003\u02ae\u0003\u02ae\u0003\u02ae\u0003",
+ "\u02ae\u0003\u02ae\u0003\u02ae\u0003\u02ae\u0003\u02ae\u0003\u02af\u0003",
+ "\u02af\u0003\u02af\u0003\u02af\u0003\u02af\u0003\u02af\u0003\u02af\u0003",
+ "\u02af\u0003\u02af\u0003\u02af\u0003\u02af\u0003\u02af\u0003\u02af\u0003",
+ "\u02b0\u0003\u02b0\u0003\u02b0\u0003\u02b0\u0003\u02b0\u0003\u02b0\u0003",
+ "\u02b0\u0003\u02b0\u0003\u02b0\u0003\u02b0\u0003\u02b0\u0003\u02b0\u0003",
+ "\u02b1\u0003\u02b1\u0003\u02b1\u0003\u02b1\u0003\u02b1\u0003\u02b1\u0003",
+ "\u02b1\u0003\u02b1\u0003\u02b1\u0003\u02b1\u0003\u02b2\u0003\u02b2\u0003",
+ "\u02b2\u0003\u02b2\u0003\u02b2\u0003\u02b2\u0003\u02b2\u0003\u02b2\u0003",
+ "\u02b2\u0003\u02b3\u0003\u02b3\u0003\u02b3\u0003\u02b3\u0003\u02b4\u0003",
+ "\u02b4\u0003\u02b4\u0003\u02b4\u0003\u02b4\u0003\u02b5\u0003\u02b5\u0003",
+ "\u02b5\u0003\u02b5\u0003\u02b5\u0003\u02b5\u0003\u02b5\u0003\u02b5\u0003",
+ "\u02b5\u0003\u02b5\u0003\u02b5\u0003\u02b6\u0003\u02b6\u0003\u02b6\u0003",
+ "\u02b6\u0003\u02b6\u0003\u02b6\u0003\u02b6\u0003\u02b6\u0003\u02b6\u0003",
+ "\u02b6\u0003\u02b7\u0003\u02b7\u0003\u02b7\u0003\u02b7\u0003\u02b7\u0003",
+ "\u02b7\u0003\u02b7\u0003\u02b7\u0003\u02b7\u0003\u02b7\u0003\u02b8\u0003",
+ "\u02b8\u0003\u02b8\u0003\u02b9\u0003\u02b9\u0003\u02b9\u0003\u02b9\u0003",
+ "\u02b9\u0003\u02b9\u0003\u02b9\u0003\u02b9\u0003\u02b9\u0003\u02b9\u0003",
+ "\u02ba\u0003\u02ba\u0003\u02ba\u0003\u02ba\u0003\u02ba\u0003\u02ba\u0003",
+ "\u02ba\u0003\u02ba\u0003\u02ba\u0003\u02ba\u0003\u02ba\u0003\u02ba\u0003",
+ "\u02ba\u0003\u02ba\u0003\u02ba\u0003\u02ba\u0003\u02bb\u0003\u02bb\u0003",
+ "\u02bb\u0003\u02bb\u0003\u02bb\u0003\u02bb\u0003\u02bb\u0003\u02bb\u0003",
+ "\u02bc\u0003\u02bc\u0003\u02bc\u0003\u02bc\u0003\u02bc\u0003\u02bc\u0003",
+ "\u02bc\u0003\u02bc\u0003\u02bc\u0003\u02bc\u0003\u02bc\u0003\u02bc\u0003",
+ "\u02bc\u0003\u02bc\u0003\u02bc\u0003\u02bc\u0003\u02bc\u0003\u02bd\u0003",
+ "\u02bd\u0003\u02bd\u0003\u02bd\u0003\u02bd\u0003\u02be\u0003\u02be\u0003",
+ "\u02be\u0003\u02be\u0003\u02bf\u0003\u02bf\u0003\u02bf\u0003\u02bf\u0003",
+ "\u02bf\u0003\u02c0\u0003\u02c0\u0003\u02c0\u0003\u02c0\u0003\u02c0\u0003",
+ "\u02c0\u0003\u02c0\u0003\u02c0\u0003\u02c0\u0003\u02c0\u0003\u02c0\u0003",
+ "\u02c0\u0003\u02c0\u0003\u02c0\u0003\u02c1\u0003\u02c1\u0003\u02c1\u0003",
+ "\u02c1\u0003\u02c1\u0003\u02c1\u0003\u02c1\u0003\u02c1\u0003\u02c1\u0003",
+ "\u02c1\u0003\u02c1\u0003\u02c2\u0003\u02c2\u0003\u02c2\u0003\u02c2\u0003",
+ "\u02c2\u0003\u02c2\u0003\u02c2\u0003\u02c2\u0003\u02c2\u0003\u02c2\u0003",
+ "\u02c2\u0003\u02c3\u0003\u02c3\u0003\u02c3\u0003\u02c3\u0003\u02c3\u0003",
+ "\u02c3\u0003\u02c3\u0003\u02c3\u0003\u02c3\u0003\u02c3\u0003\u02c3\u0003",
+ "\u02c3\u0003\u02c3\u0003\u02c4\u0003\u02c4\u0003\u02c4\u0003\u02c4\u0003",
+ "\u02c4\u0003\u02c4\u0003\u02c4\u0003\u02c4\u0003\u02c4\u0003\u02c4\u0003",
+ "\u02c4\u0003\u02c4\u0003\u02c5\u0003\u02c5\u0003\u02c5\u0003\u02c5\u0003",
+ "\u02c5\u0003\u02c5\u0003\u02c5\u0003\u02c5\u0003\u02c6\u0003\u02c6\u0003",
+ "\u02c6\u0003\u02c6\u0003\u02c6\u0003\u02c7\u0003\u02c7\u0003\u02c7\u0003",
+ "\u02c7\u0003\u02c7\u0003\u02c7\u0003\u02c7\u0003\u02c7\u0003\u02c7\u0003",
+ "\u02c7\u0003\u02c7\u0003\u02c7\u0003\u02c7\u0003\u02c7\u0003\u02c7\u0003",
+ "\u02c8\u0003\u02c8\u0003\u02c8\u0003\u02c8\u0003\u02c8\u0003\u02c8\u0003",
+ "\u02c8\u0003\u02c8\u0003\u02c8\u0003\u02c8\u0003\u02c8\u0003\u02c8\u0003",
+ "\u02c9\u0003\u02c9\u0003\u02c9\u0003\u02c9\u0003\u02c9\u0003\u02c9\u0003",
+ "\u02c9\u0003\u02c9\u0003\u02c9\u0003\u02c9\u0003\u02ca\u0003\u02ca\u0003",
+ "\u02ca\u0003\u02ca\u0003\u02ca\u0003\u02ca\u0003\u02ca\u0003\u02ca\u0003",
+ "\u02ca\u0003\u02ca\u0003\u02ca\u0003\u02cb\u0003\u02cb\u0003\u02cb\u0003",
+ "\u02cb\u0003\u02cb\u0003\u02cb\u0003\u02cb\u0003\u02cb\u0003\u02cb\u0003",
+ "\u02cb\u0003\u02cb\u0003\u02cb\u0003\u02cb\u0003\u02cb\u0003\u02cb\u0003",
+ "\u02cc\u0003\u02cc\u0003\u02cc\u0003\u02cc\u0003\u02cc\u0003\u02cc\u0003",
+ "\u02cc\u0003\u02cc\u0003\u02cc\u0003\u02cc\u0003\u02cc\u0003\u02cd\u0003",
+ "\u02cd\u0003\u02cd\u0003\u02cd\u0003\u02cd\u0003\u02cd\u0003\u02cd\u0003",
+ "\u02cd\u0003\u02cd\u0003\u02cd\u0003\u02cd\u0003\u02cd\u0003\u02cd\u0003",
+ "\u02cd\u0003\u02cd\u0003\u02cd\u0003\u02cd\u0003\u02cd\u0003\u02cd\u0003",
+ "\u02ce\u0003\u02ce\u0003\u02ce\u0003\u02ce\u0003\u02ce\u0003\u02ce\u0003",
+ "\u02ce\u0003\u02ce\u0003\u02ce\u0003\u02ce\u0003\u02ce\u0003\u02ce\u0003",
+ "\u02ce\u0003\u02ce\u0003\u02ce\u0003\u02ce\u0003\u02ce\u0003\u02ce\u0003",
+ "\u02cf\u0003\u02cf\u0003\u02cf\u0003\u02cf\u0003\u02cf\u0003\u02cf\u0003",
+ "\u02cf\u0003\u02cf\u0003\u02cf\u0003\u02cf\u0003\u02cf\u0003\u02d0\u0003",
+ "\u02d0\u0003\u02d0\u0003\u02d0\u0003\u02d0\u0003\u02d0\u0003\u02d0\u0003",
+ "\u02d0\u0003\u02d0\u0003\u02d0\u0003\u02d0\u0003\u02d0\u0003\u02d0\u0003",
+ "\u02d0\u0003\u02d0\u0003\u02d0\u0003\u02d1\u0003\u02d1\u0003\u02d1\u0003",
+ "\u02d1\u0003\u02d1\u0003\u02d2\u0003\u02d2\u0003\u02d2\u0003\u02d2\u0003",
+ "\u02d2\u0003\u02d2\u0003\u02d2\u0003\u02d2\u0003\u02d2\u0003\u02d3\u0003",
+ "\u02d3\u0003\u02d3\u0003\u02d3\u0003\u02d4\u0003\u02d4\u0003\u02d4\u0003",
+ "\u02d4\u0003\u02d4\u0003\u02d4\u0003\u02d4\u0003\u02d4\u0003\u02d4\u0003",
+ "\u02d4\u0003\u02d4\u0003\u02d5\u0003\u02d5\u0003\u02d5\u0003\u02d5\u0003",
+ "\u02d5\u0003\u02d5\u0003\u02d5\u0003\u02d5\u0003\u02d6\u0003\u02d6\u0003",
+ "\u02d6\u0003\u02d6\u0003\u02d6\u0003\u02d7\u0003\u02d7\u0003\u02d7\u0003",
+ "\u02d7\u0003\u02d7\u0003\u02d7\u0003\u02d7\u0003\u02d7\u0003\u02d7\u0003",
+ "\u02d8\u0003\u02d8\u0003\u02d8\u0003\u02d8\u0003\u02d8\u0003\u02d9\u0003",
+ "\u02d9\u0003\u02d9\u0003\u02d9\u0003\u02d9\u0003\u02d9\u0003\u02da\u0003",
+ "\u02da\u0003\u02da\u0003\u02da\u0003\u02da\u0003\u02da\u0003\u02da\u0003",
+ "\u02da\u0003\u02da\u0003\u02db\u0003\u02db\u0003\u02db\u0003\u02db\u0003",
+ "\u02db\u0003\u02db\u0003\u02db\u0003\u02db\u0003\u02db\u0003\u02dc\u0003",
+ "\u02dc\u0003\u02dc\u0003\u02dc\u0003\u02dc\u0003\u02dd\u0003\u02dd\u0003",
+ "\u02dd\u0003\u02dd\u0003\u02dd\u0003\u02dd\u0003\u02dd\u0003\u02dd\u0003",
+ "\u02dd\u0003\u02dd\u0003\u02dd\u0003\u02de\u0003\u02de\u0003\u02de\u0003",
+ "\u02de\u0003\u02de\u0003\u02de\u0003\u02de\u0003\u02de\u0003\u02df\u0003",
+ "\u02df\u0003\u02df\u0003\u02df\u0003\u02e0\u0003\u02e0\u0003\u02e0\u0003",
+ "\u02e0\u0003\u02e0\u0003\u02e0\u0003\u02e1\u0003\u02e1\u0003\u02e1\u0003",
+ "\u02e1\u0003\u02e1\u0003\u02e1\u0003\u02e1\u0003\u02e1\u0003\u02e1\u0003",
+ "\u02e1\u0003\u02e1\u0003\u02e1\u0003\u02e1\u0003\u02e1\u0003\u02e1\u0003",
+ "\u02e1\u0003\u02e1\u0003\u02e1\u0003\u02e1\u0003\u02e1\u0003\u02e1\u0003",
+ "\u02e1\u0003\u02e1\u0003\u02e1\u0003\u02e1\u0003\u02e1\u0003\u02e2\u0003",
+ "\u02e2\u0003\u02e2\u0003\u02e2\u0003\u02e2\u0003\u02e2\u0003\u02e2\u0003",
+ "\u02e2\u0003\u02e2\u0003\u02e2\u0003\u02e2\u0003\u02e2\u0003\u02e2\u0003",
+ "\u02e2\u0003\u02e2\u0003\u02e2\u0003\u02e2\u0003\u02e2\u0003\u02e3\u0003",
+ "\u02e3\u0003\u02e3\u0003\u02e3\u0003\u02e3\u0003\u02e3\u0003\u02e3\u0003",
+ "\u02e3\u0003\u02e3\u0003\u02e3\u0003\u02e3\u0003\u02e3\u0003\u02e3\u0003",
+ "\u02e3\u0003\u02e3\u0003\u02e3\u0003\u02e3\u0003\u02e3\u0003\u02e3\u0003",
+ "\u02e3\u0003\u02e3\u0003\u02e3\u0003\u02e3\u0003\u02e4\u0003\u02e4\u0003",
+ "\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003",
+ "\u02e5\u0003\u02e5\u0003\u02e5\u0003\u02e5\u0003\u02e5\u0003\u02e6\u0003",
+ "\u02e6\u0003\u02e6\u0003\u02e6\u0003\u02e6\u0003\u02e6\u0003\u02e6\u0003",
+ "\u02e6\u0003\u02e7\u0003\u02e7\u0003\u02e7\u0003\u02e7\u0003\u02e7\u0003",
+ "\u02e7\u0003\u02e7\u0003\u02e7\u0003\u02e8\u0003\u02e8\u0003\u02e8\u0003",
+ "\u02e8\u0003\u02e8\u0003\u02e8\u0003\u02e8\u0003\u02e8\u0003\u02e9\u0003",
+ "\u02e9\u0003\u02e9\u0003\u02e9\u0003\u02e9\u0003\u02e9\u0003\u02e9\u0003",
+ "\u02e9\u0003\u02ea\u0003\u02ea\u0003\u02ea\u0003\u02ea\u0003\u02ea\u0003",
+ "\u02ea\u0003\u02ea\u0003\u02eb\u0003\u02eb\u0003\u02eb\u0003\u02eb\u0003",
+ "\u02eb\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003",
+ "\u02ec\u0003\u02ed\u0003\u02ed\u0003\u02ed\u0003\u02ed\u0003\u02ed\u0003",
+ "\u02ed\u0003\u02ed\u0003\u02ee\u0003\u02ee\u0003\u02ee\u0003\u02ee\u0003",
+ "\u02ee\u0003\u02ee\u0003\u02ee\u0003\u02ee\u0003\u02ef\u0003\u02ef\u0003",
+ "\u02ef\u0003\u02ef\u0003\u02ef\u0003\u02ef\u0003\u02ef\u0003\u02ef\u0003",
+ "\u02ef\u0003\u02ef\u0003\u02f0\u0003\u02f0\u0003\u02f0\u0003\u02f0\u0003",
+ "\u02f0\u0003\u02f1\u0003\u02f1\u0003\u02f1\u0003\u02f1\u0003\u02f1\u0003",
+ "\u02f1\u0003\u02f1\u0003\u02f1\u0003\u02f1\u0003\u02f2\u0003\u02f2\u0003",
+ "\u02f2\u0003\u02f2\u0003\u02f2\u0003\u02f2\u0003\u02f3\u0003\u02f3\u0003",
+ "\u02f3\u0003\u02f3\u0003\u02f3\u0003\u02f3\u0003\u02f4\u0003\u02f4\u0003",
+ "\u02f4\u0003\u02f4\u0003\u02f4\u0003\u02f4\u0003\u02f5\u0003\u02f5\u0003",
+ "\u02f5\u0003\u02f5\u0003\u02f5\u0003\u02f5\u0003\u02f5\u0003\u02f5\u0003",
+ "\u02f5\u0003\u02f5\u0003\u02f5\u0003\u02f5\u0003\u02f6\u0003\u02f6\u0003",
+ "\u02f6\u0003\u02f6\u0003\u02f6\u0003\u02f7\u0003\u02f7\u0003\u02f7\u0003",
+ "\u02f7\u0003\u02f7\u0003\u02f7\u0003\u02f8\u0003\u02f8\u0003\u02f8\u0003",
+ "\u02f8\u0003\u02f8\u0003\u02f8\u0003\u02f8\u0003\u02f9\u0003\u02f9\u0003",
+ "\u02f9\u0003\u02f9\u0003\u02f9\u0003\u02fa\u0003\u02fa\u0003\u02fa\u0003",
+ "\u02fa\u0003\u02fa\u0003\u02fb\u0003\u02fb\u0003\u02fb\u0003\u02fc\u0003",
+ "\u02fc\u0003\u02fc\u0003\u02fc\u0003\u02fc\u0003\u02fc\u0003\u02fd\u0003",
+ "\u02fd\u0003\u02fd\u0003\u02fd\u0003\u02fd\u0003\u02fe\u0003\u02fe\u0003",
+ "\u02fe\u0003\u02fe\u0003\u02ff\u0003\u02ff\u0003\u02ff\u0003\u02ff\u0003",
+ "\u02ff\u0003\u02ff\u0003\u02ff\u0003\u0300\u0003\u0300\u0003\u0300\u0003",
+ "\u0300\u0003\u0300\u0003\u0301\u0003\u0301\u0003\u0301\u0003\u0301\u0003",
+ "\u0301\u0003\u0301\u0003\u0301\u0003\u0301\u0003\u0301\u0003\u0301\u0003",
+ "\u0301\u0003\u0301\u0003\u0301\u0003\u0301\u0003\u0302\u0003\u0302\u0003",
+ "\u0302\u0003\u0302\u0003\u0302\u0003\u0302\u0003\u0303\u0003\u0303\u0003",
+ "\u0303\u0003\u0303\u0003\u0303\u0003\u0303\u0003\u0303\u0003\u0303\u0003",
+ "\u0303\u0003\u0303\u0003\u0304\u0003\u0304\u0003\u0304\u0003\u0304\u0003",
+ "\u0304\u0003\u0304\u0003\u0304\u0003\u0304\u0003\u0304\u0003\u0304\u0003",
+ "\u0304\u0003\u0304\u0003\u0304\u0003\u0304\u0003\u0304\u0003\u0305\u0003",
+ "\u0305\u0003\u0305\u0003\u0305\u0003\u0305\u0003\u0305\u0003\u0305\u0003",
+ "\u0305\u0003\u0305\u0003\u0306\u0003\u0306\u0003\u0306\u0003\u0306\u0003",
+ "\u0306\u0003\u0306\u0003\u0306\u0003\u0306\u0003\u0307\u0003\u0307\u0003",
+ "\u0307\u0003\u0307\u0003\u0307\u0003\u0307\u0003\u0307\u0003\u0308\u0003",
+ "\u0308\u0003\u0308\u0003\u0308\u0003\u0308\u0003\u0308\u0003\u0308\u0003",
+ "\u0308\u0003\u0309\u0003\u0309\u0003\u0309\u0003\u0309\u0003\u0309\u0003",
+ "\u030a\u0003\u030a\u0003\u030a\u0003\u030a\u0003\u030a\u0003\u030a\u0003",
+ "\u030a\u0003\u030a\u0003\u030b\u0003\u030b\u0003\u030b\u0003\u030b\u0003",
+ "\u030b\u0003\u030b\u0003\u030b\u0003\u030b\u0003\u030b\u0003\u030c\u0003",
+ "\u030c\u0003\u030c\u0003\u030c\u0003\u030c\u0003\u030c\u0003\u030c\u0003",
+ "\u030c\u0003\u030d\u0003\u030d\u0003\u030d\u0003\u030d\u0003\u030d\u0003",
+ "\u030d\u0003\u030d\u0003\u030d\u0003\u030e\u0003\u030e\u0003\u030e\u0003",
+ "\u030e\u0003\u030e\u0003\u030e\u0003\u030e\u0003\u030e\u0003\u030e\u0003",
+ "\u030e\u0003\u030e\u0003\u030e\u0003\u030e\u0003\u030e\u0003\u030e\u0003",
+ "\u030e\u0003\u030e\u0003\u030e\u0003\u030e\u0003\u030e\u0003\u030e\u0003",
+ "\u030e\u0003\u030e\u0003\u030f\u0003\u030f\u0003\u030f\u0003\u030f\u0003",
+ "\u030f\u0003\u030f\u0003\u030f\u0003\u030f\u0003\u030f\u0003\u030f\u0003",
+ "\u030f\u0003\u030f\u0003\u030f\u0003\u030f\u0003\u030f\u0003\u030f\u0003",
+ "\u030f\u0003\u030f\u0003\u030f\u0003\u030f\u0003\u030f\u0003\u030f\u0003",
+ "\u030f\u0003\u030f\u0003\u030f\u0003\u030f\u0003\u0310\u0003\u0310\u0003",
+ "\u0310\u0003\u0310\u0003\u0311\u0003\u0311\u0003\u0311\u0003\u0311\u0003",
+ "\u0311\u0003\u0311\u0003\u0311\u0003\u0311\u0003\u0311\u0003\u0311\u0003",
+ "\u0312\u0003\u0312\u0003\u0312\u0003\u0312\u0003\u0312\u0003\u0312\u0003",
+ "\u0312\u0003\u0313\u0003\u0313\u0003\u0313\u0003\u0313\u0003\u0313\u0003",
+ "\u0313\u0003\u0314\u0003\u0314\u0003\u0314\u0003\u0314\u0003\u0314\u0003",
+ "\u0314\u0003\u0314\u0003\u0314\u0003\u0314\u0003\u0314\u0003\u0314\u0003",
+ "\u0314\u0003\u0314\u0003\u0314\u0003\u0314\u0003\u0314\u0003\u0314\u0003",
+ "\u0314\u0003\u0314\u0003\u0314\u0003\u0314\u0003\u0314\u0003\u0314\u0003",
+ "\u0314\u0003\u0314\u0003\u0315\u0003\u0315\u0003\u0315\u0003\u0315\u0003",
+ "\u0315\u0003\u0316\u0003\u0316\u0003\u0316\u0003\u0316\u0003\u0316\u0003",
+ "\u0317\u0003\u0317\u0003\u0317\u0003\u0317\u0003\u0317\u0003\u0317\u0003",
+ "\u0318\u0003\u0318\u0003\u0318\u0003\u0318\u0003\u0319\u0003\u0319\u0003",
+ "\u0319\u0003\u0319\u0003\u0319\u0003\u031a\u0003\u031a\u0003\u031a\u0003",
+ "\u031a\u0003\u031a\u0003\u031a\u0003\u031b\u0003\u031b\u0003\u031b\u0003",
+ "\u031b\u0003\u031b\u0003\u031c\u0003\u031c\u0003\u031c\u0003\u031c\u0003",
+ "\u031c\u0003\u031c\u0003\u031c\u0003\u031c\u0003\u031c\u0003\u031d\u0003",
+ "\u031d\u0003\u031d\u0003\u031d\u0003\u031d\u0003\u031d\u0003\u031d\u0003",
+ "\u031d\u0003\u031e\u0003\u031e\u0003\u031e\u0003\u031e\u0003\u031e\u0003",
+ "\u031e\u0003\u031e\u0003\u031f\u0003\u031f\u0003\u031f\u0003\u031f\u0003",
+ "\u031f\u0003\u031f\u0003\u031f\u0003\u031f\u0003\u031f\u0003\u031f\u0003",
+ "\u031f\u0003\u0320\u0003\u0320\u0003\u0320\u0003\u0320\u0003\u0320\u0003",
+ "\u0320\u0003\u0320\u0003\u0320\u0003\u0321\u0003\u0321\u0003\u0321\u0003",
+ "\u0321\u0003\u0321\u0003\u0321\u0003\u0321\u0003\u0322\u0003\u0322\u0003",
+ "\u0322\u0003\u0322\u0003\u0323\u0003\u0323\u0003\u0323\u0003\u0323\u0003",
+ "\u0323\u0003\u0323\u0003\u0323\u0003\u0323\u0003\u0324\u0003\u0324\u0003",
+ "\u0324\u0003\u0324\u0003\u0324\u0003\u0324\u0003\u0324\u0003\u0325\u0003",
+ "\u0325\u0003\u0325\u0003\u0325\u0003\u0325\u0003\u0325\u0003\u0325\u0003",
+ "\u0325\u0003\u0326\u0003\u0326\u0003\u0326\u0003\u0326\u0003\u0326\u0003",
+ "\u0326\u0003\u0326\u0003\u0326\u0003\u0327\u0003\u0327\u0003\u0327\u0003",
+ "\u0327\u0003\u0327\u0003\u0327\u0003\u0328\u0003\u0328\u0003\u0328\u0003",
+ "\u0328\u0003\u0328\u0003\u0328\u0003\u0328\u0003\u0328\u0003\u0328\u0003",
+ "\u0328\u0003\u0328\u0003\u0328\u0003\u0328\u0003\u0329\u0003\u0329\u0003",
+ "\u0329\u0003\u0329\u0003\u0329\u0003\u0329\u0003\u0329\u0003\u0329\u0003",
+ "\u0329\u0003\u0329\u0003\u0329\u0003\u0329\u0003\u0329\u0003\u0329\u0003",
+ "\u0329\u0003\u0329\u0003\u032a\u0003\u032a\u0003\u032a\u0003\u032a\u0003",
+ "\u032a\u0003\u032a\u0003\u032a\u0003\u032a\u0003\u032a\u0003\u032a\u0003",
+ "\u032a\u0003\u032a\u0003\u032a\u0003\u032b\u0003\u032b\u0003\u032b\u0003",
+ "\u032b\u0003\u032b\u0003\u032b\u0003\u032b\u0003\u032b\u0003\u032b\u0003",
+ "\u032b\u0003\u032b\u0003\u032b\u0003\u032c\u0003\u032c\u0003\u032c\u0003",
+ "\u032c\u0003\u032c\u0003\u032c\u0003\u032c\u0003\u032c\u0003\u032c\u0003",
+ "\u032c\u0003\u032c\u0003\u032c\u0003\u032d\u0003\u032d\u0003\u032d\u0003",
+ "\u032d\u0003\u032d\u0003\u032d\u0003\u032d\u0003\u032d\u0003\u032d\u0003",
+ "\u032d\u0003\u032d\u0003\u032d\u0003\u032d\u0003\u032e\u0003\u032e\u0003",
+ "\u032e\u0003\u032e\u0003\u032e\u0003\u032e\u0003\u032e\u0003\u032e\u0003",
+ "\u032e\u0003\u032e\u0003\u032e\u0003\u032f\u0003\u032f\u0003\u032f\u0003",
+ "\u032f\u0003\u032f\u0003\u032f\u0003\u032f\u0003\u032f\u0003\u032f\u0003",
+ "\u0330\u0003\u0330\u0003\u0330\u0003\u0330\u0003\u0330\u0003\u0330\u0003",
+ "\u0330\u0003\u0330\u0003\u0330\u0003\u0330\u0003\u0330\u0003\u0330\u0003",
+ "\u0330\u0003\u0331\u0003\u0331\u0003\u0331\u0003\u0331\u0003\u0331\u0003",
+ "\u0331\u0003\u0331\u0003\u0331\u0003\u0331\u0003\u0331\u0003\u0331\u0003",
+ "\u0331\u0003\u0332\u0003\u0332\u0003\u0332\u0003\u0332\u0003\u0332\u0003",
+ "\u0332\u0003\u0332\u0003\u0332\u0003\u0332\u0003\u0332\u0003\u0332\u0003",
+ "\u0332\u0003\u0332\u0003\u0332\u0003\u0333\u0003\u0333\u0003\u0333\u0003",
+ "\u0333\u0003\u0333\u0003\u0333\u0003\u0333\u0003\u0333\u0003\u0333\u0003",
+ "\u0333\u0003\u0333\u0003\u0333\u0003\u0333\u0003\u0333\u0003\u0334\u0003",
+ "\u0334\u0003\u0334\u0003\u0334\u0003\u0334\u0003\u0334\u0003\u0334\u0003",
+ "\u0334\u0003\u0334\u0003\u0334\u0003\u0334\u0003\u0334\u0003\u0334\u0003",
+ "\u0334\u0003\u0334\u0003\u0334\u0003\u0334\u0003\u0334\u0003\u0334\u0003",
+ "\u0334\u0003\u0334\u0003\u0335\u0003\u0335\u0003\u0335\u0003\u0335\u0003",
+ "\u0335\u0003\u0335\u0003\u0335\u0003\u0335\u0003\u0336\u0003\u0336\u0003",
+ "\u0336\u0003\u0336\u0003\u0336\u0003\u0336\u0003\u0336\u0003\u0336\u0003",
+ "\u0336\u0003\u0337\u0003\u0337\u0003\u0337\u0003\u0337\u0003\u0337\u0003",
+ "\u0337\u0003\u0337\u0003\u0337\u0003\u0337\u0003\u0338\u0003\u0338\u0003",
+ "\u0338\u0003\u0338\u0003\u0338\u0003\u0338\u0003\u0338\u0003\u0338\u0003",
+ "\u0339\u0003\u0339\u0003\u0339\u0003\u0339\u0003\u0339\u0003\u0339\u0003",
+ "\u0339\u0003\u0339\u0003\u0339\u0003\u033a\u0003\u033a\u0003\u033a\u0003",
+ "\u033a\u0003\u033a\u0003\u033a\u0003\u033a\u0003\u033b\u0003\u033b\u0003",
+ "\u033b\u0003\u033b\u0003\u033b\u0003\u033b\u0003\u033b\u0003\u033c\u0003",
+ "\u033c\u0003\u033c\u0003\u033c\u0003\u033c\u0003\u033c\u0003\u033c\u0003",
+ "\u033c\u0003\u033c\u0003\u033c\u0003\u033c\u0003\u033c\u0003\u033d\u0003",
+ "\u033d\u0003\u033d\u0003\u033d\u0003\u033d\u0003\u033d\u0003\u033d\u0003",
+ "\u033e\u0003\u033e\u0003\u033e\u0003\u033e\u0003\u033e\u0003\u033e\u0003",
+ "\u033e\u0003\u033e\u0003\u033e\u0003\u033e\u0003\u033e\u0003\u033e\u0003",
+ "\u033e\u0003\u033e\u0003\u033f\u0003\u033f\u0003\u033f\u0003\u033f\u0003",
+ "\u033f\u0003\u033f\u0003\u033f\u0003\u033f\u0003\u033f\u0003\u0340\u0003",
+ "\u0340\u0003\u0340\u0003\u0340\u0003\u0340\u0003\u0340\u0003\u0340\u0003",
+ "\u0340\u0003\u0340\u0003\u0340\u0003\u0340\u0003\u0340\u0003\u0340\u0003",
+ "\u0340\u0003\u0340\u0003\u0341\u0003\u0341\u0003\u0341\u0003\u0341\u0003",
+ "\u0341\u0003\u0341\u0003\u0342\u0003\u0342\u0003\u0342\u0003\u0342\u0003",
+ "\u0342\u0003\u0342\u0003\u0342\u0003\u0342\u0003\u0342\u0003\u0343\u0003",
+ "\u0343\u0003\u0343\u0003\u0343\u0003\u0343\u0003\u0343\u0003\u0343\u0003",
+ "\u0343\u0003\u0343\u0003\u0344\u0003\u0344\u0003\u0344\u0003\u0344\u0003",
+ "\u0344\u0003\u0344\u0003\u0344\u0003\u0345\u0003\u0345\u0003\u0345\u0003",
+ "\u0345\u0003\u0345\u0003\u0345\u0003\u0345\u0003\u0345\u0003\u0346\u0003",
+ "\u0346\u0003\u0346\u0003\u0346\u0003\u0346\u0003\u0346\u0003\u0346\u0003",
+ "\u0346\u0003\u0346\u0003\u0346\u0003\u0347\u0003\u0347\u0003\u0347\u0003",
+ "\u0347\u0003\u0347\u0003\u0347\u0003\u0347\u0003\u0347\u0003\u0347\u0003",
+ "\u0347\u0003\u0347\u0003\u0348\u0003\u0348\u0003\u0348\u0003\u0348\u0003",
+ "\u0348\u0003\u0348\u0003\u0348\u0003\u0348\u0003\u0348\u0003\u0349\u0003",
+ "\u0349\u0003\u0349\u0003\u0349\u0003\u0349\u0003\u0349\u0003\u0349\u0003",
+ "\u0349\u0003\u034a\u0003\u034a\u0003\u034a\u0003\u034a\u0003\u034a\u0003",
+ "\u034a\u0003\u034a\u0003\u034b\u0003\u034b\u0003\u034b\u0003\u034b\u0003",
+ "\u034b\u0003\u034b\u0003\u034c\u0003\u034c\u0003\u034c\u0003\u034c\u0003",
+ "\u034c\u0003\u034c\u0003\u034c\u0003\u034c\u0003\u034c\u0003\u034c\u0003",
+ "\u034c\u0003\u034d\u0003\u034d\u0003\u034d\u0003\u034d\u0003\u034d\u0003",
+ "\u034d\u0003\u034d\u0003\u034e\u0003\u034e\u0003\u034e\u0003\u034e\u0003",
+ "\u034e\u0003\u034e\u0003\u034e\u0003\u034e\u0003\u034e\u0003\u034f\u0003",
+ "\u034f\u0003\u034f\u0003\u034f\u0003\u034f\u0003\u034f\u0003\u034f\u0003",
+ "\u034f\u0003\u034f\u0003\u034f\u0003\u034f\u0003\u0350\u0003\u0350\u0003",
+ "\u0350\u0003\u0350\u0003\u0350\u0003\u0350\u0003\u0350\u0003\u0350\u0003",
+ "\u0350\u0003\u0350\u0003\u0351\u0003\u0351\u0003\u0351\u0003\u0351\u0003",
+ "\u0351\u0003\u0351\u0003\u0351\u0003\u0352\u0003\u0352\u0003\u0352\u0003",
+ "\u0352\u0003\u0352\u0003\u0352\u0003\u0352\u0003\u0352\u0003\u0352\u0003",
+ "\u0353\u0003\u0353\u0003\u0353\u0003\u0353\u0003\u0353\u0003\u0353\u0003",
+ "\u0353\u0003\u0353\u0003\u0353\u0003\u0353\u0003\u0353\u0003\u0353\u0003",
+ "\u0353\u0003\u0353\u0003\u0353\u0003\u0353\u0003\u0353\u0003\u0353\u0003",
+ "\u0353\u0003\u0353\u0003\u0353\u0003\u0353\u0003\u0353\u0003\u0354\u0003",
+ "\u0354\u0003\u0354\u0003\u0354\u0003\u0354\u0003\u0354\u0003\u0354\u0003",
+ "\u0354\u0003\u0354\u0003\u0354\u0003\u0354\u0003\u0354\u0003\u0354\u0003",
+ "\u0354\u0003\u0354\u0003\u0354\u0003\u0354\u0003\u0354\u0003\u0354\u0003",
+ "\u0354\u0003\u0354\u0003\u0354\u0003\u0354\u0003\u0354\u0003\u0354\u0003",
+ "\u0354\u0003\u0354\u0003\u0354\u0003\u0355\u0003\u0355\u0003\u0355\u0003",
+ "\u0355\u0003\u0355\u0003\u0355\u0003\u0355\u0003\u0355\u0003\u0355\u0003",
+ "\u0355\u0003\u0355\u0003\u0355\u0003\u0355\u0003\u0355\u0003\u0355\u0003",
+ "\u0355\u0003\u0355\u0003\u0355\u0003\u0355\u0003\u0355\u0003\u0355\u0003",
+ "\u0355\u0003\u0355\u0003\u0356\u0003\u0356\u0003\u0356\u0003\u0356\u0003",
+ "\u0356\u0003\u0356\u0003\u0356\u0003\u0356\u0003\u0356\u0003\u0356\u0003",
+ "\u0356\u0003\u0356\u0003\u0356\u0003\u0356\u0003\u0356\u0003\u0356\u0003",
+ "\u0356\u0003\u0356\u0003\u0356\u0003\u0357\u0003\u0357\u0003\u0357\u0003",
+ "\u0357\u0003\u0357\u0003\u0357\u0003\u0358\u0003\u0358\u0003\u0358\u0003",
+ "\u0358\u0003\u0358\u0003\u0358\u0003\u0358\u0003\u0358\u0003\u0358\u0003",
+ "\u0359\u0003\u0359\u0003\u0359\u0003\u0359\u0003\u0359\u0003\u0359\u0003",
+ "\u0359\u0003\u0359\u0003\u0359\u0003\u0359\u0003\u0359\u0003\u0359\u0003",
+ "\u0359\u0003\u0359\u0003\u0359\u0003\u0359\u0003\u0359\u0003\u0359\u0003",
+ "\u035a\u0003\u035a\u0003\u035a\u0003\u035a\u0003\u035a\u0003\u035a\u0003",
+ "\u035a\u0003\u035a\u0003\u035a\u0003\u035a\u0003\u035b\u0003\u035b\u0003",
+ "\u035b\u0003\u035b\u0003\u035b\u0003\u035b\u0003\u035b\u0003\u035b\u0003",
+ "\u035b\u0003\u035b\u0003\u035b\u0003\u035b\u0003\u035b\u0003\u035b\u0003",
+ "\u035b\u0003\u035c\u0003\u035c\u0003\u035c\u0003\u035c\u0003\u035c\u0003",
+ "\u035c\u0003\u035c\u0003\u035c\u0003\u035c\u0003\u035d\u0003\u035d\u0003",
+ "\u035d\u0003\u035d\u0003\u035d\u0003\u035e\u0003\u035e\u0003\u035e\u0003",
+ "\u035e\u0003\u035e\u0003\u035e\u0003\u035e\u0003\u035e\u0003\u035e\u0003",
+ "\u035e\u0003\u035e\u0003\u035e\u0003\u035e\u0003\u035f\u0003\u035f\u0003",
+ "\u035f\u0003\u035f\u0003\u035f\u0003\u035f\u0003\u035f\u0003\u035f\u0003",
+ "\u035f\u0003\u035f\u0003\u035f\u0003\u035f\u0003\u035f\u0003\u035f\u0003",
+ "\u035f\u0003\u035f\u0003\u035f\u0003\u035f\u0003\u035f\u0003\u0360\u0003",
+ "\u0360\u0003\u0360\u0003\u0360\u0003\u0360\u0003\u0360\u0003\u0360\u0003",
+ "\u0361\u0003\u0361\u0003\u0361\u0003\u0361\u0003\u0362\u0003\u0362\u0003",
+ "\u0362\u0003\u0362\u0003\u0362\u0003\u0362\u0003\u0362\u0003\u0363\u0003",
+ "\u0363\u0003\u0363\u0003\u0363\u0003\u0363\u0003\u0363\u0003\u0363\u0003",
+ "\u0363\u0003\u0363\u0003\u0363\u0003\u0363\u0003\u0364\u0003\u0364\u0003",
+ "\u0364\u0003\u0364\u0003\u0364\u0003\u0364\u0003\u0364\u0003\u0364\u0003",
+ "\u0365\u0003\u0365\u0003\u0365\u0003\u0365\u0003\u0365\u0003\u0365\u0003",
+ "\u0366\u0003\u0366\u0003\u0366\u0003\u0366\u0003\u0366\u0003\u0366\u0003",
+ "\u0366\u0003\u0366\u0003\u0366\u0003\u0366\u0003\u0366\u0003\u0366\u0003",
+ "\u0366\u0003\u0366\u0003\u0366\u0003\u0367\u0003\u0367\u0003\u0367\u0003",
+ "\u0367\u0003\u0367\u0003\u0367\u0003\u0367\u0003\u0368\u0003\u0368\u0003",
+ "\u0368\u0003\u0368\u0003\u0368\u0003\u0368\u0003\u0369\u0003\u0369\u0003",
+ "\u0369\u0003\u0369\u0003\u0369\u0003\u0369\u0003\u0369\u0003\u0369\u0003",
+ "\u0369\u0003\u0369\u0003\u036a\u0003\u036a\u0003\u036a\u0003\u036a\u0003",
+ "\u036a\u0003\u036a\u0003\u036a\u0003\u036a\u0003\u036a\u0003\u036b\u0003",
+ "\u036b\u0003\u036b\u0003\u036b\u0003\u036b\u0003\u036c\u0003\u036c\u0003",
+ "\u036c\u0003\u036c\u0003\u036c\u0003\u036c\u0003\u036c\u0003\u036c\u0003",
+ "\u036c\u0003\u036c\u0003\u036c\u0003\u036c\u0003\u036c\u0003\u036c\u0003",
+ "\u036c\u0003\u036c\u0003\u036c\u0003\u036d\u0003\u036d\u0003\u036d\u0003",
+ "\u036d\u0003\u036d\u0003\u036d\u0003\u036d\u0003\u036d\u0003\u036d\u0003",
+ "\u036e\u0003\u036e\u0003\u036e\u0003\u036e\u0003\u036e\u0003\u036e\u0003",
+ "\u036e\u0003\u036e\u0003\u036e\u0003\u036f\u0003\u036f\u0003\u036f\u0003",
+ "\u036f\u0003\u036f\u0003\u036f\u0003\u0370\u0003\u0370\u0003\u0370\u0003",
+ "\u0370\u0003\u0370\u0003\u0371\u0003\u0371\u0003\u0371\u0003\u0371\u0003",
+ "\u0371\u0003\u0371\u0003\u0371\u0003\u0371\u0003\u0371\u0003\u0371\u0003",
+ "\u0372\u0003\u0372\u0003\u0372\u0003\u0372\u0003\u0373\u0003\u0373\u0003",
+ "\u0373\u0003\u0373\u0003\u0373\u0003\u0373\u0003\u0374\u0003\u0374\u0003",
+ "\u0374\u0003\u0374\u0003\u0374\u0003\u0374\u0003\u0374\u0003\u0374\u0003",
+ "\u0374\u0003\u0375\u0003\u0375\u0003\u0375\u0003\u0375\u0003\u0375\u0003",
+ "\u0375\u0003\u0375\u0003\u0375\u0003\u0375\u0003\u0375\u0003\u0375\u0003",
+ "\u0375\u0003\u0375\u0003\u0375\u0003\u0375\u0003\u0375\u0003\u0375\u0003",
+ "\u0375\u0003\u0375\u0003\u0375\u0003\u0375\u0003\u0375\u0003\u0375\u0003",
+ "\u0376\u0003\u0376\u0003\u0376\u0003\u0376\u0003\u0376\u0003\u0376\u0003",
+ "\u0376\u0003\u0377\u0003\u0377\u0003\u0377\u0003\u0377\u0003\u0377\u0003",
+ "\u0377\u0003\u0377\u0003\u0377\u0003\u0378\u0003\u0378\u0003\u0378\u0003",
+ "\u0378\u0003\u0378\u0003\u0378\u0003\u0378\u0003\u0378\u0003\u0378\u0003",
+ "\u0379\u0003\u0379\u0003\u0379\u0003\u0379\u0003\u037a\u0003\u037a\u0003",
+ "\u037a\u0003\u037a\u0003\u037a\u0003\u037a\u0003\u037a\u0003\u037a\u0003",
+ "\u037a\u0003\u037b\u0003\u037b\u0003\u037b\u0003\u037b\u0003\u037b\u0003",
+ "\u037b\u0003\u037c\u0003\u037c\u0003\u037c\u0003\u037c\u0003\u037c\u0003",
+ "\u037d\u0003\u037d\u0003\u037d\u0003\u037d\u0003\u037d\u0003\u037d\u0003",
+ "\u037e\u0003\u037e\u0003\u037e\u0003\u037e\u0003\u037e\u0003\u037e\u0003",
+ "\u037e\u0003\u037f\u0003\u037f\u0003\u037f\u0003\u037f\u0003\u0380\u0003",
+ "\u0380\u0003\u0380\u0003\u0380\u0003\u0380\u0003\u0380\u0003\u0380\u0003",
+ "\u0381\u0003\u0381\u0003\u0381\u0003\u0381\u0003\u0381\u0003\u0381\u0003",
+ "\u0381\u0003\u0381\u0003\u0381\u0003\u0381\u0003\u0381\u0003\u0381\u0003",
+ "\u0381\u0003\u0381\u0003\u0381\u0003\u0381\u0003\u0381\u0003\u0381\u0003",
+ "\u0381\u0003\u0381\u0003\u0381\u0003\u0381\u0003\u0381\u0003\u0381\u0003",
+ "\u0381\u0003\u0382\u0003\u0382\u0003\u0382\u0003\u0382\u0003\u0382\u0003",
+ "\u0382\u0003\u0382\u0003\u0382\u0003\u0382\u0003\u0382\u0003\u0382\u0003",
+ "\u0382\u0003\u0382\u0003\u0382\u0003\u0382\u0003\u0382\u0003\u0382\u0003",
+ "\u0382\u0003\u0382\u0003\u0382\u0003\u0382\u0003\u0382\u0003\u0383\u0003",
+ "\u0383\u0003\u0383\u0003\u0383\u0003\u0383\u0003\u0383\u0003\u0383\u0003",
+ "\u0383\u0003\u0383\u0003\u0383\u0003\u0383\u0003\u0383\u0003\u0383\u0003",
+ "\u0383\u0003\u0383\u0003\u0383\u0003\u0384\u0003\u0384\u0003\u0384\u0003",
+ "\u0384\u0003\u0384\u0003\u0384\u0003\u0384\u0003\u0384\u0003\u0384\u0003",
+ "\u0384\u0003\u0384\u0003\u0384\u0003\u0384\u0003\u0384\u0003\u0384\u0003",
+ "\u0384\u0003\u0384\u0003\u0384\u0003\u0384\u0003\u0384\u0003\u0384\u0003",
+ "\u0384\u0003\u0385\u0003\u0385\u0003\u0385\u0003\u0385\u0003\u0385\u0003",
+ "\u0385\u0003\u0385\u0003\u0385\u0003\u0385\u0003\u0385\u0003\u0385\u0003",
+ "\u0385\u0003\u0385\u0003\u0385\u0003\u0385\u0003\u0385\u0003\u0385\u0003",
+ "\u0385\u0003\u0385\u0003\u0385\u0003\u0385\u0003\u0385\u0003\u0385\u0003",
+ "\u0386\u0003\u0386\u0003\u0386\u0003\u0386\u0003\u0386\u0003\u0386\u0003",
+ "\u0386\u0003\u0386\u0003\u0387\u0003\u0387\u0003\u0387\u0003\u0387\u0003",
+ "\u0387\u0003\u0387\u0003\u0388\u0003\u0388\u0003\u0388\u0003\u0388\u0003",
+ "\u0389\u0003\u0389\u0003\u0389\u0003\u0389\u0003\u0389\u0003\u0389\u0003",
+ "\u0389\u0003\u0389\u0003\u0389\u0003\u038a\u0003\u038a\u0003\u038a\u0003",
+ "\u038a\u0003\u038a\u0003\u038a\u0003\u038a\u0003\u038a\u0003\u038a\u0003",
+ "\u038b\u0003\u038b\u0003\u038b\u0003\u038b\u0003\u038b\u0003\u038c\u0003",
+ "\u038c\u0003\u038c\u0003\u038c\u0003\u038c\u0003\u038c\u0003\u038d\u0003",
+ "\u038d\u0003\u038d\u0003\u038d\u0003\u038d\u0003\u038d\u0003\u038d\u0003",
+ "\u038d\u0003\u038d\u0003\u038d\u0003\u038d\u0003\u038d\u0003\u038d\u0003",
+ "\u038e\u0003\u038e\u0003\u038e\u0003\u038e\u0003\u038e\u0003\u038e\u0003",
+ "\u038e\u0003\u038e\u0003\u038e\u0003\u038e\u0003\u038e\u0003\u038e\u0003",
+ "\u038e\u0003\u038e\u0003\u038e\u0003\u038e\u0003\u038e\u0003\u038f\u0003",
+ "\u038f\u0003\u038f\u0003\u038f\u0003\u038f\u0003\u038f\u0003\u038f\u0003",
+ "\u038f\u0003\u038f\u0003\u038f\u0003\u038f\u0003\u038f\u0003\u038f\u0003",
+ "\u038f\u0003\u038f\u0003\u0390\u0003\u0390\u0003\u0390\u0003\u0390\u0003",
+ "\u0390\u0003\u0390\u0003\u0390\u0003\u0390\u0003\u0390\u0003\u0390\u0003",
+ "\u0390\u0003\u0390\u0003\u0390\u0003\u0391\u0003\u0391\u0003\u0391\u0003",
+ "\u0391\u0003\u0391\u0003\u0391\u0003\u0391\u0003\u0391\u0003\u0391\u0003",
+ "\u0391\u0003\u0391\u0003\u0391\u0003\u0391\u0003\u0392\u0003\u0392\u0003",
+ "\u0392\u0003\u0392\u0003\u0392\u0003\u0392\u0003\u0392\u0003\u0392\u0003",
+ "\u0392\u0003\u0392\u0003\u0392\u0003\u0392\u0003\u0392\u0003\u0392\u0003",
+ "\u0392\u0003\u0392\u0003\u0392\u0003\u0393\u0003\u0393\u0003\u0393\u0003",
+ "\u0393\u0003\u0393\u0003\u0393\u0003\u0393\u0003\u0393\u0003\u0393\u0003",
+ "\u0393\u0003\u0393\u0003\u0393\u0003\u0393\u0003\u0393\u0003\u0393\u0003",
+ "\u0393\u0003\u0393\u0003\u0393\u0003\u0393\u0003\u0393\u0003\u0393\u0003",
+ "\u0394\u0003\u0394\u0003\u0394\u0003\u0394\u0003\u0394\u0003\u0394\u0003",
+ "\u0394\u0003\u0394\u0003\u0394\u0003\u0394\u0003\u0394\u0003\u0394\u0003",
+ "\u0394\u0003\u0394\u0003\u0394\u0003\u0395\u0003\u0395\u0003\u0395\u0003",
+ "\u0395\u0003\u0395\u0003\u0395\u0003\u0395\u0003\u0395\u0003\u0395\u0003",
+ "\u0395\u0003\u0395\u0003\u0395\u0003\u0395\u0003\u0395\u0003\u0395\u0003",
+ "\u0395\u0003\u0395\u0003\u0396\u0003\u0396\u0003\u0396\u0003\u0396\u0003",
+ "\u0396\u0003\u0396\u0003\u0396\u0003\u0396\u0003\u0396\u0003\u0397\u0003",
+ "\u0397\u0003\u0397\u0003\u0397\u0003\u0397\u0003\u0397\u0003\u0397\u0003",
+ "\u0397\u0003\u0397\u0003\u0397\u0003\u0397\u0003\u0397\u0003\u0397\u0003",
+ "\u0398\u0003\u0398\u0003\u0398\u0003\u0398\u0003\u0398\u0003\u0398\u0003",
+ "\u0398\u0003\u0398\u0003\u0398\u0003\u0398\u0003\u0398\u0003\u0398\u0003",
+ "\u0398\u0003\u0398\u0003\u0398\u0003\u0398\u0003\u0399\u0003\u0399\u0003",
+ "\u0399\u0003\u0399\u0003\u0399\u0003\u0399\u0003\u0399\u0003\u0399\u0003",
+ "\u0399\u0003\u0399\u0003\u0399\u0003\u0399\u0003\u0399\u0003\u0399\u0003",
+ "\u0399\u0003\u0399\u0003\u0399\u0003\u0399\u0003\u039a\u0003\u039a\u0003",
+ "\u039a\u0003\u039a\u0003\u039a\u0003\u039a\u0003\u039a\u0003\u039a\u0003",
+ "\u039a\u0003\u039a\u0003\u039a\u0003\u039a\u0003\u039b\u0003\u039b\u0003",
+ "\u039b\u0003\u039b\u0003\u039b\u0003\u039b\u0003\u039b\u0003\u039b\u0003",
+ "\u039b\u0003\u039b\u0003\u039b\u0003\u039b\u0003\u039b\u0003\u039b\u0003",
+ "\u039b\u0003\u039b\u0003\u039b\u0003\u039c\u0003\u039c\u0003\u039c\u0003",
+ "\u039c\u0003\u039c\u0003\u039c\u0003\u039d\u0003\u039d\u0003\u039d\u0003",
+ "\u039d\u0003\u039d\u0003\u039d\u0003\u039d\u0003\u039d\u0003\u039d\u0003",
+ "\u039e\u0003\u039e\u0003\u039e\u0003\u039e\u0003\u039e\u0003\u039e\u0003",
+ "\u039e\u0003\u039e\u0003\u039e\u0003\u039e\u0003\u039e\u0003\u039e\u0003",
+ "\u039e\u0003\u039f\u0003\u039f\u0003\u039f\u0003\u039f\u0003\u039f\u0003",
+ "\u039f\u0003\u039f\u0003\u039f\u0003\u039f\u0003\u039f\u0003\u039f\u0003",
+ "\u039f\u0003\u039f\u0003\u039f\u0003\u039f\u0003\u039f\u0003\u039f\u0003",
+ "\u039f\u0003\u039f\u0003\u039f\u0003\u039f\u0003\u03a0\u0003\u03a0\u0003",
+ "\u03a0\u0003\u03a0\u0003\u03a0\u0003\u03a0\u0003\u03a0\u0003\u03a0\u0003",
+ "\u03a0\u0003\u03a0\u0003\u03a1\u0003\u03a1\u0003\u03a1\u0003\u03a1\u0003",
+ "\u03a1\u0003\u03a1\u0003\u03a1\u0003\u03a1\u0003\u03a1\u0003\u03a1\u0003",
+ "\u03a1\u0003\u03a1\u0003\u03a1\u0003\u03a1\u0003\u03a1\u0003\u03a1\u0003",
+ "\u03a1\u0003\u03a1\u0003\u03a1\u0003\u03a1\u0003\u03a2\u0003\u03a2\u0003",
+ "\u03a2\u0003\u03a2\u0003\u03a2\u0003\u03a2\u0003\u03a2\u0003\u03a2\u0003",
+ "\u03a2\u0003\u03a2\u0003\u03a2\u0003\u03a2\u0003\u03a2\u0003\u03a2\u0003",
+ "\u03a2\u0003\u03a2\u0003\u03a2\u0003\u03a2\u0003\u03a2\u0003\u03a2\u0003",
+ "\u03a2\u0003\u03a2\u0003\u03a2\u0003\u03a3\u0003\u03a3\u0003\u03a3\u0003",
+ "\u03a3\u0003\u03a3\u0003\u03a3\u0003\u03a3\u0003\u03a3\u0003\u03a3\u0003",
+ "\u03a4\u0003\u03a4\u0003\u03a4\u0003\u03a4\u0003\u03a4\u0003\u03a4\u0003",
+ "\u03a4\u0003\u03a4\u0003\u03a5\u0003\u03a5\u0003\u03a5\u0003\u03a5\u0003",
+ "\u03a5\u0003\u03a5\u0003\u03a5\u0003\u03a5\u0003\u03a5\u0003\u03a5\u0003",
+ "\u03a5\u0003\u03a5\u0003\u03a5\u0003\u03a5\u0003\u03a5\u0003\u03a5\u0003",
+ "\u03a5\u0003\u03a5\u0003\u03a6\u0003\u03a6\u0003\u03a6\u0003\u03a6\u0003",
+ "\u03a6\u0003\u03a6\u0003\u03a6\u0003\u03a6\u0003\u03a6\u0003\u03a6\u0003",
+ "\u03a6\u0003\u03a6\u0003\u03a6\u0003\u03a6\u0003\u03a7\u0003\u03a7\u0003",
+ "\u03a7\u0003\u03a7\u0003\u03a7\u0003\u03a7\u0003\u03a7\u0003\u03a7\u0003",
+ "\u03a7\u0003\u03a7\u0003\u03a8\u0003\u03a8\u0003\u03a8\u0003\u03a8\u0003",
+ "\u03a8\u0003\u03a8\u0003\u03a8\u0003\u03a8\u0003\u03a8\u0003\u03a8\u0003",
+ "\u03a9\u0003\u03a9\u0003\u03a9\u0003\u03a9\u0003\u03a9\u0003\u03a9\u0003",
+ "\u03a9\u0003\u03a9\u0003\u03a9\u0003\u03a9\u0003\u03a9\u0003\u03a9\u0003",
+ "\u03a9\u0003\u03a9\u0003\u03a9\u0003\u03a9\u0003\u03a9\u0003\u03aa\u0003",
+ "\u03aa\u0003\u03aa\u0003\u03aa\u0003\u03aa\u0003\u03aa\u0003\u03aa\u0003",
+ "\u03aa\u0003\u03aa\u0003\u03aa\u0003\u03aa\u0003\u03aa\u0003\u03aa\u0003",
+ "\u03aa\u0003\u03aa\u0003\u03ab\u0003\u03ab\u0003\u03ab\u0003\u03ab\u0003",
+ "\u03ab\u0003\u03ab\u0003\u03ab\u0003\u03ab\u0003\u03ab\u0003\u03ac\u0003",
+ "\u03ac\u0003\u03ac\u0003\u03ac\u0003\u03ac\u0003\u03ac\u0003\u03ac\u0003",
+ "\u03ac\u0003\u03ac\u0003\u03ac\u0003\u03ac\u0003\u03ac\u0003\u03ac\u0003",
+ "\u03ad\u0003\u03ad\u0003\u03ad\u0003\u03ad\u0003\u03ad\u0003\u03ad\u0003",
+ "\u03ad\u0003\u03ad\u0003\u03ae\u0003\u03ae\u0003\u03ae\u0003\u03ae\u0003",
+ "\u03ae\u0003\u03ae\u0003\u03ae\u0003\u03ae\u0003\u03ae\u0003\u03ae\u0003",
+ "\u03ae\u0003\u03ae\u0003\u03ae\u0003\u03ae\u0003\u03ae\u0003\u03ae\u0003",
+ "\u03ae\u0003\u03ae\u0003\u03ae\u0003\u03af\u0003\u03af\u0003\u03af\u0003",
+ "\u03af\u0003\u03af\u0003\u03af\u0003\u03af\u0003\u03af\u0003\u03af\u0003",
+ "\u03af\u0003\u03af\u0003\u03af\u0003\u03af\u0003\u03af\u0003\u03af\u0003",
+ "\u03af\u0003\u03af\u0003\u03af\u0003\u03af\u0003\u03af\u0003\u03af\u0003",
+ "\u03af\u0003\u03af\u0003\u03af\u0003\u03af\u0003\u03af\u0003\u03af\u0003",
+ "\u03af\u0003\u03af\u0003\u03b0\u0003\u03b0\u0003\u03b0\u0003\u03b0\u0003",
+ "\u03b0\u0003\u03b0\u0003\u03b0\u0003\u03b0\u0003\u03b0\u0003\u03b0\u0003",
+ "\u03b0\u0003\u03b0\u0003\u03b0\u0003\u03b0\u0003\u03b0\u0003\u03b0\u0003",
+ "\u03b0\u0003\u03b0\u0003\u03b0\u0003\u03b0\u0003\u03b0\u0003\u03b0\u0003",
+ "\u03b0\u0003\u03b0\u0003\u03b0\u0003\u03b0\u0003\u03b0\u0003\u03b0\u0003",
+ "\u03b0\u0003\u03b0\u0003\u03b0\u0003\u03b1\u0003\u03b1\u0003\u03b1\u0003",
+ "\u03b1\u0003\u03b1\u0003\u03b1\u0003\u03b1\u0003\u03b1\u0003\u03b1\u0003",
+ "\u03b1\u0003\u03b1\u0003\u03b1\u0003\u03b1\u0003\u03b1\u0003\u03b2\u0003",
+ "\u03b2\u0003\u03b2\u0003\u03b2\u0003\u03b2\u0003\u03b2\u0003\u03b2\u0003",
+ "\u03b2\u0003\u03b2\u0003\u03b2\u0003\u03b3\u0003\u03b3\u0003\u03b3\u0003",
+ "\u03b3\u0003\u03b3\u0003\u03b3\u0003\u03b3\u0003\u03b3\u0003\u03b4\u0003",
+ "\u03b4\u0003\u03b4\u0003\u03b4\u0003\u03b4\u0003\u03b4\u0003\u03b4\u0003",
+ "\u03b4\u0003\u03b4\u0003\u03b4\u0003\u03b4\u0003\u03b4\u0003\u03b4\u0003",
+ "\u03b5\u0003\u03b5\u0003\u03b5\u0003\u03b5\u0003\u03b5\u0003\u03b5\u0003",
+ "\u03b5\u0003\u03b5\u0003\u03b5\u0003\u03b5\u0003\u03b5\u0003\u03b5\u0003",
+ "\u03b5\u0003\u03b5\u0003\u03b5\u0003\u03b5\u0003\u03b5\u0003\u03b5\u0003",
+ "\u03b5\u0003\u03b5\u0003\u03b5\u0003\u03b6\u0003\u03b6\u0003\u03b6\u0003",
+ "\u03b6\u0003\u03b6\u0003\u03b6\u0003\u03b6\u0003\u03b6\u0003\u03b6\u0003",
+ "\u03b6\u0003\u03b6\u0003\u03b6\u0003\u03b6\u0003\u03b6\u0003\u03b6\u0003",
+ "\u03b6\u0003\u03b6\u0003\u03b6\u0003\u03b6\u0003\u03b6\u0003\u03b7\u0003",
+ "\u03b7\u0003\u03b7\u0003\u03b7\u0003\u03b7\u0003\u03b7\u0003\u03b7\u0003",
+ "\u03b7\u0003\u03b7\u0003\u03b7\u0003\u03b7\u0003\u03b7\u0003\u03b7\u0003",
+ "\u03b7\u0003\u03b8\u0003\u03b8\u0003\u03b8\u0003\u03b8\u0003\u03b8\u0003",
+ "\u03b8\u0003\u03b8\u0003\u03b8\u0003\u03b8\u0003\u03b8\u0003\u03b8\u0003",
+ "\u03b8\u0003\u03b8\u0003\u03b8\u0003\u03b8\u0003\u03b9\u0003\u03b9\u0003",
+ "\u03b9\u0003\u03b9\u0003\u03b9\u0003\u03b9\u0003\u03b9\u0003\u03b9\u0003",
+ "\u03b9\u0003\u03b9\u0003\u03b9\u0003\u03b9\u0003\u03b9\u0003\u03b9\u0003",
+ "\u03b9\u0003\u03ba\u0003\u03ba\u0003\u03ba\u0003\u03ba\u0003\u03ba\u0003",
+ "\u03ba\u0003\u03ba\u0003\u03ba\u0003\u03ba\u0003\u03ba\u0003\u03ba\u0003",
+ "\u03bb\u0003\u03bb\u0003\u03bb\u0003\u03bb\u0003\u03bb\u0003\u03bb\u0003",
+ "\u03bb\u0003\u03bb\u0003\u03bb\u0003\u03bb\u0003\u03bb\u0003\u03bb\u0003",
+ "\u03bb\u0003\u03bb\u0003\u03bb\u0003\u03bb\u0003\u03bb\u0003\u03bb\u0003",
+ "\u03bb\u0003\u03bb\u0003\u03bb\u0003\u03bb\u0003\u03bb\u0003\u03bb\u0003",
+ "\u03bb\u0003\u03bb\u0003\u03bc\u0003\u03bc\u0003\u03bc\u0003\u03bc\u0003",
+ "\u03bc\u0003\u03bc\u0003\u03bc\u0003\u03bc\u0003\u03bc\u0003\u03bc\u0003",
+ "\u03bc\u0003\u03bc\u0003\u03bc\u0003\u03bc\u0003\u03bc\u0003\u03bc\u0003",
+ "\u03bc\u0003\u03bc\u0003\u03bc\u0003\u03bc\u0003\u03bc\u0003\u03bc\u0003",
+ "\u03bc\u0003\u03bc\u0003\u03bc\u0003\u03bd\u0003\u03bd\u0003\u03bd\u0003",
+ "\u03bd\u0003\u03bd\u0003\u03bd\u0003\u03bd\u0003\u03bd\u0003\u03bd\u0003",
+ "\u03bd\u0003\u03bd\u0003\u03bd\u0003\u03bd\u0003\u03bd\u0003\u03bd\u0003",
+ "\u03bd\u0003\u03bd\u0003\u03bd\u0003\u03bd\u0003\u03bd\u0003\u03bd\u0003",
+ "\u03bd\u0003\u03bd\u0003\u03bd\u0003\u03bd\u0003\u03be\u0003\u03be\u0003",
+ "\u03be\u0003\u03be\u0003\u03be\u0003\u03be\u0003\u03be\u0003\u03be\u0003",
+ "\u03be\u0003\u03be\u0003\u03be\u0003\u03be\u0003\u03be\u0003\u03be\u0003",
+ "\u03be\u0003\u03be\u0003\u03be\u0003\u03be\u0003\u03be\u0003\u03be\u0003",
+ "\u03be\u0003\u03be\u0003\u03be\u0003\u03be\u0003\u03bf\u0003\u03bf\u0003",
+ "\u03bf\u0003\u03bf\u0003\u03bf\u0003\u03bf\u0003\u03bf\u0003\u03bf\u0003",
+ "\u03bf\u0003\u03bf\u0003\u03bf\u0003\u03bf\u0003\u03bf\u0003\u03bf\u0003",
+ "\u03bf\u0003\u03bf\u0003\u03bf\u0003\u03bf\u0003\u03bf\u0003\u03bf\u0003",
+ "\u03bf\u0003\u03bf\u0003\u03bf\u0003\u03bf\u0003\u03c0\u0003\u03c0\u0003",
+ "\u03c0\u0003\u03c0\u0003\u03c0\u0003\u03c0\u0003\u03c0\u0003\u03c1\u0003",
+ "\u03c1\u0003\u03c1\u0003\u03c1\u0003\u03c1\u0003\u03c1\u0003\u03c1\u0003",
+ "\u03c1\u0003\u03c1\u0003\u03c1\u0003\u03c1\u0003\u03c1\u0003\u03c1\u0003",
+ "\u03c1\u0003\u03c1\u0003\u03c1\u0003\u03c1\u0003\u03c1\u0003\u03c1\u0003",
+ "\u03c1\u0003\u03c1\u0003\u03c1\u0003\u03c1\u0003\u03c1\u0003\u03c1\u0003",
+ "\u03c1\u0003\u03c2\u0003\u03c2\u0003\u03c2\u0003\u03c2\u0003\u03c2\u0003",
+ "\u03c2\u0003\u03c2\u0003\u03c2\u0003\u03c2\u0003\u03c2\u0003\u03c2\u0003",
+ "\u03c2\u0003\u03c2\u0003\u03c2\u0003\u03c2\u0003\u03c3\u0003\u03c3\u0003",
+ "\u03c3\u0003\u03c3\u0003\u03c3\u0003\u03c3\u0003\u03c3\u0003\u03c3\u0003",
+ "\u03c3\u0003\u03c3\u0003\u03c3\u0003\u03c3\u0003\u03c3\u0003\u03c3\u0003",
+ "\u03c4\u0003\u03c4\u0003\u03c4\u0003\u03c4\u0003\u03c4\u0003\u03c4\u0003",
+ "\u03c4\u0003\u03c4\u0003\u03c5\u0003\u03c5\u0003\u03c5\u0003\u03c5\u0003",
+ "\u03c5\u0003\u03c5\u0003\u03c5\u0003\u03c5\u0003\u03c5\u0003\u03c5\u0003",
+ "\u03c5\u0003\u03c5\u0003\u03c5\u0003\u03c5\u0003\u03c5\u0003\u03c5\u0003",
+ "\u03c5\u0003\u03c5\u0003\u03c5\u0003\u03c5\u0003\u03c5\u0003\u03c5\u0003",
+ "\u03c5\u0003\u03c5\u0003\u03c5\u0003\u03c6\u0003\u03c6\u0003\u03c6\u0003",
+ "\u03c6\u0003\u03c6\u0003\u03c6\u0003\u03c6\u0003\u03c6\u0003\u03c6\u0003",
+ "\u03c6\u0003\u03c6\u0003\u03c6\u0003\u03c6\u0003\u03c6\u0003\u03c6\u0003",
+ "\u03c7\u0003\u03c7\u0003\u03c7\u0003\u03c7\u0003\u03c7\u0003\u03c7\u0003",
+ "\u03c7\u0003\u03c7\u0003\u03c8\u0003\u03c8\u0003\u03c8\u0003\u03c8\u0003",
+ "\u03c8\u0003\u03c8\u0003\u03c8\u0003\u03c8\u0003\u03c8\u0003\u03c8\u0003",
+ "\u03c8\u0003\u03c8\u0003\u03c8\u0003\u03c8\u0003\u03c8\u0003\u03c8\u0003",
+ "\u03c8\u0003\u03c8\u0003\u03c8\u0003\u03c8\u0003\u03c8\u0003\u03c8\u0003",
+ "\u03c8\u0003\u03c9\u0003\u03c9\u0003\u03c9\u0003\u03c9\u0003\u03c9\u0003",
+ "\u03c9\u0003\u03c9\u0003\u03c9\u0003\u03c9\u0003\u03c9\u0003\u03c9\u0003",
+ "\u03c9\u0003\u03c9\u0003\u03c9\u0003\u03c9\u0003\u03c9\u0003\u03c9\u0003",
+ "\u03c9\u0003\u03c9\u0003\u03c9\u0003\u03c9\u0003\u03c9\u0003\u03c9\u0003",
+ "\u03c9\u0003\u03c9\u0003\u03c9\u0003\u03c9\u0003\u03ca\u0003\u03ca\u0003",
+ "\u03ca\u0003\u03ca\u0003\u03ca\u0003\u03ca\u0003\u03ca\u0003\u03ca\u0003",
+ "\u03ca\u0003\u03ca\u0003\u03ca\u0003\u03ca\u0003\u03ca\u0003\u03ca\u0003",
+ "\u03ca\u0003\u03ca\u0003\u03cb\u0003\u03cb\u0003\u03cb\u0003\u03cb\u0003",
+ "\u03cb\u0003\u03cb\u0003\u03cb\u0003\u03cb\u0003\u03cb\u0003\u03cb\u0003",
+ "\u03cb\u0003\u03cb\u0003\u03cb\u0003\u03cb\u0003\u03cb\u0003\u03cb\u0003",
+ "\u03cb\u0003\u03cb\u0003\u03cc\u0003\u03cc\u0003\u03cc\u0003\u03cc\u0003",
+ "\u03cc\u0003\u03cc\u0003\u03cc\u0003\u03cc\u0003\u03cc\u0003\u03cc\u0003",
+ "\u03cc\u0003\u03cc\u0003\u03cc\u0003\u03cc\u0003\u03cc\u0003\u03cc\u0003",
+ "\u03cc\u0003\u03cd\u0003\u03cd\u0003\u03cd\u0003\u03cd\u0003\u03cd\u0003",
+ "\u03cd\u0003\u03cd\u0003\u03cd\u0003\u03cd\u0003\u03cd\u0003\u03cd\u0003",
+ "\u03cd\u0003\u03cd\u0003\u03cd\u0003\u03cd\u0003\u03cd\u0003\u03cd\u0003",
+ "\u03cd\u0003\u03cd\u0003\u03cd\u0003\u03cd\u0003\u03cd\u0003\u03cd\u0003",
+ "\u03cd\u0003\u03ce\u0003\u03ce\u0003\u03ce\u0003\u03ce\u0003\u03ce\u0003",
+ "\u03ce\u0003\u03ce\u0003\u03ce\u0003\u03ce\u0003\u03ce\u0003\u03ce\u0003",
+ "\u03ce\u0003\u03ce\u0003\u03ce\u0003\u03ce\u0003\u03ce\u0003\u03ce\u0003",
+ "\u03cf\u0003\u03cf\u0003\u03cf\u0003\u03cf\u0003\u03cf\u0003\u03cf\u0003",
+ "\u03cf\u0003\u03cf\u0003\u03cf\u0003\u03cf\u0003\u03cf\u0003\u03cf\u0003",
+ "\u03cf\u0003\u03cf\u0003\u03cf\u0003\u03cf\u0003\u03cf\u0003\u03cf\u0003",
+ "\u03cf\u0003\u03cf\u0003\u03cf\u0003\u03cf\u0003\u03cf\u0003\u03cf\u0003",
+ "\u03d0\u0003\u03d0\u0003\u03d0\u0003\u03d0\u0003\u03d0\u0003\u03d0\u0003",
+ "\u03d0\u0003\u03d0\u0003\u03d0\u0003\u03d0\u0003\u03d1\u0003\u03d1\u0003",
+ "\u03d1\u0003\u03d1\u0003\u03d1\u0003\u03d1\u0003\u03d1\u0003\u03d1\u0003",
+ "\u03d1\u0003\u03d1\u0003\u03d1\u0003\u03d1\u0003\u03d1\u0003\u03d1\u0003",
+ "\u03d1\u0003\u03d1\u0003\u03d2\u0003\u03d2\u0003\u03d2\u0003\u03d2\u0003",
+ "\u03d2\u0003\u03d2\u0003\u03d2\u0003\u03d2\u0003\u03d3\u0003\u03d3\u0003",
+ "\u03d3\u0003\u03d3\u0003\u03d3\u0003\u03d3\u0003\u03d3\u0003\u03d3\u0003",
+ "\u03d3\u0003\u03d3\u0003\u03d3\u0003\u03d3\u0003\u03d3\u0003\u03d3\u0003",
+ "\u03d3\u0003\u03d3\u0003\u03d3\u0003\u03d3\u0003\u03d4\u0003\u03d4\u0003",
+ "\u03d4\u0003\u03d4\u0003\u03d4\u0003\u03d4\u0003\u03d4\u0003\u03d4\u0003",
+ "\u03d4\u0003\u03d4\u0003\u03d4\u0003\u03d4\u0003\u03d4\u0003\u03d5\u0003",
+ "\u03d5\u0003\u03d5\u0003\u03d5\u0003\u03d5\u0003\u03d5\u0003\u03d5\u0003",
+ "\u03d5\u0003\u03d6\u0003\u03d6\u0003\u03d6\u0003\u03d6\u0003\u03d6\u0003",
+ "\u03d6\u0003\u03d6\u0003\u03d6\u0003\u03d6\u0003\u03d6\u0003\u03d6\u0003",
+ "\u03d6\u0003\u03d6\u0003\u03d6\u0003\u03d6\u0003\u03d6\u0003\u03d6\u0003",
+ "\u03d6\u0003\u03d6\u0003\u03d6\u0003\u03d6\u0003\u03d6\u0003\u03d6\u0003",
+ "\u03d6\u0003\u03d6\u0003\u03d6\u0003\u03d6\u0003\u03d6\u0003\u03d7\u0003",
+ "\u03d7\u0003\u03d7\u0003\u03d7\u0003\u03d7\u0003\u03d7\u0003\u03d7\u0003",
+ "\u03d7\u0003\u03d7\u0003\u03d7\u0003\u03d7\u0003\u03d7\u0003\u03d7\u0003",
+ "\u03d7\u0003\u03d7\u0003\u03d7\u0003\u03d7\u0003\u03d7\u0003\u03d7\u0003",
+ "\u03d7\u0003\u03d7\u0003\u03d7\u0003\u03d7\u0003\u03d7\u0003\u03d7\u0003",
+ "\u03d7\u0003\u03d7\u0003\u03d7\u0003\u03d7\u0003\u03d7\u0003\u03d7\u0003",
+ "\u03d8\u0003\u03d8\u0003\u03d8\u0003\u03d8\u0003\u03d8\u0003\u03d8\u0003",
+ "\u03d8\u0003\u03d8\u0003\u03d8\u0003\u03d8\u0003\u03d8\u0003\u03d8\u0003",
+ "\u03d8\u0003\u03d8\u0003\u03d8\u0003\u03d8\u0003\u03d9\u0003\u03d9\u0003",
+ "\u03d9\u0003\u03d9\u0003\u03d9\u0003\u03d9\u0003\u03d9\u0003\u03d9\u0003",
+ "\u03d9\u0003\u03d9\u0003\u03d9\u0003\u03d9\u0003\u03da\u0003\u03da\u0003",
+ "\u03da\u0003\u03da\u0003\u03da\u0003\u03da\u0003\u03da\u0003\u03da\u0003",
+ "\u03da\u0003\u03da\u0003\u03da\u0003\u03da\u0003\u03da\u0003\u03db\u0003",
+ "\u03db\u0003\u03db\u0003\u03db\u0003\u03db\u0003\u03db\u0003\u03db\u0003",
+ "\u03db\u0003\u03db\u0003\u03dc\u0003\u03dc\u0003\u03dc\u0003\u03dc\u0003",
+ "\u03dc\u0003\u03dc\u0003\u03dc\u0003\u03dc\u0003\u03dc\u0003\u03dc\u0003",
+ "\u03dc\u0003\u03dc\u0003\u03dd\u0003\u03dd\u0003\u03dd\u0003\u03dd\u0003",
+ "\u03dd\u0003\u03dd\u0003\u03dd\u0003\u03dd\u0003\u03dd\u0003\u03dd\u0003",
+ "\u03dd\u0003\u03dd\u0003\u03de\u0003\u03de\u0003\u03de\u0003\u03de\u0003",
+ "\u03de\u0003\u03de\u0003\u03de\u0003\u03de\u0003\u03de\u0003\u03de\u0003",
+ "\u03de\u0003\u03de\u0003\u03de\u0003\u03de\u0003\u03de\u0003\u03de\u0003",
+ "\u03de\u0003\u03de\u0003\u03de\u0003\u03de\u0003\u03df\u0003\u03df\u0003",
+ "\u03df\u0003\u03df\u0003\u03df\u0003\u03df\u0003\u03df\u0003\u03e0\u0003",
+ "\u03e0\u0003\u03e0\u0003\u03e0\u0003\u03e0\u0003\u03e0\u0003\u03e0\u0003",
+ "\u03e0\u0003\u03e1\u0003\u03e1\u0003\u03e1\u0003\u03e1\u0003\u03e1\u0003",
+ "\u03e1\u0003\u03e1\u0003\u03e1\u0003\u03e2\u0003\u03e2\u0003\u03e2\u0003",
+ "\u03e2\u0003\u03e2\u0003\u03e2\u0003\u03e2\u0003\u03e2\u0003\u03e2\u0003",
+ "\u03e2\u0003\u03e3\u0003\u03e3\u0003\u03e3\u0003\u03e3\u0003\u03e3\u0003",
+ "\u03e3\u0003\u03e3\u0003\u03e3\u0003\u03e3\u0003\u03e3\u0003\u03e4\u0003",
+ "\u03e4\u0003\u03e4\u0003\u03e4\u0003\u03e4\u0003\u03e4\u0003\u03e4\u0003",
+ "\u03e4\u0003\u03e4\u0003\u03e4\u0003\u03e4\u0003\u03e5\u0003\u03e5\u0003",
+ "\u03e5\u0003\u03e5\u0003\u03e5\u0003\u03e5\u0003\u03e5\u0003\u03e5\u0003",
+ "\u03e5\u0003\u03e6\u0003\u03e6\u0003\u03e6\u0003\u03e6\u0003\u03e6\u0003",
+ "\u03e6\u0003\u03e6\u0003\u03e6\u0003\u03e6\u0003\u03e6\u0003\u03e6\u0003",
+ "\u03e7\u0003\u03e7\u0003\u03e7\u0003\u03e7\u0003\u03e7\u0003\u03e7\u0003",
+ "\u03e7\u0003\u03e7\u0003\u03e7\u0003\u03e7\u0003\u03e7\u0003\u03e8\u0003",
+ "\u03e8\u0003\u03e8\u0003\u03e8\u0003\u03e8\u0003\u03e8\u0003\u03e8\u0003",
+ "\u03e8\u0003\u03e8\u0003\u03e8\u0003\u03e8\u0003\u03e8\u0003\u03e8\u0003",
+ "\u03e8\u0003\u03e8\u0003\u03e8\u0003\u03e8\u0003\u03e8\u0003\u03e9\u0003",
+ "\u03e9\u0003\u03e9\u0003\u03e9\u0003\u03e9\u0003\u03e9\u0003\u03e9\u0003",
+ "\u03e9\u0003\u03e9\u0003\u03e9\u0003\u03e9\u0003\u03e9\u0003\u03e9\u0003",
+ "\u03e9\u0003\u03ea\u0003\u03ea\u0003\u03ea\u0003\u03ea\u0003\u03ea\u0003",
+ "\u03ea\u0003\u03ea\u0003\u03ea\u0003\u03ea\u0003\u03ea\u0003\u03ea\u0003",
+ "\u03ea\u0003\u03ea\u0003\u03eb\u0003\u03eb\u0003\u03eb\u0003\u03eb\u0003",
+ "\u03eb\u0003\u03eb\u0003\u03eb\u0003\u03eb\u0003\u03eb\u0003\u03eb\u0003",
+ "\u03eb\u0003\u03ec\u0003\u03ec\u0003\u03ec\u0003\u03ec\u0003\u03ec\u0003",
+ "\u03ec\u0003\u03ec\u0003\u03ec\u0003\u03ec\u0003\u03ec\u0003\u03ec\u0003",
+ "\u03ec\u0003\u03ec\u0003\u03ec\u0003\u03ec\u0003\u03ec\u0003\u03ec\u0003",
+ "\u03ec\u0003\u03ec\u0003\u03ed\u0003\u03ed\u0003\u03ed\u0003\u03ed\u0003",
+ "\u03ed\u0003\u03ed\u0003\u03ed\u0003\u03ed\u0003\u03ed\u0003\u03ed\u0003",
+ "\u03ed\u0003\u03ed\u0003\u03ed\u0003\u03ed\u0003\u03ed\u0003\u03ed\u0003",
+ "\u03ed\u0003\u03ed\u0003\u03ed\u0003\u03ed\u0003\u03ed\u0003\u03ed\u0003",
+ "\u03ed\u0003\u03ed\u0003\u03ed\u0003\u03ed\u0003\u03ee\u0003\u03ee\u0003",
+ "\u03ee\u0003\u03ee\u0003\u03ee\u0003\u03ee\u0003\u03ee\u0003\u03ee\u0003",
+ "\u03ee\u0003\u03ee\u0003\u03ee\u0003\u03ee\u0003\u03ef\u0003\u03ef\u0003",
+ "\u03ef\u0003\u03ef\u0003\u03ef\u0003\u03ef\u0003\u03ef\u0003\u03ef\u0003",
+ "\u03ef\u0003\u03ef\u0003\u03ef\u0003\u03ef\u0003\u03ef\u0003\u03ef\u0003",
+ "\u03ef\u0003\u03f0\u0003\u03f0\u0003\u03f0\u0003\u03f0\u0003\u03f0\u0003",
+ "\u03f1\u0003\u03f1\u0003\u03f1\u0003\u03f1\u0003\u03f1\u0003\u03f1\u0003",
+ "\u03f1\u0003\u03f1\u0003\u03f1\u0003\u03f1\u0003\u03f1\u0003\u03f1\u0003",
+ "\u03f1\u0003\u03f1\u0003\u03f1\u0003\u03f1\u0003\u03f2\u0003\u03f2\u0003",
+ "\u03f2\u0003\u03f2\u0003\u03f2\u0003\u03f2\u0003\u03f2\u0003\u03f2\u0003",
+ "\u03f2\u0003\u03f2\u0003\u03f2\u0003\u03f2\u0003\u03f2\u0003\u03f2\u0003",
+ "\u03f2\u0003\u03f2\u0003\u03f3\u0003\u03f3\u0003\u03f3\u0003\u03f4\u0003",
+ "\u03f4\u0003\u03f4\u0003\u03f4\u0003\u03f4\u0003\u03f4\u0003\u03f4\u0003",
+ "\u03f4\u0003\u03f4\u0003\u03f4\u0003\u03f5\u0003\u03f5\u0003\u03f5\u0003",
+ "\u03f5\u0003\u03f5\u0003\u03f5\u0003\u03f5\u0003\u03f5\u0003\u03f5\u0003",
+ "\u03f5\u0003\u03f5\u0003\u03f5\u0003\u03f5\u0003\u03f5\u0003\u03f5\u0003",
+ "\u03f6\u0003\u03f6\u0003\u03f6\u0003\u03f6\u0003\u03f6\u0003\u03f6\u0003",
+ "\u03f6\u0003\u03f6\u0003\u03f7\u0003\u03f7\u0003\u03f7\u0003\u03f7\u0003",
+ "\u03f7\u0003\u03f7\u0003\u03f7\u0003\u03f7\u0003\u03f7\u0003\u03f7\u0003",
+ "\u03f7\u0003\u03f7\u0003\u03f7\u0003\u03f7\u0003\u03f7\u0003\u03f7\u0003",
+ "\u03f7\u0003\u03f8\u0003\u03f8\u0003\u03f8\u0003\u03f8\u0003\u03f8\u0003",
+ "\u03f8\u0003\u03f8\u0003\u03f8\u0003\u03f8\u0003\u03f8\u0003\u03f8\u0003",
+ "\u03f8\u0003\u03f8\u0003\u03f8\u0003\u03f8\u0003\u03f8\u0003\u03f8\u0003",
+ "\u03f8\u0003\u03f8\u0003\u03f8\u0003\u03f8\u0003\u03f8\u0003\u03f9\u0003",
+ "\u03f9\u0003\u03f9\u0003\u03f9\u0003\u03f9\u0003\u03f9\u0003\u03f9\u0003",
+ "\u03f9\u0003\u03f9\u0003\u03f9\u0003\u03f9\u0003\u03f9\u0003\u03f9\u0003",
+ "\u03f9\u0003\u03f9\u0003\u03f9\u0003\u03f9\u0003\u03f9\u0003\u03f9\u0003",
+ "\u03f9\u0003\u03f9\u0003\u03f9\u0003\u03f9\u0003\u03fa\u0003\u03fa\u0003",
+ "\u03fa\u0003\u03fa\u0003\u03fa\u0003\u03fa\u0003\u03fa\u0003\u03fa\u0003",
+ "\u03fa\u0003\u03fa\u0003\u03fa\u0003\u03fb\u0003\u03fb\u0003\u03fb\u0003",
+ "\u03fb\u0003\u03fb\u0003\u03fb\u0003\u03fb\u0003\u03fb\u0003\u03fb\u0003",
+ "\u03fb\u0003\u03fb\u0003\u03fb\u0003\u03fb\u0003\u03fb\u0003\u03fb\u0003",
+ "\u03fb\u0003\u03fb\u0003\u03fb\u0003\u03fc\u0003\u03fc\u0003\u03fc\u0003",
+ "\u03fc\u0003\u03fc\u0003\u03fc\u0003\u03fc\u0003\u03fc\u0003\u03fc\u0003",
+ "\u03fc\u0003\u03fc\u0003\u03fc\u0003\u03fc\u0003\u03fc\u0003\u03fc\u0003",
+ "\u03fc\u0003\u03fc\u0003\u03fd\u0003\u03fd\u0003\u03fd\u0003\u03fd\u0003",
+ "\u03fd\u0003\u03fd\u0003\u03fd\u0003\u03fd\u0003\u03fd\u0003\u03fd\u0003",
+ "\u03fd\u0003\u03fd\u0003\u03fe\u0003\u03fe\u0003\u03fe\u0003\u03fe\u0003",
+ "\u03fe\u0003\u03fe\u0003\u03fe\u0003\u03fe\u0003\u03fe\u0003\u03fe\u0003",
+ "\u03fe\u0003\u03ff\u0003\u03ff\u0003\u03ff\u0003\u03ff\u0003\u03ff\u0003",
+ "\u03ff\u0003\u03ff\u0003\u03ff\u0003\u03ff\u0003\u03ff\u0003\u03ff\u0003",
+ "\u03ff\u0003\u03ff\u0003\u03ff\u0003\u03ff\u0003\u03ff\u0003\u03ff\u0003",
+ "\u03ff\u0003\u0400\u0003\u0400\u0003\u0400\u0003\u0400\u0003\u0400\u0003",
+ "\u0400\u0003\u0400\u0003\u0400\u0003\u0400\u0003\u0400\u0003\u0400\u0003",
+ "\u0400\u0003\u0400\u0003\u0400\u0003\u0400\u0003\u0400\u0003\u0401\u0003",
+ "\u0401\u0003\u0401\u0003\u0401\u0003\u0401\u0003\u0401\u0003\u0401\u0003",
+ "\u0401\u0003\u0401\u0003\u0401\u0003\u0401\u0003\u0401\u0003\u0401\u0003",
+ "\u0401\u0003\u0401\u0003\u0401\u0003\u0401\u0003\u0401\u0003\u0401\u0003",
+ "\u0401\u0003\u0401\u0003\u0401\u0003\u0401\u0003\u0401\u0003\u0401\u0003",
+ "\u0401\u0003\u0401\u0003\u0402\u0003\u0402\u0003\u0402\u0003\u0402\u0003",
+ "\u0402\u0003\u0402\u0003\u0402\u0003\u0402\u0003\u0402\u0003\u0402\u0003",
+ "\u0402\u0003\u0402\u0003\u0403\u0003\u0403\u0003\u0403\u0003\u0403\u0003",
+ "\u0403\u0003\u0403\u0003\u0403\u0003\u0403\u0003\u0403\u0003\u0403\u0003",
+ "\u0403\u0003\u0403\u0003\u0403\u0003\u0403\u0003\u0403\u0003\u0403\u0003",
+ "\u0403\u0003\u0403\u0003\u0404\u0003\u0404\u0003\u0404\u0003\u0404\u0003",
+ "\u0404\u0003\u0404\u0003\u0404\u0003\u0404\u0003\u0404\u0003\u0404\u0003",
+ "\u0404\u0003\u0404\u0003\u0404\u0003\u0404\u0003\u0404\u0003\u0404\u0003",
+ "\u0404\u0003\u0404\u0003\u0405\u0003\u0405\u0003\u0405\u0003\u0405\u0003",
+ "\u0405\u0003\u0405\u0003\u0405\u0003\u0405\u0003\u0405\u0003\u0405\u0003",
+ "\u0405\u0003\u0405\u0003\u0405\u0003\u0405\u0003\u0405\u0003\u0405\u0003",
+ "\u0405\u0003\u0405\u0003\u0405\u0003\u0405\u0003\u0405\u0003\u0405\u0003",
+ "\u0405\u0003\u0406\u0003\u0406\u0003\u0406\u0003\u0406\u0003\u0406\u0003",
+ "\u0406\u0003\u0406\u0003\u0406\u0003\u0406\u0003\u0406\u0003\u0407\u0003",
+ "\u0407\u0003\u0407\u0003\u0407\u0003\u0407\u0003\u0407\u0003\u0407\u0003",
+ "\u0407\u0003\u0407\u0003\u0407\u0003\u0407\u0003\u0407\u0003\u0407\u0003",
+ "\u0407\u0003\u0407\u0003\u0407\u0003\u0408\u0003\u0408\u0003\u0408\u0003",
+ "\u0408\u0003\u0408\u0003\u0408\u0003\u0408\u0003\u0408\u0003\u0408\u0003",
+ "\u0408\u0003\u0408\u0003\u0409\u0003\u0409\u0003\u0409\u0003\u0409\u0003",
+ "\u0409\u0003\u0409\u0003\u0409\u0003\u0409\u0003\u0409\u0003\u0409\u0003",
+ "\u0409\u0003\u0409\u0003\u0409\u0003\u0409\u0003\u0409\u0003\u040a\u0003",
+ "\u040a\u0003\u040a\u0003\u040a\u0003\u040a\u0003\u040a\u0003\u040a\u0003",
+ "\u040a\u0003\u040a\u0003\u040a\u0003\u040a\u0003\u040a\u0003\u040a\u0003",
+ "\u040b\u0003\u040b\u0003\u040b\u0003\u040b\u0003\u040b\u0003\u040b\u0003",
+ "\u040b\u0003\u040b\u0003\u040b\u0003\u040b\u0003\u040b\u0003\u040b\u0003",
+ "\u040b\u0003\u040c\u0003\u040c\u0003\u040c\u0003\u040c\u0003\u040c\u0003",
+ "\u040c\u0003\u040c\u0003\u040c\u0003\u040c\u0003\u040c\u0003\u040c\u0003",
+ "\u040c\u0003\u040c\u0003\u040d\u0003\u040d\u0003\u040d\u0003\u040d\u0003",
+ "\u040d\u0003\u040d\u0003\u040d\u0003\u040d\u0003\u040d\u0003\u040d\u0003",
+ "\u040d\u0003\u040d\u0003\u040d\u0003\u040d\u0003\u040d\u0003\u040d\u0003",
+ "\u040d\u0003\u040d\u0003\u040d\u0003\u040d\u0003\u040d\u0003\u040d\u0003",
+ "\u040e\u0003\u040e\u0003\u040e\u0003\u040e\u0003\u040e\u0003\u040e\u0003",
+ "\u040e\u0003\u040e\u0003\u040e\u0003\u040e\u0003\u040e\u0003\u040e\u0003",
+ "\u040e\u0003\u040e\u0003\u040e\u0003\u040e\u0003\u040e\u0003\u040e\u0003",
+ "\u040f\u0003\u040f\u0003\u040f\u0003\u040f\u0003\u040f\u0003\u040f\u0003",
+ "\u040f\u0003\u040f\u0003\u040f\u0003\u040f\u0003\u040f\u0003\u040f\u0003",
+ "\u0410\u0003\u0410\u0003\u0410\u0003\u0410\u0003\u0410\u0003\u0410\u0003",
+ "\u0410\u0003\u0410\u0003\u0410\u0003\u0410\u0003\u0410\u0003\u0410\u0003",
+ "\u0410\u0003\u0410\u0003\u0410\u0003\u0410\u0003\u0410\u0003\u0410\u0003",
+ "\u0410\u0003\u0410\u0003\u0410\u0003\u0410\u0003\u0410\u0003\u0410\u0003",
+ "\u0411\u0003\u0411\u0003\u0411\u0003\u0411\u0003\u0411\u0003\u0411\u0003",
+ "\u0411\u0003\u0411\u0003\u0411\u0003\u0411\u0003\u0411\u0003\u0411\u0003",
+ "\u0411\u0003\u0411\u0003\u0411\u0003\u0412\u0003\u0412\u0003\u0412\u0003",
+ "\u0412\u0003\u0412\u0003\u0412\u0003\u0412\u0003\u0412\u0003\u0412\u0003",
+ "\u0412\u0003\u0412\u0003\u0413\u0003\u0413\u0003\u0413\u0003\u0413\u0003",
+ "\u0413\u0003\u0413\u0003\u0413\u0003\u0414\u0003\u0414\u0003\u0414\u0003",
+ "\u0414\u0003\u0414\u0003\u0414\u0003\u0414\u0003\u0414\u0003\u0414\u0003",
+ "\u0415\u0003\u0415\u0003\u0415\u0003\u0415\u0003\u0415\u0003\u0415\u0003",
+ "\u0415\u0003\u0415\u0003\u0415\u0003\u0416\u0003\u0416\u0003\u0416\u0003",
+ "\u0416\u0003\u0416\u0003\u0416\u0003\u0416\u0003\u0416\u0003\u0416\u0003",
+ "\u0416\u0003\u0416\u0003\u0416\u0003\u0417\u0003\u0417\u0003\u0417\u0003",
+ "\u0417\u0003\u0417\u0003\u0417\u0003\u0417\u0003\u0417\u0003\u0417\u0003",
+ "\u0417\u0003\u0417\u0003\u0417\u0003\u0417\u0003\u0417\u0003\u0417\u0003",
+ "\u0417\u0003\u0418\u0003\u0418\u0003\u0418\u0003\u0418\u0003\u0418\u0003",
+ "\u0418\u0003\u0418\u0003\u0418\u0003\u0418\u0003\u0418\u0003\u0419\u0003",
+ "\u0419\u0003\u0419\u0003\u0419\u0003\u0419\u0003\u0419\u0003\u0419\u0003",
+ "\u0419\u0003\u0419\u0003\u0419\u0003\u0419\u0003\u041a\u0003\u041a\u0003",
+ "\u041a\u0003\u041a\u0003\u041a\u0003\u041a\u0003\u041a\u0003\u041a\u0003",
+ "\u041a\u0003\u041a\u0003\u041b\u0003\u041b\u0003\u041b\u0003\u041b\u0003",
+ "\u041b\u0003\u041b\u0003\u041b\u0003\u041c\u0003\u041c\u0003\u041c\u0003",
+ "\u041c\u0003\u041c\u0003\u041c\u0003\u041c\u0003\u041c\u0003\u041c\u0003",
+ "\u041c\u0003\u041c\u0003\u041c\u0003\u041c\u0003\u041c\u0003\u041c\u0003",
+ "\u041c\u0003\u041c\u0003\u041c\u0003\u041c\u0003\u041c\u0003\u041c\u0003",
+ "\u041d\u0003\u041d\u0003\u041d\u0003\u041d\u0003\u041d\u0003\u041d\u0003",
+ "\u041d\u0003\u041d\u0003\u041d\u0003\u041d\u0003\u041d\u0003\u041d\u0003",
+ "\u041d\u0003\u041d\u0003\u041d\u0003\u041d\u0003\u041d\u0003\u041d\u0003",
+ "\u041e\u0003\u041e\u0003\u041e\u0003\u041e\u0003\u041e\u0003\u041e\u0003",
+ "\u041e\u0003\u041e\u0003\u041e\u0003\u041e\u0003\u041e\u0003\u041e\u0003",
+ "\u041e\u0003\u041e\u0003\u041f\u0003\u041f\u0003\u041f\u0003\u041f\u0003",
+ "\u041f\u0003\u041f\u0003\u041f\u0003\u041f\u0003\u041f\u0003\u041f\u0003",
+ "\u0420\u0003\u0420\u0003\u0420\u0003\u0420\u0003\u0420\u0003\u0420\u0003",
+ "\u0420\u0003\u0420\u0003\u0420\u0003\u0420\u0003\u0420\u0003\u0420\u0003",
+ "\u0421\u0003\u0421\u0003\u0421\u0003\u0421\u0003\u0421\u0003\u0421\u0003",
+ "\u0421\u0003\u0421\u0003\u0421\u0003\u0421\u0003\u0421\u0003\u0421\u0003",
+ "\u0421\u0003\u0421\u0003\u0421\u0003\u0421\u0003\u0421\u0003\u0422\u0003",
+ "\u0422\u0003\u0422\u0003\u0422\u0003\u0422\u0003\u0422\u0003\u0422\u0003",
+ "\u0422\u0003\u0422\u0003\u0422\u0003\u0422\u0003\u0422\u0003\u0422\u0003",
+ "\u0422\u0003\u0422\u0003\u0423\u0003\u0423\u0003\u0423\u0003\u0423\u0003",
+ "\u0423\u0003\u0423\u0003\u0423\u0003\u0424\u0003\u0424\u0003\u0424\u0003",
+ "\u0424\u0003\u0424\u0003\u0424\u0003\u0424\u0003\u0424\u0003\u0424\u0003",
+ "\u0424\u0003\u0424\u0003\u0424\u0003\u0424\u0003\u0424\u0003\u0424\u0003",
+ "\u0424\u0003\u0424\u0003\u0424\u0003\u0424\u0003\u0425\u0003\u0425\u0003",
+ "\u0425\u0003\u0425\u0003\u0425\u0003\u0425\u0003\u0425\u0003\u0425\u0003",
+ "\u0425\u0003\u0425\u0003\u0425\u0003\u0425\u0003\u0426\u0003\u0426\u0003",
+ "\u0426\u0003\u0426\u0003\u0426\u0003\u0426\u0003\u0426\u0003\u0426\u0003",
+ "\u0426\u0003\u0426\u0003\u0426\u0003\u0426\u0003\u0426\u0003\u0426\u0003",
+ "\u0426\u0003\u0426\u0003\u0426\u0003\u0426\u0003\u0426\u0003\u0426\u0003",
+ "\u0426\u0003\u0426\u0003\u0426\u0003\u0427\u0003\u0427\u0003\u0427\u0003",
+ "\u0427\u0003\u0427\u0003\u0427\u0003\u0427\u0003\u0427\u0003\u0427\u0003",
+ "\u0427\u0003\u0427\u0003\u0427\u0003\u0427\u0003\u0427\u0003\u0427\u0003",
+ "\u0427\u0003\u0427\u0003\u0427\u0003\u0427\u0003\u0427\u0003\u0427\u0003",
+ "\u0428\u0003\u0428\u0003\u0428\u0003\u0428\u0003\u0428\u0003\u0428\u0003",
+ "\u0428\u0003\u0428\u0003\u0428\u0003\u0428\u0003\u0428\u0003\u0428\u0003",
+ "\u0428\u0003\u0428\u0003\u0428\u0003\u0429\u0003\u0429\u0003\u0429\u0003",
+ "\u0429\u0003\u0429\u0003\u0429\u0003\u0429\u0003\u0429\u0003\u0429\u0003",
+ "\u042a\u0003\u042a\u0003\u042a\u0003\u042a\u0003\u042a\u0003\u042a\u0003",
+ "\u042a\u0003\u042a\u0003\u042a\u0003\u042a\u0003\u042a\u0003\u042a\u0003",
+ "\u042a\u0003\u042a\u0003\u042a\u0003\u042a\u0003\u042a\u0003\u042a\u0003",
+ "\u042a\u0003\u042a\u0003\u042b\u0003\u042b\u0003\u042b\u0003\u042b\u0003",
+ "\u042b\u0003\u042b\u0003\u042b\u0003\u042b\u0003\u042b\u0003\u042b\u0003",
+ "\u042b\u0003\u042b\u0003\u042b\u0003\u042b\u0003\u042b\u0003\u042c\u0003",
+ "\u042c\u0003\u042c\u0003\u042c\u0003\u042c\u0003\u042c\u0003\u042c\u0003",
+ "\u042c\u0003\u042c\u0003\u042c\u0003\u042c\u0003\u042c\u0003\u042c\u0003",
+ "\u042c\u0003\u042c\u0003\u042c\u0003\u042c\u0003\u042c\u0003\u042c\u0003",
+ "\u042c\u0003\u042d\u0003\u042d\u0003\u042d\u0003\u042d\u0003\u042d\u0003",
+ "\u042d\u0003\u042d\u0003\u042d\u0003\u042d\u0003\u042e\u0003\u042e\u0003",
+ "\u042e\u0003\u042e\u0003\u042e\u0003\u042e\u0003\u042e\u0003\u042e\u0003",
+ "\u042e\u0003\u042e\u0003\u042e\u0003\u042e\u0003\u042e\u0003\u042e\u0003",
+ "\u042e\u0003\u042e\u0003\u042e\u0003\u042e\u0003\u042e\u0003\u042e\u0003",
+ "\u042e\u0003\u042e\u0003\u042f\u0003\u042f\u0003\u042f\u0003\u042f\u0003",
+ "\u042f\u0003\u042f\u0003\u042f\u0003\u042f\u0003\u042f\u0003\u042f\u0003",
+ "\u042f\u0003\u042f\u0003\u042f\u0003\u042f\u0003\u0430\u0003\u0430\u0003",
+ "\u0430\u0003\u0430\u0003\u0430\u0003\u0430\u0003\u0430\u0003\u0430\u0003",
+ "\u0431\u0003\u0431\u0003\u0431\u0003\u0431\u0003\u0431\u0003\u0431\u0003",
+ "\u0431\u0003\u0431\u0003\u0431\u0003\u0431\u0003\u0431\u0003\u0431\u0003",
+ "\u0431\u0003\u0432\u0003\u0432\u0003\u0432\u0003\u0432\u0003\u0433\u0003",
+ "\u0433\u0003\u0433\u0003\u0433\u0003\u0433\u0003\u0433\u0003\u0433\u0003",
+ "\u0433\u0003\u0433\u0003\u0433\u0003\u0433\u0003\u0433\u0003\u0433\u0003",
+ "\u0433\u0003\u0433\u0003\u0433\u0003\u0433\u0003\u0433\u0003\u0433\u0003",
+ "\u0433\u0003\u0433\u0003\u0433\u0003\u0433\u0003\u0433\u0003\u0433\u0003",
+ "\u0433\u0003\u0434\u0003\u0434\u0003\u0434\u0003\u0434\u0003\u0434\u0003",
+ "\u0434\u0003\u0434\u0003\u0434\u0003\u0434\u0003\u0434\u0003\u0435\u0003",
+ "\u0435\u0003\u0435\u0003\u0435\u0003\u0435\u0003\u0435\u0003\u0435\u0003",
+ "\u0435\u0003\u0435\u0003\u0435\u0003\u0435\u0003\u0435\u0003\u0436\u0003",
+ "\u0436\u0003\u0436\u0003\u0436\u0003\u0436\u0003\u0436\u0003\u0436\u0003",
+ "\u0436\u0003\u0436\u0003\u0436\u0003\u0436\u0003\u0436\u0003\u0436\u0003",
+ "\u0436\u0003\u0436\u0003\u0436\u0003\u0436\u0003\u0436\u0003\u0436\u0003",
+ "\u0436\u0003\u0436\u0003\u0436\u0003\u0436\u0003\u0436\u0003\u0437\u0003",
+ "\u0437\u0003\u0437\u0003\u0437\u0003\u0437\u0003\u0437\u0003\u0437\u0003",
+ "\u0437\u0003\u0437\u0003\u0437\u0003\u0437\u0003\u0437\u0003\u0437\u0003",
+ "\u0437\u0003\u0437\u0003\u0437\u0003\u0437\u0003\u0437\u0003\u0437\u0003",
+ "\u0437\u0003\u0437\u0003\u0437\u0003\u0437\u0003\u0437\u0003\u0437\u0003",
+ "\u0437\u0003\u0437\u0003\u0437\u0003\u0437\u0003\u0438\u0003\u0438\u0003",
+ "\u0438\u0003\u0438\u0003\u0438\u0003\u0438\u0003\u0438\u0003\u0438\u0003",
+ "\u0438\u0003\u0438\u0003\u0438\u0003\u0438\u0003\u0439\u0003\u0439\u0003",
+ "\u0439\u0003\u0439\u0003\u0439\u0003\u0439\u0003\u0439\u0003\u0439\u0003",
+ "\u0439\u0003\u0439\u0003\u0439\u0003\u0439\u0003\u0439\u0003\u0439\u0003",
+ "\u0439\u0003\u0439\u0003\u0439\u0003\u0439\u0003\u0439\u0003\u0439\u0003",
+ "\u0439\u0003\u0439\u0003\u0439\u0003\u0439\u0003\u0439\u0003\u043a\u0003",
+ "\u043a\u0003\u043a\u0003\u043a\u0003\u043a\u0003\u043a\u0003\u043a\u0003",
+ "\u043a\u0003\u043a\u0003\u043a\u0003\u043a\u0003\u043a\u0003\u043a\u0003",
+ "\u043b\u0003\u043b\u0003\u043b\u0003\u043b\u0003\u043b\u0003\u043b\u0003",
+ "\u043b\u0003\u043b\u0003\u043b\u0003\u043b\u0003\u043c\u0003\u043c\u0003",
+ "\u043c\u0003\u043c\u0003\u043c\u0003\u043c\u0003\u043c\u0003\u043c\u0003",
+ "\u043c\u0003\u043c\u0003\u043c\u0003\u043c\u0003\u043c\u0003\u043c\u0003",
+ "\u043c\u0003\u043c\u0003\u043c\u0003\u043c\u0003\u043c\u0003\u043c\u0003",
+ "\u043c\u0003\u043c\u0003\u043c\u0003\u043c\u0003\u043c\u0003\u043c\u0003",
+ "\u043d\u0003\u043d\u0003\u043d\u0003\u043d\u0003\u043d\u0003\u043d\u0003",
+ "\u043d\u0003\u043d\u0003\u043d\u0003\u043d\u0003\u043d\u0003\u043e\u0003",
+ "\u043e\u0003\u043e\u0003\u043e\u0003\u043e\u0003\u043e\u0003\u043e\u0003",
+ "\u043e\u0003\u043e\u0003\u043e\u0003\u043e\u0003\u043e\u0003\u043e\u0003",
+ "\u043e\u0003\u043e\u0003\u043e\u0003\u043e\u0003\u043e\u0003\u043e\u0003",
+ "\u043e\u0003\u043e\u0003\u043e\u0003\u043e\u0003\u043e\u0003\u043e\u0003",
+ "\u043f\u0003\u043f\u0003\u043f\u0003\u043f\u0003\u043f\u0003\u043f\u0003",
+ "\u043f\u0003\u043f\u0003\u043f\u0003\u043f\u0003\u043f\u0003\u043f\u0003",
+ "\u043f\u0003\u043f\u0003\u043f\u0003\u043f\u0003\u043f\u0003\u043f\u0003",
+ "\u043f\u0003\u043f\u0003\u043f\u0003\u043f\u0003\u043f\u0003\u043f\u0003",
+ "\u043f\u0003\u0440\u0003\u0440\u0003\u0440\u0003\u0440\u0003\u0440\u0003",
+ "\u0440\u0003\u0440\u0003\u0440\u0003\u0440\u0003\u0440\u0003\u0440\u0003",
+ "\u0440\u0003\u0440\u0003\u0440\u0003\u0440\u0003\u0440\u0003\u0440\u0003",
+ "\u0440\u0003\u0440\u0003\u0440\u0003\u0441\u0003\u0441\u0003\u0441\u0003",
+ "\u0441\u0003\u0441\u0003\u0441\u0003\u0441\u0003\u0442\u0003\u0442\u0003",
+ "\u0442\u0003\u0442\u0003\u0442\u0003\u0442\u0003\u0442\u0003\u0442\u0003",
+ "\u0442\u0003\u0442\u0003\u0442\u0003\u0442\u0003\u0442\u0003\u0442\u0003",
+ "\u0442\u0003\u0442\u0003\u0442\u0003\u0442\u0003\u0442\u0003\u0442\u0003",
+ "\u0442\u0003\u0442\u0003\u0442\u0003\u0443\u0003\u0443\u0003\u0443\u0003",
+ "\u0443\u0003\u0443\u0003\u0443\u0003\u0443\u0003\u0443\u0003\u0443\u0003",
+ "\u0443\u0003\u0443\u0003\u0443\u0003\u0443\u0003\u0443\u0003\u0443\u0003",
+ "\u0443\u0003\u0443\u0003\u0443\u0003\u0443\u0003\u0444\u0003\u0444\u0003",
+ "\u0444\u0003\u0444\u0003\u0444\u0003\u0444\u0003\u0444\u0003\u0444\u0003",
+ "\u0444\u0003\u0444\u0003\u0444\u0003\u0444\u0003\u0444\u0003\u0444\u0003",
+ "\u0444\u0003\u0444\u0003\u0444\u0003\u0444\u0003\u0444\u0003\u0444\u0003",
+ "\u0444\u0003\u0444\u0003\u0444\u0003\u0444\u0003\u0444\u0003\u0444\u0003",
+ "\u0444\u0003\u0444\u0003\u0444\u0003\u0444\u0003\u0445\u0003\u0445\u0003",
+ "\u0445\u0003\u0445\u0003\u0445\u0003\u0445\u0003\u0445\u0003\u0445\u0003",
+ "\u0445\u0003\u0445\u0003\u0445\u0003\u0445\u0003\u0445\u0003\u0445\u0003",
+ "\u0445\u0003\u0445\u0003\u0445\u0003\u0445\u0003\u0445\u0003\u0445\u0003",
+ "\u0446\u0003\u0446\u0003\u0446\u0003\u0446\u0003\u0446\u0003\u0446\u0003",
+ "\u0446\u0003\u0446\u0003\u0446\u0003\u0446\u0003\u0446\u0003\u0446\u0003",
+ "\u0446\u0003\u0446\u0003\u0446\u0003\u0446\u0003\u0446\u0003\u0446\u0003",
+ "\u0446\u0003\u0446\u0003\u0446\u0003\u0447\u0003\u0447\u0003\u0447\u0003",
+ "\u0447\u0003\u0447\u0003\u0447\u0003\u0447\u0003\u0447\u0003\u0447\u0003",
+ "\u0447\u0003\u0447\u0003\u0448\u0003\u0448\u0003\u0448\u0003\u0448\u0003",
+ "\u0448\u0003\u0448\u0003\u0448\u0003\u0448\u0003\u0448\u0003\u0448\u0003",
+ "\u0449\u0003\u0449\u0003\u0449\u0003\u0449\u0003\u0449\u0003\u0449\u0003",
+ "\u0449\u0003\u044a\u0003\u044a\u0003\u044a\u0003\u044a\u0003\u044a\u0003",
+ "\u044b\u0003\u044b\u0003\u044b\u0003\u044b\u0003\u044b\u0003\u044b\u0003",
+ "\u044c\u0003\u044c\u0003\u044c\u0003\u044c\u0003\u044c\u0003\u044c\u0003",
+ "\u044c\u0003\u044d\u0003\u044d\u0003\u044d\u0003\u044d\u0003\u044d\u0003",
+ "\u044d\u0003\u044d\u0003\u044d\u0003\u044e\u0003\u044e\u0003\u044e\u0003",
+ "\u044e\u0003\u044e\u0003\u044e\u0003\u044e\u0003\u044e\u0003\u044e\u0003",
+ "\u044e\u0003\u044e\u0003\u044e\u0003\u044e\u0003\u044e\u0003\u044e\u0003",
+ "\u044f\u0003\u044f\u0003\u044f\u0003\u044f\u0003\u044f\u0003\u044f\u0003",
+ "\u044f\u0003\u044f\u0003\u044f\u0003\u044f\u0003\u044f\u0003\u044f\u0003",
+ "\u044f\u0003\u044f\u0003\u044f\u0003\u044f\u0003\u0450\u0003\u0450\u0003",
+ "\u0450\u0003\u0450\u0003\u0450\u0003\u0450\u0003\u0450\u0003\u0450\u0003",
+ "\u0450\u0003\u0450\u0003\u0450\u0003\u0450\u0003\u0450\u0003\u0450\u0003",
+ "\u0450\u0003\u0450\u0003\u0451\u0003\u0451\u0003\u0451\u0003\u0451\u0003",
+ "\u0451\u0003\u0451\u0003\u0451\u0003\u0451\u0003\u0451\u0003\u0451\u0003",
+ "\u0452\u0003\u0452\u0003\u0452\u0003\u0452\u0003\u0452\u0003\u0453\u0003",
+ "\u0453\u0003\u0453\u0003\u0453\u0003\u0453\u0003\u0453\u0003\u0453\u0003",
+ "\u0453\u0003\u0453\u0003\u0453\u0003\u0453\u0003\u0454\u0003\u0454\u0003",
+ "\u0454\u0003\u0454\u0003\u0454\u0003\u0454\u0003\u0454\u0003\u0455\u0003",
+ "\u0455\u0003\u0455\u0003\u0455\u0003\u0455\u0003\u0455\u0003\u0455\u0003",
+ "\u0456\u0003\u0456\u0003\u0456\u0003\u0456\u0003\u0456\u0003\u0456\u0003",
+ "\u0457\u0003\u0457\u0003\u0457\u0003\u0457\u0003\u0457\u0003\u0457\u0003",
+ "\u0457\u0003\u0457\u0003\u0457\u0003\u0457\u0003\u0457\u0003\u0457\u0003",
+ "\u0458\u0003\u0458\u0003\u0458\u0003\u0458\u0003\u0458\u0003\u0458\u0003",
+ "\u0458\u0003\u0458\u0003\u0458\u0003\u0458\u0003\u0458\u0003\u0459\u0003",
+ "\u0459\u0003\u0459\u0003\u0459\u0003\u0459\u0003\u0459\u0003\u0459\u0003",
+ "\u0459\u0003\u045a\u0003\u045a\u0003\u045a\u0003\u045a\u0003\u045b\u0003",
+ "\u045b\u0003\u045b\u0003\u045b\u0003\u045b\u0003\u045b\u0003\u045b\u0003",
+ "\u045c\u0003\u045c\u0003\u045c\u0003\u045d\u0003\u045d\u0003\u045d\u0003",
+ "\u045d\u0003\u045d\u0003\u045d\u0003\u045d\u0003\u045d\u0003\u045d\u0003",
+ "\u045e\u0003\u045e\u0003\u045e\u0003\u045e\u0003\u045f\u0003\u045f\u0003",
+ "\u045f\u0003\u045f\u0003\u045f\u0003\u0460\u0003\u0460\u0003\u0460\u0003",
+ "\u0460\u0003\u0461\u0003\u0461\u0003\u0461\u0003\u0461\u0003\u0461\u0003",
+ "\u0461\u0003\u0461\u0003\u0461\u0003\u0461\u0003\u0461\u0003\u0461\u0003",
+ "\u0461\u0003\u0461\u0003\u0461\u0003\u0462\u0003\u0462\u0003\u0462\u0003",
+ "\u0462\u0003\u0463\u0003\u0463\u0003\u0463\u0003\u0463\u0003\u0463\u0003",
+ "\u0464\u0003\u0464\u0003\u0464\u0003\u0464\u0003\u0464\u0003\u0465\u0003",
+ "\u0465\u0003\u0465\u0003\u0465\u0003\u0466\u0003\u0466\u0003\u0466\u0003",
+ "\u0466\u0003\u0466\u0003\u0466\u0003\u0466\u0003\u0467\u0003\u0467\u0003",
+ "\u0467\u0003\u0467\u0003\u0467\u0003\u0467\u0003\u0467\u0003\u0467\u0003",
+ "\u0467\u0003\u0467\u0003\u0468\u0003\u0468\u0003\u0468\u0003\u0468\u0003",
+ "\u0468\u0003\u0469\u0003\u0469\u0003\u0469\u0003\u046a\u0003\u046a\u0003",
+ "\u046a\u0003\u046a\u0003\u046a\u0003\u046a\u0003\u046a\u0003\u046b\u0003",
+ "\u046b\u0003\u046b\u0003\u046b\u0003\u046b\u0003\u046b\u0003\u046b\u0003",
+ "\u046b\u0003\u046b\u0003\u046b\u0003\u046b\u0003\u046b\u0003\u046b\u0003",
+ "\u046b\u0003\u046b\u0003\u046b\u0003\u046b\u0003\u046c\u0003\u046c\u0003",
+ "\u046c\u0003\u046c\u0003\u046c\u0003\u046c\u0003\u046c\u0003\u046c\u0003",
+ "\u046c\u0003\u046c\u0003\u046c\u0003\u046c\u0003\u046c\u0003\u046c\u0003",
+ "\u046c\u0003\u046c\u0003\u046c\u0003\u046c\u0003\u046d\u0003\u046d\u0003",
+ "\u046d\u0003\u046d\u0003\u046d\u0003\u046d\u0003\u046d\u0003\u046e\u0003",
+ "\u046e\u0003\u046e\u0003\u046e\u0003\u046e\u0003\u046f\u0003\u046f\u0003",
+ "\u046f\u0003\u046f\u0003\u046f\u0003\u046f\u0003\u046f\u0003\u046f\u0003",
+ "\u046f\u0003\u046f\u0003\u046f\u0003\u0470\u0003\u0470\u0003\u0470\u0003",
+ "\u0470\u0003\u0470\u0003\u0470\u0003\u0470\u0003\u0470\u0003\u0470\u0003",
+ "\u0471\u0003\u0471\u0003\u0471\u0003\u0471\u0003\u0471\u0003\u0471\u0003",
+ "\u0471\u0003\u0471\u0003\u0471\u0003\u0471\u0003\u0471\u0003\u0471\u0003",
+ "\u0471\u0003\u0472\u0003\u0472\u0003\u0472\u0003\u0472\u0003\u0472\u0003",
+ "\u0472\u0003\u0472\u0003\u0472\u0003\u0473\u0003\u0473\u0003\u0473\u0003",
+ "\u0473\u0003\u0473\u0003\u0473\u0003\u0473\u0003\u0473\u0003\u0473\u0003",
+ "\u0474\u0003\u0474\u0003\u0474\u0003\u0474\u0003\u0474\u0003\u0474\u0003",
+ "\u0474\u0003\u0474\u0003\u0474\u0003\u0474\u0003\u0474\u0003\u0474\u0003",
+ "\u0474\u0003\u0474\u0003\u0474\u0003\u0474\u0003\u0474\u0003\u0474\u0003",
+ "\u0474\u0003\u0474\u0003\u0474\u0003\u0474\u0003\u0474\u0003\u0474\u0003",
+ "\u0474\u0003\u0474\u0003\u0475\u0003\u0475\u0003\u0475\u0003\u0475\u0003",
+ "\u0475\u0003\u0475\u0003\u0475\u0003\u0475\u0003\u0475\u0003\u0475\u0003",
+ "\u0475\u0003\u0475\u0003\u0475\u0003\u0475\u0003\u0475\u0003\u0476\u0003",
+ "\u0476\u0003\u0476\u0003\u0476\u0003\u0476\u0003\u0476\u0003\u0476\u0003",
+ "\u0477\u0003\u0477\u0003\u0477\u0003\u0477\u0003\u0477\u0003\u0477\u0003",
+ "\u0477\u0003\u0477\u0003\u0477\u0003\u0477\u0003\u0478\u0003\u0478\u0003",
+ "\u0478\u0003\u0478\u0003\u0478\u0003\u0478\u0003\u0478\u0003\u0478\u0003",
+ "\u0478\u0003\u0478\u0003\u0478\u0003\u0479\u0003\u0479\u0003\u0479\u0003",
+ "\u0479\u0003\u0479\u0003\u0479\u0003\u0479\u0003\u0479\u0003\u0479\u0003",
+ "\u0479\u0003\u0479\u0003\u0479\u0003\u0479\u0003\u0479\u0003\u047a\u0003",
+ "\u047a\u0003\u047a\u0003\u047a\u0003\u047a\u0003\u047a\u0003\u047a\u0003",
+ "\u047a\u0003\u047a\u0003\u047a\u0003\u047a\u0003\u047a\u0003\u047a\u0003",
+ "\u047a\u0003\u047a\u0003\u047a\u0003\u047a\u0003\u047a\u0003\u047a\u0003",
+ "\u047a\u0003\u047b\u0003\u047b\u0003\u047b\u0003\u047b\u0003\u047b\u0003",
+ "\u047b\u0003\u047b\u0003\u047b\u0003\u047b\u0003\u047b\u0003\u047b\u0003",
+ "\u047b\u0003\u047b\u0003\u047b\u0003\u047b\u0003\u047c\u0003\u047c\u0003",
+ "\u047c\u0003\u047c\u0003\u047c\u0003\u047c\u0003\u047c\u0003\u047c\u0003",
+ "\u047d\u0003\u047d\u0003\u047d\u0003\u047d\u0003\u047d\u0003\u047d\u0003",
+ "\u047d\u0003\u047d\u0003\u047d\u0003\u047e\u0003\u047e\u0003\u047e\u0003",
+ "\u047e\u0003\u047e\u0003\u047e\u0003\u047e\u0003\u047e\u0003\u047e\u0003",
+ "\u047e\u0003\u047e\u0003\u047e\u0003\u047e\u0003\u047e\u0003\u047e\u0003",
+ "\u047e\u0003\u047e\u0003\u047f\u0003\u047f\u0003\u047f\u0003\u047f\u0003",
+ "\u047f\u0003\u047f\u0003\u047f\u0003\u047f\u0003\u047f\u0003\u047f\u0003",
+ "\u047f\u0003\u047f\u0003\u047f\u0003\u047f\u0003\u047f\u0003\u047f\u0003",
+ "\u0480\u0003\u0480\u0003\u0480\u0003\u0480\u0003\u0480\u0003\u0480\u0003",
+ "\u0480\u0003\u0480\u0003\u0480\u0003\u0480\u0003\u0480\u0003\u0480\u0003",
+ "\u0480\u0003\u0480\u0003\u0481\u0003\u0481\u0003\u0481\u0003\u0481\u0003",
+ "\u0481\u0003\u0481\u0003\u0481\u0003\u0481\u0003\u0481\u0003\u0481\u0003",
+ "\u0481\u0003\u0481\u0003\u0481\u0003\u0481\u0003\u0481\u0003\u0482\u0003",
+ "\u0482\u0003\u0482\u0003\u0482\u0003\u0482\u0003\u0482\u0003\u0482\u0003",
+ "\u0482\u0003\u0482\u0003\u0482\u0003\u0482\u0003\u0482\u0003\u0482\u0003",
+ "\u0482\u0003\u0482\u0003\u0482\u0003\u0482\u0003\u0482\u0003\u0482\u0003",
+ "\u0483\u0003\u0483\u0003\u0483\u0003\u0483\u0003\u0483\u0003\u0483\u0003",
+ "\u0483\u0003\u0483\u0003\u0483\u0003\u0484\u0003\u0484\u0003\u0484\u0003",
+ "\u0484\u0003\u0484\u0003\u0484\u0003\u0484\u0003\u0484\u0003\u0484\u0003",
+ "\u0484\u0003\u0484\u0003\u0484\u0003\u0484\u0003\u0484\u0003\u0484\u0003",
+ "\u0484\u0003\u0484\u0003\u0484\u0003\u0484\u0003\u0484\u0003\u0485\u0003",
+ "\u0485\u0003\u0485\u0003\u0485\u0003\u0485\u0003\u0485\u0003\u0485\u0003",
+ "\u0485\u0003\u0485\u0003\u0485\u0003\u0485\u0003\u0485\u0003\u0485\u0003",
+ "\u0485\u0003\u0485\u0003\u0485\u0003\u0485\u0003\u0485\u0003\u0486\u0003",
+ "\u0486\u0003\u0486\u0003\u0486\u0003\u0486\u0003\u0486\u0003\u0486\u0003",
+ "\u0486\u0003\u0486\u0003\u0486\u0003\u0486\u0003\u0486\u0003\u0486\u0003",
+ "\u0486\u0003\u0486\u0003\u0486\u0003\u0486\u0003\u0486\u0003\u0486\u0003",
+ "\u0486\u0003\u0486\u0003\u0486\u0003\u0486\u0003\u0486\u0003\u0486\u0003",
+ "\u0486\u0003\u0487\u0003\u0487\u0003\u0487\u0003\u0487\u0003\u0487\u0003",
+ "\u0487\u0003\u0487\u0003\u0487\u0003\u0487\u0003\u0487\u0003\u0487\u0003",
+ "\u0487\u0003\u0487\u0003\u0487\u0003\u0487\u0003\u0487\u0003\u0487\u0003",
+ "\u0487\u0003\u0487\u0003\u0487\u0003\u0487\u0003\u0488\u0003\u0488\u0003",
+ "\u0488\u0003\u0488\u0003\u0488\u0003\u0488\u0003\u0488\u0003\u0488\u0003",
+ "\u0488\u0003\u0488\u0003\u0488\u0003\u0488\u0003\u0488\u0003\u0488\u0003",
+ "\u0488\u0003\u0489\u0003\u0489\u0003\u0489\u0003\u0489\u0003\u0489\u0003",
+ "\u0489\u0003\u0489\u0003\u0489\u0003\u0489\u0003\u0489\u0003\u0489\u0003",
+ "\u0489\u0003\u0489\u0003\u0489\u0003\u048a\u0003\u048a\u0003\u048a\u0003",
+ "\u048a\u0003\u048a\u0003\u048a\u0003\u048a\u0003\u048a\u0003\u048a\u0003",
+ "\u048a\u0003\u048a\u0003\u048b\u0003\u048b\u0003\u048b\u0003\u048b\u0003",
+ "\u048b\u0003\u048b\u0003\u048b\u0003\u048b\u0003\u048b\u0003\u048b\u0003",
+ "\u048b\u0003\u048b\u0003\u048b\u0003\u048b\u0003\u048b\u0003\u048c\u0003",
+ "\u048c\u0003\u048c\u0003\u048c\u0003\u048c\u0003\u048c\u0003\u048c\u0003",
+ "\u048c\u0003\u048c\u0003\u048c\u0003\u048c\u0003\u048c\u0003\u048c\u0003",
+ "\u048c\u0003\u048c\u0003\u048d\u0003\u048d\u0003\u048d\u0003\u048d\u0003",
+ "\u048d\u0003\u048d\u0003\u048d\u0003\u048d\u0003\u048d\u0003\u048d\u0003",
+ "\u048d\u0003\u048d\u0003\u048d\u0003\u048d\u0003\u048d\u0003\u048e\u0003",
+ "\u048e\u0003\u048e\u0003\u048e\u0003\u048e\u0003\u048e\u0003\u048e\u0003",
+ "\u048e\u0003\u048e\u0003\u048e\u0003\u048e\u0003\u048e\u0003\u048e\u0003",
+ "\u048e\u0003\u048e\u0003\u048f\u0003\u048f\u0003\u048f\u0003\u048f\u0003",
+ "\u048f\u0003\u048f\u0003\u048f\u0003\u048f\u0003\u0490\u0003\u0490\u0003",
+ "\u0490\u0003\u0490\u0003\u0490\u0003\u0490\u0003\u0490\u0003\u0490\u0003",
+ "\u0490\u0003\u0490\u0003\u0490\u0003\u0490\u0003\u0490\u0003\u0490\u0003",
+ "\u0490\u0003\u0490\u0003\u0490\u0003\u0490\u0003\u0490\u0003\u0491\u0003",
+ "\u0491\u0003\u0491\u0003\u0491\u0003\u0491\u0003\u0491\u0003\u0492\u0003",
+ "\u0492\u0003\u0492\u0003\u0492\u0003\u0492\u0003\u0492\u0003\u0492\u0003",
+ "\u0492\u0003\u0492\u0003\u0492\u0003\u0492\u0003\u0493\u0003\u0493\u0003",
+ "\u0493\u0003\u0493\u0003\u0493\u0003\u0493\u0003\u0493\u0003\u0493\u0003",
+ "\u0493\u0003\u0493\u0003\u0494\u0003\u0494\u0003\u0494\u0003\u0494\u0003",
+ "\u0494\u0003\u0494\u0003\u0494\u0003\u0494\u0003\u0494\u0003\u0494\u0003",
+ "\u0494\u0003\u0494\u0003\u0494\u0003\u0495\u0003\u0495\u0003\u0495\u0003",
+ "\u0496\u0003\u0496\u0003\u0496\u0003\u0496\u0003\u0496\u0003\u0496\u0003",
+ "\u0496\u0003\u0496\u0003\u0496\u0003\u0496\u0003\u0496\u0003\u0496\u0003",
+ "\u0496\u0003\u0496\u0003\u0497\u0003\u0497\u0003\u0497\u0003\u0497\u0003",
+ "\u0497\u0003\u0497\u0003\u0497\u0003\u0497\u0003\u0498\u0003\u0498\u0003",
+ "\u0498\u0003\u0498\u0003\u0498\u0003\u0498\u0003\u0499\u0003\u0499\u0003",
+ "\u0499\u0003\u0499\u0003\u0499\u0003\u0499\u0003\u0499\u0003\u0499\u0003",
+ "\u0499\u0003\u0499\u0003\u0499\u0003\u0499\u0003\u0499\u0003\u0499\u0003",
+ "\u0499\u0003\u0499\u0003\u0499\u0003\u0499\u0003\u0499\u0003\u049a\u0003",
+ "\u049a\u0003\u049a\u0003\u049a\u0003\u049a\u0003\u049a\u0003\u049a\u0003",
+ "\u049a\u0003\u049a\u0003\u049a\u0003\u049a\u0003\u049a\u0003\u049a\u0003",
+ "\u049a\u0003\u049a\u0003\u049a\u0003\u049a\u0003\u049a\u0003\u049a\u0003",
+ "\u049a\u0003\u049b\u0003\u049b\u0003\u049b\u0003\u049b\u0003\u049b\u0003",
+ "\u049b\u0003\u049c\u0003\u049c\u0003\u049c\u0003\u049c\u0003\u049c\u0003",
+ "\u049c\u0003\u049c\u0003\u049c\u0003\u049c\u0003\u049c\u0003\u049c\u0003",
+ "\u049c\u0003\u049c\u0003\u049d\u0003\u049d\u0003\u049d\u0003\u049d\u0003",
+ "\u049d\u0003\u049d\u0003\u049d\u0003\u049d\u0003\u049e\u0003\u049e\u0003",
+ "\u049e\u0003\u049e\u0003\u049e\u0003\u049e\u0003\u049e\u0003\u049e\u0003",
+ "\u049e\u0003\u049e\u0003\u049e\u0003\u049e\u0003\u049f\u0003\u049f\u0003",
+ "\u049f\u0003\u049f\u0003\u04a0\u0003\u04a0\u0003\u04a0\u0003\u04a0\u0003",
+ "\u04a0\u0003\u04a0\u0003\u04a0\u0003\u04a0\u0003\u04a0\u0003\u04a0\u0003",
+ "\u04a0\u0003\u04a0\u0003\u04a0\u0003\u04a0\u0003\u04a0\u0003\u04a0\u0003",
+ "\u04a1\u0003\u04a1\u0003\u04a1\u0003\u04a1\u0003\u04a1\u0003\u04a1\u0003",
+ "\u04a1\u0003\u04a1\u0003\u04a1\u0003\u04a2\u0003\u04a2\u0003\u04a2\u0003",
+ "\u04a2\u0003\u04a2\u0003\u04a2\u0003\u04a2\u0003\u04a2\u0003\u04a2\u0003",
+ "\u04a3\u0003\u04a3\u0003\u04a3\u0003\u04a3\u0003\u04a3\u0003\u04a4\u0003",
+ "\u04a4\u0003\u04a4\u0003\u04a4\u0003\u04a4\u0003\u04a4\u0003\u04a4\u0003",
+ "\u04a4\u0003\u04a4\u0003\u04a4\u0003\u04a4\u0003\u04a5\u0003\u04a5\u0003",
+ "\u04a5\u0003\u04a5\u0003\u04a5\u0003\u04a5\u0003\u04a6\u0003\u04a6\u0003",
+ "\u04a6\u0003\u04a6\u0003\u04a6\u0003\u04a6\u0003\u04a6\u0003\u04a6\u0003",
+ "\u04a6\u0003\u04a6\u0003\u04a7\u0003\u04a7\u0003\u04a7\u0003\u04a7\u0003",
+ "\u04a8\u0003\u04a8\u0003\u04a8\u0003\u04a8\u0003\u04a8\u0003\u04a8\u0003",
+ "\u04a8\u0003\u04a8\u0003\u04a9\u0003\u04a9\u0003\u04a9\u0003\u04a9\u0003",
+ "\u04a9\u0003\u04a9\u0003\u04a9\u0003\u04a9\u0003\u04a9\u0003\u04aa\u0003",
+ "\u04aa\u0003\u04aa\u0003\u04aa\u0003\u04aa\u0003\u04aa\u0003\u04aa\u0003",
+ "\u04aa\u0003\u04aa\u0003\u04aa\u0003\u04aa\u0003\u04aa\u0003\u04aa\u0003",
+ "\u04aa\u0003\u04aa\u0003\u04aa\u0003\u04ab\u0003\u04ab\u0003\u04ab\u0003",
+ "\u04ab\u0003\u04ab\u0003\u04ab\u0003\u04ab\u0003\u04ab\u0003\u04ab\u0003",
+ "\u04ab\u0003\u04ab\u0003\u04ab\u0003\u04ab\u0003\u04ab\u0003\u04ab\u0003",
+ "\u04ac\u0003\u04ac\u0003\u04ac\u0003\u04ac\u0003\u04ac\u0003\u04ac\u0003",
+ "\u04ac\u0003\u04ac\u0003\u04ac\u0003\u04ad\u0003\u04ad\u0003\u04ad\u0003",
+ "\u04ad\u0003\u04ad\u0003\u04ad\u0003\u04ad\u0003\u04ad\u0003\u04ad\u0003",
+ "\u04ad\u0003\u04ad\u0003\u04ad\u0003\u04ad\u0003\u04ad\u0003\u04ae\u0003",
+ "\u04ae\u0003\u04ae\u0003\u04ae\u0003\u04ae\u0003\u04ae\u0003\u04ae\u0003",
+ "\u04ae\u0003\u04ae\u0003\u04ae\u0003\u04ae\u0003\u04af\u0003\u04af\u0003",
+ "\u04af\u0003\u04af\u0003\u04af\u0003\u04af\u0003\u04b0\u0003\u04b0\u0003",
+ "\u04b0\u0003\u04b0\u0003\u04b0\u0003\u04b0\u0003\u04b0\u0003\u04b1\u0003",
+ "\u04b1\u0003\u04b1\u0003\u04b1\u0003\u04b1\u0003\u04b1\u0003\u04b1\u0003",
+ "\u04b2\u0003\u04b2\u0003\u04b2\u0003\u04b2\u0003\u04b2\u0003\u04b2\u0003",
+ "\u04b2\u0003\u04b2\u0003\u04b2\u0003\u04b2\u0003\u04b2\u0003\u04b2\u0003",
+ "\u04b2\u0003\u04b3\u0003\u04b3\u0003\u04b3\u0003\u04b3\u0003\u04b3\u0003",
+ "\u04b3\u0003\u04b3\u0003\u04b3\u0003\u04b3\u0003\u04b3\u0003\u04b4\u0003",
+ "\u04b4\u0003\u04b4\u0003\u04b4\u0003\u04b4\u0003\u04b4\u0003\u04b4\u0003",
+ "\u04b4\u0003\u04b5\u0003\u04b5\u0003\u04b5\u0003\u04b5\u0003\u04b5\u0003",
+ "\u04b5\u0003\u04b5\u0003\u04b5\u0003\u04b5\u0003\u04b5\u0003\u04b5\u0003",
+ "\u04b5\u0003\u04b5\u0003\u04b5\u0003\u04b5\u0003\u04b5\u0003\u04b5\u0003",
+ "\u04b5\u0003\u04b5\u0003\u04b5\u0003\u04b5\u0003\u04b5\u0003\u04b5\u0003",
+ "\u04b5\u0003\u04b6\u0003\u04b6\u0003\u04b6\u0003\u04b6\u0003\u04b6\u0003",
+ "\u04b6\u0003\u04b6\u0003\u04b6\u0003\u04b6\u0003\u04b6\u0003\u04b6\u0003",
+ "\u04b6\u0003\u04b6\u0003\u04b6\u0003\u04b6\u0003\u04b7\u0003\u04b7\u0003",
+ "\u04b7\u0003\u04b7\u0003\u04b7\u0003\u04b7\u0003\u04b7\u0003\u04b7\u0003",
+ "\u04b7\u0003\u04b7\u0003\u04b7\u0003\u04b7\u0003\u04b7\u0003\u04b7\u0003",
+ "\u04b7\u0003\u04b8\u0003\u04b8\u0003\u04b8\u0003\u04b8\u0003\u04b8\u0003",
+ "\u04b8\u0003\u04b8\u0003\u04b8\u0003\u04b8\u0003\u04b8\u0003\u04b9\u0003",
+ "\u04b9\u0003\u04b9\u0003\u04b9\u0003\u04b9\u0003\u04b9\u0003\u04b9\u0003",
+ "\u04b9\u0003\u04b9\u0003\u04b9\u0003\u04b9\u0003\u04b9\u0003\u04b9\u0003",
+ "\u04b9\u0003\u04b9\u0003\u04b9\u0003\u04ba\u0003\u04ba\u0003\u04ba\u0003",
+ "\u04ba\u0003\u04ba\u0003\u04ba\u0003\u04ba\u0003\u04ba\u0003\u04ba\u0003",
+ "\u04ba\u0003\u04ba\u0003\u04bb\u0003\u04bb\u0003\u04bb\u0003\u04bb\u0003",
+ "\u04bb\u0003\u04bb\u0003\u04bb\u0003\u04bb\u0003\u04bb\u0003\u04bb\u0003",
+ "\u04bb\u0003\u04bb\u0003\u04bb\u0003\u04bb\u0003\u04bc\u0003\u04bc\u0003",
+ "\u04bc\u0003\u04bc\u0003\u04bc\u0003\u04bc\u0003\u04bc\u0003\u04bc\u0003",
+ "\u04bd\u0003\u04bd\u0003\u04bd\u0003\u04bd\u0003\u04bd\u0003\u04bd\u0003",
+ "\u04bd\u0003\u04bd\u0003\u04bd\u0003\u04bd\u0003\u04bd\u0003\u04bd\u0003",
+ "\u04bd\u0003\u04bd\u0003\u04bd\u0003\u04bd\u0003\u04bd\u0003\u04bd\u0003",
+ "\u04bd\u0003\u04bd\u0003\u04be\u0003\u04be\u0003\u04be\u0003\u04be\u0003",
+ "\u04be\u0003\u04be\u0003\u04be\u0003\u04be\u0003\u04be\u0003\u04be\u0003",
+ "\u04be\u0003\u04be\u0003\u04be\u0003\u04be\u0003\u04be\u0003\u04be\u0003",
+ "\u04be\u0003\u04be\u0003\u04be\u0003\u04bf\u0003\u04bf\u0003\u04bf\u0003",
+ "\u04bf\u0003\u04bf\u0003\u04bf\u0003\u04bf\u0003\u04bf\u0003\u04bf\u0003",
+ "\u04bf\u0003\u04bf\u0003\u04bf\u0003\u04bf\u0003\u04bf\u0003\u04bf\u0003",
+ "\u04bf\u0003\u04bf\u0003\u04bf\u0003\u04bf\u0003\u04c0\u0003\u04c0\u0003",
+ "\u04c0\u0003\u04c0\u0003\u04c0\u0003\u04c0\u0003\u04c0\u0003\u04c0\u0003",
+ "\u04c0\u0003\u04c1\u0003\u04c1\u0003\u04c1\u0003\u04c1\u0003\u04c1\u0003",
+ "\u04c1\u0003\u04c1\u0003\u04c1\u0003\u04c1\u0003\u04c1\u0003\u04c1\u0003",
+ "\u04c1\u0003\u04c1\u0003\u04c1\u0003\u04c1\u0003\u04c1\u0003\u04c1\u0003",
+ "\u04c1\u0003\u04c1\u0003\u04c2\u0003\u04c2\u0003\u04c2\u0003\u04c2\u0003",
+ "\u04c2\u0003\u04c2\u0003\u04c2\u0003\u04c2\u0003\u04c2\u0003\u04c2\u0003",
+ "\u04c2\u0003\u04c2\u0003\u04c2\u0003\u04c2\u0003\u04c2\u0003\u04c2\u0003",
+ "\u04c2\u0003\u04c2\u0003\u04c2\u0003\u04c2\u0003\u04c3\u0003\u04c3\u0003",
+ "\u04c3\u0003\u04c3\u0003\u04c3\u0003\u04c3\u0003\u04c3\u0003\u04c3\u0003",
+ "\u04c3\u0003\u04c3\u0003\u04c3\u0003\u04c3\u0003\u04c3\u0003\u04c3\u0003",
+ "\u04c3\u0003\u04c3\u0003\u04c3\u0003\u04c3\u0003\u04c3\u0003\u04c3\u0003",
+ "\u04c3\u0003\u04c3\u0003\u04c3\u0003\u04c3\u0003\u04c3\u0003\u04c4\u0003",
+ "\u04c4\u0003\u04c4\u0003\u04c4\u0003\u04c4\u0003\u04c5\u0003\u04c5\u0003",
+ "\u04c5\u0003\u04c5\u0003\u04c5\u0003\u04c5\u0003\u04c6\u0003\u04c6\u0003",
+ "\u04c6\u0003\u04c6\u0003\u04c6\u0003\u04c7\u0003\u04c7\u0003\u04c7\u0003",
+ "\u04c7\u0003\u04c7\u0003\u04c7\u0003\u04c7\u0003\u04c7\u0003\u04c7\u0003",
+ "\u04c7\u0003\u04c7\u0003\u04c7\u0003\u04c8\u0003\u04c8\u0003\u04c8\u0003",
+ "\u04c8\u0003\u04c8\u0003\u04c8\u0003\u04c9\u0003\u04c9\u0003\u04c9\u0003",
+ "\u04c9\u0003\u04c9\u0003\u04c9\u0003\u04c9\u0003\u04c9\u0003\u04ca\u0003",
+ "\u04ca\u0003\u04ca\u0003\u04ca\u0003\u04ca\u0003\u04ca\u0003\u04ca\u0003",
+ "\u04ca\u0003\u04ca\u0003\u04ca\u0003\u04ca\u0003\u04ca\u0003\u04ca\u0003",
+ "\u04cb\u0003\u04cb\u0003\u04cb\u0003\u04cb\u0003\u04cb\u0003\u04cb\u0003",
+ "\u04cb\u0003\u04cb\u0003\u04cb\u0003\u04cb\u0003\u04cb\u0003\u04cc\u0003",
+ "\u04cc\u0003\u04cc\u0003\u04cc\u0003\u04cc\u0003\u04cc\u0003\u04cc\u0003",
+ "\u04cc\u0003\u04cd\u0003\u04cd\u0003\u04cd\u0003\u04cd\u0003\u04cd\u0003",
+ "\u04cd\u0003\u04cd\u0003\u04cd\u0003\u04cd\u0003\u04cd\u0003\u04cd\u0003",
+ "\u04cd\u0003\u04ce\u0003\u04ce\u0003\u04ce\u0003\u04ce\u0003\u04ce\u0003",
+ "\u04ce\u0003\u04ce\u0003\u04ce\u0003\u04ce\u0003\u04ce\u0003\u04ce\u0003",
+ "\u04ce\u0003\u04ce\u0003\u04cf\u0003\u04cf\u0003\u04cf\u0003\u04cf\u0003",
+ "\u04cf\u0003\u04cf\u0003\u04cf\u0003\u04cf\u0003\u04d0\u0003\u04d0\u0003",
+ "\u04d0\u0003\u04d0\u0003\u04d0\u0003\u04d0\u0003\u04d0\u0003\u04d0\u0003",
+ "\u04d0\u0003\u04d0\u0003\u04d0\u0003\u04d1\u0003\u04d1\u0003\u04d1\u0003",
+ "\u04d1\u0003\u04d1\u0003\u04d1\u0003\u04d1\u0003\u04d1\u0003\u04d2\u0003",
+ "\u04d2\u0007\u04d2\u467f\n\u04d2\f\u04d2\u000e\u04d2\u4682\u000b\u04d2",
+ "\u0003\u04d2\u0003\u04d2\u0003\u04d2\u0003\u04d2\u0003\u04d2\u0003\u04d2",
+ "\u0003\u04d3\u0003\u04d3\u0007\u04d3\u468c\n\u04d3\f\u04d3\u000e\u04d3",
+ "\u468f\u000b\u04d3\u0003\u04d3\u0003\u04d3\u0003\u04d3\u0003\u04d3\u0003",
+ "\u04d3\u0003\u04d3\u0003\u04d3\u0003\u04d4\u0003\u04d4\u0007\u04d4\u469a",
+ "\n\u04d4\f\u04d4\u000e\u04d4\u469d\u000b\u04d4\u0003\u04d4\u0003\u04d4",
+ "\u0003\u04d4\u0003\u04d4\u0003\u04d4\u0003\u04d4\u0003\u04d4\u0003\u04d4",
+ "\u0003\u04d4\u0003\u04d5\u0003\u04d5\u0003\u04d5\u0003\u04d5\u0003\u04d5",
+ "\u0003\u04d5\u0003\u04d5\u0003\u04d5\u0003\u04d6\u0003\u04d6\u0003\u04d6",
+ "\u0003\u04d6\u0003\u04d6\u0003\u04d6\u0003\u04d6\u0003\u04d6\u0003\u04d6",
+ "\u0003\u04d6\u0003\u04d6\u0003\u04d6\u0003\u04d6\u0003\u04d6\u0003\u04d7",
+ "\u0003\u04d7\u0007\u04d7\u46c0\n\u04d7\f\u04d7\u000e\u04d7\u46c3\u000b",
+ "\u04d7\u0003\u04d7\u0003\u04d7\u0003\u04d7\u0003\u04d7\u0003\u04d7\u0003",
+ "\u04d7\u0003\u04d7\u0003\u04d7\u0003\u04d7\u0003\u04d8\u0003\u04d8\u0007",
+ "\u04d8\u46d0\n\u04d8\f\u04d8\u000e\u04d8\u46d3\u000b\u04d8\u0003\u04d8",
+ "\u0003\u04d8\u0003\u04d8\u0003\u04d8\u0003\u04d8\u0003\u04d8\u0003\u04d8",
+ "\u0003\u04d8\u0003\u04d9\u0003\u04d9\u0007\u04d9\u46df\n\u04d9\f\u04d9",
+ "\u000e\u04d9\u46e2\u000b\u04d9\u0003\u04d9\u0003\u04d9\u0003\u04d9\u0003",
+ "\u04d9\u0003\u04d9\u0003\u04da\u0003\u04da\u0003\u04da\u0003\u04da\u0003",
+ "\u04da\u0003\u04da\u0003\u04da\u0003\u04da\u0003\u04da\u0003\u04da\u0003",
+ "\u04da\u0003\u04da\u0003\u04db\u0003\u04db\u0003\u04db\u0003\u04db\u0003",
+ "\u04db\u0003\u04db\u0003\u04db\u0003\u04dc\u0003\u04dc\u0003\u04dc\u0003",
+ "\u04dc\u0003\u04dc\u0003\u04dc\u0003\u04dc\u0003\u04dc\u0003\u04dc\u0003",
+ "\u04dc\u0003\u04dd\u0003\u04dd\u0003\u04dd\u0003\u04dd\u0003\u04dd\u0003",
+ "\u04dd\u0003\u04dd\u0003\u04dd\u0003\u04dd\u0003\u04dd\u0003\u04dd\u0003",
+ "\u04de\u0003\u04de\u0003\u04de\u0003\u04de\u0003\u04de\u0003\u04de\u0003",
+ "\u04de\u0003\u04de\u0003\u04df\u0003\u04df\u0003\u04df\u0003\u04df\u0003",
+ "\u04e0\u0003\u04e0\u0003\u04e0\u0003\u04e0\u0003\u04e0\u0003\u04e0\u0003",
+ "\u04e1\u0003\u04e1\u0003\u04e1\u0003\u04e1\u0003\u04e1\u0003\u04e1\u0003",
+ "\u04e1\u0003\u04e1\u0003\u04e1\u0003\u04e2\u0003\u04e2\u0003\u04e2\u0003",
+ "\u04e2\u0003\u04e2\u0003\u04e2\u0003\u04e3\u0003\u04e3\u0003\u04e3\u0003",
+ "\u04e3\u0003\u04e3\u0003\u04e3\u0003\u04e3\u0003\u04e3\u0003\u04e3\u0003",
+ "\u04e3\u0003\u04e4\u0003\u04e4\u0003\u04e4\u0003\u04e4\u0003\u04e4\u0003",
+ "\u04e5\u0003\u04e5\u0003\u04e5\u0003\u04e5\u0003\u04e5\u0003\u04e5\u0003",
+ "\u04e5\u0003\u04e6\u0003\u04e6\u0003\u04e6\u0003\u04e6\u0003\u04e6\u0003",
+ "\u04e6\u0003\u04e7\u0003\u04e7\u0003\u04e7\u0003\u04e7\u0003\u04e7\u0003",
+ "\u04e7\u0003\u04e7\u0003\u04e7\u0003\u04e8\u0003\u04e8\u0003\u04e8\u0003",
+ "\u04e8\u0003\u04e8\u0003\u04e8\u0003\u04e8\u0003\u04e8\u0003\u04e8\u0003",
+ "\u04e8\u0003\u04e8\u0003\u04e8\u0003\u04e8\u0003\u04e8\u0003\u04e8\u0003",
+ "\u04e9\u0003\u04e9\u0003\u04e9\u0003\u04e9\u0003\u04e9\u0003\u04e9\u0003",
+ "\u04e9\u0003\u04e9\u0003\u04e9\u0003\u04e9\u0003\u04e9\u0003\u04e9\u0003",
+ "\u04e9\u0003\u04e9\u0003\u04e9\u0003\u04ea\u0003\u04ea\u0003\u04ea\u0003",
+ "\u04ea\u0003\u04ea\u0003\u04eb\u0003\u04eb\u0003\u04eb\u0003\u04eb\u0003",
+ "\u04eb\u0003\u04eb\u0003\u04eb\u0003\u04eb\u0003\u04eb\u0003\u04eb\u0003",
+ "\u04eb\u0003\u04eb\u0003\u04eb\u0003\u04eb\u0003\u04eb\u0003\u04eb\u0003",
+ "\u04eb\u0003\u04ec\u0003\u04ec\u0003\u04ec\u0003\u04ec\u0003\u04ec\u0003",
+ "\u04ec\u0003\u04ec\u0003\u04ec\u0003\u04ec\u0003\u04ec\u0003\u04ec\u0003",
+ "\u04ec\u0003\u04ed\u0003\u04ed\u0003\u04ed\u0003\u04ed\u0003\u04ed\u0003",
+ "\u04ed\u0003\u04ed\u0003\u04ed\u0003\u04ed\u0003\u04ed\u0003\u04ed\u0003",
+ "\u04ed\u0003\u04ed\u0003\u04ed\u0003\u04ee\u0003\u04ee\u0003\u04ee\u0003",
+ "\u04ee\u0003\u04ee\u0003\u04ee\u0003\u04ee\u0003\u04ee\u0003\u04ee\u0003",
+ "\u04ee\u0003\u04ee\u0003\u04ee\u0003\u04ee\u0003\u04ee\u0003\u04ee\u0003",
+ "\u04ee\u0003\u04ef\u0003\u04ef\u0003\u04ef\u0003\u04ef\u0003\u04ef\u0003",
+ "\u04ef\u0003\u04ef\u0003\u04ef\u0003\u04ef\u0003\u04ef\u0003\u04ef\u0003",
+ "\u04ef\u0003\u04f0\u0003\u04f0\u0003\u04f0\u0003\u04f0\u0003\u04f0\u0003",
+ "\u04f0\u0003\u04f0\u0003\u04f0\u0003\u04f0\u0003\u04f0\u0003\u04f0\u0003",
+ "\u04f0\u0003\u04f0\u0003\u04f0\u0003\u04f0\u0003\u04f0\u0003\u04f0\u0003",
+ "\u04f0\u0003\u04f0\u0003\u04f0\u0003\u04f0\u0003\u04f1\u0003\u04f1\u0003",
+ "\u04f1\u0003\u04f1\u0003\u04f1\u0003\u04f1\u0003\u04f1\u0003\u04f1\u0003",
+ "\u04f1\u0003\u04f1\u0003\u04f1\u0003\u04f1\u0003\u04f1\u0003\u04f1\u0003",
+ "\u04f1\u0003\u04f2\u0003\u04f2\u0003\u04f2\u0003\u04f2\u0003\u04f2\u0003",
+ "\u04f2\u0003\u04f2\u0003\u04f2\u0003\u04f2\u0003\u04f2\u0003\u04f3\u0003",
+ "\u04f3\u0003\u04f3\u0003\u04f3\u0003\u04f3\u0003\u04f3\u0003\u04f4\u0003",
+ "\u04f4\u0003\u04f4\u0003\u04f4\u0003\u04f4\u0003\u04f4\u0003\u04f4\u0003",
+ "\u04f5\u0003\u04f5\u0003\u04f5\u0003\u04f5\u0003\u04f5\u0003\u04f5\u0003",
+ "\u04f5\u0003\u04f5\u0003\u04f5\u0003\u04f6\u0003\u04f6\u0003\u04f6\u0003",
+ "\u04f6\u0003\u04f6\u0003\u04f6\u0003\u04f6\u0003\u04f6\u0003\u04f7\u0003",
+ "\u04f7\u0003\u04f7\u0003\u04f7\u0003\u04f7\u0003\u04f7\u0003\u04f7\u0003",
+ "\u04f7\u0003\u04f7\u0003\u04f8\u0003\u04f8\u0003\u04f8\u0003\u04f8\u0003",
+ "\u04f8\u0003\u04f8\u0003\u04f8\u0003\u04f8\u0003\u04f9\u0003\u04f9\u0003",
+ "\u04f9\u0003\u04f9\u0003\u04f9\u0003\u04f9\u0003\u04f9\u0003\u04f9\u0003",
+ "\u04fa\u0003\u04fa\u0003\u04fa\u0003\u04fa\u0003\u04fa\u0003\u04fa\u0003",
+ "\u04fa\u0003\u04fa\u0003\u04fa\u0003\u04fa\u0003\u04fb\u0003\u04fb\u0003",
+ "\u04fb\u0003\u04fb\u0003\u04fb\u0003\u04fb\u0003\u04fb\u0003\u04fb\u0003",
+ "\u04fb\u0003\u04fc\u0003\u04fc\u0003\u04fc\u0003\u04fc\u0003\u04fc\u0003",
+ "\u04fc\u0003\u04fc\u0003\u04fc\u0003\u04fc\u0003\u04fc\u0003\u04fc\u0003",
+ "\u04fc\u0003\u04fc\u0003\u04fc\u0003\u04fc\u0003\u04fc\u0003\u04fc\u0003",
+ "\u04fd\u0003\u04fd\u0003\u04fd\u0003\u04fd\u0003\u04fd\u0003\u04fd\u0003",
+ "\u04fd\u0003\u04fd\u0003\u04fd\u0003\u04fd\u0003\u04fd\u0003\u04fd\u0003",
+ "\u04fd\u0003\u04fd\u0003\u04fd\u0003\u04fd\u0003\u04fd\u0003\u04fd\u0003",
+ "\u04fd\u0003\u04fd\u0003\u04fd\u0003\u04fd\u0003\u04fd\u0003\u04fd\u0003",
+ "\u04fd\u0003\u04fd\u0003\u04fd\u0003\u04fd\u0003\u04fd\u0003\u04fe\u0003",
+ "\u04fe\u0003\u04fe\u0003\u04fe\u0003\u04fe\u0003\u04fe\u0003\u04fe\u0003",
+ "\u04fe\u0003\u04fe\u0003\u04fe\u0003\u04fe\u0003\u04fe\u0003\u04fe\u0003",
+ "\u04fe\u0003\u04ff\u0003\u04ff\u0003\u04ff\u0003\u04ff\u0003\u04ff\u0003",
+ "\u04ff\u0003\u0500\u0003\u0500\u0003\u0500\u0003\u0500\u0003\u0500\u0003",
+ "\u0500\u0003\u0500\u0003\u0500\u0003\u0500\u0003\u0500\u0003\u0500\u0003",
+ "\u0500\u0003\u0500\u0003\u0500\u0003\u0500\u0003\u0500\u0003\u0500\u0003",
+ "\u0500\u0003\u0500\u0003\u0500\u0003\u0501\u0003\u0501\u0003\u0501\u0003",
+ "\u0501\u0003\u0501\u0003\u0501\u0003\u0501\u0003\u0501\u0003\u0501\u0003",
+ "\u0501\u0003\u0501\u0003\u0501\u0003\u0501\u0003\u0501\u0003\u0502\u0003",
+ "\u0502\u0003\u0502\u0003\u0502\u0003\u0502\u0003\u0502\u0003\u0502\u0003",
+ "\u0502\u0003\u0502\u0003\u0502\u0003\u0502\u0003\u0502\u0003\u0502\u0003",
+ "\u0502\u0003\u0502\u0003\u0502\u0003\u0502\u0003\u0502\u0003\u0502\u0003",
+ "\u0502\u0003\u0502\u0003\u0503\u0003\u0503\u0003\u0503\u0003\u0503\u0003",
+ "\u0503\u0003\u0503\u0003\u0503\u0003\u0503\u0003\u0503\u0003\u0503\u0003",
+ "\u0504\u0003\u0504\u0003\u0504\u0003\u0504\u0003\u0504\u0003\u0504\u0003",
+ "\u0504\u0003\u0505\u0003\u0505\u0003\u0505\u0003\u0505\u0003\u0505\u0003",
+ "\u0505\u0003\u0505\u0003\u0505\u0003\u0505\u0003\u0506\u0003\u0506\u0003",
+ "\u0506\u0003\u0506\u0003\u0506\u0003\u0506\u0003\u0506\u0003\u0506\u0003",
+ "\u0506\u0003\u0506\u0003\u0506\u0003\u0506\u0003\u0506\u0003\u0507\u0003",
+ "\u0507\u0003\u0507\u0003\u0507\u0003\u0507\u0003\u0507\u0003\u0507\u0003",
+ "\u0507\u0003\u0508\u0003\u0508\u0003\u0508\u0003\u0508\u0003\u0508\u0003",
+ "\u0508\u0003\u0508\u0003\u0509\u0003\u0509\u0003\u0509\u0003\u0509\u0003",
+ "\u0509\u0003\u0509\u0003\u0509\u0003\u0509\u0003\u0509\u0003\u050a\u0003",
+ "\u050a\u0003\u050a\u0003\u050a\u0003\u050a\u0003\u050a\u0003\u050a\u0003",
+ "\u050a\u0003\u050a\u0003\u050b\u0003\u050b\u0003\u050b\u0003\u050b\u0003",
+ "\u050b\u0003\u050b\u0003\u050b\u0003\u050b\u0003\u050b\u0003\u050b\u0003",
+ "\u050c\u0003\u050c\u0003\u050c\u0003\u050c\u0003\u050c\u0003\u050c\u0003",
+ "\u050c\u0003\u050c\u0003\u050c\u0003\u050c\u0003\u050d\u0003\u050d\u0003",
+ "\u050d\u0003\u050d\u0003\u050d\u0003\u050d\u0003\u050d\u0003\u050d\u0003",
+ "\u050d\u0003\u050d\u0003\u050d\u0003\u050d\u0003\u050d\u0003\u050d\u0003",
+ "\u050d\u0003\u050d\u0003\u050d\u0003\u050d\u0003\u050d\u0003\u050d\u0003",
+ "\u050e\u0003\u050e\u0003\u050e\u0003\u050e\u0003\u050e\u0003\u050e\u0003",
+ "\u050e\u0003\u050e\u0003\u050e\u0003\u050e\u0003\u050e\u0003\u050e\u0003",
+ "\u050e\u0003\u050e\u0003\u050e\u0003\u050e\u0003\u050e\u0003\u050e\u0003",
+ "\u050e\u0003\u050f\u0003\u050f\u0003\u050f\u0003\u050f\u0003\u050f\u0003",
+ "\u050f\u0003\u050f\u0003\u050f\u0003\u0510\u0003\u0510\u0003\u0510\u0003",
+ "\u0510\u0003\u0510\u0003\u0510\u0003\u0510\u0003\u0510\u0003\u0511\u0003",
+ "\u0511\u0003\u0511\u0003\u0511\u0003\u0511\u0003\u0511\u0003\u0511\u0003",
+ "\u0511\u0003\u0511\u0003\u0511\u0003\u0511\u0003\u0512\u0003\u0512\u0003",
+ "\u0512\u0003\u0512\u0003\u0512\u0003\u0512\u0003\u0512\u0003\u0512\u0003",
+ "\u0513\u0003\u0513\u0003\u0513\u0003\u0513\u0003\u0513\u0003\u0513\u0003",
+ "\u0513\u0003\u0513\u0003\u0513\u0003\u0514\u0003\u0514\u0003\u0514\u0003",
+ "\u0514\u0003\u0514\u0003\u0514\u0003\u0514\u0003\u0514\u0003\u0514\u0003",
+ "\u0514\u0003\u0514\u0003\u0514\u0003\u0514\u0003\u0515\u0003\u0515\u0003",
+ "\u0515\u0003\u0515\u0003\u0515\u0003\u0515\u0003\u0515\u0003\u0515\u0003",
+ "\u0515\u0003\u0516\u0003\u0516\u0003\u0516\u0003\u0516\u0003\u0516\u0003",
+ "\u0516\u0003\u0516\u0003\u0517\u0003\u0517\u0003\u0517\u0003\u0517\u0003",
+ "\u0517\u0003\u0517\u0003\u0517\u0003\u0517\u0003\u0517\u0003\u0518\u0003",
+ "\u0518\u0003\u0518\u0003\u0518\u0003\u0518\u0003\u0519\u0003\u0519\u0003",
+ "\u0519\u0003\u0519\u0003\u0519\u0003\u0519\u0003\u0519\u0003\u0519\u0003",
+ "\u051a\u0003\u051a\u0003\u051a\u0003\u051a\u0003\u051a\u0003\u051a\u0003",
+ "\u051a\u0003\u051a\u0003\u051a\u0003\u051a\u0003\u051a\u0003\u051a\u0003",
+ "\u051a\u0003\u051a\u0003\u051a\u0003\u051a\u0003\u051b\u0003\u051b\u0003",
+ "\u051b\u0003\u051b\u0003\u051b\u0003\u051b\u0003\u051b\u0003\u051b\u0003",
+ "\u051b\u0003\u051c\u0003\u051c\u0003\u051c\u0003\u051c\u0003\u051c\u0003",
+ "\u051c\u0003\u051d\u0003\u051d\u0003\u051d\u0003\u051d\u0003\u051d\u0003",
+ "\u051d\u0003\u051d\u0003\u051d\u0003\u051e\u0003\u051e\u0003\u051e\u0003",
+ "\u051e\u0003\u051e\u0003\u051e\u0003\u051e\u0003\u051e\u0003\u051e\u0003",
+ "\u051e\u0003\u051e\u0003\u051e\u0003\u051f\u0003\u051f\u0003\u051f\u0003",
+ "\u051f\u0003\u051f\u0003\u051f\u0003\u051f\u0003\u051f\u0003\u051f\u0003",
+ "\u051f\u0003\u051f\u0003\u0520\u0003\u0520\u0003\u0520\u0003\u0520\u0003",
+ "\u0520\u0003\u0520\u0003\u0520\u0003\u0520\u0003\u0520\u0003\u0520\u0003",
+ "\u0521\u0003\u0521\u0003\u0521\u0003\u0521\u0003\u0521\u0003\u0521\u0003",
+ "\u0521\u0003\u0521\u0003\u0521\u0003\u0521\u0003\u0521\u0003\u0522\u0003",
+ "\u0522\u0003\u0522\u0003\u0522\u0003\u0522\u0003\u0522\u0003\u0522\u0003",
+ "\u0522\u0003\u0522\u0003\u0522\u0003\u0522\u0003\u0523\u0003\u0523\u0003",
+ "\u0523\u0003\u0523\u0003\u0523\u0003\u0523\u0003\u0523\u0003\u0523\u0003",
+ "\u0523\u0003\u0523\u0003\u0524\u0003\u0524\u0003\u0524\u0003\u0524\u0003",
+ "\u0524\u0003\u0524\u0003\u0524\u0003\u0524\u0003\u0525\u0003\u0525\u0003",
+ "\u0525\u0003\u0525\u0003\u0525\u0003\u0525\u0003\u0525\u0003\u0525\u0003",
+ "\u0526\u0003\u0526\u0003\u0526\u0003\u0526\u0003\u0526\u0003\u0526\u0003",
+ "\u0526\u0003\u0526\u0003\u0527\u0003\u0527\u0003\u0527\u0003\u0527\u0003",
+ "\u0527\u0003\u0527\u0003\u0527\u0003\u0527\u0003\u0528\u0003\u0528\u0003",
+ "\u0528\u0003\u0528\u0003\u0528\u0003\u0528\u0003\u0528\u0003\u0528\u0003",
+ "\u0528\u0003\u0528\u0003\u0529\u0003\u0529\u0003\u0529\u0003\u0529\u0003",
+ "\u0529\u0003\u0529\u0003\u0529\u0003\u0529\u0003\u0529\u0003\u0529\u0003",
+ "\u052a\u0003\u052a\u0003\u052a\u0003\u052a\u0003\u052a\u0003\u052a\u0003",
+ "\u052a\u0003\u052a\u0003\u052a\u0003\u052a\u0003\u052a\u0003\u052b\u0003",
+ "\u052b\u0003\u052b\u0003\u052b\u0003\u052b\u0003\u052b\u0003\u052c\u0003",
+ "\u052c\u0003\u052c\u0003\u052c\u0003\u052c\u0003\u052c\u0003\u052c\u0003",
+ "\u052c\u0003\u052d\u0003\u052d\u0003\u052d\u0003\u052d\u0003\u052d\u0003",
+ "\u052d\u0003\u052d\u0003\u052e\u0003\u052e\u0003\u052e\u0003\u052e\u0003",
+ "\u052e\u0003\u052e\u0003\u052e\u0003\u052e\u0003\u052e\u0003\u052e\u0003",
+ "\u052f\u0003\u052f\u0003\u052f\u0003\u052f\u0003\u052f\u0003\u052f\u0003",
+ "\u0530\u0003\u0530\u0003\u0530\u0003\u0530\u0003\u0530\u0003\u0530\u0003",
+ "\u0530\u0003\u0530\u0003\u0530\u0003\u0530\u0003\u0531\u0003\u0531\u0003",
+ "\u0531\u0003\u0531\u0003\u0531\u0003\u0531\u0003\u0531\u0003\u0531\u0003",
+ "\u0531\u0003\u0531\u0003\u0532\u0003\u0532\u0003\u0532\u0003\u0532\u0003",
+ "\u0532\u0003\u0532\u0003\u0532\u0003\u0532\u0003\u0532\u0003\u0532\u0003",
+ "\u0532\u0003\u0532\u0003\u0532\u0003\u0532\u0003\u0532\u0003\u0532\u0003",
+ "\u0532\u0003\u0532\u0003\u0532\u0003\u0533\u0003\u0533\u0003\u0533\u0003",
+ "\u0533\u0003\u0533\u0003\u0533\u0003\u0533\u0003\u0533\u0003\u0533\u0003",
+ "\u0533\u0003\u0533\u0003\u0534\u0003\u0534\u0003\u0534\u0003\u0534\u0003",
+ "\u0534\u0003\u0534\u0003\u0534\u0003\u0534\u0003\u0534\u0003\u0534\u0003",
+ "\u0534\u0003\u0534\u0003\u0534\u0003\u0534\u0003\u0534\u0003\u0535\u0003",
+ "\u0535\u0003\u0535\u0003\u0535\u0003\u0535\u0003\u0535\u0003\u0535\u0003",
+ "\u0535\u0003\u0536\u0003\u0536\u0003\u0536\u0003\u0536\u0003\u0536\u0003",
+ "\u0536\u0003\u0536\u0003\u0536\u0003\u0536\u0003\u0536\u0003\u0536\u0003",
+ "\u0536\u0003\u0537\u0003\u0537\u0003\u0537\u0003\u0537\u0003\u0537\u0003",
+ "\u0537\u0003\u0538\u0003\u0538\u0003\u0538\u0003\u0538\u0003\u0538\u0003",
+ "\u0538\u0003\u0538\u0003\u0538\u0003\u0538\u0003\u0538\u0003\u0538\u0003",
+ "\u0539\u0003\u0539\u0003\u0539\u0003\u0539\u0003\u0539\u0003\u0539\u0003",
+ "\u053a\u0003\u053a\u0003\u053a\u0003\u053a\u0003\u053a\u0003\u053a\u0003",
+ "\u053a\u0003\u053a\u0003\u053a\u0003\u053a\u0003\u053a\u0003\u053b\u0003",
+ "\u053b\u0003\u053b\u0003\u053b\u0003\u053b\u0003\u053b\u0003\u053b\u0003",
+ "\u053b\u0003\u053c\u0003\u053c\u0003\u053c\u0003\u053c\u0003\u053c\u0003",
+ "\u053c\u0003\u053c\u0003\u053d\u0003\u053d\u0003\u053d\u0003\u053d\u0003",
+ "\u053d\u0003\u053d\u0003\u053e\u0003\u053e\u0003\u053e\u0003\u053e\u0003",
+ "\u053e\u0003\u053e\u0003\u053f\u0003\u053f\u0003\u053f\u0003\u053f\u0003",
+ "\u053f\u0003\u053f\u0003\u053f\u0003\u053f\u0003\u053f\u0003\u053f\u0003",
+ "\u053f\u0003\u053f\u0003\u053f\u0003\u0540\u0003\u0540\u0003\u0540\u0003",
+ "\u0540\u0003\u0540\u0003\u0540\u0003\u0540\u0003\u0541\u0003\u0541\u0003",
+ "\u0541\u0003\u0541\u0003\u0541\u0003\u0541\u0003\u0542\u0003\u0542\u0003",
+ "\u0542\u0003\u0542\u0003\u0542\u0003\u0542\u0003\u0543\u0003\u0543\u0003",
+ "\u0543\u0003\u0543\u0003\u0543\u0003\u0543\u0003\u0543\u0003\u0543\u0003",
+ "\u0544\u0003\u0544\u0003\u0544\u0003\u0544\u0003\u0545\u0003\u0545\u0003",
+ "\u0545\u0003\u0545\u0003\u0545\u0003\u0545\u0003\u0545\u0003\u0545\u0003",
+ "\u0545\u0003\u0546\u0003\u0546\u0003\u0546\u0003\u0546\u0003\u0546\u0003",
+ "\u0546\u0003\u0546\u0003\u0546\u0003\u0546\u0003\u0546\u0003\u0547\u0003",
+ "\u0547\u0003\u0547\u0003\u0547\u0003\u0548\u0003\u0548\u0003\u0548\u0003",
+ "\u0548\u0003\u0548\u0003\u0548\u0003\u0548\u0003\u0548\u0003\u0548\u0003",
+ "\u0548\u0003\u0548\u0003\u0548\u0003\u0549\u0003\u0549\u0003\u0549\u0003",
+ "\u0549\u0003\u0549\u0003\u054a\u0003\u054a\u0003\u054a\u0003\u054a\u0003",
+ "\u054a\u0003\u054b\u0003\u054b\u0003\u054b\u0003\u054b\u0003\u054b\u0003",
+ "\u054b\u0003\u054c\u0003\u054c\u0003\u054c\u0003\u054c\u0003\u054c\u0003",
+ "\u054c\u0003\u054d\u0003\u054d\u0003\u054d\u0003\u054d\u0003\u054d\u0003",
+ "\u054e\u0003\u054e\u0003\u054e\u0003\u054e\u0003\u054e\u0003\u054e\u0003",
+ "\u054e\u0003\u054e\u0003\u054e\u0003\u054e\u0003\u054f\u0003\u054f\u0003",
+ "\u054f\u0003\u054f\u0003\u054f\u0003\u054f\u0003\u054f\u0003\u054f\u0003",
+ "\u0550\u0003\u0550\u0003\u0550\u0003\u0550\u0003\u0550\u0003\u0550\u0003",
+ "\u0550\u0003\u0551\u0003\u0551\u0003\u0551\u0003\u0551\u0003\u0551\u0003",
+ "\u0551\u0003\u0551\u0003\u0551\u0003\u0551\u0003\u0551\u0003\u0551\u0003",
+ "\u0551\u0003\u0551\u0003\u0551\u0003\u0551\u0003\u0551\u0003\u0551\u0003",
+ "\u0551\u0003\u0552\u0003\u0552\u0003\u0552\u0003\u0552\u0003\u0552\u0003",
+ "\u0552\u0003\u0552\u0003\u0552\u0003\u0552\u0003\u0552\u0003\u0552\u0003",
+ "\u0552\u0003\u0553\u0003\u0553\u0003\u0553\u0003\u0553\u0003\u0553\u0003",
+ "\u0553\u0003\u0553\u0003\u0553\u0003\u0554\u0003\u0554\u0003\u0554\u0003",
+ "\u0554\u0003\u0554\u0003\u0554\u0003\u0554\u0003\u0554\u0003\u0554\u0003",
+ "\u0555\u0003\u0555\u0003\u0555\u0003\u0555\u0003\u0555\u0003\u0555\u0003",
+ "\u0555\u0003\u0555\u0003\u0555\u0003\u0555\u0003\u0555\u0003\u0556\u0003",
+ "\u0556\u0003\u0556\u0003\u0556\u0003\u0556\u0003\u0556\u0003\u0556\u0003",
+ "\u0556\u0003\u0557\u0003\u0557\u0003\u0557\u0003\u0557\u0003\u0557\u0003",
+ "\u0557\u0003\u0557\u0003\u0557\u0003\u0557\u0003\u0557\u0003\u0558\u0003",
+ "\u0558\u0003\u0558\u0003\u0558\u0003\u0558\u0003\u0558\u0003\u0558\u0003",
+ "\u0558\u0003\u0558\u0003\u0559\u0003\u0559\u0003\u0559\u0003\u0559\u0003",
+ "\u0559\u0003\u055a\u0003\u055a\u0003\u055a\u0003\u055a\u0003\u055a\u0003",
+ "\u055a\u0003\u055a\u0003\u055a\u0003\u055b\u0003\u055b\u0003\u055b\u0003",
+ "\u055b\u0003\u055b\u0003\u055b\u0003\u055b\u0003\u055b\u0003\u055b\u0003",
+ "\u055b\u0003\u055b\u0003\u055c\u0003\u055c\u0003\u055c\u0003\u055c\u0003",
+ "\u055c\u0003\u055c\u0003\u055c\u0003\u055c\u0003\u055c\u0003\u055c\u0003",
+ "\u055c\u0003\u055c\u0003\u055c\u0003\u055c\u0003\u055c\u0003\u055c\u0003",
+ "\u055c\u0003\u055c\u0003\u055c\u0003\u055d\u0003\u055d\u0003\u055d\u0003",
+ "\u055d\u0003\u055d\u0003\u055d\u0003\u055d\u0003\u055d\u0003\u055d\u0003",
+ "\u055d\u0003\u055d\u0003\u055e\u0003\u055e\u0003\u055e\u0003\u055e\u0003",
+ "\u055e\u0003\u055e\u0003\u055e\u0003\u055e\u0003\u055e\u0003\u055e\u0003",
+ "\u055f\u0003\u055f\u0003\u055f\u0003\u055f\u0003\u055f\u0003\u055f\u0003",
+ "\u055f\u0003\u055f\u0003\u055f\u0003\u055f\u0003\u055f\u0003\u0560\u0003",
+ "\u0560\u0003\u0560\u0003\u0560\u0003\u0560\u0003\u0560\u0003\u0560\u0003",
+ "\u0560\u0003\u0560\u0003\u0560\u0003\u0560\u0003\u0560\u0003\u0561\u0003",
+ "\u0561\u0003\u0561\u0003\u0561\u0003\u0562\u0003\u0562\u0003\u0562\u0003",
+ "\u0562\u0003\u0562\u0003\u0562\u0003\u0562\u0003\u0562\u0003\u0563\u0003",
+ "\u0563\u0003\u0563\u0003\u0563\u0003\u0563\u0003\u0563\u0003\u0563\u0003",
+ "\u0563\u0003\u0563\u0003\u0564\u0003\u0564\u0003\u0564\u0003\u0564\u0003",
+ "\u0564\u0003\u0564\u0003\u0564\u0003\u0564\u0003\u0564\u0003\u0564\u0003",
+ "\u0564\u0003\u0564\u0003\u0564\u0003\u0565\u0003\u0565\u0003\u0565\u0003",
+ "\u0565\u0003\u0565\u0003\u0565\u0003\u0565\u0003\u0565\u0003\u0565\u0003",
+ "\u0565\u0003\u0565\u0003\u0565\u0003\u0565\u0003\u0566\u0003\u0566\u0003",
+ "\u0566\u0003\u0566\u0003\u0566\u0003\u0566\u0003\u0566\u0003\u0566\u0003",
+ "\u0566\u0003\u0566\u0003\u0566\u0003\u0566\u0003\u0567\u0003\u0567\u0003",
+ "\u0567\u0003\u0567\u0003\u0567\u0003\u0567\u0003\u0567\u0003\u0567\u0003",
+ "\u0567\u0003\u0567\u0003\u0567\u0003\u0567\u0003\u0567\u0003\u0567\u0003",
+ "\u0567\u0003\u0568\u0003\u0568\u0003\u0568\u0003\u0568\u0003\u0568\u0003",
+ "\u0568\u0003\u0568\u0003\u0568\u0003\u0568\u0003\u0568\u0003\u0568\u0003",
+ "\u0568\u0003\u0568\u0003\u0568\u0003\u0569\u0003\u0569\u0003\u0569\u0003",
+ "\u0569\u0003\u0569\u0003\u0569\u0003\u0569\u0003\u0569\u0003\u0569\u0003",
+ "\u056a\u0003\u056a\u0003\u056a\u0003\u056a\u0003\u056a\u0003\u056a\u0003",
+ "\u056a\u0003\u056a\u0003\u056a\u0003\u056a\u0003\u056b\u0003\u056b\u0003",
+ "\u056b\u0003\u056b\u0003\u056b\u0003\u056b\u0003\u056b\u0003\u056b\u0003",
+ "\u056b\u0003\u056b\u0003\u056c\u0003\u056c\u0003\u056c\u0003\u056c\u0003",
+ "\u056c\u0003\u056c\u0003\u056c\u0003\u056c\u0003\u056c\u0003\u056c\u0003",
+ "\u056c\u0003\u056d\u0003\u056d\u0003\u056d\u0003\u056d\u0003\u056d\u0003",
+ "\u056d\u0003\u056d\u0003\u056d\u0003\u056d\u0003\u056d\u0003\u056d\u0003",
+ "\u056d\u0003\u056d\u0003\u056d\u0003\u056d\u0003\u056e\u0003\u056e\u0003",
+ "\u056e\u0003\u056e\u0003\u056e\u0003\u056e\u0003\u056e\u0003\u056e\u0003",
+ "\u056f\u0003\u056f\u0003\u056f\u0003\u056f\u0003\u056f\u0003\u056f\u0003",
+ "\u056f\u0003\u056f\u0003\u056f\u0003\u056f\u0003\u056f\u0003\u0570\u0003",
+ "\u0570\u0003\u0570\u0003\u0570\u0003\u0570\u0003\u0570\u0003\u0570\u0003",
+ "\u0570\u0003\u0570\u0003\u0571\u0003\u0571\u0003\u0571\u0003\u0571\u0003",
+ "\u0571\u0003\u0571\u0003\u0571\u0003\u0571\u0003\u0571\u0003\u0572\u0003",
+ "\u0572\u0003\u0572\u0003\u0572\u0003\u0572\u0003\u0572\u0003\u0572\u0003",
+ "\u0572\u0003\u0572\u0003\u0573\u0003\u0573\u0003\u0573\u0003\u0573\u0003",
+ "\u0573\u0003\u0573\u0003\u0573\u0003\u0573\u0003\u0574\u0003\u0574\u0003",
+ "\u0574\u0003\u0574\u0003\u0574\u0003\u0574\u0003\u0574\u0003\u0575\u0003",
+ "\u0575\u0003\u0575\u0003\u0575\u0003\u0575\u0003\u0575\u0003\u0576\u0003",
+ "\u0576\u0003\u0576\u0003\u0576\u0003\u0576\u0003\u0576\u0003\u0576\u0003",
+ "\u0576\u0003\u0576\u0003\u0576\u0003\u0576\u0003\u0577\u0003\u0577\u0003",
+ "\u0577\u0003\u0577\u0003\u0577\u0003\u0577\u0003\u0577\u0003\u0577\u0003",
+ "\u0577\u0003\u0577\u0003\u0578\u0003\u0578\u0003\u0578\u0003\u0578\u0003",
+ "\u0578\u0003\u0578\u0003\u0578\u0003\u0578\u0003\u0578\u0003\u0579\u0003",
+ "\u0579\u0003\u0579\u0003\u0579\u0003\u0579\u0003\u057a\u0003\u057a\u0003",
+ "\u057a\u0003\u057a\u0003\u057a\u0003\u057a\u0003\u057a\u0003\u057a\u0003",
+ "\u057a\u0003\u057a\u0003\u057b\u0003\u057b\u0003\u057b\u0003\u057b\u0003",
+ "\u057b\u0003\u057b\u0003\u057b\u0003\u057b\u0003\u057b\u0003\u057b\u0003",
+ "\u057b\u0003\u057b\u0003\u057b\u0003\u057b\u0003\u057c\u0003\u057c\u0003",
+ "\u057c\u0003\u057c\u0003\u057c\u0003\u057c\u0003\u057c\u0003\u057d\u0003",
+ "\u057d\u0003\u057d\u0003\u057d\u0003\u057d\u0003\u057d\u0003\u057d\u0003",
+ "\u057e\u0003\u057e\u0003\u057e\u0003\u057e\u0003\u057e\u0003\u057e\u0003",
+ "\u057e\u0003\u057f\u0003\u057f\u0003\u057f\u0003\u057f\u0003\u057f\u0003",
+ "\u057f\u0003\u057f\u0003\u0580\u0003\u0580\u0003\u0580\u0003\u0580\u0003",
+ "\u0580\u0003\u0580\u0003\u0580\u0003\u0580\u0003\u0581\u0003\u0581\u0003",
+ "\u0581\u0003\u0581\u0003\u0581\u0003\u0581\u0003\u0581\u0003\u0581\u0003",
+ "\u0581\u0003\u0581\u0003\u0581\u0003\u0581\u0003\u0582\u0003\u0582\u0003",
+ "\u0582\u0003\u0582\u0003\u0582\u0003\u0582\u0003\u0582\u0003\u0582\u0003",
+ "\u0582\u0003\u0583\u0003\u0583\u0003\u0583\u0003\u0583\u0003\u0583\u0003",
+ "\u0583\u0003\u0583\u0003\u0583\u0003\u0583\u0003\u0583\u0003\u0584\u0003",
+ "\u0584\u0003\u0584\u0003\u0584\u0003\u0584\u0003\u0584\u0003\u0585\u0003",
+ "\u0585\u0003\u0585\u0003\u0585\u0003\u0585\u0003\u0585\u0003\u0585\u0003",
+ "\u0586\u0003\u0586\u0003\u0586\u0003\u0586\u0003\u0586\u0003\u0586\u0003",
+ "\u0586\u0003\u0586\u0003\u0587\u0003\u0587\u0003\u0587\u0003\u0587\u0003",
+ "\u0587\u0003\u0587\u0003\u0587\u0003\u0587\u0003\u0587\u0003\u0588\u0003",
+ "\u0588\u0003\u0588\u0003\u0588\u0003\u0588\u0003\u0588\u0003\u0588\u0003",
+ "\u0588\u0003\u0588\u0003\u0589\u0003\u0589\u0003\u0589\u0003\u0589\u0003",
+ "\u0589\u0003\u0589\u0003\u0589\u0003\u0589\u0003\u058a\u0003\u058a\u0003",
+ "\u058a\u0003\u058a\u0003\u058a\u0003\u058a\u0003\u058a\u0003\u058a\u0003",
+ "\u058b\u0003\u058b\u0003\u058b\u0003\u058b\u0003\u058b\u0003\u058b\u0003",
+ "\u058b\u0003\u058b\u0003\u058b\u0003\u058b\u0003\u058b\u0003\u058b\u0003",
+ "\u058b\u0003\u058b\u0003\u058b\u0003\u058b\u0003\u058b\u0003\u058b\u0003",
+ "\u058b\u0003\u058b\u0003\u058b\u0003\u058c\u0003\u058c\u0003\u058c\u0003",
+ "\u058c\u0003\u058c\u0003\u058c\u0003\u058c\u0003\u058c\u0003\u058d\u0003",
+ "\u058d\u0003\u058d\u0003\u058d\u0003\u058d\u0003\u058d\u0003\u058d\u0003",
+ "\u058d\u0003\u058d\u0003\u058d\u0003\u058d\u0003\u058d\u0003\u058d\u0003",
+ "\u058d\u0003\u058d\u0003\u058d\u0003\u058d\u0003\u058d\u0003\u058d\u0003",
+ "\u058d\u0003\u058d\u0003\u058d\u0003\u058e\u0003\u058e\u0003\u058e\u0003",
+ "\u058e\u0003\u058e\u0003\u058e\u0003\u058e\u0003\u058e\u0003\u058e\u0003",
+ "\u058e\u0003\u058e\u0003\u058f\u0003\u058f\u0003\u058f\u0003\u058f\u0003",
+ "\u058f\u0003\u058f\u0003\u058f\u0003\u058f\u0003\u058f\u0003\u058f\u0003",
+ "\u058f\u0003\u058f\u0003\u058f\u0003\u058f\u0003\u058f\u0003\u058f\u0003",
+ "\u058f\u0003\u058f\u0003\u058f\u0003\u058f\u0003\u0590\u0003\u0590\u0003",
+ "\u0590\u0003\u0590\u0003\u0590\u0003\u0590\u0003\u0590\u0003\u0590\u0003",
+ "\u0590\u0003\u0591\u0003\u0591\u0003\u0591\u0003\u0591\u0003\u0591\u0003",
+ "\u0591\u0003\u0591\u0003\u0591\u0003\u0591\u0003\u0591\u0003\u0591\u0003",
+ "\u0591\u0003\u0591\u0003\u0592\u0003\u0592\u0003\u0592\u0003\u0592\u0003",
+ "\u0592\u0003\u0592\u0003\u0592\u0003\u0593\u0003\u0593\u0003\u0593\u0003",
+ "\u0593\u0003\u0593\u0003\u0593\u0003\u0593\u0003\u0593\u0003\u0593\u0003",
+ "\u0593\u0003\u0594\u0003\u0594\u0003\u0594\u0003\u0594\u0003\u0594\u0003",
+ "\u0594\u0003\u0594\u0003\u0595\u0003\u0595\u0003\u0595\u0003\u0595\u0003",
+ "\u0595\u0003\u0595\u0003\u0595\u0003\u0595\u0003\u0595\u0003\u0595\u0003",
+ "\u0596\u0003\u0596\u0003\u0596\u0003\u0596\u0003\u0596\u0003\u0596\u0003",
+ "\u0596\u0003\u0596\u0003\u0596\u0003\u0596\u0003\u0596\u0003\u0596\u0003",
+ "\u0596\u0003\u0596\u0003\u0596\u0003\u0596\u0003\u0596\u0003\u0596\u0003",
+ "\u0596\u0003\u0596\u0003\u0597\u0003\u0597\u0003\u0597\u0003\u0597\u0003",
+ "\u0597\u0003\u0597\u0003\u0597\u0003\u0597\u0003\u0597\u0003\u0597\u0003",
+ "\u0598\u0003\u0598\u0003\u0598\u0003\u0598\u0003\u0598\u0003\u0598\u0003",
+ "\u0598\u0003\u0599\u0003\u0599\u0003\u0599\u0003\u0599\u0003\u0599\u0003",
+ "\u0599\u0003\u059a\u0003\u059a\u0003\u059a\u0003\u059a\u0003\u059a\u0003",
+ "\u059a\u0003\u059a\u0003\u059a\u0003\u059b\u0003\u059b\u0003\u059b\u0003",
+ "\u059b\u0003\u059b\u0003\u059b\u0003\u059b\u0003\u059c\u0003\u059c\u0003",
+ "\u059c\u0003\u059c\u0003\u059c\u0003\u059c\u0003\u059c\u0003\u059c\u0003",
+ "\u059c\u0003\u059c\u0003\u059c\u0003\u059c\u0003\u059c\u0003\u059c\u0003",
+ "\u059c\u0003\u059c\u0003\u059c\u0003\u059d\u0003\u059d\u0003\u059d\u0003",
+ "\u059d\u0003\u059d\u0003\u059d\u0003\u059d\u0003\u059d\u0003\u059e\u0003",
+ "\u059e\u0003\u059e\u0003\u059e\u0003\u059e\u0003\u059e\u0003\u059f\u0003",
+ "\u059f\u0003\u059f\u0003\u059f\u0003\u059f\u0003\u05a0\u0003\u05a0\u0003",
+ "\u05a0\u0003\u05a0\u0003\u05a0\u0003\u05a0\u0003\u05a0\u0003\u05a0\u0003",
+ "\u05a1\u0003\u05a1\u0003\u05a1\u0003\u05a1\u0003\u05a1\u0003\u05a1\u0003",
+ "\u05a2\u0003\u05a2\u0003\u05a2\u0003\u05a2\u0003\u05a2\u0003\u05a2\u0003",
+ "\u05a2\u0003\u05a2\u0003\u05a2\u0003\u05a3\u0003\u05a3\u0003\u05a3\u0003",
+ "\u05a3\u0003\u05a3\u0003\u05a3\u0003\u05a3\u0003\u05a3\u0003\u05a4\u0003",
+ "\u05a4\u0003\u05a4\u0003\u05a4\u0003\u05a4\u0003\u05a4\u0003\u05a4\u0003",
+ "\u05a5\u0003\u05a5\u0003\u05a5\u0003\u05a5\u0003\u05a5\u0003\u05a5\u0003",
+ "\u05a5\u0003\u05a5\u0003\u05a5\u0003\u05a5\u0003\u05a5\u0003\u05a5\u0003",
+ "\u05a5\u0003\u05a5\u0003\u05a5\u0003\u05a5\u0003\u05a6\u0003\u05a6\u0003",
+ "\u05a6\u0003\u05a6\u0003\u05a6\u0003\u05a6\u0003\u05a6\u0003\u05a6\u0003",
+ "\u05a6\u0003\u05a6\u0003\u05a6\u0003\u05a6\u0003\u05a6\u0003\u05a6\u0003",
+ "\u05a6\u0003\u05a6\u0003\u05a6\u0003\u05a6\u0003\u05a6\u0003\u05a6\u0003",
+ "\u05a7\u0003\u05a7\u0003\u05a7\u0003\u05a7\u0003\u05a7\u0003\u05a7\u0003",
+ "\u05a8\u0003\u05a8\u0003\u05a8\u0003\u05a8\u0003\u05a8\u0003\u05a8\u0003",
+ "\u05a8\u0003\u05a8\u0003\u05a8\u0003\u05a8\u0003\u05a8\u0003\u05a8\u0003",
+ "\u05a9\u0003\u05a9\u0003\u05a9\u0003\u05a9\u0003\u05a9\u0003\u05a9\u0003",
+ "\u05a9\u0003\u05a9\u0003\u05a9\u0003\u05a9\u0003\u05a9\u0003\u05a9\u0003",
+ "\u05a9\u0003\u05aa\u0003\u05aa\u0003\u05aa\u0003\u05aa\u0003\u05aa\u0003",
+ "\u05aa\u0003\u05aa\u0003\u05aa\u0003\u05aa\u0003\u05aa\u0003\u05aa\u0003",
+ "\u05ab\u0003\u05ab\u0003\u05ab\u0003\u05ab\u0003\u05ab\u0003\u05ab\u0003",
+ "\u05ab\u0003\u05ac\u0003\u05ac\u0003\u05ac\u0003\u05ac\u0003\u05ad\u0003",
+ "\u05ad\u0003\u05ad\u0003\u05ad\u0003\u05ad\u0003\u05ae\u0003\u05ae\u0003",
+ "\u05ae\u0003\u05ae\u0003\u05ae\u0003\u05af\u0003\u05af\u0003\u05af\u0003",
+ "\u05af\u0003\u05af\u0003\u05af\u0003\u05b0\u0003\u05b0\u0003\u05b0\u0003",
+ "\u05b0\u0003\u05b0\u0003\u05b1\u0003\u05b1\u0003\u05b1\u0003\u05b1\u0003",
+ "\u05b1\u0003\u05b1\u0003\u05b2\u0003\u05b2\u0003\u05b2\u0003\u05b2\u0003",
+ "\u05b2\u0003\u05b2\u0003\u05b2\u0003\u05b2\u0003\u05b3\u0003\u05b3\u0003",
+ "\u05b3\u0003\u05b3\u0003\u05b3\u0003\u05b4\u0003\u05b4\u0003\u05b4\u0003",
+ "\u05b4\u0003\u05b4\u0003\u05b4\u0003\u05b4\u0003\u05b5\u0003\u05b5\u0003",
+ "\u05b5\u0003\u05b5\u0003\u05b5\u0003\u05b5\u0003\u05b5\u0003\u05b5\u0003",
+ "\u05b5\u0003\u05b5\u0003\u05b5\u0003\u05b5\u0003\u05b5\u0003\u05b5\u0003",
+ "\u05b5\u0003\u05b5\u0003\u05b5\u0003\u05b5\u0003\u05b6\u0003\u05b6\u0003",
+ "\u05b6\u0003\u05b6\u0003\u05b6\u0003\u05b6\u0003\u05b6\u0003\u05b6\u0003",
+ "\u05b6\u0003\u05b6\u0003\u05b7\u0003\u05b7\u0003\u05b7\u0003\u05b7\u0003",
+ "\u05b7\u0003\u05b8\u0003\u05b8\u0003\u05b8\u0003\u05b8\u0003\u05b9\u0003",
+ "\u05b9\u0003\u05b9\u0003\u05b9\u0003\u05b9\u0003\u05b9\u0003\u05b9\u0003",
+ "\u05b9\u0003\u05b9\u0003\u05b9\u0003\u05b9\u0003\u05ba\u0003\u05ba\u0003",
+ "\u05ba\u0003\u05ba\u0003\u05ba\u0003\u05ba\u0003\u05bb\u0003\u05bb\u0003",
+ "\u05bb\u0003\u05bb\u0003\u05bb\u0003\u05bb\u0003\u05bb\u0003\u05bb\u0003",
+ "\u05bb\u0003\u05bb\u0003\u05bb\u0003\u05bb\u0003\u05bb\u0003\u05bb\u0003",
+ "\u05bb\u0003\u05bc\u0003\u05bc\u0003\u05bc\u0003\u05bc\u0003\u05bc\u0003",
+ "\u05bd\u0003\u05bd\u0003\u05bd\u0003\u05bd\u0003\u05bd\u0003\u05bd\u0003",
+ "\u05bd\u0003\u05bd\u0003\u05bd\u0003\u05bd\u0003\u05be\u0003\u05be\u0003",
+ "\u05be\u0003\u05be\u0003\u05be\u0003\u05be\u0003\u05be\u0003\u05be\u0003",
+ "\u05be\u0003\u05be\u0003\u05be\u0003\u05be\u0003\u05bf\u0003\u05bf\u0003",
+ "\u05bf\u0003\u05bf\u0003\u05bf\u0003\u05bf\u0003\u05bf\u0003\u05c0\u0003",
+ "\u05c0\u0003\u05c0\u0003\u05c0\u0003\u05c0\u0003\u05c0\u0003\u05c0\u0003",
+ "\u05c0\u0003\u05c0\u0003\u05c0\u0003\u05c0\u0003\u05c0\u0003\u05c0\u0003",
+ "\u05c0\u0003\u05c1\u0003\u05c1\u0003\u05c1\u0003\u05c1\u0003\u05c2\u0003",
+ "\u05c2\u0003\u05c2\u0003\u05c2\u0003\u05c2\u0003\u05c2\u0003\u05c3\u0003",
+ "\u05c3\u0003\u05c3\u0003\u05c3\u0003\u05c3\u0003\u05c3\u0003\u05c4\u0003",
+ "\u05c4\u0003\u05c4\u0003\u05c4\u0003\u05c4\u0003\u05c4\u0003\u05c4\u0003",
+ "\u05c5\u0003\u05c5\u0003\u05c5\u0003\u05c5\u0003\u05c5\u0003\u05c5\u0003",
+ "\u05c5\u0003\u05c5\u0003\u05c5\u0003\u05c5\u0003\u05c5\u0003\u05c6\u0003",
+ "\u05c6\u0003\u05c6\u0003\u05c6\u0003\u05c6\u0003\u05c6\u0003\u05c6\u0003",
+ "\u05c6\u0003\u05c6\u0003\u05c6\u0003\u05c6\u0003\u05c6\u0003\u05c6\u0003",
+ "\u05c7\u0003\u05c7\u0003\u05c7\u0003\u05c7\u0003\u05c7\u0003\u05c7\u0003",
+ "\u05c7\u0003\u05c7\u0003\u05c8\u0003\u05c8\u0003\u05c8\u0003\u05c8\u0003",
+ "\u05c8\u0003\u05c8\u0003\u05c8\u0003\u05c9\u0003\u05c9\u0003\u05c9\u0003",
+ "\u05c9\u0003\u05c9\u0003\u05c9\u0003\u05c9\u0003\u05ca\u0003\u05ca\u0003",
+ "\u05ca\u0003\u05ca\u0003\u05ca\u0003\u05ca\u0003\u05ca\u0003\u05cb\u0003",
+ "\u05cb\u0003\u05cb\u0003\u05cb\u0003\u05cb\u0003\u05cb\u0003\u05cb\u0003",
+ "\u05cb\u0003\u05cb\u0003\u05cb\u0003\u05cb\u0003\u05cb\u0003\u05cb\u0003",
+ "\u05cb\u0003\u05cb\u0003\u05cc\u0003\u05cc\u0003\u05cc\u0003\u05cc\u0003",
+ "\u05cc\u0003\u05cc\u0003\u05cc\u0003\u05cc\u0003\u05cc\u0003\u05cc\u0003",
+ "\u05cc\u0003\u05cd\u0003\u05cd\u0003\u05cd\u0003\u05cd\u0003\u05cd\u0003",
+ "\u05cd\u0003\u05cd\u0003\u05cd\u0003\u05cd\u0003\u05ce\u0003\u05ce\u0003",
+ "\u05ce\u0003\u05ce\u0003\u05ce\u0003\u05cf\u0003\u05cf\u0003\u05cf\u0003",
+ "\u05cf\u0003\u05cf\u0003\u05cf\u0003\u05cf\u0003\u05cf\u0003\u05cf\u0003",
+ "\u05cf\u0003\u05d0\u0003\u05d0\u0003\u05d0\u0003\u05d0\u0003\u05d0\u0003",
+ "\u05d0\u0003\u05d0\u0003\u05d0\u0003\u05d0\u0003\u05d1\u0003\u05d1\u0003",
+ "\u05d1\u0003\u05d1\u0003\u05d1\u0003\u05d1\u0003\u05d1\u0003\u05d1\u0003",
+ "\u05d2\u0003\u05d2\u0003\u05d2\u0003\u05d2\u0003\u05d2\u0003\u05d2\u0003",
+ "\u05d2\u0003\u05d2\u0003\u05d2\u0003\u05d2\u0003\u05d2\u0003\u05d2\u0003",
+ "\u05d3\u0003\u05d3\u0003\u05d3\u0003\u05d3\u0003\u05d3\u0003\u05d3\u0003",
+ "\u05d3\u0003\u05d4\u0003\u05d4\u0003\u05d4\u0003\u05d4\u0003\u05d4\u0003",
+ "\u05d5\u0003\u05d5\u0003\u05d5\u0003\u05d5\u0003\u05d5\u0003\u05d5\u0003",
+ "\u05d5\u0003\u05d5\u0003\u05d5\u0003\u05d5\u0003\u05d5\u0003\u05d5\u0003",
+ "\u05d5\u0003\u05d5\u0003\u05d5\u0003\u05d5\u0003\u05d6\u0003\u05d6\u0003",
+ "\u05d6\u0003\u05d6\u0003\u05d6\u0003\u05d6\u0003\u05d6\u0003\u05d6\u0003",
+ "\u05d6\u0003\u05d7\u0003\u05d7\u0003\u05d7\u0003\u05d7\u0003\u05d7\u0003",
+ "\u05d7\u0003\u05d7\u0003\u05d7\u0003\u05d7\u0003\u05d7\u0003\u05d7\u0003",
+ "\u05d7\u0003\u05d7\u0003\u05d7\u0003\u05d8\u0003\u05d8\u0003\u05d8\u0003",
+ "\u05d8\u0003\u05d8\u0003\u05d8\u0003\u05d8\u0003\u05d8\u0003\u05d8\u0003",
+ "\u05d8\u0003\u05d9\u0003\u05d9\u0003\u05d9\u0003\u05d9\u0003\u05d9\u0003",
+ "\u05d9\u0003\u05d9\u0003\u05d9\u0003\u05d9\u0003\u05da\u0003\u05da\u0003",
+ "\u05da\u0003\u05da\u0003\u05da\u0003\u05da\u0003\u05da\u0003\u05da\u0003",
+ "\u05da\u0003\u05da\u0003\u05da\u0003\u05db\u0003\u05db\u0003\u05db\u0003",
+ "\u05db\u0003\u05dc\u0003\u05dc\u0003\u05dc\u0003\u05dc\u0003\u05dc\u0003",
+ "\u05dc\u0003\u05dc\u0003\u05dc\u0003\u05dc\u0003\u05dc\u0003\u05dc\u0003",
+ "\u05dc\u0003\u05dc\u0003\u05dd\u0003\u05dd\u0003\u05dd\u0003\u05dd\u0003",
+ "\u05dd\u0003\u05dd\u0003\u05dd\u0003\u05dd\u0003\u05dd\u0003\u05dd\u0003",
+ "\u05dd\u0003\u05dd\u0003\u05dd\u0003\u05dd\u0003\u05dd\u0003\u05dd\u0003",
+ "\u05dd\u0003\u05dd\u0003\u05de\u0003\u05de\u0003\u05de\u0003\u05de\u0003",
+ "\u05de\u0003\u05de\u0003\u05de\u0003\u05df\u0003\u05df\u0003\u05df\u0003",
+ "\u05df\u0003\u05df\u0003\u05df\u0003\u05df\u0003\u05df\u0003\u05df\u0003",
+ "\u05df\u0003\u05df\u0003\u05df\u0003\u05e0\u0003\u05e0\u0003\u05e0\u0003",
+ "\u05e0\u0003\u05e0\u0003\u05e0\u0003\u05e0\u0003\u05e0\u0003\u05e0\u0003",
+ "\u05e0\u0003\u05e0\u0003\u05e0\u0003\u05e0\u0003\u05e0\u0003\u05e0\u0003",
+ "\u05e0\u0003\u05e0\u0003\u05e0\u0003\u05e0\u0003\u05e0\u0003\u05e0\u0003",
+ "\u05e1\u0003\u05e1\u0003\u05e1\u0003\u05e1\u0003\u05e1\u0003\u05e1\u0003",
+ "\u05e1\u0003\u05e1\u0003\u05e1\u0003\u05e2\u0003\u05e2\u0003\u05e2\u0003",
+ "\u05e2\u0003\u05e2\u0003\u05e2\u0003\u05e2\u0003\u05e2\u0003\u05e2\u0003",
+ "\u05e2\u0003\u05e2\u0003\u05e2\u0003\u05e2\u0003\u05e2\u0003\u05e2\u0003",
+ "\u05e2\u0003\u05e2\u0003\u05e2\u0003\u05e2\u0003\u05e2\u0003\u05e2\u0003",
+ "\u05e2\u0003\u05e2\u0003\u05e3\u0003\u05e3\u0003\u05e3\u0003\u05e3\u0003",
+ "\u05e3\u0003\u05e3\u0003\u05e3\u0003\u05e3\u0003\u05e4\u0003\u05e4\u0003",
+ "\u05e4\u0003\u05e4\u0003\u05e4\u0003\u05e4\u0003\u05e4\u0003\u05e4\u0003",
+ "\u05e4\u0003\u05e4\u0003\u05e4\u0003\u05e4\u0003\u05e4\u0003\u05e4\u0003",
+ "\u05e4\u0003\u05e4\u0003\u05e4\u0003\u05e4\u0003\u05e5\u0003\u05e5\u0003",
+ "\u05e5\u0003\u05e5\u0003\u05e5\u0003\u05e5\u0003\u05e5\u0003\u05e5\u0003",
+ "\u05e5\u0003\u05e5\u0003\u05e5\u0003\u05e5\u0003\u05e5\u0003\u05e5\u0003",
+ "\u05e5\u0003\u05e5\u0003\u05e6\u0003\u05e6\u0003\u05e6\u0003\u05e6\u0003",
+ "\u05e6\u0003\u05e6\u0003\u05e6\u0003\u05e6\u0003\u05e6\u0003\u05e6\u0003",
+ "\u05e6\u0003\u05e6\u0003\u05e6\u0003\u05e6\u0003\u05e7\u0003\u05e7\u0003",
+ "\u05e7\u0003\u05e7\u0003\u05e8\u0003\u05e8\u0003\u05e8\u0003\u05e8\u0003",
+ "\u05e8\u0003\u05e9\u0003\u05e9\u0003\u05e9\u0003\u05e9\u0003\u05e9\u0003",
+ "\u05e9\u0003\u05e9\u0003\u05e9\u0003\u05e9\u0003\u05ea\u0003\u05ea\u0003",
+ "\u05ea\u0003\u05ea\u0003\u05ea\u0003\u05ea\u0003\u05ea\u0003\u05ea\u0003",
+ "\u05ea\u0003\u05ea\u0003\u05ea\u0003\u05ea\u0003\u05eb\u0003\u05eb\u0003",
+ "\u05eb\u0003\u05eb\u0003\u05eb\u0003\u05eb\u0003\u05eb\u0003\u05ec\u0003",
+ "\u05ec\u0003\u05ec\u0003\u05ec\u0003\u05ec\u0003\u05ec\u0003\u05ec\u0003",
+ "\u05ec\u0003\u05ec\u0003\u05ec\u0003\u05ec\u0003\u05ec\u0003\u05ed\u0003",
+ "\u05ed\u0003\u05ed\u0003\u05ed\u0003\u05ed\u0003\u05ed\u0003\u05ed\u0003",
+ "\u05ee\u0003\u05ee\u0003\u05ee\u0003\u05ee\u0003\u05ee\u0003\u05ee\u0003",
+ "\u05ef\u0003\u05ef\u0003\u05ef\u0003\u05ef\u0003\u05ef\u0003\u05ef\u0003",
+ "\u05ef\u0003\u05ef\u0003\u05f0\u0003\u05f0\u0003\u05f0\u0003\u05f0\u0003",
+ "\u05f0\u0003\u05f0\u0003\u05f0\u0003\u05f0\u0003\u05f0\u0003\u05f0\u0003",
+ "\u05f1\u0003\u05f1\u0003\u05f1\u0003\u05f1\u0003\u05f1\u0003\u05f2\u0003",
+ "\u05f2\u0003\u05f2\u0003\u05f2\u0003\u05f2\u0003\u05f2\u0003\u05f2\u0003",
+ "\u05f3\u0003\u05f3\u0003\u05f3\u0003\u05f3\u0003\u05f3\u0003\u05f3\u0003",
+ "\u05f3\u0003\u05f3\u0003\u05f3\u0003\u05f4\u0003\u05f4\u0003\u05f4\u0003",
+ "\u05f4\u0003\u05f4\u0003\u05f4\u0003\u05f4\u0003\u05f4\u0003\u05f4\u0003",
+ "\u05f5\u0003\u05f5\u0003\u05f5\u0003\u05f5\u0003\u05f6\u0003\u05f6\u0003",
+ "\u05f6\u0003\u05f6\u0003\u05f6\u0003\u05f6\u0003\u05f6\u0003\u05f6\u0003",
+ "\u05f6\u0003\u05f6\u0003\u05f6\u0003\u05f6\u0003\u05f6\u0003\u05f6\u0003",
+ "\u05f6\u0003\u05f6\u0003\u05f6\u0003\u05f7\u0003\u05f7\u0003\u05f7\u0003",
+ "\u05f7\u0003\u05f7\u0003\u05f7\u0003\u05f7\u0003\u05f7\u0003\u05f7\u0003",
+ "\u05f7\u0003\u05f7\u0003\u05f7\u0003\u05f7\u0003\u05f7\u0003\u05f7\u0003",
+ "\u05f7\u0003\u05f8\u0003\u05f8\u0003\u05f8\u0003\u05f8\u0003\u05f8\u0003",
+ "\u05f9\u0003\u05f9\u0003\u05f9\u0003\u05f9\u0003\u05f9\u0003\u05f9\u0003",
+ "\u05f9\u0003\u05f9\u0003\u05f9\u0003\u05fa\u0003\u05fa\u0003\u05fa\u0003",
+ "\u05fa\u0003\u05fa\u0003\u05fa\u0003\u05fa\u0003\u05fa\u0003\u05fa\u0003",
+ "\u05fa\u0003\u05fa\u0003\u05fa\u0003\u05fa\u0003\u05fa\u0003\u05fa\u0003",
+ "\u05fb\u0003\u05fb\u0003\u05fb\u0003\u05fb\u0003\u05fb\u0003\u05fb\u0003",
+ "\u05fb\u0003\u05fc\u0003\u05fc\u0003\u05fc\u0003\u05fc\u0003\u05fc\u0003",
+ "\u05fc\u0003\u05fc\u0003\u05fd\u0003\u05fd\u0003\u05fd\u0003\u05fd\u0003",
+ "\u05fd\u0003\u05fd\u0003\u05fd\u0003\u05fd\u0003\u05fd\u0003\u05fd\u0003",
+ "\u05fd\u0003\u05fe\u0003\u05fe\u0003\u05fe\u0003\u05fe\u0003\u05fe\u0003",
+ "\u05ff\u0003\u05ff\u0003\u05ff\u0003\u05ff\u0003\u0600\u0003\u0600\u0003",
+ "\u0600\u0003\u0600\u0003\u0600\u0003\u0601\u0003\u0601\u0003\u0601\u0003",
+ "\u0601\u0003\u0601\u0003\u0601\u0003\u0601\u0003\u0601\u0003\u0601\u0003",
+ "\u0601\u0003\u0601\u0003\u0601\u0003\u0601\u0003\u0601\u0003\u0601\u0003",
+ "\u0601\u0003\u0601\u0003\u0601\u0003\u0601\u0003\u0602\u0003\u0602\u0003",
+ "\u0602\u0003\u0602\u0003\u0602\u0003\u0603\u0003\u0603\u0003\u0603\u0003",
+ "\u0603\u0003\u0603\u0003\u0603\u0003\u0603\u0003\u0603\u0003\u0603\u0003",
+ "\u0603\u0003\u0603\u0003\u0603\u0003\u0603\u0003\u0603\u0003\u0603\u0003",
+ "\u0603\u0003\u0603\u0003\u0603\u0003\u0603\u0003\u0603\u0003\u0603\u0003",
+ "\u0603\u0003\u0604\u0003\u0604\u0003\u0604\u0003\u0604\u0003\u0604\u0003",
+ "\u0604\u0003\u0604\u0003\u0604\u0003\u0604\u0003\u0604\u0003\u0604\u0003",
+ "\u0604\u0003\u0604\u0003\u0604\u0003\u0604\u0003\u0604\u0003\u0604\u0003",
+ "\u0604\u0003\u0604\u0003\u0604\u0003\u0604\u0003\u0604\u0003\u0605\u0003",
+ "\u0605\u0003\u0605\u0003\u0605\u0003\u0605\u0003\u0605\u0003\u0605\u0003",
+ "\u0605\u0003\u0605\u0003\u0605\u0003\u0606\u0003\u0606\u0003\u0606\u0003",
+ "\u0606\u0003\u0606\u0003\u0606\u0003\u0606\u0003\u0606\u0003\u0606\u0003",
+ "\u0607\u0003\u0607\u0003\u0607\u0003\u0607\u0003\u0607\u0003\u0607\u0003",
+ "\u0607\u0003\u0607\u0003\u0607\u0003\u0608\u0003\u0608\u0003\u0608\u0003",
+ "\u0608\u0003\u0608\u0003\u0609\u0003\u0609\u0003\u0609\u0003\u0609\u0003",
+ "\u0609\u0003\u060a\u0003\u060a\u0003\u060a\u0003\u060a\u0003\u060a\u0003",
+ "\u060a\u0003\u060a\u0003\u060a\u0003\u060b\u0003\u060b\u0003\u060b\u0003",
+ "\u060b\u0003\u060b\u0003\u060b\u0003\u060b\u0003\u060b\u0003\u060b\u0003",
+ "\u060b\u0003\u060b\u0003\u060b\u0003\u060b\u0003\u060b\u0003\u060b\u0003",
+ "\u060b\u0003\u060b\u0003\u060b\u0003\u060b\u0003\u060b\u0003\u060b\u0003",
+ "\u060b\u0003\u060c\u0003\u060c\u0003\u060c\u0003\u060c\u0003\u060c\u0003",
+ "\u060c\u0003\u060c\u0003\u060c\u0003\u060c\u0003\u060c\u0003\u060c\u0003",
+ "\u060c\u0003\u060c\u0003\u060c\u0003\u060c\u0003\u060c\u0003\u060c\u0003",
+ "\u060c\u0003\u060c\u0003\u060c\u0003\u060c\u0003\u060c\u0003\u060c\u0003",
+ "\u060c\u0003\u060c\u0003\u060d\u0003\u060d\u0003\u060d\u0003\u060d\u0003",
+ "\u060d\u0003\u060d\u0003\u060d\u0003\u060e\u0003\u060e\u0003\u060e\u0003",
+ "\u060e\u0003\u060e\u0003\u060e\u0003\u060f\u0003\u060f\u0003\u060f\u0003",
+ "\u060f\u0003\u060f\u0003\u060f\u0003\u060f\u0003\u060f\u0003\u060f\u0003",
+ "\u060f\u0003\u060f\u0003\u060f\u0003\u060f\u0003\u060f\u0003\u0610\u0003",
+ "\u0610\u0003\u0610\u0003\u0610\u0003\u0610\u0003\u0610\u0003\u0610\u0003",
+ "\u0611\u0003\u0611\u0003\u0611\u0003\u0611\u0003\u0611\u0003\u0611\u0003",
+ "\u0612\u0003\u0612\u0003\u0612\u0003\u0612\u0003\u0612\u0003\u0612\u0003",
+ "\u0612\u0003\u0612\u0003\u0612\u0003\u0612\u0003\u0612\u0003\u0612\u0003",
+ "\u0613\u0003\u0613\u0003\u0613\u0003\u0613\u0003\u0613\u0003\u0613\u0003",
+ "\u0613\u0003\u0613\u0003\u0614\u0003\u0614\u0003\u0614\u0003\u0614\u0003",
+ "\u0614\u0003\u0614\u0003\u0614\u0003\u0614\u0003\u0614\u0003\u0615\u0003",
+ "\u0615\u0003\u0615\u0003\u0615\u0003\u0615\u0003\u0615\u0003\u0615\u0003",
+ "\u0616\u0003\u0616\u0003\u0616\u0003\u0616\u0003\u0617\u0003\u0617\u0003",
+ "\u0617\u0003\u0617\u0003\u0617\u0003\u0617\u0003\u0617\u0003\u0617\u0003",
+ "\u0617\u0003\u0617\u0003\u0618\u0003\u0618\u0003\u0618\u0003\u0618\u0003",
+ "\u0618\u0003\u0618\u0003\u0618\u0003\u0618\u0003\u0618\u0003\u0618\u0003",
+ "\u0618\u0003\u0618\u0003\u0618\u0003\u0618\u0003\u0618\u0003\u0618\u0003",
+ "\u0618\u0003\u0618\u0003\u0618\u0003\u0618\u0003\u0618\u0003\u0618\u0003",
+ "\u0618\u0003\u0618\u0003\u0619\u0003\u0619\u0003\u0619\u0003\u0619\u0003",
+ "\u0619\u0003\u061a\u0003\u061a\u0003\u061a\u0003\u061a\u0003\u061a\u0003",
+ "\u061a\u0003\u061b\u0003\u061b\u0003\u061b\u0003\u061b\u0003\u061b\u0003",
+ "\u061b\u0003\u061b\u0003\u061b\u0003\u061b\u0003\u061b\u0003\u061b\u0003",
+ "\u061c\u0003\u061c\u0003\u061c\u0003\u061c\u0003\u061c\u0003\u061c\u0003",
+ "\u061c\u0003\u061c\u0003\u061c\u0003\u061c\u0003\u061c\u0003\u061c\u0003",
+ "\u061c\u0003\u061c\u0003\u061d\u0003\u061d\u0003\u061d\u0003\u061d\u0003",
+ "\u061d\u0003\u061d\u0003\u061d\u0003\u061d\u0003\u061d\u0003\u061d\u0003",
+ "\u061d\u0003\u061d\u0003\u061d\u0003\u061d\u0003\u061d\u0003\u061d\u0003",
+ "\u061d\u0003\u061d\u0003\u061d\u0003\u061d\u0003\u061d\u0003\u061d\u0003",
+ "\u061d\u0003\u061e\u0003\u061e\u0003\u061e\u0003\u061e\u0003\u061e\u0003",
+ "\u061e\u0003\u061e\u0003\u061e\u0003\u061e\u0003\u061f\u0003\u061f\u0003",
+ "\u061f\u0003\u061f\u0003\u061f\u0003\u061f\u0003\u061f\u0003\u061f\u0003",
+ "\u0620\u0003\u0620\u0003\u0620\u0003\u0620\u0003\u0620\u0003\u0621\u0003",
+ "\u0621\u0003\u0621\u0003\u0621\u0003\u0621\u0003\u0621\u0003\u0621\u0003",
+ "\u0621\u0003\u0621\u0003\u0621\u0003\u0621\u0003\u0621\u0003\u0621\u0003",
+ "\u0621\u0003\u0621\u0003\u0621\u0003\u0621\u0003\u0621\u0003\u0621\u0003",
+ "\u0621\u0003\u0622\u0003\u0622\u0003\u0622\u0003\u0622\u0003\u0622\u0003",
+ "\u0622\u0003\u0623\u0003\u0623\u0003\u0623\u0003\u0623\u0003\u0623\u0003",
+ "\u0623\u0003\u0623\u0003\u0623\u0003\u0624\u0003\u0624\u0003\u0624\u0003",
+ "\u0624\u0003\u0624\u0003\u0624\u0003\u0624\u0003\u0624\u0003\u0624\u0003",
+ "\u0624\u0003\u0624\u0003\u0624\u0003\u0624\u0003\u0625\u0003\u0625\u0003",
+ "\u0625\u0003\u0625\u0003\u0625\u0003\u0625\u0003\u0625\u0003\u0625\u0003",
+ "\u0625\u0003\u0625\u0003\u0625\u0003\u0625\u0003\u0625\u0003\u0625\u0003",
+ "\u0625\u0003\u0625\u0003\u0625\u0003\u0625\u0003\u0626\u0003\u0626\u0003",
+ "\u0626\u0003\u0626\u0003\u0626\u0003\u0626\u0003\u0626\u0003\u0626\u0003",
+ "\u0626\u0003\u0626\u0003\u0626\u0003\u0627\u0003\u0627\u0003\u0627\u0003",
+ "\u0627\u0003\u0627\u0003\u0627\u0003\u0627\u0003\u0627\u0003\u0627\u0003",
+ "\u0627\u0003\u0628\u0003\u0628\u0003\u0628\u0003\u0628\u0003\u0628\u0003",
+ "\u0628\u0003\u0629\u0003\u0629\u0003\u0629\u0003\u0629\u0003\u0629\u0003",
+ "\u0629\u0003\u0629\u0003\u062a\u0003\u062a\u0003\u062a\u0003\u062a\u0003",
+ "\u062a\u0003\u062a\u0003\u062a\u0003\u062a\u0003\u062a\u0003\u062a\u0003",
+ "\u062a\u0003\u062b\u0003\u062b\u0003\u062b\u0003\u062b\u0003\u062b\u0003",
+ "\u062b\u0003\u062b\u0003\u062b\u0003\u062b\u0003\u062b\u0003\u062b\u0003",
+ "\u062b\u0003\u062b\u0003\u062b\u0003\u062b\u0003\u062b\u0003\u062b\u0003",
+ "\u062b\u0003\u062b\u0003\u062b\u0003\u062c\u0003\u062c\u0003\u062c\u0003",
+ "\u062c\u0003\u062c\u0003\u062c\u0003\u062c\u0003\u062c\u0003\u062c\u0003",
+ "\u062c\u0003\u062c\u0003\u062c\u0003\u062c\u0003\u062c\u0003\u062c\u0003",
+ "\u062d\u0003\u062d\u0003\u062d\u0003\u062d\u0003\u062d\u0003\u062d\u0003",
+ "\u062d\u0003\u062d\u0003\u062d\u0003\u062d\u0003\u062d\u0003\u062d\u0003",
+ "\u062d\u0003\u062e\u0003\u062e\u0003\u062e\u0003\u062e\u0003\u062e\u0003",
+ "\u062e\u0003\u062e\u0003\u062e\u0003\u062e\u0003\u062e\u0003\u062e\u0003",
+ "\u062e\u0003\u062e\u0003\u062e\u0003\u062f\u0003\u062f\u0003\u062f\u0003",
+ "\u062f\u0003\u062f\u0003\u062f\u0003\u062f\u0003\u062f\u0003\u062f\u0003",
+ "\u062f\u0003\u062f\u0003\u0630\u0003\u0630\u0003\u0630\u0003\u0630\u0003",
+ "\u0630\u0003\u0630\u0003\u0630\u0003\u0630\u0003\u0630\u0003\u0630\u0003",
+ "\u0630\u0003\u0630\u0003\u0630\u0003\u0630\u0003\u0631\u0003\u0631\u0003",
+ "\u0631\u0003\u0631\u0003\u0631\u0003\u0631\u0003\u0631\u0003\u0631\u0003",
+ "\u0631\u0003\u0631\u0003\u0631\u0003\u0631\u0003\u0631\u0003\u0631\u0003",
+ "\u0631\u0003\u0631\u0003\u0631\u0003\u0631\u0003\u0631\u0003\u0631\u0003",
+ "\u0632\u0003\u0632\u0003\u0632\u0003\u0632\u0003\u0632\u0003\u0632\u0003",
+ "\u0632\u0003\u0632\u0003\u0632\u0003\u0632\u0003\u0632\u0003\u0632\u0003",
+ "\u0632\u0003\u0632\u0003\u0632\u0003\u0632\u0003\u0632\u0003\u0632\u0003",
+ "\u0632\u0003\u0633\u0003\u0633\u0003\u0633\u0003\u0633\u0003\u0633\u0003",
+ "\u0633\u0003\u0633\u0003\u0633\u0003\u0633\u0003\u0633\u0003\u0633\u0003",
+ "\u0633\u0003\u0633\u0003\u0633\u0003\u0633\u0003\u0633\u0003\u0633\u0003",
+ "\u0633\u0003\u0633\u0003\u0633\u0003\u0634\u0003\u0634\u0003\u0634\u0003",
+ "\u0634\u0003\u0634\u0003\u0634\u0003\u0634\u0003\u0634\u0003\u0634\u0003",
+ "\u0634\u0003\u0634\u0003\u0634\u0003\u0634\u0003\u0634\u0003\u0634\u0003",
+ "\u0634\u0003\u0634\u0003\u0635\u0003\u0635\u0003\u0635\u0003\u0635\u0003",
+ "\u0635\u0003\u0635\u0003\u0635\u0003\u0635\u0003\u0635\u0003\u0635\u0003",
+ "\u0635\u0003\u0635\u0003\u0635\u0003\u0635\u0003\u0635\u0003\u0635\u0003",
+ "\u0635\u0003\u0635\u0003\u0635\u0003\u0635\u0003\u0636\u0003\u0636\u0003",
+ "\u0636\u0003\u0636\u0003\u0636\u0003\u0636\u0003\u0636\u0003\u0636\u0003",
+ "\u0636\u0003\u0636\u0003\u0636\u0003\u0636\u0003\u0636\u0003\u0636\u0003",
+ "\u0636\u0003\u0637\u0003\u0637\u0003\u0637\u0003\u0637\u0003\u0637\u0003",
+ "\u0637\u0003\u0637\u0003\u0637\u0003\u0637\u0003\u0637\u0003\u0637\u0003",
+ "\u0638\u0003\u0638\u0003\u0638\u0003\u0638\u0003\u0638\u0003\u0638\u0003",
+ "\u0638\u0003\u0638\u0003\u0638\u0003\u0638\u0003\u0638\u0003\u0638\u0003",
+ "\u0639\u0003\u0639\u0003\u0639\u0003\u0639\u0003\u0639\u0003\u063a\u0003",
+ "\u063a\u0003\u063a\u0003\u063a\u0003\u063a\u0003\u063a\u0003\u063a\u0003",
+ "\u063a\u0003\u063b\u0003\u063b\u0003\u063b\u0003\u063b\u0003\u063b\u0003",
+ "\u063b\u0003\u063c\u0003\u063c\u0003\u063c\u0003\u063c\u0003\u063c\u0003",
+ "\u063c\u0003\u063c\u0003\u063c\u0003\u063d\u0003\u063d\u0003\u063d\u0003",
+ "\u063d\u0003\u063d\u0003\u063d\u0003\u063d\u0003\u063e\u0003\u063e\u0003",
+ "\u063e\u0003\u063e\u0003\u063e\u0003\u063e\u0003\u063e\u0003\u063f\u0003",
+ "\u063f\u0003\u063f\u0003\u063f\u0003\u063f\u0003\u063f\u0003\u063f\u0003",
+ "\u0640\u0003\u0640\u0003\u0640\u0003\u0640\u0003\u0640\u0003\u0640\u0003",
+ "\u0640\u0003\u0640\u0003\u0640\u0003\u0640\u0003\u0640\u0003\u0640\u0003",
+ "\u0640\u0003\u0640\u0003\u0640\u0003\u0641\u0003\u0641\u0003\u0641\u0003",
+ "\u0641\u0003\u0641\u0003\u0641\u0003\u0641\u0003\u0641\u0003\u0641\u0003",
+ "\u0641\u0003\u0641\u0003\u0641\u0003\u0641\u0003\u0642\u0003\u0642\u0003",
+ "\u0642\u0003\u0642\u0003\u0642\u0003\u0642\u0003\u0643\u0003\u0643\u0003",
+ "\u0643\u0003\u0643\u0003\u0643\u0003\u0643\u0003\u0643\u0003\u0643\u0003",
+ "\u0643\u0003\u0643\u0003\u0644\u0003\u0644\u0003\u0644\u0003\u0644\u0003",
+ "\u0644\u0003\u0644\u0003\u0644\u0003\u0644\u0003\u0644\u0003\u0644\u0003",
+ "\u0644\u0003\u0644\u0003\u0645\u0003\u0645\u0003\u0645\u0003\u0645\u0003",
+ "\u0645\u0003\u0645\u0003\u0645\u0003\u0645\u0003\u0645\u0003\u0645\u0003",
+ "\u0645\u0003\u0645\u0003\u0645\u0003\u0645\u0003\u0645\u0003\u0645\u0003",
+ "\u0645\u0003\u0646\u0003\u0646\u0003\u0646\u0003\u0646\u0003\u0646\u0003",
+ "\u0646\u0003\u0646\u0003\u0646\u0003\u0646\u0003\u0646\u0003\u0646\u0003",
+ "\u0646\u0003\u0646\u0003\u0646\u0003\u0647\u0003\u0647\u0003\u0647\u0003",
+ "\u0647\u0003\u0647\u0003\u0647\u0003\u0647\u0003\u0647\u0003\u0647\u0003",
+ "\u0647\u0003\u0647\u0003\u0647\u0003\u0647\u0003\u0648\u0003\u0648\u0003",
+ "\u0648\u0003\u0648\u0003\u0648\u0003\u0648\u0003\u0648\u0003\u0648\u0003",
+ "\u0648\u0003\u0648\u0003\u0648\u0003\u0649\u0003\u0649\u0003\u0649\u0003",
+ "\u0649\u0003\u0649\u0003\u0649\u0003\u0649\u0003\u0649\u0003\u0649\u0003",
+ "\u0649\u0003\u0649\u0003\u0649\u0003\u0649\u0003\u0649\u0003\u0649\u0003",
+ "\u0649\u0003\u0649\u0003\u064a\u0003\u064a\u0003\u064a\u0003\u064a\u0003",
+ "\u064a\u0003\u064a\u0003\u064a\u0003\u064a\u0003\u064a\u0003\u064a\u0003",
+ "\u064b\u0003\u064b\u0003\u064b\u0003\u064b\u0003\u064b\u0003\u064b\u0003",
+ "\u064b\u0003\u064c\u0003\u064c\u0003\u064c\u0003\u064c\u0003\u064c\u0003",
+ "\u064c\u0003\u064c\u0003\u064c\u0003\u064c\u0003\u064c\u0003\u064c\u0003",
+ "\u064c\u0003\u064c\u0003\u064c\u0003\u064d\u0003\u064d\u0003\u064d\u0003",
+ "\u064d\u0003\u064d\u0003\u064d\u0003\u064d\u0003\u064d\u0003\u064e\u0003",
+ "\u064e\u0003\u064e\u0003\u064e\u0003\u064e\u0003\u064e\u0003\u064e\u0003",
+ "\u064e\u0003\u064f\u0003\u064f\u0003\u064f\u0003\u064f\u0003\u064f\u0003",
+ "\u064f\u0003\u064f\u0003\u064f\u0003\u0650\u0003\u0650\u0003\u0650\u0003",
+ "\u0650\u0003\u0650\u0003\u0650\u0003\u0650\u0003\u0650\u0003\u0651\u0003",
+ "\u0651\u0003\u0651\u0003\u0651\u0003\u0651\u0003\u0651\u0003\u0651\u0003",
+ "\u0651\u0003\u0652\u0003\u0652\u0003\u0652\u0003\u0652\u0003\u0652\u0003",
+ "\u0652\u0003\u0652\u0003\u0652\u0003\u0652\u0003\u0652\u0003\u0652\u0003",
+ "\u0653\u0003\u0653\u0003\u0653\u0003\u0653\u0003\u0653\u0003\u0653\u0003",
+ "\u0653\u0003\u0653\u0003\u0654\u0003\u0654\u0003\u0654\u0003\u0654\u0003",
+ "\u0654\u0003\u0654\u0003\u0654\u0003\u0654\u0003\u0655\u0003\u0655\u0003",
+ "\u0655\u0003\u0655\u0003\u0655\u0003\u0655\u0003\u0655\u0003\u0655\u0003",
+ "\u0655\u0003\u0655\u0003\u0655\u0003\u0655\u0003\u0655\u0003\u0656\u0003",
+ "\u0656\u0003\u0656\u0003\u0656\u0003\u0656\u0003\u0656\u0003\u0656\u0003",
+ "\u0656\u0003\u0657\u0003\u0657\u0003\u0657\u0003\u0657\u0003\u0657\u0003",
+ "\u0657\u0003\u0657\u0003\u0657\u0003\u0657\u0003\u0657\u0003\u0657\u0003",
+ "\u0657\u0003\u0657\u0003\u0657\u0003\u0657\u0003\u0657\u0003\u0657\u0003",
+ "\u0658\u0003\u0658\u0003\u0658\u0003\u0658\u0003\u0658\u0003\u0658\u0003",
+ "\u0658\u0003\u0658\u0003\u0658\u0003\u0658\u0003\u0658\u0003\u0659\u0003",
+ "\u0659\u0003\u0659\u0003\u0659\u0003\u0659\u0003\u0659\u0003\u0659\u0003",
+ "\u065a\u0003\u065a\u0003\u065a\u0003\u065a\u0003\u065a\u0003\u065a\u0003",
+ "\u065a\u0003\u065a\u0003\u065a\u0003\u065a\u0003\u065a\u0003\u065a\u0003",
+ "\u065b\u0003\u065b\u0003\u065b\u0003\u065b\u0003\u065b\u0003\u065c\u0003",
+ "\u065c\u0003\u065c\u0003\u065c\u0003\u065c\u0003\u065c\u0003\u065c\u0003",
+ "\u065c\u0003\u065d\u0003\u065d\u0003\u065d\u0003\u065d\u0003\u065d\u0003",
+ "\u065d\u0003\u065d\u0003\u065e\u0003\u065e\u0003\u065e\u0003\u065e\u0003",
+ "\u065e\u0003\u065e\u0003\u065e\u0003\u065e\u0003\u065e\u0003\u065e\u0003",
+ "\u065f\u0003\u065f\u0003\u065f\u0003\u065f\u0003\u065f\u0003\u065f\u0003",
+ "\u065f\u0003\u0660\u0003\u0660\u0003\u0660\u0003\u0660\u0003\u0660\u0003",
+ "\u0660\u0003\u0660\u0003\u0660\u0003\u0660\u0003\u0660\u0003\u0661\u0003",
+ "\u0661\u0003\u0661\u0003\u0661\u0003\u0661\u0003\u0661\u0003\u0661\u0003",
+ "\u0661\u0003\u0661\u0003\u0661\u0003\u0661\u0003\u0661\u0003\u0661\u0003",
+ "\u0662\u0003\u0662\u0003\u0662\u0003\u0662\u0003\u0662\u0003\u0662\u0003",
+ "\u0662\u0003\u0662\u0003\u0662\u0003\u0662\u0003\u0662\u0003\u0662\u0003",
+ "\u0662\u0003\u0662\u0003\u0662\u0003\u0662\u0003\u0662\u0003\u0662\u0003",
+ "\u0662\u0003\u0662\u0003\u0663\u0003\u0663\u0003\u0663\u0003\u0663\u0003",
+ "\u0663\u0003\u0663\u0003\u0663\u0003\u0663\u0003\u0663\u0003\u0663\u0003",
+ "\u0663\u0003\u0663\u0003\u0663\u0003\u0663\u0003\u0663\u0003\u0663\u0003",
+ "\u0663\u0003\u0663\u0003\u0663\u0003\u0663\u0003\u0664\u0003\u0664\u0003",
+ "\u0664\u0003\u0664\u0003\u0664\u0003\u0664\u0003\u0664\u0003\u0664\u0003",
+ "\u0664\u0003\u0664\u0003\u0664\u0003\u0664\u0003\u0665\u0003\u0665\u0003",
+ "\u0665\u0003\u0665\u0003\u0665\u0003\u0665\u0003\u0665\u0003\u0665\u0003",
+ "\u0666\u0003\u0666\u0003\u0666\u0003\u0666\u0003\u0666\u0003\u0666\u0003",
+ "\u0666\u0003\u0667\u0003\u0667\u0003\u0667\u0003\u0667\u0003\u0667\u0003",
+ "\u0667\u0003\u0667\u0003\u0667\u0003\u0667\u0003\u0667\u0003\u0667\u0003",
+ "\u0667\u0003\u0667\u0003\u0668\u0003\u0668\u0003\u0668\u0003\u0668\u0003",
+ "\u0668\u0003\u0668\u0003\u0669\u0003\u0669\u0003\u0669\u0003\u0669\u0003",
+ "\u0669\u0003\u0669\u0003\u0669\u0003\u0669\u0003\u0669\u0003\u0669\u0003",
+ "\u0669\u0003\u0669\u0003\u0669\u0003\u0669\u0003\u066a\u0003\u066a\u0003",
+ "\u066a\u0003\u066a\u0003\u066a\u0003\u066a\u0003\u066a\u0003\u066a\u0003",
+ "\u066a\u0003\u066a\u0003\u066a\u0003\u066a\u0003\u066a\u0003\u066a\u0003",
+ "\u066a\u0003\u066a\u0003\u066a\u0003\u066a\u0003\u066b\u0003\u066b\u0003",
+ "\u066b\u0003\u066b\u0003\u066b\u0003\u066b\u0003\u066b\u0003\u066b\u0003",
+ "\u066b\u0003\u066b\u0003\u066b\u0003\u066b\u0003\u066b\u0003\u066b\u0003",
+ "\u066b\u0003\u066b\u0003\u066b\u0003\u066b\u0003\u066c\u0003\u066c\u0003",
+ "\u066c\u0003\u066c\u0003\u066c\u0003\u066c\u0003\u066c\u0003\u066c\u0003",
+ "\u066c\u0003\u066c\u0003\u066c\u0003\u066c\u0003\u066c\u0003\u066c\u0003",
+ "\u066c\u0003\u066c\u0003\u066d\u0003\u066d\u0003\u066d\u0003\u066d\u0003",
+ "\u066d\u0003\u066d\u0003\u066d\u0003\u066d\u0003\u066d\u0003\u066d\u0003",
+ "\u066d\u0003\u066d\u0003\u066d\u0003\u066d\u0003\u066d\u0003\u066d\u0003",
+ "\u066d\u0003\u066e\u0003\u066e\u0003\u066e\u0003\u066e\u0003\u066e\u0003",
+ "\u066e\u0003\u066e\u0003\u066e\u0003\u066e\u0003\u066e\u0003\u066e\u0003",
+ "\u066e\u0003\u066e\u0003\u066e\u0003\u066e\u0003\u066e\u0003\u066e\u0003",
+ "\u066f\u0003\u066f\u0003\u066f\u0003\u066f\u0003\u066f\u0003\u066f\u0003",
+ "\u066f\u0003\u066f\u0003\u066f\u0003\u066f\u0003\u066f\u0003\u066f\u0003",
+ "\u066f\u0003\u066f\u0003\u066f\u0003\u066f\u0003\u066f\u0003\u066f\u0003",
+ "\u066f\u0003\u066f\u0003\u0670\u0003\u0670\u0003\u0670\u0003\u0670\u0003",
+ "\u0670\u0003\u0670\u0003\u0670\u0003\u0670\u0003\u0670\u0003\u0670\u0003",
+ "\u0670\u0003\u0670\u0003\u0670\u0003\u0670\u0003\u0670\u0003\u0670\u0003",
+ "\u0670\u0003\u0670\u0003\u0670\u0003\u0670\u0003\u0670\u0003\u0671\u0003",
+ "\u0671\u0003\u0671\u0003\u0671\u0003\u0671\u0003\u0671\u0003\u0671\u0003",
+ "\u0671\u0003\u0671\u0003\u0671\u0003\u0671\u0003\u0671\u0003\u0671\u0003",
+ "\u0671\u0003\u0671\u0003\u0671\u0003\u0671\u0003\u0671\u0003\u0671\u0003",
+ "\u0671\u0003\u0671\u0003\u0672\u0003\u0672\u0003\u0672\u0003\u0672\u0003",
+ "\u0672\u0003\u0672\u0003\u0672\u0003\u0672\u0003\u0672\u0003\u0672\u0003",
+ "\u0672\u0003\u0672\u0003\u0672\u0003\u0672\u0003\u0672\u0003\u0672\u0003",
+ "\u0672\u0003\u0672\u0003\u0672\u0003\u0672\u0003\u0673\u0003\u0673\u0003",
+ "\u0673\u0003\u0673\u0003\u0673\u0003\u0673\u0003\u0673\u0003\u0673\u0003",
+ "\u0673\u0003\u0673\u0003\u0673\u0003\u0673\u0003\u0673\u0003\u0674\u0003",
+ "\u0674\u0003\u0674\u0003\u0674\u0003\u0674\u0003\u0674\u0003\u0674\u0003",
+ "\u0674\u0003\u0674\u0003\u0674\u0003\u0674\u0003\u0674\u0003\u0674\u0003",
+ "\u0674\u0003\u0674\u0003\u0674\u0003\u0675\u0003\u0675\u0003\u0675\u0003",
+ "\u0675\u0003\u0675\u0003\u0675\u0003\u0675\u0003\u0675\u0003\u0675\u0003",
+ "\u0675\u0003\u0675\u0003\u0675\u0003\u0675\u0003\u0675\u0003\u0675\u0003",
+ "\u0676\u0003\u0676\u0003\u0676\u0003\u0676\u0003\u0676\u0003\u0676\u0003",
+ "\u0676\u0003\u0676\u0003\u0676\u0003\u0676\u0003\u0676\u0003\u0676\u0003",
+ "\u0676\u0003\u0676\u0003\u0676\u0003\u0676\u0003\u0677\u0003\u0677\u0003",
+ "\u0677\u0003\u0677\u0003\u0677\u0003\u0677\u0003\u0677\u0003\u0677\u0003",
+ "\u0677\u0003\u0677\u0003\u0677\u0003\u0677\u0003\u0677\u0003\u0677\u0003",
+ "\u0678\u0003\u0678\u0003\u0678\u0003\u0678\u0003\u0678\u0003\u0678\u0003",
+ "\u0678\u0003\u0678\u0003\u0678\u0003\u0678\u0003\u0678\u0003\u0678\u0003",
+ "\u0678\u0003\u0678\u0003\u0679\u0003\u0679\u0003\u0679\u0003\u0679\u0003",
+ "\u0679\u0003\u0679\u0003\u0679\u0003\u0679\u0003\u0679\u0003\u0679\u0003",
+ "\u0679\u0003\u0679\u0003\u0679\u0003\u0679\u0003\u0679\u0003\u067a\u0003",
+ "\u067a\u0003\u067a\u0003\u067a\u0003\u067a\u0003\u067a\u0003\u067a\u0003",
+ "\u067a\u0003\u067a\u0003\u067a\u0003\u067a\u0003\u067a\u0003\u067a\u0003",
+ "\u067a\u0003\u067a\u0003\u067a\u0003\u067a\u0003\u067a\u0003\u067a\u0003",
+ "\u067b\u0003\u067b\u0003\u067b\u0003\u067b\u0003\u067b\u0003\u067b\u0003",
+ "\u067b\u0003\u067b\u0003\u067b\u0003\u067b\u0003\u067b\u0003\u067b\u0003",
+ "\u067b\u0003\u067b\u0003\u067b\u0003\u067b\u0003\u067b\u0003\u067b\u0003",
+ "\u067b\u0003\u067c\u0003\u067c\u0003\u067c\u0003\u067c\u0003\u067c\u0003",
+ "\u067c\u0003\u067c\u0003\u067c\u0003\u067c\u0003\u067c\u0003\u067c\u0003",
+ "\u067c\u0003\u067c\u0003\u067c\u0003\u067c\u0003\u067d\u0003\u067d\u0003",
+ "\u067d\u0003\u067d\u0003\u067d\u0003\u067d\u0003\u067d\u0003\u067d\u0003",
+ "\u067d\u0003\u067d\u0003\u067d\u0003\u067d\u0003\u067d\u0003\u067d\u0003",
+ "\u067e\u0003\u067e\u0003\u067e\u0003\u067e\u0003\u067e\u0003\u067e\u0003",
+ "\u067e\u0003\u067e\u0003\u067e\u0003\u067f\u0003\u067f\u0003\u067f\u0003",
+ "\u067f\u0003\u067f\u0003\u067f\u0003\u067f\u0003\u067f\u0003\u0680\u0003",
+ "\u0680\u0003\u0680\u0003\u0680\u0003\u0680\u0003\u0680\u0003\u0681\u0003",
+ "\u0681\u0003\u0681\u0003\u0681\u0003\u0681\u0003\u0681\u0003\u0681\u0003",
+ "\u0681\u0003\u0681\u0003\u0681\u0003\u0681\u0003\u0681\u0003\u0681\u0003",
+ "\u0681\u0003\u0681\u0003\u0681\u0003\u0681\u0003\u0681\u0003\u0681\u0003",
+ "\u0682\u0003\u0682\u0003\u0682\u0003\u0682\u0003\u0682\u0003\u0682\u0003",
+ "\u0682\u0003\u0682\u0003\u0682\u0003\u0682\u0003\u0682\u0003\u0682\u0003",
+ "\u0683\u0003\u0683\u0003\u0683\u0003\u0683\u0003\u0683\u0003\u0683\u0003",
+ "\u0683\u0003\u0683\u0003\u0683\u0003\u0683\u0003\u0683\u0003\u0683\u0003",
+ "\u0683\u0003\u0683\u0003\u0684\u0003\u0684\u0003\u0684\u0003\u0684\u0003",
+ "\u0684\u0003\u0684\u0003\u0684\u0003\u0684\u0003\u0684\u0003\u0684\u0003",
+ "\u0685\u0003\u0685\u0003\u0685\u0003\u0685\u0003\u0685\u0003\u0685\u0003",
+ "\u0685\u0003\u0686\u0003\u0686\u0003\u0686\u0003\u0686\u0003\u0686\u0003",
+ "\u0686\u0003\u0686\u0003\u0686\u0003\u0686\u0003\u0686\u0003\u0686\u0003",
+ "\u0686\u0003\u0686\u0003\u0686\u0003\u0686\u0003\u0687\u0003\u0687\u0003",
+ "\u0687\u0003\u0687\u0003\u0687\u0003\u0687\u0003\u0687\u0003\u0687\u0003",
+ "\u0687\u0003\u0687\u0003\u0687\u0003\u0687\u0003\u0687\u0003\u0687\u0003",
+ "\u0687\u0003\u0688\u0003\u0688\u0003\u0688\u0003\u0688\u0003\u0688\u0003",
+ "\u0688\u0003\u0688\u0003\u0688\u0003\u0688\u0003\u0688\u0003\u0688\u0003",
+ "\u0688\u0003\u0688\u0003\u0688\u0003\u0688\u0003\u0688\u0003\u0689\u0003",
+ "\u0689\u0003\u0689\u0003\u0689\u0003\u0689\u0003\u0689\u0003\u0689\u0003",
+ "\u0689\u0003\u0689\u0003\u0689\u0003\u0689\u0003\u068a\u0003\u068a\u0003",
+ "\u068a\u0003\u068a\u0003\u068a\u0003\u068a\u0003\u068a\u0003\u068a\u0003",
+ "\u068a\u0003\u068a\u0003\u068a\u0003\u068a\u0003\u068a\u0003\u068a\u0003",
+ "\u068a\u0003\u068b\u0003\u068b\u0003\u068b\u0003\u068b\u0003\u068b\u0003",
+ "\u068b\u0003\u068b\u0003\u068b\u0003\u068b\u0003\u068b\u0003\u068b\u0003",
+ "\u068b\u0003\u068b\u0003\u068b\u0003\u068c\u0003\u068c\u0003\u068c\u0003",
+ "\u068c\u0003\u068c\u0003\u068c\u0003\u068c\u0003\u068c\u0003\u068c\u0003",
+ "\u068c\u0003\u068c\u0003\u068c\u0003\u068d\u0003\u068d\u0003\u068d\u0003",
+ "\u068d\u0003\u068d\u0003\u068d\u0003\u068d\u0003\u068d\u0003\u068d\u0003",
+ "\u068d\u0003\u068d\u0003\u068d\u0003\u068d\u0003\u068d\u0003\u068d\u0003",
+ "\u068d\u0003\u068d\u0003\u068d\u0003\u068d\u0003\u068d\u0003\u068d\u0003",
+ "\u068d\u0003\u068d\u0003\u068d\u0003\u068d\u0003\u068e\u0003\u068e\u0003",
+ "\u068e\u0003\u068e\u0003\u068e\u0003\u068e\u0003\u068e\u0003\u068e\u0003",
+ "\u068e\u0003\u068e\u0003\u068e\u0003\u068e\u0003\u068e\u0003\u068e\u0003",
+ "\u068e\u0003\u068e\u0003\u068e\u0003\u068e\u0003\u068e\u0003\u068e\u0003",
+ "\u068f\u0003\u068f\u0003\u068f\u0003\u068f\u0003\u068f\u0003\u068f\u0003",
+ "\u068f\u0003\u068f\u0003\u068f\u0003\u068f\u0003\u068f\u0003\u0690\u0003",
+ "\u0690\u0003\u0690\u0003\u0690\u0003\u0690\u0003\u0690\u0003\u0690\u0003",
+ "\u0690\u0003\u0690\u0003\u0690\u0003\u0690\u0003\u0690\u0003\u0691\u0003",
+ "\u0691\u0003\u0691\u0003\u0691\u0003\u0691\u0003\u0691\u0003\u0691\u0003",
+ "\u0691\u0003\u0691\u0003\u0691\u0003\u0691\u0003\u0692\u0003\u0692\u0003",
+ "\u0692\u0003\u0692\u0003\u0692\u0003\u0692\u0003\u0692\u0003\u0692\u0003",
+ "\u0692\u0003\u0692\u0003\u0692\u0003\u0692\u0003\u0693\u0003\u0693\u0003",
+ "\u0693\u0003\u0693\u0003\u0693\u0003\u0693\u0003\u0693\u0003\u0693\u0003",
+ "\u0693\u0003\u0693\u0003\u0693\u0003\u0693\u0003\u0693\u0003\u0693\u0003",
+ "\u0693\u0003\u0693\u0003\u0693\u0003\u0693\u0003\u0693\u0003\u0693\u0003",
+ "\u0693\u0003\u0694\u0003\u0694\u0003\u0694\u0003\u0694\u0003\u0694\u0003",
+ "\u0694\u0003\u0694\u0003\u0694\u0003\u0694\u0003\u0694\u0003\u0694\u0003",
+ "\u0694\u0003\u0695\u0003\u0695\u0003\u0695\u0003\u0695\u0003\u0695\u0003",
+ "\u0695\u0003\u0695\u0003\u0695\u0003\u0695\u0003\u0695\u0003\u0695\u0003",
+ "\u0695\u0003\u0695\u0003\u0695\u0003\u0695\u0003\u0696\u0003\u0696\u0003",
+ "\u0696\u0003\u0696\u0003\u0696\u0003\u0696\u0003\u0696\u0003\u0696\u0003",
+ "\u0696\u0003\u0696\u0003\u0696\u0003\u0696\u0003\u0696\u0003\u0696\u0003",
+ "\u0696\u0003\u0696\u0003\u0697\u0003\u0697\u0003\u0697\u0003\u0697\u0003",
+ "\u0697\u0003\u0697\u0003\u0697\u0003\u0697\u0003\u0697\u0003\u0697\u0003",
+ "\u0697\u0003\u0697\u0003\u0697\u0003\u0697\u0003\u0698\u0003\u0698\u0003",
+ "\u0698\u0003\u0698\u0003\u0698\u0003\u0698\u0003\u0698\u0003\u0698\u0003",
+ "\u0698\u0003\u0698\u0003\u0698\u0003\u0698\u0003\u0698\u0003\u0698\u0003",
+ "\u0698\u0003\u0698\u0003\u0698\u0003\u0698\u0003\u0699\u0003\u0699\u0003",
+ "\u0699\u0003\u0699\u0003\u0699\u0003\u0699\u0003\u0699\u0003\u0699\u0003",
+ "\u0699\u0003\u0699\u0003\u0699\u0003\u069a\u0003\u069a\u0003\u069a\u0003",
+ "\u069a\u0003\u069a\u0003\u069a\u0003\u069a\u0003\u069a\u0003\u069a\u0003",
+ "\u069a\u0003\u069a\u0003\u069a\u0003\u069a\u0003\u069a\u0003\u069a\u0003",
+ "\u069a\u0003\u069a\u0003\u069b\u0003\u069b\u0003\u069b\u0003\u069b\u0003",
+ "\u069b\u0003\u069b\u0003\u069b\u0003\u069b\u0003\u069b\u0003\u069b\u0003",
+ "\u069b\u0003\u069b\u0003\u069b\u0003\u069b\u0003\u069b\u0003\u069b\u0003",
+ "\u069b\u0003\u069b\u0003\u069c\u0003\u069c\u0003\u069c\u0003\u069c\u0003",
+ "\u069c\u0003\u069c\u0003\u069c\u0003\u069c\u0003\u069c\u0003\u069c\u0003",
+ "\u069c\u0003\u069c\u0003\u069c\u0003\u069c\u0003\u069d\u0003\u069d\u0003",
+ "\u069d\u0003\u069d\u0003\u069d\u0003\u069d\u0003\u069d\u0003\u069d\u0003",
+ "\u069d\u0003\u069d\u0003\u069d\u0003\u069d\u0003\u069d\u0003\u069d\u0003",
+ "\u069d\u0003\u069e\u0003\u069e\u0003\u069e\u0003\u069e\u0003\u069e\u0003",
+ "\u069e\u0003\u069e\u0003\u069e\u0003\u069e\u0003\u069e\u0003\u069e\u0003",
+ "\u069e\u0003\u069e\u0003\u069e\u0003\u069e\u0003\u069e\u0003\u069f\u0003",
+ "\u069f\u0003\u069f\u0003\u069f\u0003\u069f\u0003\u069f\u0003\u069f\u0003",
+ "\u069f\u0003\u069f\u0003\u069f\u0003\u069f\u0003\u06a0\u0003\u06a0\u0003",
+ "\u06a0\u0003\u06a0\u0003\u06a0\u0003\u06a0\u0003\u06a0\u0003\u06a0\u0003",
+ "\u06a0\u0003\u06a0\u0003\u06a0\u0003\u06a0\u0003\u06a1\u0003\u06a1\u0003",
+ "\u06a1\u0003\u06a1\u0003\u06a1\u0003\u06a1\u0003\u06a1\u0003\u06a1\u0003",
+ "\u06a1\u0003\u06a1\u0003\u06a1\u0003\u06a1\u0003\u06a1\u0003\u06a1\u0003",
+ "\u06a1\u0003\u06a1\u0003\u06a2\u0003\u06a2\u0003\u06a2\u0003\u06a2\u0003",
+ "\u06a2\u0003\u06a2\u0003\u06a2\u0003\u06a2\u0003\u06a2\u0003\u06a2\u0003",
+ "\u06a2\u0003\u06a2\u0003\u06a2\u0003\u06a2\u0003\u06a2\u0003\u06a2\u0003",
+ "\u06a2\u0003\u06a2\u0003\u06a2\u0003\u06a2\u0003\u06a2\u0003\u06a2\u0003",
+ "\u06a2\u0003\u06a2\u0003\u06a2\u0003\u06a3\u0003\u06a3\u0003\u06a3\u0003",
+ "\u06a3\u0003\u06a3\u0003\u06a3\u0003\u06a3\u0003\u06a3\u0003\u06a4\u0003",
+ "\u06a4\u0003\u06a4\u0003\u06a4\u0003\u06a4\u0003\u06a4\u0003\u06a4\u0003",
+ "\u06a4\u0003\u06a4\u0003\u06a4\u0003\u06a4\u0003\u06a4\u0003\u06a4\u0003",
+ "\u06a4\u0003\u06a4\u0003\u06a5\u0003\u06a5\u0003\u06a5\u0003\u06a5\u0003",
+ "\u06a5\u0003\u06a5\u0003\u06a5\u0003\u06a5\u0003\u06a5\u0003\u06a5\u0003",
+ "\u06a5\u0003\u06a5\u0003\u06a5\u0003\u06a5\u0003\u06a5\u0003\u06a5\u0003",
+ "\u06a6\u0003\u06a6\u0003\u06a6\u0003\u06a6\u0003\u06a6\u0003\u06a6\u0003",
+ "\u06a6\u0003\u06a6\u0003\u06a6\u0003\u06a6\u0003\u06a6\u0003\u06a6\u0003",
+ "\u06a7\u0003\u06a7\u0003\u06a7\u0003\u06a7\u0003\u06a7\u0003\u06a7\u0003",
+ "\u06a7\u0003\u06a7\u0003\u06a7\u0003\u06a7\u0003\u06a7\u0003\u06a7\u0003",
+ "\u06a8\u0003\u06a8\u0003\u06a8\u0003\u06a8\u0003\u06a8\u0003\u06a8\u0003",
+ "\u06a8\u0003\u06a8\u0003\u06a8\u0003\u06a8\u0003\u06a8\u0003\u06a9\u0003",
+ "\u06a9\u0003\u06a9\u0003\u06a9\u0003\u06a9\u0003\u06a9\u0003\u06a9\u0003",
+ "\u06a9\u0003\u06a9\u0003\u06a9\u0003\u06a9\u0003\u06aa\u0003\u06aa\u0003",
+ "\u06aa\u0003\u06aa\u0003\u06aa\u0003\u06aa\u0003\u06aa\u0003\u06aa\u0003",
+ "\u06aa\u0003\u06aa\u0003\u06aa\u0003\u06aa\u0003\u06aa\u0003\u06aa\u0003",
+ "\u06aa\u0003\u06aa\u0003\u06aa\u0003\u06aa\u0003\u06aa\u0003\u06aa\u0003",
+ "\u06aa\u0003\u06aa\u0003\u06aa\u0003\u06aa\u0003\u06aa\u0003\u06ab\u0003",
+ "\u06ab\u0003\u06ab\u0003\u06ab\u0003\u06ab\u0003\u06ab\u0003\u06ab\u0003",
+ "\u06ab\u0003\u06ab\u0003\u06ab\u0003\u06ab\u0003\u06ab\u0003\u06ab\u0003",
+ "\u06ab\u0003\u06ab\u0003\u06ab\u0003\u06ab\u0003\u06ab\u0003\u06ab\u0003",
+ "\u06ab\u0003\u06ab\u0003\u06ab\u0003\u06ab\u0003\u06ab\u0003\u06ab\u0003",
+ "\u06ab\u0003\u06ab\u0003\u06ab\u0003\u06ab\u0003\u06ab\u0003\u06ac\u0003",
+ "\u06ac\u0003\u06ac\u0003\u06ac\u0003\u06ac\u0003\u06ac\u0003\u06ac\u0003",
+ "\u06ac\u0003\u06ac\u0003\u06ac\u0003\u06ac\u0003\u06ac\u0003\u06ac\u0003",
+ "\u06ac\u0003\u06ac\u0003\u06ac\u0003\u06ac\u0003\u06ac\u0003\u06ac\u0003",
+ "\u06ac\u0003\u06ac\u0003\u06ac\u0003\u06ac\u0003\u06ac\u0003\u06ac\u0003",
+ "\u06ad\u0003\u06ad\u0003\u06ad\u0003\u06ad\u0003\u06ad\u0003\u06ad\u0003",
+ "\u06ad\u0003\u06ad\u0003\u06ad\u0003\u06ad\u0003\u06ad\u0003\u06ad\u0003",
+ "\u06ad\u0003\u06ad\u0003\u06ad\u0003\u06ad\u0003\u06ad\u0003\u06ad\u0003",
+ "\u06ad\u0003\u06ad\u0003\u06ad\u0003\u06ad\u0003\u06ad\u0003\u06ad\u0003",
+ "\u06ad\u0003\u06ad\u0003\u06ad\u0003\u06ad\u0003\u06ae\u0003\u06ae\u0003",
+ "\u06ae\u0003\u06ae\u0003\u06ae\u0003\u06ae\u0003\u06ae\u0003\u06ae\u0003",
+ "\u06ae\u0003\u06ae\u0003\u06ae\u0003\u06ae\u0003\u06ae\u0003\u06ae\u0003",
+ "\u06ae\u0003\u06ae\u0003\u06ae\u0003\u06ae\u0003\u06ae\u0003\u06ae\u0003",
+ "\u06ae\u0003\u06ae\u0003\u06af\u0003\u06af\u0003\u06af\u0003\u06af\u0003",
+ "\u06af\u0003\u06af\u0003\u06af\u0003\u06af\u0003\u06af\u0003\u06af\u0003",
+ "\u06af\u0003\u06af\u0003\u06b0\u0003\u06b0\u0003\u06b0\u0003\u06b0\u0003",
+ "\u06b0\u0003\u06b0\u0003\u06b0\u0003\u06b0\u0003\u06b0\u0003\u06b0\u0003",
+ "\u06b0\u0003\u06b0\u0003\u06b0\u0003\u06b0\u0003\u06b0\u0003\u06b0\u0003",
+ "\u06b0\u0003\u06b0\u0003\u06b0\u0003\u06b1\u0003\u06b1\u0003\u06b1\u0003",
+ "\u06b1\u0003\u06b1\u0003\u06b1\u0003\u06b1\u0003\u06b1\u0003\u06b1\u0003",
+ "\u06b1\u0003\u06b1\u0003\u06b1\u0003\u06b1\u0003\u06b1\u0003\u06b1\u0003",
+ "\u06b1\u0003\u06b1\u0003\u06b1\u0003\u06b1\u0003\u06b2\u0003\u06b2\u0003",
+ "\u06b2\u0003\u06b2\u0003\u06b2\u0003\u06b2\u0003\u06b2\u0003\u06b2\u0003",
+ "\u06b2\u0003\u06b2\u0003\u06b2\u0003\u06b2\u0003\u06b2\u0003\u06b2\u0003",
+ "\u06b2\u0003\u06b2\u0003\u06b2\u0003\u06b3\u0003\u06b3\u0003\u06b3\u0003",
+ "\u06b3\u0003\u06b3\u0003\u06b3\u0003\u06b3\u0003\u06b3\u0003\u06b3\u0003",
+ "\u06b3\u0003\u06b3\u0003\u06b3\u0003\u06b3\u0003\u06b3\u0003\u06b3\u0003",
+ "\u06b3\u0003\u06b3\u0003\u06b3\u0003\u06b3\u0003\u06b3\u0003\u06b4\u0003",
+ "\u06b4\u0003\u06b4\u0003\u06b4\u0003\u06b4\u0003\u06b4\u0003\u06b4\u0003",
+ "\u06b4\u0003\u06b4\u0003\u06b4\u0003\u06b4\u0003\u06b4\u0003\u06b4\u0003",
+ "\u06b4\u0003\u06b4\u0003\u06b4\u0003\u06b4\u0003\u06b4\u0003\u06b5\u0003",
+ "\u06b5\u0003\u06b5\u0003\u06b5\u0003\u06b5\u0003\u06b5\u0003\u06b5\u0003",
+ "\u06b5\u0003\u06b5\u0003\u06b5\u0003\u06b5\u0003\u06b5\u0003\u06b6\u0003",
+ "\u06b6\u0003\u06b6\u0003\u06b6\u0003\u06b6\u0003\u06b6\u0003\u06b6\u0003",
+ "\u06b6\u0003\u06b6\u0003\u06b6\u0003\u06b6\u0003\u06b7\u0003\u06b7\u0003",
+ "\u06b7\u0003\u06b7\u0003\u06b7\u0003\u06b7\u0003\u06b7\u0003\u06b7\u0003",
+ "\u06b7\u0003\u06b7\u0003\u06b7\u0003\u06b7\u0003\u06b7\u0003\u06b7\u0003",
+ "\u06b7\u0003\u06b8\u0003\u06b8\u0003\u06b8\u0003\u06b8\u0003\u06b8\u0003",
+ "\u06b8\u0003\u06b8\u0003\u06b8\u0003\u06b8\u0003\u06b8\u0003\u06b8\u0003",
+ "\u06b8\u0003\u06b8\u0003\u06b8\u0003\u06b8\u0003\u06b8\u0003\u06b8\u0003",
+ "\u06b8\u0003\u06b8\u0003\u06b9\u0003\u06b9\u0003\u06b9\u0003\u06b9\u0003",
+ "\u06b9\u0003\u06b9\u0003\u06b9\u0003\u06b9\u0003\u06b9\u0003\u06b9\u0003",
+ "\u06b9\u0003\u06ba\u0003\u06ba\u0003\u06ba\u0003\u06ba\u0003\u06ba\u0003",
+ "\u06ba\u0003\u06ba\u0003\u06ba\u0003\u06ba\u0003\u06ba\u0003\u06ba\u0003",
+ "\u06ba\u0003\u06ba\u0003\u06ba\u0003\u06ba\u0003\u06ba\u0003\u06ba\u0003",
+ "\u06bb\u0003\u06bb\u0003\u06bb\u0003\u06bb\u0003\u06bb\u0003\u06bb\u0003",
+ "\u06bb\u0003\u06bb\u0003\u06bb\u0003\u06bb\u0003\u06bb\u0003\u06bb\u0003",
+ "\u06bb\u0003\u06bb\u0003\u06bb\u0003\u06bb\u0003\u06bb\u0003\u06bc\u0003",
+ "\u06bc\u0003\u06bc\u0003\u06bc\u0003\u06bc\u0003\u06bc\u0003\u06bc\u0003",
+ "\u06bc\u0003\u06bc\u0003\u06bc\u0003\u06bc\u0003\u06bd\u0003\u06bd\u0003",
+ "\u06bd\u0003\u06bd\u0003\u06bd\u0003\u06bd\u0003\u06bd\u0003\u06bd\u0003",
+ "\u06bd\u0003\u06bd\u0003\u06bd\u0003\u06be\u0003\u06be\u0003\u06be\u0003",
+ "\u06be\u0003\u06be\u0003\u06be\u0003\u06be\u0003\u06be\u0003\u06be\u0003",
+ "\u06be\u0003\u06be\u0003\u06be\u0003\u06be\u0003\u06be\u0003\u06be\u0003",
+ "\u06be\u0003\u06bf\u0003\u06bf\u0003\u06bf\u0003\u06bf\u0003\u06bf\u0003",
+ "\u06bf\u0003\u06bf\u0003\u06bf\u0003\u06bf\u0003\u06bf\u0003\u06bf\u0003",
+ "\u06bf\u0003\u06bf\u0003\u06bf\u0003\u06bf\u0003\u06c0\u0003\u06c0\u0003",
+ "\u06c0\u0003\u06c0\u0003\u06c0\u0003\u06c0\u0003\u06c0\u0003\u06c0\u0003",
+ "\u06c0\u0003\u06c0\u0003\u06c0\u0003\u06c0\u0003\u06c0\u0003\u06c0\u0003",
+ "\u06c0\u0003\u06c0\u0003\u06c1\u0003\u06c1\u0003\u06c1\u0003\u06c1\u0003",
+ "\u06c1\u0003\u06c1\u0003\u06c1\u0003\u06c1\u0003\u06c1\u0003\u06c1\u0003",
+ "\u06c1\u0003\u06c1\u0003\u06c1\u0003\u06c1\u0003\u06c1\u0003\u06c1\u0003",
+ "\u06c2\u0003\u06c2\u0003\u06c2\u0003\u06c2\u0003\u06c2\u0003\u06c2\u0003",
+ "\u06c2\u0003\u06c2\u0003\u06c2\u0003\u06c2\u0003\u06c2\u0003\u06c2\u0003",
+ "\u06c2\u0003\u06c2\u0003\u06c2\u0003\u06c3\u0003\u06c3\u0003\u06c3\u0003",
+ "\u06c3\u0003\u06c3\u0003\u06c3\u0003\u06c3\u0003\u06c3\u0003\u06c3\u0003",
+ "\u06c3\u0003\u06c3\u0003\u06c3\u0003\u06c3\u0003\u06c4\u0003\u06c4\u0003",
+ "\u06c4\u0003\u06c4\u0003\u06c4\u0003\u06c4\u0003\u06c4\u0003\u06c4\u0003",
+ "\u06c4\u0003\u06c4\u0003\u06c4\u0003\u06c4\u0003\u06c4\u0003\u06c4\u0003",
+ "\u06c4\u0003\u06c4\u0003\u06c5\u0003\u06c5\u0003\u06c5\u0003\u06c5\u0003",
+ "\u06c5\u0003\u06c5\u0003\u06c5\u0003\u06c5\u0003\u06c5\u0003\u06c5\u0003",
+ "\u06c5\u0003\u06c5\u0003\u06c5\u0003\u06c5\u0003\u06c6\u0003\u06c6\u0003",
+ "\u06c6\u0003\u06c6\u0003\u06c6\u0003\u06c6\u0003\u06c6\u0003\u06c6\u0003",
+ "\u06c6\u0003\u06c6\u0003\u06c6\u0003\u06c7\u0003\u06c7\u0003\u06c7\u0003",
+ "\u06c7\u0003\u06c7\u0003\u06c7\u0003\u06c7\u0003\u06c7\u0003\u06c7\u0003",
+ "\u06c7\u0003\u06c7\u0003\u06c7\u0003\u06c7\u0003\u06c7\u0003\u06c7\u0003",
+ "\u06c8\u0003\u06c8\u0003\u06c8\u0003\u06c8\u0003\u06c8\u0003\u06c8\u0003",
+ "\u06c8\u0003\u06c8\u0003\u06c8\u0003\u06c8\u0003\u06c8\u0003\u06c8\u0003",
+ "\u06c8\u0003\u06c9\u0003\u06c9\u0003\u06c9\u0003\u06c9\u0003\u06c9\u0003",
+ "\u06c9\u0003\u06c9\u0003\u06c9\u0003\u06c9\u0003\u06c9\u0003\u06c9\u0003",
+ "\u06ca\u0003\u06ca\u0003\u06ca\u0003\u06ca\u0003\u06ca\u0003\u06ca\u0003",
+ "\u06ca\u0003\u06ca\u0003\u06ca\u0003\u06ca\u0003\u06ca\u0003\u06ca\u0003",
+ "\u06ca\u0003\u06ca\u0003\u06ca\u0003\u06ca\u0003\u06cb\u0003\u06cb\u0003",
+ "\u06cb\u0003\u06cb\u0003\u06cb\u0003\u06cb\u0003\u06cb\u0003\u06cb\u0003",
+ "\u06cb\u0003\u06cb\u0003\u06cb\u0003\u06cb\u0003\u06cc\u0003\u06cc\u0003",
+ "\u06cc\u0003\u06cc\u0003\u06cc\u0003\u06cc\u0003\u06cc\u0003\u06cc\u0003",
+ "\u06cc\u0003\u06cc\u0003\u06cc\u0003\u06cd\u0003\u06cd\u0003\u06cd\u0003",
+ "\u06cd\u0003\u06cd\u0003\u06cd\u0003\u06cd\u0003\u06cd\u0003\u06cd\u0003",
+ "\u06cd\u0003\u06cd\u0003\u06cd\u0003\u06ce\u0003\u06ce\u0003\u06ce\u0003",
+ "\u06ce\u0003\u06ce\u0003\u06ce\u0003\u06ce\u0003\u06ce\u0003\u06ce\u0003",
+ "\u06ce\u0003\u06ce\u0003\u06ce\u0003\u06ce\u0003\u06ce\u0003\u06ce\u0003",
+ "\u06ce\u0003\u06ce\u0003\u06ce\u0003\u06cf\u0003\u06cf\u0003\u06cf\u0003",
+ "\u06cf\u0003\u06cf\u0003\u06cf\u0003\u06cf\u0003\u06cf\u0003\u06cf\u0003",
+ "\u06cf\u0003\u06cf\u0003\u06d0\u0003\u06d0\u0003\u06d0\u0003\u06d0\u0003",
+ "\u06d0\u0003\u06d0\u0003\u06d0\u0003\u06d0\u0003\u06d0\u0003\u06d0\u0003",
+ "\u06d0\u0003\u06d0\u0003\u06d0\u0003\u06d0\u0003\u06d0\u0003\u06d0\u0003",
+ "\u06d1\u0003\u06d1\u0003\u06d1\u0003\u06d1\u0003\u06d1\u0003\u06d1\u0003",
+ "\u06d1\u0003\u06d1\u0003\u06d1\u0003\u06d1\u0003\u06d1\u0003\u06d1\u0003",
+ "\u06d1\u0003\u06d1\u0003\u06d1\u0003\u06d2\u0003\u06d2\u0003\u06d2\u0003",
+ "\u06d2\u0003\u06d2\u0003\u06d2\u0003\u06d2\u0003\u06d2\u0003\u06d2\u0003",
+ "\u06d2\u0003\u06d2\u0003\u06d3\u0003\u06d3\u0003\u06d3\u0003\u06d3\u0003",
+ "\u06d3\u0003\u06d3\u0003\u06d3\u0003\u06d3\u0003\u06d3\u0003\u06d3\u0003",
+ "\u06d3\u0003\u06d3\u0003\u06d4\u0003\u06d4\u0003\u06d4\u0003\u06d4\u0003",
+ "\u06d4\u0003\u06d4\u0003\u06d4\u0003\u06d4\u0003\u06d4\u0003\u06d4\u0003",
+ "\u06d4\u0003\u06d4\u0003\u06d4\u0003\u06d5\u0003\u06d5\u0003\u06d5\u0003",
+ "\u06d5\u0003\u06d5\u0003\u06d5\u0003\u06d5\u0003\u06d5\u0003\u06d5\u0003",
+ "\u06d5\u0003\u06d5\u0003\u06d5\u0003\u06d5\u0003\u06d5\u0003\u06d5\u0003",
+ "\u06d5\u0003\u06d5\u0003\u06d5\u0003\u06d6\u0003\u06d6\u0003\u06d6\u0003",
+ "\u06d6\u0003\u06d6\u0003\u06d6\u0003\u06d6\u0003\u06d6\u0003\u06d6\u0003",
+ "\u06d6\u0003\u06d6\u0003\u06d6\u0003\u06d6\u0003\u06d6\u0003\u06d6\u0003",
+ "\u06d6\u0003\u06d6\u0003\u06d7\u0003\u06d7\u0003\u06d7\u0003\u06d7\u0003",
+ "\u06d7\u0003\u06d7\u0003\u06d7\u0003\u06d7\u0003\u06d7\u0003\u06d7\u0003",
+ "\u06d7\u0003\u06d7\u0003\u06d7\u0003\u06d7\u0003\u06d8\u0003\u06d8\u0003",
+ "\u06d8\u0003\u06d8\u0003\u06d8\u0003\u06d8\u0003\u06d8\u0003\u06d8\u0003",
+ "\u06d8\u0003\u06d8\u0003\u06d8\u0003\u06d8\u0003\u06d8\u0003\u06d8\u0003",
+ "\u06d9\u0003\u06d9\u0003\u06d9\u0003\u06d9\u0003\u06d9\u0003\u06d9\u0003",
+ "\u06d9\u0003\u06d9\u0003\u06d9\u0003\u06d9\u0003\u06d9\u0003\u06d9\u0003",
+ "\u06d9\u0003\u06da\u0003\u06da\u0003\u06da\u0003\u06da\u0003\u06da\u0003",
+ "\u06da\u0003\u06da\u0003\u06da\u0003\u06da\u0003\u06da\u0003\u06da\u0003",
+ "\u06da\u0003\u06da\u0003\u06da\u0003\u06db\u0003\u06db\u0003\u06db\u0003",
+ "\u06db\u0003\u06db\u0003\u06db\u0003\u06db\u0003\u06db\u0003\u06db\u0003",
+ "\u06db\u0003\u06db\u0003\u06db\u0003\u06db\u0003\u06db\u0003\u06db\u0003",
+ "\u06dc\u0003\u06dc\u0003\u06dc\u0003\u06dc\u0003\u06dc\u0003\u06dc\u0003",
+ "\u06dc\u0003\u06dc\u0003\u06dc\u0003\u06dc\u0003\u06dc\u0003\u06dc\u0003",
+ "\u06dd\u0003\u06dd\u0003\u06dd\u0003\u06dd\u0003\u06dd\u0003\u06dd\u0003",
+ "\u06dd\u0003\u06dd\u0003\u06dd\u0003\u06dd\u0003\u06dd\u0003\u06de\u0003",
+ "\u06de\u0003\u06de\u0003\u06de\u0003\u06de\u0003\u06de\u0003\u06de\u0003",
+ "\u06de\u0003\u06de\u0003\u06de\u0003\u06de\u0003\u06de\u0003\u06de\u0003",
+ "\u06de\u0003\u06de\u0003\u06de\u0003\u06de\u0003\u06de\u0003\u06de\u0003",
+ "\u06de\u0003\u06de\u0003\u06de\u0003\u06de\u0003\u06df\u0003\u06df\u0003",
+ "\u06df\u0003\u06df\u0003\u06df\u0003\u06df\u0003\u06df\u0003\u06df\u0003",
+ "\u06df\u0003\u06df\u0003\u06df\u0003\u06df\u0003\u06df\u0003\u06df\u0003",
+ "\u06df\u0003\u06e0\u0003\u06e0\u0003\u06e0\u0003\u06e0\u0003\u06e0\u0003",
+ "\u06e0\u0003\u06e0\u0003\u06e0\u0003\u06e0\u0003\u06e0\u0003\u06e0\u0003",
+ "\u06e0\u0003\u06e0\u0003\u06e0\u0003\u06e0\u0003\u06e1\u0003\u06e1\u0003",
+ "\u06e1\u0003\u06e1\u0003\u06e1\u0003\u06e1\u0003\u06e1\u0003\u06e1\u0003",
+ "\u06e1\u0003\u06e1\u0003\u06e1\u0003\u06e1\u0003\u06e1\u0003\u06e1\u0003",
+ "\u06e2\u0003\u06e2\u0003\u06e2\u0003\u06e2\u0003\u06e2\u0003\u06e2\u0003",
+ "\u06e2\u0003\u06e2\u0003\u06e2\u0003\u06e2\u0003\u06e2\u0003\u06e2\u0003",
+ "\u06e2\u0003\u06e2\u0003\u06e2\u0003\u06e2\u0003\u06e2\u0003\u06e3\u0003",
+ "\u06e3\u0003\u06e3\u0003\u06e3\u0003\u06e3\u0003\u06e3\u0003\u06e3\u0003",
+ "\u06e3\u0003\u06e3\u0003\u06e3\u0003\u06e3\u0003\u06e3\u0003\u06e3\u0003",
+ "\u06e3\u0003\u06e3\u0003\u06e4\u0003\u06e4\u0003\u06e4\u0003\u06e4\u0003",
+ "\u06e4\u0003\u06e4\u0003\u06e4\u0003\u06e4\u0003\u06e4\u0003\u06e4\u0003",
+ "\u06e4\u0003\u06e4\u0003\u06e4\u0003\u06e4\u0003\u06e4\u0003\u06e4\u0003",
+ "\u06e4\u0003\u06e4\u0003\u06e4\u0003\u06e5\u0003\u06e5\u0003\u06e5\u0003",
+ "\u06e5\u0003\u06e5\u0003\u06e5\u0003\u06e5\u0003\u06e5\u0003\u06e5\u0003",
+ "\u06e5\u0003\u06e5\u0003\u06e5\u0003\u06e5\u0003\u06e5\u0003\u06e5\u0003",
+ "\u06e5\u0003\u06e5\u0003\u06e5\u0003\u06e5\u0003\u06e5\u0003\u06e5\u0003",
+ "\u06e5\u0003\u06e6\u0003\u06e6\u0003\u06e6\u0003\u06e6\u0003\u06e6\u0003",
+ "\u06e6\u0003\u06e6\u0003\u06e6\u0003\u06e6\u0003\u06e6\u0003\u06e6\u0003",
+ "\u06e6\u0003\u06e6\u0003\u06e6\u0003\u06e6\u0003\u06e6\u0003\u06e6\u0003",
+ "\u06e6\u0003\u06e6\u0003\u06e6\u0003\u06e7\u0003\u06e7\u0003\u06e7\u0003",
+ "\u06e7\u0003\u06e7\u0003\u06e7\u0003\u06e7\u0003\u06e7\u0003\u06e7\u0003",
+ "\u06e7\u0003\u06e7\u0003\u06e7\u0003\u06e7\u0003\u06e7\u0003\u06e7\u0003",
+ "\u06e7\u0003\u06e7\u0003\u06e8\u0003\u06e8\u0003\u06e8\u0003\u06e8\u0003",
+ "\u06e8\u0003\u06e8\u0003\u06e8\u0003\u06e8\u0003\u06e8\u0003\u06e8\u0003",
+ "\u06e8\u0003\u06e8\u0003\u06e8\u0003\u06e8\u0003\u06e8\u0003\u06e8\u0003",
+ "\u06e8\u0003\u06e8\u0003\u06e8\u0003\u06e9\u0003\u06e9\u0003\u06e9\u0003",
+ "\u06e9\u0003\u06e9\u0003\u06e9\u0003\u06e9\u0003\u06e9\u0003\u06e9\u0003",
+ "\u06e9\u0003\u06e9\u0003\u06e9\u0003\u06e9\u0003\u06e9\u0003\u06e9\u0003",
+ "\u06e9\u0003\u06e9\u0003\u06e9\u0003\u06e9\u0003\u06e9\u0003\u06ea\u0003",
+ "\u06ea\u0003\u06ea\u0003\u06ea\u0003\u06ea\u0003\u06ea\u0003\u06ea\u0003",
+ "\u06ea\u0003\u06ea\u0003\u06ea\u0003\u06ea\u0003\u06ea\u0003\u06ea\u0003",
+ "\u06ea\u0003\u06ea\u0003\u06ea\u0003\u06ea\u0003\u06ea\u0003\u06ea\u0003",
+ "\u06ea\u0003\u06eb\u0003\u06eb\u0003\u06eb\u0003\u06eb\u0003\u06eb\u0003",
+ "\u06eb\u0003\u06eb\u0003\u06eb\u0003\u06eb\u0003\u06eb\u0003\u06eb\u0003",
+ "\u06eb\u0003\u06eb\u0003\u06eb\u0003\u06eb\u0003\u06eb\u0003\u06eb\u0003",
+ "\u06eb\u0003\u06eb\u0003\u06eb\u0003\u06eb\u0003\u06ec\u0003\u06ec\u0003",
+ "\u06ec\u0003\u06ec\u0003\u06ec\u0003\u06ec\u0003\u06ec\u0003\u06ec\u0003",
+ "\u06ec\u0003\u06ec\u0003\u06ec\u0003\u06ec\u0003\u06ec\u0003\u06ec\u0003",
+ "\u06ec\u0003\u06ec\u0003\u06ec\u0003\u06ed\u0003\u06ed\u0003\u06ed\u0003",
+ "\u06ed\u0003\u06ed\u0003\u06ed\u0003\u06ed\u0003\u06ed\u0003\u06ed\u0003",
+ "\u06ed\u0003\u06ed\u0003\u06ed\u0003\u06ed\u0003\u06ed\u0003\u06ed\u0003",
+ "\u06ee\u0003\u06ee\u0003\u06ee\u0003\u06ee\u0003\u06ee\u0003\u06ee\u0003",
+ "\u06ee\u0003\u06ee\u0003\u06ee\u0003\u06ee\u0003\u06ee\u0003\u06ee\u0003",
+ "\u06ee\u0003\u06ee\u0003\u06ee\u0003\u06ee\u0003\u06ef\u0003\u06ef\u0003",
+ "\u06ef\u0003\u06ef\u0003\u06ef\u0003\u06ef\u0003\u06ef\u0003\u06ef\u0003",
+ "\u06ef\u0003\u06ef\u0003\u06ef\u0003\u06ef\u0003\u06ef\u0003\u06ef\u0003",
+ "\u06f0\u0003\u06f0\u0003\u06f0\u0003\u06f0\u0003\u06f0\u0003\u06f0\u0003",
+ "\u06f0\u0003\u06f0\u0003\u06f0\u0003\u06f0\u0003\u06f0\u0003\u06f0\u0003",
+ "\u06f0\u0003\u06f0\u0003\u06f1\u0003\u06f1\u0003\u06f1\u0003\u06f1\u0003",
+ "\u06f1\u0003\u06f1\u0003\u06f1\u0003\u06f1\u0003\u06f1\u0003\u06f1\u0003",
+ "\u06f1\u0003\u06f1\u0003\u06f1\u0003\u06f1\u0003\u06f2\u0003\u06f2\u0003",
+ "\u06f2\u0003\u06f2\u0003\u06f2\u0003\u06f2\u0003\u06f2\u0003\u06f2\u0003",
+ "\u06f2\u0003\u06f2\u0003\u06f2\u0003\u06f2\u0003\u06f2\u0003\u06f2\u0003",
+ "\u06f2\u0003\u06f3\u0003\u06f3\u0003\u06f3\u0003\u06f3\u0003\u06f3\u0003",
+ "\u06f3\u0003\u06f3\u0003\u06f3\u0003\u06f3\u0003\u06f3\u0003\u06f3\u0003",
+ "\u06f3\u0003\u06f3\u0003\u06f3\u0003\u06f3\u0003\u06f4\u0003\u06f4\u0003",
+ "\u06f4\u0003\u06f4\u0003\u06f4\u0003\u06f4\u0003\u06f4\u0003\u06f5\u0003",
+ "\u06f5\u0003\u06f5\u0003\u06f5\u0003\u06f5\u0003\u06f5\u0003\u06f5\u0003",
+ "\u06f5\u0003\u06f5\u0003\u06f5\u0003\u06f5\u0003\u06f5\u0003\u06f5\u0003",
+ "\u06f6\u0003\u06f6\u0003\u06f6\u0003\u06f6\u0003\u06f6\u0003\u06f6\u0003",
+ "\u06f6\u0003\u06f6\u0003\u06f6\u0003\u06f6\u0003\u06f6\u0003\u06f7\u0003",
+ "\u06f7\u0003\u06f7\u0003\u06f7\u0003\u06f7\u0003\u06f7\u0003\u06f7\u0003",
+ "\u06f7\u0003\u06f7\u0003\u06f7\u0003\u06f7\u0003\u06f7\u0003\u06f7\u0003",
+ "\u06f8\u0003\u06f8\u0003\u06f8\u0003\u06f8\u0003\u06f8\u0003\u06f8\u0003",
+ "\u06f8\u0003\u06f8\u0003\u06f8\u0003\u06f8\u0003\u06f8\u0003\u06f8\u0003",
+ "\u06f8\u0003\u06f8\u0003\u06f8\u0003\u06f9\u0003\u06f9\u0003\u06f9\u0003",
+ "\u06f9\u0003\u06f9\u0003\u06f9\u0003\u06f9\u0003\u06f9\u0003\u06f9\u0003",
+ "\u06f9\u0003\u06f9\u0003\u06f9\u0003\u06f9\u0003\u06f9\u0003\u06f9\u0003",
+ "\u06f9\u0003\u06fa\u0003\u06fa\u0003\u06fa\u0003\u06fa\u0003\u06fa\u0003",
+ "\u06fa\u0003\u06fa\u0003\u06fa\u0003\u06fa\u0003\u06fa\u0003\u06fa\u0003",
+ "\u06fa\u0003\u06fb\u0003\u06fb\u0003\u06fb\u0003\u06fb\u0003\u06fb\u0003",
+ "\u06fb\u0003\u06fb\u0003\u06fb\u0003\u06fb\u0003\u06fb\u0003\u06fb\u0003",
+ "\u06fb\u0003\u06fb\u0003\u06fb\u0003\u06fb\u0003\u06fc\u0003\u06fc\u0003",
+ "\u06fc\u0003\u06fc\u0003\u06fc\u0003\u06fc\u0003\u06fc\u0003\u06fc\u0003",
+ "\u06fc\u0003\u06fc\u0003\u06fc\u0003\u06fd\u0003\u06fd\u0003\u06fd\u0003",
+ "\u06fd\u0003\u06fd\u0003\u06fd\u0003\u06fd\u0003\u06fd\u0003\u06fd\u0003",
+ "\u06fd\u0003\u06fd\u0003\u06fd\u0003\u06fd\u0003\u06fd\u0003\u06fd\u0003",
+ "\u06fd\u0003\u06fd\u0003\u06fd\u0003\u06fd\u0003\u06fd\u0003\u06fe\u0003",
+ "\u06fe\u0003\u06fe\u0003\u06fe\u0003\u06fe\u0003\u06fe\u0003\u06fe\u0003",
+ "\u06fe\u0003\u06fe\u0003\u06fe\u0003\u06fe\u0003\u06fe\u0003\u06fe\u0003",
+ "\u06fe\u0003\u06fe\u0003\u06fe\u0003\u06fe\u0003\u06fe\u0003\u06fe\u0003",
+ "\u06fe\u0003\u06ff\u0003\u06ff\u0003\u06ff\u0003\u06ff\u0003\u06ff\u0003",
+ "\u06ff\u0003\u06ff\u0003\u06ff\u0003\u06ff\u0003\u06ff\u0003\u06ff\u0003",
+ "\u06ff\u0003\u06ff\u0003\u0700\u0003\u0700\u0003\u0700\u0003\u0700\u0003",
+ "\u0700\u0003\u0700\u0003\u0700\u0003\u0700\u0003\u0700\u0003\u0700\u0003",
+ "\u0700\u0003\u0700\u0003\u0700\u0003\u0700\u0003\u0700\u0003\u0700\u0003",
+ "\u0700\u0003\u0700\u0003\u0700\u0003\u0700\u0003\u0700\u0003\u0700\u0003",
+ "\u0700\u0003\u0701\u0003\u0701\u0003\u0701\u0003\u0701\u0003\u0701\u0003",
+ "\u0701\u0003\u0701\u0003\u0701\u0003\u0701\u0003\u0701\u0003\u0701\u0003",
+ "\u0701\u0003\u0701\u0003\u0701\u0003\u0701\u0003\u0701\u0003\u0701\u0003",
+ "\u0701\u0003\u0701\u0003\u0701\u0003\u0701\u0003\u0702\u0003\u0702\u0003",
+ "\u0702\u0003\u0702\u0003\u0702\u0003\u0702\u0003\u0702\u0003\u0702\u0003",
+ "\u0702\u0003\u0702\u0003\u0702\u0003\u0702\u0003\u0702\u0003\u0702\u0003",
+ "\u0702\u0003\u0702\u0003\u0702\u0003\u0702\u0003\u0702\u0003\u0702\u0003",
+ "\u0702\u0003\u0702\u0003\u0702\u0003\u0702\u0003\u0702\u0003\u0703\u0003",
+ "\u0703\u0003\u0703\u0003\u0703\u0003\u0703\u0003\u0703\u0003\u0703\u0003",
+ "\u0703\u0003\u0703\u0003\u0703\u0003\u0703\u0003\u0703\u0003\u0703\u0003",
+ "\u0703\u0003\u0703\u0003\u0703\u0003\u0703\u0003\u0703\u0003\u0703\u0003",
+ "\u0703\u0003\u0703\u0003\u0703\u0003\u0704\u0003\u0704\u0003\u0704\u0003",
+ "\u0704\u0003\u0704\u0003\u0704\u0003\u0704\u0003\u0704\u0003\u0704\u0003",
+ "\u0704\u0003\u0704\u0003\u0704\u0003\u0704\u0003\u0704\u0003\u0704\u0003",
+ "\u0704\u0003\u0704\u0003\u0704\u0003\u0704\u0003\u0704\u0003\u0704\u0003",
+ "\u0704\u0003\u0704\u0003\u0704\u0003\u0705\u0003\u0705\u0003\u0705\u0003",
+ "\u0705\u0003\u0705\u0003\u0705\u0003\u0705\u0003\u0705\u0003\u0705\u0003",
+ "\u0705\u0003\u0705\u0003\u0705\u0003\u0705\u0003\u0705\u0003\u0705\u0003",
+ "\u0705\u0003\u0705\u0003\u0705\u0003\u0705\u0003\u0705\u0003\u0705\u0003",
+ "\u0705\u0003\u0705\u0003\u0706\u0003\u0706\u0003\u0706\u0003\u0706\u0003",
+ "\u0706\u0003\u0706\u0003\u0706\u0003\u0706\u0003\u0706\u0003\u0706\u0003",
+ "\u0706\u0003\u0706\u0003\u0706\u0003\u0706\u0003\u0706\u0003\u0706\u0003",
+ "\u0706\u0003\u0706\u0003\u0706\u0003\u0706\u0003\u0706\u0003\u0707\u0003",
+ "\u0707\u0003\u0707\u0003\u0707\u0003\u0707\u0003\u0707\u0003\u0707\u0003",
+ "\u0707\u0003\u0707\u0003\u0707\u0003\u0707\u0003\u0707\u0003\u0707\u0003",
+ "\u0707\u0003\u0707\u0003\u0707\u0003\u0707\u0003\u0707\u0003\u0707\u0003",
+ "\u0707\u0003\u0707\u0003\u0707\u0003\u0708\u0003\u0708\u0003\u0708\u0003",
+ "\u0708\u0003\u0708\u0003\u0708\u0003\u0708\u0003\u0708\u0003\u0708\u0003",
+ "\u0708\u0003\u0708\u0003\u0708\u0003\u0708\u0003\u0708\u0003\u0708\u0003",
+ "\u0708\u0003\u0708\u0003\u0708\u0003\u0708\u0003\u0708\u0003\u0708\u0003",
+ "\u0709\u0003\u0709\u0003\u0709\u0003\u0709\u0003\u0709\u0003\u0709\u0003",
+ "\u0709\u0003\u0709\u0003\u0709\u0003\u0709\u0003\u0709\u0003\u0709\u0003",
+ "\u0709\u0003\u0709\u0003\u070a\u0003\u070a\u0003\u070a\u0003\u070a\u0003",
+ "\u070a\u0003\u070a\u0003\u070a\u0003\u070a\u0003\u070a\u0003\u070a\u0003",
+ "\u070a\u0003\u070a\u0003\u070a\u0003\u070a\u0003\u070b\u0003\u070b\u0003",
+ "\u070b\u0003\u070b\u0003\u070b\u0003\u070b\u0003\u070b\u0003\u070b\u0003",
+ "\u070b\u0003\u070b\u0003\u070b\u0003\u070b\u0003\u070b\u0003\u070b\u0003",
+ "\u070b\u0003\u070b\u0003\u070b\u0003\u070c\u0003\u070c\u0003\u070c\u0003",
+ "\u070c\u0003\u070c\u0003\u070c\u0003\u070c\u0003\u070c\u0003\u070c\u0003",
+ "\u070c\u0003\u070c\u0003\u070c\u0003\u070c\u0003\u070c\u0003\u070c\u0003",
+ "\u070c\u0003\u070d\u0003\u070d\u0003\u070d\u0003\u070d\u0003\u070d\u0003",
+ "\u070d\u0003\u070d\u0003\u070d\u0003\u070d\u0003\u070d\u0003\u070d\u0003",
+ "\u070d\u0003\u070d\u0003\u070d\u0003\u070d\u0003\u070e\u0003\u070e\u0003",
+ "\u070e\u0003\u070e\u0003\u070e\u0003\u070e\u0003\u070e\u0003\u070e\u0003",
+ "\u070e\u0003\u070e\u0003\u070e\u0003\u070e\u0003\u070e\u0003\u070e\u0003",
+ "\u070e\u0003\u070e\u0003\u070e\u0003\u070e\u0003\u070f\u0003\u070f\u0003",
+ "\u070f\u0003\u070f\u0003\u070f\u0003\u070f\u0003\u070f\u0003\u070f\u0003",
+ "\u070f\u0003\u070f\u0003\u070f\u0003\u070f\u0003\u070f\u0003\u070f\u0003",
+ "\u0710\u0003\u0710\u0003\u0710\u0003\u0710\u0003\u0710\u0003\u0710\u0003",
+ "\u0710\u0003\u0710\u0003\u0710\u0003\u0710\u0003\u0710\u0003\u0710\u0003",
+ "\u0710\u0003\u0710\u0003\u0710\u0003\u0710\u0003\u0710\u0003\u0710\u0003",
+ "\u0710\u0003\u0711\u0003\u0711\u0003\u0711\u0003\u0711\u0003\u0711\u0003",
+ "\u0711\u0003\u0711\u0003\u0711\u0003\u0711\u0003\u0711\u0003\u0711\u0003",
+ "\u0711\u0003\u0711\u0003\u0711\u0003\u0711\u0003\u0711\u0003\u0712\u0003",
+ "\u0712\u0003\u0712\u0003\u0712\u0003\u0712\u0003\u0712\u0003\u0712\u0003",
+ "\u0712\u0003\u0712\u0003\u0712\u0003\u0712\u0003\u0712\u0003\u0712\u0003",
+ "\u0712\u0003\u0713\u0003\u0713\u0003\u0713\u0003\u0713\u0003\u0713\u0003",
+ "\u0713\u0003\u0713\u0003\u0713\u0003\u0713\u0003\u0713\u0003\u0713\u0003",
+ "\u0713\u0003\u0713\u0003\u0713\u0003\u0714\u0003\u0714\u0003\u0714\u0003",
+ "\u0714\u0003\u0714\u0003\u0714\u0003\u0714\u0003\u0714\u0003\u0714\u0003",
+ "\u0714\u0003\u0714\u0003\u0714\u0003\u0714\u0003\u0715\u0003\u0715\u0003",
+ "\u0715\u0003\u0715\u0003\u0715\u0003\u0715\u0003\u0715\u0003\u0715\u0003",
+ "\u0715\u0003\u0715\u0003\u0715\u0003\u0715\u0003\u0715\u0003\u0716\u0003",
+ "\u0716\u0003\u0716\u0003\u0716\u0003\u0716\u0003\u0716\u0003\u0716\u0003",
+ "\u0716\u0003\u0716\u0003\u0716\u0003\u0716\u0003\u0716\u0003\u0716\u0003",
+ "\u0716\u0003\u0716\u0003\u0716\u0003\u0716\u0003\u0716\u0003\u0716\u0003",
+ "\u0717\u0003\u0717\u0003\u0717\u0003\u0717\u0003\u0717\u0003\u0717\u0003",
+ "\u0717\u0003\u0717\u0003\u0717\u0003\u0717\u0003\u0718\u0003\u0718\u0003",
+ "\u0718\u0003\u0718\u0003\u0718\u0003\u0718\u0003\u0718\u0003\u0718\u0003",
+ "\u0718\u0003\u0718\u0003\u0718\u0003\u0718\u0003\u0718\u0003\u0719\u0003",
+ "\u0719\u0003\u0719\u0003\u0719\u0003\u0719\u0003\u0719\u0003\u0719\u0003",
+ "\u0719\u0003\u0719\u0003\u0719\u0003\u0719\u0003\u0719\u0003\u0719\u0003",
+ "\u071a\u0003\u071a\u0003\u071a\u0003\u071a\u0003\u071a\u0003\u071a\u0003",
+ "\u071a\u0003\u071a\u0003\u071a\u0003\u071a\u0003\u071a\u0003\u071a\u0003",
+ "\u071a\u0003\u071b\u0003\u071b\u0003\u071b\u0003\u071b\u0003\u071b\u0003",
+ "\u071b\u0003\u071b\u0003\u071b\u0003\u071b\u0003\u071b\u0003\u071b\u0003",
+ "\u071b\u0003\u071b\u0003\u071b\u0003\u071b\u0003\u071c\u0003\u071c\u0003",
+ "\u071c\u0003\u071c\u0003\u071c\u0003\u071c\u0003\u071c\u0003\u071c\u0003",
+ "\u071c\u0003\u071c\u0003\u071c\u0003\u071d\u0003\u071d\u0003\u071d\u0003",
+ "\u071d\u0003\u071d\u0003\u071d\u0003\u071d\u0003\u071d\u0003\u071d\u0003",
+ "\u071d\u0003\u071e\u0003\u071e\u0003\u071e\u0003\u071e\u0003\u071e\u0003",
+ "\u071e\u0003\u071e\u0003\u071e\u0003\u071e\u0003\u071e\u0003\u071e\u0003",
+ "\u071e\u0003\u071e\u0003\u071e\u0003\u071e\u0003\u071e\u0003\u071f\u0003",
+ "\u071f\u0003\u071f\u0003\u071f\u0003\u071f\u0003\u071f\u0003\u071f\u0003",
+ "\u071f\u0003\u071f\u0003\u071f\u0003\u071f\u0003\u071f\u0003\u071f\u0003",
+ "\u071f\u0003\u071f\u0003\u0720\u0003\u0720\u0003\u0720\u0003\u0720\u0003",
+ "\u0720\u0003\u0720\u0003\u0720\u0003\u0720\u0003\u0720\u0003\u0720\u0003",
+ "\u0720\u0003\u0720\u0003\u0720\u0003\u0720\u0003\u0721\u0003\u0721\u0003",
+ "\u0721\u0003\u0721\u0003\u0721\u0003\u0721\u0003\u0721\u0003\u0721\u0003",
+ "\u0721\u0003\u0721\u0003\u0721\u0003\u0721\u0003\u0721\u0003\u0721\u0003",
+ "\u0722\u0003\u0722\u0003\u0722\u0003\u0722\u0003\u0722\u0003\u0722\u0003",
+ "\u0722\u0003\u0722\u0003\u0722\u0003\u0722\u0003\u0722\u0003\u0722\u0003",
+ "\u0722\u0003\u0722\u0003\u0723\u0003\u0723\u0003\u0723\u0003\u0723\u0003",
+ "\u0723\u0003\u0723\u0003\u0723\u0003\u0723\u0003\u0723\u0003\u0723\u0003",
+ "\u0723\u0003\u0723\u0003\u0724\u0003\u0724\u0003\u0724\u0003\u0724\u0003",
+ "\u0724\u0003\u0724\u0003\u0724\u0003\u0724\u0003\u0724\u0003\u0724\u0003",
+ "\u0724\u0003\u0724\u0003\u0724\u0003\u0725\u0003\u0725\u0003\u0725\u0003",
+ "\u0725\u0003\u0725\u0003\u0725\u0003\u0725\u0003\u0725\u0003\u0725\u0003",
+ "\u0725\u0003\u0725\u0003\u0725\u0003\u0725\u0003\u0726\u0003\u0726\u0003",
+ "\u0726\u0003\u0726\u0003\u0726\u0003\u0726\u0003\u0726\u0003\u0726\u0003",
+ "\u0726\u0003\u0726\u0003\u0726\u0003\u0726\u0003\u0727\u0003\u0727\u0003",
+ "\u0727\u0003\u0727\u0003\u0727\u0003\u0727\u0003\u0727\u0003\u0727\u0003",
+ "\u0727\u0003\u0727\u0003\u0727\u0003\u0727\u0003\u0727\u0003\u0727\u0003",
+ "\u0728\u0003\u0728\u0003\u0728\u0003\u0728\u0003\u0728\u0003\u0728\u0003",
+ "\u0728\u0003\u0728\u0003\u0728\u0003\u0728\u0003\u0728\u0003\u0728\u0003",
+ "\u0728\u0003\u0728\u0003\u0729\u0003\u0729\u0003\u0729\u0003\u0729\u0003",
+ "\u0729\u0003\u0729\u0003\u0729\u0003\u0729\u0003\u0729\u0003\u0729\u0003",
+ "\u0729\u0003\u072a\u0003\u072a\u0003\u072a\u0003\u072a\u0003\u072a\u0003",
+ "\u072a\u0003\u072a\u0003\u072a\u0003\u072a\u0003\u072a\u0003\u072a\u0003",
+ "\u072a\u0003\u072a\u0003\u072a\u0003\u072b\u0003\u072b\u0003\u072b\u0003",
+ "\u072b\u0003\u072b\u0003\u072b\u0003\u072b\u0003\u072b\u0003\u072b\u0003",
+ "\u072b\u0003\u072b\u0003\u072b\u0003\u072b\u0003\u072b\u0003\u072b\u0003",
+ "\u072b\u0003\u072b\u0003\u072b\u0003\u072c\u0003\u072c\u0003\u072c\u0003",
+ "\u072c\u0003\u072c\u0003\u072c\u0003\u072c\u0003\u072c\u0003\u072c\u0003",
+ "\u072c\u0003\u072c\u0003\u072c\u0003\u072d\u0003\u072d\u0003\u072d\u0003",
+ "\u072d\u0003\u072d\u0003\u072d\u0003\u072d\u0003\u072d\u0003\u072d\u0003",
+ "\u072d\u0003\u072d\u0003\u072d\u0003\u072d\u0003\u072e\u0003\u072e\u0003",
+ "\u072e\u0003\u072e\u0003\u072e\u0003\u072e\u0003\u072e\u0003\u072e\u0003",
+ "\u072e\u0003\u072e\u0003\u072e\u0003\u072e\u0003\u072e\u0003\u072e\u0003",
+ "\u072e\u0003\u072e\u0003\u072f\u0003\u072f\u0003\u072f\u0003\u072f\u0003",
+ "\u072f\u0003\u072f\u0003\u072f\u0003\u072f\u0003\u072f\u0003\u072f\u0003",
+ "\u072f\u0003\u072f\u0003\u072f\u0003\u072f\u0003\u072f\u0003\u072f\u0003",
+ "\u0730\u0003\u0730\u0003\u0730\u0003\u0730\u0003\u0730\u0003\u0730\u0003",
+ "\u0730\u0003\u0730\u0003\u0730\u0003\u0730\u0003\u0730\u0003\u0730\u0003",
+ "\u0731\u0003\u0731\u0003\u0731\u0003\u0731\u0003\u0731\u0003\u0731\u0003",
+ "\u0731\u0003\u0731\u0003\u0731\u0003\u0731\u0003\u0731\u0003\u0731\u0003",
+ "\u0731\u0003\u0731\u0003\u0731\u0003\u0731\u0003\u0731\u0003\u0732\u0003",
+ "\u0732\u0003\u0732\u0003\u0732\u0003\u0732\u0003\u0732\u0003\u0732\u0003",
+ "\u0732\u0003\u0732\u0003\u0732\u0003\u0732\u0003\u0732\u0003\u0732\u0003",
+ "\u0733\u0003\u0733\u0003\u0733\u0003\u0733\u0003\u0733\u0003\u0733\u0003",
+ "\u0733\u0003\u0733\u0003\u0733\u0003\u0733\u0003\u0733\u0003\u0733\u0003",
+ "\u0733\u0003\u0734\u0003\u0734\u0003\u0734\u0003\u0734\u0003\u0734\u0003",
+ "\u0734\u0003\u0734\u0003\u0734\u0003\u0734\u0003\u0734\u0003\u0734\u0003",
+ "\u0734\u0003\u0734\u0003\u0735\u0003\u0735\u0003\u0735\u0003\u0735\u0003",
+ "\u0735\u0003\u0735\u0003\u0735\u0003\u0735\u0003\u0735\u0003\u0735\u0003",
+ "\u0735\u0003\u0735\u0003\u0735\u0003\u0735\u0003\u0736\u0003\u0736\u0003",
+ "\u0736\u0003\u0736\u0003\u0736\u0003\u0736\u0003\u0736\u0003\u0736\u0003",
+ "\u0736\u0003\u0736\u0003\u0736\u0003\u0737\u0003\u0737\u0003\u0737\u0003",
+ "\u0737\u0003\u0737\u0003\u0737\u0003\u0737\u0003\u0737\u0003\u0737\u0003",
+ "\u0737\u0003\u0737\u0003\u0737\u0003\u0737\u0003\u0737\u0003\u0737\u0003",
+ "\u0737\u0003\u0737\u0003\u0738\u0003\u0738\u0003\u0738\u0003\u0738\u0003",
+ "\u0738\u0003\u0738\u0003\u0738\u0003\u0738\u0003\u0738\u0003\u0738\u0003",
+ "\u0738\u0003\u0738\u0003\u0738\u0003\u0738\u0003\u0738\u0003\u0738\u0003",
+ "\u0739\u0003\u0739\u0003\u0739\u0003\u0739\u0003\u0739\u0003\u0739\u0003",
+ "\u0739\u0003\u0739\u0003\u0739\u0003\u0739\u0003\u0739\u0003\u0739\u0003",
+ "\u0739\u0003\u073a\u0003\u073a\u0003\u073a\u0003\u073a\u0003\u073a\u0003",
+ "\u073a\u0003\u073a\u0003\u073a\u0003\u073a\u0003\u073a\u0003\u073a\u0003",
+ "\u073a\u0003\u073a\u0003\u073a\u0003\u073a\u0003\u073b\u0003\u073b\u0003",
+ "\u073b\u0003\u073b\u0003\u073b\u0003\u073b\u0003\u073b\u0003\u073b\u0003",
+ "\u073b\u0003\u073b\u0003\u073b\u0003\u073b\u0003\u073b\u0003\u073b\u0003",
+ "\u073b\u0003\u073b\u0003\u073c\u0003\u073c\u0003\u073c\u0003\u073c\u0003",
+ "\u073c\u0003\u073c\u0003\u073c\u0003\u073c\u0003\u073c\u0003\u073c\u0003",
+ "\u073c\u0003\u073c\u0003\u073c\u0003\u073c\u0003\u073c\u0003\u073c\u0003",
+ "\u073d\u0003\u073d\u0003\u073d\u0003\u073d\u0003\u073d\u0003\u073d\u0003",
+ "\u073d\u0003\u073d\u0003\u073d\u0003\u073d\u0003\u073d\u0003\u073d\u0003",
+ "\u073e\u0003\u073e\u0003\u073e\u0003\u073e\u0003\u073e\u0003\u073e\u0003",
+ "\u073e\u0003\u073e\u0003\u073e\u0003\u073e\u0003\u073e\u0003\u073e\u0003",
+ "\u073e\u0003\u073e\u0003\u073f\u0003\u073f\u0003\u073f\u0003\u073f\u0003",
+ "\u073f\u0003\u073f\u0003\u073f\u0003\u073f\u0003\u073f\u0003\u073f\u0003",
+ "\u073f\u0003\u073f\u0003\u073f\u0003\u073f\u0003\u073f\u0003\u073f\u0003",
+ "\u0740\u0003\u0740\u0003\u0740\u0003\u0740\u0003\u0740\u0003\u0740\u0003",
+ "\u0740\u0003\u0740\u0003\u0740\u0003\u0740\u0003\u0740\u0003\u0740\u0003",
+ "\u0740\u0003\u0740\u0003\u0740\u0003\u0740\u0003\u0741\u0003\u0741\u0003",
+ "\u0741\u0003\u0741\u0003\u0741\u0003\u0741\u0003\u0741\u0003\u0741\u0003",
+ "\u0741\u0003\u0741\u0003\u0741\u0003\u0741\u0003\u0741\u0003\u0741\u0003",
+ "\u0741\u0003\u0741\u0003\u0741\u0003\u0742\u0003\u0742\u0003\u0742\u0003",
+ "\u0742\u0003\u0742\u0003\u0742\u0003\u0742\u0003\u0742\u0003\u0742\u0003",
+ "\u0742\u0003\u0742\u0003\u0742\u0003\u0742\u0003\u0742\u0003\u0743\u0003",
+ "\u0743\u0003\u0743\u0003\u0743\u0003\u0743\u0003\u0743\u0003\u0743\u0003",
+ "\u0743\u0003\u0743\u0003\u0743\u0003\u0743\u0003\u0743\u0003\u0743\u0003",
+ "\u0743\u0003\u0744\u0003\u0744\u0003\u0744\u0003\u0744\u0003\u0744\u0003",
+ "\u0744\u0003\u0744\u0003\u0744\u0003\u0744\u0003\u0744\u0003\u0744\u0003",
+ "\u0744\u0003\u0744\u0003\u0744\u0003\u0745\u0003\u0745\u0003\u0745\u0003",
+ "\u0745\u0003\u0745\u0003\u0745\u0003\u0745\u0003\u0745\u0003\u0745\u0003",
+ "\u0745\u0003\u0745\u0003\u0745\u0003\u0745\u0003\u0745\u0003\u0745\u0003",
+ "\u0745\u0003\u0746\u0003\u0746\u0003\u0746\u0003\u0746\u0003\u0746\u0003",
+ "\u0746\u0003\u0746\u0003\u0746\u0003\u0746\u0003\u0746\u0003\u0746\u0003",
+ "\u0746\u0003\u0746\u0003\u0746\u0003\u0747\u0003\u0747\u0003\u0747\u0003",
+ "\u0747\u0003\u0747\u0003\u0747\u0003\u0747\u0003\u0747\u0003\u0747\u0003",
+ "\u0747\u0003\u0747\u0003\u0747\u0003\u0747\u0003\u0747\u0003\u0748\u0003",
+ "\u0748\u0003\u0748\u0003\u0748\u0003\u0748\u0003\u0748\u0003\u0748\u0003",
+ "\u0748\u0003\u0748\u0003\u0748\u0003\u0748\u0003\u0748\u0003\u0748\u0003",
+ "\u0748\u0003\u0749\u0003\u0749\u0003\u0749\u0003\u0749\u0003\u0749\u0003",
+ "\u0749\u0003\u0749\u0003\u0749\u0003\u0749\u0003\u0749\u0003\u0749\u0003",
+ "\u0749\u0003\u0749\u0003\u0749\u0003\u074a\u0003\u074a\u0003\u074a\u0003",
+ "\u074a\u0003\u074a\u0003\u074a\u0003\u074a\u0003\u074a\u0003\u074a\u0003",
+ "\u074a\u0003\u074a\u0003\u074a\u0003\u074a\u0003\u074a\u0003\u074b\u0003",
+ "\u074b\u0003\u074b\u0003\u074b\u0003\u074b\u0003\u074b\u0003\u074b\u0003",
+ "\u074b\u0003\u074b\u0003\u074b\u0003\u074b\u0003\u074b\u0003\u074b\u0003",
+ "\u074b\u0003\u074c\u0003\u074c\u0003\u074c\u0003\u074c\u0003\u074c\u0003",
+ "\u074c\u0003\u074c\u0003\u074c\u0003\u074c\u0003\u074c\u0003\u074c\u0003",
+ "\u074c\u0003\u074c\u0003\u074c\u0003\u074c\u0003\u074d\u0003\u074d\u0003",
+ "\u074d\u0003\u074d\u0003\u074d\u0003\u074d\u0003\u074d\u0003\u074d\u0003",
+ "\u074d\u0003\u074d\u0003\u074d\u0003\u074d\u0003\u074d\u0003\u074d\u0003",
+ "\u074e\u0003\u074e\u0003\u074e\u0003\u074e\u0003\u074e\u0003\u074e\u0003",
+ "\u074e\u0003\u074e\u0003\u074e\u0003\u074e\u0003\u074e\u0003\u074e\u0003",
+ "\u074e\u0003\u074e\u0003\u074e\u0003\u074f\u0003\u074f\u0003\u074f\u0003",
+ "\u074f\u0003\u074f\u0003\u074f\u0003\u074f\u0003\u074f\u0003\u074f\u0003",
+ "\u074f\u0003\u074f\u0003\u074f\u0003\u074f\u0003\u074f\u0003\u074f\u0003",
+ "\u0750\u0003\u0750\u0003\u0750\u0003\u0750\u0003\u0750\u0003\u0750\u0003",
+ "\u0750\u0003\u0750\u0003\u0750\u0003\u0750\u0003\u0750\u0003\u0750\u0003",
+ "\u0750\u0003\u0750\u0003\u0751\u0003\u0751\u0003\u0751\u0003\u0751\u0003",
+ "\u0751\u0003\u0751\u0003\u0751\u0003\u0751\u0003\u0751\u0003\u0751\u0003",
+ "\u0751\u0003\u0751\u0003\u0751\u0003\u0751\u0003\u0752\u0003\u0752\u0003",
+ "\u0752\u0003\u0752\u0003\u0752\u0003\u0752\u0003\u0752\u0003\u0752\u0003",
+ "\u0752\u0003\u0752\u0003\u0752\u0003\u0752\u0003\u0752\u0003\u0752\u0003",
+ "\u0753\u0003\u0753\u0003\u0753\u0003\u0753\u0003\u0753\u0003\u0753\u0003",
+ "\u0753\u0003\u0753\u0003\u0753\u0003\u0753\u0003\u0753\u0003\u0753\u0003",
+ "\u0753\u0003\u0753\u0003\u0754\u0003\u0754\u0003\u0754\u0003\u0754\u0003",
+ "\u0754\u0003\u0754\u0003\u0754\u0003\u0754\u0003\u0754\u0003\u0754\u0003",
+ "\u0754\u0003\u0754\u0003\u0754\u0003\u0754\u0003\u0755\u0003\u0755\u0003",
+ "\u0755\u0003\u0755\u0003\u0755\u0003\u0755\u0003\u0755\u0003\u0755\u0003",
+ "\u0755\u0003\u0755\u0003\u0755\u0003\u0755\u0003\u0755\u0003\u0755\u0003",
+ "\u0756\u0003\u0756\u0003\u0756\u0003\u0756\u0003\u0756\u0003\u0756\u0003",
+ "\u0756\u0003\u0756\u0003\u0756\u0003\u0756\u0003\u0756\u0003\u0756\u0003",
+ "\u0756\u0003\u0756\u0003\u0757\u0003\u0757\u0003\u0757\u0003\u0757\u0003",
+ "\u0757\u0003\u0757\u0003\u0757\u0003\u0757\u0003\u0757\u0003\u0757\u0003",
+ "\u0757\u0003\u0757\u0003\u0757\u0003\u0758\u0003\u0758\u0003\u0758\u0003",
+ "\u0758\u0003\u0758\u0003\u0758\u0003\u0758\u0003\u0758\u0003\u0758\u0003",
+ "\u0758\u0003\u0758\u0003\u0758\u0003\u0758\u0003\u0758\u0003\u0759\u0003",
+ "\u0759\u0003\u0759\u0003\u0759\u0003\u0759\u0003\u0759\u0003\u0759\u0003",
+ "\u0759\u0003\u0759\u0003\u0759\u0003\u0759\u0003\u0759\u0003\u0759\u0003",
+ "\u0759\u0003\u075a\u0003\u075a\u0003\u075a\u0003\u075a\u0003\u075a\u0003",
+ "\u075a\u0003\u075a\u0003\u075a\u0003\u075a\u0003\u075a\u0003\u075a\u0003",
+ "\u075a\u0003\u075a\u0003\u075a\u0003\u075a\u0003\u075a\u0003\u075a\u0003",
+ "\u075a\u0003\u075b\u0003\u075b\u0003\u075b\u0003\u075b\u0003\u075b\u0003",
+ "\u075b\u0003\u075b\u0003\u075b\u0003\u075b\u0003\u075b\u0003\u075b\u0003",
+ "\u075b\u0003\u075b\u0003\u075b\u0003\u075c\u0003\u075c\u0003\u075c\u0003",
+ "\u075c\u0003\u075c\u0003\u075c\u0003\u075c\u0003\u075c\u0003\u075c\u0003",
+ "\u075c\u0003\u075c\u0003\u075c\u0003\u075c\u0003\u075c\u0003\u075c\u0003",
+ "\u075c\u0003\u075d\u0003\u075d\u0003\u075d\u0003\u075d\u0003\u075d\u0003",
+ "\u075d\u0003\u075d\u0003\u075d\u0003\u075d\u0003\u075d\u0003\u075d\u0003",
+ "\u075d\u0003\u075d\u0003\u075d\u0003\u075d\u0003\u075e\u0003\u075e\u0003",
+ "\u075e\u0003\u075e\u0003\u075e\u0003\u075e\u0003\u075e\u0003\u075e\u0003",
+ "\u075e\u0003\u075e\u0003\u075e\u0003\u075e\u0003\u075f\u0003\u075f\u0003",
+ "\u075f\u0003\u075f\u0003\u075f\u0003\u075f\u0003\u075f\u0003\u075f\u0003",
+ "\u075f\u0003\u075f\u0003\u075f\u0003\u075f\u0003\u075f\u0003\u075f\u0003",
+ "\u075f\u0003\u075f\u0003\u075f\u0003\u0760\u0003\u0760\u0003\u0760\u0003",
+ "\u0760\u0003\u0760\u0003\u0760\u0003\u0760\u0003\u0760\u0003\u0760\u0003",
+ "\u0760\u0003\u0760\u0003\u0760\u0003\u0760\u0003\u0760\u0003\u0761\u0003",
+ "\u0761\u0003\u0761\u0003\u0761\u0003\u0761\u0003\u0761\u0003\u0761\u0003",
+ "\u0761\u0003\u0761\u0003\u0761\u0003\u0761\u0003\u0761\u0003\u0761\u0003",
+ "\u0761\u0003\u0761\u0003\u0761\u0003\u0762\u0003\u0762\u0003\u0762\u0003",
+ "\u0762\u0003\u0762\u0003\u0762\u0003\u0762\u0003\u0762\u0003\u0762\u0003",
+ "\u0762\u0003\u0762\u0003\u0762\u0003\u0762\u0003\u0762\u0003\u0763\u0003",
+ "\u0763\u0003\u0763\u0003\u0763\u0003\u0763\u0003\u0763\u0003\u0763\u0003",
+ "\u0763\u0003\u0763\u0003\u0763\u0003\u0763\u0003\u0763\u0003\u0764\u0003",
+ "\u0764\u0003\u0764\u0003\u0764\u0003\u0764\u0003\u0764\u0003\u0764\u0003",
+ "\u0764\u0003\u0764\u0003\u0764\u0003\u0764\u0003\u0764\u0003\u0764\u0003",
+ "\u0765\u0003\u0765\u0003\u0765\u0003\u0765\u0003\u0765\u0003\u0765\u0003",
+ "\u0765\u0003\u0765\u0003\u0765\u0003\u0765\u0003\u0765\u0003\u0765\u0003",
+ "\u0765\u0003\u0766\u0003\u0766\u0003\u0766\u0003\u0766\u0003\u0766\u0003",
+ "\u0766\u0003\u0766\u0003\u0766\u0003\u0766\u0003\u0766\u0003\u0766\u0003",
+ "\u0766\u0003\u0766\u0003\u0766\u0003\u0766\u0003\u0766\u0003\u0766\u0003",
+ "\u0766\u0003\u0767\u0003\u0767\u0003\u0767\u0003\u0767\u0003\u0767\u0003",
+ "\u0767\u0003\u0767\u0003\u0767\u0003\u0767\u0003\u0767\u0003\u0767\u0003",
+ "\u0767\u0003\u0767\u0003\u0767\u0003\u0767\u0003\u0767\u0003\u0767\u0003",
+ "\u0768\u0003\u0768\u0003\u0768\u0003\u0768\u0003\u0768\u0003\u0768\u0003",
+ "\u0768\u0003\u0768\u0003\u0768\u0003\u0768\u0003\u0768\u0003\u0768\u0003",
+ "\u0768\u0003\u0768\u0003\u0768\u0003\u0769\u0003\u0769\u0003\u0769\u0003",
+ "\u0769\u0003\u0769\u0003\u0769\u0003\u0769\u0003\u0769\u0003\u0769\u0003",
+ "\u0769\u0003\u0769\u0003\u0769\u0003\u0769\u0003\u0769\u0003\u0769\u0003",
+ "\u0769\u0003\u076a\u0003\u076a\u0003\u076a\u0003\u076a\u0003\u076a\u0003",
+ "\u076a\u0003\u076a\u0003\u076a\u0003\u076a\u0003\u076a\u0003\u076a\u0003",
+ "\u076a\u0003\u076a\u0003\u076a\u0003\u076b\u0003\u076b\u0003\u076b\u0003",
+ "\u076b\u0003\u076b\u0003\u076b\u0003\u076b\u0003\u076b\u0003\u076b\u0003",
+ "\u076b\u0003\u076b\u0003\u076b\u0003\u076b\u0003\u076b\u0003\u076b\u0003",
+ "\u076b\u0003\u076c\u0003\u076c\u0003\u076c\u0003\u076c\u0003\u076c\u0003",
+ "\u076c\u0003\u076c\u0003\u076c\u0003\u076c\u0003\u076c\u0003\u076c\u0003",
+ "\u076c\u0003\u076c\u0003\u076c\u0003\u076c\u0003\u076c\u0003\u076d\u0003",
+ "\u076d\u0003\u076d\u0003\u076d\u0003\u076d\u0003\u076d\u0003\u076d\u0003",
+ "\u076d\u0003\u076d\u0003\u076d\u0003\u076d\u0003\u076d\u0003\u076d\u0003",
+ "\u076d\u0003\u076d\u0003\u076e\u0003\u076e\u0003\u076e\u0003\u076e\u0003",
+ "\u076e\u0003\u076e\u0003\u076e\u0003\u076e\u0003\u076e\u0003\u076e\u0003",
+ "\u076e\u0003\u076e\u0003\u076e\u0003\u076e\u0003\u076f\u0003\u076f\u0003",
+ "\u076f\u0003\u076f\u0003\u076f\u0003\u076f\u0003\u076f\u0003\u076f\u0003",
+ "\u076f\u0003\u076f\u0003\u076f\u0003\u076f\u0003\u076f\u0003\u076f\u0003",
+ "\u076f\u0003\u076f\u0003\u076f\u0003\u076f\u0003\u0770\u0003\u0770\u0003",
+ "\u0770\u0003\u0770\u0003\u0770\u0003\u0770\u0003\u0770\u0003\u0770\u0003",
+ "\u0770\u0003\u0770\u0003\u0770\u0003\u0770\u0003\u0771\u0003\u0771\u0003",
+ "\u0771\u0003\u0771\u0003\u0771\u0003\u0771\u0003\u0771\u0003\u0771\u0003",
+ "\u0771\u0003\u0771\u0003\u0771\u0003\u0771\u0003\u0771\u0003\u0771\u0003",
+ "\u0771\u0003\u0771\u0003\u0772\u0003\u0772\u0003\u0772\u0003\u0772\u0003",
+ "\u0772\u0003\u0772\u0003\u0772\u0003\u0772\u0003\u0772\u0003\u0772\u0003",
+ "\u0772\u0003\u0772\u0003\u0772\u0003\u0772\u0003\u0772\u0003\u0772\u0003",
+ "\u0773\u0003\u0773\u0003\u0773\u0003\u0773\u0003\u0773\u0003\u0773\u0003",
+ "\u0773\u0003\u0773\u0003\u0773\u0003\u0773\u0003\u0773\u0003\u0773\u0003",
+ "\u0773\u0003\u0773\u0003\u0773\u0003\u0773\u0003\u0773\u0003\u0774\u0003",
+ "\u0774\u0003\u0774\u0003\u0774\u0003\u0774\u0003\u0774\u0003\u0774\u0003",
+ "\u0774\u0003\u0774\u0003\u0774\u0003\u0774\u0003\u0774\u0003\u0774\u0003",
+ "\u0774\u0003\u0774\u0003\u0774\u0003\u0774\u0003\u0774\u0003\u0774\u0003",
+ "\u0775\u0003\u0775\u0003\u0775\u0003\u0775\u0003\u0775\u0003\u0775\u0003",
+ "\u0775\u0003\u0775\u0003\u0775\u0003\u0775\u0003\u0775\u0003\u0775\u0003",
+ "\u0775\u0003\u0775\u0003\u0776\u0003\u0776\u0003\u0776\u0003\u0776\u0003",
+ "\u0776\u0003\u0776\u0003\u0776\u0003\u0776\u0003\u0776\u0003\u0776\u0003",
+ "\u0776\u0003\u0777\u0003\u0777\u0003\u0777\u0003\u0777\u0003\u0777\u0003",
+ "\u0777\u0003\u0777\u0003\u0778\u0003\u0778\u0003\u0778\u0003\u0778\u0003",
+ "\u0778\u0003\u0778\u0003\u0778\u0003\u0778\u0003\u0778\u0003\u0778\u0003",
+ "\u0778\u0003\u0778\u0003\u0779\u0003\u0779\u0003\u0779\u0003\u0779\u0003",
+ "\u0779\u0003\u0779\u0003\u077a\u0003\u077a\u0003\u077a\u0003\u077a\u0003",
+ "\u077a\u0003\u077a\u0003\u077b\u0003\u077b\u0003\u077b\u0003\u077b\u0003",
+ "\u077c\u0003\u077c\u0003\u077c\u0003\u077c\u0003\u077c\u0003\u077d\u0003",
+ "\u077d\u0003\u077d\u0003\u077d\u0003\u077e\u0003\u077e\u0003\u077e\u0003",
+ "\u077e\u0003\u077e\u0003\u077e\u0003\u077e\u0003\u077e\u0003\u077e\u0003",
+ "\u077e\u0003\u077e\u0003\u077e\u0003\u077e\u0003\u077e\u0003\u077e\u0003",
+ "\u077e\u0003\u077e\u0003\u077e\u0003\u077e\u0003\u077e\u0003\u077f\u0003",
+ "\u077f\u0003\u077f\u0003\u077f\u0003\u077f\u0003\u077f\u0003\u077f\u0003",
+ "\u077f\u0003\u077f\u0003\u0780\u0003\u0780\u0003\u0780\u0003\u0780\u0003",
+ "\u0780\u0003\u0780\u0003\u0780\u0003\u0780\u0003\u0780\u0003\u0781\u0003",
+ "\u0781\u0003\u0781\u0003\u0781\u0003\u0781\u0003\u0781\u0003\u0781\u0003",
+ "\u0781\u0003\u0781\u0003\u0781\u0003\u0782\u0003\u0782\u0003\u0782\u0003",
+ "\u0782\u0003\u0782\u0003\u0782\u0003\u0782\u0003\u0782\u0003\u0782\u0003",
+ "\u0782\u0003\u0782\u0003\u0783\u0003\u0783\u0003\u0783\u0003\u0783\u0003",
+ "\u0783\u0003\u0784\u0003\u0784\u0003\u0784\u0003\u0784\u0003\u0784\u0003",
+ "\u0785\u0003\u0785\u0003\u0785\u0003\u0785\u0003\u0785\u0003\u0786\u0003",
+ "\u0786\u0003\u0786\u0003\u0786\u0003\u0786\u0003\u0787\u0003\u0787\u0003",
+ "\u0787\u0003\u0787\u0003\u0788\u0003\u0788\u0003\u0788\u0003\u0788\u0003",
+ "\u0788\u0003\u0788\u0003\u0788\u0003\u0789\u0003\u0789\u0003\u0789\u0003",
+ "\u0789\u0003\u0789\u0003\u0789\u0003\u0789\u0003\u0789\u0003\u078a\u0003",
+ "\u078a\u0003\u078a\u0003\u078a\u0003\u078a\u0003\u078b\u0003\u078b\u0003",
+ "\u078b\u0003\u078b\u0003\u078b\u0003\u078c\u0003\u078c\u0003\u078c\u0003",
+ "\u078c\u0003\u078c\u0003\u078c\u0003\u078c\u0003\u078c\u0003\u078d\u0003",
+ "\u078d\u0003\u078d\u0003\u078d\u0003\u078d\u0003\u078d\u0003\u078d\u0003",
+ "\u078d\u0003\u078d\u0003\u078d\u0003\u078d\u0003\u078d\u0003\u078d\u0003",
+ "\u078d\u0003\u078d\u0003\u078d\u0003\u078d\u0003\u078d\u0003\u078d\u0003",
+ "\u078d\u0003\u078d\u0003\u078d\u0003\u078d\u0003\u078d\u0003\u078d\u0003",
+ "\u078d\u0003\u078d\u0003\u078d\u0003\u078e\u0003\u078e\u0003\u078e\u0003",
+ "\u078e\u0003\u078e\u0003\u078e\u0003\u078e\u0003\u078e\u0003\u078e\u0003",
+ "\u078e\u0003\u078f\u0003\u078f\u0003\u078f\u0003\u078f\u0003\u078f\u0003",
+ "\u078f\u0003\u078f\u0003\u078f\u0003\u078f\u0003\u078f\u0003\u078f\u0003",
+ "\u078f\u0003\u078f\u0003\u078f\u0003\u078f\u0003\u078f\u0003\u078f\u0003",
+ "\u078f\u0003\u078f\u0003\u078f\u0003\u078f\u0003\u078f\u0003\u078f\u0003",
+ "\u078f\u0003\u078f\u0003\u078f\u0003\u078f\u0003\u0790\u0003\u0790\u0003",
+ "\u0790\u0003\u0790\u0003\u0790\u0003\u0790\u0003\u0790\u0003\u0790\u0003",
+ "\u0790\u0003\u0790\u0003\u0790\u0003\u0790\u0003\u0790\u0003\u0790\u0003",
+ "\u0790\u0003\u0790\u0003\u0790\u0003\u0790\u0003\u0790\u0003\u0790\u0003",
+ "\u0790\u0003\u0790\u0003\u0790\u0003\u0790\u0003\u0791\u0003\u0791\u0003",
+ "\u0791\u0003\u0791\u0003\u0791\u0003\u0791\u0003\u0792\u0003\u0792\u0003",
+ "\u0792\u0003\u0792\u0003\u0792\u0003\u0793\u0003\u0793\u0003\u0793\u0003",
+ "\u0793\u0003\u0793\u0003\u0793\u0003\u0793\u0003\u0793\u0003\u0793\u0003",
+ "\u0794\u0003\u0794\u0003\u0794\u0003\u0794\u0003\u0794\u0003\u0794\u0003",
+ "\u0794\u0003\u0794\u0003\u0794\u0003\u0794\u0003\u0794\u0003\u0794\u0003",
+ "\u0794\u0003\u0794\u0003\u0795\u0003\u0795\u0003\u0795\u0003\u0795\u0003",
+ "\u0795\u0003\u0795\u0003\u0795\u0003\u0795\u0003\u0795\u0003\u0795\u0003",
+ "\u0795\u0003\u0795\u0003\u0795\u0003\u0795\u0003\u0796\u0003\u0796\u0003",
+ "\u0796\u0003\u0796\u0003\u0796\u0003\u0796\u0003\u0796\u0003\u0796\u0003",
+ "\u0796\u0003\u0796\u0003\u0796\u0003\u0796\u0003\u0796\u0003\u0796\u0003",
+ "\u0796\u0003\u0796\u0003\u0797\u0003\u0797\u0003\u0797\u0003\u0797\u0003",
+ "\u0797\u0003\u0797\u0003\u0797\u0003\u0797\u0003\u0797\u0003\u0797\u0003",
+ "\u0797\u0003\u0797\u0003\u0797\u0003\u0797\u0003\u0797\u0003\u0797\u0003",
+ "\u0798\u0003\u0798\u0003\u0798\u0003\u0798\u0003\u0798\u0003\u0798\u0003",
+ "\u0798\u0003\u0798\u0003\u0798\u0003\u0798\u0003\u0798\u0003\u0798\u0003",
+ "\u0798\u0003\u0798\u0003\u0798\u0003\u0798\u0003\u0799\u0003\u0799\u0003",
+ "\u0799\u0003\u0799\u0003\u0799\u0003\u0799\u0003\u0799\u0003\u0799\u0003",
+ "\u0799\u0003\u0799\u0003\u079a\u0003\u079a\u0003\u079a\u0003\u079a\u0003",
+ "\u079a\u0003\u079a\u0003\u079a\u0003\u079b\u0003\u079b\u0003\u079b\u0003",
+ "\u079b\u0003\u079b\u0003\u079b\u0003\u079b\u0003\u079b\u0003\u079c\u0003",
+ "\u079c\u0003\u079c\u0003\u079c\u0003\u079c\u0003\u079c\u0003\u079c\u0003",
+ "\u079c\u0003\u079c\u0003\u079d\u0003\u079d\u0003\u079d\u0003\u079d\u0003",
+ "\u079d\u0003\u079d\u0003\u079d\u0003\u079d\u0003\u079d\u0003\u079d\u0003",
+ "\u079d\u0003\u079d\u0003\u079d\u0003\u079d\u0003\u079d\u0003\u079d\u0003",
+ "\u079d\u0003\u079e\u0003\u079e\u0003\u079e\u0003\u079e\u0003\u079e\u0003",
+ "\u079e\u0003\u079e\u0003\u079e\u0003\u079e\u0003\u079e\u0003\u079e\u0003",
+ "\u079e\u0003\u079e\u0003\u079e\u0003\u079e\u0003\u079e\u0003\u079f\u0003",
+ "\u079f\u0003\u079f\u0003\u079f\u0003\u079f\u0003\u079f\u0003\u079f\u0003",
+ "\u079f\u0003\u07a0\u0003\u07a0\u0003\u07a0\u0003\u07a0\u0003\u07a0\u0003",
+ "\u07a0\u0003\u07a0\u0003\u07a0\u0003\u07a1\u0003\u07a1\u0003\u07a1\u0003",
+ "\u07a1\u0003\u07a1\u0003\u07a1\u0003\u07a1\u0003\u07a1\u0003\u07a1\u0003",
+ "\u07a1\u0003\u07a1\u0003\u07a1\u0003\u07a1\u0003\u07a1\u0003\u07a2\u0003",
+ "\u07a2\u0003\u07a2\u0003\u07a2\u0003\u07a2\u0003\u07a2\u0003\u07a2\u0003",
+ "\u07a3\u0003\u07a3\u0003\u07a3\u0003\u07a3\u0003\u07a3\u0003\u07a3\u0003",
+ "\u07a3\u0003\u07a3\u0003\u07a3\u0003\u07a3\u0003\u07a3\u0003\u07a3\u0003",
+ "\u07a3\u0003\u07a3\u0003\u07a4\u0003\u07a4\u0003\u07a4\u0003\u07a4\u0003",
+ "\u07a4\u0003\u07a4\u0003\u07a4\u0003\u07a4\u0003\u07a4\u0003\u07a5\u0003",
+ "\u07a5\u0003\u07a5\u0003\u07a5\u0003\u07a5\u0003\u07a5\u0003\u07a5\u0003",
+ "\u07a5\u0003\u07a5\u0003\u07a6\u0003\u07a6\u0003\u07a6\u0003\u07a6\u0003",
+ "\u07a6\u0003\u07a6\u0003\u07a6\u0003\u07a6\u0003\u07a6\u0003\u07a6\u0003",
+ "\u07a7\u0003\u07a7\u0003\u07a7\u0003\u07a7\u0003\u07a7\u0003\u07a7\u0003",
+ "\u07a7\u0003\u07a7\u0003\u07a7\u0003\u07a8\u0003\u07a8\u0003\u07a8\u0003",
+ "\u07a8\u0003\u07a8\u0003\u07a8\u0003\u07a8\u0003\u07a8\u0003\u07a8\u0003",
+ "\u07a8\u0003\u07a8\u0003\u07a8\u0003\u07a8\u0003\u07a8\u0003\u07a8\u0003",
+ "\u07a9\u0003\u07a9\u0003\u07a9\u0003\u07a9\u0003\u07a9\u0003\u07a9\u0003",
+ "\u07a9\u0003\u07a9\u0003\u07a9\u0003\u07a9\u0003\u07a9\u0003\u07a9\u0003",
+ "\u07a9\u0003\u07aa\u0003\u07aa\u0003\u07aa\u0003\u07aa\u0003\u07aa\u0003",
+ "\u07aa\u0003\u07aa\u0003\u07aa\u0003\u07aa\u0003\u07aa\u0003\u07aa\u0003",
+ "\u07aa\u0003\u07aa\u0003\u07aa\u0003\u07aa\u0003\u07aa\u0003\u07ab\u0003",
+ "\u07ab\u0003\u07ab\u0003\u07ab\u0003\u07ab\u0003\u07ab\u0003\u07ab\u0003",
+ "\u07ab\u0003\u07ac\u0003\u07ac\u0003\u07ac\u0003\u07ac\u0003\u07ac\u0003",
+ "\u07ac\u0003\u07ac\u0003\u07ac\u0003\u07ac\u0003\u07ac\u0003\u07ac\u0003",
+ "\u07ad\u0003\u07ad\u0003\u07ad\u0003\u07ae\u0003\u07ae\u0003\u07ae\u0003",
+ "\u07ae\u0003\u07ae\u0003\u07ae\u0003\u07ae\u0003\u07ae\u0003\u07ae\u0003",
+ "\u07ae\u0003\u07ae\u0003\u07ae\u0003\u07ae\u0003\u07ae\u0003\u07af\u0003",
+ "\u07af\u0003\u07af\u0003\u07af\u0003\u07af\u0003\u07af\u0003\u07b0\u0003",
+ "\u07b0\u0003\u07b0\u0003\u07b0\u0003\u07b0\u0003\u07b0\u0003\u07b0\u0003",
+ "\u07b0\u0003\u07b1\u0003\u07b1\u0003\u07b1\u0003\u07b1\u0003\u07b1\u0003",
+ "\u07b1\u0003\u07b1\u0003\u07b1\u0003\u07b1\u0003\u07b2\u0003\u07b2\u0003",
+ "\u07b2\u0003\u07b2\u0003\u07b2\u0003\u07b2\u0003\u07b2\u0003\u07b2\u0003",
+ "\u07b2\u0003\u07b3\u0003\u07b3\u0003\u07b3\u0003\u07b3\u0003\u07b3\u0003",
+ "\u07b3\u0003\u07b3\u0003\u07b3\u0003\u07b3\u0003\u07b3\u0003\u07b3\u0003",
+ "\u07b3\u0003\u07b4\u0003\u07b4\u0003\u07b4\u0003\u07b4\u0003\u07b4\u0003",
+ "\u07b4\u0003\u07b4\u0003\u07b4\u0003\u07b4\u0003\u07b4\u0003\u07b4\u0003",
+ "\u07b4\u0003\u07b4\u0003\u07b4\u0003\u07b4\u0003\u07b4\u0003\u07b4\u0003",
+ "\u07b4\u0003\u07b4\u0003\u07b4\u0003\u07b4\u0003\u07b4\u0003\u07b4\u0003",
+ "\u07b5\u0003\u07b5\u0003\u07b5\u0003\u07b5\u0003\u07b5\u0003\u07b5\u0003",
+ "\u07b5\u0003\u07b5\u0003\u07b5\u0003\u07b5\u0003\u07b5\u0003\u07b5\u0003",
+ "\u07b5\u0003\u07b6\u0003\u07b6\u0003\u07b6\u0003\u07b6\u0003\u07b6\u0003",
+ "\u07b6\u0003\u07b6\u0003\u07b6\u0003\u07b6\u0003\u07b6\u0003\u07b6\u0003",
+ "\u07b7\u0003\u07b7\u0003\u07b7\u0003\u07b7\u0003\u07b7\u0003\u07b7\u0003",
+ "\u07b7\u0003\u07b7\u0003\u07b7\u0003\u07b7\u0003\u07b8\u0003\u07b8\u0003",
+ "\u07b8\u0003\u07b8\u0003\u07b8\u0003\u07b8\u0003\u07b8\u0003\u07b8\u0003",
+ "\u07b8\u0003\u07b8\u0003\u07b8\u0003\u07b8\u0003\u07b9\u0003\u07b9\u0003",
+ "\u07b9\u0003\u07b9\u0003\u07b9\u0003\u07b9\u0003\u07ba\u0003\u07ba\u0003",
+ "\u07ba\u0003\u07ba\u0003\u07ba\u0003\u07ba\u0003\u07ba\u0003\u07ba\u0003",
+ "\u07ba\u0003\u07bb\u0003\u07bb\u0003\u07bb\u0003\u07bb\u0003\u07bb\u0003",
+ "\u07bb\u0003\u07bb\u0003\u07bb\u0003\u07bc\u0003\u07bc\u0003\u07bc\u0003",
+ "\u07bc\u0003\u07bc\u0003\u07bd\u0003\u07bd\u0003\u07bd\u0003\u07bd\u0003",
+ "\u07bd\u0003\u07bd\u0003\u07bd\u0003\u07bd\u0003\u07bd\u0003\u07be\u0003",
+ "\u07be\u0003\u07be\u0003\u07be\u0003\u07be\u0003\u07be\u0003\u07bf\u0003",
+ "\u07bf\u0003\u07bf\u0003\u07bf\u0003\u07bf\u0003\u07bf\u0003\u07bf\u0003",
+ "\u07bf\u0003\u07c0\u0003\u07c0\u0003\u07c0\u0003\u07c0\u0003\u07c0\u0003",
+ "\u07c0\u0003\u07c1\u0003\u07c1\u0003\u07c1\u0003\u07c1\u0003\u07c1\u0003",
+ "\u07c1\u0003\u07c1\u0003\u07c2\u0003\u07c2\u0003\u07c2\u0003\u07c3\u0003",
+ "\u07c3\u0003\u07c3\u0003\u07c3\u0003\u07c3\u0003\u07c3\u0003\u07c4\u0003",
+ "\u07c4\u0003\u07c4\u0003\u07c4\u0003\u07c4\u0003\u07c5\u0003\u07c5\u0003",
+ "\u07c5\u0003\u07c5\u0003\u07c5\u0003\u07c5\u0003\u07c5\u0003\u07c5\u0003",
+ "\u07c5\u0003\u07c5\u0003\u07c6\u0003\u07c6\u0003\u07c6\u0003\u07c6\u0003",
+ "\u07c7\u0003\u07c7\u0003\u07c7\u0003\u07c7\u0003\u07c8\u0003\u07c8\u0003",
+ "\u07c8\u0003\u07c8\u0003\u07c8\u0003\u07c9\u0003\u07c9\u0003\u07c9\u0003",
+ "\u07c9\u0003\u07ca\u0003\u07ca\u0003\u07ca\u0003\u07ca\u0003\u07ca\u0003",
+ "\u07ca\u0003\u07ca\u0003\u07ca\u0003\u07ca\u0003\u07ca\u0003\u07ca\u0003",
+ "\u07cb\u0003\u07cb\u0003\u07cb\u0003\u07cb\u0003\u07cb\u0003\u07cb\u0003",
+ "\u07cb\u0003\u07cb\u0003\u07cb\u0003\u07cb\u0003\u07cc\u0003\u07cc\u0003",
+ "\u07cc\u0003\u07cc\u0003\u07cc\u0003\u07cc\u0003\u07cc\u0003\u07cc\u0003",
+ "\u07cd\u0003\u07cd\u0003\u07cd\u0003\u07cd\u0003\u07cd\u0003\u07cd\u0003",
+ "\u07cd\u0003\u07cd\u0003\u07cd\u0003\u07cd\u0003\u07cd\u0003\u07cd\u0003",
+ "\u07cd\u0003\u07cd\u0003\u07ce\u0003\u07ce\u0003\u07ce\u0003\u07ce\u0003",
+ "\u07ce\u0003\u07ce\u0003\u07cf\u0003\u07cf\u0003\u07cf\u0003\u07cf\u0003",
+ "\u07cf\u0003\u07d0\u0003\u07d0\u0003\u07d0\u0003\u07d0\u0003\u07d0\u0003",
+ "\u07d0\u0003\u07d0\u0003\u07d1\u0003\u07d1\u0003\u07d1\u0003\u07d1\u0003",
+ "\u07d1\u0003\u07d1\u0003\u07d1\u0003\u07d1\u0003\u07d2\u0003\u07d2\u0003",
+ "\u07d2\u0003\u07d2\u0003\u07d2\u0003\u07d2\u0003\u07d3\u0003\u07d3\u0003",
+ "\u07d3\u0003\u07d3\u0003\u07d3\u0003\u07d3\u0003\u07d3\u0003\u07d4\u0003",
+ "\u07d4\u0003\u07d4\u0003\u07d4\u0003\u07d4\u0003\u07d4\u0003\u07d4\u0003",
+ "\u07d5\u0003\u07d5\u0003\u07d5\u0003\u07d5\u0003\u07d5\u0003\u07d5\u0003",
+ "\u07d5\u0003\u07d5\u0003\u07d5\u0003\u07d5\u0003\u07d6\u0003\u07d6\u0003",
+ "\u07d6\u0003\u07d6\u0003\u07d6\u0003\u07d6\u0003\u07d6\u0003\u07d7\u0003",
+ "\u07d7\u0003\u07d7\u0003\u07d7\u0003\u07d7\u0003\u07d7\u0003\u07d7\u0003",
+ "\u07d8\u0003\u07d8\u0003\u07d8\u0003\u07d8\u0003\u07d8\u0003\u07d8\u0003",
+ "\u07d8\u0003\u07d8\u0003\u07d8\u0003\u07d8\u0003\u07d9\u0003\u07d9\u0003",
+ "\u07d9\u0003\u07d9\u0003\u07d9\u0003\u07d9\u0003\u07d9\u0003\u07d9\u0003",
+ "\u07d9\u0003\u07d9\u0003\u07d9\u0003\u07d9\u0003\u07d9\u0003\u07d9\u0003",
+ "\u07d9\u0003\u07d9\u0003\u07d9\u0003\u07d9\u0003\u07d9\u0003\u07d9\u0003",
+ "\u07d9\u0003\u07d9\u0003\u07d9\u0003\u07d9\u0003\u07d9\u0003\u07d9\u0003",
+ "\u07d9\u0003\u07d9\u0003\u07da\u0003\u07da\u0003\u07da\u0003\u07da\u0003",
+ "\u07da\u0003\u07da\u0003\u07da\u0003\u07da\u0003\u07da\u0003\u07da\u0003",
+ "\u07da\u0003\u07da\u0003\u07da\u0003\u07da\u0003\u07da\u0003\u07da\u0003",
+ "\u07da\u0003\u07da\u0003\u07da\u0003\u07da\u0003\u07da\u0003\u07da\u0003",
+ "\u07da\u0003\u07da\u0003\u07da\u0003\u07da\u0003\u07da\u0003\u07da\u0003",
+ "\u07da\u0003\u07da\u0003\u07db\u0003\u07db\u0003\u07db\u0003\u07db\u0003",
+ "\u07db\u0003\u07db\u0003\u07db\u0003\u07db\u0003\u07db\u0003\u07db\u0003",
+ "\u07db\u0003\u07db\u0003\u07db\u0003\u07db\u0003\u07db\u0003\u07db\u0003",
+ "\u07db\u0003\u07db\u0003\u07dc\u0003\u07dc\u0003\u07dc\u0003\u07dc\u0003",
+ "\u07dc\u0003\u07dc\u0003\u07dc\u0003\u07dd\u0003\u07dd\u0003\u07dd\u0003",
+ "\u07dd\u0003\u07dd\u0003\u07dd\u0003\u07dd\u0003\u07dd\u0003\u07dd\u0003",
+ "\u07de\u0003\u07de\u0003\u07de\u0003\u07de\u0003\u07de\u0003\u07de\u0003",
+ "\u07de\u0003\u07de\u0003\u07df\u0003\u07df\u0003\u07df\u0003\u07df\u0003",
+ "\u07df\u0003\u07df\u0003\u07df\u0003\u07e0\u0003\u07e0\u0003\u07e0\u0003",
+ "\u07e0\u0003\u07e0\u0003\u07e0\u0003\u07e0\u0003\u07e0\u0003\u07e0\u0003",
+ "\u07e0\u0003\u07e0\u0003\u07e0\u0003\u07e1\u0003\u07e1\u0003\u07e1\u0003",
+ "\u07e1\u0003\u07e1\u0003\u07e1\u0003\u07e1\u0003\u07e1\u0003\u07e1\u0003",
+ "\u07e1\u0003\u07e2\u0003\u07e2\u0003\u07e2\u0003\u07e2\u0003\u07e2\u0003",
+ "\u07e2\u0003\u07e2\u0003\u07e2\u0003\u07e2\u0003\u07e2\u0003\u07e2\u0003",
+ "\u07e2\u0003\u07e2\u0003\u07e2\u0003\u07e3\u0003\u07e3\u0003\u07e3\u0003",
+ "\u07e3\u0003\u07e3\u0003\u07e3\u0003\u07e3\u0003\u07e3\u0003\u07e3\u0003",
+ "\u07e3\u0003\u07e3\u0003\u07e3\u0003\u07e3\u0003\u07e4\u0003\u07e4\u0003",
+ "\u07e4\u0003\u07e4\u0003\u07e4\u0003\u07e4\u0003\u07e4\u0003\u07e4\u0003",
+ "\u07e4\u0003\u07e4\u0003\u07e4\u0003\u07e4\u0003\u07e5\u0003\u07e5\u0003",
+ "\u07e5\u0003\u07e5\u0003\u07e5\u0003\u07e5\u0003\u07e6\u0003\u07e6\u0003",
+ "\u07e6\u0003\u07e6\u0003\u07e6\u0003\u07e6\u0003\u07e6\u0003\u07e6\u0003",
+ "\u07e6\u0003\u07e7\u0003\u07e7\u0003\u07e7\u0003\u07e7\u0003\u07e7\u0003",
+ "\u07e7\u0003\u07e7\u0003\u07e8\u0003\u07e8\u0003\u07e8\u0003\u07e8\u0003",
+ "\u07e8\u0003\u07e8\u0003\u07e8\u0003\u07e8\u0003\u07e8\u0003\u07e8\u0003",
+ "\u07e9\u0003\u07e9\u0003\u07e9\u0003\u07e9\u0003\u07e9\u0003\u07e9\u0003",
+ "\u07e9\u0003\u07e9\u0003\u07ea\u0003\u07ea\u0003\u07ea\u0003\u07ea\u0003",
+ "\u07ea\u0003\u07ea\u0003\u07ea\u0003\u07eb\u0003\u07eb\u0003\u07eb\u0003",
+ "\u07eb\u0003\u07eb\u0003\u07eb\u0003\u07eb\u0003\u07eb\u0003\u07eb\u0003",
+ "\u07eb\u0003\u07ec\u0003\u07ec\u0003\u07ec\u0003\u07ec\u0003\u07ec\u0003",
+ "\u07ec\u0003\u07ec\u0003\u07ec\u0003\u07ec\u0003\u07ec\u0003\u07ec\u0003",
+ "\u07ec\u0003\u07ed\u0003\u07ed\u0003\u07ed\u0003\u07ed\u0003\u07ed\u0003",
+ "\u07ed\u0003\u07ed\u0003\u07ed\u0003\u07ed\u0003\u07ed\u0003\u07ed\u0003",
+ "\u07ed\u0003\u07ed\u0003\u07ed\u0003\u07ee\u0003\u07ee\u0003\u07ee\u0003",
+ "\u07ee\u0003\u07ee\u0003\u07ee\u0003\u07ee\u0003\u07ee\u0003\u07ef\u0003",
+ "\u07ef\u0003\u07ef\u0003\u07ef\u0003\u07ef\u0003\u07ef\u0003\u07f0\u0003",
+ "\u07f0\u0003\u07f0\u0003\u07f0\u0003\u07f0\u0003\u07f0\u0003\u07f0\u0003",
+ "\u07f1\u0003\u07f1\u0003\u07f1\u0003\u07f1\u0003\u07f1\u0003\u07f1\u0003",
+ "\u07f1\u0003\u07f2\u0003\u07f2\u0003\u07f2\u0003\u07f2\u0003\u07f2\u0003",
+ "\u07f2\u0003\u07f2\u0003\u07f3\u0003\u07f3\u0003\u07f3\u0003\u07f3\u0003",
+ "\u07f3\u0003\u07f3\u0003\u07f4\u0003\u07f4\u0003\u07f4\u0003\u07f4\u0003",
+ "\u07f4\u0003\u07f4\u0003\u07f4\u0003\u07f4\u0003\u07f4\u0003\u07f5\u0003",
+ "\u07f5\u0003\u07f5\u0003\u07f5\u0003\u07f5\u0003\u07f5\u0003\u07f5\u0003",
+ "\u07f5\u0003\u07f5\u0003\u07f5\u0003\u07f5\u0003\u07f6\u0003\u07f6\u0003",
+ "\u07f6\u0003\u07f6\u0003\u07f6\u0003\u07f6\u0003\u07f6\u0003\u07f6\u0003",
+ "\u07f6\u0003\u07f7\u0003\u07f7\u0003\u07f7\u0003\u07f7\u0003\u07f7\u0003",
+ "\u07f7\u0003\u07f7\u0003\u07f7\u0003\u07f7\u0003\u07f7\u0003\u07f7\u0003",
+ "\u07f7\u0003\u07f7\u0003\u07f7\u0003\u07f7\u0003\u07f7\u0003\u07f7\u0003",
+ "\u07f7\u0003\u07f7\u0003\u07f7\u0003\u07f7\u0003\u07f8\u0003\u07f8\u0003",
+ "\u07f8\u0003\u07f8\u0003\u07f8\u0003\u07f8\u0003\u07f8\u0003\u07f8\u0003",
+ "\u07f8\u0003\u07f8\u0003\u07f8\u0003\u07f8\u0003\u07f8\u0003\u07f8\u0003",
+ "\u07f8\u0003\u07f8\u0003\u07f8\u0003\u07f8\u0003\u07f8\u0003\u07f8\u0003",
+ "\u07f8\u0003\u07f8\u0003\u07f8\u0003\u07f8\u0003\u07f8\u0003\u07f8\u0003",
+ "\u07f9\u0003\u07f9\u0003\u07f9\u0003\u07f9\u0003\u07f9\u0003\u07f9\u0003",
+ "\u07f9\u0003\u07f9\u0003\u07f9\u0003\u07fa\u0003\u07fa\u0003\u07fa\u0003",
+ "\u07fa\u0003\u07fa\u0003\u07fa\u0003\u07fa\u0003\u07fa\u0003\u07fa\u0003",
+ "\u07fa\u0003\u07fa\u0003\u07fa\u0003\u07fa\u0003\u07fa\u0003\u07fa\u0003",
+ "\u07fa\u0003\u07fa\u0003\u07fa\u0003\u07fa\u0003\u07fa\u0003\u07fa\u0003",
+ "\u07fa\u0003\u07fb\u0003\u07fb\u0003\u07fb\u0003\u07fb\u0003\u07fb\u0003",
+ "\u07fb\u0003\u07fb\u0003\u07fb\u0003\u07fb\u0003\u07fb\u0003\u07fb\u0003",
+ "\u07fb\u0003\u07fb\u0003\u07fb\u0003\u07fb\u0003\u07fb\u0003\u07fb\u0003",
+ "\u07fb\u0003\u07fb\u0003\u07fb\u0003\u07fb\u0003\u07fb\u0003\u07fc\u0003",
+ "\u07fc\u0003\u07fc\u0003\u07fc\u0003\u07fc\u0003\u07fc\u0003\u07fc\u0003",
+ "\u07fc\u0003\u07fc\u0003\u07fc\u0003\u07fc\u0003\u07fc\u0003\u07fc\u0003",
+ "\u07fc\u0003\u07fc\u0003\u07fc\u0003\u07fc\u0003\u07fc\u0003\u07fc\u0003",
+ "\u07fc\u0003\u07fd\u0003\u07fd\u0003\u07fd\u0003\u07fd\u0003\u07fd\u0003",
+ "\u07fd\u0003\u07fd\u0003\u07fd\u0003\u07fd\u0003\u07fd\u0003\u07fe\u0003",
+ "\u07fe\u0003\u07fe\u0003\u07fe\u0003\u07fe\u0003\u07fe\u0003\u07fe\u0003",
+ "\u07ff\u0003\u07ff\u0003\u07ff\u0003\u07ff\u0003\u07ff\u0003\u07ff\u0003",
+ "\u07ff\u0003\u07ff\u0003\u07ff\u0003\u07ff\u0003\u07ff\u0003\u07ff\u0003",
+ "\u07ff\u0003\u07ff\u0003\u07ff\u0003\u07ff\u0003\u07ff\u0003\u07ff\u0003",
+ "\u0800\u0003\u0800\u0003\u0800\u0003\u0800\u0003\u0800\u0003\u0800\u0003",
+ "\u0800\u0003\u0800\u0003\u0800\u0003\u0800\u0003\u0800\u0003\u0800\u0003",
+ "\u0800\u0003\u0800\u0003\u0800\u0003\u0800\u0003\u0800\u0003\u0800\u0003",
+ "\u0800\u0003\u0800\u0003\u0800\u0003\u0801\u0003\u0801\u0003\u0801\u0003",
+ "\u0801\u0003\u0801\u0003\u0801\u0003\u0801\u0003\u0801\u0003\u0801\u0003",
+ "\u0801\u0003\u0802\u0003\u0802\u0003\u0802\u0003\u0802\u0003\u0802\u0003",
+ "\u0802\u0003\u0802\u0003\u0802\u0003\u0802\u0003\u0802\u0003\u0802\u0003",
+ "\u0802\u0003\u0802\u0003\u0803\u0003\u0803\u0003\u0803\u0003\u0803\u0003",
+ "\u0803\u0003\u0803\u0003\u0803\u0003\u0803\u0003\u0804\u0003\u0804\u0003",
+ "\u0804\u0003\u0804\u0003\u0804\u0003\u0804\u0003\u0804\u0003\u0804\u0003",
+ "\u0804\u0003\u0804\u0003\u0805\u0003\u0805\u0003\u0805\u0003\u0805\u0003",
+ "\u0805\u0003\u0805\u0003\u0805\u0003\u0805\u0003\u0805\u0003\u0805\u0003",
+ "\u0805\u0003\u0805\u0003\u0805\u0003\u0805\u0003\u0805\u0003\u0805\u0003",
+ "\u0806\u0003\u0806\u0003\u0806\u0003\u0806\u0003\u0806\u0003\u0806\u0003",
+ "\u0807\u0003\u0807\u0003\u0807\u0003\u0807\u0003\u0807\u0003\u0807\u0003",
+ "\u0807\u0003\u0807\u0003\u0807\u0003\u0807\u0003\u0807\u0003\u0807\u0003",
+ "\u0807\u0003\u0807\u0003\u0807\u0003\u0807\u0003\u0807\u0003\u0808\u0003",
+ "\u0808\u0003\u0808\u0003\u0808\u0003\u0808\u0003\u0809\u0003\u0809\u0003",
+ "\u0809\u0003\u0809\u0003\u0809\u0003\u0809\u0003\u0809\u0003\u0809\u0003",
+ "\u0809\u0003\u080a\u0003\u080a\u0003\u080a\u0003\u080a\u0003\u080a\u0003",
+ "\u080a\u0003\u080a\u0003\u080a\u0003\u080a\u0003\u080a\u0003\u080a\u0003",
+ "\u080a\u0003\u080a\u0003\u080a\u0003\u080a\u0003\u080a\u0003\u080a\u0003",
+ "\u080a\u0003\u080a\u0003\u080a\u0003\u080b\u0003\u080b\u0003\u080b\u0003",
+ "\u080b\u0003\u080b\u0003\u080b\u0003\u080b\u0003\u080b\u0003\u080b\u0003",
+ "\u080b\u0003\u080b\u0003\u080b\u0003\u080b\u0003\u080b\u0003\u080b\u0003",
+ "\u080b\u0003\u080b\u0003\u080b\u0003\u080c\u0003\u080c\u0003\u080c\u0003",
+ "\u080c\u0003\u080d\u0003\u080d\u0003\u080d\u0003\u080d\u0003\u080d\u0003",
+ "\u080d\u0003\u080d\u0003\u080d\u0003\u080d\u0003\u080d\u0003\u080d\u0003",
+ "\u080d\u0003\u080d\u0003\u080d\u0003\u080d\u0003\u080d\u0003\u080d\u0003",
+ "\u080d\u0003\u080d\u0003\u080d\u0003\u080d\u0003\u080d\u0003\u080d\u0003",
+ "\u080e\u0003\u080e\u0003\u080e\u0003\u080e\u0003\u080e\u0003\u080e\u0003",
+ "\u080e\u0003\u080e\u0003\u080e\u0003\u080e\u0003\u080e\u0003\u080e\u0003",
+ "\u080e\u0003\u080e\u0003\u080e\u0003\u080e\u0003\u080e\u0003\u080e\u0003",
+ "\u080e\u0003\u080f\u0003\u080f\u0003\u080f\u0003\u080f\u0003\u080f\u0003",
+ "\u080f\u0003\u080f\u0003\u080f\u0003\u080f\u0003\u080f\u0003\u080f\u0003",
+ "\u080f\u0003\u080f\u0003\u080f\u0003\u080f\u0003\u080f\u0003\u0810\u0003",
+ "\u0810\u0003\u0810\u0003\u0810\u0003\u0810\u0003\u0810\u0003\u0811\u0003",
+ "\u0811\u0003\u0811\u0003\u0811\u0003\u0811\u0003\u0811\u0003\u0811\u0003",
+ "\u0811\u0003\u0812\u0003\u0812\u0003\u0812\u0003\u0812\u0003\u0812\u0003",
+ "\u0812\u0003\u0812\u0003\u0812\u0003\u0813\u0003\u0813\u0003\u0813\u0003",
+ "\u0813\u0003\u0813\u0003\u0813\u0003\u0814\u0003\u0814\u0003\u0814\u0003",
+ "\u0814\u0003\u0814\u0003\u0815\u0003\u0815\u0003\u0815\u0003\u0816\u0003",
+ "\u0816\u0003\u0816\u0003\u0817\u0003\u0817\u0003\u0817\u0003\u0817\u0003",
+ "\u0817\u0003\u0817\u0003\u0817\u0003\u0817\u0003\u0817\u0003\u0818\u0003",
+ "\u0818\u0003\u0818\u0003\u0818\u0003\u0818\u0003\u0818\u0003\u0818\u0003",
+ "\u0818\u0003\u0818\u0003\u0818\u0003\u0818\u0003\u0819\u0003\u0819\u0003",
+ "\u0819\u0003\u0819\u0003\u0819\u0003\u0819\u0003\u0819\u0003\u0819\u0003",
+ "\u0819\u0003\u0819\u0003\u0819\u0003\u0819\u0003\u0819\u0003\u0819\u0003",
+ "\u0819\u0003\u081a\u0003\u081a\u0003\u081a\u0003\u081a\u0003\u081a\u0003",
+ "\u081a\u0003\u081a\u0003\u081b\u0003\u081b\u0003\u081b\u0003\u081b\u0003",
+ "\u081b\u0003\u081b\u0003\u081c\u0003\u081c\u0003\u081c\u0003\u081c\u0003",
+ "\u081c\u0003\u081c\u0003\u081c\u0003\u081c\u0003\u081c\u0003\u081d\u0003",
+ "\u081d\u0003\u081d\u0003\u081d\u0003\u081d\u0003\u081d\u0003\u081d\u0003",
+ "\u081d\u0003\u081e\u0003\u081e\u0003\u081e\u0003\u081e\u0003\u081e\u0003",
+ "\u081e\u0003\u081e\u0003\u081e\u0003\u081e\u0003\u081f\u0003\u081f\u0003",
+ "\u081f\u0003\u081f\u0003\u081f\u0003\u081f\u0003\u081f\u0003\u081f\u0003",
+ "\u0820\u0003\u0820\u0003\u0820\u0003\u0820\u0003\u0820\u0003\u0820\u0003",
+ "\u0820\u0003\u0820\u0003\u0821\u0003\u0821\u0003\u0821\u0003\u0821\u0003",
+ "\u0821\u0003\u0821\u0003\u0821\u0003\u0822\u0003\u0822\u0003\u0822\u0003",
+ "\u0822\u0003\u0822\u0003\u0822\u0003\u0822\u0003\u0822\u0003\u0822\u0003",
+ "\u0823\u0003\u0823\u0003\u0823\u0003\u0823\u0003\u0823\u0003\u0823\u0003",
+ "\u0823\u0003\u0823\u0003\u0824\u0003\u0824\u0003\u0824\u0003\u0824\u0003",
+ "\u0824\u0003\u0824\u0003\u0824\u0003\u0824\u0003\u0824\u0003\u0824\u0003",
+ "\u0824\u0003\u0824\u0003\u0824\u0003\u0824\u0003\u0824\u0003\u0824\u0003",
+ "\u0824\u0003\u0824\u0003\u0825\u0003\u0825\u0003\u0825\u0003\u0825\u0003",
+ "\u0825\u0003\u0825\u0003\u0825\u0003\u0825\u0003\u0825\u0003\u0825\u0003",
+ "\u0825\u0003\u0825\u0003\u0826\u0003\u0826\u0003\u0826\u0003\u0826\u0003",
+ "\u0826\u0003\u0826\u0003\u0826\u0003\u0826\u0003\u0826\u0003\u0826\u0003",
+ "\u0826\u0003\u0826\u0003\u0826\u0003\u0826\u0003\u0826\u0003\u0826\u0003",
+ "\u0826\u0003\u0826\u0003\u0826\u0003\u0826\u0003\u0826\u0003\u0826\u0003",
+ "\u0827\u0003\u0827\u0003\u0827\u0003\u0827\u0003\u0827\u0003\u0827\u0003",
+ "\u0827\u0003\u0827\u0003\u0827\u0003\u0827\u0003\u0827\u0003\u0827\u0003",
+ "\u0827\u0003\u0827\u0003\u0827\u0003\u0827\u0003\u0827\u0003\u0827\u0003",
+ "\u0827\u0003\u0827\u0003\u0827\u0003\u0827\u0003\u0828\u0003\u0828\u0003",
+ "\u0828\u0003\u0828\u0003\u0828\u0003\u0828\u0003\u0828\u0003\u0828\u0003",
+ "\u0828\u0003\u0828\u0003\u0828\u0003\u0828\u0003\u0828\u0003\u0828\u0003",
+ "\u0828\u0003\u0828\u0003\u0828\u0003\u0829\u0003\u0829\u0003\u0829\u0003",
+ "\u0829\u0003\u0829\u0003\u0829\u0003\u0829\u0003\u0829\u0003\u0829\u0003",
+ "\u082a\u0003\u082a\u0003\u082a\u0003\u082a\u0003\u082a\u0003\u082a\u0003",
+ "\u082a\u0003\u082b\u0003\u082b\u0003\u082b\u0003\u082b\u0003\u082b\u0003",
+ "\u082b\u0003\u082b\u0003\u082b\u0003\u082b\u0003\u082b\u0003\u082b\u0003",
+ "\u082c\u0003\u082c\u0003\u082c\u0003\u082c\u0003\u082c\u0003\u082c\u0003",
+ "\u082c\u0003\u082c\u0003\u082c\u0003\u082c\u0003\u082c\u0003\u082c\u0003",
+ "\u082c\u0003\u082c\u0003\u082c\u0003\u082c\u0003\u082d\u0003\u082d\u0003",
+ "\u082d\u0003\u082d\u0003\u082d\u0003\u082d\u0003\u082d\u0003\u082d\u0003",
+ "\u082d\u0003\u082d\u0003\u082d\u0003\u082d\u0003\u082d\u0003\u082d\u0003",
+ "\u082d\u0003\u082d\u0003\u082d\u0003\u082e\u0003\u082e\u0003\u082e\u0003",
+ "\u082e\u0003\u082e\u0003\u082e\u0003\u082e\u0003\u082e\u0003\u082e\u0003",
+ "\u082e\u0003\u082e\u0003\u082e\u0003\u082e\u0003\u082e\u0003\u082e\u0003",
+ "\u082e\u0003\u082e\u0003\u082e\u0003\u082e\u0003\u082f\u0003\u082f\u0003",
+ "\u082f\u0003\u082f\u0003\u082f\u0003\u082f\u0003\u082f\u0003\u082f\u0003",
+ "\u082f\u0003\u082f\u0003\u082f\u0003\u082f\u0003\u082f\u0003\u082f\u0003",
+ "\u082f\u0003\u082f\u0003\u082f\u0003\u082f\u0003\u0830\u0003\u0830\u0003",
+ "\u0830\u0003\u0830\u0003\u0830\u0003\u0830\u0003\u0830\u0003\u0830\u0003",
+ "\u0830\u0003\u0830\u0003\u0830\u0003\u0830\u0003\u0830\u0003\u0830\u0003",
+ "\u0830\u0003\u0830\u0003\u0830\u0003\u0830\u0003\u0830\u0003\u0831\u0003",
+ "\u0831\u0003\u0831\u0003\u0831\u0003\u0831\u0003\u0831\u0003\u0831\u0003",
+ "\u0831\u0003\u0831\u0003\u0832\u0003\u0832\u0003\u0832\u0003\u0832\u0003",
+ "\u0832\u0003\u0832\u0003\u0832\u0003\u0832\u0003\u0832\u0003\u0832\u0003",
+ "\u0832\u0003\u0832\u0003\u0832\u0003\u0833\u0003\u0833\u0003\u0833\u0003",
+ "\u0833\u0003\u0833\u0003\u0833\u0003\u0833\u0003\u0833\u0003\u0834\u0003",
+ "\u0834\u0003\u0834\u0003\u0834\u0003\u0834\u0003\u0835\u0003\u0835\u0003",
+ "\u0835\u0003\u0835\u0003\u0835\u0003\u0835\u0003\u0835\u0003\u0835\u0003",
+ "\u0835\u0003\u0835\u0003\u0836\u0003\u0836\u0003\u0836\u0003\u0836\u0003",
+ "\u0836\u0003\u0836\u0003\u0836\u0003\u0836\u0003\u0837\u0003\u0837\u0003",
+ "\u0837\u0003\u0837\u0003\u0837\u0003\u0837\u0003\u0837\u0003\u0837\u0003",
+ "\u0837\u0003\u0837\u0003\u0837\u0003\u0838\u0003\u0838\u0003\u0838\u0003",
+ "\u0838\u0003\u0838\u0003\u0838\u0003\u0838\u0003\u0838\u0003\u0839\u0003",
+ "\u0839\u0003\u0839\u0003\u0839\u0003\u0839\u0003\u0839\u0003\u0839\u0003",
+ "\u083a\u0003\u083a\u0003\u083a\u0003\u083a\u0003\u083a\u0003\u083a\u0003",
+ "\u083b\u0003\u083b\u0003\u083b\u0003\u083b\u0003\u083b\u0003\u083c\u0003",
+ "\u083c\u0003\u083c\u0003\u083c\u0003\u083c\u0003\u083c\u0003\u083c\u0003",
+ "\u083d\u0003\u083d\u0003\u083d\u0003\u083d\u0003\u083d\u0003\u083d\u0003",
+ "\u083d\u0003\u083d\u0003\u083e\u0003\u083e\u0003\u083e\u0003\u083e\u0003",
+ "\u083e\u0003\u083e\u0003\u083f\u0003\u083f\u0003\u083f\u0003\u083f\u0003",
+ "\u083f\u0003\u0840\u0003\u0840\u0003\u0840\u0003\u0840\u0003\u0840\u0003",
+ "\u0840\u0003\u0840\u0003\u0840\u0003\u0840\u0003\u0840\u0003\u0840\u0003",
+ "\u0841\u0003\u0841\u0003\u0841\u0003\u0841\u0003\u0841\u0003\u0841\u0003",
+ "\u0841\u0003\u0841\u0003\u0841\u0003\u0842\u0003\u0842\u0003\u0842\u0003",
+ "\u0842\u0003\u0842\u0003\u0843\u0003\u0843\u0003\u0843\u0003\u0843\u0003",
+ "\u0843\u0003\u0843\u0003\u0844\u0003\u0844\u0003\u0844\u0003\u0844\u0003",
+ "\u0844\u0003\u0844\u0003\u0845\u0003\u0845\u0003\u0845\u0003\u0845\u0003",
+ "\u0845\u0003\u0845\u0003\u0845\u0003\u0845\u0003\u0845\u0003\u0845\u0003",
+ "\u0845\u0003\u0846\u0003\u0846\u0003\u0846\u0003\u0846\u0003\u0846\u0003",
+ "\u0846\u0003\u0846\u0003\u0846\u0003\u0846\u0003\u0846\u0003\u0846\u0003",
+ "\u0846\u0003\u0846\u0003\u0847\u0003\u0847\u0003\u0847\u0003\u0847\u0003",
+ "\u0847\u0003\u0847\u0003\u0847\u0003\u0848\u0003\u0848\u0003\u0848\u0003",
+ "\u0848\u0003\u0848\u0003\u0848\u0003\u0848\u0003\u0848\u0003\u0849\u0003",
+ "\u0849\u0003\u0849\u0003\u0849\u0003\u0849\u0003\u0849\u0003\u0849\u0003",
+ "\u0849\u0003\u0849\u0003\u0849\u0003\u0849\u0003\u084a\u0003\u084a\u0003",
+ "\u084a\u0003\u084a\u0003\u084a\u0003\u084b\u0003\u084b\u0003\u084b\u0003",
+ "\u084b\u0003\u084b\u0003\u084c\u0003\u084c\u0003\u084c\u0003\u084c\u0003",
+ "\u084c\u0003\u084c\u0003\u084c\u0003\u084c\u0003\u084d\u0003\u084d\u0003",
+ "\u084d\u0003\u084d\u0003\u084d\u0003\u084d\u0003\u084d\u0003\u084d\u0003",
+ "\u084e\u0003\u084e\u0003\u084e\u0003\u084e\u0003\u084e\u0003\u084e\u0003",
+ "\u084f\u0003\u084f\u0003\u084f\u0003\u084f\u0003\u084f\u0003\u084f\u0003",
+ "\u084f\u0003\u084f\u0003\u084f\u0003\u084f\u0003\u084f\u0003\u084f\u0003",
+ "\u084f\u0003\u084f\u0003\u084f\u0003\u084f\u0003\u084f\u0003\u084f\u0003",
+ "\u084f\u0003\u084f\u0003\u0850\u0003\u0850\u0003\u0850\u0003\u0850\u0003",
+ "\u0851\u0003\u0851\u0003\u0851\u0003\u0851\u0003\u0851\u0003\u0851\u0003",
+ "\u0851\u0003\u0851\u0003\u0851\u0003\u0851\u0003\u0851\u0003\u0851\u0003",
+ "\u0852\u0003\u0852\u0003\u0852\u0003\u0852\u0003\u0853\u0003\u0853\u0003",
+ "\u0853\u0003\u0853\u0003\u0853\u0003\u0853\u0003\u0853\u0003\u0853\u0003",
+ "\u0853\u0003\u0853\u0003\u0853\u0003\u0854\u0003\u0854\u0003\u0854\u0003",
+ "\u0854\u0003\u0854\u0003\u0854\u0003\u0854\u0003\u0855\u0003\u0855\u0003",
+ "\u0855\u0003\u0855\u0003\u0855\u0003\u0855\u0003\u0855\u0003\u0855\u0003",
+ "\u0855\u0003\u0855\u0003\u0855\u0003\u0855\u0003\u0855\u0003\u0855\u0003",
+ "\u0856\u0003\u0856\u0003\u0856\u0003\u0856\u0003\u0856\u0003\u0856\u0003",
+ "\u0856\u0003\u0856\u0003\u0857\u0003\u0857\u0003\u0857\u0003\u0857\u0003",
+ "\u0857\u0003\u0857\u0003\u0857\u0003\u0857\u0003\u0857\u0003\u0858\u0003",
+ "\u0858\u0003\u0858\u0003\u0858\u0003\u0858\u0003\u0858\u0003\u0858\u0003",
+ "\u0858\u0003\u0858\u0003\u0858\u0003\u0858\u0003\u0858\u0003\u0858\u0003",
+ "\u0859\u0003\u0859\u0003\u0859\u0003\u0859\u0003\u0859\u0003\u0859\u0003",
+ "\u0859\u0003\u0859\u0003\u0859\u0003\u0859\u0003\u0859\u0003\u085a\u0003",
+ "\u085a\u0003\u085a\u0003\u085a\u0003\u085a\u0003\u085a\u0003\u085a\u0003",
+ "\u085a\u0003\u085a\u0003\u085a\u0003\u085b\u0003\u085b\u0003\u085b\u0003",
+ "\u085b\u0003\u085b\u0003\u085b\u0003\u085b\u0003\u085b\u0003\u085c\u0003",
+ "\u085c\u0003\u085c\u0003\u085c\u0003\u085c\u0003\u085c\u0003\u085c\u0003",
+ "\u085c\u0003\u085c\u0003\u085c\u0003\u085c\u0003\u085c\u0003\u085c\u0003",
+ "\u085c\u0003\u085c\u0003\u085c\u0003\u085c\u0003\u085d\u0003\u085d\u0003",
+ "\u085d\u0003\u085d\u0003\u085d\u0003\u085d\u0003\u085d\u0003\u085d\u0003",
+ "\u085d\u0003\u085d\u0003\u085d\u0003\u085e\u0003\u085e\u0003\u085e\u0003",
+ "\u085e\u0003\u085e\u0003\u085e\u0003\u085e\u0003\u085e\u0003\u085e\u0003",
+ "\u085e\u0003\u085e\u0003\u085f\u0003\u085f\u0003\u085f\u0003\u085f\u0003",
+ "\u085f\u0003\u085f\u0003\u085f\u0003\u085f\u0003\u085f\u0003\u085f\u0003",
+ "\u0860\u0003\u0860\u0003\u0860\u0003\u0860\u0003\u0860\u0003\u0860\u0003",
+ "\u0860\u0003\u0860\u0003\u0860\u0003\u0860\u0003\u0861\u0003\u0861\u0003",
+ "\u0861\u0003\u0861\u0003\u0861\u0003\u0861\u0003\u0861\u0003\u0861\u0003",
+ "\u0861\u0003\u0862\u0003\u0862\u0003\u0862\u0003\u0862\u0003\u0862\u0003",
+ "\u0862\u0003\u0862\u0003\u0862\u0003\u0862\u0003\u0862\u0003\u0862\u0003",
+ "\u0862\u0003\u0862\u0003\u0862\u0003\u0862\u0003\u0862\u0003\u0862\u0003",
+ "\u0862\u0003\u0862\u0003\u0862\u0003\u0862\u0003\u0862\u0003\u0862\u0003",
+ "\u0862\u0003\u0862\u0003\u0862\u0003\u0862\u0003\u0863\u0003\u0863\u0003",
+ "\u0863\u0003\u0863\u0003\u0863\u0003\u0863\u0003\u0863\u0003\u0863\u0003",
+ "\u0863\u0003\u0863\u0003\u0863\u0003\u0863\u0003\u0863\u0003\u0863\u0003",
+ "\u0863\u0003\u0863\u0003\u0863\u0003\u0864\u0003\u0864\u0003\u0864\u0003",
+ "\u0864\u0003\u0864\u0003\u0864\u0003\u0864\u0003\u0864\u0003\u0864\u0003",
+ "\u0864\u0003\u0864\u0003\u0864\u0003\u0864\u0003\u0864\u0003\u0864\u0003",
+ "\u0864\u0003\u0864\u0003\u0864\u0003\u0864\u0003\u0864\u0003\u0864\u0003",
+ "\u0865\u0003\u0865\u0003\u0865\u0003\u0865\u0003\u0865\u0003\u0865\u0003",
+ "\u0865\u0003\u0865\u0003\u0865\u0003\u0865\u0003\u0866\u0003\u0866\u0003",
+ "\u0866\u0003\u0866\u0003\u0866\u0003\u0866\u0003\u0866\u0003\u0866\u0003",
+ "\u0866\u0003\u0866\u0003\u0866\u0003\u0867\u0003\u0867\u0003\u0867\u0003",
+ "\u0867\u0003\u0867\u0003\u0867\u0003\u0867\u0003\u0867\u0003\u0867\u0003",
+ "\u0867\u0003\u0867\u0003\u0867\u0003\u0867\u0003\u0867\u0003\u0868\u0003",
+ "\u0868\u0003\u0868\u0003\u0868\u0003\u0868\u0003\u0868\u0003\u0868\u0003",
+ "\u0868\u0003\u0868\u0003\u0869\u0003\u0869\u0003\u0869\u0003\u0869\u0003",
+ "\u0869\u0003\u0869\u0003\u0869\u0003\u0869\u0003\u0869\u0003\u086a\u0003",
+ "\u086a\u0003\u086a\u0003\u086a\u0003\u086a\u0003\u086a\u0003\u086b\u0003",
+ "\u086b\u0003\u086b\u0003\u086b\u0003\u086b\u0003\u086b\u0003\u086b\u0003",
+ "\u086b\u0003\u086b\u0003\u086b\u0003\u086b\u0003\u086b\u0003\u086c\u0003",
+ "\u086c\u0003\u086c\u0003\u086c\u0003\u086c\u0003\u086c\u0003\u086c\u0003",
+ "\u086c\u0003\u086c\u0003\u086d\u0003\u086d\u0003\u086d\u0003\u086d\u0003",
+ "\u086d\u0003\u086d\u0003\u086d\u0003\u086d\u0003\u086e\u0003\u086e\u0003",
+ "\u086e\u0003\u086e\u0003\u086e\u0003\u086e\u0003\u086e\u0003\u086e\u0003",
+ "\u086e\u0003\u086e\u0003\u086f\u0003\u086f\u0003\u086f\u0003\u086f\u0003",
+ "\u086f\u0003\u086f\u0003\u086f\u0003\u086f\u0003\u086f\u0003\u086f\u0003",
+ "\u086f\u0003\u086f\u0003\u086f\u0003\u0870\u0003\u0870\u0003\u0870\u0003",
+ "\u0870\u0003\u0870\u0003\u0870\u0003\u0870\u0003\u0870\u0003\u0870\u0003",
+ "\u0871\u0003\u0871\u0003\u0871\u0003\u0871\u0003\u0871\u0003\u0871\u0003",
+ "\u0871\u0003\u0871\u0003\u0871\u0003\u0871\u0003\u0871\u0003\u0871\u0003",
+ "\u0871\u0003\u0871\u0003\u0871\u0003\u0871\u0003\u0871\u0003\u0872\u0003",
+ "\u0872\u0003\u0872\u0003\u0872\u0003\u0872\u0003\u0872\u0003\u0872\u0003",
+ "\u0872\u0003\u0872\u0003\u0872\u0003\u0872\u0003\u0872\u0003\u0872\u0003",
+ "\u0873\u0003\u0873\u0003\u0873\u0003\u0873\u0003\u0873\u0003\u0873\u0003",
+ "\u0873\u0003\u0873\u0003\u0874\u0003\u0874\u0003\u0874\u0003\u0874\u0003",
+ "\u0875\u0003\u0875\u0003\u0875\u0003\u0875\u0003\u0875\u0003\u0875\u0003",
+ "\u0875\u0003\u0875\u0003\u0875\u0003\u0875\u0003\u0875\u0003\u0876\u0003",
+ "\u0876\u0003\u0876\u0003\u0876\u0003\u0876\u0003\u0876\u0003\u0876\u0003",
+ "\u0876\u0003\u0876\u0003\u0876\u0003\u0876\u0003\u0876\u0003\u0876\u0003",
+ "\u0876\u0003\u0876\u0003\u0877\u0003\u0877\u0003\u0877\u0003\u0878\u0003",
+ "\u0878\u0003\u0878\u0003\u0878\u0003\u0878\u0003\u0878\u0003\u0878\u0003",
+ "\u0878\u0003\u0878\u0003\u0878\u0003\u0878\u0003\u0879\u0003\u0879\u0003",
+ "\u0879\u0003\u0879\u0003\u0879\u0003\u0879\u0003\u087a\u0003\u087a\u0003",
+ "\u087a\u0003\u087a\u0003\u087a\u0003\u087b\u0003\u087b\u0003\u087b\u0003",
+ "\u087b\u0003\u087c\u0003\u087c\u0003\u087c\u0003\u087c\u0003\u087c\u0003",
+ "\u087c\u0003\u087c\u0003\u087c\u0003\u087c\u0003\u087c\u0003\u087c\u0003",
+ "\u087c\u0003\u087c\u0003\u087c\u0003\u087c\u0003\u087c\u0003\u087c\u0003",
+ "\u087c\u0003\u087c\u0003\u087c\u0003\u087c\u0003\u087c\u0003\u087c\u0003",
+ "\u087c\u0003\u087c\u0003\u087d\u0003\u087d\u0003\u087d\u0003\u087d\u0003",
+ "\u087d\u0003\u087d\u0003\u087d\u0003\u087d\u0003\u087e\u0003\u087e\u0003",
+ "\u087e\u0003\u087e\u0003\u087e\u0003\u087f\u0003\u087f\u0003\u087f\u0003",
+ "\u087f\u0003\u087f\u0003\u087f\u0003\u087f\u0003\u087f\u0003\u087f\u0003",
+ "\u087f\u0003\u087f\u0003\u0880\u0003\u0880\u0003\u0880\u0003\u0880\u0003",
+ "\u0880\u0003\u0880\u0003\u0880\u0003\u0880\u0003\u0880\u0003\u0880\u0003",
+ "\u0880\u0003\u0880\u0003\u0880\u0003\u0880\u0003\u0880\u0003\u0880\u0003",
+ "\u0880\u0003\u0880\u0003\u0881\u0003\u0881\u0003\u0881\u0003\u0881\u0003",
+ "\u0881\u0003\u0881\u0003\u0881\u0003\u0881\u0003\u0881\u0003\u0881\u0003",
+ "\u0881\u0003\u0881\u0003\u0881\u0003\u0881\u0003\u0881\u0003\u0881\u0003",
+ "\u0882\u0003\u0882\u0003\u0882\u0003\u0882\u0003\u0882\u0003\u0882\u0003",
+ "\u0882\u0003\u0882\u0003\u0882\u0003\u0882\u0003\u0882\u0003\u0882\u0003",
+ "\u0882\u0003\u0882\u0003\u0882\u0003\u0882\u0003\u0882\u0003\u0882\u0003",
+ "\u0882\u0003\u0883\u0003\u0883\u0003\u0883\u0003\u0883\u0003\u0883\u0003",
+ "\u0883\u0003\u0883\u0003\u0883\u0003\u0883\u0003\u0883\u0003\u0883\u0003",
+ "\u0883\u0003\u0883\u0003\u0883\u0003\u0883\u0003\u0883\u0003\u0883\u0003",
+ "\u0883\u0003\u0883\u0003\u0883\u0003\u0883\u0003\u0883\u0003\u0883\u0003",
+ "\u0884\u0003\u0884\u0003\u0884\u0003\u0884\u0003\u0884\u0003\u0884\u0003",
+ "\u0884\u0003\u0884\u0003\u0884\u0003\u0884\u0003\u0884\u0003\u0884\u0003",
+ "\u0884\u0003\u0884\u0003\u0884\u0003\u0885\u0003\u0885\u0003\u0885\u0003",
+ "\u0885\u0003\u0885\u0003\u0885\u0003\u0885\u0003\u0885\u0003\u0885\u0003",
+ "\u0885\u0003\u0886\u0003\u0886\u0003\u0886\u0003\u0886\u0003\u0886\u0003",
+ "\u0886\u0003\u0886\u0003\u0886\u0003\u0886\u0003\u0886\u0003\u0886\u0003",
+ "\u0887\u0003\u0887\u0003\u0887\u0003\u0887\u0003\u0887\u0003\u0887\u0003",
+ "\u0887\u0003\u0887\u0003\u0888\u0003\u0888\u0003\u0888\u0003\u0888\u0003",
+ "\u0888\u0003\u0888\u0003\u0888\u0003\u0888\u0003\u0888\u0003\u0888\u0003",
+ "\u0888\u0003\u0888\u0003\u0888\u0003\u0889\u0003\u0889\u0003\u0889\u0003",
+ "\u0889\u0003\u0889\u0003\u0889\u0003\u0889\u0003\u0889\u0003\u0889\u0003",
+ "\u0889\u0003\u0889\u0003\u0889\u0003\u0889\u0003\u0889\u0003\u0889\u0003",
+ "\u0889\u0003\u088a\u0003\u088a\u0003\u088a\u0003\u088a\u0003\u088a\u0003",
+ "\u088a\u0003\u088a\u0003\u088a\u0003\u088a\u0003\u088a\u0003\u088a\u0003",
+ "\u088a\u0003\u088a\u0003\u088a\u0003\u088a\u0003\u088a\u0003\u088b\u0003",
+ "\u088b\u0003\u088b\u0003\u088b\u0003\u088b\u0003\u088c\u0003\u088c\u0003",
+ "\u088c\u0003\u088c\u0003\u088d\u0003\u088d\u0003\u088d\u0003\u088d\u0003",
+ "\u088d\u0003\u088e\u0003\u088e\u0003\u088e\u0003\u088e\u0003\u088e\u0003",
+ "\u088e\u0003\u088e\u0003\u088f\u0003\u088f\u0003\u088f\u0003\u088f\u0003",
+ "\u088f\u0003\u088f\u0003\u088f\u0003\u0890\u0003\u0890\u0003\u0890\u0003",
+ "\u0890\u0003\u0891\u0003\u0891\u0003\u0891\u0003\u0891\u0003\u0891\u0003",
+ "\u0892\u0003\u0892\u0003\u0892\u0003\u0892\u0003\u0893\u0003\u0893\u0003",
+ "\u0893\u0003\u0893\u0003\u0893\u0003\u0893\u0003\u0893\u0003\u0894\u0003",
+ "\u0894\u0003\u0894\u0003\u0894\u0003\u0895\u0003\u0895\u0003\u0895\u0003",
+ "\u0895\u0003\u0895\u0003\u0895\u0003\u0896\u0003\u0896\u0003\u0896\u0003",
+ "\u0896\u0003\u0897\u0003\u0897\u0003\u0897\u0003\u0897\u0003\u0897\u0003",
+ "\u0897\u0003\u0897\u0003\u0897\u0003\u0897\u0003\u0897\u0003\u0897\u0003",
+ "\u0897\u0003\u0897\u0003\u0897\u0003\u0897\u0003\u0897\u0003\u0898\u0003",
+ "\u0898\u0003\u0898\u0003\u0898\u0003\u0898\u0003\u0898\u0003\u0899\u0003",
+ "\u0899\u0003\u0899\u0003\u0899\u0003\u0899\u0003\u0899\u0003\u089a\u0003",
+ "\u089a\u0003\u089a\u0003\u089a\u0003\u089a\u0003\u089a\u0003\u089a\u0003",
+ "\u089a\u0003\u089a\u0003\u089a\u0003\u089a\u0003\u089b\u0003\u089b\u0003",
+ "\u089b\u0003\u089b\u0003\u089b\u0003\u089b\u0003\u089b\u0003\u089c\u0003",
+ "\u089c\u0003\u089c\u0003\u089c\u0003\u089c\u0003\u089c\u0003\u089c\u0003",
+ "\u089c\u0003\u089d\u0003\u089d\u0003\u089d\u0003\u089d\u0003\u089d\u0003",
+ "\u089e\u0003\u089e\u0003\u089e\u0003\u089e\u0003\u089f\u0003\u089f\u0003",
+ "\u089f\u0003\u089f\u0003\u089f\u0003\u089f\u0003\u089f\u0003\u08a0\u0003",
+ "\u08a0\u0003\u08a0\u0003\u08a0\u0003\u08a0\u0003\u08a1\u0003\u08a1\u0003",
+ "\u08a1\u0003\u08a1\u0003\u08a1\u0003\u08a1\u0003\u08a1\u0003\u08a1\u0003",
+ "\u08a1\u0003\u08a2\u0003\u08a2\u0003\u08a2\u0003\u08a2\u0003\u08a2\u0003",
+ "\u08a2\u0003\u08a3\u0003\u08a3\u0003\u08a3\u0003\u08a3\u0003\u08a3\u0003",
+ "\u08a3\u0003\u08a3\u0003\u08a3\u0003\u08a3\u0003\u08a4\u0003\u08a4\u0003",
+ "\u08a4\u0003\u08a4\u0003\u08a4\u0003\u08a4\u0003\u08a4\u0003\u08a4\u0003",
+ "\u08a5\u0003\u08a5\u0003\u08a5\u0003\u08a5\u0003\u08a5\u0003\u08a5\u0007",
+ "\u08a5\u72bb\n\u08a5\f\u08a5\u000e\u08a5\u72be\u000b\u08a5\u0003\u08a5",
+ "\u0003\u08a5\u0003\u08a6\u0003\u08a6\u0003\u08a6\u0007\u08a6\u72c5\n",
+ "\u08a6\f\u08a6\u000e\u08a6\u72c8\u000b\u08a6\u0003\u08a6\u0006\u08a6",
+ "\u72cb\n\u08a6\r\u08a6\u000e\u08a6\u72cc\u0003\u08a7\u0003\u08a7\u0003",
+ "\u08a7\u0007\u08a7\u72d2\n\u08a7\f\u08a7\u000e\u08a7\u72d5\u000b\u08a7",
+ "\u0003\u08a7\u0006\u08a7\u72d8\n\u08a7\r\u08a7\u000e\u08a7\u72d9\u0003",
+ "\u08a8\u0003\u08a8\u0003\u08a8\u0003\u08a9\u0003\u08a9\u0003\u08aa\u0006",
+ "\u08aa\u72e2\n\u08aa\r\u08aa\u000e\u08aa\u72e3\u0003\u08ab\u0003\u08ab",
+ "\u0003\u08ab\u0005\u08ab\u72e9\n\u08ab\u0003\u08ab\u0003\u08ab\u0006",
+ "\u08ab\u72ed\n\u08ab\r\u08ab\u000e\u08ab\u72ee\u0005\u08ab\u72f1\n\u08ab",
+ "\u0005\u08ab\u72f3\n\u08ab\u0003\u08ab\u0005\u08ab\u72f6\n\u08ab\u0003",
+ "\u08ac\u0003\u08ac\u0003\u08ac\u0003\u08ac\u0003\u08ac\u0007\u08ac\u72fd",
+ "\n\u08ac\f\u08ac\u000e\u08ac\u7300\u000b\u08ac\u0003\u08ac\u0003\u08ac",
+ "\u0003\u08ad\u0003\u08ad\u0003\u08ad\u0003\u08ad\u0003\u08ad\u0003\u08ad",
+ "\u0003\u08ad\u0003\u08ad\u0003\u08ad\u0003\u08ad\u0005\u08ad\u730e\n",
+ "\u08ad\u0003\u08ad\u0003\u08ad\u0003\u08ad\u0003\u08ad\u0003\u08ae\u0003",
+ "\u08ae\u0007\u08ae\u7316\n\u08ae\f\u08ae\u000e\u08ae\u7319\u000b\u08ae",
+ "\u0003\u08ae\u0003\u08ae\u0003\u08af\u0003\u08af\u0007\u08af\u731f\n",
+ "\u08af\f\u08af\u000e\u08af\u7322\u000b\u08af\u0003\u08af\u0003\u08af",
+ "\u0003\u08b0\u0003\u08b0\u0007\u08b0\u7328\n\u08b0\f\u08b0\u000e\u08b0",
+ "\u732b\u000b\u08b0\u0003\u08b0\u0003\u08b0\u0003\u08b1\u0003\u08b1\u0007",
+ "\u08b1\u7331\n\u08b1\f\u08b1\u000e\u08b1\u7334\u000b\u08b1\u0003\u08b1",
+ "\u0003\u08b1\u0003\u08b2\u0003\u08b2\u0007\u08b2\u733a\n\u08b2\f\u08b2",
+ "\u000e\u08b2\u733d\u000b\u08b2\u0003\u08b2\u0003\u08b2\u0003\u08b3\u0003",
+ "\u08b3\u0007\u08b3\u7343\n\u08b3\f\u08b3\u000e\u08b3\u7346\u000b\u08b3",
+ "\u0003\u08b3\u0003\u08b3\u0003\u08b4\u0003\u08b4\u0007\u08b4\u734c\n",
+ "\u08b4\f\u08b4\u000e\u08b4\u734f\u000b\u08b4\u0003\u08b4\u0003\u08b4",
+ "\u0003\u08b5\u0003\u08b5\u0007\u08b5\u7355\n\u08b5\f\u08b5\u000e\u08b5",
+ "\u7358\u000b\u08b5\u0003\u08b5\u0003\u08b5\u0003\u08b6\u0003\u08b6\u0003",
+ "\u08b6\u0003\u08b6\u0006\u08b6\u7360\n\u08b6\r\u08b6\u000e\u08b6\u7361",
+ "\u0003\u08b6\u0003\u08b6\u0003\u08b7\u0003\u08b7\u0003\u08b8\u0003\u08b8",
+ "\u0003\u08b9\u0003\u08b9\u0003\u08ba\u0003\u08ba\u0003\u08bb\u0003\u08bb",
+ "\u0003\u08bb\u0003\u08bc\u0003\u08bc\u0003\u08bd\u0003\u08bd\u0003\u08be",
+ "\u0003\u08be\u0003\u08bf\u0003\u08bf\u0003\u08c0\u0003\u08c0\u0003\u08c1",
+ "\u0003\u08c1\u0003\u08c2\u0003\u08c2\u0003\u08c2\u0003\u08c3\u0003\u08c3",
+ "\u0003\u08c3\u0003\u08c3\u0007\u08c3\u7384\n\u08c3\f\u08c3\u000e\u08c3",
+ "\u7387\u000b\u08c3\u0003\u08c3\u0003\u08c3\u0003\u08c3\u0003\u08c3\u0003",
+ "\u08c3\u0005\u08c3\u738e\n\u08c3\u0003\u08c4\u0003\u08c4\u0003\u08c4",
+ "\u0003\u08c4\u0003\u08c4\u0003\u08c4\u0003\u08c4\u0003\u08c4\u0005\u08c4",
+ "\u7398\n\u08c4\u0003\u08c5\u0003\u08c5\u0003\u08c6\u0003\u08c6\u0003",
+ "\u08c7\u0003\u08c7\u0003\u08c8\u0003\u08c8\u0003\u08c9\u0003\u08c9\u0003",
+ "\u08ca\u0003\u08ca\u0003\u08cb\u0003\u08cb\u0003\u08cc\u0003\u08cc\u0003",
+ "\u08cd\u0003\u08cd\u0003\u08ce\u0003\u08ce\u0003\u08cf\u0003\u08cf\u0003",
+ "\u08d0\u0003\u08d0\u0003\u08d1\u0003\u08d1\u0003\u08d1\u0003\u08d1\u0007",
+ "\u08d1\u73b6\n\u08d1\f\u08d1\u000e\u08d1\u73b9\u000b\u08d1\u0003\u08d1",
+ "\u0003\u08d1\u0003\u08d1\u0003\u08d1\u0003\u08d2\u0003\u08d2\u0003\u08d2",
+ "\u0003\u08d2\u0007\u08d2\u73c3\n\u08d2\f\u08d2\u000e\u08d2\u73c6\u000b",
+ "\u08d2\u0003\u08d2\u0003\u08d2\u0003\u08d2\u0003\u08d2\u0003\u08d2\u0003",
+ "\u08d3\u0003\u08d3\u0003\u08d3\u0003\u08d3\u0003\u08d3\u0003\u08d3\u0003",
+ "\u08d3\u0003\u08d3\u0005\u08d3\u73d5\n\u08d3\u0003\u08d3\u0003\u08d3",
+ "\u0007\u08d3\u73d9\n\u08d3\f\u08d3\u000e\u08d3\u73dc\u000b\u08d3\u0005",
+ "\u08d3\u73de\n\u08d3\u0003\u08d3\u0003\u08d3\u0003\u08d3\u0003\u08d3",
+ "\u0003\u08d4\u0003\u08d4\u0003\u08d4\u0003\u08d4\u0003\u08d4\u0003\u08d4",
+ "\u0003\u08d4\u0003\u08d4\u0005\u08d4\u73ec\n\u08d4\u0003\u08d4\u0003",
+ "\u08d4\u0007\u08d4\u73f0\n\u08d4\f\u08d4\u000e\u08d4\u73f3\u000b\u08d4",
+ "\u0005\u08d4\u73f5\n\u08d4\u0003\u08d4\u0003\u08d4\u0003\u08d5\u0003",
+ "\u08d5\u0003\u08d5\u0005\u08d5\u73fc\n\u08d5\u0003\u08d5\u0007\u08d5",
+ "\u73ff\n\u08d5\f\u08d5\u000e\u08d5\u7402\u000b\u08d5\u0003\u08d5\u0003",
+ "\u08d5\u0003\u08d6\u0003\u08d6\u0003\u08d6\u0007\u08d6\u7409\n\u08d6",
+ "\f\u08d6\u000e\u08d6\u740c\u000b\u08d6\u0003\u08d7\u0006\u08d7\u740f",
+ "\n\u08d7\r\u08d7\u000e\u08d7\u7410\u0003\u08d7\u0003\u08d7\u0003\u08d8",
+ "\u0003\u08d8\u0005\u08d8\u7417\n\u08d8\u0003\u08d9\u0003\u08d9\u0003",
+ "\u08da\u0003\u08da\u0003\u08db\u0007\u08db\u741e\n\u08db\f\u08db\u000e",
+ "\u08db\u7421\u000b\u08db\u0003\u08db\u0005\u08db\u7424\n\u08db\u0003",
+ "\u08db\u0006\u08db\u7427\n\u08db\r\u08db\u000e\u08db\u7428\u0003\u08dc",
+ "\u0005\u08dc\u742c\n\u08dc\u0003\u08dc\u0003\u08dc\u0003\u08dd\u0003",
+ "\u08dd\u000b\u7317\u7320\u7329\u7332\u733b\u7344\u734d\u7356\u73c4\u0002",
+ "\u08de\u0003\u0003\u0005\u0004\u0007\u0005\t\u0006\u000b\u0007\r\b\u000f",
+ "\t\u0011\n\u0013\u000b\u0015\f\u0017\r\u0019\u000e\u001b\u000f\u001d",
+ "\u0010\u001f\u0011!\u0012#\u0013%\u0014\'\u0015)\u0016+\u0017-\u0018",
+ "/\u00191\u001a3\u001b5\u001c7\u001d9\u001e;\u001f= ?!A\"C#E$G%I&K\'",
+ "M(O)Q*S+U,W-Y.[/]0_1a2c3e4g5i6k7m8o9q:s;u{?}@\u007fA\u0081B\u0083",
+ "C\u0085D\u0087E\u0089F\u008bG\u008dH\u008fI\u0091J\u0093K\u0095L\u0097",
+ "M\u0099N\u009bO\u009dP\u009fQ\u00a1R\u00a3S\u00a5T\u00a7U\u00a9V\u00ab",
+ "W\u00adX\u00afY\u00b1Z\u00b3[\u00b5\\\u00b7]\u00b9^\u00bb_\u00bd`\u00bf",
+ "a\u00c1b\u00c3c\u00c5d\u00c7e\u00c9f\u00cbg\u00cdh\u00cfi\u00d1j\u00d3",
+ "k\u00d5l\u00d7m\u00d9n\u00dbo\u00ddp\u00dfq\u00e1r\u00e3s\u00e5t\u00e7",
+ "u\u00e9v\u00ebw\u00edx\u00efy\u00f1z\u00f3{\u00f5|\u00f7}\u00f9~\u00fb",
+ "\u007f\u00fd\u0080\u00ff\u0081\u0101\u0082\u0103\u0083\u0105\u0084\u0107",
+ "\u0085\u0109\u0086\u010b\u0087\u010d\u0088\u010f\u0089\u0111\u008a\u0113",
+ "\u008b\u0115\u008c\u0117\u008d\u0119\u008e\u011b\u008f\u011d\u0090\u011f",
+ "\u0091\u0121\u0092\u0123\u0093\u0125\u0094\u0127\u0095\u0129\u0096\u012b",
+ "\u0097\u012d\u0098\u012f\u0099\u0131\u009a\u0133\u009b\u0135\u009c\u0137",
+ "\u009d\u0139\u009e\u013b\u009f\u013d\u00a0\u013f\u00a1\u0141\u00a2\u0143",
+ "\u00a3\u0145\u00a4\u0147\u00a5\u0149\u00a6\u014b\u00a7\u014d\u00a8\u014f",
+ "\u00a9\u0151\u00aa\u0153\u00ab\u0155\u00ac\u0157\u00ad\u0159\u00ae\u015b",
+ "\u00af\u015d\u00b0\u015f\u00b1\u0161\u00b2\u0163\u00b3\u0165\u00b4\u0167",
+ "\u00b5\u0169\u00b6\u016b\u00b7\u016d\u00b8\u016f\u00b9\u0171\u00ba\u0173",
+ "\u00bb\u0175\u00bc\u0177\u00bd\u0179\u00be\u017b\u00bf\u017d\u00c0\u017f",
+ "\u00c1\u0181\u00c2\u0183\u00c3\u0185\u00c4\u0187\u00c5\u0189\u00c6\u018b",
+ "\u00c7\u018d\u00c8\u018f\u00c9\u0191\u00ca\u0193\u00cb\u0195\u00cc\u0197",
+ "\u00cd\u0199\u00ce\u019b\u00cf\u019d\u00d0\u019f\u00d1\u01a1\u00d2\u01a3",
+ "\u00d3\u01a5\u00d4\u01a7\u00d5\u01a9\u00d6\u01ab\u00d7\u01ad\u00d8\u01af",
+ "\u00d9\u01b1\u00da\u01b3\u00db\u01b5\u00dc\u01b7\u00dd\u01b9\u00de\u01bb",
+ "\u00df\u01bd\u00e0\u01bf\u00e1\u01c1\u00e2\u01c3\u00e3\u01c5\u00e4\u01c7",
+ "\u00e5\u01c9\u00e6\u01cb\u00e7\u01cd\u00e8\u01cf\u00e9\u01d1\u00ea\u01d3",
+ "\u00eb\u01d5\u00ec\u01d7\u00ed\u01d9\u00ee\u01db\u00ef\u01dd\u00f0\u01df",
+ "\u00f1\u01e1\u00f2\u01e3\u00f3\u01e5\u00f4\u01e7\u00f5\u01e9\u00f6\u01eb",
+ "\u00f7\u01ed\u00f8\u01ef\u00f9\u01f1\u00fa\u01f3\u00fb\u01f5\u00fc\u01f7",
+ "\u00fd\u01f9\u00fe\u01fb\u00ff\u01fd\u0100\u01ff\u0101\u0201\u0102\u0203",
+ "\u0103\u0205\u0104\u0207\u0105\u0209\u0106\u020b\u0107\u020d\u0108\u020f",
+ "\u0109\u0211\u010a\u0213\u010b\u0215\u010c\u0217\u010d\u0219\u010e\u021b",
+ "\u010f\u021d\u0110\u021f\u0111\u0221\u0112\u0223\u0113\u0225\u0114\u0227",
+ "\u0115\u0229\u0116\u022b\u0117\u022d\u0118\u022f\u0119\u0231\u011a\u0233",
+ "\u011b\u0235\u011c\u0237\u011d\u0239\u011e\u023b\u011f\u023d\u0120\u023f",
+ "\u0121\u0241\u0122\u0243\u0123\u0245\u0124\u0247\u0125\u0249\u0126\u024b",
+ "\u0127\u024d\u0128\u024f\u0129\u0251\u012a\u0253\u012b\u0255\u012c\u0257",
+ "\u012d\u0259\u012e\u025b\u012f\u025d\u0130\u025f\u0131\u0261\u0132\u0263",
+ "\u0133\u0265\u0134\u0267\u0135\u0269\u0136\u026b\u0137\u026d\u0138\u026f",
+ "\u0139\u0271\u013a\u0273\u013b\u0275\u013c\u0277\u013d\u0279\u013e\u027b",
+ "\u013f\u027d\u0140\u027f\u0141\u0281\u0142\u0283\u0143\u0285\u0144\u0287",
+ "\u0145\u0289\u0146\u028b\u0147\u028d\u0148\u028f\u0149\u0291\u014a\u0293",
+ "\u014b\u0295\u014c\u0297\u014d\u0299\u014e\u029b\u014f\u029d\u0150\u029f",
+ "\u0151\u02a1\u0152\u02a3\u0153\u02a5\u0154\u02a7\u0155\u02a9\u0156\u02ab",
+ "\u0157\u02ad\u0158\u02af\u0159\u02b1\u015a\u02b3\u015b\u02b5\u015c\u02b7",
+ "\u015d\u02b9\u015e\u02bb\u015f\u02bd\u0160\u02bf\u0161\u02c1\u0162\u02c3",
+ "\u0163\u02c5\u0164\u02c7\u0165\u02c9\u0166\u02cb\u0167\u02cd\u0168\u02cf",
+ "\u0169\u02d1\u016a\u02d3\u016b\u02d5\u016c\u02d7\u016d\u02d9\u016e\u02db",
+ "\u016f\u02dd\u0170\u02df\u0171\u02e1\u0172\u02e3\u0173\u02e5\u0174\u02e7",
+ "\u0175\u02e9\u0176\u02eb\u0177\u02ed\u0178\u02ef\u0179\u02f1\u017a\u02f3",
+ "\u017b\u02f5\u017c\u02f7\u017d\u02f9\u017e\u02fb\u017f\u02fd\u0180\u02ff",
+ "\u0181\u0301\u0182\u0303\u0183\u0305\u0184\u0307\u0185\u0309\u0186\u030b",
+ "\u0187\u030d\u0188\u030f\u0189\u0311\u018a\u0313\u018b\u0315\u018c\u0317",
+ "\u018d\u0319\u018e\u031b\u018f\u031d\u0190\u031f\u0191\u0321\u0192\u0323",
+ "\u0193\u0325\u0194\u0327\u0195\u0329\u0196\u032b\u0197\u032d\u0198\u032f",
+ "\u0199\u0331\u019a\u0333\u019b\u0335\u019c\u0337\u019d\u0339\u019e\u033b",
+ "\u019f\u033d\u01a0\u033f\u01a1\u0341\u01a2\u0343\u01a3\u0345\u01a4\u0347",
+ "\u01a5\u0349\u01a6\u034b\u01a7\u034d\u01a8\u034f\u01a9\u0351\u01aa\u0353",
+ "\u01ab\u0355\u01ac\u0357\u01ad\u0359\u01ae\u035b\u01af\u035d\u01b0\u035f",
+ "\u01b1\u0361\u01b2\u0363\u01b3\u0365\u01b4\u0367\u01b5\u0369\u01b6\u036b",
+ "\u01b7\u036d\u01b8\u036f\u01b9\u0371\u01ba\u0373\u01bb\u0375\u01bc\u0377",
+ "\u01bd\u0379\u01be\u037b\u01bf\u037d\u01c0\u037f\u01c1\u0381\u01c2\u0383",
+ "\u01c3\u0385\u01c4\u0387\u01c5\u0389\u01c6\u038b\u01c7\u038d\u01c8\u038f",
+ "\u01c9\u0391\u01ca\u0393\u01cb\u0395\u01cc\u0397\u01cd\u0399\u01ce\u039b",
+ "\u01cf\u039d\u01d0\u039f\u01d1\u03a1\u01d2\u03a3\u01d3\u03a5\u01d4\u03a7",
+ "\u01d5\u03a9\u01d6\u03ab\u01d7\u03ad\u01d8\u03af\u01d9\u03b1\u01da\u03b3",
+ "\u01db\u03b5\u01dc\u03b7\u01dd\u03b9\u01de\u03bb\u01df\u03bd\u01e0\u03bf",
+ "\u01e1\u03c1\u01e2\u03c3\u01e3\u03c5\u01e4\u03c7\u01e5\u03c9\u01e6\u03cb",
+ "\u01e7\u03cd\u01e8\u03cf\u01e9\u03d1\u01ea\u03d3\u01eb\u03d5\u01ec\u03d7",
+ "\u01ed\u03d9\u01ee\u03db\u01ef\u03dd\u01f0\u03df\u01f1\u03e1\u01f2\u03e3",
+ "\u01f3\u03e5\u01f4\u03e7\u01f5\u03e9\u01f6\u03eb\u01f7\u03ed\u01f8\u03ef",
+ "\u01f9\u03f1\u01fa\u03f3\u01fb\u03f5\u01fc\u03f7\u01fd\u03f9\u01fe\u03fb",
+ "\u01ff\u03fd\u0200\u03ff\u0201\u0401\u0202\u0403\u0203\u0405\u0204\u0407",
+ "\u0205\u0409\u0206\u040b\u0207\u040d\u0208\u040f\u0209\u0411\u020a\u0413",
+ "\u020b\u0415\u020c\u0417\u020d\u0419\u020e\u041b\u020f\u041d\u0210\u041f",
+ "\u0211\u0421\u0212\u0423\u0213\u0425\u0214\u0427\u0215\u0429\u0216\u042b",
+ "\u0217\u042d\u0218\u042f\u0219\u0431\u021a\u0433\u021b\u0435\u021c\u0437",
+ "\u021d\u0439\u021e\u043b\u021f\u043d\u0220\u043f\u0221\u0441\u0222\u0443",
+ "\u0223\u0445\u0224\u0447\u0225\u0449\u0226\u044b\u0227\u044d\u0228\u044f",
+ "\u0229\u0451\u022a\u0453\u022b\u0455\u022c\u0457\u022d\u0459\u022e\u045b",
+ "\u022f\u045d\u0230\u045f\u0231\u0461\u0232\u0463\u0233\u0465\u0234\u0467",
+ "\u0235\u0469\u0236\u046b\u0237\u046d\u0238\u046f\u0239\u0471\u023a\u0473",
+ "\u023b\u0475\u023c\u0477\u023d\u0479\u023e\u047b\u023f\u047d\u0240\u047f",
+ "\u0241\u0481\u0242\u0483\u0243\u0485\u0244\u0487\u0245\u0489\u0246\u048b",
+ "\u0247\u048d\u0248\u048f\u0249\u0491\u024a\u0493\u024b\u0495\u024c\u0497",
+ "\u024d\u0499\u024e\u049b\u024f\u049d\u0250\u049f\u0251\u04a1\u0252\u04a3",
+ "\u0253\u04a5\u0254\u04a7\u0255\u04a9\u0256\u04ab\u0257\u04ad\u0258\u04af",
+ "\u0259\u04b1\u025a\u04b3\u025b\u04b5\u025c\u04b7\u025d\u04b9\u025e\u04bb",
+ "\u025f\u04bd\u0260\u04bf\u0261\u04c1\u0262\u04c3\u0263\u04c5\u0264\u04c7",
+ "\u0265\u04c9\u0266\u04cb\u0267\u04cd\u0268\u04cf\u0269\u04d1\u026a\u04d3",
+ "\u026b\u04d5\u026c\u04d7\u026d\u04d9\u026e\u04db\u026f\u04dd\u0270\u04df",
+ "\u0271\u04e1\u0272\u04e3\u0273\u04e5\u0274\u04e7\u0275\u04e9\u0276\u04eb",
+ "\u0277\u04ed\u0278\u04ef\u0279\u04f1\u027a\u04f3\u027b\u04f5\u027c\u04f7",
+ "\u027d\u04f9\u027e\u04fb\u027f\u04fd\u0280\u04ff\u0281\u0501\u0282\u0503",
+ "\u0283\u0505\u0284\u0507\u0285\u0509\u0286\u050b\u0287\u050d\u0288\u050f",
+ "\u0289\u0511\u028a\u0513\u028b\u0515\u028c\u0517\u028d\u0519\u028e\u051b",
+ "\u028f\u051d\u0290\u051f\u0291\u0521\u0292\u0523\u0293\u0525\u0294\u0527",
+ "\u0295\u0529\u0296\u052b\u0297\u052d\u0298\u052f\u0299\u0531\u029a\u0533",
+ "\u029b\u0535\u029c\u0537\u029d\u0539\u029e\u053b\u029f\u053d\u02a0\u053f",
+ "\u02a1\u0541\u02a2\u0543\u02a3\u0545\u02a4\u0547\u02a5\u0549\u02a6\u054b",
+ "\u02a7\u054d\u02a8\u054f\u02a9\u0551\u02aa\u0553\u02ab\u0555\u02ac\u0557",
+ "\u02ad\u0559\u02ae\u055b\u02af\u055d\u02b0\u055f\u02b1\u0561\u02b2\u0563",
+ "\u02b3\u0565\u02b4\u0567\u02b5\u0569\u02b6\u056b\u02b7\u056d\u02b8\u056f",
+ "\u02b9\u0571\u02ba\u0573\u02bb\u0575\u02bc\u0577\u02bd\u0579\u02be\u057b",
+ "\u02bf\u057d\u02c0\u057f\u02c1\u0581\u02c2\u0583\u02c3\u0585\u02c4\u0587",
+ "\u02c5\u0589\u02c6\u058b\u02c7\u058d\u02c8\u058f\u02c9\u0591\u02ca\u0593",
+ "\u02cb\u0595\u02cc\u0597\u02cd\u0599\u02ce\u059b\u02cf\u059d\u02d0\u059f",
+ "\u02d1\u05a1\u02d2\u05a3\u02d3\u05a5\u02d4\u05a7\u02d5\u05a9\u02d6\u05ab",
+ "\u02d7\u05ad\u02d8\u05af\u02d9\u05b1\u02da\u05b3\u02db\u05b5\u02dc\u05b7",
+ "\u02dd\u05b9\u02de\u05bb\u02df\u05bd\u02e0\u05bf\u02e1\u05c1\u02e2\u05c3",
+ "\u02e3\u05c5\u02e4\u05c7\u02e5\u05c9\u02e6\u05cb\u02e7\u05cd\u02e8\u05cf",
+ "\u02e9\u05d1\u02ea\u05d3\u02eb\u05d5\u02ec\u05d7\u02ed\u05d9\u02ee\u05db",
+ "\u02ef\u05dd\u02f0\u05df\u02f1\u05e1\u02f2\u05e3\u02f3\u05e5\u02f4\u05e7",
+ "\u02f5\u05e9\u02f6\u05eb\u02f7\u05ed\u02f8\u05ef\u02f9\u05f1\u02fa\u05f3",
+ "\u02fb\u05f5\u02fc\u05f7\u02fd\u05f9\u02fe\u05fb\u02ff\u05fd\u0300\u05ff",
+ "\u0301\u0601\u0302\u0603\u0303\u0605\u0304\u0607\u0305\u0609\u0306\u060b",
+ "\u0307\u060d\u0308\u060f\u0309\u0611\u030a\u0613\u030b\u0615\u030c\u0617",
+ "\u030d\u0619\u030e\u061b\u030f\u061d\u0310\u061f\u0311\u0621\u0312\u0623",
+ "\u0313\u0625\u0314\u0627\u0315\u0629\u0316\u062b\u0317\u062d\u0318\u062f",
+ "\u0319\u0631\u031a\u0633\u031b\u0635\u031c\u0637\u031d\u0639\u031e\u063b",
+ "\u031f\u063d\u0320\u063f\u0321\u0641\u0322\u0643\u0323\u0645\u0324\u0647",
+ "\u0325\u0649\u0326\u064b\u0327\u064d\u0328\u064f\u0329\u0651\u032a\u0653",
+ "\u032b\u0655\u032c\u0657\u032d\u0659\u032e\u065b\u032f\u065d\u0330\u065f",
+ "\u0331\u0661\u0332\u0663\u0333\u0665\u0334\u0667\u0335\u0669\u0336\u066b",
+ "\u0337\u066d\u0338\u066f\u0339\u0671\u033a\u0673\u033b\u0675\u033c\u0677",
+ "\u033d\u0679\u033e\u067b\u033f\u067d\u0340\u067f\u0341\u0681\u0342\u0683",
+ "\u0343\u0685\u0344\u0687\u0345\u0689\u0346\u068b\u0347\u068d\u0348\u068f",
+ "\u0349\u0691\u034a\u0693\u034b\u0695\u034c\u0697\u034d\u0699\u034e\u069b",
+ "\u034f\u069d\u0350\u069f\u0351\u06a1\u0352\u06a3\u0353\u06a5\u0354\u06a7",
+ "\u0355\u06a9\u0356\u06ab\u0357\u06ad\u0358\u06af\u0359\u06b1\u035a\u06b3",
+ "\u035b\u06b5\u035c\u06b7\u035d\u06b9\u035e\u06bb\u035f\u06bd\u0360\u06bf",
+ "\u0361\u06c1\u0362\u06c3\u0363\u06c5\u0364\u06c7\u0365\u06c9\u0366\u06cb",
+ "\u0367\u06cd\u0368\u06cf\u0369\u06d1\u036a\u06d3\u036b\u06d5\u036c\u06d7",
+ "\u036d\u06d9\u036e\u06db\u036f\u06dd\u0370\u06df\u0371\u06e1\u0372\u06e3",
+ "\u0373\u06e5\u0374\u06e7\u0375\u06e9\u0376\u06eb\u0377\u06ed\u0378\u06ef",
+ "\u0379\u06f1\u037a\u06f3\u037b\u06f5\u037c\u06f7\u037d\u06f9\u037e\u06fb",
+ "\u037f\u06fd\u0380\u06ff\u0381\u0701\u0382\u0703\u0383\u0705\u0384\u0707",
+ "\u0385\u0709\u0386\u070b\u0387\u070d\u0388\u070f\u0389\u0711\u038a\u0713",
+ "\u038b\u0715\u038c\u0717\u038d\u0719\u038e\u071b\u038f\u071d\u0390\u071f",
+ "\u0391\u0721\u0392\u0723\u0393\u0725\u0394\u0727\u0395\u0729\u0396\u072b",
+ "\u0397\u072d\u0398\u072f\u0399\u0731\u039a\u0733\u039b\u0735\u039c\u0737",
+ "\u039d\u0739\u039e\u073b\u039f\u073d\u03a0\u073f\u03a1\u0741\u03a2\u0743",
+ "\u03a3\u0745\u03a4\u0747\u03a5\u0749\u03a6\u074b\u03a7\u074d\u03a8\u074f",
+ "\u03a9\u0751\u03aa\u0753\u03ab\u0755\u03ac\u0757\u03ad\u0759\u03ae\u075b",
+ "\u03af\u075d\u03b0\u075f\u03b1\u0761\u03b2\u0763\u03b3\u0765\u03b4\u0767",
+ "\u03b5\u0769\u03b6\u076b\u03b7\u076d\u03b8\u076f\u03b9\u0771\u03ba\u0773",
+ "\u03bb\u0775\u03bc\u0777\u03bd\u0779\u03be\u077b\u03bf\u077d\u03c0\u077f",
+ "\u03c1\u0781\u03c2\u0783\u03c3\u0785\u03c4\u0787\u03c5\u0789\u03c6\u078b",
+ "\u03c7\u078d\u03c8\u078f\u03c9\u0791\u03ca\u0793\u03cb\u0795\u03cc\u0797",
+ "\u03cd\u0799\u03ce\u079b\u03cf\u079d\u03d0\u079f\u03d1\u07a1\u03d2\u07a3",
+ "\u03d3\u07a5\u03d4\u07a7\u03d5\u07a9\u03d6\u07ab\u03d7\u07ad\u03d8\u07af",
+ "\u03d9\u07b1\u03da\u07b3\u03db\u07b5\u03dc\u07b7\u03dd\u07b9\u03de\u07bb",
+ "\u03df\u07bd\u03e0\u07bf\u03e1\u07c1\u03e2\u07c3\u03e3\u07c5\u03e4\u07c7",
+ "\u03e5\u07c9\u03e6\u07cb\u03e7\u07cd\u03e8\u07cf\u03e9\u07d1\u03ea\u07d3",
+ "\u03eb\u07d5\u03ec\u07d7\u03ed\u07d9\u03ee\u07db\u03ef\u07dd\u03f0\u07df",
+ "\u03f1\u07e1\u03f2\u07e3\u03f3\u07e5\u03f4\u07e7\u03f5\u07e9\u03f6\u07eb",
+ "\u03f7\u07ed\u03f8\u07ef\u03f9\u07f1\u03fa\u07f3\u03fb\u07f5\u03fc\u07f7",
+ "\u03fd\u07f9\u03fe\u07fb\u03ff\u07fd\u0400\u07ff\u0401\u0801\u0402\u0803",
+ "\u0403\u0805\u0404\u0807\u0405\u0809\u0406\u080b\u0407\u080d\u0408\u080f",
+ "\u0409\u0811\u040a\u0813\u040b\u0815\u040c\u0817\u040d\u0819\u040e\u081b",
+ "\u040f\u081d\u0410\u081f\u0411\u0821\u0412\u0823\u0413\u0825\u0414\u0827",
+ "\u0415\u0829\u0416\u082b\u0417\u082d\u0418\u082f\u0419\u0831\u041a\u0833",
+ "\u041b\u0835\u041c\u0837\u041d\u0839\u041e\u083b\u041f\u083d\u0420\u083f",
+ "\u0421\u0841\u0422\u0843\u0423\u0845\u0424\u0847\u0425\u0849\u0426\u084b",
+ "\u0427\u084d\u0428\u084f\u0429\u0851\u042a\u0853\u042b\u0855\u042c\u0857",
+ "\u042d\u0859\u042e\u085b\u042f\u085d\u0430\u085f\u0431\u0861\u0432\u0863",
+ "\u0433\u0865\u0434\u0867\u0435\u0869\u0436\u086b\u0437\u086d\u0438\u086f",
+ "\u0439\u0871\u043a\u0873\u043b\u0875\u043c\u0877\u043d\u0879\u043e\u087b",
+ "\u043f\u087d\u0440\u087f\u0441\u0881\u0442\u0883\u0443\u0885\u0444\u0887",
+ "\u0445\u0889\u0446\u088b\u0447\u088d\u0448\u088f\u0449\u0891\u044a\u0893",
+ "\u044b\u0895\u044c\u0897\u044d\u0899\u044e\u089b\u044f\u089d\u0450\u089f",
+ "\u0451\u08a1\u0452\u08a3\u0453\u08a5\u0454\u08a7\u0455\u08a9\u0456\u08ab",
+ "\u0457\u08ad\u0458\u08af\u0459\u08b1\u045a\u08b3\u045b\u08b5\u045c\u08b7",
+ "\u045d\u08b9\u045e\u08bb\u045f\u08bd\u0460\u08bf\u0461\u08c1\u0462\u08c3",
+ "\u0463\u08c5\u0464\u08c7\u0465\u08c9\u0466\u08cb\u0467\u08cd\u0468\u08cf",
+ "\u0469\u08d1\u046a\u08d3\u046b\u08d5\u046c\u08d7\u046d\u08d9\u046e\u08db",
+ "\u046f\u08dd\u0470\u08df\u0471\u08e1\u0472\u08e3\u0473\u08e5\u0474\u08e7",
+ "\u0475\u08e9\u0476\u08eb\u0477\u08ed\u0478\u08ef\u0479\u08f1\u047a\u08f3",
+ "\u047b\u08f5\u047c\u08f7\u047d\u08f9\u047e\u08fb\u047f\u08fd\u0480\u08ff",
+ "\u0481\u0901\u0482\u0903\u0483\u0905\u0484\u0907\u0485\u0909\u0486\u090b",
+ "\u0487\u090d\u0488\u090f\u0489\u0911\u048a\u0913\u048b\u0915\u048c\u0917",
+ "\u048d\u0919\u048e\u091b\u048f\u091d\u0490\u091f\u0491\u0921\u0492\u0923",
+ "\u0493\u0925\u0494\u0927\u0495\u0929\u0496\u092b\u0497\u092d\u0498\u092f",
+ "\u0499\u0931\u049a\u0933\u049b\u0935\u049c\u0937\u049d\u0939\u049e\u093b",
+ "\u049f\u093d\u04a0\u093f\u04a1\u0941\u04a2\u0943\u04a3\u0945\u04a4\u0947",
+ "\u04a5\u0949\u04a6\u094b\u04a7\u094d\u04a8\u094f\u04a9\u0951\u04aa\u0953",
+ "\u04ab\u0955\u04ac\u0957\u04ad\u0959\u04ae\u095b\u04af\u095d\u04b0\u095f",
+ "\u04b1\u0961\u04b2\u0963\u04b3\u0965\u04b4\u0967\u04b5\u0969\u04b6\u096b",
+ "\u04b7\u096d\u04b8\u096f\u04b9\u0971\u04ba\u0973\u04bb\u0975\u04bc\u0977",
+ "\u04bd\u0979\u04be\u097b\u04bf\u097d\u04c0\u097f\u04c1\u0981\u04c2\u0983",
+ "\u04c3\u0985\u04c4\u0987\u04c5\u0989\u04c6\u098b\u04c7\u098d\u04c8\u098f",
+ "\u04c9\u0991\u04ca\u0993\u04cb\u0995\u04cc\u0997\u04cd\u0999\u04ce\u099b",
+ "\u04cf\u099d\u04d0\u099f\u04d1\u09a1\u04d2\u09a3\u04d3\u09a5\u04d4\u09a7",
+ "\u04d5\u09a9\u04d6\u09ab\u04d7\u09ad\u04d8\u09af\u04d9\u09b1\u04da\u09b3",
+ "\u04db\u09b5\u04dc\u09b7\u04dd\u09b9\u04de\u09bb\u04df\u09bd\u04e0\u09bf",
+ "\u04e1\u09c1\u04e2\u09c3\u04e3\u09c5\u04e4\u09c7\u04e5\u09c9\u04e6\u09cb",
+ "\u04e7\u09cd\u04e8\u09cf\u04e9\u09d1\u04ea\u09d3\u04eb\u09d5\u04ec\u09d7",
+ "\u04ed\u09d9\u04ee\u09db\u04ef\u09dd\u04f0\u09df\u04f1\u09e1\u04f2\u09e3",
+ "\u04f3\u09e5\u04f4\u09e7\u04f5\u09e9\u04f6\u09eb\u04f7\u09ed\u04f8\u09ef",
+ "\u04f9\u09f1\u04fa\u09f3\u04fb\u09f5\u04fc\u09f7\u04fd\u09f9\u04fe\u09fb",
+ "\u04ff\u09fd\u0500\u09ff\u0501\u0a01\u0502\u0a03\u0503\u0a05\u0504\u0a07",
+ "\u0505\u0a09\u0506\u0a0b\u0507\u0a0d\u0508\u0a0f\u0509\u0a11\u050a\u0a13",
+ "\u050b\u0a15\u050c\u0a17\u050d\u0a19\u050e\u0a1b\u050f\u0a1d\u0510\u0a1f",
+ "\u0511\u0a21\u0512\u0a23\u0513\u0a25\u0514\u0a27\u0515\u0a29\u0516\u0a2b",
+ "\u0517\u0a2d\u0518\u0a2f\u0519\u0a31\u051a\u0a33\u051b\u0a35\u051c\u0a37",
+ "\u051d\u0a39\u051e\u0a3b\u051f\u0a3d\u0520\u0a3f\u0521\u0a41\u0522\u0a43",
+ "\u0523\u0a45\u0524\u0a47\u0525\u0a49\u0526\u0a4b\u0527\u0a4d\u0528\u0a4f",
+ "\u0529\u0a51\u052a\u0a53\u052b\u0a55\u052c\u0a57\u052d\u0a59\u052e\u0a5b",
+ "\u052f\u0a5d\u0530\u0a5f\u0531\u0a61\u0532\u0a63\u0533\u0a65\u0534\u0a67",
+ "\u0535\u0a69\u0536\u0a6b\u0537\u0a6d\u0538\u0a6f\u0539\u0a71\u053a\u0a73",
+ "\u053b\u0a75\u053c\u0a77\u053d\u0a79\u053e\u0a7b\u053f\u0a7d\u0540\u0a7f",
+ "\u0541\u0a81\u0542\u0a83\u0543\u0a85\u0544\u0a87\u0545\u0a89\u0546\u0a8b",
+ "\u0547\u0a8d\u0548\u0a8f\u0549\u0a91\u054a\u0a93\u054b\u0a95\u054c\u0a97",
+ "\u054d\u0a99\u054e\u0a9b\u054f\u0a9d\u0550\u0a9f\u0551\u0aa1\u0552\u0aa3",
+ "\u0553\u0aa5\u0554\u0aa7\u0555\u0aa9\u0556\u0aab\u0557\u0aad\u0558\u0aaf",
+ "\u0559\u0ab1\u055a\u0ab3\u055b\u0ab5\u055c\u0ab7\u055d\u0ab9\u055e\u0abb",
+ "\u055f\u0abd\u0560\u0abf\u0561\u0ac1\u0562\u0ac3\u0563\u0ac5\u0564\u0ac7",
+ "\u0565\u0ac9\u0566\u0acb\u0567\u0acd\u0568\u0acf\u0569\u0ad1\u056a\u0ad3",
+ "\u056b\u0ad5\u056c\u0ad7\u056d\u0ad9\u056e\u0adb\u056f\u0add\u0570\u0adf",
+ "\u0571\u0ae1\u0572\u0ae3\u0573\u0ae5\u0574\u0ae7\u0575\u0ae9\u0576\u0aeb",
+ "\u0577\u0aed\u0578\u0aef\u0579\u0af1\u057a\u0af3\u057b\u0af5\u057c\u0af7",
+ "\u057d\u0af9\u057e\u0afb\u057f\u0afd\u0580\u0aff\u0581\u0b01\u0582\u0b03",
+ "\u0583\u0b05\u0584\u0b07\u0585\u0b09\u0586\u0b0b\u0587\u0b0d\u0588\u0b0f",
+ "\u0589\u0b11\u058a\u0b13\u058b\u0b15\u058c\u0b17\u058d\u0b19\u058e\u0b1b",
+ "\u058f\u0b1d\u0590\u0b1f\u0591\u0b21\u0592\u0b23\u0593\u0b25\u0594\u0b27",
+ "\u0595\u0b29\u0596\u0b2b\u0597\u0b2d\u0598\u0b2f\u0599\u0b31\u059a\u0b33",
+ "\u059b\u0b35\u059c\u0b37\u059d\u0b39\u059e\u0b3b\u059f\u0b3d\u05a0\u0b3f",
+ "\u05a1\u0b41\u05a2\u0b43\u05a3\u0b45\u05a4\u0b47\u05a5\u0b49\u05a6\u0b4b",
+ "\u05a7\u0b4d\u05a8\u0b4f\u05a9\u0b51\u05aa\u0b53\u05ab\u0b55\u05ac\u0b57",
+ "\u05ad\u0b59\u05ae\u0b5b\u05af\u0b5d\u05b0\u0b5f\u05b1\u0b61\u05b2\u0b63",
+ "\u05b3\u0b65\u05b4\u0b67\u05b5\u0b69\u05b6\u0b6b\u05b7\u0b6d\u05b8\u0b6f",
+ "\u05b9\u0b71\u05ba\u0b73\u05bb\u0b75\u05bc\u0b77\u05bd\u0b79\u05be\u0b7b",
+ "\u05bf\u0b7d\u05c0\u0b7f\u05c1\u0b81\u05c2\u0b83\u05c3\u0b85\u05c4\u0b87",
+ "\u05c5\u0b89\u05c6\u0b8b\u05c7\u0b8d\u05c8\u0b8f\u05c9\u0b91\u05ca\u0b93",
+ "\u05cb\u0b95\u05cc\u0b97\u05cd\u0b99\u05ce\u0b9b\u05cf\u0b9d\u05d0\u0b9f",
+ "\u05d1\u0ba1\u05d2\u0ba3\u05d3\u0ba5\u05d4\u0ba7\u05d5\u0ba9\u05d6\u0bab",
+ "\u05d7\u0bad\u05d8\u0baf\u05d9\u0bb1\u05da\u0bb3\u05db\u0bb5\u05dc\u0bb7",
+ "\u05dd\u0bb9\u05de\u0bbb\u05df\u0bbd\u05e0\u0bbf\u05e1\u0bc1\u05e2\u0bc3",
+ "\u05e3\u0bc5\u05e4\u0bc7\u05e5\u0bc9\u05e6\u0bcb\u05e7\u0bcd\u05e8\u0bcf",
+ "\u05e9\u0bd1\u05ea\u0bd3\u05eb\u0bd5\u05ec\u0bd7\u05ed\u0bd9\u05ee\u0bdb",
+ "\u05ef\u0bdd\u05f0\u0bdf\u05f1\u0be1\u05f2\u0be3\u05f3\u0be5\u05f4\u0be7",
+ "\u05f5\u0be9\u05f6\u0beb\u05f7\u0bed\u05f8\u0bef\u05f9\u0bf1\u05fa\u0bf3",
+ "\u05fb\u0bf5\u05fc\u0bf7\u05fd\u0bf9\u05fe\u0bfb\u05ff\u0bfd\u0600\u0bff",
+ "\u0601\u0c01\u0602\u0c03\u0603\u0c05\u0604\u0c07\u0605\u0c09\u0606\u0c0b",
+ "\u0607\u0c0d\u0608\u0c0f\u0609\u0c11\u060a\u0c13\u060b\u0c15\u060c\u0c17",
+ "\u060d\u0c19\u060e\u0c1b\u060f\u0c1d\u0610\u0c1f\u0611\u0c21\u0612\u0c23",
+ "\u0613\u0c25\u0614\u0c27\u0615\u0c29\u0616\u0c2b\u0617\u0c2d\u0618\u0c2f",
+ "\u0619\u0c31\u061a\u0c33\u061b\u0c35\u061c\u0c37\u061d\u0c39\u061e\u0c3b",
+ "\u061f\u0c3d\u0620\u0c3f\u0621\u0c41\u0622\u0c43\u0623\u0c45\u0624\u0c47",
+ "\u0625\u0c49\u0626\u0c4b\u0627\u0c4d\u0628\u0c4f\u0629\u0c51\u062a\u0c53",
+ "\u062b\u0c55\u062c\u0c57\u062d\u0c59\u062e\u0c5b\u062f\u0c5d\u0630\u0c5f",
+ "\u0631\u0c61\u0632\u0c63\u0633\u0c65\u0634\u0c67\u0635\u0c69\u0636\u0c6b",
+ "\u0637\u0c6d\u0638\u0c6f\u0639\u0c71\u063a\u0c73\u063b\u0c75\u063c\u0c77",
+ "\u063d\u0c79\u063e\u0c7b\u063f\u0c7d\u0640\u0c7f\u0641\u0c81\u0642\u0c83",
+ "\u0643\u0c85\u0644\u0c87\u0645\u0c89\u0646\u0c8b\u0647\u0c8d\u0648\u0c8f",
+ "\u0649\u0c91\u064a\u0c93\u064b\u0c95\u064c\u0c97\u064d\u0c99\u064e\u0c9b",
+ "\u064f\u0c9d\u0650\u0c9f\u0651\u0ca1\u0652\u0ca3\u0653\u0ca5\u0654\u0ca7",
+ "\u0655\u0ca9\u0656\u0cab\u0657\u0cad\u0658\u0caf\u0659\u0cb1\u065a\u0cb3",
+ "\u065b\u0cb5\u065c\u0cb7\u065d\u0cb9\u065e\u0cbb\u065f\u0cbd\u0660\u0cbf",
+ "\u0661\u0cc1\u0662\u0cc3\u0663\u0cc5\u0664\u0cc7\u0665\u0cc9\u0666\u0ccb",
+ "\u0667\u0ccd\u0668\u0ccf\u0669\u0cd1\u066a\u0cd3\u066b\u0cd5\u066c\u0cd7",
+ "\u066d\u0cd9\u066e\u0cdb\u066f\u0cdd\u0670\u0cdf\u0671\u0ce1\u0672\u0ce3",
+ "\u0673\u0ce5\u0674\u0ce7\u0675\u0ce9\u0676\u0ceb\u0677\u0ced\u0678\u0cef",
+ "\u0679\u0cf1\u067a\u0cf3\u067b\u0cf5\u067c\u0cf7\u067d\u0cf9\u067e\u0cfb",
+ "\u067f\u0cfd\u0680\u0cff\u0681\u0d01\u0682\u0d03\u0683\u0d05\u0684\u0d07",
+ "\u0685\u0d09\u0686\u0d0b\u0687\u0d0d\u0688\u0d0f\u0689\u0d11\u068a\u0d13",
+ "\u068b\u0d15\u068c\u0d17\u068d\u0d19\u068e\u0d1b\u068f\u0d1d\u0690\u0d1f",
+ "\u0691\u0d21\u0692\u0d23\u0693\u0d25\u0694\u0d27\u0695\u0d29\u0696\u0d2b",
+ "\u0697\u0d2d\u0698\u0d2f\u0699\u0d31\u069a\u0d33\u069b\u0d35\u069c\u0d37",
+ "\u069d\u0d39\u069e\u0d3b\u069f\u0d3d\u06a0\u0d3f\u06a1\u0d41\u06a2\u0d43",
+ "\u06a3\u0d45\u06a4\u0d47\u06a5\u0d49\u06a6\u0d4b\u06a7\u0d4d\u06a8\u0d4f",
+ "\u06a9\u0d51\u06aa\u0d53\u06ab\u0d55\u06ac\u0d57\u06ad\u0d59\u06ae\u0d5b",
+ "\u06af\u0d5d\u06b0\u0d5f\u06b1\u0d61\u06b2\u0d63\u06b3\u0d65\u06b4\u0d67",
+ "\u06b5\u0d69\u06b6\u0d6b\u06b7\u0d6d\u06b8\u0d6f\u06b9\u0d71\u06ba\u0d73",
+ "\u06bb\u0d75\u06bc\u0d77\u06bd\u0d79\u06be\u0d7b\u06bf\u0d7d\u06c0\u0d7f",
+ "\u06c1\u0d81\u06c2\u0d83\u06c3\u0d85\u06c4\u0d87\u06c5\u0d89\u06c6\u0d8b",
+ "\u06c7\u0d8d\u06c8\u0d8f\u06c9\u0d91\u06ca\u0d93\u06cb\u0d95\u06cc\u0d97",
+ "\u06cd\u0d99\u06ce\u0d9b\u06cf\u0d9d\u06d0\u0d9f\u06d1\u0da1\u06d2\u0da3",
+ "\u06d3\u0da5\u06d4\u0da7\u06d5\u0da9\u06d6\u0dab\u06d7\u0dad\u06d8\u0daf",
+ "\u06d9\u0db1\u06da\u0db3\u06db\u0db5\u06dc\u0db7\u06dd\u0db9\u06de\u0dbb",
+ "\u06df\u0dbd\u06e0\u0dbf\u06e1\u0dc1\u06e2\u0dc3\u06e3\u0dc5\u06e4\u0dc7",
+ "\u06e5\u0dc9\u06e6\u0dcb\u06e7\u0dcd\u06e8\u0dcf\u06e9\u0dd1\u06ea\u0dd3",
+ "\u06eb\u0dd5\u06ec\u0dd7\u06ed\u0dd9\u06ee\u0ddb\u06ef\u0ddd\u06f0\u0ddf",
+ "\u06f1\u0de1\u06f2\u0de3\u06f3\u0de5\u06f4\u0de7\u06f5\u0de9\u06f6\u0deb",
+ "\u06f7\u0ded\u06f8\u0def\u06f9\u0df1\u06fa\u0df3\u06fb\u0df5\u06fc\u0df7",
+ "\u06fd\u0df9\u06fe\u0dfb\u06ff\u0dfd\u0700\u0dff\u0701\u0e01\u0702\u0e03",
+ "\u0703\u0e05\u0704\u0e07\u0705\u0e09\u0706\u0e0b\u0707\u0e0d\u0708\u0e0f",
+ "\u0709\u0e11\u070a\u0e13\u070b\u0e15\u070c\u0e17\u070d\u0e19\u070e\u0e1b",
+ "\u070f\u0e1d\u0710\u0e1f\u0711\u0e21\u0712\u0e23\u0713\u0e25\u0714\u0e27",
+ "\u0715\u0e29\u0716\u0e2b\u0717\u0e2d\u0718\u0e2f\u0719\u0e31\u071a\u0e33",
+ "\u071b\u0e35\u071c\u0e37\u071d\u0e39\u071e\u0e3b\u071f\u0e3d\u0720\u0e3f",
+ "\u0721\u0e41\u0722\u0e43\u0723\u0e45\u0724\u0e47\u0725\u0e49\u0726\u0e4b",
+ "\u0727\u0e4d\u0728\u0e4f\u0729\u0e51\u072a\u0e53\u072b\u0e55\u072c\u0e57",
+ "\u072d\u0e59\u072e\u0e5b\u072f\u0e5d\u0730\u0e5f\u0731\u0e61\u0732\u0e63",
+ "\u0733\u0e65\u0734\u0e67\u0735\u0e69\u0736\u0e6b\u0737\u0e6d\u0738\u0e6f",
+ "\u0739\u0e71\u073a\u0e73\u073b\u0e75\u073c\u0e77\u073d\u0e79\u073e\u0e7b",
+ "\u073f\u0e7d\u0740\u0e7f\u0741\u0e81\u0742\u0e83\u0743\u0e85\u0744\u0e87",
+ "\u0745\u0e89\u0746\u0e8b\u0747\u0e8d\u0748\u0e8f\u0749\u0e91\u074a\u0e93",
+ "\u074b\u0e95\u074c\u0e97\u074d\u0e99\u074e\u0e9b\u074f\u0e9d\u0750\u0e9f",
+ "\u0751\u0ea1\u0752\u0ea3\u0753\u0ea5\u0754\u0ea7\u0755\u0ea9\u0756\u0eab",
+ "\u0757\u0ead\u0758\u0eaf\u0759\u0eb1\u075a\u0eb3\u075b\u0eb5\u075c\u0eb7",
+ "\u075d\u0eb9\u075e\u0ebb\u075f\u0ebd\u0760\u0ebf\u0761\u0ec1\u0762\u0ec3",
+ "\u0763\u0ec5\u0764\u0ec7\u0765\u0ec9\u0766\u0ecb\u0767\u0ecd\u0768\u0ecf",
+ "\u0769\u0ed1\u076a\u0ed3\u076b\u0ed5\u076c\u0ed7\u076d\u0ed9\u076e\u0edb",
+ "\u076f\u0edd\u0770\u0edf\u0771\u0ee1\u0772\u0ee3\u0773\u0ee5\u0774\u0ee7",
+ "\u0775\u0ee9\u0776\u0eeb\u0777\u0eed\u0778\u0eef\u0779\u0ef1\u077a\u0ef3",
+ "\u077b\u0ef5\u077c\u0ef7\u077d\u0ef9\u077e\u0efb\u077f\u0efd\u0780\u0eff",
+ "\u0781\u0f01\u0782\u0f03\u0783\u0f05\u0784\u0f07\u0785\u0f09\u0786\u0f0b",
+ "\u0787\u0f0d\u0788\u0f0f\u0789\u0f11\u078a\u0f13\u078b\u0f15\u078c\u0f17",
+ "\u078d\u0f19\u078e\u0f1b\u078f\u0f1d\u0790\u0f1f\u0791\u0f21\u0792\u0f23",
+ "\u0793\u0f25\u0794\u0f27\u0795\u0f29\u0796\u0f2b\u0797\u0f2d\u0798\u0f2f",
+ "\u0799\u0f31\u079a\u0f33\u079b\u0f35\u079c\u0f37\u079d\u0f39\u079e\u0f3b",
+ "\u079f\u0f3d\u07a0\u0f3f\u07a1\u0f41\u07a2\u0f43\u07a3\u0f45\u07a4\u0f47",
+ "\u07a5\u0f49\u07a6\u0f4b\u07a7\u0f4d\u07a8\u0f4f\u07a9\u0f51\u07aa\u0f53",
+ "\u07ab\u0f55\u07ac\u0f57\u07ad\u0f59\u07ae\u0f5b\u07af\u0f5d\u07b0\u0f5f",
+ "\u07b1\u0f61\u07b2\u0f63\u07b3\u0f65\u07b4\u0f67\u07b5\u0f69\u07b6\u0f6b",
+ "\u07b7\u0f6d\u07b8\u0f6f\u07b9\u0f71\u07ba\u0f73\u07bb\u0f75\u07bc\u0f77",
+ "\u07bd\u0f79\u07be\u0f7b\u07bf\u0f7d\u07c0\u0f7f\u07c1\u0f81\u07c2\u0f83",
+ "\u07c3\u0f85\u07c4\u0f87\u07c5\u0f89\u07c6\u0f8b\u07c7\u0f8d\u07c8\u0f8f",
+ "\u07c9\u0f91\u07ca\u0f93\u07cb\u0f95\u07cc\u0f97\u07cd\u0f99\u07ce\u0f9b",
+ "\u07cf\u0f9d\u07d0\u0f9f\u07d1\u0fa1\u07d2\u0fa3\u07d3\u0fa5\u07d4\u0fa7",
+ "\u07d5\u0fa9\u07d6\u0fab\u07d7\u0fad\u07d8\u0faf\u07d9\u0fb1\u07da\u0fb3",
+ "\u07db\u0fb5\u07dc\u0fb7\u07dd\u0fb9\u07de\u0fbb\u07df\u0fbd\u07e0\u0fbf",
+ "\u07e1\u0fc1\u07e2\u0fc3\u07e3\u0fc5\u07e4\u0fc7\u07e5\u0fc9\u07e6\u0fcb",
+ "\u07e7\u0fcd\u07e8\u0fcf\u07e9\u0fd1\u07ea\u0fd3\u07eb\u0fd5\u07ec\u0fd7",
+ "\u07ed\u0fd9\u07ee\u0fdb\u07ef\u0fdd\u07f0\u0fdf\u07f1\u0fe1\u07f2\u0fe3",
+ "\u07f3\u0fe5\u07f4\u0fe7\u07f5\u0fe9\u07f6\u0feb\u07f7\u0fed\u07f8\u0fef",
+ "\u07f9\u0ff1\u07fa\u0ff3\u07fb\u0ff5\u07fc\u0ff7\u07fd\u0ff9\u07fe\u0ffb",
+ "\u07ff\u0ffd\u0800\u0fff\u0801\u1001\u0802\u1003\u0803\u1005\u0804\u1007",
+ "\u0805\u1009\u0806\u100b\u0807\u100d\u0808\u100f\u0809\u1011\u080a\u1013",
+ "\u080b\u1015\u080c\u1017\u080d\u1019\u080e\u101b\u080f\u101d\u0810\u101f",
+ "\u0811\u1021\u0812\u1023\u0813\u1025\u0814\u1027\u0815\u1029\u0816\u102b",
+ "\u0817\u102d\u0818\u102f\u0819\u1031\u081a\u1033\u081b\u1035\u081c\u1037",
+ "\u081d\u1039\u081e\u103b\u081f\u103d\u0820\u103f\u0821\u1041\u0822\u1043",
+ "\u0823\u1045\u0824\u1047\u0825\u1049\u0826\u104b\u0827\u104d\u0828\u104f",
+ "\u0829\u1051\u082a\u1053\u082b\u1055\u082c\u1057\u082d\u1059\u082e\u105b",
+ "\u082f\u105d\u0830\u105f\u0831\u1061\u0832\u1063\u0833\u1065\u0834\u1067",
+ "\u0835\u1069\u0836\u106b\u0837\u106d\u0838\u106f\u0839\u1071\u083a\u1073",
+ "\u083b\u1075\u083c\u1077\u083d\u1079\u083e\u107b\u083f\u107d\u0840\u107f",
+ "\u0841\u1081\u0842\u1083\u0843\u1085\u0844\u1087\u0845\u1089\u0846\u108b",
+ "\u0847\u108d\u0848\u108f\u0849\u1091\u084a\u1093\u084b\u1095\u084c\u1097",
+ "\u084d\u1099\u084e\u109b\u084f\u109d\u0850\u109f\u0851\u10a1\u0852\u10a3",
+ "\u0853\u10a5\u0854\u10a7\u0855\u10a9\u0856\u10ab\u0857\u10ad\u0858\u10af",
+ "\u0859\u10b1\u085a\u10b3\u085b\u10b5\u085c\u10b7\u085d\u10b9\u085e\u10bb",
+ "\u085f\u10bd\u0860\u10bf\u0861\u10c1\u0862\u10c3\u0863\u10c5\u0864\u10c7",
+ "\u0865\u10c9\u0866\u10cb\u0867\u10cd\u0868\u10cf\u0869\u10d1\u086a\u10d3",
+ "\u086b\u10d5\u086c\u10d7\u086d\u10d9\u086e\u10db\u086f\u10dd\u0870\u10df",
+ "\u0871\u10e1\u0872\u10e3\u0873\u10e5\u0874\u10e7\u0875\u10e9\u0876\u10eb",
+ "\u0877\u10ed\u0878\u10ef\u0879\u10f1\u087a\u10f3\u087b\u10f5\u087c\u10f7",
+ "\u087d\u10f9\u087e\u10fb\u087f\u10fd\u0880\u10ff\u0881\u1101\u0882\u1103",
+ "\u0883\u1105\u0884\u1107\u0885\u1109\u0886\u110b\u0887\u110d\u0888\u110f",
+ "\u0889\u1111\u088a\u1113\u088b\u1115\u088c\u1117\u088d\u1119\u088e\u111b",
+ "\u088f\u111d\u0890\u111f\u0891\u1121\u0892\u1123\u0893\u1125\u0894\u1127",
+ "\u0895\u1129\u0896\u112b\u0897\u112d\u0898\u112f\u0899\u1131\u089a\u1133",
+ "\u089b\u1135\u089c\u1137\u089d\u1139\u089e\u113b\u089f\u113d\u08a0\u113f",
+ "\u08a1\u1141\u08a2\u1143\u08a3\u1145\u08a4\u1147\u08a5\u1149\u08a6\u114b",
+ "\u08a7\u114d\u08a8\u114f\u08a9\u1151\u08aa\u1153\u08ab\u1155\u08ac\u1157",
+ "\u08ad\u1159\u0002\u115b\u0002\u115d\u0002\u115f\u0002\u1161\u0002\u1163",
+ "\u0002\u1165\u0002\u1167\u0002\u1169\u0002\u116b\u08ae\u116d\u08af\u116f",
+ "\u08b0\u1171\u08b1\u1173\u08b2\u1175\u08b3\u1177\u08b4\u1179\u08b5\u117b",
+ "\u08b6\u117d\u08b7\u117f\u08b8\u1181\u08b9\u1183\u08ba\u1185\u08bb\u1187",
+ "\u08bc\u1189\u08bd\u118b\u08be\u118d\u08bf\u118f\u08c0\u1191\u08c1\u1193",
+ "\u08c2\u1195\u08c3\u1197\u08c4\u1199\u08c5\u119b\u08c6\u119d\u08c7\u119f",
+ "\u08c8\u11a1\u08c9\u11a3\u08ca\u11a5\u08cb\u11a7\u08cc\u11a9\u08cd\u11ab",
+ "\u08ce\u11ad\u08cf\u11af\u0002\u11b1\u0002\u11b3\u0002\u11b5\u0002\u11b7",
+ "\u0002\u11b9\u0002\u0003\u0002\u000f\u0005\u0002\f\f\u000f\u000f))\u0003",
+ "\u000223\u0004\u00022;CH\u0003\u00022;\u0004\u0002--//\u0004\u0002F",
+ "FHH\u0005\u0002\f\f\u000f\u000f$$\u0004\u00022;aa\u0004\u0002\f\f\u000f",
+ "\u000f\u0005\u0002%&2;aa\u0005\u0002\u000b\f\u000f\u000f\"\"\u0003\u0002",
+ "C\\\u0004\u0002\u000b\u000b\"\"\u0002\u7463\u0002\u0003\u0003\u0002",
+ "\u0002\u0002\u0002\u0005\u0003\u0002\u0002\u0002\u0002\u0007\u0003\u0002",
+ "\u0002\u0002\u0002\t\u0003\u0002\u0002\u0002\u0002\u000b\u0003\u0002",
+ "\u0002\u0002\u0002\r\u0003\u0002\u0002\u0002\u0002\u000f\u0003\u0002",
+ "\u0002\u0002\u0002\u0011\u0003\u0002\u0002\u0002\u0002\u0013\u0003\u0002",
+ "\u0002\u0002\u0002\u0015\u0003\u0002\u0002\u0002\u0002\u0017\u0003\u0002",
+ "\u0002\u0002\u0002\u0019\u0003\u0002\u0002\u0002\u0002\u001b\u0003\u0002",
+ "\u0002\u0002\u0002\u001d\u0003\u0002\u0002\u0002\u0002\u001f\u0003\u0002",
+ "\u0002\u0002\u0002!\u0003\u0002\u0002\u0002\u0002#\u0003\u0002\u0002",
+ "\u0002\u0002%\u0003\u0002\u0002\u0002\u0002\'\u0003\u0002\u0002\u0002",
+ "\u0002)\u0003\u0002\u0002\u0002\u0002+\u0003\u0002\u0002\u0002\u0002",
+ "-\u0003\u0002\u0002\u0002\u0002/\u0003\u0002\u0002\u0002\u00021\u0003",
+ "\u0002\u0002\u0002\u00023\u0003\u0002\u0002\u0002\u00025\u0003\u0002",
+ "\u0002\u0002\u00027\u0003\u0002\u0002\u0002\u00029\u0003\u0002\u0002",
+ "\u0002\u0002;\u0003\u0002\u0002\u0002\u0002=\u0003\u0002\u0002\u0002",
+ "\u0002?\u0003\u0002\u0002\u0002\u0002A\u0003\u0002\u0002\u0002\u0002",
+ "C\u0003\u0002\u0002\u0002\u0002E\u0003\u0002\u0002\u0002\u0002G\u0003",
+ "\u0002\u0002\u0002\u0002I\u0003\u0002\u0002\u0002\u0002K\u0003\u0002",
+ "\u0002\u0002\u0002M\u0003\u0002\u0002\u0002\u0002O\u0003\u0002\u0002",
+ "\u0002\u0002Q\u0003\u0002\u0002\u0002\u0002S\u0003\u0002\u0002\u0002",
+ "\u0002U\u0003\u0002\u0002\u0002\u0002W\u0003\u0002\u0002\u0002\u0002",
+ "Y\u0003\u0002\u0002\u0002\u0002[\u0003\u0002\u0002\u0002\u0002]\u0003",
+ "\u0002\u0002\u0002\u0002_\u0003\u0002\u0002\u0002\u0002a\u0003\u0002",
+ "\u0002\u0002\u0002c\u0003\u0002\u0002\u0002\u0002e\u0003\u0002\u0002",
+ "\u0002\u0002g\u0003\u0002\u0002\u0002\u0002i\u0003\u0002\u0002\u0002",
+ "\u0002k\u0003\u0002\u0002\u0002\u0002m\u0003\u0002\u0002\u0002\u0002",
+ "o\u0003\u0002\u0002\u0002\u0002q\u0003\u0002\u0002\u0002\u0002s\u0003",
+ "\u0002\u0002\u0002\u0002u\u0003\u0002\u0002\u0002\u0002w\u0003\u0002",
+ "\u0002\u0002\u0002y\u0003\u0002\u0002\u0002\u0002{\u0003\u0002\u0002",
+ "\u0002\u0002}\u0003\u0002\u0002\u0002\u0002\u007f\u0003\u0002\u0002",
+ "\u0002\u0002\u0081\u0003\u0002\u0002\u0002\u0002\u0083\u0003\u0002\u0002",
+ "\u0002\u0002\u0085\u0003\u0002\u0002\u0002\u0002\u0087\u0003\u0002\u0002",
+ "\u0002\u0002\u0089\u0003\u0002\u0002\u0002\u0002\u008b\u0003\u0002\u0002",
+ "\u0002\u0002\u008d\u0003\u0002\u0002\u0002\u0002\u008f\u0003\u0002\u0002",
+ "\u0002\u0002\u0091\u0003\u0002\u0002\u0002\u0002\u0093\u0003\u0002\u0002",
+ "\u0002\u0002\u0095\u0003\u0002\u0002\u0002\u0002\u0097\u0003\u0002\u0002",
+ "\u0002\u0002\u0099\u0003\u0002\u0002\u0002\u0002\u009b\u0003\u0002\u0002",
+ "\u0002\u0002\u009d\u0003\u0002\u0002\u0002\u0002\u009f\u0003\u0002\u0002",
+ "\u0002\u0002\u00a1\u0003\u0002\u0002\u0002\u0002\u00a3\u0003\u0002\u0002",
+ "\u0002\u0002\u00a5\u0003\u0002\u0002\u0002\u0002\u00a7\u0003\u0002\u0002",
+ "\u0002\u0002\u00a9\u0003\u0002\u0002\u0002\u0002\u00ab\u0003\u0002\u0002",
+ "\u0002\u0002\u00ad\u0003\u0002\u0002\u0002\u0002\u00af\u0003\u0002\u0002",
+ "\u0002\u0002\u00b1\u0003\u0002\u0002\u0002\u0002\u00b3\u0003\u0002\u0002",
+ "\u0002\u0002\u00b5\u0003\u0002\u0002\u0002\u0002\u00b7\u0003\u0002\u0002",
+ "\u0002\u0002\u00b9\u0003\u0002\u0002\u0002\u0002\u00bb\u0003\u0002\u0002",
+ "\u0002\u0002\u00bd\u0003\u0002\u0002\u0002\u0002\u00bf\u0003\u0002\u0002",
+ "\u0002\u0002\u00c1\u0003\u0002\u0002\u0002\u0002\u00c3\u0003\u0002\u0002",
+ "\u0002\u0002\u00c5\u0003\u0002\u0002\u0002\u0002\u00c7\u0003\u0002\u0002",
+ "\u0002\u0002\u00c9\u0003\u0002\u0002\u0002\u0002\u00cb\u0003\u0002\u0002",
+ "\u0002\u0002\u00cd\u0003\u0002\u0002\u0002\u0002\u00cf\u0003\u0002\u0002",
+ "\u0002\u0002\u00d1\u0003\u0002\u0002\u0002\u0002\u00d3\u0003\u0002\u0002",
+ "\u0002\u0002\u00d5\u0003\u0002\u0002\u0002\u0002\u00d7\u0003\u0002\u0002",
+ "\u0002\u0002\u00d9\u0003\u0002\u0002\u0002\u0002\u00db\u0003\u0002\u0002",
+ "\u0002\u0002\u00dd\u0003\u0002\u0002\u0002\u0002\u00df\u0003\u0002\u0002",
+ "\u0002\u0002\u00e1\u0003\u0002\u0002\u0002\u0002\u00e3\u0003\u0002\u0002",
+ "\u0002\u0002\u00e5\u0003\u0002\u0002\u0002\u0002\u00e7\u0003\u0002\u0002",
+ "\u0002\u0002\u00e9\u0003\u0002\u0002\u0002\u0002\u00eb\u0003\u0002\u0002",
+ "\u0002\u0002\u00ed\u0003\u0002\u0002\u0002\u0002\u00ef\u0003\u0002\u0002",
+ "\u0002\u0002\u00f1\u0003\u0002\u0002\u0002\u0002\u00f3\u0003\u0002\u0002",
+ "\u0002\u0002\u00f5\u0003\u0002\u0002\u0002\u0002\u00f7\u0003\u0002\u0002",
+ "\u0002\u0002\u00f9\u0003\u0002\u0002\u0002\u0002\u00fb\u0003\u0002\u0002",
+ "\u0002\u0002\u00fd\u0003\u0002\u0002\u0002\u0002\u00ff\u0003\u0002\u0002",
+ "\u0002\u0002\u0101\u0003\u0002\u0002\u0002\u0002\u0103\u0003\u0002\u0002",
+ "\u0002\u0002\u0105\u0003\u0002\u0002\u0002\u0002\u0107\u0003\u0002\u0002",
+ "\u0002\u0002\u0109\u0003\u0002\u0002\u0002\u0002\u010b\u0003\u0002\u0002",
+ "\u0002\u0002\u010d\u0003\u0002\u0002\u0002\u0002\u010f\u0003\u0002\u0002",
+ "\u0002\u0002\u0111\u0003\u0002\u0002\u0002\u0002\u0113\u0003\u0002\u0002",
+ "\u0002\u0002\u0115\u0003\u0002\u0002\u0002\u0002\u0117\u0003\u0002\u0002",
+ "\u0002\u0002\u0119\u0003\u0002\u0002\u0002\u0002\u011b\u0003\u0002\u0002",
+ "\u0002\u0002\u011d\u0003\u0002\u0002\u0002\u0002\u011f\u0003\u0002\u0002",
+ "\u0002\u0002\u0121\u0003\u0002\u0002\u0002\u0002\u0123\u0003\u0002\u0002",
+ "\u0002\u0002\u0125\u0003\u0002\u0002\u0002\u0002\u0127\u0003\u0002\u0002",
+ "\u0002\u0002\u0129\u0003\u0002\u0002\u0002\u0002\u012b\u0003\u0002\u0002",
+ "\u0002\u0002\u012d\u0003\u0002\u0002\u0002\u0002\u012f\u0003\u0002\u0002",
+ "\u0002\u0002\u0131\u0003\u0002\u0002\u0002\u0002\u0133\u0003\u0002\u0002",
+ "\u0002\u0002\u0135\u0003\u0002\u0002\u0002\u0002\u0137\u0003\u0002\u0002",
+ "\u0002\u0002\u0139\u0003\u0002\u0002\u0002\u0002\u013b\u0003\u0002\u0002",
+ "\u0002\u0002\u013d\u0003\u0002\u0002\u0002\u0002\u013f\u0003\u0002\u0002",
+ "\u0002\u0002\u0141\u0003\u0002\u0002\u0002\u0002\u0143\u0003\u0002\u0002",
+ "\u0002\u0002\u0145\u0003\u0002\u0002\u0002\u0002\u0147\u0003\u0002\u0002",
+ "\u0002\u0002\u0149\u0003\u0002\u0002\u0002\u0002\u014b\u0003\u0002\u0002",
+ "\u0002\u0002\u014d\u0003\u0002\u0002\u0002\u0002\u014f\u0003\u0002\u0002",
+ "\u0002\u0002\u0151\u0003\u0002\u0002\u0002\u0002\u0153\u0003\u0002\u0002",
+ "\u0002\u0002\u0155\u0003\u0002\u0002\u0002\u0002\u0157\u0003\u0002\u0002",
+ "\u0002\u0002\u0159\u0003\u0002\u0002\u0002\u0002\u015b\u0003\u0002\u0002",
+ "\u0002\u0002\u015d\u0003\u0002\u0002\u0002\u0002\u015f\u0003\u0002\u0002",
+ "\u0002\u0002\u0161\u0003\u0002\u0002\u0002\u0002\u0163\u0003\u0002\u0002",
+ "\u0002\u0002\u0165\u0003\u0002\u0002\u0002\u0002\u0167\u0003\u0002\u0002",
+ "\u0002\u0002\u0169\u0003\u0002\u0002\u0002\u0002\u016b\u0003\u0002\u0002",
+ "\u0002\u0002\u016d\u0003\u0002\u0002\u0002\u0002\u016f\u0003\u0002\u0002",
+ "\u0002\u0002\u0171\u0003\u0002\u0002\u0002\u0002\u0173\u0003\u0002\u0002",
+ "\u0002\u0002\u0175\u0003\u0002\u0002\u0002\u0002\u0177\u0003\u0002\u0002",
+ "\u0002\u0002\u0179\u0003\u0002\u0002\u0002\u0002\u017b\u0003\u0002\u0002",
+ "\u0002\u0002\u017d\u0003\u0002\u0002\u0002\u0002\u017f\u0003\u0002\u0002",
+ "\u0002\u0002\u0181\u0003\u0002\u0002\u0002\u0002\u0183\u0003\u0002\u0002",
+ "\u0002\u0002\u0185\u0003\u0002\u0002\u0002\u0002\u0187\u0003\u0002\u0002",
+ "\u0002\u0002\u0189\u0003\u0002\u0002\u0002\u0002\u018b\u0003\u0002\u0002",
+ "\u0002\u0002\u018d\u0003\u0002\u0002\u0002\u0002\u018f\u0003\u0002\u0002",
+ "\u0002\u0002\u0191\u0003\u0002\u0002\u0002\u0002\u0193\u0003\u0002\u0002",
+ "\u0002\u0002\u0195\u0003\u0002\u0002\u0002\u0002\u0197\u0003\u0002\u0002",
+ "\u0002\u0002\u0199\u0003\u0002\u0002\u0002\u0002\u019b\u0003\u0002\u0002",
+ "\u0002\u0002\u019d\u0003\u0002\u0002\u0002\u0002\u019f\u0003\u0002\u0002",
+ "\u0002\u0002\u01a1\u0003\u0002\u0002\u0002\u0002\u01a3\u0003\u0002\u0002",
+ "\u0002\u0002\u01a5\u0003\u0002\u0002\u0002\u0002\u01a7\u0003\u0002\u0002",
+ "\u0002\u0002\u01a9\u0003\u0002\u0002\u0002\u0002\u01ab\u0003\u0002\u0002",
+ "\u0002\u0002\u01ad\u0003\u0002\u0002\u0002\u0002\u01af\u0003\u0002\u0002",
+ "\u0002\u0002\u01b1\u0003\u0002\u0002\u0002\u0002\u01b3\u0003\u0002\u0002",
+ "\u0002\u0002\u01b5\u0003\u0002\u0002\u0002\u0002\u01b7\u0003\u0002\u0002",
+ "\u0002\u0002\u01b9\u0003\u0002\u0002\u0002\u0002\u01bb\u0003\u0002\u0002",
+ "\u0002\u0002\u01bd\u0003\u0002\u0002\u0002\u0002\u01bf\u0003\u0002\u0002",
+ "\u0002\u0002\u01c1\u0003\u0002\u0002\u0002\u0002\u01c3\u0003\u0002\u0002",
+ "\u0002\u0002\u01c5\u0003\u0002\u0002\u0002\u0002\u01c7\u0003\u0002\u0002",
+ "\u0002\u0002\u01c9\u0003\u0002\u0002\u0002\u0002\u01cb\u0003\u0002\u0002",
+ "\u0002\u0002\u01cd\u0003\u0002\u0002\u0002\u0002\u01cf\u0003\u0002\u0002",
+ "\u0002\u0002\u01d1\u0003\u0002\u0002\u0002\u0002\u01d3\u0003\u0002\u0002",
+ "\u0002\u0002\u01d5\u0003\u0002\u0002\u0002\u0002\u01d7\u0003\u0002\u0002",
+ "\u0002\u0002\u01d9\u0003\u0002\u0002\u0002\u0002\u01db\u0003\u0002\u0002",
+ "\u0002\u0002\u01dd\u0003\u0002\u0002\u0002\u0002\u01df\u0003\u0002\u0002",
+ "\u0002\u0002\u01e1\u0003\u0002\u0002\u0002\u0002\u01e3\u0003\u0002\u0002",
+ "\u0002\u0002\u01e5\u0003\u0002\u0002\u0002\u0002\u01e7\u0003\u0002\u0002",
+ "\u0002\u0002\u01e9\u0003\u0002\u0002\u0002\u0002\u01eb\u0003\u0002\u0002",
+ "\u0002\u0002\u01ed\u0003\u0002\u0002\u0002\u0002\u01ef\u0003\u0002\u0002",
+ "\u0002\u0002\u01f1\u0003\u0002\u0002\u0002\u0002\u01f3\u0003\u0002\u0002",
+ "\u0002\u0002\u01f5\u0003\u0002\u0002\u0002\u0002\u01f7\u0003\u0002\u0002",
+ "\u0002\u0002\u01f9\u0003\u0002\u0002\u0002\u0002\u01fb\u0003\u0002\u0002",
+ "\u0002\u0002\u01fd\u0003\u0002\u0002\u0002\u0002\u01ff\u0003\u0002\u0002",
+ "\u0002\u0002\u0201\u0003\u0002\u0002\u0002\u0002\u0203\u0003\u0002\u0002",
+ "\u0002\u0002\u0205\u0003\u0002\u0002\u0002\u0002\u0207\u0003\u0002\u0002",
+ "\u0002\u0002\u0209\u0003\u0002\u0002\u0002\u0002\u020b\u0003\u0002\u0002",
+ "\u0002\u0002\u020d\u0003\u0002\u0002\u0002\u0002\u020f\u0003\u0002\u0002",
+ "\u0002\u0002\u0211\u0003\u0002\u0002\u0002\u0002\u0213\u0003\u0002\u0002",
+ "\u0002\u0002\u0215\u0003\u0002\u0002\u0002\u0002\u0217\u0003\u0002\u0002",
+ "\u0002\u0002\u0219\u0003\u0002\u0002\u0002\u0002\u021b\u0003\u0002\u0002",
+ "\u0002\u0002\u021d\u0003\u0002\u0002\u0002\u0002\u021f\u0003\u0002\u0002",
+ "\u0002\u0002\u0221\u0003\u0002\u0002\u0002\u0002\u0223\u0003\u0002\u0002",
+ "\u0002\u0002\u0225\u0003\u0002\u0002\u0002\u0002\u0227\u0003\u0002\u0002",
+ "\u0002\u0002\u0229\u0003\u0002\u0002\u0002\u0002\u022b\u0003\u0002\u0002",
+ "\u0002\u0002\u022d\u0003\u0002\u0002\u0002\u0002\u022f\u0003\u0002\u0002",
+ "\u0002\u0002\u0231\u0003\u0002\u0002\u0002\u0002\u0233\u0003\u0002\u0002",
+ "\u0002\u0002\u0235\u0003\u0002\u0002\u0002\u0002\u0237\u0003\u0002\u0002",
+ "\u0002\u0002\u0239\u0003\u0002\u0002\u0002\u0002\u023b\u0003\u0002\u0002",
+ "\u0002\u0002\u023d\u0003\u0002\u0002\u0002\u0002\u023f\u0003\u0002\u0002",
+ "\u0002\u0002\u0241\u0003\u0002\u0002\u0002\u0002\u0243\u0003\u0002\u0002",
+ "\u0002\u0002\u0245\u0003\u0002\u0002\u0002\u0002\u0247\u0003\u0002\u0002",
+ "\u0002\u0002\u0249\u0003\u0002\u0002\u0002\u0002\u024b\u0003\u0002\u0002",
+ "\u0002\u0002\u024d\u0003\u0002\u0002\u0002\u0002\u024f\u0003\u0002\u0002",
+ "\u0002\u0002\u0251\u0003\u0002\u0002\u0002\u0002\u0253\u0003\u0002\u0002",
+ "\u0002\u0002\u0255\u0003\u0002\u0002\u0002\u0002\u0257\u0003\u0002\u0002",
+ "\u0002\u0002\u0259\u0003\u0002\u0002\u0002\u0002\u025b\u0003\u0002\u0002",
+ "\u0002\u0002\u025d\u0003\u0002\u0002\u0002\u0002\u025f\u0003\u0002\u0002",
+ "\u0002\u0002\u0261\u0003\u0002\u0002\u0002\u0002\u0263\u0003\u0002\u0002",
+ "\u0002\u0002\u0265\u0003\u0002\u0002\u0002\u0002\u0267\u0003\u0002\u0002",
+ "\u0002\u0002\u0269\u0003\u0002\u0002\u0002\u0002\u026b\u0003\u0002\u0002",
+ "\u0002\u0002\u026d\u0003\u0002\u0002\u0002\u0002\u026f\u0003\u0002\u0002",
+ "\u0002\u0002\u0271\u0003\u0002\u0002\u0002\u0002\u0273\u0003\u0002\u0002",
+ "\u0002\u0002\u0275\u0003\u0002\u0002\u0002\u0002\u0277\u0003\u0002\u0002",
+ "\u0002\u0002\u0279\u0003\u0002\u0002\u0002\u0002\u027b\u0003\u0002\u0002",
+ "\u0002\u0002\u027d\u0003\u0002\u0002\u0002\u0002\u027f\u0003\u0002\u0002",
+ "\u0002\u0002\u0281\u0003\u0002\u0002\u0002\u0002\u0283\u0003\u0002\u0002",
+ "\u0002\u0002\u0285\u0003\u0002\u0002\u0002\u0002\u0287\u0003\u0002\u0002",
+ "\u0002\u0002\u0289\u0003\u0002\u0002\u0002\u0002\u028b\u0003\u0002\u0002",
+ "\u0002\u0002\u028d\u0003\u0002\u0002\u0002\u0002\u028f\u0003\u0002\u0002",
+ "\u0002\u0002\u0291\u0003\u0002\u0002\u0002\u0002\u0293\u0003\u0002\u0002",
+ "\u0002\u0002\u0295\u0003\u0002\u0002\u0002\u0002\u0297\u0003\u0002\u0002",
+ "\u0002\u0002\u0299\u0003\u0002\u0002\u0002\u0002\u029b\u0003\u0002\u0002",
+ "\u0002\u0002\u029d\u0003\u0002\u0002\u0002\u0002\u029f\u0003\u0002\u0002",
+ "\u0002\u0002\u02a1\u0003\u0002\u0002\u0002\u0002\u02a3\u0003\u0002\u0002",
+ "\u0002\u0002\u02a5\u0003\u0002\u0002\u0002\u0002\u02a7\u0003\u0002\u0002",
+ "\u0002\u0002\u02a9\u0003\u0002\u0002\u0002\u0002\u02ab\u0003\u0002\u0002",
+ "\u0002\u0002\u02ad\u0003\u0002\u0002\u0002\u0002\u02af\u0003\u0002\u0002",
+ "\u0002\u0002\u02b1\u0003\u0002\u0002\u0002\u0002\u02b3\u0003\u0002\u0002",
+ "\u0002\u0002\u02b5\u0003\u0002\u0002\u0002\u0002\u02b7\u0003\u0002\u0002",
+ "\u0002\u0002\u02b9\u0003\u0002\u0002\u0002\u0002\u02bb\u0003\u0002\u0002",
+ "\u0002\u0002\u02bd\u0003\u0002\u0002\u0002\u0002\u02bf\u0003\u0002\u0002",
+ "\u0002\u0002\u02c1\u0003\u0002\u0002\u0002\u0002\u02c3\u0003\u0002\u0002",
+ "\u0002\u0002\u02c5\u0003\u0002\u0002\u0002\u0002\u02c7\u0003\u0002\u0002",
+ "\u0002\u0002\u02c9\u0003\u0002\u0002\u0002\u0002\u02cb\u0003\u0002\u0002",
+ "\u0002\u0002\u02cd\u0003\u0002\u0002\u0002\u0002\u02cf\u0003\u0002\u0002",
+ "\u0002\u0002\u02d1\u0003\u0002\u0002\u0002\u0002\u02d3\u0003\u0002\u0002",
+ "\u0002\u0002\u02d5\u0003\u0002\u0002\u0002\u0002\u02d7\u0003\u0002\u0002",
+ "\u0002\u0002\u02d9\u0003\u0002\u0002\u0002\u0002\u02db\u0003\u0002\u0002",
+ "\u0002\u0002\u02dd\u0003\u0002\u0002\u0002\u0002\u02df\u0003\u0002\u0002",
+ "\u0002\u0002\u02e1\u0003\u0002\u0002\u0002\u0002\u02e3\u0003\u0002\u0002",
+ "\u0002\u0002\u02e5\u0003\u0002\u0002\u0002\u0002\u02e7\u0003\u0002\u0002",
+ "\u0002\u0002\u02e9\u0003\u0002\u0002\u0002\u0002\u02eb\u0003\u0002\u0002",
+ "\u0002\u0002\u02ed\u0003\u0002\u0002\u0002\u0002\u02ef\u0003\u0002\u0002",
+ "\u0002\u0002\u02f1\u0003\u0002\u0002\u0002\u0002\u02f3\u0003\u0002\u0002",
+ "\u0002\u0002\u02f5\u0003\u0002\u0002\u0002\u0002\u02f7\u0003\u0002\u0002",
+ "\u0002\u0002\u02f9\u0003\u0002\u0002\u0002\u0002\u02fb\u0003\u0002\u0002",
+ "\u0002\u0002\u02fd\u0003\u0002\u0002\u0002\u0002\u02ff\u0003\u0002\u0002",
+ "\u0002\u0002\u0301\u0003\u0002\u0002\u0002\u0002\u0303\u0003\u0002\u0002",
+ "\u0002\u0002\u0305\u0003\u0002\u0002\u0002\u0002\u0307\u0003\u0002\u0002",
+ "\u0002\u0002\u0309\u0003\u0002\u0002\u0002\u0002\u030b\u0003\u0002\u0002",
+ "\u0002\u0002\u030d\u0003\u0002\u0002\u0002\u0002\u030f\u0003\u0002\u0002",
+ "\u0002\u0002\u0311\u0003\u0002\u0002\u0002\u0002\u0313\u0003\u0002\u0002",
+ "\u0002\u0002\u0315\u0003\u0002\u0002\u0002\u0002\u0317\u0003\u0002\u0002",
+ "\u0002\u0002\u0319\u0003\u0002\u0002\u0002\u0002\u031b\u0003\u0002\u0002",
+ "\u0002\u0002\u031d\u0003\u0002\u0002\u0002\u0002\u031f\u0003\u0002\u0002",
+ "\u0002\u0002\u0321\u0003\u0002\u0002\u0002\u0002\u0323\u0003\u0002\u0002",
+ "\u0002\u0002\u0325\u0003\u0002\u0002\u0002\u0002\u0327\u0003\u0002\u0002",
+ "\u0002\u0002\u0329\u0003\u0002\u0002\u0002\u0002\u032b\u0003\u0002\u0002",
+ "\u0002\u0002\u032d\u0003\u0002\u0002\u0002\u0002\u032f\u0003\u0002\u0002",
+ "\u0002\u0002\u0331\u0003\u0002\u0002\u0002\u0002\u0333\u0003\u0002\u0002",
+ "\u0002\u0002\u0335\u0003\u0002\u0002\u0002\u0002\u0337\u0003\u0002\u0002",
+ "\u0002\u0002\u0339\u0003\u0002\u0002\u0002\u0002\u033b\u0003\u0002\u0002",
+ "\u0002\u0002\u033d\u0003\u0002\u0002\u0002\u0002\u033f\u0003\u0002\u0002",
+ "\u0002\u0002\u0341\u0003\u0002\u0002\u0002\u0002\u0343\u0003\u0002\u0002",
+ "\u0002\u0002\u0345\u0003\u0002\u0002\u0002\u0002\u0347\u0003\u0002\u0002",
+ "\u0002\u0002\u0349\u0003\u0002\u0002\u0002\u0002\u034b\u0003\u0002\u0002",
+ "\u0002\u0002\u034d\u0003\u0002\u0002\u0002\u0002\u034f\u0003\u0002\u0002",
+ "\u0002\u0002\u0351\u0003\u0002\u0002\u0002\u0002\u0353\u0003\u0002\u0002",
+ "\u0002\u0002\u0355\u0003\u0002\u0002\u0002\u0002\u0357\u0003\u0002\u0002",
+ "\u0002\u0002\u0359\u0003\u0002\u0002\u0002\u0002\u035b\u0003\u0002\u0002",
+ "\u0002\u0002\u035d\u0003\u0002\u0002\u0002\u0002\u035f\u0003\u0002\u0002",
+ "\u0002\u0002\u0361\u0003\u0002\u0002\u0002\u0002\u0363\u0003\u0002\u0002",
+ "\u0002\u0002\u0365\u0003\u0002\u0002\u0002\u0002\u0367\u0003\u0002\u0002",
+ "\u0002\u0002\u0369\u0003\u0002\u0002\u0002\u0002\u036b\u0003\u0002\u0002",
+ "\u0002\u0002\u036d\u0003\u0002\u0002\u0002\u0002\u036f\u0003\u0002\u0002",
+ "\u0002\u0002\u0371\u0003\u0002\u0002\u0002\u0002\u0373\u0003\u0002\u0002",
+ "\u0002\u0002\u0375\u0003\u0002\u0002\u0002\u0002\u0377\u0003\u0002\u0002",
+ "\u0002\u0002\u0379\u0003\u0002\u0002\u0002\u0002\u037b\u0003\u0002\u0002",
+ "\u0002\u0002\u037d\u0003\u0002\u0002\u0002\u0002\u037f\u0003\u0002\u0002",
+ "\u0002\u0002\u0381\u0003\u0002\u0002\u0002\u0002\u0383\u0003\u0002\u0002",
+ "\u0002\u0002\u0385\u0003\u0002\u0002\u0002\u0002\u0387\u0003\u0002\u0002",
+ "\u0002\u0002\u0389\u0003\u0002\u0002\u0002\u0002\u038b\u0003\u0002\u0002",
+ "\u0002\u0002\u038d\u0003\u0002\u0002\u0002\u0002\u038f\u0003\u0002\u0002",
+ "\u0002\u0002\u0391\u0003\u0002\u0002\u0002\u0002\u0393\u0003\u0002\u0002",
+ "\u0002\u0002\u0395\u0003\u0002\u0002\u0002\u0002\u0397\u0003\u0002\u0002",
+ "\u0002\u0002\u0399\u0003\u0002\u0002\u0002\u0002\u039b\u0003\u0002\u0002",
+ "\u0002\u0002\u039d\u0003\u0002\u0002\u0002\u0002\u039f\u0003\u0002\u0002",
+ "\u0002\u0002\u03a1\u0003\u0002\u0002\u0002\u0002\u03a3\u0003\u0002\u0002",
+ "\u0002\u0002\u03a5\u0003\u0002\u0002\u0002\u0002\u03a7\u0003\u0002\u0002",
+ "\u0002\u0002\u03a9\u0003\u0002\u0002\u0002\u0002\u03ab\u0003\u0002\u0002",
+ "\u0002\u0002\u03ad\u0003\u0002\u0002\u0002\u0002\u03af\u0003\u0002\u0002",
+ "\u0002\u0002\u03b1\u0003\u0002\u0002\u0002\u0002\u03b3\u0003\u0002\u0002",
+ "\u0002\u0002\u03b5\u0003\u0002\u0002\u0002\u0002\u03b7\u0003\u0002\u0002",
+ "\u0002\u0002\u03b9\u0003\u0002\u0002\u0002\u0002\u03bb\u0003\u0002\u0002",
+ "\u0002\u0002\u03bd\u0003\u0002\u0002\u0002\u0002\u03bf\u0003\u0002\u0002",
+ "\u0002\u0002\u03c1\u0003\u0002\u0002\u0002\u0002\u03c3\u0003\u0002\u0002",
+ "\u0002\u0002\u03c5\u0003\u0002\u0002\u0002\u0002\u03c7\u0003\u0002\u0002",
+ "\u0002\u0002\u03c9\u0003\u0002\u0002\u0002\u0002\u03cb\u0003\u0002\u0002",
+ "\u0002\u0002\u03cd\u0003\u0002\u0002\u0002\u0002\u03cf\u0003\u0002\u0002",
+ "\u0002\u0002\u03d1\u0003\u0002\u0002\u0002\u0002\u03d3\u0003\u0002\u0002",
+ "\u0002\u0002\u03d5\u0003\u0002\u0002\u0002\u0002\u03d7\u0003\u0002\u0002",
+ "\u0002\u0002\u03d9\u0003\u0002\u0002\u0002\u0002\u03db\u0003\u0002\u0002",
+ "\u0002\u0002\u03dd\u0003\u0002\u0002\u0002\u0002\u03df\u0003\u0002\u0002",
+ "\u0002\u0002\u03e1\u0003\u0002\u0002\u0002\u0002\u03e3\u0003\u0002\u0002",
+ "\u0002\u0002\u03e5\u0003\u0002\u0002\u0002\u0002\u03e7\u0003\u0002\u0002",
+ "\u0002\u0002\u03e9\u0003\u0002\u0002\u0002\u0002\u03eb\u0003\u0002\u0002",
+ "\u0002\u0002\u03ed\u0003\u0002\u0002\u0002\u0002\u03ef\u0003\u0002\u0002",
+ "\u0002\u0002\u03f1\u0003\u0002\u0002\u0002\u0002\u03f3\u0003\u0002\u0002",
+ "\u0002\u0002\u03f5\u0003\u0002\u0002\u0002\u0002\u03f7\u0003\u0002\u0002",
+ "\u0002\u0002\u03f9\u0003\u0002\u0002\u0002\u0002\u03fb\u0003\u0002\u0002",
+ "\u0002\u0002\u03fd\u0003\u0002\u0002\u0002\u0002\u03ff\u0003\u0002\u0002",
+ "\u0002\u0002\u0401\u0003\u0002\u0002\u0002\u0002\u0403\u0003\u0002\u0002",
+ "\u0002\u0002\u0405\u0003\u0002\u0002\u0002\u0002\u0407\u0003\u0002\u0002",
+ "\u0002\u0002\u0409\u0003\u0002\u0002\u0002\u0002\u040b\u0003\u0002\u0002",
+ "\u0002\u0002\u040d\u0003\u0002\u0002\u0002\u0002\u040f\u0003\u0002\u0002",
+ "\u0002\u0002\u0411\u0003\u0002\u0002\u0002\u0002\u0413\u0003\u0002\u0002",
+ "\u0002\u0002\u0415\u0003\u0002\u0002\u0002\u0002\u0417\u0003\u0002\u0002",
+ "\u0002\u0002\u0419\u0003\u0002\u0002\u0002\u0002\u041b\u0003\u0002\u0002",
+ "\u0002\u0002\u041d\u0003\u0002\u0002\u0002\u0002\u041f\u0003\u0002\u0002",
+ "\u0002\u0002\u0421\u0003\u0002\u0002\u0002\u0002\u0423\u0003\u0002\u0002",
+ "\u0002\u0002\u0425\u0003\u0002\u0002\u0002\u0002\u0427\u0003\u0002\u0002",
+ "\u0002\u0002\u0429\u0003\u0002\u0002\u0002\u0002\u042b\u0003\u0002\u0002",
+ "\u0002\u0002\u042d\u0003\u0002\u0002\u0002\u0002\u042f\u0003\u0002\u0002",
+ "\u0002\u0002\u0431\u0003\u0002\u0002\u0002\u0002\u0433\u0003\u0002\u0002",
+ "\u0002\u0002\u0435\u0003\u0002\u0002\u0002\u0002\u0437\u0003\u0002\u0002",
+ "\u0002\u0002\u0439\u0003\u0002\u0002\u0002\u0002\u043b\u0003\u0002\u0002",
+ "\u0002\u0002\u043d\u0003\u0002\u0002\u0002\u0002\u043f\u0003\u0002\u0002",
+ "\u0002\u0002\u0441\u0003\u0002\u0002\u0002\u0002\u0443\u0003\u0002\u0002",
+ "\u0002\u0002\u0445\u0003\u0002\u0002\u0002\u0002\u0447\u0003\u0002\u0002",
+ "\u0002\u0002\u0449\u0003\u0002\u0002\u0002\u0002\u044b\u0003\u0002\u0002",
+ "\u0002\u0002\u044d\u0003\u0002\u0002\u0002\u0002\u044f\u0003\u0002\u0002",
+ "\u0002\u0002\u0451\u0003\u0002\u0002\u0002\u0002\u0453\u0003\u0002\u0002",
+ "\u0002\u0002\u0455\u0003\u0002\u0002\u0002\u0002\u0457\u0003\u0002\u0002",
+ "\u0002\u0002\u0459\u0003\u0002\u0002\u0002\u0002\u045b\u0003\u0002\u0002",
+ "\u0002\u0002\u045d\u0003\u0002\u0002\u0002\u0002\u045f\u0003\u0002\u0002",
+ "\u0002\u0002\u0461\u0003\u0002\u0002\u0002\u0002\u0463\u0003\u0002\u0002",
+ "\u0002\u0002\u0465\u0003\u0002\u0002\u0002\u0002\u0467\u0003\u0002\u0002",
+ "\u0002\u0002\u0469\u0003\u0002\u0002\u0002\u0002\u046b\u0003\u0002\u0002",
+ "\u0002\u0002\u046d\u0003\u0002\u0002\u0002\u0002\u046f\u0003\u0002\u0002",
+ "\u0002\u0002\u0471\u0003\u0002\u0002\u0002\u0002\u0473\u0003\u0002\u0002",
+ "\u0002\u0002\u0475\u0003\u0002\u0002\u0002\u0002\u0477\u0003\u0002\u0002",
+ "\u0002\u0002\u0479\u0003\u0002\u0002\u0002\u0002\u047b\u0003\u0002\u0002",
+ "\u0002\u0002\u047d\u0003\u0002\u0002\u0002\u0002\u047f\u0003\u0002\u0002",
+ "\u0002\u0002\u0481\u0003\u0002\u0002\u0002\u0002\u0483\u0003\u0002\u0002",
+ "\u0002\u0002\u0485\u0003\u0002\u0002\u0002\u0002\u0487\u0003\u0002\u0002",
+ "\u0002\u0002\u0489\u0003\u0002\u0002\u0002\u0002\u048b\u0003\u0002\u0002",
+ "\u0002\u0002\u048d\u0003\u0002\u0002\u0002\u0002\u048f\u0003\u0002\u0002",
+ "\u0002\u0002\u0491\u0003\u0002\u0002\u0002\u0002\u0493\u0003\u0002\u0002",
+ "\u0002\u0002\u0495\u0003\u0002\u0002\u0002\u0002\u0497\u0003\u0002\u0002",
+ "\u0002\u0002\u0499\u0003\u0002\u0002\u0002\u0002\u049b\u0003\u0002\u0002",
+ "\u0002\u0002\u049d\u0003\u0002\u0002\u0002\u0002\u049f\u0003\u0002\u0002",
+ "\u0002\u0002\u04a1\u0003\u0002\u0002\u0002\u0002\u04a3\u0003\u0002\u0002",
+ "\u0002\u0002\u04a5\u0003\u0002\u0002\u0002\u0002\u04a7\u0003\u0002\u0002",
+ "\u0002\u0002\u04a9\u0003\u0002\u0002\u0002\u0002\u04ab\u0003\u0002\u0002",
+ "\u0002\u0002\u04ad\u0003\u0002\u0002\u0002\u0002\u04af\u0003\u0002\u0002",
+ "\u0002\u0002\u04b1\u0003\u0002\u0002\u0002\u0002\u04b3\u0003\u0002\u0002",
+ "\u0002\u0002\u04b5\u0003\u0002\u0002\u0002\u0002\u04b7\u0003\u0002\u0002",
+ "\u0002\u0002\u04b9\u0003\u0002\u0002\u0002\u0002\u04bb\u0003\u0002\u0002",
+ "\u0002\u0002\u04bd\u0003\u0002\u0002\u0002\u0002\u04bf\u0003\u0002\u0002",
+ "\u0002\u0002\u04c1\u0003\u0002\u0002\u0002\u0002\u04c3\u0003\u0002\u0002",
+ "\u0002\u0002\u04c5\u0003\u0002\u0002\u0002\u0002\u04c7\u0003\u0002\u0002",
+ "\u0002\u0002\u04c9\u0003\u0002\u0002\u0002\u0002\u04cb\u0003\u0002\u0002",
+ "\u0002\u0002\u04cd\u0003\u0002\u0002\u0002\u0002\u04cf\u0003\u0002\u0002",
+ "\u0002\u0002\u04d1\u0003\u0002\u0002\u0002\u0002\u04d3\u0003\u0002\u0002",
+ "\u0002\u0002\u04d5\u0003\u0002\u0002\u0002\u0002\u04d7\u0003\u0002\u0002",
+ "\u0002\u0002\u04d9\u0003\u0002\u0002\u0002\u0002\u04db\u0003\u0002\u0002",
+ "\u0002\u0002\u04dd\u0003\u0002\u0002\u0002\u0002\u04df\u0003\u0002\u0002",
+ "\u0002\u0002\u04e1\u0003\u0002\u0002\u0002\u0002\u04e3\u0003\u0002\u0002",
+ "\u0002\u0002\u04e5\u0003\u0002\u0002\u0002\u0002\u04e7\u0003\u0002\u0002",
+ "\u0002\u0002\u04e9\u0003\u0002\u0002\u0002\u0002\u04eb\u0003\u0002\u0002",
+ "\u0002\u0002\u04ed\u0003\u0002\u0002\u0002\u0002\u04ef\u0003\u0002\u0002",
+ "\u0002\u0002\u04f1\u0003\u0002\u0002\u0002\u0002\u04f3\u0003\u0002\u0002",
+ "\u0002\u0002\u04f5\u0003\u0002\u0002\u0002\u0002\u04f7\u0003\u0002\u0002",
+ "\u0002\u0002\u04f9\u0003\u0002\u0002\u0002\u0002\u04fb\u0003\u0002\u0002",
+ "\u0002\u0002\u04fd\u0003\u0002\u0002\u0002\u0002\u04ff\u0003\u0002\u0002",
+ "\u0002\u0002\u0501\u0003\u0002\u0002\u0002\u0002\u0503\u0003\u0002\u0002",
+ "\u0002\u0002\u0505\u0003\u0002\u0002\u0002\u0002\u0507\u0003\u0002\u0002",
+ "\u0002\u0002\u0509\u0003\u0002\u0002\u0002\u0002\u050b\u0003\u0002\u0002",
+ "\u0002\u0002\u050d\u0003\u0002\u0002\u0002\u0002\u050f\u0003\u0002\u0002",
+ "\u0002\u0002\u0511\u0003\u0002\u0002\u0002\u0002\u0513\u0003\u0002\u0002",
+ "\u0002\u0002\u0515\u0003\u0002\u0002\u0002\u0002\u0517\u0003\u0002\u0002",
+ "\u0002\u0002\u0519\u0003\u0002\u0002\u0002\u0002\u051b\u0003\u0002\u0002",
+ "\u0002\u0002\u051d\u0003\u0002\u0002\u0002\u0002\u051f\u0003\u0002\u0002",
+ "\u0002\u0002\u0521\u0003\u0002\u0002\u0002\u0002\u0523\u0003\u0002\u0002",
+ "\u0002\u0002\u0525\u0003\u0002\u0002\u0002\u0002\u0527\u0003\u0002\u0002",
+ "\u0002\u0002\u0529\u0003\u0002\u0002\u0002\u0002\u052b\u0003\u0002\u0002",
+ "\u0002\u0002\u052d\u0003\u0002\u0002\u0002\u0002\u052f\u0003\u0002\u0002",
+ "\u0002\u0002\u0531\u0003\u0002\u0002\u0002\u0002\u0533\u0003\u0002\u0002",
+ "\u0002\u0002\u0535\u0003\u0002\u0002\u0002\u0002\u0537\u0003\u0002\u0002",
+ "\u0002\u0002\u0539\u0003\u0002\u0002\u0002\u0002\u053b\u0003\u0002\u0002",
+ "\u0002\u0002\u053d\u0003\u0002\u0002\u0002\u0002\u053f\u0003\u0002\u0002",
+ "\u0002\u0002\u0541\u0003\u0002\u0002\u0002\u0002\u0543\u0003\u0002\u0002",
+ "\u0002\u0002\u0545\u0003\u0002\u0002\u0002\u0002\u0547\u0003\u0002\u0002",
+ "\u0002\u0002\u0549\u0003\u0002\u0002\u0002\u0002\u054b\u0003\u0002\u0002",
+ "\u0002\u0002\u054d\u0003\u0002\u0002\u0002\u0002\u054f\u0003\u0002\u0002",
+ "\u0002\u0002\u0551\u0003\u0002\u0002\u0002\u0002\u0553\u0003\u0002\u0002",
+ "\u0002\u0002\u0555\u0003\u0002\u0002\u0002\u0002\u0557\u0003\u0002\u0002",
+ "\u0002\u0002\u0559\u0003\u0002\u0002\u0002\u0002\u055b\u0003\u0002\u0002",
+ "\u0002\u0002\u055d\u0003\u0002\u0002\u0002\u0002\u055f\u0003\u0002\u0002",
+ "\u0002\u0002\u0561\u0003\u0002\u0002\u0002\u0002\u0563\u0003\u0002\u0002",
+ "\u0002\u0002\u0565\u0003\u0002\u0002\u0002\u0002\u0567\u0003\u0002\u0002",
+ "\u0002\u0002\u0569\u0003\u0002\u0002\u0002\u0002\u056b\u0003\u0002\u0002",
+ "\u0002\u0002\u056d\u0003\u0002\u0002\u0002\u0002\u056f\u0003\u0002\u0002",
+ "\u0002\u0002\u0571\u0003\u0002\u0002\u0002\u0002\u0573\u0003\u0002\u0002",
+ "\u0002\u0002\u0575\u0003\u0002\u0002\u0002\u0002\u0577\u0003\u0002\u0002",
+ "\u0002\u0002\u0579\u0003\u0002\u0002\u0002\u0002\u057b\u0003\u0002\u0002",
+ "\u0002\u0002\u057d\u0003\u0002\u0002\u0002\u0002\u057f\u0003\u0002\u0002",
+ "\u0002\u0002\u0581\u0003\u0002\u0002\u0002\u0002\u0583\u0003\u0002\u0002",
+ "\u0002\u0002\u0585\u0003\u0002\u0002\u0002\u0002\u0587\u0003\u0002\u0002",
+ "\u0002\u0002\u0589\u0003\u0002\u0002\u0002\u0002\u058b\u0003\u0002\u0002",
+ "\u0002\u0002\u058d\u0003\u0002\u0002\u0002\u0002\u058f\u0003\u0002\u0002",
+ "\u0002\u0002\u0591\u0003\u0002\u0002\u0002\u0002\u0593\u0003\u0002\u0002",
+ "\u0002\u0002\u0595\u0003\u0002\u0002\u0002\u0002\u0597\u0003\u0002\u0002",
+ "\u0002\u0002\u0599\u0003\u0002\u0002\u0002\u0002\u059b\u0003\u0002\u0002",
+ "\u0002\u0002\u059d\u0003\u0002\u0002\u0002\u0002\u059f\u0003\u0002\u0002",
+ "\u0002\u0002\u05a1\u0003\u0002\u0002\u0002\u0002\u05a3\u0003\u0002\u0002",
+ "\u0002\u0002\u05a5\u0003\u0002\u0002\u0002\u0002\u05a7\u0003\u0002\u0002",
+ "\u0002\u0002\u05a9\u0003\u0002\u0002\u0002\u0002\u05ab\u0003\u0002\u0002",
+ "\u0002\u0002\u05ad\u0003\u0002\u0002\u0002\u0002\u05af\u0003\u0002\u0002",
+ "\u0002\u0002\u05b1\u0003\u0002\u0002\u0002\u0002\u05b3\u0003\u0002\u0002",
+ "\u0002\u0002\u05b5\u0003\u0002\u0002\u0002\u0002\u05b7\u0003\u0002\u0002",
+ "\u0002\u0002\u05b9\u0003\u0002\u0002\u0002\u0002\u05bb\u0003\u0002\u0002",
+ "\u0002\u0002\u05bd\u0003\u0002\u0002\u0002\u0002\u05bf\u0003\u0002\u0002",
+ "\u0002\u0002\u05c1\u0003\u0002\u0002\u0002\u0002\u05c3\u0003\u0002\u0002",
+ "\u0002\u0002\u05c5\u0003\u0002\u0002\u0002\u0002\u05c7\u0003\u0002\u0002",
+ "\u0002\u0002\u05c9\u0003\u0002\u0002\u0002\u0002\u05cb\u0003\u0002\u0002",
+ "\u0002\u0002\u05cd\u0003\u0002\u0002\u0002\u0002\u05cf\u0003\u0002\u0002",
+ "\u0002\u0002\u05d1\u0003\u0002\u0002\u0002\u0002\u05d3\u0003\u0002\u0002",
+ "\u0002\u0002\u05d5\u0003\u0002\u0002\u0002\u0002\u05d7\u0003\u0002\u0002",
+ "\u0002\u0002\u05d9\u0003\u0002\u0002\u0002\u0002\u05db\u0003\u0002\u0002",
+ "\u0002\u0002\u05dd\u0003\u0002\u0002\u0002\u0002\u05df\u0003\u0002\u0002",
+ "\u0002\u0002\u05e1\u0003\u0002\u0002\u0002\u0002\u05e3\u0003\u0002\u0002",
+ "\u0002\u0002\u05e5\u0003\u0002\u0002\u0002\u0002\u05e7\u0003\u0002\u0002",
+ "\u0002\u0002\u05e9\u0003\u0002\u0002\u0002\u0002\u05eb\u0003\u0002\u0002",
+ "\u0002\u0002\u05ed\u0003\u0002\u0002\u0002\u0002\u05ef\u0003\u0002\u0002",
+ "\u0002\u0002\u05f1\u0003\u0002\u0002\u0002\u0002\u05f3\u0003\u0002\u0002",
+ "\u0002\u0002\u05f5\u0003\u0002\u0002\u0002\u0002\u05f7\u0003\u0002\u0002",
+ "\u0002\u0002\u05f9\u0003\u0002\u0002\u0002\u0002\u05fb\u0003\u0002\u0002",
+ "\u0002\u0002\u05fd\u0003\u0002\u0002\u0002\u0002\u05ff\u0003\u0002\u0002",
+ "\u0002\u0002\u0601\u0003\u0002\u0002\u0002\u0002\u0603\u0003\u0002\u0002",
+ "\u0002\u0002\u0605\u0003\u0002\u0002\u0002\u0002\u0607\u0003\u0002\u0002",
+ "\u0002\u0002\u0609\u0003\u0002\u0002\u0002\u0002\u060b\u0003\u0002\u0002",
+ "\u0002\u0002\u060d\u0003\u0002\u0002\u0002\u0002\u060f\u0003\u0002\u0002",
+ "\u0002\u0002\u0611\u0003\u0002\u0002\u0002\u0002\u0613\u0003\u0002\u0002",
+ "\u0002\u0002\u0615\u0003\u0002\u0002\u0002\u0002\u0617\u0003\u0002\u0002",
+ "\u0002\u0002\u0619\u0003\u0002\u0002\u0002\u0002\u061b\u0003\u0002\u0002",
+ "\u0002\u0002\u061d\u0003\u0002\u0002\u0002\u0002\u061f\u0003\u0002\u0002",
+ "\u0002\u0002\u0621\u0003\u0002\u0002\u0002\u0002\u0623\u0003\u0002\u0002",
+ "\u0002\u0002\u0625\u0003\u0002\u0002\u0002\u0002\u0627\u0003\u0002\u0002",
+ "\u0002\u0002\u0629\u0003\u0002\u0002\u0002\u0002\u062b\u0003\u0002\u0002",
+ "\u0002\u0002\u062d\u0003\u0002\u0002\u0002\u0002\u062f\u0003\u0002\u0002",
+ "\u0002\u0002\u0631\u0003\u0002\u0002\u0002\u0002\u0633\u0003\u0002\u0002",
+ "\u0002\u0002\u0635\u0003\u0002\u0002\u0002\u0002\u0637\u0003\u0002\u0002",
+ "\u0002\u0002\u0639\u0003\u0002\u0002\u0002\u0002\u063b\u0003\u0002\u0002",
+ "\u0002\u0002\u063d\u0003\u0002\u0002\u0002\u0002\u063f\u0003\u0002\u0002",
+ "\u0002\u0002\u0641\u0003\u0002\u0002\u0002\u0002\u0643\u0003\u0002\u0002",
+ "\u0002\u0002\u0645\u0003\u0002\u0002\u0002\u0002\u0647\u0003\u0002\u0002",
+ "\u0002\u0002\u0649\u0003\u0002\u0002\u0002\u0002\u064b\u0003\u0002\u0002",
+ "\u0002\u0002\u064d\u0003\u0002\u0002\u0002\u0002\u064f\u0003\u0002\u0002",
+ "\u0002\u0002\u0651\u0003\u0002\u0002\u0002\u0002\u0653\u0003\u0002\u0002",
+ "\u0002\u0002\u0655\u0003\u0002\u0002\u0002\u0002\u0657\u0003\u0002\u0002",
+ "\u0002\u0002\u0659\u0003\u0002\u0002\u0002\u0002\u065b\u0003\u0002\u0002",
+ "\u0002\u0002\u065d\u0003\u0002\u0002\u0002\u0002\u065f\u0003\u0002\u0002",
+ "\u0002\u0002\u0661\u0003\u0002\u0002\u0002\u0002\u0663\u0003\u0002\u0002",
+ "\u0002\u0002\u0665\u0003\u0002\u0002\u0002\u0002\u0667\u0003\u0002\u0002",
+ "\u0002\u0002\u0669\u0003\u0002\u0002\u0002\u0002\u066b\u0003\u0002\u0002",
+ "\u0002\u0002\u066d\u0003\u0002\u0002\u0002\u0002\u066f\u0003\u0002\u0002",
+ "\u0002\u0002\u0671\u0003\u0002\u0002\u0002\u0002\u0673\u0003\u0002\u0002",
+ "\u0002\u0002\u0675\u0003\u0002\u0002\u0002\u0002\u0677\u0003\u0002\u0002",
+ "\u0002\u0002\u0679\u0003\u0002\u0002\u0002\u0002\u067b\u0003\u0002\u0002",
+ "\u0002\u0002\u067d\u0003\u0002\u0002\u0002\u0002\u067f\u0003\u0002\u0002",
+ "\u0002\u0002\u0681\u0003\u0002\u0002\u0002\u0002\u0683\u0003\u0002\u0002",
+ "\u0002\u0002\u0685\u0003\u0002\u0002\u0002\u0002\u0687\u0003\u0002\u0002",
+ "\u0002\u0002\u0689\u0003\u0002\u0002\u0002\u0002\u068b\u0003\u0002\u0002",
+ "\u0002\u0002\u068d\u0003\u0002\u0002\u0002\u0002\u068f\u0003\u0002\u0002",
+ "\u0002\u0002\u0691\u0003\u0002\u0002\u0002\u0002\u0693\u0003\u0002\u0002",
+ "\u0002\u0002\u0695\u0003\u0002\u0002\u0002\u0002\u0697\u0003\u0002\u0002",
+ "\u0002\u0002\u0699\u0003\u0002\u0002\u0002\u0002\u069b\u0003\u0002\u0002",
+ "\u0002\u0002\u069d\u0003\u0002\u0002\u0002\u0002\u069f\u0003\u0002\u0002",
+ "\u0002\u0002\u06a1\u0003\u0002\u0002\u0002\u0002\u06a3\u0003\u0002\u0002",
+ "\u0002\u0002\u06a5\u0003\u0002\u0002\u0002\u0002\u06a7\u0003\u0002\u0002",
+ "\u0002\u0002\u06a9\u0003\u0002\u0002\u0002\u0002\u06ab\u0003\u0002\u0002",
+ "\u0002\u0002\u06ad\u0003\u0002\u0002\u0002\u0002\u06af\u0003\u0002\u0002",
+ "\u0002\u0002\u06b1\u0003\u0002\u0002\u0002\u0002\u06b3\u0003\u0002\u0002",
+ "\u0002\u0002\u06b5\u0003\u0002\u0002\u0002\u0002\u06b7\u0003\u0002\u0002",
+ "\u0002\u0002\u06b9\u0003\u0002\u0002\u0002\u0002\u06bb\u0003\u0002\u0002",
+ "\u0002\u0002\u06bd\u0003\u0002\u0002\u0002\u0002\u06bf\u0003\u0002\u0002",
+ "\u0002\u0002\u06c1\u0003\u0002\u0002\u0002\u0002\u06c3\u0003\u0002\u0002",
+ "\u0002\u0002\u06c5\u0003\u0002\u0002\u0002\u0002\u06c7\u0003\u0002\u0002",
+ "\u0002\u0002\u06c9\u0003\u0002\u0002\u0002\u0002\u06cb\u0003\u0002\u0002",
+ "\u0002\u0002\u06cd\u0003\u0002\u0002\u0002\u0002\u06cf\u0003\u0002\u0002",
+ "\u0002\u0002\u06d1\u0003\u0002\u0002\u0002\u0002\u06d3\u0003\u0002\u0002",
+ "\u0002\u0002\u06d5\u0003\u0002\u0002\u0002\u0002\u06d7\u0003\u0002\u0002",
+ "\u0002\u0002\u06d9\u0003\u0002\u0002\u0002\u0002\u06db\u0003\u0002\u0002",
+ "\u0002\u0002\u06dd\u0003\u0002\u0002\u0002\u0002\u06df\u0003\u0002\u0002",
+ "\u0002\u0002\u06e1\u0003\u0002\u0002\u0002\u0002\u06e3\u0003\u0002\u0002",
+ "\u0002\u0002\u06e5\u0003\u0002\u0002\u0002\u0002\u06e7\u0003\u0002\u0002",
+ "\u0002\u0002\u06e9\u0003\u0002\u0002\u0002\u0002\u06eb\u0003\u0002\u0002",
+ "\u0002\u0002\u06ed\u0003\u0002\u0002\u0002\u0002\u06ef\u0003\u0002\u0002",
+ "\u0002\u0002\u06f1\u0003\u0002\u0002\u0002\u0002\u06f3\u0003\u0002\u0002",
+ "\u0002\u0002\u06f5\u0003\u0002\u0002\u0002\u0002\u06f7\u0003\u0002\u0002",
+ "\u0002\u0002\u06f9\u0003\u0002\u0002\u0002\u0002\u06fb\u0003\u0002\u0002",
+ "\u0002\u0002\u06fd\u0003\u0002\u0002\u0002\u0002\u06ff\u0003\u0002\u0002",
+ "\u0002\u0002\u0701\u0003\u0002\u0002\u0002\u0002\u0703\u0003\u0002\u0002",
+ "\u0002\u0002\u0705\u0003\u0002\u0002\u0002\u0002\u0707\u0003\u0002\u0002",
+ "\u0002\u0002\u0709\u0003\u0002\u0002\u0002\u0002\u070b\u0003\u0002\u0002",
+ "\u0002\u0002\u070d\u0003\u0002\u0002\u0002\u0002\u070f\u0003\u0002\u0002",
+ "\u0002\u0002\u0711\u0003\u0002\u0002\u0002\u0002\u0713\u0003\u0002\u0002",
+ "\u0002\u0002\u0715\u0003\u0002\u0002\u0002\u0002\u0717\u0003\u0002\u0002",
+ "\u0002\u0002\u0719\u0003\u0002\u0002\u0002\u0002\u071b\u0003\u0002\u0002",
+ "\u0002\u0002\u071d\u0003\u0002\u0002\u0002\u0002\u071f\u0003\u0002\u0002",
+ "\u0002\u0002\u0721\u0003\u0002\u0002\u0002\u0002\u0723\u0003\u0002\u0002",
+ "\u0002\u0002\u0725\u0003\u0002\u0002\u0002\u0002\u0727\u0003\u0002\u0002",
+ "\u0002\u0002\u0729\u0003\u0002\u0002\u0002\u0002\u072b\u0003\u0002\u0002",
+ "\u0002\u0002\u072d\u0003\u0002\u0002\u0002\u0002\u072f\u0003\u0002\u0002",
+ "\u0002\u0002\u0731\u0003\u0002\u0002\u0002\u0002\u0733\u0003\u0002\u0002",
+ "\u0002\u0002\u0735\u0003\u0002\u0002\u0002\u0002\u0737\u0003\u0002\u0002",
+ "\u0002\u0002\u0739\u0003\u0002\u0002\u0002\u0002\u073b\u0003\u0002\u0002",
+ "\u0002\u0002\u073d\u0003\u0002\u0002\u0002\u0002\u073f\u0003\u0002\u0002",
+ "\u0002\u0002\u0741\u0003\u0002\u0002\u0002\u0002\u0743\u0003\u0002\u0002",
+ "\u0002\u0002\u0745\u0003\u0002\u0002\u0002\u0002\u0747\u0003\u0002\u0002",
+ "\u0002\u0002\u0749\u0003\u0002\u0002\u0002\u0002\u074b\u0003\u0002\u0002",
+ "\u0002\u0002\u074d\u0003\u0002\u0002\u0002\u0002\u074f\u0003\u0002\u0002",
+ "\u0002\u0002\u0751\u0003\u0002\u0002\u0002\u0002\u0753\u0003\u0002\u0002",
+ "\u0002\u0002\u0755\u0003\u0002\u0002\u0002\u0002\u0757\u0003\u0002\u0002",
+ "\u0002\u0002\u0759\u0003\u0002\u0002\u0002\u0002\u075b\u0003\u0002\u0002",
+ "\u0002\u0002\u075d\u0003\u0002\u0002\u0002\u0002\u075f\u0003\u0002\u0002",
+ "\u0002\u0002\u0761\u0003\u0002\u0002\u0002\u0002\u0763\u0003\u0002\u0002",
+ "\u0002\u0002\u0765\u0003\u0002\u0002\u0002\u0002\u0767\u0003\u0002\u0002",
+ "\u0002\u0002\u0769\u0003\u0002\u0002\u0002\u0002\u076b\u0003\u0002\u0002",
+ "\u0002\u0002\u076d\u0003\u0002\u0002\u0002\u0002\u076f\u0003\u0002\u0002",
+ "\u0002\u0002\u0771\u0003\u0002\u0002\u0002\u0002\u0773\u0003\u0002\u0002",
+ "\u0002\u0002\u0775\u0003\u0002\u0002\u0002\u0002\u0777\u0003\u0002\u0002",
+ "\u0002\u0002\u0779\u0003\u0002\u0002\u0002\u0002\u077b\u0003\u0002\u0002",
+ "\u0002\u0002\u077d\u0003\u0002\u0002\u0002\u0002\u077f\u0003\u0002\u0002",
+ "\u0002\u0002\u0781\u0003\u0002\u0002\u0002\u0002\u0783\u0003\u0002\u0002",
+ "\u0002\u0002\u0785\u0003\u0002\u0002\u0002\u0002\u0787\u0003\u0002\u0002",
+ "\u0002\u0002\u0789\u0003\u0002\u0002\u0002\u0002\u078b\u0003\u0002\u0002",
+ "\u0002\u0002\u078d\u0003\u0002\u0002\u0002\u0002\u078f\u0003\u0002\u0002",
+ "\u0002\u0002\u0791\u0003\u0002\u0002\u0002\u0002\u0793\u0003\u0002\u0002",
+ "\u0002\u0002\u0795\u0003\u0002\u0002\u0002\u0002\u0797\u0003\u0002\u0002",
+ "\u0002\u0002\u0799\u0003\u0002\u0002\u0002\u0002\u079b\u0003\u0002\u0002",
+ "\u0002\u0002\u079d\u0003\u0002\u0002\u0002\u0002\u079f\u0003\u0002\u0002",
+ "\u0002\u0002\u07a1\u0003\u0002\u0002\u0002\u0002\u07a3\u0003\u0002\u0002",
+ "\u0002\u0002\u07a5\u0003\u0002\u0002\u0002\u0002\u07a7\u0003\u0002\u0002",
+ "\u0002\u0002\u07a9\u0003\u0002\u0002\u0002\u0002\u07ab\u0003\u0002\u0002",
+ "\u0002\u0002\u07ad\u0003\u0002\u0002\u0002\u0002\u07af\u0003\u0002\u0002",
+ "\u0002\u0002\u07b1\u0003\u0002\u0002\u0002\u0002\u07b3\u0003\u0002\u0002",
+ "\u0002\u0002\u07b5\u0003\u0002\u0002\u0002\u0002\u07b7\u0003\u0002\u0002",
+ "\u0002\u0002\u07b9\u0003\u0002\u0002\u0002\u0002\u07bb\u0003\u0002\u0002",
+ "\u0002\u0002\u07bd\u0003\u0002\u0002\u0002\u0002\u07bf\u0003\u0002\u0002",
+ "\u0002\u0002\u07c1\u0003\u0002\u0002\u0002\u0002\u07c3\u0003\u0002\u0002",
+ "\u0002\u0002\u07c5\u0003\u0002\u0002\u0002\u0002\u07c7\u0003\u0002\u0002",
+ "\u0002\u0002\u07c9\u0003\u0002\u0002\u0002\u0002\u07cb\u0003\u0002\u0002",
+ "\u0002\u0002\u07cd\u0003\u0002\u0002\u0002\u0002\u07cf\u0003\u0002\u0002",
+ "\u0002\u0002\u07d1\u0003\u0002\u0002\u0002\u0002\u07d3\u0003\u0002\u0002",
+ "\u0002\u0002\u07d5\u0003\u0002\u0002\u0002\u0002\u07d7\u0003\u0002\u0002",
+ "\u0002\u0002\u07d9\u0003\u0002\u0002\u0002\u0002\u07db\u0003\u0002\u0002",
+ "\u0002\u0002\u07dd\u0003\u0002\u0002\u0002\u0002\u07df\u0003\u0002\u0002",
+ "\u0002\u0002\u07e1\u0003\u0002\u0002\u0002\u0002\u07e3\u0003\u0002\u0002",
+ "\u0002\u0002\u07e5\u0003\u0002\u0002\u0002\u0002\u07e7\u0003\u0002\u0002",
+ "\u0002\u0002\u07e9\u0003\u0002\u0002\u0002\u0002\u07eb\u0003\u0002\u0002",
+ "\u0002\u0002\u07ed\u0003\u0002\u0002\u0002\u0002\u07ef\u0003\u0002\u0002",
+ "\u0002\u0002\u07f1\u0003\u0002\u0002\u0002\u0002\u07f3\u0003\u0002\u0002",
+ "\u0002\u0002\u07f5\u0003\u0002\u0002\u0002\u0002\u07f7\u0003\u0002\u0002",
+ "\u0002\u0002\u07f9\u0003\u0002\u0002\u0002\u0002\u07fb\u0003\u0002\u0002",
+ "\u0002\u0002\u07fd\u0003\u0002\u0002\u0002\u0002\u07ff\u0003\u0002\u0002",
+ "\u0002\u0002\u0801\u0003\u0002\u0002\u0002\u0002\u0803\u0003\u0002\u0002",
+ "\u0002\u0002\u0805\u0003\u0002\u0002\u0002\u0002\u0807\u0003\u0002\u0002",
+ "\u0002\u0002\u0809\u0003\u0002\u0002\u0002\u0002\u080b\u0003\u0002\u0002",
+ "\u0002\u0002\u080d\u0003\u0002\u0002\u0002\u0002\u080f\u0003\u0002\u0002",
+ "\u0002\u0002\u0811\u0003\u0002\u0002\u0002\u0002\u0813\u0003\u0002\u0002",
+ "\u0002\u0002\u0815\u0003\u0002\u0002\u0002\u0002\u0817\u0003\u0002\u0002",
+ "\u0002\u0002\u0819\u0003\u0002\u0002\u0002\u0002\u081b\u0003\u0002\u0002",
+ "\u0002\u0002\u081d\u0003\u0002\u0002\u0002\u0002\u081f\u0003\u0002\u0002",
+ "\u0002\u0002\u0821\u0003\u0002\u0002\u0002\u0002\u0823\u0003\u0002\u0002",
+ "\u0002\u0002\u0825\u0003\u0002\u0002\u0002\u0002\u0827\u0003\u0002\u0002",
+ "\u0002\u0002\u0829\u0003\u0002\u0002\u0002\u0002\u082b\u0003\u0002\u0002",
+ "\u0002\u0002\u082d\u0003\u0002\u0002\u0002\u0002\u082f\u0003\u0002\u0002",
+ "\u0002\u0002\u0831\u0003\u0002\u0002\u0002\u0002\u0833\u0003\u0002\u0002",
+ "\u0002\u0002\u0835\u0003\u0002\u0002\u0002\u0002\u0837\u0003\u0002\u0002",
+ "\u0002\u0002\u0839\u0003\u0002\u0002\u0002\u0002\u083b\u0003\u0002\u0002",
+ "\u0002\u0002\u083d\u0003\u0002\u0002\u0002\u0002\u083f\u0003\u0002\u0002",
+ "\u0002\u0002\u0841\u0003\u0002\u0002\u0002\u0002\u0843\u0003\u0002\u0002",
+ "\u0002\u0002\u0845\u0003\u0002\u0002\u0002\u0002\u0847\u0003\u0002\u0002",
+ "\u0002\u0002\u0849\u0003\u0002\u0002\u0002\u0002\u084b\u0003\u0002\u0002",
+ "\u0002\u0002\u084d\u0003\u0002\u0002\u0002\u0002\u084f\u0003\u0002\u0002",
+ "\u0002\u0002\u0851\u0003\u0002\u0002\u0002\u0002\u0853\u0003\u0002\u0002",
+ "\u0002\u0002\u0855\u0003\u0002\u0002\u0002\u0002\u0857\u0003\u0002\u0002",
+ "\u0002\u0002\u0859\u0003\u0002\u0002\u0002\u0002\u085b\u0003\u0002\u0002",
+ "\u0002\u0002\u085d\u0003\u0002\u0002\u0002\u0002\u085f\u0003\u0002\u0002",
+ "\u0002\u0002\u0861\u0003\u0002\u0002\u0002\u0002\u0863\u0003\u0002\u0002",
+ "\u0002\u0002\u0865\u0003\u0002\u0002\u0002\u0002\u0867\u0003\u0002\u0002",
+ "\u0002\u0002\u0869\u0003\u0002\u0002\u0002\u0002\u086b\u0003\u0002\u0002",
+ "\u0002\u0002\u086d\u0003\u0002\u0002\u0002\u0002\u086f\u0003\u0002\u0002",
+ "\u0002\u0002\u0871\u0003\u0002\u0002\u0002\u0002\u0873\u0003\u0002\u0002",
+ "\u0002\u0002\u0875\u0003\u0002\u0002\u0002\u0002\u0877\u0003\u0002\u0002",
+ "\u0002\u0002\u0879\u0003\u0002\u0002\u0002\u0002\u087b\u0003\u0002\u0002",
+ "\u0002\u0002\u087d\u0003\u0002\u0002\u0002\u0002\u087f\u0003\u0002\u0002",
+ "\u0002\u0002\u0881\u0003\u0002\u0002\u0002\u0002\u0883\u0003\u0002\u0002",
+ "\u0002\u0002\u0885\u0003\u0002\u0002\u0002\u0002\u0887\u0003\u0002\u0002",
+ "\u0002\u0002\u0889\u0003\u0002\u0002\u0002\u0002\u088b\u0003\u0002\u0002",
+ "\u0002\u0002\u088d\u0003\u0002\u0002\u0002\u0002\u088f\u0003\u0002\u0002",
+ "\u0002\u0002\u0891\u0003\u0002\u0002\u0002\u0002\u0893\u0003\u0002\u0002",
+ "\u0002\u0002\u0895\u0003\u0002\u0002\u0002\u0002\u0897\u0003\u0002\u0002",
+ "\u0002\u0002\u0899\u0003\u0002\u0002\u0002\u0002\u089b\u0003\u0002\u0002",
+ "\u0002\u0002\u089d\u0003\u0002\u0002\u0002\u0002\u089f\u0003\u0002\u0002",
+ "\u0002\u0002\u08a1\u0003\u0002\u0002\u0002\u0002\u08a3\u0003\u0002\u0002",
+ "\u0002\u0002\u08a5\u0003\u0002\u0002\u0002\u0002\u08a7\u0003\u0002\u0002",
+ "\u0002\u0002\u08a9\u0003\u0002\u0002\u0002\u0002\u08ab\u0003\u0002\u0002",
+ "\u0002\u0002\u08ad\u0003\u0002\u0002\u0002\u0002\u08af\u0003\u0002\u0002",
+ "\u0002\u0002\u08b1\u0003\u0002\u0002\u0002\u0002\u08b3\u0003\u0002\u0002",
+ "\u0002\u0002\u08b5\u0003\u0002\u0002\u0002\u0002\u08b7\u0003\u0002\u0002",
+ "\u0002\u0002\u08b9\u0003\u0002\u0002\u0002\u0002\u08bb\u0003\u0002\u0002",
+ "\u0002\u0002\u08bd\u0003\u0002\u0002\u0002\u0002\u08bf\u0003\u0002\u0002",
+ "\u0002\u0002\u08c1\u0003\u0002\u0002\u0002\u0002\u08c3\u0003\u0002\u0002",
+ "\u0002\u0002\u08c5\u0003\u0002\u0002\u0002\u0002\u08c7\u0003\u0002\u0002",
+ "\u0002\u0002\u08c9\u0003\u0002\u0002\u0002\u0002\u08cb\u0003\u0002\u0002",
+ "\u0002\u0002\u08cd\u0003\u0002\u0002\u0002\u0002\u08cf\u0003\u0002\u0002",
+ "\u0002\u0002\u08d1\u0003\u0002\u0002\u0002\u0002\u08d3\u0003\u0002\u0002",
+ "\u0002\u0002\u08d5\u0003\u0002\u0002\u0002\u0002\u08d7\u0003\u0002\u0002",
+ "\u0002\u0002\u08d9\u0003\u0002\u0002\u0002\u0002\u08db\u0003\u0002\u0002",
+ "\u0002\u0002\u08dd\u0003\u0002\u0002\u0002\u0002\u08df\u0003\u0002\u0002",
+ "\u0002\u0002\u08e1\u0003\u0002\u0002\u0002\u0002\u08e3\u0003\u0002\u0002",
+ "\u0002\u0002\u08e5\u0003\u0002\u0002\u0002\u0002\u08e7\u0003\u0002\u0002",
+ "\u0002\u0002\u08e9\u0003\u0002\u0002\u0002\u0002\u08eb\u0003\u0002\u0002",
+ "\u0002\u0002\u08ed\u0003\u0002\u0002\u0002\u0002\u08ef\u0003\u0002\u0002",
+ "\u0002\u0002\u08f1\u0003\u0002\u0002\u0002\u0002\u08f3\u0003\u0002\u0002",
+ "\u0002\u0002\u08f5\u0003\u0002\u0002\u0002\u0002\u08f7\u0003\u0002\u0002",
+ "\u0002\u0002\u08f9\u0003\u0002\u0002\u0002\u0002\u08fb\u0003\u0002\u0002",
+ "\u0002\u0002\u08fd\u0003\u0002\u0002\u0002\u0002\u08ff\u0003\u0002\u0002",
+ "\u0002\u0002\u0901\u0003\u0002\u0002\u0002\u0002\u0903\u0003\u0002\u0002",
+ "\u0002\u0002\u0905\u0003\u0002\u0002\u0002\u0002\u0907\u0003\u0002\u0002",
+ "\u0002\u0002\u0909\u0003\u0002\u0002\u0002\u0002\u090b\u0003\u0002\u0002",
+ "\u0002\u0002\u090d\u0003\u0002\u0002\u0002\u0002\u090f\u0003\u0002\u0002",
+ "\u0002\u0002\u0911\u0003\u0002\u0002\u0002\u0002\u0913\u0003\u0002\u0002",
+ "\u0002\u0002\u0915\u0003\u0002\u0002\u0002\u0002\u0917\u0003\u0002\u0002",
+ "\u0002\u0002\u0919\u0003\u0002\u0002\u0002\u0002\u091b\u0003\u0002\u0002",
+ "\u0002\u0002\u091d\u0003\u0002\u0002\u0002\u0002\u091f\u0003\u0002\u0002",
+ "\u0002\u0002\u0921\u0003\u0002\u0002\u0002\u0002\u0923\u0003\u0002\u0002",
+ "\u0002\u0002\u0925\u0003\u0002\u0002\u0002\u0002\u0927\u0003\u0002\u0002",
+ "\u0002\u0002\u0929\u0003\u0002\u0002\u0002\u0002\u092b\u0003\u0002\u0002",
+ "\u0002\u0002\u092d\u0003\u0002\u0002\u0002\u0002\u092f\u0003\u0002\u0002",
+ "\u0002\u0002\u0931\u0003\u0002\u0002\u0002\u0002\u0933\u0003\u0002\u0002",
+ "\u0002\u0002\u0935\u0003\u0002\u0002\u0002\u0002\u0937\u0003\u0002\u0002",
+ "\u0002\u0002\u0939\u0003\u0002\u0002\u0002\u0002\u093b\u0003\u0002\u0002",
+ "\u0002\u0002\u093d\u0003\u0002\u0002\u0002\u0002\u093f\u0003\u0002\u0002",
+ "\u0002\u0002\u0941\u0003\u0002\u0002\u0002\u0002\u0943\u0003\u0002\u0002",
+ "\u0002\u0002\u0945\u0003\u0002\u0002\u0002\u0002\u0947\u0003\u0002\u0002",
+ "\u0002\u0002\u0949\u0003\u0002\u0002\u0002\u0002\u094b\u0003\u0002\u0002",
+ "\u0002\u0002\u094d\u0003\u0002\u0002\u0002\u0002\u094f\u0003\u0002\u0002",
+ "\u0002\u0002\u0951\u0003\u0002\u0002\u0002\u0002\u0953\u0003\u0002\u0002",
+ "\u0002\u0002\u0955\u0003\u0002\u0002\u0002\u0002\u0957\u0003\u0002\u0002",
+ "\u0002\u0002\u0959\u0003\u0002\u0002\u0002\u0002\u095b\u0003\u0002\u0002",
+ "\u0002\u0002\u095d\u0003\u0002\u0002\u0002\u0002\u095f\u0003\u0002\u0002",
+ "\u0002\u0002\u0961\u0003\u0002\u0002\u0002\u0002\u0963\u0003\u0002\u0002",
+ "\u0002\u0002\u0965\u0003\u0002\u0002\u0002\u0002\u0967\u0003\u0002\u0002",
+ "\u0002\u0002\u0969\u0003\u0002\u0002\u0002\u0002\u096b\u0003\u0002\u0002",
+ "\u0002\u0002\u096d\u0003\u0002\u0002\u0002\u0002\u096f\u0003\u0002\u0002",
+ "\u0002\u0002\u0971\u0003\u0002\u0002\u0002\u0002\u0973\u0003\u0002\u0002",
+ "\u0002\u0002\u0975\u0003\u0002\u0002\u0002\u0002\u0977\u0003\u0002\u0002",
+ "\u0002\u0002\u0979\u0003\u0002\u0002\u0002\u0002\u097b\u0003\u0002\u0002",
+ "\u0002\u0002\u097d\u0003\u0002\u0002\u0002\u0002\u097f\u0003\u0002\u0002",
+ "\u0002\u0002\u0981\u0003\u0002\u0002\u0002\u0002\u0983\u0003\u0002\u0002",
+ "\u0002\u0002\u0985\u0003\u0002\u0002\u0002\u0002\u0987\u0003\u0002\u0002",
+ "\u0002\u0002\u0989\u0003\u0002\u0002\u0002\u0002\u098b\u0003\u0002\u0002",
+ "\u0002\u0002\u098d\u0003\u0002\u0002\u0002\u0002\u098f\u0003\u0002\u0002",
+ "\u0002\u0002\u0991\u0003\u0002\u0002\u0002\u0002\u0993\u0003\u0002\u0002",
+ "\u0002\u0002\u0995\u0003\u0002\u0002\u0002\u0002\u0997\u0003\u0002\u0002",
+ "\u0002\u0002\u0999\u0003\u0002\u0002\u0002\u0002\u099b\u0003\u0002\u0002",
+ "\u0002\u0002\u099d\u0003\u0002\u0002\u0002\u0002\u099f\u0003\u0002\u0002",
+ "\u0002\u0002\u09a1\u0003\u0002\u0002\u0002\u0002\u09a3\u0003\u0002\u0002",
+ "\u0002\u0002\u09a5\u0003\u0002\u0002\u0002\u0002\u09a7\u0003\u0002\u0002",
+ "\u0002\u0002\u09a9\u0003\u0002\u0002\u0002\u0002\u09ab\u0003\u0002\u0002",
+ "\u0002\u0002\u09ad\u0003\u0002\u0002\u0002\u0002\u09af\u0003\u0002\u0002",
+ "\u0002\u0002\u09b1\u0003\u0002\u0002\u0002\u0002\u09b3\u0003\u0002\u0002",
+ "\u0002\u0002\u09b5\u0003\u0002\u0002\u0002\u0002\u09b7\u0003\u0002\u0002",
+ "\u0002\u0002\u09b9\u0003\u0002\u0002\u0002\u0002\u09bb\u0003\u0002\u0002",
+ "\u0002\u0002\u09bd\u0003\u0002\u0002\u0002\u0002\u09bf\u0003\u0002\u0002",
+ "\u0002\u0002\u09c1\u0003\u0002\u0002\u0002\u0002\u09c3\u0003\u0002\u0002",
+ "\u0002\u0002\u09c5\u0003\u0002\u0002\u0002\u0002\u09c7\u0003\u0002\u0002",
+ "\u0002\u0002\u09c9\u0003\u0002\u0002\u0002\u0002\u09cb\u0003\u0002\u0002",
+ "\u0002\u0002\u09cd\u0003\u0002\u0002\u0002\u0002\u09cf\u0003\u0002\u0002",
+ "\u0002\u0002\u09d1\u0003\u0002\u0002\u0002\u0002\u09d3\u0003\u0002\u0002",
+ "\u0002\u0002\u09d5\u0003\u0002\u0002\u0002\u0002\u09d7\u0003\u0002\u0002",
+ "\u0002\u0002\u09d9\u0003\u0002\u0002\u0002\u0002\u09db\u0003\u0002\u0002",
+ "\u0002\u0002\u09dd\u0003\u0002\u0002\u0002\u0002\u09df\u0003\u0002\u0002",
+ "\u0002\u0002\u09e1\u0003\u0002\u0002\u0002\u0002\u09e3\u0003\u0002\u0002",
+ "\u0002\u0002\u09e5\u0003\u0002\u0002\u0002\u0002\u09e7\u0003\u0002\u0002",
+ "\u0002\u0002\u09e9\u0003\u0002\u0002\u0002\u0002\u09eb\u0003\u0002\u0002",
+ "\u0002\u0002\u09ed\u0003\u0002\u0002\u0002\u0002\u09ef\u0003\u0002\u0002",
+ "\u0002\u0002\u09f1\u0003\u0002\u0002\u0002\u0002\u09f3\u0003\u0002\u0002",
+ "\u0002\u0002\u09f5\u0003\u0002\u0002\u0002\u0002\u09f7\u0003\u0002\u0002",
+ "\u0002\u0002\u09f9\u0003\u0002\u0002\u0002\u0002\u09fb\u0003\u0002\u0002",
+ "\u0002\u0002\u09fd\u0003\u0002\u0002\u0002\u0002\u09ff\u0003\u0002\u0002",
+ "\u0002\u0002\u0a01\u0003\u0002\u0002\u0002\u0002\u0a03\u0003\u0002\u0002",
+ "\u0002\u0002\u0a05\u0003\u0002\u0002\u0002\u0002\u0a07\u0003\u0002\u0002",
+ "\u0002\u0002\u0a09\u0003\u0002\u0002\u0002\u0002\u0a0b\u0003\u0002\u0002",
+ "\u0002\u0002\u0a0d\u0003\u0002\u0002\u0002\u0002\u0a0f\u0003\u0002\u0002",
+ "\u0002\u0002\u0a11\u0003\u0002\u0002\u0002\u0002\u0a13\u0003\u0002\u0002",
+ "\u0002\u0002\u0a15\u0003\u0002\u0002\u0002\u0002\u0a17\u0003\u0002\u0002",
+ "\u0002\u0002\u0a19\u0003\u0002\u0002\u0002\u0002\u0a1b\u0003\u0002\u0002",
+ "\u0002\u0002\u0a1d\u0003\u0002\u0002\u0002\u0002\u0a1f\u0003\u0002\u0002",
+ "\u0002\u0002\u0a21\u0003\u0002\u0002\u0002\u0002\u0a23\u0003\u0002\u0002",
+ "\u0002\u0002\u0a25\u0003\u0002\u0002\u0002\u0002\u0a27\u0003\u0002\u0002",
+ "\u0002\u0002\u0a29\u0003\u0002\u0002\u0002\u0002\u0a2b\u0003\u0002\u0002",
+ "\u0002\u0002\u0a2d\u0003\u0002\u0002\u0002\u0002\u0a2f\u0003\u0002\u0002",
+ "\u0002\u0002\u0a31\u0003\u0002\u0002\u0002\u0002\u0a33\u0003\u0002\u0002",
+ "\u0002\u0002\u0a35\u0003\u0002\u0002\u0002\u0002\u0a37\u0003\u0002\u0002",
+ "\u0002\u0002\u0a39\u0003\u0002\u0002\u0002\u0002\u0a3b\u0003\u0002\u0002",
+ "\u0002\u0002\u0a3d\u0003\u0002\u0002\u0002\u0002\u0a3f\u0003\u0002\u0002",
+ "\u0002\u0002\u0a41\u0003\u0002\u0002\u0002\u0002\u0a43\u0003\u0002\u0002",
+ "\u0002\u0002\u0a45\u0003\u0002\u0002\u0002\u0002\u0a47\u0003\u0002\u0002",
+ "\u0002\u0002\u0a49\u0003\u0002\u0002\u0002\u0002\u0a4b\u0003\u0002\u0002",
+ "\u0002\u0002\u0a4d\u0003\u0002\u0002\u0002\u0002\u0a4f\u0003\u0002\u0002",
+ "\u0002\u0002\u0a51\u0003\u0002\u0002\u0002\u0002\u0a53\u0003\u0002\u0002",
+ "\u0002\u0002\u0a55\u0003\u0002\u0002\u0002\u0002\u0a57\u0003\u0002\u0002",
+ "\u0002\u0002\u0a59\u0003\u0002\u0002\u0002\u0002\u0a5b\u0003\u0002\u0002",
+ "\u0002\u0002\u0a5d\u0003\u0002\u0002\u0002\u0002\u0a5f\u0003\u0002\u0002",
+ "\u0002\u0002\u0a61\u0003\u0002\u0002\u0002\u0002\u0a63\u0003\u0002\u0002",
+ "\u0002\u0002\u0a65\u0003\u0002\u0002\u0002\u0002\u0a67\u0003\u0002\u0002",
+ "\u0002\u0002\u0a69\u0003\u0002\u0002\u0002\u0002\u0a6b\u0003\u0002\u0002",
+ "\u0002\u0002\u0a6d\u0003\u0002\u0002\u0002\u0002\u0a6f\u0003\u0002\u0002",
+ "\u0002\u0002\u0a71\u0003\u0002\u0002\u0002\u0002\u0a73\u0003\u0002\u0002",
+ "\u0002\u0002\u0a75\u0003\u0002\u0002\u0002\u0002\u0a77\u0003\u0002\u0002",
+ "\u0002\u0002\u0a79\u0003\u0002\u0002\u0002\u0002\u0a7b\u0003\u0002\u0002",
+ "\u0002\u0002\u0a7d\u0003\u0002\u0002\u0002\u0002\u0a7f\u0003\u0002\u0002",
+ "\u0002\u0002\u0a81\u0003\u0002\u0002\u0002\u0002\u0a83\u0003\u0002\u0002",
+ "\u0002\u0002\u0a85\u0003\u0002\u0002\u0002\u0002\u0a87\u0003\u0002\u0002",
+ "\u0002\u0002\u0a89\u0003\u0002\u0002\u0002\u0002\u0a8b\u0003\u0002\u0002",
+ "\u0002\u0002\u0a8d\u0003\u0002\u0002\u0002\u0002\u0a8f\u0003\u0002\u0002",
+ "\u0002\u0002\u0a91\u0003\u0002\u0002\u0002\u0002\u0a93\u0003\u0002\u0002",
+ "\u0002\u0002\u0a95\u0003\u0002\u0002\u0002\u0002\u0a97\u0003\u0002\u0002",
+ "\u0002\u0002\u0a99\u0003\u0002\u0002\u0002\u0002\u0a9b\u0003\u0002\u0002",
+ "\u0002\u0002\u0a9d\u0003\u0002\u0002\u0002\u0002\u0a9f\u0003\u0002\u0002",
+ "\u0002\u0002\u0aa1\u0003\u0002\u0002\u0002\u0002\u0aa3\u0003\u0002\u0002",
+ "\u0002\u0002\u0aa5\u0003\u0002\u0002\u0002\u0002\u0aa7\u0003\u0002\u0002",
+ "\u0002\u0002\u0aa9\u0003\u0002\u0002\u0002\u0002\u0aab\u0003\u0002\u0002",
+ "\u0002\u0002\u0aad\u0003\u0002\u0002\u0002\u0002\u0aaf\u0003\u0002\u0002",
+ "\u0002\u0002\u0ab1\u0003\u0002\u0002\u0002\u0002\u0ab3\u0003\u0002\u0002",
+ "\u0002\u0002\u0ab5\u0003\u0002\u0002\u0002\u0002\u0ab7\u0003\u0002\u0002",
+ "\u0002\u0002\u0ab9\u0003\u0002\u0002\u0002\u0002\u0abb\u0003\u0002\u0002",
+ "\u0002\u0002\u0abd\u0003\u0002\u0002\u0002\u0002\u0abf\u0003\u0002\u0002",
+ "\u0002\u0002\u0ac1\u0003\u0002\u0002\u0002\u0002\u0ac3\u0003\u0002\u0002",
+ "\u0002\u0002\u0ac5\u0003\u0002\u0002\u0002\u0002\u0ac7\u0003\u0002\u0002",
+ "\u0002\u0002\u0ac9\u0003\u0002\u0002\u0002\u0002\u0acb\u0003\u0002\u0002",
+ "\u0002\u0002\u0acd\u0003\u0002\u0002\u0002\u0002\u0acf\u0003\u0002\u0002",
+ "\u0002\u0002\u0ad1\u0003\u0002\u0002\u0002\u0002\u0ad3\u0003\u0002\u0002",
+ "\u0002\u0002\u0ad5\u0003\u0002\u0002\u0002\u0002\u0ad7\u0003\u0002\u0002",
+ "\u0002\u0002\u0ad9\u0003\u0002\u0002\u0002\u0002\u0adb\u0003\u0002\u0002",
+ "\u0002\u0002\u0add\u0003\u0002\u0002\u0002\u0002\u0adf\u0003\u0002\u0002",
+ "\u0002\u0002\u0ae1\u0003\u0002\u0002\u0002\u0002\u0ae3\u0003\u0002\u0002",
+ "\u0002\u0002\u0ae5\u0003\u0002\u0002\u0002\u0002\u0ae7\u0003\u0002\u0002",
+ "\u0002\u0002\u0ae9\u0003\u0002\u0002\u0002\u0002\u0aeb\u0003\u0002\u0002",
+ "\u0002\u0002\u0aed\u0003\u0002\u0002\u0002\u0002\u0aef\u0003\u0002\u0002",
+ "\u0002\u0002\u0af1\u0003\u0002\u0002\u0002\u0002\u0af3\u0003\u0002\u0002",
+ "\u0002\u0002\u0af5\u0003\u0002\u0002\u0002\u0002\u0af7\u0003\u0002\u0002",
+ "\u0002\u0002\u0af9\u0003\u0002\u0002\u0002\u0002\u0afb\u0003\u0002\u0002",
+ "\u0002\u0002\u0afd\u0003\u0002\u0002\u0002\u0002\u0aff\u0003\u0002\u0002",
+ "\u0002\u0002\u0b01\u0003\u0002\u0002\u0002\u0002\u0b03\u0003\u0002\u0002",
+ "\u0002\u0002\u0b05\u0003\u0002\u0002\u0002\u0002\u0b07\u0003\u0002\u0002",
+ "\u0002\u0002\u0b09\u0003\u0002\u0002\u0002\u0002\u0b0b\u0003\u0002\u0002",
+ "\u0002\u0002\u0b0d\u0003\u0002\u0002\u0002\u0002\u0b0f\u0003\u0002\u0002",
+ "\u0002\u0002\u0b11\u0003\u0002\u0002\u0002\u0002\u0b13\u0003\u0002\u0002",
+ "\u0002\u0002\u0b15\u0003\u0002\u0002\u0002\u0002\u0b17\u0003\u0002\u0002",
+ "\u0002\u0002\u0b19\u0003\u0002\u0002\u0002\u0002\u0b1b\u0003\u0002\u0002",
+ "\u0002\u0002\u0b1d\u0003\u0002\u0002\u0002\u0002\u0b1f\u0003\u0002\u0002",
+ "\u0002\u0002\u0b21\u0003\u0002\u0002\u0002\u0002\u0b23\u0003\u0002\u0002",
+ "\u0002\u0002\u0b25\u0003\u0002\u0002\u0002\u0002\u0b27\u0003\u0002\u0002",
+ "\u0002\u0002\u0b29\u0003\u0002\u0002\u0002\u0002\u0b2b\u0003\u0002\u0002",
+ "\u0002\u0002\u0b2d\u0003\u0002\u0002\u0002\u0002\u0b2f\u0003\u0002\u0002",
+ "\u0002\u0002\u0b31\u0003\u0002\u0002\u0002\u0002\u0b33\u0003\u0002\u0002",
+ "\u0002\u0002\u0b35\u0003\u0002\u0002\u0002\u0002\u0b37\u0003\u0002\u0002",
+ "\u0002\u0002\u0b39\u0003\u0002\u0002\u0002\u0002\u0b3b\u0003\u0002\u0002",
+ "\u0002\u0002\u0b3d\u0003\u0002\u0002\u0002\u0002\u0b3f\u0003\u0002\u0002",
+ "\u0002\u0002\u0b41\u0003\u0002\u0002\u0002\u0002\u0b43\u0003\u0002\u0002",
+ "\u0002\u0002\u0b45\u0003\u0002\u0002\u0002\u0002\u0b47\u0003\u0002\u0002",
+ "\u0002\u0002\u0b49\u0003\u0002\u0002\u0002\u0002\u0b4b\u0003\u0002\u0002",
+ "\u0002\u0002\u0b4d\u0003\u0002\u0002\u0002\u0002\u0b4f\u0003\u0002\u0002",
+ "\u0002\u0002\u0b51\u0003\u0002\u0002\u0002\u0002\u0b53\u0003\u0002\u0002",
+ "\u0002\u0002\u0b55\u0003\u0002\u0002\u0002\u0002\u0b57\u0003\u0002\u0002",
+ "\u0002\u0002\u0b59\u0003\u0002\u0002\u0002\u0002\u0b5b\u0003\u0002\u0002",
+ "\u0002\u0002\u0b5d\u0003\u0002\u0002\u0002\u0002\u0b5f\u0003\u0002\u0002",
+ "\u0002\u0002\u0b61\u0003\u0002\u0002\u0002\u0002\u0b63\u0003\u0002\u0002",
+ "\u0002\u0002\u0b65\u0003\u0002\u0002\u0002\u0002\u0b67\u0003\u0002\u0002",
+ "\u0002\u0002\u0b69\u0003\u0002\u0002\u0002\u0002\u0b6b\u0003\u0002\u0002",
+ "\u0002\u0002\u0b6d\u0003\u0002\u0002\u0002\u0002\u0b6f\u0003\u0002\u0002",
+ "\u0002\u0002\u0b71\u0003\u0002\u0002\u0002\u0002\u0b73\u0003\u0002\u0002",
+ "\u0002\u0002\u0b75\u0003\u0002\u0002\u0002\u0002\u0b77\u0003\u0002\u0002",
+ "\u0002\u0002\u0b79\u0003\u0002\u0002\u0002\u0002\u0b7b\u0003\u0002\u0002",
+ "\u0002\u0002\u0b7d\u0003\u0002\u0002\u0002\u0002\u0b7f\u0003\u0002\u0002",
+ "\u0002\u0002\u0b81\u0003\u0002\u0002\u0002\u0002\u0b83\u0003\u0002\u0002",
+ "\u0002\u0002\u0b85\u0003\u0002\u0002\u0002\u0002\u0b87\u0003\u0002\u0002",
+ "\u0002\u0002\u0b89\u0003\u0002\u0002\u0002\u0002\u0b8b\u0003\u0002\u0002",
+ "\u0002\u0002\u0b8d\u0003\u0002\u0002\u0002\u0002\u0b8f\u0003\u0002\u0002",
+ "\u0002\u0002\u0b91\u0003\u0002\u0002\u0002\u0002\u0b93\u0003\u0002\u0002",
+ "\u0002\u0002\u0b95\u0003\u0002\u0002\u0002\u0002\u0b97\u0003\u0002\u0002",
+ "\u0002\u0002\u0b99\u0003\u0002\u0002\u0002\u0002\u0b9b\u0003\u0002\u0002",
+ "\u0002\u0002\u0b9d\u0003\u0002\u0002\u0002\u0002\u0b9f\u0003\u0002\u0002",
+ "\u0002\u0002\u0ba1\u0003\u0002\u0002\u0002\u0002\u0ba3\u0003\u0002\u0002",
+ "\u0002\u0002\u0ba5\u0003\u0002\u0002\u0002\u0002\u0ba7\u0003\u0002\u0002",
+ "\u0002\u0002\u0ba9\u0003\u0002\u0002\u0002\u0002\u0bab\u0003\u0002\u0002",
+ "\u0002\u0002\u0bad\u0003\u0002\u0002\u0002\u0002\u0baf\u0003\u0002\u0002",
+ "\u0002\u0002\u0bb1\u0003\u0002\u0002\u0002\u0002\u0bb3\u0003\u0002\u0002",
+ "\u0002\u0002\u0bb5\u0003\u0002\u0002\u0002\u0002\u0bb7\u0003\u0002\u0002",
+ "\u0002\u0002\u0bb9\u0003\u0002\u0002\u0002\u0002\u0bbb\u0003\u0002\u0002",
+ "\u0002\u0002\u0bbd\u0003\u0002\u0002\u0002\u0002\u0bbf\u0003\u0002\u0002",
+ "\u0002\u0002\u0bc1\u0003\u0002\u0002\u0002\u0002\u0bc3\u0003\u0002\u0002",
+ "\u0002\u0002\u0bc5\u0003\u0002\u0002\u0002\u0002\u0bc7\u0003\u0002\u0002",
+ "\u0002\u0002\u0bc9\u0003\u0002\u0002\u0002\u0002\u0bcb\u0003\u0002\u0002",
+ "\u0002\u0002\u0bcd\u0003\u0002\u0002\u0002\u0002\u0bcf\u0003\u0002\u0002",
+ "\u0002\u0002\u0bd1\u0003\u0002\u0002\u0002\u0002\u0bd3\u0003\u0002\u0002",
+ "\u0002\u0002\u0bd5\u0003\u0002\u0002\u0002\u0002\u0bd7\u0003\u0002\u0002",
+ "\u0002\u0002\u0bd9\u0003\u0002\u0002\u0002\u0002\u0bdb\u0003\u0002\u0002",
+ "\u0002\u0002\u0bdd\u0003\u0002\u0002\u0002\u0002\u0bdf\u0003\u0002\u0002",
+ "\u0002\u0002\u0be1\u0003\u0002\u0002\u0002\u0002\u0be3\u0003\u0002\u0002",
+ "\u0002\u0002\u0be5\u0003\u0002\u0002\u0002\u0002\u0be7\u0003\u0002\u0002",
+ "\u0002\u0002\u0be9\u0003\u0002\u0002\u0002\u0002\u0beb\u0003\u0002\u0002",
+ "\u0002\u0002\u0bed\u0003\u0002\u0002\u0002\u0002\u0bef\u0003\u0002\u0002",
+ "\u0002\u0002\u0bf1\u0003\u0002\u0002\u0002\u0002\u0bf3\u0003\u0002\u0002",
+ "\u0002\u0002\u0bf5\u0003\u0002\u0002\u0002\u0002\u0bf7\u0003\u0002\u0002",
+ "\u0002\u0002\u0bf9\u0003\u0002\u0002\u0002\u0002\u0bfb\u0003\u0002\u0002",
+ "\u0002\u0002\u0bfd\u0003\u0002\u0002\u0002\u0002\u0bff\u0003\u0002\u0002",
+ "\u0002\u0002\u0c01\u0003\u0002\u0002\u0002\u0002\u0c03\u0003\u0002\u0002",
+ "\u0002\u0002\u0c05\u0003\u0002\u0002\u0002\u0002\u0c07\u0003\u0002\u0002",
+ "\u0002\u0002\u0c09\u0003\u0002\u0002\u0002\u0002\u0c0b\u0003\u0002\u0002",
+ "\u0002\u0002\u0c0d\u0003\u0002\u0002\u0002\u0002\u0c0f\u0003\u0002\u0002",
+ "\u0002\u0002\u0c11\u0003\u0002\u0002\u0002\u0002\u0c13\u0003\u0002\u0002",
+ "\u0002\u0002\u0c15\u0003\u0002\u0002\u0002\u0002\u0c17\u0003\u0002\u0002",
+ "\u0002\u0002\u0c19\u0003\u0002\u0002\u0002\u0002\u0c1b\u0003\u0002\u0002",
+ "\u0002\u0002\u0c1d\u0003\u0002\u0002\u0002\u0002\u0c1f\u0003\u0002\u0002",
+ "\u0002\u0002\u0c21\u0003\u0002\u0002\u0002\u0002\u0c23\u0003\u0002\u0002",
+ "\u0002\u0002\u0c25\u0003\u0002\u0002\u0002\u0002\u0c27\u0003\u0002\u0002",
+ "\u0002\u0002\u0c29\u0003\u0002\u0002\u0002\u0002\u0c2b\u0003\u0002\u0002",
+ "\u0002\u0002\u0c2d\u0003\u0002\u0002\u0002\u0002\u0c2f\u0003\u0002\u0002",
+ "\u0002\u0002\u0c31\u0003\u0002\u0002\u0002\u0002\u0c33\u0003\u0002\u0002",
+ "\u0002\u0002\u0c35\u0003\u0002\u0002\u0002\u0002\u0c37\u0003\u0002\u0002",
+ "\u0002\u0002\u0c39\u0003\u0002\u0002\u0002\u0002\u0c3b\u0003\u0002\u0002",
+ "\u0002\u0002\u0c3d\u0003\u0002\u0002\u0002\u0002\u0c3f\u0003\u0002\u0002",
+ "\u0002\u0002\u0c41\u0003\u0002\u0002\u0002\u0002\u0c43\u0003\u0002\u0002",
+ "\u0002\u0002\u0c45\u0003\u0002\u0002\u0002\u0002\u0c47\u0003\u0002\u0002",
+ "\u0002\u0002\u0c49\u0003\u0002\u0002\u0002\u0002\u0c4b\u0003\u0002\u0002",
+ "\u0002\u0002\u0c4d\u0003\u0002\u0002\u0002\u0002\u0c4f\u0003\u0002\u0002",
+ "\u0002\u0002\u0c51\u0003\u0002\u0002\u0002\u0002\u0c53\u0003\u0002\u0002",
+ "\u0002\u0002\u0c55\u0003\u0002\u0002\u0002\u0002\u0c57\u0003\u0002\u0002",
+ "\u0002\u0002\u0c59\u0003\u0002\u0002\u0002\u0002\u0c5b\u0003\u0002\u0002",
+ "\u0002\u0002\u0c5d\u0003\u0002\u0002\u0002\u0002\u0c5f\u0003\u0002\u0002",
+ "\u0002\u0002\u0c61\u0003\u0002\u0002\u0002\u0002\u0c63\u0003\u0002\u0002",
+ "\u0002\u0002\u0c65\u0003\u0002\u0002\u0002\u0002\u0c67\u0003\u0002\u0002",
+ "\u0002\u0002\u0c69\u0003\u0002\u0002\u0002\u0002\u0c6b\u0003\u0002\u0002",
+ "\u0002\u0002\u0c6d\u0003\u0002\u0002\u0002\u0002\u0c6f\u0003\u0002\u0002",
+ "\u0002\u0002\u0c71\u0003\u0002\u0002\u0002\u0002\u0c73\u0003\u0002\u0002",
+ "\u0002\u0002\u0c75\u0003\u0002\u0002\u0002\u0002\u0c77\u0003\u0002\u0002",
+ "\u0002\u0002\u0c79\u0003\u0002\u0002\u0002\u0002\u0c7b\u0003\u0002\u0002",
+ "\u0002\u0002\u0c7d\u0003\u0002\u0002\u0002\u0002\u0c7f\u0003\u0002\u0002",
+ "\u0002\u0002\u0c81\u0003\u0002\u0002\u0002\u0002\u0c83\u0003\u0002\u0002",
+ "\u0002\u0002\u0c85\u0003\u0002\u0002\u0002\u0002\u0c87\u0003\u0002\u0002",
+ "\u0002\u0002\u0c89\u0003\u0002\u0002\u0002\u0002\u0c8b\u0003\u0002\u0002",
+ "\u0002\u0002\u0c8d\u0003\u0002\u0002\u0002\u0002\u0c8f\u0003\u0002\u0002",
+ "\u0002\u0002\u0c91\u0003\u0002\u0002\u0002\u0002\u0c93\u0003\u0002\u0002",
+ "\u0002\u0002\u0c95\u0003\u0002\u0002\u0002\u0002\u0c97\u0003\u0002\u0002",
+ "\u0002\u0002\u0c99\u0003\u0002\u0002\u0002\u0002\u0c9b\u0003\u0002\u0002",
+ "\u0002\u0002\u0c9d\u0003\u0002\u0002\u0002\u0002\u0c9f\u0003\u0002\u0002",
+ "\u0002\u0002\u0ca1\u0003\u0002\u0002\u0002\u0002\u0ca3\u0003\u0002\u0002",
+ "\u0002\u0002\u0ca5\u0003\u0002\u0002\u0002\u0002\u0ca7\u0003\u0002\u0002",
+ "\u0002\u0002\u0ca9\u0003\u0002\u0002\u0002\u0002\u0cab\u0003\u0002\u0002",
+ "\u0002\u0002\u0cad\u0003\u0002\u0002\u0002\u0002\u0caf\u0003\u0002\u0002",
+ "\u0002\u0002\u0cb1\u0003\u0002\u0002\u0002\u0002\u0cb3\u0003\u0002\u0002",
+ "\u0002\u0002\u0cb5\u0003\u0002\u0002\u0002\u0002\u0cb7\u0003\u0002\u0002",
+ "\u0002\u0002\u0cb9\u0003\u0002\u0002\u0002\u0002\u0cbb\u0003\u0002\u0002",
+ "\u0002\u0002\u0cbd\u0003\u0002\u0002\u0002\u0002\u0cbf\u0003\u0002\u0002",
+ "\u0002\u0002\u0cc1\u0003\u0002\u0002\u0002\u0002\u0cc3\u0003\u0002\u0002",
+ "\u0002\u0002\u0cc5\u0003\u0002\u0002\u0002\u0002\u0cc7\u0003\u0002\u0002",
+ "\u0002\u0002\u0cc9\u0003\u0002\u0002\u0002\u0002\u0ccb\u0003\u0002\u0002",
+ "\u0002\u0002\u0ccd\u0003\u0002\u0002\u0002\u0002\u0ccf\u0003\u0002\u0002",
+ "\u0002\u0002\u0cd1\u0003\u0002\u0002\u0002\u0002\u0cd3\u0003\u0002\u0002",
+ "\u0002\u0002\u0cd5\u0003\u0002\u0002\u0002\u0002\u0cd7\u0003\u0002\u0002",
+ "\u0002\u0002\u0cd9\u0003\u0002\u0002\u0002\u0002\u0cdb\u0003\u0002\u0002",
+ "\u0002\u0002\u0cdd\u0003\u0002\u0002\u0002\u0002\u0cdf\u0003\u0002\u0002",
+ "\u0002\u0002\u0ce1\u0003\u0002\u0002\u0002\u0002\u0ce3\u0003\u0002\u0002",
+ "\u0002\u0002\u0ce5\u0003\u0002\u0002\u0002\u0002\u0ce7\u0003\u0002\u0002",
+ "\u0002\u0002\u0ce9\u0003\u0002\u0002\u0002\u0002\u0ceb\u0003\u0002\u0002",
+ "\u0002\u0002\u0ced\u0003\u0002\u0002\u0002\u0002\u0cef\u0003\u0002\u0002",
+ "\u0002\u0002\u0cf1\u0003\u0002\u0002\u0002\u0002\u0cf3\u0003\u0002\u0002",
+ "\u0002\u0002\u0cf5\u0003\u0002\u0002\u0002\u0002\u0cf7\u0003\u0002\u0002",
+ "\u0002\u0002\u0cf9\u0003\u0002\u0002\u0002\u0002\u0cfb\u0003\u0002\u0002",
+ "\u0002\u0002\u0cfd\u0003\u0002\u0002\u0002\u0002\u0cff\u0003\u0002\u0002",
+ "\u0002\u0002\u0d01\u0003\u0002\u0002\u0002\u0002\u0d03\u0003\u0002\u0002",
+ "\u0002\u0002\u0d05\u0003\u0002\u0002\u0002\u0002\u0d07\u0003\u0002\u0002",
+ "\u0002\u0002\u0d09\u0003\u0002\u0002\u0002\u0002\u0d0b\u0003\u0002\u0002",
+ "\u0002\u0002\u0d0d\u0003\u0002\u0002\u0002\u0002\u0d0f\u0003\u0002\u0002",
+ "\u0002\u0002\u0d11\u0003\u0002\u0002\u0002\u0002\u0d13\u0003\u0002\u0002",
+ "\u0002\u0002\u0d15\u0003\u0002\u0002\u0002\u0002\u0d17\u0003\u0002\u0002",
+ "\u0002\u0002\u0d19\u0003\u0002\u0002\u0002\u0002\u0d1b\u0003\u0002\u0002",
+ "\u0002\u0002\u0d1d\u0003\u0002\u0002\u0002\u0002\u0d1f\u0003\u0002\u0002",
+ "\u0002\u0002\u0d21\u0003\u0002\u0002\u0002\u0002\u0d23\u0003\u0002\u0002",
+ "\u0002\u0002\u0d25\u0003\u0002\u0002\u0002\u0002\u0d27\u0003\u0002\u0002",
+ "\u0002\u0002\u0d29\u0003\u0002\u0002\u0002\u0002\u0d2b\u0003\u0002\u0002",
+ "\u0002\u0002\u0d2d\u0003\u0002\u0002\u0002\u0002\u0d2f\u0003\u0002\u0002",
+ "\u0002\u0002\u0d31\u0003\u0002\u0002\u0002\u0002\u0d33\u0003\u0002\u0002",
+ "\u0002\u0002\u0d35\u0003\u0002\u0002\u0002\u0002\u0d37\u0003\u0002\u0002",
+ "\u0002\u0002\u0d39\u0003\u0002\u0002\u0002\u0002\u0d3b\u0003\u0002\u0002",
+ "\u0002\u0002\u0d3d\u0003\u0002\u0002\u0002\u0002\u0d3f\u0003\u0002\u0002",
+ "\u0002\u0002\u0d41\u0003\u0002\u0002\u0002\u0002\u0d43\u0003\u0002\u0002",
+ "\u0002\u0002\u0d45\u0003\u0002\u0002\u0002\u0002\u0d47\u0003\u0002\u0002",
+ "\u0002\u0002\u0d49\u0003\u0002\u0002\u0002\u0002\u0d4b\u0003\u0002\u0002",
+ "\u0002\u0002\u0d4d\u0003\u0002\u0002\u0002\u0002\u0d4f\u0003\u0002\u0002",
+ "\u0002\u0002\u0d51\u0003\u0002\u0002\u0002\u0002\u0d53\u0003\u0002\u0002",
+ "\u0002\u0002\u0d55\u0003\u0002\u0002\u0002\u0002\u0d57\u0003\u0002\u0002",
+ "\u0002\u0002\u0d59\u0003\u0002\u0002\u0002\u0002\u0d5b\u0003\u0002\u0002",
+ "\u0002\u0002\u0d5d\u0003\u0002\u0002\u0002\u0002\u0d5f\u0003\u0002\u0002",
+ "\u0002\u0002\u0d61\u0003\u0002\u0002\u0002\u0002\u0d63\u0003\u0002\u0002",
+ "\u0002\u0002\u0d65\u0003\u0002\u0002\u0002\u0002\u0d67\u0003\u0002\u0002",
+ "\u0002\u0002\u0d69\u0003\u0002\u0002\u0002\u0002\u0d6b\u0003\u0002\u0002",
+ "\u0002\u0002\u0d6d\u0003\u0002\u0002\u0002\u0002\u0d6f\u0003\u0002\u0002",
+ "\u0002\u0002\u0d71\u0003\u0002\u0002\u0002\u0002\u0d73\u0003\u0002\u0002",
+ "\u0002\u0002\u0d75\u0003\u0002\u0002\u0002\u0002\u0d77\u0003\u0002\u0002",
+ "\u0002\u0002\u0d79\u0003\u0002\u0002\u0002\u0002\u0d7b\u0003\u0002\u0002",
+ "\u0002\u0002\u0d7d\u0003\u0002\u0002\u0002\u0002\u0d7f\u0003\u0002\u0002",
+ "\u0002\u0002\u0d81\u0003\u0002\u0002\u0002\u0002\u0d83\u0003\u0002\u0002",
+ "\u0002\u0002\u0d85\u0003\u0002\u0002\u0002\u0002\u0d87\u0003\u0002\u0002",
+ "\u0002\u0002\u0d89\u0003\u0002\u0002\u0002\u0002\u0d8b\u0003\u0002\u0002",
+ "\u0002\u0002\u0d8d\u0003\u0002\u0002\u0002\u0002\u0d8f\u0003\u0002\u0002",
+ "\u0002\u0002\u0d91\u0003\u0002\u0002\u0002\u0002\u0d93\u0003\u0002\u0002",
+ "\u0002\u0002\u0d95\u0003\u0002\u0002\u0002\u0002\u0d97\u0003\u0002\u0002",
+ "\u0002\u0002\u0d99\u0003\u0002\u0002\u0002\u0002\u0d9b\u0003\u0002\u0002",
+ "\u0002\u0002\u0d9d\u0003\u0002\u0002\u0002\u0002\u0d9f\u0003\u0002\u0002",
+ "\u0002\u0002\u0da1\u0003\u0002\u0002\u0002\u0002\u0da3\u0003\u0002\u0002",
+ "\u0002\u0002\u0da5\u0003\u0002\u0002\u0002\u0002\u0da7\u0003\u0002\u0002",
+ "\u0002\u0002\u0da9\u0003\u0002\u0002\u0002\u0002\u0dab\u0003\u0002\u0002",
+ "\u0002\u0002\u0dad\u0003\u0002\u0002\u0002\u0002\u0daf\u0003\u0002\u0002",
+ "\u0002\u0002\u0db1\u0003\u0002\u0002\u0002\u0002\u0db3\u0003\u0002\u0002",
+ "\u0002\u0002\u0db5\u0003\u0002\u0002\u0002\u0002\u0db7\u0003\u0002\u0002",
+ "\u0002\u0002\u0db9\u0003\u0002\u0002\u0002\u0002\u0dbb\u0003\u0002\u0002",
+ "\u0002\u0002\u0dbd\u0003\u0002\u0002\u0002\u0002\u0dbf\u0003\u0002\u0002",
+ "\u0002\u0002\u0dc1\u0003\u0002\u0002\u0002\u0002\u0dc3\u0003\u0002\u0002",
+ "\u0002\u0002\u0dc5\u0003\u0002\u0002\u0002\u0002\u0dc7\u0003\u0002\u0002",
+ "\u0002\u0002\u0dc9\u0003\u0002\u0002\u0002\u0002\u0dcb\u0003\u0002\u0002",
+ "\u0002\u0002\u0dcd\u0003\u0002\u0002\u0002\u0002\u0dcf\u0003\u0002\u0002",
+ "\u0002\u0002\u0dd1\u0003\u0002\u0002\u0002\u0002\u0dd3\u0003\u0002\u0002",
+ "\u0002\u0002\u0dd5\u0003\u0002\u0002\u0002\u0002\u0dd7\u0003\u0002\u0002",
+ "\u0002\u0002\u0dd9\u0003\u0002\u0002\u0002\u0002\u0ddb\u0003\u0002\u0002",
+ "\u0002\u0002\u0ddd\u0003\u0002\u0002\u0002\u0002\u0ddf\u0003\u0002\u0002",
+ "\u0002\u0002\u0de1\u0003\u0002\u0002\u0002\u0002\u0de3\u0003\u0002\u0002",
+ "\u0002\u0002\u0de5\u0003\u0002\u0002\u0002\u0002\u0de7\u0003\u0002\u0002",
+ "\u0002\u0002\u0de9\u0003\u0002\u0002\u0002\u0002\u0deb\u0003\u0002\u0002",
+ "\u0002\u0002\u0ded\u0003\u0002\u0002\u0002\u0002\u0def\u0003\u0002\u0002",
+ "\u0002\u0002\u0df1\u0003\u0002\u0002\u0002\u0002\u0df3\u0003\u0002\u0002",
+ "\u0002\u0002\u0df5\u0003\u0002\u0002\u0002\u0002\u0df7\u0003\u0002\u0002",
+ "\u0002\u0002\u0df9\u0003\u0002\u0002\u0002\u0002\u0dfb\u0003\u0002\u0002",
+ "\u0002\u0002\u0dfd\u0003\u0002\u0002\u0002\u0002\u0dff\u0003\u0002\u0002",
+ "\u0002\u0002\u0e01\u0003\u0002\u0002\u0002\u0002\u0e03\u0003\u0002\u0002",
+ "\u0002\u0002\u0e05\u0003\u0002\u0002\u0002\u0002\u0e07\u0003\u0002\u0002",
+ "\u0002\u0002\u0e09\u0003\u0002\u0002\u0002\u0002\u0e0b\u0003\u0002\u0002",
+ "\u0002\u0002\u0e0d\u0003\u0002\u0002\u0002\u0002\u0e0f\u0003\u0002\u0002",
+ "\u0002\u0002\u0e11\u0003\u0002\u0002\u0002\u0002\u0e13\u0003\u0002\u0002",
+ "\u0002\u0002\u0e15\u0003\u0002\u0002\u0002\u0002\u0e17\u0003\u0002\u0002",
+ "\u0002\u0002\u0e19\u0003\u0002\u0002\u0002\u0002\u0e1b\u0003\u0002\u0002",
+ "\u0002\u0002\u0e1d\u0003\u0002\u0002\u0002\u0002\u0e1f\u0003\u0002\u0002",
+ "\u0002\u0002\u0e21\u0003\u0002\u0002\u0002\u0002\u0e23\u0003\u0002\u0002",
+ "\u0002\u0002\u0e25\u0003\u0002\u0002\u0002\u0002\u0e27\u0003\u0002\u0002",
+ "\u0002\u0002\u0e29\u0003\u0002\u0002\u0002\u0002\u0e2b\u0003\u0002\u0002",
+ "\u0002\u0002\u0e2d\u0003\u0002\u0002\u0002\u0002\u0e2f\u0003\u0002\u0002",
+ "\u0002\u0002\u0e31\u0003\u0002\u0002\u0002\u0002\u0e33\u0003\u0002\u0002",
+ "\u0002\u0002\u0e35\u0003\u0002\u0002\u0002\u0002\u0e37\u0003\u0002\u0002",
+ "\u0002\u0002\u0e39\u0003\u0002\u0002\u0002\u0002\u0e3b\u0003\u0002\u0002",
+ "\u0002\u0002\u0e3d\u0003\u0002\u0002\u0002\u0002\u0e3f\u0003\u0002\u0002",
+ "\u0002\u0002\u0e41\u0003\u0002\u0002\u0002\u0002\u0e43\u0003\u0002\u0002",
+ "\u0002\u0002\u0e45\u0003\u0002\u0002\u0002\u0002\u0e47\u0003\u0002\u0002",
+ "\u0002\u0002\u0e49\u0003\u0002\u0002\u0002\u0002\u0e4b\u0003\u0002\u0002",
+ "\u0002\u0002\u0e4d\u0003\u0002\u0002\u0002\u0002\u0e4f\u0003\u0002\u0002",
+ "\u0002\u0002\u0e51\u0003\u0002\u0002\u0002\u0002\u0e53\u0003\u0002\u0002",
+ "\u0002\u0002\u0e55\u0003\u0002\u0002\u0002\u0002\u0e57\u0003\u0002\u0002",
+ "\u0002\u0002\u0e59\u0003\u0002\u0002\u0002\u0002\u0e5b\u0003\u0002\u0002",
+ "\u0002\u0002\u0e5d\u0003\u0002\u0002\u0002\u0002\u0e5f\u0003\u0002\u0002",
+ "\u0002\u0002\u0e61\u0003\u0002\u0002\u0002\u0002\u0e63\u0003\u0002\u0002",
+ "\u0002\u0002\u0e65\u0003\u0002\u0002\u0002\u0002\u0e67\u0003\u0002\u0002",
+ "\u0002\u0002\u0e69\u0003\u0002\u0002\u0002\u0002\u0e6b\u0003\u0002\u0002",
+ "\u0002\u0002\u0e6d\u0003\u0002\u0002\u0002\u0002\u0e6f\u0003\u0002\u0002",
+ "\u0002\u0002\u0e71\u0003\u0002\u0002\u0002\u0002\u0e73\u0003\u0002\u0002",
+ "\u0002\u0002\u0e75\u0003\u0002\u0002\u0002\u0002\u0e77\u0003\u0002\u0002",
+ "\u0002\u0002\u0e79\u0003\u0002\u0002\u0002\u0002\u0e7b\u0003\u0002\u0002",
+ "\u0002\u0002\u0e7d\u0003\u0002\u0002\u0002\u0002\u0e7f\u0003\u0002\u0002",
+ "\u0002\u0002\u0e81\u0003\u0002\u0002\u0002\u0002\u0e83\u0003\u0002\u0002",
+ "\u0002\u0002\u0e85\u0003\u0002\u0002\u0002\u0002\u0e87\u0003\u0002\u0002",
+ "\u0002\u0002\u0e89\u0003\u0002\u0002\u0002\u0002\u0e8b\u0003\u0002\u0002",
+ "\u0002\u0002\u0e8d\u0003\u0002\u0002\u0002\u0002\u0e8f\u0003\u0002\u0002",
+ "\u0002\u0002\u0e91\u0003\u0002\u0002\u0002\u0002\u0e93\u0003\u0002\u0002",
+ "\u0002\u0002\u0e95\u0003\u0002\u0002\u0002\u0002\u0e97\u0003\u0002\u0002",
+ "\u0002\u0002\u0e99\u0003\u0002\u0002\u0002\u0002\u0e9b\u0003\u0002\u0002",
+ "\u0002\u0002\u0e9d\u0003\u0002\u0002\u0002\u0002\u0e9f\u0003\u0002\u0002",
+ "\u0002\u0002\u0ea1\u0003\u0002\u0002\u0002\u0002\u0ea3\u0003\u0002\u0002",
+ "\u0002\u0002\u0ea5\u0003\u0002\u0002\u0002\u0002\u0ea7\u0003\u0002\u0002",
+ "\u0002\u0002\u0ea9\u0003\u0002\u0002\u0002\u0002\u0eab\u0003\u0002\u0002",
+ "\u0002\u0002\u0ead\u0003\u0002\u0002\u0002\u0002\u0eaf\u0003\u0002\u0002",
+ "\u0002\u0002\u0eb1\u0003\u0002\u0002\u0002\u0002\u0eb3\u0003\u0002\u0002",
+ "\u0002\u0002\u0eb5\u0003\u0002\u0002\u0002\u0002\u0eb7\u0003\u0002\u0002",
+ "\u0002\u0002\u0eb9\u0003\u0002\u0002\u0002\u0002\u0ebb\u0003\u0002\u0002",
+ "\u0002\u0002\u0ebd\u0003\u0002\u0002\u0002\u0002\u0ebf\u0003\u0002\u0002",
+ "\u0002\u0002\u0ec1\u0003\u0002\u0002\u0002\u0002\u0ec3\u0003\u0002\u0002",
+ "\u0002\u0002\u0ec5\u0003\u0002\u0002\u0002\u0002\u0ec7\u0003\u0002\u0002",
+ "\u0002\u0002\u0ec9\u0003\u0002\u0002\u0002\u0002\u0ecb\u0003\u0002\u0002",
+ "\u0002\u0002\u0ecd\u0003\u0002\u0002\u0002\u0002\u0ecf\u0003\u0002\u0002",
+ "\u0002\u0002\u0ed1\u0003\u0002\u0002\u0002\u0002\u0ed3\u0003\u0002\u0002",
+ "\u0002\u0002\u0ed5\u0003\u0002\u0002\u0002\u0002\u0ed7\u0003\u0002\u0002",
+ "\u0002\u0002\u0ed9\u0003\u0002\u0002\u0002\u0002\u0edb\u0003\u0002\u0002",
+ "\u0002\u0002\u0edd\u0003\u0002\u0002\u0002\u0002\u0edf\u0003\u0002\u0002",
+ "\u0002\u0002\u0ee1\u0003\u0002\u0002\u0002\u0002\u0ee3\u0003\u0002\u0002",
+ "\u0002\u0002\u0ee5\u0003\u0002\u0002\u0002\u0002\u0ee7\u0003\u0002\u0002",
+ "\u0002\u0002\u0ee9\u0003\u0002\u0002\u0002\u0002\u0eeb\u0003\u0002\u0002",
+ "\u0002\u0002\u0eed\u0003\u0002\u0002\u0002\u0002\u0eef\u0003\u0002\u0002",
+ "\u0002\u0002\u0ef1\u0003\u0002\u0002\u0002\u0002\u0ef3\u0003\u0002\u0002",
+ "\u0002\u0002\u0ef5\u0003\u0002\u0002\u0002\u0002\u0ef7\u0003\u0002\u0002",
+ "\u0002\u0002\u0ef9\u0003\u0002\u0002\u0002\u0002\u0efb\u0003\u0002\u0002",
+ "\u0002\u0002\u0efd\u0003\u0002\u0002\u0002\u0002\u0eff\u0003\u0002\u0002",
+ "\u0002\u0002\u0f01\u0003\u0002\u0002\u0002\u0002\u0f03\u0003\u0002\u0002",
+ "\u0002\u0002\u0f05\u0003\u0002\u0002\u0002\u0002\u0f07\u0003\u0002\u0002",
+ "\u0002\u0002\u0f09\u0003\u0002\u0002\u0002\u0002\u0f0b\u0003\u0002\u0002",
+ "\u0002\u0002\u0f0d\u0003\u0002\u0002\u0002\u0002\u0f0f\u0003\u0002\u0002",
+ "\u0002\u0002\u0f11\u0003\u0002\u0002\u0002\u0002\u0f13\u0003\u0002\u0002",
+ "\u0002\u0002\u0f15\u0003\u0002\u0002\u0002\u0002\u0f17\u0003\u0002\u0002",
+ "\u0002\u0002\u0f19\u0003\u0002\u0002\u0002\u0002\u0f1b\u0003\u0002\u0002",
+ "\u0002\u0002\u0f1d\u0003\u0002\u0002\u0002\u0002\u0f1f\u0003\u0002\u0002",
+ "\u0002\u0002\u0f21\u0003\u0002\u0002\u0002\u0002\u0f23\u0003\u0002\u0002",
+ "\u0002\u0002\u0f25\u0003\u0002\u0002\u0002\u0002\u0f27\u0003\u0002\u0002",
+ "\u0002\u0002\u0f29\u0003\u0002\u0002\u0002\u0002\u0f2b\u0003\u0002\u0002",
+ "\u0002\u0002\u0f2d\u0003\u0002\u0002\u0002\u0002\u0f2f\u0003\u0002\u0002",
+ "\u0002\u0002\u0f31\u0003\u0002\u0002\u0002\u0002\u0f33\u0003\u0002\u0002",
+ "\u0002\u0002\u0f35\u0003\u0002\u0002\u0002\u0002\u0f37\u0003\u0002\u0002",
+ "\u0002\u0002\u0f39\u0003\u0002\u0002\u0002\u0002\u0f3b\u0003\u0002\u0002",
+ "\u0002\u0002\u0f3d\u0003\u0002\u0002\u0002\u0002\u0f3f\u0003\u0002\u0002",
+ "\u0002\u0002\u0f41\u0003\u0002\u0002\u0002\u0002\u0f43\u0003\u0002\u0002",
+ "\u0002\u0002\u0f45\u0003\u0002\u0002\u0002\u0002\u0f47\u0003\u0002\u0002",
+ "\u0002\u0002\u0f49\u0003\u0002\u0002\u0002\u0002\u0f4b\u0003\u0002\u0002",
+ "\u0002\u0002\u0f4d\u0003\u0002\u0002\u0002\u0002\u0f4f\u0003\u0002\u0002",
+ "\u0002\u0002\u0f51\u0003\u0002\u0002\u0002\u0002\u0f53\u0003\u0002\u0002",
+ "\u0002\u0002\u0f55\u0003\u0002\u0002\u0002\u0002\u0f57\u0003\u0002\u0002",
+ "\u0002\u0002\u0f59\u0003\u0002\u0002\u0002\u0002\u0f5b\u0003\u0002\u0002",
+ "\u0002\u0002\u0f5d\u0003\u0002\u0002\u0002\u0002\u0f5f\u0003\u0002\u0002",
+ "\u0002\u0002\u0f61\u0003\u0002\u0002\u0002\u0002\u0f63\u0003\u0002\u0002",
+ "\u0002\u0002\u0f65\u0003\u0002\u0002\u0002\u0002\u0f67\u0003\u0002\u0002",
+ "\u0002\u0002\u0f69\u0003\u0002\u0002\u0002\u0002\u0f6b\u0003\u0002\u0002",
+ "\u0002\u0002\u0f6d\u0003\u0002\u0002\u0002\u0002\u0f6f\u0003\u0002\u0002",
+ "\u0002\u0002\u0f71\u0003\u0002\u0002\u0002\u0002\u0f73\u0003\u0002\u0002",
+ "\u0002\u0002\u0f75\u0003\u0002\u0002\u0002\u0002\u0f77\u0003\u0002\u0002",
+ "\u0002\u0002\u0f79\u0003\u0002\u0002\u0002\u0002\u0f7b\u0003\u0002\u0002",
+ "\u0002\u0002\u0f7d\u0003\u0002\u0002\u0002\u0002\u0f7f\u0003\u0002\u0002",
+ "\u0002\u0002\u0f81\u0003\u0002\u0002\u0002\u0002\u0f83\u0003\u0002\u0002",
+ "\u0002\u0002\u0f85\u0003\u0002\u0002\u0002\u0002\u0f87\u0003\u0002\u0002",
+ "\u0002\u0002\u0f89\u0003\u0002\u0002\u0002\u0002\u0f8b\u0003\u0002\u0002",
+ "\u0002\u0002\u0f8d\u0003\u0002\u0002\u0002\u0002\u0f8f\u0003\u0002\u0002",
+ "\u0002\u0002\u0f91\u0003\u0002\u0002\u0002\u0002\u0f93\u0003\u0002\u0002",
+ "\u0002\u0002\u0f95\u0003\u0002\u0002\u0002\u0002\u0f97\u0003\u0002\u0002",
+ "\u0002\u0002\u0f99\u0003\u0002\u0002\u0002\u0002\u0f9b\u0003\u0002\u0002",
+ "\u0002\u0002\u0f9d\u0003\u0002\u0002\u0002\u0002\u0f9f\u0003\u0002\u0002",
+ "\u0002\u0002\u0fa1\u0003\u0002\u0002\u0002\u0002\u0fa3\u0003\u0002\u0002",
+ "\u0002\u0002\u0fa5\u0003\u0002\u0002\u0002\u0002\u0fa7\u0003\u0002\u0002",
+ "\u0002\u0002\u0fa9\u0003\u0002\u0002\u0002\u0002\u0fab\u0003\u0002\u0002",
+ "\u0002\u0002\u0fad\u0003\u0002\u0002\u0002\u0002\u0faf\u0003\u0002\u0002",
+ "\u0002\u0002\u0fb1\u0003\u0002\u0002\u0002\u0002\u0fb3\u0003\u0002\u0002",
+ "\u0002\u0002\u0fb5\u0003\u0002\u0002\u0002\u0002\u0fb7\u0003\u0002\u0002",
+ "\u0002\u0002\u0fb9\u0003\u0002\u0002\u0002\u0002\u0fbb\u0003\u0002\u0002",
+ "\u0002\u0002\u0fbd\u0003\u0002\u0002\u0002\u0002\u0fbf\u0003\u0002\u0002",
+ "\u0002\u0002\u0fc1\u0003\u0002\u0002\u0002\u0002\u0fc3\u0003\u0002\u0002",
+ "\u0002\u0002\u0fc5\u0003\u0002\u0002\u0002\u0002\u0fc7\u0003\u0002\u0002",
+ "\u0002\u0002\u0fc9\u0003\u0002\u0002\u0002\u0002\u0fcb\u0003\u0002\u0002",
+ "\u0002\u0002\u0fcd\u0003\u0002\u0002\u0002\u0002\u0fcf\u0003\u0002\u0002",
+ "\u0002\u0002\u0fd1\u0003\u0002\u0002\u0002\u0002\u0fd3\u0003\u0002\u0002",
+ "\u0002\u0002\u0fd5\u0003\u0002\u0002\u0002\u0002\u0fd7\u0003\u0002\u0002",
+ "\u0002\u0002\u0fd9\u0003\u0002\u0002\u0002\u0002\u0fdb\u0003\u0002\u0002",
+ "\u0002\u0002\u0fdd\u0003\u0002\u0002\u0002\u0002\u0fdf\u0003\u0002\u0002",
+ "\u0002\u0002\u0fe1\u0003\u0002\u0002\u0002\u0002\u0fe3\u0003\u0002\u0002",
+ "\u0002\u0002\u0fe5\u0003\u0002\u0002\u0002\u0002\u0fe7\u0003\u0002\u0002",
+ "\u0002\u0002\u0fe9\u0003\u0002\u0002\u0002\u0002\u0feb\u0003\u0002\u0002",
+ "\u0002\u0002\u0fed\u0003\u0002\u0002\u0002\u0002\u0fef\u0003\u0002\u0002",
+ "\u0002\u0002\u0ff1\u0003\u0002\u0002\u0002\u0002\u0ff3\u0003\u0002\u0002",
+ "\u0002\u0002\u0ff5\u0003\u0002\u0002\u0002\u0002\u0ff7\u0003\u0002\u0002",
+ "\u0002\u0002\u0ff9\u0003\u0002\u0002\u0002\u0002\u0ffb\u0003\u0002\u0002",
+ "\u0002\u0002\u0ffd\u0003\u0002\u0002\u0002\u0002\u0fff\u0003\u0002\u0002",
+ "\u0002\u0002\u1001\u0003\u0002\u0002\u0002\u0002\u1003\u0003\u0002\u0002",
+ "\u0002\u0002\u1005\u0003\u0002\u0002\u0002\u0002\u1007\u0003\u0002\u0002",
+ "\u0002\u0002\u1009\u0003\u0002\u0002\u0002\u0002\u100b\u0003\u0002\u0002",
+ "\u0002\u0002\u100d\u0003\u0002\u0002\u0002\u0002\u100f\u0003\u0002\u0002",
+ "\u0002\u0002\u1011\u0003\u0002\u0002\u0002\u0002\u1013\u0003\u0002\u0002",
+ "\u0002\u0002\u1015\u0003\u0002\u0002\u0002\u0002\u1017\u0003\u0002\u0002",
+ "\u0002\u0002\u1019\u0003\u0002\u0002\u0002\u0002\u101b\u0003\u0002\u0002",
+ "\u0002\u0002\u101d\u0003\u0002\u0002\u0002\u0002\u101f\u0003\u0002\u0002",
+ "\u0002\u0002\u1021\u0003\u0002\u0002\u0002\u0002\u1023\u0003\u0002\u0002",
+ "\u0002\u0002\u1025\u0003\u0002\u0002\u0002\u0002\u1027\u0003\u0002\u0002",
+ "\u0002\u0002\u1029\u0003\u0002\u0002\u0002\u0002\u102b\u0003\u0002\u0002",
+ "\u0002\u0002\u102d\u0003\u0002\u0002\u0002\u0002\u102f\u0003\u0002\u0002",
+ "\u0002\u0002\u1031\u0003\u0002\u0002\u0002\u0002\u1033\u0003\u0002\u0002",
+ "\u0002\u0002\u1035\u0003\u0002\u0002\u0002\u0002\u1037\u0003\u0002\u0002",
+ "\u0002\u0002\u1039\u0003\u0002\u0002\u0002\u0002\u103b\u0003\u0002\u0002",
+ "\u0002\u0002\u103d\u0003\u0002\u0002\u0002\u0002\u103f\u0003\u0002\u0002",
+ "\u0002\u0002\u1041\u0003\u0002\u0002\u0002\u0002\u1043\u0003\u0002\u0002",
+ "\u0002\u0002\u1045\u0003\u0002\u0002\u0002\u0002\u1047\u0003\u0002\u0002",
+ "\u0002\u0002\u1049\u0003\u0002\u0002\u0002\u0002\u104b\u0003\u0002\u0002",
+ "\u0002\u0002\u104d\u0003\u0002\u0002\u0002\u0002\u104f\u0003\u0002\u0002",
+ "\u0002\u0002\u1051\u0003\u0002\u0002\u0002\u0002\u1053\u0003\u0002\u0002",
+ "\u0002\u0002\u1055\u0003\u0002\u0002\u0002\u0002\u1057\u0003\u0002\u0002",
+ "\u0002\u0002\u1059\u0003\u0002\u0002\u0002\u0002\u105b\u0003\u0002\u0002",
+ "\u0002\u0002\u105d\u0003\u0002\u0002\u0002\u0002\u105f\u0003\u0002\u0002",
+ "\u0002\u0002\u1061\u0003\u0002\u0002\u0002\u0002\u1063\u0003\u0002\u0002",
+ "\u0002\u0002\u1065\u0003\u0002\u0002\u0002\u0002\u1067\u0003\u0002\u0002",
+ "\u0002\u0002\u1069\u0003\u0002\u0002\u0002\u0002\u106b\u0003\u0002\u0002",
+ "\u0002\u0002\u106d\u0003\u0002\u0002\u0002\u0002\u106f\u0003\u0002\u0002",
+ "\u0002\u0002\u1071\u0003\u0002\u0002\u0002\u0002\u1073\u0003\u0002\u0002",
+ "\u0002\u0002\u1075\u0003\u0002\u0002\u0002\u0002\u1077\u0003\u0002\u0002",
+ "\u0002\u0002\u1079\u0003\u0002\u0002\u0002\u0002\u107b\u0003\u0002\u0002",
+ "\u0002\u0002\u107d\u0003\u0002\u0002\u0002\u0002\u107f\u0003\u0002\u0002",
+ "\u0002\u0002\u1081\u0003\u0002\u0002\u0002\u0002\u1083\u0003\u0002\u0002",
+ "\u0002\u0002\u1085\u0003\u0002\u0002\u0002\u0002\u1087\u0003\u0002\u0002",
+ "\u0002\u0002\u1089\u0003\u0002\u0002\u0002\u0002\u108b\u0003\u0002\u0002",
+ "\u0002\u0002\u108d\u0003\u0002\u0002\u0002\u0002\u108f\u0003\u0002\u0002",
+ "\u0002\u0002\u1091\u0003\u0002\u0002\u0002\u0002\u1093\u0003\u0002\u0002",
+ "\u0002\u0002\u1095\u0003\u0002\u0002\u0002\u0002\u1097\u0003\u0002\u0002",
+ "\u0002\u0002\u1099\u0003\u0002\u0002\u0002\u0002\u109b\u0003\u0002\u0002",
+ "\u0002\u0002\u109d\u0003\u0002\u0002\u0002\u0002\u109f\u0003\u0002\u0002",
+ "\u0002\u0002\u10a1\u0003\u0002\u0002\u0002\u0002\u10a3\u0003\u0002\u0002",
+ "\u0002\u0002\u10a5\u0003\u0002\u0002\u0002\u0002\u10a7\u0003\u0002\u0002",
+ "\u0002\u0002\u10a9\u0003\u0002\u0002\u0002\u0002\u10ab\u0003\u0002\u0002",
+ "\u0002\u0002\u10ad\u0003\u0002\u0002\u0002\u0002\u10af\u0003\u0002\u0002",
+ "\u0002\u0002\u10b1\u0003\u0002\u0002\u0002\u0002\u10b3\u0003\u0002\u0002",
+ "\u0002\u0002\u10b5\u0003\u0002\u0002\u0002\u0002\u10b7\u0003\u0002\u0002",
+ "\u0002\u0002\u10b9\u0003\u0002\u0002\u0002\u0002\u10bb\u0003\u0002\u0002",
+ "\u0002\u0002\u10bd\u0003\u0002\u0002\u0002\u0002\u10bf\u0003\u0002\u0002",
+ "\u0002\u0002\u10c1\u0003\u0002\u0002\u0002\u0002\u10c3\u0003\u0002\u0002",
+ "\u0002\u0002\u10c5\u0003\u0002\u0002\u0002\u0002\u10c7\u0003\u0002\u0002",
+ "\u0002\u0002\u10c9\u0003\u0002\u0002\u0002\u0002\u10cb\u0003\u0002\u0002",
+ "\u0002\u0002\u10cd\u0003\u0002\u0002\u0002\u0002\u10cf\u0003\u0002\u0002",
+ "\u0002\u0002\u10d1\u0003\u0002\u0002\u0002\u0002\u10d3\u0003\u0002\u0002",
+ "\u0002\u0002\u10d5\u0003\u0002\u0002\u0002\u0002\u10d7\u0003\u0002\u0002",
+ "\u0002\u0002\u10d9\u0003\u0002\u0002\u0002\u0002\u10db\u0003\u0002\u0002",
+ "\u0002\u0002\u10dd\u0003\u0002\u0002\u0002\u0002\u10df\u0003\u0002\u0002",
+ "\u0002\u0002\u10e1\u0003\u0002\u0002\u0002\u0002\u10e3\u0003\u0002\u0002",
+ "\u0002\u0002\u10e5\u0003\u0002\u0002\u0002\u0002\u10e7\u0003\u0002\u0002",
+ "\u0002\u0002\u10e9\u0003\u0002\u0002\u0002\u0002\u10eb\u0003\u0002\u0002",
+ "\u0002\u0002\u10ed\u0003\u0002\u0002\u0002\u0002\u10ef\u0003\u0002\u0002",
+ "\u0002\u0002\u10f1\u0003\u0002\u0002\u0002\u0002\u10f3\u0003\u0002\u0002",
+ "\u0002\u0002\u10f5\u0003\u0002\u0002\u0002\u0002\u10f7\u0003\u0002\u0002",
+ "\u0002\u0002\u10f9\u0003\u0002\u0002\u0002\u0002\u10fb\u0003\u0002\u0002",
+ "\u0002\u0002\u10fd\u0003\u0002\u0002\u0002\u0002\u10ff\u0003\u0002\u0002",
+ "\u0002\u0002\u1101\u0003\u0002\u0002\u0002\u0002\u1103\u0003\u0002\u0002",
+ "\u0002\u0002\u1105\u0003\u0002\u0002\u0002\u0002\u1107\u0003\u0002\u0002",
+ "\u0002\u0002\u1109\u0003\u0002\u0002\u0002\u0002\u110b\u0003\u0002\u0002",
+ "\u0002\u0002\u110d\u0003\u0002\u0002\u0002\u0002\u110f\u0003\u0002\u0002",
+ "\u0002\u0002\u1111\u0003\u0002\u0002\u0002\u0002\u1113\u0003\u0002\u0002",
+ "\u0002\u0002\u1115\u0003\u0002\u0002\u0002\u0002\u1117\u0003\u0002\u0002",
+ "\u0002\u0002\u1119\u0003\u0002\u0002\u0002\u0002\u111b\u0003\u0002\u0002",
+ "\u0002\u0002\u111d\u0003\u0002\u0002\u0002\u0002\u111f\u0003\u0002\u0002",
+ "\u0002\u0002\u1121\u0003\u0002\u0002\u0002\u0002\u1123\u0003\u0002\u0002",
+ "\u0002\u0002\u1125\u0003\u0002\u0002\u0002\u0002\u1127\u0003\u0002\u0002",
+ "\u0002\u0002\u1129\u0003\u0002\u0002\u0002\u0002\u112b\u0003\u0002\u0002",
+ "\u0002\u0002\u112d\u0003\u0002\u0002\u0002\u0002\u112f\u0003\u0002\u0002",
+ "\u0002\u0002\u1131\u0003\u0002\u0002\u0002\u0002\u1133\u0003\u0002\u0002",
+ "\u0002\u0002\u1135\u0003\u0002\u0002\u0002\u0002\u1137\u0003\u0002\u0002",
+ "\u0002\u0002\u1139\u0003\u0002\u0002\u0002\u0002\u113b\u0003\u0002\u0002",
+ "\u0002\u0002\u113d\u0003\u0002\u0002\u0002\u0002\u113f\u0003\u0002\u0002",
+ "\u0002\u0002\u1141\u0003\u0002\u0002\u0002\u0002\u1143\u0003\u0002\u0002",
+ "\u0002\u0002\u1145\u0003\u0002\u0002\u0002\u0002\u1147\u0003\u0002\u0002",
+ "\u0002\u0002\u1149\u0003\u0002\u0002\u0002\u0002\u114b\u0003\u0002\u0002",
+ "\u0002\u0002\u114d\u0003\u0002\u0002\u0002\u0002\u114f\u0003\u0002\u0002",
+ "\u0002\u0002\u1151\u0003\u0002\u0002\u0002\u0002\u1153\u0003\u0002\u0002",
+ "\u0002\u0002\u1155\u0003\u0002\u0002\u0002\u0002\u1157\u0003\u0002\u0002",
+ "\u0002\u0002\u1159\u0003\u0002\u0002\u0002\u0002\u116b\u0003\u0002\u0002",
+ "\u0002\u0002\u116d\u0003\u0002\u0002\u0002\u0002\u116f\u0003\u0002\u0002",
+ "\u0002\u0002\u1171\u0003\u0002\u0002\u0002\u0002\u1173\u0003\u0002\u0002",
+ "\u0002\u0002\u1175\u0003\u0002\u0002\u0002\u0002\u1177\u0003\u0002\u0002",
+ "\u0002\u0002\u1179\u0003\u0002\u0002\u0002\u0002\u117b\u0003\u0002\u0002",
+ "\u0002\u0002\u117d\u0003\u0002\u0002\u0002\u0002\u117f\u0003\u0002\u0002",
+ "\u0002\u0002\u1181\u0003\u0002\u0002\u0002\u0002\u1183\u0003\u0002\u0002",
+ "\u0002\u0002\u1185\u0003\u0002\u0002\u0002\u0002\u1187\u0003\u0002\u0002",
+ "\u0002\u0002\u1189\u0003\u0002\u0002\u0002\u0002\u118b\u0003\u0002\u0002",
+ "\u0002\u0002\u118d\u0003\u0002\u0002\u0002\u0002\u118f\u0003\u0002\u0002",
+ "\u0002\u0002\u1191\u0003\u0002\u0002\u0002\u0002\u1193\u0003\u0002\u0002",
+ "\u0002\u0002\u1195\u0003\u0002\u0002\u0002\u0002\u1197\u0003\u0002\u0002",
+ "\u0002\u0002\u1199\u0003\u0002\u0002\u0002\u0002\u119b\u0003\u0002\u0002",
+ "\u0002\u0002\u119d\u0003\u0002\u0002\u0002\u0002\u119f\u0003\u0002\u0002",
+ "\u0002\u0002\u11a1\u0003\u0002\u0002\u0002\u0002\u11a3\u0003\u0002\u0002",
+ "\u0002\u0002\u11a5\u0003\u0002\u0002\u0002\u0002\u11a7\u0003\u0002\u0002",
+ "\u0002\u0002\u11a9\u0003\u0002\u0002\u0002\u0002\u11ab\u0003\u0002\u0002",
+ "\u0002\u0002\u11ad\u0003\u0002\u0002\u0002\u0003\u11bb\u0003\u0002\u0002",
+ "\u0002\u0005\u11c1\u0003\u0002\u0002\u0002\u0007\u11c5\u0003\u0002\u0002",
+ "\u0002\t\u11cc\u0003\u0002\u0002\u0002\u000b\u11d5\u0003\u0002\u0002",
+ "\u0002\r\u11dd\u0003\u0002\u0002\u0002\u000f\u11e1\u0003\u0002\u0002",
+ "\u0002\u0011\u11e6\u0003\u0002\u0002\u0002\u0013\u11ed\u0003\u0002\u0002",
+ "\u0002\u0015\u11f5\u0003\u0002\u0002\u0002\u0017\u11fe\u0003\u0002\u0002",
+ "\u0002\u0019\u1205\u0003\u0002\u0002\u0002\u001b\u1216\u0003\u0002\u0002",
+ "\u0002\u001d\u1222\u0003\u0002\u0002\u0002\u001f\u1232\u0003\u0002\u0002",
+ "\u0002!\u123d\u0003\u0002\u0002\u0002#\u1246\u0003\u0002\u0002\u0002",
+ "%\u1254\u0003\u0002\u0002\u0002\'\u1258\u0003\u0002\u0002\u0002)\u1263",
+ "\u0003\u0002\u0002\u0002+\u126d\u0003\u0002\u0002\u0002-\u1278\u0003",
+ "\u0002\u0002\u0002/\u1281\u0003\u0002\u0002\u00021\u1287\u0003\u0002",
+ "\u0002\u00023\u1292\u0003\u0002\u0002\u00025\u12a0\u0003\u0002\u0002",
+ "\u00027\u12a9\u0003\u0002\u0002\u00029\u12b0\u0003\u0002\u0002\u0002",
+ ";\u12b8\u0003\u0002\u0002\u0002=\u12c7\u0003\u0002\u0002\u0002?\u12cd",
+ "\u0003\u0002\u0002\u0002A\u12d3\u0003\u0002\u0002\u0002C\u12dd\u0003",
+ "\u0002\u0002\u0002E\u12df\u0003\u0002\u0002\u0002G\u12e5\u0003\u0002",
+ "\u0002\u0002I\u12e9\u0003\u0002\u0002\u0002K\u12f2\u0003\u0002\u0002",
+ "\u0002M\u12f8\u0003\u0002\u0002\u0002O\u1301\u0003\u0002\u0002\u0002",
+ "Q\u1307\u0003\u0002\u0002\u0002S\u130e\u0003\u0002\u0002\u0002U\u1316",
+ "\u0003\u0002\u0002\u0002W\u1320\u0003\u0002\u0002\u0002Y\u1324\u0003",
+ "\u0002\u0002\u0002[\u132e\u0003\u0002\u0002\u0002]\u1336\u0003\u0002",
+ "\u0002\u0002_\u1342\u0003\u0002\u0002\u0002a\u134b\u0003\u0002\u0002",
+ "\u0002c\u134f\u0003\u0002\u0002\u0002e\u1359\u0003\u0002\u0002\u0002",
+ "g\u1360\u0003\u0002\u0002\u0002i\u136f\u0003\u0002\u0002\u0002k\u137d",
+ "\u0003\u0002\u0002\u0002m\u1389\u0003\u0002\u0002\u0002o\u138f\u0003",
+ "\u0002\u0002\u0002q\u13a5\u0003\u0002\u0002\u0002s\u13ae\u0003\u0002",
+ "\u0002\u0002u\u13b6\u0003\u0002\u0002\u0002w\u13bf\u0003\u0002\u0002",
+ "\u0002y\u13ca\u0003\u0002\u0002\u0002{\u13d0\u0003\u0002\u0002\u0002",
+ "}\u13d3\u0003\u0002\u0002\u0002\u007f\u13d7\u0003\u0002\u0002\u0002",
+ "\u0081\u13dd\u0003\u0002\u0002\u0002\u0083\u13e6\u0003\u0002\u0002\u0002",
+ "\u0085\u13eb\u0003\u0002\u0002\u0002\u0087\u13f0\u0003\u0002\u0002\u0002",
+ "\u0089\u13f9\u0003\u0002\u0002\u0002\u008b\u1400\u0003\u0002\u0002\u0002",
+ "\u008d\u140a\u0003\u0002\u0002\u0002\u008f\u1410\u0003\u0002\u0002\u0002",
+ "\u0091\u141d\u0003\u0002\u0002\u0002\u0093\u1423\u0003\u0002\u0002\u0002",
+ "\u0095\u1428\u0003\u0002\u0002\u0002\u0097\u142b\u0003\u0002\u0002\u0002",
+ "\u0099\u1435\u0003\u0002\u0002\u0002\u009b\u1440\u0003\u0002\u0002\u0002",
+ "\u009d\u1446\u0003\u0002\u0002\u0002\u009f\u1454\u0003\u0002\u0002\u0002",
+ "\u00a1\u1463\u0003\u0002\u0002\u0002\u00a3\u146a\u0003\u0002\u0002\u0002",
+ "\u00a5\u1478\u0003\u0002\u0002\u0002\u00a7\u1485\u0003\u0002\u0002\u0002",
+ "\u00a9\u148a\u0003\u0002\u0002\u0002\u00ab\u1495\u0003\u0002\u0002\u0002",
+ "\u00ad\u14a0\u0003\u0002\u0002\u0002\u00af\u14ab\u0003\u0002\u0002\u0002",
+ "\u00b1\u14b5\u0003\u0002\u0002\u0002\u00b3\u14cc\u0003\u0002\u0002\u0002",
+ "\u00b5\u14dc\u0003\u0002\u0002\u0002\u00b7\u14e9\u0003\u0002\u0002\u0002",
+ "\u00b9\u14ee\u0003\u0002\u0002\u0002\u00bb\u14f9\u0003\u0002\u0002\u0002",
+ "\u00bd\u1500\u0003\u0002\u0002\u0002\u00bf\u150a\u0003\u0002\u0002\u0002",
+ "\u00c1\u1510\u0003\u0002\u0002\u0002\u00c3\u151a\u0003\u0002\u0002\u0002",
+ "\u00c5\u1520\u0003\u0002\u0002\u0002\u00c7\u152a\u0003\u0002\u0002\u0002",
+ "\u00c9\u1546\u0003\u0002\u0002\u0002\u00cb\u154d\u0003\u0002\u0002\u0002",
+ "\u00cd\u1554\u0003\u0002\u0002\u0002\u00cf\u155a\u0003\u0002\u0002\u0002",
+ "\u00d1\u1564\u0003\u0002\u0002\u0002\u00d3\u1577\u0003\u0002\u0002\u0002",
+ "\u00d5\u157e\u0003\u0002\u0002\u0002\u00d7\u1587\u0003\u0002\u0002\u0002",
+ "\u00d9\u158f\u0003\u0002\u0002\u0002\u00db\u1595\u0003\u0002\u0002\u0002",
+ "\u00dd\u159f\u0003\u0002\u0002\u0002\u00df\u15a7\u0003\u0002\u0002\u0002",
+ "\u00e1\u15ae\u0003\u0002\u0002\u0002\u00e3\u15bc\u0003\u0002\u0002\u0002",
+ "\u00e5\u15d3\u0003\u0002\u0002\u0002\u00e7\u15e5\u0003\u0002\u0002\u0002",
+ "\u00e9\u15f2\u0003\u0002\u0002\u0002\u00eb\u1608\u0003\u0002\u0002\u0002",
+ "\u00ed\u1619\u0003\u0002\u0002\u0002\u00ef\u1628\u0003\u0002\u0002\u0002",
+ "\u00f1\u1633\u0003\u0002\u0002\u0002\u00f3\u163b\u0003\u0002\u0002\u0002",
+ "\u00f5\u1646\u0003\u0002\u0002\u0002\u00f7\u164d\u0003\u0002\u0002\u0002",
+ "\u00f9\u1658\u0003\u0002\u0002\u0002\u00fb\u165f\u0003\u0002\u0002\u0002",
+ "\u00fd\u1667\u0003\u0002\u0002\u0002\u00ff\u1673\u0003\u0002\u0002\u0002",
+ "\u0101\u1678\u0003\u0002\u0002\u0002\u0103\u167d\u0003\u0002\u0002\u0002",
+ "\u0105\u1683\u0003\u0002\u0002\u0002\u0107\u168f\u0003\u0002\u0002\u0002",
+ "\u0109\u1696\u0003\u0002\u0002\u0002\u010b\u16a0\u0003\u0002\u0002\u0002",
+ "\u010d\u16a5\u0003\u0002\u0002\u0002\u010f\u16ad\u0003\u0002\u0002\u0002",
+ "\u0111\u16b2\u0003\u0002\u0002\u0002\u0113\u16b8\u0003\u0002\u0002\u0002",
+ "\u0115\u16bf\u0003\u0002\u0002\u0002\u0117\u16c7\u0003\u0002\u0002\u0002",
+ "\u0119\u16d1\u0003\u0002\u0002\u0002\u011b\u16d6\u0003\u0002\u0002\u0002",
+ "\u011d\u16dd\u0003\u0002\u0002\u0002\u011f\u16ea\u0003\u0002\u0002\u0002",
+ "\u0121\u16f6\u0003\u0002\u0002\u0002\u0123\u16fc\u0003\u0002\u0002\u0002",
+ "\u0125\u1701\u0003\u0002\u0002\u0002\u0127\u1704\u0003\u0002\u0002\u0002",
+ "\u0129\u171b\u0003\u0002\u0002\u0002\u012b\u1727\u0003\u0002\u0002\u0002",
+ "\u012d\u172c\u0003\u0002\u0002\u0002\u012f\u1732\u0003\u0002\u0002\u0002",
+ "\u0131\u173b\u0003\u0002\u0002\u0002\u0133\u174b\u0003\u0002\u0002\u0002",
+ "\u0135\u175c\u0003\u0002\u0002\u0002\u0137\u1764\u0003\u0002\u0002\u0002",
+ "\u0139\u176f\u0003\u0002\u0002\u0002\u013b\u1778\u0003\u0002\u0002\u0002",
+ "\u013d\u177d\u0003\u0002\u0002\u0002\u013f\u1784\u0003\u0002\u0002\u0002",
+ "\u0141\u178e\u0003\u0002\u0002\u0002\u0143\u1797\u0003\u0002\u0002\u0002",
+ "\u0145\u17a3\u0003\u0002\u0002\u0002\u0147\u17ab\u0003\u0002\u0002\u0002",
+ "\u0149\u17b0\u0003\u0002\u0002\u0002\u014b\u17b5\u0003\u0002\u0002\u0002",
+ "\u014d\u17be\u0003\u0002\u0002\u0002\u014f\u17ca\u0003\u0002\u0002\u0002",
+ "\u0151\u17cf\u0003\u0002\u0002\u0002\u0153\u17e0\u0003\u0002\u0002\u0002",
+ "\u0155\u17ec\u0003\u0002\u0002\u0002\u0157\u17f2\u0003\u0002\u0002\u0002",
+ "\u0159\u17fa\u0003\u0002\u0002\u0002\u015b\u1801\u0003\u0002\u0002\u0002",
+ "\u015d\u1810\u0003\u0002\u0002\u0002\u015f\u182a\u0003\u0002\u0002\u0002",
+ "\u0161\u1834\u0003\u0002\u0002\u0002\u0163\u1839\u0003\u0002\u0002\u0002",
+ "\u0165\u1841\u0003\u0002\u0002\u0002\u0167\u184d\u0003\u0002\u0002\u0002",
+ "\u0169\u185f\u0003\u0002\u0002\u0002\u016b\u1865\u0003\u0002\u0002\u0002",
+ "\u016d\u1870\u0003\u0002\u0002\u0002\u016f\u1876\u0003\u0002\u0002\u0002",
+ "\u0171\u187d\u0003\u0002\u0002\u0002\u0173\u1881\u0003\u0002\u0002\u0002",
+ "\u0175\u1887\u0003\u0002\u0002\u0002\u0177\u188d\u0003\u0002\u0002\u0002",
+ "\u0179\u1898\u0003\u0002\u0002\u0002\u017b\u18a0\u0003\u0002\u0002\u0002",
+ "\u017d\u18a6\u0003\u0002\u0002\u0002\u017f\u18a8\u0003\u0002\u0002\u0002",
+ "\u0181\u18af\u0003\u0002\u0002\u0002\u0183\u18b4\u0003\u0002\u0002\u0002",
+ "\u0185\u18ba\u0003\u0002\u0002\u0002\u0187\u18d4\u0003\u0002\u0002\u0002",
+ "\u0189\u18da\u0003\u0002\u0002\u0002\u018b\u18eb\u0003\u0002\u0002\u0002",
+ "\u018d\u18f3\u0003\u0002\u0002\u0002\u018f\u1903\u0003\u0002\u0002\u0002",
+ "\u0191\u1914\u0003\u0002\u0002\u0002\u0193\u191f\u0003\u0002\u0002\u0002",
+ "\u0195\u192a\u0003\u0002\u0002\u0002\u0197\u193c\u0003\u0002\u0002\u0002",
+ "\u0199\u1950\u0003\u0002\u0002\u0002\u019b\u195c\u0003\u0002\u0002\u0002",
+ "\u019d\u1965\u0003\u0002\u0002\u0002\u019f\u1971\u0003\u0002\u0002\u0002",
+ "\u01a1\u1978\u0003\u0002\u0002\u0002\u01a3\u1984\u0003\u0002\u0002\u0002",
+ "\u01a5\u1989\u0003\u0002\u0002\u0002\u01a7\u1991\u0003\u0002\u0002\u0002",
+ "\u01a9\u199a\u0003\u0002\u0002\u0002\u01ab\u19b0\u0003\u0002\u0002\u0002",
+ "\u01ad\u19b7\u0003\u0002\u0002\u0002\u01af\u19bf\u0003\u0002\u0002\u0002",
+ "\u01b1\u19cc\u0003\u0002\u0002\u0002\u01b3\u19d9\u0003\u0002\u0002\u0002",
+ "\u01b5\u19e1\u0003\u0002\u0002\u0002\u01b7\u19e8\u0003\u0002\u0002\u0002",
+ "\u01b9\u19f2\u0003\u0002\u0002\u0002\u01bb\u19fe\u0003\u0002\u0002\u0002",
+ "\u01bd\u1a06\u0003\u0002\u0002\u0002\u01bf\u1a14\u0003\u0002\u0002\u0002",
+ "\u01c1\u1a1c\u0003\u0002\u0002\u0002\u01c3\u1a25\u0003\u0002\u0002\u0002",
+ "\u01c5\u1a30\u0003\u0002\u0002\u0002\u01c7\u1a3a\u0003\u0002\u0002\u0002",
+ "\u01c9\u1a45\u0003\u0002\u0002\u0002\u01cb\u1a4d\u0003\u0002\u0002\u0002",
+ "\u01cd\u1a57\u0003\u0002\u0002\u0002\u01cf\u1a67\u0003\u0002\u0002\u0002",
+ "\u01d1\u1a70\u0003\u0002\u0002\u0002\u01d3\u1a79\u0003\u0002\u0002\u0002",
+ "\u01d5\u1a81\u0003\u0002\u0002\u0002\u01d7\u1a88\u0003\u0002\u0002\u0002",
+ "\u01d9\u1a97\u0003\u0002\u0002\u0002\u01db\u1aa3\u0003\u0002\u0002\u0002",
+ "\u01dd\u1aad\u0003\u0002\u0002\u0002\u01df\u1ab5\u0003\u0002\u0002\u0002",
+ "\u01e1\u1ac0\u0003\u0002\u0002\u0002\u01e3\u1acf\u0003\u0002\u0002\u0002",
+ "\u01e5\u1ad6\u0003\u0002\u0002\u0002\u01e7\u1ae5\u0003\u0002\u0002\u0002",
+ "\u01e9\u1afc\u0003\u0002\u0002\u0002\u01eb\u1b12\u0003\u0002\u0002\u0002",
+ "\u01ed\u1b28\u0003\u0002\u0002\u0002\u01ef\u1b3d\u0003\u0002\u0002\u0002",
+ "\u01f1\u1b52\u0003\u0002\u0002\u0002\u01f3\u1b65\u0003\u0002\u0002\u0002",
+ "\u01f5\u1b77\u0003\u0002\u0002\u0002\u01f7\u1b87\u0003\u0002\u0002\u0002",
+ "\u01f9\u1b8f\u0003\u0002\u0002\u0002\u01fb\u1b9c\u0003\u0002\u0002\u0002",
+ "\u01fd\u1ba5\u0003\u0002\u0002\u0002\u01ff\u1bb0\u0003\u0002\u0002\u0002",
+ "\u0201\u1bb9\u0003\u0002\u0002\u0002\u0203\u1bbf\u0003\u0002\u0002\u0002",
+ "\u0205\u1bca\u0003\u0002\u0002\u0002\u0207\u1bd6\u0003\u0002\u0002\u0002",
+ "\u0209\u1be2\u0003\u0002\u0002\u0002\u020b\u1bec\u0003\u0002\u0002\u0002",
+ "\u020d\u1bfb\u0003\u0002\u0002\u0002\u020f\u1c06\u0003\u0002\u0002\u0002",
+ "\u0211\u1c0e\u0003\u0002\u0002\u0002\u0213\u1c17\u0003\u0002\u0002\u0002",
+ "\u0215\u1c1f\u0003\u0002\u0002\u0002\u0217\u1c28\u0003\u0002\u0002\u0002",
+ "\u0219\u1c34\u0003\u0002\u0002\u0002\u021b\u1c42\u0003\u0002\u0002\u0002",
+ "\u021d\u1c4a\u0003\u0002\u0002\u0002\u021f\u1c51\u0003\u0002\u0002\u0002",
+ "\u0221\u1c56\u0003\u0002\u0002\u0002\u0223\u1c5d\u0003\u0002\u0002\u0002",
+ "\u0225\u1c64\u0003\u0002\u0002\u0002\u0227\u1c6f\u0003\u0002\u0002\u0002",
+ "\u0229\u1c7f\u0003\u0002\u0002\u0002\u022b\u1c8b\u0003\u0002\u0002\u0002",
+ "\u022d\u1c8f\u0003\u0002\u0002\u0002\u022f\u1c94\u0003\u0002\u0002\u0002",
+ "\u0231\u1c99\u0003\u0002\u0002\u0002\u0233\u1cb0\u0003\u0002\u0002\u0002",
+ "\u0235\u1cb6\u0003\u0002\u0002\u0002\u0237\u1cc0\u0003\u0002\u0002\u0002",
+ "\u0239\u1ccb\u0003\u0002\u0002\u0002\u023b\u1cd7\u0003\u0002\u0002\u0002",
+ "\u023d\u1ce4\u0003\u0002\u0002\u0002\u023f\u1cf4\u0003\u0002\u0002\u0002",
+ "\u0241\u1cfa\u0003\u0002\u0002\u0002\u0243\u1d01\u0003\u0002\u0002\u0002",
+ "\u0245\u1d12\u0003\u0002\u0002\u0002\u0247\u1d29\u0003\u0002\u0002\u0002",
+ "\u0249\u1d32\u0003\u0002\u0002\u0002\u024b\u1d3d\u0003\u0002\u0002\u0002",
+ "\u024d\u1d46\u0003\u0002\u0002\u0002\u024f\u1d4c\u0003\u0002\u0002\u0002",
+ "\u0251\u1d59\u0003\u0002\u0002\u0002\u0253\u1d63\u0003\u0002\u0002\u0002",
+ "\u0255\u1d6b\u0003\u0002\u0002\u0002\u0257\u1d70\u0003\u0002\u0002\u0002",
+ "\u0259\u1d78\u0003\u0002\u0002\u0002\u025b\u1d80\u0003\u0002\u0002\u0002",
+ "\u025d\u1d8b\u0003\u0002\u0002\u0002\u025f\u1d93\u0003\u0002\u0002\u0002",
+ "\u0261\u1da0\u0003\u0002\u0002\u0002\u0263\u1daf\u0003\u0002\u0002\u0002",
+ "\u0265\u1dbc\u0003\u0002\u0002\u0002\u0267\u1dce\u0003\u0002\u0002\u0002",
+ "\u0269\u1ddb\u0003\u0002\u0002\u0002\u026b\u1de4\u0003\u0002\u0002\u0002",
+ "\u026d\u1deb\u0003\u0002\u0002\u0002\u026f\u1e00\u0003\u0002\u0002\u0002",
+ "\u0271\u1e18\u0003\u0002\u0002\u0002\u0273\u1e24\u0003\u0002\u0002\u0002",
+ "\u0275\u1e27\u0003\u0002\u0002\u0002\u0277\u1e2d\u0003\u0002\u0002\u0002",
+ "\u0279\u1e36\u0003\u0002\u0002\u0002\u027b\u1e3f\u0003\u0002\u0002\u0002",
+ "\u027d\u1e44\u0003\u0002\u0002\u0002\u027f\u1e4d\u0003\u0002\u0002\u0002",
+ "\u0281\u1e57\u0003\u0002\u0002\u0002\u0283\u1e67\u0003\u0002\u0002\u0002",
+ "\u0285\u1e74\u0003\u0002\u0002\u0002\u0287\u1e7e\u0003\u0002\u0002\u0002",
+ "\u0289\u1e97\u0003\u0002\u0002\u0002\u028b\u1eac\u0003\u0002\u0002\u0002",
+ "\u028d\u1eb5\u0003\u0002\u0002\u0002\u028f\u1ed1\u0003\u0002\u0002\u0002",
+ "\u0291\u1ed6\u0003\u0002\u0002\u0002\u0293\u1ee0\u0003\u0002\u0002\u0002",
+ "\u0295\u1ee4\u0003\u0002\u0002\u0002\u0297\u1ee9\u0003\u0002\u0002\u0002",
+ "\u0299\u1eed\u0003\u0002\u0002\u0002\u029b\u1efc\u0003\u0002\u0002\u0002",
+ "\u029d\u1f07\u0003\u0002\u0002\u0002\u029f\u1f16\u0003\u0002\u0002\u0002",
+ "\u02a1\u1f21\u0003\u0002\u0002\u0002\u02a3\u1f30\u0003\u0002\u0002\u0002",
+ "\u02a5\u1f3b\u0003\u0002\u0002\u0002\u02a7\u1f3f\u0003\u0002\u0002\u0002",
+ "\u02a9\u1f4a\u0003\u0002\u0002\u0002\u02ab\u1f50\u0003\u0002\u0002\u0002",
+ "\u02ad\u1f59\u0003\u0002\u0002\u0002\u02af\u1f5d\u0003\u0002\u0002\u0002",
+ "\u02b1\u1f65\u0003\u0002\u0002\u0002\u02b3\u1f6d\u0003\u0002\u0002\u0002",
+ "\u02b5\u1f77\u0003\u0002\u0002\u0002\u02b7\u1f83\u0003\u0002\u0002\u0002",
+ "\u02b9\u1f88\u0003\u0002\u0002\u0002\u02bb\u1f92\u0003\u0002\u0002\u0002",
+ "\u02bd\u1f9a\u0003\u0002\u0002\u0002\u02bf\u1fa6\u0003\u0002\u0002\u0002",
+ "\u02c1\u1fae\u0003\u0002\u0002\u0002\u02c3\u1fb7\u0003\u0002\u0002\u0002",
+ "\u02c5\u1fc2\u0003\u0002\u0002\u0002\u02c7\u1fcb\u0003\u0002\u0002\u0002",
+ "\u02c9\u1fd3\u0003\u0002\u0002\u0002\u02cb\u1fda\u0003\u0002\u0002\u0002",
+ "\u02cd\u1fe2\u0003\u0002\u0002\u0002\u02cf\u1fe9\u0003\u0002\u0002\u0002",
+ "\u02d1\u1fef\u0003\u0002\u0002\u0002\u02d3\u1ff8\u0003\u0002\u0002\u0002",
+ "\u02d5\u2003\u0003\u0002\u0002\u0002\u02d7\u200a\u0003\u0002\u0002\u0002",
+ "\u02d9\u2014\u0003\u0002\u0002\u0002\u02db\u201b\u0003\u0002\u0002\u0002",
+ "\u02dd\u2027\u0003\u0002\u0002\u0002\u02df\u2031\u0003\u0002\u0002\u0002",
+ "\u02e1\u2037\u0003\u0002\u0002\u0002\u02e3\u203f\u0003\u0002\u0002\u0002",
+ "\u02e5\u2045\u0003\u0002\u0002\u0002\u02e7\u2056\u0003\u0002\u0002\u0002",
+ "\u02e9\u205b\u0003\u0002\u0002\u0002\u02eb\u2063\u0003\u0002\u0002\u0002",
+ "\u02ed\u206c\u0003\u0002\u0002\u0002\u02ef\u2077\u0003\u0002\u0002\u0002",
+ "\u02f1\u2085\u0003\u0002\u0002\u0002\u02f3\u2090\u0003\u0002\u0002\u0002",
+ "\u02f5\u209a\u0003\u0002\u0002\u0002\u02f7\u20a5\u0003\u0002\u0002\u0002",
+ "\u02f9\u20b1\u0003\u0002\u0002\u0002\u02fb\u20bb\u0003\u0002\u0002\u0002",
+ "\u02fd\u20c7\u0003\u0002\u0002\u0002\u02ff\u20d3\u0003\u0002\u0002\u0002",
+ "\u0301\u20db\u0003\u0002\u0002\u0002\u0303\u20f0\u0003\u0002\u0002\u0002",
+ "\u0305\u20ff\u0003\u0002\u0002\u0002\u0307\u210c\u0003\u0002\u0002\u0002",
+ "\u0309\u2115\u0003\u0002\u0002\u0002\u030b\u2122\u0003\u0002\u0002\u0002",
+ "\u030d\u212a\u0003\u0002\u0002\u0002\u030f\u2135\u0003\u0002\u0002\u0002",
+ "\u0311\u213a\u0003\u0002\u0002\u0002\u0313\u2144\u0003\u0002\u0002\u0002",
+ "\u0315\u2151\u0003\u0002\u0002\u0002\u0317\u2157\u0003\u0002\u0002\u0002",
+ "\u0319\u2160\u0003\u0002\u0002\u0002\u031b\u2169\u0003\u0002\u0002\u0002",
+ "\u031d\u2177\u0003\u0002\u0002\u0002\u031f\u2183\u0003\u0002\u0002\u0002",
+ "\u0321\u218e\u0003\u0002\u0002\u0002\u0323\u2192\u0003\u0002\u0002\u0002",
+ "\u0325\u219d\u0003\u0002\u0002\u0002\u0327\u21a9\u0003\u0002\u0002\u0002",
+ "\u0329\u21b2\u0003\u0002\u0002\u0002\u032b\u21c6\u0003\u0002\u0002\u0002",
+ "\u032d\u21db\u0003\u0002\u0002\u0002\u032f\u21ed\u0003\u0002\u0002\u0002",
+ "\u0331\u21f4\u0003\u0002\u0002\u0002\u0333\u21fe\u0003\u0002\u0002\u0002",
+ "\u0335\u220b\u0003\u0002\u0002\u0002\u0337\u2217\u0003\u0002\u0002\u0002",
+ "\u0339\u221c\u0003\u0002\u0002\u0002\u033b\u2227\u0003\u0002\u0002\u0002",
+ "\u033d\u2240\u0003\u0002\u0002\u0002\u033f\u2258\u0003\u0002\u0002\u0002",
+ "\u0341\u225d\u0003\u0002\u0002\u0002\u0343\u2265\u0003\u0002\u0002\u0002",
+ "\u0345\u226f\u0003\u0002\u0002\u0002\u0347\u2272\u0003\u0002\u0002\u0002",
+ "\u0349\u227a\u0003\u0002\u0002\u0002\u034b\u228b\u0003\u0002\u0002\u0002",
+ "\u034d\u22a4\u0003\u0002\u0002\u0002\u034f\u22a9\u0003\u0002\u0002\u0002",
+ "\u0351\u22b5\u0003\u0002\u0002\u0002\u0353\u22bd\u0003\u0002\u0002\u0002",
+ "\u0355\u22c8\u0003\u0002\u0002\u0002\u0357\u22d1\u0003\u0002\u0002\u0002",
+ "\u0359\u22d9\u0003\u0002\u0002\u0002\u035b\u22e6\u0003\u0002\u0002\u0002",
+ "\u035d\u22f5\u0003\u0002\u0002\u0002\u035f\u2303\u0003\u0002\u0002\u0002",
+ "\u0361\u2318\u0003\u0002\u0002\u0002\u0363\u231d\u0003\u0002\u0002\u0002",
+ "\u0365\u2323\u0003\u0002\u0002\u0002\u0367\u2326\u0003\u0002\u0002\u0002",
+ "\u0369\u2331\u0003\u0002\u0002\u0002\u036b\u233c\u0003\u0002\u0002\u0002",
+ "\u036d\u2342\u0003\u0002\u0002\u0002\u036f\u234d\u0003\u0002\u0002\u0002",
+ "\u0371\u2354\u0003\u0002\u0002\u0002\u0373\u2368\u0003\u0002\u0002\u0002",
+ "\u0375\u2376\u0003\u0002\u0002\u0002\u0377\u237f\u0003\u0002\u0002\u0002",
+ "\u0379\u2387\u0003\u0002\u0002\u0002\u037b\u2392\u0003\u0002\u0002\u0002",
+ "\u037d\u2396\u0003\u0002\u0002\u0002\u037f\u23a7\u0003\u0002\u0002\u0002",
+ "\u0381\u23b0\u0003\u0002\u0002\u0002\u0383\u23b8\u0003\u0002\u0002\u0002",
+ "\u0385\u23c0\u0003\u0002\u0002\u0002\u0387\u23cb\u0003\u0002\u0002\u0002",
+ "\u0389\u23da\u0003\u0002\u0002\u0002\u038b\u23e0\u0003\u0002\u0002\u0002",
+ "\u038d\u23e9\u0003\u0002\u0002\u0002\u038f\u23ed\u0003\u0002\u0002\u0002",
+ "\u0391\u23fc\u0003\u0002\u0002\u0002\u0393\u2402\u0003\u0002\u0002\u0002",
+ "\u0395\u2418\u0003\u0002\u0002\u0002\u0397\u241f\u0003\u0002\u0002\u0002",
+ "\u0399\u2426\u0003\u0002\u0002\u0002\u039b\u242f\u0003\u0002\u0002\u0002",
+ "\u039d\u2434\u0003\u0002\u0002\u0002\u039f\u243d\u0003\u0002\u0002\u0002",
+ "\u03a1\u2446\u0003\u0002\u0002\u0002\u03a3\u2451\u0003\u0002\u0002\u0002",
+ "\u03a5\u2458\u0003\u0002\u0002\u0002\u03a7\u245e\u0003\u0002\u0002\u0002",
+ "\u03a9\u2465\u0003\u0002\u0002\u0002\u03ab\u246f\u0003\u0002\u0002\u0002",
+ "\u03ad\u247e\u0003\u0002\u0002\u0002\u03af\u2489\u0003\u0002\u0002\u0002",
+ "\u03b1\u2492\u0003\u0002\u0002\u0002\u03b3\u249a\u0003\u0002\u0002\u0002",
+ "\u03b5\u24a4\u0003\u0002\u0002\u0002\u03b7\u24ae\u0003\u0002\u0002\u0002",
+ "\u03b9\u24b6\u0003\u0002\u0002\u0002\u03bb\u24bd\u0003\u0002\u0002\u0002",
+ "\u03bd\u24c6\u0003\u0002\u0002\u0002\u03bf\u24cd\u0003\u0002\u0002\u0002",
+ "\u03c1\u24d8\u0003\u0002\u0002\u0002\u03c3\u24dd\u0003\u0002\u0002\u0002",
+ "\u03c5\u24f2\u0003\u0002\u0002\u0002\u03c7\u24ff\u0003\u0002\u0002\u0002",
+ "\u03c9\u2503\u0003\u0002\u0002\u0002\u03cb\u250a\u0003\u0002\u0002\u0002",
+ "\u03cd\u2512\u0003\u0002\u0002\u0002\u03cf\u251c\u0003\u0002\u0002\u0002",
+ "\u03d1\u2523\u0003\u0002\u0002\u0002\u03d3\u2533\u0003\u0002\u0002\u0002",
+ "\u03d5\u253b\u0003\u0002\u0002\u0002\u03d7\u2543\u0003\u0002\u0002\u0002",
+ "\u03d9\u254a\u0003\u0002\u0002\u0002\u03db\u2552\u0003\u0002\u0002\u0002",
+ "\u03dd\u255b\u0003\u0002\u0002\u0002\u03df\u2566\u0003\u0002\u0002\u0002",
+ "\u03e1\u2575\u0003\u0002\u0002\u0002\u03e3\u257d\u0003\u0002\u0002\u0002",
+ "\u03e5\u258a\u0003\u0002\u0002\u0002\u03e7\u2590\u0003\u0002\u0002\u0002",
+ "\u03e9\u2599\u0003\u0002\u0002\u0002\u03eb\u259e\u0003\u0002\u0002\u0002",
+ "\u03ed\u25a5\u0003\u0002\u0002\u0002\u03ef\u25b4\u0003\u0002\u0002\u0002",
+ "\u03f1\u25bb\u0003\u0002\u0002\u0002\u03f3\u25d1\u0003\u0002\u0002\u0002",
+ "\u03f5\u25db\u0003\u0002\u0002\u0002\u03f7\u25e4\u0003\u0002\u0002\u0002",
+ "\u03f9\u25ec\u0003\u0002\u0002\u0002\u03fb\u25f2\u0003\u0002\u0002\u0002",
+ "\u03fd\u25f9\u0003\u0002\u0002\u0002\u03ff\u25fd\u0003\u0002\u0002\u0002",
+ "\u0401\u2602\u0003\u0002\u0002\u0002\u0403\u260c\u0003\u0002\u0002\u0002",
+ "\u0405\u2614\u0003\u0002\u0002\u0002\u0407\u2624\u0003\u0002\u0002\u0002",
+ "\u0409\u262f\u0003\u0002\u0002\u0002\u040b\u263b\u0003\u0002\u0002\u0002",
+ "\u040d\u2649\u0003\u0002\u0002\u0002\u040f\u264f\u0003\u0002\u0002\u0002",
+ "\u0411\u2654\u0003\u0002\u0002\u0002\u0413\u2666\u0003\u0002\u0002\u0002",
+ "\u0415\u267e\u0003\u0002\u0002\u0002\u0417\u2685\u0003\u0002\u0002\u0002",
+ "\u0419\u268b\u0003\u0002\u0002\u0002\u041b\u2690\u0003\u0002\u0002\u0002",
+ "\u041d\u2697\u0003\u0002\u0002\u0002\u041f\u269d\u0003\u0002\u0002\u0002",
+ "\u0421\u26a4\u0003\u0002\u0002\u0002\u0423\u26af\u0003\u0002\u0002\u0002",
+ "\u0425\u26bb\u0003\u0002\u0002\u0002\u0427\u26cb\u0003\u0002\u0002\u0002",
+ "\u0429\u26d3\u0003\u0002\u0002\u0002\u042b\u26dd\u0003\u0002\u0002\u0002",
+ "\u042d\u26e9\u0003\u0002\u0002\u0002\u042f\u26ef\u0003\u0002\u0002\u0002",
+ "\u0431\u26f4\u0003\u0002\u0002\u0002\u0433\u26fa\u0003\u0002\u0002\u0002",
+ "\u0435\u2700\u0003\u0002\u0002\u0002\u0437\u2707\u0003\u0002\u0002\u0002",
+ "\u0439\u2711\u0003\u0002\u0002\u0002\u043b\u2719\u0003\u0002\u0002\u0002",
+ "\u043d\u2720\u0003\u0002\u0002\u0002\u043f\u2726\u0003\u0002\u0002\u0002",
+ "\u0441\u273e\u0003\u0002\u0002\u0002\u0443\u2746\u0003\u0002\u0002\u0002",
+ "\u0445\u274e\u0003\u0002\u0002\u0002\u0447\u2752\u0003\u0002\u0002\u0002",
+ "\u0449\u2759\u0003\u0002\u0002\u0002\u044b\u2761\u0003\u0002\u0002\u0002",
+ "\u044d\u2771\u0003\u0002\u0002\u0002\u044f\u277a\u0003\u0002\u0002\u0002",
+ "\u0451\u2784\u0003\u0002\u0002\u0002\u0453\u278e\u0003\u0002\u0002\u0002",
+ "\u0455\u2794\u0003\u0002\u0002\u0002\u0457\u2799\u0003\u0002\u0002\u0002",
+ "\u0459\u27a1\u0003\u0002\u0002\u0002\u045b\u27a6\u0003\u0002\u0002\u0002",
+ "\u045d\u27bf\u0003\u0002\u0002\u0002\u045f\u27c8\u0003\u0002\u0002\u0002",
+ "\u0461\u27d2\u0003\u0002\u0002\u0002\u0463\u27ee\u0003\u0002\u0002\u0002",
+ "\u0465\u2805\u0003\u0002\u0002\u0002\u0467\u2815\u0003\u0002\u0002\u0002",
+ "\u0469\u2822\u0003\u0002\u0002\u0002\u046b\u282c\u0003\u0002\u0002\u0002",
+ "\u046d\u2830\u0003\u0002\u0002\u0002\u046f\u2837\u0003\u0002\u0002\u0002",
+ "\u0471\u2840\u0003\u0002\u0002\u0002\u0473\u284c\u0003\u0002\u0002\u0002",
+ "\u0475\u2861\u0003\u0002\u0002\u0002\u0477\u2866\u0003\u0002\u0002\u0002",
+ "\u0479\u286c\u0003\u0002\u0002\u0002\u047b\u2875\u0003\u0002\u0002\u0002",
+ "\u047d\u287b\u0003\u0002\u0002\u0002\u047f\u2884\u0003\u0002\u0002\u0002",
+ "\u0481\u288d\u0003\u0002\u0002\u0002\u0483\u2899\u0003\u0002\u0002\u0002",
+ "\u0485\u28a0\u0003\u0002\u0002\u0002\u0487\u28ab\u0003\u0002\u0002\u0002",
+ "\u0489\u28b5\u0003\u0002\u0002\u0002\u048b\u28bb\u0003\u0002\u0002\u0002",
+ "\u048d\u28c3\u0003\u0002\u0002\u0002\u048f\u28c8\u0003\u0002\u0002\u0002",
+ "\u0491\u28d1\u0003\u0002\u0002\u0002\u0493\u28d9\u0003\u0002\u0002\u0002",
+ "\u0495\u28e0\u0003\u0002\u0002\u0002\u0497\u28e7\u0003\u0002\u0002\u0002",
+ "\u0499\u28ec\u0003\u0002\u0002\u0002\u049b\u28f1\u0003\u0002\u0002\u0002",
+ "\u049d\u28fa\u0003\u0002\u0002\u0002\u049f\u2903\u0003\u0002\u0002\u0002",
+ "\u04a1\u290a\u0003\u0002\u0002\u0002\u04a3\u290f\u0003\u0002\u0002\u0002",
+ "\u04a5\u2919\u0003\u0002\u0002\u0002\u04a7\u291e\u0003\u0002\u0002\u0002",
+ "\u04a9\u292c\u0003\u0002\u0002\u0002\u04ab\u2938\u0003\u0002\u0002\u0002",
+ "\u04ad\u293c\u0003\u0002\u0002\u0002\u04af\u2941\u0003\u0002\u0002\u0002",
+ "\u04b1\u294e\u0003\u0002\u0002\u0002\u04b3\u2955\u0003\u0002\u0002\u0002",
+ "\u04b5\u2960\u0003\u0002\u0002\u0002\u04b7\u296b\u0003\u0002\u0002\u0002",
+ "\u04b9\u2974\u0003\u0002\u0002\u0002\u04bb\u2981\u0003\u0002\u0002\u0002",
+ "\u04bd\u2984\u0003\u0002\u0002\u0002\u04bf\u298e\u0003\u0002\u0002\u0002",
+ "\u04c1\u2991\u0003\u0002\u0002\u0002\u04c3\u2998\u0003\u0002\u0002\u0002",
+ "\u04c5\u29b4\u0003\u0002\u0002\u0002\u04c7\u29cf\u0003\u0002\u0002\u0002",
+ "\u04c9\u29e3\u0003\u0002\u0002\u0002\u04cb\u29e7\u0003\u0002\u0002\u0002",
+ "\u04cd\u29f1\u0003\u0002\u0002\u0002\u04cf\u29f8\u0003\u0002\u0002\u0002",
+ "\u04d1\u29ff\u0003\u0002\u0002\u0002\u04d3\u2a08\u0003\u0002\u0002\u0002",
+ "\u04d5\u2a10\u0003\u0002\u0002\u0002\u04d7\u2a20\u0003\u0002\u0002\u0002",
+ "\u04d9\u2a2a\u0003\u0002\u0002\u0002\u04db\u2a36\u0003\u0002\u0002\u0002",
+ "\u04dd\u2a40\u0003\u0002\u0002\u0002\u04df\u2a45\u0003\u0002\u0002\u0002",
+ "\u04e1\u2a4c\u0003\u0002\u0002\u0002\u04e3\u2a56\u0003\u0002\u0002\u0002",
+ "\u04e5\u2a64\u0003\u0002\u0002\u0002\u04e7\u2a6f\u0003\u0002\u0002\u0002",
+ "\u04e9\u2a77\u0003\u0002\u0002\u0002\u04eb\u2a7f\u0003\u0002\u0002\u0002",
+ "\u04ed\u2a89\u0003\u0002\u0002\u0002\u04ef\u2a96\u0003\u0002\u0002\u0002",
+ "\u04f1\u2a9c\u0003\u0002\u0002\u0002\u04f3\u2aa5\u0003\u0002\u0002\u0002",
+ "\u04f5\u2ab0\u0003\u0002\u0002\u0002\u04f7\u2abb\u0003\u0002\u0002\u0002",
+ "\u04f9\u2ac5\u0003\u0002\u0002\u0002\u04fb\u2ad2\u0003\u0002\u0002\u0002",
+ "\u04fd\u2ae0\u0003\u0002\u0002\u0002\u04ff\u2ae9\u0003\u0002\u0002\u0002",
+ "\u0501\u2af4\u0003\u0002\u0002\u0002\u0503\u2b04\u0003\u0002\u0002\u0002",
+ "\u0505\u2b11\u0003\u0002\u0002\u0002\u0507\u2b1f\u0003\u0002\u0002\u0002",
+ "\u0509\u2b28\u0003\u0002\u0002\u0002\u050b\u2b34\u0003\u0002\u0002\u0002",
+ "\u050d\u2b3e\u0003\u0002\u0002\u0002\u050f\u2b49\u0003\u0002\u0002\u0002",
+ "\u0511\u2b53\u0003\u0002\u0002\u0002\u0513\u2b5b\u0003\u0002\u0002\u0002",
+ "\u0515\u2b64\u0003\u0002\u0002\u0002\u0517\u2b72\u0003\u0002\u0002\u0002",
+ "\u0519\u2b7a\u0003\u0002\u0002\u0002\u051b\u2b7d\u0003\u0002\u0002\u0002",
+ "\u051d\u2b85\u0003\u0002\u0002\u0002\u051f\u2b8d\u0003\u0002\u0002\u0002",
+ "\u0521\u2b99\u0003\u0002\u0002\u0002\u0523\u2ba3\u0003\u0002\u0002\u0002",
+ "\u0525\u2bac\u0003\u0002\u0002\u0002\u0527\u2bb3\u0003\u0002\u0002\u0002",
+ "\u0529\u2bc5\u0003\u0002\u0002\u0002\u052b\u2bce\u0003\u0002\u0002\u0002",
+ "\u052d\u2be1\u0003\u0002\u0002\u0002\u052f\u2bf2\u0003\u0002\u0002\u0002",
+ "\u0531\u2bf8\u0003\u0002\u0002\u0002\u0533\u2bfe\u0003\u0002\u0002\u0002",
+ "\u0535\u2c06\u0003\u0002\u0002\u0002\u0537\u2c1a\u0003\u0002\u0002\u0002",
+ "\u0539\u2c2f\u0003\u0002\u0002\u0002\u053b\u2c3e\u0003\u0002\u0002\u0002",
+ "\u053d\u2c45\u0003\u0002\u0002\u0002\u053f\u2c54\u0003\u0002\u0002\u0002",
+ "\u0541\u2c64\u0003\u0002\u0002\u0002\u0543\u2c6d\u0003\u0002\u0002\u0002",
+ "\u0545\u2c77\u0003\u0002\u0002\u0002\u0547\u2c84\u0003\u0002\u0002\u0002",
+ "\u0549\u2c8e\u0003\u0002\u0002\u0002\u054b\u2c96\u0003\u0002\u0002\u0002",
+ "\u054d\u2c9d\u0003\u0002\u0002\u0002\u054f\u2ca4\u0003\u0002\u0002\u0002",
+ "\u0551\u2cab\u0003\u0002\u0002\u0002\u0553\u2cb2\u0003\u0002\u0002\u0002",
+ "\u0555\u2cb8\u0003\u0002\u0002\u0002\u0557\u2cc0\u0003\u0002\u0002\u0002",
+ "\u0559\u2ccc\u0003\u0002\u0002\u0002\u055b\u2cd9\u0003\u0002\u0002\u0002",
+ "\u055d\u2cea\u0003\u0002\u0002\u0002\u055f\u2cf7\u0003\u0002\u0002\u0002",
+ "\u0561\u2d03\u0003\u0002\u0002\u0002\u0563\u2d0d\u0003\u0002\u0002\u0002",
+ "\u0565\u2d16\u0003\u0002\u0002\u0002\u0567\u2d1a\u0003\u0002\u0002\u0002",
+ "\u0569\u2d1f\u0003\u0002\u0002\u0002\u056b\u2d2a\u0003\u0002\u0002\u0002",
+ "\u056d\u2d34\u0003\u0002\u0002\u0002\u056f\u2d3e\u0003\u0002\u0002\u0002",
+ "\u0571\u2d41\u0003\u0002\u0002\u0002\u0573\u2d4b\u0003\u0002\u0002\u0002",
+ "\u0575\u2d5b\u0003\u0002\u0002\u0002\u0577\u2d63\u0003\u0002\u0002\u0002",
+ "\u0579\u2d74\u0003\u0002\u0002\u0002\u057b\u2d79\u0003\u0002\u0002\u0002",
+ "\u057d\u2d7d\u0003\u0002\u0002\u0002\u057f\u2d82\u0003\u0002\u0002\u0002",
+ "\u0581\u2d90\u0003\u0002\u0002\u0002\u0583\u2d9b\u0003\u0002\u0002\u0002",
+ "\u0585\u2da6\u0003\u0002\u0002\u0002\u0587\u2db3\u0003\u0002\u0002\u0002",
+ "\u0589\u2dbf\u0003\u0002\u0002\u0002\u058b\u2dc7\u0003\u0002\u0002\u0002",
+ "\u058d\u2dcc\u0003\u0002\u0002\u0002\u058f\u2ddb\u0003\u0002\u0002\u0002",
+ "\u0591\u2de7\u0003\u0002\u0002\u0002\u0593\u2df1\u0003\u0002\u0002\u0002",
+ "\u0595\u2dfc\u0003\u0002\u0002\u0002\u0597\u2e0b\u0003\u0002\u0002\u0002",
+ "\u0599\u2e16\u0003\u0002\u0002\u0002\u059b\u2e29\u0003\u0002\u0002\u0002",
+ "\u059d\u2e3b\u0003\u0002\u0002\u0002\u059f\u2e46\u0003\u0002\u0002\u0002",
+ "\u05a1\u2e56\u0003\u0002\u0002\u0002\u05a3\u2e5b\u0003\u0002\u0002\u0002",
+ "\u05a5\u2e64\u0003\u0002\u0002\u0002\u05a7\u2e68\u0003\u0002\u0002\u0002",
+ "\u05a9\u2e73\u0003\u0002\u0002\u0002\u05ab\u2e7b\u0003\u0002\u0002\u0002",
+ "\u05ad\u2e80\u0003\u0002\u0002\u0002\u05af\u2e89\u0003\u0002\u0002\u0002",
+ "\u05b1\u2e8e\u0003\u0002\u0002\u0002\u05b3\u2e94\u0003\u0002\u0002\u0002",
+ "\u05b5\u2e9d\u0003\u0002\u0002\u0002\u05b7\u2ea6\u0003\u0002\u0002\u0002",
+ "\u05b9\u2eab\u0003\u0002\u0002\u0002\u05bb\u2eb6\u0003\u0002\u0002\u0002",
+ "\u05bd\u2ebe\u0003\u0002\u0002\u0002\u05bf\u2ec2\u0003\u0002\u0002\u0002",
+ "\u05c1\u2ec8\u0003\u0002\u0002\u0002\u05c3\u2ee2\u0003\u0002\u0002\u0002",
+ "\u05c5\u2ef4\u0003\u0002\u0002\u0002\u05c7\u2f0b\u0003\u0002\u0002\u0002",
+ "\u05c9\u2f13\u0003\u0002\u0002\u0002\u05cb\u2f18\u0003\u0002\u0002\u0002",
+ "\u05cd\u2f20\u0003\u0002\u0002\u0002\u05cf\u2f28\u0003\u0002\u0002\u0002",
+ "\u05d1\u2f30\u0003\u0002\u0002\u0002\u05d3\u2f38\u0003\u0002\u0002\u0002",
+ "\u05d5\u2f3f\u0003\u0002\u0002\u0002\u05d7\u2f44\u0003\u0002\u0002\u0002",
+ "\u05d9\u2f4a\u0003\u0002\u0002\u0002\u05db\u2f51\u0003\u0002\u0002\u0002",
+ "\u05dd\u2f59\u0003\u0002\u0002\u0002\u05df\u2f63\u0003\u0002\u0002\u0002",
+ "\u05e1\u2f68\u0003\u0002\u0002\u0002\u05e3\u2f71\u0003\u0002\u0002\u0002",
+ "\u05e5\u2f77\u0003\u0002\u0002\u0002\u05e7\u2f7d\u0003\u0002\u0002\u0002",
+ "\u05e9\u2f83\u0003\u0002\u0002\u0002\u05eb\u2f8f\u0003\u0002\u0002\u0002",
+ "\u05ed\u2f94\u0003\u0002\u0002\u0002\u05ef\u2f9a\u0003\u0002\u0002\u0002",
+ "\u05f1\u2fa1\u0003\u0002\u0002\u0002\u05f3\u2fa6\u0003\u0002\u0002\u0002",
+ "\u05f5\u2fab\u0003\u0002\u0002\u0002\u05f7\u2fae\u0003\u0002\u0002\u0002",
+ "\u05f9\u2fb4\u0003\u0002\u0002\u0002\u05fb\u2fb9\u0003\u0002\u0002\u0002",
+ "\u05fd\u2fbd\u0003\u0002\u0002\u0002\u05ff\u2fc4\u0003\u0002\u0002\u0002",
+ "\u0601\u2fc9\u0003\u0002\u0002\u0002\u0603\u2fd7\u0003\u0002\u0002\u0002",
+ "\u0605\u2fdd\u0003\u0002\u0002\u0002\u0607\u2fe7\u0003\u0002\u0002\u0002",
+ "\u0609\u2ff6\u0003\u0002\u0002\u0002\u060b\u2fff\u0003\u0002\u0002\u0002",
+ "\u060d\u3007\u0003\u0002\u0002\u0002\u060f\u300e\u0003\u0002\u0002\u0002",
+ "\u0611\u3016\u0003\u0002\u0002\u0002\u0613\u301b\u0003\u0002\u0002\u0002",
+ "\u0615\u3023\u0003\u0002\u0002\u0002\u0617\u302c\u0003\u0002\u0002\u0002",
+ "\u0619\u3034\u0003\u0002\u0002\u0002\u061b\u303c\u0003\u0002\u0002\u0002",
+ "\u061d\u3053\u0003\u0002\u0002\u0002\u061f\u306d\u0003\u0002\u0002\u0002",
+ "\u0621\u3071\u0003\u0002\u0002\u0002\u0623\u307b\u0003\u0002\u0002\u0002",
+ "\u0625\u3082\u0003\u0002\u0002\u0002\u0627\u3088\u0003\u0002\u0002\u0002",
+ "\u0629\u30a1\u0003\u0002\u0002\u0002\u062b\u30a6\u0003\u0002\u0002\u0002",
+ "\u062d\u30ab\u0003\u0002\u0002\u0002\u062f\u30b1\u0003\u0002\u0002\u0002",
+ "\u0631\u30b5\u0003\u0002\u0002\u0002\u0633\u30ba\u0003\u0002\u0002\u0002",
+ "\u0635\u30c0\u0003\u0002\u0002\u0002\u0637\u30c5\u0003\u0002\u0002\u0002",
+ "\u0639\u30ce\u0003\u0002\u0002\u0002\u063b\u30d6\u0003\u0002\u0002\u0002",
+ "\u063d\u30dd\u0003\u0002\u0002\u0002\u063f\u30e8\u0003\u0002\u0002\u0002",
+ "\u0641\u30f0\u0003\u0002\u0002\u0002\u0643\u30f7\u0003\u0002\u0002\u0002",
+ "\u0645\u30fb\u0003\u0002\u0002\u0002\u0647\u3103\u0003\u0002\u0002\u0002",
+ "\u0649\u310a\u0003\u0002\u0002\u0002\u064b\u3112\u0003\u0002\u0002\u0002",
+ "\u064d\u311a\u0003\u0002\u0002\u0002\u064f\u3120\u0003\u0002\u0002\u0002",
+ "\u0651\u312d\u0003\u0002\u0002\u0002\u0653\u313d\u0003\u0002\u0002\u0002",
+ "\u0655\u314a\u0003\u0002\u0002\u0002\u0657\u3156\u0003\u0002\u0002\u0002",
+ "\u0659\u3162\u0003\u0002\u0002\u0002\u065b\u316f\u0003\u0002\u0002\u0002",
+ "\u065d\u317a\u0003\u0002\u0002\u0002\u065f\u3183\u0003\u0002\u0002\u0002",
+ "\u0661\u3190\u0003\u0002\u0002\u0002\u0663\u319c\u0003\u0002\u0002\u0002",
+ "\u0665\u31aa\u0003\u0002\u0002\u0002\u0667\u31b8\u0003\u0002\u0002\u0002",
+ "\u0669\u31cd\u0003\u0002\u0002\u0002\u066b\u31d5\u0003\u0002\u0002\u0002",
+ "\u066d\u31de\u0003\u0002\u0002\u0002\u066f\u31e7\u0003\u0002\u0002\u0002",
+ "\u0671\u31ef\u0003\u0002\u0002\u0002\u0673\u31f8\u0003\u0002\u0002\u0002",
+ "\u0675\u31ff\u0003\u0002\u0002\u0002\u0677\u3206\u0003\u0002\u0002\u0002",
+ "\u0679\u3212\u0003\u0002\u0002\u0002\u067b\u3219\u0003\u0002\u0002\u0002",
+ "\u067d\u3227\u0003\u0002\u0002\u0002\u067f\u3230\u0003\u0002\u0002\u0002",
+ "\u0681\u323f\u0003\u0002\u0002\u0002\u0683\u3245\u0003\u0002\u0002\u0002",
+ "\u0685\u324e\u0003\u0002\u0002\u0002\u0687\u3257\u0003\u0002\u0002\u0002",
+ "\u0689\u325e\u0003\u0002\u0002\u0002\u068b\u3266\u0003\u0002\u0002\u0002",
+ "\u068d\u3270\u0003\u0002\u0002\u0002\u068f\u327b\u0003\u0002\u0002\u0002",
+ "\u0691\u3284\u0003\u0002\u0002\u0002\u0693\u328c\u0003\u0002\u0002\u0002",
+ "\u0695\u3293\u0003\u0002\u0002\u0002\u0697\u3299\u0003\u0002\u0002\u0002",
+ "\u0699\u32a4\u0003\u0002\u0002\u0002\u069b\u32ab\u0003\u0002\u0002\u0002",
+ "\u069d\u32b4\u0003\u0002\u0002\u0002\u069f\u32bf\u0003\u0002\u0002\u0002",
+ "\u06a1\u32c9\u0003\u0002\u0002\u0002\u06a3\u32d0\u0003\u0002\u0002\u0002",
+ "\u06a5\u32d9\u0003\u0002\u0002\u0002\u06a7\u32f0\u0003\u0002\u0002\u0002",
+ "\u06a9\u330c\u0003\u0002\u0002\u0002\u06ab\u3323\u0003\u0002\u0002\u0002",
+ "\u06ad\u3336\u0003\u0002\u0002\u0002\u06af\u333c\u0003\u0002\u0002\u0002",
+ "\u06b1\u3345\u0003\u0002\u0002\u0002\u06b3\u3357\u0003\u0002\u0002\u0002",
+ "\u06b5\u3361\u0003\u0002\u0002\u0002\u06b7\u3370\u0003\u0002\u0002\u0002",
+ "\u06b9\u3379\u0003\u0002\u0002\u0002\u06bb\u337e\u0003\u0002\u0002\u0002",
+ "\u06bd\u338b\u0003\u0002\u0002\u0002\u06bf\u339e\u0003\u0002\u0002\u0002",
+ "\u06c1\u33a5\u0003\u0002\u0002\u0002\u06c3\u33a9\u0003\u0002\u0002\u0002",
+ "\u06c5\u33b0\u0003\u0002\u0002\u0002\u06c7\u33bb\u0003\u0002\u0002\u0002",
+ "\u06c9\u33c3\u0003\u0002\u0002\u0002\u06cb\u33c9\u0003\u0002\u0002\u0002",
+ "\u06cd\u33d8\u0003\u0002\u0002\u0002\u06cf\u33df\u0003\u0002\u0002\u0002",
+ "\u06d1\u33e5\u0003\u0002\u0002\u0002\u06d3\u33ef\u0003\u0002\u0002\u0002",
+ "\u06d5\u33f8\u0003\u0002\u0002\u0002\u06d7\u33fd\u0003\u0002\u0002\u0002",
+ "\u06d9\u340e\u0003\u0002\u0002\u0002\u06db\u3417\u0003\u0002\u0002\u0002",
+ "\u06dd\u3420\u0003\u0002\u0002\u0002\u06df\u3426\u0003\u0002\u0002\u0002",
+ "\u06e1\u342b\u0003\u0002\u0002\u0002\u06e3\u3435\u0003\u0002\u0002\u0002",
+ "\u06e5\u3439\u0003\u0002\u0002\u0002\u06e7\u343f\u0003\u0002\u0002\u0002",
+ "\u06e9\u3448\u0003\u0002\u0002\u0002\u06eb\u345f\u0003\u0002\u0002\u0002",
+ "\u06ed\u3466\u0003\u0002\u0002\u0002\u06ef\u346e\u0003\u0002\u0002\u0002",
+ "\u06f1\u3477\u0003\u0002\u0002\u0002\u06f3\u347b\u0003\u0002\u0002\u0002",
+ "\u06f5\u3484\u0003\u0002\u0002\u0002\u06f7\u348a\u0003\u0002\u0002\u0002",
+ "\u06f9\u348f\u0003\u0002\u0002\u0002\u06fb\u3495\u0003\u0002\u0002\u0002",
+ "\u06fd\u349c\u0003\u0002\u0002\u0002\u06ff\u34a0\u0003\u0002\u0002\u0002",
+ "\u0701\u34a7\u0003\u0002\u0002\u0002\u0703\u34c0\u0003\u0002\u0002\u0002",
+ "\u0705\u34d6\u0003\u0002\u0002\u0002\u0707\u34e6\u0003\u0002\u0002\u0002",
+ "\u0709\u34fc\u0003\u0002\u0002\u0002\u070b\u3513\u0003\u0002\u0002\u0002",
+ "\u070d\u351b\u0003\u0002\u0002\u0002\u070f\u3521\u0003\u0002\u0002\u0002",
+ "\u0711\u3525\u0003\u0002\u0002\u0002\u0713\u352e\u0003\u0002\u0002\u0002",
+ "\u0715\u3537\u0003\u0002\u0002\u0002\u0717\u353c\u0003\u0002\u0002\u0002",
+ "\u0719\u3542\u0003\u0002\u0002\u0002\u071b\u354f\u0003\u0002\u0002\u0002",
+ "\u071d\u3560\u0003\u0002\u0002\u0002\u071f\u356f\u0003\u0002\u0002\u0002",
+ "\u0721\u357c\u0003\u0002\u0002\u0002\u0723\u3589\u0003\u0002\u0002\u0002",
+ "\u0725\u359a\u0003\u0002\u0002\u0002\u0727\u35af\u0003\u0002\u0002\u0002",
+ "\u0729\u35be\u0003\u0002\u0002\u0002\u072b\u35cf\u0003\u0002\u0002\u0002",
+ "\u072d\u35d8\u0003\u0002\u0002\u0002\u072f\u35e5\u0003\u0002\u0002\u0002",
+ "\u0731\u35f5\u0003\u0002\u0002\u0002\u0733\u3607\u0003\u0002\u0002\u0002",
+ "\u0735\u3613\u0003\u0002\u0002\u0002\u0737\u3624\u0003\u0002\u0002\u0002",
+ "\u0739\u362a\u0003\u0002\u0002\u0002\u073b\u3633\u0003\u0002\u0002\u0002",
+ "\u073d\u3640\u0003\u0002\u0002\u0002\u073f\u3655\u0003\u0002\u0002\u0002",
+ "\u0741\u365f\u0003\u0002\u0002\u0002\u0743\u3673\u0003\u0002\u0002\u0002",
+ "\u0745\u368a\u0003\u0002\u0002\u0002\u0747\u3693\u0003\u0002\u0002\u0002",
+ "\u0749\u369b\u0003\u0002\u0002\u0002\u074b\u36ad\u0003\u0002\u0002\u0002",
+ "\u074d\u36bb\u0003\u0002\u0002\u0002\u074f\u36c5\u0003\u0002\u0002\u0002",
+ "\u0751\u36cf\u0003\u0002\u0002\u0002\u0753\u36e0\u0003\u0002\u0002\u0002",
+ "\u0755\u36ef\u0003\u0002\u0002\u0002\u0757\u36f8\u0003\u0002\u0002\u0002",
+ "\u0759\u3705\u0003\u0002\u0002\u0002\u075b\u370d\u0003\u0002\u0002\u0002",
+ "\u075d\u3720\u0003\u0002\u0002\u0002\u075f\u373d\u0003\u0002\u0002\u0002",
+ "\u0761\u375c\u0003\u0002\u0002\u0002\u0763\u376a\u0003\u0002\u0002\u0002",
+ "\u0765\u3774\u0003\u0002\u0002\u0002\u0767\u377c\u0003\u0002\u0002\u0002",
+ "\u0769\u3789\u0003\u0002\u0002\u0002\u076b\u379e\u0003\u0002\u0002\u0002",
+ "\u076d\u37b2\u0003\u0002\u0002\u0002\u076f\u37c0\u0003\u0002\u0002\u0002",
+ "\u0771\u37cf\u0003\u0002\u0002\u0002\u0773\u37de\u0003\u0002\u0002\u0002",
+ "\u0775\u37e9\u0003\u0002\u0002\u0002\u0777\u3803\u0003\u0002\u0002\u0002",
+ "\u0779\u381c\u0003\u0002\u0002\u0002\u077b\u3835\u0003\u0002\u0002\u0002",
+ "\u077d\u384d\u0003\u0002\u0002\u0002\u077f\u3865\u0003\u0002\u0002\u0002",
+ "\u0781\u386c\u0003\u0002\u0002\u0002\u0783\u3886\u0003\u0002\u0002\u0002",
+ "\u0785\u3895\u0003\u0002\u0002\u0002\u0787\u38a3\u0003\u0002\u0002\u0002",
+ "\u0789\u38ab\u0003\u0002\u0002\u0002\u078b\u38c4\u0003\u0002\u0002\u0002",
+ "\u078d\u38d3\u0003\u0002\u0002\u0002\u078f\u38db\u0003\u0002\u0002\u0002",
+ "\u0791\u38f2\u0003\u0002\u0002\u0002\u0793\u390d\u0003\u0002\u0002\u0002",
+ "\u0795\u391d\u0003\u0002\u0002\u0002\u0797\u392f\u0003\u0002\u0002\u0002",
+ "\u0799\u3940\u0003\u0002\u0002\u0002\u079b\u3958\u0003\u0002\u0002\u0002",
+ "\u079d\u3969\u0003\u0002\u0002\u0002\u079f\u3981\u0003\u0002\u0002\u0002",
+ "\u07a1\u398b\u0003\u0002\u0002\u0002\u07a3\u399b\u0003\u0002\u0002\u0002",
+ "\u07a5\u39a3\u0003\u0002\u0002\u0002\u07a7\u39b5\u0003\u0002\u0002\u0002",
+ "\u07a9\u39c2\u0003\u0002\u0002\u0002\u07ab\u39ca\u0003\u0002\u0002\u0002",
+ "\u07ad\u39e6\u0003\u0002\u0002\u0002\u07af\u3a05\u0003\u0002\u0002\u0002",
+ "\u07b1\u3a15\u0003\u0002\u0002\u0002\u07b3\u3a21\u0003\u0002\u0002\u0002",
+ "\u07b5\u3a2e\u0003\u0002\u0002\u0002\u07b7\u3a37\u0003\u0002\u0002\u0002",
+ "\u07b9\u3a43\u0003\u0002\u0002\u0002\u07bb\u3a4f\u0003\u0002\u0002\u0002",
+ "\u07bd\u3a63\u0003\u0002\u0002\u0002\u07bf\u3a6a\u0003\u0002\u0002\u0002",
+ "\u07c1\u3a72\u0003\u0002\u0002\u0002\u07c3\u3a7a\u0003\u0002\u0002\u0002",
+ "\u07c5\u3a84\u0003\u0002\u0002\u0002\u07c7\u3a8e\u0003\u0002\u0002\u0002",
+ "\u07c9\u3a99\u0003\u0002\u0002\u0002\u07cb\u3aa2\u0003\u0002\u0002\u0002",
+ "\u07cd\u3aad\u0003\u0002\u0002\u0002\u07cf\u3ab8\u0003\u0002\u0002\u0002",
+ "\u07d1\u3aca\u0003\u0002\u0002\u0002\u07d3\u3ad8\u0003\u0002\u0002\u0002",
+ "\u07d5\u3ae5\u0003\u0002\u0002\u0002\u07d7\u3af0\u0003\u0002\u0002\u0002",
+ "\u07d9\u3b03\u0003\u0002\u0002\u0002\u07db\u3b1d\u0003\u0002\u0002\u0002",
+ "\u07dd\u3b29\u0003\u0002\u0002\u0002\u07df\u3b38\u0003\u0002\u0002\u0002",
+ "\u07e1\u3b3d\u0003\u0002\u0002\u0002\u07e3\u3b4d\u0003\u0002\u0002\u0002",
+ "\u07e5\u3b5d\u0003\u0002\u0002\u0002\u07e7\u3b60\u0003\u0002\u0002\u0002",
+ "\u07e9\u3b6a\u0003\u0002\u0002\u0002\u07eb\u3b79\u0003\u0002\u0002\u0002",
+ "\u07ed\u3b81\u0003\u0002\u0002\u0002\u07ef\u3b92\u0003\u0002\u0002\u0002",
+ "\u07f1\u3ba8\u0003\u0002\u0002\u0002\u07f3\u3bbf\u0003\u0002\u0002\u0002",
+ "\u07f5\u3bca\u0003\u0002\u0002\u0002\u07f7\u3bdc\u0003\u0002\u0002\u0002",
+ "\u07f9\u3bed\u0003\u0002\u0002\u0002\u07fb\u3bf9\u0003\u0002\u0002\u0002",
+ "\u07fd\u3c04\u0003\u0002\u0002\u0002\u07ff\u3c16\u0003\u0002\u0002\u0002",
+ "\u0801\u3c26\u0003\u0002\u0002\u0002\u0803\u3c41\u0003\u0002\u0002\u0002",
+ "\u0805\u3c4d\u0003\u0002\u0002\u0002\u0807\u3c5f\u0003\u0002\u0002\u0002",
+ "\u0809\u3c71\u0003\u0002\u0002\u0002\u080b\u3c88\u0003\u0002\u0002\u0002",
+ "\u080d\u3c92\u0003\u0002\u0002\u0002\u080f\u3ca2\u0003\u0002\u0002\u0002",
+ "\u0811\u3cad\u0003\u0002\u0002\u0002\u0813\u3cbc\u0003\u0002\u0002\u0002",
+ "\u0815\u3cc9\u0003\u0002\u0002\u0002\u0817\u3cd6\u0003\u0002\u0002\u0002",
+ "\u0819\u3ce3\u0003\u0002\u0002\u0002\u081b\u3cf9\u0003\u0002\u0002\u0002",
+ "\u081d\u3d0b\u0003\u0002\u0002\u0002\u081f\u3d17\u0003\u0002\u0002\u0002",
+ "\u0821\u3d2f\u0003\u0002\u0002\u0002\u0823\u3d3e\u0003\u0002\u0002\u0002",
+ "\u0825\u3d49\u0003\u0002\u0002\u0002\u0827\u3d50\u0003\u0002\u0002\u0002",
+ "\u0829\u3d59\u0003\u0002\u0002\u0002\u082b\u3d62\u0003\u0002\u0002\u0002",
+ "\u082d\u3d6e\u0003\u0002\u0002\u0002\u082f\u3d7e\u0003\u0002\u0002\u0002",
+ "\u0831\u3d88\u0003\u0002\u0002\u0002\u0833\u3d93\u0003\u0002\u0002\u0002",
+ "\u0835\u3d9d\u0003\u0002\u0002\u0002\u0837\u3da4\u0003\u0002\u0002\u0002",
+ "\u0839\u3db9\u0003\u0002\u0002\u0002\u083b\u3dcb\u0003\u0002\u0002\u0002",
+ "\u083d\u3dd9\u0003\u0002\u0002\u0002\u083f\u3de3\u0003\u0002\u0002\u0002",
+ "\u0841\u3def\u0003\u0002\u0002\u0002\u0843\u3e00\u0003\u0002\u0002\u0002",
+ "\u0845\u3e0f\u0003\u0002\u0002\u0002\u0847\u3e16\u0003\u0002\u0002\u0002",
+ "\u0849\u3e29\u0003\u0002\u0002\u0002\u084b\u3e35\u0003\u0002\u0002\u0002",
+ "\u084d\u3e4c\u0003\u0002\u0002\u0002\u084f\u3e61\u0003\u0002\u0002\u0002",
+ "\u0851\u3e70\u0003\u0002\u0002\u0002\u0853\u3e79\u0003\u0002\u0002\u0002",
+ "\u0855\u3e8d\u0003\u0002\u0002\u0002\u0857\u3e9c\u0003\u0002\u0002\u0002",
+ "\u0859\u3eb0\u0003\u0002\u0002\u0002\u085b\u3eb9\u0003\u0002\u0002\u0002",
+ "\u085d\u3ecf\u0003\u0002\u0002\u0002\u085f\u3edd\u0003\u0002\u0002\u0002",
+ "\u0861\u3ee5\u0003\u0002\u0002\u0002\u0863\u3ef2\u0003\u0002\u0002\u0002",
+ "\u0865\u3ef6\u0003\u0002\u0002\u0002\u0867\u3f10\u0003\u0002\u0002\u0002",
+ "\u0869\u3f1a\u0003\u0002\u0002\u0002\u086b\u3f26\u0003\u0002\u0002\u0002",
+ "\u086d\u3f3e\u0003\u0002\u0002\u0002\u086f\u3f5b\u0003\u0002\u0002\u0002",
+ "\u0871\u3f67\u0003\u0002\u0002\u0002\u0873\u3f80\u0003\u0002\u0002\u0002",
+ "\u0875\u3f8d\u0003\u0002\u0002\u0002\u0877\u3f97\u0003\u0002\u0002\u0002",
+ "\u0879\u3fb1\u0003\u0002\u0002\u0002\u087b\u3fbc\u0003\u0002\u0002\u0002",
+ "\u087d\u3fd5\u0003\u0002\u0002\u0002\u087f\u3fee\u0003\u0002\u0002\u0002",
+ "\u0881\u4002\u0003\u0002\u0002\u0002\u0883\u4009\u0003\u0002\u0002\u0002",
+ "\u0885\u4020\u0003\u0002\u0002\u0002\u0887\u4033\u0003\u0002\u0002\u0002",
+ "\u0889\u4051\u0003\u0002\u0002\u0002\u088b\u4065\u0003\u0002\u0002\u0002",
+ "\u088d\u407a\u0003\u0002\u0002\u0002\u088f\u4085\u0003\u0002\u0002\u0002",
+ "\u0891\u408f\u0003\u0002\u0002\u0002\u0893\u4096\u0003\u0002\u0002\u0002",
+ "\u0895\u409b\u0003\u0002\u0002\u0002\u0897\u40a1\u0003\u0002\u0002\u0002",
+ "\u0899\u40a8\u0003\u0002\u0002\u0002\u089b\u40b0\u0003\u0002\u0002\u0002",
+ "\u089d\u40bf\u0003\u0002\u0002\u0002\u089f\u40cf\u0003\u0002\u0002\u0002",
+ "\u08a1\u40df\u0003\u0002\u0002\u0002\u08a3\u40e9\u0003\u0002\u0002\u0002",
+ "\u08a5\u40ee\u0003\u0002\u0002\u0002\u08a7\u40f9\u0003\u0002\u0002\u0002",
+ "\u08a9\u4100\u0003\u0002\u0002\u0002\u08ab\u4107\u0003\u0002\u0002\u0002",
+ "\u08ad\u410d\u0003\u0002\u0002\u0002\u08af\u4119\u0003\u0002\u0002\u0002",
+ "\u08b1\u4124\u0003\u0002\u0002\u0002\u08b3\u412c\u0003\u0002\u0002\u0002",
+ "\u08b5\u4130\u0003\u0002\u0002\u0002\u08b7\u4137\u0003\u0002\u0002\u0002",
+ "\u08b9\u413a\u0003\u0002\u0002\u0002\u08bb\u4143\u0003\u0002\u0002\u0002",
+ "\u08bd\u4147\u0003\u0002\u0002\u0002\u08bf\u414c\u0003\u0002\u0002\u0002",
+ "\u08c1\u4150\u0003\u0002\u0002\u0002\u08c3\u415e\u0003\u0002\u0002\u0002",
+ "\u08c5\u4162\u0003\u0002\u0002\u0002\u08c7\u4167\u0003\u0002\u0002\u0002",
+ "\u08c9\u416c\u0003\u0002\u0002\u0002\u08cb\u4170\u0003\u0002\u0002\u0002",
+ "\u08cd\u4177\u0003\u0002\u0002\u0002\u08cf\u4181\u0003\u0002\u0002\u0002",
+ "\u08d1\u4186\u0003\u0002\u0002\u0002\u08d3\u4189\u0003\u0002\u0002\u0002",
+ "\u08d5\u4190\u0003\u0002\u0002\u0002\u08d7\u41a1\u0003\u0002\u0002\u0002",
+ "\u08d9\u41b3\u0003\u0002\u0002\u0002\u08db\u41ba\u0003\u0002\u0002\u0002",
+ "\u08dd\u41bf\u0003\u0002\u0002\u0002\u08df\u41ca\u0003\u0002\u0002\u0002",
+ "\u08e1\u41d3\u0003\u0002\u0002\u0002\u08e3\u41e0\u0003\u0002\u0002\u0002",
+ "\u08e5\u41e8\u0003\u0002\u0002\u0002\u08e7\u41f1\u0003\u0002\u0002\u0002",
+ "\u08e9\u420b\u0003\u0002\u0002\u0002\u08eb\u421a\u0003\u0002\u0002\u0002",
+ "\u08ed\u4221\u0003\u0002\u0002\u0002\u08ef\u422b\u0003\u0002\u0002\u0002",
+ "\u08f1\u4236\u0003\u0002\u0002\u0002\u08f3\u4244\u0003\u0002\u0002\u0002",
+ "\u08f5\u4258\u0003\u0002\u0002\u0002\u08f7\u4267\u0003\u0002\u0002\u0002",
+ "\u08f9\u426f\u0003\u0002\u0002\u0002\u08fb\u4278\u0003\u0002\u0002\u0002",
+ "\u08fd\u4289\u0003\u0002\u0002\u0002\u08ff\u4299\u0003\u0002\u0002\u0002",
+ "\u0901\u42a7\u0003\u0002\u0002\u0002\u0903\u42b6\u0003\u0002\u0002\u0002",
+ "\u0905\u42c9\u0003\u0002\u0002\u0002\u0907\u42d2\u0003\u0002\u0002\u0002",
+ "\u0909\u42e6\u0003\u0002\u0002\u0002\u090b\u42f8\u0003\u0002\u0002\u0002",
+ "\u090d\u4312\u0003\u0002\u0002\u0002\u090f\u4327\u0003\u0002\u0002\u0002",
+ "\u0911\u4336\u0003\u0002\u0002\u0002\u0913\u4344\u0003\u0002\u0002\u0002",
+ "\u0915\u434f\u0003\u0002\u0002\u0002\u0917\u435e\u0003\u0002\u0002\u0002",
+ "\u0919\u436d\u0003\u0002\u0002\u0002\u091b\u437c\u0003\u0002\u0002\u0002",
+ "\u091d\u438b\u0003\u0002\u0002\u0002\u091f\u4393\u0003\u0002\u0002\u0002",
+ "\u0921\u43a6\u0003\u0002\u0002\u0002\u0923\u43ac\u0003\u0002\u0002\u0002",
+ "\u0925\u43b7\u0003\u0002\u0002\u0002\u0927\u43c1\u0003\u0002\u0002\u0002",
+ "\u0929\u43ce\u0003\u0002\u0002\u0002\u092b\u43d1\u0003\u0002\u0002\u0002",
+ "\u092d\u43df\u0003\u0002\u0002\u0002\u092f\u43e7\u0003\u0002\u0002\u0002",
+ "\u0931\u43ed\u0003\u0002\u0002\u0002\u0933\u4400\u0003\u0002\u0002\u0002",
+ "\u0935\u4414\u0003\u0002\u0002\u0002\u0937\u441a\u0003\u0002\u0002\u0002",
+ "\u0939\u4427\u0003\u0002\u0002\u0002\u093b\u442f\u0003\u0002\u0002\u0002",
+ "\u093d\u443b\u0003\u0002\u0002\u0002\u093f\u443f\u0003\u0002\u0002\u0002",
+ "\u0941\u444f\u0003\u0002\u0002\u0002\u0943\u4458\u0003\u0002\u0002\u0002",
+ "\u0945\u4461\u0003\u0002\u0002\u0002\u0947\u4466\u0003\u0002\u0002\u0002",
+ "\u0949\u4471\u0003\u0002\u0002\u0002\u094b\u4477\u0003\u0002\u0002\u0002",
+ "\u094d\u4481\u0003\u0002\u0002\u0002\u094f\u4485\u0003\u0002\u0002\u0002",
+ "\u0951\u448d\u0003\u0002\u0002\u0002\u0953\u4496\u0003\u0002\u0002\u0002",
+ "\u0955\u44a6\u0003\u0002\u0002\u0002\u0957\u44b5\u0003\u0002\u0002\u0002",
+ "\u0959\u44be\u0003\u0002\u0002\u0002\u095b\u44cc\u0003\u0002\u0002\u0002",
+ "\u095d\u44d7\u0003\u0002\u0002\u0002\u095f\u44dd\u0003\u0002\u0002\u0002",
+ "\u0961\u44e4\u0003\u0002\u0002\u0002\u0963\u44eb\u0003\u0002\u0002\u0002",
+ "\u0965\u44f8\u0003\u0002\u0002\u0002\u0967\u4502\u0003\u0002\u0002\u0002",
+ "\u0969\u450a\u0003\u0002\u0002\u0002\u096b\u4522\u0003\u0002\u0002\u0002",
+ "\u096d\u4531\u0003\u0002\u0002\u0002\u096f\u4540\u0003\u0002\u0002\u0002",
+ "\u0971\u454a\u0003\u0002\u0002\u0002\u0973\u455a\u0003\u0002\u0002\u0002",
+ "\u0975\u4565\u0003\u0002\u0002\u0002\u0977\u4573\u0003\u0002\u0002\u0002",
+ "\u0979\u457b\u0003\u0002\u0002\u0002\u097b\u458f\u0003\u0002\u0002\u0002",
+ "\u097d\u45a2\u0003\u0002\u0002\u0002\u097f\u45b5\u0003\u0002\u0002\u0002",
+ "\u0981\u45be\u0003\u0002\u0002\u0002\u0983\u45d1\u0003\u0002\u0002\u0002",
+ "\u0985\u45e5\u0003\u0002\u0002\u0002\u0987\u45fe\u0003\u0002\u0002\u0002",
+ "\u0989\u4603\u0003\u0002\u0002\u0002\u098b\u4609\u0003\u0002\u0002\u0002",
+ "\u098d\u460e\u0003\u0002\u0002\u0002\u098f\u461a\u0003\u0002\u0002\u0002",
+ "\u0991\u4620\u0003\u0002\u0002\u0002\u0993\u4628\u0003\u0002\u0002\u0002",
+ "\u0995\u4635\u0003\u0002\u0002\u0002\u0997\u4640\u0003\u0002\u0002\u0002",
+ "\u0999\u4648\u0003\u0002\u0002\u0002\u099b\u4654\u0003\u0002\u0002\u0002",
+ "\u099d\u4661\u0003\u0002\u0002\u0002\u099f\u4669\u0003\u0002\u0002\u0002",
+ "\u09a1\u4674\u0003\u0002\u0002\u0002\u09a3\u467c\u0003\u0002\u0002\u0002",
+ "\u09a5\u4689\u0003\u0002\u0002\u0002\u09a7\u4697\u0003\u0002\u0002\u0002",
+ "\u09a9\u46a7\u0003\u0002\u0002\u0002\u09ab\u46af\u0003\u0002\u0002\u0002",
+ "\u09ad\u46bd\u0003\u0002\u0002\u0002\u09af\u46cd\u0003\u0002\u0002\u0002",
+ "\u09b1\u46dc\u0003\u0002\u0002\u0002\u09b3\u46e8\u0003\u0002\u0002\u0002",
+ "\u09b5\u46f4\u0003\u0002\u0002\u0002\u09b7\u46fb\u0003\u0002\u0002\u0002",
+ "\u09b9\u4705\u0003\u0002\u0002\u0002\u09bb\u4710\u0003\u0002\u0002\u0002",
+ "\u09bd\u4718\u0003\u0002\u0002\u0002\u09bf\u471c\u0003\u0002\u0002\u0002",
+ "\u09c1\u4722\u0003\u0002\u0002\u0002\u09c3\u472b\u0003\u0002\u0002\u0002",
+ "\u09c5\u4731\u0003\u0002\u0002\u0002\u09c7\u473b\u0003\u0002\u0002\u0002",
+ "\u09c9\u4740\u0003\u0002\u0002\u0002\u09cb\u4747\u0003\u0002\u0002\u0002",
+ "\u09cd\u474d\u0003\u0002\u0002\u0002\u09cf\u4755\u0003\u0002\u0002\u0002",
+ "\u09d1\u4764\u0003\u0002\u0002\u0002\u09d3\u4773\u0003\u0002\u0002\u0002",
+ "\u09d5\u4778\u0003\u0002\u0002\u0002\u09d7\u4789\u0003\u0002\u0002\u0002",
+ "\u09d9\u4795\u0003\u0002\u0002\u0002\u09db\u47a3\u0003\u0002\u0002\u0002",
+ "\u09dd\u47b3\u0003\u0002\u0002\u0002\u09df\u47bf\u0003\u0002\u0002\u0002",
+ "\u09e1\u47d4\u0003\u0002\u0002\u0002\u09e3\u47e3\u0003\u0002\u0002\u0002",
+ "\u09e5\u47ed\u0003\u0002\u0002\u0002\u09e7\u47f3\u0003\u0002\u0002\u0002",
+ "\u09e9\u47fa\u0003\u0002\u0002\u0002\u09eb\u4803\u0003\u0002\u0002\u0002",
+ "\u09ed\u480b\u0003\u0002\u0002\u0002\u09ef\u4814\u0003\u0002\u0002\u0002",
+ "\u09f1\u481c\u0003\u0002\u0002\u0002\u09f3\u4824\u0003\u0002\u0002\u0002",
+ "\u09f5\u482e\u0003\u0002\u0002\u0002\u09f7\u4837\u0003\u0002\u0002\u0002",
+ "\u09f9\u4848\u0003\u0002\u0002\u0002\u09fb\u4865\u0003\u0002\u0002\u0002",
+ "\u09fd\u4873\u0003\u0002\u0002\u0002\u09ff\u4879\u0003\u0002\u0002\u0002",
+ "\u0a01\u488d\u0003\u0002\u0002\u0002\u0a03\u489b\u0003\u0002\u0002\u0002",
+ "\u0a05\u48b0\u0003\u0002\u0002\u0002\u0a07\u48ba\u0003\u0002\u0002\u0002",
+ "\u0a09\u48c1\u0003\u0002\u0002\u0002\u0a0b\u48ca\u0003\u0002\u0002\u0002",
+ "\u0a0d\u48d7\u0003\u0002\u0002\u0002\u0a0f\u48df\u0003\u0002\u0002\u0002",
+ "\u0a11\u48e6\u0003\u0002\u0002\u0002\u0a13\u48ef\u0003\u0002\u0002\u0002",
+ "\u0a15\u48f8\u0003\u0002\u0002\u0002\u0a17\u4902\u0003\u0002\u0002\u0002",
+ "\u0a19\u490c\u0003\u0002\u0002\u0002\u0a1b\u4920\u0003\u0002\u0002\u0002",
+ "\u0a1d\u4933\u0003\u0002\u0002\u0002\u0a1f\u493b\u0003\u0002\u0002\u0002",
+ "\u0a21\u4943\u0003\u0002\u0002\u0002\u0a23\u494e\u0003\u0002\u0002\u0002",
+ "\u0a25\u4956\u0003\u0002\u0002\u0002\u0a27\u495f\u0003\u0002\u0002\u0002",
+ "\u0a29\u496c\u0003\u0002\u0002\u0002\u0a2b\u4975\u0003\u0002\u0002\u0002",
+ "\u0a2d\u497c\u0003\u0002\u0002\u0002\u0a2f\u4985\u0003\u0002\u0002\u0002",
+ "\u0a31\u498a\u0003\u0002\u0002\u0002\u0a33\u4992\u0003\u0002\u0002\u0002",
+ "\u0a35\u49a2\u0003\u0002\u0002\u0002\u0a37\u49ab\u0003\u0002\u0002\u0002",
+ "\u0a39\u49b1\u0003\u0002\u0002\u0002\u0a3b\u49b9\u0003\u0002\u0002\u0002",
+ "\u0a3d\u49c5\u0003\u0002\u0002\u0002\u0a3f\u49d0\u0003\u0002\u0002\u0002",
+ "\u0a41\u49da\u0003\u0002\u0002\u0002\u0a43\u49e5\u0003\u0002\u0002\u0002",
+ "\u0a45\u49f0\u0003\u0002\u0002\u0002\u0a47\u49fa\u0003\u0002\u0002\u0002",
+ "\u0a49\u4a02\u0003\u0002\u0002\u0002\u0a4b\u4a0a\u0003\u0002\u0002\u0002",
+ "\u0a4d\u4a12\u0003\u0002\u0002\u0002\u0a4f\u4a1a\u0003\u0002\u0002\u0002",
+ "\u0a51\u4a24\u0003\u0002\u0002\u0002\u0a53\u4a2e\u0003\u0002\u0002\u0002",
+ "\u0a55\u4a39\u0003\u0002\u0002\u0002\u0a57\u4a3f\u0003\u0002\u0002\u0002",
+ "\u0a59\u4a47\u0003\u0002\u0002\u0002\u0a5b\u4a4e\u0003\u0002\u0002\u0002",
+ "\u0a5d\u4a58\u0003\u0002\u0002\u0002\u0a5f\u4a5e\u0003\u0002\u0002\u0002",
+ "\u0a61\u4a68\u0003\u0002\u0002\u0002\u0a63\u4a72\u0003\u0002\u0002\u0002",
+ "\u0a65\u4a85\u0003\u0002\u0002\u0002\u0a67\u4a90\u0003\u0002\u0002\u0002",
+ "\u0a69\u4a9f\u0003\u0002\u0002\u0002\u0a6b\u4aa7\u0003\u0002\u0002\u0002",
+ "\u0a6d\u4ab3\u0003\u0002\u0002\u0002\u0a6f\u4ab9\u0003\u0002\u0002\u0002",
+ "\u0a71\u4ac4\u0003\u0002\u0002\u0002\u0a73\u4aca\u0003\u0002\u0002\u0002",
+ "\u0a75\u4ad5\u0003\u0002\u0002\u0002\u0a77\u4add\u0003\u0002\u0002\u0002",
+ "\u0a79\u4ae4\u0003\u0002\u0002\u0002\u0a7b\u4aea\u0003\u0002\u0002\u0002",
+ "\u0a7d\u4af0\u0003\u0002\u0002\u0002\u0a7f\u4afd\u0003\u0002\u0002\u0002",
+ "\u0a81\u4b04\u0003\u0002\u0002\u0002\u0a83\u4b0a\u0003\u0002\u0002\u0002",
+ "\u0a85\u4b10\u0003\u0002\u0002\u0002\u0a87\u4b18\u0003\u0002\u0002\u0002",
+ "\u0a89\u4b1c\u0003\u0002\u0002\u0002\u0a8b\u4b25\u0003\u0002\u0002\u0002",
+ "\u0a8d\u4b2f\u0003\u0002\u0002\u0002\u0a8f\u4b33\u0003\u0002\u0002\u0002",
+ "\u0a91\u4b3f\u0003\u0002\u0002\u0002\u0a93\u4b44\u0003\u0002\u0002\u0002",
+ "\u0a95\u4b49\u0003\u0002\u0002\u0002\u0a97\u4b4f\u0003\u0002\u0002\u0002",
+ "\u0a99\u4b55\u0003\u0002\u0002\u0002\u0a9b\u4b5a\u0003\u0002\u0002\u0002",
+ "\u0a9d\u4b64\u0003\u0002\u0002\u0002\u0a9f\u4b6c\u0003\u0002\u0002\u0002",
+ "\u0aa1\u4b73\u0003\u0002\u0002\u0002\u0aa3\u4b85\u0003\u0002\u0002\u0002",
+ "\u0aa5\u4b91\u0003\u0002\u0002\u0002\u0aa7\u4b99\u0003\u0002\u0002\u0002",
+ "\u0aa9\u4ba2\u0003\u0002\u0002\u0002\u0aab\u4bad\u0003\u0002\u0002\u0002",
+ "\u0aad\u4bb5\u0003\u0002\u0002\u0002\u0aaf\u4bbf\u0003\u0002\u0002\u0002",
+ "\u0ab1\u4bc8\u0003\u0002\u0002\u0002\u0ab3\u4bcd\u0003\u0002\u0002\u0002",
+ "\u0ab5\u4bd5\u0003\u0002\u0002\u0002\u0ab7\u4be0\u0003\u0002\u0002\u0002",
+ "\u0ab9\u4bf3\u0003\u0002\u0002\u0002\u0abb\u4bfe\u0003\u0002\u0002\u0002",
+ "\u0abd\u4c08\u0003\u0002\u0002\u0002\u0abf\u4c13\u0003\u0002\u0002\u0002",
+ "\u0ac1\u4c1f\u0003\u0002\u0002\u0002\u0ac3\u4c23\u0003\u0002\u0002\u0002",
+ "\u0ac5\u4c2b\u0003\u0002\u0002\u0002\u0ac7\u4c34\u0003\u0002\u0002\u0002",
+ "\u0ac9\u4c41\u0003\u0002\u0002\u0002\u0acb\u4c4e\u0003\u0002\u0002\u0002",
+ "\u0acd\u4c5a\u0003\u0002\u0002\u0002\u0acf\u4c69\u0003\u0002\u0002\u0002",
+ "\u0ad1\u4c77\u0003\u0002\u0002\u0002\u0ad3\u4c80\u0003\u0002\u0002\u0002",
+ "\u0ad5\u4c8a\u0003\u0002\u0002\u0002\u0ad7\u4c94\u0003\u0002\u0002\u0002",
+ "\u0ad9\u4c9f\u0003\u0002\u0002\u0002\u0adb\u4cae\u0003\u0002\u0002\u0002",
+ "\u0add\u4cb6\u0003\u0002\u0002\u0002\u0adf\u4cc1\u0003\u0002\u0002\u0002",
+ "\u0ae1\u4cca\u0003\u0002\u0002\u0002\u0ae3\u4cd3\u0003\u0002\u0002\u0002",
+ "\u0ae5\u4cdc\u0003\u0002\u0002\u0002\u0ae7\u4ce4\u0003\u0002\u0002\u0002",
+ "\u0ae9\u4ceb\u0003\u0002\u0002\u0002\u0aeb\u4cf1\u0003\u0002\u0002\u0002",
+ "\u0aed\u4cfc\u0003\u0002\u0002\u0002\u0aef\u4d06\u0003\u0002\u0002\u0002",
+ "\u0af1\u4d0f\u0003\u0002\u0002\u0002\u0af3\u4d14\u0003\u0002\u0002\u0002",
+ "\u0af5\u4d1e\u0003\u0002\u0002\u0002\u0af7\u4d2c\u0003\u0002\u0002\u0002",
+ "\u0af9\u4d33\u0003\u0002\u0002\u0002\u0afb\u4d3a\u0003\u0002\u0002\u0002",
+ "\u0afd\u4d41\u0003\u0002\u0002\u0002\u0aff\u4d48\u0003\u0002\u0002\u0002",
+ "\u0b01\u4d50\u0003\u0002\u0002\u0002\u0b03\u4d5c\u0003\u0002\u0002\u0002",
+ "\u0b05\u4d65\u0003\u0002\u0002\u0002\u0b07\u4d6f\u0003\u0002\u0002\u0002",
+ "\u0b09\u4d75\u0003\u0002\u0002\u0002\u0b0b\u4d7c\u0003\u0002\u0002\u0002",
+ "\u0b0d\u4d84\u0003\u0002\u0002\u0002\u0b0f\u4d8d\u0003\u0002\u0002\u0002",
+ "\u0b11\u4d96\u0003\u0002\u0002\u0002\u0b13\u4d9e\u0003\u0002\u0002\u0002",
+ "\u0b15\u4da6\u0003\u0002\u0002\u0002\u0b17\u4dbb\u0003\u0002\u0002\u0002",
+ "\u0b19\u4dc3\u0003\u0002\u0002\u0002\u0b1b\u4dd9\u0003\u0002\u0002\u0002",
+ "\u0b1d\u4de4\u0003\u0002\u0002\u0002\u0b1f\u4df8\u0003\u0002\u0002\u0002",
+ "\u0b21\u4e01\u0003\u0002\u0002\u0002\u0b23\u4e0e\u0003\u0002\u0002\u0002",
+ "\u0b25\u4e15\u0003\u0002\u0002\u0002\u0b27\u4e1f\u0003\u0002\u0002\u0002",
+ "\u0b29\u4e26\u0003\u0002\u0002\u0002\u0b2b\u4e30\u0003\u0002\u0002\u0002",
+ "\u0b2d\u4e44\u0003\u0002\u0002\u0002\u0b2f\u4e4e\u0003\u0002\u0002\u0002",
+ "\u0b31\u4e55\u0003\u0002\u0002\u0002\u0b33\u4e5b\u0003\u0002\u0002\u0002",
+ "\u0b35\u4e63\u0003\u0002\u0002\u0002\u0b37\u4e6a\u0003\u0002\u0002\u0002",
+ "\u0b39\u4e7b\u0003\u0002\u0002\u0002\u0b3b\u4e83\u0003\u0002\u0002\u0002",
+ "\u0b3d\u4e89\u0003\u0002\u0002\u0002\u0b3f\u4e8e\u0003\u0002\u0002\u0002",
+ "\u0b41\u4e96\u0003\u0002\u0002\u0002\u0b43\u4e9c\u0003\u0002\u0002\u0002",
+ "\u0b45\u4ea5\u0003\u0002\u0002\u0002\u0b47\u4ead\u0003\u0002\u0002\u0002",
+ "\u0b49\u4eb4\u0003\u0002\u0002\u0002\u0b4b\u4ec4\u0003\u0002\u0002\u0002",
+ "\u0b4d\u4ed8\u0003\u0002\u0002\u0002\u0b4f\u4ede\u0003\u0002\u0002\u0002",
+ "\u0b51\u4eea\u0003\u0002\u0002\u0002\u0b53\u4ef7\u0003\u0002\u0002\u0002",
+ "\u0b55\u4f02\u0003\u0002\u0002\u0002\u0b57\u4f09\u0003\u0002\u0002\u0002",
+ "\u0b59\u4f0d\u0003\u0002\u0002\u0002\u0b5b\u4f12\u0003\u0002\u0002\u0002",
+ "\u0b5d\u4f17\u0003\u0002\u0002\u0002\u0b5f\u4f1d\u0003\u0002\u0002\u0002",
+ "\u0b61\u4f22\u0003\u0002\u0002\u0002\u0b63\u4f28\u0003\u0002\u0002\u0002",
+ "\u0b65\u4f30\u0003\u0002\u0002\u0002\u0b67\u4f35\u0003\u0002\u0002\u0002",
+ "\u0b69\u4f3c\u0003\u0002\u0002\u0002\u0b6b\u4f4e\u0003\u0002\u0002\u0002",
+ "\u0b6d\u4f58\u0003\u0002\u0002\u0002\u0b6f\u4f5d\u0003\u0002\u0002\u0002",
+ "\u0b71\u4f61\u0003\u0002\u0002\u0002\u0b73\u4f6c\u0003\u0002\u0002\u0002",
+ "\u0b75\u4f72\u0003\u0002\u0002\u0002\u0b77\u4f81\u0003\u0002\u0002\u0002",
+ "\u0b79\u4f86\u0003\u0002\u0002\u0002\u0b7b\u4f90\u0003\u0002\u0002\u0002",
+ "\u0b7d\u4f9c\u0003\u0002\u0002\u0002\u0b7f\u4fa3\u0003\u0002\u0002\u0002",
+ "\u0b81\u4fb1\u0003\u0002\u0002\u0002\u0b83\u4fb5\u0003\u0002\u0002\u0002",
+ "\u0b85\u4fbb\u0003\u0002\u0002\u0002\u0b87\u4fc1\u0003\u0002\u0002\u0002",
+ "\u0b89\u4fc8\u0003\u0002\u0002\u0002\u0b8b\u4fd3\u0003\u0002\u0002\u0002",
+ "\u0b8d\u4fe0\u0003\u0002\u0002\u0002\u0b8f\u4fe8\u0003\u0002\u0002\u0002",
+ "\u0b91\u4fef\u0003\u0002\u0002\u0002\u0b93\u4ff6\u0003\u0002\u0002\u0002",
+ "\u0b95\u4ffd\u0003\u0002\u0002\u0002\u0b97\u500c\u0003\u0002\u0002\u0002",
+ "\u0b99\u5017\u0003\u0002\u0002\u0002\u0b9b\u5020\u0003\u0002\u0002\u0002",
+ "\u0b9d\u5025\u0003\u0002\u0002\u0002\u0b9f\u502f\u0003\u0002\u0002\u0002",
+ "\u0ba1\u5038\u0003\u0002\u0002\u0002\u0ba3\u5040\u0003\u0002\u0002\u0002",
+ "\u0ba5\u504c\u0003\u0002\u0002\u0002\u0ba7\u5053\u0003\u0002\u0002\u0002",
+ "\u0ba9\u5058\u0003\u0002\u0002\u0002\u0bab\u5068\u0003\u0002\u0002\u0002",
+ "\u0bad\u5071\u0003\u0002\u0002\u0002\u0baf\u507f\u0003\u0002\u0002\u0002",
+ "\u0bb1\u5089\u0003\u0002\u0002\u0002\u0bb3\u5092\u0003\u0002\u0002\u0002",
+ "\u0bb5\u509d\u0003\u0002\u0002\u0002\u0bb7\u50a1\u0003\u0002\u0002\u0002",
+ "\u0bb9\u50ae\u0003\u0002\u0002\u0002\u0bbb\u50c0\u0003\u0002\u0002\u0002",
+ "\u0bbd\u50c7\u0003\u0002\u0002\u0002\u0bbf\u50d3\u0003\u0002\u0002\u0002",
+ "\u0bc1\u50e8\u0003\u0002\u0002\u0002\u0bc3\u50f1\u0003\u0002\u0002\u0002",
+ "\u0bc5\u5108\u0003\u0002\u0002\u0002\u0bc7\u5110\u0003\u0002\u0002\u0002",
+ "\u0bc9\u5122\u0003\u0002\u0002\u0002\u0bcb\u5132\u0003\u0002\u0002\u0002",
+ "\u0bcd\u5140\u0003\u0002\u0002\u0002\u0bcf\u5144\u0003\u0002\u0002\u0002",
+ "\u0bd1\u5149\u0003\u0002\u0002\u0002\u0bd3\u5152\u0003\u0002\u0002\u0002",
+ "\u0bd5\u515e\u0003\u0002\u0002\u0002\u0bd7\u5165\u0003\u0002\u0002\u0002",
+ "\u0bd9\u5171\u0003\u0002\u0002\u0002\u0bdb\u5178\u0003\u0002\u0002\u0002",
+ "\u0bdd\u517e\u0003\u0002\u0002\u0002\u0bdf\u5186\u0003\u0002\u0002\u0002",
+ "\u0be1\u5190\u0003\u0002\u0002\u0002\u0be3\u5195\u0003\u0002\u0002\u0002",
+ "\u0be5\u519c\u0003\u0002\u0002\u0002\u0be7\u51a5\u0003\u0002\u0002\u0002",
+ "\u0be9\u51ae\u0003\u0002\u0002\u0002\u0beb\u51b2\u0003\u0002\u0002\u0002",
+ "\u0bed\u51c3\u0003\u0002\u0002\u0002\u0bef\u51d3\u0003\u0002\u0002\u0002",
+ "\u0bf1\u51d8\u0003\u0002\u0002\u0002\u0bf3\u51e1\u0003\u0002\u0002\u0002",
+ "\u0bf5\u51f0\u0003\u0002\u0002\u0002\u0bf7\u51f7\u0003\u0002\u0002\u0002",
+ "\u0bf9\u51fe\u0003\u0002\u0002\u0002\u0bfb\u5209\u0003\u0002\u0002\u0002",
+ "\u0bfd\u520e\u0003\u0002\u0002\u0002\u0bff\u5212\u0003\u0002\u0002\u0002",
+ "\u0c01\u5217\u0003\u0002\u0002\u0002\u0c03\u522a\u0003\u0002\u0002\u0002",
+ "\u0c05\u522f\u0003\u0002\u0002\u0002\u0c07\u5245\u0003\u0002\u0002\u0002",
+ "\u0c09\u525b\u0003\u0002\u0002\u0002\u0c0b\u5265\u0003\u0002\u0002\u0002",
+ "\u0c0d\u526e\u0003\u0002\u0002\u0002\u0c0f\u5277\u0003\u0002\u0002\u0002",
+ "\u0c11\u527c\u0003\u0002\u0002\u0002\u0c13\u5281\u0003\u0002\u0002\u0002",
+ "\u0c15\u5289\u0003\u0002\u0002\u0002\u0c17\u529f\u0003\u0002\u0002\u0002",
+ "\u0c19\u52b8\u0003\u0002\u0002\u0002\u0c1b\u52bf\u0003\u0002\u0002\u0002",
+ "\u0c1d\u52c5\u0003\u0002\u0002\u0002\u0c1f\u52d3\u0003\u0002\u0002\u0002",
+ "\u0c21\u52da\u0003\u0002\u0002\u0002\u0c23\u52e0\u0003\u0002\u0002\u0002",
+ "\u0c25\u52ec\u0003\u0002\u0002\u0002\u0c27\u52f4\u0003\u0002\u0002\u0002",
+ "\u0c29\u52fd\u0003\u0002\u0002\u0002\u0c2b\u5304\u0003\u0002\u0002\u0002",
+ "\u0c2d\u5308\u0003\u0002\u0002\u0002\u0c2f\u5312\u0003\u0002\u0002\u0002",
+ "\u0c31\u532a\u0003\u0002\u0002\u0002\u0c33\u532f\u0003\u0002\u0002\u0002",
+ "\u0c35\u5335\u0003\u0002\u0002\u0002\u0c37\u5340\u0003\u0002\u0002\u0002",
+ "\u0c39\u534e\u0003\u0002\u0002\u0002\u0c3b\u5365\u0003\u0002\u0002\u0002",
+ "\u0c3d\u536e\u0003\u0002\u0002\u0002\u0c3f\u5376\u0003\u0002\u0002\u0002",
+ "\u0c41\u537b\u0003\u0002\u0002\u0002\u0c43\u538f\u0003\u0002\u0002\u0002",
+ "\u0c45\u5395\u0003\u0002\u0002\u0002\u0c47\u539d\u0003\u0002\u0002\u0002",
+ "\u0c49\u53aa\u0003\u0002\u0002\u0002\u0c4b\u53bc\u0003\u0002\u0002\u0002",
+ "\u0c4d\u53c7\u0003\u0002\u0002\u0002\u0c4f\u53d1\u0003\u0002\u0002\u0002",
+ "\u0c51\u53d7\u0003\u0002\u0002\u0002\u0c53\u53de\u0003\u0002\u0002\u0002",
+ "\u0c55\u53e9\u0003\u0002\u0002\u0002\u0c57\u53fd\u0003\u0002\u0002\u0002",
+ "\u0c59\u540c\u0003\u0002\u0002\u0002\u0c5b\u5419\u0003\u0002\u0002\u0002",
+ "\u0c5d\u5427\u0003\u0002\u0002\u0002\u0c5f\u5432\u0003\u0002\u0002\u0002",
+ "\u0c61\u5440\u0003\u0002\u0002\u0002\u0c63\u5454\u0003\u0002\u0002\u0002",
+ "\u0c65\u5467\u0003\u0002\u0002\u0002\u0c67\u547b\u0003\u0002\u0002\u0002",
+ "\u0c69\u548c\u0003\u0002\u0002\u0002\u0c6b\u54a0\u0003\u0002\u0002\u0002",
+ "\u0c6d\u54af\u0003\u0002\u0002\u0002\u0c6f\u54ba\u0003\u0002\u0002\u0002",
+ "\u0c71\u54c6\u0003\u0002\u0002\u0002\u0c73\u54cb\u0003\u0002\u0002\u0002",
+ "\u0c75\u54d3\u0003\u0002\u0002\u0002\u0c77\u54d9\u0003\u0002\u0002\u0002",
+ "\u0c79\u54e1\u0003\u0002\u0002\u0002\u0c7b\u54e8\u0003\u0002\u0002\u0002",
+ "\u0c7d\u54ef\u0003\u0002\u0002\u0002\u0c7f\u54f6\u0003\u0002\u0002\u0002",
+ "\u0c81\u5505\u0003\u0002\u0002\u0002\u0c83\u5512\u0003\u0002\u0002\u0002",
+ "\u0c85\u5518\u0003\u0002\u0002\u0002\u0c87\u5522\u0003\u0002\u0002\u0002",
+ "\u0c89\u552e\u0003\u0002\u0002\u0002\u0c8b\u553f\u0003\u0002\u0002\u0002",
+ "\u0c8d\u554d\u0003\u0002\u0002\u0002\u0c8f\u555a\u0003\u0002\u0002\u0002",
+ "\u0c91\u5565\u0003\u0002\u0002\u0002\u0c93\u5576\u0003\u0002\u0002\u0002",
+ "\u0c95\u5580\u0003\u0002\u0002\u0002\u0c97\u5587\u0003\u0002\u0002\u0002",
+ "\u0c99\u5595\u0003\u0002\u0002\u0002\u0c9b\u559d\u0003\u0002\u0002\u0002",
+ "\u0c9d\u55a5\u0003\u0002\u0002\u0002\u0c9f\u55ad\u0003\u0002\u0002\u0002",
+ "\u0ca1\u55b5\u0003\u0002\u0002\u0002\u0ca3\u55bd\u0003\u0002\u0002\u0002",
+ "\u0ca5\u55c8\u0003\u0002\u0002\u0002\u0ca7\u55d0\u0003\u0002\u0002\u0002",
+ "\u0ca9\u55d8\u0003\u0002\u0002\u0002\u0cab\u55e5\u0003\u0002\u0002\u0002",
+ "\u0cad\u55ed\u0003\u0002\u0002\u0002\u0caf\u55fe\u0003\u0002\u0002\u0002",
+ "\u0cb1\u5609\u0003\u0002\u0002\u0002\u0cb3\u5610\u0003\u0002\u0002\u0002",
+ "\u0cb5\u561c\u0003\u0002\u0002\u0002\u0cb7\u5621\u0003\u0002\u0002\u0002",
+ "\u0cb9\u5629\u0003\u0002\u0002\u0002\u0cbb\u5630\u0003\u0002\u0002\u0002",
+ "\u0cbd\u563a\u0003\u0002\u0002\u0002\u0cbf\u5641\u0003\u0002\u0002\u0002",
+ "\u0cc1\u564b\u0003\u0002\u0002\u0002\u0cc3\u5658\u0003\u0002\u0002\u0002",
+ "\u0cc5\u566c\u0003\u0002\u0002\u0002\u0cc7\u5680\u0003\u0002\u0002\u0002",
+ "\u0cc9\u568c\u0003\u0002\u0002\u0002\u0ccb\u5694\u0003\u0002\u0002\u0002",
+ "\u0ccd\u569b\u0003\u0002\u0002\u0002\u0ccf\u56a8\u0003\u0002\u0002\u0002",
+ "\u0cd1\u56ae\u0003\u0002\u0002\u0002\u0cd3\u56bc\u0003\u0002\u0002\u0002",
+ "\u0cd5\u56ce\u0003\u0002\u0002\u0002\u0cd7\u56e0\u0003\u0002\u0002\u0002",
+ "\u0cd9\u56f0\u0003\u0002\u0002\u0002\u0cdb\u5701\u0003\u0002\u0002\u0002",
+ "\u0cdd\u5712\u0003\u0002\u0002\u0002\u0cdf\u5726\u0003\u0002\u0002\u0002",
+ "\u0ce1\u573b\u0003\u0002\u0002\u0002\u0ce3\u5750\u0003\u0002\u0002\u0002",
+ "\u0ce5\u5764\u0003\u0002\u0002\u0002\u0ce7\u5771\u0003\u0002\u0002\u0002",
+ "\u0ce9\u5781\u0003\u0002\u0002\u0002\u0ceb\u5790\u0003\u0002\u0002\u0002",
+ "\u0ced\u57a0\u0003\u0002\u0002\u0002\u0cef\u57ae\u0003\u0002\u0002\u0002",
+ "\u0cf1\u57bc\u0003\u0002\u0002\u0002\u0cf3\u57cb\u0003\u0002\u0002\u0002",
+ "\u0cf5\u57de\u0003\u0002\u0002\u0002\u0cf7\u57f1\u0003\u0002\u0002\u0002",
+ "\u0cf9\u5800\u0003\u0002\u0002\u0002\u0cfb\u580e\u0003\u0002\u0002\u0002",
+ "\u0cfd\u5817\u0003\u0002\u0002\u0002\u0cff\u581f\u0003\u0002\u0002\u0002",
+ "\u0d01\u5825\u0003\u0002\u0002\u0002\u0d03\u5838\u0003\u0002\u0002\u0002",
+ "\u0d05\u5844\u0003\u0002\u0002\u0002\u0d07\u5852\u0003\u0002\u0002\u0002",
+ "\u0d09\u585c\u0003\u0002\u0002\u0002\u0d0b\u5863\u0003\u0002\u0002\u0002",
+ "\u0d0d\u5872\u0003\u0002\u0002\u0002\u0d0f\u5881\u0003\u0002\u0002\u0002",
+ "\u0d11\u5891\u0003\u0002\u0002\u0002\u0d13\u589c\u0003\u0002\u0002\u0002",
+ "\u0d15\u58ab\u0003\u0002\u0002\u0002\u0d17\u58b9\u0003\u0002\u0002\u0002",
+ "\u0d19\u58c5\u0003\u0002\u0002\u0002\u0d1b\u58de\u0003\u0002\u0002\u0002",
+ "\u0d1d\u58f2\u0003\u0002\u0002\u0002\u0d1f\u58fd\u0003\u0002\u0002\u0002",
+ "\u0d21\u5909\u0003\u0002\u0002\u0002\u0d23\u5914\u0003\u0002\u0002\u0002",
+ "\u0d25\u5920\u0003\u0002\u0002\u0002\u0d27\u5935\u0003\u0002\u0002\u0002",
+ "\u0d29\u5941\u0003\u0002\u0002\u0002\u0d2b\u5950\u0003\u0002\u0002\u0002",
+ "\u0d2d\u5960\u0003\u0002\u0002\u0002\u0d2f\u596e\u0003\u0002\u0002\u0002",
+ "\u0d31\u5980\u0003\u0002\u0002\u0002\u0d33\u598b\u0003\u0002\u0002\u0002",
+ "\u0d35\u599c\u0003\u0002\u0002\u0002\u0d37\u59ae\u0003\u0002\u0002\u0002",
+ "\u0d39\u59bc\u0003\u0002\u0002\u0002\u0d3b\u59cb\u0003\u0002\u0002\u0002",
+ "\u0d3d\u59db\u0003\u0002\u0002\u0002\u0d3f\u59e6\u0003\u0002\u0002\u0002",
+ "\u0d41\u59f2\u0003\u0002\u0002\u0002\u0d43\u5a02\u0003\u0002\u0002\u0002",
+ "\u0d45\u5a1b\u0003\u0002\u0002\u0002\u0d47\u5a23\u0003\u0002\u0002\u0002",
+ "\u0d49\u5a32\u0003\u0002\u0002\u0002\u0d4b\u5a42\u0003\u0002\u0002\u0002",
+ "\u0d4d\u5a4e\u0003\u0002\u0002\u0002\u0d4f\u5a5a\u0003\u0002\u0002\u0002",
+ "\u0d51\u5a65\u0003\u0002\u0002\u0002\u0d53\u5a70\u0003\u0002\u0002\u0002",
+ "\u0d55\u5a89\u0003\u0002\u0002\u0002\u0d57\u5aa7\u0003\u0002\u0002\u0002",
+ "\u0d59\u5ac0\u0003\u0002\u0002\u0002\u0d5b\u5adc\u0003\u0002\u0002\u0002",
+ "\u0d5d\u5af2\u0003\u0002\u0002\u0002\u0d5f\u5afe\u0003\u0002\u0002\u0002",
+ "\u0d61\u5b11\u0003\u0002\u0002\u0002\u0d63\u5b24\u0003\u0002\u0002\u0002",
+ "\u0d65\u5b35\u0003\u0002\u0002\u0002\u0d67\u5b49\u0003\u0002\u0002\u0002",
+ "\u0d69\u5b5b\u0003\u0002\u0002\u0002\u0d6b\u5b67\u0003\u0002\u0002\u0002",
+ "\u0d6d\u5b72\u0003\u0002\u0002\u0002\u0d6f\u5b81\u0003\u0002\u0002\u0002",
+ "\u0d71\u5b94\u0003\u0002\u0002\u0002\u0d73\u5b9f\u0003\u0002\u0002\u0002",
+ "\u0d75\u5bb0\u0003\u0002\u0002\u0002\u0d77\u5bc1\u0003\u0002\u0002\u0002",
+ "\u0d79\u5bcc\u0003\u0002\u0002\u0002\u0d7b\u5bd7\u0003\u0002\u0002\u0002",
+ "\u0d7d\u5be7\u0003\u0002\u0002\u0002\u0d7f\u5bf6\u0003\u0002\u0002\u0002",
+ "\u0d81\u5c06\u0003\u0002\u0002\u0002\u0d83\u5c16\u0003\u0002\u0002\u0002",
+ "\u0d85\u5c25\u0003\u0002\u0002\u0002\u0d87\u5c32\u0003\u0002\u0002\u0002",
+ "\u0d89\u5c42\u0003\u0002\u0002\u0002\u0d8b\u5c50\u0003\u0002\u0002\u0002",
+ "\u0d8d\u5c5b\u0003\u0002\u0002\u0002\u0d8f\u5c6a\u0003\u0002\u0002\u0002",
+ "\u0d91\u5c77\u0003\u0002\u0002\u0002\u0d93\u5c82\u0003\u0002\u0002\u0002",
+ "\u0d95\u5c92\u0003\u0002\u0002\u0002\u0d97\u5c9e\u0003\u0002\u0002\u0002",
+ "\u0d99\u5ca9\u0003\u0002\u0002\u0002\u0d9b\u5cb5\u0003\u0002\u0002\u0002",
+ "\u0d9d\u5cc7\u0003\u0002\u0002\u0002\u0d9f\u5cd2\u0003\u0002\u0002\u0002",
+ "\u0da1\u5ce2\u0003\u0002\u0002\u0002\u0da3\u5cf1\u0003\u0002\u0002\u0002",
+ "\u0da5\u5cfc\u0003\u0002\u0002\u0002\u0da7\u5d08\u0003\u0002\u0002\u0002",
+ "\u0da9\u5d15\u0003\u0002\u0002\u0002\u0dab\u5d27\u0003\u0002\u0002\u0002",
+ "\u0dad\u5d38\u0003\u0002\u0002\u0002\u0daf\u5d46\u0003\u0002\u0002\u0002",
+ "\u0db1\u5d54\u0003\u0002\u0002\u0002\u0db3\u5d61\u0003\u0002\u0002\u0002",
+ "\u0db5\u5d6f\u0003\u0002\u0002\u0002\u0db7\u5d7e\u0003\u0002\u0002\u0002",
+ "\u0db9\u5d8a\u0003\u0002\u0002\u0002\u0dbb\u5d95\u0003\u0002\u0002\u0002",
+ "\u0dbd\u5dac\u0003\u0002\u0002\u0002\u0dbf\u5dbb\u0003\u0002\u0002\u0002",
+ "\u0dc1\u5dca\u0003\u0002\u0002\u0002\u0dc3\u5dd8\u0003\u0002\u0002\u0002",
+ "\u0dc5\u5de9\u0003\u0002\u0002\u0002\u0dc7\u5df8\u0003\u0002\u0002\u0002",
+ "\u0dc9\u5e0b\u0003\u0002\u0002\u0002\u0dcb\u5e21\u0003\u0002\u0002\u0002",
+ "\u0dcd\u5e35\u0003\u0002\u0002\u0002\u0dcf\u5e46\u0003\u0002\u0002\u0002",
+ "\u0dd1\u5e59\u0003\u0002\u0002\u0002\u0dd3\u5e6d\u0003\u0002\u0002\u0002",
+ "\u0dd5\u5e81\u0003\u0002\u0002\u0002\u0dd7\u5e96\u0003\u0002\u0002\u0002",
+ "\u0dd9\u5ea7\u0003\u0002\u0002\u0002\u0ddb\u5eb6\u0003\u0002\u0002\u0002",
+ "\u0ddd\u5ec6\u0003\u0002\u0002\u0002\u0ddf\u5ed4\u0003\u0002\u0002\u0002",
+ "\u0de1\u5ee2\u0003\u0002\u0002\u0002\u0de3\u5ef0\u0003\u0002\u0002\u0002",
+ "\u0de5\u5eff\u0003\u0002\u0002\u0002\u0de7\u5f0e\u0003\u0002\u0002\u0002",
+ "\u0de9\u5f15\u0003\u0002\u0002\u0002\u0deb\u5f22\u0003\u0002\u0002\u0002",
+ "\u0ded\u5f2d\u0003\u0002\u0002\u0002\u0def\u5f3a\u0003\u0002\u0002\u0002",
+ "\u0df1\u5f49\u0003\u0002\u0002\u0002\u0df3\u5f59\u0003\u0002\u0002\u0002",
+ "\u0df5\u5f65\u0003\u0002\u0002\u0002\u0df7\u5f74\u0003\u0002\u0002\u0002",
+ "\u0df9\u5f7f\u0003\u0002\u0002\u0002\u0dfb\u5f93\u0003\u0002\u0002\u0002",
+ "\u0dfd\u5fa7\u0003\u0002\u0002\u0002\u0dff\u5fb4\u0003\u0002\u0002\u0002",
+ "\u0e01\u5fcb\u0003\u0002\u0002\u0002\u0e03\u5fe0\u0003\u0002\u0002\u0002",
+ "\u0e05\u5ff9\u0003\u0002\u0002\u0002\u0e07\u600f\u0003\u0002\u0002\u0002",
+ "\u0e09\u6027\u0003\u0002\u0002\u0002\u0e0b\u603e\u0003\u0002\u0002\u0002",
+ "\u0e0d\u6053\u0003\u0002\u0002\u0002\u0e0f\u6069\u0003\u0002\u0002\u0002",
+ "\u0e11\u607e\u0003\u0002\u0002\u0002\u0e13\u608c\u0003\u0002\u0002\u0002",
+ "\u0e15\u609a\u0003\u0002\u0002\u0002\u0e17\u60ab\u0003\u0002\u0002\u0002",
+ "\u0e19\u60bb\u0003\u0002\u0002\u0002\u0e1b\u60ca\u0003\u0002\u0002\u0002",
+ "\u0e1d\u60dc\u0003\u0002\u0002\u0002\u0e1f\u60ea\u0003\u0002\u0002\u0002",
+ "\u0e21\u60fd\u0003\u0002\u0002\u0002\u0e23\u610d\u0003\u0002\u0002\u0002",
+ "\u0e25\u611b\u0003\u0002\u0002\u0002\u0e27\u6129\u0003\u0002\u0002\u0002",
+ "\u0e29\u6136\u0003\u0002\u0002\u0002\u0e2b\u6143\u0003\u0002\u0002\u0002",
+ "\u0e2d\u6156\u0003\u0002\u0002\u0002\u0e2f\u6160\u0003\u0002\u0002\u0002",
+ "\u0e31\u616d\u0003\u0002\u0002\u0002\u0e33\u617a\u0003\u0002\u0002\u0002",
+ "\u0e35\u6187\u0003\u0002\u0002\u0002\u0e37\u6196\u0003\u0002\u0002\u0002",
+ "\u0e39\u61a1\u0003\u0002\u0002\u0002\u0e3b\u61ab\u0003\u0002\u0002\u0002",
+ "\u0e3d\u61bb\u0003\u0002\u0002\u0002\u0e3f\u61ca\u0003\u0002\u0002\u0002",
+ "\u0e41\u61d8\u0003\u0002\u0002\u0002\u0e43\u61e6\u0003\u0002\u0002\u0002",
+ "\u0e45\u61f4\u0003\u0002\u0002\u0002\u0e47\u6200\u0003\u0002\u0002\u0002",
+ "\u0e49\u620d\u0003\u0002\u0002\u0002\u0e4b\u621a\u0003\u0002\u0002\u0002",
+ "\u0e4d\u6226\u0003\u0002\u0002\u0002\u0e4f\u6234\u0003\u0002\u0002\u0002",
+ "\u0e51\u6242\u0003\u0002\u0002\u0002\u0e53\u624d\u0003\u0002\u0002\u0002",
+ "\u0e55\u625b\u0003\u0002\u0002\u0002\u0e57\u626d\u0003\u0002\u0002\u0002",
+ "\u0e59\u6279\u0003\u0002\u0002\u0002\u0e5b\u6286\u0003\u0002\u0002\u0002",
+ "\u0e5d\u6296\u0003\u0002\u0002\u0002\u0e5f\u62a6\u0003\u0002\u0002\u0002",
+ "\u0e61\u62b2\u0003\u0002\u0002\u0002\u0e63\u62c3\u0003\u0002\u0002\u0002",
+ "\u0e65\u62d0\u0003\u0002\u0002\u0002\u0e67\u62dd\u0003\u0002\u0002\u0002",
+ "\u0e69\u62ea\u0003\u0002\u0002\u0002\u0e6b\u62f8\u0003\u0002\u0002\u0002",
+ "\u0e6d\u6303\u0003\u0002\u0002\u0002\u0e6f\u6314\u0003\u0002\u0002\u0002",
+ "\u0e71\u6324\u0003\u0002\u0002\u0002\u0e73\u6331\u0003\u0002\u0002\u0002",
+ "\u0e75\u6340\u0003\u0002\u0002\u0002\u0e77\u6350\u0003\u0002\u0002\u0002",
+ "\u0e79\u6360\u0003\u0002\u0002\u0002\u0e7b\u636c\u0003\u0002\u0002\u0002",
+ "\u0e7d\u637a\u0003\u0002\u0002\u0002\u0e7f\u638a\u0003\u0002\u0002\u0002",
+ "\u0e81\u639a\u0003\u0002\u0002\u0002\u0e83\u63ab\u0003\u0002\u0002\u0002",
+ "\u0e85\u63b9\u0003\u0002\u0002\u0002\u0e87\u63c7\u0003\u0002\u0002\u0002",
+ "\u0e89\u63d5\u0003\u0002\u0002\u0002\u0e8b\u63e5\u0003\u0002\u0002\u0002",
+ "\u0e8d\u63f3\u0003\u0002\u0002\u0002\u0e8f\u6401\u0003\u0002\u0002\u0002",
+ "\u0e91\u640f\u0003\u0002\u0002\u0002\u0e93\u641d\u0003\u0002\u0002\u0002",
+ "\u0e95\u642b\u0003\u0002\u0002\u0002\u0e97\u6439\u0003\u0002\u0002\u0002",
+ "\u0e99\u6448\u0003\u0002\u0002\u0002\u0e9b\u6456\u0003\u0002\u0002\u0002",
+ "\u0e9d\u6465\u0003\u0002\u0002\u0002\u0e9f\u6474\u0003\u0002\u0002\u0002",
+ "\u0ea1\u6482\u0003\u0002\u0002\u0002\u0ea3\u6490\u0003\u0002\u0002\u0002",
+ "\u0ea5\u649e\u0003\u0002\u0002\u0002\u0ea7\u64ac\u0003\u0002\u0002\u0002",
+ "\u0ea9\u64ba\u0003\u0002\u0002\u0002\u0eab\u64c8\u0003\u0002\u0002\u0002",
+ "\u0ead\u64d6\u0003\u0002\u0002\u0002\u0eaf\u64e3\u0003\u0002\u0002\u0002",
+ "\u0eb1\u64f1\u0003\u0002\u0002\u0002\u0eb3\u64ff\u0003\u0002\u0002\u0002",
+ "\u0eb5\u6511\u0003\u0002\u0002\u0002\u0eb7\u651f\u0003\u0002\u0002\u0002",
+ "\u0eb9\u652f\u0003\u0002\u0002\u0002\u0ebb\u653e\u0003\u0002\u0002\u0002",
+ "\u0ebd\u654a\u0003\u0002\u0002\u0002\u0ebf\u655b\u0003\u0002\u0002\u0002",
+ "\u0ec1\u6569\u0003\u0002\u0002\u0002\u0ec3\u6579\u0003\u0002\u0002\u0002",
+ "\u0ec5\u6587\u0003\u0002\u0002\u0002\u0ec7\u6593\u0003\u0002\u0002\u0002",
+ "\u0ec9\u65a0\u0003\u0002\u0002\u0002\u0ecb\u65ad\u0003\u0002\u0002\u0002",
+ "\u0ecd\u65bf\u0003\u0002\u0002\u0002\u0ecf\u65d0\u0003\u0002\u0002\u0002",
+ "\u0ed1\u65df\u0003\u0002\u0002\u0002\u0ed3\u65ef\u0003\u0002\u0002\u0002",
+ "\u0ed5\u65fd\u0003\u0002\u0002\u0002\u0ed7\u660d\u0003\u0002\u0002\u0002",
+ "\u0ed9\u661d\u0003\u0002\u0002\u0002\u0edb\u662c\u0003\u0002\u0002\u0002",
+ "\u0edd\u663a\u0003\u0002\u0002\u0002\u0edf\u664c\u0003\u0002\u0002\u0002",
+ "\u0ee1\u6658\u0003\u0002\u0002\u0002\u0ee3\u6668\u0003\u0002\u0002\u0002",
+ "\u0ee5\u6678\u0003\u0002\u0002\u0002\u0ee7\u6689\u0003\u0002\u0002\u0002",
+ "\u0ee9\u669c\u0003\u0002\u0002\u0002\u0eeb\u66aa\u0003\u0002\u0002\u0002",
+ "\u0eed\u66b5\u0003\u0002\u0002\u0002\u0eef\u66bc\u0003\u0002\u0002\u0002",
+ "\u0ef1\u66c8\u0003\u0002\u0002\u0002\u0ef3\u66ce\u0003\u0002\u0002\u0002",
+ "\u0ef5\u66d4\u0003\u0002\u0002\u0002\u0ef7\u66d8\u0003\u0002\u0002\u0002",
+ "\u0ef9\u66dd\u0003\u0002\u0002\u0002\u0efb\u66e1\u0003\u0002\u0002\u0002",
+ "\u0efd\u66f5\u0003\u0002\u0002\u0002\u0eff\u66fe\u0003\u0002\u0002\u0002",
+ "\u0f01\u6707\u0003\u0002\u0002\u0002\u0f03\u6711\u0003\u0002\u0002\u0002",
+ "\u0f05\u671c\u0003\u0002\u0002\u0002\u0f07\u6721\u0003\u0002\u0002\u0002",
+ "\u0f09\u6726\u0003\u0002\u0002\u0002\u0f0b\u672b\u0003\u0002\u0002\u0002",
+ "\u0f0d\u6730\u0003\u0002\u0002\u0002\u0f0f\u6734\u0003\u0002\u0002\u0002",
+ "\u0f11\u673b\u0003\u0002\u0002\u0002\u0f13\u6743\u0003\u0002\u0002\u0002",
+ "\u0f15\u6748\u0003\u0002\u0002\u0002\u0f17\u674d\u0003\u0002\u0002\u0002",
+ "\u0f19\u6755\u0003\u0002\u0002\u0002\u0f1b\u6771\u0003\u0002\u0002\u0002",
+ "\u0f1d\u677b\u0003\u0002\u0002\u0002\u0f1f\u6796\u0003\u0002\u0002\u0002",
+ "\u0f21\u67ae\u0003\u0002\u0002\u0002\u0f23\u67b4\u0003\u0002\u0002\u0002",
+ "\u0f25\u67b9\u0003\u0002\u0002\u0002\u0f27\u67c2\u0003\u0002\u0002\u0002",
+ "\u0f29\u67d0\u0003\u0002\u0002\u0002\u0f2b\u67de\u0003\u0002\u0002\u0002",
+ "\u0f2d\u67ee\u0003\u0002\u0002\u0002\u0f2f\u67fe\u0003\u0002\u0002\u0002",
+ "\u0f31\u680e\u0003\u0002\u0002\u0002\u0f33\u6818\u0003\u0002\u0002\u0002",
+ "\u0f35\u681f\u0003\u0002\u0002\u0002\u0f37\u6827\u0003\u0002\u0002\u0002",
+ "\u0f39\u6830\u0003\u0002\u0002\u0002\u0f3b\u6841\u0003\u0002\u0002\u0002",
+ "\u0f3d\u6851\u0003\u0002\u0002\u0002\u0f3f\u6859\u0003\u0002\u0002\u0002",
+ "\u0f41\u6861\u0003\u0002\u0002\u0002\u0f43\u686f\u0003\u0002\u0002\u0002",
+ "\u0f45\u6876\u0003\u0002\u0002\u0002\u0f47\u6884\u0003\u0002\u0002\u0002",
+ "\u0f49\u688d\u0003\u0002\u0002\u0002\u0f4b\u6896\u0003\u0002\u0002\u0002",
+ "\u0f4d\u68a0\u0003\u0002\u0002\u0002\u0f4f\u68a9\u0003\u0002\u0002\u0002",
+ "\u0f51\u68b8\u0003\u0002\u0002\u0002\u0f53\u68c5\u0003\u0002\u0002\u0002",
+ "\u0f55\u68d5\u0003\u0002\u0002\u0002\u0f57\u68dd\u0003\u0002\u0002\u0002",
+ "\u0f59\u68e8\u0003\u0002\u0002\u0002\u0f5b\u68eb\u0003\u0002\u0002\u0002",
+ "\u0f5d\u68f9\u0003\u0002\u0002\u0002\u0f5f\u68ff\u0003\u0002\u0002\u0002",
+ "\u0f61\u6907\u0003\u0002\u0002\u0002\u0f63\u6910\u0003\u0002\u0002\u0002",
+ "\u0f65\u6919\u0003\u0002\u0002\u0002\u0f67\u6925\u0003\u0002\u0002\u0002",
+ "\u0f69\u693c\u0003\u0002\u0002\u0002\u0f6b\u6949\u0003\u0002\u0002\u0002",
+ "\u0f6d\u6954\u0003\u0002\u0002\u0002\u0f6f\u695e\u0003\u0002\u0002\u0002",
+ "\u0f71\u696a\u0003\u0002\u0002\u0002\u0f73\u6970\u0003\u0002\u0002\u0002",
+ "\u0f75\u6979\u0003\u0002\u0002\u0002\u0f77\u6981\u0003\u0002\u0002\u0002",
+ "\u0f79\u6986\u0003\u0002\u0002\u0002\u0f7b\u698f\u0003\u0002\u0002\u0002",
+ "\u0f7d\u6995\u0003\u0002\u0002\u0002\u0f7f\u699d\u0003\u0002\u0002\u0002",
+ "\u0f81\u69a3\u0003\u0002\u0002\u0002\u0f83\u69aa\u0003\u0002\u0002\u0002",
+ "\u0f85\u69ad\u0003\u0002\u0002\u0002\u0f87\u69b3\u0003\u0002\u0002\u0002",
+ "\u0f89\u69b8\u0003\u0002\u0002\u0002\u0f8b\u69c2\u0003\u0002\u0002\u0002",
+ "\u0f8d\u69c6\u0003\u0002\u0002\u0002\u0f8f\u69ca\u0003\u0002\u0002\u0002",
+ "\u0f91\u69cf\u0003\u0002\u0002\u0002\u0f93\u69d3\u0003\u0002\u0002\u0002",
+ "\u0f95\u69de\u0003\u0002\u0002\u0002\u0f97\u69e8\u0003\u0002\u0002\u0002",
+ "\u0f99\u69f0\u0003\u0002\u0002\u0002\u0f9b\u69fe\u0003\u0002\u0002\u0002",
+ "\u0f9d\u6a04\u0003\u0002\u0002\u0002\u0f9f\u6a09\u0003\u0002\u0002\u0002",
+ "\u0fa1\u6a10\u0003\u0002\u0002\u0002\u0fa3\u6a18\u0003\u0002\u0002\u0002",
+ "\u0fa5\u6a1e\u0003\u0002\u0002\u0002\u0fa7\u6a25\u0003\u0002\u0002\u0002",
+ "\u0fa9\u6a2c\u0003\u0002\u0002\u0002\u0fab\u6a36\u0003\u0002\u0002\u0002",
+ "\u0fad\u6a3d\u0003\u0002\u0002\u0002\u0faf\u6a44\u0003\u0002\u0002\u0002",
+ "\u0fb1\u6a4e\u0003\u0002\u0002\u0002\u0fb3\u6a6a\u0003\u0002\u0002\u0002",
+ "\u0fb5\u6a88\u0003\u0002\u0002\u0002\u0fb7\u6a9a\u0003\u0002\u0002\u0002",
+ "\u0fb9\u6aa1\u0003\u0002\u0002\u0002\u0fbb\u6aaa\u0003\u0002\u0002\u0002",
+ "\u0fbd\u6ab2\u0003\u0002\u0002\u0002\u0fbf\u6ab9\u0003\u0002\u0002\u0002",
+ "\u0fc1\u6ac5\u0003\u0002\u0002\u0002\u0fc3\u6acf\u0003\u0002\u0002\u0002",
+ "\u0fc5\u6add\u0003\u0002\u0002\u0002\u0fc7\u6aea\u0003\u0002\u0002\u0002",
+ "\u0fc9\u6af6\u0003\u0002\u0002\u0002\u0fcb\u6afc\u0003\u0002\u0002\u0002",
+ "\u0fcd\u6b05\u0003\u0002\u0002\u0002\u0fcf\u6b0c\u0003\u0002\u0002\u0002",
+ "\u0fd1\u6b16\u0003\u0002\u0002\u0002\u0fd3\u6b1e\u0003\u0002\u0002\u0002",
+ "\u0fd5\u6b25\u0003\u0002\u0002\u0002\u0fd7\u6b2f\u0003\u0002\u0002\u0002",
+ "\u0fd9\u6b3b\u0003\u0002\u0002\u0002\u0fdb\u6b49\u0003\u0002\u0002\u0002",
+ "\u0fdd\u6b51\u0003\u0002\u0002\u0002\u0fdf\u6b57\u0003\u0002\u0002\u0002",
+ "\u0fe1\u6b5e\u0003\u0002\u0002\u0002\u0fe3\u6b65\u0003\u0002\u0002\u0002",
+ "\u0fe5\u6b6c\u0003\u0002\u0002\u0002\u0fe7\u6b72\u0003\u0002\u0002\u0002",
+ "\u0fe9\u6b7b\u0003\u0002\u0002\u0002\u0feb\u6b86\u0003\u0002\u0002\u0002",
+ "\u0fed\u6b8f\u0003\u0002\u0002\u0002\u0fef\u6ba4\u0003\u0002\u0002\u0002",
+ "\u0ff1\u6bbe\u0003\u0002\u0002\u0002\u0ff3\u6bc7\u0003\u0002\u0002\u0002",
+ "\u0ff5\u6bdd\u0003\u0002\u0002\u0002\u0ff7\u6bf3\u0003\u0002\u0002\u0002",
+ "\u0ff9\u6c07\u0003\u0002\u0002\u0002\u0ffb\u6c11\u0003\u0002\u0002\u0002",
+ "\u0ffd\u6c18\u0003\u0002\u0002\u0002\u0fff\u6c2a\u0003\u0002\u0002\u0002",
+ "\u1001\u6c3f\u0003\u0002\u0002\u0002\u1003\u6c49\u0003\u0002\u0002\u0002",
+ "\u1005\u6c56\u0003\u0002\u0002\u0002\u1007\u6c5e\u0003\u0002\u0002\u0002",
+ "\u1009\u6c68\u0003\u0002\u0002\u0002\u100b\u6c78\u0003\u0002\u0002\u0002",
+ "\u100d\u6c7e\u0003\u0002\u0002\u0002\u100f\u6c8f\u0003\u0002\u0002\u0002",
+ "\u1011\u6c94\u0003\u0002\u0002\u0002\u1013\u6c9d\u0003\u0002\u0002\u0002",
+ "\u1015\u6cb1\u0003\u0002\u0002\u0002\u1017\u6cc3\u0003\u0002\u0002\u0002",
+ "\u1019\u6cc7\u0003\u0002\u0002\u0002\u101b\u6cde\u0003\u0002\u0002\u0002",
+ "\u101d\u6cf1\u0003\u0002\u0002\u0002\u101f\u6d01\u0003\u0002\u0002\u0002",
+ "\u1021\u6d07\u0003\u0002\u0002\u0002\u1023\u6d0f\u0003\u0002\u0002\u0002",
+ "\u1025\u6d17\u0003\u0002\u0002\u0002\u1027\u6d1d\u0003\u0002\u0002\u0002",
+ "\u1029\u6d22\u0003\u0002\u0002\u0002\u102b\u6d25\u0003\u0002\u0002\u0002",
+ "\u102d\u6d28\u0003\u0002\u0002\u0002\u102f\u6d31\u0003\u0002\u0002\u0002",
+ "\u1031\u6d3c\u0003\u0002\u0002\u0002\u1033\u6d4b\u0003\u0002\u0002\u0002",
+ "\u1035\u6d52\u0003\u0002\u0002\u0002\u1037\u6d58\u0003\u0002\u0002\u0002",
+ "\u1039\u6d61\u0003\u0002\u0002\u0002\u103b\u6d69\u0003\u0002\u0002\u0002",
+ "\u103d\u6d72\u0003\u0002\u0002\u0002\u103f\u6d7a\u0003\u0002\u0002\u0002",
+ "\u1041\u6d82\u0003\u0002\u0002\u0002\u1043\u6d89\u0003\u0002\u0002\u0002",
+ "\u1045\u6d92\u0003\u0002\u0002\u0002\u1047\u6d9a\u0003\u0002\u0002\u0002",
+ "\u1049\u6dac\u0003\u0002\u0002\u0002\u104b\u6db8\u0003\u0002\u0002\u0002",
+ "\u104d\u6dce\u0003\u0002\u0002\u0002\u104f\u6de4\u0003\u0002\u0002\u0002",
+ "\u1051\u6df5\u0003\u0002\u0002\u0002\u1053\u6dfe\u0003\u0002\u0002\u0002",
+ "\u1055\u6e05\u0003\u0002\u0002\u0002\u1057\u6e10\u0003\u0002\u0002\u0002",
+ "\u1059\u6e20\u0003\u0002\u0002\u0002\u105b\u6e31\u0003\u0002\u0002\u0002",
+ "\u105d\u6e44\u0003\u0002\u0002\u0002\u105f\u6e56\u0003\u0002\u0002\u0002",
+ "\u1061\u6e69\u0003\u0002\u0002\u0002\u1063\u6e72\u0003\u0002\u0002\u0002",
+ "\u1065\u6e7f\u0003\u0002\u0002\u0002\u1067\u6e87\u0003\u0002\u0002\u0002",
+ "\u1069\u6e8c\u0003\u0002\u0002\u0002\u106b\u6e96\u0003\u0002\u0002\u0002",
+ "\u106d\u6e9e\u0003\u0002\u0002\u0002\u106f\u6ea9\u0003\u0002\u0002\u0002",
+ "\u1071\u6eb1\u0003\u0002\u0002\u0002\u1073\u6eb8\u0003\u0002\u0002\u0002",
+ "\u1075\u6ebe\u0003\u0002\u0002\u0002\u1077\u6ec3\u0003\u0002\u0002\u0002",
+ "\u1079\u6eca\u0003\u0002\u0002\u0002\u107b\u6ed2\u0003\u0002\u0002\u0002",
+ "\u107d\u6ed8\u0003\u0002\u0002\u0002\u107f\u6edd\u0003\u0002\u0002\u0002",
+ "\u1081\u6ee8\u0003\u0002\u0002\u0002\u1083\u6ef1\u0003\u0002\u0002\u0002",
+ "\u1085\u6ef6\u0003\u0002\u0002\u0002\u1087\u6efc\u0003\u0002\u0002\u0002",
+ "\u1089\u6f02\u0003\u0002\u0002\u0002\u108b\u6f0d\u0003\u0002\u0002\u0002",
+ "\u108d\u6f1a\u0003\u0002\u0002\u0002\u108f\u6f21\u0003\u0002\u0002\u0002",
+ "\u1091\u6f29\u0003\u0002\u0002\u0002\u1093\u6f34\u0003\u0002\u0002\u0002",
+ "\u1095\u6f39\u0003\u0002\u0002\u0002\u1097\u6f3e\u0003\u0002\u0002\u0002",
+ "\u1099\u6f46\u0003\u0002\u0002\u0002\u109b\u6f4e\u0003\u0002\u0002\u0002",
+ "\u109d\u6f54\u0003\u0002\u0002\u0002\u109f\u6f68\u0003\u0002\u0002\u0002",
+ "\u10a1\u6f6c\u0003\u0002\u0002\u0002\u10a3\u6f78\u0003\u0002\u0002\u0002",
+ "\u10a5\u6f7c\u0003\u0002\u0002\u0002\u10a7\u6f87\u0003\u0002\u0002\u0002",
+ "\u10a9\u6f8e\u0003\u0002\u0002\u0002\u10ab\u6f9c\u0003\u0002\u0002\u0002",
+ "\u10ad\u6fa4\u0003\u0002\u0002\u0002\u10af\u6fad\u0003\u0002\u0002\u0002",
+ "\u10b1\u6fba\u0003\u0002\u0002\u0002\u10b3\u6fc5\u0003\u0002\u0002\u0002",
+ "\u10b5\u6fcf\u0003\u0002\u0002\u0002\u10b7\u6fd7\u0003\u0002\u0002\u0002",
+ "\u10b9\u6fe8\u0003\u0002\u0002\u0002\u10bb\u6ff3\u0003\u0002\u0002\u0002",
+ "\u10bd\u6ffe\u0003\u0002\u0002\u0002\u10bf\u7008\u0003\u0002\u0002\u0002",
+ "\u10c1\u7012\u0003\u0002\u0002\u0002\u10c3\u701b\u0003\u0002\u0002\u0002",
+ "\u10c5\u7036\u0003\u0002\u0002\u0002\u10c7\u7047\u0003\u0002\u0002\u0002",
+ "\u10c9\u705c\u0003\u0002\u0002\u0002\u10cb\u7066\u0003\u0002\u0002\u0002",
+ "\u10cd\u7071\u0003\u0002\u0002\u0002\u10cf\u707f\u0003\u0002\u0002\u0002",
+ "\u10d1\u7088\u0003\u0002\u0002\u0002\u10d3\u7091\u0003\u0002\u0002\u0002",
+ "\u10d5\u7097\u0003\u0002\u0002\u0002\u10d7\u70a3\u0003\u0002\u0002\u0002",
+ "\u10d9\u70ac\u0003\u0002\u0002\u0002\u10db\u70b4\u0003\u0002\u0002\u0002",
+ "\u10dd\u70be\u0003\u0002\u0002\u0002\u10df\u70cb\u0003\u0002\u0002\u0002",
+ "\u10e1\u70d4\u0003\u0002\u0002\u0002\u10e3\u70e5\u0003\u0002\u0002\u0002",
+ "\u10e5\u70f2\u0003\u0002\u0002\u0002\u10e7\u70fa\u0003\u0002\u0002\u0002",
+ "\u10e9\u70fe\u0003\u0002\u0002\u0002\u10eb\u7109\u0003\u0002\u0002\u0002",
+ "\u10ed\u7118\u0003\u0002\u0002\u0002\u10ef\u711b\u0003\u0002\u0002\u0002",
+ "\u10f1\u7126\u0003\u0002\u0002\u0002\u10f3\u712c\u0003\u0002\u0002\u0002",
+ "\u10f5\u7131\u0003\u0002\u0002\u0002\u10f7\u7135\u0003\u0002\u0002\u0002",
+ "\u10f9\u714e\u0003\u0002\u0002\u0002\u10fb\u7156\u0003\u0002\u0002\u0002",
+ "\u10fd\u715b\u0003\u0002\u0002\u0002\u10ff\u7166\u0003\u0002\u0002\u0002",
+ "\u1101\u7178\u0003\u0002\u0002\u0002\u1103\u7188\u0003\u0002\u0002\u0002",
+ "\u1105\u719b\u0003\u0002\u0002\u0002\u1107\u71b2\u0003\u0002\u0002\u0002",
+ "\u1109\u71c1\u0003\u0002\u0002\u0002\u110b\u71cb\u0003\u0002\u0002\u0002",
+ "\u110d\u71d6\u0003\u0002\u0002\u0002\u110f\u71de\u0003\u0002\u0002\u0002",
+ "\u1111\u71eb\u0003\u0002\u0002\u0002\u1113\u71fb\u0003\u0002\u0002\u0002",
+ "\u1115\u720b\u0003\u0002\u0002\u0002\u1117\u7210\u0003\u0002\u0002\u0002",
+ "\u1119\u7214\u0003\u0002\u0002\u0002\u111b\u7219\u0003\u0002\u0002\u0002",
+ "\u111d\u7220\u0003\u0002\u0002\u0002\u111f\u7227\u0003\u0002\u0002\u0002",
+ "\u1121\u722b\u0003\u0002\u0002\u0002\u1123\u7230\u0003\u0002\u0002\u0002",
+ "\u1125\u7234\u0003\u0002\u0002\u0002\u1127\u723b\u0003\u0002\u0002\u0002",
+ "\u1129\u723f\u0003\u0002\u0002\u0002\u112b\u7245\u0003\u0002\u0002\u0002",
+ "\u112d\u7249\u0003\u0002\u0002\u0002\u112f\u7259\u0003\u0002\u0002\u0002",
+ "\u1131\u725f\u0003\u0002\u0002\u0002\u1133\u7265\u0003\u0002\u0002\u0002",
+ "\u1135\u7270\u0003\u0002\u0002\u0002\u1137\u7277\u0003\u0002\u0002\u0002",
+ "\u1139\u727f\u0003\u0002\u0002\u0002\u113b\u7284\u0003\u0002\u0002\u0002",
+ "\u113d\u7288\u0003\u0002\u0002\u0002\u113f\u728f\u0003\u0002\u0002\u0002",
+ "\u1141\u7294\u0003\u0002\u0002\u0002\u1143\u729d\u0003\u0002\u0002\u0002",
+ "\u1145\u72a3\u0003\u0002\u0002\u0002\u1147\u72ac\u0003\u0002\u0002\u0002",
+ "\u1149\u72b4\u0003\u0002\u0002\u0002\u114b\u72c1\u0003\u0002\u0002\u0002",
+ "\u114d\u72ce\u0003\u0002\u0002\u0002\u114f\u72db\u0003\u0002\u0002\u0002",
+ "\u1151\u72de\u0003\u0002\u0002\u0002\u1153\u72e1\u0003\u0002\u0002\u0002",
+ "\u1155\u72e5\u0003\u0002\u0002\u0002\u1157\u72f7\u0003\u0002\u0002\u0002",
+ "\u1159\u7303\u0003\u0002\u0002\u0002\u115b\u7313\u0003\u0002\u0002\u0002",
+ "\u115d\u731c\u0003\u0002\u0002\u0002\u115f\u7325\u0003\u0002\u0002\u0002",
+ "\u1161\u732e\u0003\u0002\u0002\u0002\u1163\u7337\u0003\u0002\u0002\u0002",
+ "\u1165\u7340\u0003\u0002\u0002\u0002\u1167\u7349\u0003\u0002\u0002\u0002",
+ "\u1169\u7352\u0003\u0002\u0002\u0002\u116b\u735b\u0003\u0002\u0002\u0002",
+ "\u116d\u7365\u0003\u0002\u0002\u0002\u116f\u7367\u0003\u0002\u0002\u0002",
+ "\u1171\u7369\u0003\u0002\u0002\u0002\u1173\u736b\u0003\u0002\u0002\u0002",
+ "\u1175\u736d\u0003\u0002\u0002\u0002\u1177\u7370\u0003\u0002\u0002\u0002",
+ "\u1179\u7372\u0003\u0002\u0002\u0002\u117b\u7374\u0003\u0002\u0002\u0002",
+ "\u117d\u7376\u0003\u0002\u0002\u0002\u117f\u7378\u0003\u0002\u0002\u0002",
+ "\u1181\u737a\u0003\u0002\u0002\u0002\u1183\u737c\u0003\u0002\u0002\u0002",
+ "\u1185\u738d\u0003\u0002\u0002\u0002\u1187\u7397\u0003\u0002\u0002\u0002",
+ "\u1189\u7399\u0003\u0002\u0002\u0002\u118b\u739b\u0003\u0002\u0002\u0002",
+ "\u118d\u739d\u0003\u0002\u0002\u0002\u118f\u739f\u0003\u0002\u0002\u0002",
+ "\u1191\u73a1\u0003\u0002\u0002\u0002\u1193\u73a3\u0003\u0002\u0002\u0002",
+ "\u1195\u73a5\u0003\u0002\u0002\u0002\u1197\u73a7\u0003\u0002\u0002\u0002",
+ "\u1199\u73a9\u0003\u0002\u0002\u0002\u119b\u73ab\u0003\u0002\u0002\u0002",
+ "\u119d\u73ad\u0003\u0002\u0002\u0002\u119f\u73af\u0003\u0002\u0002\u0002",
+ "\u11a1\u73b1\u0003\u0002\u0002\u0002\u11a3\u73be\u0003\u0002\u0002\u0002",
+ "\u11a5\u73cc\u0003\u0002\u0002\u0002\u11a7\u73e3\u0003\u0002\u0002\u0002",
+ "\u11a9\u73f8\u0003\u0002\u0002\u0002\u11ab\u7405\u0003\u0002\u0002\u0002",
+ "\u11ad\u740e\u0003\u0002\u0002\u0002\u11af\u7416\u0003\u0002\u0002\u0002",
+ "\u11b1\u7418\u0003\u0002\u0002\u0002\u11b3\u741a\u0003\u0002\u0002\u0002",
+ "\u11b5\u741f\u0003\u0002\u0002\u0002\u11b7\u742b\u0003\u0002\u0002\u0002",
+ "\u11b9\u742f\u0003\u0002\u0002\u0002\u11bb\u11bc\u0007C\u0002\u0002",
+ "\u11bc\u11bd\u0007D\u0002\u0002\u11bd\u11be\u0007Q\u0002\u0002\u11be",
+ "\u11bf\u0007T\u0002\u0002\u11bf\u11c0\u0007V\u0002\u0002\u11c0\u0004",
+ "\u0003\u0002\u0002\u0002\u11c1\u11c2\u0007C\u0002\u0002\u11c2\u11c3",
+ "\u0007D\u0002\u0002\u11c3\u11c4\u0007U\u0002\u0002\u11c4\u0006\u0003",
+ "\u0002\u0002\u0002\u11c5\u11c6\u0007C\u0002\u0002\u11c6\u11c7\u0007",
+ "E\u0002\u0002\u11c7\u11c8\u0007E\u0002\u0002\u11c8\u11c9\u0007G\u0002",
+ "\u0002\u11c9\u11ca\u0007U\u0002\u0002\u11ca\u11cb\u0007U\u0002\u0002",
+ "\u11cb\b\u0003\u0002\u0002\u0002\u11cc\u11cd\u0007C\u0002\u0002\u11cd",
+ "\u11ce\u0007E\u0002\u0002\u11ce\u11cf\u0007E\u0002\u0002\u11cf\u11d0",
+ "\u0007G\u0002\u0002\u11d0\u11d1\u0007U\u0002\u0002\u11d1\u11d2\u0007",
+ "U\u0002\u0002\u11d2\u11d3\u0007G\u0002\u0002\u11d3\u11d4\u0007F\u0002",
+ "\u0002\u11d4\n\u0003\u0002\u0002\u0002\u11d5\u11d6\u0007C\u0002\u0002",
+ "\u11d6\u11d7\u0007E\u0002\u0002\u11d7\u11d8\u0007E\u0002\u0002\u11d8",
+ "\u11d9\u0007Q\u0002\u0002\u11d9\u11da\u0007W\u0002\u0002\u11da\u11db",
+ "\u0007P\u0002\u0002\u11db\u11dc\u0007V\u0002\u0002\u11dc\f\u0003\u0002",
+ "\u0002\u0002\u11dd\u11de\u0007C\u0002\u0002\u11de\u11df\u0007E\u0002",
+ "\u0002\u11df\u11e0\u0007N\u0002\u0002\u11e0\u000e\u0003\u0002\u0002",
+ "\u0002\u11e1\u11e2\u0007C\u0002\u0002\u11e2\u11e3\u0007E\u0002\u0002",
+ "\u11e3\u11e4\u0007Q\u0002\u0002\u11e4\u11e5\u0007U\u0002\u0002\u11e5",
+ "\u0010\u0003\u0002\u0002\u0002\u11e6\u11e7\u0007C\u0002\u0002\u11e7",
+ "\u11e8\u0007E\u0002\u0002\u11e8\u11e9\u0007V\u0002\u0002\u11e9\u11ea",
+ "\u0007K\u0002\u0002\u11ea\u11eb\u0007Q\u0002\u0002\u11eb\u11ec\u0007",
+ "P\u0002\u0002\u11ec\u0012\u0003\u0002\u0002\u0002\u11ed\u11ee\u0007",
+ "C\u0002\u0002\u11ee\u11ef\u0007E\u0002\u0002\u11ef\u11f0\u0007V\u0002",
+ "\u0002\u11f0\u11f1\u0007K\u0002\u0002\u11f1\u11f2\u0007Q\u0002\u0002",
+ "\u11f2\u11f3\u0007P\u0002\u0002\u11f3\u11f4\u0007U\u0002\u0002\u11f4",
+ "\u0014\u0003\u0002\u0002\u0002\u11f5\u11f6\u0007C\u0002\u0002\u11f6",
+ "\u11f7\u0007E\u0002\u0002\u11f7\u11f8\u0007V\u0002\u0002\u11f8\u11f9",
+ "\u0007K\u0002\u0002\u11f9\u11fa\u0007X\u0002\u0002\u11fa\u11fb\u0007",
+ "C\u0002\u0002\u11fb\u11fc\u0007V\u0002\u0002\u11fc\u11fd\u0007G\u0002",
+ "\u0002\u11fd\u0016\u0003\u0002\u0002\u0002\u11fe\u11ff\u0007C\u0002",
+ "\u0002\u11ff\u1200\u0007E\u0002\u0002\u1200\u1201\u0007V\u0002\u0002",
+ "\u1201\u1202\u0007K\u0002\u0002\u1202\u1203\u0007X\u0002\u0002\u1203",
+ "\u1204\u0007G\u0002\u0002\u1204\u0018\u0003\u0002\u0002\u0002\u1205",
+ "\u1206\u0007C\u0002\u0002\u1206\u1207\u0007E\u0002\u0002\u1207\u1208",
+ "\u0007V\u0002\u0002\u1208\u1209\u0007K\u0002\u0002\u1209\u120a\u0007",
+ "X\u0002\u0002\u120a\u120b\u0007G\u0002\u0002\u120b\u120c\u0007a\u0002",
+ "\u0002\u120c\u120d\u0007E\u0002\u0002\u120d\u120e\u0007Q\u0002\u0002",
+ "\u120e\u120f\u0007O\u0002\u0002\u120f\u1210\u0007R\u0002\u0002\u1210",
+ "\u1211\u0007Q\u0002\u0002\u1211\u1212\u0007P\u0002\u0002\u1212\u1213",
+ "\u0007G\u0002\u0002\u1213\u1214\u0007P\u0002\u0002\u1214\u1215\u0007",
+ "V\u0002\u0002\u1215\u001a\u0003\u0002\u0002\u0002\u1216\u1217\u0007",
+ "C\u0002\u0002\u1217\u1218\u0007E\u0002\u0002\u1218\u1219\u0007V\u0002",
+ "\u0002\u1219\u121a\u0007K\u0002\u0002\u121a\u121b\u0007X\u0002\u0002",
+ "\u121b\u121c\u0007G\u0002\u0002\u121c\u121d\u0007a\u0002\u0002\u121d",
+ "\u121e\u0007F\u0002\u0002\u121e\u121f\u0007C\u0002\u0002\u121f\u1220",
+ "\u0007V\u0002\u0002\u1220\u1221\u0007C\u0002\u0002\u1221\u001c\u0003",
+ "\u0002\u0002\u0002\u1222\u1223\u0007C\u0002\u0002\u1223\u1224\u0007",
+ "E\u0002\u0002\u1224\u1225\u0007V\u0002\u0002\u1225\u1226\u0007K\u0002",
+ "\u0002\u1226\u1227\u0007X\u0002\u0002\u1227\u1228\u0007G\u0002\u0002",
+ "\u1228\u1229\u0007a\u0002\u0002\u1229\u122a\u0007H\u0002\u0002\u122a",
+ "\u122b\u0007W\u0002\u0002\u122b\u122c\u0007P\u0002\u0002\u122c\u122d",
+ "\u0007E\u0002\u0002\u122d\u122e\u0007V\u0002\u0002\u122e\u122f\u0007",
+ "K\u0002\u0002\u122f\u1230\u0007Q\u0002\u0002\u1230\u1231\u0007P\u0002",
+ "\u0002\u1231\u001e\u0003\u0002\u0002\u0002\u1232\u1233\u0007C\u0002",
+ "\u0002\u1233\u1234\u0007E\u0002\u0002\u1234\u1235\u0007V\u0002\u0002",
+ "\u1235\u1236\u0007K\u0002\u0002\u1236\u1237\u0007X\u0002\u0002\u1237",
+ "\u1238\u0007G\u0002\u0002\u1238\u1239\u0007a\u0002\u0002\u1239\u123a",
+ "\u0007V\u0002\u0002\u123a\u123b\u0007C\u0002\u0002\u123b\u123c\u0007",
+ "I\u0002\u0002\u123c \u0003\u0002\u0002\u0002\u123d\u123e\u0007C\u0002",
+ "\u0002\u123e\u123f\u0007E\u0002\u0002\u123f\u1240\u0007V\u0002\u0002",
+ "\u1240\u1241\u0007K\u0002\u0002\u1241\u1242\u0007X\u0002\u0002\u1242",
+ "\u1243\u0007K\u0002\u0002\u1243\u1244\u0007V\u0002\u0002\u1244\u1245",
+ "\u0007[\u0002\u0002\u1245\"\u0003\u0002\u0002\u0002\u1246\u1247\u0007",
+ "C\u0002\u0002\u1247\u1248\u0007F\u0002\u0002\u1248\u1249\u0007C\u0002",
+ "\u0002\u1249\u124a\u0007R\u0002\u0002\u124a\u124b\u0007V\u0002\u0002",
+ "\u124b\u124c\u0007K\u0002\u0002\u124c\u124d\u0007X\u0002\u0002\u124d",
+ "\u124e\u0007G\u0002\u0002\u124e\u124f\u0007a\u0002\u0002\u124f\u1250",
+ "\u0007R\u0002\u0002\u1250\u1251\u0007N\u0002\u0002\u1251\u1252\u0007",
+ "C\u0002\u0002\u1252\u1253\u0007P\u0002\u0002\u1253$\u0003\u0002\u0002",
+ "\u0002\u1254\u1255\u0007C\u0002\u0002\u1255\u1256\u0007F\u0002\u0002",
+ "\u1256\u1257\u0007F\u0002\u0002\u1257&\u0003\u0002\u0002\u0002\u1258",
+ "\u1259\u0007C\u0002\u0002\u1259\u125a\u0007F\u0002\u0002\u125a\u125b",
+ "\u0007F\u0002\u0002\u125b\u125c\u0007a\u0002\u0002\u125c\u125d\u0007",
+ "E\u0002\u0002\u125d\u125e\u0007Q\u0002\u0002\u125e\u125f\u0007N\u0002",
+ "\u0002\u125f\u1260\u0007W\u0002\u0002\u1260\u1261\u0007O\u0002\u0002",
+ "\u1261\u1262\u0007P\u0002\u0002\u1262(\u0003\u0002\u0002\u0002\u1263",
+ "\u1264\u0007C\u0002\u0002\u1264\u1265\u0007F\u0002\u0002\u1265\u1266",
+ "\u0007F\u0002\u0002\u1266\u1267\u0007a\u0002\u0002\u1267\u1268\u0007",
+ "I\u0002\u0002\u1268\u1269\u0007T\u0002\u0002\u1269\u126a\u0007Q\u0002",
+ "\u0002\u126a\u126b\u0007W\u0002\u0002\u126b\u126c\u0007R\u0002\u0002",
+ "\u126c*\u0003\u0002\u0002\u0002\u126d\u126e\u0007C\u0002\u0002\u126e",
+ "\u126f\u0007F\u0002\u0002\u126f\u1270\u0007F\u0002\u0002\u1270\u1271",
+ "\u0007a\u0002\u0002\u1271\u1272\u0007O\u0002\u0002\u1272\u1273\u0007",
+ "Q\u0002\u0002\u1273\u1274\u0007P\u0002\u0002\u1274\u1275\u0007V\u0002",
+ "\u0002\u1275\u1276\u0007J\u0002\u0002\u1276\u1277\u0007U\u0002\u0002",
+ "\u1277,\u0003\u0002\u0002\u0002\u1278\u1279\u0007C\u0002\u0002\u1279",
+ "\u127a\u0007F\u0002\u0002\u127a\u127b\u0007L\u0002\u0002\u127b\u127c",
+ "\u0007a\u0002\u0002\u127c\u127d\u0007F\u0002\u0002\u127d\u127e\u0007",
+ "C\u0002\u0002\u127e\u127f\u0007V\u0002\u0002\u127f\u1280\u0007G\u0002",
+ "\u0002\u1280.\u0003\u0002\u0002\u0002\u1281\u1282\u0007C\u0002\u0002",
+ "\u1282\u1283\u0007F\u0002\u0002\u1283\u1284\u0007O\u0002\u0002\u1284",
+ "\u1285\u0007K\u0002\u0002\u1285\u1286\u0007P\u0002\u0002\u12860\u0003",
+ "\u0002\u0002\u0002\u1287\u1288\u0007C\u0002\u0002\u1288\u1289\u0007",
+ "F\u0002\u0002\u1289\u128a\u0007O\u0002\u0002\u128a\u128b\u0007K\u0002",
+ "\u0002\u128b\u128c\u0007P\u0002\u0002\u128c\u128d\u0007K\u0002\u0002",
+ "\u128d\u128e\u0007U\u0002\u0002\u128e\u128f\u0007V\u0002\u0002\u128f",
+ "\u1290\u0007G\u0002\u0002\u1290\u1291\u0007T\u0002\u0002\u12912\u0003",
+ "\u0002\u0002\u0002\u1292\u1293\u0007C\u0002\u0002\u1293\u1294\u0007",
+ "F\u0002\u0002\u1294\u1295\u0007O\u0002\u0002\u1295\u1296\u0007K\u0002",
+ "\u0002\u1296\u1297\u0007P\u0002\u0002\u1297\u1298\u0007K\u0002\u0002",
+ "\u1298\u1299\u0007U\u0002\u0002\u1299\u129a\u0007V\u0002\u0002\u129a",
+ "\u129b\u0007T\u0002\u0002\u129b\u129c\u0007C\u0002\u0002\u129c\u129d",
+ "\u0007V\u0002\u0002\u129d\u129e\u0007Q\u0002\u0002\u129e\u129f\u0007",
+ "T\u0002\u0002\u129f4\u0003\u0002\u0002\u0002\u12a0\u12a1\u0007C\u0002",
+ "\u0002\u12a1\u12a2\u0007F\u0002\u0002\u12a2\u12a3\u0007X\u0002\u0002",
+ "\u12a3\u12a4\u0007C\u0002\u0002\u12a4\u12a5\u0007P\u0002\u0002\u12a5",
+ "\u12a6\u0007E\u0002\u0002\u12a6\u12a7\u0007G\u0002\u0002\u12a7\u12a8",
+ "\u0007F\u0002\u0002\u12a86\u0003\u0002\u0002\u0002\u12a9\u12aa\u0007",
+ "C\u0002\u0002\u12aa\u12ab\u0007F\u0002\u0002\u12ab\u12ac\u0007X\u0002",
+ "\u0002\u12ac\u12ad\u0007K\u0002\u0002\u12ad\u12ae\u0007U\u0002\u0002",
+ "\u12ae\u12af\u0007G\u0002\u0002\u12af8\u0003\u0002\u0002\u0002\u12b0",
+ "\u12b1\u0007C\u0002\u0002\u12b1\u12b2\u0007F\u0002\u0002\u12b2\u12b3",
+ "\u0007X\u0002\u0002\u12b3\u12b4\u0007K\u0002\u0002\u12b4\u12b5\u0007",
+ "U\u0002\u0002\u12b5\u12b6\u0007Q\u0002\u0002\u12b6\u12b7\u0007T\u0002",
+ "\u0002\u12b7:\u0003\u0002\u0002\u0002\u12b8\u12b9\u0007C\u0002\u0002",
+ "\u12b9\u12ba\u0007H\u0002\u0002\u12ba\u12bb\u0007F\u0002\u0002\u12bb",
+ "\u12bc\u0007a\u0002\u0002\u12bc\u12bd\u0007F\u0002\u0002\u12bd\u12be",
+ "\u0007K\u0002\u0002\u12be\u12bf\u0007U\u0002\u0002\u12bf\u12c0\u0007",
+ "M\u0002\u0002\u12c0\u12c1\u0007U\u0002\u0002\u12c1\u12c2\u0007V\u0002",
+ "\u0002\u12c2\u12c3\u0007T\u0002\u0002\u12c3\u12c4\u0007K\u0002\u0002",
+ "\u12c4\u12c5\u0007P\u0002\u0002\u12c5\u12c6\u0007I\u0002\u0002\u12c6",
+ "<\u0003\u0002\u0002\u0002\u12c7\u12c8\u0007C\u0002\u0002\u12c8\u12c9",
+ "\u0007H\u0002\u0002\u12c9\u12ca\u0007V\u0002\u0002\u12ca\u12cb\u0007",
+ "G\u0002\u0002\u12cb\u12cc\u0007T\u0002\u0002\u12cc>\u0003\u0002\u0002",
+ "\u0002\u12cd\u12ce\u0007C\u0002\u0002\u12ce\u12cf\u0007I\u0002\u0002",
+ "\u12cf\u12d0\u0007G\u0002\u0002\u12d0\u12d1\u0007P\u0002\u0002\u12d1",
+ "\u12d2\u0007V\u0002\u0002\u12d2@\u0003\u0002\u0002\u0002\u12d3\u12d4",
+ "\u0007C\u0002\u0002\u12d4\u12d5\u0007I\u0002\u0002\u12d5\u12d6\u0007",
+ "I\u0002\u0002\u12d6\u12d7\u0007T\u0002\u0002\u12d7\u12d8\u0007G\u0002",
+ "\u0002\u12d8\u12d9\u0007I\u0002\u0002\u12d9\u12da\u0007C\u0002\u0002",
+ "\u12da\u12db\u0007V\u0002\u0002\u12db\u12dc\u0007G\u0002\u0002\u12dc",
+ "B\u0003\u0002\u0002\u0002\u12dd\u12de\u0007C\u0002\u0002\u12deD\u0003",
+ "\u0002\u0002\u0002\u12df\u12e0\u0007C\u0002\u0002\u12e0\u12e1\u0007",
+ "N\u0002\u0002\u12e1\u12e2\u0007K\u0002\u0002\u12e2\u12e3\u0007C\u0002",
+ "\u0002\u12e3\u12e4\u0007U\u0002\u0002\u12e4F\u0003\u0002\u0002\u0002",
+ "\u12e5\u12e6\u0007C\u0002\u0002\u12e6\u12e7\u0007N\u0002\u0002\u12e7",
+ "\u12e8\u0007N\u0002\u0002\u12e8H\u0003\u0002\u0002\u0002\u12e9\u12ea",
+ "\u0007C\u0002\u0002\u12ea\u12eb\u0007N\u0002\u0002\u12eb\u12ec\u0007",
+ "N\u0002\u0002\u12ec\u12ed\u0007Q\u0002\u0002\u12ed\u12ee\u0007E\u0002",
+ "\u0002\u12ee\u12ef\u0007C\u0002\u0002\u12ef\u12f0\u0007V\u0002\u0002",
+ "\u12f0\u12f1\u0007G\u0002\u0002\u12f1J\u0003\u0002\u0002\u0002\u12f2",
+ "\u12f3\u0007C\u0002\u0002\u12f3\u12f4\u0007N\u0002\u0002\u12f4\u12f5",
+ "\u0007N\u0002\u0002\u12f5\u12f6\u0007Q\u0002\u0002\u12f6\u12f7\u0007",
+ "Y\u0002\u0002\u12f7L\u0003\u0002\u0002\u0002\u12f8\u12f9\u0007C\u0002",
+ "\u0002\u12f9\u12fa\u0007N\u0002\u0002\u12fa\u12fb\u0007N\u0002\u0002",
+ "\u12fb\u12fc\u0007a\u0002\u0002\u12fc\u12fd\u0007T\u0002\u0002\u12fd",
+ "\u12fe\u0007Q\u0002\u0002\u12fe\u12ff\u0007Y\u0002\u0002\u12ff\u1300",
+ "\u0007U\u0002\u0002\u1300N\u0003\u0002\u0002\u0002\u1301\u1302\u0007",
+ "C\u0002\u0002\u1302\u1303\u0007N\u0002\u0002\u1303\u1304\u0007V\u0002",
+ "\u0002\u1304\u1305\u0007G\u0002\u0002\u1305\u1306\u0007T\u0002\u0002",
+ "\u1306P\u0003\u0002\u0002\u0002\u1307\u1308\u0007C\u0002\u0002\u1308",
+ "\u1309\u0007N\u0002\u0002\u1309\u130a\u0007Y\u0002\u0002\u130a\u130b",
+ "\u0007C\u0002\u0002\u130b\u130c\u0007[\u0002\u0002\u130c\u130d\u0007",
+ "U\u0002\u0002\u130dR\u0003\u0002\u0002\u0002\u130e\u130f\u0007C\u0002",
+ "\u0002\u130f\u1310\u0007P\u0002\u0002\u1310\u1311\u0007C\u0002\u0002",
+ "\u1311\u1312\u0007N\u0002\u0002\u1312\u1313\u0007[\u0002\u0002\u1313",
+ "\u1314\u0007\\\u0002\u0002\u1314\u1315\u0007G\u0002\u0002\u1315T\u0003",
+ "\u0002\u0002\u0002\u1316\u1317\u0007C\u0002\u0002\u1317\u1318\u0007",
+ "P\u0002\u0002\u1318\u1319\u0007E\u0002\u0002\u1319\u131a\u0007K\u0002",
+ "\u0002\u131a\u131b\u0007N\u0002\u0002\u131b\u131c\u0007N\u0002\u0002",
+ "\u131c\u131d\u0007C\u0002\u0002\u131d\u131e\u0007T\u0002\u0002\u131e",
+ "\u131f\u0007[\u0002\u0002\u131fV\u0003\u0002\u0002\u0002\u1320\u1321",
+ "\u0007C\u0002\u0002\u1321\u1322\u0007P\u0002\u0002\u1322\u1323\u0007",
+ "F\u0002\u0002\u1323X\u0003\u0002\u0002\u0002\u1324\u1325\u0007C\u0002",
+ "\u0002\u1325\u1326\u0007P\u0002\u0002\u1326\u1327\u0007F\u0002\u0002",
+ "\u1327\u1328\u0007a\u0002\u0002\u1328\u1329\u0007G\u0002\u0002\u1329",
+ "\u132a\u0007S\u0002\u0002\u132a\u132b\u0007W\u0002\u0002\u132b\u132c",
+ "\u0007C\u0002\u0002\u132c\u132d\u0007N\u0002\u0002\u132dZ\u0003\u0002",
+ "\u0002\u0002\u132e\u132f\u0007C\u0002\u0002\u132f\u1330\u0007P\u0002",
+ "\u0002\u1330\u1331\u0007Q\u0002\u0002\u1331\u1332\u0007O\u0002\u0002",
+ "\u1332\u1333\u0007C\u0002\u0002\u1333\u1334\u0007N\u0002\u0002\u1334",
+ "\u1335\u0007[\u0002\u0002\u1335\\\u0003\u0002\u0002\u0002\u1336\u1337",
+ "\u0007C\u0002\u0002\u1337\u1338\u0007P\u0002\u0002\u1338\u1339\u0007",
+ "U\u0002\u0002\u1339\u133a\u0007K\u0002\u0002\u133a\u133b\u0007a\u0002",
+ "\u0002\u133b\u133c\u0007T\u0002\u0002\u133c\u133d\u0007G\u0002\u0002",
+ "\u133d\u133e\u0007C\u0002\u0002\u133e\u133f\u0007T\u0002\u0002\u133f",
+ "\u1340\u0007E\u0002\u0002\u1340\u1341\u0007J\u0002\u0002\u1341^\u0003",
+ "\u0002\u0002\u0002\u1342\u1343\u0007C\u0002\u0002\u1343\u1344\u0007",
+ "P\u0002\u0002\u1344\u1345\u0007V\u0002\u0002\u1345\u1346\u0007K\u0002",
+ "\u0002\u1346\u1347\u0007L\u0002\u0002\u1347\u1348\u0007Q\u0002\u0002",
+ "\u1348\u1349\u0007K\u0002\u0002\u1349\u134a\u0007P\u0002\u0002\u134a",
+ "`\u0003\u0002\u0002\u0002\u134b\u134c\u0007C\u0002\u0002\u134c\u134d",
+ "\u0007P\u0002\u0002\u134d\u134e\u0007[\u0002\u0002\u134eb\u0003\u0002",
+ "\u0002\u0002\u134f\u1350\u0007C\u0002\u0002\u1350\u1351\u0007P\u0002",
+ "\u0002\u1351\u1352\u0007[\u0002\u0002\u1352\u1353\u0007U\u0002\u0002",
+ "\u1353\u1354\u0007E\u0002\u0002\u1354\u1355\u0007J\u0002\u0002\u1355",
+ "\u1356\u0007G\u0002\u0002\u1356\u1357\u0007O\u0002\u0002\u1357\u1358",
+ "\u0007C\u0002\u0002\u1358d\u0003\u0002\u0002\u0002\u1359\u135a\u0007",
+ "C\u0002\u0002\u135a\u135b\u0007R\u0002\u0002\u135b\u135c\u0007R\u0002",
+ "\u0002\u135c\u135d\u0007G\u0002\u0002\u135d\u135e\u0007P\u0002\u0002",
+ "\u135e\u135f\u0007F\u0002\u0002\u135ff\u0003\u0002\u0002\u0002\u1360",
+ "\u1361\u0007C\u0002\u0002\u1361\u1362\u0007R\u0002\u0002\u1362\u1363",
+ "\u0007R\u0002\u0002\u1363\u1364\u0007G\u0002\u0002\u1364\u1365\u0007",
+ "P\u0002\u0002\u1365\u1366\u0007F\u0002\u0002\u1366\u1367\u0007E\u0002",
+ "\u0002\u1367\u1368\u0007J\u0002\u0002\u1368\u1369\u0007K\u0002\u0002",
+ "\u1369\u136a\u0007N\u0002\u0002\u136a\u136b\u0007F\u0002\u0002\u136b",
+ "\u136c\u0007Z\u0002\u0002\u136c\u136d\u0007O\u0002\u0002\u136d\u136e",
+ "\u0007N\u0002\u0002\u136eh\u0003\u0002\u0002\u0002\u136f\u1370\u0007",
+ "C\u0002\u0002\u1370\u1371\u0007R\u0002\u0002\u1371\u1372\u0007R\u0002",
+ "\u0002\u1372\u1373\u0007G\u0002\u0002\u1373\u1374\u0007P\u0002\u0002",
+ "\u1374\u1375\u0007F\u0002\u0002\u1375\u1376\u0007a\u0002\u0002\u1376",
+ "\u1377\u0007X\u0002\u0002\u1377\u1378\u0007C\u0002\u0002\u1378\u1379",
+ "\u0007N\u0002\u0002\u1379\u137a\u0007W\u0002\u0002\u137a\u137b\u0007",
+ "G\u0002\u0002\u137b\u137c\u0007U\u0002\u0002\u137cj\u0003\u0002\u0002",
+ "\u0002\u137d\u137e\u0007C\u0002\u0002\u137e\u137f\u0007R\u0002\u0002",
+ "\u137f\u1380\u0007R\u0002\u0002\u1380\u1381\u0007N\u0002\u0002\u1381",
+ "\u1382\u0007K\u0002\u0002\u1382\u1383\u0007E\u0002\u0002\u1383\u1384",
+ "\u0007C\u0002\u0002\u1384\u1385\u0007V\u0002\u0002\u1385\u1386\u0007",
+ "K\u0002\u0002\u1386\u1387\u0007Q\u0002\u0002\u1387\u1388\u0007P\u0002",
+ "\u0002\u1388l\u0003\u0002\u0002\u0002\u1389\u138a\u0007C\u0002\u0002",
+ "\u138a\u138b\u0007R\u0002\u0002\u138b\u138c\u0007R\u0002\u0002\u138c",
+ "\u138d\u0007N\u0002\u0002\u138d\u138e\u0007[\u0002\u0002\u138en\u0003",
+ "\u0002\u0002\u0002\u138f\u1390\u0007C\u0002\u0002\u1390\u1391\u0007",
+ "R\u0002\u0002\u1391\u1392\u0007R\u0002\u0002\u1392\u1393\u0007T\u0002",
+ "\u0002\u1393\u1394\u0007Q\u0002\u0002\u1394\u1395\u0007Z\u0002\u0002",
+ "\u1395\u1396\u0007a\u0002\u0002\u1396\u1397\u0007E\u0002\u0002\u1397",
+ "\u1398\u0007Q\u0002\u0002\u1398\u1399\u0007W\u0002\u0002\u1399\u139a",
+ "\u0007P\u0002\u0002\u139a\u139b\u0007V\u0002\u0002\u139b\u139c\u0007",
+ "a\u0002\u0002\u139c\u139d\u0007F\u0002\u0002\u139d\u139e\u0007K\u0002",
+ "\u0002\u139e\u139f\u0007U\u0002\u0002\u139f\u13a0\u0007V\u0002\u0002",
+ "\u13a0\u13a1\u0007K\u0002\u0002\u13a1\u13a2\u0007P\u0002\u0002\u13a2",
+ "\u13a3\u0007E\u0002\u0002\u13a3\u13a4\u0007V\u0002\u0002\u13a4p\u0003",
+ "\u0002\u0002\u0002\u13a5\u13a6\u0007C\u0002\u0002\u13a6\u13a7\u0007",
+ "T\u0002\u0002\u13a7\u13a8\u0007E\u0002\u0002\u13a8\u13a9\u0007J\u0002",
+ "\u0002\u13a9\u13aa\u0007K\u0002\u0002\u13aa\u13ab\u0007X\u0002\u0002",
+ "\u13ab\u13ac\u0007C\u0002\u0002\u13ac\u13ad\u0007N\u0002\u0002\u13ad",
+ "r\u0003\u0002\u0002\u0002\u13ae\u13af\u0007C\u0002\u0002\u13af\u13b0",
+ "\u0007T\u0002\u0002\u13b0\u13b1\u0007E\u0002\u0002\u13b1\u13b2\u0007",
+ "J\u0002\u0002\u13b2\u13b3\u0007K\u0002\u0002\u13b3\u13b4\u0007X\u0002",
+ "\u0002\u13b4\u13b5\u0007G\u0002\u0002\u13b5t\u0003\u0002\u0002\u0002",
+ "\u13b6\u13b7\u0007C\u0002\u0002\u13b7\u13b8\u0007T\u0002\u0002\u13b8",
+ "\u13b9\u0007E\u0002\u0002\u13b9\u13ba\u0007J\u0002\u0002\u13ba\u13bb",
+ "\u0007K\u0002\u0002\u13bb\u13bc\u0007X\u0002\u0002\u13bc\u13bd\u0007",
+ "G\u0002\u0002\u13bd\u13be\u0007F\u0002\u0002\u13bev\u0003\u0002\u0002",
+ "\u0002\u13bf\u13c0\u0007C\u0002\u0002\u13c0\u13c1\u0007T\u0002\u0002",
+ "\u13c1\u13c2\u0007E\u0002\u0002\u13c2\u13c3\u0007J\u0002\u0002\u13c3",
+ "\u13c4\u0007K\u0002\u0002\u13c4\u13c5\u0007X\u0002\u0002\u13c5\u13c6",
+ "\u0007G\u0002\u0002\u13c6\u13c7\u0007N\u0002\u0002\u13c7\u13c8\u0007",
+ "Q\u0002\u0002\u13c8\u13c9\u0007I\u0002\u0002\u13c9x\u0003\u0002\u0002",
+ "\u0002\u13ca\u13cb\u0007C\u0002\u0002\u13cb\u13cc\u0007T\u0002\u0002",
+ "\u13cc\u13cd\u0007T\u0002\u0002\u13cd\u13ce\u0007C\u0002\u0002\u13ce",
+ "\u13cf\u0007[\u0002\u0002\u13cfz\u0003\u0002\u0002\u0002\u13d0\u13d1",
+ "\u0007C\u0002\u0002\u13d1\u13d2\u0007U\u0002\u0002\u13d2|\u0003\u0002",
+ "\u0002\u0002\u13d3\u13d4\u0007C\u0002\u0002\u13d4\u13d5\u0007U\u0002",
+ "\u0002\u13d5\u13d6\u0007E\u0002\u0002\u13d6~\u0003\u0002\u0002\u0002",
+ "\u13d7\u13d8\u0007C\u0002\u0002\u13d8\u13d9\u0007U\u0002\u0002\u13d9",
+ "\u13da\u0007E\u0002\u0002\u13da\u13db\u0007K\u0002\u0002\u13db\u13dc",
+ "\u0007K\u0002\u0002\u13dc\u0080\u0003\u0002\u0002\u0002\u13dd\u13de",
+ "\u0007C\u0002\u0002\u13de\u13df\u0007U\u0002\u0002\u13df\u13e0\u0007",
+ "E\u0002\u0002\u13e0\u13e1\u0007K\u0002\u0002\u13e1\u13e2\u0007K\u0002",
+ "\u0002\u13e2\u13e3\u0007U\u0002\u0002\u13e3\u13e4\u0007V\u0002\u0002",
+ "\u13e4\u13e5\u0007T\u0002\u0002\u13e5\u0082\u0003\u0002\u0002\u0002",
+ "\u13e6\u13e7\u0007C\u0002\u0002\u13e7\u13e8\u0007U\u0002\u0002\u13e8",
+ "\u13e9\u0007K\u0002\u0002\u13e9\u13ea\u0007P\u0002\u0002\u13ea\u0084",
+ "\u0003\u0002\u0002\u0002\u13eb\u13ec\u0007C\u0002\u0002\u13ec\u13ed",
+ "\u0007U\u0002\u0002\u13ed\u13ee\u0007K\u0002\u0002\u13ee\u13ef\u0007",
+ "U\u0002\u0002\u13ef\u0086\u0003\u0002\u0002\u0002\u13f0\u13f1\u0007",
+ "C\u0002\u0002\u13f1\u13f2\u0007U\u0002\u0002\u13f2\u13f3\u0007U\u0002",
+ "\u0002\u13f3\u13f4\u0007G\u0002\u0002\u13f4\u13f5\u0007O\u0002\u0002",
+ "\u13f5\u13f6\u0007D\u0002\u0002\u13f6\u13f7\u0007N\u0002\u0002\u13f7",
+ "\u13f8\u0007[\u0002\u0002\u13f8\u0088\u0003\u0002\u0002\u0002\u13f9",
+ "\u13fa\u0007C\u0002\u0002\u13fa\u13fb\u0007U\u0002\u0002\u13fb\u13fc",
+ "\u0007U\u0002\u0002\u13fc\u13fd\u0007K\u0002\u0002\u13fd\u13fe\u0007",
+ "I\u0002\u0002\u13fe\u13ff\u0007P\u0002\u0002\u13ff\u008a\u0003\u0002",
+ "\u0002\u0002\u1400\u1401\u0007C\u0002\u0002\u1401\u1402\u0007U\u0002",
+ "\u0002\u1402\u1403\u0007U\u0002\u0002\u1403\u1404\u0007Q\u0002\u0002",
+ "\u1404\u1405\u0007E\u0002\u0002\u1405\u1406\u0007K\u0002\u0002\u1406",
+ "\u1407\u0007C\u0002\u0002\u1407\u1408\u0007V\u0002\u0002\u1408\u1409",
+ "\u0007G\u0002\u0002\u1409\u008c\u0003\u0002\u0002\u0002\u140a\u140b",
+ "\u0007C\u0002\u0002\u140b\u140c\u0007U\u0002\u0002\u140c\u140d\u0007",
+ "[\u0002\u0002\u140d\u140e\u0007P\u0002\u0002\u140e\u140f\u0007E\u0002",
+ "\u0002\u140f\u008e\u0003\u0002\u0002\u0002\u1410\u1411\u0007C\u0002",
+ "\u0002\u1411\u1412\u0007U\u0002\u0002\u1412\u1413\u0007[\u0002\u0002",
+ "\u1413\u1414\u0007P\u0002\u0002\u1414\u1415\u0007E\u0002\u0002\u1415",
+ "\u1416\u0007J\u0002\u0002\u1416\u1417\u0007T\u0002\u0002\u1417\u1418",
+ "\u0007Q\u0002\u0002\u1418\u1419\u0007P\u0002\u0002\u1419\u141a\u0007",
+ "Q\u0002\u0002\u141a\u141b\u0007W\u0002\u0002\u141b\u141c\u0007U\u0002",
+ "\u0002\u141c\u0090\u0003\u0002\u0002\u0002\u141d\u141e\u0007C\u0002",
+ "\u0002\u141e\u141f\u0007V\u0002\u0002\u141f\u1420\u0007C\u0002\u0002",
+ "\u1420\u1421\u0007P\u0002\u0002\u1421\u1422\u00074\u0002\u0002\u1422",
+ "\u0092\u0003\u0002\u0002\u0002\u1423\u1424\u0007C\u0002\u0002\u1424",
+ "\u1425\u0007V\u0002\u0002\u1425\u1426\u0007C\u0002\u0002\u1426\u1427",
+ "\u0007P\u0002\u0002\u1427\u0094\u0003\u0002\u0002\u0002\u1428\u1429",
+ "\u0007C\u0002\u0002\u1429\u142a\u0007V\u0002\u0002\u142a\u0096\u0003",
+ "\u0002\u0002\u0002\u142b\u142c\u0007C\u0002\u0002\u142c\u142d\u0007",
+ "V\u0002\u0002\u142d\u142e\u0007V\u0002\u0002\u142e\u142f\u0007T\u0002",
+ "\u0002\u142f\u1430\u0007K\u0002\u0002\u1430\u1431\u0007D\u0002\u0002",
+ "\u1431\u1432\u0007W\u0002\u0002\u1432\u1433\u0007V\u0002\u0002\u1433",
+ "\u1434\u0007G\u0002\u0002\u1434\u0098\u0003\u0002\u0002\u0002\u1435",
+ "\u1436\u0007C\u0002\u0002\u1436\u1437\u0007V\u0002\u0002\u1437\u1438",
+ "\u0007V\u0002\u0002\u1438\u1439\u0007T\u0002\u0002\u1439\u143a\u0007",
+ "K\u0002\u0002\u143a\u143b\u0007D\u0002\u0002\u143b\u143c\u0007W\u0002",
+ "\u0002\u143c\u143d\u0007V\u0002\u0002\u143d\u143e\u0007G\u0002\u0002",
+ "\u143e\u143f\u0007U\u0002\u0002\u143f\u009a\u0003\u0002\u0002\u0002",
+ "\u1440\u1441\u0007C\u0002\u0002\u1441\u1442\u0007W\u0002\u0002\u1442",
+ "\u1443\u0007F\u0002\u0002\u1443\u1444\u0007K\u0002\u0002\u1444\u1445",
+ "\u0007V\u0002\u0002\u1445\u009c\u0003\u0002\u0002\u0002\u1446\u1447",
+ "\u0007C\u0002\u0002\u1447\u1448\u0007W\u0002\u0002\u1448\u1449\u0007",
+ "V\u0002\u0002\u1449\u144a\u0007J\u0002\u0002\u144a\u144b\u0007G\u0002",
+ "\u0002\u144b\u144c\u0007P\u0002\u0002\u144c\u144d\u0007V\u0002\u0002",
+ "\u144d\u144e\u0007K\u0002\u0002\u144e\u144f\u0007E\u0002\u0002\u144f",
+ "\u1450\u0007C\u0002\u0002\u1450\u1451\u0007V\u0002\u0002\u1451\u1452",
+ "\u0007G\u0002\u0002\u1452\u1453\u0007F\u0002\u0002\u1453\u009e\u0003",
+ "\u0002\u0002\u0002\u1454\u1455\u0007C\u0002\u0002\u1455\u1456\u0007",
+ "W\u0002\u0002\u1456\u1457\u0007V\u0002\u0002\u1457\u1458\u0007J\u0002",
+ "\u0002\u1458\u1459\u0007G\u0002\u0002\u1459\u145a\u0007P\u0002\u0002",
+ "\u145a\u145b\u0007V\u0002\u0002\u145b\u145c\u0007K\u0002\u0002\u145c",
+ "\u145d\u0007E\u0002\u0002\u145d\u145e\u0007C\u0002\u0002\u145e\u145f",
+ "\u0007V\u0002\u0002\u145f\u1460\u0007K\u0002\u0002\u1460\u1461\u0007",
+ "Q\u0002\u0002\u1461\u1462\u0007P\u0002\u0002\u1462\u00a0\u0003\u0002",
+ "\u0002\u0002\u1463\u1464\u0007C\u0002\u0002\u1464\u1465\u0007W\u0002",
+ "\u0002\u1465\u1466\u0007V\u0002\u0002\u1466\u1467\u0007J\u0002\u0002",
+ "\u1467\u1468\u0007K\u0002\u0002\u1468\u1469\u0007F\u0002\u0002\u1469",
+ "\u00a2\u0003\u0002\u0002\u0002\u146a\u146b\u0007C\u0002\u0002\u146b",
+ "\u146c\u0007W\u0002\u0002\u146c\u146d\u0007V\u0002\u0002\u146d\u146e",
+ "\u0007J\u0002\u0002\u146e\u146f\u0007Q\u0002\u0002\u146f\u1470\u0007",
+ "T\u0002\u0002\u1470\u1471\u0007K\u0002\u0002\u1471\u1472\u0007\\\u0002",
+ "\u0002\u1472\u1473\u0007C\u0002\u0002\u1473\u1474\u0007V\u0002\u0002",
+ "\u1474\u1475\u0007K\u0002\u0002\u1475\u1476\u0007Q\u0002\u0002\u1476",
+ "\u1477\u0007P\u0002\u0002\u1477\u00a4\u0003\u0002\u0002\u0002\u1478",
+ "\u1479\u0007C\u0002\u0002\u1479\u147a\u0007W\u0002\u0002\u147a\u147b",
+ "\u0007V\u0002\u0002\u147b\u147c\u0007Q\u0002\u0002\u147c\u147d\u0007",
+ "C\u0002\u0002\u147d\u147e\u0007N\u0002\u0002\u147e\u147f\u0007N\u0002",
+ "\u0002\u147f\u1480\u0007Q\u0002\u0002\u1480\u1481\u0007E\u0002\u0002",
+ "\u1481\u1482\u0007C\u0002\u0002\u1482\u1483\u0007V\u0002\u0002\u1483",
+ "\u1484\u0007G\u0002\u0002\u1484\u00a6\u0003\u0002\u0002\u0002\u1485",
+ "\u1486\u0007C\u0002\u0002\u1486\u1487\u0007W\u0002\u0002\u1487\u1488",
+ "\u0007V\u0002\u0002\u1488\u1489\u0007Q\u0002\u0002\u1489\u00a8\u0003",
+ "\u0002\u0002\u0002\u148a\u148b\u0007C\u0002\u0002\u148b\u148c\u0007",
+ "W\u0002\u0002\u148c\u148d\u0007V\u0002\u0002\u148d\u148e\u0007Q\u0002",
+ "\u0002\u148e\u148f\u0007D\u0002\u0002\u148f\u1490\u0007C\u0002\u0002",
+ "\u1490\u1491\u0007E\u0002\u0002\u1491\u1492\u0007M\u0002\u0002\u1492",
+ "\u1493\u0007W\u0002\u0002\u1493\u1494\u0007R\u0002\u0002\u1494\u00aa",
+ "\u0003\u0002\u0002\u0002\u1495\u1496\u0007C\u0002\u0002\u1496\u1497",
+ "\u0007W\u0002\u0002\u1497\u1498\u0007V\u0002\u0002\u1498\u1499\u0007",
+ "Q\u0002\u0002\u1499\u149a\u0007G\u0002\u0002\u149a\u149b\u0007Z\u0002",
+ "\u0002\u149b\u149c\u0007V\u0002\u0002\u149c\u149d\u0007G\u0002\u0002",
+ "\u149d\u149e\u0007P\u0002\u0002\u149e\u149f\u0007F\u0002\u0002\u149f",
+ "\u00ac\u0003\u0002\u0002\u0002\u14a0\u14a1\u0007C\u0002\u0002\u14a1",
+ "\u14a2\u0007W\u0002\u0002\u14a2\u14a3\u0007V\u0002\u0002\u14a3\u14a4",
+ "\u0007Q\u0002\u0002\u14a4\u14a5\u0007a\u0002\u0002\u14a5\u14a6\u0007",
+ "N\u0002\u0002\u14a6\u14a7\u0007Q\u0002\u0002\u14a7\u14a8\u0007I\u0002",
+ "\u0002\u14a8\u14a9\u0007K\u0002\u0002\u14a9\u14aa\u0007P\u0002\u0002",
+ "\u14aa\u00ae\u0003\u0002\u0002\u0002\u14ab\u14ac\u0007C\u0002\u0002",
+ "\u14ac\u14ad\u0007W\u0002\u0002\u14ad\u14ae\u0007V\u0002\u0002\u14ae",
+ "\u14af\u0007Q\u0002\u0002\u14af\u14b0\u0007O\u0002\u0002\u14b0\u14b1",
+ "\u0007C\u0002\u0002\u14b1\u14b2\u0007V\u0002\u0002\u14b2\u14b3\u0007",
+ "K\u0002\u0002\u14b3\u14b4\u0007E\u0002\u0002\u14b4\u00b0\u0003\u0002",
+ "\u0002\u0002\u14b5\u14b6\u0007C\u0002\u0002\u14b6\u14b7\u0007W\u0002",
+ "\u0002\u14b7\u14b8\u0007V\u0002\u0002\u14b8\u14b9\u0007Q\u0002\u0002",
+ "\u14b9\u14ba\u0007P\u0002\u0002\u14ba\u14bb\u0007Q\u0002\u0002\u14bb",
+ "\u14bc\u0007O\u0002\u0002\u14bc\u14bd\u0007Q\u0002\u0002\u14bd\u14be",
+ "\u0007W\u0002\u0002\u14be\u14bf\u0007U\u0002\u0002\u14bf\u14c0\u0007",
+ "a\u0002\u0002\u14c0\u14c1\u0007V\u0002\u0002\u14c1\u14c2\u0007T\u0002",
+ "\u0002\u14c2\u14c3\u0007C\u0002\u0002\u14c3\u14c4\u0007P\u0002\u0002",
+ "\u14c4\u14c5\u0007U\u0002\u0002\u14c5\u14c6\u0007C\u0002\u0002\u14c6",
+ "\u14c7\u0007E\u0002\u0002\u14c7\u14c8\u0007V\u0002\u0002\u14c8\u14c9",
+ "\u0007K\u0002\u0002\u14c9\u14ca\u0007Q\u0002\u0002\u14ca\u14cb\u0007",
+ "P\u0002\u0002\u14cb\u00b2\u0003\u0002\u0002\u0002\u14cc\u14cd\u0007",
+ "C\u0002\u0002\u14cd\u14ce\u0007W\u0002\u0002\u14ce\u14cf\u0007V\u0002",
+ "\u0002\u14cf\u14d0\u0007Q\u0002\u0002\u14d0\u14d1\u0007a\u0002\u0002",
+ "\u14d1\u14d2\u0007T\u0002\u0002\u14d2\u14d3\u0007G\u0002\u0002\u14d3",
+ "\u14d4\u0007Q\u0002\u0002\u14d4\u14d5\u0007R\u0002\u0002\u14d5\u14d6",
+ "\u0007V\u0002\u0002\u14d6\u14d7\u0007K\u0002\u0002\u14d7\u14d8\u0007",
+ "O\u0002\u0002\u14d8\u14d9\u0007K\u0002\u0002\u14d9\u14da\u0007\\\u0002",
+ "\u0002\u14da\u14db\u0007G\u0002\u0002\u14db\u00b4\u0003\u0002\u0002",
+ "\u0002\u14dc\u14dd\u0007C\u0002\u0002\u14dd\u14de\u0007X\u0002\u0002",
+ "\u14de\u14df\u0007C\u0002\u0002\u14df\u14e0\u0007K\u0002\u0002\u14e0",
+ "\u14e1\u0007N\u0002\u0002\u14e1\u14e2\u0007C\u0002\u0002\u14e2\u14e3",
+ "\u0007D\u0002\u0002\u14e3\u14e4\u0007K\u0002\u0002\u14e4\u14e5\u0007",
+ "N\u0002\u0002\u14e5\u14e6\u0007K\u0002\u0002\u14e6\u14e7\u0007V\u0002",
+ "\u0002\u14e7\u14e8\u0007[\u0002\u0002\u14e8\u00b6\u0003\u0002\u0002",
+ "\u0002\u14e9\u14ea\u0007C\u0002\u0002\u14ea\u14eb\u0007X\u0002\u0002",
+ "\u14eb\u14ec\u0007T\u0002\u0002\u14ec\u14ed\u0007Q\u0002\u0002\u14ed",
+ "\u00b8\u0003\u0002\u0002\u0002\u14ee\u14ef\u0007D\u0002\u0002\u14ef",
+ "\u14f0\u0007C\u0002\u0002\u14f0\u14f1\u0007E\u0002\u0002\u14f1\u14f2",
+ "\u0007M\u0002\u0002\u14f2\u14f3\u0007I\u0002\u0002\u14f3\u14f4\u0007",
+ "T\u0002\u0002\u14f4\u14f5\u0007Q\u0002\u0002\u14f5\u14f6\u0007W\u0002",
+ "\u0002\u14f6\u14f7\u0007P\u0002\u0002\u14f7\u14f8\u0007F\u0002\u0002",
+ "\u14f8\u00ba\u0003\u0002\u0002\u0002\u14f9\u14fa\u0007D\u0002\u0002",
+ "\u14fa\u14fb\u0007C\u0002\u0002\u14fb\u14fc\u0007E\u0002\u0002\u14fc",
+ "\u14fd\u0007M\u0002\u0002\u14fd\u14fe\u0007W\u0002\u0002\u14fe\u14ff",
+ "\u0007R\u0002\u0002\u14ff\u00bc\u0003\u0002\u0002\u0002\u1500\u1501",
+ "\u0007D\u0002\u0002\u1501\u1502\u0007C\u0002\u0002\u1502\u1503\u0007",
+ "E\u0002\u0002\u1503\u1504\u0007M\u0002\u0002\u1504\u1505\u0007W\u0002",
+ "\u0002\u1505\u1506\u0007R\u0002\u0002\u1506\u1507\u0007U\u0002\u0002",
+ "\u1507\u1508\u0007G\u0002\u0002\u1508\u1509\u0007V\u0002\u0002\u1509",
+ "\u00be\u0003\u0002\u0002\u0002\u150a\u150b\u0007D\u0002\u0002\u150b",
+ "\u150c\u0007C\u0002\u0002\u150c\u150d\u0007U\u0002\u0002\u150d\u150e",
+ "\u0007K\u0002\u0002\u150e\u150f\u0007E\u0002\u0002\u150f\u00c0\u0003",
+ "\u0002\u0002\u0002\u1510\u1511\u0007D\u0002\u0002\u1511\u1512\u0007",
+ "C\u0002\u0002\u1512\u1513\u0007U\u0002\u0002\u1513\u1514\u0007K\u0002",
+ "\u0002\u1514\u1515\u0007E\u0002\u0002\u1515\u1516\u0007H\u0002\u0002",
+ "\u1516\u1517\u0007K\u0002\u0002\u1517\u1518\u0007N\u0002\u0002\u1518",
+ "\u1519\u0007G\u0002\u0002\u1519\u00c2\u0003\u0002\u0002\u0002\u151a",
+ "\u151b\u0007D\u0002\u0002\u151b\u151c\u0007C\u0002\u0002\u151c\u151d",
+ "\u0007V\u0002\u0002\u151d\u151e\u0007E\u0002\u0002\u151e\u151f\u0007",
+ "J\u0002\u0002\u151f\u00c4\u0003\u0002\u0002\u0002\u1520\u1521\u0007",
+ "D\u0002\u0002\u1521\u1522\u0007C\u0002\u0002\u1522\u1523\u0007V\u0002",
+ "\u0002\u1523\u1524\u0007E\u0002\u0002\u1524\u1525\u0007J\u0002\u0002",
+ "\u1525\u1526\u0007U\u0002\u0002\u1526\u1527\u0007K\u0002\u0002\u1527",
+ "\u1528\u0007\\\u0002\u0002\u1528\u1529\u0007G\u0002\u0002\u1529\u00c6",
+ "\u0003\u0002\u0002\u0002\u152a\u152b\u0007D\u0002\u0002\u152b\u152c",
+ "\u0007C\u0002\u0002\u152c\u152d\u0007V\u0002\u0002\u152d\u152e\u0007",
+ "E\u0002\u0002\u152e\u152f\u0007J\u0002\u0002\u152f\u1530\u0007a\u0002",
+ "\u0002\u1530\u1531\u0007V\u0002\u0002\u1531\u1532\u0007C\u0002\u0002",
+ "\u1532\u1533\u0007D\u0002\u0002\u1533\u1534\u0007N\u0002\u0002\u1534",
+ "\u1535\u0007G\u0002\u0002\u1535\u1536\u0007a\u0002\u0002\u1536\u1537",
+ "\u0007C\u0002\u0002\u1537\u1538\u0007E\u0002\u0002\u1538\u1539\u0007",
+ "E\u0002\u0002\u1539\u153a\u0007G\u0002\u0002\u153a\u153b\u0007U\u0002",
+ "\u0002\u153b\u153c\u0007U\u0002\u0002\u153c\u153d\u0007a\u0002\u0002",
+ "\u153d\u153e\u0007D\u0002\u0002\u153e\u153f\u0007[\u0002\u0002\u153f",
+ "\u1540\u0007a\u0002\u0002\u1540\u1541\u0007T\u0002\u0002\u1541\u1542",
+ "\u0007Q\u0002\u0002\u1542\u1543\u0007Y\u0002\u0002\u1543\u1544\u0007",
+ "K\u0002\u0002\u1544\u1545\u0007F\u0002\u0002\u1545\u00c8\u0003\u0002",
+ "\u0002\u0002\u1546\u1547\u0007D\u0002\u0002\u1547\u1548\u0007G\u0002",
+ "\u0002\u1548\u1549\u0007E\u0002\u0002\u1549\u154a\u0007Q\u0002\u0002",
+ "\u154a\u154b\u0007O\u0002\u0002\u154b\u154c\u0007G\u0002\u0002\u154c",
+ "\u00ca\u0003\u0002\u0002\u0002\u154d\u154e\u0007D\u0002\u0002\u154e",
+ "\u154f\u0007G\u0002\u0002\u154f\u1550\u0007H\u0002\u0002\u1550\u1551",
+ "\u0007Q\u0002\u0002\u1551\u1552\u0007T\u0002\u0002\u1552\u1553\u0007",
+ "G\u0002\u0002\u1553\u00cc\u0003\u0002\u0002\u0002\u1554\u1555\u0007",
+ "D\u0002\u0002\u1555\u1556\u0007G\u0002\u0002\u1556\u1557\u0007I\u0002",
+ "\u0002\u1557\u1558\u0007K\u0002\u0002\u1558\u1559\u0007P\u0002\u0002",
+ "\u1559\u00ce\u0003\u0002\u0002\u0002\u155a\u155b\u0007D\u0002\u0002",
+ "\u155b\u155c\u0007G\u0002\u0002\u155c\u155d\u0007I\u0002\u0002\u155d",
+ "\u155e\u0007K\u0002\u0002\u155e\u155f\u0007P\u0002\u0002\u155f\u1560",
+ "\u0007P\u0002\u0002\u1560\u1561\u0007K\u0002\u0002\u1561\u1562\u0007",
+ "P\u0002\u0002\u1562\u1563\u0007I\u0002\u0002\u1563\u00d0\u0003\u0002",
+ "\u0002\u0002\u1564\u1565\u0007D\u0002\u0002\u1565\u1566\u0007G\u0002",
+ "\u0002\u1566\u1567\u0007I\u0002\u0002\u1567\u1568\u0007K\u0002\u0002",
+ "\u1568\u1569\u0007P\u0002\u0002\u1569\u156a\u0007a\u0002\u0002\u156a",
+ "\u156b\u0007Q\u0002\u0002\u156b\u156c\u0007W\u0002\u0002\u156c\u156d",
+ "\u0007V\u0002\u0002\u156d\u156e\u0007N\u0002\u0002\u156e\u156f\u0007",
+ "K\u0002\u0002\u156f\u1570\u0007P\u0002\u0002\u1570\u1571\u0007G\u0002",
+ "\u0002\u1571\u1572\u0007a\u0002\u0002\u1572\u1573\u0007F\u0002\u0002",
+ "\u1573\u1574\u0007C\u0002\u0002\u1574\u1575\u0007V\u0002\u0002\u1575",
+ "\u1576\u0007C\u0002\u0002\u1576\u00d2\u0003\u0002\u0002\u0002\u1577",
+ "\u1578\u0007D\u0002\u0002\u1578\u1579\u0007G\u0002\u0002\u1579\u157a",
+ "\u0007J\u0002\u0002\u157a\u157b\u0007C\u0002\u0002\u157b\u157c\u0007",
+ "N\u0002\u0002\u157c\u157d\u0007H\u0002\u0002\u157d\u00d4\u0003\u0002",
+ "\u0002\u0002\u157e\u157f\u0007D\u0002\u0002\u157f\u1580\u0007G\u0002",
+ "\u0002\u1580\u1581\u0007S\u0002\u0002\u1581\u1582\u0007W\u0002\u0002",
+ "\u1582\u1583\u0007G\u0002\u0002\u1583\u1584\u0007C\u0002\u0002\u1584",
+ "\u1585\u0007V\u0002\u0002\u1585\u1586\u0007J\u0002\u0002\u1586\u00d6",
+ "\u0003\u0002\u0002\u0002\u1587\u1588\u0007D\u0002\u0002\u1588\u1589",
+ "\u0007G\u0002\u0002\u1589\u158a\u0007V\u0002\u0002\u158a\u158b\u0007",
+ "Y\u0002\u0002\u158b\u158c\u0007G\u0002\u0002\u158c\u158d\u0007G\u0002",
+ "\u0002\u158d\u158e\u0007P\u0002\u0002\u158e\u00d8\u0003\u0002\u0002",
+ "\u0002\u158f\u1590\u0007D\u0002\u0002\u1590\u1591\u0007H\u0002\u0002",
+ "\u1591\u1592\u0007K\u0002\u0002\u1592\u1593\u0007N\u0002\u0002\u1593",
+ "\u1594\u0007G\u0002\u0002\u1594\u00da\u0003\u0002\u0002\u0002\u1595",
+ "\u1596\u0007D\u0002\u0002\u1596\u1597\u0007H\u0002\u0002\u1597\u1598",
+ "\u0007K\u0002\u0002\u1598\u1599\u0007N\u0002\u0002\u1599\u159a\u0007",
+ "G\u0002\u0002\u159a\u159b\u0007P\u0002\u0002\u159b\u159c\u0007C\u0002",
+ "\u0002\u159c\u159d\u0007O\u0002\u0002\u159d\u159e\u0007G\u0002\u0002",
+ "\u159e\u00dc\u0003\u0002\u0002\u0002\u159f\u15a0\u0007D\u0002\u0002",
+ "\u15a0\u15a1\u0007K\u0002\u0002\u15a1\u15a2\u0007I\u0002\u0002\u15a2",
+ "\u15a3\u0007H\u0002\u0002\u15a3\u15a4\u0007K\u0002\u0002\u15a4\u15a5",
+ "\u0007N\u0002\u0002\u15a5\u15a6\u0007G\u0002\u0002\u15a6\u00de\u0003",
+ "\u0002\u0002\u0002\u15a7\u15a8\u0007D\u0002\u0002\u15a8\u15a9\u0007",
+ "K\u0002\u0002\u15a9\u15aa\u0007P\u0002\u0002\u15aa\u15ab\u0007C\u0002",
+ "\u0002\u15ab\u15ac\u0007T\u0002\u0002\u15ac\u15ad\u0007[\u0002\u0002",
+ "\u15ad\u00e0\u0003\u0002\u0002\u0002\u15ae\u15af\u0007D\u0002\u0002",
+ "\u15af\u15b0\u0007K\u0002\u0002\u15b0\u15b1\u0007P\u0002\u0002\u15b1",
+ "\u15b2\u0007C\u0002\u0002\u15b2\u15b3\u0007T\u0002\u0002\u15b3\u15b4",
+ "\u0007[\u0002\u0002\u15b4\u15b5\u0007a\u0002\u0002\u15b5\u15b6\u0007",
+ "F\u0002\u0002\u15b6\u15b7\u0007Q\u0002\u0002\u15b7\u15b8\u0007W\u0002",
+ "\u0002\u15b8\u15b9\u0007D\u0002\u0002\u15b9\u15ba\u0007N\u0002\u0002",
+ "\u15ba\u15bb\u0007G\u0002\u0002\u15bb\u00e2\u0003\u0002\u0002\u0002",
+ "\u15bc\u15bd\u0007D\u0002\u0002\u15bd\u15be\u0007K\u0002\u0002\u15be",
+ "\u15bf\u0007P\u0002\u0002\u15bf\u15c0\u0007C\u0002\u0002\u15c0\u15c1",
+ "\u0007T\u0002\u0002\u15c1\u15c2\u0007[\u0002\u0002\u15c2\u15c3\u0007",
+ "a\u0002\u0002\u15c3\u15c4\u0007F\u0002\u0002\u15c4\u15c5\u0007Q\u0002",
+ "\u0002\u15c5\u15c6\u0007W\u0002\u0002\u15c6\u15c7\u0007D\u0002\u0002",
+ "\u15c7\u15c8\u0007N\u0002\u0002\u15c8\u15c9\u0007G\u0002\u0002\u15c9",
+ "\u15ca\u0007a\u0002\u0002\u15ca\u15cb\u0007K\u0002\u0002\u15cb\u15cc",
+ "\u0007P\u0002\u0002\u15cc\u15cd\u0007H\u0002\u0002\u15cd\u15ce\u0007",
+ "K\u0002\u0002\u15ce\u15cf\u0007P\u0002\u0002\u15cf\u15d0\u0007K\u0002",
+ "\u0002\u15d0\u15d1\u0007V\u0002\u0002\u15d1\u15d2\u0007[\u0002\u0002",
+ "\u15d2\u00e4\u0003\u0002\u0002\u0002\u15d3\u15d4\u0007D\u0002\u0002",
+ "\u15d4\u15d5\u0007K\u0002\u0002\u15d5\u15d6\u0007P\u0002\u0002\u15d6",
+ "\u15d7\u0007C\u0002\u0002\u15d7\u15d8\u0007T\u0002\u0002\u15d8\u15d9",
+ "\u0007[\u0002\u0002\u15d9\u15da\u0007a\u0002\u0002\u15da\u15db\u0007",
+ "F\u0002\u0002\u15db\u15dc\u0007Q\u0002\u0002\u15dc\u15dd\u0007W\u0002",
+ "\u0002\u15dd\u15de\u0007D\u0002\u0002\u15de\u15df\u0007N\u0002\u0002",
+ "\u15df\u15e0\u0007G\u0002\u0002\u15e0\u15e1\u0007a\u0002\u0002\u15e1",
+ "\u15e2\u0007P\u0002\u0002\u15e2\u15e3\u0007C\u0002\u0002\u15e3\u15e4",
+ "\u0007P\u0002\u0002\u15e4\u00e6\u0003\u0002\u0002\u0002\u15e5\u15e6",
+ "\u0007D\u0002\u0002\u15e6\u15e7\u0007K\u0002\u0002\u15e7\u15e8\u0007",
+ "P\u0002\u0002\u15e8\u15e9\u0007C\u0002\u0002\u15e9\u15ea\u0007T\u0002",
+ "\u0002\u15ea\u15eb\u0007[\u0002\u0002\u15eb\u15ec\u0007a\u0002\u0002",
+ "\u15ec\u15ed\u0007H\u0002\u0002\u15ed\u15ee\u0007N\u0002\u0002\u15ee",
+ "\u15ef\u0007Q\u0002\u0002\u15ef\u15f0\u0007C\u0002\u0002\u15f0\u15f1",
+ "\u0007V\u0002\u0002\u15f1\u00e8\u0003\u0002\u0002\u0002\u15f2\u15f3",
+ "\u0007D\u0002\u0002\u15f3\u15f4\u0007K\u0002\u0002\u15f4\u15f5\u0007",
+ "P\u0002\u0002\u15f5\u15f6\u0007C\u0002\u0002\u15f6\u15f7\u0007T\u0002",
+ "\u0002\u15f7\u15f8\u0007[\u0002\u0002\u15f8\u15f9\u0007a\u0002\u0002",
+ "\u15f9\u15fa\u0007H\u0002\u0002\u15fa\u15fb\u0007N\u0002\u0002\u15fb",
+ "\u15fc\u0007Q\u0002\u0002\u15fc\u15fd\u0007C\u0002\u0002\u15fd\u15fe",
+ "\u0007V\u0002\u0002\u15fe\u15ff\u0007a\u0002\u0002\u15ff\u1600\u0007",
+ "K\u0002\u0002\u1600\u1601\u0007P\u0002\u0002\u1601\u1602\u0007H\u0002",
+ "\u0002\u1602\u1603\u0007K\u0002\u0002\u1603\u1604\u0007P\u0002\u0002",
+ "\u1604\u1605\u0007K\u0002\u0002\u1605\u1606\u0007V\u0002\u0002\u1606",
+ "\u1607\u0007[\u0002\u0002\u1607\u00ea\u0003\u0002\u0002\u0002\u1608",
+ "\u1609\u0007D\u0002\u0002\u1609\u160a\u0007K\u0002\u0002\u160a\u160b",
+ "\u0007P\u0002\u0002\u160b\u160c\u0007C\u0002\u0002\u160c\u160d\u0007",
+ "T\u0002\u0002\u160d\u160e\u0007[\u0002\u0002\u160e\u160f\u0007a\u0002",
+ "\u0002\u160f\u1610\u0007H\u0002\u0002\u1610\u1611\u0007N\u0002\u0002",
+ "\u1611\u1612\u0007Q\u0002\u0002\u1612\u1613\u0007C\u0002\u0002\u1613",
+ "\u1614\u0007V\u0002\u0002\u1614\u1615\u0007a\u0002\u0002\u1615\u1616",
+ "\u0007P\u0002\u0002\u1616\u1617\u0007C\u0002\u0002\u1617\u1618\u0007",
+ "P\u0002\u0002\u1618\u00ec\u0003\u0002\u0002\u0002\u1619\u161a\u0007",
+ "D\u0002\u0002\u161a\u161b\u0007K\u0002\u0002\u161b\u161c\u0007P\u0002",
+ "\u0002\u161c\u161d\u0007C\u0002\u0002\u161d\u161e\u0007T\u0002\u0002",
+ "\u161e\u161f\u0007[\u0002\u0002\u161f\u1620\u0007a\u0002\u0002\u1620",
+ "\u1621\u0007K\u0002\u0002\u1621\u1622\u0007P\u0002\u0002\u1622\u1623",
+ "\u0007V\u0002\u0002\u1623\u1624\u0007G\u0002\u0002\u1624\u1625\u0007",
+ "I\u0002\u0002\u1625\u1626\u0007G\u0002\u0002\u1626\u1627\u0007T\u0002",
+ "\u0002\u1627\u00ee\u0003\u0002\u0002\u0002\u1628\u1629\u0007D\u0002",
+ "\u0002\u1629\u162a\u0007K\u0002\u0002\u162a\u162b\u0007P\u0002\u0002",
+ "\u162b\u162c\u0007F\u0002\u0002\u162c\u162d\u0007a\u0002\u0002\u162d",
+ "\u162e\u0007C\u0002\u0002\u162e\u162f\u0007Y\u0002\u0002\u162f\u1630",
+ "\u0007C\u0002\u0002\u1630\u1631\u0007T\u0002\u0002\u1631\u1632\u0007",
+ "G\u0002\u0002\u1632\u00f0\u0003\u0002\u0002\u0002\u1633\u1634\u0007",
+ "D\u0002\u0002\u1634\u1635\u0007K\u0002\u0002\u1635\u1636\u0007P\u0002",
+ "\u0002\u1636\u1637\u0007F\u0002\u0002\u1637\u1638\u0007K\u0002\u0002",
+ "\u1638\u1639\u0007P\u0002\u0002\u1639\u163a\u0007I\u0002\u0002\u163a",
+ "\u00f2\u0003\u0002\u0002\u0002\u163b\u163c\u0007D\u0002\u0002\u163c",
+ "\u163d\u0007K\u0002\u0002\u163d\u163e\u0007P\u0002\u0002\u163e\u163f",
+ "\u0007a\u0002\u0002\u163f\u1640\u0007V\u0002\u0002\u1640\u1641\u0007",
+ "Q\u0002\u0002\u1641\u1642\u0007a\u0002\u0002\u1642\u1643\u0007P\u0002",
+ "\u0002\u1643\u1644\u0007W\u0002\u0002\u1644\u1645\u0007O\u0002\u0002",
+ "\u1645\u00f4\u0003\u0002\u0002\u0002\u1646\u1647\u0007D\u0002\u0002",
+ "\u1647\u1648\u0007K\u0002\u0002\u1648\u1649\u0007V\u0002\u0002\u1649",
+ "\u164a\u0007C\u0002\u0002\u164a\u164b\u0007P\u0002\u0002\u164b\u164c",
+ "\u0007F\u0002\u0002\u164c\u00f6\u0003\u0002\u0002\u0002\u164d\u164e",
+ "\u0007D\u0002\u0002\u164e\u164f\u0007K\u0002\u0002\u164f\u1650\u0007",
+ "V\u0002\u0002\u1650\u1651\u0007O\u0002\u0002\u1651\u1652\u0007C\u0002",
+ "\u0002\u1652\u1653\u0007R\u0002\u0002\u1653\u1654\u0007a\u0002\u0002",
+ "\u1654\u1655\u0007C\u0002\u0002\u1655\u1656\u0007P\u0002\u0002\u1656",
+ "\u1657\u0007F\u0002\u0002\u1657\u00f8\u0003\u0002\u0002\u0002\u1658",
+ "\u1659\u0007D\u0002\u0002\u1659\u165a\u0007K\u0002\u0002\u165a\u165b",
+ "\u0007V\u0002\u0002\u165b\u165c\u0007O\u0002\u0002\u165c\u165d\u0007",
+ "C\u0002\u0002\u165d\u165e\u0007R\u0002\u0002\u165e\u00fa\u0003\u0002",
+ "\u0002\u0002\u165f\u1660\u0007D\u0002\u0002\u1660\u1661\u0007K\u0002",
+ "\u0002\u1661\u1662\u0007V\u0002\u0002\u1662\u1663\u0007O\u0002\u0002",
+ "\u1663\u1664\u0007C\u0002\u0002\u1664\u1665\u0007R\u0002\u0002\u1665",
+ "\u1666\u0007U\u0002\u0002\u1666\u00fc\u0003\u0002\u0002\u0002\u1667",
+ "\u1668\u0007D\u0002\u0002\u1668\u1669\u0007K\u0002\u0002\u1669\u166a",
+ "\u0007V\u0002\u0002\u166a\u166b\u0007O\u0002\u0002\u166b\u166c\u0007",
+ "C\u0002\u0002\u166c\u166d\u0007R\u0002\u0002\u166d\u166e\u0007a\u0002",
+ "\u0002\u166e\u166f\u0007V\u0002\u0002\u166f\u1670\u0007T\u0002\u0002",
+ "\u1670\u1671\u0007G\u0002\u0002\u1671\u1672\u0007G\u0002\u0002\u1672",
+ "\u00fe\u0003\u0002\u0002\u0002\u1673\u1674\u0007D\u0002\u0002\u1674",
+ "\u1675\u0007K\u0002\u0002\u1675\u1676\u0007V\u0002\u0002\u1676\u1677",
+ "\u0007U\u0002\u0002\u1677\u0100\u0003\u0002\u0002\u0002\u1678\u1679",
+ "\u0007D\u0002\u0002\u1679\u167a\u0007N\u0002\u0002\u167a\u167b\u0007",
+ "Q\u0002\u0002\u167b\u167c\u0007D\u0002\u0002\u167c\u0102\u0003\u0002",
+ "\u0002\u0002\u167d\u167e\u0007D\u0002\u0002\u167e\u167f\u0007N\u0002",
+ "\u0002\u167f\u1680\u0007Q\u0002\u0002\u1680\u1681\u0007E\u0002\u0002",
+ "\u1681\u1682\u0007M\u0002\u0002\u1682\u0104\u0003\u0002\u0002\u0002",
+ "\u1683\u1684\u0007D\u0002\u0002\u1684\u1685\u0007N\u0002\u0002\u1685",
+ "\u1686\u0007Q\u0002\u0002\u1686\u1687\u0007E\u0002\u0002\u1687\u1688",
+ "\u0007M\u0002\u0002\u1688\u1689\u0007a\u0002\u0002\u1689\u168a\u0007",
+ "T\u0002\u0002\u168a\u168b\u0007C\u0002\u0002\u168b\u168c\u0007P\u0002",
+ "\u0002\u168c\u168d\u0007I\u0002\u0002\u168d\u168e\u0007G\u0002\u0002",
+ "\u168e\u0106\u0003\u0002\u0002\u0002\u168f\u1690\u0007D\u0002\u0002",
+ "\u1690\u1691\u0007N\u0002\u0002\u1691\u1692\u0007Q\u0002\u0002\u1692",
+ "\u1693\u0007E\u0002\u0002\u1693\u1694\u0007M\u0002\u0002\u1694\u1695",
+ "\u0007U\u0002\u0002\u1695\u0108\u0003\u0002\u0002\u0002\u1696\u1697",
+ "\u0007D\u0002\u0002\u1697\u1698\u0007N\u0002\u0002\u1698\u1699\u0007",
+ "Q\u0002\u0002\u1699\u169a\u0007E\u0002\u0002\u169a\u169b\u0007M\u0002",
+ "\u0002\u169b\u169c\u0007U\u0002\u0002\u169c\u169d\u0007K\u0002\u0002",
+ "\u169d\u169e\u0007\\\u0002\u0002\u169e\u169f\u0007G\u0002\u0002\u169f",
+ "\u010a\u0003\u0002\u0002\u0002\u16a0\u16a1\u0007D\u0002\u0002\u16a1",
+ "\u16a2\u0007Q\u0002\u0002\u16a2\u16a3\u0007F\u0002\u0002\u16a3\u16a4",
+ "\u0007[\u0002\u0002\u16a4\u010c\u0003\u0002\u0002\u0002\u16a5\u16a6",
+ "\u0007D\u0002\u0002\u16a6\u16a7\u0007Q\u0002\u0002\u16a7\u16a8\u0007",
+ "Q\u0002\u0002\u16a8\u16a9\u0007N\u0002\u0002\u16a9\u16aa\u0007G\u0002",
+ "\u0002\u16aa\u16ab\u0007C\u0002\u0002\u16ab\u16ac\u0007P\u0002\u0002",
+ "\u16ac\u010e\u0003\u0002\u0002\u0002\u16ad\u16ae\u0007D\u0002\u0002",
+ "\u16ae\u16af\u0007Q\u0002\u0002\u16af\u16b0\u0007V\u0002\u0002\u16b0",
+ "\u16b1\u0007J\u0002\u0002\u16b1\u0110\u0003\u0002\u0002\u0002\u16b2",
+ "\u16b3\u0007D\u0002\u0002\u16b3\u16b4\u0007Q\u0002\u0002\u16b4\u16b5",
+ "\u0007W\u0002\u0002\u16b5\u16b6\u0007P\u0002\u0002\u16b6\u16b7\u0007",
+ "F\u0002\u0002\u16b7\u0112\u0003\u0002\u0002\u0002\u16b8\u16b9\u0007",
+ "D\u0002\u0002\u16b9\u16ba\u0007T\u0002\u0002\u16ba\u16bb\u0007C\u0002",
+ "\u0002\u16bb\u16bc\u0007P\u0002\u0002\u16bc\u16bd\u0007E\u0002\u0002",
+ "\u16bd\u16be\u0007J\u0002\u0002\u16be\u0114\u0003\u0002\u0002\u0002",
+ "\u16bf\u16c0\u0007D\u0002\u0002\u16c0\u16c1\u0007T\u0002\u0002\u16c1",
+ "\u16c2\u0007G\u0002\u0002\u16c2\u16c3\u0007C\u0002\u0002\u16c3\u16c4",
+ "\u0007F\u0002\u0002\u16c4\u16c5\u0007V\u0002\u0002\u16c5\u16c6\u0007",
+ "J\u0002\u0002\u16c6\u0116\u0003\u0002\u0002\u0002\u16c7\u16c8\u0007",
+ "D\u0002\u0002\u16c8\u16c9\u0007T\u0002\u0002\u16c9\u16ca\u0007Q\u0002",
+ "\u0002\u16ca\u16cb\u0007C\u0002\u0002\u16cb\u16cc\u0007F\u0002\u0002",
+ "\u16cc\u16cd\u0007E\u0002\u0002\u16cd\u16ce\u0007C\u0002\u0002\u16ce",
+ "\u16cf\u0007U\u0002\u0002\u16cf\u16d0\u0007V\u0002\u0002\u16d0\u0118",
+ "\u0003\u0002\u0002\u0002\u16d1\u16d2\u0007D\u0002\u0002\u16d2\u16d3",
+ "\u0007U\u0002\u0002\u16d3\u16d4\u0007Q\u0002\u0002\u16d4\u16d5\u0007",
+ "P\u0002\u0002\u16d5\u011a\u0003\u0002\u0002\u0002\u16d6\u16d7\u0007",
+ "D\u0002\u0002\u16d7\u16d8\u0007W\u0002\u0002\u16d8\u16d9\u0007H\u0002",
+ "\u0002\u16d9\u16da\u0007H\u0002\u0002\u16da\u16db\u0007G\u0002\u0002",
+ "\u16db\u16dc\u0007T\u0002\u0002\u16dc\u011c\u0003\u0002\u0002\u0002",
+ "\u16dd\u16de\u0007D\u0002\u0002\u16de\u16df\u0007W\u0002\u0002\u16df",
+ "\u16e0\u0007H\u0002\u0002\u16e0\u16e1\u0007H\u0002\u0002\u16e1\u16e2",
+ "\u0007G\u0002\u0002\u16e2\u16e3\u0007T\u0002\u0002\u16e3\u16e4\u0007",
+ "a\u0002\u0002\u16e4\u16e5\u0007E\u0002\u0002\u16e5\u16e6\u0007C\u0002",
+ "\u0002\u16e6\u16e7\u0007E\u0002\u0002\u16e7\u16e8\u0007J\u0002\u0002",
+ "\u16e8\u16e9\u0007G\u0002\u0002\u16e9\u011e\u0003\u0002\u0002\u0002",
+ "\u16ea\u16eb\u0007D\u0002\u0002\u16eb\u16ec\u0007W\u0002\u0002\u16ec",
+ "\u16ed\u0007H\u0002\u0002\u16ed\u16ee\u0007H\u0002\u0002\u16ee\u16ef",
+ "\u0007G\u0002\u0002\u16ef\u16f0\u0007T\u0002\u0002\u16f0\u16f1\u0007",
+ "a\u0002\u0002\u16f1\u16f2\u0007R\u0002\u0002\u16f2\u16f3\u0007Q\u0002",
+ "\u0002\u16f3\u16f4\u0007Q\u0002\u0002\u16f4\u16f5\u0007N\u0002\u0002",
+ "\u16f5\u0120\u0003\u0002\u0002\u0002\u16f6\u16f7\u0007D\u0002\u0002",
+ "\u16f7\u16f8\u0007W\u0002\u0002\u16f8\u16f9\u0007K\u0002\u0002\u16f9",
+ "\u16fa\u0007N\u0002\u0002\u16fa\u16fb\u0007F\u0002\u0002\u16fb\u0122",
+ "\u0003\u0002\u0002\u0002\u16fc\u16fd\u0007D\u0002\u0002\u16fd\u16fe",
+ "\u0007W\u0002\u0002\u16fe\u16ff\u0007N\u0002\u0002\u16ff\u1700\u0007",
+ "M\u0002\u0002\u1700\u0124\u0003\u0002\u0002\u0002\u1701\u1702\u0007",
+ "D\u0002\u0002\u1702\u1703\u0007[\u0002\u0002\u1703\u0126\u0003\u0002",
+ "\u0002\u0002\u1704\u1705\u0007D\u0002\u0002\u1705\u1706\u0007[\u0002",
+ "\u0002\u1706\u1707\u0007R\u0002\u0002\u1707\u1708\u0007C\u0002\u0002",
+ "\u1708\u1709\u0007U\u0002\u0002\u1709\u170a\u0007U\u0002\u0002\u170a",
+ "\u170b\u0007a\u0002\u0002\u170b\u170c\u0007T\u0002\u0002\u170c\u170d",
+ "\u0007G\u0002\u0002\u170d\u170e\u0007E\u0002\u0002\u170e\u170f\u0007",
+ "W\u0002\u0002\u170f\u1710\u0007T\u0002\u0002\u1710\u1711\u0007U\u0002",
+ "\u0002\u1711\u1712\u0007K\u0002\u0002\u1712\u1713\u0007X\u0002\u0002",
+ "\u1713\u1714\u0007G\u0002\u0002\u1714\u1715\u0007a\u0002\u0002\u1715",
+ "\u1716\u0007E\u0002\u0002\u1716\u1717\u0007J\u0002\u0002\u1717\u1718",
+ "\u0007G\u0002\u0002\u1718\u1719\u0007E\u0002\u0002\u1719\u171a\u0007",
+ "M\u0002\u0002\u171a\u0128\u0003\u0002\u0002\u0002\u171b\u171c\u0007",
+ "D\u0002\u0002\u171c\u171d\u0007[\u0002\u0002\u171d\u171e\u0007R\u0002",
+ "\u0002\u171e\u171f\u0007C\u0002\u0002\u171f\u1720\u0007U\u0002\u0002",
+ "\u1720\u1721\u0007U\u0002\u0002\u1721\u1722\u0007a\u0002\u0002\u1722",
+ "\u1723\u0007W\u0002\u0002\u1723\u1724\u0007L\u0002\u0002\u1724\u1725",
+ "\u0007X\u0002\u0002\u1725\u1726\u0007E\u0002\u0002\u1726\u012a\u0003",
+ "\u0002\u0002\u0002\u1727\u1728\u0007D\u0002\u0002\u1728\u1729\u0007",
+ "[\u0002\u0002\u1729\u172a\u0007V\u0002\u0002\u172a\u172b\u0007G\u0002",
+ "\u0002\u172b\u012c\u0003\u0002\u0002\u0002\u172c\u172d\u0007E\u0002",
+ "\u0002\u172d\u172e\u0007C\u0002\u0002\u172e\u172f\u0007E\u0002\u0002",
+ "\u172f\u1730\u0007J\u0002\u0002\u1730\u1731\u0007G\u0002\u0002\u1731",
+ "\u012e\u0003\u0002\u0002\u0002\u1732\u1733\u0007E\u0002\u0002\u1733",
+ "\u1734\u0007C\u0002\u0002\u1734\u1735\u0007E\u0002\u0002\u1735\u1736",
+ "\u0007J\u0002\u0002\u1736\u1737\u0007G\u0002\u0002\u1737\u1738\u0007",
+ "a\u0002\u0002\u1738\u1739\u0007E\u0002\u0002\u1739\u173a\u0007D\u0002",
+ "\u0002\u173a\u0130\u0003\u0002\u0002\u0002\u173b\u173c\u0007E\u0002",
+ "\u0002\u173c\u173d\u0007C\u0002\u0002\u173d\u173e\u0007E\u0002\u0002",
+ "\u173e\u173f\u0007J\u0002\u0002\u173f\u1740\u0007G\u0002\u0002\u1740",
+ "\u1741\u0007a\u0002\u0002\u1741\u1742\u0007K\u0002\u0002\u1742\u1743",
+ "\u0007P\u0002\u0002\u1743\u1744\u0007U\u0002\u0002\u1744\u1745\u0007",
+ "V\u0002\u0002\u1745\u1746\u0007C\u0002\u0002\u1746\u1747\u0007P\u0002",
+ "\u0002\u1747\u1748\u0007E\u0002\u0002\u1748\u1749\u0007G\u0002\u0002",
+ "\u1749\u174a\u0007U\u0002\u0002\u174a\u0132\u0003\u0002\u0002\u0002",
+ "\u174b\u174c\u0007E\u0002\u0002\u174c\u174d\u0007C\u0002\u0002\u174d",
+ "\u174e\u0007E\u0002\u0002\u174e\u174f\u0007J\u0002\u0002\u174f\u1750",
+ "\u0007G\u0002\u0002\u1750\u1751\u0007a\u0002\u0002\u1751\u1752\u0007",
+ "V\u0002\u0002\u1752\u1753\u0007G\u0002\u0002\u1753\u1754\u0007O\u0002",
+ "\u0002\u1754\u1755\u0007R\u0002\u0002\u1755\u1756\u0007a\u0002\u0002",
+ "\u1756\u1757\u0007V\u0002\u0002\u1757\u1758\u0007C\u0002\u0002\u1758",
+ "\u1759\u0007D\u0002\u0002\u1759\u175a\u0007N\u0002\u0002\u175a\u175b",
+ "\u0007G\u0002\u0002\u175b\u0134\u0003\u0002\u0002\u0002\u175c\u175d",
+ "\u0007E\u0002\u0002\u175d\u175e\u0007C\u0002\u0002\u175e\u175f\u0007",
+ "E\u0002\u0002\u175f\u1760\u0007J\u0002\u0002\u1760\u1761\u0007K\u0002",
+ "\u0002\u1761\u1762\u0007P\u0002\u0002\u1762\u1763\u0007I\u0002\u0002",
+ "\u1763\u0136\u0003\u0002\u0002\u0002\u1764\u1765\u0007E\u0002\u0002",
+ "\u1765\u1766\u0007C\u0002\u0002\u1766\u1767\u0007N\u0002\u0002\u1767",
+ "\u1768\u0007E\u0002\u0002\u1768\u1769\u0007W\u0002\u0002\u1769\u176a",
+ "\u0007N\u0002\u0002\u176a\u176b\u0007C\u0002\u0002\u176b\u176c\u0007",
+ "V\u0002\u0002\u176c\u176d\u0007G\u0002\u0002\u176d\u176e\u0007F\u0002",
+ "\u0002\u176e\u0138\u0003\u0002\u0002\u0002\u176f\u1770\u0007E\u0002",
+ "\u0002\u1770\u1771\u0007C\u0002\u0002\u1771\u1772\u0007N\u0002\u0002",
+ "\u1772\u1773\u0007N\u0002\u0002\u1773\u1774\u0007D\u0002\u0002\u1774",
+ "\u1775\u0007C\u0002\u0002\u1775\u1776\u0007E\u0002\u0002\u1776\u1777",
+ "\u0007M\u0002\u0002\u1777\u013a\u0003\u0002\u0002\u0002\u1778\u1779",
+ "\u0007E\u0002\u0002\u1779\u177a\u0007C\u0002\u0002\u177a\u177b\u0007",
+ "N\u0002\u0002\u177b\u177c\u0007N\u0002\u0002\u177c\u013c\u0003\u0002",
+ "\u0002\u0002\u177d\u177e\u0007E\u0002\u0002\u177e\u177f\u0007C\u0002",
+ "\u0002\u177f\u1780\u0007P\u0002\u0002\u1780\u1781\u0007E\u0002\u0002",
+ "\u1781\u1782\u0007G\u0002\u0002\u1782\u1783\u0007N\u0002\u0002\u1783",
+ "\u013e\u0003\u0002\u0002\u0002\u1784\u1785\u0007E\u0002\u0002\u1785",
+ "\u1786\u0007C\u0002\u0002\u1786\u1787\u0007P\u0002\u0002\u1787\u1788",
+ "\u0007Q\u0002\u0002\u1788\u1789\u0007P\u0002\u0002\u1789\u178a\u0007",
+ "K\u0002\u0002\u178a\u178b\u0007E\u0002\u0002\u178b\u178c\u0007C\u0002",
+ "\u0002\u178c\u178d\u0007N\u0002\u0002\u178d\u0140\u0003\u0002\u0002",
+ "\u0002\u178e\u178f\u0007E\u0002\u0002\u178f\u1790\u0007C\u0002\u0002",
+ "\u1790\u1791\u0007R\u0002\u0002\u1791\u1792\u0007C\u0002\u0002\u1792",
+ "\u1793\u0007E\u0002\u0002\u1793\u1794\u0007K\u0002\u0002\u1794\u1795",
+ "\u0007V\u0002\u0002\u1795\u1796\u0007[\u0002\u0002\u1796\u0142\u0003",
+ "\u0002\u0002\u0002\u1797\u1798\u0007E\u0002\u0002\u1798\u1799\u0007",
+ "C\u0002\u0002\u1799\u179a\u0007T\u0002\u0002\u179a\u179b\u0007F\u0002",
+ "\u0002\u179b\u179c\u0007K\u0002\u0002\u179c\u179d\u0007P\u0002\u0002",
+ "\u179d\u179e\u0007C\u0002\u0002\u179e\u179f\u0007N\u0002\u0002\u179f",
+ "\u17a0\u0007K\u0002\u0002\u17a0\u17a1\u0007V\u0002\u0002\u17a1\u17a2",
+ "\u0007[\u0002\u0002\u17a2\u0144\u0003\u0002\u0002\u0002\u17a3\u17a4",
+ "\u0007E\u0002\u0002\u17a4\u17a5\u0007C\u0002\u0002\u17a5\u17a6\u0007",
+ "U\u0002\u0002\u17a6\u17a7\u0007E\u0002\u0002\u17a7\u17a8\u0007C\u0002",
+ "\u0002\u17a8\u17a9\u0007F\u0002\u0002\u17a9\u17aa\u0007G\u0002\u0002",
+ "\u17aa\u0146\u0003\u0002\u0002\u0002\u17ab\u17ac\u0007E\u0002\u0002",
+ "\u17ac\u17ad\u0007C\u0002\u0002\u17ad\u17ae\u0007U\u0002\u0002\u17ae",
+ "\u17af\u0007G\u0002\u0002\u17af\u0148\u0003\u0002\u0002\u0002\u17b0",
+ "\u17b1\u0007E\u0002\u0002\u17b1\u17b2\u0007C\u0002\u0002\u17b2\u17b3",
+ "\u0007U\u0002\u0002\u17b3\u17b4\u0007V\u0002\u0002\u17b4\u014a\u0003",
+ "\u0002\u0002\u0002\u17b5\u17b6\u0007E\u0002\u0002\u17b6\u17b7\u0007",
+ "C\u0002\u0002\u17b7\u17b8\u0007V\u0002\u0002\u17b8\u17b9\u0007G\u0002",
+ "\u0002\u17b9\u17ba\u0007I\u0002\u0002\u17ba\u17bb\u0007Q\u0002\u0002",
+ "\u17bb\u17bc\u0007T\u0002\u0002\u17bc\u17bd\u0007[\u0002\u0002\u17bd",
+ "\u014c\u0003\u0002\u0002\u0002\u17be\u17bf\u0007E\u0002\u0002\u17bf",
+ "\u17c0\u0007F\u0002\u0002\u17c0\u17c1\u0007D\u0002\u0002\u17c1\u17c2",
+ "\u0007&\u0002\u0002\u17c2\u17c3\u0007F\u0002\u0002\u17c3\u17c4\u0007",
+ "G\u0002\u0002\u17c4\u17c5\u0007H\u0002\u0002\u17c5\u17c6\u0007C\u0002",
+ "\u0002\u17c6\u17c7\u0007W\u0002\u0002\u17c7\u17c8\u0007N\u0002\u0002",
+ "\u17c8\u17c9\u0007V\u0002\u0002\u17c9\u014e\u0003\u0002\u0002\u0002",
+ "\u17ca\u17cb\u0007E\u0002\u0002\u17cb\u17cc\u0007G\u0002\u0002\u17cc",
+ "\u17cd\u0007K\u0002\u0002\u17cd\u17ce\u0007N\u0002\u0002\u17ce\u0150",
+ "\u0003\u0002\u0002\u0002\u17cf\u17d0\u0007E\u0002\u0002\u17d0\u17d1",
+ "\u0007G\u0002\u0002\u17d1\u17d2\u0007N\u0002\u0002\u17d2\u17d3\u0007",
+ "N\u0002\u0002\u17d3\u17d4\u0007a\u0002\u0002\u17d4\u17d5\u0007H\u0002",
+ "\u0002\u17d5\u17d6\u0007N\u0002\u0002\u17d6\u17d7\u0007C\u0002\u0002",
+ "\u17d7\u17d8\u0007U\u0002\u0002\u17d8\u17d9\u0007J\u0002\u0002\u17d9",
+ "\u17da\u0007a\u0002\u0002\u17da\u17db\u0007E\u0002\u0002\u17db\u17dc",
+ "\u0007C\u0002\u0002\u17dc\u17dd\u0007E\u0002\u0002\u17dd\u17de\u0007",
+ "J\u0002\u0002\u17de\u17df\u0007G\u0002\u0002\u17df\u0152\u0003\u0002",
+ "\u0002\u0002\u17e0\u17e1\u0007E\u0002\u0002\u17e1\u17e2\u0007G\u0002",
+ "\u0002\u17e2\u17e3\u0007T\u0002\u0002\u17e3\u17e4\u0007V\u0002\u0002",
+ "\u17e4\u17e5\u0007K\u0002\u0002\u17e5\u17e6\u0007H\u0002\u0002\u17e6",
+ "\u17e7\u0007K\u0002\u0002\u17e7\u17e8\u0007E\u0002\u0002\u17e8\u17e9",
+ "\u0007C\u0002\u0002\u17e9\u17ea\u0007V\u0002\u0002\u17ea\u17eb\u0007",
+ "G\u0002\u0002\u17eb\u0154\u0003\u0002\u0002\u0002\u17ec\u17ed\u0007",
+ "E\u0002\u0002\u17ed\u17ee\u0007H\u0002\u0002\u17ee\u17ef\u0007K\u0002",
+ "\u0002\u17ef\u17f0\u0007N\u0002\u0002\u17f0\u17f1\u0007G\u0002\u0002",
+ "\u17f1\u0156\u0003\u0002\u0002\u0002\u17f2\u17f3\u0007E\u0002\u0002",
+ "\u17f3\u17f4\u0007J\u0002\u0002\u17f4\u17f5\u0007C\u0002\u0002\u17f5",
+ "\u17f6\u0007K\u0002\u0002\u17f6\u17f7\u0007P\u0002\u0002\u17f7\u17f8",
+ "\u0007G\u0002\u0002\u17f8\u17f9\u0007F\u0002\u0002\u17f9\u0158\u0003",
+ "\u0002\u0002\u0002\u17fa\u17fb\u0007E\u0002\u0002\u17fb\u17fc\u0007",
+ "J\u0002\u0002\u17fc\u17fd\u0007C\u0002\u0002\u17fd\u17fe\u0007P\u0002",
+ "\u0002\u17fe\u17ff\u0007I\u0002\u0002\u17ff\u1800\u0007G\u0002\u0002",
+ "\u1800\u015a\u0003\u0002\u0002\u0002\u1801\u1802\u0007E\u0002\u0002",
+ "\u1802\u1803\u0007J\u0002\u0002\u1803\u1804\u0007C\u0002\u0002\u1804",
+ "\u1805\u0007P\u0002\u0002\u1805\u1806\u0007I\u0002\u0002\u1806\u1807",
+ "\u0007G\u0002\u0002\u1807\u1808\u0007V\u0002\u0002\u1808\u1809\u0007",
+ "T\u0002\u0002\u1809\u180a\u0007C\u0002\u0002\u180a\u180b\u0007E\u0002",
+ "\u0002\u180b\u180c\u0007M\u0002\u0002\u180c\u180d\u0007K\u0002\u0002",
+ "\u180d\u180e\u0007P\u0002\u0002\u180e\u180f\u0007I\u0002\u0002\u180f",
+ "\u015c\u0003\u0002\u0002\u0002\u1810\u1811\u0007E\u0002\u0002\u1811",
+ "\u1812\u0007J\u0002\u0002\u1812\u1813\u0007C\u0002\u0002\u1813\u1814",
+ "\u0007P\u0002\u0002\u1814\u1815\u0007I\u0002\u0002\u1815\u1816\u0007",
+ "G\u0002\u0002\u1816\u1817\u0007a\u0002\u0002\u1817\u1818\u0007F\u0002",
+ "\u0002\u1818\u1819\u0007W\u0002\u0002\u1819\u181a\u0007R\u0002\u0002",
+ "\u181a\u181b\u0007M\u0002\u0002\u181b\u181c\u0007G\u0002\u0002\u181c",
+ "\u181d\u0007[\u0002\u0002\u181d\u181e\u0007a\u0002\u0002\u181e\u181f",
+ "\u0007G\u0002\u0002\u181f\u1820\u0007T\u0002\u0002\u1820\u1821\u0007",
+ "T\u0002\u0002\u1821\u1822\u0007Q\u0002\u0002\u1822\u1823\u0007T\u0002",
+ "\u0002\u1823\u1824\u0007a\u0002\u0002\u1824\u1825\u0007K\u0002\u0002",
+ "\u1825\u1826\u0007P\u0002\u0002\u1826\u1827\u0007F\u0002\u0002\u1827",
+ "\u1828\u0007G\u0002\u0002\u1828\u1829\u0007Z\u0002\u0002\u1829\u015e",
+ "\u0003\u0002\u0002\u0002\u182a\u182b\u0007E\u0002\u0002\u182b\u182c",
+ "\u0007J\u0002\u0002\u182c\u182d\u0007C\u0002\u0002\u182d\u182e\u0007",
+ "T\u0002\u0002\u182e\u182f\u0007C\u0002\u0002\u182f\u1830\u0007E\u0002",
+ "\u0002\u1830\u1831\u0007V\u0002\u0002\u1831\u1832\u0007G\u0002\u0002",
+ "\u1832\u1833\u0007T\u0002\u0002\u1833\u0160\u0003\u0002\u0002\u0002",
+ "\u1834\u1835\u0007E\u0002\u0002\u1835\u1836\u0007J\u0002\u0002\u1836",
+ "\u1837\u0007C\u0002\u0002\u1837\u1838\u0007T\u0002\u0002\u1838\u0162",
+ "\u0003\u0002\u0002\u0002\u1839\u183a\u0007E\u0002\u0002\u183a\u183b",
+ "\u0007J\u0002\u0002\u183b\u183c\u0007C\u0002\u0002\u183c\u183d\u0007",
+ "T\u0002\u0002\u183d\u183e\u0007a\u0002\u0002\u183e\u183f\u0007E\u0002",
+ "\u0002\u183f\u1840\u0007U\u0002\u0002\u1840\u0164\u0003\u0002\u0002",
+ "\u0002\u1841\u1842\u0007E\u0002\u0002\u1842\u1843\u0007J\u0002\u0002",
+ "\u1843\u1844\u0007C\u0002\u0002\u1844\u1845\u0007T\u0002\u0002\u1845",
+ "\u1846\u0007V\u0002\u0002\u1846\u1847\u0007Q\u0002\u0002\u1847\u1848",
+ "\u0007T\u0002\u0002\u1848\u1849\u0007Q\u0002\u0002\u1849\u184a\u0007",
+ "Y\u0002\u0002\u184a\u184b\u0007K\u0002\u0002\u184b\u184c\u0007F\u0002",
+ "\u0002\u184c\u0166\u0003\u0002\u0002\u0002\u184d\u184e\u0007E\u0002",
+ "\u0002\u184e\u184f\u0007J\u0002\u0002\u184f\u1850\u0007G\u0002\u0002",
+ "\u1850\u1851\u0007E\u0002\u0002\u1851\u1852\u0007M\u0002\u0002\u1852",
+ "\u1853\u0007a\u0002\u0002\u1853\u1854\u0007C\u0002\u0002\u1854\u1855",
+ "\u0007E\u0002\u0002\u1855\u1856\u0007N\u0002\u0002\u1856\u1857\u0007",
+ "a\u0002\u0002\u1857\u1858\u0007T\u0002\u0002\u1858\u1859\u0007G\u0002",
+ "\u0002\u1859\u185a\u0007Y\u0002\u0002\u185a\u185b\u0007T\u0002\u0002",
+ "\u185b\u185c\u0007K\u0002\u0002\u185c\u185d\u0007V\u0002\u0002\u185d",
+ "\u185e\u0007G\u0002\u0002\u185e\u0168\u0003\u0002\u0002\u0002\u185f",
+ "\u1860\u0007E\u0002\u0002\u1860\u1861\u0007J\u0002\u0002\u1861\u1862",
+ "\u0007G\u0002\u0002\u1862\u1863\u0007E\u0002\u0002\u1863\u1864\u0007",
+ "M\u0002\u0002\u1864\u016a\u0003\u0002\u0002\u0002\u1865\u1866\u0007",
+ "E\u0002\u0002\u1866\u1867\u0007J\u0002\u0002\u1867\u1868\u0007G\u0002",
+ "\u0002\u1868\u1869\u0007E\u0002\u0002\u1869\u186a\u0007M\u0002\u0002",
+ "\u186a\u186b\u0007R\u0002\u0002\u186b\u186c\u0007Q\u0002\u0002\u186c",
+ "\u186d\u0007K\u0002\u0002\u186d\u186e\u0007P\u0002\u0002\u186e\u186f",
+ "\u0007V\u0002\u0002\u186f\u016c\u0003\u0002\u0002\u0002\u1870\u1871",
+ "\u0007E\u0002\u0002\u1871\u1872\u0007J\u0002\u0002\u1872\u1873\u0007",
+ "K\u0002\u0002\u1873\u1874\u0007N\u0002\u0002\u1874\u1875\u0007F\u0002",
+ "\u0002\u1875\u016e\u0003\u0002\u0002\u0002\u1876\u1877\u0007E\u0002",
+ "\u0002\u1877\u1878\u0007J\u0002\u0002\u1878\u1879\u0007Q\u0002\u0002",
+ "\u1879\u187a\u0007Q\u0002\u0002\u187a\u187b\u0007U\u0002\u0002\u187b",
+ "\u187c\u0007G\u0002\u0002\u187c\u0170\u0003\u0002\u0002\u0002\u187d",
+ "\u187e\u0007E\u0002\u0002\u187e\u187f\u0007J\u0002\u0002\u187f\u1880",
+ "\u0007T\u0002\u0002\u1880\u0172\u0003\u0002\u0002\u0002\u1881\u1882",
+ "\u0007E\u0002\u0002\u1882\u1883\u0007J\u0002\u0002\u1883\u1884\u0007",
+ "W\u0002\u0002\u1884\u1885\u0007P\u0002\u0002\u1885\u1886\u0007M\u0002",
+ "\u0002\u1886\u0174\u0003\u0002\u0002\u0002\u1887\u1888\u0007E\u0002",
+ "\u0002\u1888\u1889\u0007N\u0002\u0002\u1889\u188a\u0007C\u0002\u0002",
+ "\u188a\u188b\u0007U\u0002\u0002\u188b\u188c\u0007U\u0002\u0002\u188c",
+ "\u0176\u0003\u0002\u0002\u0002\u188d\u188e\u0007E\u0002\u0002\u188e",
+ "\u188f\u0007N\u0002\u0002\u188f\u1890\u0007C\u0002\u0002\u1890\u1891",
+ "\u0007U\u0002\u0002\u1891\u1892\u0007U\u0002\u0002\u1892\u1893\u0007",
+ "K\u0002\u0002\u1893\u1894\u0007H\u0002\u0002\u1894\u1895\u0007K\u0002",
+ "\u0002\u1895\u1896\u0007G\u0002\u0002\u1896\u1897\u0007T\u0002\u0002",
+ "\u1897\u0178\u0003\u0002\u0002\u0002\u1898\u1899\u0007E\u0002\u0002",
+ "\u1899\u189a\u0007N\u0002\u0002\u189a\u189b\u0007G\u0002\u0002\u189b",
+ "\u189c\u0007C\u0002\u0002\u189c\u189d\u0007P\u0002\u0002\u189d\u189e",
+ "\u0007W\u0002\u0002\u189e\u189f\u0007R\u0002\u0002\u189f\u017a\u0003",
+ "\u0002\u0002\u0002\u18a0\u18a1\u0007E\u0002\u0002\u18a1\u18a2\u0007",
+ "N\u0002\u0002\u18a2\u18a3\u0007G\u0002\u0002\u18a3\u18a4\u0007C\u0002",
+ "\u0002\u18a4\u18a5\u0007T\u0002\u0002\u18a5\u017c\u0003\u0002\u0002",
+ "\u0002\u18a6\u18a7\u0007E\u0002\u0002\u18a7\u017e\u0003\u0002\u0002",
+ "\u0002\u18a8\u18a9\u0007E\u0002\u0002\u18a9\u18aa\u0007N\u0002\u0002",
+ "\u18aa\u18ab\u0007K\u0002\u0002\u18ab\u18ac\u0007G\u0002\u0002\u18ac",
+ "\u18ad\u0007P\u0002\u0002\u18ad\u18ae\u0007V\u0002\u0002\u18ae\u0180",
+ "\u0003\u0002\u0002\u0002\u18af\u18b0\u0007E\u0002\u0002\u18b0\u18b1",
+ "\u0007N\u0002\u0002\u18b1\u18b2\u0007Q\u0002\u0002\u18b2\u18b3\u0007",
+ "D\u0002\u0002\u18b3\u0182\u0003\u0002\u0002\u0002\u18b4\u18b5\u0007",
+ "E\u0002\u0002\u18b5\u18b6\u0007N\u0002\u0002\u18b6\u18b7\u0007Q\u0002",
+ "\u0002\u18b7\u18b8\u0007P\u0002\u0002\u18b8\u18b9\u0007G\u0002\u0002",
+ "\u18b9\u0184\u0003\u0002\u0002\u0002\u18ba\u18bb\u0007E\u0002\u0002",
+ "\u18bb\u18bc\u0007N\u0002\u0002\u18bc\u18bd\u0007Q\u0002\u0002\u18bd",
+ "\u18be\u0007U\u0002\u0002\u18be\u18bf\u0007G\u0002\u0002\u18bf\u18c0",
+ "\u0007a\u0002\u0002\u18c0\u18c1\u0007E\u0002\u0002\u18c1\u18c2\u0007",
+ "C\u0002\u0002\u18c2\u18c3\u0007E\u0002\u0002\u18c3\u18c4\u0007J\u0002",
+ "\u0002\u18c4\u18c5\u0007G\u0002\u0002\u18c5\u18c6\u0007F\u0002\u0002",
+ "\u18c6\u18c7\u0007a\u0002\u0002\u18c7\u18c8\u0007Q\u0002\u0002\u18c8",
+ "\u18c9\u0007R\u0002\u0002\u18c9\u18ca\u0007G\u0002\u0002\u18ca\u18cb",
+ "\u0007P\u0002\u0002\u18cb\u18cc\u0007a\u0002\u0002\u18cc\u18cd\u0007",
+ "E\u0002\u0002\u18cd\u18ce\u0007W\u0002\u0002\u18ce\u18cf\u0007T\u0002",
+ "\u0002\u18cf\u18d0\u0007U\u0002\u0002\u18d0\u18d1\u0007Q\u0002\u0002",
+ "\u18d1\u18d2\u0007T\u0002\u0002\u18d2\u18d3\u0007U\u0002\u0002\u18d3",
+ "\u0186\u0003\u0002\u0002\u0002\u18d4\u18d5\u0007E\u0002\u0002\u18d5",
+ "\u18d6\u0007N\u0002\u0002\u18d6\u18d7\u0007Q\u0002\u0002\u18d7\u18d8",
+ "\u0007U\u0002\u0002\u18d8\u18d9\u0007G\u0002\u0002\u18d9\u0188\u0003",
+ "\u0002\u0002\u0002\u18da\u18db\u0007E\u0002\u0002\u18db\u18dc\u0007",
+ "N\u0002\u0002\u18dc\u18dd\u0007W\u0002\u0002\u18dd\u18de\u0007U\u0002",
+ "\u0002\u18de\u18df\u0007V\u0002\u0002\u18df\u18e0\u0007G\u0002\u0002",
+ "\u18e0\u18e1\u0007T\u0002\u0002\u18e1\u18e2\u0007a\u0002\u0002\u18e2",
+ "\u18e3\u0007D\u0002\u0002\u18e3\u18e4\u0007[\u0002\u0002\u18e4\u18e5",
+ "\u0007a\u0002\u0002\u18e5\u18e6\u0007T\u0002\u0002\u18e6\u18e7\u0007",
+ "Q\u0002\u0002\u18e7\u18e8\u0007Y\u0002\u0002\u18e8\u18e9\u0007K\u0002",
+ "\u0002\u18e9\u18ea\u0007F\u0002\u0002\u18ea\u018a\u0003\u0002\u0002",
+ "\u0002\u18eb\u18ec\u0007E\u0002\u0002\u18ec\u18ed\u0007N\u0002\u0002",
+ "\u18ed\u18ee\u0007W\u0002\u0002\u18ee\u18ef\u0007U\u0002\u0002\u18ef",
+ "\u18f0\u0007V\u0002\u0002\u18f0\u18f1\u0007G\u0002\u0002\u18f1\u18f2",
+ "\u0007T\u0002\u0002\u18f2\u018c\u0003\u0002\u0002\u0002\u18f3\u18f4",
+ "\u0007E\u0002\u0002\u18f4\u18f5\u0007N\u0002\u0002\u18f5\u18f6\u0007",
+ "W\u0002\u0002\u18f6\u18f7\u0007U\u0002\u0002\u18f7\u18f8\u0007V\u0002",
+ "\u0002\u18f8\u18f9\u0007G\u0002\u0002\u18f9\u18fa\u0007T\u0002\u0002",
+ "\u18fa\u18fb\u0007a\u0002\u0002\u18fb\u18fc\u0007F\u0002\u0002\u18fc",
+ "\u18fd\u0007G\u0002\u0002\u18fd\u18fe\u0007V\u0002\u0002\u18fe\u18ff",
+ "\u0007C\u0002\u0002\u18ff\u1900\u0007K\u0002\u0002\u1900\u1901\u0007",
+ "N\u0002\u0002\u1901\u1902\u0007U\u0002\u0002\u1902\u018e\u0003\u0002",
+ "\u0002\u0002\u1903\u1904\u0007E\u0002\u0002\u1904\u1905\u0007N\u0002",
+ "\u0002\u1905\u1906\u0007W\u0002\u0002\u1906\u1907\u0007U\u0002\u0002",
+ "\u1907\u1908\u0007V\u0002\u0002\u1908\u1909\u0007G\u0002\u0002\u1909",
+ "\u190a\u0007T\u0002\u0002\u190a\u190b\u0007a\u0002\u0002\u190b\u190c",
+ "\u0007F\u0002\u0002\u190c\u190d\u0007K\u0002\u0002\u190d\u190e\u0007",
+ "U\u0002\u0002\u190e\u190f\u0007V\u0002\u0002\u190f\u1910\u0007C\u0002",
+ "\u0002\u1910\u1911\u0007P\u0002\u0002\u1911\u1912\u0007E\u0002\u0002",
+ "\u1912\u1913\u0007G\u0002\u0002\u1913\u0190\u0003\u0002\u0002\u0002",
+ "\u1914\u1915\u0007E\u0002\u0002\u1915\u1916\u0007N\u0002\u0002\u1916",
+ "\u1917\u0007W\u0002\u0002\u1917\u1918\u0007U\u0002\u0002\u1918\u1919",
+ "\u0007V\u0002\u0002\u1919\u191a\u0007G\u0002\u0002\u191a\u191b\u0007",
+ "T\u0002\u0002\u191b\u191c\u0007a\u0002\u0002\u191c\u191d\u0007K\u0002",
+ "\u0002\u191d\u191e\u0007F\u0002\u0002\u191e\u0192\u0003\u0002\u0002",
+ "\u0002\u191f\u1920\u0007E\u0002\u0002\u1920\u1921\u0007N\u0002\u0002",
+ "\u1921\u1922\u0007W\u0002\u0002\u1922\u1923\u0007U\u0002\u0002\u1923",
+ "\u1924\u0007V\u0002\u0002\u1924\u1925\u0007G\u0002\u0002\u1925\u1926",
+ "\u0007T\u0002\u0002\u1926\u1927\u0007K\u0002\u0002\u1927\u1928\u0007",
+ "P\u0002\u0002\u1928\u1929\u0007I\u0002\u0002\u1929\u0194\u0003\u0002",
+ "\u0002\u0002\u192a\u192b\u0007E\u0002\u0002\u192b\u192c\u0007N\u0002",
+ "\u0002\u192c\u192d\u0007W\u0002\u0002\u192d\u192e\u0007U\u0002\u0002",
+ "\u192e\u192f\u0007V\u0002\u0002\u192f\u1930\u0007G\u0002\u0002\u1930",
+ "\u1931\u0007T\u0002\u0002\u1931\u1932\u0007K\u0002\u0002\u1932\u1933",
+ "\u0007P\u0002\u0002\u1933\u1934\u0007I\u0002\u0002\u1934\u1935\u0007",
+ "a\u0002\u0002\u1935\u1936\u0007H\u0002\u0002\u1936\u1937\u0007C\u0002",
+ "\u0002\u1937\u1938\u0007E\u0002\u0002\u1938\u1939\u0007V\u0002\u0002",
+ "\u1939\u193a\u0007Q\u0002\u0002\u193a\u193b\u0007T\u0002\u0002\u193b",
+ "\u0196\u0003\u0002\u0002\u0002\u193c\u193d\u0007E\u0002\u0002\u193d",
+ "\u193e\u0007N\u0002\u0002\u193e\u193f\u0007W\u0002\u0002\u193f\u1940",
+ "\u0007U\u0002\u0002\u1940\u1941\u0007V\u0002\u0002\u1941\u1942\u0007",
+ "G\u0002\u0002\u1942\u1943\u0007T\u0002\u0002\u1943\u1944\u0007a\u0002",
+ "\u0002\u1944\u1945\u0007R\u0002\u0002\u1945\u1946\u0007T\u0002\u0002",
+ "\u1946\u1947\u0007Q\u0002\u0002\u1947\u1948\u0007D\u0002\u0002\u1948",
+ "\u1949\u0007C\u0002\u0002\u1949\u194a\u0007D\u0002\u0002\u194a\u194b",
+ "\u0007K\u0002\u0002\u194b\u194c\u0007N\u0002\u0002\u194c\u194d\u0007",
+ "K\u0002\u0002\u194d\u194e\u0007V\u0002\u0002\u194e\u194f\u0007[\u0002",
+ "\u0002\u194f\u0198\u0003\u0002\u0002\u0002\u1950\u1951\u0007E\u0002",
+ "\u0002\u1951\u1952\u0007N\u0002\u0002\u1952\u1953\u0007W\u0002\u0002",
+ "\u1953\u1954\u0007U\u0002\u0002\u1954\u1955\u0007V\u0002\u0002\u1955",
+ "\u1956\u0007G\u0002\u0002\u1956\u1957\u0007T\u0002\u0002\u1957\u1958",
+ "\u0007a\u0002\u0002\u1958\u1959\u0007U\u0002\u0002\u1959\u195a\u0007",
+ "G\u0002\u0002\u195a\u195b\u0007V\u0002\u0002\u195b\u019a\u0003\u0002",
+ "\u0002\u0002\u195c\u195d\u0007E\u0002\u0002\u195d\u195e\u0007Q\u0002",
+ "\u0002\u195e\u195f\u0007C\u0002\u0002\u195f\u1960\u0007N\u0002\u0002",
+ "\u1960\u1961\u0007G\u0002\u0002\u1961\u1962\u0007U\u0002\u0002\u1962",
+ "\u1963\u0007E\u0002\u0002\u1963\u1964\u0007G\u0002\u0002\u1964\u019c",
+ "\u0003\u0002\u0002\u0002\u1965\u1966\u0007E\u0002\u0002\u1966\u1967",
+ "\u0007Q\u0002\u0002\u1967\u1968\u0007C\u0002\u0002\u1968\u1969\u0007",
+ "N\u0002\u0002\u1969\u196a\u0007G\u0002\u0002\u196a\u196b\u0007U\u0002",
+ "\u0002\u196b\u196c\u0007E\u0002\u0002\u196c\u196d\u0007G\u0002\u0002",
+ "\u196d\u196e\u0007a\u0002\u0002\u196e\u196f\u0007U\u0002\u0002\u196f",
+ "\u1970\u0007S\u0002\u0002\u1970\u019e\u0003\u0002\u0002\u0002\u1971",
+ "\u1972\u0007E\u0002\u0002\u1972\u1973\u0007Q\u0002\u0002\u1973\u1974",
+ "\u0007C\u0002\u0002\u1974\u1975\u0007T\u0002\u0002\u1975\u1976\u0007",
+ "U\u0002\u0002\u1976\u1977\u0007G\u0002\u0002\u1977\u01a0\u0003\u0002",
+ "\u0002\u0002\u1978\u1979\u0007E\u0002\u0002\u1979\u197a\u0007Q\u0002",
+ "\u0002\u197a\u197b\u0007a\u0002\u0002\u197b\u197c\u0007C\u0002\u0002",
+ "\u197c\u197d\u0007W\u0002\u0002\u197d\u197e\u0007V\u0002\u0002\u197e",
+ "\u197f\u0007J\u0002\u0002\u197f\u1980\u0007a\u0002\u0002\u1980\u1981",
+ "\u0007K\u0002\u0002\u1981\u1982\u0007P\u0002\u0002\u1982\u1983\u0007",
+ "F\u0002\u0002\u1983\u01a2\u0003\u0002\u0002\u0002\u1984\u1985\u0007",
+ "E\u0002\u0002\u1985\u1986\u0007Q\u0002\u0002\u1986\u1987\u0007N\u0002",
+ "\u0002\u1987\u1988\u0007F\u0002\u0002\u1988\u01a4\u0003\u0002\u0002",
+ "\u0002\u1989\u198a\u0007E\u0002\u0002\u198a\u198b\u0007Q\u0002\u0002",
+ "\u198b\u198c\u0007N\u0002\u0002\u198c\u198d\u0007N\u0002\u0002\u198d",
+ "\u198e\u0007G\u0002\u0002\u198e\u198f\u0007E\u0002\u0002\u198f\u1990",
+ "\u0007V\u0002\u0002\u1990\u01a6\u0003\u0002\u0002\u0002\u1991\u1992",
+ "\u0007E\u0002\u0002\u1992\u1993\u0007Q\u0002\u0002\u1993\u1994\u0007",
+ "N\u0002\u0002\u1994\u1995\u0007W\u0002\u0002\u1995\u1996\u0007O\u0002",
+ "\u0002\u1996\u1997\u0007P\u0002\u0002\u1997\u1998\u0007C\u0002\u0002",
+ "\u1998\u1999\u0007T\u0002\u0002\u1999\u01a8\u0003\u0002\u0002\u0002",
+ "\u199a\u199b\u0007E\u0002\u0002\u199b\u199c\u0007Q\u0002\u0002\u199c",
+ "\u199d\u0007N\u0002\u0002\u199d\u199e\u0007W\u0002\u0002\u199e\u199f",
+ "\u0007O\u0002\u0002\u199f\u19a0\u0007P\u0002\u0002\u19a0\u19a1\u0007",
+ "a\u0002\u0002\u19a1\u19a2\u0007C\u0002\u0002\u19a2\u19a3\u0007W\u0002",
+ "\u0002\u19a3\u19a4\u0007V\u0002\u0002\u19a4\u19a5\u0007J\u0002\u0002",
+ "\u19a5\u19a6\u0007a\u0002\u0002\u19a6\u19a7\u0007K\u0002\u0002\u19a7",
+ "\u19a8\u0007P\u0002\u0002\u19a8\u19a9\u0007F\u0002\u0002\u19a9\u19aa",
+ "\u0007K\u0002\u0002\u19aa\u19ab\u0007E\u0002\u0002\u19ab\u19ac\u0007",
+ "C\u0002\u0002\u19ac\u19ad\u0007V\u0002\u0002\u19ad\u19ae\u0007Q\u0002",
+ "\u0002\u19ae\u19af\u0007T\u0002\u0002\u19af\u01aa\u0003\u0002\u0002",
+ "\u0002\u19b0\u19b1\u0007E\u0002\u0002\u19b1\u19b2\u0007Q\u0002\u0002",
+ "\u19b2\u19b3\u0007N\u0002\u0002\u19b3\u19b4\u0007W\u0002\u0002\u19b4",
+ "\u19b5\u0007O\u0002\u0002\u19b5\u19b6\u0007P\u0002\u0002\u19b6\u01ac",
+ "\u0003\u0002\u0002\u0002\u19b7\u19b8\u0007E\u0002\u0002\u19b8\u19b9",
+ "\u0007Q\u0002\u0002\u19b9\u19ba\u0007N\u0002\u0002\u19ba\u19bb\u0007",
+ "W\u0002\u0002\u19bb\u19bc\u0007O\u0002\u0002\u19bc\u19bd\u0007P\u0002",
+ "\u0002\u19bd\u19be\u0007U\u0002\u0002\u19be\u01ae\u0003\u0002\u0002",
+ "\u0002\u19bf\u19c0\u0007E\u0002\u0002\u19c0\u19c1\u0007Q\u0002\u0002",
+ "\u19c1\u19c2\u0007N\u0002\u0002\u19c2\u19c3\u0007W\u0002\u0002\u19c3",
+ "\u19c4\u0007O\u0002\u0002\u19c4\u19c5\u0007P\u0002\u0002\u19c5\u19c6",
+ "\u0007a\u0002\u0002\u19c6\u19c7\u0007U\u0002\u0002\u19c7\u19c8\u0007",
+ "V\u0002\u0002\u19c8\u19c9\u0007C\u0002\u0002\u19c9\u19ca\u0007V\u0002",
+ "\u0002\u19ca\u19cb\u0007U\u0002\u0002\u19cb\u01b0\u0003\u0002\u0002",
+ "\u0002\u19cc\u19cd\u0007E\u0002\u0002\u19cd\u19ce\u0007Q\u0002\u0002",
+ "\u19ce\u19cf\u0007N\u0002\u0002\u19cf\u19d0\u0007W\u0002\u0002\u19d0",
+ "\u19d1\u0007O\u0002\u0002\u19d1\u19d2\u0007P\u0002\u0002\u19d2\u19d3",
+ "\u0007a\u0002\u0002\u19d3\u19d4\u0007X\u0002\u0002\u19d4\u19d5\u0007",
+ "C\u0002\u0002\u19d5\u19d6\u0007N\u0002\u0002\u19d6\u19d7\u0007W\u0002",
+ "\u0002\u19d7\u19d8\u0007G\u0002\u0002\u19d8\u01b2\u0003\u0002\u0002",
+ "\u0002\u19d9\u19da\u0007E\u0002\u0002\u19da\u19db\u0007Q\u0002\u0002",
+ "\u19db\u19dc\u0007O\u0002\u0002\u19dc\u19dd\u0007O\u0002\u0002\u19dd",
+ "\u19de\u0007G\u0002\u0002\u19de\u19df\u0007P\u0002\u0002\u19df\u19e0",
+ "\u0007V\u0002\u0002\u19e0\u01b4\u0003\u0002\u0002\u0002\u19e1\u19e2",
+ "\u0007E\u0002\u0002\u19e2\u19e3\u0007Q\u0002\u0002\u19e3\u19e4\u0007",
+ "O\u0002\u0002\u19e4\u19e5\u0007O\u0002\u0002\u19e5\u19e6\u0007K\u0002",
+ "\u0002\u19e6\u19e7\u0007V\u0002\u0002\u19e7\u01b6\u0003\u0002\u0002",
+ "\u0002\u19e8\u19e9\u0007E\u0002\u0002\u19e9\u19ea\u0007Q\u0002\u0002",
+ "\u19ea\u19eb\u0007O\u0002\u0002\u19eb\u19ec\u0007O\u0002\u0002\u19ec",
+ "\u19ed\u0007K\u0002\u0002\u19ed\u19ee\u0007V\u0002\u0002\u19ee\u19ef",
+ "\u0007V\u0002\u0002\u19ef\u19f0\u0007G\u0002\u0002\u19f0\u19f1\u0007",
+ "F\u0002\u0002\u19f1\u01b8\u0003\u0002\u0002\u0002\u19f2\u19f3\u0007",
+ "E\u0002\u0002\u19f3\u19f4\u0007Q\u0002\u0002\u19f4\u19f5\u0007O\u0002",
+ "\u0002\u19f5\u19f6\u0007O\u0002\u0002\u19f6\u19f7\u0007Q\u0002\u0002",
+ "\u19f7\u19f8\u0007P\u0002\u0002\u19f8\u19f9\u0007a\u0002\u0002\u19f9",
+ "\u19fa\u0007F\u0002\u0002\u19fa\u19fb\u0007C\u0002\u0002\u19fb\u19fc",
+ "\u0007V\u0002\u0002\u19fc\u19fd\u0007C\u0002\u0002\u19fd\u01ba\u0003",
+ "\u0002\u0002\u0002\u19fe\u19ff\u0007E\u0002\u0002\u19ff\u1a00\u0007",
+ "Q\u0002\u0002\u1a00\u1a01\u0007O\u0002\u0002\u1a01\u1a02\u0007R\u0002",
+ "\u0002\u1a02\u1a03\u0007C\u0002\u0002\u1a03\u1a04\u0007E\u0002\u0002",
+ "\u1a04\u1a05\u0007V\u0002\u0002\u1a05\u01bc\u0003\u0002\u0002\u0002",
+ "\u1a06\u1a07\u0007E\u0002\u0002\u1a07\u1a08\u0007Q\u0002\u0002\u1a08",
+ "\u1a09\u0007O\u0002\u0002\u1a09\u1a0a\u0007R\u0002\u0002\u1a0a\u1a0b",
+ "\u0007C\u0002\u0002\u1a0b\u1a0c\u0007V\u0002\u0002\u1a0c\u1a0d\u0007",
+ "K\u0002\u0002\u1a0d\u1a0e\u0007D\u0002\u0002\u1a0e\u1a0f\u0007K\u0002",
+ "\u0002\u1a0f\u1a10\u0007N\u0002\u0002\u1a10\u1a11\u0007K\u0002\u0002",
+ "\u1a11\u1a12\u0007V\u0002\u0002\u1a12\u1a13\u0007[\u0002\u0002\u1a13",
+ "\u01be\u0003\u0002\u0002\u0002\u1a14\u1a15\u0007E\u0002\u0002\u1a15",
+ "\u1a16\u0007Q\u0002\u0002\u1a16\u1a17\u0007O\u0002\u0002\u1a17\u1a18",
+ "\u0007R\u0002\u0002\u1a18\u1a19\u0007K\u0002\u0002\u1a19\u1a1a\u0007",
+ "N\u0002\u0002\u1a1a\u1a1b\u0007G\u0002\u0002\u1a1b\u01c0\u0003\u0002",
+ "\u0002\u0002\u1a1c\u1a1d\u0007E\u0002\u0002\u1a1d\u1a1e\u0007Q\u0002",
+ "\u0002\u1a1e\u1a1f\u0007O\u0002\u0002\u1a1f\u1a20\u0007R\u0002\u0002",
+ "\u1a20\u1a21\u0007N\u0002\u0002\u1a21\u1a22\u0007G\u0002\u0002\u1a22",
+ "\u1a23\u0007V\u0002\u0002\u1a23\u1a24\u0007G\u0002\u0002\u1a24\u01c2",
+ "\u0003\u0002\u0002\u0002\u1a25\u1a26\u0007E\u0002\u0002\u1a26\u1a27",
+ "\u0007Q\u0002\u0002\u1a27\u1a28\u0007O\u0002\u0002\u1a28\u1a29\u0007",
+ "R\u0002\u0002\u1a29\u1a2a\u0007N\u0002\u0002\u1a2a\u1a2b\u0007K\u0002",
+ "\u0002\u1a2b\u1a2c\u0007C\u0002\u0002\u1a2c\u1a2d\u0007P\u0002\u0002",
+ "\u1a2d\u1a2e\u0007E\u0002\u0002\u1a2e\u1a2f\u0007G\u0002\u0002\u1a2f",
+ "\u01c4\u0003\u0002\u0002\u0002\u1a30\u1a31\u0007E\u0002\u0002\u1a31",
+ "\u1a32\u0007Q\u0002\u0002\u1a32\u1a33\u0007O\u0002\u0002\u1a33\u1a34",
+ "\u0007R\u0002\u0002\u1a34\u1a35\u0007Q\u0002\u0002\u1a35\u1a36\u0007",
+ "P\u0002\u0002\u1a36\u1a37\u0007G\u0002\u0002\u1a37\u1a38\u0007P\u0002",
+ "\u0002\u1a38\u1a39\u0007V\u0002\u0002\u1a39\u01c6\u0003\u0002\u0002",
+ "\u0002\u1a3a\u1a3b\u0007E\u0002\u0002\u1a3b\u1a3c\u0007Q\u0002\u0002",
+ "\u1a3c\u1a3d\u0007O\u0002\u0002\u1a3d\u1a3e\u0007R\u0002\u0002\u1a3e",
+ "\u1a3f\u0007Q\u0002\u0002\u1a3f\u1a40\u0007P\u0002\u0002\u1a40\u1a41",
+ "\u0007G\u0002\u0002\u1a41\u1a42\u0007P\u0002\u0002\u1a42\u1a43\u0007",
+ "V\u0002\u0002\u1a43\u1a44\u0007U\u0002\u0002\u1a44\u01c8\u0003\u0002",
+ "\u0002\u0002\u1a45\u1a46\u0007E\u0002\u0002\u1a46\u1a47\u0007Q\u0002",
+ "\u0002\u1a47\u1a48\u0007O\u0002\u0002\u1a48\u1a49\u0007R\u0002\u0002",
+ "\u1a49\u1a4a\u0007Q\u0002\u0002\u1a4a\u1a4b\u0007U\u0002\u0002\u1a4b",
+ "\u1a4c\u0007G\u0002\u0002\u1a4c\u01ca\u0003\u0002\u0002\u0002\u1a4d",
+ "\u1a4e\u0007E\u0002\u0002\u1a4e\u1a4f\u0007Q\u0002\u0002\u1a4f\u1a50",
+ "\u0007O\u0002\u0002\u1a50\u1a51\u0007R\u0002\u0002\u1a51\u1a52\u0007",
+ "Q\u0002\u0002\u1a52\u1a53\u0007U\u0002\u0002\u1a53\u1a54\u0007K\u0002",
+ "\u0002\u1a54\u1a55\u0007V\u0002\u0002\u1a55\u1a56\u0007G\u0002\u0002",
+ "\u1a56\u01cc\u0003\u0002\u0002\u0002\u1a57\u1a58\u0007E\u0002\u0002",
+ "\u1a58\u1a59\u0007Q\u0002\u0002\u1a59\u1a5a\u0007O\u0002\u0002\u1a5a",
+ "\u1a5b\u0007R\u0002\u0002\u1a5b\u1a5c\u0007Q\u0002\u0002\u1a5c\u1a5d",
+ "\u0007U\u0002\u0002\u1a5d\u1a5e\u0007K\u0002\u0002\u1a5e\u1a5f\u0007",
+ "V\u0002\u0002\u1a5f\u1a60\u0007G\u0002\u0002\u1a60\u1a61\u0007a\u0002",
+ "\u0002\u1a61\u1a62\u0007N\u0002\u0002\u1a62\u1a63\u0007K\u0002\u0002",
+ "\u1a63\u1a64\u0007O\u0002\u0002\u1a64\u1a65\u0007K\u0002\u0002\u1a65",
+ "\u1a66\u0007V\u0002\u0002\u1a66\u01ce\u0003\u0002\u0002\u0002\u1a67",
+ "\u1a68\u0007E\u0002\u0002\u1a68\u1a69\u0007Q\u0002\u0002\u1a69\u1a6a",
+ "\u0007O\u0002\u0002\u1a6a\u1a6b\u0007R\u0002\u0002\u1a6b\u1a6c\u0007",
+ "Q\u0002\u0002\u1a6c\u1a6d\u0007W\u0002\u0002\u1a6d\u1a6e\u0007P\u0002",
+ "\u0002\u1a6e\u1a6f\u0007F\u0002\u0002\u1a6f\u01d0\u0003\u0002\u0002",
+ "\u0002\u1a70\u1a71\u0007E\u0002\u0002\u1a71\u1a72\u0007Q\u0002\u0002",
+ "\u1a72\u1a73\u0007O\u0002\u0002\u1a73\u1a74\u0007R\u0002\u0002\u1a74",
+ "\u1a75\u0007T\u0002\u0002\u1a75\u1a76\u0007G\u0002\u0002\u1a76\u1a77",
+ "\u0007U\u0002\u0002\u1a77\u1a78\u0007U\u0002\u0002\u1a78\u01d2\u0003",
+ "\u0002\u0002\u0002\u1a79\u1a7a\u0007E\u0002\u0002\u1a7a\u1a7b\u0007",
+ "Q\u0002\u0002\u1a7b\u1a7c\u0007O\u0002\u0002\u1a7c\u1a7d\u0007R\u0002",
+ "\u0002\u1a7d\u1a7e\u0007W\u0002\u0002\u1a7e\u1a7f\u0007V\u0002\u0002",
+ "\u1a7f\u1a80\u0007G\u0002\u0002\u1a80\u01d4\u0003\u0002\u0002\u0002",
+ "\u1a81\u1a82\u0007E\u0002\u0002\u1a82\u1a83\u0007Q\u0002\u0002\u1a83",
+ "\u1a84\u0007P\u0002\u0002\u1a84\u1a85\u0007E\u0002\u0002\u1a85\u1a86",
+ "\u0007C\u0002\u0002\u1a86\u1a87\u0007V\u0002\u0002\u1a87\u01d6\u0003",
+ "\u0002\u0002\u0002\u1a88\u1a89\u0007E\u0002\u0002\u1a89\u1a8a\u0007",
+ "Q\u0002\u0002\u1a8a\u1a8b\u0007P\u0002\u0002\u1a8b\u1a8c\u0007a\u0002",
+ "\u0002\u1a8c\u1a8d\u0007F\u0002\u0002\u1a8d\u1a8e\u0007D\u0002\u0002",
+ "\u1a8e\u1a8f\u0007K\u0002\u0002\u1a8f\u1a90\u0007F\u0002\u0002\u1a90",
+ "\u1a91\u0007a\u0002\u0002\u1a91\u1a92\u0007V\u0002\u0002\u1a92\u1a93",
+ "\u0007Q\u0002\u0002\u1a93\u1a94\u0007a\u0002\u0002\u1a94\u1a95\u0007",
+ "K\u0002\u0002\u1a95\u1a96\u0007F\u0002\u0002\u1a96\u01d8\u0003\u0002",
+ "\u0002\u0002\u1a97\u1a98\u0007E\u0002\u0002\u1a98\u1a99\u0007Q\u0002",
+ "\u0002\u1a99\u1a9a\u0007P\u0002\u0002\u1a9a\u1a9b\u0007F\u0002\u0002",
+ "\u1a9b\u1a9c\u0007K\u0002\u0002\u1a9c\u1a9d\u0007V\u0002\u0002\u1a9d",
+ "\u1a9e\u0007K\u0002\u0002\u1a9e\u1a9f\u0007Q\u0002\u0002\u1a9f\u1aa0",
+ "\u0007P\u0002\u0002\u1aa0\u1aa1\u0007C\u0002\u0002\u1aa1\u1aa2\u0007",
+ "N\u0002\u0002\u1aa2\u01da\u0003\u0002\u0002\u0002\u1aa3\u1aa4\u0007",
+ "E\u0002\u0002\u1aa4\u1aa5\u0007Q\u0002\u0002\u1aa5\u1aa6\u0007P\u0002",
+ "\u0002\u1aa6\u1aa7\u0007F\u0002\u0002\u1aa7\u1aa8\u0007K\u0002\u0002",
+ "\u1aa8\u1aa9\u0007V\u0002\u0002\u1aa9\u1aaa\u0007K\u0002\u0002\u1aaa",
+ "\u1aab\u0007Q\u0002\u0002\u1aab\u1aac\u0007P\u0002\u0002\u1aac\u01dc",
+ "\u0003\u0002\u0002\u0002\u1aad\u1aae\u0007E\u0002\u0002\u1aae\u1aaf",
+ "\u0007Q\u0002\u0002\u1aaf\u1ab0\u0007P\u0002\u0002\u1ab0\u1ab1\u0007",
+ "H\u0002\u0002\u1ab1\u1ab2\u0007K\u0002\u0002\u1ab2\u1ab3\u0007T\u0002",
+ "\u0002\u1ab3\u1ab4\u0007O\u0002\u0002\u1ab4\u01de\u0003\u0002\u0002",
+ "\u0002\u1ab5\u1ab6\u0007E\u0002\u0002\u1ab6\u1ab7\u0007Q\u0002\u0002",
+ "\u1ab7\u1ab8\u0007P\u0002\u0002\u1ab8\u1ab9\u0007H\u0002\u0002\u1ab9",
+ "\u1aba\u0007Q\u0002\u0002\u1aba\u1abb\u0007T\u0002\u0002\u1abb\u1abc",
+ "\u0007O\u0002\u0002\u1abc\u1abd\u0007K\u0002\u0002\u1abd\u1abe\u0007",
+ "P\u0002\u0002\u1abe\u1abf\u0007I\u0002\u0002\u1abf\u01e0\u0003\u0002",
+ "\u0002\u0002\u1ac0\u1ac1\u0007E\u0002\u0002\u1ac1\u1ac2\u0007Q\u0002",
+ "\u0002\u1ac2\u1ac3\u0007P\u0002\u0002\u1ac3\u1ac4\u0007a\u0002\u0002",
+ "\u1ac4\u1ac5\u0007I\u0002\u0002\u1ac5\u1ac6\u0007W\u0002\u0002\u1ac6",
+ "\u1ac7\u0007K\u0002\u0002\u1ac7\u1ac8\u0007F\u0002\u0002\u1ac8\u1ac9",
+ "\u0007a\u0002\u0002\u1ac9\u1aca\u0007V\u0002\u0002\u1aca\u1acb\u0007",
+ "Q\u0002\u0002\u1acb\u1acc\u0007a\u0002\u0002\u1acc\u1acd\u0007K\u0002",
+ "\u0002\u1acd\u1ace\u0007F\u0002\u0002\u1ace\u01e2\u0003\u0002\u0002",
+ "\u0002\u1acf\u1ad0\u0007E\u0002\u0002\u1ad0\u1ad1\u0007Q\u0002\u0002",
+ "\u1ad1\u1ad2\u0007P\u0002\u0002\u1ad2\u1ad3\u0007a\u0002\u0002\u1ad3",
+ "\u1ad4\u0007K\u0002\u0002\u1ad4\u1ad5\u0007F\u0002\u0002\u1ad5\u01e4",
+ "\u0003\u0002\u0002\u0002\u1ad6\u1ad7\u0007E\u0002\u0002\u1ad7\u1ad8",
+ "\u0007Q\u0002\u0002\u1ad8\u1ad9\u0007P\u0002\u0002\u1ad9\u1ada\u0007",
+ "a\u0002\u0002\u1ada\u1adb\u0007P\u0002\u0002\u1adb\u1adc\u0007C\u0002",
+ "\u0002\u1adc\u1add\u0007O\u0002\u0002\u1add\u1ade\u0007G\u0002\u0002",
+ "\u1ade\u1adf\u0007a\u0002\u0002\u1adf\u1ae0\u0007V\u0002\u0002\u1ae0",
+ "\u1ae1\u0007Q\u0002\u0002\u1ae1\u1ae2\u0007a\u0002\u0002\u1ae2\u1ae3",
+ "\u0007K\u0002\u0002\u1ae3\u1ae4\u0007F\u0002\u0002\u1ae4\u01e6\u0003",
+ "\u0002\u0002\u0002\u1ae5\u1ae6\u0007E\u0002\u0002\u1ae6\u1ae7\u0007",
+ "Q\u0002\u0002\u1ae7\u1ae8\u0007P\u0002\u0002\u1ae8\u1ae9\u0007P\u0002",
+ "\u0002\u1ae9\u1aea\u0007G\u0002\u0002\u1aea\u1aeb\u0007E\u0002\u0002",
+ "\u1aeb\u1aec\u0007V\u0002\u0002\u1aec\u1aed\u0007a\u0002\u0002\u1aed",
+ "\u1aee\u0007D\u0002\u0002\u1aee\u1aef\u0007[\u0002\u0002\u1aef\u1af0",
+ "\u0007a\u0002\u0002\u1af0\u1af1\u0007E\u0002\u0002\u1af1\u1af2\u0007",
+ "D\u0002\u0002\u1af2\u1af3\u0007a\u0002\u0002\u1af3\u1af4\u0007Y\u0002",
+ "\u0002\u1af4\u1af5\u0007J\u0002\u0002\u1af5\u1af6\u0007T\u0002\u0002",
+ "\u1af6\u1af7\u0007a\u0002\u0002\u1af7\u1af8\u0007Q\u0002\u0002\u1af8",
+ "\u1af9\u0007P\u0002\u0002\u1af9\u1afa\u0007N\u0002\u0002\u1afa\u1afb",
+ "\u0007[\u0002\u0002\u1afb\u01e8\u0003\u0002\u0002\u0002\u1afc\u1afd",
+ "\u0007E\u0002\u0002\u1afd\u1afe\u0007Q\u0002\u0002\u1afe\u1aff\u0007",
+ "P\u0002\u0002\u1aff\u1b00\u0007P\u0002\u0002\u1b00\u1b01\u0007G\u0002",
+ "\u0002\u1b01\u1b02\u0007E\u0002\u0002\u1b02\u1b03\u0007V\u0002\u0002",
+ "\u1b03\u1b04\u0007a\u0002\u0002\u1b04\u1b05\u0007D\u0002\u0002\u1b05",
+ "\u1b06\u0007[\u0002\u0002\u1b06\u1b07\u0007a\u0002\u0002\u1b07\u1b08",
+ "\u0007E\u0002\u0002\u1b08\u1b09\u0007Q\u0002\u0002\u1b09\u1b0a\u0007",
+ "O\u0002\u0002\u1b0a\u1b0b\u0007D\u0002\u0002\u1b0b\u1b0c\u0007K\u0002",
+ "\u0002\u1b0c\u1b0d\u0007P\u0002\u0002\u1b0d\u1b0e\u0007G\u0002\u0002",
+ "\u1b0e\u1b0f\u0007a\u0002\u0002\u1b0f\u1b10\u0007U\u0002\u0002\u1b10",
+ "\u1b11\u0007Y\u0002\u0002\u1b11\u01ea\u0003\u0002\u0002\u0002\u1b12",
+ "\u1b13\u0007E\u0002\u0002\u1b13\u1b14\u0007Q\u0002\u0002\u1b14\u1b15",
+ "\u0007P\u0002\u0002\u1b15\u1b16\u0007P\u0002\u0002\u1b16\u1b17\u0007",
+ "G\u0002\u0002\u1b17\u1b18\u0007E\u0002\u0002\u1b18\u1b19\u0007V\u0002",
+ "\u0002\u1b19\u1b1a\u0007a\u0002\u0002\u1b1a\u1b1b\u0007D\u0002\u0002",
+ "\u1b1b\u1b1c\u0007[\u0002\u0002\u1b1c\u1b1d\u0007a\u0002\u0002\u1b1d",
+ "\u1b1e\u0007E\u0002\u0002\u1b1e\u1b1f\u0007Q\u0002\u0002\u1b1f\u1b20",
+ "\u0007U\u0002\u0002\u1b20\u1b21\u0007V\u0002\u0002\u1b21\u1b22\u0007",
+ "a\u0002\u0002\u1b22\u1b23\u0007D\u0002\u0002\u1b23\u1b24\u0007C\u0002",
+ "\u0002\u1b24\u1b25\u0007U\u0002\u0002\u1b25\u1b26\u0007G\u0002\u0002",
+ "\u1b26\u1b27\u0007F\u0002\u0002\u1b27\u01ec\u0003\u0002\u0002\u0002",
+ "\u1b28\u1b29\u0007E\u0002\u0002\u1b29\u1b2a\u0007Q\u0002\u0002\u1b2a",
+ "\u1b2b\u0007P\u0002\u0002\u1b2b\u1b2c\u0007P\u0002\u0002\u1b2c\u1b2d",
+ "\u0007G\u0002\u0002\u1b2d\u1b2e\u0007E\u0002\u0002\u1b2e\u1b2f\u0007",
+ "V\u0002\u0002\u1b2f\u1b30\u0007a\u0002\u0002\u1b30\u1b31\u0007D\u0002",
+ "\u0002\u1b31\u1b32\u0007[\u0002\u0002\u1b32\u1b33\u0007a\u0002\u0002",
+ "\u1b33\u1b34\u0007G\u0002\u0002\u1b34\u1b35\u0007N\u0002\u0002\u1b35",
+ "\u1b36\u0007K\u0002\u0002\u1b36\u1b37\u0007O\u0002\u0002\u1b37\u1b38",
+ "\u0007a\u0002\u0002\u1b38\u1b39\u0007F\u0002\u0002\u1b39\u1b3a\u0007",
+ "W\u0002\u0002\u1b3a\u1b3b\u0007R\u0002\u0002\u1b3b\u1b3c\u0007U\u0002",
+ "\u0002\u1b3c\u01ee\u0003\u0002\u0002\u0002\u1b3d\u1b3e\u0007E\u0002",
+ "\u0002\u1b3e\u1b3f\u0007Q\u0002\u0002\u1b3f\u1b40\u0007P\u0002\u0002",
+ "\u1b40\u1b41\u0007P\u0002\u0002\u1b41\u1b42\u0007G\u0002\u0002\u1b42",
+ "\u1b43\u0007E\u0002\u0002\u1b43\u1b44\u0007V\u0002\u0002\u1b44\u1b45",
+ "\u0007a\u0002\u0002\u1b45\u1b46\u0007D\u0002\u0002\u1b46\u1b47\u0007",
+ "[\u0002\u0002\u1b47\u1b48\u0007a\u0002\u0002\u1b48\u1b49\u0007H\u0002",
+ "\u0002\u1b49\u1b4a\u0007K\u0002\u0002\u1b4a\u1b4b\u0007N\u0002\u0002",
+ "\u1b4b\u1b4c\u0007V\u0002\u0002\u1b4c\u1b4d\u0007G\u0002\u0002\u1b4d",
+ "\u1b4e\u0007T\u0002\u0002\u1b4e\u1b4f\u0007K\u0002\u0002\u1b4f\u1b50",
+ "\u0007P\u0002\u0002\u1b50\u1b51\u0007I\u0002\u0002\u1b51\u01f0\u0003",
+ "\u0002\u0002\u0002\u1b52\u1b53\u0007E\u0002\u0002\u1b53\u1b54\u0007",
+ "Q\u0002\u0002\u1b54\u1b55\u0007P\u0002\u0002\u1b55\u1b56\u0007P\u0002",
+ "\u0002\u1b56\u1b57\u0007G\u0002\u0002\u1b57\u1b58\u0007E\u0002\u0002",
+ "\u1b58\u1b59\u0007V\u0002\u0002\u1b59\u1b5a\u0007a\u0002\u0002\u1b5a",
+ "\u1b5b\u0007D\u0002\u0002\u1b5b\u1b5c\u0007[\u0002\u0002\u1b5c\u1b5d",
+ "\u0007a\u0002\u0002\u1b5d\u1b5e\u0007K\u0002\u0002\u1b5e\u1b5f\u0007",
+ "U\u0002\u0002\u1b5f\u1b60\u0007E\u0002\u0002\u1b60\u1b61\u0007[\u0002",
+ "\u0002\u1b61\u1b62\u0007E\u0002\u0002\u1b62\u1b63\u0007N\u0002\u0002",
+ "\u1b63\u1b64\u0007G\u0002\u0002\u1b64\u01f2\u0003\u0002\u0002\u0002",
+ "\u1b65\u1b66\u0007E\u0002\u0002\u1b66\u1b67\u0007Q\u0002\u0002\u1b67",
+ "\u1b68\u0007P\u0002\u0002\u1b68\u1b69\u0007P\u0002\u0002\u1b69\u1b6a",
+ "\u0007G\u0002\u0002\u1b6a\u1b6b\u0007E\u0002\u0002\u1b6b\u1b6c\u0007",
+ "V\u0002\u0002\u1b6c\u1b6d\u0007a\u0002\u0002\u1b6d\u1b6e\u0007D\u0002",
+ "\u0002\u1b6e\u1b6f\u0007[\u0002\u0002\u1b6f\u1b70\u0007a\u0002\u0002",
+ "\u1b70\u1b71\u0007K\u0002\u0002\u1b71\u1b72\u0007U\u0002\u0002\u1b72",
+ "\u1b73\u0007N\u0002\u0002\u1b73\u1b74\u0007G\u0002\u0002\u1b74\u1b75",
+ "\u0007C\u0002\u0002\u1b75\u1b76\u0007H\u0002\u0002\u1b76\u01f4\u0003",
+ "\u0002\u0002\u0002\u1b77\u1b78\u0007E\u0002\u0002\u1b78\u1b79\u0007",
+ "Q\u0002\u0002\u1b79\u1b7a\u0007P\u0002\u0002\u1b7a\u1b7b\u0007P\u0002",
+ "\u0002\u1b7b\u1b7c\u0007G\u0002\u0002\u1b7c\u1b7d\u0007E\u0002\u0002",
+ "\u1b7d\u1b7e\u0007V\u0002\u0002\u1b7e\u1b7f\u0007a\u0002\u0002\u1b7f",
+ "\u1b80\u0007D\u0002\u0002\u1b80\u1b81\u0007[\u0002\u0002\u1b81\u1b82",
+ "\u0007a\u0002\u0002\u1b82\u1b83\u0007T\u0002\u0002\u1b83\u1b84\u0007",
+ "Q\u0002\u0002\u1b84\u1b85\u0007Q\u0002\u0002\u1b85\u1b86\u0007V\u0002",
+ "\u0002\u1b86\u01f6\u0003\u0002\u0002\u0002\u1b87\u1b88\u0007E\u0002",
+ "\u0002\u1b88\u1b89\u0007Q\u0002\u0002\u1b89\u1b8a\u0007P\u0002\u0002",
+ "\u1b8a\u1b8b\u0007P\u0002\u0002\u1b8b\u1b8c\u0007G\u0002\u0002\u1b8c",
+ "\u1b8d\u0007E\u0002\u0002\u1b8d\u1b8e\u0007V\u0002\u0002\u1b8e\u01f8",
+ "\u0003\u0002\u0002\u0002\u1b8f\u1b90\u0007E\u0002\u0002\u1b90\u1b91",
+ "\u0007Q\u0002\u0002\u1b91\u1b92\u0007P\u0002\u0002\u1b92\u1b93\u0007",
+ "P\u0002\u0002\u1b93\u1b94\u0007G\u0002\u0002\u1b94\u1b95\u0007E\u0002",
+ "\u0002\u1b95\u1b96\u0007V\u0002\u0002\u1b96\u1b97\u0007a\u0002\u0002",
+ "\u1b97\u1b98\u0007V\u0002\u0002\u1b98\u1b99\u0007K\u0002\u0002\u1b99",
+ "\u1b9a\u0007O\u0002\u0002\u1b9a\u1b9b\u0007G\u0002\u0002\u1b9b\u01fa",
+ "\u0003\u0002\u0002\u0002\u1b9c\u1b9d\u0007E\u0002\u0002\u1b9d\u1b9e",
+ "\u0007Q\u0002\u0002\u1b9e\u1b9f\u0007P\u0002\u0002\u1b9f\u1ba0\u0007",
+ "U\u0002\u0002\u1ba0\u1ba1\u0007K\u0002\u0002\u1ba1\u1ba2\u0007F\u0002",
+ "\u0002\u1ba2\u1ba3\u0007G\u0002\u0002\u1ba3\u1ba4\u0007T\u0002\u0002",
+ "\u1ba4\u01fc\u0003\u0002\u0002\u0002\u1ba5\u1ba6\u0007E\u0002\u0002",
+ "\u1ba6\u1ba7\u0007Q\u0002\u0002\u1ba7\u1ba8\u0007P\u0002\u0002\u1ba8",
+ "\u1ba9\u0007U\u0002\u0002\u1ba9\u1baa\u0007K\u0002\u0002\u1baa\u1bab",
+ "\u0007U\u0002\u0002\u1bab\u1bac\u0007V\u0002\u0002\u1bac\u1bad\u0007",
+ "G\u0002\u0002\u1bad\u1bae\u0007P\u0002\u0002\u1bae\u1baf\u0007V\u0002",
+ "\u0002\u1baf\u01fe\u0003\u0002\u0002\u0002\u1bb0\u1bb1\u0007E\u0002",
+ "\u0002\u1bb1\u1bb2\u0007Q\u0002\u0002\u1bb2\u1bb3\u0007P\u0002\u0002",
+ "\u1bb3\u1bb4\u0007U\u0002\u0002\u1bb4\u1bb5\u0007V\u0002\u0002\u1bb5",
+ "\u1bb6\u0007C\u0002\u0002\u1bb6\u1bb7\u0007P\u0002\u0002\u1bb7\u1bb8",
+ "\u0007V\u0002\u0002\u1bb8\u0200\u0003\u0002\u0002\u0002\u1bb9\u1bba",
+ "\u0007E\u0002\u0002\u1bba\u1bbb\u0007Q\u0002\u0002\u1bbb\u1bbc\u0007",
+ "P\u0002\u0002\u1bbc\u1bbd\u0007U\u0002\u0002\u1bbd\u1bbe\u0007V\u0002",
+ "\u0002\u1bbe\u0202\u0003\u0002\u0002\u0002\u1bbf\u1bc0\u0007E\u0002",
+ "\u0002\u1bc0\u1bc1\u0007Q\u0002\u0002\u1bc1\u1bc2\u0007P\u0002\u0002",
+ "\u1bc2\u1bc3\u0007U\u0002\u0002\u1bc3\u1bc4\u0007V\u0002\u0002\u1bc4",
+ "\u1bc5\u0007T\u0002\u0002\u1bc5\u1bc6\u0007C\u0002\u0002\u1bc6\u1bc7",
+ "\u0007K\u0002\u0002\u1bc7\u1bc8\u0007P\u0002\u0002\u1bc8\u1bc9\u0007",
+ "V\u0002\u0002\u1bc9\u0204\u0003\u0002\u0002\u0002\u1bca\u1bcb\u0007",
+ "E\u0002\u0002\u1bcb\u1bcc\u0007Q\u0002\u0002\u1bcc\u1bcd\u0007P\u0002",
+ "\u0002\u1bcd\u1bce\u0007U\u0002\u0002\u1bce\u1bcf\u0007V\u0002\u0002",
+ "\u1bcf\u1bd0\u0007T\u0002\u0002\u1bd0\u1bd1\u0007C\u0002\u0002\u1bd1",
+ "\u1bd2\u0007K\u0002\u0002\u1bd2\u1bd3\u0007P\u0002\u0002\u1bd3\u1bd4",
+ "\u0007V\u0002\u0002\u1bd4\u1bd5\u0007U\u0002\u0002\u1bd5\u0206\u0003",
+ "\u0002\u0002\u0002\u1bd6\u1bd7\u0007E\u0002\u0002\u1bd7\u1bd8\u0007",
+ "Q\u0002\u0002\u1bd8\u1bd9\u0007P\u0002\u0002\u1bd9\u1bda\u0007U\u0002",
+ "\u0002\u1bda\u1bdb\u0007V\u0002\u0002\u1bdb\u1bdc\u0007T\u0002\u0002",
+ "\u1bdc\u1bdd\u0007W\u0002\u0002\u1bdd\u1bde\u0007E\u0002\u0002\u1bde",
+ "\u1bdf\u0007V\u0002\u0002\u1bdf\u1be0\u0007Q\u0002\u0002\u1be0\u1be1",
+ "\u0007T\u0002\u0002\u1be1\u0208\u0003\u0002\u0002\u0002\u1be2\u1be3",
+ "\u0007E\u0002\u0002\u1be3\u1be4\u0007Q\u0002\u0002\u1be4\u1be5\u0007",
+ "P\u0002\u0002\u1be5\u1be6\u0007V\u0002\u0002\u1be6\u1be7\u0007C\u0002",
+ "\u0002\u1be7\u1be8\u0007K\u0002\u0002\u1be8\u1be9\u0007P\u0002\u0002",
+ "\u1be9\u1bea\u0007G\u0002\u0002\u1bea\u1beb\u0007T\u0002\u0002\u1beb",
+ "\u020a\u0003\u0002\u0002\u0002\u1bec\u1bed\u0007E\u0002\u0002\u1bed",
+ "\u1bee\u0007Q\u0002\u0002\u1bee\u1bef\u0007P\u0002\u0002\u1bef\u1bf0",
+ "\u0007V\u0002\u0002\u1bf0\u1bf1\u0007C\u0002\u0002\u1bf1\u1bf2\u0007",
+ "K\u0002\u0002\u1bf2\u1bf3\u0007P\u0002\u0002\u1bf3\u1bf4\u0007G\u0002",
+ "\u0002\u1bf4\u1bf5\u0007T\u0002\u0002\u1bf5\u1bf6\u0007a\u0002\u0002",
+ "\u1bf6\u1bf7\u0007F\u0002\u0002\u1bf7\u1bf8\u0007C\u0002\u0002\u1bf8",
+ "\u1bf9\u0007V\u0002\u0002\u1bf9\u1bfa\u0007C\u0002\u0002\u1bfa\u020c",
+ "\u0003\u0002\u0002\u0002\u1bfb\u1bfc\u0007E\u0002\u0002\u1bfc\u1bfd",
+ "\u0007Q\u0002\u0002\u1bfd\u1bfe\u0007P\u0002\u0002\u1bfe\u1bff\u0007",
+ "V\u0002\u0002\u1bff\u1c00\u0007C\u0002\u0002\u1c00\u1c01\u0007K\u0002",
+ "\u0002\u1c01\u1c02\u0007P\u0002\u0002\u1c02\u1c03\u0007G\u0002\u0002",
+ "\u1c03\u1c04\u0007T\u0002\u0002\u1c04\u1c05\u0007U\u0002\u0002\u1c05",
+ "\u020e\u0003\u0002\u0002\u0002\u1c06\u1c07\u0007E\u0002\u0002\u1c07",
+ "\u1c08\u0007Q\u0002\u0002\u1c08\u1c09\u0007P\u0002\u0002\u1c09\u1c0a",
+ "\u0007V\u0002\u0002\u1c0a\u1c0b\u0007G\u0002\u0002\u1c0b\u1c0c\u0007",
+ "P\u0002\u0002\u1c0c\u1c0d\u0007V\u0002\u0002\u1c0d\u0210\u0003\u0002",
+ "\u0002\u0002\u1c0e\u1c0f\u0007E\u0002\u0002\u1c0f\u1c10\u0007Q\u0002",
+ "\u0002\u1c10\u1c11\u0007P\u0002\u0002\u1c11\u1c12\u0007V\u0002\u0002",
+ "\u1c12\u1c13\u0007G\u0002\u0002\u1c13\u1c14\u0007P\u0002\u0002\u1c14",
+ "\u1c15\u0007V\u0002\u0002\u1c15\u1c16\u0007U\u0002\u0002\u1c16\u0212",
+ "\u0003\u0002\u0002\u0002\u1c17\u1c18\u0007E\u0002\u0002\u1c18\u1c19",
+ "\u0007Q\u0002\u0002\u1c19\u1c1a\u0007P\u0002\u0002\u1c1a\u1c1b\u0007",
+ "V\u0002\u0002\u1c1b\u1c1c\u0007G\u0002\u0002\u1c1c\u1c1d\u0007Z\u0002",
+ "\u0002\u1c1d\u1c1e\u0007V\u0002\u0002\u1c1e\u0214\u0003\u0002\u0002",
+ "\u0002\u1c1f\u1c20\u0007E\u0002\u0002\u1c20\u1c21\u0007Q\u0002\u0002",
+ "\u1c21\u1c22\u0007P\u0002\u0002\u1c22\u1c23\u0007V\u0002\u0002\u1c23",
+ "\u1c24\u0007K\u0002\u0002\u1c24\u1c25\u0007P\u0002\u0002\u1c25\u1c26",
+ "\u0007W\u0002\u0002\u1c26\u1c27\u0007G\u0002\u0002\u1c27\u0216\u0003",
+ "\u0002\u0002\u0002\u1c28\u1c29\u0007E\u0002\u0002\u1c29\u1c2a\u0007",
+ "Q\u0002\u0002\u1c2a\u1c2b\u0007P\u0002\u0002\u1c2b\u1c2c\u0007V\u0002",
+ "\u0002\u1c2c\u1c2d\u0007T\u0002\u0002\u1c2d\u1c2e\u0007Q\u0002\u0002",
+ "\u1c2e\u1c2f\u0007N\u0002\u0002\u1c2f\u1c30\u0007H\u0002\u0002\u1c30",
+ "\u1c31\u0007K\u0002\u0002\u1c31\u1c32\u0007N\u0002\u0002\u1c32\u1c33",
+ "\u0007G\u0002\u0002\u1c33\u0218\u0003\u0002\u0002\u0002\u1c34\u1c35",
+ "\u0007E\u0002\u0002\u1c35\u1c36\u0007Q\u0002\u0002\u1c36\u1c37\u0007",
+ "P\u0002\u0002\u1c37\u1c38\u0007a\u0002\u0002\u1c38\u1c39\u0007W\u0002",
+ "\u0002\u1c39\u1c3a\u0007K\u0002\u0002\u1c3a\u1c3b\u0007F\u0002\u0002",
+ "\u1c3b\u1c3c\u0007a\u0002\u0002\u1c3c\u1c3d\u0007V\u0002\u0002\u1c3d",
+ "\u1c3e\u0007Q\u0002\u0002\u1c3e\u1c3f\u0007a\u0002\u0002\u1c3f\u1c40",
+ "\u0007K\u0002\u0002\u1c40\u1c41\u0007F\u0002\u0002\u1c41\u021a\u0003",
+ "\u0002\u0002\u0002\u1c42\u1c43\u0007E\u0002\u0002\u1c43\u1c44\u0007",
+ "Q\u0002\u0002\u1c44\u1c45\u0007P\u0002\u0002\u1c45\u1c46\u0007X\u0002",
+ "\u0002\u1c46\u1c47\u0007G\u0002\u0002\u1c47\u1c48\u0007T\u0002\u0002",
+ "\u1c48\u1c49\u0007V\u0002\u0002\u1c49\u021c\u0003\u0002\u0002\u0002",
+ "\u1c4a\u1c4b\u0007E\u0002\u0002\u1c4b\u1c4c\u0007Q\u0002\u0002\u1c4c",
+ "\u1c4d\u0007Q\u0002\u0002\u1c4d\u1c4e\u0007M\u0002\u0002\u1c4e\u1c4f",
+ "\u0007K\u0002\u0002\u1c4f\u1c50\u0007G\u0002\u0002\u1c50\u021e\u0003",
+ "\u0002\u0002\u0002\u1c51\u1c52\u0007E\u0002\u0002\u1c52\u1c53\u0007",
+ "Q\u0002\u0002\u1c53\u1c54\u0007R\u0002\u0002\u1c54\u1c55\u0007[\u0002",
+ "\u0002\u1c55\u0220\u0003\u0002\u0002\u0002\u1c56\u1c57\u0007E\u0002",
+ "\u0002\u1c57\u1c58\u0007Q\u0002\u0002\u1c58\u1c59\u0007T\u0002\u0002",
+ "\u1c59\u1c5a\u0007T\u0002\u0002\u1c5a\u1c5b\u0007a\u0002\u0002\u1c5b",
+ "\u1c5c\u0007M\u0002\u0002\u1c5c\u0222\u0003\u0002\u0002\u0002\u1c5d",
+ "\u1c5e\u0007E\u0002\u0002\u1c5e\u1c5f\u0007Q\u0002\u0002\u1c5f\u1c60",
+ "\u0007T\u0002\u0002\u1c60\u1c61\u0007T\u0002\u0002\u1c61\u1c62\u0007",
+ "a\u0002\u0002\u1c62\u1c63\u0007U\u0002\u0002\u1c63\u0224\u0003\u0002",
+ "\u0002\u0002\u1c64\u1c65\u0007E\u0002\u0002\u1c65\u1c66\u0007Q\u0002",
+ "\u0002\u1c66\u1c67\u0007T\u0002\u0002\u1c67\u1c68\u0007T\u0002\u0002",
+ "\u1c68\u1c69\u0007W\u0002\u0002\u1c69\u1c6a\u0007R\u0002\u0002\u1c6a",
+ "\u1c6b\u0007V\u0002\u0002\u1c6b\u1c6c\u0007K\u0002\u0002\u1c6c\u1c6d",
+ "\u0007Q\u0002\u0002\u1c6d\u1c6e\u0007P\u0002\u0002\u1c6e\u0226\u0003",
+ "\u0002\u0002\u0002\u1c6f\u1c70\u0007E\u0002\u0002\u1c70\u1c71\u0007",
+ "Q\u0002\u0002\u1c71\u1c72\u0007T\u0002\u0002\u1c72\u1c73\u0007T\u0002",
+ "\u0002\u1c73\u1c74\u0007W\u0002\u0002\u1c74\u1c75\u0007R\u0002\u0002",
+ "\u1c75\u1c76\u0007V\u0002\u0002\u1c76\u1c77\u0007a\u0002\u0002\u1c77",
+ "\u1c78\u0007Z\u0002\u0002\u1c78\u1c79\u0007K\u0002\u0002\u1c79\u1c7a",
+ "\u0007F\u0002\u0002\u1c7a\u1c7b\u0007a\u0002\u0002\u1c7b\u1c7c\u0007",
+ "C\u0002\u0002\u1c7c\u1c7d\u0007N\u0002\u0002\u1c7d\u1c7e\u0007N\u0002",
+ "\u0002\u1c7e\u0228\u0003\u0002\u0002\u0002\u1c7f\u1c80\u0007E\u0002",
+ "\u0002\u1c80\u1c81\u0007Q\u0002\u0002\u1c81\u1c82\u0007T\u0002\u0002",
+ "\u1c82\u1c83\u0007T\u0002\u0002\u1c83\u1c84\u0007W\u0002\u0002\u1c84",
+ "\u1c85\u0007R\u0002\u0002\u1c85\u1c86\u0007V\u0002\u0002\u1c86\u1c87",
+ "\u0007a\u0002\u0002\u1c87\u1c88\u0007Z\u0002\u0002\u1c88\u1c89\u0007",
+ "K\u0002\u0002\u1c89\u1c8a\u0007F\u0002\u0002\u1c8a\u022a\u0003\u0002",
+ "\u0002\u0002\u1c8b\u1c8c\u0007E\u0002\u0002\u1c8c\u1c8d\u0007Q\u0002",
+ "\u0002\u1c8d\u1c8e\u0007U\u0002\u0002\u1c8e\u022c\u0003\u0002\u0002",
+ "\u0002\u1c8f\u1c90\u0007E\u0002\u0002\u1c90\u1c91\u0007Q\u0002\u0002",
+ "\u1c91\u1c92\u0007U\u0002\u0002\u1c92\u1c93\u0007J\u0002\u0002\u1c93",
+ "\u022e\u0003\u0002\u0002\u0002\u1c94\u1c95\u0007E\u0002\u0002\u1c95",
+ "\u1c96\u0007Q\u0002\u0002\u1c96\u1c97\u0007U\u0002\u0002\u1c97\u1c98",
+ "\u0007V\u0002\u0002\u1c98\u0230\u0003\u0002\u0002\u0002\u1c99\u1c9a",
+ "\u0007E\u0002\u0002\u1c9a\u1c9b\u0007Q\u0002\u0002\u1c9b\u1c9c\u0007",
+ "U\u0002\u0002\u1c9c\u1c9d\u0007V\u0002\u0002\u1c9d\u1c9e\u0007a\u0002",
+ "\u0002\u1c9e\u1c9f\u0007Z\u0002\u0002\u1c9f\u1ca0\u0007O\u0002\u0002",
+ "\u1ca0\u1ca1\u0007N\u0002\u0002\u1ca1\u1ca2\u0007a\u0002\u0002\u1ca2",
+ "\u1ca3\u0007S\u0002\u0002\u1ca3\u1ca4\u0007W\u0002\u0002\u1ca4\u1ca5",
+ "\u0007G\u0002\u0002\u1ca5\u1ca6\u0007T\u0002\u0002\u1ca6\u1ca7\u0007",
+ "[\u0002\u0002\u1ca7\u1ca8\u0007a\u0002\u0002\u1ca8\u1ca9\u0007T\u0002",
+ "\u0002\u1ca9\u1caa\u0007G\u0002\u0002\u1caa\u1cab\u0007Y\u0002\u0002",
+ "\u1cab\u1cac\u0007T\u0002\u0002\u1cac\u1cad\u0007K\u0002\u0002\u1cad",
+ "\u1cae\u0007V\u0002\u0002\u1cae\u1caf\u0007G\u0002\u0002\u1caf\u0232",
+ "\u0003\u0002\u0002\u0002\u1cb0\u1cb1\u0007E\u0002\u0002\u1cb1\u1cb2",
+ "\u0007Q\u0002\u0002\u1cb2\u1cb3\u0007W\u0002\u0002\u1cb3\u1cb4\u0007",
+ "P\u0002\u0002\u1cb4\u1cb5\u0007V\u0002\u0002\u1cb5\u0234\u0003\u0002",
+ "\u0002\u0002\u1cb6\u1cb7\u0007E\u0002\u0002\u1cb7\u1cb8\u0007Q\u0002",
+ "\u0002\u1cb8\u1cb9\u0007X\u0002\u0002\u1cb9\u1cba\u0007C\u0002\u0002",
+ "\u1cba\u1cbb\u0007T\u0002\u0002\u1cbb\u1cbc\u0007a\u0002\u0002\u1cbc",
+ "\u1cbd\u0007R\u0002\u0002\u1cbd\u1cbe\u0007Q\u0002\u0002\u1cbe\u1cbf",
+ "\u0007R\u0002\u0002\u1cbf\u0236\u0003\u0002\u0002\u0002\u1cc0\u1cc1",
+ "\u0007E\u0002\u0002\u1cc1\u1cc2\u0007Q\u0002\u0002\u1cc2\u1cc3\u0007",
+ "X\u0002\u0002\u1cc3\u1cc4\u0007C\u0002\u0002\u1cc4\u1cc5\u0007T\u0002",
+ "\u0002\u1cc5\u1cc6\u0007a\u0002\u0002\u1cc6\u1cc7\u0007U\u0002\u0002",
+ "\u1cc7\u1cc8\u0007C\u0002\u0002\u1cc8\u1cc9\u0007O\u0002\u0002\u1cc9",
+ "\u1cca\u0007R\u0002\u0002\u1cca\u0238\u0003\u0002\u0002\u0002\u1ccb",
+ "\u1ccc\u0007E\u0002\u0002\u1ccc\u1ccd\u0007R\u0002\u0002\u1ccd\u1cce",
+ "\u0007W\u0002\u0002\u1cce\u1ccf\u0007a\u0002\u0002\u1ccf\u1cd0\u0007",
+ "E\u0002\u0002\u1cd0\u1cd1\u0007Q\u0002\u0002\u1cd1\u1cd2\u0007U\u0002",
+ "\u0002\u1cd2\u1cd3\u0007V\u0002\u0002\u1cd3\u1cd4\u0007K\u0002\u0002",
+ "\u1cd4\u1cd5\u0007P\u0002\u0002\u1cd5\u1cd6\u0007I\u0002\u0002\u1cd6",
+ "\u023a\u0003\u0002\u0002\u0002\u1cd7\u1cd8\u0007E\u0002\u0002\u1cd8",
+ "\u1cd9\u0007R\u0002\u0002\u1cd9\u1cda\u0007W\u0002\u0002\u1cda\u1cdb",
+ "\u0007a\u0002\u0002\u1cdb\u1cdc\u0007R\u0002\u0002\u1cdc\u1cdd\u0007",
+ "G\u0002\u0002\u1cdd\u1cde\u0007T\u0002\u0002\u1cde\u1cdf\u0007a\u0002",
+ "\u0002\u1cdf\u1ce0\u0007E\u0002\u0002\u1ce0\u1ce1\u0007C\u0002\u0002",
+ "\u1ce1\u1ce2\u0007N\u0002\u0002\u1ce2\u1ce3\u0007N\u0002\u0002\u1ce3",
+ "\u023c\u0003\u0002\u0002\u0002\u1ce4\u1ce5\u0007E\u0002\u0002\u1ce5",
+ "\u1ce6\u0007R\u0002\u0002\u1ce6\u1ce7\u0007W\u0002\u0002\u1ce7\u1ce8",
+ "\u0007a\u0002\u0002\u1ce8\u1ce9\u0007R\u0002\u0002\u1ce9\u1cea\u0007",
+ "G\u0002\u0002\u1cea\u1ceb\u0007T\u0002\u0002\u1ceb\u1cec\u0007a\u0002",
+ "\u0002\u1cec\u1ced\u0007U\u0002\u0002\u1ced\u1cee\u0007G\u0002\u0002",
+ "\u1cee\u1cef\u0007U\u0002\u0002\u1cef\u1cf0\u0007U\u0002\u0002\u1cf0",
+ "\u1cf1\u0007K\u0002\u0002\u1cf1\u1cf2\u0007Q\u0002\u0002\u1cf2\u1cf3",
+ "\u0007P\u0002\u0002\u1cf3\u023e\u0003\u0002\u0002\u0002\u1cf4\u1cf5",
+ "\u0007E\u0002\u0002\u1cf5\u1cf6\u0007T\u0002\u0002\u1cf6\u1cf7\u0007",
+ "C\u0002\u0002\u1cf7\u1cf8\u0007U\u0002\u0002\u1cf8\u1cf9\u0007J\u0002",
+ "\u0002\u1cf9\u0240\u0003\u0002\u0002\u0002\u1cfa\u1cfb\u0007E\u0002",
+ "\u0002\u1cfb\u1cfc\u0007T\u0002\u0002\u1cfc\u1cfd\u0007G\u0002\u0002",
+ "\u1cfd\u1cfe\u0007C\u0002\u0002\u1cfe\u1cff\u0007V\u0002\u0002\u1cff",
+ "\u1d00\u0007G\u0002\u0002\u1d00\u0242\u0003\u0002\u0002\u0002\u1d01",
+ "\u1d02\u0007E\u0002\u0002\u1d02\u1d03\u0007T\u0002\u0002\u1d03\u1d04",
+ "\u0007G\u0002\u0002\u1d04\u1d05\u0007C\u0002\u0002\u1d05\u1d06\u0007",
+ "V\u0002\u0002\u1d06\u1d07\u0007G\u0002\u0002\u1d07\u1d08\u0007a\u0002",
+ "\u0002\u1d08\u1d09\u0007H\u0002\u0002\u1d09\u1d0a\u0007K\u0002\u0002",
+ "\u1d0a\u1d0b\u0007N\u0002\u0002\u1d0b\u1d0c\u0007G\u0002\u0002\u1d0c",
+ "\u1d0d\u0007a\u0002\u0002\u1d0d\u1d0e\u0007F\u0002\u0002\u1d0e\u1d0f",
+ "\u0007G\u0002\u0002\u1d0f\u1d10\u0007U\u0002\u0002\u1d10\u1d11\u0007",
+ "V\u0002\u0002\u1d11\u0244\u0003\u0002\u0002\u0002\u1d12\u1d13\u0007",
+ "E\u0002\u0002\u1d13\u1d14\u0007T\u0002\u0002\u1d14\u1d15\u0007G\u0002",
+ "\u0002\u1d15\u1d16\u0007C\u0002\u0002\u1d16\u1d17\u0007V\u0002\u0002",
+ "\u1d17\u1d18\u0007G\u0002\u0002\u1d18\u1d19\u0007a\u0002\u0002\u1d19",
+ "\u1d1a\u0007U\u0002\u0002\u1d1a\u1d1b\u0007V\u0002\u0002\u1d1b\u1d1c",
+ "\u0007Q\u0002\u0002\u1d1c\u1d1d\u0007T\u0002\u0002\u1d1d\u1d1e\u0007",
+ "G\u0002\u0002\u1d1e\u1d1f\u0007F\u0002\u0002\u1d1f\u1d20\u0007a\u0002",
+ "\u0002\u1d20\u1d21\u0007Q\u0002\u0002\u1d21\u1d22\u0007W\u0002\u0002",
+ "\u1d22\u1d23\u0007V\u0002\u0002\u1d23\u1d24\u0007N\u0002\u0002\u1d24",
+ "\u1d25\u0007K\u0002\u0002\u1d25\u1d26\u0007P\u0002\u0002\u1d26\u1d27",
+ "\u0007G\u0002\u0002\u1d27\u1d28\u0007U\u0002\u0002\u1d28\u0246\u0003",
+ "\u0002\u0002\u0002\u1d29\u1d2a\u0007E\u0002\u0002\u1d2a\u1d2b\u0007",
+ "T\u0002\u0002\u1d2b\u1d2c\u0007G\u0002\u0002\u1d2c\u1d2d\u0007C\u0002",
+ "\u0002\u1d2d\u1d2e\u0007V\u0002\u0002\u1d2e\u1d2f\u0007K\u0002\u0002",
+ "\u1d2f\u1d30\u0007Q\u0002\u0002\u1d30\u1d31\u0007P\u0002\u0002\u1d31",
+ "\u0248\u0003\u0002\u0002\u0002\u1d32\u1d33\u0007E\u0002\u0002\u1d33",
+ "\u1d34\u0007T\u0002\u0002\u1d34\u1d35\u0007G\u0002\u0002\u1d35\u1d36",
+ "\u0007F\u0002\u0002\u1d36\u1d37\u0007G\u0002\u0002\u1d37\u1d38\u0007",
+ "P\u0002\u0002\u1d38\u1d39\u0007V\u0002\u0002\u1d39\u1d3a\u0007K\u0002",
+ "\u0002\u1d3a\u1d3b\u0007C\u0002\u0002\u1d3b\u1d3c\u0007N\u0002\u0002",
+ "\u1d3c\u024a\u0003\u0002\u0002\u0002\u1d3d\u1d3e\u0007E\u0002\u0002",
+ "\u1d3e\u1d3f\u0007T\u0002\u0002\u1d3f\u1d40\u0007K\u0002\u0002\u1d40",
+ "\u1d41\u0007V\u0002\u0002\u1d41\u1d42\u0007K\u0002\u0002\u1d42\u1d43",
+ "\u0007E\u0002\u0002\u1d43\u1d44\u0007C\u0002\u0002\u1d44\u1d45\u0007",
+ "N\u0002\u0002\u1d45\u024c\u0003\u0002\u0002\u0002\u1d46\u1d47\u0007",
+ "E\u0002\u0002\u1d47\u1d48\u0007T\u0002\u0002\u1d48\u1d49\u0007Q\u0002",
+ "\u0002\u1d49\u1d4a\u0007U\u0002\u0002\u1d4a\u1d4b\u0007U\u0002\u0002",
+ "\u1d4b\u024e\u0003\u0002\u0002\u0002\u1d4c\u1d4d\u0007E\u0002\u0002",
+ "\u1d4d\u1d4e\u0007T\u0002\u0002\u1d4e\u1d4f\u0007Q\u0002\u0002\u1d4f",
+ "\u1d50\u0007U\u0002\u0002\u1d50\u1d51\u0007U\u0002\u0002\u1d51\u1d52",
+ "\u0007G\u0002\u0002\u1d52\u1d53\u0007F\u0002\u0002\u1d53\u1d54\u0007",
+ "K\u0002\u0002\u1d54\u1d55\u0007V\u0002\u0002\u1d55\u1d56\u0007K\u0002",
+ "\u0002\u1d56\u1d57\u0007Q\u0002\u0002\u1d57\u1d58\u0007P\u0002\u0002",
+ "\u1d58\u0250\u0003\u0002\u0002\u0002\u1d59\u1d5a\u0007E\u0002\u0002",
+ "\u1d5a\u1d5b\u0007U\u0002\u0002\u1d5b\u1d5c\u0007E\u0002\u0002\u1d5c",
+ "\u1d5d\u0007Q\u0002\u0002\u1d5d\u1d5e\u0007P\u0002\u0002\u1d5e\u1d5f",
+ "\u0007X\u0002\u0002\u1d5f\u1d60\u0007G\u0002\u0002\u1d60\u1d61\u0007",
+ "T\u0002\u0002\u1d61\u1d62\u0007V\u0002\u0002\u1d62\u0252\u0003\u0002",
+ "\u0002\u0002\u1d63\u1d64\u0007E\u0002\u0002\u1d64\u1d65\u0007W\u0002",
+ "\u0002\u1d65\u1d66\u0007D\u0002\u0002\u1d66\u1d67\u0007G\u0002\u0002",
+ "\u1d67\u1d68\u0007a\u0002\u0002\u1d68\u1d69\u0007C\u0002\u0002\u1d69",
+ "\u1d6a\u0007L\u0002\u0002\u1d6a\u0254\u0003\u0002\u0002\u0002\u1d6b",
+ "\u1d6c\u0007E\u0002\u0002\u1d6c\u1d6d\u0007W\u0002\u0002\u1d6d\u1d6e",
+ "\u0007D\u0002\u0002\u1d6e\u1d6f\u0007G\u0002\u0002\u1d6f\u0256\u0003",
+ "\u0002\u0002\u0002\u1d70\u1d71\u0007E\u0002\u0002\u1d71\u1d72\u0007",
+ "W\u0002\u0002\u1d72\u1d73\u0007D\u0002\u0002\u1d73\u1d74\u0007G\u0002",
+ "\u0002\u1d74\u1d75\u0007a\u0002\u0002\u1d75\u1d76\u0007I\u0002\u0002",
+ "\u1d76\u1d77\u0007D\u0002\u0002\u1d77\u0258\u0003\u0002\u0002\u0002",
+ "\u1d78\u1d79\u0007E\u0002\u0002\u1d79\u1d7a\u0007W\u0002\u0002\u1d7a",
+ "\u1d7b\u0007D\u0002\u0002\u1d7b\u1d7c\u0007G\u0002\u0002\u1d7c\u1d7d",
+ "\u0007a\u0002\u0002\u1d7d\u1d7e\u0007U\u0002\u0002\u1d7e\u1d7f\u0007",
+ "L\u0002\u0002\u1d7f\u025a\u0003\u0002\u0002\u0002\u1d80\u1d81\u0007",
+ "E\u0002\u0002\u1d81\u1d82\u0007W\u0002\u0002\u1d82\u1d83\u0007O\u0002",
+ "\u0002\u1d83\u1d84\u0007G\u0002\u0002\u1d84\u1d85\u0007a\u0002\u0002",
+ "\u1d85\u1d86\u0007F\u0002\u0002\u1d86\u1d87\u0007K\u0002\u0002\u1d87",
+ "\u1d88\u0007U\u0002\u0002\u1d88\u1d89\u0007V\u0002\u0002\u1d89\u1d8a",
+ "\u0007O\u0002\u0002\u1d8a\u025c\u0003\u0002\u0002\u0002\u1d8b\u1d8c",
+ "\u0007E\u0002\u0002\u1d8c\u1d8d\u0007W\u0002\u0002\u1d8d\u1d8e\u0007",
+ "T\u0002\u0002\u1d8e\u1d8f\u0007T\u0002\u0002\u1d8f\u1d90\u0007G\u0002",
+ "\u0002\u1d90\u1d91\u0007P\u0002\u0002\u1d91\u1d92\u0007V\u0002\u0002",
+ "\u1d92\u025e\u0003\u0002\u0002\u0002\u1d93\u1d94\u0007E\u0002\u0002",
+ "\u1d94\u1d95\u0007W\u0002\u0002\u1d95\u1d96\u0007T\u0002\u0002\u1d96",
+ "\u1d97\u0007T\u0002\u0002\u1d97\u1d98\u0007G\u0002\u0002\u1d98\u1d99",
+ "\u0007P\u0002\u0002\u1d99\u1d9a\u0007V\u0002\u0002\u1d9a\u1d9b\u0007",
+ "a\u0002\u0002\u1d9b\u1d9c\u0007F\u0002\u0002\u1d9c\u1d9d\u0007C\u0002",
+ "\u0002\u1d9d\u1d9e\u0007V\u0002\u0002\u1d9e\u1d9f\u0007G\u0002\u0002",
+ "\u1d9f\u0260\u0003\u0002\u0002\u0002\u1da0\u1da1\u0007E\u0002\u0002",
+ "\u1da1\u1da2\u0007W\u0002\u0002\u1da2\u1da3\u0007T\u0002\u0002\u1da3",
+ "\u1da4\u0007T\u0002\u0002\u1da4\u1da5\u0007G\u0002\u0002\u1da5\u1da6",
+ "\u0007P\u0002\u0002\u1da6\u1da7\u0007V\u0002\u0002\u1da7\u1da8\u0007",
+ "a\u0002\u0002\u1da8\u1da9\u0007U\u0002\u0002\u1da9\u1daa\u0007E\u0002",
+ "\u0002\u1daa\u1dab\u0007J\u0002\u0002\u1dab\u1dac\u0007G\u0002\u0002",
+ "\u1dac\u1dad\u0007O\u0002\u0002\u1dad\u1dae\u0007C\u0002\u0002\u1dae",
+ "\u0262\u0003\u0002\u0002\u0002\u1daf\u1db0\u0007E\u0002\u0002\u1db0",
+ "\u1db1\u0007W\u0002\u0002\u1db1\u1db2\u0007T\u0002\u0002\u1db2\u1db3",
+ "\u0007T\u0002\u0002\u1db3\u1db4\u0007G\u0002\u0002\u1db4\u1db5\u0007",
+ "P\u0002\u0002\u1db5\u1db6\u0007V\u0002\u0002\u1db6\u1db7\u0007a\u0002",
+ "\u0002\u1db7\u1db8\u0007V\u0002\u0002\u1db8\u1db9\u0007K\u0002\u0002",
+ "\u1db9\u1dba\u0007O\u0002\u0002\u1dba\u1dbb\u0007G\u0002\u0002\u1dbb",
+ "\u0264\u0003\u0002\u0002\u0002\u1dbc\u1dbd\u0007E\u0002\u0002\u1dbd",
+ "\u1dbe\u0007W\u0002\u0002\u1dbe\u1dbf\u0007T\u0002\u0002\u1dbf\u1dc0",
+ "\u0007T\u0002\u0002\u1dc0\u1dc1\u0007G\u0002\u0002\u1dc1\u1dc2\u0007",
+ "P\u0002\u0002\u1dc2\u1dc3\u0007V\u0002\u0002\u1dc3\u1dc4\u0007a\u0002",
+ "\u0002\u1dc4\u1dc5\u0007V\u0002\u0002\u1dc5\u1dc6\u0007K\u0002\u0002",
+ "\u1dc6\u1dc7\u0007O\u0002\u0002\u1dc7\u1dc8\u0007G\u0002\u0002\u1dc8",
+ "\u1dc9\u0007U\u0002\u0002\u1dc9\u1dca\u0007V\u0002\u0002\u1dca\u1dcb",
+ "\u0007C\u0002\u0002\u1dcb\u1dcc\u0007O\u0002\u0002\u1dcc\u1dcd\u0007",
+ "R\u0002\u0002\u1dcd\u0266\u0003\u0002\u0002\u0002\u1dce\u1dcf\u0007",
+ "E\u0002\u0002\u1dcf\u1dd0\u0007W\u0002\u0002\u1dd0\u1dd1\u0007T\u0002",
+ "\u0002\u1dd1\u1dd2\u0007T\u0002\u0002\u1dd2\u1dd3\u0007G\u0002\u0002",
+ "\u1dd3\u1dd4\u0007P\u0002\u0002\u1dd4\u1dd5\u0007V\u0002\u0002\u1dd5",
+ "\u1dd6\u0007a\u0002\u0002\u1dd6\u1dd7\u0007W\u0002\u0002\u1dd7\u1dd8",
+ "\u0007U\u0002\u0002\u1dd8\u1dd9\u0007G\u0002\u0002\u1dd9\u1dda\u0007",
+ "T\u0002\u0002\u1dda\u0268\u0003\u0002\u0002\u0002\u1ddb\u1ddc\u0007",
+ "E\u0002\u0002\u1ddc\u1ddd\u0007W\u0002\u0002\u1ddd\u1dde\u0007T\u0002",
+ "\u0002\u1dde\u1ddf\u0007T\u0002\u0002\u1ddf\u1de0\u0007G\u0002\u0002",
+ "\u1de0\u1de1\u0007P\u0002\u0002\u1de1\u1de2\u0007V\u0002\u0002\u1de2",
+ "\u1de3\u0007X\u0002\u0002\u1de3\u026a\u0003\u0002\u0002\u0002\u1de4",
+ "\u1de5\u0007E\u0002\u0002\u1de5\u1de6\u0007W\u0002\u0002\u1de6\u1de7",
+ "\u0007T\u0002\u0002\u1de7\u1de8\u0007U\u0002\u0002\u1de8\u1de9\u0007",
+ "Q\u0002\u0002\u1de9\u1dea\u0007T\u0002\u0002\u1dea\u026c\u0003\u0002",
+ "\u0002\u0002\u1deb\u1dec\u0007E\u0002\u0002\u1dec\u1ded\u0007W\u0002",
+ "\u0002\u1ded\u1dee\u0007T\u0002\u0002\u1dee\u1def\u0007U\u0002\u0002",
+ "\u1def\u1df0\u0007Q\u0002\u0002\u1df0\u1df1\u0007T\u0002\u0002\u1df1",
+ "\u1df2\u0007a\u0002\u0002\u1df2\u1df3\u0007U\u0002\u0002\u1df3\u1df4",
+ "\u0007J\u0002\u0002\u1df4\u1df5\u0007C\u0002\u0002\u1df5\u1df6\u0007",
+ "T\u0002\u0002\u1df6\u1df7\u0007K\u0002\u0002\u1df7\u1df8\u0007P\u0002",
+ "\u0002\u1df8\u1df9\u0007I\u0002\u0002\u1df9\u1dfa\u0007a\u0002\u0002",
+ "\u1dfa\u1dfb\u0007G\u0002\u0002\u1dfb\u1dfc\u0007Z\u0002\u0002\u1dfc",
+ "\u1dfd\u0007C\u0002\u0002\u1dfd\u1dfe\u0007E\u0002\u0002\u1dfe\u1dff",
+ "\u0007V\u0002\u0002\u1dff\u026e\u0003\u0002\u0002\u0002\u1e00\u1e01",
+ "\u0007E\u0002\u0002\u1e01\u1e02\u0007W\u0002\u0002\u1e02\u1e03\u0007",
+ "T\u0002\u0002\u1e03\u1e04\u0007U\u0002\u0002\u1e04\u1e05\u0007Q\u0002",
+ "\u0002\u1e05\u1e06\u0007T\u0002\u0002\u1e06\u1e07\u0007a\u0002\u0002",
+ "\u1e07\u1e08\u0007U\u0002\u0002\u1e08\u1e09\u0007R\u0002\u0002\u1e09",
+ "\u1e0a\u0007G\u0002\u0002\u1e0a\u1e0b\u0007E\u0002\u0002\u1e0b\u1e0c",
+ "\u0007K\u0002\u0002\u1e0c\u1e0d\u0007H\u0002\u0002\u1e0d\u1e0e\u0007",
+ "K\u0002\u0002\u1e0e\u1e0f\u0007E\u0002\u0002\u1e0f\u1e10\u0007a\u0002",
+ "\u0002\u1e10\u1e11\u0007U\u0002\u0002\u1e11\u1e12\u0007G\u0002\u0002",
+ "\u1e12\u1e13\u0007I\u0002\u0002\u1e13\u1e14\u0007O\u0002\u0002\u1e14",
+ "\u1e15\u0007G\u0002\u0002\u1e15\u1e16\u0007P\u0002\u0002\u1e16\u1e17",
+ "\u0007V\u0002\u0002\u1e17\u0270\u0003\u0002\u0002\u0002\u1e18\u1e19",
+ "\u0007E\u0002\u0002\u1e19\u1e1a\u0007W\u0002\u0002\u1e1a\u1e1b\u0007",
+ "U\u0002\u0002\u1e1b\u1e1c\u0007V\u0002\u0002\u1e1c\u1e1d\u0007Q\u0002",
+ "\u0002\u1e1d\u1e1e\u0007O\u0002\u0002\u1e1e\u1e1f\u0007F\u0002\u0002",
+ "\u1e1f\u1e20\u0007C\u0002\u0002\u1e20\u1e21\u0007V\u0002\u0002\u1e21",
+ "\u1e22\u0007W\u0002\u0002\u1e22\u1e23\u0007O\u0002\u0002\u1e23\u0272",
+ "\u0003\u0002\u0002\u0002\u1e24\u1e25\u0007E\u0002\u0002\u1e25\u1e26",
+ "\u0007X\u0002\u0002\u1e26\u0274\u0003\u0002\u0002\u0002\u1e27\u1e28",
+ "\u0007E\u0002\u0002\u1e28\u1e29\u0007[\u0002\u0002\u1e29\u1e2a\u0007",
+ "E\u0002\u0002\u1e2a\u1e2b\u0007N\u0002\u0002\u1e2b\u1e2c\u0007G\u0002",
+ "\u0002\u1e2c\u0276\u0003\u0002\u0002\u0002\u1e2d\u1e2e\u0007F\u0002",
+ "\u0002\u1e2e\u1e2f\u0007C\u0002\u0002\u1e2f\u1e30\u0007P\u0002\u0002",
+ "\u1e30\u1e31\u0007I\u0002\u0002\u1e31\u1e32\u0007N\u0002\u0002\u1e32",
+ "\u1e33\u0007K\u0002\u0002\u1e33\u1e34\u0007P\u0002\u0002\u1e34\u1e35",
+ "\u0007I\u0002\u0002\u1e35\u0278\u0003\u0002\u0002\u0002\u1e36\u1e37",
+ "\u0007F\u0002\u0002\u1e37\u1e38\u0007C\u0002\u0002\u1e38\u1e39\u0007",
+ "V\u0002\u0002\u1e39\u1e3a\u0007C\u0002\u0002\u1e3a\u1e3b\u0007D\u0002",
+ "\u0002\u1e3b\u1e3c\u0007C\u0002\u0002\u1e3c\u1e3d\u0007U\u0002\u0002",
+ "\u1e3d\u1e3e\u0007G\u0002\u0002\u1e3e\u027a\u0003\u0002\u0002\u0002",
+ "\u1e3f\u1e40\u0007F\u0002\u0002\u1e40\u1e41\u0007C\u0002\u0002\u1e41",
+ "\u1e42\u0007V\u0002\u0002\u1e42\u1e43\u0007C\u0002\u0002\u1e43\u027c",
+ "\u0003\u0002\u0002\u0002\u1e44\u1e45\u0007F\u0002\u0002\u1e45\u1e46",
+ "\u0007C\u0002\u0002\u1e46\u1e47\u0007V\u0002\u0002\u1e47\u1e48\u0007",
+ "C\u0002\u0002\u1e48\u1e49\u0007H\u0002\u0002\u1e49\u1e4a\u0007K\u0002",
+ "\u0002\u1e4a\u1e4b\u0007N\u0002\u0002\u1e4b\u1e4c\u0007G\u0002\u0002",
+ "\u1e4c\u027e\u0003\u0002\u0002\u0002\u1e4d\u1e4e\u0007F\u0002\u0002",
+ "\u1e4e\u1e4f\u0007C\u0002\u0002\u1e4f\u1e50\u0007V\u0002\u0002\u1e50",
+ "\u1e51\u0007C\u0002\u0002\u1e51\u1e52\u0007H\u0002\u0002\u1e52\u1e53",
+ "\u0007K\u0002\u0002\u1e53\u1e54\u0007N\u0002\u0002\u1e54\u1e55\u0007",
+ "G\u0002\u0002\u1e55\u1e56\u0007U\u0002\u0002\u1e56\u0280\u0003\u0002",
+ "\u0002\u0002\u1e57\u1e58\u0007F\u0002\u0002\u1e58\u1e59\u0007C\u0002",
+ "\u0002\u1e59\u1e5a\u0007V\u0002\u0002\u1e5a\u1e5b\u0007C\u0002\u0002",
+ "\u1e5b\u1e5c\u0007I\u0002\u0002\u1e5c\u1e5d\u0007W\u0002\u0002\u1e5d",
+ "\u1e5e\u0007C\u0002\u0002\u1e5e\u1e5f\u0007T\u0002\u0002\u1e5f\u1e60",
+ "\u0007F\u0002\u0002\u1e60\u1e61\u0007E\u0002\u0002\u1e61\u1e62\u0007",
+ "Q\u0002\u0002\u1e62\u1e63\u0007P\u0002\u0002\u1e63\u1e64\u0007H\u0002",
+ "\u0002\u1e64\u1e65\u0007K\u0002\u0002\u1e65\u1e66\u0007I\u0002\u0002",
+ "\u1e66\u0282\u0003\u0002\u0002\u0002\u1e67\u1e68\u0007F\u0002\u0002",
+ "\u1e68\u1e69\u0007C\u0002\u0002\u1e69\u1e6a\u0007V\u0002\u0002\u1e6a",
+ "\u1e6b\u0007C\u0002\u0002\u1e6b\u1e6c\u0007O\u0002\u0002\u1e6c\u1e6d",
+ "\u0007Q\u0002\u0002\u1e6d\u1e6e\u0007X\u0002\u0002\u1e6e\u1e6f\u0007",
+ "G\u0002\u0002\u1e6f\u1e70\u0007O\u0002\u0002\u1e70\u1e71\u0007G\u0002",
+ "\u0002\u1e71\u1e72\u0007P\u0002\u0002\u1e72\u1e73\u0007V\u0002\u0002",
+ "\u1e73\u0284\u0003\u0002\u0002\u0002\u1e74\u1e75\u0007F\u0002\u0002",
+ "\u1e75\u1e76\u0007C\u0002\u0002\u1e76\u1e77\u0007V\u0002\u0002\u1e77",
+ "\u1e78\u0007C\u0002\u0002\u1e78\u1e79\u0007Q\u0002\u0002\u1e79\u1e7a",
+ "\u0007D\u0002\u0002\u1e7a\u1e7b\u0007L\u0002\u0002\u1e7b\u1e7c\u0007",
+ "P\u0002\u0002\u1e7c\u1e7d\u0007Q\u0002\u0002\u1e7d\u0286\u0003\u0002",
+ "\u0002\u0002\u1e7e\u1e7f\u0007F\u0002\u0002\u1e7f\u1e80\u0007C\u0002",
+ "\u0002\u1e80\u1e81\u0007V\u0002\u0002\u1e81\u1e82\u0007C\u0002\u0002",
+ "\u1e82\u1e83\u0007Q\u0002\u0002\u1e83\u1e84\u0007D\u0002\u0002\u1e84",
+ "\u1e85\u0007L\u0002\u0002\u1e85\u1e86\u0007a\u0002\u0002\u1e86\u1e87",
+ "\u0007V\u0002\u0002\u1e87\u1e88\u0007Q\u0002\u0002\u1e88\u1e89\u0007",
+ "a\u0002\u0002\u1e89\u1e8a\u0007O\u0002\u0002\u1e8a\u1e8b\u0007C\u0002",
+ "\u0002\u1e8b\u1e8c\u0007V\u0002\u0002\u1e8c\u1e8d\u0007a\u0002\u0002",
+ "\u1e8d\u1e8e\u0007R\u0002\u0002\u1e8e\u1e8f\u0007C\u0002\u0002\u1e8f",
+ "\u1e90\u0007T\u0002\u0002\u1e90\u1e91\u0007V\u0002\u0002\u1e91\u1e92",
+ "\u0007K\u0002\u0002\u1e92\u1e93\u0007V\u0002\u0002\u1e93\u1e94\u0007",
+ "K\u0002\u0002\u1e94\u1e95\u0007Q\u0002\u0002\u1e95\u1e96\u0007P\u0002",
+ "\u0002\u1e96\u0288\u0003\u0002\u0002\u0002\u1e97\u1e98\u0007F\u0002",
+ "\u0002\u1e98\u1e99\u0007C\u0002\u0002\u1e99\u1e9a\u0007V\u0002\u0002",
+ "\u1e9a\u1e9b\u0007C\u0002\u0002\u1e9b\u1e9c\u0007Q\u0002\u0002\u1e9c",
+ "\u1e9d\u0007D\u0002\u0002\u1e9d\u1e9e\u0007L\u0002\u0002\u1e9e\u1e9f",
+ "\u0007a\u0002\u0002\u1e9f\u1ea0\u0007V\u0002\u0002\u1ea0\u1ea1\u0007",
+ "Q\u0002\u0002\u1ea1\u1ea2\u0007a\u0002\u0002\u1ea2\u1ea3\u0007R\u0002",
+ "\u0002\u1ea3\u1ea4\u0007C\u0002\u0002\u1ea4\u1ea5\u0007T\u0002\u0002",
+ "\u1ea5\u1ea6\u0007V\u0002\u0002\u1ea6\u1ea7\u0007K\u0002\u0002\u1ea7",
+ "\u1ea8\u0007V\u0002\u0002\u1ea8\u1ea9\u0007K\u0002\u0002\u1ea9\u1eaa",
+ "\u0007Q\u0002\u0002\u1eaa\u1eab\u0007P\u0002\u0002\u1eab\u028a\u0003",
+ "\u0002\u0002\u0002\u1eac\u1ead\u0007F\u0002\u0002\u1ead\u1eae\u0007",
+ "C\u0002\u0002\u1eae\u1eaf\u0007V\u0002\u0002\u1eaf\u1eb0\u0007C\u0002",
+ "\u0002\u1eb0\u1eb1\u0007R\u0002\u0002\u1eb1\u1eb2\u0007W\u0002\u0002",
+ "\u1eb2\u1eb3\u0007O\u0002\u0002\u1eb3\u1eb4\u0007R\u0002\u0002\u1eb4",
+ "\u028c\u0003\u0002\u0002\u0002\u1eb5\u1eb6\u0007F\u0002\u0002\u1eb6",
+ "\u1eb7\u0007C\u0002\u0002\u1eb7\u1eb8\u0007V\u0002\u0002\u1eb8\u1eb9",
+ "\u0007C\u0002\u0002\u1eb9\u1eba\u0007a\u0002\u0002\u1eba\u1ebb\u0007",
+ "U\u0002\u0002\u1ebb\u1ebc\u0007G\u0002\u0002\u1ebc\u1ebd\u0007E\u0002",
+ "\u0002\u1ebd\u1ebe\u0007W\u0002\u0002\u1ebe\u1ebf\u0007T\u0002\u0002",
+ "\u1ebf\u1ec0\u0007K\u0002\u0002\u1ec0\u1ec1\u0007V\u0002\u0002\u1ec1",
+ "\u1ec2\u0007[\u0002\u0002\u1ec2\u1ec3\u0007a\u0002\u0002\u1ec3\u1ec4",
+ "\u0007T\u0002\u0002\u1ec4\u1ec5\u0007G\u0002\u0002\u1ec5\u1ec6\u0007",
+ "Y\u0002\u0002\u1ec6\u1ec7\u0007T\u0002\u0002\u1ec7\u1ec8\u0007K\u0002",
+ "\u0002\u1ec8\u1ec9\u0007V\u0002\u0002\u1ec9\u1eca\u0007G\u0002\u0002",
+ "\u1eca\u1ecb\u0007a\u0002\u0002\u1ecb\u1ecc\u0007N\u0002\u0002\u1ecc",
+ "\u1ecd\u0007K\u0002\u0002\u1ecd\u1ece\u0007O\u0002\u0002\u1ece\u1ecf",
+ "\u0007K\u0002\u0002\u1ecf\u1ed0\u0007V\u0002\u0002\u1ed0\u028e\u0003",
+ "\u0002\u0002\u0002\u1ed1\u1ed2\u0007F\u0002\u0002\u1ed2\u1ed3\u0007",
+ "C\u0002\u0002\u1ed3\u1ed4\u0007V\u0002\u0002\u1ed4\u1ed5\u0007G\u0002",
+ "\u0002\u1ed5\u0290\u0003\u0002\u0002\u0002\u1ed6\u1ed7\u0007F\u0002",
+ "\u0002\u1ed7\u1ed8\u0007C\u0002\u0002\u1ed8\u1ed9\u0007V\u0002\u0002",
+ "\u1ed9\u1eda\u0007G\u0002\u0002\u1eda\u1edb\u0007a\u0002\u0002\u1edb",
+ "\u1edc\u0007O\u0002\u0002\u1edc\u1edd\u0007Q\u0002\u0002\u1edd\u1ede",
+ "\u0007F\u0002\u0002\u1ede\u1edf\u0007G\u0002\u0002\u1edf\u0292\u0003",
+ "\u0002\u0002\u0002\u1ee0\u1ee1\u0007F\u0002\u0002\u1ee1\u1ee2\u0007",
+ "C\u0002\u0002\u1ee2\u1ee3\u0007[\u0002\u0002\u1ee3\u0294\u0003\u0002",
+ "\u0002\u0002\u1ee4\u1ee5\u0007F\u0002\u0002\u1ee5\u1ee6\u0007C\u0002",
+ "\u0002\u1ee6\u1ee7\u0007[\u0002\u0002\u1ee7\u1ee8\u0007U\u0002\u0002",
+ "\u1ee8\u0296\u0003\u0002\u0002\u0002\u1ee9\u1eea\u0007F\u0002\u0002",
+ "\u1eea\u1eeb\u0007D\u0002\u0002\u1eeb\u1eec\u0007C\u0002\u0002\u1eec",
+ "\u0298\u0003\u0002\u0002\u0002\u1eed\u1eee\u0007F\u0002\u0002\u1eee",
+ "\u1eef\u0007D\u0002\u0002\u1eef\u1ef0\u0007C\u0002\u0002\u1ef0\u1ef1",
+ "\u0007a\u0002\u0002\u1ef1\u1ef2\u0007T\u0002\u0002\u1ef2\u1ef3\u0007",
+ "G\u0002\u0002\u1ef3\u1ef4\u0007E\u0002\u0002\u1ef4\u1ef5\u0007[\u0002",
+ "\u0002\u1ef5\u1ef6\u0007E\u0002\u0002\u1ef6\u1ef7\u0007N\u0002\u0002",
+ "\u1ef7\u1ef8\u0007G\u0002\u0002\u1ef8\u1ef9\u0007D\u0002\u0002\u1ef9",
+ "\u1efa\u0007K\u0002\u0002\u1efa\u1efb\u0007P\u0002\u0002\u1efb\u029a",
+ "\u0003\u0002\u0002\u0002\u1efc\u1efd\u0007F\u0002\u0002\u1efd\u1efe",
+ "\u0007D\u0002\u0002\u1efe\u1eff\u0007O\u0002\u0002\u1eff\u1f00\u0007",
+ "U\u0002\u0002\u1f00\u1f01\u0007a\u0002\u0002\u1f01\u1f02\u0007U\u0002",
+ "\u0002\u1f02\u1f03\u0007V\u0002\u0002\u1f03\u1f04\u0007C\u0002\u0002",
+ "\u1f04\u1f05\u0007V\u0002\u0002\u1f05\u1f06\u0007U\u0002\u0002\u1f06",
+ "\u029c\u0003\u0002\u0002\u0002\u1f07\u1f08\u0007F\u0002\u0002\u1f08",
+ "\u1f09\u0007D\u0002\u0002\u1f09\u1f0a\u0007a\u0002\u0002\u1f0a\u1f0b",
+ "\u0007T\u0002\u0002\u1f0b\u1f0c\u0007Q\u0002\u0002\u1f0c\u1f0d\u0007",
+ "N\u0002\u0002\u1f0d\u1f0e\u0007G\u0002\u0002\u1f0e\u1f0f\u0007a\u0002",
+ "\u0002\u1f0f\u1f10\u0007E\u0002\u0002\u1f10\u1f11\u0007J\u0002\u0002",
+ "\u1f11\u1f12\u0007C\u0002\u0002\u1f12\u1f13\u0007P\u0002\u0002\u1f13",
+ "\u1f14\u0007I\u0002\u0002\u1f14\u1f15\u0007G\u0002\u0002\u1f15\u029e",
+ "\u0003\u0002\u0002\u0002\u1f16\u1f17\u0007F\u0002\u0002\u1f17\u1f18",
+ "\u0007D\u0002\u0002\u1f18\u1f19\u0007V\u0002\u0002\u1f19\u1f1a\u0007",
+ "K\u0002\u0002\u1f1a\u1f1b\u0007O\u0002\u0002\u1f1b\u1f1c\u0007G\u0002",
+ "\u0002\u1f1c\u1f1d\u0007\\\u0002\u0002\u1f1d\u1f1e\u0007Q\u0002\u0002",
+ "\u1f1e\u1f1f\u0007P\u0002\u0002\u1f1f\u1f20\u0007G\u0002\u0002\u1f20",
+ "\u02a0\u0003\u0002\u0002\u0002\u1f21\u1f22\u0007F\u0002\u0002\u1f22",
+ "\u1f23\u0007D\u0002\u0002\u1f23\u1f24\u0007a\u0002\u0002\u1f24\u1f25",
+ "\u0007W\u0002\u0002\u1f25\u1f26\u0007P\u0002\u0002\u1f26\u1f27\u0007",
+ "K\u0002\u0002\u1f27\u1f28\u0007S\u0002\u0002\u1f28\u1f29\u0007W\u0002",
+ "\u0002\u1f29\u1f2a\u0007G\u0002\u0002\u1f2a\u1f2b\u0007a\u0002\u0002",
+ "\u1f2b\u1f2c\u0007P\u0002\u0002\u1f2c\u1f2d\u0007C\u0002\u0002\u1f2d",
+ "\u1f2e\u0007O\u0002\u0002\u1f2e\u1f2f\u0007G\u0002\u0002\u1f2f\u02a2",
+ "\u0003\u0002\u0002\u0002\u1f30\u1f31\u0007F\u0002\u0002\u1f31\u1f32",
+ "\u0007D\u0002\u0002\u1f32\u1f33\u0007a\u0002\u0002\u1f33\u1f34\u0007",
+ "X\u0002\u0002\u1f34\u1f35\u0007G\u0002\u0002\u1f35\u1f36\u0007T\u0002",
+ "\u0002\u1f36\u1f37\u0007U\u0002\u0002\u1f37\u1f38\u0007K\u0002\u0002",
+ "\u1f38\u1f39\u0007Q\u0002\u0002\u1f39\u1f3a\u0007P\u0002\u0002\u1f3a",
+ "\u02a4\u0003\u0002\u0002\u0002\u1f3b\u1f3c\u0007F\u0002\u0002\u1f3c",
+ "\u1f3d\u0007F\u0002\u0002\u1f3d\u1f3e\u0007N\u0002\u0002\u1f3e\u02a6",
+ "\u0003\u0002\u0002\u0002\u1f3f\u1f40\u0007F\u0002\u0002\u1f40\u1f41",
+ "\u0007G\u0002\u0002\u1f41\u1f42\u0007C\u0002\u0002\u1f42\u1f43\u0007",
+ "N\u0002\u0002\u1f43\u1f44\u0007N\u0002\u0002\u1f44\u1f45\u0007Q\u0002",
+ "\u0002\u1f45\u1f46\u0007E\u0002\u0002\u1f46\u1f47\u0007C\u0002\u0002",
+ "\u1f47\u1f48\u0007V\u0002\u0002\u1f48\u1f49\u0007G\u0002\u0002\u1f49",
+ "\u02a8\u0003\u0002\u0002\u0002\u1f4a\u1f4b\u0007F\u0002\u0002\u1f4b",
+ "\u1f4c\u0007G\u0002\u0002\u1f4c\u1f4d\u0007D\u0002\u0002\u1f4d\u1f4e",
+ "\u0007W\u0002\u0002\u1f4e\u1f4f\u0007I\u0002\u0002\u1f4f\u02aa\u0003",
+ "\u0002\u0002\u0002\u1f50\u1f51\u0007F\u0002\u0002\u1f51\u1f52\u0007",
+ "G\u0002\u0002\u1f52\u1f53\u0007D\u0002\u0002\u1f53\u1f54\u0007W\u0002",
+ "\u0002\u1f54\u1f55\u0007I\u0002\u0002\u1f55\u1f56\u0007I\u0002\u0002",
+ "\u1f56\u1f57\u0007G\u0002\u0002\u1f57\u1f58\u0007T\u0002\u0002\u1f58",
+ "\u02ac\u0003\u0002\u0002\u0002\u1f59\u1f5a\u0007F\u0002\u0002\u1f5a",
+ "\u1f5b\u0007G\u0002\u0002\u1f5b\u1f5c\u0007E\u0002\u0002\u1f5c\u02ae",
+ "\u0003\u0002\u0002\u0002\u1f5d\u1f5e\u0007F\u0002\u0002\u1f5e\u1f5f",
+ "\u0007G\u0002\u0002\u1f5f\u1f60\u0007E\u0002\u0002\u1f60\u1f61\u0007",
+ "K\u0002\u0002\u1f61\u1f62\u0007O\u0002\u0002\u1f62\u1f63\u0007C\u0002",
+ "\u0002\u1f63\u1f64\u0007N\u0002\u0002\u1f64\u02b0\u0003\u0002\u0002",
+ "\u0002\u1f65\u1f66\u0007F\u0002\u0002\u1f66\u1f67\u0007G\u0002\u0002",
+ "\u1f67\u1f68\u0007E\u0002\u0002\u1f68\u1f69\u0007N\u0002\u0002\u1f69",
+ "\u1f6a\u0007C\u0002\u0002\u1f6a\u1f6b\u0007T\u0002\u0002\u1f6b\u1f6c",
+ "\u0007G\u0002\u0002\u1f6c\u02b2\u0003\u0002\u0002\u0002\u1f6d\u1f6e",
+ "\u0007F\u0002\u0002\u1f6e\u1f6f\u0007G\u0002\u0002\u1f6f\u1f70\u0007",
+ "E\u0002\u0002\u1f70\u1f71\u0007Q\u0002\u0002\u1f71\u1f72\u0007O\u0002",
+ "\u0002\u1f72\u1f73\u0007R\u0002\u0002\u1f73\u1f74\u0007Q\u0002\u0002",
+ "\u1f74\u1f75\u0007U\u0002\u0002\u1f75\u1f76\u0007G\u0002\u0002\u1f76",
+ "\u02b4\u0003\u0002\u0002\u0002\u1f77\u1f78\u0007F\u0002\u0002\u1f78",
+ "\u1f79\u0007G\u0002\u0002\u1f79\u1f7a\u0007E\u0002\u0002\u1f7a\u1f7b",
+ "\u0007Q\u0002\u0002\u1f7b\u1f7c\u0007T\u0002\u0002\u1f7c\u1f7d\u0007",
+ "T\u0002\u0002\u1f7d\u1f7e\u0007G\u0002\u0002\u1f7e\u1f7f\u0007N\u0002",
+ "\u0002\u1f7f\u1f80\u0007C\u0002\u0002\u1f80\u1f81\u0007V\u0002\u0002",
+ "\u1f81\u1f82\u0007G\u0002\u0002\u1f82\u02b6\u0003\u0002\u0002\u0002",
+ "\u1f83\u1f84\u0007F\u0002\u0002\u1f84\u1f85\u0007G\u0002\u0002\u1f85",
+ "\u1f86\u0007E\u0002\u0002\u1f86\u1f87\u0007T\u0002\u0002\u1f87\u02b8",
+ "\u0003\u0002\u0002\u0002\u1f88\u1f89\u0007F\u0002\u0002\u1f89\u1f8a",
+ "\u0007G\u0002\u0002\u1f8a\u1f8b\u0007E\u0002\u0002\u1f8b\u1f8c\u0007",
+ "T\u0002\u0002\u1f8c\u1f8d\u0007G\u0002\u0002\u1f8d\u1f8e\u0007O\u0002",
+ "\u0002\u1f8e\u1f8f\u0007G\u0002\u0002\u1f8f\u1f90\u0007P\u0002\u0002",
+ "\u1f90\u1f91\u0007V\u0002\u0002\u1f91\u02ba\u0003\u0002\u0002\u0002",
+ "\u1f92\u1f93\u0007F\u0002\u0002\u1f93\u1f94\u0007G\u0002\u0002\u1f94",
+ "\u1f95\u0007E\u0002\u0002\u1f95\u1f96\u0007T\u0002\u0002\u1f96\u1f97",
+ "\u0007[\u0002\u0002\u1f97\u1f98\u0007R\u0002\u0002\u1f98\u1f99\u0007",
+ "V\u0002\u0002\u1f99\u02bc\u0003\u0002\u0002\u0002\u1f9a\u1f9b\u0007",
+ "F\u0002\u0002\u1f9b\u1f9c\u0007G\u0002\u0002\u1f9c\u1f9d\u0007F\u0002",
+ "\u0002\u1f9d\u1f9e\u0007W\u0002\u0002\u1f9e\u1f9f\u0007R\u0002\u0002",
+ "\u1f9f\u1fa0\u0007N\u0002\u0002\u1fa0\u1fa1\u0007K\u0002\u0002\u1fa1",
+ "\u1fa2\u0007E\u0002\u0002\u1fa2\u1fa3\u0007C\u0002\u0002\u1fa3\u1fa4",
+ "\u0007V\u0002\u0002\u1fa4\u1fa5\u0007G\u0002\u0002\u1fa5\u02be\u0003",
+ "\u0002\u0002\u0002\u1fa6\u1fa7\u0007F\u0002\u0002\u1fa7\u1fa8\u0007",
+ "G\u0002\u0002\u1fa8\u1fa9\u0007H\u0002\u0002\u1fa9\u1faa\u0007C\u0002",
+ "\u0002\u1faa\u1fab\u0007W\u0002\u0002\u1fab\u1fac\u0007N\u0002\u0002",
+ "\u1fac\u1fad\u0007V\u0002\u0002\u1fad\u02c0\u0003\u0002\u0002\u0002",
+ "\u1fae\u1faf\u0007F\u0002\u0002\u1faf\u1fb0\u0007G\u0002\u0002\u1fb0",
+ "\u1fb1\u0007H\u0002\u0002\u1fb1\u1fb2\u0007C\u0002\u0002\u1fb2\u1fb3",
+ "\u0007W\u0002\u0002\u1fb3\u1fb4\u0007N\u0002\u0002\u1fb4\u1fb5\u0007",
+ "V\u0002\u0002\u1fb5\u1fb6\u0007U\u0002\u0002\u1fb6\u02c2\u0003\u0002",
+ "\u0002\u0002\u1fb7\u1fb8\u0007F\u0002\u0002\u1fb8\u1fb9\u0007G\u0002",
+ "\u0002\u1fb9\u1fba\u0007H\u0002\u0002\u1fba\u1fbb\u0007G\u0002\u0002",
+ "\u1fbb\u1fbc\u0007T\u0002\u0002\u1fbc\u1fbd\u0007T\u0002\u0002\u1fbd",
+ "\u1fbe\u0007C\u0002\u0002\u1fbe\u1fbf\u0007D\u0002\u0002\u1fbf\u1fc0",
+ "\u0007N\u0002\u0002\u1fc0\u1fc1\u0007G\u0002\u0002\u1fc1\u02c4\u0003",
+ "\u0002\u0002\u0002\u1fc2\u1fc3\u0007F\u0002\u0002\u1fc3\u1fc4\u0007",
+ "G\u0002\u0002\u1fc4\u1fc5\u0007H\u0002\u0002\u1fc5\u1fc6\u0007G\u0002",
+ "\u0002\u1fc6\u1fc7\u0007T\u0002\u0002\u1fc7\u1fc8\u0007T\u0002\u0002",
+ "\u1fc8\u1fc9\u0007G\u0002\u0002\u1fc9\u1fca\u0007F\u0002\u0002\u1fca",
+ "\u02c6\u0003\u0002\u0002\u0002\u1fcb\u1fcc\u0007F\u0002\u0002\u1fcc",
+ "\u1fcd\u0007G\u0002\u0002\u1fcd\u1fce\u0007H\u0002\u0002\u1fce\u1fcf",
+ "\u0007K\u0002\u0002\u1fcf\u1fd0\u0007P\u0002\u0002\u1fd0\u1fd1\u0007",
+ "G\u0002\u0002\u1fd1\u1fd2\u0007F\u0002\u0002\u1fd2\u02c8\u0003\u0002",
+ "\u0002\u0002\u1fd3\u1fd4\u0007F\u0002\u0002\u1fd4\u1fd5\u0007G\u0002",
+ "\u0002\u1fd5\u1fd6\u0007H\u0002\u0002\u1fd6\u1fd7\u0007K\u0002\u0002",
+ "\u1fd7\u1fd8\u0007P\u0002\u0002\u1fd8\u1fd9\u0007G\u0002\u0002\u1fd9",
+ "\u02ca\u0003\u0002\u0002\u0002\u1fda\u1fdb\u0007F\u0002\u0002\u1fdb",
+ "\u1fdc\u0007G\u0002\u0002\u1fdc\u1fdd\u0007H\u0002\u0002\u1fdd\u1fde",
+ "\u0007K\u0002\u0002\u1fde\u1fdf\u0007P\u0002\u0002\u1fdf\u1fe0\u0007",
+ "G\u0002\u0002\u1fe0\u1fe1\u0007T\u0002\u0002\u1fe1\u02cc\u0003\u0002",
+ "\u0002\u0002\u1fe2\u1fe3\u0007F\u0002\u0002\u1fe3\u1fe4\u0007G\u0002",
+ "\u0002\u1fe4\u1fe5\u0007I\u0002\u0002\u1fe5\u1fe6\u0007T\u0002\u0002",
+ "\u1fe6\u1fe7\u0007G\u0002\u0002\u1fe7\u1fe8\u0007G\u0002\u0002\u1fe8",
+ "\u02ce\u0003\u0002\u0002\u0002\u1fe9\u1fea\u0007F\u0002\u0002\u1fea",
+ "\u1feb\u0007G\u0002\u0002\u1feb\u1fec\u0007N\u0002\u0002\u1fec\u1fed",
+ "\u0007C\u0002\u0002\u1fed\u1fee\u0007[\u0002\u0002\u1fee\u02d0\u0003",
+ "\u0002\u0002\u0002\u1fef\u1ff0\u0007F\u0002\u0002\u1ff0\u1ff1\u0007",
+ "G\u0002\u0002\u1ff1\u1ff2\u0007N\u0002\u0002\u1ff2\u1ff3\u0007G\u0002",
+ "\u0002\u1ff3\u1ff4\u0007I\u0002\u0002\u1ff4\u1ff5\u0007C\u0002\u0002",
+ "\u1ff5\u1ff6\u0007V\u0002\u0002\u1ff6\u1ff7\u0007G\u0002\u0002\u1ff7",
+ "\u02d2\u0003\u0002\u0002\u0002\u1ff8\u1ff9\u0007F\u0002\u0002\u1ff9",
+ "\u1ffa\u0007G\u0002\u0002\u1ffa\u1ffb\u0007N\u0002\u0002\u1ffb\u1ffc",
+ "\u0007G\u0002\u0002\u1ffc\u1ffd\u0007V\u0002\u0002\u1ffd\u1ffe\u0007",
+ "G\u0002\u0002\u1ffe\u1fff\u0007a\u0002\u0002\u1fff\u2000\u0007C\u0002",
+ "\u0002\u2000\u2001\u0007N\u0002\u0002\u2001\u2002\u0007N\u0002\u0002",
+ "\u2002\u02d4\u0003\u0002\u0002\u0002\u2003\u2004\u0007F\u0002\u0002",
+ "\u2004\u2005\u0007G\u0002\u0002\u2005\u2006\u0007N\u0002\u0002\u2006",
+ "\u2007\u0007G\u0002\u0002\u2007\u2008\u0007V\u0002\u0002\u2008\u2009",
+ "\u0007G\u0002\u0002\u2009\u02d6\u0003\u0002\u0002\u0002\u200a\u200b",
+ "\u0007F\u0002\u0002\u200b\u200c\u0007G\u0002\u0002\u200c\u200d\u0007",
+ "N\u0002\u0002\u200d\u200e\u0007G\u0002\u0002\u200e\u200f\u0007V\u0002",
+ "\u0002\u200f\u2010\u0007G\u0002\u0002\u2010\u2011\u0007Z\u0002\u0002",
+ "\u2011\u2012\u0007O\u0002\u0002\u2012\u2013\u0007N\u0002\u0002\u2013",
+ "\u02d8\u0003\u0002\u0002\u0002\u2014\u2015\u0007F\u0002\u0002\u2015",
+ "\u2016\u0007G\u0002\u0002\u2016\u2017\u0007O\u0002\u0002\u2017\u2018",
+ "\u0007C\u0002\u0002\u2018\u2019\u0007P\u0002\u0002\u2019\u201a\u0007",
+ "F\u0002\u0002\u201a\u02da\u0003\u0002\u0002\u0002\u201b\u201c\u0007",
+ "F\u0002\u0002\u201c\u201d\u0007G\u0002\u0002\u201d\u201e\u0007P\u0002",
+ "\u0002\u201e\u201f\u0007U\u0002\u0002\u201f\u2020\u0007G\u0002\u0002",
+ "\u2020\u2021\u0007a\u0002\u0002\u2021\u2022\u0007T\u0002\u0002\u2022",
+ "\u2023\u0007C\u0002\u0002\u2023\u2024\u0007P\u0002\u0002\u2024\u2025",
+ "\u0007M\u0002\u0002\u2025\u2026\u0007O\u0002\u0002\u2026\u02dc\u0003",
+ "\u0002\u0002\u0002\u2027\u2028\u0007F\u0002\u0002\u2028\u2029\u0007",
+ "G\u0002\u0002\u2029\u202a\u0007R\u0002\u0002\u202a\u202b\u0007G\u0002",
+ "\u0002\u202b\u202c\u0007P\u0002\u0002\u202c\u202d\u0007F\u0002\u0002",
+ "\u202d\u202e\u0007G\u0002\u0002\u202e\u202f\u0007P\u0002\u0002\u202f",
+ "\u2030\u0007V\u0002\u0002\u2030\u02de\u0003\u0002\u0002\u0002\u2031",
+ "\u2032\u0007F\u0002\u0002\u2032\u2033\u0007G\u0002\u0002\u2033\u2034",
+ "\u0007R\u0002\u0002\u2034\u2035\u0007V\u0002\u0002\u2035\u2036\u0007",
+ "J\u0002\u0002\u2036\u02e0\u0003\u0002\u0002\u0002\u2037\u2038\u0007",
+ "F\u0002\u0002\u2038\u2039\u0007G\u0002\u0002\u2039\u203a\u0007S\u0002",
+ "\u0002\u203a\u203b\u0007W\u0002\u0002\u203b\u203c\u0007G\u0002\u0002",
+ "\u203c\u203d\u0007W\u0002\u0002\u203d\u203e\u0007G\u0002\u0002\u203e",
+ "\u02e2\u0003\u0002\u0002\u0002\u203f\u2040\u0007F\u0002\u0002\u2040",
+ "\u2041\u0007G\u0002\u0002\u2041\u2042\u0007T\u0002\u0002\u2042\u2043",
+ "\u0007G\u0002\u0002\u2043\u2044\u0007H\u0002\u0002\u2044\u02e4\u0003",
+ "\u0002\u0002\u0002\u2045\u2046\u0007F\u0002\u0002\u2046\u2047\u0007",
+ "G\u0002\u0002\u2047\u2048\u0007T\u0002\u0002\u2048\u2049\u0007G\u0002",
+ "\u0002\u2049\u204a\u0007H\u0002\u0002\u204a\u204b\u0007a\u0002\u0002",
+ "\u204b\u204c\u0007P\u0002\u0002\u204c\u204d\u0007Q\u0002\u0002\u204d",
+ "\u204e\u0007a\u0002\u0002\u204e\u204f\u0007T\u0002\u0002\u204f\u2050",
+ "\u0007G\u0002\u0002\u2050\u2051\u0007Y\u0002\u0002\u2051\u2052\u0007",
+ "T\u0002\u0002\u2052\u2053\u0007K\u0002\u0002\u2053\u2054\u0007V\u0002",
+ "\u0002\u2054\u2055\u0007G\u0002\u0002\u2055\u02e6\u0003\u0002\u0002",
+ "\u0002\u2056\u2057\u0007F\u0002\u0002\u2057\u2058\u0007G\u0002\u0002",
+ "\u2058\u2059\u0007U\u0002\u0002\u2059\u205a\u0007E\u0002\u0002\u205a",
+ "\u02e8\u0003\u0002\u0002\u0002\u205b\u205c\u0007F\u0002\u0002\u205c",
+ "\u205d\u0007G\u0002\u0002\u205d\u205e\u0007U\u0002\u0002\u205e\u205f",
+ "\u0007V\u0002\u0002\u205f\u2060\u0007T\u0002\u0002\u2060\u2061\u0007",
+ "Q\u0002\u0002\u2061\u2062\u0007[\u0002\u0002\u2062\u02ea\u0003\u0002",
+ "\u0002\u0002\u2063\u2064\u0007F\u0002\u0002\u2064\u2065\u0007G\u0002",
+ "\u0002\u2065\u2066\u0007V\u0002\u0002\u2066\u2067\u0007C\u0002\u0002",
+ "\u2067\u2068\u0007E\u0002\u0002\u2068\u2069\u0007J\u0002\u0002\u2069",
+ "\u206a\u0007G\u0002\u0002\u206a\u206b\u0007F\u0002\u0002\u206b\u02ec",
+ "\u0003\u0002\u0002\u0002\u206c\u206d\u0007F\u0002\u0002\u206d\u206e",
+ "\u0007G\u0002\u0002\u206e\u206f\u0007V\u0002\u0002\u206f\u2070\u0007",
+ "G\u0002\u0002\u2070\u2071\u0007T\u0002\u0002\u2071\u2072\u0007O\u0002",
+ "\u0002\u2072\u2073\u0007K\u0002\u0002\u2073\u2074\u0007P\u0002\u0002",
+ "\u2074\u2075\u0007G\u0002\u0002\u2075\u2076\u0007U\u0002\u0002\u2076",
+ "\u02ee\u0003\u0002\u0002\u0002\u2077\u2078\u0007F\u0002\u0002\u2078",
+ "\u2079\u0007G\u0002\u0002\u2079\u207a\u0007V\u0002\u0002\u207a\u207b",
+ "\u0007G\u0002\u0002\u207b\u207c\u0007T\u0002\u0002\u207c\u207d\u0007",
+ "O\u0002\u0002\u207d\u207e\u0007K\u0002\u0002\u207e\u207f\u0007P\u0002",
+ "\u0002\u207f\u2080\u0007K\u0002\u0002\u2080\u2081\u0007U\u0002\u0002",
+ "\u2081\u2082\u0007V\u0002\u0002\u2082\u2083\u0007K\u0002\u0002\u2083",
+ "\u2084\u0007E\u0002\u0002\u2084\u02f0\u0003\u0002\u0002\u0002\u2085",
+ "\u2086\u0007F\u0002\u0002\u2086\u2087\u0007K\u0002\u0002\u2087\u2088",
+ "\u0007E\u0002\u0002\u2088\u2089\u0007V\u0002\u0002\u2089\u208a\u0007",
+ "K\u0002\u0002\u208a\u208b\u0007Q\u0002\u0002\u208b\u208c\u0007P\u0002",
+ "\u0002\u208c\u208d\u0007C\u0002\u0002\u208d\u208e\u0007T\u0002\u0002",
+ "\u208e\u208f\u0007[\u0002\u0002\u208f\u02f2\u0003\u0002\u0002\u0002",
+ "\u2090\u2091\u0007F\u0002\u0002\u2091\u2092\u0007K\u0002\u0002\u2092",
+ "\u2093\u0007O\u0002\u0002\u2093\u2094\u0007G\u0002\u0002\u2094\u2095",
+ "\u0007P\u0002\u0002\u2095\u2096\u0007U\u0002\u0002\u2096\u2097\u0007",
+ "K\u0002\u0002\u2097\u2098\u0007Q\u0002\u0002\u2098\u2099\u0007P\u0002",
+ "\u0002\u2099\u02f4\u0003\u0002\u0002\u0002\u209a\u209b\u0007F\u0002",
+ "\u0002\u209b\u209c\u0007K\u0002\u0002\u209c\u209d\u0007O\u0002\u0002",
+ "\u209d\u209e\u0007G\u0002\u0002\u209e\u209f\u0007P\u0002\u0002\u209f",
+ "\u20a0\u0007U\u0002\u0002\u20a0\u20a1\u0007K\u0002\u0002\u20a1\u20a2",
+ "\u0007Q\u0002\u0002\u20a2\u20a3\u0007P\u0002\u0002\u20a3\u20a4\u0007",
+ "U\u0002\u0002\u20a4\u02f6\u0003\u0002\u0002\u0002\u20a5\u20a6\u0007",
+ "F\u0002\u0002\u20a6\u20a7\u0007K\u0002\u0002\u20a7\u20a8\u0007T\u0002",
+ "\u0002\u20a8\u20a9\u0007G\u0002\u0002\u20a9\u20aa\u0007E\u0002\u0002",
+ "\u20aa\u20ab\u0007V\u0002\u0002\u20ab\u20ac\u0007a\u0002\u0002\u20ac",
+ "\u20ad\u0007N\u0002\u0002\u20ad\u20ae\u0007Q\u0002\u0002\u20ae\u20af",
+ "\u0007C\u0002\u0002\u20af\u20b0\u0007F\u0002\u0002\u20b0\u02f8\u0003",
+ "\u0002\u0002\u0002\u20b1\u20b2\u0007F\u0002\u0002\u20b2\u20b3\u0007",
+ "K\u0002\u0002\u20b3\u20b4\u0007T\u0002\u0002\u20b4\u20b5\u0007G\u0002",
+ "\u0002\u20b5\u20b6\u0007E\u0002\u0002\u20b6\u20b7\u0007V\u0002\u0002",
+ "\u20b7\u20b8\u0007Q\u0002\u0002\u20b8\u20b9\u0007T\u0002\u0002\u20b9",
+ "\u20ba\u0007[\u0002\u0002\u20ba\u02fa\u0003\u0002\u0002\u0002\u20bb",
+ "\u20bc\u0007F\u0002\u0002\u20bc\u20bd\u0007K\u0002\u0002\u20bd\u20be",
+ "\u0007T\u0002\u0002\u20be\u20bf\u0007G\u0002\u0002\u20bf\u20c0\u0007",
+ "E\u0002\u0002\u20c0\u20c1\u0007V\u0002\u0002\u20c1\u20c2\u0007a\u0002",
+ "\u0002\u20c2\u20c3\u0007R\u0002\u0002\u20c3\u20c4\u0007C\u0002\u0002",
+ "\u20c4\u20c5\u0007V\u0002\u0002\u20c5\u20c6\u0007J\u0002\u0002\u20c6",
+ "\u02fc\u0003\u0002\u0002\u0002\u20c7\u20c8\u0007F\u0002\u0002\u20c8",
+ "\u20c9\u0007K\u0002\u0002\u20c9\u20ca\u0007U\u0002\u0002\u20ca\u20cb",
+ "\u0007C\u0002\u0002\u20cb\u20cc\u0007D\u0002\u0002\u20cc\u20cd\u0007",
+ "N\u0002\u0002\u20cd\u20ce\u0007G\u0002\u0002\u20ce\u20cf\u0007a\u0002",
+ "\u0002\u20cf\u20d0\u0007C\u0002\u0002\u20d0\u20d1\u0007N\u0002\u0002",
+ "\u20d1\u20d2\u0007N\u0002\u0002\u20d2\u02fe\u0003\u0002\u0002\u0002",
+ "\u20d3\u20d4\u0007F\u0002\u0002\u20d4\u20d5\u0007K\u0002\u0002\u20d5",
+ "\u20d6\u0007U\u0002\u0002\u20d6\u20d7\u0007C\u0002\u0002\u20d7\u20d8",
+ "\u0007D\u0002\u0002\u20d8\u20d9\u0007N\u0002\u0002\u20d9\u20da\u0007",
+ "G\u0002\u0002\u20da\u0300\u0003\u0002\u0002\u0002\u20db\u20dc\u0007",
+ "F\u0002\u0002\u20dc\u20dd\u0007K\u0002\u0002\u20dd\u20de\u0007U\u0002",
+ "\u0002\u20de\u20df\u0007C\u0002\u0002\u20df\u20e0\u0007D\u0002\u0002",
+ "\u20e0\u20e1\u0007N\u0002\u0002\u20e1\u20e2\u0007G\u0002\u0002\u20e2",
+ "\u20e3\u0007a\u0002\u0002\u20e3\u20e4\u0007R\u0002\u0002\u20e4\u20e5",
+ "\u0007C\u0002\u0002\u20e5\u20e6\u0007T\u0002\u0002\u20e6\u20e7\u0007",
+ "C\u0002\u0002\u20e7\u20e8\u0007N\u0002\u0002\u20e8\u20e9\u0007N\u0002",
+ "\u0002\u20e9\u20ea\u0007G\u0002\u0002\u20ea\u20eb\u0007N\u0002\u0002",
+ "\u20eb\u20ec\u0007a\u0002\u0002\u20ec\u20ed\u0007F\u0002\u0002\u20ed",
+ "\u20ee\u0007O\u0002\u0002\u20ee\u20ef\u0007N\u0002\u0002\u20ef\u0302",
+ "\u0003\u0002\u0002\u0002\u20f0\u20f1\u0007F\u0002\u0002\u20f1\u20f2",
+ "\u0007K\u0002\u0002\u20f2\u20f3\u0007U\u0002\u0002\u20f3\u20f4\u0007",
+ "C\u0002\u0002\u20f4\u20f5\u0007D\u0002\u0002\u20f5\u20f6\u0007N\u0002",
+ "\u0002\u20f6\u20f7\u0007G\u0002\u0002\u20f7\u20f8\u0007a\u0002\u0002",
+ "\u20f8\u20f9\u0007R\u0002\u0002\u20f9\u20fa\u0007T\u0002\u0002\u20fa",
+ "\u20fb\u0007G\u0002\u0002\u20fb\u20fc\u0007U\u0002\u0002\u20fc\u20fd",
+ "\u0007G\u0002\u0002\u20fd\u20fe\u0007V\u0002\u0002\u20fe\u0304\u0003",
+ "\u0002\u0002\u0002\u20ff\u2100\u0007F\u0002\u0002\u2100\u2101\u0007",
+ "K\u0002\u0002\u2101\u2102\u0007U\u0002\u0002\u2102\u2103\u0007C\u0002",
+ "\u0002\u2103\u2104\u0007D\u0002\u0002\u2104\u2105\u0007N\u0002\u0002",
+ "\u2105\u2106\u0007G\u0002\u0002\u2106\u2107\u0007a\u0002\u0002\u2107",
+ "\u2108\u0007T\u0002\u0002\u2108\u2109\u0007R\u0002\u0002\u2109\u210a",
+ "\u0007M\u0002\u0002\u210a\u210b\u0007G\u0002\u0002\u210b\u0306\u0003",
+ "\u0002\u0002\u0002\u210c\u210d\u0007F\u0002\u0002\u210d\u210e\u0007",
+ "K\u0002\u0002\u210e\u210f\u0007U\u0002\u0002\u210f\u2110\u0007C\u0002",
+ "\u0002\u2110\u2111\u0007N\u0002\u0002\u2111\u2112\u0007N\u0002\u0002",
+ "\u2112\u2113\u0007Q\u0002\u0002\u2113\u2114\u0007Y\u0002\u0002\u2114",
+ "\u0308\u0003\u0002\u0002\u0002\u2115\u2116\u0007F\u0002\u0002\u2116",
+ "\u2117\u0007K\u0002\u0002\u2117\u2118\u0007U\u0002\u0002\u2118\u2119",
+ "\u0007C\u0002\u0002\u2119\u211a\u0007U\u0002\u0002\u211a\u211b\u0007",
+ "U\u0002\u0002\u211b\u211c\u0007Q\u0002\u0002\u211c\u211d\u0007E\u0002",
+ "\u0002\u211d\u211e\u0007K\u0002\u0002\u211e\u211f\u0007C\u0002\u0002",
+ "\u211f\u2120\u0007V\u0002\u0002\u2120\u2121\u0007G\u0002\u0002\u2121",
+ "\u030a\u0003\u0002\u0002\u0002\u2122\u2123\u0007F\u0002\u0002\u2123",
+ "\u2124\u0007K\u0002\u0002\u2124\u2125\u0007U\u0002\u0002\u2125\u2126",
+ "\u0007E\u0002\u0002\u2126\u2127\u0007C\u0002\u0002\u2127\u2128\u0007",
+ "T\u0002\u0002\u2128\u2129\u0007F\u0002\u0002\u2129\u030c\u0003\u0002",
+ "\u0002\u0002\u212a\u212b\u0007F\u0002\u0002\u212b\u212c\u0007K\u0002",
+ "\u0002\u212c\u212d\u0007U\u0002\u0002\u212d\u212e\u0007E\u0002\u0002",
+ "\u212e\u212f\u0007Q\u0002\u0002\u212f\u2130\u0007P\u0002\u0002\u2130",
+ "\u2131\u0007P\u0002\u0002\u2131\u2132\u0007G\u0002\u0002\u2132\u2133",
+ "\u0007E\u0002\u0002\u2133\u2134\u0007V\u0002\u0002\u2134\u030e\u0003",
+ "\u0002\u0002\u0002\u2135\u2136\u0007F\u0002\u0002\u2136\u2137\u0007",
+ "K\u0002\u0002\u2137\u2138\u0007U\u0002\u0002\u2138\u2139\u0007M\u0002",
+ "\u0002\u2139\u0310\u0003\u0002\u0002\u0002\u213a\u213b\u0007F\u0002",
+ "\u0002\u213b\u213c\u0007K\u0002\u0002\u213c\u213d\u0007U\u0002\u0002",
+ "\u213d\u213e\u0007M\u0002\u0002\u213e\u213f\u0007I\u0002\u0002\u213f",
+ "\u2140\u0007T\u0002\u0002\u2140\u2141\u0007Q\u0002\u0002\u2141\u2142",
+ "\u0007W\u0002\u0002\u2142\u2143\u0007R\u0002\u0002\u2143\u0312\u0003",
+ "\u0002\u0002\u0002\u2144\u2145\u0007)\u0002\u0002\u2145\u2146\u0007",
+ "-\u0002\u0002\u2146\u2147\u0007\"\u0002\u0002\u2147\u2148\u0007F\u0002",
+ "\u0002\u2148\u2149\u0007K\u0002\u0002\u2149\u214a\u0007U\u0002\u0002",
+ "\u214a\u214b\u0007M\u0002\u0002\u214b\u214c\u0007I\u0002\u0002\u214c",
+ "\u214d\u0007T\u0002\u0002\u214d\u214e\u0007Q\u0002\u0002\u214e\u214f",
+ "\u0007W\u0002\u0002\u214f\u2150\u0007R\u0002\u0002\u2150\u0314\u0003",
+ "\u0002\u0002\u0002\u2151\u2152\u0007F\u0002\u0002\u2152\u2153\u0007",
+ "K\u0002\u0002\u2153\u2154\u0007U\u0002\u0002\u2154\u2155\u0007M\u0002",
+ "\u0002\u2155\u2156\u0007U\u0002\u0002\u2156\u0316\u0003\u0002\u0002",
+ "\u0002\u2157\u2158\u0007F\u0002\u0002\u2158\u2159\u0007K\u0002\u0002",
+ "\u2159\u215a\u0007U\u0002\u0002\u215a\u215b\u0007O\u0002\u0002\u215b",
+ "\u215c\u0007Q\u0002\u0002\u215c\u215d\u0007W\u0002\u0002\u215d\u215e",
+ "\u0007P\u0002\u0002\u215e\u215f\u0007V\u0002\u0002\u215f\u0318\u0003",
+ "\u0002\u0002\u0002\u2160\u2161\u0007F\u0002\u0002\u2161\u2162\u0007",
+ "K\u0002\u0002\u2162\u2163\u0007U\u0002\u0002\u2163\u2164\u0007V\u0002",
+ "\u0002\u2164\u2165\u0007K\u0002\u0002\u2165\u2166\u0007P\u0002\u0002",
+ "\u2166\u2167\u0007E\u0002\u0002\u2167\u2168\u0007V\u0002\u0002\u2168",
+ "\u031a\u0003\u0002\u0002\u0002\u2169\u216a\u0007F\u0002\u0002\u216a",
+ "\u216b\u0007K\u0002\u0002\u216b\u216c\u0007U\u0002\u0002\u216c\u216d",
+ "\u0007V\u0002\u0002\u216d\u216e\u0007K\u0002\u0002\u216e\u216f\u0007",
+ "P\u0002\u0002\u216f\u2170\u0007I\u0002\u0002\u2170\u2171\u0007W\u0002",
+ "\u0002\u2171\u2172\u0007K\u0002\u0002\u2172\u2173\u0007U\u0002\u0002",
+ "\u2173\u2174\u0007J\u0002\u0002\u2174\u2175\u0007G\u0002\u0002\u2175",
+ "\u2176\u0007F\u0002\u0002\u2176\u031c\u0003\u0002\u0002\u0002\u2177",
+ "\u2178\u0007F\u0002\u0002\u2178\u2179\u0007K\u0002\u0002\u2179\u217a",
+ "\u0007U\u0002\u0002\u217a\u217b\u0007V\u0002\u0002\u217b\u217c\u0007",
+ "T\u0002\u0002\u217c\u217d\u0007K\u0002\u0002\u217d\u217e\u0007D\u0002",
+ "\u0002\u217e\u217f\u0007W\u0002\u0002\u217f\u2180\u0007V\u0002\u0002",
+ "\u2180\u2181\u0007G\u0002\u0002\u2181\u2182\u0007F\u0002\u0002\u2182",
+ "\u031e\u0003\u0002\u0002\u0002\u2183\u2184\u0007F\u0002\u0002\u2184",
+ "\u2185\u0007K\u0002\u0002\u2185\u2186\u0007U\u0002\u0002\u2186\u2187",
+ "\u0007V\u0002\u0002\u2187\u2188\u0007T\u0002\u0002\u2188\u2189\u0007",
+ "K\u0002\u0002\u2189\u218a\u0007D\u0002\u0002\u218a\u218b\u0007W\u0002",
+ "\u0002\u218b\u218c\u0007V\u0002\u0002\u218c\u218d\u0007G\u0002\u0002",
+ "\u218d\u0320\u0003\u0002\u0002\u0002\u218e\u218f\u0007F\u0002\u0002",
+ "\u218f\u2190\u0007O\u0002\u0002\u2190\u2191\u0007N\u0002\u0002\u2191",
+ "\u0322\u0003\u0002\u0002\u0002\u2192\u2193\u0007F\u0002\u0002\u2193",
+ "\u2194\u0007O\u0002\u0002\u2194\u2195\u0007N\u0002\u0002\u2195\u2196",
+ "\u0007a\u0002\u0002\u2196\u2197\u0007W\u0002\u0002\u2197\u2198\u0007",
+ "R\u0002\u0002\u2198\u2199\u0007F\u0002\u0002\u2199\u219a\u0007C\u0002",
+ "\u0002\u219a\u219b\u0007V\u0002\u0002\u219b\u219c\u0007G\u0002\u0002",
+ "\u219c\u0324\u0003\u0002\u0002\u0002\u219d\u219e\u0007F\u0002\u0002",
+ "\u219e\u219f\u0007Q\u0002\u0002\u219f\u21a0\u0007E\u0002\u0002\u21a0",
+ "\u21a1\u0007H\u0002\u0002\u21a1\u21a2\u0007K\u0002\u0002\u21a2\u21a3",
+ "\u0007F\u0002\u0002\u21a3\u21a4\u0007G\u0002\u0002\u21a4\u21a5\u0007",
+ "N\u0002\u0002\u21a5\u21a6\u0007K\u0002\u0002\u21a6\u21a7\u0007V\u0002",
+ "\u0002\u21a7\u21a8\u0007[\u0002\u0002\u21a8\u0326\u0003\u0002\u0002",
+ "\u0002\u21a9\u21aa\u0007F\u0002\u0002\u21aa\u21ab\u0007Q\u0002\u0002",
+ "\u21ab\u21ac\u0007E\u0002\u0002\u21ac\u21ad\u0007W\u0002\u0002\u21ad",
+ "\u21ae\u0007O\u0002\u0002\u21ae\u21af\u0007G\u0002\u0002\u21af\u21b0",
+ "\u0007P\u0002\u0002\u21b0\u21b1\u0007V\u0002\u0002\u21b1\u0328\u0003",
+ "\u0002\u0002\u0002\u21b2\u21b3\u0007F\u0002\u0002\u21b3\u21b4\u0007",
+ "Q\u0002\u0002\u21b4\u21b5\u0007O\u0002\u0002\u21b5\u21b6\u0007C\u0002",
+ "\u0002\u21b6\u21b7\u0007K\u0002\u0002\u21b7\u21b8\u0007P\u0002\u0002",
+ "\u21b8\u21b9\u0007a\u0002\u0002\u21b9\u21ba\u0007K\u0002\u0002\u21ba",
+ "\u21bb\u0007P\u0002\u0002\u21bb\u21bc\u0007F\u0002\u0002\u21bc\u21bd",
+ "\u0007G\u0002\u0002\u21bd\u21be\u0007Z\u0002\u0002\u21be\u21bf\u0007",
+ "a\u0002\u0002\u21bf\u21c0\u0007H\u0002\u0002\u21c0\u21c1\u0007K\u0002",
+ "\u0002\u21c1\u21c2\u0007N\u0002\u0002\u21c2\u21c3\u0007V\u0002\u0002",
+ "\u21c3\u21c4\u0007G\u0002\u0002\u21c4\u21c5\u0007T\u0002\u0002\u21c5",
+ "\u032a\u0003\u0002\u0002\u0002\u21c6\u21c7\u0007F\u0002\u0002\u21c7",
+ "\u21c8\u0007Q\u0002\u0002\u21c8\u21c9\u0007O\u0002\u0002\u21c9\u21ca",
+ "\u0007C\u0002\u0002\u21ca\u21cb\u0007K\u0002\u0002\u21cb\u21cc\u0007",
+ "P\u0002\u0002\u21cc\u21cd\u0007a\u0002\u0002\u21cd\u21ce\u0007K\u0002",
+ "\u0002\u21ce\u21cf\u0007P\u0002\u0002\u21cf\u21d0\u0007F\u0002\u0002",
+ "\u21d0\u21d1\u0007G\u0002\u0002\u21d1\u21d2\u0007Z\u0002\u0002\u21d2",
+ "\u21d3\u0007a\u0002\u0002\u21d3\u21d4\u0007P\u0002\u0002\u21d4\u21d5",
+ "\u0007Q\u0002\u0002\u21d5\u21d6\u0007a\u0002\u0002\u21d6\u21d7\u0007",
+ "U\u0002\u0002\u21d7\u21d8\u0007Q\u0002\u0002\u21d8\u21d9\u0007T\u0002",
+ "\u0002\u21d9\u21da\u0007V\u0002\u0002\u21da\u032c\u0003\u0002\u0002",
+ "\u0002\u21db\u21dc\u0007F\u0002\u0002\u21dc\u21dd\u0007Q\u0002\u0002",
+ "\u21dd\u21de\u0007O\u0002\u0002\u21de\u21df\u0007C\u0002\u0002\u21df",
+ "\u21e0\u0007K\u0002\u0002\u21e0\u21e1\u0007P\u0002\u0002\u21e1\u21e2",
+ "\u0007a\u0002\u0002\u21e2\u21e3\u0007K\u0002\u0002\u21e3\u21e4\u0007",
+ "P\u0002\u0002\u21e4\u21e5\u0007F\u0002\u0002\u21e5\u21e6\u0007G\u0002",
+ "\u0002\u21e6\u21e7\u0007Z\u0002\u0002\u21e7\u21e8\u0007a\u0002\u0002",
+ "\u21e8\u21e9\u0007U\u0002\u0002\u21e9\u21ea\u0007Q\u0002\u0002\u21ea",
+ "\u21eb\u0007T\u0002\u0002\u21eb\u21ec\u0007V\u0002\u0002\u21ec\u032e",
+ "\u0003\u0002\u0002\u0002\u21ed\u21ee\u0007F\u0002\u0002\u21ee\u21ef",
+ "\u0007Q\u0002\u0002\u21ef\u21f0\u0007W\u0002\u0002\u21f0\u21f1\u0007",
+ "D\u0002\u0002\u21f1\u21f2\u0007N\u0002\u0002\u21f2\u21f3\u0007G\u0002",
+ "\u0002\u21f3\u0330\u0003\u0002\u0002\u0002\u21f4\u21f5\u0007F\u0002",
+ "\u0002\u21f5\u21f6\u0007Q\u0002\u0002\u21f6\u21f7\u0007Y\u0002\u0002",
+ "\u21f7\u21f8\u0007P\u0002\u0002\u21f8\u21f9\u0007I\u0002\u0002\u21f9",
+ "\u21fa\u0007T\u0002\u0002\u21fa\u21fb\u0007C\u0002\u0002\u21fb\u21fc",
+ "\u0007F\u0002\u0002\u21fc\u21fd\u0007G\u0002\u0002\u21fd\u0332\u0003",
+ "\u0002\u0002\u0002\u21fe\u21ff\u0007F\u0002\u0002\u21ff\u2200\u0007",
+ "T\u0002\u0002\u2200\u2201\u0007K\u0002\u0002\u2201\u2202\u0007X\u0002",
+ "\u0002\u2202\u2203\u0007K\u0002\u0002\u2203\u2204\u0007P\u0002\u0002",
+ "\u2204\u2205\u0007I\u0002\u0002\u2205\u2206\u0007a\u0002\u0002\u2206",
+ "\u2207\u0007U\u0002\u0002\u2207\u2208\u0007K\u0002\u0002\u2208\u2209",
+ "\u0007V\u0002\u0002\u2209\u220a\u0007G\u0002\u0002\u220a\u0334\u0003",
+ "\u0002\u0002\u0002\u220b\u220c\u0007F\u0002\u0002\u220c\u220d\u0007",
+ "T\u0002\u0002\u220d\u220e\u0007Q\u0002\u0002\u220e\u220f\u0007R\u0002",
+ "\u0002\u220f\u2210\u0007a\u0002\u0002\u2210\u2211\u0007E\u0002\u0002",
+ "\u2211\u2212\u0007Q\u0002\u0002\u2212\u2213\u0007N\u0002\u0002\u2213",
+ "\u2214\u0007W\u0002\u0002\u2214\u2215\u0007O\u0002\u0002\u2215\u2216",
+ "\u0007P\u0002\u0002\u2216\u0336\u0003\u0002\u0002\u0002\u2217\u2218",
+ "\u0007F\u0002\u0002\u2218\u2219\u0007T\u0002\u0002\u2219\u221a\u0007",
+ "Q\u0002\u0002\u221a\u221b\u0007R\u0002\u0002\u221b\u0338\u0003\u0002",
+ "\u0002\u0002\u221c\u221d\u0007F\u0002\u0002\u221d\u221e\u0007T\u0002",
+ "\u0002\u221e\u221f\u0007Q\u0002\u0002\u221f\u2220\u0007R\u0002\u0002",
+ "\u2220\u2221\u0007a\u0002\u0002\u2221\u2222\u0007I\u0002\u0002\u2222",
+ "\u2223\u0007T\u0002\u0002\u2223\u2224\u0007Q\u0002\u0002\u2224\u2225",
+ "\u0007W\u0002\u0002\u2225\u2226\u0007R\u0002\u0002\u2226\u033a\u0003",
+ "\u0002\u0002\u0002\u2227\u2228\u0007F\u0002\u0002\u2228\u2229\u0007",
+ "U\u0002\u0002\u2229\u222a\u0007K\u0002\u0002\u222a\u222b\u0007P\u0002",
+ "\u0002\u222b\u222c\u0007V\u0002\u0002\u222c\u222d\u0007G\u0002\u0002",
+ "\u222d\u222e\u0007T\u0002\u0002\u222e\u222f\u0007X\u0002\u0002\u222f",
+ "\u2230\u0007C\u0002\u0002\u2230\u2231\u0007N\u0002\u0002\u2231\u2232",
+ "\u0007a\u0002\u0002\u2232\u2233\u0007W\u0002\u0002\u2233\u2234\u0007",
+ "P\u0002\u0002\u2234\u2235\u0007E\u0002\u0002\u2235\u2236\u0007Q\u0002",
+ "\u0002\u2236\u2237\u0007P\u0002\u0002\u2237\u2238\u0007U\u0002\u0002",
+ "\u2238\u2239\u0007V\u0002\u0002\u2239\u223a\u0007T\u0002\u0002\u223a",
+ "\u223b\u0007C\u0002\u0002\u223b\u223c\u0007K\u0002\u0002\u223c\u223d",
+ "\u0007P\u0002\u0002\u223d\u223e\u0007G\u0002\u0002\u223e\u223f\u0007",
+ "F\u0002\u0002\u223f\u033c\u0003\u0002\u0002\u0002\u2240\u2241\u0007",
+ "F\u0002\u0002\u2241\u2242\u0007U\u0002\u0002\u2242\u2243\u0007V\u0002",
+ "\u0002\u2243\u2244\u0007a\u0002\u0002\u2244\u2245\u0007W\u0002\u0002",
+ "\u2245\u2246\u0007R\u0002\u0002\u2246\u2247\u0007I\u0002\u0002\u2247",
+ "\u2248\u0007T\u0002\u0002\u2248\u2249\u0007C\u0002\u0002\u2249\u224a",
+ "\u0007F\u0002\u0002\u224a\u224b\u0007G\u0002\u0002\u224b\u224c\u0007",
+ "a\u0002\u0002\u224c\u224d\u0007K\u0002\u0002\u224d\u224e\u0007P\u0002",
+ "\u0002\u224e\u224f\u0007U\u0002\u0002\u224f\u2250\u0007G\u0002\u0002",
+ "\u2250\u2251\u0007T\u0002\u0002\u2251\u2252\u0007V\u0002\u0002\u2252",
+ "\u2253\u0007a\u0002\u0002\u2253\u2254\u0007E\u0002\u0002\u2254\u2255",
+ "\u0007Q\u0002\u0002\u2255\u2256\u0007P\u0002\u0002\u2256\u2257\u0007",
+ "X\u0002\u0002\u2257\u033e\u0003\u0002\u0002\u0002\u2258\u2259\u0007",
+ "F\u0002\u0002\u2259\u225a\u0007W\u0002\u0002\u225a\u225b\u0007O\u0002",
+ "\u0002\u225b\u225c\u0007R\u0002\u0002\u225c\u0340\u0003\u0002\u0002",
+ "\u0002\u225d\u225e\u0007F\u0002\u0002\u225e\u225f\u0007W\u0002\u0002",
+ "\u225f\u2260\u0007O\u0002\u0002\u2260\u2261\u0007R\u0002\u0002\u2261",
+ "\u2262\u0007U\u0002\u0002\u2262\u2263\u0007G\u0002\u0002\u2263\u2264",
+ "\u0007V\u0002\u0002\u2264\u0342\u0003\u0002\u0002\u0002\u2265\u2266",
+ "\u0007F\u0002\u0002\u2266\u2267\u0007W\u0002\u0002\u2267\u2268\u0007",
+ "R\u0002\u0002\u2268\u2269\u0007N\u0002\u0002\u2269\u226a\u0007K\u0002",
+ "\u0002\u226a\u226b\u0007E\u0002\u0002\u226b\u226c\u0007C\u0002\u0002",
+ "\u226c\u226d\u0007V\u0002\u0002\u226d\u226e\u0007G\u0002\u0002\u226e",
+ "\u0344\u0003\u0002\u0002\u0002\u226f\u2270\u0007F\u0002\u0002\u2270",
+ "\u2271\u0007X\u0002\u0002\u2271\u0346\u0003\u0002\u0002\u0002\u2272",
+ "\u2273\u0007F\u0002\u0002\u2273\u2274\u0007[\u0002\u0002\u2274\u2275",
+ "\u0007P\u0002\u0002\u2275\u2276\u0007C\u0002\u0002\u2276\u2277\u0007",
+ "O\u0002\u0002\u2277\u2278\u0007K\u0002\u0002\u2278\u2279\u0007E\u0002",
+ "\u0002\u2279\u0348\u0003\u0002\u0002\u0002\u227a\u227b\u0007F\u0002",
+ "\u0002\u227b\u227c\u0007[\u0002\u0002\u227c\u227d\u0007P\u0002\u0002",
+ "\u227d\u227e\u0007C\u0002\u0002\u227e\u227f\u0007O\u0002\u0002\u227f",
+ "\u2280\u0007K\u0002\u0002\u2280\u2281\u0007E\u0002\u0002\u2281\u2282",
+ "\u0007a\u0002\u0002\u2282\u2283\u0007U\u0002\u0002\u2283\u2284\u0007",
+ "C\u0002\u0002\u2284\u2285\u0007O\u0002\u0002\u2285\u2286\u0007R\u0002",
+ "\u0002\u2286\u2287\u0007N\u0002\u0002\u2287\u2288\u0007K\u0002\u0002",
+ "\u2288\u2289\u0007P\u0002\u0002\u2289\u228a\u0007I\u0002\u0002\u228a",
+ "\u034a\u0003\u0002\u0002\u0002\u228b\u228c\u0007F\u0002\u0002\u228c",
+ "\u228d\u0007[\u0002\u0002\u228d\u228e\u0007P\u0002\u0002\u228e\u228f",
+ "\u0007C\u0002\u0002\u228f\u2290\u0007O\u0002\u0002\u2290\u2291\u0007",
+ "K\u0002\u0002\u2291\u2292\u0007E\u0002\u0002\u2292\u2293\u0007a\u0002",
+ "\u0002\u2293\u2294\u0007U\u0002\u0002\u2294\u2295\u0007C\u0002\u0002",
+ "\u2295\u2296\u0007O\u0002\u0002\u2296\u2297\u0007R\u0002\u0002\u2297",
+ "\u2298\u0007N\u0002\u0002\u2298\u2299\u0007K\u0002\u0002\u2299\u229a",
+ "\u0007P\u0002\u0002\u229a\u229b\u0007I\u0002\u0002\u229b\u229c\u0007",
+ "a\u0002\u0002\u229c\u229d\u0007G\u0002\u0002\u229d\u229e\u0007U\u0002",
+ "\u0002\u229e\u229f\u0007V\u0002\u0002\u229f\u22a0\u0007a\u0002\u0002",
+ "\u22a0\u22a1\u0007E\u0002\u0002\u22a1\u22a2\u0007F\u0002\u0002\u22a2",
+ "\u22a3\u0007P\u0002\u0002\u22a3\u034c\u0003\u0002\u0002\u0002\u22a4",
+ "\u22a5\u0007G\u0002\u0002\u22a5\u22a6\u0007C\u0002\u0002\u22a6\u22a7",
+ "\u0007E\u0002\u0002\u22a7\u22a8\u0007J\u0002\u0002\u22a8\u034e\u0003",
+ "\u0002\u0002\u0002\u22a9\u22aa\u0007G\u0002\u0002\u22aa\u22ab\u0007",
+ "F\u0002\u0002\u22ab\u22ac\u0007K\u0002\u0002\u22ac\u22ad\u0007V\u0002",
+ "\u0002\u22ad\u22ae\u0007K\u0002\u0002\u22ae\u22af\u0007Q\u0002\u0002",
+ "\u22af\u22b0\u0007P\u0002\u0002\u22b0\u22b1\u0007C\u0002\u0002\u22b1",
+ "\u22b2\u0007D\u0002\u0002\u22b2\u22b3\u0007N\u0002\u0002\u22b3\u22b4",
+ "\u0007G\u0002\u0002\u22b4\u0350\u0003\u0002\u0002\u0002\u22b5\u22b6",
+ "\u0007G\u0002\u0002\u22b6\u22b7\u0007F\u0002\u0002\u22b7\u22b8\u0007",
+ "K\u0002\u0002\u22b8\u22b9\u0007V\u0002\u0002\u22b9\u22ba\u0007K\u0002",
+ "\u0002\u22ba\u22bb\u0007Q\u0002\u0002\u22bb\u22bc\u0007P\u0002\u0002",
+ "\u22bc\u0352\u0003\u0002\u0002\u0002\u22bd\u22be\u0007G\u0002\u0002",
+ "\u22be\u22bf\u0007F\u0002\u0002\u22bf\u22c0\u0007K\u0002\u0002\u22c0",
+ "\u22c1\u0007V\u0002\u0002\u22c1\u22c2\u0007K\u0002\u0002\u22c2\u22c3",
+ "\u0007Q\u0002\u0002\u22c3\u22c4\u0007P\u0002\u0002\u22c4\u22c5\u0007",
+ "K\u0002\u0002\u22c5\u22c6\u0007P\u0002\u0002\u22c6\u22c7\u0007I\u0002",
+ "\u0002\u22c7\u0354\u0003\u0002\u0002\u0002\u22c8\u22c9\u0007G\u0002",
+ "\u0002\u22c9\u22ca\u0007F\u0002\u0002\u22ca\u22cb\u0007K\u0002\u0002",
+ "\u22cb\u22cc\u0007V\u0002\u0002\u22cc\u22cd\u0007K\u0002\u0002\u22cd",
+ "\u22ce\u0007Q\u0002\u0002\u22ce\u22cf\u0007P\u0002\u0002\u22cf\u22d0",
+ "\u0007U\u0002\u0002\u22d0\u0356\u0003\u0002\u0002\u0002\u22d1\u22d2",
+ "\u0007G\u0002\u0002\u22d2\u22d3\u0007N\u0002\u0002\u22d3\u22d4\u0007",
+ "G\u0002\u0002\u22d4\u22d5\u0007O\u0002\u0002\u22d5\u22d6\u0007G\u0002",
+ "\u0002\u22d6\u22d7\u0007P\u0002\u0002\u22d7\u22d8\u0007V\u0002\u0002",
+ "\u22d8\u0358\u0003\u0002\u0002\u0002\u22d9\u22da\u0007G\u0002\u0002",
+ "\u22da\u22db\u0007N\u0002\u0002\u22db\u22dc\u0007K\u0002\u0002\u22dc",
+ "\u22dd\u0007O\u0002\u0002\u22dd\u22de\u0007a\u0002\u0002\u22de\u22df",
+ "\u0007I\u0002\u0002\u22df\u22e0\u0007T\u0002\u0002\u22e0\u22e1\u0007",
+ "Q\u0002\u0002\u22e1\u22e2\u0007W\u0002\u0002\u22e2\u22e3\u0007R\u0002",
+ "\u0002\u22e3\u22e4\u0007D\u0002\u0002\u22e4\u22e5\u0007[\u0002\u0002",
+ "\u22e5\u035a\u0003\u0002\u0002\u0002\u22e6\u22e7\u0007G\u0002\u0002",
+ "\u22e7\u22e8\u0007N\u0002\u0002\u22e8\u22e9\u0007K\u0002\u0002\u22e9",
+ "\u22ea\u0007O\u0002\u0002\u22ea\u22eb\u0007K\u0002\u0002\u22eb\u22ec",
+ "\u0007P\u0002\u0002\u22ec\u22ed\u0007C\u0002\u0002\u22ed\u22ee\u0007",
+ "V\u0002\u0002\u22ee\u22ef\u0007G\u0002\u0002\u22ef\u22f0\u0007a\u0002",
+ "\u0002\u22f0\u22f1\u0007L\u0002\u0002\u22f1\u22f2\u0007Q\u0002\u0002",
+ "\u22f2\u22f3\u0007K\u0002\u0002\u22f3\u22f4\u0007P\u0002\u0002\u22f4",
+ "\u035c\u0003\u0002\u0002\u0002\u22f5\u22f6\u0007G\u0002\u0002\u22f6",
+ "\u22f7\u0007N\u0002\u0002\u22f7\u22f8\u0007K\u0002\u0002\u22f8\u22f9",
+ "\u0007O\u0002\u0002\u22f9\u22fa\u0007K\u0002\u0002\u22fa\u22fb\u0007",
+ "P\u0002\u0002\u22fb\u22fc\u0007C\u0002\u0002\u22fc\u22fd\u0007V\u0002",
+ "\u0002\u22fd\u22fe\u0007G\u0002\u0002\u22fe\u22ff\u0007a\u0002\u0002",
+ "\u22ff\u2300\u0007Q\u0002\u0002\u2300\u2301\u0007D\u0002\u0002\u2301",
+ "\u2302\u0007[\u0002\u0002\u2302\u035e\u0003\u0002\u0002\u0002\u2303",
+ "\u2304\u0007G\u0002\u0002\u2304\u2305\u0007N\u0002\u0002\u2305\u2306",
+ "\u0007K\u0002\u0002\u2306\u2307\u0007O\u0002\u0002\u2307\u2308\u0007",
+ "K\u0002\u0002\u2308\u2309\u0007P\u0002\u0002\u2309\u230a\u0007C\u0002",
+ "\u0002\u230a\u230b\u0007V\u0002\u0002\u230b\u230c\u0007G\u0002\u0002",
+ "\u230c\u230d\u0007a\u0002\u0002\u230d\u230e\u0007Q\u0002\u0002\u230e",
+ "\u230f\u0007W\u0002\u0002\u230f\u2310\u0007V\u0002\u0002\u2310\u2311",
+ "\u0007G\u0002\u0002\u2311\u2312\u0007T\u0002\u0002\u2312\u2313\u0007",
+ "a\u0002\u0002\u2313\u2314\u0007L\u0002\u0002\u2314\u2315\u0007Q\u0002",
+ "\u0002\u2315\u2316\u0007K\u0002\u0002\u2316\u2317\u0007P\u0002\u0002",
+ "\u2317\u0360\u0003\u0002\u0002\u0002\u2318\u2319\u0007G\u0002\u0002",
+ "\u2319\u231a\u0007N\u0002\u0002\u231a\u231b\u0007U\u0002\u0002\u231b",
+ "\u231c\u0007G\u0002\u0002\u231c\u0362\u0003\u0002\u0002\u0002\u231d",
+ "\u231e\u0007G\u0002\u0002\u231e\u231f\u0007N\u0002\u0002\u231f\u2320",
+ "\u0007U\u0002\u0002\u2320\u2321\u0007K\u0002\u0002\u2321\u2322\u0007",
+ "H\u0002\u0002\u2322\u0364\u0003\u0002\u0002\u0002\u2323\u2324\u0007",
+ "G\u0002\u0002\u2324\u2325\u0007O\u0002\u0002\u2325\u0366\u0003\u0002",
+ "\u0002\u0002\u2326\u2327\u0007G\u0002\u0002\u2327\u2328\u0007O\u0002",
+ "\u0002\u2328\u2329\u0007R\u0002\u0002\u2329\u232a\u0007V\u0002\u0002",
+ "\u232a\u232b\u0007[\u0002\u0002\u232b\u232c\u0007a\u0002\u0002\u232c",
+ "\u232d\u0007D\u0002\u0002\u232d\u232e\u0007N\u0002\u0002\u232e\u232f",
+ "\u0007Q\u0002\u0002\u232f\u2330\u0007D\u0002\u0002\u2330\u0368\u0003",
+ "\u0002\u0002\u0002\u2331\u2332\u0007G\u0002\u0002\u2332\u2333\u0007",
+ "O\u0002\u0002\u2333\u2334\u0007R\u0002\u0002\u2334\u2335\u0007V\u0002",
+ "\u0002\u2335\u2336\u0007[\u0002\u0002\u2336\u2337\u0007a\u0002\u0002",
+ "\u2337\u2338\u0007E\u0002\u0002\u2338\u2339\u0007N\u0002\u0002\u2339",
+ "\u233a\u0007Q\u0002\u0002\u233a\u233b\u0007D\u0002\u0002\u233b\u036a",
+ "\u0003\u0002\u0002\u0002\u233c\u233d\u0007G\u0002\u0002\u233d\u233e",
+ "\u0007O\u0002\u0002\u233e\u233f\u0007R\u0002\u0002\u233f\u2340\u0007",
+ "V\u0002\u0002\u2340\u2341\u0007[\u0002\u0002\u2341\u036c\u0003\u0002",
+ "\u0002\u0002\u2342\u2343\u0007G\u0002\u0002\u2343\u2344\u0007P\u0002",
+ "\u0002\u2344\u2345\u0007C\u0002\u0002\u2345\u2346\u0007D\u0002\u0002",
+ "\u2346\u2347\u0007N\u0002\u0002\u2347\u2348\u0007G\u0002\u0002\u2348",
+ "\u2349\u0007a\u0002\u0002\u2349\u234a\u0007C\u0002\u0002\u234a\u234b",
+ "\u0007N\u0002\u0002\u234b\u234c\u0007N\u0002\u0002\u234c\u036e\u0003",
+ "\u0002\u0002\u0002\u234d\u234e\u0007G\u0002\u0002\u234e\u234f\u0007",
+ "P\u0002\u0002\u234f\u2350\u0007C\u0002\u0002\u2350\u2351\u0007D\u0002",
+ "\u0002\u2351\u2352\u0007N\u0002\u0002\u2352\u2353\u0007G\u0002\u0002",
+ "\u2353\u0370\u0003\u0002\u0002\u0002\u2354\u2355\u0007G\u0002\u0002",
+ "\u2355\u2356\u0007P\u0002\u0002\u2356\u2357\u0007C\u0002\u0002\u2357",
+ "\u2358\u0007D\u0002\u0002\u2358\u2359\u0007N\u0002\u0002\u2359\u235a",
+ "\u0007G\u0002\u0002\u235a\u235b\u0007a\u0002\u0002\u235b\u235c\u0007",
+ "R\u0002\u0002\u235c\u235d\u0007C\u0002\u0002\u235d\u235e\u0007T\u0002",
+ "\u0002\u235e\u235f\u0007C\u0002\u0002\u235f\u2360\u0007N\u0002\u0002",
+ "\u2360\u2361\u0007N\u0002\u0002\u2361\u2362\u0007G\u0002\u0002\u2362",
+ "\u2363\u0007N\u0002\u0002\u2363\u2364\u0007a\u0002\u0002\u2364\u2365",
+ "\u0007F\u0002\u0002\u2365\u2366\u0007O\u0002\u0002\u2366\u2367\u0007",
+ "N\u0002\u0002\u2367\u0372\u0003\u0002\u0002\u0002\u2368\u2369\u0007",
+ "G\u0002\u0002\u2369\u236a\u0007P\u0002\u0002\u236a\u236b\u0007C\u0002",
+ "\u0002\u236b\u236c\u0007D\u0002\u0002\u236c\u236d\u0007N\u0002\u0002",
+ "\u236d\u236e\u0007G\u0002\u0002\u236e\u236f\u0007a\u0002\u0002\u236f",
+ "\u2370\u0007R\u0002\u0002\u2370\u2371\u0007T\u0002\u0002\u2371\u2372",
+ "\u0007G\u0002\u0002\u2372\u2373\u0007U\u0002\u0002\u2373\u2374\u0007",
+ "G\u0002\u0002\u2374\u2375\u0007V\u0002\u0002\u2375\u0374\u0003\u0002",
+ "\u0002\u0002\u2376\u2377\u0007G\u0002\u0002\u2377\u2378\u0007P\u0002",
+ "\u0002\u2378\u2379\u0007E\u0002\u0002\u2379\u237a\u0007Q\u0002\u0002",
+ "\u237a\u237b\u0007F\u0002\u0002\u237b\u237c\u0007K\u0002\u0002\u237c",
+ "\u237d\u0007P\u0002\u0002\u237d\u237e\u0007I\u0002\u0002\u237e\u0376",
+ "\u0003\u0002\u0002\u0002\u237f\u2380\u0007G\u0002\u0002\u2380\u2381",
+ "\u0007P\u0002\u0002\u2381\u2382\u0007E\u0002\u0002\u2382\u2383\u0007",
+ "T\u0002\u0002\u2383\u2384\u0007[\u0002\u0002\u2384\u2385\u0007R\u0002",
+ "\u0002\u2385\u2386\u0007V\u0002\u0002\u2386\u0378\u0003\u0002\u0002",
+ "\u0002\u2387\u2388\u0007G\u0002\u0002\u2388\u2389\u0007P\u0002\u0002",
+ "\u2389\u238a\u0007E\u0002\u0002\u238a\u238b\u0007T\u0002\u0002\u238b",
+ "\u238c\u0007[\u0002\u0002\u238c\u238d\u0007R\u0002\u0002\u238d\u238e",
+ "\u0007V\u0002\u0002\u238e\u238f\u0007K\u0002\u0002\u238f\u2390\u0007",
+ "Q\u0002\u0002\u2390\u2391\u0007P\u0002\u0002\u2391\u037a\u0003\u0002",
+ "\u0002\u0002\u2392\u2393\u0007G\u0002\u0002\u2393\u2394\u0007P\u0002",
+ "\u0002\u2394\u2395\u0007F\u0002\u0002\u2395\u037c\u0003\u0002\u0002",
+ "\u0002\u2396\u2397\u0007G\u0002\u0002\u2397\u2398\u0007P\u0002\u0002",
+ "\u2398\u2399\u0007F\u0002\u0002\u2399\u239a\u0007a\u0002\u0002\u239a",
+ "\u239b\u0007Q\u0002\u0002\u239b\u239c\u0007W\u0002\u0002\u239c\u239d",
+ "\u0007V\u0002\u0002\u239d\u239e\u0007N\u0002\u0002\u239e\u239f\u0007",
+ "K\u0002\u0002\u239f\u23a0\u0007P\u0002\u0002\u23a0\u23a1\u0007G\u0002",
+ "\u0002\u23a1\u23a2\u0007a\u0002\u0002\u23a2\u23a3\u0007F\u0002\u0002",
+ "\u23a3\u23a4\u0007C\u0002\u0002\u23a4\u23a5\u0007V\u0002\u0002\u23a5",
+ "\u23a6\u0007C\u0002\u0002\u23a6\u037e\u0003\u0002\u0002\u0002\u23a7",
+ "\u23a8\u0007G\u0002\u0002\u23a8\u23a9\u0007P\u0002\u0002\u23a9\u23aa",
+ "\u0007H\u0002\u0002\u23aa\u23ab\u0007Q\u0002\u0002\u23ab\u23ac\u0007",
+ "T\u0002\u0002\u23ac\u23ad\u0007E\u0002\u0002\u23ad\u23ae\u0007G\u0002",
+ "\u0002\u23ae\u23af\u0007F\u0002\u0002\u23af\u0380\u0003\u0002\u0002",
+ "\u0002\u23b0\u23b1\u0007G\u0002\u0002\u23b1\u23b2\u0007P\u0002\u0002",
+ "\u23b2\u23b3\u0007H\u0002\u0002\u23b3\u23b4\u0007Q\u0002\u0002\u23b4",
+ "\u23b5\u0007T\u0002\u0002\u23b5\u23b6\u0007E\u0002\u0002\u23b6\u23b7",
+ "\u0007G\u0002\u0002\u23b7\u0382\u0003\u0002\u0002\u0002\u23b8\u23b9",
+ "\u0007G\u0002\u0002\u23b9\u23ba\u0007P\u0002\u0002\u23ba\u23bb\u0007",
+ "S\u0002\u0002\u23bb\u23bc\u0007W\u0002\u0002\u23bc\u23bd\u0007G\u0002",
+ "\u0002\u23bd\u23be\u0007W\u0002\u0002\u23be\u23bf\u0007G\u0002\u0002",
+ "\u23bf\u0384\u0003\u0002\u0002\u0002\u23c0\u23c1\u0007G\u0002\u0002",
+ "\u23c1\u23c2\u0007P\u0002\u0002\u23c2\u23c3\u0007V\u0002\u0002\u23c3",
+ "\u23c4\u0007G\u0002\u0002\u23c4\u23c5\u0007T\u0002\u0002\u23c5\u23c6",
+ "\u0007R\u0002\u0002\u23c6\u23c7\u0007T\u0002\u0002\u23c7\u23c8\u0007",
+ "K\u0002\u0002\u23c8\u23c9\u0007U\u0002\u0002\u23c9\u23ca\u0007G\u0002",
+ "\u0002\u23ca\u0386\u0003\u0002\u0002\u0002\u23cb\u23cc\u0007G\u0002",
+ "\u0002\u23cc\u23cd\u0007P\u0002\u0002\u23cd\u23ce\u0007V\u0002\u0002",
+ "\u23ce\u23cf\u0007K\u0002\u0002\u23cf\u23d0\u0007V\u0002\u0002\u23d0",
+ "\u23d1\u0007[\u0002\u0002\u23d1\u23d2\u0007G\u0002\u0002\u23d2\u23d3",
+ "\u0007U\u0002\u0002\u23d3\u23d4\u0007E\u0002\u0002\u23d4\u23d5\u0007",
+ "C\u0002\u0002\u23d5\u23d6\u0007R\u0002\u0002\u23d6\u23d7\u0007K\u0002",
+ "\u0002\u23d7\u23d8\u0007P\u0002\u0002\u23d8\u23d9\u0007I\u0002\u0002",
+ "\u23d9\u0388\u0003\u0002\u0002\u0002\u23da\u23db\u0007G\u0002\u0002",
+ "\u23db\u23dc\u0007P\u0002\u0002\u23dc\u23dd\u0007V\u0002\u0002\u23dd",
+ "\u23de\u0007T\u0002\u0002\u23de\u23df\u0007[\u0002\u0002\u23df\u038a",
+ "\u0003\u0002\u0002\u0002\u23e0\u23e1\u0007G\u0002\u0002\u23e1\u23e2",
+ "\u0007S\u0002\u0002\u23e2\u23e3\u0007W\u0002\u0002\u23e3\u23e4\u0007",
+ "K\u0002\u0002\u23e4\u23e5\u0007R\u0002\u0002\u23e5\u23e6\u0007C\u0002",
+ "\u0002\u23e6\u23e7\u0007T\u0002\u0002\u23e7\u23e8\u0007V\u0002\u0002",
+ "\u23e8\u038c\u0003\u0002\u0002\u0002\u23e9\u23ea\u0007G\u0002\u0002",
+ "\u23ea\u23eb\u0007T\u0002\u0002\u23eb\u23ec\u0007T\u0002\u0002\u23ec",
+ "\u038e\u0003\u0002\u0002\u0002\u23ed\u23ee\u0007G\u0002\u0002\u23ee",
+ "\u23ef\u0007T\u0002\u0002\u23ef\u23f0\u0007T\u0002\u0002\u23f0\u23f1",
+ "\u0007Q\u0002\u0002\u23f1\u23f2\u0007T\u0002\u0002\u23f2\u23f3\u0007",
+ "a\u0002\u0002\u23f3\u23f4\u0007C\u0002\u0002\u23f4\u23f5\u0007T\u0002",
+ "\u0002\u23f5\u23f6\u0007I\u0002\u0002\u23f6\u23f7\u0007W\u0002\u0002",
+ "\u23f7\u23f8\u0007O\u0002\u0002\u23f8\u23f9\u0007G\u0002\u0002\u23f9",
+ "\u23fa\u0007P\u0002\u0002\u23fa\u23fb\u0007V\u0002\u0002\u23fb\u0390",
+ "\u0003\u0002\u0002\u0002\u23fc\u23fd\u0007G\u0002\u0002\u23fd\u23fe",
+ "\u0007T\u0002\u0002\u23fe\u23ff\u0007T\u0002\u0002\u23ff\u2400\u0007",
+ "Q\u0002\u0002\u2400\u2401\u0007T\u0002\u0002\u2401\u0392\u0003\u0002",
+ "\u0002\u0002\u2402\u2403\u0007G\u0002\u0002\u2403\u2404\u0007T\u0002",
+ "\u0002\u2404\u2405\u0007T\u0002\u0002\u2405\u2406\u0007Q\u0002\u0002",
+ "\u2406\u2407\u0007T\u0002\u0002\u2407\u2408\u0007a\u0002\u0002\u2408",
+ "\u2409\u0007Q\u0002\u0002\u2409\u240a\u0007P\u0002\u0002\u240a\u240b",
+ "\u0007a\u0002\u0002\u240b\u240c\u0007Q\u0002\u0002\u240c\u240d\u0007",
+ "X\u0002\u0002\u240d\u240e\u0007G\u0002\u0002\u240e\u240f\u0007T\u0002",
+ "\u0002\u240f\u2410\u0007N\u0002\u0002\u2410\u2411\u0007C\u0002\u0002",
+ "\u2411\u2412\u0007R\u0002\u0002\u2412\u2413\u0007a\u0002\u0002\u2413",
+ "\u2414\u0007V\u0002\u0002\u2414\u2415\u0007K\u0002\u0002\u2415\u2416",
+ "\u0007O\u0002\u0002\u2416\u2417\u0007G\u0002\u0002\u2417\u0394\u0003",
+ "\u0002\u0002\u0002\u2418\u2419\u0007G\u0002\u0002\u2419\u241a\u0007",
+ "T\u0002\u0002\u241a\u241b\u0007T\u0002\u0002\u241b\u241c\u0007Q\u0002",
+ "\u0002\u241c\u241d\u0007T\u0002\u0002\u241d\u241e\u0007U\u0002\u0002",
+ "\u241e\u0396\u0003\u0002\u0002\u0002\u241f\u2420\u0007G\u0002\u0002",
+ "\u2420\u2421\u0007U\u0002\u0002\u2421\u2422\u0007E\u0002\u0002\u2422",
+ "\u2423\u0007C\u0002\u0002\u2423\u2424\u0007R\u0002\u0002\u2424\u2425",
+ "\u0007G\u0002\u0002\u2425\u0398\u0003\u0002\u0002\u0002\u2426\u2427",
+ "\u0007G\u0002\u0002\u2427\u2428\u0007U\u0002\u0002\u2428\u2429\u0007",
+ "V\u0002\u0002\u2429\u242a\u0007K\u0002\u0002\u242a\u242b\u0007O\u0002",
+ "\u0002\u242b\u242c\u0007C\u0002\u0002\u242c\u242d\u0007V\u0002\u0002",
+ "\u242d\u242e\u0007G\u0002\u0002\u242e\u039a\u0003\u0002\u0002\u0002",
+ "\u242f\u2430\u0007G\u0002\u0002\u2430\u2431\u0007X\u0002\u0002\u2431",
+ "\u2432\u0007C\u0002\u0002\u2432\u2433\u0007N\u0002\u0002\u2433\u039c",
+ "\u0003\u0002\u0002\u0002\u2434\u2435\u0007G\u0002\u0002\u2435\u2436",
+ "\u0007X\u0002\u0002\u2436\u2437\u0007C\u0002\u0002\u2437\u2438\u0007",
+ "N\u0002\u0002\u2438\u2439\u0007P\u0002\u0002\u2439\u243a\u0007C\u0002",
+ "\u0002\u243a\u243b\u0007O\u0002\u0002\u243b\u243c\u0007G\u0002\u0002",
+ "\u243c\u039e\u0003\u0002\u0002\u0002\u243d\u243e\u0007G\u0002\u0002",
+ "\u243e\u243f\u0007X\u0002\u0002\u243f\u2440\u0007C\u0002\u0002\u2440",
+ "\u2441\u0007N\u0002\u0002\u2441\u2442\u0007W\u0002\u0002\u2442\u2443",
+ "\u0007C\u0002\u0002\u2443\u2444\u0007V\u0002\u0002\u2444\u2445\u0007",
+ "G\u0002\u0002\u2445\u03a0\u0003\u0002\u0002\u0002\u2446\u2447\u0007",
+ "G\u0002\u0002\u2447\u2448\u0007X\u0002\u0002\u2448\u2449\u0007C\u0002",
+ "\u0002\u2449\u244a\u0007N\u0002\u0002\u244a\u244b\u0007W\u0002\u0002",
+ "\u244b\u244c\u0007C\u0002\u0002\u244c\u244d\u0007V\u0002\u0002\u244d",
+ "\u244e\u0007K\u0002\u0002\u244e\u244f\u0007Q\u0002\u0002\u244f\u2450",
+ "\u0007P\u0002\u0002\u2450\u03a2\u0003\u0002\u0002\u0002\u2451\u2452",
+ "\u0007G\u0002\u0002\u2452\u2453\u0007X\u0002\u0002\u2453\u2454\u0007",
+ "G\u0002\u0002\u2454\u2455\u0007P\u0002\u0002\u2455\u2456\u0007V\u0002",
+ "\u0002\u2456\u2457\u0007U\u0002\u0002\u2457\u03a4\u0003\u0002\u0002",
+ "\u0002\u2458\u2459\u0007G\u0002\u0002\u2459\u245a\u0007X\u0002\u0002",
+ "\u245a\u245b\u0007G\u0002\u0002\u245b\u245c\u0007T\u0002\u0002\u245c",
+ "\u245d\u0007[\u0002\u0002\u245d\u03a6\u0003\u0002\u0002\u0002\u245e",
+ "\u245f\u0007G\u0002\u0002\u245f\u2460\u0007Z\u0002\u0002\u2460\u2461",
+ "\u0007E\u0002\u0002\u2461\u2462\u0007G\u0002\u0002\u2462\u2463\u0007",
+ "R\u0002\u0002\u2463\u2464\u0007V\u0002\u0002\u2464\u03a8\u0003\u0002",
+ "\u0002\u0002\u2465\u2466\u0007G\u0002\u0002\u2466\u2467\u0007Z\u0002",
+ "\u0002\u2467\u2468\u0007E\u0002\u0002\u2468\u2469\u0007G\u0002\u0002",
+ "\u2469\u246a\u0007R\u0002\u0002\u246a\u246b\u0007V\u0002\u0002\u246b",
+ "\u246c\u0007K\u0002\u0002\u246c\u246d\u0007Q\u0002\u0002\u246d\u246e",
+ "\u0007P\u0002\u0002\u246e\u03aa\u0003\u0002\u0002\u0002\u246f\u2470",
+ "\u0007G\u0002\u0002\u2470\u2471\u0007Z\u0002\u0002\u2471\u2472\u0007",
+ "E\u0002\u0002\u2472\u2473\u0007G\u0002\u0002\u2473\u2474\u0007R\u0002",
+ "\u0002\u2474\u2475\u0007V\u0002\u0002\u2475\u2476\u0007K\u0002\u0002",
+ "\u2476\u2477\u0007Q\u0002\u0002\u2477\u2478\u0007P\u0002\u0002\u2478",
+ "\u2479\u0007a\u0002\u0002\u2479\u247a\u0007K\u0002\u0002\u247a\u247b",
+ "\u0007P\u0002\u0002\u247b\u247c\u0007K\u0002\u0002\u247c\u247d\u0007",
+ "V\u0002\u0002\u247d\u03ac\u0003\u0002\u0002\u0002\u247e\u247f\u0007",
+ "G\u0002\u0002\u247f\u2480\u0007Z\u0002\u0002\u2480\u2481\u0007E\u0002",
+ "\u0002\u2481\u2482\u0007G\u0002\u0002\u2482\u2483\u0007R\u0002\u0002",
+ "\u2483\u2484\u0007V\u0002\u0002\u2484\u2485\u0007K\u0002\u0002\u2485",
+ "\u2486\u0007Q\u0002\u0002\u2486\u2487\u0007P\u0002\u0002\u2487\u2488",
+ "\u0007U\u0002\u0002\u2488\u03ae\u0003\u0002\u0002\u0002\u2489\u248a",
+ "\u0007G\u0002\u0002\u248a\u248b\u0007Z\u0002\u0002\u248b\u248c\u0007",
+ "E\u0002\u0002\u248c\u248d\u0007J\u0002\u0002\u248d\u248e\u0007C\u0002",
+ "\u0002\u248e\u248f\u0007P\u0002\u0002\u248f\u2490\u0007I\u0002\u0002",
+ "\u2490\u2491\u0007G\u0002\u0002\u2491\u03b0\u0003\u0002\u0002\u0002",
+ "\u2492\u2493\u0007G\u0002\u0002\u2493\u2494\u0007Z\u0002\u0002\u2494",
+ "\u2495\u0007E\u0002\u0002\u2495\u2496\u0007N\u0002\u0002\u2496\u2497",
+ "\u0007W\u0002\u0002\u2497\u2498\u0007F\u0002\u0002\u2498\u2499\u0007",
+ "G\u0002\u0002\u2499\u03b2\u0003\u0002\u0002\u0002\u249a\u249b\u0007",
+ "G\u0002\u0002\u249b\u249c\u0007Z\u0002\u0002\u249c\u249d\u0007E\u0002",
+ "\u0002\u249d\u249e\u0007N\u0002\u0002\u249e\u249f\u0007W\u0002\u0002",
+ "\u249f\u24a0\u0007F\u0002\u0002\u24a0\u24a1\u0007K\u0002\u0002\u24a1",
+ "\u24a2\u0007P\u0002\u0002\u24a2\u24a3\u0007I\u0002\u0002\u24a3\u03b4",
+ "\u0003\u0002\u0002\u0002\u24a4\u24a5\u0007G\u0002\u0002\u24a5\u24a6",
+ "\u0007Z\u0002\u0002\u24a6\u24a7\u0007E\u0002\u0002\u24a7\u24a8\u0007",
+ "N\u0002\u0002\u24a8\u24a9\u0007W\u0002\u0002\u24a9\u24aa\u0007U\u0002",
+ "\u0002\u24aa\u24ab\u0007K\u0002\u0002\u24ab\u24ac\u0007X\u0002\u0002",
+ "\u24ac\u24ad\u0007G\u0002\u0002\u24ad\u03b6\u0003\u0002\u0002\u0002",
+ "\u24ae\u24af\u0007G\u0002\u0002\u24af\u24b0\u0007Z\u0002\u0002\u24b0",
+ "\u24b1\u0007G\u0002\u0002\u24b1\u24b2\u0007E\u0002\u0002\u24b2\u24b3",
+ "\u0007W\u0002\u0002\u24b3\u24b4\u0007V\u0002\u0002\u24b4\u24b5\u0007",
+ "G\u0002\u0002\u24b5\u03b8\u0003\u0002\u0002\u0002\u24b6\u24b7\u0007",
+ "G\u0002\u0002\u24b7\u24b8\u0007Z\u0002\u0002\u24b8\u24b9\u0007G\u0002",
+ "\u0002\u24b9\u24ba\u0007O\u0002\u0002\u24ba\u24bb\u0007R\u0002\u0002",
+ "\u24bb\u24bc\u0007V\u0002\u0002\u24bc\u03ba\u0003\u0002\u0002\u0002",
+ "\u24bd\u24be\u0007G\u0002\u0002\u24be\u24bf\u0007Z\u0002\u0002\u24bf",
+ "\u24c0\u0007K\u0002\u0002\u24c0\u24c1\u0007U\u0002\u0002\u24c1\u24c2",
+ "\u0007V\u0002\u0002\u24c2\u24c3\u0007K\u0002\u0002\u24c3\u24c4\u0007",
+ "P\u0002\u0002\u24c4\u24c5\u0007I\u0002\u0002\u24c5\u03bc\u0003\u0002",
+ "\u0002\u0002\u24c6\u24c7\u0007G\u0002\u0002\u24c7\u24c8\u0007Z\u0002",
+ "\u0002\u24c8\u24c9\u0007K\u0002\u0002\u24c9\u24ca\u0007U\u0002\u0002",
+ "\u24ca\u24cb\u0007V\u0002\u0002\u24cb\u24cc\u0007U\u0002\u0002\u24cc",
+ "\u03be\u0003\u0002\u0002\u0002\u24cd\u24ce\u0007G\u0002\u0002\u24ce",
+ "\u24cf\u0007Z\u0002\u0002\u24cf\u24d0\u0007K\u0002\u0002\u24d0\u24d1",
+ "\u0007U\u0002\u0002\u24d1\u24d2\u0007V\u0002\u0002\u24d2\u24d3\u0007",
+ "U\u0002\u0002\u24d3\u24d4\u0007P\u0002\u0002\u24d4\u24d5\u0007Q\u0002",
+ "\u0002\u24d5\u24d6\u0007F\u0002\u0002\u24d6\u24d7\u0007G\u0002\u0002",
+ "\u24d7\u03c0\u0003\u0002\u0002\u0002\u24d8\u24d9\u0007G\u0002\u0002",
+ "\u24d9\u24da\u0007Z\u0002\u0002\u24da\u24db\u0007K\u0002\u0002\u24db",
+ "\u24dc\u0007V\u0002\u0002\u24dc\u03c2\u0003\u0002\u0002\u0002\u24dd",
+ "\u24de\u0007G\u0002\u0002\u24de\u24df\u0007Z\u0002\u0002\u24df\u24e0",
+ "\u0007R\u0002\u0002\u24e0\u24e1\u0007C\u0002\u0002\u24e1\u24e2\u0007",
+ "P\u0002\u0002\u24e2\u24e3\u0007F\u0002\u0002\u24e3\u24e4\u0007a\u0002",
+ "\u0002\u24e4\u24e5\u0007I\u0002\u0002\u24e5\u24e6\u0007U\u0002\u0002",
+ "\u24e6\u24e7\u0007G\u0002\u0002\u24e7\u24e8\u0007V\u0002\u0002\u24e8",
+ "\u24e9\u0007a\u0002\u0002\u24e9\u24ea\u0007V\u0002\u0002\u24ea\u24eb",
+ "\u0007Q\u0002\u0002\u24eb\u24ec\u0007a\u0002\u0002\u24ec\u24ed\u0007",
+ "W\u0002\u0002\u24ed\u24ee\u0007P\u0002\u0002\u24ee\u24ef\u0007K\u0002",
+ "\u0002\u24ef\u24f0\u0007Q\u0002\u0002\u24f0\u24f1\u0007P\u0002\u0002",
+ "\u24f1\u03c4\u0003\u0002\u0002\u0002\u24f2\u24f3\u0007G\u0002\u0002",
+ "\u24f3\u24f4\u0007Z\u0002\u0002\u24f4\u24f5\u0007R\u0002\u0002\u24f5",
+ "\u24f6\u0007C\u0002\u0002\u24f6\u24f7\u0007P\u0002\u0002\u24f7\u24f8",
+ "\u0007F\u0002\u0002\u24f8\u24f9\u0007a\u0002\u0002\u24f9\u24fa\u0007",
+ "V\u0002\u0002\u24fa\u24fb\u0007C\u0002\u0002\u24fb\u24fc\u0007D\u0002",
+ "\u0002\u24fc\u24fd\u0007N\u0002\u0002\u24fd\u24fe\u0007G\u0002\u0002",
+ "\u24fe\u03c6\u0003\u0002\u0002\u0002\u24ff\u2500\u0007G\u0002\u0002",
+ "\u2500\u2501\u0007Z\u0002\u0002\u2501\u2502\u0007R\u0002\u0002\u2502",
+ "\u03c8\u0003\u0002\u0002\u0002\u2503\u2504\u0007G\u0002\u0002\u2504",
+ "\u2505\u0007Z\u0002\u0002\u2505\u2506\u0007R\u0002\u0002\u2506\u2507",
+ "\u0007K\u0002\u0002\u2507\u2508\u0007T\u0002\u0002\u2508\u2509\u0007",
+ "G\u0002\u0002\u2509\u03ca\u0003\u0002\u0002\u0002\u250a\u250b\u0007",
+ "G\u0002\u0002\u250b\u250c\u0007Z\u0002\u0002\u250c\u250d\u0007R\u0002",
+ "\u0002\u250d\u250e\u0007N\u0002\u0002\u250e\u250f\u0007C\u0002\u0002",
+ "\u250f\u2510\u0007K\u0002\u0002\u2510\u2511\u0007P\u0002\u0002\u2511",
+ "\u03cc\u0003\u0002\u0002\u0002\u2512\u2513\u0007G\u0002\u0002\u2513",
+ "\u2514\u0007Z\u0002\u0002\u2514\u2515\u0007R\u0002\u0002\u2515\u2516",
+ "\u0007N\u0002\u0002\u2516\u2517\u0007Q\u0002\u0002\u2517\u2518\u0007",
+ "U\u0002\u0002\u2518\u2519\u0007K\u0002\u0002\u2519\u251a\u0007Q\u0002",
+ "\u0002\u251a\u251b\u0007P\u0002\u0002\u251b\u03ce\u0003\u0002\u0002",
+ "\u0002\u251c\u251d\u0007G\u0002\u0002\u251d\u251e\u0007Z\u0002\u0002",
+ "\u251e\u251f\u0007R\u0002\u0002\u251f\u2520\u0007Q\u0002\u0002\u2520",
+ "\u2521\u0007T\u0002\u0002\u2521\u2522\u0007V\u0002\u0002\u2522\u03d0",
+ "\u0003\u0002\u0002\u0002\u2523\u2524\u0007G\u0002\u0002\u2524\u2525",
+ "\u0007Z\u0002\u0002\u2525\u2526\u0007R\u0002\u0002\u2526\u2527\u0007",
+ "T\u0002\u0002\u2527\u2528\u0007a\u0002\u0002\u2528\u2529\u0007E\u0002",
+ "\u0002\u2529\u252a\u0007Q\u0002\u0002\u252a\u252b\u0007T\u0002\u0002",
+ "\u252b\u252c\u0007T\u0002\u0002\u252c\u252d\u0007a\u0002\u0002\u252d",
+ "\u252e\u0007E\u0002\u0002\u252e\u252f\u0007J\u0002\u0002\u252f\u2530",
+ "\u0007G\u0002\u0002\u2530\u2531\u0007E\u0002\u0002\u2531\u2532\u0007",
+ "M\u0002\u0002\u2532\u03d2\u0003\u0002\u0002\u0002\u2533\u2534\u0007",
+ "G\u0002\u0002\u2534\u2535\u0007Z\u0002\u0002\u2535\u2536\u0007R\u0002",
+ "\u0002\u2536\u2537\u0007T\u0002\u0002\u2537\u2538\u0007G\u0002\u0002",
+ "\u2538\u2539\u0007U\u0002\u0002\u2539\u253a\u0007U\u0002\u0002\u253a",
+ "\u03d4\u0003\u0002\u0002\u0002\u253b\u253c\u0007G\u0002\u0002\u253c",
+ "\u253d\u0007Z\u0002\u0002\u253d\u253e\u0007V\u0002\u0002\u253e\u253f",
+ "\u0007G\u0002\u0002\u253f\u2540\u0007P\u0002\u0002\u2540\u2541\u0007",
+ "F\u0002\u0002\u2541\u2542\u0007U\u0002\u0002\u2542\u03d6\u0003\u0002",
+ "\u0002\u0002\u2543\u2544\u0007G\u0002\u0002\u2544\u2545\u0007Z\u0002",
+ "\u0002\u2545\u2546\u0007V\u0002\u0002\u2546\u2547\u0007G\u0002\u0002",
+ "\u2547\u2548\u0007P\u0002\u0002\u2548\u2549\u0007V\u0002\u0002\u2549",
+ "\u03d8\u0003\u0002\u0002\u0002\u254a\u254b\u0007G\u0002\u0002\u254b",
+ "\u254c\u0007Z\u0002\u0002\u254c\u254d\u0007V\u0002\u0002\u254d\u254e",
+ "\u0007G\u0002\u0002\u254e\u254f\u0007P\u0002\u0002\u254f\u2550\u0007",
+ "V\u0002\u0002\u2550\u2551\u0007U\u0002\u0002\u2551\u03da\u0003\u0002",
+ "\u0002\u0002\u2552\u2553\u0007G\u0002\u0002\u2553\u2554\u0007Z\u0002",
+ "\u0002\u2554\u2555\u0007V\u0002\u0002\u2555\u2556\u0007G\u0002\u0002",
+ "\u2556\u2557\u0007T\u0002\u0002\u2557\u2558\u0007P\u0002\u0002\u2558",
+ "\u2559\u0007C\u0002\u0002\u2559\u255a\u0007N\u0002\u0002\u255a\u03dc",
+ "\u0003\u0002\u0002\u0002\u255b\u255c\u0007G\u0002\u0002\u255c\u255d",
+ "\u0007Z\u0002\u0002\u255d\u255e\u0007V\u0002\u0002\u255e\u255f\u0007",
+ "G\u0002\u0002\u255f\u2560\u0007T\u0002\u0002\u2560\u2561\u0007P\u0002",
+ "\u0002\u2561\u2562\u0007C\u0002\u0002\u2562\u2563\u0007N\u0002\u0002",
+ "\u2563\u2564\u0007N\u0002\u0002\u2564\u2565\u0007[\u0002\u0002\u2565",
+ "\u03de\u0003\u0002\u0002\u0002\u2566\u2567\u0007G\u0002\u0002\u2567",
+ "\u2568\u0007Z\u0002\u0002\u2568\u2569\u0007V\u0002\u0002\u2569\u256a",
+ "\u0007T\u0002\u0002\u256a\u256b\u0007C\u0002\u0002\u256b\u256c\u0007",
+ "E\u0002\u0002\u256c\u256d\u0007V\u0002\u0002\u256d\u256e\u0007E\u0002",
+ "\u0002\u256e\u256f\u0007N\u0002\u0002\u256f\u2570\u0007Q\u0002\u0002",
+ "\u2570\u2571\u0007D\u0002\u0002\u2571\u2572\u0007Z\u0002\u0002\u2572",
+ "\u2573\u0007O\u0002\u0002\u2573\u2574\u0007N\u0002\u0002\u2574\u03e0",
+ "\u0003\u0002\u0002\u0002\u2575\u2576\u0007G\u0002\u0002\u2576\u2577",
+ "\u0007Z\u0002\u0002\u2577\u2578\u0007V\u0002\u0002\u2578\u2579\u0007",
+ "T\u0002\u0002\u2579\u257a\u0007C\u0002\u0002\u257a\u257b\u0007E\u0002",
+ "\u0002\u257b\u257c\u0007V\u0002\u0002\u257c\u03e2\u0003\u0002\u0002",
+ "\u0002\u257d\u257e\u0007G\u0002\u0002\u257e\u257f\u0007Z\u0002\u0002",
+ "\u257f\u2580\u0007V\u0002\u0002\u2580\u2581\u0007T\u0002\u0002\u2581",
+ "\u2582\u0007C\u0002\u0002\u2582\u2583\u0007E\u0002\u0002\u2583\u2584",
+ "\u0007V\u0002\u0002\u2584\u2585\u0007X\u0002\u0002\u2585\u2586\u0007",
+ "C\u0002\u0002\u2586\u2587\u0007N\u0002\u0002\u2587\u2588\u0007W\u0002",
+ "\u0002\u2588\u2589\u0007G\u0002\u0002\u2589\u03e4\u0003\u0002\u0002",
+ "\u0002\u258a\u258b\u0007G\u0002\u0002\u258b\u258c\u0007Z\u0002\u0002",
+ "\u258c\u258d\u0007V\u0002\u0002\u258d\u258e\u0007T\u0002\u0002\u258e",
+ "\u258f\u0007C\u0002\u0002\u258f\u03e6\u0003\u0002\u0002\u0002\u2590",
+ "\u2591\u0007H\u0002\u0002\u2591\u2592\u0007C\u0002\u0002\u2592\u2593",
+ "\u0007E\u0002\u0002\u2593\u2594\u0007K\u0002\u0002\u2594\u2595\u0007",
+ "N\u0002\u0002\u2595\u2596\u0007K\u0002\u0002\u2596\u2597\u0007V\u0002",
+ "\u0002\u2597\u2598\u0007[\u0002\u0002\u2598\u03e8\u0003\u0002\u0002",
+ "\u0002\u2599\u259a\u0007H\u0002\u0002\u259a\u259b\u0007C\u0002\u0002",
+ "\u259b\u259c\u0007E\u0002\u0002\u259c\u259d\u0007V\u0002\u0002\u259d",
+ "\u03ea\u0003\u0002\u0002\u0002\u259e\u259f\u0007H\u0002\u0002\u259f",
+ "\u25a0\u0007C\u0002\u0002\u25a0\u25a1\u0007E\u0002\u0002\u25a1\u25a2",
+ "\u0007V\u0002\u0002\u25a2\u25a3\u0007Q\u0002\u0002\u25a3\u25a4\u0007",
+ "T\u0002\u0002\u25a4\u03ec\u0003\u0002\u0002\u0002\u25a5\u25a6\u0007",
+ "H\u0002\u0002\u25a6\u25a7\u0007C\u0002\u0002\u25a7\u25a8\u0007E\u0002",
+ "\u0002\u25a8\u25a9\u0007V\u0002\u0002\u25a9\u25aa\u0007Q\u0002\u0002",
+ "\u25aa\u25ab\u0007T\u0002\u0002\u25ab\u25ac\u0007K\u0002\u0002\u25ac",
+ "\u25ad\u0007\\\u0002\u0002\u25ad\u25ae\u0007G\u0002\u0002\u25ae\u25af",
+ "\u0007a\u0002\u0002\u25af\u25b0\u0007L\u0002\u0002\u25b0\u25b1\u0007",
+ "Q\u0002\u0002\u25b1\u25b2\u0007K\u0002\u0002\u25b2\u25b3\u0007P\u0002",
+ "\u0002\u25b3\u03ee\u0003\u0002\u0002\u0002\u25b4\u25b5\u0007H\u0002",
+ "\u0002\u25b5\u25b6\u0007C\u0002\u0002\u25b6\u25b7\u0007K\u0002\u0002",
+ "\u25b7\u25b8\u0007N\u0002\u0002\u25b8\u25b9\u0007G\u0002\u0002\u25b9",
+ "\u25ba\u0007F\u0002\u0002\u25ba\u03f0\u0003\u0002\u0002\u0002\u25bb",
+ "\u25bc\u0007H\u0002\u0002\u25bc\u25bd\u0007C\u0002\u0002\u25bd\u25be",
+ "\u0007K\u0002\u0002\u25be\u25bf\u0007N\u0002\u0002\u25bf\u25c0\u0007",
+ "G\u0002\u0002\u25c0\u25c1\u0007F\u0002\u0002\u25c1\u25c2\u0007a\u0002",
+ "\u0002\u25c2\u25c3\u0007N\u0002\u0002\u25c3\u25c4\u0007Q\u0002\u0002",
+ "\u25c4\u25c5\u0007I\u0002\u0002\u25c5\u25c6\u0007K\u0002\u0002\u25c6",
+ "\u25c7\u0007P\u0002\u0002\u25c7\u25c8\u0007a\u0002\u0002\u25c8\u25c9",
+ "\u0007C\u0002\u0002\u25c9\u25ca\u0007V\u0002\u0002\u25ca\u25cb\u0007",
+ "V\u0002\u0002\u25cb\u25cc\u0007G\u0002\u0002\u25cc\u25cd\u0007O\u0002",
+ "\u0002\u25cd\u25ce\u0007R\u0002\u0002\u25ce\u25cf\u0007V\u0002\u0002",
+ "\u25cf\u25d0\u0007U\u0002\u0002\u25d0\u03f2\u0003\u0002\u0002\u0002",
+ "\u25d1\u25d2\u0007H\u0002\u0002\u25d2\u25d3\u0007C\u0002\u0002\u25d3",
+ "\u25d4\u0007K\u0002\u0002\u25d4\u25d5\u0007N\u0002\u0002\u25d5\u25d6",
+ "\u0007I\u0002\u0002\u25d6\u25d7\u0007T\u0002\u0002\u25d7\u25d8\u0007",
+ "Q\u0002\u0002\u25d8\u25d9\u0007W\u0002\u0002\u25d9\u25da\u0007R\u0002",
+ "\u0002\u25da\u03f4\u0003\u0002\u0002\u0002\u25db\u25dc\u0007H\u0002",
+ "\u0002\u25dc\u25dd\u0007C\u0002\u0002\u25dd\u25de\u0007K\u0002\u0002",
+ "\u25de\u25df\u0007N\u0002\u0002\u25df\u25e0\u0007Q\u0002\u0002\u25e0",
+ "\u25e1\u0007X\u0002\u0002\u25e1\u25e2\u0007G\u0002\u0002\u25e2\u25e3",
+ "\u0007T\u0002\u0002\u25e3\u03f6\u0003\u0002\u0002\u0002\u25e4\u25e5",
+ "\u0007H\u0002\u0002\u25e5\u25e6\u0007C\u0002\u0002\u25e6\u25e7\u0007",
+ "K\u0002\u0002\u25e7\u25e8\u0007N\u0002\u0002\u25e8\u25e9\u0007W\u0002",
+ "\u0002\u25e9\u25ea\u0007T\u0002\u0002\u25ea\u25eb\u0007G\u0002\u0002",
+ "\u25eb\u03f8\u0003\u0002\u0002\u0002\u25ec\u25ed\u0007H\u0002\u0002",
+ "\u25ed\u25ee\u0007C\u0002\u0002\u25ee\u25ef\u0007N\u0002\u0002\u25ef",
+ "\u25f0\u0007U\u0002\u0002\u25f0\u25f1\u0007G\u0002\u0002\u25f1\u03fa",
+ "\u0003\u0002\u0002\u0002\u25f2\u25f3\u0007H\u0002\u0002\u25f3\u25f4",
+ "\u0007C\u0002\u0002\u25f4\u25f5\u0007O\u0002\u0002\u25f5\u25f6\u0007",
+ "K\u0002\u0002\u25f6\u25f7\u0007N\u0002\u0002\u25f7\u25f8\u0007[\u0002",
+ "\u0002\u25f8\u03fc\u0003\u0002\u0002\u0002\u25f9\u25fa\u0007H\u0002",
+ "\u0002\u25fa\u25fb\u0007C\u0002\u0002\u25fb\u25fc\u0007T\u0002\u0002",
+ "\u25fc\u03fe\u0003\u0002\u0002\u0002\u25fd\u25fe\u0007H\u0002\u0002",
+ "\u25fe\u25ff\u0007C\u0002\u0002\u25ff\u2600\u0007U\u0002\u0002\u2600",
+ "\u2601\u0007V\u0002\u0002\u2601\u0400\u0003\u0002\u0002\u0002\u2602",
+ "\u2603\u0007H\u0002\u0002\u2603\u2604\u0007C\u0002\u0002\u2604\u2605",
+ "\u0007U\u0002\u0002\u2605\u2606\u0007V\u0002\u0002\u2606\u2607\u0007",
+ "U\u0002\u0002\u2607\u2608\u0007V\u0002\u0002\u2608\u2609\u0007C\u0002",
+ "\u0002\u2609\u260a\u0007T\u0002\u0002\u260a\u260b\u0007V\u0002\u0002",
+ "\u260b\u0402\u0003\u0002\u0002\u0002\u260c\u260d\u0007H\u0002\u0002",
+ "\u260d\u260e\u0007D\u0002\u0002\u260e\u260f\u0007V\u0002\u0002\u260f",
+ "\u2610\u0007U\u0002\u0002\u2610\u2611\u0007E\u0002\u0002\u2611\u2612",
+ "\u0007C\u0002\u0002\u2612\u2613\u0007P\u0002\u0002\u2613\u0404\u0003",
+ "\u0002\u0002\u0002\u2614\u2615\u0007H\u0002\u0002\u2615\u2616\u0007",
+ "G\u0002\u0002\u2616\u2617\u0007C\u0002\u0002\u2617\u2618\u0007V\u0002",
+ "\u0002\u2618\u2619\u0007W\u0002\u0002\u2619\u261a\u0007T\u0002\u0002",
+ "\u261a\u261b\u0007G\u0002\u0002\u261b\u261c\u0007a\u0002\u0002\u261c",
+ "\u261d\u0007F\u0002\u0002\u261d\u261e\u0007G\u0002\u0002\u261e\u261f",
+ "\u0007V\u0002\u0002\u261f\u2620\u0007C\u0002\u0002\u2620\u2621\u0007",
+ "K\u0002\u0002\u2621\u2622\u0007N\u0002\u0002\u2622\u2623\u0007U\u0002",
+ "\u0002\u2623\u0406\u0003\u0002\u0002\u0002\u2624\u2625\u0007H\u0002",
+ "\u0002\u2625\u2626\u0007G\u0002\u0002\u2626\u2627\u0007C\u0002\u0002",
+ "\u2627\u2628\u0007V\u0002\u0002\u2628\u2629\u0007W\u0002\u0002\u2629",
+ "\u262a\u0007T\u0002\u0002\u262a\u262b\u0007G\u0002\u0002\u262b\u262c",
+ "\u0007a\u0002\u0002\u262c\u262d\u0007K\u0002\u0002\u262d\u262e\u0007",
+ "F\u0002\u0002\u262e\u0408\u0003\u0002\u0002\u0002\u262f\u2630\u0007",
+ "H\u0002\u0002\u2630\u2631\u0007G\u0002\u0002\u2631\u2632\u0007C\u0002",
+ "\u0002\u2632\u2633\u0007V\u0002\u0002\u2633\u2634\u0007W\u0002\u0002",
+ "\u2634\u2635\u0007T\u0002\u0002\u2635\u2636\u0007G\u0002\u0002\u2636",
+ "\u2637\u0007a\u0002\u0002\u2637\u2638\u0007U\u0002\u0002\u2638\u2639",
+ "\u0007G\u0002\u0002\u2639\u263a\u0007V\u0002\u0002\u263a\u040a\u0003",
+ "\u0002\u0002\u0002\u263b\u263c\u0007H\u0002\u0002\u263c\u263d\u0007",
+ "G\u0002\u0002\u263d\u263e\u0007C\u0002\u0002\u263e\u263f\u0007V\u0002",
+ "\u0002\u263f\u2640\u0007W\u0002\u0002\u2640\u2641\u0007T\u0002\u0002",
+ "\u2641\u2642\u0007G\u0002\u0002\u2642\u2643\u0007a\u0002\u0002\u2643",
+ "\u2644\u0007X\u0002\u0002\u2644\u2645\u0007C\u0002\u0002\u2645\u2646",
+ "\u0007N\u0002\u0002\u2646\u2647\u0007W\u0002\u0002\u2647\u2648\u0007",
+ "G\u0002\u0002\u2648\u040c\u0003\u0002\u0002\u0002\u2649\u264a\u0007",
+ "H\u0002\u0002\u264a\u264b\u0007G\u0002\u0002\u264b\u264c\u0007V\u0002",
+ "\u0002\u264c\u264d\u0007E\u0002\u0002\u264d\u264e\u0007J\u0002\u0002",
+ "\u264e\u040e\u0003\u0002\u0002\u0002\u264f\u2650\u0007H\u0002\u0002",
+ "\u2650\u2651\u0007K\u0002\u0002\u2651\u2652\u0007N\u0002\u0002\u2652",
+ "\u2653\u0007G\u0002\u0002\u2653\u0410\u0003\u0002\u0002\u0002\u2654",
+ "\u2655\u0007H\u0002\u0002\u2655\u2656\u0007K\u0002\u0002\u2656\u2657",
+ "\u0007N\u0002\u0002\u2657\u2658\u0007G\u0002\u0002\u2658\u2659\u0007",
+ "a\u0002\u0002\u2659\u265a\u0007P\u0002\u0002\u265a\u265b\u0007C\u0002",
+ "\u0002\u265b\u265c\u0007O\u0002\u0002\u265c\u265d\u0007G\u0002\u0002",
+ "\u265d\u265e\u0007a\u0002\u0002\u265e\u265f\u0007E\u0002\u0002\u265f",
+ "\u2660\u0007Q\u0002\u0002\u2660\u2661\u0007P\u0002\u0002\u2661\u2662",
+ "\u0007X\u0002\u0002\u2662\u2663\u0007G\u0002\u0002\u2663\u2664\u0007",
+ "T\u0002\u0002\u2664\u2665\u0007V\u0002\u0002\u2665\u0412\u0003\u0002",
+ "\u0002\u0002\u2666\u2667\u0007H\u0002\u0002\u2667\u2668\u0007K\u0002",
+ "\u0002\u2668\u2669\u0007N\u0002\u0002\u2669\u266a\u0007G\u0002\u0002",
+ "\u266a\u266b\u0007U\u0002\u0002\u266b\u266c\u0007[\u0002\u0002\u266c",
+ "\u266d\u0007U\u0002\u0002\u266d\u266e\u0007V\u0002\u0002\u266e\u266f",
+ "\u0007G\u0002\u0002\u266f\u2670\u0007O\u0002\u0002\u2670\u2671\u0007",
+ "a\u0002\u0002\u2671\u2672\u0007N\u0002\u0002\u2672\u2673\u0007K\u0002",
+ "\u0002\u2673\u2674\u0007M\u0002\u0002\u2674\u2675\u0007G\u0002\u0002",
+ "\u2675\u2676\u0007a\u0002\u0002\u2676\u2677\u0007N\u0002\u0002\u2677",
+ "\u2678\u0007Q\u0002\u0002\u2678\u2679\u0007I\u0002\u0002\u2679\u267a",
+ "\u0007I\u0002\u0002\u267a\u267b\u0007K\u0002\u0002\u267b\u267c\u0007",
+ "P\u0002\u0002\u267c\u267d\u0007I\u0002\u0002\u267d\u0414\u0003\u0002",
+ "\u0002\u0002\u267e\u267f\u0007H\u0002\u0002\u267f\u2680\u0007K\u0002",
+ "\u0002\u2680\u2681\u0007N\u0002\u0002\u2681\u2682\u0007V\u0002\u0002",
+ "\u2682\u2683\u0007G\u0002\u0002\u2683\u2684\u0007T\u0002\u0002\u2684",
+ "\u0416\u0003\u0002\u0002\u0002\u2685\u2686\u0007H\u0002\u0002\u2686",
+ "\u2687\u0007K\u0002\u0002\u2687\u2688\u0007P\u0002\u0002\u2688\u2689",
+ "\u0007C\u0002\u0002\u2689\u268a\u0007N\u0002\u0002\u268a\u0418\u0003",
+ "\u0002\u0002\u0002\u268b\u268c\u0007H\u0002\u0002\u268c\u268d\u0007",
+ "K\u0002\u0002\u268d\u268e\u0007P\u0002\u0002\u268e\u268f\u0007G\u0002",
+ "\u0002\u268f\u041a\u0003\u0002\u0002\u0002\u2690\u2691\u0007H\u0002",
+ "\u0002\u2691\u2692\u0007K\u0002\u0002\u2692\u2693\u0007P\u0002\u0002",
+ "\u2693\u2694\u0007K\u0002\u0002\u2694\u2695\u0007U\u0002\u0002\u2695",
+ "\u2696\u0007J\u0002\u0002\u2696\u041c\u0003\u0002\u0002\u0002\u2697",
+ "\u2698\u0007H\u0002\u0002\u2698\u2699\u0007K\u0002\u0002\u2699\u269a",
+ "\u0007T\u0002\u0002\u269a\u269b\u0007U\u0002\u0002\u269b\u269c\u0007",
+ "V\u0002\u0002\u269c\u041e\u0003\u0002\u0002\u0002\u269d\u269e\u0007",
+ "H\u0002\u0002\u269e\u269f\u0007K\u0002\u0002\u269f\u26a0\u0007T\u0002",
+ "\u0002\u26a0\u26a1\u0007U\u0002\u0002\u26a1\u26a2\u0007V\u0002\u0002",
+ "\u26a2\u26a3\u0007O\u0002\u0002\u26a3\u0420\u0003\u0002\u0002\u0002",
+ "\u26a4\u26a5\u0007H\u0002\u0002\u26a5\u26a6\u0007K\u0002\u0002\u26a6",
+ "\u26a7\u0007T\u0002\u0002\u26a7\u26a8\u0007U\u0002\u0002\u26a8\u26a9",
+ "\u0007V\u0002\u0002\u26a9\u26aa\u0007a\u0002\u0002\u26aa\u26ab\u0007",
+ "T\u0002\u0002\u26ab\u26ac\u0007Q\u0002\u0002\u26ac\u26ad\u0007Y\u0002",
+ "\u0002\u26ad\u26ae\u0007U\u0002\u0002\u26ae\u0422\u0003\u0002\u0002",
+ "\u0002\u26af\u26b0\u0007H\u0002\u0002\u26b0\u26b1\u0007K\u0002\u0002",
+ "\u26b1\u26b2\u0007T\u0002\u0002\u26b2\u26b3\u0007U\u0002\u0002\u26b3",
+ "\u26b4\u0007V\u0002\u0002\u26b4\u26b5\u0007a\u0002\u0002\u26b5\u26b6",
+ "\u0007X\u0002\u0002\u26b6\u26b7\u0007C\u0002\u0002\u26b7\u26b8\u0007",
+ "N\u0002\u0002\u26b8\u26b9\u0007W\u0002\u0002\u26b9\u26ba\u0007G\u0002",
+ "\u0002\u26ba\u0424\u0003\u0002\u0002\u0002\u26bb\u26bc\u0007H\u0002",
+ "\u0002\u26bc\u26bd\u0007K\u0002\u0002\u26bd\u26be\u0007Z\u0002\u0002",
+ "\u26be\u26bf\u0007G\u0002\u0002\u26bf\u26c0\u0007F\u0002\u0002\u26c0",
+ "\u26c1\u0007a\u0002\u0002\u26c1\u26c2\u0007X\u0002\u0002\u26c2\u26c3",
+ "\u0007K\u0002\u0002\u26c3\u26c4\u0007G\u0002\u0002\u26c4\u26c5\u0007",
+ "Y\u0002\u0002\u26c5\u26c6\u0007a\u0002\u0002\u26c6\u26c7\u0007F\u0002",
+ "\u0002\u26c7\u26c8\u0007C\u0002\u0002\u26c8\u26c9\u0007V\u0002\u0002",
+ "\u26c9\u26ca\u0007C\u0002\u0002\u26ca\u0426\u0003\u0002\u0002\u0002",
+ "\u26cb\u26cc\u0007H\u0002\u0002\u26cc\u26cd\u0007N\u0002\u0002\u26cd",
+ "\u26ce\u0007C\u0002\u0002\u26ce\u26cf\u0007I\u0002\u0002\u26cf\u26d0",
+ "\u0007I\u0002\u0002\u26d0\u26d1\u0007G\u0002\u0002\u26d1\u26d2\u0007",
+ "T\u0002\u0002\u26d2\u0428\u0003\u0002\u0002\u0002\u26d3\u26d4\u0007",
+ "H\u0002\u0002\u26d4\u26d5\u0007N\u0002\u0002\u26d5\u26d6\u0007C\u0002",
+ "\u0002\u26d6\u26d7\u0007U\u0002\u0002\u26d7\u26d8\u0007J\u0002\u0002",
+ "\u26d8\u26d9\u0007D\u0002\u0002\u26d9\u26da\u0007C\u0002\u0002\u26da",
+ "\u26db\u0007E\u0002\u0002\u26db\u26dc\u0007M\u0002\u0002\u26dc\u042a",
+ "\u0003\u0002\u0002\u0002\u26dd\u26de\u0007H\u0002\u0002\u26de\u26df",
+ "\u0007N\u0002\u0002\u26df\u26e0\u0007C\u0002\u0002\u26e0\u26e1\u0007",
+ "U\u0002\u0002\u26e1\u26e2\u0007J\u0002\u0002\u26e2\u26e3\u0007a\u0002",
+ "\u0002\u26e3\u26e4\u0007E\u0002\u0002\u26e4\u26e5\u0007C\u0002\u0002",
+ "\u26e5\u26e6\u0007E\u0002\u0002\u26e6\u26e7\u0007J\u0002\u0002\u26e7",
+ "\u26e8\u0007G\u0002\u0002\u26e8\u042c\u0003\u0002\u0002\u0002\u26e9",
+ "\u26ea\u0007H\u0002\u0002\u26ea\u26eb\u0007N\u0002\u0002\u26eb\u26ec",
+ "\u0007Q\u0002\u0002\u26ec\u26ed\u0007C\u0002\u0002\u26ed\u26ee\u0007",
+ "V\u0002\u0002\u26ee\u042e\u0003\u0002\u0002\u0002\u26ef\u26f0\u0007",
+ "H\u0002\u0002\u26f0\u26f1\u0007N\u0002\u0002\u26f1\u26f2\u0007Q\u0002",
+ "\u0002\u26f2\u26f3\u0007D\u0002\u0002\u26f3\u0430\u0003\u0002\u0002",
+ "\u0002\u26f4\u26f5\u0007H\u0002\u0002\u26f5\u26f6\u0007N\u0002\u0002",
+ "\u26f6\u26f7\u0007Q\u0002\u0002\u26f7\u26f8\u0007Q\u0002\u0002\u26f8",
+ "\u26f9\u0007T\u0002\u0002\u26f9\u0432\u0003\u0002\u0002\u0002\u26fa",
+ "\u26fb\u0007H\u0002\u0002\u26fb\u26fc\u0007N\u0002\u0002\u26fc\u26fd",
+ "\u0007W\u0002\u0002\u26fd\u26fe\u0007U\u0002\u0002\u26fe\u26ff\u0007",
+ "J\u0002\u0002\u26ff\u0434\u0003\u0002\u0002\u0002\u2700\u2701\u0007",
+ "H\u0002\u0002\u2701\u2702\u0007Q\u0002\u0002\u2702\u2703\u0007N\u0002",
+ "\u0002\u2703\u2704\u0007F\u0002\u0002\u2704\u2705\u0007G\u0002\u0002",
+ "\u2705\u2706\u0007T\u0002\u0002\u2706\u0436\u0003\u0002\u0002\u0002",
+ "\u2707\u2708\u0007H\u0002\u0002\u2708\u2709\u0007Q\u0002\u0002\u2709",
+ "\u270a\u0007N\u0002\u0002\u270a\u270b\u0007N\u0002\u0002\u270b\u270c",
+ "\u0007Q\u0002\u0002\u270c\u270d\u0007Y\u0002\u0002\u270d\u270e\u0007",
+ "K\u0002\u0002\u270e\u270f\u0007P\u0002\u0002\u270f\u2710\u0007I\u0002",
+ "\u0002\u2710\u0438\u0003\u0002\u0002\u0002\u2711\u2712\u0007H\u0002",
+ "\u0002\u2712\u2713\u0007Q\u0002\u0002\u2713\u2714\u0007N\u0002\u0002",
+ "\u2714\u2715\u0007N\u0002\u0002\u2715\u2716\u0007Q\u0002\u0002\u2716",
+ "\u2717\u0007Y\u0002\u0002\u2717\u2718\u0007U\u0002\u0002\u2718\u043a",
+ "\u0003\u0002\u0002\u0002\u2719\u271a\u0007H\u0002\u0002\u271a\u271b",
+ "\u0007Q\u0002\u0002\u271b\u271c\u0007T\u0002\u0002\u271c\u271d\u0007",
+ "C\u0002\u0002\u271d\u271e\u0007N\u0002\u0002\u271e\u271f\u0007N\u0002",
+ "\u0002\u271f\u043c\u0003\u0002\u0002\u0002\u2720\u2721\u0007H\u0002",
+ "\u0002\u2721\u2722\u0007Q\u0002\u0002\u2722\u2723\u0007T\u0002\u0002",
+ "\u2723\u2724\u0007E\u0002\u0002\u2724\u2725\u0007G\u0002\u0002\u2725",
+ "\u043e\u0003\u0002\u0002\u0002\u2726\u2727\u0007H\u0002\u0002\u2727",
+ "\u2728\u0007Q\u0002\u0002\u2728\u2729\u0007T\u0002\u0002\u2729\u272a",
+ "\u0007E\u0002\u0002\u272a\u272b\u0007G\u0002\u0002\u272b\u272c\u0007",
+ "a\u0002\u0002\u272c\u272d\u0007Z\u0002\u0002\u272d\u272e\u0007O\u0002",
+ "\u0002\u272e\u272f\u0007N\u0002\u0002\u272f\u2730\u0007a\u0002\u0002",
+ "\u2730\u2731\u0007S\u0002\u0002\u2731\u2732\u0007W\u0002\u0002\u2732",
+ "\u2733\u0007G\u0002\u0002\u2733\u2734\u0007T\u0002\u0002\u2734\u2735",
+ "\u0007[\u0002\u0002\u2735\u2736\u0007a\u0002\u0002\u2736\u2737\u0007",
+ "T\u0002\u0002\u2737\u2738\u0007G\u0002\u0002\u2738\u2739\u0007Y\u0002",
+ "\u0002\u2739\u273a\u0007T\u0002\u0002\u273a\u273b\u0007K\u0002\u0002",
+ "\u273b\u273c\u0007V\u0002\u0002\u273c\u273d\u0007G\u0002\u0002\u273d",
+ "\u0440\u0003\u0002\u0002\u0002\u273e\u273f\u0007H\u0002\u0002\u273f",
+ "\u2740\u0007Q\u0002\u0002\u2740\u2741\u0007T\u0002\u0002\u2741\u2742",
+ "\u0007G\u0002\u0002\u2742\u2743\u0007K\u0002\u0002\u2743\u2744\u0007",
+ "I\u0002\u0002\u2744\u2745\u0007P\u0002\u0002\u2745\u0442\u0003\u0002",
+ "\u0002\u0002\u2746\u2747\u0007H\u0002\u0002\u2747\u2748\u0007Q\u0002",
+ "\u0002\u2748\u2749\u0007T\u0002\u0002\u2749\u274a\u0007G\u0002\u0002",
+ "\u274a\u274b\u0007X\u0002\u0002\u274b\u274c\u0007G\u0002\u0002\u274c",
+ "\u274d\u0007T\u0002\u0002\u274d\u0444\u0003\u0002\u0002\u0002\u274e",
+ "\u274f\u0007H\u0002\u0002\u274f\u2750\u0007Q\u0002\u0002\u2750\u2751",
+ "\u0007T\u0002\u0002\u2751\u0446\u0003\u0002\u0002\u0002\u2752\u2753",
+ "\u0007H\u0002\u0002\u2753\u2754\u0007Q\u0002\u0002\u2754\u2755\u0007",
+ "T\u0002\u0002\u2755\u2756\u0007O\u0002\u0002\u2756\u2757\u0007C\u0002",
+ "\u0002\u2757\u2758\u0007V\u0002\u0002\u2758\u0448\u0003\u0002\u0002",
+ "\u0002\u2759\u275a\u0007H\u0002\u0002\u275a\u275b\u0007Q\u0002\u0002",
+ "\u275b\u275c\u0007T\u0002\u0002\u275c\u275d\u0007Y\u0002\u0002\u275d",
+ "\u275e\u0007C\u0002\u0002\u275e\u275f\u0007T\u0002\u0002\u275f\u2760",
+ "\u0007F\u0002\u0002\u2760\u044a\u0003\u0002\u0002\u0002\u2761\u2762",
+ "\u0007H\u0002\u0002\u2762\u2763\u0007T\u0002\u0002\u2763\u2764\u0007",
+ "C\u0002\u0002\u2764\u2765\u0007I\u0002\u0002\u2765\u2766\u0007O\u0002",
+ "\u0002\u2766\u2767\u0007G\u0002\u0002\u2767\u2768\u0007P\u0002\u0002",
+ "\u2768\u2769\u0007V\u0002\u0002\u2769\u276a\u0007a\u0002\u0002\u276a",
+ "\u276b\u0007P\u0002\u0002\u276b\u276c\u0007W\u0002\u0002\u276c\u276d",
+ "\u0007O\u0002\u0002\u276d\u276e\u0007D\u0002\u0002\u276e\u276f\u0007",
+ "G\u0002\u0002\u276f\u2770\u0007T\u0002\u0002\u2770\u044c\u0003\u0002",
+ "\u0002\u0002\u2771\u2772\u0007H\u0002\u0002\u2772\u2773\u0007T\u0002",
+ "\u0002\u2773\u2774\u0007G\u0002\u0002\u2774\u2775\u0007G\u0002\u0002",
+ "\u2775\u2776\u0007N\u0002\u0002\u2776\u2777\u0007K\u0002\u0002\u2777",
+ "\u2778\u0007U\u0002\u0002\u2778\u2779\u0007V\u0002\u0002\u2779\u044e",
+ "\u0003\u0002\u0002\u0002\u277a\u277b\u0007H\u0002\u0002\u277b\u277c",
+ "\u0007T\u0002\u0002\u277c\u277d\u0007G\u0002\u0002\u277d\u277e\u0007",
+ "G\u0002\u0002\u277e\u277f\u0007N\u0002\u0002\u277f\u2780\u0007K\u0002",
+ "\u0002\u2780\u2781\u0007U\u0002\u0002\u2781\u2782\u0007V\u0002\u0002",
+ "\u2782\u2783\u0007U\u0002\u0002\u2783\u0450\u0003\u0002\u0002\u0002",
+ "\u2784\u2785\u0007H\u0002\u0002\u2785\u2786\u0007T\u0002\u0002\u2786",
+ "\u2787\u0007G\u0002\u0002\u2787\u2788\u0007G\u0002\u0002\u2788\u2789",
+ "\u0007R\u0002\u0002\u2789\u278a\u0007Q\u0002\u0002\u278a\u278b\u0007",
+ "Q\u0002\u0002\u278b\u278c\u0007N\u0002\u0002\u278c\u278d\u0007U\u0002",
+ "\u0002\u278d\u0452\u0003\u0002\u0002\u0002\u278e\u278f\u0007H\u0002",
+ "\u0002\u278f\u2790\u0007T\u0002\u0002\u2790\u2791\u0007G\u0002\u0002",
+ "\u2791\u2792\u0007U\u0002\u0002\u2792\u2793\u0007J\u0002\u0002\u2793",
+ "\u0454\u0003\u0002\u0002\u0002\u2794\u2795\u0007H\u0002\u0002\u2795",
+ "\u2796\u0007T\u0002\u0002\u2796\u2797\u0007Q\u0002\u0002\u2797\u2798",
+ "\u0007O\u0002\u0002\u2798\u0456\u0003\u0002\u0002\u0002\u2799\u279a",
+ "\u0007H\u0002\u0002\u279a\u279b\u0007T\u0002\u0002\u279b\u279c\u0007",
+ "Q\u0002\u0002\u279c\u279d\u0007O\u0002\u0002\u279d\u279e\u0007a\u0002",
+ "\u0002\u279e\u279f\u0007V\u0002\u0002\u279f\u27a0\u0007\\\u0002\u0002",
+ "\u27a0\u0458\u0003\u0002\u0002\u0002\u27a1\u27a2\u0007H\u0002\u0002",
+ "\u27a2\u27a3\u0007W\u0002\u0002\u27a3\u27a4\u0007N\u0002\u0002\u27a4",
+ "\u27a5\u0007N\u0002\u0002\u27a5\u045a\u0003\u0002\u0002\u0002\u27a6",
+ "\u27a7\u0007H\u0002\u0002\u27a7\u27a8\u0007W\u0002\u0002\u27a8\u27a9",
+ "\u0007N\u0002\u0002\u27a9\u27aa\u0007N\u0002\u0002\u27aa\u27ab\u0007",
+ "a\u0002\u0002\u27ab\u27ac\u0007Q\u0002\u0002\u27ac\u27ad\u0007W\u0002",
+ "\u0002\u27ad\u27ae\u0007V\u0002\u0002\u27ae\u27af\u0007G\u0002\u0002",
+ "\u27af\u27b0\u0007T\u0002\u0002\u27b0\u27b1\u0007a\u0002\u0002\u27b1",
+ "\u27b2\u0007L\u0002\u0002\u27b2\u27b3\u0007Q\u0002\u0002\u27b3\u27b4",
+ "\u0007K\u0002\u0002\u27b4\u27b5\u0007P\u0002\u0002\u27b5\u27b6\u0007",
+ "a\u0002\u0002\u27b6\u27b7\u0007V\u0002\u0002\u27b7\u27b8\u0007Q\u0002",
+ "\u0002\u27b8\u27b9\u0007a\u0002\u0002\u27b9\u27ba\u0007Q\u0002\u0002",
+ "\u27ba\u27bb\u0007W\u0002\u0002\u27bb\u27bc\u0007V\u0002\u0002\u27bc",
+ "\u27bd\u0007G\u0002\u0002\u27bd\u27be\u0007T\u0002\u0002\u27be\u045c",
+ "\u0003\u0002\u0002\u0002\u27bf\u27c0\u0007H\u0002\u0002\u27c0\u27c1",
+ "\u0007W\u0002\u0002\u27c1\u27c2\u0007P\u0002\u0002\u27c2\u27c3\u0007",
+ "E\u0002\u0002\u27c3\u27c4\u0007V\u0002\u0002\u27c4\u27c5\u0007K\u0002",
+ "\u0002\u27c5\u27c6\u0007Q\u0002\u0002\u27c6\u27c7\u0007P\u0002\u0002",
+ "\u27c7\u045e\u0003\u0002\u0002\u0002\u27c8\u27c9\u0007H\u0002\u0002",
+ "\u27c9\u27ca\u0007W\u0002\u0002\u27ca\u27cb\u0007P\u0002\u0002\u27cb",
+ "\u27cc\u0007E\u0002\u0002\u27cc\u27cd\u0007V\u0002\u0002\u27cd\u27ce",
+ "\u0007K\u0002\u0002\u27ce\u27cf\u0007Q\u0002\u0002\u27cf\u27d0\u0007",
+ "P\u0002\u0002\u27d0\u27d1\u0007U\u0002\u0002\u27d1\u0460\u0003\u0002",
+ "\u0002\u0002\u27d2\u27d3\u0007I\u0002\u0002\u27d3\u27d4\u0007C\u0002",
+ "\u0002\u27d4\u27d5\u0007V\u0002\u0002\u27d5\u27d6\u0007J\u0002\u0002",
+ "\u27d6\u27d7\u0007G\u0002\u0002\u27d7\u27d8\u0007T\u0002\u0002\u27d8",
+ "\u27d9\u0007a\u0002\u0002\u27d9\u27da\u0007Q\u0002\u0002\u27da\u27db",
+ "\u0007R\u0002\u0002\u27db\u27dc\u0007V\u0002\u0002\u27dc\u27dd\u0007",
+ "K\u0002\u0002\u27dd\u27de\u0007O\u0002\u0002\u27de\u27df\u0007K\u0002",
+ "\u0002\u27df\u27e0\u0007\\\u0002\u0002\u27e0\u27e1\u0007G\u0002\u0002",
+ "\u27e1\u27e2\u0007T\u0002\u0002\u27e2\u27e3\u0007a\u0002\u0002\u27e3",
+ "\u27e4\u0007U\u0002\u0002\u27e4\u27e5\u0007V\u0002\u0002\u27e5\u27e6",
+ "\u0007C\u0002\u0002\u27e6\u27e7\u0007V\u0002\u0002\u27e7\u27e8\u0007",
+ "K\u0002\u0002\u27e8\u27e9\u0007U\u0002\u0002\u27e9\u27ea\u0007V\u0002",
+ "\u0002\u27ea\u27eb\u0007K\u0002\u0002\u27eb\u27ec\u0007E\u0002\u0002",
+ "\u27ec\u27ed\u0007U\u0002\u0002\u27ed\u0462\u0003\u0002\u0002\u0002",
+ "\u27ee\u27ef\u0007I\u0002\u0002\u27ef\u27f0\u0007C\u0002\u0002\u27f0",
+ "\u27f1\u0007V\u0002\u0002\u27f1\u27f2\u0007J\u0002\u0002\u27f2\u27f3",
+ "\u0007G\u0002\u0002\u27f3\u27f4\u0007T\u0002\u0002\u27f4\u27f5\u0007",
+ "a\u0002\u0002\u27f5\u27f6\u0007R\u0002\u0002\u27f6\u27f7\u0007N\u0002",
+ "\u0002\u27f7\u27f8\u0007C\u0002\u0002\u27f8\u27f9\u0007P\u0002\u0002",
+ "\u27f9\u27fa\u0007a\u0002\u0002\u27fa\u27fb\u0007U\u0002\u0002\u27fb",
+ "\u27fc\u0007V\u0002\u0002\u27fc\u27fd\u0007C\u0002\u0002\u27fd\u27fe",
+ "\u0007V\u0002\u0002\u27fe\u27ff\u0007K\u0002\u0002\u27ff\u2800\u0007",
+ "U\u0002\u0002\u2800\u2801\u0007V\u0002\u0002\u2801\u2802\u0007K\u0002",
+ "\u0002\u2802\u2803\u0007E\u0002\u0002\u2803\u2804\u0007U\u0002\u0002",
+ "\u2804\u0464\u0003\u0002\u0002\u0002\u2805\u2806\u0007I\u0002\u0002",
+ "\u2806\u2807\u0007D\u0002\u0002\u2807\u2808\u0007[\u0002\u0002\u2808",
+ "\u2809\u0007a\u0002\u0002\u2809\u280a\u0007E\u0002\u0002\u280a\u280b",
+ "\u0007Q\u0002\u0002\u280b\u280c\u0007P\u0002\u0002\u280c\u280d\u0007",
+ "E\u0002\u0002\u280d\u280e\u0007a\u0002\u0002\u280e\u280f\u0007T\u0002",
+ "\u0002\u280f\u2810\u0007Q\u0002\u0002\u2810\u2811\u0007N\u0002\u0002",
+ "\u2811\u2812\u0007N\u0002\u0002\u2812\u2813\u0007W\u0002\u0002\u2813",
+ "\u2814\u0007R\u0002\u0002\u2814\u0466\u0003\u0002\u0002\u0002\u2815",
+ "\u2816\u0007I\u0002\u0002\u2816\u2817\u0007D\u0002\u0002\u2817\u2818",
+ "\u0007[\u0002\u0002\u2818\u2819\u0007a\u0002\u0002\u2819\u281a\u0007",
+ "R\u0002\u0002\u281a\u281b\u0007W\u0002\u0002\u281b\u281c\u0007U\u0002",
+ "\u0002\u281c\u281d\u0007J\u0002\u0002\u281d\u281e\u0007F\u0002\u0002",
+ "\u281e\u281f\u0007Q\u0002\u0002\u281f\u2820\u0007Y\u0002\u0002\u2820",
+ "\u2821\u0007P\u0002\u0002\u2821\u0468\u0003\u0002\u0002\u0002\u2822",
+ "\u2823\u0007I\u0002\u0002\u2823\u2824\u0007G\u0002\u0002\u2824\u2825",
+ "\u0007P\u0002\u0002\u2825\u2826\u0007G\u0002\u0002\u2826\u2827\u0007",
+ "T\u0002\u0002\u2827\u2828\u0007C\u0002\u0002\u2828\u2829\u0007V\u0002",
+ "\u0002\u2829\u282a\u0007G\u0002\u0002\u282a\u282b\u0007F\u0002\u0002",
+ "\u282b\u046a\u0003\u0002\u0002\u0002\u282c\u282d\u0007I\u0002\u0002",
+ "\u282d\u282e\u0007G\u0002\u0002\u282e\u282f\u0007V\u0002\u0002\u282f",
+ "\u046c\u0003\u0002\u0002\u0002\u2830\u2831\u0007I\u0002\u0002\u2831",
+ "\u2832\u0007N\u0002\u0002\u2832\u2833\u0007Q\u0002\u0002\u2833\u2834",
+ "\u0007D\u0002\u0002\u2834\u2835\u0007C\u0002\u0002\u2835\u2836\u0007",
+ "N\u0002\u0002\u2836\u046e\u0003\u0002\u0002\u0002\u2837\u2838\u0007",
+ "I\u0002\u0002\u2838\u2839\u0007N\u0002\u0002\u2839\u283a\u0007Q\u0002",
+ "\u0002\u283a\u283b\u0007D\u0002\u0002\u283b\u283c\u0007C\u0002\u0002",
+ "\u283c\u283d\u0007N\u0002\u0002\u283d\u283e\u0007N\u0002\u0002\u283e",
+ "\u283f\u0007[\u0002\u0002\u283f\u0470\u0003\u0002\u0002\u0002\u2840",
+ "\u2841\u0007I\u0002\u0002\u2841\u2842\u0007N\u0002\u0002\u2842\u2843",
+ "\u0007Q\u0002\u0002\u2843\u2844\u0007D\u0002\u0002\u2844\u2845\u0007",
+ "C\u0002\u0002\u2845\u2846\u0007N\u0002\u0002\u2846\u2847\u0007a\u0002",
+ "\u0002\u2847\u2848\u0007P\u0002\u0002\u2848\u2849\u0007C\u0002\u0002",
+ "\u2849\u284a\u0007O\u0002\u0002\u284a\u284b\u0007G\u0002\u0002\u284b",
+ "\u0472\u0003\u0002\u0002\u0002\u284c\u284d\u0007I\u0002\u0002\u284d",
+ "\u284e\u0007N\u0002\u0002\u284e\u284f\u0007Q\u0002\u0002\u284f\u2850",
+ "\u0007D\u0002\u0002\u2850\u2851\u0007C\u0002\u0002\u2851\u2852\u0007",
+ "N\u0002\u0002\u2852\u2853\u0007a\u0002\u0002\u2853\u2854\u0007V\u0002",
+ "\u0002\u2854\u2855\u0007Q\u0002\u0002\u2855\u2856\u0007R\u0002\u0002",
+ "\u2856\u2857\u0007K\u0002\u0002\u2857\u2858\u0007E\u0002\u0002\u2858",
+ "\u2859\u0007a\u0002\u0002\u2859\u285a\u0007G\u0002\u0002\u285a\u285b",
+ "\u0007P\u0002\u0002\u285b\u285c\u0007C\u0002\u0002\u285c\u285d\u0007",
+ "D\u0002\u0002\u285d\u285e\u0007N\u0002\u0002\u285e\u285f\u0007G\u0002",
+ "\u0002\u285f\u2860\u0007F\u0002\u0002\u2860\u0474\u0003\u0002\u0002",
+ "\u0002\u2861\u2862\u0007I\u0002\u0002\u2862\u2863\u0007Q\u0002\u0002",
+ "\u2863\u2864\u0007V\u0002\u0002\u2864\u2865\u0007Q\u0002\u0002\u2865",
+ "\u0476\u0003\u0002\u0002\u0002\u2866\u2867\u0007I\u0002\u0002\u2867",
+ "\u2868\u0007T\u0002\u0002\u2868\u2869\u0007C\u0002\u0002\u2869\u286a",
+ "\u0007P\u0002\u0002\u286a\u286b\u0007V\u0002\u0002\u286b\u0478\u0003",
+ "\u0002\u0002\u0002\u286c\u286d\u0007I\u0002\u0002\u286d\u286e\u0007",
+ "T\u0002\u0002\u286e\u286f\u0007Q\u0002\u0002\u286f\u2870\u0007W\u0002",
+ "\u0002\u2870\u2871\u0007R\u0002\u0002\u2871\u2872\u0007a\u0002\u0002",
+ "\u2872\u2873\u0007D\u0002\u0002\u2873\u2874\u0007[\u0002\u0002\u2874",
+ "\u047a\u0003\u0002\u0002\u0002\u2875\u2876\u0007I\u0002\u0002\u2876",
+ "\u2877\u0007T\u0002\u0002\u2877\u2878\u0007Q\u0002\u0002\u2878\u2879",
+ "\u0007W\u0002\u0002\u2879\u287a\u0007R\u0002\u0002\u287a\u047c\u0003",
+ "\u0002\u0002\u0002\u287b\u287c\u0007I\u0002\u0002\u287c\u287d\u0007",
+ "T\u0002\u0002\u287d\u287e\u0007Q\u0002\u0002\u287e\u287f\u0007W\u0002",
+ "\u0002\u287f\u2880\u0007R\u0002\u0002\u2880\u2881\u0007a\u0002\u0002",
+ "\u2881\u2882\u0007K\u0002\u0002\u2882\u2883\u0007F\u0002\u0002\u2883",
+ "\u047e\u0003\u0002\u0002\u0002\u2884\u2885\u0007I\u0002\u0002\u2885",
+ "\u2886\u0007T\u0002\u0002\u2886\u2887\u0007Q\u0002\u0002\u2887\u2888",
+ "\u0007W\u0002\u0002\u2888\u2889\u0007R\u0002\u0002\u2889\u288a\u0007",
+ "K\u0002\u0002\u288a\u288b\u0007P\u0002\u0002\u288b\u288c\u0007I\u0002",
+ "\u0002\u288c\u0480\u0003\u0002\u0002\u0002\u288d\u288e\u0007I\u0002",
+ "\u0002\u288e\u288f\u0007T\u0002\u0002\u288f\u2890\u0007Q\u0002\u0002",
+ "\u2890\u2891\u0007W\u0002\u0002\u2891\u2892\u0007R\u0002\u0002\u2892",
+ "\u2893\u0007K\u0002\u0002\u2893\u2894\u0007P\u0002\u0002\u2894\u2895",
+ "\u0007I\u0002\u0002\u2895\u2896\u0007a\u0002\u0002\u2896\u2897\u0007",
+ "K\u0002\u0002\u2897\u2898\u0007F\u0002\u0002\u2898\u0482\u0003\u0002",
+ "\u0002\u0002\u2899\u289a\u0007I\u0002\u0002\u289a\u289b\u0007T\u0002",
+ "\u0002\u289b\u289c\u0007Q\u0002\u0002\u289c\u289d\u0007W\u0002\u0002",
+ "\u289d\u289e\u0007R\u0002\u0002\u289e\u289f\u0007U\u0002\u0002\u289f",
+ "\u0484\u0003\u0002\u0002\u0002\u28a0\u28a1\u0007I\u0002\u0002\u28a1",
+ "\u28a2\u0007W\u0002\u0002\u28a2\u28a3\u0007C\u0002\u0002\u28a3\u28a4",
+ "\u0007T\u0002\u0002\u28a4\u28a5\u0007C\u0002\u0002\u28a5\u28a6\u0007",
+ "P\u0002\u0002\u28a6\u28a7\u0007V\u0002\u0002\u28a7\u28a8\u0007G\u0002",
+ "\u0002\u28a8\u28a9\u0007G\u0002\u0002\u28a9\u28aa\u0007F\u0002\u0002",
+ "\u28aa\u0486\u0003\u0002\u0002\u0002\u28ab\u28ac\u0007I\u0002\u0002",
+ "\u28ac\u28ad\u0007W\u0002\u0002\u28ad\u28ae\u0007C\u0002\u0002\u28ae",
+ "\u28af\u0007T\u0002\u0002\u28af\u28b0\u0007C\u0002\u0002\u28b0\u28b1",
+ "\u0007P\u0002\u0002\u28b1\u28b2\u0007V\u0002\u0002\u28b2\u28b3\u0007",
+ "G\u0002\u0002\u28b3\u28b4\u0007G\u0002\u0002\u28b4\u0488\u0003\u0002",
+ "\u0002\u0002\u28b5\u28b6\u0007I\u0002\u0002\u28b6\u28b7\u0007W\u0002",
+ "\u0002\u28b7\u28b8\u0007C\u0002\u0002\u28b8\u28b9\u0007T\u0002\u0002",
+ "\u28b9\u28ba\u0007F\u0002\u0002\u28ba\u048a\u0003\u0002\u0002\u0002",
+ "\u28bb\u28bc\u0007J\u0002\u0002\u28bc\u28bd\u0007C\u0002\u0002\u28bd",
+ "\u28be\u0007U\u0002\u0002\u28be\u28bf\u0007J\u0002\u0002\u28bf\u28c0",
+ "\u0007a\u0002\u0002\u28c0\u28c1\u0007C\u0002\u0002\u28c1\u28c2\u0007",
+ "L\u0002\u0002\u28c2\u048c\u0003\u0002\u0002\u0002\u28c3\u28c4\u0007",
+ "J\u0002\u0002\u28c4\u28c5\u0007C\u0002\u0002\u28c5\u28c6\u0007U\u0002",
+ "\u0002\u28c6\u28c7\u0007J\u0002\u0002\u28c7\u048e\u0003\u0002\u0002",
+ "\u0002\u28c8\u28c9\u0007J\u0002\u0002\u28c9\u28ca\u0007C\u0002\u0002",
+ "\u28ca\u28cb\u0007U\u0002\u0002\u28cb\u28cc\u0007J\u0002\u0002\u28cc",
+ "\u28cd\u0007M\u0002\u0002\u28cd\u28ce\u0007G\u0002\u0002\u28ce\u28cf",
+ "\u0007[\u0002\u0002\u28cf\u28d0\u0007U\u0002\u0002\u28d0\u0490\u0003",
+ "\u0002\u0002\u0002\u28d1\u28d2\u0007J\u0002\u0002\u28d2\u28d3\u0007",
+ "C\u0002\u0002\u28d3\u28d4\u0007U\u0002\u0002\u28d4\u28d5\u0007J\u0002",
+ "\u0002\u28d5\u28d6\u0007a\u0002\u0002\u28d6\u28d7\u0007U\u0002\u0002",
+ "\u28d7\u28d8\u0007L\u0002\u0002\u28d8\u0492\u0003\u0002\u0002\u0002",
+ "\u28d9\u28da\u0007J\u0002\u0002\u28da\u28db\u0007C\u0002\u0002\u28db",
+ "\u28dc\u0007X\u0002\u0002\u28dc\u28dd\u0007K\u0002\u0002\u28dd\u28de",
+ "\u0007P\u0002\u0002\u28de\u28df\u0007I\u0002\u0002\u28df\u0494\u0003",
+ "\u0002\u0002\u0002\u28e0\u28e1\u0007J\u0002\u0002\u28e1\u28e2\u0007",
+ "G\u0002\u0002\u28e2\u28e3\u0007C\u0002\u0002\u28e3\u28e4\u0007F\u0002",
+ "\u0002\u28e4\u28e5\u0007G\u0002\u0002\u28e5\u28e6\u0007T\u0002\u0002",
+ "\u28e6\u0496\u0003\u0002\u0002\u0002\u28e7\u28e8\u0007J\u0002\u0002",
+ "\u28e8\u28e9\u0007G\u0002\u0002\u28e9\u28ea\u0007C\u0002\u0002\u28ea",
+ "\u28eb\u0007R\u0002\u0002\u28eb\u0498\u0003\u0002\u0002\u0002\u28ec",
+ "\u28ed\u0007J\u0002\u0002\u28ed\u28ee\u0007G\u0002\u0002\u28ee\u28ef",
+ "\u0007N\u0002\u0002\u28ef\u28f0\u0007R\u0002\u0002\u28f0\u049a\u0003",
+ "\u0002\u0002\u0002\u28f1\u28f2\u0007J\u0002\u0002\u28f2\u28f3\u0007",
+ "G\u0002\u0002\u28f3\u28f4\u0007Z\u0002\u0002\u28f4\u28f5\u0007V\u0002",
+ "\u0002\u28f5\u28f6\u0007Q\u0002\u0002\u28f6\u28f7\u0007T\u0002\u0002",
+ "\u28f7\u28f8\u0007C\u0002\u0002\u28f8\u28f9\u0007Y\u0002\u0002\u28f9",
+ "\u049c\u0003\u0002\u0002\u0002\u28fa\u28fb\u0007J\u0002\u0002\u28fb",
+ "\u28fc\u0007G\u0002\u0002\u28fc\u28fd\u0007Z\u0002\u0002\u28fd\u28fe",
+ "\u0007V\u0002\u0002\u28fe\u28ff\u0007Q\u0002\u0002\u28ff\u2900\u0007",
+ "T\u0002\u0002\u2900\u2901\u0007G\u0002\u0002\u2901\u2902\u0007H\u0002",
+ "\u0002\u2902\u049e\u0003\u0002\u0002\u0002\u2903\u2904\u0007J\u0002",
+ "\u0002\u2904\u2905\u0007K\u0002\u0002\u2905\u2906\u0007F\u0002\u0002",
+ "\u2906\u2907\u0007F\u0002\u0002\u2907\u2908\u0007G\u0002\u0002\u2908",
+ "\u2909\u0007P\u0002\u0002\u2909\u04a0\u0003\u0002\u0002\u0002\u290a",
+ "\u290b\u0007J\u0002\u0002\u290b\u290c\u0007K\u0002\u0002\u290c\u290d",
+ "\u0007F\u0002\u0002\u290d\u290e\u0007G\u0002\u0002\u290e\u04a2\u0003",
+ "\u0002\u0002\u0002\u290f\u2910\u0007J\u0002\u0002\u2910\u2911\u0007",
+ "K\u0002\u0002\u2911\u2912\u0007G\u0002\u0002\u2912\u2913\u0007T\u0002",
+ "\u0002\u2913\u2914\u0007C\u0002\u0002\u2914\u2915\u0007T\u0002\u0002",
+ "\u2915\u2916\u0007E\u0002\u0002\u2916\u2917\u0007J\u0002\u0002\u2917",
+ "\u2918\u0007[\u0002\u0002\u2918\u04a4\u0003\u0002\u0002\u0002\u2919",
+ "\u291a\u0007J\u0002\u0002\u291a\u291b\u0007K\u0002\u0002\u291b\u291c",
+ "\u0007I\u0002\u0002\u291c\u291d\u0007J\u0002\u0002\u291d\u04a6\u0003",
+ "\u0002\u0002\u0002\u291e\u291f\u0007J\u0002\u0002\u291f\u2920\u0007",
+ "K\u0002\u0002\u2920\u2921\u0007P\u0002\u0002\u2921\u2922\u0007V\u0002",
+ "\u0002\u2922\u2923\u0007U\u0002\u0002\u2923\u2924\u0007G\u0002\u0002",
+ "\u2924\u2925\u0007V\u0002\u0002\u2925\u2926\u0007a\u0002\u0002\u2926",
+ "\u2927\u0007D\u0002\u0002\u2927\u2928\u0007G\u0002\u0002\u2928\u2929",
+ "\u0007I\u0002\u0002\u2929\u292a\u0007K\u0002\u0002\u292a\u292b\u0007",
+ "P\u0002\u0002\u292b\u04a8\u0003\u0002\u0002\u0002\u292c\u292d\u0007",
+ "J\u0002\u0002\u292d\u292e\u0007K\u0002\u0002\u292e\u292f\u0007P\u0002",
+ "\u0002\u292f\u2930\u0007V\u0002\u0002\u2930\u2931\u0007U\u0002\u0002",
+ "\u2931\u2932\u0007G\u0002\u0002\u2932\u2933\u0007V\u0002\u0002\u2933",
+ "\u2934\u0007a\u0002\u0002\u2934\u2935\u0007G\u0002\u0002\u2935\u2936",
+ "\u0007P\u0002\u0002\u2936\u2937\u0007F\u0002\u0002\u2937\u04aa\u0003",
+ "\u0002\u0002\u0002\u2938\u2939\u0007J\u0002\u0002\u2939\u293a\u0007",
+ "Q\u0002\u0002\u293a\u293b\u0007V\u0002\u0002\u293b\u04ac\u0003\u0002",
+ "\u0002\u0002\u293c\u293d\u0007J\u0002\u0002\u293d\u293e\u0007Q\u0002",
+ "\u0002\u293e\u293f\u0007W\u0002\u0002\u293f\u2940\u0007T\u0002\u0002",
+ "\u2940\u04ae\u0003\u0002\u0002\u0002\u2941\u2942\u0007J\u0002\u0002",
+ "\u2942\u2943\u0007Y\u0002\u0002\u2943\u2944\u0007O\u0002\u0002\u2944",
+ "\u2945\u0007a\u0002\u0002\u2945\u2946\u0007D\u0002\u0002\u2946\u2947",
+ "\u0007T\u0002\u0002\u2947\u2948\u0007Q\u0002\u0002\u2948\u2949\u0007",
+ "M\u0002\u0002\u2949\u294a\u0007G\u0002\u0002\u294a\u294b\u0007T\u0002",
+ "\u0002\u294b\u294c\u0007G\u0002\u0002\u294c\u294d\u0007F\u0002\u0002",
+ "\u294d\u04b0\u0003\u0002\u0002\u0002\u294e\u294f\u0007J\u0002\u0002",
+ "\u294f\u2950\u0007[\u0002\u0002\u2950\u2951\u0007D\u0002\u0002\u2951",
+ "\u2952\u0007T\u0002\u0002\u2952\u2953\u0007K\u0002\u0002\u2953\u2954",
+ "\u0007F\u0002\u0002\u2954\u04b2\u0003\u0002\u0002\u0002\u2955\u2956",
+ "\u0007K\u0002\u0002\u2956\u2957\u0007F\u0002\u0002\u2957\u2958\u0007",
+ "G\u0002\u0002\u2958\u2959\u0007P\u0002\u0002\u2959\u295a\u0007V\u0002",
+ "\u0002\u295a\u295b\u0007K\u0002\u0002\u295b\u295c\u0007H\u0002\u0002",
+ "\u295c\u295d\u0007K\u0002\u0002\u295d\u295e\u0007G\u0002\u0002\u295e",
+ "\u295f\u0007F\u0002\u0002\u295f\u04b4\u0003\u0002\u0002\u0002\u2960",
+ "\u2961\u0007K\u0002\u0002\u2961\u2962\u0007F\u0002\u0002\u2962\u2963",
+ "\u0007G\u0002\u0002\u2963\u2964\u0007P\u0002\u0002\u2964\u2965\u0007",
+ "V\u0002\u0002\u2965\u2966\u0007K\u0002\u0002\u2966\u2967\u0007H\u0002",
+ "\u0002\u2967\u2968\u0007K\u0002\u0002\u2968\u2969\u0007G\u0002\u0002",
+ "\u2969\u296a\u0007T\u0002\u0002\u296a\u04b6\u0003\u0002\u0002\u0002",
+ "\u296b\u296c\u0007K\u0002\u0002\u296c\u296d\u0007F\u0002\u0002\u296d",
+ "\u296e\u0007G\u0002\u0002\u296e\u296f\u0007P\u0002\u0002\u296f\u2970",
+ "\u0007V\u0002\u0002\u2970\u2971\u0007K\u0002\u0002\u2971\u2972\u0007",
+ "V\u0002\u0002\u2972\u2973\u0007[\u0002\u0002\u2973\u04b8\u0003\u0002",
+ "\u0002\u0002\u2974\u2975\u0007K\u0002\u0002\u2975\u2976\u0007F\u0002",
+ "\u0002\u2976\u2977\u0007I\u0002\u0002\u2977\u2978\u0007G\u0002\u0002",
+ "\u2978\u2979\u0007P\u0002\u0002\u2979\u297a\u0007G\u0002\u0002\u297a",
+ "\u297b\u0007T\u0002\u0002\u297b\u297c\u0007C\u0002\u0002\u297c\u297d",
+ "\u0007V\u0002\u0002\u297d\u297e\u0007Q\u0002\u0002\u297e\u297f\u0007",
+ "T\u0002\u0002\u297f\u2980\u0007U\u0002\u0002\u2980\u04ba\u0003\u0002",
+ "\u0002\u0002\u2981\u2982\u0007K\u0002\u0002\u2982\u2983\u0007F\u0002",
+ "\u0002\u2983\u04bc\u0003\u0002\u0002\u0002\u2984\u2985\u0007K\u0002",
+ "\u0002\u2985\u2986\u0007F\u0002\u0002\u2986\u2987\u0007N\u0002\u0002",
+ "\u2987\u2988\u0007G\u0002\u0002\u2988\u2989\u0007a\u0002\u0002\u2989",
+ "\u298a\u0007V\u0002\u0002\u298a\u298b\u0007K\u0002\u0002\u298b\u298c",
+ "\u0007O\u0002\u0002\u298c\u298d\u0007G\u0002\u0002\u298d\u04be\u0003",
+ "\u0002\u0002\u0002\u298e\u298f\u0007K\u0002\u0002\u298f\u2990\u0007",
+ "H\u0002\u0002\u2990\u04c0\u0003\u0002\u0002\u0002\u2991\u2992\u0007",
+ "K\u0002\u0002\u2992\u2993\u0007I\u0002\u0002\u2993\u2994\u0007P\u0002",
+ "\u0002\u2994\u2995\u0007Q\u0002\u0002\u2995\u2996\u0007T\u0002\u0002",
+ "\u2996\u2997\u0007G\u0002\u0002\u2997\u04c2\u0003\u0002\u0002\u0002",
+ "\u2998\u2999\u0007K\u0002\u0002\u2999\u299a\u0007I\u0002\u0002\u299a",
+ "\u299b\u0007P\u0002\u0002\u299b\u299c\u0007Q\u0002\u0002\u299c\u299d",
+ "\u0007T\u0002\u0002\u299d\u299e\u0007G\u0002\u0002\u299e\u299f\u0007",
+ "a\u0002\u0002\u299f\u29a0\u0007Q\u0002\u0002\u29a0\u29a1\u0007R\u0002",
+ "\u0002\u29a1\u29a2\u0007V\u0002\u0002\u29a2\u29a3\u0007K\u0002\u0002",
+ "\u29a3\u29a4\u0007O\u0002\u0002\u29a4\u29a5\u0007a\u0002\u0002\u29a5",
+ "\u29a6\u0007G\u0002\u0002\u29a6\u29a7\u0007O\u0002\u0002\u29a7\u29a8",
+ "\u0007D\u0002\u0002\u29a8\u29a9\u0007G\u0002\u0002\u29a9\u29aa\u0007",
+ "F\u0002\u0002\u29aa\u29ab\u0007F\u0002\u0002\u29ab\u29ac\u0007G\u0002",
+ "\u0002\u29ac\u29ad\u0007F\u0002\u0002\u29ad\u29ae\u0007a\u0002\u0002",
+ "\u29ae\u29af\u0007J\u0002\u0002\u29af\u29b0\u0007K\u0002\u0002\u29b0",
+ "\u29b1\u0007P\u0002\u0002\u29b1\u29b2\u0007V\u0002\u0002\u29b2\u29b3",
+ "\u0007U\u0002\u0002\u29b3\u04c4\u0003\u0002\u0002\u0002\u29b4\u29b5",
+ "\u0007K\u0002\u0002\u29b5\u29b6\u0007I\u0002\u0002\u29b6\u29b7\u0007",
+ "P\u0002\u0002\u29b7\u29b8\u0007Q\u0002\u0002\u29b8\u29b9\u0007T\u0002",
+ "\u0002\u29b9\u29ba\u0007G\u0002\u0002\u29ba\u29bb\u0007a\u0002\u0002",
+ "\u29bb\u29bc\u0007T\u0002\u0002\u29bc\u29bd\u0007Q\u0002\u0002\u29bd",
+ "\u29be\u0007Y\u0002\u0002\u29be\u29bf\u0007a\u0002\u0002\u29bf\u29c0",
+ "\u0007Q\u0002\u0002\u29c0\u29c1\u0007P\u0002\u0002\u29c1\u29c2\u0007",
+ "a\u0002\u0002\u29c2\u29c3\u0007F\u0002\u0002\u29c3\u29c4\u0007W\u0002",
+ "\u0002\u29c4\u29c5\u0007R\u0002\u0002\u29c5\u29c6\u0007M\u0002\u0002",
+ "\u29c6\u29c7\u0007G\u0002\u0002\u29c7\u29c8\u0007[\u0002\u0002\u29c8",
+ "\u29c9\u0007a\u0002\u0002\u29c9\u29ca\u0007K\u0002\u0002\u29ca\u29cb",
+ "\u0007P\u0002\u0002\u29cb\u29cc\u0007F\u0002\u0002\u29cc\u29cd\u0007",
+ "G\u0002\u0002\u29cd\u29ce\u0007Z\u0002\u0002\u29ce\u04c6\u0003\u0002",
+ "\u0002\u0002\u29cf\u29d0\u0007K\u0002\u0002\u29d0\u29d1\u0007I\u0002",
+ "\u0002\u29d1\u29d2\u0007P\u0002\u0002\u29d2\u29d3\u0007Q\u0002\u0002",
+ "\u29d3\u29d4\u0007T\u0002\u0002\u29d4\u29d5\u0007G\u0002\u0002\u29d5",
+ "\u29d6\u0007a\u0002\u0002\u29d6\u29d7\u0007Y\u0002\u0002\u29d7\u29d8",
+ "\u0007J\u0002\u0002\u29d8\u29d9\u0007G\u0002\u0002\u29d9\u29da\u0007",
+ "T\u0002\u0002\u29da\u29db\u0007G\u0002\u0002\u29db\u29dc\u0007a\u0002",
+ "\u0002\u29dc\u29dd\u0007E\u0002\u0002\u29dd\u29de\u0007N\u0002\u0002",
+ "\u29de\u29df\u0007C\u0002\u0002\u29df\u29e0\u0007W\u0002\u0002\u29e0",
+ "\u29e1\u0007U\u0002\u0002\u29e1\u29e2\u0007G\u0002\u0002\u29e2\u04c8",
+ "\u0003\u0002\u0002\u0002\u29e3\u29e4\u0007K\u0002\u0002\u29e4\u29e5",
+ "\u0007N\u0002\u0002\u29e5\u29e6\u0007O\u0002\u0002\u29e6\u04ca\u0003",
+ "\u0002\u0002\u0002\u29e7\u29e8\u0007K\u0002\u0002\u29e8\u29e9\u0007",
+ "O\u0002\u0002\u29e9\u29ea\u0007O\u0002\u0002\u29ea\u29eb\u0007G\u0002",
+ "\u0002\u29eb\u29ec\u0007F\u0002\u0002\u29ec\u29ed\u0007K\u0002\u0002",
+ "\u29ed\u29ee\u0007C\u0002\u0002\u29ee\u29ef\u0007V\u0002\u0002\u29ef",
+ "\u29f0\u0007G\u0002\u0002\u29f0\u04cc\u0003\u0002\u0002\u0002\u29f1",
+ "\u29f2\u0007K\u0002\u0002\u29f2\u29f3\u0007O\u0002\u0002\u29f3\u29f4",
+ "\u0007R\u0002\u0002\u29f4\u29f5\u0007C\u0002\u0002\u29f5\u29f6\u0007",
+ "E\u0002\u0002\u29f6\u29f7\u0007V\u0002\u0002\u29f7\u04ce\u0003\u0002",
+ "\u0002\u0002\u29f8\u29f9\u0007K\u0002\u0002\u29f9\u29fa\u0007O\u0002",
+ "\u0002\u29fa\u29fb\u0007R\u0002\u0002\u29fb\u29fc\u0007Q\u0002\u0002",
+ "\u29fc\u29fd\u0007T\u0002\u0002\u29fd\u29fe\u0007V\u0002\u0002\u29fe",
+ "\u04d0\u0003\u0002\u0002\u0002\u29ff\u2a00\u0007K\u0002\u0002\u2a00",
+ "\u2a01\u0007P\u0002\u0002\u2a01\u2a02\u0007C\u0002\u0002\u2a02\u2a03",
+ "\u0007E\u0002\u0002\u2a03\u2a04\u0007V\u0002\u0002\u2a04\u2a05\u0007",
+ "K\u0002\u0002\u2a05\u2a06\u0007X\u0002\u0002\u2a06\u2a07\u0007G\u0002",
+ "\u0002\u2a07\u04d2\u0003\u0002\u0002\u0002\u2a08\u2a09\u0007K\u0002",
+ "\u0002\u2a09\u2a0a\u0007P\u0002\u0002\u2a0a\u2a0b\u0007E\u0002\u0002",
+ "\u2a0b\u2a0c\u0007N\u0002\u0002\u2a0c\u2a0d\u0007W\u0002\u0002\u2a0d",
+ "\u2a0e\u0007F\u0002\u0002\u2a0e\u2a0f\u0007G\u0002\u0002\u2a0f\u04d4",
+ "\u0003\u0002\u0002\u0002\u2a10\u2a11\u0007K\u0002\u0002\u2a11\u2a12",
+ "\u0007P\u0002\u0002\u2a12\u2a13\u0007E\u0002\u0002\u2a13\u2a14\u0007",
+ "N\u0002\u0002\u2a14\u2a15\u0007W\u0002\u0002\u2a15\u2a16\u0007F\u0002",
+ "\u0002\u2a16\u2a17\u0007G\u0002\u0002\u2a17\u2a18\u0007a\u0002\u0002",
+ "\u2a18\u2a19\u0007X\u0002\u0002\u2a19\u2a1a\u0007G\u0002\u0002\u2a1a",
+ "\u2a1b\u0007T\u0002\u0002\u2a1b\u2a1c\u0007U\u0002\u0002\u2a1c\u2a1d",
+ "\u0007K\u0002\u0002\u2a1d\u2a1e\u0007Q\u0002\u0002\u2a1e\u2a1f\u0007",
+ "P\u0002\u0002\u2a1f\u04d6\u0003\u0002\u0002\u0002\u2a20\u2a21\u0007",
+ "K\u0002\u0002\u2a21\u2a22\u0007P\u0002\u0002\u2a22\u2a23\u0007E\u0002",
+ "\u0002\u2a23\u2a24\u0007N\u0002\u0002\u2a24\u2a25\u0007W\u0002\u0002",
+ "\u2a25\u2a26\u0007F\u0002\u0002\u2a26\u2a27\u0007K\u0002\u0002\u2a27",
+ "\u2a28\u0007P\u0002\u0002\u2a28\u2a29\u0007I\u0002\u0002\u2a29\u04d8",
+ "\u0003\u0002\u0002\u0002\u2a2a\u2a2b\u0007K\u0002\u0002\u2a2b\u2a2c",
+ "\u0007P\u0002\u0002\u2a2c\u2a2d\u0007E\u0002\u0002\u2a2d\u2a2e\u0007",
+ "T\u0002\u0002\u2a2e\u2a2f\u0007G\u0002\u0002\u2a2f\u2a30\u0007O\u0002",
+ "\u0002\u2a30\u2a31\u0007G\u0002\u0002\u2a31\u2a32\u0007P\u0002\u0002",
+ "\u2a32\u2a33\u0007V\u0002\u0002\u2a33\u2a34\u0007C\u0002\u0002\u2a34",
+ "\u2a35\u0007N\u0002\u0002\u2a35\u04da\u0003\u0002\u0002\u0002\u2a36",
+ "\u2a37\u0007K\u0002\u0002\u2a37\u2a38\u0007P\u0002\u0002\u2a38\u2a39",
+ "\u0007E\u0002\u0002\u2a39\u2a3a\u0007T\u0002\u0002\u2a3a\u2a3b\u0007",
+ "G\u0002\u0002\u2a3b\u2a3c\u0007O\u0002\u0002\u2a3c\u2a3d\u0007G\u0002",
+ "\u0002\u2a3d\u2a3e\u0007P\u0002\u0002\u2a3e\u2a3f\u0007V\u0002\u0002",
+ "\u2a3f\u04dc\u0003\u0002\u0002\u0002\u2a40\u2a41\u0007K\u0002\u0002",
+ "\u2a41\u2a42\u0007P\u0002\u0002\u2a42\u2a43\u0007E\u0002\u0002\u2a43",
+ "\u2a44\u0007T\u0002\u0002\u2a44\u04de\u0003\u0002\u0002\u0002\u2a45",
+ "\u2a46\u0007K\u0002\u0002\u2a46\u2a47\u0007P\u0002\u0002\u2a47\u2a48",
+ "\u0007F\u0002\u0002\u2a48\u2a49\u0007G\u0002\u0002\u2a49\u2a4a\u0007",
+ "P\u0002\u0002\u2a4a\u2a4b\u0007V\u0002\u0002\u2a4b\u04e0\u0003\u0002",
+ "\u0002\u0002\u2a4c\u2a4d\u0007K\u0002\u0002\u2a4d\u2a4e\u0007P\u0002",
+ "\u0002\u2a4e\u2a4f\u0007F\u0002\u0002\u2a4f\u2a50\u0007G\u0002\u0002",
+ "\u2a50\u2a51\u0007Z\u0002\u0002\u2a51\u2a52\u0007a\u0002\u0002\u2a52",
+ "\u2a53\u0007C\u0002\u0002\u2a53\u2a54\u0007U\u0002\u0002\u2a54\u2a55",
+ "\u0007E\u0002\u0002\u2a55\u04e2\u0003\u0002\u0002\u0002\u2a56\u2a57",
+ "\u0007K\u0002\u0002\u2a57\u2a58\u0007P\u0002\u0002\u2a58\u2a59\u0007",
+ "F\u0002\u0002\u2a59\u2a5a\u0007G\u0002\u0002\u2a5a\u2a5b\u0007Z\u0002",
+ "\u0002\u2a5b\u2a5c\u0007a\u0002\u0002\u2a5c\u2a5d\u0007E\u0002\u0002",
+ "\u2a5d\u2a5e\u0007Q\u0002\u0002\u2a5e\u2a5f\u0007O\u0002\u0002\u2a5f",
+ "\u2a60\u0007D\u0002\u0002\u2a60\u2a61\u0007K\u0002\u0002\u2a61\u2a62",
+ "\u0007P\u0002\u0002\u2a62\u2a63\u0007G\u0002\u0002\u2a63\u04e4\u0003",
+ "\u0002\u0002\u0002\u2a64\u2a65\u0007K\u0002\u0002\u2a65\u2a66\u0007",
+ "P\u0002\u0002\u2a66\u2a67\u0007F\u0002\u0002\u2a67\u2a68\u0007G\u0002",
+ "\u0002\u2a68\u2a69\u0007Z\u0002\u0002\u2a69\u2a6a\u0007a\u0002\u0002",
+ "\u2a6a\u2a6b\u0007F\u0002\u0002\u2a6b\u2a6c\u0007G\u0002\u0002\u2a6c",
+ "\u2a6d\u0007U\u0002\u0002\u2a6d\u2a6e\u0007E\u0002\u0002\u2a6e\u04e6",
+ "\u0003\u0002\u0002\u0002\u2a6f\u2a70\u0007K\u0002\u0002\u2a70\u2a71",
+ "\u0007P\u0002\u0002\u2a71\u2a72\u0007F\u0002\u0002\u2a72\u2a73\u0007",
+ "G\u0002\u0002\u2a73\u2a74\u0007Z\u0002\u0002\u2a74\u2a75\u0007G\u0002",
+ "\u0002\u2a75\u2a76\u0007F\u0002\u0002\u2a76\u04e8\u0003\u0002\u0002",
+ "\u0002\u2a77\u2a78\u0007K\u0002\u0002\u2a78\u2a79\u0007P\u0002\u0002",
+ "\u2a79\u2a7a\u0007F\u0002\u0002\u2a7a\u2a7b\u0007G\u0002\u0002\u2a7b",
+ "\u2a7c\u0007Z\u0002\u0002\u2a7c\u2a7d\u0007G\u0002\u0002\u2a7d\u2a7e",
+ "\u0007U\u0002\u0002\u2a7e\u04ea\u0003\u0002\u0002\u0002\u2a7f\u2a80",
+ "\u0007K\u0002\u0002\u2a80\u2a81\u0007P\u0002\u0002\u2a81\u2a82\u0007",
+ "F\u0002\u0002\u2a82\u2a83\u0007G\u0002\u0002\u2a83\u2a84\u0007Z\u0002",
+ "\u0002\u2a84\u2a85\u0007a\u0002\u0002\u2a85\u2a86\u0007H\u0002\u0002",
+ "\u2a86\u2a87\u0007H\u0002\u0002\u2a87\u2a88\u0007U\u0002\u0002\u2a88",
+ "\u04ec\u0003\u0002\u0002\u0002\u2a89\u2a8a\u0007K\u0002\u0002\u2a8a",
+ "\u2a8b\u0007P\u0002\u0002\u2a8b\u2a8c\u0007F\u0002\u0002\u2a8c\u2a8d",
+ "\u0007G\u0002\u0002\u2a8d\u2a8e\u0007Z\u0002\u0002\u2a8e\u2a8f\u0007",
+ "a\u0002\u0002\u2a8f\u2a90\u0007H\u0002\u0002\u2a90\u2a91\u0007K\u0002",
+ "\u0002\u2a91\u2a92\u0007N\u0002\u0002\u2a92\u2a93\u0007V\u0002\u0002",
+ "\u2a93\u2a94\u0007G\u0002\u0002\u2a94\u2a95\u0007T\u0002\u0002\u2a95",
+ "\u04ee\u0003\u0002\u0002\u0002\u2a96\u2a97\u0007K\u0002\u0002\u2a97",
+ "\u2a98\u0007P\u0002\u0002\u2a98\u2a99\u0007F\u0002\u0002\u2a99\u2a9a",
+ "\u0007G\u0002\u0002\u2a9a\u2a9b\u0007Z\u0002\u0002\u2a9b\u04f0\u0003",
+ "\u0002\u0002\u0002\u2a9c\u2a9d\u0007K\u0002\u0002\u2a9d\u2a9e\u0007",
+ "P\u0002\u0002\u2a9e\u2a9f\u0007F\u0002\u0002\u2a9f\u2aa0\u0007G\u0002",
+ "\u0002\u2aa0\u2aa1\u0007Z\u0002\u0002\u2aa1\u2aa2\u0007K\u0002\u0002",
+ "\u2aa2\u2aa3\u0007P\u0002\u0002\u2aa3\u2aa4\u0007I\u0002\u0002\u2aa4",
+ "\u04f2\u0003\u0002\u0002\u0002\u2aa5\u2aa6\u0007K\u0002\u0002\u2aa6",
+ "\u2aa7\u0007P\u0002\u0002\u2aa7\u2aa8\u0007F\u0002\u0002\u2aa8\u2aa9",
+ "\u0007G\u0002\u0002\u2aa9\u2aaa\u0007Z\u0002\u0002\u2aaa\u2aab\u0007",
+ "a\u0002\u0002\u2aab\u2aac\u0007L\u0002\u0002\u2aac\u2aad\u0007Q\u0002",
+ "\u0002\u2aad\u2aae\u0007K\u0002\u0002\u2aae\u2aaf\u0007P\u0002\u0002",
+ "\u2aaf\u04f4\u0003\u0002\u0002\u0002\u2ab0\u2ab1\u0007K\u0002\u0002",
+ "\u2ab1\u2ab2\u0007P\u0002\u0002\u2ab2\u2ab3\u0007F\u0002\u0002\u2ab3",
+ "\u2ab4\u0007G\u0002\u0002\u2ab4\u2ab5\u0007Z\u0002\u0002\u2ab5\u2ab6",
+ "\u0007a\u0002\u0002\u2ab6\u2ab7\u0007T\u0002\u0002\u2ab7\u2ab8\u0007",
+ "Q\u0002\u0002\u2ab8\u2ab9\u0007Y\u0002\u0002\u2ab9\u2aba\u0007U\u0002",
+ "\u0002\u2aba\u04f6\u0003\u0002\u0002\u0002\u2abb\u2abc\u0007K\u0002",
+ "\u0002\u2abc\u2abd\u0007P\u0002\u0002\u2abd\u2abe\u0007F\u0002\u0002",
+ "\u2abe\u2abf\u0007G\u0002\u0002\u2abf\u2ac0\u0007Z\u0002\u0002\u2ac0",
+ "\u2ac1\u0007a\u0002\u0002\u2ac1\u2ac2\u0007T\u0002\u0002\u2ac2\u2ac3",
+ "\u0007T\u0002\u0002\u2ac3\u2ac4\u0007U\u0002\u0002\u2ac4\u04f8\u0003",
+ "\u0002\u0002\u0002\u2ac5\u2ac6\u0007K\u0002\u0002\u2ac6\u2ac7\u0007",
+ "P\u0002\u0002\u2ac7\u2ac8\u0007F\u0002\u0002\u2ac8\u2ac9\u0007G\u0002",
+ "\u0002\u2ac9\u2aca\u0007Z\u0002\u0002\u2aca\u2acb\u0007a\u0002\u0002",
+ "\u2acb\u2acc\u0007T\u0002\u0002\u2acc\u2acd\u0007U\u0002\u0002\u2acd",
+ "\u2ace\u0007a\u0002\u0002\u2ace\u2acf\u0007C\u0002\u0002\u2acf\u2ad0",
+ "\u0007U\u0002\u0002\u2ad0\u2ad1\u0007E\u0002\u0002\u2ad1\u04fa\u0003",
+ "\u0002\u0002\u0002\u2ad2\u2ad3\u0007K\u0002\u0002\u2ad3\u2ad4\u0007",
+ "P\u0002\u0002\u2ad4\u2ad5\u0007F\u0002\u0002\u2ad5\u2ad6\u0007G\u0002",
+ "\u0002\u2ad6\u2ad7\u0007Z\u0002\u0002\u2ad7\u2ad8\u0007a\u0002\u0002",
+ "\u2ad8\u2ad9\u0007T\u0002\u0002\u2ad9\u2ada\u0007U\u0002\u0002\u2ada",
+ "\u2adb\u0007a\u0002\u0002\u2adb\u2adc\u0007F\u0002\u0002\u2adc\u2add",
+ "\u0007G\u0002\u0002\u2add\u2ade\u0007U\u0002\u0002\u2ade\u2adf\u0007",
+ "E\u0002\u0002\u2adf\u04fc\u0003\u0002\u0002\u0002\u2ae0\u2ae1\u0007",
+ "K\u0002\u0002\u2ae1\u2ae2\u0007P\u0002\u0002\u2ae2\u2ae3\u0007F\u0002",
+ "\u0002\u2ae3\u2ae4\u0007G\u0002\u0002\u2ae4\u2ae5\u0007Z\u0002\u0002",
+ "\u2ae5\u2ae6\u0007a\u0002\u0002\u2ae6\u2ae7\u0007T\u0002\u0002\u2ae7",
+ "\u2ae8\u0007U\u0002\u0002\u2ae8\u04fe\u0003\u0002\u0002\u0002\u2ae9",
+ "\u2aea\u0007K\u0002\u0002\u2aea\u2aeb\u0007P\u0002\u0002\u2aeb\u2aec",
+ "\u0007F\u0002\u0002\u2aec\u2aed\u0007G\u0002\u0002\u2aed\u2aee\u0007",
+ "Z\u0002\u0002\u2aee\u2aef\u0007a\u0002\u0002\u2aef\u2af0\u0007U\u0002",
+ "\u0002\u2af0\u2af1\u0007E\u0002\u0002\u2af1\u2af2\u0007C\u0002\u0002",
+ "\u2af2\u2af3\u0007P\u0002\u0002\u2af3\u0500\u0003\u0002\u0002\u0002",
+ "\u2af4\u2af5\u0007K\u0002\u0002\u2af5\u2af6\u0007P\u0002\u0002\u2af6",
+ "\u2af7\u0007F\u0002\u0002\u2af7\u2af8\u0007G\u0002\u0002\u2af8\u2af9",
+ "\u0007Z\u0002\u0002\u2af9\u2afa\u0007a\u0002\u0002\u2afa\u2afb\u0007",
+ "U\u0002\u0002\u2afb\u2afc\u0007M\u0002\u0002\u2afc\u2afd\u0007K\u0002",
+ "\u0002\u2afd\u2afe\u0007R\u0002\u0002\u2afe\u2aff\u0007a\u0002\u0002",
+ "\u2aff\u2b00\u0007U\u0002\u0002\u2b00\u2b01\u0007E\u0002\u0002\u2b01",
+ "\u2b02\u0007C\u0002\u0002\u2b02\u2b03\u0007P\u0002\u0002\u2b03\u0502",
+ "\u0003\u0002\u0002\u0002\u2b04\u2b05\u0007K\u0002\u0002\u2b05\u2b06",
+ "\u0007P\u0002\u0002\u2b06\u2b07\u0007F\u0002\u0002\u2b07\u2b08\u0007",
+ "G\u0002\u0002\u2b08\u2b09\u0007Z\u0002\u0002\u2b09\u2b0a\u0007a\u0002",
+ "\u0002\u2b0a\u2b0b\u0007U\u0002\u0002\u2b0b\u2b0c\u0007U\u0002\u0002",
+ "\u2b0c\u2b0d\u0007a\u0002\u0002\u2b0d\u2b0e\u0007C\u0002\u0002\u2b0e",
+ "\u2b0f\u0007U\u0002\u0002\u2b0f\u2b10\u0007E\u0002\u0002\u2b10\u0504",
+ "\u0003\u0002\u0002\u0002\u2b11\u2b12\u0007K\u0002\u0002\u2b12\u2b13",
+ "\u0007P\u0002\u0002\u2b13\u2b14\u0007F\u0002\u0002\u2b14\u2b15\u0007",
+ "G\u0002\u0002\u2b15\u2b16\u0007Z\u0002\u0002\u2b16\u2b17\u0007a\u0002",
+ "\u0002\u2b17\u2b18\u0007U\u0002\u0002\u2b18\u2b19\u0007U\u0002\u0002",
+ "\u2b19\u2b1a\u0007a\u0002\u0002\u2b1a\u2b1b\u0007F\u0002\u0002\u2b1b",
+ "\u2b1c\u0007G\u0002\u0002\u2b1c\u2b1d\u0007U\u0002\u0002\u2b1d\u2b1e",
+ "\u0007E\u0002\u0002\u2b1e\u0506\u0003\u0002\u0002\u0002\u2b1f\u2b20",
+ "\u0007K\u0002\u0002\u2b20\u2b21\u0007P\u0002\u0002\u2b21\u2b22\u0007",
+ "F\u0002\u0002\u2b22\u2b23\u0007G\u0002\u0002\u2b23\u2b24\u0007Z\u0002",
+ "\u0002\u2b24\u2b25\u0007a\u0002\u0002\u2b25\u2b26\u0007U\u0002\u0002",
+ "\u2b26\u2b27\u0007U\u0002\u0002\u2b27\u0508\u0003\u0002\u0002\u0002",
+ "\u2b28\u2b29\u0007K\u0002\u0002\u2b29\u2b2a\u0007P\u0002\u0002\u2b2a",
+ "\u2b2b\u0007F\u0002\u0002\u2b2b\u2b2c\u0007G\u0002\u0002\u2b2c\u2b2d",
+ "\u0007Z\u0002\u0002\u2b2d\u2b2e\u0007a\u0002\u0002\u2b2e\u2b2f\u0007",
+ "U\u0002\u0002\u2b2f\u2b30\u0007V\u0002\u0002\u2b30\u2b31\u0007C\u0002",
+ "\u0002\u2b31\u2b32\u0007V\u0002\u0002\u2b32\u2b33\u0007U\u0002\u0002",
+ "\u2b33\u050a\u0003\u0002\u0002\u0002\u2b34\u2b35\u0007K\u0002\u0002",
+ "\u2b35\u2b36\u0007P\u0002\u0002\u2b36\u2b37\u0007F\u0002\u0002\u2b37",
+ "\u2b38\u0007G\u0002\u0002\u2b38\u2b39\u0007Z\u0002\u0002\u2b39\u2b3a",
+ "\u0007V\u0002\u0002\u2b3a\u2b3b\u0007[\u0002\u0002\u2b3b\u2b3c\u0007",
+ "R\u0002\u0002\u2b3c\u2b3d\u0007G\u0002\u0002\u2b3d\u050c\u0003\u0002",
+ "\u0002\u0002\u2b3e\u2b3f\u0007K\u0002\u0002\u2b3f\u2b40\u0007P\u0002",
+ "\u0002\u2b40\u2b41\u0007F\u0002\u0002\u2b41\u2b42\u0007G\u0002\u0002",
+ "\u2b42\u2b43\u0007Z\u0002\u0002\u2b43\u2b44\u0007V\u0002\u0002\u2b44",
+ "\u2b45\u0007[\u0002\u0002\u2b45\u2b46\u0007R\u0002\u0002\u2b46\u2b47",
+ "\u0007G\u0002\u0002\u2b47\u2b48\u0007U\u0002\u0002\u2b48\u050e\u0003",
+ "\u0002\u0002\u0002\u2b49\u2b4a\u0007K\u0002\u0002\u2b4a\u2b4b\u0007",
+ "P\u0002\u0002\u2b4b\u2b4c\u0007F\u0002\u0002\u2b4c\u2b4d\u0007K\u0002",
+ "\u0002\u2b4d\u2b4e\u0007E\u0002\u0002\u2b4e\u2b4f\u0007C\u0002\u0002",
+ "\u2b4f\u2b50\u0007V\u0002\u0002\u2b50\u2b51\u0007Q\u0002\u0002\u2b51",
+ "\u2b52\u0007T\u0002\u0002\u2b52\u0510\u0003\u0002\u0002\u0002\u2b53",
+ "\u2b54\u0007K\u0002\u0002\u2b54\u2b55\u0007P\u0002\u0002\u2b55\u2b56",
+ "\u0007F\u0002\u0002\u2b56\u2b57\u0007K\u0002\u0002\u2b57\u2b58\u0007",
+ "E\u0002\u0002\u2b58\u2b59\u0007G\u0002\u0002\u2b59\u2b5a\u0007U\u0002",
+ "\u0002\u2b5a\u0512\u0003\u0002\u0002\u0002\u2b5b\u2b5c\u0007K\u0002",
+ "\u0002\u2b5c\u2b5d\u0007P\u0002\u0002\u2b5d\u2b5e\u0007H\u0002\u0002",
+ "\u2b5e\u2b5f\u0007K\u0002\u0002\u2b5f\u2b60\u0007P\u0002\u0002\u2b60",
+ "\u2b61\u0007K\u0002\u0002\u2b61\u2b62\u0007V\u0002\u0002\u2b62\u2b63",
+ "\u0007G\u0002\u0002\u2b63\u0514\u0003\u0002\u0002\u0002\u2b64\u2b65",
+ "\u0007K\u0002\u0002\u2b65\u2b66\u0007P\u0002\u0002\u2b66\u2b67\u0007",
+ "H\u0002\u0002\u2b67\u2b68\u0007Q\u0002\u0002\u2b68\u2b69\u0007T\u0002",
+ "\u0002\u2b69\u2b6a\u0007O\u0002\u0002\u2b6a\u2b6b\u0007C\u0002\u0002",
+ "\u2b6b\u2b6c\u0007V\u0002\u0002\u2b6c\u2b6d\u0007K\u0002\u0002\u2b6d",
+ "\u2b6e\u0007Q\u0002\u0002\u2b6e\u2b6f\u0007P\u0002\u0002\u2b6f\u2b70",
+ "\u0007C\u0002\u0002\u2b70\u2b71\u0007N\u0002\u0002\u2b71\u0516\u0003",
+ "\u0002\u0002\u0002\u2b72\u2b73\u0007K\u0002\u0002\u2b73\u2b74\u0007",
+ "P\u0002\u0002\u2b74\u2b75\u0007J\u0002\u0002\u2b75\u2b76\u0007G\u0002",
+ "\u0002\u2b76\u2b77\u0007T\u0002\u0002\u2b77\u2b78\u0007K\u0002\u0002",
+ "\u2b78\u2b79\u0007V\u0002\u0002\u2b79\u0518\u0003\u0002\u0002\u0002",
+ "\u2b7a\u2b7b\u0007K\u0002\u0002\u2b7b\u2b7c\u0007P\u0002\u0002\u2b7c",
+ "\u051a\u0003\u0002\u0002\u0002\u2b7d\u2b7e\u0007K\u0002\u0002\u2b7e",
+ "\u2b7f\u0007P\u0002\u0002\u2b7f\u2b80\u0007K\u0002\u0002\u2b80\u2b81",
+ "\u0007V\u0002\u0002\u2b81\u2b82\u0007E\u0002\u0002\u2b82\u2b83\u0007",
+ "C\u0002\u0002\u2b83\u2b84\u0007R\u0002\u0002\u2b84\u051c\u0003\u0002",
+ "\u0002\u0002\u2b85\u2b86\u0007K\u0002\u0002\u2b86\u2b87\u0007P\u0002",
+ "\u0002\u2b87\u2b88\u0007K\u0002\u0002\u2b88\u2b89\u0007V\u0002\u0002",
+ "\u2b89\u2b8a\u0007K\u0002\u0002\u2b8a\u2b8b\u0007C\u0002\u0002\u2b8b",
+ "\u2b8c\u0007N\u0002\u0002\u2b8c\u051e\u0003\u0002\u0002\u0002\u2b8d",
+ "\u2b8e\u0007K\u0002\u0002\u2b8e\u2b8f\u0007P\u0002\u0002\u2b8f\u2b90",
+ "\u0007K\u0002\u0002\u2b90\u2b91\u0007V\u0002\u0002\u2b91\u2b92\u0007",
+ "K\u0002\u0002\u2b92\u2b93\u0007C\u0002\u0002\u2b93\u2b94\u0007N\u0002",
+ "\u0002\u2b94\u2b95\u0007K\u0002\u0002\u2b95\u2b96\u0007\\\u0002\u0002",
+ "\u2b96\u2b97\u0007G\u0002\u0002\u2b97\u2b98\u0007F\u0002\u0002\u2b98",
+ "\u0520\u0003\u0002\u0002\u0002\u2b99\u2b9a\u0007K\u0002\u0002\u2b9a",
+ "\u2b9b\u0007P\u0002\u0002\u2b9b\u2b9c\u0007K\u0002\u0002\u2b9c\u2b9d",
+ "\u0007V\u0002\u0002\u2b9d\u2b9e\u0007K\u0002\u0002\u2b9e\u2b9f\u0007",
+ "C\u0002\u0002\u2b9f\u2ba0\u0007N\u0002\u0002\u2ba0\u2ba1\u0007N\u0002",
+ "\u0002\u2ba1\u2ba2\u0007[\u0002\u0002\u2ba2\u0522\u0003\u0002\u0002",
+ "\u0002\u2ba3\u2ba4\u0007K\u0002\u0002\u2ba4\u2ba5\u0007P\u0002\u0002",
+ "\u2ba5\u2ba6\u0007K\u0002\u0002\u2ba6\u2ba7\u0007V\u0002\u0002\u2ba7",
+ "\u2ba8\u0007T\u0002\u0002\u2ba8\u2ba9\u0007C\u0002\u0002\u2ba9\u2baa",
+ "\u0007P\u0002\u0002\u2baa\u2bab\u0007U\u0002\u0002\u2bab\u0524\u0003",
+ "\u0002\u0002\u0002\u2bac\u2bad\u0007K\u0002\u0002\u2bad\u2bae\u0007",
+ "P\u0002\u0002\u2bae\u2baf\u0007N\u0002\u0002\u2baf\u2bb0\u0007K\u0002",
+ "\u0002\u2bb0\u2bb1\u0007P\u0002\u0002\u2bb1\u2bb2\u0007G\u0002\u0002",
+ "\u2bb2\u0526\u0003\u0002\u0002\u0002\u2bb3\u2bb4\u0007K\u0002\u0002",
+ "\u2bb4\u2bb5\u0007P\u0002\u0002\u2bb5\u2bb6\u0007N\u0002\u0002\u2bb6",
+ "\u2bb7\u0007K\u0002\u0002\u2bb7\u2bb8\u0007P\u0002\u0002\u2bb8\u2bb9",
+ "\u0007G\u0002\u0002\u2bb9\u2bba\u0007a\u0002\u0002\u2bba\u2bbb\u0007",
+ "Z\u0002\u0002\u2bbb\u2bbc\u0007O\u0002\u0002\u2bbc\u2bbd\u0007N\u0002",
+ "\u0002\u2bbd\u2bbe\u0007V\u0002\u0002\u2bbe\u2bbf\u0007[\u0002\u0002",
+ "\u2bbf\u2bc0\u0007R\u0002\u0002\u2bc0\u2bc1\u0007G\u0002\u0002\u2bc1",
+ "\u2bc2\u0007a\u0002\u0002\u2bc2\u2bc3\u0007P\u0002\u0002\u2bc3\u2bc4",
+ "\u0007V\u0002\u0002\u2bc4\u0528\u0003\u0002\u0002\u0002\u2bc5\u2bc6",
+ "\u0007K\u0002\u0002\u2bc6\u2bc7\u0007P\u0002\u0002\u2bc7\u2bc8\u0007",
+ "O\u0002\u0002\u2bc8\u2bc9\u0007G\u0002\u0002\u2bc9\u2bca\u0007O\u0002",
+ "\u0002\u2bca\u2bcb\u0007Q\u0002\u0002\u2bcb\u2bcc\u0007T\u0002\u0002",
+ "\u2bcc\u2bcd\u0007[\u0002\u0002\u2bcd\u052a\u0003\u0002\u0002\u0002",
+ "\u2bce\u2bcf\u0007K\u0002\u0002\u2bcf\u2bd0\u0007P\u0002\u0002\u2bd0",
+ "\u2bd1\u0007a\u0002\u0002\u2bd1\u2bd2\u0007O\u0002\u0002\u2bd2\u2bd3",
+ "\u0007G\u0002\u0002\u2bd3\u2bd4\u0007O\u0002\u0002\u2bd4\u2bd5\u0007",
+ "Q\u0002\u0002\u2bd5\u2bd6\u0007T\u0002\u0002\u2bd6\u2bd7\u0007[\u0002",
+ "\u0002\u2bd7\u2bd8\u0007a\u0002\u0002\u2bd8\u2bd9\u0007O\u0002\u0002",
+ "\u2bd9\u2bda\u0007G\u0002\u0002\u2bda\u2bdb\u0007V\u0002\u0002\u2bdb",
+ "\u2bdc\u0007C\u0002\u0002\u2bdc\u2bdd\u0007F\u0002\u0002\u2bdd\u2bde",
+ "\u0007C\u0002\u0002\u2bde\u2bdf\u0007V\u0002\u0002\u2bdf\u2be0\u0007",
+ "C\u0002\u0002\u2be0\u052c\u0003\u0002\u0002\u0002\u2be1\u2be2\u0007",
+ "K\u0002\u0002\u2be2\u2be3\u0007P\u0002\u0002\u2be3\u2be4\u0007O\u0002",
+ "\u0002\u2be4\u2be5\u0007G\u0002\u0002\u2be5\u2be6\u0007O\u0002\u0002",
+ "\u2be6\u2be7\u0007Q\u0002\u0002\u2be7\u2be8\u0007T\u0002\u0002\u2be8",
+ "\u2be9\u0007[\u0002\u0002\u2be9\u2bea\u0007a\u0002\u0002\u2bea\u2beb",
+ "\u0007R\u0002\u0002\u2beb\u2bec\u0007T\u0002\u0002\u2bec\u2bed\u0007",
+ "W\u0002\u0002\u2bed\u2bee\u0007P\u0002\u0002\u2bee\u2bef\u0007K\u0002",
+ "\u0002\u2bef\u2bf0\u0007P\u0002\u0002\u2bf0\u2bf1\u0007I\u0002\u0002",
+ "\u2bf1\u052e\u0003\u0002\u0002\u0002\u2bf2\u2bf3\u0007K\u0002\u0002",
+ "\u2bf3\u2bf4\u0007P\u0002\u0002\u2bf4\u2bf5\u0007P\u0002\u0002\u2bf5",
+ "\u2bf6\u0007G\u0002\u0002\u2bf6\u2bf7\u0007T\u0002\u0002\u2bf7\u0530",
+ "\u0003\u0002\u0002\u0002\u2bf8\u2bf9\u0007K\u0002\u0002\u2bf9\u2bfa",
+ "\u0007P\u0002\u0002\u2bfa\u2bfb\u0007Q\u0002\u0002\u2bfb\u2bfc\u0007",
+ "W\u0002\u0002\u2bfc\u2bfd\u0007V\u0002\u0002\u2bfd\u0532\u0003\u0002",
+ "\u0002\u0002\u2bfe\u2bff\u0007K\u0002\u0002\u2bff\u2c00\u0007P\u0002",
+ "\u0002\u2c00\u2c01\u0007R\u0002\u0002\u2c01\u2c02\u0007N\u0002\u0002",
+ "\u2c02\u2c03\u0007C\u0002\u0002\u2c03\u2c04\u0007E\u0002\u0002\u2c04",
+ "\u2c05\u0007G\u0002\u0002\u2c05\u0534\u0003\u0002\u0002\u0002\u2c06",
+ "\u2c07\u0007K\u0002\u0002\u2c07\u2c08\u0007P\u0002\u0002\u2c08\u2c09",
+ "\u0007U\u0002\u0002\u2c09\u2c0a\u0007G\u0002\u0002\u2c0a\u2c0b\u0007",
+ "T\u0002\u0002\u2c0b\u2c0c\u0007V\u0002\u0002\u2c0c\u2c0d\u0007E\u0002",
+ "\u0002\u2c0d\u2c0e\u0007J\u0002\u0002\u2c0e\u2c0f\u0007K\u0002\u0002",
+ "\u2c0f\u2c10\u0007N\u0002\u0002\u2c10\u2c11\u0007F\u0002\u0002\u2c11",
+ "\u2c12\u0007Z\u0002\u0002\u2c12\u2c13\u0007O\u0002\u0002\u2c13\u2c14",
+ "\u0007N\u0002\u0002\u2c14\u2c15\u0007C\u0002\u0002\u2c15\u2c16\u0007",
+ "H\u0002\u0002\u2c16\u2c17\u0007V\u0002\u0002\u2c17\u2c18\u0007G\u0002",
+ "\u0002\u2c18\u2c19\u0007T\u0002\u0002\u2c19\u0536\u0003\u0002\u0002",
+ "\u0002\u2c1a\u2c1b\u0007K\u0002\u0002\u2c1b\u2c1c\u0007P\u0002\u0002",
+ "\u2c1c\u2c1d\u0007U\u0002\u0002\u2c1d\u2c1e\u0007G\u0002\u0002\u2c1e",
+ "\u2c1f\u0007T\u0002\u0002\u2c1f\u2c20\u0007V\u0002\u0002\u2c20\u2c21",
+ "\u0007E\u0002\u0002\u2c21\u2c22\u0007J\u0002\u0002\u2c22\u2c23\u0007",
+ "K\u0002\u0002\u2c23\u2c24\u0007N\u0002\u0002\u2c24\u2c25\u0007F\u0002",
+ "\u0002\u2c25\u2c26\u0007Z\u0002\u0002\u2c26\u2c27\u0007O\u0002\u0002",
+ "\u2c27\u2c28\u0007N\u0002\u0002\u2c28\u2c29\u0007D\u0002\u0002\u2c29",
+ "\u2c2a\u0007G\u0002\u0002\u2c2a\u2c2b\u0007H\u0002\u0002\u2c2b\u2c2c",
+ "\u0007Q\u0002\u0002\u2c2c\u2c2d\u0007T\u0002\u0002\u2c2d\u2c2e\u0007",
+ "G\u0002\u0002\u2c2e\u0538\u0003\u0002\u0002\u0002\u2c2f\u2c30\u0007",
+ "K\u0002\u0002\u2c30\u2c31\u0007P\u0002\u0002\u2c31\u2c32\u0007U\u0002",
+ "\u0002\u2c32\u2c33\u0007G\u0002\u0002\u2c33\u2c34\u0007T\u0002\u0002",
+ "\u2c34\u2c35\u0007V\u0002\u0002\u2c35\u2c36\u0007E\u0002\u0002\u2c36",
+ "\u2c37\u0007J\u0002\u0002\u2c37\u2c38\u0007K\u0002\u0002\u2c38\u2c39",
+ "\u0007N\u0002\u0002\u2c39\u2c3a\u0007F\u0002\u0002\u2c3a\u2c3b\u0007",
+ "Z\u0002\u0002\u2c3b\u2c3c\u0007O\u0002\u0002\u2c3c\u2c3d\u0007N\u0002",
+ "\u0002\u2c3d\u053a\u0003\u0002\u0002\u0002\u2c3e\u2c3f\u0007K\u0002",
+ "\u0002\u2c3f\u2c40\u0007P\u0002\u0002\u2c40\u2c41\u0007U\u0002\u0002",
+ "\u2c41\u2c42\u0007G\u0002\u0002\u2c42\u2c43\u0007T\u0002\u0002\u2c43",
+ "\u2c44\u0007V\u0002\u0002\u2c44\u053c\u0003\u0002\u0002\u0002\u2c45",
+ "\u2c46\u0007K\u0002\u0002\u2c46\u2c47\u0007P\u0002\u0002\u2c47\u2c48",
+ "\u0007U\u0002\u0002\u2c48\u2c49\u0007G\u0002\u0002\u2c49\u2c4a\u0007",
+ "T\u0002\u0002\u2c4a\u2c4b\u0007V\u0002\u0002\u2c4b\u2c4c\u0007Z\u0002",
+ "\u0002\u2c4c\u2c4d\u0007O\u0002\u0002\u2c4d\u2c4e\u0007N\u0002\u0002",
+ "\u2c4e\u2c4f\u0007C\u0002\u0002\u2c4f\u2c50\u0007H\u0002\u0002\u2c50",
+ "\u2c51\u0007V\u0002\u0002\u2c51\u2c52\u0007G\u0002\u0002\u2c52\u2c53",
+ "\u0007T\u0002\u0002\u2c53\u053e\u0003\u0002\u0002\u0002\u2c54\u2c55",
+ "\u0007K\u0002\u0002\u2c55\u2c56\u0007P\u0002\u0002\u2c56\u2c57\u0007",
+ "U\u0002\u0002\u2c57\u2c58\u0007G\u0002\u0002\u2c58\u2c59\u0007T\u0002",
+ "\u0002\u2c59\u2c5a\u0007V\u0002\u0002\u2c5a\u2c5b\u0007Z\u0002\u0002",
+ "\u2c5b\u2c5c\u0007O\u0002\u0002\u2c5c\u2c5d\u0007N\u0002\u0002\u2c5d",
+ "\u2c5e\u0007D\u0002\u0002\u2c5e\u2c5f\u0007G\u0002\u0002\u2c5f\u2c60",
+ "\u0007H\u0002\u0002\u2c60\u2c61\u0007Q\u0002\u0002\u2c61\u2c62\u0007",
+ "T\u0002\u0002\u2c62\u2c63\u0007G\u0002\u0002\u2c63\u0540\u0003\u0002",
+ "\u0002\u0002\u2c64\u2c65\u0007K\u0002\u0002\u2c65\u2c66\u0007P\u0002",
+ "\u0002\u2c66\u2c67\u0007U\u0002\u0002\u2c67\u2c68\u0007V\u0002\u0002",
+ "\u2c68\u2c69\u0007C\u0002\u0002\u2c69\u2c6a\u0007P\u0002\u0002\u2c6a",
+ "\u2c6b\u0007E\u0002\u0002\u2c6b\u2c6c\u0007G\u0002\u0002\u2c6c\u0542",
+ "\u0003\u0002\u0002\u0002\u2c6d\u2c6e\u0007K\u0002\u0002\u2c6e\u2c6f",
+ "\u0007P\u0002\u0002\u2c6f\u2c70\u0007U\u0002\u0002\u2c70\u2c71\u0007",
+ "V\u0002\u0002\u2c71\u2c72\u0007C\u0002\u0002\u2c72\u2c73\u0007P\u0002",
+ "\u0002\u2c73\u2c74\u0007E\u0002\u0002\u2c74\u2c75\u0007G\u0002\u0002",
+ "\u2c75\u2c76\u0007U\u0002\u0002\u2c76\u0544\u0003\u0002\u0002\u0002",
+ "\u2c77\u2c78\u0007K\u0002\u0002\u2c78\u2c79\u0007P\u0002\u0002\u2c79",
+ "\u2c7a\u0007U\u0002\u0002\u2c7a\u2c7b\u0007V\u0002\u0002\u2c7b\u2c7c",
+ "\u0007C\u0002\u0002\u2c7c\u2c7d\u0007P\u0002\u0002\u2c7d\u2c7e\u0007",
+ "V\u0002\u0002\u2c7e\u2c7f\u0007K\u0002\u0002\u2c7f\u2c80\u0007C\u0002",
+ "\u0002\u2c80\u2c81\u0007D\u0002\u0002\u2c81\u2c82\u0007N\u0002\u0002",
+ "\u2c82\u2c83\u0007G\u0002\u0002\u2c83\u0546\u0003\u0002\u0002\u0002",
+ "\u2c84\u2c85\u0007K\u0002\u0002\u2c85\u2c86\u0007P\u0002\u0002\u2c86",
+ "\u2c87\u0007U\u0002\u0002\u2c87\u2c88\u0007V\u0002\u0002\u2c88\u2c89",
+ "\u0007C\u0002\u0002\u2c89\u2c8a\u0007P\u0002\u0002\u2c8a\u2c8b\u0007",
+ "V\u0002\u0002\u2c8b\u2c8c\u0007N\u0002\u0002\u2c8c\u2c8d\u0007[\u0002",
+ "\u0002\u2c8d\u0548\u0003\u0002\u0002\u0002\u2c8e\u2c8f\u0007K\u0002",
+ "\u0002\u2c8f\u2c90\u0007P\u0002\u0002\u2c90\u2c91\u0007U\u0002\u0002",
+ "\u2c91\u2c92\u0007V\u0002\u0002\u2c92\u2c93\u0007G\u0002\u0002\u2c93",
+ "\u2c94\u0007C\u0002\u0002\u2c94\u2c95\u0007F\u0002\u0002\u2c95\u054a",
+ "\u0003\u0002\u0002\u0002\u2c96\u2c97\u0007K\u0002\u0002\u2c97\u2c98",
+ "\u0007P\u0002\u0002\u2c98\u2c99\u0007U\u0002\u0002\u2c99\u2c9a\u0007",
+ "V\u0002\u0002\u2c9a\u2c9b\u0007T\u0002\u0002\u2c9b\u2c9c\u00074\u0002",
+ "\u0002\u2c9c\u054c\u0003\u0002\u0002\u0002\u2c9d\u2c9e\u0007K\u0002",
+ "\u0002\u2c9e\u2c9f\u0007P\u0002\u0002\u2c9f\u2ca0\u0007U\u0002\u0002",
+ "\u2ca0\u2ca1\u0007V\u0002\u0002\u2ca1\u2ca2\u0007T\u0002\u0002\u2ca2",
+ "\u2ca3\u00076\u0002\u0002\u2ca3\u054e\u0003\u0002\u0002\u0002\u2ca4",
+ "\u2ca5\u0007K\u0002\u0002\u2ca5\u2ca6\u0007P\u0002\u0002\u2ca6\u2ca7",
+ "\u0007U\u0002\u0002\u2ca7\u2ca8\u0007V\u0002\u0002\u2ca8\u2ca9\u0007",
+ "T\u0002\u0002\u2ca9\u2caa\u0007D\u0002\u0002\u2caa\u0550\u0003\u0002",
+ "\u0002\u0002\u2cab\u2cac\u0007K\u0002\u0002\u2cac\u2cad\u0007P\u0002",
+ "\u0002\u2cad\u2cae\u0007U\u0002\u0002\u2cae\u2caf\u0007V\u0002\u0002",
+ "\u2caf\u2cb0\u0007T\u0002\u0002\u2cb0\u2cb1\u0007E\u0002\u0002\u2cb1",
+ "\u0552\u0003\u0002\u0002\u0002\u2cb2\u2cb3\u0007K\u0002\u0002\u2cb3",
+ "\u2cb4\u0007P\u0002\u0002\u2cb4\u2cb5\u0007U\u0002\u0002\u2cb5\u2cb6",
+ "\u0007V\u0002\u0002\u2cb6\u2cb7\u0007T\u0002\u0002\u2cb7\u0554\u0003",
+ "\u0002\u0002\u0002\u2cb8\u2cb9\u0007K\u0002\u0002\u2cb9\u2cba\u0007",
+ "P\u0002\u0002\u2cba\u2cbb\u0007V\u0002\u0002\u2cbb\u2cbc\u0007G\u0002",
+ "\u0002\u2cbc\u2cbd\u0007I\u0002\u0002\u2cbd\u2cbe\u0007G\u0002\u0002",
+ "\u2cbe\u2cbf\u0007T\u0002\u0002\u2cbf\u0556\u0003\u0002\u0002\u0002",
+ "\u2cc0\u2cc1\u0007K\u0002\u0002\u2cc1\u2cc2\u0007P\u0002\u0002\u2cc2",
+ "\u2cc3\u0007V\u0002\u0002\u2cc3\u2cc4\u0007G\u0002\u0002\u2cc4\u2cc5",
+ "\u0007T\u0002\u0002\u2cc5\u2cc6\u0007N\u0002\u0002\u2cc6\u2cc7\u0007",
+ "G\u0002\u0002\u2cc7\u2cc8\u0007C\u0002\u0002\u2cc8\u2cc9\u0007X\u0002",
+ "\u0002\u2cc9\u2cca\u0007G\u0002\u0002\u2cca\u2ccb\u0007F\u0002\u0002",
+ "\u2ccb\u0558\u0003\u0002\u0002\u0002\u2ccc\u2ccd\u0007K\u0002\u0002",
+ "\u2ccd\u2cce\u0007P\u0002\u0002\u2cce\u2ccf\u0007V\u0002\u0002\u2ccf",
+ "\u2cd0\u0007G\u0002\u0002\u2cd0\u2cd1\u0007T\u0002\u0002\u2cd1\u2cd2",
+ "\u0007O\u0002\u0002\u2cd2\u2cd3\u0007G\u0002\u0002\u2cd3\u2cd4\u0007",
+ "F\u0002\u0002\u2cd4\u2cd5\u0007K\u0002\u0002\u2cd5\u2cd6\u0007C\u0002",
+ "\u0002\u2cd6\u2cd7\u0007V\u0002\u0002\u2cd7\u2cd8\u0007G\u0002\u0002",
+ "\u2cd8\u055a\u0003\u0002\u0002\u0002\u2cd9\u2cda\u0007K\u0002\u0002",
+ "\u2cda\u2cdb\u0007P\u0002\u0002\u2cdb\u2cdc\u0007V\u0002\u0002\u2cdc",
+ "\u2cdd\u0007G\u0002\u0002\u2cdd\u2cde\u0007T\u0002\u0002\u2cde\u2cdf",
+ "\u0007P\u0002\u0002\u2cdf\u2ce0\u0007C\u0002\u0002\u2ce0\u2ce1\u0007",
+ "N\u0002\u0002\u2ce1\u2ce2\u0007a\u0002\u0002\u2ce2\u2ce3\u0007E\u0002",
+ "\u0002\u2ce3\u2ce4\u0007Q\u0002\u0002\u2ce4\u2ce5\u0007P\u0002\u0002",
+ "\u2ce5\u2ce6\u0007X\u0002\u0002\u2ce6\u2ce7\u0007G\u0002\u0002\u2ce7",
+ "\u2ce8\u0007T\u0002\u0002\u2ce8\u2ce9\u0007V\u0002\u0002\u2ce9\u055c",
+ "\u0003\u0002\u0002\u0002\u2cea\u2ceb\u0007K\u0002\u0002\u2ceb\u2cec",
+ "\u0007P\u0002\u0002\u2cec\u2ced\u0007V\u0002\u0002\u2ced\u2cee\u0007",
+ "G\u0002\u0002\u2cee\u2cef\u0007T\u0002\u0002\u2cef\u2cf0\u0007P\u0002",
+ "\u0002\u2cf0\u2cf1\u0007C\u0002\u0002\u2cf1\u2cf2\u0007N\u0002\u0002",
+ "\u2cf2\u2cf3\u0007a\u0002\u0002\u2cf3\u2cf4\u0007W\u0002\u0002\u2cf4",
+ "\u2cf5\u0007U\u0002\u0002\u2cf5\u2cf6\u0007G\u0002\u0002\u2cf6\u055e",
+ "\u0003\u0002\u0002\u0002\u2cf7\u2cf8\u0007K\u0002\u0002\u2cf8\u2cf9",
+ "\u0007P\u0002\u0002\u2cf9\u2cfa\u0007V\u0002\u0002\u2cfa\u2cfb\u0007",
+ "G\u0002\u0002\u2cfb\u2cfc\u0007T\u0002\u0002\u2cfc\u2cfd\u0007R\u0002",
+ "\u0002\u2cfd\u2cfe\u0007T\u0002\u0002\u2cfe\u2cff\u0007G\u0002\u0002",
+ "\u2cff\u2d00\u0007V\u0002\u0002\u2d00\u2d01\u0007G\u0002\u0002\u2d01",
+ "\u2d02\u0007F\u0002\u0002\u2d02\u0560\u0003\u0002\u0002\u0002\u2d03",
+ "\u2d04\u0007K\u0002\u0002\u2d04\u2d05\u0007P\u0002\u0002\u2d05\u2d06",
+ "\u0007V\u0002\u0002\u2d06\u2d07\u0007G\u0002\u0002\u2d07\u2d08\u0007",
+ "T\u0002\u0002\u2d08\u2d09\u0007U\u0002\u0002\u2d09\u2d0a\u0007G\u0002",
+ "\u0002\u2d0a\u2d0b\u0007E\u0002\u0002\u2d0b\u2d0c\u0007V\u0002\u0002",
+ "\u2d0c\u0562\u0003\u0002\u0002\u0002\u2d0d\u2d0e\u0007K\u0002\u0002",
+ "\u2d0e\u2d0f\u0007P\u0002\u0002\u2d0f\u2d10\u0007V\u0002\u0002\u2d10",
+ "\u2d11\u0007G\u0002\u0002\u2d11\u2d12\u0007T\u0002\u0002\u2d12\u2d13",
+ "\u0007X\u0002\u0002\u2d13\u2d14\u0007C\u0002\u0002\u2d14\u2d15\u0007",
+ "N\u0002\u0002\u2d15\u0564\u0003\u0002\u0002\u0002\u2d16\u2d17\u0007",
+ "K\u0002\u0002\u2d17\u2d18\u0007P\u0002\u0002\u2d18\u2d19\u0007V\u0002",
+ "\u0002\u2d19\u0566\u0003\u0002\u0002\u0002\u2d1a\u2d1b\u0007K\u0002",
+ "\u0002\u2d1b\u2d1c\u0007P\u0002\u0002\u2d1c\u2d1d\u0007V\u0002\u0002",
+ "\u2d1d\u2d1e\u0007Q\u0002\u0002\u2d1e\u0568\u0003\u0002\u0002\u0002",
+ "\u2d1f\u2d20\u0007K\u0002\u0002\u2d20\u2d21\u0007P\u0002\u0002\u2d21",
+ "\u2d22\u0007X\u0002\u0002\u2d22\u2d23\u0007C\u0002\u0002\u2d23\u2d24",
+ "\u0007N\u0002\u0002\u2d24\u2d25\u0007K\u0002\u0002\u2d25\u2d26\u0007",
+ "F\u0002\u0002\u2d26\u2d27\u0007C\u0002\u0002\u2d27\u2d28\u0007V\u0002",
+ "\u0002\u2d28\u2d29\u0007G\u0002\u0002\u2d29\u056a\u0003\u0002\u0002",
+ "\u0002\u2d2a\u2d2b\u0007K\u0002\u0002\u2d2b\u2d2c\u0007P\u0002\u0002",
+ "\u2d2c\u2d2d\u0007X\u0002\u0002\u2d2d\u2d2e\u0007K\u0002\u0002\u2d2e",
+ "\u2d2f\u0007U\u0002\u0002\u2d2f\u2d30\u0007K\u0002\u0002\u2d30\u2d31",
+ "\u0007D\u0002\u0002\u2d31\u2d32\u0007N\u0002\u0002\u2d32\u2d33\u0007",
+ "G\u0002\u0002\u2d33\u056c\u0003\u0002\u0002\u0002\u2d34\u2d35\u0007",
+ "K\u0002\u0002\u2d35\u2d36\u0007P\u0002\u0002\u2d36\u2d37\u0007a\u0002",
+ "\u0002\u2d37\u2d38\u0007Z\u0002\u0002\u2d38\u2d39\u0007S\u0002\u0002",
+ "\u2d39\u2d3a\u0007W\u0002\u0002\u2d3a\u2d3b\u0007G\u0002\u0002\u2d3b",
+ "\u2d3c\u0007T\u0002\u0002\u2d3c\u2d3d\u0007[\u0002\u0002\u2d3d\u056e",
+ "\u0003\u0002\u0002\u0002\u2d3e\u2d3f\u0007K\u0002\u0002\u2d3f\u2d40",
+ "\u0007U\u0002\u0002\u2d40\u0570\u0003\u0002\u0002\u0002\u2d41\u2d42",
+ "\u0007K\u0002\u0002\u2d42\u2d43\u0007U\u0002\u0002\u2d43\u2d44\u0007",
+ "Q\u0002\u0002\u2d44\u2d45\u0007N\u0002\u0002\u2d45\u2d46\u0007C\u0002",
+ "\u0002\u2d46\u2d47\u0007V\u0002\u0002\u2d47\u2d48\u0007K\u0002\u0002",
+ "\u2d48\u2d49\u0007Q\u0002\u0002\u2d49\u2d4a\u0007P\u0002\u0002\u2d4a",
+ "\u0572\u0003\u0002\u0002\u0002\u2d4b\u2d4c\u0007K\u0002\u0002\u2d4c",
+ "\u2d4d\u0007U\u0002\u0002\u2d4d\u2d4e\u0007Q\u0002\u0002\u2d4e\u2d4f",
+ "\u0007N\u0002\u0002\u2d4f\u2d50\u0007C\u0002\u0002\u2d50\u2d51\u0007",
+ "V\u0002\u0002\u2d51\u2d52\u0007K\u0002\u0002\u2d52\u2d53\u0007Q\u0002",
+ "\u0002\u2d53\u2d54\u0007P\u0002\u0002\u2d54\u2d55\u0007a\u0002\u0002",
+ "\u2d55\u2d56\u0007N\u0002\u0002\u2d56\u2d57\u0007G\u0002\u0002\u2d57",
+ "\u2d58\u0007X\u0002\u0002\u2d58\u2d59\u0007G\u0002\u0002\u2d59\u2d5a",
+ "\u0007N\u0002\u0002\u2d5a\u0574\u0003\u0002\u0002\u0002\u2d5b\u2d5c",
+ "\u0007K\u0002\u0002\u2d5c\u2d5d\u0007V\u0002\u0002\u2d5d\u2d5e\u0007",
+ "G\u0002\u0002\u2d5e\u2d5f\u0007T\u0002\u0002\u2d5f\u2d60\u0007C\u0002",
+ "\u0002\u2d60\u2d61\u0007V\u0002\u0002\u2d61\u2d62\u0007G\u0002\u0002",
+ "\u2d62\u0576\u0003\u0002\u0002\u0002\u2d63\u2d64\u0007K\u0002\u0002",
+ "\u2d64\u2d65\u0007V\u0002\u0002\u2d65\u2d66\u0007G\u0002\u0002\u2d66",
+ "\u2d67\u0007T\u0002\u0002\u2d67\u2d68\u0007C\u0002\u0002\u2d68\u2d69",
+ "\u0007V\u0002\u0002\u2d69\u2d6a\u0007K\u0002\u0002\u2d6a\u2d6b\u0007",
+ "Q\u0002\u0002\u2d6b\u2d6c\u0007P\u0002\u0002\u2d6c\u2d6d\u0007a\u0002",
+ "\u0002\u2d6d\u2d6e\u0007P\u0002\u0002\u2d6e\u2d6f\u0007W\u0002\u0002",
+ "\u2d6f\u2d70\u0007O\u0002\u0002\u2d70\u2d71\u0007D\u0002\u0002\u2d71",
+ "\u2d72\u0007G\u0002\u0002\u2d72\u2d73\u0007T\u0002\u0002\u2d73\u0578",
+ "\u0003\u0002\u0002\u0002\u2d74\u2d75\u0007L\u0002\u0002\u2d75\u2d76",
+ "\u0007C\u0002\u0002\u2d76\u2d77\u0007X\u0002\u0002\u2d77\u2d78\u0007",
+ "C\u0002\u0002\u2d78\u057a\u0003\u0002\u0002\u0002\u2d79\u2d7a\u0007",
+ "L\u0002\u0002\u2d7a\u2d7b\u0007Q\u0002\u0002\u2d7b\u2d7c\u0007D\u0002",
+ "\u0002\u2d7c\u057c\u0003\u0002\u0002\u0002\u2d7d\u2d7e\u0007L\u0002",
+ "\u0002\u2d7e\u2d7f\u0007Q\u0002\u0002\u2d7f\u2d80\u0007K\u0002\u0002",
+ "\u2d80\u2d81\u0007P\u0002\u0002\u2d81\u057e\u0003\u0002\u0002\u0002",
+ "\u2d82\u2d83\u0007L\u0002\u0002\u2d83\u2d84\u0007U\u0002\u0002\u2d84",
+ "\u2d85\u0007Q\u0002\u0002\u2d85\u2d86\u0007P\u0002\u0002\u2d86\u2d87",
+ "\u0007a\u0002\u0002\u2d87\u2d88\u0007C\u0002\u0002\u2d88\u2d89\u0007",
+ "T\u0002\u0002\u2d89\u2d8a\u0007T\u0002\u0002\u2d8a\u2d8b\u0007C\u0002",
+ "\u0002\u2d8b\u2d8c\u0007[\u0002\u0002\u2d8c\u2d8d\u0007C\u0002\u0002",
+ "\u2d8d\u2d8e\u0007I\u0002\u0002\u2d8e\u2d8f\u0007I\u0002\u0002\u2d8f",
+ "\u0580\u0003\u0002\u0002\u0002\u2d90\u2d91\u0007L\u0002\u0002\u2d91",
+ "\u2d92\u0007U\u0002\u0002\u2d92\u2d93\u0007Q\u0002\u0002\u2d93\u2d94",
+ "\u0007P\u0002\u0002\u2d94\u2d95\u0007a\u0002\u0002\u2d95\u2d96\u0007",
+ "C\u0002\u0002\u2d96\u2d97\u0007T\u0002\u0002\u2d97\u2d98\u0007T\u0002",
+ "\u0002\u2d98\u2d99\u0007C\u0002\u0002\u2d99\u2d9a\u0007[\u0002\u0002",
+ "\u2d9a\u0582\u0003\u0002\u0002\u0002\u2d9b\u2d9c\u0007L\u0002\u0002",
+ "\u2d9c\u2d9d\u0007U\u0002\u0002\u2d9d\u2d9e\u0007Q\u0002\u0002\u2d9e",
+ "\u2d9f\u0007P\u0002\u0002\u2d9f\u2da0\u0007a\u0002\u0002\u2da0\u2da1",
+ "\u0007G\u0002\u0002\u2da1\u2da2\u0007S\u0002\u0002\u2da2\u2da3\u0007",
+ "W\u0002\u0002\u2da3\u2da4\u0007C\u0002\u0002\u2da4\u2da5\u0007N\u0002",
+ "\u0002\u2da5\u0584\u0003\u0002\u0002\u0002\u2da6\u2da7\u0007L\u0002",
+ "\u0002\u2da7\u2da8\u0007U\u0002\u0002\u2da8\u2da9\u0007Q\u0002\u0002",
+ "\u2da9\u2daa\u0007P\u0002\u0002\u2daa\u2dab\u0007a\u0002\u0002\u2dab",
+ "\u2dac\u0007G\u0002\u0002\u2dac\u2dad\u0007Z\u0002\u0002\u2dad\u2dae",
+ "\u0007K\u0002\u0002\u2dae\u2daf\u0007U\u0002\u0002\u2daf\u2db0\u0007",
+ "V\u0002\u0002\u2db0\u2db1\u0007U\u0002\u0002\u2db1\u2db2\u00074\u0002",
+ "\u0002\u2db2\u0586\u0003\u0002\u0002\u0002\u2db3\u2db4\u0007L\u0002",
+ "\u0002\u2db4\u2db5\u0007U\u0002\u0002\u2db5\u2db6\u0007Q\u0002\u0002",
+ "\u2db6\u2db7\u0007P\u0002\u0002\u2db7\u2db8\u0007a\u0002\u0002\u2db8",
+ "\u2db9\u0007G\u0002\u0002\u2db9\u2dba\u0007Z\u0002\u0002\u2dba\u2dbb",
+ "\u0007K\u0002\u0002\u2dbb\u2dbc\u0007U\u0002\u0002\u2dbc\u2dbd\u0007",
+ "V\u0002\u0002\u2dbd\u2dbe\u0007U\u0002\u0002\u2dbe\u0588\u0003\u0002",
+ "\u0002\u0002\u2dbf\u2dc0\u0007L\u0002\u0002\u2dc0\u2dc1\u0007U\u0002",
+ "\u0002\u2dc1\u2dc2\u0007Q\u0002\u0002\u2dc2\u2dc3\u0007P\u0002\u0002",
+ "\u2dc3\u2dc4\u0007I\u0002\u0002\u2dc4\u2dc5\u0007G\u0002\u0002\u2dc5",
+ "\u2dc6\u0007V\u0002\u0002\u2dc6\u058a\u0003\u0002\u0002\u0002\u2dc7",
+ "\u2dc8\u0007L\u0002\u0002\u2dc8\u2dc9\u0007U\u0002\u0002\u2dc9\u2dca",
+ "\u0007Q\u0002\u0002\u2dca\u2dcb\u0007P\u0002\u0002\u2dcb\u058c\u0003",
+ "\u0002\u0002\u0002\u2dcc\u2dcd\u0007L\u0002\u0002\u2dcd\u2dce\u0007",
+ "U\u0002\u0002\u2dce\u2dcf\u0007Q\u0002\u0002\u2dcf\u2dd0\u0007P\u0002",
+ "\u0002\u2dd0\u2dd1\u0007a\u0002\u0002\u2dd1\u2dd2\u0007Q\u0002\u0002",
+ "\u2dd2\u2dd3\u0007D\u0002\u0002\u2dd3\u2dd4\u0007L\u0002\u0002\u2dd4",
+ "\u2dd5\u0007G\u0002\u0002\u2dd5\u2dd6\u0007E\u0002\u0002\u2dd6\u2dd7",
+ "\u0007V\u0002\u0002\u2dd7\u2dd8\u0007C\u0002\u0002\u2dd8\u2dd9\u0007",
+ "I\u0002\u0002\u2dd9\u2dda\u0007I\u0002\u0002\u2dda\u058e\u0003\u0002",
+ "\u0002\u0002\u2ddb\u2ddc\u0007L\u0002\u0002\u2ddc\u2ddd\u0007U\u0002",
+ "\u0002\u2ddd\u2dde\u0007Q\u0002\u0002\u2dde\u2ddf\u0007P\u0002\u0002",
+ "\u2ddf\u2de0\u0007a\u0002\u0002\u2de0\u2de1\u0007Q\u0002\u0002\u2de1",
+ "\u2de2\u0007D\u0002\u0002\u2de2\u2de3\u0007L\u0002\u0002\u2de3\u2de4",
+ "\u0007G\u0002\u0002\u2de4\u2de5\u0007E\u0002\u0002\u2de5\u2de6\u0007",
+ "V\u0002\u0002\u2de6\u0590\u0003\u0002\u0002\u0002\u2de7\u2de8\u0007",
+ "L\u0002\u0002\u2de8\u2de9\u0007U\u0002\u0002\u2de9\u2dea\u0007Q\u0002",
+ "\u0002\u2dea\u2deb\u0007P\u0002\u0002\u2deb\u2dec\u0007R\u0002\u0002",
+ "\u2dec\u2ded\u0007C\u0002\u0002\u2ded\u2dee\u0007T\u0002\u0002\u2dee",
+ "\u2def\u0007U\u0002\u0002\u2def\u2df0\u0007G\u0002\u0002\u2df0\u0592",
+ "\u0003\u0002\u0002\u0002\u2df1\u2df2\u0007L\u0002\u0002\u2df2\u2df3",
+ "\u0007U\u0002\u0002\u2df3\u2df4\u0007Q\u0002\u0002\u2df4\u2df5\u0007",
+ "P\u0002\u0002\u2df5\u2df6\u0007a\u0002\u0002\u2df6\u2df7\u0007S\u0002",
+ "\u0002\u2df7\u2df8\u0007W\u0002\u0002\u2df8\u2df9\u0007G\u0002\u0002",
+ "\u2df9\u2dfa\u0007T\u0002\u0002\u2dfa\u2dfb\u0007[\u0002\u0002\u2dfb",
+ "\u0594\u0003\u0002\u0002\u0002\u2dfc\u2dfd\u0007L\u0002\u0002\u2dfd",
+ "\u2dfe\u0007U\u0002\u0002\u2dfe\u2dff\u0007Q\u0002\u0002\u2dff\u2e00",
+ "\u0007P\u0002\u0002\u2e00\u2e01\u0007a\u0002\u0002\u2e01\u2e02\u0007",
+ "U\u0002\u0002\u2e02\u2e03\u0007G\u0002\u0002\u2e03\u2e04\u0007T\u0002",
+ "\u0002\u2e04\u2e05\u0007K\u0002\u0002\u2e05\u2e06\u0007C\u0002\u0002",
+ "\u2e06\u2e07\u0007N\u0002\u0002\u2e07\u2e08\u0007K\u0002\u0002\u2e08",
+ "\u2e09\u0007\\\u0002\u0002\u2e09\u2e0a\u0007G\u0002\u0002\u2e0a\u0596",
+ "\u0003\u0002\u0002\u0002\u2e0b\u2e0c\u0007L\u0002\u0002\u2e0c\u2e0d",
+ "\u0007U\u0002\u0002\u2e0d\u2e0e\u0007Q\u0002\u0002\u2e0e\u2e0f\u0007",
+ "P\u0002\u0002\u2e0f\u2e10\u0007a\u0002\u0002\u2e10\u2e11\u0007V\u0002",
+ "\u0002\u2e11\u2e12\u0007C\u0002\u0002\u2e12\u2e13\u0007D\u0002\u0002",
+ "\u2e13\u2e14\u0007N\u0002\u0002\u2e14\u2e15\u0007G\u0002\u0002\u2e15",
+ "\u0598\u0003\u0002\u0002\u0002\u2e16\u2e17\u0007L\u0002\u0002\u2e17",
+ "\u2e18\u0007U\u0002\u0002\u2e18\u2e19\u0007Q\u0002\u0002\u2e19\u2e1a",
+ "\u0007P\u0002\u0002\u2e1a\u2e1b\u0007a\u0002\u0002\u2e1b\u2e1c\u0007",
+ "V\u0002\u0002\u2e1c\u2e1d\u0007G\u0002\u0002\u2e1d\u2e1e\u0007Z\u0002",
+ "\u0002\u2e1e\u2e1f\u0007V\u0002\u0002\u2e1f\u2e20\u0007E\u0002\u0002",
+ "\u2e20\u2e21\u0007Q\u0002\u0002\u2e21\u2e22\u0007P\u0002\u0002\u2e22",
+ "\u2e23\u0007V\u0002\u0002\u2e23\u2e24\u0007C\u0002\u0002\u2e24\u2e25",
+ "\u0007K\u0002\u0002\u2e25\u2e26\u0007P\u0002\u0002\u2e26\u2e27\u0007",
+ "U\u0002\u0002\u2e27\u2e28\u00074\u0002\u0002\u2e28\u059a\u0003\u0002",
+ "\u0002\u0002\u2e29\u2e2a\u0007L\u0002\u0002\u2e2a\u2e2b\u0007U\u0002",
+ "\u0002\u2e2b\u2e2c\u0007Q\u0002\u0002\u2e2c\u2e2d\u0007P\u0002\u0002",
+ "\u2e2d\u2e2e\u0007a\u0002\u0002\u2e2e\u2e2f\u0007V\u0002\u0002\u2e2f",
+ "\u2e30\u0007G\u0002\u0002\u2e30\u2e31\u0007Z\u0002\u0002\u2e31\u2e32",
+ "\u0007V\u0002\u0002\u2e32\u2e33\u0007E\u0002\u0002\u2e33\u2e34\u0007",
+ "Q\u0002\u0002\u2e34\u2e35\u0007P\u0002\u0002\u2e35\u2e36\u0007V\u0002",
+ "\u0002\u2e36\u2e37\u0007C\u0002\u0002\u2e37\u2e38\u0007K\u0002\u0002",
+ "\u2e38\u2e39\u0007P\u0002\u0002\u2e39\u2e3a\u0007U\u0002\u0002\u2e3a",
+ "\u059c\u0003\u0002\u0002\u0002\u2e3b\u2e3c\u0007L\u0002\u0002\u2e3c",
+ "\u2e3d\u0007U\u0002\u0002\u2e3d\u2e3e\u0007Q\u0002\u0002\u2e3e\u2e3f",
+ "\u0007P\u0002\u0002\u2e3f\u2e40\u0007a\u0002\u0002\u2e40\u2e41\u0007",
+ "X\u0002\u0002\u2e41\u2e42\u0007C\u0002\u0002\u2e42\u2e43\u0007N\u0002",
+ "\u0002\u2e43\u2e44\u0007W\u0002\u0002\u2e44\u2e45\u0007G\u0002\u0002",
+ "\u2e45\u059e\u0003\u0002\u0002\u0002\u2e46\u2e47\u0007M\u0002\u0002",
+ "\u2e47\u2e48\u0007G\u0002\u0002\u2e48\u2e49\u0007G\u0002\u0002\u2e49",
+ "\u2e4a\u0007R\u0002\u0002\u2e4a\u2e4b\u0007a\u0002\u0002\u2e4b\u2e4c",
+ "\u0007F\u0002\u0002\u2e4c\u2e4d\u0007W\u0002\u0002\u2e4d\u2e4e\u0007",
+ "R\u0002\u0002\u2e4e\u2e4f\u0007N\u0002\u0002\u2e4f\u2e50\u0007K\u0002",
+ "\u0002\u2e50\u2e51\u0007E\u0002\u0002\u2e51\u2e52\u0007C\u0002\u0002",
+ "\u2e52\u2e53\u0007V\u0002\u0002\u2e53\u2e54\u0007G\u0002\u0002\u2e54",
+ "\u2e55\u0007U\u0002\u0002\u2e55\u05a0\u0003\u0002\u0002\u0002\u2e56",
+ "\u2e57\u0007M\u0002\u0002\u2e57\u2e58\u0007G\u0002\u0002\u2e58\u2e59",
+ "\u0007G\u0002\u0002\u2e59\u2e5a\u0007R\u0002\u0002\u2e5a\u05a2\u0003",
+ "\u0002\u0002\u0002\u2e5b\u2e5c\u0007M\u0002\u0002\u2e5c\u2e5d\u0007",
+ "G\u0002\u0002\u2e5d\u2e5e\u0007T\u0002\u0002\u2e5e\u2e5f\u0007D\u0002",
+ "\u0002\u2e5f\u2e60\u0007G\u0002\u0002\u2e60\u2e61\u0007T\u0002\u0002",
+ "\u2e61\u2e62\u0007Q\u0002\u0002\u2e62\u2e63\u0007U\u0002\u0002\u2e63",
+ "\u05a4\u0003\u0002\u0002\u0002\u2e64\u2e65\u0007M\u0002\u0002\u2e65",
+ "\u2e66\u0007G\u0002\u0002\u2e66\u2e67\u0007[\u0002\u0002\u2e67\u05a6",
+ "\u0003\u0002\u0002\u0002\u2e68\u2e69\u0007M\u0002\u0002\u2e69\u2e6a",
+ "\u0007G\u0002\u0002\u2e6a\u2e6b\u0007[\u0002\u0002\u2e6b\u2e6c\u0007",
+ "a\u0002\u0002\u2e6c\u2e6d\u0007N\u0002\u0002\u2e6d\u2e6e\u0007G\u0002",
+ "\u0002\u2e6e\u2e6f\u0007P\u0002\u0002\u2e6f\u2e70\u0007I\u0002\u0002",
+ "\u2e70\u2e71\u0007V\u0002\u0002\u2e71\u2e72\u0007J\u0002\u0002\u2e72",
+ "\u05a8\u0003\u0002\u0002\u0002\u2e73\u2e74\u0007M\u0002\u0002\u2e74",
+ "\u2e75\u0007G\u0002\u0002\u2e75\u2e76\u0007[\u0002\u0002\u2e76\u2e77",
+ "\u0007U\u0002\u0002\u2e77\u2e78\u0007K\u0002\u0002\u2e78\u2e79\u0007",
+ "\\\u0002\u0002\u2e79\u2e7a\u0007G\u0002\u0002\u2e7a\u05aa\u0003\u0002",
+ "\u0002\u0002\u2e7b\u2e7c\u0007M\u0002\u0002\u2e7c\u2e7d\u0007G\u0002",
+ "\u0002\u2e7d\u2e7e\u0007[\u0002\u0002\u2e7e\u2e7f\u0007U\u0002\u0002",
+ "\u2e7f\u05ac\u0003\u0002\u0002\u0002\u2e80\u2e81\u0007M\u0002\u0002",
+ "\u2e81\u2e82\u0007G\u0002\u0002\u2e82\u2e83\u0007[\u0002\u0002\u2e83",
+ "\u2e84\u0007U\u0002\u0002\u2e84\u2e85\u0007V\u0002\u0002\u2e85\u2e86",
+ "\u0007Q\u0002\u0002\u2e86\u2e87\u0007T\u0002\u0002\u2e87\u2e88\u0007",
+ "G\u0002\u0002\u2e88\u05ae\u0003\u0002\u0002\u0002\u2e89\u2e8a\u0007",
+ "M\u0002\u0002\u2e8a\u2e8b\u0007K\u0002\u0002\u2e8b\u2e8c\u0007N\u0002",
+ "\u0002\u2e8c\u2e8d\u0007N\u0002\u0002\u2e8d\u05b0\u0003\u0002\u0002",
+ "\u0002\u2e8e\u2e8f\u0007N\u0002\u0002\u2e8f\u2e90\u0007C\u0002\u0002",
+ "\u2e90\u2e91\u0007D\u0002\u0002\u2e91\u2e92\u0007G\u0002\u0002\u2e92",
+ "\u2e93\u0007N\u0002\u0002\u2e93\u05b2\u0003\u0002\u0002\u0002\u2e94",
+ "\u2e95\u0007N\u0002\u0002\u2e95\u2e96\u0007C\u0002\u0002\u2e96\u2e97",
+ "\u0007P\u0002\u0002\u2e97\u2e98\u0007I\u0002\u0002\u2e98\u2e99\u0007",
+ "W\u0002\u0002\u2e99\u2e9a\u0007C\u0002\u0002\u2e9a\u2e9b\u0007I\u0002",
+ "\u0002\u2e9b\u2e9c\u0007G\u0002\u0002\u2e9c\u05b4\u0003\u0002\u0002",
+ "\u0002\u2e9d\u2e9e\u0007N\u0002\u0002\u2e9e\u2e9f\u0007C\u0002\u0002",
+ "\u2e9f\u2ea0\u0007U\u0002\u0002\u2ea0\u2ea1\u0007V\u0002\u0002\u2ea1",
+ "\u2ea2\u0007a\u0002\u0002\u2ea2\u2ea3\u0007F\u0002\u0002\u2ea3\u2ea4",
+ "\u0007C\u0002\u0002\u2ea4\u2ea5\u0007[\u0002\u0002\u2ea5\u05b6\u0003",
+ "\u0002\u0002\u0002\u2ea6\u2ea7\u0007N\u0002\u0002\u2ea7\u2ea8\u0007",
+ "C\u0002\u0002\u2ea8\u2ea9\u0007U\u0002\u0002\u2ea9\u2eaa\u0007V\u0002",
+ "\u0002\u2eaa\u05b8\u0003\u0002\u0002\u0002\u2eab\u2eac\u0007N\u0002",
+ "\u0002\u2eac\u2ead\u0007C\u0002\u0002\u2ead\u2eae\u0007U\u0002\u0002",
+ "\u2eae\u2eaf\u0007V\u0002\u0002\u2eaf\u2eb0\u0007a\u0002\u0002\u2eb0",
+ "\u2eb1\u0007X\u0002\u0002\u2eb1\u2eb2\u0007C\u0002\u0002\u2eb2\u2eb3",
+ "\u0007N\u0002\u0002\u2eb3\u2eb4\u0007W\u0002\u0002\u2eb4\u2eb5\u0007",
+ "G\u0002\u0002\u2eb5\u05ba\u0003\u0002\u0002\u0002\u2eb6\u2eb7\u0007",
+ "N\u0002\u0002\u2eb7\u2eb8\u0007C\u0002\u0002\u2eb8\u2eb9\u0007V\u0002",
+ "\u0002\u2eb9\u2eba\u0007G\u0002\u0002\u2eba\u2ebb\u0007T\u0002\u0002",
+ "\u2ebb\u2ebc\u0007C\u0002\u0002\u2ebc\u2ebd\u0007N\u0002\u0002\u2ebd",
+ "\u05bc\u0003\u0002\u0002\u0002\u2ebe\u2ebf\u0007N\u0002\u0002\u2ebf",
+ "\u2ec0\u0007C\u0002\u0002\u2ec0\u2ec1\u0007Z\u0002\u0002\u2ec1\u05be",
+ "\u0003\u0002\u0002\u0002\u2ec2\u2ec3\u0007N\u0002\u0002\u2ec3\u2ec4",
+ "\u0007C\u0002\u0002\u2ec4\u2ec5\u0007[\u0002\u0002\u2ec5\u2ec6\u0007",
+ "G\u0002\u0002\u2ec6\u2ec7\u0007T\u0002\u0002\u2ec7\u05c0\u0003\u0002",
+ "\u0002\u0002\u2ec8\u2ec9\u0007N\u0002\u0002\u2ec9\u2eca\u0007F\u0002",
+ "\u0002\u2eca\u2ecb\u0007C\u0002\u0002\u2ecb\u2ecc\u0007R\u0002\u0002",
+ "\u2ecc\u2ecd\u0007a\u0002\u0002\u2ecd\u2ece\u0007T\u0002\u0002\u2ece",
+ "\u2ecf\u0007G\u0002\u0002\u2ecf\u2ed0\u0007I\u0002\u0002\u2ed0\u2ed1",
+ "\u0007K\u0002\u0002\u2ed1\u2ed2\u0007U\u0002\u0002\u2ed2\u2ed3\u0007",
+ "V\u0002\u0002\u2ed3\u2ed4\u0007T\u0002\u0002\u2ed4\u2ed5\u0007C\u0002",
+ "\u0002\u2ed5\u2ed6\u0007V\u0002\u0002\u2ed6\u2ed7\u0007K\u0002\u0002",
+ "\u2ed7\u2ed8\u0007Q\u0002\u0002\u2ed8\u2ed9\u0007P\u0002\u0002\u2ed9",
+ "\u2eda\u0007a\u0002\u0002\u2eda\u2edb\u0007G\u0002\u0002\u2edb\u2edc",
+ "\u0007P\u0002\u0002\u2edc\u2edd\u0007C\u0002\u0002\u2edd\u2ede\u0007",
+ "D\u0002\u0002\u2ede\u2edf\u0007N\u0002\u0002\u2edf\u2ee0\u0007G\u0002",
+ "\u0002\u2ee0\u2ee1\u0007F\u0002\u0002\u2ee1\u05c2\u0003\u0002\u0002",
+ "\u0002\u2ee2\u2ee3\u0007N\u0002\u0002\u2ee3\u2ee4\u0007F\u0002\u0002",
+ "\u2ee4\u2ee5\u0007C\u0002\u0002\u2ee5\u2ee6\u0007R\u0002\u0002\u2ee6",
+ "\u2ee7\u0007a\u0002\u0002\u2ee7\u2ee8\u0007T\u0002\u0002\u2ee8\u2ee9",
+ "\u0007G\u0002\u0002\u2ee9\u2eea\u0007I\u0002\u0002\u2eea\u2eeb\u0007",
+ "K\u0002\u0002\u2eeb\u2eec\u0007U\u0002\u0002\u2eec\u2eed\u0007V\u0002",
+ "\u0002\u2eed\u2eee\u0007T\u0002\u0002\u2eee\u2eef\u0007C\u0002\u0002",
+ "\u2eef\u2ef0\u0007V\u0002\u0002\u2ef0\u2ef1\u0007K\u0002\u0002\u2ef1",
+ "\u2ef2\u0007Q\u0002\u0002\u2ef2\u2ef3\u0007P\u0002\u0002\u2ef3\u05c4",
+ "\u0003\u0002\u0002\u0002\u2ef4\u2ef5\u0007N\u0002\u0002\u2ef5\u2ef6",
+ "\u0007F\u0002\u0002\u2ef6\u2ef7\u0007C\u0002\u0002\u2ef7\u2ef8\u0007",
+ "R\u0002\u0002\u2ef8\u2ef9\u0007a\u0002\u0002\u2ef9\u2efa\u0007T\u0002",
+ "\u0002\u2efa\u2efb\u0007G\u0002\u0002\u2efb\u2efc\u0007I\u0002\u0002",
+ "\u2efc\u2efd\u0007a\u0002\u0002\u2efd\u2efe\u0007U\u0002\u0002\u2efe",
+ "\u2eff\u0007[\u0002\u0002\u2eff\u2f00\u0007P\u0002\u0002\u2f00\u2f01",
+ "\u0007E\u0002\u0002\u2f01\u2f02\u0007a\u0002\u0002\u2f02\u2f03\u0007",
+ "K\u0002\u0002\u2f03\u2f04\u0007P\u0002\u0002\u2f04\u2f05\u0007V\u0002",
+ "\u0002\u2f05\u2f06\u0007G\u0002\u0002\u2f06\u2f07\u0007T\u0002\u0002",
+ "\u2f07\u2f08\u0007X\u0002\u0002\u2f08\u2f09\u0007C\u0002\u0002\u2f09",
+ "\u2f0a\u0007N\u0002\u0002\u2f0a\u05c6\u0003\u0002\u0002\u0002\u2f0b",
+ "\u2f0c\u0007N\u0002\u0002\u2f0c\u2f0d\u0007G\u0002\u0002\u2f0d\u2f0e",
+ "\u0007C\u0002\u0002\u2f0e\u2f0f\u0007F\u0002\u0002\u2f0f\u2f10\u0007",
+ "K\u0002\u0002\u2f10\u2f11\u0007P\u0002\u0002\u2f11\u2f12\u0007I\u0002",
+ "\u0002\u2f12\u05c8\u0003\u0002\u0002\u0002\u2f13\u2f14\u0007N\u0002",
+ "\u0002\u2f14\u2f15\u0007G\u0002\u0002\u2f15\u2f16\u0007H\u0002\u0002",
+ "\u2f16\u2f17\u0007V\u0002\u0002\u2f17\u05ca\u0003\u0002\u0002\u0002",
+ "\u2f18\u2f19\u0007N\u0002\u0002\u2f19\u2f1a\u0007G\u0002\u0002\u2f1a",
+ "\u2f1b\u0007P\u0002\u0002\u2f1b\u2f1c\u0007I\u0002\u0002\u2f1c\u2f1d",
+ "\u0007V\u0002\u0002\u2f1d\u2f1e\u0007J\u0002\u0002\u2f1e\u2f1f\u0007",
+ "4\u0002\u0002\u2f1f\u05cc\u0003\u0002\u0002\u0002\u2f20\u2f21\u0007",
+ "N\u0002\u0002\u2f21\u2f22\u0007G\u0002\u0002\u2f22\u2f23\u0007P\u0002",
+ "\u0002\u2f23\u2f24\u0007I\u0002\u0002\u2f24\u2f25\u0007V\u0002\u0002",
+ "\u2f25\u2f26\u0007J\u0002\u0002\u2f26\u2f27\u00076\u0002\u0002\u2f27",
+ "\u05ce\u0003\u0002\u0002\u0002\u2f28\u2f29\u0007N\u0002\u0002\u2f29",
+ "\u2f2a\u0007G\u0002\u0002\u2f2a\u2f2b\u0007P\u0002\u0002\u2f2b\u2f2c",
+ "\u0007I\u0002\u0002\u2f2c\u2f2d\u0007V\u0002\u0002\u2f2d\u2f2e\u0007",
+ "J\u0002\u0002\u2f2e\u2f2f\u0007D\u0002\u0002\u2f2f\u05d0\u0003\u0002",
+ "\u0002\u0002\u2f30\u2f31\u0007N\u0002\u0002\u2f31\u2f32\u0007G\u0002",
+ "\u0002\u2f32\u2f33\u0007P\u0002\u0002\u2f33\u2f34\u0007I\u0002\u0002",
+ "\u2f34\u2f35\u0007V\u0002\u0002\u2f35\u2f36\u0007J\u0002\u0002\u2f36",
+ "\u2f37\u0007E\u0002\u0002\u2f37\u05d2\u0003\u0002\u0002\u0002\u2f38",
+ "\u2f39\u0007N\u0002\u0002\u2f39\u2f3a\u0007G\u0002\u0002\u2f3a\u2f3b",
+ "\u0007P\u0002\u0002\u2f3b\u2f3c\u0007I\u0002\u0002\u2f3c\u2f3d\u0007",
+ "V\u0002\u0002\u2f3d\u2f3e\u0007J\u0002\u0002\u2f3e\u05d4\u0003\u0002",
+ "\u0002\u0002\u2f3f\u2f40\u0007N\u0002\u0002\u2f40\u2f41\u0007G\u0002",
+ "\u0002\u2f41\u2f42\u0007U\u0002\u0002\u2f42\u2f43\u0007U\u0002\u0002",
+ "\u2f43\u05d6\u0003\u0002\u0002\u0002\u2f44\u2f45\u0007N\u0002\u0002",
+ "\u2f45\u2f46\u0007G\u0002\u0002\u2f46\u2f47\u0007X\u0002\u0002\u2f47",
+ "\u2f48\u0007G\u0002\u0002\u2f48\u2f49\u0007N\u0002\u0002\u2f49\u05d8",
+ "\u0003\u0002\u0002\u0002\u2f4a\u2f4b\u0007N\u0002\u0002\u2f4b\u2f4c",
+ "\u0007G\u0002\u0002\u2f4c\u2f4d\u0007X\u0002\u0002\u2f4d\u2f4e\u0007",
+ "G\u0002\u0002\u2f4e\u2f4f\u0007N\u0002\u0002\u2f4f\u2f50\u0007U\u0002",
+ "\u0002\u2f50\u05da\u0003\u0002\u0002\u0002\u2f51\u2f52\u0007N\u0002",
+ "\u0002\u2f52\u2f53\u0007K\u0002\u0002\u2f53\u2f54\u0007D\u0002\u0002",
+ "\u2f54\u2f55\u0007T\u0002\u0002\u2f55\u2f56\u0007C\u0002\u0002\u2f56",
+ "\u2f57\u0007T\u0002\u0002\u2f57\u2f58\u0007[\u0002\u0002\u2f58\u05dc",
+ "\u0003\u0002\u0002\u0002\u2f59\u2f5a\u0007N\u0002\u0002\u2f5a\u2f5b",
+ "\u0007K\u0002\u0002\u2f5b\u2f5c\u0007H\u0002\u0002\u2f5c\u2f5d\u0007",
+ "G\u0002\u0002\u2f5d\u2f5e\u0007E\u0002\u0002\u2f5e\u2f5f\u0007[\u0002",
+ "\u0002\u2f5f\u2f60\u0007E\u0002\u0002\u2f60\u2f61\u0007N\u0002\u0002",
+ "\u2f61\u2f62\u0007G\u0002\u0002\u2f62\u05de\u0003\u0002\u0002\u0002",
+ "\u2f63\u2f64\u0007N\u0002\u0002\u2f64\u2f65\u0007K\u0002\u0002\u2f65",
+ "\u2f66\u0007H\u0002\u0002\u2f66\u2f67\u0007G\u0002\u0002\u2f67\u05e0",
+ "\u0003\u0002\u0002\u0002\u2f68\u2f69\u0007N\u0002\u0002\u2f69\u2f6a",
+ "\u0007K\u0002\u0002\u2f6a\u2f6b\u0007H\u0002\u0002\u2f6b\u2f6c\u0007",
+ "G\u0002\u0002\u2f6c\u2f6d\u0007V\u0002\u0002\u2f6d\u2f6e\u0007K\u0002",
+ "\u0002\u2f6e\u2f6f\u0007O\u0002\u0002\u2f6f\u2f70\u0007G\u0002\u0002",
+ "\u2f70\u05e2\u0003\u0002\u0002\u0002\u2f71\u2f72\u0007N\u0002\u0002",
+ "\u2f72\u2f73\u0007K\u0002\u0002\u2f73\u2f74\u0007M\u0002\u0002\u2f74",
+ "\u2f75\u0007G\u0002\u0002\u2f75\u2f76\u00074\u0002\u0002\u2f76\u05e4",
+ "\u0003\u0002\u0002\u0002\u2f77\u2f78\u0007N\u0002\u0002\u2f78\u2f79",
+ "\u0007K\u0002\u0002\u2f79\u2f7a\u0007M\u0002\u0002\u2f7a\u2f7b\u0007",
+ "G\u0002\u0002\u2f7b\u2f7c\u00076\u0002\u0002\u2f7c\u05e6\u0003\u0002",
+ "\u0002\u0002\u2f7d\u2f7e\u0007N\u0002\u0002\u2f7e\u2f7f\u0007K\u0002",
+ "\u0002\u2f7f\u2f80\u0007M\u0002\u0002\u2f80\u2f81\u0007G\u0002\u0002",
+ "\u2f81\u2f82\u0007E\u0002\u0002\u2f82\u05e8\u0003\u0002\u0002\u0002",
+ "\u2f83\u2f84\u0007N\u0002\u0002\u2f84\u2f85\u0007K\u0002\u0002\u2f85",
+ "\u2f86\u0007M\u0002\u0002\u2f86\u2f87\u0007G\u0002\u0002\u2f87\u2f88",
+ "\u0007a\u0002\u0002\u2f88\u2f89\u0007G\u0002\u0002\u2f89\u2f8a\u0007",
+ "Z\u0002\u0002\u2f8a\u2f8b\u0007R\u0002\u0002\u2f8b\u2f8c\u0007C\u0002",
+ "\u0002\u2f8c\u2f8d\u0007P\u0002\u0002\u2f8d\u2f8e\u0007F\u0002\u0002",
+ "\u2f8e\u05ea\u0003\u0002\u0002\u0002\u2f8f\u2f90\u0007N\u0002\u0002",
+ "\u2f90\u2f91\u0007K\u0002\u0002\u2f91\u2f92\u0007M\u0002\u0002\u2f92",
+ "\u2f93\u0007G\u0002\u0002\u2f93\u05ec\u0003\u0002\u0002\u0002\u2f94",
+ "\u2f95\u0007N\u0002\u0002\u2f95\u2f96\u0007K\u0002\u0002\u2f96\u2f97",
+ "\u0007O\u0002\u0002\u2f97\u2f98\u0007K\u0002\u0002\u2f98\u2f99\u0007",
+ "V\u0002\u0002\u2f99\u05ee\u0003\u0002\u0002\u0002\u2f9a\u2f9b\u0007",
+ "N\u0002\u0002\u2f9b\u2f9c\u0007K\u0002\u0002\u2f9c\u2f9d\u0007P\u0002",
+ "\u0002\u2f9d\u2f9e\u0007G\u0002\u0002\u2f9e\u2f9f\u0007C\u0002\u0002",
+ "\u2f9f\u2fa0\u0007T\u0002\u0002\u2fa0\u05f0\u0003\u0002\u0002\u0002",
+ "\u2fa1\u2fa2\u0007N\u0002\u0002\u2fa2\u2fa3\u0007K\u0002\u0002\u2fa3",
+ "\u2fa4\u0007P\u0002\u0002\u2fa4\u2fa5\u0007M\u0002\u0002\u2fa5\u05f2",
+ "\u0003\u0002\u0002\u0002\u2fa6\u2fa7\u0007N\u0002\u0002\u2fa7\u2fa8",
+ "\u0007K\u0002\u0002\u2fa8\u2fa9\u0007U\u0002\u0002\u2fa9\u2faa\u0007",
+ "V\u0002\u0002\u2faa\u05f4\u0003\u0002\u0002\u0002\u2fab\u2fac\u0007",
+ "N\u0002\u0002\u2fac\u2fad\u0007P\u0002\u0002\u2fad\u05f6\u0003\u0002",
+ "\u0002\u0002\u2fae\u2faf\u0007N\u0002\u0002\u2faf\u2fb0\u0007P\u0002",
+ "\u0002\u2fb0\u2fb1\u0007P\u0002\u0002\u2fb1\u2fb2\u0007X\u0002\u0002",
+ "\u2fb2\u2fb3\u0007N\u0002\u0002\u2fb3\u05f8\u0003\u0002\u0002\u0002",
+ "\u2fb4\u2fb5\u0007N\u0002\u0002\u2fb5\u2fb6\u0007Q\u0002\u0002\u2fb6",
+ "\u2fb7\u0007C\u0002\u0002\u2fb7\u2fb8\u0007F\u0002\u0002\u2fb8\u05fa",
+ "\u0003\u0002\u0002\u0002\u2fb9\u2fba\u0007N\u0002\u0002\u2fba\u2fbb",
+ "\u0007Q\u0002\u0002\u2fbb\u2fbc\u0007D\u0002\u0002\u2fbc\u05fc\u0003",
+ "\u0002\u0002\u0002\u2fbd\u2fbe\u0007N\u0002\u0002\u2fbe\u2fbf\u0007",
+ "Q\u0002\u0002\u2fbf\u2fc0\u0007D\u0002\u0002\u2fc0\u2fc1\u0007P\u0002",
+ "\u0002\u2fc1\u2fc2\u0007X\u0002\u0002\u2fc2\u2fc3\u0007N\u0002\u0002",
+ "\u2fc3\u05fe\u0003\u0002\u0002\u0002\u2fc4\u2fc5\u0007N\u0002\u0002",
+ "\u2fc5\u2fc6\u0007Q\u0002\u0002\u2fc6\u2fc7\u0007D\u0002\u0002\u2fc7",
+ "\u2fc8\u0007U\u0002\u0002\u2fc8\u0600\u0003\u0002\u0002\u0002\u2fc9",
+ "\u2fca\u0007N\u0002\u0002\u2fca\u2fcb\u0007Q\u0002\u0002\u2fcb\u2fcc",
+ "\u0007E\u0002\u0002\u2fcc\u2fcd\u0007C\u0002\u0002\u2fcd\u2fce\u0007",
+ "N\u0002\u0002\u2fce\u2fcf\u0007a\u0002\u0002\u2fcf\u2fd0\u0007K\u0002",
+ "\u0002\u2fd0\u2fd1\u0007P\u0002\u0002\u2fd1\u2fd2\u0007F\u0002\u0002",
+ "\u2fd2\u2fd3\u0007G\u0002\u0002\u2fd3\u2fd4\u0007Z\u0002\u0002\u2fd4",
+ "\u2fd5\u0007G\u0002\u0002\u2fd5\u2fd6\u0007U\u0002\u0002\u2fd6\u0602",
+ "\u0003\u0002\u0002\u0002\u2fd7\u2fd8\u0007N\u0002\u0002\u2fd8\u2fd9",
+ "\u0007Q\u0002\u0002\u2fd9\u2fda\u0007E\u0002\u0002\u2fda\u2fdb\u0007",
+ "C\u0002\u0002\u2fdb\u2fdc\u0007N\u0002\u0002\u2fdc\u0604\u0003\u0002",
+ "\u0002\u0002\u2fdd\u2fde\u0007N\u0002\u0002\u2fde\u2fdf\u0007Q\u0002",
+ "\u0002\u2fdf\u2fe0\u0007E\u0002\u0002\u2fe0\u2fe1\u0007C\u0002\u0002",
+ "\u2fe1\u2fe2\u0007N\u0002\u0002\u2fe2\u2fe3\u0007V\u0002\u0002\u2fe3",
+ "\u2fe4\u0007K\u0002\u0002\u2fe4\u2fe5\u0007O\u0002\u0002\u2fe5\u2fe6",
+ "\u0007G\u0002\u0002\u2fe6\u0606\u0003\u0002\u0002\u0002\u2fe7\u2fe8",
+ "\u0007N\u0002\u0002\u2fe8\u2fe9\u0007Q\u0002\u0002\u2fe9\u2fea\u0007",
+ "E\u0002\u0002\u2fea\u2feb\u0007C\u0002\u0002\u2feb\u2fec\u0007N\u0002",
+ "\u0002\u2fec\u2fed\u0007V\u0002\u0002\u2fed\u2fee\u0007K\u0002\u0002",
+ "\u2fee\u2fef\u0007O\u0002\u0002\u2fef\u2ff0\u0007G\u0002\u0002\u2ff0",
+ "\u2ff1\u0007U\u0002\u0002\u2ff1\u2ff2\u0007V\u0002\u0002\u2ff2\u2ff3",
+ "\u0007C\u0002\u0002\u2ff3\u2ff4\u0007O\u0002\u0002\u2ff4\u2ff5\u0007",
+ "R\u0002\u0002\u2ff5\u0608\u0003\u0002\u0002\u0002\u2ff6\u2ff7\u0007",
+ "N\u0002\u0002\u2ff7\u2ff8\u0007Q\u0002\u0002\u2ff8\u2ff9\u0007E\u0002",
+ "\u0002\u2ff9\u2ffa\u0007C\u0002\u0002\u2ffa\u2ffb\u0007V\u0002\u0002",
+ "\u2ffb\u2ffc\u0007K\u0002\u0002\u2ffc\u2ffd\u0007Q\u0002\u0002\u2ffd",
+ "\u2ffe\u0007P\u0002\u0002\u2ffe\u060a\u0003\u0002\u0002\u0002\u2fff",
+ "\u3000\u0007N\u0002\u0002\u3000\u3001\u0007Q\u0002\u0002\u3001\u3002",
+ "\u0007E\u0002\u0002\u3002\u3003\u0007C\u0002\u0002\u3003\u3004\u0007",
+ "V\u0002\u0002\u3004\u3005\u0007Q\u0002\u0002\u3005\u3006\u0007T\u0002",
+ "\u0002\u3006\u060c\u0003\u0002\u0002\u0002\u3007\u3008\u0007N\u0002",
+ "\u0002\u3008\u3009\u0007Q\u0002\u0002\u3009\u300a\u0007E\u0002\u0002",
+ "\u300a\u300b\u0007M\u0002\u0002\u300b\u300c\u0007G\u0002\u0002\u300c",
+ "\u300d\u0007F\u0002\u0002\u300d\u060e\u0003\u0002\u0002\u0002\u300e",
+ "\u300f\u0007N\u0002\u0002\u300f\u3010\u0007Q\u0002\u0002\u3010\u3011",
+ "\u0007E\u0002\u0002\u3011\u3012\u0007M\u0002\u0002\u3012\u3013\u0007",
+ "K\u0002\u0002\u3013\u3014\u0007P\u0002\u0002\u3014\u3015\u0007I\u0002",
+ "\u0002\u3015\u0610\u0003\u0002\u0002\u0002\u3016\u3017\u0007N\u0002",
+ "\u0002\u3017\u3018\u0007Q\u0002\u0002\u3018\u3019\u0007E\u0002\u0002",
+ "\u3019\u301a\u0007M\u0002\u0002\u301a\u0612\u0003\u0002\u0002\u0002",
+ "\u301b\u301c\u0007N\u0002\u0002\u301c\u301d\u0007Q\u0002\u0002\u301d",
+ "\u301e\u0007I\u0002\u0002\u301e\u301f\u0007H\u0002\u0002\u301f\u3020",
+ "\u0007K\u0002\u0002\u3020\u3021\u0007N\u0002\u0002\u3021\u3022\u0007",
+ "G\u0002\u0002\u3022\u0614\u0003\u0002\u0002\u0002\u3023\u3024\u0007",
+ "N\u0002\u0002\u3024\u3025\u0007Q\u0002\u0002\u3025\u3026\u0007I\u0002",
+ "\u0002\u3026\u3027\u0007H\u0002\u0002\u3027\u3028\u0007K\u0002\u0002",
+ "\u3028\u3029\u0007N\u0002\u0002\u3029\u302a\u0007G\u0002\u0002\u302a",
+ "\u302b\u0007U\u0002\u0002\u302b\u0616\u0003\u0002\u0002\u0002\u302c",
+ "\u302d\u0007N\u0002\u0002\u302d\u302e\u0007Q\u0002\u0002\u302e\u302f",
+ "\u0007I\u0002\u0002\u302f\u3030\u0007I\u0002\u0002\u3030\u3031\u0007",
+ "K\u0002\u0002\u3031\u3032\u0007P\u0002\u0002\u3032\u3033\u0007I\u0002",
+ "\u0002\u3033\u0618\u0003\u0002\u0002\u0002\u3034\u3035\u0007N\u0002",
+ "\u0002\u3035\u3036\u0007Q\u0002\u0002\u3036\u3037\u0007I\u0002\u0002",
+ "\u3037\u3038\u0007K\u0002\u0002\u3038\u3039\u0007E\u0002\u0002\u3039",
+ "\u303a\u0007C\u0002\u0002\u303a\u303b\u0007N\u0002\u0002\u303b\u061a",
+ "\u0003\u0002\u0002\u0002\u303c\u303d\u0007N\u0002\u0002\u303d\u303e",
+ "\u0007Q\u0002\u0002\u303e\u303f\u0007I\u0002\u0002\u303f\u3040\u0007",
+ "K\u0002\u0002\u3040\u3041\u0007E\u0002\u0002\u3041\u3042\u0007C\u0002",
+ "\u0002\u3042\u3043\u0007N\u0002\u0002\u3043\u3044\u0007a\u0002\u0002",
+ "\u3044\u3045\u0007T\u0002\u0002\u3045\u3046\u0007G\u0002\u0002\u3046",
+ "\u3047\u0007C\u0002\u0002\u3047\u3048\u0007F\u0002\u0002\u3048\u3049",
+ "\u0007U\u0002\u0002\u3049\u304a\u0007a\u0002\u0002\u304a\u304b\u0007",
+ "R\u0002\u0002\u304b\u304c\u0007G\u0002\u0002\u304c\u304d\u0007T\u0002",
+ "\u0002\u304d\u304e\u0007a\u0002\u0002\u304e\u304f\u0007E\u0002\u0002",
+ "\u304f\u3050\u0007C\u0002\u0002\u3050\u3051\u0007N\u0002\u0002\u3051",
+ "\u3052\u0007N\u0002\u0002\u3052\u061c\u0003\u0002\u0002\u0002\u3053",
+ "\u3054\u0007N\u0002\u0002\u3054\u3055\u0007Q\u0002\u0002\u3055\u3056",
+ "\u0007I\u0002\u0002\u3056\u3057\u0007K\u0002\u0002\u3057\u3058\u0007",
+ "E\u0002\u0002\u3058\u3059\u0007C\u0002\u0002\u3059\u305a\u0007N\u0002",
+ "\u0002\u305a\u305b\u0007a\u0002\u0002\u305b\u305c\u0007T\u0002\u0002",
+ "\u305c\u305d\u0007G\u0002\u0002\u305d\u305e\u0007C\u0002\u0002\u305e",
+ "\u305f\u0007F\u0002\u0002\u305f\u3060\u0007U\u0002\u0002\u3060\u3061",
+ "\u0007a\u0002\u0002\u3061\u3062\u0007R\u0002\u0002\u3062\u3063\u0007",
+ "G\u0002\u0002\u3063\u3064\u0007T\u0002\u0002\u3064\u3065\u0007a\u0002",
+ "\u0002\u3065\u3066\u0007U\u0002\u0002\u3066\u3067\u0007G\u0002\u0002",
+ "\u3067\u3068\u0007U\u0002\u0002\u3068\u3069\u0007U\u0002\u0002\u3069",
+ "\u306a\u0007K\u0002\u0002\u306a\u306b\u0007Q\u0002\u0002\u306b\u306c",
+ "\u0007P\u0002\u0002\u306c\u061e\u0003\u0002\u0002\u0002\u306d\u306e",
+ "\u0007N\u0002\u0002\u306e\u306f\u0007Q\u0002\u0002\u306f\u3070\u0007",
+ "I\u0002\u0002\u3070\u0620\u0003\u0002\u0002\u0002\u3071\u3072\u0007",
+ "N\u0002\u0002\u3072\u3073\u0007Q\u0002\u0002\u3073\u3074\u0007I\u0002",
+ "\u0002\u3074\u3075\u0007O\u0002\u0002\u3075\u3076\u0007K\u0002\u0002",
+ "\u3076\u3077\u0007P\u0002\u0002\u3077\u3078\u0007K\u0002\u0002\u3078",
+ "\u3079\u0007P\u0002\u0002\u3079\u307a\u0007I\u0002\u0002\u307a\u0622",
+ "\u0003\u0002\u0002\u0002\u307b\u307c\u0007N\u0002\u0002\u307c\u307d",
+ "\u0007Q\u0002\u0002\u307d\u307e\u0007I\u0002\u0002\u307e\u307f\u0007",
+ "Q\u0002\u0002\u307f\u3080\u0007H\u0002\u0002\u3080\u3081\u0007H\u0002",
+ "\u0002\u3081\u0624\u0003\u0002\u0002\u0002\u3082\u3083\u0007N\u0002",
+ "\u0002\u3083\u3084\u0007Q\u0002\u0002\u3084\u3085\u0007I\u0002\u0002",
+ "\u3085\u3086\u0007Q\u0002\u0002\u3086\u3087\u0007P\u0002\u0002\u3087",
+ "\u0626\u0003\u0002\u0002\u0002\u3088\u3089\u0007N\u0002\u0002\u3089",
+ "\u308a\u0007Q\u0002\u0002\u308a\u308b\u0007I\u0002\u0002\u308b\u308c",
+ "\u0007a\u0002\u0002\u308c\u308d\u0007T\u0002\u0002\u308d\u308e\u0007",
+ "G\u0002\u0002\u308e\u308f\u0007C\u0002\u0002\u308f\u3090\u0007F\u0002",
+ "\u0002\u3090\u3091\u0007a\u0002\u0002\u3091\u3092\u0007Q\u0002\u0002",
+ "\u3092\u3093\u0007P\u0002\u0002\u3093\u3094\u0007N\u0002\u0002\u3094",
+ "\u3095\u0007[\u0002\u0002\u3095\u3096\u0007a\u0002\u0002\u3096\u3097",
+ "\u0007X\u0002\u0002\u3097\u3098\u0007K\u0002\u0002\u3098\u3099\u0007",
+ "Q\u0002\u0002\u3099\u309a\u0007N\u0002\u0002\u309a\u309b\u0007C\u0002",
+ "\u0002\u309b\u309c\u0007V\u0002\u0002\u309c\u309d\u0007K\u0002\u0002",
+ "\u309d\u309e\u0007Q\u0002\u0002\u309e\u309f\u0007P\u0002\u0002\u309f",
+ "\u30a0\u0007U\u0002\u0002\u30a0\u0628\u0003\u0002\u0002\u0002\u30a1",
+ "\u30a2\u0007N\u0002\u0002\u30a2\u30a3\u0007Q\u0002\u0002\u30a3\u30a4",
+ "\u0007P\u0002\u0002\u30a4\u30a5\u0007I\u0002\u0002\u30a5\u062a\u0003",
+ "\u0002\u0002\u0002\u30a6\u30a7\u0007N\u0002\u0002\u30a7\u30a8\u0007",
+ "Q\u0002\u0002\u30a8\u30a9\u0007Q\u0002\u0002\u30a9\u30aa\u0007R\u0002",
+ "\u0002\u30aa\u062c\u0003\u0002\u0002\u0002\u30ab\u30ac\u0007N\u0002",
+ "\u0002\u30ac\u30ad\u0007Q\u0002\u0002\u30ad\u30ae\u0007Y\u0002\u0002",
+ "\u30ae\u30af\u0007G\u0002\u0002\u30af\u30b0\u0007T\u0002\u0002\u30b0",
+ "\u062e\u0003\u0002\u0002\u0002\u30b1\u30b2\u0007N\u0002\u0002\u30b2",
+ "\u30b3\u0007Q\u0002\u0002\u30b3\u30b4\u0007Y\u0002\u0002\u30b4\u0630",
+ "\u0003\u0002\u0002\u0002\u30b5\u30b6\u0007N\u0002\u0002\u30b6\u30b7",
+ "\u0007R\u0002\u0002\u30b7\u30b8\u0007C\u0002\u0002\u30b8\u30b9\u0007",
+ "F\u0002\u0002\u30b9\u0632\u0003\u0002\u0002\u0002\u30ba\u30bb\u0007",
+ "N\u0002\u0002\u30bb\u30bc\u0007V\u0002\u0002\u30bc\u30bd\u0007T\u0002",
+ "\u0002\u30bd\u30be\u0007K\u0002\u0002\u30be\u30bf\u0007O\u0002\u0002",
+ "\u30bf\u0634\u0003\u0002\u0002\u0002\u30c0\u30c1\u0007O\u0002\u0002",
+ "\u30c1\u30c2\u0007C\u0002\u0002\u30c2\u30c3\u0007K\u0002\u0002\u30c3",
+ "\u30c4\u0007P\u0002\u0002\u30c4\u0636\u0003\u0002\u0002\u0002\u30c5",
+ "\u30c6\u0007O\u0002\u0002\u30c6\u30c7\u0007C\u0002\u0002\u30c7\u30c8",
+ "\u0007M\u0002\u0002\u30c8\u30c9\u0007G\u0002\u0002\u30c9\u30ca\u0007",
+ "a\u0002\u0002\u30ca\u30cb\u0007T\u0002\u0002\u30cb\u30cc\u0007G\u0002",
+ "\u0002\u30cc\u30cd\u0007H\u0002\u0002\u30cd\u0638\u0003\u0002\u0002",
+ "\u0002\u30ce\u30cf\u0007O\u0002\u0002\u30cf\u30d0\u0007C\u0002\u0002",
+ "\u30d0\u30d1\u0007P\u0002\u0002\u30d1\u30d2\u0007C\u0002\u0002\u30d2",
+ "\u30d3\u0007I\u0002\u0002\u30d3\u30d4\u0007G\u0002\u0002\u30d4\u30d5",
+ "\u0007F\u0002\u0002\u30d5\u063a\u0003\u0002\u0002\u0002\u30d6\u30d7",
+ "\u0007O\u0002\u0002\u30d7\u30d8\u0007C\u0002\u0002\u30d8\u30d9\u0007",
+ "P\u0002\u0002\u30d9\u30da\u0007C\u0002\u0002\u30da\u30db\u0007I\u0002",
+ "\u0002\u30db\u30dc\u0007G\u0002\u0002\u30dc\u063c\u0003\u0002\u0002",
+ "\u0002\u30dd\u30de\u0007O\u0002\u0002\u30de\u30df\u0007C\u0002\u0002",
+ "\u30df\u30e0\u0007P\u0002\u0002\u30e0\u30e1\u0007C\u0002\u0002\u30e1",
+ "\u30e2\u0007I\u0002\u0002\u30e2\u30e3\u0007G\u0002\u0002\u30e3\u30e4",
+ "\u0007O\u0002\u0002\u30e4\u30e5\u0007G\u0002\u0002\u30e5\u30e6\u0007",
+ "P\u0002\u0002\u30e6\u30e7\u0007V\u0002\u0002\u30e7\u063e\u0003\u0002",
+ "\u0002\u0002\u30e8\u30e9\u0007O\u0002\u0002\u30e9\u30ea\u0007C\u0002",
+ "\u0002\u30ea\u30eb\u0007P\u0002\u0002\u30eb\u30ec\u0007C\u0002\u0002",
+ "\u30ec\u30ed\u0007I\u0002\u0002\u30ed\u30ee\u0007G\u0002\u0002\u30ee",
+ "\u30ef\u0007T\u0002\u0002\u30ef\u0640\u0003\u0002\u0002\u0002\u30f0",
+ "\u30f1\u0007O\u0002\u0002\u30f1\u30f2\u0007C\u0002\u0002\u30f2\u30f3",
+ "\u0007P\u0002\u0002\u30f3\u30f4\u0007W\u0002\u0002\u30f4\u30f5\u0007",
+ "C\u0002\u0002\u30f5\u30f6\u0007N\u0002\u0002\u30f6\u0642\u0003\u0002",
+ "\u0002\u0002\u30f7\u30f8\u0007O\u0002\u0002\u30f8\u30f9\u0007C\u0002",
+ "\u0002\u30f9\u30fa\u0007R\u0002\u0002\u30fa\u0644\u0003\u0002\u0002",
+ "\u0002\u30fb\u30fc\u0007O\u0002\u0002\u30fc\u30fd\u0007C\u0002\u0002",
+ "\u30fd\u30fe\u0007R\u0002\u0002\u30fe\u30ff\u0007R\u0002\u0002\u30ff",
+ "\u3100\u0007K\u0002\u0002\u3100\u3101\u0007P\u0002\u0002\u3101\u3102",
+ "\u0007I\u0002\u0002\u3102\u0646\u0003\u0002\u0002\u0002\u3103\u3104",
+ "\u0007O\u0002\u0002\u3104\u3105\u0007C\u0002\u0002\u3105\u3106\u0007",
+ "U\u0002\u0002\u3106\u3107\u0007V\u0002\u0002\u3107\u3108\u0007G\u0002",
+ "\u0002\u3108\u3109\u0007T\u0002\u0002\u3109\u0648\u0003\u0002\u0002",
+ "\u0002\u310a\u310b\u0007O\u0002\u0002\u310b\u310c\u0007C\u0002\u0002",
+ "\u310c\u310d\u0007V\u0002\u0002\u310d\u310e\u0007E\u0002\u0002\u310e",
+ "\u310f\u0007J\u0002\u0002\u310f\u3110\u0007G\u0002\u0002\u3110\u3111",
+ "\u0007F\u0002\u0002\u3111\u064a\u0003\u0002\u0002\u0002\u3112\u3113",
+ "\u0007O\u0002\u0002\u3113\u3114\u0007C\u0002\u0002\u3114\u3115\u0007",
+ "V\u0002\u0002\u3115\u3116\u0007E\u0002\u0002\u3116\u3117\u0007J\u0002",
+ "\u0002\u3117\u3118\u0007G\u0002\u0002\u3118\u3119\u0007U\u0002\u0002",
+ "\u3119\u064c\u0003\u0002\u0002\u0002\u311a\u311b\u0007O\u0002\u0002",
+ "\u311b\u311c\u0007C\u0002\u0002\u311c\u311d\u0007V\u0002\u0002\u311d",
+ "\u311e\u0007E\u0002\u0002\u311e\u311f\u0007J\u0002\u0002\u311f\u064e",
+ "\u0003\u0002\u0002\u0002\u3120\u3121\u0007O\u0002\u0002\u3121\u3122",
+ "\u0007C\u0002\u0002\u3122\u3123\u0007V\u0002\u0002\u3123\u3124\u0007",
+ "E\u0002\u0002\u3124\u3125\u0007J\u0002\u0002\u3125\u3126\u0007a\u0002",
+ "\u0002\u3126\u3127\u0007P\u0002\u0002\u3127\u3128\u0007W\u0002\u0002",
+ "\u3128\u3129\u0007O\u0002\u0002\u3129\u312a\u0007D\u0002\u0002\u312a",
+ "\u312b\u0007G\u0002\u0002\u312b\u312c\u0007T\u0002\u0002\u312c\u0650",
+ "\u0003\u0002\u0002\u0002\u312d\u312e\u0007O\u0002\u0002\u312e\u312f",
+ "\u0007C\u0002\u0002\u312f\u3130\u0007V\u0002\u0002\u3130\u3131\u0007",
+ "E\u0002\u0002\u3131\u3132\u0007J\u0002\u0002\u3132\u3133\u0007a\u0002",
+ "\u0002\u3133\u3134\u0007T\u0002\u0002\u3134\u3135\u0007G\u0002\u0002",
+ "\u3135\u3136\u0007E\u0002\u0002\u3136\u3137\u0007Q\u0002\u0002\u3137",
+ "\u3138\u0007I\u0002\u0002\u3138\u3139\u0007P\u0002\u0002\u3139\u313a",
+ "\u0007K\u0002\u0002\u313a\u313b\u0007\\\u0002\u0002\u313b\u313c\u0007",
+ "G\u0002\u0002\u313c\u0652\u0003\u0002\u0002\u0002\u313d\u313e\u0007",
+ "O\u0002\u0002\u313e\u313f\u0007C\u0002\u0002\u313f\u3140\u0007V\u0002",
+ "\u0002\u3140\u3141\u0007G\u0002\u0002\u3141\u3142\u0007T\u0002\u0002",
+ "\u3142\u3143\u0007K\u0002\u0002\u3143\u3144\u0007C\u0002\u0002\u3144",
+ "\u3145\u0007N\u0002\u0002\u3145\u3146\u0007K\u0002\u0002\u3146\u3147",
+ "\u0007\\\u0002\u0002\u3147\u3148\u0007G\u0002\u0002\u3148\u3149\u0007",
+ "F\u0002\u0002\u3149\u0654\u0003\u0002\u0002\u0002\u314a\u314b\u0007",
+ "O\u0002\u0002\u314b\u314c\u0007C\u0002\u0002\u314c\u314d\u0007V\u0002",
+ "\u0002\u314d\u314e\u0007G\u0002\u0002\u314e\u314f\u0007T\u0002\u0002",
+ "\u314f\u3150\u0007K\u0002\u0002\u3150\u3151\u0007C\u0002\u0002\u3151",
+ "\u3152\u0007N\u0002\u0002\u3152\u3153\u0007K\u0002\u0002\u3153\u3154",
+ "\u0007\\\u0002\u0002\u3154\u3155\u0007G\u0002\u0002\u3155\u0656\u0003",
+ "\u0002\u0002\u0002\u3156\u3157\u0007O\u0002\u0002\u3157\u3158\u0007",
+ "C\u0002\u0002\u3158\u3159\u0007Z\u0002\u0002\u3159\u315a\u0007C\u0002",
+ "\u0002\u315a\u315b\u0007T\u0002\u0002\u315b\u315c\u0007E\u0002\u0002",
+ "\u315c\u315d\u0007J\u0002\u0002\u315d\u315e\u0007N\u0002\u0002\u315e",
+ "\u315f\u0007Q\u0002\u0002\u315f\u3160\u0007I\u0002\u0002\u3160\u3161",
+ "\u0007U\u0002\u0002\u3161\u0658\u0003\u0002\u0002\u0002\u3162\u3163",
+ "\u0007O\u0002\u0002\u3163\u3164\u0007C\u0002\u0002\u3164\u3165\u0007",
+ "Z\u0002\u0002\u3165\u3166\u0007F\u0002\u0002\u3166\u3167\u0007C\u0002",
+ "\u0002\u3167\u3168\u0007V\u0002\u0002\u3168\u3169\u0007C\u0002\u0002",
+ "\u3169\u316a\u0007H\u0002\u0002\u316a\u316b\u0007K\u0002\u0002\u316b",
+ "\u316c\u0007N\u0002\u0002\u316c\u316d\u0007G\u0002\u0002\u316d\u316e",
+ "\u0007U\u0002\u0002\u316e\u065a\u0003\u0002\u0002\u0002\u316f\u3170",
+ "\u0007O\u0002\u0002\u3170\u3171\u0007C\u0002\u0002\u3171\u3172\u0007",
+ "Z\u0002\u0002\u3172\u3173\u0007G\u0002\u0002\u3173\u3174\u0007Z\u0002",
+ "\u0002\u3174\u3175\u0007V\u0002\u0002\u3175\u3176\u0007G\u0002\u0002",
+ "\u3176\u3177\u0007P\u0002\u0002\u3177\u3178\u0007V\u0002\u0002\u3178",
+ "\u3179\u0007U\u0002\u0002\u3179\u065c\u0003\u0002\u0002\u0002\u317a",
+ "\u317b\u0007O\u0002\u0002\u317b\u317c\u0007C\u0002\u0002\u317c\u317d",
+ "\u0007Z\u0002\u0002\u317d\u317e\u0007K\u0002\u0002\u317e\u317f\u0007",
+ "O\u0002\u0002\u317f\u3180\u0007K\u0002\u0002\u3180\u3181\u0007\\\u0002",
+ "\u0002\u3181\u3182\u0007G\u0002\u0002\u3182\u065e\u0003\u0002\u0002",
+ "\u0002\u3183\u3184\u0007O\u0002\u0002\u3184\u3185\u0007C\u0002\u0002",
+ "\u3185\u3186\u0007Z\u0002\u0002\u3186\u3187\u0007K\u0002\u0002\u3187",
+ "\u3188\u0007P\u0002\u0002\u3188\u3189\u0007U\u0002\u0002\u3189\u318a",
+ "\u0007V\u0002\u0002\u318a\u318b\u0007C\u0002\u0002\u318b\u318c\u0007",
+ "P\u0002\u0002\u318c\u318d\u0007E\u0002\u0002\u318d\u318e\u0007G\u0002",
+ "\u0002\u318e\u318f\u0007U\u0002\u0002\u318f\u0660\u0003\u0002\u0002",
+ "\u0002\u3190\u3191\u0007O\u0002\u0002\u3191\u3192\u0007C\u0002\u0002",
+ "\u3192\u3193\u0007Z\u0002\u0002\u3193\u3194\u0007N\u0002\u0002\u3194",
+ "\u3195\u0007Q\u0002\u0002\u3195\u3196\u0007I\u0002\u0002\u3196\u3197",
+ "\u0007H\u0002\u0002\u3197\u3198\u0007K\u0002\u0002\u3198\u3199\u0007",
+ "N\u0002\u0002\u3199\u319a\u0007G\u0002\u0002\u319a\u319b\u0007U\u0002",
+ "\u0002\u319b\u0662\u0003\u0002\u0002\u0002\u319c\u319d\u0007O\u0002",
+ "\u0002\u319d\u319e\u0007C\u0002\u0002\u319e\u319f\u0007Z\u0002\u0002",
+ "\u319f\u31a0\u0007N\u0002\u0002\u31a0\u31a1\u0007Q\u0002\u0002\u31a1",
+ "\u31a2\u0007I\u0002\u0002\u31a2\u31a3\u0007J\u0002\u0002\u31a3\u31a4",
+ "\u0007K\u0002\u0002\u31a4\u31a5\u0007U\u0002\u0002\u31a5\u31a6\u0007",
+ "V\u0002\u0002\u31a6\u31a7\u0007Q\u0002\u0002\u31a7\u31a8\u0007T\u0002",
+ "\u0002\u31a8\u31a9\u0007[\u0002\u0002\u31a9\u0664\u0003\u0002\u0002",
+ "\u0002\u31aa\u31ab\u0007O\u0002\u0002\u31ab\u31ac\u0007C\u0002\u0002",
+ "\u31ac\u31ad\u0007Z\u0002\u0002\u31ad\u31ae\u0007N\u0002\u0002\u31ae",
+ "\u31af\u0007Q\u0002\u0002\u31af\u31b0\u0007I\u0002\u0002\u31b0\u31b1",
+ "\u0007O\u0002\u0002\u31b1\u31b2\u0007G\u0002\u0002\u31b2\u31b3\u0007",
+ "O\u0002\u0002\u31b3\u31b4\u0007D\u0002\u0002\u31b4\u31b5\u0007G\u0002",
+ "\u0002\u31b5\u31b6\u0007T\u0002\u0002\u31b6\u31b7\u0007U\u0002\u0002",
+ "\u31b7\u0666\u0003\u0002\u0002\u0002\u31b8\u31b9\u0007O\u0002\u0002",
+ "\u31b9\u31ba\u0007C\u0002\u0002\u31ba\u31bb\u0007Z\u0002\u0002\u31bb",
+ "\u31bc\u0007a\u0002\u0002\u31bc\u31bd\u0007U\u0002\u0002\u31bd\u31be",
+ "\u0007J\u0002\u0002\u31be\u31bf\u0007C\u0002\u0002\u31bf\u31c0\u0007",
+ "T\u0002\u0002\u31c0\u31c1\u0007G\u0002\u0002\u31c1\u31c2\u0007F\u0002",
+ "\u0002\u31c2\u31c3\u0007a\u0002\u0002\u31c3\u31c4\u0007V\u0002\u0002",
+ "\u31c4\u31c5\u0007G\u0002\u0002\u31c5\u31c6\u0007O\u0002\u0002\u31c6",
+ "\u31c7\u0007R\u0002\u0002\u31c7\u31c8\u0007a\u0002\u0002\u31c8\u31c9",
+ "\u0007U\u0002\u0002\u31c9\u31ca\u0007K\u0002\u0002\u31ca\u31cb\u0007",
+ "\\\u0002\u0002\u31cb\u31cc\u0007G\u0002\u0002\u31cc\u0668\u0003\u0002",
+ "\u0002\u0002\u31cd\u31ce\u0007O\u0002\u0002\u31ce\u31cf\u0007C\u0002",
+ "\u0002\u31cf\u31d0\u0007Z\u0002\u0002\u31d0\u31d1\u0007U\u0002\u0002",
+ "\u31d1\u31d2\u0007K\u0002\u0002\u31d2\u31d3\u0007\\\u0002\u0002\u31d3",
+ "\u31d4\u0007G\u0002\u0002\u31d4\u066a\u0003\u0002\u0002\u0002\u31d5",
+ "\u31d6\u0007O\u0002\u0002\u31d6\u31d7\u0007C\u0002\u0002\u31d7\u31d8",
+ "\u0007Z\u0002\u0002\u31d8\u31d9\u0007V\u0002\u0002\u31d9\u31da\u0007",
+ "T\u0002\u0002\u31da\u31db\u0007C\u0002\u0002\u31db\u31dc\u0007P\u0002",
+ "\u0002\u31dc\u31dd\u0007U\u0002\u0002\u31dd\u066c\u0003\u0002\u0002",
+ "\u0002\u31de\u31df\u0007O\u0002\u0002\u31df\u31e0\u0007C\u0002\u0002",
+ "\u31e0\u31e1\u0007Z\u0002\u0002\u31e1\u31e2\u0007X\u0002\u0002\u31e2",
+ "\u31e3\u0007C\u0002\u0002\u31e3\u31e4\u0007N\u0002\u0002\u31e4\u31e5",
+ "\u0007W\u0002\u0002\u31e5\u31e6\u0007G\u0002\u0002\u31e6\u066e\u0003",
+ "\u0002\u0002\u0002\u31e7\u31e8\u0007O\u0002\u0002\u31e8\u31e9\u0007",
+ "G\u0002\u0002\u31e9\u31ea\u0007C\u0002\u0002\u31ea\u31eb\u0007U\u0002",
+ "\u0002\u31eb\u31ec\u0007W\u0002\u0002\u31ec\u31ed\u0007T\u0002\u0002",
+ "\u31ed\u31ee\u0007G\u0002\u0002\u31ee\u0670\u0003\u0002\u0002\u0002",
+ "\u31ef\u31f0\u0007O\u0002\u0002\u31f0\u31f1\u0007G\u0002\u0002\u31f1",
+ "\u31f2\u0007C\u0002\u0002\u31f2\u31f3\u0007U\u0002\u0002\u31f3\u31f4",
+ "\u0007W\u0002\u0002\u31f4\u31f5\u0007T\u0002\u0002\u31f5\u31f6\u0007",
+ "G\u0002\u0002\u31f6\u31f7\u0007U\u0002\u0002\u31f7\u0672\u0003\u0002",
+ "\u0002\u0002\u31f8\u31f9\u0007O\u0002\u0002\u31f9\u31fa\u0007G\u0002",
+ "\u0002\u31fa\u31fb\u0007F\u0002\u0002\u31fb\u31fc\u0007K\u0002\u0002",
+ "\u31fc\u31fd\u0007W\u0002\u0002\u31fd\u31fe\u0007O\u0002\u0002\u31fe",
+ "\u0674\u0003\u0002\u0002\u0002\u31ff\u3200\u0007O\u0002\u0002\u3200",
+ "\u3201\u0007G\u0002\u0002\u3201\u3202\u0007O\u0002\u0002\u3202\u3203",
+ "\u0007D\u0002\u0002\u3203\u3204\u0007G\u0002\u0002\u3204\u3205\u0007",
+ "T\u0002\u0002\u3205\u0676\u0003\u0002\u0002\u0002\u3206\u3207\u0007",
+ "O\u0002\u0002\u3207\u3208\u0007G\u0002\u0002\u3208\u3209\u0007O\u0002",
+ "\u0002\u3209\u320a\u0007E\u0002\u0002\u320a\u320b\u0007Q\u0002\u0002",
+ "\u320b\u320c\u0007O\u0002\u0002\u320c\u320d\u0007R\u0002\u0002\u320d",
+ "\u320e\u0007T\u0002\u0002\u320e\u320f\u0007G\u0002\u0002\u320f\u3210",
+ "\u0007U\u0002\u0002\u3210\u3211\u0007U\u0002\u0002\u3211\u0678\u0003",
+ "\u0002\u0002\u0002\u3212\u3213\u0007O\u0002\u0002\u3213\u3214\u0007",
+ "G\u0002\u0002\u3214\u3215\u0007O\u0002\u0002\u3215\u3216\u0007Q\u0002",
+ "\u0002\u3216\u3217\u0007T\u0002\u0002\u3217\u3218\u0007[\u0002\u0002",
+ "\u3218\u067a\u0003\u0002\u0002\u0002\u3219\u321a\u0007O\u0002\u0002",
+ "\u321a\u321b\u0007G\u0002\u0002\u321b\u321c\u0007T\u0002\u0002\u321c",
+ "\u321d\u0007I\u0002\u0002\u321d\u321e\u0007G\u0002\u0002\u321e\u321f",
+ "\u0007&\u0002\u0002\u321f\u3220\u0007C\u0002\u0002\u3220\u3221\u0007",
+ "E\u0002\u0002\u3221\u3222\u0007V\u0002\u0002\u3222\u3223\u0007K\u0002",
+ "\u0002\u3223\u3224\u0007Q\u0002\u0002\u3224\u3225\u0007P\u0002\u0002",
+ "\u3225\u3226\u0007U\u0002\u0002\u3226\u067c\u0003\u0002\u0002\u0002",
+ "\u3227\u3228\u0007O\u0002\u0002\u3228\u3229\u0007G\u0002\u0002\u3229",
+ "\u322a\u0007T\u0002\u0002\u322a\u322b\u0007I\u0002\u0002\u322b\u322c",
+ "\u0007G\u0002\u0002\u322c\u322d\u0007a\u0002\u0002\u322d\u322e\u0007",
+ "C\u0002\u0002\u322e\u322f\u0007L\u0002\u0002\u322f\u067e\u0003\u0002",
+ "\u0002\u0002\u3230\u3231\u0007O\u0002\u0002\u3231\u3232\u0007G\u0002",
+ "\u0002\u3232\u3233\u0007T\u0002\u0002\u3233\u3234\u0007I\u0002\u0002",
+ "\u3234\u3235\u0007G\u0002\u0002\u3235\u3236\u0007a\u0002\u0002\u3236",
+ "\u3237\u0007E\u0002\u0002\u3237\u3238\u0007Q\u0002\u0002\u3238\u3239",
+ "\u0007P\u0002\u0002\u3239\u323a\u0007U\u0002\u0002\u323a\u323b\u0007",
+ "V\u0002\u0002\u323b\u323c\u0007a\u0002\u0002\u323c\u323d\u0007Q\u0002",
+ "\u0002\u323d\u323e\u0007P\u0002\u0002\u323e\u0680\u0003\u0002\u0002",
+ "\u0002\u323f\u3240\u0007O\u0002\u0002\u3240\u3241\u0007G\u0002\u0002",
+ "\u3241\u3242\u0007T\u0002\u0002\u3242\u3243\u0007I\u0002\u0002\u3243",
+ "\u3244\u0007G\u0002\u0002\u3244\u0682\u0003\u0002\u0002\u0002\u3245",
+ "\u3246\u0007O\u0002\u0002\u3246\u3247\u0007G\u0002\u0002\u3247\u3248",
+ "\u0007T\u0002\u0002\u3248\u3249\u0007I\u0002\u0002\u3249\u324a\u0007",
+ "G\u0002\u0002\u324a\u324b\u0007a\u0002\u0002\u324b\u324c\u0007U\u0002",
+ "\u0002\u324c\u324d\u0007L\u0002\u0002\u324d\u0684\u0003\u0002\u0002",
+ "\u0002\u324e\u324f\u0007O\u0002\u0002\u324f\u3250\u0007G\u0002\u0002",
+ "\u3250\u3251\u0007V\u0002\u0002\u3251\u3252\u0007C\u0002\u0002\u3252",
+ "\u3253\u0007F\u0002\u0002\u3253\u3254\u0007C\u0002\u0002\u3254\u3255",
+ "\u0007V\u0002\u0002\u3255\u3256\u0007C\u0002\u0002\u3256\u0686\u0003",
+ "\u0002\u0002\u0002\u3257\u3258\u0007O\u0002\u0002\u3258\u3259\u0007",
+ "G\u0002\u0002\u3259\u325a\u0007V\u0002\u0002\u325a\u325b\u0007J\u0002",
+ "\u0002\u325b\u325c\u0007Q\u0002\u0002\u325c\u325d\u0007F\u0002\u0002",
+ "\u325d\u0688\u0003\u0002\u0002\u0002\u325e\u325f\u0007O\u0002\u0002",
+ "\u325f\u3260\u0007K\u0002\u0002\u3260\u3261\u0007I\u0002\u0002\u3261",
+ "\u3262\u0007T\u0002\u0002\u3262\u3263\u0007C\u0002\u0002\u3263\u3264",
+ "\u0007V\u0002\u0002\u3264\u3265\u0007G\u0002\u0002\u3265\u068a\u0003",
+ "\u0002\u0002\u0002\u3266\u3267\u0007O\u0002\u0002\u3267\u3268\u0007",
+ "K\u0002\u0002\u3268\u3269\u0007I\u0002\u0002\u3269\u326a\u0007T\u0002",
+ "\u0002\u326a\u326b\u0007C\u0002\u0002\u326b\u326c\u0007V\u0002\u0002",
+ "\u326c\u326d\u0007K\u0002\u0002\u326d\u326e\u0007Q\u0002\u0002\u326e",
+ "\u326f\u0007P\u0002\u0002\u326f\u068c\u0003\u0002\u0002\u0002\u3270",
+ "\u3271\u0007O\u0002\u0002\u3271\u3272\u0007K\u0002\u0002\u3272\u3273",
+ "\u0007P\u0002\u0002\u3273\u3274\u0007G\u0002\u0002\u3274\u3275\u0007",
+ "Z\u0002\u0002\u3275\u3276\u0007V\u0002\u0002\u3276\u3277\u0007G\u0002",
+ "\u0002\u3277\u3278\u0007P\u0002\u0002\u3278\u3279\u0007V\u0002\u0002",
+ "\u3279\u327a\u0007U\u0002\u0002\u327a\u068e\u0003\u0002\u0002\u0002",
+ "\u327b\u327c\u0007O\u0002\u0002\u327c\u327d\u0007K\u0002\u0002\u327d",
+ "\u327e\u0007P\u0002\u0002\u327e\u327f\u0007K\u0002\u0002\u327f\u3280",
+ "\u0007O\u0002\u0002\u3280\u3281\u0007K\u0002\u0002\u3281\u3282\u0007",
+ "\\\u0002\u0002\u3282\u3283\u0007G\u0002\u0002\u3283\u0690\u0003\u0002",
+ "\u0002\u0002\u3284\u3285\u0007O\u0002\u0002\u3285\u3286\u0007K\u0002",
+ "\u0002\u3286\u3287\u0007P\u0002\u0002\u3287\u3288\u0007K\u0002\u0002",
+ "\u3288\u3289\u0007O\u0002\u0002\u3289\u328a\u0007W\u0002\u0002\u328a",
+ "\u328b\u0007O\u0002\u0002\u328b\u0692\u0003\u0002\u0002\u0002\u328c",
+ "\u328d\u0007O\u0002\u0002\u328d\u328e\u0007K\u0002\u0002\u328e\u328f",
+ "\u0007P\u0002\u0002\u328f\u3290\u0007K\u0002\u0002\u3290\u3291\u0007",
+ "P\u0002\u0002\u3291\u3292\u0007I\u0002\u0002\u3292\u0694\u0003\u0002",
+ "\u0002\u0002\u3293\u3294\u0007O\u0002\u0002\u3294\u3295\u0007K\u0002",
+ "\u0002\u3295\u3296\u0007P\u0002\u0002\u3296\u3297\u0007W\u0002\u0002",
+ "\u3297\u3298\u0007U\u0002\u0002\u3298\u0696\u0003\u0002\u0002\u0002",
+ "\u3299\u329a\u0007O\u0002\u0002\u329a\u329b\u0007K\u0002\u0002\u329b",
+ "\u329c\u0007P\u0002\u0002\u329c\u329d\u0007W\u0002\u0002\u329d\u329e",
+ "\u0007U\u0002\u0002\u329e\u329f\u0007a\u0002\u0002\u329f\u32a0\u0007",
+ "P\u0002\u0002\u32a0\u32a1\u0007W\u0002\u0002\u32a1\u32a2\u0007N\u0002",
+ "\u0002\u32a2\u32a3\u0007N\u0002\u0002\u32a3\u0698\u0003\u0002\u0002",
+ "\u0002\u32a4\u32a5\u0007O\u0002\u0002\u32a5\u32a6\u0007K\u0002\u0002",
+ "\u32a6\u32a7\u0007P\u0002\u0002\u32a7\u32a8\u0007W\u0002\u0002\u32a8",
+ "\u32a9\u0007V\u0002\u0002\u32a9\u32aa\u0007G\u0002\u0002\u32aa\u069a",
+ "\u0003\u0002\u0002\u0002\u32ab\u32ac\u0007O\u0002\u0002\u32ac\u32ad",
+ "\u0007K\u0002\u0002\u32ad\u32ae\u0007P\u0002\u0002\u32ae\u32af\u0007",
+ "X\u0002\u0002\u32af\u32b0\u0007C\u0002\u0002\u32b0\u32b1\u0007N\u0002",
+ "\u0002\u32b1\u32b2\u0007W\u0002\u0002\u32b2\u32b3\u0007G\u0002\u0002",
+ "\u32b3\u069c\u0003\u0002\u0002\u0002\u32b4\u32b5\u0007O\u0002\u0002",
+ "\u32b5\u32b6\u0007K\u0002\u0002\u32b6\u32b7\u0007T\u0002\u0002\u32b7",
+ "\u32b8\u0007T\u0002\u0002\u32b8\u32b9\u0007Q\u0002\u0002\u32b9\u32ba",
+ "\u0007T\u0002\u0002\u32ba\u32bb\u0007E\u0002\u0002\u32bb\u32bc\u0007",
+ "Q\u0002\u0002\u32bc\u32bd\u0007N\u0002\u0002\u32bd\u32be\u0007F\u0002",
+ "\u0002\u32be\u069e\u0003\u0002\u0002\u0002\u32bf\u32c0\u0007O\u0002",
+ "\u0002\u32c0\u32c1\u0007K\u0002\u0002\u32c1\u32c2\u0007T\u0002\u0002",
+ "\u32c2\u32c3\u0007T\u0002\u0002\u32c3\u32c4\u0007Q\u0002\u0002\u32c4",
+ "\u32c5\u0007T\u0002\u0002\u32c5\u32c6\u0007J\u0002\u0002\u32c6\u32c7",
+ "\u0007Q\u0002\u0002\u32c7\u32c8\u0007V\u0002\u0002\u32c8\u06a0\u0003",
+ "\u0002\u0002\u0002\u32c9\u32ca\u0007O\u0002\u0002\u32ca\u32cb\u0007",
+ "K\u0002\u0002\u32cb\u32cc\u0007T\u0002\u0002\u32cc\u32cd\u0007T\u0002",
+ "\u0002\u32cd\u32ce\u0007Q\u0002\u0002\u32ce\u32cf\u0007T\u0002\u0002",
+ "\u32cf\u06a2\u0003\u0002\u0002\u0002\u32d0\u32d1\u0007O\u0002\u0002",
+ "\u32d1\u32d2\u0007N\u0002\u0002\u32d2\u32d3\u0007U\u0002\u0002\u32d3",
+ "\u32d4\u0007N\u0002\u0002\u32d4\u32d5\u0007C\u0002\u0002\u32d5\u32d6",
+ "\u0007D\u0002\u0002\u32d6\u32d7\u0007G\u0002\u0002\u32d7\u32d8\u0007",
+ "N\u0002\u0002\u32d8\u06a4\u0003\u0002\u0002\u0002\u32d9\u32da\u0007",
+ "O\u0002\u0002\u32da\u32db\u0007Q\u0002\u0002\u32db\u32dc\u0007F\u0002",
+ "\u0002\u32dc\u32dd\u0007G\u0002\u0002\u32dd\u32de\u0007N\u0002\u0002",
+ "\u32de\u32df\u0007a\u0002\u0002\u32df\u32e0\u0007E\u0002\u0002\u32e0",
+ "\u32e1\u0007Q\u0002\u0002\u32e1\u32e2\u0007O\u0002\u0002\u32e2\u32e3",
+ "\u0007R\u0002\u0002\u32e3\u32e4\u0007K\u0002\u0002\u32e4\u32e5\u0007",
+ "N\u0002\u0002\u32e5\u32e6\u0007G\u0002\u0002\u32e6\u32e7\u0007a\u0002",
+ "\u0002\u32e7\u32e8\u0007U\u0002\u0002\u32e8\u32e9\u0007W\u0002\u0002",
+ "\u32e9\u32ea\u0007D\u0002\u0002\u32ea\u32eb\u0007S\u0002\u0002\u32eb",
+ "\u32ec\u0007W\u0002\u0002\u32ec\u32ed\u0007G\u0002\u0002\u32ed\u32ee",
+ "\u0007T\u0002\u0002\u32ee\u32ef\u0007[\u0002\u0002\u32ef\u06a6\u0003",
+ "\u0002\u0002\u0002\u32f0\u32f1\u0007O\u0002\u0002\u32f1\u32f2\u0007",
+ "Q\u0002\u0002\u32f2\u32f3\u0007F\u0002\u0002\u32f3\u32f4\u0007G\u0002",
+ "\u0002\u32f4\u32f5\u0007N\u0002\u0002\u32f5\u32f6\u0007a\u0002\u0002",
+ "\u32f6\u32f7\u0007F\u0002\u0002\u32f7\u32f8\u0007Q\u0002\u0002\u32f8",
+ "\u32f9\u0007P\u0002\u0002\u32f9\u32fa\u0007V\u0002\u0002\u32fa\u32fb",
+ "\u0007X\u0002\u0002\u32fb\u32fc\u0007G\u0002\u0002\u32fc\u32fd\u0007",
+ "T\u0002\u0002\u32fd\u32fe\u0007K\u0002\u0002\u32fe\u32ff\u0007H\u0002",
+ "\u0002\u32ff\u3300\u0007[\u0002\u0002\u3300\u3301\u0007a\u0002\u0002",
+ "\u3301\u3302\u0007W\u0002\u0002\u3302\u3303\u0007P\u0002\u0002\u3303",
+ "\u3304\u0007K\u0002\u0002\u3304\u3305\u0007S\u0002\u0002\u3305\u3306",
+ "\u0007W\u0002\u0002\u3306\u3307\u0007G\u0002\u0002\u3307\u3308\u0007",
+ "P\u0002\u0002\u3308\u3309\u0007G\u0002\u0002\u3309\u330a\u0007U\u0002",
+ "\u0002\u330a\u330b\u0007U\u0002\u0002\u330b\u06a8\u0003\u0002\u0002",
+ "\u0002\u330c\u330d\u0007O\u0002\u0002\u330d\u330e\u0007Q\u0002\u0002",
+ "\u330e\u330f\u0007F\u0002\u0002\u330f\u3310\u0007G\u0002\u0002\u3310",
+ "\u3311\u0007N\u0002\u0002\u3311\u3312\u0007a\u0002\u0002\u3312\u3313",
+ "\u0007F\u0002\u0002\u3313\u3314\u0007[\u0002\u0002\u3314\u3315\u0007",
+ "P\u0002\u0002\u3315\u3316\u0007C\u0002\u0002\u3316\u3317\u0007O\u0002",
+ "\u0002\u3317\u3318\u0007K\u0002\u0002\u3318\u3319\u0007E\u0002\u0002",
+ "\u3319\u331a\u0007a\u0002\u0002\u331a\u331b\u0007U\u0002\u0002\u331b",
+ "\u331c\u0007W\u0002\u0002\u331c\u331d\u0007D\u0002\u0002\u331d\u331e",
+ "\u0007S\u0002\u0002\u331e\u331f\u0007W\u0002\u0002\u331f\u3320\u0007",
+ "G\u0002\u0002\u3320\u3321\u0007T\u0002\u0002\u3321\u3322\u0007[\u0002",
+ "\u0002\u3322\u06aa\u0003\u0002\u0002\u0002\u3323\u3324\u0007O\u0002",
+ "\u0002\u3324\u3325\u0007Q\u0002\u0002\u3325\u3326\u0007F\u0002\u0002",
+ "\u3326\u3327\u0007G\u0002\u0002\u3327\u3328\u0007N\u0002\u0002\u3328",
+ "\u3329\u0007a\u0002\u0002\u3329\u332a\u0007O\u0002\u0002\u332a\u332b",
+ "\u0007K\u0002\u0002\u332b\u332c\u0007P\u0002\u0002\u332c\u332d\u0007",
+ "a\u0002\u0002\u332d\u332e\u0007C\u0002\u0002\u332e\u332f\u0007P\u0002",
+ "\u0002\u332f\u3330\u0007C\u0002\u0002\u3330\u3331\u0007N\u0002\u0002",
+ "\u3331\u3332\u0007[\u0002\u0002\u3332\u3333\u0007U\u0002\u0002\u3333",
+ "\u3334\u0007K\u0002\u0002\u3334\u3335\u0007U\u0002\u0002\u3335\u06ac",
+ "\u0003\u0002\u0002\u0002\u3336\u3337\u0007O\u0002\u0002\u3337\u3338",
+ "\u0007Q\u0002\u0002\u3338\u3339\u0007F\u0002\u0002\u3339\u333a\u0007",
+ "G\u0002\u0002\u333a\u333b\u0007N\u0002\u0002\u333b\u06ae\u0003\u0002",
+ "\u0002\u0002\u333c\u333d\u0007O\u0002\u0002\u333d\u333e\u0007Q\u0002",
+ "\u0002\u333e\u333f\u0007F\u0002\u0002\u333f\u3340\u0007G\u0002\u0002",
+ "\u3340\u3341\u0007N\u0002\u0002\u3341\u3342\u0007a\u0002\u0002\u3342",
+ "\u3343\u0007P\u0002\u0002\u3343\u3344\u0007D\u0002\u0002\u3344\u06b0",
+ "\u0003\u0002\u0002\u0002\u3345\u3346\u0007O\u0002\u0002\u3346\u3347",
+ "\u0007Q\u0002\u0002\u3347\u3348\u0007F\u0002\u0002\u3348\u3349\u0007",
+ "G\u0002\u0002\u3349\u334a\u0007N\u0002\u0002\u334a\u334b\u0007a\u0002",
+ "\u0002\u334b\u334c\u0007P\u0002\u0002\u334c\u334d\u0007Q\u0002\u0002",
+ "\u334d\u334e\u0007a\u0002\u0002\u334e\u334f\u0007C\u0002\u0002\u334f",
+ "\u3350\u0007P\u0002\u0002\u3350\u3351\u0007C\u0002\u0002\u3351\u3352",
+ "\u0007N\u0002\u0002\u3352\u3353\u0007[\u0002\u0002\u3353\u3354\u0007",
+ "U\u0002\u0002\u3354\u3355\u0007K\u0002\u0002\u3355\u3356\u0007U\u0002",
+ "\u0002\u3356\u06b2\u0003\u0002\u0002\u0002\u3357\u3358\u0007O\u0002",
+ "\u0002\u3358\u3359\u0007Q\u0002\u0002\u3359\u335a\u0007F\u0002\u0002",
+ "\u335a\u335b\u0007G\u0002\u0002\u335b\u335c\u0007N\u0002\u0002\u335c",
+ "\u335d\u0007a\u0002\u0002\u335d\u335e\u0007R\u0002\u0002\u335e\u335f",
+ "\u0007D\u0002\u0002\u335f\u3360\u0007[\u0002\u0002\u3360\u06b4\u0003",
+ "\u0002\u0002\u0002\u3361\u3362\u0007O\u0002\u0002\u3362\u3363\u0007",
+ "Q\u0002\u0002\u3363\u3364\u0007F\u0002\u0002\u3364\u3365\u0007G\u0002",
+ "\u0002\u3365\u3366\u0007N\u0002\u0002\u3366\u3367\u0007a\u0002\u0002",
+ "\u3367\u3368\u0007R\u0002\u0002\u3368\u3369\u0007W\u0002\u0002\u3369",
+ "\u336a\u0007U\u0002\u0002\u336a\u336b\u0007J\u0002\u0002\u336b\u336c",
+ "\u0007a\u0002\u0002\u336c\u336d\u0007T\u0002\u0002\u336d\u336e\u0007",
+ "G\u0002\u0002\u336e\u336f\u0007H\u0002\u0002\u336f\u06b6\u0003\u0002",
+ "\u0002\u0002\u3370\u3371\u0007O\u0002\u0002\u3371\u3372\u0007Q\u0002",
+ "\u0002\u3372\u3373\u0007F\u0002\u0002\u3373\u3374\u0007G\u0002\u0002",
+ "\u3374\u3375\u0007N\u0002\u0002\u3375\u3376\u0007a\u0002\u0002\u3376",
+ "\u3377\u0007U\u0002\u0002\u3377\u3378\u0007X\u0002\u0002\u3378\u06b8",
+ "\u0003\u0002\u0002\u0002\u3379\u337a\u0007O\u0002\u0002\u337a\u337b",
+ "\u0007Q\u0002\u0002\u337b\u337c\u0007F\u0002\u0002\u337c\u337d\u0007",
+ "G\u0002\u0002\u337d\u06ba\u0003\u0002\u0002\u0002\u337e\u337f\u0007",
+ "O\u0002\u0002\u337f\u3380\u0007Q\u0002\u0002\u3380\u3381\u0007F\u0002",
+ "\u0002\u3381\u3382\u0007K\u0002\u0002\u3382\u3383\u0007H\u0002\u0002",
+ "\u3383\u3384\u0007K\u0002\u0002\u3384\u3385\u0007E\u0002\u0002\u3385",
+ "\u3386\u0007C\u0002\u0002\u3386\u3387\u0007V\u0002\u0002\u3387\u3388",
+ "\u0007K\u0002\u0002\u3388\u3389\u0007Q\u0002\u0002\u3389\u338a\u0007",
+ "P\u0002\u0002\u338a\u06bc\u0003\u0002\u0002\u0002\u338b\u338c\u0007",
+ "O\u0002\u0002\u338c\u338d\u0007Q\u0002\u0002\u338d\u338e\u0007F\u0002",
+ "\u0002\u338e\u338f\u0007K\u0002\u0002\u338f\u3390\u0007H\u0002\u0002",
+ "\u3390\u3391\u0007[\u0002\u0002\u3391\u3392\u0007a\u0002\u0002\u3392",
+ "\u3393\u0007E\u0002\u0002\u3393\u3394\u0007Q\u0002\u0002\u3394\u3395",
+ "\u0007N\u0002\u0002\u3395\u3396\u0007W\u0002\u0002\u3396\u3397\u0007",
+ "O\u0002\u0002\u3397\u3398\u0007P\u0002\u0002\u3398\u3399\u0007a\u0002",
+ "\u0002\u3399\u339a\u0007V\u0002\u0002\u339a\u339b\u0007[\u0002\u0002",
+ "\u339b\u339c\u0007R\u0002\u0002\u339c\u339d\u0007G\u0002\u0002\u339d",
+ "\u06be\u0003\u0002\u0002\u0002\u339e\u339f\u0007O\u0002\u0002\u339f",
+ "\u33a0\u0007Q\u0002\u0002\u33a0\u33a1\u0007F\u0002\u0002\u33a1\u33a2",
+ "\u0007K\u0002\u0002\u33a2\u33a3\u0007H\u0002\u0002\u33a3\u33a4\u0007",
+ "[\u0002\u0002\u33a4\u06c0\u0003\u0002\u0002\u0002\u33a5\u33a6\u0007",
+ "O\u0002\u0002\u33a6\u33a7\u0007Q\u0002\u0002\u33a7\u33a8\u0007F\u0002",
+ "\u0002\u33a8\u06c2\u0003\u0002\u0002\u0002\u33a9\u33aa\u0007O\u0002",
+ "\u0002\u33aa\u33ab\u0007Q\u0002\u0002\u33ab\u33ac\u0007F\u0002\u0002",
+ "\u33ac\u33ad\u0007W\u0002\u0002\u33ad\u33ae\u0007N\u0002\u0002\u33ae",
+ "\u33af\u0007G\u0002\u0002\u33af\u06c4\u0003\u0002\u0002\u0002\u33b0",
+ "\u33b1\u0007O\u0002\u0002\u33b1\u33b2\u0007Q\u0002\u0002\u33b2\u33b3",
+ "\u0007P\u0002\u0002\u33b3\u33b4\u0007K\u0002\u0002\u33b4\u33b5\u0007",
+ "V\u0002\u0002\u33b5\u33b6\u0007Q\u0002\u0002\u33b6\u33b7\u0007T\u0002",
+ "\u0002\u33b7\u33b8\u0007K\u0002\u0002\u33b8\u33b9\u0007P\u0002\u0002",
+ "\u33b9\u33ba\u0007I\u0002\u0002\u33ba\u06c6\u0003\u0002\u0002\u0002",
+ "\u33bb\u33bc\u0007O\u0002\u0002\u33bc\u33bd\u0007Q\u0002\u0002\u33bd",
+ "\u33be\u0007P\u0002\u0002\u33be\u33bf\u0007K\u0002\u0002\u33bf\u33c0",
+ "\u0007V\u0002\u0002\u33c0\u33c1\u0007Q\u0002\u0002\u33c1\u33c2\u0007",
+ "T\u0002\u0002\u33c2\u06c8\u0003\u0002\u0002\u0002\u33c3\u33c4\u0007",
+ "O\u0002\u0002\u33c4\u33c5\u0007Q\u0002\u0002\u33c5\u33c6\u0007P\u0002",
+ "\u0002\u33c6\u33c7\u0007V\u0002\u0002\u33c7\u33c8\u0007J\u0002\u0002",
+ "\u33c8\u06ca\u0003\u0002\u0002\u0002\u33c9\u33ca\u0007O\u0002\u0002",
+ "\u33ca\u33cb\u0007Q\u0002\u0002\u33cb\u33cc\u0007P\u0002\u0002\u33cc",
+ "\u33cd\u0007V\u0002\u0002\u33cd\u33ce\u0007J\u0002\u0002\u33ce\u33cf",
+ "\u0007U\u0002\u0002\u33cf\u33d0\u0007a\u0002\u0002\u33d0\u33d1\u0007",
+ "D\u0002\u0002\u33d1\u33d2\u0007G\u0002\u0002\u33d2\u33d3\u0007V\u0002",
+ "\u0002\u33d3\u33d4\u0007Y\u0002\u0002\u33d4\u33d5\u0007G\u0002\u0002",
+ "\u33d5\u33d6\u0007G\u0002\u0002\u33d6\u33d7\u0007P\u0002\u0002\u33d7",
+ "\u06cc\u0003\u0002\u0002\u0002\u33d8\u33d9\u0007O\u0002\u0002\u33d9",
+ "\u33da\u0007Q\u0002\u0002\u33da\u33db\u0007P\u0002\u0002\u33db\u33dc",
+ "\u0007V\u0002\u0002\u33dc\u33dd\u0007J\u0002\u0002\u33dd\u33de\u0007",
+ "U\u0002\u0002\u33de\u06ce\u0003\u0002\u0002\u0002\u33df\u33e0\u0007",
+ "O\u0002\u0002\u33e0\u33e1\u0007Q\u0002\u0002\u33e1\u33e2\u0007W\u0002",
+ "\u0002\u33e2\u33e3\u0007P\u0002\u0002\u33e3\u33e4\u0007V\u0002\u0002",
+ "\u33e4\u06d0\u0003\u0002\u0002\u0002\u33e5\u33e6\u0007O\u0002\u0002",
+ "\u33e6\u33e7\u0007Q\u0002\u0002\u33e7\u33e8\u0007W\u0002\u0002\u33e8",
+ "\u33e9\u0007P\u0002\u0002\u33e9\u33ea\u0007V\u0002\u0002\u33ea\u33eb",
+ "\u0007R\u0002\u0002\u33eb\u33ec\u0007C\u0002\u0002\u33ec\u33ed\u0007",
+ "V\u0002\u0002\u33ed\u33ee\u0007J\u0002\u0002\u33ee\u06d2\u0003\u0002",
+ "\u0002\u0002\u33ef\u33f0\u0007O\u0002\u0002\u33f0\u33f1\u0007Q\u0002",
+ "\u0002\u33f1\u33f2\u0007X\u0002\u0002\u33f2\u33f3\u0007G\u0002\u0002",
+ "\u33f3\u33f4\u0007O\u0002\u0002\u33f4\u33f5\u0007G\u0002\u0002\u33f5",
+ "\u33f6\u0007P\u0002\u0002\u33f6\u33f7\u0007V\u0002\u0002\u33f7\u06d4",
+ "\u0003\u0002\u0002\u0002\u33f8\u33f9\u0007O\u0002\u0002\u33f9\u33fa",
+ "\u0007Q\u0002\u0002\u33fa\u33fb\u0007X\u0002\u0002\u33fb\u33fc\u0007",
+ "G\u0002\u0002\u33fc\u06d6\u0003\u0002\u0002\u0002\u33fd\u33fe\u0007",
+ "O\u0002\u0002\u33fe\u33ff\u0007W\u0002\u0002\u33ff\u3400\u0007N\u0002",
+ "\u0002\u3400\u3401\u0007V\u0002\u0002\u3401\u3402\u0007K\u0002\u0002",
+ "\u3402\u3403\u0007F\u0002\u0002\u3403\u3404\u0007K\u0002\u0002\u3404",
+ "\u3405\u0007O\u0002\u0002\u3405\u3406\u0007G\u0002\u0002\u3406\u3407",
+ "\u0007P\u0002\u0002\u3407\u3408\u0007U\u0002\u0002\u3408\u3409\u0007",
+ "K\u0002\u0002\u3409\u340a\u0007Q\u0002\u0002\u340a\u340b\u0007P\u0002",
+ "\u0002\u340b\u340c\u0007C\u0002\u0002\u340c\u340d\u0007N\u0002\u0002",
+ "\u340d\u06d8\u0003\u0002\u0002\u0002\u340e\u340f\u0007O\u0002\u0002",
+ "\u340f\u3410\u0007W\u0002\u0002\u3410\u3411\u0007N\u0002\u0002\u3411",
+ "\u3412\u0007V\u0002\u0002\u3412\u3413\u0007K\u0002\u0002\u3413\u3414",
+ "\u0007U\u0002\u0002\u3414\u3415\u0007G\u0002\u0002\u3415\u3416\u0007",
+ "V\u0002\u0002\u3416\u06da\u0003\u0002\u0002\u0002\u3417\u3418\u0007",
+ "O\u0002\u0002\u3418\u3419\u0007X\u0002\u0002\u3419\u341a\u0007a\u0002",
+ "\u0002\u341a\u341b\u0007O\u0002\u0002\u341b\u341c\u0007G\u0002\u0002",
+ "\u341c\u341d\u0007T\u0002\u0002\u341d\u341e\u0007I\u0002\u0002\u341e",
+ "\u341f\u0007G\u0002\u0002\u341f\u06dc\u0003\u0002\u0002\u0002\u3420",
+ "\u3421\u0007P\u0002\u0002\u3421\u3422\u0007C\u0002\u0002\u3422\u3423",
+ "\u0007O\u0002\u0002\u3423\u3424\u0007G\u0002\u0002\u3424\u3425\u0007",
+ "F\u0002\u0002\u3425\u06de\u0003\u0002\u0002\u0002\u3426\u3427\u0007",
+ "P\u0002\u0002\u3427\u3428\u0007C\u0002\u0002\u3428\u3429\u0007O\u0002",
+ "\u0002\u3429\u342a\u0007G\u0002\u0002\u342a\u06e0\u0003\u0002\u0002",
+ "\u0002\u342b\u342c\u0007P\u0002\u0002\u342c\u342d\u0007C\u0002\u0002",
+ "\u342d\u342e\u0007O\u0002\u0002\u342e\u342f\u0007G\u0002\u0002\u342f",
+ "\u3430\u0007U\u0002\u0002\u3430\u3431\u0007R\u0002\u0002\u3431\u3432",
+ "\u0007C\u0002\u0002\u3432\u3433\u0007E\u0002\u0002\u3433\u3434\u0007",
+ "G\u0002\u0002\u3434\u06e2\u0003\u0002\u0002\u0002\u3435\u3436\u0007",
+ "P\u0002\u0002\u3436\u3437\u0007C\u0002\u0002\u3437\u3438\u0007P\u0002",
+ "\u0002\u3438\u06e4\u0003\u0002\u0002\u0002\u3439\u343a\u0007P\u0002",
+ "\u0002\u343a\u343b\u0007C\u0002\u0002\u343b\u343c\u0007P\u0002\u0002",
+ "\u343c\u343d\u0007X\u0002\u0002\u343d\u343e\u0007N\u0002\u0002\u343e",
+ "\u06e6\u0003\u0002\u0002\u0002\u343f\u3440\u0007P\u0002\u0002\u3440",
+ "\u3441\u0007C\u0002\u0002\u3441\u3442\u0007V\u0002\u0002\u3442\u3443",
+ "\u0007K\u0002\u0002\u3443\u3444\u0007Q\u0002\u0002\u3444\u3445\u0007",
+ "P\u0002\u0002\u3445\u3446\u0007C\u0002\u0002\u3446\u3447\u0007N\u0002",
+ "\u0002\u3447\u06e8\u0003\u0002\u0002\u0002\u3448\u3449\u0007P\u0002",
+ "\u0002\u3449\u344a\u0007C\u0002\u0002\u344a\u344b\u0007V\u0002\u0002",
+ "\u344b\u344c\u0007K\u0002\u0002\u344c\u344d\u0007X\u0002\u0002\u344d",
+ "\u344e\u0007G\u0002\u0002\u344e\u344f\u0007a\u0002\u0002\u344f\u3450",
+ "\u0007H\u0002\u0002\u3450\u3451\u0007W\u0002\u0002\u3451\u3452\u0007",
+ "N\u0002\u0002\u3452\u3453\u0007N\u0002\u0002\u3453\u3454\u0007a\u0002",
+ "\u0002\u3454\u3455\u0007Q\u0002\u0002\u3455\u3456\u0007W\u0002\u0002",
+ "\u3456\u3457\u0007V\u0002\u0002\u3457\u3458\u0007G\u0002\u0002\u3458",
+ "\u3459\u0007T\u0002\u0002\u3459\u345a\u0007a\u0002\u0002\u345a\u345b",
+ "\u0007L\u0002\u0002\u345b\u345c\u0007Q\u0002\u0002\u345c\u345d\u0007",
+ "K\u0002\u0002\u345d\u345e\u0007P\u0002\u0002\u345e\u06ea\u0003\u0002",
+ "\u0002\u0002\u345f\u3460\u0007P\u0002\u0002\u3460\u3461\u0007C\u0002",
+ "\u0002\u3461\u3462\u0007V\u0002\u0002\u3462\u3463\u0007K\u0002\u0002",
+ "\u3463\u3464\u0007X\u0002\u0002\u3464\u3465\u0007G\u0002\u0002\u3465",
+ "\u06ec\u0003\u0002\u0002\u0002\u3466\u3467\u0007P\u0002\u0002\u3467",
+ "\u3468\u0007C\u0002\u0002\u3468\u3469\u0007V\u0002\u0002\u3469\u346a",
+ "\u0007W\u0002\u0002\u346a\u346b\u0007T\u0002\u0002\u346b\u346c\u0007",
+ "C\u0002\u0002\u346c\u346d\u0007N\u0002\u0002\u346d\u06ee\u0003\u0002",
+ "\u0002\u0002\u346e\u346f\u0007P\u0002\u0002\u346f\u3470\u0007C\u0002",
+ "\u0002\u3470\u3471\u0007V\u0002\u0002\u3471\u3472\u0007W\u0002\u0002",
+ "\u3472\u3473\u0007T\u0002\u0002\u3473\u3474\u0007C\u0002\u0002\u3474",
+ "\u3475\u0007N\u0002\u0002\u3475\u3476\u0007P\u0002\u0002\u3476\u06f0",
+ "\u0003\u0002\u0002\u0002\u3477\u3478\u0007P\u0002\u0002\u3478\u3479",
+ "\u0007C\u0002\u0002\u3479\u347a\u0007X\u0002\u0002\u347a\u06f2\u0003",
+ "\u0002\u0002\u0002\u347b\u347c\u0007P\u0002\u0002\u347c\u347d\u0007",
+ "E\u0002\u0002\u347d\u347e\u0007J\u0002\u0002\u347e\u347f\u0007C\u0002",
+ "\u0002\u347f\u3480\u0007T\u0002\u0002\u3480\u3481\u0007a\u0002\u0002",
+ "\u3481\u3482\u0007E\u0002\u0002\u3482\u3483\u0007U\u0002\u0002\u3483",
+ "\u06f4\u0003\u0002\u0002\u0002\u3484\u3485\u0007P\u0002\u0002\u3485",
+ "\u3486\u0007E\u0002\u0002\u3486\u3487\u0007J\u0002\u0002\u3487\u3488",
+ "\u0007C\u0002\u0002\u3488\u3489\u0007T\u0002\u0002\u3489\u06f6\u0003",
+ "\u0002\u0002\u0002\u348a\u348b\u0007P\u0002\u0002\u348b\u348c\u0007",
+ "E\u0002\u0002\u348c\u348d\u0007J\u0002\u0002\u348d\u348e\u0007T\u0002",
+ "\u0002\u348e\u06f8\u0003\u0002\u0002\u0002\u348f\u3490\u0007P\u0002",
+ "\u0002\u3490\u3491\u0007E\u0002\u0002\u3491\u3492\u0007N\u0002\u0002",
+ "\u3492\u3493\u0007Q\u0002\u0002\u3493\u3494\u0007D\u0002\u0002\u3494",
+ "\u06fa\u0003\u0002\u0002\u0002\u3495\u3496\u0007P\u0002\u0002\u3496",
+ "\u3497\u0007G\u0002\u0002\u3497\u3498\u0007G\u0002\u0002\u3498\u3499",
+ "\u0007F\u0002\u0002\u3499\u349a\u0007G\u0002\u0002\u349a\u349b\u0007",
+ "F\u0002\u0002\u349b\u06fc\u0003\u0002\u0002\u0002\u349c\u349d\u0007",
+ "P\u0002\u0002\u349d\u349e\u0007G\u0002\u0002\u349e\u349f\u0007I\u0002",
+ "\u0002\u349f\u06fe\u0003\u0002\u0002\u0002\u34a0\u34a1\u0007P\u0002",
+ "\u0002\u34a1\u34a2\u0007G\u0002\u0002\u34a2\u34a3\u0007U\u0002\u0002",
+ "\u34a3\u34a4\u0007V\u0002\u0002\u34a4\u34a5\u0007G\u0002\u0002\u34a5",
+ "\u34a6\u0007F\u0002\u0002\u34a6\u0700\u0003\u0002\u0002\u0002\u34a7",
+ "\u34a8\u0007P\u0002\u0002\u34a8\u34a9\u0007G\u0002\u0002\u34a9\u34aa",
+ "\u0007U\u0002\u0002\u34aa\u34ab\u0007V\u0002\u0002\u34ab\u34ac\u0007",
+ "G\u0002\u0002\u34ac\u34ad\u0007F\u0002\u0002\u34ad\u34ae\u0007a\u0002",
+ "\u0002\u34ae\u34af\u0007V\u0002\u0002\u34af\u34b0\u0007C\u0002\u0002",
+ "\u34b0\u34b1\u0007D\u0002\u0002\u34b1\u34b2\u0007N\u0002\u0002\u34b2",
+ "\u34b3\u0007G\u0002\u0002\u34b3\u34b4\u0007a\u0002\u0002\u34b4\u34b5",
+ "\u0007H\u0002\u0002\u34b5\u34b6\u0007C\u0002\u0002\u34b6\u34b7\u0007",
+ "U\u0002\u0002\u34b7\u34b8\u0007V\u0002\u0002\u34b8\u34b9\u0007a\u0002",
+ "\u0002\u34b9\u34ba\u0007K\u0002\u0002\u34ba\u34bb\u0007P\u0002\u0002",
+ "\u34bb\u34bc\u0007U\u0002\u0002\u34bc\u34bd\u0007G\u0002\u0002\u34bd",
+ "\u34be\u0007T\u0002\u0002\u34be\u34bf\u0007V\u0002\u0002\u34bf\u0702",
+ "\u0003\u0002\u0002\u0002\u34c0\u34c1\u0007P\u0002\u0002\u34c1\u34c2",
+ "\u0007G\u0002\u0002\u34c2\u34c3\u0007U\u0002\u0002\u34c3\u34c4\u0007",
+ "V\u0002\u0002\u34c4\u34c5\u0007G\u0002\u0002\u34c5\u34c6\u0007F\u0002",
+ "\u0002\u34c6\u34c7\u0007a\u0002\u0002\u34c7\u34c8\u0007V\u0002\u0002",
+ "\u34c8\u34c9\u0007C\u0002\u0002\u34c9\u34ca\u0007D\u0002\u0002\u34ca",
+ "\u34cb\u0007N\u0002\u0002\u34cb\u34cc\u0007G\u0002\u0002\u34cc\u34cd",
+ "\u0007a\u0002\u0002\u34cd\u34ce\u0007I\u0002\u0002\u34ce\u34cf\u0007",
+ "G\u0002\u0002\u34cf\u34d0\u0007V\u0002\u0002\u34d0\u34d1\u0007a\u0002",
+ "\u0002\u34d1\u34d2\u0007T\u0002\u0002\u34d2\u34d3\u0007G\u0002\u0002",
+ "\u34d3\u34d4\u0007H\u0002\u0002\u34d4\u34d5\u0007U\u0002\u0002\u34d5",
+ "\u0704\u0003\u0002\u0002\u0002\u34d6\u34d7\u0007P\u0002\u0002\u34d7",
+ "\u34d8\u0007G\u0002\u0002\u34d8\u34d9\u0007U\u0002\u0002\u34d9\u34da",
+ "\u0007V\u0002\u0002\u34da\u34db\u0007G\u0002\u0002\u34db\u34dc\u0007",
+ "F\u0002\u0002\u34dc\u34dd\u0007a\u0002\u0002\u34dd\u34de\u0007V\u0002",
+ "\u0002\u34de\u34df\u0007C\u0002\u0002\u34df\u34e0\u0007D\u0002\u0002",
+ "\u34e0\u34e1\u0007N\u0002\u0002\u34e1\u34e2\u0007G\u0002\u0002\u34e2",
+ "\u34e3\u0007a\u0002\u0002\u34e3\u34e4\u0007K\u0002\u0002\u34e4\u34e5",
+ "\u0007F\u0002\u0002\u34e5\u0706\u0003\u0002\u0002\u0002\u34e6\u34e7",
+ "\u0007P\u0002\u0002\u34e7\u34e8\u0007G\u0002\u0002\u34e8\u34e9\u0007",
+ "U\u0002\u0002\u34e9\u34ea\u0007V\u0002\u0002\u34ea\u34eb\u0007G\u0002",
+ "\u0002\u34eb\u34ec\u0007F\u0002\u0002\u34ec\u34ed\u0007a\u0002\u0002",
+ "\u34ed\u34ee\u0007V\u0002\u0002\u34ee\u34ef\u0007C\u0002\u0002\u34ef",
+ "\u34f0\u0007D\u0002\u0002\u34f0\u34f1\u0007N\u0002\u0002\u34f1\u34f2",
+ "\u0007G\u0002\u0002\u34f2\u34f3\u0007a\u0002\u0002\u34f3\u34f4\u0007",
+ "U\u0002\u0002\u34f4\u34f5\u0007G\u0002\u0002\u34f5\u34f6\u0007V\u0002",
+ "\u0002\u34f6\u34f7\u0007a\u0002\u0002\u34f7\u34f8\u0007T\u0002\u0002",
+ "\u34f8\u34f9\u0007G\u0002\u0002\u34f9\u34fa\u0007H\u0002\u0002\u34fa",
+ "\u34fb\u0007U\u0002\u0002\u34fb\u0708\u0003\u0002\u0002\u0002\u34fc",
+ "\u34fd\u0007P\u0002\u0002\u34fd\u34fe\u0007G\u0002\u0002\u34fe\u34ff",
+ "\u0007U\u0002\u0002\u34ff\u3500\u0007V\u0002\u0002\u3500\u3501\u0007",
+ "G\u0002\u0002\u3501\u3502\u0007F\u0002\u0002\u3502\u3503\u0007a\u0002",
+ "\u0002\u3503\u3504\u0007V\u0002\u0002\u3504\u3505\u0007C\u0002\u0002",
+ "\u3505\u3506\u0007D\u0002\u0002\u3506\u3507\u0007N\u0002\u0002\u3507",
+ "\u3508\u0007G\u0002\u0002\u3508\u3509\u0007a\u0002\u0002\u3509\u350a",
+ "\u0007U\u0002\u0002\u350a\u350b\u0007G\u0002\u0002\u350b\u350c\u0007",
+ "V\u0002\u0002\u350c\u350d\u0007a\u0002\u0002\u350d\u350e\u0007U\u0002",
+ "\u0002\u350e\u350f\u0007G\u0002\u0002\u350f\u3510\u0007V\u0002\u0002",
+ "\u3510\u3511\u0007K\u0002\u0002\u3511\u3512\u0007F\u0002\u0002\u3512",
+ "\u070a\u0003\u0002\u0002\u0002\u3513\u3514\u0007P\u0002\u0002\u3514",
+ "\u3515\u0007G\u0002\u0002\u3515\u3516\u0007V\u0002\u0002\u3516\u3517",
+ "\u0007Y\u0002\u0002\u3517\u3518\u0007Q\u0002\u0002\u3518\u3519\u0007",
+ "T\u0002\u0002\u3519\u351a\u0007M\u0002\u0002\u351a\u070c\u0003\u0002",
+ "\u0002\u0002\u351b\u351c\u0007P\u0002\u0002\u351c\u351d\u0007G\u0002",
+ "\u0002\u351d\u351e\u0007X\u0002\u0002\u351e\u351f\u0007G\u0002\u0002",
+ "\u351f\u3520\u0007T\u0002\u0002\u3520\u070e\u0003\u0002\u0002\u0002",
+ "\u3521\u3522\u0007P\u0002\u0002\u3522\u3523\u0007G\u0002\u0002\u3523",
+ "\u3524\u0007Y\u0002\u0002\u3524\u0710\u0003\u0002\u0002\u0002\u3525",
+ "\u3526\u0007P\u0002\u0002\u3526\u3527\u0007G\u0002\u0002\u3527\u3528",
+ "\u0007Y\u0002\u0002\u3528\u3529\u0007a\u0002\u0002\u3529\u352a\u0007",
+ "V\u0002\u0002\u352a\u352b\u0007K\u0002\u0002\u352b\u352c\u0007O\u0002",
+ "\u0002\u352c\u352d\u0007G\u0002\u0002\u352d\u0712\u0003\u0002\u0002",
+ "\u0002\u352e\u352f\u0007P\u0002\u0002\u352f\u3530\u0007G\u0002\u0002",
+ "\u3530\u3531\u0007Z\u0002\u0002\u3531\u3532\u0007V\u0002\u0002\u3532",
+ "\u3533\u0007a\u0002\u0002\u3533\u3534\u0007F\u0002\u0002\u3534\u3535",
+ "\u0007C\u0002\u0002\u3535\u3536\u0007[\u0002\u0002\u3536\u0714\u0003",
+ "\u0002\u0002\u0002\u3537\u3538\u0007P\u0002\u0002\u3538\u3539\u0007",
+ "G\u0002\u0002\u3539\u353a\u0007Z\u0002\u0002\u353a\u353b\u0007V\u0002",
+ "\u0002\u353b\u0716\u0003\u0002\u0002\u0002\u353c\u353d\u0007P\u0002",
+ "\u0002\u353d\u353e\u0007N\u0002\u0002\u353e\u353f\u0007a\u0002\u0002",
+ "\u353f\u3540\u0007C\u0002\u0002\u3540\u3541\u0007L\u0002\u0002\u3541",
+ "\u0718\u0003\u0002\u0002\u0002\u3542\u3543\u0007P\u0002\u0002\u3543",
+ "\u3544\u0007N\u0002\u0002\u3544\u3545\u0007L\u0002\u0002\u3545\u3546",
+ "\u0007a\u0002\u0002\u3546\u3547\u0007D\u0002\u0002\u3547\u3548\u0007",
+ "C\u0002\u0002\u3548\u3549\u0007V\u0002\u0002\u3549\u354a\u0007E\u0002",
+ "\u0002\u354a\u354b\u0007J\u0002\u0002\u354b\u354c\u0007K\u0002\u0002",
+ "\u354c\u354d\u0007P\u0002\u0002\u354d\u354e\u0007I\u0002\u0002\u354e",
+ "\u071a\u0003\u0002\u0002\u0002\u354f\u3550\u0007P\u0002\u0002\u3550",
+ "\u3551\u0007N\u0002\u0002\u3551\u3552\u0007L\u0002\u0002\u3552\u3553",
+ "\u0007a\u0002\u0002\u3553\u3554\u0007K\u0002\u0002\u3554\u3555\u0007",
+ "P\u0002\u0002\u3555\u3556\u0007F\u0002\u0002\u3556\u3557\u0007G\u0002",
+ "\u0002\u3557\u3558\u0007Z\u0002\u0002\u3558\u3559\u0007a\u0002\u0002",
+ "\u3559\u355a\u0007H\u0002\u0002\u355a\u355b\u0007K\u0002\u0002\u355b",
+ "\u355c\u0007N\u0002\u0002\u355c\u355d\u0007V\u0002\u0002\u355d\u355e",
+ "\u0007G\u0002\u0002\u355e\u355f\u0007T\u0002\u0002\u355f\u071c\u0003",
+ "\u0002\u0002\u0002\u3560\u3561\u0007P\u0002\u0002\u3561\u3562\u0007",
+ "N\u0002\u0002\u3562\u3563\u0007L\u0002\u0002\u3563\u3564\u0007a\u0002",
+ "\u0002\u3564\u3565\u0007K\u0002\u0002\u3565\u3566\u0007P\u0002\u0002",
+ "\u3566\u3567\u0007F\u0002\u0002\u3567\u3568\u0007G\u0002\u0002\u3568",
+ "\u3569\u0007Z\u0002\u0002\u3569\u356a\u0007a\u0002\u0002\u356a\u356b",
+ "\u0007U\u0002\u0002\u356b\u356c\u0007E\u0002\u0002\u356c\u356d\u0007",
+ "C\u0002\u0002\u356d\u356e\u0007P\u0002\u0002\u356e\u071e\u0003\u0002",
+ "\u0002\u0002\u356f\u3570\u0007P\u0002\u0002\u3570\u3571\u0007N\u0002",
+ "\u0002\u3571\u3572\u0007L\u0002\u0002\u3572\u3573\u0007a\u0002\u0002",
+ "\u3573\u3574\u0007R\u0002\u0002\u3574\u3575\u0007T\u0002\u0002\u3575",
+ "\u3576\u0007G\u0002\u0002\u3576\u3577\u0007H\u0002\u0002\u3577\u3578",
+ "\u0007G\u0002\u0002\u3578\u3579\u0007V\u0002\u0002\u3579\u357a\u0007",
+ "E\u0002\u0002\u357a\u357b\u0007J\u0002\u0002\u357b\u0720\u0003\u0002",
+ "\u0002\u0002\u357c\u357d\u0007P\u0002\u0002\u357d\u357e\u0007N\u0002",
+ "\u0002\u357e\u357f\u0007U\u0002\u0002\u357f\u3580\u0007a\u0002\u0002",
+ "\u3580\u3581\u0007E\u0002\u0002\u3581\u3582\u0007C\u0002\u0002\u3582",
+ "\u3583\u0007N\u0002\u0002\u3583\u3584\u0007G\u0002\u0002\u3584\u3585",
+ "\u0007P\u0002\u0002\u3585\u3586\u0007F\u0002\u0002\u3586\u3587\u0007",
+ "C\u0002\u0002\u3587\u3588\u0007T\u0002\u0002\u3588\u0722\u0003\u0002",
+ "\u0002\u0002\u3589\u358a\u0007P\u0002\u0002\u358a\u358b\u0007N\u0002",
+ "\u0002\u358b\u358c\u0007U\u0002\u0002\u358c\u358d\u0007a\u0002\u0002",
+ "\u358d\u358e\u0007E\u0002\u0002\u358e\u358f\u0007J\u0002\u0002\u358f",
+ "\u3590\u0007C\u0002\u0002\u3590\u3591\u0007T\u0002\u0002\u3591\u3592",
+ "\u0007C\u0002\u0002\u3592\u3593\u0007E\u0002\u0002\u3593\u3594\u0007",
+ "V\u0002\u0002\u3594\u3595\u0007G\u0002\u0002\u3595\u3596\u0007T\u0002",
+ "\u0002\u3596\u3597\u0007U\u0002\u0002\u3597\u3598\u0007G\u0002\u0002",
+ "\u3598\u3599\u0007V\u0002\u0002\u3599\u0724\u0003\u0002\u0002\u0002",
+ "\u359a\u359b\u0007P\u0002\u0002\u359b\u359c\u0007N\u0002\u0002\u359c",
+ "\u359d\u0007U\u0002\u0002\u359d\u359e\u0007a\u0002\u0002\u359e\u359f",
+ "\u0007E\u0002\u0002\u359f\u35a0\u0007J\u0002\u0002\u35a0\u35a1\u0007",
+ "C\u0002\u0002\u35a1\u35a2\u0007T\u0002\u0002\u35a2\u35a3\u0007U\u0002",
+ "\u0002\u35a3\u35a4\u0007G\u0002\u0002\u35a4\u35a5\u0007V\u0002\u0002",
+ "\u35a5\u35a6\u0007a\u0002\u0002\u35a6\u35a7\u0007F\u0002\u0002\u35a7",
+ "\u35a8\u0007G\u0002\u0002\u35a8\u35a9\u0007E\u0002\u0002\u35a9\u35aa",
+ "\u0007N\u0002\u0002\u35aa\u35ab\u0007a\u0002\u0002\u35ab\u35ac\u0007",
+ "N\u0002\u0002\u35ac\u35ad\u0007G\u0002\u0002\u35ad\u35ae\u0007P\u0002",
+ "\u0002\u35ae\u0726\u0003\u0002\u0002\u0002\u35af\u35b0\u0007P\u0002",
+ "\u0002\u35b0\u35b1\u0007N\u0002\u0002\u35b1\u35b2\u0007U\u0002\u0002",
+ "\u35b2\u35b3\u0007a\u0002\u0002\u35b3\u35b4\u0007E\u0002\u0002\u35b4",
+ "\u35b5\u0007J\u0002\u0002\u35b5\u35b6\u0007C\u0002\u0002\u35b6\u35b7",
+ "\u0007T\u0002\u0002\u35b7\u35b8\u0007U\u0002\u0002\u35b8\u35b9\u0007",
+ "G\u0002\u0002\u35b9\u35ba\u0007V\u0002\u0002\u35ba\u35bb\u0007a\u0002",
+ "\u0002\u35bb\u35bc\u0007K\u0002\u0002\u35bc\u35bd\u0007F\u0002\u0002",
+ "\u35bd\u0728\u0003\u0002\u0002\u0002\u35be\u35bf\u0007P\u0002\u0002",
+ "\u35bf\u35c0\u0007N\u0002\u0002\u35c0\u35c1\u0007U\u0002\u0002\u35c1",
+ "\u35c2\u0007a\u0002\u0002\u35c2\u35c3\u0007E\u0002\u0002\u35c3\u35c4",
+ "\u0007J\u0002\u0002\u35c4\u35c5\u0007C\u0002\u0002\u35c5\u35c6\u0007",
+ "T\u0002\u0002\u35c6\u35c7\u0007U\u0002\u0002\u35c7\u35c8\u0007G\u0002",
+ "\u0002\u35c8\u35c9\u0007V\u0002\u0002\u35c9\u35ca\u0007a\u0002\u0002",
+ "\u35ca\u35cb\u0007P\u0002\u0002\u35cb\u35cc\u0007C\u0002\u0002\u35cc",
+ "\u35cd\u0007O\u0002\u0002\u35cd\u35ce\u0007G\u0002\u0002\u35ce\u072a",
+ "\u0003\u0002\u0002\u0002\u35cf\u35d0\u0007P\u0002\u0002\u35d0\u35d1",
+ "\u0007N\u0002\u0002\u35d1\u35d2\u0007U\u0002\u0002\u35d2\u35d3\u0007",
+ "a\u0002\u0002\u35d3\u35d4\u0007E\u0002\u0002\u35d4\u35d5\u0007Q\u0002",
+ "\u0002\u35d5\u35d6\u0007O\u0002\u0002\u35d6\u35d7\u0007R\u0002\u0002",
+ "\u35d7\u072c\u0003\u0002\u0002\u0002\u35d8\u35d9\u0007P\u0002\u0002",
+ "\u35d9\u35da\u0007N\u0002\u0002\u35da\u35db\u0007U\u0002\u0002\u35db",
+ "\u35dc\u0007a\u0002\u0002\u35dc\u35dd\u0007E\u0002\u0002\u35dd\u35de",
+ "\u0007W\u0002\u0002\u35de\u35df\u0007T\u0002\u0002\u35df\u35e0\u0007",
+ "T\u0002\u0002\u35e0\u35e1\u0007G\u0002\u0002\u35e1\u35e2\u0007P\u0002",
+ "\u0002\u35e2\u35e3\u0007E\u0002\u0002\u35e3\u35e4\u0007[\u0002\u0002",
+ "\u35e4\u072e\u0003\u0002\u0002\u0002\u35e5\u35e6\u0007P\u0002\u0002",
+ "\u35e6\u35e7\u0007N\u0002\u0002\u35e7\u35e8\u0007U\u0002\u0002\u35e8",
+ "\u35e9\u0007a\u0002\u0002\u35e9\u35ea\u0007F\u0002\u0002\u35ea\u35eb",
+ "\u0007C\u0002\u0002\u35eb\u35ec\u0007V\u0002\u0002\u35ec\u35ed\u0007",
+ "G\u0002\u0002\u35ed\u35ee\u0007a\u0002\u0002\u35ee\u35ef\u0007H\u0002",
+ "\u0002\u35ef\u35f0\u0007Q\u0002\u0002\u35f0\u35f1\u0007T\u0002\u0002",
+ "\u35f1\u35f2\u0007O\u0002\u0002\u35f2\u35f3\u0007C\u0002\u0002\u35f3",
+ "\u35f4\u0007V\u0002\u0002\u35f4\u0730\u0003\u0002\u0002\u0002\u35f5",
+ "\u35f6\u0007P\u0002\u0002\u35f6\u35f7\u0007N\u0002\u0002\u35f7\u35f8",
+ "\u0007U\u0002\u0002\u35f8\u35f9\u0007a\u0002\u0002\u35f9\u35fa\u0007",
+ "F\u0002\u0002\u35fa\u35fb\u0007C\u0002\u0002\u35fb\u35fc\u0007V\u0002",
+ "\u0002\u35fc\u35fd\u0007G\u0002\u0002\u35fd\u35fe\u0007a\u0002\u0002",
+ "\u35fe\u35ff\u0007N\u0002\u0002\u35ff\u3600\u0007C\u0002\u0002\u3600",
+ "\u3601\u0007P\u0002\u0002\u3601\u3602\u0007I\u0002\u0002\u3602\u3603",
+ "\u0007W\u0002\u0002\u3603\u3604\u0007C\u0002\u0002\u3604\u3605\u0007",
+ "I\u0002\u0002\u3605\u3606\u0007G\u0002\u0002\u3606\u0732\u0003\u0002",
+ "\u0002\u0002\u3607\u3608\u0007P\u0002\u0002\u3608\u3609\u0007N\u0002",
+ "\u0002\u3609\u360a\u0007U\u0002\u0002\u360a\u360b\u0007a\u0002\u0002",
+ "\u360b\u360c\u0007K\u0002\u0002\u360c\u360d\u0007P\u0002\u0002\u360d",
+ "\u360e\u0007K\u0002\u0002\u360e\u360f\u0007V\u0002\u0002\u360f\u3610",
+ "\u0007E\u0002\u0002\u3610\u3611\u0007C\u0002\u0002\u3611\u3612\u0007",
+ "R\u0002\u0002\u3612\u0734\u0003\u0002\u0002\u0002\u3613\u3614\u0007",
+ "P\u0002\u0002\u3614\u3615\u0007N\u0002\u0002\u3615\u3616\u0007U\u0002",
+ "\u0002\u3616\u3617\u0007a\u0002\u0002\u3617\u3618\u0007K\u0002\u0002",
+ "\u3618\u3619\u0007U\u0002\u0002\u3619\u361a\u0007Q\u0002\u0002\u361a",
+ "\u361b\u0007a\u0002\u0002\u361b\u361c\u0007E\u0002\u0002\u361c\u361d",
+ "\u0007W\u0002\u0002\u361d\u361e\u0007T\u0002\u0002\u361e\u361f\u0007",
+ "T\u0002\u0002\u361f\u3620\u0007G\u0002\u0002\u3620\u3621\u0007P\u0002",
+ "\u0002\u3621\u3622\u0007E\u0002\u0002\u3622\u3623\u0007[\u0002\u0002",
+ "\u3623\u0736\u0003\u0002\u0002\u0002\u3624\u3625\u0007P\u0002\u0002",
+ "\u3625\u3626\u0007N\u0002\u0002\u3626\u3627\u0007a\u0002\u0002\u3627",
+ "\u3628\u0007U\u0002\u0002\u3628\u3629\u0007L\u0002\u0002\u3629\u0738",
+ "\u0003\u0002\u0002\u0002\u362a\u362b\u0007P\u0002\u0002\u362b\u362c",
+ "\u0007N\u0002\u0002\u362c\u362d\u0007U\u0002\u0002\u362d\u362e\u0007",
+ "a\u0002\u0002\u362e\u362f\u0007N\u0002\u0002\u362f\u3630\u0007C\u0002",
+ "\u0002\u3630\u3631\u0007P\u0002\u0002\u3631\u3632\u0007I\u0002\u0002",
+ "\u3632\u073a\u0003\u0002\u0002\u0002\u3633\u3634\u0007P\u0002\u0002",
+ "\u3634\u3635\u0007N\u0002\u0002\u3635\u3636\u0007U\u0002\u0002\u3636",
+ "\u3637\u0007a\u0002\u0002\u3637\u3638\u0007N\u0002\u0002\u3638\u3639",
+ "\u0007C\u0002\u0002\u3639\u363a\u0007P\u0002\u0002\u363a\u363b\u0007",
+ "I\u0002\u0002\u363b\u363c\u0007W\u0002\u0002\u363c\u363d\u0007C\u0002",
+ "\u0002\u363d\u363e\u0007I\u0002\u0002\u363e\u363f\u0007G\u0002\u0002",
+ "\u363f\u073c\u0003\u0002\u0002\u0002\u3640\u3641\u0007P\u0002\u0002",
+ "\u3641\u3642\u0007N\u0002\u0002\u3642\u3643\u0007U\u0002\u0002\u3643",
+ "\u3644\u0007a\u0002\u0002\u3644\u3645\u0007N\u0002\u0002\u3645\u3646",
+ "\u0007G\u0002\u0002\u3646\u3647\u0007P\u0002\u0002\u3647\u3648\u0007",
+ "I\u0002\u0002\u3648\u3649\u0007V\u0002\u0002\u3649\u364a\u0007J\u0002",
+ "\u0002\u364a\u364b\u0007a\u0002\u0002\u364b\u364c\u0007U\u0002\u0002",
+ "\u364c\u364d\u0007G\u0002\u0002\u364d\u364e\u0007O\u0002\u0002\u364e",
+ "\u364f\u0007C\u0002\u0002\u364f\u3650\u0007P\u0002\u0002\u3650\u3651",
+ "\u0007V\u0002\u0002\u3651\u3652\u0007K\u0002\u0002\u3652\u3653\u0007",
+ "E\u0002\u0002\u3653\u3654\u0007U\u0002\u0002\u3654\u073e\u0003\u0002",
+ "\u0002\u0002\u3655\u3656\u0007P\u0002\u0002\u3656\u3657\u0007N\u0002",
+ "\u0002\u3657\u3658\u0007U\u0002\u0002\u3658\u3659\u0007a\u0002\u0002",
+ "\u3659\u365a\u0007N\u0002\u0002\u365a\u365b\u0007Q\u0002\u0002\u365b",
+ "\u365c\u0007Y\u0002\u0002\u365c\u365d\u0007G\u0002\u0002\u365d\u365e",
+ "\u0007T\u0002\u0002\u365e\u0740\u0003\u0002\u0002\u0002\u365f\u3660",
+ "\u0007P\u0002\u0002\u3660\u3661\u0007N\u0002\u0002\u3661\u3662\u0007",
+ "U\u0002\u0002\u3662\u3663\u0007a\u0002\u0002\u3663\u3664\u0007P\u0002",
+ "\u0002\u3664\u3665\u0007E\u0002\u0002\u3665\u3666\u0007J\u0002\u0002",
+ "\u3666\u3667\u0007C\u0002\u0002\u3667\u3668\u0007T\u0002\u0002\u3668",
+ "\u3669\u0007a\u0002\u0002\u3669\u366a\u0007E\u0002\u0002\u366a\u366b",
+ "\u0007Q\u0002\u0002\u366b\u366c\u0007P\u0002\u0002\u366c\u366d\u0007",
+ "X\u0002\u0002\u366d\u366e\u0007a\u0002\u0002\u366e\u366f\u0007G\u0002",
+ "\u0002\u366f\u3670\u0007Z\u0002\u0002\u3670\u3671\u0007E\u0002\u0002",
+ "\u3671\u3672\u0007R\u0002\u0002\u3672\u0742\u0003\u0002\u0002\u0002",
+ "\u3673\u3674\u0007P\u0002\u0002\u3674\u3675\u0007N\u0002\u0002\u3675",
+ "\u3676\u0007U\u0002\u0002\u3676\u3677\u0007a\u0002\u0002\u3677\u3678",
+ "\u0007P\u0002\u0002\u3678\u3679\u0007W\u0002\u0002\u3679\u367a\u0007",
+ "O\u0002\u0002\u367a\u367b\u0007G\u0002\u0002\u367b\u367c\u0007T\u0002",
+ "\u0002\u367c\u367d\u0007K\u0002\u0002\u367d\u367e\u0007E\u0002\u0002",
+ "\u367e\u367f\u0007a\u0002\u0002\u367f\u3680\u0007E\u0002\u0002\u3680",
+ "\u3681\u0007J\u0002\u0002\u3681\u3682\u0007C\u0002\u0002\u3682\u3683",
+ "\u0007T\u0002\u0002\u3683\u3684\u0007C\u0002\u0002\u3684\u3685\u0007",
+ "E\u0002\u0002\u3685\u3686\u0007V\u0002\u0002\u3686\u3687\u0007G\u0002",
+ "\u0002\u3687\u3688\u0007T\u0002\u0002\u3688\u3689\u0007U\u0002\u0002",
+ "\u3689\u0744\u0003\u0002\u0002\u0002\u368a\u368b\u0007P\u0002\u0002",
+ "\u368b\u368c\u0007N\u0002\u0002\u368c\u368d\u0007U\u0002\u0002\u368d",
+ "\u368e\u0007a\u0002\u0002\u368e\u368f\u0007U\u0002\u0002\u368f\u3690",
+ "\u0007Q\u0002\u0002\u3690\u3691\u0007T\u0002\u0002\u3691\u3692\u0007",
+ "V\u0002\u0002\u3692\u0746\u0003\u0002\u0002\u0002\u3693\u3694\u0007",
+ "P\u0002\u0002\u3694\u3695\u0007N\u0002\u0002\u3695\u3696\u0007U\u0002",
+ "\u0002\u3696\u3697\u0007U\u0002\u0002\u3697\u3698\u0007Q\u0002\u0002",
+ "\u3698\u3699\u0007T\u0002\u0002\u3699\u369a\u0007V\u0002\u0002\u369a",
+ "\u0748\u0003\u0002\u0002\u0002\u369b\u369c\u0007P\u0002\u0002\u369c",
+ "\u369d\u0007N\u0002\u0002\u369d\u369e\u0007U\u0002\u0002\u369e\u369f",
+ "\u0007a\u0002\u0002\u369f\u36a0\u0007U\u0002\u0002\u36a0\u36a1\u0007",
+ "R\u0002\u0002\u36a1\u36a2\u0007G\u0002\u0002\u36a2\u36a3\u0007E\u0002",
+ "\u0002\u36a3\u36a4\u0007K\u0002\u0002\u36a4\u36a5\u0007C\u0002\u0002",
+ "\u36a5\u36a6\u0007N\u0002\u0002\u36a6\u36a7\u0007a\u0002\u0002\u36a7",
+ "\u36a8\u0007E\u0002\u0002\u36a8\u36a9\u0007J\u0002\u0002\u36a9\u36aa",
+ "\u0007C\u0002\u0002\u36aa\u36ab\u0007T\u0002\u0002\u36ab\u36ac\u0007",
+ "U\u0002\u0002\u36ac\u074a\u0003\u0002\u0002\u0002\u36ad\u36ae\u0007",
+ "P\u0002\u0002\u36ae\u36af\u0007N\u0002\u0002\u36af\u36b0\u0007U\u0002",
+ "\u0002\u36b0\u36b1\u0007a\u0002\u0002\u36b1\u36b2\u0007V\u0002\u0002",
+ "\u36b2\u36b3\u0007G\u0002\u0002\u36b3\u36b4\u0007T\u0002\u0002\u36b4",
+ "\u36b5\u0007T\u0002\u0002\u36b5\u36b6\u0007K\u0002\u0002\u36b6\u36b7",
+ "\u0007V\u0002\u0002\u36b7\u36b8\u0007Q\u0002\u0002\u36b8\u36b9\u0007",
+ "T\u0002\u0002\u36b9\u36ba\u0007[\u0002\u0002\u36ba\u074c\u0003\u0002",
+ "\u0002\u0002\u36bb\u36bc\u0007P\u0002\u0002\u36bc\u36bd\u0007N\u0002",
+ "\u0002\u36bd\u36be\u0007U\u0002\u0002\u36be\u36bf\u0007a\u0002\u0002",
+ "\u36bf\u36c0\u0007W\u0002\u0002\u36c0\u36c1\u0007R\u0002\u0002\u36c1",
+ "\u36c2\u0007R\u0002\u0002\u36c2\u36c3\u0007G\u0002\u0002\u36c3\u36c4",
+ "\u0007T\u0002\u0002\u36c4\u074e\u0003\u0002\u0002\u0002\u36c5\u36c6",
+ "\u0007P\u0002\u0002\u36c6\u36c7\u0007Q\u0002\u0002\u36c7\u36c8\u0007",
+ "a\u0002\u0002\u36c8\u36c9\u0007C\u0002\u0002\u36c9\u36ca\u0007E\u0002",
+ "\u0002\u36ca\u36cb\u0007E\u0002\u0002\u36cb\u36cc\u0007G\u0002\u0002",
+ "\u36cc\u36cd\u0007U\u0002\u0002\u36cd\u36ce\u0007U\u0002\u0002\u36ce",
+ "\u0750\u0003\u0002\u0002\u0002\u36cf\u36d0\u0007P\u0002\u0002\u36d0",
+ "\u36d1\u0007Q\u0002\u0002\u36d1\u36d2\u0007a\u0002\u0002\u36d2\u36d3",
+ "\u0007C\u0002\u0002\u36d3\u36d4\u0007F\u0002\u0002\u36d4\u36d5\u0007",
+ "C\u0002\u0002\u36d5\u36d6\u0007R\u0002\u0002\u36d6\u36d7\u0007V\u0002",
+ "\u0002\u36d7\u36d8\u0007K\u0002\u0002\u36d8\u36d9\u0007X\u0002\u0002",
+ "\u36d9\u36da\u0007G\u0002\u0002\u36da\u36db\u0007a\u0002\u0002\u36db",
+ "\u36dc\u0007R\u0002\u0002\u36dc\u36dd\u0007N\u0002\u0002\u36dd\u36de",
+ "\u0007C\u0002\u0002\u36de\u36df\u0007P\u0002\u0002\u36df\u0752\u0003",
+ "\u0002\u0002\u0002\u36e0\u36e1\u0007P\u0002\u0002\u36e1\u36e2\u0007",
+ "Q\u0002\u0002\u36e2\u36e3\u0007a\u0002\u0002\u36e3\u36e4\u0007C\u0002",
+ "\u0002\u36e4\u36e5\u0007P\u0002\u0002\u36e5\u36e6\u0007U\u0002\u0002",
+ "\u36e6\u36e7\u0007K\u0002\u0002\u36e7\u36e8\u0007a\u0002\u0002\u36e8",
+ "\u36e9\u0007T\u0002\u0002\u36e9\u36ea\u0007G\u0002\u0002\u36ea\u36eb",
+ "\u0007C\u0002\u0002\u36eb\u36ec\u0007T\u0002\u0002\u36ec\u36ed\u0007",
+ "E\u0002\u0002\u36ed\u36ee\u0007J\u0002\u0002\u36ee\u0754\u0003\u0002",
+ "\u0002\u0002\u36ef\u36f0\u0007P\u0002\u0002\u36f0\u36f1\u0007Q\u0002",
+ "\u0002\u36f1\u36f2\u0007C\u0002\u0002\u36f2\u36f3\u0007R\u0002\u0002",
+ "\u36f3\u36f4\u0007R\u0002\u0002\u36f4\u36f5\u0007G\u0002\u0002\u36f5",
+ "\u36f6\u0007P\u0002\u0002\u36f6\u36f7\u0007F\u0002\u0002\u36f7\u0756",
+ "\u0003\u0002\u0002\u0002\u36f8\u36f9\u0007P\u0002\u0002\u36f9\u36fa",
+ "\u0007Q\u0002\u0002\u36fa\u36fb\u0007C\u0002\u0002\u36fb\u36fc\u0007",
+ "T\u0002\u0002\u36fc\u36fd\u0007E\u0002\u0002\u36fd\u36fe\u0007J\u0002",
+ "\u0002\u36fe\u36ff\u0007K\u0002\u0002\u36ff\u3700\u0007X\u0002\u0002",
+ "\u3700\u3701\u0007G\u0002\u0002\u3701\u3702\u0007N\u0002\u0002\u3702",
+ "\u3703\u0007Q\u0002\u0002\u3703\u3704\u0007I\u0002\u0002\u3704\u0758",
+ "\u0003\u0002\u0002\u0002\u3705\u3706\u0007P\u0002\u0002\u3706\u3707",
+ "\u0007Q\u0002\u0002\u3707\u3708\u0007C\u0002\u0002\u3708\u3709\u0007",
+ "W\u0002\u0002\u3709\u370a\u0007F\u0002\u0002\u370a\u370b\u0007K\u0002",
+ "\u0002\u370b\u370c\u0007V\u0002\u0002\u370c\u075a\u0003\u0002\u0002",
+ "\u0002\u370d\u370e\u0007P\u0002\u0002\u370e\u370f\u0007Q\u0002\u0002",
+ "\u370f\u3710\u0007a\u0002\u0002\u3710\u3711\u0007C\u0002\u0002\u3711",
+ "\u3712\u0007W\u0002\u0002\u3712\u3713\u0007V\u0002\u0002\u3713\u3714",
+ "\u0007Q\u0002\u0002\u3714\u3715\u0007a\u0002\u0002\u3715\u3716\u0007",
+ "T\u0002\u0002\u3716\u3717\u0007G\u0002\u0002\u3717\u3718\u0007Q\u0002",
+ "\u0002\u3718\u3719\u0007R\u0002\u0002\u3719\u371a\u0007V\u0002\u0002",
+ "\u371a\u371b\u0007K\u0002\u0002\u371b\u371c\u0007O\u0002\u0002\u371c",
+ "\u371d\u0007K\u0002\u0002\u371d\u371e\u0007\\\u0002\u0002\u371e\u371f",
+ "\u0007G\u0002\u0002\u371f\u075c\u0003\u0002\u0002\u0002\u3720\u3721",
+ "\u0007P\u0002\u0002\u3721\u3722\u0007Q\u0002\u0002\u3722\u3723\u0007",
+ "a\u0002\u0002\u3723\u3724\u0007D\u0002\u0002\u3724\u3725\u0007C\u0002",
+ "\u0002\u3725\u3726\u0007U\u0002\u0002\u3726\u3727\u0007G\u0002\u0002",
+ "\u3727\u3728\u0007V\u0002\u0002\u3728\u3729\u0007C\u0002\u0002\u3729",
+ "\u372a\u0007D\u0002\u0002\u372a\u372b\u0007N\u0002\u0002\u372b\u372c",
+ "\u0007G\u0002\u0002\u372c\u372d\u0007a\u0002\u0002\u372d\u372e\u0007",
+ "O\u0002\u0002\u372e\u372f\u0007W\u0002\u0002\u372f\u3730\u0007N\u0002",
+ "\u0002\u3730\u3731\u0007V\u0002\u0002\u3731\u3732\u0007K\u0002\u0002",
+ "\u3732\u3733\u0007O\u0002\u0002\u3733\u3734\u0007X\u0002\u0002\u3734",
+ "\u3735\u0007a\u0002\u0002\u3735\u3736\u0007T\u0002\u0002\u3736\u3737",
+ "\u0007G\u0002\u0002\u3737\u3738\u0007Y\u0002\u0002\u3738\u3739\u0007",
+ "T\u0002\u0002\u3739\u373a\u0007K\u0002\u0002\u373a\u373b\u0007V\u0002",
+ "\u0002\u373b\u373c\u0007G\u0002\u0002\u373c\u075e\u0003\u0002\u0002",
+ "\u0002\u373d\u373e\u0007P\u0002\u0002\u373e\u373f\u0007Q\u0002\u0002",
+ "\u373f\u3740\u0007a\u0002\u0002\u3740\u3741\u0007D\u0002\u0002\u3741",
+ "\u3742\u0007C\u0002\u0002\u3742\u3743\u0007V\u0002\u0002\u3743\u3744",
+ "\u0007E\u0002\u0002\u3744\u3745\u0007J\u0002\u0002\u3745\u3746\u0007",
+ "a\u0002\u0002\u3746\u3747\u0007V\u0002\u0002\u3747\u3748\u0007C\u0002",
+ "\u0002\u3748\u3749\u0007D\u0002\u0002\u3749\u374a\u0007N\u0002\u0002",
+ "\u374a\u374b\u0007G\u0002\u0002\u374b\u374c\u0007a\u0002\u0002\u374c",
+ "\u374d\u0007C\u0002\u0002\u374d\u374e\u0007E\u0002\u0002\u374e\u374f",
+ "\u0007E\u0002\u0002\u374f\u3750\u0007G\u0002\u0002\u3750\u3751\u0007",
+ "U\u0002\u0002\u3751\u3752\u0007U\u0002\u0002\u3752\u3753\u0007a\u0002",
+ "\u0002\u3753\u3754\u0007D\u0002\u0002\u3754\u3755\u0007[\u0002\u0002",
+ "\u3755\u3756\u0007a\u0002\u0002\u3756\u3757\u0007T\u0002\u0002\u3757",
+ "\u3758\u0007Q\u0002\u0002\u3758\u3759\u0007Y\u0002\u0002\u3759\u375a",
+ "\u0007K\u0002\u0002\u375a\u375b\u0007F\u0002\u0002\u375b\u0760\u0003",
+ "\u0002\u0002\u0002\u375c\u375d\u0007P\u0002\u0002\u375d\u375e\u0007",
+ "Q\u0002\u0002\u375e\u375f\u0007a\u0002\u0002\u375f\u3760\u0007D\u0002",
+ "\u0002\u3760\u3761\u0007K\u0002\u0002\u3761\u3762\u0007P\u0002\u0002",
+ "\u3762\u3763\u0007F\u0002\u0002\u3763\u3764\u0007a\u0002\u0002\u3764",
+ "\u3765\u0007C\u0002\u0002\u3765\u3766\u0007Y\u0002\u0002\u3766\u3767",
+ "\u0007C\u0002\u0002\u3767\u3768\u0007T\u0002\u0002\u3768\u3769\u0007",
+ "G\u0002\u0002\u3769\u0762\u0003\u0002\u0002\u0002\u376a\u376b\u0007",
+ "P\u0002\u0002\u376b\u376c\u0007Q\u0002\u0002\u376c\u376d\u0007a\u0002",
+ "\u0002\u376d\u376e\u0007D\u0002\u0002\u376e\u376f\u0007W\u0002\u0002",
+ "\u376f\u3770\u0007H\u0002\u0002\u3770\u3771\u0007H\u0002\u0002\u3771",
+ "\u3772\u0007G\u0002\u0002\u3772\u3773\u0007T\u0002\u0002\u3773\u0764",
+ "\u0003\u0002\u0002\u0002\u3774\u3775\u0007P\u0002\u0002\u3775\u3776",
+ "\u0007Q\u0002\u0002\u3776\u3777\u0007E\u0002\u0002\u3777\u3778\u0007",
+ "C\u0002\u0002\u3778\u3779\u0007E\u0002\u0002\u3779\u377a\u0007J\u0002",
+ "\u0002\u377a\u377b\u0007G\u0002\u0002\u377b\u0766\u0003\u0002\u0002",
+ "\u0002\u377c\u377d\u0007P\u0002\u0002\u377d\u377e\u0007Q\u0002\u0002",
+ "\u377e\u377f\u0007a\u0002\u0002\u377f\u3780\u0007E\u0002\u0002\u3780",
+ "\u3781\u0007C\u0002\u0002\u3781\u3782\u0007T\u0002\u0002\u3782\u3783",
+ "\u0007V\u0002\u0002\u3783\u3784\u0007G\u0002\u0002\u3784\u3785\u0007",
+ "U\u0002\u0002\u3785\u3786\u0007K\u0002\u0002\u3786\u3787\u0007C\u0002",
+ "\u0002\u3787\u3788\u0007P\u0002\u0002\u3788\u0768\u0003\u0002\u0002",
+ "\u0002\u3789\u378a\u0007P\u0002\u0002\u378a\u378b\u0007Q\u0002\u0002",
+ "\u378b\u378c\u0007a\u0002\u0002\u378c\u378d\u0007E\u0002\u0002\u378d",
+ "\u378e\u0007J\u0002\u0002\u378e\u378f\u0007G\u0002\u0002\u378f\u3790",
+ "\u0007E\u0002\u0002\u3790\u3791\u0007M\u0002\u0002\u3791\u3792\u0007",
+ "a\u0002\u0002\u3792\u3793\u0007C\u0002\u0002\u3793\u3794\u0007E\u0002",
+ "\u0002\u3794\u3795\u0007N\u0002\u0002\u3795\u3796\u0007a\u0002\u0002",
+ "\u3796\u3797\u0007T\u0002\u0002\u3797\u3798\u0007G\u0002\u0002\u3798",
+ "\u3799\u0007Y\u0002\u0002\u3799\u379a\u0007T\u0002\u0002\u379a\u379b",
+ "\u0007K\u0002\u0002\u379b\u379c\u0007V\u0002\u0002\u379c\u379d\u0007",
+ "G\u0002\u0002\u379d\u076a\u0003\u0002\u0002\u0002\u379e\u379f\u0007",
+ "P\u0002\u0002\u379f\u37a0\u0007Q\u0002\u0002\u37a0\u37a1\u0007a\u0002",
+ "\u0002\u37a1\u37a2\u0007E\u0002\u0002\u37a2\u37a3\u0007N\u0002\u0002",
+ "\u37a3\u37a4\u0007W\u0002\u0002\u37a4\u37a5\u0007U\u0002\u0002\u37a5",
+ "\u37a6\u0007V\u0002\u0002\u37a6\u37a7\u0007G\u0002\u0002\u37a7\u37a8",
+ "\u0007T\u0002\u0002\u37a8\u37a9\u0007a\u0002\u0002\u37a9\u37aa\u0007",
+ "D\u0002\u0002\u37aa\u37ab\u0007[\u0002\u0002\u37ab\u37ac\u0007a\u0002",
+ "\u0002\u37ac\u37ad\u0007T\u0002\u0002\u37ad\u37ae\u0007Q\u0002\u0002",
+ "\u37ae\u37af\u0007Y\u0002\u0002\u37af\u37b0\u0007K\u0002\u0002\u37b0",
+ "\u37b1\u0007F\u0002\u0002\u37b1\u076c\u0003\u0002\u0002\u0002\u37b2",
+ "\u37b3\u0007P\u0002\u0002\u37b3\u37b4\u0007Q\u0002\u0002\u37b4\u37b5",
+ "\u0007a\u0002\u0002\u37b5\u37b6\u0007E\u0002\u0002\u37b6\u37b7\u0007",
+ "N\u0002\u0002\u37b7\u37b8\u0007W\u0002\u0002\u37b8\u37b9\u0007U\u0002",
+ "\u0002\u37b9\u37ba\u0007V\u0002\u0002\u37ba\u37bb\u0007G\u0002\u0002",
+ "\u37bb\u37bc\u0007T\u0002\u0002\u37bc\u37bd\u0007K\u0002\u0002\u37bd",
+ "\u37be\u0007P\u0002\u0002\u37be\u37bf\u0007I\u0002\u0002\u37bf\u076e",
+ "\u0003\u0002\u0002\u0002\u37c0\u37c1\u0007P\u0002\u0002\u37c1\u37c2",
+ "\u0007Q\u0002\u0002\u37c2\u37c3\u0007a\u0002\u0002\u37c3\u37c4\u0007",
+ "E\u0002\u0002\u37c4\u37c5\u0007Q\u0002\u0002\u37c5\u37c6\u0007C\u0002",
+ "\u0002\u37c6\u37c7\u0007N\u0002\u0002\u37c7\u37c8\u0007G\u0002\u0002",
+ "\u37c8\u37c9\u0007U\u0002\u0002\u37c9\u37ca\u0007E\u0002\u0002\u37ca",
+ "\u37cb\u0007G\u0002\u0002\u37cb\u37cc\u0007a\u0002\u0002\u37cc\u37cd",
+ "\u0007U\u0002\u0002\u37cd\u37ce\u0007S\u0002\u0002\u37ce\u0770\u0003",
+ "\u0002\u0002\u0002\u37cf\u37d0\u0007P\u0002\u0002\u37d0\u37d1\u0007",
+ "Q\u0002\u0002\u37d1\u37d2\u0007a\u0002\u0002\u37d2\u37d3\u0007E\u0002",
+ "\u0002\u37d3\u37d4\u0007Q\u0002\u0002\u37d4\u37d5\u0007O\u0002\u0002",
+ "\u37d5\u37d6\u0007O\u0002\u0002\u37d6\u37d7\u0007Q\u0002\u0002\u37d7",
+ "\u37d8\u0007P\u0002\u0002\u37d8\u37d9\u0007a\u0002\u0002\u37d9\u37da",
+ "\u0007F\u0002\u0002\u37da\u37db\u0007C\u0002\u0002\u37db\u37dc\u0007",
+ "V\u0002\u0002\u37dc\u37dd\u0007C\u0002\u0002\u37dd\u0772\u0003\u0002",
+ "\u0002\u0002\u37de\u37df\u0007P\u0002\u0002\u37df\u37e0\u0007Q\u0002",
+ "\u0002\u37e0\u37e1\u0007E\u0002\u0002\u37e1\u37e2\u0007Q\u0002\u0002",
+ "\u37e2\u37e3\u0007O\u0002\u0002\u37e3\u37e4\u0007R\u0002\u0002\u37e4",
+ "\u37e5\u0007T\u0002\u0002\u37e5\u37e6\u0007G\u0002\u0002\u37e6\u37e7",
+ "\u0007U\u0002\u0002\u37e7\u37e8\u0007U\u0002\u0002\u37e8\u0774\u0003",
+ "\u0002\u0002\u0002\u37e9\u37ea\u0007P\u0002\u0002\u37ea\u37eb\u0007",
+ "Q\u0002\u0002\u37eb\u37ec\u0007a\u0002\u0002\u37ec\u37ed\u0007E\u0002",
+ "\u0002\u37ed\u37ee\u0007Q\u0002\u0002\u37ee\u37ef\u0007P\u0002\u0002",
+ "\u37ef\u37f0\u0007P\u0002\u0002\u37f0\u37f1\u0007G\u0002\u0002\u37f1",
+ "\u37f2\u0007E\u0002\u0002\u37f2\u37f3\u0007V\u0002\u0002\u37f3\u37f4",
+ "\u0007a\u0002\u0002\u37f4\u37f5\u0007D\u0002\u0002\u37f5\u37f6\u0007",
+ "[\u0002\u0002\u37f6\u37f7\u0007a\u0002\u0002\u37f7\u37f8\u0007E\u0002",
+ "\u0002\u37f8\u37f9\u0007D\u0002\u0002\u37f9\u37fa\u0007a\u0002\u0002",
+ "\u37fa\u37fb\u0007Y\u0002\u0002\u37fb\u37fc\u0007J\u0002\u0002\u37fc",
+ "\u37fd\u0007T\u0002\u0002\u37fd\u37fe\u0007a\u0002\u0002\u37fe\u37ff",
+ "\u0007Q\u0002\u0002\u37ff\u3800\u0007P\u0002\u0002\u3800\u3801\u0007",
+ "N\u0002\u0002\u3801\u3802\u0007[\u0002\u0002\u3802\u0776\u0003\u0002",
+ "\u0002\u0002\u3803\u3804\u0007P\u0002\u0002\u3804\u3805\u0007Q\u0002",
+ "\u0002\u3805\u3806\u0007a\u0002\u0002\u3806\u3807\u0007E\u0002\u0002",
+ "\u3807\u3808\u0007Q\u0002\u0002\u3808\u3809\u0007P\u0002\u0002\u3809",
+ "\u380a\u0007P\u0002\u0002\u380a\u380b\u0007G\u0002\u0002\u380b\u380c",
+ "\u0007E\u0002\u0002\u380c\u380d\u0007V\u0002\u0002\u380d\u380e\u0007",
+ "a\u0002\u0002\u380e\u380f\u0007D\u0002\u0002\u380f\u3810\u0007[\u0002",
+ "\u0002\u3810\u3811\u0007a\u0002\u0002\u3811\u3812\u0007E\u0002\u0002",
+ "\u3812\u3813\u0007Q\u0002\u0002\u3813\u3814\u0007O\u0002\u0002\u3814",
+ "\u3815\u0007D\u0002\u0002\u3815\u3816\u0007K\u0002\u0002\u3816\u3817",
+ "\u0007P\u0002\u0002\u3817\u3818\u0007G\u0002\u0002\u3818\u3819\u0007",
+ "a\u0002\u0002\u3819\u381a\u0007U\u0002\u0002\u381a\u381b\u0007Y\u0002",
+ "\u0002\u381b\u0778\u0003\u0002\u0002\u0002\u381c\u381d\u0007P\u0002",
+ "\u0002\u381d\u381e\u0007Q\u0002\u0002\u381e\u381f\u0007a\u0002\u0002",
+ "\u381f\u3820\u0007E\u0002\u0002\u3820\u3821\u0007Q\u0002\u0002\u3821",
+ "\u3822\u0007P\u0002\u0002\u3822\u3823\u0007P\u0002\u0002\u3823\u3824",
+ "\u0007G\u0002\u0002\u3824\u3825\u0007E\u0002\u0002\u3825\u3826\u0007",
+ "V\u0002\u0002\u3826\u3827\u0007a\u0002\u0002\u3827\u3828\u0007D\u0002",
+ "\u0002\u3828\u3829\u0007[\u0002\u0002\u3829\u382a\u0007a\u0002\u0002",
+ "\u382a\u382b\u0007E\u0002\u0002\u382b\u382c\u0007Q\u0002\u0002\u382c",
+ "\u382d\u0007U\u0002\u0002\u382d\u382e\u0007V\u0002\u0002\u382e\u382f",
+ "\u0007a\u0002\u0002\u382f\u3830\u0007D\u0002\u0002\u3830\u3831\u0007",
+ "C\u0002\u0002\u3831\u3832\u0007U\u0002\u0002\u3832\u3833\u0007G\u0002",
+ "\u0002\u3833\u3834\u0007F\u0002\u0002\u3834\u077a\u0003\u0002\u0002",
+ "\u0002\u3835\u3836\u0007P\u0002\u0002\u3836\u3837\u0007Q\u0002\u0002",
+ "\u3837\u3838\u0007a\u0002\u0002\u3838\u3839\u0007E\u0002\u0002\u3839",
+ "\u383a\u0007Q\u0002\u0002\u383a\u383b\u0007P\u0002\u0002\u383b\u383c",
+ "\u0007P\u0002\u0002\u383c\u383d\u0007G\u0002\u0002\u383d\u383e\u0007",
+ "E\u0002\u0002\u383e\u383f\u0007V\u0002\u0002\u383f\u3840\u0007a\u0002",
+ "\u0002\u3840\u3841\u0007D\u0002\u0002\u3841\u3842\u0007[\u0002\u0002",
+ "\u3842\u3843\u0007a\u0002\u0002\u3843\u3844\u0007G\u0002\u0002\u3844",
+ "\u3845\u0007N\u0002\u0002\u3845\u3846\u0007K\u0002\u0002\u3846\u3847",
+ "\u0007O\u0002\u0002\u3847\u3848\u0007a\u0002\u0002\u3848\u3849\u0007",
+ "F\u0002\u0002\u3849\u384a\u0007W\u0002\u0002\u384a\u384b\u0007R\u0002",
+ "\u0002\u384b\u384c\u0007U\u0002\u0002\u384c\u077c\u0003\u0002\u0002",
+ "\u0002\u384d\u384e\u0007P\u0002\u0002\u384e\u384f\u0007Q\u0002\u0002",
+ "\u384f\u3850\u0007a\u0002\u0002\u3850\u3851\u0007E\u0002\u0002\u3851",
+ "\u3852\u0007Q\u0002\u0002\u3852\u3853\u0007P\u0002\u0002\u3853\u3854",
+ "\u0007P\u0002\u0002\u3854\u3855\u0007G\u0002\u0002\u3855\u3856\u0007",
+ "E\u0002\u0002\u3856\u3857\u0007V\u0002\u0002\u3857\u3858\u0007a\u0002",
+ "\u0002\u3858\u3859\u0007D\u0002\u0002\u3859\u385a\u0007[\u0002\u0002",
+ "\u385a\u385b\u0007a\u0002\u0002\u385b\u385c\u0007H\u0002\u0002\u385c",
+ "\u385d\u0007K\u0002\u0002\u385d\u385e\u0007N\u0002\u0002\u385e\u385f",
+ "\u0007V\u0002\u0002\u385f\u3860\u0007G\u0002\u0002\u3860\u3861\u0007",
+ "T\u0002\u0002\u3861\u3862\u0007K\u0002\u0002\u3862\u3863\u0007P\u0002",
+ "\u0002\u3863\u3864\u0007I\u0002\u0002\u3864\u077e\u0003\u0002\u0002",
+ "\u0002\u3865\u3866\u0007P\u0002\u0002\u3866\u3867\u0007Q\u0002\u0002",
+ "\u3867\u3868\u0007E\u0002\u0002\u3868\u3869\u0007Q\u0002\u0002\u3869",
+ "\u386a\u0007R\u0002\u0002\u386a\u386b\u0007[\u0002\u0002\u386b\u0780",
+ "\u0003\u0002\u0002\u0002\u386c\u386d\u0007P\u0002\u0002\u386d\u386e",
+ "\u0007Q\u0002\u0002\u386e\u386f\u0007a\u0002\u0002\u386f\u3870\u0007",
+ "E\u0002\u0002\u3870\u3871\u0007Q\u0002\u0002\u3871\u3872\u0007U\u0002",
+ "\u0002\u3872\u3873\u0007V\u0002\u0002\u3873\u3874\u0007a\u0002\u0002",
+ "\u3874\u3875\u0007Z\u0002\u0002\u3875\u3876\u0007O\u0002\u0002\u3876",
+ "\u3877\u0007N\u0002\u0002\u3877\u3878\u0007a\u0002\u0002\u3878\u3879",
+ "\u0007S\u0002\u0002\u3879\u387a\u0007W\u0002\u0002\u387a\u387b\u0007",
+ "G\u0002\u0002\u387b\u387c\u0007T\u0002\u0002\u387c\u387d\u0007[\u0002",
+ "\u0002\u387d\u387e\u0007a\u0002\u0002\u387e\u387f\u0007T\u0002\u0002",
+ "\u387f\u3880\u0007G\u0002\u0002\u3880\u3881\u0007Y\u0002\u0002\u3881",
+ "\u3882\u0007T\u0002\u0002\u3882\u3883\u0007K\u0002\u0002\u3883\u3884",
+ "\u0007V\u0002\u0002\u3884\u3885\u0007G\u0002\u0002\u3885\u0782\u0003",
+ "\u0002\u0002\u0002\u3886\u3887\u0007P\u0002\u0002\u3887\u3888\u0007",
+ "Q\u0002\u0002\u3888\u3889\u0007a\u0002\u0002\u3889\u388a\u0007E\u0002",
+ "\u0002\u388a\u388b\u0007R\u0002\u0002\u388b\u388c\u0007W\u0002\u0002",
+ "\u388c\u388d\u0007a\u0002\u0002\u388d\u388e\u0007E\u0002\u0002\u388e",
+ "\u388f\u0007Q\u0002\u0002\u388f\u3890\u0007U\u0002\u0002\u3890\u3891",
+ "\u0007V\u0002\u0002\u3891\u3892\u0007K\u0002\u0002\u3892\u3893\u0007",
+ "P\u0002\u0002\u3893\u3894\u0007I\u0002\u0002\u3894\u0784\u0003\u0002",
+ "\u0002\u0002\u3895\u3896\u0007P\u0002\u0002\u3896\u3897\u0007Q\u0002",
+ "\u0002\u3897\u3898\u0007E\u0002\u0002\u3898\u3899\u0007R\u0002\u0002",
+ "\u3899\u389a\u0007W\u0002\u0002\u389a\u389b\u0007a\u0002\u0002\u389b",
+ "\u389c\u0007E\u0002\u0002\u389c\u389d\u0007Q\u0002\u0002\u389d\u389e",
+ "\u0007U\u0002\u0002\u389e\u389f\u0007V\u0002\u0002\u389f\u38a0\u0007",
+ "K\u0002\u0002\u38a0\u38a1\u0007P\u0002\u0002\u38a1\u38a2\u0007I\u0002",
+ "\u0002\u38a2\u0786\u0003\u0002\u0002\u0002\u38a3\u38a4\u0007P\u0002",
+ "\u0002\u38a4\u38a5\u0007Q\u0002\u0002\u38a5\u38a6\u0007E\u0002\u0002",
+ "\u38a6\u38a7\u0007[\u0002\u0002\u38a7\u38a8\u0007E\u0002\u0002\u38a8",
+ "\u38a9\u0007N\u0002\u0002\u38a9\u38aa\u0007G\u0002\u0002\u38aa\u0788",
+ "\u0003\u0002\u0002\u0002\u38ab\u38ac\u0007P\u0002\u0002\u38ac\u38ad",
+ "\u0007Q\u0002\u0002\u38ad\u38ae\u0007a\u0002\u0002\u38ae\u38af\u0007",
+ "F\u0002\u0002\u38af\u38b0\u0007C\u0002\u0002\u38b0\u38b1\u0007V\u0002",
+ "\u0002\u38b1\u38b2\u0007C\u0002\u0002\u38b2\u38b3\u0007a\u0002\u0002",
+ "\u38b3\u38b4\u0007U\u0002\u0002\u38b4\u38b5\u0007G\u0002\u0002\u38b5",
+ "\u38b6\u0007E\u0002\u0002\u38b6\u38b7\u0007W\u0002\u0002\u38b7\u38b8",
+ "\u0007T\u0002\u0002\u38b8\u38b9\u0007K\u0002\u0002\u38b9\u38ba\u0007",
+ "V\u0002\u0002\u38ba\u38bb\u0007[\u0002\u0002\u38bb\u38bc\u0007a\u0002",
+ "\u0002\u38bc\u38bd\u0007T\u0002\u0002\u38bd\u38be\u0007G\u0002\u0002",
+ "\u38be\u38bf\u0007Y\u0002\u0002\u38bf\u38c0\u0007T\u0002\u0002\u38c0",
+ "\u38c1\u0007K\u0002\u0002\u38c1\u38c2\u0007V\u0002\u0002\u38c2\u38c3",
+ "\u0007G\u0002\u0002\u38c3\u078a\u0003\u0002\u0002\u0002\u38c4\u38c5",
+ "\u0007P\u0002\u0002\u38c5\u38c6\u0007Q\u0002\u0002\u38c6\u38c7\u0007",
+ "a\u0002\u0002\u38c7\u38c8\u0007F\u0002\u0002\u38c8\u38c9\u0007G\u0002",
+ "\u0002\u38c9\u38ca\u0007E\u0002\u0002\u38ca\u38cb\u0007Q\u0002\u0002",
+ "\u38cb\u38cc\u0007T\u0002\u0002\u38cc\u38cd\u0007T\u0002\u0002\u38cd",
+ "\u38ce\u0007G\u0002\u0002\u38ce\u38cf\u0007N\u0002\u0002\u38cf\u38d0",
+ "\u0007C\u0002\u0002\u38d0\u38d1\u0007V\u0002\u0002\u38d1\u38d2\u0007",
+ "G\u0002\u0002\u38d2\u078c\u0003\u0002\u0002\u0002\u38d3\u38d4\u0007",
+ "P\u0002\u0002\u38d4\u38d5\u0007Q\u0002\u0002\u38d5\u38d6\u0007F\u0002",
+ "\u0002\u38d6\u38d7\u0007G\u0002\u0002\u38d7\u38d8\u0007N\u0002\u0002",
+ "\u38d8\u38d9\u0007C\u0002\u0002\u38d9\u38da\u0007[\u0002\u0002\u38da",
+ "\u078e\u0003\u0002\u0002\u0002\u38db\u38dc\u0007P\u0002\u0002\u38dc",
+ "\u38dd\u0007Q\u0002\u0002\u38dd\u38de\u0007a\u0002\u0002\u38de\u38df",
+ "\u0007F\u0002\u0002\u38df\u38e0\u0007Q\u0002\u0002\u38e0\u38e1\u0007",
+ "O\u0002\u0002\u38e1\u38e2\u0007C\u0002\u0002\u38e2\u38e3\u0007K\u0002",
+ "\u0002\u38e3\u38e4\u0007P\u0002\u0002\u38e4\u38e5\u0007a\u0002\u0002",
+ "\u38e5\u38e6\u0007K\u0002\u0002\u38e6\u38e7\u0007P\u0002\u0002\u38e7",
+ "\u38e8\u0007F\u0002\u0002\u38e8\u38e9\u0007G\u0002\u0002\u38e9\u38ea",
+ "\u0007Z\u0002\u0002\u38ea\u38eb\u0007a\u0002\u0002\u38eb\u38ec\u0007",
+ "H\u0002\u0002\u38ec\u38ed\u0007K\u0002\u0002\u38ed\u38ee\u0007N\u0002",
+ "\u0002\u38ee\u38ef\u0007V\u0002\u0002\u38ef\u38f0\u0007G\u0002\u0002",
+ "\u38f0\u38f1\u0007T\u0002\u0002\u38f1\u0790\u0003\u0002\u0002\u0002",
+ "\u38f2\u38f3\u0007P\u0002\u0002\u38f3\u38f4\u0007Q\u0002\u0002\u38f4",
+ "\u38f5\u0007a\u0002\u0002\u38f5\u38f6\u0007F\u0002\u0002\u38f6\u38f7",
+ "\u0007U\u0002\u0002\u38f7\u38f8\u0007V\u0002\u0002\u38f8\u38f9\u0007",
+ "a\u0002\u0002\u38f9\u38fa\u0007W\u0002\u0002\u38fa\u38fb\u0007R\u0002",
+ "\u0002\u38fb\u38fc\u0007I\u0002\u0002\u38fc\u38fd\u0007T\u0002\u0002",
+ "\u38fd\u38fe\u0007C\u0002\u0002\u38fe\u38ff\u0007F\u0002\u0002\u38ff",
+ "\u3900\u0007G\u0002\u0002\u3900\u3901\u0007a\u0002\u0002\u3901\u3902",
+ "\u0007K\u0002\u0002\u3902\u3903\u0007P\u0002\u0002\u3903\u3904\u0007",
+ "U\u0002\u0002\u3904\u3905\u0007G\u0002\u0002\u3905\u3906\u0007T\u0002",
+ "\u0002\u3906\u3907\u0007V\u0002\u0002\u3907\u3908\u0007a\u0002\u0002",
+ "\u3908\u3909\u0007E\u0002\u0002\u3909\u390a\u0007Q\u0002\u0002\u390a",
+ "\u390b\u0007P\u0002\u0002\u390b\u390c\u0007X\u0002\u0002\u390c\u0792",
+ "\u0003\u0002\u0002\u0002\u390d\u390e\u0007P\u0002\u0002\u390e\u390f",
+ "\u0007Q\u0002\u0002\u390f\u3910\u0007a\u0002\u0002\u3910\u3911\u0007",
+ "G\u0002\u0002\u3911\u3912\u0007N\u0002\u0002\u3912\u3913\u0007K\u0002",
+ "\u0002\u3913\u3914\u0007O\u0002\u0002\u3914\u3915\u0007a\u0002\u0002",
+ "\u3915\u3916\u0007I\u0002\u0002\u3916\u3917\u0007T\u0002\u0002\u3917",
+ "\u3918\u0007Q\u0002\u0002\u3918\u3919\u0007W\u0002\u0002\u3919\u391a",
+ "\u0007R\u0002\u0002\u391a\u391b\u0007D\u0002\u0002\u391b\u391c\u0007",
+ "[\u0002\u0002\u391c\u0794\u0003\u0002\u0002\u0002\u391d\u391e\u0007",
+ "P\u0002\u0002\u391e\u391f\u0007Q\u0002\u0002\u391f\u3920\u0007a\u0002",
+ "\u0002\u3920\u3921\u0007G\u0002\u0002\u3921\u3922\u0007N\u0002\u0002",
+ "\u3922\u3923\u0007K\u0002\u0002\u3923\u3924\u0007O\u0002\u0002\u3924",
+ "\u3925\u0007K\u0002\u0002\u3925\u3926\u0007P\u0002\u0002\u3926\u3927",
+ "\u0007C\u0002\u0002\u3927\u3928\u0007V\u0002\u0002\u3928\u3929\u0007",
+ "G\u0002\u0002\u3929\u392a\u0007a\u0002\u0002\u392a\u392b\u0007L\u0002",
+ "\u0002\u392b\u392c\u0007Q\u0002\u0002\u392c\u392d\u0007K\u0002\u0002",
+ "\u392d\u392e\u0007P\u0002\u0002\u392e\u0796\u0003\u0002\u0002\u0002",
+ "\u392f\u3930\u0007P\u0002\u0002\u3930\u3931\u0007Q\u0002\u0002\u3931",
+ "\u3932\u0007a\u0002\u0002\u3932\u3933\u0007G\u0002\u0002\u3933\u3934",
+ "\u0007N\u0002\u0002\u3934\u3935\u0007K\u0002\u0002\u3935\u3936\u0007",
+ "O\u0002\u0002\u3936\u3937\u0007K\u0002\u0002\u3937\u3938\u0007P\u0002",
+ "\u0002\u3938\u3939\u0007C\u0002\u0002\u3939\u393a\u0007V\u0002\u0002",
+ "\u393a\u393b\u0007G\u0002\u0002\u393b\u393c\u0007a\u0002\u0002\u393c",
+ "\u393d\u0007Q\u0002\u0002\u393d\u393e\u0007D\u0002\u0002\u393e\u393f",
+ "\u0007[\u0002\u0002\u393f\u0798\u0003\u0002\u0002\u0002\u3940\u3941",
+ "\u0007P\u0002\u0002\u3941\u3942\u0007Q\u0002\u0002\u3942\u3943\u0007",
+ "a\u0002\u0002\u3943\u3944\u0007G\u0002\u0002\u3944\u3945\u0007N\u0002",
+ "\u0002\u3945\u3946\u0007K\u0002\u0002\u3946\u3947\u0007O\u0002\u0002",
+ "\u3947\u3948\u0007K\u0002\u0002\u3948\u3949\u0007P\u0002\u0002\u3949",
+ "\u394a\u0007C\u0002\u0002\u394a\u394b\u0007V\u0002\u0002\u394b\u394c",
+ "\u0007G\u0002\u0002\u394c\u394d\u0007a\u0002\u0002\u394d\u394e\u0007",
+ "Q\u0002\u0002\u394e\u394f\u0007W\u0002\u0002\u394f\u3950\u0007V\u0002",
+ "\u0002\u3950\u3951\u0007G\u0002\u0002\u3951\u3952\u0007T\u0002\u0002",
+ "\u3952\u3953\u0007a\u0002\u0002\u3953\u3954\u0007L\u0002\u0002\u3954",
+ "\u3955\u0007Q\u0002\u0002\u3955\u3956\u0007K\u0002\u0002\u3956\u3957",
+ "\u0007P\u0002\u0002\u3957\u079a\u0003\u0002\u0002\u0002\u3958\u3959",
+ "\u0007P\u0002\u0002\u3959\u395a\u0007Q\u0002\u0002\u395a\u395b\u0007",
+ "G\u0002\u0002\u395b\u395c\u0007P\u0002\u0002\u395c\u395d\u0007V\u0002",
+ "\u0002\u395d\u395e\u0007K\u0002\u0002\u395e\u395f\u0007V\u0002\u0002",
+ "\u395f\u3960\u0007[\u0002\u0002\u3960\u3961\u0007G\u0002\u0002\u3961",
+ "\u3962\u0007U\u0002\u0002\u3962\u3963\u0007E\u0002\u0002\u3963\u3964",
+ "\u0007C\u0002\u0002\u3964\u3965\u0007R\u0002\u0002\u3965\u3966\u0007",
+ "K\u0002\u0002\u3966\u3967\u0007P\u0002\u0002\u3967\u3968\u0007I\u0002",
+ "\u0002\u3968\u079c\u0003\u0002\u0002\u0002\u3969\u396a\u0007P\u0002",
+ "\u0002\u396a\u396b\u0007Q\u0002\u0002\u396b\u396c\u0007a\u0002\u0002",
+ "\u396c\u396d\u0007G\u0002\u0002\u396d\u396e\u0007Z\u0002\u0002\u396e",
+ "\u396f\u0007R\u0002\u0002\u396f\u3970\u0007C\u0002\u0002\u3970\u3971",
+ "\u0007P\u0002\u0002\u3971\u3972\u0007F\u0002\u0002\u3972\u3973\u0007",
+ "a\u0002\u0002\u3973\u3974\u0007I\u0002\u0002\u3974\u3975\u0007U\u0002",
+ "\u0002\u3975\u3976\u0007G\u0002\u0002\u3976\u3977\u0007V\u0002\u0002",
+ "\u3977\u3978\u0007a\u0002\u0002\u3978\u3979\u0007V\u0002\u0002\u3979",
+ "\u397a\u0007Q\u0002\u0002\u397a\u397b\u0007a\u0002\u0002\u397b\u397c",
+ "\u0007W\u0002\u0002\u397c\u397d\u0007P\u0002\u0002\u397d\u397e\u0007",
+ "K\u0002\u0002\u397e\u397f\u0007Q\u0002\u0002\u397f\u3980\u0007P\u0002",
+ "\u0002\u3980\u079e\u0003\u0002\u0002\u0002\u3981\u3982\u0007P\u0002",
+ "\u0002\u3982\u3983\u0007Q\u0002\u0002\u3983\u3984\u0007a\u0002\u0002",
+ "\u3984\u3985\u0007G\u0002\u0002\u3985\u3986\u0007Z\u0002\u0002\u3986",
+ "\u3987\u0007R\u0002\u0002\u3987\u3988\u0007C\u0002\u0002\u3988\u3989",
+ "\u0007P\u0002\u0002\u3989\u398a\u0007F\u0002\u0002\u398a\u07a0\u0003",
+ "\u0002\u0002\u0002\u398b\u398c\u0007P\u0002\u0002\u398c\u398d\u0007",
+ "Q\u0002\u0002\u398d\u398e\u0007a\u0002\u0002\u398e\u398f\u0007G\u0002",
+ "\u0002\u398f\u3990\u0007Z\u0002\u0002\u3990\u3991\u0007R\u0002\u0002",
+ "\u3991\u3992\u0007C\u0002\u0002\u3992\u3993\u0007P\u0002\u0002\u3993",
+ "\u3994\u0007F\u0002\u0002\u3994\u3995\u0007a\u0002\u0002\u3995\u3996",
+ "\u0007V\u0002\u0002\u3996\u3997\u0007C\u0002\u0002\u3997\u3998\u0007",
+ "D\u0002\u0002\u3998\u3999\u0007N\u0002\u0002\u3999\u399a\u0007G\u0002",
+ "\u0002\u399a\u07a2\u0003\u0002\u0002\u0002\u399b\u399c\u0007P\u0002",
+ "\u0002\u399c\u399d\u0007Q\u0002\u0002\u399d\u399e\u0007a\u0002\u0002",
+ "\u399e\u399f\u0007H\u0002\u0002\u399f\u39a0\u0007C\u0002\u0002\u39a0",
+ "\u39a1\u0007E\u0002\u0002\u39a1\u39a2\u0007V\u0002\u0002\u39a2\u07a4",
+ "\u0003\u0002\u0002\u0002\u39a3\u39a4\u0007P\u0002\u0002\u39a4\u39a5",
+ "\u0007Q\u0002\u0002\u39a5\u39a6\u0007a\u0002\u0002\u39a6\u39a7\u0007",
+ "H\u0002\u0002\u39a7\u39a8\u0007C\u0002\u0002\u39a8\u39a9\u0007E\u0002",
+ "\u0002\u39a9\u39aa\u0007V\u0002\u0002\u39aa\u39ab\u0007Q\u0002\u0002",
+ "\u39ab\u39ac\u0007T\u0002\u0002\u39ac\u39ad\u0007K\u0002\u0002\u39ad",
+ "\u39ae\u0007\\\u0002\u0002\u39ae\u39af\u0007G\u0002\u0002\u39af\u39b0",
+ "\u0007a\u0002\u0002\u39b0\u39b1\u0007L\u0002\u0002\u39b1\u39b2\u0007",
+ "Q\u0002\u0002\u39b2\u39b3\u0007K\u0002\u0002\u39b3\u39b4\u0007P\u0002",
+ "\u0002\u39b4\u07a6\u0003\u0002\u0002\u0002\u39b5\u39b6\u0007P\u0002",
+ "\u0002\u39b6\u39b7\u0007Q\u0002\u0002\u39b7\u39b8\u0007a\u0002\u0002",
+ "\u39b8\u39b9\u0007H\u0002\u0002\u39b9\u39ba\u0007K\u0002\u0002\u39ba",
+ "\u39bb\u0007N\u0002\u0002\u39bb\u39bc\u0007V\u0002\u0002\u39bc\u39bd",
+ "\u0007G\u0002\u0002\u39bd\u39be\u0007T\u0002\u0002\u39be\u39bf\u0007",
+ "K\u0002\u0002\u39bf\u39c0\u0007P\u0002\u0002\u39c0\u39c1\u0007I\u0002",
+ "\u0002\u39c1\u07a8\u0003\u0002\u0002\u0002\u39c2\u39c3\u0007P\u0002",
+ "\u0002\u39c3\u39c4\u0007Q\u0002\u0002\u39c4\u39c5\u0007H\u0002\u0002",
+ "\u39c5\u39c6\u0007Q\u0002\u0002\u39c6\u39c7\u0007T\u0002\u0002\u39c7",
+ "\u39c8\u0007E\u0002\u0002\u39c8\u39c9\u0007G\u0002\u0002\u39c9\u07aa",
+ "\u0003\u0002\u0002\u0002\u39ca\u39cb\u0007P\u0002\u0002\u39cb\u39cc",
+ "\u0007Q\u0002\u0002\u39cc\u39cd\u0007a\u0002\u0002\u39cd\u39ce\u0007",
+ "H\u0002\u0002\u39ce\u39cf\u0007W\u0002\u0002\u39cf\u39d0\u0007N\u0002",
+ "\u0002\u39d0\u39d1\u0007N\u0002\u0002\u39d1\u39d2\u0007a\u0002\u0002",
+ "\u39d2\u39d3\u0007Q\u0002\u0002\u39d3\u39d4\u0007W\u0002\u0002\u39d4",
+ "\u39d5\u0007V\u0002\u0002\u39d5\u39d6\u0007G\u0002\u0002\u39d6\u39d7",
+ "\u0007T\u0002\u0002\u39d7\u39d8\u0007a\u0002\u0002\u39d8\u39d9\u0007",
+ "L\u0002\u0002\u39d9\u39da\u0007Q\u0002\u0002\u39da\u39db\u0007K\u0002",
+ "\u0002\u39db\u39dc\u0007P\u0002\u0002\u39dc\u39dd\u0007a\u0002\u0002",
+ "\u39dd\u39de\u0007V\u0002\u0002\u39de\u39df\u0007Q\u0002\u0002\u39df",
+ "\u39e0\u0007a\u0002\u0002\u39e0\u39e1\u0007Q\u0002\u0002\u39e1\u39e2",
+ "\u0007W\u0002\u0002\u39e2\u39e3\u0007V\u0002\u0002\u39e3\u39e4\u0007",
+ "G\u0002\u0002\u39e4\u39e5\u0007T\u0002\u0002\u39e5\u07ac\u0003\u0002",
+ "\u0002\u0002\u39e6\u39e7\u0007P\u0002\u0002\u39e7\u39e8\u0007Q\u0002",
+ "\u0002\u39e8\u39e9\u0007a\u0002\u0002\u39e9\u39ea\u0007I\u0002\u0002",
+ "\u39ea\u39eb\u0007C\u0002\u0002\u39eb\u39ec\u0007V\u0002\u0002\u39ec",
+ "\u39ed\u0007J\u0002\u0002\u39ed\u39ee\u0007G\u0002\u0002\u39ee\u39ef",
+ "\u0007T\u0002\u0002\u39ef\u39f0\u0007a\u0002\u0002\u39f0\u39f1\u0007",
+ "Q\u0002\u0002\u39f1\u39f2\u0007R\u0002\u0002\u39f2\u39f3\u0007V\u0002",
+ "\u0002\u39f3\u39f4\u0007K\u0002\u0002\u39f4\u39f5\u0007O\u0002\u0002",
+ "\u39f5\u39f6\u0007K\u0002\u0002\u39f6\u39f7\u0007\\\u0002\u0002\u39f7",
+ "\u39f8\u0007G\u0002\u0002\u39f8\u39f9\u0007T\u0002\u0002\u39f9\u39fa",
+ "\u0007a\u0002\u0002\u39fa\u39fb\u0007U\u0002\u0002\u39fb\u39fc\u0007",
+ "V\u0002\u0002\u39fc\u39fd\u0007C\u0002\u0002\u39fd\u39fe\u0007V\u0002",
+ "\u0002\u39fe\u39ff\u0007K\u0002\u0002\u39ff\u3a00\u0007U\u0002\u0002",
+ "\u3a00\u3a01\u0007V\u0002\u0002\u3a01\u3a02\u0007K\u0002\u0002\u3a02",
+ "\u3a03\u0007E\u0002\u0002\u3a03\u3a04\u0007U\u0002\u0002\u3a04\u07ae",
+ "\u0003\u0002\u0002\u0002\u3a05\u3a06\u0007P\u0002\u0002\u3a06\u3a07",
+ "\u0007Q\u0002\u0002\u3a07\u3a08\u0007a\u0002\u0002\u3a08\u3a09\u0007",
+ "I\u0002\u0002\u3a09\u3a0a\u0007D\u0002\u0002\u3a0a\u3a0b\u0007[\u0002",
+ "\u0002\u3a0b\u3a0c\u0007a\u0002\u0002\u3a0c\u3a0d\u0007R\u0002\u0002",
+ "\u3a0d\u3a0e\u0007W\u0002\u0002\u3a0e\u3a0f\u0007U\u0002\u0002\u3a0f",
+ "\u3a10\u0007J\u0002\u0002\u3a10\u3a11\u0007F\u0002\u0002\u3a11\u3a12",
+ "\u0007Q\u0002\u0002\u3a12\u3a13\u0007Y\u0002\u0002\u3a13\u3a14\u0007",
+ "P\u0002\u0002\u3a14\u07b0\u0003\u0002\u0002\u0002\u3a15\u3a16\u0007",
+ "P\u0002\u0002\u3a16\u3a17\u0007Q\u0002\u0002\u3a17\u3a18\u0007I\u0002",
+ "\u0002\u3a18\u3a19\u0007W\u0002\u0002\u3a19\u3a1a\u0007C\u0002\u0002",
+ "\u3a1a\u3a1b\u0007T\u0002\u0002\u3a1b\u3a1c\u0007C\u0002\u0002\u3a1c",
+ "\u3a1d\u0007P\u0002\u0002\u3a1d\u3a1e\u0007V\u0002\u0002\u3a1e\u3a1f",
+ "\u0007G\u0002\u0002\u3a1f\u3a20\u0007G\u0002\u0002\u3a20\u07b2\u0003",
+ "\u0002\u0002\u0002\u3a21\u3a22\u0007P\u0002\u0002\u3a22\u3a23\u0007",
+ "Q\u0002\u0002\u3a23\u3a24\u0007a\u0002\u0002\u3a24\u3a25\u0007K\u0002",
+ "\u0002\u3a25\u3a26\u0007P\u0002\u0002\u3a26\u3a27\u0007F\u0002\u0002",
+ "\u3a27\u3a28\u0007G\u0002\u0002\u3a28\u3a29\u0007Z\u0002\u0002\u3a29",
+ "\u3a2a\u0007a\u0002\u0002\u3a2a\u3a2b\u0007H\u0002\u0002\u3a2b\u3a2c",
+ "\u0007H\u0002\u0002\u3a2c\u3a2d\u0007U\u0002\u0002\u3a2d\u07b4\u0003",
+ "\u0002\u0002\u0002\u3a2e\u3a2f\u0007P\u0002\u0002\u3a2f\u3a30\u0007",
+ "Q\u0002\u0002\u3a30\u3a31\u0007a\u0002\u0002\u3a31\u3a32\u0007K\u0002",
+ "\u0002\u3a32\u3a33\u0007P\u0002\u0002\u3a33\u3a34\u0007F\u0002\u0002",
+ "\u3a34\u3a35\u0007G\u0002\u0002\u3a35\u3a36\u0007Z\u0002\u0002\u3a36",
+ "\u07b6\u0003\u0002\u0002\u0002\u3a37\u3a38\u0007P\u0002\u0002\u3a38",
+ "\u3a39\u0007Q\u0002\u0002\u3a39\u3a3a\u0007a\u0002\u0002\u3a3a\u3a3b",
+ "\u0007K\u0002\u0002\u3a3b\u3a3c\u0007P\u0002\u0002\u3a3c\u3a3d\u0007",
+ "F\u0002\u0002\u3a3d\u3a3e\u0007G\u0002\u0002\u3a3e\u3a3f\u0007Z\u0002",
+ "\u0002\u3a3f\u3a40\u0007a\u0002\u0002\u3a40\u3a41\u0007U\u0002\u0002",
+ "\u3a41\u3a42\u0007U\u0002\u0002\u3a42\u07b8\u0003\u0002\u0002\u0002",
+ "\u3a43\u3a44\u0007P\u0002\u0002\u3a44\u3a45\u0007Q\u0002\u0002\u3a45",
+ "\u3a46\u0007a\u0002\u0002\u3a46\u3a47\u0007K\u0002\u0002\u3a47\u3a48",
+ "\u0007P\u0002\u0002\u3a48\u3a49\u0007O\u0002\u0002\u3a49\u3a4a\u0007",
+ "G\u0002\u0002\u3a4a\u3a4b\u0007O\u0002\u0002\u3a4b\u3a4c\u0007Q\u0002",
+ "\u0002\u3a4c\u3a4d\u0007T\u0002\u0002\u3a4d\u3a4e\u0007[\u0002\u0002",
+ "\u3a4e\u07ba\u0003\u0002\u0002\u0002\u3a4f\u3a50\u0007P\u0002\u0002",
+ "\u3a50\u3a51\u0007Q\u0002\u0002\u3a51\u3a52\u0007a\u0002\u0002\u3a52",
+ "\u3a53\u0007K\u0002\u0002\u3a53\u3a54\u0007P\u0002\u0002\u3a54\u3a55",
+ "\u0007O\u0002\u0002\u3a55\u3a56\u0007G\u0002\u0002\u3a56\u3a57\u0007",
+ "O\u0002\u0002\u3a57\u3a58\u0007Q\u0002\u0002\u3a58\u3a59\u0007T\u0002",
+ "\u0002\u3a59\u3a5a\u0007[\u0002\u0002\u3a5a\u3a5b\u0007a\u0002\u0002",
+ "\u3a5b\u3a5c\u0007R\u0002\u0002\u3a5c\u3a5d\u0007T\u0002\u0002\u3a5d",
+ "\u3a5e\u0007W\u0002\u0002\u3a5e\u3a5f\u0007P\u0002\u0002\u3a5f\u3a60",
+ "\u0007K\u0002\u0002\u3a60\u3a61\u0007P\u0002\u0002\u3a61\u3a62\u0007",
+ "I\u0002\u0002\u3a62\u07bc\u0003\u0002\u0002\u0002\u3a63\u3a64\u0007",
+ "P\u0002\u0002\u3a64\u3a65\u0007Q\u0002\u0002\u3a65\u3a66\u0007M\u0002",
+ "\u0002\u3a66\u3a67\u0007G\u0002\u0002\u3a67\u3a68\u0007G\u0002\u0002",
+ "\u3a68\u3a69\u0007R\u0002\u0002\u3a69\u07be\u0003\u0002\u0002\u0002",
+ "\u3a6a\u3a6b\u0007P\u0002\u0002\u3a6b\u3a6c\u0007Q\u0002\u0002\u3a6c",
+ "\u3a6d\u0007a\u0002\u0002\u3a6d\u3a6e\u0007N\u0002\u0002\u3a6e\u3a6f",
+ "\u0007Q\u0002\u0002\u3a6f\u3a70\u0007C\u0002\u0002\u3a70\u3a71\u0007",
+ "F\u0002\u0002\u3a71\u07c0\u0003\u0002\u0002\u0002\u3a72\u3a73\u0007",
+ "P\u0002\u0002\u3a73\u3a74\u0007Q\u0002\u0002\u3a74\u3a75\u0007N\u0002",
+ "\u0002\u3a75\u3a76\u0007Q\u0002\u0002\u3a76\u3a77\u0007E\u0002\u0002",
+ "\u3a77\u3a78\u0007C\u0002\u0002\u3a78\u3a79\u0007N\u0002\u0002\u3a79",
+ "\u07c2\u0003\u0002\u0002\u0002\u3a7a\u3a7b\u0007P\u0002\u0002\u3a7b",
+ "\u3a7c\u0007Q\u0002\u0002\u3a7c\u3a7d\u0007N\u0002\u0002\u3a7d\u3a7e",
+ "\u0007Q\u0002\u0002\u3a7e\u3a7f\u0007I\u0002\u0002\u3a7f\u3a80\u0007",
+ "I\u0002\u0002\u3a80\u3a81\u0007K\u0002\u0002\u3a81\u3a82\u0007P\u0002",
+ "\u0002\u3a82\u3a83\u0007I\u0002\u0002\u3a83\u07c4\u0003\u0002\u0002",
+ "\u0002\u3a84\u3a85\u0007P\u0002\u0002\u3a85\u3a86\u0007Q\u0002\u0002",
+ "\u3a86\u3a87\u0007O\u0002\u0002\u3a87\u3a88\u0007C\u0002\u0002\u3a88",
+ "\u3a89\u0007R\u0002\u0002\u3a89\u3a8a\u0007R\u0002\u0002\u3a8a\u3a8b",
+ "\u0007K\u0002\u0002\u3a8b\u3a8c\u0007P\u0002\u0002\u3a8c\u3a8d\u0007",
+ "I\u0002\u0002\u3a8d\u07c6\u0003\u0002\u0002\u0002\u3a8e\u3a8f\u0007",
+ "P\u0002\u0002\u3a8f\u3a90\u0007Q\u0002\u0002\u3a90\u3a91\u0007O\u0002",
+ "\u0002\u3a91\u3a92\u0007C\u0002\u0002\u3a92\u3a93\u0007Z\u0002\u0002",
+ "\u3a93\u3a94\u0007X\u0002\u0002\u3a94\u3a95\u0007C\u0002\u0002\u3a95",
+ "\u3a96\u0007N\u0002\u0002\u3a96\u3a97\u0007W\u0002\u0002\u3a97\u3a98",
+ "\u0007G\u0002\u0002\u3a98\u07c8\u0003\u0002\u0002\u0002\u3a99\u3a9a",
+ "\u0007P\u0002\u0002\u3a9a\u3a9b\u0007Q\u0002\u0002\u3a9b\u3a9c\u0007",
+ "a\u0002\u0002\u3a9c\u3a9d\u0007O\u0002\u0002\u3a9d\u3a9e\u0007G\u0002",
+ "\u0002\u3a9e\u3a9f\u0007T\u0002\u0002\u3a9f\u3aa0\u0007I\u0002\u0002",
+ "\u3aa0\u3aa1\u0007G\u0002\u0002\u3aa1\u07ca\u0003\u0002\u0002\u0002",
+ "\u3aa2\u3aa3\u0007P\u0002\u0002\u3aa3\u3aa4\u0007Q\u0002\u0002\u3aa4",
+ "\u3aa5\u0007O\u0002\u0002\u3aa5\u3aa6\u0007K\u0002\u0002\u3aa6\u3aa7",
+ "\u0007P\u0002\u0002\u3aa7\u3aa8\u0007K\u0002\u0002\u3aa8\u3aa9\u0007",
+ "O\u0002\u0002\u3aa9\u3aaa\u0007K\u0002\u0002\u3aaa\u3aab\u0007\\\u0002",
+ "\u0002\u3aab\u3aac\u0007G\u0002\u0002\u3aac\u07cc\u0003\u0002\u0002",
+ "\u0002\u3aad\u3aae\u0007P\u0002\u0002\u3aae\u3aaf\u0007Q\u0002\u0002",
+ "\u3aaf\u3ab0\u0007O\u0002\u0002\u3ab0\u3ab1\u0007K\u0002\u0002\u3ab1",
+ "\u3ab2\u0007P\u0002\u0002\u3ab2\u3ab3\u0007X\u0002\u0002\u3ab3\u3ab4",
+ "\u0007C\u0002\u0002\u3ab4\u3ab5\u0007N\u0002\u0002\u3ab5\u3ab6\u0007",
+ "W\u0002\u0002\u3ab6\u3ab7\u0007G\u0002\u0002\u3ab7\u07ce\u0003\u0002",
+ "\u0002\u0002\u3ab8\u3ab9\u0007P\u0002\u0002\u3ab9\u3aba\u0007Q\u0002",
+ "\u0002\u3aba\u3abb\u0007a\u0002\u0002\u3abb\u3abc\u0007O\u0002\u0002",
+ "\u3abc\u3abd\u0007Q\u0002\u0002\u3abd\u3abe\u0007F\u0002\u0002\u3abe",
+ "\u3abf\u0007G\u0002\u0002\u3abf\u3ac0\u0007N\u0002\u0002\u3ac0\u3ac1",
+ "\u0007a\u0002\u0002\u3ac1\u3ac2\u0007R\u0002\u0002\u3ac2\u3ac3\u0007",
+ "W\u0002\u0002\u3ac3\u3ac4\u0007U\u0002\u0002\u3ac4\u3ac5\u0007J\u0002",
+ "\u0002\u3ac5\u3ac6\u0007a\u0002\u0002\u3ac6\u3ac7\u0007T\u0002\u0002",
+ "\u3ac7\u3ac8\u0007G\u0002\u0002\u3ac8\u3ac9\u0007H\u0002\u0002\u3ac9",
+ "\u07d0\u0003\u0002\u0002\u0002\u3aca\u3acb\u0007P\u0002\u0002\u3acb",
+ "\u3acc\u0007Q\u0002\u0002\u3acc\u3acd\u0007a\u0002\u0002\u3acd\u3ace",
+ "\u0007O\u0002\u0002\u3ace\u3acf\u0007Q\u0002\u0002\u3acf\u3ad0\u0007",
+ "P\u0002\u0002\u3ad0\u3ad1\u0007K\u0002\u0002\u3ad1\u3ad2\u0007V\u0002",
+ "\u0002\u3ad2\u3ad3\u0007Q\u0002\u0002\u3ad3\u3ad4\u0007T\u0002\u0002",
+ "\u3ad4\u3ad5\u0007K\u0002\u0002\u3ad5\u3ad6\u0007P\u0002\u0002\u3ad6",
+ "\u3ad7\u0007I\u0002\u0002\u3ad7\u07d2\u0003\u0002\u0002\u0002\u3ad8",
+ "\u3ad9\u0007P\u0002\u0002\u3ad9\u3ada\u0007Q\u0002\u0002\u3ada\u3adb",
+ "\u0007O\u0002\u0002\u3adb\u3adc\u0007Q\u0002\u0002\u3adc\u3add\u0007",
+ "P\u0002\u0002\u3add\u3ade\u0007K\u0002\u0002\u3ade\u3adf\u0007V\u0002",
+ "\u0002\u3adf\u3ae0\u0007Q\u0002\u0002\u3ae0\u3ae1\u0007T\u0002\u0002",
+ "\u3ae1\u3ae2\u0007K\u0002\u0002\u3ae2\u3ae3\u0007P\u0002\u0002\u3ae3",
+ "\u3ae4\u0007I\u0002\u0002\u3ae4\u07d4\u0003\u0002\u0002\u0002\u3ae5",
+ "\u3ae6\u0007P\u0002\u0002\u3ae6\u3ae7\u0007Q\u0002\u0002\u3ae7\u3ae8",
+ "\u0007a\u0002\u0002\u3ae8\u3ae9\u0007O\u0002\u0002\u3ae9\u3aea\u0007",
+ "Q\u0002\u0002\u3aea\u3aeb\u0007P\u0002\u0002\u3aeb\u3aec\u0007K\u0002",
+ "\u0002\u3aec\u3aed\u0007V\u0002\u0002\u3aed\u3aee\u0007Q\u0002\u0002",
+ "\u3aee\u3aef\u0007T\u0002\u0002\u3aef\u07d6\u0003\u0002\u0002\u0002",
+ "\u3af0\u3af1\u0007P\u0002\u0002\u3af1\u3af2\u0007Q\u0002\u0002\u3af2",
+ "\u3af3\u0007a\u0002\u0002\u3af3\u3af4\u0007O\u0002\u0002\u3af4\u3af5",
+ "\u0007W\u0002\u0002\u3af5\u3af6\u0007N\u0002\u0002\u3af6\u3af7\u0007",
+ "V\u0002\u0002\u3af7\u3af8\u0007K\u0002\u0002\u3af8\u3af9\u0007O\u0002",
+ "\u0002\u3af9\u3afa\u0007X\u0002\u0002\u3afa\u3afb\u0007a\u0002\u0002",
+ "\u3afb\u3afc\u0007T\u0002\u0002\u3afc\u3afd\u0007G\u0002\u0002\u3afd",
+ "\u3afe\u0007Y\u0002\u0002\u3afe\u3aff\u0007T\u0002\u0002\u3aff\u3b00",
+ "\u0007K\u0002\u0002\u3b00\u3b01\u0007V\u0002\u0002\u3b01\u3b02\u0007",
+ "G\u0002\u0002\u3b02\u07d8\u0003\u0002\u0002\u0002\u3b03\u3b04\u0007",
+ "P\u0002\u0002\u3b04\u3b05\u0007Q\u0002\u0002\u3b05\u3b06\u0007a\u0002",
+ "\u0002\u3b06\u3b07\u0007P\u0002\u0002\u3b07\u3b08\u0007C\u0002\u0002",
+ "\u3b08\u3b09\u0007V\u0002\u0002\u3b09\u3b0a\u0007K\u0002\u0002\u3b0a",
+ "\u3b0b\u0007X\u0002\u0002\u3b0b\u3b0c\u0007G\u0002\u0002\u3b0c\u3b0d",
+ "\u0007a\u0002\u0002\u3b0d\u3b0e\u0007H\u0002\u0002\u3b0e\u3b0f\u0007",
+ "W\u0002\u0002\u3b0f\u3b10\u0007N\u0002\u0002\u3b10\u3b11\u0007N\u0002",
+ "\u0002\u3b11\u3b12\u0007a\u0002\u0002\u3b12\u3b13\u0007Q\u0002\u0002",
+ "\u3b13\u3b14\u0007W\u0002\u0002\u3b14\u3b15\u0007V\u0002\u0002\u3b15",
+ "\u3b16\u0007G\u0002\u0002\u3b16\u3b17\u0007T\u0002\u0002\u3b17\u3b18",
+ "\u0007a\u0002\u0002\u3b18\u3b19\u0007L\u0002\u0002\u3b19\u3b1a\u0007",
+ "Q\u0002\u0002\u3b1a\u3b1b\u0007K\u0002\u0002\u3b1b\u3b1c\u0007P\u0002",
+ "\u0002\u3b1c\u07da\u0003\u0002\u0002\u0002\u3b1d\u3b1e\u0007P\u0002",
+ "\u0002\u3b1e\u3b1f\u0007Q\u0002\u0002\u3b1f\u3b20\u0007P\u0002\u0002",
+ "\u3b20\u3b21\u0007D\u0002\u0002\u3b21\u3b22\u0007N\u0002\u0002\u3b22",
+ "\u3b23\u0007Q\u0002\u0002\u3b23\u3b24\u0007E\u0002\u0002\u3b24\u3b25",
+ "\u0007M\u0002\u0002\u3b25\u3b26\u0007K\u0002\u0002\u3b26\u3b27\u0007",
+ "P\u0002\u0002\u3b27\u3b28\u0007I\u0002\u0002\u3b28\u07dc\u0003\u0002",
+ "\u0002\u0002\u3b29\u3b2a\u0007P\u0002\u0002\u3b2a\u3b2b\u0007Q\u0002",
+ "\u0002\u3b2b\u3b2c\u0007P\u0002\u0002\u3b2c\u3b2d\u0007G\u0002\u0002",
+ "\u3b2d\u3b2e\u0007F\u0002\u0002\u3b2e\u3b2f\u0007K\u0002\u0002\u3b2f",
+ "\u3b30\u0007V\u0002\u0002\u3b30\u3b31\u0007K\u0002\u0002\u3b31\u3b32",
+ "\u0007Q\u0002\u0002\u3b32\u3b33\u0007P\u0002\u0002\u3b33\u3b34\u0007",
+ "C\u0002\u0002\u3b34\u3b35\u0007D\u0002\u0002\u3b35\u3b36\u0007N\u0002",
+ "\u0002\u3b36\u3b37\u0007G\u0002\u0002\u3b37\u07de\u0003\u0002\u0002",
+ "\u0002\u3b38\u3b39\u0007P\u0002\u0002\u3b39\u3b3a\u0007Q\u0002\u0002",
+ "\u3b3a\u3b3b\u0007P\u0002\u0002\u3b3b\u3b3c\u0007G\u0002\u0002\u3b3c",
+ "\u07e0\u0003\u0002\u0002\u0002\u3b3d\u3b3e\u0007P\u0002\u0002\u3b3e",
+ "\u3b3f\u0007Q\u0002\u0002\u3b3f\u3b40\u0007a\u0002\u0002\u3b40\u3b41",
+ "\u0007P\u0002\u0002\u3b41\u3b42\u0007N\u0002\u0002\u3b42\u3b43\u0007",
+ "L\u0002\u0002\u3b43\u3b44\u0007a\u0002\u0002\u3b44\u3b45\u0007D\u0002",
+ "\u0002\u3b45\u3b46\u0007C\u0002\u0002\u3b46\u3b47\u0007V\u0002\u0002",
+ "\u3b47\u3b48\u0007E\u0002\u0002\u3b48\u3b49\u0007J\u0002\u0002\u3b49",
+ "\u3b4a\u0007K\u0002\u0002\u3b4a\u3b4b\u0007P\u0002\u0002\u3b4b\u3b4c",
+ "\u0007I\u0002\u0002\u3b4c\u07e2\u0003\u0002\u0002\u0002\u3b4d\u3b4e",
+ "\u0007P\u0002\u0002\u3b4e\u3b4f\u0007Q\u0002\u0002\u3b4f\u3b50\u0007",
+ "a\u0002\u0002\u3b50\u3b51\u0007P\u0002\u0002\u3b51\u3b52\u0007N\u0002",
+ "\u0002\u3b52\u3b53\u0007L\u0002\u0002\u3b53\u3b54\u0007a\u0002\u0002",
+ "\u3b54\u3b55\u0007R\u0002\u0002\u3b55\u3b56\u0007T\u0002\u0002\u3b56",
+ "\u3b57\u0007G\u0002\u0002\u3b57\u3b58\u0007H\u0002\u0002\u3b58\u3b59",
+ "\u0007G\u0002\u0002\u3b59\u3b5a\u0007V\u0002\u0002\u3b5a\u3b5b\u0007",
+ "E\u0002\u0002\u3b5b\u3b5c\u0007J\u0002\u0002\u3b5c\u07e4\u0003\u0002",
+ "\u0002\u0002\u3b5d\u3b5e\u0007P\u0002\u0002\u3b5e\u3b5f\u0007Q\u0002",
+ "\u0002\u3b5f\u07e6\u0003\u0002\u0002\u0002\u3b60\u3b61\u0007P\u0002",
+ "\u0002\u3b61\u3b62\u0007Q\u0002\u0002\u3b62\u3b63\u0007P\u0002\u0002",
+ "\u3b63\u3b64\u0007U\u0002\u0002\u3b64\u3b65\u0007E\u0002\u0002\u3b65",
+ "\u3b66\u0007J\u0002\u0002\u3b66\u3b67\u0007G\u0002\u0002\u3b67\u3b68",
+ "\u0007O\u0002\u0002\u3b68\u3b69\u0007C\u0002\u0002\u3b69\u07e8\u0003",
+ "\u0002\u0002\u0002\u3b6a\u3b6b\u0007P\u0002\u0002\u3b6b\u3b6c\u0007",
+ "Q\u0002\u0002\u3b6c\u3b6d\u0007a\u0002\u0002\u3b6d\u3b6e\u0007Q\u0002",
+ "\u0002\u3b6e\u3b6f\u0007D\u0002\u0002\u3b6f\u3b70\u0007L\u0002\u0002",
+ "\u3b70\u3b71\u0007G\u0002\u0002\u3b71\u3b72\u0007E\u0002\u0002\u3b72",
+ "\u3b73\u0007V\u0002\u0002\u3b73\u3b74\u0007a\u0002\u0002\u3b74\u3b75",
+ "\u0007N\u0002\u0002\u3b75\u3b76\u0007K\u0002\u0002\u3b76\u3b77\u0007",
+ "P\u0002\u0002\u3b77\u3b78\u0007M\u0002\u0002\u3b78\u07ea\u0003\u0002",
+ "\u0002\u0002\u3b79\u3b7a\u0007P\u0002\u0002\u3b7a\u3b7b\u0007Q\u0002",
+ "\u0002\u3b7b\u3b7c\u0007Q\u0002\u0002\u3b7c\u3b7d\u0007T\u0002\u0002",
+ "\u3b7d\u3b7e\u0007F\u0002\u0002\u3b7e\u3b7f\u0007G\u0002\u0002\u3b7f",
+ "\u3b80\u0007T\u0002\u0002\u3b80\u07ec\u0003\u0002\u0002\u0002\u3b81",
+ "\u3b82\u0007P\u0002\u0002\u3b82\u3b83\u0007Q\u0002\u0002\u3b83\u3b84",
+ "\u0007a\u0002\u0002\u3b84\u3b85\u0007Q\u0002\u0002\u3b85\u3b86\u0007",
+ "T\u0002\u0002\u3b86\u3b87\u0007F\u0002\u0002\u3b87\u3b88\u0007G\u0002",
+ "\u0002\u3b88\u3b89\u0007T\u0002\u0002\u3b89\u3b8a\u0007a\u0002\u0002",
+ "\u3b8a\u3b8b\u0007T\u0002\u0002\u3b8b\u3b8c\u0007Q\u0002\u0002\u3b8c",
+ "\u3b8d\u0007N\u0002\u0002\u3b8d\u3b8e\u0007N\u0002\u0002\u3b8e\u3b8f",
+ "\u0007W\u0002\u0002\u3b8f\u3b90\u0007R\u0002\u0002\u3b90\u3b91\u0007",
+ "U\u0002\u0002\u3b91\u07ee\u0003\u0002\u0002\u0002\u3b92\u3b93\u0007",
+ "P\u0002\u0002\u3b93\u3b94\u0007Q\u0002\u0002\u3b94\u3b95\u0007a\u0002",
+ "\u0002\u3b95\u3b96\u0007Q\u0002\u0002\u3b96\u3b97\u0007W\u0002\u0002",
+ "\u3b97\u3b98\u0007V\u0002\u0002\u3b98\u3b99\u0007G\u0002\u0002\u3b99",
+ "\u3b9a\u0007T\u0002\u0002\u3b9a\u3b9b\u0007a\u0002\u0002\u3b9b\u3b9c",
+ "\u0007L\u0002\u0002\u3b9c\u3b9d\u0007Q\u0002\u0002\u3b9d\u3b9e\u0007",
+ "K\u0002\u0002\u3b9e\u3b9f\u0007P\u0002\u0002\u3b9f\u3ba0\u0007a\u0002",
+ "\u0002\u3ba0\u3ba1\u0007V\u0002\u0002\u3ba1\u3ba2\u0007Q\u0002\u0002",
+ "\u3ba2\u3ba3\u0007a\u0002\u0002\u3ba3\u3ba4\u0007C\u0002\u0002\u3ba4",
+ "\u3ba5\u0007P\u0002\u0002\u3ba5\u3ba6\u0007V\u0002\u0002\u3ba6\u3ba7",
+ "\u0007K\u0002\u0002\u3ba7\u07f0\u0003\u0002\u0002\u0002\u3ba8\u3ba9",
+ "\u0007P\u0002\u0002\u3ba9\u3baa\u0007Q\u0002\u0002\u3baa\u3bab\u0007",
+ "a\u0002\u0002\u3bab\u3bac\u0007Q\u0002\u0002\u3bac\u3bad\u0007W\u0002",
+ "\u0002\u3bad\u3bae\u0007V\u0002\u0002\u3bae\u3baf\u0007G\u0002\u0002",
+ "\u3baf\u3bb0\u0007T\u0002\u0002\u3bb0\u3bb1\u0007a\u0002\u0002\u3bb1",
+ "\u3bb2\u0007L\u0002\u0002\u3bb2\u3bb3\u0007Q\u0002\u0002\u3bb3\u3bb4",
+ "\u0007K\u0002\u0002\u3bb4\u3bb5\u0007P\u0002\u0002\u3bb5\u3bb6\u0007",
+ "a\u0002\u0002\u3bb6\u3bb7\u0007V\u0002\u0002\u3bb7\u3bb8\u0007Q\u0002",
+ "\u0002\u3bb8\u3bb9\u0007a\u0002\u0002\u3bb9\u3bba\u0007K\u0002\u0002",
+ "\u3bba\u3bbb\u0007P\u0002\u0002\u3bbb\u3bbc\u0007P\u0002\u0002\u3bbc",
+ "\u3bbd\u0007G\u0002\u0002\u3bbd\u3bbe\u0007T\u0002\u0002\u3bbe\u07f2",
+ "\u0003\u0002\u0002\u0002\u3bbf\u3bc0\u0007P\u0002\u0002\u3bc0\u3bc1",
+ "\u0007Q\u0002\u0002\u3bc1\u3bc2\u0007Q\u0002\u0002\u3bc2\u3bc3\u0007",
+ "X\u0002\u0002\u3bc3\u3bc4\u0007G\u0002\u0002\u3bc4\u3bc5\u0007T\u0002",
+ "\u0002\u3bc5\u3bc6\u0007T\u0002\u0002\u3bc6\u3bc7\u0007K\u0002\u0002",
+ "\u3bc7\u3bc8\u0007F\u0002\u0002\u3bc8\u3bc9\u0007G\u0002\u0002\u3bc9",
+ "\u07f4\u0003\u0002\u0002\u0002\u3bca\u3bcb\u0007P\u0002\u0002\u3bcb",
+ "\u3bcc\u0007Q\u0002\u0002\u3bcc\u3bcd\u0007a\u0002\u0002\u3bcd\u3bce",
+ "\u0007R\u0002\u0002\u3bce\u3bcf\u0007C\u0002\u0002\u3bcf\u3bd0\u0007",
+ "T\u0002\u0002\u3bd0\u3bd1\u0007C\u0002\u0002\u3bd1\u3bd2\u0007N\u0002",
+ "\u0002\u3bd2\u3bd3\u0007N\u0002\u0002\u3bd3\u3bd4\u0007G\u0002\u0002",
+ "\u3bd4\u3bd5\u0007N\u0002\u0002\u3bd5\u3bd6\u0007a\u0002\u0002\u3bd6",
+ "\u3bd7\u0007K\u0002\u0002\u3bd7\u3bd8\u0007P\u0002\u0002\u3bd8\u3bd9",
+ "\u0007F\u0002\u0002\u3bd9\u3bda\u0007G\u0002\u0002\u3bda\u3bdb\u0007",
+ "Z\u0002\u0002\u3bdb\u07f6\u0003\u0002\u0002\u0002\u3bdc\u3bdd\u0007",
+ "P\u0002\u0002\u3bdd\u3bde\u0007Q\u0002\u0002\u3bde\u3bdf\u0007R\u0002",
+ "\u0002\u3bdf\u3be0\u0007C\u0002\u0002\u3be0\u3be1\u0007T\u0002\u0002",
+ "\u3be1\u3be2\u0007C\u0002\u0002\u3be2\u3be3\u0007N\u0002\u0002\u3be3",
+ "\u3be4\u0007N\u0002\u0002\u3be4\u3be5\u0007G\u0002\u0002\u3be5\u3be6",
+ "\u0007N\u0002\u0002\u3be6\u3be7\u0007a\u0002\u0002\u3be7\u3be8\u0007",
+ "K\u0002\u0002\u3be8\u3be9\u0007P\u0002\u0002\u3be9\u3bea\u0007F\u0002",
+ "\u0002\u3bea\u3beb\u0007G\u0002\u0002\u3beb\u3bec\u0007Z\u0002\u0002",
+ "\u3bec\u07f8\u0003\u0002\u0002\u0002\u3bed\u3bee\u0007P\u0002\u0002",
+ "\u3bee\u3bef\u0007Q\u0002\u0002\u3bef\u3bf0\u0007a\u0002\u0002\u3bf0",
+ "\u3bf1\u0007R\u0002\u0002\u3bf1\u3bf2\u0007C\u0002\u0002\u3bf2\u3bf3",
+ "\u0007T\u0002\u0002\u3bf3\u3bf4\u0007C\u0002\u0002\u3bf4\u3bf5\u0007",
+ "N\u0002\u0002\u3bf5\u3bf6\u0007N\u0002\u0002\u3bf6\u3bf7\u0007G\u0002",
+ "\u0002\u3bf7\u3bf8\u0007N\u0002\u0002\u3bf8\u07fa\u0003\u0002\u0002",
+ "\u0002\u3bf9\u3bfa\u0007P\u0002\u0002\u3bfa\u3bfb\u0007Q\u0002\u0002",
+ "\u3bfb\u3bfc\u0007R\u0002\u0002\u3bfc\u3bfd\u0007C\u0002\u0002\u3bfd",
+ "\u3bfe\u0007T\u0002\u0002\u3bfe\u3bff\u0007C\u0002\u0002\u3bff\u3c00",
+ "\u0007N\u0002\u0002\u3c00\u3c01\u0007N\u0002\u0002\u3c01\u3c02\u0007",
+ "G\u0002\u0002\u3c02\u3c03\u0007N\u0002\u0002\u3c03\u07fc\u0003\u0002",
+ "\u0002\u0002\u3c04\u3c05\u0007P\u0002\u0002\u3c05\u3c06\u0007Q\u0002",
+ "\u0002\u3c06\u3c07\u0007a\u0002\u0002\u3c07\u3c08\u0007R\u0002\u0002",
+ "\u3c08\u3c09\u0007C\u0002\u0002\u3c09\u3c0a\u0007T\u0002\u0002\u3c0a",
+ "\u3c0b\u0007V\u0002\u0002\u3c0b\u3c0c\u0007K\u0002\u0002\u3c0c\u3c0d",
+ "\u0007C\u0002\u0002\u3c0d\u3c0e\u0007N\u0002\u0002\u3c0e\u3c0f\u0007",
+ "a\u0002\u0002\u3c0f\u3c10\u0007E\u0002\u0002\u3c10\u3c11\u0007Q\u0002",
+ "\u0002\u3c11\u3c12\u0007O\u0002\u0002\u3c12\u3c13\u0007O\u0002\u0002",
+ "\u3c13\u3c14\u0007K\u0002\u0002\u3c14\u3c15\u0007V\u0002\u0002\u3c15",
+ "\u07fe\u0003\u0002\u0002\u0002\u3c16\u3c17\u0007P\u0002\u0002\u3c17",
+ "\u3c18\u0007Q\u0002\u0002\u3c18\u3c19\u0007a\u0002\u0002\u3c19\u3c1a",
+ "\u0007R\u0002\u0002\u3c1a\u3c1b\u0007C\u0002\u0002\u3c1b\u3c1c\u0007",
+ "T\u0002\u0002\u3c1c\u3c1d\u0007V\u0002\u0002\u3c1d\u3c1e\u0007K\u0002",
+ "\u0002\u3c1e\u3c1f\u0007C\u0002\u0002\u3c1f\u3c20\u0007N\u0002\u0002",
+ "\u3c20\u3c21\u0007a\u0002\u0002\u3c21\u3c22\u0007L\u0002\u0002\u3c22",
+ "\u3c23\u0007Q\u0002\u0002\u3c23\u3c24\u0007K\u0002\u0002\u3c24\u3c25",
+ "\u0007P\u0002\u0002\u3c25\u0800\u0003\u0002\u0002\u0002\u3c26\u3c27",
+ "\u0007P\u0002\u0002\u3c27\u3c28\u0007Q\u0002\u0002\u3c28\u3c29\u0007",
+ "a\u0002\u0002\u3c29\u3c2a\u0007R\u0002\u0002\u3c2a\u3c2b\u0007C\u0002",
+ "\u0002\u3c2b\u3c2c\u0007T\u0002\u0002\u3c2c\u3c2d\u0007V\u0002\u0002",
+ "\u3c2d\u3c2e\u0007K\u0002\u0002\u3c2e\u3c2f\u0007C\u0002\u0002\u3c2f",
+ "\u3c30\u0007N\u0002\u0002\u3c30\u3c31\u0007a\u0002\u0002\u3c31\u3c32",
+ "\u0007T\u0002\u0002\u3c32\u3c33\u0007Q\u0002\u0002\u3c33\u3c34\u0007",
+ "N\u0002\u0002\u3c34\u3c35\u0007N\u0002\u0002\u3c35\u3c36\u0007W\u0002",
+ "\u0002\u3c36\u3c37\u0007R\u0002\u0002\u3c37\u3c38\u0007a\u0002\u0002",
+ "\u3c38\u3c39\u0007R\u0002\u0002\u3c39\u3c3a\u0007W\u0002\u0002\u3c3a",
+ "\u3c3b\u0007U\u0002\u0002\u3c3b\u3c3c\u0007J\u0002\u0002\u3c3c\u3c3d",
+ "\u0007F\u0002\u0002\u3c3d\u3c3e\u0007Q\u0002\u0002\u3c3e\u3c3f\u0007",
+ "Y\u0002\u0002\u3c3f\u3c40\u0007P\u0002\u0002\u3c40\u0802\u0003\u0002",
+ "\u0002\u0002\u3c41\u3c42\u0007P\u0002\u0002\u3c42\u3c43\u0007Q\u0002",
+ "\u0002\u3c43\u3c44\u0007R\u0002\u0002\u3c44\u3c45\u0007C\u0002\u0002",
+ "\u3c45\u3c46\u0007T\u0002\u0002\u3c46\u3c47\u0007V\u0002\u0002\u3c47",
+ "\u3c48\u0007K\u0002\u0002\u3c48\u3c49\u0007V\u0002\u0002\u3c49\u3c4a",
+ "\u0007K\u0002\u0002\u3c4a\u3c4b\u0007Q\u0002\u0002\u3c4b\u3c4c\u0007",
+ "P\u0002\u0002\u3c4c\u0804\u0003\u0002\u0002\u0002\u3c4d\u3c4e\u0007",
+ "P\u0002\u0002\u3c4e\u3c4f\u0007Q\u0002\u0002\u3c4f\u3c50\u0007a\u0002",
+ "\u0002\u3c50\u3c51\u0007R\u0002\u0002\u3c51\u3c52\u0007N\u0002\u0002",
+ "\u3c52\u3c53\u0007C\u0002\u0002\u3c53\u3c54\u0007E\u0002\u0002\u3c54",
+ "\u3c55\u0007G\u0002\u0002\u3c55\u3c56\u0007a\u0002\u0002\u3c56\u3c57",
+ "\u0007F\u0002\u0002\u3c57\u3c58\u0007K\u0002\u0002\u3c58\u3c59\u0007",
+ "U\u0002\u0002\u3c59\u3c5a\u0007V\u0002\u0002\u3c5a\u3c5b\u0007K\u0002",
+ "\u0002\u3c5b\u3c5c\u0007P\u0002\u0002\u3c5c\u3c5d\u0007E\u0002\u0002",
+ "\u3c5d\u3c5e\u0007V\u0002\u0002\u3c5e\u0806\u0003\u0002\u0002\u0002",
+ "\u3c5f\u3c60\u0007P\u0002\u0002\u3c60\u3c61\u0007Q\u0002\u0002\u3c61",
+ "\u3c62\u0007a\u0002\u0002\u3c62\u3c63\u0007R\u0002\u0002\u3c63\u3c64",
+ "\u0007N\u0002\u0002\u3c64\u3c65\u0007C\u0002\u0002\u3c65\u3c66\u0007",
+ "E\u0002\u0002\u3c66\u3c67\u0007G\u0002\u0002\u3c67\u3c68\u0007a\u0002",
+ "\u0002\u3c68\u3c69\u0007I\u0002\u0002\u3c69\u3c6a\u0007T\u0002\u0002",
+ "\u3c6a\u3c6b\u0007Q\u0002\u0002\u3c6b\u3c6c\u0007W\u0002\u0002\u3c6c",
+ "\u3c6d\u0007R\u0002\u0002\u3c6d\u3c6e\u0007a\u0002\u0002\u3c6e\u3c6f",
+ "\u0007D\u0002\u0002\u3c6f\u3c70\u0007[\u0002\u0002\u3c70\u0808\u0003",
+ "\u0002\u0002\u0002\u3c71\u3c72\u0007P\u0002\u0002\u3c72\u3c73\u0007",
+ "Q\u0002\u0002\u3c73\u3c74\u0007a\u0002\u0002\u3c74\u3c75\u0007R\u0002",
+ "\u0002\u3c75\u3c76\u0007S\u0002\u0002\u3c76\u3c77\u0007a\u0002\u0002",
+ "\u3c77\u3c78\u0007E\u0002\u0002\u3c78\u3c79\u0007Q\u0002\u0002\u3c79",
+ "\u3c7a\u0007P\u0002\u0002\u3c7a\u3c7b\u0007E\u0002\u0002\u3c7b\u3c7c",
+ "\u0007W\u0002\u0002\u3c7c\u3c7d\u0007T\u0002\u0002\u3c7d\u3c7e\u0007",
+ "T\u0002\u0002\u3c7e\u3c7f\u0007G\u0002\u0002\u3c7f\u3c80\u0007P\u0002",
+ "\u0002\u3c80\u3c81\u0007V\u0002\u0002\u3c81\u3c82\u0007a\u0002\u0002",
+ "\u3c82\u3c83\u0007W\u0002\u0002\u3c83\u3c84\u0007P\u0002\u0002\u3c84",
+ "\u3c85\u0007K\u0002\u0002\u3c85\u3c86\u0007Q\u0002\u0002\u3c86\u3c87",
+ "\u0007P\u0002\u0002\u3c87\u080a\u0003\u0002\u0002\u0002\u3c88\u3c89",
+ "\u0007P\u0002\u0002\u3c89\u3c8a\u0007Q\u0002\u0002\u3c8a\u3c8b\u0007",
+ "a\u0002\u0002\u3c8b\u3c8c\u0007R\u0002\u0002\u3c8c\u3c8d\u0007S\u0002",
+ "\u0002\u3c8d\u3c8e\u0007a\u0002\u0002\u3c8e\u3c8f\u0007O\u0002\u0002",
+ "\u3c8f\u3c90\u0007C\u0002\u0002\u3c90\u3c91\u0007R\u0002\u0002\u3c91",
+ "\u080c\u0003\u0002\u0002\u0002\u3c92\u3c93\u0007P\u0002\u0002\u3c93",
+ "\u3c94\u0007Q\u0002\u0002\u3c94\u3c95\u0007a\u0002\u0002\u3c95\u3c96",
+ "\u0007R\u0002\u0002\u3c96\u3c97\u0007S\u0002\u0002\u3c97\u3c98\u0007",
+ "a\u0002\u0002\u3c98\u3c99\u0007T\u0002\u0002\u3c99\u3c9a\u0007G\u0002",
+ "\u0002\u3c9a\u3c9b\u0007R\u0002\u0002\u3c9b\u3c9c\u0007N\u0002\u0002",
+ "\u3c9c\u3c9d\u0007K\u0002\u0002\u3c9d\u3c9e\u0007E\u0002\u0002\u3c9e",
+ "\u3c9f\u0007C\u0002\u0002\u3c9f\u3ca0\u0007V\u0002\u0002\u3ca0\u3ca1",
+ "\u0007G\u0002\u0002\u3ca1\u080e\u0003\u0002\u0002\u0002\u3ca2\u3ca3",
+ "\u0007P\u0002\u0002\u3ca3\u3ca4\u0007Q\u0002\u0002\u3ca4\u3ca5\u0007",
+ "a\u0002\u0002\u3ca5\u3ca6\u0007R\u0002\u0002\u3ca6\u3ca7\u0007S\u0002",
+ "\u0002\u3ca7\u3ca8\u0007a\u0002\u0002\u3ca8\u3ca9\u0007U\u0002\u0002",
+ "\u3ca9\u3caa\u0007M\u0002\u0002\u3caa\u3cab\u0007G\u0002\u0002\u3cab",
+ "\u3cac\u0007Y\u0002\u0002\u3cac\u0810\u0003\u0002\u0002\u0002\u3cad",
+ "\u3cae\u0007P\u0002\u0002\u3cae\u3caf\u0007Q\u0002\u0002\u3caf\u3cb0",
+ "\u0007a\u0002\u0002\u3cb0\u3cb1\u0007R\u0002\u0002\u3cb1\u3cb2\u0007",
+ "T\u0002\u0002\u3cb2\u3cb3\u0007W\u0002\u0002\u3cb3\u3cb4\u0007P\u0002",
+ "\u0002\u3cb4\u3cb5\u0007G\u0002\u0002\u3cb5\u3cb6\u0007a\u0002\u0002",
+ "\u3cb6\u3cb7\u0007I\u0002\u0002\u3cb7\u3cb8\u0007U\u0002\u0002\u3cb8",
+ "\u3cb9\u0007G\u0002\u0002\u3cb9\u3cba\u0007V\u0002\u0002\u3cba\u3cbb",
+ "\u0007U\u0002\u0002\u3cbb\u0812\u0003\u0002\u0002\u0002\u3cbc\u3cbd",
+ "\u0007P\u0002\u0002\u3cbd\u3cbe\u0007Q\u0002\u0002\u3cbe\u3cbf\u0007",
+ "a\u0002\u0002\u3cbf\u3cc0\u0007R\u0002\u0002\u3cc0\u3cc1\u0007W\u0002",
+ "\u0002\u3cc1\u3cc2\u0007N\u0002\u0002\u3cc2\u3cc3\u0007N\u0002\u0002",
+ "\u3cc3\u3cc4\u0007a\u0002\u0002\u3cc4\u3cc5\u0007R\u0002\u0002\u3cc5",
+ "\u3cc6\u0007T\u0002\u0002\u3cc6\u3cc7\u0007G\u0002\u0002\u3cc7\u3cc8",
+ "\u0007F\u0002\u0002\u3cc8\u0814\u0003\u0002\u0002\u0002\u3cc9\u3cca",
+ "\u0007P\u0002\u0002\u3cca\u3ccb\u0007Q\u0002\u0002\u3ccb\u3ccc\u0007",
+ "a\u0002\u0002\u3ccc\u3ccd\u0007R\u0002\u0002\u3ccd\u3cce\u0007W\u0002",
+ "\u0002\u3cce\u3ccf\u0007U\u0002\u0002\u3ccf\u3cd0\u0007J\u0002\u0002",
+ "\u3cd0\u3cd1\u0007a\u0002\u0002\u3cd1\u3cd2\u0007R\u0002\u0002\u3cd2",
+ "\u3cd3\u0007T\u0002\u0002\u3cd3\u3cd4\u0007G\u0002\u0002\u3cd4\u3cd5",
+ "\u0007F\u0002\u0002\u3cd5\u0816\u0003\u0002\u0002\u0002\u3cd6\u3cd7",
+ "\u0007P\u0002\u0002\u3cd7\u3cd8\u0007Q\u0002\u0002\u3cd8\u3cd9\u0007",
+ "a\u0002\u0002\u3cd9\u3cda\u0007R\u0002\u0002\u3cda\u3cdb\u0007W\u0002",
+ "\u0002\u3cdb\u3cdc\u0007U\u0002\u0002\u3cdc\u3cdd\u0007J\u0002\u0002",
+ "\u3cdd\u3cde\u0007a\u0002\u0002\u3cde\u3cdf\u0007U\u0002\u0002\u3cdf",
+ "\u3ce0\u0007W\u0002\u0002\u3ce0\u3ce1\u0007D\u0002\u0002\u3ce1\u3ce2",
+ "\u0007S\u0002\u0002\u3ce2\u0818\u0003\u0002\u0002\u0002\u3ce3\u3ce4",
+ "\u0007P\u0002\u0002\u3ce4\u3ce5\u0007Q\u0002\u0002\u3ce5\u3ce6\u0007",
+ "a\u0002\u0002\u3ce6\u3ce7\u0007R\u0002\u0002\u3ce7\u3ce8\u0007Z\u0002",
+ "\u0002\u3ce8\u3ce9\u0007a\u0002\u0002\u3ce9\u3cea\u0007H\u0002\u0002",
+ "\u3cea\u3ceb\u0007C\u0002\u0002\u3ceb\u3cec\u0007W\u0002\u0002\u3cec",
+ "\u3ced\u0007N\u0002\u0002\u3ced\u3cee\u0007V\u0002\u0002\u3cee\u3cef",
+ "\u0007a\u0002\u0002\u3cef\u3cf0\u0007V\u0002\u0002\u3cf0\u3cf1\u0007",
+ "Q\u0002\u0002\u3cf1\u3cf2\u0007N\u0002\u0002\u3cf2\u3cf3\u0007G\u0002",
+ "\u0002\u3cf3\u3cf4\u0007T\u0002\u0002\u3cf4\u3cf5\u0007C\u0002\u0002",
+ "\u3cf5\u3cf6\u0007P\u0002\u0002\u3cf6\u3cf7\u0007E\u0002\u0002\u3cf7",
+ "\u3cf8\u0007G\u0002\u0002\u3cf8\u081a\u0003\u0002\u0002\u0002\u3cf9",
+ "\u3cfa\u0007P\u0002\u0002\u3cfa\u3cfb\u0007Q\u0002\u0002\u3cfb\u3cfc",
+ "\u0007a\u0002\u0002\u3cfc\u3cfd\u0007R\u0002\u0002\u3cfd\u3cfe\u0007",
+ "Z\u0002\u0002\u3cfe\u3cff\u0007a\u0002\u0002\u3cff\u3d00\u0007L\u0002",
+ "\u0002\u3d00\u3d01\u0007Q\u0002\u0002\u3d01\u3d02\u0007K\u0002\u0002",
+ "\u3d02\u3d03\u0007P\u0002\u0002\u3d03\u3d04\u0007a\u0002\u0002\u3d04",
+ "\u3d05\u0007H\u0002\u0002\u3d05\u3d06\u0007K\u0002\u0002\u3d06\u3d07",
+ "\u0007N\u0002\u0002\u3d07\u3d08\u0007V\u0002\u0002\u3d08\u3d09\u0007",
+ "G\u0002\u0002\u3d09\u3d0a\u0007T\u0002\u0002\u3d0a\u081c\u0003\u0002",
+ "\u0002\u0002\u3d0b\u3d0c\u0007P\u0002\u0002\u3d0c\u3d0d\u0007Q\u0002",
+ "\u0002\u3d0d\u3d0e\u0007a\u0002\u0002\u3d0e\u3d0f\u0007S\u0002\u0002",
+ "\u3d0f\u3d10\u0007M\u0002\u0002\u3d10\u3d11\u0007P\u0002\u0002\u3d11",
+ "\u3d12\u0007a\u0002\u0002\u3d12\u3d13\u0007D\u0002\u0002\u3d13\u3d14",
+ "\u0007W\u0002\u0002\u3d14\u3d15\u0007H\u0002\u0002\u3d15\u3d16\u0007",
+ "H\u0002\u0002\u3d16\u081e\u0003\u0002\u0002\u0002\u3d17\u3d18\u0007",
+ "P\u0002\u0002\u3d18\u3d19\u0007Q\u0002\u0002\u3d19\u3d1a\u0007a\u0002",
+ "\u0002\u3d1a\u3d1b\u0007S\u0002\u0002\u3d1b\u3d1c\u0007W\u0002\u0002",
+ "\u3d1c\u3d1d\u0007G\u0002\u0002\u3d1d\u3d1e\u0007T\u0002\u0002\u3d1e",
+ "\u3d1f\u0007[\u0002\u0002\u3d1f\u3d20\u0007a\u0002\u0002\u3d20\u3d21",
+ "\u0007V\u0002\u0002\u3d21\u3d22\u0007T\u0002\u0002\u3d22\u3d23\u0007",
+ "C\u0002\u0002\u3d23\u3d24\u0007P\u0002\u0002\u3d24\u3d25\u0007U\u0002",
+ "\u0002\u3d25\u3d26\u0007H\u0002\u0002\u3d26\u3d27\u0007Q\u0002\u0002",
+ "\u3d27\u3d28\u0007T\u0002\u0002\u3d28\u3d29\u0007O\u0002\u0002\u3d29",
+ "\u3d2a\u0007C\u0002\u0002\u3d2a\u3d2b\u0007V\u0002\u0002\u3d2b\u3d2c",
+ "\u0007K\u0002\u0002\u3d2c\u3d2d\u0007Q\u0002\u0002\u3d2d\u3d2e\u0007",
+ "P\u0002\u0002\u3d2e\u0820\u0003\u0002\u0002\u0002\u3d2f\u3d30\u0007",
+ "P\u0002\u0002\u3d30\u3d31\u0007Q\u0002\u0002\u3d31\u3d32\u0007a\u0002",
+ "\u0002\u3d32\u3d33\u0007T\u0002\u0002\u3d33\u3d34\u0007G\u0002\u0002",
+ "\u3d34\u3d35\u0007H\u0002\u0002\u3d35\u3d36\u0007a\u0002\u0002\u3d36",
+ "\u3d37\u0007E\u0002\u0002\u3d37\u3d38\u0007C\u0002\u0002\u3d38\u3d39",
+ "\u0007U\u0002\u0002\u3d39\u3d3a\u0007E\u0002\u0002\u3d3a\u3d3b\u0007",
+ "C\u0002\u0002\u3d3b\u3d3c\u0007F\u0002\u0002\u3d3c\u3d3d\u0007G\u0002",
+ "\u0002\u3d3d\u0822\u0003\u0002\u0002\u0002\u3d3e\u3d3f\u0007P\u0002",
+ "\u0002\u3d3f\u3d40\u0007Q\u0002\u0002\u3d40\u3d41\u0007T\u0002\u0002",
+ "\u3d41\u3d42\u0007G\u0002\u0002\u3d42\u3d43\u0007N\u0002\u0002\u3d43",
+ "\u3d44\u0007Q\u0002\u0002\u3d44\u3d45\u0007E\u0002\u0002\u3d45\u3d46",
+ "\u0007C\u0002\u0002\u3d46\u3d47\u0007V\u0002\u0002\u3d47\u3d48\u0007",
+ "G\u0002\u0002\u3d48\u0824\u0003\u0002\u0002\u0002\u3d49\u3d4a\u0007",
+ "P\u0002\u0002\u3d4a\u3d4b\u0007Q\u0002\u0002\u3d4b\u3d4c\u0007T\u0002",
+ "\u0002\u3d4c\u3d4d\u0007G\u0002\u0002\u3d4d\u3d4e\u0007N\u0002\u0002",
+ "\u3d4e\u3d4f\u0007[\u0002\u0002\u3d4f\u0826\u0003\u0002\u0002\u0002",
+ "\u3d50\u3d51\u0007P\u0002\u0002\u3d51\u3d52\u0007Q\u0002\u0002\u3d52",
+ "\u3d53\u0007T\u0002\u0002\u3d53\u3d54\u0007G\u0002\u0002\u3d54\u3d55",
+ "\u0007R\u0002\u0002\u3d55\u3d56\u0007C\u0002\u0002\u3d56\u3d57\u0007",
+ "K\u0002\u0002\u3d57\u3d58\u0007T\u0002\u0002\u3d58\u0828\u0003\u0002",
+ "\u0002\u0002\u3d59\u3d5a\u0007P\u0002\u0002\u3d5a\u3d5b\u0007Q\u0002",
+ "\u0002\u3d5b\u3d5c\u0007T\u0002\u0002\u3d5c\u3d5d\u0007G\u0002\u0002",
+ "\u3d5d\u3d5e\u0007R\u0002\u0002\u3d5e\u3d5f\u0007N\u0002\u0002\u3d5f",
+ "\u3d60\u0007C\u0002\u0002\u3d60\u3d61\u0007[\u0002\u0002\u3d61\u082a",
+ "\u0003\u0002\u0002\u0002\u3d62\u3d63\u0007P\u0002\u0002\u3d63\u3d64",
+ "\u0007Q\u0002\u0002\u3d64\u3d65\u0007T\u0002\u0002\u3d65\u3d66\u0007",
+ "G\u0002\u0002\u3d66\u3d67\u0007U\u0002\u0002\u3d67\u3d68\u0007G\u0002",
+ "\u0002\u3d68\u3d69\u0007V\u0002\u0002\u3d69\u3d6a\u0007N\u0002\u0002",
+ "\u3d6a\u3d6b\u0007Q\u0002\u0002\u3d6b\u3d6c\u0007I\u0002\u0002\u3d6c",
+ "\u3d6d\u0007U\u0002\u0002\u3d6d\u082c\u0003\u0002\u0002\u0002\u3d6e",
+ "\u3d6f\u0007P\u0002\u0002\u3d6f\u3d70\u0007Q\u0002\u0002\u3d70\u3d71",
+ "\u0007a\u0002\u0002\u3d71\u3d72\u0007T\u0002\u0002\u3d72\u3d73\u0007",
+ "G\u0002\u0002\u3d73\u3d74\u0007U\u0002\u0002\u3d74\u3d75\u0007W\u0002",
+ "\u0002\u3d75\u3d76\u0007N\u0002\u0002\u3d76\u3d77\u0007V\u0002\u0002",
+ "\u3d77\u3d78\u0007a\u0002\u0002\u3d78\u3d79\u0007E\u0002\u0002\u3d79",
+ "\u3d7a\u0007C\u0002\u0002\u3d7a\u3d7b\u0007E\u0002\u0002\u3d7b\u3d7c",
+ "\u0007J\u0002\u0002\u3d7c\u3d7d\u0007G\u0002\u0002\u3d7d\u082e\u0003",
+ "\u0002\u0002\u0002\u3d7e\u3d7f\u0007P\u0002\u0002\u3d7f\u3d80\u0007",
+ "Q\u0002\u0002\u3d80\u3d81\u0007T\u0002\u0002\u3d81\u3d82\u0007G\u0002",
+ "\u0002\u3d82\u3d83\u0007X\u0002\u0002\u3d83\u3d84\u0007G\u0002\u0002",
+ "\u3d84\u3d85\u0007T\u0002\u0002\u3d85\u3d86\u0007U\u0002\u0002\u3d86",
+ "\u3d87\u0007G\u0002\u0002\u3d87\u0830\u0003\u0002\u0002\u0002\u3d88",
+ "\u3d89\u0007P\u0002\u0002\u3d89\u3d8a\u0007Q\u0002\u0002\u3d8a\u3d8b",
+ "\u0007a\u0002\u0002\u3d8b\u3d8c\u0007T\u0002\u0002\u3d8c\u3d8d\u0007",
+ "G\u0002\u0002\u3d8d\u3d8e\u0007Y\u0002\u0002\u3d8e\u3d8f\u0007T\u0002",
+ "\u0002\u3d8f\u3d90\u0007K\u0002\u0002\u3d90\u3d91\u0007V\u0002\u0002",
+ "\u3d91\u3d92\u0007G\u0002\u0002\u3d92\u0832\u0003\u0002\u0002\u0002",
+ "\u3d93\u3d94\u0007P\u0002\u0002\u3d94\u3d95\u0007Q\u0002\u0002\u3d95",
+ "\u3d96\u0007T\u0002\u0002\u3d96\u3d97\u0007G\u0002\u0002\u3d97\u3d98",
+ "\u0007Y\u0002\u0002\u3d98\u3d99\u0007T\u0002\u0002\u3d99\u3d9a\u0007",
+ "K\u0002\u0002\u3d9a\u3d9b\u0007V\u0002\u0002\u3d9b\u3d9c\u0007G\u0002",
+ "\u0002\u3d9c\u0834\u0003\u0002\u0002\u0002\u3d9d\u3d9e\u0007P\u0002",
+ "\u0002\u3d9e\u3d9f\u0007Q\u0002\u0002\u3d9f\u3da0\u0007T\u0002\u0002",
+ "\u3da0\u3da1\u0007O\u0002\u0002\u3da1\u3da2\u0007C\u0002\u0002\u3da2",
+ "\u3da3\u0007N\u0002\u0002\u3da3\u0836\u0003\u0002\u0002\u0002\u3da4",
+ "\u3da5\u0007P\u0002\u0002\u3da5\u3da6\u0007Q\u0002\u0002\u3da6\u3da7",
+ "\u0007a\u0002\u0002\u3da7\u3da8\u0007T\u0002\u0002\u3da8\u3da9\u0007",
+ "Q\u0002\u0002\u3da9\u3daa\u0007Q\u0002\u0002\u3daa\u3dab\u0007V\u0002",
+ "\u0002\u3dab\u3dac\u0007a\u0002\u0002\u3dac\u3dad\u0007U\u0002\u0002",
+ "\u3dad\u3dae\u0007Y\u0002\u0002\u3dae\u3daf\u0007a\u0002\u0002\u3daf",
+ "\u3db0\u0007H\u0002\u0002\u3db0\u3db1\u0007Q\u0002\u0002\u3db1\u3db2",
+ "\u0007T\u0002\u0002\u3db2\u3db3\u0007a\u0002\u0002\u3db3\u3db4\u0007",
+ "N\u0002\u0002\u3db4\u3db5\u0007Q\u0002\u0002\u3db5\u3db6\u0007E\u0002",
+ "\u0002\u3db6\u3db7\u0007C\u0002\u0002\u3db7\u3db8\u0007N\u0002\u0002",
+ "\u3db8\u0838\u0003\u0002\u0002\u0002\u3db9\u3dba\u0007P\u0002\u0002",
+ "\u3dba\u3dbb\u0007Q\u0002\u0002\u3dbb\u3dbc\u0007T\u0002\u0002\u3dbc",
+ "\u3dbd\u0007Q\u0002\u0002\u3dbd\u3dbe\u0007Y\u0002\u0002\u3dbe\u3dbf",
+ "\u0007F\u0002\u0002\u3dbf\u3dc0\u0007G\u0002\u0002\u3dc0\u3dc1\u0007",
+ "R\u0002\u0002\u3dc1\u3dc2\u0007G\u0002\u0002\u3dc2\u3dc3\u0007P\u0002",
+ "\u0002\u3dc3\u3dc4\u0007F\u0002\u0002\u3dc4\u3dc5\u0007G\u0002\u0002",
+ "\u3dc5\u3dc6\u0007P\u0002\u0002\u3dc6\u3dc7\u0007E\u0002\u0002\u3dc7",
+ "\u3dc8\u0007K\u0002\u0002\u3dc8\u3dc9\u0007G\u0002\u0002\u3dc9\u3dca",
+ "\u0007U\u0002\u0002\u3dca\u083a\u0003\u0002\u0002\u0002\u3dcb\u3dcc",
+ "\u0007P\u0002\u0002\u3dcc\u3dcd\u0007Q\u0002\u0002\u3dcd\u3dce\u0007",
+ "U\u0002\u0002\u3dce\u3dcf\u0007E\u0002\u0002\u3dcf\u3dd0\u0007J\u0002",
+ "\u0002\u3dd0\u3dd1\u0007G\u0002\u0002\u3dd1\u3dd2\u0007O\u0002\u0002",
+ "\u3dd2\u3dd3\u0007C\u0002\u0002\u3dd3\u3dd4\u0007E\u0002\u0002\u3dd4",
+ "\u3dd5\u0007J\u0002\u0002\u3dd5\u3dd6\u0007G\u0002\u0002\u3dd6\u3dd7",
+ "\u0007E\u0002\u0002\u3dd7\u3dd8\u0007M\u0002\u0002\u3dd8\u083c\u0003",
+ "\u0002\u0002\u0002\u3dd9\u3dda\u0007P\u0002\u0002\u3dda\u3ddb\u0007",
+ "Q\u0002\u0002\u3ddb\u3ddc\u0007U\u0002\u0002\u3ddc\u3ddd\u0007G\u0002",
+ "\u0002\u3ddd\u3dde\u0007I\u0002\u0002\u3dde\u3ddf\u0007O\u0002\u0002",
+ "\u3ddf\u3de0\u0007G\u0002\u0002\u3de0\u3de1\u0007P\u0002\u0002\u3de1",
+ "\u3de2\u0007V\u0002\u0002\u3de2\u083e\u0003\u0002\u0002\u0002\u3de3",
+ "\u3de4\u0007P\u0002\u0002\u3de4\u3de5\u0007Q\u0002\u0002\u3de5\u3de6",
+ "\u0007a\u0002\u0002\u3de6\u3de7\u0007U\u0002\u0002\u3de7\u3de8\u0007",
+ "G\u0002\u0002\u3de8\u3de9\u0007O\u0002\u0002\u3de9\u3dea\u0007K\u0002",
+ "\u0002\u3dea\u3deb\u0007L\u0002\u0002\u3deb\u3dec\u0007Q\u0002\u0002",
+ "\u3dec\u3ded\u0007K\u0002\u0002\u3ded\u3dee\u0007P\u0002\u0002\u3dee",
+ "\u0840\u0003\u0002\u0002\u0002\u3def\u3df0\u0007P\u0002\u0002\u3df0",
+ "\u3df1\u0007Q\u0002\u0002\u3df1\u3df2\u0007a\u0002\u0002\u3df2\u3df3",
+ "\u0007U\u0002\u0002\u3df3\u3df4\u0007G\u0002\u0002\u3df4\u3df5\u0007",
+ "O\u0002\u0002\u3df5\u3df6\u0007K\u0002\u0002\u3df6\u3df7\u0007a\u0002",
+ "\u0002\u3df7\u3df8\u0007V\u0002\u0002\u3df8\u3df9\u0007Q\u0002\u0002",
+ "\u3df9\u3dfa\u0007a\u0002\u0002\u3dfa\u3dfb\u0007K\u0002\u0002\u3dfb",
+ "\u3dfc\u0007P\u0002\u0002\u3dfc\u3dfd\u0007P\u0002\u0002\u3dfd\u3dfe",
+ "\u0007G\u0002\u0002\u3dfe\u3dff\u0007T\u0002\u0002\u3dff\u0842\u0003",
+ "\u0002\u0002\u0002\u3e00\u3e01\u0007P\u0002\u0002\u3e01\u3e02\u0007",
+ "Q\u0002\u0002\u3e02\u3e03\u0007a\u0002\u0002\u3e03\u3e04\u0007U\u0002",
+ "\u0002\u3e04\u3e05\u0007G\u0002\u0002\u3e05\u3e06\u0007V\u0002\u0002",
+ "\u3e06\u3e07\u0007a\u0002\u0002\u3e07\u3e08\u0007V\u0002\u0002\u3e08",
+ "\u3e09\u0007Q\u0002\u0002\u3e09\u3e0a\u0007a\u0002\u0002\u3e0a\u3e0b",
+ "\u0007L\u0002\u0002\u3e0b\u3e0c\u0007Q\u0002\u0002\u3e0c\u3e0d\u0007",
+ "K\u0002\u0002\u3e0d\u3e0e\u0007P\u0002\u0002\u3e0e\u0844\u0003\u0002",
+ "\u0002\u0002\u3e0f\u3e10\u0007P\u0002\u0002\u3e10\u3e11\u0007Q\u0002",
+ "\u0002\u3e11\u3e12\u0007U\u0002\u0002\u3e12\u3e13\u0007Q\u0002\u0002",
+ "\u3e13\u3e14\u0007T\u0002\u0002\u3e14\u3e15\u0007V\u0002\u0002\u3e15",
+ "\u0846\u0003\u0002\u0002\u0002\u3e16\u3e17\u0007P\u0002\u0002\u3e17",
+ "\u3e18\u0007Q\u0002\u0002\u3e18\u3e19\u0007a\u0002\u0002\u3e19\u3e1a",
+ "\u0007U\u0002\u0002\u3e1a\u3e1b\u0007S\u0002\u0002\u3e1b\u3e1c\u0007",
+ "N\u0002\u0002\u3e1c\u3e1d\u0007a\u0002\u0002\u3e1d\u3e1e\u0007V\u0002",
+ "\u0002\u3e1e\u3e1f\u0007T\u0002\u0002\u3e1f\u3e20\u0007C\u0002\u0002",
+ "\u3e20\u3e21\u0007P\u0002\u0002\u3e21\u3e22\u0007U\u0002\u0002\u3e22",
+ "\u3e23\u0007N\u0002\u0002\u3e23\u3e24\u0007C\u0002\u0002\u3e24\u3e25",
+ "\u0007V\u0002\u0002\u3e25\u3e26\u0007K\u0002\u0002\u3e26\u3e27\u0007",
+ "Q\u0002\u0002\u3e27\u3e28\u0007P\u0002\u0002\u3e28\u0848\u0003\u0002",
+ "\u0002\u0002\u3e29\u3e2a\u0007P\u0002\u0002\u3e2a\u3e2b\u0007Q\u0002",
+ "\u0002\u3e2b\u3e2c\u0007a\u0002\u0002\u3e2c\u3e2d\u0007U\u0002\u0002",
+ "\u3e2d\u3e2e\u0007S\u0002\u0002\u3e2e\u3e2f\u0007N\u0002\u0002\u3e2f",
+ "\u3e30\u0007a\u0002\u0002\u3e30\u3e31\u0007V\u0002\u0002\u3e31\u3e32",
+ "\u0007W\u0002\u0002\u3e32\u3e33\u0007P\u0002\u0002\u3e33\u3e34\u0007",
+ "G\u0002\u0002\u3e34\u084a\u0003\u0002\u0002\u0002\u3e35\u3e36\u0007",
+ "P\u0002\u0002\u3e36\u3e37\u0007Q\u0002\u0002\u3e37\u3e38\u0007a\u0002",
+ "\u0002\u3e38\u3e39\u0007U\u0002\u0002\u3e39\u3e3a\u0007V\u0002\u0002",
+ "\u3e3a\u3e3b\u0007C\u0002\u0002\u3e3b\u3e3c\u0007T\u0002\u0002\u3e3c",
+ "\u3e3d\u0007a\u0002\u0002\u3e3d\u3e3e\u0007V\u0002\u0002\u3e3e\u3e3f",
+ "\u0007T\u0002\u0002\u3e3f\u3e40\u0007C\u0002\u0002\u3e40\u3e41\u0007",
+ "P\u0002\u0002\u3e41\u3e42\u0007U\u0002\u0002\u3e42\u3e43\u0007H\u0002",
+ "\u0002\u3e43\u3e44\u0007Q\u0002\u0002\u3e44\u3e45\u0007T\u0002\u0002",
+ "\u3e45\u3e46\u0007O\u0002\u0002\u3e46\u3e47\u0007C\u0002\u0002\u3e47",
+ "\u3e48\u0007V\u0002\u0002\u3e48\u3e49\u0007K\u0002\u0002\u3e49\u3e4a",
+ "\u0007Q\u0002\u0002\u3e4a\u3e4b\u0007P\u0002\u0002\u3e4b\u084c\u0003",
+ "\u0002\u0002\u0002\u3e4c\u3e4d\u0007P\u0002\u0002\u3e4d\u3e4e\u0007",
+ "Q\u0002\u0002\u3e4e\u3e4f\u0007a\u0002\u0002\u3e4f\u3e50\u0007U\u0002",
+ "\u0002\u3e50\u3e51\u0007V\u0002\u0002\u3e51\u3e52\u0007C\u0002\u0002",
+ "\u3e52\u3e53\u0007V\u0002\u0002\u3e53\u3e54\u0007G\u0002\u0002\u3e54",
+ "\u3e55\u0007O\u0002\u0002\u3e55\u3e56\u0007G\u0002\u0002\u3e56\u3e57",
+ "\u0007P\u0002\u0002\u3e57\u3e58\u0007V\u0002\u0002\u3e58\u3e59\u0007",
+ "a\u0002\u0002\u3e59\u3e5a\u0007S\u0002\u0002\u3e5a\u3e5b\u0007W\u0002",
+ "\u0002\u3e5b\u3e5c\u0007G\u0002\u0002\u3e5c\u3e5d\u0007W\u0002\u0002",
+ "\u3e5d\u3e5e\u0007K\u0002\u0002\u3e5e\u3e5f\u0007P\u0002\u0002\u3e5f",
+ "\u3e60\u0007I\u0002\u0002\u3e60\u084e\u0003\u0002\u0002\u0002\u3e61",
+ "\u3e62\u0007P\u0002\u0002\u3e62\u3e63\u0007Q\u0002\u0002\u3e63\u3e64",
+ "\u0007a\u0002\u0002\u3e64\u3e65\u0007U\u0002\u0002\u3e65\u3e66\u0007",
+ "V\u0002\u0002\u3e66\u3e67\u0007C\u0002\u0002\u3e67\u3e68\u0007V\u0002",
+ "\u0002\u3e68\u3e69\u0007U\u0002\u0002\u3e69\u3e6a\u0007a\u0002\u0002",
+ "\u3e6a\u3e6b\u0007I\u0002\u0002\u3e6b\u3e6c\u0007U\u0002\u0002\u3e6c",
+ "\u3e6d\u0007G\u0002\u0002\u3e6d\u3e6e\u0007V\u0002\u0002\u3e6e\u3e6f",
+ "\u0007U\u0002\u0002\u3e6f\u0850\u0003\u0002\u0002\u0002\u3e70\u3e71",
+ "\u0007P\u0002\u0002\u3e71\u3e72\u0007Q\u0002\u0002\u3e72\u3e73\u0007",
+ "U\u0002\u0002\u3e73\u3e74\u0007V\u0002\u0002\u3e74\u3e75\u0007T\u0002",
+ "\u0002\u3e75\u3e76\u0007K\u0002\u0002\u3e76\u3e77\u0007E\u0002\u0002",
+ "\u3e77\u3e78\u0007V\u0002\u0002\u3e78\u0852\u0003\u0002\u0002\u0002",
+ "\u3e79\u3e7a\u0007P\u0002\u0002\u3e7a\u3e7b\u0007Q\u0002\u0002\u3e7b",
+ "\u3e7c\u0007a\u0002\u0002\u3e7c\u3e7d\u0007U\u0002\u0002\u3e7d\u3e7e",
+ "\u0007W\u0002\u0002\u3e7e\u3e7f\u0007D\u0002\u0002\u3e7f\u3e80\u0007",
+ "S\u0002\u0002\u3e80\u3e81\u0007W\u0002\u0002\u3e81\u3e82\u0007G\u0002",
+ "\u0002\u3e82\u3e83\u0007T\u0002\u0002\u3e83\u3e84\u0007[\u0002\u0002",
+ "\u3e84\u3e85\u0007a\u0002\u0002\u3e85\u3e86\u0007R\u0002\u0002\u3e86",
+ "\u3e87\u0007T\u0002\u0002\u3e87\u3e88\u0007W\u0002\u0002\u3e88\u3e89",
+ "\u0007P\u0002\u0002\u3e89\u3e8a\u0007K\u0002\u0002\u3e8a\u3e8b\u0007",
+ "P\u0002\u0002\u3e8b\u3e8c\u0007I\u0002\u0002\u3e8c\u0854\u0003\u0002",
+ "\u0002\u0002\u3e8d\u3e8e\u0007P\u0002\u0002\u3e8e\u3e8f\u0007Q\u0002",
+ "\u0002\u3e8f\u3e90\u0007a\u0002\u0002\u3e90\u3e91\u0007U\u0002\u0002",
+ "\u3e91\u3e92\u0007W\u0002\u0002\u3e92\u3e93\u0007D\u0002\u0002\u3e93",
+ "\u3e94\u0007U\u0002\u0002\u3e94\u3e95\u0007V\u0002\u0002\u3e95\u3e96",
+ "\u0007T\u0002\u0002\u3e96\u3e97\u0007D\u0002\u0002\u3e97\u3e98\u0007",
+ "a\u0002\u0002\u3e98\u3e99\u0007R\u0002\u0002\u3e99\u3e9a\u0007C\u0002",
+ "\u0002\u3e9a\u3e9b\u0007F\u0002\u0002\u3e9b\u0856\u0003\u0002\u0002",
+ "\u0002\u3e9c\u3e9d\u0007P\u0002\u0002\u3e9d\u3e9e\u0007Q\u0002\u0002",
+ "\u3e9e\u3e9f\u0007a\u0002\u0002\u3e9f\u3ea0\u0007U\u0002\u0002\u3ea0",
+ "\u3ea1\u0007Y\u0002\u0002\u3ea1\u3ea2\u0007C\u0002\u0002\u3ea2\u3ea3",
+ "\u0007R\u0002\u0002\u3ea3\u3ea4\u0007a\u0002\u0002\u3ea4\u3ea5\u0007",
+ "L\u0002\u0002\u3ea5\u3ea6\u0007Q\u0002\u0002\u3ea6\u3ea7\u0007K\u0002",
+ "\u0002\u3ea7\u3ea8\u0007P\u0002\u0002\u3ea8\u3ea9\u0007a\u0002\u0002",
+ "\u3ea9\u3eaa\u0007K\u0002\u0002\u3eaa\u3eab\u0007P\u0002\u0002\u3eab",
+ "\u3eac\u0007R\u0002\u0002\u3eac\u3ead\u0007W\u0002\u0002\u3ead\u3eae",
+ "\u0007V\u0002\u0002\u3eae\u3eaf\u0007U\u0002\u0002\u3eaf\u0858\u0003",
+ "\u0002\u0002\u0002\u3eb0\u3eb1\u0007P\u0002\u0002\u3eb1\u3eb2\u0007",
+ "Q\u0002\u0002\u3eb2\u3eb3\u0007U\u0002\u0002\u3eb3\u3eb4\u0007Y\u0002",
+ "\u0002\u3eb4\u3eb5\u0007K\u0002\u0002\u3eb5\u3eb6\u0007V\u0002\u0002",
+ "\u3eb6\u3eb7\u0007E\u0002\u0002\u3eb7\u3eb8\u0007J\u0002\u0002\u3eb8",
+ "\u085a\u0003\u0002\u0002\u0002\u3eb9\u3eba\u0007P\u0002\u0002\u3eba",
+ "\u3ebb\u0007Q\u0002\u0002\u3ebb\u3ebc\u0007a\u0002\u0002\u3ebc\u3ebd",
+ "\u0007V\u0002\u0002\u3ebd\u3ebe\u0007C\u0002\u0002\u3ebe\u3ebf\u0007",
+ "D\u0002\u0002\u3ebf\u3ec0\u0007N\u0002\u0002\u3ec0\u3ec1\u0007G\u0002",
+ "\u0002\u3ec1\u3ec2\u0007a\u0002\u0002\u3ec2\u3ec3\u0007N\u0002\u0002",
+ "\u3ec3\u3ec4\u0007Q\u0002\u0002\u3ec4\u3ec5\u0007Q\u0002\u0002\u3ec5",
+ "\u3ec6\u0007M\u0002\u0002\u3ec6\u3ec7\u0007W\u0002\u0002\u3ec7\u3ec8",
+ "\u0007R\u0002\u0002\u3ec8\u3ec9\u0007a\u0002\u0002\u3ec9\u3eca\u0007",
+ "D\u0002\u0002\u3eca\u3ecb\u0007[\u0002\u0002\u3ecb\u3ecc\u0007a\u0002",
+ "\u0002\u3ecc\u3ecd\u0007P\u0002\u0002\u3ecd\u3ece\u0007N\u0002\u0002",
+ "\u3ece\u085c\u0003\u0002\u0002\u0002\u3ecf\u3ed0\u0007P\u0002\u0002",
+ "\u3ed0\u3ed1\u0007Q\u0002\u0002\u3ed1\u3ed2\u0007a\u0002\u0002\u3ed2",
+ "\u3ed3\u0007V\u0002\u0002\u3ed3\u3ed4\u0007G\u0002\u0002\u3ed4\u3ed5",
+ "\u0007O\u0002\u0002\u3ed5\u3ed6\u0007R\u0002\u0002\u3ed6\u3ed7\u0007",
+ "a\u0002\u0002\u3ed7\u3ed8\u0007V\u0002\u0002\u3ed8\u3ed9\u0007C\u0002",
+ "\u0002\u3ed9\u3eda\u0007D\u0002\u0002\u3eda\u3edb\u0007N\u0002\u0002",
+ "\u3edb\u3edc\u0007G\u0002\u0002\u3edc\u085e\u0003\u0002\u0002\u0002",
+ "\u3edd\u3ede\u0007P\u0002\u0002\u3ede\u3edf\u0007Q\u0002\u0002\u3edf",
+ "\u3ee0\u0007V\u0002\u0002\u3ee0\u3ee1\u0007J\u0002\u0002\u3ee1\u3ee2",
+ "\u0007K\u0002\u0002\u3ee2\u3ee3\u0007P\u0002\u0002\u3ee3\u3ee4\u0007",
+ "I\u0002\u0002\u3ee4\u0860\u0003\u0002\u0002\u0002\u3ee5\u3ee6\u0007",
+ "P\u0002\u0002\u3ee6\u3ee7\u0007Q\u0002\u0002\u3ee7\u3ee8\u0007V\u0002",
+ "\u0002\u3ee8\u3ee9\u0007K\u0002\u0002\u3ee9\u3eea\u0007H\u0002\u0002",
+ "\u3eea\u3eeb\u0007K\u0002\u0002\u3eeb\u3eec\u0007E\u0002\u0002\u3eec",
+ "\u3eed\u0007C\u0002\u0002\u3eed\u3eee\u0007V\u0002\u0002\u3eee\u3eef",
+ "\u0007K\u0002\u0002\u3eef\u3ef0\u0007Q\u0002\u0002\u3ef0\u3ef1\u0007",
+ "P\u0002\u0002\u3ef1\u0862\u0003\u0002\u0002\u0002\u3ef2\u3ef3\u0007",
+ "P\u0002\u0002\u3ef3\u3ef4\u0007Q\u0002\u0002\u3ef4\u3ef5\u0007V\u0002",
+ "\u0002\u3ef5\u0864\u0003\u0002\u0002\u0002\u3ef6\u3ef7\u0007P\u0002",
+ "\u0002\u3ef7\u3ef8\u0007Q\u0002\u0002\u3ef8\u3ef9\u0007a\u0002\u0002",
+ "\u3ef9\u3efa\u0007V\u0002\u0002\u3efa\u3efb\u0007T\u0002\u0002\u3efb",
+ "\u3efc\u0007C\u0002\u0002\u3efc\u3efd\u0007P\u0002\u0002\u3efd\u3efe",
+ "\u0007U\u0002\u0002\u3efe\u3eff\u0007H\u0002\u0002\u3eff\u3f00\u0007",
+ "Q\u0002\u0002\u3f00\u3f01\u0007T\u0002\u0002\u3f01\u3f02\u0007O\u0002",
+ "\u0002\u3f02\u3f03\u0007a\u0002\u0002\u3f03\u3f04\u0007F\u0002\u0002",
+ "\u3f04\u3f05\u0007K\u0002\u0002\u3f05\u3f06\u0007U\u0002\u0002\u3f06",
+ "\u3f07\u0007V\u0002\u0002\u3f07\u3f08\u0007K\u0002\u0002\u3f08\u3f09",
+ "\u0007P\u0002\u0002\u3f09\u3f0a\u0007E\u0002\u0002\u3f0a\u3f0b\u0007",
+ "V\u0002\u0002\u3f0b\u3f0c\u0007a\u0002\u0002\u3f0c\u3f0d\u0007C\u0002",
+ "\u0002\u3f0d\u3f0e\u0007I\u0002\u0002\u3f0e\u3f0f\u0007I\u0002\u0002",
+ "\u3f0f\u0866\u0003\u0002\u0002\u0002\u3f10\u3f11\u0007P\u0002\u0002",
+ "\u3f11\u3f12\u0007Q\u0002\u0002\u3f12\u3f13\u0007a\u0002\u0002\u3f13",
+ "\u3f14\u0007W\u0002\u0002\u3f14\u3f15\u0007P\u0002\u0002\u3f15\u3f16",
+ "\u0007P\u0002\u0002\u3f16\u3f17\u0007G\u0002\u0002\u3f17\u3f18\u0007",
+ "U\u0002\u0002\u3f18\u3f19\u0007V\u0002\u0002\u3f19\u0868\u0003\u0002",
+ "\u0002\u0002\u3f1a\u3f1b\u0007P\u0002\u0002\u3f1b\u3f1c\u0007Q\u0002",
+ "\u0002\u3f1c\u3f1d\u0007a\u0002\u0002\u3f1d\u3f1e\u0007W\u0002\u0002",
+ "\u3f1e\u3f1f\u0007U\u0002\u0002\u3f1f\u3f20\u0007G\u0002\u0002\u3f20",
+ "\u3f21\u0007a\u0002\u0002\u3f21\u3f22\u0007E\u0002\u0002\u3f22\u3f23",
+ "\u0007W\u0002\u0002\u3f23\u3f24\u0007D\u0002\u0002\u3f24\u3f25\u0007",
+ "G\u0002\u0002\u3f25\u086a\u0003\u0002\u0002\u0002\u3f26\u3f27\u0007",
+ "P\u0002\u0002\u3f27\u3f28\u0007Q\u0002\u0002\u3f28\u3f29\u0007a\u0002",
+ "\u0002\u3f29\u3f2a\u0007W\u0002\u0002\u3f2a\u3f2b\u0007U\u0002\u0002",
+ "\u3f2b\u3f2c\u0007G\u0002\u0002\u3f2c\u3f2d\u0007a\u0002\u0002\u3f2d",
+ "\u3f2e\u0007J\u0002\u0002\u3f2e\u3f2f\u0007C\u0002\u0002\u3f2f\u3f30",
+ "\u0007U\u0002\u0002\u3f30\u3f31\u0007J\u0002\u0002\u3f31\u3f32\u0007",
+ "a\u0002\u0002\u3f32\u3f33\u0007C\u0002\u0002\u3f33\u3f34\u0007I\u0002",
+ "\u0002\u3f34\u3f35\u0007I\u0002\u0002\u3f35\u3f36\u0007T\u0002\u0002",
+ "\u3f36\u3f37\u0007G\u0002\u0002\u3f37\u3f38\u0007I\u0002\u0002\u3f38",
+ "\u3f39\u0007C\u0002\u0002\u3f39\u3f3a\u0007V\u0002\u0002\u3f3a\u3f3b",
+ "\u0007K\u0002\u0002\u3f3b\u3f3c\u0007Q\u0002\u0002\u3f3c\u3f3d\u0007",
+ "P\u0002\u0002\u3f3d\u086c\u0003\u0002\u0002\u0002\u3f3e\u3f3f\u0007",
+ "P\u0002\u0002\u3f3f\u3f40\u0007Q\u0002\u0002\u3f40\u3f41\u0007a\u0002",
+ "\u0002\u3f41\u3f42\u0007W\u0002\u0002\u3f42\u3f43\u0007U\u0002\u0002",
+ "\u3f43\u3f44\u0007G\u0002\u0002\u3f44\u3f45\u0007a\u0002\u0002\u3f45",
+ "\u3f46\u0007J\u0002\u0002\u3f46\u3f47\u0007C\u0002\u0002\u3f47\u3f48",
+ "\u0007U\u0002\u0002\u3f48\u3f49\u0007J\u0002\u0002\u3f49\u3f4a\u0007",
+ "a\u0002\u0002\u3f4a\u3f4b\u0007I\u0002\u0002\u3f4b\u3f4c\u0007D\u0002",
+ "\u0002\u3f4c\u3f4d\u0007[\u0002\u0002\u3f4d\u3f4e\u0007a\u0002\u0002",
+ "\u3f4e\u3f4f\u0007H\u0002\u0002\u3f4f\u3f50\u0007Q\u0002\u0002\u3f50",
+ "\u3f51\u0007T\u0002\u0002\u3f51\u3f52\u0007a\u0002\u0002\u3f52\u3f53",
+ "\u0007R\u0002\u0002\u3f53\u3f54\u0007W\u0002\u0002\u3f54\u3f55\u0007",
+ "U\u0002\u0002\u3f55\u3f56\u0007J\u0002\u0002\u3f56\u3f57\u0007F\u0002",
+ "\u0002\u3f57\u3f58\u0007Q\u0002\u0002\u3f58\u3f59\u0007Y\u0002\u0002",
+ "\u3f59\u3f5a\u0007P\u0002\u0002\u3f5a\u086e\u0003\u0002\u0002\u0002",
+ "\u3f5b\u3f5c\u0007P\u0002\u0002\u3f5c\u3f5d\u0007Q\u0002\u0002\u3f5d",
+ "\u3f5e\u0007a\u0002\u0002\u3f5e\u3f5f\u0007W\u0002\u0002\u3f5f\u3f60",
+ "\u0007U\u0002\u0002\u3f60\u3f61\u0007G\u0002\u0002\u3f61\u3f62\u0007",
+ "a\u0002\u0002\u3f62\u3f63\u0007J\u0002\u0002\u3f63\u3f64\u0007C\u0002",
+ "\u0002\u3f64\u3f65\u0007U\u0002\u0002\u3f65\u3f66\u0007J\u0002\u0002",
+ "\u3f66\u0870\u0003\u0002\u0002\u0002\u3f67\u3f68\u0007P\u0002\u0002",
+ "\u3f68\u3f69\u0007Q\u0002\u0002\u3f69\u3f6a\u0007a\u0002\u0002\u3f6a",
+ "\u3f6b\u0007W\u0002\u0002\u3f6b\u3f6c\u0007U\u0002\u0002\u3f6c\u3f6d",
+ "\u0007G\u0002\u0002\u3f6d\u3f6e\u0007a\u0002\u0002\u3f6e\u3f6f\u0007",
+ "K\u0002\u0002\u3f6f\u3f70\u0007P\u0002\u0002\u3f70\u3f71\u0007X\u0002",
+ "\u0002\u3f71\u3f72\u0007K\u0002\u0002\u3f72\u3f73\u0007U\u0002\u0002",
+ "\u3f73\u3f74\u0007K\u0002\u0002\u3f74\u3f75\u0007D\u0002\u0002\u3f75",
+ "\u3f76\u0007N\u0002\u0002\u3f76\u3f77\u0007G\u0002\u0002\u3f77\u3f78",
+ "\u0007a\u0002\u0002\u3f78\u3f79\u0007K\u0002\u0002\u3f79\u3f7a\u0007",
+ "P\u0002\u0002\u3f7a\u3f7b\u0007F\u0002\u0002\u3f7b\u3f7c\u0007G\u0002",
+ "\u0002\u3f7c\u3f7d\u0007Z\u0002\u0002\u3f7d\u3f7e\u0007G\u0002\u0002",
+ "\u3f7e\u3f7f\u0007U\u0002\u0002\u3f7f\u0872\u0003\u0002\u0002\u0002",
+ "\u3f80\u3f81\u0007P\u0002\u0002\u3f81\u3f82\u0007Q\u0002\u0002\u3f82",
+ "\u3f83\u0007a\u0002\u0002\u3f83\u3f84\u0007W\u0002\u0002\u3f84\u3f85",
+ "\u0007U\u0002\u0002\u3f85\u3f86\u0007G\u0002\u0002\u3f86\u3f87\u0007",
+ "a\u0002\u0002\u3f87\u3f88\u0007O\u0002\u0002\u3f88\u3f89\u0007G\u0002",
+ "\u0002\u3f89\u3f8a\u0007T\u0002\u0002\u3f8a\u3f8b\u0007I\u0002\u0002",
+ "\u3f8b\u3f8c\u0007G\u0002\u0002\u3f8c\u0874\u0003\u0002\u0002\u0002",
+ "\u3f8d\u3f8e\u0007P\u0002\u0002\u3f8e\u3f8f\u0007Q\u0002\u0002\u3f8f",
+ "\u3f90\u0007a\u0002\u0002\u3f90\u3f91\u0007W\u0002\u0002\u3f91\u3f92",
+ "\u0007U\u0002\u0002\u3f92\u3f93\u0007G\u0002\u0002\u3f93\u3f94\u0007",
+ "a\u0002\u0002\u3f94\u3f95\u0007P\u0002\u0002\u3f95\u3f96\u0007N\u0002",
+ "\u0002\u3f96\u0876\u0003\u0002\u0002\u0002\u3f97\u3f98\u0007P\u0002",
+ "\u0002\u3f98\u3f99\u0007Q\u0002\u0002\u3f99\u3f9a\u0007a\u0002\u0002",
+ "\u3f9a\u3f9b\u0007W\u0002\u0002\u3f9b\u3f9c\u0007U\u0002\u0002\u3f9c",
+ "\u3f9d\u0007G\u0002\u0002\u3f9d\u3f9e\u0007a\u0002\u0002\u3f9e\u3f9f",
+ "\u0007X\u0002\u0002\u3f9f\u3fa0\u0007G\u0002\u0002\u3fa0\u3fa1\u0007",
+ "E\u0002\u0002\u3fa1\u3fa2\u0007V\u0002\u0002\u3fa2\u3fa3\u0007Q\u0002",
+ "\u0002\u3fa3\u3fa4\u0007T\u0002\u0002\u3fa4\u3fa5\u0007a\u0002\u0002",
+ "\u3fa5\u3fa6\u0007C\u0002\u0002\u3fa6\u3fa7\u0007I\u0002\u0002\u3fa7",
+ "\u3fa8\u0007I\u0002\u0002\u3fa8\u3fa9\u0007T\u0002\u0002\u3fa9\u3faa",
+ "\u0007G\u0002\u0002\u3faa\u3fab\u0007I\u0002\u0002\u3fab\u3fac\u0007",
+ "C\u0002\u0002\u3fac\u3fad\u0007V\u0002\u0002\u3fad\u3fae\u0007K\u0002",
+ "\u0002\u3fae\u3faf\u0007Q\u0002\u0002\u3faf\u3fb0\u0007P\u0002\u0002",
+ "\u3fb0\u0878\u0003\u0002\u0002\u0002\u3fb1\u3fb2\u0007P\u0002\u0002",
+ "\u3fb2\u3fb3\u0007Q\u0002\u0002\u3fb3\u3fb4\u0007X\u0002\u0002\u3fb4",
+ "\u3fb5\u0007C\u0002\u0002\u3fb5\u3fb6\u0007N\u0002\u0002\u3fb6\u3fb7",
+ "\u0007K\u0002\u0002\u3fb7\u3fb8\u0007F\u0002\u0002\u3fb8\u3fb9\u0007",
+ "C\u0002\u0002\u3fb9\u3fba\u0007V\u0002\u0002\u3fba\u3fbb\u0007G\u0002",
+ "\u0002\u3fbb\u087a\u0003\u0002\u0002\u0002\u3fbc\u3fbd\u0007P\u0002",
+ "\u0002\u3fbd\u3fbe\u0007Q\u0002\u0002\u3fbe\u3fbf\u0007a\u0002\u0002",
+ "\u3fbf\u3fc0\u0007X\u0002\u0002\u3fc0\u3fc1\u0007G\u0002\u0002\u3fc1",
+ "\u3fc2\u0007E\u0002\u0002\u3fc2\u3fc3\u0007V\u0002\u0002\u3fc3\u3fc4",
+ "\u0007Q\u0002\u0002\u3fc4\u3fc5\u0007T\u0002\u0002\u3fc5\u3fc6\u0007",
+ "a\u0002\u0002\u3fc6\u3fc7\u0007V\u0002\u0002\u3fc7\u3fc8\u0007T\u0002",
+ "\u0002\u3fc8\u3fc9\u0007C\u0002\u0002\u3fc9\u3fca\u0007P\u0002\u0002",
+ "\u3fca\u3fcb\u0007U\u0002\u0002\u3fcb\u3fcc\u0007H\u0002\u0002\u3fcc",
+ "\u3fcd\u0007Q\u0002\u0002\u3fcd\u3fce\u0007T\u0002\u0002\u3fce\u3fcf",
+ "\u0007O\u0002\u0002\u3fcf\u3fd0\u0007a\u0002\u0002\u3fd0\u3fd1\u0007",
+ "F\u0002\u0002\u3fd1\u3fd2\u0007K\u0002\u0002\u3fd2\u3fd3\u0007O\u0002",
+ "\u0002\u3fd3\u3fd4\u0007U\u0002\u0002\u3fd4\u087c\u0003\u0002\u0002",
+ "\u0002\u3fd5\u3fd6\u0007P\u0002\u0002\u3fd6\u3fd7\u0007Q\u0002\u0002",
+ "\u3fd7\u3fd8\u0007a\u0002\u0002\u3fd8\u3fd9\u0007X\u0002\u0002\u3fd9",
+ "\u3fda\u0007G\u0002\u0002\u3fda\u3fdb\u0007E\u0002\u0002\u3fdb\u3fdc",
+ "\u0007V\u0002\u0002\u3fdc\u3fdd\u0007Q\u0002\u0002\u3fdd\u3fde\u0007",
+ "T\u0002\u0002\u3fde\u3fdf\u0007a\u0002\u0002\u3fdf\u3fe0\u0007V\u0002",
+ "\u0002\u3fe0\u3fe1\u0007T\u0002\u0002\u3fe1\u3fe2\u0007C\u0002\u0002",
+ "\u3fe2\u3fe3\u0007P\u0002\u0002\u3fe3\u3fe4\u0007U\u0002\u0002\u3fe4",
+ "\u3fe5\u0007H\u0002\u0002\u3fe5\u3fe6\u0007Q\u0002\u0002\u3fe6\u3fe7",
+ "\u0007T\u0002\u0002\u3fe7\u3fe8\u0007O\u0002\u0002\u3fe8\u3fe9\u0007",
+ "a\u0002\u0002\u3fe9\u3fea\u0007H\u0002\u0002\u3fea\u3feb\u0007C\u0002",
+ "\u0002\u3feb\u3fec\u0007E\u0002\u0002\u3fec\u3fed\u0007V\u0002\u0002",
+ "\u3fed\u087e\u0003\u0002\u0002\u0002\u3fee\u3fef\u0007P\u0002\u0002",
+ "\u3fef\u3ff0\u0007Q\u0002\u0002\u3ff0\u3ff1\u0007a\u0002\u0002\u3ff1",
+ "\u3ff2\u0007X\u0002\u0002\u3ff2\u3ff3\u0007G\u0002\u0002\u3ff3\u3ff4",
+ "\u0007E\u0002\u0002\u3ff4\u3ff5\u0007V\u0002\u0002\u3ff5\u3ff6\u0007",
+ "Q\u0002\u0002\u3ff6\u3ff7\u0007T\u0002\u0002\u3ff7\u3ff8\u0007a\u0002",
+ "\u0002\u3ff8\u3ff9\u0007V\u0002\u0002\u3ff9\u3ffa\u0007T\u0002\u0002",
+ "\u3ffa\u3ffb\u0007C\u0002\u0002\u3ffb\u3ffc\u0007P\u0002\u0002\u3ffc",
+ "\u3ffd\u0007U\u0002\u0002\u3ffd\u3ffe\u0007H\u0002\u0002\u3ffe\u3fff",
+ "\u0007Q\u0002\u0002\u3fff\u4000\u0007T\u0002\u0002\u4000\u4001\u0007",
+ "O\u0002\u0002\u4001\u0880\u0003\u0002\u0002\u0002\u4002\u4003\u0007",
+ "P\u0002\u0002\u4003\u4004\u0007Q\u0002\u0002\u4004\u4005\u0007Y\u0002",
+ "\u0002\u4005\u4006\u0007C\u0002\u0002\u4006\u4007\u0007K\u0002\u0002",
+ "\u4007\u4008\u0007V\u0002\u0002\u4008\u0882\u0003\u0002\u0002\u0002",
+ "\u4009\u400a\u0007P\u0002\u0002\u400a\u400b\u0007Q\u0002\u0002\u400b",
+ "\u400c\u0007a\u0002\u0002\u400c\u400d\u0007Z\u0002\u0002\u400d\u400e",
+ "\u0007F\u0002\u0002\u400e\u400f\u0007D\u0002\u0002\u400f\u4010\u0007",
+ "a\u0002\u0002\u4010\u4011\u0007H\u0002\u0002\u4011\u4012\u0007C\u0002",
+ "\u0002\u4012\u4013\u0007U\u0002\u0002\u4013\u4014\u0007V\u0002\u0002",
+ "\u4014\u4015\u0007R\u0002\u0002\u4015\u4016\u0007C\u0002\u0002\u4016",
+ "\u4017\u0007V\u0002\u0002\u4017\u4018\u0007J\u0002\u0002\u4018\u4019",
+ "\u0007a\u0002\u0002\u4019\u401a\u0007K\u0002\u0002\u401a\u401b\u0007",
+ "P\u0002\u0002\u401b\u401c\u0007U\u0002\u0002\u401c\u401d\u0007G\u0002",
+ "\u0002\u401d\u401e\u0007T\u0002\u0002\u401e\u401f\u0007V\u0002\u0002",
+ "\u401f\u0884\u0003\u0002\u0002\u0002\u4020\u4021\u0007P\u0002\u0002",
+ "\u4021\u4022\u0007Q\u0002\u0002\u4022\u4023\u0007a\u0002\u0002\u4023",
+ "\u4024\u0007Z\u0002\u0002\u4024\u4025\u0007O\u0002\u0002\u4025\u4026",
+ "\u0007N\u0002\u0002\u4026\u4027\u0007a\u0002\u0002\u4027\u4028\u0007",
+ "F\u0002\u0002\u4028\u4029\u0007O\u0002\u0002\u4029\u402a\u0007N\u0002",
+ "\u0002\u402a\u402b\u0007a\u0002\u0002\u402b\u402c\u0007T\u0002\u0002",
+ "\u402c\u402d\u0007G\u0002\u0002\u402d\u402e\u0007Y\u0002\u0002\u402e",
+ "\u402f\u0007T\u0002\u0002\u402f\u4030\u0007K\u0002\u0002\u4030\u4031",
+ "\u0007V\u0002\u0002\u4031\u4032\u0007G\u0002\u0002\u4032\u0886\u0003",
+ "\u0002\u0002\u0002\u4033\u4034\u0007P\u0002\u0002\u4034\u4035\u0007",
+ "Q\u0002\u0002\u4035\u4036\u0007a\u0002\u0002\u4036\u4037\u0007Z\u0002",
+ "\u0002\u4037\u4038\u0007O\u0002\u0002\u4038\u4039\u0007N\u0002\u0002",
+ "\u4039\u403a\u0007K\u0002\u0002\u403a\u403b\u0007P\u0002\u0002\u403b",
+ "\u403c\u0007F\u0002\u0002\u403c\u403d\u0007G\u0002\u0002\u403d\u403e",
+ "\u0007Z\u0002\u0002\u403e\u403f\u0007a\u0002\u0002\u403f\u4040\u0007",
+ "T\u0002\u0002\u4040\u4041\u0007G\u0002\u0002\u4041\u4042\u0007Y\u0002",
+ "\u0002\u4042\u4043\u0007T\u0002\u0002\u4043\u4044\u0007K\u0002\u0002",
+ "\u4044\u4045\u0007V\u0002\u0002\u4045\u4046\u0007G\u0002\u0002\u4046",
+ "\u4047\u0007a\u0002\u0002\u4047\u4048\u0007K\u0002\u0002\u4048\u4049",
+ "\u0007P\u0002\u0002\u4049\u404a\u0007a\u0002\u0002\u404a\u404b\u0007",
+ "U\u0002\u0002\u404b\u404c\u0007G\u0002\u0002\u404c\u404d\u0007N\u0002",
+ "\u0002\u404d\u404e\u0007G\u0002\u0002\u404e\u404f\u0007E\u0002\u0002",
+ "\u404f\u4050\u0007V\u0002\u0002\u4050\u0888\u0003\u0002\u0002\u0002",
+ "\u4051\u4052\u0007P\u0002\u0002\u4052\u4053\u0007Q\u0002\u0002\u4053",
+ "\u4054\u0007a\u0002\u0002\u4054\u4055\u0007Z\u0002\u0002\u4055\u4056",
+ "\u0007O\u0002\u0002\u4056\u4057\u0007N\u0002\u0002\u4057\u4058\u0007",
+ "K\u0002\u0002\u4058\u4059\u0007P\u0002\u0002\u4059\u405a\u0007F\u0002",
+ "\u0002\u405a\u405b\u0007G\u0002\u0002\u405b\u405c\u0007Z\u0002\u0002",
+ "\u405c\u405d\u0007a\u0002\u0002\u405d\u405e\u0007T\u0002\u0002\u405e",
+ "\u405f\u0007G\u0002\u0002\u405f\u4060\u0007Y\u0002\u0002\u4060\u4061",
+ "\u0007T\u0002\u0002\u4061\u4062\u0007K\u0002\u0002\u4062\u4063\u0007",
+ "V\u0002\u0002\u4063\u4064\u0007G\u0002\u0002\u4064\u088a\u0003\u0002",
+ "\u0002\u0002\u4065\u4066\u0007P\u0002\u0002\u4066\u4067\u0007Q\u0002",
+ "\u0002\u4067\u4068\u0007a\u0002\u0002\u4068\u4069\u0007Z\u0002\u0002",
+ "\u4069\u406a\u0007O\u0002\u0002\u406a\u406b\u0007N\u0002\u0002\u406b",
+ "\u406c\u0007a\u0002\u0002\u406c\u406d\u0007S\u0002\u0002\u406d\u406e",
+ "\u0007W\u0002\u0002\u406e\u406f\u0007G\u0002\u0002\u406f\u4070\u0007",
+ "T\u0002\u0002\u4070\u4071\u0007[\u0002\u0002\u4071\u4072\u0007a\u0002",
+ "\u0002\u4072\u4073\u0007T\u0002\u0002\u4073\u4074\u0007G\u0002\u0002",
+ "\u4074\u4075\u0007Y\u0002\u0002\u4075\u4076\u0007T\u0002\u0002\u4076",
+ "\u4077\u0007K\u0002\u0002\u4077\u4078\u0007V\u0002\u0002\u4078\u4079",
+ "\u0007G\u0002\u0002\u4079\u088c\u0003\u0002\u0002\u0002\u407a\u407b",
+ "\u0007P\u0002\u0002\u407b\u407c\u0007Q\u0002\u0002\u407c\u407d\u0007",
+ "a\u0002\u0002\u407d\u407e\u0007\\\u0002\u0002\u407e\u407f\u0007Q\u0002",
+ "\u0002\u407f\u4080\u0007P\u0002\u0002\u4080\u4081\u0007G\u0002\u0002",
+ "\u4081\u4082\u0007O\u0002\u0002\u4082\u4083\u0007C\u0002\u0002\u4083",
+ "\u4084\u0007R\u0002\u0002\u4084\u088e\u0003\u0002\u0002\u0002\u4085",
+ "\u4086\u0007P\u0002\u0002\u4086\u4087\u0007V\u0002\u0002\u4087\u4088",
+ "\u0007J\u0002\u0002\u4088\u4089\u0007a\u0002\u0002\u4089\u408a\u0007",
+ "X\u0002\u0002\u408a\u408b\u0007C\u0002\u0002\u408b\u408c\u0007N\u0002",
+ "\u0002\u408c\u408d\u0007W\u0002\u0002\u408d\u408e\u0007G\u0002\u0002",
+ "\u408e\u0890\u0003\u0002\u0002\u0002\u408f\u4090\u0007P\u0002\u0002",
+ "\u4090\u4091\u0007W\u0002\u0002\u4091\u4092\u0007N\u0002\u0002\u4092",
+ "\u4093\u0007N\u0002\u0002\u4093\u4094\u0007K\u0002\u0002\u4094\u4095",
+ "\u0007H\u0002\u0002\u4095\u0892\u0003\u0002\u0002\u0002\u4096\u4097",
+ "\u0007P\u0002\u0002\u4097\u4098\u0007W\u0002\u0002\u4098\u4099\u0007",
+ "N\u0002\u0002\u4099\u409a\u0007N\u0002\u0002\u409a\u0894\u0003\u0002",
+ "\u0002\u0002\u409b\u409c\u0007P\u0002\u0002\u409c\u409d\u0007W\u0002",
+ "\u0002\u409d\u409e\u0007N\u0002\u0002\u409e\u409f\u0007N\u0002\u0002",
+ "\u409f\u40a0\u0007U\u0002\u0002\u40a0\u0896\u0003\u0002\u0002\u0002",
+ "\u40a1\u40a2\u0007P\u0002\u0002\u40a2\u40a3\u0007W\u0002\u0002\u40a3",
+ "\u40a4\u0007O\u0002\u0002\u40a4\u40a5\u0007D\u0002\u0002\u40a5\u40a6",
+ "\u0007G\u0002\u0002\u40a6\u40a7\u0007T\u0002\u0002\u40a7\u0898\u0003",
+ "\u0002\u0002\u0002\u40a8\u40a9\u0007P\u0002\u0002\u40a9\u40aa\u0007",
+ "W\u0002\u0002\u40aa\u40ab\u0007O\u0002\u0002\u40ab\u40ac\u0007G\u0002",
+ "\u0002\u40ac\u40ad\u0007T\u0002\u0002\u40ad\u40ae\u0007K\u0002\u0002",
+ "\u40ae\u40af\u0007E\u0002\u0002\u40af\u089a\u0003\u0002\u0002\u0002",
+ "\u40b0\u40b1\u0007P\u0002\u0002\u40b1\u40b2\u0007W\u0002\u0002\u40b2",
+ "\u40b3\u0007O\u0002\u0002\u40b3\u40b4\u0007a\u0002\u0002\u40b4\u40b5",
+ "\u0007K\u0002\u0002\u40b5\u40b6\u0007P\u0002\u0002\u40b6\u40b7\u0007",
+ "F\u0002\u0002\u40b7\u40b8\u0007G\u0002\u0002\u40b8\u40b9\u0007Z\u0002",
+ "\u0002\u40b9\u40ba\u0007a\u0002\u0002\u40ba\u40bb\u0007M\u0002\u0002",
+ "\u40bb\u40bc\u0007G\u0002\u0002\u40bc\u40bd\u0007[\u0002\u0002\u40bd",
+ "\u40be\u0007U\u0002\u0002\u40be\u089c\u0003\u0002\u0002\u0002\u40bf",
+ "\u40c0\u0007P\u0002\u0002\u40c0\u40c1\u0007W\u0002\u0002\u40c1\u40c2",
+ "\u0007O\u0002\u0002\u40c2\u40c3\u0007V\u0002\u0002\u40c3\u40c4\u0007",
+ "Q\u0002\u0002\u40c4\u40c5\u0007F\u0002\u0002\u40c5\u40c6\u0007U\u0002",
+ "\u0002\u40c6\u40c7\u0007K\u0002\u0002\u40c7\u40c8\u0007P\u0002\u0002",
+ "\u40c8\u40c9\u0007V\u0002\u0002\u40c9\u40ca\u0007G\u0002\u0002\u40ca",
+ "\u40cb\u0007T\u0002\u0002\u40cb\u40cc\u0007X\u0002\u0002\u40cc\u40cd",
+ "\u0007C\u0002\u0002\u40cd\u40ce\u0007N\u0002\u0002\u40ce\u089e\u0003",
+ "\u0002\u0002\u0002\u40cf\u40d0\u0007P\u0002\u0002\u40d0\u40d1\u0007",
+ "W\u0002\u0002\u40d1\u40d2\u0007O\u0002\u0002\u40d2\u40d3\u0007V\u0002",
+ "\u0002\u40d3\u40d4\u0007Q\u0002\u0002\u40d4\u40d5\u0007[\u0002\u0002",
+ "\u40d5\u40d6\u0007O\u0002\u0002\u40d6\u40d7\u0007K\u0002\u0002\u40d7",
+ "\u40d8\u0007P\u0002\u0002\u40d8\u40d9\u0007V\u0002\u0002\u40d9\u40da",
+ "\u0007G\u0002\u0002\u40da\u40db\u0007T\u0002\u0002\u40db\u40dc\u0007",
+ "X\u0002\u0002\u40dc\u40dd\u0007C\u0002\u0002\u40dd\u40de\u0007N\u0002",
+ "\u0002\u40de\u08a0\u0003\u0002\u0002\u0002\u40df\u40e0\u0007P\u0002",
+ "\u0002\u40e0\u40e1\u0007X\u0002\u0002\u40e1\u40e2\u0007C\u0002\u0002",
+ "\u40e2\u40e3\u0007T\u0002\u0002\u40e3\u40e4\u0007E\u0002\u0002\u40e4",
+ "\u40e5\u0007J\u0002\u0002\u40e5\u40e6\u0007C\u0002\u0002\u40e6\u40e7",
+ "\u0007T\u0002\u0002\u40e7\u40e8\u00074\u0002\u0002\u40e8\u08a2\u0003",
+ "\u0002\u0002\u0002\u40e9\u40ea\u0007P\u0002\u0002\u40ea\u40eb\u0007",
+ "X\u0002\u0002\u40eb\u40ec\u0007N\u0002\u0002\u40ec\u40ed\u00074\u0002",
+ "\u0002\u40ed\u08a4\u0003\u0002\u0002\u0002\u40ee\u40ef\u0007Q\u0002",
+ "\u0002\u40ef\u40f0\u0007D\u0002\u0002\u40f0\u40f1\u0007L\u0002\u0002",
+ "\u40f1\u40f2\u0007G\u0002\u0002\u40f2\u40f3\u0007E\u0002\u0002\u40f3",
+ "\u40f4\u0007V\u0002\u0002\u40f4\u40f5\u00074\u0002\u0002\u40f5\u40f6",
+ "\u0007Z\u0002\u0002\u40f6\u40f7\u0007O\u0002\u0002\u40f7\u40f8\u0007",
+ "N\u0002\u0002\u40f8\u08a6\u0003\u0002\u0002\u0002\u40f9\u40fa\u0007",
+ "Q\u0002\u0002\u40fa\u40fb\u0007D\u0002\u0002\u40fb\u40fc\u0007L\u0002",
+ "\u0002\u40fc\u40fd\u0007G\u0002\u0002\u40fd\u40fe\u0007E\u0002\u0002",
+ "\u40fe\u40ff\u0007V\u0002\u0002\u40ff\u08a8\u0003\u0002\u0002\u0002",
+ "\u4100\u4101\u0007Q\u0002\u0002\u4101\u4102\u0007D\u0002\u0002\u4102",
+ "\u4103\u0007L\u0002\u0002\u4103\u4104\u0007a\u0002\u0002\u4104\u4105",
+ "\u0007K\u0002\u0002\u4105\u4106\u0007F\u0002\u0002\u4106\u08aa\u0003",
+ "\u0002\u0002\u0002\u4107\u4108\u0007Q\u0002\u0002\u4108\u4109\u0007",
+ "D\u0002\u0002\u4109\u410a\u0007L\u0002\u0002\u410a\u410b\u0007P\u0002",
+ "\u0002\u410b\u410c\u0007Q\u0002\u0002\u410c\u08ac\u0003\u0002\u0002",
+ "\u0002\u410d\u410e\u0007Q\u0002\u0002\u410e\u410f\u0007D\u0002\u0002",
+ "\u410f\u4110\u0007L\u0002\u0002\u4110\u4111\u0007P\u0002\u0002\u4111",
+ "\u4112\u0007Q\u0002\u0002\u4112\u4113\u0007a\u0002\u0002\u4113\u4114",
+ "\u0007T\u0002\u0002\u4114\u4115\u0007G\u0002\u0002\u4115\u4116\u0007",
+ "W\u0002\u0002\u4116\u4117\u0007U\u0002\u0002\u4117\u4118\u0007G\u0002",
+ "\u0002\u4118\u08ae\u0003\u0002\u0002\u0002\u4119\u411a\u0007Q\u0002",
+ "\u0002\u411a\u411b\u0007E\u0002\u0002\u411b\u411c\u0007E\u0002\u0002",
+ "\u411c\u411d\u0007W\u0002\u0002\u411d\u411e\u0007T\u0002\u0002\u411e",
+ "\u411f\u0007G\u0002\u0002\u411f\u4120\u0007P\u0002\u0002\u4120\u4121",
+ "\u0007E\u0002\u0002\u4121\u4122\u0007G\u0002\u0002\u4122\u4123\u0007",
+ "U\u0002\u0002\u4123\u08b0\u0003\u0002\u0002\u0002\u4124\u4125\u0007",
+ "Q\u0002\u0002\u4125\u4126\u0007H\u0002\u0002\u4126\u4127\u0007H\u0002",
+ "\u0002\u4127\u4128\u0007N\u0002\u0002\u4128\u4129\u0007K\u0002\u0002",
+ "\u4129\u412a\u0007P\u0002\u0002\u412a\u412b\u0007G\u0002\u0002\u412b",
+ "\u08b2\u0003\u0002\u0002\u0002\u412c\u412d\u0007Q\u0002\u0002\u412d",
+ "\u412e\u0007H\u0002\u0002\u412e\u412f\u0007H\u0002\u0002\u412f\u08b4",
+ "\u0003\u0002\u0002\u0002\u4130\u4131\u0007Q\u0002\u0002\u4131\u4132",
+ "\u0007H\u0002\u0002\u4132\u4133\u0007H\u0002\u0002\u4133\u4134\u0007",
+ "U\u0002\u0002\u4134\u4135\u0007G\u0002\u0002\u4135\u4136\u0007V\u0002",
+ "\u0002\u4136\u08b6\u0003\u0002\u0002\u0002\u4137\u4138\u0007Q\u0002",
+ "\u0002\u4138\u4139\u0007H\u0002\u0002\u4139\u08b8\u0003\u0002\u0002",
+ "\u0002\u413a\u413b\u0007Q\u0002\u0002\u413b\u413c\u0007K\u0002\u0002",
+ "\u413c\u413d\u0007F\u0002\u0002\u413d\u413e\u0007K\u0002\u0002\u413e",
+ "\u413f\u0007P\u0002\u0002\u413f\u4140\u0007F\u0002\u0002\u4140\u4141",
+ "\u0007G\u0002\u0002\u4141\u4142\u0007Z\u0002\u0002\u4142\u08ba\u0003",
+ "\u0002\u0002\u0002\u4143\u4144\u0007Q\u0002\u0002\u4144\u4145\u0007",
+ "K\u0002\u0002\u4145\u4146\u0007F\u0002\u0002\u4146\u08bc\u0003\u0002",
+ "\u0002\u0002\u4147\u4148\u0007Q\u0002\u0002\u4148\u4149\u0007N\u0002",
+ "\u0002\u4149\u414a\u0007C\u0002\u0002\u414a\u414b\u0007R\u0002\u0002",
+ "\u414b\u08be\u0003\u0002\u0002\u0002\u414c\u414d\u0007Q\u0002\u0002",
+ "\u414d\u414e\u0007N\u0002\u0002\u414e\u414f\u0007F\u0002\u0002\u414f",
+ "\u08c0\u0003\u0002\u0002\u0002\u4150\u4151\u0007Q\u0002\u0002\u4151",
+ "\u4152\u0007N\u0002\u0002\u4152\u4153\u0007F\u0002\u0002\u4153\u4154",
+ "\u0007a\u0002\u0002\u4154\u4155\u0007R\u0002\u0002\u4155\u4156\u0007",
+ "W\u0002\u0002\u4156\u4157\u0007U\u0002\u0002\u4157\u4158\u0007J\u0002",
+ "\u0002\u4158\u4159\u0007a\u0002\u0002\u4159\u415a\u0007R\u0002\u0002",
+ "\u415a\u415b\u0007T\u0002\u0002\u415b\u415c\u0007G\u0002\u0002\u415c",
+ "\u415d\u0007F\u0002\u0002\u415d\u08c2\u0003\u0002\u0002\u0002\u415e",
+ "\u415f\u0007Q\u0002\u0002\u415f\u4160\u0007N\u0002\u0002\u4160\u4161",
+ "\u0007U\u0002\u0002\u4161\u08c4\u0003\u0002\u0002\u0002\u4162\u4163",
+ "\u0007Q\u0002\u0002\u4163\u4164\u0007N\u0002\u0002\u4164\u4165\u0007",
+ "V\u0002\u0002\u4165\u4166\u0007R\u0002\u0002\u4166\u08c6\u0003\u0002",
+ "\u0002\u0002\u4167\u4168\u0007Q\u0002\u0002\u4168\u4169\u0007O\u0002",
+ "\u0002\u4169\u416a\u0007K\u0002\u0002\u416a\u416b\u0007V\u0002\u0002",
+ "\u416b\u08c8\u0003\u0002\u0002\u0002\u416c\u416d\u0007Q\u0002\u0002",
+ "\u416d\u416e\u0007P\u0002\u0002\u416e\u416f\u0007G\u0002\u0002\u416f",
+ "\u08ca\u0003\u0002\u0002\u0002\u4170\u4171\u0007Q\u0002\u0002\u4171",
+ "\u4172\u0007P\u0002\u0002\u4172\u4173\u0007N\u0002\u0002\u4173\u4174",
+ "\u0007K\u0002\u0002\u4174\u4175\u0007P\u0002\u0002\u4175\u4176\u0007",
+ "G\u0002\u0002\u4176\u08cc\u0003\u0002\u0002\u0002\u4177\u4178\u0007",
+ "Q\u0002\u0002\u4178\u4179\u0007P\u0002\u0002\u4179\u417a\u0007N\u0002",
+ "\u0002\u417a\u417b\u0007K\u0002\u0002\u417b\u417c\u0007P\u0002\u0002",
+ "\u417c\u417d\u0007G\u0002\u0002\u417d\u417e\u0007N\u0002\u0002\u417e",
+ "\u417f\u0007Q\u0002\u0002\u417f\u4180\u0007I\u0002\u0002\u4180\u08ce",
+ "\u0003\u0002\u0002\u0002\u4181\u4182\u0007Q\u0002\u0002\u4182\u4183",
+ "\u0007P\u0002\u0002\u4183\u4184\u0007N\u0002\u0002\u4184\u4185\u0007",
+ "[\u0002\u0002\u4185\u08d0\u0003\u0002\u0002\u0002\u4186\u4187\u0007",
+ "Q\u0002\u0002\u4187\u4188\u0007P\u0002\u0002\u4188\u08d2\u0003\u0002",
+ "\u0002\u0002\u4189\u418a\u0007Q\u0002\u0002\u418a\u418b\u0007R\u0002",
+ "\u0002\u418b\u418c\u0007C\u0002\u0002\u418c\u418d\u0007S\u0002\u0002",
+ "\u418d\u418e\u0007W\u0002\u0002\u418e\u418f\u0007G\u0002\u0002\u418f",
+ "\u08d4\u0003\u0002\u0002\u0002\u4190\u4191\u0007Q\u0002\u0002\u4191",
+ "\u4192\u0007R\u0002\u0002\u4192\u4193\u0007C\u0002\u0002\u4193\u4194",
+ "\u0007S\u0002\u0002\u4194\u4195\u0007W\u0002\u0002\u4195\u4196\u0007",
+ "G\u0002\u0002\u4196\u4197\u0007a\u0002\u0002\u4197\u4198\u0007V\u0002",
+ "\u0002\u4198\u4199\u0007T\u0002\u0002\u4199\u419a\u0007C\u0002\u0002",
+ "\u419a\u419b\u0007P\u0002\u0002\u419b\u419c\u0007U\u0002\u0002\u419c",
+ "\u419d\u0007H\u0002\u0002\u419d\u419e\u0007Q\u0002\u0002\u419e\u419f",
+ "\u0007T\u0002\u0002\u419f\u41a0\u0007O\u0002\u0002\u41a0\u08d6\u0003",
+ "\u0002\u0002\u0002\u41a1\u41a2\u0007Q\u0002\u0002\u41a2\u41a3\u0007",
+ "R\u0002\u0002\u41a3\u41a4\u0007C\u0002\u0002\u41a4\u41a5\u0007S\u0002",
+ "\u0002\u41a5\u41a6\u0007W\u0002\u0002\u41a6\u41a7\u0007G\u0002\u0002",
+ "\u41a7\u41a8\u0007a\u0002\u0002\u41a8\u41a9\u0007Z\u0002\u0002\u41a9",
+ "\u41aa\u0007E\u0002\u0002\u41aa\u41ab\u0007C\u0002\u0002\u41ab\u41ac",
+ "\u0007P\u0002\u0002\u41ac\u41ad\u0007Q\u0002\u0002\u41ad\u41ae\u0007",
+ "P\u0002\u0002\u41ae\u41af\u0007K\u0002\u0002\u41af\u41b0\u0007E\u0002",
+ "\u0002\u41b0\u41b1\u0007C\u0002\u0002\u41b1\u41b2\u0007N\u0002\u0002",
+ "\u41b2\u08d8\u0003\u0002\u0002\u0002\u41b3\u41b4\u0007Q\u0002\u0002",
+ "\u41b4\u41b5\u0007R\u0002\u0002\u41b5\u41b6\u0007E\u0002\u0002\u41b6",
+ "\u41b7\u0007Q\u0002\u0002\u41b7\u41b8\u0007F\u0002\u0002\u41b8\u41b9",
+ "\u0007G\u0002\u0002\u41b9\u08da\u0003\u0002\u0002\u0002\u41ba\u41bb",
+ "\u0007Q\u0002\u0002\u41bb\u41bc\u0007R\u0002\u0002\u41bc\u41bd\u0007",
+ "G\u0002\u0002\u41bd\u41be\u0007P\u0002\u0002\u41be\u08dc\u0003\u0002",
+ "\u0002\u0002\u41bf\u41c0\u0007Q\u0002\u0002\u41c0\u41c1\u0007R\u0002",
+ "\u0002\u41c1\u41c2\u0007G\u0002\u0002\u41c2\u41c3\u0007T\u0002\u0002",
+ "\u41c3\u41c4\u0007C\u0002\u0002\u41c4\u41c5\u0007V\u0002\u0002\u41c5",
+ "\u41c6\u0007K\u0002\u0002\u41c6\u41c7\u0007Q\u0002\u0002\u41c7\u41c8",
+ "\u0007P\u0002\u0002\u41c8\u41c9\u0007U\u0002\u0002\u41c9\u08de\u0003",
+ "\u0002\u0002\u0002\u41ca\u41cb\u0007Q\u0002\u0002\u41cb\u41cc\u0007",
+ "R\u0002\u0002\u41cc\u41cd\u0007G\u0002\u0002\u41cd\u41ce\u0007T\u0002",
+ "\u0002\u41ce\u41cf\u0007C\u0002\u0002\u41cf\u41d0\u0007V\u0002\u0002",
+ "\u41d0\u41d1\u0007Q\u0002\u0002\u41d1\u41d2\u0007T\u0002\u0002\u41d2",
+ "\u08e0\u0003\u0002\u0002\u0002\u41d3\u41d4\u0007Q\u0002\u0002\u41d4",
+ "\u41d5\u0007R\u0002\u0002\u41d5\u41d6\u0007V\u0002\u0002\u41d6\u41d7",
+ "\u0007a\u0002\u0002\u41d7\u41d8\u0007G\u0002\u0002\u41d8\u41d9\u0007",
+ "U\u0002\u0002\u41d9\u41da\u0007V\u0002\u0002\u41da\u41db\u0007K\u0002",
+ "\u0002\u41db\u41dc\u0007O\u0002\u0002\u41dc\u41dd\u0007C\u0002\u0002",
+ "\u41dd\u41de\u0007V\u0002\u0002\u41de\u41df\u0007G\u0002\u0002\u41df",
+ "\u08e2\u0003\u0002\u0002\u0002\u41e0\u41e1\u0007Q\u0002\u0002\u41e1",
+ "\u41e2\u0007R\u0002\u0002\u41e2\u41e3\u0007V\u0002\u0002\u41e3\u41e4",
+ "\u0007K\u0002\u0002\u41e4\u41e5\u0007O\u0002\u0002\u41e5\u41e6\u0007",
+ "C\u0002\u0002\u41e6\u41e7\u0007N\u0002\u0002\u41e7\u08e4\u0003\u0002",
+ "\u0002\u0002\u41e8\u41e9\u0007Q\u0002\u0002\u41e9\u41ea\u0007R\u0002",
+ "\u0002\u41ea\u41eb\u0007V\u0002\u0002\u41eb\u41ec\u0007K\u0002\u0002",
+ "\u41ec\u41ed\u0007O\u0002\u0002\u41ed\u41ee\u0007K\u0002\u0002\u41ee",
+ "\u41ef\u0007\\\u0002\u0002\u41ef\u41f0\u0007G\u0002\u0002\u41f0\u08e6",
+ "\u0003\u0002\u0002\u0002\u41f1\u41f2\u0007Q\u0002\u0002\u41f2\u41f3",
+ "\u0007R\u0002\u0002\u41f3\u41f4\u0007V\u0002\u0002\u41f4\u41f5\u0007",
+ "K\u0002\u0002\u41f5\u41f6\u0007O\u0002\u0002\u41f6\u41f7\u0007K\u0002",
+ "\u0002\u41f7\u41f8\u0007\\\u0002\u0002\u41f8\u41f9\u0007G\u0002\u0002",
+ "\u41f9\u41fa\u0007T\u0002\u0002\u41fa\u41fb\u0007a\u0002\u0002\u41fb",
+ "\u41fc\u0007H\u0002\u0002\u41fc\u41fd\u0007G\u0002\u0002\u41fd\u41fe",
+ "\u0007C\u0002\u0002\u41fe\u41ff\u0007V\u0002\u0002\u41ff\u4200\u0007",
+ "W\u0002\u0002\u4200\u4201\u0007T\u0002\u0002\u4201\u4202\u0007G\u0002",
+ "\u0002\u4202\u4203\u0007U\u0002\u0002\u4203\u4204\u0007a\u0002\u0002",
+ "\u4204\u4205\u0007G\u0002\u0002\u4205\u4206\u0007P\u0002\u0002\u4206",
+ "\u4207\u0007C\u0002\u0002\u4207\u4208\u0007D\u0002\u0002\u4208\u4209",
+ "\u0007N\u0002\u0002\u4209\u420a\u0007G\u0002\u0002\u420a\u08e8\u0003",
+ "\u0002\u0002\u0002\u420b\u420c\u0007Q\u0002\u0002\u420c\u420d\u0007",
+ "R\u0002\u0002\u420d\u420e\u0007V\u0002\u0002\u420e\u420f\u0007K\u0002",
+ "\u0002\u420f\u4210\u0007O\u0002\u0002\u4210\u4211\u0007K\u0002\u0002",
+ "\u4211\u4212\u0007\\\u0002\u0002\u4212\u4213\u0007G\u0002\u0002\u4213",
+ "\u4214\u0007T\u0002\u0002\u4214\u4215\u0007a\u0002\u0002\u4215\u4216",
+ "\u0007I\u0002\u0002\u4216\u4217\u0007Q\u0002\u0002\u4217\u4218\u0007",
+ "C\u0002\u0002\u4218\u4219\u0007N\u0002\u0002\u4219\u08ea\u0003\u0002",
+ "\u0002\u0002\u421a\u421b\u0007Q\u0002\u0002\u421b\u421c\u0007R\u0002",
+ "\u0002\u421c\u421d\u0007V\u0002\u0002\u421d\u421e\u0007K\u0002\u0002",
+ "\u421e\u421f\u0007Q\u0002\u0002\u421f\u4220\u0007P\u0002\u0002\u4220",
+ "\u08ec\u0003\u0002\u0002\u0002\u4221\u4222\u0007Q\u0002\u0002\u4222",
+ "\u4223\u0007R\u0002\u0002\u4223\u4224\u0007V\u0002\u0002\u4224\u4225",
+ "\u0007a\u0002\u0002\u4225\u4226\u0007R\u0002\u0002\u4226\u4227\u0007",
+ "C\u0002\u0002\u4227\u4228\u0007T\u0002\u0002\u4228\u4229\u0007C\u0002",
+ "\u0002\u4229\u422a\u0007O\u0002\u0002\u422a\u08ee\u0003\u0002\u0002",
+ "\u0002\u422b\u422c\u0007Q\u0002\u0002\u422c\u422d\u0007T\u0002\u0002",
+ "\u422d\u422e\u0007C\u0002\u0002\u422e\u422f\u0007a\u0002\u0002\u422f",
+ "\u4230\u0007D\u0002\u0002\u4230\u4231\u0007T\u0002\u0002\u4231\u4232",
+ "\u0007C\u0002\u0002\u4232\u4233\u0007P\u0002\u0002\u4233\u4234\u0007",
+ "E\u0002\u0002\u4234\u4235\u0007J\u0002\u0002\u4235\u08f0\u0003\u0002",
+ "\u0002\u0002\u4236\u4237\u0007Q\u0002\u0002\u4237\u4238\u0007T\u0002",
+ "\u0002\u4238\u4239\u0007C\u0002\u0002\u4239\u423a\u0007a\u0002\u0002",
+ "\u423a\u423b\u0007E\u0002\u0002\u423b\u423c\u0007J\u0002\u0002\u423c",
+ "\u423d\u0007G\u0002\u0002\u423d\u423e\u0007E\u0002\u0002\u423e\u423f",
+ "\u0007M\u0002\u0002\u423f\u4240\u0007a\u0002\u0002\u4240\u4241\u0007",
+ "C\u0002\u0002\u4241\u4242\u0007E\u0002\u0002\u4242\u4243\u0007N\u0002",
+ "\u0002\u4243\u08f2\u0003\u0002\u0002\u0002\u4244\u4245\u0007Q\u0002",
+ "\u0002\u4245\u4246\u0007T\u0002\u0002\u4246\u4247\u0007C\u0002\u0002",
+ "\u4247\u4248\u0007a\u0002\u0002\u4248\u4249\u0007E\u0002\u0002\u4249",
+ "\u424a\u0007J\u0002\u0002\u424a\u424b\u0007G\u0002\u0002\u424b\u424c",
+ "\u0007E\u0002\u0002\u424c\u424d\u0007M\u0002\u0002\u424d\u424e\u0007",
+ "a\u0002\u0002\u424e\u424f\u0007R\u0002\u0002\u424f\u4250\u0007T\u0002",
+ "\u0002\u4250\u4251\u0007K\u0002\u0002\u4251\u4252\u0007X\u0002\u0002",
+ "\u4252\u4253\u0007K\u0002\u0002\u4253\u4254\u0007N\u0002\u0002\u4254",
+ "\u4255\u0007G\u0002\u0002\u4255\u4256\u0007I\u0002\u0002\u4256\u4257",
+ "\u0007G\u0002\u0002\u4257\u08f4\u0003\u0002\u0002\u0002\u4258\u4259",
+ "\u0007Q\u0002\u0002\u4259\u425a\u0007T\u0002\u0002\u425a\u425b\u0007",
+ "C\u0002\u0002\u425b\u425c\u0007a\u0002\u0002\u425c\u425d\u0007E\u0002",
+ "\u0002\u425d\u425e\u0007N\u0002\u0002\u425e\u425f\u0007W\u0002\u0002",
+ "\u425f\u4260\u0007U\u0002\u0002\u4260\u4261\u0007V\u0002\u0002\u4261",
+ "\u4262\u0007G\u0002\u0002\u4262\u4263\u0007T\u0002\u0002\u4263\u4264",
+ "\u0007K\u0002\u0002\u4264\u4265\u0007P\u0002\u0002\u4265\u4266\u0007",
+ "I\u0002\u0002\u4266\u08f6\u0003\u0002\u0002\u0002\u4267\u4268\u0007",
+ "Q\u0002\u0002\u4268\u4269\u0007T\u0002\u0002\u4269\u426a\u0007C\u0002",
+ "\u0002\u426a\u426b\u0007F\u0002\u0002\u426b\u426c\u0007C\u0002\u0002",
+ "\u426c\u426d\u0007V\u0002\u0002\u426d\u426e\u0007C\u0002\u0002\u426e",
+ "\u08f8\u0003\u0002\u0002\u0002\u426f\u4270\u0007Q\u0002\u0002\u4270",
+ "\u4271\u0007T\u0002\u0002\u4271\u4272\u0007C\u0002\u0002\u4272\u4273",
+ "\u0007F\u0002\u0002\u4273\u4274\u0007G\u0002\u0002\u4274\u4275\u0007",
+ "D\u0002\u0002\u4275\u4276\u0007W\u0002\u0002\u4276\u4277\u0007I\u0002",
+ "\u0002\u4277\u08fa\u0003\u0002\u0002\u0002\u4278\u4279\u0007Q\u0002",
+ "\u0002\u4279\u427a\u0007T\u0002\u0002\u427a\u427b\u0007C\u0002\u0002",
+ "\u427b\u427c\u0007a\u0002\u0002\u427c\u427d\u0007F\u0002\u0002\u427d",
+ "\u427e\u0007U\u0002\u0002\u427e\u427f\u0007V\u0002\u0002\u427f\u4280",
+ "\u0007a\u0002\u0002\u4280\u4281\u0007C\u0002\u0002\u4281\u4282\u0007",
+ "H\u0002\u0002\u4282\u4283\u0007H\u0002\u0002\u4283\u4284\u0007G\u0002",
+ "\u0002\u4284\u4285\u0007E\u0002\u0002\u4285\u4286\u0007V\u0002\u0002",
+ "\u4286\u4287\u0007G\u0002\u0002\u4287\u4288\u0007F\u0002\u0002\u4288",
+ "\u08fc\u0003\u0002\u0002\u0002\u4289\u428a\u0007Q\u0002\u0002\u428a",
+ "\u428b\u0007T\u0002\u0002\u428b\u428c\u0007C\u0002\u0002\u428c\u428d",
+ "\u0007a\u0002\u0002\u428d\u428e\u0007F\u0002\u0002\u428e\u428f\u0007",
+ "U\u0002\u0002\u428f\u4290\u0007V\u0002\u0002\u4290\u4291\u0007a\u0002",
+ "\u0002\u4291\u4292\u0007E\u0002\u0002\u4292\u4293\u0007Q\u0002\u0002",
+ "\u4293\u4294\u0007P\u0002\u0002\u4294\u4295\u0007X\u0002\u0002\u4295",
+ "\u4296\u0007G\u0002\u0002\u4296\u4297\u0007T\u0002\u0002\u4297\u4298",
+ "\u0007V\u0002\u0002\u4298\u08fe\u0003\u0002\u0002\u0002\u4299\u429a",
+ "\u0007Q\u0002\u0002\u429a\u429b\u0007T\u0002\u0002\u429b\u429c\u0007",
+ "C\u0002\u0002\u429c\u429d\u0007a\u0002\u0002\u429d\u429e\u0007F\u0002",
+ "\u0002\u429e\u429f\u0007U\u0002\u0002\u429f\u42a0\u0007V\u0002\u0002",
+ "\u42a0\u42a1\u0007a\u0002\u0002\u42a1\u42a2\u0007G\u0002\u0002\u42a2",
+ "\u42a3\u0007T\u0002\u0002\u42a3\u42a4\u0007T\u0002\u0002\u42a4\u42a5",
+ "\u0007Q\u0002\u0002\u42a5\u42a6\u0007T\u0002\u0002\u42a6\u0900\u0003",
+ "\u0002\u0002\u0002\u42a7\u42a8\u0007Q\u0002\u0002\u42a8\u42a9\u0007",
+ "T\u0002\u0002\u42a9\u42aa\u0007C\u0002\u0002\u42aa\u42ab\u0007a\u0002",
+ "\u0002\u42ab\u42ac\u0007I\u0002\u0002\u42ac\u42ad\u0007G\u0002\u0002",
+ "\u42ad\u42ae\u0007V\u0002\u0002\u42ae\u42af\u0007a\u0002\u0002\u42af",
+ "\u42b0\u0007C\u0002\u0002\u42b0\u42b1\u0007E\u0002\u0002\u42b1\u42b2",
+ "\u0007N\u0002\u0002\u42b2\u42b3\u0007K\u0002\u0002\u42b3\u42b4\u0007",
+ "F\u0002\u0002\u42b4\u42b5\u0007U\u0002\u0002\u42b5\u0902\u0003\u0002",
+ "\u0002\u0002\u42b6\u42b7\u0007Q\u0002\u0002\u42b7\u42b8\u0007T\u0002",
+ "\u0002\u42b8\u42b9\u0007C\u0002\u0002\u42b9\u42ba\u0007a\u0002\u0002",
+ "\u42ba\u42bb\u0007I\u0002\u0002\u42bb\u42bc\u0007G\u0002\u0002\u42bc",
+ "\u42bd\u0007V\u0002\u0002\u42bd\u42be\u0007a\u0002\u0002\u42be\u42bf",
+ "\u0007R\u0002\u0002\u42bf\u42c0\u0007T\u0002\u0002\u42c0\u42c1\u0007",
+ "K\u0002\u0002\u42c1\u42c2\u0007X\u0002\u0002\u42c2\u42c3\u0007K\u0002",
+ "\u0002\u42c3\u42c4\u0007N\u0002\u0002\u42c4\u42c5\u0007G\u0002\u0002",
+ "\u42c5\u42c6\u0007I\u0002\u0002\u42c6\u42c7\u0007G\u0002\u0002\u42c7",
+ "\u42c8\u0007U\u0002\u0002\u42c8\u0904\u0003\u0002\u0002\u0002\u42c9",
+ "\u42ca\u0007Q\u0002\u0002\u42ca\u42cb\u0007T\u0002\u0002\u42cb\u42cc",
+ "\u0007C\u0002\u0002\u42cc\u42cd\u0007a\u0002\u0002\u42cd\u42ce\u0007",
+ "J\u0002\u0002\u42ce\u42cf\u0007C\u0002\u0002\u42cf\u42d0\u0007U\u0002",
+ "\u0002\u42d0\u42d1\u0007J\u0002\u0002\u42d1\u0906\u0003\u0002\u0002",
+ "\u0002\u42d2\u42d3\u0007Q\u0002\u0002\u42d3\u42d4\u0007T\u0002\u0002",
+ "\u42d4\u42d5\u0007C\u0002\u0002\u42d5\u42d6\u0007a\u0002\u0002\u42d6",
+ "\u42d7\u0007K\u0002\u0002\u42d7\u42d8\u0007P\u0002\u0002\u42d8\u42d9",
+ "\u0007X\u0002\u0002\u42d9\u42da\u0007Q\u0002\u0002\u42da\u42db\u0007",
+ "M\u0002\u0002\u42db\u42dc\u0007K\u0002\u0002\u42dc\u42dd\u0007P\u0002",
+ "\u0002\u42dd\u42de\u0007I\u0002\u0002\u42de\u42df\u0007a\u0002\u0002",
+ "\u42df\u42e0\u0007W\u0002\u0002\u42e0\u42e1\u0007U\u0002\u0002\u42e1",
+ "\u42e2\u0007G\u0002\u0002\u42e2\u42e3\u0007T\u0002\u0002\u42e3\u42e4",
+ "\u0007K\u0002\u0002\u42e4\u42e5\u0007F\u0002\u0002\u42e5\u0908\u0003",
+ "\u0002\u0002\u0002\u42e6\u42e7\u0007Q\u0002\u0002\u42e7\u42e8\u0007",
+ "T\u0002\u0002\u42e8\u42e9\u0007C\u0002\u0002\u42e9\u42ea\u0007a\u0002",
+ "\u0002\u42ea\u42eb\u0007K\u0002\u0002\u42eb\u42ec\u0007P\u0002\u0002",
+ "\u42ec\u42ed\u0007X\u0002\u0002\u42ed\u42ee\u0007Q\u0002\u0002\u42ee",
+ "\u42ef\u0007M\u0002\u0002\u42ef\u42f0\u0007K\u0002\u0002\u42f0\u42f1",
+ "\u0007P\u0002\u0002\u42f1\u42f2\u0007I\u0002\u0002\u42f2\u42f3\u0007",
+ "a\u0002\u0002\u42f3\u42f4\u0007W\u0002\u0002\u42f4\u42f5\u0007U\u0002",
+ "\u0002\u42f5\u42f6\u0007G\u0002\u0002\u42f6\u42f7\u0007T\u0002\u0002",
+ "\u42f7\u090a\u0003\u0002\u0002\u0002\u42f8\u42f9\u0007Q\u0002\u0002",
+ "\u42f9\u42fa\u0007T\u0002\u0002\u42fa\u42fb\u0007C\u0002\u0002\u42fb",
+ "\u42fc\u0007a\u0002\u0002\u42fc\u42fd\u0007K\u0002\u0002\u42fd\u42fe",
+ "\u0007P\u0002\u0002\u42fe\u42ff\u0007X\u0002\u0002\u42ff\u4300\u0007",
+ "Q\u0002\u0002\u4300\u4301\u0007M\u0002\u0002\u4301\u4302\u0007K\u0002",
+ "\u0002\u4302\u4303\u0007P\u0002\u0002\u4303\u4304\u0007I\u0002\u0002",
+ "\u4304\u4305\u0007a\u0002\u0002\u4305\u4306\u0007Z\u0002\u0002\u4306",
+ "\u4307\u0007U\u0002\u0002\u4307\u4308\u0007a\u0002\u0002\u4308\u4309",
+ "\u0007W\u0002\u0002\u4309\u430a\u0007U\u0002\u0002\u430a\u430b\u0007",
+ "G\u0002\u0002\u430b\u430c\u0007T\u0002\u0002\u430c\u430d\u0007a\u0002",
+ "\u0002\u430d\u430e\u0007I\u0002\u0002\u430e\u430f\u0007W\u0002\u0002",
+ "\u430f\u4310\u0007K\u0002\u0002\u4310\u4311\u0007F\u0002\u0002\u4311",
+ "\u090c\u0003\u0002\u0002\u0002\u4312\u4313\u0007Q\u0002\u0002\u4313",
+ "\u4314\u0007T\u0002\u0002\u4314\u4315\u0007C\u0002\u0002\u4315\u4316",
+ "\u0007a\u0002\u0002\u4316\u4317\u0007K\u0002\u0002\u4317\u4318\u0007",
+ "P\u0002\u0002\u4318\u4319\u0007X\u0002\u0002\u4319\u431a\u0007Q\u0002",
+ "\u0002\u431a\u431b\u0007M\u0002\u0002\u431b\u431c\u0007K\u0002\u0002",
+ "\u431c\u431d\u0007P\u0002\u0002\u431d\u431e\u0007I\u0002\u0002\u431e",
+ "\u431f\u0007a\u0002\u0002\u431f\u4320\u0007Z\u0002\u0002\u4320\u4321",
+ "\u0007U\u0002\u0002\u4321\u4322\u0007a\u0002\u0002\u4322\u4323\u0007",
+ "W\u0002\u0002\u4323\u4324\u0007U\u0002\u0002\u4324\u4325\u0007G\u0002",
+ "\u0002\u4325\u4326\u0007T\u0002\u0002\u4326\u090e\u0003\u0002\u0002",
+ "\u0002\u4327\u4328\u0007Q\u0002\u0002\u4328\u4329\u0007T\u0002\u0002",
+ "\u4329\u432a\u0007C\u0002\u0002\u432a\u432b\u0007a\u0002\u0002\u432b",
+ "\u432c\u0007T\u0002\u0002\u432c\u432d\u0007C\u0002\u0002\u432d\u432e",
+ "\u0007Y\u0002\u0002\u432e\u432f\u0007E\u0002\u0002\u432f\u4330\u0007",
+ "Q\u0002\u0002\u4330\u4331\u0007O\u0002\u0002\u4331\u4332\u0007R\u0002",
+ "\u0002\u4332\u4333\u0007C\u0002\u0002\u4333\u4334\u0007T\u0002\u0002",
+ "\u4334\u4335\u0007G\u0002\u0002\u4335\u0910\u0003\u0002\u0002\u0002",
+ "\u4336\u4337\u0007Q\u0002\u0002\u4337\u4338\u0007T\u0002\u0002\u4338",
+ "\u4339\u0007C\u0002\u0002\u4339\u433a\u0007a\u0002\u0002\u433a\u433b",
+ "\u0007T\u0002\u0002\u433b\u433c\u0007C\u0002\u0002\u433c\u433d\u0007",
+ "Y\u0002\u0002\u433d\u433e\u0007E\u0002\u0002\u433e\u433f\u0007Q\u0002",
+ "\u0002\u433f\u4340\u0007P\u0002\u0002\u4340\u4341\u0007E\u0002\u0002",
+ "\u4341\u4342\u0007C\u0002\u0002\u4342\u4343\u0007V\u0002\u0002\u4343",
+ "\u0912\u0003\u0002\u0002\u0002\u4344\u4345\u0007Q\u0002\u0002\u4345",
+ "\u4346\u0007T\u0002\u0002\u4346\u4347\u0007C\u0002\u0002\u4347\u4348",
+ "\u0007a\u0002\u0002\u4348\u4349\u0007T\u0002\u0002\u4349\u434a\u0007",
+ "Q\u0002\u0002\u434a\u434b\u0007Y\u0002\u0002\u434b\u434c\u0007U\u0002",
+ "\u0002\u434c\u434d\u0007E\u0002\u0002\u434d\u434e\u0007P\u0002\u0002",
+ "\u434e\u0914\u0003\u0002\u0002\u0002\u434f\u4350\u0007Q\u0002\u0002",
+ "\u4350\u4351\u0007T\u0002\u0002\u4351\u4352\u0007C\u0002\u0002\u4352",
+ "\u4353\u0007a\u0002\u0002\u4353\u4354\u0007T\u0002\u0002\u4354\u4355",
+ "\u0007Q\u0002\u0002\u4355\u4356\u0007Y\u0002\u0002\u4356\u4357\u0007",
+ "U\u0002\u0002\u4357\u4358\u0007E\u0002\u0002\u4358\u4359\u0007P\u0002",
+ "\u0002\u4359\u435a\u0007a\u0002\u0002\u435a\u435b\u0007T\u0002\u0002",
+ "\u435b\u435c\u0007C\u0002\u0002\u435c\u435d\u0007Y\u0002\u0002\u435d",
+ "\u0916\u0003\u0002\u0002\u0002\u435e\u435f\u0007Q\u0002\u0002\u435f",
+ "\u4360\u0007T\u0002\u0002\u4360\u4361\u0007C\u0002\u0002\u4361\u4362",
+ "\u0007a\u0002\u0002\u4362\u4363\u0007T\u0002\u0002\u4363\u4364\u0007",
+ "Q\u0002\u0002\u4364\u4365\u0007Y\u0002\u0002\u4365\u4366\u0007X\u0002",
+ "\u0002\u4366\u4367\u0007G\u0002\u0002\u4367\u4368\u0007T\u0002\u0002",
+ "\u4368\u4369\u0007U\u0002\u0002\u4369\u436a\u0007K\u0002\u0002\u436a",
+ "\u436b\u0007Q\u0002\u0002\u436b\u436c\u0007P\u0002\u0002\u436c\u0918",
+ "\u0003\u0002\u0002\u0002\u436d\u436e\u0007Q\u0002\u0002\u436e\u436f",
+ "\u0007T\u0002\u0002\u436f\u4370\u0007C\u0002\u0002\u4370\u4371\u0007",
+ "a\u0002\u0002\u4371\u4372\u0007V\u0002\u0002\u4372\u4373\u0007C\u0002",
+ "\u0002\u4373\u4374\u0007D\u0002\u0002\u4374\u4375\u0007X\u0002\u0002",
+ "\u4375\u4376\u0007G\u0002\u0002\u4376\u4377\u0007T\u0002\u0002\u4377",
+ "\u4378\u0007U\u0002\u0002\u4378\u4379\u0007K\u0002\u0002\u4379\u437a",
+ "\u0007Q\u0002\u0002\u437a\u437b\u0007P\u0002\u0002\u437b\u091a\u0003",
+ "\u0002\u0002\u0002\u437c\u437d\u0007Q\u0002\u0002\u437d\u437e\u0007",
+ "T\u0002\u0002\u437e\u437f\u0007C\u0002\u0002\u437f\u4380\u0007a\u0002",
+ "\u0002\u4380\u4381\u0007Y\u0002\u0002\u4381\u4382\u0007T\u0002\u0002",
+ "\u4382\u4383\u0007K\u0002\u0002\u4383\u4384\u0007V\u0002\u0002\u4384",
+ "\u4385\u0007G\u0002\u0002\u4385\u4386\u0007a\u0002\u0002\u4386\u4387",
+ "\u0007V\u0002\u0002\u4387\u4388\u0007K\u0002\u0002\u4388\u4389\u0007",
+ "O\u0002\u0002\u4389\u438a\u0007G\u0002\u0002\u438a\u091c\u0003\u0002",
+ "\u0002\u0002\u438b\u438c\u0007Q\u0002\u0002\u438c\u438d\u0007T\u0002",
+ "\u0002\u438d\u438e\u0007F\u0002\u0002\u438e\u438f\u0007G\u0002\u0002",
+ "\u438f\u4390\u0007T\u0002\u0002\u4390\u4391\u0007G\u0002\u0002\u4391",
+ "\u4392\u0007F\u0002\u0002\u4392\u091e\u0003\u0002\u0002\u0002\u4393",
+ "\u4394\u0007Q\u0002\u0002\u4394\u4395\u0007T\u0002\u0002\u4395\u4396",
+ "\u0007F\u0002\u0002\u4396\u4397\u0007G\u0002\u0002\u4397\u4398\u0007",
+ "T\u0002\u0002\u4398\u4399\u0007G\u0002\u0002\u4399\u439a\u0007F\u0002",
+ "\u0002\u439a\u439b\u0007a\u0002\u0002\u439b\u439c\u0007R\u0002\u0002",
+ "\u439c\u439d\u0007T\u0002\u0002\u439d\u439e\u0007G\u0002\u0002\u439e",
+ "\u439f\u0007F\u0002\u0002\u439f\u43a0\u0007K\u0002\u0002\u43a0\u43a1",
+ "\u0007E\u0002\u0002\u43a1\u43a2\u0007C\u0002\u0002\u43a2\u43a3\u0007",
+ "V\u0002\u0002\u43a3\u43a4\u0007G\u0002\u0002\u43a4\u43a5\u0007U\u0002",
+ "\u0002\u43a5\u0920\u0003\u0002\u0002\u0002\u43a6\u43a7\u0007Q\u0002",
+ "\u0002\u43a7\u43a8\u0007T\u0002\u0002\u43a8\u43a9\u0007F\u0002\u0002",
+ "\u43a9\u43aa\u0007G\u0002\u0002\u43aa\u43ab\u0007T\u0002\u0002\u43ab",
+ "\u0922\u0003\u0002\u0002\u0002\u43ac\u43ad\u0007Q\u0002\u0002\u43ad",
+ "\u43ae\u0007T\u0002\u0002\u43ae\u43af\u0007F\u0002\u0002\u43af\u43b0",
+ "\u0007K\u0002\u0002\u43b0\u43b1\u0007P\u0002\u0002\u43b1\u43b2\u0007",
+ "C\u0002\u0002\u43b2\u43b3\u0007N\u0002\u0002\u43b3\u43b4\u0007K\u0002",
+ "\u0002\u43b4\u43b5\u0007V\u0002\u0002\u43b5\u43b6\u0007[\u0002\u0002",
+ "\u43b6\u0924\u0003\u0002\u0002\u0002\u43b7\u43b8\u0007Q\u0002\u0002",
+ "\u43b8\u43b9\u0007T\u0002\u0002\u43b9\u43ba\u0007a\u0002\u0002\u43ba",
+ "\u43bb\u0007G\u0002\u0002\u43bb\u43bc\u0007Z\u0002\u0002\u43bc\u43bd",
+ "\u0007R\u0002\u0002\u43bd\u43be\u0007C\u0002\u0002\u43be\u43bf\u0007",
+ "P\u0002\u0002\u43bf\u43c0\u0007F\u0002\u0002\u43c0\u0926\u0003\u0002",
+ "\u0002\u0002\u43c1\u43c2\u0007Q\u0002\u0002\u43c2\u43c3\u0007T\u0002",
+ "\u0002\u43c3\u43c4\u0007I\u0002\u0002\u43c4\u43c5\u0007C\u0002\u0002",
+ "\u43c5\u43c6\u0007P\u0002\u0002\u43c6\u43c7\u0007K\u0002\u0002\u43c7",
+ "\u43c8\u0007\\\u0002\u0002\u43c8\u43c9\u0007C\u0002\u0002\u43c9\u43ca",
+ "\u0007V\u0002\u0002\u43ca\u43cb\u0007K\u0002\u0002\u43cb\u43cc\u0007",
+ "Q\u0002\u0002\u43cc\u43cd\u0007P\u0002\u0002\u43cd\u0928\u0003\u0002",
+ "\u0002\u0002\u43ce\u43cf\u0007Q\u0002\u0002\u43cf\u43d0\u0007T\u0002",
+ "\u0002\u43d0\u092a\u0003\u0002\u0002\u0002\u43d1\u43d2\u0007Q\u0002",
+ "\u0002\u43d2\u43d3\u0007T\u0002\u0002\u43d3\u43d4\u0007a\u0002\u0002",
+ "\u43d4\u43d5\u0007R\u0002\u0002\u43d5\u43d6\u0007T\u0002\u0002\u43d6",
+ "\u43d7\u0007G\u0002\u0002\u43d7\u43d8\u0007F\u0002\u0002\u43d8\u43d9",
+ "\u0007K\u0002\u0002\u43d9\u43da\u0007E\u0002\u0002\u43da\u43db\u0007",
+ "C\u0002\u0002\u43db\u43dc\u0007V\u0002\u0002\u43dc\u43dd\u0007G\u0002",
+ "\u0002\u43dd\u43de\u0007U\u0002\u0002\u43de\u092c\u0003\u0002\u0002",
+ "\u0002\u43df\u43e0\u0007Q\u0002\u0002\u43e0\u43e1\u0007U\u0002\u0002",
+ "\u43e1\u43e2\u0007G\u0002\u0002\u43e2\u43e3\u0007T\u0002\u0002\u43e3",
+ "\u43e4\u0007T\u0002\u0002\u43e4\u43e5\u0007Q\u0002\u0002\u43e5\u43e6",
+ "\u0007T\u0002\u0002\u43e6\u092e\u0003\u0002\u0002\u0002\u43e7\u43e8",
+ "\u0007Q\u0002\u0002\u43e8\u43e9\u0007V\u0002\u0002\u43e9\u43ea\u0007",
+ "J\u0002\u0002\u43ea\u43eb\u0007G\u0002\u0002\u43eb\u43ec\u0007T\u0002",
+ "\u0002\u43ec\u0930\u0003\u0002\u0002\u0002\u43ed\u43ee\u0007Q\u0002",
+ "\u0002\u43ee\u43ef\u0007W\u0002\u0002\u43ef\u43f0\u0007V\u0002\u0002",
+ "\u43f0\u43f1\u0007G\u0002\u0002\u43f1\u43f2\u0007T\u0002\u0002\u43f2",
+ "\u43f3\u0007a\u0002\u0002\u43f3\u43f4\u0007L\u0002\u0002\u43f4\u43f5",
+ "\u0007Q\u0002\u0002\u43f5\u43f6\u0007K\u0002\u0002\u43f6\u43f7\u0007",
+ "P\u0002\u0002\u43f7\u43f8\u0007a\u0002\u0002\u43f8\u43f9\u0007V\u0002",
+ "\u0002\u43f9\u43fa\u0007Q\u0002\u0002\u43fa\u43fb\u0007a\u0002\u0002",
+ "\u43fb\u43fc\u0007C\u0002\u0002\u43fc\u43fd\u0007P\u0002\u0002\u43fd",
+ "\u43fe\u0007V\u0002\u0002\u43fe\u43ff\u0007K\u0002\u0002\u43ff\u0932",
+ "\u0003\u0002\u0002\u0002\u4400\u4401\u0007Q\u0002\u0002\u4401\u4402",
+ "\u0007W\u0002\u0002\u4402\u4403\u0007V\u0002\u0002\u4403\u4404\u0007",
+ "G\u0002\u0002\u4404\u4405\u0007T\u0002\u0002\u4405\u4406\u0007a\u0002",
+ "\u0002\u4406\u4407\u0007L\u0002\u0002\u4407\u4408\u0007Q\u0002\u0002",
+ "\u4408\u4409\u0007K\u0002\u0002\u4409\u440a\u0007P\u0002\u0002\u440a",
+ "\u440b\u0007a\u0002\u0002\u440b\u440c\u0007V\u0002\u0002\u440c\u440d",
+ "\u0007Q\u0002\u0002\u440d\u440e\u0007a\u0002\u0002\u440e\u440f\u0007",
+ "K\u0002\u0002\u440f\u4410\u0007P\u0002\u0002\u4410\u4411\u0007P\u0002",
+ "\u0002\u4411\u4412\u0007G\u0002\u0002\u4412\u4413\u0007T\u0002\u0002",
+ "\u4413\u0934\u0003\u0002\u0002\u0002\u4414\u4415\u0007Q\u0002\u0002",
+ "\u4415\u4416\u0007W\u0002\u0002\u4416\u4417\u0007V\u0002\u0002\u4417",
+ "\u4418\u0007G\u0002\u0002\u4418\u4419\u0007T\u0002\u0002\u4419\u0936",
+ "\u0003\u0002\u0002\u0002\u441a\u441b\u0007Q\u0002\u0002\u441b\u441c",
+ "\u0007W\u0002\u0002\u441c\u441d\u0007V\u0002\u0002\u441d\u441e\u0007",
+ "N\u0002\u0002\u441e\u441f\u0007K\u0002\u0002\u441f\u4420\u0007P\u0002",
+ "\u0002\u4420\u4421\u0007G\u0002\u0002\u4421\u4422\u0007a\u0002\u0002",
+ "\u4422\u4423\u0007N\u0002\u0002\u4423\u4424\u0007G\u0002\u0002\u4424",
+ "\u4425\u0007C\u0002\u0002\u4425\u4426\u0007H\u0002\u0002\u4426\u0938",
+ "\u0003\u0002\u0002\u0002\u4427\u4428\u0007Q\u0002\u0002\u4428\u4429",
+ "\u0007W\u0002\u0002\u4429\u442a\u0007V\u0002\u0002\u442a\u442b\u0007",
+ "N\u0002\u0002\u442b\u442c\u0007K\u0002\u0002\u442c\u442d\u0007P\u0002",
+ "\u0002\u442d\u442e\u0007G\u0002\u0002\u442e\u093a\u0003\u0002\u0002",
+ "\u0002\u442f\u4430\u0007Q\u0002\u0002\u4430\u4431\u0007W\u0002\u0002",
+ "\u4431\u4432\u0007V\u0002\u0002\u4432\u4433\u0007a\u0002\u0002\u4433",
+ "\u4434\u0007Q\u0002\u0002\u4434\u4435\u0007H\u0002\u0002\u4435\u4436",
+ "\u0007a\u0002\u0002\u4436\u4437\u0007N\u0002\u0002\u4437\u4438\u0007",
+ "K\u0002\u0002\u4438\u4439\u0007P\u0002\u0002\u4439\u443a\u0007G\u0002",
+ "\u0002\u443a\u093c\u0003\u0002\u0002\u0002\u443b\u443c\u0007Q\u0002",
+ "\u0002\u443c\u443d\u0007W\u0002\u0002\u443d\u443e\u0007V\u0002\u0002",
+ "\u443e\u093e\u0003\u0002\u0002\u0002\u443f\u4440\u0007Q\u0002\u0002",
+ "\u4440\u4441\u0007X\u0002\u0002\u4441\u4442\u0007G\u0002\u0002\u4442",
+ "\u4443\u0007T\u0002\u0002\u4443\u4444\u0007H\u0002\u0002\u4444\u4445",
+ "\u0007N\u0002\u0002\u4445\u4446\u0007Q\u0002\u0002\u4446\u4447\u0007",
+ "Y\u0002\u0002\u4447\u4448\u0007a\u0002\u0002\u4448\u4449\u0007P\u0002",
+ "\u0002\u4449\u444a\u0007Q\u0002\u0002\u444a\u444b\u0007O\u0002\u0002",
+ "\u444b\u444c\u0007Q\u0002\u0002\u444c\u444d\u0007X\u0002\u0002\u444d",
+ "\u444e\u0007G\u0002\u0002\u444e\u0940\u0003\u0002\u0002\u0002\u444f",
+ "\u4450\u0007Q\u0002\u0002\u4450\u4451\u0007X\u0002\u0002\u4451\u4452",
+ "\u0007G\u0002\u0002\u4452\u4453\u0007T\u0002\u0002\u4453\u4454\u0007",
+ "H\u0002\u0002\u4454\u4455\u0007N\u0002\u0002\u4455\u4456\u0007Q\u0002",
+ "\u0002\u4456\u4457\u0007Y\u0002\u0002\u4457\u0942\u0003\u0002\u0002",
+ "\u0002\u4458\u4459\u0007Q\u0002\u0002\u4459\u445a\u0007X\u0002\u0002",
+ "\u445a\u445b\u0007G\u0002\u0002\u445b\u445c\u0007T\u0002\u0002\u445c",
+ "\u445d\u0007N\u0002\u0002\u445d\u445e\u0007C\u0002\u0002\u445e\u445f",
+ "\u0007R\u0002\u0002\u445f\u4460\u0007U\u0002\u0002\u4460\u0944\u0003",
+ "\u0002\u0002\u0002\u4461\u4462\u0007Q\u0002\u0002\u4462\u4463\u0007",
+ "X\u0002\u0002\u4463\u4464\u0007G\u0002\u0002\u4464\u4465\u0007T\u0002",
+ "\u0002\u4465\u0946\u0003\u0002\u0002\u0002\u4466\u4467\u0007Q\u0002",
+ "\u0002\u4467\u4468\u0007X\u0002\u0002\u4468\u4469\u0007G\u0002\u0002",
+ "\u4469\u446a\u0007T\u0002\u0002\u446a\u446b\u0007T\u0002\u0002\u446b",
+ "\u446c\u0007K\u0002\u0002\u446c\u446d\u0007F\u0002\u0002\u446d\u446e",
+ "\u0007K\u0002\u0002\u446e\u446f\u0007P\u0002\u0002\u446f\u4470\u0007",
+ "I\u0002\u0002\u4470\u0948\u0003\u0002\u0002\u0002\u4471\u4472\u0007",
+ "Q\u0002\u0002\u4472\u4473\u0007Y\u0002\u0002\u4473\u4474\u0007P\u0002",
+ "\u0002\u4474\u4475\u0007G\u0002\u0002\u4475\u4476\u0007T\u0002\u0002",
+ "\u4476\u094a\u0003\u0002\u0002\u0002\u4477\u4478\u0007Q\u0002\u0002",
+ "\u4478\u4479\u0007Y\u0002\u0002\u4479\u447a\u0007P\u0002\u0002\u447a",
+ "\u447b\u0007G\u0002\u0002\u447b\u447c\u0007T\u0002\u0002\u447c\u447d",
+ "\u0007U\u0002\u0002\u447d\u447e\u0007J\u0002\u0002\u447e\u447f\u0007",
+ "K\u0002\u0002\u447f\u4480\u0007R\u0002\u0002\u4480\u094c\u0003\u0002",
+ "\u0002\u0002\u4481\u4482\u0007Q\u0002\u0002\u4482\u4483\u0007Y\u0002",
+ "\u0002\u4483\u4484\u0007P\u0002\u0002\u4484\u094e\u0003\u0002\u0002",
+ "\u0002\u4485\u4486\u0007R\u0002\u0002\u4486\u4487\u0007C\u0002\u0002",
+ "\u4487\u4488\u0007E\u0002\u0002\u4488\u4489\u0007M\u0002\u0002\u4489",
+ "\u448a\u0007C\u0002\u0002\u448a\u448b\u0007I\u0002\u0002\u448b\u448c",
+ "\u0007G\u0002\u0002\u448c\u0950\u0003\u0002\u0002\u0002\u448d\u448e",
+ "\u0007R\u0002\u0002\u448e\u448f\u0007C\u0002\u0002\u448f\u4490\u0007",
+ "E\u0002\u0002\u4490\u4491\u0007M\u0002\u0002\u4491\u4492\u0007C\u0002",
+ "\u0002\u4492\u4493\u0007I\u0002\u0002\u4493\u4494\u0007G\u0002\u0002",
+ "\u4494\u4495\u0007U\u0002\u0002\u4495\u0952\u0003\u0002\u0002\u0002",
+ "\u4496\u4497\u0007R\u0002\u0002\u4497\u4498\u0007C\u0002\u0002\u4498",
+ "\u4499\u0007T\u0002\u0002\u4499\u449a\u0007C\u0002\u0002\u449a\u449b",
+ "\u0007N\u0002\u0002\u449b\u449c\u0007N\u0002\u0002\u449c\u449d\u0007",
+ "G\u0002\u0002\u449d\u449e\u0007N\u0002\u0002\u449e\u449f\u0007a\u0002",
+ "\u0002\u449f\u44a0\u0007G\u0002\u0002\u44a0\u44a1\u0007P\u0002\u0002",
+ "\u44a1\u44a2\u0007C\u0002\u0002\u44a2\u44a3\u0007D\u0002\u0002\u44a3",
+ "\u44a4\u0007N\u0002\u0002\u44a4\u44a5\u0007G\u0002\u0002\u44a5\u0954",
+ "\u0003\u0002\u0002\u0002\u44a6\u44a7\u0007R\u0002\u0002\u44a7\u44a8",
+ "\u0007C\u0002\u0002\u44a8\u44a9\u0007T\u0002\u0002\u44a9\u44aa\u0007",
+ "C\u0002\u0002\u44aa\u44ab\u0007N\u0002\u0002\u44ab\u44ac\u0007N\u0002",
+ "\u0002\u44ac\u44ad\u0007G\u0002\u0002\u44ad\u44ae\u0007N\u0002\u0002",
+ "\u44ae\u44af\u0007a\u0002\u0002\u44af\u44b0\u0007K\u0002\u0002\u44b0",
+ "\u44b1\u0007P\u0002\u0002\u44b1\u44b2\u0007F\u0002\u0002\u44b2\u44b3",
+ "\u0007G\u0002\u0002\u44b3\u44b4\u0007Z\u0002\u0002\u44b4\u0956\u0003",
+ "\u0002\u0002\u0002\u44b5\u44b6\u0007R\u0002\u0002\u44b6\u44b7\u0007",
+ "C\u0002\u0002\u44b7\u44b8\u0007T\u0002\u0002\u44b8\u44b9\u0007C\u0002",
+ "\u0002\u44b9\u44ba\u0007N\u0002\u0002\u44ba\u44bb\u0007N\u0002\u0002",
+ "\u44bb\u44bc\u0007G\u0002\u0002\u44bc\u44bd\u0007N\u0002\u0002\u44bd",
+ "\u0958\u0003\u0002\u0002\u0002\u44be\u44bf\u0007R\u0002\u0002\u44bf",
+ "\u44c0\u0007C\u0002\u0002\u44c0\u44c1\u0007T\u0002\u0002\u44c1\u44c2",
+ "\u0007C\u0002\u0002\u44c2\u44c3\u0007O\u0002\u0002\u44c3\u44c4\u0007",
+ "G\u0002\u0002\u44c4\u44c5\u0007V\u0002\u0002\u44c5\u44c6\u0007G\u0002",
+ "\u0002\u44c6\u44c7\u0007T\u0002\u0002\u44c7\u44c8\u0007H\u0002\u0002",
+ "\u44c8\u44c9\u0007K\u0002\u0002\u44c9\u44ca\u0007N\u0002\u0002\u44ca",
+ "\u44cb\u0007G\u0002\u0002\u44cb\u095a\u0003\u0002\u0002\u0002\u44cc",
+ "\u44cd\u0007R\u0002\u0002\u44cd\u44ce\u0007C\u0002\u0002\u44ce\u44cf",
+ "\u0007T\u0002\u0002\u44cf\u44d0\u0007C\u0002\u0002\u44d0\u44d1\u0007",
+ "O\u0002\u0002\u44d1\u44d2\u0007G\u0002\u0002\u44d2\u44d3\u0007V\u0002",
+ "\u0002\u44d3\u44d4\u0007G\u0002\u0002\u44d4\u44d5\u0007T\u0002\u0002",
+ "\u44d5\u44d6\u0007U\u0002\u0002\u44d6\u095c\u0003\u0002\u0002\u0002",
+ "\u44d7\u44d8\u0007R\u0002\u0002\u44d8\u44d9\u0007C\u0002\u0002\u44d9",
+ "\u44da\u0007T\u0002\u0002\u44da\u44db\u0007C\u0002\u0002\u44db\u44dc",
+ "\u0007O\u0002\u0002\u44dc\u095e\u0003\u0002\u0002\u0002\u44dd\u44de",
+ "\u0007R\u0002\u0002\u44de\u44df\u0007C\u0002\u0002\u44df\u44e0\u0007",
+ "T\u0002\u0002\u44e0\u44e1\u0007G\u0002\u0002\u44e1\u44e2\u0007P\u0002",
+ "\u0002\u44e2\u44e3\u0007V\u0002\u0002\u44e3\u0960\u0003\u0002\u0002",
+ "\u0002\u44e4\u44e5\u0007R\u0002\u0002\u44e5\u44e6\u0007C\u0002\u0002",
+ "\u44e6\u44e7\u0007T\u0002\u0002\u44e7\u44e8\u0007K\u0002\u0002\u44e8",
+ "\u44e9\u0007V\u0002\u0002\u44e9\u44ea\u0007[\u0002\u0002\u44ea\u0962",
+ "\u0003\u0002\u0002\u0002\u44eb\u44ec\u0007R\u0002\u0002\u44ec\u44ed",
+ "\u0007C\u0002\u0002\u44ed\u44ee\u0007T\u0002\u0002\u44ee\u44ef\u0007",
+ "V\u0002\u0002\u44ef\u44f0\u0007K\u0002\u0002\u44f0\u44f1\u0007C\u0002",
+ "\u0002\u44f1\u44f2\u0007N\u0002\u0002\u44f2\u44f3\u0007a\u0002\u0002",
+ "\u44f3\u44f4\u0007L\u0002\u0002\u44f4\u44f5\u0007Q\u0002\u0002\u44f5",
+ "\u44f6\u0007K\u0002\u0002\u44f6\u44f7\u0007P\u0002\u0002\u44f7\u0964",
+ "\u0003\u0002\u0002\u0002\u44f8\u44f9\u0007R\u0002\u0002\u44f9\u44fa",
+ "\u0007C\u0002\u0002\u44fa\u44fb\u0007T\u0002\u0002\u44fb\u44fc\u0007",
+ "V\u0002\u0002\u44fc\u44fd\u0007K\u0002\u0002\u44fd\u44fe\u0007C\u0002",
+ "\u0002\u44fe\u44ff\u0007N\u0002\u0002\u44ff\u4500\u0007N\u0002\u0002",
+ "\u4500\u4501\u0007[\u0002\u0002\u4501\u0966\u0003\u0002\u0002\u0002",
+ "\u4502\u4503\u0007R\u0002\u0002\u4503\u4504\u0007C\u0002\u0002\u4504",
+ "\u4505\u0007T\u0002\u0002\u4505\u4506\u0007V\u0002\u0002\u4506\u4507",
+ "\u0007K\u0002\u0002\u4507\u4508\u0007C\u0002\u0002\u4508\u4509\u0007",
+ "N\u0002\u0002\u4509\u0968\u0003\u0002\u0002\u0002\u450a\u450b\u0007",
+ "R\u0002\u0002\u450b\u450c\u0007C\u0002\u0002\u450c\u450d\u0007T\u0002",
+ "\u0002\u450d\u450e\u0007V\u0002\u0002\u450e\u450f\u0007K\u0002\u0002",
+ "\u450f\u4510\u0007C\u0002\u0002\u4510\u4511\u0007N\u0002\u0002\u4511",
+ "\u4512\u0007a\u0002\u0002\u4512\u4513\u0007T\u0002\u0002\u4513\u4514",
+ "\u0007Q\u0002\u0002\u4514\u4515\u0007N\u0002\u0002\u4515\u4516\u0007",
+ "N\u0002\u0002\u4516\u4517\u0007W\u0002\u0002\u4517\u4518\u0007R\u0002",
+ "\u0002\u4518\u4519\u0007a\u0002\u0002\u4519\u451a\u0007R\u0002\u0002",
+ "\u451a\u451b\u0007W\u0002\u0002\u451b\u451c\u0007U\u0002\u0002\u451c",
+ "\u451d\u0007J\u0002\u0002\u451d\u451e\u0007F\u0002\u0002\u451e\u451f",
+ "\u0007Q\u0002\u0002\u451f\u4520\u0007Y\u0002\u0002\u4520\u4521\u0007",
+ "P\u0002\u0002\u4521\u096a\u0003\u0002\u0002\u0002\u4522\u4523\u0007",
+ "R\u0002\u0002\u4523\u4524\u0007C\u0002\u0002\u4524\u4525\u0007T\u0002",
+ "\u0002\u4525\u4526\u0007V\u0002\u0002\u4526\u4527\u0007K\u0002\u0002",
+ "\u4527\u4528\u0007V\u0002\u0002\u4528\u4529\u0007K\u0002\u0002\u4529",
+ "\u452a\u0007Q\u0002\u0002\u452a\u452b\u0007P\u0002\u0002\u452b\u452c",
+ "\u0007a\u0002\u0002\u452c\u452d\u0007J\u0002\u0002\u452d\u452e\u0007",
+ "C\u0002\u0002\u452e\u452f\u0007U\u0002\u0002\u452f\u4530\u0007J\u0002",
+ "\u0002\u4530\u096c\u0003\u0002\u0002\u0002\u4531\u4532\u0007R\u0002",
+ "\u0002\u4532\u4533\u0007C\u0002\u0002\u4533\u4534\u0007T\u0002\u0002",
+ "\u4534\u4535\u0007V\u0002\u0002\u4535\u4536\u0007K\u0002\u0002\u4536",
+ "\u4537\u0007V\u0002\u0002\u4537\u4538\u0007K\u0002\u0002\u4538\u4539",
+ "\u0007Q\u0002\u0002\u4539\u453a\u0007P\u0002\u0002\u453a\u453b\u0007",
+ "a\u0002\u0002\u453b\u453c\u0007N\u0002\u0002\u453c\u453d\u0007K\u0002",
+ "\u0002\u453d\u453e\u0007U\u0002\u0002\u453e\u453f\u0007V\u0002\u0002",
+ "\u453f\u096e\u0003\u0002\u0002\u0002\u4540\u4541\u0007R\u0002\u0002",
+ "\u4541\u4542\u0007C\u0002\u0002\u4542\u4543\u0007T\u0002\u0002\u4543",
+ "\u4544\u0007V\u0002\u0002\u4544\u4545\u0007K\u0002\u0002\u4545\u4546",
+ "\u0007V\u0002\u0002\u4546\u4547\u0007K\u0002\u0002\u4547\u4548\u0007",
+ "Q\u0002\u0002\u4548\u4549\u0007P\u0002\u0002\u4549\u0970\u0003\u0002",
+ "\u0002\u0002\u454a\u454b\u0007R\u0002\u0002\u454b\u454c\u0007C\u0002",
+ "\u0002\u454c\u454d\u0007T\u0002\u0002\u454d\u454e\u0007V\u0002\u0002",
+ "\u454e\u454f\u0007K\u0002\u0002\u454f\u4550\u0007V\u0002\u0002\u4550",
+ "\u4551\u0007K\u0002\u0002\u4551\u4552\u0007Q\u0002\u0002\u4552\u4553",
+ "\u0007P\u0002\u0002\u4553\u4554\u0007a\u0002\u0002\u4554\u4555\u0007",
+ "T\u0002\u0002\u4555\u4556\u0007C\u0002\u0002\u4556\u4557\u0007P\u0002",
+ "\u0002\u4557\u4558\u0007I\u0002\u0002\u4558\u4559\u0007G\u0002\u0002",
+ "\u4559\u0972\u0003\u0002\u0002\u0002\u455a\u455b\u0007R\u0002\u0002",
+ "\u455b\u455c\u0007C\u0002\u0002\u455c\u455d\u0007T\u0002\u0002\u455d",
+ "\u455e\u0007V\u0002\u0002\u455e\u455f\u0007K\u0002\u0002\u455f\u4560",
+ "\u0007V\u0002\u0002\u4560\u4561\u0007K\u0002\u0002\u4561\u4562\u0007",
+ "Q\u0002\u0002\u4562\u4563\u0007P\u0002\u0002\u4563\u4564\u0007U\u0002",
+ "\u0002\u4564\u0974\u0003\u0002\u0002\u0002\u4565\u4566\u0007R\u0002",
+ "\u0002\u4566\u4567\u0007C\u0002\u0002\u4567\u4568\u0007T\u0002\u0002",
+ "\u4568\u4569\u0007V\u0002\u0002\u4569\u456a\u0007&\u0002\u0002\u456a",
+ "\u456b\u0007P\u0002\u0002\u456b\u456c\u0007W\u0002\u0002\u456c\u456d",
+ "\u0007O\u0002\u0002\u456d\u456e\u0007&\u0002\u0002\u456e\u456f\u0007",
+ "K\u0002\u0002\u456f\u4570\u0007P\u0002\u0002\u4570\u4571\u0007U\u0002",
+ "\u0002\u4571\u4572\u0007V\u0002\u0002\u4572\u0976\u0003\u0002\u0002",
+ "\u0002\u4573\u4574\u0007R\u0002\u0002\u4574\u4575\u0007C\u0002\u0002",
+ "\u4575\u4576\u0007U\u0002\u0002\u4576\u4577\u0007U\u0002\u0002\u4577",
+ "\u4578\u0007K\u0002\u0002\u4578\u4579\u0007P\u0002\u0002\u4579\u457a",
+ "\u0007I\u0002\u0002\u457a\u0978\u0003\u0002\u0002\u0002\u457b\u457c",
+ "\u0007R\u0002\u0002\u457c\u457d\u0007C\u0002\u0002\u457d\u457e\u0007",
+ "U\u0002\u0002\u457e\u457f\u0007U\u0002\u0002\u457f\u4580\u0007Y\u0002",
+ "\u0002\u4580\u4581\u0007Q\u0002\u0002\u4581\u4582\u0007T\u0002\u0002",
+ "\u4582\u4583\u0007F\u0002\u0002\u4583\u4584\u0007a\u0002\u0002\u4584",
+ "\u4585\u0007I\u0002\u0002\u4585\u4586\u0007T\u0002\u0002\u4586\u4587",
+ "\u0007C\u0002\u0002\u4587\u4588\u0007E\u0002\u0002\u4588\u4589\u0007",
+ "G\u0002\u0002\u4589\u458a\u0007a\u0002\u0002\u458a\u458b\u0007V\u0002",
+ "\u0002\u458b\u458c\u0007K\u0002\u0002\u458c\u458d\u0007O\u0002\u0002",
+ "\u458d\u458e\u0007G\u0002\u0002\u458e\u097a\u0003\u0002\u0002\u0002",
+ "\u458f\u4590\u0007R\u0002\u0002\u4590\u4591\u0007C\u0002\u0002\u4591",
+ "\u4592\u0007U\u0002\u0002\u4592\u4593\u0007U\u0002\u0002\u4593\u4594",
+ "\u0007Y\u0002\u0002\u4594\u4595\u0007Q\u0002\u0002\u4595\u4596\u0007",
+ "T\u0002\u0002\u4596\u4597\u0007F\u0002\u0002\u4597\u4598\u0007a\u0002",
+ "\u0002\u4598\u4599\u0007N\u0002\u0002\u4599\u459a\u0007K\u0002\u0002",
+ "\u459a\u459b\u0007H\u0002\u0002\u459b\u459c\u0007G\u0002\u0002\u459c",
+ "\u459d\u0007a\u0002\u0002\u459d\u459e\u0007V\u0002\u0002\u459e\u459f",
+ "\u0007K\u0002\u0002\u459f\u45a0\u0007O\u0002\u0002\u45a0\u45a1\u0007",
+ "G\u0002\u0002\u45a1\u097c\u0003\u0002\u0002\u0002\u45a2\u45a3\u0007",
+ "R\u0002\u0002\u45a3\u45a4\u0007C\u0002\u0002\u45a4\u45a5\u0007U\u0002",
+ "\u0002\u45a5\u45a6\u0007U\u0002\u0002\u45a6\u45a7\u0007Y\u0002\u0002",
+ "\u45a7\u45a8\u0007Q\u0002\u0002\u45a8\u45a9\u0007T\u0002\u0002\u45a9",
+ "\u45aa\u0007F\u0002\u0002\u45aa\u45ab\u0007a\u0002\u0002\u45ab\u45ac",
+ "\u0007N\u0002\u0002\u45ac\u45ad\u0007Q\u0002\u0002\u45ad\u45ae\u0007",
+ "E\u0002\u0002\u45ae\u45af\u0007M\u0002\u0002\u45af\u45b0\u0007a\u0002",
+ "\u0002\u45b0\u45b1\u0007V\u0002\u0002\u45b1\u45b2\u0007K\u0002\u0002",
+ "\u45b2\u45b3\u0007O\u0002\u0002\u45b3\u45b4\u0007G\u0002\u0002\u45b4",
+ "\u097e\u0003\u0002\u0002\u0002\u45b5\u45b6\u0007R\u0002\u0002\u45b6",
+ "\u45b7\u0007C\u0002\u0002\u45b7\u45b8\u0007U\u0002\u0002\u45b8\u45b9",
+ "\u0007U\u0002\u0002\u45b9\u45ba\u0007Y\u0002\u0002\u45ba\u45bb\u0007",
+ "Q\u0002\u0002\u45bb\u45bc\u0007T\u0002\u0002\u45bc\u45bd\u0007F\u0002",
+ "\u0002\u45bd\u0980\u0003\u0002\u0002\u0002\u45be\u45bf\u0007R\u0002",
+ "\u0002\u45bf\u45c0\u0007C\u0002\u0002\u45c0\u45c1\u0007U\u0002\u0002",
+ "\u45c1\u45c2\u0007U\u0002\u0002\u45c2\u45c3\u0007Y\u0002\u0002\u45c3",
+ "\u45c4\u0007Q\u0002\u0002\u45c4\u45c5\u0007T\u0002\u0002\u45c5\u45c6",
+ "\u0007F\u0002\u0002\u45c6\u45c7\u0007a\u0002\u0002\u45c7\u45c8\u0007",
+ "T\u0002\u0002\u45c8\u45c9\u0007G\u0002\u0002\u45c9\u45ca\u0007W\u0002",
+ "\u0002\u45ca\u45cb\u0007U\u0002\u0002\u45cb\u45cc\u0007G\u0002\u0002",
+ "\u45cc\u45cd\u0007a\u0002\u0002\u45cd\u45ce\u0007O\u0002\u0002\u45ce",
+ "\u45cf\u0007C\u0002\u0002\u45cf\u45d0\u0007Z\u0002\u0002\u45d0\u0982",
+ "\u0003\u0002\u0002\u0002\u45d1\u45d2\u0007R\u0002\u0002\u45d2\u45d3",
+ "\u0007C\u0002\u0002\u45d3\u45d4\u0007U\u0002\u0002\u45d4\u45d5\u0007",
+ "U\u0002\u0002\u45d5\u45d6\u0007Y\u0002\u0002\u45d6\u45d7\u0007Q\u0002",
+ "\u0002\u45d7\u45d8\u0007T\u0002\u0002\u45d8\u45d9\u0007F\u0002\u0002",
+ "\u45d9\u45da\u0007a\u0002\u0002\u45da\u45db\u0007T\u0002\u0002\u45db",
+ "\u45dc\u0007G\u0002\u0002\u45dc\u45dd\u0007W\u0002\u0002\u45dd\u45de",
+ "\u0007U\u0002\u0002\u45de\u45df\u0007G\u0002\u0002\u45df\u45e0\u0007",
+ "a\u0002\u0002\u45e0\u45e1\u0007V\u0002\u0002\u45e1\u45e2\u0007K\u0002",
+ "\u0002\u45e2\u45e3\u0007O\u0002\u0002\u45e3\u45e4\u0007G\u0002\u0002",
+ "\u45e4\u0984\u0003\u0002\u0002\u0002\u45e5\u45e6\u0007R\u0002\u0002",
+ "\u45e6\u45e7\u0007C\u0002\u0002\u45e7\u45e8\u0007U\u0002\u0002\u45e8",
+ "\u45e9\u0007U\u0002\u0002\u45e9\u45ea\u0007Y\u0002\u0002\u45ea\u45eb",
+ "\u0007Q\u0002\u0002\u45eb\u45ec\u0007T\u0002\u0002\u45ec\u45ed\u0007",
+ "F\u0002\u0002\u45ed\u45ee\u0007a\u0002\u0002\u45ee\u45ef\u0007X\u0002",
+ "\u0002\u45ef\u45f0\u0007G\u0002\u0002\u45f0\u45f1\u0007T\u0002\u0002",
+ "\u45f1\u45f2\u0007K\u0002\u0002\u45f2\u45f3\u0007H\u0002\u0002\u45f3",
+ "\u45f4\u0007[\u0002\u0002\u45f4\u45f5\u0007a\u0002\u0002\u45f5\u45f6",
+ "\u0007H\u0002\u0002\u45f6\u45f7\u0007W\u0002\u0002\u45f7\u45f8\u0007",
+ "P\u0002\u0002\u45f8\u45f9\u0007E\u0002\u0002\u45f9\u45fa\u0007V\u0002",
+ "\u0002\u45fa\u45fb\u0007K\u0002\u0002\u45fb\u45fc\u0007Q\u0002\u0002",
+ "\u45fc\u45fd\u0007P\u0002\u0002\u45fd\u0986\u0003\u0002\u0002\u0002",
+ "\u45fe\u45ff\u0007R\u0002\u0002\u45ff\u4600\u0007C\u0002\u0002\u4600",
+ "\u4601\u0007U\u0002\u0002\u4601\u4602\u0007V\u0002\u0002\u4602\u0988",
+ "\u0003\u0002\u0002\u0002\u4603\u4604\u0007R\u0002\u0002\u4604\u4605",
+ "\u0007C\u0002\u0002\u4605\u4606\u0007V\u0002\u0002\u4606\u4607\u0007",
+ "E\u0002\u0002\u4607\u4608\u0007J\u0002\u0002\u4608\u098a\u0003\u0002",
+ "\u0002\u0002\u4609\u460a\u0007R\u0002\u0002\u460a\u460b\u0007C\u0002",
+ "\u0002\u460b\u460c\u0007V\u0002\u0002\u460c\u460d\u0007J\u0002\u0002",
+ "\u460d\u098c\u0003\u0002\u0002\u0002\u460e\u460f\u0007R\u0002\u0002",
+ "\u460f\u4610\u0007C\u0002\u0002\u4610\u4611\u0007V\u0002\u0002\u4611",
+ "\u4612\u0007J\u0002\u0002\u4612\u4613\u0007a\u0002\u0002\u4613\u4614",
+ "\u0007R\u0002\u0002\u4614\u4615\u0007T\u0002\u0002\u4615\u4616\u0007",
+ "G\u0002\u0002\u4616\u4617\u0007H\u0002\u0002\u4617\u4618\u0007K\u0002",
+ "\u0002\u4618\u4619\u0007Z\u0002\u0002\u4619\u098e\u0003\u0002\u0002",
+ "\u0002\u461a\u461b\u0007R\u0002\u0002\u461b\u461c\u0007C\u0002\u0002",
+ "\u461c\u461d\u0007V\u0002\u0002\u461d\u461e\u0007J\u0002\u0002\u461e",
+ "\u461f\u0007U\u0002\u0002\u461f\u0990\u0003\u0002\u0002\u0002\u4620",
+ "\u4621\u0007R\u0002\u0002\u4621\u4622\u0007C\u0002\u0002\u4622\u4623",
+ "\u0007V\u0002\u0002\u4623\u4624\u0007V\u0002\u0002\u4624\u4625\u0007",
+ "G\u0002\u0002\u4625\u4626\u0007T\u0002\u0002\u4626\u4627\u0007P\u0002",
+ "\u0002\u4627\u0992\u0003\u0002\u0002\u0002\u4628\u4629\u0007R\u0002",
+ "\u0002\u4629\u462a\u0007D\u0002\u0002\u462a\u462b\u0007N\u0002\u0002",
+ "\u462b\u462c\u0007a\u0002\u0002\u462c\u462d\u0007J\u0002\u0002\u462d",
+ "\u462e\u0007U\u0002\u0002\u462e\u462f\u0007a\u0002\u0002\u462f\u4630",
+ "\u0007D\u0002\u0002\u4630\u4631\u0007G\u0002\u0002\u4631\u4632\u0007",
+ "I\u0002\u0002\u4632\u4633\u0007K\u0002\u0002\u4633\u4634\u0007P\u0002",
+ "\u0002\u4634\u0994\u0003\u0002\u0002\u0002\u4635\u4636\u0007R\u0002",
+ "\u0002\u4636\u4637\u0007D\u0002\u0002\u4637\u4638\u0007N\u0002\u0002",
+ "\u4638\u4639\u0007a\u0002\u0002\u4639\u463a\u0007J\u0002\u0002\u463a",
+ "\u463b\u0007U\u0002\u0002\u463b\u463c\u0007a\u0002\u0002\u463c\u463d",
+ "\u0007G\u0002\u0002\u463d\u463e\u0007P\u0002\u0002\u463e\u463f\u0007",
+ "F\u0002\u0002\u463f\u0996\u0003\u0002\u0002\u0002\u4640\u4641\u0007",
+ "R\u0002\u0002\u4641\u4642\u0007E\u0002\u0002\u4642\u4643\u0007V\u0002",
+ "\u0002\u4643\u4644\u0007H\u0002\u0002\u4644\u4645\u0007T\u0002\u0002",
+ "\u4645\u4646\u0007G\u0002\u0002\u4646\u4647\u0007G\u0002\u0002\u4647",
+ "\u0998\u0003\u0002\u0002\u0002\u4648\u4649\u0007R\u0002\u0002\u4649",
+ "\u464a\u0007E\u0002\u0002\u464a\u464b\u0007V\u0002\u0002\u464b\u464c",
+ "\u0007K\u0002\u0002\u464c\u464d\u0007P\u0002\u0002\u464d\u464e\u0007",
+ "E\u0002\u0002\u464e\u464f\u0007T\u0002\u0002\u464f\u4650\u0007G\u0002",
+ "\u0002\u4650\u4651\u0007C\u0002\u0002\u4651\u4652\u0007U\u0002\u0002",
+ "\u4652\u4653\u0007G\u0002\u0002\u4653\u099a\u0003\u0002\u0002\u0002",
+ "\u4654\u4655\u0007R\u0002\u0002\u4655\u4656\u0007E\u0002\u0002\u4656",
+ "\u4657\u0007V\u0002\u0002\u4657\u4658\u0007V\u0002\u0002\u4658\u4659",
+ "\u0007J\u0002\u0002\u4659\u465a\u0007T\u0002\u0002\u465a\u465b\u0007",
+ "G\u0002\u0002\u465b\u465c\u0007U\u0002\u0002\u465c\u465d\u0007J\u0002",
+ "\u0002\u465d\u465e\u0007Q\u0002\u0002\u465e\u465f\u0007N\u0002\u0002",
+ "\u465f\u4660\u0007F\u0002\u0002\u4660\u099c\u0003\u0002\u0002\u0002",
+ "\u4661\u4662\u0007R\u0002\u0002\u4662\u4663\u0007E\u0002\u0002\u4663",
+ "\u4664\u0007V\u0002\u0002\u4664\u4665\u0007W\u0002\u0002\u4665\u4666",
+ "\u0007U\u0002\u0002\u4666\u4667\u0007G\u0002\u0002\u4667\u4668\u0007",
+ "F\u0002\u0002\u4668\u099e\u0003\u0002\u0002\u0002\u4669\u466a\u0007",
+ "R\u0002\u0002\u466a\u466b\u0007E\u0002\u0002\u466b\u466c\u0007V\u0002",
+ "\u0002\u466c\u466d\u0007X\u0002\u0002\u466d\u466e\u0007G\u0002\u0002",
+ "\u466e\u466f\u0007T\u0002\u0002\u466f\u4670\u0007U\u0002\u0002\u4670",
+ "\u4671\u0007K\u0002\u0002\u4671\u4672\u0007Q\u0002\u0002\u4672\u4673",
+ "\u0007P\u0002\u0002\u4673\u09a0\u0003\u0002\u0002\u0002\u4674\u4675",
+ "\u0007R\u0002\u0002\u4675\u4676\u0007G\u0002\u0002\u4676\u4677\u0007",
+ "P\u0002\u0002\u4677\u4678\u0007F\u0002\u0002\u4678\u4679\u0007K\u0002",
+ "\u0002\u4679\u467a\u0007P\u0002\u0002\u467a\u467b\u0007I\u0002\u0002",
+ "\u467b\u09a2\u0003\u0002\u0002\u0002\u467c\u4680\u0007\'\u0002\u0002",
+ "\u467d\u467f\u0005\u11b9\u08dd\u0002\u467e\u467d\u0003\u0002\u0002\u0002",
+ "\u467f\u4682\u0003\u0002\u0002\u0002\u4680\u467e\u0003\u0002\u0002\u0002",
+ "\u4680\u4681\u0003\u0002\u0002\u0002\u4681\u4683\u0003\u0002\u0002\u0002",
+ "\u4682\u4680\u0003\u0002\u0002\u0002\u4683\u4684\u0007H\u0002\u0002",
+ "\u4684\u4685\u0007Q\u0002\u0002\u4685\u4686\u0007W\u0002\u0002\u4686",
+ "\u4687\u0007P\u0002\u0002\u4687\u4688\u0007F\u0002\u0002\u4688\u09a4",
+ "\u0003\u0002\u0002\u0002\u4689\u468d\u0007\'\u0002\u0002\u468a\u468c",
+ "\u0005\u11b9\u08dd\u0002\u468b\u468a\u0003\u0002\u0002\u0002\u468c\u468f",
+ "\u0003\u0002\u0002\u0002\u468d\u468b\u0003\u0002\u0002\u0002\u468d\u468e",
+ "\u0003\u0002\u0002\u0002\u468e\u4690\u0003\u0002\u0002\u0002\u468f\u468d",
+ "\u0003\u0002\u0002\u0002\u4690\u4691\u0007K\u0002\u0002\u4691\u4692",
+ "\u0007U\u0002\u0002\u4692\u4693\u0007Q\u0002\u0002\u4693\u4694\u0007",
+ "R\u0002\u0002\u4694\u4695\u0007G\u0002\u0002\u4695\u4696\u0007P\u0002",
+ "\u0002\u4696\u09a6\u0003\u0002\u0002\u0002\u4697\u469b\u0007\'\u0002",
+ "\u0002\u4698\u469a\u0005\u11b9\u08dd\u0002\u4699\u4698\u0003\u0002\u0002",
+ "\u0002\u469a\u469d\u0003\u0002\u0002\u0002\u469b\u4699\u0003\u0002\u0002",
+ "\u0002\u469b\u469c\u0003\u0002\u0002\u0002\u469c\u469e\u0003\u0002\u0002",
+ "\u0002\u469d\u469b\u0003\u0002\u0002\u0002\u469e\u469f\u0007P\u0002",
+ "\u0002\u469f\u46a0\u0007Q\u0002\u0002\u46a0\u46a1\u0007V\u0002\u0002",
+ "\u46a1\u46a2\u0007H\u0002\u0002\u46a2\u46a3\u0007Q\u0002\u0002\u46a3",
+ "\u46a4\u0007W\u0002\u0002\u46a4\u46a5\u0007P\u0002\u0002\u46a5\u46a6",
+ "\u0007F\u0002\u0002\u46a6\u09a8\u0003\u0002\u0002\u0002\u46a7\u46a8",
+ "\u0007R\u0002\u0002\u46a8\u46a9\u0007G\u0002\u0002\u46a9\u46aa\u0007",
+ "T\u0002\u0002\u46aa\u46ab\u0007E\u0002\u0002\u46ab\u46ac\u0007G\u0002",
+ "\u0002\u46ac\u46ad\u0007P\u0002\u0002\u46ad\u46ae\u0007V\u0002\u0002",
+ "\u46ae\u09aa\u0003\u0002\u0002\u0002\u46af\u46b0\u0007R\u0002\u0002",
+ "\u46b0\u46b1\u0007G\u0002\u0002\u46b1\u46b2\u0007T\u0002\u0002\u46b2",
+ "\u46b3\u0007E\u0002\u0002\u46b3\u46b4\u0007G\u0002\u0002\u46b4\u46b5",
+ "\u0007P\u0002\u0002\u46b5\u46b6\u0007V\u0002\u0002\u46b6\u46b7\u0007",
+ "a\u0002\u0002\u46b7\u46b8\u0007T\u0002\u0002\u46b8\u46b9\u0007C\u0002",
+ "\u0002\u46b9\u46ba\u0007P\u0002\u0002\u46ba\u46bb\u0007M\u0002\u0002",
+ "\u46bb\u46bc\u0007O\u0002\u0002\u46bc\u09ac\u0003\u0002\u0002\u0002",
+ "\u46bd\u46c1\u0007\'\u0002\u0002\u46be\u46c0\u0005\u11b9\u08dd\u0002",
+ "\u46bf\u46be\u0003\u0002\u0002\u0002\u46c0\u46c3\u0003\u0002\u0002\u0002",
+ "\u46c1\u46bf\u0003\u0002\u0002\u0002\u46c1\u46c2\u0003\u0002\u0002\u0002",
+ "\u46c2\u46c4\u0003\u0002\u0002\u0002\u46c3\u46c1\u0003\u0002\u0002\u0002",
+ "\u46c4\u46c5\u0007T\u0002\u0002\u46c5\u46c6\u0007Q\u0002\u0002\u46c6",
+ "\u46c7\u0007Y\u0002\u0002\u46c7\u46c8\u0007E\u0002\u0002\u46c8\u46c9",
+ "\u0007Q\u0002\u0002\u46c9\u46ca\u0007W\u0002\u0002\u46ca\u46cb\u0007",
+ "P\u0002\u0002\u46cb\u46cc\u0007V\u0002\u0002\u46cc\u09ae\u0003\u0002",
+ "\u0002\u0002\u46cd\u46d1\u0007\'\u0002\u0002\u46ce\u46d0\u0005\u11b9",
+ "\u08dd\u0002\u46cf\u46ce\u0003\u0002\u0002\u0002\u46d0\u46d3\u0003\u0002",
+ "\u0002\u0002\u46d1\u46cf\u0003\u0002\u0002\u0002\u46d1\u46d2\u0003\u0002",
+ "\u0002\u0002\u46d2\u46d4\u0003\u0002\u0002\u0002\u46d3\u46d1\u0003\u0002",
+ "\u0002\u0002\u46d4\u46d5\u0007T\u0002\u0002\u46d5\u46d6\u0007Q\u0002",
+ "\u0002\u46d6\u46d7\u0007Y\u0002\u0002\u46d7\u46d8\u0007V\u0002\u0002",
+ "\u46d8\u46d9\u0007[\u0002\u0002\u46d9\u46da\u0007R\u0002\u0002\u46da",
+ "\u46db\u0007G\u0002\u0002\u46db\u09b0\u0003\u0002\u0002\u0002\u46dc",
+ "\u46e0\u0007\'\u0002\u0002\u46dd\u46df\u0005\u11b9\u08dd\u0002\u46de",
+ "\u46dd\u0003\u0002\u0002\u0002\u46df\u46e2\u0003\u0002\u0002\u0002\u46e0",
+ "\u46de\u0003\u0002\u0002\u0002\u46e0\u46e1\u0003\u0002\u0002\u0002\u46e1",
+ "\u46e3\u0003\u0002\u0002\u0002\u46e2\u46e0\u0003\u0002\u0002\u0002\u46e3",
+ "\u46e4\u0007V\u0002\u0002\u46e4\u46e5\u0007[\u0002\u0002\u46e5\u46e6",
+ "\u0007R\u0002\u0002\u46e6\u46e7\u0007G\u0002\u0002\u46e7\u09b2\u0003",
+ "\u0002\u0002\u0002\u46e8\u46e9\u0007R\u0002\u0002\u46e9\u46ea\u0007",
+ "G\u0002\u0002\u46ea\u46eb\u0007T\u0002\u0002\u46eb\u46ec\u0007H\u0002",
+ "\u0002\u46ec\u46ed\u0007Q\u0002\u0002\u46ed\u46ee\u0007T\u0002\u0002",
+ "\u46ee\u46ef\u0007O\u0002\u0002\u46ef\u46f0\u0007C\u0002\u0002\u46f0",
+ "\u46f1\u0007P\u0002\u0002\u46f1\u46f2\u0007E\u0002\u0002\u46f2\u46f3",
+ "\u0007G\u0002\u0002\u46f3\u09b4\u0003\u0002\u0002\u0002\u46f4\u46f5",
+ "\u0007R\u0002\u0002\u46f5\u46f6\u0007G\u0002\u0002\u46f6\u46f7\u0007",
+ "T\u0002\u0002\u46f7\u46f8\u0007K\u0002\u0002\u46f8\u46f9\u0007Q\u0002",
+ "\u0002\u46f9\u46fa\u0007F\u0002\u0002\u46fa\u09b6\u0003\u0002\u0002",
+ "\u0002\u46fb\u46fc\u0007R\u0002\u0002\u46fc\u46fd\u0007G\u0002\u0002",
+ "\u46fd\u46fe\u0007T\u0002\u0002\u46fe\u46ff\u0007O\u0002\u0002\u46ff",
+ "\u4700\u0007C\u0002\u0002\u4700\u4701\u0007P\u0002\u0002\u4701\u4702",
+ "\u0007G\u0002\u0002\u4702\u4703\u0007P\u0002\u0002\u4703\u4704\u0007",
+ "V\u0002\u0002\u4704\u09b8\u0003\u0002\u0002\u0002\u4705\u4706\u0007",
+ "R\u0002\u0002\u4706\u4707\u0007G\u0002\u0002\u4707\u4708\u0007T\u0002",
+ "\u0002\u4708\u4709\u0007O\u0002\u0002\u4709\u470a\u0007K\u0002\u0002",
+ "\u470a\u470b\u0007U\u0002\u0002\u470b\u470c\u0007U\u0002\u0002\u470c",
+ "\u470d\u0007K\u0002\u0002\u470d\u470e\u0007Q\u0002\u0002\u470e\u470f",
+ "\u0007P\u0002\u0002\u470f\u09ba\u0003\u0002\u0002\u0002\u4710\u4711",
+ "\u0007R\u0002\u0002\u4711\u4712\u0007G\u0002\u0002\u4712\u4713\u0007",
+ "T\u0002\u0002\u4713\u4714\u0007O\u0002\u0002\u4714\u4715\u0007W\u0002",
+ "\u0002\u4715\u4716\u0007V\u0002\u0002\u4716\u4717\u0007G\u0002\u0002",
+ "\u4717\u09bc\u0003\u0002\u0002\u0002\u4718\u4719\u0007R\u0002\u0002",
+ "\u4719\u471a\u0007G\u0002\u0002\u471a\u471b\u0007T\u0002\u0002\u471b",
+ "\u09be\u0003\u0002\u0002\u0002\u471c\u471d\u0007R\u0002\u0002\u471d",
+ "\u471e\u0007H\u0002\u0002\u471e\u471f\u0007K\u0002\u0002\u471f\u4720",
+ "\u0007N\u0002\u0002\u4720\u4721\u0007G\u0002\u0002\u4721\u09c0\u0003",
+ "\u0002\u0002\u0002\u4722\u4723\u0007R\u0002\u0002\u4723\u4724\u0007",
+ "J\u0002\u0002\u4724\u4725\u0007[\u0002\u0002\u4725\u4726\u0007U\u0002",
+ "\u0002\u4726\u4727\u0007K\u0002\u0002\u4727\u4728\u0007E\u0002\u0002",
+ "\u4728\u4729\u0007C\u0002\u0002\u4729\u472a\u0007N\u0002\u0002\u472a",
+ "\u09c2\u0003\u0002\u0002\u0002\u472b\u472c\u0007R\u0002\u0002\u472c",
+ "\u472d\u0007K\u0002\u0002\u472d\u472e\u0007M\u0002\u0002\u472e\u472f",
+ "\u0007G\u0002\u0002\u472f\u4730\u0007[\u0002\u0002\u4730\u09c4\u0003",
+ "\u0002\u0002\u0002\u4731\u4732\u0007R\u0002\u0002\u4732\u4733\u0007",
+ "K\u0002\u0002\u4733\u4734\u0007R\u0002\u0002\u4734\u4735\u0007G\u0002",
+ "\u0002\u4735\u4736\u0007N\u0002\u0002\u4736\u4737\u0007K\u0002\u0002",
+ "\u4737\u4738\u0007P\u0002\u0002\u4738\u4739\u0007G\u0002\u0002\u4739",
+ "\u473a\u0007F\u0002\u0002\u473a\u09c6\u0003\u0002\u0002\u0002\u473b",
+ "\u473c\u0007R\u0002\u0002\u473c\u473d\u0007K\u0002\u0002\u473d\u473e",
+ "\u0007R\u0002\u0002\u473e\u473f\u0007G\u0002\u0002\u473f\u09c8\u0003",
+ "\u0002\u0002\u0002\u4740\u4741\u0007R\u0002\u0002\u4741\u4742\u0007",
+ "K\u0002\u0002\u4742\u4743\u0007X\u0002\u0002\u4743\u4744\u0007a\u0002",
+ "\u0002\u4744\u4745\u0007I\u0002\u0002\u4745\u4746\u0007D\u0002\u0002",
+ "\u4746\u09ca\u0003\u0002\u0002\u0002\u4747\u4748\u0007R\u0002\u0002",
+ "\u4748\u4749\u0007K\u0002\u0002\u4749\u474a\u0007X\u0002\u0002\u474a",
+ "\u474b\u0007Q\u0002\u0002\u474b\u474c\u0007V\u0002\u0002\u474c\u09cc",
+ "\u0003\u0002\u0002\u0002\u474d\u474e\u0007R\u0002\u0002\u474e\u474f",
+ "\u0007K\u0002\u0002\u474f\u4750\u0007X\u0002\u0002\u4750\u4751\u0007",
+ "a\u0002\u0002\u4751\u4752\u0007U\u0002\u0002\u4752\u4753\u0007U\u0002",
+ "\u0002\u4753\u4754\u0007H\u0002\u0002\u4754\u09ce\u0003\u0002\u0002",
+ "\u0002\u4755\u4756\u0007R\u0002\u0002\u4756\u4757\u0007N\u0002\u0002",
+ "\u4757\u4758\u0007C\u0002\u0002\u4758\u4759\u0007E\u0002\u0002\u4759",
+ "\u475a\u0007G\u0002\u0002\u475a\u475b\u0007a\u0002\u0002\u475b\u475c",
+ "\u0007F\u0002\u0002\u475c\u475d\u0007K\u0002\u0002\u475d\u475e\u0007",
+ "U\u0002\u0002\u475e\u475f\u0007V\u0002\u0002\u475f\u4760\u0007K\u0002",
+ "\u0002\u4760\u4761\u0007P\u0002\u0002\u4761\u4762\u0007E\u0002\u0002",
+ "\u4762\u4763\u0007V\u0002\u0002\u4763\u09d0\u0003\u0002\u0002\u0002",
+ "\u4764\u4765\u0007R\u0002\u0002\u4765\u4766\u0007N\u0002\u0002\u4766",
+ "\u4767\u0007C\u0002\u0002\u4767\u4768\u0007E\u0002\u0002\u4768\u4769",
+ "\u0007G\u0002\u0002\u4769\u476a\u0007a\u0002\u0002\u476a\u476b\u0007",
+ "I\u0002\u0002\u476b\u476c\u0007T\u0002\u0002\u476c\u476d\u0007Q\u0002",
+ "\u0002\u476d\u476e\u0007W\u0002\u0002\u476e\u476f\u0007R\u0002\u0002",
+ "\u476f\u4770\u0007a\u0002\u0002\u4770\u4771\u0007D\u0002\u0002\u4771",
+ "\u4772\u0007[\u0002\u0002\u4772\u09d2\u0003\u0002\u0002\u0002\u4773",
+ "\u4774\u0007R\u0002\u0002\u4774\u4775\u0007N\u0002\u0002\u4775\u4776",
+ "\u0007C\u0002\u0002\u4776\u4777\u0007P\u0002\u0002\u4777\u09d4\u0003",
+ "\u0002\u0002\u0002\u4778\u4779\u0007R\u0002\u0002\u4779\u477a\u0007",
+ "N\u0002\u0002\u477a\u477b\u0007U\u0002\u0002\u477b\u477c\u0007E\u0002",
+ "\u0002\u477c\u477d\u0007Q\u0002\u0002\u477d\u477e\u0007R\u0002\u0002",
+ "\u477e\u477f\u0007G\u0002\u0002\u477f\u4780\u0007a\u0002\u0002\u4780",
+ "\u4781\u0007U\u0002\u0002\u4781\u4782\u0007G\u0002\u0002\u4782\u4783",
+ "\u0007V\u0002\u0002\u4783\u4784\u0007V\u0002\u0002\u4784\u4785\u0007",
+ "K\u0002\u0002\u4785\u4786\u0007P\u0002\u0002\u4786\u4787\u0007I\u0002",
+ "\u0002\u4787\u4788\u0007U\u0002\u0002\u4788\u09d6\u0003\u0002\u0002",
+ "\u0002\u4789\u478a\u0007R\u0002\u0002\u478a\u478b\u0007N\u0002\u0002",
+ "\u478b\u478c\u0007U\u0002\u0002\u478c\u478d\u0007a\u0002\u0002\u478d",
+ "\u478e\u0007K\u0002\u0002\u478e\u478f\u0007P\u0002\u0002\u478f\u4790",
+ "\u0007V\u0002\u0002\u4790\u4791\u0007G\u0002\u0002\u4791\u4792\u0007",
+ "I\u0002\u0002\u4792\u4793\u0007G\u0002\u0002\u4793\u4794\u0007T\u0002",
+ "\u0002\u4794\u09d8\u0003\u0002\u0002\u0002\u4795\u4796\u0007R\u0002",
+ "\u0002\u4796\u4797\u0007N\u0002\u0002\u4797\u4798\u0007U\u0002\u0002",
+ "\u4798\u4799\u0007S\u0002\u0002\u4799\u479a\u0007N\u0002\u0002\u479a",
+ "\u479b\u0007a\u0002\u0002\u479b\u479c\u0007E\u0002\u0002\u479c\u479d",
+ "\u0007E\u0002\u0002\u479d\u479e\u0007H\u0002\u0002\u479e\u479f\u0007",
+ "N\u0002\u0002\u479f\u47a0\u0007C\u0002\u0002\u47a0\u47a1\u0007I\u0002",
+ "\u0002\u47a1\u47a2\u0007U\u0002\u0002\u47a2\u09da\u0003\u0002\u0002",
+ "\u0002\u47a3\u47a4\u0007R\u0002\u0002\u47a4\u47a5\u0007N\u0002\u0002",
+ "\u47a5\u47a6\u0007U\u0002\u0002\u47a6\u47a7\u0007S\u0002\u0002\u47a7",
+ "\u47a8\u0007N\u0002\u0002\u47a8\u47a9\u0007a\u0002\u0002\u47a9\u47aa",
+ "\u0007E\u0002\u0002\u47aa\u47ab\u0007Q\u0002\u0002\u47ab\u47ac\u0007",
+ "F\u0002\u0002\u47ac\u47ad\u0007G\u0002\u0002\u47ad\u47ae\u0007a\u0002",
+ "\u0002\u47ae\u47af\u0007V\u0002\u0002\u47af\u47b0\u0007[\u0002\u0002",
+ "\u47b0\u47b1\u0007R\u0002\u0002\u47b1\u47b2\u0007G\u0002\u0002\u47b2",
+ "\u09dc\u0003\u0002\u0002\u0002\u47b3\u47b4\u0007R\u0002\u0002\u47b4",
+ "\u47b5\u0007N\u0002\u0002\u47b5\u47b6\u0007U\u0002\u0002\u47b6\u47b7",
+ "\u0007S\u0002\u0002\u47b7\u47b8\u0007N\u0002\u0002\u47b8\u47b9\u0007",
+ "a\u0002\u0002\u47b9\u47ba\u0007F\u0002\u0002\u47ba\u47bb\u0007G\u0002",
+ "\u0002\u47bb\u47bc\u0007D\u0002\u0002\u47bc\u47bd\u0007W\u0002\u0002",
+ "\u47bd\u47be\u0007I\u0002\u0002\u47be\u09de\u0003\u0002\u0002\u0002",
+ "\u47bf\u47c0\u0007R\u0002\u0002\u47c0\u47c1\u0007N\u0002\u0002\u47c1",
+ "\u47c2\u0007U\u0002\u0002\u47c2\u47c3\u0007S\u0002\u0002\u47c3\u47c4",
+ "\u0007N\u0002\u0002\u47c4\u47c5\u0007a\u0002\u0002\u47c5\u47c6\u0007",
+ "Q\u0002\u0002\u47c6\u47c7\u0007R\u0002\u0002\u47c7\u47c8\u0007V\u0002",
+ "\u0002\u47c8\u47c9\u0007K\u0002\u0002\u47c9\u47ca\u0007O\u0002\u0002",
+ "\u47ca\u47cb\u0007K\u0002\u0002\u47cb\u47cc\u0007\\\u0002\u0002\u47cc",
+ "\u47cd\u0007G\u0002\u0002\u47cd\u47ce\u0007a\u0002\u0002\u47ce\u47cf",
+ "\u0007N\u0002\u0002\u47cf\u47d0\u0007G\u0002\u0002\u47d0\u47d1\u0007",
+ "X\u0002\u0002\u47d1\u47d2\u0007G\u0002\u0002\u47d2\u47d3\u0007N\u0002",
+ "\u0002\u47d3\u09e0\u0003\u0002\u0002\u0002\u47d4\u47d5\u0007R\u0002",
+ "\u0002\u47d5\u47d6\u0007N\u0002\u0002\u47d6\u47d7\u0007U\u0002\u0002",
+ "\u47d7\u47d8\u0007S\u0002\u0002\u47d8\u47d9\u0007N\u0002\u0002\u47d9",
+ "\u47da\u0007a\u0002\u0002\u47da\u47db\u0007Y\u0002\u0002\u47db\u47dc",
+ "\u0007C\u0002\u0002\u47dc\u47dd\u0007T\u0002\u0002\u47dd\u47de\u0007",
+ "P\u0002\u0002\u47de\u47df\u0007K\u0002\u0002\u47df\u47e0\u0007P\u0002",
+ "\u0002\u47e0\u47e1\u0007I\u0002\u0002\u47e1\u47e2\u0007U\u0002\u0002",
+ "\u47e2\u09e2\u0003\u0002\u0002\u0002\u47e3\u47e4\u0007R\u0002\u0002",
+ "\u47e4\u47e5\u0007N\u0002\u0002\u47e5\u47e6\u0007W\u0002\u0002\u47e6",
+ "\u47e7\u0007I\u0002\u0002\u47e7\u47e8\u0007I\u0002\u0002\u47e8\u47e9",
+ "\u0007C\u0002\u0002\u47e9\u47ea\u0007D\u0002\u0002\u47ea\u47eb\u0007",
+ "N\u0002\u0002\u47eb\u47ec\u0007G\u0002\u0002\u47ec\u09e4\u0003\u0002",
+ "\u0002\u0002\u47ed\u47ee\u0007R\u0002\u0002\u47ee\u47ef\u0007Q\u0002",
+ "\u0002\u47ef\u47f0\u0007K\u0002\u0002\u47f0\u47f1\u0007P\u0002\u0002",
+ "\u47f1\u47f2\u0007V\u0002\u0002\u47f2\u09e6\u0003\u0002\u0002\u0002",
+ "\u47f3\u47f4\u0007R\u0002\u0002\u47f4\u47f5\u0007Q\u0002\u0002\u47f5",
+ "\u47f6\u0007N\u0002\u0002\u47f6\u47f7\u0007K\u0002\u0002\u47f7\u47f8",
+ "\u0007E\u0002\u0002\u47f8\u47f9\u0007[\u0002\u0002\u47f9\u09e8\u0003",
+ "\u0002\u0002\u0002\u47fa\u47fb\u0007R\u0002\u0002\u47fb\u47fc\u0007",
+ "Q\u0002\u0002\u47fc\u47fd\u0007Q\u0002\u0002\u47fd\u47fe\u0007N\u0002",
+ "\u0002\u47fe\u47ff\u0007a\u0002\u0002\u47ff\u4800\u00073\u0002\u0002",
+ "\u4800\u4801\u00078\u0002\u0002\u4801\u4802\u0007M\u0002\u0002\u4802",
+ "\u09ea\u0003\u0002\u0002\u0002\u4803\u4804\u0007R\u0002\u0002\u4804",
+ "\u4805\u0007Q\u0002\u0002\u4805\u4806\u0007Q\u0002\u0002\u4806\u4807",
+ "\u0007N\u0002\u0002\u4807\u4808\u0007a\u0002\u0002\u4808\u4809\u0007",
+ "4\u0002\u0002\u4809\u480a\u0007M\u0002\u0002\u480a\u09ec\u0003\u0002",
+ "\u0002\u0002\u480b\u480c\u0007R\u0002\u0002\u480c\u480d\u0007Q\u0002",
+ "\u0002\u480d\u480e\u0007Q\u0002\u0002\u480e\u480f\u0007N\u0002\u0002",
+ "\u480f\u4810\u0007a\u0002\u0002\u4810\u4811\u00075\u0002\u0002\u4811",
+ "\u4812\u00074\u0002\u0002\u4812\u4813\u0007M\u0002\u0002\u4813\u09ee",
+ "\u0003\u0002\u0002\u0002\u4814\u4815\u0007R\u0002\u0002\u4815\u4816",
+ "\u0007Q\u0002\u0002\u4816\u4817\u0007Q\u0002\u0002\u4817\u4818\u0007",
+ "N\u0002\u0002\u4818\u4819\u0007a\u0002\u0002\u4819\u481a\u00076\u0002",
+ "\u0002\u481a\u481b\u0007M\u0002\u0002\u481b\u09f0\u0003\u0002\u0002",
+ "\u0002\u481c\u481d\u0007R\u0002\u0002\u481d\u481e\u0007Q\u0002\u0002",
+ "\u481e\u481f\u0007Q\u0002\u0002\u481f\u4820\u0007N\u0002\u0002\u4820",
+ "\u4821\u0007a\u0002\u0002\u4821\u4822\u0007:\u0002\u0002\u4822\u4823",
+ "\u0007M\u0002\u0002\u4823\u09f2\u0003\u0002\u0002\u0002\u4824\u4825",
+ "\u0007R\u0002\u0002\u4825\u4826\u0007Q\u0002\u0002\u4826\u4827\u0007",
+ "U\u0002\u0002\u4827\u4828\u0007K\u0002\u0002\u4828\u4829\u0007V\u0002",
+ "\u0002\u4829\u482a\u0007K\u0002\u0002\u482a\u482b\u0007X\u0002\u0002",
+ "\u482b\u482c\u0007G\u0002\u0002\u482c\u482d\u0007P\u0002\u0002\u482d",
+ "\u09f4\u0003\u0002\u0002\u0002\u482e\u482f\u0007R\u0002\u0002\u482f",
+ "\u4830\u0007Q\u0002\u0002\u4830\u4831\u0007U\u0002\u0002\u4831\u4832",
+ "\u0007K\u0002\u0002\u4832\u4833\u0007V\u0002\u0002\u4833\u4834\u0007",
+ "K\u0002\u0002\u4834\u4835\u0007X\u0002\u0002\u4835\u4836\u0007G\u0002",
+ "\u0002\u4836\u09f6\u0003\u0002\u0002\u0002\u4837\u4838\u0007R\u0002",
+ "\u0002\u4838\u4839\u0007Q\u0002\u0002\u4839\u483a\u0007U\u0002\u0002",
+ "\u483a\u483b\u0007V\u0002\u0002\u483b\u483c\u0007a\u0002\u0002\u483c",
+ "\u483d\u0007V\u0002\u0002\u483d\u483e\u0007T\u0002\u0002\u483e\u483f",
+ "\u0007C\u0002\u0002\u483f\u4840\u0007P\u0002\u0002\u4840\u4841\u0007",
+ "U\u0002\u0002\u4841\u4842\u0007C\u0002\u0002\u4842\u4843\u0007E\u0002",
+ "\u0002\u4843\u4844\u0007V\u0002\u0002\u4844\u4845\u0007K\u0002\u0002",
+ "\u4845\u4846\u0007Q\u0002\u0002\u4846\u4847\u0007P\u0002\u0002\u4847",
+ "\u09f8\u0003\u0002\u0002\u0002\u4848\u4849\u0007R\u0002\u0002\u4849",
+ "\u484a\u0007Q\u0002\u0002\u484a\u484b\u0007Y\u0002\u0002\u484b\u484c",
+ "\u0007G\u0002\u0002\u484c\u484d\u0007T\u0002\u0002\u484d\u484e\u0007",
+ "O\u0002\u0002\u484e\u484f\u0007W\u0002\u0002\u484f\u4850\u0007N\u0002",
+ "\u0002\u4850\u4851\u0007V\u0002\u0002\u4851\u4852\u0007K\u0002\u0002",
+ "\u4852\u4853\u0007U\u0002\u0002\u4853\u4854\u0007G\u0002\u0002\u4854",
+ "\u4855\u0007V\u0002\u0002\u4855\u4856\u0007a\u0002\u0002\u4856\u4857",
+ "\u0007D\u0002\u0002\u4857\u4858\u0007[\u0002\u0002\u4858\u4859\u0007",
+ "a\u0002\u0002\u4859\u485a\u0007E\u0002\u0002\u485a\u485b\u0007C\u0002",
+ "\u0002\u485b\u485c\u0007T\u0002\u0002\u485c\u485d\u0007F\u0002\u0002",
+ "\u485d\u485e\u0007K\u0002\u0002\u485e\u485f\u0007P\u0002\u0002\u485f",
+ "\u4860\u0007C\u0002\u0002\u4860\u4861\u0007N\u0002\u0002\u4861\u4862",
+ "\u0007K\u0002\u0002\u4862\u4863\u0007V\u0002\u0002\u4863\u4864\u0007",
+ "[\u0002\u0002\u4864\u09fa\u0003\u0002\u0002\u0002\u4865\u4866\u0007",
+ "R\u0002\u0002\u4866\u4867\u0007Q\u0002\u0002\u4867\u4868\u0007Y\u0002",
+ "\u0002\u4868\u4869\u0007G\u0002\u0002\u4869\u486a\u0007T\u0002\u0002",
+ "\u486a\u486b\u0007O\u0002\u0002\u486b\u486c\u0007W\u0002\u0002\u486c",
+ "\u486d\u0007N\u0002\u0002\u486d\u486e\u0007V\u0002\u0002\u486e\u486f",
+ "\u0007K\u0002\u0002\u486f\u4870\u0007U\u0002\u0002\u4870\u4871\u0007",
+ "G\u0002\u0002\u4871\u4872\u0007V\u0002\u0002\u4872\u09fc\u0003\u0002",
+ "\u0002\u0002\u4873\u4874\u0007R\u0002\u0002\u4874\u4875\u0007Q\u0002",
+ "\u0002\u4875\u4876\u0007Y\u0002\u0002\u4876\u4877\u0007G\u0002\u0002",
+ "\u4877\u4878\u0007T\u0002\u0002\u4878\u09fe\u0003\u0002\u0002\u0002",
+ "\u4879\u487a\u0007R\u0002\u0002\u487a\u487b\u0007S\u0002\u0002\u487b",
+ "\u487c\u0007a\u0002\u0002\u487c\u487d\u0007E\u0002\u0002\u487d\u487e",
+ "\u0007Q\u0002\u0002\u487e\u487f\u0007P\u0002\u0002\u487f\u4880\u0007",
+ "E\u0002\u0002\u4880\u4881\u0007W\u0002\u0002\u4881\u4882\u0007T\u0002",
+ "\u0002\u4882\u4883\u0007T\u0002\u0002\u4883\u4884\u0007G\u0002\u0002",
+ "\u4884\u4885\u0007P\u0002\u0002\u4885\u4886\u0007V\u0002\u0002\u4886",
+ "\u4887\u0007a\u0002\u0002\u4887\u4888\u0007W\u0002\u0002\u4888\u4889",
+ "\u0007P\u0002\u0002\u4889\u488a\u0007K\u0002\u0002\u488a\u488b\u0007",
+ "Q\u0002\u0002\u488b\u488c\u0007P\u0002\u0002\u488c\u0a00\u0003\u0002",
+ "\u0002\u0002\u488d\u488e\u0007R\u0002\u0002\u488e\u488f\u0007S\u0002",
+ "\u0002\u488f\u4890\u0007a\u0002\u0002\u4890\u4891\u0007F\u0002\u0002",
+ "\u4891\u4892\u0007K\u0002\u0002\u4892\u4893\u0007U\u0002\u0002\u4893",
+ "\u4894\u0007V\u0002\u0002\u4894\u4895\u0007T\u0002\u0002\u4895\u4896",
+ "\u0007K\u0002\u0002\u4896\u4897\u0007D\u0002\u0002\u4897\u4898\u0007",
+ "W\u0002\u0002\u4898\u4899\u0007V\u0002\u0002\u4899\u489a\u0007G\u0002",
+ "\u0002\u489a\u0a02\u0003\u0002\u0002\u0002\u489b\u489c\u0007R\u0002",
+ "\u0002\u489c\u489d\u0007S\u0002\u0002\u489d\u489e\u0007a\u0002\u0002",
+ "\u489e\u489f\u0007F\u0002\u0002\u489f\u48a0\u0007K\u0002\u0002\u48a0",
+ "\u48a1\u0007U\u0002\u0002\u48a1\u48a2\u0007V\u0002\u0002\u48a2\u48a3",
+ "\u0007T\u0002\u0002\u48a3\u48a4\u0007K\u0002\u0002\u48a4\u48a5\u0007",
+ "D\u0002\u0002\u48a5\u48a6\u0007W\u0002\u0002\u48a6\u48a7\u0007V\u0002",
+ "\u0002\u48a7\u48a8\u0007G\u0002\u0002\u48a8\u48a9\u0007a\u0002\u0002",
+ "\u48a9\u48aa\u0007Y\u0002\u0002\u48aa\u48ab\u0007K\u0002\u0002\u48ab",
+ "\u48ac\u0007P\u0002\u0002\u48ac\u48ad\u0007F\u0002\u0002\u48ad\u48ae",
+ "\u0007Q\u0002\u0002\u48ae\u48af\u0007Y\u0002\u0002\u48af\u0a04\u0003",
+ "\u0002\u0002\u0002\u48b0\u48b1\u0007R\u0002\u0002\u48b1\u48b2\u0007",
+ "S\u0002\u0002\u48b2\u48b3\u0007a\u0002\u0002\u48b3\u48b4\u0007H\u0002",
+ "\u0002\u48b4\u48b5\u0007K\u0002\u0002\u48b5\u48b6\u0007N\u0002\u0002",
+ "\u48b6\u48b7\u0007V\u0002\u0002\u48b7\u48b8\u0007G\u0002\u0002\u48b8",
+ "\u48b9\u0007T\u0002\u0002\u48b9\u0a06\u0003\u0002\u0002\u0002\u48ba",
+ "\u48bb\u0007R\u0002\u0002\u48bb\u48bc\u0007S\u0002\u0002\u48bc\u48bd",
+ "\u0007a\u0002\u0002\u48bd\u48be\u0007O\u0002\u0002\u48be\u48bf\u0007",
+ "C\u0002\u0002\u48bf\u48c0\u0007R\u0002\u0002\u48c0\u0a08\u0003\u0002",
+ "\u0002\u0002\u48c1\u48c2\u0007R\u0002\u0002\u48c2\u48c3\u0007S\u0002",
+ "\u0002\u48c3\u48c4\u0007a\u0002\u0002\u48c4\u48c5\u0007P\u0002\u0002",
+ "\u48c5\u48c6\u0007Q\u0002\u0002\u48c6\u48c7\u0007O\u0002\u0002\u48c7",
+ "\u48c8\u0007C\u0002\u0002\u48c8\u48c9\u0007R\u0002\u0002\u48c9\u0a0a",
+ "\u0003\u0002\u0002\u0002\u48ca\u48cb\u0007R\u0002\u0002\u48cb\u48cc",
+ "\u0007S\u0002\u0002\u48cc\u48cd\u0007a\u0002\u0002\u48cd\u48ce\u0007",
+ "T\u0002\u0002\u48ce\u48cf\u0007G\u0002\u0002\u48cf\u48d0\u0007R\u0002",
+ "\u0002\u48d0\u48d1\u0007N\u0002\u0002\u48d1\u48d2\u0007K\u0002\u0002",
+ "\u48d2\u48d3\u0007E\u0002\u0002\u48d3\u48d4\u0007C\u0002\u0002\u48d4",
+ "\u48d5\u0007V\u0002\u0002\u48d5\u48d6\u0007G\u0002\u0002\u48d6\u0a0c",
+ "\u0003\u0002\u0002\u0002\u48d7\u48d8\u0007R\u0002\u0002\u48d8\u48d9",
+ "\u0007S\u0002\u0002\u48d9\u48da\u0007a\u0002\u0002\u48da\u48db\u0007",
+ "U\u0002\u0002\u48db\u48dc\u0007M\u0002\u0002\u48dc\u48dd\u0007G\u0002",
+ "\u0002\u48dd\u48de\u0007Y\u0002\u0002\u48de\u0a0e\u0003\u0002\u0002",
+ "\u0002\u48df\u48e0\u0007R\u0002\u0002\u48e0\u48e1\u0007T\u0002\u0002",
+ "\u48e1\u48e2\u0007C\u0002\u0002\u48e2\u48e3\u0007I\u0002\u0002\u48e3",
+ "\u48e4\u0007O\u0002\u0002\u48e4\u48e5\u0007C\u0002\u0002\u48e5\u0a10",
+ "\u0003\u0002\u0002\u0002\u48e6\u48e7\u0007R\u0002\u0002\u48e7\u48e8",
+ "\u0007T\u0002\u0002\u48e8\u48e9\u0007G\u0002\u0002\u48e9\u48ea\u0007",
+ "D\u0002\u0002\u48ea\u48eb\u0007W\u0002\u0002\u48eb\u48ec\u0007K\u0002",
+ "\u0002\u48ec\u48ed\u0007N\u0002\u0002\u48ed\u48ee\u0007V\u0002\u0002",
+ "\u48ee\u0a12\u0003\u0002\u0002\u0002\u48ef\u48f0\u0007R\u0002\u0002",
+ "\u48f0\u48f1\u0007T\u0002\u0002\u48f1\u48f2\u0007G\u0002\u0002\u48f2",
+ "\u48f3\u0007E\u0002\u0002\u48f3\u48f4\u0007G\u0002\u0002\u48f4\u48f5",
+ "\u0007F\u0002\u0002\u48f5\u48f6\u0007G\u0002\u0002\u48f6\u48f7\u0007",
+ "U\u0002\u0002\u48f7\u0a14\u0003\u0002\u0002\u0002\u48f8\u48f9\u0007",
+ "R\u0002\u0002\u48f9\u48fa\u0007T\u0002\u0002\u48fa\u48fb\u0007G\u0002",
+ "\u0002\u48fb\u48fc\u0007E\u0002\u0002\u48fc\u48fd\u0007G\u0002\u0002",
+ "\u48fd\u48fe\u0007F\u0002\u0002\u48fe\u48ff\u0007K\u0002\u0002\u48ff",
+ "\u4900\u0007P\u0002\u0002\u4900\u4901\u0007I\u0002\u0002\u4901\u0a16",
+ "\u0003\u0002\u0002\u0002\u4902\u4903\u0007R\u0002\u0002\u4903\u4904",
+ "\u0007T\u0002\u0002\u4904\u4905\u0007G\u0002\u0002\u4905\u4906\u0007",
+ "E\u0002\u0002\u4906\u4907\u0007K\u0002\u0002\u4907\u4908\u0007U\u0002",
+ "\u0002\u4908\u4909\u0007K\u0002\u0002\u4909\u490a\u0007Q\u0002\u0002",
+ "\u490a\u490b\u0007P\u0002\u0002\u490b\u0a18\u0003\u0002\u0002\u0002",
+ "\u490c\u490d\u0007R\u0002\u0002\u490d\u490e\u0007T\u0002\u0002\u490e",
+ "\u490f\u0007G\u0002\u0002\u490f\u4910\u0007E\u0002\u0002\u4910\u4911",
+ "\u0007Q\u0002\u0002\u4911\u4912\u0007O\u0002\u0002\u4912\u4913\u0007",
+ "R\u0002\u0002\u4913\u4914\u0007W\u0002\u0002\u4914\u4915\u0007V\u0002",
+ "\u0002\u4915\u4916\u0007G\u0002\u0002\u4916\u4917\u0007a\u0002\u0002",
+ "\u4917\u4918\u0007U\u0002\u0002\u4918\u4919\u0007W\u0002\u0002\u4919",
+ "\u491a\u0007D\u0002\u0002\u491a\u491b\u0007S\u0002\u0002\u491b\u491c",
+ "\u0007W\u0002\u0002\u491c\u491d\u0007G\u0002\u0002\u491d\u491e\u0007",
+ "T\u0002\u0002\u491e\u491f\u0007[\u0002\u0002\u491f\u0a1a\u0003\u0002",
+ "\u0002\u0002\u4920\u4921\u0007R\u0002\u0002\u4921\u4922\u0007T\u0002",
+ "\u0002\u4922\u4923\u0007G\u0002\u0002\u4923\u4924\u0007F\u0002\u0002",
+ "\u4924\u4925\u0007K\u0002\u0002\u4925\u4926\u0007E\u0002\u0002\u4926",
+ "\u4927\u0007C\u0002\u0002\u4927\u4928\u0007V\u0002\u0002\u4928\u4929",
+ "\u0007G\u0002\u0002\u4929\u492a\u0007a\u0002\u0002\u492a\u492b\u0007",
+ "T\u0002\u0002\u492b\u492c\u0007G\u0002\u0002\u492c\u492d\u0007Q\u0002",
+ "\u0002\u492d\u492e\u0007T\u0002\u0002\u492e\u492f\u0007F\u0002\u0002",
+ "\u492f\u4930\u0007G\u0002\u0002\u4930\u4931\u0007T\u0002\u0002\u4931",
+ "\u4932\u0007U\u0002\u0002\u4932\u0a1c\u0003\u0002\u0002\u0002\u4933",
+ "\u4934\u0007R\u0002\u0002\u4934\u4935\u0007T\u0002\u0002\u4935\u4936",
+ "\u0007G\u0002\u0002\u4936\u4937\u0007N\u0002\u0002\u4937\u4938\u0007",
+ "Q\u0002\u0002\u4938\u4939\u0007C\u0002\u0002\u4939\u493a\u0007F\u0002",
+ "\u0002\u493a\u0a1e\u0003\u0002\u0002\u0002\u493b\u493c\u0007R\u0002",
+ "\u0002\u493c\u493d\u0007T\u0002\u0002\u493d\u493e\u0007G\u0002\u0002",
+ "\u493e\u493f\u0007R\u0002\u0002\u493f\u4940\u0007C\u0002\u0002\u4940",
+ "\u4941\u0007T\u0002\u0002\u4941\u4942\u0007G\u0002\u0002\u4942\u0a20",
+ "\u0003\u0002\u0002\u0002\u4943\u4944\u0007R\u0002\u0002\u4944\u4945",
+ "\u0007T\u0002\u0002\u4945\u4946\u0007G\u0002\u0002\u4946\u4947\u0007",
+ "U\u0002\u0002\u4947\u4948\u0007G\u0002\u0002\u4948\u4949\u0007P\u0002",
+ "\u0002\u4949\u494a\u0007V\u0002\u0002\u494a\u494b\u0007P\u0002\u0002",
+ "\u494b\u494c\u0007P\u0002\u0002\u494c\u494d\u0007X\u0002\u0002\u494d",
+ "\u0a22\u0003\u0002\u0002\u0002\u494e\u494f\u0007R\u0002\u0002\u494f",
+ "\u4950\u0007T\u0002\u0002\u4950\u4951\u0007G\u0002\u0002\u4951\u4952",
+ "\u0007U\u0002\u0002\u4952\u4953\u0007G\u0002\u0002\u4953\u4954\u0007",
+ "P\u0002\u0002\u4954\u4955\u0007V\u0002\u0002\u4955\u0a24\u0003\u0002",
+ "\u0002\u0002\u4956\u4957\u0007R\u0002\u0002\u4957\u4958\u0007T\u0002",
+ "\u0002\u4958\u4959\u0007G\u0002\u0002\u4959\u495a\u0007U\u0002\u0002",
+ "\u495a\u495b\u0007G\u0002\u0002\u495b\u495c\u0007P\u0002\u0002\u495c",
+ "\u495d\u0007V\u0002\u0002\u495d\u495e\u0007X\u0002\u0002\u495e\u0a26",
+ "\u0003\u0002\u0002\u0002\u495f\u4960\u0007R\u0002\u0002\u4960\u4961",
+ "\u0007T\u0002\u0002\u4961\u4962\u0007G\u0002\u0002\u4962\u4963\u0007",
+ "U\u0002\u0002\u4963\u4964\u0007G\u0002\u0002\u4964\u4965\u0007T\u0002",
+ "\u0002\u4965\u4966\u0007X\u0002\u0002\u4966\u4967\u0007G\u0002\u0002",
+ "\u4967\u4968\u0007a\u0002\u0002\u4968\u4969\u0007Q\u0002\u0002\u4969",
+ "\u496a\u0007K\u0002\u0002\u496a\u496b\u0007F\u0002\u0002\u496b\u0a28",
+ "\u0003\u0002\u0002\u0002\u496c\u496d\u0007R\u0002\u0002\u496d\u496e",
+ "\u0007T\u0002\u0002\u496e\u496f\u0007G\u0002\u0002\u496f\u4970\u0007",
+ "U\u0002\u0002\u4970\u4971\u0007G\u0002\u0002\u4971\u4972\u0007T\u0002",
+ "\u0002\u4972\u4973\u0007X\u0002\u0002\u4973\u4974\u0007G\u0002\u0002",
+ "\u4974\u0a2a\u0003\u0002\u0002\u0002\u4975\u4976\u0007R\u0002\u0002",
+ "\u4976\u4977\u0007T\u0002\u0002\u4977\u4978\u0007G\u0002\u0002\u4978",
+ "\u4979\u0007V\u0002\u0002\u4979\u497a\u0007V\u0002\u0002\u497a\u497b",
+ "\u0007[\u0002\u0002\u497b\u0a2c\u0003\u0002\u0002\u0002\u497c\u497d",
+ "\u0007R\u0002\u0002\u497d\u497e\u0007T\u0002\u0002\u497e\u497f\u0007",
+ "G\u0002\u0002\u497f\u4980\u0007X\u0002\u0002\u4980\u4981\u0007K\u0002",
+ "\u0002\u4981\u4982\u0007Q\u0002\u0002\u4982\u4983\u0007W\u0002\u0002",
+ "\u4983\u4984\u0007U\u0002\u0002\u4984\u0a2e\u0003\u0002\u0002\u0002",
+ "\u4985\u4986\u0007R\u0002\u0002\u4986\u4987\u0007T\u0002\u0002\u4987",
+ "\u4988\u0007G\u0002\u0002\u4988\u4989\u0007X\u0002\u0002\u4989\u0a30",
+ "\u0003\u0002\u0002\u0002\u498a\u498b\u0007R\u0002\u0002\u498b\u498c",
+ "\u0007T\u0002\u0002\u498c\u498d\u0007K\u0002\u0002\u498d\u498e\u0007",
+ "O\u0002\u0002\u498e\u498f\u0007C\u0002\u0002\u498f\u4990\u0007T\u0002",
+ "\u0002\u4990\u4991\u0007[\u0002\u0002\u4991\u0a32\u0003\u0002\u0002",
+ "\u0002\u4992\u4993\u0007R\u0002\u0002\u4993\u4994\u0007T\u0002\u0002",
+ "\u4994\u4995\u0007K\u0002\u0002\u4995\u4996\u0007P\u0002\u0002\u4996",
+ "\u4997\u0007V\u0002\u0002\u4997\u4998\u0007D\u0002\u0002\u4998\u4999",
+ "\u0007N\u0002\u0002\u4999\u499a\u0007Q\u0002\u0002\u499a\u499b\u0007",
+ "D\u0002\u0002\u499b\u499c\u0007V\u0002\u0002\u499c\u499d\u0007Q\u0002",
+ "\u0002\u499d\u499e\u0007E\u0002\u0002\u499e\u499f\u0007N\u0002\u0002",
+ "\u499f\u49a0\u0007Q\u0002\u0002\u49a0\u49a1\u0007D\u0002\u0002\u49a1",
+ "\u0a34\u0003\u0002\u0002\u0002\u49a2\u49a3\u0007R\u0002\u0002\u49a3",
+ "\u49a4\u0007T\u0002\u0002\u49a4\u49a5\u0007K\u0002\u0002\u49a5\u49a6",
+ "\u0007Q\u0002\u0002\u49a6\u49a7\u0007T\u0002\u0002\u49a7\u49a8\u0007",
+ "K\u0002\u0002\u49a8\u49a9\u0007V\u0002\u0002\u49a9\u49aa\u0007[\u0002",
+ "\u0002\u49aa\u0a36\u0003\u0002\u0002\u0002\u49ab\u49ac\u0007R\u0002",
+ "\u0002\u49ac\u49ad\u0007T\u0002\u0002\u49ad\u49ae\u0007K\u0002\u0002",
+ "\u49ae\u49af\u0007Q\u0002\u0002\u49af\u49b0\u0007T\u0002\u0002\u49b0",
+ "\u0a38\u0003\u0002\u0002\u0002\u49b1\u49b2\u0007R\u0002\u0002\u49b2",
+ "\u49b3\u0007T\u0002\u0002\u49b3\u49b4\u0007K\u0002\u0002\u49b4\u49b5",
+ "\u0007X\u0002\u0002\u49b5\u49b6\u0007C\u0002\u0002\u49b6\u49b7\u0007",
+ "V\u0002\u0002\u49b7\u49b8\u0007G\u0002\u0002\u49b8\u0a3a\u0003\u0002",
+ "\u0002\u0002\u49b9\u49ba\u0007R\u0002\u0002\u49ba\u49bb\u0007T\u0002",
+ "\u0002\u49bb\u49bc\u0007K\u0002\u0002\u49bc\u49bd\u0007X\u0002\u0002",
+ "\u49bd\u49be\u0007C\u0002\u0002\u49be\u49bf\u0007V\u0002\u0002\u49bf",
+ "\u49c0\u0007G\u0002\u0002\u49c0\u49c1\u0007a\u0002\u0002\u49c1\u49c2",
+ "\u0007U\u0002\u0002\u49c2\u49c3\u0007I\u0002\u0002\u49c3\u49c4\u0007",
+ "C\u0002\u0002\u49c4\u0a3c\u0003\u0002\u0002\u0002\u49c5\u49c6\u0007",
+ "R\u0002\u0002\u49c6\u49c7\u0007T\u0002\u0002\u49c7\u49c8\u0007K\u0002",
+ "\u0002\u49c8\u49c9\u0007X\u0002\u0002\u49c9\u49ca\u0007K\u0002\u0002",
+ "\u49ca\u49cb\u0007N\u0002\u0002\u49cb\u49cc\u0007G\u0002\u0002\u49cc",
+ "\u49cd\u0007I\u0002\u0002\u49cd\u49ce\u0007G\u0002\u0002\u49ce\u49cf",
+ "\u0007F\u0002\u0002\u49cf\u0a3e\u0003\u0002\u0002\u0002\u49d0\u49d1",
+ "\u0007R\u0002\u0002\u49d1\u49d2\u0007T\u0002\u0002\u49d2\u49d3\u0007",
+ "K\u0002\u0002\u49d3\u49d4\u0007X\u0002\u0002\u49d4\u49d5\u0007K\u0002",
+ "\u0002\u49d5\u49d6\u0007N\u0002\u0002\u49d6\u49d7\u0007G\u0002\u0002",
+ "\u49d7\u49d8\u0007I\u0002\u0002\u49d8\u49d9\u0007G\u0002\u0002\u49d9",
+ "\u0a40\u0003\u0002\u0002\u0002\u49da\u49db\u0007R\u0002\u0002\u49db",
+ "\u49dc\u0007T\u0002\u0002\u49dc\u49dd\u0007K\u0002\u0002\u49dd\u49de",
+ "\u0007X\u0002\u0002\u49de\u49df\u0007K\u0002\u0002\u49df\u49e0\u0007",
+ "N\u0002\u0002\u49e0\u49e1\u0007G\u0002\u0002\u49e1\u49e2\u0007I\u0002",
+ "\u0002\u49e2\u49e3\u0007G\u0002\u0002\u49e3\u49e4\u0007U\u0002\u0002",
+ "\u49e4\u0a42\u0003\u0002\u0002\u0002\u49e5\u49e6\u0007R\u0002\u0002",
+ "\u49e6\u49e7\u0007T\u0002\u0002\u49e7\u49e8\u0007Q\u0002\u0002\u49e8",
+ "\u49e9\u0007E\u0002\u0002\u49e9\u49ea\u0007G\u0002\u0002\u49ea\u49eb",
+ "\u0007F\u0002\u0002\u49eb\u49ec\u0007W\u0002\u0002\u49ec\u49ed\u0007",
+ "T\u0002\u0002\u49ed\u49ee\u0007C\u0002\u0002\u49ee\u49ef\u0007N\u0002",
+ "\u0002\u49ef\u0a44\u0003\u0002\u0002\u0002\u49f0\u49f1\u0007R\u0002",
+ "\u0002\u49f1\u49f2\u0007T\u0002\u0002\u49f2\u49f3\u0007Q\u0002\u0002",
+ "\u49f3\u49f4\u0007E\u0002\u0002\u49f4\u49f5\u0007G\u0002\u0002\u49f5",
+ "\u49f6\u0007F\u0002\u0002\u49f6\u49f7\u0007W\u0002\u0002\u49f7\u49f8",
+ "\u0007T\u0002\u0002\u49f8\u49f9\u0007G\u0002\u0002\u49f9\u0a46\u0003",
+ "\u0002\u0002\u0002\u49fa\u49fb\u0007R\u0002\u0002\u49fb\u49fc\u0007",
+ "T\u0002\u0002\u49fc\u49fd\u0007Q\u0002\u0002\u49fd\u49fe\u0007E\u0002",
+ "\u0002\u49fe\u49ff\u0007G\u0002\u0002\u49ff\u4a00\u0007U\u0002\u0002",
+ "\u4a00\u4a01\u0007U\u0002\u0002\u4a01\u0a48\u0003\u0002\u0002\u0002",
+ "\u4a02\u4a03\u0007R\u0002\u0002\u4a03\u4a04\u0007T\u0002\u0002\u4a04",
+ "\u4a05\u0007Q\u0002\u0002\u4a05\u4a06\u0007H\u0002\u0002\u4a06\u4a07",
+ "\u0007K\u0002\u0002\u4a07\u4a08\u0007N\u0002\u0002\u4a08\u4a09\u0007",
+ "G\u0002\u0002\u4a09\u0a4a\u0003\u0002\u0002\u0002\u4a0a\u4a0b\u0007",
+ "R\u0002\u0002\u4a0b\u4a0c\u0007T\u0002\u0002\u4a0c\u4a0d\u0007Q\u0002",
+ "\u0002\u4a0d\u4a0e\u0007I\u0002\u0002\u4a0e\u4a0f\u0007T\u0002\u0002",
+ "\u4a0f\u4a10\u0007C\u0002\u0002\u4a10\u4a11\u0007O\u0002\u0002\u4a11",
+ "\u0a4c\u0003\u0002\u0002\u0002\u4a12\u4a13\u0007R\u0002\u0002\u4a13",
+ "\u4a14\u0007T\u0002\u0002\u4a14\u4a15\u0007Q\u0002\u0002\u4a15\u4a16",
+ "\u0007L\u0002\u0002\u4a16\u4a17\u0007G\u0002\u0002\u4a17\u4a18\u0007",
+ "E\u0002\u0002\u4a18\u4a19\u0007V\u0002\u0002\u4a19\u0a4e\u0003\u0002",
+ "\u0002\u0002\u4a1a\u4a1b\u0007R\u0002\u0002\u4a1b\u4a1c\u0007T\u0002",
+ "\u0002\u4a1c\u4a1d\u0007Q\u0002\u0002\u4a1d\u4a1e\u0007R\u0002\u0002",
+ "\u4a1e\u4a1f\u0007C\u0002\u0002\u4a1f\u4a20\u0007I\u0002\u0002\u4a20",
+ "\u4a21\u0007C\u0002\u0002\u4a21\u4a22\u0007V\u0002\u0002\u4a22\u4a23",
+ "\u0007G\u0002\u0002\u4a23\u0a50\u0003\u0002\u0002\u0002\u4a24\u4a25",
+ "\u0007R\u0002\u0002\u4a25\u4a26\u0007T\u0002\u0002\u4a26\u4a27\u0007",
+ "Q\u0002\u0002\u4a27\u4a28\u0007V\u0002\u0002\u4a28\u4a29\u0007G\u0002",
+ "\u0002\u4a29\u4a2a\u0007E\u0002\u0002\u4a2a\u4a2b\u0007V\u0002\u0002",
+ "\u4a2b\u4a2c\u0007G\u0002\u0002\u4a2c\u4a2d\u0007F\u0002\u0002\u4a2d",
+ "\u0a52\u0003\u0002\u0002\u0002\u4a2e\u4a2f\u0007R\u0002\u0002\u4a2f",
+ "\u4a30\u0007T\u0002\u0002\u4a30\u4a31\u0007Q\u0002\u0002\u4a31\u4a32",
+ "\u0007V\u0002\u0002\u4a32\u4a33\u0007G\u0002\u0002\u4a33\u4a34\u0007",
+ "E\u0002\u0002\u4a34\u4a35\u0007V\u0002\u0002\u4a35\u4a36\u0007K\u0002",
+ "\u0002\u4a36\u4a37\u0007Q\u0002\u0002\u4a37\u4a38\u0007P\u0002\u0002",
+ "\u4a38\u0a54\u0003\u0002\u0002\u0002\u4a39\u4a3a\u0007R\u0002\u0002",
+ "\u4a3a\u4a3b\u0007T\u0002\u0002\u4a3b\u4a3c\u0007Q\u0002\u0002\u4a3c",
+ "\u4a3d\u0007Z\u0002\u0002\u4a3d\u4a3e\u0007[\u0002\u0002\u4a3e\u0a56",
+ "\u0003\u0002\u0002\u0002\u4a3f\u4a40\u0007R\u0002\u0002\u4a40\u4a41",
+ "\u0007T\u0002\u0002\u4a41\u4a42\u0007W\u0002\u0002\u4a42\u4a43\u0007",
+ "P\u0002\u0002\u4a43\u4a44\u0007K\u0002\u0002\u4a44\u4a45\u0007P\u0002",
+ "\u0002\u4a45\u4a46\u0007I\u0002\u0002\u4a46\u0a58\u0003\u0002\u0002",
+ "\u0002\u4a47\u4a48\u0007R\u0002\u0002\u4a48\u4a49\u0007W\u0002\u0002",
+ "\u4a49\u4a4a\u0007D\u0002\u0002\u4a4a\u4a4b\u0007N\u0002\u0002\u4a4b",
+ "\u4a4c\u0007K\u0002\u0002\u4a4c\u4a4d\u0007E\u0002\u0002\u4a4d\u0a5a",
+ "\u0003\u0002\u0002\u0002\u4a4e\u4a4f\u0007R\u0002\u0002\u4a4f\u4a50",
+ "\u0007W\u0002\u0002\u4a50\u4a51\u0007N\u0002\u0002\u4a51\u4a52\u0007",
+ "N\u0002\u0002\u4a52\u4a53\u0007a\u0002\u0002\u4a53\u4a54\u0007R\u0002",
+ "\u0002\u4a54\u4a55\u0007T\u0002\u0002\u4a55\u4a56\u0007G\u0002\u0002",
+ "\u4a56\u4a57\u0007F\u0002\u0002\u4a57\u0a5c\u0003\u0002\u0002\u0002",
+ "\u4a58\u4a59\u0007R\u0002\u0002\u4a59\u4a5a\u0007W\u0002\u0002\u4a5a",
+ "\u4a5b\u0007T\u0002\u0002\u4a5b\u4a5c\u0007I\u0002\u0002\u4a5c\u4a5d",
+ "\u0007G\u0002\u0002\u4a5d\u0a5e\u0003\u0002\u0002\u0002\u4a5e\u4a5f",
+ "\u0007R\u0002\u0002\u4a5f\u4a60\u0007W\u0002\u0002\u4a60\u4a61\u0007",
+ "U\u0002\u0002\u4a61\u4a62\u0007J\u0002\u0002\u4a62\u4a63\u0007a\u0002",
+ "\u0002\u4a63\u4a64\u0007R\u0002\u0002\u4a64\u4a65\u0007T\u0002\u0002",
+ "\u4a65\u4a66\u0007G\u0002\u0002\u4a66\u4a67\u0007F\u0002\u0002\u4a67",
+ "\u0a60\u0003\u0002\u0002\u0002\u4a68\u4a69\u0007R\u0002\u0002\u4a69",
+ "\u4a6a\u0007W\u0002\u0002\u4a6a\u4a6b\u0007U\u0002\u0002\u4a6b\u4a6c",
+ "\u0007J\u0002\u0002\u4a6c\u4a6d\u0007a\u0002\u0002\u4a6d\u4a6e\u0007",
+ "U\u0002\u0002\u4a6e\u4a6f\u0007W\u0002\u0002\u4a6f\u4a70\u0007D\u0002",
+ "\u0002\u4a70\u4a71\u0007S\u0002\u0002\u4a71\u0a62\u0003\u0002\u0002",
+ "\u0002\u4a72\u4a73\u0007R\u0002\u0002\u4a73\u4a74\u0007Z\u0002\u0002",
+ "\u4a74\u4a75\u0007a\u0002\u0002\u4a75\u4a76\u0007H\u0002\u0002\u4a76",
+ "\u4a77\u0007C\u0002\u0002\u4a77\u4a78\u0007W\u0002\u0002\u4a78\u4a79",
+ "\u0007N\u0002\u0002\u4a79\u4a7a\u0007V\u0002\u0002\u4a7a\u4a7b\u0007",
+ "a\u0002\u0002\u4a7b\u4a7c\u0007V\u0002\u0002\u4a7c\u4a7d\u0007Q\u0002",
+ "\u0002\u4a7d\u4a7e\u0007N\u0002\u0002\u4a7e\u4a7f\u0007G\u0002\u0002",
+ "\u4a7f\u4a80\u0007T\u0002\u0002\u4a80\u4a81\u0007C\u0002\u0002\u4a81",
+ "\u4a82\u0007P\u0002\u0002\u4a82\u4a83\u0007E\u0002\u0002\u4a83\u4a84",
+ "\u0007G\u0002\u0002\u4a84\u0a64\u0003\u0002\u0002\u0002\u4a85\u4a86",
+ "\u0007R\u0002\u0002\u4a86\u4a87\u0007Z\u0002\u0002\u4a87\u4a88\u0007",
+ "a\u0002\u0002\u4a88\u4a89\u0007I\u0002\u0002\u4a89\u4a8a\u0007T\u0002",
+ "\u0002\u4a8a\u4a8b\u0007C\u0002\u0002\u4a8b\u4a8c\u0007P\u0002\u0002",
+ "\u4a8c\u4a8d\u0007W\u0002\u0002\u4a8d\u4a8e\u0007N\u0002\u0002\u4a8e",
+ "\u4a8f\u0007G\u0002\u0002\u4a8f\u0a66\u0003\u0002\u0002\u0002\u4a90",
+ "\u4a91\u0007R\u0002\u0002\u4a91\u4a92\u0007Z\u0002\u0002\u4a92\u4a93",
+ "\u0007a\u0002\u0002\u4a93\u4a94\u0007L\u0002\u0002\u4a94\u4a95\u0007",
+ "Q\u0002\u0002\u4a95\u4a96\u0007K\u0002\u0002\u4a96\u4a97\u0007P\u0002",
+ "\u0002\u4a97\u4a98\u0007a\u0002\u0002\u4a98\u4a99\u0007H\u0002\u0002",
+ "\u4a99\u4a9a\u0007K\u0002\u0002\u4a9a\u4a9b\u0007N\u0002\u0002\u4a9b",
+ "\u4a9c\u0007V\u0002\u0002\u4a9c\u4a9d\u0007G\u0002\u0002\u4a9d\u4a9e",
+ "\u0007T\u0002\u0002\u4a9e\u0a68\u0003\u0002\u0002\u0002\u4a9f\u4aa0",
+ "\u0007S\u0002\u0002\u4aa0\u4aa1\u0007D\u0002\u0002\u4aa1\u4aa2\u0007",
+ "a\u0002\u0002\u4aa2\u4aa3\u0007P\u0002\u0002\u4aa3\u4aa4\u0007C\u0002",
+ "\u0002\u4aa4\u4aa5\u0007O\u0002\u0002\u4aa5\u4aa6\u0007G\u0002\u0002",
+ "\u4aa6\u0a6a\u0003\u0002\u0002\u0002\u4aa7\u4aa8\u0007S\u0002\u0002",
+ "\u4aa8\u4aa9\u0007W\u0002\u0002\u4aa9\u4aaa\u0007G\u0002\u0002\u4aaa",
+ "\u4aab\u0007T\u0002\u0002\u4aab\u4aac\u0007[\u0002\u0002\u4aac\u4aad",
+ "\u0007a\u0002\u0002\u4aad\u4aae\u0007D\u0002\u0002\u4aae\u4aaf\u0007",
+ "N\u0002\u0002\u4aaf\u4ab0\u0007Q\u0002\u0002\u4ab0\u4ab1\u0007E\u0002",
+ "\u0002\u4ab1\u4ab2\u0007M\u0002\u0002\u4ab2\u0a6c\u0003\u0002\u0002",
+ "\u0002\u4ab3\u4ab4\u0007S\u0002\u0002\u4ab4\u4ab5\u0007W\u0002\u0002",
+ "\u4ab5\u4ab6\u0007G\u0002\u0002\u4ab6\u4ab7\u0007T\u0002\u0002\u4ab7",
+ "\u4ab8\u0007[\u0002\u0002\u4ab8\u0a6e\u0003\u0002\u0002\u0002\u4ab9",
+ "\u4aba\u0007S\u0002\u0002\u4aba\u4abb\u0007W\u0002\u0002\u4abb\u4abc",
+ "\u0007G\u0002\u0002\u4abc\u4abd\u0007W\u0002\u0002\u4abd\u4abe\u0007",
+ "G\u0002\u0002\u4abe\u4abf\u0007a\u0002\u0002\u4abf\u4ac0\u0007E\u0002",
+ "\u0002\u4ac0\u4ac1\u0007W\u0002\u0002\u4ac1\u4ac2\u0007T\u0002\u0002",
+ "\u4ac2\u4ac3\u0007T\u0002\u0002\u4ac3\u0a70\u0003\u0002\u0002\u0002",
+ "\u4ac4\u4ac5\u0007S\u0002\u0002\u4ac5\u4ac6\u0007W\u0002\u0002\u4ac6",
+ "\u4ac7\u0007G\u0002\u0002\u4ac7\u4ac8\u0007W\u0002\u0002\u4ac8\u4ac9",
+ "\u0007G\u0002\u0002\u4ac9\u0a72\u0003\u0002\u0002\u0002\u4aca\u4acb",
+ "\u0007S\u0002\u0002\u4acb\u4acc\u0007W\u0002\u0002\u4acc\u4acd\u0007",
+ "G\u0002\u0002\u4acd\u4ace\u0007W\u0002\u0002\u4ace\u4acf\u0007G\u0002",
+ "\u0002\u4acf\u4ad0\u0007a\u0002\u0002\u4ad0\u4ad1\u0007T\u0002\u0002",
+ "\u4ad1\u4ad2\u0007Q\u0002\u0002\u4ad2\u4ad3\u0007Y\u0002\u0002\u4ad3",
+ "\u4ad4\u0007R\u0002\u0002\u4ad4\u0a74\u0003\u0002\u0002\u0002\u4ad5",
+ "\u4ad6\u0007S\u0002\u0002\u4ad6\u4ad7\u0007W\u0002\u0002\u4ad7\u4ad8",
+ "\u0007K\u0002\u0002\u4ad8\u4ad9\u0007G\u0002\u0002\u4ad9\u4ada\u0007",
+ "U\u0002\u0002\u4ada\u4adb\u0007E\u0002\u0002\u4adb\u4adc\u0007G\u0002",
+ "\u0002\u4adc\u0a76\u0003\u0002\u0002\u0002\u4add\u4ade\u0007S\u0002",
+ "\u0002\u4ade\u4adf\u0007W\u0002\u0002\u4adf\u4ae0\u0007Q\u0002\u0002",
+ "\u4ae0\u4ae1\u0007T\u0002\u0002\u4ae1\u4ae2\u0007W\u0002\u0002\u4ae2",
+ "\u4ae3\u0007O\u0002\u0002\u4ae3\u0a78\u0003\u0002\u0002\u0002\u4ae4",
+ "\u4ae5\u0007S\u0002\u0002\u4ae5\u4ae6\u0007W\u0002\u0002\u4ae6\u4ae7",
+ "\u0007Q\u0002\u0002\u4ae7\u4ae8\u0007V\u0002\u0002\u4ae8\u4ae9\u0007",
+ "C\u0002\u0002\u4ae9\u0a7a\u0003\u0002\u0002\u0002\u4aea\u4aeb\u0007",
+ "T\u0002\u0002\u4aeb\u4aec\u0007C\u0002\u0002\u4aec\u4aed\u0007K\u0002",
+ "\u0002\u4aed\u4aee\u0007U\u0002\u0002\u4aee\u4aef\u0007G\u0002\u0002",
+ "\u4aef\u0a7c\u0003\u0002\u0002\u0002\u4af0\u4af1\u0007T\u0002\u0002",
+ "\u4af1\u4af2\u0007C\u0002\u0002\u4af2\u4af3\u0007P\u0002\u0002\u4af3",
+ "\u4af4\u0007F\u0002\u0002\u4af4\u4af5\u0007Q\u0002\u0002\u4af5\u4af6",
+ "\u0007O\u0002\u0002\u4af6\u4af7\u0007a\u0002\u0002\u4af7\u4af8\u0007",
+ "N\u0002\u0002\u4af8\u4af9\u0007Q\u0002\u0002\u4af9\u4afa\u0007E\u0002",
+ "\u0002\u4afa\u4afb\u0007C\u0002\u0002\u4afb\u4afc\u0007N\u0002\u0002",
+ "\u4afc\u0a7e\u0003\u0002\u0002\u0002\u4afd\u4afe\u0007T\u0002\u0002",
+ "\u4afe\u4aff\u0007C\u0002\u0002\u4aff\u4b00\u0007P\u0002\u0002\u4b00",
+ "\u4b01\u0007F\u0002\u0002\u4b01\u4b02\u0007Q\u0002\u0002\u4b02\u4b03",
+ "\u0007O\u0002\u0002\u4b03\u0a80\u0003\u0002\u0002\u0002\u4b04\u4b05",
+ "\u0007T\u0002\u0002\u4b05\u4b06\u0007C\u0002\u0002\u4b06\u4b07\u0007",
+ "P\u0002\u0002\u4b07\u4b08\u0007I\u0002\u0002\u4b08\u4b09\u0007G\u0002",
+ "\u0002\u4b09\u0a82\u0003\u0002\u0002\u0002\u4b0a\u4b0b\u0007T\u0002",
+ "\u0002\u4b0b\u4b0c\u0007C\u0002\u0002\u4b0c\u4b0d\u0007P\u0002\u0002",
+ "\u4b0d\u4b0e\u0007M\u0002\u0002\u4b0e\u4b0f\u0007O\u0002\u0002\u4b0f",
+ "\u0a84\u0003\u0002\u0002\u0002\u4b10\u4b11\u0007T\u0002\u0002\u4b11",
+ "\u4b12\u0007C\u0002\u0002\u4b12\u4b13\u0007R\u0002\u0002\u4b13\u4b14",
+ "\u0007K\u0002\u0002\u4b14\u4b15\u0007F\u0002\u0002\u4b15\u4b16\u0007",
+ "N\u0002\u0002\u4b16\u4b17\u0007[\u0002\u0002\u4b17\u0a86\u0003\u0002",
+ "\u0002\u0002\u4b18\u4b19\u0007T\u0002\u0002\u4b19\u4b1a\u0007C\u0002",
+ "\u0002\u4b1a\u4b1b\u0007Y\u0002\u0002\u4b1b\u0a88\u0003\u0002\u0002",
+ "\u0002\u4b1c\u4b1d\u0007T\u0002\u0002\u4b1d\u4b1e\u0007C\u0002\u0002",
+ "\u4b1e\u4b1f\u0007Y\u0002\u0002\u4b1f\u4b20\u0007V\u0002\u0002\u4b20",
+ "\u4b21\u0007Q\u0002\u0002\u4b21\u4b22\u0007J\u0002\u0002\u4b22\u4b23",
+ "\u0007G\u0002\u0002\u4b23\u4b24\u0007Z\u0002\u0002\u4b24\u0a8a\u0003",
+ "\u0002\u0002\u0002\u4b25\u4b26\u0007T\u0002\u0002\u4b26\u4b27\u0007",
+ "C\u0002\u0002\u4b27\u4b28\u0007Y\u0002\u0002\u4b28\u4b29\u0007V\u0002",
+ "\u0002\u4b29\u4b2a\u0007Q\u0002\u0002\u4b2a\u4b2b\u0007P\u0002\u0002",
+ "\u4b2b\u4b2c\u0007J\u0002\u0002\u4b2c\u4b2d\u0007G\u0002\u0002\u4b2d",
+ "\u4b2e\u0007Z\u0002\u0002\u4b2e\u0a8c\u0003\u0002\u0002\u0002\u4b2f",
+ "\u4b30\u0007T\u0002\u0002\u4b30\u4b31\u0007D\u0002\u0002\u4b31\u4b32",
+ "\u0007C\u0002\u0002\u4b32\u0a8e\u0003\u0002\u0002\u0002\u4b33\u4b34",
+ "\u0007T\u0002\u0002\u4b34\u4b35\u0007D\u0002\u0002\u4b35\u4b36\u0007",
+ "Q\u0002\u0002\u4b36\u4b37\u0007a\u0002\u0002\u4b37\u4b38\u0007Q\u0002",
+ "\u0002\u4b38\u4b39\u0007W\u0002\u0002\u4b39\u4b3a\u0007V\u0002\u0002",
+ "\u4b3a\u4b3b\u0007N\u0002\u0002\u4b3b\u4b3c\u0007K\u0002\u0002\u4b3c",
+ "\u4b3d\u0007P\u0002\u0002\u4b3d\u4b3e\u0007G\u0002\u0002\u4b3e\u0a90",
+ "\u0003\u0002\u0002\u0002\u4b3f\u4b40\u0007T\u0002\u0002\u4b40\u4b41",
+ "\u0007F\u0002\u0002\u4b41\u4b42\u0007D\u0002\u0002\u4b42\u4b43\u0007",
+ "C\u0002\u0002\u4b43\u0a92\u0003\u0002\u0002\u0002\u4b44\u4b45\u0007",
+ "T\u0002\u0002\u4b45\u4b46\u0007G\u0002\u0002\u4b46\u4b47\u0007C\u0002",
+ "\u0002\u4b47\u4b48\u0007F\u0002\u0002\u4b48\u0a94\u0003\u0002\u0002",
+ "\u0002\u4b49\u4b4a\u0007T\u0002\u0002\u4b4a\u4b4b\u0007G\u0002\u0002",
+ "\u4b4b\u4b4c\u0007C\u0002\u0002\u4b4c\u4b4d\u0007F\u0002\u0002\u4b4d",
+ "\u4b4e\u0007U\u0002\u0002\u4b4e\u0a96\u0003\u0002\u0002\u0002\u4b4f",
+ "\u4b50\u0007T\u0002\u0002\u4b50\u4b51\u0007G\u0002\u0002\u4b51\u4b52",
+ "\u0007C\u0002\u0002\u4b52\u4b53\u0007N\u0002\u0002\u4b53\u4b54\u0007",
+ "O\u0002\u0002\u4b54\u0a98\u0003\u0002\u0002\u0002\u4b55\u4b56\u0007",
+ "T\u0002\u0002\u4b56\u4b57\u0007G\u0002\u0002\u4b57\u4b58\u0007C\u0002",
+ "\u0002\u4b58\u4b59\u0007N\u0002\u0002\u4b59\u0a9a\u0003\u0002\u0002",
+ "\u0002\u4b5a\u4b5b\u0007T\u0002\u0002\u4b5b\u4b5c\u0007G\u0002\u0002",
+ "\u4b5c\u4b5d\u0007D\u0002\u0002\u4b5d\u4b5e\u0007C\u0002\u0002\u4b5e",
+ "\u4b5f\u0007N\u0002\u0002\u4b5f\u4b60\u0007C\u0002\u0002\u4b60\u4b61",
+ "\u0007P\u0002\u0002\u4b61\u4b62\u0007E\u0002\u0002\u4b62\u4b63\u0007",
+ "G\u0002\u0002\u4b63\u0a9c\u0003\u0002\u0002\u0002\u4b64\u4b65\u0007",
+ "T\u0002\u0002\u4b65\u4b66\u0007G\u0002\u0002\u4b66\u4b67\u0007D\u0002",
+ "\u0002\u4b67\u4b68\u0007W\u0002\u0002\u4b68\u4b69\u0007K\u0002\u0002",
+ "\u4b69\u4b6a\u0007N\u0002\u0002\u4b6a\u4b6b\u0007F\u0002\u0002\u4b6b",
+ "\u0a9e\u0003\u0002\u0002\u0002\u4b6c\u4b6d\u0007T\u0002\u0002\u4b6d",
+ "\u4b6e\u0007G\u0002\u0002\u4b6e\u4b6f\u0007E\u0002\u0002\u4b6f\u4b70",
+ "\u0007Q\u0002\u0002\u4b70\u4b71\u0007T\u0002\u0002\u4b71\u4b72\u0007",
+ "F\u0002\u0002\u4b72\u0aa0\u0003\u0002\u0002\u0002\u4b73\u4b74\u0007",
+ "T\u0002\u0002\u4b74\u4b75\u0007G\u0002\u0002\u4b75\u4b76\u0007E\u0002",
+ "\u0002\u4b76\u4b77\u0007Q\u0002\u0002\u4b77\u4b78\u0007T\u0002\u0002",
+ "\u4b78\u4b79\u0007F\u0002\u0002\u4b79\u4b7a\u0007U\u0002\u0002\u4b7a",
+ "\u4b7b\u0007a\u0002\u0002\u4b7b\u4b7c\u0007R\u0002\u0002\u4b7c\u4b7d",
+ "\u0007G\u0002\u0002\u4b7d\u4b7e\u0007T\u0002\u0002\u4b7e\u4b7f\u0007",
+ "a\u0002\u0002\u4b7f\u4b80\u0007D\u0002\u0002\u4b80\u4b81\u0007N\u0002",
+ "\u0002\u4b81\u4b82\u0007Q\u0002\u0002\u4b82\u4b83\u0007E\u0002\u0002",
+ "\u4b83\u4b84\u0007M\u0002\u0002\u4b84\u0aa2\u0003\u0002\u0002\u0002",
+ "\u4b85\u4b86\u0007T\u0002\u0002\u4b86\u4b87\u0007G\u0002\u0002\u4b87",
+ "\u4b88\u0007E\u0002\u0002\u4b88\u4b89\u0007Q\u0002\u0002\u4b89\u4b8a",
+ "\u0007X\u0002\u0002\u4b8a\u4b8b\u0007G\u0002\u0002\u4b8b\u4b8c\u0007",
+ "T\u0002\u0002\u4b8c\u4b8d\u0007C\u0002\u0002\u4b8d\u4b8e\u0007D\u0002",
+ "\u0002\u4b8e\u4b8f\u0007N\u0002\u0002\u4b8f\u4b90\u0007G\u0002\u0002",
+ "\u4b90\u0aa4\u0003\u0002\u0002\u0002\u4b91\u4b92\u0007T\u0002\u0002",
+ "\u4b92\u4b93\u0007G\u0002\u0002\u4b93\u4b94\u0007E\u0002\u0002\u4b94",
+ "\u4b95\u0007Q\u0002\u0002\u4b95\u4b96\u0007X\u0002\u0002\u4b96\u4b97",
+ "\u0007G\u0002\u0002\u4b97\u4b98\u0007T\u0002\u0002\u4b98\u0aa6\u0003",
+ "\u0002\u0002\u0002\u4b99\u4b9a\u0007T\u0002\u0002\u4b9a\u4b9b\u0007",
+ "G\u0002\u0002\u4b9b\u4b9c\u0007E\u0002\u0002\u4b9c\u4b9d\u0007Q\u0002",
+ "\u0002\u4b9d\u4b9e\u0007X\u0002\u0002\u4b9e\u4b9f\u0007G\u0002\u0002",
+ "\u4b9f\u4ba0\u0007T\u0002\u0002\u4ba0\u4ba1\u0007[\u0002\u0002\u4ba1",
+ "\u0aa8\u0003\u0002\u0002\u0002\u4ba2\u4ba3\u0007T\u0002\u0002\u4ba3",
+ "\u4ba4\u0007G\u0002\u0002\u4ba4\u4ba5\u0007E\u0002\u0002\u4ba5\u4ba6",
+ "\u0007[\u0002\u0002\u4ba6\u4ba7\u0007E\u0002\u0002\u4ba7\u4ba8\u0007",
+ "N\u0002\u0002\u4ba8\u4ba9\u0007G\u0002\u0002\u4ba9\u4baa\u0007D\u0002",
+ "\u0002\u4baa\u4bab\u0007K\u0002\u0002\u4bab\u4bac\u0007P\u0002\u0002",
+ "\u4bac\u0aaa\u0003\u0002\u0002\u0002\u4bad\u4bae\u0007T\u0002\u0002",
+ "\u4bae\u4baf\u0007G\u0002\u0002\u4baf\u4bb0\u0007E\u0002\u0002\u4bb0",
+ "\u4bb1\u0007[\u0002\u0002\u4bb1\u4bb2\u0007E\u0002\u0002\u4bb2\u4bb3",
+ "\u0007N\u0002\u0002\u4bb3\u4bb4\u0007G\u0002\u0002\u4bb4\u0aac\u0003",
+ "\u0002\u0002\u0002\u4bb5\u4bb6\u0007T\u0002\u0002\u4bb6\u4bb7\u0007",
+ "G\u0002\u0002\u4bb7\u4bb8\u0007F\u0002\u0002\u4bb8\u4bb9\u0007C\u0002",
+ "\u0002\u4bb9\u4bba\u0007E\u0002\u0002\u4bba\u4bbb\u0007V\u0002\u0002",
+ "\u4bbb\u4bbc\u0007K\u0002\u0002\u4bbc\u4bbd\u0007Q\u0002\u0002\u4bbd",
+ "\u4bbe\u0007P\u0002\u0002\u4bbe\u0aae\u0003\u0002\u0002\u0002\u4bbf",
+ "\u4bc0\u0007T\u0002\u0002\u4bc0\u4bc1\u0007G\u0002\u0002\u4bc1\u4bc2",
+ "\u0007F\u0002\u0002\u4bc2\u4bc3\u0007G\u0002\u0002\u4bc3\u4bc4\u0007",
+ "H\u0002\u0002\u4bc4\u4bc5\u0007K\u0002\u0002\u4bc5\u4bc6\u0007P\u0002",
+ "\u0002\u4bc6\u4bc7\u0007G\u0002\u0002\u4bc7\u0ab0\u0003\u0002\u0002",
+ "\u0002\u4bc8\u4bc9\u0007T\u0002\u0002\u4bc9\u4bca\u0007G\u0002\u0002",
+ "\u4bca\u4bcb\u0007F\u0002\u0002\u4bcb\u4bcc\u0007Q\u0002\u0002\u4bcc",
+ "\u0ab2\u0003\u0002\u0002\u0002\u4bcd\u4bce\u0007T\u0002\u0002\u4bce",
+ "\u4bcf\u0007G\u0002\u0002\u4bcf\u4bd0\u0007F\u0002\u0002\u4bd0\u4bd1",
+ "\u0007W\u0002\u0002\u4bd1\u4bd2\u0007E\u0002\u0002\u4bd2\u4bd3\u0007",
+ "G\u0002\u0002\u4bd3\u4bd4\u0007F\u0002\u0002\u4bd4\u0ab4\u0003\u0002",
+ "\u0002\u0002\u4bd5\u4bd6\u0007T\u0002\u0002\u4bd6\u4bd7\u0007G\u0002",
+ "\u0002\u4bd7\u4bd8\u0007F\u0002\u0002\u4bd8\u4bd9\u0007W\u0002\u0002",
+ "\u4bd9\u4bda\u0007P\u0002\u0002\u4bda\u4bdb\u0007F\u0002\u0002\u4bdb",
+ "\u4bdc\u0007C\u0002\u0002\u4bdc\u4bdd\u0007P\u0002\u0002\u4bdd\u4bde",
+ "\u0007E\u0002\u0002\u4bde\u4bdf\u0007[\u0002\u0002\u4bdf\u0ab6\u0003",
+ "\u0002\u0002\u0002\u4be0\u4be1\u0007T\u0002\u0002\u4be1\u4be2\u0007",
+ "G\u0002\u0002\u4be2\u4be3\u0007H\u0002\u0002\u4be3\u4be4\u0007a\u0002",
+ "\u0002\u4be4\u4be5\u0007E\u0002\u0002\u4be5\u4be6\u0007C\u0002\u0002",
+ "\u4be6\u4be7\u0007U\u0002\u0002\u4be7\u4be8\u0007E\u0002\u0002\u4be8",
+ "\u4be9\u0007C\u0002\u0002\u4be9\u4bea\u0007F\u0002\u0002\u4bea\u4beb",
+ "\u0007G\u0002\u0002\u4beb\u4bec\u0007a\u0002\u0002\u4bec\u4bed\u0007",
+ "E\u0002\u0002\u4bed\u4bee\u0007W\u0002\u0002\u4bee\u4bef\u0007T\u0002",
+ "\u0002\u4bef\u4bf0\u0007U\u0002\u0002\u4bf0\u4bf1\u0007Q\u0002\u0002",
+ "\u4bf1\u4bf2\u0007T\u0002\u0002\u4bf2\u0ab8\u0003\u0002\u0002\u0002",
+ "\u4bf3\u4bf4\u0007T\u0002\u0002\u4bf4\u4bf5\u0007G\u0002\u0002\u4bf5",
+ "\u4bf6\u0007H\u0002\u0002\u4bf6\u4bf7\u0007G\u0002\u0002\u4bf7\u4bf8",
+ "\u0007T\u0002\u0002\u4bf8\u4bf9\u0007G\u0002\u0002\u4bf9\u4bfa\u0007",
+ "P\u0002\u0002\u4bfa\u4bfb\u0007E\u0002\u0002\u4bfb\u4bfc\u0007G\u0002",
+ "\u0002\u4bfc\u4bfd\u0007F\u0002\u0002\u4bfd\u0aba\u0003\u0002\u0002",
+ "\u0002\u4bfe\u4bff\u0007T\u0002\u0002\u4bff\u4c00\u0007G\u0002\u0002",
+ "\u4c00\u4c01\u0007H\u0002\u0002\u4c01\u4c02\u0007G\u0002\u0002\u4c02",
+ "\u4c03\u0007T\u0002\u0002\u4c03\u4c04\u0007G\u0002\u0002\u4c04\u4c05",
+ "\u0007P\u0002\u0002\u4c05\u4c06\u0007E\u0002\u0002\u4c06\u4c07\u0007",
+ "G\u0002\u0002\u4c07\u0abc\u0003\u0002\u0002\u0002\u4c08\u4c09\u0007",
+ "T\u0002\u0002\u4c09\u4c0a\u0007G\u0002\u0002\u4c0a\u4c0b\u0007H\u0002",
+ "\u0002\u4c0b\u4c0c\u0007G\u0002\u0002\u4c0c\u4c0d\u0007T\u0002\u0002",
+ "\u4c0d\u4c0e\u0007G\u0002\u0002\u4c0e\u4c0f\u0007P\u0002\u0002\u4c0f",
+ "\u4c10\u0007E\u0002\u0002\u4c10\u4c11\u0007G\u0002\u0002\u4c11\u4c12",
+ "\u0007U\u0002\u0002\u4c12\u0abe\u0003\u0002\u0002\u0002\u4c13\u4c14",
+ "\u0007T\u0002\u0002\u4c14\u4c15\u0007G\u0002\u0002\u4c15\u4c16\u0007",
+ "H\u0002\u0002\u4c16\u4c17\u0007G\u0002\u0002\u4c17\u4c18\u0007T\u0002",
+ "\u0002\u4c18\u4c19\u0007G\u0002\u0002\u4c19\u4c1a\u0007P\u0002\u0002",
+ "\u4c1a\u4c1b\u0007E\u0002\u0002\u4c1b\u4c1c\u0007K\u0002\u0002\u4c1c",
+ "\u4c1d\u0007P\u0002\u0002\u4c1d\u4c1e\u0007I\u0002\u0002\u4c1e\u0ac0",
+ "\u0003\u0002\u0002\u0002\u4c1f\u4c20\u0007T\u0002\u0002\u4c20\u4c21",
+ "\u0007G\u0002\u0002\u4c21\u4c22\u0007H\u0002\u0002\u4c22\u0ac2\u0003",
+ "\u0002\u0002\u0002\u4c23\u4c24\u0007T\u0002\u0002\u4c24\u4c25\u0007",
+ "G\u0002\u0002\u4c25\u4c26\u0007H\u0002\u0002\u4c26\u4c27\u0007T\u0002",
+ "\u0002\u4c27\u4c28\u0007G\u0002\u0002\u4c28\u4c29\u0007U\u0002\u0002",
+ "\u4c29\u4c2a\u0007J\u0002\u0002\u4c2a\u0ac4\u0003\u0002\u0002\u0002",
+ "\u4c2b\u4c2c\u0007T\u0002\u0002\u4c2c\u4c2d\u0007G\u0002\u0002\u4c2d",
+ "\u4c2e\u0007H\u0002\u0002\u4c2e\u4c2f\u0007V\u0002\u0002\u4c2f\u4c30",
+ "\u0007Q\u0002\u0002\u4c30\u4c31\u0007J\u0002\u0002\u4c31\u4c32\u0007",
+ "G\u0002\u0002\u4c32\u4c33\u0007Z\u0002\u0002\u4c33\u0ac6\u0003\u0002",
+ "\u0002\u0002\u4c34\u4c35\u0007T\u0002\u0002\u4c35\u4c36\u0007G\u0002",
+ "\u0002\u4c36\u4c37\u0007I\u0002\u0002\u4c37\u4c38\u0007G\u0002\u0002",
+ "\u4c38\u4c39\u0007Z\u0002\u0002\u4c39\u4c3a\u0007R\u0002\u0002\u4c3a",
+ "\u4c3b\u0007a\u0002\u0002\u4c3b\u4c3c\u0007E\u0002\u0002\u4c3c\u4c3d",
+ "\u0007Q\u0002\u0002\u4c3d\u4c3e\u0007W\u0002\u0002\u4c3e\u4c3f\u0007",
+ "P\u0002\u0002\u4c3f\u4c40\u0007V\u0002\u0002\u4c40\u0ac8\u0003\u0002",
+ "\u0002\u0002\u4c41\u4c42\u0007T\u0002\u0002\u4c42\u4c43\u0007G\u0002",
+ "\u0002\u4c43\u4c44\u0007I\u0002\u0002\u4c44\u4c45\u0007G\u0002\u0002",
+ "\u4c45\u4c46\u0007Z\u0002\u0002\u4c46\u4c47\u0007R\u0002\u0002\u4c47",
+ "\u4c48\u0007a\u0002\u0002\u4c48\u4c49\u0007K\u0002\u0002\u4c49\u4c4a",
+ "\u0007P\u0002\u0002\u4c4a\u4c4b\u0007U\u0002\u0002\u4c4b\u4c4c\u0007",
+ "V\u0002\u0002\u4c4c\u4c4d\u0007T\u0002\u0002\u4c4d\u0aca\u0003\u0002",
+ "\u0002\u0002\u4c4e\u4c4f\u0007T\u0002\u0002\u4c4f\u4c50\u0007G\u0002",
+ "\u0002\u4c50\u4c51\u0007I\u0002\u0002\u4c51\u4c52\u0007G\u0002\u0002",
+ "\u4c52\u4c53\u0007Z\u0002\u0002\u4c53\u4c54\u0007R\u0002\u0002\u4c54",
+ "\u4c55\u0007a\u0002\u0002\u4c55\u4c56\u0007N\u0002\u0002\u4c56\u4c57",
+ "\u0007K\u0002\u0002\u4c57\u4c58\u0007M\u0002\u0002\u4c58\u4c59\u0007",
+ "G\u0002\u0002\u4c59\u0acc\u0003\u0002\u0002\u0002\u4c5a\u4c5b\u0007",
+ "T\u0002\u0002\u4c5b\u4c5c\u0007G\u0002\u0002\u4c5c\u4c5d\u0007I\u0002",
+ "\u0002\u4c5d\u4c5e\u0007G\u0002\u0002\u4c5e\u4c5f\u0007Z\u0002\u0002",
+ "\u4c5f\u4c60\u0007R\u0002\u0002\u4c60\u4c61\u0007a\u0002\u0002\u4c61",
+ "\u4c62\u0007T\u0002\u0002\u4c62\u4c63\u0007G\u0002\u0002\u4c63\u4c64",
+ "\u0007R\u0002\u0002\u4c64\u4c65\u0007N\u0002\u0002\u4c65\u4c66\u0007",
+ "C\u0002\u0002\u4c66\u4c67\u0007E\u0002\u0002\u4c67\u4c68\u0007G\u0002",
+ "\u0002\u4c68\u0ace\u0003\u0002\u0002\u0002\u4c69\u4c6a\u0007T\u0002",
+ "\u0002\u4c6a\u4c6b\u0007G\u0002\u0002\u4c6b\u4c6c\u0007I\u0002\u0002",
+ "\u4c6c\u4c6d\u0007G\u0002\u0002\u4c6d\u4c6e\u0007Z\u0002\u0002\u4c6e",
+ "\u4c6f\u0007R\u0002\u0002\u4c6f\u4c70\u0007a\u0002\u0002\u4c70\u4c71",
+ "\u0007U\u0002\u0002\u4c71\u4c72\u0007W\u0002\u0002\u4c72\u4c73\u0007",
+ "D\u0002\u0002\u4c73\u4c74\u0007U\u0002\u0002\u4c74\u4c75\u0007V\u0002",
+ "\u0002\u4c75\u4c76\u0007T\u0002\u0002\u4c76\u0ad0\u0003\u0002\u0002",
+ "\u0002\u4c77\u4c78\u0007T\u0002\u0002\u4c78\u4c79\u0007G\u0002\u0002",
+ "\u4c79\u4c7a\u0007I\u0002\u0002\u4c7a\u4c7b\u0007K\u0002\u0002\u4c7b",
+ "\u4c7c\u0007U\u0002\u0002\u4c7c\u4c7d\u0007V\u0002\u0002\u4c7d\u4c7e",
+ "\u0007G\u0002\u0002\u4c7e\u4c7f\u0007T\u0002\u0002\u4c7f\u0ad2\u0003",
+ "\u0002\u0002\u0002\u4c80\u4c81\u0007T\u0002\u0002\u4c81\u4c82\u0007",
+ "G\u0002\u0002\u4c82\u4c83\u0007I\u0002\u0002\u4c83\u4c84\u0007T\u0002",
+ "\u0002\u4c84\u4c85\u0007a\u0002\u0002\u4c85\u4c86\u0007C\u0002\u0002",
+ "\u4c86\u4c87\u0007X\u0002\u0002\u4c87\u4c88\u0007I\u0002\u0002\u4c88",
+ "\u4c89\u0007Z\u0002\u0002\u4c89\u0ad4\u0003\u0002\u0002\u0002\u4c8a",
+ "\u4c8b\u0007T\u0002\u0002\u4c8b\u4c8c\u0007G\u0002\u0002\u4c8c\u4c8d",
+ "\u0007I\u0002\u0002\u4c8d\u4c8e\u0007T\u0002\u0002\u4c8e\u4c8f\u0007",
+ "a\u0002\u0002\u4c8f\u4c90\u0007C\u0002\u0002\u4c90\u4c91\u0007X\u0002",
+ "\u0002\u4c91\u4c92\u0007I\u0002\u0002\u4c92\u4c93\u0007[\u0002\u0002",
+ "\u4c93\u0ad6\u0003\u0002\u0002\u0002\u4c94\u4c95\u0007T\u0002\u0002",
+ "\u4c95\u4c96\u0007G\u0002\u0002\u4c96\u4c97\u0007I\u0002\u0002\u4c97",
+ "\u4c98\u0007T\u0002\u0002\u4c98\u4c99\u0007a\u0002\u0002\u4c99\u4c9a",
+ "\u0007E\u0002\u0002\u4c9a\u4c9b\u0007Q\u0002\u0002\u4c9b\u4c9c\u0007",
+ "W\u0002\u0002\u4c9c\u4c9d\u0007P\u0002\u0002\u4c9d\u4c9e\u0007V\u0002",
+ "\u0002\u4c9e\u0ad8\u0003\u0002\u0002\u0002\u4c9f\u4ca0\u0007T\u0002",
+ "\u0002\u4ca0\u4ca1\u0007G\u0002\u0002\u4ca1\u4ca2\u0007I\u0002\u0002",
+ "\u4ca2\u4ca3\u0007T\u0002\u0002\u4ca3\u4ca4\u0007a\u0002\u0002\u4ca4",
+ "\u4ca5\u0007K\u0002\u0002\u4ca5\u4ca6\u0007P\u0002\u0002\u4ca6\u4ca7",
+ "\u0007V\u0002\u0002\u4ca7\u4ca8\u0007G\u0002\u0002\u4ca8\u4ca9\u0007",
+ "T\u0002\u0002\u4ca9\u4caa\u0007E\u0002\u0002\u4caa\u4cab\u0007G\u0002",
+ "\u0002\u4cab\u4cac\u0007R\u0002\u0002\u4cac\u4cad\u0007V\u0002\u0002",
+ "\u4cad\u0ada\u0003\u0002\u0002\u0002\u4cae\u4caf\u0007T\u0002\u0002",
+ "\u4caf\u4cb0\u0007G\u0002\u0002\u4cb0\u4cb1\u0007I\u0002\u0002\u4cb1",
+ "\u4cb2\u0007T\u0002\u0002\u4cb2\u4cb3\u0007a\u0002\u0002\u4cb3\u4cb4",
+ "\u0007T\u0002\u0002\u4cb4\u4cb5\u00074\u0002\u0002\u4cb5\u0adc\u0003",
+ "\u0002\u0002\u0002\u4cb6\u4cb7\u0007T\u0002\u0002\u4cb7\u4cb8\u0007",
+ "G\u0002\u0002\u4cb8\u4cb9\u0007I\u0002\u0002\u4cb9\u4cba\u0007T\u0002",
+ "\u0002\u4cba\u4cbb\u0007a\u0002\u0002\u4cbb\u4cbc\u0007U\u0002\u0002",
+ "\u4cbc\u4cbd\u0007N\u0002\u0002\u4cbd\u4cbe\u0007Q\u0002\u0002\u4cbe",
+ "\u4cbf\u0007R\u0002\u0002\u4cbf\u4cc0\u0007G\u0002\u0002\u4cc0\u0ade",
+ "\u0003\u0002\u0002\u0002\u4cc1\u4cc2\u0007T\u0002\u0002\u4cc2\u4cc3",
+ "\u0007G\u0002\u0002\u4cc3\u4cc4\u0007I\u0002\u0002\u4cc4\u4cc5\u0007",
+ "T\u0002\u0002\u4cc5\u4cc6\u0007a\u0002\u0002\u4cc6\u4cc7\u0007U\u0002",
+ "\u0002\u4cc7\u4cc8\u0007Z\u0002\u0002\u4cc8\u4cc9\u0007Z\u0002\u0002",
+ "\u4cc9\u0ae0\u0003\u0002\u0002\u0002\u4cca\u4ccb\u0007T\u0002\u0002",
+ "\u4ccb\u4ccc\u0007G\u0002\u0002\u4ccc\u4ccd\u0007I\u0002\u0002\u4ccd",
+ "\u4cce\u0007T\u0002\u0002\u4cce\u4ccf\u0007a\u0002\u0002\u4ccf\u4cd0",
+ "\u0007U\u0002\u0002\u4cd0\u4cd1\u0007Z\u0002\u0002\u4cd1\u4cd2\u0007",
+ "[\u0002\u0002\u4cd2\u0ae2\u0003\u0002\u0002\u0002\u4cd3\u4cd4\u0007",
+ "T\u0002\u0002\u4cd4\u4cd5\u0007G\u0002\u0002\u4cd5\u4cd6\u0007I\u0002",
+ "\u0002\u4cd6\u4cd7\u0007T\u0002\u0002\u4cd7\u4cd8\u0007a\u0002\u0002",
+ "\u4cd8\u4cd9\u0007U\u0002\u0002\u4cd9\u4cda\u0007[\u0002\u0002\u4cda",
+ "\u4cdb\u0007[\u0002\u0002\u4cdb\u0ae4\u0003\u0002\u0002\u0002\u4cdc",
+ "\u4cdd\u0007T\u0002\u0002\u4cdd\u4cde\u0007G\u0002\u0002\u4cde\u4cdf",
+ "\u0007I\u0002\u0002\u4cdf\u4ce0\u0007W\u0002\u0002\u4ce0\u4ce1\u0007",
+ "N\u0002\u0002\u4ce1\u4ce2\u0007C\u0002\u0002\u4ce2\u4ce3\u0007T\u0002",
+ "\u0002\u4ce3\u0ae6\u0003\u0002\u0002\u0002\u4ce4\u4ce5\u0007T\u0002",
+ "\u0002\u4ce5\u4ce6\u0007G\u0002\u0002\u4ce6\u4ce7\u0007L\u0002\u0002",
+ "\u4ce7\u4ce8\u0007G\u0002\u0002\u4ce8\u4ce9\u0007E\u0002\u0002\u4ce9",
+ "\u4cea\u0007V\u0002\u0002\u4cea\u0ae8\u0003\u0002\u0002\u0002\u4ceb",
+ "\u4cec\u0007T\u0002\u0002\u4cec\u4ced\u0007G\u0002\u0002\u4ced\u4cee",
+ "\u0007M\u0002\u0002\u4cee\u4cef\u0007G\u0002\u0002\u4cef\u4cf0\u0007",
+ "[\u0002\u0002\u4cf0\u0aea\u0003\u0002\u0002\u0002\u4cf1\u4cf2\u0007",
+ "T\u0002\u0002\u4cf2\u4cf3\u0007G\u0002\u0002\u4cf3\u4cf4\u0007N\u0002",
+ "\u0002\u4cf4\u4cf5\u0007C\u0002\u0002\u4cf5\u4cf6\u0007V\u0002\u0002",
+ "\u4cf6\u4cf7\u0007K\u0002\u0002\u4cf7\u4cf8\u0007Q\u0002\u0002\u4cf8",
+ "\u4cf9\u0007P\u0002\u0002\u4cf9\u4cfa\u0007C\u0002\u0002\u4cfa\u4cfb",
+ "\u0007N\u0002\u0002\u4cfb\u0aec\u0003\u0002\u0002\u0002\u4cfc\u4cfd",
+ "\u0007T\u0002\u0002\u4cfd\u4cfe\u0007G\u0002\u0002\u4cfe\u4cff\u0007",
+ "N\u0002\u0002\u4cff\u4d00\u0007K\u0002\u0002\u4d00\u4d01\u0007G\u0002",
+ "\u0002\u4d01\u4d02\u0007U\u0002\u0002\u4d02\u4d03\u0007a\u0002\u0002",
+ "\u4d03\u4d04\u0007Q\u0002\u0002\u4d04\u4d05\u0007P\u0002\u0002\u4d05",
+ "\u0aee\u0003\u0002\u0002\u0002\u4d06\u4d07\u0007T\u0002\u0002\u4d07",
+ "\u4d08\u0007G\u0002\u0002\u4d08\u4d09\u0007N\u0002\u0002\u4d09\u4d0a",
+ "\u0007Q\u0002\u0002\u4d0a\u4d0b\u0007E\u0002\u0002\u4d0b\u4d0c\u0007",
+ "C\u0002\u0002\u4d0c\u4d0d\u0007V\u0002\u0002\u4d0d\u4d0e\u0007G\u0002",
+ "\u0002\u4d0e\u0af0\u0003\u0002\u0002\u0002\u4d0f\u4d10\u0007T\u0002",
+ "\u0002\u4d10\u4d11\u0007G\u0002\u0002\u4d11\u4d12\u0007N\u0002\u0002",
+ "\u4d12\u4d13\u0007[\u0002\u0002\u4d13\u0af2\u0003\u0002\u0002\u0002",
+ "\u4d14\u4d15\u0007T\u0002\u0002\u4d15\u4d16\u0007G\u0002\u0002\u4d16",
+ "\u4d17\u0007O\u0002\u0002\u4d17\u4d18\u0007C\u0002\u0002\u4d18\u4d19",
+ "\u0007K\u0002\u0002\u4d19\u4d1a\u0007P\u0002\u0002\u4d1a\u4d1b\u0007",
+ "F\u0002\u0002\u4d1b\u4d1c\u0007G\u0002\u0002\u4d1c\u4d1d\u0007T\u0002",
+ "\u0002\u4d1d\u0af4\u0003\u0002\u0002\u0002\u4d1e\u4d1f\u0007T\u0002",
+ "\u0002\u4d1f\u4d20\u0007G\u0002\u0002\u4d20\u4d21\u0007O\u0002\u0002",
+ "\u4d21\u4d22\u0007Q\u0002\u0002\u4d22\u4d23\u0007V\u0002\u0002\u4d23",
+ "\u4d24\u0007G\u0002\u0002\u4d24\u4d25\u0007a\u0002\u0002\u4d25\u4d26",
+ "\u0007O\u0002\u0002\u4d26\u4d27\u0007C\u0002\u0002\u4d27\u4d28\u0007",
+ "R\u0002\u0002\u4d28\u4d29\u0007R\u0002\u0002\u4d29\u4d2a\u0007G\u0002",
+ "\u0002\u4d2a\u4d2b\u0007F\u0002\u0002\u4d2b\u0af6\u0003\u0002\u0002",
+ "\u0002\u4d2c\u4d2d\u0007T\u0002\u0002\u4d2d\u4d2e\u0007G\u0002\u0002",
+ "\u4d2e\u4d2f\u0007O\u0002\u0002\u4d2f\u4d30\u0007Q\u0002\u0002\u4d30",
+ "\u4d31\u0007X\u0002\u0002\u4d31\u4d32\u0007G\u0002\u0002\u4d32\u0af8",
+ "\u0003\u0002\u0002\u0002\u4d33\u4d34\u0007T\u0002\u0002\u4d34\u4d35",
+ "\u0007G\u0002\u0002\u4d35\u4d36\u0007P\u0002\u0002\u4d36\u4d37\u0007",
+ "C\u0002\u0002\u4d37\u4d38\u0007O\u0002\u0002\u4d38\u4d39\u0007G\u0002",
+ "\u0002\u4d39\u0afa\u0003\u0002\u0002\u0002\u4d3a\u4d3b\u0007T\u0002",
+ "\u0002\u4d3b\u4d3c\u0007G\u0002\u0002\u4d3c\u4d3d\u0007R\u0002\u0002",
+ "\u4d3d\u4d3e\u0007C\u0002\u0002\u4d3e\u4d3f\u0007K\u0002\u0002\u4d3f",
+ "\u4d40\u0007T\u0002\u0002\u4d40\u0afc\u0003\u0002\u0002\u0002\u4d41",
+ "\u4d42\u0007T\u0002\u0002\u4d42\u4d43\u0007G\u0002\u0002\u4d43\u4d44",
+ "\u0007R\u0002\u0002\u4d44\u4d45\u0007G\u0002\u0002\u4d45\u4d46\u0007",
+ "C\u0002\u0002\u4d46\u4d47\u0007V\u0002\u0002\u4d47\u0afe\u0003\u0002",
+ "\u0002\u0002\u4d48\u4d49\u0007T\u0002\u0002\u4d49\u4d4a\u0007G\u0002",
+ "\u0002\u4d4a\u4d4b\u0007R\u0002\u0002\u4d4b\u4d4c\u0007N\u0002\u0002",
+ "\u4d4c\u4d4d\u0007C\u0002\u0002\u4d4d\u4d4e\u0007E\u0002\u0002\u4d4e",
+ "\u4d4f\u0007G\u0002\u0002\u4d4f\u0b00\u0003\u0002\u0002\u0002\u4d50",
+ "\u4d51\u0007T\u0002\u0002\u4d51\u4d52\u0007G\u0002\u0002\u4d52\u4d53",
+ "\u0007R\u0002\u0002\u4d53\u4d54\u0007N\u0002\u0002\u4d54\u4d55\u0007",
+ "K\u0002\u0002\u4d55\u4d56\u0007E\u0002\u0002\u4d56\u4d57\u0007C\u0002",
+ "\u0002\u4d57\u4d58\u0007V\u0002\u0002\u4d58\u4d59\u0007K\u0002\u0002",
+ "\u4d59\u4d5a\u0007Q\u0002\u0002\u4d5a\u4d5b\u0007P\u0002\u0002\u4d5b",
+ "\u0b02\u0003\u0002\u0002\u0002\u4d5c\u4d5d\u0007T\u0002\u0002\u4d5d",
+ "\u4d5e\u0007G\u0002\u0002\u4d5e\u4d5f\u0007S\u0002\u0002\u4d5f\u4d60",
+ "\u0007W\u0002\u0002\u4d60\u4d61\u0007K\u0002\u0002\u4d61\u4d62\u0007",
+ "T\u0002\u0002\u4d62\u4d63\u0007G\u0002\u0002\u4d63\u4d64\u0007F\u0002",
+ "\u0002\u4d64\u0b04\u0003\u0002\u0002\u0002\u4d65\u4d66\u0007T\u0002",
+ "\u0002\u4d66\u4d67\u0007G\u0002\u0002\u4d67\u4d68\u0007U\u0002\u0002",
+ "\u4d68\u4d69\u0007G\u0002\u0002\u4d69\u4d6a\u0007V\u0002\u0002\u4d6a",
+ "\u4d6b\u0007N\u0002\u0002\u4d6b\u4d6c\u0007Q\u0002\u0002\u4d6c\u4d6d",
+ "\u0007I\u0002\u0002\u4d6d\u4d6e\u0007U\u0002\u0002\u4d6e\u0b06\u0003",
+ "\u0002\u0002\u0002\u4d6f\u4d70\u0007T\u0002\u0002\u4d70\u4d71\u0007",
+ "G\u0002\u0002\u4d71\u4d72\u0007U\u0002\u0002\u4d72\u4d73\u0007G\u0002",
+ "\u0002\u4d73\u4d74\u0007V\u0002\u0002\u4d74\u0b08\u0003\u0002\u0002",
+ "\u0002\u4d75\u4d76\u0007T\u0002\u0002\u4d76\u4d77\u0007G\u0002\u0002",
+ "\u4d77\u4d78\u0007U\u0002\u0002\u4d78\u4d79\u0007K\u0002\u0002\u4d79",
+ "\u4d7a\u0007\\\u0002\u0002\u4d7a\u4d7b\u0007G\u0002\u0002\u4d7b\u0b0a",
+ "\u0003\u0002\u0002\u0002\u4d7c\u4d7d\u0007T\u0002\u0002\u4d7d\u4d7e",
+ "\u0007G\u0002\u0002\u4d7e\u4d7f\u0007U\u0002\u0002\u4d7f\u4d80\u0007",
+ "Q\u0002\u0002\u4d80\u4d81\u0007N\u0002\u0002\u4d81\u4d82\u0007X\u0002",
+ "\u0002\u4d82\u4d83\u0007G\u0002\u0002\u4d83\u0b0c\u0003\u0002\u0002",
+ "\u0002\u4d84\u4d85\u0007T\u0002\u0002\u4d85\u4d86\u0007G\u0002\u0002",
+ "\u4d86\u4d87\u0007U\u0002\u0002\u4d87\u4d88\u0007Q\u0002\u0002\u4d88",
+ "\u4d89\u0007N\u0002\u0002\u4d89\u4d8a\u0007X\u0002\u0002\u4d8a\u4d8b",
+ "\u0007G\u0002\u0002\u4d8b\u4d8c\u0007T\u0002\u0002\u4d8c\u0b0e\u0003",
+ "\u0002\u0002\u0002\u4d8d\u4d8e\u0007T\u0002\u0002\u4d8e\u4d8f\u0007",
+ "G\u0002\u0002\u4d8f\u4d90\u0007U\u0002\u0002\u4d90\u4d91\u0007Q\u0002",
+ "\u0002\u4d91\u4d92\u0007W\u0002\u0002\u4d92\u4d93\u0007T\u0002\u0002",
+ "\u4d93\u4d94\u0007E\u0002\u0002\u4d94\u4d95\u0007G\u0002\u0002\u4d95",
+ "\u0b10\u0003\u0002\u0002\u0002\u4d96\u4d97\u0007T\u0002\u0002\u4d97",
+ "\u4d98\u0007G\u0002\u0002\u4d98\u4d99\u0007U\u0002\u0002\u4d99\u4d9a",
+ "\u0007R\u0002\u0002\u4d9a\u4d9b\u0007G\u0002\u0002\u4d9b\u4d9c\u0007",
+ "E\u0002\u0002\u4d9c\u4d9d\u0007V\u0002\u0002\u4d9d\u0b12\u0003\u0002",
+ "\u0002\u0002\u4d9e\u4d9f\u0007T\u0002\u0002\u4d9f\u4da0\u0007G\u0002",
+ "\u0002\u4da0\u4da1\u0007U\u0002\u0002\u4da1\u4da2\u0007V\u0002\u0002",
+ "\u4da2\u4da3\u0007C\u0002\u0002\u4da3\u4da4\u0007T\u0002\u0002\u4da4",
+ "\u4da5\u0007V\u0002\u0002\u4da5\u0b14\u0003\u0002\u0002\u0002\u4da6",
+ "\u4da7\u0007T\u0002\u0002\u4da7\u4da8\u0007G\u0002\u0002\u4da8\u4da9",
+ "\u0007U\u0002\u0002\u4da9\u4daa\u0007V\u0002\u0002\u4daa\u4dab\u0007",
+ "Q\u0002\u0002\u4dab\u4dac\u0007T\u0002\u0002\u4dac\u4dad\u0007G\u0002",
+ "\u0002\u4dad\u4dae\u0007a\u0002\u0002\u4dae\u4daf\u0007C\u0002\u0002",
+ "\u4daf\u4db0\u0007U\u0002\u0002\u4db0\u4db1\u0007a\u0002\u0002\u4db1",
+ "\u4db2\u0007K\u0002\u0002\u4db2\u4db3\u0007P\u0002\u0002\u4db3\u4db4",
+ "\u0007V\u0002\u0002\u4db4\u4db5\u0007G\u0002\u0002\u4db5\u4db6\u0007",
+ "T\u0002\u0002\u4db6\u4db7\u0007X\u0002\u0002\u4db7\u4db8\u0007C\u0002",
+ "\u0002\u4db8\u4db9\u0007N\u0002\u0002\u4db9\u4dba\u0007U\u0002\u0002",
+ "\u4dba\u0b16\u0003\u0002\u0002\u0002\u4dbb\u4dbc\u0007T\u0002\u0002",
+ "\u4dbc\u4dbd\u0007G\u0002\u0002\u4dbd\u4dbe\u0007U\u0002\u0002\u4dbe",
+ "\u4dbf\u0007V\u0002\u0002\u4dbf\u4dc0\u0007Q\u0002\u0002\u4dc0\u4dc1",
+ "\u0007T\u0002\u0002\u4dc1\u4dc2\u0007G\u0002\u0002\u4dc2\u0b18\u0003",
+ "\u0002\u0002\u0002\u4dc3\u4dc4\u0007T\u0002\u0002\u4dc4\u4dc5\u0007",
+ "G\u0002\u0002\u4dc5\u4dc6\u0007U\u0002\u0002\u4dc6\u4dc7\u0007V\u0002",
+ "\u0002\u4dc7\u4dc8\u0007T\u0002\u0002\u4dc8\u4dc9\u0007K\u0002\u0002",
+ "\u4dc9\u4dca\u0007E\u0002\u0002\u4dca\u4dcb\u0007V\u0002\u0002\u4dcb",
+ "\u4dcc\u0007a\u0002\u0002\u4dcc\u4dcd\u0007C\u0002\u0002\u4dcd\u4dce",
+ "\u0007N\u0002\u0002\u4dce\u4dcf\u0007N\u0002\u0002\u4dcf\u4dd0\u0007",
+ "a\u0002\u0002\u4dd0\u4dd1\u0007T\u0002\u0002\u4dd1\u4dd2\u0007G\u0002",
+ "\u0002\u4dd2\u4dd3\u0007H\u0002\u0002\u4dd3\u4dd4\u0007a\u0002\u0002",
+ "\u4dd4\u4dd5\u0007E\u0002\u0002\u4dd5\u4dd6\u0007Q\u0002\u0002\u4dd6",
+ "\u4dd7\u0007P\u0002\u0002\u4dd7\u4dd8\u0007U\u0002\u0002\u4dd8\u0b1a",
+ "\u0003\u0002\u0002\u0002\u4dd9\u4dda\u0007T\u0002\u0002\u4dda\u4ddb",
+ "\u0007G\u0002\u0002\u4ddb\u4ddc\u0007U\u0002\u0002\u4ddc\u4ddd\u0007",
+ "V\u0002\u0002\u4ddd\u4dde\u0007T\u0002\u0002\u4dde\u4ddf\u0007K\u0002",
+ "\u0002\u4ddf\u4de0\u0007E\u0002\u0002\u4de0\u4de1\u0007V\u0002\u0002",
+ "\u4de1\u4de2\u0007G\u0002\u0002\u4de2\u4de3\u0007F\u0002\u0002\u4de3",
+ "\u0b1c\u0003\u0002\u0002\u0002\u4de4\u4de5\u0007T\u0002\u0002\u4de5",
+ "\u4de6\u0007G\u0002\u0002\u4de6\u4de7\u0007U\u0002\u0002\u4de7\u4de8",
+ "\u0007V\u0002\u0002\u4de8\u4de9\u0007T\u0002\u0002\u4de9\u4dea\u0007",
+ "K\u0002\u0002\u4dea\u4deb\u0007E\u0002\u0002\u4deb\u4dec\u0007V\u0002",
+ "\u0002\u4dec\u4ded\u0007a\u0002\u0002\u4ded\u4dee\u0007T\u0002\u0002",
+ "\u4dee\u4def\u0007G\u0002\u0002\u4def\u4df0\u0007H\u0002\u0002\u4df0",
+ "\u4df1\u0007G\u0002\u0002\u4df1\u4df2\u0007T\u0002\u0002\u4df2\u4df3",
+ "\u0007G\u0002\u0002\u4df3\u4df4\u0007P\u0002\u0002\u4df4\u4df5\u0007",
+ "E\u0002\u0002\u4df5\u4df6\u0007G\u0002\u0002\u4df6\u4df7\u0007U\u0002",
+ "\u0002\u4df7\u0b1e\u0003\u0002\u0002\u0002\u4df8\u4df9\u0007T\u0002",
+ "\u0002\u4df9\u4dfa\u0007G\u0002\u0002\u4dfa\u4dfb\u0007U\u0002\u0002",
+ "\u4dfb\u4dfc\u0007V\u0002\u0002\u4dfc\u4dfd\u0007T\u0002\u0002\u4dfd",
+ "\u4dfe\u0007K\u0002\u0002\u4dfe\u4dff\u0007E\u0002\u0002\u4dff\u4e00",
+ "\u0007V\u0002\u0002\u4e00\u0b20\u0003\u0002\u0002\u0002\u4e01\u4e02",
+ "\u0007T\u0002\u0002\u4e02\u4e03\u0007G\u0002\u0002\u4e03\u4e04\u0007",
+ "U\u0002\u0002\u4e04\u4e05\u0007W\u0002\u0002\u4e05\u4e06\u0007N\u0002",
+ "\u0002\u4e06\u4e07\u0007V\u0002\u0002\u4e07\u4e08\u0007a\u0002\u0002",
+ "\u4e08\u4e09\u0007E\u0002\u0002\u4e09\u4e0a\u0007C\u0002\u0002\u4e0a",
+ "\u4e0b\u0007E\u0002\u0002\u4e0b\u4e0c\u0007J\u0002\u0002\u4e0c\u4e0d",
+ "\u0007G\u0002\u0002\u4e0d\u0b22\u0003\u0002\u0002\u0002\u4e0e\u4e0f",
+ "\u0007T\u0002\u0002\u4e0f\u4e10\u0007G\u0002\u0002\u4e10\u4e11\u0007",
+ "U\u0002\u0002\u4e11\u4e12\u0007W\u0002\u0002\u4e12\u4e13\u0007N\u0002",
+ "\u0002\u4e13\u4e14\u0007V\u0002\u0002\u4e14\u0b24\u0003\u0002\u0002",
+ "\u0002\u4e15\u4e16\u0007T\u0002\u0002\u4e16\u4e17\u0007G\u0002\u0002",
+ "\u4e17\u4e18\u0007U\u0002\u0002\u4e18\u4e19\u0007W\u0002\u0002\u4e19",
+ "\u4e1a\u0007O\u0002\u0002\u4e1a\u4e1b\u0007C\u0002\u0002\u4e1b\u4e1c",
+ "\u0007D\u0002\u0002\u4e1c\u4e1d\u0007N\u0002\u0002\u4e1d\u4e1e\u0007",
+ "G\u0002\u0002\u4e1e\u0b26\u0003\u0002\u0002\u0002\u4e1f\u4e20\u0007",
+ "T\u0002\u0002\u4e20\u4e21\u0007G\u0002\u0002\u4e21\u4e22\u0007U\u0002",
+ "\u0002\u4e22\u4e23\u0007W\u0002\u0002\u4e23\u4e24\u0007O\u0002\u0002",
+ "\u4e24\u4e25\u0007G\u0002\u0002\u4e25\u0b28\u0003\u0002\u0002\u0002",
+ "\u4e26\u4e27\u0007T\u0002\u0002\u4e27\u4e28\u0007G\u0002\u0002\u4e28",
+ "\u4e29\u0007V\u0002\u0002\u4e29\u4e2a\u0007G\u0002\u0002\u4e2a\u4e2b",
+ "\u0007P\u0002\u0002\u4e2b\u4e2c\u0007V\u0002\u0002\u4e2c\u4e2d\u0007",
+ "K\u0002\u0002\u4e2d\u4e2e\u0007Q\u0002\u0002\u4e2e\u4e2f\u0007P\u0002",
+ "\u0002\u4e2f\u0b2a\u0003\u0002\u0002\u0002\u4e30\u4e31\u0007T\u0002",
+ "\u0002\u4e31\u4e32\u0007G\u0002\u0002\u4e32\u4e33\u0007V\u0002\u0002",
+ "\u4e33\u4e34\u0007T\u0002\u0002\u4e34\u4e35\u0007[\u0002\u0002\u4e35",
+ "\u4e36\u0007a\u0002\u0002\u4e36\u4e37\u0007Q\u0002\u0002\u4e37\u4e38",
+ "\u0007P\u0002\u0002\u4e38\u4e39\u0007a\u0002\u0002\u4e39\u4e3a\u0007",
+ "T\u0002\u0002\u4e3a\u4e3b\u0007Q\u0002\u0002\u4e3b\u4e3c\u0007Y\u0002",
+ "\u0002\u4e3c\u4e3d\u0007a\u0002\u0002\u4e3d\u4e3e\u0007E\u0002\u0002",
+ "\u4e3e\u4e3f\u0007J\u0002\u0002\u4e3f\u4e40\u0007C\u0002\u0002\u4e40",
+ "\u4e41\u0007P\u0002\u0002\u4e41\u4e42\u0007I\u0002\u0002\u4e42\u4e43",
+ "\u0007G\u0002\u0002\u4e43\u0b2c\u0003\u0002\u0002\u0002\u4e44\u4e45",
+ "\u0007T\u0002\u0002\u4e45\u4e46\u0007G\u0002\u0002\u4e46\u4e47\u0007",
+ "V\u0002\u0002\u4e47\u4e48\u0007W\u0002\u0002\u4e48\u4e49\u0007T\u0002",
+ "\u0002\u4e49\u4e4a\u0007P\u0002\u0002\u4e4a\u4e4b\u0007K\u0002\u0002",
+ "\u4e4b\u4e4c\u0007P\u0002\u0002\u4e4c\u4e4d\u0007I\u0002\u0002\u4e4d",
+ "\u0b2e\u0003\u0002\u0002\u0002\u4e4e\u4e4f\u0007T\u0002\u0002\u4e4f",
+ "\u4e50\u0007G\u0002\u0002\u4e50\u4e51\u0007V\u0002\u0002\u4e51\u4e52",
+ "\u0007W\u0002\u0002\u4e52\u4e53\u0007T\u0002\u0002\u4e53\u4e54\u0007",
+ "P\u0002\u0002\u4e54\u0b30\u0003\u0002\u0002\u0002\u4e55\u4e56\u0007",
+ "T\u0002\u0002\u4e56\u4e57\u0007G\u0002\u0002\u4e57\u4e58\u0007W\u0002",
+ "\u0002\u4e58\u4e59\u0007U\u0002\u0002\u4e59\u4e5a\u0007G\u0002\u0002",
+ "\u4e5a\u0b32\u0003\u0002\u0002\u0002\u4e5b\u4e5c\u0007T\u0002\u0002",
+ "\u4e5c\u4e5d\u0007G\u0002\u0002\u4e5d\u4e5e\u0007X\u0002\u0002\u4e5e",
+ "\u4e5f\u0007G\u0002\u0002\u4e5f\u4e60\u0007T\u0002\u0002\u4e60\u4e61",
+ "\u0007U\u0002\u0002\u4e61\u4e62\u0007G\u0002\u0002\u4e62\u0b34\u0003",
+ "\u0002\u0002\u0002\u4e63\u4e64\u0007T\u0002\u0002\u4e64\u4e65\u0007",
+ "G\u0002\u0002\u4e65\u4e66\u0007X\u0002\u0002\u4e66\u4e67\u0007Q\u0002",
+ "\u0002\u4e67\u4e68\u0007M\u0002\u0002\u4e68\u4e69\u0007G\u0002\u0002",
+ "\u4e69\u0b36\u0003\u0002\u0002\u0002\u4e6a\u4e6b\u0007T\u0002\u0002",
+ "\u4e6b\u4e6c\u0007G\u0002\u0002\u4e6c\u4e6d\u0007Y\u0002\u0002\u4e6d",
+ "\u4e6e\u0007T\u0002\u0002\u4e6e\u4e6f\u0007K\u0002\u0002\u4e6f\u4e70",
+ "\u0007V\u0002\u0002\u4e70\u4e71\u0007G\u0002\u0002\u4e71\u4e72\u0007",
+ "a\u0002\u0002\u4e72\u4e73\u0007Q\u0002\u0002\u4e73\u4e74\u0007T\u0002",
+ "\u0002\u4e74\u4e75\u0007a\u0002\u0002\u4e75\u4e76\u0007G\u0002\u0002",
+ "\u4e76\u4e77\u0007T\u0002\u0002\u4e77\u4e78\u0007T\u0002\u0002\u4e78",
+ "\u4e79\u0007Q\u0002\u0002\u4e79\u4e7a\u0007T\u0002\u0002\u4e7a\u0b38",
+ "\u0003\u0002\u0002\u0002\u4e7b\u4e7c\u0007T\u0002\u0002\u4e7c\u4e7d",
+ "\u0007G\u0002\u0002\u4e7d\u4e7e\u0007Y\u0002\u0002\u4e7e\u4e7f\u0007",
+ "T\u0002\u0002\u4e7f\u4e80\u0007K\u0002\u0002\u4e80\u4e81\u0007V\u0002",
+ "\u0002\u4e81\u4e82\u0007G\u0002\u0002\u4e82\u0b3a\u0003\u0002\u0002",
+ "\u0002\u4e83\u4e84\u0007T\u0002\u0002\u4e84\u4e85\u0007K\u0002\u0002",
+ "\u4e85\u4e86\u0007I\u0002\u0002\u4e86\u4e87\u0007J\u0002\u0002\u4e87",
+ "\u4e88\u0007V\u0002\u0002\u4e88\u0b3c\u0003\u0002\u0002\u0002\u4e89",
+ "\u4e8a\u0007T\u0002\u0002\u4e8a\u4e8b\u0007Q\u0002\u0002\u4e8b\u4e8c",
+ "\u0007N\u0002\u0002\u4e8c\u4e8d\u0007G\u0002\u0002\u4e8d\u0b3e\u0003",
+ "\u0002\u0002\u0002\u4e8e\u4e8f\u0007T\u0002\u0002\u4e8f\u4e90\u0007",
+ "Q\u0002\u0002\u4e90\u4e91\u0007N\u0002\u0002\u4e91\u4e92\u0007G\u0002",
+ "\u0002\u4e92\u4e93\u0007U\u0002\u0002\u4e93\u4e94\u0007G\u0002\u0002",
+ "\u4e94\u4e95\u0007V\u0002\u0002\u4e95\u0b40\u0003\u0002\u0002\u0002",
+ "\u4e96\u4e97\u0007T\u0002\u0002\u4e97\u4e98\u0007Q\u0002\u0002\u4e98",
+ "\u4e99\u0007N\u0002\u0002\u4e99\u4e9a\u0007G\u0002\u0002\u4e9a\u4e9b",
+ "\u0007U\u0002\u0002\u4e9b\u0b42\u0003\u0002\u0002\u0002\u4e9c\u4e9d",
+ "\u0007T\u0002\u0002\u4e9d\u4e9e\u0007Q\u0002\u0002\u4e9e\u4e9f\u0007",
+ "N\u0002\u0002\u4e9f\u4ea0\u0007N\u0002\u0002\u4ea0\u4ea1\u0007D\u0002",
+ "\u0002\u4ea1\u4ea2\u0007C\u0002\u0002\u4ea2\u4ea3\u0007E\u0002\u0002",
+ "\u4ea3\u4ea4\u0007M\u0002\u0002\u4ea4\u0b44\u0003\u0002\u0002\u0002",
+ "\u4ea5\u4ea6\u0007T\u0002\u0002\u4ea6\u4ea7\u0007Q\u0002\u0002\u4ea7",
+ "\u4ea8\u0007N\u0002\u0002\u4ea8\u4ea9\u0007N\u0002\u0002\u4ea9\u4eaa",
+ "\u0007K\u0002\u0002\u4eaa\u4eab\u0007P\u0002\u0002\u4eab\u4eac\u0007",
+ "I\u0002\u0002\u4eac\u0b46\u0003\u0002\u0002\u0002\u4ead\u4eae\u0007",
+ "T\u0002\u0002\u4eae\u4eaf\u0007Q\u0002\u0002\u4eaf\u4eb0\u0007N\u0002",
+ "\u0002\u4eb0\u4eb1\u0007N\u0002\u0002\u4eb1\u4eb2\u0007W\u0002\u0002",
+ "\u4eb2\u4eb3\u0007R\u0002\u0002\u4eb3\u0b48\u0003\u0002\u0002\u0002",
+ "\u4eb4\u4eb5\u0007T\u0002\u0002\u4eb5\u4eb6\u0007Q\u0002\u0002\u4eb6",
+ "\u4eb7\u0007Y\u0002\u0002\u4eb7\u4eb8\u0007F\u0002\u0002\u4eb8\u4eb9",
+ "\u0007G\u0002\u0002\u4eb9\u4eba\u0007R\u0002\u0002\u4eba\u4ebb\u0007",
+ "G\u0002\u0002\u4ebb\u4ebc\u0007P\u0002\u0002\u4ebc\u4ebd\u0007F\u0002",
+ "\u0002\u4ebd\u4ebe\u0007G\u0002\u0002\u4ebe\u4ebf\u0007P\u0002\u0002",
+ "\u4ebf\u4ec0\u0007E\u0002\u0002\u4ec0\u4ec1\u0007K\u0002\u0002\u4ec1",
+ "\u4ec2\u0007G\u0002\u0002\u4ec2\u4ec3\u0007U\u0002\u0002\u4ec3\u0b4a",
+ "\u0003\u0002\u0002\u0002\u4ec4\u4ec5\u0007T\u0002\u0002\u4ec5\u4ec6",
+ "\u0007Q\u0002\u0002\u4ec6\u4ec7\u0007Y\u0002\u0002\u4ec7\u4ec8\u0007",
+ "K\u0002\u0002\u4ec8\u4ec9\u0007F\u0002\u0002\u4ec9\u4eca\u0007a\u0002",
+ "\u0002\u4eca\u4ecb\u0007O\u0002\u0002\u4ecb\u4ecc\u0007C\u0002\u0002",
+ "\u4ecc\u4ecd\u0007R\u0002\u0002\u4ecd\u4ece\u0007R\u0002\u0002\u4ece",
+ "\u4ecf\u0007K\u0002\u0002\u4ecf\u4ed0\u0007P\u0002\u0002\u4ed0\u4ed1",
+ "\u0007I\u0002\u0002\u4ed1\u4ed2\u0007a\u0002\u0002\u4ed2\u4ed3\u0007",
+ "V\u0002\u0002\u4ed3\u4ed4\u0007C\u0002\u0002\u4ed4\u4ed5\u0007D\u0002",
+ "\u0002\u4ed5\u4ed6\u0007N\u0002\u0002\u4ed6\u4ed7\u0007G\u0002\u0002",
+ "\u4ed7\u0b4c\u0003\u0002\u0002\u0002\u4ed8\u4ed9\u0007T\u0002\u0002",
+ "\u4ed9\u4eda\u0007Q\u0002\u0002\u4eda\u4edb\u0007Y\u0002\u0002\u4edb",
+ "\u4edc\u0007K\u0002\u0002\u4edc\u4edd\u0007F\u0002\u0002\u4edd\u0b4e",
+ "\u0003\u0002\u0002\u0002\u4ede\u4edf\u0007T\u0002\u0002\u4edf\u4ee0",
+ "\u0007Q\u0002\u0002\u4ee0\u4ee1\u0007Y\u0002\u0002\u4ee1\u4ee2\u0007",
+ "K\u0002\u0002\u4ee2\u4ee3\u0007F\u0002\u0002\u4ee3\u4ee4\u0007V\u0002",
+ "\u0002\u4ee4\u4ee5\u0007Q\u0002\u0002\u4ee5\u4ee6\u0007E\u0002\u0002",
+ "\u4ee6\u4ee7\u0007J\u0002\u0002\u4ee7\u4ee8\u0007C\u0002\u0002\u4ee8",
+ "\u4ee9\u0007T\u0002\u0002\u4ee9\u0b50\u0003\u0002\u0002\u0002\u4eea",
+ "\u4eeb\u0007T\u0002\u0002\u4eeb\u4eec\u0007Q\u0002\u0002\u4eec\u4eed",
+ "\u0007Y\u0002\u0002\u4eed\u4eee\u0007K\u0002\u0002\u4eee\u4eef\u0007",
+ "F\u0002\u0002\u4eef\u4ef0\u0007V\u0002\u0002\u4ef0\u4ef1\u0007Q\u0002",
+ "\u0002\u4ef1\u4ef2\u0007P\u0002\u0002\u4ef2\u4ef3\u0007E\u0002\u0002",
+ "\u4ef3\u4ef4\u0007J\u0002\u0002\u4ef4\u4ef5\u0007C\u0002\u0002\u4ef5",
+ "\u4ef6\u0007T\u0002\u0002\u4ef6\u0b52\u0003\u0002\u0002\u0002\u4ef7",
+ "\u4ef8\u0007T\u0002\u0002\u4ef8\u4ef9\u0007Q\u0002\u0002\u4ef9\u4efa",
+ "\u0007Y\u0002\u0002\u4efa\u4efb\u0007a\u0002\u0002\u4efb\u4efc\u0007",
+ "N\u0002\u0002\u4efc\u4efd\u0007G\u0002\u0002\u4efd\u4efe\u0007P\u0002",
+ "\u0002\u4efe\u4eff\u0007I\u0002\u0002\u4eff\u4f00\u0007V\u0002\u0002",
+ "\u4f00\u4f01\u0007J\u0002\u0002\u4f01\u0b54\u0003\u0002\u0002\u0002",
+ "\u4f02\u4f03\u0007T\u0002\u0002\u4f03\u4f04\u0007Q\u0002\u0002\u4f04",
+ "\u4f05\u0007Y\u0002\u0002\u4f05\u4f06\u0007P\u0002\u0002\u4f06\u4f07",
+ "\u0007W\u0002\u0002\u4f07\u4f08\u0007O\u0002\u0002\u4f08\u0b56\u0003",
+ "\u0002\u0002\u0002\u4f09\u4f0a\u0007T\u0002\u0002\u4f0a\u4f0b\u0007",
+ "Q\u0002\u0002\u4f0b\u4f0c\u0007Y\u0002\u0002\u4f0c\u0b58\u0003\u0002",
+ "\u0002\u0002\u4f0d\u4f0e\u0007T\u0002\u0002\u4f0e\u4f0f\u0007Q\u0002",
+ "\u0002\u4f0f\u4f10\u0007Y\u0002\u0002\u4f10\u4f11\u0007U\u0002\u0002",
+ "\u4f11\u0b5a\u0003\u0002\u0002\u0002\u4f12\u4f13\u0007T\u0002\u0002",
+ "\u4f13\u4f14\u0007R\u0002\u0002\u4f14\u4f15\u0007C\u0002\u0002\u4f15",
+ "\u4f16\u0007F\u0002\u0002\u4f16\u0b5c\u0003\u0002\u0002\u0002\u4f17",
+ "\u4f18\u0007T\u0002\u0002\u4f18\u4f19\u0007V\u0002\u0002\u4f19\u4f1a",
+ "\u0007T\u0002\u0002\u4f1a\u4f1b\u0007K\u0002\u0002\u4f1b\u4f1c\u0007",
+ "O\u0002\u0002\u4f1c\u0b5e\u0003\u0002\u0002\u0002\u4f1d\u4f1e\u0007",
+ "T\u0002\u0002\u4f1e\u4f1f\u0007W\u0002\u0002\u4f1f\u4f20\u0007N\u0002",
+ "\u0002\u4f20\u4f21\u0007G\u0002\u0002\u4f21\u0b60\u0003\u0002\u0002",
+ "\u0002\u4f22\u4f23\u0007T\u0002\u0002\u4f23\u4f24\u0007W\u0002\u0002",
+ "\u4f24\u4f25\u0007N\u0002\u0002\u4f25\u4f26\u0007G\u0002\u0002\u4f26",
+ "\u4f27\u0007U\u0002\u0002\u4f27\u0b62\u0003\u0002\u0002\u0002\u4f28",
+ "\u4f29\u0007T\u0002\u0002\u4f29\u4f2a\u0007W\u0002\u0002\u4f2a\u4f2b",
+ "\u0007P\u0002\u0002\u4f2b\u4f2c\u0007P\u0002\u0002\u4f2c\u4f2d\u0007",
+ "K\u0002\u0002\u4f2d\u4f2e\u0007P\u0002\u0002\u4f2e\u4f2f\u0007I\u0002",
+ "\u0002\u4f2f\u0b64\u0003\u0002\u0002\u0002\u4f30\u4f31\u0007U\u0002",
+ "\u0002\u4f31\u4f32\u0007C\u0002\u0002\u4f32\u4f33\u0007N\u0002\u0002",
+ "\u4f33\u4f34\u0007V\u0002\u0002\u4f34\u0b66\u0003\u0002\u0002\u0002",
+ "\u4f35\u4f36\u0007U\u0002\u0002\u4f36\u4f37\u0007C\u0002\u0002\u4f37",
+ "\u4f38\u0007O\u0002\u0002\u4f38\u4f39\u0007R\u0002\u0002\u4f39\u4f3a",
+ "\u0007N\u0002\u0002\u4f3a\u4f3b\u0007G\u0002\u0002\u4f3b\u0b68\u0003",
+ "\u0002\u0002\u0002\u4f3c\u4f3d\u0007U\u0002\u0002\u4f3d\u4f3e\u0007",
+ "C\u0002\u0002\u4f3e\u4f3f\u0007X\u0002\u0002\u4f3f\u4f40\u0007G\u0002",
+ "\u0002\u4f40\u4f41\u0007a\u0002\u0002\u4f41\u4f42\u0007C\u0002\u0002",
+ "\u4f42\u4f43\u0007U\u0002\u0002\u4f43\u4f44\u0007a\u0002\u0002\u4f44",
+ "\u4f45\u0007K\u0002\u0002\u4f45\u4f46\u0007P\u0002\u0002\u4f46\u4f47",
+ "\u0007V\u0002\u0002\u4f47\u4f48\u0007G\u0002\u0002\u4f48\u4f49\u0007",
+ "T\u0002\u0002\u4f49\u4f4a\u0007X\u0002\u0002\u4f4a\u4f4b\u0007C\u0002",
+ "\u0002\u4f4b\u4f4c\u0007N\u0002\u0002\u4f4c\u4f4d\u0007U\u0002\u0002",
+ "\u4f4d\u0b6a\u0003\u0002\u0002\u0002\u4f4e\u4f4f\u0007U\u0002\u0002",
+ "\u4f4f\u4f50\u0007C\u0002\u0002\u4f50\u4f51\u0007X\u0002\u0002\u4f51",
+ "\u4f52\u0007G\u0002\u0002\u4f52\u4f53\u0007R\u0002\u0002\u4f53\u4f54",
+ "\u0007Q\u0002\u0002\u4f54\u4f55\u0007K\u0002\u0002\u4f55\u4f56\u0007",
+ "P\u0002\u0002\u4f56\u4f57\u0007V\u0002\u0002\u4f57\u0b6c\u0003\u0002",
+ "\u0002\u0002\u4f58\u4f59\u0007U\u0002\u0002\u4f59\u4f5a\u0007C\u0002",
+ "\u0002\u4f5a\u4f5b\u0007X\u0002\u0002\u4f5b\u4f5c\u0007G\u0002\u0002",
+ "\u4f5c\u0b6e\u0003\u0002\u0002\u0002\u4f5d\u4f5e\u0007U\u0002\u0002",
+ "\u4f5e\u4f5f\u0007D\u0002\u0002\u4f5f\u4f60\u00076\u0002\u0002\u4f60",
+ "\u0b70\u0003\u0002\u0002\u0002\u4f61\u4f62\u0007U\u0002\u0002\u4f62",
+ "\u4f63\u0007E\u0002\u0002\u4f63\u4f64\u0007C\u0002\u0002\u4f64\u4f65",
+ "\u0007N\u0002\u0002\u4f65\u4f66\u0007G\u0002\u0002\u4f66\u4f67\u0007",
+ "a\u0002\u0002\u4f67\u4f68\u0007T\u0002\u0002\u4f68\u4f69\u0007Q\u0002",
+ "\u0002\u4f69\u4f6a\u0007Y\u0002\u0002\u4f6a\u4f6b\u0007U\u0002\u0002",
+ "\u4f6b\u0b72\u0003\u0002\u0002\u0002\u4f6c\u4f6d\u0007U\u0002\u0002",
+ "\u4f6d\u4f6e\u0007E\u0002\u0002\u4f6e\u4f6f\u0007C\u0002\u0002\u4f6f",
+ "\u4f70\u0007N\u0002\u0002\u4f70\u4f71\u0007G\u0002\u0002\u4f71\u0b74",
+ "\u0003\u0002\u0002\u0002\u4f72\u4f73\u0007U\u0002\u0002\u4f73\u4f74",
+ "\u0007E\u0002\u0002\u4f74\u4f75\u0007C\u0002\u0002\u4f75\u4f76\u0007",
+ "P\u0002\u0002\u4f76\u4f77\u0007a\u0002\u0002\u4f77\u4f78\u0007K\u0002",
+ "\u0002\u4f78\u4f79\u0007P\u0002\u0002\u4f79\u4f7a\u0007U\u0002\u0002",
+ "\u4f7a\u4f7b\u0007V\u0002\u0002\u4f7b\u4f7c\u0007C\u0002\u0002\u4f7c",
+ "\u4f7d\u0007P\u0002\u0002\u4f7d\u4f7e\u0007E\u0002\u0002\u4f7e\u4f7f",
+ "\u0007G\u0002\u0002\u4f7f\u4f80\u0007U\u0002\u0002\u4f80\u0b76\u0003",
+ "\u0002\u0002\u0002\u4f81\u4f82\u0007U\u0002\u0002\u4f82\u4f83\u0007",
+ "E\u0002\u0002\u4f83\u4f84\u0007C\u0002\u0002\u4f84\u4f85\u0007P\u0002",
+ "\u0002\u4f85\u0b78\u0003\u0002\u0002\u0002\u4f86\u4f87\u0007U\u0002",
+ "\u0002\u4f87\u4f88\u0007E\u0002\u0002\u4f88\u4f89\u0007J\u0002\u0002",
+ "\u4f89\u4f8a\u0007G\u0002\u0002\u4f8a\u4f8b\u0007F\u0002\u0002\u4f8b",
+ "\u4f8c\u0007W\u0002\u0002\u4f8c\u4f8d\u0007N\u0002\u0002\u4f8d\u4f8e",
+ "\u0007G\u0002\u0002\u4f8e\u4f8f\u0007T\u0002\u0002\u4f8f\u0b7a\u0003",
+ "\u0002\u0002\u0002\u4f90\u4f91\u0007U\u0002\u0002\u4f91\u4f92\u0007",
+ "E\u0002\u0002\u4f92\u4f93\u0007J\u0002\u0002\u4f93\u4f94\u0007G\u0002",
+ "\u0002\u4f94\u4f95\u0007O\u0002\u0002\u4f95\u4f96\u0007C\u0002\u0002",
+ "\u4f96\u4f97\u0007E\u0002\u0002\u4f97\u4f98\u0007J\u0002\u0002\u4f98",
+ "\u4f99\u0007G\u0002\u0002\u4f99\u4f9a\u0007E\u0002\u0002\u4f9a\u4f9b",
+ "\u0007M\u0002\u0002\u4f9b\u0b7c\u0003\u0002\u0002\u0002\u4f9c\u4f9d",
+ "\u0007U\u0002\u0002\u4f9d\u4f9e\u0007E\u0002\u0002\u4f9e\u4f9f\u0007",
+ "J\u0002\u0002\u4f9f\u4fa0\u0007G\u0002\u0002\u4fa0\u4fa1\u0007O\u0002",
+ "\u0002\u4fa1\u4fa2\u0007C\u0002\u0002\u4fa2\u0b7e\u0003\u0002\u0002",
+ "\u0002\u4fa3\u4fa4\u0007U\u0002\u0002\u4fa4\u4fa5\u0007E\u0002\u0002",
+ "\u4fa5\u4fa6\u0007P\u0002\u0002\u4fa6\u4fa7\u0007a\u0002\u0002\u4fa7",
+ "\u4fa8\u0007C\u0002\u0002\u4fa8\u4fa9\u0007U\u0002\u0002\u4fa9\u4faa",
+ "\u0007E\u0002\u0002\u4faa\u4fab\u0007G\u0002\u0002\u4fab\u4fac\u0007",
+ "P\u0002\u0002\u4fac\u4fad\u0007F\u0002\u0002\u4fad\u4fae\u0007K\u0002",
+ "\u0002\u4fae\u4faf\u0007P\u0002\u0002\u4faf\u4fb0\u0007I\u0002\u0002",
+ "\u4fb0\u0b80\u0003\u0002\u0002\u0002\u4fb1\u4fb2\u0007U\u0002\u0002",
+ "\u4fb2\u4fb3\u0007E\u0002\u0002\u4fb3\u4fb4\u0007P\u0002\u0002\u4fb4",
+ "\u0b82\u0003\u0002\u0002\u0002\u4fb5\u4fb6\u0007U\u0002\u0002\u4fb6",
+ "\u4fb7\u0007E\u0002\u0002\u4fb7\u4fb8\u0007Q\u0002\u0002\u4fb8\u4fb9",
+ "\u0007R\u0002\u0002\u4fb9\u4fba\u0007G\u0002\u0002\u4fba\u0b84\u0003",
+ "\u0002\u0002\u0002\u4fbb\u4fbc\u0007U\u0002\u0002\u4fbc\u4fbd\u0007",
+ "E\u0002\u0002\u4fbd\u4fbe\u0007T\u0002\u0002\u4fbe\u4fbf\u0007W\u0002",
+ "\u0002\u4fbf\u4fc0\u0007D\u0002\u0002\u4fc0\u0b86\u0003\u0002\u0002",
+ "\u0002\u4fc1\u4fc2\u0007U\u0002\u0002\u4fc2\u4fc3\u0007F\u0002\u0002",
+ "\u4fc3\u4fc4\u0007a\u0002\u0002\u4fc4\u4fc5\u0007C\u0002\u0002\u4fc5",
+ "\u4fc6\u0007N\u0002\u0002\u4fc6\u4fc7\u0007N\u0002\u0002\u4fc7\u0b88",
+ "\u0003\u0002\u0002\u0002\u4fc8\u4fc9\u0007U\u0002\u0002\u4fc9\u4fca",
+ "\u0007F\u0002\u0002\u4fca\u4fcb\u0007a\u0002\u0002\u4fcb\u4fcc\u0007",
+ "K\u0002\u0002\u4fcc\u4fcd\u0007P\u0002\u0002\u4fcd\u4fce\u0007J\u0002",
+ "\u0002\u4fce\u4fcf\u0007K\u0002\u0002\u4fcf\u4fd0\u0007D\u0002\u0002",
+ "\u4fd0\u4fd1\u0007K\u0002\u0002\u4fd1\u4fd2\u0007V\u0002\u0002\u4fd2",
+ "\u0b8a\u0003\u0002\u0002\u0002\u4fd3\u4fd4\u0007U\u0002\u0002\u4fd4",
+ "\u4fd5\u0007F\u0002\u0002\u4fd5\u4fd6\u0007Q\u0002\u0002\u4fd6\u4fd7",
+ "\u0007a\u0002\u0002\u4fd7\u4fd8\u0007I\u0002\u0002\u4fd8\u4fd9\u0007",
+ "G\u0002\u0002\u4fd9\u4fda\u0007Q\u0002\u0002\u4fda\u4fdb\u0007O\u0002",
+ "\u0002\u4fdb\u4fdc\u0007a\u0002\u0002\u4fdc\u4fdd\u0007O\u0002\u0002",
+ "\u4fdd\u4fde\u0007D\u0002\u0002\u4fde\u4fdf\u0007T\u0002\u0002\u4fdf",
+ "\u0b8c\u0003\u0002\u0002\u0002\u4fe0\u4fe1\u0007U\u0002\u0002\u4fe1",
+ "\u4fe2\u0007F\u0002\u0002\u4fe2\u4fe3\u0007a\u0002\u0002\u4fe3\u4fe4",
+ "\u0007U\u0002\u0002\u4fe4\u4fe5\u0007J\u0002\u0002\u4fe5\u4fe6\u0007",
+ "Q\u0002\u0002\u4fe6\u4fe7\u0007Y\u0002\u0002\u4fe7\u0b8e\u0003\u0002",
+ "\u0002\u0002\u4fe8\u4fe9\u0007U\u0002\u0002\u4fe9\u4fea\u0007G\u0002",
+ "\u0002\u4fea\u4feb\u0007C\u0002\u0002\u4feb\u4fec\u0007T\u0002\u0002",
+ "\u4fec\u4fed\u0007E\u0002\u0002\u4fed\u4fee\u0007J\u0002\u0002\u4fee",
+ "\u0b90\u0003\u0002\u0002\u0002\u4fef\u4ff0\u0007U\u0002\u0002\u4ff0",
+ "\u4ff1\u0007G\u0002\u0002\u4ff1\u4ff2\u0007E\u0002\u0002\u4ff2\u4ff3",
+ "\u0007Q\u0002\u0002\u4ff3\u4ff4\u0007P\u0002\u0002\u4ff4\u4ff5\u0007",
+ "F\u0002\u0002\u4ff5\u0b92\u0003\u0002\u0002\u0002\u4ff6\u4ff7\u0007",
+ "U\u0002\u0002\u4ff7\u4ff8\u0007G\u0002\u0002\u4ff8\u4ff9\u0007E\u0002",
+ "\u0002\u4ff9\u4ffa\u0007T\u0002\u0002\u4ffa\u4ffb\u0007G\u0002\u0002",
+ "\u4ffb\u4ffc\u0007V\u0002\u0002\u4ffc\u0b94\u0003\u0002\u0002\u0002",
+ "\u4ffd\u4ffe\u0007U\u0002\u0002\u4ffe\u4fff\u0007G\u0002\u0002\u4fff",
+ "\u5000\u0007E\u0002\u0002\u5000\u5001\u0007W\u0002\u0002\u5001\u5002",
+ "\u0007T\u0002\u0002\u5002\u5003\u0007G\u0002\u0002\u5003\u5004\u0007",
+ "H\u0002\u0002\u5004\u5005\u0007K\u0002\u0002\u5005\u5006\u0007N\u0002",
+ "\u0002\u5006\u5007\u0007G\u0002\u0002\u5007\u5008\u0007a\u0002\u0002",
+ "\u5008\u5009\u0007F\u0002\u0002\u5009\u500a\u0007D\u0002\u0002\u500a",
+ "\u500b\u0007C\u0002\u0002\u500b\u0b96\u0003\u0002\u0002\u0002\u500c",
+ "\u500d\u0007U\u0002\u0002\u500d\u500e\u0007G\u0002\u0002\u500e\u500f",
+ "\u0007E\u0002\u0002\u500f\u5010\u0007W\u0002\u0002\u5010\u5011\u0007",
+ "T\u0002\u0002\u5011\u5012\u0007G\u0002\u0002\u5012\u5013\u0007H\u0002",
+ "\u0002\u5013\u5014\u0007K\u0002\u0002\u5014\u5015\u0007N\u0002\u0002",
+ "\u5015\u5016\u0007G\u0002\u0002\u5016\u0b98\u0003\u0002\u0002\u0002",
+ "\u5017\u5018\u0007U\u0002\u0002\u5018\u5019\u0007G\u0002\u0002\u5019",
+ "\u501a\u0007E\u0002\u0002\u501a\u501b\u0007W\u0002\u0002\u501b\u501c",
+ "\u0007T\u0002\u0002\u501c\u501d\u0007K\u0002\u0002\u501d\u501e\u0007",
+ "V\u0002\u0002\u501e\u501f\u0007[\u0002\u0002\u501f\u0b9a\u0003\u0002",
+ "\u0002\u0002\u5020\u5021\u0007U\u0002\u0002\u5021\u5022\u0007G\u0002",
+ "\u0002\u5022\u5023\u0007G\u0002\u0002\u5023\u5024\u0007F\u0002\u0002",
+ "\u5024\u0b9c\u0003\u0002\u0002\u0002\u5025\u5026\u0007U\u0002\u0002",
+ "\u5026\u5027\u0007G\u0002\u0002\u5027\u5028\u0007I\u0002\u0002\u5028",
+ "\u5029\u0007a\u0002\u0002\u5029\u502a\u0007D\u0002\u0002\u502a\u502b",
+ "\u0007N\u0002\u0002\u502b\u502c\u0007Q\u0002\u0002\u502c\u502d\u0007",
+ "E\u0002\u0002\u502d\u502e\u0007M\u0002\u0002\u502e\u0b9e\u0003\u0002",
+ "\u0002\u0002\u502f\u5030\u0007U\u0002\u0002\u5030\u5031\u0007G\u0002",
+ "\u0002\u5031\u5032\u0007I\u0002\u0002\u5032\u5033\u0007a\u0002\u0002",
+ "\u5033\u5034\u0007H\u0002\u0002\u5034\u5035\u0007K\u0002\u0002\u5035",
+ "\u5036\u0007N\u0002\u0002\u5036\u5037\u0007G\u0002\u0002\u5037\u0ba0",
+ "\u0003\u0002\u0002\u0002\u5038\u5039\u0007U\u0002\u0002\u5039\u503a",
+ "\u0007G\u0002\u0002\u503a\u503b\u0007I\u0002\u0002\u503b\u503c\u0007",
+ "O\u0002\u0002\u503c\u503d\u0007G\u0002\u0002\u503d\u503e\u0007P\u0002",
+ "\u0002\u503e\u503f\u0007V\u0002\u0002\u503f\u0ba2\u0003\u0002\u0002",
+ "\u0002\u5040\u5041\u0007U\u0002\u0002\u5041\u5042\u0007G\u0002\u0002",
+ "\u5042\u5043\u0007N\u0002\u0002\u5043\u5044\u0007G\u0002\u0002\u5044",
+ "\u5045\u0007E\u0002\u0002\u5045\u5046\u0007V\u0002\u0002\u5046\u5047",
+ "\u0007K\u0002\u0002\u5047\u5048\u0007X\u0002\u0002\u5048\u5049\u0007",
+ "K\u0002\u0002\u5049\u504a\u0007V\u0002\u0002\u504a\u504b\u0007[\u0002",
+ "\u0002\u504b\u0ba4\u0003\u0002\u0002\u0002\u504c\u504d\u0007U\u0002",
+ "\u0002\u504d\u504e\u0007G\u0002\u0002\u504e\u504f\u0007N\u0002\u0002",
+ "\u504f\u5050\u0007G\u0002\u0002\u5050\u5051\u0007E\u0002\u0002\u5051",
+ "\u5052\u0007V\u0002\u0002\u5052\u0ba6\u0003\u0002\u0002\u0002\u5053",
+ "\u5054\u0007U\u0002\u0002\u5054\u5055\u0007G\u0002\u0002\u5055\u5056",
+ "\u0007N\u0002\u0002\u5056\u5057\u0007H\u0002\u0002\u5057\u0ba8\u0003",
+ "\u0002\u0002\u0002\u5058\u5059\u0007U\u0002\u0002\u5059\u505a\u0007",
+ "G\u0002\u0002\u505a\u505b\u0007O\u0002\u0002\u505b\u505c\u0007K\u0002",
+ "\u0002\u505c\u505d\u0007L\u0002\u0002\u505d\u505e\u0007Q\u0002\u0002",
+ "\u505e\u505f\u0007K\u0002\u0002\u505f\u5060\u0007P\u0002\u0002\u5060",
+ "\u5061\u0007a\u0002\u0002\u5061\u5062\u0007F\u0002\u0002\u5062\u5063",
+ "\u0007T\u0002\u0002\u5063\u5064\u0007K\u0002\u0002\u5064\u5065\u0007",
+ "X\u0002\u0002\u5065\u5066\u0007G\u0002\u0002\u5066\u5067\u0007T\u0002",
+ "\u0002\u5067\u0baa\u0003\u0002\u0002\u0002\u5068\u5069\u0007U\u0002",
+ "\u0002\u5069\u506a\u0007G\u0002\u0002\u506a\u506b\u0007O\u0002\u0002",
+ "\u506b\u506c\u0007K\u0002\u0002\u506c\u506d\u0007L\u0002\u0002\u506d",
+ "\u506e\u0007Q\u0002\u0002\u506e\u506f\u0007K\u0002\u0002\u506f\u5070",
+ "\u0007P\u0002\u0002\u5070\u0bac\u0003\u0002\u0002\u0002\u5071\u5072",
+ "\u0007U\u0002\u0002\u5072\u5073\u0007G\u0002\u0002\u5073\u5074\u0007",
+ "O\u0002\u0002\u5074\u5075\u0007K\u0002\u0002\u5075\u5076\u0007a\u0002",
+ "\u0002\u5076\u5077\u0007V\u0002\u0002\u5077\u5078\u0007Q\u0002\u0002",
+ "\u5078\u5079\u0007a\u0002\u0002\u5079\u507a\u0007K\u0002\u0002\u507a",
+ "\u507b\u0007P\u0002\u0002\u507b\u507c\u0007P\u0002\u0002\u507c\u507d",
+ "\u0007G\u0002\u0002\u507d\u507e\u0007T\u0002\u0002\u507e\u0bae\u0003",
+ "\u0002\u0002\u0002\u507f\u5080\u0007U\u0002\u0002\u5080\u5081\u0007",
+ "G\u0002\u0002\u5081\u5082\u0007S\u0002\u0002\u5082\u5083\u0007W\u0002",
+ "\u0002\u5083\u5084\u0007G\u0002\u0002\u5084\u5085\u0007P\u0002\u0002",
+ "\u5085\u5086\u0007E\u0002\u0002\u5086\u5087\u0007G\u0002\u0002\u5087",
+ "\u5088\u0007F\u0002\u0002\u5088\u0bb0\u0003\u0002\u0002\u0002\u5089",
+ "\u508a\u0007U\u0002\u0002\u508a\u508b\u0007G\u0002\u0002\u508b\u508c",
+ "\u0007S\u0002\u0002\u508c\u508d\u0007W\u0002\u0002\u508d\u508e\u0007",
+ "G\u0002\u0002\u508e\u508f\u0007P\u0002\u0002\u508f\u5090\u0007E\u0002",
+ "\u0002\u5090\u5091\u0007G\u0002\u0002\u5091\u0bb2\u0003\u0002\u0002",
+ "\u0002\u5092\u5093\u0007U\u0002\u0002\u5093\u5094\u0007G\u0002\u0002",
+ "\u5094\u5095\u0007S\u0002\u0002\u5095\u5096\u0007W\u0002\u0002\u5096",
+ "\u5097\u0007G\u0002\u0002\u5097\u5098\u0007P\u0002\u0002\u5098\u5099",
+ "\u0007V\u0002\u0002\u5099\u509a\u0007K\u0002\u0002\u509a\u509b\u0007",
+ "C\u0002\u0002\u509b\u509c\u0007N\u0002\u0002\u509c\u0bb4\u0003\u0002",
+ "\u0002\u0002\u509d\u509e\u0007U\u0002\u0002\u509e\u509f\u0007G\u0002",
+ "\u0002\u509f\u50a0\u0007S\u0002\u0002\u50a0\u0bb6\u0003\u0002\u0002",
+ "\u0002\u50a1\u50a2\u0007U\u0002\u0002\u50a2\u50a3\u0007G\u0002\u0002",
+ "\u50a3\u50a4\u0007T\u0002\u0002\u50a4\u50a5\u0007K\u0002\u0002\u50a5",
+ "\u50a6\u0007C\u0002\u0002\u50a6\u50a7\u0007N\u0002\u0002\u50a7\u50a8",
+ "\u0007K\u0002\u0002\u50a8\u50a9\u0007\\\u0002\u0002\u50a9\u50aa\u0007",
+ "C\u0002\u0002\u50aa\u50ab\u0007D\u0002\u0002\u50ab\u50ac\u0007N\u0002",
+ "\u0002\u50ac\u50ad\u0007G\u0002\u0002\u50ad\u0bb8\u0003\u0002\u0002",
+ "\u0002\u50ae\u50af\u0007U\u0002\u0002\u50af\u50b0\u0007G\u0002\u0002",
+ "\u50b0\u50b1\u0007T\u0002\u0002\u50b1\u50b2\u0007K\u0002\u0002\u50b2",
+ "\u50b3\u0007C\u0002\u0002\u50b3\u50b4\u0007N\u0002\u0002\u50b4\u50b5",
+ "\u0007N\u0002\u0002\u50b5\u50b6\u0007[\u0002\u0002\u50b6\u50b7\u0007",
+ "a\u0002\u0002\u50b7\u50b8\u0007T\u0002\u0002\u50b8\u50b9\u0007G\u0002",
+ "\u0002\u50b9\u50ba\u0007W\u0002\u0002\u50ba\u50bb\u0007U\u0002\u0002",
+ "\u50bb\u50bc\u0007C\u0002\u0002\u50bc\u50bd\u0007D\u0002\u0002\u50bd",
+ "\u50be\u0007N\u0002\u0002\u50be\u50bf\u0007G\u0002\u0002\u50bf\u0bba",
+ "\u0003\u0002\u0002\u0002\u50c0\u50c1\u0007U\u0002\u0002\u50c1\u50c2",
+ "\u0007G\u0002\u0002\u50c2\u50c3\u0007T\u0002\u0002\u50c3\u50c4\u0007",
+ "K\u0002\u0002\u50c4\u50c5\u0007C\u0002\u0002\u50c5\u50c6\u0007N\u0002",
+ "\u0002\u50c6\u0bbc\u0003\u0002\u0002\u0002\u50c7\u50c8\u0007U\u0002",
+ "\u0002\u50c8\u50c9\u0007G\u0002\u0002\u50c9\u50ca\u0007T\u0002\u0002",
+ "\u50ca\u50cb\u0007X\u0002\u0002\u50cb\u50cc\u0007G\u0002\u0002\u50cc",
+ "\u50cd\u0007T\u0002\u0002\u50cd\u50ce\u0007G\u0002\u0002\u50ce\u50cf",
+ "\u0007T\u0002\u0002\u50cf\u50d0\u0007T\u0002\u0002\u50d0\u50d1\u0007",
+ "Q\u0002\u0002\u50d1\u50d2\u0007T\u0002\u0002\u50d2\u0bbe\u0003\u0002",
+ "\u0002\u0002\u50d3\u50d4\u0007U\u0002\u0002\u50d4\u50d5\u0007G\u0002",
+ "\u0002\u50d5\u50d6\u0007T\u0002\u0002\u50d6\u50d7\u0007X\u0002\u0002",
+ "\u50d7\u50d8\u0007K\u0002\u0002\u50d8\u50d9\u0007E\u0002\u0002\u50d9",
+ "\u50da\u0007G\u0002\u0002\u50da\u50db\u0007a\u0002\u0002\u50db\u50dc",
+ "\u0007P\u0002\u0002\u50dc\u50dd\u0007C\u0002\u0002\u50dd\u50de\u0007",
+ "O\u0002\u0002\u50de\u50df\u0007G\u0002\u0002\u50df\u50e0\u0007a\u0002",
+ "\u0002\u50e0\u50e1\u0007E\u0002\u0002\u50e1\u50e2\u0007Q\u0002\u0002",
+ "\u50e2\u50e3\u0007P\u0002\u0002\u50e3\u50e4\u0007X\u0002\u0002\u50e4",
+ "\u50e5\u0007G\u0002\u0002\u50e5\u50e6\u0007T\u0002\u0002\u50e6\u50e7",
+ "\u0007V\u0002\u0002\u50e7\u0bc0\u0003\u0002\u0002\u0002\u50e8\u50e9",
+ "\u0007U\u0002\u0002\u50e9\u50ea\u0007G\u0002\u0002\u50ea\u50eb\u0007",
+ "T\u0002\u0002\u50eb\u50ec\u0007X\u0002\u0002\u50ec\u50ed\u0007K\u0002",
+ "\u0002\u50ed\u50ee\u0007E\u0002\u0002\u50ee\u50ef\u0007G\u0002\u0002",
+ "\u50ef\u50f0\u0007U\u0002\u0002\u50f0\u0bc2\u0003\u0002\u0002\u0002",
+ "\u50f1\u50f2\u0007U\u0002\u0002\u50f2\u50f3\u0007G\u0002\u0002\u50f3",
+ "\u50f4\u0007U\u0002\u0002\u50f4\u50f5\u0007U\u0002\u0002\u50f5\u50f6",
+ "\u0007K\u0002\u0002\u50f6\u50f7\u0007Q\u0002\u0002\u50f7\u50f8\u0007",
+ "P\u0002\u0002\u50f8\u50f9\u0007a\u0002\u0002\u50f9\u50fa\u0007E\u0002",
+ "\u0002\u50fa\u50fb\u0007C\u0002\u0002\u50fb\u50fc\u0007E\u0002\u0002",
+ "\u50fc\u50fd\u0007J\u0002\u0002\u50fd\u50fe\u0007G\u0002\u0002\u50fe",
+ "\u50ff\u0007F\u0002\u0002\u50ff\u5100\u0007a\u0002\u0002\u5100\u5101",
+ "\u0007E\u0002\u0002\u5101\u5102\u0007W\u0002\u0002\u5102\u5103\u0007",
+ "T\u0002\u0002\u5103\u5104\u0007U\u0002\u0002\u5104\u5105\u0007Q\u0002",
+ "\u0002\u5105\u5106\u0007T\u0002\u0002\u5106\u5107\u0007U\u0002\u0002",
+ "\u5107\u0bc4\u0003\u0002\u0002\u0002\u5108\u5109\u0007U\u0002\u0002",
+ "\u5109\u510a\u0007G\u0002\u0002\u510a\u510b\u0007U\u0002\u0002\u510b",
+ "\u510c\u0007U\u0002\u0002\u510c\u510d\u0007K\u0002\u0002\u510d\u510e",
+ "\u0007Q\u0002\u0002\u510e\u510f\u0007P\u0002\u0002\u510f\u0bc6\u0003",
+ "\u0002\u0002\u0002\u5110\u5111\u0007U\u0002\u0002\u5111\u5112\u0007",
+ "G\u0002\u0002\u5112\u5113\u0007U\u0002\u0002\u5113\u5114\u0007U\u0002",
+ "\u0002\u5114\u5115\u0007K\u0002\u0002\u5115\u5116\u0007Q\u0002\u0002",
+ "\u5116\u5117\u0007P\u0002\u0002\u5117\u5118\u0007U\u0002\u0002\u5118",
+ "\u5119\u0007a\u0002\u0002\u5119\u511a\u0007R\u0002\u0002\u511a\u511b",
+ "\u0007G\u0002\u0002\u511b\u511c\u0007T\u0002\u0002\u511c\u511d\u0007",
+ "a\u0002\u0002\u511d\u511e\u0007W\u0002\u0002\u511e\u511f\u0007U\u0002",
+ "\u0002\u511f\u5120\u0007G\u0002\u0002\u5120\u5121\u0007T\u0002\u0002",
+ "\u5121\u0bc8\u0003\u0002\u0002\u0002\u5122\u5123\u0007U\u0002\u0002",
+ "\u5123\u5124\u0007G\u0002\u0002\u5124\u5125\u0007U\u0002\u0002\u5125",
+ "\u5126\u0007U\u0002\u0002\u5126\u5127\u0007K\u0002\u0002\u5127\u5128",
+ "\u0007Q\u0002\u0002\u5128\u5129\u0007P\u0002\u0002\u5129\u512a\u0007",
+ "V\u0002\u0002\u512a\u512b\u0007K\u0002\u0002\u512b\u512c\u0007O\u0002",
+ "\u0002\u512c\u512d\u0007G\u0002\u0002\u512d\u512e\u0007\\\u0002\u0002",
+ "\u512e\u512f\u0007Q\u0002\u0002\u512f\u5130\u0007P\u0002\u0002\u5130",
+ "\u5131\u0007G\u0002\u0002\u5131\u0bca\u0003\u0002\u0002\u0002\u5132",
+ "\u5133\u0007U\u0002\u0002\u5133\u5134\u0007G\u0002\u0002\u5134\u5135",
+ "\u0007U\u0002\u0002\u5135\u5136\u0007U\u0002\u0002\u5136\u5137\u0007",
+ "K\u0002\u0002\u5137\u5138\u0007Q\u0002\u0002\u5138\u5139\u0007P\u0002",
+ "\u0002\u5139\u513a\u0007V\u0002\u0002\u513a\u513b\u0007\\\u0002\u0002",
+ "\u513b\u513c\u0007P\u0002\u0002\u513c\u513d\u0007C\u0002\u0002\u513d",
+ "\u513e\u0007O\u0002\u0002\u513e\u513f\u0007G\u0002\u0002\u513f\u0bcc",
+ "\u0003\u0002\u0002\u0002\u5140\u5141\u0007U\u0002\u0002\u5141\u5142",
+ "\u0007G\u0002\u0002\u5142\u5143\u0007V\u0002\u0002\u5143\u0bce\u0003",
+ "\u0002\u0002\u0002\u5144\u5145\u0007U\u0002\u0002\u5145\u5146\u0007",
+ "G\u0002\u0002\u5146\u5147\u0007V\u0002\u0002\u5147\u5148\u0007U\u0002",
+ "\u0002\u5148\u0bd0\u0003\u0002\u0002\u0002\u5149\u514a\u0007U\u0002",
+ "\u0002\u514a\u514b\u0007G\u0002\u0002\u514b\u514c\u0007V\u0002\u0002",
+ "\u514c\u514d\u0007V\u0002\u0002\u514d\u514e\u0007K\u0002\u0002\u514e",
+ "\u514f\u0007P\u0002\u0002\u514f\u5150\u0007I\u0002\u0002\u5150\u5151",
+ "\u0007U\u0002\u0002\u5151\u0bd2\u0003\u0002\u0002\u0002\u5152\u5153",
+ "\u0007U\u0002\u0002\u5153\u5154\u0007G\u0002\u0002\u5154\u5155\u0007",
+ "V\u0002\u0002\u5155\u5156\u0007a\u0002\u0002\u5156\u5157\u0007V\u0002",
+ "\u0002\u5157\u5158\u0007Q\u0002\u0002\u5158\u5159\u0007a\u0002\u0002",
+ "\u5159\u515a\u0007L\u0002\u0002\u515a\u515b\u0007Q\u0002\u0002\u515b",
+ "\u515c\u0007K\u0002\u0002\u515c\u515d\u0007P\u0002\u0002\u515d\u0bd4",
+ "\u0003\u0002\u0002\u0002\u515e\u515f\u0007U\u0002\u0002\u515f\u5160",
+ "\u0007G\u0002\u0002\u5160\u5161\u0007X\u0002\u0002\u5161\u5162\u0007",
+ "G\u0002\u0002\u5162\u5163\u0007T\u0002\u0002\u5163\u5164\u0007G\u0002",
+ "\u0002\u5164\u0bd6\u0003\u0002\u0002\u0002\u5165\u5166\u0007U\u0002",
+ "\u0002\u5166\u5167\u0007J\u0002\u0002\u5167\u5168\u0007C\u0002\u0002",
+ "\u5168\u5169\u0007T\u0002\u0002\u5169\u516a\u0007G\u0002\u0002\u516a",
+ "\u516b\u0007F\u0002\u0002\u516b\u516c\u0007a\u0002\u0002\u516c\u516d",
+ "\u0007R\u0002\u0002\u516d\u516e\u0007Q\u0002\u0002\u516e\u516f\u0007",
+ "Q\u0002\u0002\u516f\u5170\u0007N\u0002\u0002\u5170\u0bd8\u0003\u0002",
+ "\u0002\u0002\u5171\u5172\u0007U\u0002\u0002\u5172\u5173\u0007J\u0002",
+ "\u0002\u5173\u5174\u0007C\u0002\u0002\u5174\u5175\u0007T\u0002\u0002",
+ "\u5175\u5176\u0007G\u0002\u0002\u5176\u5177\u0007F\u0002\u0002\u5177",
+ "\u0bda\u0003\u0002\u0002\u0002\u5178\u5179\u0007U\u0002\u0002\u5179",
+ "\u517a\u0007J\u0002\u0002\u517a\u517b\u0007C\u0002\u0002\u517b\u517c",
+ "\u0007T\u0002\u0002\u517c\u517d\u0007G\u0002\u0002\u517d\u0bdc\u0003",
+ "\u0002\u0002\u0002\u517e\u517f\u0007U\u0002\u0002\u517f\u5180\u0007",
+ "J\u0002\u0002\u5180\u5181\u0007C\u0002\u0002\u5181\u5182\u0007T\u0002",
+ "\u0002\u5182\u5183\u0007K\u0002\u0002\u5183\u5184\u0007P\u0002\u0002",
+ "\u5184\u5185\u0007I\u0002\u0002\u5185\u0bde\u0003\u0002\u0002\u0002",
+ "\u5186\u5187\u0007U\u0002\u0002\u5187\u5188\u0007J\u0002\u0002\u5188",
+ "\u5189\u0007G\u0002\u0002\u5189\u518a\u0007N\u0002\u0002\u518a\u518b",
+ "\u0007H\u0002\u0002\u518b\u518c\u0007N\u0002\u0002\u518c\u518d\u0007",
+ "K\u0002\u0002\u518d\u518e\u0007H\u0002\u0002\u518e\u518f\u0007G\u0002",
+ "\u0002\u518f\u0be0\u0003\u0002\u0002\u0002\u5190\u5191\u0007U\u0002",
+ "\u0002\u5191\u5192\u0007J\u0002\u0002\u5192\u5193\u0007Q\u0002\u0002",
+ "\u5193\u5194\u0007Y\u0002\u0002\u5194\u0be2\u0003\u0002\u0002\u0002",
+ "\u5195\u5196\u0007U\u0002\u0002\u5196\u5197\u0007J\u0002\u0002\u5197",
+ "\u5198\u0007T\u0002\u0002\u5198\u5199\u0007K\u0002\u0002\u5199\u519a",
+ "\u0007P\u0002\u0002\u519a\u519b\u0007M\u0002\u0002\u519b\u0be4\u0003",
+ "\u0002\u0002\u0002\u519c\u519d\u0007U\u0002\u0002\u519d\u519e\u0007",
+ "J\u0002\u0002\u519e\u519f\u0007W\u0002\u0002\u519f\u51a0\u0007V\u0002",
+ "\u0002\u51a0\u51a1\u0007F\u0002\u0002\u51a1\u51a2\u0007Q\u0002\u0002",
+ "\u51a2\u51a3\u0007Y\u0002\u0002\u51a3\u51a4\u0007P\u0002\u0002\u51a4",
+ "\u0be6\u0003\u0002\u0002\u0002\u51a5\u51a6\u0007U\u0002\u0002\u51a6",
+ "\u51a7\u0007K\u0002\u0002\u51a7\u51a8\u0007D\u0002\u0002\u51a8\u51a9",
+ "\u0007N\u0002\u0002\u51a9\u51aa\u0007K\u0002\u0002\u51aa\u51ab\u0007",
+ "P\u0002\u0002\u51ab\u51ac\u0007I\u0002\u0002\u51ac\u51ad\u0007U\u0002",
+ "\u0002\u51ad\u0be8\u0003\u0002\u0002\u0002\u51ae\u51af\u0007U\u0002",
+ "\u0002\u51af\u51b0\u0007K\u0002\u0002\u51b0\u51b1\u0007F\u0002\u0002",
+ "\u51b1\u0bea\u0003\u0002\u0002\u0002\u51b2\u51b3\u0007U\u0002\u0002",
+ "\u51b3\u51b4\u0007K\u0002\u0002\u51b4\u51b5\u0007I\u0002\u0002\u51b5",
+ "\u51b6\u0007P\u0002\u0002\u51b6\u51b7\u0007C\u0002\u0002\u51b7\u51b8",
+ "\u0007N\u0002\u0002\u51b8\u51b9\u0007a\u0002\u0002\u51b9\u51ba\u0007",
+ "E\u0002\u0002\u51ba\u51bb\u0007Q\u0002\u0002\u51bb\u51bc\u0007O\u0002",
+ "\u0002\u51bc\u51bd\u0007R\u0002\u0002\u51bd\u51be\u0007Q\u0002\u0002",
+ "\u51be\u51bf\u0007P\u0002\u0002\u51bf\u51c0\u0007G\u0002\u0002\u51c0",
+ "\u51c1\u0007P\u0002\u0002\u51c1\u51c2\u0007V\u0002\u0002\u51c2\u0bec",
+ "\u0003\u0002\u0002\u0002\u51c3\u51c4\u0007U\u0002\u0002\u51c4\u51c5",
+ "\u0007K\u0002\u0002\u51c5\u51c6\u0007I\u0002\u0002\u51c6\u51c7\u0007",
+ "P\u0002\u0002\u51c7\u51c8\u0007C\u0002\u0002\u51c8\u51c9\u0007N\u0002",
+ "\u0002\u51c9\u51ca\u0007a\u0002\u0002\u51ca\u51cb\u0007H\u0002\u0002",
+ "\u51cb\u51cc\u0007W\u0002\u0002\u51cc\u51cd\u0007P\u0002\u0002\u51cd",
+ "\u51ce\u0007E\u0002\u0002\u51ce\u51cf\u0007V\u0002\u0002\u51cf\u51d0",
+ "\u0007K\u0002\u0002\u51d0\u51d1\u0007Q\u0002\u0002\u51d1\u51d2\u0007",
+ "P\u0002\u0002\u51d2\u0bee\u0003\u0002\u0002\u0002\u51d3\u51d4\u0007",
+ "U\u0002\u0002\u51d4\u51d5\u0007K\u0002\u0002\u51d5\u51d6\u0007I\u0002",
+ "\u0002\u51d6\u51d7\u0007P\u0002\u0002\u51d7\u0bf0\u0003\u0002\u0002",
+ "\u0002\u51d8\u51d9\u0007U\u0002\u0002\u51d9\u51da\u0007K\u0002\u0002",
+ "\u51da\u51db\u0007I\u0002\u0002\u51db\u51dc\u0007P\u0002\u0002\u51dc",
+ "\u51dd\u0007V\u0002\u0002\u51dd\u51de\u0007[\u0002\u0002\u51de\u51df",
+ "\u0007R\u0002\u0002\u51df\u51e0\u0007G\u0002\u0002\u51e0\u0bf2\u0003",
+ "\u0002\u0002\u0002\u51e1\u51e2\u0007U\u0002\u0002\u51e2\u51e3\u0007",
+ "K\u0002\u0002\u51e3\u51e4\u0007O\u0002\u0002\u51e4\u51e5\u0007R\u0002",
+ "\u0002\u51e5\u51e6\u0007N\u0002\u0002\u51e6\u51e7\u0007G\u0002\u0002",
+ "\u51e7\u51e8\u0007a\u0002\u0002\u51e8\u51e9\u0007K\u0002\u0002\u51e9",
+ "\u51ea\u0007P\u0002\u0002\u51ea\u51eb\u0007V\u0002\u0002\u51eb\u51ec",
+ "\u0007G\u0002\u0002\u51ec\u51ed\u0007I\u0002\u0002\u51ed\u51ee\u0007",
+ "G\u0002\u0002\u51ee\u51ef\u0007T\u0002\u0002\u51ef\u0bf4\u0003\u0002",
+ "\u0002\u0002\u51f0\u51f1\u0007U\u0002\u0002\u51f1\u51f2\u0007K\u0002",
+ "\u0002\u51f2\u51f3\u0007O\u0002\u0002\u51f3\u51f4\u0007R\u0002\u0002",
+ "\u51f4\u51f5\u0007N\u0002\u0002\u51f5\u51f6\u0007G\u0002\u0002\u51f6",
+ "\u0bf6\u0003\u0002\u0002\u0002\u51f7\u51f8\u0007U\u0002\u0002\u51f8",
+ "\u51f9\u0007K\u0002\u0002\u51f9\u51fa\u0007P\u0002\u0002\u51fa\u51fb",
+ "\u0007I\u0002\u0002\u51fb\u51fc\u0007N\u0002\u0002\u51fc\u51fd\u0007",
+ "G\u0002\u0002\u51fd\u0bf8\u0003\u0002\u0002\u0002\u51fe\u51ff\u0007",
+ "U\u0002\u0002\u51ff\u5200\u0007K\u0002\u0002\u5200\u5201\u0007P\u0002",
+ "\u0002\u5201\u5202\u0007I\u0002\u0002\u5202\u5203\u0007N\u0002\u0002",
+ "\u5203\u5204\u0007G\u0002\u0002\u5204\u5205\u0007V\u0002\u0002\u5205",
+ "\u5206\u0007C\u0002\u0002\u5206\u5207\u0007U\u0002\u0002\u5207\u5208",
+ "\u0007M\u0002\u0002\u5208\u0bfa\u0003\u0002\u0002\u0002\u5209\u520a",
+ "\u0007U\u0002\u0002\u520a\u520b\u0007K\u0002\u0002\u520b\u520c\u0007",
+ "P\u0002\u0002\u520c\u520d\u0007J\u0002\u0002\u520d\u0bfc\u0003\u0002",
+ "\u0002\u0002\u520e\u520f\u0007U\u0002\u0002\u520f\u5210\u0007K\u0002",
+ "\u0002\u5210\u5211\u0007P\u0002\u0002\u5211\u0bfe\u0003\u0002\u0002",
+ "\u0002\u5212\u5213\u0007U\u0002\u0002\u5213\u5214\u0007K\u0002\u0002",
+ "\u5214\u5215\u0007\\\u0002\u0002\u5215\u5216\u0007G\u0002\u0002\u5216",
+ "\u0c00\u0003\u0002\u0002\u0002\u5217\u5218\u0007U\u0002\u0002\u5218",
+ "\u5219\u0007M\u0002\u0002\u5219\u521a\u0007K\u0002\u0002\u521a\u521b",
+ "\u0007R\u0002\u0002\u521b\u521c\u0007a\u0002\u0002\u521c\u521d\u0007",
+ "G\u0002\u0002\u521d\u521e\u0007Z\u0002\u0002\u521e\u521f\u0007V\u0002",
+ "\u0002\u521f\u5220\u0007a\u0002\u0002\u5220\u5221\u0007Q\u0002\u0002",
+ "\u5221\u5222\u0007R\u0002\u0002\u5222\u5223\u0007V\u0002\u0002\u5223",
+ "\u5224\u0007K\u0002\u0002\u5224\u5225\u0007O\u0002\u0002\u5225\u5226",
+ "\u0007K\u0002\u0002\u5226\u5227\u0007\\\u0002\u0002\u5227\u5228\u0007",
+ "G\u0002\u0002\u5228\u5229\u0007T\u0002\u0002\u5229\u0c02\u0003\u0002",
+ "\u0002\u0002\u522a\u522b\u0007U\u0002\u0002\u522b\u522c\u0007M\u0002",
+ "\u0002\u522c\u522d\u0007K\u0002\u0002\u522d\u522e\u0007R\u0002\u0002",
+ "\u522e\u0c04\u0003\u0002\u0002\u0002\u522f\u5230\u0007U\u0002\u0002",
+ "\u5230\u5231\u0007M\u0002\u0002\u5231\u5232\u0007K\u0002\u0002\u5232",
+ "\u5233\u0007R\u0002\u0002\u5233\u5234\u0007a\u0002\u0002\u5234\u5235",
+ "\u0007W\u0002\u0002\u5235\u5236\u0007P\u0002\u0002\u5236\u5237\u0007",
+ "S\u0002\u0002\u5237\u5238\u0007a\u0002\u0002\u5238\u5239\u0007W\u0002",
+ "\u0002\u5239\u523a\u0007P\u0002\u0002\u523a\u523b\u0007W\u0002\u0002",
+ "\u523b\u523c\u0007U\u0002\u0002\u523c\u523d\u0007C\u0002\u0002\u523d",
+ "\u523e\u0007D\u0002\u0002\u523e\u523f\u0007N\u0002\u0002\u523f\u5240",
+ "\u0007G\u0002\u0002\u5240\u5241\u0007a\u0002\u0002\u5241\u5242\u0007",
+ "K\u0002\u0002\u5242\u5243\u0007F\u0002\u0002\u5243\u5244\u0007Z\u0002",
+ "\u0002\u5244\u0c06\u0003\u0002\u0002\u0002\u5245\u5246\u0007U\u0002",
+ "\u0002\u5246\u5247\u0007M\u0002\u0002\u5247\u5248\u0007K\u0002\u0002",
+ "\u5248\u5249\u0007R\u0002\u0002\u5249\u524a\u0007a\u0002\u0002\u524a",
+ "\u524b\u0007W\u0002\u0002\u524b\u524c\u0007P\u0002\u0002\u524c\u524d",
+ "\u0007W\u0002\u0002\u524d\u524e\u0007U\u0002\u0002\u524e\u524f\u0007",
+ "C\u0002\u0002\u524f\u5250\u0007D\u0002\u0002\u5250\u5251\u0007N\u0002",
+ "\u0002\u5251\u5252\u0007G\u0002\u0002\u5252\u5253\u0007a\u0002\u0002",
+ "\u5253\u5254\u0007K\u0002\u0002\u5254\u5255\u0007P\u0002\u0002\u5255",
+ "\u5256\u0007F\u0002\u0002\u5256\u5257\u0007G\u0002\u0002\u5257\u5258",
+ "\u0007Z\u0002\u0002\u5258\u5259\u0007G\u0002\u0002\u5259\u525a\u0007",
+ "U\u0002\u0002\u525a\u0c08\u0003\u0002\u0002\u0002\u525b\u525c\u0007",
+ "U\u0002\u0002\u525c\u525d\u0007O\u0002\u0002\u525d\u525e\u0007C\u0002",
+ "\u0002\u525e\u525f\u0007N\u0002\u0002\u525f\u5260\u0007N\u0002\u0002",
+ "\u5260\u5261\u0007H\u0002\u0002\u5261\u5262\u0007K\u0002\u0002\u5262",
+ "\u5263\u0007N\u0002\u0002\u5263\u5264\u0007G\u0002\u0002\u5264\u0c0a",
+ "\u0003\u0002\u0002\u0002\u5265\u5266\u0007U\u0002\u0002\u5266\u5267",
+ "\u0007O\u0002\u0002\u5267\u5268\u0007C\u0002\u0002\u5268\u5269\u0007",
+ "N\u0002\u0002\u5269\u526a\u0007N\u0002\u0002\u526a\u526b\u0007K\u0002",
+ "\u0002\u526b\u526c\u0007P\u0002\u0002\u526c\u526d\u0007V\u0002\u0002",
+ "\u526d\u0c0c\u0003\u0002\u0002\u0002\u526e\u526f\u0007U\u0002\u0002",
+ "\u526f\u5270\u0007P\u0002\u0002\u5270\u5271\u0007C\u0002\u0002\u5271",
+ "\u5272\u0007R\u0002\u0002\u5272\u5273\u0007U\u0002\u0002\u5273\u5274",
+ "\u0007J\u0002\u0002\u5274\u5275\u0007Q\u0002\u0002\u5275\u5276\u0007",
+ "V\u0002\u0002\u5276\u0c0e\u0003\u0002\u0002\u0002\u5277\u5278\u0007",
+ "U\u0002\u0002\u5278\u5279\u0007Q\u0002\u0002\u5279\u527a\u0007O\u0002",
+ "\u0002\u527a\u527b\u0007G\u0002\u0002\u527b\u0c10\u0003\u0002\u0002",
+ "\u0002\u527c\u527d\u0007U\u0002\u0002\u527d\u527e\u0007Q\u0002\u0002",
+ "\u527e\u527f\u0007T\u0002\u0002\u527f\u5280\u0007V\u0002\u0002\u5280",
+ "\u0c12\u0003\u0002\u0002\u0002\u5281\u5282\u0007U\u0002\u0002\u5282",
+ "\u5283\u0007Q\u0002\u0002\u5283\u5284\u0007W\u0002\u0002\u5284\u5285",
+ "\u0007P\u0002\u0002\u5285\u5286\u0007F\u0002\u0002\u5286\u5287\u0007",
+ "G\u0002\u0002\u5287\u5288\u0007Z\u0002\u0002\u5288\u0c14\u0003\u0002",
+ "\u0002\u0002\u5289\u528a\u0007U\u0002\u0002\u528a\u528b\u0007Q\u0002",
+ "\u0002\u528b\u528c\u0007W\u0002\u0002\u528c\u528d\u0007T\u0002\u0002",
+ "\u528d\u528e\u0007E\u0002\u0002\u528e\u528f\u0007G\u0002\u0002\u528f",
+ "\u5290\u0007a\u0002\u0002\u5290\u5291\u0007H\u0002\u0002\u5291\u5292",
+ "\u0007K\u0002\u0002\u5292\u5293\u0007N\u0002\u0002\u5293\u5294\u0007",
+ "G\u0002\u0002\u5294\u5295\u0007a\u0002\u0002\u5295\u5296\u0007F\u0002",
+ "\u0002\u5296\u5297\u0007K\u0002\u0002\u5297\u5298\u0007T\u0002\u0002",
+ "\u5298\u5299\u0007G\u0002\u0002\u5299\u529a\u0007E\u0002\u0002\u529a",
+ "\u529b\u0007V\u0002\u0002\u529b\u529c\u0007Q\u0002\u0002\u529c\u529d",
+ "\u0007T\u0002\u0002\u529d\u529e\u0007[\u0002\u0002\u529e\u0c16\u0003",
+ "\u0002\u0002\u0002\u529f\u52a0\u0007U\u0002\u0002\u52a0\u52a1\u0007",
+ "Q\u0002\u0002\u52a1\u52a2\u0007W\u0002\u0002\u52a2\u52a3\u0007T\u0002",
+ "\u0002\u52a3\u52a4\u0007E\u0002\u0002\u52a4\u52a5\u0007G\u0002\u0002",
+ "\u52a5\u52a6\u0007a\u0002\u0002\u52a6\u52a7\u0007H\u0002\u0002\u52a7",
+ "\u52a8\u0007K\u0002\u0002\u52a8\u52a9\u0007N\u0002\u0002\u52a9\u52aa",
+ "\u0007G\u0002\u0002\u52aa\u52ab\u0007a\u0002\u0002\u52ab\u52ac\u0007",
+ "P\u0002\u0002\u52ac\u52ad\u0007C\u0002\u0002\u52ad\u52ae\u0007O\u0002",
+ "\u0002\u52ae\u52af\u0007G\u0002\u0002\u52af\u52b0\u0007a\u0002\u0002",
+ "\u52b0\u52b1\u0007E\u0002\u0002\u52b1\u52b2\u0007Q\u0002\u0002\u52b2",
+ "\u52b3\u0007P\u0002\u0002\u52b3\u52b4\u0007X\u0002\u0002\u52b4\u52b5",
+ "\u0007G\u0002\u0002\u52b5\u52b6\u0007T\u0002\u0002\u52b6\u52b7\u0007",
+ "V\u0002\u0002\u52b7\u0c18\u0003\u0002\u0002\u0002\u52b8\u52b9\u0007",
+ "U\u0002\u0002\u52b9\u52ba\u0007Q\u0002\u0002\u52ba\u52bb\u0007W\u0002",
+ "\u0002\u52bb\u52bc\u0007T\u0002\u0002\u52bc\u52bd\u0007E\u0002\u0002",
+ "\u52bd\u52be\u0007G\u0002\u0002\u52be\u0c1a\u0003\u0002\u0002\u0002",
+ "\u52bf\u52c0\u0007U\u0002\u0002\u52c0\u52c1\u0007R\u0002\u0002\u52c1",
+ "\u52c2\u0007C\u0002\u0002\u52c2\u52c3\u0007E\u0002\u0002\u52c3\u52c4",
+ "\u0007G\u0002\u0002\u52c4\u0c1c\u0003\u0002\u0002\u0002\u52c5\u52c6",
+ "\u0007U\u0002\u0002\u52c6\u52c7\u0007R\u0002\u0002\u52c7\u52c8\u0007",
+ "G\u0002\u0002\u52c8\u52c9\u0007E\u0002\u0002\u52c9\u52ca\u0007K\u0002",
+ "\u0002\u52ca\u52cb\u0007H\u0002\u0002\u52cb\u52cc\u0007K\u0002\u0002",
+ "\u52cc\u52cd\u0007E\u0002\u0002\u52cd\u52ce\u0007C\u0002\u0002\u52ce",
+ "\u52cf\u0007V\u0002\u0002\u52cf\u52d0\u0007K\u0002\u0002\u52d0\u52d1",
+ "\u0007Q\u0002\u0002\u52d1\u52d2\u0007P\u0002\u0002\u52d2\u0c1e\u0003",
+ "\u0002\u0002\u0002\u52d3\u52d4\u0007U\u0002\u0002\u52d4\u52d5\u0007",
+ "R\u0002\u0002\u52d5\u52d6\u0007H\u0002\u0002\u52d6\u52d7\u0007K\u0002",
+ "\u0002\u52d7\u52d8\u0007N\u0002\u0002\u52d8\u52d9\u0007G\u0002\u0002",
+ "\u52d9\u0c20\u0003\u0002\u0002\u0002\u52da\u52db\u0007U\u0002\u0002",
+ "\u52db\u52dc\u0007R\u0002\u0002\u52dc\u52dd\u0007N\u0002\u0002\u52dd",
+ "\u52de\u0007K\u0002\u0002\u52de\u52df\u0007V\u0002\u0002\u52df\u0c22",
+ "\u0003\u0002\u0002\u0002\u52e0\u52e1\u0007U\u0002\u0002\u52e1\u52e2",
+ "\u0007R\u0002\u0002\u52e2\u52e3\u0007T\u0002\u0002\u52e3\u52e4\u0007",
+ "G\u0002\u0002\u52e4\u52e5\u0007C\u0002\u0002\u52e5\u52e6\u0007F\u0002",
+ "\u0002\u52e6\u52e7\u0007U\u0002\u0002\u52e7\u52e8\u0007J\u0002\u0002",
+ "\u52e8\u52e9\u0007G\u0002\u0002\u52e9\u52ea\u0007G\u0002\u0002\u52ea",
+ "\u52eb\u0007V\u0002\u0002\u52eb\u0c24\u0003\u0002\u0002\u0002\u52ec",
+ "\u52ed\u0007U\u0002\u0002\u52ed\u52ee\u0007S\u0002\u0002\u52ee\u52ef",
+ "\u0007N\u0002\u0002\u52ef\u52f0\u0007F\u0002\u0002\u52f0\u52f1\u0007",
+ "C\u0002\u0002\u52f1\u52f2\u0007V\u0002\u0002\u52f2\u52f3\u0007C\u0002",
+ "\u0002\u52f3\u0c26\u0003\u0002\u0002\u0002\u52f4\u52f5\u0007U\u0002",
+ "\u0002\u52f5\u52f6\u0007S\u0002\u0002\u52f6\u52f7\u0007N\u0002\u0002",
+ "\u52f7\u52f8\u0007G\u0002\u0002\u52f8\u52f9\u0007T\u0002\u0002\u52f9",
+ "\u52fa\u0007T\u0002\u0002\u52fa\u52fb\u0007Q\u0002\u0002\u52fb\u52fc",
+ "\u0007T\u0002\u0002\u52fc\u0c28\u0003\u0002\u0002\u0002\u52fd\u52fe",
+ "\u0007U\u0002\u0002\u52fe\u52ff\u0007S\u0002\u0002\u52ff\u5300\u0007",
+ "N\u0002\u0002\u5300\u5301\u0007N\u0002\u0002\u5301\u5302\u0007F\u0002",
+ "\u0002\u5302\u5303\u0007T\u0002\u0002\u5303\u0c2a\u0003\u0002\u0002",
+ "\u0002\u5304\u5305\u0007U\u0002\u0002\u5305\u5306\u0007S\u0002\u0002",
+ "\u5306\u5307\u0007N\u0002\u0002\u5307\u0c2c\u0003\u0002\u0002\u0002",
+ "\u5308\u5309\u0007U\u0002\u0002\u5309\u530a\u0007S\u0002\u0002\u530a",
+ "\u530b\u0007N\u0002\u0002\u530b\u530c\u0007a\u0002\u0002\u530c\u530d",
+ "\u0007V\u0002\u0002\u530d\u530e\u0007T\u0002\u0002\u530e\u530f\u0007",
+ "C\u0002\u0002\u530f\u5310\u0007E\u0002\u0002\u5310\u5311\u0007G\u0002",
+ "\u0002\u5311\u0c2e\u0003\u0002\u0002\u0002\u5312\u5313\u0007U\u0002",
+ "\u0002\u5313\u5314\u0007S\u0002\u0002\u5314\u5315\u0007N\u0002\u0002",
+ "\u5315\u5316\u0007a\u0002\u0002\u5316\u5317\u0007V\u0002\u0002\u5317",
+ "\u5318\u0007T\u0002\u0002\u5318\u5319\u0007C\u0002\u0002\u5319\u531a",
+ "\u0007P\u0002\u0002\u531a\u531b\u0007U\u0002\u0002\u531b\u531c\u0007",
+ "N\u0002\u0002\u531c\u531d\u0007C\u0002\u0002\u531d\u531e\u0007V\u0002",
+ "\u0002\u531e\u531f\u0007K\u0002\u0002\u531f\u5320\u0007Q\u0002\u0002",
+ "\u5320\u5321\u0007P\u0002\u0002\u5321\u5322\u0007a\u0002\u0002\u5322",
+ "\u5323\u0007R\u0002\u0002\u5323\u5324\u0007T\u0002\u0002\u5324\u5325",
+ "\u0007Q\u0002\u0002\u5325\u5326\u0007H\u0002\u0002\u5326\u5327\u0007",
+ "K\u0002\u0002\u5327\u5328\u0007N\u0002\u0002\u5328\u5329\u0007G\u0002",
+ "\u0002\u5329\u0c30\u0003\u0002\u0002\u0002\u532a\u532b\u0007U\u0002",
+ "\u0002\u532b\u532c\u0007S\u0002\u0002\u532c\u532d\u0007T\u0002\u0002",
+ "\u532d\u532e\u0007V\u0002\u0002\u532e\u0c32\u0003\u0002\u0002\u0002",
+ "\u532f\u5330\u0007U\u0002\u0002\u5330\u5331\u0007V\u0002\u0002\u5331",
+ "\u5332\u0007C\u0002\u0002\u5332\u5333\u0007N\u0002\u0002\u5333\u5334",
+ "\u0007G\u0002\u0002\u5334\u0c34\u0003\u0002\u0002\u0002\u5335\u5336",
+ "\u0007U\u0002\u0002\u5336\u5337\u0007V\u0002\u0002\u5337\u5338\u0007",
+ "C\u0002\u0002\u5338\u5339\u0007P\u0002\u0002\u5339\u533a\u0007F\u0002",
+ "\u0002\u533a\u533b\u0007C\u0002\u0002\u533b\u533c\u0007N\u0002\u0002",
+ "\u533c\u533d\u0007Q\u0002\u0002\u533d\u533e\u0007P\u0002\u0002\u533e",
+ "\u533f\u0007G\u0002\u0002\u533f\u0c36\u0003\u0002\u0002\u0002\u5340",
+ "\u5341\u0007U\u0002\u0002\u5341\u5342\u0007V\u0002\u0002\u5342\u5343",
+ "\u0007C\u0002\u0002\u5343\u5344\u0007P\u0002\u0002\u5344\u5345\u0007",
+ "F\u0002\u0002\u5345\u5346\u0007C\u0002\u0002\u5346\u5347\u0007T\u0002",
+ "\u0002\u5347\u5348\u0007F\u0002\u0002\u5348\u5349\u0007a\u0002\u0002",
+ "\u5349\u534a\u0007J\u0002\u0002\u534a\u534b\u0007C\u0002\u0002\u534b",
+ "\u534c\u0007U\u0002\u0002\u534c\u534d\u0007J\u0002\u0002\u534d\u0c38",
+ "\u0003\u0002\u0002\u0002\u534e\u534f\u0007U\u0002\u0002\u534f\u5350",
+ "\u0007V\u0002\u0002\u5350\u5351\u0007C\u0002\u0002\u5351\u5352\u0007",
+ "P\u0002\u0002\u5352\u5353\u0007F\u0002\u0002\u5353\u5354\u0007D\u0002",
+ "\u0002\u5354\u5355\u0007[\u0002\u0002\u5355\u5356\u0007a\u0002\u0002",
+ "\u5356\u5357\u0007O\u0002\u0002\u5357\u5358\u0007C\u0002\u0002\u5358",
+ "\u5359\u0007Z\u0002\u0002\u5359\u535a\u0007a\u0002\u0002\u535a\u535b",
+ "\u0007F\u0002\u0002\u535b\u535c\u0007C\u0002\u0002\u535c\u535d\u0007",
+ "V\u0002\u0002\u535d\u535e\u0007C\u0002\u0002\u535e\u535f\u0007a\u0002",
+ "\u0002\u535f\u5360\u0007F\u0002\u0002\u5360\u5361\u0007G\u0002\u0002",
+ "\u5361\u5362\u0007N\u0002\u0002\u5362\u5363\u0007C\u0002\u0002\u5363",
+ "\u5364\u0007[\u0002\u0002\u5364\u0c3a\u0003\u0002\u0002\u0002\u5365",
+ "\u5366\u0007U\u0002\u0002\u5366\u5367\u0007V\u0002\u0002\u5367\u5368",
+ "\u0007C\u0002\u0002\u5368\u5369\u0007P\u0002\u0002\u5369\u536a\u0007",
+ "F\u0002\u0002\u536a\u536b\u0007D\u0002\u0002\u536b\u536c\u0007[\u0002",
+ "\u0002\u536c\u536d\u0007U\u0002\u0002\u536d\u0c3c\u0003\u0002\u0002",
+ "\u0002\u536e\u536f\u0007U\u0002\u0002\u536f\u5370\u0007V\u0002\u0002",
+ "\u5370\u5371\u0007C\u0002\u0002\u5371\u5372\u0007P\u0002\u0002\u5372",
+ "\u5373\u0007F\u0002\u0002\u5373\u5374\u0007D\u0002\u0002\u5374\u5375",
+ "\u0007[\u0002\u0002\u5375\u0c3e\u0003\u0002\u0002\u0002\u5376\u5377",
+ "\u0007U\u0002\u0002\u5377\u5378\u0007V\u0002\u0002\u5378\u5379\u0007",
+ "C\u0002\u0002\u5379\u537a\u0007T\u0002\u0002\u537a\u0c40\u0003\u0002",
+ "\u0002\u0002\u537b\u537c\u0007U\u0002\u0002\u537c\u537d\u0007V\u0002",
+ "\u0002\u537d\u537e\u0007C\u0002\u0002\u537e\u537f\u0007T\u0002\u0002",
+ "\u537f\u5380\u0007a\u0002\u0002\u5380\u5381\u0007V\u0002\u0002\u5381",
+ "\u5382\u0007T\u0002\u0002\u5382\u5383\u0007C\u0002\u0002\u5383\u5384",
+ "\u0007P\u0002\u0002\u5384\u5385\u0007U\u0002\u0002\u5385\u5386\u0007",
+ "H\u0002\u0002\u5386\u5387\u0007Q\u0002\u0002\u5387\u5388\u0007T\u0002",
+ "\u0002\u5388\u5389\u0007O\u0002\u0002\u5389\u538a\u0007C\u0002\u0002",
+ "\u538a\u538b\u0007V\u0002\u0002\u538b\u538c\u0007K\u0002\u0002\u538c",
+ "\u538d\u0007Q\u0002\u0002\u538d\u538e\u0007P\u0002\u0002\u538e\u0c42",
+ "\u0003\u0002\u0002\u0002\u538f\u5390\u0007U\u0002\u0002\u5390\u5391",
+ "\u0007V\u0002\u0002\u5391\u5392\u0007C\u0002\u0002\u5392\u5393\u0007",
+ "T\u0002\u0002\u5393\u5394\u0007V\u0002\u0002\u5394\u0c44\u0003\u0002",
+ "\u0002\u0002\u5395\u5396\u0007U\u0002\u0002\u5396\u5397\u0007V\u0002",
+ "\u0002\u5397\u5398\u0007C\u0002\u0002\u5398\u5399\u0007T\u0002\u0002",
+ "\u5399\u539a\u0007V\u0002\u0002\u539a\u539b\u0007W\u0002\u0002\u539b",
+ "\u539c\u0007R\u0002\u0002\u539c\u0c46\u0003\u0002\u0002\u0002\u539d",
+ "\u539e\u0007U\u0002\u0002\u539e\u539f\u0007V\u0002\u0002\u539f\u53a0",
+ "\u0007C\u0002\u0002\u53a0\u53a1\u0007V\u0002\u0002\u53a1\u53a2\u0007",
+ "G\u0002\u0002\u53a2\u53a3\u0007O\u0002\u0002\u53a3\u53a4\u0007G\u0002",
+ "\u0002\u53a4\u53a5\u0007P\u0002\u0002\u53a5\u53a6\u0007V\u0002\u0002",
+ "\u53a6\u53a7\u0007a\u0002\u0002\u53a7\u53a8\u0007K\u0002\u0002\u53a8",
+ "\u53a9\u0007F\u0002\u0002\u53a9\u0c48\u0003\u0002\u0002\u0002\u53aa",
+ "\u53ab\u0007U\u0002\u0002\u53ab\u53ac\u0007V\u0002\u0002\u53ac\u53ad",
+ "\u0007C\u0002\u0002\u53ad\u53ae\u0007V\u0002\u0002\u53ae\u53af\u0007",
+ "G\u0002\u0002\u53af\u53b0\u0007O\u0002\u0002\u53b0\u53b1\u0007G\u0002",
+ "\u0002\u53b1\u53b2\u0007P\u0002\u0002\u53b2\u53b3\u0007V\u0002\u0002",
+ "\u53b3\u53b4\u0007a\u0002\u0002\u53b4\u53b5\u0007S\u0002\u0002\u53b5",
+ "\u53b6\u0007W\u0002\u0002\u53b6\u53b7\u0007G\u0002\u0002\u53b7\u53b8",
+ "\u0007W\u0002\u0002\u53b8\u53b9\u0007K\u0002\u0002\u53b9\u53ba\u0007",
+ "P\u0002\u0002\u53ba\u53bb\u0007I\u0002\u0002\u53bb\u0c4a\u0003\u0002",
+ "\u0002\u0002\u53bc\u53bd\u0007U\u0002\u0002\u53bd\u53be\u0007V\u0002",
+ "\u0002\u53be\u53bf\u0007C\u0002\u0002\u53bf\u53c0\u0007V\u0002\u0002",
+ "\u53c0\u53c1\u0007G\u0002\u0002\u53c1\u53c2\u0007O\u0002\u0002\u53c2",
+ "\u53c3\u0007G\u0002\u0002\u53c3\u53c4\u0007P\u0002\u0002\u53c4\u53c5",
+ "\u0007V\u0002\u0002\u53c5\u53c6\u0007U\u0002\u0002\u53c6\u0c4c\u0003",
+ "\u0002\u0002\u0002\u53c7\u53c8\u0007U\u0002\u0002\u53c8\u53c9\u0007",
+ "V\u0002\u0002\u53c9\u53ca\u0007C\u0002\u0002\u53ca\u53cb\u0007V\u0002",
+ "\u0002\u53cb\u53cc\u0007G\u0002\u0002\u53cc\u53cd\u0007O\u0002\u0002",
+ "\u53cd\u53ce\u0007G\u0002\u0002\u53ce\u53cf\u0007P\u0002\u0002\u53cf",
+ "\u53d0\u0007V\u0002\u0002\u53d0\u0c4e\u0003\u0002\u0002\u0002\u53d1",
+ "\u53d2\u0007U\u0002\u0002\u53d2\u53d3\u0007V\u0002\u0002\u53d3\u53d4",
+ "\u0007C\u0002\u0002\u53d4\u53d5\u0007V\u0002\u0002\u53d5\u53d6\u0007",
+ "G\u0002\u0002\u53d6\u0c50\u0003\u0002\u0002\u0002\u53d7\u53d8\u0007",
+ "U\u0002\u0002\u53d8\u53d9\u0007V\u0002\u0002\u53d9\u53da\u0007C\u0002",
+ "\u0002\u53da\u53db\u0007V\u0002\u0002\u53db\u53dc\u0007K\u0002\u0002",
+ "\u53dc\u53dd\u0007E\u0002\u0002\u53dd\u0c52\u0003\u0002\u0002\u0002",
+ "\u53de\u53df\u0007U\u0002\u0002\u53df\u53e0\u0007V\u0002\u0002\u53e0",
+ "\u53e1\u0007C\u0002\u0002\u53e1\u53e2\u0007V\u0002\u0002\u53e2\u53e3",
+ "\u0007K\u0002\u0002\u53e3\u53e4\u0007U\u0002\u0002\u53e4\u53e5\u0007",
+ "V\u0002\u0002\u53e5\u53e6\u0007K\u0002\u0002\u53e6\u53e7\u0007E\u0002",
+ "\u0002\u53e7\u53e8\u0007U\u0002\u0002\u53e8\u0c54\u0003\u0002\u0002",
+ "\u0002\u53e9\u53ea\u0007U\u0002\u0002\u53ea\u53eb\u0007V\u0002\u0002",
+ "\u53eb\u53ec\u0007C\u0002\u0002\u53ec\u53ed\u0007V\u0002\u0002\u53ed",
+ "\u53ee\u0007U\u0002\u0002\u53ee\u53ef\u0007a\u0002\u0002\u53ef\u53f0",
+ "\u0007D\u0002\u0002\u53f0\u53f1\u0007K\u0002\u0002\u53f1\u53f2\u0007",
+ "P\u0002\u0002\u53f2\u53f3\u0007Q\u0002\u0002\u53f3\u53f4\u0007O\u0002",
+ "\u0002\u53f4\u53f5\u0007K\u0002\u0002\u53f5\u53f6\u0007C\u0002\u0002",
+ "\u53f6\u53f7\u0007N\u0002\u0002\u53f7\u53f8\u0007a\u0002\u0002\u53f8",
+ "\u53f9\u0007V\u0002\u0002\u53f9\u53fa\u0007G\u0002\u0002\u53fa\u53fb",
+ "\u0007U\u0002\u0002\u53fb\u53fc\u0007V\u0002\u0002\u53fc\u0c56\u0003",
+ "\u0002\u0002\u0002\u53fd\u53fe\u0007U\u0002\u0002\u53fe\u53ff\u0007",
+ "V\u0002\u0002\u53ff\u5400\u0007C\u0002\u0002\u5400\u5401\u0007V\u0002",
+ "\u0002\u5401\u5402\u0007U\u0002\u0002\u5402\u5403\u0007a\u0002\u0002",
+ "\u5403\u5404\u0007E\u0002\u0002\u5404\u5405\u0007T\u0002\u0002\u5405",
+ "\u5406\u0007Q\u0002\u0002\u5406\u5407\u0007U\u0002\u0002\u5407\u5408",
+ "\u0007U\u0002\u0002\u5408\u5409\u0007V\u0002\u0002\u5409\u540a\u0007",
+ "C\u0002\u0002\u540a\u540b\u0007D\u0002\u0002\u540b\u0c58\u0003\u0002",
+ "\u0002\u0002\u540c\u540d\u0007U\u0002\u0002\u540d\u540e\u0007V\u0002",
+ "\u0002\u540e\u540f\u0007C\u0002\u0002\u540f\u5410\u0007V\u0002\u0002",
+ "\u5410\u5411\u0007U\u0002\u0002\u5411\u5412\u0007a\u0002\u0002\u5412",
+ "\u5413\u0007H\u0002\u0002\u5413\u5414\u0007a\u0002\u0002\u5414\u5415",
+ "\u0007V\u0002\u0002\u5415\u5416\u0007G\u0002\u0002\u5416\u5417\u0007",
+ "U\u0002\u0002\u5417\u5418\u0007V\u0002\u0002\u5418\u0c5a\u0003\u0002",
+ "\u0002\u0002\u5419\u541a\u0007U\u0002\u0002\u541a\u541b\u0007V\u0002",
+ "\u0002\u541b\u541c\u0007C\u0002\u0002\u541c\u541d\u0007V\u0002\u0002",
+ "\u541d\u541e\u0007U\u0002\u0002\u541e\u541f\u0007a\u0002\u0002\u541f",
+ "\u5420\u0007M\u0002\u0002\u5420\u5421\u0007U\u0002\u0002\u5421\u5422",
+ "\u0007a\u0002\u0002\u5422\u5423\u0007V\u0002\u0002\u5423\u5424\u0007",
+ "G\u0002\u0002\u5424\u5425\u0007U\u0002\u0002\u5425\u5426\u0007V\u0002",
+ "\u0002\u5426\u0c5c\u0003\u0002\u0002\u0002\u5427\u5428\u0007U\u0002",
+ "\u0002\u5428\u5429\u0007V\u0002\u0002\u5429\u542a\u0007C\u0002\u0002",
+ "\u542a\u542b\u0007V\u0002\u0002\u542b\u542c\u0007U\u0002\u0002\u542c",
+ "\u542d\u0007a\u0002\u0002\u542d\u542e\u0007O\u0002\u0002\u542e\u542f",
+ "\u0007Q\u0002\u0002\u542f\u5430\u0007F\u0002\u0002\u5430\u5431\u0007",
+ "G\u0002\u0002\u5431\u0c5e\u0003\u0002\u0002\u0002\u5432\u5433\u0007",
+ "U\u0002\u0002\u5433\u5434\u0007V\u0002\u0002\u5434\u5435\u0007C\u0002",
+ "\u0002\u5435\u5436\u0007V\u0002\u0002\u5436\u5437\u0007U\u0002\u0002",
+ "\u5437\u5438\u0007a\u0002\u0002\u5438\u5439\u0007O\u0002\u0002\u5439",
+ "\u543a\u0007Y\u0002\u0002\u543a\u543b\u0007a\u0002\u0002\u543b\u543c",
+ "\u0007V\u0002\u0002\u543c\u543d\u0007G\u0002\u0002\u543d\u543e\u0007",
+ "U\u0002\u0002\u543e\u543f\u0007V\u0002\u0002\u543f\u0c60\u0003\u0002",
+ "\u0002\u0002\u5440\u5441\u0007U\u0002\u0002\u5441\u5442\u0007V\u0002",
+ "\u0002\u5442\u5443\u0007C\u0002\u0002\u5443\u5444\u0007V\u0002\u0002",
+ "\u5444\u5445\u0007U\u0002\u0002\u5445\u5446\u0007a\u0002\u0002\u5446",
+ "\u5447\u0007Q\u0002\u0002\u5447\u5448\u0007P\u0002\u0002\u5448\u5449",
+ "\u0007G\u0002\u0002\u5449\u544a\u0007a\u0002\u0002\u544a\u544b\u0007",
+ "Y\u0002\u0002\u544b\u544c\u0007C\u0002\u0002\u544c\u544d\u0007[\u0002",
+ "\u0002\u544d\u544e\u0007a\u0002\u0002\u544e\u544f\u0007C\u0002\u0002",
+ "\u544f\u5450\u0007P\u0002\u0002\u5450\u5451\u0007Q\u0002\u0002\u5451",
+ "\u5452\u0007X\u0002\u0002\u5452\u5453\u0007C\u0002\u0002\u5453\u0c62",
+ "\u0003\u0002\u0002\u0002\u5454\u5455\u0007U\u0002\u0002\u5455\u5456",
+ "\u0007V\u0002\u0002\u5456\u5457\u0007C\u0002\u0002\u5457\u5458\u0007",
+ "V\u0002\u0002\u5458\u5459\u0007U\u0002\u0002\u5459\u545a\u0007a\u0002",
+ "\u0002\u545a\u545b\u0007V\u0002\u0002\u545b\u545c\u0007a\u0002\u0002",
+ "\u545c\u545d\u0007V\u0002\u0002\u545d\u545e\u0007G\u0002\u0002\u545e",
+ "\u545f\u0007U\u0002\u0002\u545f\u5460\u0007V\u0002\u0002\u5460\u5461",
+ "\u0007a\u0002\u0002\u5461\u5462\u0007K\u0002\u0002\u5462\u5463\u0007",
+ "P\u0002\u0002\u5463\u5464\u0007F\u0002\u0002\u5464\u5465\u0007G\u0002",
+ "\u0002\u5465\u5466\u0007R\u0002\u0002\u5466\u0c64\u0003\u0002\u0002",
+ "\u0002\u5467\u5468\u0007U\u0002\u0002\u5468\u5469\u0007V\u0002\u0002",
+ "\u5469\u546a\u0007C\u0002\u0002\u546a\u546b\u0007V\u0002\u0002\u546b",
+ "\u546c\u0007U\u0002\u0002\u546c\u546d\u0007a\u0002\u0002\u546d\u546e",
+ "\u0007V\u0002\u0002\u546e\u546f\u0007a\u0002\u0002\u546f\u5470\u0007",
+ "V\u0002\u0002\u5470\u5471\u0007G\u0002\u0002\u5471\u5472\u0007U\u0002",
+ "\u0002\u5472\u5473\u0007V\u0002\u0002\u5473\u5474\u0007a\u0002\u0002",
+ "\u5474\u5475\u0007K\u0002\u0002\u5475\u5476\u0007P\u0002\u0002\u5476",
+ "\u5477\u0007F\u0002\u0002\u5477\u5478\u0007G\u0002\u0002\u5478\u5479",
+ "\u0007R\u0002\u0002\u5479\u547a\u0007W\u0002\u0002\u547a\u0c66\u0003",
+ "\u0002\u0002\u0002\u547b\u547c\u0007U\u0002\u0002\u547c\u547d\u0007",
+ "V\u0002\u0002\u547d\u547e\u0007C\u0002\u0002\u547e\u547f\u0007V\u0002",
+ "\u0002\u547f\u5480\u0007U\u0002\u0002\u5480\u5481\u0007a\u0002\u0002",
+ "\u5481\u5482\u0007V\u0002\u0002\u5482\u5483\u0007a\u0002\u0002\u5483",
+ "\u5484\u0007V\u0002\u0002\u5484\u5485\u0007G\u0002\u0002\u5485\u5486",
+ "\u0007U\u0002\u0002\u5486\u5487\u0007V\u0002\u0002\u5487\u5488\u0007",
+ "a\u0002\u0002\u5488\u5489\u0007Q\u0002\u0002\u5489\u548a\u0007P\u0002",
+ "\u0002\u548a\u548b\u0007G\u0002\u0002\u548b\u0c68\u0003\u0002\u0002",
+ "\u0002\u548c\u548d\u0007U\u0002\u0002\u548d\u548e\u0007V\u0002\u0002",
+ "\u548e\u548f\u0007C\u0002\u0002\u548f\u5490\u0007V\u0002\u0002\u5490",
+ "\u5491\u0007U\u0002\u0002\u5491\u5492\u0007a\u0002\u0002\u5492\u5493",
+ "\u0007V\u0002\u0002\u5493\u5494\u0007a\u0002\u0002\u5494\u5495\u0007",
+ "V\u0002\u0002\u5495\u5496\u0007G\u0002\u0002\u5496\u5497\u0007U\u0002",
+ "\u0002\u5497\u5498\u0007V\u0002\u0002\u5498\u5499\u0007a\u0002\u0002",
+ "\u5499\u549a\u0007R\u0002\u0002\u549a\u549b\u0007C\u0002\u0002\u549b",
+ "\u549c\u0007K\u0002\u0002\u549c\u549d\u0007T\u0002\u0002\u549d\u549e",
+ "\u0007G\u0002\u0002\u549e\u549f\u0007F\u0002\u0002\u549f\u0c6a\u0003",
+ "\u0002\u0002\u0002\u54a0\u54a1\u0007U\u0002\u0002\u54a1\u54a2\u0007",
+ "V\u0002\u0002\u54a2\u54a3\u0007C\u0002\u0002\u54a3\u54a4\u0007V\u0002",
+ "\u0002\u54a4\u54a5\u0007U\u0002\u0002\u54a5\u54a6\u0007a\u0002\u0002",
+ "\u54a6\u54a7\u0007Y\u0002\u0002\u54a7\u54a8\u0007U\u0002\u0002\u54a8",
+ "\u54a9\u0007T\u0002\u0002\u54a9\u54aa\u0007a\u0002\u0002\u54aa\u54ab",
+ "\u0007V\u0002\u0002\u54ab\u54ac\u0007G\u0002\u0002\u54ac\u54ad\u0007",
+ "U\u0002\u0002\u54ad\u54ae\u0007V\u0002\u0002\u54ae\u0c6c\u0003\u0002",
+ "\u0002\u0002\u54af\u54b0\u0007U\u0002\u0002\u54b0\u54b1\u0007V\u0002",
+ "\u0002\u54b1\u54b2\u0007F\u0002\u0002\u54b2\u54b3\u0007F\u0002\u0002",
+ "\u54b3\u54b4\u0007G\u0002\u0002\u54b4\u54b5\u0007X\u0002\u0002\u54b5",
+ "\u54b6\u0007a\u0002\u0002\u54b6\u54b7\u0007R\u0002\u0002\u54b7\u54b8",
+ "\u0007Q\u0002\u0002\u54b8\u54b9\u0007R\u0002\u0002\u54b9\u0c6e\u0003",
+ "\u0002\u0002\u0002\u54ba\u54bb\u0007U\u0002\u0002\u54bb\u54bc\u0007",
+ "V\u0002\u0002\u54bc\u54bd\u0007F\u0002\u0002\u54bd\u54be\u0007F\u0002",
+ "\u0002\u54be\u54bf\u0007G\u0002\u0002\u54bf\u54c0\u0007X\u0002\u0002",
+ "\u54c0\u54c1\u0007a\u0002\u0002\u54c1\u54c2\u0007U\u0002\u0002\u54c2",
+ "\u54c3\u0007C\u0002\u0002\u54c3\u54c4\u0007O\u0002\u0002\u54c4\u54c5",
+ "\u0007R\u0002\u0002\u54c5\u0c70\u0003\u0002\u0002\u0002\u54c6\u54c7",
+ "\u0007U\u0002\u0002\u54c7\u54c8\u0007V\u0002\u0002\u54c8\u54c9\u0007",
+ "Q\u0002\u0002\u54c9\u54ca\u0007R\u0002\u0002\u54ca\u0c72\u0003\u0002",
+ "\u0002\u0002\u54cb\u54cc\u0007U\u0002\u0002\u54cc\u54cd\u0007V\u0002",
+ "\u0002\u54cd\u54ce\u0007Q\u0002\u0002\u54ce\u54cf\u0007T\u0002\u0002",
+ "\u54cf\u54d0\u0007C\u0002\u0002\u54d0\u54d1\u0007I\u0002\u0002\u54d1",
+ "\u54d2\u0007G\u0002\u0002\u54d2\u0c74\u0003\u0002\u0002\u0002\u54d3",
+ "\u54d4\u0007U\u0002\u0002\u54d4\u54d5\u0007V\u0002\u0002\u54d5\u54d6",
+ "\u0007Q\u0002\u0002\u54d6\u54d7\u0007T\u0002\u0002\u54d7\u54d8\u0007",
+ "G\u0002\u0002\u54d8\u0c76\u0003\u0002\u0002\u0002\u54d9\u54da\u0007",
+ "U\u0002\u0002\u54da\u54db\u0007V\u0002\u0002\u54db\u54dc\u0007T\u0002",
+ "\u0002\u54dc\u54dd\u0007G\u0002\u0002\u54dd\u54de\u0007C\u0002\u0002",
+ "\u54de\u54df\u0007O\u0002\u0002\u54df\u54e0\u0007U\u0002\u0002\u54e0",
+ "\u0c78\u0003\u0002\u0002\u0002\u54e1\u54e2\u0007U\u0002\u0002\u54e2",
+ "\u54e3\u0007V\u0002\u0002\u54e3\u54e4\u0007T\u0002\u0002\u54e4\u54e5",
+ "\u0007G\u0002\u0002\u54e5\u54e6\u0007C\u0002\u0002\u54e6\u54e7\u0007",
+ "O\u0002\u0002\u54e7\u0c7a\u0003\u0002\u0002\u0002\u54e8\u54e9\u0007",
+ "U\u0002\u0002\u54e9\u54ea\u0007V\u0002\u0002\u54ea\u54eb\u0007T\u0002",
+ "\u0002\u54eb\u54ec\u0007K\u0002\u0002\u54ec\u54ed\u0007E\u0002\u0002",
+ "\u54ed\u54ee\u0007V\u0002\u0002\u54ee\u0c7c\u0003\u0002\u0002\u0002",
+ "\u54ef\u54f0\u0007U\u0002\u0002\u54f0\u54f1\u0007V\u0002\u0002\u54f1",
+ "\u54f2\u0007T\u0002\u0002\u54f2\u54f3\u0007K\u0002\u0002\u54f3\u54f4",
+ "\u0007P\u0002\u0002\u54f4\u54f5\u0007I\u0002\u0002\u54f5\u0c7e\u0003",
+ "\u0002\u0002\u0002\u54f6\u54f7\u0007U\u0002\u0002\u54f7\u54f8\u0007",
+ "V\u0002\u0002\u54f8\u54f9\u0007T\u0002\u0002\u54f9\u54fa\u0007K\u0002",
+ "\u0002\u54fa\u54fb\u0007R\u0002\u0002\u54fb\u54fc\u0007G\u0002\u0002",
+ "\u54fc\u54fd\u0007a\u0002\u0002\u54fd\u54fe\u0007E\u0002\u0002\u54fe",
+ "\u54ff\u0007Q\u0002\u0002\u54ff\u5500\u0007N\u0002\u0002\u5500\u5501",
+ "\u0007W\u0002\u0002\u5501\u5502\u0007O\u0002\u0002\u5502\u5503\u0007",
+ "P\u0002\u0002\u5503\u5504\u0007U\u0002\u0002\u5504\u0c80\u0003\u0002",
+ "\u0002\u0002\u5505\u5506\u0007U\u0002\u0002\u5506\u5507\u0007V\u0002",
+ "\u0002\u5507\u5508\u0007T\u0002\u0002\u5508\u5509\u0007K\u0002\u0002",
+ "\u5509\u550a\u0007R\u0002\u0002\u550a\u550b\u0007G\u0002\u0002\u550b",
+ "\u550c\u0007a\u0002\u0002\u550c\u550d\u0007Y\u0002\u0002\u550d\u550e",
+ "\u0007K\u0002\u0002\u550e\u550f\u0007F\u0002\u0002\u550f\u5510\u0007",
+ "V\u0002\u0002\u5510\u5511\u0007J\u0002\u0002\u5511\u0c82\u0003\u0002",
+ "\u0002\u0002\u5512\u5513\u0007U\u0002\u0002\u5513\u5514\u0007V\u0002",
+ "\u0002\u5514\u5515\u0007T\u0002\u0002\u5515\u5516\u0007K\u0002\u0002",
+ "\u5516\u5517\u0007R\u0002\u0002\u5517\u0c84\u0003\u0002\u0002\u0002",
+ "\u5518\u5519\u0007U\u0002\u0002\u5519\u551a\u0007V\u0002\u0002\u551a",
+ "\u551b\u0007T\u0002\u0002\u551b\u551c\u0007W\u0002\u0002\u551c\u551d",
+ "\u0007E\u0002\u0002\u551d\u551e\u0007V\u0002\u0002\u551e\u551f\u0007",
+ "W\u0002\u0002\u551f\u5520\u0007T\u0002\u0002\u5520\u5521\u0007G\u0002",
+ "\u0002\u5521\u0c86\u0003\u0002\u0002\u0002\u5522\u5523\u0007U\u0002",
+ "\u0002\u5523\u5524\u0007W\u0002\u0002\u5524\u5525\u0007D\u0002\u0002",
+ "\u5525\u5526\u0007O\u0002\u0002\u5526\u5527\u0007W\u0002\u0002\u5527",
+ "\u5528\u0007N\u0002\u0002\u5528\u5529\u0007V\u0002\u0002\u5529\u552a",
+ "\u0007K\u0002\u0002\u552a\u552b\u0007U\u0002\u0002\u552b\u552c\u0007",
+ "G\u0002\u0002\u552c\u552d\u0007V\u0002\u0002\u552d\u0c88\u0003\u0002",
+ "\u0002\u0002\u552e\u552f\u0007U\u0002\u0002\u552f\u5530\u0007W\u0002",
+ "\u0002\u5530\u5531\u0007D\u0002\u0002\u5531\u5532\u0007R\u0002\u0002",
+ "\u5532\u5533\u0007C\u0002\u0002\u5533\u5534\u0007T\u0002\u0002\u5534",
+ "\u5535\u0007V\u0002\u0002\u5535\u5536\u0007K\u0002\u0002\u5536\u5537",
+ "\u0007V\u0002\u0002\u5537\u5538\u0007K\u0002\u0002\u5538\u5539\u0007",
+ "Q\u0002\u0002\u5539\u553a\u0007P\u0002\u0002\u553a\u553b\u0007a\u0002",
+ "\u0002\u553b\u553c\u0007T\u0002\u0002\u553c\u553d\u0007G\u0002\u0002",
+ "\u553d\u553e\u0007N\u0002\u0002\u553e\u0c8a\u0003\u0002\u0002\u0002",
+ "\u553f\u5540\u0007U\u0002\u0002\u5540\u5541\u0007W\u0002\u0002\u5541",
+ "\u5542\u0007D\u0002\u0002\u5542\u5543\u0007R\u0002\u0002\u5543\u5544",
+ "\u0007C\u0002\u0002\u5544\u5545\u0007T\u0002\u0002\u5545\u5546\u0007",
+ "V\u0002\u0002\u5546\u5547\u0007K\u0002\u0002\u5547\u5548\u0007V\u0002",
+ "\u0002\u5548\u5549\u0007K\u0002\u0002\u5549\u554a\u0007Q\u0002\u0002",
+ "\u554a\u554b\u0007P\u0002\u0002\u554b\u554c\u0007U\u0002\u0002\u554c",
+ "\u0c8c\u0003\u0002\u0002\u0002\u554d\u554e\u0007U\u0002\u0002\u554e",
+ "\u554f\u0007W\u0002\u0002\u554f\u5550\u0007D\u0002\u0002\u5550\u5551",
+ "\u0007R\u0002\u0002\u5551\u5552\u0007C\u0002\u0002\u5552\u5553\u0007",
+ "T\u0002\u0002\u5553\u5554\u0007V\u0002\u0002\u5554\u5555\u0007K\u0002",
+ "\u0002\u5555\u5556\u0007V\u0002\u0002\u5556\u5557\u0007K\u0002\u0002",
+ "\u5557\u5558\u0007Q\u0002\u0002\u5558\u5559\u0007P\u0002\u0002\u5559",
+ "\u0c8e\u0003\u0002\u0002\u0002\u555a\u555b\u0007U\u0002\u0002\u555b",
+ "\u555c\u0007W\u0002\u0002\u555c\u555d\u0007D\u0002\u0002\u555d\u555e",
+ "\u0007S\u0002\u0002\u555e\u555f\u0007W\u0002\u0002\u555f\u5560\u0007",
+ "G\u0002\u0002\u5560\u5561\u0007T\u0002\u0002\u5561\u5562\u0007K\u0002",
+ "\u0002\u5562\u5563\u0007G\u0002\u0002\u5563\u5564\u0007U\u0002\u0002",
+ "\u5564\u0c90\u0003\u0002\u0002\u0002\u5565\u5566\u0007U\u0002\u0002",
+ "\u5566\u5567\u0007W\u0002\u0002\u5567\u5568\u0007D\u0002\u0002\u5568",
+ "\u5569\u0007S\u0002\u0002\u5569\u556a\u0007W\u0002\u0002\u556a\u556b",
+ "\u0007G\u0002\u0002\u556b\u556c\u0007T\u0002\u0002\u556c\u556d\u0007",
+ "[\u0002\u0002\u556d\u556e\u0007a\u0002\u0002\u556e\u556f\u0007R\u0002",
+ "\u0002\u556f\u5570\u0007T\u0002\u0002\u5570\u5571\u0007W\u0002\u0002",
+ "\u5571\u5572\u0007P\u0002\u0002\u5572\u5573\u0007K\u0002\u0002\u5573",
+ "\u5574\u0007P\u0002\u0002\u5574\u5575\u0007I\u0002\u0002\u5575\u0c92",
+ "\u0003\u0002\u0002\u0002\u5576\u5577\u0007U\u0002\u0002\u5577\u5578",
+ "\u0007W\u0002\u0002\u5578\u5579\u0007D\u0002\u0002\u5579\u557a\u0007",
+ "U\u0002\u0002\u557a\u557b\u0007E\u0002\u0002\u557b\u557c\u0007T\u0002",
+ "\u0002\u557c\u557d\u0007K\u0002\u0002\u557d\u557e\u0007D\u0002\u0002",
+ "\u557e\u557f\u0007G\u0002\u0002\u557f\u0c94\u0003\u0002\u0002\u0002",
+ "\u5580\u5581\u0007U\u0002\u0002\u5581\u5582\u0007W\u0002\u0002\u5582",
+ "\u5583\u0007D\u0002\u0002\u5583\u5584\u0007U\u0002\u0002\u5584\u5585",
+ "\u0007G\u0002\u0002\u5585\u5586\u0007V\u0002\u0002\u5586\u0c96\u0003",
+ "\u0002\u0002\u0002\u5587\u5588\u0007U\u0002\u0002\u5588\u5589\u0007",
+ "W\u0002\u0002\u5589\u558a\u0007D\u0002\u0002\u558a\u558b\u0007U\u0002",
+ "\u0002\u558b\u558c\u0007V\u0002\u0002\u558c\u558d\u0007K\u0002\u0002",
+ "\u558d\u558e\u0007V\u0002\u0002\u558e\u558f\u0007W\u0002\u0002\u558f",
+ "\u5590\u0007V\u0002\u0002\u5590\u5591\u0007C\u0002\u0002\u5591\u5592",
+ "\u0007D\u0002\u0002\u5592\u5593\u0007N\u0002\u0002\u5593\u5594\u0007",
+ "G\u0002\u0002\u5594\u0c98\u0003\u0002\u0002\u0002\u5595\u5596\u0007",
+ "U\u0002\u0002\u5596\u5597\u0007W\u0002\u0002\u5597\u5598\u0007D\u0002",
+ "\u0002\u5598\u5599\u0007U\u0002\u0002\u5599\u559a\u0007V\u0002\u0002",
+ "\u559a\u559b\u0007T\u0002\u0002\u559b\u559c\u00074\u0002\u0002\u559c",
+ "\u0c9a\u0003\u0002\u0002\u0002\u559d\u559e\u0007U\u0002\u0002\u559e",
+ "\u559f\u0007W\u0002\u0002\u559f\u55a0\u0007D\u0002\u0002\u55a0\u55a1",
+ "\u0007U\u0002\u0002\u55a1\u55a2\u0007V\u0002\u0002\u55a2\u55a3\u0007",
+ "T\u0002\u0002\u55a3\u55a4\u00076\u0002\u0002\u55a4\u0c9c\u0003\u0002",
+ "\u0002\u0002\u55a5\u55a6\u0007U\u0002\u0002\u55a6\u55a7\u0007W\u0002",
+ "\u0002\u55a7\u55a8\u0007D\u0002\u0002\u55a8\u55a9\u0007U\u0002\u0002",
+ "\u55a9\u55aa\u0007V\u0002\u0002\u55aa\u55ab\u0007T\u0002\u0002\u55ab",
+ "\u55ac\u0007D\u0002\u0002\u55ac\u0c9e\u0003\u0002\u0002\u0002\u55ad",
+ "\u55ae\u0007U\u0002\u0002\u55ae\u55af\u0007W\u0002\u0002\u55af\u55b0",
+ "\u0007D\u0002\u0002\u55b0\u55b1\u0007U\u0002\u0002\u55b1\u55b2\u0007",
+ "V\u0002\u0002\u55b2\u55b3\u0007T\u0002\u0002\u55b3\u55b4\u0007E\u0002",
+ "\u0002\u55b4\u0ca0\u0003\u0002\u0002\u0002\u55b5\u55b6\u0007U\u0002",
+ "\u0002\u55b6\u55b7\u0007W\u0002\u0002\u55b7\u55b8\u0007D\u0002\u0002",
+ "\u55b8\u55b9\u0007V\u0002\u0002\u55b9\u55ba\u0007[\u0002\u0002\u55ba",
+ "\u55bb\u0007R\u0002\u0002\u55bb\u55bc\u0007G\u0002\u0002\u55bc\u0ca2",
+ "\u0003\u0002\u0002\u0002\u55bd\u55be\u0007U\u0002\u0002\u55be\u55bf",
+ "\u0007W\u0002\u0002\u55bf\u55c0\u0007E\u0002\u0002\u55c0\u55c1\u0007",
+ "E\u0002\u0002\u55c1\u55c2\u0007G\u0002\u0002\u55c2\u55c3\u0007U\u0002",
+ "\u0002\u55c3\u55c4\u0007U\u0002\u0002\u55c4\u55c5\u0007H\u0002\u0002",
+ "\u55c5\u55c6\u0007W\u0002\u0002\u55c6\u55c7\u0007N\u0002\u0002\u55c7",
+ "\u0ca4\u0003\u0002\u0002\u0002\u55c8\u55c9\u0007U\u0002\u0002\u55c9",
+ "\u55ca\u0007W\u0002\u0002\u55ca\u55cb\u0007E\u0002\u0002\u55cb\u55cc",
+ "\u0007E\u0002\u0002\u55cc\u55cd\u0007G\u0002\u0002\u55cd\u55ce\u0007",
+ "U\u0002\u0002\u55ce\u55cf\u0007U\u0002\u0002\u55cf\u0ca6\u0003\u0002",
+ "\u0002\u0002\u55d0\u55d1\u0007U\u0002\u0002\u55d1\u55d2\u0007W\u0002",
+ "\u0002\u55d2\u55d3\u0007O\u0002\u0002\u55d3\u55d4\u0007O\u0002\u0002",
+ "\u55d4\u55d5\u0007C\u0002\u0002\u55d5\u55d6\u0007T\u0002\u0002\u55d6",
+ "\u55d7\u0007[\u0002\u0002\u55d7\u0ca8\u0003\u0002\u0002\u0002\u55d8",
+ "\u55d9\u0007U\u0002\u0002\u55d9\u55da\u0007W\u0002\u0002\u55da\u55db",
+ "\u0007R\u0002\u0002\u55db\u55dc\u0007R\u0002\u0002\u55dc\u55dd\u0007",
+ "N\u0002\u0002\u55dd\u55de\u0007G\u0002\u0002\u55de\u55df\u0007O\u0002",
+ "\u0002\u55df\u55e0\u0007G\u0002\u0002\u55e0\u55e1\u0007P\u0002\u0002",
+ "\u55e1\u55e2\u0007V\u0002\u0002\u55e2\u55e3\u0007C\u0002\u0002\u55e3",
+ "\u55e4\u0007N\u0002\u0002\u55e4\u0caa\u0003\u0002\u0002\u0002\u55e5",
+ "\u55e6\u0007U\u0002\u0002\u55e6\u55e7\u0007W\u0002\u0002\u55e7\u55e8",
+ "\u0007U\u0002\u0002\u55e8\u55e9\u0007R\u0002\u0002\u55e9\u55ea\u0007",
+ "G\u0002\u0002\u55ea\u55eb\u0007P\u0002\u0002\u55eb\u55ec\u0007F\u0002",
+ "\u0002\u55ec\u0cac\u0003\u0002\u0002\u0002\u55ed\u55ee\u0007U\u0002",
+ "\u0002\u55ee\u55ef\u0007Y\u0002\u0002\u55ef\u55f0\u0007C\u0002\u0002",
+ "\u55f0\u55f1\u0007R\u0002\u0002\u55f1\u55f2\u0007a\u0002\u0002\u55f2",
+ "\u55f3\u0007L\u0002\u0002\u55f3\u55f4\u0007Q\u0002\u0002\u55f4\u55f5",
+ "\u0007K\u0002\u0002\u55f5\u55f6\u0007P\u0002\u0002\u55f6\u55f7\u0007",
+ "a\u0002\u0002\u55f7\u55f8\u0007K\u0002\u0002\u55f8\u55f9\u0007P\u0002",
+ "\u0002\u55f9\u55fa\u0007R\u0002\u0002\u55fa\u55fb\u0007W\u0002\u0002",
+ "\u55fb\u55fc\u0007V\u0002\u0002\u55fc\u55fd\u0007U\u0002\u0002\u55fd",
+ "\u0cae\u0003\u0002\u0002\u0002\u55fe\u55ff\u0007U\u0002\u0002\u55ff",
+ "\u5600\u0007Y\u0002\u0002\u5600\u5601\u0007K\u0002\u0002\u5601\u5602",
+ "\u0007V\u0002\u0002\u5602\u5603\u0007E\u0002\u0002\u5603\u5604\u0007",
+ "J\u0002\u0002\u5604\u5605\u0007Q\u0002\u0002\u5605\u5606\u0007X\u0002",
+ "\u0002\u5606\u5607\u0007G\u0002\u0002\u5607\u5608\u0007T\u0002\u0002",
+ "\u5608\u0cb0\u0003\u0002\u0002\u0002\u5609\u560a\u0007U\u0002\u0002",
+ "\u560a\u560b\u0007Y\u0002\u0002\u560b\u560c\u0007K\u0002\u0002\u560c",
+ "\u560d\u0007V\u0002\u0002\u560d\u560e\u0007E\u0002\u0002\u560e\u560f",
+ "\u0007J\u0002\u0002\u560f\u0cb2\u0003\u0002\u0002\u0002\u5610\u5611",
+ "\u0007U\u0002\u0002\u5611\u5612\u0007[\u0002\u0002\u5612\u5613\u0007",
+ "P\u0002\u0002\u5613\u5614\u0007E\u0002\u0002\u5614\u5615\u0007J\u0002",
+ "\u0002\u5615\u5616\u0007T\u0002\u0002\u5616\u5617\u0007Q\u0002\u0002",
+ "\u5617\u5618\u0007P\u0002\u0002\u5618\u5619\u0007Q\u0002\u0002\u5619",
+ "\u561a\u0007W\u0002\u0002\u561a\u561b\u0007U\u0002\u0002\u561b\u0cb4",
+ "\u0003\u0002\u0002\u0002\u561c\u561d\u0007U\u0002\u0002\u561d\u561e",
+ "\u0007[\u0002\u0002\u561e\u561f\u0007P\u0002\u0002\u561f\u5620\u0007",
+ "E\u0002\u0002\u5620\u0cb6\u0003\u0002\u0002\u0002\u5621\u5622\u0007",
+ "U\u0002\u0002\u5622\u5623\u0007[\u0002\u0002\u5623\u5624\u0007P\u0002",
+ "\u0002\u5624\u5625\u0007Q\u0002\u0002\u5625\u5626\u0007P\u0002\u0002",
+ "\u5626\u5627\u0007[\u0002\u0002\u5627\u5628\u0007O\u0002\u0002\u5628",
+ "\u0cb8\u0003\u0002\u0002\u0002\u5629\u562a\u0007U\u0002\u0002\u562a",
+ "\u562b\u0007[\u0002\u0002\u562b\u562c\u0007U\u0002\u0002\u562c\u562d",
+ "\u0007C\u0002\u0002\u562d\u562e\u0007U\u0002\u0002\u562e\u562f\u0007",
+ "O\u0002\u0002\u562f\u0cba\u0003\u0002\u0002\u0002\u5630\u5631\u0007",
+ "U\u0002\u0002\u5631\u5632\u0007[\u0002\u0002\u5632\u5633\u0007U\u0002",
+ "\u0002\u5633\u5634\u0007a\u0002\u0002\u5634\u5635\u0007C\u0002\u0002",
+ "\u5635\u5636\u0007W\u0002\u0002\u5636\u5637\u0007F\u0002\u0002\u5637",
+ "\u5638\u0007K\u0002\u0002\u5638\u5639\u0007V\u0002\u0002\u5639\u0cbc",
+ "\u0003\u0002\u0002\u0002\u563a\u563b\u0007U\u0002\u0002\u563b\u563c",
+ "\u0007[\u0002\u0002\u563c\u563d\u0007U\u0002\u0002\u563d\u563e\u0007",
+ "C\u0002\u0002\u563e\u563f\u0007W\u0002\u0002\u563f\u5640\u0007Z\u0002",
+ "\u0002\u5640\u0cbe\u0003\u0002\u0002\u0002\u5641\u5642\u0007U\u0002",
+ "\u0002\u5642\u5643\u0007[\u0002\u0002\u5643\u5644\u0007U\u0002\u0002",
+ "\u5644\u5645\u0007D\u0002\u0002\u5645\u5646\u0007C\u0002\u0002\u5646",
+ "\u5647\u0007E\u0002\u0002\u5647\u5648\u0007M\u0002\u0002\u5648\u5649",
+ "\u0007W\u0002\u0002\u5649\u564a\u0007R\u0002\u0002\u564a\u0cc0\u0003",
+ "\u0002\u0002\u0002\u564b\u564c\u0007U\u0002\u0002\u564c\u564d\u0007",
+ "[\u0002\u0002\u564d\u564e\u0007U\u0002\u0002\u564e\u564f\u0007a\u0002",
+ "\u0002\u564f\u5650\u0007E\u0002\u0002\u5650\u5651\u0007J\u0002\u0002",
+ "\u5651\u5652\u0007G\u0002\u0002\u5652\u5653\u0007E\u0002\u0002\u5653",
+ "\u5654\u0007M\u0002\u0002\u5654\u5655\u0007C\u0002\u0002\u5655\u5656",
+ "\u0007E\u0002\u0002\u5656\u5657\u0007N\u0002\u0002\u5657\u0cc2\u0003",
+ "\u0002\u0002\u0002\u5658\u5659\u0007U\u0002\u0002\u5659\u565a\u0007",
+ "[\u0002\u0002\u565a\u565b\u0007U\u0002\u0002\u565b\u565c\u0007a\u0002",
+ "\u0002\u565c\u565d\u0007E\u0002\u0002\u565d\u565e\u0007J\u0002\u0002",
+ "\u565e\u565f\u0007G\u0002\u0002\u565f\u5660\u0007E\u0002\u0002\u5660",
+ "\u5661\u0007M\u0002\u0002\u5661\u5662\u0007a\u0002\u0002\u5662\u5663",
+ "\u0007R\u0002\u0002\u5663\u5664\u0007T\u0002\u0002\u5664\u5665\u0007",
+ "K\u0002\u0002\u5665\u5666\u0007X\u0002\u0002\u5666\u5667\u0007K\u0002",
+ "\u0002\u5667\u5668\u0007N\u0002\u0002\u5668\u5669\u0007G\u0002\u0002",
+ "\u5669\u566a\u0007I\u0002\u0002\u566a\u566b\u0007G\u0002\u0002\u566b",
+ "\u0cc4\u0003\u0002\u0002\u0002\u566c\u566d\u0007U\u0002\u0002\u566d",
+ "\u566e\u0007[\u0002\u0002\u566e\u566f\u0007U\u0002\u0002\u566f\u5670",
+ "\u0007a\u0002\u0002\u5670\u5671\u0007E\u0002\u0002\u5671\u5672\u0007",
+ "Q\u0002\u0002\u5672\u5673\u0007P\u0002\u0002\u5673\u5674\u0007P\u0002",
+ "\u0002\u5674\u5675\u0007G\u0002\u0002\u5675\u5676\u0007E\u0002\u0002",
+ "\u5676\u5677\u0007V\u0002\u0002\u5677\u5678\u0007a\u0002\u0002\u5678",
+ "\u5679\u0007D\u0002\u0002\u5679\u567a\u0007[\u0002\u0002\u567a\u567b",
+ "\u0007a\u0002\u0002\u567b\u567c\u0007R\u0002\u0002\u567c\u567d\u0007",
+ "C\u0002\u0002\u567d\u567e\u0007V\u0002\u0002\u567e\u567f\u0007J\u0002",
+ "\u0002\u567f\u0cc6\u0003\u0002\u0002\u0002\u5680\u5681\u0007U\u0002",
+ "\u0002\u5681\u5682\u0007[\u0002\u0002\u5682\u5683\u0007U\u0002\u0002",
+ "\u5683\u5684\u0007a\u0002\u0002\u5684\u5685\u0007E\u0002\u0002\u5685",
+ "\u5686\u0007Q\u0002\u0002\u5686\u5687\u0007P\u0002\u0002\u5687\u5688",
+ "\u0007V\u0002\u0002\u5688\u5689\u0007G\u0002\u0002\u5689\u568a\u0007",
+ "Z\u0002\u0002\u568a\u568b\u0007V\u0002\u0002\u568b\u0cc8\u0003\u0002",
+ "\u0002\u0002\u568c\u568d\u0007U\u0002\u0002\u568d\u568e\u0007[\u0002",
+ "\u0002\u568e\u568f\u0007U\u0002\u0002\u568f\u5690\u0007F\u0002\u0002",
+ "\u5690\u5691\u0007C\u0002\u0002\u5691\u5692\u0007V\u0002\u0002\u5692",
+ "\u5693\u0007G\u0002\u0002\u5693\u0cca\u0003\u0002\u0002\u0002\u5694",
+ "\u5695\u0007U\u0002\u0002\u5695\u5696\u0007[\u0002\u0002\u5696\u5697",
+ "\u0007U\u0002\u0002\u5697\u5698\u0007F\u0002\u0002\u5698\u5699\u0007",
+ "D\u0002\u0002\u5699\u569a\u0007C\u0002\u0002\u569a\u0ccc\u0003\u0002",
+ "\u0002\u0002\u569b\u569c\u0007U\u0002\u0002\u569c\u569d\u0007[\u0002",
+ "\u0002\u569d\u569e\u0007U\u0002\u0002\u569e\u569f\u0007a\u0002\u0002",
+ "\u569f\u56a0\u0007F\u0002\u0002\u56a0\u56a1\u0007D\u0002\u0002\u56a1",
+ "\u56a2\u0007W\u0002\u0002\u56a2\u56a3\u0007T\u0002\u0002\u56a3\u56a4",
+ "\u0007K\u0002\u0002\u56a4\u56a5\u0007I\u0002\u0002\u56a5\u56a6\u0007",
+ "G\u0002\u0002\u56a6\u56a7\u0007P\u0002\u0002\u56a7\u0cce\u0003\u0002",
+ "\u0002\u0002\u56a8\u56a9\u0007U\u0002\u0002\u56a9\u56aa\u0007[\u0002",
+ "\u0002\u56aa\u56ab\u0007U\u0002\u0002\u56ab\u56ac\u0007F\u0002\u0002",
+ "\u56ac\u56ad\u0007I\u0002\u0002\u56ad\u0cd0\u0003\u0002\u0002\u0002",
+ "\u56ae\u56af\u0007U\u0002\u0002\u56af\u56b0\u0007[\u0002\u0002\u56b0",
+ "\u56b1\u0007U\u0002\u0002\u56b1\u56b2\u0007a\u0002\u0002\u56b2\u56b3",
+ "\u0007F\u0002\u0002\u56b3\u56b4\u0007N\u0002\u0002\u56b4\u56b5\u0007",
+ "a\u0002\u0002\u56b5\u56b6\u0007E\u0002\u0002\u56b6\u56b7\u0007W\u0002",
+ "\u0002\u56b7\u56b8\u0007T\u0002\u0002\u56b8\u56b9\u0007U\u0002\u0002",
+ "\u56b9\u56ba\u0007Q\u0002\u0002\u56ba\u56bb\u0007T\u0002\u0002\u56bb",
+ "\u0cd2\u0003\u0002\u0002\u0002\u56bc\u56bd\u0007U\u0002\u0002\u56bd",
+ "\u56be\u0007[\u0002\u0002\u56be\u56bf\u0007U\u0002\u0002\u56bf\u56c0",
+ "\u0007a\u0002\u0002\u56c0\u56c1\u0007F\u0002\u0002\u56c1\u56c2\u0007",
+ "O\u0002\u0002\u56c2\u56c3\u0007a\u0002\u0002\u56c3\u56c4\u0007T\u0002",
+ "\u0002\u56c4\u56c5\u0007Z\u0002\u0002\u56c5\u56c6\u0007H\u0002\u0002",
+ "\u56c6\u56c7\u0007Q\u0002\u0002\u56c7\u56c8\u0007T\u0002\u0002\u56c8",
+ "\u56c9\u0007O\u0002\u0002\u56c9\u56ca\u0007a\u0002\u0002\u56ca\u56cb",
+ "\u0007E\u0002\u0002\u56cb\u56cc\u0007J\u0002\u0002\u56cc\u56cd\u0007",
+ "T\u0002\u0002\u56cd\u0cd4\u0003\u0002\u0002\u0002\u56ce\u56cf\u0007",
+ "U\u0002\u0002\u56cf\u56d0\u0007[\u0002\u0002\u56d0\u56d1\u0007U\u0002",
+ "\u0002\u56d1\u56d2\u0007a\u0002\u0002\u56d2\u56d3\u0007F\u0002\u0002",
+ "\u56d3\u56d4\u0007O\u0002\u0002\u56d4\u56d5\u0007a\u0002\u0002\u56d5",
+ "\u56d6\u0007T\u0002\u0002\u56d6\u56d7\u0007Z\u0002\u0002\u56d7\u56d8",
+ "\u0007H\u0002\u0002\u56d8\u56d9\u0007Q\u0002\u0002\u56d9\u56da\u0007",
+ "T\u0002\u0002\u56da\u56db\u0007O\u0002\u0002\u56db\u56dc\u0007a\u0002",
+ "\u0002\u56dc\u56dd\u0007P\u0002\u0002\u56dd\u56de\u0007W\u0002\u0002",
+ "\u56de\u56df\u0007O\u0002\u0002\u56df\u0cd6\u0003\u0002\u0002\u0002",
+ "\u56e0\u56e1\u0007U\u0002\u0002\u56e1\u56e2\u0007[\u0002\u0002\u56e2",
+ "\u56e3\u0007U\u0002\u0002\u56e3\u56e4\u0007a\u0002\u0002\u56e4\u56e5",
+ "\u0007F\u0002\u0002\u56e5\u56e6\u0007Q\u0002\u0002\u56e6\u56e7\u0007",
+ "O\u0002\u0002\u56e7\u56e8\u0007a\u0002\u0002\u56e8\u56e9\u0007E\u0002",
+ "\u0002\u56e9\u56ea\u0007Q\u0002\u0002\u56ea\u56eb\u0007O\u0002\u0002",
+ "\u56eb\u56ec\u0007R\u0002\u0002\u56ec\u56ed\u0007C\u0002\u0002\u56ed",
+ "\u56ee\u0007T\u0002\u0002\u56ee\u56ef\u0007G\u0002\u0002\u56ef\u0cd8",
+ "\u0003\u0002\u0002\u0002\u56f0\u56f1\u0007U\u0002\u0002\u56f1\u56f2",
+ "\u0007[\u0002\u0002\u56f2\u56f3\u0007U\u0002\u0002\u56f3\u56f4\u0007",
+ "a\u0002\u0002\u56f4\u56f5\u0007F\u0002\u0002\u56f5\u56f6\u0007U\u0002",
+ "\u0002\u56f6\u56f7\u0007V\u0002\u0002\u56f7\u56f8\u0007a\u0002\u0002",
+ "\u56f8\u56f9\u0007R\u0002\u0002\u56f9\u56fa\u0007T\u0002\u0002\u56fa",
+ "\u56fb\u0007K\u0002\u0002\u56fb\u56fc\u0007O\u0002\u0002\u56fc\u56fd",
+ "\u00074\u0002\u0002\u56fd\u56fe\u0007U\u0002\u0002\u56fe\u56ff\u0007",
+ "G\u0002\u0002\u56ff\u5700\u0007E\u0002\u0002\u5700\u0cda\u0003\u0002",
+ "\u0002\u0002\u5701\u5702\u0007U\u0002\u0002\u5702\u5703\u0007[\u0002",
+ "\u0002\u5703\u5704\u0007U\u0002\u0002\u5704\u5705\u0007a\u0002\u0002",
+ "\u5705\u5706\u0007F\u0002\u0002\u5706\u5707\u0007U\u0002\u0002\u5707",
+ "\u5708\u0007V\u0002\u0002\u5708\u5709\u0007a\u0002\u0002\u5709\u570a",
+ "\u0007U\u0002\u0002\u570a\u570b\u0007G\u0002\u0002\u570b\u570c\u0007",
+ "E\u0002\u0002\u570c\u570d\u00074\u0002\u0002\u570d\u570e\u0007R\u0002",
+ "\u0002\u570e\u570f\u0007T\u0002\u0002\u570f\u5710\u0007K\u0002\u0002",
+ "\u5710\u5711\u0007O\u0002\u0002\u5711\u0cdc\u0003\u0002\u0002\u0002",
+ "\u5712\u5713\u0007U\u0002\u0002\u5713\u5714\u0007[\u0002\u0002\u5714",
+ "\u5715\u0007U\u0002\u0002\u5715\u5716\u0007a\u0002\u0002\u5716\u5717",
+ "\u0007G\u0002\u0002\u5717\u5718\u0007V\u0002\u0002\u5718\u5719\u0007",
+ "a\u0002\u0002\u5719\u571a\u0007D\u0002\u0002\u571a\u571b\u0007H\u0002",
+ "\u0002\u571b\u571c\u0007K\u0002\u0002\u571c\u571d\u0007N\u0002\u0002",
+ "\u571d\u571e\u0007G\u0002\u0002\u571e\u571f\u0007a\u0002\u0002\u571f",
+ "\u5720\u0007V\u0002\u0002\u5720\u5721\u0007Q\u0002\u0002\u5721\u5722",
+ "\u0007a\u0002\u0002\u5722\u5723\u0007T\u0002\u0002\u5723\u5724\u0007",
+ "C\u0002\u0002\u5724\u5725\u0007Y\u0002\u0002\u5725\u0cde\u0003\u0002",
+ "\u0002\u0002\u5726\u5727\u0007U\u0002\u0002\u5727\u5728\u0007[\u0002",
+ "\u0002\u5728\u5729\u0007U\u0002\u0002\u5729\u572a\u0007a\u0002\u0002",
+ "\u572a\u572b\u0007G\u0002\u0002\u572b\u572c\u0007V\u0002\u0002\u572c",
+ "\u572d\u0007a\u0002\u0002\u572d\u572e\u0007D\u0002\u0002\u572e\u572f",
+ "\u0007N\u0002\u0002\u572f\u5730\u0007Q\u0002\u0002\u5730\u5731\u0007",
+ "D\u0002\u0002\u5731\u5732\u0007a\u0002\u0002\u5732\u5733\u0007V\u0002",
+ "\u0002\u5733\u5734\u0007Q\u0002\u0002\u5734\u5735\u0007a\u0002\u0002",
+ "\u5735\u5736\u0007K\u0002\u0002\u5736\u5737\u0007O\u0002\u0002\u5737",
+ "\u5738\u0007C\u0002\u0002\u5738\u5739\u0007I\u0002\u0002\u5739\u573a",
+ "\u0007G\u0002\u0002\u573a\u0ce0\u0003\u0002\u0002\u0002\u573b\u573c",
+ "\u0007U\u0002\u0002\u573c\u573d\u0007[\u0002\u0002\u573d\u573e\u0007",
+ "U\u0002\u0002\u573e\u573f\u0007a\u0002\u0002\u573f\u5740\u0007G\u0002",
+ "\u0002\u5740\u5741\u0007V\u0002\u0002\u5741\u5742\u0007a\u0002\u0002",
+ "\u5742\u5743\u0007K\u0002\u0002\u5743\u5744\u0007O\u0002\u0002\u5744",
+ "\u5745\u0007C\u0002\u0002\u5745\u5746\u0007I\u0002\u0002\u5746\u5747",
+ "\u0007G\u0002\u0002\u5747\u5748\u0007a\u0002\u0002\u5748\u5749\u0007",
+ "V\u0002\u0002\u5749\u574a\u0007Q\u0002\u0002\u574a\u574b\u0007a\u0002",
+ "\u0002\u574b\u574c\u0007D\u0002\u0002\u574c\u574d\u0007N\u0002\u0002",
+ "\u574d\u574e\u0007Q\u0002\u0002\u574e\u574f\u0007D\u0002\u0002\u574f",
+ "\u0ce2\u0003\u0002\u0002\u0002\u5750\u5751\u0007U\u0002\u0002\u5751",
+ "\u5752\u0007[\u0002\u0002\u5752\u5753\u0007U\u0002\u0002\u5753\u5754",
+ "\u0007a\u0002\u0002\u5754\u5755\u0007G\u0002\u0002\u5755\u5756\u0007",
+ "V\u0002\u0002\u5756\u5757\u0007a\u0002\u0002\u5757\u5758\u0007T\u0002",
+ "\u0002\u5758\u5759\u0007C\u0002\u0002\u5759\u575a\u0007Y\u0002\u0002",
+ "\u575a\u575b\u0007a\u0002\u0002\u575b\u575c\u0007V\u0002\u0002\u575c",
+ "\u575d\u0007Q\u0002\u0002\u575d\u575e\u0007a\u0002\u0002\u575e\u575f",
+ "\u0007D\u0002\u0002\u575f\u5760\u0007H\u0002\u0002\u5760\u5761\u0007",
+ "K\u0002\u0002\u5761\u5762\u0007N\u0002\u0002\u5762\u5763\u0007G\u0002",
+ "\u0002\u5763\u0ce4\u0003\u0002\u0002\u0002\u5764\u5765\u0007U\u0002",
+ "\u0002\u5765\u5766\u0007[\u0002\u0002\u5766\u5767\u0007U\u0002\u0002",
+ "\u5767\u5768\u0007a\u0002\u0002\u5768\u5769\u0007G\u0002\u0002\u5769",
+ "\u576a\u0007Z\u0002\u0002\u576a\u576b\u0007V\u0002\u0002\u576b\u576c",
+ "\u0007R\u0002\u0002\u576c\u576d\u0007F\u0002\u0002\u576d\u576e\u0007",
+ "V\u0002\u0002\u576e\u576f\u0007Z\u0002\u0002\u576f\u5770\u0007V\u0002",
+ "\u0002\u5770\u0ce6\u0003\u0002\u0002\u0002\u5771\u5772\u0007U\u0002",
+ "\u0002\u5772\u5773\u0007[\u0002\u0002\u5773\u5774\u0007U\u0002\u0002",
+ "\u5774\u5775\u0007a\u0002\u0002\u5775\u5776\u0007G\u0002\u0002\u5776",
+ "\u5777\u0007Z\u0002\u0002\u5777\u5778\u0007V\u0002\u0002\u5778\u5779",
+ "\u0007T\u0002\u0002\u5779\u577a\u0007C\u0002\u0002\u577a\u577b\u0007",
+ "E\u0002\u0002\u577b\u577c\u0007V\u0002\u0002\u577c\u577d\u0007a\u0002",
+ "\u0002\u577d\u577e\u0007W\u0002\u0002\u577e\u577f\u0007V\u0002\u0002",
+ "\u577f\u5780\u0007E\u0002\u0002\u5780\u0ce8\u0003\u0002\u0002\u0002",
+ "\u5781\u5782\u0007U\u0002\u0002\u5782\u5783\u0007[\u0002\u0002\u5783",
+ "\u5784\u0007U\u0002\u0002\u5784\u5785\u0007a\u0002\u0002\u5785\u5786",
+ "\u0007H\u0002\u0002\u5786\u5787\u0007D\u0002\u0002\u5787\u5788\u0007",
+ "V\u0002\u0002\u5788\u5789\u0007a\u0002\u0002\u5789\u578a\u0007K\u0002",
+ "\u0002\u578a\u578b\u0007P\u0002\u0002\u578b\u578c\u0007U\u0002\u0002",
+ "\u578c\u578d\u0007F\u0002\u0002\u578d\u578e\u0007G\u0002\u0002\u578e",
+ "\u578f\u0007N\u0002\u0002\u578f\u0cea\u0003\u0002\u0002\u0002\u5790",
+ "\u5791\u0007U\u0002\u0002\u5791\u5792\u0007[\u0002\u0002\u5792\u5793",
+ "\u0007U\u0002\u0002\u5793\u5794\u0007a\u0002\u0002\u5794\u5795\u0007",
+ "H\u0002\u0002\u5795\u5796\u0007K\u0002\u0002\u5796\u5797\u0007N\u0002",
+ "\u0002\u5797\u5798\u0007V\u0002\u0002\u5798\u5799\u0007G\u0002\u0002",
+ "\u5799\u579a\u0007T\u0002\u0002\u579a\u579b\u0007a\u0002\u0002\u579b",
+ "\u579c\u0007C\u0002\u0002\u579c\u579d\u0007E\u0002\u0002\u579d\u579e",
+ "\u0007N\u0002\u0002\u579e\u579f\u0007U\u0002\u0002\u579f\u0cec\u0003",
+ "\u0002\u0002\u0002\u57a0\u57a1\u0007U\u0002\u0002\u57a1\u57a2\u0007",
+ "[\u0002\u0002\u57a2\u57a3\u0007U\u0002\u0002\u57a3\u57a4\u0007a\u0002",
+ "\u0002\u57a4\u57a5\u0007H\u0002\u0002\u57a5\u57a6\u0007P\u0002\u0002",
+ "\u57a6\u57a7\u0007O\u0002\u0002\u57a7\u57a8\u0007C\u0002\u0002\u57a8",
+ "\u57a9\u0007V\u0002\u0002\u57a9\u57aa\u0007E\u0002\u0002\u57aa\u57ab",
+ "\u0007J\u0002\u0002\u57ab\u57ac\u0007G\u0002\u0002\u57ac\u57ad\u0007",
+ "U\u0002\u0002\u57ad\u0cee\u0003\u0002\u0002\u0002\u57ae\u57af\u0007",
+ "U\u0002\u0002\u57af\u57b0\u0007[\u0002\u0002\u57b0\u57b1\u0007U\u0002",
+ "\u0002\u57b1\u57b2\u0007a\u0002\u0002\u57b2\u57b3\u0007H\u0002\u0002",
+ "\u57b3\u57b4\u0007P\u0002\u0002\u57b4\u57b5\u0007T\u0002\u0002\u57b5",
+ "\u57b6\u0007G\u0002\u0002\u57b6\u57b7\u0007R\u0002\u0002\u57b7\u57b8",
+ "\u0007N\u0002\u0002\u57b8\u57b9\u0007C\u0002\u0002\u57b9\u57ba\u0007",
+ "E\u0002\u0002\u57ba\u57bb\u0007G\u0002\u0002\u57bb\u0cf0\u0003\u0002",
+ "\u0002\u0002\u57bc\u57bd\u0007U\u0002\u0002\u57bd\u57be\u0007[\u0002",
+ "\u0002\u57be\u57bf\u0007U\u0002\u0002\u57bf\u57c0\u0007a\u0002\u0002",
+ "\u57c0\u57c1\u0007I\u0002\u0002\u57c1\u57c2\u0007G\u0002\u0002\u57c2",
+ "\u57c3\u0007V\u0002\u0002\u57c3\u57c4\u0007a\u0002\u0002\u57c4\u57c5",
+ "\u0007C\u0002\u0002\u57c5\u57c6\u0007E\u0002\u0002\u57c6\u57c7\u0007",
+ "N\u0002\u0002\u57c7\u57c8\u0007K\u0002\u0002\u57c8\u57c9\u0007F\u0002",
+ "\u0002\u57c9\u57ca\u0007U\u0002\u0002\u57ca\u0cf2\u0003\u0002\u0002",
+ "\u0002\u57cb\u57cc\u0007U\u0002\u0002\u57cc\u57cd\u0007[\u0002\u0002",
+ "\u57cd\u57ce\u0007U\u0002\u0002\u57ce\u57cf\u0007a\u0002\u0002\u57cf",
+ "\u57d0\u0007I\u0002\u0002\u57d0\u57d1\u0007G\u0002\u0002\u57d1\u57d2",
+ "\u0007V\u0002\u0002\u57d2\u57d3\u0007a\u0002\u0002\u57d3\u57d4\u0007",
+ "E\u0002\u0002\u57d4\u57d5\u0007Q\u0002\u0002\u57d5\u57d6\u0007N\u0002",
+ "\u0002\u57d6\u57d7\u0007a\u0002\u0002\u57d7\u57d8\u0007C\u0002\u0002",
+ "\u57d8\u57d9\u0007E\u0002\u0002\u57d9\u57da\u0007N\u0002\u0002\u57da",
+ "\u57db\u0007K\u0002\u0002\u57db\u57dc\u0007F\u0002\u0002\u57dc\u57dd",
+ "\u0007U\u0002\u0002\u57dd\u0cf4\u0003\u0002\u0002\u0002\u57de\u57df",
+ "\u0007U\u0002\u0002\u57df\u57e0\u0007[\u0002\u0002\u57e0\u57e1\u0007",
+ "U\u0002\u0002\u57e1\u57e2\u0007a\u0002\u0002\u57e2\u57e3\u0007I\u0002",
+ "\u0002\u57e3\u57e4\u0007G\u0002\u0002\u57e4\u57e5\u0007V\u0002\u0002",
+ "\u57e5\u57e6\u0007a\u0002\u0002\u57e6\u57e7\u0007R\u0002\u0002\u57e7",
+ "\u57e8\u0007T\u0002\u0002\u57e8\u57e9\u0007K\u0002\u0002\u57e9\u57ea",
+ "\u0007X\u0002\u0002\u57ea\u57eb\u0007K\u0002\u0002\u57eb\u57ec\u0007",
+ "N\u0002\u0002\u57ec\u57ed\u0007G\u0002\u0002\u57ed\u57ee\u0007I\u0002",
+ "\u0002\u57ee\u57ef\u0007G\u0002\u0002\u57ef\u57f0\u0007U\u0002\u0002",
+ "\u57f0\u0cf6\u0003\u0002\u0002\u0002\u57f1\u57f2\u0007U\u0002\u0002",
+ "\u57f2\u57f3\u0007[\u0002\u0002\u57f3\u57f4\u0007U\u0002\u0002\u57f4",
+ "\u57f5\u0007a\u0002\u0002\u57f5\u57f6\u0007I\u0002\u0002\u57f6\u57f7",
+ "\u0007G\u0002\u0002\u57f7\u57f8\u0007V\u0002\u0002\u57f8\u57f9\u0007",
+ "V\u0002\u0002\u57f9\u57fa\u0007Q\u0002\u0002\u57fa\u57fb\u0007M\u0002",
+ "\u0002\u57fb\u57fc\u0007G\u0002\u0002\u57fc\u57fd\u0007P\u0002\u0002",
+ "\u57fd\u57fe\u0007K\u0002\u0002\u57fe\u57ff\u0007F\u0002\u0002\u57ff",
+ "\u0cf8\u0003\u0002\u0002\u0002\u5800\u5801\u0007U\u0002\u0002\u5801",
+ "\u5802\u0007[\u0002\u0002\u5802\u5803\u0007U\u0002\u0002\u5803\u5804",
+ "\u0007a\u0002\u0002\u5804\u5805\u0007I\u0002\u0002\u5805\u5806\u0007",
+ "G\u0002\u0002\u5806\u5807\u0007V\u0002\u0002\u5807\u5808\u0007Z\u0002",
+ "\u0002\u5808\u5809\u0007V\u0002\u0002\u5809\u580a\u0007K\u0002\u0002",
+ "\u580a\u580b\u0007X\u0002\u0002\u580b\u580c\u0007C\u0002\u0002\u580c",
+ "\u580d\u0007N\u0002\u0002\u580d\u0cfa\u0003\u0002\u0002\u0002\u580e",
+ "\u580f\u0007U\u0002\u0002\u580f\u5810\u0007[\u0002\u0002\u5810\u5811",
+ "\u0007U\u0002\u0002\u5811\u5812\u0007a\u0002\u0002\u5812\u5813\u0007",
+ "I\u0002\u0002\u5813\u5814\u0007W\u0002\u0002\u5814\u5815\u0007K\u0002",
+ "\u0002\u5815\u5816\u0007F\u0002\u0002\u5816\u0cfc\u0003\u0002\u0002",
+ "\u0002\u5817\u5818\u0007U\u0002\u0002\u5818\u5819\u0007[\u0002\u0002",
+ "\u5819\u581a\u0007U\u0002\u0002\u581a\u581b\u0007I\u0002\u0002\u581b",
+ "\u581c\u0007W\u0002\u0002\u581c\u581d\u0007K\u0002\u0002\u581d\u581e",
+ "\u0007F\u0002\u0002\u581e\u0cfe\u0003\u0002\u0002\u0002\u581f\u5820",
+ "\u0007U\u0002\u0002\u5820\u5821\u0007[\u0002\u0002\u5821\u5822\u0007",
+ "U\u0002\u0002\u5822\u5823\u0007M\u0002\u0002\u5823\u5824\u0007O\u0002",
+ "\u0002\u5824\u0d00\u0003\u0002\u0002\u0002\u5825\u5826\u0007U\u0002",
+ "\u0002\u5826\u5827\u0007[\u0002\u0002\u5827\u5828\u0007U\u0002\u0002",
+ "\u5828\u5829\u0007a\u0002\u0002\u5829\u582a\u0007O\u0002\u0002\u582a",
+ "\u582b\u0007C\u0002\u0002\u582b\u582c\u0007M\u0002\u0002\u582c\u582d",
+ "\u0007G\u0002\u0002\u582d\u582e\u0007a\u0002\u0002\u582e\u582f\u0007",
+ "Z\u0002\u0002\u582f\u5830\u0007O\u0002\u0002\u5830\u5831\u0007N\u0002",
+ "\u0002\u5831\u5832\u0007P\u0002\u0002\u5832\u5833\u0007Q\u0002\u0002",
+ "\u5833\u5834\u0007F\u0002\u0002\u5834\u5835\u0007G\u0002\u0002\u5835",
+ "\u5836\u0007K\u0002\u0002\u5836\u5837\u0007F\u0002\u0002\u5837\u0d02",
+ "\u0003\u0002\u0002\u0002\u5838\u5839\u0007U\u0002\u0002\u5839\u583a",
+ "\u0007[\u0002\u0002\u583a\u583b\u0007U\u0002\u0002\u583b\u583c\u0007",
+ "a\u0002\u0002\u583c\u583d\u0007O\u0002\u0002\u583d\u583e\u0007C\u0002",
+ "\u0002\u583e\u583f\u0007M\u0002\u0002\u583f\u5840\u0007G\u0002\u0002",
+ "\u5840\u5841\u0007Z\u0002\u0002\u5841\u5842\u0007O\u0002\u0002\u5842",
+ "\u5843\u0007N\u0002\u0002\u5843\u0d04\u0003\u0002\u0002\u0002\u5844",
+ "\u5845\u0007U\u0002\u0002\u5845\u5846\u0007[\u0002\u0002\u5846\u5847",
+ "\u0007U\u0002\u0002\u5847\u5848\u0007a\u0002\u0002\u5848\u5849\u0007",
+ "O\u0002\u0002\u5849\u584a\u0007M\u0002\u0002\u584a\u584b\u0007Z\u0002",
+ "\u0002\u584b\u584c\u0007O\u0002\u0002\u584c\u584d\u0007N\u0002\u0002",
+ "\u584d\u584e\u0007C\u0002\u0002\u584e\u584f\u0007V\u0002\u0002\u584f",
+ "\u5850\u0007V\u0002\u0002\u5850\u5851\u0007T\u0002\u0002\u5851\u0d06",
+ "\u0003\u0002\u0002\u0002\u5852\u5853\u0007U\u0002\u0002\u5853\u5854",
+ "\u0007[\u0002\u0002\u5854\u5855\u0007U\u0002\u0002\u5855\u5856\u0007",
+ "a\u0002\u0002\u5856\u5857\u0007O\u0002\u0002\u5857\u5858\u0007M\u0002",
+ "\u0002\u5858\u5859\u0007Z\u0002\u0002\u5859\u585a\u0007V\u0002\u0002",
+ "\u585a\u585b\u0007K\u0002\u0002\u585b\u0d08\u0003\u0002\u0002\u0002",
+ "\u585c\u585d\u0007U\u0002\u0002\u585d\u585e\u0007[\u0002\u0002\u585e",
+ "\u585f\u0007U\u0002\u0002\u585f\u5860\u0007Q\u0002\u0002\u5860\u5861",
+ "\u0007D\u0002\u0002\u5861\u5862\u0007L\u0002\u0002\u5862\u0d0a\u0003",
+ "\u0002\u0002\u0002\u5863\u5864\u0007U\u0002\u0002\u5864\u5865\u0007",
+ "[\u0002\u0002\u5865\u5866\u0007U\u0002\u0002\u5866\u5867\u0007a\u0002",
+ "\u0002\u5867\u5868\u0007Q\u0002\u0002\u5868\u5869\u0007R\u0002\u0002",
+ "\u5869\u586a\u0007a\u0002\u0002\u586a\u586b\u0007C\u0002\u0002\u586b",
+ "\u586c\u0007F\u0002\u0002\u586c\u586d\u0007V\u0002\u0002\u586d\u586e",
+ "\u00074\u0002\u0002\u586e\u586f\u0007D\u0002\u0002\u586f\u5870\u0007",
+ "K\u0002\u0002\u5870\u5871\u0007P\u0002\u0002\u5871\u0d0c\u0003\u0002",
+ "\u0002\u0002\u5872\u5873\u0007U\u0002\u0002\u5873\u5874\u0007[\u0002",
+ "\u0002\u5874\u5875\u0007U\u0002\u0002\u5875\u5876\u0007a\u0002\u0002",
+ "\u5876\u5877\u0007Q\u0002\u0002\u5877\u5878\u0007R\u0002\u0002\u5878",
+ "\u5879\u0007a\u0002\u0002\u5879\u587a\u0007C\u0002\u0002\u587a\u587b",
+ "\u0007F\u0002\u0002\u587b\u587c\u0007V\u0002\u0002\u587c\u587d\u0007",
+ "E\u0002\u0002\u587d\u587e\u0007Q\u0002\u0002\u587e\u587f\u0007P\u0002",
+ "\u0002\u587f\u5880\u0007U\u0002\u0002\u5880\u0d0e\u0003\u0002\u0002",
+ "\u0002\u5881\u5882\u0007U\u0002\u0002\u5882\u5883\u0007[\u0002\u0002",
+ "\u5883\u5884\u0007U\u0002\u0002\u5884\u5885\u0007a\u0002\u0002\u5885",
+ "\u5886\u0007Q\u0002\u0002\u5886\u5887\u0007R\u0002\u0002\u5887\u5888",
+ "\u0007a\u0002\u0002\u5888\u5889\u0007C\u0002\u0002\u5889\u588a\u0007",
+ "N\u0002\u0002\u588a\u588b\u0007U\u0002\u0002\u588b\u588c\u0007E\u0002",
+ "\u0002\u588c\u588d\u0007T\u0002\u0002\u588d\u588e\u0007X\u0002\u0002",
+ "\u588e\u588f\u0007C\u0002\u0002\u588f\u5890\u0007N\u0002\u0002\u5890",
+ "\u0d10\u0003\u0002\u0002\u0002\u5891\u5892\u0007U\u0002\u0002\u5892",
+ "\u5893\u0007[\u0002\u0002\u5893\u5894\u0007U\u0002\u0002\u5894\u5895",
+ "\u0007a\u0002\u0002\u5895\u5896\u0007Q\u0002\u0002\u5896\u5897\u0007",
+ "R\u0002\u0002\u5897\u5898\u0007a\u0002\u0002\u5898\u5899\u0007C\u0002",
+ "\u0002\u5899\u589a\u0007V\u0002\u0002\u589a\u589b\u0007I\u0002\u0002",
+ "\u589b\u0d12\u0003\u0002\u0002\u0002\u589c\u589d\u0007U\u0002\u0002",
+ "\u589d\u589e\u0007[\u0002\u0002\u589e\u589f\u0007U\u0002\u0002\u589f",
+ "\u58a0\u0007a\u0002\u0002\u58a0\u58a1\u0007Q\u0002\u0002\u58a1\u58a2",
+ "\u0007R\u0002\u0002\u58a2\u58a3\u0007a\u0002\u0002\u58a3\u58a4\u0007",
+ "D\u0002\u0002\u58a4\u58a5\u0007K\u0002\u0002\u58a5\u58a6\u0007P\u0002",
+ "\u0002\u58a6\u58a7\u00074\u0002\u0002\u58a7\u58a8\u0007C\u0002\u0002",
+ "\u58a8\u58a9\u0007F\u0002\u0002\u58a9\u58aa\u0007V\u0002\u0002\u58aa",
+ "\u0d14\u0003\u0002\u0002\u0002\u58ab\u58ac\u0007U\u0002\u0002\u58ac",
+ "\u58ad\u0007[\u0002\u0002\u58ad\u58ae\u0007U\u0002\u0002\u58ae\u58af",
+ "\u0007a\u0002\u0002\u58af\u58b0\u0007Q\u0002\u0002\u58b0\u58b1\u0007",
+ "R\u0002\u0002\u58b1\u58b2\u0007a\u0002\u0002\u58b2\u58b3\u0007D\u0002",
+ "\u0002\u58b3\u58b4\u0007K\u0002\u0002\u58b4\u58b5\u0007V\u0002\u0002",
+ "\u58b5\u58b6\u0007X\u0002\u0002\u58b6\u58b7\u0007G\u0002\u0002\u58b7",
+ "\u58b8\u0007E\u0002\u0002\u58b8\u0d16\u0003\u0002\u0002\u0002\u58b9",
+ "\u58ba\u0007U\u0002\u0002\u58ba\u58bb\u0007[\u0002\u0002\u58bb\u58bc",
+ "\u0007U\u0002\u0002\u58bc\u58bd\u0007a\u0002\u0002\u58bd\u58be\u0007",
+ "Q\u0002\u0002\u58be\u58bf\u0007R\u0002\u0002\u58bf\u58c0\u0007a\u0002",
+ "\u0002\u58c0\u58c1\u0007D\u0002\u0002\u58c1\u58c2\u0007N\u0002\u0002",
+ "\u58c2\u58c3\u00074\u0002\u0002\u58c3\u58c4\u0007T\u0002\u0002\u58c4",
+ "\u0d18\u0003\u0002\u0002\u0002\u58c5\u58c6\u0007U\u0002\u0002\u58c6",
+ "\u58c7\u0007[\u0002\u0002\u58c7\u58c8\u0007U\u0002\u0002\u58c8\u58c9",
+ "\u0007a\u0002\u0002\u58c9\u58ca\u0007Q\u0002\u0002\u58ca\u58cb\u0007",
+ "R\u0002\u0002\u58cb\u58cc\u0007a\u0002\u0002\u58cc\u58cd\u0007D\u0002",
+ "\u0002\u58cd\u58ce\u0007N\u0002\u0002\u58ce\u58cf\u0007Q\u0002\u0002",
+ "\u58cf\u58d0\u0007Q\u0002\u0002\u58d0\u58d1\u0007O\u0002\u0002\u58d1",
+ "\u58d2\u0007a\u0002\u0002\u58d2\u58d3\u0007H\u0002\u0002\u58d3\u58d4",
+ "\u0007K\u0002\u0002\u58d4\u58d5\u0007N\u0002\u0002\u58d5\u58d6\u0007",
+ "V\u0002\u0002\u58d6\u58d7\u0007G\u0002\u0002\u58d7\u58d8\u0007T\u0002",
+ "\u0002\u58d8\u58d9\u0007a\u0002\u0002\u58d9\u58da\u0007N\u0002\u0002",
+ "\u58da\u58db\u0007K\u0002\u0002\u58db\u58dc\u0007U\u0002\u0002\u58dc",
+ "\u58dd\u0007V\u0002\u0002\u58dd\u0d1a\u0003\u0002\u0002\u0002\u58de",
+ "\u58df\u0007U\u0002\u0002\u58df\u58e0\u0007[\u0002\u0002\u58e0\u58e1",
+ "\u0007U\u0002\u0002\u58e1\u58e2\u0007a\u0002\u0002\u58e2\u58e3\u0007",
+ "Q\u0002\u0002\u58e3\u58e4\u0007R\u0002\u0002\u58e4\u58e5\u0007a\u0002",
+ "\u0002\u58e5\u58e6\u0007D\u0002\u0002\u58e6\u58e7\u0007N\u0002\u0002",
+ "\u58e7\u58e8\u0007Q\u0002\u0002\u58e8\u58e9\u0007Q\u0002\u0002\u58e9",
+ "\u58ea\u0007O\u0002\u0002\u58ea\u58eb\u0007a\u0002\u0002\u58eb\u58ec",
+ "\u0007H\u0002\u0002\u58ec\u58ed\u0007K\u0002\u0002\u58ed\u58ee\u0007",
+ "N\u0002\u0002\u58ee\u58ef\u0007V\u0002\u0002\u58ef\u58f0\u0007G\u0002",
+ "\u0002\u58f0\u58f1\u0007T\u0002\u0002\u58f1\u0d1c\u0003\u0002\u0002",
+ "\u0002\u58f2\u58f3\u0007U\u0002\u0002\u58f3\u58f4\u0007[\u0002\u0002",
+ "\u58f4\u58f5\u0007U\u0002\u0002\u58f5\u58f6\u0007a\u0002\u0002\u58f6",
+ "\u58f7\u0007Q\u0002\u0002\u58f7\u58f8\u0007R\u0002\u0002\u58f8\u58f9",
+ "\u0007a\u0002\u0002\u58f9\u58fa\u0007E\u0002\u0002\u58fa\u58fb\u0007",
+ "4\u0002\u0002\u58fb\u58fc\u0007E\u0002\u0002\u58fc\u0d1e\u0003\u0002",
+ "\u0002\u0002\u58fd\u58fe\u0007U\u0002\u0002\u58fe\u58ff\u0007[\u0002",
+ "\u0002\u58ff\u5900\u0007U\u0002\u0002\u5900\u5901\u0007a\u0002\u0002",
+ "\u5901\u5902\u0007Q\u0002\u0002\u5902\u5903\u0007R\u0002\u0002\u5903",
+ "\u5904\u0007a\u0002\u0002\u5904\u5905\u0007E\u0002\u0002\u5905\u5906",
+ "\u0007C\u0002\u0002\u5906\u5907\u0007U\u0002\u0002\u5907\u5908\u0007",
+ "V\u0002\u0002\u5908\u0d20\u0003\u0002\u0002\u0002\u5909\u590a\u0007",
+ "U\u0002\u0002\u590a\u590b\u0007[\u0002\u0002\u590b\u590c\u0007U\u0002",
+ "\u0002\u590c\u590d\u0007a\u0002\u0002\u590d\u590e\u0007Q\u0002\u0002",
+ "\u590e\u590f\u0007R\u0002\u0002\u590f\u5910\u0007a\u0002\u0002\u5910",
+ "\u5911\u0007E\u0002\u0002\u5911\u5912\u0007G\u0002\u0002\u5912\u5913",
+ "\u0007I\u0002\u0002\u5913\u0d22\u0003\u0002\u0002\u0002\u5914\u5915",
+ "\u0007U\u0002\u0002\u5915\u5916\u0007[\u0002\u0002\u5916\u5917\u0007",
+ "U\u0002\u0002\u5917\u5918\u0007a\u0002\u0002\u5918\u5919\u0007Q\u0002",
+ "\u0002\u5919\u591a\u0007R\u0002\u0002\u591a\u591b\u0007a\u0002\u0002",
+ "\u591b\u591c\u0007E\u0002\u0002\u591c\u591d\u0007N\u0002\u0002\u591d",
+ "\u591e\u00074\u0002\u0002\u591e\u591f\u0007E\u0002\u0002\u591f\u0d24",
+ "\u0003\u0002\u0002\u0002\u5920\u5921\u0007U\u0002\u0002\u5921\u5922",
+ "\u0007[\u0002\u0002\u5922\u5923\u0007U\u0002\u0002\u5923\u5924\u0007",
+ "a\u0002\u0002\u5924\u5925\u0007Q\u0002\u0002\u5925\u5926\u0007R\u0002",
+ "\u0002\u5926\u5927\u0007a\u0002\u0002\u5927\u5928\u0007E\u0002\u0002",
+ "\u5928\u5929\u0007Q\u0002\u0002\u5929\u592a\u0007O\u0002\u0002\u592a",
+ "\u592b\u0007D\u0002\u0002\u592b\u592c\u0007K\u0002\u0002\u592c\u592d",
+ "\u0007P\u0002\u0002\u592d\u592e\u0007G\u0002\u0002\u592e\u592f\u0007",
+ "F\u0002\u0002\u592f\u5930\u0007a\u0002\u0002\u5930\u5931\u0007J\u0002",
+ "\u0002\u5931\u5932\u0007C\u0002\u0002\u5932\u5933\u0007U\u0002\u0002",
+ "\u5933\u5934\u0007J\u0002\u0002\u5934\u0d26\u0003\u0002\u0002\u0002",
+ "\u5935\u5936\u0007U\u0002\u0002\u5936\u5937\u0007[\u0002\u0002\u5937",
+ "\u5938\u0007U\u0002\u0002\u5938\u5939\u0007a\u0002\u0002\u5939\u593a",
+ "\u0007Q\u0002\u0002\u593a\u593b\u0007R\u0002\u0002\u593b\u593c\u0007",
+ "a\u0002\u0002\u593c\u593d\u0007E\u0002\u0002\u593d\u593e\u0007Q\u0002",
+ "\u0002\u593e\u593f\u0007O\u0002\u0002\u593f\u5940\u0007R\u0002\u0002",
+ "\u5940\u0d28\u0003\u0002\u0002\u0002\u5941\u5942\u0007U\u0002\u0002",
+ "\u5942\u5943\u0007[\u0002\u0002\u5943\u5944\u0007U\u0002\u0002\u5944",
+ "\u5945\u0007a\u0002\u0002\u5945\u5946\u0007Q\u0002\u0002\u5946\u5947",
+ "\u0007R\u0002\u0002\u5947\u5948\u0007a\u0002\u0002\u5948\u5949\u0007",
+ "E\u0002\u0002\u5949\u594a\u0007Q\u0002\u0002\u594a\u594b\u0007P\u0002",
+ "\u0002\u594b\u594c\u0007X\u0002\u0002\u594c\u594d\u0007G\u0002\u0002",
+ "\u594d\u594e\u0007T\u0002\u0002\u594e\u594f\u0007V\u0002\u0002\u594f",
+ "\u0d2a\u0003\u0002\u0002\u0002\u5950\u5951\u0007U\u0002\u0002\u5951",
+ "\u5952\u0007[\u0002\u0002\u5952\u5953\u0007U\u0002\u0002\u5953\u5954",
+ "\u0007a\u0002\u0002\u5954\u5955\u0007Q\u0002\u0002\u5955\u5956\u0007",
+ "R\u0002\u0002\u5956\u5957\u0007a\u0002\u0002\u5957\u5958\u0007E\u0002",
+ "\u0002\u5958\u5959\u0007Q\u0002\u0002\u5959\u595a\u0007W\u0002\u0002",
+ "\u595a\u595b\u0007P\u0002\u0002\u595b\u595c\u0007V\u0002\u0002\u595c",
+ "\u595d\u0007E\u0002\u0002\u595d\u595e\u0007J\u0002\u0002\u595e\u595f",
+ "\u0007I\u0002\u0002\u595f\u0d2c\u0003\u0002\u0002\u0002\u5960\u5961",
+ "\u0007U\u0002\u0002\u5961\u5962\u0007[\u0002\u0002\u5962\u5963\u0007",
+ "U\u0002\u0002\u5963\u5964\u0007a\u0002\u0002\u5964\u5965\u0007Q\u0002",
+ "\u0002\u5965\u5966\u0007R\u0002\u0002\u5966\u5967\u0007a\u0002\u0002",
+ "\u5967\u5968\u0007E\u0002\u0002\u5968\u5969\u0007U\u0002\u0002\u5969",
+ "\u596a\u0007E\u0002\u0002\u596a\u596b\u0007Q\u0002\u0002\u596b\u596c",
+ "\u0007P\u0002\u0002\u596c\u596d\u0007X\u0002\u0002\u596d\u0d2e\u0003",
+ "\u0002\u0002\u0002\u596e\u596f\u0007U\u0002\u0002\u596f\u5970\u0007",
+ "[\u0002\u0002\u5970\u5971\u0007U\u0002\u0002\u5971\u5972\u0007a\u0002",
+ "\u0002\u5972\u5973\u0007Q\u0002\u0002\u5973\u5974\u0007R\u0002\u0002",
+ "\u5974\u5975\u0007a\u0002\u0002\u5975\u5976\u0007E\u0002\u0002\u5976",
+ "\u5977\u0007U\u0002\u0002\u5977\u5978\u0007E\u0002\u0002\u5978\u5979",
+ "\u0007Q\u0002\u0002\u5979\u597a\u0007P\u0002\u0002\u597a\u597b\u0007",
+ "X\u0002\u0002\u597b\u597c\u0007V\u0002\u0002\u597c\u597d\u0007G\u0002",
+ "\u0002\u597d\u597e\u0007U\u0002\u0002\u597e\u597f\u0007V\u0002\u0002",
+ "\u597f\u0d30\u0003\u0002\u0002\u0002\u5980\u5981\u0007U\u0002\u0002",
+ "\u5981\u5982\u0007[\u0002\u0002\u5982\u5983\u0007U\u0002\u0002\u5983",
+ "\u5984\u0007a\u0002\u0002\u5984\u5985\u0007Q\u0002\u0002\u5985\u5986",
+ "\u0007R\u0002\u0002\u5986\u5987\u0007a\u0002\u0002\u5987\u5988\u0007",
+ "E\u0002\u0002\u5988\u5989\u0007U\u0002\u0002\u5989\u598a\u0007T\u0002",
+ "\u0002\u598a\u0d32\u0003\u0002\u0002\u0002\u598b\u598c\u0007U\u0002",
+ "\u0002\u598c\u598d\u0007[\u0002\u0002\u598d\u598e\u0007U\u0002\u0002",
+ "\u598e\u598f\u0007a\u0002\u0002\u598f\u5990\u0007Q\u0002\u0002\u5990",
+ "\u5991\u0007R\u0002\u0002\u5991\u5992\u0007a\u0002\u0002\u5992\u5993",
+ "\u0007E\u0002\u0002\u5993\u5994\u0007U\u0002\u0002\u5994\u5995\u0007",
+ "Z\u0002\u0002\u5995\u5996\u0007a\u0002\u0002\u5996\u5997\u0007R\u0002",
+ "\u0002\u5997\u5998\u0007C\u0002\u0002\u5998\u5999\u0007V\u0002\u0002",
+ "\u5999\u599a\u0007E\u0002\u0002\u599a\u599b\u0007J\u0002\u0002\u599b",
+ "\u0d34\u0003\u0002\u0002\u0002\u599c\u599d\u0007U\u0002\u0002\u599d",
+ "\u599e\u0007[\u0002\u0002\u599e\u599f\u0007U\u0002\u0002\u599f\u59a0",
+ "\u0007a\u0002\u0002\u59a0\u59a1\u0007Q\u0002\u0002\u59a1\u59a2\u0007",
+ "R\u0002\u0002\u59a2\u59a3\u0007a\u0002\u0002\u59a3\u59a4\u0007E\u0002",
+ "\u0002\u59a4\u59a5\u0007[\u0002\u0002\u59a5\u59a6\u0007E\u0002\u0002",
+ "\u59a6\u59a7\u0007N\u0002\u0002\u59a7\u59a8\u0007G\u0002\u0002\u59a8",
+ "\u59a9\u0007F\u0002\u0002\u59a9\u59aa\u0007a\u0002\u0002\u59aa\u59ab",
+ "\u0007U\u0002\u0002\u59ab\u59ac\u0007G\u0002\u0002\u59ac\u59ad\u0007",
+ "S\u0002\u0002\u59ad\u0d36\u0003\u0002\u0002\u0002\u59ae\u59af\u0007",
+ "U\u0002\u0002\u59af\u59b0\u0007[\u0002\u0002\u59b0\u59b1\u0007U\u0002",
+ "\u0002\u59b1\u59b2\u0007a\u0002\u0002\u59b2\u59b3\u0007Q\u0002\u0002",
+ "\u59b3\u59b4\u0007R\u0002\u0002\u59b4\u59b5\u0007a\u0002\u0002\u59b5",
+ "\u59b6\u0007F\u0002\u0002\u59b6\u59b7\u0007G\u0002\u0002\u59b7\u59b8",
+ "\u0007E\u0002\u0002\u59b8\u59b9\u0007Q\u0002\u0002\u59b9\u59ba\u0007",
+ "O\u0002\u0002\u59ba\u59bb\u0007R\u0002\u0002\u59bb\u0d38\u0003\u0002",
+ "\u0002\u0002\u59bc\u59bd\u0007U\u0002\u0002\u59bd\u59be\u0007[\u0002",
+ "\u0002\u59be\u59bf\u0007U\u0002\u0002\u59bf\u59c0\u0007a\u0002\u0002",
+ "\u59c0\u59c1\u0007Q\u0002\u0002\u59c1\u59c2\u0007R\u0002\u0002\u59c2",
+ "\u59c3\u0007a\u0002\u0002\u59c3\u59c4\u0007F\u0002\u0002\u59c4\u59c5",
+ "\u0007G\u0002\u0002\u59c5\u59c6\u0007U\u0002\u0002\u59c6\u59c7\u0007",
+ "E\u0002\u0002\u59c7\u59c8\u0007G\u0002\u0002\u59c8\u59c9\u0007P\u0002",
+ "\u0002\u59c9\u59ca\u0007F\u0002\u0002\u59ca\u0d3a\u0003\u0002\u0002",
+ "\u0002\u59cb\u59cc\u0007U\u0002\u0002\u59cc\u59cd\u0007[\u0002\u0002",
+ "\u59cd\u59ce\u0007U\u0002\u0002\u59ce\u59cf\u0007a\u0002\u0002\u59cf",
+ "\u59d0\u0007Q\u0002\u0002\u59d0\u59d1\u0007R\u0002\u0002\u59d1\u59d2",
+ "\u0007a\u0002\u0002\u59d2\u59d3\u0007F\u0002\u0002\u59d3\u59d4\u0007",
+ "K\u0002\u0002\u59d4\u59d5\u0007U\u0002\u0002\u59d5\u59d6\u0007V\u0002",
+ "\u0002\u59d6\u59d7\u0007K\u0002\u0002\u59d7\u59d8\u0007P\u0002\u0002",
+ "\u59d8\u59d9\u0007E\u0002\u0002\u59d9\u59da\u0007V\u0002\u0002\u59da",
+ "\u0d3c\u0003\u0002\u0002\u0002\u59db\u59dc\u0007U\u0002\u0002\u59dc",
+ "\u59dd\u0007[\u0002\u0002\u59dd\u59de\u0007U\u0002\u0002\u59de\u59df",
+ "\u0007a\u0002\u0002\u59df\u59e0\u0007Q\u0002\u0002\u59e0\u59e1\u0007",
+ "R\u0002\u0002\u59e1\u59e2\u0007a\u0002\u0002\u59e2\u59e3\u0007F\u0002",
+ "\u0002\u59e3\u59e4\u0007T\u0002\u0002\u59e4\u59e5\u0007C\u0002\u0002",
+ "\u59e5\u0d3e\u0003\u0002\u0002\u0002\u59e6\u59e7\u0007U\u0002\u0002",
+ "\u59e7\u59e8\u0007[\u0002\u0002\u59e8\u59e9\u0007U\u0002\u0002\u59e9",
+ "\u59ea\u0007a\u0002\u0002\u59ea\u59eb\u0007Q\u0002\u0002\u59eb\u59ec",
+ "\u0007R\u0002\u0002\u59ec\u59ed\u0007a\u0002\u0002\u59ed\u59ee\u0007",
+ "F\u0002\u0002\u59ee\u59ef\u0007W\u0002\u0002\u59ef\u59f0\u0007O\u0002",
+ "\u0002\u59f0\u59f1\u0007R\u0002\u0002\u59f1\u0d40\u0003\u0002\u0002",
+ "\u0002\u59f2\u59f3\u0007U\u0002\u0002\u59f3\u59f4\u0007[\u0002\u0002",
+ "\u59f4\u59f5\u0007U\u0002\u0002\u59f5\u59f6\u0007a\u0002\u0002\u59f6",
+ "\u59f7\u0007Q\u0002\u0002\u59f7\u59f8\u0007R\u0002\u0002\u59f8\u59f9",
+ "\u0007a\u0002\u0002\u59f9\u59fa\u0007F\u0002\u0002\u59fa\u59fb\u0007",
+ "X\u0002\u0002\u59fb\u59fc\u0007a\u0002\u0002\u59fc\u59fd\u0007E\u0002",
+ "\u0002\u59fd\u59fe\u0007J\u0002\u0002\u59fe\u59ff\u0007G\u0002\u0002",
+ "\u59ff\u5a00\u0007E\u0002\u0002\u5a00\u5a01\u0007M\u0002\u0002\u5a01",
+ "\u0d42\u0003\u0002\u0002\u0002\u5a02\u5a03\u0007U\u0002\u0002\u5a03",
+ "\u5a04\u0007[\u0002\u0002\u5a04\u5a05\u0007U\u0002\u0002\u5a05\u5a06",
+ "\u0007a\u0002\u0002\u5a06\u5a07\u0007Q\u0002\u0002\u5a07\u5a08\u0007",
+ "R\u0002\u0002\u5a08\u5a09\u0007a\u0002\u0002\u5a09\u5a0a\u0007G\u0002",
+ "\u0002\u5a0a\u5a0b\u0007P\u0002\u0002\u5a0b\u5a0c\u0007H\u0002\u0002",
+ "\u5a0c\u5a0d\u0007Q\u0002\u0002\u5a0d\u5a0e\u0007T\u0002\u0002\u5a0e",
+ "\u5a0f\u0007E\u0002\u0002\u5a0f\u5a10\u0007G\u0002\u0002\u5a10\u5a11",
+ "\u0007a\u0002\u0002\u5a11\u5a12\u0007P\u0002\u0002\u5a12\u5a13\u0007",
+ "Q\u0002\u0002\u5a13\u5a14\u0007V\u0002\u0002\u5a14\u5a15\u0007a\u0002",
+ "\u0002\u5a15\u5a16\u0007P\u0002\u0002\u5a16\u5a17\u0007W\u0002\u0002",
+ "\u5a17\u5a18\u0007N\u0002\u0002\u5a18\u5a19\u0007N\u0002\u0002\u5a19",
+ "\u5a1a\u0007&\u0002\u0002\u5a1a\u0d44\u0003\u0002\u0002\u0002\u5a1b",
+ "\u5a1c\u0007U\u0002\u0002\u5a1c\u5a1d\u0007[\u0002\u0002\u5a1d\u5a1e",
+ "\u0007U\u0002\u0002\u5a1e\u5a1f\u0007Q\u0002\u0002\u5a1f\u5a20\u0007",
+ "R\u0002\u0002\u5a20\u5a21\u0007G\u0002\u0002\u5a21\u5a22\u0007T\u0002",
+ "\u0002\u5a22\u0d46\u0003\u0002\u0002\u0002\u5a23\u5a24\u0007U\u0002",
+ "\u0002\u5a24\u5a25\u0007[\u0002\u0002\u5a25\u5a26\u0007U\u0002\u0002",
+ "\u5a26\u5a27\u0007a\u0002\u0002\u5a27\u5a28\u0007Q\u0002\u0002\u5a28",
+ "\u5a29\u0007R\u0002\u0002\u5a29\u5a2a\u0007a\u0002\u0002\u5a2a\u5a2b",
+ "\u0007G\u0002\u0002\u5a2b\u5a2c\u0007Z\u0002\u0002\u5a2c\u5a2d\u0007",
+ "V\u0002\u0002\u5a2d\u5a2e\u0007T\u0002\u0002\u5a2e\u5a2f\u0007C\u0002",
+ "\u0002\u5a2f\u5a30\u0007E\u0002\u0002\u5a30\u5a31\u0007V\u0002\u0002",
+ "\u5a31\u0d48\u0003\u0002\u0002\u0002\u5a32\u5a33\u0007U\u0002\u0002",
+ "\u5a33\u5a34\u0007[\u0002\u0002\u5a34\u5a35\u0007U\u0002\u0002\u5a35",
+ "\u5a36\u0007a\u0002\u0002\u5a36\u5a37\u0007Q\u0002\u0002\u5a37\u5a38",
+ "\u0007R\u0002\u0002\u5a38\u5a39\u0007a\u0002\u0002\u5a39\u5a3a\u0007",
+ "I\u0002\u0002\u5a3a\u5a3b\u0007T\u0002\u0002\u5a3b\u5a3c\u0007Q\u0002",
+ "\u0002\u5a3c\u5a3d\u0007W\u0002\u0002\u5a3d\u5a3e\u0007R\u0002\u0002",
+ "\u5a3e\u5a3f\u0007K\u0002\u0002\u5a3f\u5a40\u0007P\u0002\u0002\u5a40",
+ "\u5a41\u0007I\u0002\u0002\u5a41\u0d4a\u0003\u0002\u0002\u0002\u5a42",
+ "\u5a43\u0007U\u0002\u0002\u5a43\u5a44\u0007[\u0002\u0002\u5a44\u5a45",
+ "\u0007U\u0002\u0002\u5a45\u5a46\u0007a\u0002\u0002\u5a46\u5a47\u0007",
+ "Q\u0002\u0002\u5a47\u5a48\u0007R\u0002\u0002\u5a48\u5a49\u0007a\u0002",
+ "\u0002\u5a49\u5a4a\u0007I\u0002\u0002\u5a4a\u5a4b\u0007W\u0002\u0002",
+ "\u5a4b\u5a4c\u0007K\u0002\u0002\u5a4c\u5a4d\u0007F\u0002\u0002\u5a4d",
+ "\u0d4c\u0003\u0002\u0002\u0002\u5a4e\u5a4f\u0007U\u0002\u0002\u5a4f",
+ "\u5a50\u0007[\u0002\u0002\u5a50\u5a51\u0007U\u0002\u0002\u5a51\u5a52",
+ "\u0007a\u0002\u0002\u5a52\u5a53\u0007Q\u0002\u0002\u5a53\u5a54\u0007",
+ "R\u0002\u0002\u5a54\u5a55\u0007a\u0002\u0002\u5a55\u5a56\u0007J\u0002",
+ "\u0002\u5a56\u5a57\u0007C\u0002\u0002\u5a57\u5a58\u0007U\u0002\u0002",
+ "\u5a58\u5a59\u0007J\u0002\u0002\u5a59\u0d4e\u0003\u0002\u0002\u0002",
+ "\u5a5a\u5a5b\u0007U\u0002\u0002\u5a5b\u5a5c\u0007[\u0002\u0002\u5a5c",
+ "\u5a5d\u0007U\u0002\u0002\u5a5d\u5a5e\u0007a\u0002\u0002\u5a5e\u5a5f",
+ "\u0007Q\u0002\u0002\u5a5f\u5a60\u0007R\u0002\u0002\u5a60\u5a61\u0007",
+ "a\u0002\u0002\u5a61\u5a62\u0007K\u0002\u0002\u5a62\u5a63\u0007K\u0002",
+ "\u0002\u5a63\u5a64\u0007Z\u0002\u0002\u5a64\u0d50\u0003\u0002\u0002",
+ "\u0002\u5a65\u5a66\u0007U\u0002\u0002\u5a66\u5a67\u0007[\u0002\u0002",
+ "\u5a67\u5a68\u0007U\u0002\u0002\u5a68\u5a69\u0007a\u0002\u0002\u5a69",
+ "\u5a6a\u0007Q\u0002\u0002\u5a6a\u5a6b\u0007R\u0002\u0002\u5a6b\u5a6c",
+ "\u0007a\u0002\u0002\u5a6c\u5a6d\u0007K\u0002\u0002\u5a6d\u5a6e\u0007",
+ "V\u0002\u0002\u5a6e\u5a6f\u0007T\u0002\u0002\u5a6f\u0d52\u0003\u0002",
+ "\u0002\u0002\u5a70\u5a71\u0007U\u0002\u0002\u5a71\u5a72\u0007[\u0002",
+ "\u0002\u5a72\u5a73\u0007U\u0002\u0002\u5a73\u5a74\u0007a\u0002\u0002",
+ "\u5a74\u5a75\u0007Q\u0002\u0002\u5a75\u5a76\u0007R\u0002\u0002\u5a76",
+ "\u5a77\u0007a\u0002\u0002\u5a77\u5a78\u0007M\u0002\u0002\u5a78\u5a79",
+ "\u0007G\u0002\u0002\u5a79\u5a7a\u0007[\u0002\u0002\u5a7a\u5a7b\u0007",
+ "a\u0002\u0002\u5a7b\u5a7c\u0007X\u0002\u0002\u5a7c\u5a7d\u0007G\u0002",
+ "\u0002\u5a7d\u5a7e\u0007E\u0002\u0002\u5a7e\u5a7f\u0007V\u0002\u0002",
+ "\u5a7f\u5a80\u0007Q\u0002\u0002\u5a80\u5a81\u0007T\u0002\u0002\u5a81",
+ "\u5a82\u0007a\u0002\u0002\u5a82\u5a83\u0007E\u0002\u0002\u5a83\u5a84",
+ "\u0007T\u0002\u0002\u5a84\u5a85\u0007G\u0002\u0002\u5a85\u5a86\u0007",
+ "C\u0002\u0002\u5a86\u5a87\u0007V\u0002\u0002\u5a87\u5a88\u0007G\u0002",
+ "\u0002\u5a88\u0d54\u0003\u0002\u0002\u0002\u5a89\u5a8a\u0007U\u0002",
+ "\u0002\u5a8a\u5a8b\u0007[\u0002\u0002\u5a8b\u5a8c\u0007U\u0002\u0002",
+ "\u5a8c\u5a8d\u0007a\u0002\u0002\u5a8d\u5a8e\u0007Q\u0002\u0002\u5a8e",
+ "\u5a8f\u0007R\u0002\u0002\u5a8f\u5a90\u0007a\u0002\u0002\u5a90\u5a91",
+ "\u0007M\u0002\u0002\u5a91\u5a92\u0007G\u0002\u0002\u5a92\u5a93\u0007",
+ "[\u0002\u0002\u5a93\u5a94\u0007a\u0002\u0002\u5a94\u5a95\u0007X\u0002",
+ "\u0002\u5a95\u5a96\u0007G\u0002\u0002\u5a96\u5a97\u0007E\u0002\u0002",
+ "\u5a97\u5a98\u0007V\u0002\u0002\u5a98\u5a99\u0007Q\u0002\u0002\u5a99",
+ "\u5a9a\u0007T\u0002\u0002\u5a9a\u5a9b\u0007a\u0002\u0002\u5a9b\u5a9c",
+ "\u0007H\u0002\u0002\u5a9c\u5a9d\u0007K\u0002\u0002\u5a9d\u5a9e\u0007",
+ "N\u0002\u0002\u5a9e\u5a9f\u0007V\u0002\u0002\u5a9f\u5aa0\u0007G\u0002",
+ "\u0002\u5aa0\u5aa1\u0007T\u0002\u0002\u5aa1\u5aa2\u0007a\u0002\u0002",
+ "\u5aa2\u5aa3\u0007N\u0002\u0002\u5aa3\u5aa4\u0007K\u0002\u0002\u5aa4",
+ "\u5aa5\u0007U\u0002\u0002\u5aa5\u5aa6\u0007V\u0002\u0002\u5aa6\u0d56",
+ "\u0003\u0002\u0002\u0002\u5aa7\u5aa8\u0007U\u0002\u0002\u5aa8\u5aa9",
+ "\u0007[\u0002\u0002\u5aa9\u5aaa\u0007U\u0002\u0002\u5aaa\u5aab\u0007",
+ "a\u0002\u0002\u5aab\u5aac\u0007Q\u0002\u0002\u5aac\u5aad\u0007R\u0002",
+ "\u0002\u5aad\u5aae\u0007a\u0002\u0002\u5aae\u5aaf\u0007M\u0002\u0002",
+ "\u5aaf\u5ab0\u0007G\u0002\u0002\u5ab0\u5ab1\u0007[\u0002\u0002\u5ab1",
+ "\u5ab2\u0007a\u0002\u0002\u5ab2\u5ab3\u0007X\u0002\u0002\u5ab3\u5ab4",
+ "\u0007G\u0002\u0002\u5ab4\u5ab5\u0007E\u0002\u0002\u5ab5\u5ab6\u0007",
+ "V\u0002\u0002\u5ab6\u5ab7\u0007Q\u0002\u0002\u5ab7\u5ab8\u0007T\u0002",
+ "\u0002\u5ab8\u5ab9\u0007a\u0002\u0002\u5ab9\u5aba\u0007H\u0002\u0002",
+ "\u5aba\u5abb\u0007K\u0002\u0002\u5abb\u5abc\u0007N\u0002\u0002\u5abc",
+ "\u5abd\u0007V\u0002\u0002\u5abd\u5abe\u0007G\u0002\u0002\u5abe\u5abf",
+ "\u0007T\u0002\u0002\u5abf\u0d58\u0003\u0002\u0002\u0002\u5ac0\u5ac1",
+ "\u0007U\u0002\u0002\u5ac1\u5ac2\u0007[\u0002\u0002\u5ac2\u5ac3\u0007",
+ "U\u0002\u0002\u5ac3\u5ac4\u0007a\u0002\u0002\u5ac4\u5ac5\u0007Q\u0002",
+ "\u0002\u5ac5\u5ac6\u0007R\u0002\u0002\u5ac6\u5ac7\u0007a\u0002\u0002",
+ "\u5ac7\u5ac8\u0007M\u0002\u0002\u5ac8\u5ac9\u0007G\u0002\u0002\u5ac9",
+ "\u5aca\u0007[\u0002\u0002\u5aca\u5acb\u0007a\u0002\u0002\u5acb\u5acc",
+ "\u0007X\u0002\u0002\u5acc\u5acd\u0007G\u0002\u0002\u5acd\u5ace\u0007",
+ "E\u0002\u0002\u5ace\u5acf\u0007V\u0002\u0002\u5acf\u5ad0\u0007Q\u0002",
+ "\u0002\u5ad0\u5ad1\u0007T\u0002\u0002\u5ad1\u5ad2\u0007a\u0002\u0002",
+ "\u5ad2\u5ad3\u0007U\u0002\u0002\u5ad3\u5ad4\u0007W\u0002\u0002\u5ad4",
+ "\u5ad5\u0007E\u0002\u0002\u5ad5\u5ad6\u0007E\u0002\u0002\u5ad6\u5ad7",
+ "\u0007G\u0002\u0002\u5ad7\u5ad8\u0007G\u0002\u0002\u5ad8\u5ad9\u0007",
+ "F\u0002\u0002\u5ad9\u5ada\u0007G\u0002\u0002\u5ada\u5adb\u0007F\u0002",
+ "\u0002\u5adb\u0d5a\u0003\u0002\u0002\u0002\u5adc\u5add\u0007U\u0002",
+ "\u0002\u5add\u5ade\u0007[\u0002\u0002\u5ade\u5adf\u0007U\u0002\u0002",
+ "\u5adf\u5ae0\u0007a\u0002\u0002\u5ae0\u5ae1\u0007Q\u0002\u0002\u5ae1",
+ "\u5ae2\u0007R\u0002\u0002\u5ae2\u5ae3\u0007a\u0002\u0002\u5ae3\u5ae4",
+ "\u0007M\u0002\u0002\u5ae4\u5ae5\u0007G\u0002\u0002\u5ae5\u5ae6\u0007",
+ "[\u0002\u0002\u5ae6\u5ae7\u0007a\u0002\u0002\u5ae7\u5ae8\u0007X\u0002",
+ "\u0002\u5ae8\u5ae9\u0007G\u0002\u0002\u5ae9\u5aea\u0007E\u0002\u0002",
+ "\u5aea\u5aeb\u0007V\u0002\u0002\u5aeb\u5aec\u0007Q\u0002\u0002\u5aec",
+ "\u5aed\u0007T\u0002\u0002\u5aed\u5aee\u0007a\u0002\u0002\u5aee\u5aef",
+ "\u0007W\u0002\u0002\u5aef\u5af0\u0007U\u0002\u0002\u5af0\u5af1\u0007",
+ "G\u0002\u0002\u5af1\u0d5c\u0003\u0002\u0002\u0002\u5af2\u5af3\u0007",
+ "U\u0002\u0002\u5af3\u5af4\u0007[\u0002\u0002\u5af4\u5af5\u0007U\u0002",
+ "\u0002\u5af5\u5af6\u0007a\u0002\u0002\u5af6\u5af7\u0007Q\u0002\u0002",
+ "\u5af7\u5af8\u0007R\u0002\u0002\u5af8\u5af9\u0007a\u0002\u0002\u5af9",
+ "\u5afa\u0007N\u0002\u0002\u5afa\u5afb\u0007D\u0002\u0002\u5afb\u5afc",
+ "\u0007K\u0002\u0002\u5afc\u5afd\u0007F\u0002\u0002\u5afd\u0d5e\u0003",
+ "\u0002\u0002\u0002\u5afe\u5aff\u0007U\u0002\u0002\u5aff\u5b00\u0007",
+ "[\u0002\u0002\u5b00\u5b01\u0007U\u0002\u0002\u5b01\u5b02\u0007a\u0002",
+ "\u0002\u5b02\u5b03\u0007Q\u0002\u0002\u5b03\u5b04\u0007R\u0002\u0002",
+ "\u5b04\u5b05\u0007a\u0002\u0002\u5b05\u5b06\u0007N\u0002\u0002\u5b06",
+ "\u5b07\u0007Q\u0002\u0002\u5b07\u5b08\u0007D\u0002\u0002\u5b08\u5b09",
+ "\u0007N\u0002\u0002\u5b09\u5b0a\u0007Q\u0002\u0002\u5b0a\u5b0b\u0007",
+ "E\u0002\u0002\u5b0b\u5b0c\u00074\u0002\u0002\u5b0c\u5b0d\u0007D\u0002",
+ "\u0002\u5b0d\u5b0e\u0007N\u0002\u0002\u5b0e\u5b0f\u0007Q\u0002\u0002",
+ "\u5b0f\u5b10\u0007D\u0002\u0002\u5b10\u0d60\u0003\u0002\u0002\u0002",
+ "\u5b11\u5b12\u0007U\u0002\u0002\u5b12\u5b13\u0007[\u0002\u0002\u5b13",
+ "\u5b14\u0007U\u0002\u0002\u5b14\u5b15\u0007a\u0002\u0002\u5b15\u5b16",
+ "\u0007Q\u0002\u0002\u5b16\u5b17\u0007R\u0002\u0002\u5b17\u5b18\u0007",
+ "a\u0002\u0002\u5b18\u5b19\u0007N\u0002\u0002\u5b19\u5b1a\u0007Q\u0002",
+ "\u0002\u5b1a\u5b1b\u0007D\u0002\u0002\u5b1b\u5b1c\u0007N\u0002\u0002",
+ "\u5b1c\u5b1d\u0007Q\u0002\u0002\u5b1d\u5b1e\u0007E\u0002\u0002\u5b1e",
+ "\u5b1f\u00074\u0002\u0002\u5b1f\u5b20\u0007E\u0002\u0002\u5b20\u5b21",
+ "\u0007N\u0002\u0002\u5b21\u5b22\u0007Q\u0002\u0002\u5b22\u5b23\u0007",
+ "D\u0002\u0002\u5b23\u0d62\u0003\u0002\u0002\u0002\u5b24\u5b25\u0007",
+ "U\u0002\u0002\u5b25\u5b26\u0007[\u0002\u0002\u5b26\u5b27\u0007U\u0002",
+ "\u0002\u5b27\u5b28\u0007a\u0002\u0002\u5b28\u5b29\u0007Q\u0002\u0002",
+ "\u5b29\u5b2a\u0007R\u0002\u0002\u5b2a\u5b2b\u0007a\u0002\u0002\u5b2b",
+ "\u5b2c\u0007N\u0002\u0002\u5b2c\u5b2d\u0007Q\u0002\u0002\u5b2d\u5b2e",
+ "\u0007D\u0002\u0002\u5b2e\u5b2f\u0007N\u0002\u0002\u5b2f\u5b30\u0007",
+ "Q\u0002\u0002\u5b30\u5b31\u0007E\u0002\u0002\u5b31\u5b32\u00074\u0002",
+ "\u0002\u5b32\u5b33\u0007K\u0002\u0002\u5b33\u5b34\u0007F\u0002\u0002",
+ "\u5b34\u0d64\u0003\u0002\u0002\u0002\u5b35\u5b36\u0007U\u0002\u0002",
+ "\u5b36\u5b37\u0007[\u0002\u0002\u5b37\u5b38\u0007U\u0002\u0002\u5b38",
+ "\u5b39\u0007a\u0002\u0002\u5b39\u5b3a\u0007Q\u0002\u0002\u5b3a\u5b3b",
+ "\u0007R\u0002\u0002\u5b3b\u5b3c\u0007a\u0002\u0002\u5b3c\u5b3d\u0007",
+ "N\u0002\u0002\u5b3d\u5b3e\u0007Q\u0002\u0002\u5b3e\u5b3f\u0007D\u0002",
+ "\u0002\u5b3f\u5b40\u0007N\u0002\u0002\u5b40\u5b41\u0007Q\u0002\u0002",
+ "\u5b41\u5b42\u0007E\u0002\u0002\u5b42\u5b43\u00074\u0002\u0002\u5b43",
+ "\u5b44\u0007P\u0002\u0002\u5b44\u5b45\u0007E\u0002\u0002\u5b45\u5b46",
+ "\u0007N\u0002\u0002\u5b46\u5b47\u0007Q\u0002\u0002\u5b47\u5b48\u0007",
+ "D\u0002\u0002\u5b48\u0d66\u0003\u0002\u0002\u0002\u5b49\u5b4a\u0007",
+ "U\u0002\u0002\u5b4a\u5b4b\u0007[\u0002\u0002\u5b4b\u5b4c\u0007U\u0002",
+ "\u0002\u5b4c\u5b4d\u0007a\u0002\u0002\u5b4d\u5b4e\u0007Q\u0002\u0002",
+ "\u5b4e\u5b4f\u0007R\u0002\u0002\u5b4f\u5b50\u0007a\u0002\u0002\u5b50",
+ "\u5b51\u0007N\u0002\u0002\u5b51\u5b52\u0007Q\u0002\u0002\u5b52\u5b53",
+ "\u0007D\u0002\u0002\u5b53\u5b54\u0007N\u0002\u0002\u5b54\u5b55\u0007",
+ "Q\u0002\u0002\u5b55\u5b56\u0007E\u0002\u0002\u5b56\u5b57\u00074\u0002",
+ "\u0002\u5b57\u5b58\u0007V\u0002\u0002\u5b58\u5b59\u0007[\u0002\u0002",
+ "\u5b59\u5b5a\u0007R\u0002\u0002\u5b5a\u0d68\u0003\u0002\u0002\u0002",
+ "\u5b5b\u5b5c\u0007U\u0002\u0002\u5b5c\u5b5d\u0007[\u0002\u0002\u5b5d",
+ "\u5b5e\u0007U\u0002\u0002\u5b5e\u5b5f\u0007a\u0002\u0002\u5b5f\u5b60",
+ "\u0007Q\u0002\u0002\u5b60\u5b61\u0007R\u0002\u0002\u5b61\u5b62\u0007",
+ "a\u0002\u0002\u5b62\u5b63\u0007N\u0002\u0002\u5b63\u5b64\u0007U\u0002",
+ "\u0002\u5b64\u5b65\u0007X\u0002\u0002\u5b65\u5b66\u0007K\u0002\u0002",
+ "\u5b66\u0d6a\u0003\u0002\u0002\u0002\u5b67\u5b68\u0007U\u0002\u0002",
+ "\u5b68\u5b69\u0007[\u0002\u0002\u5b69\u5b6a\u0007U\u0002\u0002\u5b6a",
+ "\u5b6b\u0007a\u0002\u0002\u5b6b\u5b6c\u0007Q\u0002\u0002\u5b6c\u5b6d",
+ "\u0007R\u0002\u0002\u5b6d\u5b6e\u0007a\u0002\u0002\u5b6e\u5b6f\u0007",
+ "N\u0002\u0002\u5b6f\u5b70\u0007X\u0002\u0002\u5b70\u5b71\u0007N\u0002",
+ "\u0002\u5b71\u0d6c\u0003\u0002\u0002\u0002\u5b72\u5b73\u0007U\u0002",
+ "\u0002\u5b73\u5b74\u0007[\u0002\u0002\u5b74\u5b75\u0007U\u0002\u0002",
+ "\u5b75\u5b76\u0007a\u0002\u0002\u5b76\u5b77\u0007Q\u0002\u0002\u5b77",
+ "\u5b78\u0007R\u0002\u0002\u5b78\u5b79\u0007a\u0002\u0002\u5b79\u5b7a",
+ "\u0007O\u0002\u0002\u5b7a\u5b7b\u0007C\u0002\u0002\u5b7b\u5b7c\u0007",
+ "M\u0002\u0002\u5b7c\u5b7d\u0007G\u0002\u0002\u5b7d\u5b7e\u0007Q\u0002",
+ "\u0002\u5b7e\u5b7f\u0007K\u0002\u0002\u5b7f\u5b80\u0007F\u0002\u0002",
+ "\u5b80\u0d6e\u0003\u0002\u0002\u0002\u5b81\u5b82\u0007U\u0002\u0002",
+ "\u5b82\u5b83\u0007[\u0002\u0002\u5b83\u5b84\u0007U\u0002\u0002\u5b84",
+ "\u5b85\u0007a\u0002\u0002\u5b85\u5b86\u0007Q\u0002\u0002\u5b86\u5b87",
+ "\u0007R\u0002\u0002\u5b87\u5b88\u0007a\u0002\u0002\u5b88\u5b89\u0007",
+ "O\u0002\u0002\u5b89\u5b8a\u0007C\u0002\u0002\u5b8a\u5b8b\u0007R\u0002",
+ "\u0002\u5b8b\u5b8c\u0007a\u0002\u0002\u5b8c\u5b8d\u0007P\u0002\u0002",
+ "\u5b8d\u5b8e\u0007Q\u0002\u0002\u5b8e\u5b8f\u0007P\u0002\u0002\u5b8f",
+ "\u5b90\u0007P\u0002\u0002\u5b90\u5b91\u0007W\u0002\u0002\u5b91\u5b92",
+ "\u0007N\u0002\u0002\u5b92\u5b93\u0007N\u0002\u0002\u5b93\u0d70\u0003",
+ "\u0002\u0002\u0002\u5b94\u5b95\u0007U\u0002\u0002\u5b95\u5b96\u0007",
+ "[\u0002\u0002\u5b96\u5b97\u0007U\u0002\u0002\u5b97\u5b98\u0007a\u0002",
+ "\u0002\u5b98\u5b99\u0007Q\u0002\u0002\u5b99\u5b9a\u0007R\u0002\u0002",
+ "\u5b9a\u5b9b\u0007a\u0002\u0002\u5b9b\u5b9c\u0007O\u0002\u0002\u5b9c",
+ "\u5b9d\u0007U\u0002\u0002\u5b9d\u5b9e\u0007T\u0002\u0002\u5b9e\u0d72",
+ "\u0003\u0002\u0002\u0002\u5b9f\u5ba0\u0007U\u0002\u0002\u5ba0\u5ba1",
+ "\u0007[\u0002\u0002\u5ba1\u5ba2\u0007U\u0002\u0002\u5ba2\u5ba3\u0007",
+ "a\u0002\u0002\u5ba3\u5ba4\u0007Q\u0002\u0002\u5ba4\u5ba5\u0007R\u0002",
+ "\u0002\u5ba5\u5ba6\u0007a\u0002\u0002\u5ba6\u5ba7\u0007P\u0002\u0002",
+ "\u5ba7\u5ba8\u0007K\u0002\u0002\u5ba8\u5ba9\u0007E\u0002\u0002\u5ba9",
+ "\u5baa\u0007Q\u0002\u0002\u5baa\u5bab\u0007O\u0002\u0002\u5bab\u5bac",
+ "\u0007D\u0002\u0002\u5bac\u5bad\u0007K\u0002\u0002\u5bad\u5bae\u0007",
+ "P\u0002\u0002\u5bae\u5baf\u0007G\u0002\u0002\u5baf\u0d74\u0003\u0002",
+ "\u0002\u0002\u5bb0\u5bb1\u0007U\u0002\u0002\u5bb1\u5bb2\u0007[\u0002",
+ "\u0002\u5bb2\u5bb3\u0007U\u0002\u0002\u5bb3\u5bb4\u0007a\u0002\u0002",
+ "\u5bb4\u5bb5\u0007Q\u0002\u0002\u5bb5\u5bb6\u0007R\u0002\u0002\u5bb6",
+ "\u5bb7\u0007a\u0002\u0002\u5bb7\u5bb8\u0007P\u0002\u0002\u5bb8\u5bb9",
+ "\u0007K\u0002\u0002\u5bb9\u5bba\u0007G\u0002\u0002\u5bba\u5bbb\u0007",
+ "Z\u0002\u0002\u5bbb\u5bbc\u0007V\u0002\u0002\u5bbc\u5bbd\u0007T\u0002",
+ "\u0002\u5bbd\u5bbe\u0007C\u0002\u0002\u5bbe\u5bbf\u0007E\u0002\u0002",
+ "\u5bbf\u5bc0\u0007V\u0002\u0002\u5bc0\u0d76\u0003\u0002\u0002\u0002",
+ "\u5bc1\u5bc2\u0007U\u0002\u0002\u5bc2\u5bc3\u0007[\u0002\u0002\u5bc3",
+ "\u5bc4\u0007U\u0002\u0002\u5bc4\u5bc5\u0007a\u0002\u0002\u5bc5\u5bc6",
+ "\u0007Q\u0002\u0002\u5bc6\u5bc7\u0007R\u0002\u0002\u5bc7\u5bc8\u0007",
+ "a\u0002\u0002\u5bc8\u5bc9\u0007P\u0002\u0002\u5bc9\u5bca\u0007K\u0002",
+ "\u0002\u5bca\u5bcb\u0007K\u0002\u0002\u5bcb\u0d78\u0003\u0002\u0002",
+ "\u0002\u5bcc\u5bcd\u0007U\u0002\u0002\u5bcd\u5bce\u0007[\u0002\u0002",
+ "\u5bce\u5bcf\u0007U\u0002\u0002\u5bcf\u5bd0\u0007a\u0002\u0002\u5bd0",
+ "\u5bd1\u0007Q\u0002\u0002\u5bd1\u5bd2\u0007R\u0002\u0002\u5bd2\u5bd3",
+ "\u0007a\u0002\u0002\u5bd3\u5bd4\u0007P\u0002\u0002\u5bd4\u5bd5\u0007",
+ "K\u0002\u0002\u5bd5\u5bd6\u0007Z\u0002\u0002\u5bd6\u0d7a\u0003\u0002",
+ "\u0002\u0002\u5bd7\u5bd8\u0007U\u0002\u0002\u5bd8\u5bd9\u0007[\u0002",
+ "\u0002\u5bd9\u5bda\u0007U\u0002\u0002\u5bda\u5bdb\u0007a\u0002\u0002",
+ "\u5bdb\u5bdc\u0007Q\u0002\u0002\u5bdc\u5bdd\u0007R\u0002\u0002\u5bdd",
+ "\u5bde\u0007a\u0002\u0002\u5bde\u5bdf\u0007P\u0002\u0002\u5bdf\u5be0",
+ "\u0007Q\u0002\u0002\u5be0\u5be1\u0007G\u0002\u0002\u5be1\u5be2\u0007",
+ "Z\u0002\u0002\u5be2\u5be3\u0007R\u0002\u0002\u5be3\u5be4\u0007C\u0002",
+ "\u0002\u5be4\u5be5\u0007P\u0002\u0002\u5be5\u5be6\u0007F\u0002\u0002",
+ "\u5be6\u0d7c\u0003\u0002\u0002\u0002\u5be7\u5be8\u0007U\u0002\u0002",
+ "\u5be8\u5be9\u0007[\u0002\u0002\u5be9\u5bea\u0007U\u0002\u0002\u5bea",
+ "\u5beb\u0007a\u0002\u0002\u5beb\u5bec\u0007Q\u0002\u0002\u5bec\u5bed",
+ "\u0007R\u0002\u0002\u5bed\u5bee\u0007a\u0002\u0002\u5bee\u5bef\u0007",
+ "P\u0002\u0002\u5bef\u5bf0\u0007V\u0002\u0002\u5bf0\u5bf1\u0007E\u0002",
+ "\u0002\u5bf1\u5bf2\u0007K\u0002\u0002\u5bf2\u5bf3\u0007O\u0002\u0002",
+ "\u5bf3\u5bf4\u0007I\u0002\u0002\u5bf4\u5bf5\u0007&\u0002\u0002\u5bf5",
+ "\u0d7e\u0003\u0002\u0002\u0002\u5bf6\u5bf7\u0007U\u0002\u0002\u5bf7",
+ "\u5bf8\u0007[\u0002\u0002\u5bf8\u5bf9\u0007U\u0002\u0002\u5bf9\u5bfa",
+ "\u0007a\u0002\u0002\u5bfa\u5bfb\u0007Q\u0002\u0002\u5bfb\u5bfc\u0007",
+ "R\u0002\u0002\u5bfc\u5bfd\u0007a\u0002\u0002\u5bfd\u5bfe\u0007P\u0002",
+ "\u0002\u5bfe\u5bff\u0007W\u0002\u0002\u5bff\u5c00\u0007O\u0002\u0002",
+ "\u5c00\u5c01\u0007V\u0002\u0002\u5c01\u5c02\u0007Q\u0002\u0002\u5c02",
+ "\u5c03\u0007T\u0002\u0002\u5c03\u5c04\u0007C\u0002\u0002\u5c04\u5c05",
+ "\u0007Y\u0002\u0002\u5c05\u0d80\u0003\u0002\u0002\u0002\u5c06\u5c07",
+ "\u0007U\u0002\u0002\u5c07\u5c08\u0007[\u0002\u0002\u5c08\u5c09\u0007",
+ "U\u0002\u0002\u5c09\u5c0a\u0007a\u0002\u0002\u5c0a\u5c0b\u0007Q\u0002",
+ "\u0002\u5c0b\u5c0c\u0007R\u0002\u0002\u5c0c\u5c0d\u0007a\u0002\u0002",
+ "\u5c0d\u5c0e\u0007Q\u0002\u0002\u5c0e\u5c0f\u0007K\u0002\u0002\u5c0f",
+ "\u5c10\u0007F\u0002\u0002\u5c10\u5c11\u0007X\u0002\u0002\u5c11\u5c12",
+ "\u0007C\u0002\u0002\u5c12\u5c13\u0007N\u0002\u0002\u5c13\u5c14\u0007",
+ "W\u0002\u0002\u5c14\u5c15\u0007G\u0002\u0002\u5c15\u0d82\u0003\u0002",
+ "\u0002\u0002\u5c16\u5c17\u0007U\u0002\u0002\u5c17\u5c18\u0007[\u0002",
+ "\u0002\u5c18\u5c19\u0007U\u0002\u0002\u5c19\u5c1a\u0007a\u0002\u0002",
+ "\u5c1a\u5c1b\u0007Q\u0002\u0002\u5c1b\u5c1c\u0007R\u0002\u0002\u5c1c",
+ "\u5c1d\u0007a\u0002\u0002\u5c1d\u5c1e\u0007Q\u0002\u0002\u5c1e\u5c1f",
+ "\u0007R\u0002\u0002\u5c1f\u5c20\u0007P\u0002\u0002\u5c20\u5c21\u0007",
+ "U\u0002\u0002\u5c21\u5c22\u0007K\u0002\u0002\u5c22\u5c23\u0007\\\u0002",
+ "\u0002\u5c23\u5c24\u0007G\u0002\u0002\u5c24\u0d84\u0003\u0002\u0002",
+ "\u0002\u5c25\u5c26\u0007U\u0002\u0002\u5c26\u5c27\u0007[\u0002\u0002",
+ "\u5c27\u5c28\u0007U\u0002\u0002\u5c28\u5c29\u0007a\u0002\u0002\u5c29",
+ "\u5c2a\u0007Q\u0002\u0002\u5c2a\u5c2b\u0007R\u0002\u0002\u5c2b\u5c2c",
+ "\u0007a\u0002\u0002\u5c2c\u5c2d\u0007R\u0002\u0002\u5c2d\u5c2e\u0007",
+ "C\u0002\u0002\u5c2e\u5c2f\u0007T\u0002\u0002\u5c2f\u5c30\u0007a\u0002",
+ "\u0002\u5c30\u5c31\u00073\u0002\u0002\u5c31\u0d86\u0003\u0002\u0002",
+ "\u0002\u5c32\u5c33\u0007U\u0002\u0002\u5c33\u5c34\u0007[\u0002\u0002",
+ "\u5c34\u5c35\u0007U\u0002\u0002\u5c35\u5c36\u0007a\u0002\u0002\u5c36",
+ "\u5c37\u0007Q\u0002\u0002\u5c37\u5c38\u0007R\u0002\u0002\u5c38\u5c39",
+ "\u0007a\u0002\u0002\u5c39\u5c3a\u0007R\u0002\u0002\u5c3a\u5c3b\u0007",
+ "C\u0002\u0002\u5c3b\u5c3c\u0007T\u0002\u0002\u5c3c\u5c3d\u0007I\u0002",
+ "\u0002\u5c3d\u5c3e\u0007K\u0002\u0002\u5c3e\u5c3f\u0007F\u0002\u0002",
+ "\u5c3f\u5c40\u0007a\u0002\u0002\u5c40\u5c41\u00073\u0002\u0002\u5c41",
+ "\u0d88\u0003\u0002\u0002\u0002\u5c42\u5c43\u0007U\u0002\u0002\u5c43",
+ "\u5c44\u0007[\u0002\u0002\u5c44\u5c45\u0007U\u0002\u0002\u5c45\u5c46",
+ "\u0007a\u0002\u0002\u5c46\u5c47\u0007Q\u0002\u0002\u5c47\u5c48\u0007",
+ "R\u0002\u0002\u5c48\u5c49\u0007a\u0002\u0002\u5c49\u5c4a\u0007R\u0002",
+ "\u0002\u5c4a\u5c4b\u0007C\u0002\u0002\u5c4b\u5c4c\u0007T\u0002\u0002",
+ "\u5c4c\u5c4d\u0007I\u0002\u0002\u5c4d\u5c4e\u0007K\u0002\u0002\u5c4e",
+ "\u5c4f\u0007F\u0002\u0002\u5c4f\u0d8a\u0003\u0002\u0002\u0002\u5c50",
+ "\u5c51\u0007U\u0002\u0002\u5c51\u5c52\u0007[\u0002\u0002\u5c52\u5c53",
+ "\u0007U\u0002\u0002\u5c53\u5c54\u0007a\u0002\u0002\u5c54\u5c55\u0007",
+ "Q\u0002\u0002\u5c55\u5c56\u0007R\u0002\u0002\u5c56\u5c57\u0007a\u0002",
+ "\u0002\u5c57\u5c58\u0007R\u0002\u0002\u5c58\u5c59\u0007C\u0002\u0002",
+ "\u5c59\u5c5a\u0007T\u0002\u0002\u5c5a\u0d8c\u0003\u0002\u0002\u0002",
+ "\u5c5b\u5c5c\u0007U\u0002\u0002\u5c5c\u5c5d\u0007[\u0002\u0002\u5c5d",
+ "\u5c5e\u0007U\u0002\u0002\u5c5e\u5c5f\u0007a\u0002\u0002\u5c5f\u5c60",
+ "\u0007Q\u0002\u0002\u5c60\u5c61\u0007R\u0002\u0002\u5c61\u5c62\u0007",
+ "a\u0002\u0002\u5c62\u5c63\u0007R\u0002\u0002\u5c63\u5c64\u0007C\u0002",
+ "\u0002\u5c64\u5c65\u0007T\u0002\u0002\u5c65\u5c66\u0007V\u0002\u0002",
+ "\u5c66\u5c67\u0007a\u0002\u0002\u5c67\u5c68\u0007K\u0002\u0002\u5c68",
+ "\u5c69\u0007F\u0002\u0002\u5c69\u0d8e\u0003\u0002\u0002\u0002\u5c6a",
+ "\u5c6b\u0007U\u0002\u0002\u5c6b\u5c6c\u0007[\u0002\u0002\u5c6c\u5c6d",
+ "\u0007U\u0002\u0002\u5c6d\u5c6e\u0007a\u0002\u0002\u5c6e\u5c6f\u0007",
+ "Q\u0002\u0002\u5c6f\u5c70\u0007R\u0002\u0002\u5c70\u5c71\u0007a\u0002",
+ "\u0002\u5c71\u5c72\u0007R\u0002\u0002\u5c72\u5c73\u0007K\u0002\u0002",
+ "\u5c73\u5c74\u0007X\u0002\u0002\u5c74\u5c75\u0007Q\u0002\u0002\u5c75",
+ "\u5c76\u0007V\u0002\u0002\u5c76\u0d90\u0003\u0002\u0002\u0002\u5c77",
+ "\u5c78\u0007U\u0002\u0002\u5c78\u5c79\u0007[\u0002\u0002\u5c79\u5c7a",
+ "\u0007U\u0002\u0002\u5c7a\u5c7b\u0007a\u0002\u0002\u5c7b\u5c7c\u0007",
+ "Q\u0002\u0002\u5c7c\u5c7d\u0007R\u0002\u0002\u5c7d\u5c7e\u0007a\u0002",
+ "\u0002\u5c7e\u5c7f\u0007T\u0002\u0002\u5c7f\u5c80\u00074\u0002\u0002",
+ "\u5c80\u5c81\u0007Q\u0002\u0002\u5c81\u0d92\u0003\u0002\u0002\u0002",
+ "\u5c82\u5c83\u0007U\u0002\u0002\u5c83\u5c84\u0007[\u0002\u0002\u5c84",
+ "\u5c85\u0007U\u0002\u0002\u5c85\u5c86\u0007a\u0002\u0002\u5c86\u5c87",
+ "\u0007Q\u0002\u0002\u5c87\u5c88\u0007R\u0002\u0002\u5c88\u5c89\u0007",
+ "a\u0002\u0002\u5c89\u5c8a\u0007T\u0002\u0002\u5c8a\u5c8b\u0007C\u0002",
+ "\u0002\u5c8b\u5c8c\u0007Y\u0002\u0002\u5c8c\u5c8d\u0007V\u0002\u0002",
+ "\u5c8d\u5c8e\u0007Q\u0002\u0002\u5c8e\u5c8f\u0007P\u0002\u0002\u5c8f",
+ "\u5c90\u0007W\u0002\u0002\u5c90\u5c91\u0007O\u0002\u0002\u5c91\u0d94",
+ "\u0003\u0002\u0002\u0002\u5c92\u5c93\u0007U\u0002\u0002\u5c93\u5c94",
+ "\u0007[\u0002\u0002\u5c94\u5c95\u0007U\u0002\u0002\u5c95\u5c96\u0007",
+ "a\u0002\u0002\u5c96\u5c97\u0007Q\u0002\u0002\u5c97\u5c98\u0007R\u0002",
+ "\u0002\u5c98\u5c99\u0007a\u0002\u0002\u5c99\u5c9a\u0007T\u0002\u0002",
+ "\u5c9a\u5c9b\u0007F\u0002\u0002\u5c9b\u5c9c\u0007V\u0002\u0002\u5c9c",
+ "\u5c9d\u0007O\u0002\u0002\u5c9d\u0d96\u0003\u0002\u0002\u0002\u5c9e",
+ "\u5c9f\u0007U\u0002\u0002\u5c9f\u5ca0\u0007[\u0002\u0002\u5ca0\u5ca1",
+ "\u0007U\u0002\u0002\u5ca1\u5ca2\u0007a\u0002\u0002\u5ca2\u5ca3\u0007",
+ "Q\u0002\u0002\u5ca3\u5ca4\u0007R\u0002\u0002\u5ca4\u5ca5\u0007a\u0002",
+ "\u0002\u5ca5\u5ca6\u0007T\u0002\u0002\u5ca6\u5ca7\u0007G\u0002\u0002",
+ "\u5ca7\u5ca8\u0007H\u0002\u0002\u5ca8\u0d98\u0003\u0002\u0002\u0002",
+ "\u5ca9\u5caa\u0007U\u0002\u0002\u5caa\u5cab\u0007[\u0002\u0002\u5cab",
+ "\u5cac\u0007U\u0002\u0002\u5cac\u5cad\u0007a\u0002\u0002\u5cad\u5cae",
+ "\u0007Q\u0002\u0002\u5cae\u5caf\u0007R\u0002\u0002\u5caf\u5cb0\u0007",
+ "a\u0002\u0002\u5cb0\u5cb1\u0007T\u0002\u0002\u5cb1\u5cb2\u0007O\u0002",
+ "\u0002\u5cb2\u5cb3\u0007V\u0002\u0002\u5cb3\u5cb4\u0007F\u0002\u0002",
+ "\u5cb4\u0d9a\u0003\u0002\u0002\u0002\u5cb5\u5cb6\u0007U\u0002\u0002",
+ "\u5cb6\u5cb7\u0007[\u0002\u0002\u5cb7\u5cb8\u0007U\u0002\u0002\u5cb8",
+ "\u5cb9\u0007a\u0002\u0002\u5cb9\u5cba\u0007Q\u0002\u0002\u5cba\u5cbb",
+ "\u0007R\u0002\u0002\u5cbb\u5cbc\u0007a\u0002\u0002\u5cbc\u5cbd\u0007",
+ "T\u0002\u0002\u5cbd\u5cbe\u0007Q\u0002\u0002\u5cbe\u5cbf\u0007Y\u0002",
+ "\u0002\u5cbf\u5cc0\u0007K\u0002\u0002\u5cc0\u5cc1\u0007F\u0002\u0002",
+ "\u5cc1\u5cc2\u0007V\u0002\u0002\u5cc2\u5cc3\u0007Q\u0002\u0002\u5cc3",
+ "\u5cc4\u0007Q\u0002\u0002\u5cc4\u5cc5\u0007D\u0002\u0002\u5cc5\u5cc6",
+ "\u0007L\u0002\u0002\u5cc6\u0d9c\u0003\u0002\u0002\u0002\u5cc7\u5cc8",
+ "\u0007U\u0002\u0002\u5cc8\u5cc9\u0007[\u0002\u0002\u5cc9\u5cca\u0007",
+ "U\u0002\u0002\u5cca\u5ccb\u0007a\u0002\u0002\u5ccb\u5ccc\u0007Q\u0002",
+ "\u0002\u5ccc\u5ccd\u0007R\u0002\u0002\u5ccd\u5cce\u0007a\u0002\u0002",
+ "\u5cce\u5ccf\u0007T\u0002\u0002\u5ccf\u5cd0\u0007R\u0002\u0002\u5cd0",
+ "\u5cd1\u0007D\u0002\u0002\u5cd1\u0d9e\u0003\u0002\u0002\u0002\u5cd2",
+ "\u5cd3\u0007U\u0002\u0002\u5cd3\u5cd4\u0007[\u0002\u0002\u5cd4\u5cd5",
+ "\u0007U\u0002\u0002\u5cd5\u5cd6\u0007a\u0002\u0002\u5cd6\u5cd7\u0007",
+ "Q\u0002\u0002\u5cd7\u5cd8\u0007R\u0002\u0002\u5cd8\u5cd9\u0007V\u0002",
+ "\u0002\u5cd9\u5cda\u0007N\u0002\u0002\u5cda\u5cdb\u0007Q\u0002\u0002",
+ "\u5cdb\u5cdc\u0007D\u0002\u0002\u5cdc\u5cdd\u0007R\u0002\u0002\u5cdd",
+ "\u5cde\u0007T\u0002\u0002\u5cde\u5cdf\u0007D\u0002\u0002\u5cdf\u5ce0",
+ "\u0007U\u0002\u0002\u5ce0\u5ce1\u0007E\u0002\u0002\u5ce1\u0da0\u0003",
+ "\u0002\u0002\u0002\u5ce2\u5ce3\u0007U\u0002\u0002\u5ce3\u5ce4\u0007",
+ "[\u0002\u0002\u5ce4\u5ce5\u0007U\u0002\u0002\u5ce5\u5ce6\u0007a\u0002",
+ "\u0002\u5ce6\u5ce7\u0007Q\u0002\u0002\u5ce7\u5ce8\u0007R\u0002\u0002",
+ "\u5ce8\u5ce9\u0007a\u0002\u0002\u5ce9\u5cea\u0007V\u0002\u0002\u5cea",
+ "\u5ceb\u0007Q\u0002\u0002\u5ceb\u5cec\u0007U\u0002\u0002\u5cec\u5ced",
+ "\u0007G\u0002\u0002\u5ced\u5cee\u0007V\u0002\u0002\u5cee\u5cef\u0007",
+ "K\u0002\u0002\u5cef\u5cf0\u0007F\u0002\u0002\u5cf0\u0da2\u0003\u0002",
+ "\u0002\u0002\u5cf1\u5cf2\u0007U\u0002\u0002\u5cf2\u5cf3\u0007[\u0002",
+ "\u0002\u5cf3\u5cf4\u0007U\u0002\u0002\u5cf4\u5cf5\u0007a\u0002\u0002",
+ "\u5cf5\u5cf6\u0007Q\u0002\u0002\u5cf6\u5cf7\u0007R\u0002\u0002\u5cf7",
+ "\u5cf8\u0007a\u0002\u0002\u5cf8\u5cf9\u0007V\u0002\u0002\u5cf9\u5cfa",
+ "\u0007R\u0002\u0002\u5cfa\u5cfb\u0007T\u0002\u0002\u5cfb\u0da4\u0003",
+ "\u0002\u0002\u0002\u5cfc\u5cfd\u0007U\u0002\u0002\u5cfd\u5cfe\u0007",
+ "[\u0002\u0002\u5cfe\u5cff\u0007U\u0002\u0002\u5cff\u5d00\u0007a\u0002",
+ "\u0002\u5d00\u5d01\u0007Q\u0002\u0002\u5d01\u5d02\u0007R\u0002\u0002",
+ "\u5d02\u5d03\u0007a\u0002\u0002\u5d03\u5d04\u0007V\u0002\u0002\u5d04",
+ "\u5d05\u0007T\u0002\u0002\u5d05\u5d06\u0007V\u0002\u0002\u5d06\u5d07",
+ "\u0007D\u0002\u0002\u5d07\u0da6\u0003\u0002\u0002\u0002\u5d08\u5d09",
+ "\u0007U\u0002\u0002\u5d09\u5d0a\u0007[\u0002\u0002\u5d0a\u5d0b\u0007",
+ "U\u0002\u0002\u5d0b\u5d0c\u0007a\u0002\u0002\u5d0c\u5d0d\u0007Q\u0002",
+ "\u0002\u5d0d\u5d0e\u0007R\u0002\u0002\u5d0e\u5d0f\u0007V\u0002\u0002",
+ "\u5d0f\u5d10\u0007Z\u0002\u0002\u5d10\u5d11\u0007K\u0002\u0002\u5d11",
+ "\u5d12\u0007E\u0002\u0002\u5d12\u5d13\u0007O\u0002\u0002\u5d13\u5d14",
+ "\u0007R\u0002\u0002\u5d14\u0da8\u0003\u0002\u0002\u0002\u5d15\u5d16",
+ "\u0007U\u0002\u0002\u5d16\u5d17\u0007[\u0002\u0002\u5d17\u5d18\u0007",
+ "U\u0002\u0002\u5d18\u5d19\u0007a\u0002\u0002\u5d19\u5d1a\u0007Q\u0002",
+ "\u0002\u5d1a\u5d1b\u0007R\u0002\u0002\u5d1b\u5d1c\u0007V\u0002\u0002",
+ "\u5d1c\u5d1d\u0007Z\u0002\u0002\u5d1d\u5d1e\u0007S\u0002\u0002\u5d1e",
+ "\u5d1f\u0007E\u0002\u0002\u5d1f\u5d20\u0007C\u0002\u0002\u5d20\u5d21",
+ "\u0007U\u0002\u0002\u5d21\u5d22\u0007V\u0002\u0002\u5d22\u5d23\u0007",
+ "C\u0002\u0002\u5d23\u5d24\u0007U\u0002\u0002\u5d24\u5d25\u0007P\u0002",
+ "\u0002\u5d25\u5d26\u0007S\u0002\u0002\u5d26\u0daa\u0003\u0002\u0002",
+ "\u0002\u5d27\u5d28\u0007U\u0002\u0002\u5d28\u5d29\u0007[\u0002\u0002",
+ "\u5d29\u5d2a\u0007U\u0002\u0002\u5d2a\u5d2b\u0007a\u0002\u0002\u5d2b",
+ "\u5d2c\u0007Q\u0002\u0002\u5d2c\u5d2d\u0007R\u0002\u0002\u5d2d\u5d2e",
+ "\u0007a\u0002\u0002\u5d2e\u5d2f\u0007W\u0002\u0002\u5d2f\u5d30\u0007",
+ "P\u0002\u0002\u5d30\u5d31\u0007F\u0002\u0002\u5d31\u5d32\u0007G\u0002",
+ "\u0002\u5d32\u5d33\u0007U\u0002\u0002\u5d33\u5d34\u0007E\u0002\u0002",
+ "\u5d34\u5d35\u0007G\u0002\u0002\u5d35\u5d36\u0007P\u0002\u0002\u5d36",
+ "\u5d37\u0007F\u0002\u0002\u5d37\u0dac\u0003\u0002\u0002\u0002\u5d38",
+ "\u5d39\u0007U\u0002\u0002\u5d39\u5d3a\u0007[\u0002\u0002\u5d3a\u5d3b",
+ "\u0007U\u0002\u0002\u5d3b\u5d3c\u0007a\u0002\u0002\u5d3c\u5d3d\u0007",
+ "Q\u0002\u0002\u5d3d\u5d3e\u0007R\u0002\u0002\u5d3e\u5d3f\u0007a\u0002",
+ "\u0002\u5d3f\u5d40\u0007X\u0002\u0002\u5d40\u5d41\u0007G\u0002\u0002",
+ "\u5d41\u5d42\u0007E\u0002\u0002\u5d42\u5d43\u0007C\u0002\u0002\u5d43",
+ "\u5d44\u0007P\u0002\u0002\u5d44\u5d45\u0007F\u0002\u0002\u5d45\u0dae",
+ "\u0003\u0002\u0002\u0002\u5d46\u5d47\u0007U\u0002\u0002\u5d47\u5d48",
+ "\u0007[\u0002\u0002\u5d48\u5d49\u0007U\u0002\u0002\u5d49\u5d4a\u0007",
+ "a\u0002\u0002\u5d4a\u5d4b\u0007Q\u0002\u0002\u5d4b\u5d4c\u0007R\u0002",
+ "\u0002\u5d4c\u5d4d\u0007a\u0002\u0002\u5d4d\u5d4e\u0007X\u0002\u0002",
+ "\u5d4e\u5d4f\u0007G\u0002\u0002\u5d4f\u5d50\u0007E\u0002\u0002\u5d50",
+ "\u5d51\u0007D\u0002\u0002\u5d51\u5d52\u0007K\u0002\u0002\u5d52\u5d53",
+ "\u0007V\u0002\u0002\u5d53\u0db0\u0003\u0002\u0002\u0002\u5d54\u5d55",
+ "\u0007U\u0002\u0002\u5d55\u5d56\u0007[\u0002\u0002\u5d56\u5d57\u0007",
+ "U\u0002\u0002\u5d57\u5d58\u0007a\u0002\u0002\u5d58\u5d59\u0007Q\u0002",
+ "\u0002\u5d59\u5d5a\u0007R\u0002\u0002\u5d5a\u5d5b\u0007a\u0002\u0002",
+ "\u5d5b\u5d5c\u0007X\u0002\u0002\u5d5c\u5d5d\u0007G\u0002\u0002\u5d5d",
+ "\u5d5e\u0007E\u0002\u0002\u5d5e\u5d5f\u0007Q\u0002\u0002\u5d5f\u5d60",
+ "\u0007T\u0002\u0002\u5d60\u0db2\u0003\u0002\u0002\u0002\u5d61\u5d62",
+ "\u0007U\u0002\u0002\u5d62\u5d63\u0007[\u0002\u0002\u5d63\u5d64\u0007",
+ "U\u0002\u0002\u5d64\u5d65\u0007a\u0002\u0002\u5d65\u5d66\u0007Q\u0002",
+ "\u0002\u5d66\u5d67\u0007R\u0002\u0002\u5d67\u5d68\u0007a\u0002\u0002",
+ "\u5d68\u5d69\u0007X\u0002\u0002\u5d69\u5d6a\u0007G\u0002\u0002\u5d6a",
+ "\u5d6b\u0007E\u0002\u0002\u5d6b\u5d6c\u0007Z\u0002\u0002\u5d6c\u5d6d",
+ "\u0007Q\u0002\u0002\u5d6d\u5d6e\u0007T\u0002\u0002\u5d6e\u0db4\u0003",
+ "\u0002\u0002\u0002\u5d6f\u5d70\u0007U\u0002\u0002\u5d70\u5d71\u0007",
+ "[\u0002\u0002\u5d71\u5d72\u0007U\u0002\u0002\u5d72\u5d73\u0007a\u0002",
+ "\u0002\u5d73\u5d74\u0007Q\u0002\u0002\u5d74\u5d75\u0007R\u0002\u0002",
+ "\u5d75\u5d76\u0007a\u0002\u0002\u5d76\u5d77\u0007X\u0002\u0002\u5d77",
+ "\u5d78\u0007G\u0002\u0002\u5d78\u5d79\u0007T\u0002\u0002\u5d79\u5d7a",
+ "\u0007U\u0002\u0002\u5d7a\u5d7b\u0007K\u0002\u0002\u5d7b\u5d7c\u0007",
+ "Q\u0002\u0002\u5d7c\u5d7d\u0007P\u0002\u0002\u5d7d\u0db6\u0003\u0002",
+ "\u0002\u0002\u5d7e\u5d7f\u0007U\u0002\u0002\u5d7f\u5d80\u0007[\u0002",
+ "\u0002\u5d80\u5d81\u0007U\u0002\u0002\u5d81\u5d82\u0007a\u0002\u0002",
+ "\u5d82\u5d83\u0007Q\u0002\u0002\u5d83\u5d84\u0007R\u0002\u0002\u5d84",
+ "\u5d85\u0007a\u0002\u0002\u5d85\u5d86\u0007X\u0002\u0002\u5d86\u5d87",
+ "\u0007T\u0002\u0002\u5d87\u5d88\u0007G\u0002\u0002\u5d88\u5d89\u0007",
+ "H\u0002\u0002\u5d89\u0db8\u0003\u0002\u0002\u0002\u5d8a\u5d8b\u0007",
+ "U\u0002\u0002\u5d8b\u5d8c\u0007[\u0002\u0002\u5d8c\u5d8d\u0007U\u0002",
+ "\u0002\u5d8d\u5d8e\u0007a\u0002\u0002\u5d8e\u5d8f\u0007Q\u0002\u0002",
+ "\u5d8f\u5d90\u0007R\u0002\u0002\u5d90\u5d91\u0007a\u0002\u0002\u5d91",
+ "\u5d92\u0007X\u0002\u0002\u5d92\u5d93\u0007X\u0002\u0002\u5d93\u5d94",
+ "\u0007F\u0002\u0002\u5d94\u0dba\u0003\u0002\u0002\u0002\u5d95\u5d96",
+ "\u0007U\u0002\u0002\u5d96\u5d97\u0007[\u0002\u0002\u5d97\u5d98\u0007",
+ "U\u0002\u0002\u5d98\u5d99\u0007a\u0002\u0002\u5d99\u5d9a\u0007Q\u0002",
+ "\u0002\u5d9a\u5d9b\u0007R\u0002\u0002\u5d9b\u5d9c\u0007a\u0002\u0002",
+ "\u5d9c\u5d9d\u0007Z\u0002\u0002\u5d9d\u5d9e\u0007O\u0002\u0002\u5d9e",
+ "\u5d9f\u0007N\u0002\u0002\u5d9f\u5da0\u0007E\u0002\u0002\u5da0\u5da1",
+ "\u0007Q\u0002\u0002\u5da1\u5da2\u0007P\u0002\u0002\u5da2\u5da3\u0007",
+ "U\u0002\u0002\u5da3\u5da4\u0007a\u0002\u0002\u5da4\u5da5\u0007H\u0002",
+ "\u0002\u5da5\u5da6\u0007Q\u0002\u0002\u5da6\u5da7\u0007T\u0002\u0002",
+ "\u5da7\u5da8\u0007a\u0002\u0002\u5da8\u5da9\u0007E\u0002\u0002\u5da9",
+ "\u5daa\u0007U\u0002\u0002\u5daa\u5dab\u0007Z\u0002\u0002\u5dab\u0dbc",
+ "\u0003\u0002\u0002\u0002\u5dac\u5dad\u0007U\u0002\u0002\u5dad\u5dae",
+ "\u0007[\u0002\u0002\u5dae\u5daf\u0007U\u0002\u0002\u5daf\u5db0\u0007",
+ "a\u0002\u0002\u5db0\u5db1\u0007Q\u0002\u0002\u5db1\u5db2\u0007R\u0002",
+ "\u0002\u5db2\u5db3\u0007a\u0002\u0002\u5db3\u5db4\u0007Z\u0002\u0002",
+ "\u5db4\u5db5\u0007R\u0002\u0002\u5db5\u5db6\u0007V\u0002\u0002\u5db6",
+ "\u5db7\u0007J\u0002\u0002\u5db7\u5db8\u0007C\u0002\u0002\u5db8\u5db9",
+ "\u0007V\u0002\u0002\u5db9\u5dba\u0007I\u0002\u0002\u5dba\u0dbe\u0003",
+ "\u0002\u0002\u0002\u5dbb\u5dbc\u0007U\u0002\u0002\u5dbc\u5dbd\u0007",
+ "[\u0002\u0002\u5dbd\u5dbe\u0007U\u0002\u0002\u5dbe\u5dbf\u0007a\u0002",
+ "\u0002\u5dbf\u5dc0\u0007Q\u0002\u0002\u5dc0\u5dc1\u0007R\u0002\u0002",
+ "\u5dc1\u5dc2\u0007a\u0002\u0002\u5dc2\u5dc3\u0007Z\u0002\u0002\u5dc3",
+ "\u5dc4\u0007R\u0002\u0002\u5dc4\u5dc5\u0007V\u0002\u0002\u5dc5\u5dc6",
+ "\u0007J\u0002\u0002\u5dc6\u5dc7\u0007K\u0002\u0002\u5dc7\u5dc8\u0007",
+ "F\u0002\u0002\u5dc8\u5dc9\u0007Z\u0002\u0002\u5dc9\u0dc0\u0003\u0002",
+ "\u0002\u0002\u5dca\u5dcb\u0007U\u0002\u0002\u5dcb\u5dcc\u0007[\u0002",
+ "\u0002\u5dcc\u5dcd\u0007U\u0002\u0002\u5dcd\u5dce\u0007a\u0002\u0002",
+ "\u5dce\u5dcf\u0007Q\u0002\u0002\u5dcf\u5dd0\u0007R\u0002\u0002\u5dd0",
+ "\u5dd1\u0007a\u0002\u0002\u5dd1\u5dd2\u0007Z\u0002\u0002\u5dd2\u5dd3",
+ "\u0007R\u0002\u0002\u5dd3\u5dd4\u0007V\u0002\u0002\u5dd4\u5dd5\u0007",
+ "J\u0002\u0002\u5dd5\u5dd6\u0007Q\u0002\u0002\u5dd6\u5dd7\u0007R\u0002",
+ "\u0002\u5dd7\u0dc2\u0003\u0002\u0002\u0002\u5dd8\u5dd9\u0007U\u0002",
+ "\u0002\u5dd9\u5dda\u0007[\u0002\u0002\u5dda\u5ddb\u0007U\u0002\u0002",
+ "\u5ddb\u5ddc\u0007a\u0002\u0002\u5ddc\u5ddd\u0007Q\u0002\u0002\u5ddd",
+ "\u5dde\u0007R\u0002\u0002\u5dde\u5ddf\u0007a\u0002\u0002\u5ddf\u5de0",
+ "\u0007Z\u0002\u0002\u5de0\u5de1\u0007V\u0002\u0002\u5de1\u5de2\u0007",
+ "Z\u0002\u0002\u5de2\u5de3\u0007V\u0002\u0002\u5de3\u5de4\u00074\u0002",
+ "\u0002\u5de4\u5de5\u0007U\u0002\u0002\u5de5\u5de6\u0007S\u0002\u0002",
+ "\u5de6\u5de7\u0007N\u0002\u0002\u5de7\u5de8\u0007V\u0002\u0002\u5de8",
+ "\u0dc4\u0003\u0002\u0002\u0002\u5de9\u5dea\u0007U\u0002\u0002\u5dea",
+ "\u5deb\u0007[\u0002\u0002\u5deb\u5dec\u0007U\u0002\u0002\u5dec\u5ded",
+ "\u0007a\u0002\u0002\u5ded\u5dee\u0007Q\u0002\u0002\u5dee\u5def\u0007",
+ "R\u0002\u0002\u5def\u5df0\u0007a\u0002\u0002\u5df0\u5df1\u0007\\\u0002",
+ "\u0002\u5df1\u5df2\u0007Q\u0002\u0002\u5df2\u5df3\u0007P\u0002\u0002",
+ "\u5df3\u5df4\u0007G\u0002\u0002\u5df4\u5df5\u0007a\u0002\u0002\u5df5",
+ "\u5df6\u0007K\u0002\u0002\u5df6\u5df7\u0007F\u0002\u0002\u5df7\u0dc6",
+ "\u0003\u0002\u0002\u0002\u5df8\u5df9\u0007U\u0002\u0002\u5df9\u5dfa",
+ "\u0007[\u0002\u0002\u5dfa\u5dfb\u0007U\u0002\u0002\u5dfb\u5dfc\u0007",
+ "a\u0002\u0002\u5dfc\u5dfd\u0007Q\u0002\u0002\u5dfd\u5dfe\u0007T\u0002",
+ "\u0002\u5dfe\u5dff\u0007F\u0002\u0002\u5dff\u5e00\u0007G\u0002\u0002",
+ "\u5e00\u5e01\u0007T\u0002\u0002\u5e01\u5e02\u0007M\u0002\u0002\u5e02",
+ "\u5e03\u0007G\u0002\u0002\u5e03\u5e04\u0007[\u0002\u0002\u5e04\u5e05",
+ "\u0007a\u0002\u0002\u5e05\u5e06\u0007F\u0002\u0002\u5e06\u5e07\u0007",
+ "G\u0002\u0002\u5e07\u5e08\u0007R\u0002\u0002\u5e08\u5e09\u0007V\u0002",
+ "\u0002\u5e09\u5e0a\u0007J\u0002\u0002\u5e0a\u0dc8\u0003\u0002\u0002",
+ "\u0002\u5e0b\u5e0c\u0007U\u0002\u0002\u5e0c\u5e0d\u0007[\u0002\u0002",
+ "\u5e0d\u5e0e\u0007U\u0002\u0002\u5e0e\u5e0f\u0007a\u0002\u0002\u5e0f",
+ "\u5e10\u0007Q\u0002\u0002\u5e10\u5e11\u0007T\u0002\u0002\u5e11\u5e12",
+ "\u0007F\u0002\u0002\u5e12\u5e13\u0007G\u0002\u0002\u5e13\u5e14\u0007",
+ "T\u0002\u0002\u5e14\u5e15\u0007M\u0002\u0002\u5e15\u5e16\u0007G\u0002",
+ "\u0002\u5e16\u5e17\u0007[\u0002\u0002\u5e17\u5e18\u0007a\u0002\u0002",
+ "\u5e18\u5e19\u0007O\u0002\u0002\u5e19\u5e1a\u0007C\u0002\u0002\u5e1a",
+ "\u5e1b\u0007Z\u0002\u0002\u5e1b\u5e1c\u0007E\u0002\u0002\u5e1c\u5e1d",
+ "\u0007J\u0002\u0002\u5e1d\u5e1e\u0007K\u0002\u0002\u5e1e\u5e1f\u0007",
+ "N\u0002\u0002\u5e1f\u5e20\u0007F\u0002\u0002\u5e20\u0dca\u0003\u0002",
+ "\u0002\u0002\u5e21\u5e22\u0007U\u0002\u0002\u5e22\u5e23\u0007[\u0002",
+ "\u0002\u5e23\u5e24\u0007U\u0002\u0002\u5e24\u5e25\u0007a\u0002\u0002",
+ "\u5e25\u5e26\u0007Q\u0002\u0002\u5e26\u5e27\u0007T\u0002\u0002\u5e27",
+ "\u5e28\u0007F\u0002\u0002\u5e28\u5e29\u0007G\u0002\u0002\u5e29\u5e2a",
+ "\u0007T\u0002\u0002\u5e2a\u5e2b\u0007M\u0002\u0002\u5e2b\u5e2c\u0007",
+ "G\u0002\u0002\u5e2c\u5e2d\u0007[\u0002\u0002\u5e2d\u5e2e\u0007a\u0002",
+ "\u0002\u5e2e\u5e2f\u0007R\u0002\u0002\u5e2f\u5e30\u0007C\u0002\u0002",
+ "\u5e30\u5e31\u0007T\u0002\u0002\u5e31\u5e32\u0007G\u0002\u0002\u5e32",
+ "\u5e33\u0007P\u0002\u0002\u5e33\u5e34\u0007V\u0002\u0002\u5e34\u0dcc",
+ "\u0003\u0002\u0002\u0002\u5e35\u5e36\u0007U\u0002\u0002\u5e36\u5e37",
+ "\u0007[\u0002\u0002\u5e37\u5e38\u0007U\u0002\u0002\u5e38\u5e39\u0007",
+ "a\u0002\u0002\u5e39\u5e3a\u0007R\u0002\u0002\u5e3a\u5e3b\u0007C\u0002",
+ "\u0002\u5e3b\u5e3c\u0007T\u0002\u0002\u5e3c\u5e3d\u0007C\u0002\u0002",
+ "\u5e3d\u5e3e\u0007N\u0002\u0002\u5e3e\u5e3f\u0007N\u0002\u0002\u5e3f",
+ "\u5e40\u0007G\u0002\u0002\u5e40\u5e41\u0007N\u0002\u0002\u5e41\u5e42",
+ "\u0007a\u0002\u0002\u5e42\u5e43\u0007V\u0002\u0002\u5e43\u5e44\u0007",
+ "Z\u0002\u0002\u5e44\u5e45\u0007P\u0002\u0002\u5e45\u0dce\u0003\u0002",
+ "\u0002\u0002\u5e46\u5e47\u0007U\u0002\u0002\u5e47\u5e48\u0007[\u0002",
+ "\u0002\u5e48\u5e49\u0007U\u0002\u0002\u5e49\u5e4a\u0007a\u0002\u0002",
+ "\u5e4a\u5e4b\u0007R\u0002\u0002\u5e4b\u5e4c\u0007C\u0002\u0002\u5e4c",
+ "\u5e4d\u0007V\u0002\u0002\u5e4d\u5e4e\u0007J\u0002\u0002\u5e4e\u5e4f",
+ "\u0007K\u0002\u0002\u5e4f\u5e50\u0007F\u0002\u0002\u5e50\u5e51\u0007",
+ "a\u0002\u0002\u5e51\u5e52\u0007K\u0002\u0002\u5e52\u5e53\u0007U\u0002",
+ "\u0002\u5e53\u5e54\u0007a\u0002\u0002\u5e54\u5e55\u0007C\u0002\u0002",
+ "\u5e55\u5e56\u0007V\u0002\u0002\u5e56\u5e57\u0007V\u0002\u0002\u5e57",
+ "\u5e58\u0007T\u0002\u0002\u5e58\u0dd0\u0003\u0002\u0002\u0002\u5e59",
+ "\u5e5a\u0007U\u0002\u0002\u5e5a\u5e5b\u0007[\u0002\u0002\u5e5b\u5e5c",
+ "\u0007U\u0002\u0002\u5e5c\u5e5d\u0007a\u0002\u0002\u5e5d\u5e5e\u0007",
+ "R\u0002\u0002\u5e5e\u5e5f\u0007C\u0002\u0002\u5e5f\u5e60\u0007V\u0002",
+ "\u0002\u5e60\u5e61\u0007J\u0002\u0002\u5e61\u5e62\u0007K\u0002\u0002",
+ "\u5e62\u5e63\u0007F\u0002\u0002\u5e63\u5e64\u0007a\u0002\u0002\u5e64",
+ "\u5e65\u0007K\u0002\u0002\u5e65\u5e66\u0007U\u0002\u0002\u5e66\u5e67",
+ "\u0007a\u0002\u0002\u5e67\u5e68\u0007P\u0002\u0002\u5e68\u5e69\u0007",
+ "O\u0002\u0002\u5e69\u5e6a\u0007U\u0002\u0002\u5e6a\u5e6b\u0007R\u0002",
+ "\u0002\u5e6b\u5e6c\u0007E\u0002\u0002\u5e6c\u0dd2\u0003\u0002\u0002",
+ "\u0002\u5e6d\u5e6e\u0007U\u0002\u0002\u5e6e\u5e6f\u0007[\u0002\u0002",
+ "\u5e6f\u5e70\u0007U\u0002\u0002\u5e70\u5e71\u0007a\u0002\u0002\u5e71",
+ "\u5e72\u0007R\u0002\u0002\u5e72\u5e73\u0007C\u0002\u0002\u5e73\u5e74",
+ "\u0007V\u0002\u0002\u5e74\u5e75\u0007J\u0002\u0002\u5e75\u5e76\u0007",
+ "K\u0002\u0002\u5e76\u5e77\u0007F\u0002\u0002\u5e77\u5e78\u0007a\u0002",
+ "\u0002\u5e78\u5e79\u0007N\u0002\u0002\u5e79\u5e7a\u0007C\u0002\u0002",
+ "\u5e7a\u5e7b\u0007U\u0002\u0002\u5e7b\u5e7c\u0007V\u0002\u0002\u5e7c",
+ "\u5e7d\u0007P\u0002\u0002\u5e7d\u5e7e\u0007C\u0002\u0002\u5e7e\u5e7f",
+ "\u0007O\u0002\u0002\u5e7f\u5e80\u0007G\u0002\u0002\u5e80\u0dd4\u0003",
+ "\u0002\u0002\u0002\u5e81\u5e82\u0007U\u0002\u0002\u5e82\u5e83\u0007",
+ "[\u0002\u0002\u5e83\u5e84\u0007U\u0002\u0002\u5e84\u5e85\u0007a\u0002",
+ "\u0002\u5e85\u5e86\u0007R\u0002\u0002\u5e86\u5e87\u0007C\u0002\u0002",
+ "\u5e87\u5e88\u0007V\u0002\u0002\u5e88\u5e89\u0007J\u0002\u0002\u5e89",
+ "\u5e8a\u0007K\u0002\u0002\u5e8a\u5e8b\u0007F\u0002\u0002\u5e8b\u5e8c",
+ "\u0007a\u0002\u0002\u5e8c\u5e8d\u0007N\u0002\u0002\u5e8d\u5e8e\u0007",
+ "C\u0002\u0002\u5e8e\u5e8f\u0007U\u0002\u0002\u5e8f\u5e90\u0007V\u0002",
+ "\u0002\u5e90\u5e91\u0007P\u0002\u0002\u5e91\u5e92\u0007O\u0002\u0002",
+ "\u5e92\u5e93\u0007U\u0002\u0002\u5e93\u5e94\u0007R\u0002\u0002\u5e94",
+ "\u5e95\u0007E\u0002\u0002\u5e95\u0dd6\u0003\u0002\u0002\u0002\u5e96",
+ "\u5e97\u0007U\u0002\u0002\u5e97\u5e98\u0007[\u0002\u0002\u5e98\u5e99",
+ "\u0007U\u0002\u0002\u5e99\u5e9a\u0007a\u0002\u0002\u5e9a\u5e9b\u0007",
+ "R\u0002\u0002\u5e9b\u5e9c\u0007C\u0002\u0002\u5e9c\u5e9d\u0007V\u0002",
+ "\u0002\u5e9d\u5e9e\u0007J\u0002\u0002\u5e9e\u5e9f\u0007a\u0002\u0002",
+ "\u5e9f\u5ea0\u0007T\u0002\u0002\u5ea0\u5ea1\u0007G\u0002\u0002\u5ea1",
+ "\u5ea2\u0007X\u0002\u0002\u5ea2\u5ea3\u0007G\u0002\u0002\u5ea3\u5ea4",
+ "\u0007T\u0002\u0002\u5ea4\u5ea5\u0007U\u0002\u0002\u5ea5\u5ea6\u0007",
+ "G\u0002\u0002\u5ea6\u0dd8\u0003\u0002\u0002\u0002\u5ea7\u5ea8\u0007",
+ "U\u0002\u0002\u5ea8\u5ea9\u0007[\u0002\u0002\u5ea9\u5eaa\u0007U\u0002",
+ "\u0002\u5eaa\u5eab\u0007a\u0002\u0002\u5eab\u5eac\u0007R\u0002\u0002",
+ "\u5eac\u5ead\u0007Z\u0002\u0002\u5ead\u5eae\u0007S\u0002\u0002\u5eae",
+ "\u5eaf\u0007G\u0002\u0002\u5eaf\u5eb0\u0007Z\u0002\u0002\u5eb0\u5eb1",
+ "\u0007V\u0002\u0002\u5eb1\u5eb2\u0007T\u0002\u0002\u5eb2\u5eb3\u0007",
+ "C\u0002\u0002\u5eb3\u5eb4\u0007E\u0002\u0002\u5eb4\u5eb5\u0007V\u0002",
+ "\u0002\u5eb5\u0dda\u0003\u0002\u0002\u0002\u5eb6\u5eb7\u0007U\u0002",
+ "\u0002\u5eb7\u5eb8\u0007[\u0002\u0002\u5eb8\u5eb9\u0007U\u0002\u0002",
+ "\u5eb9\u5eba\u0007a\u0002\u0002\u5eba\u5ebb\u0007T\u0002\u0002\u5ebb",
+ "\u5ebc\u0007C\u0002\u0002\u5ebc\u5ebd\u0007Y\u0002\u0002\u5ebd\u5ebe",
+ "\u0007a\u0002\u0002\u5ebe\u5ebf\u0007V\u0002\u0002\u5ebf\u5ec0\u0007",
+ "Q\u0002\u0002\u5ec0\u5ec1\u0007a\u0002\u0002\u5ec1\u5ec2\u0007Z\u0002",
+ "\u0002\u5ec2\u5ec3\u0007U\u0002\u0002\u5ec3\u5ec4\u0007K\u0002\u0002",
+ "\u5ec4\u5ec5\u0007F\u0002\u0002\u5ec5\u0ddc\u0003\u0002\u0002\u0002",
+ "\u5ec6\u5ec7\u0007U\u0002\u0002\u5ec7\u5ec8\u0007[\u0002\u0002\u5ec8",
+ "\u5ec9\u0007U\u0002\u0002\u5ec9\u5eca\u0007a\u0002\u0002\u5eca\u5ecb",
+ "\u0007T\u0002\u0002\u5ecb\u5ecc\u0007K\u0002\u0002\u5ecc\u5ecd\u0007",
+ "F\u0002\u0002\u5ecd\u5ece\u0007a\u0002\u0002\u5ece\u5ecf\u0007Q\u0002",
+ "\u0002\u5ecf\u5ed0\u0007T\u0002\u0002\u5ed0\u5ed1\u0007F\u0002\u0002",
+ "\u5ed1\u5ed2\u0007G\u0002\u0002\u5ed2\u5ed3\u0007T\u0002\u0002\u5ed3",
+ "\u0dde\u0003\u0002\u0002\u0002\u5ed4\u5ed5\u0007U\u0002\u0002\u5ed5",
+ "\u5ed6\u0007[\u0002\u0002\u5ed6\u5ed7\u0007U\u0002\u0002\u5ed7\u5ed8",
+ "\u0007a\u0002\u0002\u5ed8\u5ed9\u0007T\u0002\u0002\u5ed9\u5eda\u0007",
+ "Q\u0002\u0002\u5eda\u5edb\u0007Y\u0002\u0002\u5edb\u5edc\u0007a\u0002",
+ "\u0002\u5edc\u5edd\u0007F\u0002\u0002\u5edd\u5ede\u0007G\u0002\u0002",
+ "\u5ede\u5edf\u0007N\u0002\u0002\u5edf\u5ee0\u0007V\u0002\u0002\u5ee0",
+ "\u5ee1\u0007C\u0002\u0002\u5ee1\u0de0\u0003\u0002\u0002\u0002\u5ee2",
+ "\u5ee3\u0007U\u0002\u0002\u5ee3\u5ee4\u0007[\u0002\u0002\u5ee4\u5ee5",
+ "\u0007U\u0002\u0002\u5ee5\u5ee6\u0007a\u0002\u0002\u5ee6\u5ee7\u0007",
+ "U\u0002\u0002\u5ee7\u5ee8\u0007E\u0002\u0002\u5ee8\u5ee9\u0007a\u0002",
+ "\u0002\u5ee9\u5eea\u00074\u0002\u0002\u5eea\u5eeb\u0007a\u0002\u0002",
+ "\u5eeb\u5eec\u0007Z\u0002\u0002\u5eec\u5eed\u0007O\u0002\u0002\u5eed",
+ "\u5eee\u0007N\u0002\u0002\u5eee\u5eef\u0007V\u0002\u0002\u5eef\u0de2",
+ "\u0003\u0002\u0002\u0002\u5ef0\u5ef1\u0007U\u0002\u0002\u5ef1\u5ef2",
+ "\u0007[\u0002\u0002\u5ef2\u5ef3\u0007U\u0002\u0002\u5ef3\u5ef4\u0007",
+ "a\u0002\u0002\u5ef4\u5ef5\u0007U\u0002\u0002\u5ef5\u5ef6\u0007[\u0002",
+ "\u0002\u5ef6\u5ef7\u0007P\u0002\u0002\u5ef7\u5ef8\u0007T\u0002\u0002",
+ "\u5ef8\u5ef9\u0007E\u0002\u0002\u5ef9\u5efa\u0007K\u0002\u0002\u5efa",
+ "\u5efb\u0007T\u0002\u0002\u5efb\u5efc\u0007G\u0002\u0002\u5efc\u5efd",
+ "\u0007F\u0002\u0002\u5efd\u5efe\u0007Q\u0002\u0002\u5efe\u0de4\u0003",
+ "\u0002\u0002\u0002\u5eff\u5f00\u0007U\u0002\u0002\u5f00\u5f01\u0007",
+ "[\u0002\u0002\u5f01\u5f02\u0007U\u0002\u0002\u5f02\u5f03\u0007V\u0002",
+ "\u0002\u5f03\u5f04\u0007G\u0002\u0002\u5f04\u5f05\u0007O\u0002\u0002",
+ "\u5f05\u5f06\u0007a\u0002\u0002\u5f06\u5f07\u0007F\u0002\u0002\u5f07",
+ "\u5f08\u0007G\u0002\u0002\u5f08\u5f09\u0007H\u0002\u0002\u5f09\u5f0a",
+ "\u0007K\u0002\u0002\u5f0a\u5f0b\u0007P\u0002\u0002\u5f0b\u5f0c\u0007",
+ "G\u0002\u0002\u5f0c\u5f0d\u0007F\u0002\u0002\u5f0d\u0de6\u0003\u0002",
+ "\u0002\u0002\u5f0e\u5f0f\u0007U\u0002\u0002\u5f0f\u5f10\u0007[\u0002",
+ "\u0002\u5f10\u5f11\u0007U\u0002\u0002\u5f11\u5f12\u0007V\u0002\u0002",
+ "\u5f12\u5f13\u0007G\u0002\u0002\u5f13\u5f14\u0007O\u0002\u0002\u5f14",
+ "\u0de8\u0003\u0002\u0002\u0002\u5f15\u5f16\u0007U\u0002\u0002\u5f16",
+ "\u5f17\u0007[\u0002\u0002\u5f17\u5f18\u0007U\u0002\u0002\u5f18\u5f19",
+ "\u0007V\u0002\u0002\u5f19\u5f1a\u0007K\u0002\u0002\u5f1a\u5f1b\u0007",
+ "O\u0002\u0002\u5f1b\u5f1c\u0007G\u0002\u0002\u5f1c\u5f1d\u0007U\u0002",
+ "\u0002\u5f1d\u5f1e\u0007V\u0002\u0002\u5f1e\u5f1f\u0007C\u0002\u0002",
+ "\u5f1f\u5f20\u0007O\u0002\u0002\u5f20\u5f21\u0007R\u0002\u0002\u5f21",
+ "\u0dea\u0003\u0002\u0002\u0002\u5f22\u5f23\u0007U\u0002\u0002\u5f23",
+ "\u5f24\u0007[\u0002\u0002\u5f24\u5f25\u0007U\u0002\u0002\u5f25\u5f26",
+ "\u0007a\u0002\u0002\u5f26\u5f27\u0007V\u0002\u0002\u5f27\u5f28\u0007",
+ "[\u0002\u0002\u5f28\u5f29\u0007R\u0002\u0002\u5f29\u5f2a\u0007G\u0002",
+ "\u0002\u5f2a\u5f2b\u0007K\u0002\u0002\u5f2b\u5f2c\u0007F\u0002\u0002",
+ "\u5f2c\u0dec\u0003\u0002\u0002\u0002\u5f2d\u5f2e\u0007U\u0002\u0002",
+ "\u5f2e\u5f2f\u0007[\u0002\u0002\u5f2f\u5f30\u0007U\u0002\u0002\u5f30",
+ "\u5f31\u0007a\u0002\u0002\u5f31\u5f32\u0007W\u0002\u0002\u5f32\u5f33",
+ "\u0007O\u0002\u0002\u5f33\u5f34\u0007C\u0002\u0002\u5f34\u5f35\u0007",
+ "M\u0002\u0002\u5f35\u5f36\u0007G\u0002\u0002\u5f36\u5f37\u0007Z\u0002",
+ "\u0002\u5f37\u5f38\u0007O\u0002\u0002\u5f38\u5f39\u0007N\u0002\u0002",
+ "\u5f39\u0dee\u0003\u0002\u0002\u0002\u5f3a\u5f3b\u0007U\u0002\u0002",
+ "\u5f3b\u5f3c\u0007[\u0002\u0002\u5f3c\u5f3d\u0007U\u0002\u0002\u5f3d",
+ "\u5f3e\u0007a\u0002\u0002\u5f3e\u5f3f\u0007Z\u0002\u0002\u5f3f\u5f40",
+ "\u0007O\u0002\u0002\u5f40\u5f41\u0007N\u0002\u0002\u5f41\u5f42\u0007",
+ "C\u0002\u0002\u5f42\u5f43\u0007P\u0002\u0002\u5f43\u5f44\u0007C\u0002",
+ "\u0002\u5f44\u5f45\u0007N\u0002\u0002\u5f45\u5f46\u0007[\u0002\u0002",
+ "\u5f46\u5f47\u0007\\\u0002\u0002\u5f47\u5f48\u0007G\u0002\u0002\u5f48",
+ "\u0df0\u0003\u0002\u0002\u0002\u5f49\u5f4a\u0007U\u0002\u0002\u5f4a",
+ "\u5f4b\u0007[\u0002\u0002\u5f4b\u5f4c\u0007U\u0002\u0002\u5f4c\u5f4d",
+ "\u0007a\u0002\u0002\u5f4d\u5f4e\u0007Z\u0002\u0002\u5f4e\u5f4f\u0007",
+ "O\u0002\u0002\u5f4f\u5f50\u0007N\u0002\u0002\u5f50\u5f51\u0007E\u0002",
+ "\u0002\u5f51\u5f52\u0007Q\u0002\u0002\u5f52\u5f53\u0007P\u0002\u0002",
+ "\u5f53\u5f54\u0007V\u0002\u0002\u5f54\u5f55\u0007C\u0002\u0002\u5f55",
+ "\u5f56\u0007K\u0002\u0002\u5f56\u5f57\u0007P\u0002\u0002\u5f57\u5f58",
+ "\u0007U\u0002\u0002\u5f58\u0df2\u0003\u0002\u0002\u0002\u5f59\u5f5a",
+ "\u0007U\u0002\u0002\u5f5a\u5f5b\u0007[\u0002\u0002\u5f5b\u5f5c\u0007",
+ "U\u0002\u0002\u5f5c\u5f5d\u0007a\u0002\u0002\u5f5d\u5f5e\u0007Z\u0002",
+ "\u0002\u5f5e\u5f5f\u0007O\u0002\u0002\u5f5f\u5f60\u0007N\u0002\u0002",
+ "\u5f60\u5f61\u0007E\u0002\u0002\u5f61\u5f62\u0007Q\u0002\u0002\u5f62",
+ "\u5f63\u0007P\u0002\u0002\u5f63\u5f64\u0007X\u0002\u0002\u5f64\u0df4",
+ "\u0003\u0002\u0002\u0002\u5f65\u5f66\u0007U\u0002\u0002\u5f66\u5f67",
+ "\u0007[\u0002\u0002\u5f67\u5f68\u0007U\u0002\u0002\u5f68\u5f69\u0007",
+ "a\u0002\u0002\u5f69\u5f6a\u0007Z\u0002\u0002\u5f6a\u5f6b\u0007O\u0002",
+ "\u0002\u5f6b\u5f6c\u0007N\u0002\u0002\u5f6c\u5f6d\u0007G\u0002\u0002",
+ "\u5f6d\u5f6e\u0007Z\u0002\u0002\u5f6e\u5f6f\u0007P\u0002\u0002\u5f6f",
+ "\u5f70\u0007U\u0002\u0002\u5f70\u5f71\u0007W\u0002\u0002\u5f71\u5f72",
+ "\u0007T\u0002\u0002\u5f72\u5f73\u0007K\u0002\u0002\u5f73\u0df6\u0003",
+ "\u0002\u0002\u0002\u5f74\u5f75\u0007U\u0002\u0002\u5f75\u5f76\u0007",
+ "[\u0002\u0002\u5f76\u5f77\u0007U\u0002\u0002\u5f77\u5f78\u0007a\u0002",
+ "\u0002\u5f78\u5f79\u0007Z\u0002\u0002\u5f79\u5f7a\u0007O\u0002\u0002",
+ "\u5f7a\u5f7b\u0007N\u0002\u0002\u5f7b\u5f7c\u0007I\u0002\u0002\u5f7c",
+ "\u5f7d\u0007G\u0002\u0002\u5f7d\u5f7e\u0007P\u0002\u0002\u5f7e\u0df8",
+ "\u0003\u0002\u0002\u0002\u5f7f\u5f80\u0007U\u0002\u0002\u5f80\u5f81",
+ "\u0007[\u0002\u0002\u5f81\u5f82\u0007U\u0002\u0002\u5f82\u5f83\u0007",
+ "a\u0002\u0002\u5f83\u5f84\u0007Z\u0002\u0002\u5f84\u5f85\u0007O\u0002",
+ "\u0002\u5f85\u5f86\u0007N\u0002\u0002\u5f86\u5f87\u0007K\u0002\u0002",
+ "\u5f87\u5f88\u0007a\u0002\u0002\u5f88\u5f89\u0007N\u0002\u0002\u5f89",
+ "\u5f8a\u0007Q\u0002\u0002\u5f8a\u5f8b\u0007E\u0002\u0002\u5f8b\u5f8c",
+ "\u0007a\u0002\u0002\u5f8c\u5f8d\u0007K\u0002\u0002\u5f8d\u5f8e\u0007",
+ "U\u0002\u0002\u5f8e\u5f8f\u0007P\u0002\u0002\u5f8f\u5f90\u0007Q\u0002",
+ "\u0002\u5f90\u5f91\u0007F\u0002\u0002\u5f91\u5f92\u0007G\u0002\u0002",
+ "\u5f92\u0dfa\u0003\u0002\u0002\u0002\u5f93\u5f94\u0007U\u0002\u0002",
+ "\u5f94\u5f95\u0007[\u0002\u0002\u5f95\u5f96\u0007U\u0002\u0002\u5f96",
+ "\u5f97\u0007a\u0002\u0002\u5f97\u5f98\u0007Z\u0002\u0002\u5f98\u5f99",
+ "\u0007O\u0002\u0002\u5f99\u5f9a\u0007N\u0002\u0002\u5f9a\u5f9b\u0007",
+ "K\u0002\u0002\u5f9b\u5f9c\u0007a\u0002\u0002\u5f9c\u5f9d\u0007N\u0002",
+ "\u0002\u5f9d\u5f9e\u0007Q\u0002\u0002\u5f9e\u5f9f\u0007E\u0002\u0002",
+ "\u5f9f\u5fa0\u0007a\u0002\u0002\u5fa0\u5fa1\u0007K\u0002\u0002\u5fa1",
+ "\u5fa2\u0007U\u0002\u0002\u5fa2\u5fa3\u0007V\u0002\u0002\u5fa3\u5fa4",
+ "\u0007G\u0002\u0002\u5fa4\u5fa5\u0007Z\u0002\u0002\u5fa5\u5fa6\u0007",
+ "V\u0002\u0002\u5fa6\u0dfc\u0003\u0002\u0002\u0002\u5fa7\u5fa8\u0007",
+ "U\u0002\u0002\u5fa8\u5fa9\u0007[\u0002\u0002\u5fa9\u5faa\u0007U\u0002",
+ "\u0002\u5faa\u5fab\u0007a\u0002\u0002\u5fab\u5fac\u0007Z\u0002\u0002",
+ "\u5fac\u5fad\u0007O\u0002\u0002\u5fad\u5fae\u0007N\u0002\u0002\u5fae",
+ "\u5faf\u0007K\u0002\u0002\u5faf\u5fb0\u0007P\u0002\u0002\u5fb0\u5fb1",
+ "\u0007U\u0002\u0002\u5fb1\u5fb2\u0007V\u0002\u0002\u5fb2\u5fb3\u0007",
+ "T\u0002\u0002\u5fb3\u0dfe\u0003\u0002\u0002\u0002\u5fb4\u5fb5\u0007",
+ "U\u0002\u0002\u5fb5\u5fb6\u0007[\u0002\u0002\u5fb6\u5fb7\u0007U\u0002",
+ "\u0002\u5fb7\u5fb8\u0007a\u0002\u0002\u5fb8\u5fb9\u0007Z\u0002\u0002",
+ "\u5fb9\u5fba\u0007O\u0002\u0002\u5fba\u5fbb\u0007N\u0002\u0002\u5fbb",
+ "\u5fbc\u0007N\u0002\u0002\u5fbc\u5fbd\u0007Q\u0002\u0002\u5fbd\u5fbe",
+ "\u0007E\u0002\u0002\u5fbe\u5fbf\u0007C\u0002\u0002\u5fbf\u5fc0\u0007",
+ "V\u0002\u0002\u5fc0\u5fc1\u0007Q\u0002\u0002\u5fc1\u5fc2\u0007T\u0002",
+ "\u0002\u5fc2\u5fc3\u0007a\u0002\u0002\u5fc3\u5fc4\u0007I\u0002\u0002",
+ "\u5fc4\u5fc5\u0007G\u0002\u0002\u5fc5\u5fc6\u0007V\u0002\u0002\u5fc6",
+ "\u5fc7\u0007U\u0002\u0002\u5fc7\u5fc8\u0007X\u0002\u0002\u5fc8\u5fc9",
+ "\u0007C\u0002\u0002\u5fc9\u5fca\u0007N\u0002\u0002\u5fca\u0e00\u0003",
+ "\u0002\u0002\u0002\u5fcb\u5fcc\u0007U\u0002\u0002\u5fcc\u5fcd\u0007",
+ "[\u0002\u0002\u5fcd\u5fce\u0007U\u0002\u0002\u5fce\u5fcf\u0007a\u0002",
+ "\u0002\u5fcf\u5fd0\u0007Z\u0002\u0002\u5fd0\u5fd1\u0007O\u0002\u0002",
+ "\u5fd1\u5fd2\u0007N\u0002\u0002\u5fd2\u5fd3\u0007P\u0002\u0002\u5fd3",
+ "\u5fd4\u0007Q\u0002\u0002\u5fd4\u5fd5\u0007F\u0002\u0002\u5fd5\u5fd6",
+ "\u0007G\u0002\u0002\u5fd6\u5fd7\u0007K\u0002\u0002\u5fd7\u5fd8\u0007",
+ "F\u0002\u0002\u5fd8\u5fd9\u0007a\u0002\u0002\u5fd9\u5fda\u0007I\u0002",
+ "\u0002\u5fda\u5fdb\u0007G\u0002\u0002\u5fdb\u5fdc\u0007V\u0002\u0002",
+ "\u5fdc\u5fdd\u0007E\u0002\u0002\u5fdd\u5fde\u0007K\u0002\u0002\u5fde",
+ "\u5fdf\u0007F\u0002\u0002\u5fdf\u0e02\u0003\u0002\u0002\u0002\u5fe0",
+ "\u5fe1\u0007U\u0002\u0002\u5fe1\u5fe2\u0007[\u0002\u0002\u5fe2\u5fe3",
+ "\u0007U\u0002\u0002\u5fe3\u5fe4\u0007a\u0002\u0002\u5fe4\u5fe5\u0007",
+ "Z\u0002\u0002\u5fe5\u5fe6\u0007O\u0002\u0002\u5fe6\u5fe7\u0007N\u0002",
+ "\u0002\u5fe7\u5fe8\u0007P\u0002\u0002\u5fe8\u5fe9\u0007Q\u0002\u0002",
+ "\u5fe9\u5fea\u0007F\u0002\u0002\u5fea\u5feb\u0007G\u0002\u0002\u5feb",
+ "\u5fec\u0007K\u0002\u0002\u5fec\u5fed\u0007F\u0002\u0002\u5fed\u5fee",
+ "\u0007a\u0002\u0002\u5fee\u5fef\u0007I\u0002\u0002\u5fef\u5ff0\u0007",
+ "G\u0002\u0002\u5ff0\u5ff1\u0007V\u0002\u0002\u5ff1\u5ff2\u0007N\u0002",
+ "\u0002\u5ff2\u5ff3\u0007Q\u0002\u0002\u5ff3\u5ff4\u0007E\u0002\u0002",
+ "\u5ff4\u5ff5\u0007C\u0002\u0002\u5ff5\u5ff6\u0007V\u0002\u0002\u5ff6",
+ "\u5ff7\u0007Q\u0002\u0002\u5ff7\u5ff8\u0007T\u0002\u0002\u5ff8\u0e04",
+ "\u0003\u0002\u0002\u0002\u5ff9\u5ffa\u0007U\u0002\u0002\u5ffa\u5ffb",
+ "\u0007[\u0002\u0002\u5ffb\u5ffc\u0007U\u0002\u0002\u5ffc\u5ffd\u0007",
+ "a\u0002\u0002\u5ffd\u5ffe\u0007Z\u0002\u0002\u5ffe\u5fff\u0007O\u0002",
+ "\u0002\u5fff\u6000\u0007N\u0002\u0002\u6000\u6001\u0007P\u0002\u0002",
+ "\u6001\u6002\u0007Q\u0002\u0002\u6002\u6003\u0007F\u0002\u0002\u6003",
+ "\u6004\u0007G\u0002\u0002\u6004\u6005\u0007K\u0002\u0002\u6005\u6006",
+ "\u0007F\u0002\u0002\u6006\u6007\u0007a\u0002\u0002\u6007\u6008\u0007",
+ "I\u0002\u0002\u6008\u6009\u0007G\u0002\u0002\u6009\u600a\u0007V\u0002",
+ "\u0002\u600a\u600b\u0007Q\u0002\u0002\u600b\u600c\u0007M\u0002\u0002",
+ "\u600c\u600d\u0007G\u0002\u0002\u600d\u600e\u0007[\u0002\u0002\u600e",
+ "\u0e06\u0003\u0002\u0002\u0002\u600f\u6010\u0007U\u0002\u0002\u6010",
+ "\u6011\u0007[\u0002\u0002\u6011\u6012\u0007U\u0002\u0002\u6012\u6013",
+ "\u0007a\u0002\u0002\u6013\u6014\u0007Z\u0002\u0002\u6014\u6015\u0007",
+ "O\u0002\u0002\u6015\u6016\u0007N\u0002\u0002\u6016\u6017\u0007P\u0002",
+ "\u0002\u6017\u6018\u0007Q\u0002\u0002\u6018\u6019\u0007F\u0002\u0002",
+ "\u6019\u601a\u0007G\u0002\u0002\u601a\u601b\u0007K\u0002\u0002\u601b",
+ "\u601c\u0007F\u0002\u0002\u601c\u601d\u0007a\u0002\u0002\u601d\u601e",
+ "\u0007I\u0002\u0002\u601e\u601f\u0007G\u0002\u0002\u601f\u6020\u0007",
+ "V\u0002\u0002\u6020\u6021\u0007R\u0002\u0002\u6021\u6022\u0007C\u0002",
+ "\u0002\u6022\u6023\u0007V\u0002\u0002\u6023\u6024\u0007J\u0002\u0002",
+ "\u6024\u6025\u0007K\u0002\u0002\u6025\u6026\u0007F\u0002\u0002\u6026",
+ "\u0e08\u0003\u0002\u0002\u0002\u6027\u6028\u0007U\u0002\u0002\u6028",
+ "\u6029\u0007[\u0002\u0002\u6029\u602a\u0007U\u0002\u0002\u602a\u602b",
+ "\u0007a\u0002\u0002\u602b\u602c\u0007Z\u0002\u0002\u602c\u602d\u0007",
+ "O\u0002\u0002\u602d\u602e\u0007N\u0002\u0002\u602e\u602f\u0007P\u0002",
+ "\u0002\u602f\u6030\u0007Q\u0002\u0002\u6030\u6031\u0007F\u0002\u0002",
+ "\u6031\u6032\u0007G\u0002\u0002\u6032\u6033\u0007K\u0002\u0002\u6033",
+ "\u6034\u0007F\u0002\u0002\u6034\u6035\u0007a\u0002\u0002\u6035\u6036",
+ "\u0007I\u0002\u0002\u6036\u6037\u0007G\u0002\u0002\u6037\u6038\u0007",
+ "V\u0002\u0002\u6038\u6039\u0007R\u0002\u0002\u6039\u603a\u0007V\u0002",
+ "\u0002\u603a\u603b\u0007T\u0002\u0002\u603b\u603c\u0007K\u0002\u0002",
+ "\u603c\u603d\u0007F\u0002\u0002\u603d\u0e0a\u0003\u0002\u0002\u0002",
+ "\u603e\u603f\u0007U\u0002\u0002\u603f\u6040\u0007[\u0002\u0002\u6040",
+ "\u6041\u0007U\u0002\u0002\u6041\u6042\u0007a\u0002\u0002\u6042\u6043",
+ "\u0007Z\u0002\u0002\u6043\u6044\u0007O\u0002\u0002\u6044\u6045\u0007",
+ "N\u0002\u0002\u6045\u6046\u0007P\u0002\u0002\u6046\u6047\u0007Q\u0002",
+ "\u0002\u6047\u6048\u0007F\u0002\u0002\u6048\u6049\u0007G\u0002\u0002",
+ "\u6049\u604a\u0007K\u0002\u0002\u604a\u604b\u0007F\u0002\u0002\u604b",
+ "\u604c\u0007a\u0002\u0002\u604c\u604d\u0007I\u0002\u0002\u604d\u604e",
+ "\u0007G\u0002\u0002\u604e\u604f\u0007V\u0002\u0002\u604f\u6050\u0007",
+ "T\u0002\u0002\u6050\u6051\u0007K\u0002\u0002\u6051\u6052\u0007F\u0002",
+ "\u0002\u6052\u0e0c\u0003\u0002\u0002\u0002\u6053\u6054\u0007U\u0002",
+ "\u0002\u6054\u6055\u0007[\u0002\u0002\u6055\u6056\u0007U\u0002\u0002",
+ "\u6056\u6057\u0007a\u0002\u0002\u6057\u6058\u0007Z\u0002\u0002\u6058",
+ "\u6059\u0007O\u0002\u0002\u6059\u605a\u0007N\u0002\u0002\u605a\u605b",
+ "\u0007P\u0002\u0002\u605b\u605c\u0007Q\u0002\u0002\u605c\u605d\u0007",
+ "F\u0002\u0002\u605d\u605e\u0007G\u0002\u0002\u605e\u605f\u0007K\u0002",
+ "\u0002\u605f\u6060\u0007F\u0002\u0002\u6060\u6061\u0007a\u0002\u0002",
+ "\u6061\u6062\u0007I\u0002\u0002\u6062\u6063\u0007G\u0002\u0002\u6063",
+ "\u6064\u0007V\u0002\u0002\u6064\u6065\u0007U\u0002\u0002\u6065\u6066",
+ "\u0007X\u0002\u0002\u6066\u6067\u0007C\u0002\u0002\u6067\u6068\u0007",
+ "N\u0002\u0002\u6068\u0e0e\u0003\u0002\u0002\u0002\u6069\u606a\u0007",
+ "U\u0002\u0002\u606a\u606b\u0007[\u0002\u0002\u606b\u606c\u0007U\u0002",
+ "\u0002\u606c\u606d\u0007a\u0002\u0002\u606d\u606e\u0007Z\u0002\u0002",
+ "\u606e\u606f\u0007O\u0002\u0002\u606f\u6070\u0007N\u0002\u0002\u6070",
+ "\u6071\u0007P\u0002\u0002\u6071\u6072\u0007Q\u0002\u0002\u6072\u6073",
+ "\u0007F\u0002\u0002\u6073\u6074\u0007G\u0002\u0002\u6074\u6075\u0007",
+ "K\u0002\u0002\u6075\u6076\u0007F\u0002\u0002\u6076\u6077\u0007a\u0002",
+ "\u0002\u6077\u6078\u0007I\u0002\u0002\u6078\u6079\u0007G\u0002\u0002",
+ "\u6079\u607a\u0007V\u0002\u0002\u607a\u607b\u0007V\u0002\u0002\u607b",
+ "\u607c\u0007K\u0002\u0002\u607c\u607d\u0007F\u0002\u0002\u607d\u0e10",
+ "\u0003\u0002\u0002\u0002\u607e\u607f\u0007U\u0002\u0002\u607f\u6080",
+ "\u0007[\u0002\u0002\u6080\u6081\u0007U\u0002\u0002\u6081\u6082\u0007",
+ "a\u0002\u0002\u6082\u6083\u0007Z\u0002\u0002\u6083\u6084\u0007O\u0002",
+ "\u0002\u6084\u6085\u0007N\u0002\u0002\u6085\u6086\u0007P\u0002\u0002",
+ "\u6086\u6087\u0007Q\u0002\u0002\u6087\u6088\u0007F\u0002\u0002\u6088",
+ "\u6089\u0007G\u0002\u0002\u6089\u608a\u0007K\u0002\u0002\u608a\u608b",
+ "\u0007F\u0002\u0002\u608b\u0e12\u0003\u0002\u0002\u0002\u608c\u608d",
+ "\u0007U\u0002\u0002\u608d\u608e\u0007[\u0002\u0002\u608e\u608f\u0007",
+ "U\u0002\u0002\u608f\u6090\u0007a\u0002\u0002\u6090\u6091\u0007Z\u0002",
+ "\u0002\u6091\u6092\u0007O\u0002\u0002\u6092\u6093\u0007N\u0002\u0002",
+ "\u6093\u6094\u0007V\u0002\u0002\u6094\u6095\u0007a\u0002\u0002\u6095",
+ "\u6096\u00074\u0002\u0002\u6096\u6097\u0007a\u0002\u0002\u6097\u6098",
+ "\u0007U\u0002\u0002\u6098\u6099\u0007E\u0002\u0002\u6099\u0e14\u0003",
+ "\u0002\u0002\u0002\u609a\u609b\u0007U\u0002\u0002\u609b\u609c\u0007",
+ "[\u0002\u0002\u609c\u609d\u0007U\u0002\u0002\u609d\u609e\u0007a\u0002",
+ "\u0002\u609e\u609f\u0007Z\u0002\u0002\u609f\u60a0\u0007O\u0002\u0002",
+ "\u60a0\u60a1\u0007N\u0002\u0002\u60a1\u60a2\u0007V\u0002\u0002\u60a2",
+ "\u60a3\u0007T\u0002\u0002\u60a3\u60a4\u0007C\u0002\u0002\u60a4\u60a5",
+ "\u0007P\u0002\u0002\u60a5\u60a6\u0007U\u0002\u0002\u60a6\u60a7\u0007",
+ "N\u0002\u0002\u60a7\u60a8\u0007C\u0002\u0002\u60a8\u60a9\u0007V\u0002",
+ "\u0002\u60a9\u60aa\u0007G\u0002\u0002\u60aa\u0e16\u0003\u0002\u0002",
+ "\u0002\u60ab\u60ac\u0007U\u0002\u0002\u60ac\u60ad\u0007[\u0002\u0002",
+ "\u60ad\u60ae\u0007U\u0002\u0002\u60ae\u60af\u0007a\u0002\u0002\u60af",
+ "\u60b0\u0007Z\u0002\u0002\u60b0\u60b1\u0007O\u0002\u0002\u60b1\u60b2",
+ "\u0007N\u0002\u0002\u60b2\u60b3\u0007V\u0002\u0002\u60b3\u60b4\u0007",
+ "[\u0002\u0002\u60b4\u60b5\u0007R\u0002\u0002\u60b5\u60b6\u0007G\u0002",
+ "\u0002\u60b6\u60b7\u00074\u0002\u0002\u60b7\u60b8\u0007U\u0002\u0002",
+ "\u60b8\u60b9\u0007S\u0002\u0002\u60b9\u60ba\u0007N\u0002\u0002\u60ba",
+ "\u0e18\u0003\u0002\u0002\u0002\u60bb\u60bc\u0007U\u0002\u0002\u60bc",
+ "\u60bd\u0007[\u0002\u0002\u60bd\u60be\u0007U\u0002\u0002\u60be\u60bf",
+ "\u0007a\u0002\u0002\u60bf\u60c0\u0007Z\u0002\u0002\u60c0\u60c1\u0007",
+ "S\u0002\u0002\u60c1\u60c2\u0007a\u0002\u0002\u60c2\u60c3\u0007C\u0002",
+ "\u0002\u60c3\u60c4\u0007U\u0002\u0002\u60c4\u60c5\u0007S\u0002\u0002",
+ "\u60c5\u60c6\u0007N\u0002\u0002\u60c6\u60c7\u0007E\u0002\u0002\u60c7",
+ "\u60c8\u0007P\u0002\u0002\u60c8\u60c9\u0007X\u0002\u0002\u60c9\u0e1a",
+ "\u0003\u0002\u0002\u0002\u60ca\u60cb\u0007U\u0002\u0002\u60cb\u60cc",
+ "\u0007[\u0002\u0002\u60cc\u60cd\u0007U\u0002\u0002\u60cd\u60ce\u0007",
+ "a\u0002\u0002\u60ce\u60cf\u0007Z\u0002\u0002\u60cf\u60d0\u0007S\u0002",
+ "\u0002\u60d0\u60d1\u0007a\u0002\u0002\u60d1\u60d2\u0007C\u0002\u0002",
+ "\u60d2\u60d3\u0007V\u0002\u0002\u60d3\u60d4\u0007Q\u0002\u0002\u60d4",
+ "\u60d5\u0007O\u0002\u0002\u60d5\u60d6\u0007E\u0002\u0002\u60d6\u60d7",
+ "\u0007P\u0002\u0002\u60d7\u60d8\u0007X\u0002\u0002\u60d8\u60d9\u0007",
+ "E\u0002\u0002\u60d9\u60da\u0007J\u0002\u0002\u60da\u60db\u0007M\u0002",
+ "\u0002\u60db\u0e1c\u0003\u0002\u0002\u0002\u60dc\u60dd\u0007U\u0002",
+ "\u0002\u60dd\u60de\u0007[\u0002\u0002\u60de\u60df\u0007U\u0002\u0002",
+ "\u60df\u60e0\u0007a\u0002\u0002\u60e0\u60e1\u0007Z\u0002\u0002\u60e1",
+ "\u60e2\u0007S\u0002\u0002\u60e2\u60e3\u0007D\u0002\u0002\u60e3\u60e4",
+ "\u0007C\u0002\u0002\u60e4\u60e5\u0007U\u0002\u0002\u60e5\u60e6\u0007",
+ "G\u0002\u0002\u60e6\u60e7\u0007W\u0002\u0002\u60e7\u60e8\u0007T\u0002",
+ "\u0002\u60e8\u60e9\u0007K\u0002\u0002\u60e9\u0e1e\u0003\u0002\u0002",
+ "\u0002\u60ea\u60eb\u0007U\u0002\u0002\u60eb\u60ec\u0007[\u0002\u0002",
+ "\u60ec\u60ed\u0007U\u0002\u0002\u60ed\u60ee\u0007a\u0002\u0002\u60ee",
+ "\u60ef\u0007Z\u0002\u0002\u60ef\u60f0\u0007S\u0002\u0002\u60f0\u60f1",
+ "\u0007E\u0002\u0002\u60f1\u60f2\u0007C\u0002\u0002\u60f2\u60f3\u0007",
+ "U\u0002\u0002\u60f3\u60f4\u0007V\u0002\u0002\u60f4\u60f5\u0007C\u0002",
+ "\u0002\u60f5\u60f6\u0007D\u0002\u0002\u60f6\u60f7\u0007N\u0002\u0002",
+ "\u60f7\u60f8\u0007G\u0002\u0002\u60f8\u60f9\u0007G\u0002\u0002\u60f9",
+ "\u60fa\u0007T\u0002\u0002\u60fa\u60fb\u0007T\u0002\u0002\u60fb\u60fc",
+ "\u0007J\u0002\u0002\u60fc\u0e20\u0003\u0002\u0002\u0002\u60fd\u60fe",
+ "\u0007U\u0002\u0002\u60fe\u60ff\u0007[\u0002\u0002\u60ff\u6100\u0007",
+ "U\u0002\u0002\u6100\u6101\u0007a\u0002\u0002\u6101\u6102\u0007Z\u0002",
+ "\u0002\u6102\u6103\u0007S\u0002\u0002\u6103\u6104\u0007E\u0002\u0002",
+ "\u6104\u6105\u0007Q\u0002\u0002\u6105\u6106\u0007F\u0002\u0002\u6106",
+ "\u6107\u0007G\u0002\u0002\u6107\u6108\u0007R\u0002\u0002\u6108\u6109",
+ "\u00074\u0002\u0002\u6109\u610a\u0007U\u0002\u0002\u610a\u610b\u0007",
+ "V\u0002\u0002\u610b\u610c\u0007T\u0002\u0002\u610c\u0e22\u0003\u0002",
+ "\u0002\u0002\u610d\u610e\u0007U\u0002\u0002\u610e\u610f\u0007[\u0002",
+ "\u0002\u610f\u6110\u0007U\u0002\u0002\u6110\u6111\u0007a\u0002\u0002",
+ "\u6111\u6112\u0007Z\u0002\u0002\u6112\u6113\u0007S\u0002\u0002\u6113",
+ "\u6114\u0007E\u0002\u0002\u6114\u6115\u0007Q\u0002\u0002\u6115\u6116",
+ "\u0007F\u0002\u0002\u6116\u6117\u0007G\u0002\u0002\u6117\u6118\u0007",
+ "R\u0002\u0002\u6118\u6119\u0007G\u0002\u0002\u6119\u611a\u0007S\u0002",
+ "\u0002\u611a\u0e24\u0003\u0002\u0002\u0002\u611b\u611c\u0007U\u0002",
+ "\u0002\u611c\u611d\u0007[\u0002\u0002\u611d\u611e\u0007U\u0002\u0002",
+ "\u611e\u611f\u0007a\u0002\u0002\u611f\u6120\u0007Z\u0002\u0002\u6120",
+ "\u6121\u0007S\u0002\u0002\u6121\u6122\u0007E\u0002\u0002\u6122\u6123",
+ "\u0007Q\u0002\u0002\u6123\u6124\u0007P\u0002\u0002\u6124\u6125\u0007",
+ "4\u0002\u0002\u6125\u6126\u0007U\u0002\u0002\u6126\u6127\u0007G\u0002",
+ "\u0002\u6127\u6128\u0007S\u0002\u0002\u6128\u0e26\u0003\u0002\u0002",
+ "\u0002\u6129\u612a\u0007U\u0002\u0002\u612a\u612b\u0007[\u0002\u0002",
+ "\u612b\u612c\u0007U\u0002\u0002\u612c\u612d\u0007a\u0002\u0002\u612d",
+ "\u612e\u0007Z\u0002\u0002\u612e\u612f\u0007S\u0002\u0002\u612f\u6130",
+ "\u0007E\u0002\u0002\u6130\u6131\u0007Q\u0002\u0002\u6131\u6132\u0007",
+ "P\u0002\u0002\u6132\u6133\u0007E\u0002\u0002\u6133\u6134\u0007C\u0002",
+ "\u0002\u6134\u6135\u0007V\u0002\u0002\u6135\u0e28\u0003\u0002\u0002",
+ "\u0002\u6136\u6137\u0007U\u0002\u0002\u6137\u6138\u0007[\u0002\u0002",
+ "\u6138\u6139\u0007U\u0002\u0002\u6139\u613a\u0007a\u0002\u0002\u613a",
+ "\u613b\u0007Z\u0002\u0002\u613b\u613c\u0007S\u0002\u0002\u613c\u613d",
+ "\u0007F\u0002\u0002\u613d\u613e\u0007G\u0002\u0002\u613e\u613f\u0007",
+ "N\u0002\u0002\u613f\u6140\u0007G\u0002\u0002\u6140\u6141\u0007V\u0002",
+ "\u0002\u6141\u6142\u0007G\u0002\u0002\u6142\u0e2a\u0003\u0002\u0002",
+ "\u0002\u6143\u6144\u0007U\u0002\u0002\u6144\u6145\u0007[\u0002\u0002",
+ "\u6145\u6146\u0007U\u0002\u0002\u6146\u6147\u0007a\u0002\u0002\u6147",
+ "\u6148\u0007Z\u0002\u0002\u6148\u6149\u0007S\u0002\u0002\u6149\u614a",
+ "\u0007F\u0002\u0002\u614a\u614b\u0007H\u0002\u0002\u614b\u614c\u0007",
+ "N\u0002\u0002\u614c\u614d\u0007V\u0002\u0002\u614d\u614e\u0007E\u0002",
+ "\u0002\u614e\u614f\u0007Q\u0002\u0002\u614f\u6150\u0007N\u0002\u0002",
+ "\u6150\u6151\u0007C\u0002\u0002\u6151\u6152\u0007V\u0002\u0002\u6152",
+ "\u6153\u0007K\u0002\u0002\u6153\u6154\u0007Q\u0002\u0002\u6154\u6155",
+ "\u0007P\u0002\u0002\u6155\u0e2c\u0003\u0002\u0002\u0002\u6156\u6157",
+ "\u0007U\u0002\u0002\u6157\u6158\u0007[\u0002\u0002\u6158\u6159\u0007",
+ "U\u0002\u0002\u6159\u615a\u0007a\u0002\u0002\u615a\u615b\u0007Z\u0002",
+ "\u0002\u615b\u615c\u0007S\u0002\u0002\u615c\u615d\u0007F\u0002\u0002",
+ "\u615d\u615e\u0007Q\u0002\u0002\u615e\u615f\u0007E\u0002\u0002\u615f",
+ "\u0e2e\u0003\u0002\u0002\u0002\u6160\u6161\u0007U\u0002\u0002\u6161",
+ "\u6162\u0007[\u0002\u0002\u6162\u6163\u0007U\u0002\u0002\u6163\u6164",
+ "\u0007a\u0002\u0002\u6164\u6165\u0007Z\u0002\u0002\u6165\u6166\u0007",
+ "S\u0002\u0002\u6166\u6167\u0007F\u0002\u0002\u6167\u6168\u0007Q\u0002",
+ "\u0002\u6168\u6169\u0007E\u0002\u0002\u6169\u616a\u0007W\u0002\u0002",
+ "\u616a\u616b\u0007T\u0002\u0002\u616b\u616c\u0007K\u0002\u0002\u616c",
+ "\u0e30\u0003\u0002\u0002\u0002\u616d\u616e\u0007U\u0002\u0002\u616e",
+ "\u616f\u0007[\u0002\u0002\u616f\u6170\u0007U\u0002\u0002\u6170\u6171",
+ "\u0007a\u0002\u0002\u6171\u6172\u0007Z\u0002\u0002\u6172\u6173\u0007",
+ "S\u0002\u0002\u6173\u6174\u0007F\u0002\u0002\u6174\u6175\u0007W\u0002",
+ "\u0002\u6175\u6176\u0007T\u0002\u0002\u6176\u6177\u0007F\u0002\u0002",
+ "\u6177\u6178\u0007K\u0002\u0002\u6178\u6179\u0007X\u0002\u0002\u6179",
+ "\u0e32\u0003\u0002\u0002\u0002\u617a\u617b\u0007U\u0002\u0002\u617b",
+ "\u617c\u0007[\u0002\u0002\u617c\u617d\u0007U\u0002\u0002\u617d\u617e",
+ "\u0007a\u0002\u0002\u617e\u617f\u0007Z\u0002\u0002\u617f\u6180\u0007",
+ "S\u0002\u0002\u6180\u6181\u0007G\u0002\u0002\u6181\u6182\u0007F\u0002",
+ "\u0002\u6182\u6183\u00076\u0002\u0002\u6183\u6184\u0007W\u0002\u0002",
+ "\u6184\u6185\u0007T\u0002\u0002\u6185\u6186\u0007K\u0002\u0002\u6186",
+ "\u0e34\u0003\u0002\u0002\u0002\u6187\u6188\u0007U\u0002\u0002\u6188",
+ "\u6189\u0007[\u0002\u0002\u6189\u618a\u0007U\u0002\u0002\u618a\u618b",
+ "\u0007a\u0002\u0002\u618b\u618c\u0007Z\u0002\u0002\u618c\u618d\u0007",
+ "S\u0002\u0002\u618d\u618e\u0007G\u0002\u0002\u618e\u618f\u0007P\u0002",
+ "\u0002\u618f\u6190\u0007F\u0002\u0002\u6190\u6191\u0007U\u0002\u0002",
+ "\u6191\u6192\u0007Y\u0002\u0002\u6192\u6193\u0007K\u0002\u0002\u6193",
+ "\u6194\u0007V\u0002\u0002\u6194\u6195\u0007J\u0002\u0002\u6195\u0e36",
+ "\u0003\u0002\u0002\u0002\u6196\u6197\u0007U\u0002\u0002\u6197\u6198",
+ "\u0007[\u0002\u0002\u6198\u6199\u0007U\u0002\u0002\u6199\u619a\u0007",
+ "a\u0002\u0002\u619a\u619b\u0007Z\u0002\u0002\u619b\u619c\u0007S\u0002",
+ "\u0002\u619c\u619d\u0007G\u0002\u0002\u619d\u619e\u0007T\u0002\u0002",
+ "\u619e\u619f\u0007T\u0002\u0002\u619f\u61a0\u0007J\u0002\u0002\u61a0",
+ "\u0e38\u0003\u0002\u0002\u0002\u61a1\u61a2\u0007U\u0002\u0002\u61a2",
+ "\u61a3\u0007[\u0002\u0002\u61a3\u61a4\u0007U\u0002\u0002\u61a4\u61a5",
+ "\u0007a\u0002\u0002\u61a5\u61a6\u0007Z\u0002\u0002\u61a6\u61a7\u0007",
+ "S\u0002\u0002\u61a7\u61a8\u0007G\u0002\u0002\u61a8\u61a9\u0007T\u0002",
+ "\u0002\u61a9\u61aa\u0007T\u0002\u0002\u61aa\u0e3a\u0003\u0002\u0002",
+ "\u0002\u61ab\u61ac\u0007U\u0002\u0002\u61ac\u61ad\u0007[\u0002\u0002",
+ "\u61ad\u61ae\u0007U\u0002\u0002\u61ae\u61af\u0007a\u0002\u0002\u61af",
+ "\u61b0\u0007Z\u0002\u0002\u61b0\u61b1\u0007S\u0002\u0002\u61b1\u61b2",
+ "\u0007G\u0002\u0002\u61b2\u61b3\u0007U\u0002\u0002\u61b3\u61b4\u0007",
+ "J\u0002\u0002\u61b4\u61b5\u0007V\u0002\u0002\u61b5\u61b6\u0007O\u0002",
+ "\u0002\u61b6\u61b7\u0007N\u0002\u0002\u61b7\u61b8\u0007W\u0002\u0002",
+ "\u61b8\u61b9\u0007T\u0002\u0002\u61b9\u61ba\u0007K\u0002\u0002\u61ba",
+ "\u0e3c\u0003\u0002\u0002\u0002\u61bb\u61bc\u0007U\u0002\u0002\u61bc",
+ "\u61bd\u0007[\u0002\u0002\u61bd\u61be\u0007U\u0002\u0002\u61be\u61bf",
+ "\u0007a\u0002\u0002\u61bf\u61c0\u0007Z\u0002\u0002\u61c0\u61c1\u0007",
+ "S\u0002\u0002\u61c1\u61c2\u0007G\u0002\u0002\u61c2\u61c3\u0007Z\u0002",
+ "\u0002\u61c3\u61c4\u0007N\u0002\u0002\u61c4\u61c5\u0007Q\u0002\u0002",
+ "\u61c5\u61c6\u0007D\u0002\u0002\u61c6\u61c7\u0007X\u0002\u0002\u61c7",
+ "\u61c8\u0007C\u0002\u0002\u61c8\u61c9\u0007N\u0002\u0002\u61c9\u0e3e",
+ "\u0003\u0002\u0002\u0002\u61ca\u61cb\u0007U\u0002\u0002\u61cb\u61cc",
+ "\u0007[\u0002\u0002\u61cc\u61cd\u0007U\u0002\u0002\u61cd\u61ce\u0007",
+ "a\u0002\u0002\u61ce\u61cf\u0007Z\u0002\u0002\u61cf\u61d0\u0007S\u0002",
+ "\u0002\u61d0\u61d1\u0007G\u0002\u0002\u61d1\u61d2\u0007Z\u0002\u0002",
+ "\u61d2\u61d3\u0007U\u0002\u0002\u61d3\u61d4\u0007V\u0002\u0002\u61d4",
+ "\u61d5\u0007Y\u0002\u0002\u61d5\u61d6\u0007T\u0002\u0002\u61d6\u61d7",
+ "\u0007R\u0002\u0002\u61d7\u0e40\u0003\u0002\u0002\u0002\u61d8\u61d9",
+ "\u0007U\u0002\u0002\u61d9\u61da\u0007[\u0002\u0002\u61da\u61db\u0007",
+ "U\u0002\u0002\u61db\u61dc\u0007a\u0002\u0002\u61dc\u61dd\u0007Z\u0002",
+ "\u0002\u61dd\u61de\u0007S\u0002\u0002\u61de\u61df\u0007G\u0002\u0002",
+ "\u61df\u61e0\u0007Z\u0002\u0002\u61e0\u61e1\u0007V\u0002\u0002\u61e1",
+ "\u61e2\u0007T\u0002\u0002\u61e2\u61e3\u0007C\u0002\u0002\u61e3\u61e4",
+ "\u0007E\u0002\u0002\u61e4\u61e5\u0007V\u0002\u0002\u61e5\u0e42\u0003",
+ "\u0002\u0002\u0002\u61e6\u61e7\u0007U\u0002\u0002\u61e7\u61e8\u0007",
+ "[\u0002\u0002\u61e8\u61e9\u0007U\u0002\u0002\u61e9\u61ea\u0007a\u0002",
+ "\u0002\u61ea\u61eb\u0007Z\u0002\u0002\u61eb\u61ec\u0007S\u0002\u0002",
+ "\u61ec\u61ed\u0007G\u0002\u0002\u61ed\u61ee\u0007Z\u0002\u0002\u61ee",
+ "\u61ef\u0007V\u0002\u0002\u61ef\u61f0\u0007T\u0002\u0002\u61f0\u61f1",
+ "\u0007T\u0002\u0002\u61f1\u61f2\u0007G\u0002\u0002\u61f2\u61f3\u0007",
+ "H\u0002\u0002\u61f3\u0e44\u0003\u0002\u0002\u0002\u61f4\u61f5\u0007",
+ "U\u0002\u0002\u61f5\u61f6\u0007[\u0002\u0002\u61f6\u61f7\u0007U\u0002",
+ "\u0002\u61f7\u61f8\u0007a\u0002\u0002\u61f8\u61f9\u0007Z\u0002\u0002",
+ "\u61f9\u61fa\u0007S\u0002\u0002\u61fa\u61fb\u0007G\u0002\u0002\u61fb",
+ "\u61fc\u0007Z\u0002\u0002\u61fc\u61fd\u0007X\u0002\u0002\u61fd\u61fe",
+ "\u0007C\u0002\u0002\u61fe\u61ff\u0007N\u0002\u0002\u61ff\u0e46\u0003",
+ "\u0002\u0002\u0002\u6200\u6201\u0007U\u0002\u0002\u6201\u6202\u0007",
+ "[\u0002\u0002\u6202\u6203\u0007U\u0002\u0002\u6203\u6204\u0007a\u0002",
+ "\u0002\u6204\u6205\u0007Z\u0002\u0002\u6205\u6206\u0007S\u0002\u0002",
+ "\u6206\u6207\u0007H\u0002\u0002\u6207\u6208\u0007D\u0002\u0002\u6208",
+ "\u6209\u00074\u0002\u0002\u6209\u620a\u0007U\u0002\u0002\u620a\u620b",
+ "\u0007V\u0002\u0002\u620b\u620c\u0007T\u0002\u0002\u620c\u0e48\u0003",
+ "\u0002\u0002\u0002\u620d\u620e\u0007U\u0002\u0002\u620e\u620f\u0007",
+ "[\u0002\u0002\u620f\u6210\u0007U\u0002\u0002\u6210\u6211\u0007a\u0002",
+ "\u0002\u6211\u6212\u0007Z\u0002\u0002\u6212\u6213\u0007S\u0002\u0002",
+ "\u6213\u6214\u0007H\u0002\u0002\u6214\u6215\u0007P\u0002\u0002\u6215",
+ "\u6216\u0007D\u0002\u0002\u6216\u6217\u0007Q\u0002\u0002\u6217\u6218",
+ "\u0007Q\u0002\u0002\u6218\u6219\u0007N\u0002\u0002\u6219\u0e4a\u0003",
+ "\u0002\u0002\u0002\u621a\u621b\u0007U\u0002\u0002\u621b\u621c\u0007",
+ "[\u0002\u0002\u621c\u621d\u0007U\u0002\u0002\u621d\u621e\u0007a\u0002",
+ "\u0002\u621e\u621f\u0007Z\u0002\u0002\u621f\u6220\u0007S\u0002\u0002",
+ "\u6220\u6221\u0007H\u0002\u0002\u6221\u6222\u0007P\u0002\u0002\u6222",
+ "\u6223\u0007E\u0002\u0002\u6223\u6224\u0007O\u0002\u0002\u6224\u6225",
+ "\u0007R\u0002\u0002\u6225\u0e4c\u0003\u0002\u0002\u0002\u6226\u6227",
+ "\u0007U\u0002\u0002\u6227\u6228\u0007[\u0002\u0002\u6228\u6229\u0007",
+ "U\u0002\u0002\u6229\u622a\u0007a\u0002\u0002\u622a\u622b\u0007Z\u0002",
+ "\u0002\u622b\u622c\u0007S\u0002\u0002\u622c\u622d\u0007H\u0002\u0002",
+ "\u622d\u622e\u0007P\u0002\u0002\u622e\u622f\u0007F\u0002\u0002\u622f",
+ "\u6230\u0007C\u0002\u0002\u6230\u6231\u0007V\u0002\u0002\u6231\u6232",
+ "\u0007K\u0002\u0002\u6232\u6233\u0007O\u0002\u0002\u6233\u0e4e\u0003",
+ "\u0002\u0002\u0002\u6234\u6235\u0007U\u0002\u0002\u6235\u6236\u0007",
+ "[\u0002\u0002\u6236\u6237\u0007U\u0002\u0002\u6237\u6238\u0007a\u0002",
+ "\u0002\u6238\u6239\u0007Z\u0002\u0002\u6239\u623a\u0007S\u0002\u0002",
+ "\u623a\u623b\u0007H\u0002\u0002\u623b\u623c\u0007P\u0002\u0002\u623c",
+ "\u623d\u0007N\u0002\u0002\u623d\u623e\u0007P\u0002\u0002\u623e\u623f",
+ "\u0007C\u0002\u0002\u623f\u6240\u0007O\u0002\u0002\u6240\u6241\u0007",
+ "G\u0002\u0002\u6241\u0e50\u0003\u0002\u0002\u0002\u6242\u6243\u0007",
+ "U\u0002\u0002\u6243\u6244\u0007[\u0002\u0002\u6244\u6245\u0007U\u0002",
+ "\u0002\u6245\u6246\u0007a\u0002\u0002\u6246\u6247\u0007Z\u0002\u0002",
+ "\u6247\u6248\u0007S\u0002\u0002\u6248\u6249\u0007H\u0002\u0002\u6249",
+ "\u624a\u0007P\u0002\u0002\u624a\u624b\u0007P\u0002\u0002\u624b\u624c",
+ "\u0007O\u0002\u0002\u624c\u0e52\u0003\u0002\u0002\u0002\u624d\u624e",
+ "\u0007U\u0002\u0002\u624e\u624f\u0007[\u0002\u0002\u624f\u6250\u0007",
+ "U\u0002\u0002\u6250\u6251\u0007a\u0002\u0002\u6251\u6252\u0007Z\u0002",
+ "\u0002\u6252\u6253\u0007S\u0002\u0002\u6253\u6254\u0007H\u0002\u0002",
+ "\u6254\u6255\u0007P\u0002\u0002\u6255\u6256\u0007P\u0002\u0002\u6256",
+ "\u6257\u0007U\u0002\u0002\u6257\u6258\u0007W\u0002\u0002\u6258\u6259",
+ "\u0007T\u0002\u0002\u6259\u625a\u0007K\u0002\u0002\u625a\u0e54\u0003",
+ "\u0002\u0002\u0002\u625b\u625c\u0007U\u0002\u0002\u625c\u625d\u0007",
+ "[\u0002\u0002\u625d\u625e\u0007U\u0002\u0002\u625e\u625f\u0007a\u0002",
+ "\u0002\u625f\u6260\u0007Z\u0002\u0002\u6260\u6261\u0007S\u0002\u0002",
+ "\u6261\u6262\u0007H\u0002\u0002\u6262\u6263\u0007P\u0002\u0002\u6263",
+ "\u6264\u0007R\u0002\u0002\u6264\u6265\u0007T\u0002\u0002\u6265\u6266",
+ "\u0007G\u0002\u0002\u6266\u6267\u0007F\u0002\u0002\u6267\u6268\u0007",
+ "V\u0002\u0002\u6268\u6269\u0007T\u0002\u0002\u6269\u626a\u0007W\u0002",
+ "\u0002\u626a\u626b\u0007V\u0002\u0002\u626b\u626c\u0007J\u0002\u0002",
+ "\u626c\u0e56\u0003\u0002\u0002\u0002\u626d\u626e\u0007U\u0002\u0002",
+ "\u626e\u626f\u0007[\u0002\u0002\u626f\u6270\u0007U\u0002\u0002\u6270",
+ "\u6271\u0007a\u0002\u0002\u6271\u6272\u0007Z\u0002\u0002\u6272\u6273",
+ "\u0007S\u0002\u0002\u6273\u6274\u0007H\u0002\u0002\u6274\u6275\u0007",
+ "P\u0002\u0002\u6275\u6276\u0007S\u0002\u0002\u6276\u6277\u0007P\u0002",
+ "\u0002\u6277\u6278\u0007O\u0002\u0002\u6278\u0e58\u0003\u0002\u0002",
+ "\u0002\u6279\u627a\u0007U\u0002\u0002\u627a\u627b\u0007[\u0002\u0002",
+ "\u627b\u627c\u0007U\u0002\u0002\u627c\u627d\u0007a\u0002\u0002\u627d",
+ "\u627e\u0007Z\u0002\u0002\u627e\u627f\u0007S\u0002\u0002\u627f\u6280",
+ "\u0007H\u0002\u0002\u6280\u6281\u0007P\u0002\u0002\u6281\u6282\u0007",
+ "T\u0002\u0002\u6282\u6283\u0007Q\u0002\u0002\u6283\u6284\u0007Q\u0002",
+ "\u0002\u6284\u6285\u0007V\u0002\u0002\u6285\u0e5a\u0003\u0002\u0002",
+ "\u0002\u6286\u6287\u0007U\u0002\u0002\u6287\u6288\u0007[\u0002\u0002",
+ "\u6288\u6289\u0007U\u0002\u0002\u6289\u628a\u0007a\u0002\u0002\u628a",
+ "\u628b\u0007Z\u0002\u0002\u628b\u628c\u0007S\u0002\u0002\u628c\u628d",
+ "\u0007H\u0002\u0002\u628d\u628e\u0007Q\u0002\u0002\u628e\u628f\u0007",
+ "T\u0002\u0002\u628f\u6290\u0007O\u0002\u0002\u6290\u6291\u0007C\u0002",
+ "\u0002\u6291\u6292\u0007V\u0002\u0002\u6292\u6293\u0007P\u0002\u0002",
+ "\u6293\u6294\u0007W\u0002\u0002\u6294\u6295\u0007O\u0002\u0002\u6295",
+ "\u0e5c\u0003\u0002\u0002\u0002\u6296\u6297\u0007U\u0002\u0002\u6297",
+ "\u6298\u0007[\u0002\u0002\u6298\u6299\u0007U\u0002\u0002\u6299\u629a",
+ "\u0007a\u0002\u0002\u629a\u629b\u0007Z\u0002\u0002\u629b\u629c\u0007",
+ "S\u0002\u0002\u629c\u629d\u0007H\u0002\u0002\u629d\u629e\u0007V\u0002",
+ "\u0002\u629e\u629f\u0007E\u0002\u0002\u629f\u62a0\u0007Q\u0002\u0002",
+ "\u62a0\u62a1\u0007P\u0002\u0002\u62a1\u62a2\u0007V\u0002\u0002\u62a2",
+ "\u62a3\u0007C\u0002\u0002\u62a3\u62a4\u0007K\u0002\u0002\u62a4\u62a5",
+ "\u0007P\u0002\u0002\u62a5\u0e5e\u0003\u0002\u0002\u0002\u62a6\u62a7",
+ "\u0007U\u0002\u0002\u62a7\u62a8\u0007[\u0002\u0002\u62a8\u62a9\u0007",
+ "U\u0002\u0002\u62a9\u62aa\u0007a\u0002\u0002\u62aa\u62ab\u0007Z\u0002",
+ "\u0002\u62ab\u62ac\u0007S\u0002\u0002\u62ac\u62ad\u0007H\u0002\u0002",
+ "\u62ad\u62ae\u0007W\u0002\u0002\u62ae\u62af\u0007P\u0002\u0002\u62af",
+ "\u62b0\u0007E\u0002\u0002\u62b0\u62b1\u0007T\u0002\u0002\u62b1\u0e60",
+ "\u0003\u0002\u0002\u0002\u62b2\u62b3\u0007U\u0002\u0002\u62b3\u62b4",
+ "\u0007[\u0002\u0002\u62b4\u62b5\u0007U\u0002\u0002\u62b5\u62b6\u0007",
+ "a\u0002\u0002\u62b6\u62b7\u0007Z\u0002\u0002\u62b7\u62b8\u0007S\u0002",
+ "\u0002\u62b8\u62b9\u0007I\u0002\u0002\u62b9\u62ba\u0007G\u0002\u0002",
+ "\u62ba\u62bb\u0007V\u0002\u0002\u62bb\u62bc\u0007E\u0002\u0002\u62bc",
+ "\u62bd\u0007Q\u0002\u0002\u62bd\u62be\u0007P\u0002\u0002\u62be\u62bf",
+ "\u0007V\u0002\u0002\u62bf\u62c0\u0007G\u0002\u0002\u62c0\u62c1\u0007",
+ "P\u0002\u0002\u62c1\u62c2\u0007V\u0002\u0002\u62c2\u0e62\u0003\u0002",
+ "\u0002\u0002\u62c3\u62c4\u0007U\u0002\u0002\u62c4\u62c5\u0007[\u0002",
+ "\u0002\u62c5\u62c6\u0007U\u0002\u0002\u62c6\u62c7\u0007a\u0002\u0002",
+ "\u62c7\u62c8\u0007Z\u0002\u0002\u62c8\u62c9\u0007S\u0002\u0002\u62c9",
+ "\u62ca\u0007K\u0002\u0002\u62ca\u62cb\u0007P\u0002\u0002\u62cb\u62cc",
+ "\u0007F\u0002\u0002\u62cc\u62cd\u0007Z\u0002\u0002\u62cd\u62ce\u0007",
+ "Q\u0002\u0002\u62ce\u62cf\u0007H\u0002\u0002\u62cf\u0e64\u0003\u0002",
+ "\u0002\u0002\u62d0\u62d1\u0007U\u0002\u0002\u62d1\u62d2\u0007[\u0002",
+ "\u0002\u62d2\u62d3\u0007U\u0002\u0002\u62d3\u62d4\u0007a\u0002\u0002",
+ "\u62d4\u62d5\u0007Z\u0002\u0002\u62d5\u62d6\u0007S\u0002\u0002\u62d6",
+ "\u62d7\u0007K\u0002\u0002\u62d7\u62d8\u0007P\u0002\u0002\u62d8\u62d9",
+ "\u0007U\u0002\u0002\u62d9\u62da\u0007G\u0002\u0002\u62da\u62db\u0007",
+ "T\u0002\u0002\u62db\u62dc\u0007V\u0002\u0002\u62dc\u0e66\u0003\u0002",
+ "\u0002\u0002\u62dd\u62de\u0007U\u0002\u0002\u62de\u62df\u0007[\u0002",
+ "\u0002\u62df\u62e0\u0007U\u0002\u0002\u62e0\u62e1\u0007a\u0002\u0002",
+ "\u62e1\u62e2\u0007Z\u0002\u0002\u62e2\u62e3\u0007S\u0002\u0002\u62e3",
+ "\u62e4\u0007K\u0002\u0002\u62e4\u62e5\u0007P\u0002\u0002\u62e5\u62e6",
+ "\u0007U\u0002\u0002\u62e6\u62e7\u0007R\u0002\u0002\u62e7\u62e8\u0007",
+ "H\u0002\u0002\u62e8\u62e9\u0007Z\u0002\u0002\u62e9\u0e68\u0003\u0002",
+ "\u0002\u0002\u62ea\u62eb\u0007U\u0002\u0002\u62eb\u62ec\u0007[\u0002",
+ "\u0002\u62ec\u62ed\u0007U\u0002\u0002\u62ed\u62ee\u0007a\u0002\u0002",
+ "\u62ee\u62ef\u0007Z\u0002\u0002\u62ef\u62f0\u0007S\u0002\u0002\u62f0",
+ "\u62f1\u0007K\u0002\u0002\u62f1\u62f2\u0007T\u0002\u0002\u62f2\u62f3",
+ "\u0007K\u0002\u0002\u62f3\u62f4\u00074\u0002\u0002\u62f4\u62f5\u0007",
+ "W\u0002\u0002\u62f5\u62f6\u0007T\u0002\u0002\u62f6\u62f7\u0007K\u0002",
+ "\u0002\u62f7\u0e6a\u0003\u0002\u0002\u0002\u62f8\u62f9\u0007U\u0002",
+ "\u0002\u62f9\u62fa\u0007[\u0002\u0002\u62fa\u62fb\u0007U\u0002\u0002",
+ "\u62fb\u62fc\u0007a\u0002\u0002\u62fc\u62fd\u0007Z\u0002\u0002\u62fd",
+ "\u62fe\u0007S\u0002\u0002\u62fe\u62ff\u0007N\u0002\u0002\u62ff\u6300",
+ "\u0007C\u0002\u0002\u6300\u6301\u0007P\u0002\u0002\u6301\u6302\u0007",
+ "I\u0002\u0002\u6302\u0e6c\u0003\u0002\u0002\u0002\u6303\u6304\u0007",
+ "U\u0002\u0002\u6304\u6305\u0007[\u0002\u0002\u6305\u6306\u0007U\u0002",
+ "\u0002\u6306\u6307\u0007a\u0002\u0002\u6307\u6308\u0007Z\u0002\u0002",
+ "\u6308\u6309\u0007S\u0002\u0002\u6309\u630a\u0007N\u0002\u0002\u630a",
+ "\u630b\u0007N\u0002\u0002\u630b\u630c\u0007P\u0002\u0002\u630c\u630d",
+ "\u0007O\u0002\u0002\u630d\u630e\u0007H\u0002\u0002\u630e\u630f\u0007",
+ "T\u0002\u0002\u630f\u6310\u0007O\u0002\u0002\u6310\u6311\u0007S\u0002",
+ "\u0002\u6311\u6312\u0007P\u0002\u0002\u6312\u6313\u0007O\u0002\u0002",
+ "\u6313\u0e6e\u0003\u0002\u0002\u0002\u6314\u6315\u0007U\u0002\u0002",
+ "\u6315\u6316\u0007[\u0002\u0002\u6316\u6317\u0007U\u0002\u0002\u6317",
+ "\u6318\u0007a\u0002\u0002\u6318\u6319\u0007Z\u0002\u0002\u6319\u631a",
+ "\u0007S\u0002\u0002\u631a\u631b\u0007O\u0002\u0002\u631b\u631c\u0007",
+ "M\u0002\u0002\u631c\u631d\u0007P\u0002\u0002\u631d\u631e\u0007Q\u0002",
+ "\u0002\u631e\u631f\u0007F\u0002\u0002\u631f\u6320\u0007G\u0002\u0002",
+ "\u6320\u6321\u0007T\u0002\u0002\u6321\u6322\u0007G\u0002\u0002\u6322",
+ "\u6323\u0007H\u0002\u0002\u6323\u0e70\u0003\u0002\u0002\u0002\u6324",
+ "\u6325\u0007U\u0002\u0002\u6325\u6326\u0007[\u0002\u0002\u6326\u6327",
+ "\u0007U\u0002\u0002\u6327\u6328\u0007a\u0002\u0002\u6328\u6329\u0007",
+ "Z\u0002\u0002\u6329\u632a\u0007S\u0002\u0002\u632a\u632b\u0007P\u0002",
+ "\u0002\u632b\u632c\u0007K\u0002\u0002\u632c\u632d\u0007N\u0002\u0002",
+ "\u632d\u632e\u0007N\u0002\u0002\u632e\u632f\u0007G\u0002\u0002\u632f",
+ "\u6330\u0007F\u0002\u0002\u6330\u0e72\u0003\u0002\u0002\u0002\u6331",
+ "\u6332\u0007U\u0002\u0002\u6332\u6333\u0007[\u0002\u0002\u6333\u6334",
+ "\u0007U\u0002\u0002\u6334\u6335\u0007a\u0002\u0002\u6335\u6336\u0007",
+ "Z\u0002\u0002\u6336\u6337\u0007S\u0002\u0002\u6337\u6338\u0007P\u0002",
+ "\u0002\u6338\u6339\u0007Q\u0002\u0002\u6339\u633a\u0007F\u0002\u0002",
+ "\u633a\u633b\u0007G\u0002\u0002\u633b\u633c\u0007P\u0002\u0002\u633c",
+ "\u633d\u0007C\u0002\u0002\u633d\u633e\u0007O\u0002\u0002\u633e\u633f",
+ "\u0007G\u0002\u0002\u633f\u0e74\u0003\u0002\u0002\u0002\u6340\u6341",
+ "\u0007U\u0002\u0002\u6341\u6342\u0007[\u0002\u0002\u6342\u6343\u0007",
+ "U\u0002\u0002\u6343\u6344\u0007a\u0002\u0002\u6344\u6345\u0007Z\u0002",
+ "\u0002\u6345\u6346\u0007S\u0002\u0002\u6346\u6347\u0007P\u0002\u0002",
+ "\u6347\u6348\u0007Q\u0002\u0002\u6348\u6349\u0007T\u0002\u0002\u6349",
+ "\u634a\u0007O\u0002\u0002\u634a\u634b\u0007U\u0002\u0002\u634b\u634c",
+ "\u0007R\u0002\u0002\u634c\u634d\u0007C\u0002\u0002\u634d\u634e\u0007",
+ "E\u0002\u0002\u634e\u634f\u0007G\u0002\u0002\u634f\u0e76\u0003\u0002",
+ "\u0002\u0002\u6350\u6351\u0007U\u0002\u0002\u6351\u6352\u0007[\u0002",
+ "\u0002\u6352\u6353\u0007U\u0002\u0002\u6353\u6354\u0007a\u0002\u0002",
+ "\u6354\u6355\u0007Z\u0002\u0002\u6355\u6356\u0007S\u0002\u0002\u6356",
+ "\u6357\u0007P\u0002\u0002\u6357\u6358\u0007Q\u0002\u0002\u6358\u6359",
+ "\u0007T\u0002\u0002\u6359\u635a\u0007O\u0002\u0002\u635a\u635b\u0007",
+ "W\u0002\u0002\u635b\u635c\u0007E\u0002\u0002\u635c\u635d\u0007Q\u0002",
+ "\u0002\u635d\u635e\u0007F\u0002\u0002\u635e\u635f\u0007G\u0002\u0002",
+ "\u635f\u0e78\u0003\u0002\u0002\u0002\u6360\u6361\u0007U\u0002\u0002",
+ "\u6361\u6362\u0007[\u0002\u0002\u6362\u6363\u0007U\u0002\u0002\u6363",
+ "\u6364\u0007a\u0002\u0002\u6364\u6365\u0007Z\u0002\u0002\u6365\u6366",
+ "\u0007S\u0002\u0002\u6366\u6367\u0007a\u0002\u0002\u6367\u6368\u0007",
+ "P\u0002\u0002\u6368\u6369\u0007T\u0002\u0002\u6369\u636a\u0007P\u0002",
+ "\u0002\u636a\u636b\u0007I\u0002\u0002\u636b\u0e7a\u0003\u0002\u0002",
+ "\u0002\u636c\u636d\u0007U\u0002\u0002\u636d\u636e\u0007[\u0002\u0002",
+ "\u636e\u636f\u0007U\u0002\u0002\u636f\u6370\u0007a\u0002\u0002\u6370",
+ "\u6371\u0007Z\u0002\u0002\u6371\u6372\u0007S\u0002\u0002\u6372\u6373",
+ "\u0007P\u0002\u0002\u6373\u6374\u0007U\u0002\u0002\u6374\u6375\u0007",
+ "R\u0002\u0002\u6375\u6376\u00076\u0002\u0002\u6376\u6377\u0007R\u0002",
+ "\u0002\u6377\u6378\u0007H\u0002\u0002\u6378\u6379\u0007Z\u0002\u0002",
+ "\u6379\u0e7c\u0003\u0002\u0002\u0002\u637a\u637b\u0007U\u0002\u0002",
+ "\u637b\u637c\u0007[\u0002\u0002\u637c\u637d\u0007U\u0002\u0002\u637d",
+ "\u637e\u0007a\u0002\u0002\u637e\u637f\u0007Z\u0002\u0002\u637f\u6380",
+ "\u0007S\u0002\u0002\u6380\u6381\u0007P\u0002\u0002\u6381\u6382\u0007",
+ "U\u0002\u0002\u6382\u6383\u0007R\u0002\u0002\u6383\u6384\u0007H\u0002",
+ "\u0002\u6384\u6385\u0007T\u0002\u0002\u6385\u6386\u0007O\u0002\u0002",
+ "\u6386\u6387\u0007S\u0002\u0002\u6387\u6388\u0007P\u0002\u0002\u6388",
+ "\u6389\u0007O\u0002\u0002\u6389\u0e7e\u0003\u0002\u0002\u0002\u638a",
+ "\u638b\u0007U\u0002\u0002\u638b\u638c\u0007[\u0002\u0002\u638c\u638d",
+ "\u0007U\u0002\u0002\u638d\u638e\u0007a\u0002\u0002\u638e\u638f\u0007",
+ "Z\u0002\u0002\u638f\u6390\u0007S\u0002\u0002\u6390\u6391\u0007R\u0002",
+ "\u0002\u6391\u6392\u0007H\u0002\u0002\u6392\u6393\u0007Z\u0002\u0002",
+ "\u6393\u6394\u0007H\u0002\u0002\u6394\u6395\u0007T\u0002\u0002\u6395",
+ "\u6396\u0007O\u0002\u0002\u6396\u6397\u0007S\u0002\u0002\u6397\u6398",
+ "\u0007P\u0002\u0002\u6398\u6399\u0007O\u0002\u0002\u6399\u0e80\u0003",
+ "\u0002\u0002\u0002\u639a\u639b\u0007U\u0002\u0002\u639b\u639c\u0007",
+ "[\u0002\u0002\u639c\u639d\u0007U\u0002\u0002\u639d\u639e\u0007a\u0002",
+ "\u0002\u639e\u639f\u0007Z\u0002\u0002\u639f\u63a0\u0007S\u0002\u0002",
+ "\u63a0\u63a1\u0007a\u0002\u0002\u63a1\u63a2\u0007R\u0002\u0002\u63a2",
+ "\u63a3\u0007M\u0002\u0002\u63a3\u63a4\u0007U\u0002\u0002\u63a4\u63a5",
+ "\u0007S\u0002\u0002\u63a5\u63a6\u0007N\u0002\u0002\u63a6\u63a7\u0007",
+ "4\u0002\u0002\u63a7\u63a8\u0007Z\u0002\u0002\u63a8\u63a9\u0007O\u0002",
+ "\u0002\u63a9\u63aa\u0007N\u0002\u0002\u63aa\u0e82\u0003\u0002\u0002",
+ "\u0002\u63ab\u63ac\u0007U\u0002\u0002\u63ac\u63ad\u0007[\u0002\u0002",
+ "\u63ad\u63ae\u0007U\u0002\u0002\u63ae\u63af\u0007a\u0002\u0002\u63af",
+ "\u63b0\u0007Z\u0002\u0002\u63b0\u63b1\u0007S\u0002\u0002\u63b1\u63b2",
+ "\u0007R\u0002\u0002\u63b2\u63b3\u0007Q\u0002\u0002\u63b3\u63b4\u0007",
+ "N\u0002\u0002\u63b4\u63b5\u0007[\u0002\u0002\u63b5\u63b6\u0007C\u0002",
+ "\u0002\u63b6\u63b7\u0007D\u0002\u0002\u63b7\u63b8\u0007U\u0002\u0002",
+ "\u63b8\u0e84\u0003\u0002\u0002\u0002\u63b9\u63ba\u0007U\u0002\u0002",
+ "\u63ba\u63bb\u0007[\u0002\u0002\u63bb\u63bc\u0007U\u0002\u0002\u63bc",
+ "\u63bd\u0007a\u0002\u0002\u63bd\u63be\u0007Z\u0002\u0002\u63be\u63bf",
+ "\u0007S\u0002\u0002\u63bf\u63c0\u0007R\u0002\u0002\u63c0\u63c1\u0007",
+ "Q\u0002\u0002\u63c1\u63c2\u0007N\u0002\u0002\u63c2\u63c3\u0007[\u0002",
+ "\u0002\u63c3\u63c4\u0007C\u0002\u0002\u63c4\u63c5\u0007F\u0002\u0002",
+ "\u63c5\u63c6\u0007F\u0002\u0002\u63c6\u0e86\u0003\u0002\u0002\u0002",
+ "\u63c7\u63c8\u0007U\u0002\u0002\u63c8\u63c9\u0007[\u0002\u0002\u63c9",
+ "\u63ca\u0007U\u0002\u0002\u63ca\u63cb\u0007a\u0002\u0002\u63cb\u63cc",
+ "\u0007Z\u0002\u0002\u63cc\u63cd\u0007S\u0002\u0002\u63cd\u63ce\u0007",
+ "R\u0002\u0002\u63ce\u63cf\u0007Q\u0002\u0002\u63cf\u63d0\u0007N\u0002",
+ "\u0002\u63d0\u63d1\u0007[\u0002\u0002\u63d1\u63d2\u0007E\u0002\u0002",
+ "\u63d2\u63d3\u0007G\u0002\u0002\u63d3\u63d4\u0007N\u0002\u0002\u63d4",
+ "\u0e88\u0003\u0002\u0002\u0002\u63d5\u63d6\u0007U\u0002\u0002\u63d6",
+ "\u63d7\u0007[\u0002\u0002\u63d7\u63d8\u0007U\u0002\u0002\u63d8\u63d9",
+ "\u0007a\u0002\u0002\u63d9\u63da\u0007Z\u0002\u0002\u63da\u63db\u0007",
+ "S\u0002\u0002\u63db\u63dc\u0007R\u0002\u0002\u63dc\u63dd\u0007Q\u0002",
+ "\u0002\u63dd\u63de\u0007N\u0002\u0002\u63de\u63df\u0007[\u0002\u0002",
+ "\u63df\u63e0\u0007E\u0002\u0002\u63e0\u63e1\u0007U\u0002\u0002\u63e1",
+ "\u63e2\u0007V\u0002\u0002\u63e2\u63e3\u0007D\u0002\u0002\u63e3\u63e4",
+ "\u0007N\u0002\u0002\u63e4\u0e8a\u0003\u0002\u0002\u0002\u63e5\u63e6",
+ "\u0007U\u0002\u0002\u63e6\u63e7\u0007[\u0002\u0002\u63e7\u63e8\u0007",
+ "U\u0002\u0002\u63e8\u63e9\u0007a\u0002\u0002\u63e9\u63ea\u0007Z\u0002",
+ "\u0002\u63ea\u63eb\u0007S\u0002\u0002\u63eb\u63ec\u0007R\u0002\u0002",
+ "\u63ec\u63ed\u0007Q\u0002\u0002\u63ed\u63ee\u0007N\u0002\u0002\u63ee",
+ "\u63ef\u0007[\u0002\u0002\u63ef\u63f0\u0007E\u0002\u0002\u63f0\u63f1",
+ "\u0007U\u0002\u0002\u63f1\u63f2\u0007V\u0002\u0002\u63f2\u0e8c\u0003",
+ "\u0002\u0002\u0002\u63f3\u63f4\u0007U\u0002\u0002\u63f4\u63f5\u0007",
+ "[\u0002\u0002\u63f5\u63f6\u0007U\u0002\u0002\u63f6\u63f7\u0007a\u0002",
+ "\u0002\u63f7\u63f8\u0007Z\u0002\u0002\u63f8\u63f9\u0007S\u0002\u0002",
+ "\u63f9\u63fa\u0007R\u0002\u0002\u63fa\u63fb\u0007Q\u0002\u0002\u63fb",
+ "\u63fc\u0007N\u0002\u0002\u63fc\u63fd\u0007[\u0002\u0002\u63fd\u63fe",
+ "\u0007F\u0002\u0002\u63fe\u63ff\u0007K\u0002\u0002\u63ff\u6400\u0007",
+ "X\u0002\u0002\u6400\u0e8e\u0003\u0002\u0002\u0002\u6401\u6402\u0007",
+ "U\u0002\u0002\u6402\u6403\u0007[\u0002\u0002\u6403\u6404\u0007U\u0002",
+ "\u0002\u6404\u6405\u0007a\u0002\u0002\u6405\u6406\u0007Z\u0002\u0002",
+ "\u6406\u6407\u0007S\u0002\u0002\u6407\u6408\u0007R\u0002\u0002\u6408",
+ "\u6409\u0007Q\u0002\u0002\u6409\u640a\u0007N\u0002\u0002\u640a\u640b",
+ "\u0007[\u0002\u0002\u640b\u640c\u0007H\u0002\u0002\u640c\u640d\u0007",
+ "N\u0002\u0002\u640d\u640e\u0007T\u0002\u0002\u640e\u0e90\u0003\u0002",
+ "\u0002\u0002\u640f\u6410\u0007U\u0002\u0002\u6410\u6411\u0007[\u0002",
+ "\u0002\u6411\u6412\u0007U\u0002\u0002\u6412\u6413\u0007a\u0002\u0002",
+ "\u6413\u6414\u0007Z\u0002\u0002\u6414\u6415\u0007S\u0002\u0002\u6415",
+ "\u6416\u0007R\u0002\u0002\u6416\u6417\u0007Q\u0002\u0002\u6417\u6418",
+ "\u0007N\u0002\u0002\u6418\u6419\u0007[\u0002\u0002\u6419\u641a\u0007",
+ "O\u0002\u0002\u641a\u641b\u0007Q\u0002\u0002\u641b\u641c\u0007F\u0002",
+ "\u0002\u641c\u0e92\u0003\u0002\u0002\u0002\u641d\u641e\u0007U\u0002",
+ "\u0002\u641e\u641f\u0007[\u0002\u0002\u641f\u6420\u0007U\u0002\u0002",
+ "\u6420\u6421\u0007a\u0002\u0002\u6421\u6422\u0007Z\u0002\u0002\u6422",
+ "\u6423\u0007S\u0002\u0002\u6423\u6424\u0007R\u0002\u0002\u6424\u6425",
+ "\u0007Q\u0002\u0002\u6425\u6426\u0007N\u0002\u0002\u6426\u6427\u0007",
+ "[\u0002\u0002\u6427\u6428\u0007O\u0002\u0002\u6428\u6429\u0007W\u0002",
+ "\u0002\u6429\u642a\u0007N\u0002\u0002\u642a\u0e94\u0003\u0002\u0002",
+ "\u0002\u642b\u642c\u0007U\u0002\u0002\u642c\u642d\u0007[\u0002\u0002",
+ "\u642d\u642e\u0007U\u0002\u0002\u642e\u642f\u0007a\u0002\u0002\u642f",
+ "\u6430\u0007Z\u0002\u0002\u6430\u6431\u0007S\u0002\u0002\u6431\u6432",
+ "\u0007R\u0002\u0002\u6432\u6433\u0007Q\u0002\u0002\u6433\u6434\u0007",
+ "N\u0002\u0002\u6434\u6435\u0007[\u0002\u0002\u6435\u6436\u0007T\u0002",
+ "\u0002\u6436\u6437\u0007P\u0002\u0002\u6437\u6438\u0007F\u0002\u0002",
+ "\u6438\u0e96\u0003\u0002\u0002\u0002\u6439\u643a\u0007U\u0002\u0002",
+ "\u643a\u643b\u0007[\u0002\u0002\u643b\u643c\u0007U\u0002\u0002\u643c",
+ "\u643d\u0007a\u0002\u0002\u643d\u643e\u0007Z\u0002\u0002\u643e\u643f",
+ "\u0007S\u0002\u0002\u643f\u6440\u0007R\u0002\u0002\u6440\u6441\u0007",
+ "Q\u0002\u0002\u6441\u6442\u0007N\u0002\u0002\u6442\u6443\u0007[\u0002",
+ "\u0002\u6443\u6444\u0007U\u0002\u0002\u6444\u6445\u0007S\u0002\u0002",
+ "\u6445\u6446\u0007T\u0002\u0002\u6446\u6447\u0007V\u0002\u0002\u6447",
+ "\u0e98\u0003\u0002\u0002\u0002\u6448\u6449\u0007U\u0002\u0002\u6449",
+ "\u644a\u0007[\u0002\u0002\u644a\u644b\u0007U\u0002\u0002\u644b\u644c",
+ "\u0007a\u0002\u0002\u644c\u644d\u0007Z\u0002\u0002\u644d\u644e\u0007",
+ "S\u0002\u0002\u644e\u644f\u0007R\u0002\u0002\u644f\u6450\u0007Q\u0002",
+ "\u0002\u6450\u6451\u0007N\u0002\u0002\u6451\u6452\u0007[\u0002\u0002",
+ "\u6452\u6453\u0007U\u0002\u0002\u6453\u6454\u0007W\u0002\u0002\u6454",
+ "\u6455\u0007D\u0002\u0002\u6455\u0e9a\u0003\u0002\u0002\u0002\u6456",
+ "\u6457\u0007U\u0002\u0002\u6457\u6458\u0007[\u0002\u0002\u6458\u6459",
+ "\u0007U\u0002\u0002\u6459\u645a\u0007a\u0002\u0002\u645a\u645b\u0007",
+ "Z\u0002\u0002\u645b\u645c\u0007S\u0002\u0002\u645c\u645d\u0007R\u0002",
+ "\u0002\u645d\u645e\u0007Q\u0002\u0002\u645e\u645f\u0007N\u0002\u0002",
+ "\u645f\u6460\u0007[\u0002\u0002\u6460\u6461\u0007W\u0002\u0002\u6461",
+ "\u6462\u0007O\u0002\u0002\u6462\u6463\u0007W\u0002\u0002\u6463\u6464",
+ "\u0007U\u0002\u0002\u6464\u0e9c\u0003\u0002\u0002\u0002\u6465\u6466",
+ "\u0007U\u0002\u0002\u6466\u6467\u0007[\u0002\u0002\u6467\u6468\u0007",
+ "U\u0002\u0002\u6468\u6469\u0007a\u0002\u0002\u6469\u646a\u0007Z\u0002",
+ "\u0002\u646a\u646b\u0007S\u0002\u0002\u646b\u646c\u0007R\u0002\u0002",
+ "\u646c\u646d\u0007Q\u0002\u0002\u646d\u646e\u0007N\u0002\u0002\u646e",
+ "\u646f\u0007[\u0002\u0002\u646f\u6470\u0007W\u0002\u0002\u6470\u6471",
+ "\u0007R\u0002\u0002\u6471\u6472\u0007N\u0002\u0002\u6472\u6473\u0007",
+ "U\u0002\u0002\u6473\u0e9e\u0003\u0002\u0002\u0002\u6474\u6475\u0007",
+ "U\u0002\u0002\u6475\u6476\u0007[\u0002\u0002\u6476\u6477\u0007U\u0002",
+ "\u0002\u6477\u6478\u0007a\u0002\u0002\u6478\u6479\u0007Z\u0002\u0002",
+ "\u6479\u647a\u0007S\u0002\u0002\u647a\u647b\u0007R\u0002\u0002\u647b",
+ "\u647c\u0007Q\u0002\u0002\u647c\u647d\u0007N\u0002\u0002\u647d\u647e",
+ "\u0007[\u0002\u0002\u647e\u647f\u0007X\u0002\u0002\u647f\u6480\u0007",
+ "G\u0002\u0002\u6480\u6481\u0007S\u0002\u0002\u6481\u0ea0\u0003\u0002",
+ "\u0002\u0002\u6482\u6483\u0007U\u0002\u0002\u6483\u6484\u0007[\u0002",
+ "\u0002\u6484\u6485\u0007U\u0002\u0002\u6485\u6486\u0007a\u0002\u0002",
+ "\u6486\u6487\u0007Z\u0002\u0002\u6487\u6488\u0007S\u0002\u0002\u6488",
+ "\u6489\u0007R\u0002\u0002\u6489\u648a\u0007Q\u0002\u0002\u648a\u648b",
+ "\u0007N\u0002\u0002\u648b\u648c\u0007[\u0002\u0002\u648c\u648d\u0007",
+ "X\u0002\u0002\u648d\u648e\u0007I\u0002\u0002\u648e\u648f\u0007G\u0002",
+ "\u0002\u648f\u0ea2\u0003\u0002\u0002\u0002\u6490\u6491\u0007U\u0002",
+ "\u0002\u6491\u6492\u0007[\u0002\u0002\u6492\u6493\u0007U\u0002\u0002",
+ "\u6493\u6494\u0007a\u0002\u0002\u6494\u6495\u0007Z\u0002\u0002\u6495",
+ "\u6496\u0007S\u0002\u0002\u6496\u6497\u0007R\u0002\u0002\u6497\u6498",
+ "\u0007Q\u0002\u0002\u6498\u6499\u0007N\u0002\u0002\u6499\u649a\u0007",
+ "[\u0002\u0002\u649a\u649b\u0007X\u0002\u0002\u649b\u649c\u0007I\u0002",
+ "\u0002\u649c\u649d\u0007V\u0002\u0002\u649d\u0ea4\u0003\u0002\u0002",
+ "\u0002\u649e\u649f\u0007U\u0002\u0002\u649f\u64a0\u0007[\u0002\u0002",
+ "\u64a0\u64a1\u0007U\u0002\u0002\u64a1\u64a2\u0007a\u0002\u0002\u64a2",
+ "\u64a3\u0007Z\u0002\u0002\u64a3\u64a4\u0007S\u0002\u0002\u64a4\u64a5",
+ "\u0007R\u0002\u0002\u64a5\u64a6\u0007Q\u0002\u0002\u64a6\u64a7\u0007",
+ "N\u0002\u0002\u64a7\u64a8\u0007[\u0002\u0002\u64a8\u64a9\u0007X\u0002",
+ "\u0002\u64a9\u64aa\u0007N\u0002\u0002\u64aa\u64ab\u0007G\u0002\u0002",
+ "\u64ab\u0ea6\u0003\u0002\u0002\u0002\u64ac\u64ad\u0007U\u0002\u0002",
+ "\u64ad\u64ae\u0007[\u0002\u0002\u64ae\u64af\u0007U\u0002\u0002\u64af",
+ "\u64b0\u0007a\u0002\u0002\u64b0\u64b1\u0007Z\u0002\u0002\u64b1\u64b2",
+ "\u0007S\u0002\u0002\u64b2\u64b3\u0007R\u0002\u0002\u64b3\u64b4\u0007",
+ "Q\u0002\u0002\u64b4\u64b5\u0007N\u0002\u0002\u64b5\u64b6\u0007[\u0002",
+ "\u0002\u64b6\u64b7\u0007X\u0002\u0002\u64b7\u64b8\u0007N\u0002\u0002",
+ "\u64b8\u64b9\u0007V\u0002\u0002\u64b9\u0ea8\u0003\u0002\u0002\u0002",
+ "\u64ba\u64bb\u0007U\u0002\u0002\u64bb\u64bc\u0007[\u0002\u0002\u64bc",
+ "\u64bd\u0007U\u0002\u0002\u64bd\u64be\u0007a\u0002\u0002\u64be\u64bf",
+ "\u0007Z\u0002\u0002\u64bf\u64c0\u0007S\u0002\u0002\u64c0\u64c1\u0007",
+ "R\u0002\u0002\u64c1\u64c2\u0007Q\u0002\u0002\u64c2\u64c3\u0007N\u0002",
+ "\u0002\u64c3\u64c4\u0007[\u0002\u0002\u64c4\u64c5\u0007X\u0002\u0002",
+ "\u64c5\u64c6\u0007P\u0002\u0002\u64c6\u64c7\u0007G\u0002\u0002\u64c7",
+ "\u0eaa\u0003\u0002\u0002\u0002\u64c8\u64c9\u0007U\u0002\u0002\u64c9",
+ "\u64ca\u0007[\u0002\u0002\u64ca\u64cb\u0007U\u0002\u0002\u64cb\u64cc",
+ "\u0007a\u0002\u0002\u64cc\u64cd\u0007Z\u0002\u0002\u64cd\u64ce\u0007",
+ "S\u0002\u0002\u64ce\u64cf\u0007T\u0002\u0002\u64cf\u64d0\u0007G\u0002",
+ "\u0002\u64d0\u64d1\u0007H\u0002\u0002\u64d1\u64d2\u00074\u0002\u0002",
+ "\u64d2\u64d3\u0007X\u0002\u0002\u64d3\u64d4\u0007C\u0002\u0002\u64d4",
+ "\u64d5\u0007N\u0002\u0002\u64d5\u0eac\u0003\u0002\u0002\u0002\u64d6",
+ "\u64d7\u0007U\u0002\u0002\u64d7\u64d8\u0007[\u0002\u0002\u64d8\u64d9",
+ "\u0007U\u0002\u0002\u64d9\u64da\u0007a\u0002\u0002\u64da\u64db\u0007",
+ "Z\u0002\u0002\u64db\u64dc\u0007S\u0002\u0002\u64dc\u64dd\u0007T\u0002",
+ "\u0002\u64dd\u64de\u0007G\u0002\u0002\u64de\u64df\u0007P\u0002\u0002",
+ "\u64df\u64e0\u0007C\u0002\u0002\u64e0\u64e1\u0007O\u0002\u0002\u64e1",
+ "\u64e2\u0007G\u0002\u0002\u64e2\u0eae\u0003\u0002\u0002\u0002\u64e3",
+ "\u64e4\u0007U\u0002\u0002\u64e4\u64e5\u0007[\u0002\u0002\u64e5\u64e6",
+ "\u0007U\u0002\u0002\u64e6\u64e7\u0007a\u0002\u0002\u64e7\u64e8\u0007",
+ "Z\u0002\u0002\u64e8\u64e9\u0007S\u0002\u0002\u64e9\u64ea\u0007T\u0002",
+ "\u0002\u64ea\u64eb\u0007G\u0002\u0002\u64eb\u64ec\u0007R\u0002\u0002",
+ "\u64ec\u64ed\u0007N\u0002\u0002\u64ed\u64ee\u0007C\u0002\u0002\u64ee",
+ "\u64ef\u0007E\u0002\u0002\u64ef\u64f0\u0007G\u0002\u0002\u64f0\u0eb0",
+ "\u0003\u0002\u0002\u0002\u64f1\u64f2\u0007U\u0002\u0002\u64f2\u64f3",
+ "\u0007[\u0002\u0002\u64f3\u64f4\u0007U\u0002\u0002\u64f4\u64f5\u0007",
+ "a\u0002\u0002\u64f5\u64f6\u0007Z\u0002\u0002\u64f6\u64f7\u0007S\u0002",
+ "\u0002\u64f7\u64f8\u0007T\u0002\u0002\u64f8\u64f9\u0007G\u0002\u0002",
+ "\u64f9\u64fa\u0007U\u0002\u0002\u64fa\u64fb\u0007X\u0002\u0002\u64fb",
+ "\u64fc\u0007W\u0002\u0002\u64fc\u64fd\u0007T\u0002\u0002\u64fd\u64fe",
+ "\u0007K\u0002\u0002\u64fe\u0eb2\u0003\u0002\u0002\u0002\u64ff\u6500",
+ "\u0007U\u0002\u0002\u6500\u6501\u0007[\u0002\u0002\u6501\u6502\u0007",
+ "U\u0002\u0002\u6502\u6503\u0007a\u0002\u0002\u6503\u6504\u0007Z\u0002",
+ "\u0002\u6504\u6505\u0007S\u0002\u0002\u6505\u6506\u0007T\u0002\u0002",
+ "\u6506\u6507\u0007P\u0002\u0002\u6507\u6508\u0007F\u0002\u0002\u6508",
+ "\u6509\u0007J\u0002\u0002\u6509\u650a\u0007C\u0002\u0002\u650a\u650b",
+ "\u0007N\u0002\u0002\u650b\u650c\u0007H\u0002\u0002\u650c\u650d\u0007",
+ "4\u0002\u0002\u650d\u650e\u0007G\u0002\u0002\u650e\u650f\u0007X\u0002",
+ "\u0002\u650f\u6510\u0007P\u0002\u0002\u6510\u0eb4\u0003\u0002\u0002",
+ "\u0002\u6511\u6512\u0007U\u0002\u0002\u6512\u6513\u0007[\u0002\u0002",
+ "\u6513\u6514\u0007U\u0002\u0002\u6514\u6515\u0007a\u0002\u0002\u6515",
+ "\u6516\u0007Z\u0002\u0002\u6516\u6517\u0007S\u0002\u0002\u6517\u6518",
+ "\u0007T\u0002\u0002\u6518\u6519\u0007U\u0002\u0002\u6519\u651a\u0007",
+ "N\u0002\u0002\u651a\u651b\u0007X\u0002\u0002\u651b\u651c\u0007S\u0002",
+ "\u0002\u651c\u651d\u0007P\u0002\u0002\u651d\u651e\u0007O\u0002\u0002",
+ "\u651e\u0eb6\u0003\u0002\u0002\u0002\u651f\u6520\u0007U\u0002\u0002",
+ "\u6520\u6521\u0007[\u0002\u0002\u6521\u6522\u0007U\u0002\u0002\u6522",
+ "\u6523\u0007a\u0002\u0002\u6523\u6524\u0007Z\u0002\u0002\u6524\u6525",
+ "\u0007S\u0002\u0002\u6525\u6526\u0007T\u0002\u0002\u6526\u6527\u0007",
+ "[\u0002\u0002\u6527\u6528\u0007G\u0002\u0002\u6528\u6529\u0007P\u0002",
+ "\u0002\u6529\u652a\u0007X\u0002\u0002\u652a\u652b\u0007R\u0002\u0002",
+ "\u652b\u652c\u0007I\u0002\u0002\u652c\u652d\u0007G\u0002\u0002\u652d",
+ "\u652e\u0007V\u0002\u0002\u652e\u0eb8\u0003\u0002\u0002\u0002\u652f",
+ "\u6530\u0007U\u0002\u0002\u6530\u6531\u0007[\u0002\u0002\u6531\u6532",
+ "\u0007U\u0002\u0002\u6532\u6533\u0007a\u0002\u0002\u6533\u6534\u0007",
+ "Z\u0002\u0002\u6534\u6535\u0007S\u0002\u0002\u6535\u6536\u0007T\u0002",
+ "\u0002\u6536\u6537\u0007[\u0002\u0002\u6537\u6538\u0007X\u0002\u0002",
+ "\u6538\u6539\u0007C\u0002\u0002\u6539\u653a\u0007T\u0002\u0002\u653a",
+ "\u653b\u0007I\u0002\u0002\u653b\u653c\u0007G\u0002\u0002\u653c\u653d",
+ "\u0007V\u0002\u0002\u653d\u0eba\u0003\u0002\u0002\u0002\u653e\u653f",
+ "\u0007U\u0002\u0002\u653f\u6540\u0007[\u0002\u0002\u6540\u6541\u0007",
+ "U\u0002\u0002\u6541\u6542\u0007a\u0002\u0002\u6542\u6543\u0007Z\u0002",
+ "\u0002\u6543\u6544\u0007S\u0002\u0002\u6544\u6545\u0007T\u0002\u0002",
+ "\u6545\u6546\u0007[\u0002\u0002\u6546\u6547\u0007Y\u0002\u0002\u6547",
+ "\u6548\u0007T\u0002\u0002\u6548\u6549\u0007R\u0002\u0002\u6549\u0ebc",
+ "\u0003\u0002\u0002\u0002\u654a\u654b\u0007U\u0002\u0002\u654b\u654c",
+ "\u0007[\u0002\u0002\u654c\u654d\u0007U\u0002\u0002\u654d\u654e\u0007",
+ "a\u0002\u0002\u654e\u654f\u0007Z\u0002\u0002\u654f\u6550\u0007S\u0002",
+ "\u0002\u6550\u6551\u0007U\u0002\u0002\u6551\u6552\u0007G\u0002\u0002",
+ "\u6552\u6553\u0007S\u0002\u0002\u6553\u6554\u00074\u0002\u0002\u6554",
+ "\u6555\u0007E\u0002\u0002\u6555\u6556\u0007Q\u0002\u0002\u6556\u6557",
+ "\u0007P\u0002\u0002\u6557\u6558\u00076\u0002\u0002\u6558\u6559\u0007",
+ "Z\u0002\u0002\u6559\u655a\u0007E\u0002\u0002\u655a\u0ebe\u0003\u0002",
+ "\u0002\u0002\u655b\u655c\u0007U\u0002\u0002\u655c\u655d\u0007[\u0002",
+ "\u0002\u655d\u655e\u0007U\u0002\u0002\u655e\u655f\u0007a\u0002\u0002",
+ "\u655f\u6560\u0007Z\u0002\u0002\u6560\u6561\u0007S\u0002\u0002\u6561",
+ "\u6562\u0007U\u0002\u0002\u6562\u6563\u0007G\u0002\u0002\u6563\u6564",
+ "\u0007S\u0002\u0002\u6564\u6565\u00074\u0002\u0002\u6565\u6566\u0007",
+ "E\u0002\u0002\u6566\u6567\u0007Q\u0002\u0002\u6567\u6568\u0007P\u0002",
+ "\u0002\u6568\u0ec0\u0003\u0002\u0002\u0002\u6569\u656a\u0007U\u0002",
+ "\u0002\u656a\u656b\u0007[\u0002\u0002\u656b\u656c\u0007U\u0002\u0002",
+ "\u656c\u656d\u0007a\u0002\u0002\u656d\u656e\u0007Z\u0002\u0002\u656e",
+ "\u656f\u0007S\u0002\u0002\u656f\u6570\u0007U\u0002\u0002\u6570\u6571",
+ "\u0007G\u0002\u0002\u6571\u6572\u0007S\u0002\u0002\u6572\u6573\u0007",
+ "F\u0002\u0002\u6573\u6574\u0007G\u0002\u0002\u6574\u6575\u0007G\u0002",
+ "\u0002\u6575\u6576\u0007R\u0002\u0002\u6576\u6577\u0007G\u0002\u0002",
+ "\u6577\u6578\u0007S\u0002\u0002\u6578\u0ec2\u0003\u0002\u0002\u0002",
+ "\u6579\u657a\u0007U\u0002\u0002\u657a\u657b\u0007[\u0002\u0002\u657b",
+ "\u657c\u0007U\u0002\u0002\u657c\u657d\u0007a\u0002\u0002\u657d\u657e",
+ "\u0007Z\u0002\u0002\u657e\u657f\u0007S\u0002\u0002\u657f\u6580\u0007",
+ "U\u0002\u0002\u6580\u6581\u0007G\u0002\u0002\u6581\u6582\u0007S\u0002",
+ "\u0002\u6582\u6583\u0007K\u0002\u0002\u6583\u6584\u0007P\u0002\u0002",
+ "\u6584\u6585\u0007U\u0002\u0002\u6585\u6586\u0007D\u0002\u0002\u6586",
+ "\u0ec4\u0003\u0002\u0002\u0002\u6587\u6588\u0007U\u0002\u0002\u6588",
+ "\u6589\u0007[\u0002\u0002\u6589\u658a\u0007U\u0002\u0002\u658a\u658b",
+ "\u0007a\u0002\u0002\u658b\u658c\u0007Z\u0002\u0002\u658c\u658d\u0007",
+ "S\u0002\u0002\u658d\u658e\u0007U\u0002\u0002\u658e\u658f\u0007G\u0002",
+ "\u0002\u658f\u6590\u0007S\u0002\u0002\u6590\u6591\u0007T\u0002\u0002",
+ "\u6591\u6592\u0007O\u0002\u0002\u6592\u0ec6\u0003\u0002\u0002\u0002",
+ "\u6593\u6594\u0007U\u0002\u0002\u6594\u6595\u0007[\u0002\u0002\u6595",
+ "\u6596\u0007U\u0002\u0002\u6596\u6597\u0007a\u0002\u0002\u6597\u6598",
+ "\u0007Z\u0002\u0002\u6598\u6599\u0007S\u0002\u0002\u6599\u659a\u0007",
+ "U\u0002\u0002\u659a\u659b\u0007G\u0002\u0002\u659b\u659c\u0007S\u0002",
+ "\u0002\u659c\u659d\u0007T\u0002\u0002\u659d\u659e\u0007X\u0002\u0002",
+ "\u659e\u659f\u0007U\u0002\u0002\u659f\u0ec8\u0003\u0002\u0002\u0002",
+ "\u65a0\u65a1\u0007U\u0002\u0002\u65a1\u65a2\u0007[\u0002\u0002\u65a2",
+ "\u65a3\u0007U\u0002\u0002\u65a3\u65a4\u0007a\u0002\u0002\u65a4\u65a5",
+ "\u0007Z\u0002\u0002\u65a5\u65a6\u0007S\u0002\u0002\u65a6\u65a7\u0007",
+ "U\u0002\u0002\u65a7\u65a8\u0007G\u0002\u0002\u65a8\u65a9\u0007S\u0002",
+ "\u0002\u65a9\u65aa\u0007U\u0002\u0002\u65aa\u65ab\u0007W\u0002\u0002",
+ "\u65ab\u65ac\u0007D\u0002\u0002\u65ac\u0eca\u0003\u0002\u0002\u0002",
+ "\u65ad\u65ae\u0007U\u0002\u0002\u65ae\u65af\u0007[\u0002\u0002\u65af",
+ "\u65b0\u0007U\u0002\u0002\u65b0\u65b1\u0007a\u0002\u0002\u65b1\u65b2",
+ "\u0007Z\u0002\u0002\u65b2\u65b3\u0007S\u0002\u0002\u65b3\u65b4\u0007",
+ "U\u0002\u0002\u65b4\u65b5\u0007G\u0002\u0002\u65b5\u65b6\u0007S\u0002",
+ "\u0002\u65b6\u65b7\u0007V\u0002\u0002\u65b7\u65b8\u0007[\u0002\u0002",
+ "\u65b8\u65b9\u0007R\u0002\u0002\u65b9\u65ba\u0007O\u0002\u0002\u65ba",
+ "\u65bb\u0007C\u0002\u0002\u65bb\u65bc\u0007V\u0002\u0002\u65bc\u65bd",
+ "\u0007E\u0002\u0002\u65bd\u65be\u0007J\u0002\u0002\u65be\u0ecc\u0003",
+ "\u0002\u0002\u0002\u65bf\u65c0\u0007U\u0002\u0002\u65c0\u65c1\u0007",
+ "[\u0002\u0002\u65c1\u65c2\u0007U\u0002\u0002\u65c2\u65c3\u0007a\u0002",
+ "\u0002\u65c3\u65c4\u0007Z\u0002\u0002\u65c4\u65c5\u0007S\u0002\u0002",
+ "\u65c5\u65c6\u0007U\u0002\u0002\u65c6\u65c7\u0007V\u0002\u0002\u65c7",
+ "\u65c8\u0007C\u0002\u0002\u65c8\u65c9\u0007T\u0002\u0002\u65c9\u65ca",
+ "\u0007V\u0002\u0002\u65ca\u65cb\u0007U\u0002\u0002\u65cb\u65cc\u0007",
+ "Y\u0002\u0002\u65cc\u65cd\u0007K\u0002\u0002\u65cd\u65ce\u0007V\u0002",
+ "\u0002\u65ce\u65cf\u0007J\u0002\u0002\u65cf\u0ece\u0003\u0002\u0002",
+ "\u0002\u65d0\u65d1\u0007U\u0002\u0002\u65d1\u65d2\u0007[\u0002\u0002",
+ "\u65d2\u65d3\u0007U\u0002\u0002\u65d3\u65d4\u0007a\u0002\u0002\u65d4",
+ "\u65d5\u0007Z\u0002\u0002\u65d5\u65d6\u0007S\u0002\u0002\u65d6\u65d7",
+ "\u0007U\u0002\u0002\u65d7\u65d8\u0007V\u0002\u0002\u65d8\u65d9\u0007",
+ "C\u0002\u0002\u65d9\u65da\u0007V\u0002\u0002\u65da\u65db\u0007D\u0002",
+ "\u0002\u65db\u65dc\u0007W\u0002\u0002\u65dc\u65dd\u0007T\u0002\u0002",
+ "\u65dd\u65de\u0007K\u0002\u0002\u65de\u0ed0\u0003\u0002\u0002\u0002",
+ "\u65df\u65e0\u0007U\u0002\u0002\u65e0\u65e1\u0007[\u0002\u0002\u65e1",
+ "\u65e2\u0007U\u0002\u0002\u65e2\u65e3\u0007a\u0002\u0002\u65e3\u65e4",
+ "\u0007Z\u0002\u0002\u65e4\u65e5\u0007S\u0002\u0002\u65e5\u65e6\u0007",
+ "U\u0002\u0002\u65e6\u65e7\u0007V\u0002\u0002\u65e7\u65e8\u0007T\u0002",
+ "\u0002\u65e8\u65e9\u00074\u0002\u0002\u65e9\u65ea\u0007E\u0002\u0002",
+ "\u65ea\u65eb\u0007Q\u0002\u0002\u65eb\u65ec\u0007F\u0002\u0002\u65ec",
+ "\u65ed\u0007G\u0002\u0002\u65ed\u65ee\u0007R\u0002\u0002\u65ee\u0ed2",
+ "\u0003\u0002\u0002\u0002\u65ef\u65f0\u0007U\u0002\u0002\u65f0\u65f1",
+ "\u0007[\u0002\u0002\u65f1\u65f2\u0007U\u0002\u0002\u65f2\u65f3\u0007",
+ "a\u0002\u0002\u65f3\u65f4\u0007Z\u0002\u0002\u65f4\u65f5\u0007S\u0002",
+ "\u0002\u65f5\u65f6\u0007U\u0002\u0002\u65f6\u65f7\u0007V\u0002\u0002",
+ "\u65f7\u65f8\u0007T\u0002\u0002\u65f8\u65f9\u0007L\u0002\u0002\u65f9",
+ "\u65fa\u0007Q\u0002\u0002\u65fa\u65fb\u0007K\u0002\u0002\u65fb\u65fc",
+ "\u0007P\u0002\u0002\u65fc\u0ed4\u0003\u0002\u0002\u0002\u65fd\u65fe",
+ "\u0007U\u0002\u0002\u65fe\u65ff\u0007[\u0002\u0002\u65ff\u6600\u0007",
+ "U\u0002\u0002\u6600\u6601\u0007a\u0002\u0002\u6601\u6602\u0007Z\u0002",
+ "\u0002\u6602\u6603\u0007S\u0002\u0002\u6603\u6604\u0007U\u0002\u0002",
+ "\u6604\u6605\u0007W\u0002\u0002\u6605\u6606\u0007D\u0002\u0002\u6606",
+ "\u6607\u0007U\u0002\u0002\u6607\u6608\u0007V\u0002\u0002\u6608\u6609",
+ "\u0007T\u0002\u0002\u6609\u660a\u0007C\u0002\u0002\u660a\u660b\u0007",
+ "H\u0002\u0002\u660b\u660c\u0007V\u0002\u0002\u660c\u0ed6\u0003\u0002",
+ "\u0002\u0002\u660d\u660e\u0007U\u0002\u0002\u660e\u660f\u0007[\u0002",
+ "\u0002\u660f\u6610\u0007U\u0002\u0002\u6610\u6611\u0007a\u0002\u0002",
+ "\u6611\u6612\u0007Z\u0002\u0002\u6612\u6613\u0007S\u0002\u0002\u6613",
+ "\u6614\u0007U\u0002\u0002\u6614\u6615\u0007W\u0002\u0002\u6615\u6616",
+ "\u0007D\u0002\u0002\u6616\u6617\u0007U\u0002\u0002\u6617\u6618\u0007",
+ "V\u0002\u0002\u6618\u6619\u0007T\u0002\u0002\u6619\u661a\u0007D\u0002",
+ "\u0002\u661a\u661b\u0007G\u0002\u0002\u661b\u661c\u0007H\u0002\u0002",
+ "\u661c\u0ed8\u0003\u0002\u0002\u0002\u661d\u661e\u0007U\u0002\u0002",
+ "\u661e\u661f\u0007[\u0002\u0002\u661f\u6620\u0007U\u0002\u0002\u6620",
+ "\u6621\u0007a\u0002\u0002\u6621\u6622\u0007Z\u0002\u0002\u6622\u6623",
+ "\u0007S\u0002\u0002\u6623\u6624\u0007V\u0002\u0002\u6624\u6625\u0007",
+ "Q\u0002\u0002\u6625\u6626\u0007M\u0002\u0002\u6626\u6627\u0007G\u0002",
+ "\u0002\u6627\u6628\u0007P\u0002\u0002\u6628\u6629\u0007K\u0002\u0002",
+ "\u6629\u662a\u0007\\\u0002\u0002\u662a\u662b\u0007G\u0002\u0002\u662b",
+ "\u0eda\u0003\u0002\u0002\u0002\u662c\u662d\u0007U\u0002\u0002\u662d",
+ "\u662e\u0007[\u0002\u0002\u662e\u662f\u0007U\u0002\u0002\u662f\u6630",
+ "\u0007a\u0002\u0002\u6630\u6631\u0007Z\u0002\u0002\u6631\u6632\u0007",
+ "S\u0002\u0002\u6632\u6633\u0007V\u0002\u0002\u6633\u6634\u0007T\u0002",
+ "\u0002\u6634\u6635\u0007G\u0002\u0002\u6635\u6636\u0007C\u0002\u0002",
+ "\u6636\u6637\u0007V\u0002\u0002\u6637\u6638\u0007C\u0002\u0002\u6638",
+ "\u6639\u0007U\u0002\u0002\u6639\u0edc\u0003\u0002\u0002\u0002\u663a",
+ "\u663b\u0007U\u0002\u0002\u663b\u663c\u0007[\u0002\u0002\u663c\u663d",
+ "\u0007U\u0002\u0002\u663d\u663e\u0007a\u0002\u0002\u663e\u663f\u0007",
+ "Z\u0002\u0002\u663f\u6640\u0007S\u0002\u0002\u6640\u6641\u0007a\u0002",
+ "\u0002\u6641\u6642\u0007W\u0002\u0002\u6642\u6643\u0007R\u0002\u0002",
+ "\u6643\u6644\u0007M\u0002\u0002\u6644\u6645\u0007Z\u0002\u0002\u6645",
+ "\u6646\u0007O\u0002\u0002\u6646\u6647\u0007N\u0002\u0002\u6647\u6648",
+ "\u00074\u0002\u0002\u6648\u6649\u0007U\u0002\u0002\u6649\u664a\u0007",
+ "S\u0002\u0002\u664a\u664b\u0007N\u0002\u0002\u664b\u0ede\u0003\u0002",
+ "\u0002\u0002\u664c\u664d\u0007U\u0002\u0002\u664d\u664e\u0007[\u0002",
+ "\u0002\u664e\u664f\u0007U\u0002\u0002\u664f\u6650\u0007a\u0002\u0002",
+ "\u6650\u6651\u0007Z\u0002\u0002\u6651\u6652\u0007S\u0002\u0002\u6652",
+ "\u6653\u0007Z\u0002\u0002\u6653\u6654\u0007H\u0002\u0002\u6654\u6655",
+ "\u0007Q\u0002\u0002\u6655\u6656\u0007T\u0002\u0002\u6656\u6657\u0007",
+ "O\u0002\u0002\u6657\u0ee0\u0003\u0002\u0002\u0002\u6658\u6659\u0007",
+ "U\u0002\u0002\u6659\u665a\u0007[\u0002\u0002\u665a\u665b\u0007U\u0002",
+ "\u0002\u665b\u665c\u0007a\u0002\u0002\u665c\u665d\u0007Z\u0002\u0002",
+ "\u665d\u665e\u0007U\u0002\u0002\u665e\u665f\u0007K\u0002\u0002\u665f",
+ "\u6660\u0007F\u0002\u0002\u6660\u6661\u0007a\u0002\u0002\u6661\u6662",
+ "\u0007V\u0002\u0002\u6662\u6663\u0007Q\u0002\u0002\u6663\u6664\u0007",
+ "a\u0002\u0002\u6664\u6665\u0007T\u0002\u0002\u6665\u6666\u0007C\u0002",
+ "\u0002\u6666\u6667\u0007Y\u0002\u0002\u6667\u0ee2\u0003\u0002\u0002",
+ "\u0002\u6668\u6669\u0007U\u0002\u0002\u6669\u666a\u0007[\u0002\u0002",
+ "\u666a\u666b\u0007U\u0002\u0002\u666b\u666c\u0007a\u0002\u0002\u666c",
+ "\u666d\u0007\\\u0002\u0002\u666d\u666e\u0007O\u0002\u0002\u666e\u666f",
+ "\u0007C\u0002\u0002\u666f\u6670\u0007R\u0002\u0002\u6670\u6671\u0007",
+ "a\u0002\u0002\u6671\u6672\u0007H\u0002\u0002\u6672\u6673\u0007K\u0002",
+ "\u0002\u6673\u6674\u0007N\u0002\u0002\u6674\u6675\u0007V\u0002\u0002",
+ "\u6675\u6676\u0007G\u0002\u0002\u6676\u6677\u0007T\u0002\u0002\u6677",
+ "\u0ee4\u0003\u0002\u0002\u0002\u6678\u6679\u0007U\u0002\u0002\u6679",
+ "\u667a\u0007[\u0002\u0002\u667a\u667b\u0007U\u0002\u0002\u667b\u667c",
+ "\u0007a\u0002\u0002\u667c\u667d\u0007\\\u0002\u0002\u667d\u667e\u0007",
+ "O\u0002\u0002\u667e\u667f\u0007C\u0002\u0002\u667f\u6680\u0007R\u0002",
+ "\u0002\u6680\u6681\u0007a\u0002\u0002\u6681\u6682\u0007T\u0002\u0002",
+ "\u6682\u6683\u0007G\u0002\u0002\u6683\u6684\u0007H\u0002\u0002\u6684",
+ "\u6685\u0007T\u0002\u0002\u6685\u6686\u0007G\u0002\u0002\u6686\u6687",
+ "\u0007U\u0002\u0002\u6687\u6688\u0007J\u0002\u0002\u6688\u0ee6\u0003",
+ "\u0002\u0002\u0002\u6689\u668a\u0007V\u0002\u0002\u668a\u668b\u0007",
+ "C\u0002\u0002\u668b\u668c\u0007D\u0002\u0002\u668c\u668d\u0007N\u0002",
+ "\u0002\u668d\u668e\u0007G\u0002\u0002\u668e\u668f\u0007a\u0002\u0002",
+ "\u668f\u6690\u0007N\u0002\u0002\u6690\u6691\u0007Q\u0002\u0002\u6691",
+ "\u6692\u0007Q\u0002\u0002\u6692\u6693\u0007M\u0002\u0002\u6693\u6694",
+ "\u0007W\u0002\u0002\u6694\u6695\u0007R\u0002\u0002\u6695\u6696\u0007",
+ "a\u0002\u0002\u6696\u6697\u0007D\u0002\u0002\u6697\u6698\u0007[\u0002",
+ "\u0002\u6698\u6699\u0007a\u0002\u0002\u6699\u669a\u0007P\u0002\u0002",
+ "\u669a\u669b\u0007N\u0002\u0002\u669b\u0ee8\u0003\u0002\u0002\u0002",
+ "\u669c\u669d\u0007V\u0002\u0002\u669d\u669e\u0007C\u0002\u0002\u669e",
+ "\u669f\u0007D\u0002\u0002\u669f\u66a0\u0007N\u0002\u0002\u66a0\u66a1",
+ "\u0007G\u0002\u0002\u66a1\u66a2\u0007U\u0002\u0002\u66a2\u66a3\u0007",
+ "R\u0002\u0002\u66a3\u66a4\u0007C\u0002\u0002\u66a4\u66a5\u0007E\u0002",
+ "\u0002\u66a5\u66a6\u0007G\u0002\u0002\u66a6\u66a7\u0007a\u0002\u0002",
+ "\u66a7\u66a8\u0007P\u0002\u0002\u66a8\u66a9\u0007Q\u0002\u0002\u66a9",
+ "\u0eea\u0003\u0002\u0002\u0002\u66aa\u66ab\u0007V\u0002\u0002\u66ab",
+ "\u66ac\u0007C\u0002\u0002\u66ac\u66ad\u0007D\u0002\u0002\u66ad\u66ae",
+ "\u0007N\u0002\u0002\u66ae\u66af\u0007G\u0002\u0002\u66af\u66b0\u0007",
+ "U\u0002\u0002\u66b0\u66b1\u0007R\u0002\u0002\u66b1\u66b2\u0007C\u0002",
+ "\u0002\u66b2\u66b3\u0007E\u0002\u0002\u66b3\u66b4\u0007G\u0002\u0002",
+ "\u66b4\u0eec\u0003\u0002\u0002\u0002\u66b5\u66b6\u0007V\u0002\u0002",
+ "\u66b6\u66b7\u0007C\u0002\u0002\u66b7\u66b8\u0007D\u0002\u0002\u66b8",
+ "\u66b9\u0007N\u0002\u0002\u66b9\u66ba\u0007G\u0002\u0002\u66ba\u66bb",
+ "\u0007U\u0002\u0002\u66bb\u0eee\u0003\u0002\u0002\u0002\u66bc\u66bd",
+ "\u0007V\u0002\u0002\u66bd\u66be\u0007C\u0002\u0002\u66be\u66bf\u0007",
+ "D\u0002\u0002\u66bf\u66c0\u0007N\u0002\u0002\u66c0\u66c1\u0007G\u0002",
+ "\u0002\u66c1\u66c2\u0007a\u0002\u0002\u66c2\u66c3\u0007U\u0002\u0002",
+ "\u66c3\u66c4\u0007V\u0002\u0002\u66c4\u66c5\u0007C\u0002\u0002\u66c5",
+ "\u66c6\u0007V\u0002\u0002\u66c6\u66c7\u0007U\u0002\u0002\u66c7\u0ef0",
+ "\u0003\u0002\u0002\u0002\u66c8\u66c9\u0007V\u0002\u0002\u66c9\u66ca",
+ "\u0007C\u0002\u0002\u66ca\u66cb\u0007D\u0002\u0002\u66cb\u66cc\u0007",
+ "N\u0002\u0002\u66cc\u66cd\u0007G\u0002\u0002\u66cd\u0ef2\u0003\u0002",
+ "\u0002\u0002\u66ce\u66cf\u0007V\u0002\u0002\u66cf\u66d0\u0007C\u0002",
+ "\u0002\u66d0\u66d1\u0007D\u0002\u0002\u66d1\u66d2\u0007P\u0002\u0002",
+ "\u66d2\u66d3\u0007Q\u0002\u0002\u66d3\u0ef4\u0003\u0002\u0002\u0002",
+ "\u66d4\u66d5\u0007V\u0002\u0002\u66d5\u66d6\u0007C\u0002\u0002\u66d6",
+ "\u66d7\u0007I\u0002\u0002\u66d7\u0ef6\u0003\u0002\u0002\u0002\u66d8",
+ "\u66d9\u0007V\u0002\u0002\u66d9\u66da\u0007C\u0002\u0002\u66da\u66db",
+ "\u0007P\u0002\u0002\u66db\u66dc\u0007J\u0002\u0002\u66dc\u0ef8\u0003",
+ "\u0002\u0002\u0002\u66dd\u66de\u0007V\u0002\u0002\u66de\u66df\u0007",
+ "C\u0002\u0002\u66df\u66e0\u0007P\u0002\u0002\u66e0\u0efa\u0003\u0002",
+ "\u0002\u0002\u66e1\u66e2\u0007V\u0002\u0002\u66e2\u66e3\u0007D\u0002",
+ "\u0002\u66e3\u66e4\u0007N\u0002\u0002\u66e4\u66e5\u0007&\u0002\u0002",
+ "\u66e5\u66e6\u0007Q\u0002\u0002\u66e6\u66e7\u0007T\u0002\u0002\u66e7",
+ "\u66e8\u0007&\u0002\u0002\u66e8\u66e9\u0007K\u0002\u0002\u66e9\u66ea",
+ "\u0007F\u0002\u0002\u66ea\u66eb\u0007Z\u0002\u0002\u66eb\u66ec\u0007",
+ "&\u0002\u0002\u66ec\u66ed\u0007R\u0002\u0002\u66ed\u66ee\u0007C\u0002",
+ "\u0002\u66ee\u66ef\u0007T\u0002\u0002\u66ef\u66f0\u0007V\u0002\u0002",
+ "\u66f0\u66f1\u0007&\u0002\u0002\u66f1\u66f2\u0007P\u0002\u0002\u66f2",
+ "\u66f3\u0007W\u0002\u0002\u66f3\u66f4\u0007O\u0002\u0002\u66f4\u0efc",
+ "\u0003\u0002\u0002\u0002\u66f5\u66f6\u0007V\u0002\u0002\u66f6\u66f7",
+ "\u0007G\u0002\u0002\u66f7\u66f8\u0007O\u0002\u0002\u66f8\u66f9\u0007",
+ "R\u0002\u0002\u66f9\u66fa\u0007H\u0002\u0002\u66fa\u66fb\u0007K\u0002",
+ "\u0002\u66fb\u66fc\u0007N\u0002\u0002\u66fc\u66fd\u0007G\u0002\u0002",
+ "\u66fd\u0efe\u0003\u0002\u0002\u0002\u66fe\u66ff\u0007V\u0002\u0002",
+ "\u66ff\u6700\u0007G\u0002\u0002\u6700\u6701\u0007O\u0002\u0002\u6701",
+ "\u6702\u0007R\u0002\u0002\u6702\u6703\u0007N\u0002\u0002\u6703\u6704",
+ "\u0007C\u0002\u0002\u6704\u6705\u0007V\u0002\u0002\u6705\u6706\u0007",
+ "G\u0002\u0002\u6706\u0f00\u0003\u0002\u0002\u0002\u6707\u6708\u0007",
+ "V\u0002\u0002\u6708\u6709\u0007G\u0002\u0002\u6709\u670a\u0007O\u0002",
+ "\u0002\u670a\u670b\u0007R\u0002\u0002\u670b\u670c\u0007Q\u0002\u0002",
+ "\u670c\u670d\u0007T\u0002\u0002\u670d\u670e\u0007C\u0002\u0002\u670e",
+ "\u670f\u0007T\u0002\u0002\u670f\u6710\u0007[\u0002\u0002\u6710\u0f02",
+ "\u0003\u0002\u0002\u0002\u6711\u6712\u0007V\u0002\u0002\u6712\u6713",
+ "\u0007G\u0002\u0002\u6713\u6714\u0007O\u0002\u0002\u6714\u6715\u0007",
+ "R\u0002\u0002\u6715\u6716\u0007a\u0002\u0002\u6716\u6717\u0007V\u0002",
+ "\u0002\u6717\u6718\u0007C\u0002\u0002\u6718\u6719\u0007D\u0002\u0002",
+ "\u6719\u671a\u0007N\u0002\u0002\u671a\u671b\u0007G\u0002\u0002\u671b",
+ "\u0f04\u0003\u0002\u0002\u0002\u671c\u671d\u0007V\u0002\u0002\u671d",
+ "\u671e\u0007G\u0002\u0002\u671e\u671f\u0007U\u0002\u0002\u671f\u6720",
+ "\u0007V\u0002\u0002\u6720\u0f06\u0003\u0002\u0002\u0002\u6721\u6722",
+ "\u0007V\u0002\u0002\u6722\u6723\u0007G\u0002\u0002\u6723\u6724\u0007",
+ "Z\u0002\u0002\u6724\u6725\u0007V\u0002\u0002\u6725\u0f08\u0003\u0002",
+ "\u0002\u0002\u6726\u6727\u0007V\u0002\u0002\u6727\u6728\u0007J\u0002",
+ "\u0002\u6728\u6729\u0007C\u0002\u0002\u6729\u672a\u0007P\u0002\u0002",
+ "\u672a\u0f0a\u0003\u0002\u0002\u0002\u672b\u672c\u0007V\u0002\u0002",
+ "\u672c\u672d\u0007J\u0002\u0002\u672d\u672e\u0007G\u0002\u0002\u672e",
+ "\u672f\u0007P\u0002\u0002\u672f\u0f0c\u0003\u0002\u0002\u0002\u6730",
+ "\u6731\u0007V\u0002\u0002\u6731\u6732\u0007J\u0002\u0002\u6732\u6733",
+ "\u0007G\u0002\u0002\u6733\u0f0e\u0003\u0002\u0002\u0002\u6734\u6735",
+ "\u0007V\u0002\u0002\u6735\u6736\u0007J\u0002\u0002\u6736\u6737\u0007",
+ "T\u0002\u0002\u6737\u6738\u0007G\u0002\u0002\u6738\u6739\u0007C\u0002",
+ "\u0002\u6739\u673a\u0007F\u0002\u0002\u673a\u0f10\u0003\u0002\u0002",
+ "\u0002\u673b\u673c\u0007V\u0002\u0002\u673c\u673d\u0007J\u0002\u0002",
+ "\u673d\u673e\u0007T\u0002\u0002\u673e\u673f\u0007Q\u0002\u0002\u673f",
+ "\u6740\u0007W\u0002\u0002\u6740\u6741\u0007I\u0002\u0002\u6741\u6742",
+ "\u0007J\u0002\u0002\u6742\u0f12\u0003\u0002\u0002\u0002\u6743\u6744",
+ "\u0007V\u0002\u0002\u6744\u6745\u0007K\u0002\u0002\u6745\u6746\u0007",
+ "G\u0002\u0002\u6746\u6747\u0007T\u0002\u0002\u6747\u0f14\u0003\u0002",
+ "\u0002\u0002\u6748\u6749\u0007V\u0002\u0002\u6749\u674a\u0007K\u0002",
+ "\u0002\u674a\u674b\u0007G\u0002\u0002\u674b\u674c\u0007U\u0002\u0002",
+ "\u674c\u0f16\u0003\u0002\u0002\u0002\u674d\u674e\u0007V\u0002\u0002",
+ "\u674e\u674f\u0007K\u0002\u0002\u674f\u6750\u0007O\u0002\u0002\u6750",
+ "\u6751\u0007G\u0002\u0002\u6751\u6752\u0007Q\u0002\u0002\u6752\u6753",
+ "\u0007W\u0002\u0002\u6753\u6754\u0007V\u0002\u0002\u6754\u0f18\u0003",
+ "\u0002\u0002\u0002\u6755\u6756\u0007V\u0002\u0002\u6756\u6757\u0007",
+ "K\u0002\u0002\u6757\u6758\u0007O\u0002\u0002\u6758\u6759\u0007G\u0002",
+ "\u0002\u6759\u675a\u0007U\u0002\u0002\u675a\u675b\u0007V\u0002\u0002",
+ "\u675b\u675c\u0007C\u0002\u0002\u675c\u675d\u0007O\u0002\u0002\u675d",
+ "\u675e\u0007R\u0002\u0002\u675e\u675f\u0007a\u0002\u0002\u675f\u6760",
+ "\u0007N\u0002\u0002\u6760\u6761\u0007V\u0002\u0002\u6761\u6762\u0007",
+ "\\\u0002\u0002\u6762\u6763\u0007a\u0002\u0002\u6763\u6764\u0007W\u0002",
+ "\u0002\u6764\u6765\u0007P\u0002\u0002\u6765\u6766\u0007E\u0002\u0002",
+ "\u6766\u6767\u0007Q\u0002\u0002\u6767\u6768\u0007P\u0002\u0002\u6768",
+ "\u6769\u0007U\u0002\u0002\u6769\u676a\u0007V\u0002\u0002\u676a\u676b",
+ "\u0007T\u0002\u0002\u676b\u676c\u0007C\u0002\u0002\u676c\u676d\u0007",
+ "K\u0002\u0002\u676d\u676e\u0007P\u0002\u0002\u676e\u676f\u0007G\u0002",
+ "\u0002\u676f\u6770\u0007F\u0002\u0002\u6770\u0f1a\u0003\u0002\u0002",
+ "\u0002\u6771\u6772\u0007V\u0002\u0002\u6772\u6773\u0007K\u0002\u0002",
+ "\u6773\u6774\u0007O\u0002\u0002\u6774\u6775\u0007G\u0002\u0002\u6775",
+ "\u6776\u0007U\u0002\u0002\u6776\u6777\u0007V\u0002\u0002\u6777\u6778",
+ "\u0007C\u0002\u0002\u6778\u6779\u0007O\u0002\u0002\u6779\u677a\u0007",
+ "R\u0002\u0002\u677a\u0f1c\u0003\u0002\u0002\u0002\u677b\u677c\u0007",
+ "V\u0002\u0002\u677c\u677d\u0007K\u0002\u0002\u677d\u677e\u0007O\u0002",
+ "\u0002\u677e\u677f\u0007G\u0002\u0002\u677f\u6780\u0007U\u0002\u0002",
+ "\u6780\u6781\u0007V\u0002\u0002\u6781\u6782\u0007C\u0002\u0002\u6782",
+ "\u6783\u0007O\u0002\u0002\u6783\u6784\u0007R\u0002\u0002\u6784\u6785",
+ "\u0007a\u0002\u0002\u6785\u6786\u0007V\u0002\u0002\u6786\u6787\u0007",
+ "\\\u0002\u0002\u6787\u6788\u0007a\u0002\u0002\u6788\u6789\u0007W\u0002",
+ "\u0002\u6789\u678a\u0007P\u0002\u0002\u678a\u678b\u0007E\u0002\u0002",
+ "\u678b\u678c\u0007Q\u0002\u0002\u678c\u678d\u0007P\u0002\u0002\u678d",
+ "\u678e\u0007U\u0002\u0002\u678e\u678f\u0007V\u0002\u0002\u678f\u6790",
+ "\u0007T\u0002\u0002\u6790\u6791\u0007C\u0002\u0002\u6791\u6792\u0007",
+ "K\u0002\u0002\u6792\u6793\u0007P\u0002\u0002\u6793\u6794\u0007G\u0002",
+ "\u0002\u6794\u6795\u0007F\u0002\u0002\u6795\u0f1e\u0003\u0002\u0002",
+ "\u0002\u6796\u6797\u0007V\u0002\u0002\u6797\u6798\u0007K\u0002\u0002",
+ "\u6798\u6799\u0007O\u0002\u0002\u6799\u679a\u0007G\u0002\u0002\u679a",
+ "\u679b\u0007U\u0002\u0002\u679b\u679c\u0007V\u0002\u0002\u679c\u679d",
+ "\u0007C\u0002\u0002\u679d\u679e\u0007O\u0002\u0002\u679e\u679f\u0007",
+ "R\u0002\u0002\u679f\u67a0\u0007a\u0002\u0002\u67a0\u67a1\u0007W\u0002",
+ "\u0002\u67a1\u67a2\u0007P\u0002\u0002\u67a2\u67a3\u0007E\u0002\u0002",
+ "\u67a3\u67a4\u0007Q\u0002\u0002\u67a4\u67a5\u0007P\u0002\u0002\u67a5",
+ "\u67a6\u0007U\u0002\u0002\u67a6\u67a7\u0007V\u0002\u0002\u67a7\u67a8",
+ "\u0007T\u0002\u0002\u67a8\u67a9\u0007C\u0002\u0002\u67a9\u67aa\u0007",
+ "K\u0002\u0002\u67aa\u67ab\u0007P\u0002\u0002\u67ab\u67ac\u0007G\u0002",
+ "\u0002\u67ac\u67ad\u0007F\u0002\u0002\u67ad\u0f20\u0003\u0002\u0002",
+ "\u0002\u67ae\u67af\u0007V\u0002\u0002\u67af\u67b0\u0007K\u0002\u0002",
+ "\u67b0\u67b1\u0007O\u0002\u0002\u67b1\u67b2\u0007G\u0002\u0002\u67b2",
+ "\u67b3\u0007U\u0002\u0002\u67b3\u0f22\u0003\u0002\u0002\u0002\u67b4",
+ "\u67b5\u0007V\u0002\u0002\u67b5\u67b6\u0007K\u0002\u0002\u67b6\u67b7",
+ "\u0007O\u0002\u0002\u67b7\u67b8\u0007G\u0002\u0002\u67b8\u0f24\u0003",
+ "\u0002\u0002\u0002\u67b9\u67ba\u0007V\u0002\u0002\u67ba\u67bb\u0007",
+ "K\u0002\u0002\u67bb\u67bc\u0007O\u0002\u0002\u67bc\u67bd\u0007G\u0002",
+ "\u0002\u67bd\u67be\u0007\\\u0002\u0002\u67be\u67bf\u0007Q\u0002\u0002",
+ "\u67bf\u67c0\u0007P\u0002\u0002\u67c0\u67c1\u0007G\u0002\u0002\u67c1",
+ "\u0f26\u0003\u0002\u0002\u0002\u67c2\u67c3\u0007V\u0002\u0002\u67c3",
+ "\u67c4\u0007K\u0002\u0002\u67c4\u67c5\u0007O\u0002\u0002\u67c5\u67c6",
+ "\u0007G\u0002\u0002\u67c6\u67c7\u0007\\\u0002\u0002\u67c7\u67c8\u0007",
+ "Q\u0002\u0002\u67c8\u67c9\u0007P\u0002\u0002\u67c9\u67ca\u0007G\u0002",
+ "\u0002\u67ca\u67cb\u0007a\u0002\u0002\u67cb\u67cc\u0007C\u0002\u0002",
+ "\u67cc\u67cd\u0007D\u0002\u0002\u67cd\u67ce\u0007D\u0002\u0002\u67ce",
+ "\u67cf\u0007T\u0002\u0002\u67cf\u0f28\u0003\u0002\u0002\u0002\u67d0",
+ "\u67d1\u0007V\u0002\u0002\u67d1\u67d2\u0007K\u0002\u0002\u67d2\u67d3",
+ "\u0007O\u0002\u0002\u67d3\u67d4\u0007G\u0002\u0002\u67d4\u67d5\u0007",
+ "\\\u0002\u0002\u67d5\u67d6\u0007Q\u0002\u0002\u67d6\u67d7\u0007P\u0002",
+ "\u0002\u67d7\u67d8\u0007G\u0002\u0002\u67d8\u67d9\u0007a\u0002\u0002",
+ "\u67d9\u67da\u0007J\u0002\u0002\u67da\u67db\u0007Q\u0002\u0002\u67db",
+ "\u67dc\u0007W\u0002\u0002\u67dc\u67dd\u0007T\u0002\u0002\u67dd\u0f2a",
+ "\u0003\u0002\u0002\u0002\u67de\u67df\u0007V\u0002\u0002\u67df\u67e0",
+ "\u0007K\u0002\u0002\u67e0\u67e1\u0007O\u0002\u0002\u67e1\u67e2\u0007",
+ "G\u0002\u0002\u67e2\u67e3\u0007\\\u0002\u0002\u67e3\u67e4\u0007Q\u0002",
+ "\u0002\u67e4\u67e5\u0007P\u0002\u0002\u67e5\u67e6\u0007G\u0002\u0002",
+ "\u67e6\u67e7\u0007a\u0002\u0002\u67e7\u67e8\u0007O\u0002\u0002\u67e8",
+ "\u67e9\u0007K\u0002\u0002\u67e9\u67ea\u0007P\u0002\u0002\u67ea\u67eb",
+ "\u0007W\u0002\u0002\u67eb\u67ec\u0007V\u0002\u0002\u67ec\u67ed\u0007",
+ "G\u0002\u0002\u67ed\u0f2c\u0003\u0002\u0002\u0002\u67ee\u67ef\u0007",
+ "V\u0002\u0002\u67ef\u67f0\u0007K\u0002\u0002\u67f0\u67f1\u0007O\u0002",
+ "\u0002\u67f1\u67f2\u0007G\u0002\u0002\u67f2\u67f3\u0007\\\u0002\u0002",
+ "\u67f3\u67f4\u0007Q\u0002\u0002\u67f4\u67f5\u0007P\u0002\u0002\u67f5",
+ "\u67f6\u0007G\u0002\u0002\u67f6\u67f7\u0007a\u0002\u0002\u67f7\u67f8",
+ "\u0007Q\u0002\u0002\u67f8\u67f9\u0007H\u0002\u0002\u67f9\u67fa\u0007",
+ "H\u0002\u0002\u67fa\u67fb\u0007U\u0002\u0002\u67fb\u67fc\u0007G\u0002",
+ "\u0002\u67fc\u67fd\u0007V\u0002\u0002\u67fd\u0f2e\u0003\u0002\u0002",
+ "\u0002\u67fe\u67ff\u0007V\u0002\u0002\u67ff\u6800\u0007K\u0002\u0002",
+ "\u6800\u6801\u0007O\u0002\u0002\u6801\u6802\u0007G\u0002\u0002\u6802",
+ "\u6803\u0007\\\u0002\u0002\u6803\u6804\u0007Q\u0002\u0002\u6804\u6805",
+ "\u0007P\u0002\u0002\u6805\u6806\u0007G\u0002\u0002\u6806\u6807\u0007",
+ "a\u0002\u0002\u6807\u6808\u0007T\u0002\u0002\u6808\u6809\u0007G\u0002",
+ "\u0002\u6809\u680a\u0007I\u0002\u0002\u680a\u680b\u0007K\u0002\u0002",
+ "\u680b\u680c\u0007Q\u0002\u0002\u680c\u680d\u0007P\u0002\u0002\u680d",
+ "\u0f30\u0003\u0002\u0002\u0002\u680e\u680f\u0007V\u0002\u0002\u680f",
+ "\u6810\u0007K\u0002\u0002\u6810\u6811\u0007O\u0002\u0002\u6811\u6812",
+ "\u0007G\u0002\u0002\u6812\u6813\u0007a\u0002\u0002\u6813\u6814\u0007",
+ "\\\u0002\u0002\u6814\u6815\u0007Q\u0002\u0002\u6815\u6816\u0007P\u0002",
+ "\u0002\u6816\u6817\u0007G\u0002\u0002\u6817\u0f32\u0003\u0002\u0002",
+ "\u0002\u6818\u6819\u0007V\u0002\u0002\u6819\u681a\u0007K\u0002\u0002",
+ "\u681a\u681b\u0007X\u0002\u0002\u681b\u681c\u0007a\u0002\u0002\u681c",
+ "\u681d\u0007I\u0002\u0002\u681d\u681e\u0007D\u0002\u0002\u681e\u0f34",
+ "\u0003\u0002\u0002\u0002\u681f\u6820\u0007V\u0002\u0002\u6820\u6821",
+ "\u0007K\u0002\u0002\u6821\u6822\u0007X\u0002\u0002\u6822\u6823\u0007",
+ "a\u0002\u0002\u6823\u6824\u0007U\u0002\u0002\u6824\u6825\u0007U\u0002",
+ "\u0002\u6825\u6826\u0007H\u0002\u0002\u6826\u0f36\u0003\u0002\u0002",
+ "\u0002\u6827\u6828\u0007V\u0002\u0002\u6828\u6829\u0007Q\u0002\u0002",
+ "\u6829\u682a\u0007a\u0002\u0002\u682a\u682b\u0007C\u0002\u0002\u682b",
+ "\u682c\u0007E\u0002\u0002\u682c\u682d\u0007N\u0002\u0002\u682d\u682e",
+ "\u0007K\u0002\u0002\u682e\u682f\u0007F\u0002\u0002\u682f\u0f38\u0003",
+ "\u0002\u0002\u0002\u6830\u6831\u0007V\u0002\u0002\u6831\u6832\u0007",
+ "Q\u0002\u0002\u6832\u6833\u0007a\u0002\u0002\u6833\u6834\u0007D\u0002",
+ "\u0002\u6834\u6835\u0007K\u0002\u0002\u6835\u6836\u0007P\u0002\u0002",
+ "\u6836\u6837\u0007C\u0002\u0002\u6837\u6838\u0007T\u0002\u0002\u6838",
+ "\u6839\u0007[\u0002\u0002\u6839\u683a\u0007a\u0002\u0002\u683a\u683b",
+ "\u0007F\u0002\u0002\u683b\u683c\u0007Q\u0002\u0002\u683c\u683d\u0007",
+ "W\u0002\u0002\u683d\u683e\u0007D\u0002\u0002\u683e\u683f\u0007N\u0002",
+ "\u0002\u683f\u6840\u0007G\u0002\u0002\u6840\u0f3a\u0003\u0002\u0002",
+ "\u0002\u6841\u6842\u0007V\u0002\u0002\u6842\u6843\u0007Q\u0002\u0002",
+ "\u6843\u6844\u0007a\u0002\u0002\u6844\u6845\u0007D\u0002\u0002\u6845",
+ "\u6846\u0007K\u0002\u0002\u6846\u6847\u0007P\u0002\u0002\u6847\u6848",
+ "\u0007C\u0002\u0002\u6848\u6849\u0007T\u0002\u0002\u6849\u684a\u0007",
+ "[\u0002\u0002\u684a\u684b\u0007a\u0002\u0002\u684b\u684c\u0007H\u0002",
+ "\u0002\u684c\u684d\u0007N\u0002\u0002\u684d\u684e\u0007Q\u0002\u0002",
+ "\u684e\u684f\u0007C\u0002\u0002\u684f\u6850\u0007V\u0002\u0002\u6850",
+ "\u0f3c\u0003\u0002\u0002\u0002\u6851\u6852\u0007V\u0002\u0002\u6852",
+ "\u6853\u0007Q\u0002\u0002\u6853\u6854\u0007a\u0002\u0002\u6854\u6855",
+ "\u0007D\u0002\u0002\u6855\u6856\u0007N\u0002\u0002\u6856\u6857\u0007",
+ "Q\u0002\u0002\u6857\u6858\u0007D\u0002\u0002\u6858\u0f3e\u0003\u0002",
+ "\u0002\u0002\u6859\u685a\u0007V\u0002\u0002\u685a\u685b\u0007Q\u0002",
+ "\u0002\u685b\u685c\u0007a\u0002\u0002\u685c\u685d\u0007E\u0002\u0002",
+ "\u685d\u685e\u0007N\u0002\u0002\u685e\u685f\u0007Q\u0002\u0002\u685f",
+ "\u6860\u0007D\u0002\u0002\u6860\u0f40\u0003\u0002\u0002\u0002\u6861",
+ "\u6862\u0007V\u0002\u0002\u6862\u6863\u0007Q\u0002\u0002\u6863\u6864",
+ "\u0007a\u0002\u0002\u6864\u6865\u0007F\u0002\u0002\u6865\u6866\u0007",
+ "U\u0002\u0002\u6866\u6867\u0007K\u0002\u0002\u6867\u6868\u0007P\u0002",
+ "\u0002\u6868\u6869\u0007V\u0002\u0002\u6869\u686a\u0007G\u0002\u0002",
+ "\u686a\u686b\u0007T\u0002\u0002\u686b\u686c\u0007X\u0002\u0002\u686c",
+ "\u686d\u0007C\u0002\u0002\u686d\u686e\u0007N\u0002\u0002\u686e\u0f42",
+ "\u0003\u0002\u0002\u0002\u686f\u6870\u0007V\u0002\u0002\u6870\u6871",
+ "\u0007Q\u0002\u0002\u6871\u6872\u0007a\u0002\u0002\u6872\u6873\u0007",
+ "N\u0002\u0002\u6873\u6874\u0007Q\u0002\u0002\u6874\u6875\u0007D\u0002",
+ "\u0002\u6875\u0f44\u0003\u0002\u0002\u0002\u6876\u6877\u0007V\u0002",
+ "\u0002\u6877\u6878\u0007Q\u0002\u0002\u6878\u6879\u0007a\u0002\u0002",
+ "\u6879\u687a\u0007O\u0002\u0002\u687a\u687b\u0007W\u0002\u0002\u687b",
+ "\u687c\u0007N\u0002\u0002\u687c\u687d\u0007V\u0002\u0002\u687d\u687e",
+ "\u0007K\u0002\u0002\u687e\u687f\u0007a\u0002\u0002\u687f\u6880\u0007",
+ "D\u0002\u0002\u6880\u6881\u0007[\u0002\u0002\u6881\u6882\u0007V\u0002",
+ "\u0002\u6882\u6883\u0007G\u0002\u0002\u6883\u0f46\u0003\u0002\u0002",
+ "\u0002\u6884\u6885\u0007V\u0002\u0002\u6885\u6886\u0007Q\u0002\u0002",
+ "\u6886\u6887\u0007a\u0002\u0002\u6887\u6888\u0007P\u0002\u0002\u6888",
+ "\u6889\u0007E\u0002\u0002\u6889\u688a\u0007J\u0002\u0002\u688a\u688b",
+ "\u0007C\u0002\u0002\u688b\u688c\u0007T\u0002\u0002\u688c\u0f48\u0003",
+ "\u0002\u0002\u0002\u688d\u688e\u0007V\u0002\u0002\u688e\u688f\u0007",
+ "Q\u0002\u0002\u688f\u6890\u0007a\u0002\u0002\u6890\u6891\u0007P\u0002",
+ "\u0002\u6891\u6892\u0007E\u0002\u0002\u6892\u6893\u0007N\u0002\u0002",
+ "\u6893\u6894\u0007Q\u0002\u0002\u6894\u6895\u0007D\u0002\u0002\u6895",
+ "\u0f4a\u0003\u0002\u0002\u0002\u6896\u6897\u0007V\u0002\u0002\u6897",
+ "\u6898\u0007Q\u0002\u0002\u6898\u6899\u0007a\u0002\u0002\u6899\u689a",
+ "\u0007P\u0002\u0002\u689a\u689b\u0007W\u0002\u0002\u689b\u689c\u0007",
+ "O\u0002\u0002\u689c\u689d\u0007D\u0002\u0002\u689d\u689e\u0007G\u0002",
+ "\u0002\u689e\u689f\u0007T\u0002\u0002\u689f\u0f4c\u0003\u0002\u0002",
+ "\u0002\u68a0\u68a1\u0007V\u0002\u0002\u68a1\u68a2\u0007Q\u0002\u0002",
+ "\u68a2\u68a3\u0007R\u0002\u0002\u68a3\u68a4\u0007N\u0002\u0002\u68a4",
+ "\u68a5\u0007G\u0002\u0002\u68a5\u68a6\u0007X\u0002\u0002\u68a6\u68a7",
+ "\u0007G\u0002\u0002\u68a7\u68a8\u0007N\u0002\u0002\u68a8\u0f4e\u0003",
+ "\u0002\u0002\u0002\u68a9\u68aa\u0007V\u0002\u0002\u68aa\u68ab\u0007",
+ "Q\u0002\u0002\u68ab\u68ac\u0007a\u0002\u0002\u68ac\u68ad\u0007U\u0002",
+ "\u0002\u68ad\u68ae\u0007K\u0002\u0002\u68ae\u68af\u0007P\u0002\u0002",
+ "\u68af\u68b0\u0007I\u0002\u0002\u68b0\u68b1\u0007N\u0002\u0002\u68b1",
+ "\u68b2\u0007G\u0002\u0002\u68b2\u68b3\u0007a\u0002\u0002\u68b3\u68b4",
+ "\u0007D\u0002\u0002\u68b4\u68b5\u0007[\u0002\u0002\u68b5\u68b6\u0007",
+ "V\u0002\u0002\u68b6\u68b7\u0007G\u0002\u0002\u68b7\u0f50\u0003\u0002",
+ "\u0002\u0002\u68b8\u68b9\u0007V\u0002\u0002\u68b9\u68ba\u0007Q\u0002",
+ "\u0002\u68ba\u68bb\u0007a\u0002\u0002\u68bb\u68bc\u0007V\u0002\u0002",
+ "\u68bc\u68bd\u0007K\u0002\u0002\u68bd\u68be\u0007O\u0002\u0002\u68be",
+ "\u68bf\u0007G\u0002\u0002\u68bf\u68c0\u0007U\u0002\u0002\u68c0\u68c1",
+ "\u0007V\u0002\u0002\u68c1\u68c2\u0007C\u0002\u0002\u68c2\u68c3\u0007",
+ "O\u0002\u0002\u68c3\u68c4\u0007R\u0002\u0002\u68c4\u0f52\u0003\u0002",
+ "\u0002\u0002\u68c5\u68c6\u0007V\u0002\u0002\u68c6\u68c7\u0007Q\u0002",
+ "\u0002\u68c7\u68c8\u0007a\u0002\u0002\u68c8\u68c9\u0007V\u0002\u0002",
+ "\u68c9\u68ca\u0007K\u0002\u0002\u68ca\u68cb\u0007O\u0002\u0002\u68cb",
+ "\u68cc\u0007G\u0002\u0002\u68cc\u68cd\u0007U\u0002\u0002\u68cd\u68ce",
+ "\u0007V\u0002\u0002\u68ce\u68cf\u0007C\u0002\u0002\u68cf\u68d0\u0007",
+ "O\u0002\u0002\u68d0\u68d1\u0007R\u0002\u0002\u68d1\u68d2\u0007a\u0002",
+ "\u0002\u68d2\u68d3\u0007V\u0002\u0002\u68d3\u68d4\u0007\\\u0002\u0002",
+ "\u68d4\u0f54\u0003\u0002\u0002\u0002\u68d5\u68d6\u0007V\u0002\u0002",
+ "\u68d6\u68d7\u0007Q\u0002\u0002\u68d7\u68d8\u0007a\u0002\u0002\u68d8",
+ "\u68d9\u0007V\u0002\u0002\u68d9\u68da\u0007K\u0002\u0002\u68da\u68db",
+ "\u0007O\u0002\u0002\u68db\u68dc\u0007G\u0002\u0002\u68dc\u0f56\u0003",
+ "\u0002\u0002\u0002\u68dd\u68de\u0007V\u0002\u0002\u68de\u68df\u0007",
+ "Q\u0002\u0002\u68df\u68e0\u0007a\u0002\u0002\u68e0\u68e1\u0007V\u0002",
+ "\u0002\u68e1\u68e2\u0007K\u0002\u0002\u68e2\u68e3\u0007O\u0002\u0002",
+ "\u68e3\u68e4\u0007G\u0002\u0002\u68e4\u68e5\u0007a\u0002\u0002\u68e5",
+ "\u68e6\u0007V\u0002\u0002\u68e6\u68e7\u0007\\\u0002\u0002\u68e7\u0f58",
+ "\u0003\u0002\u0002\u0002\u68e8\u68e9\u0007V\u0002\u0002\u68e9\u68ea",
+ "\u0007Q\u0002\u0002\u68ea\u0f5a\u0003\u0002\u0002\u0002\u68eb\u68ec",
+ "\u0007V\u0002\u0002\u68ec\u68ed\u0007Q\u0002\u0002\u68ed\u68ee\u0007",
+ "a\u0002\u0002\u68ee\u68ef\u0007[\u0002\u0002\u68ef\u68f0\u0007O\u0002",
+ "\u0002\u68f0\u68f1\u0007K\u0002\u0002\u68f1\u68f2\u0007P\u0002\u0002",
+ "\u68f2\u68f3\u0007V\u0002\u0002\u68f3\u68f4\u0007G\u0002\u0002\u68f4",
+ "\u68f5\u0007T\u0002\u0002\u68f5\u68f6\u0007X\u0002\u0002\u68f6\u68f7",
+ "\u0007C\u0002\u0002\u68f7\u68f8\u0007N\u0002\u0002\u68f8\u0f5c\u0003",
+ "\u0002\u0002\u0002\u68f9\u68fa\u0007V\u0002\u0002\u68fa\u68fb\u0007",
+ "T\u0002\u0002\u68fb\u68fc\u0007C\u0002\u0002\u68fc\u68fd\u0007E\u0002",
+ "\u0002\u68fd\u68fe\u0007G\u0002\u0002\u68fe\u0f5e\u0003\u0002\u0002",
+ "\u0002\u68ff\u6900\u0007V\u0002\u0002\u6900\u6901\u0007T\u0002\u0002",
+ "\u6901\u6902\u0007C\u0002\u0002\u6902\u6903\u0007E\u0002\u0002\u6903",
+ "\u6904\u0007K\u0002\u0002\u6904\u6905\u0007P\u0002\u0002\u6905\u6906",
+ "\u0007I\u0002\u0002\u6906\u0f60\u0003\u0002\u0002\u0002\u6907\u6908",
+ "\u0007V\u0002\u0002\u6908\u6909\u0007T\u0002\u0002\u6909\u690a\u0007",
+ "C\u0002\u0002\u690a\u690b\u0007E\u0002\u0002\u690b\u690c\u0007M\u0002",
+ "\u0002\u690c\u690d\u0007K\u0002\u0002\u690d\u690e\u0007P\u0002\u0002",
+ "\u690e\u690f\u0007I\u0002\u0002\u690f\u0f62\u0003\u0002\u0002\u0002",
+ "\u6910\u6911\u0007V\u0002\u0002\u6911\u6912\u0007T\u0002\u0002\u6912",
+ "\u6913\u0007C\u0002\u0002\u6913\u6914\u0007K\u0002\u0002\u6914\u6915",
+ "\u0007N\u0002\u0002\u6915\u6916\u0007K\u0002\u0002\u6916\u6917\u0007",
+ "P\u0002\u0002\u6917\u6918\u0007I\u0002\u0002\u6918\u0f64\u0003\u0002",
+ "\u0002\u0002\u6919\u691a\u0007V\u0002\u0002\u691a\u691b\u0007T\u0002",
+ "\u0002\u691b\u691c\u0007C\u0002\u0002\u691c\u691d\u0007P\u0002\u0002",
+ "\u691d\u691e\u0007U\u0002\u0002\u691e\u691f\u0007C\u0002\u0002\u691f",
+ "\u6920\u0007E\u0002\u0002\u6920\u6921\u0007V\u0002\u0002\u6921\u6922",
+ "\u0007K\u0002\u0002\u6922\u6923\u0007Q\u0002\u0002\u6923\u6924\u0007",
+ "P\u0002\u0002\u6924\u0f66\u0003\u0002\u0002\u0002\u6925\u6926\u0007",
+ "V\u0002\u0002\u6926\u6927\u0007T\u0002\u0002\u6927\u6928\u0007C\u0002",
+ "\u0002\u6928\u6929\u0007P\u0002\u0002\u6929\u692a\u0007U\u0002\u0002",
+ "\u692a\u692b\u0007H\u0002\u0002\u692b\u692c\u0007Q\u0002\u0002\u692c",
+ "\u692d\u0007T\u0002\u0002\u692d\u692e\u0007O\u0002\u0002\u692e\u692f",
+ "\u0007a\u0002\u0002\u692f\u6930\u0007F\u0002\u0002\u6930\u6931\u0007",
+ "K\u0002\u0002\u6931\u6932\u0007U\u0002\u0002\u6932\u6933\u0007V\u0002",
+ "\u0002\u6933\u6934\u0007K\u0002\u0002\u6934\u6935\u0007P\u0002\u0002",
+ "\u6935\u6936\u0007E\u0002\u0002\u6936\u6937\u0007V\u0002\u0002\u6937",
+ "\u6938\u0007a\u0002\u0002\u6938\u6939\u0007C\u0002\u0002\u6939\u693a",
+ "\u0007I\u0002\u0002\u693a\u693b\u0007I\u0002\u0002\u693b\u0f68\u0003",
+ "\u0002\u0002\u0002\u693c\u693d\u0007V\u0002\u0002\u693d\u693e\u0007",
+ "T\u0002\u0002\u693e\u693f\u0007C\u0002\u0002\u693f\u6940\u0007P\u0002",
+ "\u0002\u6940\u6941\u0007U\u0002\u0002\u6941\u6942\u0007K\u0002\u0002",
+ "\u6942\u6943\u0007V\u0002\u0002\u6943\u6944\u0007K\u0002\u0002\u6944",
+ "\u6945\u0007Q\u0002\u0002\u6945\u6946\u0007P\u0002\u0002\u6946\u6947",
+ "\u0007C\u0002\u0002\u6947\u6948\u0007N\u0002\u0002\u6948\u0f6a\u0003",
+ "\u0002\u0002\u0002\u6949\u694a\u0007V\u0002\u0002\u694a\u694b\u0007",
+ "T\u0002\u0002\u694b\u694c\u0007C\u0002\u0002\u694c\u694d\u0007P\u0002",
+ "\u0002\u694d\u694e\u0007U\u0002\u0002\u694e\u694f\u0007K\u0002\u0002",
+ "\u694f\u6950\u0007V\u0002\u0002\u6950\u6951\u0007K\u0002\u0002\u6951",
+ "\u6952\u0007Q\u0002\u0002\u6952\u6953\u0007P\u0002\u0002\u6953\u0f6c",
+ "\u0003\u0002\u0002\u0002\u6954\u6955\u0007V\u0002\u0002\u6955\u6956",
+ "\u0007T\u0002\u0002\u6956\u6957\u0007C\u0002\u0002\u6957\u6958\u0007",
+ "P\u0002\u0002\u6958\u6959\u0007U\u0002\u0002\u6959\u695a\u0007N\u0002",
+ "\u0002\u695a\u695b\u0007C\u0002\u0002\u695b\u695c\u0007V\u0002\u0002",
+ "\u695c\u695d\u0007G\u0002\u0002\u695d\u0f6e\u0003\u0002\u0002\u0002",
+ "\u695e\u695f\u0007V\u0002\u0002\u695f\u6960\u0007T\u0002\u0002\u6960",
+ "\u6961\u0007C\u0002\u0002\u6961\u6962\u0007P\u0002\u0002\u6962\u6963",
+ "\u0007U\u0002\u0002\u6963\u6964\u0007N\u0002\u0002\u6964\u6965\u0007",
+ "C\u0002\u0002\u6965\u6966\u0007V\u0002\u0002\u6966\u6967\u0007K\u0002",
+ "\u0002\u6967\u6968\u0007Q\u0002\u0002\u6968\u6969\u0007P\u0002\u0002",
+ "\u6969\u0f70\u0003\u0002\u0002\u0002\u696a\u696b\u0007V\u0002\u0002",
+ "\u696b\u696c\u0007T\u0002\u0002\u696c\u696d\u0007G\u0002\u0002\u696d",
+ "\u696e\u0007C\u0002\u0002\u696e\u696f\u0007V\u0002\u0002\u696f\u0f72",
+ "\u0003\u0002\u0002\u0002\u6970\u6971\u0007V\u0002\u0002\u6971\u6972",
+ "\u0007T\u0002\u0002\u6972\u6973\u0007K\u0002\u0002\u6973\u6974\u0007",
+ "I\u0002\u0002\u6974\u6975\u0007I\u0002\u0002\u6975\u6976\u0007G\u0002",
+ "\u0002\u6976\u6977\u0007T\u0002\u0002\u6977\u6978\u0007U\u0002\u0002",
+ "\u6978\u0f74\u0003\u0002\u0002\u0002\u6979\u697a\u0007V\u0002\u0002",
+ "\u697a\u697b\u0007T\u0002\u0002\u697b\u697c\u0007K\u0002\u0002\u697c",
+ "\u697d\u0007I\u0002\u0002\u697d\u697e\u0007I\u0002\u0002\u697e\u697f",
+ "\u0007G\u0002\u0002\u697f\u6980\u0007T\u0002\u0002\u6980\u0f76\u0003",
+ "\u0002\u0002\u0002\u6981\u6982\u0007V\u0002\u0002\u6982\u6983\u0007",
+ "T\u0002\u0002\u6983\u6984\u0007W\u0002\u0002\u6984\u6985\u0007G\u0002",
+ "\u0002\u6985\u0f78\u0003\u0002\u0002\u0002\u6986\u6987\u0007V\u0002",
+ "\u0002\u6987\u6988\u0007T\u0002\u0002\u6988\u6989\u0007W\u0002\u0002",
+ "\u6989\u698a\u0007P\u0002\u0002\u698a\u698b\u0007E\u0002\u0002\u698b",
+ "\u698c\u0007C\u0002\u0002\u698c\u698d\u0007V\u0002\u0002\u698d\u698e",
+ "\u0007G\u0002\u0002\u698e\u0f7a\u0003\u0002\u0002\u0002\u698f\u6990",
+ "\u0007V\u0002\u0002\u6990\u6991\u0007T\u0002\u0002\u6991\u6992\u0007",
+ "W\u0002\u0002\u6992\u6993\u0007P\u0002\u0002\u6993\u6994\u0007E\u0002",
+ "\u0002\u6994\u0f7c\u0003\u0002\u0002\u0002\u6995\u6996\u0007V\u0002",
+ "\u0002\u6996\u6997\u0007T\u0002\u0002\u6997\u6998\u0007W\u0002\u0002",
+ "\u6998\u6999\u0007U\u0002\u0002\u6999\u699a\u0007V\u0002\u0002\u699a",
+ "\u699b\u0007G\u0002\u0002\u699b\u699c\u0007F\u0002\u0002\u699c\u0f7e",
+ "\u0003\u0002\u0002\u0002\u699d\u699e\u0007V\u0002\u0002\u699e\u699f",
+ "\u0007T\u0002\u0002\u699f\u69a0\u0007W\u0002\u0002\u69a0\u69a1\u0007",
+ "U\u0002\u0002\u69a1\u69a2\u0007V\u0002\u0002\u69a2\u0f80\u0003\u0002",
+ "\u0002\u0002\u69a3\u69a4\u0007V\u0002\u0002\u69a4\u69a5\u0007W\u0002",
+ "\u0002\u69a5\u69a6\u0007P\u0002\u0002\u69a6\u69a7\u0007K\u0002\u0002",
+ "\u69a7\u69a8\u0007P\u0002\u0002\u69a8\u69a9\u0007I\u0002\u0002\u69a9",
+ "\u0f82\u0003\u0002\u0002\u0002\u69aa\u69ab\u0007V\u0002\u0002\u69ab",
+ "\u69ac\u0007Z\u0002\u0002\u69ac\u0f84\u0003\u0002\u0002\u0002\u69ad",
+ "\u69ae\u0007V\u0002\u0002\u69ae\u69af\u0007[\u0002\u0002\u69af\u69b0",
+ "\u0007R\u0002\u0002\u69b0\u69b1\u0007G\u0002\u0002\u69b1\u69b2\u0007",
+ "U\u0002\u0002\u69b2\u0f86\u0003\u0002\u0002\u0002\u69b3\u69b4\u0007",
+ "V\u0002\u0002\u69b4\u69b5\u0007[\u0002\u0002\u69b5\u69b6\u0007R\u0002",
+ "\u0002\u69b6\u69b7\u0007G\u0002\u0002\u69b7\u0f88\u0003\u0002\u0002",
+ "\u0002\u69b8\u69b9\u0007V\u0002\u0002\u69b9\u69ba\u0007\\\u0002\u0002",
+ "\u69ba\u69bb\u0007a\u0002\u0002\u69bb\u69bc\u0007Q\u0002\u0002\u69bc",
+ "\u69bd\u0007H\u0002\u0002\u69bd\u69be\u0007H\u0002\u0002\u69be\u69bf",
+ "\u0007U\u0002\u0002\u69bf\u69c0\u0007G\u0002\u0002\u69c0\u69c1\u0007",
+ "V\u0002\u0002\u69c1\u0f8a\u0003\u0002\u0002\u0002\u69c2\u69c3\u0007",
+ "W\u0002\u0002\u69c3\u69c4\u0007D\u0002\u0002\u69c4\u69c5\u00074\u0002",
+ "\u0002\u69c5\u0f8c\u0003\u0002\u0002\u0002\u69c6\u69c7\u0007W\u0002",
+ "\u0002\u69c7\u69c8\u0007D\u0002\u0002\u69c8\u69c9\u0007C\u0002\u0002",
+ "\u69c9\u0f8e\u0003\u0002\u0002\u0002\u69ca\u69cb\u0007W\u0002\u0002",
+ "\u69cb\u69cc\u0007E\u0002\u0002\u69cc\u69cd\u0007U\u0002\u0002\u69cd",
+ "\u69ce\u00074\u0002\u0002\u69ce\u0f90\u0003\u0002\u0002\u0002\u69cf",
+ "\u69d0\u0007W\u0002\u0002\u69d0\u69d1\u0007K\u0002\u0002\u69d1\u69d2",
+ "\u0007F\u0002\u0002\u69d2\u0f92\u0003\u0002\u0002\u0002\u69d3\u69d4",
+ "\u0007W\u0002\u0002\u69d4\u69d5\u0007P\u0002\u0002\u69d5\u69d6\u0007",
+ "C\u0002\u0002\u69d6\u69d7\u0007T\u0002\u0002\u69d7\u69d8\u0007E\u0002",
+ "\u0002\u69d8\u69d9\u0007J\u0002\u0002\u69d9\u69da\u0007K\u0002\u0002",
+ "\u69da\u69db\u0007X\u0002\u0002\u69db\u69dc\u0007G\u0002\u0002\u69dc",
+ "\u69dd\u0007F\u0002\u0002\u69dd\u0f94\u0003\u0002\u0002\u0002\u69de",
+ "\u69df\u0007W\u0002\u0002\u69df\u69e0\u0007P\u0002\u0002\u69e0\u69e1",
+ "\u0007D\u0002\u0002\u69e1\u69e2\u0007Q\u0002\u0002\u69e2\u69e3\u0007",
+ "W\u0002\u0002\u69e3\u69e4\u0007P\u0002\u0002\u69e4\u69e5\u0007F\u0002",
+ "\u0002\u69e5\u69e6\u0007G\u0002\u0002\u69e6\u69e7\u0007F\u0002\u0002",
+ "\u69e7\u0f96\u0003\u0002\u0002\u0002\u69e8\u69e9\u0007W\u0002\u0002",
+ "\u69e9\u69ea\u0007P\u0002\u0002\u69ea\u69eb\u0007D\u0002\u0002\u69eb",
+ "\u69ec\u0007Q\u0002\u0002\u69ec\u69ed\u0007W\u0002\u0002\u69ed\u69ee",
+ "\u0007P\u0002\u0002\u69ee\u69ef\u0007F\u0002\u0002\u69ef\u0f98\u0003",
+ "\u0002\u0002\u0002\u69f0\u69f1\u0007W\u0002\u0002\u69f1\u69f2\u0007",
+ "P\u0002\u0002\u69f2\u69f3\u0007E\u0002\u0002\u69f3\u69f4\u0007Q\u0002",
+ "\u0002\u69f4\u69f5\u0007P\u0002\u0002\u69f5\u69f6\u0007F\u0002\u0002",
+ "\u69f6\u69f7\u0007K\u0002\u0002\u69f7\u69f8\u0007V\u0002\u0002\u69f8",
+ "\u69f9\u0007K\u0002\u0002\u69f9\u69fa\u0007Q\u0002\u0002\u69fa\u69fb",
+ "\u0007P\u0002\u0002\u69fb\u69fc\u0007C\u0002\u0002\u69fc\u69fd\u0007",
+ "N\u0002\u0002\u69fd\u0f9a\u0003\u0002\u0002\u0002\u69fe\u69ff\u0007",
+ "W\u0002\u0002\u69ff\u6a00\u0007P\u0002\u0002\u6a00\u6a01\u0007F\u0002",
+ "\u0002\u6a01\u6a02\u0007G\u0002\u0002\u6a02\u6a03\u0007T\u0002\u0002",
+ "\u6a03\u0f9c\u0003\u0002\u0002\u0002\u6a04\u6a05\u0007W\u0002\u0002",
+ "\u6a05\u6a06\u0007P\u0002\u0002\u6a06\u6a07\u0007F\u0002\u0002\u6a07",
+ "\u6a08\u0007Q\u0002\u0002\u6a08\u0f9e\u0003\u0002\u0002\u0002\u6a09",
+ "\u6a0a\u0007W\u0002\u0002\u6a0a\u6a0b\u0007P\u0002\u0002\u6a0b\u6a0c",
+ "\u0007F\u0002\u0002\u6a0c\u6a0d\u0007T\u0002\u0002\u6a0d\u6a0e\u0007",
+ "Q\u0002\u0002\u6a0e\u6a0f\u0007R\u0002\u0002\u6a0f\u0fa0\u0003\u0002",
+ "\u0002\u0002\u6a10\u6a11\u0007W\u0002\u0002\u6a11\u6a12\u0007P\u0002",
+ "\u0002\u6a12\u6a13\u0007K\u0002\u0002\u6a13\u6a14\u0007H\u0002\u0002",
+ "\u6a14\u6a15\u0007Q\u0002\u0002\u6a15\u6a16\u0007T\u0002\u0002\u6a16",
+ "\u6a17\u0007O\u0002\u0002\u6a17\u0fa2\u0003\u0002\u0002\u0002\u6a18",
+ "\u6a19\u0007W\u0002\u0002\u6a19\u6a1a\u0007P\u0002\u0002\u6a1a\u6a1b",
+ "\u0007K\u0002\u0002\u6a1b\u6a1c\u0007Q\u0002\u0002\u6a1c\u6a1d\u0007",
+ "P\u0002\u0002\u6a1d\u0fa4\u0003\u0002\u0002\u0002\u6a1e\u6a1f\u0007",
+ "W\u0002\u0002\u6a1f\u6a20\u0007P\u0002\u0002\u6a20\u6a21\u0007K\u0002",
+ "\u0002\u6a21\u6a22\u0007S\u0002\u0002\u6a22\u6a23\u0007W\u0002\u0002",
+ "\u6a23\u6a24\u0007G\u0002\u0002\u6a24\u0fa6\u0003\u0002\u0002\u0002",
+ "\u6a25\u6a26\u0007W\u0002\u0002\u6a26\u6a27\u0007P\u0002\u0002\u6a27",
+ "\u6a28\u0007K\u0002\u0002\u6a28\u6a29\u0007U\u0002\u0002\u6a29\u6a2a",
+ "\u0007V\u0002\u0002\u6a2a\u6a2b\u0007T\u0002\u0002\u6a2b\u0fa8\u0003",
+ "\u0002\u0002\u0002\u6a2c\u6a2d\u0007W\u0002\u0002\u6a2d\u6a2e\u0007",
+ "P\u0002\u0002\u6a2e\u6a2f\u0007N\u0002\u0002\u6a2f\u6a30\u0007K\u0002",
+ "\u0002\u6a30\u6a31\u0007O\u0002\u0002\u6a31\u6a32\u0007K\u0002\u0002",
+ "\u6a32\u6a33\u0007V\u0002\u0002\u6a33\u6a34\u0007G\u0002\u0002\u6a34",
+ "\u6a35\u0007F\u0002\u0002\u6a35\u0faa\u0003\u0002\u0002\u0002\u6a36",
+ "\u6a37\u0007W\u0002\u0002\u6a37\u6a38\u0007P\u0002\u0002\u6a38\u6a39",
+ "\u0007N\u0002\u0002\u6a39\u6a3a\u0007Q\u0002\u0002\u6a3a\u6a3b\u0007",
+ "C\u0002\u0002\u6a3b\u6a3c\u0007F\u0002\u0002\u6a3c\u0fac\u0003\u0002",
+ "\u0002\u0002\u6a3d\u6a3e\u0007W\u0002\u0002\u6a3e\u6a3f\u0007P\u0002",
+ "\u0002\u6a3f\u6a40\u0007N\u0002\u0002\u6a40\u6a41\u0007Q\u0002\u0002",
+ "\u6a41\u6a42\u0007E\u0002\u0002\u6a42\u6a43\u0007M\u0002\u0002\u6a43",
+ "\u0fae\u0003\u0002\u0002\u0002\u6a44\u6a45\u0007W\u0002\u0002\u6a45",
+ "\u6a46\u0007P\u0002\u0002\u6a46\u6a47\u0007O\u0002\u0002\u6a47\u6a48",
+ "\u0007C\u0002\u0002\u6a48\u6a49\u0007V\u0002\u0002\u6a49\u6a4a\u0007",
+ "E\u0002\u0002\u6a4a\u6a4b\u0007J\u0002\u0002\u6a4b\u6a4c\u0007G\u0002",
+ "\u0002\u6a4c\u6a4d\u0007F\u0002\u0002\u6a4d\u0fb0\u0003\u0002\u0002",
+ "\u0002\u6a4e\u6a4f\u0007W\u0002\u0002\u6a4f\u6a50\u0007P\u0002\u0002",
+ "\u6a50\u6a51\u0007P\u0002\u0002\u6a51\u6a52\u0007G\u0002\u0002\u6a52",
+ "\u6a53\u0007U\u0002\u0002\u6a53\u6a54\u0007V\u0002\u0002\u6a54\u6a55",
+ "\u0007a\u0002\u0002\u6a55\u6a56\u0007K\u0002\u0002\u6a56\u6a57\u0007",
+ "P\u0002\u0002\u6a57\u6a58\u0007P\u0002\u0002\u6a58\u6a59\u0007G\u0002",
+ "\u0002\u6a59\u6a5a\u0007T\u0002\u0002\u6a5a\u6a5b\u0007L\u0002\u0002",
+ "\u6a5b\u6a5c\u0007a\u0002\u0002\u6a5c\u6a5d\u0007F\u0002\u0002\u6a5d",
+ "\u6a5e\u0007K\u0002\u0002\u6a5e\u6a5f\u0007U\u0002\u0002\u6a5f\u6a60",
+ "\u0007V\u0002\u0002\u6a60\u6a61\u0007K\u0002\u0002\u6a61\u6a62\u0007",
+ "P\u0002\u0002\u6a62\u6a63\u0007E\u0002\u0002\u6a63\u6a64\u0007V\u0002",
+ "\u0002\u6a64\u6a65\u0007a\u0002\u0002\u6a65\u6a66\u0007X\u0002\u0002",
+ "\u6a66\u6a67\u0007K\u0002\u0002\u6a67\u6a68\u0007G\u0002\u0002\u6a68",
+ "\u6a69\u0007Y\u0002\u0002\u6a69\u0fb2\u0003\u0002\u0002\u0002\u6a6a",
+ "\u6a6b\u0007W\u0002\u0002\u6a6b\u6a6c\u0007P\u0002\u0002\u6a6c\u6a6d",
+ "\u0007P\u0002\u0002\u6a6d\u6a6e\u0007G\u0002\u0002\u6a6e\u6a6f\u0007",
+ "U\u0002\u0002\u6a6f\u6a70\u0007V\u0002\u0002\u6a70\u6a71\u0007a\u0002",
+ "\u0002\u6a71\u6a72\u0007P\u0002\u0002\u6a72\u6a73\u0007Q\u0002\u0002",
+ "\u6a73\u6a74\u0007U\u0002\u0002\u6a74\u6a75\u0007G\u0002\u0002\u6a75",
+ "\u6a76\u0007O\u0002\u0002\u6a76\u6a77\u0007K\u0002\u0002\u6a77\u6a78",
+ "\u0007L\u0002\u0002\u6a78\u6a79\u0007a\u0002\u0002\u6a79\u6a7a\u0007",
+ "P\u0002\u0002\u6a7a\u6a7b\u0007Q\u0002\u0002\u6a7b\u6a7c\u0007F\u0002",
+ "\u0002\u6a7c\u6a7d\u0007K\u0002\u0002\u6a7d\u6a7e\u0007U\u0002\u0002",
+ "\u6a7e\u6a7f\u0007V\u0002\u0002\u6a7f\u6a80\u0007K\u0002\u0002\u6a80",
+ "\u6a81\u0007P\u0002\u0002\u6a81\u6a82\u0007E\u0002\u0002\u6a82\u6a83",
+ "\u0007V\u0002\u0002\u6a83\u6a84\u0007X\u0002\u0002\u6a84\u6a85\u0007",
+ "K\u0002\u0002\u6a85\u6a86\u0007G\u0002\u0002\u6a86\u6a87\u0007Y\u0002",
+ "\u0002\u6a87\u0fb4\u0003\u0002\u0002\u0002\u6a88\u6a89\u0007W\u0002",
+ "\u0002\u6a89\u6a8a\u0007P\u0002\u0002\u6a8a\u6a8b\u0007P\u0002\u0002",
+ "\u6a8b\u6a8c\u0007G\u0002\u0002\u6a8c\u6a8d\u0007U\u0002\u0002\u6a8d",
+ "\u6a8e\u0007V\u0002\u0002\u6a8e\u6a8f\u0007a\u0002\u0002\u6a8f\u6a90",
+ "\u0007U\u0002\u0002\u6a90\u6a91\u0007G\u0002\u0002\u6a91\u6a92\u0007",
+ "O\u0002\u0002\u6a92\u6a93\u0007K\u0002\u0002\u6a93\u6a94\u0007L\u0002",
+ "\u0002\u6a94\u6a95\u0007a\u0002\u0002\u6a95\u6a96\u0007X\u0002\u0002",
+ "\u6a96\u6a97\u0007K\u0002\u0002\u6a97\u6a98\u0007G\u0002\u0002\u6a98",
+ "\u6a99\u0007Y\u0002\u0002\u6a99\u0fb6\u0003\u0002\u0002\u0002\u6a9a",
+ "\u6a9b\u0007W\u0002\u0002\u6a9b\u6a9c\u0007P\u0002\u0002\u6a9c\u6a9d",
+ "\u0007P\u0002\u0002\u6a9d\u6a9e\u0007G\u0002\u0002\u6a9e\u6a9f\u0007",
+ "U\u0002\u0002\u6a9f\u6aa0\u0007V\u0002\u0002\u6aa0\u0fb8\u0003\u0002",
+ "\u0002\u0002\u6aa1\u6aa2\u0007W\u0002\u0002\u6aa2\u6aa3\u0007P\u0002",
+ "\u0002\u6aa3\u6aa4\u0007R\u0002\u0002\u6aa4\u6aa5\u0007C\u0002\u0002",
+ "\u6aa5\u6aa6\u0007E\u0002\u0002\u6aa6\u6aa7\u0007M\u0002\u0002\u6aa7",
+ "\u6aa8\u0007G\u0002\u0002\u6aa8\u6aa9\u0007F\u0002\u0002\u6aa9\u0fba",
+ "\u0003\u0002\u0002\u0002\u6aaa\u6aab\u0007W\u0002\u0002\u6aab\u6aac",
+ "\u0007P\u0002\u0002\u6aac\u6aad\u0007R\u0002\u0002\u6aad\u6aae\u0007",
+ "K\u0002\u0002\u6aae\u6aaf\u0007X\u0002\u0002\u6aaf\u6ab0\u0007Q\u0002",
+ "\u0002\u6ab0\u6ab1\u0007V\u0002\u0002\u6ab1\u0fbc\u0003\u0002\u0002",
+ "\u0002\u6ab2\u6ab3\u0007W\u0002\u0002\u6ab3\u6ab4\u0007P\u0002\u0002",
+ "\u6ab4\u6ab5\u0007R\u0002\u0002\u6ab5\u6ab6\u0007N\u0002\u0002\u6ab6",
+ "\u6ab7\u0007W\u0002\u0002\u6ab7\u6ab8\u0007I\u0002\u0002\u6ab8\u0fbe",
+ "\u0003\u0002\u0002\u0002\u6ab9\u6aba\u0007W\u0002\u0002\u6aba\u6abb",
+ "\u0007P\u0002\u0002\u6abb\u6abc\u0007R\u0002\u0002\u6abc\u6abd\u0007",
+ "T\u0002\u0002\u6abd\u6abe\u0007Q\u0002\u0002\u6abe\u6abf\u0007V\u0002",
+ "\u0002\u6abf\u6ac0\u0007G\u0002\u0002\u6ac0\u6ac1\u0007E\u0002\u0002",
+ "\u6ac1\u6ac2\u0007V\u0002\u0002\u6ac2\u6ac3\u0007G\u0002\u0002\u6ac3",
+ "\u6ac4\u0007F\u0002\u0002\u6ac4\u0fc0\u0003\u0002\u0002\u0002\u6ac5",
+ "\u6ac6\u0007W\u0002\u0002\u6ac6\u6ac7\u0007P\u0002\u0002\u6ac7\u6ac8",
+ "\u0007S\u0002\u0002\u6ac8\u6ac9\u0007W\u0002\u0002\u6ac9\u6aca\u0007",
+ "K\u0002\u0002\u6aca\u6acb\u0007G\u0002\u0002\u6acb\u6acc\u0007U\u0002",
+ "\u0002\u6acc\u6acd\u0007E\u0002\u0002\u6acd\u6ace\u0007G\u0002\u0002",
+ "\u6ace\u0fc2\u0003\u0002\u0002\u0002\u6acf\u6ad0\u0007W\u0002\u0002",
+ "\u6ad0\u6ad1\u0007P\u0002\u0002\u6ad1\u6ad2\u0007T\u0002\u0002\u6ad2",
+ "\u6ad3\u0007G\u0002\u0002\u6ad3\u6ad4\u0007E\u0002\u0002\u6ad4\u6ad5",
+ "\u0007Q\u0002\u0002\u6ad5\u6ad6\u0007X\u0002\u0002\u6ad6\u6ad7\u0007",
+ "G\u0002\u0002\u6ad7\u6ad8\u0007T\u0002\u0002\u6ad8\u6ad9\u0007C\u0002",
+ "\u0002\u6ad9\u6ada\u0007D\u0002\u0002\u6ada\u6adb\u0007N\u0002\u0002",
+ "\u6adb\u6adc\u0007G\u0002\u0002\u6adc\u0fc4\u0003\u0002\u0002\u0002",
+ "\u6add\u6ade\u0007W\u0002\u0002\u6ade\u6adf\u0007P\u0002\u0002\u6adf",
+ "\u6ae0\u0007T\u0002\u0002\u6ae0\u6ae1\u0007G\u0002\u0002\u6ae1\u6ae2",
+ "\u0007U\u0002\u0002\u6ae2\u6ae3\u0007V\u0002\u0002\u6ae3\u6ae4\u0007",
+ "T\u0002\u0002\u6ae4\u6ae5\u0007K\u0002\u0002\u6ae5\u6ae6\u0007E\u0002",
+ "\u0002\u6ae6\u6ae7\u0007V\u0002\u0002\u6ae7\u6ae8\u0007G\u0002\u0002",
+ "\u6ae8\u6ae9\u0007F\u0002\u0002\u6ae9\u0fc6\u0003\u0002\u0002\u0002",
+ "\u6aea\u6aeb\u0007W\u0002\u0002\u6aeb\u6aec\u0007P\u0002\u0002\u6aec",
+ "\u6aed\u0007U\u0002\u0002\u6aed\u6aee\u0007W\u0002\u0002\u6aee\u6aef",
+ "\u0007D\u0002\u0002\u6aef\u6af0\u0007U\u0002\u0002\u6af0\u6af1\u0007",
+ "E\u0002\u0002\u6af1\u6af2\u0007T\u0002\u0002\u6af2\u6af3\u0007K\u0002",
+ "\u0002\u6af3\u6af4\u0007D\u0002\u0002\u6af4\u6af5\u0007G\u0002\u0002",
+ "\u6af5\u0fc8\u0003\u0002\u0002\u0002\u6af6\u6af7\u0007W\u0002\u0002",
+ "\u6af7\u6af8\u0007P\u0002\u0002\u6af8\u6af9\u0007V\u0002\u0002\u6af9",
+ "\u6afa\u0007K\u0002\u0002\u6afa\u6afb\u0007N\u0002\u0002\u6afb\u0fca",
+ "\u0003\u0002\u0002\u0002\u6afc\u6afd\u0007W\u0002\u0002\u6afd\u6afe",
+ "\u0007P\u0002\u0002\u6afe\u6aff\u0007W\u0002\u0002\u6aff\u6b00\u0007",
+ "U\u0002\u0002\u6b00\u6b01\u0007C\u0002\u0002\u6b01\u6b02\u0007D\u0002",
+ "\u0002\u6b02\u6b03\u0007N\u0002\u0002\u6b03\u6b04\u0007G\u0002\u0002",
+ "\u6b04\u0fcc\u0003\u0002\u0002\u0002\u6b05\u6b06\u0007W\u0002\u0002",
+ "\u6b06\u6b07\u0007P\u0002\u0002\u6b07\u6b08\u0007W\u0002\u0002\u6b08",
+ "\u6b09\u0007U\u0002\u0002\u6b09\u6b0a\u0007G\u0002\u0002\u6b0a\u6b0b",
+ "\u0007F\u0002\u0002\u6b0b\u0fce\u0003\u0002\u0002\u0002\u6b0c\u6b0d",
+ "\u0007W\u0002\u0002\u6b0d\u6b0e\u0007R\u0002\u0002\u6b0e\u6b0f\u0007",
+ "F\u0002\u0002\u6b0f\u6b10\u0007C\u0002\u0002\u6b10\u6b11\u0007V\u0002",
+ "\u0002\u6b11\u6b12\u0007C\u0002\u0002\u6b12\u6b13\u0007D\u0002\u0002",
+ "\u6b13\u6b14\u0007N\u0002\u0002\u6b14\u6b15\u0007G\u0002\u0002\u6b15",
+ "\u0fd0\u0003\u0002\u0002\u0002\u6b16\u6b17\u0007W\u0002\u0002\u6b17",
+ "\u6b18\u0007R\u0002\u0002\u6b18\u6b19\u0007F\u0002\u0002\u6b19\u6b1a",
+ "\u0007C\u0002\u0002\u6b1a\u6b1b\u0007V\u0002\u0002\u6b1b\u6b1c\u0007",
+ "G\u0002\u0002\u6b1c\u6b1d\u0007F\u0002\u0002\u6b1d\u0fd2\u0003\u0002",
+ "\u0002\u0002\u6b1e\u6b1f\u0007W\u0002\u0002\u6b1f\u6b20\u0007R\u0002",
+ "\u0002\u6b20\u6b21\u0007F\u0002\u0002\u6b21\u6b22\u0007C\u0002\u0002",
+ "\u6b22\u6b23\u0007V\u0002\u0002\u6b23\u6b24\u0007G\u0002\u0002\u6b24",
+ "\u0fd4\u0003\u0002\u0002\u0002\u6b25\u6b26\u0007W\u0002\u0002\u6b26",
+ "\u6b27\u0007R\u0002\u0002\u6b27\u6b28\u0007F\u0002\u0002\u6b28\u6b29",
+ "\u0007C\u0002\u0002\u6b29\u6b2a\u0007V\u0002\u0002\u6b2a\u6b2b\u0007",
+ "G\u0002\u0002\u6b2b\u6b2c\u0007Z\u0002\u0002\u6b2c\u6b2d\u0007O\u0002",
+ "\u0002\u6b2d\u6b2e\u0007N\u0002\u0002\u6b2e\u0fd6\u0003\u0002\u0002",
+ "\u0002\u6b2f\u6b30\u0007W\u0002\u0002\u6b30\u6b31\u0007R\u0002\u0002",
+ "\u6b31\u6b32\u0007F\u0002\u0002\u6b32\u6b33\u0007a\u0002\u0002\u6b33",
+ "\u6b34\u0007K\u0002\u0002\u6b34\u6b35\u0007P\u0002\u0002\u6b35\u6b36",
+ "\u0007F\u0002\u0002\u6b36\u6b37\u0007G\u0002\u0002\u6b37\u6b38\u0007",
+ "Z\u0002\u0002\u6b38\u6b39\u0007G\u0002\u0002\u6b39\u6b3a\u0007U\u0002",
+ "\u0002\u6b3a\u0fd8\u0003\u0002\u0002\u0002\u6b3b\u6b3c\u0007W\u0002",
+ "\u0002\u6b3c\u6b3d\u0007R\u0002\u0002\u6b3d\u6b3e\u0007F\u0002\u0002",
+ "\u6b3e\u6b3f\u0007a\u0002\u0002\u6b3f\u6b40\u0007L\u0002\u0002\u6b40",
+ "\u6b41\u0007Q\u0002\u0002\u6b41\u6b42\u0007K\u0002\u0002\u6b42\u6b43",
+ "\u0007P\u0002\u0002\u6b43\u6b44\u0007K\u0002\u0002\u6b44\u6b45\u0007",
+ "P\u0002\u0002\u6b45\u6b46\u0007F\u0002\u0002\u6b46\u6b47\u0007G\u0002",
+ "\u0002\u6b47\u6b48\u0007Z\u0002\u0002\u6b48\u0fda\u0003\u0002\u0002",
+ "\u0002\u6b49\u6b4a\u0007W\u0002\u0002\u6b4a\u6b4b\u0007R\u0002\u0002",
+ "\u6b4b\u6b4c\u0007I\u0002\u0002\u6b4c\u6b4d\u0007T\u0002\u0002\u6b4d",
+ "\u6b4e\u0007C\u0002\u0002\u6b4e\u6b4f\u0007F\u0002\u0002\u6b4f\u6b50",
+ "\u0007G\u0002\u0002\u6b50\u0fdc\u0003\u0002\u0002\u0002\u6b51\u6b52",
+ "\u0007W\u0002\u0002\u6b52\u6b53\u0007R\u0002\u0002\u6b53\u6b54\u0007",
+ "R\u0002\u0002\u6b54\u6b55\u0007G\u0002\u0002\u6b55\u6b56\u0007T\u0002",
+ "\u0002\u6b56\u0fde\u0003\u0002\u0002\u0002\u6b57\u6b58\u0007W\u0002",
+ "\u0002\u6b58\u6b59\u0007R\u0002\u0002\u6b59\u6b5a\u0007U\u0002\u0002",
+ "\u6b5a\u6b5b\u0007G\u0002\u0002\u6b5b\u6b5c\u0007T\u0002\u0002\u6b5c",
+ "\u6b5d\u0007V\u0002\u0002\u6b5d\u0fe0\u0003\u0002\u0002\u0002\u6b5e",
+ "\u6b5f\u0007W\u0002\u0002\u6b5f\u6b60\u0007T\u0002\u0002\u6b60\u6b61",
+ "\u0007Q\u0002\u0002\u6b61\u6b62\u0007Y\u0002\u0002\u6b62\u6b63\u0007",
+ "K\u0002\u0002\u6b63\u6b64\u0007F\u0002\u0002\u6b64\u0fe2\u0003\u0002",
+ "\u0002\u0002\u6b65\u6b66\u0007W\u0002\u0002\u6b66\u6b67\u0007U\u0002",
+ "\u0002\u6b67\u6b68\u0007C\u0002\u0002\u6b68\u6b69\u0007D\u0002\u0002",
+ "\u6b69\u6b6a\u0007N\u0002\u0002\u6b6a\u6b6b\u0007G\u0002\u0002\u6b6b",
+ "\u0fe4\u0003\u0002\u0002\u0002\u6b6c\u6b6d\u0007W\u0002\u0002\u6b6d",
+ "\u6b6e\u0007U\u0002\u0002\u6b6e\u6b6f\u0007C\u0002\u0002\u6b6f\u6b70",
+ "\u0007I\u0002\u0002\u6b70\u6b71\u0007G\u0002\u0002\u6b71\u0fe6\u0003",
+ "\u0002\u0002\u0002\u6b72\u6b73\u0007W\u0002\u0002\u6b73\u6b74\u0007",
+ "U\u0002\u0002\u6b74\u6b75\u0007G\u0002\u0002\u6b75\u6b76\u0007a\u0002",
+ "\u0002\u6b76\u6b77\u0007C\u0002\u0002\u6b77\u6b78\u0007P\u0002\u0002",
+ "\u6b78\u6b79\u0007V\u0002\u0002\u6b79\u6b7a\u0007K\u0002\u0002\u6b7a",
+ "\u0fe8\u0003\u0002\u0002\u0002\u6b7b\u6b7c\u0007W\u0002\u0002\u6b7c",
+ "\u6b7d\u0007U\u0002\u0002\u6b7d\u6b7e\u0007G\u0002\u0002\u6b7e\u6b7f",
+ "\u0007a\u0002\u0002\u6b7f\u6b80\u0007E\u0002\u0002\u6b80\u6b81\u0007",
+ "Q\u0002\u0002\u6b81\u6b82\u0007P\u0002\u0002\u6b82\u6b83\u0007E\u0002",
+ "\u0002\u6b83\u6b84\u0007C\u0002\u0002\u6b84\u6b85\u0007V\u0002\u0002",
+ "\u6b85\u0fea\u0003\u0002\u0002\u0002\u6b86\u6b87\u0007W\u0002\u0002",
+ "\u6b87\u6b88\u0007U\u0002\u0002\u6b88\u6b89\u0007G\u0002\u0002\u6b89",
+ "\u6b8a\u0007a\u0002\u0002\u6b8a\u6b8b\u0007E\u0002\u0002\u6b8b\u6b8c",
+ "\u0007W\u0002\u0002\u6b8c\u6b8d\u0007D\u0002\u0002\u6b8d\u6b8e\u0007",
+ "G\u0002\u0002\u6b8e\u0fec\u0003\u0002\u0002\u0002\u6b8f\u6b90\u0007",
+ "W\u0002\u0002\u6b90\u6b91\u0007U\u0002\u0002\u6b91\u6b92\u0007G\u0002",
+ "\u0002\u6b92\u6b93\u0007a\u0002\u0002\u6b93\u6b94\u0007J\u0002\u0002",
+ "\u6b94\u6b95\u0007C\u0002\u0002\u6b95\u6b96\u0007U\u0002\u0002\u6b96",
+ "\u6b97\u0007J\u0002\u0002\u6b97\u6b98\u0007a\u0002\u0002\u6b98\u6b99",
+ "\u0007C\u0002\u0002\u6b99\u6b9a\u0007I\u0002\u0002\u6b9a\u6b9b\u0007",
+ "I\u0002\u0002\u6b9b\u6b9c\u0007T\u0002\u0002\u6b9c\u6b9d\u0007G\u0002",
+ "\u0002\u6b9d\u6b9e\u0007I\u0002\u0002\u6b9e\u6b9f\u0007C\u0002\u0002",
+ "\u6b9f\u6ba0\u0007V\u0002\u0002\u6ba0\u6ba1\u0007K\u0002\u0002\u6ba1",
+ "\u6ba2\u0007Q\u0002\u0002\u6ba2\u6ba3\u0007P\u0002\u0002\u6ba3\u0fee",
+ "\u0003\u0002\u0002\u0002\u6ba4\u6ba5\u0007W\u0002\u0002\u6ba5\u6ba6",
+ "\u0007U\u0002\u0002\u6ba6\u6ba7\u0007G\u0002\u0002\u6ba7\u6ba8\u0007",
+ "a\u0002\u0002\u6ba8\u6ba9\u0007J\u0002\u0002\u6ba9\u6baa\u0007C\u0002",
+ "\u0002\u6baa\u6bab\u0007U\u0002\u0002\u6bab\u6bac\u0007J\u0002\u0002",
+ "\u6bac\u6bad\u0007a\u0002\u0002\u6bad\u6bae\u0007I\u0002\u0002\u6bae",
+ "\u6baf\u0007D\u0002\u0002\u6baf\u6bb0\u0007[\u0002\u0002\u6bb0\u6bb1",
+ "\u0007a\u0002\u0002\u6bb1\u6bb2\u0007H\u0002\u0002\u6bb2\u6bb3\u0007",
+ "Q\u0002\u0002\u6bb3\u6bb4\u0007T\u0002\u0002\u6bb4\u6bb5\u0007a\u0002",
+ "\u0002\u6bb5\u6bb6\u0007R\u0002\u0002\u6bb6\u6bb7\u0007W\u0002\u0002",
+ "\u6bb7\u6bb8\u0007U\u0002\u0002\u6bb8\u6bb9\u0007J\u0002\u0002\u6bb9",
+ "\u6bba\u0007F\u0002\u0002\u6bba\u6bbb\u0007Q\u0002\u0002\u6bbb\u6bbc",
+ "\u0007Y\u0002\u0002\u6bbc\u6bbd\u0007P\u0002\u0002\u6bbd\u0ff0\u0003",
+ "\u0002\u0002\u0002\u6bbe\u6bbf\u0007W\u0002\u0002\u6bbf\u6bc0\u0007",
+ "U\u0002\u0002\u6bc0\u6bc1\u0007G\u0002\u0002\u6bc1\u6bc2\u0007a\u0002",
+ "\u0002\u6bc2\u6bc3\u0007J\u0002\u0002\u6bc3\u6bc4\u0007C\u0002\u0002",
+ "\u6bc4\u6bc5\u0007U\u0002\u0002\u6bc5\u6bc6\u0007J\u0002\u0002\u6bc6",
+ "\u0ff2\u0003\u0002\u0002\u0002\u6bc7\u6bc8\u0007W\u0002\u0002\u6bc8",
+ "\u6bc9\u0007U\u0002\u0002\u6bc9\u6bca\u0007G\u0002\u0002\u6bca\u6bcb",
+ "\u0007a\u0002\u0002\u6bcb\u6bcc\u0007J\u0002\u0002\u6bcc\u6bcd\u0007",
+ "K\u0002\u0002\u6bcd\u6bce\u0007F\u0002\u0002\u6bce\u6bcf\u0007F\u0002",
+ "\u0002\u6bcf\u6bd0\u0007G\u0002\u0002\u6bd0\u6bd1\u0007P\u0002\u0002",
+ "\u6bd1\u6bd2\u0007a\u0002\u0002\u6bd2\u6bd3\u0007R\u0002\u0002\u6bd3",
+ "\u6bd4\u0007C\u0002\u0002\u6bd4\u6bd5\u0007T\u0002\u0002\u6bd5\u6bd6",
+ "\u0007V\u0002\u0002\u6bd6\u6bd7\u0007K\u0002\u0002\u6bd7\u6bd8\u0007",
+ "V\u0002\u0002\u6bd8\u6bd9\u0007K\u0002\u0002\u6bd9\u6bda\u0007Q\u0002",
+ "\u0002\u6bda\u6bdb\u0007P\u0002\u0002\u6bdb\u6bdc\u0007U\u0002\u0002",
+ "\u6bdc\u0ff4\u0003\u0002\u0002\u0002\u6bdd\u6bde\u0007W\u0002\u0002",
+ "\u6bde\u6bdf\u0007U\u0002\u0002\u6bdf\u6be0\u0007G\u0002\u0002\u6be0",
+ "\u6be1\u0007a\u0002\u0002\u6be1\u6be2\u0007K\u0002\u0002\u6be2\u6be3",
+ "\u0007P\u0002\u0002\u6be3\u6be4\u0007X\u0002\u0002\u6be4\u6be5\u0007",
+ "K\u0002\u0002\u6be5\u6be6\u0007U\u0002\u0002\u6be6\u6be7\u0007K\u0002",
+ "\u0002\u6be7\u6be8\u0007D\u0002\u0002\u6be8\u6be9\u0007N\u0002\u0002",
+ "\u6be9\u6bea\u0007G\u0002\u0002\u6bea\u6beb\u0007a\u0002\u0002\u6beb",
+ "\u6bec\u0007K\u0002\u0002\u6bec\u6bed\u0007P\u0002\u0002\u6bed\u6bee",
+ "\u0007F\u0002\u0002\u6bee\u6bef\u0007G\u0002\u0002\u6bef\u6bf0\u0007",
+ "Z\u0002\u0002\u6bf0\u6bf1\u0007G\u0002\u0002\u6bf1\u6bf2\u0007U\u0002",
+ "\u0002\u6bf2\u0ff6\u0003\u0002\u0002\u0002\u6bf3\u6bf4\u0007W\u0002",
+ "\u0002\u6bf4\u6bf5\u0007U\u0002\u0002\u6bf5\u6bf6\u0007G\u0002\u0002",
+ "\u6bf6\u6bf7\u0007a\u0002\u0002\u6bf7\u6bf8\u0007O\u0002\u0002\u6bf8",
+ "\u6bf9\u0007G\u0002\u0002\u6bf9\u6bfa\u0007T\u0002\u0002\u6bfa\u6bfb",
+ "\u0007I\u0002\u0002\u6bfb\u6bfc\u0007G\u0002\u0002\u6bfc\u6bfd\u0007",
+ "a\u0002\u0002\u6bfd\u6bfe\u0007E\u0002\u0002\u6bfe\u6bff\u0007C\u0002",
+ "\u0002\u6bff\u6c00\u0007T\u0002\u0002\u6c00\u6c01\u0007V\u0002\u0002",
+ "\u6c01\u6c02\u0007G\u0002\u0002\u6c02\u6c03\u0007U\u0002\u0002\u6c03",
+ "\u6c04\u0007K\u0002\u0002\u6c04\u6c05\u0007C\u0002\u0002\u6c05\u6c06",
+ "\u0007P\u0002\u0002\u6c06\u0ff8\u0003\u0002\u0002\u0002\u6c07\u6c08",
+ "\u0007W\u0002\u0002\u6c08\u6c09\u0007U\u0002\u0002\u6c09\u6c0a\u0007",
+ "G\u0002\u0002\u6c0a\u6c0b\u0007a\u0002\u0002\u6c0b\u6c0c\u0007O\u0002",
+ "\u0002\u6c0c\u6c0d\u0007G\u0002\u0002\u6c0d\u6c0e\u0007T\u0002\u0002",
+ "\u6c0e\u6c0f\u0007I\u0002\u0002\u6c0f\u6c10\u0007G\u0002\u0002\u6c10",
+ "\u0ffa\u0003\u0002\u0002\u0002\u6c11\u6c12\u0007W\u0002\u0002\u6c12",
+ "\u6c13\u0007U\u0002\u0002\u6c13\u6c14\u0007G\u0002\u0002\u6c14\u6c15",
+ "\u0007a\u0002\u0002\u6c15\u6c16\u0007P\u0002\u0002\u6c16\u6c17\u0007",
+ "N\u0002\u0002\u6c17\u0ffc\u0003\u0002\u0002\u0002\u6c18\u6c19\u0007",
+ "W\u0002\u0002\u6c19\u6c1a\u0007U\u0002\u0002\u6c1a\u6c1b\u0007G\u0002",
+ "\u0002\u6c1b\u6c1c\u0007a\u0002\u0002\u6c1c\u6c1d\u0007P\u0002\u0002",
+ "\u6c1d\u6c1e\u0007N\u0002\u0002\u6c1e\u6c1f\u0007a\u0002\u0002\u6c1f",
+ "\u6c20\u0007Y\u0002\u0002\u6c20\u6c21\u0007K\u0002\u0002\u6c21\u6c22",
+ "\u0007V\u0002\u0002\u6c22\u6c23\u0007J\u0002\u0002\u6c23\u6c24\u0007",
+ "a\u0002\u0002\u6c24\u6c25\u0007K\u0002\u0002\u6c25\u6c26\u0007P\u0002",
+ "\u0002\u6c26\u6c27\u0007F\u0002\u0002\u6c27\u6c28\u0007G\u0002\u0002",
+ "\u6c28\u6c29\u0007Z\u0002\u0002\u6c29\u0ffe\u0003\u0002\u0002\u0002",
+ "\u6c2a\u6c2b\u0007W\u0002\u0002\u6c2b\u6c2c\u0007U\u0002\u0002\u6c2c",
+ "\u6c2d\u0007G\u0002\u0002\u6c2d\u6c2e\u0007a\u0002\u0002\u6c2e\u6c2f",
+ "\u0007R\u0002\u0002\u6c2f\u6c30\u0007T\u0002\u0002\u6c30\u6c31\u0007",
+ "K\u0002\u0002\u6c31\u6c32\u0007X\u0002\u0002\u6c32\u6c33\u0007C\u0002",
+ "\u0002\u6c33\u6c34\u0007V\u0002\u0002\u6c34\u6c35\u0007G\u0002\u0002",
+ "\u6c35\u6c36\u0007a\u0002\u0002\u6c36\u6c37\u0007Q\u0002\u0002\u6c37",
+ "\u6c38\u0007W\u0002\u0002\u6c38\u6c39\u0007V\u0002\u0002\u6c39\u6c3a",
+ "\u0007N\u0002\u0002\u6c3a\u6c3b\u0007K\u0002\u0002\u6c3b\u6c3c\u0007",
+ "P\u0002\u0002\u6c3c\u6c3d\u0007G\u0002\u0002\u6c3d\u6c3e\u0007U\u0002",
+ "\u0002\u6c3e\u1000\u0003\u0002\u0002\u0002\u6c3f\u6c40\u0007W\u0002",
+ "\u0002\u6c40\u6c41\u0007U\u0002\u0002\u6c41\u6c42\u0007G\u0002\u0002",
+ "\u6c42\u6c43\u0007T\u0002\u0002\u6c43\u6c44\u0007a\u0002\u0002\u6c44",
+ "\u6c45\u0007F\u0002\u0002\u6c45\u6c46\u0007C\u0002\u0002\u6c46\u6c47",
+ "\u0007V\u0002\u0002\u6c47\u6c48\u0007C\u0002\u0002\u6c48\u1002\u0003",
+ "\u0002\u0002\u0002\u6c49\u6c4a\u0007W\u0002\u0002\u6c4a\u6c4b\u0007",
+ "U\u0002\u0002\u6c4b\u6c4c\u0007G\u0002\u0002\u6c4c\u6c4d\u0007T\u0002",
+ "\u0002\u6c4d\u6c4e\u0007a\u0002\u0002\u6c4e\u6c4f\u0007F\u0002\u0002",
+ "\u6c4f\u6c50\u0007G\u0002\u0002\u6c50\u6c51\u0007H\u0002\u0002\u6c51",
+ "\u6c52\u0007K\u0002\u0002\u6c52\u6c53\u0007P\u0002\u0002\u6c53\u6c54",
+ "\u0007G\u0002\u0002\u6c54\u6c55\u0007F\u0002\u0002\u6c55\u1004\u0003",
+ "\u0002\u0002\u0002\u6c56\u6c57\u0007W\u0002\u0002\u6c57\u6c58\u0007",
+ "U\u0002\u0002\u6c58\u6c59\u0007G\u0002\u0002\u6c59\u6c5a\u0007T\u0002",
+ "\u0002\u6c5a\u6c5b\u0007G\u0002\u0002\u6c5b\u6c5c\u0007P\u0002\u0002",
+ "\u6c5c\u6c5d\u0007X\u0002\u0002\u6c5d\u1006\u0003\u0002\u0002\u0002",
+ "\u6c5e\u6c5f\u0007W\u0002\u0002\u6c5f\u6c60\u0007U\u0002\u0002\u6c60",
+ "\u6c61\u0007G\u0002\u0002\u6c61\u6c62\u0007T\u0002\u0002\u6c62\u6c63",
+ "\u0007I\u0002\u0002\u6c63\u6c64\u0007T\u0002\u0002\u6c64\u6c65\u0007",
+ "Q\u0002\u0002\u6c65\u6c66\u0007W\u0002\u0002\u6c66\u6c67\u0007R\u0002",
+ "\u0002\u6c67\u1008\u0003\u0002\u0002\u0002\u6c68\u6c69\u0007W\u0002",
+ "\u0002\u6c69\u6c6a\u0007U\u0002\u0002\u6c6a\u6c6b\u0007G\u0002\u0002",
+ "\u6c6b\u6c6c\u0007T\u0002\u0002\u6c6c\u6c6d\u0007a\u0002\u0002\u6c6d",
+ "\u6c6e\u0007T\u0002\u0002\u6c6e\u6c6f\u0007G\u0002\u0002\u6c6f\u6c70",
+ "\u0007E\u0002\u0002\u6c70\u6c71\u0007[\u0002\u0002\u6c71\u6c72\u0007",
+ "E\u0002\u0002\u6c72\u6c73\u0007N\u0002\u0002\u6c73\u6c74\u0007G\u0002",
+ "\u0002\u6c74\u6c75\u0007D\u0002\u0002\u6c75\u6c76\u0007K\u0002\u0002",
+ "\u6c76\u6c77\u0007P\u0002\u0002\u6c77\u100a\u0003\u0002\u0002\u0002",
+ "\u6c78\u6c79\u0007W\u0002\u0002\u6c79\u6c7a\u0007U\u0002\u0002\u6c7a",
+ "\u6c7b\u0007G\u0002\u0002\u6c7b\u6c7c\u0007T\u0002\u0002\u6c7c\u6c7d",
+ "\u0007U\u0002\u0002\u6c7d\u100c\u0003\u0002\u0002\u0002\u6c7e\u6c7f",
+ "\u0007W\u0002\u0002\u6c7f\u6c80\u0007U\u0002\u0002\u6c80\u6c81\u0007",
+ "G\u0002\u0002\u6c81\u6c82\u0007T\u0002\u0002\u6c82\u6c83\u0007a\u0002",
+ "\u0002\u6c83\u6c84\u0007V\u0002\u0002\u6c84\u6c85\u0007C\u0002\u0002",
+ "\u6c85\u6c86\u0007D\u0002\u0002\u6c86\u6c87\u0007N\u0002\u0002\u6c87",
+ "\u6c88\u0007G\u0002\u0002\u6c88\u6c89\u0007U\u0002\u0002\u6c89\u6c8a",
+ "\u0007R\u0002\u0002\u6c8a\u6c8b\u0007C\u0002\u0002\u6c8b\u6c8c\u0007",
+ "E\u0002\u0002\u6c8c\u6c8d\u0007G\u0002\u0002\u6c8d\u6c8e\u0007U\u0002",
+ "\u0002\u6c8e\u100e\u0003\u0002\u0002\u0002\u6c8f\u6c90\u0007W\u0002",
+ "\u0002\u6c90\u6c91\u0007U\u0002\u0002\u6c91\u6c92\u0007G\u0002\u0002",
+ "\u6c92\u6c93\u0007T\u0002\u0002\u6c93\u1010\u0003\u0002\u0002\u0002",
+ "\u6c94\u6c95\u0007W\u0002\u0002\u6c95\u6c96\u0007U\u0002\u0002\u6c96",
+ "\u6c97\u0007G\u0002\u0002\u6c97\u6c98\u0007a\u0002\u0002\u6c98\u6c99",
+ "\u0007U\u0002\u0002\u6c99\u6c9a\u0007G\u0002\u0002\u6c9a\u6c9b\u0007",
+ "O\u0002\u0002\u6c9b\u6c9c\u0007K\u0002\u0002\u6c9c\u1012\u0003\u0002",
+ "\u0002\u0002\u6c9d\u6c9e\u0007W\u0002\u0002\u6c9e\u6c9f\u0007U\u0002",
+ "\u0002\u6c9f\u6ca0\u0007G\u0002\u0002\u6ca0\u6ca1\u0007a\u0002\u0002",
+ "\u6ca1\u6ca2\u0007U\u0002\u0002\u6ca2\u6ca3\u0007V\u0002\u0002\u6ca3",
+ "\u6ca4\u0007Q\u0002\u0002\u6ca4\u6ca5\u0007T\u0002\u0002\u6ca5\u6ca6",
+ "\u0007G\u0002\u0002\u6ca6\u6ca7\u0007F\u0002\u0002\u6ca7\u6ca8\u0007",
+ "a\u0002\u0002\u6ca8\u6ca9\u0007Q\u0002\u0002\u6ca9\u6caa\u0007W\u0002",
+ "\u0002\u6caa\u6cab\u0007V\u0002\u0002\u6cab\u6cac\u0007N\u0002\u0002",
+ "\u6cac\u6cad\u0007K\u0002\u0002\u6cad\u6cae\u0007P\u0002\u0002\u6cae",
+ "\u6caf\u0007G\u0002\u0002\u6caf\u6cb0\u0007U\u0002\u0002\u6cb0\u1014",
+ "\u0003\u0002\u0002\u0002\u6cb1\u6cb2\u0007W\u0002\u0002\u6cb2\u6cb3",
+ "\u0007U\u0002\u0002\u6cb3\u6cb4\u0007G\u0002\u0002\u6cb4\u6cb5\u0007",
+ "a\u0002\u0002\u6cb5\u6cb6\u0007V\u0002\u0002\u6cb6\u6cb7\u0007V\u0002",
+ "\u0002\u6cb7\u6cb8\u0007V\u0002\u0002\u6cb8\u6cb9\u0007a\u0002\u0002",
+ "\u6cb9\u6cba\u0007H\u0002\u0002\u6cba\u6cbb\u0007Q\u0002\u0002\u6cbb",
+ "\u6cbc\u0007T\u0002\u0002\u6cbc\u6cbd\u0007a\u0002\u0002\u6cbd\u6cbe",
+ "\u0007I\u0002\u0002\u6cbe\u6cbf\u0007U\u0002\u0002\u6cbf\u6cc0\u0007",
+ "G\u0002\u0002\u6cc0\u6cc1\u0007V\u0002\u0002\u6cc1\u6cc2\u0007U\u0002",
+ "\u0002\u6cc2\u1016\u0003\u0002\u0002\u0002\u6cc3\u6cc4\u0007W\u0002",
+ "\u0002\u6cc4\u6cc5\u0007U\u0002\u0002\u6cc5\u6cc6\u0007G\u0002\u0002",
+ "\u6cc6\u1018\u0003\u0002\u0002\u0002\u6cc7\u6cc8\u0007W\u0002\u0002",
+ "\u6cc8\u6cc9\u0007U\u0002\u0002\u6cc9\u6cca\u0007G\u0002\u0002\u6cca",
+ "\u6ccb\u0007a\u0002\u0002\u6ccb\u6ccc\u0007X\u0002\u0002\u6ccc\u6ccd",
+ "\u0007G\u0002\u0002\u6ccd\u6cce\u0007E\u0002\u0002\u6cce\u6ccf\u0007",
+ "V\u0002\u0002\u6ccf\u6cd0\u0007Q\u0002\u0002\u6cd0\u6cd1\u0007T\u0002",
+ "\u0002\u6cd1\u6cd2\u0007a\u0002\u0002\u6cd2\u6cd3\u0007C\u0002\u0002",
+ "\u6cd3\u6cd4\u0007I\u0002\u0002\u6cd4\u6cd5\u0007I\u0002\u0002\u6cd5",
+ "\u6cd6\u0007T\u0002\u0002\u6cd6\u6cd7\u0007G\u0002\u0002\u6cd7\u6cd8",
+ "\u0007I\u0002\u0002\u6cd8\u6cd9\u0007C\u0002\u0002\u6cd9\u6cda\u0007",
+ "V\u0002\u0002\u6cda\u6cdb\u0007K\u0002\u0002\u6cdb\u6cdc\u0007Q\u0002",
+ "\u0002\u6cdc\u6cdd\u0007P\u0002\u0002\u6cdd\u101a\u0003\u0002\u0002",
+ "\u0002\u6cde\u6cdf\u0007W\u0002\u0002\u6cdf\u6ce0\u0007U\u0002\u0002",
+ "\u6ce0\u6ce1\u0007G\u0002\u0002\u6ce1\u6ce2\u0007a\u0002\u0002\u6ce2",
+ "\u6ce3\u0007Y\u0002\u0002\u6ce3\u6ce4\u0007G\u0002\u0002\u6ce4\u6ce5",
+ "\u0007C\u0002\u0002\u6ce5\u6ce6\u0007M\u0002\u0002\u6ce6\u6ce7\u0007",
+ "a\u0002\u0002\u6ce7\u6ce8\u0007P\u0002\u0002\u6ce8\u6ce9\u0007C\u0002",
+ "\u0002\u6ce9\u6cea\u0007O\u0002\u0002\u6cea\u6ceb\u0007G\u0002\u0002",
+ "\u6ceb\u6cec\u0007a\u0002\u0002\u6cec\u6ced\u0007T\u0002\u0002\u6ced",
+ "\u6cee\u0007G\u0002\u0002\u6cee\u6cef\u0007U\u0002\u0002\u6cef\u6cf0",
+ "\u0007N\u0002\u0002\u6cf0\u101c\u0003\u0002\u0002\u0002\u6cf1\u6cf2",
+ "\u0007W\u0002\u0002\u6cf2\u6cf3\u0007U\u0002\u0002\u6cf3\u6cf4\u0007",
+ "K\u0002\u0002\u6cf4\u6cf5\u0007P\u0002\u0002\u6cf5\u6cf6\u0007I\u0002",
+ "\u0002\u6cf6\u6cf7\u0007a\u0002\u0002\u6cf7\u6cf8\u0007P\u0002\u0002",
+ "\u6cf8\u6cf9\u0007Q\u0002\u0002\u6cf9\u6cfa\u0007a\u0002\u0002\u6cfa",
+ "\u6cfb\u0007G\u0002\u0002\u6cfb\u6cfc\u0007Z\u0002\u0002\u6cfc\u6cfd",
+ "\u0007R\u0002\u0002\u6cfd\u6cfe\u0007C\u0002\u0002\u6cfe\u6cff\u0007",
+ "P\u0002\u0002\u6cff\u6d00\u0007F\u0002\u0002\u6d00\u101e\u0003\u0002",
+ "\u0002\u0002\u6d01\u6d02\u0007W\u0002\u0002\u6d02\u6d03\u0007U\u0002",
+ "\u0002\u6d03\u6d04\u0007K\u0002\u0002\u6d04\u6d05\u0007P\u0002\u0002",
+ "\u6d05\u6d06\u0007I\u0002\u0002\u6d06\u1020\u0003\u0002\u0002\u0002",
+ "\u6d07\u6d08\u0007W\u0002\u0002\u6d08\u6d09\u0007V\u0002\u0002\u6d09",
+ "\u6d0a\u0007H\u0002\u0002\u6d0a\u6d0b\u00073\u0002\u0002\u6d0b\u6d0c",
+ "\u00078\u0002\u0002\u6d0c\u6d0d\u0007D\u0002\u0002\u6d0d\u6d0e\u0007",
+ "G\u0002\u0002\u6d0e\u1022\u0003\u0002\u0002\u0002\u6d0f\u6d10\u0007",
+ "W\u0002\u0002\u6d10\u6d11\u0007V\u0002\u0002\u6d11\u6d12\u0007H\u0002",
+ "\u0002\u6d12\u6d13\u00073\u0002\u0002\u6d13\u6d14\u00078\u0002\u0002",
+ "\u6d14\u6d15\u0007N\u0002\u0002\u6d15\u6d16\u0007G\u0002\u0002\u6d16",
+ "\u1024\u0003\u0002\u0002\u0002\u6d17\u6d18\u0007W\u0002\u0002\u6d18",
+ "\u6d19\u0007V\u0002\u0002\u6d19\u6d1a\u0007H\u0002\u0002\u6d1a\u6d1b",
+ "\u00075\u0002\u0002\u6d1b\u6d1c\u00074\u0002\u0002\u6d1c\u1026\u0003",
+ "\u0002\u0002\u0002\u6d1d\u6d1e\u0007W\u0002\u0002\u6d1e\u6d1f\u0007",
+ "V\u0002\u0002\u6d1f\u6d20\u0007H\u0002\u0002\u6d20\u6d21\u0007:\u0002",
+ "\u0002\u6d21\u1028\u0003\u0002\u0002\u0002\u6d22\u6d23\u0007X\u0002",
+ "\u0002\u6d23\u6d24\u00073\u0002\u0002\u6d24\u102a\u0003\u0002\u0002",
+ "\u0002\u6d25\u6d26\u0007X\u0002\u0002\u6d26\u6d27\u00074\u0002\u0002",
+ "\u6d27\u102c\u0003\u0002\u0002\u0002\u6d28\u6d29\u0007X\u0002\u0002",
+ "\u6d29\u6d2a\u0007C\u0002\u0002\u6d2a\u6d2b\u0007N\u0002\u0002\u6d2b",
+ "\u6d2c\u0007K\u0002\u0002\u6d2c\u6d2d\u0007F\u0002\u0002\u6d2d\u6d2e",
+ "\u0007C\u0002\u0002\u6d2e\u6d2f\u0007V\u0002\u0002\u6d2f\u6d30\u0007",
+ "G\u0002\u0002\u6d30\u102e\u0003\u0002\u0002\u0002\u6d31\u6d32\u0007",
+ "X\u0002\u0002\u6d32\u6d33\u0007C\u0002\u0002\u6d33\u6d34\u0007N\u0002",
+ "\u0002\u6d34\u6d35\u0007K\u0002\u0002\u6d35\u6d36\u0007F\u0002\u0002",
+ "\u6d36\u6d37\u0007C\u0002\u0002\u6d37\u6d38\u0007V\u0002\u0002\u6d38",
+ "\u6d39\u0007K\u0002\u0002\u6d39\u6d3a\u0007Q\u0002\u0002\u6d3a\u6d3b",
+ "\u0007P\u0002\u0002\u6d3b\u1030\u0003\u0002\u0002\u0002\u6d3c\u6d3d",
+ "\u0007X\u0002\u0002\u6d3d\u6d3e\u0007C\u0002\u0002\u6d3e\u6d3f\u0007",
+ "N\u0002\u0002\u6d3f\u6d40\u0007K\u0002\u0002\u6d40\u6d41\u0007F\u0002",
+ "\u0002\u6d41\u6d42\u0007a\u0002\u0002\u6d42\u6d43\u0007V\u0002\u0002",
+ "\u6d43\u6d44\u0007K\u0002\u0002\u6d44\u6d45\u0007O\u0002\u0002\u6d45",
+ "\u6d46\u0007G\u0002\u0002\u6d46\u6d47\u0007a\u0002\u0002\u6d47\u6d48",
+ "\u0007G\u0002\u0002\u6d48\u6d49\u0007P\u0002\u0002\u6d49\u6d4a\u0007",
+ "F\u0002\u0002\u6d4a\u1032\u0003\u0002\u0002\u0002\u6d4b\u6d4c\u0007",
+ "X\u0002\u0002\u6d4c\u6d4d\u0007C\u0002\u0002\u6d4d\u6d4e\u0007N\u0002",
+ "\u0002\u6d4e\u6d4f\u0007W\u0002\u0002\u6d4f\u6d50\u0007G\u0002\u0002",
+ "\u6d50\u6d51\u0007U\u0002\u0002\u6d51\u1034\u0003\u0002\u0002\u0002",
+ "\u6d52\u6d53\u0007X\u0002\u0002\u6d53\u6d54\u0007C\u0002\u0002\u6d54",
+ "\u6d55\u0007N\u0002\u0002\u6d55\u6d56\u0007W\u0002\u0002\u6d56\u6d57",
+ "\u0007G\u0002\u0002\u6d57\u1036\u0003\u0002\u0002\u0002\u6d58\u6d59",
+ "\u0007X\u0002\u0002\u6d59\u6d5a\u0007C\u0002\u0002\u6d5a\u6d5b\u0007",
+ "T\u0002\u0002\u6d5b\u6d5c\u0007E\u0002\u0002\u6d5c\u6d5d\u0007J\u0002",
+ "\u0002\u6d5d\u6d5e\u0007C\u0002\u0002\u6d5e\u6d5f\u0007T\u0002\u0002",
+ "\u6d5f\u6d60\u00074\u0002\u0002\u6d60\u1038\u0003\u0002\u0002\u0002",
+ "\u6d61\u6d62\u0007X\u0002\u0002\u6d62\u6d63\u0007C\u0002\u0002\u6d63",
+ "\u6d64\u0007T\u0002\u0002\u6d64\u6d65\u0007E\u0002\u0002\u6d65\u6d66",
+ "\u0007J\u0002\u0002\u6d66\u6d67\u0007C\u0002\u0002\u6d67\u6d68\u0007",
+ "T\u0002\u0002\u6d68\u103a\u0003\u0002\u0002\u0002\u6d69\u6d6a\u0007",
+ "X\u0002\u0002\u6d6a\u6d6b\u0007C\u0002\u0002\u6d6b\u6d6c\u0007T\u0002",
+ "\u0002\u6d6c\u6d6d\u0007K\u0002\u0002\u6d6d\u6d6e\u0007C\u0002\u0002",
+ "\u6d6e\u6d6f\u0007D\u0002\u0002\u6d6f\u6d70\u0007N\u0002\u0002\u6d70",
+ "\u6d71\u0007G\u0002\u0002\u6d71\u103c\u0003\u0002\u0002\u0002\u6d72",
+ "\u6d73\u0007X\u0002\u0002\u6d73\u6d74\u0007C\u0002\u0002\u6d74\u6d75",
+ "\u0007T\u0002\u0002\u6d75\u6d76\u0007a\u0002\u0002\u6d76\u6d77\u0007",
+ "R\u0002\u0002\u6d77\u6d78\u0007Q\u0002\u0002\u6d78\u6d79\u0007R\u0002",
+ "\u0002\u6d79\u103e\u0003\u0002\u0002\u0002\u6d7a\u6d7b\u0007X\u0002",
+ "\u0002\u6d7b\u6d7c\u0007C\u0002\u0002\u6d7c\u6d7d\u0007T\u0002\u0002",
+ "\u6d7d\u6d7e\u0007T\u0002\u0002\u6d7e\u6d7f\u0007C\u0002\u0002\u6d7f",
+ "\u6d80\u0007[\u0002\u0002\u6d80\u6d81\u0007U\u0002\u0002\u6d81\u1040",
+ "\u0003\u0002\u0002\u0002\u6d82\u6d83\u0007X\u0002\u0002\u6d83\u6d84",
+ "\u0007C\u0002\u0002\u6d84\u6d85\u0007T\u0002\u0002\u6d85\u6d86\u0007",
+ "T\u0002\u0002\u6d86\u6d87\u0007C\u0002\u0002\u6d87\u6d88\u0007[\u0002",
+ "\u0002\u6d88\u1042\u0003\u0002\u0002\u0002\u6d89\u6d8a\u0007X\u0002",
+ "\u0002\u6d8a\u6d8b\u0007C\u0002\u0002\u6d8b\u6d8c\u0007T\u0002\u0002",
+ "\u6d8c\u6d8d\u0007a\u0002\u0002\u6d8d\u6d8e\u0007U\u0002\u0002\u6d8e",
+ "\u6d8f\u0007C\u0002\u0002\u6d8f\u6d90\u0007O\u0002\u0002\u6d90\u6d91",
+ "\u0007R\u0002\u0002\u6d91\u1044\u0003\u0002\u0002\u0002\u6d92\u6d93",
+ "\u0007X\u0002\u0002\u6d93\u6d94\u0007C\u0002\u0002\u6d94\u6d95\u0007",
+ "T\u0002\u0002\u6d95\u6d96\u0007[\u0002\u0002\u6d96\u6d97\u0007K\u0002",
+ "\u0002\u6d97\u6d98\u0007P\u0002\u0002\u6d98\u6d99\u0007I\u0002\u0002",
+ "\u6d99\u1046\u0003\u0002\u0002\u0002\u6d9a\u6d9b\u0007X\u0002\u0002",
+ "\u6d9b\u6d9c\u0007G\u0002\u0002\u6d9c\u6d9d\u0007E\u0002\u0002\u6d9d",
+ "\u6d9e\u0007V\u0002\u0002\u6d9e\u6d9f\u0007Q\u0002\u0002\u6d9f\u6da0",
+ "\u0007T\u0002\u0002\u6da0\u6da1\u0007a\u0002\u0002\u6da1\u6da2\u0007",
+ "T\u0002\u0002\u6da2\u6da3\u0007G\u0002\u0002\u6da3\u6da4\u0007C\u0002",
+ "\u0002\u6da4\u6da5\u0007F\u0002\u0002\u6da5\u6da6\u0007a\u0002\u0002",
+ "\u6da6\u6da7\u0007V\u0002\u0002\u6da7\u6da8\u0007T\u0002\u0002\u6da8",
+ "\u6da9\u0007C\u0002\u0002\u6da9\u6daa\u0007E\u0002\u0002\u6daa\u6dab",
+ "\u0007G\u0002\u0002\u6dab\u1048\u0003\u0002\u0002\u0002\u6dac\u6dad",
+ "\u0007X\u0002\u0002\u6dad\u6dae\u0007G\u0002\u0002\u6dae\u6daf\u0007",
+ "E\u0002\u0002\u6daf\u6db0\u0007V\u0002\u0002\u6db0\u6db1\u0007Q\u0002",
+ "\u0002\u6db1\u6db2\u0007T\u0002\u0002\u6db2\u6db3\u0007a\u0002\u0002",
+ "\u6db3\u6db4\u0007T\u0002\u0002\u6db4\u6db5\u0007G\u0002\u0002\u6db5",
+ "\u6db6\u0007C\u0002\u0002\u6db6\u6db7\u0007F\u0002\u0002\u6db7\u104a",
+ "\u0003\u0002\u0002\u0002\u6db8\u6db9\u0007X\u0002\u0002\u6db9\u6dba",
+ "\u0007G\u0002\u0002\u6dba\u6dbb\u0007E\u0002\u0002\u6dbb\u6dbc\u0007",
+ "V\u0002\u0002\u6dbc\u6dbd\u0007Q\u0002\u0002\u6dbd\u6dbe\u0007T\u0002",
+ "\u0002\u6dbe\u6dbf\u0007a\u0002\u0002\u6dbf\u6dc0\u0007V\u0002\u0002",
+ "\u6dc0\u6dc1\u0007T\u0002\u0002\u6dc1\u6dc2\u0007C\u0002\u0002\u6dc2",
+ "\u6dc3\u0007P\u0002\u0002\u6dc3\u6dc4\u0007U\u0002\u0002\u6dc4\u6dc5",
+ "\u0007H\u0002\u0002\u6dc5\u6dc6\u0007Q\u0002\u0002\u6dc6\u6dc7\u0007",
+ "T\u0002\u0002\u6dc7\u6dc8\u0007O\u0002\u0002\u6dc8\u6dc9\u0007a\u0002",
+ "\u0002\u6dc9\u6dca\u0007F\u0002\u0002\u6dca\u6dcb\u0007K\u0002\u0002",
+ "\u6dcb\u6dcc\u0007O\u0002\u0002\u6dcc\u6dcd\u0007U\u0002\u0002\u6dcd",
+ "\u104c\u0003\u0002\u0002\u0002\u6dce\u6dcf\u0007X\u0002\u0002\u6dcf",
+ "\u6dd0\u0007G\u0002\u0002\u6dd0\u6dd1\u0007E\u0002\u0002\u6dd1\u6dd2",
+ "\u0007V\u0002\u0002\u6dd2\u6dd3\u0007Q\u0002\u0002\u6dd3\u6dd4\u0007",
+ "T\u0002\u0002\u6dd4\u6dd5\u0007a\u0002\u0002\u6dd5\u6dd6\u0007V\u0002",
+ "\u0002\u6dd6\u6dd7\u0007T\u0002\u0002\u6dd7\u6dd8\u0007C\u0002\u0002",
+ "\u6dd8\u6dd9\u0007P\u0002\u0002\u6dd9\u6dda\u0007U\u0002\u0002\u6dda",
+ "\u6ddb\u0007H\u0002\u0002\u6ddb\u6ddc\u0007Q\u0002\u0002\u6ddc\u6ddd",
+ "\u0007T\u0002\u0002\u6ddd\u6dde\u0007O\u0002\u0002\u6dde\u6ddf\u0007",
+ "a\u0002\u0002\u6ddf\u6de0\u0007H\u0002\u0002\u6de0\u6de1\u0007C\u0002",
+ "\u0002\u6de1\u6de2\u0007E\u0002\u0002\u6de2\u6de3\u0007V\u0002\u0002",
+ "\u6de3\u104e\u0003\u0002\u0002\u0002\u6de4\u6de5\u0007X\u0002\u0002",
+ "\u6de5\u6de6\u0007G\u0002\u0002\u6de6\u6de7\u0007E\u0002\u0002\u6de7",
+ "\u6de8\u0007V\u0002\u0002\u6de8\u6de9\u0007Q\u0002\u0002\u6de9\u6dea",
+ "\u0007T\u0002\u0002\u6dea\u6deb\u0007a\u0002\u0002\u6deb\u6dec\u0007",
+ "V\u0002\u0002\u6dec\u6ded\u0007T\u0002\u0002\u6ded\u6dee\u0007C\u0002",
+ "\u0002\u6dee\u6def\u0007P\u0002\u0002\u6def\u6df0\u0007U\u0002\u0002",
+ "\u6df0\u6df1\u0007H\u0002\u0002\u6df1\u6df2\u0007Q\u0002\u0002\u6df2",
+ "\u6df3\u0007T\u0002\u0002\u6df3\u6df4\u0007O\u0002\u0002\u6df4\u1050",
+ "\u0003\u0002\u0002\u0002\u6df5\u6df6\u0007X\u0002\u0002\u6df6\u6df7",
+ "\u0007G\u0002\u0002\u6df7\u6df8\u0007T\u0002\u0002\u6df8\u6df9\u0007",
+ "K\u0002\u0002\u6df9\u6dfa\u0007H\u0002\u0002\u6dfa\u6dfb\u0007K\u0002",
+ "\u0002\u6dfb\u6dfc\u0007G\u0002\u0002\u6dfc\u6dfd\u0007T\u0002\u0002",
+ "\u6dfd\u1052\u0003\u0002\u0002\u0002\u6dfe\u6dff\u0007X\u0002\u0002",
+ "\u6dff\u6e00\u0007G\u0002\u0002\u6e00\u6e01\u0007T\u0002\u0002\u6e01",
+ "\u6e02\u0007K\u0002\u0002\u6e02\u6e03\u0007H\u0002\u0002\u6e03\u6e04",
+ "\u0007[\u0002\u0002\u6e04\u1054\u0003\u0002\u0002\u0002\u6e05\u6e06",
+ "\u0007X\u0002\u0002\u6e06\u6e07\u0007G\u0002\u0002\u6e07\u6e08\u0007",
+ "T\u0002\u0002\u6e08\u6e09\u0007U\u0002\u0002\u6e09\u6e0a\u0007K\u0002",
+ "\u0002\u6e0a\u6e0b\u0007Q\u0002\u0002\u6e0b\u6e0c\u0007P\u0002\u0002",
+ "\u6e0c\u6e0d\u0007K\u0002\u0002\u6e0d\u6e0e\u0007P\u0002\u0002\u6e0e",
+ "\u6e0f\u0007I\u0002\u0002\u6e0f\u1056\u0003\u0002\u0002\u0002\u6e10",
+ "\u6e11\u0007X\u0002\u0002\u6e11\u6e12\u0007G\u0002\u0002\u6e12\u6e13",
+ "\u0007T\u0002\u0002\u6e13\u6e14\u0007U\u0002\u0002\u6e14\u6e15\u0007",
+ "K\u0002\u0002\u6e15\u6e16\u0007Q\u0002\u0002\u6e16\u6e17\u0007P\u0002",
+ "\u0002\u6e17\u6e18\u0007U\u0002\u0002\u6e18\u6e19\u0007a\u0002\u0002",
+ "\u6e19\u6e1a\u0007G\u0002\u0002\u6e1a\u6e1b\u0007P\u0002\u0002\u6e1b",
+ "\u6e1c\u0007F\u0002\u0002\u6e1c\u6e1d\u0007U\u0002\u0002\u6e1d\u6e1e",
+ "\u0007E\u0002\u0002\u6e1e\u6e1f\u0007P\u0002\u0002\u6e1f\u1058\u0003",
+ "\u0002\u0002\u0002\u6e20\u6e21\u0007X\u0002\u0002\u6e21\u6e22\u0007",
+ "G\u0002\u0002\u6e22\u6e23\u0007T\u0002\u0002\u6e23\u6e24\u0007U\u0002",
+ "\u0002\u6e24\u6e25\u0007K\u0002\u0002\u6e25\u6e26\u0007Q\u0002\u0002",
+ "\u6e26\u6e27\u0007P\u0002\u0002\u6e27\u6e28\u0007U\u0002\u0002\u6e28",
+ "\u6e29\u0007a\u0002\u0002\u6e29\u6e2a\u0007G\u0002\u0002\u6e2a\u6e2b",
+ "\u0007P\u0002\u0002\u6e2b\u6e2c\u0007F\u0002\u0002\u6e2c\u6e2d\u0007",
+ "V\u0002\u0002\u6e2d\u6e2e\u0007K\u0002\u0002\u6e2e\u6e2f\u0007O\u0002",
+ "\u0002\u6e2f\u6e30\u0007G\u0002\u0002\u6e30\u105a\u0003\u0002\u0002",
+ "\u0002\u6e31\u6e32\u0007X\u0002\u0002\u6e32\u6e33\u0007G\u0002\u0002",
+ "\u6e33\u6e34\u0007T\u0002\u0002\u6e34\u6e35\u0007U\u0002\u0002\u6e35",
+ "\u6e36\u0007K\u0002\u0002\u6e36\u6e37\u0007Q\u0002\u0002\u6e37\u6e38",
+ "\u0007P\u0002\u0002\u6e38\u6e39\u0007U\u0002\u0002\u6e39\u6e3a\u0007",
+ "a\u0002\u0002\u6e3a\u6e3b\u0007Q\u0002\u0002\u6e3b\u6e3c\u0007R\u0002",
+ "\u0002\u6e3c\u6e3d\u0007G\u0002\u0002\u6e3d\u6e3e\u0007T\u0002\u0002",
+ "\u6e3e\u6e3f\u0007C\u0002\u0002\u6e3f\u6e40\u0007V\u0002\u0002\u6e40",
+ "\u6e41\u0007K\u0002\u0002\u6e41\u6e42\u0007Q\u0002\u0002\u6e42\u6e43",
+ "\u0007P\u0002\u0002\u6e43\u105c\u0003\u0002\u0002\u0002\u6e44\u6e45",
+ "\u0007X\u0002\u0002\u6e45\u6e46\u0007G\u0002\u0002\u6e46\u6e47\u0007",
+ "T\u0002\u0002\u6e47\u6e48\u0007U\u0002\u0002\u6e48\u6e49\u0007K\u0002",
+ "\u0002\u6e49\u6e4a\u0007Q\u0002\u0002\u6e4a\u6e4b\u0007P\u0002\u0002",
+ "\u6e4b\u6e4c\u0007U\u0002\u0002\u6e4c\u6e4d\u0007a\u0002\u0002\u6e4d",
+ "\u6e4e\u0007U\u0002\u0002\u6e4e\u6e4f\u0007V\u0002\u0002\u6e4f\u6e50",
+ "\u0007C\u0002\u0002\u6e50\u6e51\u0007T\u0002\u0002\u6e51\u6e52\u0007",
+ "V\u0002\u0002\u6e52\u6e53\u0007U\u0002\u0002\u6e53\u6e54\u0007E\u0002",
+ "\u0002\u6e54\u6e55\u0007P\u0002\u0002\u6e55\u105e\u0003\u0002\u0002",
+ "\u0002\u6e56\u6e57\u0007X\u0002\u0002\u6e57\u6e58\u0007G\u0002\u0002",
+ "\u6e58\u6e59\u0007T\u0002\u0002\u6e59\u6e5a\u0007U\u0002\u0002\u6e5a",
+ "\u6e5b\u0007K\u0002\u0002\u6e5b\u6e5c\u0007Q\u0002\u0002\u6e5c\u6e5d",
+ "\u0007P\u0002\u0002\u6e5d\u6e5e\u0007U\u0002\u0002\u6e5e\u6e5f\u0007",
+ "a\u0002\u0002\u6e5f\u6e60\u0007U\u0002\u0002\u6e60\u6e61\u0007V\u0002",
+ "\u0002\u6e61\u6e62\u0007C\u0002\u0002\u6e62\u6e63\u0007T\u0002\u0002",
+ "\u6e63\u6e64\u0007V\u0002\u0002\u6e64\u6e65\u0007V\u0002\u0002\u6e65",
+ "\u6e66\u0007K\u0002\u0002\u6e66\u6e67\u0007O\u0002\u0002\u6e67\u6e68",
+ "\u0007G\u0002\u0002\u6e68\u1060\u0003\u0002\u0002\u0002\u6e69\u6e6a",
+ "\u0007X\u0002\u0002\u6e6a\u6e6b\u0007G\u0002\u0002\u6e6b\u6e6c\u0007",
+ "T\u0002\u0002\u6e6c\u6e6d\u0007U\u0002\u0002\u6e6d\u6e6e\u0007K\u0002",
+ "\u0002\u6e6e\u6e6f\u0007Q\u0002\u0002\u6e6f\u6e70\u0007P\u0002\u0002",
+ "\u6e70\u6e71\u0007U\u0002\u0002\u6e71\u1062\u0003\u0002\u0002\u0002",
+ "\u6e72\u6e73\u0007X\u0002\u0002\u6e73\u6e74\u0007G\u0002\u0002\u6e74",
+ "\u6e75\u0007T\u0002\u0002\u6e75\u6e76\u0007U\u0002\u0002\u6e76\u6e77",
+ "\u0007K\u0002\u0002\u6e77\u6e78\u0007Q\u0002\u0002\u6e78\u6e79\u0007",
+ "P\u0002\u0002\u6e79\u6e7a\u0007U\u0002\u0002\u6e7a\u6e7b\u0007a\u0002",
+ "\u0002\u6e7b\u6e7c\u0007Z\u0002\u0002\u6e7c\u6e7d\u0007K\u0002\u0002",
+ "\u6e7d\u6e7e\u0007F\u0002\u0002\u6e7e\u1064\u0003\u0002\u0002\u0002",
+ "\u6e7f\u6e80\u0007X\u0002\u0002\u6e80\u6e81\u0007G\u0002\u0002\u6e81",
+ "\u6e82\u0007T\u0002\u0002\u6e82\u6e83\u0007U\u0002\u0002\u6e83\u6e84",
+ "\u0007K\u0002\u0002\u6e84\u6e85\u0007Q\u0002\u0002\u6e85\u6e86\u0007",
+ "P\u0002\u0002\u6e86\u1066\u0003\u0002\u0002\u0002\u6e87\u6e88\u0007",
+ "X\u0002\u0002\u6e88\u6e89\u0007K\u0002\u0002\u6e89\u6e8a\u0007G\u0002",
+ "\u0002\u6e8a\u6e8b\u0007Y\u0002\u0002\u6e8b\u1068\u0003\u0002\u0002",
+ "\u0002\u6e8c\u6e8d\u0007X\u0002\u0002\u6e8d\u6e8e\u0007K\u0002\u0002",
+ "\u6e8e\u6e8f\u0007Q\u0002\u0002\u6e8f\u6e90\u0007N\u0002\u0002\u6e90",
+ "\u6e91\u0007C\u0002\u0002\u6e91\u6e92\u0007V\u0002\u0002\u6e92\u6e93",
+ "\u0007K\u0002\u0002\u6e93\u6e94\u0007Q\u0002\u0002\u6e94\u6e95\u0007",
+ "P\u0002\u0002\u6e95\u106a\u0003\u0002\u0002\u0002\u6e96\u6e97\u0007",
+ "X\u0002\u0002\u6e97\u6e98\u0007K\u0002\u0002\u6e98\u6e99\u0007T\u0002",
+ "\u0002\u6e99\u6e9a\u0007V\u0002\u0002\u6e9a\u6e9b\u0007W\u0002\u0002",
+ "\u6e9b\u6e9c\u0007C\u0002\u0002\u6e9c\u6e9d\u0007N\u0002\u0002\u6e9d",
+ "\u106c\u0003\u0002\u0002\u0002\u6e9e\u6e9f\u0007X\u0002\u0002\u6e9f",
+ "\u6ea0\u0007K\u0002\u0002\u6ea0\u6ea1\u0007U\u0002\u0002\u6ea1\u6ea2",
+ "\u0007K\u0002\u0002\u6ea2\u6ea3\u0007D\u0002\u0002\u6ea3\u6ea4\u0007",
+ "K\u0002\u0002\u6ea4\u6ea5\u0007N\u0002\u0002\u6ea5\u6ea6\u0007K\u0002",
+ "\u0002\u6ea6\u6ea7\u0007V\u0002\u0002\u6ea7\u6ea8\u0007[\u0002\u0002",
+ "\u6ea8\u106e\u0003\u0002\u0002\u0002\u6ea9\u6eaa\u0007X\u0002\u0002",
+ "\u6eaa\u6eab\u0007K\u0002\u0002\u6eab\u6eac\u0007U\u0002\u0002\u6eac",
+ "\u6ead\u0007K\u0002\u0002\u6ead\u6eae\u0007D\u0002\u0002\u6eae\u6eaf",
+ "\u0007N\u0002\u0002\u6eaf\u6eb0\u0007G\u0002\u0002\u6eb0\u1070\u0003",
+ "\u0002\u0002\u0002\u6eb1\u6eb2\u0007X\u0002\u0002\u6eb2\u6eb3\u0007",
+ "Q\u0002\u0002\u6eb3\u6eb4\u0007N\u0002\u0002\u6eb4\u6eb5\u0007W\u0002",
+ "\u0002\u6eb5\u6eb6\u0007O\u0002\u0002\u6eb6\u6eb7\u0007G\u0002\u0002",
+ "\u6eb7\u1072\u0003\u0002\u0002\u0002\u6eb8\u6eb9\u0007X\u0002\u0002",
+ "\u6eb9\u6eba\u0007U\u0002\u0002\u6eba\u6ebb\u0007K\u0002\u0002\u6ebb",
+ "\u6ebc\u0007\\\u0002\u0002\u6ebc\u6ebd\u0007G\u0002\u0002\u6ebd\u1074",
+ "\u0003\u0002\u0002\u0002\u6ebe\u6ebf\u0007Y\u0002\u0002\u6ebf\u6ec0",
+ "\u0007C\u0002\u0002\u6ec0\u6ec1\u0007K\u0002\u0002\u6ec1\u6ec2\u0007",
+ "V\u0002\u0002\u6ec2\u1076\u0003\u0002\u0002\u0002\u6ec3\u6ec4\u0007",
+ "Y\u0002\u0002\u6ec4\u6ec5\u0007C\u0002\u0002\u6ec5\u6ec6\u0007N\u0002",
+ "\u0002\u6ec6\u6ec7\u0007N\u0002\u0002\u6ec7\u6ec8\u0007G\u0002\u0002",
+ "\u6ec8\u6ec9\u0007V\u0002\u0002\u6ec9\u1078\u0003\u0002\u0002\u0002",
+ "\u6eca\u6ecb\u0007Y\u0002\u0002\u6ecb\u6ecc\u0007C\u0002\u0002\u6ecc",
+ "\u6ecd\u0007T\u0002\u0002\u6ecd\u6ece\u0007P\u0002\u0002\u6ece\u6ecf",
+ "\u0007K\u0002\u0002\u6ecf\u6ed0\u0007P\u0002\u0002\u6ed0\u6ed1\u0007",
+ "I\u0002\u0002\u6ed1\u107a\u0003\u0002\u0002\u0002\u6ed2\u6ed3\u0007",
+ "Y\u0002\u0002\u6ed3\u6ed4\u0007G\u0002\u0002\u6ed4\u6ed5\u0007G\u0002",
+ "\u0002\u6ed5\u6ed6\u0007M\u0002\u0002\u6ed6\u6ed7\u0007U\u0002\u0002",
+ "\u6ed7\u107c\u0003\u0002\u0002\u0002\u6ed8\u6ed9\u0007Y\u0002\u0002",
+ "\u6ed9\u6eda\u0007G\u0002\u0002\u6eda\u6edb\u0007G\u0002\u0002\u6edb",
+ "\u6edc\u0007M\u0002\u0002\u6edc\u107e\u0003\u0002\u0002\u0002\u6edd",
+ "\u6ede\u0007Y\u0002\u0002\u6ede\u6edf\u0007G\u0002\u0002\u6edf\u6ee0",
+ "\u0007N\u0002\u0002\u6ee0\u6ee1\u0007N\u0002\u0002\u6ee1\u6ee2\u0007",
+ "H\u0002\u0002\u6ee2\u6ee3\u0007Q\u0002\u0002\u6ee3\u6ee4\u0007T\u0002",
+ "\u0002\u6ee4\u6ee5\u0007O\u0002\u0002\u6ee5\u6ee6\u0007G\u0002\u0002",
+ "\u6ee6\u6ee7\u0007F\u0002\u0002\u6ee7\u1080\u0003\u0002\u0002\u0002",
+ "\u6ee8\u6ee9\u0007Y\u0002\u0002\u6ee9\u6eea\u0007J\u0002\u0002\u6eea",
+ "\u6eeb\u0007G\u0002\u0002\u6eeb\u6eec\u0007P\u0002\u0002\u6eec\u6eed",
+ "\u0007G\u0002\u0002\u6eed\u6eee\u0007X\u0002\u0002\u6eee\u6eef\u0007",
+ "G\u0002\u0002\u6eef\u6ef0\u0007T\u0002\u0002\u6ef0\u1082\u0003\u0002",
+ "\u0002\u0002\u6ef1\u6ef2\u0007Y\u0002\u0002\u6ef2\u6ef3\u0007J\u0002",
+ "\u0002\u6ef3\u6ef4\u0007G\u0002\u0002\u6ef4\u6ef5\u0007P\u0002\u0002",
+ "\u6ef5\u1084\u0003\u0002\u0002\u0002\u6ef6\u6ef7\u0007Y\u0002\u0002",
+ "\u6ef7\u6ef8\u0007J\u0002\u0002\u6ef8\u6ef9\u0007G\u0002\u0002\u6ef9",
+ "\u6efa\u0007T\u0002\u0002\u6efa\u6efb\u0007G\u0002\u0002\u6efb\u1086",
+ "\u0003\u0002\u0002\u0002\u6efc\u6efd\u0007Y\u0002\u0002\u6efd\u6efe",
+ "\u0007J\u0002\u0002\u6efe\u6eff\u0007K\u0002\u0002\u6eff\u6f00\u0007",
+ "N\u0002\u0002\u6f00\u6f01\u0007G\u0002\u0002\u6f01\u1088\u0003\u0002",
+ "\u0002\u0002\u6f02\u6f03\u0007Y\u0002\u0002\u6f03\u6f04\u0007J\u0002",
+ "\u0002\u6f04\u6f05\u0007K\u0002\u0002\u6f05\u6f06\u0007V\u0002\u0002",
+ "\u6f06\u6f07\u0007G\u0002\u0002\u6f07\u6f08\u0007U\u0002\u0002\u6f08",
+ "\u6f09\u0007R\u0002\u0002\u6f09\u6f0a\u0007C\u0002\u0002\u6f0a\u6f0b",
+ "\u0007E\u0002\u0002\u6f0b\u6f0c\u0007G\u0002\u0002\u6f0c\u108a\u0003",
+ "\u0002\u0002\u0002\u6f0d\u6f0e\u0007Y\u0002\u0002\u6f0e\u6f0f\u0007",
+ "K\u0002\u0002\u6f0f\u6f10\u0007F\u0002\u0002\u6f10\u6f11\u0007V\u0002",
+ "\u0002\u6f11\u6f12\u0007J\u0002\u0002\u6f12\u6f13\u0007a\u0002\u0002",
+ "\u6f13\u6f14\u0007D\u0002\u0002\u6f14\u6f15\u0007W\u0002\u0002\u6f15",
+ "\u6f16\u0007E\u0002\u0002\u6f16\u6f17\u0007M\u0002\u0002\u6f17\u6f18",
+ "\u0007G\u0002\u0002\u6f18\u6f19\u0007V\u0002\u0002\u6f19\u108c\u0003",
+ "\u0002\u0002\u0002\u6f1a\u6f1b\u0007Y\u0002\u0002\u6f1b\u6f1c\u0007",
+ "K\u0002\u0002\u6f1c\u6f1d\u0007V\u0002\u0002\u6f1d\u6f1e\u0007J\u0002",
+ "\u0002\u6f1e\u6f1f\u0007K\u0002\u0002\u6f1f\u6f20\u0007P\u0002\u0002",
+ "\u6f20\u108e\u0003\u0002\u0002\u0002\u6f21\u6f22\u0007Y\u0002\u0002",
+ "\u6f22\u6f23\u0007K\u0002\u0002\u6f23\u6f24\u0007V\u0002\u0002\u6f24",
+ "\u6f25\u0007J\u0002\u0002\u6f25\u6f26\u0007Q\u0002\u0002\u6f26\u6f27",
+ "\u0007W\u0002\u0002\u6f27\u6f28\u0007V\u0002\u0002\u6f28\u1090\u0003",
+ "\u0002\u0002\u0002\u6f29\u6f2a\u0007Y\u0002\u0002\u6f2a\u6f2b\u0007",
+ "K\u0002\u0002\u6f2b\u6f2c\u0007V\u0002\u0002\u6f2c\u6f2d\u0007J\u0002",
+ "\u0002\u6f2d\u6f2e\u0007a\u0002\u0002\u6f2e\u6f2f\u0007R\u0002\u0002",
+ "\u6f2f\u6f30\u0007N\u0002\u0002\u6f30\u6f31\u0007U\u0002\u0002\u6f31",
+ "\u6f32\u0007S\u0002\u0002\u6f32\u6f33\u0007N\u0002\u0002\u6f33\u1092",
+ "\u0003\u0002\u0002\u0002\u6f34\u6f35\u0007Y\u0002\u0002\u6f35\u6f36",
+ "\u0007K\u0002\u0002\u6f36\u6f37\u0007V\u0002\u0002\u6f37\u6f38\u0007",
+ "J\u0002\u0002\u6f38\u1094\u0003\u0002\u0002\u0002\u6f39\u6f3a\u0007",
+ "Y\u0002\u0002\u6f3a\u6f3b\u0007Q\u0002\u0002\u6f3b\u6f3c\u0007T\u0002",
+ "\u0002\u6f3c\u6f3d\u0007M\u0002\u0002\u6f3d\u1096\u0003\u0002\u0002",
+ "\u0002\u6f3e\u6f3f\u0007Y\u0002\u0002\u6f3f\u6f40\u0007T\u0002\u0002",
+ "\u6f40\u6f41\u0007C\u0002\u0002\u6f41\u6f42\u0007R\u0002\u0002\u6f42",
+ "\u6f43\u0007R\u0002\u0002\u6f43\u6f44\u0007G\u0002\u0002\u6f44\u6f45",
+ "\u0007F\u0002\u0002\u6f45\u1098\u0003\u0002\u0002\u0002\u6f46\u6f47",
+ "\u0007Y\u0002\u0002\u6f47\u6f48\u0007T\u0002\u0002\u6f48\u6f49\u0007",
+ "C\u0002\u0002\u6f49\u6f4a\u0007R\u0002\u0002\u6f4a\u6f4b\u0007R\u0002",
+ "\u0002\u6f4b\u6f4c\u0007G\u0002\u0002\u6f4c\u6f4d\u0007T\u0002\u0002",
+ "\u6f4d\u109a\u0003\u0002\u0002\u0002\u6f4e\u6f4f\u0007Y\u0002\u0002",
+ "\u6f4f\u6f50\u0007T\u0002\u0002\u6f50\u6f51\u0007K\u0002\u0002\u6f51",
+ "\u6f52\u0007V\u0002\u0002\u6f52\u6f53\u0007G\u0002\u0002\u6f53\u109c",
+ "\u0003\u0002\u0002\u0002\u6f54\u6f55\u0007Z\u0002\u0002\u6f55\u6f56",
+ "\u0007F\u0002\u0002\u6f56\u6f57\u0007D\u0002\u0002\u6f57\u6f58\u0007",
+ "a\u0002\u0002\u6f58\u6f59\u0007H\u0002\u0002\u6f59\u6f5a\u0007C\u0002",
+ "\u0002\u6f5a\u6f5b\u0007U\u0002\u0002\u6f5b\u6f5c\u0007V\u0002\u0002",
+ "\u6f5c\u6f5d\u0007R\u0002\u0002\u6f5d\u6f5e\u0007C\u0002\u0002\u6f5e",
+ "\u6f5f\u0007V\u0002\u0002\u6f5f\u6f60\u0007J\u0002\u0002\u6f60\u6f61",
+ "\u0007a\u0002\u0002\u6f61\u6f62\u0007K\u0002\u0002\u6f62\u6f63\u0007",
+ "P\u0002\u0002\u6f63\u6f64\u0007U\u0002\u0002\u6f64\u6f65\u0007G\u0002",
+ "\u0002\u6f65\u6f66\u0007T\u0002\u0002\u6f66\u6f67\u0007V\u0002\u0002",
+ "\u6f67\u109e\u0003\u0002\u0002\u0002\u6f68\u6f69\u0007Z\u0002\u0002",
+ "\u6f69\u6f6a\u0007F\u0002\u0002\u6f6a\u6f6b\u0007D\u0002\u0002\u6f6b",
+ "\u10a0\u0003\u0002\u0002\u0002\u6f6c\u6f6d\u0007Z\u0002\u0002\u6f6d",
+ "\u6f6e\u0007a\u0002\u0002\u6f6e\u6f6f\u0007F\u0002\u0002\u6f6f\u6f70",
+ "\u0007[\u0002\u0002\u6f70\u6f71\u0007P\u0002\u0002\u6f71\u6f72\u0007",
+ "a\u0002\u0002\u6f72\u6f73\u0007R\u0002\u0002\u6f73\u6f74\u0007T\u0002",
+ "\u0002\u6f74\u6f75\u0007W\u0002\u0002\u6f75\u6f76\u0007P\u0002\u0002",
+ "\u6f76\u6f77\u0007G\u0002\u0002\u6f77\u10a2\u0003\u0002\u0002\u0002",
+ "\u6f78\u6f79\u0007Z\u0002\u0002\u6f79\u6f7a\u0007K\u0002\u0002\u6f7a",
+ "\u6f7b\u0007F\u0002\u0002\u6f7b\u10a4\u0003\u0002\u0002\u0002\u6f7c",
+ "\u6f7d\u0007Z\u0002\u0002\u6f7d\u6f7e\u0007O\u0002\u0002\u6f7e\u6f7f",
+ "\u0007N\u0002\u0002\u6f7f\u6f80\u00074\u0002\u0002\u6f80\u6f81\u0007",
+ "Q\u0002\u0002\u6f81\u6f82\u0007D\u0002\u0002\u6f82\u6f83\u0007L\u0002",
+ "\u0002\u6f83\u6f84\u0007G\u0002\u0002\u6f84\u6f85\u0007E\u0002\u0002",
+ "\u6f85\u6f86\u0007V\u0002\u0002\u6f86\u10a6\u0003\u0002\u0002\u0002",
+ "\u6f87\u6f88\u0007Z\u0002\u0002\u6f88\u6f89\u0007O\u0002\u0002\u6f89",
+ "\u6f8a\u0007N\u0002\u0002\u6f8a\u6f8b\u0007C\u0002\u0002\u6f8b\u6f8c",
+ "\u0007I\u0002\u0002\u6f8c\u6f8d\u0007I\u0002\u0002\u6f8d\u10a8\u0003",
+ "\u0002\u0002\u0002\u6f8e\u6f8f\u0007Z\u0002\u0002\u6f8f\u6f90\u0007",
+ "O\u0002\u0002\u6f90\u6f91\u0007N\u0002\u0002\u6f91\u6f92\u0007C\u0002",
+ "\u0002\u6f92\u6f93\u0007V\u0002\u0002\u6f93\u6f94\u0007V\u0002\u0002",
+ "\u6f94\u6f95\u0007T\u0002\u0002\u6f95\u6f96\u0007K\u0002\u0002\u6f96",
+ "\u6f97\u0007D\u0002\u0002\u6f97\u6f98\u0007W\u0002\u0002\u6f98\u6f99",
+ "\u0007V\u0002\u0002\u6f99\u6f9a\u0007G\u0002\u0002\u6f9a\u6f9b\u0007",
+ "U\u0002\u0002\u6f9b\u10aa\u0003\u0002\u0002\u0002\u6f9c\u6f9d\u0007",
+ "Z\u0002\u0002\u6f9d\u6f9e\u0007O\u0002\u0002\u6f9e\u6f9f\u0007N\u0002",
+ "\u0002\u6f9f\u6fa0\u0007E\u0002\u0002\u6fa0\u6fa1\u0007C\u0002\u0002",
+ "\u6fa1\u6fa2\u0007U\u0002\u0002\u6fa2\u6fa3\u0007V\u0002\u0002\u6fa3",
+ "\u10ac\u0003\u0002\u0002\u0002\u6fa4\u6fa5\u0007Z\u0002\u0002\u6fa5",
+ "\u6fa6\u0007O\u0002\u0002\u6fa6\u6fa7\u0007N\u0002\u0002\u6fa7\u6fa8",
+ "\u0007E\u0002\u0002\u6fa8\u6fa9\u0007F\u0002\u0002\u6fa9\u6faa\u0007",
+ "C\u0002\u0002\u6faa\u6fab\u0007V\u0002\u0002\u6fab\u6fac\u0007C\u0002",
+ "\u0002\u6fac\u10ae\u0003\u0002\u0002\u0002\u6fad\u6fae\u0007Z\u0002",
+ "\u0002\u6fae\u6faf\u0007O\u0002\u0002\u6faf\u6fb0\u0007N\u0002\u0002",
+ "\u6fb0\u6fb1\u0007E\u0002\u0002\u6fb1\u6fb2\u0007Q\u0002\u0002\u6fb2",
+ "\u6fb3\u0007N\u0002\u0002\u6fb3\u6fb4\u0007C\u0002\u0002\u6fb4\u6fb5",
+ "\u0007V\u0002\u0002\u6fb5\u6fb6\u0007V\u0002\u0002\u6fb6\u6fb7\u0007",
+ "X\u0002\u0002\u6fb7\u6fb8\u0007C\u0002\u0002\u6fb8\u6fb9\u0007N\u0002",
+ "\u0002\u6fb9\u10b0\u0003\u0002\u0002\u0002\u6fba\u6fbb\u0007Z\u0002",
+ "\u0002\u6fbb\u6fbc\u0007O\u0002\u0002\u6fbc\u6fbd\u0007N\u0002\u0002",
+ "\u6fbd\u6fbe\u0007E\u0002\u0002\u6fbe\u6fbf\u0007Q\u0002\u0002\u6fbf",
+ "\u6fc0\u0007O\u0002\u0002\u6fc0\u6fc1\u0007O\u0002\u0002\u6fc1\u6fc2",
+ "\u0007G\u0002\u0002\u6fc2\u6fc3\u0007P\u0002\u0002\u6fc3\u6fc4\u0007",
+ "V\u0002\u0002\u6fc4\u10b2\u0003\u0002\u0002\u0002\u6fc5\u6fc6\u0007",
+ "Z\u0002\u0002\u6fc6\u6fc7\u0007O\u0002\u0002\u6fc7\u6fc8\u0007N\u0002",
+ "\u0002\u6fc8\u6fc9\u0007E\u0002\u0002\u6fc9\u6fca\u0007Q\u0002\u0002",
+ "\u6fca\u6fcb\u0007P\u0002\u0002\u6fcb\u6fcc\u0007E\u0002\u0002\u6fcc",
+ "\u6fcd\u0007C\u0002\u0002\u6fcd\u6fce\u0007V\u0002\u0002\u6fce\u10b4",
+ "\u0003\u0002\u0002\u0002\u6fcf\u6fd0\u0007Z\u0002\u0002\u6fd0\u6fd1",
+ "\u0007O\u0002\u0002\u6fd1\u6fd2\u0007N\u0002\u0002\u6fd2\u6fd3\u0007",
+ "F\u0002\u0002\u6fd3\u6fd4\u0007K\u0002\u0002\u6fd4\u6fd5\u0007H\u0002",
+ "\u0002\u6fd5\u6fd6\u0007H\u0002\u0002\u6fd6\u10b6\u0003\u0002\u0002",
+ "\u0002\u6fd7\u6fd8\u0007Z\u0002\u0002\u6fd8\u6fd9\u0007O\u0002\u0002",
+ "\u6fd9\u6fda\u0007N\u0002\u0002\u6fda\u6fdb\u0007a\u0002\u0002\u6fdb",
+ "\u6fdc\u0007F\u0002\u0002\u6fdc\u6fdd\u0007O\u0002\u0002\u6fdd\u6fde",
+ "\u0007N\u0002\u0002\u6fde\u6fdf\u0007a\u0002\u0002\u6fdf\u6fe0\u0007",
+ "T\u0002\u0002\u6fe0\u6fe1\u0007Y\u0002\u0002\u6fe1\u6fe2\u0007V\u0002",
+ "\u0002\u6fe2\u6fe3\u0007a\u0002\u0002\u6fe3\u6fe4\u0007U\u0002\u0002",
+ "\u6fe4\u6fe5\u0007V\u0002\u0002\u6fe5\u6fe6\u0007O\u0002\u0002\u6fe6",
+ "\u6fe7\u0007V\u0002\u0002\u6fe7\u10b8\u0003\u0002\u0002\u0002\u6fe8",
+ "\u6fe9\u0007Z\u0002\u0002\u6fe9\u6fea\u0007O\u0002\u0002\u6fea\u6feb",
+ "\u0007N\u0002\u0002\u6feb\u6fec\u0007G\u0002\u0002\u6fec\u6fed\u0007",
+ "N\u0002\u0002\u6fed\u6fee\u0007G\u0002\u0002\u6fee\u6fef\u0007O\u0002",
+ "\u0002\u6fef\u6ff0\u0007G\u0002\u0002\u6ff0\u6ff1\u0007P\u0002\u0002",
+ "\u6ff1\u6ff2\u0007V\u0002\u0002\u6ff2\u10ba\u0003\u0002\u0002\u0002",
+ "\u6ff3\u6ff4\u0007Z\u0002\u0002\u6ff4\u6ff5\u0007O\u0002\u0002\u6ff5",
+ "\u6ff6\u0007N\u0002\u0002\u6ff6\u6ff7\u0007G\u0002\u0002\u6ff7\u6ff8",
+ "\u0007Z\u0002\u0002\u6ff8\u6ff9\u0007K\u0002\u0002\u6ff9\u6ffa\u0007",
+ "U\u0002\u0002\u6ffa\u6ffb\u0007V\u0002\u0002\u6ffb\u6ffc\u0007U\u0002",
+ "\u0002\u6ffc\u6ffd\u00074\u0002\u0002\u6ffd\u10bc\u0003\u0002\u0002",
+ "\u0002\u6ffe\u6fff\u0007Z\u0002\u0002\u6fff\u7000\u0007O\u0002\u0002",
+ "\u7000\u7001\u0007N\u0002\u0002\u7001\u7002\u0007G\u0002\u0002\u7002",
+ "\u7003\u0007Z\u0002\u0002\u7003\u7004\u0007K\u0002\u0002\u7004\u7005",
+ "\u0007U\u0002\u0002\u7005\u7006\u0007V\u0002\u0002\u7006\u7007\u0007",
+ "U\u0002\u0002\u7007\u10be\u0003\u0002\u0002\u0002\u7008\u7009\u0007",
+ "Z\u0002\u0002\u7009\u700a\u0007O\u0002\u0002\u700a\u700b\u0007N\u0002",
+ "\u0002\u700b\u700c\u0007H\u0002\u0002\u700c\u700d\u0007Q\u0002\u0002",
+ "\u700d\u700e\u0007T\u0002\u0002\u700e\u700f\u0007G\u0002\u0002\u700f",
+ "\u7010\u0007U\u0002\u0002\u7010\u7011\u0007V\u0002\u0002\u7011\u10c0",
+ "\u0003\u0002\u0002\u0002\u7012\u7013\u0007Z\u0002\u0002\u7013\u7014",
+ "\u0007O\u0002\u0002\u7014\u7015\u0007N\u0002\u0002\u7015\u7016\u0007",
+ "K\u0002\u0002\u7016\u7017\u0007P\u0002\u0002\u7017\u7018\u0007F\u0002",
+ "\u0002\u7018\u7019\u0007G\u0002\u0002\u7019\u701a\u0007Z\u0002\u0002",
+ "\u701a\u10c2\u0003\u0002\u0002\u0002\u701b\u701c\u0007Z\u0002\u0002",
+ "\u701c\u701d\u0007O\u0002\u0002\u701d\u701e\u0007N\u0002\u0002\u701e",
+ "\u701f\u0007K\u0002\u0002\u701f\u7020\u0007P\u0002\u0002\u7020\u7021",
+ "\u0007F\u0002\u0002\u7021\u7022\u0007G\u0002\u0002\u7022\u7023\u0007",
+ "Z\u0002\u0002\u7023\u7024\u0007a\u0002\u0002\u7024\u7025\u0007T\u0002",
+ "\u0002\u7025\u7026\u0007G\u0002\u0002\u7026\u7027\u0007Y\u0002\u0002",
+ "\u7027\u7028\u0007T\u0002\u0002\u7028\u7029\u0007K\u0002\u0002\u7029",
+ "\u702a\u0007V\u0002\u0002\u702a\u702b\u0007G\u0002\u0002\u702b\u702c",
+ "\u0007a\u0002\u0002\u702c\u702d\u0007K\u0002\u0002\u702d\u702e\u0007",
+ "P\u0002\u0002\u702e\u702f\u0007a\u0002\u0002\u702f\u7030\u0007U\u0002",
+ "\u0002\u7030\u7031\u0007G\u0002\u0002\u7031\u7032\u0007N\u0002\u0002",
+ "\u7032\u7033\u0007G\u0002\u0002\u7033\u7034\u0007E\u0002\u0002\u7034",
+ "\u7035\u0007V\u0002\u0002\u7035\u10c4\u0003\u0002\u0002\u0002\u7036",
+ "\u7037\u0007Z\u0002\u0002\u7037\u7038\u0007O\u0002\u0002\u7038\u7039",
+ "\u0007N\u0002\u0002\u7039\u703a\u0007K\u0002\u0002\u703a\u703b\u0007",
+ "P\u0002\u0002\u703b\u703c\u0007F\u0002\u0002\u703c\u703d\u0007G\u0002",
+ "\u0002\u703d\u703e\u0007Z\u0002\u0002\u703e\u703f\u0007a\u0002\u0002",
+ "\u703f\u7040\u0007T\u0002\u0002\u7040\u7041\u0007G\u0002\u0002\u7041",
+ "\u7042\u0007Y\u0002\u0002\u7042\u7043\u0007T\u0002\u0002\u7043\u7044",
+ "\u0007K\u0002\u0002\u7044\u7045\u0007V\u0002\u0002\u7045\u7046\u0007",
+ "G\u0002\u0002\u7046\u10c6\u0003\u0002\u0002\u0002\u7047\u7048\u0007",
+ "Z\u0002\u0002\u7048\u7049\u0007O\u0002\u0002\u7049\u704a\u0007N\u0002",
+ "\u0002\u704a\u704b\u0007K\u0002\u0002\u704b\u704c\u0007P\u0002\u0002",
+ "\u704c\u704d\u0007F\u0002\u0002\u704d\u704e\u0007G\u0002\u0002\u704e",
+ "\u704f\u0007Z\u0002\u0002\u704f\u7050\u0007a\u0002\u0002\u7050\u7051",
+ "\u0007U\u0002\u0002\u7051\u7052\u0007G\u0002\u0002\u7052\u7053\u0007",
+ "N\u0002\u0002\u7053\u7054\u0007a\u0002\u0002\u7054\u7055\u0007K\u0002",
+ "\u0002\u7055\u7056\u0007F\u0002\u0002\u7056\u7057\u0007Z\u0002\u0002",
+ "\u7057\u7058\u0007a\u0002\u0002\u7058\u7059\u0007V\u0002\u0002\u7059",
+ "\u705a\u0007D\u0002\u0002\u705a\u705b\u0007N\u0002\u0002\u705b\u10c8",
+ "\u0003\u0002\u0002\u0002\u705c\u705d\u0007Z\u0002\u0002\u705d\u705e",
+ "\u0007O\u0002\u0002\u705e\u705f\u0007N\u0002\u0002\u705f\u7060\u0007",
+ "K\u0002\u0002\u7060\u7061\u0007U\u0002\u0002\u7061\u7062\u0007P\u0002",
+ "\u0002\u7062\u7063\u0007Q\u0002\u0002\u7063\u7064\u0007F\u0002\u0002",
+ "\u7064\u7065\u0007G\u0002\u0002\u7065\u10ca\u0003\u0002\u0002\u0002",
+ "\u7066\u7067\u0007Z\u0002\u0002\u7067\u7068\u0007O\u0002\u0002\u7068",
+ "\u7069\u0007N\u0002\u0002\u7069\u706a\u0007K\u0002\u0002\u706a\u706b",
+ "\u0007U\u0002\u0002\u706b\u706c\u0007X\u0002\u0002\u706c\u706d\u0007",
+ "C\u0002\u0002\u706d\u706e\u0007N\u0002\u0002\u706e\u706f\u0007K\u0002",
+ "\u0002\u706f\u7070\u0007F\u0002\u0002\u7070\u10cc\u0003\u0002\u0002",
+ "\u0002\u7071\u7072\u0007Z\u0002\u0002\u7072\u7073\u0007O\u0002\u0002",
+ "\u7073\u7074\u0007N\u0002\u0002\u7074\u7075\u0007P\u0002\u0002\u7075",
+ "\u7076\u0007C\u0002\u0002\u7076\u7077\u0007O\u0002\u0002\u7077\u7078",
+ "\u0007G\u0002\u0002\u7078\u7079\u0007U\u0002\u0002\u7079\u707a\u0007",
+ "R\u0002\u0002\u707a\u707b\u0007C\u0002\u0002\u707b\u707c\u0007E\u0002",
+ "\u0002\u707c\u707d\u0007G\u0002\u0002\u707d\u707e\u0007U\u0002\u0002",
+ "\u707e\u10ce\u0003\u0002\u0002\u0002\u707f\u7080\u0007Z\u0002\u0002",
+ "\u7080\u7081\u0007O\u0002\u0002\u7081\u7082\u0007N\u0002\u0002\u7082",
+ "\u7083\u0007R\u0002\u0002\u7083\u7084\u0007C\u0002\u0002\u7084\u7085",
+ "\u0007T\u0002\u0002\u7085\u7086\u0007U\u0002\u0002\u7086\u7087\u0007",
+ "G\u0002\u0002\u7087\u10d0\u0003\u0002\u0002\u0002\u7088\u7089\u0007",
+ "Z\u0002\u0002\u7089\u708a\u0007O\u0002\u0002\u708a\u708b\u0007N\u0002",
+ "\u0002\u708b\u708c\u0007R\u0002\u0002\u708c\u708d\u0007C\u0002\u0002",
+ "\u708d\u708e\u0007V\u0002\u0002\u708e\u708f\u0007E\u0002\u0002\u708f",
+ "\u7090\u0007J\u0002\u0002\u7090\u10d2\u0003\u0002\u0002\u0002\u7091",
+ "\u7092\u0007Z\u0002\u0002\u7092\u7093\u0007O\u0002\u0002\u7093\u7094",
+ "\u0007N\u0002\u0002\u7094\u7095\u0007R\u0002\u0002\u7095\u7096\u0007",
+ "K\u0002\u0002\u7096\u10d4\u0003\u0002\u0002\u0002\u7097\u7098\u0007",
+ "Z\u0002\u0002\u7098\u7099\u0007O\u0002\u0002\u7099\u709a\u0007N\u0002",
+ "\u0002\u709a\u709b\u0007S\u0002\u0002\u709b\u709c\u0007W\u0002\u0002",
+ "\u709c\u709d\u0007G\u0002\u0002\u709d\u709e\u0007T\u0002\u0002\u709e",
+ "\u709f\u0007[\u0002\u0002\u709f\u70a0\u0007X\u0002\u0002\u70a0\u70a1",
+ "\u0007C\u0002\u0002\u70a1\u70a2\u0007N\u0002\u0002\u70a2\u10d6\u0003",
+ "\u0002\u0002\u0002\u70a3\u70a4\u0007Z\u0002\u0002\u70a4\u70a5\u0007",
+ "O\u0002\u0002\u70a5\u70a6\u0007N\u0002\u0002\u70a6\u70a7\u0007S\u0002",
+ "\u0002\u70a7\u70a8\u0007W\u0002\u0002\u70a8\u70a9\u0007G\u0002\u0002",
+ "\u70a9\u70aa\u0007T\u0002\u0002\u70aa\u70ab\u0007[\u0002\u0002\u70ab",
+ "\u10d8\u0003\u0002\u0002\u0002\u70ac\u70ad\u0007Z\u0002\u0002\u70ad",
+ "\u70ae\u0007O\u0002\u0002\u70ae\u70af\u0007N\u0002\u0002\u70af\u70b0",
+ "\u0007T\u0002\u0002\u70b0\u70b1\u0007Q\u0002\u0002\u70b1\u70b2\u0007",
+ "Q\u0002\u0002\u70b2\u70b3\u0007V\u0002\u0002\u70b3\u10da\u0003\u0002",
+ "\u0002\u0002\u70b4\u70b5\u0007Z\u0002\u0002\u70b5\u70b6\u0007O\u0002",
+ "\u0002\u70b6\u70b7\u0007N\u0002\u0002\u70b7\u70b8\u0007U\u0002\u0002",
+ "\u70b8\u70b9\u0007E\u0002\u0002\u70b9\u70ba\u0007J\u0002\u0002\u70ba",
+ "\u70bb\u0007G\u0002\u0002\u70bb\u70bc\u0007O\u0002\u0002\u70bc\u70bd",
+ "\u0007C\u0002\u0002\u70bd\u10dc\u0003\u0002\u0002\u0002\u70be\u70bf",
+ "\u0007Z\u0002\u0002\u70bf\u70c0\u0007O\u0002\u0002\u70c0\u70c1\u0007",
+ "N\u0002\u0002\u70c1\u70c2\u0007U\u0002\u0002\u70c2\u70c3\u0007G\u0002",
+ "\u0002\u70c3\u70c4\u0007T\u0002\u0002\u70c4\u70c5\u0007K\u0002\u0002",
+ "\u70c5\u70c6\u0007C\u0002\u0002\u70c6\u70c7\u0007N\u0002\u0002\u70c7",
+ "\u70c8\u0007K\u0002\u0002\u70c8\u70c9\u0007\\\u0002\u0002\u70c9\u70ca",
+ "\u0007G\u0002\u0002\u70ca\u10de\u0003\u0002\u0002\u0002\u70cb\u70cc",
+ "\u0007Z\u0002\u0002\u70cc\u70cd\u0007O\u0002\u0002\u70cd\u70ce\u0007",
+ "N\u0002\u0002\u70ce\u70cf\u0007V\u0002\u0002\u70cf\u70d0\u0007C\u0002",
+ "\u0002\u70d0\u70d1\u0007D\u0002\u0002\u70d1\u70d2\u0007N\u0002\u0002",
+ "\u70d2\u70d3\u0007G\u0002\u0002\u70d3\u10e0\u0003\u0002\u0002\u0002",
+ "\u70d4\u70d5\u0007Z\u0002\u0002\u70d5\u70d6\u0007O\u0002\u0002\u70d6",
+ "\u70d7\u0007N\u0002\u0002\u70d7\u70d8\u0007V\u0002\u0002\u70d8\u70d9",
+ "\u0007T\u0002\u0002\u70d9\u70da\u0007C\u0002\u0002\u70da\u70db\u0007",
+ "P\u0002\u0002\u70db\u70dc\u0007U\u0002\u0002\u70dc\u70dd\u0007H\u0002",
+ "\u0002\u70dd\u70de\u0007Q\u0002\u0002\u70de\u70df\u0007T\u0002\u0002",
+ "\u70df\u70e0\u0007O\u0002\u0002\u70e0\u70e1\u0007D\u0002\u0002\u70e1",
+ "\u70e2\u0007N\u0002\u0002\u70e2\u70e3\u0007Q\u0002\u0002\u70e3\u70e4",
+ "\u0007D\u0002\u0002\u70e4\u10e2\u0003\u0002\u0002\u0002\u70e5\u70e6",
+ "\u0007Z\u0002\u0002\u70e6\u70e7\u0007O\u0002\u0002\u70e7\u70e8\u0007",
+ "N\u0002\u0002\u70e8\u70e9\u0007V\u0002\u0002\u70e9\u70ea\u0007T\u0002",
+ "\u0002\u70ea\u70eb\u0007C\u0002\u0002\u70eb\u70ec\u0007P\u0002\u0002",
+ "\u70ec\u70ed\u0007U\u0002\u0002\u70ed\u70ee\u0007H\u0002\u0002\u70ee",
+ "\u70ef\u0007Q\u0002\u0002\u70ef\u70f0\u0007T\u0002\u0002\u70f0\u70f1",
+ "\u0007O\u0002\u0002\u70f1\u10e4\u0003\u0002\u0002\u0002\u70f2\u70f3",
+ "\u0007Z\u0002\u0002\u70f3\u70f4\u0007O\u0002\u0002\u70f4\u70f5\u0007",
+ "N\u0002\u0002\u70f5\u70f6\u0007V\u0002\u0002\u70f6\u70f7\u0007[\u0002",
+ "\u0002\u70f7\u70f8\u0007R\u0002\u0002\u70f8\u70f9\u0007G\u0002\u0002",
+ "\u70f9\u10e6\u0003\u0002\u0002\u0002\u70fa\u70fb\u0007Z\u0002\u0002",
+ "\u70fb\u70fc\u0007O\u0002\u0002\u70fc\u70fd\u0007N\u0002\u0002\u70fd",
+ "\u10e8\u0003\u0002\u0002\u0002\u70fe\u70ff\u0007Z\u0002\u0002\u70ff",
+ "\u7100\u0007R\u0002\u0002\u7100\u7101\u0007C\u0002\u0002\u7101\u7102",
+ "\u0007V\u0002\u0002\u7102\u7103\u0007J\u0002\u0002\u7103\u7104\u0007",
+ "V\u0002\u0002\u7104\u7105\u0007C\u0002\u0002\u7105\u7106\u0007D\u0002",
+ "\u0002\u7106\u7107\u0007N\u0002\u0002\u7107\u7108\u0007G\u0002\u0002",
+ "\u7108\u10ea\u0003\u0002\u0002\u0002\u7109\u710a\u0007Z\u0002\u0002",
+ "\u710a\u710b\u0007U\u0002\u0002\u710b\u710c\u0007a\u0002\u0002\u710c",
+ "\u710d\u0007U\u0002\u0002\u710d\u710e\u0007[\u0002\u0002\u710e\u710f",
+ "\u0007U\u0002\u0002\u710f\u7110\u0007a\u0002\u0002\u7110\u7111\u0007",
+ "E\u0002\u0002\u7111\u7112\u0007Q\u0002\u0002\u7112\u7113\u0007P\u0002",
+ "\u0002\u7113\u7114\u0007V\u0002\u0002\u7114\u7115\u0007G\u0002\u0002",
+ "\u7115\u7116\u0007Z\u0002\u0002\u7116\u7117\u0007V\u0002\u0002\u7117",
+ "\u10ec\u0003\u0002\u0002\u0002\u7118\u7119\u0007Z\u0002\u0002\u7119",
+ "\u711a\u0007U\u0002\u0002\u711a\u10ee\u0003\u0002\u0002\u0002\u711b",
+ "\u711c\u0007Z\u0002\u0002\u711c\u711d\u0007V\u0002\u0002\u711d\u711e",
+ "\u0007T\u0002\u0002\u711e\u711f\u0007C\u0002\u0002\u711f\u7120\u0007",
+ "P\u0002\u0002\u7120\u7121\u0007U\u0002\u0002\u7121\u7122\u0007R\u0002",
+ "\u0002\u7122\u7123\u0007Q\u0002\u0002\u7123\u7124\u0007T\u0002\u0002",
+ "\u7124\u7125\u0007V\u0002\u0002\u7125\u10f0\u0003\u0002\u0002\u0002",
+ "\u7126\u7127\u0007[\u0002\u0002\u7127\u7128\u0007G\u0002\u0002\u7128",
+ "\u7129\u0007C\u0002\u0002\u7129\u712a\u0007T\u0002\u0002\u712a\u712b",
+ "\u0007U\u0002\u0002\u712b\u10f2\u0003\u0002\u0002\u0002\u712c\u712d",
+ "\u0007[\u0002\u0002\u712d\u712e\u0007G\u0002\u0002\u712e\u712f\u0007",
+ "C\u0002\u0002\u712f\u7130\u0007T\u0002\u0002\u7130\u10f4\u0003\u0002",
+ "\u0002\u0002\u7131\u7132\u0007[\u0002\u0002\u7132\u7133\u0007G\u0002",
+ "\u0002\u7133\u7134\u0007U\u0002\u0002\u7134\u10f6\u0003\u0002\u0002",
+ "\u0002\u7135\u7136\u0007[\u0002\u0002\u7136\u7137\u0007O\u0002\u0002",
+ "\u7137\u7138\u0007K\u0002\u0002\u7138\u7139\u0007P\u0002\u0002\u7139",
+ "\u713a\u0007V\u0002\u0002\u713a\u713b\u0007G\u0002\u0002\u713b\u713c",
+ "\u0007T\u0002\u0002\u713c\u713d\u0007X\u0002\u0002\u713d\u713e\u0007",
+ "C\u0002\u0002\u713e\u713f\u0007N\u0002\u0002\u713f\u7140\u0007a\u0002",
+ "\u0002\u7140\u7141\u0007W\u0002\u0002\u7141\u7142\u0007P\u0002\u0002",
+ "\u7142\u7143\u0007E\u0002\u0002\u7143\u7144\u0007Q\u0002\u0002\u7144",
+ "\u7145\u0007P\u0002\u0002\u7145\u7146\u0007U\u0002\u0002\u7146\u7147",
+ "\u0007V\u0002\u0002\u7147\u7148\u0007T\u0002\u0002\u7148\u7149\u0007",
+ "C\u0002\u0002\u7149\u714a\u0007K\u0002\u0002\u714a\u714b\u0007P\u0002",
+ "\u0002\u714b\u714c\u0007G\u0002\u0002\u714c\u714d\u0007F\u0002\u0002",
+ "\u714d\u10f8\u0003\u0002\u0002\u0002\u714e\u714f\u0007\\\u0002\u0002",
+ "\u714f\u7150\u0007Q\u0002\u0002\u7150\u7151\u0007P\u0002\u0002\u7151",
+ "\u7152\u0007G\u0002\u0002\u7152\u7153\u0007O\u0002\u0002\u7153\u7154",
+ "\u0007C\u0002\u0002\u7154\u7155\u0007R\u0002\u0002\u7155\u10fa\u0003",
+ "\u0002\u0002\u0002\u7156\u7157\u0007\\\u0002\u0002\u7157\u7158\u0007",
+ "Q\u0002\u0002\u7158\u7159\u0007P\u0002\u0002\u7159\u715a\u0007G\u0002",
+ "\u0002\u715a\u10fc\u0003\u0002\u0002\u0002\u715b\u715c\u0007R\u0002",
+ "\u0002\u715c\u715d\u0007T\u0002\u0002\u715d\u715e\u0007G\u0002\u0002",
+ "\u715e\u715f\u0007F\u0002\u0002\u715f\u7160\u0007K\u0002\u0002\u7160",
+ "\u7161\u0007E\u0002\u0002\u7161\u7162\u0007V\u0002\u0002\u7162\u7163",
+ "\u0007K\u0002\u0002\u7163\u7164\u0007Q\u0002\u0002\u7164\u7165\u0007",
+ "P\u0002\u0002\u7165\u10fe\u0003\u0002\u0002\u0002\u7166\u7167\u0007",
+ "R\u0002\u0002\u7167\u7168\u0007T\u0002\u0002\u7168\u7169\u0007G\u0002",
+ "\u0002\u7169\u716a\u0007F\u0002\u0002\u716a\u716b\u0007K\u0002\u0002",
+ "\u716b\u716c\u0007E\u0002\u0002\u716c\u716d\u0007V\u0002\u0002\u716d",
+ "\u716e\u0007K\u0002\u0002\u716e\u716f\u0007Q\u0002\u0002\u716f\u7170",
+ "\u0007P\u0002\u0002\u7170\u7171\u0007a\u0002\u0002\u7171\u7172\u0007",
+ "D\u0002\u0002\u7172\u7173\u0007Q\u0002\u0002\u7173\u7174\u0007W\u0002",
+ "\u0002\u7174\u7175\u0007P\u0002\u0002\u7175\u7176\u0007F\u0002\u0002",
+ "\u7176\u7177\u0007U\u0002\u0002\u7177\u1100\u0003\u0002\u0002\u0002",
+ "\u7178\u7179\u0007R\u0002\u0002\u7179\u717a\u0007T\u0002\u0002\u717a",
+ "\u717b\u0007G\u0002\u0002\u717b\u717c\u0007F\u0002\u0002\u717c\u717d",
+ "\u0007K\u0002\u0002\u717d\u717e\u0007E\u0002\u0002\u717e\u717f\u0007",
+ "V\u0002\u0002\u717f\u7180\u0007K\u0002\u0002\u7180\u7181\u0007Q\u0002",
+ "\u0002\u7181\u7182\u0007P\u0002\u0002\u7182\u7183\u0007a\u0002\u0002",
+ "\u7183\u7184\u0007E\u0002\u0002\u7184\u7185\u0007Q\u0002\u0002\u7185",
+ "\u7186\u0007U\u0002\u0002\u7186\u7187\u0007V\u0002\u0002\u7187\u1102",
+ "\u0003\u0002\u0002\u0002\u7188\u7189\u0007R\u0002\u0002\u7189\u718a",
+ "\u0007T\u0002\u0002\u718a\u718b\u0007G\u0002\u0002\u718b\u718c\u0007",
+ "F\u0002\u0002\u718c\u718d\u0007K\u0002\u0002\u718d\u718e\u0007E\u0002",
+ "\u0002\u718e\u718f\u0007V\u0002\u0002\u718f\u7190\u0007K\u0002\u0002",
+ "\u7190\u7191\u0007Q\u0002\u0002\u7191\u7192\u0007P\u0002\u0002\u7192",
+ "\u7193\u0007a\u0002\u0002\u7193\u7194\u0007F\u0002\u0002\u7194\u7195",
+ "\u0007G\u0002\u0002\u7195\u7196\u0007V\u0002\u0002\u7196\u7197\u0007",
+ "C\u0002\u0002\u7197\u7198\u0007K\u0002\u0002\u7198\u7199\u0007N\u0002",
+ "\u0002\u7199\u719a\u0007U\u0002\u0002\u719a\u1104\u0003\u0002\u0002",
+ "\u0002\u719b\u719c\u0007R\u0002\u0002\u719c\u719d\u0007T\u0002\u0002",
+ "\u719d\u719e\u0007G\u0002\u0002\u719e\u719f\u0007F\u0002\u0002\u719f",
+ "\u71a0\u0007K\u0002\u0002\u71a0\u71a1\u0007E\u0002\u0002\u71a1\u71a2",
+ "\u0007V\u0002\u0002\u71a2\u71a3\u0007K\u0002\u0002\u71a3\u71a4\u0007",
+ "Q\u0002\u0002\u71a4\u71a5\u0007P\u0002\u0002\u71a5\u71a6\u0007a\u0002",
+ "\u0002\u71a6\u71a7\u0007R\u0002\u0002\u71a7\u71a8\u0007T\u0002\u0002",
+ "\u71a8\u71a9\u0007Q\u0002\u0002\u71a9\u71aa\u0007D\u0002\u0002\u71aa",
+ "\u71ab\u0007C\u0002\u0002\u71ab\u71ac\u0007D\u0002\u0002\u71ac\u71ad",
+ "\u0007K\u0002\u0002\u71ad\u71ae\u0007N\u0002\u0002\u71ae\u71af\u0007",
+ "K\u0002\u0002\u71af\u71b0\u0007V\u0002\u0002\u71b0\u71b1\u0007[\u0002",
+ "\u0002\u71b1\u1106\u0003\u0002\u0002\u0002\u71b2\u71b3\u0007R\u0002",
+ "\u0002\u71b3\u71b4\u0007T\u0002\u0002\u71b4\u71b5\u0007G\u0002\u0002",
+ "\u71b5\u71b6\u0007F\u0002\u0002\u71b6\u71b7\u0007K\u0002\u0002\u71b7",
+ "\u71b8\u0007E\u0002\u0002\u71b8\u71b9\u0007V\u0002\u0002\u71b9\u71ba",
+ "\u0007K\u0002\u0002\u71ba\u71bb\u0007Q\u0002\u0002\u71bb\u71bc\u0007",
+ "P\u0002\u0002\u71bc\u71bd\u0007a\u0002\u0002\u71bd\u71be\u0007U\u0002",
+ "\u0002\u71be\u71bf\u0007G\u0002\u0002\u71bf\u71c0\u0007V\u0002\u0002",
+ "\u71c0\u1108\u0003\u0002\u0002\u0002\u71c1\u71c2\u0007E\u0002\u0002",
+ "\u71c2\u71c3\u0007W\u0002\u0002\u71c3\u71c4\u0007O\u0002\u0002\u71c4",
+ "\u71c5\u0007G\u0002\u0002\u71c5\u71c6\u0007a\u0002\u0002\u71c6\u71c7",
+ "\u0007F\u0002\u0002\u71c7\u71c8\u0007K\u0002\u0002\u71c8\u71c9\u0007",
+ "U\u0002\u0002\u71c9\u71ca\u0007V\u0002\u0002\u71ca\u110a\u0003\u0002",
+ "\u0002\u0002\u71cb\u71cc\u0007F\u0002\u0002\u71cc\u71cd\u0007G\u0002",
+ "\u0002\u71cd\u71ce\u0007P\u0002\u0002\u71ce\u71cf\u0007U\u0002\u0002",
+ "\u71cf\u71d0\u0007G\u0002\u0002\u71d0\u71d1\u0007a\u0002\u0002\u71d1",
+ "\u71d2\u0007T\u0002\u0002\u71d2\u71d3\u0007C\u0002\u0002\u71d3\u71d4",
+ "\u0007P\u0002\u0002\u71d4\u71d5\u0007M\u0002\u0002\u71d5\u110c\u0003",
+ "\u0002\u0002\u0002\u71d6\u71d7\u0007N\u0002\u0002\u71d7\u71d8\u0007",
+ "K\u0002\u0002\u71d8\u71d9\u0007U\u0002\u0002\u71d9\u71da\u0007V\u0002",
+ "\u0002\u71da\u71db\u0007C\u0002\u0002\u71db\u71dc\u0007I\u0002\u0002",
+ "\u71dc\u71dd\u0007I\u0002\u0002\u71dd\u110e\u0003\u0002\u0002\u0002",
+ "\u71de\u71df\u0007R\u0002\u0002\u71df\u71e0\u0007G\u0002\u0002\u71e0",
+ "\u71e1\u0007T\u0002\u0002\u71e1\u71e2\u0007E\u0002\u0002\u71e2\u71e3",
+ "\u0007G\u0002\u0002\u71e3\u71e4\u0007P\u0002\u0002\u71e4\u71e5\u0007",
+ "V\u0002\u0002\u71e5\u71e6\u0007a\u0002\u0002\u71e6\u71e7\u0007T\u0002",
+ "\u0002\u71e7\u71e8\u0007C\u0002\u0002\u71e8\u71e9\u0007P\u0002\u0002",
+ "\u71e9\u71ea\u0007M\u0002\u0002\u71ea\u1110\u0003\u0002\u0002\u0002",
+ "\u71eb\u71ec\u0007R\u0002\u0002\u71ec\u71ed\u0007G\u0002\u0002\u71ed",
+ "\u71ee\u0007T\u0002\u0002\u71ee\u71ef\u0007E\u0002\u0002\u71ef\u71f0",
+ "\u0007G\u0002\u0002\u71f0\u71f1\u0007P\u0002\u0002\u71f1\u71f2\u0007",
+ "V\u0002\u0002\u71f2\u71f3\u0007K\u0002\u0002\u71f3\u71f4\u0007N\u0002",
+ "\u0002\u71f4\u71f5\u0007G\u0002\u0002\u71f5\u71f6\u0007a\u0002\u0002",
+ "\u71f6\u71f7\u0007E\u0002\u0002\u71f7\u71f8\u0007Q\u0002\u0002\u71f8",
+ "\u71f9\u0007P\u0002\u0002\u71f9\u71fa\u0007V\u0002\u0002\u71fa\u1112",
+ "\u0003\u0002\u0002\u0002\u71fb\u71fc\u0007R\u0002\u0002\u71fc\u71fd",
+ "\u0007G\u0002\u0002\u71fd\u71fe\u0007T\u0002\u0002\u71fe\u71ff\u0007",
+ "E\u0002\u0002\u71ff\u7200\u0007G\u0002\u0002\u7200\u7201\u0007P\u0002",
+ "\u0002\u7201\u7202\u0007V\u0002\u0002\u7202\u7203\u0007K\u0002\u0002",
+ "\u7203\u7204\u0007N\u0002\u0002\u7204\u7205\u0007G\u0002\u0002\u7205",
+ "\u7206\u0007a\u0002\u0002\u7206\u7207\u0007F\u0002\u0002\u7207\u7208",
+ "\u0007K\u0002\u0002\u7208\u7209\u0007U\u0002\u0002\u7209\u720a\u0007",
+ "E\u0002\u0002\u720a\u1114\u0003\u0002\u0002\u0002\u720b\u720c\u0007",
+ "T\u0002\u0002\u720c\u720d\u0007C\u0002\u0002\u720d\u720e\u0007P\u0002",
+ "\u0002\u720e\u720f\u0007M\u0002\u0002\u720f\u1116\u0003\u0002\u0002",
+ "\u0002\u7210\u7211\u0007C\u0002\u0002\u7211\u7212\u0007X\u0002\u0002",
+ "\u7212\u7213\u0007I\u0002\u0002\u7213\u1118\u0003\u0002\u0002\u0002",
+ "\u7214\u7215\u0007E\u0002\u0002\u7215\u7216\u0007Q\u0002\u0002\u7216",
+ "\u7217\u0007T\u0002\u0002\u7217\u7218\u0007T\u0002\u0002\u7218\u111a",
+ "\u0003\u0002\u0002\u0002\u7219\u721a\u0007E\u0002\u0002\u721a\u721b",
+ "\u0007Q\u0002\u0002\u721b\u721c\u0007X\u0002\u0002\u721c\u721d\u0007",
+ "C\u0002\u0002\u721d\u721e\u0007T\u0002\u0002\u721e\u721f\u0007a\u0002",
+ "\u0002\u721f\u111c\u0003\u0002\u0002\u0002\u7220\u7221\u0007F\u0002",
+ "\u0002\u7221\u7222\u0007G\u0002\u0002\u7222\u7223\u0007E\u0002\u0002",
+ "\u7223\u7224\u0007Q\u0002\u0002\u7224\u7225\u0007F\u0002\u0002\u7225",
+ "\u7226\u0007G\u0002\u0002\u7226\u111e\u0003\u0002\u0002\u0002\u7227",
+ "\u7228\u0007N\u0002\u0002\u7228\u7229\u0007C\u0002\u0002\u7229\u722a",
+ "\u0007I\u0002\u0002\u722a\u1120\u0003\u0002\u0002\u0002\u722b\u722c",
+ "\u0007N\u0002\u0002\u722c\u722d\u0007G\u0002\u0002\u722d\u722e\u0007",
+ "C\u0002\u0002\u722e\u722f\u0007F\u0002\u0002\u722f\u1122\u0003\u0002",
+ "\u0002\u0002\u7230\u7231\u0007O\u0002\u0002\u7231\u7232\u0007C\u0002",
+ "\u0002\u7232\u7233\u0007Z\u0002\u0002\u7233\u1124\u0003\u0002\u0002",
+ "\u0002\u7234\u7235\u0007O\u0002\u0002\u7235\u7236\u0007G\u0002\u0002",
+ "\u7236\u7237\u0007F\u0002\u0002\u7237\u7238\u0007K\u0002\u0002\u7238",
+ "\u7239\u0007C\u0002\u0002\u7239\u723a\u0007P\u0002\u0002\u723a\u1126",
+ "\u0003\u0002\u0002\u0002\u723b\u723c\u0007O\u0002\u0002\u723c\u723d",
+ "\u0007K\u0002\u0002\u723d\u723e\u0007P\u0002\u0002\u723e\u1128\u0003",
+ "\u0002\u0002\u0002\u723f\u7240\u0007P\u0002\u0002\u7240\u7241\u0007",
+ "V\u0002\u0002\u7241\u7242\u0007K\u0002\u0002\u7242\u7243\u0007N\u0002",
+ "\u0002\u7243\u7244\u0007G\u0002\u0002\u7244\u112a\u0003\u0002\u0002",
+ "\u0002\u7245\u7246\u0007P\u0002\u0002\u7246\u7247\u0007X\u0002\u0002",
+ "\u7247\u7248\u0007N\u0002\u0002\u7248\u112c\u0003\u0002\u0002\u0002",
+ "\u7249\u724a\u0007T\u0002\u0002\u724a\u724b\u0007C\u0002\u0002\u724b",
+ "\u724c\u0007V\u0002\u0002\u724c\u724d\u0007K\u0002\u0002\u724d\u724e",
+ "\u0007Q\u0002\u0002\u724e\u724f\u0007a\u0002\u0002\u724f\u7250\u0007",
+ "V\u0002\u0002\u7250\u7251\u0007Q\u0002\u0002\u7251\u7252\u0007a\u0002",
+ "\u0002\u7252\u7253\u0007T\u0002\u0002\u7253\u7254\u0007G\u0002\u0002",
+ "\u7254\u7255\u0007R\u0002\u0002\u7255\u7256\u0007Q\u0002\u0002\u7256",
+ "\u7257\u0007T\u0002\u0002\u7257\u7258\u0007V\u0002\u0002\u7258\u112e",
+ "\u0003\u0002\u0002\u0002\u7259\u725a\u0007T\u0002\u0002\u725a\u725b",
+ "\u0007G\u0002\u0002\u725b\u725c\u0007I\u0002\u0002\u725c\u725d\u0007",
+ "T\u0002\u0002\u725d\u725e\u0007a\u0002\u0002\u725e\u1130\u0003\u0002",
+ "\u0002\u0002\u725f\u7260\u0007T\u0002\u0002\u7260\u7261\u0007Q\u0002",
+ "\u0002\u7261\u7262\u0007W\u0002\u0002\u7262\u7263\u0007P\u0002\u0002",
+ "\u7263\u7264\u0007F\u0002\u0002\u7264\u1132\u0003\u0002\u0002\u0002",
+ "\u7265\u7266\u0007T\u0002\u0002\u7266\u7267\u0007Q\u0002\u0002\u7267",
+ "\u7268\u0007Y\u0002\u0002\u7268\u7269\u0007a\u0002\u0002\u7269\u726a",
+ "\u0007P\u0002\u0002\u726a\u726b\u0007W\u0002\u0002\u726b\u726c\u0007",
+ "O\u0002\u0002\u726c\u726d\u0007D\u0002\u0002\u726d\u726e\u0007G\u0002",
+ "\u0002\u726e\u726f\u0007T\u0002\u0002\u726f\u1134\u0003\u0002\u0002",
+ "\u0002\u7270\u7271\u0007U\u0002\u0002\u7271\u7272\u0007W\u0002\u0002",
+ "\u7272\u7273\u0007D\u0002\u0002\u7273\u7274\u0007U\u0002\u0002\u7274",
+ "\u7275\u0007V\u0002\u0002\u7275\u7276\u0007T\u0002\u0002\u7276\u1136",
+ "\u0003\u0002\u0002\u0002\u7277\u7278\u0007V\u0002\u0002\u7278\u7279",
+ "\u0007Q\u0002\u0002\u7279\u727a\u0007a\u0002\u0002\u727a\u727b\u0007",
+ "E\u0002\u0002\u727b\u727c\u0007J\u0002\u0002\u727c\u727d\u0007C\u0002",
+ "\u0002\u727d\u727e\u0007T\u0002\u0002\u727e\u1138\u0003\u0002\u0002",
+ "\u0002\u727f\u7280\u0007V\u0002\u0002\u7280\u7281\u0007T\u0002\u0002",
+ "\u7281\u7282\u0007K\u0002\u0002\u7282\u7283\u0007O\u0002\u0002\u7283",
+ "\u113a\u0003\u0002\u0002\u0002\u7284\u7285\u0007U\u0002\u0002\u7285",
+ "\u7286\u0007W\u0002\u0002\u7286\u7287\u0007O\u0002\u0002\u7287\u113c",
+ "\u0003\u0002\u0002\u0002\u7288\u7289\u0007U\u0002\u0002\u7289\u728a",
+ "\u0007V\u0002\u0002\u728a\u728b\u0007F\u0002\u0002\u728b\u728c\u0007",
+ "F\u0002\u0002\u728c\u728d\u0007G\u0002\u0002\u728d\u728e\u0007X\u0002",
+ "\u0002\u728e\u113e\u0003\u0002\u0002\u0002\u728f\u7290\u0007X\u0002",
+ "\u0002\u7290\u7291\u0007C\u0002\u0002\u7291\u7292\u0007T\u0002\u0002",
+ "\u7292\u7293\u0007a\u0002\u0002\u7293\u1140\u0003\u0002\u0002\u0002",
+ "\u7294\u7295\u0007X\u0002\u0002\u7295\u7296\u0007C\u0002\u0002\u7296",
+ "\u7297\u0007T\u0002\u0002\u7297\u7298\u0007K\u0002\u0002\u7298\u7299",
+ "\u0007C\u0002\u0002\u7299\u729a\u0007P\u0002\u0002\u729a\u729b\u0007",
+ "E\u0002\u0002\u729b\u729c\u0007G\u0002\u0002\u729c\u1142\u0003\u0002",
+ "\u0002\u0002\u729d\u729e\u0007N\u0002\u0002\u729e\u729f\u0007G\u0002",
+ "\u0002\u729f\u72a0\u0007C\u0002\u0002\u72a0\u72a1\u0007U\u0002\u0002",
+ "\u72a1\u72a2\u0007V\u0002\u0002\u72a2\u1144\u0003\u0002\u0002\u0002",
+ "\u72a3\u72a4\u0007I\u0002\u0002\u72a4\u72a5\u0007T\u0002\u0002\u72a5",
+ "\u72a6\u0007G\u0002\u0002\u72a6\u72a7\u0007C\u0002\u0002\u72a7\u72a8",
+ "\u0007V\u0002\u0002\u72a8\u72a9\u0007G\u0002\u0002\u72a9\u72aa\u0007",
+ "U\u0002\u0002\u72aa\u72ab\u0007V\u0002\u0002\u72ab\u1146\u0003\u0002",
+ "\u0002\u0002\u72ac\u72ad\u0007V\u0002\u0002\u72ad\u72ae\u0007Q\u0002",
+ "\u0002\u72ae\u72af\u0007a\u0002\u0002\u72af\u72b0\u0007F\u0002\u0002",
+ "\u72b0\u72b1\u0007C\u0002\u0002\u72b1\u72b2\u0007V\u0002\u0002\u72b2",
+ "\u72b3\u0007G\u0002\u0002\u72b3\u1148\u0003\u0002\u0002\u0002\u72b4",
+ "\u72b5\u0007P\u0002\u0002\u72b5\u72bc\u0007)\u0002\u0002\u72b6\u72bb",
+ "\n\u0002\u0002\u0002\u72b7\u72b8\u0007)\u0002\u0002\u72b8\u72bb\u0007",
+ ")\u0002\u0002\u72b9\u72bb\u0005\u11b7\u08dc\u0002\u72ba\u72b6\u0003",
+ "\u0002\u0002\u0002\u72ba\u72b7\u0003\u0002\u0002\u0002\u72ba\u72b9\u0003",
+ "\u0002\u0002\u0002\u72bb\u72be\u0003\u0002\u0002\u0002\u72bc\u72ba\u0003",
+ "\u0002\u0002\u0002\u72bc\u72bd\u0003\u0002\u0002\u0002\u72bd\u72bf\u0003",
+ "\u0002\u0002\u0002\u72be\u72bc\u0003\u0002\u0002\u0002\u72bf\u72c0\u0007",
+ ")\u0002\u0002\u72c0\u114a\u0003\u0002\u0002\u0002\u72c1\u72ca\u0007",
+ "D\u0002\u0002\u72c2\u72c6\u0007)\u0002\u0002\u72c3\u72c5\t\u0003\u0002",
+ "\u0002\u72c4\u72c3\u0003\u0002\u0002\u0002\u72c5\u72c8\u0003\u0002\u0002",
+ "\u0002\u72c6\u72c4\u0003\u0002\u0002\u0002\u72c6\u72c7\u0003\u0002\u0002",
+ "\u0002\u72c7\u72c9\u0003\u0002\u0002\u0002\u72c8\u72c6\u0003\u0002\u0002",
+ "\u0002\u72c9\u72cb\u0007)\u0002\u0002\u72ca\u72c2\u0003\u0002\u0002",
+ "\u0002\u72cb\u72cc\u0003\u0002\u0002\u0002\u72cc\u72ca\u0003\u0002\u0002",
+ "\u0002\u72cc\u72cd\u0003\u0002\u0002\u0002\u72cd\u114c\u0003\u0002\u0002",
+ "\u0002\u72ce\u72d7\u0007Z\u0002\u0002\u72cf\u72d3\u0007)\u0002\u0002",
+ "\u72d0\u72d2\t\u0004\u0002\u0002\u72d1\u72d0\u0003\u0002\u0002\u0002",
+ "\u72d2\u72d5\u0003\u0002\u0002\u0002\u72d3\u72d1\u0003\u0002\u0002\u0002",
+ "\u72d3\u72d4\u0003\u0002\u0002\u0002\u72d4\u72d6\u0003\u0002\u0002\u0002",
+ "\u72d5\u72d3\u0003\u0002\u0002\u0002\u72d6\u72d8\u0007)\u0002\u0002",
+ "\u72d7\u72cf\u0003\u0002\u0002\u0002\u72d8\u72d9\u0003\u0002\u0002\u0002",
+ "\u72d9\u72d7\u0003\u0002\u0002\u0002\u72d9\u72da\u0003\u0002\u0002\u0002",
+ "\u72da\u114e\u0003\u0002\u0002\u0002\u72db\u72dc\u00070\u0002\u0002",
+ "\u72dc\u72dd\u00070\u0002\u0002\u72dd\u1150\u0003\u0002\u0002\u0002",
+ "\u72de\u72df\u00070\u0002\u0002\u72df\u1152\u0003\u0002\u0002\u0002",
+ "\u72e0\u72e2\t\u0005\u0002\u0002\u72e1\u72e0\u0003\u0002\u0002\u0002",
+ "\u72e2\u72e3\u0003\u0002\u0002\u0002\u72e3\u72e1\u0003\u0002\u0002\u0002",
+ "\u72e3\u72e4\u0003\u0002\u0002\u0002\u72e4\u1154\u0003\u0002\u0002\u0002",
+ "\u72e5\u72f2\u0005\u11b5\u08db\u0002\u72e6\u72e8\u0007G\u0002\u0002",
+ "\u72e7\u72e9\t\u0006\u0002\u0002\u72e8\u72e7\u0003\u0002\u0002\u0002",
+ "\u72e8\u72e9\u0003\u0002\u0002\u0002\u72e9\u72f0\u0003\u0002\u0002\u0002",
+ "\u72ea\u72f1\u0005\u11b5\u08db\u0002\u72eb\u72ed\t\u0005\u0002\u0002",
+ "\u72ec\u72eb\u0003\u0002\u0002\u0002\u72ed\u72ee\u0003\u0002\u0002\u0002",
+ "\u72ee\u72ec\u0003\u0002\u0002\u0002\u72ee\u72ef\u0003\u0002\u0002\u0002",
+ "\u72ef\u72f1\u0003\u0002\u0002\u0002\u72f0\u72ea\u0003\u0002\u0002\u0002",
+ "\u72f0\u72ec\u0003\u0002\u0002\u0002\u72f1\u72f3\u0003\u0002\u0002\u0002",
+ "\u72f2\u72e6\u0003\u0002\u0002\u0002\u72f2\u72f3\u0003\u0002\u0002\u0002",
+ "\u72f3\u72f5\u0003\u0002\u0002\u0002\u72f4\u72f6\t\u0007\u0002\u0002",
+ "\u72f5\u72f4\u0003\u0002\u0002\u0002\u72f5\u72f6\u0003\u0002\u0002\u0002",
+ "\u72f6\u1156\u0003\u0002\u0002\u0002\u72f7\u72fe\u0007)\u0002\u0002",
+ "\u72f8\u72fd\n\u0002\u0002\u0002\u72f9\u72fa\u0007)\u0002\u0002\u72fa",
+ "\u72fd\u0007)\u0002\u0002\u72fb\u72fd\u0005\u11b7\u08dc\u0002\u72fc",
+ "\u72f8\u0003\u0002\u0002\u0002\u72fc\u72f9\u0003\u0002\u0002\u0002\u72fc",
+ "\u72fb\u0003\u0002\u0002\u0002\u72fd\u7300\u0003\u0002\u0002\u0002\u72fe",
+ "\u72fc\u0003\u0002\u0002\u0002\u72fe\u72ff\u0003\u0002\u0002\u0002\u72ff",
+ "\u7301\u0003\u0002\u0002\u0002\u7300\u72fe\u0003\u0002\u0002\u0002\u7301",
+ "\u7302\u0007)\u0002\u0002\u7302\u1158\u0003\u0002\u0002\u0002\u7303",
+ "\u7304\u0007S\u0002\u0002\u7304\u730d\u0007)\u0002\u0002\u7305\u730e",
+ "\u0005\u115b\u08ae\u0002\u7306\u730e\u0005\u115d\u08af\u0002\u7307\u730e",
+ "\u0005\u115f\u08b0\u0002\u7308\u730e\u0005\u1161\u08b1\u0002\u7309\u730e",
+ "\u0005\u1163\u08b2\u0002\u730a\u730e\u0005\u1165\u08b3\u0002\u730b\u730e",
+ "\u0005\u1167\u08b4\u0002\u730c\u730e\u0005\u1169\u08b5\u0002\u730d\u7305",
+ "\u0003\u0002\u0002\u0002\u730d\u7306\u0003\u0002\u0002\u0002\u730d\u7307",
+ "\u0003\u0002\u0002\u0002\u730d\u7308\u0003\u0002\u0002\u0002\u730d\u7309",
+ "\u0003\u0002\u0002\u0002\u730d\u730a\u0003\u0002\u0002\u0002\u730d\u730b",
+ "\u0003\u0002\u0002\u0002\u730d\u730c\u0003\u0002\u0002\u0002\u730e\u730f",
+ "\u0003\u0002\u0002\u0002\u730f\u7310\u0007)\u0002\u0002\u7310\u7311",
+ "\u0003\u0002\u0002\u0002\u7311\u7312\b\u08ad\u0002\u0002\u7312\u115a",
+ "\u0003\u0002\u0002\u0002\u7313\u7317\u0007>\u0002\u0002\u7314\u7316",
+ "\u000b\u0002\u0002\u0002\u7315\u7314\u0003\u0002\u0002\u0002\u7316\u7319",
+ "\u0003\u0002\u0002\u0002\u7317\u7318\u0003\u0002\u0002\u0002\u7317\u7315",
+ "\u0003\u0002\u0002\u0002\u7318\u731a\u0003\u0002\u0002\u0002\u7319\u7317",
+ "\u0003\u0002\u0002\u0002\u731a\u731b\u0007@\u0002\u0002\u731b\u115c",
+ "\u0003\u0002\u0002\u0002\u731c\u7320\u0007}\u0002\u0002\u731d\u731f",
+ "\u000b\u0002\u0002\u0002\u731e\u731d\u0003\u0002\u0002\u0002\u731f\u7322",
+ "\u0003\u0002\u0002\u0002\u7320\u7321\u0003\u0002\u0002\u0002\u7320\u731e",
+ "\u0003\u0002\u0002\u0002\u7321\u7323\u0003\u0002\u0002\u0002\u7322\u7320",
+ "\u0003\u0002\u0002\u0002\u7323\u7324\u0007\u007f\u0002\u0002\u7324\u115e",
+ "\u0003\u0002\u0002\u0002\u7325\u7329\u0007]\u0002\u0002\u7326\u7328",
+ "\u000b\u0002\u0002\u0002\u7327\u7326\u0003\u0002\u0002\u0002\u7328\u732b",
+ "\u0003\u0002\u0002\u0002\u7329\u732a\u0003\u0002\u0002\u0002\u7329\u7327",
+ "\u0003\u0002\u0002\u0002\u732a\u732c\u0003\u0002\u0002\u0002\u732b\u7329",
+ "\u0003\u0002\u0002\u0002\u732c\u732d\u0007_\u0002\u0002\u732d\u1160",
+ "\u0003\u0002\u0002\u0002\u732e\u7332\u0007*\u0002\u0002\u732f\u7331",
+ "\u000b\u0002\u0002\u0002\u7330\u732f\u0003\u0002\u0002\u0002\u7331\u7334",
+ "\u0003\u0002\u0002\u0002\u7332\u7333\u0003\u0002\u0002\u0002\u7332\u7330",
+ "\u0003\u0002\u0002\u0002\u7333\u7335\u0003\u0002\u0002\u0002\u7334\u7332",
+ "\u0003\u0002\u0002\u0002\u7335\u7336\u0007+\u0002\u0002\u7336\u1162",
+ "\u0003\u0002\u0002\u0002\u7337\u733b\u0007#\u0002\u0002\u7338\u733a",
+ "\u000b\u0002\u0002\u0002\u7339\u7338\u0003\u0002\u0002\u0002\u733a\u733d",
+ "\u0003\u0002\u0002\u0002\u733b\u733c\u0003\u0002\u0002\u0002\u733b\u7339",
+ "\u0003\u0002\u0002\u0002\u733c\u733e\u0003\u0002\u0002\u0002\u733d\u733b",
+ "\u0003\u0002\u0002\u0002\u733e\u733f\u0007#\u0002\u0002\u733f\u1164",
+ "\u0003\u0002\u0002\u0002\u7340\u7344\u0007%\u0002\u0002\u7341\u7343",
+ "\u000b\u0002\u0002\u0002\u7342\u7341\u0003\u0002\u0002\u0002\u7343\u7346",
+ "\u0003\u0002\u0002\u0002\u7344\u7345\u0003\u0002\u0002\u0002\u7344\u7342",
+ "\u0003\u0002\u0002\u0002\u7345\u7347\u0003\u0002\u0002\u0002\u7346\u7344",
+ "\u0003\u0002\u0002\u0002\u7347\u7348\u0007%\u0002\u0002\u7348\u1166",
+ "\u0003\u0002\u0002\u0002\u7349\u734d\u0007)\u0002\u0002\u734a\u734c",
+ "\u000b\u0002\u0002\u0002\u734b\u734a\u0003\u0002\u0002\u0002\u734c\u734f",
+ "\u0003\u0002\u0002\u0002\u734d\u734e\u0003\u0002\u0002\u0002\u734d\u734b",
+ "\u0003\u0002\u0002\u0002\u734e\u7350\u0003\u0002\u0002\u0002\u734f\u734d",
+ "\u0003\u0002\u0002\u0002\u7350\u7351\u0007)\u0002\u0002\u7351\u1168",
+ "\u0003\u0002\u0002\u0002\u7352\u7356\u0007$\u0002\u0002\u7353\u7355",
+ "\u000b\u0002\u0002\u0002\u7354\u7353\u0003\u0002\u0002\u0002\u7355\u7358",
+ "\u0003\u0002\u0002\u0002\u7356\u7357\u0003\u0002\u0002\u0002\u7356\u7354",
+ "\u0003\u0002\u0002\u0002\u7357\u7359\u0003\u0002\u0002\u0002\u7358\u7356",
+ "\u0003\u0002\u0002\u0002\u7359\u735a\u0007$\u0002\u0002\u735a\u116a",
+ "\u0003\u0002\u0002\u0002\u735b\u735f\u0007$\u0002\u0002\u735c\u7360",
+ "\n\b\u0002\u0002\u735d\u735e\u0007$\u0002\u0002\u735e\u7360\u0007$\u0002",
+ "\u0002\u735f\u735c\u0003\u0002\u0002\u0002\u735f\u735d\u0003\u0002\u0002",
+ "\u0002\u7360\u7361\u0003\u0002\u0002\u0002\u7361\u735f\u0003\u0002\u0002",
+ "\u0002\u7361\u7362\u0003\u0002\u0002\u0002\u7362\u7363\u0003\u0002\u0002",
+ "\u0002\u7363\u7364\u0007$\u0002\u0002\u7364\u116c\u0003\u0002\u0002",
+ "\u0002\u7365\u7366\u0007\'\u0002\u0002\u7366\u116e\u0003\u0002\u0002",
+ "\u0002\u7367\u7368\u0007(\u0002\u0002\u7368\u1170\u0003\u0002\u0002",
+ "\u0002\u7369\u736a\u0007*\u0002\u0002\u736a\u1172\u0003\u0002\u0002",
+ "\u0002\u736b\u736c\u0007+\u0002\u0002\u736c\u1174\u0003\u0002\u0002",
+ "\u0002\u736d\u736e\u0007,\u0002\u0002\u736e\u736f\u0007,\u0002\u0002",
+ "\u736f\u1176\u0003\u0002\u0002\u0002\u7370\u7371\u0007,\u0002\u0002",
+ "\u7371\u1178\u0003\u0002\u0002\u0002\u7372\u7373\u0007-\u0002\u0002",
+ "\u7373\u117a\u0003\u0002\u0002\u0002\u7374\u7375\u0007/\u0002\u0002",
+ "\u7375\u117c\u0003\u0002\u0002\u0002\u7376\u7377\u0007.\u0002\u0002",
+ "\u7377\u117e\u0003\u0002\u0002\u0002\u7378\u7379\u00071\u0002\u0002",
+ "\u7379\u1180\u0003\u0002\u0002\u0002\u737a\u737b\u0007B\u0002\u0002",
+ "\u737b\u1182\u0003\u0002\u0002\u0002\u737c\u737d\u0007<\u0002\u0002",
+ "\u737d\u737e\u0007?\u0002\u0002\u737e\u1184\u0003\u0002\u0002\u0002",
+ "\u737f\u7380\u0007<\u0002\u0002\u7380\u7385\u0005\u11b3\u08da\u0002",
+ "\u7381\u7384\u0005\u11b3\u08da\u0002\u7382\u7384\t\t\u0002\u0002\u7383",
+ "\u7381\u0003\u0002\u0002\u0002\u7383\u7382\u0003\u0002\u0002\u0002\u7384",
+ "\u7387\u0003\u0002\u0002\u0002\u7385\u7383\u0003\u0002\u0002\u0002\u7385",
+ "\u7386\u0003\u0002\u0002\u0002\u7386\u738e\u0003\u0002\u0002\u0002\u7387",
+ "\u7385\u0003\u0002\u0002\u0002\u7388\u7389\u0007<\u0002\u0002\u7389",
+ "\u738e\u0005\u116b\u08b6\u0002\u738a\u738b\u0007<\u0002\u0002\u738b",
+ "\u738e\u0005\u1153\u08aa\u0002\u738c\u738e\u0005\u11b1\u08d9\u0002\u738d",
+ "\u737f\u0003\u0002\u0002\u0002\u738d\u7388\u0003\u0002\u0002\u0002\u738d",
+ "\u738a\u0003\u0002\u0002\u0002\u738d\u738c\u0003\u0002\u0002\u0002\u738e",
+ "\u1186\u0003\u0002\u0002\u0002\u738f\u7390\u0007#\u0002\u0002\u7390",
+ "\u7398\u0007?\u0002\u0002\u7391\u7392\u0007>\u0002\u0002\u7392\u7398",
+ "\u0007@\u0002\u0002\u7393\u7394\u0007`\u0002\u0002\u7394\u7398\u0007",
+ "?\u0002\u0002\u7395\u7396\u0007\u0080\u0002\u0002\u7396\u7398\u0007",
+ "?\u0002\u0002\u7397\u738f\u0003\u0002\u0002\u0002\u7397\u7391\u0003",
+ "\u0002\u0002\u0002\u7397\u7393\u0003\u0002\u0002\u0002\u7397\u7395\u0003",
+ "\u0002\u0002\u0002\u7398\u1188\u0003\u0002\u0002\u0002\u7399\u739a\u0007",
+ "`\u0002\u0002\u739a\u118a\u0003\u0002\u0002\u0002\u739b\u739c\u0007",
+ "\u0080\u0002\u0002\u739c\u118c\u0003\u0002\u0002\u0002\u739d\u739e\u0007",
+ "#\u0002\u0002\u739e\u118e\u0003\u0002\u0002\u0002\u739f\u73a0\u0007",
+ "@\u0002\u0002\u73a0\u1190\u0003\u0002\u0002\u0002\u73a1\u73a2\u0007",
+ ">\u0002\u0002\u73a2\u1192\u0003\u0002\u0002\u0002\u73a3\u73a4\u0007",
+ "<\u0002\u0002\u73a4\u1194\u0003\u0002\u0002\u0002\u73a5\u73a6\u0007",
+ "=\u0002\u0002\u73a6\u1196\u0003\u0002\u0002\u0002\u73a7\u73a8\u0007",
+ "~\u0002\u0002\u73a8\u1198\u0003\u0002\u0002\u0002\u73a9\u73aa\u0007",
+ "?\u0002\u0002\u73aa\u119a\u0003\u0002\u0002\u0002\u73ab\u73ac\u0007",
+ "]\u0002\u0002\u73ac\u119c\u0003\u0002\u0002\u0002\u73ad\u73ae\u0007",
+ "_\u0002\u0002\u73ae\u119e\u0003\u0002\u0002\u0002\u73af\u73b0\u0007",
+ "a\u0002\u0002\u73b0\u11a0\u0003\u0002\u0002\u0002\u73b1\u73b2\u0007",
+ "/\u0002\u0002\u73b2\u73b3\u0007/\u0002\u0002\u73b3\u73b7\u0003\u0002",
+ "\u0002\u0002\u73b4\u73b6\n\n\u0002\u0002\u73b5\u73b4\u0003\u0002\u0002",
+ "\u0002\u73b6\u73b9\u0003\u0002\u0002\u0002\u73b7\u73b5\u0003\u0002\u0002",
+ "\u0002\u73b7\u73b8\u0003\u0002\u0002\u0002\u73b8\u73ba\u0003\u0002\u0002",
+ "\u0002\u73b9\u73b7\u0003\u0002\u0002\u0002\u73ba\u73bb\u0005\u11af\u08d8",
+ "\u0002\u73bb\u73bc\u0003\u0002\u0002\u0002\u73bc\u73bd\b\u08d1\u0003",
+ "\u0002\u73bd\u11a2\u0003\u0002\u0002\u0002\u73be\u73bf\u00071\u0002",
+ "\u0002\u73bf\u73c0\u0007,\u0002\u0002\u73c0\u73c4\u0003\u0002\u0002",
+ "\u0002\u73c1\u73c3\u000b\u0002\u0002\u0002\u73c2\u73c1\u0003\u0002\u0002",
+ "\u0002\u73c3\u73c6\u0003\u0002\u0002\u0002\u73c4\u73c5\u0003\u0002\u0002",
+ "\u0002\u73c4\u73c2\u0003\u0002\u0002\u0002\u73c5\u73c7\u0003\u0002\u0002",
+ "\u0002\u73c6\u73c4\u0003\u0002\u0002\u0002\u73c7\u73c8\u0007,\u0002",
+ "\u0002\u73c8\u73c9\u00071\u0002\u0002\u73c9\u73ca\u0003\u0002\u0002",
+ "\u0002\u73ca\u73cb\b\u08d2\u0003\u0002\u73cb\u11a4\u0003\u0002\u0002",
+ "\u0002\u73cc\u73cd\u0007T\u0002\u0002\u73cd\u73ce\u0007G\u0002\u0002",
+ "\u73ce\u73cf\u0007O\u0002\u0002\u73cf\u73d0\u0003\u0002\u0002\u0002",
+ "\u73d0\u73d4\u0006\u08d3\u0002\u0002\u73d1\u73d2\u0007C\u0002\u0002",
+ "\u73d2\u73d3\u0007T\u0002\u0002\u73d3\u73d5\u0007M\u0002\u0002\u73d4",
+ "\u73d1\u0003\u0002\u0002\u0002\u73d4\u73d5\u0003\u0002\u0002\u0002\u73d5",
+ "\u73dd\u0003\u0002\u0002\u0002\u73d6\u73da\u0007\"\u0002\u0002\u73d7",
+ "\u73d9\n\n\u0002\u0002\u73d8\u73d7\u0003\u0002\u0002\u0002\u73d9\u73dc",
+ "\u0003\u0002\u0002\u0002\u73da\u73d8\u0003\u0002\u0002\u0002\u73da\u73db",
+ "\u0003\u0002\u0002\u0002\u73db\u73de\u0003\u0002\u0002\u0002\u73dc\u73da",
+ "\u0003\u0002\u0002\u0002\u73dd\u73d6\u0003\u0002\u0002\u0002\u73dd\u73de",
+ "\u0003\u0002\u0002\u0002\u73de\u73df\u0003\u0002\u0002\u0002\u73df\u73e0",
+ "\u0005\u11af\u08d8\u0002\u73e0\u73e1\u0003\u0002\u0002\u0002\u73e1\u73e2",
+ "\b\u08d3\u0003\u0002\u73e2\u11a6\u0003\u0002\u0002\u0002\u73e3\u73e4",
+ "\u0007R\u0002\u0002\u73e4\u73e5\u0007T\u0002\u0002\u73e5\u73e6\u0007",
+ "Q\u0002\u0002\u73e6\u73e7\u0003\u0002\u0002\u0002\u73e7\u73eb\u0006",
+ "\u08d4\u0003\u0002\u73e8\u73e9\u0007O\u0002\u0002\u73e9\u73ea\u0007",
+ "R\u0002\u0002\u73ea\u73ec\u0007V\u0002\u0002\u73eb\u73e8\u0003\u0002",
+ "\u0002\u0002\u73eb\u73ec\u0003\u0002\u0002\u0002\u73ec\u73f4\u0003\u0002",
+ "\u0002\u0002\u73ed\u73f1\u0007\"\u0002\u0002\u73ee\u73f0\n\n\u0002\u0002",
+ "\u73ef\u73ee\u0003\u0002\u0002\u0002\u73f0\u73f3\u0003\u0002\u0002\u0002",
+ "\u73f1\u73ef\u0003\u0002\u0002\u0002\u73f1\u73f2\u0003\u0002\u0002\u0002",
+ "\u73f2\u73f5\u0003\u0002\u0002\u0002\u73f3\u73f1\u0003\u0002\u0002\u0002",
+ "\u73f4\u73ed\u0003\u0002\u0002\u0002\u73f4\u73f5\u0003\u0002\u0002\u0002",
+ "\u73f5\u73f6\u0003\u0002\u0002\u0002\u73f6\u73f7\u0005\u11af\u08d8\u0002",
+ "\u73f7\u11a8\u0003\u0002\u0002\u0002\u73f8\u73f9\u0007B\u0002\u0002",
+ "\u73f9\u73fb\u0006\u08d5\u0004\u0002\u73fa\u73fc\u0007B\u0002\u0002",
+ "\u73fb\u73fa\u0003\u0002\u0002\u0002\u73fb\u73fc\u0003\u0002\u0002\u0002",
+ "\u73fc\u7400\u0003\u0002\u0002\u0002\u73fd\u73ff\n\n\u0002\u0002\u73fe",
+ "\u73fd\u0003\u0002\u0002\u0002\u73ff\u7402\u0003\u0002\u0002\u0002\u7400",
+ "\u73fe\u0003\u0002\u0002\u0002\u7400\u7401\u0003\u0002\u0002\u0002\u7401",
+ "\u7403\u0003\u0002\u0002\u0002\u7402\u7400\u0003\u0002\u0002\u0002\u7403",
+ "\u7404\u0005\u11af\u08d8\u0002\u7404\u11aa\u0003\u0002\u0002\u0002\u7405",
+ "\u740a\u0005\u11b3\u08da\u0002\u7406\u7409\u0005\u11b3\u08da\u0002\u7407",
+ "\u7409\t\u000b\u0002\u0002\u7408\u7406\u0003\u0002\u0002\u0002\u7408",
+ "\u7407\u0003\u0002\u0002\u0002\u7409\u740c\u0003\u0002\u0002\u0002\u740a",
+ "\u7408\u0003\u0002\u0002\u0002\u740a\u740b\u0003\u0002\u0002\u0002\u740b",
+ "\u11ac\u0003\u0002\u0002\u0002\u740c\u740a\u0003\u0002\u0002\u0002\u740d",
+ "\u740f\t\f\u0002\u0002\u740e\u740d\u0003\u0002\u0002\u0002\u740f\u7410",
+ "\u0003\u0002\u0002\u0002\u7410\u740e\u0003\u0002\u0002\u0002\u7410\u7411",
+ "\u0003\u0002\u0002\u0002\u7411\u7412\u0003\u0002\u0002\u0002\u7412\u7413",
+ "\b\u08d7\u0003\u0002\u7413\u11ae\u0003\u0002\u0002\u0002\u7414\u7417",
+ "\u0005\u11b7\u08dc\u0002\u7415\u7417\u0007\u0002\u0002\u0003\u7416\u7414",
+ "\u0003\u0002\u0002\u0002\u7416\u7415\u0003\u0002\u0002\u0002\u7417\u11b0",
+ "\u0003\u0002\u0002\u0002\u7418\u7419\u0007A\u0002\u0002\u7419\u11b2",
+ "\u0003\u0002\u0002\u0002\u741a\u741b\t\r\u0002\u0002\u741b\u11b4\u0003",
+ "\u0002\u0002\u0002\u741c\u741e\u0005\u1153\u08aa\u0002\u741d\u741c\u0003",
+ "\u0002\u0002\u0002\u741e\u7421\u0003\u0002\u0002\u0002\u741f\u741d\u0003",
+ "\u0002\u0002\u0002\u741f\u7420\u0003\u0002\u0002\u0002\u7420\u7423\u0003",
+ "\u0002\u0002\u0002\u7421\u741f\u0003\u0002\u0002\u0002\u7422\u7424\u0007",
+ "0\u0002\u0002\u7423\u7422\u0003\u0002\u0002\u0002\u7423\u7424\u0003",
+ "\u0002\u0002\u0002\u7424\u7426\u0003\u0002\u0002\u0002\u7425\u7427\u0005",
+ "\u1153\u08aa\u0002\u7426\u7425\u0003\u0002\u0002\u0002\u7427\u7428\u0003",
+ "\u0002\u0002\u0002\u7428\u7426\u0003\u0002\u0002\u0002\u7428\u7429\u0003",
+ "\u0002\u0002\u0002\u7429\u11b6\u0003\u0002\u0002\u0002\u742a\u742c\u0007",
+ "\u000f\u0002\u0002\u742b\u742a\u0003\u0002\u0002\u0002\u742b\u742c\u0003",
+ "\u0002\u0002\u0002\u742c\u742d\u0003\u0002\u0002\u0002\u742d\u742e\u0007",
+ "\f\u0002\u0002\u742e\u11b8\u0003\u0002\u0002\u0002\u742f\u7430\t\u000e",
+ "\u0002\u0002\u7430\u11ba\u0003\u0002\u0002\u00028\u0002\u4680\u468d",
+ "\u469b\u46c1\u46d1\u46e0\u72ba\u72bc\u72c6\u72cc\u72d3\u72d9\u72e3\u72e8",
+ "\u72ee\u72f0\u72f2\u72f5\u72fc\u72fe\u730d\u7317\u7320\u7329\u7332\u733b",
+ "\u7344\u734d\u7356\u735f\u7361\u7383\u7385\u738d\u7397\u73b7\u73c4\u73d4",
+ "\u73da\u73dd\u73eb\u73f1\u73f4\u73fb\u7400\u7408\u740a\u7410\u7416\u741f",
+ "\u7423\u7428\u742b\u0004\t\u08ad\u0002\u0002\u0003\u0002"].join("");
+
+
+var atn = new antlr4.atn.ATNDeserializer().deserialize(serializedATN);
+
+var decisionsToDFA = atn.decisionToState.map( function(ds, index) { return new antlr4.dfa.DFA(ds, index); });
+
+function PlSqlLexer(input) {
+ PlSqlBaseLexer.call(this, input);
+ this._interp = new antlr4.atn.LexerATNSimulator(this, atn, decisionsToDFA, new antlr4.PredictionContextCache());
+ return this;
+}
+
+PlSqlLexer.prototype = Object.create(PlSqlBaseLexer.prototype);
+PlSqlLexer.prototype.constructor = PlSqlLexer;
+
+Object.defineProperty(PlSqlLexer.prototype, "atn", {
+ get : function() {
+ return atn;
+ }
+});
+
+PlSqlLexer.EOF = antlr4.Token.EOF;
+PlSqlLexer.ABORT = 1;
+PlSqlLexer.ABS = 2;
+PlSqlLexer.ACCESS = 3;
+PlSqlLexer.ACCESSED = 4;
+PlSqlLexer.ACCOUNT = 5;
+PlSqlLexer.ACL = 6;
+PlSqlLexer.ACOS = 7;
+PlSqlLexer.ACTION = 8;
+PlSqlLexer.ACTIONS = 9;
+PlSqlLexer.ACTIVATE = 10;
+PlSqlLexer.ACTIVE = 11;
+PlSqlLexer.ACTIVE_COMPONENT = 12;
+PlSqlLexer.ACTIVE_DATA = 13;
+PlSqlLexer.ACTIVE_FUNCTION = 14;
+PlSqlLexer.ACTIVE_TAG = 15;
+PlSqlLexer.ACTIVITY = 16;
+PlSqlLexer.ADAPTIVE_PLAN = 17;
+PlSqlLexer.ADD = 18;
+PlSqlLexer.ADD_COLUMN = 19;
+PlSqlLexer.ADD_GROUP = 20;
+PlSqlLexer.ADD_MONTHS = 21;
+PlSqlLexer.ADJ_DATE = 22;
+PlSqlLexer.ADMIN = 23;
+PlSqlLexer.ADMINISTER = 24;
+PlSqlLexer.ADMINISTRATOR = 25;
+PlSqlLexer.ADVANCED = 26;
+PlSqlLexer.ADVISE = 27;
+PlSqlLexer.ADVISOR = 28;
+PlSqlLexer.AFD_DISKSTRING = 29;
+PlSqlLexer.AFTER = 30;
+PlSqlLexer.AGENT = 31;
+PlSqlLexer.AGGREGATE = 32;
+PlSqlLexer.A_LETTER = 33;
+PlSqlLexer.ALIAS = 34;
+PlSqlLexer.ALL = 35;
+PlSqlLexer.ALLOCATE = 36;
+PlSqlLexer.ALLOW = 37;
+PlSqlLexer.ALL_ROWS = 38;
+PlSqlLexer.ALTER = 39;
+PlSqlLexer.ALWAYS = 40;
+PlSqlLexer.ANALYZE = 41;
+PlSqlLexer.ANCILLARY = 42;
+PlSqlLexer.AND = 43;
+PlSqlLexer.AND_EQUAL = 44;
+PlSqlLexer.ANOMALY = 45;
+PlSqlLexer.ANSI_REARCH = 46;
+PlSqlLexer.ANTIJOIN = 47;
+PlSqlLexer.ANY = 48;
+PlSqlLexer.ANYSCHEMA = 49;
+PlSqlLexer.APPEND = 50;
+PlSqlLexer.APPENDCHILDXML = 51;
+PlSqlLexer.APPEND_VALUES = 52;
+PlSqlLexer.APPLICATION = 53;
+PlSqlLexer.APPLY = 54;
+PlSqlLexer.APPROX_COUNT_DISTINCT = 55;
+PlSqlLexer.ARCHIVAL = 56;
+PlSqlLexer.ARCHIVE = 57;
+PlSqlLexer.ARCHIVED = 58;
+PlSqlLexer.ARCHIVELOG = 59;
+PlSqlLexer.ARRAY = 60;
+PlSqlLexer.AS = 61;
+PlSqlLexer.ASC = 62;
+PlSqlLexer.ASCII = 63;
+PlSqlLexer.ASCIISTR = 64;
+PlSqlLexer.ASIN = 65;
+PlSqlLexer.ASIS = 66;
+PlSqlLexer.ASSEMBLY = 67;
+PlSqlLexer.ASSIGN = 68;
+PlSqlLexer.ASSOCIATE = 69;
+PlSqlLexer.ASYNC = 70;
+PlSqlLexer.ASYNCHRONOUS = 71;
+PlSqlLexer.ATAN2 = 72;
+PlSqlLexer.ATAN = 73;
+PlSqlLexer.AT = 74;
+PlSqlLexer.ATTRIBUTE = 75;
+PlSqlLexer.ATTRIBUTES = 76;
+PlSqlLexer.AUDIT = 77;
+PlSqlLexer.AUTHENTICATED = 78;
+PlSqlLexer.AUTHENTICATION = 79;
+PlSqlLexer.AUTHID = 80;
+PlSqlLexer.AUTHORIZATION = 81;
+PlSqlLexer.AUTOALLOCATE = 82;
+PlSqlLexer.AUTO = 83;
+PlSqlLexer.AUTOBACKUP = 84;
+PlSqlLexer.AUTOEXTEND = 85;
+PlSqlLexer.AUTO_LOGIN = 86;
+PlSqlLexer.AUTOMATIC = 87;
+PlSqlLexer.AUTONOMOUS_TRANSACTION = 88;
+PlSqlLexer.AUTO_REOPTIMIZE = 89;
+PlSqlLexer.AVAILABILITY = 90;
+PlSqlLexer.AVRO = 91;
+PlSqlLexer.BACKGROUND = 92;
+PlSqlLexer.BACKUP = 93;
+PlSqlLexer.BACKUPSET = 94;
+PlSqlLexer.BASIC = 95;
+PlSqlLexer.BASICFILE = 96;
+PlSqlLexer.BATCH = 97;
+PlSqlLexer.BATCHSIZE = 98;
+PlSqlLexer.BATCH_TABLE_ACCESS_BY_ROWID = 99;
+PlSqlLexer.BECOME = 100;
+PlSqlLexer.BEFORE = 101;
+PlSqlLexer.BEGIN = 102;
+PlSqlLexer.BEGINNING = 103;
+PlSqlLexer.BEGIN_OUTLINE_DATA = 104;
+PlSqlLexer.BEHALF = 105;
+PlSqlLexer.BEQUEATH = 106;
+PlSqlLexer.BETWEEN = 107;
+PlSqlLexer.BFILE = 108;
+PlSqlLexer.BFILENAME = 109;
+PlSqlLexer.BIGFILE = 110;
+PlSqlLexer.BINARY = 111;
+PlSqlLexer.BINARY_DOUBLE = 112;
+PlSqlLexer.BINARY_DOUBLE_INFINITY = 113;
+PlSqlLexer.BINARY_DOUBLE_NAN = 114;
+PlSqlLexer.BINARY_FLOAT = 115;
+PlSqlLexer.BINARY_FLOAT_INFINITY = 116;
+PlSqlLexer.BINARY_FLOAT_NAN = 117;
+PlSqlLexer.BINARY_INTEGER = 118;
+PlSqlLexer.BIND_AWARE = 119;
+PlSqlLexer.BINDING = 120;
+PlSqlLexer.BIN_TO_NUM = 121;
+PlSqlLexer.BITAND = 122;
+PlSqlLexer.BITMAP_AND = 123;
+PlSqlLexer.BITMAP = 124;
+PlSqlLexer.BITMAPS = 125;
+PlSqlLexer.BITMAP_TREE = 126;
+PlSqlLexer.BITS = 127;
+PlSqlLexer.BLOB = 128;
+PlSqlLexer.BLOCK = 129;
+PlSqlLexer.BLOCK_RANGE = 130;
+PlSqlLexer.BLOCKS = 131;
+PlSqlLexer.BLOCKSIZE = 132;
+PlSqlLexer.BODY = 133;
+PlSqlLexer.BOOLEAN = 134;
+PlSqlLexer.BOTH = 135;
+PlSqlLexer.BOUND = 136;
+PlSqlLexer.BRANCH = 137;
+PlSqlLexer.BREADTH = 138;
+PlSqlLexer.BROADCAST = 139;
+PlSqlLexer.BSON = 140;
+PlSqlLexer.BUFFER = 141;
+PlSqlLexer.BUFFER_CACHE = 142;
+PlSqlLexer.BUFFER_POOL = 143;
+PlSqlLexer.BUILD = 144;
+PlSqlLexer.BULK = 145;
+PlSqlLexer.BY = 146;
+PlSqlLexer.BYPASS_RECURSIVE_CHECK = 147;
+PlSqlLexer.BYPASS_UJVC = 148;
+PlSqlLexer.BYTE = 149;
+PlSqlLexer.CACHE = 150;
+PlSqlLexer.CACHE_CB = 151;
+PlSqlLexer.CACHE_INSTANCES = 152;
+PlSqlLexer.CACHE_TEMP_TABLE = 153;
+PlSqlLexer.CACHING = 154;
+PlSqlLexer.CALCULATED = 155;
+PlSqlLexer.CALLBACK = 156;
+PlSqlLexer.CALL = 157;
+PlSqlLexer.CANCEL = 158;
+PlSqlLexer.CANONICAL = 159;
+PlSqlLexer.CAPACITY = 160;
+PlSqlLexer.CARDINALITY = 161;
+PlSqlLexer.CASCADE = 162;
+PlSqlLexer.CASE = 163;
+PlSqlLexer.CAST = 164;
+PlSqlLexer.CATEGORY = 165;
+PlSqlLexer.CDBDEFAULT = 166;
+PlSqlLexer.CEIL = 167;
+PlSqlLexer.CELL_FLASH_CACHE = 168;
+PlSqlLexer.CERTIFICATE = 169;
+PlSqlLexer.CFILE = 170;
+PlSqlLexer.CHAINED = 171;
+PlSqlLexer.CHANGE = 172;
+PlSqlLexer.CHANGETRACKING = 173;
+PlSqlLexer.CHANGE_DUPKEY_ERROR_INDEX = 174;
+PlSqlLexer.CHARACTER = 175;
+PlSqlLexer.CHAR = 176;
+PlSqlLexer.CHAR_CS = 177;
+PlSqlLexer.CHARTOROWID = 178;
+PlSqlLexer.CHECK_ACL_REWRITE = 179;
+PlSqlLexer.CHECK = 180;
+PlSqlLexer.CHECKPOINT = 181;
+PlSqlLexer.CHILD = 182;
+PlSqlLexer.CHOOSE = 183;
+PlSqlLexer.CHR = 184;
+PlSqlLexer.CHUNK = 185;
+PlSqlLexer.CLASS = 186;
+PlSqlLexer.CLASSIFIER = 187;
+PlSqlLexer.CLEANUP = 188;
+PlSqlLexer.CLEAR = 189;
+PlSqlLexer.C_LETTER = 190;
+PlSqlLexer.CLIENT = 191;
+PlSqlLexer.CLOB = 192;
+PlSqlLexer.CLONE = 193;
+PlSqlLexer.CLOSE_CACHED_OPEN_CURSORS = 194;
+PlSqlLexer.CLOSE = 195;
+PlSqlLexer.CLUSTER_BY_ROWID = 196;
+PlSqlLexer.CLUSTER = 197;
+PlSqlLexer.CLUSTER_DETAILS = 198;
+PlSqlLexer.CLUSTER_DISTANCE = 199;
+PlSqlLexer.CLUSTER_ID = 200;
+PlSqlLexer.CLUSTERING = 201;
+PlSqlLexer.CLUSTERING_FACTOR = 202;
+PlSqlLexer.CLUSTER_PROBABILITY = 203;
+PlSqlLexer.CLUSTER_SET = 204;
+PlSqlLexer.COALESCE = 205;
+PlSqlLexer.COALESCE_SQ = 206;
+PlSqlLexer.COARSE = 207;
+PlSqlLexer.CO_AUTH_IND = 208;
+PlSqlLexer.COLD = 209;
+PlSqlLexer.COLLECT = 210;
+PlSqlLexer.COLUMNAR = 211;
+PlSqlLexer.COLUMN_AUTH_INDICATOR = 212;
+PlSqlLexer.COLUMN = 213;
+PlSqlLexer.COLUMNS = 214;
+PlSqlLexer.COLUMN_STATS = 215;
+PlSqlLexer.COLUMN_VALUE = 216;
+PlSqlLexer.COMMENT = 217;
+PlSqlLexer.COMMIT = 218;
+PlSqlLexer.COMMITTED = 219;
+PlSqlLexer.COMMON_DATA = 220;
+PlSqlLexer.COMPACT = 221;
+PlSqlLexer.COMPATIBILITY = 222;
+PlSqlLexer.COMPILE = 223;
+PlSqlLexer.COMPLETE = 224;
+PlSqlLexer.COMPLIANCE = 225;
+PlSqlLexer.COMPONENT = 226;
+PlSqlLexer.COMPONENTS = 227;
+PlSqlLexer.COMPOSE = 228;
+PlSqlLexer.COMPOSITE = 229;
+PlSqlLexer.COMPOSITE_LIMIT = 230;
+PlSqlLexer.COMPOUND = 231;
+PlSqlLexer.COMPRESS = 232;
+PlSqlLexer.COMPUTE = 233;
+PlSqlLexer.CONCAT = 234;
+PlSqlLexer.CON_DBID_TO_ID = 235;
+PlSqlLexer.CONDITIONAL = 236;
+PlSqlLexer.CONDITION = 237;
+PlSqlLexer.CONFIRM = 238;
+PlSqlLexer.CONFORMING = 239;
+PlSqlLexer.CON_GUID_TO_ID = 240;
+PlSqlLexer.CON_ID = 241;
+PlSqlLexer.CON_NAME_TO_ID = 242;
+PlSqlLexer.CONNECT_BY_CB_WHR_ONLY = 243;
+PlSqlLexer.CONNECT_BY_COMBINE_SW = 244;
+PlSqlLexer.CONNECT_BY_COST_BASED = 245;
+PlSqlLexer.CONNECT_BY_ELIM_DUPS = 246;
+PlSqlLexer.CONNECT_BY_FILTERING = 247;
+PlSqlLexer.CONNECT_BY_ISCYCLE = 248;
+PlSqlLexer.CONNECT_BY_ISLEAF = 249;
+PlSqlLexer.CONNECT_BY_ROOT = 250;
+PlSqlLexer.CONNECT = 251;
+PlSqlLexer.CONNECT_TIME = 252;
+PlSqlLexer.CONSIDER = 253;
+PlSqlLexer.CONSISTENT = 254;
+PlSqlLexer.CONSTANT = 255;
+PlSqlLexer.CONST = 256;
+PlSqlLexer.CONSTRAINT = 257;
+PlSqlLexer.CONSTRAINTS = 258;
+PlSqlLexer.CONSTRUCTOR = 259;
+PlSqlLexer.CONTAINER = 260;
+PlSqlLexer.CONTAINER_DATA = 261;
+PlSqlLexer.CONTAINERS = 262;
+PlSqlLexer.CONTENT = 263;
+PlSqlLexer.CONTENTS = 264;
+PlSqlLexer.CONTEXT = 265;
+PlSqlLexer.CONTINUE = 266;
+PlSqlLexer.CONTROLFILE = 267;
+PlSqlLexer.CON_UID_TO_ID = 268;
+PlSqlLexer.CONVERT = 269;
+PlSqlLexer.COOKIE = 270;
+PlSqlLexer.COPY = 271;
+PlSqlLexer.CORR_K = 272;
+PlSqlLexer.CORR_S = 273;
+PlSqlLexer.CORRUPTION = 274;
+PlSqlLexer.CORRUPT_XID_ALL = 275;
+PlSqlLexer.CORRUPT_XID = 276;
+PlSqlLexer.COS = 277;
+PlSqlLexer.COSH = 278;
+PlSqlLexer.COST = 279;
+PlSqlLexer.COST_XML_QUERY_REWRITE = 280;
+PlSqlLexer.COUNT = 281;
+PlSqlLexer.COVAR_POP = 282;
+PlSqlLexer.COVAR_SAMP = 283;
+PlSqlLexer.CPU_COSTING = 284;
+PlSqlLexer.CPU_PER_CALL = 285;
+PlSqlLexer.CPU_PER_SESSION = 286;
+PlSqlLexer.CRASH = 287;
+PlSqlLexer.CREATE = 288;
+PlSqlLexer.CREATE_FILE_DEST = 289;
+PlSqlLexer.CREATE_STORED_OUTLINES = 290;
+PlSqlLexer.CREATION = 291;
+PlSqlLexer.CREDENTIAL = 292;
+PlSqlLexer.CRITICAL = 293;
+PlSqlLexer.CROSS = 294;
+PlSqlLexer.CROSSEDITION = 295;
+PlSqlLexer.CSCONVERT = 296;
+PlSqlLexer.CUBE_AJ = 297;
+PlSqlLexer.CUBE = 298;
+PlSqlLexer.CUBE_GB = 299;
+PlSqlLexer.CUBE_SJ = 300;
+PlSqlLexer.CUME_DISTM = 301;
+PlSqlLexer.CURRENT = 302;
+PlSqlLexer.CURRENT_DATE = 303;
+PlSqlLexer.CURRENT_SCHEMA = 304;
+PlSqlLexer.CURRENT_TIME = 305;
+PlSqlLexer.CURRENT_TIMESTAMP = 306;
+PlSqlLexer.CURRENT_USER = 307;
+PlSqlLexer.CURRENTV = 308;
+PlSqlLexer.CURSOR = 309;
+PlSqlLexer.CURSOR_SHARING_EXACT = 310;
+PlSqlLexer.CURSOR_SPECIFIC_SEGMENT = 311;
+PlSqlLexer.CUSTOMDATUM = 312;
+PlSqlLexer.CV = 313;
+PlSqlLexer.CYCLE = 314;
+PlSqlLexer.DANGLING = 315;
+PlSqlLexer.DATABASE = 316;
+PlSqlLexer.DATA = 317;
+PlSqlLexer.DATAFILE = 318;
+PlSqlLexer.DATAFILES = 319;
+PlSqlLexer.DATAGUARDCONFIG = 320;
+PlSqlLexer.DATAMOVEMENT = 321;
+PlSqlLexer.DATAOBJNO = 322;
+PlSqlLexer.DATAOBJ_TO_MAT_PARTITION = 323;
+PlSqlLexer.DATAOBJ_TO_PARTITION = 324;
+PlSqlLexer.DATAPUMP = 325;
+PlSqlLexer.DATA_SECURITY_REWRITE_LIMIT = 326;
+PlSqlLexer.DATE = 327;
+PlSqlLexer.DATE_MODE = 328;
+PlSqlLexer.DAY = 329;
+PlSqlLexer.DAYS = 330;
+PlSqlLexer.DBA = 331;
+PlSqlLexer.DBA_RECYCLEBIN = 332;
+PlSqlLexer.DBMS_STATS = 333;
+PlSqlLexer.DB_ROLE_CHANGE = 334;
+PlSqlLexer.DBTIMEZONE = 335;
+PlSqlLexer.DB_UNIQUE_NAME = 336;
+PlSqlLexer.DB_VERSION = 337;
+PlSqlLexer.DDL = 338;
+PlSqlLexer.DEALLOCATE = 339;
+PlSqlLexer.DEBUG = 340;
+PlSqlLexer.DEBUGGER = 341;
+PlSqlLexer.DEC = 342;
+PlSqlLexer.DECIMAL = 343;
+PlSqlLexer.DECLARE = 344;
+PlSqlLexer.DECOMPOSE = 345;
+PlSqlLexer.DECORRELATE = 346;
+PlSqlLexer.DECR = 347;
+PlSqlLexer.DECREMENT = 348;
+PlSqlLexer.DECRYPT = 349;
+PlSqlLexer.DEDUPLICATE = 350;
+PlSqlLexer.DEFAULT = 351;
+PlSqlLexer.DEFAULTS = 352;
+PlSqlLexer.DEFERRABLE = 353;
+PlSqlLexer.DEFERRED = 354;
+PlSqlLexer.DEFINED = 355;
+PlSqlLexer.DEFINE = 356;
+PlSqlLexer.DEFINER = 357;
+PlSqlLexer.DEGREE = 358;
+PlSqlLexer.DELAY = 359;
+PlSqlLexer.DELEGATE = 360;
+PlSqlLexer.DELETE_ALL = 361;
+PlSqlLexer.DELETE = 362;
+PlSqlLexer.DELETEXML = 363;
+PlSqlLexer.DEMAND = 364;
+PlSqlLexer.DENSE_RANKM = 365;
+PlSqlLexer.DEPENDENT = 366;
+PlSqlLexer.DEPTH = 367;
+PlSqlLexer.DEQUEUE = 368;
+PlSqlLexer.DEREF = 369;
+PlSqlLexer.DEREF_NO_REWRITE = 370;
+PlSqlLexer.DESC = 371;
+PlSqlLexer.DESTROY = 372;
+PlSqlLexer.DETACHED = 373;
+PlSqlLexer.DETERMINES = 374;
+PlSqlLexer.DETERMINISTIC = 375;
+PlSqlLexer.DICTIONARY = 376;
+PlSqlLexer.DIMENSION = 377;
+PlSqlLexer.DIMENSIONS = 378;
+PlSqlLexer.DIRECT_LOAD = 379;
+PlSqlLexer.DIRECTORY = 380;
+PlSqlLexer.DIRECT_PATH = 381;
+PlSqlLexer.DISABLE_ALL = 382;
+PlSqlLexer.DISABLE = 383;
+PlSqlLexer.DISABLE_PARALLEL_DML = 384;
+PlSqlLexer.DISABLE_PRESET = 385;
+PlSqlLexer.DISABLE_RPKE = 386;
+PlSqlLexer.DISALLOW = 387;
+PlSqlLexer.DISASSOCIATE = 388;
+PlSqlLexer.DISCARD = 389;
+PlSqlLexer.DISCONNECT = 390;
+PlSqlLexer.DISK = 391;
+PlSqlLexer.DISKGROUP = 392;
+PlSqlLexer.DISKGROUP_PLUS = 393;
+PlSqlLexer.DISKS = 394;
+PlSqlLexer.DISMOUNT = 395;
+PlSqlLexer.DISTINCT = 396;
+PlSqlLexer.DISTINGUISHED = 397;
+PlSqlLexer.DISTRIBUTED = 398;
+PlSqlLexer.DISTRIBUTE = 399;
+PlSqlLexer.DML = 400;
+PlSqlLexer.DML_UPDATE = 401;
+PlSqlLexer.DOCFIDELITY = 402;
+PlSqlLexer.DOCUMENT = 403;
+PlSqlLexer.DOMAIN_INDEX_FILTER = 404;
+PlSqlLexer.DOMAIN_INDEX_NO_SORT = 405;
+PlSqlLexer.DOMAIN_INDEX_SORT = 406;
+PlSqlLexer.DOUBLE = 407;
+PlSqlLexer.DOWNGRADE = 408;
+PlSqlLexer.DRIVING_SITE = 409;
+PlSqlLexer.DROP_COLUMN = 410;
+PlSqlLexer.DROP = 411;
+PlSqlLexer.DROP_GROUP = 412;
+PlSqlLexer.DSINTERVAL_UNCONSTRAINED = 413;
+PlSqlLexer.DST_UPGRADE_INSERT_CONV = 414;
+PlSqlLexer.DUMP = 415;
+PlSqlLexer.DUMPSET = 416;
+PlSqlLexer.DUPLICATE = 417;
+PlSqlLexer.DV = 418;
+PlSqlLexer.DYNAMIC = 419;
+PlSqlLexer.DYNAMIC_SAMPLING = 420;
+PlSqlLexer.DYNAMIC_SAMPLING_EST_CDN = 421;
+PlSqlLexer.EACH = 422;
+PlSqlLexer.EDITIONABLE = 423;
+PlSqlLexer.EDITION = 424;
+PlSqlLexer.EDITIONING = 425;
+PlSqlLexer.EDITIONS = 426;
+PlSqlLexer.ELEMENT = 427;
+PlSqlLexer.ELIM_GROUPBY = 428;
+PlSqlLexer.ELIMINATE_JOIN = 429;
+PlSqlLexer.ELIMINATE_OBY = 430;
+PlSqlLexer.ELIMINATE_OUTER_JOIN = 431;
+PlSqlLexer.ELSE = 432;
+PlSqlLexer.ELSIF = 433;
+PlSqlLexer.EM = 434;
+PlSqlLexer.EMPTY_BLOB = 435;
+PlSqlLexer.EMPTY_CLOB = 436;
+PlSqlLexer.EMPTY = 437;
+PlSqlLexer.ENABLE_ALL = 438;
+PlSqlLexer.ENABLE = 439;
+PlSqlLexer.ENABLE_PARALLEL_DML = 440;
+PlSqlLexer.ENABLE_PRESET = 441;
+PlSqlLexer.ENCODING = 442;
+PlSqlLexer.ENCRYPT = 443;
+PlSqlLexer.ENCRYPTION = 444;
+PlSqlLexer.END = 445;
+PlSqlLexer.END_OUTLINE_DATA = 446;
+PlSqlLexer.ENFORCED = 447;
+PlSqlLexer.ENFORCE = 448;
+PlSqlLexer.ENQUEUE = 449;
+PlSqlLexer.ENTERPRISE = 450;
+PlSqlLexer.ENTITYESCAPING = 451;
+PlSqlLexer.ENTRY = 452;
+PlSqlLexer.EQUIPART = 453;
+PlSqlLexer.ERR = 454;
+PlSqlLexer.ERROR_ARGUMENT = 455;
+PlSqlLexer.ERROR = 456;
+PlSqlLexer.ERROR_ON_OVERLAP_TIME = 457;
+PlSqlLexer.ERRORS = 458;
+PlSqlLexer.ESCAPE = 459;
+PlSqlLexer.ESTIMATE = 460;
+PlSqlLexer.EVAL = 461;
+PlSqlLexer.EVALNAME = 462;
+PlSqlLexer.EVALUATE = 463;
+PlSqlLexer.EVALUATION = 464;
+PlSqlLexer.EVENTS = 465;
+PlSqlLexer.EVERY = 466;
+PlSqlLexer.EXCEPT = 467;
+PlSqlLexer.EXCEPTION = 468;
+PlSqlLexer.EXCEPTION_INIT = 469;
+PlSqlLexer.EXCEPTIONS = 470;
+PlSqlLexer.EXCHANGE = 471;
+PlSqlLexer.EXCLUDE = 472;
+PlSqlLexer.EXCLUDING = 473;
+PlSqlLexer.EXCLUSIVE = 474;
+PlSqlLexer.EXECUTE = 475;
+PlSqlLexer.EXEMPT = 476;
+PlSqlLexer.EXISTING = 477;
+PlSqlLexer.EXISTS = 478;
+PlSqlLexer.EXISTSNODE = 479;
+PlSqlLexer.EXIT = 480;
+PlSqlLexer.EXPAND_GSET_TO_UNION = 481;
+PlSqlLexer.EXPAND_TABLE = 482;
+PlSqlLexer.EXP = 483;
+PlSqlLexer.EXPIRE = 484;
+PlSqlLexer.EXPLAIN = 485;
+PlSqlLexer.EXPLOSION = 486;
+PlSqlLexer.EXPORT = 487;
+PlSqlLexer.EXPR_CORR_CHECK = 488;
+PlSqlLexer.EXPRESS = 489;
+PlSqlLexer.EXTENDS = 490;
+PlSqlLexer.EXTENT = 491;
+PlSqlLexer.EXTENTS = 492;
+PlSqlLexer.EXTERNAL = 493;
+PlSqlLexer.EXTERNALLY = 494;
+PlSqlLexer.EXTRACTCLOBXML = 495;
+PlSqlLexer.EXTRACT = 496;
+PlSqlLexer.EXTRACTVALUE = 497;
+PlSqlLexer.EXTRA = 498;
+PlSqlLexer.FACILITY = 499;
+PlSqlLexer.FACT = 500;
+PlSqlLexer.FACTOR = 501;
+PlSqlLexer.FACTORIZE_JOIN = 502;
+PlSqlLexer.FAILED = 503;
+PlSqlLexer.FAILED_LOGIN_ATTEMPTS = 504;
+PlSqlLexer.FAILGROUP = 505;
+PlSqlLexer.FAILOVER = 506;
+PlSqlLexer.FAILURE = 507;
+PlSqlLexer.FALSE = 508;
+PlSqlLexer.FAMILY = 509;
+PlSqlLexer.FAR = 510;
+PlSqlLexer.FAST = 511;
+PlSqlLexer.FASTSTART = 512;
+PlSqlLexer.FBTSCAN = 513;
+PlSqlLexer.FEATURE_DETAILS = 514;
+PlSqlLexer.FEATURE_ID = 515;
+PlSqlLexer.FEATURE_SET = 516;
+PlSqlLexer.FEATURE_VALUE = 517;
+PlSqlLexer.FETCH = 518;
+PlSqlLexer.FILE = 519;
+PlSqlLexer.FILE_NAME_CONVERT = 520;
+PlSqlLexer.FILESYSTEM_LIKE_LOGGING = 521;
+PlSqlLexer.FILTER = 522;
+PlSqlLexer.FINAL = 523;
+PlSqlLexer.FINE = 524;
+PlSqlLexer.FINISH = 525;
+PlSqlLexer.FIRST = 526;
+PlSqlLexer.FIRSTM = 527;
+PlSqlLexer.FIRST_ROWS = 528;
+PlSqlLexer.FIRST_VALUE = 529;
+PlSqlLexer.FIXED_VIEW_DATA = 530;
+PlSqlLexer.FLAGGER = 531;
+PlSqlLexer.FLASHBACK = 532;
+PlSqlLexer.FLASH_CACHE = 533;
+PlSqlLexer.FLOAT = 534;
+PlSqlLexer.FLOB = 535;
+PlSqlLexer.FLOOR = 536;
+PlSqlLexer.FLUSH = 537;
+PlSqlLexer.FOLDER = 538;
+PlSqlLexer.FOLLOWING = 539;
+PlSqlLexer.FOLLOWS = 540;
+PlSqlLexer.FORALL = 541;
+PlSqlLexer.FORCE = 542;
+PlSqlLexer.FORCE_XML_QUERY_REWRITE = 543;
+PlSqlLexer.FOREIGN = 544;
+PlSqlLexer.FOREVER = 545;
+PlSqlLexer.FOR = 546;
+PlSqlLexer.FORMAT = 547;
+PlSqlLexer.FORWARD = 548;
+PlSqlLexer.FRAGMENT_NUMBER = 549;
+PlSqlLexer.FREELIST = 550;
+PlSqlLexer.FREELISTS = 551;
+PlSqlLexer.FREEPOOLS = 552;
+PlSqlLexer.FRESH = 553;
+PlSqlLexer.FROM = 554;
+PlSqlLexer.FROM_TZ = 555;
+PlSqlLexer.FULL = 556;
+PlSqlLexer.FULL_OUTER_JOIN_TO_OUTER = 557;
+PlSqlLexer.FUNCTION = 558;
+PlSqlLexer.FUNCTIONS = 559;
+PlSqlLexer.GATHER_OPTIMIZER_STATISTICS = 560;
+PlSqlLexer.GATHER_PLAN_STATISTICS = 561;
+PlSqlLexer.GBY_CONC_ROLLUP = 562;
+PlSqlLexer.GBY_PUSHDOWN = 563;
+PlSqlLexer.GENERATED = 564;
+PlSqlLexer.GET = 565;
+PlSqlLexer.GLOBAL = 566;
+PlSqlLexer.GLOBALLY = 567;
+PlSqlLexer.GLOBAL_NAME = 568;
+PlSqlLexer.GLOBAL_TOPIC_ENABLED = 569;
+PlSqlLexer.GOTO = 570;
+PlSqlLexer.GRANT = 571;
+PlSqlLexer.GROUP_BY = 572;
+PlSqlLexer.GROUP = 573;
+PlSqlLexer.GROUP_ID = 574;
+PlSqlLexer.GROUPING = 575;
+PlSqlLexer.GROUPING_ID = 576;
+PlSqlLexer.GROUPS = 577;
+PlSqlLexer.GUARANTEED = 578;
+PlSqlLexer.GUARANTEE = 579;
+PlSqlLexer.GUARD = 580;
+PlSqlLexer.HASH_AJ = 581;
+PlSqlLexer.HASH = 582;
+PlSqlLexer.HASHKEYS = 583;
+PlSqlLexer.HASH_SJ = 584;
+PlSqlLexer.HAVING = 585;
+PlSqlLexer.HEADER = 586;
+PlSqlLexer.HEAP = 587;
+PlSqlLexer.HELP = 588;
+PlSqlLexer.HEXTORAW = 589;
+PlSqlLexer.HEXTOREF = 590;
+PlSqlLexer.HIDDEN_KEYWORD = 591;
+PlSqlLexer.HIDE = 592;
+PlSqlLexer.HIERARCHY = 593;
+PlSqlLexer.HIGH = 594;
+PlSqlLexer.HINTSET_BEGIN = 595;
+PlSqlLexer.HINTSET_END = 596;
+PlSqlLexer.HOT = 597;
+PlSqlLexer.HOUR = 598;
+PlSqlLexer.HWM_BROKERED = 599;
+PlSqlLexer.HYBRID = 600;
+PlSqlLexer.IDENTIFIED = 601;
+PlSqlLexer.IDENTIFIER = 602;
+PlSqlLexer.IDENTITY = 603;
+PlSqlLexer.IDGENERATORS = 604;
+PlSqlLexer.ID = 605;
+PlSqlLexer.IDLE_TIME = 606;
+PlSqlLexer.IF = 607;
+PlSqlLexer.IGNORE = 608;
+PlSqlLexer.IGNORE_OPTIM_EMBEDDED_HINTS = 609;
+PlSqlLexer.IGNORE_ROW_ON_DUPKEY_INDEX = 610;
+PlSqlLexer.IGNORE_WHERE_CLAUSE = 611;
+PlSqlLexer.ILM = 612;
+PlSqlLexer.IMMEDIATE = 613;
+PlSqlLexer.IMPACT = 614;
+PlSqlLexer.IMPORT = 615;
+PlSqlLexer.INACTIVE = 616;
+PlSqlLexer.INCLUDE = 617;
+PlSqlLexer.INCLUDE_VERSION = 618;
+PlSqlLexer.INCLUDING = 619;
+PlSqlLexer.INCREMENTAL = 620;
+PlSqlLexer.INCREMENT = 621;
+PlSqlLexer.INCR = 622;
+PlSqlLexer.INDENT = 623;
+PlSqlLexer.INDEX_ASC = 624;
+PlSqlLexer.INDEX_COMBINE = 625;
+PlSqlLexer.INDEX_DESC = 626;
+PlSqlLexer.INDEXED = 627;
+PlSqlLexer.INDEXES = 628;
+PlSqlLexer.INDEX_FFS = 629;
+PlSqlLexer.INDEX_FILTER = 630;
+PlSqlLexer.INDEX = 631;
+PlSqlLexer.INDEXING = 632;
+PlSqlLexer.INDEX_JOIN = 633;
+PlSqlLexer.INDEX_ROWS = 634;
+PlSqlLexer.INDEX_RRS = 635;
+PlSqlLexer.INDEX_RS_ASC = 636;
+PlSqlLexer.INDEX_RS_DESC = 637;
+PlSqlLexer.INDEX_RS = 638;
+PlSqlLexer.INDEX_SCAN = 639;
+PlSqlLexer.INDEX_SKIP_SCAN = 640;
+PlSqlLexer.INDEX_SS_ASC = 641;
+PlSqlLexer.INDEX_SS_DESC = 642;
+PlSqlLexer.INDEX_SS = 643;
+PlSqlLexer.INDEX_STATS = 644;
+PlSqlLexer.INDEXTYPE = 645;
+PlSqlLexer.INDEXTYPES = 646;
+PlSqlLexer.INDICATOR = 647;
+PlSqlLexer.INDICES = 648;
+PlSqlLexer.INFINITE = 649;
+PlSqlLexer.INFORMATIONAL = 650;
+PlSqlLexer.INHERIT = 651;
+PlSqlLexer.IN = 652;
+PlSqlLexer.INITCAP = 653;
+PlSqlLexer.INITIAL = 654;
+PlSqlLexer.INITIALIZED = 655;
+PlSqlLexer.INITIALLY = 656;
+PlSqlLexer.INITRANS = 657;
+PlSqlLexer.INLINE = 658;
+PlSqlLexer.INLINE_XMLTYPE_NT = 659;
+PlSqlLexer.INMEMORY = 660;
+PlSqlLexer.IN_MEMORY_METADATA = 661;
+PlSqlLexer.INMEMORY_PRUNING = 662;
+PlSqlLexer.INNER = 663;
+PlSqlLexer.INOUT = 664;
+PlSqlLexer.INPLACE = 665;
+PlSqlLexer.INSERTCHILDXMLAFTER = 666;
+PlSqlLexer.INSERTCHILDXMLBEFORE = 667;
+PlSqlLexer.INSERTCHILDXML = 668;
+PlSqlLexer.INSERT = 669;
+PlSqlLexer.INSERTXMLAFTER = 670;
+PlSqlLexer.INSERTXMLBEFORE = 671;
+PlSqlLexer.INSTANCE = 672;
+PlSqlLexer.INSTANCES = 673;
+PlSqlLexer.INSTANTIABLE = 674;
+PlSqlLexer.INSTANTLY = 675;
+PlSqlLexer.INSTEAD = 676;
+PlSqlLexer.INSTR2 = 677;
+PlSqlLexer.INSTR4 = 678;
+PlSqlLexer.INSTRB = 679;
+PlSqlLexer.INSTRC = 680;
+PlSqlLexer.INSTR = 681;
+PlSqlLexer.INTEGER = 682;
+PlSqlLexer.INTERLEAVED = 683;
+PlSqlLexer.INTERMEDIATE = 684;
+PlSqlLexer.INTERNAL_CONVERT = 685;
+PlSqlLexer.INTERNAL_USE = 686;
+PlSqlLexer.INTERPRETED = 687;
+PlSqlLexer.INTERSECT = 688;
+PlSqlLexer.INTERVAL = 689;
+PlSqlLexer.INT = 690;
+PlSqlLexer.INTO = 691;
+PlSqlLexer.INVALIDATE = 692;
+PlSqlLexer.INVISIBLE = 693;
+PlSqlLexer.IN_XQUERY = 694;
+PlSqlLexer.IS = 695;
+PlSqlLexer.ISOLATION = 696;
+PlSqlLexer.ISOLATION_LEVEL = 697;
+PlSqlLexer.ITERATE = 698;
+PlSqlLexer.ITERATION_NUMBER = 699;
+PlSqlLexer.JAVA = 700;
+PlSqlLexer.JOB = 701;
+PlSqlLexer.JOIN = 702;
+PlSqlLexer.JSON_ARRAYAGG = 703;
+PlSqlLexer.JSON_ARRAY = 704;
+PlSqlLexer.JSON_EQUAL = 705;
+PlSqlLexer.JSON_EXISTS2 = 706;
+PlSqlLexer.JSON_EXISTS = 707;
+PlSqlLexer.JSONGET = 708;
+PlSqlLexer.JSON = 709;
+PlSqlLexer.JSON_OBJECTAGG = 710;
+PlSqlLexer.JSON_OBJECT = 711;
+PlSqlLexer.JSONPARSE = 712;
+PlSqlLexer.JSON_QUERY = 713;
+PlSqlLexer.JSON_SERIALIZE = 714;
+PlSqlLexer.JSON_TABLE = 715;
+PlSqlLexer.JSON_TEXTCONTAINS2 = 716;
+PlSqlLexer.JSON_TEXTCONTAINS = 717;
+PlSqlLexer.JSON_VALUE = 718;
+PlSqlLexer.KEEP_DUPLICATES = 719;
+PlSqlLexer.KEEP = 720;
+PlSqlLexer.KERBEROS = 721;
+PlSqlLexer.KEY = 722;
+PlSqlLexer.KEY_LENGTH = 723;
+PlSqlLexer.KEYSIZE = 724;
+PlSqlLexer.KEYS = 725;
+PlSqlLexer.KEYSTORE = 726;
+PlSqlLexer.KILL = 727;
+PlSqlLexer.LABEL = 728;
+PlSqlLexer.LANGUAGE = 729;
+PlSqlLexer.LAST_DAY = 730;
+PlSqlLexer.LAST = 731;
+PlSqlLexer.LAST_VALUE = 732;
+PlSqlLexer.LATERAL = 733;
+PlSqlLexer.LAX = 734;
+PlSqlLexer.LAYER = 735;
+PlSqlLexer.LDAP_REGISTRATION_ENABLED = 736;
+PlSqlLexer.LDAP_REGISTRATION = 737;
+PlSqlLexer.LDAP_REG_SYNC_INTERVAL = 738;
+PlSqlLexer.LEADING = 739;
+PlSqlLexer.LEFT = 740;
+PlSqlLexer.LENGTH2 = 741;
+PlSqlLexer.LENGTH4 = 742;
+PlSqlLexer.LENGTHB = 743;
+PlSqlLexer.LENGTHC = 744;
+PlSqlLexer.LENGTH = 745;
+PlSqlLexer.LESS = 746;
+PlSqlLexer.LEVEL = 747;
+PlSqlLexer.LEVELS = 748;
+PlSqlLexer.LIBRARY = 749;
+PlSqlLexer.LIFECYCLE = 750;
+PlSqlLexer.LIFE = 751;
+PlSqlLexer.LIFETIME = 752;
+PlSqlLexer.LIKE2 = 753;
+PlSqlLexer.LIKE4 = 754;
+PlSqlLexer.LIKEC = 755;
+PlSqlLexer.LIKE_EXPAND = 756;
+PlSqlLexer.LIKE = 757;
+PlSqlLexer.LIMIT = 758;
+PlSqlLexer.LINEAR = 759;
+PlSqlLexer.LINK = 760;
+PlSqlLexer.LIST = 761;
+PlSqlLexer.LN = 762;
+PlSqlLexer.LNNVL = 763;
+PlSqlLexer.LOAD = 764;
+PlSqlLexer.LOB = 765;
+PlSqlLexer.LOBNVL = 766;
+PlSqlLexer.LOBS = 767;
+PlSqlLexer.LOCAL_INDEXES = 768;
+PlSqlLexer.LOCAL = 769;
+PlSqlLexer.LOCALTIME = 770;
+PlSqlLexer.LOCALTIMESTAMP = 771;
+PlSqlLexer.LOCATION = 772;
+PlSqlLexer.LOCATOR = 773;
+PlSqlLexer.LOCKED = 774;
+PlSqlLexer.LOCKING = 775;
+PlSqlLexer.LOCK = 776;
+PlSqlLexer.LOGFILE = 777;
+PlSqlLexer.LOGFILES = 778;
+PlSqlLexer.LOGGING = 779;
+PlSqlLexer.LOGICAL = 780;
+PlSqlLexer.LOGICAL_READS_PER_CALL = 781;
+PlSqlLexer.LOGICAL_READS_PER_SESSION = 782;
+PlSqlLexer.LOG = 783;
+PlSqlLexer.LOGMINING = 784;
+PlSqlLexer.LOGOFF = 785;
+PlSqlLexer.LOGON = 786;
+PlSqlLexer.LOG_READ_ONLY_VIOLATIONS = 787;
+PlSqlLexer.LONG = 788;
+PlSqlLexer.LOOP = 789;
+PlSqlLexer.LOWER = 790;
+PlSqlLexer.LOW = 791;
+PlSqlLexer.LPAD = 792;
+PlSqlLexer.LTRIM = 793;
+PlSqlLexer.MAIN = 794;
+PlSqlLexer.MAKE_REF = 795;
+PlSqlLexer.MANAGED = 796;
+PlSqlLexer.MANAGE = 797;
+PlSqlLexer.MANAGEMENT = 798;
+PlSqlLexer.MANAGER = 799;
+PlSqlLexer.MANUAL = 800;
+PlSqlLexer.MAP = 801;
+PlSqlLexer.MAPPING = 802;
+PlSqlLexer.MASTER = 803;
+PlSqlLexer.MATCHED = 804;
+PlSqlLexer.MATCHES = 805;
+PlSqlLexer.MATCH = 806;
+PlSqlLexer.MATCH_NUMBER = 807;
+PlSqlLexer.MATCH_RECOGNIZE = 808;
+PlSqlLexer.MATERIALIZED = 809;
+PlSqlLexer.MATERIALIZE = 810;
+PlSqlLexer.MAXARCHLOGS = 811;
+PlSqlLexer.MAXDATAFILES = 812;
+PlSqlLexer.MAXEXTENTS = 813;
+PlSqlLexer.MAXIMIZE = 814;
+PlSqlLexer.MAXINSTANCES = 815;
+PlSqlLexer.MAXLOGFILES = 816;
+PlSqlLexer.MAXLOGHISTORY = 817;
+PlSqlLexer.MAXLOGMEMBERS = 818;
+PlSqlLexer.MAX_SHARED_TEMP_SIZE = 819;
+PlSqlLexer.MAXSIZE = 820;
+PlSqlLexer.MAXTRANS = 821;
+PlSqlLexer.MAXVALUE = 822;
+PlSqlLexer.MEASURE = 823;
+PlSqlLexer.MEASURES = 824;
+PlSqlLexer.MEDIUM = 825;
+PlSqlLexer.MEMBER = 826;
+PlSqlLexer.MEMCOMPRESS = 827;
+PlSqlLexer.MEMORY = 828;
+PlSqlLexer.MERGEACTIONS = 829;
+PlSqlLexer.MERGE_AJ = 830;
+PlSqlLexer.MERGE_CONST_ON = 831;
+PlSqlLexer.MERGE = 832;
+PlSqlLexer.MERGE_SJ = 833;
+PlSqlLexer.METADATA = 834;
+PlSqlLexer.METHOD = 835;
+PlSqlLexer.MIGRATE = 836;
+PlSqlLexer.MIGRATION = 837;
+PlSqlLexer.MINEXTENTS = 838;
+PlSqlLexer.MINIMIZE = 839;
+PlSqlLexer.MINIMUM = 840;
+PlSqlLexer.MINING = 841;
+PlSqlLexer.MINUS = 842;
+PlSqlLexer.MINUS_NULL = 843;
+PlSqlLexer.MINUTE = 844;
+PlSqlLexer.MINVALUE = 845;
+PlSqlLexer.MIRRORCOLD = 846;
+PlSqlLexer.MIRRORHOT = 847;
+PlSqlLexer.MIRROR = 848;
+PlSqlLexer.MLSLABEL = 849;
+PlSqlLexer.MODEL_COMPILE_SUBQUERY = 850;
+PlSqlLexer.MODEL_DONTVERIFY_UNIQUENESS = 851;
+PlSqlLexer.MODEL_DYNAMIC_SUBQUERY = 852;
+PlSqlLexer.MODEL_MIN_ANALYSIS = 853;
+PlSqlLexer.MODEL = 854;
+PlSqlLexer.MODEL_NB = 855;
+PlSqlLexer.MODEL_NO_ANALYSIS = 856;
+PlSqlLexer.MODEL_PBY = 857;
+PlSqlLexer.MODEL_PUSH_REF = 858;
+PlSqlLexer.MODEL_SV = 859;
+PlSqlLexer.MODE = 860;
+PlSqlLexer.MODIFICATION = 861;
+PlSqlLexer.MODIFY_COLUMN_TYPE = 862;
+PlSqlLexer.MODIFY = 863;
+PlSqlLexer.MOD = 864;
+PlSqlLexer.MODULE = 865;
+PlSqlLexer.MONITORING = 866;
+PlSqlLexer.MONITOR = 867;
+PlSqlLexer.MONTH = 868;
+PlSqlLexer.MONTHS_BETWEEN = 869;
+PlSqlLexer.MONTHS = 870;
+PlSqlLexer.MOUNT = 871;
+PlSqlLexer.MOUNTPATH = 872;
+PlSqlLexer.MOVEMENT = 873;
+PlSqlLexer.MOVE = 874;
+PlSqlLexer.MULTIDIMENSIONAL = 875;
+PlSqlLexer.MULTISET = 876;
+PlSqlLexer.MV_MERGE = 877;
+PlSqlLexer.NAMED = 878;
+PlSqlLexer.NAME = 879;
+PlSqlLexer.NAMESPACE = 880;
+PlSqlLexer.NAN = 881;
+PlSqlLexer.NANVL = 882;
+PlSqlLexer.NATIONAL = 883;
+PlSqlLexer.NATIVE_FULL_OUTER_JOIN = 884;
+PlSqlLexer.NATIVE = 885;
+PlSqlLexer.NATURAL = 886;
+PlSqlLexer.NATURALN = 887;
+PlSqlLexer.NAV = 888;
+PlSqlLexer.NCHAR_CS = 889;
+PlSqlLexer.NCHAR = 890;
+PlSqlLexer.NCHR = 891;
+PlSqlLexer.NCLOB = 892;
+PlSqlLexer.NEEDED = 893;
+PlSqlLexer.NEG = 894;
+PlSqlLexer.NESTED = 895;
+PlSqlLexer.NESTED_TABLE_FAST_INSERT = 896;
+PlSqlLexer.NESTED_TABLE_GET_REFS = 897;
+PlSqlLexer.NESTED_TABLE_ID = 898;
+PlSqlLexer.NESTED_TABLE_SET_REFS = 899;
+PlSqlLexer.NESTED_TABLE_SET_SETID = 900;
+PlSqlLexer.NETWORK = 901;
+PlSqlLexer.NEVER = 902;
+PlSqlLexer.NEW = 903;
+PlSqlLexer.NEW_TIME = 904;
+PlSqlLexer.NEXT_DAY = 905;
+PlSqlLexer.NEXT = 906;
+PlSqlLexer.NL_AJ = 907;
+PlSqlLexer.NLJ_BATCHING = 908;
+PlSqlLexer.NLJ_INDEX_FILTER = 909;
+PlSqlLexer.NLJ_INDEX_SCAN = 910;
+PlSqlLexer.NLJ_PREFETCH = 911;
+PlSqlLexer.NLS_CALENDAR = 912;
+PlSqlLexer.NLS_CHARACTERSET = 913;
+PlSqlLexer.NLS_CHARSET_DECL_LEN = 914;
+PlSqlLexer.NLS_CHARSET_ID = 915;
+PlSqlLexer.NLS_CHARSET_NAME = 916;
+PlSqlLexer.NLS_COMP = 917;
+PlSqlLexer.NLS_CURRENCY = 918;
+PlSqlLexer.NLS_DATE_FORMAT = 919;
+PlSqlLexer.NLS_DATE_LANGUAGE = 920;
+PlSqlLexer.NLS_INITCAP = 921;
+PlSqlLexer.NLS_ISO_CURRENCY = 922;
+PlSqlLexer.NL_SJ = 923;
+PlSqlLexer.NLS_LANG = 924;
+PlSqlLexer.NLS_LANGUAGE = 925;
+PlSqlLexer.NLS_LENGTH_SEMANTICS = 926;
+PlSqlLexer.NLS_LOWER = 927;
+PlSqlLexer.NLS_NCHAR_CONV_EXCP = 928;
+PlSqlLexer.NLS_NUMERIC_CHARACTERS = 929;
+PlSqlLexer.NLS_SORT = 930;
+PlSqlLexer.NLSSORT = 931;
+PlSqlLexer.NLS_SPECIAL_CHARS = 932;
+PlSqlLexer.NLS_TERRITORY = 933;
+PlSqlLexer.NLS_UPPER = 934;
+PlSqlLexer.NO_ACCESS = 935;
+PlSqlLexer.NO_ADAPTIVE_PLAN = 936;
+PlSqlLexer.NO_ANSI_REARCH = 937;
+PlSqlLexer.NOAPPEND = 938;
+PlSqlLexer.NOARCHIVELOG = 939;
+PlSqlLexer.NOAUDIT = 940;
+PlSqlLexer.NO_AUTO_REOPTIMIZE = 941;
+PlSqlLexer.NO_BASETABLE_MULTIMV_REWRITE = 942;
+PlSqlLexer.NO_BATCH_TABLE_ACCESS_BY_ROWID = 943;
+PlSqlLexer.NO_BIND_AWARE = 944;
+PlSqlLexer.NO_BUFFER = 945;
+PlSqlLexer.NOCACHE = 946;
+PlSqlLexer.NO_CARTESIAN = 947;
+PlSqlLexer.NO_CHECK_ACL_REWRITE = 948;
+PlSqlLexer.NO_CLUSTER_BY_ROWID = 949;
+PlSqlLexer.NO_CLUSTERING = 950;
+PlSqlLexer.NO_COALESCE_SQ = 951;
+PlSqlLexer.NO_COMMON_DATA = 952;
+PlSqlLexer.NOCOMPRESS = 953;
+PlSqlLexer.NO_CONNECT_BY_CB_WHR_ONLY = 954;
+PlSqlLexer.NO_CONNECT_BY_COMBINE_SW = 955;
+PlSqlLexer.NO_CONNECT_BY_COST_BASED = 956;
+PlSqlLexer.NO_CONNECT_BY_ELIM_DUPS = 957;
+PlSqlLexer.NO_CONNECT_BY_FILTERING = 958;
+PlSqlLexer.NOCOPY = 959;
+PlSqlLexer.NO_COST_XML_QUERY_REWRITE = 960;
+PlSqlLexer.NO_CPU_COSTING = 961;
+PlSqlLexer.NOCPU_COSTING = 962;
+PlSqlLexer.NOCYCLE = 963;
+PlSqlLexer.NO_DATA_SECURITY_REWRITE = 964;
+PlSqlLexer.NO_DECORRELATE = 965;
+PlSqlLexer.NODELAY = 966;
+PlSqlLexer.NO_DOMAIN_INDEX_FILTER = 967;
+PlSqlLexer.NO_DST_UPGRADE_INSERT_CONV = 968;
+PlSqlLexer.NO_ELIM_GROUPBY = 969;
+PlSqlLexer.NO_ELIMINATE_JOIN = 970;
+PlSqlLexer.NO_ELIMINATE_OBY = 971;
+PlSqlLexer.NO_ELIMINATE_OUTER_JOIN = 972;
+PlSqlLexer.NOENTITYESCAPING = 973;
+PlSqlLexer.NO_EXPAND_GSET_TO_UNION = 974;
+PlSqlLexer.NO_EXPAND = 975;
+PlSqlLexer.NO_EXPAND_TABLE = 976;
+PlSqlLexer.NO_FACT = 977;
+PlSqlLexer.NO_FACTORIZE_JOIN = 978;
+PlSqlLexer.NO_FILTERING = 979;
+PlSqlLexer.NOFORCE = 980;
+PlSqlLexer.NO_FULL_OUTER_JOIN_TO_OUTER = 981;
+PlSqlLexer.NO_GATHER_OPTIMIZER_STATISTICS = 982;
+PlSqlLexer.NO_GBY_PUSHDOWN = 983;
+PlSqlLexer.NOGUARANTEE = 984;
+PlSqlLexer.NO_INDEX_FFS = 985;
+PlSqlLexer.NO_INDEX = 986;
+PlSqlLexer.NO_INDEX_SS = 987;
+PlSqlLexer.NO_INMEMORY = 988;
+PlSqlLexer.NO_INMEMORY_PRUNING = 989;
+PlSqlLexer.NOKEEP = 990;
+PlSqlLexer.NO_LOAD = 991;
+PlSqlLexer.NOLOCAL = 992;
+PlSqlLexer.NOLOGGING = 993;
+PlSqlLexer.NOMAPPING = 994;
+PlSqlLexer.NOMAXVALUE = 995;
+PlSqlLexer.NO_MERGE = 996;
+PlSqlLexer.NOMINIMIZE = 997;
+PlSqlLexer.NOMINVALUE = 998;
+PlSqlLexer.NO_MODEL_PUSH_REF = 999;
+PlSqlLexer.NO_MONITORING = 1000;
+PlSqlLexer.NOMONITORING = 1001;
+PlSqlLexer.NO_MONITOR = 1002;
+PlSqlLexer.NO_MULTIMV_REWRITE = 1003;
+PlSqlLexer.NO_NATIVE_FULL_OUTER_JOIN = 1004;
+PlSqlLexer.NONBLOCKING = 1005;
+PlSqlLexer.NONEDITIONABLE = 1006;
+PlSqlLexer.NONE = 1007;
+PlSqlLexer.NO_NLJ_BATCHING = 1008;
+PlSqlLexer.NO_NLJ_PREFETCH = 1009;
+PlSqlLexer.NO = 1010;
+PlSqlLexer.NONSCHEMA = 1011;
+PlSqlLexer.NO_OBJECT_LINK = 1012;
+PlSqlLexer.NOORDER = 1013;
+PlSqlLexer.NO_ORDER_ROLLUPS = 1014;
+PlSqlLexer.NO_OUTER_JOIN_TO_ANTI = 1015;
+PlSqlLexer.NO_OUTER_JOIN_TO_INNER = 1016;
+PlSqlLexer.NOOVERRIDE = 1017;
+PlSqlLexer.NO_PARALLEL_INDEX = 1018;
+PlSqlLexer.NOPARALLEL_INDEX = 1019;
+PlSqlLexer.NO_PARALLEL = 1020;
+PlSqlLexer.NOPARALLEL = 1021;
+PlSqlLexer.NO_PARTIAL_COMMIT = 1022;
+PlSqlLexer.NO_PARTIAL_JOIN = 1023;
+PlSqlLexer.NO_PARTIAL_ROLLUP_PUSHDOWN = 1024;
+PlSqlLexer.NOPARTITION = 1025;
+PlSqlLexer.NO_PLACE_DISTINCT = 1026;
+PlSqlLexer.NO_PLACE_GROUP_BY = 1027;
+PlSqlLexer.NO_PQ_CONCURRENT_UNION = 1028;
+PlSqlLexer.NO_PQ_MAP = 1029;
+PlSqlLexer.NO_PQ_REPLICATE = 1030;
+PlSqlLexer.NO_PQ_SKEW = 1031;
+PlSqlLexer.NO_PRUNE_GSETS = 1032;
+PlSqlLexer.NO_PULL_PRED = 1033;
+PlSqlLexer.NO_PUSH_PRED = 1034;
+PlSqlLexer.NO_PUSH_SUBQ = 1035;
+PlSqlLexer.NO_PX_FAULT_TOLERANCE = 1036;
+PlSqlLexer.NO_PX_JOIN_FILTER = 1037;
+PlSqlLexer.NO_QKN_BUFF = 1038;
+PlSqlLexer.NO_QUERY_TRANSFORMATION = 1039;
+PlSqlLexer.NO_REF_CASCADE = 1040;
+PlSqlLexer.NORELOCATE = 1041;
+PlSqlLexer.NORELY = 1042;
+PlSqlLexer.NOREPAIR = 1043;
+PlSqlLexer.NOREPLAY = 1044;
+PlSqlLexer.NORESETLOGS = 1045;
+PlSqlLexer.NO_RESULT_CACHE = 1046;
+PlSqlLexer.NOREVERSE = 1047;
+PlSqlLexer.NO_REWRITE = 1048;
+PlSqlLexer.NOREWRITE = 1049;
+PlSqlLexer.NORMAL = 1050;
+PlSqlLexer.NO_ROOT_SW_FOR_LOCAL = 1051;
+PlSqlLexer.NOROWDEPENDENCIES = 1052;
+PlSqlLexer.NOSCHEMACHECK = 1053;
+PlSqlLexer.NOSEGMENT = 1054;
+PlSqlLexer.NO_SEMIJOIN = 1055;
+PlSqlLexer.NO_SEMI_TO_INNER = 1056;
+PlSqlLexer.NO_SET_TO_JOIN = 1057;
+PlSqlLexer.NOSORT = 1058;
+PlSqlLexer.NO_SQL_TRANSLATION = 1059;
+PlSqlLexer.NO_SQL_TUNE = 1060;
+PlSqlLexer.NO_STAR_TRANSFORMATION = 1061;
+PlSqlLexer.NO_STATEMENT_QUEUING = 1062;
+PlSqlLexer.NO_STATS_GSETS = 1063;
+PlSqlLexer.NOSTRICT = 1064;
+PlSqlLexer.NO_SUBQUERY_PRUNING = 1065;
+PlSqlLexer.NO_SUBSTRB_PAD = 1066;
+PlSqlLexer.NO_SWAP_JOIN_INPUTS = 1067;
+PlSqlLexer.NOSWITCH = 1068;
+PlSqlLexer.NO_TABLE_LOOKUP_BY_NL = 1069;
+PlSqlLexer.NO_TEMP_TABLE = 1070;
+PlSqlLexer.NOTHING = 1071;
+PlSqlLexer.NOTIFICATION = 1072;
+PlSqlLexer.NOT = 1073;
+PlSqlLexer.NO_TRANSFORM_DISTINCT_AGG = 1074;
+PlSqlLexer.NO_UNNEST = 1075;
+PlSqlLexer.NO_USE_CUBE = 1076;
+PlSqlLexer.NO_USE_HASH_AGGREGATION = 1077;
+PlSqlLexer.NO_USE_HASH_GBY_FOR_PUSHDOWN = 1078;
+PlSqlLexer.NO_USE_HASH = 1079;
+PlSqlLexer.NO_USE_INVISIBLE_INDEXES = 1080;
+PlSqlLexer.NO_USE_MERGE = 1081;
+PlSqlLexer.NO_USE_NL = 1082;
+PlSqlLexer.NO_USE_VECTOR_AGGREGATION = 1083;
+PlSqlLexer.NOVALIDATE = 1084;
+PlSqlLexer.NO_VECTOR_TRANSFORM_DIMS = 1085;
+PlSqlLexer.NO_VECTOR_TRANSFORM_FACT = 1086;
+PlSqlLexer.NO_VECTOR_TRANSFORM = 1087;
+PlSqlLexer.NOWAIT = 1088;
+PlSqlLexer.NO_XDB_FASTPATH_INSERT = 1089;
+PlSqlLexer.NO_XML_DML_REWRITE = 1090;
+PlSqlLexer.NO_XMLINDEX_REWRITE_IN_SELECT = 1091;
+PlSqlLexer.NO_XMLINDEX_REWRITE = 1092;
+PlSqlLexer.NO_XML_QUERY_REWRITE = 1093;
+PlSqlLexer.NO_ZONEMAP = 1094;
+PlSqlLexer.NTH_VALUE = 1095;
+PlSqlLexer.NULLIF = 1096;
+PlSqlLexer.NULL_ = 1097;
+PlSqlLexer.NULLS = 1098;
+PlSqlLexer.NUMBER = 1099;
+PlSqlLexer.NUMERIC = 1100;
+PlSqlLexer.NUM_INDEX_KEYS = 1101;
+PlSqlLexer.NUMTODSINTERVAL = 1102;
+PlSqlLexer.NUMTOYMINTERVAL = 1103;
+PlSqlLexer.NVARCHAR2 = 1104;
+PlSqlLexer.NVL2 = 1105;
+PlSqlLexer.OBJECT2XML = 1106;
+PlSqlLexer.OBJECT = 1107;
+PlSqlLexer.OBJ_ID = 1108;
+PlSqlLexer.OBJNO = 1109;
+PlSqlLexer.OBJNO_REUSE = 1110;
+PlSqlLexer.OCCURENCES = 1111;
+PlSqlLexer.OFFLINE = 1112;
+PlSqlLexer.OFF = 1113;
+PlSqlLexer.OFFSET = 1114;
+PlSqlLexer.OF = 1115;
+PlSqlLexer.OIDINDEX = 1116;
+PlSqlLexer.OID = 1117;
+PlSqlLexer.OLAP = 1118;
+PlSqlLexer.OLD = 1119;
+PlSqlLexer.OLD_PUSH_PRED = 1120;
+PlSqlLexer.OLS = 1121;
+PlSqlLexer.OLTP = 1122;
+PlSqlLexer.OMIT = 1123;
+PlSqlLexer.ONE = 1124;
+PlSqlLexer.ONLINE = 1125;
+PlSqlLexer.ONLINELOG = 1126;
+PlSqlLexer.ONLY = 1127;
+PlSqlLexer.ON = 1128;
+PlSqlLexer.OPAQUE = 1129;
+PlSqlLexer.OPAQUE_TRANSFORM = 1130;
+PlSqlLexer.OPAQUE_XCANONICAL = 1131;
+PlSqlLexer.OPCODE = 1132;
+PlSqlLexer.OPEN = 1133;
+PlSqlLexer.OPERATIONS = 1134;
+PlSqlLexer.OPERATOR = 1135;
+PlSqlLexer.OPT_ESTIMATE = 1136;
+PlSqlLexer.OPTIMAL = 1137;
+PlSqlLexer.OPTIMIZE = 1138;
+PlSqlLexer.OPTIMIZER_FEATURES_ENABLE = 1139;
+PlSqlLexer.OPTIMIZER_GOAL = 1140;
+PlSqlLexer.OPTION = 1141;
+PlSqlLexer.OPT_PARAM = 1142;
+PlSqlLexer.ORA_BRANCH = 1143;
+PlSqlLexer.ORA_CHECK_ACL = 1144;
+PlSqlLexer.ORA_CHECK_PRIVILEGE = 1145;
+PlSqlLexer.ORA_CLUSTERING = 1146;
+PlSqlLexer.ORADATA = 1147;
+PlSqlLexer.ORADEBUG = 1148;
+PlSqlLexer.ORA_DST_AFFECTED = 1149;
+PlSqlLexer.ORA_DST_CONVERT = 1150;
+PlSqlLexer.ORA_DST_ERROR = 1151;
+PlSqlLexer.ORA_GET_ACLIDS = 1152;
+PlSqlLexer.ORA_GET_PRIVILEGES = 1153;
+PlSqlLexer.ORA_HASH = 1154;
+PlSqlLexer.ORA_INVOKING_USERID = 1155;
+PlSqlLexer.ORA_INVOKING_USER = 1156;
+PlSqlLexer.ORA_INVOKING_XS_USER_GUID = 1157;
+PlSqlLexer.ORA_INVOKING_XS_USER = 1158;
+PlSqlLexer.ORA_RAWCOMPARE = 1159;
+PlSqlLexer.ORA_RAWCONCAT = 1160;
+PlSqlLexer.ORA_ROWSCN = 1161;
+PlSqlLexer.ORA_ROWSCN_RAW = 1162;
+PlSqlLexer.ORA_ROWVERSION = 1163;
+PlSqlLexer.ORA_TABVERSION = 1164;
+PlSqlLexer.ORA_WRITE_TIME = 1165;
+PlSqlLexer.ORDERED = 1166;
+PlSqlLexer.ORDERED_PREDICATES = 1167;
+PlSqlLexer.ORDER = 1168;
+PlSqlLexer.ORDINALITY = 1169;
+PlSqlLexer.OR_EXPAND = 1170;
+PlSqlLexer.ORGANIZATION = 1171;
+PlSqlLexer.OR = 1172;
+PlSqlLexer.OR_PREDICATES = 1173;
+PlSqlLexer.OSERROR = 1174;
+PlSqlLexer.OTHER = 1175;
+PlSqlLexer.OUTER_JOIN_TO_ANTI = 1176;
+PlSqlLexer.OUTER_JOIN_TO_INNER = 1177;
+PlSqlLexer.OUTER = 1178;
+PlSqlLexer.OUTLINE_LEAF = 1179;
+PlSqlLexer.OUTLINE = 1180;
+PlSqlLexer.OUT_OF_LINE = 1181;
+PlSqlLexer.OUT = 1182;
+PlSqlLexer.OVERFLOW_NOMOVE = 1183;
+PlSqlLexer.OVERFLOW = 1184;
+PlSqlLexer.OVERLAPS = 1185;
+PlSqlLexer.OVER = 1186;
+PlSqlLexer.OVERRIDING = 1187;
+PlSqlLexer.OWNER = 1188;
+PlSqlLexer.OWNERSHIP = 1189;
+PlSqlLexer.OWN = 1190;
+PlSqlLexer.PACKAGE = 1191;
+PlSqlLexer.PACKAGES = 1192;
+PlSqlLexer.PARALLEL_ENABLE = 1193;
+PlSqlLexer.PARALLEL_INDEX = 1194;
+PlSqlLexer.PARALLEL = 1195;
+PlSqlLexer.PARAMETERFILE = 1196;
+PlSqlLexer.PARAMETERS = 1197;
+PlSqlLexer.PARAM = 1198;
+PlSqlLexer.PARENT = 1199;
+PlSqlLexer.PARITY = 1200;
+PlSqlLexer.PARTIAL_JOIN = 1201;
+PlSqlLexer.PARTIALLY = 1202;
+PlSqlLexer.PARTIAL = 1203;
+PlSqlLexer.PARTIAL_ROLLUP_PUSHDOWN = 1204;
+PlSqlLexer.PARTITION_HASH = 1205;
+PlSqlLexer.PARTITION_LIST = 1206;
+PlSqlLexer.PARTITION = 1207;
+PlSqlLexer.PARTITION_RANGE = 1208;
+PlSqlLexer.PARTITIONS = 1209;
+PlSqlLexer.PARTNUMINST = 1210;
+PlSqlLexer.PASSING = 1211;
+PlSqlLexer.PASSWORD_GRACE_TIME = 1212;
+PlSqlLexer.PASSWORD_LIFE_TIME = 1213;
+PlSqlLexer.PASSWORD_LOCK_TIME = 1214;
+PlSqlLexer.PASSWORD = 1215;
+PlSqlLexer.PASSWORD_REUSE_MAX = 1216;
+PlSqlLexer.PASSWORD_REUSE_TIME = 1217;
+PlSqlLexer.PASSWORD_VERIFY_FUNCTION = 1218;
+PlSqlLexer.PAST = 1219;
+PlSqlLexer.PATCH = 1220;
+PlSqlLexer.PATH = 1221;
+PlSqlLexer.PATH_PREFIX = 1222;
+PlSqlLexer.PATHS = 1223;
+PlSqlLexer.PATTERN = 1224;
+PlSqlLexer.PBL_HS_BEGIN = 1225;
+PlSqlLexer.PBL_HS_END = 1226;
+PlSqlLexer.PCTFREE = 1227;
+PlSqlLexer.PCTINCREASE = 1228;
+PlSqlLexer.PCTTHRESHOLD = 1229;
+PlSqlLexer.PCTUSED = 1230;
+PlSqlLexer.PCTVERSION = 1231;
+PlSqlLexer.PENDING = 1232;
+PlSqlLexer.PERCENT_FOUND = 1233;
+PlSqlLexer.PERCENT_ISOPEN = 1234;
+PlSqlLexer.PERCENT_NOTFOUND = 1235;
+PlSqlLexer.PERCENT_KEYWORD = 1236;
+PlSqlLexer.PERCENT_RANKM = 1237;
+PlSqlLexer.PERCENT_ROWCOUNT = 1238;
+PlSqlLexer.PERCENT_ROWTYPE = 1239;
+PlSqlLexer.PERCENT_TYPE = 1240;
+PlSqlLexer.PERFORMANCE = 1241;
+PlSqlLexer.PERIOD_KEYWORD = 1242;
+PlSqlLexer.PERMANENT = 1243;
+PlSqlLexer.PERMISSION = 1244;
+PlSqlLexer.PERMUTE = 1245;
+PlSqlLexer.PER = 1246;
+PlSqlLexer.PFILE = 1247;
+PlSqlLexer.PHYSICAL = 1248;
+PlSqlLexer.PIKEY = 1249;
+PlSqlLexer.PIPELINED = 1250;
+PlSqlLexer.PIPE = 1251;
+PlSqlLexer.PIV_GB = 1252;
+PlSqlLexer.PIVOT = 1253;
+PlSqlLexer.PIV_SSF = 1254;
+PlSqlLexer.PLACE_DISTINCT = 1255;
+PlSqlLexer.PLACE_GROUP_BY = 1256;
+PlSqlLexer.PLAN = 1257;
+PlSqlLexer.PLSCOPE_SETTINGS = 1258;
+PlSqlLexer.PLS_INTEGER = 1259;
+PlSqlLexer.PLSQL_CCFLAGS = 1260;
+PlSqlLexer.PLSQL_CODE_TYPE = 1261;
+PlSqlLexer.PLSQL_DEBUG = 1262;
+PlSqlLexer.PLSQL_OPTIMIZE_LEVEL = 1263;
+PlSqlLexer.PLSQL_WARNINGS = 1264;
+PlSqlLexer.PLUGGABLE = 1265;
+PlSqlLexer.POINT = 1266;
+PlSqlLexer.POLICY = 1267;
+PlSqlLexer.POOL_16K = 1268;
+PlSqlLexer.POOL_2K = 1269;
+PlSqlLexer.POOL_32K = 1270;
+PlSqlLexer.POOL_4K = 1271;
+PlSqlLexer.POOL_8K = 1272;
+PlSqlLexer.POSITIVEN = 1273;
+PlSqlLexer.POSITIVE = 1274;
+PlSqlLexer.POST_TRANSACTION = 1275;
+PlSqlLexer.POWERMULTISET_BY_CARDINALITY = 1276;
+PlSqlLexer.POWERMULTISET = 1277;
+PlSqlLexer.POWER = 1278;
+PlSqlLexer.PQ_CONCURRENT_UNION = 1279;
+PlSqlLexer.PQ_DISTRIBUTE = 1280;
+PlSqlLexer.PQ_DISTRIBUTE_WINDOW = 1281;
+PlSqlLexer.PQ_FILTER = 1282;
+PlSqlLexer.PQ_MAP = 1283;
+PlSqlLexer.PQ_NOMAP = 1284;
+PlSqlLexer.PQ_REPLICATE = 1285;
+PlSqlLexer.PQ_SKEW = 1286;
+PlSqlLexer.PRAGMA = 1287;
+PlSqlLexer.PREBUILT = 1288;
+PlSqlLexer.PRECEDES = 1289;
+PlSqlLexer.PRECEDING = 1290;
+PlSqlLexer.PRECISION = 1291;
+PlSqlLexer.PRECOMPUTE_SUBQUERY = 1292;
+PlSqlLexer.PREDICATE_REORDERS = 1293;
+PlSqlLexer.PRELOAD = 1294;
+PlSqlLexer.PREPARE = 1295;
+PlSqlLexer.PRESENTNNV = 1296;
+PlSqlLexer.PRESENT = 1297;
+PlSqlLexer.PRESENTV = 1298;
+PlSqlLexer.PRESERVE_OID = 1299;
+PlSqlLexer.PRESERVE = 1300;
+PlSqlLexer.PRETTY = 1301;
+PlSqlLexer.PREVIOUS = 1302;
+PlSqlLexer.PREV = 1303;
+PlSqlLexer.PRIMARY = 1304;
+PlSqlLexer.PRINTBLOBTOCLOB = 1305;
+PlSqlLexer.PRIORITY = 1306;
+PlSqlLexer.PRIOR = 1307;
+PlSqlLexer.PRIVATE = 1308;
+PlSqlLexer.PRIVATE_SGA = 1309;
+PlSqlLexer.PRIVILEGED = 1310;
+PlSqlLexer.PRIVILEGE = 1311;
+PlSqlLexer.PRIVILEGES = 1312;
+PlSqlLexer.PROCEDURAL = 1313;
+PlSqlLexer.PROCEDURE = 1314;
+PlSqlLexer.PROCESS = 1315;
+PlSqlLexer.PROFILE = 1316;
+PlSqlLexer.PROGRAM = 1317;
+PlSqlLexer.PROJECT = 1318;
+PlSqlLexer.PROPAGATE = 1319;
+PlSqlLexer.PROTECTED = 1320;
+PlSqlLexer.PROTECTION = 1321;
+PlSqlLexer.PROXY = 1322;
+PlSqlLexer.PRUNING = 1323;
+PlSqlLexer.PUBLIC = 1324;
+PlSqlLexer.PULL_PRED = 1325;
+PlSqlLexer.PURGE = 1326;
+PlSqlLexer.PUSH_PRED = 1327;
+PlSqlLexer.PUSH_SUBQ = 1328;
+PlSqlLexer.PX_FAULT_TOLERANCE = 1329;
+PlSqlLexer.PX_GRANULE = 1330;
+PlSqlLexer.PX_JOIN_FILTER = 1331;
+PlSqlLexer.QB_NAME = 1332;
+PlSqlLexer.QUERY_BLOCK = 1333;
+PlSqlLexer.QUERY = 1334;
+PlSqlLexer.QUEUE_CURR = 1335;
+PlSqlLexer.QUEUE = 1336;
+PlSqlLexer.QUEUE_ROWP = 1337;
+PlSqlLexer.QUIESCE = 1338;
+PlSqlLexer.QUORUM = 1339;
+PlSqlLexer.QUOTA = 1340;
+PlSqlLexer.RAISE = 1341;
+PlSqlLexer.RANDOM_LOCAL = 1342;
+PlSqlLexer.RANDOM = 1343;
+PlSqlLexer.RANGE = 1344;
+PlSqlLexer.RANKM = 1345;
+PlSqlLexer.RAPIDLY = 1346;
+PlSqlLexer.RAW = 1347;
+PlSqlLexer.RAWTOHEX = 1348;
+PlSqlLexer.RAWTONHEX = 1349;
+PlSqlLexer.RBA = 1350;
+PlSqlLexer.RBO_OUTLINE = 1351;
+PlSqlLexer.RDBA = 1352;
+PlSqlLexer.READ = 1353;
+PlSqlLexer.READS = 1354;
+PlSqlLexer.REALM = 1355;
+PlSqlLexer.REAL = 1356;
+PlSqlLexer.REBALANCE = 1357;
+PlSqlLexer.REBUILD = 1358;
+PlSqlLexer.RECORD = 1359;
+PlSqlLexer.RECORDS_PER_BLOCK = 1360;
+PlSqlLexer.RECOVERABLE = 1361;
+PlSqlLexer.RECOVER = 1362;
+PlSqlLexer.RECOVERY = 1363;
+PlSqlLexer.RECYCLEBIN = 1364;
+PlSqlLexer.RECYCLE = 1365;
+PlSqlLexer.REDACTION = 1366;
+PlSqlLexer.REDEFINE = 1367;
+PlSqlLexer.REDO = 1368;
+PlSqlLexer.REDUCED = 1369;
+PlSqlLexer.REDUNDANCY = 1370;
+PlSqlLexer.REF_CASCADE_CURSOR = 1371;
+PlSqlLexer.REFERENCED = 1372;
+PlSqlLexer.REFERENCE = 1373;
+PlSqlLexer.REFERENCES = 1374;
+PlSqlLexer.REFERENCING = 1375;
+PlSqlLexer.REF = 1376;
+PlSqlLexer.REFRESH = 1377;
+PlSqlLexer.REFTOHEX = 1378;
+PlSqlLexer.REGEXP_COUNT = 1379;
+PlSqlLexer.REGEXP_INSTR = 1380;
+PlSqlLexer.REGEXP_LIKE = 1381;
+PlSqlLexer.REGEXP_REPLACE = 1382;
+PlSqlLexer.REGEXP_SUBSTR = 1383;
+PlSqlLexer.REGISTER = 1384;
+PlSqlLexer.REGR_AVGX = 1385;
+PlSqlLexer.REGR_AVGY = 1386;
+PlSqlLexer.REGR_COUNT = 1387;
+PlSqlLexer.REGR_INTERCEPT = 1388;
+PlSqlLexer.REGR_R2 = 1389;
+PlSqlLexer.REGR_SLOPE = 1390;
+PlSqlLexer.REGR_SXX = 1391;
+PlSqlLexer.REGR_SXY = 1392;
+PlSqlLexer.REGR_SYY = 1393;
+PlSqlLexer.REGULAR = 1394;
+PlSqlLexer.REJECT = 1395;
+PlSqlLexer.REKEY = 1396;
+PlSqlLexer.RELATIONAL = 1397;
+PlSqlLexer.RELIES_ON = 1398;
+PlSqlLexer.RELOCATE = 1399;
+PlSqlLexer.RELY = 1400;
+PlSqlLexer.REMAINDER = 1401;
+PlSqlLexer.REMOTE_MAPPED = 1402;
+PlSqlLexer.REMOVE = 1403;
+PlSqlLexer.RENAME = 1404;
+PlSqlLexer.REPAIR = 1405;
+PlSqlLexer.REPEAT = 1406;
+PlSqlLexer.REPLACE = 1407;
+PlSqlLexer.REPLICATION = 1408;
+PlSqlLexer.REQUIRED = 1409;
+PlSqlLexer.RESETLOGS = 1410;
+PlSqlLexer.RESET = 1411;
+PlSqlLexer.RESIZE = 1412;
+PlSqlLexer.RESOLVE = 1413;
+PlSqlLexer.RESOLVER = 1414;
+PlSqlLexer.RESOURCE = 1415;
+PlSqlLexer.RESPECT = 1416;
+PlSqlLexer.RESTART = 1417;
+PlSqlLexer.RESTORE_AS_INTERVALS = 1418;
+PlSqlLexer.RESTORE = 1419;
+PlSqlLexer.RESTRICT_ALL_REF_CONS = 1420;
+PlSqlLexer.RESTRICTED = 1421;
+PlSqlLexer.RESTRICT_REFERENCES = 1422;
+PlSqlLexer.RESTRICT = 1423;
+PlSqlLexer.RESULT_CACHE = 1424;
+PlSqlLexer.RESULT = 1425;
+PlSqlLexer.RESUMABLE = 1426;
+PlSqlLexer.RESUME = 1427;
+PlSqlLexer.RETENTION = 1428;
+PlSqlLexer.RETRY_ON_ROW_CHANGE = 1429;
+PlSqlLexer.RETURNING = 1430;
+PlSqlLexer.RETURN = 1431;
+PlSqlLexer.REUSE = 1432;
+PlSqlLexer.REVERSE = 1433;
+PlSqlLexer.REVOKE = 1434;
+PlSqlLexer.REWRITE_OR_ERROR = 1435;
+PlSqlLexer.REWRITE = 1436;
+PlSqlLexer.RIGHT = 1437;
+PlSqlLexer.ROLE = 1438;
+PlSqlLexer.ROLESET = 1439;
+PlSqlLexer.ROLES = 1440;
+PlSqlLexer.ROLLBACK = 1441;
+PlSqlLexer.ROLLING = 1442;
+PlSqlLexer.ROLLUP = 1443;
+PlSqlLexer.ROWDEPENDENCIES = 1444;
+PlSqlLexer.ROWID_MAPPING_TABLE = 1445;
+PlSqlLexer.ROWID = 1446;
+PlSqlLexer.ROWIDTOCHAR = 1447;
+PlSqlLexer.ROWIDTONCHAR = 1448;
+PlSqlLexer.ROW_LENGTH = 1449;
+PlSqlLexer.ROWNUM = 1450;
+PlSqlLexer.ROW = 1451;
+PlSqlLexer.ROWS = 1452;
+PlSqlLexer.RPAD = 1453;
+PlSqlLexer.RTRIM = 1454;
+PlSqlLexer.RULE = 1455;
+PlSqlLexer.RULES = 1456;
+PlSqlLexer.RUNNING = 1457;
+PlSqlLexer.SALT = 1458;
+PlSqlLexer.SAMPLE = 1459;
+PlSqlLexer.SAVE_AS_INTERVALS = 1460;
+PlSqlLexer.SAVEPOINT = 1461;
+PlSqlLexer.SAVE = 1462;
+PlSqlLexer.SB4 = 1463;
+PlSqlLexer.SCALE_ROWS = 1464;
+PlSqlLexer.SCALE = 1465;
+PlSqlLexer.SCAN_INSTANCES = 1466;
+PlSqlLexer.SCAN = 1467;
+PlSqlLexer.SCHEDULER = 1468;
+PlSqlLexer.SCHEMACHECK = 1469;
+PlSqlLexer.SCHEMA = 1470;
+PlSqlLexer.SCN_ASCENDING = 1471;
+PlSqlLexer.SCN = 1472;
+PlSqlLexer.SCOPE = 1473;
+PlSqlLexer.SCRUB = 1474;
+PlSqlLexer.SD_ALL = 1475;
+PlSqlLexer.SD_INHIBIT = 1476;
+PlSqlLexer.SDO_GEOM_MBR = 1477;
+PlSqlLexer.SD_SHOW = 1478;
+PlSqlLexer.SEARCH = 1479;
+PlSqlLexer.SECOND = 1480;
+PlSqlLexer.SECRET = 1481;
+PlSqlLexer.SECUREFILE_DBA = 1482;
+PlSqlLexer.SECUREFILE = 1483;
+PlSqlLexer.SECURITY = 1484;
+PlSqlLexer.SEED = 1485;
+PlSqlLexer.SEG_BLOCK = 1486;
+PlSqlLexer.SEG_FILE = 1487;
+PlSqlLexer.SEGMENT = 1488;
+PlSqlLexer.SELECTIVITY = 1489;
+PlSqlLexer.SELECT = 1490;
+PlSqlLexer.SELF = 1491;
+PlSqlLexer.SEMIJOIN_DRIVER = 1492;
+PlSqlLexer.SEMIJOIN = 1493;
+PlSqlLexer.SEMI_TO_INNER = 1494;
+PlSqlLexer.SEQUENCED = 1495;
+PlSqlLexer.SEQUENCE = 1496;
+PlSqlLexer.SEQUENTIAL = 1497;
+PlSqlLexer.SEQ = 1498;
+PlSqlLexer.SERIALIZABLE = 1499;
+PlSqlLexer.SERIALLY_REUSABLE = 1500;
+PlSqlLexer.SERIAL = 1501;
+PlSqlLexer.SERVERERROR = 1502;
+PlSqlLexer.SERVICE_NAME_CONVERT = 1503;
+PlSqlLexer.SERVICES = 1504;
+PlSqlLexer.SESSION_CACHED_CURSORS = 1505;
+PlSqlLexer.SESSION = 1506;
+PlSqlLexer.SESSIONS_PER_USER = 1507;
+PlSqlLexer.SESSIONTIMEZONE = 1508;
+PlSqlLexer.SESSIONTZNAME = 1509;
+PlSqlLexer.SET = 1510;
+PlSqlLexer.SETS = 1511;
+PlSqlLexer.SETTINGS = 1512;
+PlSqlLexer.SET_TO_JOIN = 1513;
+PlSqlLexer.SEVERE = 1514;
+PlSqlLexer.SHARED_POOL = 1515;
+PlSqlLexer.SHARED = 1516;
+PlSqlLexer.SHARE = 1517;
+PlSqlLexer.SHARING = 1518;
+PlSqlLexer.SHELFLIFE = 1519;
+PlSqlLexer.SHOW = 1520;
+PlSqlLexer.SHRINK = 1521;
+PlSqlLexer.SHUTDOWN = 1522;
+PlSqlLexer.SIBLINGS = 1523;
+PlSqlLexer.SID = 1524;
+PlSqlLexer.SIGNAL_COMPONENT = 1525;
+PlSqlLexer.SIGNAL_FUNCTION = 1526;
+PlSqlLexer.SIGN = 1527;
+PlSqlLexer.SIGNTYPE = 1528;
+PlSqlLexer.SIMPLE_INTEGER = 1529;
+PlSqlLexer.SIMPLE = 1530;
+PlSqlLexer.SINGLE = 1531;
+PlSqlLexer.SINGLETASK = 1532;
+PlSqlLexer.SINH = 1533;
+PlSqlLexer.SIN = 1534;
+PlSqlLexer.SIZE = 1535;
+PlSqlLexer.SKIP_EXT_OPTIMIZER = 1536;
+PlSqlLexer.SKIP_ = 1537;
+PlSqlLexer.SKIP_UNQ_UNUSABLE_IDX = 1538;
+PlSqlLexer.SKIP_UNUSABLE_INDEXES = 1539;
+PlSqlLexer.SMALLFILE = 1540;
+PlSqlLexer.SMALLINT = 1541;
+PlSqlLexer.SNAPSHOT = 1542;
+PlSqlLexer.SOME = 1543;
+PlSqlLexer.SORT = 1544;
+PlSqlLexer.SOUNDEX = 1545;
+PlSqlLexer.SOURCE_FILE_DIRECTORY = 1546;
+PlSqlLexer.SOURCE_FILE_NAME_CONVERT = 1547;
+PlSqlLexer.SOURCE = 1548;
+PlSqlLexer.SPACE_KEYWORD = 1549;
+PlSqlLexer.SPECIFICATION = 1550;
+PlSqlLexer.SPFILE = 1551;
+PlSqlLexer.SPLIT = 1552;
+PlSqlLexer.SPREADSHEET = 1553;
+PlSqlLexer.SQLDATA = 1554;
+PlSqlLexer.SQLERROR = 1555;
+PlSqlLexer.SQLLDR = 1556;
+PlSqlLexer.SQL = 1557;
+PlSqlLexer.SQL_TRACE = 1558;
+PlSqlLexer.SQL_TRANSLATION_PROFILE = 1559;
+PlSqlLexer.SQRT = 1560;
+PlSqlLexer.STALE = 1561;
+PlSqlLexer.STANDALONE = 1562;
+PlSqlLexer.STANDARD_HASH = 1563;
+PlSqlLexer.STANDBY_MAX_DATA_DELAY = 1564;
+PlSqlLexer.STANDBYS = 1565;
+PlSqlLexer.STANDBY = 1566;
+PlSqlLexer.STAR = 1567;
+PlSqlLexer.STAR_TRANSFORMATION = 1568;
+PlSqlLexer.START = 1569;
+PlSqlLexer.STARTUP = 1570;
+PlSqlLexer.STATEMENT_ID = 1571;
+PlSqlLexer.STATEMENT_QUEUING = 1572;
+PlSqlLexer.STATEMENTS = 1573;
+PlSqlLexer.STATEMENT = 1574;
+PlSqlLexer.STATE = 1575;
+PlSqlLexer.STATIC = 1576;
+PlSqlLexer.STATISTICS = 1577;
+PlSqlLexer.STATS_BINOMIAL_TEST = 1578;
+PlSqlLexer.STATS_CROSSTAB = 1579;
+PlSqlLexer.STATS_F_TEST = 1580;
+PlSqlLexer.STATS_KS_TEST = 1581;
+PlSqlLexer.STATS_MODE = 1582;
+PlSqlLexer.STATS_MW_TEST = 1583;
+PlSqlLexer.STATS_ONE_WAY_ANOVA = 1584;
+PlSqlLexer.STATS_T_TEST_INDEP = 1585;
+PlSqlLexer.STATS_T_TEST_INDEPU = 1586;
+PlSqlLexer.STATS_T_TEST_ONE = 1587;
+PlSqlLexer.STATS_T_TEST_PAIRED = 1588;
+PlSqlLexer.STATS_WSR_TEST = 1589;
+PlSqlLexer.STDDEV_POP = 1590;
+PlSqlLexer.STDDEV_SAMP = 1591;
+PlSqlLexer.STOP = 1592;
+PlSqlLexer.STORAGE = 1593;
+PlSqlLexer.STORE = 1594;
+PlSqlLexer.STREAMS = 1595;
+PlSqlLexer.STREAM = 1596;
+PlSqlLexer.STRICT = 1597;
+PlSqlLexer.STRING = 1598;
+PlSqlLexer.STRIPE_COLUMNS = 1599;
+PlSqlLexer.STRIPE_WIDTH = 1600;
+PlSqlLexer.STRIP = 1601;
+PlSqlLexer.STRUCTURE = 1602;
+PlSqlLexer.SUBMULTISET = 1603;
+PlSqlLexer.SUBPARTITION_REL = 1604;
+PlSqlLexer.SUBPARTITIONS = 1605;
+PlSqlLexer.SUBPARTITION = 1606;
+PlSqlLexer.SUBQUERIES = 1607;
+PlSqlLexer.SUBQUERY_PRUNING = 1608;
+PlSqlLexer.SUBSCRIBE = 1609;
+PlSqlLexer.SUBSET = 1610;
+PlSqlLexer.SUBSTITUTABLE = 1611;
+PlSqlLexer.SUBSTR2 = 1612;
+PlSqlLexer.SUBSTR4 = 1613;
+PlSqlLexer.SUBSTRB = 1614;
+PlSqlLexer.SUBSTRC = 1615;
+PlSqlLexer.SUBTYPE = 1616;
+PlSqlLexer.SUCCESSFUL = 1617;
+PlSqlLexer.SUCCESS = 1618;
+PlSqlLexer.SUMMARY = 1619;
+PlSqlLexer.SUPPLEMENTAL = 1620;
+PlSqlLexer.SUSPEND = 1621;
+PlSqlLexer.SWAP_JOIN_INPUTS = 1622;
+PlSqlLexer.SWITCHOVER = 1623;
+PlSqlLexer.SWITCH = 1624;
+PlSqlLexer.SYNCHRONOUS = 1625;
+PlSqlLexer.SYNC = 1626;
+PlSqlLexer.SYNONYM = 1627;
+PlSqlLexer.SYSASM = 1628;
+PlSqlLexer.SYS_AUDIT = 1629;
+PlSqlLexer.SYSAUX = 1630;
+PlSqlLexer.SYSBACKUP = 1631;
+PlSqlLexer.SYS_CHECKACL = 1632;
+PlSqlLexer.SYS_CHECK_PRIVILEGE = 1633;
+PlSqlLexer.SYS_CONNECT_BY_PATH = 1634;
+PlSqlLexer.SYS_CONTEXT = 1635;
+PlSqlLexer.SYSDATE = 1636;
+PlSqlLexer.SYSDBA = 1637;
+PlSqlLexer.SYS_DBURIGEN = 1638;
+PlSqlLexer.SYSDG = 1639;
+PlSqlLexer.SYS_DL_CURSOR = 1640;
+PlSqlLexer.SYS_DM_RXFORM_CHR = 1641;
+PlSqlLexer.SYS_DM_RXFORM_NUM = 1642;
+PlSqlLexer.SYS_DOM_COMPARE = 1643;
+PlSqlLexer.SYS_DST_PRIM2SEC = 1644;
+PlSqlLexer.SYS_DST_SEC2PRIM = 1645;
+PlSqlLexer.SYS_ET_BFILE_TO_RAW = 1646;
+PlSqlLexer.SYS_ET_BLOB_TO_IMAGE = 1647;
+PlSqlLexer.SYS_ET_IMAGE_TO_BLOB = 1648;
+PlSqlLexer.SYS_ET_RAW_TO_BFILE = 1649;
+PlSqlLexer.SYS_EXTPDTXT = 1650;
+PlSqlLexer.SYS_EXTRACT_UTC = 1651;
+PlSqlLexer.SYS_FBT_INSDEL = 1652;
+PlSqlLexer.SYS_FILTER_ACLS = 1653;
+PlSqlLexer.SYS_FNMATCHES = 1654;
+PlSqlLexer.SYS_FNREPLACE = 1655;
+PlSqlLexer.SYS_GET_ACLIDS = 1656;
+PlSqlLexer.SYS_GET_COL_ACLIDS = 1657;
+PlSqlLexer.SYS_GET_PRIVILEGES = 1658;
+PlSqlLexer.SYS_GETTOKENID = 1659;
+PlSqlLexer.SYS_GETXTIVAL = 1660;
+PlSqlLexer.SYS_GUID = 1661;
+PlSqlLexer.SYSGUID = 1662;
+PlSqlLexer.SYSKM = 1663;
+PlSqlLexer.SYS_MAKE_XMLNODEID = 1664;
+PlSqlLexer.SYS_MAKEXML = 1665;
+PlSqlLexer.SYS_MKXMLATTR = 1666;
+PlSqlLexer.SYS_MKXTI = 1667;
+PlSqlLexer.SYSOBJ = 1668;
+PlSqlLexer.SYS_OP_ADT2BIN = 1669;
+PlSqlLexer.SYS_OP_ADTCONS = 1670;
+PlSqlLexer.SYS_OP_ALSCRVAL = 1671;
+PlSqlLexer.SYS_OP_ATG = 1672;
+PlSqlLexer.SYS_OP_BIN2ADT = 1673;
+PlSqlLexer.SYS_OP_BITVEC = 1674;
+PlSqlLexer.SYS_OP_BL2R = 1675;
+PlSqlLexer.SYS_OP_BLOOM_FILTER_LIST = 1676;
+PlSqlLexer.SYS_OP_BLOOM_FILTER = 1677;
+PlSqlLexer.SYS_OP_C2C = 1678;
+PlSqlLexer.SYS_OP_CAST = 1679;
+PlSqlLexer.SYS_OP_CEG = 1680;
+PlSqlLexer.SYS_OP_CL2C = 1681;
+PlSqlLexer.SYS_OP_COMBINED_HASH = 1682;
+PlSqlLexer.SYS_OP_COMP = 1683;
+PlSqlLexer.SYS_OP_CONVERT = 1684;
+PlSqlLexer.SYS_OP_COUNTCHG = 1685;
+PlSqlLexer.SYS_OP_CSCONV = 1686;
+PlSqlLexer.SYS_OP_CSCONVTEST = 1687;
+PlSqlLexer.SYS_OP_CSR = 1688;
+PlSqlLexer.SYS_OP_CSX_PATCH = 1689;
+PlSqlLexer.SYS_OP_CYCLED_SEQ = 1690;
+PlSqlLexer.SYS_OP_DECOMP = 1691;
+PlSqlLexer.SYS_OP_DESCEND = 1692;
+PlSqlLexer.SYS_OP_DISTINCT = 1693;
+PlSqlLexer.SYS_OP_DRA = 1694;
+PlSqlLexer.SYS_OP_DUMP = 1695;
+PlSqlLexer.SYS_OP_DV_CHECK = 1696;
+PlSqlLexer.SYS_OP_ENFORCE_NOT_NULL = 1697;
+PlSqlLexer.SYSOPER = 1698;
+PlSqlLexer.SYS_OP_EXTRACT = 1699;
+PlSqlLexer.SYS_OP_GROUPING = 1700;
+PlSqlLexer.SYS_OP_GUID = 1701;
+PlSqlLexer.SYS_OP_HASH = 1702;
+PlSqlLexer.SYS_OP_IIX = 1703;
+PlSqlLexer.SYS_OP_ITR = 1704;
+PlSqlLexer.SYS_OP_KEY_VECTOR_CREATE = 1705;
+PlSqlLexer.SYS_OP_KEY_VECTOR_FILTER_LIST = 1706;
+PlSqlLexer.SYS_OP_KEY_VECTOR_FILTER = 1707;
+PlSqlLexer.SYS_OP_KEY_VECTOR_SUCCEEDED = 1708;
+PlSqlLexer.SYS_OP_KEY_VECTOR_USE = 1709;
+PlSqlLexer.SYS_OP_LBID = 1710;
+PlSqlLexer.SYS_OP_LOBLOC2BLOB = 1711;
+PlSqlLexer.SYS_OP_LOBLOC2CLOB = 1712;
+PlSqlLexer.SYS_OP_LOBLOC2ID = 1713;
+PlSqlLexer.SYS_OP_LOBLOC2NCLOB = 1714;
+PlSqlLexer.SYS_OP_LOBLOC2TYP = 1715;
+PlSqlLexer.SYS_OP_LSVI = 1716;
+PlSqlLexer.SYS_OP_LVL = 1717;
+PlSqlLexer.SYS_OP_MAKEOID = 1718;
+PlSqlLexer.SYS_OP_MAP_NONNULL = 1719;
+PlSqlLexer.SYS_OP_MSR = 1720;
+PlSqlLexer.SYS_OP_NICOMBINE = 1721;
+PlSqlLexer.SYS_OP_NIEXTRACT = 1722;
+PlSqlLexer.SYS_OP_NII = 1723;
+PlSqlLexer.SYS_OP_NIX = 1724;
+PlSqlLexer.SYS_OP_NOEXPAND = 1725;
+PlSqlLexer.SYS_OP_NTCIMG = 1726;
+PlSqlLexer.SYS_OP_NUMTORAW = 1727;
+PlSqlLexer.SYS_OP_OIDVALUE = 1728;
+PlSqlLexer.SYS_OP_OPNSIZE = 1729;
+PlSqlLexer.SYS_OP_PAR_1 = 1730;
+PlSqlLexer.SYS_OP_PARGID_1 = 1731;
+PlSqlLexer.SYS_OP_PARGID = 1732;
+PlSqlLexer.SYS_OP_PAR = 1733;
+PlSqlLexer.SYS_OP_PART_ID = 1734;
+PlSqlLexer.SYS_OP_PIVOT = 1735;
+PlSqlLexer.SYS_OP_R2O = 1736;
+PlSqlLexer.SYS_OP_RAWTONUM = 1737;
+PlSqlLexer.SYS_OP_RDTM = 1738;
+PlSqlLexer.SYS_OP_REF = 1739;
+PlSqlLexer.SYS_OP_RMTD = 1740;
+PlSqlLexer.SYS_OP_ROWIDTOOBJ = 1741;
+PlSqlLexer.SYS_OP_RPB = 1742;
+PlSqlLexer.SYS_OPTLOBPRBSC = 1743;
+PlSqlLexer.SYS_OP_TOSETID = 1744;
+PlSqlLexer.SYS_OP_TPR = 1745;
+PlSqlLexer.SYS_OP_TRTB = 1746;
+PlSqlLexer.SYS_OPTXICMP = 1747;
+PlSqlLexer.SYS_OPTXQCASTASNQ = 1748;
+PlSqlLexer.SYS_OP_UNDESCEND = 1749;
+PlSqlLexer.SYS_OP_VECAND = 1750;
+PlSqlLexer.SYS_OP_VECBIT = 1751;
+PlSqlLexer.SYS_OP_VECOR = 1752;
+PlSqlLexer.SYS_OP_VECXOR = 1753;
+PlSqlLexer.SYS_OP_VERSION = 1754;
+PlSqlLexer.SYS_OP_VREF = 1755;
+PlSqlLexer.SYS_OP_VVD = 1756;
+PlSqlLexer.SYS_OP_XMLCONS_FOR_CSX = 1757;
+PlSqlLexer.SYS_OP_XPTHATG = 1758;
+PlSqlLexer.SYS_OP_XPTHIDX = 1759;
+PlSqlLexer.SYS_OP_XPTHOP = 1760;
+PlSqlLexer.SYS_OP_XTXT2SQLT = 1761;
+PlSqlLexer.SYS_OP_ZONE_ID = 1762;
+PlSqlLexer.SYS_ORDERKEY_DEPTH = 1763;
+PlSqlLexer.SYS_ORDERKEY_MAXCHILD = 1764;
+PlSqlLexer.SYS_ORDERKEY_PARENT = 1765;
+PlSqlLexer.SYS_PARALLEL_TXN = 1766;
+PlSqlLexer.SYS_PATHID_IS_ATTR = 1767;
+PlSqlLexer.SYS_PATHID_IS_NMSPC = 1768;
+PlSqlLexer.SYS_PATHID_LASTNAME = 1769;
+PlSqlLexer.SYS_PATHID_LASTNMSPC = 1770;
+PlSqlLexer.SYS_PATH_REVERSE = 1771;
+PlSqlLexer.SYS_PXQEXTRACT = 1772;
+PlSqlLexer.SYS_RAW_TO_XSID = 1773;
+PlSqlLexer.SYS_RID_ORDER = 1774;
+PlSqlLexer.SYS_ROW_DELTA = 1775;
+PlSqlLexer.SYS_SC_2_XMLT = 1776;
+PlSqlLexer.SYS_SYNRCIREDO = 1777;
+PlSqlLexer.SYSTEM_DEFINED = 1778;
+PlSqlLexer.SYSTEM = 1779;
+PlSqlLexer.SYSTIMESTAMP = 1780;
+PlSqlLexer.SYS_TYPEID = 1781;
+PlSqlLexer.SYS_UMAKEXML = 1782;
+PlSqlLexer.SYS_XMLANALYZE = 1783;
+PlSqlLexer.SYS_XMLCONTAINS = 1784;
+PlSqlLexer.SYS_XMLCONV = 1785;
+PlSqlLexer.SYS_XMLEXNSURI = 1786;
+PlSqlLexer.SYS_XMLGEN = 1787;
+PlSqlLexer.SYS_XMLI_LOC_ISNODE = 1788;
+PlSqlLexer.SYS_XMLI_LOC_ISTEXT = 1789;
+PlSqlLexer.SYS_XMLINSTR = 1790;
+PlSqlLexer.SYS_XMLLOCATOR_GETSVAL = 1791;
+PlSqlLexer.SYS_XMLNODEID_GETCID = 1792;
+PlSqlLexer.SYS_XMLNODEID_GETLOCATOR = 1793;
+PlSqlLexer.SYS_XMLNODEID_GETOKEY = 1794;
+PlSqlLexer.SYS_XMLNODEID_GETPATHID = 1795;
+PlSqlLexer.SYS_XMLNODEID_GETPTRID = 1796;
+PlSqlLexer.SYS_XMLNODEID_GETRID = 1797;
+PlSqlLexer.SYS_XMLNODEID_GETSVAL = 1798;
+PlSqlLexer.SYS_XMLNODEID_GETTID = 1799;
+PlSqlLexer.SYS_XMLNODEID = 1800;
+PlSqlLexer.SYS_XMLT_2_SC = 1801;
+PlSqlLexer.SYS_XMLTRANSLATE = 1802;
+PlSqlLexer.SYS_XMLTYPE2SQL = 1803;
+PlSqlLexer.SYS_XQ_ASQLCNV = 1804;
+PlSqlLexer.SYS_XQ_ATOMCNVCHK = 1805;
+PlSqlLexer.SYS_XQBASEURI = 1806;
+PlSqlLexer.SYS_XQCASTABLEERRH = 1807;
+PlSqlLexer.SYS_XQCODEP2STR = 1808;
+PlSqlLexer.SYS_XQCODEPEQ = 1809;
+PlSqlLexer.SYS_XQCON2SEQ = 1810;
+PlSqlLexer.SYS_XQCONCAT = 1811;
+PlSqlLexer.SYS_XQDELETE = 1812;
+PlSqlLexer.SYS_XQDFLTCOLATION = 1813;
+PlSqlLexer.SYS_XQDOC = 1814;
+PlSqlLexer.SYS_XQDOCURI = 1815;
+PlSqlLexer.SYS_XQDURDIV = 1816;
+PlSqlLexer.SYS_XQED4URI = 1817;
+PlSqlLexer.SYS_XQENDSWITH = 1818;
+PlSqlLexer.SYS_XQERRH = 1819;
+PlSqlLexer.SYS_XQERR = 1820;
+PlSqlLexer.SYS_XQESHTMLURI = 1821;
+PlSqlLexer.SYS_XQEXLOBVAL = 1822;
+PlSqlLexer.SYS_XQEXSTWRP = 1823;
+PlSqlLexer.SYS_XQEXTRACT = 1824;
+PlSqlLexer.SYS_XQEXTRREF = 1825;
+PlSqlLexer.SYS_XQEXVAL = 1826;
+PlSqlLexer.SYS_XQFB2STR = 1827;
+PlSqlLexer.SYS_XQFNBOOL = 1828;
+PlSqlLexer.SYS_XQFNCMP = 1829;
+PlSqlLexer.SYS_XQFNDATIM = 1830;
+PlSqlLexer.SYS_XQFNLNAME = 1831;
+PlSqlLexer.SYS_XQFNNM = 1832;
+PlSqlLexer.SYS_XQFNNSURI = 1833;
+PlSqlLexer.SYS_XQFNPREDTRUTH = 1834;
+PlSqlLexer.SYS_XQFNQNM = 1835;
+PlSqlLexer.SYS_XQFNROOT = 1836;
+PlSqlLexer.SYS_XQFORMATNUM = 1837;
+PlSqlLexer.SYS_XQFTCONTAIN = 1838;
+PlSqlLexer.SYS_XQFUNCR = 1839;
+PlSqlLexer.SYS_XQGETCONTENT = 1840;
+PlSqlLexer.SYS_XQINDXOF = 1841;
+PlSqlLexer.SYS_XQINSERT = 1842;
+PlSqlLexer.SYS_XQINSPFX = 1843;
+PlSqlLexer.SYS_XQIRI2URI = 1844;
+PlSqlLexer.SYS_XQLANG = 1845;
+PlSqlLexer.SYS_XQLLNMFRMQNM = 1846;
+PlSqlLexer.SYS_XQMKNODEREF = 1847;
+PlSqlLexer.SYS_XQNILLED = 1848;
+PlSqlLexer.SYS_XQNODENAME = 1849;
+PlSqlLexer.SYS_XQNORMSPACE = 1850;
+PlSqlLexer.SYS_XQNORMUCODE = 1851;
+PlSqlLexer.SYS_XQ_NRNG = 1852;
+PlSqlLexer.SYS_XQNSP4PFX = 1853;
+PlSqlLexer.SYS_XQNSPFRMQNM = 1854;
+PlSqlLexer.SYS_XQPFXFRMQNM = 1855;
+PlSqlLexer.SYS_XQ_PKSQL2XML = 1856;
+PlSqlLexer.SYS_XQPOLYABS = 1857;
+PlSqlLexer.SYS_XQPOLYADD = 1858;
+PlSqlLexer.SYS_XQPOLYCEL = 1859;
+PlSqlLexer.SYS_XQPOLYCSTBL = 1860;
+PlSqlLexer.SYS_XQPOLYCST = 1861;
+PlSqlLexer.SYS_XQPOLYDIV = 1862;
+PlSqlLexer.SYS_XQPOLYFLR = 1863;
+PlSqlLexer.SYS_XQPOLYMOD = 1864;
+PlSqlLexer.SYS_XQPOLYMUL = 1865;
+PlSqlLexer.SYS_XQPOLYRND = 1866;
+PlSqlLexer.SYS_XQPOLYSQRT = 1867;
+PlSqlLexer.SYS_XQPOLYSUB = 1868;
+PlSqlLexer.SYS_XQPOLYUMUS = 1869;
+PlSqlLexer.SYS_XQPOLYUPLS = 1870;
+PlSqlLexer.SYS_XQPOLYVEQ = 1871;
+PlSqlLexer.SYS_XQPOLYVGE = 1872;
+PlSqlLexer.SYS_XQPOLYVGT = 1873;
+PlSqlLexer.SYS_XQPOLYVLE = 1874;
+PlSqlLexer.SYS_XQPOLYVLT = 1875;
+PlSqlLexer.SYS_XQPOLYVNE = 1876;
+PlSqlLexer.SYS_XQREF2VAL = 1877;
+PlSqlLexer.SYS_XQRENAME = 1878;
+PlSqlLexer.SYS_XQREPLACE = 1879;
+PlSqlLexer.SYS_XQRESVURI = 1880;
+PlSqlLexer.SYS_XQRNDHALF2EVN = 1881;
+PlSqlLexer.SYS_XQRSLVQNM = 1882;
+PlSqlLexer.SYS_XQRYENVPGET = 1883;
+PlSqlLexer.SYS_XQRYVARGET = 1884;
+PlSqlLexer.SYS_XQRYWRP = 1885;
+PlSqlLexer.SYS_XQSEQ2CON4XC = 1886;
+PlSqlLexer.SYS_XQSEQ2CON = 1887;
+PlSqlLexer.SYS_XQSEQDEEPEQ = 1888;
+PlSqlLexer.SYS_XQSEQINSB = 1889;
+PlSqlLexer.SYS_XQSEQRM = 1890;
+PlSqlLexer.SYS_XQSEQRVS = 1891;
+PlSqlLexer.SYS_XQSEQSUB = 1892;
+PlSqlLexer.SYS_XQSEQTYPMATCH = 1893;
+PlSqlLexer.SYS_XQSTARTSWITH = 1894;
+PlSqlLexer.SYS_XQSTATBURI = 1895;
+PlSqlLexer.SYS_XQSTR2CODEP = 1896;
+PlSqlLexer.SYS_XQSTRJOIN = 1897;
+PlSqlLexer.SYS_XQSUBSTRAFT = 1898;
+PlSqlLexer.SYS_XQSUBSTRBEF = 1899;
+PlSqlLexer.SYS_XQTOKENIZE = 1900;
+PlSqlLexer.SYS_XQTREATAS = 1901;
+PlSqlLexer.SYS_XQ_UPKXML2SQL = 1902;
+PlSqlLexer.SYS_XQXFORM = 1903;
+PlSqlLexer.SYS_XSID_TO_RAW = 1904;
+PlSqlLexer.SYS_ZMAP_FILTER = 1905;
+PlSqlLexer.SYS_ZMAP_REFRESH = 1906;
+PlSqlLexer.TABLE_LOOKUP_BY_NL = 1907;
+PlSqlLexer.TABLESPACE_NO = 1908;
+PlSqlLexer.TABLESPACE = 1909;
+PlSqlLexer.TABLES = 1910;
+PlSqlLexer.TABLE_STATS = 1911;
+PlSqlLexer.TABLE = 1912;
+PlSqlLexer.TABNO = 1913;
+PlSqlLexer.TAG = 1914;
+PlSqlLexer.TANH = 1915;
+PlSqlLexer.TAN = 1916;
+PlSqlLexer.TBLORIDXPARTNUM = 1917;
+PlSqlLexer.TEMPFILE = 1918;
+PlSqlLexer.TEMPLATE = 1919;
+PlSqlLexer.TEMPORARY = 1920;
+PlSqlLexer.TEMP_TABLE = 1921;
+PlSqlLexer.TEST = 1922;
+PlSqlLexer.TEXT = 1923;
+PlSqlLexer.THAN = 1924;
+PlSqlLexer.THEN = 1925;
+PlSqlLexer.THE = 1926;
+PlSqlLexer.THREAD = 1927;
+PlSqlLexer.THROUGH = 1928;
+PlSqlLexer.TIER = 1929;
+PlSqlLexer.TIES = 1930;
+PlSqlLexer.TIMEOUT = 1931;
+PlSqlLexer.TIMESTAMP_LTZ_UNCONSTRAINED = 1932;
+PlSqlLexer.TIMESTAMP = 1933;
+PlSqlLexer.TIMESTAMP_TZ_UNCONSTRAINED = 1934;
+PlSqlLexer.TIMESTAMP_UNCONSTRAINED = 1935;
+PlSqlLexer.TIMES = 1936;
+PlSqlLexer.TIME = 1937;
+PlSqlLexer.TIMEZONE = 1938;
+PlSqlLexer.TIMEZONE_ABBR = 1939;
+PlSqlLexer.TIMEZONE_HOUR = 1940;
+PlSqlLexer.TIMEZONE_MINUTE = 1941;
+PlSqlLexer.TIMEZONE_OFFSET = 1942;
+PlSqlLexer.TIMEZONE_REGION = 1943;
+PlSqlLexer.TIME_ZONE = 1944;
+PlSqlLexer.TIV_GB = 1945;
+PlSqlLexer.TIV_SSF = 1946;
+PlSqlLexer.TO_ACLID = 1947;
+PlSqlLexer.TO_BINARY_DOUBLE = 1948;
+PlSqlLexer.TO_BINARY_FLOAT = 1949;
+PlSqlLexer.TO_BLOB = 1950;
+PlSqlLexer.TO_CLOB = 1951;
+PlSqlLexer.TO_DSINTERVAL = 1952;
+PlSqlLexer.TO_LOB = 1953;
+PlSqlLexer.TO_MULTI_BYTE = 1954;
+PlSqlLexer.TO_NCHAR = 1955;
+PlSqlLexer.TO_NCLOB = 1956;
+PlSqlLexer.TO_NUMBER = 1957;
+PlSqlLexer.TOPLEVEL = 1958;
+PlSqlLexer.TO_SINGLE_BYTE = 1959;
+PlSqlLexer.TO_TIMESTAMP = 1960;
+PlSqlLexer.TO_TIMESTAMP_TZ = 1961;
+PlSqlLexer.TO_TIME = 1962;
+PlSqlLexer.TO_TIME_TZ = 1963;
+PlSqlLexer.TO = 1964;
+PlSqlLexer.TO_YMINTERVAL = 1965;
+PlSqlLexer.TRACE = 1966;
+PlSqlLexer.TRACING = 1967;
+PlSqlLexer.TRACKING = 1968;
+PlSqlLexer.TRAILING = 1969;
+PlSqlLexer.TRANSACTION = 1970;
+PlSqlLexer.TRANSFORM_DISTINCT_AGG = 1971;
+PlSqlLexer.TRANSITIONAL = 1972;
+PlSqlLexer.TRANSITION = 1973;
+PlSqlLexer.TRANSLATE = 1974;
+PlSqlLexer.TRANSLATION = 1975;
+PlSqlLexer.TREAT = 1976;
+PlSqlLexer.TRIGGERS = 1977;
+PlSqlLexer.TRIGGER = 1978;
+PlSqlLexer.TRUE = 1979;
+PlSqlLexer.TRUNCATE = 1980;
+PlSqlLexer.TRUNC = 1981;
+PlSqlLexer.TRUSTED = 1982;
+PlSqlLexer.TRUST = 1983;
+PlSqlLexer.TUNING = 1984;
+PlSqlLexer.TX = 1985;
+PlSqlLexer.TYPES = 1986;
+PlSqlLexer.TYPE = 1987;
+PlSqlLexer.TZ_OFFSET = 1988;
+PlSqlLexer.UB2 = 1989;
+PlSqlLexer.UBA = 1990;
+PlSqlLexer.UCS2 = 1991;
+PlSqlLexer.UID = 1992;
+PlSqlLexer.UNARCHIVED = 1993;
+PlSqlLexer.UNBOUNDED = 1994;
+PlSqlLexer.UNBOUND = 1995;
+PlSqlLexer.UNCONDITIONAL = 1996;
+PlSqlLexer.UNDER = 1997;
+PlSqlLexer.UNDO = 1998;
+PlSqlLexer.UNDROP = 1999;
+PlSqlLexer.UNIFORM = 2000;
+PlSqlLexer.UNION = 2001;
+PlSqlLexer.UNIQUE = 2002;
+PlSqlLexer.UNISTR = 2003;
+PlSqlLexer.UNLIMITED = 2004;
+PlSqlLexer.UNLOAD = 2005;
+PlSqlLexer.UNLOCK = 2006;
+PlSqlLexer.UNMATCHED = 2007;
+PlSqlLexer.UNNEST_INNERJ_DISTINCT_VIEW = 2008;
+PlSqlLexer.UNNEST_NOSEMIJ_NODISTINCTVIEW = 2009;
+PlSqlLexer.UNNEST_SEMIJ_VIEW = 2010;
+PlSqlLexer.UNNEST = 2011;
+PlSqlLexer.UNPACKED = 2012;
+PlSqlLexer.UNPIVOT = 2013;
+PlSqlLexer.UNPLUG = 2014;
+PlSqlLexer.UNPROTECTED = 2015;
+PlSqlLexer.UNQUIESCE = 2016;
+PlSqlLexer.UNRECOVERABLE = 2017;
+PlSqlLexer.UNRESTRICTED = 2018;
+PlSqlLexer.UNSUBSCRIBE = 2019;
+PlSqlLexer.UNTIL = 2020;
+PlSqlLexer.UNUSABLE = 2021;
+PlSqlLexer.UNUSED = 2022;
+PlSqlLexer.UPDATABLE = 2023;
+PlSqlLexer.UPDATED = 2024;
+PlSqlLexer.UPDATE = 2025;
+PlSqlLexer.UPDATEXML = 2026;
+PlSqlLexer.UPD_INDEXES = 2027;
+PlSqlLexer.UPD_JOININDEX = 2028;
+PlSqlLexer.UPGRADE = 2029;
+PlSqlLexer.UPPER = 2030;
+PlSqlLexer.UPSERT = 2031;
+PlSqlLexer.UROWID = 2032;
+PlSqlLexer.USABLE = 2033;
+PlSqlLexer.USAGE = 2034;
+PlSqlLexer.USE_ANTI = 2035;
+PlSqlLexer.USE_CONCAT = 2036;
+PlSqlLexer.USE_CUBE = 2037;
+PlSqlLexer.USE_HASH_AGGREGATION = 2038;
+PlSqlLexer.USE_HASH_GBY_FOR_PUSHDOWN = 2039;
+PlSqlLexer.USE_HASH = 2040;
+PlSqlLexer.USE_HIDDEN_PARTITIONS = 2041;
+PlSqlLexer.USE_INVISIBLE_INDEXES = 2042;
+PlSqlLexer.USE_MERGE_CARTESIAN = 2043;
+PlSqlLexer.USE_MERGE = 2044;
+PlSqlLexer.USE_NL = 2045;
+PlSqlLexer.USE_NL_WITH_INDEX = 2046;
+PlSqlLexer.USE_PRIVATE_OUTLINES = 2047;
+PlSqlLexer.USER_DATA = 2048;
+PlSqlLexer.USER_DEFINED = 2049;
+PlSqlLexer.USERENV = 2050;
+PlSqlLexer.USERGROUP = 2051;
+PlSqlLexer.USER_RECYCLEBIN = 2052;
+PlSqlLexer.USERS = 2053;
+PlSqlLexer.USER_TABLESPACES = 2054;
+PlSqlLexer.USER = 2055;
+PlSqlLexer.USE_SEMI = 2056;
+PlSqlLexer.USE_STORED_OUTLINES = 2057;
+PlSqlLexer.USE_TTT_FOR_GSETS = 2058;
+PlSqlLexer.USE = 2059;
+PlSqlLexer.USE_VECTOR_AGGREGATION = 2060;
+PlSqlLexer.USE_WEAK_NAME_RESL = 2061;
+PlSqlLexer.USING_NO_EXPAND = 2062;
+PlSqlLexer.USING = 2063;
+PlSqlLexer.UTF16BE = 2064;
+PlSqlLexer.UTF16LE = 2065;
+PlSqlLexer.UTF32 = 2066;
+PlSqlLexer.UTF8 = 2067;
+PlSqlLexer.V1 = 2068;
+PlSqlLexer.V2 = 2069;
+PlSqlLexer.VALIDATE = 2070;
+PlSqlLexer.VALIDATION = 2071;
+PlSqlLexer.VALID_TIME_END = 2072;
+PlSqlLexer.VALUES = 2073;
+PlSqlLexer.VALUE = 2074;
+PlSqlLexer.VARCHAR2 = 2075;
+PlSqlLexer.VARCHAR = 2076;
+PlSqlLexer.VARIABLE = 2077;
+PlSqlLexer.VAR_POP = 2078;
+PlSqlLexer.VARRAYS = 2079;
+PlSqlLexer.VARRAY = 2080;
+PlSqlLexer.VAR_SAMP = 2081;
+PlSqlLexer.VARYING = 2082;
+PlSqlLexer.VECTOR_READ_TRACE = 2083;
+PlSqlLexer.VECTOR_READ = 2084;
+PlSqlLexer.VECTOR_TRANSFORM_DIMS = 2085;
+PlSqlLexer.VECTOR_TRANSFORM_FACT = 2086;
+PlSqlLexer.VECTOR_TRANSFORM = 2087;
+PlSqlLexer.VERIFIER = 2088;
+PlSqlLexer.VERIFY = 2089;
+PlSqlLexer.VERSIONING = 2090;
+PlSqlLexer.VERSIONS_ENDSCN = 2091;
+PlSqlLexer.VERSIONS_ENDTIME = 2092;
+PlSqlLexer.VERSIONS_OPERATION = 2093;
+PlSqlLexer.VERSIONS_STARTSCN = 2094;
+PlSqlLexer.VERSIONS_STARTTIME = 2095;
+PlSqlLexer.VERSIONS = 2096;
+PlSqlLexer.VERSIONS_XID = 2097;
+PlSqlLexer.VERSION = 2098;
+PlSqlLexer.VIEW = 2099;
+PlSqlLexer.VIOLATION = 2100;
+PlSqlLexer.VIRTUAL = 2101;
+PlSqlLexer.VISIBILITY = 2102;
+PlSqlLexer.VISIBLE = 2103;
+PlSqlLexer.VOLUME = 2104;
+PlSqlLexer.VSIZE = 2105;
+PlSqlLexer.WAIT = 2106;
+PlSqlLexer.WALLET = 2107;
+PlSqlLexer.WARNING = 2108;
+PlSqlLexer.WEEKS = 2109;
+PlSqlLexer.WEEK = 2110;
+PlSqlLexer.WELLFORMED = 2111;
+PlSqlLexer.WHENEVER = 2112;
+PlSqlLexer.WHEN = 2113;
+PlSqlLexer.WHERE = 2114;
+PlSqlLexer.WHILE = 2115;
+PlSqlLexer.WHITESPACE = 2116;
+PlSqlLexer.WIDTH_BUCKET = 2117;
+PlSqlLexer.WITHIN = 2118;
+PlSqlLexer.WITHOUT = 2119;
+PlSqlLexer.WITH_PLSQL = 2120;
+PlSqlLexer.WITH = 2121;
+PlSqlLexer.WORK = 2122;
+PlSqlLexer.WRAPPED = 2123;
+PlSqlLexer.WRAPPER = 2124;
+PlSqlLexer.WRITE = 2125;
+PlSqlLexer.XDB_FASTPATH_INSERT = 2126;
+PlSqlLexer.XDB = 2127;
+PlSqlLexer.X_DYN_PRUNE = 2128;
+PlSqlLexer.XID = 2129;
+PlSqlLexer.XML2OBJECT = 2130;
+PlSqlLexer.XMLAGG = 2131;
+PlSqlLexer.XMLATTRIBUTES = 2132;
+PlSqlLexer.XMLCAST = 2133;
+PlSqlLexer.XMLCDATA = 2134;
+PlSqlLexer.XMLCOLATTVAL = 2135;
+PlSqlLexer.XMLCOMMENT = 2136;
+PlSqlLexer.XMLCONCAT = 2137;
+PlSqlLexer.XMLDIFF = 2138;
+PlSqlLexer.XML_DML_RWT_STMT = 2139;
+PlSqlLexer.XMLELEMENT = 2140;
+PlSqlLexer.XMLEXISTS2 = 2141;
+PlSqlLexer.XMLEXISTS = 2142;
+PlSqlLexer.XMLFOREST = 2143;
+PlSqlLexer.XMLINDEX = 2144;
+PlSqlLexer.XMLINDEX_REWRITE_IN_SELECT = 2145;
+PlSqlLexer.XMLINDEX_REWRITE = 2146;
+PlSqlLexer.XMLINDEX_SEL_IDX_TBL = 2147;
+PlSqlLexer.XMLISNODE = 2148;
+PlSqlLexer.XMLISVALID = 2149;
+PlSqlLexer.XMLNAMESPACES = 2150;
+PlSqlLexer.XMLPARSE = 2151;
+PlSqlLexer.XMLPATCH = 2152;
+PlSqlLexer.XMLPI = 2153;
+PlSqlLexer.XMLQUERYVAL = 2154;
+PlSqlLexer.XMLQUERY = 2155;
+PlSqlLexer.XMLROOT = 2156;
+PlSqlLexer.XMLSCHEMA = 2157;
+PlSqlLexer.XMLSERIALIZE = 2158;
+PlSqlLexer.XMLTABLE = 2159;
+PlSqlLexer.XMLTRANSFORMBLOB = 2160;
+PlSqlLexer.XMLTRANSFORM = 2161;
+PlSqlLexer.XMLTYPE = 2162;
+PlSqlLexer.XML = 2163;
+PlSqlLexer.XPATHTABLE = 2164;
+PlSqlLexer.XS_SYS_CONTEXT = 2165;
+PlSqlLexer.XS = 2166;
+PlSqlLexer.XTRANSPORT = 2167;
+PlSqlLexer.YEARS = 2168;
+PlSqlLexer.YEAR = 2169;
+PlSqlLexer.YES = 2170;
+PlSqlLexer.YMINTERVAL_UNCONSTRAINED = 2171;
+PlSqlLexer.ZONEMAP = 2172;
+PlSqlLexer.ZONE = 2173;
+PlSqlLexer.PREDICTION = 2174;
+PlSqlLexer.PREDICTION_BOUNDS = 2175;
+PlSqlLexer.PREDICTION_COST = 2176;
+PlSqlLexer.PREDICTION_DETAILS = 2177;
+PlSqlLexer.PREDICTION_PROBABILITY = 2178;
+PlSqlLexer.PREDICTION_SET = 2179;
+PlSqlLexer.CUME_DIST = 2180;
+PlSqlLexer.DENSE_RANK = 2181;
+PlSqlLexer.LISTAGG = 2182;
+PlSqlLexer.PERCENT_RANK = 2183;
+PlSqlLexer.PERCENTILE_CONT = 2184;
+PlSqlLexer.PERCENTILE_DISC = 2185;
+PlSqlLexer.RANK = 2186;
+PlSqlLexer.AVG = 2187;
+PlSqlLexer.CORR = 2188;
+PlSqlLexer.COVAR_ = 2189;
+PlSqlLexer.DECODE = 2190;
+PlSqlLexer.LAG = 2191;
+PlSqlLexer.LEAD = 2192;
+PlSqlLexer.MAX = 2193;
+PlSqlLexer.MEDIAN = 2194;
+PlSqlLexer.MIN = 2195;
+PlSqlLexer.NTILE = 2196;
+PlSqlLexer.NVL = 2197;
+PlSqlLexer.RATIO_TO_REPORT = 2198;
+PlSqlLexer.REGR_ = 2199;
+PlSqlLexer.ROUND = 2200;
+PlSqlLexer.ROW_NUMBER = 2201;
+PlSqlLexer.SUBSTR = 2202;
+PlSqlLexer.TO_CHAR = 2203;
+PlSqlLexer.TRIM = 2204;
+PlSqlLexer.SUM = 2205;
+PlSqlLexer.STDDEV = 2206;
+PlSqlLexer.VAR_ = 2207;
+PlSqlLexer.VARIANCE = 2208;
+PlSqlLexer.LEAST = 2209;
+PlSqlLexer.GREATEST = 2210;
+PlSqlLexer.TO_DATE = 2211;
+PlSqlLexer.NATIONAL_CHAR_STRING_LIT = 2212;
+PlSqlLexer.BIT_STRING_LIT = 2213;
+PlSqlLexer.HEX_STRING_LIT = 2214;
+PlSqlLexer.DOUBLE_PERIOD = 2215;
+PlSqlLexer.PERIOD = 2216;
+PlSqlLexer.UNSIGNED_INTEGER = 2217;
+PlSqlLexer.APPROXIMATE_NUM_LIT = 2218;
+PlSqlLexer.CHAR_STRING = 2219;
+PlSqlLexer.DELIMITED_ID = 2220;
+PlSqlLexer.PERCENT = 2221;
+PlSqlLexer.AMPERSAND = 2222;
+PlSqlLexer.LEFT_PAREN = 2223;
+PlSqlLexer.RIGHT_PAREN = 2224;
+PlSqlLexer.DOUBLE_ASTERISK = 2225;
+PlSqlLexer.ASTERISK = 2226;
+PlSqlLexer.PLUS_SIGN = 2227;
+PlSqlLexer.MINUS_SIGN = 2228;
+PlSqlLexer.COMMA = 2229;
+PlSqlLexer.SOLIDUS = 2230;
+PlSqlLexer.AT_SIGN = 2231;
+PlSqlLexer.ASSIGN_OP = 2232;
+PlSqlLexer.BINDVAR = 2233;
+PlSqlLexer.NOT_EQUAL_OP = 2234;
+PlSqlLexer.CARRET_OPERATOR_PART = 2235;
+PlSqlLexer.TILDE_OPERATOR_PART = 2236;
+PlSqlLexer.EXCLAMATION_OPERATOR_PART = 2237;
+PlSqlLexer.GREATER_THAN_OP = 2238;
+PlSqlLexer.LESS_THAN_OP = 2239;
+PlSqlLexer.COLON = 2240;
+PlSqlLexer.SEMICOLON = 2241;
+PlSqlLexer.BAR = 2242;
+PlSqlLexer.EQUALS_OP = 2243;
+PlSqlLexer.LEFT_BRACKET = 2244;
+PlSqlLexer.RIGHT_BRACKET = 2245;
+PlSqlLexer.INTRODUCER = 2246;
+PlSqlLexer.SINGLE_LINE_COMMENT = 2247;
+PlSqlLexer.MULTI_LINE_COMMENT = 2248;
+PlSqlLexer.REMARK_COMMENT = 2249;
+PlSqlLexer.PROMPT_MESSAGE = 2250;
+PlSqlLexer.START_CMD = 2251;
+PlSqlLexer.REGULAR_ID = 2252;
+PlSqlLexer.SPACES = 2253;
+
+PlSqlLexer.prototype.channelNames = [ "DEFAULT_TOKEN_CHANNEL", "HIDDEN" ];
+
+PlSqlLexer.prototype.modeNames = [ "DEFAULT_MODE" ];
+
+PlSqlLexer.prototype.literalNames = [ null, "'ABORT'", "'ABS'", "'ACCESS'",
+ "'ACCESSED'", "'ACCOUNT'", "'ACL'",
+ "'ACOS'", "'ACTION'", "'ACTIONS'",
+ "'ACTIVATE'", "'ACTIVE'", "'ACTIVE_COMPONENT'",
+ "'ACTIVE_DATA'", "'ACTIVE_FUNCTION'",
+ "'ACTIVE_TAG'", "'ACTIVITY'", "'ADAPTIVE_PLAN'",
+ "'ADD'", "'ADD_COLUMN'", "'ADD_GROUP'",
+ "'ADD_MONTHS'", "'ADJ_DATE'", "'ADMIN'",
+ "'ADMINISTER'", "'ADMINISTRATOR'",
+ "'ADVANCED'", "'ADVISE'", "'ADVISOR'",
+ "'AFD_DISKSTRING'", "'AFTER'", "'AGENT'",
+ "'AGGREGATE'", "'A'", "'ALIAS'", "'ALL'",
+ "'ALLOCATE'", "'ALLOW'", "'ALL_ROWS'",
+ "'ALTER'", "'ALWAYS'", "'ANALYZE'",
+ "'ANCILLARY'", "'AND'", "'AND_EQUAL'",
+ "'ANOMALY'", "'ANSI_REARCH'", "'ANTIJOIN'",
+ "'ANY'", "'ANYSCHEMA'", "'APPEND'",
+ "'APPENDCHILDXML'", "'APPEND_VALUES'",
+ "'APPLICATION'", "'APPLY'", "'APPROX_COUNT_DISTINCT'",
+ "'ARCHIVAL'", "'ARCHIVE'", "'ARCHIVED'",
+ "'ARCHIVELOG'", "'ARRAY'", "'AS'",
+ "'ASC'", "'ASCII'", "'ASCIISTR'",
+ "'ASIN'", "'ASIS'", "'ASSEMBLY'",
+ "'ASSIGN'", "'ASSOCIATE'", "'ASYNC'",
+ "'ASYNCHRONOUS'", "'ATAN2'", "'ATAN'",
+ "'AT'", "'ATTRIBUTE'", "'ATTRIBUTES'",
+ "'AUDIT'", "'AUTHENTICATED'", "'AUTHENTICATION'",
+ "'AUTHID'", "'AUTHORIZATION'", "'AUTOALLOCATE'",
+ "'AUTO'", "'AUTOBACKUP'", "'AUTOEXTEND'",
+ "'AUTO_LOGIN'", "'AUTOMATIC'", "'AUTONOMOUS_TRANSACTION'",
+ "'AUTO_REOPTIMIZE'", "'AVAILABILITY'",
+ "'AVRO'", "'BACKGROUND'", "'BACKUP'",
+ "'BACKUPSET'", "'BASIC'", "'BASICFILE'",
+ "'BATCH'", "'BATCHSIZE'", "'BATCH_TABLE_ACCESS_BY_ROWID'",
+ "'BECOME'", "'BEFORE'", "'BEGIN'",
+ "'BEGINNING'", "'BEGIN_OUTLINE_DATA'",
+ "'BEHALF'", "'BEQUEATH'", "'BETWEEN'",
+ "'BFILE'", "'BFILENAME'", "'BIGFILE'",
+ "'BINARY'", "'BINARY_DOUBLE'", "'BINARY_DOUBLE_INFINITY'",
+ "'BINARY_DOUBLE_NAN'", "'BINARY_FLOAT'",
+ "'BINARY_FLOAT_INFINITY'", "'BINARY_FLOAT_NAN'",
+ "'BINARY_INTEGER'", "'BIND_AWARE'",
+ "'BINDING'", "'BIN_TO_NUM'", "'BITAND'",
+ "'BITMAP_AND'", "'BITMAP'", "'BITMAPS'",
+ "'BITMAP_TREE'", "'BITS'", "'BLOB'",
+ "'BLOCK'", "'BLOCK_RANGE'", "'BLOCKS'",
+ "'BLOCKSIZE'", "'BODY'", "'BOOLEAN'",
+ "'BOTH'", "'BOUND'", "'BRANCH'", "'BREADTH'",
+ "'BROADCAST'", "'BSON'", "'BUFFER'",
+ "'BUFFER_CACHE'", "'BUFFER_POOL'",
+ "'BUILD'", "'BULK'", "'BY'", "'BYPASS_RECURSIVE_CHECK'",
+ "'BYPASS_UJVC'", "'BYTE'", "'CACHE'",
+ "'CACHE_CB'", "'CACHE_INSTANCES'",
+ "'CACHE_TEMP_TABLE'", "'CACHING'",
+ "'CALCULATED'", "'CALLBACK'", "'CALL'",
+ "'CANCEL'", "'CANONICAL'", "'CAPACITY'",
+ "'CARDINALITY'", "'CASCADE'", "'CASE'",
+ "'CAST'", "'CATEGORY'", "'CDB$DEFAULT'",
+ "'CEIL'", "'CELL_FLASH_CACHE'", "'CERTIFICATE'",
+ "'CFILE'", "'CHAINED'", "'CHANGE'",
+ "'CHANGETRACKING'", "'CHANGE_DUPKEY_ERROR_INDEX'",
+ "'CHARACTER'", "'CHAR'", "'CHAR_CS'",
+ "'CHARTOROWID'", "'CHECK_ACL_REWRITE'",
+ "'CHECK'", "'CHECKPOINT'", "'CHILD'",
+ "'CHOOSE'", "'CHR'", "'CHUNK'", "'CLASS'",
+ "'CLASSIFIER'", "'CLEANUP'", "'CLEAR'",
+ "'C'", "'CLIENT'", "'CLOB'", "'CLONE'",
+ "'CLOSE_CACHED_OPEN_CURSORS'", "'CLOSE'",
+ "'CLUSTER_BY_ROWID'", "'CLUSTER'",
+ "'CLUSTER_DETAILS'", "'CLUSTER_DISTANCE'",
+ "'CLUSTER_ID'", "'CLUSTERING'", "'CLUSTERING_FACTOR'",
+ "'CLUSTER_PROBABILITY'", "'CLUSTER_SET'",
+ "'COALESCE'", "'COALESCE_SQ'", "'COARSE'",
+ "'CO_AUTH_IND'", "'COLD'", "'COLLECT'",
+ "'COLUMNAR'", "'COLUMN_AUTH_INDICATOR'",
+ "'COLUMN'", "'COLUMNS'", "'COLUMN_STATS'",
+ "'COLUMN_VALUE'", "'COMMENT'", "'COMMIT'",
+ "'COMMITTED'", "'COMMON_DATA'", "'COMPACT'",
+ "'COMPATIBILITY'", "'COMPILE'", "'COMPLETE'",
+ "'COMPLIANCE'", "'COMPONENT'", "'COMPONENTS'",
+ "'COMPOSE'", "'COMPOSITE'", "'COMPOSITE_LIMIT'",
+ "'COMPOUND'", "'COMPRESS'", "'COMPUTE'",
+ "'CONCAT'", "'CON_DBID_TO_ID'", "'CONDITIONAL'",
+ "'CONDITION'", "'CONFIRM'", "'CONFORMING'",
+ "'CON_GUID_TO_ID'", "'CON_ID'", "'CON_NAME_TO_ID'",
+ "'CONNECT_BY_CB_WHR_ONLY'", "'CONNECT_BY_COMBINE_SW'",
+ "'CONNECT_BY_COST_BASED'", "'CONNECT_BY_ELIM_DUPS'",
+ "'CONNECT_BY_FILTERING'", "'CONNECT_BY_ISCYCLE'",
+ "'CONNECT_BY_ISLEAF'", "'CONNECT_BY_ROOT'",
+ "'CONNECT'", "'CONNECT_TIME'", "'CONSIDER'",
+ "'CONSISTENT'", "'CONSTANT'", "'CONST'",
+ "'CONSTRAINT'", "'CONSTRAINTS'", "'CONSTRUCTOR'",
+ "'CONTAINER'", "'CONTAINER_DATA'",
+ "'CONTAINERS'", "'CONTENT'", "'CONTENTS'",
+ "'CONTEXT'", "'CONTINUE'", "'CONTROLFILE'",
+ "'CON_UID_TO_ID'", "'CONVERT'", "'COOKIE'",
+ "'COPY'", "'CORR_K'", "'CORR_S'",
+ "'CORRUPTION'", "'CORRUPT_XID_ALL'",
+ "'CORRUPT_XID'", "'COS'", "'COSH'",
+ "'COST'", "'COST_XML_QUERY_REWRITE'",
+ "'COUNT'", "'COVAR_POP'", "'COVAR_SAMP'",
+ "'CPU_COSTING'", "'CPU_PER_CALL'",
+ "'CPU_PER_SESSION'", "'CRASH'", "'CREATE'",
+ "'CREATE_FILE_DEST'", "'CREATE_STORED_OUTLINES'",
+ "'CREATION'", "'CREDENTIAL'", "'CRITICAL'",
+ "'CROSS'", "'CROSSEDITION'", "'CSCONVERT'",
+ "'CUBE_AJ'", "'CUBE'", "'CUBE_GB'",
+ "'CUBE_SJ'", "'CUME_DISTM'", "'CURRENT'",
+ "'CURRENT_DATE'", "'CURRENT_SCHEMA'",
+ "'CURRENT_TIME'", "'CURRENT_TIMESTAMP'",
+ "'CURRENT_USER'", "'CURRENTV'", "'CURSOR'",
+ "'CURSOR_SHARING_EXACT'", "'CURSOR_SPECIFIC_SEGMENT'",
+ "'CUSTOMDATUM'", "'CV'", "'CYCLE'",
+ "'DANGLING'", "'DATABASE'", "'DATA'",
+ "'DATAFILE'", "'DATAFILES'", "'DATAGUARDCONFIG'",
+ "'DATAMOVEMENT'", "'DATAOBJNO'", "'DATAOBJ_TO_MAT_PARTITION'",
+ "'DATAOBJ_TO_PARTITION'", "'DATAPUMP'",
+ "'DATA_SECURITY_REWRITE_LIMIT'", "'DATE'",
+ "'DATE_MODE'", "'DAY'", "'DAYS'",
+ "'DBA'", "'DBA_RECYCLEBIN'", "'DBMS_STATS'",
+ "'DB_ROLE_CHANGE'", "'DBTIMEZONE'",
+ "'DB_UNIQUE_NAME'", "'DB_VERSION'",
+ "'DDL'", "'DEALLOCATE'", "'DEBUG'",
+ "'DEBUGGER'", "'DEC'", "'DECIMAL'",
+ "'DECLARE'", "'DECOMPOSE'", "'DECORRELATE'",
+ "'DECR'", "'DECREMENT'", "'DECRYPT'",
+ "'DEDUPLICATE'", "'DEFAULT'", "'DEFAULTS'",
+ "'DEFERRABLE'", "'DEFERRED'", "'DEFINED'",
+ "'DEFINE'", "'DEFINER'", "'DEGREE'",
+ "'DELAY'", "'DELEGATE'", "'DELETE_ALL'",
+ "'DELETE'", "'DELETEXML'", "'DEMAND'",
+ "'DENSE_RANKM'", "'DEPENDENT'", "'DEPTH'",
+ "'DEQUEUE'", "'DEREF'", "'DEREF_NO_REWRITE'",
+ "'DESC'", "'DESTROY'", "'DETACHED'",
+ "'DETERMINES'", "'DETERMINISTIC'",
+ "'DICTIONARY'", "'DIMENSION'", "'DIMENSIONS'",
+ "'DIRECT_LOAD'", "'DIRECTORY'", "'DIRECT_PATH'",
+ "'DISABLE_ALL'", "'DISABLE'", "'DISABLE_PARALLEL_DML'",
+ "'DISABLE_PRESET'", "'DISABLE_RPKE'",
+ "'DISALLOW'", "'DISASSOCIATE'", "'DISCARD'",
+ "'DISCONNECT'", "'DISK'", "'DISKGROUP'",
+ "''+ DISKGROUP'", "'DISKS'", "'DISMOUNT'",
+ "'DISTINCT'", "'DISTINGUISHED'", "'DISTRIBUTED'",
+ "'DISTRIBUTE'", "'DML'", "'DML_UPDATE'",
+ "'DOCFIDELITY'", "'DOCUMENT'", "'DOMAIN_INDEX_FILTER'",
+ "'DOMAIN_INDEX_NO_SORT'", "'DOMAIN_INDEX_SORT'",
+ "'DOUBLE'", "'DOWNGRADE'", "'DRIVING_SITE'",
+ "'DROP_COLUMN'", "'DROP'", "'DROP_GROUP'",
+ "'DSINTERVAL_UNCONSTRAINED'", "'DST_UPGRADE_INSERT_CONV'",
+ "'DUMP'", "'DUMPSET'", "'DUPLICATE'",
+ "'DV'", "'DYNAMIC'", "'DYNAMIC_SAMPLING'",
+ "'DYNAMIC_SAMPLING_EST_CDN'", "'EACH'",
+ "'EDITIONABLE'", "'EDITION'", "'EDITIONING'",
+ "'EDITIONS'", "'ELEMENT'", "'ELIM_GROUPBY'",
+ "'ELIMINATE_JOIN'", "'ELIMINATE_OBY'",
+ "'ELIMINATE_OUTER_JOIN'", "'ELSE'",
+ "'ELSIF'", "'EM'", "'EMPTY_BLOB'",
+ "'EMPTY_CLOB'", "'EMPTY'", "'ENABLE_ALL'",
+ "'ENABLE'", "'ENABLE_PARALLEL_DML'",
+ "'ENABLE_PRESET'", "'ENCODING'", "'ENCRYPT'",
+ "'ENCRYPTION'", "'END'", "'END_OUTLINE_DATA'",
+ "'ENFORCED'", "'ENFORCE'", "'ENQUEUE'",
+ "'ENTERPRISE'", "'ENTITYESCAPING'",
+ "'ENTRY'", "'EQUIPART'", "'ERR'",
+ "'ERROR_ARGUMENT'", "'ERROR'", "'ERROR_ON_OVERLAP_TIME'",
+ "'ERRORS'", "'ESCAPE'", "'ESTIMATE'",
+ "'EVAL'", "'EVALNAME'", "'EVALUATE'",
+ "'EVALUATION'", "'EVENTS'", "'EVERY'",
+ "'EXCEPT'", "'EXCEPTION'", "'EXCEPTION_INIT'",
+ "'EXCEPTIONS'", "'EXCHANGE'", "'EXCLUDE'",
+ "'EXCLUDING'", "'EXCLUSIVE'", "'EXECUTE'",
+ "'EXEMPT'", "'EXISTING'", "'EXISTS'",
+ "'EXISTSNODE'", "'EXIT'", "'EXPAND_GSET_TO_UNION'",
+ "'EXPAND_TABLE'", "'EXP'", "'EXPIRE'",
+ "'EXPLAIN'", "'EXPLOSION'", "'EXPORT'",
+ "'EXPR_CORR_CHECK'", "'EXPRESS'",
+ "'EXTENDS'", "'EXTENT'", "'EXTENTS'",
+ "'EXTERNAL'", "'EXTERNALLY'", "'EXTRACTCLOBXML'",
+ "'EXTRACT'", "'EXTRACTVALUE'", "'EXTRA'",
+ "'FACILITY'", "'FACT'", "'FACTOR'",
+ "'FACTORIZE_JOIN'", "'FAILED'", "'FAILED_LOGIN_ATTEMPTS'",
+ "'FAILGROUP'", "'FAILOVER'", "'FAILURE'",
+ "'FALSE'", "'FAMILY'", "'FAR'", "'FAST'",
+ "'FASTSTART'", "'FBTSCAN'", "'FEATURE_DETAILS'",
+ "'FEATURE_ID'", "'FEATURE_SET'", "'FEATURE_VALUE'",
+ "'FETCH'", "'FILE'", "'FILE_NAME_CONVERT'",
+ "'FILESYSTEM_LIKE_LOGGING'", "'FILTER'",
+ "'FINAL'", "'FINE'", "'FINISH'", "'FIRST'",
+ "'FIRSTM'", "'FIRST_ROWS'", "'FIRST_VALUE'",
+ "'FIXED_VIEW_DATA'", "'FLAGGER'",
+ "'FLASHBACK'", "'FLASH_CACHE'", "'FLOAT'",
+ "'FLOB'", "'FLOOR'", "'FLUSH'", "'FOLDER'",
+ "'FOLLOWING'", "'FOLLOWS'", "'FORALL'",
+ "'FORCE'", "'FORCE_XML_QUERY_REWRITE'",
+ "'FOREIGN'", "'FOREVER'", "'FOR'",
+ "'FORMAT'", "'FORWARD'", "'FRAGMENT_NUMBER'",
+ "'FREELIST'", "'FREELISTS'", "'FREEPOOLS'",
+ "'FRESH'", "'FROM'", "'FROM_TZ'",
+ "'FULL'", "'FULL_OUTER_JOIN_TO_OUTER'",
+ "'FUNCTION'", "'FUNCTIONS'", "'GATHER_OPTIMIZER_STATISTICS'",
+ "'GATHER_PLAN_STATISTICS'", "'GBY_CONC_ROLLUP'",
+ "'GBY_PUSHDOWN'", "'GENERATED'", "'GET'",
+ "'GLOBAL'", "'GLOBALLY'", "'GLOBAL_NAME'",
+ "'GLOBAL_TOPIC_ENABLED'", "'GOTO'",
+ "'GRANT'", "'GROUP_BY'", "'GROUP'",
+ "'GROUP_ID'", "'GROUPING'", "'GROUPING_ID'",
+ "'GROUPS'", "'GUARANTEED'", "'GUARANTEE'",
+ "'GUARD'", "'HASH_AJ'", "'HASH'",
+ "'HASHKEYS'", "'HASH_SJ'", "'HAVING'",
+ "'HEADER'", "'HEAP'", "'HELP'", "'HEXTORAW'",
+ "'HEXTOREF'", "'HIDDEN'", "'HIDE'",
+ "'HIERARCHY'", "'HIGH'", "'HINTSET_BEGIN'",
+ "'HINTSET_END'", "'HOT'", "'HOUR'",
+ "'HWM_BROKERED'", "'HYBRID'", "'IDENTIFIED'",
+ "'IDENTIFIER'", "'IDENTITY'", "'IDGENERATORS'",
+ "'ID'", "'IDLE_TIME'", "'IF'", "'IGNORE'",
+ "'IGNORE_OPTIM_EMBEDDED_HINTS'", "'IGNORE_ROW_ON_DUPKEY_INDEX'",
+ "'IGNORE_WHERE_CLAUSE'", "'ILM'",
+ "'IMMEDIATE'", "'IMPACT'", "'IMPORT'",
+ "'INACTIVE'", "'INCLUDE'", "'INCLUDE_VERSION'",
+ "'INCLUDING'", "'INCREMENTAL'", "'INCREMENT'",
+ "'INCR'", "'INDENT'", "'INDEX_ASC'",
+ "'INDEX_COMBINE'", "'INDEX_DESC'",
+ "'INDEXED'", "'INDEXES'", "'INDEX_FFS'",
+ "'INDEX_FILTER'", "'INDEX'", "'INDEXING'",
+ "'INDEX_JOIN'", "'INDEX_ROWS'", "'INDEX_RRS'",
+ "'INDEX_RS_ASC'", "'INDEX_RS_DESC'",
+ "'INDEX_RS'", "'INDEX_SCAN'", "'INDEX_SKIP_SCAN'",
+ "'INDEX_SS_ASC'", "'INDEX_SS_DESC'",
+ "'INDEX_SS'", "'INDEX_STATS'", "'INDEXTYPE'",
+ "'INDEXTYPES'", "'INDICATOR'", "'INDICES'",
+ "'INFINITE'", "'INFORMATIONAL'", "'INHERIT'",
+ "'IN'", "'INITCAP'", "'INITIAL'",
+ "'INITIALIZED'", "'INITIALLY'", "'INITRANS'",
+ "'INLINE'", "'INLINE_XMLTYPE_NT'",
+ "'INMEMORY'", "'IN_MEMORY_METADATA'",
+ "'INMEMORY_PRUNING'", "'INNER'", "'INOUT'",
+ "'INPLACE'", "'INSERTCHILDXMLAFTER'",
+ "'INSERTCHILDXMLBEFORE'", "'INSERTCHILDXML'",
+ "'INSERT'", "'INSERTXMLAFTER'", "'INSERTXMLBEFORE'",
+ "'INSTANCE'", "'INSTANCES'", "'INSTANTIABLE'",
+ "'INSTANTLY'", "'INSTEAD'", "'INSTR2'",
+ "'INSTR4'", "'INSTRB'", "'INSTRC'",
+ "'INSTR'", "'INTEGER'", "'INTERLEAVED'",
+ "'INTERMEDIATE'", "'INTERNAL_CONVERT'",
+ "'INTERNAL_USE'", "'INTERPRETED'",
+ "'INTERSECT'", "'INTERVAL'", "'INT'",
+ "'INTO'", "'INVALIDATE'", "'INVISIBLE'",
+ "'IN_XQUERY'", "'IS'", "'ISOLATION'",
+ "'ISOLATION_LEVEL'", "'ITERATE'",
+ "'ITERATION_NUMBER'", "'JAVA'", "'JOB'",
+ "'JOIN'", "'JSON_ARRAYAGG'", "'JSON_ARRAY'",
+ "'JSON_EQUAL'", "'JSON_EXISTS2'",
+ "'JSON_EXISTS'", "'JSONGET'", "'JSON'",
+ "'JSON_OBJECTAGG'", "'JSON_OBJECT'",
+ "'JSONPARSE'", "'JSON_QUERY'", "'JSON_SERIALIZE'",
+ "'JSON_TABLE'", "'JSON_TEXTCONTAINS2'",
+ "'JSON_TEXTCONTAINS'", "'JSON_VALUE'",
+ "'KEEP_DUPLICATES'", "'KEEP'", "'KERBEROS'",
+ "'KEY'", "'KEY_LENGTH'", "'KEYSIZE'",
+ "'KEYS'", "'KEYSTORE'", "'KILL'",
+ "'LABEL'", "'LANGUAGE'", "'LAST_DAY'",
+ "'LAST'", "'LAST_VALUE'", "'LATERAL'",
+ "'LAX'", "'LAYER'", "'LDAP_REGISTRATION_ENABLED'",
+ "'LDAP_REGISTRATION'", "'LDAP_REG_SYNC_INTERVAL'",
+ "'LEADING'", "'LEFT'", "'LENGTH2'",
+ "'LENGTH4'", "'LENGTHB'", "'LENGTHC'",
+ "'LENGTH'", "'LESS'", "'LEVEL'", "'LEVELS'",
+ "'LIBRARY'", "'LIFECYCLE'", "'LIFE'",
+ "'LIFETIME'", "'LIKE2'", "'LIKE4'",
+ "'LIKEC'", "'LIKE_EXPAND'", "'LIKE'",
+ "'LIMIT'", "'LINEAR'", "'LINK'", "'LIST'",
+ "'LN'", "'LNNVL'", "'LOAD'", "'LOB'",
+ "'LOBNVL'", "'LOBS'", "'LOCAL_INDEXES'",
+ "'LOCAL'", "'LOCALTIME'", "'LOCALTIMESTAMP'",
+ "'LOCATION'", "'LOCATOR'", "'LOCKED'",
+ "'LOCKING'", "'LOCK'", "'LOGFILE'",
+ "'LOGFILES'", "'LOGGING'", "'LOGICAL'",
+ "'LOGICAL_READS_PER_CALL'", "'LOGICAL_READS_PER_SESSION'",
+ "'LOG'", "'LOGMINING'", "'LOGOFF'",
+ "'LOGON'", "'LOG_READ_ONLY_VIOLATIONS'",
+ "'LONG'", "'LOOP'", "'LOWER'", "'LOW'",
+ "'LPAD'", "'LTRIM'", "'MAIN'", "'MAKE_REF'",
+ "'MANAGED'", "'MANAGE'", "'MANAGEMENT'",
+ "'MANAGER'", "'MANUAL'", "'MAP'",
+ "'MAPPING'", "'MASTER'", "'MATCHED'",
+ "'MATCHES'", "'MATCH'", "'MATCH_NUMBER'",
+ "'MATCH_RECOGNIZE'", "'MATERIALIZED'",
+ "'MATERIALIZE'", "'MAXARCHLOGS'",
+ "'MAXDATAFILES'", "'MAXEXTENTS'",
+ "'MAXIMIZE'", "'MAXINSTANCES'", "'MAXLOGFILES'",
+ "'MAXLOGHISTORY'", "'MAXLOGMEMBERS'",
+ "'MAX_SHARED_TEMP_SIZE'", "'MAXSIZE'",
+ "'MAXTRANS'", "'MAXVALUE'", "'MEASURE'",
+ "'MEASURES'", "'MEDIUM'", "'MEMBER'",
+ "'MEMCOMPRESS'", "'MEMORY'", "'MERGE$ACTIONS'",
+ "'MERGE_AJ'", "'MERGE_CONST_ON'",
+ "'MERGE'", "'MERGE_SJ'", "'METADATA'",
+ "'METHOD'", "'MIGRATE'", "'MIGRATION'",
+ "'MINEXTENTS'", "'MINIMIZE'", "'MINIMUM'",
+ "'MINING'", "'MINUS'", "'MINUS_NULL'",
+ "'MINUTE'", "'MINVALUE'", "'MIRRORCOLD'",
+ "'MIRRORHOT'", "'MIRROR'", "'MLSLABEL'",
+ "'MODEL_COMPILE_SUBQUERY'", "'MODEL_DONTVERIFY_UNIQUENESS'",
+ "'MODEL_DYNAMIC_SUBQUERY'", "'MODEL_MIN_ANALYSIS'",
+ "'MODEL'", "'MODEL_NB'", "'MODEL_NO_ANALYSIS'",
+ "'MODEL_PBY'", "'MODEL_PUSH_REF'",
+ "'MODEL_SV'", "'MODE'", "'MODIFICATION'",
+ "'MODIFY_COLUMN_TYPE'", "'MODIFY'",
+ "'MOD'", "'MODULE'", "'MONITORING'",
+ "'MONITOR'", "'MONTH'", "'MONTHS_BETWEEN'",
+ "'MONTHS'", "'MOUNT'", "'MOUNTPATH'",
+ "'MOVEMENT'", "'MOVE'", "'MULTIDIMENSIONAL'",
+ "'MULTISET'", "'MV_MERGE'", "'NAMED'",
+ "'NAME'", "'NAMESPACE'", "'NAN'",
+ "'NANVL'", "'NATIONAL'", "'NATIVE_FULL_OUTER_JOIN'",
+ "'NATIVE'", "'NATURAL'", "'NATURALN'",
+ "'NAV'", "'NCHAR_CS'", "'NCHAR'",
+ "'NCHR'", "'NCLOB'", "'NEEDED'", "'NEG'",
+ "'NESTED'", "'NESTED_TABLE_FAST_INSERT'",
+ "'NESTED_TABLE_GET_REFS'", "'NESTED_TABLE_ID'",
+ "'NESTED_TABLE_SET_REFS'", "'NESTED_TABLE_SET_SETID'",
+ "'NETWORK'", "'NEVER'", "'NEW'", "'NEW_TIME'",
+ "'NEXT_DAY'", "'NEXT'", "'NL_AJ'",
+ "'NLJ_BATCHING'", "'NLJ_INDEX_FILTER'",
+ "'NLJ_INDEX_SCAN'", "'NLJ_PREFETCH'",
+ "'NLS_CALENDAR'", "'NLS_CHARACTERSET'",
+ "'NLS_CHARSET_DECL_LEN'", "'NLS_CHARSET_ID'",
+ "'NLS_CHARSET_NAME'", "'NLS_COMP'",
+ "'NLS_CURRENCY'", "'NLS_DATE_FORMAT'",
+ "'NLS_DATE_LANGUAGE'", "'NLS_INITCAP'",
+ "'NLS_ISO_CURRENCY'", "'NL_SJ'", "'NLS_LANG'",
+ "'NLS_LANGUAGE'", "'NLS_LENGTH_SEMANTICS'",
+ "'NLS_LOWER'", "'NLS_NCHAR_CONV_EXCP'",
+ "'NLS_NUMERIC_CHARACTERS'", "'NLS_SORT'",
+ "'NLSSORT'", "'NLS_SPECIAL_CHARS'",
+ "'NLS_TERRITORY'", "'NLS_UPPER'",
+ "'NO_ACCESS'", "'NO_ADAPTIVE_PLAN'",
+ "'NO_ANSI_REARCH'", "'NOAPPEND'",
+ "'NOARCHIVELOG'", "'NOAUDIT'", "'NO_AUTO_REOPTIMIZE'",
+ "'NO_BASETABLE_MULTIMV_REWRITE'",
+ "'NO_BATCH_TABLE_ACCESS_BY_ROWID'",
+ "'NO_BIND_AWARE'", "'NO_BUFFER'",
+ "'NOCACHE'", "'NO_CARTESIAN'", "'NO_CHECK_ACL_REWRITE'",
+ "'NO_CLUSTER_BY_ROWID'", "'NO_CLUSTERING'",
+ "'NO_COALESCE_SQ'", "'NO_COMMON_DATA'",
+ "'NOCOMPRESS'", "'NO_CONNECT_BY_CB_WHR_ONLY'",
+ "'NO_CONNECT_BY_COMBINE_SW'", "'NO_CONNECT_BY_COST_BASED'",
+ "'NO_CONNECT_BY_ELIM_DUPS'", "'NO_CONNECT_BY_FILTERING'",
+ "'NOCOPY'", "'NO_COST_XML_QUERY_REWRITE'",
+ "'NO_CPU_COSTING'", "'NOCPU_COSTING'",
+ "'NOCYCLE'", "'NO_DATA_SECURITY_REWRITE'",
+ "'NO_DECORRELATE'", "'NODELAY'", "'NO_DOMAIN_INDEX_FILTER'",
+ "'NO_DST_UPGRADE_INSERT_CONV'", "'NO_ELIM_GROUPBY'",
+ "'NO_ELIMINATE_JOIN'", "'NO_ELIMINATE_OBY'",
+ "'NO_ELIMINATE_OUTER_JOIN'", "'NOENTITYESCAPING'",
+ "'NO_EXPAND_GSET_TO_UNION'", "'NO_EXPAND'",
+ "'NO_EXPAND_TABLE'", "'NO_FACT'",
+ "'NO_FACTORIZE_JOIN'", "'NO_FILTERING'",
+ "'NOFORCE'", "'NO_FULL_OUTER_JOIN_TO_OUTER'",
+ "'NO_GATHER_OPTIMIZER_STATISTICS'",
+ "'NO_GBY_PUSHDOWN'", "'NOGUARANTEE'",
+ "'NO_INDEX_FFS'", "'NO_INDEX'", "'NO_INDEX_SS'",
+ "'NO_INMEMORY'", "'NO_INMEMORY_PRUNING'",
+ "'NOKEEP'", "'NO_LOAD'", "'NOLOCAL'",
+ "'NOLOGGING'", "'NOMAPPING'", "'NOMAXVALUE'",
+ "'NO_MERGE'", "'NOMINIMIZE'", "'NOMINVALUE'",
+ "'NO_MODEL_PUSH_REF'", "'NO_MONITORING'",
+ "'NOMONITORING'", "'NO_MONITOR'",
+ "'NO_MULTIMV_REWRITE'", "'NO_NATIVE_FULL_OUTER_JOIN'",
+ "'NONBLOCKING'", "'NONEDITIONABLE'",
+ "'NONE'", "'NO_NLJ_BATCHING'", "'NO_NLJ_PREFETCH'",
+ "'NO'", "'NONSCHEMA'", "'NO_OBJECT_LINK'",
+ "'NOORDER'", "'NO_ORDER_ROLLUPS'",
+ "'NO_OUTER_JOIN_TO_ANTI'", "'NO_OUTER_JOIN_TO_INNER'",
+ "'NOOVERRIDE'", "'NO_PARALLEL_INDEX'",
+ "'NOPARALLEL_INDEX'", "'NO_PARALLEL'",
+ "'NOPARALLEL'", "'NO_PARTIAL_COMMIT'",
+ "'NO_PARTIAL_JOIN'", "'NO_PARTIAL_ROLLUP_PUSHDOWN'",
+ "'NOPARTITION'", "'NO_PLACE_DISTINCT'",
+ "'NO_PLACE_GROUP_BY'", "'NO_PQ_CONCURRENT_UNION'",
+ "'NO_PQ_MAP'", "'NO_PQ_REPLICATE'",
+ "'NO_PQ_SKEW'", "'NO_PRUNE_GSETS'",
+ "'NO_PULL_PRED'", "'NO_PUSH_PRED'",
+ "'NO_PUSH_SUBQ'", "'NO_PX_FAULT_TOLERANCE'",
+ "'NO_PX_JOIN_FILTER'", "'NO_QKN_BUFF'",
+ "'NO_QUERY_TRANSFORMATION'", "'NO_REF_CASCADE'",
+ "'NORELOCATE'", "'NORELY'", "'NOREPAIR'",
+ "'NOREPLAY'", "'NORESETLOGS'", "'NO_RESULT_CACHE'",
+ "'NOREVERSE'", "'NO_REWRITE'", "'NOREWRITE'",
+ "'NORMAL'", "'NO_ROOT_SW_FOR_LOCAL'",
+ "'NOROWDEPENDENCIES'", "'NOSCHEMACHECK'",
+ "'NOSEGMENT'", "'NO_SEMIJOIN'", "'NO_SEMI_TO_INNER'",
+ "'NO_SET_TO_JOIN'", "'NOSORT'", "'NO_SQL_TRANSLATION'",
+ "'NO_SQL_TUNE'", "'NO_STAR_TRANSFORMATION'",
+ "'NO_STATEMENT_QUEUING'", "'NO_STATS_GSETS'",
+ "'NOSTRICT'", "'NO_SUBQUERY_PRUNING'",
+ "'NO_SUBSTRB_PAD'", "'NO_SWAP_JOIN_INPUTS'",
+ "'NOSWITCH'", "'NO_TABLE_LOOKUP_BY_NL'",
+ "'NO_TEMP_TABLE'", "'NOTHING'", "'NOTIFICATION'",
+ "'NOT'", "'NO_TRANSFORM_DISTINCT_AGG'",
+ "'NO_UNNEST'", "'NO_USE_CUBE'", "'NO_USE_HASH_AGGREGATION'",
+ "'NO_USE_HASH_GBY_FOR_PUSHDOWN'",
+ "'NO_USE_HASH'", "'NO_USE_INVISIBLE_INDEXES'",
+ "'NO_USE_MERGE'", "'NO_USE_NL'", "'NO_USE_VECTOR_AGGREGATION'",
+ "'NOVALIDATE'", "'NO_VECTOR_TRANSFORM_DIMS'",
+ "'NO_VECTOR_TRANSFORM_FACT'", "'NO_VECTOR_TRANSFORM'",
+ "'NOWAIT'", "'NO_XDB_FASTPATH_INSERT'",
+ "'NO_XML_DML_REWRITE'", "'NO_XMLINDEX_REWRITE_IN_SELECT'",
+ "'NO_XMLINDEX_REWRITE'", "'NO_XML_QUERY_REWRITE'",
+ "'NO_ZONEMAP'", "'NTH_VALUE'", "'NULLIF'",
+ "'NULL'", "'NULLS'", "'NUMBER'", "'NUMERIC'",
+ "'NUM_INDEX_KEYS'", "'NUMTODSINTERVAL'",
+ "'NUMTOYMINTERVAL'", "'NVARCHAR2'",
+ "'NVL2'", "'OBJECT2XML'", "'OBJECT'",
+ "'OBJ_ID'", "'OBJNO'", "'OBJNO_REUSE'",
+ "'OCCURENCES'", "'OFFLINE'", "'OFF'",
+ "'OFFSET'", "'OF'", "'OIDINDEX'",
+ "'OID'", "'OLAP'", "'OLD'", "'OLD_PUSH_PRED'",
+ "'OLS'", "'OLTP'", "'OMIT'", "'ONE'",
+ "'ONLINE'", "'ONLINELOG'", "'ONLY'",
+ "'ON'", "'OPAQUE'", "'OPAQUE_TRANSFORM'",
+ "'OPAQUE_XCANONICAL'", "'OPCODE'",
+ "'OPEN'", "'OPERATIONS'", "'OPERATOR'",
+ "'OPT_ESTIMATE'", "'OPTIMAL'", "'OPTIMIZE'",
+ "'OPTIMIZER_FEATURES_ENABLE'", "'OPTIMIZER_GOAL'",
+ "'OPTION'", "'OPT_PARAM'", "'ORA_BRANCH'",
+ "'ORA_CHECK_ACL'", "'ORA_CHECK_PRIVILEGE'",
+ "'ORA_CLUSTERING'", "'ORADATA'", "'ORADEBUG'",
+ "'ORA_DST_AFFECTED'", "'ORA_DST_CONVERT'",
+ "'ORA_DST_ERROR'", "'ORA_GET_ACLIDS'",
+ "'ORA_GET_PRIVILEGES'", "'ORA_HASH'",
+ "'ORA_INVOKING_USERID'", "'ORA_INVOKING_USER'",
+ "'ORA_INVOKING_XS_USER_GUID'", "'ORA_INVOKING_XS_USER'",
+ "'ORA_RAWCOMPARE'", "'ORA_RAWCONCAT'",
+ "'ORA_ROWSCN'", "'ORA_ROWSCN_RAW'",
+ "'ORA_ROWVERSION'", "'ORA_TABVERSION'",
+ "'ORA_WRITE_TIME'", "'ORDERED'", "'ORDERED_PREDICATES'",
+ "'ORDER'", "'ORDINALITY'", "'OR_EXPAND'",
+ "'ORGANIZATION'", "'OR'", "'OR_PREDICATES'",
+ "'OSERROR'", "'OTHER'", "'OUTER_JOIN_TO_ANTI'",
+ "'OUTER_JOIN_TO_INNER'", "'OUTER'",
+ "'OUTLINE_LEAF'", "'OUTLINE'", "'OUT_OF_LINE'",
+ "'OUT'", "'OVERFLOW_NOMOVE'", "'OVERFLOW'",
+ "'OVERLAPS'", "'OVER'", "'OVERRIDING'",
+ "'OWNER'", "'OWNERSHIP'", "'OWN'",
+ "'PACKAGE'", "'PACKAGES'", "'PARALLEL_ENABLE'",
+ "'PARALLEL_INDEX'", "'PARALLEL'",
+ "'PARAMETERFILE'", "'PARAMETERS'",
+ "'PARAM'", "'PARENT'", "'PARITY'",
+ "'PARTIAL_JOIN'", "'PARTIALLY'", "'PARTIAL'",
+ "'PARTIAL_ROLLUP_PUSHDOWN'", "'PARTITION_HASH'",
+ "'PARTITION_LIST'", "'PARTITION'",
+ "'PARTITION_RANGE'", "'PARTITIONS'",
+ "'PART$NUM$INST'", "'PASSING'", "'PASSWORD_GRACE_TIME'",
+ "'PASSWORD_LIFE_TIME'", "'PASSWORD_LOCK_TIME'",
+ "'PASSWORD'", "'PASSWORD_REUSE_MAX'",
+ "'PASSWORD_REUSE_TIME'", "'PASSWORD_VERIFY_FUNCTION'",
+ "'PAST'", "'PATCH'", "'PATH'", "'PATH_PREFIX'",
+ "'PATHS'", "'PATTERN'", "'PBL_HS_BEGIN'",
+ "'PBL_HS_END'", "'PCTFREE'", "'PCTINCREASE'",
+ "'PCTTHRESHOLD'", "'PCTUSED'", "'PCTVERSION'",
+ "'PENDING'", null, null, null, "'PERCENT'",
+ "'PERCENT_RANKM'", null, null, null,
+ "'PERFORMANCE'", "'PERIOD'", "'PERMANENT'",
+ "'PERMISSION'", "'PERMUTE'", "'PER'",
+ "'PFILE'", "'PHYSICAL'", "'PIKEY'",
+ "'PIPELINED'", "'PIPE'", "'PIV_GB'",
+ "'PIVOT'", "'PIV_SSF'", "'PLACE_DISTINCT'",
+ "'PLACE_GROUP_BY'", "'PLAN'", "'PLSCOPE_SETTINGS'",
+ "'PLS_INTEGER'", "'PLSQL_CCFLAGS'",
+ "'PLSQL_CODE_TYPE'", "'PLSQL_DEBUG'",
+ "'PLSQL_OPTIMIZE_LEVEL'", "'PLSQL_WARNINGS'",
+ "'PLUGGABLE'", "'POINT'", "'POLICY'",
+ "'POOL_16K'", "'POOL_2K'", "'POOL_32K'",
+ "'POOL_4K'", "'POOL_8K'", "'POSITIVEN'",
+ "'POSITIVE'", "'POST_TRANSACTION'",
+ "'POWERMULTISET_BY_CARDINALITY'",
+ "'POWERMULTISET'", "'POWER'", "'PQ_CONCURRENT_UNION'",
+ "'PQ_DISTRIBUTE'", "'PQ_DISTRIBUTE_WINDOW'",
+ "'PQ_FILTER'", "'PQ_MAP'", "'PQ_NOMAP'",
+ "'PQ_REPLICATE'", "'PQ_SKEW'", "'PRAGMA'",
+ "'PREBUILT'", "'PRECEDES'", "'PRECEDING'",
+ "'PRECISION'", "'PRECOMPUTE_SUBQUERY'",
+ "'PREDICATE_REORDERS'", "'PRELOAD'",
+ "'PREPARE'", "'PRESENTNNV'", "'PRESENT'",
+ "'PRESENTV'", "'PRESERVE_OID'", "'PRESERVE'",
+ "'PRETTY'", "'PREVIOUS'", "'PREV'",
+ "'PRIMARY'", "'PRINTBLOBTOCLOB'",
+ "'PRIORITY'", "'PRIOR'", "'PRIVATE'",
+ "'PRIVATE_SGA'", "'PRIVILEGED'", "'PRIVILEGE'",
+ "'PRIVILEGES'", "'PROCEDURAL'", "'PROCEDURE'",
+ "'PROCESS'", "'PROFILE'", "'PROGRAM'",
+ "'PROJECT'", "'PROPAGATE'", "'PROTECTED'",
+ "'PROTECTION'", "'PROXY'", "'PRUNING'",
+ "'PUBLIC'", "'PULL_PRED'", "'PURGE'",
+ "'PUSH_PRED'", "'PUSH_SUBQ'", "'PX_FAULT_TOLERANCE'",
+ "'PX_GRANULE'", "'PX_JOIN_FILTER'",
+ "'QB_NAME'", "'QUERY_BLOCK'", "'QUERY'",
+ "'QUEUE_CURR'", "'QUEUE'", "'QUEUE_ROWP'",
+ "'QUIESCE'", "'QUORUM'", "'QUOTA'",
+ "'RAISE'", "'RANDOM_LOCAL'", "'RANDOM'",
+ "'RANGE'", "'RANKM'", "'RAPIDLY'",
+ "'RAW'", "'RAWTOHEX'", "'RAWTONHEX'",
+ "'RBA'", "'RBO_OUTLINE'", "'RDBA'",
+ "'READ'", "'READS'", "'REALM'", "'REAL'",
+ "'REBALANCE'", "'REBUILD'", "'RECORD'",
+ "'RECORDS_PER_BLOCK'", "'RECOVERABLE'",
+ "'RECOVER'", "'RECOVERY'", "'RECYCLEBIN'",
+ "'RECYCLE'", "'REDACTION'", "'REDEFINE'",
+ "'REDO'", "'REDUCED'", "'REDUNDANCY'",
+ "'REF_CASCADE_CURSOR'", "'REFERENCED'",
+ "'REFERENCE'", "'REFERENCES'", "'REFERENCING'",
+ "'REF'", "'REFRESH'", "'REFTOHEX'",
+ "'REGEXP_COUNT'", "'REGEXP_INSTR'",
+ "'REGEXP_LIKE'", "'REGEXP_REPLACE'",
+ "'REGEXP_SUBSTR'", "'REGISTER'", "'REGR_AVGX'",
+ "'REGR_AVGY'", "'REGR_COUNT'", "'REGR_INTERCEPT'",
+ "'REGR_R2'", "'REGR_SLOPE'", "'REGR_SXX'",
+ "'REGR_SXY'", "'REGR_SYY'", "'REGULAR'",
+ "'REJECT'", "'REKEY'", "'RELATIONAL'",
+ "'RELIES_ON'", "'RELOCATE'", "'RELY'",
+ "'REMAINDER'", "'REMOTE_MAPPED'",
+ "'REMOVE'", "'RENAME'", "'REPAIR'",
+ "'REPEAT'", "'REPLACE'", "'REPLICATION'",
+ "'REQUIRED'", "'RESETLOGS'", "'RESET'",
+ "'RESIZE'", "'RESOLVE'", "'RESOLVER'",
+ "'RESOURCE'", "'RESPECT'", "'RESTART'",
+ "'RESTORE_AS_INTERVALS'", "'RESTORE'",
+ "'RESTRICT_ALL_REF_CONS'", "'RESTRICTED'",
+ "'RESTRICT_REFERENCES'", "'RESTRICT'",
+ "'RESULT_CACHE'", "'RESULT'", "'RESUMABLE'",
+ "'RESUME'", "'RETENTION'", "'RETRY_ON_ROW_CHANGE'",
+ "'RETURNING'", "'RETURN'", "'REUSE'",
+ "'REVERSE'", "'REVOKE'", "'REWRITE_OR_ERROR'",
+ "'REWRITE'", "'RIGHT'", "'ROLE'",
+ "'ROLESET'", "'ROLES'", "'ROLLBACK'",
+ "'ROLLING'", "'ROLLUP'", "'ROWDEPENDENCIES'",
+ "'ROWID_MAPPING_TABLE'", "'ROWID'",
+ "'ROWIDTOCHAR'", "'ROWIDTONCHAR'",
+ "'ROW_LENGTH'", "'ROWNUM'", "'ROW'",
+ "'ROWS'", "'RPAD'", "'RTRIM'", "'RULE'",
+ "'RULES'", "'RUNNING'", "'SALT'",
+ "'SAMPLE'", "'SAVE_AS_INTERVALS'",
+ "'SAVEPOINT'", "'SAVE'", "'SB4'",
+ "'SCALE_ROWS'", "'SCALE'", "'SCAN_INSTANCES'",
+ "'SCAN'", "'SCHEDULER'", "'SCHEMACHECK'",
+ "'SCHEMA'", "'SCN_ASCENDING'", "'SCN'",
+ "'SCOPE'", "'SCRUB'", "'SD_ALL'",
+ "'SD_INHIBIT'", "'SDO_GEOM_MBR'",
+ "'SD_SHOW'", "'SEARCH'", "'SECOND'",
+ "'SECRET'", "'SECUREFILE_DBA'", "'SECUREFILE'",
+ "'SECURITY'", "'SEED'", "'SEG_BLOCK'",
+ "'SEG_FILE'", "'SEGMENT'", "'SELECTIVITY'",
+ "'SELECT'", "'SELF'", "'SEMIJOIN_DRIVER'",
+ "'SEMIJOIN'", "'SEMI_TO_INNER'", "'SEQUENCED'",
+ "'SEQUENCE'", "'SEQUENTIAL'", "'SEQ'",
+ "'SERIALIZABLE'", "'SERIALLY_REUSABLE'",
+ "'SERIAL'", "'SERVERERROR'", "'SERVICE_NAME_CONVERT'",
+ "'SERVICES'", "'SESSION_CACHED_CURSORS'",
+ "'SESSION'", "'SESSIONS_PER_USER'",
+ "'SESSIONTIMEZONE'", "'SESSIONTZNAME'",
+ "'SET'", "'SETS'", "'SETTINGS'", "'SET_TO_JOIN'",
+ "'SEVERE'", "'SHARED_POOL'", "'SHARED'",
+ "'SHARE'", "'SHARING'", "'SHELFLIFE'",
+ "'SHOW'", "'SHRINK'", "'SHUTDOWN'",
+ "'SIBLINGS'", "'SID'", "'SIGNAL_COMPONENT'",
+ "'SIGNAL_FUNCTION'", "'SIGN'", "'SIGNTYPE'",
+ "'SIMPLE_INTEGER'", "'SIMPLE'", "'SINGLE'",
+ "'SINGLETASK'", "'SINH'", "'SIN'",
+ "'SIZE'", "'SKIP_EXT_OPTIMIZER'",
+ "'SKIP'", "'SKIP_UNQ_UNUSABLE_IDX'",
+ "'SKIP_UNUSABLE_INDEXES'", "'SMALLFILE'",
+ "'SMALLINT'", "'SNAPSHOT'", "'SOME'",
+ "'SORT'", "'SOUNDEX'", "'SOURCE_FILE_DIRECTORY'",
+ "'SOURCE_FILE_NAME_CONVERT'", "'SOURCE'",
+ "'SPACE'", "'SPECIFICATION'", "'SPFILE'",
+ "'SPLIT'", "'SPREADSHEET'", "'SQLDATA'",
+ "'SQLERROR'", "'SQLLDR'", "'SQL'",
+ "'SQL_TRACE'", "'SQL_TRANSLATION_PROFILE'",
+ "'SQRT'", "'STALE'", "'STANDALONE'",
+ "'STANDARD_HASH'", "'STANDBY_MAX_DATA_DELAY'",
+ "'STANDBYS'", "'STANDBY'", "'STAR'",
+ "'STAR_TRANSFORMATION'", "'START'",
+ "'STARTUP'", "'STATEMENT_ID'", "'STATEMENT_QUEUING'",
+ "'STATEMENTS'", "'STATEMENT'", "'STATE'",
+ "'STATIC'", "'STATISTICS'", "'STATS_BINOMIAL_TEST'",
+ "'STATS_CROSSTAB'", "'STATS_F_TEST'",
+ "'STATS_KS_TEST'", "'STATS_MODE'",
+ "'STATS_MW_TEST'", "'STATS_ONE_WAY_ANOVA'",
+ "'STATS_T_TEST_INDEP'", "'STATS_T_TEST_INDEPU'",
+ "'STATS_T_TEST_ONE'", "'STATS_T_TEST_PAIRED'",
+ "'STATS_WSR_TEST'", "'STDDEV_POP'",
+ "'STDDEV_SAMP'", "'STOP'", "'STORAGE'",
+ "'STORE'", "'STREAMS'", "'STREAM'",
+ "'STRICT'", "'STRING'", "'STRIPE_COLUMNS'",
+ "'STRIPE_WIDTH'", "'STRIP'", "'STRUCTURE'",
+ "'SUBMULTISET'", "'SUBPARTITION_REL'",
+ "'SUBPARTITIONS'", "'SUBPARTITION'",
+ "'SUBQUERIES'", "'SUBQUERY_PRUNING'",
+ "'SUBSCRIBE'", "'SUBSET'", "'SUBSTITUTABLE'",
+ "'SUBSTR2'", "'SUBSTR4'", "'SUBSTRB'",
+ "'SUBSTRC'", "'SUBTYPE'", "'SUCCESSFUL'",
+ "'SUCCESS'", "'SUMMARY'", "'SUPPLEMENTAL'",
+ "'SUSPEND'", "'SWAP_JOIN_INPUTS'",
+ "'SWITCHOVER'", "'SWITCH'", "'SYNCHRONOUS'",
+ "'SYNC'", "'SYNONYM'", "'SYSASM'",
+ "'SYS_AUDIT'", "'SYSAUX'", "'SYSBACKUP'",
+ "'SYS_CHECKACL'", "'SYS_CHECK_PRIVILEGE'",
+ "'SYS_CONNECT_BY_PATH'", "'SYS_CONTEXT'",
+ "'SYSDATE'", "'SYSDBA'", "'SYS_DBURIGEN'",
+ "'SYSDG'", "'SYS_DL_CURSOR'", "'SYS_DM_RXFORM_CHR'",
+ "'SYS_DM_RXFORM_NUM'", "'SYS_DOM_COMPARE'",
+ "'SYS_DST_PRIM2SEC'", "'SYS_DST_SEC2PRIM'",
+ "'SYS_ET_BFILE_TO_RAW'", "'SYS_ET_BLOB_TO_IMAGE'",
+ "'SYS_ET_IMAGE_TO_BLOB'", "'SYS_ET_RAW_TO_BFILE'",
+ "'SYS_EXTPDTXT'", "'SYS_EXTRACT_UTC'",
+ "'SYS_FBT_INSDEL'", "'SYS_FILTER_ACLS'",
+ "'SYS_FNMATCHES'", "'SYS_FNREPLACE'",
+ "'SYS_GET_ACLIDS'", "'SYS_GET_COL_ACLIDS'",
+ "'SYS_GET_PRIVILEGES'", "'SYS_GETTOKENID'",
+ "'SYS_GETXTIVAL'", "'SYS_GUID'", "'SYSGUID'",
+ "'SYSKM'", "'SYS_MAKE_XMLNODEID'",
+ "'SYS_MAKEXML'", "'SYS_MKXMLATTR'",
+ "'SYS_MKXTI'", "'SYSOBJ'", "'SYS_OP_ADT2BIN'",
+ "'SYS_OP_ADTCONS'", "'SYS_OP_ALSCRVAL'",
+ "'SYS_OP_ATG'", "'SYS_OP_BIN2ADT'",
+ "'SYS_OP_BITVEC'", "'SYS_OP_BL2R'",
+ "'SYS_OP_BLOOM_FILTER_LIST'", "'SYS_OP_BLOOM_FILTER'",
+ "'SYS_OP_C2C'", "'SYS_OP_CAST'", "'SYS_OP_CEG'",
+ "'SYS_OP_CL2C'", "'SYS_OP_COMBINED_HASH'",
+ "'SYS_OP_COMP'", "'SYS_OP_CONVERT'",
+ "'SYS_OP_COUNTCHG'", "'SYS_OP_CSCONV'",
+ "'SYS_OP_CSCONVTEST'", "'SYS_OP_CSR'",
+ "'SYS_OP_CSX_PATCH'", "'SYS_OP_CYCLED_SEQ'",
+ "'SYS_OP_DECOMP'", "'SYS_OP_DESCEND'",
+ "'SYS_OP_DISTINCT'", "'SYS_OP_DRA'",
+ "'SYS_OP_DUMP'", "'SYS_OP_DV_CHECK'",
+ "'SYS_OP_ENFORCE_NOT_NULL$'", "'SYSOPER'",
+ "'SYS_OP_EXTRACT'", "'SYS_OP_GROUPING'",
+ "'SYS_OP_GUID'", "'SYS_OP_HASH'",
+ "'SYS_OP_IIX'", "'SYS_OP_ITR'", "'SYS_OP_KEY_VECTOR_CREATE'",
+ "'SYS_OP_KEY_VECTOR_FILTER_LIST'",
+ "'SYS_OP_KEY_VECTOR_FILTER'", "'SYS_OP_KEY_VECTOR_SUCCEEDED'",
+ "'SYS_OP_KEY_VECTOR_USE'", "'SYS_OP_LBID'",
+ "'SYS_OP_LOBLOC2BLOB'", "'SYS_OP_LOBLOC2CLOB'",
+ "'SYS_OP_LOBLOC2ID'", "'SYS_OP_LOBLOC2NCLOB'",
+ "'SYS_OP_LOBLOC2TYP'", "'SYS_OP_LSVI'",
+ "'SYS_OP_LVL'", "'SYS_OP_MAKEOID'",
+ "'SYS_OP_MAP_NONNULL'", "'SYS_OP_MSR'",
+ "'SYS_OP_NICOMBINE'", "'SYS_OP_NIEXTRACT'",
+ "'SYS_OP_NII'", "'SYS_OP_NIX'", "'SYS_OP_NOEXPAND'",
+ "'SYS_OP_NTCIMG$'", "'SYS_OP_NUMTORAW'",
+ "'SYS_OP_OIDVALUE'", "'SYS_OP_OPNSIZE'",
+ "'SYS_OP_PAR_1'", "'SYS_OP_PARGID_1'",
+ "'SYS_OP_PARGID'", "'SYS_OP_PAR'",
+ "'SYS_OP_PART_ID'", "'SYS_OP_PIVOT'",
+ "'SYS_OP_R2O'", "'SYS_OP_RAWTONUM'",
+ "'SYS_OP_RDTM'", "'SYS_OP_REF'", "'SYS_OP_RMTD'",
+ "'SYS_OP_ROWIDTOOBJ'", "'SYS_OP_RPB'",
+ "'SYS_OPTLOBPRBSC'", "'SYS_OP_TOSETID'",
+ "'SYS_OP_TPR'", "'SYS_OP_TRTB'", "'SYS_OPTXICMP'",
+ "'SYS_OPTXQCASTASNQ'", "'SYS_OP_UNDESCEND'",
+ "'SYS_OP_VECAND'", "'SYS_OP_VECBIT'",
+ "'SYS_OP_VECOR'", "'SYS_OP_VECXOR'",
+ "'SYS_OP_VERSION'", "'SYS_OP_VREF'",
+ "'SYS_OP_VVD'", "'SYS_OP_XMLCONS_FOR_CSX'",
+ "'SYS_OP_XPTHATG'", "'SYS_OP_XPTHIDX'",
+ "'SYS_OP_XPTHOP'", "'SYS_OP_XTXT2SQLT'",
+ "'SYS_OP_ZONE_ID'", "'SYS_ORDERKEY_DEPTH'",
+ "'SYS_ORDERKEY_MAXCHILD'", "'SYS_ORDERKEY_PARENT'",
+ "'SYS_PARALLEL_TXN'", "'SYS_PATHID_IS_ATTR'",
+ "'SYS_PATHID_IS_NMSPC'", "'SYS_PATHID_LASTNAME'",
+ "'SYS_PATHID_LASTNMSPC'", "'SYS_PATH_REVERSE'",
+ "'SYS_PXQEXTRACT'", "'SYS_RAW_TO_XSID'",
+ "'SYS_RID_ORDER'", "'SYS_ROW_DELTA'",
+ "'SYS_SC_2_XMLT'", "'SYS_SYNRCIREDO'",
+ "'SYSTEM_DEFINED'", "'SYSTEM'", "'SYSTIMESTAMP'",
+ "'SYS_TYPEID'", "'SYS_UMAKEXML'",
+ "'SYS_XMLANALYZE'", "'SYS_XMLCONTAINS'",
+ "'SYS_XMLCONV'", "'SYS_XMLEXNSURI'",
+ "'SYS_XMLGEN'", "'SYS_XMLI_LOC_ISNODE'",
+ "'SYS_XMLI_LOC_ISTEXT'", "'SYS_XMLINSTR'",
+ "'SYS_XMLLOCATOR_GETSVAL'", "'SYS_XMLNODEID_GETCID'",
+ "'SYS_XMLNODEID_GETLOCATOR'", "'SYS_XMLNODEID_GETOKEY'",
+ "'SYS_XMLNODEID_GETPATHID'", "'SYS_XMLNODEID_GETPTRID'",
+ "'SYS_XMLNODEID_GETRID'", "'SYS_XMLNODEID_GETSVAL'",
+ "'SYS_XMLNODEID_GETTID'", "'SYS_XMLNODEID'",
+ "'SYS_XMLT_2_SC'", "'SYS_XMLTRANSLATE'",
+ "'SYS_XMLTYPE2SQL'", "'SYS_XQ_ASQLCNV'",
+ "'SYS_XQ_ATOMCNVCHK'", "'SYS_XQBASEURI'",
+ "'SYS_XQCASTABLEERRH'", "'SYS_XQCODEP2STR'",
+ "'SYS_XQCODEPEQ'", "'SYS_XQCON2SEQ'",
+ "'SYS_XQCONCAT'", "'SYS_XQDELETE'",
+ "'SYS_XQDFLTCOLATION'", "'SYS_XQDOC'",
+ "'SYS_XQDOCURI'", "'SYS_XQDURDIV'",
+ "'SYS_XQED4URI'", "'SYS_XQENDSWITH'",
+ "'SYS_XQERRH'", "'SYS_XQERR'", "'SYS_XQESHTMLURI'",
+ "'SYS_XQEXLOBVAL'", "'SYS_XQEXSTWRP'",
+ "'SYS_XQEXTRACT'", "'SYS_XQEXTRREF'",
+ "'SYS_XQEXVAL'", "'SYS_XQFB2STR'",
+ "'SYS_XQFNBOOL'", "'SYS_XQFNCMP'",
+ "'SYS_XQFNDATIM'", "'SYS_XQFNLNAME'",
+ "'SYS_XQFNNM'", "'SYS_XQFNNSURI'",
+ "'SYS_XQFNPREDTRUTH'", "'SYS_XQFNQNM'",
+ "'SYS_XQFNROOT'", "'SYS_XQFORMATNUM'",
+ "'SYS_XQFTCONTAIN'", "'SYS_XQFUNCR'",
+ "'SYS_XQGETCONTENT'", "'SYS_XQINDXOF'",
+ "'SYS_XQINSERT'", "'SYS_XQINSPFX'",
+ "'SYS_XQIRI2URI'", "'SYS_XQLANG'",
+ "'SYS_XQLLNMFRMQNM'", "'SYS_XQMKNODEREF'",
+ "'SYS_XQNILLED'", "'SYS_XQNODENAME'",
+ "'SYS_XQNORMSPACE'", "'SYS_XQNORMUCODE'",
+ "'SYS_XQ_NRNG'", "'SYS_XQNSP4PFX'",
+ "'SYS_XQNSPFRMQNM'", "'SYS_XQPFXFRMQNM'",
+ "'SYS_XQ_PKSQL2XML'", "'SYS_XQPOLYABS'",
+ "'SYS_XQPOLYADD'", "'SYS_XQPOLYCEL'",
+ "'SYS_XQPOLYCSTBL'", "'SYS_XQPOLYCST'",
+ "'SYS_XQPOLYDIV'", "'SYS_XQPOLYFLR'",
+ "'SYS_XQPOLYMOD'", "'SYS_XQPOLYMUL'",
+ "'SYS_XQPOLYRND'", "'SYS_XQPOLYSQRT'",
+ "'SYS_XQPOLYSUB'", "'SYS_XQPOLYUMUS'",
+ "'SYS_XQPOLYUPLS'", "'SYS_XQPOLYVEQ'",
+ "'SYS_XQPOLYVGE'", "'SYS_XQPOLYVGT'",
+ "'SYS_XQPOLYVLE'", "'SYS_XQPOLYVLT'",
+ "'SYS_XQPOLYVNE'", "'SYS_XQREF2VAL'",
+ "'SYS_XQRENAME'", "'SYS_XQREPLACE'",
+ "'SYS_XQRESVURI'", "'SYS_XQRNDHALF2EVN'",
+ "'SYS_XQRSLVQNM'", "'SYS_XQRYENVPGET'",
+ "'SYS_XQRYVARGET'", "'SYS_XQRYWRP'",
+ "'SYS_XQSEQ2CON4XC'", "'SYS_XQSEQ2CON'",
+ "'SYS_XQSEQDEEPEQ'", "'SYS_XQSEQINSB'",
+ "'SYS_XQSEQRM'", "'SYS_XQSEQRVS'",
+ "'SYS_XQSEQSUB'", "'SYS_XQSEQTYPMATCH'",
+ "'SYS_XQSTARTSWITH'", "'SYS_XQSTATBURI'",
+ "'SYS_XQSTR2CODEP'", "'SYS_XQSTRJOIN'",
+ "'SYS_XQSUBSTRAFT'", "'SYS_XQSUBSTRBEF'",
+ "'SYS_XQTOKENIZE'", "'SYS_XQTREATAS'",
+ "'SYS_XQ_UPKXML2SQL'", "'SYS_XQXFORM'",
+ "'SYS_XSID_TO_RAW'", "'SYS_ZMAP_FILTER'",
+ "'SYS_ZMAP_REFRESH'", "'TABLE_LOOKUP_BY_NL'",
+ "'TABLESPACE_NO'", "'TABLESPACE'",
+ "'TABLES'", "'TABLE_STATS'", "'TABLE'",
+ "'TABNO'", "'TAG'", "'TANH'", "'TAN'",
+ "'TBL$OR$IDX$PART$NUM'", "'TEMPFILE'",
+ "'TEMPLATE'", "'TEMPORARY'", "'TEMP_TABLE'",
+ "'TEST'", "'TEXT'", "'THAN'", "'THEN'",
+ "'THE'", "'THREAD'", "'THROUGH'",
+ "'TIER'", "'TIES'", "'TIMEOUT'", "'TIMESTAMP_LTZ_UNCONSTRAINED'",
+ "'TIMESTAMP'", "'TIMESTAMP_TZ_UNCONSTRAINED'",
+ "'TIMESTAMP_UNCONSTRAINED'", "'TIMES'",
+ "'TIME'", "'TIMEZONE'", "'TIMEZONE_ABBR'",
+ "'TIMEZONE_HOUR'", "'TIMEZONE_MINUTE'",
+ "'TIMEZONE_OFFSET'", "'TIMEZONE_REGION'",
+ "'TIME_ZONE'", "'TIV_GB'", "'TIV_SSF'",
+ "'TO_ACLID'", "'TO_BINARY_DOUBLE'",
+ "'TO_BINARY_FLOAT'", "'TO_BLOB'",
+ "'TO_CLOB'", "'TO_DSINTERVAL'", "'TO_LOB'",
+ "'TO_MULTI_BYTE'", "'TO_NCHAR'", "'TO_NCLOB'",
+ "'TO_NUMBER'", "'TOPLEVEL'", "'TO_SINGLE_BYTE'",
+ "'TO_TIMESTAMP'", "'TO_TIMESTAMP_TZ'",
+ "'TO_TIME'", "'TO_TIME_TZ'", "'TO'",
+ "'TO_YMINTERVAL'", "'TRACE'", "'TRACING'",
+ "'TRACKING'", "'TRAILING'", "'TRANSACTION'",
+ "'TRANSFORM_DISTINCT_AGG'", "'TRANSITIONAL'",
+ "'TRANSITION'", "'TRANSLATE'", "'TRANSLATION'",
+ "'TREAT'", "'TRIGGERS'", "'TRIGGER'",
+ "'TRUE'", "'TRUNCATE'", "'TRUNC'",
+ "'TRUSTED'", "'TRUST'", "'TUNING'",
+ "'TX'", "'TYPES'", "'TYPE'", "'TZ_OFFSET'",
+ "'UB2'", "'UBA'", "'UCS2'", "'UID'",
+ "'UNARCHIVED'", "'UNBOUNDED'", "'UNBOUND'",
+ "'UNCONDITIONAL'", "'UNDER'", "'UNDO'",
+ "'UNDROP'", "'UNIFORM'", "'UNION'",
+ "'UNIQUE'", "'UNISTR'", "'UNLIMITED'",
+ "'UNLOAD'", "'UNLOCK'", "'UNMATCHED'",
+ "'UNNEST_INNERJ_DISTINCT_VIEW'", "'UNNEST_NOSEMIJ_NODISTINCTVIEW'",
+ "'UNNEST_SEMIJ_VIEW'", "'UNNEST'",
+ "'UNPACKED'", "'UNPIVOT'", "'UNPLUG'",
+ "'UNPROTECTED'", "'UNQUIESCE'", "'UNRECOVERABLE'",
+ "'UNRESTRICTED'", "'UNSUBSCRIBE'",
+ "'UNTIL'", "'UNUSABLE'", "'UNUSED'",
+ "'UPDATABLE'", "'UPDATED'", "'UPDATE'",
+ "'UPDATEXML'", "'UPD_INDEXES'", "'UPD_JOININDEX'",
+ "'UPGRADE'", "'UPPER'", "'UPSERT'",
+ "'UROWID'", "'USABLE'", "'USAGE'",
+ "'USE_ANTI'", "'USE_CONCAT'", "'USE_CUBE'",
+ "'USE_HASH_AGGREGATION'", "'USE_HASH_GBY_FOR_PUSHDOWN'",
+ "'USE_HASH'", "'USE_HIDDEN_PARTITIONS'",
+ "'USE_INVISIBLE_INDEXES'", "'USE_MERGE_CARTESIAN'",
+ "'USE_MERGE'", "'USE_NL'", "'USE_NL_WITH_INDEX'",
+ "'USE_PRIVATE_OUTLINES'", "'USER_DATA'",
+ "'USER_DEFINED'", "'USERENV'", "'USERGROUP'",
+ "'USER_RECYCLEBIN'", "'USERS'", "'USER_TABLESPACES'",
+ "'USER'", "'USE_SEMI'", "'USE_STORED_OUTLINES'",
+ "'USE_TTT_FOR_GSETS'", "'USE'", "'USE_VECTOR_AGGREGATION'",
+ "'USE_WEAK_NAME_RESL'", "'USING_NO_EXPAND'",
+ "'USING'", "'UTF16BE'", "'UTF16LE'",
+ "'UTF32'", "'UTF8'", "'V1'", "'V2'",
+ "'VALIDATE'", "'VALIDATION'", "'VALID_TIME_END'",
+ "'VALUES'", "'VALUE'", "'VARCHAR2'",
+ "'VARCHAR'", "'VARIABLE'", "'VAR_POP'",
+ "'VARRAYS'", "'VARRAY'", "'VAR_SAMP'",
+ "'VARYING'", "'VECTOR_READ_TRACE'",
+ "'VECTOR_READ'", "'VECTOR_TRANSFORM_DIMS'",
+ "'VECTOR_TRANSFORM_FACT'", "'VECTOR_TRANSFORM'",
+ "'VERIFIER'", "'VERIFY'", "'VERSIONING'",
+ "'VERSIONS_ENDSCN'", "'VERSIONS_ENDTIME'",
+ "'VERSIONS_OPERATION'", "'VERSIONS_STARTSCN'",
+ "'VERSIONS_STARTTIME'", "'VERSIONS'",
+ "'VERSIONS_XID'", "'VERSION'", "'VIEW'",
+ "'VIOLATION'", "'VIRTUAL'", "'VISIBILITY'",
+ "'VISIBLE'", "'VOLUME'", "'VSIZE'",
+ "'WAIT'", "'WALLET'", "'WARNING'",
+ "'WEEKS'", "'WEEK'", "'WELLFORMED'",
+ "'WHENEVER'", "'WHEN'", "'WHERE'",
+ "'WHILE'", "'WHITESPACE'", "'WIDTH_BUCKET'",
+ "'WITHIN'", "'WITHOUT'", "'WITH_PLSQL'",
+ "'WITH'", "'WORK'", "'WRAPPED'", "'WRAPPER'",
+ "'WRITE'", "'XDB_FASTPATH_INSERT'",
+ "'XDB'", "'X_DYN_PRUNE'", "'XID'",
+ "'XML2OBJECT'", "'XMLAGG'", "'XMLATTRIBUTES'",
+ "'XMLCAST'", "'XMLCDATA'", "'XMLCOLATTVAL'",
+ "'XMLCOMMENT'", "'XMLCONCAT'", "'XMLDIFF'",
+ "'XML_DML_RWT_STMT'", "'XMLELEMENT'",
+ "'XMLEXISTS2'", "'XMLEXISTS'", "'XMLFOREST'",
+ "'XMLINDEX'", "'XMLINDEX_REWRITE_IN_SELECT'",
+ "'XMLINDEX_REWRITE'", "'XMLINDEX_SEL_IDX_TBL'",
+ "'XMLISNODE'", "'XMLISVALID'", "'XMLNAMESPACES'",
+ "'XMLPARSE'", "'XMLPATCH'", "'XMLPI'",
+ "'XMLQUERYVAL'", "'XMLQUERY'", "'XMLROOT'",
+ "'XMLSCHEMA'", "'XMLSERIALIZE'", "'XMLTABLE'",
+ "'XMLTRANSFORMBLOB'", "'XMLTRANSFORM'",
+ "'XMLTYPE'", "'XML'", "'XPATHTABLE'",
+ "'XS_SYS_CONTEXT'", "'XS'", "'XTRANSPORT'",
+ "'YEARS'", "'YEAR'", "'YES'", "'YMINTERVAL_UNCONSTRAINED'",
+ "'ZONEMAP'", "'ZONE'", "'PREDICTION'",
+ "'PREDICTION_BOUNDS'", "'PREDICTION_COST'",
+ "'PREDICTION_DETAILS'", "'PREDICTION_PROBABILITY'",
+ "'PREDICTION_SET'", "'CUME_DIST'",
+ "'DENSE_RANK'", "'LISTAGG'", "'PERCENT_RANK'",
+ "'PERCENTILE_CONT'", "'PERCENTILE_DISC'",
+ "'RANK'", "'AVG'", "'CORR'", "'COVAR_'",
+ "'DECODE'", "'LAG'", "'LEAD'", "'MAX'",
+ "'MEDIAN'", "'MIN'", "'NTILE'", "'NVL'",
+ "'RATIO_TO_REPORT'", "'REGR_'", "'ROUND'",
+ "'ROW_NUMBER'", "'SUBSTR'", "'TO_CHAR'",
+ "'TRIM'", "'SUM'", "'STDDEV'", "'VAR_'",
+ "'VARIANCE'", "'LEAST'", "'GREATEST'",
+ "'TO_DATE'", null, null, null, "'..'",
+ "'.'", null, null, null, null, "'%'",
+ "'&'", "'('", "')'", "'**'", "'*'",
+ "'+'", "'-'", "','", "'/'", "'@'",
+ "':='", null, null, "'^'", "'~'",
+ "'!'", "'>'", "'<'", "':'", "';'",
+ "'|'", "'='", "'['", "']'", "'_'" ];
+
+PlSqlLexer.prototype.symbolicNames = [ null, "ABORT", "ABS", "ACCESS", "ACCESSED",
+ "ACCOUNT", "ACL", "ACOS", "ACTION",
+ "ACTIONS", "ACTIVATE", "ACTIVE",
+ "ACTIVE_COMPONENT", "ACTIVE_DATA",
+ "ACTIVE_FUNCTION", "ACTIVE_TAG",
+ "ACTIVITY", "ADAPTIVE_PLAN", "ADD",
+ "ADD_COLUMN", "ADD_GROUP", "ADD_MONTHS",
+ "ADJ_DATE", "ADMIN", "ADMINISTER",
+ "ADMINISTRATOR", "ADVANCED", "ADVISE",
+ "ADVISOR", "AFD_DISKSTRING", "AFTER",
+ "AGENT", "AGGREGATE", "A_LETTER",
+ "ALIAS", "ALL", "ALLOCATE", "ALLOW",
+ "ALL_ROWS", "ALTER", "ALWAYS", "ANALYZE",
+ "ANCILLARY", "AND", "AND_EQUAL",
+ "ANOMALY", "ANSI_REARCH", "ANTIJOIN",
+ "ANY", "ANYSCHEMA", "APPEND", "APPENDCHILDXML",
+ "APPEND_VALUES", "APPLICATION", "APPLY",
+ "APPROX_COUNT_DISTINCT", "ARCHIVAL",
+ "ARCHIVE", "ARCHIVED", "ARCHIVELOG",
+ "ARRAY", "AS", "ASC", "ASCII", "ASCIISTR",
+ "ASIN", "ASIS", "ASSEMBLY", "ASSIGN",
+ "ASSOCIATE", "ASYNC", "ASYNCHRONOUS",
+ "ATAN2", "ATAN", "AT", "ATTRIBUTE",
+ "ATTRIBUTES", "AUDIT", "AUTHENTICATED",
+ "AUTHENTICATION", "AUTHID", "AUTHORIZATION",
+ "AUTOALLOCATE", "AUTO", "AUTOBACKUP",
+ "AUTOEXTEND", "AUTO_LOGIN", "AUTOMATIC",
+ "AUTONOMOUS_TRANSACTION", "AUTO_REOPTIMIZE",
+ "AVAILABILITY", "AVRO", "BACKGROUND",
+ "BACKUP", "BACKUPSET", "BASIC", "BASICFILE",
+ "BATCH", "BATCHSIZE", "BATCH_TABLE_ACCESS_BY_ROWID",
+ "BECOME", "BEFORE", "BEGIN", "BEGINNING",
+ "BEGIN_OUTLINE_DATA", "BEHALF", "BEQUEATH",
+ "BETWEEN", "BFILE", "BFILENAME",
+ "BIGFILE", "BINARY", "BINARY_DOUBLE",
+ "BINARY_DOUBLE_INFINITY", "BINARY_DOUBLE_NAN",
+ "BINARY_FLOAT", "BINARY_FLOAT_INFINITY",
+ "BINARY_FLOAT_NAN", "BINARY_INTEGER",
+ "BIND_AWARE", "BINDING", "BIN_TO_NUM",
+ "BITAND", "BITMAP_AND", "BITMAP",
+ "BITMAPS", "BITMAP_TREE", "BITS",
+ "BLOB", "BLOCK", "BLOCK_RANGE", "BLOCKS",
+ "BLOCKSIZE", "BODY", "BOOLEAN", "BOTH",
+ "BOUND", "BRANCH", "BREADTH", "BROADCAST",
+ "BSON", "BUFFER", "BUFFER_CACHE",
+ "BUFFER_POOL", "BUILD", "BULK", "BY",
+ "BYPASS_RECURSIVE_CHECK", "BYPASS_UJVC",
+ "BYTE", "CACHE", "CACHE_CB", "CACHE_INSTANCES",
+ "CACHE_TEMP_TABLE", "CACHING", "CALCULATED",
+ "CALLBACK", "CALL", "CANCEL", "CANONICAL",
+ "CAPACITY", "CARDINALITY", "CASCADE",
+ "CASE", "CAST", "CATEGORY", "CDBDEFAULT",
+ "CEIL", "CELL_FLASH_CACHE", "CERTIFICATE",
+ "CFILE", "CHAINED", "CHANGE", "CHANGETRACKING",
+ "CHANGE_DUPKEY_ERROR_INDEX", "CHARACTER",
+ "CHAR", "CHAR_CS", "CHARTOROWID",
+ "CHECK_ACL_REWRITE", "CHECK", "CHECKPOINT",
+ "CHILD", "CHOOSE", "CHR", "CHUNK",
+ "CLASS", "CLASSIFIER", "CLEANUP",
+ "CLEAR", "C_LETTER", "CLIENT", "CLOB",
+ "CLONE", "CLOSE_CACHED_OPEN_CURSORS",
+ "CLOSE", "CLUSTER_BY_ROWID", "CLUSTER",
+ "CLUSTER_DETAILS", "CLUSTER_DISTANCE",
+ "CLUSTER_ID", "CLUSTERING", "CLUSTERING_FACTOR",
+ "CLUSTER_PROBABILITY", "CLUSTER_SET",
+ "COALESCE", "COALESCE_SQ", "COARSE",
+ "CO_AUTH_IND", "COLD", "COLLECT",
+ "COLUMNAR", "COLUMN_AUTH_INDICATOR",
+ "COLUMN", "COLUMNS", "COLUMN_STATS",
+ "COLUMN_VALUE", "COMMENT", "COMMIT",
+ "COMMITTED", "COMMON_DATA", "COMPACT",
+ "COMPATIBILITY", "COMPILE", "COMPLETE",
+ "COMPLIANCE", "COMPONENT", "COMPONENTS",
+ "COMPOSE", "COMPOSITE", "COMPOSITE_LIMIT",
+ "COMPOUND", "COMPRESS", "COMPUTE",
+ "CONCAT", "CON_DBID_TO_ID", "CONDITIONAL",
+ "CONDITION", "CONFIRM", "CONFORMING",
+ "CON_GUID_TO_ID", "CON_ID", "CON_NAME_TO_ID",
+ "CONNECT_BY_CB_WHR_ONLY", "CONNECT_BY_COMBINE_SW",
+ "CONNECT_BY_COST_BASED", "CONNECT_BY_ELIM_DUPS",
+ "CONNECT_BY_FILTERING", "CONNECT_BY_ISCYCLE",
+ "CONNECT_BY_ISLEAF", "CONNECT_BY_ROOT",
+ "CONNECT", "CONNECT_TIME", "CONSIDER",
+ "CONSISTENT", "CONSTANT", "CONST",
+ "CONSTRAINT", "CONSTRAINTS", "CONSTRUCTOR",
+ "CONTAINER", "CONTAINER_DATA", "CONTAINERS",
+ "CONTENT", "CONTENTS", "CONTEXT",
+ "CONTINUE", "CONTROLFILE", "CON_UID_TO_ID",
+ "CONVERT", "COOKIE", "COPY", "CORR_K",
+ "CORR_S", "CORRUPTION", "CORRUPT_XID_ALL",
+ "CORRUPT_XID", "COS", "COSH", "COST",
+ "COST_XML_QUERY_REWRITE", "COUNT",
+ "COVAR_POP", "COVAR_SAMP", "CPU_COSTING",
+ "CPU_PER_CALL", "CPU_PER_SESSION",
+ "CRASH", "CREATE", "CREATE_FILE_DEST",
+ "CREATE_STORED_OUTLINES", "CREATION",
+ "CREDENTIAL", "CRITICAL", "CROSS",
+ "CROSSEDITION", "CSCONVERT", "CUBE_AJ",
+ "CUBE", "CUBE_GB", "CUBE_SJ", "CUME_DISTM",
+ "CURRENT", "CURRENT_DATE", "CURRENT_SCHEMA",
+ "CURRENT_TIME", "CURRENT_TIMESTAMP",
+ "CURRENT_USER", "CURRENTV", "CURSOR",
+ "CURSOR_SHARING_EXACT", "CURSOR_SPECIFIC_SEGMENT",
+ "CUSTOMDATUM", "CV", "CYCLE", "DANGLING",
+ "DATABASE", "DATA", "DATAFILE", "DATAFILES",
+ "DATAGUARDCONFIG", "DATAMOVEMENT",
+ "DATAOBJNO", "DATAOBJ_TO_MAT_PARTITION",
+ "DATAOBJ_TO_PARTITION", "DATAPUMP",
+ "DATA_SECURITY_REWRITE_LIMIT", "DATE",
+ "DATE_MODE", "DAY", "DAYS", "DBA",
+ "DBA_RECYCLEBIN", "DBMS_STATS", "DB_ROLE_CHANGE",
+ "DBTIMEZONE", "DB_UNIQUE_NAME", "DB_VERSION",
+ "DDL", "DEALLOCATE", "DEBUG", "DEBUGGER",
+ "DEC", "DECIMAL", "DECLARE", "DECOMPOSE",
+ "DECORRELATE", "DECR", "DECREMENT",
+ "DECRYPT", "DEDUPLICATE", "DEFAULT",
+ "DEFAULTS", "DEFERRABLE", "DEFERRED",
+ "DEFINED", "DEFINE", "DEFINER", "DEGREE",
+ "DELAY", "DELEGATE", "DELETE_ALL",
+ "DELETE", "DELETEXML", "DEMAND",
+ "DENSE_RANKM", "DEPENDENT", "DEPTH",
+ "DEQUEUE", "DEREF", "DEREF_NO_REWRITE",
+ "DESC", "DESTROY", "DETACHED", "DETERMINES",
+ "DETERMINISTIC", "DICTIONARY", "DIMENSION",
+ "DIMENSIONS", "DIRECT_LOAD", "DIRECTORY",
+ "DIRECT_PATH", "DISABLE_ALL", "DISABLE",
+ "DISABLE_PARALLEL_DML", "DISABLE_PRESET",
+ "DISABLE_RPKE", "DISALLOW", "DISASSOCIATE",
+ "DISCARD", "DISCONNECT", "DISK",
+ "DISKGROUP", "DISKGROUP_PLUS", "DISKS",
+ "DISMOUNT", "DISTINCT", "DISTINGUISHED",
+ "DISTRIBUTED", "DISTRIBUTE", "DML",
+ "DML_UPDATE", "DOCFIDELITY", "DOCUMENT",
+ "DOMAIN_INDEX_FILTER", "DOMAIN_INDEX_NO_SORT",
+ "DOMAIN_INDEX_SORT", "DOUBLE", "DOWNGRADE",
+ "DRIVING_SITE", "DROP_COLUMN", "DROP",
+ "DROP_GROUP", "DSINTERVAL_UNCONSTRAINED",
+ "DST_UPGRADE_INSERT_CONV", "DUMP",
+ "DUMPSET", "DUPLICATE", "DV", "DYNAMIC",
+ "DYNAMIC_SAMPLING", "DYNAMIC_SAMPLING_EST_CDN",
+ "EACH", "EDITIONABLE", "EDITION",
+ "EDITIONING", "EDITIONS", "ELEMENT",
+ "ELIM_GROUPBY", "ELIMINATE_JOIN",
+ "ELIMINATE_OBY", "ELIMINATE_OUTER_JOIN",
+ "ELSE", "ELSIF", "EM", "EMPTY_BLOB",
+ "EMPTY_CLOB", "EMPTY", "ENABLE_ALL",
+ "ENABLE", "ENABLE_PARALLEL_DML",
+ "ENABLE_PRESET", "ENCODING", "ENCRYPT",
+ "ENCRYPTION", "END", "END_OUTLINE_DATA",
+ "ENFORCED", "ENFORCE", "ENQUEUE",
+ "ENTERPRISE", "ENTITYESCAPING", "ENTRY",
+ "EQUIPART", "ERR", "ERROR_ARGUMENT",
+ "ERROR", "ERROR_ON_OVERLAP_TIME",
+ "ERRORS", "ESCAPE", "ESTIMATE", "EVAL",
+ "EVALNAME", "EVALUATE", "EVALUATION",
+ "EVENTS", "EVERY", "EXCEPT", "EXCEPTION",
+ "EXCEPTION_INIT", "EXCEPTIONS", "EXCHANGE",
+ "EXCLUDE", "EXCLUDING", "EXCLUSIVE",
+ "EXECUTE", "EXEMPT", "EXISTING",
+ "EXISTS", "EXISTSNODE", "EXIT", "EXPAND_GSET_TO_UNION",
+ "EXPAND_TABLE", "EXP", "EXPIRE",
+ "EXPLAIN", "EXPLOSION", "EXPORT",
+ "EXPR_CORR_CHECK", "EXPRESS", "EXTENDS",
+ "EXTENT", "EXTENTS", "EXTERNAL",
+ "EXTERNALLY", "EXTRACTCLOBXML", "EXTRACT",
+ "EXTRACTVALUE", "EXTRA", "FACILITY",
+ "FACT", "FACTOR", "FACTORIZE_JOIN",
+ "FAILED", "FAILED_LOGIN_ATTEMPTS",
+ "FAILGROUP", "FAILOVER", "FAILURE",
+ "FALSE", "FAMILY", "FAR", "FAST",
+ "FASTSTART", "FBTSCAN", "FEATURE_DETAILS",
+ "FEATURE_ID", "FEATURE_SET", "FEATURE_VALUE",
+ "FETCH", "FILE", "FILE_NAME_CONVERT",
+ "FILESYSTEM_LIKE_LOGGING", "FILTER",
+ "FINAL", "FINE", "FINISH", "FIRST",
+ "FIRSTM", "FIRST_ROWS", "FIRST_VALUE",
+ "FIXED_VIEW_DATA", "FLAGGER", "FLASHBACK",
+ "FLASH_CACHE", "FLOAT", "FLOB", "FLOOR",
+ "FLUSH", "FOLDER", "FOLLOWING", "FOLLOWS",
+ "FORALL", "FORCE", "FORCE_XML_QUERY_REWRITE",
+ "FOREIGN", "FOREVER", "FOR", "FORMAT",
+ "FORWARD", "FRAGMENT_NUMBER", "FREELIST",
+ "FREELISTS", "FREEPOOLS", "FRESH",
+ "FROM", "FROM_TZ", "FULL", "FULL_OUTER_JOIN_TO_OUTER",
+ "FUNCTION", "FUNCTIONS", "GATHER_OPTIMIZER_STATISTICS",
+ "GATHER_PLAN_STATISTICS", "GBY_CONC_ROLLUP",
+ "GBY_PUSHDOWN", "GENERATED", "GET",
+ "GLOBAL", "GLOBALLY", "GLOBAL_NAME",
+ "GLOBAL_TOPIC_ENABLED", "GOTO", "GRANT",
+ "GROUP_BY", "GROUP", "GROUP_ID",
+ "GROUPING", "GROUPING_ID", "GROUPS",
+ "GUARANTEED", "GUARANTEE", "GUARD",
+ "HASH_AJ", "HASH", "HASHKEYS", "HASH_SJ",
+ "HAVING", "HEADER", "HEAP", "HELP",
+ "HEXTORAW", "HEXTOREF", "HIDDEN_KEYWORD",
+ "HIDE", "HIERARCHY", "HIGH", "HINTSET_BEGIN",
+ "HINTSET_END", "HOT", "HOUR", "HWM_BROKERED",
+ "HYBRID", "IDENTIFIED", "IDENTIFIER",
+ "IDENTITY", "IDGENERATORS", "ID",
+ "IDLE_TIME", "IF", "IGNORE", "IGNORE_OPTIM_EMBEDDED_HINTS",
+ "IGNORE_ROW_ON_DUPKEY_INDEX", "IGNORE_WHERE_CLAUSE",
+ "ILM", "IMMEDIATE", "IMPACT", "IMPORT",
+ "INACTIVE", "INCLUDE", "INCLUDE_VERSION",
+ "INCLUDING", "INCREMENTAL", "INCREMENT",
+ "INCR", "INDENT", "INDEX_ASC", "INDEX_COMBINE",
+ "INDEX_DESC", "INDEXED", "INDEXES",
+ "INDEX_FFS", "INDEX_FILTER", "INDEX",
+ "INDEXING", "INDEX_JOIN", "INDEX_ROWS",
+ "INDEX_RRS", "INDEX_RS_ASC", "INDEX_RS_DESC",
+ "INDEX_RS", "INDEX_SCAN", "INDEX_SKIP_SCAN",
+ "INDEX_SS_ASC", "INDEX_SS_DESC",
+ "INDEX_SS", "INDEX_STATS", "INDEXTYPE",
+ "INDEXTYPES", "INDICATOR", "INDICES",
+ "INFINITE", "INFORMATIONAL", "INHERIT",
+ "IN", "INITCAP", "INITIAL", "INITIALIZED",
+ "INITIALLY", "INITRANS", "INLINE",
+ "INLINE_XMLTYPE_NT", "INMEMORY",
+ "IN_MEMORY_METADATA", "INMEMORY_PRUNING",
+ "INNER", "INOUT", "INPLACE", "INSERTCHILDXMLAFTER",
+ "INSERTCHILDXMLBEFORE", "INSERTCHILDXML",
+ "INSERT", "INSERTXMLAFTER", "INSERTXMLBEFORE",
+ "INSTANCE", "INSTANCES", "INSTANTIABLE",
+ "INSTANTLY", "INSTEAD", "INSTR2",
+ "INSTR4", "INSTRB", "INSTRC", "INSTR",
+ "INTEGER", "INTERLEAVED", "INTERMEDIATE",
+ "INTERNAL_CONVERT", "INTERNAL_USE",
+ "INTERPRETED", "INTERSECT", "INTERVAL",
+ "INT", "INTO", "INVALIDATE", "INVISIBLE",
+ "IN_XQUERY", "IS", "ISOLATION", "ISOLATION_LEVEL",
+ "ITERATE", "ITERATION_NUMBER", "JAVA",
+ "JOB", "JOIN", "JSON_ARRAYAGG", "JSON_ARRAY",
+ "JSON_EQUAL", "JSON_EXISTS2", "JSON_EXISTS",
+ "JSONGET", "JSON", "JSON_OBJECTAGG",
+ "JSON_OBJECT", "JSONPARSE", "JSON_QUERY",
+ "JSON_SERIALIZE", "JSON_TABLE", "JSON_TEXTCONTAINS2",
+ "JSON_TEXTCONTAINS", "JSON_VALUE",
+ "KEEP_DUPLICATES", "KEEP", "KERBEROS",
+ "KEY", "KEY_LENGTH", "KEYSIZE", "KEYS",
+ "KEYSTORE", "KILL", "LABEL", "LANGUAGE",
+ "LAST_DAY", "LAST", "LAST_VALUE",
+ "LATERAL", "LAX", "LAYER", "LDAP_REGISTRATION_ENABLED",
+ "LDAP_REGISTRATION", "LDAP_REG_SYNC_INTERVAL",
+ "LEADING", "LEFT", "LENGTH2", "LENGTH4",
+ "LENGTHB", "LENGTHC", "LENGTH", "LESS",
+ "LEVEL", "LEVELS", "LIBRARY", "LIFECYCLE",
+ "LIFE", "LIFETIME", "LIKE2", "LIKE4",
+ "LIKEC", "LIKE_EXPAND", "LIKE", "LIMIT",
+ "LINEAR", "LINK", "LIST", "LN", "LNNVL",
+ "LOAD", "LOB", "LOBNVL", "LOBS",
+ "LOCAL_INDEXES", "LOCAL", "LOCALTIME",
+ "LOCALTIMESTAMP", "LOCATION", "LOCATOR",
+ "LOCKED", "LOCKING", "LOCK", "LOGFILE",
+ "LOGFILES", "LOGGING", "LOGICAL",
+ "LOGICAL_READS_PER_CALL", "LOGICAL_READS_PER_SESSION",
+ "LOG", "LOGMINING", "LOGOFF", "LOGON",
+ "LOG_READ_ONLY_VIOLATIONS", "LONG",
+ "LOOP", "LOWER", "LOW", "LPAD", "LTRIM",
+ "MAIN", "MAKE_REF", "MANAGED", "MANAGE",
+ "MANAGEMENT", "MANAGER", "MANUAL",
+ "MAP", "MAPPING", "MASTER", "MATCHED",
+ "MATCHES", "MATCH", "MATCH_NUMBER",
+ "MATCH_RECOGNIZE", "MATERIALIZED",
+ "MATERIALIZE", "MAXARCHLOGS", "MAXDATAFILES",
+ "MAXEXTENTS", "MAXIMIZE", "MAXINSTANCES",
+ "MAXLOGFILES", "MAXLOGHISTORY", "MAXLOGMEMBERS",
+ "MAX_SHARED_TEMP_SIZE", "MAXSIZE",
+ "MAXTRANS", "MAXVALUE", "MEASURE",
+ "MEASURES", "MEDIUM", "MEMBER", "MEMCOMPRESS",
+ "MEMORY", "MERGEACTIONS", "MERGE_AJ",
+ "MERGE_CONST_ON", "MERGE", "MERGE_SJ",
+ "METADATA", "METHOD", "MIGRATE",
+ "MIGRATION", "MINEXTENTS", "MINIMIZE",
+ "MINIMUM", "MINING", "MINUS", "MINUS_NULL",
+ "MINUTE", "MINVALUE", "MIRRORCOLD",
+ "MIRRORHOT", "MIRROR", "MLSLABEL",
+ "MODEL_COMPILE_SUBQUERY", "MODEL_DONTVERIFY_UNIQUENESS",
+ "MODEL_DYNAMIC_SUBQUERY", "MODEL_MIN_ANALYSIS",
+ "MODEL", "MODEL_NB", "MODEL_NO_ANALYSIS",
+ "MODEL_PBY", "MODEL_PUSH_REF", "MODEL_SV",
+ "MODE", "MODIFICATION", "MODIFY_COLUMN_TYPE",
+ "MODIFY", "MOD", "MODULE", "MONITORING",
+ "MONITOR", "MONTH", "MONTHS_BETWEEN",
+ "MONTHS", "MOUNT", "MOUNTPATH", "MOVEMENT",
+ "MOVE", "MULTIDIMENSIONAL", "MULTISET",
+ "MV_MERGE", "NAMED", "NAME", "NAMESPACE",
+ "NAN", "NANVL", "NATIONAL", "NATIVE_FULL_OUTER_JOIN",
+ "NATIVE", "NATURAL", "NATURALN",
+ "NAV", "NCHAR_CS", "NCHAR", "NCHR",
+ "NCLOB", "NEEDED", "NEG", "NESTED",
+ "NESTED_TABLE_FAST_INSERT", "NESTED_TABLE_GET_REFS",
+ "NESTED_TABLE_ID", "NESTED_TABLE_SET_REFS",
+ "NESTED_TABLE_SET_SETID", "NETWORK",
+ "NEVER", "NEW", "NEW_TIME", "NEXT_DAY",
+ "NEXT", "NL_AJ", "NLJ_BATCHING",
+ "NLJ_INDEX_FILTER", "NLJ_INDEX_SCAN",
+ "NLJ_PREFETCH", "NLS_CALENDAR", "NLS_CHARACTERSET",
+ "NLS_CHARSET_DECL_LEN", "NLS_CHARSET_ID",
+ "NLS_CHARSET_NAME", "NLS_COMP", "NLS_CURRENCY",
+ "NLS_DATE_FORMAT", "NLS_DATE_LANGUAGE",
+ "NLS_INITCAP", "NLS_ISO_CURRENCY",
+ "NL_SJ", "NLS_LANG", "NLS_LANGUAGE",
+ "NLS_LENGTH_SEMANTICS", "NLS_LOWER",
+ "NLS_NCHAR_CONV_EXCP", "NLS_NUMERIC_CHARACTERS",
+ "NLS_SORT", "NLSSORT", "NLS_SPECIAL_CHARS",
+ "NLS_TERRITORY", "NLS_UPPER", "NO_ACCESS",
+ "NO_ADAPTIVE_PLAN", "NO_ANSI_REARCH",
+ "NOAPPEND", "NOARCHIVELOG", "NOAUDIT",
+ "NO_AUTO_REOPTIMIZE", "NO_BASETABLE_MULTIMV_REWRITE",
+ "NO_BATCH_TABLE_ACCESS_BY_ROWID",
+ "NO_BIND_AWARE", "NO_BUFFER", "NOCACHE",
+ "NO_CARTESIAN", "NO_CHECK_ACL_REWRITE",
+ "NO_CLUSTER_BY_ROWID", "NO_CLUSTERING",
+ "NO_COALESCE_SQ", "NO_COMMON_DATA",
+ "NOCOMPRESS", "NO_CONNECT_BY_CB_WHR_ONLY",
+ "NO_CONNECT_BY_COMBINE_SW", "NO_CONNECT_BY_COST_BASED",
+ "NO_CONNECT_BY_ELIM_DUPS", "NO_CONNECT_BY_FILTERING",
+ "NOCOPY", "NO_COST_XML_QUERY_REWRITE",
+ "NO_CPU_COSTING", "NOCPU_COSTING",
+ "NOCYCLE", "NO_DATA_SECURITY_REWRITE",
+ "NO_DECORRELATE", "NODELAY", "NO_DOMAIN_INDEX_FILTER",
+ "NO_DST_UPGRADE_INSERT_CONV", "NO_ELIM_GROUPBY",
+ "NO_ELIMINATE_JOIN", "NO_ELIMINATE_OBY",
+ "NO_ELIMINATE_OUTER_JOIN", "NOENTITYESCAPING",
+ "NO_EXPAND_GSET_TO_UNION", "NO_EXPAND",
+ "NO_EXPAND_TABLE", "NO_FACT", "NO_FACTORIZE_JOIN",
+ "NO_FILTERING", "NOFORCE", "NO_FULL_OUTER_JOIN_TO_OUTER",
+ "NO_GATHER_OPTIMIZER_STATISTICS",
+ "NO_GBY_PUSHDOWN", "NOGUARANTEE",
+ "NO_INDEX_FFS", "NO_INDEX", "NO_INDEX_SS",
+ "NO_INMEMORY", "NO_INMEMORY_PRUNING",
+ "NOKEEP", "NO_LOAD", "NOLOCAL", "NOLOGGING",
+ "NOMAPPING", "NOMAXVALUE", "NO_MERGE",
+ "NOMINIMIZE", "NOMINVALUE", "NO_MODEL_PUSH_REF",
+ "NO_MONITORING", "NOMONITORING",
+ "NO_MONITOR", "NO_MULTIMV_REWRITE",
+ "NO_NATIVE_FULL_OUTER_JOIN", "NONBLOCKING",
+ "NONEDITIONABLE", "NONE", "NO_NLJ_BATCHING",
+ "NO_NLJ_PREFETCH", "NO", "NONSCHEMA",
+ "NO_OBJECT_LINK", "NOORDER", "NO_ORDER_ROLLUPS",
+ "NO_OUTER_JOIN_TO_ANTI", "NO_OUTER_JOIN_TO_INNER",
+ "NOOVERRIDE", "NO_PARALLEL_INDEX",
+ "NOPARALLEL_INDEX", "NO_PARALLEL",
+ "NOPARALLEL", "NO_PARTIAL_COMMIT",
+ "NO_PARTIAL_JOIN", "NO_PARTIAL_ROLLUP_PUSHDOWN",
+ "NOPARTITION", "NO_PLACE_DISTINCT",
+ "NO_PLACE_GROUP_BY", "NO_PQ_CONCURRENT_UNION",
+ "NO_PQ_MAP", "NO_PQ_REPLICATE", "NO_PQ_SKEW",
+ "NO_PRUNE_GSETS", "NO_PULL_PRED",
+ "NO_PUSH_PRED", "NO_PUSH_SUBQ", "NO_PX_FAULT_TOLERANCE",
+ "NO_PX_JOIN_FILTER", "NO_QKN_BUFF",
+ "NO_QUERY_TRANSFORMATION", "NO_REF_CASCADE",
+ "NORELOCATE", "NORELY", "NOREPAIR",
+ "NOREPLAY", "NORESETLOGS", "NO_RESULT_CACHE",
+ "NOREVERSE", "NO_REWRITE", "NOREWRITE",
+ "NORMAL", "NO_ROOT_SW_FOR_LOCAL",
+ "NOROWDEPENDENCIES", "NOSCHEMACHECK",
+ "NOSEGMENT", "NO_SEMIJOIN", "NO_SEMI_TO_INNER",
+ "NO_SET_TO_JOIN", "NOSORT", "NO_SQL_TRANSLATION",
+ "NO_SQL_TUNE", "NO_STAR_TRANSFORMATION",
+ "NO_STATEMENT_QUEUING", "NO_STATS_GSETS",
+ "NOSTRICT", "NO_SUBQUERY_PRUNING",
+ "NO_SUBSTRB_PAD", "NO_SWAP_JOIN_INPUTS",
+ "NOSWITCH", "NO_TABLE_LOOKUP_BY_NL",
+ "NO_TEMP_TABLE", "NOTHING", "NOTIFICATION",
+ "NOT", "NO_TRANSFORM_DISTINCT_AGG",
+ "NO_UNNEST", "NO_USE_CUBE", "NO_USE_HASH_AGGREGATION",
+ "NO_USE_HASH_GBY_FOR_PUSHDOWN", "NO_USE_HASH",
+ "NO_USE_INVISIBLE_INDEXES", "NO_USE_MERGE",
+ "NO_USE_NL", "NO_USE_VECTOR_AGGREGATION",
+ "NOVALIDATE", "NO_VECTOR_TRANSFORM_DIMS",
+ "NO_VECTOR_TRANSFORM_FACT", "NO_VECTOR_TRANSFORM",
+ "NOWAIT", "NO_XDB_FASTPATH_INSERT",
+ "NO_XML_DML_REWRITE", "NO_XMLINDEX_REWRITE_IN_SELECT",
+ "NO_XMLINDEX_REWRITE", "NO_XML_QUERY_REWRITE",
+ "NO_ZONEMAP", "NTH_VALUE", "NULLIF",
+ "NULL_", "NULLS", "NUMBER", "NUMERIC",
+ "NUM_INDEX_KEYS", "NUMTODSINTERVAL",
+ "NUMTOYMINTERVAL", "NVARCHAR2", "NVL2",
+ "OBJECT2XML", "OBJECT", "OBJ_ID",
+ "OBJNO", "OBJNO_REUSE", "OCCURENCES",
+ "OFFLINE", "OFF", "OFFSET", "OF",
+ "OIDINDEX", "OID", "OLAP", "OLD",
+ "OLD_PUSH_PRED", "OLS", "OLTP", "OMIT",
+ "ONE", "ONLINE", "ONLINELOG", "ONLY",
+ "ON", "OPAQUE", "OPAQUE_TRANSFORM",
+ "OPAQUE_XCANONICAL", "OPCODE", "OPEN",
+ "OPERATIONS", "OPERATOR", "OPT_ESTIMATE",
+ "OPTIMAL", "OPTIMIZE", "OPTIMIZER_FEATURES_ENABLE",
+ "OPTIMIZER_GOAL", "OPTION", "OPT_PARAM",
+ "ORA_BRANCH", "ORA_CHECK_ACL", "ORA_CHECK_PRIVILEGE",
+ "ORA_CLUSTERING", "ORADATA", "ORADEBUG",
+ "ORA_DST_AFFECTED", "ORA_DST_CONVERT",
+ "ORA_DST_ERROR", "ORA_GET_ACLIDS",
+ "ORA_GET_PRIVILEGES", "ORA_HASH",
+ "ORA_INVOKING_USERID", "ORA_INVOKING_USER",
+ "ORA_INVOKING_XS_USER_GUID", "ORA_INVOKING_XS_USER",
+ "ORA_RAWCOMPARE", "ORA_RAWCONCAT",
+ "ORA_ROWSCN", "ORA_ROWSCN_RAW", "ORA_ROWVERSION",
+ "ORA_TABVERSION", "ORA_WRITE_TIME",
+ "ORDERED", "ORDERED_PREDICATES",
+ "ORDER", "ORDINALITY", "OR_EXPAND",
+ "ORGANIZATION", "OR", "OR_PREDICATES",
+ "OSERROR", "OTHER", "OUTER_JOIN_TO_ANTI",
+ "OUTER_JOIN_TO_INNER", "OUTER", "OUTLINE_LEAF",
+ "OUTLINE", "OUT_OF_LINE", "OUT",
+ "OVERFLOW_NOMOVE", "OVERFLOW", "OVERLAPS",
+ "OVER", "OVERRIDING", "OWNER", "OWNERSHIP",
+ "OWN", "PACKAGE", "PACKAGES", "PARALLEL_ENABLE",
+ "PARALLEL_INDEX", "PARALLEL", "PARAMETERFILE",
+ "PARAMETERS", "PARAM", "PARENT",
+ "PARITY", "PARTIAL_JOIN", "PARTIALLY",
+ "PARTIAL", "PARTIAL_ROLLUP_PUSHDOWN",
+ "PARTITION_HASH", "PARTITION_LIST",
+ "PARTITION", "PARTITION_RANGE", "PARTITIONS",
+ "PARTNUMINST", "PASSING", "PASSWORD_GRACE_TIME",
+ "PASSWORD_LIFE_TIME", "PASSWORD_LOCK_TIME",
+ "PASSWORD", "PASSWORD_REUSE_MAX",
+ "PASSWORD_REUSE_TIME", "PASSWORD_VERIFY_FUNCTION",
+ "PAST", "PATCH", "PATH", "PATH_PREFIX",
+ "PATHS", "PATTERN", "PBL_HS_BEGIN",
+ "PBL_HS_END", "PCTFREE", "PCTINCREASE",
+ "PCTTHRESHOLD", "PCTUSED", "PCTVERSION",
+ "PENDING", "PERCENT_FOUND", "PERCENT_ISOPEN",
+ "PERCENT_NOTFOUND", "PERCENT_KEYWORD",
+ "PERCENT_RANKM", "PERCENT_ROWCOUNT",
+ "PERCENT_ROWTYPE", "PERCENT_TYPE",
+ "PERFORMANCE", "PERIOD_KEYWORD",
+ "PERMANENT", "PERMISSION", "PERMUTE",
+ "PER", "PFILE", "PHYSICAL", "PIKEY",
+ "PIPELINED", "PIPE", "PIV_GB", "PIVOT",
+ "PIV_SSF", "PLACE_DISTINCT", "PLACE_GROUP_BY",
+ "PLAN", "PLSCOPE_SETTINGS", "PLS_INTEGER",
+ "PLSQL_CCFLAGS", "PLSQL_CODE_TYPE",
+ "PLSQL_DEBUG", "PLSQL_OPTIMIZE_LEVEL",
+ "PLSQL_WARNINGS", "PLUGGABLE", "POINT",
+ "POLICY", "POOL_16K", "POOL_2K",
+ "POOL_32K", "POOL_4K", "POOL_8K",
+ "POSITIVEN", "POSITIVE", "POST_TRANSACTION",
+ "POWERMULTISET_BY_CARDINALITY", "POWERMULTISET",
+ "POWER", "PQ_CONCURRENT_UNION", "PQ_DISTRIBUTE",
+ "PQ_DISTRIBUTE_WINDOW", "PQ_FILTER",
+ "PQ_MAP", "PQ_NOMAP", "PQ_REPLICATE",
+ "PQ_SKEW", "PRAGMA", "PREBUILT",
+ "PRECEDES", "PRECEDING", "PRECISION",
+ "PRECOMPUTE_SUBQUERY", "PREDICATE_REORDERS",
+ "PRELOAD", "PREPARE", "PRESENTNNV",
+ "PRESENT", "PRESENTV", "PRESERVE_OID",
+ "PRESERVE", "PRETTY", "PREVIOUS",
+ "PREV", "PRIMARY", "PRINTBLOBTOCLOB",
+ "PRIORITY", "PRIOR", "PRIVATE", "PRIVATE_SGA",
+ "PRIVILEGED", "PRIVILEGE", "PRIVILEGES",
+ "PROCEDURAL", "PROCEDURE", "PROCESS",
+ "PROFILE", "PROGRAM", "PROJECT",
+ "PROPAGATE", "PROTECTED", "PROTECTION",
+ "PROXY", "PRUNING", "PUBLIC", "PULL_PRED",
+ "PURGE", "PUSH_PRED", "PUSH_SUBQ",
+ "PX_FAULT_TOLERANCE", "PX_GRANULE",
+ "PX_JOIN_FILTER", "QB_NAME", "QUERY_BLOCK",
+ "QUERY", "QUEUE_CURR", "QUEUE", "QUEUE_ROWP",
+ "QUIESCE", "QUORUM", "QUOTA", "RAISE",
+ "RANDOM_LOCAL", "RANDOM", "RANGE",
+ "RANKM", "RAPIDLY", "RAW", "RAWTOHEX",
+ "RAWTONHEX", "RBA", "RBO_OUTLINE",
+ "RDBA", "READ", "READS", "REALM",
+ "REAL", "REBALANCE", "REBUILD", "RECORD",
+ "RECORDS_PER_BLOCK", "RECOVERABLE",
+ "RECOVER", "RECOVERY", "RECYCLEBIN",
+ "RECYCLE", "REDACTION", "REDEFINE",
+ "REDO", "REDUCED", "REDUNDANCY",
+ "REF_CASCADE_CURSOR", "REFERENCED",
+ "REFERENCE", "REFERENCES", "REFERENCING",
+ "REF", "REFRESH", "REFTOHEX", "REGEXP_COUNT",
+ "REGEXP_INSTR", "REGEXP_LIKE", "REGEXP_REPLACE",
+ "REGEXP_SUBSTR", "REGISTER", "REGR_AVGX",
+ "REGR_AVGY", "REGR_COUNT", "REGR_INTERCEPT",
+ "REGR_R2", "REGR_SLOPE", "REGR_SXX",
+ "REGR_SXY", "REGR_SYY", "REGULAR",
+ "REJECT", "REKEY", "RELATIONAL",
+ "RELIES_ON", "RELOCATE", "RELY",
+ "REMAINDER", "REMOTE_MAPPED", "REMOVE",
+ "RENAME", "REPAIR", "REPEAT", "REPLACE",
+ "REPLICATION", "REQUIRED", "RESETLOGS",
+ "RESET", "RESIZE", "RESOLVE", "RESOLVER",
+ "RESOURCE", "RESPECT", "RESTART",
+ "RESTORE_AS_INTERVALS", "RESTORE",
+ "RESTRICT_ALL_REF_CONS", "RESTRICTED",
+ "RESTRICT_REFERENCES", "RESTRICT",
+ "RESULT_CACHE", "RESULT", "RESUMABLE",
+ "RESUME", "RETENTION", "RETRY_ON_ROW_CHANGE",
+ "RETURNING", "RETURN", "REUSE", "REVERSE",
+ "REVOKE", "REWRITE_OR_ERROR", "REWRITE",
+ "RIGHT", "ROLE", "ROLESET", "ROLES",
+ "ROLLBACK", "ROLLING", "ROLLUP",
+ "ROWDEPENDENCIES", "ROWID_MAPPING_TABLE",
+ "ROWID", "ROWIDTOCHAR", "ROWIDTONCHAR",
+ "ROW_LENGTH", "ROWNUM", "ROW", "ROWS",
+ "RPAD", "RTRIM", "RULE", "RULES",
+ "RUNNING", "SALT", "SAMPLE", "SAVE_AS_INTERVALS",
+ "SAVEPOINT", "SAVE", "SB4", "SCALE_ROWS",
+ "SCALE", "SCAN_INSTANCES", "SCAN",
+ "SCHEDULER", "SCHEMACHECK", "SCHEMA",
+ "SCN_ASCENDING", "SCN", "SCOPE",
+ "SCRUB", "SD_ALL", "SD_INHIBIT",
+ "SDO_GEOM_MBR", "SD_SHOW", "SEARCH",
+ "SECOND", "SECRET", "SECUREFILE_DBA",
+ "SECUREFILE", "SECURITY", "SEED",
+ "SEG_BLOCK", "SEG_FILE", "SEGMENT",
+ "SELECTIVITY", "SELECT", "SELF",
+ "SEMIJOIN_DRIVER", "SEMIJOIN", "SEMI_TO_INNER",
+ "SEQUENCED", "SEQUENCE", "SEQUENTIAL",
+ "SEQ", "SERIALIZABLE", "SERIALLY_REUSABLE",
+ "SERIAL", "SERVERERROR", "SERVICE_NAME_CONVERT",
+ "SERVICES", "SESSION_CACHED_CURSORS",
+ "SESSION", "SESSIONS_PER_USER", "SESSIONTIMEZONE",
+ "SESSIONTZNAME", "SET", "SETS", "SETTINGS",
+ "SET_TO_JOIN", "SEVERE", "SHARED_POOL",
+ "SHARED", "SHARE", "SHARING", "SHELFLIFE",
+ "SHOW", "SHRINK", "SHUTDOWN", "SIBLINGS",
+ "SID", "SIGNAL_COMPONENT", "SIGNAL_FUNCTION",
+ "SIGN", "SIGNTYPE", "SIMPLE_INTEGER",
+ "SIMPLE", "SINGLE", "SINGLETASK",
+ "SINH", "SIN", "SIZE", "SKIP_EXT_OPTIMIZER",
+ "SKIP_", "SKIP_UNQ_UNUSABLE_IDX",
+ "SKIP_UNUSABLE_INDEXES", "SMALLFILE",
+ "SMALLINT", "SNAPSHOT", "SOME", "SORT",
+ "SOUNDEX", "SOURCE_FILE_DIRECTORY",
+ "SOURCE_FILE_NAME_CONVERT", "SOURCE",
+ "SPACE_KEYWORD", "SPECIFICATION",
+ "SPFILE", "SPLIT", "SPREADSHEET",
+ "SQLDATA", "SQLERROR", "SQLLDR",
+ "SQL", "SQL_TRACE", "SQL_TRANSLATION_PROFILE",
+ "SQRT", "STALE", "STANDALONE", "STANDARD_HASH",
+ "STANDBY_MAX_DATA_DELAY", "STANDBYS",
+ "STANDBY", "STAR", "STAR_TRANSFORMATION",
+ "START", "STARTUP", "STATEMENT_ID",
+ "STATEMENT_QUEUING", "STATEMENTS",
+ "STATEMENT", "STATE", "STATIC", "STATISTICS",
+ "STATS_BINOMIAL_TEST", "STATS_CROSSTAB",
+ "STATS_F_TEST", "STATS_KS_TEST",
+ "STATS_MODE", "STATS_MW_TEST", "STATS_ONE_WAY_ANOVA",
+ "STATS_T_TEST_INDEP", "STATS_T_TEST_INDEPU",
+ "STATS_T_TEST_ONE", "STATS_T_TEST_PAIRED",
+ "STATS_WSR_TEST", "STDDEV_POP", "STDDEV_SAMP",
+ "STOP", "STORAGE", "STORE", "STREAMS",
+ "STREAM", "STRICT", "STRING", "STRIPE_COLUMNS",
+ "STRIPE_WIDTH", "STRIP", "STRUCTURE",
+ "SUBMULTISET", "SUBPARTITION_REL",
+ "SUBPARTITIONS", "SUBPARTITION",
+ "SUBQUERIES", "SUBQUERY_PRUNING",
+ "SUBSCRIBE", "SUBSET", "SUBSTITUTABLE",
+ "SUBSTR2", "SUBSTR4", "SUBSTRB",
+ "SUBSTRC", "SUBTYPE", "SUCCESSFUL",
+ "SUCCESS", "SUMMARY", "SUPPLEMENTAL",
+ "SUSPEND", "SWAP_JOIN_INPUTS", "SWITCHOVER",
+ "SWITCH", "SYNCHRONOUS", "SYNC",
+ "SYNONYM", "SYSASM", "SYS_AUDIT",
+ "SYSAUX", "SYSBACKUP", "SYS_CHECKACL",
+ "SYS_CHECK_PRIVILEGE", "SYS_CONNECT_BY_PATH",
+ "SYS_CONTEXT", "SYSDATE", "SYSDBA",
+ "SYS_DBURIGEN", "SYSDG", "SYS_DL_CURSOR",
+ "SYS_DM_RXFORM_CHR", "SYS_DM_RXFORM_NUM",
+ "SYS_DOM_COMPARE", "SYS_DST_PRIM2SEC",
+ "SYS_DST_SEC2PRIM", "SYS_ET_BFILE_TO_RAW",
+ "SYS_ET_BLOB_TO_IMAGE", "SYS_ET_IMAGE_TO_BLOB",
+ "SYS_ET_RAW_TO_BFILE", "SYS_EXTPDTXT",
+ "SYS_EXTRACT_UTC", "SYS_FBT_INSDEL",
+ "SYS_FILTER_ACLS", "SYS_FNMATCHES",
+ "SYS_FNREPLACE", "SYS_GET_ACLIDS",
+ "SYS_GET_COL_ACLIDS", "SYS_GET_PRIVILEGES",
+ "SYS_GETTOKENID", "SYS_GETXTIVAL",
+ "SYS_GUID", "SYSGUID", "SYSKM", "SYS_MAKE_XMLNODEID",
+ "SYS_MAKEXML", "SYS_MKXMLATTR", "SYS_MKXTI",
+ "SYSOBJ", "SYS_OP_ADT2BIN", "SYS_OP_ADTCONS",
+ "SYS_OP_ALSCRVAL", "SYS_OP_ATG",
+ "SYS_OP_BIN2ADT", "SYS_OP_BITVEC",
+ "SYS_OP_BL2R", "SYS_OP_BLOOM_FILTER_LIST",
+ "SYS_OP_BLOOM_FILTER", "SYS_OP_C2C",
+ "SYS_OP_CAST", "SYS_OP_CEG", "SYS_OP_CL2C",
+ "SYS_OP_COMBINED_HASH", "SYS_OP_COMP",
+ "SYS_OP_CONVERT", "SYS_OP_COUNTCHG",
+ "SYS_OP_CSCONV", "SYS_OP_CSCONVTEST",
+ "SYS_OP_CSR", "SYS_OP_CSX_PATCH",
+ "SYS_OP_CYCLED_SEQ", "SYS_OP_DECOMP",
+ "SYS_OP_DESCEND", "SYS_OP_DISTINCT",
+ "SYS_OP_DRA", "SYS_OP_DUMP", "SYS_OP_DV_CHECK",
+ "SYS_OP_ENFORCE_NOT_NULL", "SYSOPER",
+ "SYS_OP_EXTRACT", "SYS_OP_GROUPING",
+ "SYS_OP_GUID", "SYS_OP_HASH", "SYS_OP_IIX",
+ "SYS_OP_ITR", "SYS_OP_KEY_VECTOR_CREATE",
+ "SYS_OP_KEY_VECTOR_FILTER_LIST",
+ "SYS_OP_KEY_VECTOR_FILTER", "SYS_OP_KEY_VECTOR_SUCCEEDED",
+ "SYS_OP_KEY_VECTOR_USE", "SYS_OP_LBID",
+ "SYS_OP_LOBLOC2BLOB", "SYS_OP_LOBLOC2CLOB",
+ "SYS_OP_LOBLOC2ID", "SYS_OP_LOBLOC2NCLOB",
+ "SYS_OP_LOBLOC2TYP", "SYS_OP_LSVI",
+ "SYS_OP_LVL", "SYS_OP_MAKEOID", "SYS_OP_MAP_NONNULL",
+ "SYS_OP_MSR", "SYS_OP_NICOMBINE",
+ "SYS_OP_NIEXTRACT", "SYS_OP_NII",
+ "SYS_OP_NIX", "SYS_OP_NOEXPAND",
+ "SYS_OP_NTCIMG", "SYS_OP_NUMTORAW",
+ "SYS_OP_OIDVALUE", "SYS_OP_OPNSIZE",
+ "SYS_OP_PAR_1", "SYS_OP_PARGID_1",
+ "SYS_OP_PARGID", "SYS_OP_PAR", "SYS_OP_PART_ID",
+ "SYS_OP_PIVOT", "SYS_OP_R2O", "SYS_OP_RAWTONUM",
+ "SYS_OP_RDTM", "SYS_OP_REF", "SYS_OP_RMTD",
+ "SYS_OP_ROWIDTOOBJ", "SYS_OP_RPB",
+ "SYS_OPTLOBPRBSC", "SYS_OP_TOSETID",
+ "SYS_OP_TPR", "SYS_OP_TRTB", "SYS_OPTXICMP",
+ "SYS_OPTXQCASTASNQ", "SYS_OP_UNDESCEND",
+ "SYS_OP_VECAND", "SYS_OP_VECBIT",
+ "SYS_OP_VECOR", "SYS_OP_VECXOR",
+ "SYS_OP_VERSION", "SYS_OP_VREF",
+ "SYS_OP_VVD", "SYS_OP_XMLCONS_FOR_CSX",
+ "SYS_OP_XPTHATG", "SYS_OP_XPTHIDX",
+ "SYS_OP_XPTHOP", "SYS_OP_XTXT2SQLT",
+ "SYS_OP_ZONE_ID", "SYS_ORDERKEY_DEPTH",
+ "SYS_ORDERKEY_MAXCHILD", "SYS_ORDERKEY_PARENT",
+ "SYS_PARALLEL_TXN", "SYS_PATHID_IS_ATTR",
+ "SYS_PATHID_IS_NMSPC", "SYS_PATHID_LASTNAME",
+ "SYS_PATHID_LASTNMSPC", "SYS_PATH_REVERSE",
+ "SYS_PXQEXTRACT", "SYS_RAW_TO_XSID",
+ "SYS_RID_ORDER", "SYS_ROW_DELTA",
+ "SYS_SC_2_XMLT", "SYS_SYNRCIREDO",
+ "SYSTEM_DEFINED", "SYSTEM", "SYSTIMESTAMP",
+ "SYS_TYPEID", "SYS_UMAKEXML", "SYS_XMLANALYZE",
+ "SYS_XMLCONTAINS", "SYS_XMLCONV",
+ "SYS_XMLEXNSURI", "SYS_XMLGEN", "SYS_XMLI_LOC_ISNODE",
+ "SYS_XMLI_LOC_ISTEXT", "SYS_XMLINSTR",
+ "SYS_XMLLOCATOR_GETSVAL", "SYS_XMLNODEID_GETCID",
+ "SYS_XMLNODEID_GETLOCATOR", "SYS_XMLNODEID_GETOKEY",
+ "SYS_XMLNODEID_GETPATHID", "SYS_XMLNODEID_GETPTRID",
+ "SYS_XMLNODEID_GETRID", "SYS_XMLNODEID_GETSVAL",
+ "SYS_XMLNODEID_GETTID", "SYS_XMLNODEID",
+ "SYS_XMLT_2_SC", "SYS_XMLTRANSLATE",
+ "SYS_XMLTYPE2SQL", "SYS_XQ_ASQLCNV",
+ "SYS_XQ_ATOMCNVCHK", "SYS_XQBASEURI",
+ "SYS_XQCASTABLEERRH", "SYS_XQCODEP2STR",
+ "SYS_XQCODEPEQ", "SYS_XQCON2SEQ",
+ "SYS_XQCONCAT", "SYS_XQDELETE", "SYS_XQDFLTCOLATION",
+ "SYS_XQDOC", "SYS_XQDOCURI", "SYS_XQDURDIV",
+ "SYS_XQED4URI", "SYS_XQENDSWITH",
+ "SYS_XQERRH", "SYS_XQERR", "SYS_XQESHTMLURI",
+ "SYS_XQEXLOBVAL", "SYS_XQEXSTWRP",
+ "SYS_XQEXTRACT", "SYS_XQEXTRREF",
+ "SYS_XQEXVAL", "SYS_XQFB2STR", "SYS_XQFNBOOL",
+ "SYS_XQFNCMP", "SYS_XQFNDATIM", "SYS_XQFNLNAME",
+ "SYS_XQFNNM", "SYS_XQFNNSURI", "SYS_XQFNPREDTRUTH",
+ "SYS_XQFNQNM", "SYS_XQFNROOT", "SYS_XQFORMATNUM",
+ "SYS_XQFTCONTAIN", "SYS_XQFUNCR",
+ "SYS_XQGETCONTENT", "SYS_XQINDXOF",
+ "SYS_XQINSERT", "SYS_XQINSPFX", "SYS_XQIRI2URI",
+ "SYS_XQLANG", "SYS_XQLLNMFRMQNM",
+ "SYS_XQMKNODEREF", "SYS_XQNILLED",
+ "SYS_XQNODENAME", "SYS_XQNORMSPACE",
+ "SYS_XQNORMUCODE", "SYS_XQ_NRNG",
+ "SYS_XQNSP4PFX", "SYS_XQNSPFRMQNM",
+ "SYS_XQPFXFRMQNM", "SYS_XQ_PKSQL2XML",
+ "SYS_XQPOLYABS", "SYS_XQPOLYADD",
+ "SYS_XQPOLYCEL", "SYS_XQPOLYCSTBL",
+ "SYS_XQPOLYCST", "SYS_XQPOLYDIV",
+ "SYS_XQPOLYFLR", "SYS_XQPOLYMOD",
+ "SYS_XQPOLYMUL", "SYS_XQPOLYRND",
+ "SYS_XQPOLYSQRT", "SYS_XQPOLYSUB",
+ "SYS_XQPOLYUMUS", "SYS_XQPOLYUPLS",
+ "SYS_XQPOLYVEQ", "SYS_XQPOLYVGE",
+ "SYS_XQPOLYVGT", "SYS_XQPOLYVLE",
+ "SYS_XQPOLYVLT", "SYS_XQPOLYVNE",
+ "SYS_XQREF2VAL", "SYS_XQRENAME",
+ "SYS_XQREPLACE", "SYS_XQRESVURI",
+ "SYS_XQRNDHALF2EVN", "SYS_XQRSLVQNM",
+ "SYS_XQRYENVPGET", "SYS_XQRYVARGET",
+ "SYS_XQRYWRP", "SYS_XQSEQ2CON4XC",
+ "SYS_XQSEQ2CON", "SYS_XQSEQDEEPEQ",
+ "SYS_XQSEQINSB", "SYS_XQSEQRM", "SYS_XQSEQRVS",
+ "SYS_XQSEQSUB", "SYS_XQSEQTYPMATCH",
+ "SYS_XQSTARTSWITH", "SYS_XQSTATBURI",
+ "SYS_XQSTR2CODEP", "SYS_XQSTRJOIN",
+ "SYS_XQSUBSTRAFT", "SYS_XQSUBSTRBEF",
+ "SYS_XQTOKENIZE", "SYS_XQTREATAS",
+ "SYS_XQ_UPKXML2SQL", "SYS_XQXFORM",
+ "SYS_XSID_TO_RAW", "SYS_ZMAP_FILTER",
+ "SYS_ZMAP_REFRESH", "TABLE_LOOKUP_BY_NL",
+ "TABLESPACE_NO", "TABLESPACE", "TABLES",
+ "TABLE_STATS", "TABLE", "TABNO",
+ "TAG", "TANH", "TAN", "TBLORIDXPARTNUM",
+ "TEMPFILE", "TEMPLATE", "TEMPORARY",
+ "TEMP_TABLE", "TEST", "TEXT", "THAN",
+ "THEN", "THE", "THREAD", "THROUGH",
+ "TIER", "TIES", "TIMEOUT", "TIMESTAMP_LTZ_UNCONSTRAINED",
+ "TIMESTAMP", "TIMESTAMP_TZ_UNCONSTRAINED",
+ "TIMESTAMP_UNCONSTRAINED", "TIMES",
+ "TIME", "TIMEZONE", "TIMEZONE_ABBR",
+ "TIMEZONE_HOUR", "TIMEZONE_MINUTE",
+ "TIMEZONE_OFFSET", "TIMEZONE_REGION",
+ "TIME_ZONE", "TIV_GB", "TIV_SSF",
+ "TO_ACLID", "TO_BINARY_DOUBLE", "TO_BINARY_FLOAT",
+ "TO_BLOB", "TO_CLOB", "TO_DSINTERVAL",
+ "TO_LOB", "TO_MULTI_BYTE", "TO_NCHAR",
+ "TO_NCLOB", "TO_NUMBER", "TOPLEVEL",
+ "TO_SINGLE_BYTE", "TO_TIMESTAMP",
+ "TO_TIMESTAMP_TZ", "TO_TIME", "TO_TIME_TZ",
+ "TO", "TO_YMINTERVAL", "TRACE", "TRACING",
+ "TRACKING", "TRAILING", "TRANSACTION",
+ "TRANSFORM_DISTINCT_AGG", "TRANSITIONAL",
+ "TRANSITION", "TRANSLATE", "TRANSLATION",
+ "TREAT", "TRIGGERS", "TRIGGER", "TRUE",
+ "TRUNCATE", "TRUNC", "TRUSTED", "TRUST",
+ "TUNING", "TX", "TYPES", "TYPE",
+ "TZ_OFFSET", "UB2", "UBA", "UCS2",
+ "UID", "UNARCHIVED", "UNBOUNDED",
+ "UNBOUND", "UNCONDITIONAL", "UNDER",
+ "UNDO", "UNDROP", "UNIFORM", "UNION",
+ "UNIQUE", "UNISTR", "UNLIMITED",
+ "UNLOAD", "UNLOCK", "UNMATCHED",
+ "UNNEST_INNERJ_DISTINCT_VIEW", "UNNEST_NOSEMIJ_NODISTINCTVIEW",
+ "UNNEST_SEMIJ_VIEW", "UNNEST", "UNPACKED",
+ "UNPIVOT", "UNPLUG", "UNPROTECTED",
+ "UNQUIESCE", "UNRECOVERABLE", "UNRESTRICTED",
+ "UNSUBSCRIBE", "UNTIL", "UNUSABLE",
+ "UNUSED", "UPDATABLE", "UPDATED",
+ "UPDATE", "UPDATEXML", "UPD_INDEXES",
+ "UPD_JOININDEX", "UPGRADE", "UPPER",
+ "UPSERT", "UROWID", "USABLE", "USAGE",
+ "USE_ANTI", "USE_CONCAT", "USE_CUBE",
+ "USE_HASH_AGGREGATION", "USE_HASH_GBY_FOR_PUSHDOWN",
+ "USE_HASH", "USE_HIDDEN_PARTITIONS",
+ "USE_INVISIBLE_INDEXES", "USE_MERGE_CARTESIAN",
+ "USE_MERGE", "USE_NL", "USE_NL_WITH_INDEX",
+ "USE_PRIVATE_OUTLINES", "USER_DATA",
+ "USER_DEFINED", "USERENV", "USERGROUP",
+ "USER_RECYCLEBIN", "USERS", "USER_TABLESPACES",
+ "USER", "USE_SEMI", "USE_STORED_OUTLINES",
+ "USE_TTT_FOR_GSETS", "USE", "USE_VECTOR_AGGREGATION",
+ "USE_WEAK_NAME_RESL", "USING_NO_EXPAND",
+ "USING", "UTF16BE", "UTF16LE", "UTF32",
+ "UTF8", "V1", "V2", "VALIDATE", "VALIDATION",
+ "VALID_TIME_END", "VALUES", "VALUE",
+ "VARCHAR2", "VARCHAR", "VARIABLE",
+ "VAR_POP", "VARRAYS", "VARRAY", "VAR_SAMP",
+ "VARYING", "VECTOR_READ_TRACE", "VECTOR_READ",
+ "VECTOR_TRANSFORM_DIMS", "VECTOR_TRANSFORM_FACT",
+ "VECTOR_TRANSFORM", "VERIFIER", "VERIFY",
+ "VERSIONING", "VERSIONS_ENDSCN",
+ "VERSIONS_ENDTIME", "VERSIONS_OPERATION",
+ "VERSIONS_STARTSCN", "VERSIONS_STARTTIME",
+ "VERSIONS", "VERSIONS_XID", "VERSION",
+ "VIEW", "VIOLATION", "VIRTUAL", "VISIBILITY",
+ "VISIBLE", "VOLUME", "VSIZE", "WAIT",
+ "WALLET", "WARNING", "WEEKS", "WEEK",
+ "WELLFORMED", "WHENEVER", "WHEN",
+ "WHERE", "WHILE", "WHITESPACE", "WIDTH_BUCKET",
+ "WITHIN", "WITHOUT", "WITH_PLSQL",
+ "WITH", "WORK", "WRAPPED", "WRAPPER",
+ "WRITE", "XDB_FASTPATH_INSERT", "XDB",
+ "X_DYN_PRUNE", "XID", "XML2OBJECT",
+ "XMLAGG", "XMLATTRIBUTES", "XMLCAST",
+ "XMLCDATA", "XMLCOLATTVAL", "XMLCOMMENT",
+ "XMLCONCAT", "XMLDIFF", "XML_DML_RWT_STMT",
+ "XMLELEMENT", "XMLEXISTS2", "XMLEXISTS",
+ "XMLFOREST", "XMLINDEX", "XMLINDEX_REWRITE_IN_SELECT",
+ "XMLINDEX_REWRITE", "XMLINDEX_SEL_IDX_TBL",
+ "XMLISNODE", "XMLISVALID", "XMLNAMESPACES",
+ "XMLPARSE", "XMLPATCH", "XMLPI",
+ "XMLQUERYVAL", "XMLQUERY", "XMLROOT",
+ "XMLSCHEMA", "XMLSERIALIZE", "XMLTABLE",
+ "XMLTRANSFORMBLOB", "XMLTRANSFORM",
+ "XMLTYPE", "XML", "XPATHTABLE", "XS_SYS_CONTEXT",
+ "XS", "XTRANSPORT", "YEARS", "YEAR",
+ "YES", "YMINTERVAL_UNCONSTRAINED",
+ "ZONEMAP", "ZONE", "PREDICTION",
+ "PREDICTION_BOUNDS", "PREDICTION_COST",
+ "PREDICTION_DETAILS", "PREDICTION_PROBABILITY",
+ "PREDICTION_SET", "CUME_DIST", "DENSE_RANK",
+ "LISTAGG", "PERCENT_RANK", "PERCENTILE_CONT",
+ "PERCENTILE_DISC", "RANK", "AVG",
+ "CORR", "COVAR_", "DECODE", "LAG",
+ "LEAD", "MAX", "MEDIAN", "MIN", "NTILE",
+ "NVL", "RATIO_TO_REPORT", "REGR_",
+ "ROUND", "ROW_NUMBER", "SUBSTR",
+ "TO_CHAR", "TRIM", "SUM", "STDDEV",
+ "VAR_", "VARIANCE", "LEAST", "GREATEST",
+ "TO_DATE", "NATIONAL_CHAR_STRING_LIT",
+ "BIT_STRING_LIT", "HEX_STRING_LIT",
+ "DOUBLE_PERIOD", "PERIOD", "UNSIGNED_INTEGER",
+ "APPROXIMATE_NUM_LIT", "CHAR_STRING",
+ "DELIMITED_ID", "PERCENT", "AMPERSAND",
+ "LEFT_PAREN", "RIGHT_PAREN", "DOUBLE_ASTERISK",
+ "ASTERISK", "PLUS_SIGN", "MINUS_SIGN",
+ "COMMA", "SOLIDUS", "AT_SIGN", "ASSIGN_OP",
+ "BINDVAR", "NOT_EQUAL_OP", "CARRET_OPERATOR_PART",
+ "TILDE_OPERATOR_PART", "EXCLAMATION_OPERATOR_PART",
+ "GREATER_THAN_OP", "LESS_THAN_OP",
+ "COLON", "SEMICOLON", "BAR", "EQUALS_OP",
+ "LEFT_BRACKET", "RIGHT_BRACKET",
+ "INTRODUCER", "SINGLE_LINE_COMMENT",
+ "MULTI_LINE_COMMENT", "REMARK_COMMENT",
+ "PROMPT_MESSAGE", "START_CMD", "REGULAR_ID",
+ "SPACES" ];
+
+PlSqlLexer.prototype.ruleNames = [ "ABORT", "ABS", "ACCESS", "ACCESSED",
+ "ACCOUNT", "ACL", "ACOS", "ACTION", "ACTIONS",
+ "ACTIVATE", "ACTIVE", "ACTIVE_COMPONENT",
+ "ACTIVE_DATA", "ACTIVE_FUNCTION", "ACTIVE_TAG",
+ "ACTIVITY", "ADAPTIVE_PLAN", "ADD", "ADD_COLUMN",
+ "ADD_GROUP", "ADD_MONTHS", "ADJ_DATE",
+ "ADMIN", "ADMINISTER", "ADMINISTRATOR",
+ "ADVANCED", "ADVISE", "ADVISOR", "AFD_DISKSTRING",
+ "AFTER", "AGENT", "AGGREGATE", "A_LETTER",
+ "ALIAS", "ALL", "ALLOCATE", "ALLOW",
+ "ALL_ROWS", "ALTER", "ALWAYS", "ANALYZE",
+ "ANCILLARY", "AND", "AND_EQUAL", "ANOMALY",
+ "ANSI_REARCH", "ANTIJOIN", "ANY", "ANYSCHEMA",
+ "APPEND", "APPENDCHILDXML", "APPEND_VALUES",
+ "APPLICATION", "APPLY", "APPROX_COUNT_DISTINCT",
+ "ARCHIVAL", "ARCHIVE", "ARCHIVED", "ARCHIVELOG",
+ "ARRAY", "AS", "ASC", "ASCII", "ASCIISTR",
+ "ASIN", "ASIS", "ASSEMBLY", "ASSIGN",
+ "ASSOCIATE", "ASYNC", "ASYNCHRONOUS",
+ "ATAN2", "ATAN", "AT", "ATTRIBUTE", "ATTRIBUTES",
+ "AUDIT", "AUTHENTICATED", "AUTHENTICATION",
+ "AUTHID", "AUTHORIZATION", "AUTOALLOCATE",
+ "AUTO", "AUTOBACKUP", "AUTOEXTEND", "AUTO_LOGIN",
+ "AUTOMATIC", "AUTONOMOUS_TRANSACTION",
+ "AUTO_REOPTIMIZE", "AVAILABILITY", "AVRO",
+ "BACKGROUND", "BACKUP", "BACKUPSET",
+ "BASIC", "BASICFILE", "BATCH", "BATCHSIZE",
+ "BATCH_TABLE_ACCESS_BY_ROWID", "BECOME",
+ "BEFORE", "BEGIN", "BEGINNING", "BEGIN_OUTLINE_DATA",
+ "BEHALF", "BEQUEATH", "BETWEEN", "BFILE",
+ "BFILENAME", "BIGFILE", "BINARY", "BINARY_DOUBLE",
+ "BINARY_DOUBLE_INFINITY", "BINARY_DOUBLE_NAN",
+ "BINARY_FLOAT", "BINARY_FLOAT_INFINITY",
+ "BINARY_FLOAT_NAN", "BINARY_INTEGER",
+ "BIND_AWARE", "BINDING", "BIN_TO_NUM",
+ "BITAND", "BITMAP_AND", "BITMAP", "BITMAPS",
+ "BITMAP_TREE", "BITS", "BLOB", "BLOCK",
+ "BLOCK_RANGE", "BLOCKS", "BLOCKSIZE",
+ "BODY", "BOOLEAN", "BOTH", "BOUND", "BRANCH",
+ "BREADTH", "BROADCAST", "BSON", "BUFFER",
+ "BUFFER_CACHE", "BUFFER_POOL", "BUILD",
+ "BULK", "BY", "BYPASS_RECURSIVE_CHECK",
+ "BYPASS_UJVC", "BYTE", "CACHE", "CACHE_CB",
+ "CACHE_INSTANCES", "CACHE_TEMP_TABLE",
+ "CACHING", "CALCULATED", "CALLBACK",
+ "CALL", "CANCEL", "CANONICAL", "CAPACITY",
+ "CARDINALITY", "CASCADE", "CASE", "CAST",
+ "CATEGORY", "CDBDEFAULT", "CEIL", "CELL_FLASH_CACHE",
+ "CERTIFICATE", "CFILE", "CHAINED", "CHANGE",
+ "CHANGETRACKING", "CHANGE_DUPKEY_ERROR_INDEX",
+ "CHARACTER", "CHAR", "CHAR_CS", "CHARTOROWID",
+ "CHECK_ACL_REWRITE", "CHECK", "CHECKPOINT",
+ "CHILD", "CHOOSE", "CHR", "CHUNK", "CLASS",
+ "CLASSIFIER", "CLEANUP", "CLEAR", "C_LETTER",
+ "CLIENT", "CLOB", "CLONE", "CLOSE_CACHED_OPEN_CURSORS",
+ "CLOSE", "CLUSTER_BY_ROWID", "CLUSTER",
+ "CLUSTER_DETAILS", "CLUSTER_DISTANCE",
+ "CLUSTER_ID", "CLUSTERING", "CLUSTERING_FACTOR",
+ "CLUSTER_PROBABILITY", "CLUSTER_SET",
+ "COALESCE", "COALESCE_SQ", "COARSE",
+ "CO_AUTH_IND", "COLD", "COLLECT", "COLUMNAR",
+ "COLUMN_AUTH_INDICATOR", "COLUMN", "COLUMNS",
+ "COLUMN_STATS", "COLUMN_VALUE", "COMMENT",
+ "COMMIT", "COMMITTED", "COMMON_DATA",
+ "COMPACT", "COMPATIBILITY", "COMPILE",
+ "COMPLETE", "COMPLIANCE", "COMPONENT",
+ "COMPONENTS", "COMPOSE", "COMPOSITE",
+ "COMPOSITE_LIMIT", "COMPOUND", "COMPRESS",
+ "COMPUTE", "CONCAT", "CON_DBID_TO_ID",
+ "CONDITIONAL", "CONDITION", "CONFIRM",
+ "CONFORMING", "CON_GUID_TO_ID", "CON_ID",
+ "CON_NAME_TO_ID", "CONNECT_BY_CB_WHR_ONLY",
+ "CONNECT_BY_COMBINE_SW", "CONNECT_BY_COST_BASED",
+ "CONNECT_BY_ELIM_DUPS", "CONNECT_BY_FILTERING",
+ "CONNECT_BY_ISCYCLE", "CONNECT_BY_ISLEAF",
+ "CONNECT_BY_ROOT", "CONNECT", "CONNECT_TIME",
+ "CONSIDER", "CONSISTENT", "CONSTANT",
+ "CONST", "CONSTRAINT", "CONSTRAINTS",
+ "CONSTRUCTOR", "CONTAINER", "CONTAINER_DATA",
+ "CONTAINERS", "CONTENT", "CONTENTS",
+ "CONTEXT", "CONTINUE", "CONTROLFILE",
+ "CON_UID_TO_ID", "CONVERT", "COOKIE",
+ "COPY", "CORR_K", "CORR_S", "CORRUPTION",
+ "CORRUPT_XID_ALL", "CORRUPT_XID", "COS",
+ "COSH", "COST", "COST_XML_QUERY_REWRITE",
+ "COUNT", "COVAR_POP", "COVAR_SAMP", "CPU_COSTING",
+ "CPU_PER_CALL", "CPU_PER_SESSION", "CRASH",
+ "CREATE", "CREATE_FILE_DEST", "CREATE_STORED_OUTLINES",
+ "CREATION", "CREDENTIAL", "CRITICAL",
+ "CROSS", "CROSSEDITION", "CSCONVERT",
+ "CUBE_AJ", "CUBE", "CUBE_GB", "CUBE_SJ",
+ "CUME_DISTM", "CURRENT", "CURRENT_DATE",
+ "CURRENT_SCHEMA", "CURRENT_TIME", "CURRENT_TIMESTAMP",
+ "CURRENT_USER", "CURRENTV", "CURSOR",
+ "CURSOR_SHARING_EXACT", "CURSOR_SPECIFIC_SEGMENT",
+ "CUSTOMDATUM", "CV", "CYCLE", "DANGLING",
+ "DATABASE", "DATA", "DATAFILE", "DATAFILES",
+ "DATAGUARDCONFIG", "DATAMOVEMENT", "DATAOBJNO",
+ "DATAOBJ_TO_MAT_PARTITION", "DATAOBJ_TO_PARTITION",
+ "DATAPUMP", "DATA_SECURITY_REWRITE_LIMIT",
+ "DATE", "DATE_MODE", "DAY", "DAYS", "DBA",
+ "DBA_RECYCLEBIN", "DBMS_STATS", "DB_ROLE_CHANGE",
+ "DBTIMEZONE", "DB_UNIQUE_NAME", "DB_VERSION",
+ "DDL", "DEALLOCATE", "DEBUG", "DEBUGGER",
+ "DEC", "DECIMAL", "DECLARE", "DECOMPOSE",
+ "DECORRELATE", "DECR", "DECREMENT", "DECRYPT",
+ "DEDUPLICATE", "DEFAULT", "DEFAULTS",
+ "DEFERRABLE", "DEFERRED", "DEFINED",
+ "DEFINE", "DEFINER", "DEGREE", "DELAY",
+ "DELEGATE", "DELETE_ALL", "DELETE", "DELETEXML",
+ "DEMAND", "DENSE_RANKM", "DEPENDENT",
+ "DEPTH", "DEQUEUE", "DEREF", "DEREF_NO_REWRITE",
+ "DESC", "DESTROY", "DETACHED", "DETERMINES",
+ "DETERMINISTIC", "DICTIONARY", "DIMENSION",
+ "DIMENSIONS", "DIRECT_LOAD", "DIRECTORY",
+ "DIRECT_PATH", "DISABLE_ALL", "DISABLE",
+ "DISABLE_PARALLEL_DML", "DISABLE_PRESET",
+ "DISABLE_RPKE", "DISALLOW", "DISASSOCIATE",
+ "DISCARD", "DISCONNECT", "DISK", "DISKGROUP",
+ "DISKGROUP_PLUS", "DISKS", "DISMOUNT",
+ "DISTINCT", "DISTINGUISHED", "DISTRIBUTED",
+ "DISTRIBUTE", "DML", "DML_UPDATE", "DOCFIDELITY",
+ "DOCUMENT", "DOMAIN_INDEX_FILTER", "DOMAIN_INDEX_NO_SORT",
+ "DOMAIN_INDEX_SORT", "DOUBLE", "DOWNGRADE",
+ "DRIVING_SITE", "DROP_COLUMN", "DROP",
+ "DROP_GROUP", "DSINTERVAL_UNCONSTRAINED",
+ "DST_UPGRADE_INSERT_CONV", "DUMP", "DUMPSET",
+ "DUPLICATE", "DV", "DYNAMIC", "DYNAMIC_SAMPLING",
+ "DYNAMIC_SAMPLING_EST_CDN", "EACH", "EDITIONABLE",
+ "EDITION", "EDITIONING", "EDITIONS",
+ "ELEMENT", "ELIM_GROUPBY", "ELIMINATE_JOIN",
+ "ELIMINATE_OBY", "ELIMINATE_OUTER_JOIN",
+ "ELSE", "ELSIF", "EM", "EMPTY_BLOB",
+ "EMPTY_CLOB", "EMPTY", "ENABLE_ALL",
+ "ENABLE", "ENABLE_PARALLEL_DML", "ENABLE_PRESET",
+ "ENCODING", "ENCRYPT", "ENCRYPTION",
+ "END", "END_OUTLINE_DATA", "ENFORCED",
+ "ENFORCE", "ENQUEUE", "ENTERPRISE", "ENTITYESCAPING",
+ "ENTRY", "EQUIPART", "ERR", "ERROR_ARGUMENT",
+ "ERROR", "ERROR_ON_OVERLAP_TIME", "ERRORS",
+ "ESCAPE", "ESTIMATE", "EVAL", "EVALNAME",
+ "EVALUATE", "EVALUATION", "EVENTS", "EVERY",
+ "EXCEPT", "EXCEPTION", "EXCEPTION_INIT",
+ "EXCEPTIONS", "EXCHANGE", "EXCLUDE",
+ "EXCLUDING", "EXCLUSIVE", "EXECUTE",
+ "EXEMPT", "EXISTING", "EXISTS", "EXISTSNODE",
+ "EXIT", "EXPAND_GSET_TO_UNION", "EXPAND_TABLE",
+ "EXP", "EXPIRE", "EXPLAIN", "EXPLOSION",
+ "EXPORT", "EXPR_CORR_CHECK", "EXPRESS",
+ "EXTENDS", "EXTENT", "EXTENTS", "EXTERNAL",
+ "EXTERNALLY", "EXTRACTCLOBXML", "EXTRACT",
+ "EXTRACTVALUE", "EXTRA", "FACILITY",
+ "FACT", "FACTOR", "FACTORIZE_JOIN", "FAILED",
+ "FAILED_LOGIN_ATTEMPTS", "FAILGROUP",
+ "FAILOVER", "FAILURE", "FALSE", "FAMILY",
+ "FAR", "FAST", "FASTSTART", "FBTSCAN",
+ "FEATURE_DETAILS", "FEATURE_ID", "FEATURE_SET",
+ "FEATURE_VALUE", "FETCH", "FILE", "FILE_NAME_CONVERT",
+ "FILESYSTEM_LIKE_LOGGING", "FILTER",
+ "FINAL", "FINE", "FINISH", "FIRST", "FIRSTM",
+ "FIRST_ROWS", "FIRST_VALUE", "FIXED_VIEW_DATA",
+ "FLAGGER", "FLASHBACK", "FLASH_CACHE",
+ "FLOAT", "FLOB", "FLOOR", "FLUSH", "FOLDER",
+ "FOLLOWING", "FOLLOWS", "FORALL", "FORCE",
+ "FORCE_XML_QUERY_REWRITE", "FOREIGN",
+ "FOREVER", "FOR", "FORMAT", "FORWARD",
+ "FRAGMENT_NUMBER", "FREELIST", "FREELISTS",
+ "FREEPOOLS", "FRESH", "FROM", "FROM_TZ",
+ "FULL", "FULL_OUTER_JOIN_TO_OUTER", "FUNCTION",
+ "FUNCTIONS", "GATHER_OPTIMIZER_STATISTICS",
+ "GATHER_PLAN_STATISTICS", "GBY_CONC_ROLLUP",
+ "GBY_PUSHDOWN", "GENERATED", "GET", "GLOBAL",
+ "GLOBALLY", "GLOBAL_NAME", "GLOBAL_TOPIC_ENABLED",
+ "GOTO", "GRANT", "GROUP_BY", "GROUP",
+ "GROUP_ID", "GROUPING", "GROUPING_ID",
+ "GROUPS", "GUARANTEED", "GUARANTEE",
+ "GUARD", "HASH_AJ", "HASH", "HASHKEYS",
+ "HASH_SJ", "HAVING", "HEADER", "HEAP",
+ "HELP", "HEXTORAW", "HEXTOREF", "HIDDEN_KEYWORD",
+ "HIDE", "HIERARCHY", "HIGH", "HINTSET_BEGIN",
+ "HINTSET_END", "HOT", "HOUR", "HWM_BROKERED",
+ "HYBRID", "IDENTIFIED", "IDENTIFIER",
+ "IDENTITY", "IDGENERATORS", "ID", "IDLE_TIME",
+ "IF", "IGNORE", "IGNORE_OPTIM_EMBEDDED_HINTS",
+ "IGNORE_ROW_ON_DUPKEY_INDEX", "IGNORE_WHERE_CLAUSE",
+ "ILM", "IMMEDIATE", "IMPACT", "IMPORT",
+ "INACTIVE", "INCLUDE", "INCLUDE_VERSION",
+ "INCLUDING", "INCREMENTAL", "INCREMENT",
+ "INCR", "INDENT", "INDEX_ASC", "INDEX_COMBINE",
+ "INDEX_DESC", "INDEXED", "INDEXES", "INDEX_FFS",
+ "INDEX_FILTER", "INDEX", "INDEXING",
+ "INDEX_JOIN", "INDEX_ROWS", "INDEX_RRS",
+ "INDEX_RS_ASC", "INDEX_RS_DESC", "INDEX_RS",
+ "INDEX_SCAN", "INDEX_SKIP_SCAN", "INDEX_SS_ASC",
+ "INDEX_SS_DESC", "INDEX_SS", "INDEX_STATS",
+ "INDEXTYPE", "INDEXTYPES", "INDICATOR",
+ "INDICES", "INFINITE", "INFORMATIONAL",
+ "INHERIT", "IN", "INITCAP", "INITIAL",
+ "INITIALIZED", "INITIALLY", "INITRANS",
+ "INLINE", "INLINE_XMLTYPE_NT", "INMEMORY",
+ "IN_MEMORY_METADATA", "INMEMORY_PRUNING",
+ "INNER", "INOUT", "INPLACE", "INSERTCHILDXMLAFTER",
+ "INSERTCHILDXMLBEFORE", "INSERTCHILDXML",
+ "INSERT", "INSERTXMLAFTER", "INSERTXMLBEFORE",
+ "INSTANCE", "INSTANCES", "INSTANTIABLE",
+ "INSTANTLY", "INSTEAD", "INSTR2", "INSTR4",
+ "INSTRB", "INSTRC", "INSTR", "INTEGER",
+ "INTERLEAVED", "INTERMEDIATE", "INTERNAL_CONVERT",
+ "INTERNAL_USE", "INTERPRETED", "INTERSECT",
+ "INTERVAL", "INT", "INTO", "INVALIDATE",
+ "INVISIBLE", "IN_XQUERY", "IS", "ISOLATION",
+ "ISOLATION_LEVEL", "ITERATE", "ITERATION_NUMBER",
+ "JAVA", "JOB", "JOIN", "JSON_ARRAYAGG",
+ "JSON_ARRAY", "JSON_EQUAL", "JSON_EXISTS2",
+ "JSON_EXISTS", "JSONGET", "JSON", "JSON_OBJECTAGG",
+ "JSON_OBJECT", "JSONPARSE", "JSON_QUERY",
+ "JSON_SERIALIZE", "JSON_TABLE", "JSON_TEXTCONTAINS2",
+ "JSON_TEXTCONTAINS", "JSON_VALUE", "KEEP_DUPLICATES",
+ "KEEP", "KERBEROS", "KEY", "KEY_LENGTH",
+ "KEYSIZE", "KEYS", "KEYSTORE", "KILL",
+ "LABEL", "LANGUAGE", "LAST_DAY", "LAST",
+ "LAST_VALUE", "LATERAL", "LAX", "LAYER",
+ "LDAP_REGISTRATION_ENABLED", "LDAP_REGISTRATION",
+ "LDAP_REG_SYNC_INTERVAL", "LEADING",
+ "LEFT", "LENGTH2", "LENGTH4", "LENGTHB",
+ "LENGTHC", "LENGTH", "LESS", "LEVEL",
+ "LEVELS", "LIBRARY", "LIFECYCLE", "LIFE",
+ "LIFETIME", "LIKE2", "LIKE4", "LIKEC",
+ "LIKE_EXPAND", "LIKE", "LIMIT", "LINEAR",
+ "LINK", "LIST", "LN", "LNNVL", "LOAD",
+ "LOB", "LOBNVL", "LOBS", "LOCAL_INDEXES",
+ "LOCAL", "LOCALTIME", "LOCALTIMESTAMP",
+ "LOCATION", "LOCATOR", "LOCKED", "LOCKING",
+ "LOCK", "LOGFILE", "LOGFILES", "LOGGING",
+ "LOGICAL", "LOGICAL_READS_PER_CALL",
+ "LOGICAL_READS_PER_SESSION", "LOG", "LOGMINING",
+ "LOGOFF", "LOGON", "LOG_READ_ONLY_VIOLATIONS",
+ "LONG", "LOOP", "LOWER", "LOW", "LPAD",
+ "LTRIM", "MAIN", "MAKE_REF", "MANAGED",
+ "MANAGE", "MANAGEMENT", "MANAGER", "MANUAL",
+ "MAP", "MAPPING", "MASTER", "MATCHED",
+ "MATCHES", "MATCH", "MATCH_NUMBER", "MATCH_RECOGNIZE",
+ "MATERIALIZED", "MATERIALIZE", "MAXARCHLOGS",
+ "MAXDATAFILES", "MAXEXTENTS", "MAXIMIZE",
+ "MAXINSTANCES", "MAXLOGFILES", "MAXLOGHISTORY",
+ "MAXLOGMEMBERS", "MAX_SHARED_TEMP_SIZE",
+ "MAXSIZE", "MAXTRANS", "MAXVALUE", "MEASURE",
+ "MEASURES", "MEDIUM", "MEMBER", "MEMCOMPRESS",
+ "MEMORY", "MERGEACTIONS", "MERGE_AJ",
+ "MERGE_CONST_ON", "MERGE", "MERGE_SJ",
+ "METADATA", "METHOD", "MIGRATE", "MIGRATION",
+ "MINEXTENTS", "MINIMIZE", "MINIMUM",
+ "MINING", "MINUS", "MINUS_NULL", "MINUTE",
+ "MINVALUE", "MIRRORCOLD", "MIRRORHOT",
+ "MIRROR", "MLSLABEL", "MODEL_COMPILE_SUBQUERY",
+ "MODEL_DONTVERIFY_UNIQUENESS", "MODEL_DYNAMIC_SUBQUERY",
+ "MODEL_MIN_ANALYSIS", "MODEL", "MODEL_NB",
+ "MODEL_NO_ANALYSIS", "MODEL_PBY", "MODEL_PUSH_REF",
+ "MODEL_SV", "MODE", "MODIFICATION", "MODIFY_COLUMN_TYPE",
+ "MODIFY", "MOD", "MODULE", "MONITORING",
+ "MONITOR", "MONTH", "MONTHS_BETWEEN",
+ "MONTHS", "MOUNT", "MOUNTPATH", "MOVEMENT",
+ "MOVE", "MULTIDIMENSIONAL", "MULTISET",
+ "MV_MERGE", "NAMED", "NAME", "NAMESPACE",
+ "NAN", "NANVL", "NATIONAL", "NATIVE_FULL_OUTER_JOIN",
+ "NATIVE", "NATURAL", "NATURALN", "NAV",
+ "NCHAR_CS", "NCHAR", "NCHR", "NCLOB",
+ "NEEDED", "NEG", "NESTED", "NESTED_TABLE_FAST_INSERT",
+ "NESTED_TABLE_GET_REFS", "NESTED_TABLE_ID",
+ "NESTED_TABLE_SET_REFS", "NESTED_TABLE_SET_SETID",
+ "NETWORK", "NEVER", "NEW", "NEW_TIME",
+ "NEXT_DAY", "NEXT", "NL_AJ", "NLJ_BATCHING",
+ "NLJ_INDEX_FILTER", "NLJ_INDEX_SCAN",
+ "NLJ_PREFETCH", "NLS_CALENDAR", "NLS_CHARACTERSET",
+ "NLS_CHARSET_DECL_LEN", "NLS_CHARSET_ID",
+ "NLS_CHARSET_NAME", "NLS_COMP", "NLS_CURRENCY",
+ "NLS_DATE_FORMAT", "NLS_DATE_LANGUAGE",
+ "NLS_INITCAP", "NLS_ISO_CURRENCY", "NL_SJ",
+ "NLS_LANG", "NLS_LANGUAGE", "NLS_LENGTH_SEMANTICS",
+ "NLS_LOWER", "NLS_NCHAR_CONV_EXCP", "NLS_NUMERIC_CHARACTERS",
+ "NLS_SORT", "NLSSORT", "NLS_SPECIAL_CHARS",
+ "NLS_TERRITORY", "NLS_UPPER", "NO_ACCESS",
+ "NO_ADAPTIVE_PLAN", "NO_ANSI_REARCH",
+ "NOAPPEND", "NOARCHIVELOG", "NOAUDIT",
+ "NO_AUTO_REOPTIMIZE", "NO_BASETABLE_MULTIMV_REWRITE",
+ "NO_BATCH_TABLE_ACCESS_BY_ROWID", "NO_BIND_AWARE",
+ "NO_BUFFER", "NOCACHE", "NO_CARTESIAN",
+ "NO_CHECK_ACL_REWRITE", "NO_CLUSTER_BY_ROWID",
+ "NO_CLUSTERING", "NO_COALESCE_SQ", "NO_COMMON_DATA",
+ "NOCOMPRESS", "NO_CONNECT_BY_CB_WHR_ONLY",
+ "NO_CONNECT_BY_COMBINE_SW", "NO_CONNECT_BY_COST_BASED",
+ "NO_CONNECT_BY_ELIM_DUPS", "NO_CONNECT_BY_FILTERING",
+ "NOCOPY", "NO_COST_XML_QUERY_REWRITE",
+ "NO_CPU_COSTING", "NOCPU_COSTING", "NOCYCLE",
+ "NO_DATA_SECURITY_REWRITE", "NO_DECORRELATE",
+ "NODELAY", "NO_DOMAIN_INDEX_FILTER",
+ "NO_DST_UPGRADE_INSERT_CONV", "NO_ELIM_GROUPBY",
+ "NO_ELIMINATE_JOIN", "NO_ELIMINATE_OBY",
+ "NO_ELIMINATE_OUTER_JOIN", "NOENTITYESCAPING",
+ "NO_EXPAND_GSET_TO_UNION", "NO_EXPAND",
+ "NO_EXPAND_TABLE", "NO_FACT", "NO_FACTORIZE_JOIN",
+ "NO_FILTERING", "NOFORCE", "NO_FULL_OUTER_JOIN_TO_OUTER",
+ "NO_GATHER_OPTIMIZER_STATISTICS", "NO_GBY_PUSHDOWN",
+ "NOGUARANTEE", "NO_INDEX_FFS", "NO_INDEX",
+ "NO_INDEX_SS", "NO_INMEMORY", "NO_INMEMORY_PRUNING",
+ "NOKEEP", "NO_LOAD", "NOLOCAL", "NOLOGGING",
+ "NOMAPPING", "NOMAXVALUE", "NO_MERGE",
+ "NOMINIMIZE", "NOMINVALUE", "NO_MODEL_PUSH_REF",
+ "NO_MONITORING", "NOMONITORING", "NO_MONITOR",
+ "NO_MULTIMV_REWRITE", "NO_NATIVE_FULL_OUTER_JOIN",
+ "NONBLOCKING", "NONEDITIONABLE", "NONE",
+ "NO_NLJ_BATCHING", "NO_NLJ_PREFETCH",
+ "NO", "NONSCHEMA", "NO_OBJECT_LINK",
+ "NOORDER", "NO_ORDER_ROLLUPS", "NO_OUTER_JOIN_TO_ANTI",
+ "NO_OUTER_JOIN_TO_INNER", "NOOVERRIDE",
+ "NO_PARALLEL_INDEX", "NOPARALLEL_INDEX",
+ "NO_PARALLEL", "NOPARALLEL", "NO_PARTIAL_COMMIT",
+ "NO_PARTIAL_JOIN", "NO_PARTIAL_ROLLUP_PUSHDOWN",
+ "NOPARTITION", "NO_PLACE_DISTINCT", "NO_PLACE_GROUP_BY",
+ "NO_PQ_CONCURRENT_UNION", "NO_PQ_MAP",
+ "NO_PQ_REPLICATE", "NO_PQ_SKEW", "NO_PRUNE_GSETS",
+ "NO_PULL_PRED", "NO_PUSH_PRED", "NO_PUSH_SUBQ",
+ "NO_PX_FAULT_TOLERANCE", "NO_PX_JOIN_FILTER",
+ "NO_QKN_BUFF", "NO_QUERY_TRANSFORMATION",
+ "NO_REF_CASCADE", "NORELOCATE", "NORELY",
+ "NOREPAIR", "NOREPLAY", "NORESETLOGS",
+ "NO_RESULT_CACHE", "NOREVERSE", "NO_REWRITE",
+ "NOREWRITE", "NORMAL", "NO_ROOT_SW_FOR_LOCAL",
+ "NOROWDEPENDENCIES", "NOSCHEMACHECK",
+ "NOSEGMENT", "NO_SEMIJOIN", "NO_SEMI_TO_INNER",
+ "NO_SET_TO_JOIN", "NOSORT", "NO_SQL_TRANSLATION",
+ "NO_SQL_TUNE", "NO_STAR_TRANSFORMATION",
+ "NO_STATEMENT_QUEUING", "NO_STATS_GSETS",
+ "NOSTRICT", "NO_SUBQUERY_PRUNING", "NO_SUBSTRB_PAD",
+ "NO_SWAP_JOIN_INPUTS", "NOSWITCH", "NO_TABLE_LOOKUP_BY_NL",
+ "NO_TEMP_TABLE", "NOTHING", "NOTIFICATION",
+ "NOT", "NO_TRANSFORM_DISTINCT_AGG", "NO_UNNEST",
+ "NO_USE_CUBE", "NO_USE_HASH_AGGREGATION",
+ "NO_USE_HASH_GBY_FOR_PUSHDOWN", "NO_USE_HASH",
+ "NO_USE_INVISIBLE_INDEXES", "NO_USE_MERGE",
+ "NO_USE_NL", "NO_USE_VECTOR_AGGREGATION",
+ "NOVALIDATE", "NO_VECTOR_TRANSFORM_DIMS",
+ "NO_VECTOR_TRANSFORM_FACT", "NO_VECTOR_TRANSFORM",
+ "NOWAIT", "NO_XDB_FASTPATH_INSERT", "NO_XML_DML_REWRITE",
+ "NO_XMLINDEX_REWRITE_IN_SELECT", "NO_XMLINDEX_REWRITE",
+ "NO_XML_QUERY_REWRITE", "NO_ZONEMAP",
+ "NTH_VALUE", "NULLIF", "NULL_", "NULLS",
+ "NUMBER", "NUMERIC", "NUM_INDEX_KEYS",
+ "NUMTODSINTERVAL", "NUMTOYMINTERVAL",
+ "NVARCHAR2", "NVL2", "OBJECT2XML", "OBJECT",
+ "OBJ_ID", "OBJNO", "OBJNO_REUSE", "OCCURENCES",
+ "OFFLINE", "OFF", "OFFSET", "OF", "OIDINDEX",
+ "OID", "OLAP", "OLD", "OLD_PUSH_PRED",
+ "OLS", "OLTP", "OMIT", "ONE", "ONLINE",
+ "ONLINELOG", "ONLY", "ON", "OPAQUE",
+ "OPAQUE_TRANSFORM", "OPAQUE_XCANONICAL",
+ "OPCODE", "OPEN", "OPERATIONS", "OPERATOR",
+ "OPT_ESTIMATE", "OPTIMAL", "OPTIMIZE",
+ "OPTIMIZER_FEATURES_ENABLE", "OPTIMIZER_GOAL",
+ "OPTION", "OPT_PARAM", "ORA_BRANCH",
+ "ORA_CHECK_ACL", "ORA_CHECK_PRIVILEGE",
+ "ORA_CLUSTERING", "ORADATA", "ORADEBUG",
+ "ORA_DST_AFFECTED", "ORA_DST_CONVERT",
+ "ORA_DST_ERROR", "ORA_GET_ACLIDS", "ORA_GET_PRIVILEGES",
+ "ORA_HASH", "ORA_INVOKING_USERID", "ORA_INVOKING_USER",
+ "ORA_INVOKING_XS_USER_GUID", "ORA_INVOKING_XS_USER",
+ "ORA_RAWCOMPARE", "ORA_RAWCONCAT", "ORA_ROWSCN",
+ "ORA_ROWSCN_RAW", "ORA_ROWVERSION", "ORA_TABVERSION",
+ "ORA_WRITE_TIME", "ORDERED", "ORDERED_PREDICATES",
+ "ORDER", "ORDINALITY", "OR_EXPAND", "ORGANIZATION",
+ "OR", "OR_PREDICATES", "OSERROR", "OTHER",
+ "OUTER_JOIN_TO_ANTI", "OUTER_JOIN_TO_INNER",
+ "OUTER", "OUTLINE_LEAF", "OUTLINE", "OUT_OF_LINE",
+ "OUT", "OVERFLOW_NOMOVE", "OVERFLOW",
+ "OVERLAPS", "OVER", "OVERRIDING", "OWNER",
+ "OWNERSHIP", "OWN", "PACKAGE", "PACKAGES",
+ "PARALLEL_ENABLE", "PARALLEL_INDEX",
+ "PARALLEL", "PARAMETERFILE", "PARAMETERS",
+ "PARAM", "PARENT", "PARITY", "PARTIAL_JOIN",
+ "PARTIALLY", "PARTIAL", "PARTIAL_ROLLUP_PUSHDOWN",
+ "PARTITION_HASH", "PARTITION_LIST", "PARTITION",
+ "PARTITION_RANGE", "PARTITIONS", "PARTNUMINST",
+ "PASSING", "PASSWORD_GRACE_TIME", "PASSWORD_LIFE_TIME",
+ "PASSWORD_LOCK_TIME", "PASSWORD", "PASSWORD_REUSE_MAX",
+ "PASSWORD_REUSE_TIME", "PASSWORD_VERIFY_FUNCTION",
+ "PAST", "PATCH", "PATH", "PATH_PREFIX",
+ "PATHS", "PATTERN", "PBL_HS_BEGIN", "PBL_HS_END",
+ "PCTFREE", "PCTINCREASE", "PCTTHRESHOLD",
+ "PCTUSED", "PCTVERSION", "PENDING", "PERCENT_FOUND",
+ "PERCENT_ISOPEN", "PERCENT_NOTFOUND",
+ "PERCENT_KEYWORD", "PERCENT_RANKM", "PERCENT_ROWCOUNT",
+ "PERCENT_ROWTYPE", "PERCENT_TYPE", "PERFORMANCE",
+ "PERIOD_KEYWORD", "PERMANENT", "PERMISSION",
+ "PERMUTE", "PER", "PFILE", "PHYSICAL",
+ "PIKEY", "PIPELINED", "PIPE", "PIV_GB",
+ "PIVOT", "PIV_SSF", "PLACE_DISTINCT",
+ "PLACE_GROUP_BY", "PLAN", "PLSCOPE_SETTINGS",
+ "PLS_INTEGER", "PLSQL_CCFLAGS", "PLSQL_CODE_TYPE",
+ "PLSQL_DEBUG", "PLSQL_OPTIMIZE_LEVEL",
+ "PLSQL_WARNINGS", "PLUGGABLE", "POINT",
+ "POLICY", "POOL_16K", "POOL_2K", "POOL_32K",
+ "POOL_4K", "POOL_8K", "POSITIVEN", "POSITIVE",
+ "POST_TRANSACTION", "POWERMULTISET_BY_CARDINALITY",
+ "POWERMULTISET", "POWER", "PQ_CONCURRENT_UNION",
+ "PQ_DISTRIBUTE", "PQ_DISTRIBUTE_WINDOW",
+ "PQ_FILTER", "PQ_MAP", "PQ_NOMAP", "PQ_REPLICATE",
+ "PQ_SKEW", "PRAGMA", "PREBUILT", "PRECEDES",
+ "PRECEDING", "PRECISION", "PRECOMPUTE_SUBQUERY",
+ "PREDICATE_REORDERS", "PRELOAD", "PREPARE",
+ "PRESENTNNV", "PRESENT", "PRESENTV",
+ "PRESERVE_OID", "PRESERVE", "PRETTY",
+ "PREVIOUS", "PREV", "PRIMARY", "PRINTBLOBTOCLOB",
+ "PRIORITY", "PRIOR", "PRIVATE", "PRIVATE_SGA",
+ "PRIVILEGED", "PRIVILEGE", "PRIVILEGES",
+ "PROCEDURAL", "PROCEDURE", "PROCESS",
+ "PROFILE", "PROGRAM", "PROJECT", "PROPAGATE",
+ "PROTECTED", "PROTECTION", "PROXY", "PRUNING",
+ "PUBLIC", "PULL_PRED", "PURGE", "PUSH_PRED",
+ "PUSH_SUBQ", "PX_FAULT_TOLERANCE", "PX_GRANULE",
+ "PX_JOIN_FILTER", "QB_NAME", "QUERY_BLOCK",
+ "QUERY", "QUEUE_CURR", "QUEUE", "QUEUE_ROWP",
+ "QUIESCE", "QUORUM", "QUOTA", "RAISE",
+ "RANDOM_LOCAL", "RANDOM", "RANGE", "RANKM",
+ "RAPIDLY", "RAW", "RAWTOHEX", "RAWTONHEX",
+ "RBA", "RBO_OUTLINE", "RDBA", "READ",
+ "READS", "REALM", "REAL", "REBALANCE",
+ "REBUILD", "RECORD", "RECORDS_PER_BLOCK",
+ "RECOVERABLE", "RECOVER", "RECOVERY",
+ "RECYCLEBIN", "RECYCLE", "REDACTION",
+ "REDEFINE", "REDO", "REDUCED", "REDUNDANCY",
+ "REF_CASCADE_CURSOR", "REFERENCED", "REFERENCE",
+ "REFERENCES", "REFERENCING", "REF", "REFRESH",
+ "REFTOHEX", "REGEXP_COUNT", "REGEXP_INSTR",
+ "REGEXP_LIKE", "REGEXP_REPLACE", "REGEXP_SUBSTR",
+ "REGISTER", "REGR_AVGX", "REGR_AVGY",
+ "REGR_COUNT", "REGR_INTERCEPT", "REGR_R2",
+ "REGR_SLOPE", "REGR_SXX", "REGR_SXY",
+ "REGR_SYY", "REGULAR", "REJECT", "REKEY",
+ "RELATIONAL", "RELIES_ON", "RELOCATE",
+ "RELY", "REMAINDER", "REMOTE_MAPPED",
+ "REMOVE", "RENAME", "REPAIR", "REPEAT",
+ "REPLACE", "REPLICATION", "REQUIRED",
+ "RESETLOGS", "RESET", "RESIZE", "RESOLVE",
+ "RESOLVER", "RESOURCE", "RESPECT", "RESTART",
+ "RESTORE_AS_INTERVALS", "RESTORE", "RESTRICT_ALL_REF_CONS",
+ "RESTRICTED", "RESTRICT_REFERENCES",
+ "RESTRICT", "RESULT_CACHE", "RESULT",
+ "RESUMABLE", "RESUME", "RETENTION", "RETRY_ON_ROW_CHANGE",
+ "RETURNING", "RETURN", "REUSE", "REVERSE",
+ "REVOKE", "REWRITE_OR_ERROR", "REWRITE",
+ "RIGHT", "ROLE", "ROLESET", "ROLES",
+ "ROLLBACK", "ROLLING", "ROLLUP", "ROWDEPENDENCIES",
+ "ROWID_MAPPING_TABLE", "ROWID", "ROWIDTOCHAR",
+ "ROWIDTONCHAR", "ROW_LENGTH", "ROWNUM",
+ "ROW", "ROWS", "RPAD", "RTRIM", "RULE",
+ "RULES", "RUNNING", "SALT", "SAMPLE",
+ "SAVE_AS_INTERVALS", "SAVEPOINT", "SAVE",
+ "SB4", "SCALE_ROWS", "SCALE", "SCAN_INSTANCES",
+ "SCAN", "SCHEDULER", "SCHEMACHECK", "SCHEMA",
+ "SCN_ASCENDING", "SCN", "SCOPE", "SCRUB",
+ "SD_ALL", "SD_INHIBIT", "SDO_GEOM_MBR",
+ "SD_SHOW", "SEARCH", "SECOND", "SECRET",
+ "SECUREFILE_DBA", "SECUREFILE", "SECURITY",
+ "SEED", "SEG_BLOCK", "SEG_FILE", "SEGMENT",
+ "SELECTIVITY", "SELECT", "SELF", "SEMIJOIN_DRIVER",
+ "SEMIJOIN", "SEMI_TO_INNER", "SEQUENCED",
+ "SEQUENCE", "SEQUENTIAL", "SEQ", "SERIALIZABLE",
+ "SERIALLY_REUSABLE", "SERIAL", "SERVERERROR",
+ "SERVICE_NAME_CONVERT", "SERVICES", "SESSION_CACHED_CURSORS",
+ "SESSION", "SESSIONS_PER_USER", "SESSIONTIMEZONE",
+ "SESSIONTZNAME", "SET", "SETS", "SETTINGS",
+ "SET_TO_JOIN", "SEVERE", "SHARED_POOL",
+ "SHARED", "SHARE", "SHARING", "SHELFLIFE",
+ "SHOW", "SHRINK", "SHUTDOWN", "SIBLINGS",
+ "SID", "SIGNAL_COMPONENT", "SIGNAL_FUNCTION",
+ "SIGN", "SIGNTYPE", "SIMPLE_INTEGER",
+ "SIMPLE", "SINGLE", "SINGLETASK", "SINH",
+ "SIN", "SIZE", "SKIP_EXT_OPTIMIZER",
+ "SKIP_", "SKIP_UNQ_UNUSABLE_IDX", "SKIP_UNUSABLE_INDEXES",
+ "SMALLFILE", "SMALLINT", "SNAPSHOT",
+ "SOME", "SORT", "SOUNDEX", "SOURCE_FILE_DIRECTORY",
+ "SOURCE_FILE_NAME_CONVERT", "SOURCE",
+ "SPACE_KEYWORD", "SPECIFICATION", "SPFILE",
+ "SPLIT", "SPREADSHEET", "SQLDATA", "SQLERROR",
+ "SQLLDR", "SQL", "SQL_TRACE", "SQL_TRANSLATION_PROFILE",
+ "SQRT", "STALE", "STANDALONE", "STANDARD_HASH",
+ "STANDBY_MAX_DATA_DELAY", "STANDBYS",
+ "STANDBY", "STAR", "STAR_TRANSFORMATION",
+ "START", "STARTUP", "STATEMENT_ID", "STATEMENT_QUEUING",
+ "STATEMENTS", "STATEMENT", "STATE", "STATIC",
+ "STATISTICS", "STATS_BINOMIAL_TEST",
+ "STATS_CROSSTAB", "STATS_F_TEST", "STATS_KS_TEST",
+ "STATS_MODE", "STATS_MW_TEST", "STATS_ONE_WAY_ANOVA",
+ "STATS_T_TEST_INDEP", "STATS_T_TEST_INDEPU",
+ "STATS_T_TEST_ONE", "STATS_T_TEST_PAIRED",
+ "STATS_WSR_TEST", "STDDEV_POP", "STDDEV_SAMP",
+ "STOP", "STORAGE", "STORE", "STREAMS",
+ "STREAM", "STRICT", "STRING", "STRIPE_COLUMNS",
+ "STRIPE_WIDTH", "STRIP", "STRUCTURE",
+ "SUBMULTISET", "SUBPARTITION_REL", "SUBPARTITIONS",
+ "SUBPARTITION", "SUBQUERIES", "SUBQUERY_PRUNING",
+ "SUBSCRIBE", "SUBSET", "SUBSTITUTABLE",
+ "SUBSTR2", "SUBSTR4", "SUBSTRB", "SUBSTRC",
+ "SUBTYPE", "SUCCESSFUL", "SUCCESS", "SUMMARY",
+ "SUPPLEMENTAL", "SUSPEND", "SWAP_JOIN_INPUTS",
+ "SWITCHOVER", "SWITCH", "SYNCHRONOUS",
+ "SYNC", "SYNONYM", "SYSASM", "SYS_AUDIT",
+ "SYSAUX", "SYSBACKUP", "SYS_CHECKACL",
+ "SYS_CHECK_PRIVILEGE", "SYS_CONNECT_BY_PATH",
+ "SYS_CONTEXT", "SYSDATE", "SYSDBA", "SYS_DBURIGEN",
+ "SYSDG", "SYS_DL_CURSOR", "SYS_DM_RXFORM_CHR",
+ "SYS_DM_RXFORM_NUM", "SYS_DOM_COMPARE",
+ "SYS_DST_PRIM2SEC", "SYS_DST_SEC2PRIM",
+ "SYS_ET_BFILE_TO_RAW", "SYS_ET_BLOB_TO_IMAGE",
+ "SYS_ET_IMAGE_TO_BLOB", "SYS_ET_RAW_TO_BFILE",
+ "SYS_EXTPDTXT", "SYS_EXTRACT_UTC", "SYS_FBT_INSDEL",
+ "SYS_FILTER_ACLS", "SYS_FNMATCHES", "SYS_FNREPLACE",
+ "SYS_GET_ACLIDS", "SYS_GET_COL_ACLIDS",
+ "SYS_GET_PRIVILEGES", "SYS_GETTOKENID",
+ "SYS_GETXTIVAL", "SYS_GUID", "SYSGUID",
+ "SYSKM", "SYS_MAKE_XMLNODEID", "SYS_MAKEXML",
+ "SYS_MKXMLATTR", "SYS_MKXTI", "SYSOBJ",
+ "SYS_OP_ADT2BIN", "SYS_OP_ADTCONS", "SYS_OP_ALSCRVAL",
+ "SYS_OP_ATG", "SYS_OP_BIN2ADT", "SYS_OP_BITVEC",
+ "SYS_OP_BL2R", "SYS_OP_BLOOM_FILTER_LIST",
+ "SYS_OP_BLOOM_FILTER", "SYS_OP_C2C",
+ "SYS_OP_CAST", "SYS_OP_CEG", "SYS_OP_CL2C",
+ "SYS_OP_COMBINED_HASH", "SYS_OP_COMP",
+ "SYS_OP_CONVERT", "SYS_OP_COUNTCHG",
+ "SYS_OP_CSCONV", "SYS_OP_CSCONVTEST",
+ "SYS_OP_CSR", "SYS_OP_CSX_PATCH", "SYS_OP_CYCLED_SEQ",
+ "SYS_OP_DECOMP", "SYS_OP_DESCEND", "SYS_OP_DISTINCT",
+ "SYS_OP_DRA", "SYS_OP_DUMP", "SYS_OP_DV_CHECK",
+ "SYS_OP_ENFORCE_NOT_NULL", "SYSOPER",
+ "SYS_OP_EXTRACT", "SYS_OP_GROUPING",
+ "SYS_OP_GUID", "SYS_OP_HASH", "SYS_OP_IIX",
+ "SYS_OP_ITR", "SYS_OP_KEY_VECTOR_CREATE",
+ "SYS_OP_KEY_VECTOR_FILTER_LIST", "SYS_OP_KEY_VECTOR_FILTER",
+ "SYS_OP_KEY_VECTOR_SUCCEEDED", "SYS_OP_KEY_VECTOR_USE",
+ "SYS_OP_LBID", "SYS_OP_LOBLOC2BLOB",
+ "SYS_OP_LOBLOC2CLOB", "SYS_OP_LOBLOC2ID",
+ "SYS_OP_LOBLOC2NCLOB", "SYS_OP_LOBLOC2TYP",
+ "SYS_OP_LSVI", "SYS_OP_LVL", "SYS_OP_MAKEOID",
+ "SYS_OP_MAP_NONNULL", "SYS_OP_MSR", "SYS_OP_NICOMBINE",
+ "SYS_OP_NIEXTRACT", "SYS_OP_NII", "SYS_OP_NIX",
+ "SYS_OP_NOEXPAND", "SYS_OP_NTCIMG", "SYS_OP_NUMTORAW",
+ "SYS_OP_OIDVALUE", "SYS_OP_OPNSIZE",
+ "SYS_OP_PAR_1", "SYS_OP_PARGID_1", "SYS_OP_PARGID",
+ "SYS_OP_PAR", "SYS_OP_PART_ID", "SYS_OP_PIVOT",
+ "SYS_OP_R2O", "SYS_OP_RAWTONUM", "SYS_OP_RDTM",
+ "SYS_OP_REF", "SYS_OP_RMTD", "SYS_OP_ROWIDTOOBJ",
+ "SYS_OP_RPB", "SYS_OPTLOBPRBSC", "SYS_OP_TOSETID",
+ "SYS_OP_TPR", "SYS_OP_TRTB", "SYS_OPTXICMP",
+ "SYS_OPTXQCASTASNQ", "SYS_OP_UNDESCEND",
+ "SYS_OP_VECAND", "SYS_OP_VECBIT", "SYS_OP_VECOR",
+ "SYS_OP_VECXOR", "SYS_OP_VERSION", "SYS_OP_VREF",
+ "SYS_OP_VVD", "SYS_OP_XMLCONS_FOR_CSX",
+ "SYS_OP_XPTHATG", "SYS_OP_XPTHIDX", "SYS_OP_XPTHOP",
+ "SYS_OP_XTXT2SQLT", "SYS_OP_ZONE_ID",
+ "SYS_ORDERKEY_DEPTH", "SYS_ORDERKEY_MAXCHILD",
+ "SYS_ORDERKEY_PARENT", "SYS_PARALLEL_TXN",
+ "SYS_PATHID_IS_ATTR", "SYS_PATHID_IS_NMSPC",
+ "SYS_PATHID_LASTNAME", "SYS_PATHID_LASTNMSPC",
+ "SYS_PATH_REVERSE", "SYS_PXQEXTRACT",
+ "SYS_RAW_TO_XSID", "SYS_RID_ORDER", "SYS_ROW_DELTA",
+ "SYS_SC_2_XMLT", "SYS_SYNRCIREDO", "SYSTEM_DEFINED",
+ "SYSTEM", "SYSTIMESTAMP", "SYS_TYPEID",
+ "SYS_UMAKEXML", "SYS_XMLANALYZE", "SYS_XMLCONTAINS",
+ "SYS_XMLCONV", "SYS_XMLEXNSURI", "SYS_XMLGEN",
+ "SYS_XMLI_LOC_ISNODE", "SYS_XMLI_LOC_ISTEXT",
+ "SYS_XMLINSTR", "SYS_XMLLOCATOR_GETSVAL",
+ "SYS_XMLNODEID_GETCID", "SYS_XMLNODEID_GETLOCATOR",
+ "SYS_XMLNODEID_GETOKEY", "SYS_XMLNODEID_GETPATHID",
+ "SYS_XMLNODEID_GETPTRID", "SYS_XMLNODEID_GETRID",
+ "SYS_XMLNODEID_GETSVAL", "SYS_XMLNODEID_GETTID",
+ "SYS_XMLNODEID", "SYS_XMLT_2_SC", "SYS_XMLTRANSLATE",
+ "SYS_XMLTYPE2SQL", "SYS_XQ_ASQLCNV",
+ "SYS_XQ_ATOMCNVCHK", "SYS_XQBASEURI",
+ "SYS_XQCASTABLEERRH", "SYS_XQCODEP2STR",
+ "SYS_XQCODEPEQ", "SYS_XQCON2SEQ", "SYS_XQCONCAT",
+ "SYS_XQDELETE", "SYS_XQDFLTCOLATION",
+ "SYS_XQDOC", "SYS_XQDOCURI", "SYS_XQDURDIV",
+ "SYS_XQED4URI", "SYS_XQENDSWITH", "SYS_XQERRH",
+ "SYS_XQERR", "SYS_XQESHTMLURI", "SYS_XQEXLOBVAL",
+ "SYS_XQEXSTWRP", "SYS_XQEXTRACT", "SYS_XQEXTRREF",
+ "SYS_XQEXVAL", "SYS_XQFB2STR", "SYS_XQFNBOOL",
+ "SYS_XQFNCMP", "SYS_XQFNDATIM", "SYS_XQFNLNAME",
+ "SYS_XQFNNM", "SYS_XQFNNSURI", "SYS_XQFNPREDTRUTH",
+ "SYS_XQFNQNM", "SYS_XQFNROOT", "SYS_XQFORMATNUM",
+ "SYS_XQFTCONTAIN", "SYS_XQFUNCR", "SYS_XQGETCONTENT",
+ "SYS_XQINDXOF", "SYS_XQINSERT", "SYS_XQINSPFX",
+ "SYS_XQIRI2URI", "SYS_XQLANG", "SYS_XQLLNMFRMQNM",
+ "SYS_XQMKNODEREF", "SYS_XQNILLED", "SYS_XQNODENAME",
+ "SYS_XQNORMSPACE", "SYS_XQNORMUCODE",
+ "SYS_XQ_NRNG", "SYS_XQNSP4PFX", "SYS_XQNSPFRMQNM",
+ "SYS_XQPFXFRMQNM", "SYS_XQ_PKSQL2XML",
+ "SYS_XQPOLYABS", "SYS_XQPOLYADD", "SYS_XQPOLYCEL",
+ "SYS_XQPOLYCSTBL", "SYS_XQPOLYCST", "SYS_XQPOLYDIV",
+ "SYS_XQPOLYFLR", "SYS_XQPOLYMOD", "SYS_XQPOLYMUL",
+ "SYS_XQPOLYRND", "SYS_XQPOLYSQRT", "SYS_XQPOLYSUB",
+ "SYS_XQPOLYUMUS", "SYS_XQPOLYUPLS", "SYS_XQPOLYVEQ",
+ "SYS_XQPOLYVGE", "SYS_XQPOLYVGT", "SYS_XQPOLYVLE",
+ "SYS_XQPOLYVLT", "SYS_XQPOLYVNE", "SYS_XQREF2VAL",
+ "SYS_XQRENAME", "SYS_XQREPLACE", "SYS_XQRESVURI",
+ "SYS_XQRNDHALF2EVN", "SYS_XQRSLVQNM",
+ "SYS_XQRYENVPGET", "SYS_XQRYVARGET",
+ "SYS_XQRYWRP", "SYS_XQSEQ2CON4XC", "SYS_XQSEQ2CON",
+ "SYS_XQSEQDEEPEQ", "SYS_XQSEQINSB", "SYS_XQSEQRM",
+ "SYS_XQSEQRVS", "SYS_XQSEQSUB", "SYS_XQSEQTYPMATCH",
+ "SYS_XQSTARTSWITH", "SYS_XQSTATBURI",
+ "SYS_XQSTR2CODEP", "SYS_XQSTRJOIN", "SYS_XQSUBSTRAFT",
+ "SYS_XQSUBSTRBEF", "SYS_XQTOKENIZE",
+ "SYS_XQTREATAS", "SYS_XQ_UPKXML2SQL",
+ "SYS_XQXFORM", "SYS_XSID_TO_RAW", "SYS_ZMAP_FILTER",
+ "SYS_ZMAP_REFRESH", "TABLE_LOOKUP_BY_NL",
+ "TABLESPACE_NO", "TABLESPACE", "TABLES",
+ "TABLE_STATS", "TABLE", "TABNO", "TAG",
+ "TANH", "TAN", "TBLORIDXPARTNUM", "TEMPFILE",
+ "TEMPLATE", "TEMPORARY", "TEMP_TABLE",
+ "TEST", "TEXT", "THAN", "THEN", "THE",
+ "THREAD", "THROUGH", "TIER", "TIES",
+ "TIMEOUT", "TIMESTAMP_LTZ_UNCONSTRAINED",
+ "TIMESTAMP", "TIMESTAMP_TZ_UNCONSTRAINED",
+ "TIMESTAMP_UNCONSTRAINED", "TIMES", "TIME",
+ "TIMEZONE", "TIMEZONE_ABBR", "TIMEZONE_HOUR",
+ "TIMEZONE_MINUTE", "TIMEZONE_OFFSET",
+ "TIMEZONE_REGION", "TIME_ZONE", "TIV_GB",
+ "TIV_SSF", "TO_ACLID", "TO_BINARY_DOUBLE",
+ "TO_BINARY_FLOAT", "TO_BLOB", "TO_CLOB",
+ "TO_DSINTERVAL", "TO_LOB", "TO_MULTI_BYTE",
+ "TO_NCHAR", "TO_NCLOB", "TO_NUMBER",
+ "TOPLEVEL", "TO_SINGLE_BYTE", "TO_TIMESTAMP",
+ "TO_TIMESTAMP_TZ", "TO_TIME", "TO_TIME_TZ",
+ "TO", "TO_YMINTERVAL", "TRACE", "TRACING",
+ "TRACKING", "TRAILING", "TRANSACTION",
+ "TRANSFORM_DISTINCT_AGG", "TRANSITIONAL",
+ "TRANSITION", "TRANSLATE", "TRANSLATION",
+ "TREAT", "TRIGGERS", "TRIGGER", "TRUE",
+ "TRUNCATE", "TRUNC", "TRUSTED", "TRUST",
+ "TUNING", "TX", "TYPES", "TYPE", "TZ_OFFSET",
+ "UB2", "UBA", "UCS2", "UID", "UNARCHIVED",
+ "UNBOUNDED", "UNBOUND", "UNCONDITIONAL",
+ "UNDER", "UNDO", "UNDROP", "UNIFORM",
+ "UNION", "UNIQUE", "UNISTR", "UNLIMITED",
+ "UNLOAD", "UNLOCK", "UNMATCHED", "UNNEST_INNERJ_DISTINCT_VIEW",
+ "UNNEST_NOSEMIJ_NODISTINCTVIEW", "UNNEST_SEMIJ_VIEW",
+ "UNNEST", "UNPACKED", "UNPIVOT", "UNPLUG",
+ "UNPROTECTED", "UNQUIESCE", "UNRECOVERABLE",
+ "UNRESTRICTED", "UNSUBSCRIBE", "UNTIL",
+ "UNUSABLE", "UNUSED", "UPDATABLE", "UPDATED",
+ "UPDATE", "UPDATEXML", "UPD_INDEXES",
+ "UPD_JOININDEX", "UPGRADE", "UPPER",
+ "UPSERT", "UROWID", "USABLE", "USAGE",
+ "USE_ANTI", "USE_CONCAT", "USE_CUBE",
+ "USE_HASH_AGGREGATION", "USE_HASH_GBY_FOR_PUSHDOWN",
+ "USE_HASH", "USE_HIDDEN_PARTITIONS",
+ "USE_INVISIBLE_INDEXES", "USE_MERGE_CARTESIAN",
+ "USE_MERGE", "USE_NL", "USE_NL_WITH_INDEX",
+ "USE_PRIVATE_OUTLINES", "USER_DATA",
+ "USER_DEFINED", "USERENV", "USERGROUP",
+ "USER_RECYCLEBIN", "USERS", "USER_TABLESPACES",
+ "USER", "USE_SEMI", "USE_STORED_OUTLINES",
+ "USE_TTT_FOR_GSETS", "USE", "USE_VECTOR_AGGREGATION",
+ "USE_WEAK_NAME_RESL", "USING_NO_EXPAND",
+ "USING", "UTF16BE", "UTF16LE", "UTF32",
+ "UTF8", "V1", "V2", "VALIDATE", "VALIDATION",
+ "VALID_TIME_END", "VALUES", "VALUE",
+ "VARCHAR2", "VARCHAR", "VARIABLE", "VAR_POP",
+ "VARRAYS", "VARRAY", "VAR_SAMP", "VARYING",
+ "VECTOR_READ_TRACE", "VECTOR_READ", "VECTOR_TRANSFORM_DIMS",
+ "VECTOR_TRANSFORM_FACT", "VECTOR_TRANSFORM",
+ "VERIFIER", "VERIFY", "VERSIONING", "VERSIONS_ENDSCN",
+ "VERSIONS_ENDTIME", "VERSIONS_OPERATION",
+ "VERSIONS_STARTSCN", "VERSIONS_STARTTIME",
+ "VERSIONS", "VERSIONS_XID", "VERSION",
+ "VIEW", "VIOLATION", "VIRTUAL", "VISIBILITY",
+ "VISIBLE", "VOLUME", "VSIZE", "WAIT",
+ "WALLET", "WARNING", "WEEKS", "WEEK",
+ "WELLFORMED", "WHENEVER", "WHEN", "WHERE",
+ "WHILE", "WHITESPACE", "WIDTH_BUCKET",
+ "WITHIN", "WITHOUT", "WITH_PLSQL", "WITH",
+ "WORK", "WRAPPED", "WRAPPER", "WRITE",
+ "XDB_FASTPATH_INSERT", "XDB", "X_DYN_PRUNE",
+ "XID", "XML2OBJECT", "XMLAGG", "XMLATTRIBUTES",
+ "XMLCAST", "XMLCDATA", "XMLCOLATTVAL",
+ "XMLCOMMENT", "XMLCONCAT", "XMLDIFF",
+ "XML_DML_RWT_STMT", "XMLELEMENT", "XMLEXISTS2",
+ "XMLEXISTS", "XMLFOREST", "XMLINDEX",
+ "XMLINDEX_REWRITE_IN_SELECT", "XMLINDEX_REWRITE",
+ "XMLINDEX_SEL_IDX_TBL", "XMLISNODE",
+ "XMLISVALID", "XMLNAMESPACES", "XMLPARSE",
+ "XMLPATCH", "XMLPI", "XMLQUERYVAL", "XMLQUERY",
+ "XMLROOT", "XMLSCHEMA", "XMLSERIALIZE",
+ "XMLTABLE", "XMLTRANSFORMBLOB", "XMLTRANSFORM",
+ "XMLTYPE", "XML", "XPATHTABLE", "XS_SYS_CONTEXT",
+ "XS", "XTRANSPORT", "YEARS", "YEAR",
+ "YES", "YMINTERVAL_UNCONSTRAINED", "ZONEMAP",
+ "ZONE", "PREDICTION", "PREDICTION_BOUNDS",
+ "PREDICTION_COST", "PREDICTION_DETAILS",
+ "PREDICTION_PROBABILITY", "PREDICTION_SET",
+ "CUME_DIST", "DENSE_RANK", "LISTAGG",
+ "PERCENT_RANK", "PERCENTILE_CONT", "PERCENTILE_DISC",
+ "RANK", "AVG", "CORR", "COVAR_", "DECODE",
+ "LAG", "LEAD", "MAX", "MEDIAN", "MIN",
+ "NTILE", "NVL", "RATIO_TO_REPORT", "REGR_",
+ "ROUND", "ROW_NUMBER", "SUBSTR", "TO_CHAR",
+ "TRIM", "SUM", "STDDEV", "VAR_", "VARIANCE",
+ "LEAST", "GREATEST", "TO_DATE", "NATIONAL_CHAR_STRING_LIT",
+ "BIT_STRING_LIT", "HEX_STRING_LIT", "DOUBLE_PERIOD",
+ "PERIOD", "UNSIGNED_INTEGER", "APPROXIMATE_NUM_LIT",
+ "CHAR_STRING", "CHAR_STRING_PERL", "QS_ANGLE",
+ "QS_BRACE", "QS_BRACK", "QS_PAREN", "QS_EXCLAM",
+ "QS_SHARP", "QS_QUOTE", "QS_DQUOTE",
+ "DELIMITED_ID", "PERCENT", "AMPERSAND",
+ "LEFT_PAREN", "RIGHT_PAREN", "DOUBLE_ASTERISK",
+ "ASTERISK", "PLUS_SIGN", "MINUS_SIGN",
+ "COMMA", "SOLIDUS", "AT_SIGN", "ASSIGN_OP",
+ "BINDVAR", "NOT_EQUAL_OP", "CARRET_OPERATOR_PART",
+ "TILDE_OPERATOR_PART", "EXCLAMATION_OPERATOR_PART",
+ "GREATER_THAN_OP", "LESS_THAN_OP", "COLON",
+ "SEMICOLON", "BAR", "EQUALS_OP", "LEFT_BRACKET",
+ "RIGHT_BRACKET", "INTRODUCER", "SINGLE_LINE_COMMENT",
+ "MULTI_LINE_COMMENT", "REMARK_COMMENT",
+ "PROMPT_MESSAGE", "START_CMD", "REGULAR_ID",
+ "SPACES", "NEWLINE_EOF", "QUESTION_MARK",
+ "SIMPLE_LETTER", "FLOAT_FRAGMENT", "NEWLINE",
+ "SPACE" ];
+
+PlSqlLexer.prototype.grammarFileName = "PlSqlLexer.g4";
+
+PlSqlLexer.prototype.sempred = function(localctx, ruleIndex, predIndex) {
+ switch (ruleIndex) {
+ case 2257:
+ return this.REMARK_COMMENT_sempred(localctx, predIndex);
+ case 2258:
+ return this.PROMPT_MESSAGE_sempred(localctx, predIndex);
+ case 2259:
+ return this.START_CMD_sempred(localctx, predIndex);
+ default:
+ throw "No registered predicate for:" + ruleIndex;
+ }
+};
+
+PlSqlLexer.prototype.REMARK_COMMENT_sempred = function(localctx, predIndex) {
+ switch(predIndex) {
+ case 0:
+ return IsNewlineAtPos(-4);
+ default:
+ throw "No predicate with index:" + predIndex;
+ }
+};
+
+PlSqlLexer.prototype.PROMPT_MESSAGE_sempred = function(localctx, predIndex) {
+ switch(predIndex) {
+ case 1:
+ return IsNewlineAtPos(-4);
+ default:
+ throw "No predicate with index:" + predIndex;
+ }
+};
+
+PlSqlLexer.prototype.START_CMD_sempred = function(localctx, predIndex) {
+ switch(predIndex) {
+ case 2:
+ return IsNewlineAtPos(-2);
+ default:
+ throw "No predicate with index:" + predIndex;
+ }
+};
+
+
+
+exports.PlSqlLexer = PlSqlLexer;
+
diff --git a/src/lib/plsql/PlSqlLexer.tokens b/src/lib/plsql/PlSqlLexer.tokens
new file mode 100644
index 0000000..57e71c2
--- /dev/null
+++ b/src/lib/plsql/PlSqlLexer.tokens
@@ -0,0 +1,4484 @@
+ABORT=1
+ABS=2
+ACCESS=3
+ACCESSED=4
+ACCOUNT=5
+ACL=6
+ACOS=7
+ACTION=8
+ACTIONS=9
+ACTIVATE=10
+ACTIVE=11
+ACTIVE_COMPONENT=12
+ACTIVE_DATA=13
+ACTIVE_FUNCTION=14
+ACTIVE_TAG=15
+ACTIVITY=16
+ADAPTIVE_PLAN=17
+ADD=18
+ADD_COLUMN=19
+ADD_GROUP=20
+ADD_MONTHS=21
+ADJ_DATE=22
+ADMIN=23
+ADMINISTER=24
+ADMINISTRATOR=25
+ADVANCED=26
+ADVISE=27
+ADVISOR=28
+AFD_DISKSTRING=29
+AFTER=30
+AGENT=31
+AGGREGATE=32
+A_LETTER=33
+ALIAS=34
+ALL=35
+ALLOCATE=36
+ALLOW=37
+ALL_ROWS=38
+ALTER=39
+ALWAYS=40
+ANALYZE=41
+ANCILLARY=42
+AND=43
+AND_EQUAL=44
+ANOMALY=45
+ANSI_REARCH=46
+ANTIJOIN=47
+ANY=48
+ANYSCHEMA=49
+APPEND=50
+APPENDCHILDXML=51
+APPEND_VALUES=52
+APPLICATION=53
+APPLY=54
+APPROX_COUNT_DISTINCT=55
+ARCHIVAL=56
+ARCHIVE=57
+ARCHIVED=58
+ARCHIVELOG=59
+ARRAY=60
+AS=61
+ASC=62
+ASCII=63
+ASCIISTR=64
+ASIN=65
+ASIS=66
+ASSEMBLY=67
+ASSIGN=68
+ASSOCIATE=69
+ASYNC=70
+ASYNCHRONOUS=71
+ATAN2=72
+ATAN=73
+AT=74
+ATTRIBUTE=75
+ATTRIBUTES=76
+AUDIT=77
+AUTHENTICATED=78
+AUTHENTICATION=79
+AUTHID=80
+AUTHORIZATION=81
+AUTOALLOCATE=82
+AUTO=83
+AUTOBACKUP=84
+AUTOEXTEND=85
+AUTO_LOGIN=86
+AUTOMATIC=87
+AUTONOMOUS_TRANSACTION=88
+AUTO_REOPTIMIZE=89
+AVAILABILITY=90
+AVRO=91
+BACKGROUND=92
+BACKUP=93
+BACKUPSET=94
+BASIC=95
+BASICFILE=96
+BATCH=97
+BATCHSIZE=98
+BATCH_TABLE_ACCESS_BY_ROWID=99
+BECOME=100
+BEFORE=101
+BEGIN=102
+BEGINNING=103
+BEGIN_OUTLINE_DATA=104
+BEHALF=105
+BEQUEATH=106
+BETWEEN=107
+BFILE=108
+BFILENAME=109
+BIGFILE=110
+BINARY=111
+BINARY_DOUBLE=112
+BINARY_DOUBLE_INFINITY=113
+BINARY_DOUBLE_NAN=114
+BINARY_FLOAT=115
+BINARY_FLOAT_INFINITY=116
+BINARY_FLOAT_NAN=117
+BINARY_INTEGER=118
+BIND_AWARE=119
+BINDING=120
+BIN_TO_NUM=121
+BITAND=122
+BITMAP_AND=123
+BITMAP=124
+BITMAPS=125
+BITMAP_TREE=126
+BITS=127
+BLOB=128
+BLOCK=129
+BLOCK_RANGE=130
+BLOCKS=131
+BLOCKSIZE=132
+BODY=133
+BOOLEAN=134
+BOTH=135
+BOUND=136
+BRANCH=137
+BREADTH=138
+BROADCAST=139
+BSON=140
+BUFFER=141
+BUFFER_CACHE=142
+BUFFER_POOL=143
+BUILD=144
+BULK=145
+BY=146
+BYPASS_RECURSIVE_CHECK=147
+BYPASS_UJVC=148
+BYTE=149
+CACHE=150
+CACHE_CB=151
+CACHE_INSTANCES=152
+CACHE_TEMP_TABLE=153
+CACHING=154
+CALCULATED=155
+CALLBACK=156
+CALL=157
+CANCEL=158
+CANONICAL=159
+CAPACITY=160
+CARDINALITY=161
+CASCADE=162
+CASE=163
+CAST=164
+CATEGORY=165
+CDBDEFAULT=166
+CEIL=167
+CELL_FLASH_CACHE=168
+CERTIFICATE=169
+CFILE=170
+CHAINED=171
+CHANGE=172
+CHANGETRACKING=173
+CHANGE_DUPKEY_ERROR_INDEX=174
+CHARACTER=175
+CHAR=176
+CHAR_CS=177
+CHARTOROWID=178
+CHECK_ACL_REWRITE=179
+CHECK=180
+CHECKPOINT=181
+CHILD=182
+CHOOSE=183
+CHR=184
+CHUNK=185
+CLASS=186
+CLASSIFIER=187
+CLEANUP=188
+CLEAR=189
+C_LETTER=190
+CLIENT=191
+CLOB=192
+CLONE=193
+CLOSE_CACHED_OPEN_CURSORS=194
+CLOSE=195
+CLUSTER_BY_ROWID=196
+CLUSTER=197
+CLUSTER_DETAILS=198
+CLUSTER_DISTANCE=199
+CLUSTER_ID=200
+CLUSTERING=201
+CLUSTERING_FACTOR=202
+CLUSTER_PROBABILITY=203
+CLUSTER_SET=204
+COALESCE=205
+COALESCE_SQ=206
+COARSE=207
+CO_AUTH_IND=208
+COLD=209
+COLLECT=210
+COLUMNAR=211
+COLUMN_AUTH_INDICATOR=212
+COLUMN=213
+COLUMNS=214
+COLUMN_STATS=215
+COLUMN_VALUE=216
+COMMENT=217
+COMMIT=218
+COMMITTED=219
+COMMON_DATA=220
+COMPACT=221
+COMPATIBILITY=222
+COMPILE=223
+COMPLETE=224
+COMPLIANCE=225
+COMPONENT=226
+COMPONENTS=227
+COMPOSE=228
+COMPOSITE=229
+COMPOSITE_LIMIT=230
+COMPOUND=231
+COMPRESS=232
+COMPUTE=233
+CONCAT=234
+CON_DBID_TO_ID=235
+CONDITIONAL=236
+CONDITION=237
+CONFIRM=238
+CONFORMING=239
+CON_GUID_TO_ID=240
+CON_ID=241
+CON_NAME_TO_ID=242
+CONNECT_BY_CB_WHR_ONLY=243
+CONNECT_BY_COMBINE_SW=244
+CONNECT_BY_COST_BASED=245
+CONNECT_BY_ELIM_DUPS=246
+CONNECT_BY_FILTERING=247
+CONNECT_BY_ISCYCLE=248
+CONNECT_BY_ISLEAF=249
+CONNECT_BY_ROOT=250
+CONNECT=251
+CONNECT_TIME=252
+CONSIDER=253
+CONSISTENT=254
+CONSTANT=255
+CONST=256
+CONSTRAINT=257
+CONSTRAINTS=258
+CONSTRUCTOR=259
+CONTAINER=260
+CONTAINER_DATA=261
+CONTAINERS=262
+CONTENT=263
+CONTENTS=264
+CONTEXT=265
+CONTINUE=266
+CONTROLFILE=267
+CON_UID_TO_ID=268
+CONVERT=269
+COOKIE=270
+COPY=271
+CORR_K=272
+CORR_S=273
+CORRUPTION=274
+CORRUPT_XID_ALL=275
+CORRUPT_XID=276
+COS=277
+COSH=278
+COST=279
+COST_XML_QUERY_REWRITE=280
+COUNT=281
+COVAR_POP=282
+COVAR_SAMP=283
+CPU_COSTING=284
+CPU_PER_CALL=285
+CPU_PER_SESSION=286
+CRASH=287
+CREATE=288
+CREATE_FILE_DEST=289
+CREATE_STORED_OUTLINES=290
+CREATION=291
+CREDENTIAL=292
+CRITICAL=293
+CROSS=294
+CROSSEDITION=295
+CSCONVERT=296
+CUBE_AJ=297
+CUBE=298
+CUBE_GB=299
+CUBE_SJ=300
+CUME_DISTM=301
+CURRENT=302
+CURRENT_DATE=303
+CURRENT_SCHEMA=304
+CURRENT_TIME=305
+CURRENT_TIMESTAMP=306
+CURRENT_USER=307
+CURRENTV=308
+CURSOR=309
+CURSOR_SHARING_EXACT=310
+CURSOR_SPECIFIC_SEGMENT=311
+CUSTOMDATUM=312
+CV=313
+CYCLE=314
+DANGLING=315
+DATABASE=316
+DATA=317
+DATAFILE=318
+DATAFILES=319
+DATAGUARDCONFIG=320
+DATAMOVEMENT=321
+DATAOBJNO=322
+DATAOBJ_TO_MAT_PARTITION=323
+DATAOBJ_TO_PARTITION=324
+DATAPUMP=325
+DATA_SECURITY_REWRITE_LIMIT=326
+DATE=327
+DATE_MODE=328
+DAY=329
+DAYS=330
+DBA=331
+DBA_RECYCLEBIN=332
+DBMS_STATS=333
+DB_ROLE_CHANGE=334
+DBTIMEZONE=335
+DB_UNIQUE_NAME=336
+DB_VERSION=337
+DDL=338
+DEALLOCATE=339
+DEBUG=340
+DEBUGGER=341
+DEC=342
+DECIMAL=343
+DECLARE=344
+DECOMPOSE=345
+DECORRELATE=346
+DECR=347
+DECREMENT=348
+DECRYPT=349
+DEDUPLICATE=350
+DEFAULT=351
+DEFAULTS=352
+DEFERRABLE=353
+DEFERRED=354
+DEFINED=355
+DEFINE=356
+DEFINER=357
+DEGREE=358
+DELAY=359
+DELEGATE=360
+DELETE_ALL=361
+DELETE=362
+DELETEXML=363
+DEMAND=364
+DENSE_RANKM=365
+DEPENDENT=366
+DEPTH=367
+DEQUEUE=368
+DEREF=369
+DEREF_NO_REWRITE=370
+DESC=371
+DESTROY=372
+DETACHED=373
+DETERMINES=374
+DETERMINISTIC=375
+DICTIONARY=376
+DIMENSION=377
+DIMENSIONS=378
+DIRECT_LOAD=379
+DIRECTORY=380
+DIRECT_PATH=381
+DISABLE_ALL=382
+DISABLE=383
+DISABLE_PARALLEL_DML=384
+DISABLE_PRESET=385
+DISABLE_RPKE=386
+DISALLOW=387
+DISASSOCIATE=388
+DISCARD=389
+DISCONNECT=390
+DISK=391
+DISKGROUP=392
+DISKGROUP_PLUS=393
+DISKS=394
+DISMOUNT=395
+DISTINCT=396
+DISTINGUISHED=397
+DISTRIBUTED=398
+DISTRIBUTE=399
+DML=400
+DML_UPDATE=401
+DOCFIDELITY=402
+DOCUMENT=403
+DOMAIN_INDEX_FILTER=404
+DOMAIN_INDEX_NO_SORT=405
+DOMAIN_INDEX_SORT=406
+DOUBLE=407
+DOWNGRADE=408
+DRIVING_SITE=409
+DROP_COLUMN=410
+DROP=411
+DROP_GROUP=412
+DSINTERVAL_UNCONSTRAINED=413
+DST_UPGRADE_INSERT_CONV=414
+DUMP=415
+DUMPSET=416
+DUPLICATE=417
+DV=418
+DYNAMIC=419
+DYNAMIC_SAMPLING=420
+DYNAMIC_SAMPLING_EST_CDN=421
+EACH=422
+EDITIONABLE=423
+EDITION=424
+EDITIONING=425
+EDITIONS=426
+ELEMENT=427
+ELIM_GROUPBY=428
+ELIMINATE_JOIN=429
+ELIMINATE_OBY=430
+ELIMINATE_OUTER_JOIN=431
+ELSE=432
+ELSIF=433
+EM=434
+EMPTY_BLOB=435
+EMPTY_CLOB=436
+EMPTY=437
+ENABLE_ALL=438
+ENABLE=439
+ENABLE_PARALLEL_DML=440
+ENABLE_PRESET=441
+ENCODING=442
+ENCRYPT=443
+ENCRYPTION=444
+END=445
+END_OUTLINE_DATA=446
+ENFORCED=447
+ENFORCE=448
+ENQUEUE=449
+ENTERPRISE=450
+ENTITYESCAPING=451
+ENTRY=452
+EQUIPART=453
+ERR=454
+ERROR_ARGUMENT=455
+ERROR=456
+ERROR_ON_OVERLAP_TIME=457
+ERRORS=458
+ESCAPE=459
+ESTIMATE=460
+EVAL=461
+EVALNAME=462
+EVALUATE=463
+EVALUATION=464
+EVENTS=465
+EVERY=466
+EXCEPT=467
+EXCEPTION=468
+EXCEPTION_INIT=469
+EXCEPTIONS=470
+EXCHANGE=471
+EXCLUDE=472
+EXCLUDING=473
+EXCLUSIVE=474
+EXECUTE=475
+EXEMPT=476
+EXISTING=477
+EXISTS=478
+EXISTSNODE=479
+EXIT=480
+EXPAND_GSET_TO_UNION=481
+EXPAND_TABLE=482
+EXP=483
+EXPIRE=484
+EXPLAIN=485
+EXPLOSION=486
+EXPORT=487
+EXPR_CORR_CHECK=488
+EXPRESS=489
+EXTENDS=490
+EXTENT=491
+EXTENTS=492
+EXTERNAL=493
+EXTERNALLY=494
+EXTRACTCLOBXML=495
+EXTRACT=496
+EXTRACTVALUE=497
+EXTRA=498
+FACILITY=499
+FACT=500
+FACTOR=501
+FACTORIZE_JOIN=502
+FAILED=503
+FAILED_LOGIN_ATTEMPTS=504
+FAILGROUP=505
+FAILOVER=506
+FAILURE=507
+FALSE=508
+FAMILY=509
+FAR=510
+FAST=511
+FASTSTART=512
+FBTSCAN=513
+FEATURE_DETAILS=514
+FEATURE_ID=515
+FEATURE_SET=516
+FEATURE_VALUE=517
+FETCH=518
+FILE=519
+FILE_NAME_CONVERT=520
+FILESYSTEM_LIKE_LOGGING=521
+FILTER=522
+FINAL=523
+FINE=524
+FINISH=525
+FIRST=526
+FIRSTM=527
+FIRST_ROWS=528
+FIRST_VALUE=529
+FIXED_VIEW_DATA=530
+FLAGGER=531
+FLASHBACK=532
+FLASH_CACHE=533
+FLOAT=534
+FLOB=535
+FLOOR=536
+FLUSH=537
+FOLDER=538
+FOLLOWING=539
+FOLLOWS=540
+FORALL=541
+FORCE=542
+FORCE_XML_QUERY_REWRITE=543
+FOREIGN=544
+FOREVER=545
+FOR=546
+FORMAT=547
+FORWARD=548
+FRAGMENT_NUMBER=549
+FREELIST=550
+FREELISTS=551
+FREEPOOLS=552
+FRESH=553
+FROM=554
+FROM_TZ=555
+FULL=556
+FULL_OUTER_JOIN_TO_OUTER=557
+FUNCTION=558
+FUNCTIONS=559
+GATHER_OPTIMIZER_STATISTICS=560
+GATHER_PLAN_STATISTICS=561
+GBY_CONC_ROLLUP=562
+GBY_PUSHDOWN=563
+GENERATED=564
+GET=565
+GLOBAL=566
+GLOBALLY=567
+GLOBAL_NAME=568
+GLOBAL_TOPIC_ENABLED=569
+GOTO=570
+GRANT=571
+GROUP_BY=572
+GROUP=573
+GROUP_ID=574
+GROUPING=575
+GROUPING_ID=576
+GROUPS=577
+GUARANTEED=578
+GUARANTEE=579
+GUARD=580
+HASH_AJ=581
+HASH=582
+HASHKEYS=583
+HASH_SJ=584
+HAVING=585
+HEADER=586
+HEAP=587
+HELP=588
+HEXTORAW=589
+HEXTOREF=590
+HIDDEN_KEYWORD=591
+HIDE=592
+HIERARCHY=593
+HIGH=594
+HINTSET_BEGIN=595
+HINTSET_END=596
+HOT=597
+HOUR=598
+HWM_BROKERED=599
+HYBRID=600
+IDENTIFIED=601
+IDENTIFIER=602
+IDENTITY=603
+IDGENERATORS=604
+ID=605
+IDLE_TIME=606
+IF=607
+IGNORE=608
+IGNORE_OPTIM_EMBEDDED_HINTS=609
+IGNORE_ROW_ON_DUPKEY_INDEX=610
+IGNORE_WHERE_CLAUSE=611
+ILM=612
+IMMEDIATE=613
+IMPACT=614
+IMPORT=615
+INACTIVE=616
+INCLUDE=617
+INCLUDE_VERSION=618
+INCLUDING=619
+INCREMENTAL=620
+INCREMENT=621
+INCR=622
+INDENT=623
+INDEX_ASC=624
+INDEX_COMBINE=625
+INDEX_DESC=626
+INDEXED=627
+INDEXES=628
+INDEX_FFS=629
+INDEX_FILTER=630
+INDEX=631
+INDEXING=632
+INDEX_JOIN=633
+INDEX_ROWS=634
+INDEX_RRS=635
+INDEX_RS_ASC=636
+INDEX_RS_DESC=637
+INDEX_RS=638
+INDEX_SCAN=639
+INDEX_SKIP_SCAN=640
+INDEX_SS_ASC=641
+INDEX_SS_DESC=642
+INDEX_SS=643
+INDEX_STATS=644
+INDEXTYPE=645
+INDEXTYPES=646
+INDICATOR=647
+INDICES=648
+INFINITE=649
+INFORMATIONAL=650
+INHERIT=651
+IN=652
+INITCAP=653
+INITIAL=654
+INITIALIZED=655
+INITIALLY=656
+INITRANS=657
+INLINE=658
+INLINE_XMLTYPE_NT=659
+INMEMORY=660
+IN_MEMORY_METADATA=661
+INMEMORY_PRUNING=662
+INNER=663
+INOUT=664
+INPLACE=665
+INSERTCHILDXMLAFTER=666
+INSERTCHILDXMLBEFORE=667
+INSERTCHILDXML=668
+INSERT=669
+INSERTXMLAFTER=670
+INSERTXMLBEFORE=671
+INSTANCE=672
+INSTANCES=673
+INSTANTIABLE=674
+INSTANTLY=675
+INSTEAD=676
+INSTR2=677
+INSTR4=678
+INSTRB=679
+INSTRC=680
+INSTR=681
+INTEGER=682
+INTERLEAVED=683
+INTERMEDIATE=684
+INTERNAL_CONVERT=685
+INTERNAL_USE=686
+INTERPRETED=687
+INTERSECT=688
+INTERVAL=689
+INT=690
+INTO=691
+INVALIDATE=692
+INVISIBLE=693
+IN_XQUERY=694
+IS=695
+ISOLATION=696
+ISOLATION_LEVEL=697
+ITERATE=698
+ITERATION_NUMBER=699
+JAVA=700
+JOB=701
+JOIN=702
+JSON_ARRAYAGG=703
+JSON_ARRAY=704
+JSON_EQUAL=705
+JSON_EXISTS2=706
+JSON_EXISTS=707
+JSONGET=708
+JSON=709
+JSON_OBJECTAGG=710
+JSON_OBJECT=711
+JSONPARSE=712
+JSON_QUERY=713
+JSON_SERIALIZE=714
+JSON_TABLE=715
+JSON_TEXTCONTAINS2=716
+JSON_TEXTCONTAINS=717
+JSON_VALUE=718
+KEEP_DUPLICATES=719
+KEEP=720
+KERBEROS=721
+KEY=722
+KEY_LENGTH=723
+KEYSIZE=724
+KEYS=725
+KEYSTORE=726
+KILL=727
+LABEL=728
+LANGUAGE=729
+LAST_DAY=730
+LAST=731
+LAST_VALUE=732
+LATERAL=733
+LAX=734
+LAYER=735
+LDAP_REGISTRATION_ENABLED=736
+LDAP_REGISTRATION=737
+LDAP_REG_SYNC_INTERVAL=738
+LEADING=739
+LEFT=740
+LENGTH2=741
+LENGTH4=742
+LENGTHB=743
+LENGTHC=744
+LENGTH=745
+LESS=746
+LEVEL=747
+LEVELS=748
+LIBRARY=749
+LIFECYCLE=750
+LIFE=751
+LIFETIME=752
+LIKE2=753
+LIKE4=754
+LIKEC=755
+LIKE_EXPAND=756
+LIKE=757
+LIMIT=758
+LINEAR=759
+LINK=760
+LIST=761
+LN=762
+LNNVL=763
+LOAD=764
+LOB=765
+LOBNVL=766
+LOBS=767
+LOCAL_INDEXES=768
+LOCAL=769
+LOCALTIME=770
+LOCALTIMESTAMP=771
+LOCATION=772
+LOCATOR=773
+LOCKED=774
+LOCKING=775
+LOCK=776
+LOGFILE=777
+LOGFILES=778
+LOGGING=779
+LOGICAL=780
+LOGICAL_READS_PER_CALL=781
+LOGICAL_READS_PER_SESSION=782
+LOG=783
+LOGMINING=784
+LOGOFF=785
+LOGON=786
+LOG_READ_ONLY_VIOLATIONS=787
+LONG=788
+LOOP=789
+LOWER=790
+LOW=791
+LPAD=792
+LTRIM=793
+MAIN=794
+MAKE_REF=795
+MANAGED=796
+MANAGE=797
+MANAGEMENT=798
+MANAGER=799
+MANUAL=800
+MAP=801
+MAPPING=802
+MASTER=803
+MATCHED=804
+MATCHES=805
+MATCH=806
+MATCH_NUMBER=807
+MATCH_RECOGNIZE=808
+MATERIALIZED=809
+MATERIALIZE=810
+MAXARCHLOGS=811
+MAXDATAFILES=812
+MAXEXTENTS=813
+MAXIMIZE=814
+MAXINSTANCES=815
+MAXLOGFILES=816
+MAXLOGHISTORY=817
+MAXLOGMEMBERS=818
+MAX_SHARED_TEMP_SIZE=819
+MAXSIZE=820
+MAXTRANS=821
+MAXVALUE=822
+MEASURE=823
+MEASURES=824
+MEDIUM=825
+MEMBER=826
+MEMCOMPRESS=827
+MEMORY=828
+MERGEACTIONS=829
+MERGE_AJ=830
+MERGE_CONST_ON=831
+MERGE=832
+MERGE_SJ=833
+METADATA=834
+METHOD=835
+MIGRATE=836
+MIGRATION=837
+MINEXTENTS=838
+MINIMIZE=839
+MINIMUM=840
+MINING=841
+MINUS=842
+MINUS_NULL=843
+MINUTE=844
+MINVALUE=845
+MIRRORCOLD=846
+MIRRORHOT=847
+MIRROR=848
+MLSLABEL=849
+MODEL_COMPILE_SUBQUERY=850
+MODEL_DONTVERIFY_UNIQUENESS=851
+MODEL_DYNAMIC_SUBQUERY=852
+MODEL_MIN_ANALYSIS=853
+MODEL=854
+MODEL_NB=855
+MODEL_NO_ANALYSIS=856
+MODEL_PBY=857
+MODEL_PUSH_REF=858
+MODEL_SV=859
+MODE=860
+MODIFICATION=861
+MODIFY_COLUMN_TYPE=862
+MODIFY=863
+MOD=864
+MODULE=865
+MONITORING=866
+MONITOR=867
+MONTH=868
+MONTHS_BETWEEN=869
+MONTHS=870
+MOUNT=871
+MOUNTPATH=872
+MOVEMENT=873
+MOVE=874
+MULTIDIMENSIONAL=875
+MULTISET=876
+MV_MERGE=877
+NAMED=878
+NAME=879
+NAMESPACE=880
+NAN=881
+NANVL=882
+NATIONAL=883
+NATIVE_FULL_OUTER_JOIN=884
+NATIVE=885
+NATURAL=886
+NATURALN=887
+NAV=888
+NCHAR_CS=889
+NCHAR=890
+NCHR=891
+NCLOB=892
+NEEDED=893
+NEG=894
+NESTED=895
+NESTED_TABLE_FAST_INSERT=896
+NESTED_TABLE_GET_REFS=897
+NESTED_TABLE_ID=898
+NESTED_TABLE_SET_REFS=899
+NESTED_TABLE_SET_SETID=900
+NETWORK=901
+NEVER=902
+NEW=903
+NEW_TIME=904
+NEXT_DAY=905
+NEXT=906
+NL_AJ=907
+NLJ_BATCHING=908
+NLJ_INDEX_FILTER=909
+NLJ_INDEX_SCAN=910
+NLJ_PREFETCH=911
+NLS_CALENDAR=912
+NLS_CHARACTERSET=913
+NLS_CHARSET_DECL_LEN=914
+NLS_CHARSET_ID=915
+NLS_CHARSET_NAME=916
+NLS_COMP=917
+NLS_CURRENCY=918
+NLS_DATE_FORMAT=919
+NLS_DATE_LANGUAGE=920
+NLS_INITCAP=921
+NLS_ISO_CURRENCY=922
+NL_SJ=923
+NLS_LANG=924
+NLS_LANGUAGE=925
+NLS_LENGTH_SEMANTICS=926
+NLS_LOWER=927
+NLS_NCHAR_CONV_EXCP=928
+NLS_NUMERIC_CHARACTERS=929
+NLS_SORT=930
+NLSSORT=931
+NLS_SPECIAL_CHARS=932
+NLS_TERRITORY=933
+NLS_UPPER=934
+NO_ACCESS=935
+NO_ADAPTIVE_PLAN=936
+NO_ANSI_REARCH=937
+NOAPPEND=938
+NOARCHIVELOG=939
+NOAUDIT=940
+NO_AUTO_REOPTIMIZE=941
+NO_BASETABLE_MULTIMV_REWRITE=942
+NO_BATCH_TABLE_ACCESS_BY_ROWID=943
+NO_BIND_AWARE=944
+NO_BUFFER=945
+NOCACHE=946
+NO_CARTESIAN=947
+NO_CHECK_ACL_REWRITE=948
+NO_CLUSTER_BY_ROWID=949
+NO_CLUSTERING=950
+NO_COALESCE_SQ=951
+NO_COMMON_DATA=952
+NOCOMPRESS=953
+NO_CONNECT_BY_CB_WHR_ONLY=954
+NO_CONNECT_BY_COMBINE_SW=955
+NO_CONNECT_BY_COST_BASED=956
+NO_CONNECT_BY_ELIM_DUPS=957
+NO_CONNECT_BY_FILTERING=958
+NOCOPY=959
+NO_COST_XML_QUERY_REWRITE=960
+NO_CPU_COSTING=961
+NOCPU_COSTING=962
+NOCYCLE=963
+NO_DATA_SECURITY_REWRITE=964
+NO_DECORRELATE=965
+NODELAY=966
+NO_DOMAIN_INDEX_FILTER=967
+NO_DST_UPGRADE_INSERT_CONV=968
+NO_ELIM_GROUPBY=969
+NO_ELIMINATE_JOIN=970
+NO_ELIMINATE_OBY=971
+NO_ELIMINATE_OUTER_JOIN=972
+NOENTITYESCAPING=973
+NO_EXPAND_GSET_TO_UNION=974
+NO_EXPAND=975
+NO_EXPAND_TABLE=976
+NO_FACT=977
+NO_FACTORIZE_JOIN=978
+NO_FILTERING=979
+NOFORCE=980
+NO_FULL_OUTER_JOIN_TO_OUTER=981
+NO_GATHER_OPTIMIZER_STATISTICS=982
+NO_GBY_PUSHDOWN=983
+NOGUARANTEE=984
+NO_INDEX_FFS=985
+NO_INDEX=986
+NO_INDEX_SS=987
+NO_INMEMORY=988
+NO_INMEMORY_PRUNING=989
+NOKEEP=990
+NO_LOAD=991
+NOLOCAL=992
+NOLOGGING=993
+NOMAPPING=994
+NOMAXVALUE=995
+NO_MERGE=996
+NOMINIMIZE=997
+NOMINVALUE=998
+NO_MODEL_PUSH_REF=999
+NO_MONITORING=1000
+NOMONITORING=1001
+NO_MONITOR=1002
+NO_MULTIMV_REWRITE=1003
+NO_NATIVE_FULL_OUTER_JOIN=1004
+NONBLOCKING=1005
+NONEDITIONABLE=1006
+NONE=1007
+NO_NLJ_BATCHING=1008
+NO_NLJ_PREFETCH=1009
+NO=1010
+NONSCHEMA=1011
+NO_OBJECT_LINK=1012
+NOORDER=1013
+NO_ORDER_ROLLUPS=1014
+NO_OUTER_JOIN_TO_ANTI=1015
+NO_OUTER_JOIN_TO_INNER=1016
+NOOVERRIDE=1017
+NO_PARALLEL_INDEX=1018
+NOPARALLEL_INDEX=1019
+NO_PARALLEL=1020
+NOPARALLEL=1021
+NO_PARTIAL_COMMIT=1022
+NO_PARTIAL_JOIN=1023
+NO_PARTIAL_ROLLUP_PUSHDOWN=1024
+NOPARTITION=1025
+NO_PLACE_DISTINCT=1026
+NO_PLACE_GROUP_BY=1027
+NO_PQ_CONCURRENT_UNION=1028
+NO_PQ_MAP=1029
+NO_PQ_REPLICATE=1030
+NO_PQ_SKEW=1031
+NO_PRUNE_GSETS=1032
+NO_PULL_PRED=1033
+NO_PUSH_PRED=1034
+NO_PUSH_SUBQ=1035
+NO_PX_FAULT_TOLERANCE=1036
+NO_PX_JOIN_FILTER=1037
+NO_QKN_BUFF=1038
+NO_QUERY_TRANSFORMATION=1039
+NO_REF_CASCADE=1040
+NORELOCATE=1041
+NORELY=1042
+NOREPAIR=1043
+NOREPLAY=1044
+NORESETLOGS=1045
+NO_RESULT_CACHE=1046
+NOREVERSE=1047
+NO_REWRITE=1048
+NOREWRITE=1049
+NORMAL=1050
+NO_ROOT_SW_FOR_LOCAL=1051
+NOROWDEPENDENCIES=1052
+NOSCHEMACHECK=1053
+NOSEGMENT=1054
+NO_SEMIJOIN=1055
+NO_SEMI_TO_INNER=1056
+NO_SET_TO_JOIN=1057
+NOSORT=1058
+NO_SQL_TRANSLATION=1059
+NO_SQL_TUNE=1060
+NO_STAR_TRANSFORMATION=1061
+NO_STATEMENT_QUEUING=1062
+NO_STATS_GSETS=1063
+NOSTRICT=1064
+NO_SUBQUERY_PRUNING=1065
+NO_SUBSTRB_PAD=1066
+NO_SWAP_JOIN_INPUTS=1067
+NOSWITCH=1068
+NO_TABLE_LOOKUP_BY_NL=1069
+NO_TEMP_TABLE=1070
+NOTHING=1071
+NOTIFICATION=1072
+NOT=1073
+NO_TRANSFORM_DISTINCT_AGG=1074
+NO_UNNEST=1075
+NO_USE_CUBE=1076
+NO_USE_HASH_AGGREGATION=1077
+NO_USE_HASH_GBY_FOR_PUSHDOWN=1078
+NO_USE_HASH=1079
+NO_USE_INVISIBLE_INDEXES=1080
+NO_USE_MERGE=1081
+NO_USE_NL=1082
+NO_USE_VECTOR_AGGREGATION=1083
+NOVALIDATE=1084
+NO_VECTOR_TRANSFORM_DIMS=1085
+NO_VECTOR_TRANSFORM_FACT=1086
+NO_VECTOR_TRANSFORM=1087
+NOWAIT=1088
+NO_XDB_FASTPATH_INSERT=1089
+NO_XML_DML_REWRITE=1090
+NO_XMLINDEX_REWRITE_IN_SELECT=1091
+NO_XMLINDEX_REWRITE=1092
+NO_XML_QUERY_REWRITE=1093
+NO_ZONEMAP=1094
+NTH_VALUE=1095
+NULLIF=1096
+NULL_=1097
+NULLS=1098
+NUMBER=1099
+NUMERIC=1100
+NUM_INDEX_KEYS=1101
+NUMTODSINTERVAL=1102
+NUMTOYMINTERVAL=1103
+NVARCHAR2=1104
+NVL2=1105
+OBJECT2XML=1106
+OBJECT=1107
+OBJ_ID=1108
+OBJNO=1109
+OBJNO_REUSE=1110
+OCCURENCES=1111
+OFFLINE=1112
+OFF=1113
+OFFSET=1114
+OF=1115
+OIDINDEX=1116
+OID=1117
+OLAP=1118
+OLD=1119
+OLD_PUSH_PRED=1120
+OLS=1121
+OLTP=1122
+OMIT=1123
+ONE=1124
+ONLINE=1125
+ONLINELOG=1126
+ONLY=1127
+ON=1128
+OPAQUE=1129
+OPAQUE_TRANSFORM=1130
+OPAQUE_XCANONICAL=1131
+OPCODE=1132
+OPEN=1133
+OPERATIONS=1134
+OPERATOR=1135
+OPT_ESTIMATE=1136
+OPTIMAL=1137
+OPTIMIZE=1138
+OPTIMIZER_FEATURES_ENABLE=1139
+OPTIMIZER_GOAL=1140
+OPTION=1141
+OPT_PARAM=1142
+ORA_BRANCH=1143
+ORA_CHECK_ACL=1144
+ORA_CHECK_PRIVILEGE=1145
+ORA_CLUSTERING=1146
+ORADATA=1147
+ORADEBUG=1148
+ORA_DST_AFFECTED=1149
+ORA_DST_CONVERT=1150
+ORA_DST_ERROR=1151
+ORA_GET_ACLIDS=1152
+ORA_GET_PRIVILEGES=1153
+ORA_HASH=1154
+ORA_INVOKING_USERID=1155
+ORA_INVOKING_USER=1156
+ORA_INVOKING_XS_USER_GUID=1157
+ORA_INVOKING_XS_USER=1158
+ORA_RAWCOMPARE=1159
+ORA_RAWCONCAT=1160
+ORA_ROWSCN=1161
+ORA_ROWSCN_RAW=1162
+ORA_ROWVERSION=1163
+ORA_TABVERSION=1164
+ORA_WRITE_TIME=1165
+ORDERED=1166
+ORDERED_PREDICATES=1167
+ORDER=1168
+ORDINALITY=1169
+OR_EXPAND=1170
+ORGANIZATION=1171
+OR=1172
+OR_PREDICATES=1173
+OSERROR=1174
+OTHER=1175
+OUTER_JOIN_TO_ANTI=1176
+OUTER_JOIN_TO_INNER=1177
+OUTER=1178
+OUTLINE_LEAF=1179
+OUTLINE=1180
+OUT_OF_LINE=1181
+OUT=1182
+OVERFLOW_NOMOVE=1183
+OVERFLOW=1184
+OVERLAPS=1185
+OVER=1186
+OVERRIDING=1187
+OWNER=1188
+OWNERSHIP=1189
+OWN=1190
+PACKAGE=1191
+PACKAGES=1192
+PARALLEL_ENABLE=1193
+PARALLEL_INDEX=1194
+PARALLEL=1195
+PARAMETERFILE=1196
+PARAMETERS=1197
+PARAM=1198
+PARENT=1199
+PARITY=1200
+PARTIAL_JOIN=1201
+PARTIALLY=1202
+PARTIAL=1203
+PARTIAL_ROLLUP_PUSHDOWN=1204
+PARTITION_HASH=1205
+PARTITION_LIST=1206
+PARTITION=1207
+PARTITION_RANGE=1208
+PARTITIONS=1209
+PARTNUMINST=1210
+PASSING=1211
+PASSWORD_GRACE_TIME=1212
+PASSWORD_LIFE_TIME=1213
+PASSWORD_LOCK_TIME=1214
+PASSWORD=1215
+PASSWORD_REUSE_MAX=1216
+PASSWORD_REUSE_TIME=1217
+PASSWORD_VERIFY_FUNCTION=1218
+PAST=1219
+PATCH=1220
+PATH=1221
+PATH_PREFIX=1222
+PATHS=1223
+PATTERN=1224
+PBL_HS_BEGIN=1225
+PBL_HS_END=1226
+PCTFREE=1227
+PCTINCREASE=1228
+PCTTHRESHOLD=1229
+PCTUSED=1230
+PCTVERSION=1231
+PENDING=1232
+PERCENT_FOUND=1233
+PERCENT_ISOPEN=1234
+PERCENT_NOTFOUND=1235
+PERCENT_KEYWORD=1236
+PERCENT_RANKM=1237
+PERCENT_ROWCOUNT=1238
+PERCENT_ROWTYPE=1239
+PERCENT_TYPE=1240
+PERFORMANCE=1241
+PERIOD_KEYWORD=1242
+PERMANENT=1243
+PERMISSION=1244
+PERMUTE=1245
+PER=1246
+PFILE=1247
+PHYSICAL=1248
+PIKEY=1249
+PIPELINED=1250
+PIPE=1251
+PIV_GB=1252
+PIVOT=1253
+PIV_SSF=1254
+PLACE_DISTINCT=1255
+PLACE_GROUP_BY=1256
+PLAN=1257
+PLSCOPE_SETTINGS=1258
+PLS_INTEGER=1259
+PLSQL_CCFLAGS=1260
+PLSQL_CODE_TYPE=1261
+PLSQL_DEBUG=1262
+PLSQL_OPTIMIZE_LEVEL=1263
+PLSQL_WARNINGS=1264
+PLUGGABLE=1265
+POINT=1266
+POLICY=1267
+POOL_16K=1268
+POOL_2K=1269
+POOL_32K=1270
+POOL_4K=1271
+POOL_8K=1272
+POSITIVEN=1273
+POSITIVE=1274
+POST_TRANSACTION=1275
+POWERMULTISET_BY_CARDINALITY=1276
+POWERMULTISET=1277
+POWER=1278
+PQ_CONCURRENT_UNION=1279
+PQ_DISTRIBUTE=1280
+PQ_DISTRIBUTE_WINDOW=1281
+PQ_FILTER=1282
+PQ_MAP=1283
+PQ_NOMAP=1284
+PQ_REPLICATE=1285
+PQ_SKEW=1286
+PRAGMA=1287
+PREBUILT=1288
+PRECEDES=1289
+PRECEDING=1290
+PRECISION=1291
+PRECOMPUTE_SUBQUERY=1292
+PREDICATE_REORDERS=1293
+PRELOAD=1294
+PREPARE=1295
+PRESENTNNV=1296
+PRESENT=1297
+PRESENTV=1298
+PRESERVE_OID=1299
+PRESERVE=1300
+PRETTY=1301
+PREVIOUS=1302
+PREV=1303
+PRIMARY=1304
+PRINTBLOBTOCLOB=1305
+PRIORITY=1306
+PRIOR=1307
+PRIVATE=1308
+PRIVATE_SGA=1309
+PRIVILEGED=1310
+PRIVILEGE=1311
+PRIVILEGES=1312
+PROCEDURAL=1313
+PROCEDURE=1314
+PROCESS=1315
+PROFILE=1316
+PROGRAM=1317
+PROJECT=1318
+PROPAGATE=1319
+PROTECTED=1320
+PROTECTION=1321
+PROXY=1322
+PRUNING=1323
+PUBLIC=1324
+PULL_PRED=1325
+PURGE=1326
+PUSH_PRED=1327
+PUSH_SUBQ=1328
+PX_FAULT_TOLERANCE=1329
+PX_GRANULE=1330
+PX_JOIN_FILTER=1331
+QB_NAME=1332
+QUERY_BLOCK=1333
+QUERY=1334
+QUEUE_CURR=1335
+QUEUE=1336
+QUEUE_ROWP=1337
+QUIESCE=1338
+QUORUM=1339
+QUOTA=1340
+RAISE=1341
+RANDOM_LOCAL=1342
+RANDOM=1343
+RANGE=1344
+RANKM=1345
+RAPIDLY=1346
+RAW=1347
+RAWTOHEX=1348
+RAWTONHEX=1349
+RBA=1350
+RBO_OUTLINE=1351
+RDBA=1352
+READ=1353
+READS=1354
+REALM=1355
+REAL=1356
+REBALANCE=1357
+REBUILD=1358
+RECORD=1359
+RECORDS_PER_BLOCK=1360
+RECOVERABLE=1361
+RECOVER=1362
+RECOVERY=1363
+RECYCLEBIN=1364
+RECYCLE=1365
+REDACTION=1366
+REDEFINE=1367
+REDO=1368
+REDUCED=1369
+REDUNDANCY=1370
+REF_CASCADE_CURSOR=1371
+REFERENCED=1372
+REFERENCE=1373
+REFERENCES=1374
+REFERENCING=1375
+REF=1376
+REFRESH=1377
+REFTOHEX=1378
+REGEXP_COUNT=1379
+REGEXP_INSTR=1380
+REGEXP_LIKE=1381
+REGEXP_REPLACE=1382
+REGEXP_SUBSTR=1383
+REGISTER=1384
+REGR_AVGX=1385
+REGR_AVGY=1386
+REGR_COUNT=1387
+REGR_INTERCEPT=1388
+REGR_R2=1389
+REGR_SLOPE=1390
+REGR_SXX=1391
+REGR_SXY=1392
+REGR_SYY=1393
+REGULAR=1394
+REJECT=1395
+REKEY=1396
+RELATIONAL=1397
+RELIES_ON=1398
+RELOCATE=1399
+RELY=1400
+REMAINDER=1401
+REMOTE_MAPPED=1402
+REMOVE=1403
+RENAME=1404
+REPAIR=1405
+REPEAT=1406
+REPLACE=1407
+REPLICATION=1408
+REQUIRED=1409
+RESETLOGS=1410
+RESET=1411
+RESIZE=1412
+RESOLVE=1413
+RESOLVER=1414
+RESOURCE=1415
+RESPECT=1416
+RESTART=1417
+RESTORE_AS_INTERVALS=1418
+RESTORE=1419
+RESTRICT_ALL_REF_CONS=1420
+RESTRICTED=1421
+RESTRICT_REFERENCES=1422
+RESTRICT=1423
+RESULT_CACHE=1424
+RESULT=1425
+RESUMABLE=1426
+RESUME=1427
+RETENTION=1428
+RETRY_ON_ROW_CHANGE=1429
+RETURNING=1430
+RETURN=1431
+REUSE=1432
+REVERSE=1433
+REVOKE=1434
+REWRITE_OR_ERROR=1435
+REWRITE=1436
+RIGHT=1437
+ROLE=1438
+ROLESET=1439
+ROLES=1440
+ROLLBACK=1441
+ROLLING=1442
+ROLLUP=1443
+ROWDEPENDENCIES=1444
+ROWID_MAPPING_TABLE=1445
+ROWID=1446
+ROWIDTOCHAR=1447
+ROWIDTONCHAR=1448
+ROW_LENGTH=1449
+ROWNUM=1450
+ROW=1451
+ROWS=1452
+RPAD=1453
+RTRIM=1454
+RULE=1455
+RULES=1456
+RUNNING=1457
+SALT=1458
+SAMPLE=1459
+SAVE_AS_INTERVALS=1460
+SAVEPOINT=1461
+SAVE=1462
+SB4=1463
+SCALE_ROWS=1464
+SCALE=1465
+SCAN_INSTANCES=1466
+SCAN=1467
+SCHEDULER=1468
+SCHEMACHECK=1469
+SCHEMA=1470
+SCN_ASCENDING=1471
+SCN=1472
+SCOPE=1473
+SCRUB=1474
+SD_ALL=1475
+SD_INHIBIT=1476
+SDO_GEOM_MBR=1477
+SD_SHOW=1478
+SEARCH=1479
+SECOND=1480
+SECRET=1481
+SECUREFILE_DBA=1482
+SECUREFILE=1483
+SECURITY=1484
+SEED=1485
+SEG_BLOCK=1486
+SEG_FILE=1487
+SEGMENT=1488
+SELECTIVITY=1489
+SELECT=1490
+SELF=1491
+SEMIJOIN_DRIVER=1492
+SEMIJOIN=1493
+SEMI_TO_INNER=1494
+SEQUENCED=1495
+SEQUENCE=1496
+SEQUENTIAL=1497
+SEQ=1498
+SERIALIZABLE=1499
+SERIALLY_REUSABLE=1500
+SERIAL=1501
+SERVERERROR=1502
+SERVICE_NAME_CONVERT=1503
+SERVICES=1504
+SESSION_CACHED_CURSORS=1505
+SESSION=1506
+SESSIONS_PER_USER=1507
+SESSIONTIMEZONE=1508
+SESSIONTZNAME=1509
+SET=1510
+SETS=1511
+SETTINGS=1512
+SET_TO_JOIN=1513
+SEVERE=1514
+SHARED_POOL=1515
+SHARED=1516
+SHARE=1517
+SHARING=1518
+SHELFLIFE=1519
+SHOW=1520
+SHRINK=1521
+SHUTDOWN=1522
+SIBLINGS=1523
+SID=1524
+SIGNAL_COMPONENT=1525
+SIGNAL_FUNCTION=1526
+SIGN=1527
+SIGNTYPE=1528
+SIMPLE_INTEGER=1529
+SIMPLE=1530
+SINGLE=1531
+SINGLETASK=1532
+SINH=1533
+SIN=1534
+SIZE=1535
+SKIP_EXT_OPTIMIZER=1536
+SKIP_=1537
+SKIP_UNQ_UNUSABLE_IDX=1538
+SKIP_UNUSABLE_INDEXES=1539
+SMALLFILE=1540
+SMALLINT=1541
+SNAPSHOT=1542
+SOME=1543
+SORT=1544
+SOUNDEX=1545
+SOURCE_FILE_DIRECTORY=1546
+SOURCE_FILE_NAME_CONVERT=1547
+SOURCE=1548
+SPACE_KEYWORD=1549
+SPECIFICATION=1550
+SPFILE=1551
+SPLIT=1552
+SPREADSHEET=1553
+SQLDATA=1554
+SQLERROR=1555
+SQLLDR=1556
+SQL=1557
+SQL_TRACE=1558
+SQL_TRANSLATION_PROFILE=1559
+SQRT=1560
+STALE=1561
+STANDALONE=1562
+STANDARD_HASH=1563
+STANDBY_MAX_DATA_DELAY=1564
+STANDBYS=1565
+STANDBY=1566
+STAR=1567
+STAR_TRANSFORMATION=1568
+START=1569
+STARTUP=1570
+STATEMENT_ID=1571
+STATEMENT_QUEUING=1572
+STATEMENTS=1573
+STATEMENT=1574
+STATE=1575
+STATIC=1576
+STATISTICS=1577
+STATS_BINOMIAL_TEST=1578
+STATS_CROSSTAB=1579
+STATS_F_TEST=1580
+STATS_KS_TEST=1581
+STATS_MODE=1582
+STATS_MW_TEST=1583
+STATS_ONE_WAY_ANOVA=1584
+STATS_T_TEST_INDEP=1585
+STATS_T_TEST_INDEPU=1586
+STATS_T_TEST_ONE=1587
+STATS_T_TEST_PAIRED=1588
+STATS_WSR_TEST=1589
+STDDEV_POP=1590
+STDDEV_SAMP=1591
+STOP=1592
+STORAGE=1593
+STORE=1594
+STREAMS=1595
+STREAM=1596
+STRICT=1597
+STRING=1598
+STRIPE_COLUMNS=1599
+STRIPE_WIDTH=1600
+STRIP=1601
+STRUCTURE=1602
+SUBMULTISET=1603
+SUBPARTITION_REL=1604
+SUBPARTITIONS=1605
+SUBPARTITION=1606
+SUBQUERIES=1607
+SUBQUERY_PRUNING=1608
+SUBSCRIBE=1609
+SUBSET=1610
+SUBSTITUTABLE=1611
+SUBSTR2=1612
+SUBSTR4=1613
+SUBSTRB=1614
+SUBSTRC=1615
+SUBTYPE=1616
+SUCCESSFUL=1617
+SUCCESS=1618
+SUMMARY=1619
+SUPPLEMENTAL=1620
+SUSPEND=1621
+SWAP_JOIN_INPUTS=1622
+SWITCHOVER=1623
+SWITCH=1624
+SYNCHRONOUS=1625
+SYNC=1626
+SYNONYM=1627
+SYSASM=1628
+SYS_AUDIT=1629
+SYSAUX=1630
+SYSBACKUP=1631
+SYS_CHECKACL=1632
+SYS_CHECK_PRIVILEGE=1633
+SYS_CONNECT_BY_PATH=1634
+SYS_CONTEXT=1635
+SYSDATE=1636
+SYSDBA=1637
+SYS_DBURIGEN=1638
+SYSDG=1639
+SYS_DL_CURSOR=1640
+SYS_DM_RXFORM_CHR=1641
+SYS_DM_RXFORM_NUM=1642
+SYS_DOM_COMPARE=1643
+SYS_DST_PRIM2SEC=1644
+SYS_DST_SEC2PRIM=1645
+SYS_ET_BFILE_TO_RAW=1646
+SYS_ET_BLOB_TO_IMAGE=1647
+SYS_ET_IMAGE_TO_BLOB=1648
+SYS_ET_RAW_TO_BFILE=1649
+SYS_EXTPDTXT=1650
+SYS_EXTRACT_UTC=1651
+SYS_FBT_INSDEL=1652
+SYS_FILTER_ACLS=1653
+SYS_FNMATCHES=1654
+SYS_FNREPLACE=1655
+SYS_GET_ACLIDS=1656
+SYS_GET_COL_ACLIDS=1657
+SYS_GET_PRIVILEGES=1658
+SYS_GETTOKENID=1659
+SYS_GETXTIVAL=1660
+SYS_GUID=1661
+SYSGUID=1662
+SYSKM=1663
+SYS_MAKE_XMLNODEID=1664
+SYS_MAKEXML=1665
+SYS_MKXMLATTR=1666
+SYS_MKXTI=1667
+SYSOBJ=1668
+SYS_OP_ADT2BIN=1669
+SYS_OP_ADTCONS=1670
+SYS_OP_ALSCRVAL=1671
+SYS_OP_ATG=1672
+SYS_OP_BIN2ADT=1673
+SYS_OP_BITVEC=1674
+SYS_OP_BL2R=1675
+SYS_OP_BLOOM_FILTER_LIST=1676
+SYS_OP_BLOOM_FILTER=1677
+SYS_OP_C2C=1678
+SYS_OP_CAST=1679
+SYS_OP_CEG=1680
+SYS_OP_CL2C=1681
+SYS_OP_COMBINED_HASH=1682
+SYS_OP_COMP=1683
+SYS_OP_CONVERT=1684
+SYS_OP_COUNTCHG=1685
+SYS_OP_CSCONV=1686
+SYS_OP_CSCONVTEST=1687
+SYS_OP_CSR=1688
+SYS_OP_CSX_PATCH=1689
+SYS_OP_CYCLED_SEQ=1690
+SYS_OP_DECOMP=1691
+SYS_OP_DESCEND=1692
+SYS_OP_DISTINCT=1693
+SYS_OP_DRA=1694
+SYS_OP_DUMP=1695
+SYS_OP_DV_CHECK=1696
+SYS_OP_ENFORCE_NOT_NULL=1697
+SYSOPER=1698
+SYS_OP_EXTRACT=1699
+SYS_OP_GROUPING=1700
+SYS_OP_GUID=1701
+SYS_OP_HASH=1702
+SYS_OP_IIX=1703
+SYS_OP_ITR=1704
+SYS_OP_KEY_VECTOR_CREATE=1705
+SYS_OP_KEY_VECTOR_FILTER_LIST=1706
+SYS_OP_KEY_VECTOR_FILTER=1707
+SYS_OP_KEY_VECTOR_SUCCEEDED=1708
+SYS_OP_KEY_VECTOR_USE=1709
+SYS_OP_LBID=1710
+SYS_OP_LOBLOC2BLOB=1711
+SYS_OP_LOBLOC2CLOB=1712
+SYS_OP_LOBLOC2ID=1713
+SYS_OP_LOBLOC2NCLOB=1714
+SYS_OP_LOBLOC2TYP=1715
+SYS_OP_LSVI=1716
+SYS_OP_LVL=1717
+SYS_OP_MAKEOID=1718
+SYS_OP_MAP_NONNULL=1719
+SYS_OP_MSR=1720
+SYS_OP_NICOMBINE=1721
+SYS_OP_NIEXTRACT=1722
+SYS_OP_NII=1723
+SYS_OP_NIX=1724
+SYS_OP_NOEXPAND=1725
+SYS_OP_NTCIMG=1726
+SYS_OP_NUMTORAW=1727
+SYS_OP_OIDVALUE=1728
+SYS_OP_OPNSIZE=1729
+SYS_OP_PAR_1=1730
+SYS_OP_PARGID_1=1731
+SYS_OP_PARGID=1732
+SYS_OP_PAR=1733
+SYS_OP_PART_ID=1734
+SYS_OP_PIVOT=1735
+SYS_OP_R2O=1736
+SYS_OP_RAWTONUM=1737
+SYS_OP_RDTM=1738
+SYS_OP_REF=1739
+SYS_OP_RMTD=1740
+SYS_OP_ROWIDTOOBJ=1741
+SYS_OP_RPB=1742
+SYS_OPTLOBPRBSC=1743
+SYS_OP_TOSETID=1744
+SYS_OP_TPR=1745
+SYS_OP_TRTB=1746
+SYS_OPTXICMP=1747
+SYS_OPTXQCASTASNQ=1748
+SYS_OP_UNDESCEND=1749
+SYS_OP_VECAND=1750
+SYS_OP_VECBIT=1751
+SYS_OP_VECOR=1752
+SYS_OP_VECXOR=1753
+SYS_OP_VERSION=1754
+SYS_OP_VREF=1755
+SYS_OP_VVD=1756
+SYS_OP_XMLCONS_FOR_CSX=1757
+SYS_OP_XPTHATG=1758
+SYS_OP_XPTHIDX=1759
+SYS_OP_XPTHOP=1760
+SYS_OP_XTXT2SQLT=1761
+SYS_OP_ZONE_ID=1762
+SYS_ORDERKEY_DEPTH=1763
+SYS_ORDERKEY_MAXCHILD=1764
+SYS_ORDERKEY_PARENT=1765
+SYS_PARALLEL_TXN=1766
+SYS_PATHID_IS_ATTR=1767
+SYS_PATHID_IS_NMSPC=1768
+SYS_PATHID_LASTNAME=1769
+SYS_PATHID_LASTNMSPC=1770
+SYS_PATH_REVERSE=1771
+SYS_PXQEXTRACT=1772
+SYS_RAW_TO_XSID=1773
+SYS_RID_ORDER=1774
+SYS_ROW_DELTA=1775
+SYS_SC_2_XMLT=1776
+SYS_SYNRCIREDO=1777
+SYSTEM_DEFINED=1778
+SYSTEM=1779
+SYSTIMESTAMP=1780
+SYS_TYPEID=1781
+SYS_UMAKEXML=1782
+SYS_XMLANALYZE=1783
+SYS_XMLCONTAINS=1784
+SYS_XMLCONV=1785
+SYS_XMLEXNSURI=1786
+SYS_XMLGEN=1787
+SYS_XMLI_LOC_ISNODE=1788
+SYS_XMLI_LOC_ISTEXT=1789
+SYS_XMLINSTR=1790
+SYS_XMLLOCATOR_GETSVAL=1791
+SYS_XMLNODEID_GETCID=1792
+SYS_XMLNODEID_GETLOCATOR=1793
+SYS_XMLNODEID_GETOKEY=1794
+SYS_XMLNODEID_GETPATHID=1795
+SYS_XMLNODEID_GETPTRID=1796
+SYS_XMLNODEID_GETRID=1797
+SYS_XMLNODEID_GETSVAL=1798
+SYS_XMLNODEID_GETTID=1799
+SYS_XMLNODEID=1800
+SYS_XMLT_2_SC=1801
+SYS_XMLTRANSLATE=1802
+SYS_XMLTYPE2SQL=1803
+SYS_XQ_ASQLCNV=1804
+SYS_XQ_ATOMCNVCHK=1805
+SYS_XQBASEURI=1806
+SYS_XQCASTABLEERRH=1807
+SYS_XQCODEP2STR=1808
+SYS_XQCODEPEQ=1809
+SYS_XQCON2SEQ=1810
+SYS_XQCONCAT=1811
+SYS_XQDELETE=1812
+SYS_XQDFLTCOLATION=1813
+SYS_XQDOC=1814
+SYS_XQDOCURI=1815
+SYS_XQDURDIV=1816
+SYS_XQED4URI=1817
+SYS_XQENDSWITH=1818
+SYS_XQERRH=1819
+SYS_XQERR=1820
+SYS_XQESHTMLURI=1821
+SYS_XQEXLOBVAL=1822
+SYS_XQEXSTWRP=1823
+SYS_XQEXTRACT=1824
+SYS_XQEXTRREF=1825
+SYS_XQEXVAL=1826
+SYS_XQFB2STR=1827
+SYS_XQFNBOOL=1828
+SYS_XQFNCMP=1829
+SYS_XQFNDATIM=1830
+SYS_XQFNLNAME=1831
+SYS_XQFNNM=1832
+SYS_XQFNNSURI=1833
+SYS_XQFNPREDTRUTH=1834
+SYS_XQFNQNM=1835
+SYS_XQFNROOT=1836
+SYS_XQFORMATNUM=1837
+SYS_XQFTCONTAIN=1838
+SYS_XQFUNCR=1839
+SYS_XQGETCONTENT=1840
+SYS_XQINDXOF=1841
+SYS_XQINSERT=1842
+SYS_XQINSPFX=1843
+SYS_XQIRI2URI=1844
+SYS_XQLANG=1845
+SYS_XQLLNMFRMQNM=1846
+SYS_XQMKNODEREF=1847
+SYS_XQNILLED=1848
+SYS_XQNODENAME=1849
+SYS_XQNORMSPACE=1850
+SYS_XQNORMUCODE=1851
+SYS_XQ_NRNG=1852
+SYS_XQNSP4PFX=1853
+SYS_XQNSPFRMQNM=1854
+SYS_XQPFXFRMQNM=1855
+SYS_XQ_PKSQL2XML=1856
+SYS_XQPOLYABS=1857
+SYS_XQPOLYADD=1858
+SYS_XQPOLYCEL=1859
+SYS_XQPOLYCSTBL=1860
+SYS_XQPOLYCST=1861
+SYS_XQPOLYDIV=1862
+SYS_XQPOLYFLR=1863
+SYS_XQPOLYMOD=1864
+SYS_XQPOLYMUL=1865
+SYS_XQPOLYRND=1866
+SYS_XQPOLYSQRT=1867
+SYS_XQPOLYSUB=1868
+SYS_XQPOLYUMUS=1869
+SYS_XQPOLYUPLS=1870
+SYS_XQPOLYVEQ=1871
+SYS_XQPOLYVGE=1872
+SYS_XQPOLYVGT=1873
+SYS_XQPOLYVLE=1874
+SYS_XQPOLYVLT=1875
+SYS_XQPOLYVNE=1876
+SYS_XQREF2VAL=1877
+SYS_XQRENAME=1878
+SYS_XQREPLACE=1879
+SYS_XQRESVURI=1880
+SYS_XQRNDHALF2EVN=1881
+SYS_XQRSLVQNM=1882
+SYS_XQRYENVPGET=1883
+SYS_XQRYVARGET=1884
+SYS_XQRYWRP=1885
+SYS_XQSEQ2CON4XC=1886
+SYS_XQSEQ2CON=1887
+SYS_XQSEQDEEPEQ=1888
+SYS_XQSEQINSB=1889
+SYS_XQSEQRM=1890
+SYS_XQSEQRVS=1891
+SYS_XQSEQSUB=1892
+SYS_XQSEQTYPMATCH=1893
+SYS_XQSTARTSWITH=1894
+SYS_XQSTATBURI=1895
+SYS_XQSTR2CODEP=1896
+SYS_XQSTRJOIN=1897
+SYS_XQSUBSTRAFT=1898
+SYS_XQSUBSTRBEF=1899
+SYS_XQTOKENIZE=1900
+SYS_XQTREATAS=1901
+SYS_XQ_UPKXML2SQL=1902
+SYS_XQXFORM=1903
+SYS_XSID_TO_RAW=1904
+SYS_ZMAP_FILTER=1905
+SYS_ZMAP_REFRESH=1906
+TABLE_LOOKUP_BY_NL=1907
+TABLESPACE_NO=1908
+TABLESPACE=1909
+TABLES=1910
+TABLE_STATS=1911
+TABLE=1912
+TABNO=1913
+TAG=1914
+TANH=1915
+TAN=1916
+TBLORIDXPARTNUM=1917
+TEMPFILE=1918
+TEMPLATE=1919
+TEMPORARY=1920
+TEMP_TABLE=1921
+TEST=1922
+TEXT=1923
+THAN=1924
+THEN=1925
+THE=1926
+THREAD=1927
+THROUGH=1928
+TIER=1929
+TIES=1930
+TIMEOUT=1931
+TIMESTAMP_LTZ_UNCONSTRAINED=1932
+TIMESTAMP=1933
+TIMESTAMP_TZ_UNCONSTRAINED=1934
+TIMESTAMP_UNCONSTRAINED=1935
+TIMES=1936
+TIME=1937
+TIMEZONE=1938
+TIMEZONE_ABBR=1939
+TIMEZONE_HOUR=1940
+TIMEZONE_MINUTE=1941
+TIMEZONE_OFFSET=1942
+TIMEZONE_REGION=1943
+TIME_ZONE=1944
+TIV_GB=1945
+TIV_SSF=1946
+TO_ACLID=1947
+TO_BINARY_DOUBLE=1948
+TO_BINARY_FLOAT=1949
+TO_BLOB=1950
+TO_CLOB=1951
+TO_DSINTERVAL=1952
+TO_LOB=1953
+TO_MULTI_BYTE=1954
+TO_NCHAR=1955
+TO_NCLOB=1956
+TO_NUMBER=1957
+TOPLEVEL=1958
+TO_SINGLE_BYTE=1959
+TO_TIMESTAMP=1960
+TO_TIMESTAMP_TZ=1961
+TO_TIME=1962
+TO_TIME_TZ=1963
+TO=1964
+TO_YMINTERVAL=1965
+TRACE=1966
+TRACING=1967
+TRACKING=1968
+TRAILING=1969
+TRANSACTION=1970
+TRANSFORM_DISTINCT_AGG=1971
+TRANSITIONAL=1972
+TRANSITION=1973
+TRANSLATE=1974
+TRANSLATION=1975
+TREAT=1976
+TRIGGERS=1977
+TRIGGER=1978
+TRUE=1979
+TRUNCATE=1980
+TRUNC=1981
+TRUSTED=1982
+TRUST=1983
+TUNING=1984
+TX=1985
+TYPES=1986
+TYPE=1987
+TZ_OFFSET=1988
+UB2=1989
+UBA=1990
+UCS2=1991
+UID=1992
+UNARCHIVED=1993
+UNBOUNDED=1994
+UNBOUND=1995
+UNCONDITIONAL=1996
+UNDER=1997
+UNDO=1998
+UNDROP=1999
+UNIFORM=2000
+UNION=2001
+UNIQUE=2002
+UNISTR=2003
+UNLIMITED=2004
+UNLOAD=2005
+UNLOCK=2006
+UNMATCHED=2007
+UNNEST_INNERJ_DISTINCT_VIEW=2008
+UNNEST_NOSEMIJ_NODISTINCTVIEW=2009
+UNNEST_SEMIJ_VIEW=2010
+UNNEST=2011
+UNPACKED=2012
+UNPIVOT=2013
+UNPLUG=2014
+UNPROTECTED=2015
+UNQUIESCE=2016
+UNRECOVERABLE=2017
+UNRESTRICTED=2018
+UNSUBSCRIBE=2019
+UNTIL=2020
+UNUSABLE=2021
+UNUSED=2022
+UPDATABLE=2023
+UPDATED=2024
+UPDATE=2025
+UPDATEXML=2026
+UPD_INDEXES=2027
+UPD_JOININDEX=2028
+UPGRADE=2029
+UPPER=2030
+UPSERT=2031
+UROWID=2032
+USABLE=2033
+USAGE=2034
+USE_ANTI=2035
+USE_CONCAT=2036
+USE_CUBE=2037
+USE_HASH_AGGREGATION=2038
+USE_HASH_GBY_FOR_PUSHDOWN=2039
+USE_HASH=2040
+USE_HIDDEN_PARTITIONS=2041
+USE_INVISIBLE_INDEXES=2042
+USE_MERGE_CARTESIAN=2043
+USE_MERGE=2044
+USE_NL=2045
+USE_NL_WITH_INDEX=2046
+USE_PRIVATE_OUTLINES=2047
+USER_DATA=2048
+USER_DEFINED=2049
+USERENV=2050
+USERGROUP=2051
+USER_RECYCLEBIN=2052
+USERS=2053
+USER_TABLESPACES=2054
+USER=2055
+USE_SEMI=2056
+USE_STORED_OUTLINES=2057
+USE_TTT_FOR_GSETS=2058
+USE=2059
+USE_VECTOR_AGGREGATION=2060
+USE_WEAK_NAME_RESL=2061
+USING_NO_EXPAND=2062
+USING=2063
+UTF16BE=2064
+UTF16LE=2065
+UTF32=2066
+UTF8=2067
+V1=2068
+V2=2069
+VALIDATE=2070
+VALIDATION=2071
+VALID_TIME_END=2072
+VALUES=2073
+VALUE=2074
+VARCHAR2=2075
+VARCHAR=2076
+VARIABLE=2077
+VAR_POP=2078
+VARRAYS=2079
+VARRAY=2080
+VAR_SAMP=2081
+VARYING=2082
+VECTOR_READ_TRACE=2083
+VECTOR_READ=2084
+VECTOR_TRANSFORM_DIMS=2085
+VECTOR_TRANSFORM_FACT=2086
+VECTOR_TRANSFORM=2087
+VERIFIER=2088
+VERIFY=2089
+VERSIONING=2090
+VERSIONS_ENDSCN=2091
+VERSIONS_ENDTIME=2092
+VERSIONS_OPERATION=2093
+VERSIONS_STARTSCN=2094
+VERSIONS_STARTTIME=2095
+VERSIONS=2096
+VERSIONS_XID=2097
+VERSION=2098
+VIEW=2099
+VIOLATION=2100
+VIRTUAL=2101
+VISIBILITY=2102
+VISIBLE=2103
+VOLUME=2104
+VSIZE=2105
+WAIT=2106
+WALLET=2107
+WARNING=2108
+WEEKS=2109
+WEEK=2110
+WELLFORMED=2111
+WHENEVER=2112
+WHEN=2113
+WHERE=2114
+WHILE=2115
+WHITESPACE=2116
+WIDTH_BUCKET=2117
+WITHIN=2118
+WITHOUT=2119
+WITH_PLSQL=2120
+WITH=2121
+WORK=2122
+WRAPPED=2123
+WRAPPER=2124
+WRITE=2125
+XDB_FASTPATH_INSERT=2126
+XDB=2127
+X_DYN_PRUNE=2128
+XID=2129
+XML2OBJECT=2130
+XMLAGG=2131
+XMLATTRIBUTES=2132
+XMLCAST=2133
+XMLCDATA=2134
+XMLCOLATTVAL=2135
+XMLCOMMENT=2136
+XMLCONCAT=2137
+XMLDIFF=2138
+XML_DML_RWT_STMT=2139
+XMLELEMENT=2140
+XMLEXISTS2=2141
+XMLEXISTS=2142
+XMLFOREST=2143
+XMLINDEX=2144
+XMLINDEX_REWRITE_IN_SELECT=2145
+XMLINDEX_REWRITE=2146
+XMLINDEX_SEL_IDX_TBL=2147
+XMLISNODE=2148
+XMLISVALID=2149
+XMLNAMESPACES=2150
+XMLPARSE=2151
+XMLPATCH=2152
+XMLPI=2153
+XMLQUERYVAL=2154
+XMLQUERY=2155
+XMLROOT=2156
+XMLSCHEMA=2157
+XMLSERIALIZE=2158
+XMLTABLE=2159
+XMLTRANSFORMBLOB=2160
+XMLTRANSFORM=2161
+XMLTYPE=2162
+XML=2163
+XPATHTABLE=2164
+XS_SYS_CONTEXT=2165
+XS=2166
+XTRANSPORT=2167
+YEARS=2168
+YEAR=2169
+YES=2170
+YMINTERVAL_UNCONSTRAINED=2171
+ZONEMAP=2172
+ZONE=2173
+PREDICTION=2174
+PREDICTION_BOUNDS=2175
+PREDICTION_COST=2176
+PREDICTION_DETAILS=2177
+PREDICTION_PROBABILITY=2178
+PREDICTION_SET=2179
+CUME_DIST=2180
+DENSE_RANK=2181
+LISTAGG=2182
+PERCENT_RANK=2183
+PERCENTILE_CONT=2184
+PERCENTILE_DISC=2185
+RANK=2186
+AVG=2187
+CORR=2188
+COVAR_=2189
+DECODE=2190
+LAG=2191
+LEAD=2192
+MAX=2193
+MEDIAN=2194
+MIN=2195
+NTILE=2196
+NVL=2197
+RATIO_TO_REPORT=2198
+REGR_=2199
+ROUND=2200
+ROW_NUMBER=2201
+SUBSTR=2202
+TO_CHAR=2203
+TRIM=2204
+SUM=2205
+STDDEV=2206
+VAR_=2207
+VARIANCE=2208
+LEAST=2209
+GREATEST=2210
+TO_DATE=2211
+NATIONAL_CHAR_STRING_LIT=2212
+BIT_STRING_LIT=2213
+HEX_STRING_LIT=2214
+DOUBLE_PERIOD=2215
+PERIOD=2216
+UNSIGNED_INTEGER=2217
+APPROXIMATE_NUM_LIT=2218
+CHAR_STRING=2219
+DELIMITED_ID=2220
+PERCENT=2221
+AMPERSAND=2222
+LEFT_PAREN=2223
+RIGHT_PAREN=2224
+DOUBLE_ASTERISK=2225
+ASTERISK=2226
+PLUS_SIGN=2227
+MINUS_SIGN=2228
+COMMA=2229
+SOLIDUS=2230
+AT_SIGN=2231
+ASSIGN_OP=2232
+BINDVAR=2233
+NOT_EQUAL_OP=2234
+CARRET_OPERATOR_PART=2235
+TILDE_OPERATOR_PART=2236
+EXCLAMATION_OPERATOR_PART=2237
+GREATER_THAN_OP=2238
+LESS_THAN_OP=2239
+COLON=2240
+SEMICOLON=2241
+BAR=2242
+EQUALS_OP=2243
+LEFT_BRACKET=2244
+RIGHT_BRACKET=2245
+INTRODUCER=2246
+SINGLE_LINE_COMMENT=2247
+MULTI_LINE_COMMENT=2248
+REMARK_COMMENT=2249
+PROMPT_MESSAGE=2250
+START_CMD=2251
+REGULAR_ID=2252
+SPACES=2253
+'ABORT'=1
+'ABS'=2
+'ACCESS'=3
+'ACCESSED'=4
+'ACCOUNT'=5
+'ACL'=6
+'ACOS'=7
+'ACTION'=8
+'ACTIONS'=9
+'ACTIVATE'=10
+'ACTIVE'=11
+'ACTIVE_COMPONENT'=12
+'ACTIVE_DATA'=13
+'ACTIVE_FUNCTION'=14
+'ACTIVE_TAG'=15
+'ACTIVITY'=16
+'ADAPTIVE_PLAN'=17
+'ADD'=18
+'ADD_COLUMN'=19
+'ADD_GROUP'=20
+'ADD_MONTHS'=21
+'ADJ_DATE'=22
+'ADMIN'=23
+'ADMINISTER'=24
+'ADMINISTRATOR'=25
+'ADVANCED'=26
+'ADVISE'=27
+'ADVISOR'=28
+'AFD_DISKSTRING'=29
+'AFTER'=30
+'AGENT'=31
+'AGGREGATE'=32
+'A'=33
+'ALIAS'=34
+'ALL'=35
+'ALLOCATE'=36
+'ALLOW'=37
+'ALL_ROWS'=38
+'ALTER'=39
+'ALWAYS'=40
+'ANALYZE'=41
+'ANCILLARY'=42
+'AND'=43
+'AND_EQUAL'=44
+'ANOMALY'=45
+'ANSI_REARCH'=46
+'ANTIJOIN'=47
+'ANY'=48
+'ANYSCHEMA'=49
+'APPEND'=50
+'APPENDCHILDXML'=51
+'APPEND_VALUES'=52
+'APPLICATION'=53
+'APPLY'=54
+'APPROX_COUNT_DISTINCT'=55
+'ARCHIVAL'=56
+'ARCHIVE'=57
+'ARCHIVED'=58
+'ARCHIVELOG'=59
+'ARRAY'=60
+'AS'=61
+'ASC'=62
+'ASCII'=63
+'ASCIISTR'=64
+'ASIN'=65
+'ASIS'=66
+'ASSEMBLY'=67
+'ASSIGN'=68
+'ASSOCIATE'=69
+'ASYNC'=70
+'ASYNCHRONOUS'=71
+'ATAN2'=72
+'ATAN'=73
+'AT'=74
+'ATTRIBUTE'=75
+'ATTRIBUTES'=76
+'AUDIT'=77
+'AUTHENTICATED'=78
+'AUTHENTICATION'=79
+'AUTHID'=80
+'AUTHORIZATION'=81
+'AUTOALLOCATE'=82
+'AUTO'=83
+'AUTOBACKUP'=84
+'AUTOEXTEND'=85
+'AUTO_LOGIN'=86
+'AUTOMATIC'=87
+'AUTONOMOUS_TRANSACTION'=88
+'AUTO_REOPTIMIZE'=89
+'AVAILABILITY'=90
+'AVRO'=91
+'BACKGROUND'=92
+'BACKUP'=93
+'BACKUPSET'=94
+'BASIC'=95
+'BASICFILE'=96
+'BATCH'=97
+'BATCHSIZE'=98
+'BATCH_TABLE_ACCESS_BY_ROWID'=99
+'BECOME'=100
+'BEFORE'=101
+'BEGIN'=102
+'BEGINNING'=103
+'BEGIN_OUTLINE_DATA'=104
+'BEHALF'=105
+'BEQUEATH'=106
+'BETWEEN'=107
+'BFILE'=108
+'BFILENAME'=109
+'BIGFILE'=110
+'BINARY'=111
+'BINARY_DOUBLE'=112
+'BINARY_DOUBLE_INFINITY'=113
+'BINARY_DOUBLE_NAN'=114
+'BINARY_FLOAT'=115
+'BINARY_FLOAT_INFINITY'=116
+'BINARY_FLOAT_NAN'=117
+'BINARY_INTEGER'=118
+'BIND_AWARE'=119
+'BINDING'=120
+'BIN_TO_NUM'=121
+'BITAND'=122
+'BITMAP_AND'=123
+'BITMAP'=124
+'BITMAPS'=125
+'BITMAP_TREE'=126
+'BITS'=127
+'BLOB'=128
+'BLOCK'=129
+'BLOCK_RANGE'=130
+'BLOCKS'=131
+'BLOCKSIZE'=132
+'BODY'=133
+'BOOLEAN'=134
+'BOTH'=135
+'BOUND'=136
+'BRANCH'=137
+'BREADTH'=138
+'BROADCAST'=139
+'BSON'=140
+'BUFFER'=141
+'BUFFER_CACHE'=142
+'BUFFER_POOL'=143
+'BUILD'=144
+'BULK'=145
+'BY'=146
+'BYPASS_RECURSIVE_CHECK'=147
+'BYPASS_UJVC'=148
+'BYTE'=149
+'CACHE'=150
+'CACHE_CB'=151
+'CACHE_INSTANCES'=152
+'CACHE_TEMP_TABLE'=153
+'CACHING'=154
+'CALCULATED'=155
+'CALLBACK'=156
+'CALL'=157
+'CANCEL'=158
+'CANONICAL'=159
+'CAPACITY'=160
+'CARDINALITY'=161
+'CASCADE'=162
+'CASE'=163
+'CAST'=164
+'CATEGORY'=165
+'CDB$DEFAULT'=166
+'CEIL'=167
+'CELL_FLASH_CACHE'=168
+'CERTIFICATE'=169
+'CFILE'=170
+'CHAINED'=171
+'CHANGE'=172
+'CHANGETRACKING'=173
+'CHANGE_DUPKEY_ERROR_INDEX'=174
+'CHARACTER'=175
+'CHAR'=176
+'CHAR_CS'=177
+'CHARTOROWID'=178
+'CHECK_ACL_REWRITE'=179
+'CHECK'=180
+'CHECKPOINT'=181
+'CHILD'=182
+'CHOOSE'=183
+'CHR'=184
+'CHUNK'=185
+'CLASS'=186
+'CLASSIFIER'=187
+'CLEANUP'=188
+'CLEAR'=189
+'C'=190
+'CLIENT'=191
+'CLOB'=192
+'CLONE'=193
+'CLOSE_CACHED_OPEN_CURSORS'=194
+'CLOSE'=195
+'CLUSTER_BY_ROWID'=196
+'CLUSTER'=197
+'CLUSTER_DETAILS'=198
+'CLUSTER_DISTANCE'=199
+'CLUSTER_ID'=200
+'CLUSTERING'=201
+'CLUSTERING_FACTOR'=202
+'CLUSTER_PROBABILITY'=203
+'CLUSTER_SET'=204
+'COALESCE'=205
+'COALESCE_SQ'=206
+'COARSE'=207
+'CO_AUTH_IND'=208
+'COLD'=209
+'COLLECT'=210
+'COLUMNAR'=211
+'COLUMN_AUTH_INDICATOR'=212
+'COLUMN'=213
+'COLUMNS'=214
+'COLUMN_STATS'=215
+'COLUMN_VALUE'=216
+'COMMENT'=217
+'COMMIT'=218
+'COMMITTED'=219
+'COMMON_DATA'=220
+'COMPACT'=221
+'COMPATIBILITY'=222
+'COMPILE'=223
+'COMPLETE'=224
+'COMPLIANCE'=225
+'COMPONENT'=226
+'COMPONENTS'=227
+'COMPOSE'=228
+'COMPOSITE'=229
+'COMPOSITE_LIMIT'=230
+'COMPOUND'=231
+'COMPRESS'=232
+'COMPUTE'=233
+'CONCAT'=234
+'CON_DBID_TO_ID'=235
+'CONDITIONAL'=236
+'CONDITION'=237
+'CONFIRM'=238
+'CONFORMING'=239
+'CON_GUID_TO_ID'=240
+'CON_ID'=241
+'CON_NAME_TO_ID'=242
+'CONNECT_BY_CB_WHR_ONLY'=243
+'CONNECT_BY_COMBINE_SW'=244
+'CONNECT_BY_COST_BASED'=245
+'CONNECT_BY_ELIM_DUPS'=246
+'CONNECT_BY_FILTERING'=247
+'CONNECT_BY_ISCYCLE'=248
+'CONNECT_BY_ISLEAF'=249
+'CONNECT_BY_ROOT'=250
+'CONNECT'=251
+'CONNECT_TIME'=252
+'CONSIDER'=253
+'CONSISTENT'=254
+'CONSTANT'=255
+'CONST'=256
+'CONSTRAINT'=257
+'CONSTRAINTS'=258
+'CONSTRUCTOR'=259
+'CONTAINER'=260
+'CONTAINER_DATA'=261
+'CONTAINERS'=262
+'CONTENT'=263
+'CONTENTS'=264
+'CONTEXT'=265
+'CONTINUE'=266
+'CONTROLFILE'=267
+'CON_UID_TO_ID'=268
+'CONVERT'=269
+'COOKIE'=270
+'COPY'=271
+'CORR_K'=272
+'CORR_S'=273
+'CORRUPTION'=274
+'CORRUPT_XID_ALL'=275
+'CORRUPT_XID'=276
+'COS'=277
+'COSH'=278
+'COST'=279
+'COST_XML_QUERY_REWRITE'=280
+'COUNT'=281
+'COVAR_POP'=282
+'COVAR_SAMP'=283
+'CPU_COSTING'=284
+'CPU_PER_CALL'=285
+'CPU_PER_SESSION'=286
+'CRASH'=287
+'CREATE'=288
+'CREATE_FILE_DEST'=289
+'CREATE_STORED_OUTLINES'=290
+'CREATION'=291
+'CREDENTIAL'=292
+'CRITICAL'=293
+'CROSS'=294
+'CROSSEDITION'=295
+'CSCONVERT'=296
+'CUBE_AJ'=297
+'CUBE'=298
+'CUBE_GB'=299
+'CUBE_SJ'=300
+'CUME_DISTM'=301
+'CURRENT'=302
+'CURRENT_DATE'=303
+'CURRENT_SCHEMA'=304
+'CURRENT_TIME'=305
+'CURRENT_TIMESTAMP'=306
+'CURRENT_USER'=307
+'CURRENTV'=308
+'CURSOR'=309
+'CURSOR_SHARING_EXACT'=310
+'CURSOR_SPECIFIC_SEGMENT'=311
+'CUSTOMDATUM'=312
+'CV'=313
+'CYCLE'=314
+'DANGLING'=315
+'DATABASE'=316
+'DATA'=317
+'DATAFILE'=318
+'DATAFILES'=319
+'DATAGUARDCONFIG'=320
+'DATAMOVEMENT'=321
+'DATAOBJNO'=322
+'DATAOBJ_TO_MAT_PARTITION'=323
+'DATAOBJ_TO_PARTITION'=324
+'DATAPUMP'=325
+'DATA_SECURITY_REWRITE_LIMIT'=326
+'DATE'=327
+'DATE_MODE'=328
+'DAY'=329
+'DAYS'=330
+'DBA'=331
+'DBA_RECYCLEBIN'=332
+'DBMS_STATS'=333
+'DB_ROLE_CHANGE'=334
+'DBTIMEZONE'=335
+'DB_UNIQUE_NAME'=336
+'DB_VERSION'=337
+'DDL'=338
+'DEALLOCATE'=339
+'DEBUG'=340
+'DEBUGGER'=341
+'DEC'=342
+'DECIMAL'=343
+'DECLARE'=344
+'DECOMPOSE'=345
+'DECORRELATE'=346
+'DECR'=347
+'DECREMENT'=348
+'DECRYPT'=349
+'DEDUPLICATE'=350
+'DEFAULT'=351
+'DEFAULTS'=352
+'DEFERRABLE'=353
+'DEFERRED'=354
+'DEFINED'=355
+'DEFINE'=356
+'DEFINER'=357
+'DEGREE'=358
+'DELAY'=359
+'DELEGATE'=360
+'DELETE_ALL'=361
+'DELETE'=362
+'DELETEXML'=363
+'DEMAND'=364
+'DENSE_RANKM'=365
+'DEPENDENT'=366
+'DEPTH'=367
+'DEQUEUE'=368
+'DEREF'=369
+'DEREF_NO_REWRITE'=370
+'DESC'=371
+'DESTROY'=372
+'DETACHED'=373
+'DETERMINES'=374
+'DETERMINISTIC'=375
+'DICTIONARY'=376
+'DIMENSION'=377
+'DIMENSIONS'=378
+'DIRECT_LOAD'=379
+'DIRECTORY'=380
+'DIRECT_PATH'=381
+'DISABLE_ALL'=382
+'DISABLE'=383
+'DISABLE_PARALLEL_DML'=384
+'DISABLE_PRESET'=385
+'DISABLE_RPKE'=386
+'DISALLOW'=387
+'DISASSOCIATE'=388
+'DISCARD'=389
+'DISCONNECT'=390
+'DISK'=391
+'DISKGROUP'=392
+'\'+ DISKGROUP'=393
+'DISKS'=394
+'DISMOUNT'=395
+'DISTINCT'=396
+'DISTINGUISHED'=397
+'DISTRIBUTED'=398
+'DISTRIBUTE'=399
+'DML'=400
+'DML_UPDATE'=401
+'DOCFIDELITY'=402
+'DOCUMENT'=403
+'DOMAIN_INDEX_FILTER'=404
+'DOMAIN_INDEX_NO_SORT'=405
+'DOMAIN_INDEX_SORT'=406
+'DOUBLE'=407
+'DOWNGRADE'=408
+'DRIVING_SITE'=409
+'DROP_COLUMN'=410
+'DROP'=411
+'DROP_GROUP'=412
+'DSINTERVAL_UNCONSTRAINED'=413
+'DST_UPGRADE_INSERT_CONV'=414
+'DUMP'=415
+'DUMPSET'=416
+'DUPLICATE'=417
+'DV'=418
+'DYNAMIC'=419
+'DYNAMIC_SAMPLING'=420
+'DYNAMIC_SAMPLING_EST_CDN'=421
+'EACH'=422
+'EDITIONABLE'=423
+'EDITION'=424
+'EDITIONING'=425
+'EDITIONS'=426
+'ELEMENT'=427
+'ELIM_GROUPBY'=428
+'ELIMINATE_JOIN'=429
+'ELIMINATE_OBY'=430
+'ELIMINATE_OUTER_JOIN'=431
+'ELSE'=432
+'ELSIF'=433
+'EM'=434
+'EMPTY_BLOB'=435
+'EMPTY_CLOB'=436
+'EMPTY'=437
+'ENABLE_ALL'=438
+'ENABLE'=439
+'ENABLE_PARALLEL_DML'=440
+'ENABLE_PRESET'=441
+'ENCODING'=442
+'ENCRYPT'=443
+'ENCRYPTION'=444
+'END'=445
+'END_OUTLINE_DATA'=446
+'ENFORCED'=447
+'ENFORCE'=448
+'ENQUEUE'=449
+'ENTERPRISE'=450
+'ENTITYESCAPING'=451
+'ENTRY'=452
+'EQUIPART'=453
+'ERR'=454
+'ERROR_ARGUMENT'=455
+'ERROR'=456
+'ERROR_ON_OVERLAP_TIME'=457
+'ERRORS'=458
+'ESCAPE'=459
+'ESTIMATE'=460
+'EVAL'=461
+'EVALNAME'=462
+'EVALUATE'=463
+'EVALUATION'=464
+'EVENTS'=465
+'EVERY'=466
+'EXCEPT'=467
+'EXCEPTION'=468
+'EXCEPTION_INIT'=469
+'EXCEPTIONS'=470
+'EXCHANGE'=471
+'EXCLUDE'=472
+'EXCLUDING'=473
+'EXCLUSIVE'=474
+'EXECUTE'=475
+'EXEMPT'=476
+'EXISTING'=477
+'EXISTS'=478
+'EXISTSNODE'=479
+'EXIT'=480
+'EXPAND_GSET_TO_UNION'=481
+'EXPAND_TABLE'=482
+'EXP'=483
+'EXPIRE'=484
+'EXPLAIN'=485
+'EXPLOSION'=486
+'EXPORT'=487
+'EXPR_CORR_CHECK'=488
+'EXPRESS'=489
+'EXTENDS'=490
+'EXTENT'=491
+'EXTENTS'=492
+'EXTERNAL'=493
+'EXTERNALLY'=494
+'EXTRACTCLOBXML'=495
+'EXTRACT'=496
+'EXTRACTVALUE'=497
+'EXTRA'=498
+'FACILITY'=499
+'FACT'=500
+'FACTOR'=501
+'FACTORIZE_JOIN'=502
+'FAILED'=503
+'FAILED_LOGIN_ATTEMPTS'=504
+'FAILGROUP'=505
+'FAILOVER'=506
+'FAILURE'=507
+'FALSE'=508
+'FAMILY'=509
+'FAR'=510
+'FAST'=511
+'FASTSTART'=512
+'FBTSCAN'=513
+'FEATURE_DETAILS'=514
+'FEATURE_ID'=515
+'FEATURE_SET'=516
+'FEATURE_VALUE'=517
+'FETCH'=518
+'FILE'=519
+'FILE_NAME_CONVERT'=520
+'FILESYSTEM_LIKE_LOGGING'=521
+'FILTER'=522
+'FINAL'=523
+'FINE'=524
+'FINISH'=525
+'FIRST'=526
+'FIRSTM'=527
+'FIRST_ROWS'=528
+'FIRST_VALUE'=529
+'FIXED_VIEW_DATA'=530
+'FLAGGER'=531
+'FLASHBACK'=532
+'FLASH_CACHE'=533
+'FLOAT'=534
+'FLOB'=535
+'FLOOR'=536
+'FLUSH'=537
+'FOLDER'=538
+'FOLLOWING'=539
+'FOLLOWS'=540
+'FORALL'=541
+'FORCE'=542
+'FORCE_XML_QUERY_REWRITE'=543
+'FOREIGN'=544
+'FOREVER'=545
+'FOR'=546
+'FORMAT'=547
+'FORWARD'=548
+'FRAGMENT_NUMBER'=549
+'FREELIST'=550
+'FREELISTS'=551
+'FREEPOOLS'=552
+'FRESH'=553
+'FROM'=554
+'FROM_TZ'=555
+'FULL'=556
+'FULL_OUTER_JOIN_TO_OUTER'=557
+'FUNCTION'=558
+'FUNCTIONS'=559
+'GATHER_OPTIMIZER_STATISTICS'=560
+'GATHER_PLAN_STATISTICS'=561
+'GBY_CONC_ROLLUP'=562
+'GBY_PUSHDOWN'=563
+'GENERATED'=564
+'GET'=565
+'GLOBAL'=566
+'GLOBALLY'=567
+'GLOBAL_NAME'=568
+'GLOBAL_TOPIC_ENABLED'=569
+'GOTO'=570
+'GRANT'=571
+'GROUP_BY'=572
+'GROUP'=573
+'GROUP_ID'=574
+'GROUPING'=575
+'GROUPING_ID'=576
+'GROUPS'=577
+'GUARANTEED'=578
+'GUARANTEE'=579
+'GUARD'=580
+'HASH_AJ'=581
+'HASH'=582
+'HASHKEYS'=583
+'HASH_SJ'=584
+'HAVING'=585
+'HEADER'=586
+'HEAP'=587
+'HELP'=588
+'HEXTORAW'=589
+'HEXTOREF'=590
+'HIDDEN'=591
+'HIDE'=592
+'HIERARCHY'=593
+'HIGH'=594
+'HINTSET_BEGIN'=595
+'HINTSET_END'=596
+'HOT'=597
+'HOUR'=598
+'HWM_BROKERED'=599
+'HYBRID'=600
+'IDENTIFIED'=601
+'IDENTIFIER'=602
+'IDENTITY'=603
+'IDGENERATORS'=604
+'ID'=605
+'IDLE_TIME'=606
+'IF'=607
+'IGNORE'=608
+'IGNORE_OPTIM_EMBEDDED_HINTS'=609
+'IGNORE_ROW_ON_DUPKEY_INDEX'=610
+'IGNORE_WHERE_CLAUSE'=611
+'ILM'=612
+'IMMEDIATE'=613
+'IMPACT'=614
+'IMPORT'=615
+'INACTIVE'=616
+'INCLUDE'=617
+'INCLUDE_VERSION'=618
+'INCLUDING'=619
+'INCREMENTAL'=620
+'INCREMENT'=621
+'INCR'=622
+'INDENT'=623
+'INDEX_ASC'=624
+'INDEX_COMBINE'=625
+'INDEX_DESC'=626
+'INDEXED'=627
+'INDEXES'=628
+'INDEX_FFS'=629
+'INDEX_FILTER'=630
+'INDEX'=631
+'INDEXING'=632
+'INDEX_JOIN'=633
+'INDEX_ROWS'=634
+'INDEX_RRS'=635
+'INDEX_RS_ASC'=636
+'INDEX_RS_DESC'=637
+'INDEX_RS'=638
+'INDEX_SCAN'=639
+'INDEX_SKIP_SCAN'=640
+'INDEX_SS_ASC'=641
+'INDEX_SS_DESC'=642
+'INDEX_SS'=643
+'INDEX_STATS'=644
+'INDEXTYPE'=645
+'INDEXTYPES'=646
+'INDICATOR'=647
+'INDICES'=648
+'INFINITE'=649
+'INFORMATIONAL'=650
+'INHERIT'=651
+'IN'=652
+'INITCAP'=653
+'INITIAL'=654
+'INITIALIZED'=655
+'INITIALLY'=656
+'INITRANS'=657
+'INLINE'=658
+'INLINE_XMLTYPE_NT'=659
+'INMEMORY'=660
+'IN_MEMORY_METADATA'=661
+'INMEMORY_PRUNING'=662
+'INNER'=663
+'INOUT'=664
+'INPLACE'=665
+'INSERTCHILDXMLAFTER'=666
+'INSERTCHILDXMLBEFORE'=667
+'INSERTCHILDXML'=668
+'INSERT'=669
+'INSERTXMLAFTER'=670
+'INSERTXMLBEFORE'=671
+'INSTANCE'=672
+'INSTANCES'=673
+'INSTANTIABLE'=674
+'INSTANTLY'=675
+'INSTEAD'=676
+'INSTR2'=677
+'INSTR4'=678
+'INSTRB'=679
+'INSTRC'=680
+'INSTR'=681
+'INTEGER'=682
+'INTERLEAVED'=683
+'INTERMEDIATE'=684
+'INTERNAL_CONVERT'=685
+'INTERNAL_USE'=686
+'INTERPRETED'=687
+'INTERSECT'=688
+'INTERVAL'=689
+'INT'=690
+'INTO'=691
+'INVALIDATE'=692
+'INVISIBLE'=693
+'IN_XQUERY'=694
+'IS'=695
+'ISOLATION'=696
+'ISOLATION_LEVEL'=697
+'ITERATE'=698
+'ITERATION_NUMBER'=699
+'JAVA'=700
+'JOB'=701
+'JOIN'=702
+'JSON_ARRAYAGG'=703
+'JSON_ARRAY'=704
+'JSON_EQUAL'=705
+'JSON_EXISTS2'=706
+'JSON_EXISTS'=707
+'JSONGET'=708
+'JSON'=709
+'JSON_OBJECTAGG'=710
+'JSON_OBJECT'=711
+'JSONPARSE'=712
+'JSON_QUERY'=713
+'JSON_SERIALIZE'=714
+'JSON_TABLE'=715
+'JSON_TEXTCONTAINS2'=716
+'JSON_TEXTCONTAINS'=717
+'JSON_VALUE'=718
+'KEEP_DUPLICATES'=719
+'KEEP'=720
+'KERBEROS'=721
+'KEY'=722
+'KEY_LENGTH'=723
+'KEYSIZE'=724
+'KEYS'=725
+'KEYSTORE'=726
+'KILL'=727
+'LABEL'=728
+'LANGUAGE'=729
+'LAST_DAY'=730
+'LAST'=731
+'LAST_VALUE'=732
+'LATERAL'=733
+'LAX'=734
+'LAYER'=735
+'LDAP_REGISTRATION_ENABLED'=736
+'LDAP_REGISTRATION'=737
+'LDAP_REG_SYNC_INTERVAL'=738
+'LEADING'=739
+'LEFT'=740
+'LENGTH2'=741
+'LENGTH4'=742
+'LENGTHB'=743
+'LENGTHC'=744
+'LENGTH'=745
+'LESS'=746
+'LEVEL'=747
+'LEVELS'=748
+'LIBRARY'=749
+'LIFECYCLE'=750
+'LIFE'=751
+'LIFETIME'=752
+'LIKE2'=753
+'LIKE4'=754
+'LIKEC'=755
+'LIKE_EXPAND'=756
+'LIKE'=757
+'LIMIT'=758
+'LINEAR'=759
+'LINK'=760
+'LIST'=761
+'LN'=762
+'LNNVL'=763
+'LOAD'=764
+'LOB'=765
+'LOBNVL'=766
+'LOBS'=767
+'LOCAL_INDEXES'=768
+'LOCAL'=769
+'LOCALTIME'=770
+'LOCALTIMESTAMP'=771
+'LOCATION'=772
+'LOCATOR'=773
+'LOCKED'=774
+'LOCKING'=775
+'LOCK'=776
+'LOGFILE'=777
+'LOGFILES'=778
+'LOGGING'=779
+'LOGICAL'=780
+'LOGICAL_READS_PER_CALL'=781
+'LOGICAL_READS_PER_SESSION'=782
+'LOG'=783
+'LOGMINING'=784
+'LOGOFF'=785
+'LOGON'=786
+'LOG_READ_ONLY_VIOLATIONS'=787
+'LONG'=788
+'LOOP'=789
+'LOWER'=790
+'LOW'=791
+'LPAD'=792
+'LTRIM'=793
+'MAIN'=794
+'MAKE_REF'=795
+'MANAGED'=796
+'MANAGE'=797
+'MANAGEMENT'=798
+'MANAGER'=799
+'MANUAL'=800
+'MAP'=801
+'MAPPING'=802
+'MASTER'=803
+'MATCHED'=804
+'MATCHES'=805
+'MATCH'=806
+'MATCH_NUMBER'=807
+'MATCH_RECOGNIZE'=808
+'MATERIALIZED'=809
+'MATERIALIZE'=810
+'MAXARCHLOGS'=811
+'MAXDATAFILES'=812
+'MAXEXTENTS'=813
+'MAXIMIZE'=814
+'MAXINSTANCES'=815
+'MAXLOGFILES'=816
+'MAXLOGHISTORY'=817
+'MAXLOGMEMBERS'=818
+'MAX_SHARED_TEMP_SIZE'=819
+'MAXSIZE'=820
+'MAXTRANS'=821
+'MAXVALUE'=822
+'MEASURE'=823
+'MEASURES'=824
+'MEDIUM'=825
+'MEMBER'=826
+'MEMCOMPRESS'=827
+'MEMORY'=828
+'MERGE$ACTIONS'=829
+'MERGE_AJ'=830
+'MERGE_CONST_ON'=831
+'MERGE'=832
+'MERGE_SJ'=833
+'METADATA'=834
+'METHOD'=835
+'MIGRATE'=836
+'MIGRATION'=837
+'MINEXTENTS'=838
+'MINIMIZE'=839
+'MINIMUM'=840
+'MINING'=841
+'MINUS'=842
+'MINUS_NULL'=843
+'MINUTE'=844
+'MINVALUE'=845
+'MIRRORCOLD'=846
+'MIRRORHOT'=847
+'MIRROR'=848
+'MLSLABEL'=849
+'MODEL_COMPILE_SUBQUERY'=850
+'MODEL_DONTVERIFY_UNIQUENESS'=851
+'MODEL_DYNAMIC_SUBQUERY'=852
+'MODEL_MIN_ANALYSIS'=853
+'MODEL'=854
+'MODEL_NB'=855
+'MODEL_NO_ANALYSIS'=856
+'MODEL_PBY'=857
+'MODEL_PUSH_REF'=858
+'MODEL_SV'=859
+'MODE'=860
+'MODIFICATION'=861
+'MODIFY_COLUMN_TYPE'=862
+'MODIFY'=863
+'MOD'=864
+'MODULE'=865
+'MONITORING'=866
+'MONITOR'=867
+'MONTH'=868
+'MONTHS_BETWEEN'=869
+'MONTHS'=870
+'MOUNT'=871
+'MOUNTPATH'=872
+'MOVEMENT'=873
+'MOVE'=874
+'MULTIDIMENSIONAL'=875
+'MULTISET'=876
+'MV_MERGE'=877
+'NAMED'=878
+'NAME'=879
+'NAMESPACE'=880
+'NAN'=881
+'NANVL'=882
+'NATIONAL'=883
+'NATIVE_FULL_OUTER_JOIN'=884
+'NATIVE'=885
+'NATURAL'=886
+'NATURALN'=887
+'NAV'=888
+'NCHAR_CS'=889
+'NCHAR'=890
+'NCHR'=891
+'NCLOB'=892
+'NEEDED'=893
+'NEG'=894
+'NESTED'=895
+'NESTED_TABLE_FAST_INSERT'=896
+'NESTED_TABLE_GET_REFS'=897
+'NESTED_TABLE_ID'=898
+'NESTED_TABLE_SET_REFS'=899
+'NESTED_TABLE_SET_SETID'=900
+'NETWORK'=901
+'NEVER'=902
+'NEW'=903
+'NEW_TIME'=904
+'NEXT_DAY'=905
+'NEXT'=906
+'NL_AJ'=907
+'NLJ_BATCHING'=908
+'NLJ_INDEX_FILTER'=909
+'NLJ_INDEX_SCAN'=910
+'NLJ_PREFETCH'=911
+'NLS_CALENDAR'=912
+'NLS_CHARACTERSET'=913
+'NLS_CHARSET_DECL_LEN'=914
+'NLS_CHARSET_ID'=915
+'NLS_CHARSET_NAME'=916
+'NLS_COMP'=917
+'NLS_CURRENCY'=918
+'NLS_DATE_FORMAT'=919
+'NLS_DATE_LANGUAGE'=920
+'NLS_INITCAP'=921
+'NLS_ISO_CURRENCY'=922
+'NL_SJ'=923
+'NLS_LANG'=924
+'NLS_LANGUAGE'=925
+'NLS_LENGTH_SEMANTICS'=926
+'NLS_LOWER'=927
+'NLS_NCHAR_CONV_EXCP'=928
+'NLS_NUMERIC_CHARACTERS'=929
+'NLS_SORT'=930
+'NLSSORT'=931
+'NLS_SPECIAL_CHARS'=932
+'NLS_TERRITORY'=933
+'NLS_UPPER'=934
+'NO_ACCESS'=935
+'NO_ADAPTIVE_PLAN'=936
+'NO_ANSI_REARCH'=937
+'NOAPPEND'=938
+'NOARCHIVELOG'=939
+'NOAUDIT'=940
+'NO_AUTO_REOPTIMIZE'=941
+'NO_BASETABLE_MULTIMV_REWRITE'=942
+'NO_BATCH_TABLE_ACCESS_BY_ROWID'=943
+'NO_BIND_AWARE'=944
+'NO_BUFFER'=945
+'NOCACHE'=946
+'NO_CARTESIAN'=947
+'NO_CHECK_ACL_REWRITE'=948
+'NO_CLUSTER_BY_ROWID'=949
+'NO_CLUSTERING'=950
+'NO_COALESCE_SQ'=951
+'NO_COMMON_DATA'=952
+'NOCOMPRESS'=953
+'NO_CONNECT_BY_CB_WHR_ONLY'=954
+'NO_CONNECT_BY_COMBINE_SW'=955
+'NO_CONNECT_BY_COST_BASED'=956
+'NO_CONNECT_BY_ELIM_DUPS'=957
+'NO_CONNECT_BY_FILTERING'=958
+'NOCOPY'=959
+'NO_COST_XML_QUERY_REWRITE'=960
+'NO_CPU_COSTING'=961
+'NOCPU_COSTING'=962
+'NOCYCLE'=963
+'NO_DATA_SECURITY_REWRITE'=964
+'NO_DECORRELATE'=965
+'NODELAY'=966
+'NO_DOMAIN_INDEX_FILTER'=967
+'NO_DST_UPGRADE_INSERT_CONV'=968
+'NO_ELIM_GROUPBY'=969
+'NO_ELIMINATE_JOIN'=970
+'NO_ELIMINATE_OBY'=971
+'NO_ELIMINATE_OUTER_JOIN'=972
+'NOENTITYESCAPING'=973
+'NO_EXPAND_GSET_TO_UNION'=974
+'NO_EXPAND'=975
+'NO_EXPAND_TABLE'=976
+'NO_FACT'=977
+'NO_FACTORIZE_JOIN'=978
+'NO_FILTERING'=979
+'NOFORCE'=980
+'NO_FULL_OUTER_JOIN_TO_OUTER'=981
+'NO_GATHER_OPTIMIZER_STATISTICS'=982
+'NO_GBY_PUSHDOWN'=983
+'NOGUARANTEE'=984
+'NO_INDEX_FFS'=985
+'NO_INDEX'=986
+'NO_INDEX_SS'=987
+'NO_INMEMORY'=988
+'NO_INMEMORY_PRUNING'=989
+'NOKEEP'=990
+'NO_LOAD'=991
+'NOLOCAL'=992
+'NOLOGGING'=993
+'NOMAPPING'=994
+'NOMAXVALUE'=995
+'NO_MERGE'=996
+'NOMINIMIZE'=997
+'NOMINVALUE'=998
+'NO_MODEL_PUSH_REF'=999
+'NO_MONITORING'=1000
+'NOMONITORING'=1001
+'NO_MONITOR'=1002
+'NO_MULTIMV_REWRITE'=1003
+'NO_NATIVE_FULL_OUTER_JOIN'=1004
+'NONBLOCKING'=1005
+'NONEDITIONABLE'=1006
+'NONE'=1007
+'NO_NLJ_BATCHING'=1008
+'NO_NLJ_PREFETCH'=1009
+'NO'=1010
+'NONSCHEMA'=1011
+'NO_OBJECT_LINK'=1012
+'NOORDER'=1013
+'NO_ORDER_ROLLUPS'=1014
+'NO_OUTER_JOIN_TO_ANTI'=1015
+'NO_OUTER_JOIN_TO_INNER'=1016
+'NOOVERRIDE'=1017
+'NO_PARALLEL_INDEX'=1018
+'NOPARALLEL_INDEX'=1019
+'NO_PARALLEL'=1020
+'NOPARALLEL'=1021
+'NO_PARTIAL_COMMIT'=1022
+'NO_PARTIAL_JOIN'=1023
+'NO_PARTIAL_ROLLUP_PUSHDOWN'=1024
+'NOPARTITION'=1025
+'NO_PLACE_DISTINCT'=1026
+'NO_PLACE_GROUP_BY'=1027
+'NO_PQ_CONCURRENT_UNION'=1028
+'NO_PQ_MAP'=1029
+'NO_PQ_REPLICATE'=1030
+'NO_PQ_SKEW'=1031
+'NO_PRUNE_GSETS'=1032
+'NO_PULL_PRED'=1033
+'NO_PUSH_PRED'=1034
+'NO_PUSH_SUBQ'=1035
+'NO_PX_FAULT_TOLERANCE'=1036
+'NO_PX_JOIN_FILTER'=1037
+'NO_QKN_BUFF'=1038
+'NO_QUERY_TRANSFORMATION'=1039
+'NO_REF_CASCADE'=1040
+'NORELOCATE'=1041
+'NORELY'=1042
+'NOREPAIR'=1043
+'NOREPLAY'=1044
+'NORESETLOGS'=1045
+'NO_RESULT_CACHE'=1046
+'NOREVERSE'=1047
+'NO_REWRITE'=1048
+'NOREWRITE'=1049
+'NORMAL'=1050
+'NO_ROOT_SW_FOR_LOCAL'=1051
+'NOROWDEPENDENCIES'=1052
+'NOSCHEMACHECK'=1053
+'NOSEGMENT'=1054
+'NO_SEMIJOIN'=1055
+'NO_SEMI_TO_INNER'=1056
+'NO_SET_TO_JOIN'=1057
+'NOSORT'=1058
+'NO_SQL_TRANSLATION'=1059
+'NO_SQL_TUNE'=1060
+'NO_STAR_TRANSFORMATION'=1061
+'NO_STATEMENT_QUEUING'=1062
+'NO_STATS_GSETS'=1063
+'NOSTRICT'=1064
+'NO_SUBQUERY_PRUNING'=1065
+'NO_SUBSTRB_PAD'=1066
+'NO_SWAP_JOIN_INPUTS'=1067
+'NOSWITCH'=1068
+'NO_TABLE_LOOKUP_BY_NL'=1069
+'NO_TEMP_TABLE'=1070
+'NOTHING'=1071
+'NOTIFICATION'=1072
+'NOT'=1073
+'NO_TRANSFORM_DISTINCT_AGG'=1074
+'NO_UNNEST'=1075
+'NO_USE_CUBE'=1076
+'NO_USE_HASH_AGGREGATION'=1077
+'NO_USE_HASH_GBY_FOR_PUSHDOWN'=1078
+'NO_USE_HASH'=1079
+'NO_USE_INVISIBLE_INDEXES'=1080
+'NO_USE_MERGE'=1081
+'NO_USE_NL'=1082
+'NO_USE_VECTOR_AGGREGATION'=1083
+'NOVALIDATE'=1084
+'NO_VECTOR_TRANSFORM_DIMS'=1085
+'NO_VECTOR_TRANSFORM_FACT'=1086
+'NO_VECTOR_TRANSFORM'=1087
+'NOWAIT'=1088
+'NO_XDB_FASTPATH_INSERT'=1089
+'NO_XML_DML_REWRITE'=1090
+'NO_XMLINDEX_REWRITE_IN_SELECT'=1091
+'NO_XMLINDEX_REWRITE'=1092
+'NO_XML_QUERY_REWRITE'=1093
+'NO_ZONEMAP'=1094
+'NTH_VALUE'=1095
+'NULLIF'=1096
+'NULL'=1097
+'NULLS'=1098
+'NUMBER'=1099
+'NUMERIC'=1100
+'NUM_INDEX_KEYS'=1101
+'NUMTODSINTERVAL'=1102
+'NUMTOYMINTERVAL'=1103
+'NVARCHAR2'=1104
+'NVL2'=1105
+'OBJECT2XML'=1106
+'OBJECT'=1107
+'OBJ_ID'=1108
+'OBJNO'=1109
+'OBJNO_REUSE'=1110
+'OCCURENCES'=1111
+'OFFLINE'=1112
+'OFF'=1113
+'OFFSET'=1114
+'OF'=1115
+'OIDINDEX'=1116
+'OID'=1117
+'OLAP'=1118
+'OLD'=1119
+'OLD_PUSH_PRED'=1120
+'OLS'=1121
+'OLTP'=1122
+'OMIT'=1123
+'ONE'=1124
+'ONLINE'=1125
+'ONLINELOG'=1126
+'ONLY'=1127
+'ON'=1128
+'OPAQUE'=1129
+'OPAQUE_TRANSFORM'=1130
+'OPAQUE_XCANONICAL'=1131
+'OPCODE'=1132
+'OPEN'=1133
+'OPERATIONS'=1134
+'OPERATOR'=1135
+'OPT_ESTIMATE'=1136
+'OPTIMAL'=1137
+'OPTIMIZE'=1138
+'OPTIMIZER_FEATURES_ENABLE'=1139
+'OPTIMIZER_GOAL'=1140
+'OPTION'=1141
+'OPT_PARAM'=1142
+'ORA_BRANCH'=1143
+'ORA_CHECK_ACL'=1144
+'ORA_CHECK_PRIVILEGE'=1145
+'ORA_CLUSTERING'=1146
+'ORADATA'=1147
+'ORADEBUG'=1148
+'ORA_DST_AFFECTED'=1149
+'ORA_DST_CONVERT'=1150
+'ORA_DST_ERROR'=1151
+'ORA_GET_ACLIDS'=1152
+'ORA_GET_PRIVILEGES'=1153
+'ORA_HASH'=1154
+'ORA_INVOKING_USERID'=1155
+'ORA_INVOKING_USER'=1156
+'ORA_INVOKING_XS_USER_GUID'=1157
+'ORA_INVOKING_XS_USER'=1158
+'ORA_RAWCOMPARE'=1159
+'ORA_RAWCONCAT'=1160
+'ORA_ROWSCN'=1161
+'ORA_ROWSCN_RAW'=1162
+'ORA_ROWVERSION'=1163
+'ORA_TABVERSION'=1164
+'ORA_WRITE_TIME'=1165
+'ORDERED'=1166
+'ORDERED_PREDICATES'=1167
+'ORDER'=1168
+'ORDINALITY'=1169
+'OR_EXPAND'=1170
+'ORGANIZATION'=1171
+'OR'=1172
+'OR_PREDICATES'=1173
+'OSERROR'=1174
+'OTHER'=1175
+'OUTER_JOIN_TO_ANTI'=1176
+'OUTER_JOIN_TO_INNER'=1177
+'OUTER'=1178
+'OUTLINE_LEAF'=1179
+'OUTLINE'=1180
+'OUT_OF_LINE'=1181
+'OUT'=1182
+'OVERFLOW_NOMOVE'=1183
+'OVERFLOW'=1184
+'OVERLAPS'=1185
+'OVER'=1186
+'OVERRIDING'=1187
+'OWNER'=1188
+'OWNERSHIP'=1189
+'OWN'=1190
+'PACKAGE'=1191
+'PACKAGES'=1192
+'PARALLEL_ENABLE'=1193
+'PARALLEL_INDEX'=1194
+'PARALLEL'=1195
+'PARAMETERFILE'=1196
+'PARAMETERS'=1197
+'PARAM'=1198
+'PARENT'=1199
+'PARITY'=1200
+'PARTIAL_JOIN'=1201
+'PARTIALLY'=1202
+'PARTIAL'=1203
+'PARTIAL_ROLLUP_PUSHDOWN'=1204
+'PARTITION_HASH'=1205
+'PARTITION_LIST'=1206
+'PARTITION'=1207
+'PARTITION_RANGE'=1208
+'PARTITIONS'=1209
+'PART$NUM$INST'=1210
+'PASSING'=1211
+'PASSWORD_GRACE_TIME'=1212
+'PASSWORD_LIFE_TIME'=1213
+'PASSWORD_LOCK_TIME'=1214
+'PASSWORD'=1215
+'PASSWORD_REUSE_MAX'=1216
+'PASSWORD_REUSE_TIME'=1217
+'PASSWORD_VERIFY_FUNCTION'=1218
+'PAST'=1219
+'PATCH'=1220
+'PATH'=1221
+'PATH_PREFIX'=1222
+'PATHS'=1223
+'PATTERN'=1224
+'PBL_HS_BEGIN'=1225
+'PBL_HS_END'=1226
+'PCTFREE'=1227
+'PCTINCREASE'=1228
+'PCTTHRESHOLD'=1229
+'PCTUSED'=1230
+'PCTVERSION'=1231
+'PENDING'=1232
+'PERCENT'=1236
+'PERCENT_RANKM'=1237
+'PERFORMANCE'=1241
+'PERIOD'=1242
+'PERMANENT'=1243
+'PERMISSION'=1244
+'PERMUTE'=1245
+'PER'=1246
+'PFILE'=1247
+'PHYSICAL'=1248
+'PIKEY'=1249
+'PIPELINED'=1250
+'PIPE'=1251
+'PIV_GB'=1252
+'PIVOT'=1253
+'PIV_SSF'=1254
+'PLACE_DISTINCT'=1255
+'PLACE_GROUP_BY'=1256
+'PLAN'=1257
+'PLSCOPE_SETTINGS'=1258
+'PLS_INTEGER'=1259
+'PLSQL_CCFLAGS'=1260
+'PLSQL_CODE_TYPE'=1261
+'PLSQL_DEBUG'=1262
+'PLSQL_OPTIMIZE_LEVEL'=1263
+'PLSQL_WARNINGS'=1264
+'PLUGGABLE'=1265
+'POINT'=1266
+'POLICY'=1267
+'POOL_16K'=1268
+'POOL_2K'=1269
+'POOL_32K'=1270
+'POOL_4K'=1271
+'POOL_8K'=1272
+'POSITIVEN'=1273
+'POSITIVE'=1274
+'POST_TRANSACTION'=1275
+'POWERMULTISET_BY_CARDINALITY'=1276
+'POWERMULTISET'=1277
+'POWER'=1278
+'PQ_CONCURRENT_UNION'=1279
+'PQ_DISTRIBUTE'=1280
+'PQ_DISTRIBUTE_WINDOW'=1281
+'PQ_FILTER'=1282
+'PQ_MAP'=1283
+'PQ_NOMAP'=1284
+'PQ_REPLICATE'=1285
+'PQ_SKEW'=1286
+'PRAGMA'=1287
+'PREBUILT'=1288
+'PRECEDES'=1289
+'PRECEDING'=1290
+'PRECISION'=1291
+'PRECOMPUTE_SUBQUERY'=1292
+'PREDICATE_REORDERS'=1293
+'PRELOAD'=1294
+'PREPARE'=1295
+'PRESENTNNV'=1296
+'PRESENT'=1297
+'PRESENTV'=1298
+'PRESERVE_OID'=1299
+'PRESERVE'=1300
+'PRETTY'=1301
+'PREVIOUS'=1302
+'PREV'=1303
+'PRIMARY'=1304
+'PRINTBLOBTOCLOB'=1305
+'PRIORITY'=1306
+'PRIOR'=1307
+'PRIVATE'=1308
+'PRIVATE_SGA'=1309
+'PRIVILEGED'=1310
+'PRIVILEGE'=1311
+'PRIVILEGES'=1312
+'PROCEDURAL'=1313
+'PROCEDURE'=1314
+'PROCESS'=1315
+'PROFILE'=1316
+'PROGRAM'=1317
+'PROJECT'=1318
+'PROPAGATE'=1319
+'PROTECTED'=1320
+'PROTECTION'=1321
+'PROXY'=1322
+'PRUNING'=1323
+'PUBLIC'=1324
+'PULL_PRED'=1325
+'PURGE'=1326
+'PUSH_PRED'=1327
+'PUSH_SUBQ'=1328
+'PX_FAULT_TOLERANCE'=1329
+'PX_GRANULE'=1330
+'PX_JOIN_FILTER'=1331
+'QB_NAME'=1332
+'QUERY_BLOCK'=1333
+'QUERY'=1334
+'QUEUE_CURR'=1335
+'QUEUE'=1336
+'QUEUE_ROWP'=1337
+'QUIESCE'=1338
+'QUORUM'=1339
+'QUOTA'=1340
+'RAISE'=1341
+'RANDOM_LOCAL'=1342
+'RANDOM'=1343
+'RANGE'=1344
+'RANKM'=1345
+'RAPIDLY'=1346
+'RAW'=1347
+'RAWTOHEX'=1348
+'RAWTONHEX'=1349
+'RBA'=1350
+'RBO_OUTLINE'=1351
+'RDBA'=1352
+'READ'=1353
+'READS'=1354
+'REALM'=1355
+'REAL'=1356
+'REBALANCE'=1357
+'REBUILD'=1358
+'RECORD'=1359
+'RECORDS_PER_BLOCK'=1360
+'RECOVERABLE'=1361
+'RECOVER'=1362
+'RECOVERY'=1363
+'RECYCLEBIN'=1364
+'RECYCLE'=1365
+'REDACTION'=1366
+'REDEFINE'=1367
+'REDO'=1368
+'REDUCED'=1369
+'REDUNDANCY'=1370
+'REF_CASCADE_CURSOR'=1371
+'REFERENCED'=1372
+'REFERENCE'=1373
+'REFERENCES'=1374
+'REFERENCING'=1375
+'REF'=1376
+'REFRESH'=1377
+'REFTOHEX'=1378
+'REGEXP_COUNT'=1379
+'REGEXP_INSTR'=1380
+'REGEXP_LIKE'=1381
+'REGEXP_REPLACE'=1382
+'REGEXP_SUBSTR'=1383
+'REGISTER'=1384
+'REGR_AVGX'=1385
+'REGR_AVGY'=1386
+'REGR_COUNT'=1387
+'REGR_INTERCEPT'=1388
+'REGR_R2'=1389
+'REGR_SLOPE'=1390
+'REGR_SXX'=1391
+'REGR_SXY'=1392
+'REGR_SYY'=1393
+'REGULAR'=1394
+'REJECT'=1395
+'REKEY'=1396
+'RELATIONAL'=1397
+'RELIES_ON'=1398
+'RELOCATE'=1399
+'RELY'=1400
+'REMAINDER'=1401
+'REMOTE_MAPPED'=1402
+'REMOVE'=1403
+'RENAME'=1404
+'REPAIR'=1405
+'REPEAT'=1406
+'REPLACE'=1407
+'REPLICATION'=1408
+'REQUIRED'=1409
+'RESETLOGS'=1410
+'RESET'=1411
+'RESIZE'=1412
+'RESOLVE'=1413
+'RESOLVER'=1414
+'RESOURCE'=1415
+'RESPECT'=1416
+'RESTART'=1417
+'RESTORE_AS_INTERVALS'=1418
+'RESTORE'=1419
+'RESTRICT_ALL_REF_CONS'=1420
+'RESTRICTED'=1421
+'RESTRICT_REFERENCES'=1422
+'RESTRICT'=1423
+'RESULT_CACHE'=1424
+'RESULT'=1425
+'RESUMABLE'=1426
+'RESUME'=1427
+'RETENTION'=1428
+'RETRY_ON_ROW_CHANGE'=1429
+'RETURNING'=1430
+'RETURN'=1431
+'REUSE'=1432
+'REVERSE'=1433
+'REVOKE'=1434
+'REWRITE_OR_ERROR'=1435
+'REWRITE'=1436
+'RIGHT'=1437
+'ROLE'=1438
+'ROLESET'=1439
+'ROLES'=1440
+'ROLLBACK'=1441
+'ROLLING'=1442
+'ROLLUP'=1443
+'ROWDEPENDENCIES'=1444
+'ROWID_MAPPING_TABLE'=1445
+'ROWID'=1446
+'ROWIDTOCHAR'=1447
+'ROWIDTONCHAR'=1448
+'ROW_LENGTH'=1449
+'ROWNUM'=1450
+'ROW'=1451
+'ROWS'=1452
+'RPAD'=1453
+'RTRIM'=1454
+'RULE'=1455
+'RULES'=1456
+'RUNNING'=1457
+'SALT'=1458
+'SAMPLE'=1459
+'SAVE_AS_INTERVALS'=1460
+'SAVEPOINT'=1461
+'SAVE'=1462
+'SB4'=1463
+'SCALE_ROWS'=1464
+'SCALE'=1465
+'SCAN_INSTANCES'=1466
+'SCAN'=1467
+'SCHEDULER'=1468
+'SCHEMACHECK'=1469
+'SCHEMA'=1470
+'SCN_ASCENDING'=1471
+'SCN'=1472
+'SCOPE'=1473
+'SCRUB'=1474
+'SD_ALL'=1475
+'SD_INHIBIT'=1476
+'SDO_GEOM_MBR'=1477
+'SD_SHOW'=1478
+'SEARCH'=1479
+'SECOND'=1480
+'SECRET'=1481
+'SECUREFILE_DBA'=1482
+'SECUREFILE'=1483
+'SECURITY'=1484
+'SEED'=1485
+'SEG_BLOCK'=1486
+'SEG_FILE'=1487
+'SEGMENT'=1488
+'SELECTIVITY'=1489
+'SELECT'=1490
+'SELF'=1491
+'SEMIJOIN_DRIVER'=1492
+'SEMIJOIN'=1493
+'SEMI_TO_INNER'=1494
+'SEQUENCED'=1495
+'SEQUENCE'=1496
+'SEQUENTIAL'=1497
+'SEQ'=1498
+'SERIALIZABLE'=1499
+'SERIALLY_REUSABLE'=1500
+'SERIAL'=1501
+'SERVERERROR'=1502
+'SERVICE_NAME_CONVERT'=1503
+'SERVICES'=1504
+'SESSION_CACHED_CURSORS'=1505
+'SESSION'=1506
+'SESSIONS_PER_USER'=1507
+'SESSIONTIMEZONE'=1508
+'SESSIONTZNAME'=1509
+'SET'=1510
+'SETS'=1511
+'SETTINGS'=1512
+'SET_TO_JOIN'=1513
+'SEVERE'=1514
+'SHARED_POOL'=1515
+'SHARED'=1516
+'SHARE'=1517
+'SHARING'=1518
+'SHELFLIFE'=1519
+'SHOW'=1520
+'SHRINK'=1521
+'SHUTDOWN'=1522
+'SIBLINGS'=1523
+'SID'=1524
+'SIGNAL_COMPONENT'=1525
+'SIGNAL_FUNCTION'=1526
+'SIGN'=1527
+'SIGNTYPE'=1528
+'SIMPLE_INTEGER'=1529
+'SIMPLE'=1530
+'SINGLE'=1531
+'SINGLETASK'=1532
+'SINH'=1533
+'SIN'=1534
+'SIZE'=1535
+'SKIP_EXT_OPTIMIZER'=1536
+'SKIP'=1537
+'SKIP_UNQ_UNUSABLE_IDX'=1538
+'SKIP_UNUSABLE_INDEXES'=1539
+'SMALLFILE'=1540
+'SMALLINT'=1541
+'SNAPSHOT'=1542
+'SOME'=1543
+'SORT'=1544
+'SOUNDEX'=1545
+'SOURCE_FILE_DIRECTORY'=1546
+'SOURCE_FILE_NAME_CONVERT'=1547
+'SOURCE'=1548
+'SPACE'=1549
+'SPECIFICATION'=1550
+'SPFILE'=1551
+'SPLIT'=1552
+'SPREADSHEET'=1553
+'SQLDATA'=1554
+'SQLERROR'=1555
+'SQLLDR'=1556
+'SQL'=1557
+'SQL_TRACE'=1558
+'SQL_TRANSLATION_PROFILE'=1559
+'SQRT'=1560
+'STALE'=1561
+'STANDALONE'=1562
+'STANDARD_HASH'=1563
+'STANDBY_MAX_DATA_DELAY'=1564
+'STANDBYS'=1565
+'STANDBY'=1566
+'STAR'=1567
+'STAR_TRANSFORMATION'=1568
+'START'=1569
+'STARTUP'=1570
+'STATEMENT_ID'=1571
+'STATEMENT_QUEUING'=1572
+'STATEMENTS'=1573
+'STATEMENT'=1574
+'STATE'=1575
+'STATIC'=1576
+'STATISTICS'=1577
+'STATS_BINOMIAL_TEST'=1578
+'STATS_CROSSTAB'=1579
+'STATS_F_TEST'=1580
+'STATS_KS_TEST'=1581
+'STATS_MODE'=1582
+'STATS_MW_TEST'=1583
+'STATS_ONE_WAY_ANOVA'=1584
+'STATS_T_TEST_INDEP'=1585
+'STATS_T_TEST_INDEPU'=1586
+'STATS_T_TEST_ONE'=1587
+'STATS_T_TEST_PAIRED'=1588
+'STATS_WSR_TEST'=1589
+'STDDEV_POP'=1590
+'STDDEV_SAMP'=1591
+'STOP'=1592
+'STORAGE'=1593
+'STORE'=1594
+'STREAMS'=1595
+'STREAM'=1596
+'STRICT'=1597
+'STRING'=1598
+'STRIPE_COLUMNS'=1599
+'STRIPE_WIDTH'=1600
+'STRIP'=1601
+'STRUCTURE'=1602
+'SUBMULTISET'=1603
+'SUBPARTITION_REL'=1604
+'SUBPARTITIONS'=1605
+'SUBPARTITION'=1606
+'SUBQUERIES'=1607
+'SUBQUERY_PRUNING'=1608
+'SUBSCRIBE'=1609
+'SUBSET'=1610
+'SUBSTITUTABLE'=1611
+'SUBSTR2'=1612
+'SUBSTR4'=1613
+'SUBSTRB'=1614
+'SUBSTRC'=1615
+'SUBTYPE'=1616
+'SUCCESSFUL'=1617
+'SUCCESS'=1618
+'SUMMARY'=1619
+'SUPPLEMENTAL'=1620
+'SUSPEND'=1621
+'SWAP_JOIN_INPUTS'=1622
+'SWITCHOVER'=1623
+'SWITCH'=1624
+'SYNCHRONOUS'=1625
+'SYNC'=1626
+'SYNONYM'=1627
+'SYSASM'=1628
+'SYS_AUDIT'=1629
+'SYSAUX'=1630
+'SYSBACKUP'=1631
+'SYS_CHECKACL'=1632
+'SYS_CHECK_PRIVILEGE'=1633
+'SYS_CONNECT_BY_PATH'=1634
+'SYS_CONTEXT'=1635
+'SYSDATE'=1636
+'SYSDBA'=1637
+'SYS_DBURIGEN'=1638
+'SYSDG'=1639
+'SYS_DL_CURSOR'=1640
+'SYS_DM_RXFORM_CHR'=1641
+'SYS_DM_RXFORM_NUM'=1642
+'SYS_DOM_COMPARE'=1643
+'SYS_DST_PRIM2SEC'=1644
+'SYS_DST_SEC2PRIM'=1645
+'SYS_ET_BFILE_TO_RAW'=1646
+'SYS_ET_BLOB_TO_IMAGE'=1647
+'SYS_ET_IMAGE_TO_BLOB'=1648
+'SYS_ET_RAW_TO_BFILE'=1649
+'SYS_EXTPDTXT'=1650
+'SYS_EXTRACT_UTC'=1651
+'SYS_FBT_INSDEL'=1652
+'SYS_FILTER_ACLS'=1653
+'SYS_FNMATCHES'=1654
+'SYS_FNREPLACE'=1655
+'SYS_GET_ACLIDS'=1656
+'SYS_GET_COL_ACLIDS'=1657
+'SYS_GET_PRIVILEGES'=1658
+'SYS_GETTOKENID'=1659
+'SYS_GETXTIVAL'=1660
+'SYS_GUID'=1661
+'SYSGUID'=1662
+'SYSKM'=1663
+'SYS_MAKE_XMLNODEID'=1664
+'SYS_MAKEXML'=1665
+'SYS_MKXMLATTR'=1666
+'SYS_MKXTI'=1667
+'SYSOBJ'=1668
+'SYS_OP_ADT2BIN'=1669
+'SYS_OP_ADTCONS'=1670
+'SYS_OP_ALSCRVAL'=1671
+'SYS_OP_ATG'=1672
+'SYS_OP_BIN2ADT'=1673
+'SYS_OP_BITVEC'=1674
+'SYS_OP_BL2R'=1675
+'SYS_OP_BLOOM_FILTER_LIST'=1676
+'SYS_OP_BLOOM_FILTER'=1677
+'SYS_OP_C2C'=1678
+'SYS_OP_CAST'=1679
+'SYS_OP_CEG'=1680
+'SYS_OP_CL2C'=1681
+'SYS_OP_COMBINED_HASH'=1682
+'SYS_OP_COMP'=1683
+'SYS_OP_CONVERT'=1684
+'SYS_OP_COUNTCHG'=1685
+'SYS_OP_CSCONV'=1686
+'SYS_OP_CSCONVTEST'=1687
+'SYS_OP_CSR'=1688
+'SYS_OP_CSX_PATCH'=1689
+'SYS_OP_CYCLED_SEQ'=1690
+'SYS_OP_DECOMP'=1691
+'SYS_OP_DESCEND'=1692
+'SYS_OP_DISTINCT'=1693
+'SYS_OP_DRA'=1694
+'SYS_OP_DUMP'=1695
+'SYS_OP_DV_CHECK'=1696
+'SYS_OP_ENFORCE_NOT_NULL$'=1697
+'SYSOPER'=1698
+'SYS_OP_EXTRACT'=1699
+'SYS_OP_GROUPING'=1700
+'SYS_OP_GUID'=1701
+'SYS_OP_HASH'=1702
+'SYS_OP_IIX'=1703
+'SYS_OP_ITR'=1704
+'SYS_OP_KEY_VECTOR_CREATE'=1705
+'SYS_OP_KEY_VECTOR_FILTER_LIST'=1706
+'SYS_OP_KEY_VECTOR_FILTER'=1707
+'SYS_OP_KEY_VECTOR_SUCCEEDED'=1708
+'SYS_OP_KEY_VECTOR_USE'=1709
+'SYS_OP_LBID'=1710
+'SYS_OP_LOBLOC2BLOB'=1711
+'SYS_OP_LOBLOC2CLOB'=1712
+'SYS_OP_LOBLOC2ID'=1713
+'SYS_OP_LOBLOC2NCLOB'=1714
+'SYS_OP_LOBLOC2TYP'=1715
+'SYS_OP_LSVI'=1716
+'SYS_OP_LVL'=1717
+'SYS_OP_MAKEOID'=1718
+'SYS_OP_MAP_NONNULL'=1719
+'SYS_OP_MSR'=1720
+'SYS_OP_NICOMBINE'=1721
+'SYS_OP_NIEXTRACT'=1722
+'SYS_OP_NII'=1723
+'SYS_OP_NIX'=1724
+'SYS_OP_NOEXPAND'=1725
+'SYS_OP_NTCIMG$'=1726
+'SYS_OP_NUMTORAW'=1727
+'SYS_OP_OIDVALUE'=1728
+'SYS_OP_OPNSIZE'=1729
+'SYS_OP_PAR_1'=1730
+'SYS_OP_PARGID_1'=1731
+'SYS_OP_PARGID'=1732
+'SYS_OP_PAR'=1733
+'SYS_OP_PART_ID'=1734
+'SYS_OP_PIVOT'=1735
+'SYS_OP_R2O'=1736
+'SYS_OP_RAWTONUM'=1737
+'SYS_OP_RDTM'=1738
+'SYS_OP_REF'=1739
+'SYS_OP_RMTD'=1740
+'SYS_OP_ROWIDTOOBJ'=1741
+'SYS_OP_RPB'=1742
+'SYS_OPTLOBPRBSC'=1743
+'SYS_OP_TOSETID'=1744
+'SYS_OP_TPR'=1745
+'SYS_OP_TRTB'=1746
+'SYS_OPTXICMP'=1747
+'SYS_OPTXQCASTASNQ'=1748
+'SYS_OP_UNDESCEND'=1749
+'SYS_OP_VECAND'=1750
+'SYS_OP_VECBIT'=1751
+'SYS_OP_VECOR'=1752
+'SYS_OP_VECXOR'=1753
+'SYS_OP_VERSION'=1754
+'SYS_OP_VREF'=1755
+'SYS_OP_VVD'=1756
+'SYS_OP_XMLCONS_FOR_CSX'=1757
+'SYS_OP_XPTHATG'=1758
+'SYS_OP_XPTHIDX'=1759
+'SYS_OP_XPTHOP'=1760
+'SYS_OP_XTXT2SQLT'=1761
+'SYS_OP_ZONE_ID'=1762
+'SYS_ORDERKEY_DEPTH'=1763
+'SYS_ORDERKEY_MAXCHILD'=1764
+'SYS_ORDERKEY_PARENT'=1765
+'SYS_PARALLEL_TXN'=1766
+'SYS_PATHID_IS_ATTR'=1767
+'SYS_PATHID_IS_NMSPC'=1768
+'SYS_PATHID_LASTNAME'=1769
+'SYS_PATHID_LASTNMSPC'=1770
+'SYS_PATH_REVERSE'=1771
+'SYS_PXQEXTRACT'=1772
+'SYS_RAW_TO_XSID'=1773
+'SYS_RID_ORDER'=1774
+'SYS_ROW_DELTA'=1775
+'SYS_SC_2_XMLT'=1776
+'SYS_SYNRCIREDO'=1777
+'SYSTEM_DEFINED'=1778
+'SYSTEM'=1779
+'SYSTIMESTAMP'=1780
+'SYS_TYPEID'=1781
+'SYS_UMAKEXML'=1782
+'SYS_XMLANALYZE'=1783
+'SYS_XMLCONTAINS'=1784
+'SYS_XMLCONV'=1785
+'SYS_XMLEXNSURI'=1786
+'SYS_XMLGEN'=1787
+'SYS_XMLI_LOC_ISNODE'=1788
+'SYS_XMLI_LOC_ISTEXT'=1789
+'SYS_XMLINSTR'=1790
+'SYS_XMLLOCATOR_GETSVAL'=1791
+'SYS_XMLNODEID_GETCID'=1792
+'SYS_XMLNODEID_GETLOCATOR'=1793
+'SYS_XMLNODEID_GETOKEY'=1794
+'SYS_XMLNODEID_GETPATHID'=1795
+'SYS_XMLNODEID_GETPTRID'=1796
+'SYS_XMLNODEID_GETRID'=1797
+'SYS_XMLNODEID_GETSVAL'=1798
+'SYS_XMLNODEID_GETTID'=1799
+'SYS_XMLNODEID'=1800
+'SYS_XMLT_2_SC'=1801
+'SYS_XMLTRANSLATE'=1802
+'SYS_XMLTYPE2SQL'=1803
+'SYS_XQ_ASQLCNV'=1804
+'SYS_XQ_ATOMCNVCHK'=1805
+'SYS_XQBASEURI'=1806
+'SYS_XQCASTABLEERRH'=1807
+'SYS_XQCODEP2STR'=1808
+'SYS_XQCODEPEQ'=1809
+'SYS_XQCON2SEQ'=1810
+'SYS_XQCONCAT'=1811
+'SYS_XQDELETE'=1812
+'SYS_XQDFLTCOLATION'=1813
+'SYS_XQDOC'=1814
+'SYS_XQDOCURI'=1815
+'SYS_XQDURDIV'=1816
+'SYS_XQED4URI'=1817
+'SYS_XQENDSWITH'=1818
+'SYS_XQERRH'=1819
+'SYS_XQERR'=1820
+'SYS_XQESHTMLURI'=1821
+'SYS_XQEXLOBVAL'=1822
+'SYS_XQEXSTWRP'=1823
+'SYS_XQEXTRACT'=1824
+'SYS_XQEXTRREF'=1825
+'SYS_XQEXVAL'=1826
+'SYS_XQFB2STR'=1827
+'SYS_XQFNBOOL'=1828
+'SYS_XQFNCMP'=1829
+'SYS_XQFNDATIM'=1830
+'SYS_XQFNLNAME'=1831
+'SYS_XQFNNM'=1832
+'SYS_XQFNNSURI'=1833
+'SYS_XQFNPREDTRUTH'=1834
+'SYS_XQFNQNM'=1835
+'SYS_XQFNROOT'=1836
+'SYS_XQFORMATNUM'=1837
+'SYS_XQFTCONTAIN'=1838
+'SYS_XQFUNCR'=1839
+'SYS_XQGETCONTENT'=1840
+'SYS_XQINDXOF'=1841
+'SYS_XQINSERT'=1842
+'SYS_XQINSPFX'=1843
+'SYS_XQIRI2URI'=1844
+'SYS_XQLANG'=1845
+'SYS_XQLLNMFRMQNM'=1846
+'SYS_XQMKNODEREF'=1847
+'SYS_XQNILLED'=1848
+'SYS_XQNODENAME'=1849
+'SYS_XQNORMSPACE'=1850
+'SYS_XQNORMUCODE'=1851
+'SYS_XQ_NRNG'=1852
+'SYS_XQNSP4PFX'=1853
+'SYS_XQNSPFRMQNM'=1854
+'SYS_XQPFXFRMQNM'=1855
+'SYS_XQ_PKSQL2XML'=1856
+'SYS_XQPOLYABS'=1857
+'SYS_XQPOLYADD'=1858
+'SYS_XQPOLYCEL'=1859
+'SYS_XQPOLYCSTBL'=1860
+'SYS_XQPOLYCST'=1861
+'SYS_XQPOLYDIV'=1862
+'SYS_XQPOLYFLR'=1863
+'SYS_XQPOLYMOD'=1864
+'SYS_XQPOLYMUL'=1865
+'SYS_XQPOLYRND'=1866
+'SYS_XQPOLYSQRT'=1867
+'SYS_XQPOLYSUB'=1868
+'SYS_XQPOLYUMUS'=1869
+'SYS_XQPOLYUPLS'=1870
+'SYS_XQPOLYVEQ'=1871
+'SYS_XQPOLYVGE'=1872
+'SYS_XQPOLYVGT'=1873
+'SYS_XQPOLYVLE'=1874
+'SYS_XQPOLYVLT'=1875
+'SYS_XQPOLYVNE'=1876
+'SYS_XQREF2VAL'=1877
+'SYS_XQRENAME'=1878
+'SYS_XQREPLACE'=1879
+'SYS_XQRESVURI'=1880
+'SYS_XQRNDHALF2EVN'=1881
+'SYS_XQRSLVQNM'=1882
+'SYS_XQRYENVPGET'=1883
+'SYS_XQRYVARGET'=1884
+'SYS_XQRYWRP'=1885
+'SYS_XQSEQ2CON4XC'=1886
+'SYS_XQSEQ2CON'=1887
+'SYS_XQSEQDEEPEQ'=1888
+'SYS_XQSEQINSB'=1889
+'SYS_XQSEQRM'=1890
+'SYS_XQSEQRVS'=1891
+'SYS_XQSEQSUB'=1892
+'SYS_XQSEQTYPMATCH'=1893
+'SYS_XQSTARTSWITH'=1894
+'SYS_XQSTATBURI'=1895
+'SYS_XQSTR2CODEP'=1896
+'SYS_XQSTRJOIN'=1897
+'SYS_XQSUBSTRAFT'=1898
+'SYS_XQSUBSTRBEF'=1899
+'SYS_XQTOKENIZE'=1900
+'SYS_XQTREATAS'=1901
+'SYS_XQ_UPKXML2SQL'=1902
+'SYS_XQXFORM'=1903
+'SYS_XSID_TO_RAW'=1904
+'SYS_ZMAP_FILTER'=1905
+'SYS_ZMAP_REFRESH'=1906
+'TABLE_LOOKUP_BY_NL'=1907
+'TABLESPACE_NO'=1908
+'TABLESPACE'=1909
+'TABLES'=1910
+'TABLE_STATS'=1911
+'TABLE'=1912
+'TABNO'=1913
+'TAG'=1914
+'TANH'=1915
+'TAN'=1916
+'TBL$OR$IDX$PART$NUM'=1917
+'TEMPFILE'=1918
+'TEMPLATE'=1919
+'TEMPORARY'=1920
+'TEMP_TABLE'=1921
+'TEST'=1922
+'TEXT'=1923
+'THAN'=1924
+'THEN'=1925
+'THE'=1926
+'THREAD'=1927
+'THROUGH'=1928
+'TIER'=1929
+'TIES'=1930
+'TIMEOUT'=1931
+'TIMESTAMP_LTZ_UNCONSTRAINED'=1932
+'TIMESTAMP'=1933
+'TIMESTAMP_TZ_UNCONSTRAINED'=1934
+'TIMESTAMP_UNCONSTRAINED'=1935
+'TIMES'=1936
+'TIME'=1937
+'TIMEZONE'=1938
+'TIMEZONE_ABBR'=1939
+'TIMEZONE_HOUR'=1940
+'TIMEZONE_MINUTE'=1941
+'TIMEZONE_OFFSET'=1942
+'TIMEZONE_REGION'=1943
+'TIME_ZONE'=1944
+'TIV_GB'=1945
+'TIV_SSF'=1946
+'TO_ACLID'=1947
+'TO_BINARY_DOUBLE'=1948
+'TO_BINARY_FLOAT'=1949
+'TO_BLOB'=1950
+'TO_CLOB'=1951
+'TO_DSINTERVAL'=1952
+'TO_LOB'=1953
+'TO_MULTI_BYTE'=1954
+'TO_NCHAR'=1955
+'TO_NCLOB'=1956
+'TO_NUMBER'=1957
+'TOPLEVEL'=1958
+'TO_SINGLE_BYTE'=1959
+'TO_TIMESTAMP'=1960
+'TO_TIMESTAMP_TZ'=1961
+'TO_TIME'=1962
+'TO_TIME_TZ'=1963
+'TO'=1964
+'TO_YMINTERVAL'=1965
+'TRACE'=1966
+'TRACING'=1967
+'TRACKING'=1968
+'TRAILING'=1969
+'TRANSACTION'=1970
+'TRANSFORM_DISTINCT_AGG'=1971
+'TRANSITIONAL'=1972
+'TRANSITION'=1973
+'TRANSLATE'=1974
+'TRANSLATION'=1975
+'TREAT'=1976
+'TRIGGERS'=1977
+'TRIGGER'=1978
+'TRUE'=1979
+'TRUNCATE'=1980
+'TRUNC'=1981
+'TRUSTED'=1982
+'TRUST'=1983
+'TUNING'=1984
+'TX'=1985
+'TYPES'=1986
+'TYPE'=1987
+'TZ_OFFSET'=1988
+'UB2'=1989
+'UBA'=1990
+'UCS2'=1991
+'UID'=1992
+'UNARCHIVED'=1993
+'UNBOUNDED'=1994
+'UNBOUND'=1995
+'UNCONDITIONAL'=1996
+'UNDER'=1997
+'UNDO'=1998
+'UNDROP'=1999
+'UNIFORM'=2000
+'UNION'=2001
+'UNIQUE'=2002
+'UNISTR'=2003
+'UNLIMITED'=2004
+'UNLOAD'=2005
+'UNLOCK'=2006
+'UNMATCHED'=2007
+'UNNEST_INNERJ_DISTINCT_VIEW'=2008
+'UNNEST_NOSEMIJ_NODISTINCTVIEW'=2009
+'UNNEST_SEMIJ_VIEW'=2010
+'UNNEST'=2011
+'UNPACKED'=2012
+'UNPIVOT'=2013
+'UNPLUG'=2014
+'UNPROTECTED'=2015
+'UNQUIESCE'=2016
+'UNRECOVERABLE'=2017
+'UNRESTRICTED'=2018
+'UNSUBSCRIBE'=2019
+'UNTIL'=2020
+'UNUSABLE'=2021
+'UNUSED'=2022
+'UPDATABLE'=2023
+'UPDATED'=2024
+'UPDATE'=2025
+'UPDATEXML'=2026
+'UPD_INDEXES'=2027
+'UPD_JOININDEX'=2028
+'UPGRADE'=2029
+'UPPER'=2030
+'UPSERT'=2031
+'UROWID'=2032
+'USABLE'=2033
+'USAGE'=2034
+'USE_ANTI'=2035
+'USE_CONCAT'=2036
+'USE_CUBE'=2037
+'USE_HASH_AGGREGATION'=2038
+'USE_HASH_GBY_FOR_PUSHDOWN'=2039
+'USE_HASH'=2040
+'USE_HIDDEN_PARTITIONS'=2041
+'USE_INVISIBLE_INDEXES'=2042
+'USE_MERGE_CARTESIAN'=2043
+'USE_MERGE'=2044
+'USE_NL'=2045
+'USE_NL_WITH_INDEX'=2046
+'USE_PRIVATE_OUTLINES'=2047
+'USER_DATA'=2048
+'USER_DEFINED'=2049
+'USERENV'=2050
+'USERGROUP'=2051
+'USER_RECYCLEBIN'=2052
+'USERS'=2053
+'USER_TABLESPACES'=2054
+'USER'=2055
+'USE_SEMI'=2056
+'USE_STORED_OUTLINES'=2057
+'USE_TTT_FOR_GSETS'=2058
+'USE'=2059
+'USE_VECTOR_AGGREGATION'=2060
+'USE_WEAK_NAME_RESL'=2061
+'USING_NO_EXPAND'=2062
+'USING'=2063
+'UTF16BE'=2064
+'UTF16LE'=2065
+'UTF32'=2066
+'UTF8'=2067
+'V1'=2068
+'V2'=2069
+'VALIDATE'=2070
+'VALIDATION'=2071
+'VALID_TIME_END'=2072
+'VALUES'=2073
+'VALUE'=2074
+'VARCHAR2'=2075
+'VARCHAR'=2076
+'VARIABLE'=2077
+'VAR_POP'=2078
+'VARRAYS'=2079
+'VARRAY'=2080
+'VAR_SAMP'=2081
+'VARYING'=2082
+'VECTOR_READ_TRACE'=2083
+'VECTOR_READ'=2084
+'VECTOR_TRANSFORM_DIMS'=2085
+'VECTOR_TRANSFORM_FACT'=2086
+'VECTOR_TRANSFORM'=2087
+'VERIFIER'=2088
+'VERIFY'=2089
+'VERSIONING'=2090
+'VERSIONS_ENDSCN'=2091
+'VERSIONS_ENDTIME'=2092
+'VERSIONS_OPERATION'=2093
+'VERSIONS_STARTSCN'=2094
+'VERSIONS_STARTTIME'=2095
+'VERSIONS'=2096
+'VERSIONS_XID'=2097
+'VERSION'=2098
+'VIEW'=2099
+'VIOLATION'=2100
+'VIRTUAL'=2101
+'VISIBILITY'=2102
+'VISIBLE'=2103
+'VOLUME'=2104
+'VSIZE'=2105
+'WAIT'=2106
+'WALLET'=2107
+'WARNING'=2108
+'WEEKS'=2109
+'WEEK'=2110
+'WELLFORMED'=2111
+'WHENEVER'=2112
+'WHEN'=2113
+'WHERE'=2114
+'WHILE'=2115
+'WHITESPACE'=2116
+'WIDTH_BUCKET'=2117
+'WITHIN'=2118
+'WITHOUT'=2119
+'WITH_PLSQL'=2120
+'WITH'=2121
+'WORK'=2122
+'WRAPPED'=2123
+'WRAPPER'=2124
+'WRITE'=2125
+'XDB_FASTPATH_INSERT'=2126
+'XDB'=2127
+'X_DYN_PRUNE'=2128
+'XID'=2129
+'XML2OBJECT'=2130
+'XMLAGG'=2131
+'XMLATTRIBUTES'=2132
+'XMLCAST'=2133
+'XMLCDATA'=2134
+'XMLCOLATTVAL'=2135
+'XMLCOMMENT'=2136
+'XMLCONCAT'=2137
+'XMLDIFF'=2138
+'XML_DML_RWT_STMT'=2139
+'XMLELEMENT'=2140
+'XMLEXISTS2'=2141
+'XMLEXISTS'=2142
+'XMLFOREST'=2143
+'XMLINDEX'=2144
+'XMLINDEX_REWRITE_IN_SELECT'=2145
+'XMLINDEX_REWRITE'=2146
+'XMLINDEX_SEL_IDX_TBL'=2147
+'XMLISNODE'=2148
+'XMLISVALID'=2149
+'XMLNAMESPACES'=2150
+'XMLPARSE'=2151
+'XMLPATCH'=2152
+'XMLPI'=2153
+'XMLQUERYVAL'=2154
+'XMLQUERY'=2155
+'XMLROOT'=2156
+'XMLSCHEMA'=2157
+'XMLSERIALIZE'=2158
+'XMLTABLE'=2159
+'XMLTRANSFORMBLOB'=2160
+'XMLTRANSFORM'=2161
+'XMLTYPE'=2162
+'XML'=2163
+'XPATHTABLE'=2164
+'XS_SYS_CONTEXT'=2165
+'XS'=2166
+'XTRANSPORT'=2167
+'YEARS'=2168
+'YEAR'=2169
+'YES'=2170
+'YMINTERVAL_UNCONSTRAINED'=2171
+'ZONEMAP'=2172
+'ZONE'=2173
+'PREDICTION'=2174
+'PREDICTION_BOUNDS'=2175
+'PREDICTION_COST'=2176
+'PREDICTION_DETAILS'=2177
+'PREDICTION_PROBABILITY'=2178
+'PREDICTION_SET'=2179
+'CUME_DIST'=2180
+'DENSE_RANK'=2181
+'LISTAGG'=2182
+'PERCENT_RANK'=2183
+'PERCENTILE_CONT'=2184
+'PERCENTILE_DISC'=2185
+'RANK'=2186
+'AVG'=2187
+'CORR'=2188
+'COVAR_'=2189
+'DECODE'=2190
+'LAG'=2191
+'LEAD'=2192
+'MAX'=2193
+'MEDIAN'=2194
+'MIN'=2195
+'NTILE'=2196
+'NVL'=2197
+'RATIO_TO_REPORT'=2198
+'REGR_'=2199
+'ROUND'=2200
+'ROW_NUMBER'=2201
+'SUBSTR'=2202
+'TO_CHAR'=2203
+'TRIM'=2204
+'SUM'=2205
+'STDDEV'=2206
+'VAR_'=2207
+'VARIANCE'=2208
+'LEAST'=2209
+'GREATEST'=2210
+'TO_DATE'=2211
+'..'=2215
+'.'=2216
+'%'=2221
+'&'=2222
+'('=2223
+')'=2224
+'**'=2225
+'*'=2226
+'+'=2227
+'-'=2228
+','=2229
+'/'=2230
+'@'=2231
+':='=2232
+'^'=2235
+'~'=2236
+'!'=2237
+'>'=2238
+'<'=2239
+':'=2240
+';'=2241
+'|'=2242
+'='=2243
+'['=2244
+']'=2245
+'_'=2246
diff --git a/src/lib/plsql/PlSqlParser.interp b/src/lib/plsql/PlSqlParser.interp
new file mode 100644
index 0000000..7871f0d
--- /dev/null
+++ b/src/lib/plsql/PlSqlParser.interp
@@ -0,0 +1,5268 @@
+token literal names:
+null
+'ABORT'
+'ABS'
+'ACCESS'
+'ACCESSED'
+'ACCOUNT'
+'ACL'
+'ACOS'
+'ACTION'
+'ACTIONS'
+'ACTIVATE'
+'ACTIVE'
+'ACTIVE_COMPONENT'
+'ACTIVE_DATA'
+'ACTIVE_FUNCTION'
+'ACTIVE_TAG'
+'ACTIVITY'
+'ADAPTIVE_PLAN'
+'ADD'
+'ADD_COLUMN'
+'ADD_GROUP'
+'ADD_MONTHS'
+'ADJ_DATE'
+'ADMIN'
+'ADMINISTER'
+'ADMINISTRATOR'
+'ADVANCED'
+'ADVISE'
+'ADVISOR'
+'AFD_DISKSTRING'
+'AFTER'
+'AGENT'
+'AGGREGATE'
+'A'
+'ALIAS'
+'ALL'
+'ALLOCATE'
+'ALLOW'
+'ALL_ROWS'
+'ALTER'
+'ALWAYS'
+'ANALYZE'
+'ANCILLARY'
+'AND'
+'AND_EQUAL'
+'ANOMALY'
+'ANSI_REARCH'
+'ANTIJOIN'
+'ANY'
+'ANYSCHEMA'
+'APPEND'
+'APPENDCHILDXML'
+'APPEND_VALUES'
+'APPLICATION'
+'APPLY'
+'APPROX_COUNT_DISTINCT'
+'ARCHIVAL'
+'ARCHIVE'
+'ARCHIVED'
+'ARCHIVELOG'
+'ARRAY'
+'AS'
+'ASC'
+'ASCII'
+'ASCIISTR'
+'ASIN'
+'ASIS'
+'ASSEMBLY'
+'ASSIGN'
+'ASSOCIATE'
+'ASYNC'
+'ASYNCHRONOUS'
+'ATAN2'
+'ATAN'
+'AT'
+'ATTRIBUTE'
+'ATTRIBUTES'
+'AUDIT'
+'AUTHENTICATED'
+'AUTHENTICATION'
+'AUTHID'
+'AUTHORIZATION'
+'AUTOALLOCATE'
+'AUTO'
+'AUTOBACKUP'
+'AUTOEXTEND'
+'AUTO_LOGIN'
+'AUTOMATIC'
+'AUTONOMOUS_TRANSACTION'
+'AUTO_REOPTIMIZE'
+'AVAILABILITY'
+'AVRO'
+'BACKGROUND'
+'BACKUP'
+'BACKUPSET'
+'BASIC'
+'BASICFILE'
+'BATCH'
+'BATCHSIZE'
+'BATCH_TABLE_ACCESS_BY_ROWID'
+'BECOME'
+'BEFORE'
+'BEGIN'
+'BEGINNING'
+'BEGIN_OUTLINE_DATA'
+'BEHALF'
+'BEQUEATH'
+'BETWEEN'
+'BFILE'
+'BFILENAME'
+'BIGFILE'
+'BINARY'
+'BINARY_DOUBLE'
+'BINARY_DOUBLE_INFINITY'
+'BINARY_DOUBLE_NAN'
+'BINARY_FLOAT'
+'BINARY_FLOAT_INFINITY'
+'BINARY_FLOAT_NAN'
+'BINARY_INTEGER'
+'BIND_AWARE'
+'BINDING'
+'BIN_TO_NUM'
+'BITAND'
+'BITMAP_AND'
+'BITMAP'
+'BITMAPS'
+'BITMAP_TREE'
+'BITS'
+'BLOB'
+'BLOCK'
+'BLOCK_RANGE'
+'BLOCKS'
+'BLOCKSIZE'
+'BODY'
+'BOOLEAN'
+'BOTH'
+'BOUND'
+'BRANCH'
+'BREADTH'
+'BROADCAST'
+'BSON'
+'BUFFER'
+'BUFFER_CACHE'
+'BUFFER_POOL'
+'BUILD'
+'BULK'
+'BY'
+'BYPASS_RECURSIVE_CHECK'
+'BYPASS_UJVC'
+'BYTE'
+'CACHE'
+'CACHE_CB'
+'CACHE_INSTANCES'
+'CACHE_TEMP_TABLE'
+'CACHING'
+'CALCULATED'
+'CALLBACK'
+'CALL'
+'CANCEL'
+'CANONICAL'
+'CAPACITY'
+'CARDINALITY'
+'CASCADE'
+'CASE'
+'CAST'
+'CATEGORY'
+'CDB$DEFAULT'
+'CEIL'
+'CELL_FLASH_CACHE'
+'CERTIFICATE'
+'CFILE'
+'CHAINED'
+'CHANGE'
+'CHANGETRACKING'
+'CHANGE_DUPKEY_ERROR_INDEX'
+'CHARACTER'
+'CHAR'
+'CHAR_CS'
+'CHARTOROWID'
+'CHECK_ACL_REWRITE'
+'CHECK'
+'CHECKPOINT'
+'CHILD'
+'CHOOSE'
+'CHR'
+'CHUNK'
+'CLASS'
+'CLASSIFIER'
+'CLEANUP'
+'CLEAR'
+'C'
+'CLIENT'
+'CLOB'
+'CLONE'
+'CLOSE_CACHED_OPEN_CURSORS'
+'CLOSE'
+'CLUSTER_BY_ROWID'
+'CLUSTER'
+'CLUSTER_DETAILS'
+'CLUSTER_DISTANCE'
+'CLUSTER_ID'
+'CLUSTERING'
+'CLUSTERING_FACTOR'
+'CLUSTER_PROBABILITY'
+'CLUSTER_SET'
+'COALESCE'
+'COALESCE_SQ'
+'COARSE'
+'CO_AUTH_IND'
+'COLD'
+'COLLECT'
+'COLUMNAR'
+'COLUMN_AUTH_INDICATOR'
+'COLUMN'
+'COLUMNS'
+'COLUMN_STATS'
+'COLUMN_VALUE'
+'COMMENT'
+'COMMIT'
+'COMMITTED'
+'COMMON_DATA'
+'COMPACT'
+'COMPATIBILITY'
+'COMPILE'
+'COMPLETE'
+'COMPLIANCE'
+'COMPONENT'
+'COMPONENTS'
+'COMPOSE'
+'COMPOSITE'
+'COMPOSITE_LIMIT'
+'COMPOUND'
+'COMPRESS'
+'COMPUTE'
+'CONCAT'
+'CON_DBID_TO_ID'
+'CONDITIONAL'
+'CONDITION'
+'CONFIRM'
+'CONFORMING'
+'CON_GUID_TO_ID'
+'CON_ID'
+'CON_NAME_TO_ID'
+'CONNECT_BY_CB_WHR_ONLY'
+'CONNECT_BY_COMBINE_SW'
+'CONNECT_BY_COST_BASED'
+'CONNECT_BY_ELIM_DUPS'
+'CONNECT_BY_FILTERING'
+'CONNECT_BY_ISCYCLE'
+'CONNECT_BY_ISLEAF'
+'CONNECT_BY_ROOT'
+'CONNECT'
+'CONNECT_TIME'
+'CONSIDER'
+'CONSISTENT'
+'CONSTANT'
+'CONST'
+'CONSTRAINT'
+'CONSTRAINTS'
+'CONSTRUCTOR'
+'CONTAINER'
+'CONTAINER_DATA'
+'CONTAINERS'
+'CONTENT'
+'CONTENTS'
+'CONTEXT'
+'CONTINUE'
+'CONTROLFILE'
+'CON_UID_TO_ID'
+'CONVERT'
+'COOKIE'
+'COPY'
+'CORR_K'
+'CORR_S'
+'CORRUPTION'
+'CORRUPT_XID_ALL'
+'CORRUPT_XID'
+'COS'
+'COSH'
+'COST'
+'COST_XML_QUERY_REWRITE'
+'COUNT'
+'COVAR_POP'
+'COVAR_SAMP'
+'CPU_COSTING'
+'CPU_PER_CALL'
+'CPU_PER_SESSION'
+'CRASH'
+'CREATE'
+'CREATE_FILE_DEST'
+'CREATE_STORED_OUTLINES'
+'CREATION'
+'CREDENTIAL'
+'CRITICAL'
+'CROSS'
+'CROSSEDITION'
+'CSCONVERT'
+'CUBE_AJ'
+'CUBE'
+'CUBE_GB'
+'CUBE_SJ'
+'CUME_DISTM'
+'CURRENT'
+'CURRENT_DATE'
+'CURRENT_SCHEMA'
+'CURRENT_TIME'
+'CURRENT_TIMESTAMP'
+'CURRENT_USER'
+'CURRENTV'
+'CURSOR'
+'CURSOR_SHARING_EXACT'
+'CURSOR_SPECIFIC_SEGMENT'
+'CUSTOMDATUM'
+'CV'
+'CYCLE'
+'DANGLING'
+'DATABASE'
+'DATA'
+'DATAFILE'
+'DATAFILES'
+'DATAGUARDCONFIG'
+'DATAMOVEMENT'
+'DATAOBJNO'
+'DATAOBJ_TO_MAT_PARTITION'
+'DATAOBJ_TO_PARTITION'
+'DATAPUMP'
+'DATA_SECURITY_REWRITE_LIMIT'
+'DATE'
+'DATE_MODE'
+'DAY'
+'DAYS'
+'DBA'
+'DBA_RECYCLEBIN'
+'DBMS_STATS'
+'DB_ROLE_CHANGE'
+'DBTIMEZONE'
+'DB_UNIQUE_NAME'
+'DB_VERSION'
+'DDL'
+'DEALLOCATE'
+'DEBUG'
+'DEBUGGER'
+'DEC'
+'DECIMAL'
+'DECLARE'
+'DECOMPOSE'
+'DECORRELATE'
+'DECR'
+'DECREMENT'
+'DECRYPT'
+'DEDUPLICATE'
+'DEFAULT'
+'DEFAULTS'
+'DEFERRABLE'
+'DEFERRED'
+'DEFINED'
+'DEFINE'
+'DEFINER'
+'DEGREE'
+'DELAY'
+'DELEGATE'
+'DELETE_ALL'
+'DELETE'
+'DELETEXML'
+'DEMAND'
+'DENSE_RANKM'
+'DEPENDENT'
+'DEPTH'
+'DEQUEUE'
+'DEREF'
+'DEREF_NO_REWRITE'
+'DESC'
+'DESTROY'
+'DETACHED'
+'DETERMINES'
+'DETERMINISTIC'
+'DICTIONARY'
+'DIMENSION'
+'DIMENSIONS'
+'DIRECT_LOAD'
+'DIRECTORY'
+'DIRECT_PATH'
+'DISABLE_ALL'
+'DISABLE'
+'DISABLE_PARALLEL_DML'
+'DISABLE_PRESET'
+'DISABLE_RPKE'
+'DISALLOW'
+'DISASSOCIATE'
+'DISCARD'
+'DISCONNECT'
+'DISK'
+'DISKGROUP'
+'\'+ DISKGROUP'
+'DISKS'
+'DISMOUNT'
+'DISTINCT'
+'DISTINGUISHED'
+'DISTRIBUTED'
+'DISTRIBUTE'
+'DML'
+'DML_UPDATE'
+'DOCFIDELITY'
+'DOCUMENT'
+'DOMAIN_INDEX_FILTER'
+'DOMAIN_INDEX_NO_SORT'
+'DOMAIN_INDEX_SORT'
+'DOUBLE'
+'DOWNGRADE'
+'DRIVING_SITE'
+'DROP_COLUMN'
+'DROP'
+'DROP_GROUP'
+'DSINTERVAL_UNCONSTRAINED'
+'DST_UPGRADE_INSERT_CONV'
+'DUMP'
+'DUMPSET'
+'DUPLICATE'
+'DV'
+'DYNAMIC'
+'DYNAMIC_SAMPLING'
+'DYNAMIC_SAMPLING_EST_CDN'
+'EACH'
+'EDITIONABLE'
+'EDITION'
+'EDITIONING'
+'EDITIONS'
+'ELEMENT'
+'ELIM_GROUPBY'
+'ELIMINATE_JOIN'
+'ELIMINATE_OBY'
+'ELIMINATE_OUTER_JOIN'
+'ELSE'
+'ELSIF'
+'EM'
+'EMPTY_BLOB'
+'EMPTY_CLOB'
+'EMPTY'
+'ENABLE_ALL'
+'ENABLE'
+'ENABLE_PARALLEL_DML'
+'ENABLE_PRESET'
+'ENCODING'
+'ENCRYPT'
+'ENCRYPTION'
+'END'
+'END_OUTLINE_DATA'
+'ENFORCED'
+'ENFORCE'
+'ENQUEUE'
+'ENTERPRISE'
+'ENTITYESCAPING'
+'ENTRY'
+'EQUIPART'
+'ERR'
+'ERROR_ARGUMENT'
+'ERROR'
+'ERROR_ON_OVERLAP_TIME'
+'ERRORS'
+'ESCAPE'
+'ESTIMATE'
+'EVAL'
+'EVALNAME'
+'EVALUATE'
+'EVALUATION'
+'EVENTS'
+'EVERY'
+'EXCEPT'
+'EXCEPTION'
+'EXCEPTION_INIT'
+'EXCEPTIONS'
+'EXCHANGE'
+'EXCLUDE'
+'EXCLUDING'
+'EXCLUSIVE'
+'EXECUTE'
+'EXEMPT'
+'EXISTING'
+'EXISTS'
+'EXISTSNODE'
+'EXIT'
+'EXPAND_GSET_TO_UNION'
+'EXPAND_TABLE'
+'EXP'
+'EXPIRE'
+'EXPLAIN'
+'EXPLOSION'
+'EXPORT'
+'EXPR_CORR_CHECK'
+'EXPRESS'
+'EXTENDS'
+'EXTENT'
+'EXTENTS'
+'EXTERNAL'
+'EXTERNALLY'
+'EXTRACTCLOBXML'
+'EXTRACT'
+'EXTRACTVALUE'
+'EXTRA'
+'FACILITY'
+'FACT'
+'FACTOR'
+'FACTORIZE_JOIN'
+'FAILED'
+'FAILED_LOGIN_ATTEMPTS'
+'FAILGROUP'
+'FAILOVER'
+'FAILURE'
+'FALSE'
+'FAMILY'
+'FAR'
+'FAST'
+'FASTSTART'
+'FBTSCAN'
+'FEATURE_DETAILS'
+'FEATURE_ID'
+'FEATURE_SET'
+'FEATURE_VALUE'
+'FETCH'
+'FILE'
+'FILE_NAME_CONVERT'
+'FILESYSTEM_LIKE_LOGGING'
+'FILTER'
+'FINAL'
+'FINE'
+'FINISH'
+'FIRST'
+'FIRSTM'
+'FIRST_ROWS'
+'FIRST_VALUE'
+'FIXED_VIEW_DATA'
+'FLAGGER'
+'FLASHBACK'
+'FLASH_CACHE'
+'FLOAT'
+'FLOB'
+'FLOOR'
+'FLUSH'
+'FOLDER'
+'FOLLOWING'
+'FOLLOWS'
+'FORALL'
+'FORCE'
+'FORCE_XML_QUERY_REWRITE'
+'FOREIGN'
+'FOREVER'
+'FOR'
+'FORMAT'
+'FORWARD'
+'FRAGMENT_NUMBER'
+'FREELIST'
+'FREELISTS'
+'FREEPOOLS'
+'FRESH'
+'FROM'
+'FROM_TZ'
+'FULL'
+'FULL_OUTER_JOIN_TO_OUTER'
+'FUNCTION'
+'FUNCTIONS'
+'GATHER_OPTIMIZER_STATISTICS'
+'GATHER_PLAN_STATISTICS'
+'GBY_CONC_ROLLUP'
+'GBY_PUSHDOWN'
+'GENERATED'
+'GET'
+'GLOBAL'
+'GLOBALLY'
+'GLOBAL_NAME'
+'GLOBAL_TOPIC_ENABLED'
+'GOTO'
+'GRANT'
+'GROUP_BY'
+'GROUP'
+'GROUP_ID'
+'GROUPING'
+'GROUPING_ID'
+'GROUPS'
+'GUARANTEED'
+'GUARANTEE'
+'GUARD'
+'HASH_AJ'
+'HASH'
+'HASHKEYS'
+'HASH_SJ'
+'HAVING'
+'HEADER'
+'HEAP'
+'HELP'
+'HEXTORAW'
+'HEXTOREF'
+'HIDDEN'
+'HIDE'
+'HIERARCHY'
+'HIGH'
+'HINTSET_BEGIN'
+'HINTSET_END'
+'HOT'
+'HOUR'
+'HWM_BROKERED'
+'HYBRID'
+'IDENTIFIED'
+'IDENTIFIER'
+'IDENTITY'
+'IDGENERATORS'
+'ID'
+'IDLE_TIME'
+'IF'
+'IGNORE'
+'IGNORE_OPTIM_EMBEDDED_HINTS'
+'IGNORE_ROW_ON_DUPKEY_INDEX'
+'IGNORE_WHERE_CLAUSE'
+'ILM'
+'IMMEDIATE'
+'IMPACT'
+'IMPORT'
+'INACTIVE'
+'INCLUDE'
+'INCLUDE_VERSION'
+'INCLUDING'
+'INCREMENTAL'
+'INCREMENT'
+'INCR'
+'INDENT'
+'INDEX_ASC'
+'INDEX_COMBINE'
+'INDEX_DESC'
+'INDEXED'
+'INDEXES'
+'INDEX_FFS'
+'INDEX_FILTER'
+'INDEX'
+'INDEXING'
+'INDEX_JOIN'
+'INDEX_ROWS'
+'INDEX_RRS'
+'INDEX_RS_ASC'
+'INDEX_RS_DESC'
+'INDEX_RS'
+'INDEX_SCAN'
+'INDEX_SKIP_SCAN'
+'INDEX_SS_ASC'
+'INDEX_SS_DESC'
+'INDEX_SS'
+'INDEX_STATS'
+'INDEXTYPE'
+'INDEXTYPES'
+'INDICATOR'
+'INDICES'
+'INFINITE'
+'INFORMATIONAL'
+'INHERIT'
+'IN'
+'INITCAP'
+'INITIAL'
+'INITIALIZED'
+'INITIALLY'
+'INITRANS'
+'INLINE'
+'INLINE_XMLTYPE_NT'
+'INMEMORY'
+'IN_MEMORY_METADATA'
+'INMEMORY_PRUNING'
+'INNER'
+'INOUT'
+'INPLACE'
+'INSERTCHILDXMLAFTER'
+'INSERTCHILDXMLBEFORE'
+'INSERTCHILDXML'
+'INSERT'
+'INSERTXMLAFTER'
+'INSERTXMLBEFORE'
+'INSTANCE'
+'INSTANCES'
+'INSTANTIABLE'
+'INSTANTLY'
+'INSTEAD'
+'INSTR2'
+'INSTR4'
+'INSTRB'
+'INSTRC'
+'INSTR'
+'INTEGER'
+'INTERLEAVED'
+'INTERMEDIATE'
+'INTERNAL_CONVERT'
+'INTERNAL_USE'
+'INTERPRETED'
+'INTERSECT'
+'INTERVAL'
+'INT'
+'INTO'
+'INVALIDATE'
+'INVISIBLE'
+'IN_XQUERY'
+'IS'
+'ISOLATION'
+'ISOLATION_LEVEL'
+'ITERATE'
+'ITERATION_NUMBER'
+'JAVA'
+'JOB'
+'JOIN'
+'JSON_ARRAYAGG'
+'JSON_ARRAY'
+'JSON_EQUAL'
+'JSON_EXISTS2'
+'JSON_EXISTS'
+'JSONGET'
+'JSON'
+'JSON_OBJECTAGG'
+'JSON_OBJECT'
+'JSONPARSE'
+'JSON_QUERY'
+'JSON_SERIALIZE'
+'JSON_TABLE'
+'JSON_TEXTCONTAINS2'
+'JSON_TEXTCONTAINS'
+'JSON_VALUE'
+'KEEP_DUPLICATES'
+'KEEP'
+'KERBEROS'
+'KEY'
+'KEY_LENGTH'
+'KEYSIZE'
+'KEYS'
+'KEYSTORE'
+'KILL'
+'LABEL'
+'LANGUAGE'
+'LAST_DAY'
+'LAST'
+'LAST_VALUE'
+'LATERAL'
+'LAX'
+'LAYER'
+'LDAP_REGISTRATION_ENABLED'
+'LDAP_REGISTRATION'
+'LDAP_REG_SYNC_INTERVAL'
+'LEADING'
+'LEFT'
+'LENGTH2'
+'LENGTH4'
+'LENGTHB'
+'LENGTHC'
+'LENGTH'
+'LESS'
+'LEVEL'
+'LEVELS'
+'LIBRARY'
+'LIFECYCLE'
+'LIFE'
+'LIFETIME'
+'LIKE2'
+'LIKE4'
+'LIKEC'
+'LIKE_EXPAND'
+'LIKE'
+'LIMIT'
+'LINEAR'
+'LINK'
+'LIST'
+'LN'
+'LNNVL'
+'LOAD'
+'LOB'
+'LOBNVL'
+'LOBS'
+'LOCAL_INDEXES'
+'LOCAL'
+'LOCALTIME'
+'LOCALTIMESTAMP'
+'LOCATION'
+'LOCATOR'
+'LOCKED'
+'LOCKING'
+'LOCK'
+'LOGFILE'
+'LOGFILES'
+'LOGGING'
+'LOGICAL'
+'LOGICAL_READS_PER_CALL'
+'LOGICAL_READS_PER_SESSION'
+'LOG'
+'LOGMINING'
+'LOGOFF'
+'LOGON'
+'LOG_READ_ONLY_VIOLATIONS'
+'LONG'
+'LOOP'
+'LOWER'
+'LOW'
+'LPAD'
+'LTRIM'
+'MAIN'
+'MAKE_REF'
+'MANAGED'
+'MANAGE'
+'MANAGEMENT'
+'MANAGER'
+'MANUAL'
+'MAP'
+'MAPPING'
+'MASTER'
+'MATCHED'
+'MATCHES'
+'MATCH'
+'MATCH_NUMBER'
+'MATCH_RECOGNIZE'
+'MATERIALIZED'
+'MATERIALIZE'
+'MAXARCHLOGS'
+'MAXDATAFILES'
+'MAXEXTENTS'
+'MAXIMIZE'
+'MAXINSTANCES'
+'MAXLOGFILES'
+'MAXLOGHISTORY'
+'MAXLOGMEMBERS'
+'MAX_SHARED_TEMP_SIZE'
+'MAXSIZE'
+'MAXTRANS'
+'MAXVALUE'
+'MEASURE'
+'MEASURES'
+'MEDIUM'
+'MEMBER'
+'MEMCOMPRESS'
+'MEMORY'
+'MERGE$ACTIONS'
+'MERGE_AJ'
+'MERGE_CONST_ON'
+'MERGE'
+'MERGE_SJ'
+'METADATA'
+'METHOD'
+'MIGRATE'
+'MIGRATION'
+'MINEXTENTS'
+'MINIMIZE'
+'MINIMUM'
+'MINING'
+'MINUS'
+'MINUS_NULL'
+'MINUTE'
+'MINVALUE'
+'MIRRORCOLD'
+'MIRRORHOT'
+'MIRROR'
+'MLSLABEL'
+'MODEL_COMPILE_SUBQUERY'
+'MODEL_DONTVERIFY_UNIQUENESS'
+'MODEL_DYNAMIC_SUBQUERY'
+'MODEL_MIN_ANALYSIS'
+'MODEL'
+'MODEL_NB'
+'MODEL_NO_ANALYSIS'
+'MODEL_PBY'
+'MODEL_PUSH_REF'
+'MODEL_SV'
+'MODE'
+'MODIFICATION'
+'MODIFY_COLUMN_TYPE'
+'MODIFY'
+'MOD'
+'MODULE'
+'MONITORING'
+'MONITOR'
+'MONTH'
+'MONTHS_BETWEEN'
+'MONTHS'
+'MOUNT'
+'MOUNTPATH'
+'MOVEMENT'
+'MOVE'
+'MULTIDIMENSIONAL'
+'MULTISET'
+'MV_MERGE'
+'NAMED'
+'NAME'
+'NAMESPACE'
+'NAN'
+'NANVL'
+'NATIONAL'
+'NATIVE_FULL_OUTER_JOIN'
+'NATIVE'
+'NATURAL'
+'NATURALN'
+'NAV'
+'NCHAR_CS'
+'NCHAR'
+'NCHR'
+'NCLOB'
+'NEEDED'
+'NEG'
+'NESTED'
+'NESTED_TABLE_FAST_INSERT'
+'NESTED_TABLE_GET_REFS'
+'NESTED_TABLE_ID'
+'NESTED_TABLE_SET_REFS'
+'NESTED_TABLE_SET_SETID'
+'NETWORK'
+'NEVER'
+'NEW'
+'NEW_TIME'
+'NEXT_DAY'
+'NEXT'
+'NL_AJ'
+'NLJ_BATCHING'
+'NLJ_INDEX_FILTER'
+'NLJ_INDEX_SCAN'
+'NLJ_PREFETCH'
+'NLS_CALENDAR'
+'NLS_CHARACTERSET'
+'NLS_CHARSET_DECL_LEN'
+'NLS_CHARSET_ID'
+'NLS_CHARSET_NAME'
+'NLS_COMP'
+'NLS_CURRENCY'
+'NLS_DATE_FORMAT'
+'NLS_DATE_LANGUAGE'
+'NLS_INITCAP'
+'NLS_ISO_CURRENCY'
+'NL_SJ'
+'NLS_LANG'
+'NLS_LANGUAGE'
+'NLS_LENGTH_SEMANTICS'
+'NLS_LOWER'
+'NLS_NCHAR_CONV_EXCP'
+'NLS_NUMERIC_CHARACTERS'
+'NLS_SORT'
+'NLSSORT'
+'NLS_SPECIAL_CHARS'
+'NLS_TERRITORY'
+'NLS_UPPER'
+'NO_ACCESS'
+'NO_ADAPTIVE_PLAN'
+'NO_ANSI_REARCH'
+'NOAPPEND'
+'NOARCHIVELOG'
+'NOAUDIT'
+'NO_AUTO_REOPTIMIZE'
+'NO_BASETABLE_MULTIMV_REWRITE'
+'NO_BATCH_TABLE_ACCESS_BY_ROWID'
+'NO_BIND_AWARE'
+'NO_BUFFER'
+'NOCACHE'
+'NO_CARTESIAN'
+'NO_CHECK_ACL_REWRITE'
+'NO_CLUSTER_BY_ROWID'
+'NO_CLUSTERING'
+'NO_COALESCE_SQ'
+'NO_COMMON_DATA'
+'NOCOMPRESS'
+'NO_CONNECT_BY_CB_WHR_ONLY'
+'NO_CONNECT_BY_COMBINE_SW'
+'NO_CONNECT_BY_COST_BASED'
+'NO_CONNECT_BY_ELIM_DUPS'
+'NO_CONNECT_BY_FILTERING'
+'NOCOPY'
+'NO_COST_XML_QUERY_REWRITE'
+'NO_CPU_COSTING'
+'NOCPU_COSTING'
+'NOCYCLE'
+'NO_DATA_SECURITY_REWRITE'
+'NO_DECORRELATE'
+'NODELAY'
+'NO_DOMAIN_INDEX_FILTER'
+'NO_DST_UPGRADE_INSERT_CONV'
+'NO_ELIM_GROUPBY'
+'NO_ELIMINATE_JOIN'
+'NO_ELIMINATE_OBY'
+'NO_ELIMINATE_OUTER_JOIN'
+'NOENTITYESCAPING'
+'NO_EXPAND_GSET_TO_UNION'
+'NO_EXPAND'
+'NO_EXPAND_TABLE'
+'NO_FACT'
+'NO_FACTORIZE_JOIN'
+'NO_FILTERING'
+'NOFORCE'
+'NO_FULL_OUTER_JOIN_TO_OUTER'
+'NO_GATHER_OPTIMIZER_STATISTICS'
+'NO_GBY_PUSHDOWN'
+'NOGUARANTEE'
+'NO_INDEX_FFS'
+'NO_INDEX'
+'NO_INDEX_SS'
+'NO_INMEMORY'
+'NO_INMEMORY_PRUNING'
+'NOKEEP'
+'NO_LOAD'
+'NOLOCAL'
+'NOLOGGING'
+'NOMAPPING'
+'NOMAXVALUE'
+'NO_MERGE'
+'NOMINIMIZE'
+'NOMINVALUE'
+'NO_MODEL_PUSH_REF'
+'NO_MONITORING'
+'NOMONITORING'
+'NO_MONITOR'
+'NO_MULTIMV_REWRITE'
+'NO_NATIVE_FULL_OUTER_JOIN'
+'NONBLOCKING'
+'NONEDITIONABLE'
+'NONE'
+'NO_NLJ_BATCHING'
+'NO_NLJ_PREFETCH'
+'NO'
+'NONSCHEMA'
+'NO_OBJECT_LINK'
+'NOORDER'
+'NO_ORDER_ROLLUPS'
+'NO_OUTER_JOIN_TO_ANTI'
+'NO_OUTER_JOIN_TO_INNER'
+'NOOVERRIDE'
+'NO_PARALLEL_INDEX'
+'NOPARALLEL_INDEX'
+'NO_PARALLEL'
+'NOPARALLEL'
+'NO_PARTIAL_COMMIT'
+'NO_PARTIAL_JOIN'
+'NO_PARTIAL_ROLLUP_PUSHDOWN'
+'NOPARTITION'
+'NO_PLACE_DISTINCT'
+'NO_PLACE_GROUP_BY'
+'NO_PQ_CONCURRENT_UNION'
+'NO_PQ_MAP'
+'NO_PQ_REPLICATE'
+'NO_PQ_SKEW'
+'NO_PRUNE_GSETS'
+'NO_PULL_PRED'
+'NO_PUSH_PRED'
+'NO_PUSH_SUBQ'
+'NO_PX_FAULT_TOLERANCE'
+'NO_PX_JOIN_FILTER'
+'NO_QKN_BUFF'
+'NO_QUERY_TRANSFORMATION'
+'NO_REF_CASCADE'
+'NORELOCATE'
+'NORELY'
+'NOREPAIR'
+'NOREPLAY'
+'NORESETLOGS'
+'NO_RESULT_CACHE'
+'NOREVERSE'
+'NO_REWRITE'
+'NOREWRITE'
+'NORMAL'
+'NO_ROOT_SW_FOR_LOCAL'
+'NOROWDEPENDENCIES'
+'NOSCHEMACHECK'
+'NOSEGMENT'
+'NO_SEMIJOIN'
+'NO_SEMI_TO_INNER'
+'NO_SET_TO_JOIN'
+'NOSORT'
+'NO_SQL_TRANSLATION'
+'NO_SQL_TUNE'
+'NO_STAR_TRANSFORMATION'
+'NO_STATEMENT_QUEUING'
+'NO_STATS_GSETS'
+'NOSTRICT'
+'NO_SUBQUERY_PRUNING'
+'NO_SUBSTRB_PAD'
+'NO_SWAP_JOIN_INPUTS'
+'NOSWITCH'
+'NO_TABLE_LOOKUP_BY_NL'
+'NO_TEMP_TABLE'
+'NOTHING'
+'NOTIFICATION'
+'NOT'
+'NO_TRANSFORM_DISTINCT_AGG'
+'NO_UNNEST'
+'NO_USE_CUBE'
+'NO_USE_HASH_AGGREGATION'
+'NO_USE_HASH_GBY_FOR_PUSHDOWN'
+'NO_USE_HASH'
+'NO_USE_INVISIBLE_INDEXES'
+'NO_USE_MERGE'
+'NO_USE_NL'
+'NO_USE_VECTOR_AGGREGATION'
+'NOVALIDATE'
+'NO_VECTOR_TRANSFORM_DIMS'
+'NO_VECTOR_TRANSFORM_FACT'
+'NO_VECTOR_TRANSFORM'
+'NOWAIT'
+'NO_XDB_FASTPATH_INSERT'
+'NO_XML_DML_REWRITE'
+'NO_XMLINDEX_REWRITE_IN_SELECT'
+'NO_XMLINDEX_REWRITE'
+'NO_XML_QUERY_REWRITE'
+'NO_ZONEMAP'
+'NTH_VALUE'
+'NULLIF'
+'NULL'
+'NULLS'
+'NUMBER'
+'NUMERIC'
+'NUM_INDEX_KEYS'
+'NUMTODSINTERVAL'
+'NUMTOYMINTERVAL'
+'NVARCHAR2'
+'NVL2'
+'OBJECT2XML'
+'OBJECT'
+'OBJ_ID'
+'OBJNO'
+'OBJNO_REUSE'
+'OCCURENCES'
+'OFFLINE'
+'OFF'
+'OFFSET'
+'OF'
+'OIDINDEX'
+'OID'
+'OLAP'
+'OLD'
+'OLD_PUSH_PRED'
+'OLS'
+'OLTP'
+'OMIT'
+'ONE'
+'ONLINE'
+'ONLINELOG'
+'ONLY'
+'ON'
+'OPAQUE'
+'OPAQUE_TRANSFORM'
+'OPAQUE_XCANONICAL'
+'OPCODE'
+'OPEN'
+'OPERATIONS'
+'OPERATOR'
+'OPT_ESTIMATE'
+'OPTIMAL'
+'OPTIMIZE'
+'OPTIMIZER_FEATURES_ENABLE'
+'OPTIMIZER_GOAL'
+'OPTION'
+'OPT_PARAM'
+'ORA_BRANCH'
+'ORA_CHECK_ACL'
+'ORA_CHECK_PRIVILEGE'
+'ORA_CLUSTERING'
+'ORADATA'
+'ORADEBUG'
+'ORA_DST_AFFECTED'
+'ORA_DST_CONVERT'
+'ORA_DST_ERROR'
+'ORA_GET_ACLIDS'
+'ORA_GET_PRIVILEGES'
+'ORA_HASH'
+'ORA_INVOKING_USERID'
+'ORA_INVOKING_USER'
+'ORA_INVOKING_XS_USER_GUID'
+'ORA_INVOKING_XS_USER'
+'ORA_RAWCOMPARE'
+'ORA_RAWCONCAT'
+'ORA_ROWSCN'
+'ORA_ROWSCN_RAW'
+'ORA_ROWVERSION'
+'ORA_TABVERSION'
+'ORA_WRITE_TIME'
+'ORDERED'
+'ORDERED_PREDICATES'
+'ORDER'
+'ORDINALITY'
+'OR_EXPAND'
+'ORGANIZATION'
+'OR'
+'OR_PREDICATES'
+'OSERROR'
+'OTHER'
+'OUTER_JOIN_TO_ANTI'
+'OUTER_JOIN_TO_INNER'
+'OUTER'
+'OUTLINE_LEAF'
+'OUTLINE'
+'OUT_OF_LINE'
+'OUT'
+'OVERFLOW_NOMOVE'
+'OVERFLOW'
+'OVERLAPS'
+'OVER'
+'OVERRIDING'
+'OWNER'
+'OWNERSHIP'
+'OWN'
+'PACKAGE'
+'PACKAGES'
+'PARALLEL_ENABLE'
+'PARALLEL_INDEX'
+'PARALLEL'
+'PARAMETERFILE'
+'PARAMETERS'
+'PARAM'
+'PARENT'
+'PARITY'
+'PARTIAL_JOIN'
+'PARTIALLY'
+'PARTIAL'
+'PARTIAL_ROLLUP_PUSHDOWN'
+'PARTITION_HASH'
+'PARTITION_LIST'
+'PARTITION'
+'PARTITION_RANGE'
+'PARTITIONS'
+'PART$NUM$INST'
+'PASSING'
+'PASSWORD_GRACE_TIME'
+'PASSWORD_LIFE_TIME'
+'PASSWORD_LOCK_TIME'
+'PASSWORD'
+'PASSWORD_REUSE_MAX'
+'PASSWORD_REUSE_TIME'
+'PASSWORD_VERIFY_FUNCTION'
+'PAST'
+'PATCH'
+'PATH'
+'PATH_PREFIX'
+'PATHS'
+'PATTERN'
+'PBL_HS_BEGIN'
+'PBL_HS_END'
+'PCTFREE'
+'PCTINCREASE'
+'PCTTHRESHOLD'
+'PCTUSED'
+'PCTVERSION'
+'PENDING'
+null
+null
+null
+'PERCENT'
+'PERCENT_RANKM'
+null
+null
+null
+'PERFORMANCE'
+'PERIOD'
+'PERMANENT'
+'PERMISSION'
+'PERMUTE'
+'PER'
+'PFILE'
+'PHYSICAL'
+'PIKEY'
+'PIPELINED'
+'PIPE'
+'PIV_GB'
+'PIVOT'
+'PIV_SSF'
+'PLACE_DISTINCT'
+'PLACE_GROUP_BY'
+'PLAN'
+'PLSCOPE_SETTINGS'
+'PLS_INTEGER'
+'PLSQL_CCFLAGS'
+'PLSQL_CODE_TYPE'
+'PLSQL_DEBUG'
+'PLSQL_OPTIMIZE_LEVEL'
+'PLSQL_WARNINGS'
+'PLUGGABLE'
+'POINT'
+'POLICY'
+'POOL_16K'
+'POOL_2K'
+'POOL_32K'
+'POOL_4K'
+'POOL_8K'
+'POSITIVEN'
+'POSITIVE'
+'POST_TRANSACTION'
+'POWERMULTISET_BY_CARDINALITY'
+'POWERMULTISET'
+'POWER'
+'PQ_CONCURRENT_UNION'
+'PQ_DISTRIBUTE'
+'PQ_DISTRIBUTE_WINDOW'
+'PQ_FILTER'
+'PQ_MAP'
+'PQ_NOMAP'
+'PQ_REPLICATE'
+'PQ_SKEW'
+'PRAGMA'
+'PREBUILT'
+'PRECEDES'
+'PRECEDING'
+'PRECISION'
+'PRECOMPUTE_SUBQUERY'
+'PREDICATE_REORDERS'
+'PRELOAD'
+'PREPARE'
+'PRESENTNNV'
+'PRESENT'
+'PRESENTV'
+'PRESERVE_OID'
+'PRESERVE'
+'PRETTY'
+'PREVIOUS'
+'PREV'
+'PRIMARY'
+'PRINTBLOBTOCLOB'
+'PRIORITY'
+'PRIOR'
+'PRIVATE'
+'PRIVATE_SGA'
+'PRIVILEGED'
+'PRIVILEGE'
+'PRIVILEGES'
+'PROCEDURAL'
+'PROCEDURE'
+'PROCESS'
+'PROFILE'
+'PROGRAM'
+'PROJECT'
+'PROPAGATE'
+'PROTECTED'
+'PROTECTION'
+'PROXY'
+'PRUNING'
+'PUBLIC'
+'PULL_PRED'
+'PURGE'
+'PUSH_PRED'
+'PUSH_SUBQ'
+'PX_FAULT_TOLERANCE'
+'PX_GRANULE'
+'PX_JOIN_FILTER'
+'QB_NAME'
+'QUERY_BLOCK'
+'QUERY'
+'QUEUE_CURR'
+'QUEUE'
+'QUEUE_ROWP'
+'QUIESCE'
+'QUORUM'
+'QUOTA'
+'RAISE'
+'RANDOM_LOCAL'
+'RANDOM'
+'RANGE'
+'RANKM'
+'RAPIDLY'
+'RAW'
+'RAWTOHEX'
+'RAWTONHEX'
+'RBA'
+'RBO_OUTLINE'
+'RDBA'
+'READ'
+'READS'
+'REALM'
+'REAL'
+'REBALANCE'
+'REBUILD'
+'RECORD'
+'RECORDS_PER_BLOCK'
+'RECOVERABLE'
+'RECOVER'
+'RECOVERY'
+'RECYCLEBIN'
+'RECYCLE'
+'REDACTION'
+'REDEFINE'
+'REDO'
+'REDUCED'
+'REDUNDANCY'
+'REF_CASCADE_CURSOR'
+'REFERENCED'
+'REFERENCE'
+'REFERENCES'
+'REFERENCING'
+'REF'
+'REFRESH'
+'REFTOHEX'
+'REGEXP_COUNT'
+'REGEXP_INSTR'
+'REGEXP_LIKE'
+'REGEXP_REPLACE'
+'REGEXP_SUBSTR'
+'REGISTER'
+'REGR_AVGX'
+'REGR_AVGY'
+'REGR_COUNT'
+'REGR_INTERCEPT'
+'REGR_R2'
+'REGR_SLOPE'
+'REGR_SXX'
+'REGR_SXY'
+'REGR_SYY'
+'REGULAR'
+'REJECT'
+'REKEY'
+'RELATIONAL'
+'RELIES_ON'
+'RELOCATE'
+'RELY'
+'REMAINDER'
+'REMOTE_MAPPED'
+'REMOVE'
+'RENAME'
+'REPAIR'
+'REPEAT'
+'REPLACE'
+'REPLICATION'
+'REQUIRED'
+'RESETLOGS'
+'RESET'
+'RESIZE'
+'RESOLVE'
+'RESOLVER'
+'RESOURCE'
+'RESPECT'
+'RESTART'
+'RESTORE_AS_INTERVALS'
+'RESTORE'
+'RESTRICT_ALL_REF_CONS'
+'RESTRICTED'
+'RESTRICT_REFERENCES'
+'RESTRICT'
+'RESULT_CACHE'
+'RESULT'
+'RESUMABLE'
+'RESUME'
+'RETENTION'
+'RETRY_ON_ROW_CHANGE'
+'RETURNING'
+'RETURN'
+'REUSE'
+'REVERSE'
+'REVOKE'
+'REWRITE_OR_ERROR'
+'REWRITE'
+'RIGHT'
+'ROLE'
+'ROLESET'
+'ROLES'
+'ROLLBACK'
+'ROLLING'
+'ROLLUP'
+'ROWDEPENDENCIES'
+'ROWID_MAPPING_TABLE'
+'ROWID'
+'ROWIDTOCHAR'
+'ROWIDTONCHAR'
+'ROW_LENGTH'
+'ROWNUM'
+'ROW'
+'ROWS'
+'RPAD'
+'RTRIM'
+'RULE'
+'RULES'
+'RUNNING'
+'SALT'
+'SAMPLE'
+'SAVE_AS_INTERVALS'
+'SAVEPOINT'
+'SAVE'
+'SB4'
+'SCALE_ROWS'
+'SCALE'
+'SCAN_INSTANCES'
+'SCAN'
+'SCHEDULER'
+'SCHEMACHECK'
+'SCHEMA'
+'SCN_ASCENDING'
+'SCN'
+'SCOPE'
+'SCRUB'
+'SD_ALL'
+'SD_INHIBIT'
+'SDO_GEOM_MBR'
+'SD_SHOW'
+'SEARCH'
+'SECOND'
+'SECRET'
+'SECUREFILE_DBA'
+'SECUREFILE'
+'SECURITY'
+'SEED'
+'SEG_BLOCK'
+'SEG_FILE'
+'SEGMENT'
+'SELECTIVITY'
+'SELECT'
+'SELF'
+'SEMIJOIN_DRIVER'
+'SEMIJOIN'
+'SEMI_TO_INNER'
+'SEQUENCED'
+'SEQUENCE'
+'SEQUENTIAL'
+'SEQ'
+'SERIALIZABLE'
+'SERIALLY_REUSABLE'
+'SERIAL'
+'SERVERERROR'
+'SERVICE_NAME_CONVERT'
+'SERVICES'
+'SESSION_CACHED_CURSORS'
+'SESSION'
+'SESSIONS_PER_USER'
+'SESSIONTIMEZONE'
+'SESSIONTZNAME'
+'SET'
+'SETS'
+'SETTINGS'
+'SET_TO_JOIN'
+'SEVERE'
+'SHARED_POOL'
+'SHARED'
+'SHARE'
+'SHARING'
+'SHELFLIFE'
+'SHOW'
+'SHRINK'
+'SHUTDOWN'
+'SIBLINGS'
+'SID'
+'SIGNAL_COMPONENT'
+'SIGNAL_FUNCTION'
+'SIGN'
+'SIGNTYPE'
+'SIMPLE_INTEGER'
+'SIMPLE'
+'SINGLE'
+'SINGLETASK'
+'SINH'
+'SIN'
+'SIZE'
+'SKIP_EXT_OPTIMIZER'
+'SKIP'
+'SKIP_UNQ_UNUSABLE_IDX'
+'SKIP_UNUSABLE_INDEXES'
+'SMALLFILE'
+'SMALLINT'
+'SNAPSHOT'
+'SOME'
+'SORT'
+'SOUNDEX'
+'SOURCE_FILE_DIRECTORY'
+'SOURCE_FILE_NAME_CONVERT'
+'SOURCE'
+'SPACE'
+'SPECIFICATION'
+'SPFILE'
+'SPLIT'
+'SPREADSHEET'
+'SQLDATA'
+'SQLERROR'
+'SQLLDR'
+'SQL'
+'SQL_TRACE'
+'SQL_TRANSLATION_PROFILE'
+'SQRT'
+'STALE'
+'STANDALONE'
+'STANDARD_HASH'
+'STANDBY_MAX_DATA_DELAY'
+'STANDBYS'
+'STANDBY'
+'STAR'
+'STAR_TRANSFORMATION'
+'START'
+'STARTUP'
+'STATEMENT_ID'
+'STATEMENT_QUEUING'
+'STATEMENTS'
+'STATEMENT'
+'STATE'
+'STATIC'
+'STATISTICS'
+'STATS_BINOMIAL_TEST'
+'STATS_CROSSTAB'
+'STATS_F_TEST'
+'STATS_KS_TEST'
+'STATS_MODE'
+'STATS_MW_TEST'
+'STATS_ONE_WAY_ANOVA'
+'STATS_T_TEST_INDEP'
+'STATS_T_TEST_INDEPU'
+'STATS_T_TEST_ONE'
+'STATS_T_TEST_PAIRED'
+'STATS_WSR_TEST'
+'STDDEV_POP'
+'STDDEV_SAMP'
+'STOP'
+'STORAGE'
+'STORE'
+'STREAMS'
+'STREAM'
+'STRICT'
+'STRING'
+'STRIPE_COLUMNS'
+'STRIPE_WIDTH'
+'STRIP'
+'STRUCTURE'
+'SUBMULTISET'
+'SUBPARTITION_REL'
+'SUBPARTITIONS'
+'SUBPARTITION'
+'SUBQUERIES'
+'SUBQUERY_PRUNING'
+'SUBSCRIBE'
+'SUBSET'
+'SUBSTITUTABLE'
+'SUBSTR2'
+'SUBSTR4'
+'SUBSTRB'
+'SUBSTRC'
+'SUBTYPE'
+'SUCCESSFUL'
+'SUCCESS'
+'SUMMARY'
+'SUPPLEMENTAL'
+'SUSPEND'
+'SWAP_JOIN_INPUTS'
+'SWITCHOVER'
+'SWITCH'
+'SYNCHRONOUS'
+'SYNC'
+'SYNONYM'
+'SYSASM'
+'SYS_AUDIT'
+'SYSAUX'
+'SYSBACKUP'
+'SYS_CHECKACL'
+'SYS_CHECK_PRIVILEGE'
+'SYS_CONNECT_BY_PATH'
+'SYS_CONTEXT'
+'SYSDATE'
+'SYSDBA'
+'SYS_DBURIGEN'
+'SYSDG'
+'SYS_DL_CURSOR'
+'SYS_DM_RXFORM_CHR'
+'SYS_DM_RXFORM_NUM'
+'SYS_DOM_COMPARE'
+'SYS_DST_PRIM2SEC'
+'SYS_DST_SEC2PRIM'
+'SYS_ET_BFILE_TO_RAW'
+'SYS_ET_BLOB_TO_IMAGE'
+'SYS_ET_IMAGE_TO_BLOB'
+'SYS_ET_RAW_TO_BFILE'
+'SYS_EXTPDTXT'
+'SYS_EXTRACT_UTC'
+'SYS_FBT_INSDEL'
+'SYS_FILTER_ACLS'
+'SYS_FNMATCHES'
+'SYS_FNREPLACE'
+'SYS_GET_ACLIDS'
+'SYS_GET_COL_ACLIDS'
+'SYS_GET_PRIVILEGES'
+'SYS_GETTOKENID'
+'SYS_GETXTIVAL'
+'SYS_GUID'
+'SYSGUID'
+'SYSKM'
+'SYS_MAKE_XMLNODEID'
+'SYS_MAKEXML'
+'SYS_MKXMLATTR'
+'SYS_MKXTI'
+'SYSOBJ'
+'SYS_OP_ADT2BIN'
+'SYS_OP_ADTCONS'
+'SYS_OP_ALSCRVAL'
+'SYS_OP_ATG'
+'SYS_OP_BIN2ADT'
+'SYS_OP_BITVEC'
+'SYS_OP_BL2R'
+'SYS_OP_BLOOM_FILTER_LIST'
+'SYS_OP_BLOOM_FILTER'
+'SYS_OP_C2C'
+'SYS_OP_CAST'
+'SYS_OP_CEG'
+'SYS_OP_CL2C'
+'SYS_OP_COMBINED_HASH'
+'SYS_OP_COMP'
+'SYS_OP_CONVERT'
+'SYS_OP_COUNTCHG'
+'SYS_OP_CSCONV'
+'SYS_OP_CSCONVTEST'
+'SYS_OP_CSR'
+'SYS_OP_CSX_PATCH'
+'SYS_OP_CYCLED_SEQ'
+'SYS_OP_DECOMP'
+'SYS_OP_DESCEND'
+'SYS_OP_DISTINCT'
+'SYS_OP_DRA'
+'SYS_OP_DUMP'
+'SYS_OP_DV_CHECK'
+'SYS_OP_ENFORCE_NOT_NULL$'
+'SYSOPER'
+'SYS_OP_EXTRACT'
+'SYS_OP_GROUPING'
+'SYS_OP_GUID'
+'SYS_OP_HASH'
+'SYS_OP_IIX'
+'SYS_OP_ITR'
+'SYS_OP_KEY_VECTOR_CREATE'
+'SYS_OP_KEY_VECTOR_FILTER_LIST'
+'SYS_OP_KEY_VECTOR_FILTER'
+'SYS_OP_KEY_VECTOR_SUCCEEDED'
+'SYS_OP_KEY_VECTOR_USE'
+'SYS_OP_LBID'
+'SYS_OP_LOBLOC2BLOB'
+'SYS_OP_LOBLOC2CLOB'
+'SYS_OP_LOBLOC2ID'
+'SYS_OP_LOBLOC2NCLOB'
+'SYS_OP_LOBLOC2TYP'
+'SYS_OP_LSVI'
+'SYS_OP_LVL'
+'SYS_OP_MAKEOID'
+'SYS_OP_MAP_NONNULL'
+'SYS_OP_MSR'
+'SYS_OP_NICOMBINE'
+'SYS_OP_NIEXTRACT'
+'SYS_OP_NII'
+'SYS_OP_NIX'
+'SYS_OP_NOEXPAND'
+'SYS_OP_NTCIMG$'
+'SYS_OP_NUMTORAW'
+'SYS_OP_OIDVALUE'
+'SYS_OP_OPNSIZE'
+'SYS_OP_PAR_1'
+'SYS_OP_PARGID_1'
+'SYS_OP_PARGID'
+'SYS_OP_PAR'
+'SYS_OP_PART_ID'
+'SYS_OP_PIVOT'
+'SYS_OP_R2O'
+'SYS_OP_RAWTONUM'
+'SYS_OP_RDTM'
+'SYS_OP_REF'
+'SYS_OP_RMTD'
+'SYS_OP_ROWIDTOOBJ'
+'SYS_OP_RPB'
+'SYS_OPTLOBPRBSC'
+'SYS_OP_TOSETID'
+'SYS_OP_TPR'
+'SYS_OP_TRTB'
+'SYS_OPTXICMP'
+'SYS_OPTXQCASTASNQ'
+'SYS_OP_UNDESCEND'
+'SYS_OP_VECAND'
+'SYS_OP_VECBIT'
+'SYS_OP_VECOR'
+'SYS_OP_VECXOR'
+'SYS_OP_VERSION'
+'SYS_OP_VREF'
+'SYS_OP_VVD'
+'SYS_OP_XMLCONS_FOR_CSX'
+'SYS_OP_XPTHATG'
+'SYS_OP_XPTHIDX'
+'SYS_OP_XPTHOP'
+'SYS_OP_XTXT2SQLT'
+'SYS_OP_ZONE_ID'
+'SYS_ORDERKEY_DEPTH'
+'SYS_ORDERKEY_MAXCHILD'
+'SYS_ORDERKEY_PARENT'
+'SYS_PARALLEL_TXN'
+'SYS_PATHID_IS_ATTR'
+'SYS_PATHID_IS_NMSPC'
+'SYS_PATHID_LASTNAME'
+'SYS_PATHID_LASTNMSPC'
+'SYS_PATH_REVERSE'
+'SYS_PXQEXTRACT'
+'SYS_RAW_TO_XSID'
+'SYS_RID_ORDER'
+'SYS_ROW_DELTA'
+'SYS_SC_2_XMLT'
+'SYS_SYNRCIREDO'
+'SYSTEM_DEFINED'
+'SYSTEM'
+'SYSTIMESTAMP'
+'SYS_TYPEID'
+'SYS_UMAKEXML'
+'SYS_XMLANALYZE'
+'SYS_XMLCONTAINS'
+'SYS_XMLCONV'
+'SYS_XMLEXNSURI'
+'SYS_XMLGEN'
+'SYS_XMLI_LOC_ISNODE'
+'SYS_XMLI_LOC_ISTEXT'
+'SYS_XMLINSTR'
+'SYS_XMLLOCATOR_GETSVAL'
+'SYS_XMLNODEID_GETCID'
+'SYS_XMLNODEID_GETLOCATOR'
+'SYS_XMLNODEID_GETOKEY'
+'SYS_XMLNODEID_GETPATHID'
+'SYS_XMLNODEID_GETPTRID'
+'SYS_XMLNODEID_GETRID'
+'SYS_XMLNODEID_GETSVAL'
+'SYS_XMLNODEID_GETTID'
+'SYS_XMLNODEID'
+'SYS_XMLT_2_SC'
+'SYS_XMLTRANSLATE'
+'SYS_XMLTYPE2SQL'
+'SYS_XQ_ASQLCNV'
+'SYS_XQ_ATOMCNVCHK'
+'SYS_XQBASEURI'
+'SYS_XQCASTABLEERRH'
+'SYS_XQCODEP2STR'
+'SYS_XQCODEPEQ'
+'SYS_XQCON2SEQ'
+'SYS_XQCONCAT'
+'SYS_XQDELETE'
+'SYS_XQDFLTCOLATION'
+'SYS_XQDOC'
+'SYS_XQDOCURI'
+'SYS_XQDURDIV'
+'SYS_XQED4URI'
+'SYS_XQENDSWITH'
+'SYS_XQERRH'
+'SYS_XQERR'
+'SYS_XQESHTMLURI'
+'SYS_XQEXLOBVAL'
+'SYS_XQEXSTWRP'
+'SYS_XQEXTRACT'
+'SYS_XQEXTRREF'
+'SYS_XQEXVAL'
+'SYS_XQFB2STR'
+'SYS_XQFNBOOL'
+'SYS_XQFNCMP'
+'SYS_XQFNDATIM'
+'SYS_XQFNLNAME'
+'SYS_XQFNNM'
+'SYS_XQFNNSURI'
+'SYS_XQFNPREDTRUTH'
+'SYS_XQFNQNM'
+'SYS_XQFNROOT'
+'SYS_XQFORMATNUM'
+'SYS_XQFTCONTAIN'
+'SYS_XQFUNCR'
+'SYS_XQGETCONTENT'
+'SYS_XQINDXOF'
+'SYS_XQINSERT'
+'SYS_XQINSPFX'
+'SYS_XQIRI2URI'
+'SYS_XQLANG'
+'SYS_XQLLNMFRMQNM'
+'SYS_XQMKNODEREF'
+'SYS_XQNILLED'
+'SYS_XQNODENAME'
+'SYS_XQNORMSPACE'
+'SYS_XQNORMUCODE'
+'SYS_XQ_NRNG'
+'SYS_XQNSP4PFX'
+'SYS_XQNSPFRMQNM'
+'SYS_XQPFXFRMQNM'
+'SYS_XQ_PKSQL2XML'
+'SYS_XQPOLYABS'
+'SYS_XQPOLYADD'
+'SYS_XQPOLYCEL'
+'SYS_XQPOLYCSTBL'
+'SYS_XQPOLYCST'
+'SYS_XQPOLYDIV'
+'SYS_XQPOLYFLR'
+'SYS_XQPOLYMOD'
+'SYS_XQPOLYMUL'
+'SYS_XQPOLYRND'
+'SYS_XQPOLYSQRT'
+'SYS_XQPOLYSUB'
+'SYS_XQPOLYUMUS'
+'SYS_XQPOLYUPLS'
+'SYS_XQPOLYVEQ'
+'SYS_XQPOLYVGE'
+'SYS_XQPOLYVGT'
+'SYS_XQPOLYVLE'
+'SYS_XQPOLYVLT'
+'SYS_XQPOLYVNE'
+'SYS_XQREF2VAL'
+'SYS_XQRENAME'
+'SYS_XQREPLACE'
+'SYS_XQRESVURI'
+'SYS_XQRNDHALF2EVN'
+'SYS_XQRSLVQNM'
+'SYS_XQRYENVPGET'
+'SYS_XQRYVARGET'
+'SYS_XQRYWRP'
+'SYS_XQSEQ2CON4XC'
+'SYS_XQSEQ2CON'
+'SYS_XQSEQDEEPEQ'
+'SYS_XQSEQINSB'
+'SYS_XQSEQRM'
+'SYS_XQSEQRVS'
+'SYS_XQSEQSUB'
+'SYS_XQSEQTYPMATCH'
+'SYS_XQSTARTSWITH'
+'SYS_XQSTATBURI'
+'SYS_XQSTR2CODEP'
+'SYS_XQSTRJOIN'
+'SYS_XQSUBSTRAFT'
+'SYS_XQSUBSTRBEF'
+'SYS_XQTOKENIZE'
+'SYS_XQTREATAS'
+'SYS_XQ_UPKXML2SQL'
+'SYS_XQXFORM'
+'SYS_XSID_TO_RAW'
+'SYS_ZMAP_FILTER'
+'SYS_ZMAP_REFRESH'
+'TABLE_LOOKUP_BY_NL'
+'TABLESPACE_NO'
+'TABLESPACE'
+'TABLES'
+'TABLE_STATS'
+'TABLE'
+'TABNO'
+'TAG'
+'TANH'
+'TAN'
+'TBL$OR$IDX$PART$NUM'
+'TEMPFILE'
+'TEMPLATE'
+'TEMPORARY'
+'TEMP_TABLE'
+'TEST'
+'TEXT'
+'THAN'
+'THEN'
+'THE'
+'THREAD'
+'THROUGH'
+'TIER'
+'TIES'
+'TIMEOUT'
+'TIMESTAMP_LTZ_UNCONSTRAINED'
+'TIMESTAMP'
+'TIMESTAMP_TZ_UNCONSTRAINED'
+'TIMESTAMP_UNCONSTRAINED'
+'TIMES'
+'TIME'
+'TIMEZONE'
+'TIMEZONE_ABBR'
+'TIMEZONE_HOUR'
+'TIMEZONE_MINUTE'
+'TIMEZONE_OFFSET'
+'TIMEZONE_REGION'
+'TIME_ZONE'
+'TIV_GB'
+'TIV_SSF'
+'TO_ACLID'
+'TO_BINARY_DOUBLE'
+'TO_BINARY_FLOAT'
+'TO_BLOB'
+'TO_CLOB'
+'TO_DSINTERVAL'
+'TO_LOB'
+'TO_MULTI_BYTE'
+'TO_NCHAR'
+'TO_NCLOB'
+'TO_NUMBER'
+'TOPLEVEL'
+'TO_SINGLE_BYTE'
+'TO_TIMESTAMP'
+'TO_TIMESTAMP_TZ'
+'TO_TIME'
+'TO_TIME_TZ'
+'TO'
+'TO_YMINTERVAL'
+'TRACE'
+'TRACING'
+'TRACKING'
+'TRAILING'
+'TRANSACTION'
+'TRANSFORM_DISTINCT_AGG'
+'TRANSITIONAL'
+'TRANSITION'
+'TRANSLATE'
+'TRANSLATION'
+'TREAT'
+'TRIGGERS'
+'TRIGGER'
+'TRUE'
+'TRUNCATE'
+'TRUNC'
+'TRUSTED'
+'TRUST'
+'TUNING'
+'TX'
+'TYPES'
+'TYPE'
+'TZ_OFFSET'
+'UB2'
+'UBA'
+'UCS2'
+'UID'
+'UNARCHIVED'
+'UNBOUNDED'
+'UNBOUND'
+'UNCONDITIONAL'
+'UNDER'
+'UNDO'
+'UNDROP'
+'UNIFORM'
+'UNION'
+'UNIQUE'
+'UNISTR'
+'UNLIMITED'
+'UNLOAD'
+'UNLOCK'
+'UNMATCHED'
+'UNNEST_INNERJ_DISTINCT_VIEW'
+'UNNEST_NOSEMIJ_NODISTINCTVIEW'
+'UNNEST_SEMIJ_VIEW'
+'UNNEST'
+'UNPACKED'
+'UNPIVOT'
+'UNPLUG'
+'UNPROTECTED'
+'UNQUIESCE'
+'UNRECOVERABLE'
+'UNRESTRICTED'
+'UNSUBSCRIBE'
+'UNTIL'
+'UNUSABLE'
+'UNUSED'
+'UPDATABLE'
+'UPDATED'
+'UPDATE'
+'UPDATEXML'
+'UPD_INDEXES'
+'UPD_JOININDEX'
+'UPGRADE'
+'UPPER'
+'UPSERT'
+'UROWID'
+'USABLE'
+'USAGE'
+'USE_ANTI'
+'USE_CONCAT'
+'USE_CUBE'
+'USE_HASH_AGGREGATION'
+'USE_HASH_GBY_FOR_PUSHDOWN'
+'USE_HASH'
+'USE_HIDDEN_PARTITIONS'
+'USE_INVISIBLE_INDEXES'
+'USE_MERGE_CARTESIAN'
+'USE_MERGE'
+'USE_NL'
+'USE_NL_WITH_INDEX'
+'USE_PRIVATE_OUTLINES'
+'USER_DATA'
+'USER_DEFINED'
+'USERENV'
+'USERGROUP'
+'USER_RECYCLEBIN'
+'USERS'
+'USER_TABLESPACES'
+'USER'
+'USE_SEMI'
+'USE_STORED_OUTLINES'
+'USE_TTT_FOR_GSETS'
+'USE'
+'USE_VECTOR_AGGREGATION'
+'USE_WEAK_NAME_RESL'
+'USING_NO_EXPAND'
+'USING'
+'UTF16BE'
+'UTF16LE'
+'UTF32'
+'UTF8'
+'V1'
+'V2'
+'VALIDATE'
+'VALIDATION'
+'VALID_TIME_END'
+'VALUES'
+'VALUE'
+'VARCHAR2'
+'VARCHAR'
+'VARIABLE'
+'VAR_POP'
+'VARRAYS'
+'VARRAY'
+'VAR_SAMP'
+'VARYING'
+'VECTOR_READ_TRACE'
+'VECTOR_READ'
+'VECTOR_TRANSFORM_DIMS'
+'VECTOR_TRANSFORM_FACT'
+'VECTOR_TRANSFORM'
+'VERIFIER'
+'VERIFY'
+'VERSIONING'
+'VERSIONS_ENDSCN'
+'VERSIONS_ENDTIME'
+'VERSIONS_OPERATION'
+'VERSIONS_STARTSCN'
+'VERSIONS_STARTTIME'
+'VERSIONS'
+'VERSIONS_XID'
+'VERSION'
+'VIEW'
+'VIOLATION'
+'VIRTUAL'
+'VISIBILITY'
+'VISIBLE'
+'VOLUME'
+'VSIZE'
+'WAIT'
+'WALLET'
+'WARNING'
+'WEEKS'
+'WEEK'
+'WELLFORMED'
+'WHENEVER'
+'WHEN'
+'WHERE'
+'WHILE'
+'WHITESPACE'
+'WIDTH_BUCKET'
+'WITHIN'
+'WITHOUT'
+'WITH_PLSQL'
+'WITH'
+'WORK'
+'WRAPPED'
+'WRAPPER'
+'WRITE'
+'XDB_FASTPATH_INSERT'
+'XDB'
+'X_DYN_PRUNE'
+'XID'
+'XML2OBJECT'
+'XMLAGG'
+'XMLATTRIBUTES'
+'XMLCAST'
+'XMLCDATA'
+'XMLCOLATTVAL'
+'XMLCOMMENT'
+'XMLCONCAT'
+'XMLDIFF'
+'XML_DML_RWT_STMT'
+'XMLELEMENT'
+'XMLEXISTS2'
+'XMLEXISTS'
+'XMLFOREST'
+'XMLINDEX'
+'XMLINDEX_REWRITE_IN_SELECT'
+'XMLINDEX_REWRITE'
+'XMLINDEX_SEL_IDX_TBL'
+'XMLISNODE'
+'XMLISVALID'
+'XMLNAMESPACES'
+'XMLPARSE'
+'XMLPATCH'
+'XMLPI'
+'XMLQUERYVAL'
+'XMLQUERY'
+'XMLROOT'
+'XMLSCHEMA'
+'XMLSERIALIZE'
+'XMLTABLE'
+'XMLTRANSFORMBLOB'
+'XMLTRANSFORM'
+'XMLTYPE'
+'XML'
+'XPATHTABLE'
+'XS_SYS_CONTEXT'
+'XS'
+'XTRANSPORT'
+'YEARS'
+'YEAR'
+'YES'
+'YMINTERVAL_UNCONSTRAINED'
+'ZONEMAP'
+'ZONE'
+'PREDICTION'
+'PREDICTION_BOUNDS'
+'PREDICTION_COST'
+'PREDICTION_DETAILS'
+'PREDICTION_PROBABILITY'
+'PREDICTION_SET'
+'CUME_DIST'
+'DENSE_RANK'
+'LISTAGG'
+'PERCENT_RANK'
+'PERCENTILE_CONT'
+'PERCENTILE_DISC'
+'RANK'
+'AVG'
+'CORR'
+'COVAR_'
+'DECODE'
+'LAG'
+'LEAD'
+'MAX'
+'MEDIAN'
+'MIN'
+'NTILE'
+'NVL'
+'RATIO_TO_REPORT'
+'REGR_'
+'ROUND'
+'ROW_NUMBER'
+'SUBSTR'
+'TO_CHAR'
+'TRIM'
+'SUM'
+'STDDEV'
+'VAR_'
+'VARIANCE'
+'LEAST'
+'GREATEST'
+'TO_DATE'
+null
+null
+null
+'..'
+'.'
+null
+null
+null
+null
+'%'
+'&'
+'('
+')'
+'**'
+'*'
+'+'
+'-'
+','
+'/'
+'@'
+':='
+null
+null
+'^'
+'~'
+'!'
+'>'
+'<'
+':'
+';'
+'|'
+'='
+'['
+']'
+'_'
+null
+null
+null
+null
+null
+null
+null
+
+token symbolic names:
+null
+ABORT
+ABS
+ACCESS
+ACCESSED
+ACCOUNT
+ACL
+ACOS
+ACTION
+ACTIONS
+ACTIVATE
+ACTIVE
+ACTIVE_COMPONENT
+ACTIVE_DATA
+ACTIVE_FUNCTION
+ACTIVE_TAG
+ACTIVITY
+ADAPTIVE_PLAN
+ADD
+ADD_COLUMN
+ADD_GROUP
+ADD_MONTHS
+ADJ_DATE
+ADMIN
+ADMINISTER
+ADMINISTRATOR
+ADVANCED
+ADVISE
+ADVISOR
+AFD_DISKSTRING
+AFTER
+AGENT
+AGGREGATE
+A_LETTER
+ALIAS
+ALL
+ALLOCATE
+ALLOW
+ALL_ROWS
+ALTER
+ALWAYS
+ANALYZE
+ANCILLARY
+AND
+AND_EQUAL
+ANOMALY
+ANSI_REARCH
+ANTIJOIN
+ANY
+ANYSCHEMA
+APPEND
+APPENDCHILDXML
+APPEND_VALUES
+APPLICATION
+APPLY
+APPROX_COUNT_DISTINCT
+ARCHIVAL
+ARCHIVE
+ARCHIVED
+ARCHIVELOG
+ARRAY
+AS
+ASC
+ASCII
+ASCIISTR
+ASIN
+ASIS
+ASSEMBLY
+ASSIGN
+ASSOCIATE
+ASYNC
+ASYNCHRONOUS
+ATAN2
+ATAN
+AT
+ATTRIBUTE
+ATTRIBUTES
+AUDIT
+AUTHENTICATED
+AUTHENTICATION
+AUTHID
+AUTHORIZATION
+AUTOALLOCATE
+AUTO
+AUTOBACKUP
+AUTOEXTEND
+AUTO_LOGIN
+AUTOMATIC
+AUTONOMOUS_TRANSACTION
+AUTO_REOPTIMIZE
+AVAILABILITY
+AVRO
+BACKGROUND
+BACKUP
+BACKUPSET
+BASIC
+BASICFILE
+BATCH
+BATCHSIZE
+BATCH_TABLE_ACCESS_BY_ROWID
+BECOME
+BEFORE
+BEGIN
+BEGINNING
+BEGIN_OUTLINE_DATA
+BEHALF
+BEQUEATH
+BETWEEN
+BFILE
+BFILENAME
+BIGFILE
+BINARY
+BINARY_DOUBLE
+BINARY_DOUBLE_INFINITY
+BINARY_DOUBLE_NAN
+BINARY_FLOAT
+BINARY_FLOAT_INFINITY
+BINARY_FLOAT_NAN
+BINARY_INTEGER
+BIND_AWARE
+BINDING
+BIN_TO_NUM
+BITAND
+BITMAP_AND
+BITMAP
+BITMAPS
+BITMAP_TREE
+BITS
+BLOB
+BLOCK
+BLOCK_RANGE
+BLOCKS
+BLOCKSIZE
+BODY
+BOOLEAN
+BOTH
+BOUND
+BRANCH
+BREADTH
+BROADCAST
+BSON
+BUFFER
+BUFFER_CACHE
+BUFFER_POOL
+BUILD
+BULK
+BY
+BYPASS_RECURSIVE_CHECK
+BYPASS_UJVC
+BYTE
+CACHE
+CACHE_CB
+CACHE_INSTANCES
+CACHE_TEMP_TABLE
+CACHING
+CALCULATED
+CALLBACK
+CALL
+CANCEL
+CANONICAL
+CAPACITY
+CARDINALITY
+CASCADE
+CASE
+CAST
+CATEGORY
+CDBDEFAULT
+CEIL
+CELL_FLASH_CACHE
+CERTIFICATE
+CFILE
+CHAINED
+CHANGE
+CHANGETRACKING
+CHANGE_DUPKEY_ERROR_INDEX
+CHARACTER
+CHAR
+CHAR_CS
+CHARTOROWID
+CHECK_ACL_REWRITE
+CHECK
+CHECKPOINT
+CHILD
+CHOOSE
+CHR
+CHUNK
+CLASS
+CLASSIFIER
+CLEANUP
+CLEAR
+C_LETTER
+CLIENT
+CLOB
+CLONE
+CLOSE_CACHED_OPEN_CURSORS
+CLOSE
+CLUSTER_BY_ROWID
+CLUSTER
+CLUSTER_DETAILS
+CLUSTER_DISTANCE
+CLUSTER_ID
+CLUSTERING
+CLUSTERING_FACTOR
+CLUSTER_PROBABILITY
+CLUSTER_SET
+COALESCE
+COALESCE_SQ
+COARSE
+CO_AUTH_IND
+COLD
+COLLECT
+COLUMNAR
+COLUMN_AUTH_INDICATOR
+COLUMN
+COLUMNS
+COLUMN_STATS
+COLUMN_VALUE
+COMMENT
+COMMIT
+COMMITTED
+COMMON_DATA
+COMPACT
+COMPATIBILITY
+COMPILE
+COMPLETE
+COMPLIANCE
+COMPONENT
+COMPONENTS
+COMPOSE
+COMPOSITE
+COMPOSITE_LIMIT
+COMPOUND
+COMPRESS
+COMPUTE
+CONCAT
+CON_DBID_TO_ID
+CONDITIONAL
+CONDITION
+CONFIRM
+CONFORMING
+CON_GUID_TO_ID
+CON_ID
+CON_NAME_TO_ID
+CONNECT_BY_CB_WHR_ONLY
+CONNECT_BY_COMBINE_SW
+CONNECT_BY_COST_BASED
+CONNECT_BY_ELIM_DUPS
+CONNECT_BY_FILTERING
+CONNECT_BY_ISCYCLE
+CONNECT_BY_ISLEAF
+CONNECT_BY_ROOT
+CONNECT
+CONNECT_TIME
+CONSIDER
+CONSISTENT
+CONSTANT
+CONST
+CONSTRAINT
+CONSTRAINTS
+CONSTRUCTOR
+CONTAINER
+CONTAINER_DATA
+CONTAINERS
+CONTENT
+CONTENTS
+CONTEXT
+CONTINUE
+CONTROLFILE
+CON_UID_TO_ID
+CONVERT
+COOKIE
+COPY
+CORR_K
+CORR_S
+CORRUPTION
+CORRUPT_XID_ALL
+CORRUPT_XID
+COS
+COSH
+COST
+COST_XML_QUERY_REWRITE
+COUNT
+COVAR_POP
+COVAR_SAMP
+CPU_COSTING
+CPU_PER_CALL
+CPU_PER_SESSION
+CRASH
+CREATE
+CREATE_FILE_DEST
+CREATE_STORED_OUTLINES
+CREATION
+CREDENTIAL
+CRITICAL
+CROSS
+CROSSEDITION
+CSCONVERT
+CUBE_AJ
+CUBE
+CUBE_GB
+CUBE_SJ
+CUME_DISTM
+CURRENT
+CURRENT_DATE
+CURRENT_SCHEMA
+CURRENT_TIME
+CURRENT_TIMESTAMP
+CURRENT_USER
+CURRENTV
+CURSOR
+CURSOR_SHARING_EXACT
+CURSOR_SPECIFIC_SEGMENT
+CUSTOMDATUM
+CV
+CYCLE
+DANGLING
+DATABASE
+DATA
+DATAFILE
+DATAFILES
+DATAGUARDCONFIG
+DATAMOVEMENT
+DATAOBJNO
+DATAOBJ_TO_MAT_PARTITION
+DATAOBJ_TO_PARTITION
+DATAPUMP
+DATA_SECURITY_REWRITE_LIMIT
+DATE
+DATE_MODE
+DAY
+DAYS
+DBA
+DBA_RECYCLEBIN
+DBMS_STATS
+DB_ROLE_CHANGE
+DBTIMEZONE
+DB_UNIQUE_NAME
+DB_VERSION
+DDL
+DEALLOCATE
+DEBUG
+DEBUGGER
+DEC
+DECIMAL
+DECLARE
+DECOMPOSE
+DECORRELATE
+DECR
+DECREMENT
+DECRYPT
+DEDUPLICATE
+DEFAULT
+DEFAULTS
+DEFERRABLE
+DEFERRED
+DEFINED
+DEFINE
+DEFINER
+DEGREE
+DELAY
+DELEGATE
+DELETE_ALL
+DELETE
+DELETEXML
+DEMAND
+DENSE_RANKM
+DEPENDENT
+DEPTH
+DEQUEUE
+DEREF
+DEREF_NO_REWRITE
+DESC
+DESTROY
+DETACHED
+DETERMINES
+DETERMINISTIC
+DICTIONARY
+DIMENSION
+DIMENSIONS
+DIRECT_LOAD
+DIRECTORY
+DIRECT_PATH
+DISABLE_ALL
+DISABLE
+DISABLE_PARALLEL_DML
+DISABLE_PRESET
+DISABLE_RPKE
+DISALLOW
+DISASSOCIATE
+DISCARD
+DISCONNECT
+DISK
+DISKGROUP
+DISKGROUP_PLUS
+DISKS
+DISMOUNT
+DISTINCT
+DISTINGUISHED
+DISTRIBUTED
+DISTRIBUTE
+DML
+DML_UPDATE
+DOCFIDELITY
+DOCUMENT
+DOMAIN_INDEX_FILTER
+DOMAIN_INDEX_NO_SORT
+DOMAIN_INDEX_SORT
+DOUBLE
+DOWNGRADE
+DRIVING_SITE
+DROP_COLUMN
+DROP
+DROP_GROUP
+DSINTERVAL_UNCONSTRAINED
+DST_UPGRADE_INSERT_CONV
+DUMP
+DUMPSET
+DUPLICATE
+DV
+DYNAMIC
+DYNAMIC_SAMPLING
+DYNAMIC_SAMPLING_EST_CDN
+EACH
+EDITIONABLE
+EDITION
+EDITIONING
+EDITIONS
+ELEMENT
+ELIM_GROUPBY
+ELIMINATE_JOIN
+ELIMINATE_OBY
+ELIMINATE_OUTER_JOIN
+ELSE
+ELSIF
+EM
+EMPTY_BLOB
+EMPTY_CLOB
+EMPTY
+ENABLE_ALL
+ENABLE
+ENABLE_PARALLEL_DML
+ENABLE_PRESET
+ENCODING
+ENCRYPT
+ENCRYPTION
+END
+END_OUTLINE_DATA
+ENFORCED
+ENFORCE
+ENQUEUE
+ENTERPRISE
+ENTITYESCAPING
+ENTRY
+EQUIPART
+ERR
+ERROR_ARGUMENT
+ERROR
+ERROR_ON_OVERLAP_TIME
+ERRORS
+ESCAPE
+ESTIMATE
+EVAL
+EVALNAME
+EVALUATE
+EVALUATION
+EVENTS
+EVERY
+EXCEPT
+EXCEPTION
+EXCEPTION_INIT
+EXCEPTIONS
+EXCHANGE
+EXCLUDE
+EXCLUDING
+EXCLUSIVE
+EXECUTE
+EXEMPT
+EXISTING
+EXISTS
+EXISTSNODE
+EXIT
+EXPAND_GSET_TO_UNION
+EXPAND_TABLE
+EXP
+EXPIRE
+EXPLAIN
+EXPLOSION
+EXPORT
+EXPR_CORR_CHECK
+EXPRESS
+EXTENDS
+EXTENT
+EXTENTS
+EXTERNAL
+EXTERNALLY
+EXTRACTCLOBXML
+EXTRACT
+EXTRACTVALUE
+EXTRA
+FACILITY
+FACT
+FACTOR
+FACTORIZE_JOIN
+FAILED
+FAILED_LOGIN_ATTEMPTS
+FAILGROUP
+FAILOVER
+FAILURE
+FALSE
+FAMILY
+FAR
+FAST
+FASTSTART
+FBTSCAN
+FEATURE_DETAILS
+FEATURE_ID
+FEATURE_SET
+FEATURE_VALUE
+FETCH
+FILE
+FILE_NAME_CONVERT
+FILESYSTEM_LIKE_LOGGING
+FILTER
+FINAL
+FINE
+FINISH
+FIRST
+FIRSTM
+FIRST_ROWS
+FIRST_VALUE
+FIXED_VIEW_DATA
+FLAGGER
+FLASHBACK
+FLASH_CACHE
+FLOAT
+FLOB
+FLOOR
+FLUSH
+FOLDER
+FOLLOWING
+FOLLOWS
+FORALL
+FORCE
+FORCE_XML_QUERY_REWRITE
+FOREIGN
+FOREVER
+FOR
+FORMAT
+FORWARD
+FRAGMENT_NUMBER
+FREELIST
+FREELISTS
+FREEPOOLS
+FRESH
+FROM
+FROM_TZ
+FULL
+FULL_OUTER_JOIN_TO_OUTER
+FUNCTION
+FUNCTIONS
+GATHER_OPTIMIZER_STATISTICS
+GATHER_PLAN_STATISTICS
+GBY_CONC_ROLLUP
+GBY_PUSHDOWN
+GENERATED
+GET
+GLOBAL
+GLOBALLY
+GLOBAL_NAME
+GLOBAL_TOPIC_ENABLED
+GOTO
+GRANT
+GROUP_BY
+GROUP
+GROUP_ID
+GROUPING
+GROUPING_ID
+GROUPS
+GUARANTEED
+GUARANTEE
+GUARD
+HASH_AJ
+HASH
+HASHKEYS
+HASH_SJ
+HAVING
+HEADER
+HEAP
+HELP
+HEXTORAW
+HEXTOREF
+HIDDEN_KEYWORD
+HIDE
+HIERARCHY
+HIGH
+HINTSET_BEGIN
+HINTSET_END
+HOT
+HOUR
+HWM_BROKERED
+HYBRID
+IDENTIFIED
+IDENTIFIER
+IDENTITY
+IDGENERATORS
+ID
+IDLE_TIME
+IF
+IGNORE
+IGNORE_OPTIM_EMBEDDED_HINTS
+IGNORE_ROW_ON_DUPKEY_INDEX
+IGNORE_WHERE_CLAUSE
+ILM
+IMMEDIATE
+IMPACT
+IMPORT
+INACTIVE
+INCLUDE
+INCLUDE_VERSION
+INCLUDING
+INCREMENTAL
+INCREMENT
+INCR
+INDENT
+INDEX_ASC
+INDEX_COMBINE
+INDEX_DESC
+INDEXED
+INDEXES
+INDEX_FFS
+INDEX_FILTER
+INDEX
+INDEXING
+INDEX_JOIN
+INDEX_ROWS
+INDEX_RRS
+INDEX_RS_ASC
+INDEX_RS_DESC
+INDEX_RS
+INDEX_SCAN
+INDEX_SKIP_SCAN
+INDEX_SS_ASC
+INDEX_SS_DESC
+INDEX_SS
+INDEX_STATS
+INDEXTYPE
+INDEXTYPES
+INDICATOR
+INDICES
+INFINITE
+INFORMATIONAL
+INHERIT
+IN
+INITCAP
+INITIAL
+INITIALIZED
+INITIALLY
+INITRANS
+INLINE
+INLINE_XMLTYPE_NT
+INMEMORY
+IN_MEMORY_METADATA
+INMEMORY_PRUNING
+INNER
+INOUT
+INPLACE
+INSERTCHILDXMLAFTER
+INSERTCHILDXMLBEFORE
+INSERTCHILDXML
+INSERT
+INSERTXMLAFTER
+INSERTXMLBEFORE
+INSTANCE
+INSTANCES
+INSTANTIABLE
+INSTANTLY
+INSTEAD
+INSTR2
+INSTR4
+INSTRB
+INSTRC
+INSTR
+INTEGER
+INTERLEAVED
+INTERMEDIATE
+INTERNAL_CONVERT
+INTERNAL_USE
+INTERPRETED
+INTERSECT
+INTERVAL
+INT
+INTO
+INVALIDATE
+INVISIBLE
+IN_XQUERY
+IS
+ISOLATION
+ISOLATION_LEVEL
+ITERATE
+ITERATION_NUMBER
+JAVA
+JOB
+JOIN
+JSON_ARRAYAGG
+JSON_ARRAY
+JSON_EQUAL
+JSON_EXISTS2
+JSON_EXISTS
+JSONGET
+JSON
+JSON_OBJECTAGG
+JSON_OBJECT
+JSONPARSE
+JSON_QUERY
+JSON_SERIALIZE
+JSON_TABLE
+JSON_TEXTCONTAINS2
+JSON_TEXTCONTAINS
+JSON_VALUE
+KEEP_DUPLICATES
+KEEP
+KERBEROS
+KEY
+KEY_LENGTH
+KEYSIZE
+KEYS
+KEYSTORE
+KILL
+LABEL
+LANGUAGE
+LAST_DAY
+LAST
+LAST_VALUE
+LATERAL
+LAX
+LAYER
+LDAP_REGISTRATION_ENABLED
+LDAP_REGISTRATION
+LDAP_REG_SYNC_INTERVAL
+LEADING
+LEFT
+LENGTH2
+LENGTH4
+LENGTHB
+LENGTHC
+LENGTH
+LESS
+LEVEL
+LEVELS
+LIBRARY
+LIFECYCLE
+LIFE
+LIFETIME
+LIKE2
+LIKE4
+LIKEC
+LIKE_EXPAND
+LIKE
+LIMIT
+LINEAR
+LINK
+LIST
+LN
+LNNVL
+LOAD
+LOB
+LOBNVL
+LOBS
+LOCAL_INDEXES
+LOCAL
+LOCALTIME
+LOCALTIMESTAMP
+LOCATION
+LOCATOR
+LOCKED
+LOCKING
+LOCK
+LOGFILE
+LOGFILES
+LOGGING
+LOGICAL
+LOGICAL_READS_PER_CALL
+LOGICAL_READS_PER_SESSION
+LOG
+LOGMINING
+LOGOFF
+LOGON
+LOG_READ_ONLY_VIOLATIONS
+LONG
+LOOP
+LOWER
+LOW
+LPAD
+LTRIM
+MAIN
+MAKE_REF
+MANAGED
+MANAGE
+MANAGEMENT
+MANAGER
+MANUAL
+MAP
+MAPPING
+MASTER
+MATCHED
+MATCHES
+MATCH
+MATCH_NUMBER
+MATCH_RECOGNIZE
+MATERIALIZED
+MATERIALIZE
+MAXARCHLOGS
+MAXDATAFILES
+MAXEXTENTS
+MAXIMIZE
+MAXINSTANCES
+MAXLOGFILES
+MAXLOGHISTORY
+MAXLOGMEMBERS
+MAX_SHARED_TEMP_SIZE
+MAXSIZE
+MAXTRANS
+MAXVALUE
+MEASURE
+MEASURES
+MEDIUM
+MEMBER
+MEMCOMPRESS
+MEMORY
+MERGEACTIONS
+MERGE_AJ
+MERGE_CONST_ON
+MERGE
+MERGE_SJ
+METADATA
+METHOD
+MIGRATE
+MIGRATION
+MINEXTENTS
+MINIMIZE
+MINIMUM
+MINING
+MINUS
+MINUS_NULL
+MINUTE
+MINVALUE
+MIRRORCOLD
+MIRRORHOT
+MIRROR
+MLSLABEL
+MODEL_COMPILE_SUBQUERY
+MODEL_DONTVERIFY_UNIQUENESS
+MODEL_DYNAMIC_SUBQUERY
+MODEL_MIN_ANALYSIS
+MODEL
+MODEL_NB
+MODEL_NO_ANALYSIS
+MODEL_PBY
+MODEL_PUSH_REF
+MODEL_SV
+MODE
+MODIFICATION
+MODIFY_COLUMN_TYPE
+MODIFY
+MOD
+MODULE
+MONITORING
+MONITOR
+MONTH
+MONTHS_BETWEEN
+MONTHS
+MOUNT
+MOUNTPATH
+MOVEMENT
+MOVE
+MULTIDIMENSIONAL
+MULTISET
+MV_MERGE
+NAMED
+NAME
+NAMESPACE
+NAN
+NANVL
+NATIONAL
+NATIVE_FULL_OUTER_JOIN
+NATIVE
+NATURAL
+NATURALN
+NAV
+NCHAR_CS
+NCHAR
+NCHR
+NCLOB
+NEEDED
+NEG
+NESTED
+NESTED_TABLE_FAST_INSERT
+NESTED_TABLE_GET_REFS
+NESTED_TABLE_ID
+NESTED_TABLE_SET_REFS
+NESTED_TABLE_SET_SETID
+NETWORK
+NEVER
+NEW
+NEW_TIME
+NEXT_DAY
+NEXT
+NL_AJ
+NLJ_BATCHING
+NLJ_INDEX_FILTER
+NLJ_INDEX_SCAN
+NLJ_PREFETCH
+NLS_CALENDAR
+NLS_CHARACTERSET
+NLS_CHARSET_DECL_LEN
+NLS_CHARSET_ID
+NLS_CHARSET_NAME
+NLS_COMP
+NLS_CURRENCY
+NLS_DATE_FORMAT
+NLS_DATE_LANGUAGE
+NLS_INITCAP
+NLS_ISO_CURRENCY
+NL_SJ
+NLS_LANG
+NLS_LANGUAGE
+NLS_LENGTH_SEMANTICS
+NLS_LOWER
+NLS_NCHAR_CONV_EXCP
+NLS_NUMERIC_CHARACTERS
+NLS_SORT
+NLSSORT
+NLS_SPECIAL_CHARS
+NLS_TERRITORY
+NLS_UPPER
+NO_ACCESS
+NO_ADAPTIVE_PLAN
+NO_ANSI_REARCH
+NOAPPEND
+NOARCHIVELOG
+NOAUDIT
+NO_AUTO_REOPTIMIZE
+NO_BASETABLE_MULTIMV_REWRITE
+NO_BATCH_TABLE_ACCESS_BY_ROWID
+NO_BIND_AWARE
+NO_BUFFER
+NOCACHE
+NO_CARTESIAN
+NO_CHECK_ACL_REWRITE
+NO_CLUSTER_BY_ROWID
+NO_CLUSTERING
+NO_COALESCE_SQ
+NO_COMMON_DATA
+NOCOMPRESS
+NO_CONNECT_BY_CB_WHR_ONLY
+NO_CONNECT_BY_COMBINE_SW
+NO_CONNECT_BY_COST_BASED
+NO_CONNECT_BY_ELIM_DUPS
+NO_CONNECT_BY_FILTERING
+NOCOPY
+NO_COST_XML_QUERY_REWRITE
+NO_CPU_COSTING
+NOCPU_COSTING
+NOCYCLE
+NO_DATA_SECURITY_REWRITE
+NO_DECORRELATE
+NODELAY
+NO_DOMAIN_INDEX_FILTER
+NO_DST_UPGRADE_INSERT_CONV
+NO_ELIM_GROUPBY
+NO_ELIMINATE_JOIN
+NO_ELIMINATE_OBY
+NO_ELIMINATE_OUTER_JOIN
+NOENTITYESCAPING
+NO_EXPAND_GSET_TO_UNION
+NO_EXPAND
+NO_EXPAND_TABLE
+NO_FACT
+NO_FACTORIZE_JOIN
+NO_FILTERING
+NOFORCE
+NO_FULL_OUTER_JOIN_TO_OUTER
+NO_GATHER_OPTIMIZER_STATISTICS
+NO_GBY_PUSHDOWN
+NOGUARANTEE
+NO_INDEX_FFS
+NO_INDEX
+NO_INDEX_SS
+NO_INMEMORY
+NO_INMEMORY_PRUNING
+NOKEEP
+NO_LOAD
+NOLOCAL
+NOLOGGING
+NOMAPPING
+NOMAXVALUE
+NO_MERGE
+NOMINIMIZE
+NOMINVALUE
+NO_MODEL_PUSH_REF
+NO_MONITORING
+NOMONITORING
+NO_MONITOR
+NO_MULTIMV_REWRITE
+NO_NATIVE_FULL_OUTER_JOIN
+NONBLOCKING
+NONEDITIONABLE
+NONE
+NO_NLJ_BATCHING
+NO_NLJ_PREFETCH
+NO
+NONSCHEMA
+NO_OBJECT_LINK
+NOORDER
+NO_ORDER_ROLLUPS
+NO_OUTER_JOIN_TO_ANTI
+NO_OUTER_JOIN_TO_INNER
+NOOVERRIDE
+NO_PARALLEL_INDEX
+NOPARALLEL_INDEX
+NO_PARALLEL
+NOPARALLEL
+NO_PARTIAL_COMMIT
+NO_PARTIAL_JOIN
+NO_PARTIAL_ROLLUP_PUSHDOWN
+NOPARTITION
+NO_PLACE_DISTINCT
+NO_PLACE_GROUP_BY
+NO_PQ_CONCURRENT_UNION
+NO_PQ_MAP
+NO_PQ_REPLICATE
+NO_PQ_SKEW
+NO_PRUNE_GSETS
+NO_PULL_PRED
+NO_PUSH_PRED
+NO_PUSH_SUBQ
+NO_PX_FAULT_TOLERANCE
+NO_PX_JOIN_FILTER
+NO_QKN_BUFF
+NO_QUERY_TRANSFORMATION
+NO_REF_CASCADE
+NORELOCATE
+NORELY
+NOREPAIR
+NOREPLAY
+NORESETLOGS
+NO_RESULT_CACHE
+NOREVERSE
+NO_REWRITE
+NOREWRITE
+NORMAL
+NO_ROOT_SW_FOR_LOCAL
+NOROWDEPENDENCIES
+NOSCHEMACHECK
+NOSEGMENT
+NO_SEMIJOIN
+NO_SEMI_TO_INNER
+NO_SET_TO_JOIN
+NOSORT
+NO_SQL_TRANSLATION
+NO_SQL_TUNE
+NO_STAR_TRANSFORMATION
+NO_STATEMENT_QUEUING
+NO_STATS_GSETS
+NOSTRICT
+NO_SUBQUERY_PRUNING
+NO_SUBSTRB_PAD
+NO_SWAP_JOIN_INPUTS
+NOSWITCH
+NO_TABLE_LOOKUP_BY_NL
+NO_TEMP_TABLE
+NOTHING
+NOTIFICATION
+NOT
+NO_TRANSFORM_DISTINCT_AGG
+NO_UNNEST
+NO_USE_CUBE
+NO_USE_HASH_AGGREGATION
+NO_USE_HASH_GBY_FOR_PUSHDOWN
+NO_USE_HASH
+NO_USE_INVISIBLE_INDEXES
+NO_USE_MERGE
+NO_USE_NL
+NO_USE_VECTOR_AGGREGATION
+NOVALIDATE
+NO_VECTOR_TRANSFORM_DIMS
+NO_VECTOR_TRANSFORM_FACT
+NO_VECTOR_TRANSFORM
+NOWAIT
+NO_XDB_FASTPATH_INSERT
+NO_XML_DML_REWRITE
+NO_XMLINDEX_REWRITE_IN_SELECT
+NO_XMLINDEX_REWRITE
+NO_XML_QUERY_REWRITE
+NO_ZONEMAP
+NTH_VALUE
+NULLIF
+NULL_
+NULLS
+NUMBER
+NUMERIC
+NUM_INDEX_KEYS
+NUMTODSINTERVAL
+NUMTOYMINTERVAL
+NVARCHAR2
+NVL2
+OBJECT2XML
+OBJECT
+OBJ_ID
+OBJNO
+OBJNO_REUSE
+OCCURENCES
+OFFLINE
+OFF
+OFFSET
+OF
+OIDINDEX
+OID
+OLAP
+OLD
+OLD_PUSH_PRED
+OLS
+OLTP
+OMIT
+ONE
+ONLINE
+ONLINELOG
+ONLY
+ON
+OPAQUE
+OPAQUE_TRANSFORM
+OPAQUE_XCANONICAL
+OPCODE
+OPEN
+OPERATIONS
+OPERATOR
+OPT_ESTIMATE
+OPTIMAL
+OPTIMIZE
+OPTIMIZER_FEATURES_ENABLE
+OPTIMIZER_GOAL
+OPTION
+OPT_PARAM
+ORA_BRANCH
+ORA_CHECK_ACL
+ORA_CHECK_PRIVILEGE
+ORA_CLUSTERING
+ORADATA
+ORADEBUG
+ORA_DST_AFFECTED
+ORA_DST_CONVERT
+ORA_DST_ERROR
+ORA_GET_ACLIDS
+ORA_GET_PRIVILEGES
+ORA_HASH
+ORA_INVOKING_USERID
+ORA_INVOKING_USER
+ORA_INVOKING_XS_USER_GUID
+ORA_INVOKING_XS_USER
+ORA_RAWCOMPARE
+ORA_RAWCONCAT
+ORA_ROWSCN
+ORA_ROWSCN_RAW
+ORA_ROWVERSION
+ORA_TABVERSION
+ORA_WRITE_TIME
+ORDERED
+ORDERED_PREDICATES
+ORDER
+ORDINALITY
+OR_EXPAND
+ORGANIZATION
+OR
+OR_PREDICATES
+OSERROR
+OTHER
+OUTER_JOIN_TO_ANTI
+OUTER_JOIN_TO_INNER
+OUTER
+OUTLINE_LEAF
+OUTLINE
+OUT_OF_LINE
+OUT
+OVERFLOW_NOMOVE
+OVERFLOW
+OVERLAPS
+OVER
+OVERRIDING
+OWNER
+OWNERSHIP
+OWN
+PACKAGE
+PACKAGES
+PARALLEL_ENABLE
+PARALLEL_INDEX
+PARALLEL
+PARAMETERFILE
+PARAMETERS
+PARAM
+PARENT
+PARITY
+PARTIAL_JOIN
+PARTIALLY
+PARTIAL
+PARTIAL_ROLLUP_PUSHDOWN
+PARTITION_HASH
+PARTITION_LIST
+PARTITION
+PARTITION_RANGE
+PARTITIONS
+PARTNUMINST
+PASSING
+PASSWORD_GRACE_TIME
+PASSWORD_LIFE_TIME
+PASSWORD_LOCK_TIME
+PASSWORD
+PASSWORD_REUSE_MAX
+PASSWORD_REUSE_TIME
+PASSWORD_VERIFY_FUNCTION
+PAST
+PATCH
+PATH
+PATH_PREFIX
+PATHS
+PATTERN
+PBL_HS_BEGIN
+PBL_HS_END
+PCTFREE
+PCTINCREASE
+PCTTHRESHOLD
+PCTUSED
+PCTVERSION
+PENDING
+PERCENT_FOUND
+PERCENT_ISOPEN
+PERCENT_NOTFOUND
+PERCENT_KEYWORD
+PERCENT_RANKM
+PERCENT_ROWCOUNT
+PERCENT_ROWTYPE
+PERCENT_TYPE
+PERFORMANCE
+PERIOD_KEYWORD
+PERMANENT
+PERMISSION
+PERMUTE
+PER
+PFILE
+PHYSICAL
+PIKEY
+PIPELINED
+PIPE
+PIV_GB
+PIVOT
+PIV_SSF
+PLACE_DISTINCT
+PLACE_GROUP_BY
+PLAN
+PLSCOPE_SETTINGS
+PLS_INTEGER
+PLSQL_CCFLAGS
+PLSQL_CODE_TYPE
+PLSQL_DEBUG
+PLSQL_OPTIMIZE_LEVEL
+PLSQL_WARNINGS
+PLUGGABLE
+POINT
+POLICY
+POOL_16K
+POOL_2K
+POOL_32K
+POOL_4K
+POOL_8K
+POSITIVEN
+POSITIVE
+POST_TRANSACTION
+POWERMULTISET_BY_CARDINALITY
+POWERMULTISET
+POWER
+PQ_CONCURRENT_UNION
+PQ_DISTRIBUTE
+PQ_DISTRIBUTE_WINDOW
+PQ_FILTER
+PQ_MAP
+PQ_NOMAP
+PQ_REPLICATE
+PQ_SKEW
+PRAGMA
+PREBUILT
+PRECEDES
+PRECEDING
+PRECISION
+PRECOMPUTE_SUBQUERY
+PREDICATE_REORDERS
+PRELOAD
+PREPARE
+PRESENTNNV
+PRESENT
+PRESENTV
+PRESERVE_OID
+PRESERVE
+PRETTY
+PREVIOUS
+PREV
+PRIMARY
+PRINTBLOBTOCLOB
+PRIORITY
+PRIOR
+PRIVATE
+PRIVATE_SGA
+PRIVILEGED
+PRIVILEGE
+PRIVILEGES
+PROCEDURAL
+PROCEDURE
+PROCESS
+PROFILE
+PROGRAM
+PROJECT
+PROPAGATE
+PROTECTED
+PROTECTION
+PROXY
+PRUNING
+PUBLIC
+PULL_PRED
+PURGE
+PUSH_PRED
+PUSH_SUBQ
+PX_FAULT_TOLERANCE
+PX_GRANULE
+PX_JOIN_FILTER
+QB_NAME
+QUERY_BLOCK
+QUERY
+QUEUE_CURR
+QUEUE
+QUEUE_ROWP
+QUIESCE
+QUORUM
+QUOTA
+RAISE
+RANDOM_LOCAL
+RANDOM
+RANGE
+RANKM
+RAPIDLY
+RAW
+RAWTOHEX
+RAWTONHEX
+RBA
+RBO_OUTLINE
+RDBA
+READ
+READS
+REALM
+REAL
+REBALANCE
+REBUILD
+RECORD
+RECORDS_PER_BLOCK
+RECOVERABLE
+RECOVER
+RECOVERY
+RECYCLEBIN
+RECYCLE
+REDACTION
+REDEFINE
+REDO
+REDUCED
+REDUNDANCY
+REF_CASCADE_CURSOR
+REFERENCED
+REFERENCE
+REFERENCES
+REFERENCING
+REF
+REFRESH
+REFTOHEX
+REGEXP_COUNT
+REGEXP_INSTR
+REGEXP_LIKE
+REGEXP_REPLACE
+REGEXP_SUBSTR
+REGISTER
+REGR_AVGX
+REGR_AVGY
+REGR_COUNT
+REGR_INTERCEPT
+REGR_R2
+REGR_SLOPE
+REGR_SXX
+REGR_SXY
+REGR_SYY
+REGULAR
+REJECT
+REKEY
+RELATIONAL
+RELIES_ON
+RELOCATE
+RELY
+REMAINDER
+REMOTE_MAPPED
+REMOVE
+RENAME
+REPAIR
+REPEAT
+REPLACE
+REPLICATION
+REQUIRED
+RESETLOGS
+RESET
+RESIZE
+RESOLVE
+RESOLVER
+RESOURCE
+RESPECT
+RESTART
+RESTORE_AS_INTERVALS
+RESTORE
+RESTRICT_ALL_REF_CONS
+RESTRICTED
+RESTRICT_REFERENCES
+RESTRICT
+RESULT_CACHE
+RESULT
+RESUMABLE
+RESUME
+RETENTION
+RETRY_ON_ROW_CHANGE
+RETURNING
+RETURN
+REUSE
+REVERSE
+REVOKE
+REWRITE_OR_ERROR
+REWRITE
+RIGHT
+ROLE
+ROLESET
+ROLES
+ROLLBACK
+ROLLING
+ROLLUP
+ROWDEPENDENCIES
+ROWID_MAPPING_TABLE
+ROWID
+ROWIDTOCHAR
+ROWIDTONCHAR
+ROW_LENGTH
+ROWNUM
+ROW
+ROWS
+RPAD
+RTRIM
+RULE
+RULES
+RUNNING
+SALT
+SAMPLE
+SAVE_AS_INTERVALS
+SAVEPOINT
+SAVE
+SB4
+SCALE_ROWS
+SCALE
+SCAN_INSTANCES
+SCAN
+SCHEDULER
+SCHEMACHECK
+SCHEMA
+SCN_ASCENDING
+SCN
+SCOPE
+SCRUB
+SD_ALL
+SD_INHIBIT
+SDO_GEOM_MBR
+SD_SHOW
+SEARCH
+SECOND
+SECRET
+SECUREFILE_DBA
+SECUREFILE
+SECURITY
+SEED
+SEG_BLOCK
+SEG_FILE
+SEGMENT
+SELECTIVITY
+SELECT
+SELF
+SEMIJOIN_DRIVER
+SEMIJOIN
+SEMI_TO_INNER
+SEQUENCED
+SEQUENCE
+SEQUENTIAL
+SEQ
+SERIALIZABLE
+SERIALLY_REUSABLE
+SERIAL
+SERVERERROR
+SERVICE_NAME_CONVERT
+SERVICES
+SESSION_CACHED_CURSORS
+SESSION
+SESSIONS_PER_USER
+SESSIONTIMEZONE
+SESSIONTZNAME
+SET
+SETS
+SETTINGS
+SET_TO_JOIN
+SEVERE
+SHARED_POOL
+SHARED
+SHARE
+SHARING
+SHELFLIFE
+SHOW
+SHRINK
+SHUTDOWN
+SIBLINGS
+SID
+SIGNAL_COMPONENT
+SIGNAL_FUNCTION
+SIGN
+SIGNTYPE
+SIMPLE_INTEGER
+SIMPLE
+SINGLE
+SINGLETASK
+SINH
+SIN
+SIZE
+SKIP_EXT_OPTIMIZER
+SKIP_
+SKIP_UNQ_UNUSABLE_IDX
+SKIP_UNUSABLE_INDEXES
+SMALLFILE
+SMALLINT
+SNAPSHOT
+SOME
+SORT
+SOUNDEX
+SOURCE_FILE_DIRECTORY
+SOURCE_FILE_NAME_CONVERT
+SOURCE
+SPACE_KEYWORD
+SPECIFICATION
+SPFILE
+SPLIT
+SPREADSHEET
+SQLDATA
+SQLERROR
+SQLLDR
+SQL
+SQL_TRACE
+SQL_TRANSLATION_PROFILE
+SQRT
+STALE
+STANDALONE
+STANDARD_HASH
+STANDBY_MAX_DATA_DELAY
+STANDBYS
+STANDBY
+STAR
+STAR_TRANSFORMATION
+START
+STARTUP
+STATEMENT_ID
+STATEMENT_QUEUING
+STATEMENTS
+STATEMENT
+STATE
+STATIC
+STATISTICS
+STATS_BINOMIAL_TEST
+STATS_CROSSTAB
+STATS_F_TEST
+STATS_KS_TEST
+STATS_MODE
+STATS_MW_TEST
+STATS_ONE_WAY_ANOVA
+STATS_T_TEST_INDEP
+STATS_T_TEST_INDEPU
+STATS_T_TEST_ONE
+STATS_T_TEST_PAIRED
+STATS_WSR_TEST
+STDDEV_POP
+STDDEV_SAMP
+STOP
+STORAGE
+STORE
+STREAMS
+STREAM
+STRICT
+STRING
+STRIPE_COLUMNS
+STRIPE_WIDTH
+STRIP
+STRUCTURE
+SUBMULTISET
+SUBPARTITION_REL
+SUBPARTITIONS
+SUBPARTITION
+SUBQUERIES
+SUBQUERY_PRUNING
+SUBSCRIBE
+SUBSET
+SUBSTITUTABLE
+SUBSTR2
+SUBSTR4
+SUBSTRB
+SUBSTRC
+SUBTYPE
+SUCCESSFUL
+SUCCESS
+SUMMARY
+SUPPLEMENTAL
+SUSPEND
+SWAP_JOIN_INPUTS
+SWITCHOVER
+SWITCH
+SYNCHRONOUS
+SYNC
+SYNONYM
+SYSASM
+SYS_AUDIT
+SYSAUX
+SYSBACKUP
+SYS_CHECKACL
+SYS_CHECK_PRIVILEGE
+SYS_CONNECT_BY_PATH
+SYS_CONTEXT
+SYSDATE
+SYSDBA
+SYS_DBURIGEN
+SYSDG
+SYS_DL_CURSOR
+SYS_DM_RXFORM_CHR
+SYS_DM_RXFORM_NUM
+SYS_DOM_COMPARE
+SYS_DST_PRIM2SEC
+SYS_DST_SEC2PRIM
+SYS_ET_BFILE_TO_RAW
+SYS_ET_BLOB_TO_IMAGE
+SYS_ET_IMAGE_TO_BLOB
+SYS_ET_RAW_TO_BFILE
+SYS_EXTPDTXT
+SYS_EXTRACT_UTC
+SYS_FBT_INSDEL
+SYS_FILTER_ACLS
+SYS_FNMATCHES
+SYS_FNREPLACE
+SYS_GET_ACLIDS
+SYS_GET_COL_ACLIDS
+SYS_GET_PRIVILEGES
+SYS_GETTOKENID
+SYS_GETXTIVAL
+SYS_GUID
+SYSGUID
+SYSKM
+SYS_MAKE_XMLNODEID
+SYS_MAKEXML
+SYS_MKXMLATTR
+SYS_MKXTI
+SYSOBJ
+SYS_OP_ADT2BIN
+SYS_OP_ADTCONS
+SYS_OP_ALSCRVAL
+SYS_OP_ATG
+SYS_OP_BIN2ADT
+SYS_OP_BITVEC
+SYS_OP_BL2R
+SYS_OP_BLOOM_FILTER_LIST
+SYS_OP_BLOOM_FILTER
+SYS_OP_C2C
+SYS_OP_CAST
+SYS_OP_CEG
+SYS_OP_CL2C
+SYS_OP_COMBINED_HASH
+SYS_OP_COMP
+SYS_OP_CONVERT
+SYS_OP_COUNTCHG
+SYS_OP_CSCONV
+SYS_OP_CSCONVTEST
+SYS_OP_CSR
+SYS_OP_CSX_PATCH
+SYS_OP_CYCLED_SEQ
+SYS_OP_DECOMP
+SYS_OP_DESCEND
+SYS_OP_DISTINCT
+SYS_OP_DRA
+SYS_OP_DUMP
+SYS_OP_DV_CHECK
+SYS_OP_ENFORCE_NOT_NULL
+SYSOPER
+SYS_OP_EXTRACT
+SYS_OP_GROUPING
+SYS_OP_GUID
+SYS_OP_HASH
+SYS_OP_IIX
+SYS_OP_ITR
+SYS_OP_KEY_VECTOR_CREATE
+SYS_OP_KEY_VECTOR_FILTER_LIST
+SYS_OP_KEY_VECTOR_FILTER
+SYS_OP_KEY_VECTOR_SUCCEEDED
+SYS_OP_KEY_VECTOR_USE
+SYS_OP_LBID
+SYS_OP_LOBLOC2BLOB
+SYS_OP_LOBLOC2CLOB
+SYS_OP_LOBLOC2ID
+SYS_OP_LOBLOC2NCLOB
+SYS_OP_LOBLOC2TYP
+SYS_OP_LSVI
+SYS_OP_LVL
+SYS_OP_MAKEOID
+SYS_OP_MAP_NONNULL
+SYS_OP_MSR
+SYS_OP_NICOMBINE
+SYS_OP_NIEXTRACT
+SYS_OP_NII
+SYS_OP_NIX
+SYS_OP_NOEXPAND
+SYS_OP_NTCIMG
+SYS_OP_NUMTORAW
+SYS_OP_OIDVALUE
+SYS_OP_OPNSIZE
+SYS_OP_PAR_1
+SYS_OP_PARGID_1
+SYS_OP_PARGID
+SYS_OP_PAR
+SYS_OP_PART_ID
+SYS_OP_PIVOT
+SYS_OP_R2O
+SYS_OP_RAWTONUM
+SYS_OP_RDTM
+SYS_OP_REF
+SYS_OP_RMTD
+SYS_OP_ROWIDTOOBJ
+SYS_OP_RPB
+SYS_OPTLOBPRBSC
+SYS_OP_TOSETID
+SYS_OP_TPR
+SYS_OP_TRTB
+SYS_OPTXICMP
+SYS_OPTXQCASTASNQ
+SYS_OP_UNDESCEND
+SYS_OP_VECAND
+SYS_OP_VECBIT
+SYS_OP_VECOR
+SYS_OP_VECXOR
+SYS_OP_VERSION
+SYS_OP_VREF
+SYS_OP_VVD
+SYS_OP_XMLCONS_FOR_CSX
+SYS_OP_XPTHATG
+SYS_OP_XPTHIDX
+SYS_OP_XPTHOP
+SYS_OP_XTXT2SQLT
+SYS_OP_ZONE_ID
+SYS_ORDERKEY_DEPTH
+SYS_ORDERKEY_MAXCHILD
+SYS_ORDERKEY_PARENT
+SYS_PARALLEL_TXN
+SYS_PATHID_IS_ATTR
+SYS_PATHID_IS_NMSPC
+SYS_PATHID_LASTNAME
+SYS_PATHID_LASTNMSPC
+SYS_PATH_REVERSE
+SYS_PXQEXTRACT
+SYS_RAW_TO_XSID
+SYS_RID_ORDER
+SYS_ROW_DELTA
+SYS_SC_2_XMLT
+SYS_SYNRCIREDO
+SYSTEM_DEFINED
+SYSTEM
+SYSTIMESTAMP
+SYS_TYPEID
+SYS_UMAKEXML
+SYS_XMLANALYZE
+SYS_XMLCONTAINS
+SYS_XMLCONV
+SYS_XMLEXNSURI
+SYS_XMLGEN
+SYS_XMLI_LOC_ISNODE
+SYS_XMLI_LOC_ISTEXT
+SYS_XMLINSTR
+SYS_XMLLOCATOR_GETSVAL
+SYS_XMLNODEID_GETCID
+SYS_XMLNODEID_GETLOCATOR
+SYS_XMLNODEID_GETOKEY
+SYS_XMLNODEID_GETPATHID
+SYS_XMLNODEID_GETPTRID
+SYS_XMLNODEID_GETRID
+SYS_XMLNODEID_GETSVAL
+SYS_XMLNODEID_GETTID
+SYS_XMLNODEID
+SYS_XMLT_2_SC
+SYS_XMLTRANSLATE
+SYS_XMLTYPE2SQL
+SYS_XQ_ASQLCNV
+SYS_XQ_ATOMCNVCHK
+SYS_XQBASEURI
+SYS_XQCASTABLEERRH
+SYS_XQCODEP2STR
+SYS_XQCODEPEQ
+SYS_XQCON2SEQ
+SYS_XQCONCAT
+SYS_XQDELETE
+SYS_XQDFLTCOLATION
+SYS_XQDOC
+SYS_XQDOCURI
+SYS_XQDURDIV
+SYS_XQED4URI
+SYS_XQENDSWITH
+SYS_XQERRH
+SYS_XQERR
+SYS_XQESHTMLURI
+SYS_XQEXLOBVAL
+SYS_XQEXSTWRP
+SYS_XQEXTRACT
+SYS_XQEXTRREF
+SYS_XQEXVAL
+SYS_XQFB2STR
+SYS_XQFNBOOL
+SYS_XQFNCMP
+SYS_XQFNDATIM
+SYS_XQFNLNAME
+SYS_XQFNNM
+SYS_XQFNNSURI
+SYS_XQFNPREDTRUTH
+SYS_XQFNQNM
+SYS_XQFNROOT
+SYS_XQFORMATNUM
+SYS_XQFTCONTAIN
+SYS_XQFUNCR
+SYS_XQGETCONTENT
+SYS_XQINDXOF
+SYS_XQINSERT
+SYS_XQINSPFX
+SYS_XQIRI2URI
+SYS_XQLANG
+SYS_XQLLNMFRMQNM
+SYS_XQMKNODEREF
+SYS_XQNILLED
+SYS_XQNODENAME
+SYS_XQNORMSPACE
+SYS_XQNORMUCODE
+SYS_XQ_NRNG
+SYS_XQNSP4PFX
+SYS_XQNSPFRMQNM
+SYS_XQPFXFRMQNM
+SYS_XQ_PKSQL2XML
+SYS_XQPOLYABS
+SYS_XQPOLYADD
+SYS_XQPOLYCEL
+SYS_XQPOLYCSTBL
+SYS_XQPOLYCST
+SYS_XQPOLYDIV
+SYS_XQPOLYFLR
+SYS_XQPOLYMOD
+SYS_XQPOLYMUL
+SYS_XQPOLYRND
+SYS_XQPOLYSQRT
+SYS_XQPOLYSUB
+SYS_XQPOLYUMUS
+SYS_XQPOLYUPLS
+SYS_XQPOLYVEQ
+SYS_XQPOLYVGE
+SYS_XQPOLYVGT
+SYS_XQPOLYVLE
+SYS_XQPOLYVLT
+SYS_XQPOLYVNE
+SYS_XQREF2VAL
+SYS_XQRENAME
+SYS_XQREPLACE
+SYS_XQRESVURI
+SYS_XQRNDHALF2EVN
+SYS_XQRSLVQNM
+SYS_XQRYENVPGET
+SYS_XQRYVARGET
+SYS_XQRYWRP
+SYS_XQSEQ2CON4XC
+SYS_XQSEQ2CON
+SYS_XQSEQDEEPEQ
+SYS_XQSEQINSB
+SYS_XQSEQRM
+SYS_XQSEQRVS
+SYS_XQSEQSUB
+SYS_XQSEQTYPMATCH
+SYS_XQSTARTSWITH
+SYS_XQSTATBURI
+SYS_XQSTR2CODEP
+SYS_XQSTRJOIN
+SYS_XQSUBSTRAFT
+SYS_XQSUBSTRBEF
+SYS_XQTOKENIZE
+SYS_XQTREATAS
+SYS_XQ_UPKXML2SQL
+SYS_XQXFORM
+SYS_XSID_TO_RAW
+SYS_ZMAP_FILTER
+SYS_ZMAP_REFRESH
+TABLE_LOOKUP_BY_NL
+TABLESPACE_NO
+TABLESPACE
+TABLES
+TABLE_STATS
+TABLE
+TABNO
+TAG
+TANH
+TAN
+TBLORIDXPARTNUM
+TEMPFILE
+TEMPLATE
+TEMPORARY
+TEMP_TABLE
+TEST
+TEXT
+THAN
+THEN
+THE
+THREAD
+THROUGH
+TIER
+TIES
+TIMEOUT
+TIMESTAMP_LTZ_UNCONSTRAINED
+TIMESTAMP
+TIMESTAMP_TZ_UNCONSTRAINED
+TIMESTAMP_UNCONSTRAINED
+TIMES
+TIME
+TIMEZONE
+TIMEZONE_ABBR
+TIMEZONE_HOUR
+TIMEZONE_MINUTE
+TIMEZONE_OFFSET
+TIMEZONE_REGION
+TIME_ZONE
+TIV_GB
+TIV_SSF
+TO_ACLID
+TO_BINARY_DOUBLE
+TO_BINARY_FLOAT
+TO_BLOB
+TO_CLOB
+TO_DSINTERVAL
+TO_LOB
+TO_MULTI_BYTE
+TO_NCHAR
+TO_NCLOB
+TO_NUMBER
+TOPLEVEL
+TO_SINGLE_BYTE
+TO_TIMESTAMP
+TO_TIMESTAMP_TZ
+TO_TIME
+TO_TIME_TZ
+TO
+TO_YMINTERVAL
+TRACE
+TRACING
+TRACKING
+TRAILING
+TRANSACTION
+TRANSFORM_DISTINCT_AGG
+TRANSITIONAL
+TRANSITION
+TRANSLATE
+TRANSLATION
+TREAT
+TRIGGERS
+TRIGGER
+TRUE
+TRUNCATE
+TRUNC
+TRUSTED
+TRUST
+TUNING
+TX
+TYPES
+TYPE
+TZ_OFFSET
+UB2
+UBA
+UCS2
+UID
+UNARCHIVED
+UNBOUNDED
+UNBOUND
+UNCONDITIONAL
+UNDER
+UNDO
+UNDROP
+UNIFORM
+UNION
+UNIQUE
+UNISTR
+UNLIMITED
+UNLOAD
+UNLOCK
+UNMATCHED
+UNNEST_INNERJ_DISTINCT_VIEW
+UNNEST_NOSEMIJ_NODISTINCTVIEW
+UNNEST_SEMIJ_VIEW
+UNNEST
+UNPACKED
+UNPIVOT
+UNPLUG
+UNPROTECTED
+UNQUIESCE
+UNRECOVERABLE
+UNRESTRICTED
+UNSUBSCRIBE
+UNTIL
+UNUSABLE
+UNUSED
+UPDATABLE
+UPDATED
+UPDATE
+UPDATEXML
+UPD_INDEXES
+UPD_JOININDEX
+UPGRADE
+UPPER
+UPSERT
+UROWID
+USABLE
+USAGE
+USE_ANTI
+USE_CONCAT
+USE_CUBE
+USE_HASH_AGGREGATION
+USE_HASH_GBY_FOR_PUSHDOWN
+USE_HASH
+USE_HIDDEN_PARTITIONS
+USE_INVISIBLE_INDEXES
+USE_MERGE_CARTESIAN
+USE_MERGE
+USE_NL
+USE_NL_WITH_INDEX
+USE_PRIVATE_OUTLINES
+USER_DATA
+USER_DEFINED
+USERENV
+USERGROUP
+USER_RECYCLEBIN
+USERS
+USER_TABLESPACES
+USER
+USE_SEMI
+USE_STORED_OUTLINES
+USE_TTT_FOR_GSETS
+USE
+USE_VECTOR_AGGREGATION
+USE_WEAK_NAME_RESL
+USING_NO_EXPAND
+USING
+UTF16BE
+UTF16LE
+UTF32
+UTF8
+V1
+V2
+VALIDATE
+VALIDATION
+VALID_TIME_END
+VALUES
+VALUE
+VARCHAR2
+VARCHAR
+VARIABLE
+VAR_POP
+VARRAYS
+VARRAY
+VAR_SAMP
+VARYING
+VECTOR_READ_TRACE
+VECTOR_READ
+VECTOR_TRANSFORM_DIMS
+VECTOR_TRANSFORM_FACT
+VECTOR_TRANSFORM
+VERIFIER
+VERIFY
+VERSIONING
+VERSIONS_ENDSCN
+VERSIONS_ENDTIME
+VERSIONS_OPERATION
+VERSIONS_STARTSCN
+VERSIONS_STARTTIME
+VERSIONS
+VERSIONS_XID
+VERSION
+VIEW
+VIOLATION
+VIRTUAL
+VISIBILITY
+VISIBLE
+VOLUME
+VSIZE
+WAIT
+WALLET
+WARNING
+WEEKS
+WEEK
+WELLFORMED
+WHENEVER
+WHEN
+WHERE
+WHILE
+WHITESPACE
+WIDTH_BUCKET
+WITHIN
+WITHOUT
+WITH_PLSQL
+WITH
+WORK
+WRAPPED
+WRAPPER
+WRITE
+XDB_FASTPATH_INSERT
+XDB
+X_DYN_PRUNE
+XID
+XML2OBJECT
+XMLAGG
+XMLATTRIBUTES
+XMLCAST
+XMLCDATA
+XMLCOLATTVAL
+XMLCOMMENT
+XMLCONCAT
+XMLDIFF
+XML_DML_RWT_STMT
+XMLELEMENT
+XMLEXISTS2
+XMLEXISTS
+XMLFOREST
+XMLINDEX
+XMLINDEX_REWRITE_IN_SELECT
+XMLINDEX_REWRITE
+XMLINDEX_SEL_IDX_TBL
+XMLISNODE
+XMLISVALID
+XMLNAMESPACES
+XMLPARSE
+XMLPATCH
+XMLPI
+XMLQUERYVAL
+XMLQUERY
+XMLROOT
+XMLSCHEMA
+XMLSERIALIZE
+XMLTABLE
+XMLTRANSFORMBLOB
+XMLTRANSFORM
+XMLTYPE
+XML
+XPATHTABLE
+XS_SYS_CONTEXT
+XS
+XTRANSPORT
+YEARS
+YEAR
+YES
+YMINTERVAL_UNCONSTRAINED
+ZONEMAP
+ZONE
+PREDICTION
+PREDICTION_BOUNDS
+PREDICTION_COST
+PREDICTION_DETAILS
+PREDICTION_PROBABILITY
+PREDICTION_SET
+CUME_DIST
+DENSE_RANK
+LISTAGG
+PERCENT_RANK
+PERCENTILE_CONT
+PERCENTILE_DISC
+RANK
+AVG
+CORR
+COVAR_
+DECODE
+LAG
+LEAD
+MAX
+MEDIAN
+MIN
+NTILE
+NVL
+RATIO_TO_REPORT
+REGR_
+ROUND
+ROW_NUMBER
+SUBSTR
+TO_CHAR
+TRIM
+SUM
+STDDEV
+VAR_
+VARIANCE
+LEAST
+GREATEST
+TO_DATE
+NATIONAL_CHAR_STRING_LIT
+BIT_STRING_LIT
+HEX_STRING_LIT
+DOUBLE_PERIOD
+PERIOD
+UNSIGNED_INTEGER
+APPROXIMATE_NUM_LIT
+CHAR_STRING
+DELIMITED_ID
+PERCENT
+AMPERSAND
+LEFT_PAREN
+RIGHT_PAREN
+DOUBLE_ASTERISK
+ASTERISK
+PLUS_SIGN
+MINUS_SIGN
+COMMA
+SOLIDUS
+AT_SIGN
+ASSIGN_OP
+BINDVAR
+NOT_EQUAL_OP
+CARRET_OPERATOR_PART
+TILDE_OPERATOR_PART
+EXCLAMATION_OPERATOR_PART
+GREATER_THAN_OP
+LESS_THAN_OP
+COLON
+SEMICOLON
+BAR
+EQUALS_OP
+LEFT_BRACKET
+RIGHT_BRACKET
+INTRODUCER
+SINGLE_LINE_COMMENT
+MULTI_LINE_COMMENT
+REMARK_COMMENT
+PROMPT_MESSAGE
+START_CMD
+REGULAR_ID
+SPACES
+
+rule names:
+program
+sql_script
+unit_statement
+drop_function
+alter_function
+create_function_body
+parallel_enable_clause
+partition_by_clause
+result_cache_clause
+relies_on_part
+streaming_clause
+drop_package
+alter_package
+create_package
+create_package_body
+package_obj_spec
+procedure_spec
+function_spec
+package_obj_body
+drop_procedure
+alter_procedure
+function_body
+procedure_body
+create_procedure_body
+drop_trigger
+alter_trigger
+create_trigger
+trigger_follows_clause
+trigger_when_clause
+simple_dml_trigger
+for_each_row
+compound_dml_trigger
+non_dml_trigger
+trigger_body
+routine_clause
+compound_trigger_block
+timing_point_section
+non_dml_event
+dml_event_clause
+dml_event_element
+dml_event_nested_clause
+referencing_clause
+referencing_element
+drop_type
+alter_type
+compile_type_clause
+replace_type_clause
+alter_method_spec
+alter_method_element
+alter_attribute_definition
+attribute_definition
+alter_collection_clauses
+dependent_handling_clause
+dependent_exceptions_part
+create_type
+type_definition
+object_type_def
+object_as_part
+object_under_part
+nested_table_type_def
+sqlj_object_type
+type_body
+type_body_elements
+map_order_func_declaration
+subprog_decl_in_type
+proc_decl_in_type
+func_decl_in_type
+constructor_declaration
+modifier_clause
+object_member_spec
+sqlj_object_type_attr
+element_spec
+element_spec_options
+subprogram_spec
+overriding_subprogram_spec
+overriding_function_spec
+type_procedure_spec
+type_function_spec
+constructor_spec
+map_order_function_spec
+pragma_clause
+pragma_elements
+type_elements_parameter
+drop_sequence
+alter_sequence
+alter_session
+alter_session_set_clause
+create_sequence
+sequence_spec
+sequence_start_clause
+create_index
+cluster_index_clause
+cluster_name
+table_index_clause
+bitmap_join_index_clause
+index_expr
+index_properties
+domain_index_clause
+local_domain_index_clause
+xmlindex_clause
+local_xmlindex_clause
+global_partitioned_index
+index_partitioning_clause
+local_partitioned_index
+on_range_partitioned_table
+on_list_partitioned_table
+partitioned_table
+on_hash_partitioned_table
+on_hash_partitioned_clause
+on_comp_partitioned_table
+on_comp_partitioned_clause
+index_subpartition_clause
+index_subpartition_subclause
+odci_parameters
+indextype
+alter_index
+alter_index_ops_set1
+alter_index_ops_set2
+visible_or_invisible
+monitoring_nomonitoring
+rebuild_clause
+alter_index_partitioning
+modify_index_default_attrs
+add_hash_index_partition
+coalesce_index_partition
+modify_index_partition
+modify_index_partitions_ops
+rename_index_partition
+drop_index_partition
+split_index_partition
+index_partition_description
+modify_index_subpartition
+partition_name_old
+new_partition_name
+new_index_name
+create_user
+alter_user
+alter_identified_by
+identified_by
+identified_other_clause
+user_tablespace_clause
+quota_clause
+profile_clause
+role_clause
+user_default_role_clause
+password_expire_clause
+user_lock_clause
+user_editions_clause
+alter_user_editions_clause
+proxy_clause
+container_names
+set_container_data
+add_rem_container_data
+container_data_clause
+analyze
+partition_extention_clause
+validation_clauses
+online_or_offline
+into_clause1
+partition_key_value
+subpartition_key_value
+associate_statistics
+column_association
+function_association
+indextype_name
+using_statistics_type
+statistics_type_name
+default_cost_clause
+cpu_cost
+io_cost
+network_cost
+default_selectivity_clause
+default_selectivity
+storage_table_clause
+unified_auditing
+policy_name
+audit_traditional
+audit_direct_path
+audit_container_clause
+audit_operation_clause
+auditing_by_clause
+audit_user
+audit_schema_object_clause
+sql_operation
+auditing_on_clause
+model_name
+object_name
+profile_name
+sql_statement_shortcut
+drop_index
+rename_object
+grant_statement
+container_clause
+create_directory
+directory_name
+directory_path
+alter_library
+library_editionable
+library_debug
+compiler_parameters_clause
+parameter_value
+library_name
+alter_view
+alter_view_editionable
+create_view
+view_options
+view_alias_constraint
+object_view_clause
+inline_constraint
+inline_ref_constraint
+out_of_line_ref_constraint
+out_of_line_constraint
+constraint_state
+alter_tablespace
+datafile_tempfile_clauses
+tablespace_logging_clauses
+tablespace_group_clause
+tablespace_group_name
+tablespace_state_clauses
+flashback_mode_clause
+new_tablespace_name
+create_tablespace
+permanent_tablespace_clause
+tablespace_encryption_spec
+logging_clause
+extent_management_clause
+segment_management_clause
+temporary_tablespace_clause
+undo_tablespace_clause
+tablespace_retention_clause
+datafile_specification
+tempfile_specification
+datafile_tempfile_spec
+redo_log_file_spec
+autoextend_clause
+maxsize_clause
+build_clause
+parallel_clause
+alter_materialized_view
+alter_mv_option1
+alter_mv_refresh
+rollback_segment
+modify_mv_column_clause
+alter_materialized_view_log
+add_mv_log_column_clause
+move_mv_log_clause
+mv_log_augmentation
+datetime_expr
+interval_expr
+synchronous_or_asynchronous
+including_or_excluding
+create_materialized_view_log
+new_values_clause
+mv_log_purge_clause
+create_materialized_view
+create_mv_refresh
+create_context
+oracle_namespace
+create_cluster
+create_table
+xmltype_table
+xmltype_virtual_columns
+xmltype_column_properties
+xmltype_storage
+xmlschema_spec
+object_table
+oid_index_clause
+oid_clause
+object_properties
+object_table_substitution
+relational_table
+relational_property
+table_partitioning_clauses
+range_partitions
+list_partitions
+hash_partitions
+individual_hash_partitions
+hash_partitions_by_quantity
+hash_partition_quantity
+composite_range_partitions
+composite_list_partitions
+composite_hash_partitions
+reference_partitioning
+reference_partition_desc
+system_partitioning
+range_partition_desc
+list_partition_desc
+subpartition_template
+hash_subpartition_quantity
+subpartition_by_range
+subpartition_by_list
+subpartition_by_hash
+subpartition_name
+range_subpartition_desc
+list_subpartition_desc
+individual_hash_subparts
+hash_subparts_by_quantity
+range_values_clause
+list_values_clause
+table_partition_description
+partitioning_storage_clause
+lob_partitioning_storage
+datatype_null_enable
+size_clause
+table_compression
+physical_attributes_clause
+storage_clause
+deferred_segment_creation
+segment_attributes_clause
+physical_properties
+row_movement_clause
+flashback_archive_clause
+log_grp
+supplemental_table_logging
+supplemental_log_grp_clause
+supplemental_id_key_clause
+allocate_extent_clause
+deallocate_unused_clause
+shrink_clause
+records_per_block_clause
+upgrade_table_clause
+drop_table
+drop_view
+comment_on_column
+enable_or_disable
+allow_or_disallow
+create_synonym
+comment_on_table
+alter_cluster
+cache_or_nocache
+database_name
+alter_database
+startup_clauses
+resetlogs_or_noresetlogs
+upgrade_or_downgrade
+recovery_clauses
+begin_or_end
+general_recovery
+full_database_recovery
+partial_database_recovery
+partial_database_recovery_10g
+managed_standby_recovery
+db_name
+database_file_clauses
+create_datafile_clause
+alter_datafile_clause
+alter_tempfile_clause
+logfile_clauses
+add_logfile_clauses
+log_file_group
+drop_logfile_clauses
+switch_logfile_clause
+supplemental_db_logging
+add_or_drop
+supplemental_plsql_clause
+logfile_descriptor
+controlfile_clauses
+trace_file_clause
+standby_database_clauses
+activate_standby_db_clause
+maximize_standby_db_clause
+register_logfile_clause
+commit_switchover_clause
+start_standby_clause
+stop_standby_clause
+convert_database_clause
+default_settings_clause
+set_time_zone_clause
+instance_clauses
+security_clause
+domain
+database
+edition_name
+filenumber
+filename
+alter_table
+alter_table_properties
+alter_table_properties_1
+alter_iot_clauses
+alter_mapping_table_clause
+alter_overflow_clause
+add_overflow_clause
+enable_disable_clause
+using_index_clause
+index_attributes
+sort_or_nosort
+exceptions_clause
+move_table_clause
+index_org_table_clause
+mapping_table_clause
+key_compression
+index_org_overflow_clause
+column_clauses
+modify_collection_retrieval
+collection_item
+rename_column_clause
+old_column_name
+new_column_name
+add_modify_drop_column_clauses
+drop_column_clause
+modify_column_clauses
+modify_col_properties
+modify_col_substitutable
+add_column_clause
+alter_varray_col_properties
+varray_col_properties
+varray_storage_clause
+lob_segname
+lob_item
+lob_storage_parameters
+lob_storage_clause
+modify_lob_storage_clause
+modify_lob_parameters
+lob_parameters
+lob_deduplicate_clause
+lob_compression_clause
+lob_retention_clause
+encryption_spec
+tablespace
+varray_item
+column_properties
+period_definition
+start_time_column
+end_time_column
+column_definition
+virtual_column_definition
+autogenerated_sequence_definition
+out_of_line_part_storage
+nested_table_col_properties
+nested_item
+substitutable_column_clause
+partition_name
+supplemental_logging_props
+column_or_attribute
+object_type_col_properties
+constraint_clauses
+old_constraint_name
+new_constraint_name
+drop_constraint_clause
+drop_primary_key_or_unique_or_generic_clause
+add_constraint
+add_constraint_clause
+check_constraint
+drop_constraint
+enable_constraint
+disable_constraint
+foreign_key_clause
+references_clause
+on_delete_clause
+unique_key_clause
+primary_key_clause
+anonymous_block
+invoker_rights_clause
+call_spec
+java_spec
+c_spec
+c_agent_in_clause
+c_parameters_clause
+parameter
+default_value_part
+seq_of_declare_specs
+declare_spec
+variable_declaration
+subtype_declaration
+cursor_declaration
+parameter_spec
+exception_declaration
+pragma_declaration
+record_type_def
+field_spec
+ref_cursor_type_def
+type_declaration
+table_type_def
+table_indexed_by_part
+varray_type_def
+seq_of_statements
+label_declaration
+statement
+swallow_to_semi
+assignment_statement
+continue_statement
+exit_statement
+goto_statement
+if_statement
+elsif_part
+else_part
+loop_statement
+cursor_loop_param
+forall_statement
+bounds_clause
+between_bound
+lower_bound
+upper_bound
+null_statement
+raise_statement
+return_statement
+function_call
+procedure_call
+pipe_row_statement
+body
+exception_handler
+trigger_block
+block
+sql_statement
+execute_immediate
+dynamic_returning_clause
+data_manipulation_language_statements
+cursor_manipulation_statements
+close_statement
+open_statement
+fetch_statement
+open_for_statement
+transaction_control_statements
+set_transaction_command
+set_constraint_command
+commit_statement
+write_clause
+rollback_statement
+savepoint_statement
+explain_statement
+select_only_statement
+select_statement
+subquery_factoring_clause
+factoring_element
+search_clause
+cycle_clause
+subquery
+subquery_basic_elements
+subquery_operation_part
+query_block
+selected_list
+from_clause
+select_list_elements
+table_ref_list
+table_ref
+table_ref_aux
+table_ref_aux_internal
+join_clause
+join_on_part
+join_using_part
+outer_join_type
+query_partition_clause
+flashback_query_clause
+pivot_clause
+pivot_element
+pivot_for_clause
+pivot_in_clause
+pivot_in_clause_element
+pivot_in_clause_elements
+unpivot_clause
+unpivot_in_clause
+unpivot_in_elements
+hierarchical_query_clause
+start_part
+group_by_clause
+group_by_elements
+rollup_cube_clause
+grouping_sets_clause
+grouping_sets_elements
+having_clause
+model_clause
+cell_reference_options
+return_rows_clause
+reference_model
+main_model
+model_column_clauses
+model_column_partition_part
+model_column_list
+model_column
+model_rules_clause
+model_rules_part
+model_rules_element
+cell_assignment
+model_iterate_clause
+until_part
+order_by_clause
+order_by_elements
+offset_clause
+fetch_clause
+for_update_clause
+for_update_of_part
+for_update_options
+update_statement
+update_set_clause
+column_based_update_set_clause
+delete_statement
+insert_statement
+single_table_insert
+multi_table_insert
+multi_table_element
+conditional_insert_clause
+conditional_insert_when_part
+conditional_insert_else_part
+insert_into_clause
+values_clause
+merge_statement
+merge_update_clause
+merge_element
+merge_update_delete_part
+merge_insert_clause
+selected_tableview
+lock_table_statement
+wait_nowait_part
+lock_table_element
+lock_mode
+general_table_ref
+static_returning_clause
+error_logging_clause
+error_logging_into_part
+error_logging_reject_part
+dml_table_expression_clause
+table_collection_expression
+subquery_restriction_clause
+sample_clause
+seed_part
+condition
+expressions
+expression
+cursor_expression
+logical_expression
+unary_logical_expression
+logical_operation
+multiset_expression
+relational_expression
+compound_expression
+relational_operator
+in_elements
+between_elements
+concatenation
+interval_expression
+model_expression
+model_expression_element
+single_column_for_loop
+multi_column_for_loop
+unary_expression
+case_statement
+simple_case_statement
+simple_case_when_part
+searched_case_statement
+searched_case_when_part
+case_else_part
+atom
+quantified_expression
+string_function
+standard_function
+literal
+numeric_function_wrapper
+numeric_function
+other_function
+over_clause_keyword
+within_or_over_clause_keyword
+standard_prediction_function_keyword
+over_clause
+windowing_clause
+windowing_type
+windowing_elements
+using_clause
+using_element
+collect_order_by_part
+within_or_over_part
+cost_matrix_clause
+xml_passing_clause
+xml_attributes_clause
+xml_namespaces_clause
+xml_table_column
+xml_general_default_part
+xml_multiuse_expression_element
+xmlroot_param_version_part
+xmlroot_param_standalone_part
+xmlserialize_param_enconding_part
+xmlserialize_param_version_part
+xmlserialize_param_ident_part
+sql_plus_command
+whenever_command
+set_command
+partition_extension_clause
+column_alias
+table_alias
+where_clause
+into_clause
+xml_column_name
+cost_class_name
+attribute_name
+savepoint_name
+rollback_segment_name
+table_var_name
+schema_name
+routine_name
+package_name
+implementation_type_name
+parameter_name
+reference_model_name
+main_model_name
+container_tableview_name
+aggregate_function_name
+query_name
+grantee_name
+role_name
+constraint_name
+label_name
+type_name
+sequence_name
+exception_name
+function_name
+procedure_name
+trigger_name
+variable_name
+index_name
+cursor_name
+record_name
+collection_name
+link_name
+column_name
+tableview_name
+xmltable
+char_set_name
+synonym_name
+schema_object_name
+dir_object_name
+user_object_name
+grant_object_name
+column_list
+paren_column_list
+keep_clause
+function_argument
+function_argument_analytic
+function_argument_modeling
+respect_or_ignore_nulls
+argument
+type_spec
+datatype
+precision_part
+native_datatype_element
+bind_variable
+general_element
+general_element_part
+table_element
+object_privilege
+system_privilege
+constant
+numeric
+numeric_negative
+quoted_string
+identifier
+id_expression
+outer_join_sign
+regular_id
+non_reserved_keywords_in_12c
+non_reserved_keywords_pre12c
+string_function_name
+numeric_function_name
+
+
+atn:
+[3, 24715, 42794, 33075, 47597, 16764, 15335, 30598, 22884, 3, 2255, 12097, 4, 2, 9, 2, 4, 3, 9, 3, 4, 4, 9, 4, 4, 5, 9, 5, 4, 6, 9, 6, 4, 7, 9, 7, 4, 8, 9, 8, 4, 9, 9, 9, 4, 10, 9, 10, 4, 11, 9, 11, 4, 12, 9, 12, 4, 13, 9, 13, 4, 14, 9, 14, 4, 15, 9, 15, 4, 16, 9, 16, 4, 17, 9, 17, 4, 18, 9, 18, 4, 19, 9, 19, 4, 20, 9, 20, 4, 21, 9, 21, 4, 22, 9, 22, 4, 23, 9, 23, 4, 24, 9, 24, 4, 25, 9, 25, 4, 26, 9, 26, 4, 27, 9, 27, 4, 28, 9, 28, 4, 29, 9, 29, 4, 30, 9, 30, 4, 31, 9, 31, 4, 32, 9, 32, 4, 33, 9, 33, 4, 34, 9, 34, 4, 35, 9, 35, 4, 36, 9, 36, 4, 37, 9, 37, 4, 38, 9, 38, 4, 39, 9, 39, 4, 40, 9, 40, 4, 41, 9, 41, 4, 42, 9, 42, 4, 43, 9, 43, 4, 44, 9, 44, 4, 45, 9, 45, 4, 46, 9, 46, 4, 47, 9, 47, 4, 48, 9, 48, 4, 49, 9, 49, 4, 50, 9, 50, 4, 51, 9, 51, 4, 52, 9, 52, 4, 53, 9, 53, 4, 54, 9, 54, 4, 55, 9, 55, 4, 56, 9, 56, 4, 57, 9, 57, 4, 58, 9, 58, 4, 59, 9, 59, 4, 60, 9, 60, 4, 61, 9, 61, 4, 62, 9, 62, 4, 63, 9, 63, 4, 64, 9, 64, 4, 65, 9, 65, 4, 66, 9, 66, 4, 67, 9, 67, 4, 68, 9, 68, 4, 69, 9, 69, 4, 70, 9, 70, 4, 71, 9, 71, 4, 72, 9, 72, 4, 73, 9, 73, 4, 74, 9, 74, 4, 75, 9, 75, 4, 76, 9, 76, 4, 77, 9, 77, 4, 78, 9, 78, 4, 79, 9, 79, 4, 80, 9, 80, 4, 81, 9, 81, 4, 82, 9, 82, 4, 83, 9, 83, 4, 84, 9, 84, 4, 85, 9, 85, 4, 86, 9, 86, 4, 87, 9, 87, 4, 88, 9, 88, 4, 89, 9, 89, 4, 90, 9, 90, 4, 91, 9, 91, 4, 92, 9, 92, 4, 93, 9, 93, 4, 94, 9, 94, 4, 95, 9, 95, 4, 96, 9, 96, 4, 97, 9, 97, 4, 98, 9, 98, 4, 99, 9, 99, 4, 100, 9, 100, 4, 101, 9, 101, 4, 102, 9, 102, 4, 103, 9, 103, 4, 104, 9, 104, 4, 105, 9, 105, 4, 106, 9, 106, 4, 107, 9, 107, 4, 108, 9, 108, 4, 109, 9, 109, 4, 110, 9, 110, 4, 111, 9, 111, 4, 112, 9, 112, 4, 113, 9, 113, 4, 114, 9, 114, 4, 115, 9, 115, 4, 116, 9, 116, 4, 117, 9, 117, 4, 118, 9, 118, 4, 119, 9, 119, 4, 120, 9, 120, 4, 121, 9, 121, 4, 122, 9, 122, 4, 123, 9, 123, 4, 124, 9, 124, 4, 125, 9, 125, 4, 126, 9, 126, 4, 127, 9, 127, 4, 128, 9, 128, 4, 129, 9, 129, 4, 130, 9, 130, 4, 131, 9, 131, 4, 132, 9, 132, 4, 133, 9, 133, 4, 134, 9, 134, 4, 135, 9, 135, 4, 136, 9, 136, 4, 137, 9, 137, 4, 138, 9, 138, 4, 139, 9, 139, 4, 140, 9, 140, 4, 141, 9, 141, 4, 142, 9, 142, 4, 143, 9, 143, 4, 144, 9, 144, 4, 145, 9, 145, 4, 146, 9, 146, 4, 147, 9, 147, 4, 148, 9, 148, 4, 149, 9, 149, 4, 150, 9, 150, 4, 151, 9, 151, 4, 152, 9, 152, 4, 153, 9, 153, 4, 154, 9, 154, 4, 155, 9, 155, 4, 156, 9, 156, 4, 157, 9, 157, 4, 158, 9, 158, 4, 159, 9, 159, 4, 160, 9, 160, 4, 161, 9, 161, 4, 162, 9, 162, 4, 163, 9, 163, 4, 164, 9, 164, 4, 165, 9, 165, 4, 166, 9, 166, 4, 167, 9, 167, 4, 168, 9, 168, 4, 169, 9, 169, 4, 170, 9, 170, 4, 171, 9, 171, 4, 172, 9, 172, 4, 173, 9, 173, 4, 174, 9, 174, 4, 175, 9, 175, 4, 176, 9, 176, 4, 177, 9, 177, 4, 178, 9, 178, 4, 179, 9, 179, 4, 180, 9, 180, 4, 181, 9, 181, 4, 182, 9, 182, 4, 183, 9, 183, 4, 184, 9, 184, 4, 185, 9, 185, 4, 186, 9, 186, 4, 187, 9, 187, 4, 188, 9, 188, 4, 189, 9, 189, 4, 190, 9, 190, 4, 191, 9, 191, 4, 192, 9, 192, 4, 193, 9, 193, 4, 194, 9, 194, 4, 195, 9, 195, 4, 196, 9, 196, 4, 197, 9, 197, 4, 198, 9, 198, 4, 199, 9, 199, 4, 200, 9, 200, 4, 201, 9, 201, 4, 202, 9, 202, 4, 203, 9, 203, 4, 204, 9, 204, 4, 205, 9, 205, 4, 206, 9, 206, 4, 207, 9, 207, 4, 208, 9, 208, 4, 209, 9, 209, 4, 210, 9, 210, 4, 211, 9, 211, 4, 212, 9, 212, 4, 213, 9, 213, 4, 214, 9, 214, 4, 215, 9, 215, 4, 216, 9, 216, 4, 217, 9, 217, 4, 218, 9, 218, 4, 219, 9, 219, 4, 220, 9, 220, 4, 221, 9, 221, 4, 222, 9, 222, 4, 223, 9, 223, 4, 224, 9, 224, 4, 225, 9, 225, 4, 226, 9, 226, 4, 227, 9, 227, 4, 228, 9, 228, 4, 229, 9, 229, 4, 230, 9, 230, 4, 231, 9, 231, 4, 232, 9, 232, 4, 233, 9, 233, 4, 234, 9, 234, 4, 235, 9, 235, 4, 236, 9, 236, 4, 237, 9, 237, 4, 238, 9, 238, 4, 239, 9, 239, 4, 240, 9, 240, 4, 241, 9, 241, 4, 242, 9, 242, 4, 243, 9, 243, 4, 244, 9, 244, 4, 245, 9, 245, 4, 246, 9, 246, 4, 247, 9, 247, 4, 248, 9, 248, 4, 249, 9, 249, 4, 250, 9, 250, 4, 251, 9, 251, 4, 252, 9, 252, 4, 253, 9, 253, 4, 254, 9, 254, 4, 255, 9, 255, 4, 256, 9, 256, 4, 257, 9, 257, 4, 258, 9, 258, 4, 259, 9, 259, 4, 260, 9, 260, 4, 261, 9, 261, 4, 262, 9, 262, 4, 263, 9, 263, 4, 264, 9, 264, 4, 265, 9, 265, 4, 266, 9, 266, 4, 267, 9, 267, 4, 268, 9, 268, 4, 269, 9, 269, 4, 270, 9, 270, 4, 271, 9, 271, 4, 272, 9, 272, 4, 273, 9, 273, 4, 274, 9, 274, 4, 275, 9, 275, 4, 276, 9, 276, 4, 277, 9, 277, 4, 278, 9, 278, 4, 279, 9, 279, 4, 280, 9, 280, 4, 281, 9, 281, 4, 282, 9, 282, 4, 283, 9, 283, 4, 284, 9, 284, 4, 285, 9, 285, 4, 286, 9, 286, 4, 287, 9, 287, 4, 288, 9, 288, 4, 289, 9, 289, 4, 290, 9, 290, 4, 291, 9, 291, 4, 292, 9, 292, 4, 293, 9, 293, 4, 294, 9, 294, 4, 295, 9, 295, 4, 296, 9, 296, 4, 297, 9, 297, 4, 298, 9, 298, 4, 299, 9, 299, 4, 300, 9, 300, 4, 301, 9, 301, 4, 302, 9, 302, 4, 303, 9, 303, 4, 304, 9, 304, 4, 305, 9, 305, 4, 306, 9, 306, 4, 307, 9, 307, 4, 308, 9, 308, 4, 309, 9, 309, 4, 310, 9, 310, 4, 311, 9, 311, 4, 312, 9, 312, 4, 313, 9, 313, 4, 314, 9, 314, 4, 315, 9, 315, 4, 316, 9, 316, 4, 317, 9, 317, 4, 318, 9, 318, 4, 319, 9, 319, 4, 320, 9, 320, 4, 321, 9, 321, 4, 322, 9, 322, 4, 323, 9, 323, 4, 324, 9, 324, 4, 325, 9, 325, 4, 326, 9, 326, 4, 327, 9, 327, 4, 328, 9, 328, 4, 329, 9, 329, 4, 330, 9, 330, 4, 331, 9, 331, 4, 332, 9, 332, 4, 333, 9, 333, 4, 334, 9, 334, 4, 335, 9, 335, 4, 336, 9, 336, 4, 337, 9, 337, 4, 338, 9, 338, 4, 339, 9, 339, 4, 340, 9, 340, 4, 341, 9, 341, 4, 342, 9, 342, 4, 343, 9, 343, 4, 344, 9, 344, 4, 345, 9, 345, 4, 346, 9, 346, 4, 347, 9, 347, 4, 348, 9, 348, 4, 349, 9, 349, 4, 350, 9, 350, 4, 351, 9, 351, 4, 352, 9, 352, 4, 353, 9, 353, 4, 354, 9, 354, 4, 355, 9, 355, 4, 356, 9, 356, 4, 357, 9, 357, 4, 358, 9, 358, 4, 359, 9, 359, 4, 360, 9, 360, 4, 361, 9, 361, 4, 362, 9, 362, 4, 363, 9, 363, 4, 364, 9, 364, 4, 365, 9, 365, 4, 366, 9, 366, 4, 367, 9, 367, 4, 368, 9, 368, 4, 369, 9, 369, 4, 370, 9, 370, 4, 371, 9, 371, 4, 372, 9, 372, 4, 373, 9, 373, 4, 374, 9, 374, 4, 375, 9, 375, 4, 376, 9, 376, 4, 377, 9, 377, 4, 378, 9, 378, 4, 379, 9, 379, 4, 380, 9, 380, 4, 381, 9, 381, 4, 382, 9, 382, 4, 383, 9, 383, 4, 384, 9, 384, 4, 385, 9, 385, 4, 386, 9, 386, 4, 387, 9, 387, 4, 388, 9, 388, 4, 389, 9, 389, 4, 390, 9, 390, 4, 391, 9, 391, 4, 392, 9, 392, 4, 393, 9, 393, 4, 394, 9, 394, 4, 395, 9, 395, 4, 396, 9, 396, 4, 397, 9, 397, 4, 398, 9, 398, 4, 399, 9, 399, 4, 400, 9, 400, 4, 401, 9, 401, 4, 402, 9, 402, 4, 403, 9, 403, 4, 404, 9, 404, 4, 405, 9, 405, 4, 406, 9, 406, 4, 407, 9, 407, 4, 408, 9, 408, 4, 409, 9, 409, 4, 410, 9, 410, 4, 411, 9, 411, 4, 412, 9, 412, 4, 413, 9, 413, 4, 414, 9, 414, 4, 415, 9, 415, 4, 416, 9, 416, 4, 417, 9, 417, 4, 418, 9, 418, 4, 419, 9, 419, 4, 420, 9, 420, 4, 421, 9, 421, 4, 422, 9, 422, 4, 423, 9, 423, 4, 424, 9, 424, 4, 425, 9, 425, 4, 426, 9, 426, 4, 427, 9, 427, 4, 428, 9, 428, 4, 429, 9, 429, 4, 430, 9, 430, 4, 431, 9, 431, 4, 432, 9, 432, 4, 433, 9, 433, 4, 434, 9, 434, 4, 435, 9, 435, 4, 436, 9, 436, 4, 437, 9, 437, 4, 438, 9, 438, 4, 439, 9, 439, 4, 440, 9, 440, 4, 441, 9, 441, 4, 442, 9, 442, 4, 443, 9, 443, 4, 444, 9, 444, 4, 445, 9, 445, 4, 446, 9, 446, 4, 447, 9, 447, 4, 448, 9, 448, 4, 449, 9, 449, 4, 450, 9, 450, 4, 451, 9, 451, 4, 452, 9, 452, 4, 453, 9, 453, 4, 454, 9, 454, 4, 455, 9, 455, 4, 456, 9, 456, 4, 457, 9, 457, 4, 458, 9, 458, 4, 459, 9, 459, 4, 460, 9, 460, 4, 461, 9, 461, 4, 462, 9, 462, 4, 463, 9, 463, 4, 464, 9, 464, 4, 465, 9, 465, 4, 466, 9, 466, 4, 467, 9, 467, 4, 468, 9, 468, 4, 469, 9, 469, 4, 470, 9, 470, 4, 471, 9, 471, 4, 472, 9, 472, 4, 473, 9, 473, 4, 474, 9, 474, 4, 475, 9, 475, 4, 476, 9, 476, 4, 477, 9, 477, 4, 478, 9, 478, 4, 479, 9, 479, 4, 480, 9, 480, 4, 481, 9, 481, 4, 482, 9, 482, 4, 483, 9, 483, 4, 484, 9, 484, 4, 485, 9, 485, 4, 486, 9, 486, 4, 487, 9, 487, 4, 488, 9, 488, 4, 489, 9, 489, 4, 490, 9, 490, 4, 491, 9, 491, 4, 492, 9, 492, 4, 493, 9, 493, 4, 494, 9, 494, 4, 495, 9, 495, 4, 496, 9, 496, 4, 497, 9, 497, 4, 498, 9, 498, 4, 499, 9, 499, 4, 500, 9, 500, 4, 501, 9, 501, 4, 502, 9, 502, 4, 503, 9, 503, 4, 504, 9, 504, 4, 505, 9, 505, 4, 506, 9, 506, 4, 507, 9, 507, 4, 508, 9, 508, 4, 509, 9, 509, 4, 510, 9, 510, 4, 511, 9, 511, 4, 512, 9, 512, 4, 513, 9, 513, 4, 514, 9, 514, 4, 515, 9, 515, 4, 516, 9, 516, 4, 517, 9, 517, 4, 518, 9, 518, 4, 519, 9, 519, 4, 520, 9, 520, 4, 521, 9, 521, 4, 522, 9, 522, 4, 523, 9, 523, 4, 524, 9, 524, 4, 525, 9, 525, 4, 526, 9, 526, 4, 527, 9, 527, 4, 528, 9, 528, 4, 529, 9, 529, 4, 530, 9, 530, 4, 531, 9, 531, 4, 532, 9, 532, 4, 533, 9, 533, 4, 534, 9, 534, 4, 535, 9, 535, 4, 536, 9, 536, 4, 537, 9, 537, 4, 538, 9, 538, 4, 539, 9, 539, 4, 540, 9, 540, 4, 541, 9, 541, 4, 542, 9, 542, 4, 543, 9, 543, 4, 544, 9, 544, 4, 545, 9, 545, 4, 546, 9, 546, 4, 547, 9, 547, 4, 548, 9, 548, 4, 549, 9, 549, 4, 550, 9, 550, 4, 551, 9, 551, 4, 552, 9, 552, 4, 553, 9, 553, 4, 554, 9, 554, 4, 555, 9, 555, 4, 556, 9, 556, 4, 557, 9, 557, 4, 558, 9, 558, 4, 559, 9, 559, 4, 560, 9, 560, 4, 561, 9, 561, 4, 562, 9, 562, 4, 563, 9, 563, 4, 564, 9, 564, 4, 565, 9, 565, 4, 566, 9, 566, 4, 567, 9, 567, 4, 568, 9, 568, 4, 569, 9, 569, 4, 570, 9, 570, 4, 571, 9, 571, 4, 572, 9, 572, 4, 573, 9, 573, 4, 574, 9, 574, 4, 575, 9, 575, 4, 576, 9, 576, 4, 577, 9, 577, 4, 578, 9, 578, 4, 579, 9, 579, 4, 580, 9, 580, 4, 581, 9, 581, 4, 582, 9, 582, 4, 583, 9, 583, 4, 584, 9, 584, 4, 585, 9, 585, 4, 586, 9, 586, 4, 587, 9, 587, 4, 588, 9, 588, 4, 589, 9, 589, 4, 590, 9, 590, 4, 591, 9, 591, 4, 592, 9, 592, 4, 593, 9, 593, 4, 594, 9, 594, 4, 595, 9, 595, 4, 596, 9, 596, 4, 597, 9, 597, 4, 598, 9, 598, 4, 599, 9, 599, 4, 600, 9, 600, 4, 601, 9, 601, 4, 602, 9, 602, 4, 603, 9, 603, 4, 604, 9, 604, 4, 605, 9, 605, 4, 606, 9, 606, 4, 607, 9, 607, 4, 608, 9, 608, 4, 609, 9, 609, 4, 610, 9, 610, 4, 611, 9, 611, 4, 612, 9, 612, 4, 613, 9, 613, 4, 614, 9, 614, 4, 615, 9, 615, 4, 616, 9, 616, 4, 617, 9, 617, 4, 618, 9, 618, 4, 619, 9, 619, 4, 620, 9, 620, 4, 621, 9, 621, 4, 622, 9, 622, 4, 623, 9, 623, 4, 624, 9, 624, 4, 625, 9, 625, 4, 626, 9, 626, 4, 627, 9, 627, 4, 628, 9, 628, 4, 629, 9, 629, 4, 630, 9, 630, 4, 631, 9, 631, 4, 632, 9, 632, 4, 633, 9, 633, 4, 634, 9, 634, 4, 635, 9, 635, 4, 636, 9, 636, 4, 637, 9, 637, 4, 638, 9, 638, 4, 639, 9, 639, 4, 640, 9, 640, 4, 641, 9, 641, 4, 642, 9, 642, 4, 643, 9, 643, 4, 644, 9, 644, 4, 645, 9, 645, 4, 646, 9, 646, 4, 647, 9, 647, 4, 648, 9, 648, 4, 649, 9, 649, 4, 650, 9, 650, 4, 651, 9, 651, 4, 652, 9, 652, 4, 653, 9, 653, 4, 654, 9, 654, 4, 655, 9, 655, 4, 656, 9, 656, 4, 657, 9, 657, 4, 658, 9, 658, 4, 659, 9, 659, 4, 660, 9, 660, 4, 661, 9, 661, 4, 662, 9, 662, 4, 663, 9, 663, 4, 664, 9, 664, 4, 665, 9, 665, 4, 666, 9, 666, 4, 667, 9, 667, 4, 668, 9, 668, 4, 669, 9, 669, 4, 670, 9, 670, 4, 671, 9, 671, 4, 672, 9, 672, 4, 673, 9, 673, 4, 674, 9, 674, 4, 675, 9, 675, 4, 676, 9, 676, 4, 677, 9, 677, 4, 678, 9, 678, 4, 679, 9, 679, 4, 680, 9, 680, 4, 681, 9, 681, 4, 682, 9, 682, 4, 683, 9, 683, 4, 684, 9, 684, 4, 685, 9, 685, 4, 686, 9, 686, 4, 687, 9, 687, 4, 688, 9, 688, 4, 689, 9, 689, 4, 690, 9, 690, 4, 691, 9, 691, 4, 692, 9, 692, 4, 693, 9, 693, 4, 694, 9, 694, 4, 695, 9, 695, 4, 696, 9, 696, 4, 697, 9, 697, 4, 698, 9, 698, 4, 699, 9, 699, 4, 700, 9, 700, 4, 701, 9, 701, 4, 702, 9, 702, 4, 703, 9, 703, 4, 704, 9, 704, 4, 705, 9, 705, 4, 706, 9, 706, 4, 707, 9, 707, 4, 708, 9, 708, 4, 709, 9, 709, 4, 710, 9, 710, 4, 711, 9, 711, 4, 712, 9, 712, 4, 713, 9, 713, 4, 714, 9, 714, 4, 715, 9, 715, 4, 716, 9, 716, 4, 717, 9, 717, 4, 718, 9, 718, 4, 719, 9, 719, 4, 720, 9, 720, 4, 721, 9, 721, 4, 722, 9, 722, 4, 723, 9, 723, 4, 724, 9, 724, 4, 725, 9, 725, 4, 726, 9, 726, 4, 727, 9, 727, 4, 728, 9, 728, 4, 729, 9, 729, 4, 730, 9, 730, 4, 731, 9, 731, 4, 732, 9, 732, 4, 733, 9, 733, 4, 734, 9, 734, 4, 735, 9, 735, 4, 736, 9, 736, 4, 737, 9, 737, 4, 738, 9, 738, 4, 739, 9, 739, 4, 740, 9, 740, 4, 741, 9, 741, 4, 742, 9, 742, 4, 743, 9, 743, 4, 744, 9, 744, 4, 745, 9, 745, 4, 746, 9, 746, 4, 747, 9, 747, 4, 748, 9, 748, 4, 749, 9, 749, 4, 750, 9, 750, 4, 751, 9, 751, 4, 752, 9, 752, 3, 2, 3, 2, 3, 2, 3, 3, 3, 3, 5, 3, 1510, 10, 3, 3, 3, 5, 3, 1513, 10, 3, 7, 3, 1515, 10, 3, 12, 3, 14, 3, 1518, 11, 3, 3, 3, 3, 3, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 3, 4, 5, 4, 1578, 10, 4, 3, 5, 3, 5, 3, 5, 3, 5, 3, 5, 3, 6, 3, 6, 3, 6, 3, 6, 3, 6, 5, 6, 1590, 10, 6, 3, 6, 7, 6, 1593, 10, 6, 12, 6, 14, 6, 1596, 11, 6, 3, 6, 3, 6, 5, 6, 1600, 10, 6, 3, 6, 3, 6, 3, 7, 3, 7, 3, 7, 5, 7, 1607, 10, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 7, 7, 1615, 10, 7, 12, 7, 14, 7, 1618, 11, 7, 3, 7, 3, 7, 5, 7, 1622, 10, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 3, 7, 7, 7, 1630, 10, 7, 12, 7, 14, 7, 1633, 11, 7, 3, 7, 5, 7, 1636, 10, 7, 3, 7, 3, 7, 5, 7, 1640, 10, 7, 3, 7, 5, 7, 1643, 10, 7, 3, 7, 3, 7, 5, 7, 1647, 10, 7, 3, 7, 3, 7, 3, 7, 5, 7, 1652, 10, 7, 3, 7, 3, 7, 3, 8, 3, 8, 5, 8, 1658, 10, 8, 3, 9, 3, 9, 3, 9, 3, 9, 3, 9, 3, 9, 3, 9, 5, 9, 1667, 10, 9, 3, 9, 5, 9, 1670, 10, 9, 3, 9, 3, 9, 3, 10, 3, 10, 5, 10, 1676, 10, 10, 3, 11, 3, 11, 3, 11, 3, 11, 3, 11, 7, 11, 1683, 10, 11, 12, 11, 14, 11, 1686, 11, 11, 3, 11, 3, 11, 3, 12, 3, 12, 3, 12, 3, 12, 3, 12, 3, 13, 3, 13, 3, 13, 5, 13, 1698, 10, 13, 3, 13, 3, 13, 3, 13, 5, 13, 1703, 10, 13, 3, 13, 3, 13, 3, 13, 3, 14, 3, 14, 3, 14, 3, 14, 3, 14, 5, 14, 1713, 10, 14, 3, 14, 5, 14, 1716, 10, 14, 3, 14, 7, 14, 1719, 10, 14, 12, 14, 14, 14, 1722, 11, 14, 3, 14, 3, 14, 5, 14, 1726, 10, 14, 3, 14, 3, 14, 3, 15, 3, 15, 3, 15, 5, 15, 1733, 10, 15, 3, 15, 3, 15, 3, 15, 3, 15, 5, 15, 1739, 10, 15, 3, 15, 3, 15, 5, 15, 1743, 10, 15, 3, 15, 3, 15, 7, 15, 1747, 10, 15, 12, 15, 14, 15, 1750, 11, 15, 3, 15, 3, 15, 5, 15, 1754, 10, 15, 3, 15, 3, 15, 3, 16, 3, 16, 3, 16, 5, 16, 1761, 10, 16, 3, 16, 3, 16, 3, 16, 3, 16, 3, 16, 5, 16, 1768, 10, 16, 3, 16, 3, 16, 3, 16, 7, 16, 1773, 10, 16, 12, 16, 14, 16, 1776, 11, 16, 3, 16, 3, 16, 5, 16, 1780, 10, 16, 3, 16, 3, 16, 5, 16, 1784, 10, 16, 3, 16, 3, 16, 3, 17, 3, 17, 3, 17, 3, 17, 3, 17, 3, 17, 3, 17, 3, 17, 5, 17, 1796, 10, 17, 3, 18, 3, 18, 3, 18, 3, 18, 3, 18, 3, 18, 7, 18, 1804, 10, 18, 12, 18, 14, 18, 1807, 11, 18, 3, 18, 3, 18, 5, 18, 1811, 10, 18, 3, 18, 3, 18, 3, 19, 3, 19, 3, 19, 3, 19, 3, 19, 3, 19, 7, 19, 1821, 10, 19, 12, 19, 14, 19, 1824, 11, 19, 3, 19, 3, 19, 5, 19, 1828, 10, 19, 3, 19, 3, 19, 3, 19, 5, 19, 1833, 10, 19, 3, 19, 5, 19, 1836, 10, 19, 3, 19, 5, 19, 1839, 10, 19, 3, 19, 3, 19, 3, 20, 3, 20, 3, 20, 3, 20, 3, 20, 3, 20, 3, 20, 3, 20, 3, 20, 5, 20, 1852, 10, 20, 3, 21, 3, 21, 3, 21, 3, 21, 3, 21, 3, 22, 3, 22, 3, 22, 3, 22, 3, 22, 5, 22, 1864, 10, 22, 3, 22, 7, 22, 1867, 10, 22, 12, 22, 14, 22, 1870, 11, 22, 3, 22, 3, 22, 5, 22, 1874, 10, 22, 3, 22, 3, 22, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 7, 23, 1884, 10, 23, 12, 23, 14, 23, 1887, 11, 23, 3, 23, 3, 23, 5, 23, 1891, 10, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 3, 23, 7, 23, 1899, 10, 23, 12, 23, 14, 23, 1902, 11, 23, 3, 23, 5, 23, 1905, 10, 23, 3, 23, 5, 23, 1908, 10, 23, 3, 23, 3, 23, 5, 23, 1912, 10, 23, 3, 23, 5, 23, 1915, 10, 23, 3, 23, 3, 23, 5, 23, 1919, 10, 23, 3, 23, 3, 23, 3, 23, 5, 23, 1924, 10, 23, 3, 23, 3, 23, 3, 24, 3, 24, 3, 24, 3, 24, 3, 24, 3, 24, 7, 24, 1934, 10, 24, 12, 24, 14, 24, 1937, 11, 24, 3, 24, 3, 24, 5, 24, 1941, 10, 24, 3, 24, 3, 24, 5, 24, 1945, 10, 24, 3, 24, 5, 24, 1948, 10, 24, 3, 24, 3, 24, 3, 24, 5, 24, 1953, 10, 24, 3, 24, 3, 24, 3, 25, 3, 25, 3, 25, 5, 25, 1960, 10, 25, 3, 25, 3, 25, 3, 25, 3, 25, 3, 25, 3, 25, 7, 25, 1968, 10, 25, 12, 25, 14, 25, 1971, 11, 25, 3, 25, 3, 25, 5, 25, 1975, 10, 25, 3, 25, 5, 25, 1978, 10, 25, 3, 25, 3, 25, 5, 25, 1982, 10, 25, 3, 25, 5, 25, 1985, 10, 25, 3, 25, 3, 25, 3, 25, 5, 25, 1990, 10, 25, 3, 25, 3, 25, 3, 26, 3, 26, 3, 26, 3, 26, 3, 26, 3, 27, 3, 27, 3, 27, 3, 27, 3, 27, 3, 27, 3, 27, 3, 27, 3, 27, 5, 27, 2008, 10, 27, 3, 27, 7, 27, 2011, 10, 27, 12, 27, 14, 27, 2014, 11, 27, 3, 27, 3, 27, 5, 27, 2018, 10, 27, 5, 27, 2020, 10, 27, 3, 27, 3, 27, 3, 28, 3, 28, 3, 28, 5, 28, 2027, 10, 28, 3, 28, 3, 28, 3, 28, 3, 28, 3, 28, 5, 28, 2034, 10, 28, 3, 28, 5, 28, 2037, 10, 28, 3, 28, 5, 28, 2040, 10, 28, 3, 28, 5, 28, 2043, 10, 28, 3, 28, 3, 28, 3, 28, 3, 29, 3, 29, 3, 29, 3, 29, 7, 29, 2052, 10, 29, 12, 29, 14, 29, 2055, 11, 29, 3, 30, 3, 30, 3, 30, 3, 30, 3, 30, 3, 31, 3, 31, 3, 31, 3, 31, 5, 31, 2066, 10, 31, 3, 31, 3, 31, 5, 31, 2070, 10, 31, 3, 31, 5, 31, 2073, 10, 31, 3, 32, 3, 32, 3, 32, 3, 32, 3, 33, 3, 33, 3, 33, 5, 33, 2082, 10, 33, 3, 34, 3, 34, 3, 34, 3, 34, 7, 34, 2088, 10, 34, 12, 34, 14, 34, 2091, 11, 34, 3, 34, 3, 34, 3, 34, 3, 34, 3, 34, 5, 34, 2098, 10, 34, 3, 34, 5, 34, 2101, 10, 34, 3, 35, 3, 35, 3, 35, 3, 35, 3, 35, 5, 35, 2108, 10, 35, 3, 36, 3, 36, 5, 36, 2112, 10, 36, 3, 37, 3, 37, 3, 37, 5, 37, 2117, 10, 37, 3, 37, 6, 37, 2120, 10, 37, 13, 37, 14, 37, 2121, 3, 37, 3, 37, 3, 37, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 3, 38, 5, 38, 2163, 10, 38, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 3, 39, 5, 39, 2191, 10, 39, 3, 40, 3, 40, 3, 40, 7, 40, 2196, 10, 40, 12, 40, 14, 40, 2199, 11, 40, 3, 40, 3, 40, 5, 40, 2203, 10, 40, 3, 40, 3, 40, 3, 41, 3, 41, 3, 41, 5, 41, 2210, 10, 41, 3, 42, 3, 42, 3, 42, 3, 42, 3, 42, 3, 43, 3, 43, 6, 43, 2219, 10, 43, 13, 43, 14, 43, 2220, 3, 44, 3, 44, 3, 44, 3, 45, 3, 45, 3, 45, 5, 45, 2229, 10, 45, 3, 45, 3, 45, 5, 45, 2233, 10, 45, 3, 45, 3, 45, 3, 46, 3, 46, 3, 46, 3, 46, 3, 46, 3, 46, 3, 46, 3, 46, 3, 46, 5, 46, 2246, 10, 46, 3, 46, 5, 46, 2249, 10, 46, 3, 46, 3, 46, 3, 47, 3, 47, 5, 47, 2255, 10, 47, 3, 47, 5, 47, 2258, 10, 47, 3, 47, 7, 47, 2261, 10, 47, 12, 47, 14, 47, 2264, 11, 47, 3, 47, 3, 47, 5, 47, 2268, 10, 47, 3, 48, 3, 48, 5, 48, 2272, 10, 48, 3, 48, 3, 48, 3, 48, 3, 48, 3, 48, 3, 48, 7, 48, 2280, 10, 48, 12, 48, 14, 48, 2283, 11, 48, 3, 48, 3, 48, 3, 49, 3, 49, 3, 49, 7, 49, 2290, 10, 49, 12, 49, 14, 49, 2293, 11, 49, 3, 50, 3, 50, 3, 50, 5, 50, 2298, 10, 50, 3, 51, 3, 51, 3, 51, 3, 51, 3, 51, 3, 51, 3, 51, 7, 51, 2307, 10, 51, 12, 51, 14, 51, 2310, 11, 51, 3, 51, 3, 51, 5, 51, 2314, 10, 51, 3, 52, 3, 52, 5, 52, 2318, 10, 52, 3, 53, 3, 53, 3, 53, 3, 53, 3, 53, 3, 53, 5, 53, 2326, 10, 53, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 3, 54, 5, 54, 2334, 10, 54, 3, 54, 3, 54, 3, 54, 5, 54, 2339, 10, 54, 3, 54, 5, 54, 2342, 10, 54, 5, 54, 2344, 10, 54, 3, 55, 5, 55, 2347, 10, 55, 3, 55, 3, 55, 3, 55, 3, 55, 3, 56, 3, 56, 3, 56, 5, 56, 2356, 10, 56, 3, 56, 3, 56, 3, 56, 5, 56, 2361, 10, 56, 3, 56, 3, 56, 3, 57, 3, 57, 3, 57, 5, 57, 2368, 10, 57, 3, 57, 5, 57, 2371, 10, 57, 3, 58, 5, 58, 2374, 10, 58, 3, 58, 3, 58, 5, 58, 2378, 10, 58, 3, 58, 5, 58, 2381, 10, 58, 3, 58, 3, 58, 3, 58, 3, 58, 7, 58, 2387, 10, 58, 12, 58, 14, 58, 2390, 11, 58, 3, 58, 3, 58, 5, 58, 2394, 10, 58, 3, 58, 7, 58, 2397, 10, 58, 12, 58, 14, 58, 2400, 11, 58, 3, 59, 3, 59, 3, 59, 3, 59, 5, 59, 2406, 10, 59, 3, 60, 3, 60, 3, 60, 3, 61, 3, 61, 3, 61, 3, 61, 3, 61, 5, 61, 2416, 10, 61, 3, 62, 3, 62, 3, 62, 3, 62, 3, 62, 3, 62, 3, 62, 3, 62, 3, 63, 3, 63, 3, 63, 3, 63, 6, 63, 2430, 10, 63, 13, 63, 14, 63, 2431, 3, 63, 3, 63, 3, 64, 3, 64, 3, 64, 5, 64, 2439, 10, 64, 3, 65, 3, 65, 3, 65, 3, 65, 3, 66, 3, 66, 3, 66, 3, 66, 5, 66, 2449, 10, 66, 3, 67, 3, 67, 3, 67, 3, 67, 3, 67, 3, 67, 7, 67, 2457, 10, 67, 12, 67, 14, 67, 2460, 11, 67, 3, 67, 3, 67, 3, 67, 3, 67, 5, 67, 2466, 10, 67, 3, 67, 5, 67, 2469, 10, 67, 3, 67, 3, 67, 3, 67, 5, 67, 2474, 10, 67, 3, 68, 3, 68, 3, 68, 3, 68, 3, 68, 3, 68, 7, 68, 2482, 10, 68, 12, 68, 14, 68, 2485, 11, 68, 3, 68, 3, 68, 5, 68, 2489, 10, 68, 3, 68, 3, 68, 3, 68, 3, 68, 3, 68, 5, 68, 2496, 10, 68, 3, 68, 5, 68, 2499, 10, 68, 3, 68, 3, 68, 3, 68, 5, 68, 2504, 10, 68, 3, 69, 5, 69, 2507, 10, 69, 3, 69, 5, 69, 2510, 10, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 7, 69, 2525, 10, 69, 12, 69, 14, 69, 2528, 11, 69, 3, 69, 3, 69, 5, 69, 2532, 10, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 3, 69, 5, 69, 2541, 10, 69, 3, 69, 5, 69, 2544, 10, 69, 3, 69, 3, 69, 3, 69, 5, 69, 2549, 10, 69, 3, 70, 5, 70, 2552, 10, 70, 3, 70, 3, 70, 3, 71, 3, 71, 3, 71, 5, 71, 2559, 10, 71, 3, 71, 5, 71, 2562, 10, 71, 3, 72, 3, 72, 3, 72, 3, 72, 3, 73, 5, 73, 2569, 10, 73, 3, 73, 6, 73, 2572, 10, 73, 13, 73, 14, 73, 2573, 3, 73, 3, 73, 5, 73, 2578, 10, 73, 3, 74, 3, 74, 3, 74, 5, 74, 2583, 10, 74, 3, 75, 3, 75, 3, 75, 5, 75, 2588, 10, 75, 3, 76, 3, 76, 3, 76, 3, 76, 3, 77, 3, 77, 3, 77, 3, 77, 3, 77, 3, 77, 7, 77, 2600, 10, 77, 12, 77, 14, 77, 2603, 11, 77, 3, 77, 3, 77, 5, 77, 2607, 10, 77, 3, 77, 3, 77, 3, 77, 3, 77, 3, 77, 5, 77, 2614, 10, 77, 3, 77, 5, 77, 2617, 10, 77, 3, 77, 3, 77, 5, 77, 2621, 10, 77, 3, 77, 5, 77, 2624, 10, 77, 3, 77, 5, 77, 2627, 10, 77, 3, 77, 5, 77, 2630, 10, 77, 3, 78, 3, 78, 3, 78, 3, 78, 3, 78, 3, 78, 7, 78, 2638, 10, 78, 12, 78, 14, 78, 2641, 11, 78, 3, 78, 3, 78, 3, 78, 5, 78, 2646, 10, 78, 3, 79, 3, 79, 3, 79, 3, 79, 3, 79, 3, 79, 7, 79, 2654, 10, 79, 12, 79, 14, 79, 2657, 11, 79, 3, 79, 3, 79, 5, 79, 2661, 10, 79, 3, 79, 3, 79, 3, 79, 3, 79, 3, 79, 5, 79, 2668, 10, 79, 3, 79, 3, 79, 3, 79, 3, 79, 5, 79, 2674, 10, 79, 3, 79, 3, 79, 5, 79, 2678, 10, 79, 3, 80, 5, 80, 2681, 10, 80, 3, 80, 5, 80, 2684, 10, 80, 3, 80, 3, 80, 3, 80, 3, 80, 3, 80, 3, 80, 3, 80, 3, 80, 3, 80, 3, 80, 3, 80, 3, 80, 3, 80, 7, 80, 2699, 10, 80, 12, 80, 14, 80, 2702, 11, 80, 3, 80, 3, 80, 5, 80, 2706, 10, 80, 3, 80, 3, 80, 3, 80, 3, 80, 3, 80, 3, 80, 5, 80, 2714, 10, 80, 3, 81, 3, 81, 3, 81, 3, 81, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 3, 82, 7, 82, 2726, 10, 82, 12, 82, 14, 82, 2729, 11, 82, 3, 82, 3, 82, 3, 83, 3, 83, 5, 83, 2735, 10, 83, 3, 84, 3, 84, 3, 84, 3, 85, 3, 85, 3, 85, 3, 85, 3, 85, 3, 86, 3, 86, 3, 86, 3, 86, 6, 86, 2749, 10, 86, 13, 86, 14, 86, 2750, 3, 86, 3, 86, 3, 87, 3, 87, 3, 87, 3, 87, 3, 87, 3, 87, 3, 87, 3, 87, 3, 87, 3, 87, 3, 87, 3, 87, 3, 87, 3, 87, 3, 87, 3, 87, 3, 87, 3, 87, 5, 87, 2773, 10, 87, 3, 87, 3, 87, 3, 87, 3, 87, 3, 87, 5, 87, 2780, 10, 87, 5, 87, 2782, 10, 87, 3, 87, 3, 87, 5, 87, 2786, 10, 87, 3, 88, 3, 88, 3, 88, 3, 88, 3, 89, 3, 89, 3, 89, 3, 89, 3, 89, 7, 89, 2797, 10, 89, 12, 89, 14, 89, 2800, 11, 89, 3, 89, 3, 89, 3, 90, 3, 90, 3, 90, 3, 90, 3, 90, 3, 90, 3, 90, 3, 90, 3, 90, 3, 90, 3, 90, 3, 90, 3, 90, 3, 90, 3, 90, 3, 90, 5, 90, 2820, 10, 90, 3, 91, 3, 91, 3, 91, 3, 91, 3, 92, 3, 92, 5, 92, 2828, 10, 92, 3, 92, 3, 92, 3, 92, 3, 92, 3, 92, 3, 92, 5, 92, 2836, 10, 92, 3, 92, 5, 92, 2839, 10, 92, 3, 92, 3, 92, 3, 93, 3, 93, 3, 93, 5, 93, 2846, 10, 93, 3, 94, 3, 94, 3, 94, 5, 94, 2851, 10, 94, 3, 94, 3, 94, 3, 95, 3, 95, 5, 95, 2857, 10, 95, 3, 95, 3, 95, 3, 95, 5, 95, 2862, 10, 95, 3, 95, 3, 95, 3, 95, 5, 95, 2867, 10, 95, 7, 95, 2869, 10, 95, 12, 95, 14, 95, 2872, 11, 95, 3, 95, 3, 95, 5, 95, 2876, 10, 95, 3, 96, 3, 96, 3, 96, 3, 96, 5, 96, 2882, 10, 96, 3, 96, 3, 96, 5, 96, 2886, 10, 96, 3, 96, 3, 96, 3, 96, 5, 96, 2891, 10, 96, 3, 96, 3, 96, 5, 96, 2895, 10, 96, 7, 96, 2897, 10, 96, 12, 96, 14, 96, 2900, 11, 96, 3, 96, 3, 96, 3, 96, 3, 96, 3, 96, 3, 96, 3, 96, 3, 96, 7, 96, 2910, 10, 96, 12, 96, 14, 96, 2913, 11, 96, 3, 96, 3, 96, 5, 96, 2917, 10, 96, 3, 96, 5, 96, 2920, 10, 96, 3, 97, 3, 97, 5, 97, 2924, 10, 97, 3, 98, 3, 98, 3, 98, 6, 98, 2929, 10, 98, 13, 98, 14, 98, 2930, 3, 98, 3, 98, 3, 98, 3, 98, 5, 98, 2937, 10, 98, 5, 98, 2939, 10, 98, 3, 99, 3, 99, 5, 99, 2943, 10, 99, 3, 99, 5, 99, 2946, 10, 99, 3, 99, 3, 99, 3, 99, 3, 99, 3, 99, 5, 99, 2953, 10, 99, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 5, 100, 2964, 10, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 3, 100, 5, 100, 2974, 10, 100, 7, 100, 2976, 10, 100, 12, 100, 14, 100, 2979, 11, 100, 3, 100, 3, 100, 5, 100, 2983, 10, 100, 3, 101, 3, 101, 5, 101, 2987, 10, 101, 3, 101, 3, 101, 5, 101, 2991, 10, 101, 3, 101, 5, 101, 2994, 10, 101, 3, 102, 3, 102, 3, 102, 3, 102, 3, 102, 3, 102, 3, 102, 7, 102, 3003, 10, 102, 12, 102, 14, 102, 3006, 11, 102, 3, 102, 3, 102, 5, 102, 3010, 10, 102, 3, 103, 3, 103, 3, 103, 3, 103, 3, 103, 3, 103, 3, 103, 3, 103, 7, 103, 3020, 10, 103, 12, 103, 14, 103, 3023, 11, 103, 3, 103, 3, 103, 3, 103, 3, 103, 3, 103, 3, 103, 3, 103, 3, 103, 3, 103, 3, 103, 7, 103, 3035, 10, 103, 12, 103, 14, 103, 3038, 11, 103, 3, 103, 3, 103, 3, 103, 5, 103, 3043, 10, 103, 5, 103, 3045, 10, 103, 3, 104, 3, 104, 5, 104, 3049, 10, 104, 3, 104, 3, 104, 3, 104, 3, 104, 3, 104, 3, 104, 3, 104, 7, 104, 3058, 10, 104, 12, 104, 14, 104, 3061, 11, 104, 3, 104, 3, 104, 5, 104, 3065, 10, 104, 3, 105, 3, 105, 3, 105, 3, 105, 3, 105, 5, 105, 3072, 10, 105, 3, 106, 3, 106, 3, 106, 3, 106, 7, 106, 3078, 10, 106, 12, 106, 14, 106, 3081, 11, 106, 3, 106, 3, 106, 3, 107, 3, 107, 3, 107, 3, 107, 7, 107, 3089, 10, 107, 12, 107, 14, 107, 3092, 11, 107, 3, 107, 3, 107, 3, 108, 3, 108, 5, 108, 3098, 10, 108, 3, 108, 3, 108, 7, 108, 3102, 10, 108, 12, 108, 14, 108, 3105, 11, 108, 3, 108, 5, 108, 3108, 10, 108, 3, 109, 3, 109, 3, 109, 3, 109, 3, 109, 3, 109, 7, 109, 3116, 10, 109, 12, 109, 14, 109, 3119, 11, 109, 3, 109, 3, 109, 3, 109, 3, 109, 3, 109, 3, 109, 7, 109, 3127, 10, 109, 12, 109, 14, 109, 3130, 11, 109, 3, 109, 3, 109, 5, 109, 3134, 10, 109, 3, 110, 3, 110, 5, 110, 3138, 10, 110, 3, 110, 3, 110, 5, 110, 3142, 10, 110, 3, 110, 5, 110, 3145, 10, 110, 3, 110, 5, 110, 3148, 10, 110, 3, 111, 3, 111, 3, 111, 3, 111, 3, 111, 3, 111, 7, 111, 3156, 10, 111, 12, 111, 14, 111, 3159, 11, 111, 3, 111, 3, 111, 5, 111, 3163, 10, 111, 3, 111, 3, 111, 3, 111, 3, 111, 7, 111, 3169, 10, 111, 12, 111, 14, 111, 3172, 11, 111, 3, 111, 3, 111, 3, 112, 3, 112, 5, 112, 3178, 10, 112, 3, 112, 3, 112, 7, 112, 3182, 10, 112, 12, 112, 14, 112, 3185, 11, 112, 3, 112, 3, 112, 5, 112, 3189, 10, 112, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 7, 113, 3197, 10, 113, 12, 113, 14, 113, 3200, 11, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 3, 113, 7, 113, 3208, 10, 113, 12, 113, 14, 113, 3211, 11, 113, 3, 113, 3, 113, 5, 113, 3215, 10, 113, 3, 114, 3, 114, 5, 114, 3219, 10, 114, 3, 114, 3, 114, 5, 114, 3223, 10, 114, 3, 114, 5, 114, 3226, 10, 114, 3, 114, 5, 114, 3229, 10, 114, 3, 115, 3, 115, 3, 116, 3, 116, 3, 116, 5, 116, 3236, 10, 116, 3, 116, 3, 116, 3, 117, 3, 117, 3, 117, 3, 117, 3, 117, 5, 117, 3245, 10, 117, 3, 117, 3, 117, 3, 118, 3, 118, 3, 118, 3, 118, 3, 118, 3, 118, 6, 118, 3255, 10, 118, 13, 118, 14, 118, 3256, 3, 119, 3, 119, 3, 119, 3, 119, 3, 119, 3, 119, 3, 119, 3, 119, 3, 119, 3, 119, 3, 119, 3, 119, 3, 119, 3, 119, 3, 119, 3, 119, 3, 119, 3, 119, 3, 119, 3, 119, 3, 119, 5, 119, 3280, 10, 119, 3, 120, 3, 120, 3, 121, 3, 121, 3, 122, 3, 122, 3, 122, 3, 122, 3, 122, 3, 122, 3, 122, 5, 122, 3293, 10, 122, 3, 122, 3, 122, 3, 122, 3, 122, 3, 122, 3, 122, 3, 122, 3, 122, 3, 122, 3, 122, 3, 122, 3, 122, 7, 122, 3307, 10, 122, 12, 122, 14, 122, 3310, 11, 122, 3, 123, 3, 123, 3, 123, 3, 123, 3, 123, 3, 123, 3, 123, 3, 123, 5, 123, 3320, 10, 123, 3, 124, 3, 124, 3, 124, 3, 124, 3, 124, 3, 124, 5, 124, 3328, 10, 124, 3, 124, 3, 124, 3, 124, 3, 124, 5, 124, 3334, 10, 124, 3, 124, 5, 124, 3337, 10, 124, 3, 125, 3, 125, 3, 125, 5, 125, 3342, 10, 125, 3, 125, 3, 125, 5, 125, 3346, 10, 125, 3, 125, 5, 125, 3349, 10, 125, 3, 125, 5, 125, 3352, 10, 125, 3, 126, 3, 126, 3, 126, 5, 126, 3357, 10, 126, 3, 127, 3, 127, 3, 127, 3, 127, 6, 127, 3363, 10, 127, 13, 127, 14, 127, 3364, 3, 127, 3, 127, 3, 127, 3, 127, 3, 127, 3, 127, 3, 127, 3, 127, 3, 127, 3, 127, 5, 127, 3377, 10, 127, 3, 128, 3, 128, 3, 128, 3, 128, 3, 128, 5, 128, 3384, 10, 128, 3, 129, 3, 129, 3, 129, 3, 129, 3, 129, 5, 129, 3391, 10, 129, 3, 129, 3, 129, 3, 129, 3, 130, 3, 130, 3, 130, 3, 130, 3, 131, 3, 131, 3, 131, 3, 131, 3, 131, 3, 131, 3, 131, 3, 131, 7, 131, 3408, 10, 131, 12, 131, 14, 131, 3411, 11, 131, 3, 131, 3, 131, 3, 131, 3, 131, 3, 131, 3, 131, 3, 131, 3, 131, 5, 131, 3421, 10, 131, 3, 131, 5, 131, 3424, 10, 131, 3, 132, 3, 132, 3, 132, 3, 132, 6, 132, 3430, 10, 132, 13, 132, 14, 132, 3431, 3, 132, 3, 132, 3, 132, 3, 132, 3, 132, 5, 132, 3439, 10, 132, 3, 132, 5, 132, 3442, 10, 132, 5, 132, 3444, 10, 132, 3, 133, 3, 133, 3, 133, 3, 133, 3, 133, 3, 133, 5, 133, 3452, 10, 133, 3, 134, 3, 134, 3, 135, 3, 135, 3, 136, 3, 136, 3, 137, 3, 137, 3, 137, 3, 137, 3, 137, 3, 137, 3, 137, 3, 137, 3, 137, 3, 137, 3, 137, 3, 137, 6, 137, 3472, 10, 137, 13, 137, 14, 137, 3473, 3, 137, 3, 137, 3, 138, 3, 138, 3, 138, 3, 138, 3, 138, 3, 138, 3, 138, 3, 138, 3, 138, 3, 138, 3, 138, 3, 138, 3, 138, 3, 138, 6, 138, 3492, 10, 138, 13, 138, 14, 138, 3493, 3, 138, 3, 138, 3, 138, 3, 138, 3, 138, 7, 138, 3501, 10, 138, 12, 138, 14, 138, 3504, 11, 138, 3, 138, 3, 138, 3, 138, 5, 138, 3509, 10, 138, 3, 139, 3, 139, 3, 139, 5, 139, 3514, 10, 139, 3, 140, 3, 140, 3, 140, 3, 140, 3, 141, 3, 141, 3, 141, 3, 141, 5, 141, 3524, 10, 141, 3, 142, 3, 142, 3, 142, 3, 142, 3, 143, 3, 143, 3, 143, 5, 143, 3533, 10, 143, 3, 143, 3, 143, 3, 143, 3, 144, 3, 144, 3, 144, 3, 145, 3, 145, 3, 145, 7, 145, 3544, 10, 145, 12, 145, 14, 145, 3547, 11, 145, 3, 145, 3, 145, 3, 145, 3, 145, 3, 145, 7, 145, 3554, 10, 145, 12, 145, 14, 145, 3557, 11, 145, 7, 145, 3559, 10, 145, 12, 145, 14, 145, 3562, 11, 145, 5, 145, 3564, 10, 145, 3, 146, 3, 146, 3, 146, 3, 146, 5, 146, 3570, 10, 146, 3, 147, 3, 147, 3, 147, 3, 148, 3, 148, 3, 148, 3, 149, 3, 149, 3, 149, 3, 150, 3, 150, 3, 150, 3, 150, 3, 150, 7, 150, 3586, 10, 150, 12, 150, 14, 150, 3589, 11, 150, 5, 150, 3591, 10, 150, 3, 150, 5, 150, 3594, 10, 150, 3, 151, 3, 151, 3, 151, 3, 151, 3, 151, 3, 151, 5, 151, 3602, 10, 151, 3, 151, 3, 151, 3, 151, 3, 151, 3, 151, 3, 151, 3, 151, 3, 151, 3, 151, 3, 151, 3, 151, 5, 151, 3615, 10, 151, 5, 151, 3617, 10, 151, 3, 151, 3, 151, 5, 151, 3621, 10, 151, 3, 151, 3, 151, 3, 151, 3, 151, 3, 151, 3, 151, 5, 151, 3629, 10, 151, 5, 151, 3631, 10, 151, 5, 151, 3633, 10, 151, 5, 151, 3635, 10, 151, 3, 152, 3, 152, 3, 152, 3, 152, 7, 152, 3641, 10, 152, 12, 152, 14, 152, 3644, 11, 152, 3, 152, 3, 152, 3, 153, 3, 153, 3, 153, 3, 153, 3, 153, 3, 153, 5, 153, 3654, 10, 153, 3, 154, 3, 154, 3, 154, 3, 154, 3, 154, 3, 155, 3, 155, 3, 155, 3, 155, 5, 155, 3665, 10, 155, 5, 155, 3667, 10, 155, 3, 156, 3, 156, 3, 156, 3, 156, 3, 156, 5, 156, 3674, 10, 156, 3, 156, 5, 156, 3677, 10, 156, 3, 156, 3, 156, 3, 156, 5, 156, 3682, 10, 156, 3, 156, 3, 156, 3, 156, 3, 156, 3, 156, 5, 156, 3689, 10, 156, 3, 156, 3, 156, 5, 156, 3693, 10, 156, 3, 156, 5, 156, 3696, 10, 156, 3, 156, 3, 156, 3, 157, 3, 157, 3, 157, 3, 157, 3, 157, 3, 157, 3, 157, 3, 157, 3, 157, 3, 157, 7, 157, 3710, 10, 157, 12, 157, 14, 157, 3713, 11, 157, 3, 157, 3, 157, 5, 157, 3717, 10, 157, 3, 157, 3, 157, 3, 157, 3, 157, 3, 157, 3, 157, 3, 157, 3, 157, 3, 157, 3, 157, 7, 157, 3729, 10, 157, 12, 157, 14, 157, 3732, 11, 157, 3, 157, 3, 157, 5, 157, 3736, 10, 157, 5, 157, 3738, 10, 157, 3, 158, 3, 158, 3, 158, 3, 158, 3, 158, 3, 158, 3, 158, 5, 158, 3747, 10, 158, 3, 158, 3, 158, 3, 158, 3, 158, 3, 158, 3, 158, 5, 158, 3755, 10, 158, 3, 158, 5, 158, 3758, 10, 158, 3, 158, 5, 158, 3761, 10, 158, 3, 158, 5, 158, 3764, 10, 158, 3, 158, 5, 158, 3767, 10, 158, 5, 158, 3769, 10, 158, 3, 159, 3, 159, 3, 160, 3, 160, 5, 160, 3775, 10, 160, 3, 161, 3, 161, 3, 162, 3, 162, 3, 163, 3, 163, 3, 163, 3, 163, 3, 163, 5, 163, 3786, 10, 163, 3, 163, 5, 163, 3789, 10, 163, 3, 163, 3, 163, 3, 164, 3, 164, 3, 164, 3, 164, 3, 164, 3, 164, 3, 164, 3, 164, 3, 164, 7, 164, 3802, 10, 164, 12, 164, 14, 164, 3805, 11, 164, 3, 164, 3, 164, 3, 165, 3, 165, 3, 165, 3, 165, 7, 165, 3813, 10, 165, 12, 165, 14, 165, 3816, 11, 165, 3, 165, 3, 165, 3, 165, 3, 165, 7, 165, 3822, 10, 165, 12, 165, 14, 165, 3825, 11, 165, 3, 165, 3, 165, 3, 165, 3, 165, 7, 165, 3831, 10, 165, 12, 165, 14, 165, 3834, 11, 165, 3, 165, 3, 165, 3, 165, 3, 165, 7, 165, 3840, 10, 165, 12, 165, 14, 165, 3843, 11, 165, 3, 165, 3, 165, 3, 165, 3, 165, 7, 165, 3849, 10, 165, 12, 165, 14, 165, 3852, 11, 165, 5, 165, 3854, 10, 165, 3, 165, 3, 165, 3, 165, 3, 165, 5, 165, 3860, 10, 165, 3, 165, 3, 165, 3, 165, 5, 165, 3865, 10, 165, 5, 165, 3867, 10, 165, 3, 166, 3, 166, 3, 167, 3, 167, 3, 167, 5, 167, 3874, 10, 167, 3, 168, 3, 168, 3, 169, 3, 169, 3, 169, 3, 169, 3, 169, 3, 169, 3, 169, 3, 169, 3, 169, 3, 169, 3, 170, 3, 170, 3, 171, 3, 171, 3, 172, 3, 172, 3, 173, 3, 173, 3, 173, 3, 173, 3, 174, 3, 174, 3, 175, 3, 175, 3, 175, 3, 175, 3, 175, 3, 175, 3, 176, 3, 176, 3, 176, 3, 176, 3, 176, 3, 176, 3, 176, 3, 176, 7, 176, 3914, 10, 176, 12, 176, 14, 176, 3917, 11, 176, 5, 176, 3919, 10, 176, 3, 176, 3, 176, 5, 176, 3923, 10, 176, 3, 176, 5, 176, 3926, 10, 176, 3, 176, 3, 176, 3, 176, 3, 176, 3, 176, 3, 176, 3, 176, 7, 176, 3935, 10, 176, 12, 176, 14, 176, 3938, 11, 176, 3, 176, 3, 176, 3, 176, 3, 176, 7, 176, 3944, 10, 176, 12, 176, 14, 176, 3947, 11, 176, 5, 176, 3949, 10, 176, 5, 176, 3951, 10, 176, 3, 176, 3, 176, 3, 177, 3, 177, 3, 178, 3, 178, 3, 178, 3, 178, 3, 178, 3, 178, 5, 178, 3963, 10, 178, 3, 178, 3, 178, 3, 178, 5, 178, 3968, 10, 178, 3, 178, 3, 178, 5, 178, 3972, 10, 178, 3, 178, 3, 178, 5, 178, 3976, 10, 178, 3, 178, 5, 178, 3979, 10, 178, 3, 178, 5, 178, 3982, 10, 178, 3, 178, 3, 178, 3, 179, 3, 179, 3, 179, 3, 179, 3, 180, 3, 180, 3, 180, 3, 180, 3, 180, 3, 181, 3, 181, 3, 181, 5, 181, 3998, 10, 181, 5, 181, 4000, 10, 181, 3, 181, 3, 181, 3, 181, 3, 181, 5, 181, 4006, 10, 181, 5, 181, 4008, 10, 181, 7, 181, 4010, 10, 181, 12, 181, 14, 181, 4013, 11, 181, 3, 181, 3, 181, 3, 181, 5, 181, 4018, 10, 181, 3, 181, 3, 181, 3, 181, 3, 181, 5, 181, 4024, 10, 181, 7, 181, 4026, 10, 181, 12, 181, 14, 181, 4029, 11, 181, 5, 181, 4031, 10, 181, 3, 182, 3, 182, 3, 182, 3, 182, 7, 182, 4037, 10, 182, 12, 182, 14, 182, 4040, 11, 182, 3, 183, 3, 183, 3, 184, 3, 184, 3, 184, 7, 184, 4047, 10, 184, 12, 184, 14, 184, 4050, 11, 184, 3, 184, 5, 184, 4053, 10, 184, 3, 184, 3, 184, 3, 185, 3, 185, 3, 186, 3, 186, 3, 186, 3, 186, 3, 186, 3, 186, 3, 186, 3, 186, 3, 186, 3, 186, 3, 186, 3, 186, 3, 186, 5, 186, 4072, 10, 186, 3, 187, 3, 187, 3, 187, 5, 187, 4077, 10, 187, 3, 187, 3, 187, 3, 188, 3, 188, 3, 188, 5, 188, 4084, 10, 188, 3, 188, 3, 188, 3, 189, 3, 189, 3, 189, 5, 189, 4091, 10, 189, 3, 189, 3, 189, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 3, 190, 5, 190, 4165, 10, 190, 3, 191, 3, 191, 3, 191, 3, 191, 3, 191, 3, 192, 3, 192, 3, 192, 3, 192, 3, 192, 3, 192, 3, 193, 3, 193, 5, 193, 4180, 10, 193, 3, 193, 3, 193, 3, 193, 3, 193, 5, 193, 4186, 10, 193, 5, 193, 4188, 10, 193, 6, 193, 4190, 10, 193, 13, 193, 14, 193, 4191, 3, 193, 3, 193, 5, 193, 4196, 10, 193, 3, 193, 3, 193, 3, 193, 5, 193, 4201, 10, 193, 3, 193, 3, 193, 3, 193, 5, 193, 4206, 10, 193, 7, 193, 4208, 10, 193, 12, 193, 14, 193, 4211, 11, 193, 3, 193, 3, 193, 3, 193, 5, 193, 4216, 10, 193, 3, 193, 3, 193, 3, 193, 5, 193, 4221, 10, 193, 3, 193, 3, 193, 3, 193, 5, 193, 4226, 10, 193, 3, 193, 5, 193, 4229, 10, 193, 3, 193, 3, 193, 3, 194, 3, 194, 3, 194, 3, 194, 3, 195, 3, 195, 3, 195, 5, 195, 4240, 10, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 195, 3, 196, 3, 196, 3, 197, 3, 197, 3, 198, 3, 198, 3, 198, 3, 198, 3, 198, 5, 198, 4257, 10, 198, 3, 198, 7, 198, 4260, 10, 198, 12, 198, 14, 198, 4263, 11, 198, 3, 198, 3, 198, 5, 198, 4267, 10, 198, 3, 198, 5, 198, 4270, 10, 198, 3, 198, 3, 198, 3, 199, 3, 199, 3, 199, 3, 200, 3, 200, 3, 200, 3, 201, 3, 201, 3, 201, 3, 201, 3, 202, 3, 202, 3, 203, 3, 203, 3, 203, 5, 203, 4289, 10, 203, 3, 203, 3, 203, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 3, 204, 7, 204, 4313, 10, 204, 12, 204, 14, 204, 4316, 11, 204, 3, 204, 3, 204, 5, 204, 4320, 10, 204, 3, 204, 3, 204, 3, 204, 3, 204, 5, 204, 4326, 10, 204, 5, 204, 4328, 10, 204, 3, 204, 3, 204, 3, 205, 3, 205, 3, 205, 3, 206, 3, 206, 3, 206, 5, 206, 4338, 10, 206, 3, 206, 5, 206, 4341, 10, 206, 3, 206, 5, 206, 4344, 10, 206, 3, 206, 5, 206, 4347, 10, 206, 3, 206, 5, 206, 4350, 10, 206, 3, 206, 3, 206, 3, 206, 5, 206, 4355, 10, 206, 3, 206, 3, 206, 3, 206, 5, 206, 4360, 10, 206, 3, 207, 3, 207, 5, 207, 4364, 10, 207, 3, 208, 3, 208, 5, 208, 4368, 10, 208, 3, 208, 3, 208, 7, 208, 4372, 10, 208, 12, 208, 14, 208, 4375, 11, 208, 3, 208, 5, 208, 4378, 10, 208, 6, 208, 4380, 10, 208, 13, 208, 14, 208, 4381, 3, 208, 3, 208, 3, 209, 3, 209, 3, 209, 3, 209, 3, 209, 3, 209, 3, 209, 3, 209, 3, 209, 3, 209, 7, 209, 4396, 10, 209, 12, 209, 14, 209, 4399, 11, 209, 3, 209, 5, 209, 4402, 10, 209, 3, 209, 3, 209, 5, 209, 4406, 10, 209, 3, 209, 3, 209, 5, 209, 4410, 10, 209, 3, 209, 3, 209, 3, 209, 5, 209, 4415, 10, 209, 6, 209, 4417, 10, 209, 13, 209, 14, 209, 4418, 3, 209, 3, 209, 7, 209, 4423, 10, 209, 12, 209, 14, 209, 4426, 11, 209, 3, 210, 3, 210, 5, 210, 4430, 10, 210, 3, 210, 5, 210, 4433, 10, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 3, 210, 5, 210, 4441, 10, 210, 3, 210, 5, 210, 4444, 10, 210, 3, 211, 3, 211, 3, 211, 3, 211, 3, 211, 3, 211, 3, 211, 5, 211, 4453, 10, 211, 3, 211, 3, 211, 5, 211, 4457, 10, 211, 5, 211, 4459, 10, 211, 3, 212, 3, 212, 3, 212, 3, 212, 3, 212, 3, 212, 3, 212, 3, 212, 3, 212, 3, 212, 3, 212, 3, 212, 3, 212, 3, 212, 3, 212, 3, 212, 3, 212, 5, 212, 4478, 10, 212, 3, 212, 3, 212, 3, 212, 3, 212, 5, 212, 4484, 10, 212, 3, 212, 6, 212, 4487, 10, 212, 13, 212, 14, 212, 4488, 3, 212, 3, 212, 3, 212, 5, 212, 4494, 10, 212, 5, 212, 4496, 10, 212, 3, 213, 3, 213, 5, 213, 4500, 10, 213, 3, 213, 3, 213, 3, 213, 3, 213, 3, 213, 7, 213, 4507, 10, 213, 12, 213, 14, 213, 4510, 11, 213, 3, 213, 3, 213, 3, 213, 3, 213, 3, 213, 3, 213, 3, 213, 3, 213, 7, 213, 4520, 10, 213, 12, 213, 14, 213, 4523, 11, 213, 3, 213, 3, 213, 3, 213, 3, 213, 3, 213, 3, 213, 3, 213, 3, 213, 5, 213, 4533, 10, 213, 3, 213, 5, 213, 4536, 10, 213, 3, 214, 5, 214, 4539, 10, 214, 3, 214, 3, 214, 3, 214, 3, 214, 3, 214, 3, 214, 3, 214, 6, 214, 4548, 10, 214, 13, 214, 14, 214, 4549, 3, 215, 3, 215, 3, 215, 3, 215, 3, 215, 5, 215, 4557, 10, 215, 3, 215, 5, 215, 4560, 10, 215, 3, 215, 3, 215, 3, 215, 3, 215, 3, 215, 3, 215, 3, 215, 3, 215, 3, 215, 3, 215, 5, 215, 4572, 10, 215, 3, 215, 3, 215, 3, 215, 3, 215, 3, 215, 3, 215, 3, 215, 3, 215, 3, 215, 3, 215, 3, 215, 3, 215, 3, 215, 5, 215, 4587, 10, 215, 3, 215, 3, 215, 3, 216, 3, 216, 3, 216, 5, 216, 4594, 10, 216, 3, 216, 3, 216, 3, 216, 3, 216, 5, 216, 4600, 10, 216, 3, 216, 3, 216, 5, 216, 4604, 10, 216, 3, 216, 3, 216, 3, 216, 3, 216, 5, 216, 4610, 10, 216, 3, 216, 3, 216, 5, 216, 4614, 10, 216, 3, 216, 3, 216, 3, 216, 3, 216, 3, 216, 7, 216, 4621, 10, 216, 12, 216, 14, 216, 4624, 11, 216, 3, 216, 3, 216, 3, 216, 3, 216, 7, 216, 4630, 10, 216, 12, 216, 14, 216, 4633, 11, 216, 3, 216, 3, 216, 5, 216, 4637, 10, 216, 3, 217, 3, 217, 5, 217, 4641, 10, 217, 3, 217, 3, 217, 5, 217, 4645, 10, 217, 3, 218, 3, 218, 3, 218, 3, 218, 5, 218, 4651, 10, 218, 3, 219, 3, 219, 3, 220, 3, 220, 3, 220, 5, 220, 4658, 10, 220, 3, 220, 3, 220, 3, 220, 3, 220, 5, 220, 4664, 10, 220, 3, 221, 3, 221, 3, 221, 3, 222, 3, 222, 3, 223, 3, 223, 5, 223, 4673, 10, 223, 3, 223, 3, 223, 3, 223, 5, 223, 4678, 10, 223, 3, 223, 3, 223, 3, 224, 3, 224, 3, 224, 5, 224, 4685, 10, 224, 3, 224, 3, 224, 3, 224, 3, 224, 3, 224, 3, 224, 3, 224, 3, 224, 3, 224, 3, 224, 3, 224, 3, 224, 3, 224, 3, 224, 3, 224, 7, 224, 4702, 10, 224, 12, 224, 14, 224, 4705, 11, 224, 3, 225, 3, 225, 3, 225, 3, 226, 3, 226, 3, 227, 3, 227, 3, 227, 3, 227, 3, 227, 3, 227, 3, 227, 5, 227, 4719, 10, 227, 5, 227, 4721, 10, 227, 3, 228, 3, 228, 3, 228, 3, 228, 3, 228, 3, 229, 3, 229, 3, 229, 3, 229, 5, 229, 4732, 10, 229, 3, 229, 5, 229, 4735, 10, 229, 3, 229, 5, 229, 4738, 10, 229, 3, 230, 3, 230, 3, 230, 3, 230, 5, 230, 4744, 10, 230, 3, 230, 5, 230, 4747, 10, 230, 3, 230, 5, 230, 4750, 10, 230, 3, 231, 3, 231, 3, 231, 3, 232, 3, 232, 5, 232, 4757, 10, 232, 3, 232, 3, 232, 3, 233, 3, 233, 5, 233, 4763, 10, 233, 3, 233, 3, 233, 3, 234, 5, 234, 4768, 10, 234, 3, 234, 3, 234, 5, 234, 4772, 10, 234, 3, 234, 5, 234, 4775, 10, 234, 3, 234, 5, 234, 4778, 10, 234, 3, 235, 3, 235, 3, 235, 3, 235, 5, 235, 4784, 10, 235, 3, 235, 6, 235, 4787, 10, 235, 13, 235, 14, 235, 4788, 3, 235, 5, 235, 4792, 10, 235, 3, 235, 3, 235, 5, 235, 4796, 10, 235, 3, 235, 3, 235, 5, 235, 4800, 10, 235, 3, 235, 5, 235, 4803, 10, 235, 3, 236, 3, 236, 3, 236, 3, 236, 3, 236, 5, 236, 4810, 10, 236, 3, 236, 5, 236, 4813, 10, 236, 5, 236, 4815, 10, 236, 3, 237, 3, 237, 3, 237, 5, 237, 4820, 10, 237, 3, 238, 3, 238, 3, 238, 3, 239, 3, 239, 3, 239, 5, 239, 4828, 10, 239, 5, 239, 4830, 10, 239, 3, 240, 3, 240, 3, 240, 3, 240, 3, 240, 3, 240, 3, 240, 3, 240, 3, 240, 3, 240, 7, 240, 4842, 10, 240, 12, 240, 14, 240, 4845, 11, 240, 3, 240, 3, 240, 3, 240, 7, 240, 4850, 10, 240, 12, 240, 14, 240, 4853, 11, 240, 3, 240, 3, 240, 3, 240, 3, 240, 3, 240, 3, 240, 5, 240, 4861, 10, 240, 3, 240, 5, 240, 4864, 10, 240, 3, 240, 3, 240, 3, 240, 5, 240, 4869, 10, 240, 3, 240, 5, 240, 4872, 10, 240, 3, 240, 3, 240, 3, 240, 3, 240, 3, 240, 3, 240, 3, 240, 5, 240, 4881, 10, 240, 3, 240, 3, 240, 3, 241, 3, 241, 3, 242, 3, 242, 3, 242, 3, 242, 3, 242, 3, 242, 3, 242, 3, 242, 3, 242, 3, 242, 3, 242, 3, 242, 3, 242, 3, 242, 3, 242, 3, 242, 5, 242, 4903, 10, 242, 3, 242, 3, 242, 3, 242, 3, 242, 5, 242, 4909, 10, 242, 3, 242, 3, 242, 3, 242, 6, 242, 4914, 10, 242, 13, 242, 14, 242, 4915, 3, 243, 3, 243, 3, 244, 3, 244, 3, 244, 3, 244, 3, 244, 3, 244, 5, 244, 4926, 10, 244, 3, 244, 3, 244, 3, 245, 3, 245, 3, 245, 3, 245, 3, 245, 5, 245, 4935, 10, 245, 3, 245, 3, 245, 3, 245, 3, 245, 3, 245, 3, 245, 3, 245, 3, 245, 3, 245, 3, 245, 5, 245, 4947, 10, 245, 3, 245, 5, 245, 4950, 10, 245, 3, 245, 5, 245, 4953, 10, 245, 3, 245, 3, 245, 3, 246, 3, 246, 3, 246, 3, 246, 3, 246, 3, 247, 3, 247, 3, 247, 5, 247, 4965, 10, 247, 3, 248, 3, 248, 3, 248, 3, 248, 3, 248, 3, 248, 3, 248, 5, 248, 4974, 10, 248, 3, 248, 3, 248, 3, 248, 3, 248, 7, 248, 4980, 10, 248, 12, 248, 14, 248, 4983, 11, 248, 3, 248, 3, 248, 5, 248, 4987, 10, 248, 3, 248, 3, 248, 3, 248, 3, 248, 7, 248, 4993, 10, 248, 12, 248, 14, 248, 4996, 11, 248, 3, 248, 3, 248, 5, 248, 5000, 10, 248, 3, 248, 5, 248, 5003, 10, 248, 3, 249, 3, 249, 3, 250, 3, 250, 3, 251, 3, 251, 3, 252, 3, 252, 3, 253, 3, 253, 3, 253, 3, 253, 3, 253, 3, 253, 3, 253, 3, 253, 3, 253, 3, 253, 3, 253, 6, 253, 5024, 10, 253, 13, 253, 14, 253, 5025, 5, 253, 5028, 10, 253, 3, 253, 5, 253, 5031, 10, 253, 3, 253, 3, 253, 5, 253, 5035, 10, 253, 3, 253, 3, 253, 3, 253, 3, 253, 3, 253, 3, 253, 3, 253, 3, 253, 5, 253, 5045, 10, 253, 7, 253, 5047, 10, 253, 12, 253, 14, 253, 5050, 11, 253, 3, 253, 3, 253, 5, 253, 5054, 10, 253, 3, 253, 6, 253, 5057, 10, 253, 13, 253, 14, 253, 5058, 3, 253, 3, 253, 5, 253, 5063, 10, 253, 5, 253, 5065, 10, 253, 3, 253, 5, 253, 5068, 10, 253, 7, 253, 5070, 10, 253, 12, 253, 14, 253, 5073, 11, 253, 3, 254, 3, 254, 3, 254, 3, 254, 3, 255, 3, 255, 3, 255, 5, 255, 5082, 10, 255, 3, 256, 3, 256, 3, 256, 3, 256, 3, 256, 3, 256, 5, 256, 5090, 10, 256, 3, 256, 3, 256, 3, 256, 3, 256, 3, 256, 3, 256, 5, 256, 5098, 10, 256, 3, 256, 5, 256, 5101, 10, 256, 3, 256, 5, 256, 5104, 10, 256, 3, 256, 5, 256, 5107, 10, 256, 3, 256, 5, 256, 5110, 10, 256, 5, 256, 5112, 10, 256, 3, 256, 3, 256, 3, 256, 3, 256, 3, 256, 6, 256, 5119, 10, 256, 13, 256, 14, 256, 5120, 7, 256, 5123, 10, 256, 12, 256, 14, 256, 5126, 11, 256, 3, 256, 3, 256, 3, 256, 5, 256, 5131, 10, 256, 3, 256, 5, 256, 5134, 10, 256, 3, 256, 3, 256, 5, 256, 5138, 10, 256, 3, 256, 3, 256, 3, 256, 5, 256, 5143, 10, 256, 3, 256, 3, 256, 3, 256, 3, 256, 3, 257, 3, 257, 3, 257, 3, 257, 3, 257, 3, 257, 3, 257, 3, 257, 3, 257, 5, 257, 5158, 10, 257, 3, 257, 3, 257, 3, 257, 3, 257, 5, 257, 5164, 10, 257, 3, 257, 3, 257, 3, 257, 5, 257, 5169, 10, 257, 3, 257, 3, 257, 3, 257, 5, 257, 5174, 10, 257, 3, 257, 3, 257, 3, 257, 5, 257, 5179, 10, 257, 3, 257, 3, 257, 3, 257, 6, 257, 5184, 10, 257, 13, 257, 14, 257, 5185, 5, 257, 5188, 10, 257, 3, 258, 3, 258, 3, 258, 5, 258, 5193, 10, 258, 3, 258, 3, 258, 3, 258, 3, 258, 3, 258, 3, 258, 5, 258, 5201, 10, 258, 3, 258, 3, 258, 3, 258, 3, 258, 3, 258, 5, 258, 5208, 10, 258, 3, 258, 3, 258, 3, 259, 3, 259, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 5, 260, 5221, 10, 260, 3, 260, 3, 260, 3, 260, 3, 260, 5, 260, 5227, 10, 260, 7, 260, 5229, 10, 260, 12, 260, 14, 260, 5232, 11, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 5, 260, 5243, 10, 260, 3, 260, 3, 260, 3, 260, 3, 260, 3, 260, 5, 260, 5250, 10, 260, 7, 260, 5252, 10, 260, 12, 260, 14, 260, 5255, 11, 260, 3, 260, 5, 260, 5258, 10, 260, 3, 260, 5, 260, 5261, 10, 260, 3, 260, 5, 260, 5264, 10, 260, 3, 260, 3, 260, 3, 261, 3, 261, 3, 261, 5, 261, 5271, 10, 261, 3, 261, 3, 261, 3, 261, 3, 261, 3, 261, 5, 261, 5278, 10, 261, 3, 261, 3, 261, 5, 261, 5282, 10, 261, 3, 261, 3, 261, 3, 262, 3, 262, 3, 262, 3, 262, 3, 262, 3, 262, 5, 262, 5292, 10, 262, 3, 262, 3, 262, 5, 262, 5296, 10, 262, 3, 262, 5, 262, 5299, 10, 262, 3, 262, 5, 262, 5302, 10, 262, 3, 262, 3, 262, 3, 262, 3, 262, 5, 262, 5308, 10, 262, 3, 262, 5, 262, 5311, 10, 262, 3, 262, 5, 262, 5314, 10, 262, 3, 262, 5, 262, 5317, 10, 262, 3, 262, 5, 262, 5320, 10, 262, 3, 262, 5, 262, 5323, 10, 262, 3, 262, 5, 262, 5326, 10, 262, 3, 262, 3, 262, 3, 262, 3, 262, 3, 262, 5, 262, 5333, 10, 262, 3, 262, 5, 262, 5336, 10, 262, 3, 262, 5, 262, 5339, 10, 262, 3, 262, 6, 262, 5342, 10, 262, 13, 262, 14, 262, 5343, 5, 262, 5346, 10, 262, 3, 262, 5, 262, 5349, 10, 262, 3, 262, 5, 262, 5352, 10, 262, 3, 263, 3, 263, 3, 263, 3, 263, 3, 263, 3, 263, 3, 263, 3, 263, 3, 263, 3, 263, 3, 263, 3, 263, 3, 263, 3, 263, 3, 263, 7, 263, 5369, 10, 263, 12, 263, 14, 263, 5372, 11, 263, 3, 263, 3, 263, 3, 264, 3, 264, 5, 264, 5378, 10, 264, 3, 264, 3, 264, 5, 264, 5382, 10, 264, 3, 264, 5, 264, 5385, 10, 264, 3, 265, 3, 265, 3, 265, 3, 265, 3, 265, 5, 265, 5392, 10, 265, 3, 265, 3, 265, 3, 265, 5, 265, 5397, 10, 265, 3, 265, 3, 265, 3, 265, 3, 265, 3, 265, 5, 265, 5404, 10, 265, 3, 265, 3, 265, 3, 265, 3, 265, 5, 265, 5410, 10, 265, 5, 265, 5412, 10, 265, 3, 265, 3, 265, 3, 265, 3, 265, 5, 265, 5418, 10, 265, 3, 266, 3, 266, 5, 266, 5422, 10, 266, 3, 266, 3, 266, 3, 266, 3, 266, 3, 266, 5, 266, 5429, 10, 266, 3, 266, 3, 266, 3, 266, 5, 266, 5434, 10, 266, 3, 267, 3, 267, 3, 267, 5, 267, 5439, 10, 267, 3, 267, 3, 267, 3, 267, 3, 267, 7, 267, 5445, 10, 267, 12, 267, 14, 267, 5448, 11, 267, 3, 267, 3, 267, 5, 267, 5452, 10, 267, 3, 267, 3, 267, 3, 267, 3, 267, 5, 267, 5458, 10, 267, 3, 267, 5, 267, 5461, 10, 267, 3, 267, 5, 267, 5464, 10, 267, 3, 267, 5, 267, 5467, 10, 267, 3, 267, 5, 267, 5470, 10, 267, 3, 267, 5, 267, 5473, 10, 267, 3, 267, 5, 267, 5476, 10, 267, 3, 267, 3, 267, 3, 267, 3, 267, 3, 267, 5, 267, 5483, 10, 267, 3, 267, 5, 267, 5486, 10, 267, 3, 267, 5, 267, 5489, 10, 267, 3, 267, 6, 267, 5492, 10, 267, 13, 267, 14, 267, 5493, 5, 267, 5496, 10, 267, 3, 267, 5, 267, 5499, 10, 267, 3, 267, 5, 267, 5502, 10, 267, 3, 268, 3, 268, 5, 268, 5506, 10, 268, 3, 268, 3, 268, 3, 268, 3, 268, 6, 268, 5512, 10, 268, 13, 268, 14, 268, 5513, 3, 268, 3, 268, 3, 269, 3, 269, 3, 269, 3, 269, 3, 269, 3, 269, 3, 269, 5, 269, 5525, 10, 269, 3, 270, 3, 270, 5, 270, 5529, 10, 270, 3, 270, 3, 270, 5, 270, 5533, 10, 270, 3, 270, 3, 270, 3, 270, 7, 270, 5538, 10, 270, 12, 270, 14, 270, 5541, 11, 270, 3, 270, 5, 270, 5544, 10, 270, 3, 270, 3, 270, 3, 270, 5, 270, 5549, 10, 270, 3, 271, 5, 271, 5552, 10, 271, 3, 271, 3, 271, 3, 271, 3, 271, 3, 271, 3, 272, 3, 272, 3, 272, 3, 272, 7, 272, 5563, 10, 272, 12, 272, 14, 272, 5566, 11, 272, 3, 272, 3, 272, 5, 272, 5570, 10, 272, 3, 272, 3, 272, 3, 272, 3, 272, 5, 272, 5576, 10, 272, 3, 272, 5, 272, 5579, 10, 272, 3, 272, 5, 272, 5582, 10, 272, 3, 272, 5, 272, 5585, 10, 272, 3, 272, 5, 272, 5588, 10, 272, 3, 272, 3, 272, 3, 272, 3, 272, 3, 272, 5, 272, 5595, 10, 272, 3, 272, 5, 272, 5598, 10, 272, 3, 272, 5, 272, 5601, 10, 272, 3, 272, 6, 272, 5604, 10, 272, 13, 272, 14, 272, 5605, 5, 272, 5608, 10, 272, 3, 272, 5, 272, 5611, 10, 272, 3, 272, 5, 272, 5614, 10, 272, 3, 273, 3, 273, 3, 273, 3, 273, 3, 273, 5, 273, 5621, 10, 273, 3, 274, 3, 274, 3, 274, 3, 274, 3, 274, 3, 274, 3, 274, 3, 274, 5, 274, 5631, 10, 274, 3, 275, 3, 275, 3, 275, 3, 275, 3, 275, 3, 275, 3, 275, 7, 275, 5640, 10, 275, 12, 275, 14, 275, 5643, 11, 275, 3, 275, 3, 275, 3, 275, 3, 275, 3, 275, 3, 275, 3, 275, 3, 275, 3, 275, 3, 275, 3, 275, 7, 275, 5656, 10, 275, 12, 275, 14, 275, 5659, 11, 275, 3, 275, 3, 275, 5, 275, 5663, 10, 275, 5, 275, 5665, 10, 275, 3, 275, 3, 275, 3, 275, 5, 275, 5670, 10, 275, 3, 275, 3, 275, 3, 275, 3, 275, 3, 275, 5, 275, 5677, 10, 275, 3, 275, 3, 275, 3, 275, 7, 275, 5682, 10, 275, 12, 275, 14, 275, 5685, 11, 275, 3, 275, 3, 275, 3, 276, 3, 276, 3, 276, 3, 276, 3, 276, 3, 276, 3, 276, 3, 276, 3, 276, 5, 276, 5698, 10, 276, 3, 276, 3, 276, 3, 276, 3, 276, 3, 276, 5, 276, 5705, 10, 276, 3, 276, 3, 276, 3, 276, 7, 276, 5710, 10, 276, 12, 276, 14, 276, 5713, 11, 276, 3, 276, 3, 276, 3, 277, 3, 277, 3, 277, 3, 277, 3, 277, 3, 277, 3, 277, 7, 277, 5724, 10, 277, 12, 277, 14, 277, 5727, 11, 277, 3, 277, 3, 277, 3, 277, 5, 277, 5732, 10, 277, 3, 278, 3, 278, 3, 278, 5, 278, 5737, 10, 278, 3, 278, 5, 278, 5740, 10, 278, 3, 278, 3, 278, 3, 278, 5, 278, 5745, 10, 278, 3, 278, 5, 278, 5748, 10, 278, 7, 278, 5750, 10, 278, 12, 278, 14, 278, 5753, 11, 278, 3, 278, 3, 278, 3, 279, 3, 279, 3, 279, 3, 279, 3, 279, 3, 279, 3, 279, 3, 279, 7, 279, 5765, 10, 279, 12, 279, 14, 279, 5768, 11, 279, 3, 279, 3, 279, 5, 279, 5772, 10, 279, 3, 279, 3, 279, 5, 279, 5776, 10, 279, 3, 279, 3, 279, 3, 279, 3, 279, 3, 279, 3, 279, 3, 279, 7, 279, 5785, 10, 279, 12, 279, 14, 279, 5788, 11, 279, 3, 279, 3, 279, 5, 279, 5792, 10, 279, 3, 280, 3, 280, 3, 281, 3, 281, 3, 281, 3, 281, 3, 281, 3, 281, 3, 281, 7, 281, 5803, 10, 281, 12, 281, 14, 281, 5806, 11, 281, 3, 281, 3, 281, 3, 281, 3, 281, 3, 281, 3, 281, 3, 281, 3, 281, 3, 281, 3, 281, 3, 281, 7, 281, 5819, 10, 281, 12, 281, 14, 281, 5822, 11, 281, 3, 281, 3, 281, 5, 281, 5826, 10, 281, 5, 281, 5828, 10, 281, 3, 281, 3, 281, 3, 281, 5, 281, 5833, 10, 281, 3, 281, 3, 281, 3, 281, 3, 281, 7, 281, 5839, 10, 281, 12, 281, 14, 281, 5842, 11, 281, 3, 281, 3, 281, 3, 282, 3, 282, 3, 282, 3, 282, 3, 282, 3, 282, 3, 282, 3, 282, 3, 282, 5, 282, 5855, 10, 282, 3, 282, 3, 282, 3, 282, 3, 282, 7, 282, 5861, 10, 282, 12, 282, 14, 282, 5864, 11, 282, 3, 282, 3, 282, 3, 283, 3, 283, 3, 283, 3, 283, 3, 283, 3, 283, 6, 283, 5874, 10, 283, 13, 283, 14, 283, 5875, 3, 283, 3, 283, 3, 283, 3, 283, 5, 283, 5882, 10, 283, 3, 283, 3, 283, 5, 283, 5886, 10, 283, 3, 284, 3, 284, 3, 284, 3, 284, 3, 284, 3, 284, 3, 284, 3, 284, 3, 284, 3, 284, 7, 284, 5898, 10, 284, 12, 284, 14, 284, 5901, 11, 284, 3, 284, 3, 284, 5, 284, 5905, 10, 284, 3, 285, 3, 285, 5, 285, 5909, 10, 285, 3, 285, 3, 285, 3, 286, 3, 286, 3, 286, 3, 286, 3, 286, 3, 286, 3, 286, 3, 286, 7, 286, 5921, 10, 286, 12, 286, 14, 286, 5924, 11, 286, 5, 286, 5926, 10, 286, 3, 287, 3, 287, 5, 287, 5930, 10, 287, 3, 287, 3, 287, 3, 287, 3, 287, 3, 287, 3, 287, 7, 287, 5938, 10, 287, 12, 287, 14, 287, 5941, 11, 287, 3, 287, 3, 287, 3, 287, 7, 287, 5946, 10, 287, 12, 287, 14, 287, 5949, 11, 287, 3, 287, 3, 287, 3, 287, 7, 287, 5954, 10, 287, 12, 287, 14, 287, 5957, 11, 287, 5, 287, 5959, 10, 287, 3, 287, 3, 287, 3, 287, 5, 287, 5964, 10, 287, 5, 287, 5966, 10, 287, 3, 288, 3, 288, 5, 288, 5970, 10, 288, 3, 288, 3, 288, 3, 288, 3, 288, 3, 288, 3, 288, 7, 288, 5978, 10, 288, 12, 288, 14, 288, 5981, 11, 288, 3, 288, 3, 288, 3, 288, 7, 288, 5986, 10, 288, 12, 288, 14, 288, 5989, 11, 288, 3, 288, 3, 288, 3, 288, 7, 288, 5994, 10, 288, 12, 288, 14, 288, 5997, 11, 288, 5, 288, 5999, 10, 288, 3, 288, 3, 288, 3, 288, 5, 288, 6004, 10, 288, 5, 288, 6006, 10, 288, 3, 289, 3, 289, 3, 289, 3, 289, 3, 289, 3, 289, 7, 289, 6014, 10, 289, 12, 289, 14, 289, 6017, 11, 289, 3, 289, 3, 289, 3, 289, 7, 289, 6022, 10, 289, 12, 289, 14, 289, 6025, 11, 289, 3, 289, 3, 289, 3, 289, 7, 289, 6030, 10, 289, 12, 289, 14, 289, 6033, 11, 289, 5, 289, 6035, 10, 289, 3, 289, 3, 289, 3, 289, 5, 289, 6040, 10, 289, 3, 290, 3, 290, 3, 291, 3, 291, 3, 291, 3, 291, 3, 291, 3, 291, 3, 291, 7, 291, 6051, 10, 291, 12, 291, 14, 291, 6054, 11, 291, 3, 291, 3, 291, 5, 291, 6058, 10, 291, 3, 292, 3, 292, 3, 292, 3, 292, 3, 292, 3, 292, 3, 292, 5, 292, 6067, 10, 292, 3, 293, 3, 293, 3, 293, 3, 293, 3, 293, 3, 293, 3, 293, 7, 293, 6076, 10, 293, 12, 293, 14, 293, 6079, 11, 293, 3, 293, 3, 293, 3, 293, 3, 293, 3, 293, 3, 293, 3, 293, 3, 293, 3, 293, 7, 293, 6090, 10, 293, 12, 293, 14, 293, 6093, 11, 293, 3, 293, 3, 293, 5, 293, 6097, 10, 293, 3, 293, 5, 293, 6100, 10, 293, 3, 294, 3, 294, 3, 295, 3, 295, 5, 295, 6106, 10, 295, 3, 295, 3, 295, 5, 295, 6110, 10, 295, 3, 296, 3, 296, 5, 296, 6114, 10, 296, 3, 296, 3, 296, 5, 296, 6118, 10, 296, 3, 297, 3, 297, 5, 297, 6122, 10, 297, 3, 297, 5, 297, 6125, 10, 297, 3, 298, 3, 298, 3, 298, 3, 298, 3, 298, 3, 298, 3, 298, 3, 298, 7, 298, 6135, 10, 298, 12, 298, 14, 298, 6138, 11, 298, 3, 298, 3, 298, 5, 298, 6142, 10, 298, 3, 299, 3, 299, 3, 299, 3, 299, 3, 299, 3, 299, 3, 299, 7, 299, 6151, 10, 299, 12, 299, 14, 299, 6154, 11, 299, 3, 299, 3, 299, 3, 300, 3, 300, 3, 300, 3, 300, 3, 300, 7, 300, 6163, 10, 300, 12, 300, 14, 300, 6166, 11, 300, 3, 300, 5, 300, 6169, 10, 300, 3, 300, 3, 300, 3, 301, 5, 301, 6174, 10, 301, 3, 301, 5, 301, 6177, 10, 301, 3, 301, 3, 301, 5, 301, 6181, 10, 301, 3, 301, 3, 301, 5, 301, 6185, 10, 301, 5, 301, 6187, 10, 301, 3, 301, 3, 301, 3, 301, 5, 301, 6192, 10, 301, 3, 302, 3, 302, 3, 302, 3, 302, 3, 302, 5, 302, 6199, 10, 302, 3, 302, 3, 302, 3, 302, 3, 302, 3, 302, 3, 302, 3, 302, 3, 302, 5, 302, 6209, 10, 302, 3, 302, 3, 302, 3, 302, 6, 302, 6214, 10, 302, 13, 302, 14, 302, 6215, 3, 303, 3, 303, 3, 303, 3, 303, 3, 303, 3, 303, 3, 303, 5, 303, 6225, 10, 303, 3, 303, 3, 303, 3, 303, 3, 303, 3, 303, 3, 303, 5, 303, 6233, 10, 303, 3, 303, 3, 303, 3, 303, 3, 303, 3, 303, 5, 303, 6240, 10, 303, 3, 304, 3, 304, 3, 304, 5, 304, 6245, 10, 304, 3, 304, 3, 304, 5, 304, 6249, 10, 304, 3, 304, 3, 304, 3, 304, 5, 304, 6254, 10, 304, 3, 304, 3, 304, 3, 304, 5, 304, 6259, 10, 304, 3, 304, 5, 304, 6262, 10, 304, 3, 304, 5, 304, 6265, 10, 304, 3, 304, 5, 304, 6268, 10, 304, 5, 304, 6270, 10, 304, 3, 304, 3, 304, 5, 304, 6274, 10, 304, 3, 304, 5, 304, 6277, 10, 304, 3, 305, 3, 305, 5, 305, 6281, 10, 305, 3, 306, 3, 306, 3, 306, 3, 306, 3, 306, 3, 306, 5, 306, 6289, 10, 306, 5, 306, 6291, 10, 306, 5, 306, 6293, 10, 306, 3, 306, 5, 306, 6296, 10, 306, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 3, 307, 6, 307, 6305, 10, 307, 13, 307, 14, 307, 6306, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 5, 308, 6329, 10, 308, 3, 308, 3, 308, 3, 308, 3, 308, 3, 308, 6, 308, 6336, 10, 308, 13, 308, 14, 308, 6337, 3, 308, 3, 308, 3, 309, 3, 309, 3, 309, 3, 309, 3, 310, 3, 310, 3, 310, 3, 310, 6, 310, 6350, 10, 310, 13, 310, 14, 310, 6351, 3, 311, 5, 311, 6355, 10, 311, 3, 311, 3, 311, 5, 311, 6359, 10, 311, 3, 312, 5, 312, 6362, 10, 312, 3, 312, 3, 312, 3, 312, 3, 313, 3, 313, 3, 313, 3, 313, 3, 313, 3, 313, 5, 313, 6373, 10, 313, 3, 314, 3, 314, 3, 315, 3, 315, 3, 315, 3, 315, 3, 315, 5, 315, 6382, 10, 315, 3, 315, 3, 315, 3, 315, 3, 315, 3, 315, 5, 315, 6389, 10, 315, 7, 315, 6391, 10, 315, 12, 315, 14, 315, 6394, 11, 315, 3, 315, 3, 315, 3, 315, 3, 315, 3, 315, 3, 315, 5, 315, 6402, 10, 315, 3, 315, 3, 315, 3, 315, 3, 315, 3, 315, 3, 315, 5, 315, 6410, 10, 315, 7, 315, 6412, 10, 315, 12, 315, 14, 315, 6415, 11, 315, 5, 315, 6417, 10, 315, 3, 316, 3, 316, 3, 316, 3, 316, 3, 316, 3, 316, 5, 316, 6425, 10, 316, 3, 316, 3, 316, 3, 316, 3, 316, 5, 316, 6431, 10, 316, 7, 316, 6433, 10, 316, 12, 316, 14, 316, 6436, 11, 316, 3, 316, 3, 316, 5, 316, 6440, 10, 316, 3, 317, 3, 317, 3, 317, 5, 317, 6445, 10, 317, 3, 317, 3, 317, 3, 317, 3, 317, 3, 317, 3, 317, 5, 317, 6453, 10, 317, 6, 317, 6455, 10, 317, 13, 317, 14, 317, 6456, 3, 317, 3, 317, 3, 317, 3, 318, 3, 318, 3, 318, 3, 318, 3, 318, 3, 318, 3, 318, 3, 318, 3, 318, 6, 318, 6471, 10, 318, 13, 318, 14, 318, 6472, 3, 318, 5, 318, 6476, 10, 318, 3, 319, 3, 319, 3, 319, 3, 319, 5, 319, 6482, 10, 319, 3, 320, 3, 320, 3, 320, 5, 320, 6487, 10, 320, 3, 320, 5, 320, 6490, 10, 320, 3, 321, 5, 321, 6493, 10, 321, 3, 321, 3, 321, 3, 322, 3, 322, 5, 322, 6499, 10, 322, 3, 322, 3, 322, 3, 322, 3, 322, 3, 322, 3, 323, 3, 323, 3, 323, 3, 323, 5, 323, 6510, 10, 323, 3, 323, 3, 323, 3, 324, 3, 324, 3, 324, 3, 324, 3, 324, 5, 324, 6519, 10, 324, 3, 324, 3, 324, 3, 325, 3, 325, 3, 325, 3, 325, 3, 325, 3, 325, 3, 325, 3, 326, 3, 326, 3, 327, 3, 327, 3, 328, 3, 328, 3, 328, 5, 328, 6537, 10, 328, 3, 328, 3, 328, 3, 328, 3, 328, 3, 328, 3, 328, 3, 328, 5, 328, 6546, 10, 328, 3, 328, 3, 328, 3, 328, 5, 328, 6551, 10, 328, 3, 328, 3, 328, 3, 328, 5, 328, 6556, 10, 328, 3, 328, 3, 328, 3, 328, 3, 328, 5, 328, 6562, 10, 328, 3, 328, 3, 328, 3, 328, 3, 328, 3, 328, 5, 328, 6569, 10, 328, 3, 328, 3, 328, 3, 328, 5, 328, 6574, 10, 328, 5, 328, 6576, 10, 328, 3, 329, 3, 329, 3, 329, 3, 329, 3, 329, 3, 329, 3, 329, 3, 330, 3, 330, 3, 330, 3, 330, 3, 330, 3, 330, 3, 330, 3, 330, 3, 330, 6, 330, 6594, 10, 330, 13, 330, 14, 330, 6595, 3, 330, 5, 330, 6599, 10, 330, 3, 330, 3, 330, 3, 331, 3, 331, 3, 332, 3, 332, 3, 333, 3, 333, 3, 333, 5, 333, 6610, 10, 333, 3, 333, 3, 333, 3, 333, 3, 333, 3, 333, 3, 333, 3, 333, 3, 333, 3, 333, 5, 333, 6621, 10, 333, 3, 333, 3, 333, 3, 334, 3, 334, 3, 334, 5, 334, 6628, 10, 334, 3, 334, 3, 334, 3, 334, 5, 334, 6633, 10, 334, 3, 334, 5, 334, 6636, 10, 334, 3, 334, 5, 334, 6639, 10, 334, 3, 334, 3, 334, 3, 334, 5, 334, 6644, 10, 334, 3, 335, 3, 335, 3, 336, 3, 336, 3, 337, 3, 337, 3, 337, 3, 337, 3, 337, 5, 337, 6655, 10, 337, 3, 338, 3, 338, 3, 339, 3, 339, 5, 339, 6661, 10, 339, 3, 339, 3, 339, 5, 339, 6665, 10, 339, 3, 339, 3, 339, 3, 339, 3, 339, 5, 339, 6671, 10, 339, 3, 339, 3, 339, 3, 339, 3, 339, 3, 339, 6, 339, 6678, 10, 339, 13, 339, 14, 339, 6679, 5, 339, 6682, 10, 339, 3, 339, 3, 339, 5, 339, 6686, 10, 339, 3, 339, 5, 339, 6689, 10, 339, 3, 340, 5, 340, 6692, 10, 340, 3, 340, 3, 340, 3, 340, 3, 340, 3, 340, 3, 340, 3, 340, 3, 340, 5, 340, 6702, 10, 340, 3, 340, 3, 340, 3, 340, 6, 340, 6707, 10, 340, 13, 340, 14, 340, 6708, 5, 340, 6711, 10, 340, 3, 341, 3, 341, 3, 341, 3, 341, 7, 341, 6717, 10, 341, 12, 341, 14, 341, 6720, 11, 341, 3, 341, 3, 341, 3, 341, 3, 341, 3, 341, 3, 341, 7, 341, 6728, 10, 341, 12, 341, 14, 341, 6731, 11, 341, 3, 341, 5, 341, 6734, 10, 341, 3, 342, 3, 342, 3, 342, 3, 342, 3, 342, 3, 342, 7, 342, 6742, 10, 342, 12, 342, 14, 342, 6745, 11, 342, 3, 342, 3, 342, 3, 342, 3, 342, 3, 342, 3, 342, 7, 342, 6753, 10, 342, 12, 342, 14, 342, 6756, 11, 342, 5, 342, 6758, 10, 342, 3, 342, 3, 342, 3, 342, 5, 342, 6763, 10, 342, 3, 342, 3, 342, 3, 343, 3, 343, 3, 343, 3, 343, 3, 343, 3, 343, 3, 343, 3, 343, 3, 343, 3, 343, 5, 343, 6777, 10, 343, 3, 343, 3, 343, 3, 343, 3, 343, 3, 343, 3, 343, 3, 343, 6, 343, 6786, 10, 343, 13, 343, 14, 343, 6787, 3, 343, 3, 343, 5, 343, 6792, 10, 343, 3, 343, 3, 343, 3, 343, 3, 343, 3, 343, 3, 343, 5, 343, 6800, 10, 343, 5, 343, 6802, 10, 343, 3, 344, 3, 344, 3, 345, 3, 345, 3, 345, 3, 345, 3, 345, 7, 345, 6811, 10, 345, 12, 345, 14, 345, 6814, 11, 345, 3, 345, 3, 345, 3, 345, 3, 345, 3, 345, 3, 345, 5, 345, 6822, 10, 345, 3, 346, 3, 346, 3, 346, 3, 346, 5, 346, 6828, 10, 346, 3, 346, 3, 346, 3, 346, 5, 346, 6833, 10, 346, 7, 346, 6835, 10, 346, 12, 346, 14, 346, 6838, 11, 346, 3, 346, 3, 346, 5, 346, 6842, 10, 346, 3, 347, 3, 347, 3, 347, 5, 347, 6847, 10, 347, 3, 347, 3, 347, 3, 347, 5, 347, 6852, 10, 347, 7, 347, 6854, 10, 347, 12, 347, 14, 347, 6857, 11, 347, 3, 347, 3, 347, 3, 347, 3, 347, 5, 347, 6863, 10, 347, 3, 347, 3, 347, 3, 347, 3, 347, 3, 347, 5, 347, 6870, 10, 347, 3, 348, 3, 348, 3, 348, 5, 348, 6875, 10, 348, 3, 348, 3, 348, 3, 348, 5, 348, 6880, 10, 348, 7, 348, 6882, 10, 348, 12, 348, 14, 348, 6885, 11, 348, 3, 348, 3, 348, 3, 348, 3, 348, 3, 348, 3, 348, 3, 348, 3, 348, 5, 348, 6895, 10, 348, 3, 349, 3, 349, 5, 349, 6899, 10, 349, 3, 349, 5, 349, 6902, 10, 349, 3, 349, 5, 349, 6905, 10, 349, 3, 349, 3, 349, 3, 349, 3, 349, 3, 349, 3, 349, 3, 349, 7, 349, 6914, 10, 349, 12, 349, 14, 349, 6917, 11, 349, 3, 349, 3, 349, 3, 349, 3, 349, 3, 349, 5, 349, 6924, 10, 349, 3, 349, 3, 349, 3, 349, 3, 349, 7, 349, 6930, 10, 349, 12, 349, 14, 349, 6933, 11, 349, 3, 349, 3, 349, 5, 349, 6937, 10, 349, 3, 349, 3, 349, 3, 349, 3, 349, 5, 349, 6943, 10, 349, 3, 350, 3, 350, 5, 350, 6947, 10, 350, 3, 350, 3, 350, 3, 350, 3, 350, 6, 350, 6953, 10, 350, 13, 350, 14, 350, 6954, 3, 350, 3, 350, 3, 350, 5, 350, 6960, 10, 350, 3, 350, 3, 350, 3, 350, 5, 350, 6965, 10, 350, 7, 350, 6967, 10, 350, 12, 350, 14, 350, 6970, 11, 350, 3, 350, 3, 350, 3, 350, 3, 350, 7, 350, 6976, 10, 350, 12, 350, 14, 350, 6979, 11, 350, 5, 350, 6981, 10, 350, 3, 351, 5, 351, 6984, 10, 351, 3, 351, 3, 351, 5, 351, 6988, 10, 351, 3, 351, 3, 351, 3, 351, 3, 352, 3, 352, 5, 352, 6995, 10, 352, 3, 352, 3, 352, 3, 352, 3, 352, 7, 352, 7001, 10, 352, 12, 352, 14, 352, 7004, 11, 352, 3, 352, 3, 352, 3, 352, 3, 352, 7, 352, 7010, 10, 352, 12, 352, 14, 352, 7013, 11, 352, 5, 352, 7015, 10, 352, 3, 353, 3, 353, 3, 353, 3, 353, 3, 353, 3, 353, 3, 353, 3, 354, 3, 354, 3, 354, 3, 354, 3, 354, 3, 354, 5, 354, 7030, 10, 354, 3, 355, 3, 355, 3, 356, 3, 356, 3, 356, 3, 356, 3, 356, 3, 357, 3, 357, 3, 357, 3, 357, 3, 357, 3, 357, 7, 357, 7045, 10, 357, 12, 357, 14, 357, 7048, 11, 357, 3, 357, 3, 357, 3, 357, 5, 357, 7053, 10, 357, 3, 358, 3, 358, 5, 358, 7057, 10, 358, 3, 358, 3, 358, 3, 358, 3, 358, 3, 358, 5, 358, 7064, 10, 358, 3, 358, 3, 358, 3, 358, 3, 358, 3, 358, 5, 358, 7071, 10, 358, 3, 358, 5, 358, 7074, 10, 358, 5, 358, 7076, 10, 358, 3, 359, 3, 359, 3, 359, 3, 359, 5, 359, 7082, 10, 359, 5, 359, 7084, 10, 359, 3, 359, 5, 359, 7087, 10, 359, 3, 360, 3, 360, 3, 360, 3, 360, 3, 360, 3, 360, 3, 360, 5, 360, 7096, 10, 360, 3, 360, 5, 360, 7099, 10, 360, 3, 361, 3, 361, 5, 361, 7103, 10, 361, 3, 361, 3, 361, 3, 361, 3, 361, 5, 361, 7109, 10, 361, 3, 362, 3, 362, 3, 362, 3, 362, 3, 362, 3, 362, 3, 362, 3, 363, 3, 363, 3, 363, 5, 363, 7121, 10, 363, 3, 363, 3, 363, 3, 363, 3, 364, 3, 364, 3, 364, 3, 364, 3, 364, 5, 364, 7131, 10, 364, 3, 364, 3, 364, 5, 364, 7135, 10, 364, 3, 364, 5, 364, 7138, 10, 364, 3, 364, 5, 364, 7141, 10, 364, 3, 364, 3, 364, 3, 364, 5, 364, 7146, 10, 364, 3, 364, 3, 364, 5, 364, 7150, 10, 364, 3, 364, 3, 364, 5, 364, 7154, 10, 364, 3, 364, 5, 364, 7157, 10, 364, 3, 365, 3, 365, 3, 365, 3, 365, 3, 365, 5, 365, 7164, 10, 365, 3, 365, 5, 365, 7167, 10, 365, 3, 365, 3, 365, 3, 365, 3, 365, 3, 365, 5, 365, 7174, 10, 365, 3, 365, 3, 365, 3, 365, 3, 365, 5, 365, 7180, 10, 365, 3, 366, 3, 366, 3, 366, 3, 366, 3, 366, 3, 367, 3, 367, 3, 367, 3, 367, 3, 367, 3, 368, 3, 368, 3, 368, 3, 368, 3, 368, 3, 368, 3, 368, 3, 368, 3, 368, 3, 368, 3, 368, 3, 368, 3, 368, 3, 368, 3, 368, 3, 368, 5, 368, 7208, 10, 368, 3, 368, 3, 368, 3, 368, 3, 368, 3, 368, 3, 368, 6, 368, 7216, 10, 368, 13, 368, 14, 368, 7217, 3, 368, 3, 368, 3, 368, 3, 368, 3, 368, 3, 368, 3, 368, 3, 368, 5, 368, 7228, 10, 368, 5, 368, 7230, 10, 368, 3, 368, 3, 368, 3, 368, 3, 368, 3, 368, 3, 368, 5, 368, 7238, 10, 368, 3, 369, 3, 369, 3, 369, 3, 369, 3, 369, 3, 370, 3, 370, 3, 370, 3, 370, 3, 371, 3, 371, 3, 371, 3, 372, 3, 372, 3, 373, 3, 373, 3, 374, 3, 374, 3, 375, 3, 375, 3, 376, 3, 376, 3, 377, 3, 377, 3, 377, 3, 377, 3, 377, 3, 377, 3, 377, 3, 377, 5, 377, 7270, 10, 377, 3, 377, 3, 377, 3, 377, 3, 377, 3, 377, 3, 377, 5, 377, 7278, 10, 377, 6, 377, 7280, 10, 377, 13, 377, 14, 377, 7281, 5, 377, 7284, 10, 377, 3, 377, 3, 377, 3, 378, 3, 378, 3, 378, 3, 378, 3, 378, 3, 378, 3, 378, 3, 378, 3, 378, 3, 378, 3, 378, 5, 378, 7299, 10, 378, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 3, 379, 6, 379, 7318, 10, 379, 13, 379, 14, 379, 7319, 3, 379, 5, 379, 7323, 10, 379, 3, 380, 3, 380, 3, 380, 3, 380, 5, 380, 7329, 10, 380, 3, 381, 3, 381, 3, 381, 3, 381, 5, 381, 7335, 10, 381, 3, 382, 3, 382, 3, 382, 3, 382, 3, 382, 3, 382, 6, 382, 7343, 10, 382, 13, 382, 14, 382, 7344, 5, 382, 7347, 10, 382, 3, 383, 3, 383, 3, 383, 5, 383, 7352, 10, 383, 3, 383, 3, 383, 3, 383, 5, 383, 7357, 10, 383, 3, 383, 3, 383, 3, 383, 5, 383, 7362, 10, 383, 7, 383, 7364, 10, 383, 12, 383, 14, 383, 7367, 11, 383, 3, 383, 5, 383, 7370, 10, 383, 3, 384, 3, 384, 5, 384, 7374, 10, 384, 3, 384, 3, 384, 3, 384, 3, 384, 3, 384, 7, 384, 7381, 10, 384, 12, 384, 14, 384, 7384, 11, 384, 3, 384, 3, 384, 3, 384, 3, 384, 3, 384, 3, 384, 5, 384, 7392, 10, 384, 3, 384, 5, 384, 7395, 10, 384, 3, 384, 5, 384, 7398, 10, 384, 3, 384, 5, 384, 7401, 10, 384, 3, 384, 3, 384, 5, 384, 7405, 10, 384, 3, 385, 3, 385, 3, 385, 3, 385, 3, 385, 3, 385, 3, 385, 3, 385, 5, 385, 7415, 10, 385, 3, 386, 3, 386, 3, 386, 3, 386, 3, 386, 5, 386, 7422, 10, 386, 3, 386, 3, 386, 3, 386, 3, 386, 3, 386, 6, 386, 7429, 10, 386, 13, 386, 14, 386, 7430, 3, 387, 3, 387, 3, 388, 3, 388, 3, 388, 3, 388, 3, 389, 3, 389, 5, 389, 7441, 10, 389, 3, 389, 5, 389, 7444, 10, 389, 3, 389, 5, 389, 7447, 10, 389, 3, 389, 5, 389, 7450, 10, 389, 3, 389, 3, 389, 6, 389, 7454, 10, 389, 13, 389, 14, 389, 7455, 5, 389, 7458, 10, 389, 3, 389, 5, 389, 7461, 10, 389, 3, 390, 3, 390, 3, 390, 3, 390, 5, 390, 7467, 10, 390, 3, 390, 5, 390, 7470, 10, 390, 3, 391, 3, 391, 3, 391, 5, 391, 7475, 10, 391, 3, 392, 3, 392, 3, 392, 5, 392, 7480, 10, 392, 3, 393, 3, 393, 5, 393, 7484, 10, 393, 3, 393, 3, 393, 5, 393, 7488, 10, 393, 3, 394, 3, 394, 3, 394, 3, 394, 5, 394, 7494, 10, 394, 3, 395, 3, 395, 3, 395, 3, 395, 3, 395, 3, 395, 3, 395, 3, 395, 3, 396, 3, 396, 3, 397, 3, 397, 3, 397, 3, 397, 3, 397, 3, 397, 3, 398, 3, 398, 3, 399, 3, 399, 3, 400, 3, 400, 3, 400, 6, 400, 7519, 10, 400, 13, 400, 14, 400, 7520, 3, 401, 3, 401, 3, 401, 3, 401, 3, 401, 3, 401, 3, 401, 3, 401, 7, 401, 7531, 10, 401, 12, 401, 14, 401, 7534, 11, 401, 3, 401, 3, 401, 5, 401, 7538, 10, 401, 3, 401, 3, 401, 3, 401, 7, 401, 7543, 10, 401, 12, 401, 14, 401, 7546, 11, 401, 3, 401, 3, 401, 3, 401, 3, 401, 3, 401, 3, 401, 3, 401, 7, 401, 7555, 10, 401, 12, 401, 14, 401, 7558, 11, 401, 3, 401, 3, 401, 5, 401, 7562, 10, 401, 3, 401, 3, 401, 3, 401, 7, 401, 7567, 10, 401, 12, 401, 14, 401, 7570, 11, 401, 3, 401, 3, 401, 5, 401, 7574, 10, 401, 3, 401, 3, 401, 3, 401, 3, 401, 3, 401, 5, 401, 7581, 10, 401, 3, 401, 3, 401, 5, 401, 7585, 10, 401, 3, 402, 3, 402, 3, 402, 3, 402, 3, 402, 7, 402, 7592, 10, 402, 12, 402, 14, 402, 7595, 11, 402, 3, 402, 3, 402, 3, 402, 3, 402, 5, 402, 7601, 10, 402, 3, 403, 3, 403, 5, 403, 7605, 10, 403, 3, 403, 3, 403, 5, 403, 7609, 10, 403, 3, 403, 3, 403, 3, 403, 5, 403, 7614, 10, 403, 3, 403, 7, 403, 7617, 10, 403, 12, 403, 14, 403, 7620, 11, 403, 3, 403, 5, 403, 7623, 10, 403, 3, 404, 3, 404, 3, 404, 5, 404, 7628, 10, 404, 3, 404, 3, 404, 3, 404, 3, 404, 3, 404, 5, 404, 7635, 10, 404, 3, 405, 3, 405, 3, 405, 3, 405, 5, 405, 7641, 10, 405, 3, 405, 3, 405, 3, 405, 5, 405, 7646, 10, 405, 7, 405, 7648, 10, 405, 12, 405, 14, 405, 7651, 11, 405, 3, 405, 3, 405, 3, 405, 3, 405, 5, 405, 7657, 10, 405, 5, 405, 7659, 10, 405, 3, 405, 5, 405, 7662, 10, 405, 3, 406, 3, 406, 3, 406, 3, 406, 3, 406, 3, 406, 3, 406, 3, 407, 3, 407, 3, 407, 5, 407, 7674, 10, 407, 3, 407, 3, 407, 5, 407, 7678, 10, 407, 3, 408, 3, 408, 3, 408, 5, 408, 7683, 10, 408, 3, 408, 3, 408, 5, 408, 7687, 10, 408, 3, 408, 3, 408, 3, 408, 3, 408, 3, 408, 5, 408, 7694, 10, 408, 3, 409, 3, 409, 3, 410, 3, 410, 3, 411, 3, 411, 3, 411, 3, 411, 5, 411, 7704, 10, 411, 3, 411, 5, 411, 7707, 10, 411, 3, 412, 3, 412, 3, 412, 3, 412, 3, 412, 7, 412, 7714, 10, 412, 12, 412, 14, 412, 7717, 11, 412, 3, 412, 3, 412, 3, 412, 3, 412, 3, 412, 3, 412, 3, 412, 3, 412, 6, 412, 7727, 10, 412, 13, 412, 14, 412, 7728, 3, 412, 3, 412, 3, 412, 3, 412, 3, 412, 3, 412, 3, 412, 3, 412, 3, 412, 3, 412, 3, 412, 6, 412, 7742, 10, 412, 13, 412, 14, 412, 7743, 5, 412, 7746, 10, 412, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 413, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 3, 414, 5, 414, 7773, 10, 414, 3, 414, 5, 414, 7776, 10, 414, 3, 414, 3, 414, 3, 414, 6, 414, 7781, 10, 414, 13, 414, 14, 414, 7782, 3, 415, 3, 415, 3, 415, 3, 415, 3, 415, 3, 415, 3, 415, 3, 415, 3, 415, 3, 415, 3, 415, 3, 415, 3, 415, 3, 415, 3, 415, 3, 415, 3, 415, 3, 415, 3, 415, 3, 415, 5, 415, 7805, 10, 415, 3, 415, 5, 415, 7808, 10, 415, 6, 415, 7810, 10, 415, 13, 415, 14, 415, 7811, 3, 416, 3, 416, 3, 417, 3, 417, 3, 417, 5, 417, 7819, 10, 417, 5, 417, 7821, 10, 417, 3, 418, 3, 418, 3, 418, 3, 418, 3, 418, 3, 418, 5, 418, 7829, 10, 418, 3, 419, 3, 419, 5, 419, 7833, 10, 419, 3, 419, 3, 419, 3, 419, 5, 419, 7838, 10, 419, 3, 419, 5, 419, 7841, 10, 419, 3, 419, 5, 419, 7844, 10, 419, 3, 419, 5, 419, 7847, 10, 419, 3, 420, 3, 420, 3, 421, 3, 421, 3, 421, 5, 421, 7854, 10, 421, 3, 421, 3, 421, 3, 421, 5, 421, 7859, 10, 421, 3, 421, 3, 421, 3, 422, 3, 422, 3, 422, 3, 422, 5, 422, 7867, 10, 422, 3, 422, 5, 422, 7870, 10, 422, 3, 423, 3, 423, 3, 423, 3, 423, 3, 423, 3, 423, 3, 423, 3, 423, 3, 423, 3, 423, 5, 423, 7882, 10, 423, 3, 424, 3, 424, 3, 425, 3, 425, 3, 426, 3, 426, 3, 426, 5, 426, 7891, 10, 426, 3, 426, 5, 426, 7894, 10, 426, 3, 426, 3, 426, 5, 426, 7898, 10, 426, 3, 426, 3, 426, 3, 426, 5, 426, 7903, 10, 426, 3, 426, 3, 426, 3, 426, 5, 426, 7908, 10, 426, 3, 426, 5, 426, 7911, 10, 426, 3, 426, 5, 426, 7914, 10, 426, 3, 426, 5, 426, 7917, 10, 426, 5, 426, 7919, 10, 426, 3, 426, 7, 426, 7922, 10, 426, 12, 426, 14, 426, 7925, 11, 426, 3, 426, 5, 426, 7928, 10, 426, 3, 427, 3, 427, 5, 427, 7932, 10, 427, 3, 427, 5, 427, 7935, 10, 427, 3, 427, 5, 427, 7938, 10, 427, 3, 427, 7, 427, 7941, 10, 427, 12, 427, 14, 427, 7944, 11, 427, 3, 428, 3, 428, 3, 428, 3, 428, 3, 428, 3, 428, 5, 428, 7952, 10, 428, 5, 428, 7954, 10, 428, 3, 428, 3, 428, 3, 428, 3, 429, 3, 429, 3, 429, 3, 430, 3, 430, 3, 430, 3, 430, 5, 430, 7966, 10, 430, 3, 430, 5, 430, 7969, 10, 430, 3, 430, 5, 430, 7972, 10, 430, 3, 430, 3, 430, 3, 430, 3, 430, 3, 430, 3, 430, 3, 430, 3, 430, 3, 430, 3, 430, 6, 430, 7984, 10, 430, 13, 430, 14, 430, 7985, 3, 430, 3, 430, 5, 430, 7990, 10, 430, 3, 430, 3, 430, 5, 430, 7994, 10, 430, 3, 430, 5, 430, 7997, 10, 430, 3, 431, 3, 431, 3, 432, 5, 432, 8002, 10, 432, 3, 432, 3, 432, 3, 432, 5, 432, 8007, 10, 432, 3, 432, 3, 432, 3, 432, 3, 432, 3, 432, 5, 432, 8014, 10, 432, 3, 432, 3, 432, 3, 432, 3, 432, 5, 432, 8020, 10, 432, 3, 433, 3, 433, 3, 434, 3, 434, 3, 434, 3, 434, 5, 434, 8028, 10, 434, 3, 435, 3, 435, 3, 436, 3, 436, 3, 436, 3, 436, 3, 437, 3, 437, 3, 437, 7, 437, 8039, 10, 437, 12, 437, 14, 437, 8042, 11, 437, 3, 437, 5, 437, 8045, 10, 437, 3, 437, 3, 437, 3, 437, 7, 437, 8050, 10, 437, 12, 437, 14, 437, 8053, 11, 437, 3, 437, 5, 437, 8056, 10, 437, 3, 437, 3, 437, 3, 437, 3, 437, 3, 437, 3, 437, 3, 437, 3, 437, 3, 437, 3, 437, 7, 437, 8068, 10, 437, 12, 437, 14, 437, 8071, 11, 437, 3, 437, 3, 437, 5, 437, 8075, 10, 437, 3, 437, 3, 437, 5, 437, 8079, 10, 437, 3, 437, 3, 437, 3, 437, 3, 437, 3, 437, 3, 437, 3, 437, 6, 437, 8088, 10, 437, 13, 437, 14, 437, 8089, 5, 437, 8092, 10, 437, 3, 438, 3, 438, 3, 439, 3, 439, 3, 440, 3, 440, 3, 440, 3, 441, 3, 441, 3, 441, 3, 441, 3, 441, 3, 441, 3, 441, 7, 441, 8108, 10, 441, 12, 441, 14, 441, 8111, 11, 441, 3, 441, 3, 441, 5, 441, 8115, 10, 441, 3, 441, 5, 441, 8118, 10, 441, 3, 441, 5, 441, 8121, 10, 441, 3, 441, 3, 441, 3, 441, 5, 441, 8126, 10, 441, 5, 441, 8128, 10, 441, 3, 442, 3, 442, 3, 442, 5, 442, 8133, 10, 442, 3, 442, 3, 442, 3, 442, 3, 442, 5, 442, 8139, 10, 442, 3, 442, 6, 442, 8142, 10, 442, 13, 442, 14, 442, 8143, 3, 443, 3, 443, 3, 443, 3, 443, 5, 443, 8150, 10, 443, 3, 444, 3, 444, 3, 444, 3, 444, 3, 444, 5, 444, 8157, 10, 444, 3, 445, 3, 445, 3, 445, 3, 445, 3, 446, 3, 446, 3, 446, 3, 446, 3, 447, 3, 447, 3, 447, 3, 447, 3, 448, 3, 448, 3, 448, 3, 448, 3, 448, 5, 448, 8176, 10, 448, 3, 449, 3, 449, 3, 449, 3, 449, 3, 450, 3, 450, 3, 450, 3, 450, 3, 450, 5, 450, 8187, 10, 450, 3, 451, 3, 451, 3, 451, 5, 451, 8192, 10, 451, 3, 452, 3, 452, 3, 452, 3, 452, 5, 452, 8198, 10, 452, 3, 453, 3, 453, 5, 453, 8202, 10, 453, 3, 453, 3, 453, 3, 453, 3, 453, 6, 453, 8208, 10, 453, 13, 453, 14, 453, 8209, 5, 453, 8212, 10, 453, 3, 453, 3, 453, 3, 453, 3, 454, 3, 454, 3, 454, 3, 455, 3, 455, 3, 455, 5, 455, 8223, 10, 455, 3, 456, 3, 456, 3, 456, 3, 456, 3, 457, 3, 457, 3, 457, 5, 457, 8232, 10, 457, 3, 457, 3, 457, 3, 457, 5, 457, 8237, 10, 457, 3, 457, 3, 457, 5, 457, 8241, 10, 457, 3, 457, 5, 457, 8244, 10, 457, 3, 458, 3, 458, 3, 458, 3, 458, 3, 458, 3, 458, 3, 459, 3, 459, 3, 459, 3, 459, 3, 459, 3, 459, 5, 459, 8258, 10, 459, 3, 459, 3, 459, 3, 460, 3, 460, 7, 460, 8264, 10, 460, 12, 460, 14, 460, 8267, 11, 460, 3, 460, 5, 460, 8270, 10, 460, 3, 460, 5, 460, 8273, 10, 460, 3, 461, 3, 461, 3, 461, 3, 462, 6, 462, 8279, 10, 462, 13, 462, 14, 462, 8280, 3, 463, 3, 463, 3, 463, 3, 463, 3, 463, 3, 463, 3, 463, 3, 463, 3, 463, 3, 463, 5, 463, 8293, 10, 463, 3, 464, 3, 464, 5, 464, 8297, 10, 464, 3, 464, 3, 464, 3, 464, 5, 464, 8302, 10, 464, 3, 464, 5, 464, 8305, 10, 464, 3, 464, 3, 464, 3, 465, 3, 465, 3, 465, 3, 465, 3, 465, 3, 465, 3, 465, 3, 465, 3, 465, 5, 465, 8318, 10, 465, 3, 465, 3, 465, 5, 465, 8322, 10, 465, 3, 465, 3, 465, 3, 466, 3, 466, 3, 466, 3, 466, 3, 466, 3, 466, 7, 466, 8332, 10, 466, 12, 466, 14, 466, 8335, 11, 466, 3, 466, 3, 466, 5, 466, 8339, 10, 466, 3, 466, 3, 466, 5, 466, 8343, 10, 466, 3, 466, 3, 466, 5, 466, 8347, 10, 466, 3, 466, 3, 466, 3, 467, 3, 467, 5, 467, 8353, 10, 467, 3, 467, 5, 467, 8356, 10, 467, 3, 467, 5, 467, 8359, 10, 467, 3, 468, 3, 468, 3, 468, 3, 468, 3, 469, 3, 469, 3, 469, 3, 469, 3, 469, 3, 469, 3, 469, 3, 469, 3, 469, 3, 469, 3, 469, 3, 469, 3, 469, 3, 469, 3, 469, 3, 469, 3, 469, 3, 469, 3, 469, 3, 469, 3, 469, 5, 469, 8386, 10, 469, 3, 469, 3, 469, 6, 469, 8390, 10, 469, 13, 469, 14, 469, 8391, 3, 469, 3, 469, 5, 469, 8396, 10, 469, 3, 469, 3, 469, 3, 470, 3, 470, 3, 470, 3, 470, 3, 470, 7, 470, 8405, 10, 470, 12, 470, 14, 470, 8408, 11, 470, 3, 470, 3, 470, 3, 471, 3, 471, 5, 471, 8414, 10, 471, 3, 471, 3, 471, 5, 471, 8418, 10, 471, 3, 471, 5, 471, 8421, 10, 471, 3, 472, 3, 472, 3, 472, 3, 472, 5, 472, 8427, 10, 472, 3, 473, 3, 473, 3, 473, 3, 473, 3, 473, 3, 473, 3, 473, 5, 473, 8436, 10, 473, 3, 473, 3, 473, 3, 474, 3, 474, 3, 474, 3, 474, 5, 474, 8444, 10, 474, 3, 474, 3, 474, 5, 474, 8448, 10, 474, 3, 475, 3, 475, 5, 475, 8452, 10, 475, 3, 475, 3, 475, 3, 475, 3, 476, 3, 476, 3, 476, 5, 476, 8460, 10, 476, 3, 476, 3, 476, 3, 476, 3, 476, 3, 476, 3, 476, 3, 476, 5, 476, 8469, 10, 476, 3, 477, 3, 477, 3, 477, 3, 477, 6, 477, 8475, 10, 477, 13, 477, 14, 477, 8476, 3, 478, 3, 478, 3, 478, 3, 478, 3, 478, 3, 478, 3, 479, 3, 479, 3, 479, 3, 479, 3, 479, 3, 479, 3, 479, 3, 479, 3, 479, 3, 479, 3, 479, 3, 479, 3, 479, 3, 479, 3, 479, 3, 479, 3, 479, 5, 479, 8502, 10, 479, 3, 480, 6, 480, 8505, 10, 480, 13, 480, 14, 480, 8506, 3, 481, 3, 481, 5, 481, 8511, 10, 481, 3, 481, 3, 481, 3, 481, 3, 482, 3, 482, 5, 482, 8518, 10, 482, 3, 482, 3, 482, 5, 482, 8522, 10, 482, 3, 483, 3, 483, 5, 483, 8526, 10, 483, 3, 483, 3, 483, 5, 483, 8530, 10, 483, 3, 484, 3, 484, 3, 484, 3, 485, 3, 485, 3, 485, 3, 485, 3, 485, 7, 485, 8540, 10, 485, 12, 485, 14, 485, 8543, 11, 485, 3, 485, 5, 485, 8546, 10, 485, 3, 485, 3, 485, 3, 485, 3, 486, 3, 486, 3, 486, 3, 486, 3, 486, 3, 487, 3, 487, 3, 487, 3, 488, 5, 488, 8560, 10, 488, 3, 488, 3, 488, 3, 488, 3, 488, 5, 488, 8566, 10, 488, 3, 488, 3, 488, 3, 488, 3, 488, 3, 488, 5, 488, 8573, 10, 488, 3, 489, 3, 489, 3, 489, 5, 489, 8578, 10, 489, 3, 489, 3, 489, 3, 489, 3, 489, 3, 489, 3, 489, 3, 489, 3, 489, 3, 489, 5, 489, 8589, 10, 489, 3, 489, 5, 489, 8592, 10, 489, 3, 489, 3, 489, 3, 489, 3, 489, 5, 489, 8598, 10, 489, 5, 489, 8600, 10, 489, 3, 490, 3, 490, 3, 490, 3, 490, 3, 490, 3, 490, 3, 490, 5, 490, 8609, 10, 490, 3, 491, 3, 491, 3, 491, 3, 491, 3, 491, 3, 491, 3, 491, 3, 491, 5, 491, 8619, 10, 491, 3, 491, 3, 491, 3, 491, 5, 491, 8624, 10, 491, 3, 492, 3, 492, 3, 492, 3, 492, 3, 492, 3, 493, 3, 493, 3, 494, 3, 494, 3, 495, 3, 495, 3, 496, 3, 496, 5, 496, 8639, 10, 496, 3, 497, 3, 497, 5, 497, 8643, 10, 497, 3, 498, 5, 498, 8646, 10, 498, 3, 498, 3, 498, 5, 498, 8650, 10, 498, 3, 499, 3, 499, 5, 499, 8654, 10, 499, 3, 500, 3, 500, 3, 500, 3, 500, 3, 500, 3, 500, 3, 501, 3, 501, 3, 501, 3, 501, 6, 501, 8666, 10, 501, 13, 501, 14, 501, 8667, 5, 501, 8670, 10, 501, 3, 501, 3, 501, 5, 501, 8674, 10, 501, 3, 502, 3, 502, 3, 502, 3, 502, 7, 502, 8680, 10, 502, 12, 502, 14, 502, 8683, 11, 502, 3, 502, 3, 502, 3, 502, 3, 503, 5, 503, 8689, 10, 503, 3, 503, 6, 503, 8692, 10, 503, 13, 503, 14, 503, 8693, 5, 503, 8696, 10, 503, 3, 503, 3, 503, 3, 504, 5, 504, 8701, 10, 504, 3, 504, 6, 504, 8704, 10, 504, 13, 504, 14, 504, 8705, 3, 504, 3, 504, 3, 505, 3, 505, 3, 505, 3, 505, 5, 505, 8714, 10, 505, 3, 506, 3, 506, 3, 506, 3, 506, 3, 506, 5, 506, 8721, 10, 506, 3, 506, 3, 506, 5, 506, 8725, 10, 506, 3, 506, 5, 506, 8728, 10, 506, 3, 507, 3, 507, 3, 507, 3, 508, 3, 508, 3, 508, 3, 508, 3, 508, 3, 508, 3, 508, 5, 508, 8740, 10, 508, 3, 509, 3, 509, 3, 509, 3, 509, 5, 509, 8746, 10, 509, 3, 510, 3, 510, 3, 510, 3, 511, 3, 511, 3, 511, 3, 511, 5, 511, 8755, 10, 511, 3, 511, 5, 511, 8758, 10, 511, 3, 512, 3, 512, 3, 512, 3, 512, 3, 512, 3, 512, 7, 512, 8766, 10, 512, 12, 512, 14, 512, 8769, 11, 512, 3, 512, 3, 512, 3, 512, 3, 512, 3, 512, 3, 512, 7, 512, 8777, 10, 512, 12, 512, 14, 512, 8780, 11, 512, 5, 512, 8782, 10, 512, 3, 513, 3, 513, 3, 513, 3, 513, 3, 513, 5, 513, 8789, 10, 513, 3, 513, 5, 513, 8792, 10, 513, 3, 514, 3, 514, 3, 514, 3, 514, 3, 514, 5, 514, 8799, 10, 514, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 3, 515, 5, 515, 8810, 10, 515, 3, 515, 3, 515, 3, 515, 3, 515, 5, 515, 8816, 10, 515, 3, 515, 3, 515, 5, 515, 8820, 10, 515, 3, 516, 3, 516, 3, 516, 3, 516, 3, 516, 3, 516, 7, 516, 8828, 10, 516, 12, 516, 14, 516, 8831, 11, 516, 5, 516, 8833, 10, 516, 3, 516, 3, 516, 3, 517, 3, 517, 5, 517, 8839, 10, 517, 3, 517, 3, 517, 3, 517, 3, 517, 3, 517, 3, 517, 3, 517, 3, 517, 3, 517, 5, 517, 8850, 10, 517, 5, 517, 8852, 10, 517, 5, 517, 8854, 10, 517, 3, 517, 5, 517, 8857, 10, 517, 3, 518, 3, 518, 5, 518, 8861, 10, 518, 3, 518, 5, 518, 8864, 10, 518, 3, 519, 3, 519, 5, 519, 8868, 10, 519, 3, 519, 3, 519, 5, 519, 8872, 10, 519, 3, 519, 3, 519, 3, 519, 5, 519, 8877, 10, 519, 3, 520, 3, 520, 3, 520, 3, 521, 3, 521, 3, 521, 3, 521, 3, 521, 3, 521, 5, 521, 8888, 10, 521, 3, 521, 3, 521, 5, 521, 8892, 10, 521, 3, 521, 3, 521, 3, 521, 3, 521, 3, 521, 3, 521, 5, 521, 8900, 10, 521, 3, 522, 5, 522, 8903, 10, 522, 3, 522, 3, 522, 3, 523, 3, 523, 3, 523, 3, 523, 3, 523, 7, 523, 8912, 10, 523, 12, 523, 14, 523, 8915, 11, 523, 3, 524, 3, 524, 3, 524, 3, 524, 7, 524, 8921, 10, 524, 12, 524, 14, 524, 8924, 11, 524, 3, 525, 3, 525, 5, 525, 8928, 10, 525, 3, 525, 3, 525, 3, 525, 3, 525, 5, 525, 8934, 10, 525, 3, 525, 3, 525, 5, 525, 8938, 10, 525, 3, 525, 5, 525, 8941, 10, 525, 3, 526, 3, 526, 3, 526, 3, 526, 3, 526, 3, 526, 5, 526, 8949, 10, 526, 3, 526, 5, 526, 8952, 10, 526, 3, 526, 3, 526, 5, 526, 8956, 10, 526, 3, 526, 3, 526, 5, 526, 8960, 10, 526, 3, 526, 3, 526, 3, 526, 5, 526, 8965, 10, 526, 3, 526, 5, 526, 8968, 10, 526, 3, 526, 3, 526, 5, 526, 8972, 10, 526, 3, 526, 3, 526, 5, 526, 8976, 10, 526, 7, 526, 8978, 10, 526, 12, 526, 14, 526, 8981, 11, 526, 3, 526, 3, 526, 3, 526, 3, 527, 3, 527, 3, 527, 3, 527, 3, 527, 3, 527, 3, 527, 3, 527, 3, 527, 3, 528, 3, 528, 7, 528, 8997, 10, 528, 12, 528, 14, 528, 9000, 11, 528, 3, 529, 3, 529, 3, 529, 3, 529, 3, 529, 5, 529, 9007, 10, 529, 3, 530, 3, 530, 5, 530, 9011, 10, 530, 3, 530, 3, 530, 5, 530, 9015, 10, 530, 3, 530, 3, 530, 3, 531, 3, 531, 5, 531, 9021, 10, 531, 3, 531, 3, 531, 5, 531, 9025, 10, 531, 3, 531, 3, 531, 5, 531, 9029, 10, 531, 3, 531, 5, 531, 9032, 10, 531, 3, 531, 5, 531, 9035, 10, 531, 3, 531, 5, 531, 9038, 10, 531, 3, 531, 5, 531, 9041, 10, 531, 3, 532, 3, 532, 3, 532, 3, 532, 7, 532, 9047, 10, 532, 12, 532, 14, 532, 9050, 11, 532, 5, 532, 9052, 10, 532, 3, 533, 3, 533, 3, 533, 3, 534, 3, 534, 3, 534, 3, 534, 3, 534, 3, 534, 5, 534, 9063, 10, 534, 5, 534, 9065, 10, 534, 3, 535, 3, 535, 3, 535, 7, 535, 9070, 10, 535, 12, 535, 14, 535, 9073, 11, 535, 3, 536, 3, 536, 7, 536, 9077, 10, 536, 12, 536, 14, 536, 9080, 11, 536, 3, 536, 3, 536, 5, 536, 9084, 10, 536, 3, 537, 3, 537, 7, 537, 9088, 10, 537, 12, 537, 14, 537, 9091, 11, 537, 3, 537, 5, 537, 9094, 10, 537, 3, 538, 3, 538, 3, 538, 5, 538, 9099, 10, 538, 3, 538, 3, 538, 3, 538, 7, 538, 9104, 10, 538, 12, 538, 14, 538, 9107, 11, 538, 3, 538, 3, 538, 3, 538, 5, 538, 9112, 10, 538, 3, 538, 3, 538, 3, 538, 3, 538, 3, 538, 5, 538, 9119, 10, 538, 3, 539, 5, 539, 9122, 10, 539, 3, 539, 5, 539, 9125, 10, 539, 3, 539, 3, 539, 5, 539, 9129, 10, 539, 3, 539, 3, 539, 3, 539, 5, 539, 9134, 10, 539, 3, 539, 3, 539, 7, 539, 9138, 10, 539, 12, 539, 14, 539, 9141, 11, 539, 3, 540, 3, 540, 3, 540, 3, 541, 3, 541, 3, 541, 3, 542, 3, 542, 5, 542, 9151, 10, 542, 3, 543, 3, 543, 3, 543, 3, 543, 3, 543, 5, 543, 9158, 10, 543, 3, 543, 3, 543, 5, 543, 9162, 10, 543, 3, 544, 3, 544, 3, 544, 3, 544, 3, 544, 3, 544, 3, 544, 3, 544, 5, 544, 9172, 10, 544, 3, 545, 3, 545, 5, 545, 9176, 10, 545, 3, 545, 3, 545, 3, 545, 3, 545, 7, 545, 9182, 10, 545, 12, 545, 14, 545, 9185, 11, 545, 3, 545, 3, 545, 3, 545, 3, 545, 3, 546, 3, 546, 3, 546, 3, 546, 3, 546, 5, 546, 9196, 10, 546, 3, 547, 3, 547, 3, 547, 5, 547, 9201, 10, 547, 3, 548, 3, 548, 3, 548, 3, 548, 3, 548, 3, 548, 7, 548, 9209, 10, 548, 12, 548, 14, 548, 9212, 11, 548, 3, 548, 3, 548, 3, 548, 7, 548, 9217, 10, 548, 12, 548, 14, 548, 9220, 11, 548, 5, 548, 9222, 10, 548, 3, 548, 3, 548, 3, 549, 3, 549, 5, 549, 9228, 10, 549, 3, 550, 3, 550, 3, 550, 5, 550, 9233, 10, 550, 3, 550, 5, 550, 9236, 10, 550, 3, 551, 3, 551, 3, 551, 5, 551, 9241, 10, 551, 3, 551, 3, 551, 3, 551, 5, 551, 9246, 10, 551, 3, 551, 3, 551, 3, 551, 3, 551, 3, 552, 3, 552, 3, 552, 3, 552, 3, 552, 7, 552, 9257, 10, 552, 12, 552, 14, 552, 9260, 11, 552, 3, 552, 3, 552, 3, 553, 3, 553, 5, 553, 9266, 10, 553, 3, 553, 3, 553, 3, 553, 3, 553, 3, 553, 3, 553, 7, 553, 9274, 10, 553, 12, 553, 14, 553, 9277, 11, 553, 3, 553, 3, 553, 5, 553, 9281, 10, 553, 5, 553, 9283, 10, 553, 3, 554, 3, 554, 3, 554, 5, 554, 9288, 10, 554, 3, 554, 3, 554, 5, 554, 9292, 10, 554, 3, 554, 3, 554, 3, 554, 3, 554, 5, 554, 9298, 10, 554, 3, 554, 3, 554, 5, 554, 9302, 10, 554, 3, 555, 3, 555, 3, 555, 3, 555, 3, 556, 3, 556, 3, 556, 3, 556, 3, 556, 7, 556, 9313, 10, 556, 12, 556, 14, 556, 9316, 11, 556, 3, 556, 5, 556, 9319, 10, 556, 3, 556, 3, 556, 3, 556, 3, 556, 3, 556, 3, 556, 7, 556, 9327, 10, 556, 12, 556, 14, 556, 9330, 11, 556, 5, 556, 9332, 10, 556, 5, 556, 9334, 10, 556, 3, 557, 3, 557, 3, 557, 5, 557, 9339, 10, 557, 3, 558, 3, 558, 3, 558, 3, 558, 3, 558, 7, 558, 9346, 10, 558, 12, 558, 14, 558, 9349, 11, 558, 3, 558, 3, 558, 3, 559, 3, 559, 3, 559, 3, 559, 3, 559, 3, 559, 7, 559, 9359, 10, 559, 12, 559, 14, 559, 9362, 11, 559, 3, 559, 3, 559, 3, 560, 3, 560, 3, 560, 5, 560, 9369, 10, 560, 3, 560, 3, 560, 5, 560, 9373, 10, 560, 3, 561, 3, 561, 3, 561, 3, 562, 3, 562, 7, 562, 9380, 10, 562, 12, 562, 14, 562, 9383, 11, 562, 3, 562, 5, 562, 9386, 10, 562, 3, 562, 7, 562, 9389, 10, 562, 12, 562, 14, 562, 9392, 11, 562, 3, 562, 3, 562, 3, 563, 3, 563, 3, 563, 3, 563, 3, 563, 3, 563, 5, 563, 9402, 10, 563, 5, 563, 9404, 10, 563, 3, 564, 3, 564, 3, 564, 3, 564, 3, 565, 3, 565, 3, 565, 3, 565, 3, 565, 3, 565, 3, 565, 3, 565, 7, 565, 9418, 10, 565, 12, 565, 14, 565, 9421, 11, 565, 3, 566, 3, 566, 5, 566, 9425, 10, 566, 3, 566, 3, 566, 7, 566, 9429, 10, 566, 12, 566, 14, 566, 9432, 11, 566, 3, 566, 3, 566, 3, 567, 5, 567, 9437, 10, 567, 3, 567, 3, 567, 3, 567, 3, 567, 3, 567, 3, 567, 3, 568, 3, 568, 3, 568, 3, 568, 3, 569, 3, 569, 3, 569, 3, 569, 7, 569, 9453, 10, 569, 12, 569, 14, 569, 9456, 11, 569, 3, 569, 3, 569, 3, 570, 3, 570, 5, 570, 9462, 10, 570, 3, 570, 5, 570, 9465, 10, 570, 3, 571, 5, 571, 9468, 10, 571, 3, 571, 3, 571, 3, 571, 3, 571, 7, 571, 9474, 10, 571, 12, 571, 14, 571, 9477, 11, 571, 5, 571, 9479, 10, 571, 3, 571, 3, 571, 3, 572, 3, 572, 3, 572, 3, 572, 5, 572, 9487, 10, 572, 5, 572, 9489, 10, 572, 3, 572, 3, 572, 5, 572, 9493, 10, 572, 3, 572, 5, 572, 9496, 10, 572, 3, 573, 3, 573, 3, 573, 5, 573, 9501, 10, 573, 5, 573, 9503, 10, 573, 3, 573, 3, 573, 5, 573, 9507, 10, 573, 3, 573, 3, 573, 3, 573, 3, 574, 3, 574, 3, 575, 3, 575, 3, 575, 3, 575, 3, 575, 5, 575, 9519, 10, 575, 3, 576, 3, 576, 3, 576, 3, 576, 3, 576, 3, 577, 3, 577, 5, 577, 9528, 10, 577, 3, 577, 3, 577, 3, 577, 3, 577, 7, 577, 9534, 10, 577, 12, 577, 14, 577, 9537, 11, 577, 3, 578, 3, 578, 5, 578, 9541, 10, 578, 3, 578, 3, 578, 5, 578, 9545, 10, 578, 3, 579, 3, 579, 3, 579, 3, 579, 3, 580, 3, 580, 3, 580, 3, 580, 5, 580, 9555, 10, 580, 5, 580, 9557, 10, 580, 3, 580, 3, 580, 3, 580, 3, 580, 5, 580, 9563, 10, 580, 3, 581, 3, 581, 3, 581, 5, 581, 9568, 10, 581, 3, 581, 5, 581, 9571, 10, 581, 3, 582, 3, 582, 3, 582, 3, 583, 3, 583, 3, 583, 3, 583, 3, 583, 5, 583, 9581, 10, 583, 3, 584, 3, 584, 3, 584, 3, 584, 5, 584, 9587, 10, 584, 3, 584, 5, 584, 9590, 10, 584, 3, 584, 5, 584, 9593, 10, 584, 3, 585, 3, 585, 3, 585, 3, 585, 7, 585, 9599, 10, 585, 12, 585, 14, 585, 9602, 11, 585, 3, 585, 3, 585, 3, 585, 3, 585, 3, 585, 3, 585, 3, 585, 5, 585, 9611, 10, 585, 3, 586, 3, 586, 3, 586, 3, 586, 3, 586, 3, 586, 3, 586, 3, 586, 5, 586, 9621, 10, 586, 3, 587, 3, 587, 5, 587, 9625, 10, 587, 3, 587, 3, 587, 5, 587, 9629, 10, 587, 3, 587, 5, 587, 9632, 10, 587, 3, 587, 5, 587, 9635, 10, 587, 3, 588, 3, 588, 3, 588, 5, 588, 9640, 10, 588, 3, 589, 3, 589, 3, 589, 5, 589, 9645, 10, 589, 3, 589, 5, 589, 9648, 10, 589, 3, 589, 5, 589, 9651, 10, 589, 3, 590, 3, 590, 6, 590, 9655, 10, 590, 13, 590, 14, 590, 9656, 3, 590, 5, 590, 9660, 10, 590, 3, 590, 3, 590, 3, 591, 3, 591, 5, 591, 9666, 10, 591, 3, 591, 5, 591, 9669, 10, 591, 3, 592, 5, 592, 9672, 10, 592, 3, 592, 6, 592, 9675, 10, 592, 13, 592, 14, 592, 9676, 3, 592, 5, 592, 9680, 10, 592, 3, 593, 3, 593, 3, 593, 3, 593, 6, 593, 9686, 10, 593, 13, 593, 14, 593, 9687, 3, 594, 3, 594, 6, 594, 9692, 10, 594, 13, 594, 14, 594, 9693, 3, 595, 3, 595, 3, 595, 5, 595, 9699, 10, 595, 3, 596, 3, 596, 3, 596, 5, 596, 9704, 10, 596, 3, 596, 3, 596, 3, 597, 3, 597, 3, 597, 3, 597, 5, 597, 9712, 10, 597, 3, 597, 3, 597, 3, 597, 3, 597, 3, 597, 3, 597, 3, 597, 3, 597, 5, 597, 9722, 10, 597, 3, 597, 3, 597, 5, 597, 9726, 10, 597, 5, 597, 9728, 10, 597, 3, 597, 5, 597, 9731, 10, 597, 3, 598, 3, 598, 3, 598, 3, 598, 3, 598, 3, 598, 3, 598, 3, 598, 7, 598, 9741, 10, 598, 12, 598, 14, 598, 9744, 11, 598, 3, 598, 5, 598, 9747, 10, 598, 3, 598, 5, 598, 9750, 10, 598, 3, 599, 3, 599, 3, 599, 3, 599, 3, 600, 3, 600, 3, 600, 3, 601, 3, 601, 3, 601, 3, 601, 3, 601, 3, 601, 5, 601, 9765, 10, 601, 3, 601, 3, 601, 3, 601, 5, 601, 9770, 10, 601, 3, 601, 3, 601, 5, 601, 9774, 10, 601, 3, 602, 3, 602, 3, 602, 3, 602, 3, 602, 5, 602, 9781, 10, 602, 3, 602, 5, 602, 9784, 10, 602, 3, 603, 3, 603, 3, 603, 3, 603, 3, 603, 7, 603, 9791, 10, 603, 12, 603, 14, 603, 9794, 11, 603, 3, 603, 3, 603, 3, 603, 3, 603, 5, 603, 9800, 10, 603, 3, 604, 3, 604, 3, 604, 5, 604, 9805, 10, 604, 3, 605, 3, 605, 5, 605, 9809, 10, 605, 3, 606, 3, 606, 3, 606, 3, 606, 3, 606, 3, 606, 5, 606, 9817, 10, 606, 3, 606, 3, 606, 3, 606, 3, 606, 5, 606, 9823, 10, 606, 3, 607, 3, 607, 3, 607, 3, 607, 3, 607, 3, 607, 5, 607, 9831, 10, 607, 3, 607, 5, 607, 9834, 10, 607, 3, 608, 3, 608, 3, 608, 3, 608, 3, 609, 3, 609, 3, 609, 5, 609, 9843, 10, 609, 3, 609, 5, 609, 9846, 10, 609, 3, 609, 5, 609, 9849, 10, 609, 3, 610, 3, 610, 3, 610, 3, 611, 3, 611, 3, 611, 3, 611, 5, 611, 9858, 10, 611, 3, 612, 3, 612, 3, 612, 3, 612, 5, 612, 9864, 10, 612, 3, 612, 3, 612, 3, 612, 3, 612, 5, 612, 9870, 10, 612, 5, 612, 9872, 10, 612, 3, 613, 3, 613, 3, 613, 3, 613, 3, 613, 3, 613, 3, 613, 3, 613, 3, 613, 5, 613, 9883, 10, 613, 5, 613, 9885, 10, 613, 3, 614, 3, 614, 3, 614, 3, 614, 3, 614, 3, 614, 3, 614, 5, 614, 9894, 10, 614, 5, 614, 9896, 10, 614, 3, 615, 3, 615, 5, 615, 9900, 10, 615, 3, 615, 3, 615, 3, 615, 3, 615, 5, 615, 9906, 10, 615, 3, 615, 3, 615, 5, 615, 9910, 10, 615, 3, 616, 3, 616, 3, 616, 3, 616, 3, 616, 3, 617, 3, 617, 3, 618, 3, 618, 3, 618, 7, 618, 9922, 10, 618, 12, 618, 14, 618, 9925, 11, 618, 3, 619, 3, 619, 5, 619, 9929, 10, 619, 3, 620, 3, 620, 3, 620, 3, 620, 3, 620, 3, 621, 3, 621, 3, 621, 3, 621, 3, 621, 3, 621, 3, 621, 3, 621, 3, 621, 7, 621, 9945, 10, 621, 12, 621, 14, 621, 9948, 11, 621, 3, 622, 5, 622, 9951, 10, 622, 3, 622, 3, 622, 3, 622, 5, 622, 9956, 10, 622, 3, 622, 7, 622, 9959, 10, 622, 12, 622, 14, 622, 9962, 11, 622, 3, 623, 3, 623, 3, 623, 3, 623, 3, 623, 3, 623, 3, 623, 3, 623, 3, 623, 5, 623, 9973, 10, 623, 3, 623, 3, 623, 5, 623, 9977, 10, 623, 3, 623, 3, 623, 3, 623, 7, 623, 9982, 10, 623, 12, 623, 14, 623, 9985, 11, 623, 3, 623, 3, 623, 5, 623, 9989, 10, 623, 3, 624, 3, 624, 3, 624, 5, 624, 9994, 10, 624, 3, 624, 5, 624, 9997, 10, 624, 3, 625, 3, 625, 3, 625, 3, 625, 3, 625, 3, 625, 3, 625, 7, 625, 10006, 10, 625, 12, 625, 14, 625, 10009, 11, 625, 3, 626, 3, 626, 5, 626, 10013, 10, 626, 3, 626, 3, 626, 3, 626, 3, 626, 3, 626, 3, 626, 3, 626, 3, 626, 5, 626, 10023, 10, 626, 5, 626, 10025, 10, 626, 5, 626, 10027, 10, 626, 3, 627, 3, 627, 3, 627, 3, 627, 3, 627, 3, 627, 3, 627, 3, 627, 5, 627, 10037, 10, 627, 3, 627, 3, 627, 5, 627, 10041, 10, 627, 5, 627, 10043, 10, 627, 3, 628, 3, 628, 3, 628, 3, 628, 3, 628, 3, 628, 3, 628, 3, 628, 7, 628, 10053, 10, 628, 12, 628, 14, 628, 10056, 11, 628, 3, 628, 3, 628, 3, 628, 3, 628, 3, 628, 5, 628, 10063, 10, 628, 3, 629, 3, 629, 3, 629, 3, 629, 3, 630, 3, 630, 3, 630, 3, 630, 3, 630, 3, 630, 3, 630, 5, 630, 10076, 10, 630, 3, 630, 5, 630, 10079, 10, 630, 3, 630, 3, 630, 3, 630, 3, 630, 3, 630, 3, 630, 3, 630, 3, 630, 3, 630, 3, 630, 7, 630, 10091, 10, 630, 12, 630, 14, 630, 10094, 11, 630, 3, 631, 3, 631, 3, 631, 3, 631, 3, 631, 5, 631, 10101, 10, 631, 3, 631, 3, 631, 3, 631, 3, 631, 3, 631, 3, 631, 5, 631, 10109, 10, 631, 3, 631, 3, 631, 3, 631, 3, 631, 3, 631, 5, 631, 10116, 10, 631, 3, 631, 3, 631, 5, 631, 10120, 10, 631, 3, 632, 3, 632, 3, 632, 3, 632, 3, 632, 5, 632, 10127, 10, 632, 3, 633, 3, 633, 5, 633, 10131, 10, 633, 3, 633, 3, 633, 3, 633, 5, 633, 10136, 10, 633, 7, 633, 10138, 10, 633, 12, 633, 14, 633, 10141, 11, 633, 3, 633, 3, 633, 3, 633, 7, 633, 10146, 10, 633, 12, 633, 14, 633, 10149, 11, 633, 3, 633, 5, 633, 10152, 10, 633, 3, 634, 3, 634, 3, 634, 3, 634, 3, 634, 5, 634, 10159, 10, 634, 3, 634, 3, 634, 3, 634, 5, 634, 10164, 10, 634, 3, 634, 3, 634, 3, 634, 3, 634, 3, 634, 3, 634, 3, 634, 5, 634, 10173, 10, 634, 3, 635, 3, 635, 3, 635, 3, 635, 3, 635, 3, 635, 3, 635, 5, 635, 10182, 10, 635, 3, 635, 5, 635, 10185, 10, 635, 3, 635, 3, 635, 3, 636, 3, 636, 3, 636, 3, 636, 3, 636, 3, 636, 3, 636, 3, 636, 3, 636, 3, 636, 3, 636, 3, 636, 3, 636, 3, 636, 3, 636, 3, 636, 5, 636, 10205, 10, 636, 3, 637, 3, 637, 5, 637, 10209, 10, 637, 3, 638, 5, 638, 10212, 10, 638, 3, 638, 3, 638, 3, 638, 6, 638, 10217, 10, 638, 13, 638, 14, 638, 10218, 3, 638, 5, 638, 10222, 10, 638, 3, 638, 3, 638, 5, 638, 10226, 10, 638, 3, 638, 5, 638, 10229, 10, 638, 3, 639, 3, 639, 3, 639, 3, 639, 3, 639, 5, 639, 10236, 10, 639, 3, 640, 5, 640, 10239, 10, 640, 3, 640, 3, 640, 6, 640, 10243, 10, 640, 13, 640, 14, 640, 10244, 3, 640, 5, 640, 10248, 10, 640, 3, 640, 3, 640, 5, 640, 10252, 10, 640, 3, 640, 5, 640, 10255, 10, 640, 3, 641, 3, 641, 3, 641, 3, 641, 3, 641, 5, 641, 10262, 10, 641, 3, 642, 3, 642, 3, 642, 5, 642, 10267, 10, 642, 3, 643, 3, 643, 3, 643, 3, 643, 3, 643, 3, 643, 3, 643, 3, 643, 3, 643, 3, 643, 7, 643, 10279, 10, 643, 12, 643, 14, 643, 10282, 11, 643, 3, 643, 3, 643, 3, 643, 3, 643, 5, 643, 10288, 10, 643, 3, 644, 3, 644, 3, 644, 3, 644, 3, 644, 3, 644, 3, 644, 3, 644, 3, 644, 5, 644, 10299, 10, 644, 3, 645, 3, 645, 3, 645, 3, 645, 3, 645, 3, 645, 3, 645, 5, 645, 10308, 10, 645, 3, 645, 3, 645, 3, 645, 3, 645, 3, 645, 3, 645, 3, 645, 5, 645, 10317, 10, 645, 3, 645, 3, 645, 5, 645, 10321, 10, 645, 3, 645, 3, 645, 5, 645, 10325, 10, 645, 3, 645, 3, 645, 3, 645, 3, 645, 3, 645, 3, 645, 3, 645, 3, 645, 3, 645, 3, 645, 3, 645, 3, 645, 3, 645, 3, 645, 3, 645, 3, 645, 3, 645, 3, 645, 3, 645, 3, 645, 3, 645, 3, 645, 3, 645, 3, 645, 5, 645, 10351, 10, 645, 3, 645, 5, 645, 10354, 10, 645, 3, 645, 5, 645, 10357, 10, 645, 3, 645, 3, 645, 3, 645, 3, 645, 3, 645, 3, 645, 3, 645, 3, 645, 5, 645, 10367, 10, 645, 3, 645, 3, 645, 5, 645, 10371, 10, 645, 3, 646, 3, 646, 3, 646, 5, 646, 10376, 10, 646, 3, 647, 3, 647, 3, 647, 3, 647, 5, 647, 10382, 10, 647, 3, 648, 3, 648, 3, 648, 5, 648, 10387, 10, 648, 3, 649, 3, 649, 3, 649, 5, 649, 10392, 10, 649, 3, 649, 3, 649, 3, 649, 3, 649, 3, 649, 3, 649, 3, 649, 5, 649, 10401, 10, 649, 3, 649, 5, 649, 10404, 10, 649, 5, 649, 10406, 10, 649, 3, 649, 3, 649, 5, 649, 10410, 10, 649, 3, 649, 3, 649, 3, 649, 3, 649, 3, 649, 5, 649, 10417, 10, 649, 3, 649, 3, 649, 3, 649, 3, 649, 3, 649, 5, 649, 10424, 10, 649, 3, 649, 3, 649, 3, 649, 3, 649, 3, 649, 3, 649, 5, 649, 10432, 10, 649, 3, 649, 3, 649, 3, 649, 3, 649, 3, 649, 3, 649, 3, 649, 3, 649, 3, 649, 3, 649, 3, 649, 3, 649, 3, 649, 5, 649, 10447, 10, 649, 3, 650, 3, 650, 3, 650, 5, 650, 10452, 10, 650, 3, 650, 3, 650, 3, 650, 5, 650, 10457, 10, 650, 3, 650, 3, 650, 3, 650, 3, 650, 5, 650, 10463, 10, 650, 3, 650, 5, 650, 10466, 10, 650, 3, 650, 3, 650, 5, 650, 10470, 10, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 5, 650, 10480, 10, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 5, 650, 10492, 10, 650, 5, 650, 10494, 10, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 5, 650, 10501, 10, 650, 3, 650, 3, 650, 5, 650, 10505, 10, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 6, 650, 10512, 10, 650, 13, 650, 14, 650, 10513, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 5, 650, 10523, 10, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 5, 650, 10537, 10, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 5, 650, 10545, 10, 650, 3, 650, 5, 650, 10548, 10, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 5, 650, 10557, 10, 650, 3, 650, 3, 650, 7, 650, 10561, 10, 650, 12, 650, 14, 650, 10564, 11, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 5, 650, 10573, 10, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 5, 650, 10581, 10, 650, 3, 650, 5, 650, 10584, 10, 650, 3, 650, 5, 650, 10587, 10, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 5, 650, 10596, 10, 650, 3, 650, 3, 650, 3, 650, 5, 650, 10601, 10, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 7, 650, 10608, 10, 650, 12, 650, 14, 650, 10611, 11, 650, 3, 650, 3, 650, 3, 650, 5, 650, 10616, 10, 650, 3, 650, 3, 650, 3, 650, 5, 650, 10621, 10, 650, 3, 650, 5, 650, 10624, 10, 650, 3, 650, 3, 650, 3, 650, 5, 650, 10629, 10, 650, 3, 650, 3, 650, 3, 650, 5, 650, 10634, 10, 650, 7, 650, 10636, 10, 650, 12, 650, 14, 650, 10639, 11, 650, 3, 650, 3, 650, 3, 650, 5, 650, 10644, 10, 650, 3, 650, 3, 650, 3, 650, 3, 650, 5, 650, 10650, 10, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 5, 650, 10659, 10, 650, 3, 650, 3, 650, 3, 650, 5, 650, 10664, 10, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 5, 650, 10672, 10, 650, 3, 650, 3, 650, 5, 650, 10676, 10, 650, 3, 650, 3, 650, 3, 650, 5, 650, 10681, 10, 650, 3, 650, 3, 650, 3, 650, 3, 650, 5, 650, 10687, 10, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 5, 650, 10694, 10, 650, 3, 650, 3, 650, 3, 650, 5, 650, 10699, 10, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 5, 650, 10706, 10, 650, 3, 650, 3, 650, 5, 650, 10710, 10, 650, 3, 650, 3, 650, 3, 650, 5, 650, 10715, 10, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 3, 650, 5, 650, 10723, 10, 650, 3, 650, 5, 650, 10726, 10, 650, 3, 650, 5, 650, 10729, 10, 650, 3, 650, 5, 650, 10732, 10, 650, 3, 650, 3, 650, 5, 650, 10736, 10, 650, 3, 650, 3, 650, 3, 650, 5, 650, 10741, 10, 650, 3, 650, 5, 650, 10744, 10, 650, 3, 651, 3, 651, 3, 652, 3, 652, 3, 653, 3, 653, 3, 654, 3, 654, 3, 654, 5, 654, 10755, 10, 654, 3, 654, 3, 654, 5, 654, 10759, 10, 654, 5, 654, 10761, 10, 654, 3, 654, 3, 654, 3, 655, 3, 655, 3, 655, 3, 655, 3, 655, 3, 655, 3, 655, 5, 655, 10772, 10, 655, 3, 656, 3, 656, 3, 657, 3, 657, 3, 657, 3, 657, 3, 657, 3, 657, 3, 657, 5, 657, 10783, 10, 657, 3, 658, 3, 658, 3, 658, 3, 658, 3, 658, 7, 658, 10790, 10, 658, 12, 658, 14, 658, 10793, 11, 658, 5, 658, 10795, 10, 658, 3, 659, 3, 659, 5, 659, 10799, 10, 659, 3, 659, 5, 659, 10802, 10, 659, 3, 659, 3, 659, 3, 660, 3, 660, 3, 660, 3, 660, 3, 661, 3, 661, 3, 661, 3, 661, 3, 661, 3, 661, 3, 661, 5, 661, 10817, 10, 661, 3, 662, 3, 662, 3, 662, 5, 662, 10822, 10, 662, 3, 662, 3, 662, 3, 662, 3, 662, 7, 662, 10828, 10, 662, 12, 662, 14, 662, 10831, 11, 662, 3, 662, 3, 662, 3, 662, 3, 662, 5, 662, 10837, 10, 662, 3, 662, 3, 662, 5, 662, 10841, 10, 662, 3, 663, 3, 663, 3, 663, 5, 663, 10846, 10, 663, 3, 663, 3, 663, 5, 663, 10850, 10, 663, 3, 663, 3, 663, 3, 663, 5, 663, 10855, 10, 663, 7, 663, 10857, 10, 663, 12, 663, 14, 663, 10860, 11, 663, 3, 664, 3, 664, 3, 664, 5, 664, 10865, 10, 664, 3, 664, 5, 664, 10868, 10, 664, 3, 664, 3, 664, 3, 664, 7, 664, 10873, 10, 664, 12, 664, 14, 664, 10876, 11, 664, 3, 664, 3, 664, 3, 665, 3, 665, 3, 665, 3, 665, 3, 665, 5, 665, 10885, 10, 665, 3, 665, 3, 665, 3, 665, 3, 665, 7, 665, 10891, 10, 665, 12, 665, 14, 665, 10894, 11, 665, 3, 665, 5, 665, 10897, 10, 665, 3, 665, 3, 665, 3, 666, 3, 666, 3, 666, 3, 666, 3, 666, 3, 666, 5, 666, 10907, 10, 666, 3, 666, 5, 666, 10910, 10, 666, 5, 666, 10912, 10, 666, 3, 667, 3, 667, 3, 667, 3, 668, 3, 668, 3, 668, 3, 668, 3, 668, 5, 668, 10922, 10, 668, 5, 668, 10924, 10, 668, 3, 669, 3, 669, 3, 669, 3, 669, 5, 669, 10930, 10, 669, 3, 670, 3, 670, 3, 670, 3, 670, 5, 670, 10936, 10, 670, 5, 670, 10938, 10, 670, 3, 671, 3, 671, 3, 671, 3, 672, 3, 672, 3, 672, 3, 673, 3, 673, 3, 673, 3, 673, 3, 673, 3, 673, 5, 673, 10952, 10, 673, 5, 673, 10954, 10, 673, 3, 674, 3, 674, 3, 674, 3, 674, 3, 674, 3, 674, 3, 674, 3, 674, 5, 674, 10964, 10, 674, 3, 675, 3, 675, 3, 675, 3, 675, 3, 675, 3, 675, 3, 675, 5, 675, 10973, 10, 675, 3, 675, 3, 675, 3, 675, 5, 675, 10978, 10, 675, 3, 676, 3, 676, 3, 676, 3, 676, 3, 676, 3, 676, 3, 676, 5, 676, 10987, 10, 676, 3, 677, 3, 677, 5, 677, 10991, 10, 677, 3, 677, 3, 677, 5, 677, 10995, 10, 677, 3, 677, 3, 677, 3, 678, 5, 678, 11000, 10, 678, 3, 678, 3, 678, 5, 678, 11004, 10, 678, 3, 678, 5, 678, 11007, 10, 678, 3, 679, 3, 679, 5, 679, 11011, 10, 679, 3, 680, 3, 680, 3, 680, 3, 680, 3, 680, 5, 680, 11018, 10, 680, 3, 681, 3, 681, 5, 681, 11022, 10, 681, 3, 681, 3, 681, 3, 681, 3, 681, 7, 681, 11028, 10, 681, 12, 681, 14, 681, 11031, 11, 681, 3, 682, 3, 682, 5, 682, 11035, 10, 682, 3, 683, 3, 683, 3, 684, 3, 684, 3, 685, 3, 685, 3, 686, 3, 686, 3, 687, 3, 687, 3, 688, 3, 688, 3, 689, 3, 689, 3, 689, 7, 689, 11052, 10, 689, 12, 689, 14, 689, 11055, 11, 689, 3, 689, 3, 689, 5, 689, 11059, 10, 689, 3, 690, 3, 690, 3, 691, 3, 691, 3, 691, 5, 691, 11066, 10, 691, 3, 692, 3, 692, 3, 693, 3, 693, 3, 694, 3, 694, 3, 695, 3, 695, 3, 695, 5, 695, 11077, 10, 695, 3, 696, 3, 696, 3, 696, 7, 696, 11082, 10, 696, 12, 696, 14, 696, 11085, 11, 696, 3, 697, 3, 697, 3, 698, 3, 698, 5, 698, 11091, 10, 698, 3, 699, 3, 699, 5, 699, 11095, 10, 699, 3, 700, 3, 700, 3, 700, 7, 700, 11100, 10, 700, 12, 700, 14, 700, 11103, 11, 700, 3, 700, 3, 700, 5, 700, 11107, 10, 700, 3, 701, 3, 701, 3, 702, 3, 702, 3, 702, 7, 702, 11114, 10, 702, 12, 702, 14, 702, 11117, 11, 702, 3, 703, 3, 703, 3, 703, 7, 703, 11122, 10, 703, 12, 703, 14, 703, 11125, 11, 703, 3, 704, 3, 704, 3, 704, 7, 704, 11130, 10, 704, 12, 704, 14, 704, 11133, 11, 704, 3, 705, 3, 705, 3, 705, 5, 705, 11138, 10, 705, 3, 706, 3, 706, 3, 706, 5, 706, 11143, 10, 706, 3, 707, 3, 707, 3, 707, 5, 707, 11148, 10, 707, 3, 708, 3, 708, 5, 708, 11152, 10, 708, 3, 708, 3, 708, 3, 708, 5, 708, 11157, 10, 708, 3, 708, 5, 708, 11160, 10, 708, 3, 709, 3, 709, 3, 709, 5, 709, 11165, 10, 709, 3, 710, 3, 710, 5, 710, 11169, 10, 710, 3, 711, 3, 711, 5, 711, 11173, 10, 711, 3, 712, 3, 712, 3, 712, 5, 712, 11178, 10, 712, 3, 713, 3, 713, 3, 714, 3, 714, 3, 714, 7, 714, 11185, 10, 714, 12, 714, 14, 714, 11188, 11, 714, 3, 715, 3, 715, 3, 715, 5, 715, 11193, 10, 715, 3, 715, 3, 715, 3, 715, 5, 715, 11198, 10, 715, 3, 715, 3, 715, 5, 715, 11202, 10, 715, 5, 715, 11204, 10, 715, 3, 716, 3, 716, 3, 716, 3, 716, 3, 716, 5, 716, 11211, 10, 716, 3, 716, 3, 716, 5, 716, 11215, 10, 716, 3, 716, 3, 716, 3, 716, 3, 716, 7, 716, 11221, 10, 716, 12, 716, 14, 716, 11224, 11, 716, 5, 716, 11226, 10, 716, 3, 716, 3, 716, 3, 716, 5, 716, 11231, 10, 716, 3, 717, 3, 717, 3, 717, 7, 717, 11236, 10, 717, 12, 717, 14, 717, 11239, 11, 717, 3, 718, 3, 718, 3, 719, 3, 719, 3, 720, 3, 720, 3, 721, 3, 721, 3, 722, 3, 722, 3, 722, 3, 722, 3, 722, 7, 722, 11254, 10, 722, 12, 722, 14, 722, 11257, 11, 722, 3, 722, 3, 722, 3, 722, 3, 722, 3, 722, 3, 722, 3, 722, 3, 722, 3, 722, 3, 722, 3, 722, 3, 722, 3, 722, 3, 722, 5, 722, 11273, 10, 722, 3, 723, 3, 723, 3, 723, 7, 723, 11278, 10, 723, 12, 723, 14, 723, 11281, 11, 723, 3, 724, 3, 724, 3, 724, 3, 724, 3, 725, 3, 725, 3, 725, 3, 725, 3, 725, 3, 725, 3, 725, 5, 725, 11294, 10, 725, 3, 726, 3, 726, 3, 726, 3, 726, 7, 726, 11300, 10, 726, 12, 726, 14, 726, 11303, 11, 726, 5, 726, 11305, 10, 726, 3, 726, 3, 726, 5, 726, 11309, 10, 726, 3, 727, 3, 727, 3, 727, 5, 727, 11314, 10, 727, 3, 727, 3, 727, 3, 727, 5, 727, 11319, 10, 727, 7, 727, 11321, 10, 727, 12, 727, 14, 727, 11324, 11, 727, 5, 727, 11326, 10, 727, 3, 727, 3, 727, 5, 727, 11330, 10, 727, 3, 728, 3, 728, 3, 728, 3, 728, 3, 728, 5, 728, 11337, 10, 728, 3, 728, 3, 728, 3, 728, 5, 728, 11342, 10, 728, 5, 728, 11344, 10, 728, 5, 728, 11346, 10, 728, 3, 728, 3, 728, 3, 728, 3, 728, 3, 728, 3, 728, 3, 728, 3, 728, 5, 728, 11356, 10, 728, 3, 728, 3, 728, 3, 728, 5, 728, 11361, 10, 728, 7, 728, 11363, 10, 728, 12, 728, 14, 728, 11366, 11, 728, 5, 728, 11368, 10, 728, 3, 728, 3, 728, 5, 728, 11372, 10, 728, 3, 729, 3, 729, 3, 729, 3, 730, 3, 730, 3, 730, 3, 730, 5, 730, 11381, 10, 730, 3, 730, 3, 730, 3, 731, 3, 731, 5, 731, 11387, 10, 731, 3, 731, 3, 731, 5, 731, 11391, 10, 731, 5, 731, 11393, 10, 731, 3, 732, 3, 732, 5, 732, 11397, 10, 732, 3, 732, 3, 732, 5, 732, 11401, 10, 732, 3, 732, 3, 732, 3, 732, 3, 732, 3, 732, 5, 732, 11408, 10, 732, 3, 732, 3, 732, 3, 732, 3, 732, 3, 732, 3, 732, 5, 732, 11416, 10, 732, 3, 732, 3, 732, 3, 732, 3, 732, 3, 732, 3, 732, 5, 732, 11424, 10, 732, 5, 732, 11426, 10, 732, 3, 733, 3, 733, 3, 733, 5, 733, 11431, 10, 733, 3, 733, 3, 733, 5, 733, 11435, 10, 733, 3, 733, 5, 733, 11438, 10, 733, 3, 733, 3, 733, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 5, 734, 11462, 10, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 5, 734, 11469, 10, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 3, 734, 5, 734, 11502, 10, 734, 3, 735, 3, 735, 3, 735, 5, 735, 11507, 10, 735, 3, 735, 5, 735, 11510, 10, 735, 3, 735, 3, 735, 3, 735, 5, 735, 11515, 10, 735, 5, 735, 11517, 10, 735, 3, 735, 3, 735, 7, 735, 11521, 10, 735, 12, 735, 14, 735, 11524, 11, 735, 3, 736, 3, 736, 3, 736, 7, 736, 11529, 10, 736, 12, 736, 14, 736, 11532, 11, 736, 3, 737, 3, 737, 5, 737, 11536, 10, 737, 3, 737, 3, 737, 3, 737, 7, 737, 11541, 10, 737, 12, 737, 14, 737, 11544, 11, 737, 3, 737, 3, 737, 5, 737, 11548, 10, 737, 3, 737, 5, 737, 11551, 10, 737, 3, 738, 3, 738, 5, 738, 11555, 10, 738, 3, 738, 3, 738, 3, 738, 7, 738, 11560, 10, 738, 12, 738, 14, 738, 11563, 11, 738, 3, 739, 3, 739, 5, 739, 11567, 10, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 3, 739, 5, 739, 11597, 10, 739, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 5, 740, 11604, 10, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 5, 740, 11619, 10, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 5, 740, 11635, 10, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 5, 740, 11654, 10, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 5, 740, 11671, 10, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 5, 740, 11678, 10, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 5, 740, 11686, 10, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 5, 740, 11699, 10, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 5, 740, 11708, 10, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 5, 740, 11717, 10, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 5, 740, 11726, 10, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 5, 740, 11736, 10, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 5, 740, 11744, 10, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 5, 740, 11754, 10, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 5, 740, 11764, 10, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 5, 740, 11776, 10, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 5, 740, 11792, 10, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 5, 740, 11810, 10, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 5, 740, 11823, 10, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 5, 740, 11838, 10, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 5, 740, 11849, 10, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 5, 740, 11859, 10, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 5, 740, 11870, 10, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 5, 740, 11880, 10, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 5, 740, 11897, 10, 740, 3, 740, 3, 740, 3, 740, 3, 740, 5, 740, 11903, 10, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 3, 740, 5, 740, 11925, 10, 740, 3, 741, 3, 741, 3, 741, 5, 741, 11930, 10, 741, 3, 741, 3, 741, 3, 741, 3, 741, 5, 741, 11936, 10, 741, 3, 741, 3, 741, 3, 741, 3, 741, 5, 741, 11942, 10, 741, 3, 741, 3, 741, 3, 741, 3, 741, 5, 741, 11948, 10, 741, 3, 741, 3, 741, 3, 741, 5, 741, 11953, 10, 741, 5, 741, 11955, 10, 741, 3, 741, 5, 741, 11958, 10, 741, 3, 741, 3, 741, 3, 741, 3, 741, 3, 741, 3, 741, 3, 741, 3, 741, 5, 741, 11968, 10, 741, 3, 741, 5, 741, 11971, 10, 741, 5, 741, 11973, 10, 741, 5, 741, 11975, 10, 741, 3, 741, 3, 741, 3, 741, 3, 741, 3, 741, 3, 741, 3, 741, 3, 741, 3, 741, 3, 741, 3, 741, 3, 741, 5, 741, 11989, 10, 741, 3, 742, 3, 742, 3, 743, 3, 743, 3, 743, 3, 744, 3, 744, 3, 745, 3, 745, 5, 745, 12000, 10, 745, 3, 745, 3, 745, 3, 746, 3, 746, 5, 746, 12006, 10, 746, 3, 747, 3, 747, 3, 747, 3, 747, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 3, 748, 5, 748, 12087, 10, 748, 3, 749, 3, 749, 3, 750, 3, 750, 3, 751, 3, 751, 3, 752, 3, 752, 3, 752, 2, 5, 1240, 1248, 1258, 753, 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, 696, 698, 700, 702, 704, 706, 708, 710, 712, 714, 716, 718, 720, 722, 724, 726, 728, 730, 732, 734, 736, 738, 740, 742, 744, 746, 748, 750, 752, 754, 756, 758, 760, 762, 764, 766, 768, 770, 772, 774, 776, 778, 780, 782, 784, 786, 788, 790, 792, 794, 796, 798, 800, 802, 804, 806, 808, 810, 812, 814, 816, 818, 820, 822, 824, 826, 828, 830, 832, 834, 836, 838, 840, 842, 844, 846, 848, 850, 852, 854, 856, 858, 860, 862, 864, 866, 868, 870, 872, 874, 876, 878, 880, 882, 884, 886, 888, 890, 892, 894, 896, 898, 900, 902, 904, 906, 908, 910, 912, 914, 916, 918, 920, 922, 924, 926, 928, 930, 932, 934, 936, 938, 940, 942, 944, 946, 948, 950, 952, 954, 956, 958, 960, 962, 964, 966, 968, 970, 972, 974, 976, 978, 980, 982, 984, 986, 988, 990, 992, 994, 996, 998, 1000, 1002, 1004, 1006, 1008, 1010, 1012, 1014, 1016, 1018, 1020, 1022, 1024, 1026, 1028, 1030, 1032, 1034, 1036, 1038, 1040, 1042, 1044, 1046, 1048, 1050, 1052, 1054, 1056, 1058, 1060, 1062, 1064, 1066, 1068, 1070, 1072, 1074, 1076, 1078, 1080, 1082, 1084, 1086, 1088, 1090, 1092, 1094, 1096, 1098, 1100, 1102, 1104, 1106, 1108, 1110, 1112, 1114, 1116, 1118, 1120, 1122, 1124, 1126, 1128, 1130, 1132, 1134, 1136, 1138, 1140, 1142, 1144, 1146, 1148, 1150, 1152, 1154, 1156, 1158, 1160, 1162, 1164, 1166, 1168, 1170, 1172, 1174, 1176, 1178, 1180, 1182, 1184, 1186, 1188, 1190, 1192, 1194, 1196, 1198, 1200, 1202, 1204, 1206, 1208, 1210, 1212, 1214, 1216, 1218, 1220, 1222, 1224, 1226, 1228, 1230, 1232, 1234, 1236, 1238, 1240, 1242, 1244, 1246, 1248, 1250, 1252, 1254, 1256, 1258, 1260, 1262, 1264, 1266, 1268, 1270, 1272, 1274, 1276, 1278, 1280, 1282, 1284, 1286, 1288, 1290, 1292, 1294, 1296, 1298, 1300, 1302, 1304, 1306, 1308, 1310, 1312, 1314, 1316, 1318, 1320, 1322, 1324, 1326, 1328, 1330, 1332, 1334, 1336, 1338, 1340, 1342, 1344, 1346, 1348, 1350, 1352, 1354, 1356, 1358, 1360, 1362, 1364, 1366, 1368, 1370, 1372, 1374, 1376, 1378, 1380, 1382, 1384, 1386, 1388, 1390, 1392, 1394, 1396, 1398, 1400, 1402, 1404, 1406, 1408, 1410, 1412, 1414, 1416, 1418, 1420, 1422, 1424, 1426, 1428, 1430, 1432, 1434, 1436, 1438, 1440, 1442, 1444, 1446, 1448, 1450, 1452, 1454, 1456, 1458, 1460, 1462, 1464, 1466, 1468, 1470, 1472, 1474, 1476, 1478, 1480, 1482, 1484, 1486, 1488, 1490, 1492, 1494, 1496, 1498, 1500, 1502, 2, 177, 4, 2, 63, 63, 697, 697, 4, 2, 34, 34, 1252, 1252, 5, 2, 584, 584, 763, 763, 1346, 1346, 4, 2, 199, 199, 1170, 1170, 5, 2, 135, 135, 1193, 1193, 1552, 1552, 4, 2, 385, 385, 441, 441, 4, 2, 32, 32, 103, 103, 5, 2, 364, 364, 671, 671, 2027, 2027, 5, 2, 905, 905, 1121, 1121, 1201, 1201, 4, 2, 544, 544, 2072, 2072, 4, 2, 135, 135, 1552, 1552, 4, 2, 20, 20, 413, 413, 5, 2, 20, 20, 413, 413, 865, 865, 5, 2, 314, 314, 1149, 1149, 1556, 1556, 4, 2, 803, 803, 1170, 1170, 4, 2, 828, 828, 1578, 1578, 5, 2, 525, 525, 676, 676, 1189, 1189, 5, 2, 220, 220, 1073, 1073, 1443, 1443, 5, 2, 340, 340, 402, 402, 1336, 1336, 4, 2, 126, 126, 2004, 2004, 4, 2, 64, 64, 373, 373, 4, 2, 695, 695, 2105, 2105, 4, 2, 868, 868, 1003, 1003, 4, 2, 496, 496, 569, 569, 4, 2, 353, 353, 1922, 1922, 4, 2, 778, 778, 2008, 2008, 4, 2, 20, 20, 1405, 1405, 4, 2, 1114, 1114, 1127, 1127, 4, 2, 1781, 1781, 2057, 2057, 4, 2, 148, 148, 469, 469, 4, 2, 5, 5, 1508, 1508, 4, 2, 37, 37, 304, 304, 16, 2, 41, 41, 79, 79, 219, 219, 364, 364, 477, 477, 534, 534, 573, 573, 633, 633, 671, 671, 778, 778, 1355, 1355, 1406, 1406, 1492, 1492, 2027, 2027, 4, 2, 25, 25, 362, 362, 4, 2, 425, 425, 1008, 1008, 4, 2, 1044, 1044, 1402, 1402, 4, 2, 1129, 1129, 2127, 2127, 5, 2, 604, 604, 607, 607, 1119, 1119, 4, 2, 356, 356, 615, 615, 4, 2, 1086, 1086, 2072, 2072, 4, 2, 320, 320, 1920, 1920, 5, 2, 615, 615, 1052, 1052, 1922, 1922, 4, 2, 1115, 1115, 1130, 1130, 4, 2, 112, 112, 1542, 1542, 5, 2, 523, 523, 781, 781, 995, 995, 4, 2, 85, 85, 802, 802, 4, 2, 581, 581, 986, 986, 4, 2, 220, 220, 366, 366, 4, 2, 449, 449, 1984, 1984, 4, 2, 73, 73, 1627, 1627, 4, 2, 475, 475, 621, 621, 4, 2, 152, 152, 948, 948, 4, 2, 2121, 2121, 2123, 2123, 5, 2, 226, 226, 513, 513, 544, 544, 4, 2, 771, 771, 805, 805, 4, 2, 1054, 1054, 1446, 1446, 4, 2, 364, 364, 1302, 1302, 4, 2, 353, 353, 544, 544, 4, 2, 98, 98, 1485, 1485, 4, 2, 769, 769, 1912, 1912, 4, 2, 59, 59, 1336, 1336, 4, 2, 596, 596, 793, 793, 4, 2, 2006, 2006, 2219, 2219, 5, 2, 353, 353, 722, 722, 1367, 1367, 5, 2, 353, 353, 722, 722, 1009, 1009, 4, 2, 841, 841, 999, 999, 4, 2, 39, 39, 389, 389, 4, 2, 195, 195, 1568, 1568, 4, 2, 1047, 1047, 1412, 1412, 4, 2, 410, 410, 2031, 2031, 4, 2, 104, 104, 447, 447, 4, 2, 782, 782, 1250, 1250, 5, 2, 92, 92, 1243, 1243, 1323, 1323, 4, 2, 220, 220, 1297, 1297, 4, 2, 1090, 1090, 2108, 2108, 4, 2, 3, 3, 1594, 1594, 4, 2, 1250, 1250, 1544, 1544, 5, 2, 37, 37, 1009, 1009, 1568, 1568, 4, 2, 413, 413, 722, 722, 4, 2, 1060, 1060, 1546, 1546, 4, 2, 775, 775, 2076, 2076, 4, 2, 554, 554, 1233, 1233, 4, 2, 352, 352, 721, 721, 5, 2, 596, 596, 793, 793, 827, 827, 4, 2, 568, 568, 771, 771, 4, 2, 309, 309, 359, 359, 6, 2, 654, 654, 666, 666, 961, 961, 1184, 1184, 4, 2, 353, 353, 2234, 2234, 3, 3, 2243, 2243, 3, 2, 2243, 2243, 3, 2, 1432, 1433, 3, 2, 259, 260, 4, 2, 99, 99, 615, 615, 4, 2, 140, 140, 369, 369, 5, 2, 37, 37, 398, 398, 2004, 2004, 4, 2, 296, 296, 888, 888, 5, 2, 558, 558, 742, 742, 1439, 1439, 4, 2, 1474, 1474, 1935, 1935, 5, 2, 1474, 1474, 1544, 1544, 1935, 1935, 4, 2, 474, 474, 619, 619, 4, 2, 300, 300, 1445, 1445, 4, 2, 610, 610, 722, 722, 4, 2, 37, 37, 2026, 2026, 4, 2, 89, 89, 1499, 1499, 4, 2, 528, 528, 733, 733, 3, 2, 1453, 1454, 4, 2, 528, 528, 908, 908, 4, 2, 37, 37, 528, 528, 4, 2, 1914, 1914, 1928, 1928, 4, 2, 828, 828, 1605, 1605, 4, 2, 755, 757, 759, 759, 3, 2, 2240, 2241, 4, 2, 2228, 2228, 2232, 2232, 3, 2, 2229, 2230, 4, 2, 350, 350, 623, 623, 6, 2, 37, 37, 50, 50, 480, 480, 1545, 1545, 5, 2, 137, 137, 741, 741, 1971, 1971, 4, 2, 37, 37, 398, 398, 4, 2, 166, 166, 2135, 2135, 4, 2, 398, 398, 2004, 2004, 4, 2, 1235, 1237, 1240, 1240, 4, 2, 161, 161, 224, 224, 4, 2, 531, 531, 734, 734, 4, 2, 179, 179, 891, 891, 4, 2, 2137, 2137, 2145, 2145, 4, 2, 453, 453, 975, 975, 4, 2, 464, 464, 881, 881, 4, 2, 265, 265, 405, 405, 4, 2, 594, 594, 1522, 1522, 7, 2, 2189, 2191, 2193, 2198, 2200, 2201, 2203, 2203, 2207, 2210, 3, 2, 2182, 2188, 3, 2, 2176, 2181, 4, 2, 1346, 1346, 1454, 1454, 4, 2, 541, 541, 1292, 1292, 4, 2, 1055, 1055, 1471, 1471, 4, 2, 456, 456, 460, 460, 4, 2, 1176, 1176, 1557, 1557, 4, 2, 220, 220, 1443, 1443, 5, 2, 220, 220, 1009, 1009, 1443, 1443, 4, 2, 1209, 1209, 1608, 1608, 4, 2, 1417, 1417, 1550, 1550, 4, 2, 610, 610, 1418, 1418, 3, 2, 1241, 1242, 4, 2, 331, 331, 2171, 2171, 4, 2, 870, 870, 1482, 1482, 4, 2, 151, 151, 178, 178, 5, 2, 41, 41, 290, 290, 413, 413, 4, 2, 41, 41, 413, 413, 4, 2, 290, 290, 413, 413, 4, 2, 41, 41, 290, 290, 5, 2, 41, 41, 413, 413, 477, 477, 4, 2, 50, 50, 495, 495, 4, 2, 188, 188, 1319, 1319, 6, 2, 41, 41, 219, 219, 413, 413, 1492, 1492, 6, 2, 41, 41, 413, 413, 1492, 1492, 2027, 2027, 5, 2, 364, 364, 413, 413, 671, 671, 8, 2, 41, 41, 364, 364, 413, 413, 671, 671, 1492, 1492, 2027, 2027, 4, 2, 413, 413, 2027, 2027, 5, 2, 41, 41, 413, 413, 573, 573, 5, 2, 41, 41, 413, 413, 1492, 1492, 5, 2, 41, 41, 290, 290, 1423, 1423, 5, 2, 41, 41, 413, 413, 2061, 2061, 12, 2, 41, 41, 95, 95, 219, 219, 364, 364, 413, 413, 671, 671, 778, 778, 1355, 1355, 1492, 1492, 2027, 2027, 7, 2, 41, 41, 290, 290, 413, 413, 799, 799, 2006, 2006, 6, 2, 41, 41, 413, 413, 477, 477, 1999, 1999, 5, 2, 413, 413, 834, 834, 1999, 1999, 4, 2, 43, 43, 79, 79, 4, 2, 378, 378, 1972, 1972, 8, 2, 331, 331, 600, 600, 846, 846, 870, 870, 1482, 1482, 2171, 2171, 3, 2, 2219, 2220, 4, 2, 2214, 2214, 2221, 2221, 221, 2, 8, 8, 10, 11, 13, 13, 15, 15, 18, 19, 28, 28, 31, 31, 47, 48, 55, 55, 57, 58, 60, 60, 68, 68, 70, 70, 88, 88, 91, 91, 93, 94, 100, 101, 105, 105, 108, 108, 125, 125, 142, 142, 156, 158, 162, 162, 168, 168, 189, 190, 193, 193, 200, 201, 203, 203, 222, 222, 228, 229, 237, 239, 242, 244, 263, 264, 270, 270, 272, 273, 291, 291, 294, 295, 299, 299, 302, 302, 323, 323, 325, 325, 327, 328, 332, 332, 338, 338, 348, 348, 358, 358, 362, 363, 374, 374, 380, 380, 384, 384, 386, 386, 391, 391, 401, 401, 419, 420, 425, 425, 430, 430, 436, 436, 440, 440, 442, 442, 455, 455, 463, 463, 465, 465, 479, 479, 491, 491, 497, 497, 503, 503, 508, 509, 511, 512, 514, 514, 516, 516, 520, 520, 522, 522, 532, 532, 549, 549, 562, 562, 567, 567, 614, 614, 618, 618, 634, 634, 653, 653, 662, 662, 664, 664, 667, 667, 685, 685, 705, 720, 728, 728, 730, 730, 736, 736, 752, 752, 761, 761, 777, 777, 786, 786, 803, 803, 807, 810, 821, 821, 829, 829, 836, 836, 857, 857, 861, 861, 863, 863, 867, 867, 872, 872, 877, 877, 896, 896, 938, 939, 943, 943, 945, 945, 952, 952, 954, 954, 961, 961, 966, 967, 971, 971, 984, 984, 990, 992, 1008, 1008, 1014, 1014, 1025, 1027, 1030, 1030, 1032, 1033, 1038, 1038, 1043, 1043, 1046, 1046, 1053, 1053, 1061, 1061, 1078, 1078, 1085, 1085, 1087, 1089, 1096, 1096, 1110, 1110, 1116, 1116, 1123, 1123, 1125, 1126, 1146, 1148, 1157, 1162, 1167, 1167, 1203, 1203, 1205, 1206, 1221, 1222, 1224, 1224, 1226, 1226, 1244, 1244, 1247, 1248, 1267, 1267, 1270, 1274, 1281, 1281, 1283, 1284, 1287, 1288, 1296, 1296, 1303, 1303, 1305, 1305, 1307, 1308, 1312, 1312, 1324, 1325, 1331, 1331, 1357, 1357, 1369, 1369, 1401, 1401, 1419, 1419, 1441, 1441, 1447, 1447, 1459, 1459, 1464, 1464, 1476, 1476, 1479, 1479, 1483, 1483, 1503, 1503, 1505, 1506, 1520, 1521, 1548, 1549, 1561, 1561, 1565, 1565, 1567, 1567, 1576, 1577, 1598, 1598, 1611, 1612, 1620, 1620, 1633, 1633, 1635, 1635, 1641, 1641, 1659, 1659, 1664, 1665, 1669, 1670, 1692, 1692, 1704, 1704, 1707, 1711, 1736, 1736, 1764, 1764, 1775, 1775, 1906, 1908, 1916, 1916, 1925, 1925, 1931, 1932, 1949, 1949, 1977, 1977, 1985, 1985, 1993, 1993, 1998, 1998, 2009, 2009, 2016, 2016, 2021, 2021, 2035, 2035, 2039, 2039, 2043, 2043, 2050, 2050, 2056, 2056, 2062, 2062, 2064, 2064, 2066, 2071, 2074, 2074, 2087, 2090, 2102, 2102, 2104, 2104, 2111, 2112, 2122, 2122, 2126, 2126, 2168, 2168, 2170, 2170, 2174, 2174, 2218, 2218, 316, 2, 3, 7, 9, 9, 12, 12, 14, 14, 16, 17, 20, 27, 29, 30, 32, 32, 36, 36, 38, 40, 42, 44, 46, 46, 49, 49, 51, 54, 56, 56, 59, 59, 61, 62, 65, 67, 69, 69, 71, 78, 80, 85, 87, 87, 89, 89, 92, 92, 95, 95, 97, 99, 102, 104, 106, 107, 110, 119, 121, 124, 126, 135, 137, 141, 143, 147, 149, 155, 159, 160, 163, 167, 169, 174, 176, 177, 179, 181, 183, 188, 191, 191, 194, 198, 202, 202, 204, 221, 223, 227, 230, 233, 235, 236, 240, 241, 245, 252, 254, 260, 262, 262, 265, 269, 271, 271, 274, 289, 292, 293, 296, 298, 300, 301, 303, 313, 315, 321, 324, 324, 326, 326, 330, 331, 333, 337, 339, 344, 346, 347, 349, 352, 354, 357, 359, 361, 365, 372, 375, 376, 378, 379, 381, 383, 385, 385, 387, 390, 392, 394, 396, 397, 399, 400, 402, 412, 414, 414, 416, 417, 421, 424, 426, 429, 431, 433, 437, 439, 441, 441, 443, 446, 448, 454, 457, 462, 464, 464, 466, 469, 472, 475, 477, 478, 481, 481, 483, 490, 492, 496, 498, 502, 504, 507, 510, 510, 513, 513, 515, 515, 517, 519, 521, 521, 523, 531, 533, 535, 537, 542, 544, 547, 550, 555, 557, 561, 563, 566, 568, 571, 574, 574, 576, 586, 588, 602, 604, 613, 615, 617, 619, 632, 635, 649, 651, 652, 655, 661, 663, 663, 665, 665, 668, 670, 672, 683, 686, 689, 691, 692, 694, 696, 698, 704, 721, 727, 729, 729, 732, 735, 737, 751, 753, 758, 760, 760, 762, 776, 779, 785, 787, 789, 792, 802, 804, 806, 811, 820, 822, 828, 830, 835, 837, 843, 845, 856, 858, 860, 864, 866, 868, 871, 873, 876, 878, 888, 890, 895, 897, 937, 940, 942, 944, 944, 946, 951, 953, 953, 956, 960, 962, 965, 968, 970, 972, 983, 985, 989, 993, 1007, 1009, 1013, 1015, 1024, 1028, 1029, 1031, 1031, 1034, 1037, 1039, 1042, 1044, 1045, 1047, 1052, 1054, 1060, 1062, 1074, 1076, 1077, 1079, 1084, 1086, 1086, 1091, 1095, 1097, 1098, 1100, 1100, 1102, 1109, 1111, 1115, 1118, 1122, 1124, 1124, 1127, 1127, 1129, 1129, 1131, 1142, 1144, 1145, 1150, 1156, 1163, 1166, 1168, 1169, 1171, 1173, 1175, 1175, 1177, 1183, 1185, 1188, 1190, 1194, 1196, 1197, 1199, 1202, 1204, 1204, 1207, 1220, 1223, 1223, 1225, 1225, 1227, 1228, 1230, 1234, 1238, 1239, 1243, 1243, 1245, 1246, 1249, 1251, 1254, 1260, 1262, 1266, 1268, 1269, 1277, 1280, 1282, 1282, 1285, 1286, 1290, 1295, 1297, 1302, 1304, 1304, 1306, 1306, 1310, 1311, 1313, 1323, 1327, 1330, 1332, 1342, 1344, 1348, 1350, 1356, 1358, 1360, 1362, 1368, 1370, 1399, 1402, 1405, 1407, 1416, 1418, 1418, 1420, 1423, 1425, 1426, 1428, 1435, 1437, 1440, 1442, 1446, 1448, 1458, 1460, 1463, 1465, 1475, 1477, 1478, 1480, 1482, 1484, 1491, 1494, 1499, 1501, 1501, 1504, 1504, 1507, 1511, 1513, 1518, 1522, 1529, 1532, 1536, 1538, 1542, 1544, 1547, 1550, 1555, 1558, 1560, 1562, 1564, 1566, 1566, 1568, 1570, 1572, 1575, 1578, 1597, 1599, 1610, 1613, 1617, 1619, 1619, 1621, 1628, 1630, 1632, 1634, 1634, 1636, 1640, 1642, 1658, 1660, 1663, 1666, 1668, 1671, 1691, 1693, 1703, 1705, 1706, 1712, 1735, 1737, 1763, 1765, 1774, 1776, 1905, 1909, 1915, 1917, 1924, 1926, 1930, 1933, 1933, 1935, 1935, 1938, 1939, 1941, 1948, 1950, 1965, 1967, 1976, 1978, 1979, 1981, 1984, 1986, 1992, 1994, 1997, 1999, 2002, 2005, 2008, 2010, 2015, 2017, 2020, 2022, 2026, 2028, 2034, 2036, 2038, 2040, 2042, 2044, 2049, 2051, 2055, 2057, 2061, 2063, 2063, 2065, 2065, 2072, 2073, 2076, 2076, 2080, 2086, 2091, 2100, 2103, 2103, 2105, 2109, 2113, 2115, 2118, 2121, 2124, 2125, 2127, 2128, 2130, 2132, 2134, 2145, 2147, 2167, 2171, 2172, 2175, 2190, 2193, 2200, 2202, 2208, 2210, 2213, 5, 2, 186, 186, 2192, 2192, 2204, 2206, 7, 2, 283, 283, 2189, 2189, 2199, 2199, 2202, 2202, 2207, 2207, 2, 13899, 2, 1504, 3, 2, 2, 2, 4, 1516, 3, 2, 2, 2, 6, 1577, 3, 2, 2, 2, 8, 1579, 3, 2, 2, 2, 10, 1584, 3, 2, 2, 2, 12, 1603, 3, 2, 2, 2, 14, 1655, 3, 2, 2, 2, 16, 1659, 3, 2, 2, 2, 18, 1673, 3, 2, 2, 2, 20, 1677, 3, 2, 2, 2, 22, 1689, 3, 2, 2, 2, 24, 1694, 3, 2, 2, 2, 26, 1707, 3, 2, 2, 2, 28, 1729, 3, 2, 2, 2, 30, 1757, 3, 2, 2, 2, 32, 1795, 3, 2, 2, 2, 34, 1797, 3, 2, 2, 2, 36, 1814, 3, 2, 2, 2, 38, 1851, 3, 2, 2, 2, 40, 1853, 3, 2, 2, 2, 42, 1858, 3, 2, 2, 2, 44, 1877, 3, 2, 2, 2, 46, 1927, 3, 2, 2, 2, 48, 1956, 3, 2, 2, 2, 50, 1993, 3, 2, 2, 2, 52, 1998, 3, 2, 2, 2, 54, 2023, 3, 2, 2, 2, 56, 2047, 3, 2, 2, 2, 58, 2056, 3, 2, 2, 2, 60, 2065, 3, 2, 2, 2, 62, 2074, 3, 2, 2, 2, 64, 2078, 3, 2, 2, 2, 66, 2083, 3, 2, 2, 2, 68, 2107, 3, 2, 2, 2, 70, 2109, 3, 2, 2, 2, 72, 2113, 3, 2, 2, 2, 74, 2162, 3, 2, 2, 2, 76, 2190, 3, 2, 2, 2, 78, 2192, 3, 2, 2, 2, 80, 2206, 3, 2, 2, 2, 82, 2211, 3, 2, 2, 2, 84, 2216, 3, 2, 2, 2, 86, 2222, 3, 2, 2, 2, 88, 2225, 3, 2, 2, 2, 90, 2236, 3, 2, 2, 2, 92, 2252, 3, 2, 2, 2, 94, 2269, 3, 2, 2, 2, 96, 2286, 3, 2, 2, 2, 98, 2294, 3, 2, 2, 2, 100, 2299, 3, 2, 2, 2, 102, 2315, 3, 2, 2, 2, 104, 2319, 3, 2, 2, 2, 106, 2343, 3, 2, 2, 2, 108, 2346, 3, 2, 2, 2, 110, 2352, 3, 2, 2, 2, 112, 2364, 3, 2, 2, 2, 114, 2373, 3, 2, 2, 2, 116, 2401, 3, 2, 2, 2, 118, 2407, 3, 2, 2, 2, 120, 2410, 3, 2, 2, 2, 122, 2417, 3, 2, 2, 2, 124, 2425, 3, 2, 2, 2, 126, 2438, 3, 2, 2, 2, 128, 2440, 3, 2, 2, 2, 130, 2444, 3, 2, 2, 2, 132, 2450, 3, 2, 2, 2, 134, 2475, 3, 2, 2, 2, 136, 2506, 3, 2, 2, 2, 138, 2551, 3, 2, 2, 2, 140, 2561, 3, 2, 2, 2, 142, 2563, 3, 2, 2, 2, 144, 2568, 3, 2, 2, 2, 146, 2582, 3, 2, 2, 2, 148, 2584, 3, 2, 2, 2, 150, 2589, 3, 2, 2, 2, 152, 2593, 3, 2, 2, 2, 154, 2631, 3, 2, 2, 2, 156, 2647, 3, 2, 2, 2, 158, 2680, 3, 2, 2, 2, 160, 2715, 3, 2, 2, 2, 162, 2719, 3, 2, 2, 2, 164, 2734, 3, 2, 2, 2, 166, 2736, 3, 2, 2, 2, 168, 2739, 3, 2, 2, 2, 170, 2744, 3, 2, 2, 2, 172, 2754, 3, 2, 2, 2, 174, 2787, 3, 2, 2, 2, 176, 2791, 3, 2, 2, 2, 178, 2819, 3, 2, 2, 2, 180, 2821, 3, 2, 2, 2, 182, 2825, 3, 2, 2, 2, 184, 2842, 3, 2, 2, 2, 186, 2850, 3, 2, 2, 2, 188, 2854, 3, 2, 2, 2, 190, 2877, 3, 2, 2, 2, 192, 2923, 3, 2, 2, 2, 194, 2938, 3, 2, 2, 2, 196, 2940, 3, 2, 2, 2, 198, 2954, 3, 2, 2, 2, 200, 2986, 3, 2, 2, 2, 202, 2995, 3, 2, 2, 2, 204, 3011, 3, 2, 2, 2, 206, 3046, 3, 2, 2, 2, 208, 3066, 3, 2, 2, 2, 210, 3073, 3, 2, 2, 2, 212, 3084, 3, 2, 2, 2, 214, 3095, 3, 2, 2, 2, 216, 3133, 3, 2, 2, 2, 218, 3135, 3, 2, 2, 2, 220, 3162, 3, 2, 2, 2, 222, 3175, 3, 2, 2, 2, 224, 3214, 3, 2, 2, 2, 226, 3216, 3, 2, 2, 2, 228, 3230, 3, 2, 2, 2, 230, 3235, 3, 2, 2, 2, 232, 3239, 3, 2, 2, 2, 234, 3254, 3, 2, 2, 2, 236, 3279, 3, 2, 2, 2, 238, 3281, 3, 2, 2, 2, 240, 3283, 3, 2, 2, 2, 242, 3285, 3, 2, 2, 2, 244, 3319, 3, 2, 2, 2, 246, 3321, 3, 2, 2, 2, 248, 3338, 3, 2, 2, 2, 250, 3353, 3, 2, 2, 2, 252, 3358, 3, 2, 2, 2, 254, 3383, 3, 2, 2, 2, 256, 3385, 3, 2, 2, 2, 258, 3395, 3, 2, 2, 2, 260, 3399, 3, 2, 2, 2, 262, 3425, 3, 2, 2, 2, 264, 3445, 3, 2, 2, 2, 266, 3453, 3, 2, 2, 2, 268, 3455, 3, 2, 2, 2, 270, 3457, 3, 2, 2, 2, 272, 3459, 3, 2, 2, 2, 274, 3508, 3, 2, 2, 2, 276, 3510, 3, 2, 2, 2, 278, 3515, 3, 2, 2, 2, 280, 3519, 3, 2, 2, 2, 282, 3525, 3, 2, 2, 2, 284, 3529, 3, 2, 2, 2, 286, 3537, 3, 2, 2, 2, 288, 3563, 3, 2, 2, 2, 290, 3565, 3, 2, 2, 2, 292, 3571, 3, 2, 2, 2, 294, 3574, 3, 2, 2, 2, 296, 3577, 3, 2, 2, 2, 298, 3580, 3, 2, 2, 2, 300, 3634, 3, 2, 2, 2, 302, 3636, 3, 2, 2, 2, 304, 3647, 3, 2, 2, 2, 306, 3655, 3, 2, 2, 2, 308, 3666, 3, 2, 2, 2, 310, 3681, 3, 2, 2, 2, 312, 3737, 3, 2, 2, 2, 314, 3768, 3, 2, 2, 2, 316, 3770, 3, 2, 2, 2, 318, 3772, 3, 2, 2, 2, 320, 3776, 3, 2, 2, 2, 322, 3778, 3, 2, 2, 2, 324, 3780, 3, 2, 2, 2, 326, 3792, 3, 2, 2, 2, 328, 3853, 3, 2, 2, 2, 330, 3868, 3, 2, 2, 2, 332, 3870, 3, 2, 2, 2, 334, 3875, 3, 2, 2, 2, 336, 3877, 3, 2, 2, 2, 338, 3887, 3, 2, 2, 2, 340, 3889, 3, 2, 2, 2, 342, 3891, 3, 2, 2, 2, 344, 3893, 3, 2, 2, 2, 346, 3897, 3, 2, 2, 2, 348, 3899, 3, 2, 2, 2, 350, 3905, 3, 2, 2, 2, 352, 3954, 3, 2, 2, 2, 354, 3956, 3, 2, 2, 2, 356, 3985, 3, 2, 2, 2, 358, 3989, 3, 2, 2, 2, 360, 4030, 3, 2, 2, 2, 362, 4032, 3, 2, 2, 2, 364, 4041, 3, 2, 2, 2, 366, 4052, 3, 2, 2, 2, 368, 4056, 3, 2, 2, 2, 370, 4058, 3, 2, 2, 2, 372, 4076, 3, 2, 2, 2, 374, 4083, 3, 2, 2, 2, 376, 4090, 3, 2, 2, 2, 378, 4164, 3, 2, 2, 2, 380, 4166, 3, 2, 2, 2, 382, 4171, 3, 2, 2, 2, 384, 4177, 3, 2, 2, 2, 386, 4232, 3, 2, 2, 2, 388, 4236, 3, 2, 2, 2, 390, 4247, 3, 2, 2, 2, 392, 4249, 3, 2, 2, 2, 394, 4251, 3, 2, 2, 2, 396, 4273, 3, 2, 2, 2, 398, 4276, 3, 2, 2, 2, 400, 4279, 3, 2, 2, 2, 402, 4283, 3, 2, 2, 2, 404, 4288, 3, 2, 2, 2, 406, 4292, 3, 2, 2, 2, 408, 4331, 3, 2, 2, 2, 410, 4334, 3, 2, 2, 2, 412, 4363, 3, 2, 2, 2, 414, 4365, 3, 2, 2, 2, 416, 4385, 3, 2, 2, 2, 418, 4429, 3, 2, 2, 2, 420, 4458, 3, 2, 2, 2, 422, 4495, 3, 2, 2, 2, 424, 4499, 3, 2, 2, 2, 426, 4547, 3, 2, 2, 2, 428, 4551, 3, 2, 2, 2, 430, 4636, 3, 2, 2, 2, 432, 4644, 3, 2, 2, 2, 434, 4646, 3, 2, 2, 2, 436, 4652, 3, 2, 2, 2, 438, 4663, 3, 2, 2, 2, 440, 4665, 3, 2, 2, 2, 442, 4668, 3, 2, 2, 2, 444, 4670, 3, 2, 2, 2, 446, 4681, 3, 2, 2, 2, 448, 4706, 3, 2, 2, 2, 450, 4709, 3, 2, 2, 2, 452, 4711, 3, 2, 2, 2, 454, 4722, 3, 2, 2, 2, 456, 4727, 3, 2, 2, 2, 458, 4739, 3, 2, 2, 2, 460, 4751, 3, 2, 2, 2, 462, 4754, 3, 2, 2, 2, 464, 4760, 3, 2, 2, 2, 466, 4767, 3, 2, 2, 2, 468, 4791, 3, 2, 2, 2, 470, 4804, 3, 2, 2, 2, 472, 4816, 3, 2, 2, 2, 474, 4821, 3, 2, 2, 2, 476, 4829, 3, 2, 2, 2, 478, 4831, 3, 2, 2, 2, 480, 4884, 3, 2, 2, 2, 482, 4886, 3, 2, 2, 2, 484, 4917, 3, 2, 2, 2, 486, 4919, 3, 2, 2, 2, 488, 4929, 3, 2, 2, 2, 490, 4956, 3, 2, 2, 2, 492, 4961, 3, 2, 2, 2, 494, 4966, 3, 2, 2, 2, 496, 5004, 3, 2, 2, 2, 498, 5006, 3, 2, 2, 2, 500, 5008, 3, 2, 2, 2, 502, 5010, 3, 2, 2, 2, 504, 5012, 3, 2, 2, 2, 506, 5074, 3, 2, 2, 2, 508, 5078, 3, 2, 2, 2, 510, 5083, 3, 2, 2, 2, 512, 5187, 3, 2, 2, 2, 514, 5189, 3, 2, 2, 2, 516, 5211, 3, 2, 2, 2, 518, 5213, 3, 2, 2, 2, 520, 5267, 3, 2, 2, 2, 522, 5285, 3, 2, 2, 2, 524, 5353, 3, 2, 2, 2, 526, 5375, 3, 2, 2, 2, 528, 5417, 3, 2, 2, 2, 530, 5421, 3, 2, 2, 2, 532, 5435, 3, 2, 2, 2, 534, 5503, 3, 2, 2, 2, 536, 5517, 3, 2, 2, 2, 538, 5548, 3, 2, 2, 2, 540, 5551, 3, 2, 2, 2, 542, 5569, 3, 2, 2, 2, 544, 5620, 3, 2, 2, 2, 546, 5630, 3, 2, 2, 2, 548, 5632, 3, 2, 2, 2, 550, 5688, 3, 2, 2, 2, 552, 5716, 3, 2, 2, 2, 554, 5733, 3, 2, 2, 2, 556, 5756, 3, 2, 2, 2, 558, 5793, 3, 2, 2, 2, 560, 5795, 3, 2, 2, 2, 562, 5845, 3, 2, 2, 2, 564, 5867, 3, 2, 2, 2, 566, 5887, 3, 2, 2, 2, 568, 5906, 3, 2, 2, 2, 570, 5912, 3, 2, 2, 2, 572, 5927, 3, 2, 2, 2, 574, 5967, 3, 2, 2, 2, 576, 6007, 3, 2, 2, 2, 578, 6041, 3, 2, 2, 2, 580, 6043, 3, 2, 2, 2, 582, 6059, 3, 2, 2, 2, 584, 6068, 3, 2, 2, 2, 586, 6101, 3, 2, 2, 2, 588, 6103, 3, 2, 2, 2, 590, 6111, 3, 2, 2, 2, 592, 6119, 3, 2, 2, 2, 594, 6126, 3, 2, 2, 2, 596, 6143, 3, 2, 2, 2, 598, 6157, 3, 2, 2, 2, 600, 6173, 3, 2, 2, 2, 602, 6213, 3, 2, 2, 2, 604, 6217, 3, 2, 2, 2, 606, 6241, 3, 2, 2, 2, 608, 6278, 3, 2, 2, 2, 610, 6295, 3, 2, 2, 2, 612, 6304, 3, 2, 2, 2, 614, 6308, 3, 2, 2, 2, 616, 6341, 3, 2, 2, 2, 618, 6349, 3, 2, 2, 2, 620, 6354, 3, 2, 2, 2, 622, 6361, 3, 2, 2, 2, 624, 6372, 3, 2, 2, 2, 626, 6374, 3, 2, 2, 2, 628, 6416, 3, 2, 2, 2, 630, 6418, 3, 2, 2, 2, 632, 6441, 3, 2, 2, 2, 634, 6461, 3, 2, 2, 2, 636, 6477, 3, 2, 2, 2, 638, 6483, 3, 2, 2, 2, 640, 6492, 3, 2, 2, 2, 642, 6496, 3, 2, 2, 2, 644, 6505, 3, 2, 2, 2, 646, 6513, 3, 2, 2, 2, 648, 6522, 3, 2, 2, 2, 650, 6529, 3, 2, 2, 2, 652, 6531, 3, 2, 2, 2, 654, 6575, 3, 2, 2, 2, 656, 6577, 3, 2, 2, 2, 658, 6584, 3, 2, 2, 2, 660, 6602, 3, 2, 2, 2, 662, 6604, 3, 2, 2, 2, 664, 6606, 3, 2, 2, 2, 666, 6643, 3, 2, 2, 2, 668, 6645, 3, 2, 2, 2, 670, 6647, 3, 2, 2, 2, 672, 6654, 3, 2, 2, 2, 674, 6656, 3, 2, 2, 2, 676, 6658, 3, 2, 2, 2, 678, 6691, 3, 2, 2, 2, 680, 6733, 3, 2, 2, 2, 682, 6735, 3, 2, 2, 2, 684, 6766, 3, 2, 2, 2, 686, 6803, 3, 2, 2, 2, 688, 6821, 3, 2, 2, 2, 690, 6823, 3, 2, 2, 2, 692, 6843, 3, 2, 2, 2, 694, 6871, 3, 2, 2, 2, 696, 6942, 3, 2, 2, 2, 698, 6944, 3, 2, 2, 2, 700, 6983, 3, 2, 2, 2, 702, 6992, 3, 2, 2, 2, 704, 7016, 3, 2, 2, 2, 706, 7023, 3, 2, 2, 2, 708, 7031, 3, 2, 2, 2, 710, 7033, 3, 2, 2, 2, 712, 7052, 3, 2, 2, 2, 714, 7075, 3, 2, 2, 2, 716, 7077, 3, 2, 2, 2, 718, 7095, 3, 2, 2, 2, 720, 7100, 3, 2, 2, 2, 722, 7110, 3, 2, 2, 2, 724, 7117, 3, 2, 2, 2, 726, 7125, 3, 2, 2, 2, 728, 7158, 3, 2, 2, 2, 730, 7181, 3, 2, 2, 2, 732, 7186, 3, 2, 2, 2, 734, 7237, 3, 2, 2, 2, 736, 7239, 3, 2, 2, 2, 738, 7244, 3, 2, 2, 2, 740, 7248, 3, 2, 2, 2, 742, 7251, 3, 2, 2, 2, 744, 7253, 3, 2, 2, 2, 746, 7255, 3, 2, 2, 2, 748, 7257, 3, 2, 2, 2, 750, 7259, 3, 2, 2, 2, 752, 7261, 3, 2, 2, 2, 754, 7298, 3, 2, 2, 2, 756, 7317, 3, 2, 2, 2, 758, 7328, 3, 2, 2, 2, 760, 7330, 3, 2, 2, 2, 762, 7346, 3, 2, 2, 2, 764, 7348, 3, 2, 2, 2, 766, 7371, 3, 2, 2, 2, 768, 7406, 3, 2, 2, 2, 770, 7428, 3, 2, 2, 2, 772, 7432, 3, 2, 2, 2, 774, 7434, 3, 2, 2, 2, 776, 7438, 3, 2, 2, 2, 778, 7466, 3, 2, 2, 2, 780, 7474, 3, 2, 2, 2, 782, 7479, 3, 2, 2, 2, 784, 7483, 3, 2, 2, 2, 786, 7493, 3, 2, 2, 2, 788, 7495, 3, 2, 2, 2, 790, 7503, 3, 2, 2, 2, 792, 7505, 3, 2, 2, 2, 794, 7511, 3, 2, 2, 2, 796, 7513, 3, 2, 2, 2, 798, 7518, 3, 2, 2, 2, 800, 7584, 3, 2, 2, 2, 802, 7586, 3, 2, 2, 2, 804, 7602, 3, 2, 2, 2, 806, 7624, 3, 2, 2, 2, 808, 7636, 3, 2, 2, 2, 810, 7663, 3, 2, 2, 2, 812, 7670, 3, 2, 2, 2, 814, 7679, 3, 2, 2, 2, 816, 7695, 3, 2, 2, 2, 818, 7697, 3, 2, 2, 2, 820, 7706, 3, 2, 2, 2, 822, 7708, 3, 2, 2, 2, 824, 7747, 3, 2, 2, 2, 826, 7780, 3, 2, 2, 2, 828, 7809, 3, 2, 2, 2, 830, 7813, 3, 2, 2, 2, 832, 7820, 3, 2, 2, 2, 834, 7822, 3, 2, 2, 2, 836, 7832, 3, 2, 2, 2, 838, 7848, 3, 2, 2, 2, 840, 7853, 3, 2, 2, 2, 842, 7869, 3, 2, 2, 2, 844, 7871, 3, 2, 2, 2, 846, 7883, 3, 2, 2, 2, 848, 7885, 3, 2, 2, 2, 850, 7887, 3, 2, 2, 2, 852, 7929, 3, 2, 2, 2, 854, 7945, 3, 2, 2, 2, 856, 7958, 3, 2, 2, 2, 858, 7961, 3, 2, 2, 2, 860, 7998, 3, 2, 2, 2, 862, 8019, 3, 2, 2, 2, 864, 8021, 3, 2, 2, 2, 866, 8023, 3, 2, 2, 2, 868, 8029, 3, 2, 2, 2, 870, 8031, 3, 2, 2, 2, 872, 8091, 3, 2, 2, 2, 874, 8093, 3, 2, 2, 2, 876, 8095, 3, 2, 2, 2, 878, 8097, 3, 2, 2, 2, 880, 8127, 3, 2, 2, 2, 882, 8129, 3, 2, 2, 2, 884, 8149, 3, 2, 2, 2, 886, 8151, 3, 2, 2, 2, 888, 8158, 3, 2, 2, 2, 890, 8162, 3, 2, 2, 2, 892, 8166, 3, 2, 2, 2, 894, 8170, 3, 2, 2, 2, 896, 8177, 3, 2, 2, 2, 898, 8181, 3, 2, 2, 2, 900, 8188, 3, 2, 2, 2, 902, 8193, 3, 2, 2, 2, 904, 8201, 3, 2, 2, 2, 906, 8216, 3, 2, 2, 2, 908, 8219, 3, 2, 2, 2, 910, 8224, 3, 2, 2, 2, 912, 8228, 3, 2, 2, 2, 914, 8245, 3, 2, 2, 2, 916, 8251, 3, 2, 2, 2, 918, 8261, 3, 2, 2, 2, 920, 8274, 3, 2, 2, 2, 922, 8278, 3, 2, 2, 2, 924, 8292, 3, 2, 2, 2, 926, 8294, 3, 2, 2, 2, 928, 8308, 3, 2, 2, 2, 930, 8325, 3, 2, 2, 2, 932, 8350, 3, 2, 2, 2, 934, 8360, 3, 2, 2, 2, 936, 8364, 3, 2, 2, 2, 938, 8399, 3, 2, 2, 2, 940, 8411, 3, 2, 2, 2, 942, 8422, 3, 2, 2, 2, 944, 8428, 3, 2, 2, 2, 946, 8439, 3, 2, 2, 2, 948, 8451, 3, 2, 2, 2, 950, 8459, 3, 2, 2, 2, 952, 8474, 3, 2, 2, 2, 954, 8478, 3, 2, 2, 2, 956, 8501, 3, 2, 2, 2, 958, 8504, 3, 2, 2, 2, 960, 8510, 3, 2, 2, 2, 962, 8515, 3, 2, 2, 2, 964, 8523, 3, 2, 2, 2, 966, 8531, 3, 2, 2, 2, 968, 8534, 3, 2, 2, 2, 970, 8550, 3, 2, 2, 2, 972, 8555, 3, 2, 2, 2, 974, 8559, 3, 2, 2, 2, 976, 8599, 3, 2, 2, 2, 978, 8601, 3, 2, 2, 2, 980, 8623, 3, 2, 2, 2, 982, 8625, 3, 2, 2, 2, 984, 8630, 3, 2, 2, 2, 986, 8632, 3, 2, 2, 2, 988, 8634, 3, 2, 2, 2, 990, 8636, 3, 2, 2, 2, 992, 8640, 3, 2, 2, 2, 994, 8645, 3, 2, 2, 2, 996, 8651, 3, 2, 2, 2, 998, 8655, 3, 2, 2, 2, 1000, 8661, 3, 2, 2, 2, 1002, 8675, 3, 2, 2, 2, 1004, 8695, 3, 2, 2, 2, 1006, 8700, 3, 2, 2, 2, 1008, 8713, 3, 2, 2, 2, 1010, 8715, 3, 2, 2, 2, 1012, 8729, 3, 2, 2, 2, 1014, 8739, 3, 2, 2, 2, 1016, 8745, 3, 2, 2, 2, 1018, 8747, 3, 2, 2, 2, 1020, 8750, 3, 2, 2, 2, 1022, 8759, 3, 2, 2, 2, 1024, 8783, 3, 2, 2, 2, 1026, 8798, 3, 2, 2, 2, 1028, 8800, 3, 2, 2, 2, 1030, 8821, 3, 2, 2, 2, 1032, 8836, 3, 2, 2, 2, 1034, 8858, 3, 2, 2, 2, 1036, 8865, 3, 2, 2, 2, 1038, 8878, 3, 2, 2, 2, 1040, 8881, 3, 2, 2, 2, 1042, 8902, 3, 2, 2, 2, 1044, 8906, 3, 2, 2, 2, 1046, 8916, 3, 2, 2, 2, 1048, 8925, 3, 2, 2, 2, 1050, 8942, 3, 2, 2, 2, 1052, 8985, 3, 2, 2, 2, 1054, 8994, 3, 2, 2, 2, 1056, 9006, 3, 2, 2, 2, 1058, 9014, 3, 2, 2, 2, 1060, 9018, 3, 2, 2, 2, 1062, 9051, 3, 2, 2, 2, 1064, 9053, 3, 2, 2, 2, 1066, 9064, 3, 2, 2, 2, 1068, 9066, 3, 2, 2, 2, 1070, 9074, 3, 2, 2, 2, 1072, 9085, 3, 2, 2, 2, 1074, 9118, 3, 2, 2, 2, 1076, 9121, 3, 2, 2, 2, 1078, 9142, 3, 2, 2, 2, 1080, 9145, 3, 2, 2, 2, 1082, 9148, 3, 2, 2, 2, 1084, 9152, 3, 2, 2, 2, 1086, 9171, 3, 2, 2, 2, 1088, 9173, 3, 2, 2, 2, 1090, 9190, 3, 2, 2, 2, 1092, 9197, 3, 2, 2, 2, 1094, 9202, 3, 2, 2, 2, 1096, 9225, 3, 2, 2, 2, 1098, 9235, 3, 2, 2, 2, 1100, 9237, 3, 2, 2, 2, 1102, 9251, 3, 2, 2, 2, 1104, 9265, 3, 2, 2, 2, 1106, 9301, 3, 2, 2, 2, 1108, 9303, 3, 2, 2, 2, 1110, 9333, 3, 2, 2, 2, 1112, 9338, 3, 2, 2, 2, 1114, 9340, 3, 2, 2, 2, 1116, 9352, 3, 2, 2, 2, 1118, 9372, 3, 2, 2, 2, 1120, 9374, 3, 2, 2, 2, 1122, 9377, 3, 2, 2, 2, 1124, 9403, 3, 2, 2, 2, 1126, 9405, 3, 2, 2, 2, 1128, 9409, 3, 2, 2, 2, 1130, 9424, 3, 2, 2, 2, 1132, 9436, 3, 2, 2, 2, 1134, 9444, 3, 2, 2, 2, 1136, 9448, 3, 2, 2, 2, 1138, 9461, 3, 2, 2, 2, 1140, 9467, 3, 2, 2, 2, 1142, 9482, 3, 2, 2, 2, 1144, 9502, 3, 2, 2, 2, 1146, 9511, 3, 2, 2, 2, 1148, 9513, 3, 2, 2, 2, 1150, 9520, 3, 2, 2, 2, 1152, 9525, 3, 2, 2, 2, 1154, 9538, 3, 2, 2, 2, 1156, 9546, 3, 2, 2, 2, 1158, 9550, 3, 2, 2, 2, 1160, 9564, 3, 2, 2, 2, 1162, 9572, 3, 2, 2, 2, 1164, 9580, 3, 2, 2, 2, 1166, 9582, 3, 2, 2, 2, 1168, 9594, 3, 2, 2, 2, 1170, 9620, 3, 2, 2, 2, 1172, 9622, 3, 2, 2, 2, 1174, 9636, 3, 2, 2, 2, 1176, 9641, 3, 2, 2, 2, 1178, 9659, 3, 2, 2, 2, 1180, 9663, 3, 2, 2, 2, 1182, 9671, 3, 2, 2, 2, 1184, 9681, 3, 2, 2, 2, 1186, 9689, 3, 2, 2, 2, 1188, 9695, 3, 2, 2, 2, 1190, 9700, 3, 2, 2, 2, 1192, 9707, 3, 2, 2, 2, 1194, 9732, 3, 2, 2, 2, 1196, 9751, 3, 2, 2, 2, 1198, 9755, 3, 2, 2, 2, 1200, 9758, 3, 2, 2, 2, 1202, 9780, 3, 2, 2, 2, 1204, 9785, 3, 2, 2, 2, 1206, 9804, 3, 2, 2, 2, 1208, 9806, 3, 2, 2, 2, 1210, 9822, 3, 2, 2, 2, 1212, 9830, 3, 2, 2, 2, 1214, 9835, 3, 2, 2, 2, 1216, 9839, 3, 2, 2, 2, 1218, 9850, 3, 2, 2, 2, 1220, 9853, 3, 2, 2, 2, 1222, 9871, 3, 2, 2, 2, 1224, 9873, 3, 2, 2, 2, 1226, 9886, 3, 2, 2, 2, 1228, 9897, 3, 2, 2, 2, 1230, 9911, 3, 2, 2, 2, 1232, 9916, 3, 2, 2, 2, 1234, 9918, 3, 2, 2, 2, 1236, 9928, 3, 2, 2, 2, 1238, 9930, 3, 2, 2, 2, 1240, 9935, 3, 2, 2, 2, 1242, 9950, 3, 2, 2, 2, 1244, 9988, 3, 2, 2, 2, 1246, 9990, 3, 2, 2, 2, 1248, 9998, 3, 2, 2, 2, 1250, 10010, 3, 2, 2, 2, 1252, 10042, 3, 2, 2, 2, 1254, 10062, 3, 2, 2, 2, 1256, 10064, 3, 2, 2, 2, 1258, 10068, 3, 2, 2, 2, 1260, 10119, 3, 2, 2, 2, 1262, 10121, 3, 2, 2, 2, 1264, 10151, 3, 2, 2, 2, 1266, 10153, 3, 2, 2, 2, 1268, 10174, 3, 2, 2, 2, 1270, 10204, 3, 2, 2, 2, 1272, 10208, 3, 2, 2, 2, 1274, 10211, 3, 2, 2, 2, 1276, 10230, 3, 2, 2, 2, 1278, 10238, 3, 2, 2, 2, 1280, 10256, 3, 2, 2, 2, 1282, 10263, 3, 2, 2, 2, 1284, 10287, 3, 2, 2, 2, 1286, 10289, 3, 2, 2, 2, 1288, 10370, 3, 2, 2, 2, 1290, 10375, 3, 2, 2, 2, 1292, 10381, 3, 2, 2, 2, 1294, 10383, 3, 2, 2, 2, 1296, 10446, 3, 2, 2, 2, 1298, 10743, 3, 2, 2, 2, 1300, 10745, 3, 2, 2, 2, 1302, 10747, 3, 2, 2, 2, 1304, 10749, 3, 2, 2, 2, 1306, 10751, 3, 2, 2, 2, 1308, 10764, 3, 2, 2, 2, 1310, 10773, 3, 2, 2, 2, 1312, 10782, 3, 2, 2, 2, 1314, 10784, 3, 2, 2, 2, 1316, 10801, 3, 2, 2, 2, 1318, 10805, 3, 2, 2, 2, 1320, 10816, 3, 2, 2, 2, 1322, 10818, 3, 2, 2, 2, 1324, 10842, 3, 2, 2, 2, 1326, 10861, 3, 2, 2, 2, 1328, 10879, 3, 2, 2, 2, 1330, 10900, 3, 2, 2, 2, 1332, 10913, 3, 2, 2, 2, 1334, 10916, 3, 2, 2, 2, 1336, 10925, 3, 2, 2, 2, 1338, 10931, 3, 2, 2, 2, 1340, 10939, 3, 2, 2, 2, 1342, 10942, 3, 2, 2, 2, 1344, 10953, 3, 2, 2, 2, 1346, 10963, 3, 2, 2, 2, 1348, 10965, 3, 2, 2, 2, 1350, 10979, 3, 2, 2, 2, 1352, 10988, 3, 2, 2, 2, 1354, 11006, 3, 2, 2, 2, 1356, 11010, 3, 2, 2, 2, 1358, 11012, 3, 2, 2, 2, 1360, 11021, 3, 2, 2, 2, 1362, 11034, 3, 2, 2, 2, 1364, 11036, 3, 2, 2, 2, 1366, 11038, 3, 2, 2, 2, 1368, 11040, 3, 2, 2, 2, 1370, 11042, 3, 2, 2, 2, 1372, 11044, 3, 2, 2, 2, 1374, 11046, 3, 2, 2, 2, 1376, 11048, 3, 2, 2, 2, 1378, 11060, 3, 2, 2, 2, 1380, 11062, 3, 2, 2, 2, 1382, 11067, 3, 2, 2, 2, 1384, 11069, 3, 2, 2, 2, 1386, 11071, 3, 2, 2, 2, 1388, 11073, 3, 2, 2, 2, 1390, 11078, 3, 2, 2, 2, 1392, 11086, 3, 2, 2, 2, 1394, 11088, 3, 2, 2, 2, 1396, 11094, 3, 2, 2, 2, 1398, 11096, 3, 2, 2, 2, 1400, 11108, 3, 2, 2, 2, 1402, 11110, 3, 2, 2, 2, 1404, 11118, 3, 2, 2, 2, 1406, 11126, 3, 2, 2, 2, 1408, 11134, 3, 2, 2, 2, 1410, 11139, 3, 2, 2, 2, 1412, 11144, 3, 2, 2, 2, 1414, 11159, 3, 2, 2, 2, 1416, 11161, 3, 2, 2, 2, 1418, 11168, 3, 2, 2, 2, 1420, 11172, 3, 2, 2, 2, 1422, 11174, 3, 2, 2, 2, 1424, 11179, 3, 2, 2, 2, 1426, 11181, 3, 2, 2, 2, 1428, 11203, 3, 2, 2, 2, 1430, 11205, 3, 2, 2, 2, 1432, 11232, 3, 2, 2, 2, 1434, 11240, 3, 2, 2, 2, 1436, 11242, 3, 2, 2, 2, 1438, 11244, 3, 2, 2, 2, 1440, 11246, 3, 2, 2, 2, 1442, 11272, 3, 2, 2, 2, 1444, 11274, 3, 2, 2, 2, 1446, 11282, 3, 2, 2, 2, 1448, 11286, 3, 2, 2, 2, 1450, 11295, 3, 2, 2, 2, 1452, 11310, 3, 2, 2, 2, 1454, 11331, 3, 2, 2, 2, 1456, 11373, 3, 2, 2, 2, 1458, 11380, 3, 2, 2, 2, 1460, 11392, 3, 2, 2, 2, 1462, 11425, 3, 2, 2, 2, 1464, 11427, 3, 2, 2, 2, 1466, 11501, 3, 2, 2, 2, 1468, 11506, 3, 2, 2, 2, 1470, 11525, 3, 2, 2, 2, 1472, 11535, 3, 2, 2, 2, 1474, 11554, 3, 2, 2, 2, 1476, 11596, 3, 2, 2, 2, 1478, 11924, 3, 2, 2, 2, 1480, 11988, 3, 2, 2, 2, 1482, 11990, 3, 2, 2, 2, 1484, 11992, 3, 2, 2, 2, 1486, 11995, 3, 2, 2, 2, 1488, 11999, 3, 2, 2, 2, 1490, 12005, 3, 2, 2, 2, 1492, 12007, 3, 2, 2, 2, 1494, 12086, 3, 2, 2, 2, 1496, 12088, 3, 2, 2, 2, 1498, 12090, 3, 2, 2, 2, 1500, 12092, 3, 2, 2, 2, 1502, 12094, 3, 2, 2, 2, 1504, 1505, 5, 4, 3, 2, 1505, 1506, 7, 2, 2, 3, 1506, 3, 3, 2, 2, 2, 1507, 1510, 5, 6, 4, 2, 1508, 1510, 5, 1346, 674, 2, 1509, 1507, 3, 2, 2, 2, 1509, 1508, 3, 2, 2, 2, 1510, 1512, 3, 2, 2, 2, 1511, 1513, 7, 2243, 2, 2, 1512, 1511, 3, 2, 2, 2, 1512, 1513, 3, 2, 2, 2, 1513, 1515, 3, 2, 2, 2, 1514, 1509, 3, 2, 2, 2, 1515, 1518, 3, 2, 2, 2, 1516, 1514, 3, 2, 2, 2, 1516, 1517, 3, 2, 2, 2, 1517, 1519, 3, 2, 2, 2, 1518, 1516, 3, 2, 2, 2, 1519, 1520, 7, 2, 2, 3, 1520, 5, 3, 2, 2, 2, 1521, 1578, 5, 1026, 514, 2, 1522, 1578, 5, 658, 330, 2, 1523, 1578, 5, 664, 333, 2, 1524, 1578, 5, 10, 6, 2, 1525, 1578, 5, 26, 14, 2, 1526, 1578, 5, 42, 22, 2, 1527, 1578, 5, 170, 86, 2, 1528, 1578, 5, 172, 87, 2, 1529, 1578, 5, 52, 27, 2, 1530, 1578, 5, 90, 46, 2, 1531, 1578, 5, 752, 377, 2, 1532, 1578, 5, 428, 215, 2, 1533, 1578, 5, 232, 117, 2, 1534, 1578, 5, 394, 198, 2, 1535, 1578, 5, 478, 240, 2, 1536, 1578, 5, 488, 245, 2, 1537, 1578, 5, 274, 138, 2, 1538, 1578, 5, 406, 204, 2, 1539, 1578, 5, 310, 156, 2, 1540, 1578, 5, 324, 163, 2, 1541, 1578, 5, 354, 178, 2, 1542, 1578, 5, 350, 176, 2, 1543, 1578, 5, 12, 7, 2, 1544, 1578, 5, 48, 25, 2, 1545, 1578, 5, 28, 15, 2, 1546, 1578, 5, 30, 16, 2, 1547, 1578, 5, 182, 92, 2, 1548, 1578, 5, 520, 261, 2, 1549, 1578, 5, 444, 223, 2, 1550, 1578, 5, 518, 260, 2, 1551, 1578, 5, 514, 258, 2, 1552, 1578, 5, 410, 206, 2, 1553, 1578, 5, 388, 195, 2, 1554, 1578, 5, 510, 256, 2, 1555, 1578, 5, 504, 253, 2, 1556, 1578, 5, 272, 137, 2, 1557, 1578, 5, 176, 89, 2, 1558, 1578, 5, 54, 28, 2, 1559, 1578, 5, 110, 56, 2, 1560, 1578, 5, 654, 328, 2, 1561, 1578, 5, 8, 5, 2, 1562, 1578, 5, 24, 13, 2, 1563, 1578, 5, 40, 21, 2, 1564, 1578, 5, 168, 85, 2, 1565, 1578, 5, 50, 26, 2, 1566, 1578, 5, 88, 45, 2, 1567, 1578, 5, 1014, 508, 2, 1568, 1578, 5, 644, 323, 2, 1569, 1578, 5, 646, 324, 2, 1570, 1578, 5, 380, 191, 2, 1571, 1578, 5, 382, 192, 2, 1572, 1578, 5, 648, 325, 2, 1573, 1578, 5, 656, 329, 2, 1574, 1578, 5, 904, 453, 2, 1575, 1578, 5, 384, 193, 2, 1576, 1578, 5, 996, 499, 2, 1577, 1521, 3, 2, 2, 2, 1577, 1522, 3, 2, 2, 2, 1577, 1523, 3, 2, 2, 2, 1577, 1524, 3, 2, 2, 2, 1577, 1525, 3, 2, 2, 2, 1577, 1526, 3, 2, 2, 2, 1577, 1527, 3, 2, 2, 2, 1577, 1528, 3, 2, 2, 2, 1577, 1529, 3, 2, 2, 2, 1577, 1530, 3, 2, 2, 2, 1577, 1531, 3, 2, 2, 2, 1577, 1532, 3, 2, 2, 2, 1577, 1533, 3, 2, 2, 2, 1577, 1534, 3, 2, 2, 2, 1577, 1535, 3, 2, 2, 2, 1577, 1536, 3, 2, 2, 2, 1577, 1537, 3, 2, 2, 2, 1577, 1538, 3, 2, 2, 2, 1577, 1539, 3, 2, 2, 2, 1577, 1540, 3, 2, 2, 2, 1577, 1541, 3, 2, 2, 2, 1577, 1542, 3, 2, 2, 2, 1577, 1543, 3, 2, 2, 2, 1577, 1544, 3, 2, 2, 2, 1577, 1545, 3, 2, 2, 2, 1577, 1546, 3, 2, 2, 2, 1577, 1547, 3, 2, 2, 2, 1577, 1548, 3, 2, 2, 2, 1577, 1549, 3, 2, 2, 2, 1577, 1550, 3, 2, 2, 2, 1577, 1551, 3, 2, 2, 2, 1577, 1552, 3, 2, 2, 2, 1577, 1553, 3, 2, 2, 2, 1577, 1554, 3, 2, 2, 2, 1577, 1555, 3, 2, 2, 2, 1577, 1556, 3, 2, 2, 2, 1577, 1557, 3, 2, 2, 2, 1577, 1558, 3, 2, 2, 2, 1577, 1559, 3, 2, 2, 2, 1577, 1560, 3, 2, 2, 2, 1577, 1561, 3, 2, 2, 2, 1577, 1562, 3, 2, 2, 2, 1577, 1563, 3, 2, 2, 2, 1577, 1564, 3, 2, 2, 2, 1577, 1565, 3, 2, 2, 2, 1577, 1566, 3, 2, 2, 2, 1577, 1567, 3, 2, 2, 2, 1577, 1568, 3, 2, 2, 2, 1577, 1569, 3, 2, 2, 2, 1577, 1570, 3, 2, 2, 2, 1577, 1571, 3, 2, 2, 2, 1577, 1572, 3, 2, 2, 2, 1577, 1573, 3, 2, 2, 2, 1577, 1574, 3, 2, 2, 2, 1577, 1575, 3, 2, 2, 2, 1577, 1576, 3, 2, 2, 2, 1578, 7, 3, 2, 2, 2, 1579, 1580, 7, 413, 2, 2, 1580, 1581, 7, 560, 2, 2, 1581, 1582, 5, 1408, 705, 2, 1582, 1583, 7, 2243, 2, 2, 1583, 9, 3, 2, 2, 2, 1584, 1585, 7, 41, 2, 2, 1585, 1586, 7, 560, 2, 2, 1586, 1587, 5, 1408, 705, 2, 1587, 1589, 7, 225, 2, 2, 1588, 1590, 7, 342, 2, 2, 1589, 1588, 3, 2, 2, 2, 1589, 1590, 3, 2, 2, 2, 1590, 1594, 3, 2, 2, 2, 1591, 1593, 5, 400, 201, 2, 1592, 1591, 3, 2, 2, 2, 1593, 1596, 3, 2, 2, 2, 1594, 1592, 3, 2, 2, 2, 1594, 1595, 3, 2, 2, 2, 1595, 1599, 3, 2, 2, 2, 1596, 1594, 3, 2, 2, 2, 1597, 1598, 7, 1434, 2, 2, 1598, 1600, 7, 1514, 2, 2, 1599, 1597, 3, 2, 2, 2, 1599, 1600, 3, 2, 2, 2, 1600, 1601, 3, 2, 2, 2, 1601, 1602, 7, 2243, 2, 2, 1602, 11, 3, 2, 2, 2, 1603, 1606, 7, 290, 2, 2, 1604, 1605, 7, 1174, 2, 2, 1605, 1607, 7, 1409, 2, 2, 1606, 1604, 3, 2, 2, 2, 1606, 1607, 3, 2, 2, 2, 1607, 1608, 3, 2, 2, 2, 1608, 1609, 7, 560, 2, 2, 1609, 1621, 5, 1408, 705, 2, 1610, 1611, 7, 2225, 2, 2, 1611, 1616, 5, 918, 460, 2, 1612, 1613, 7, 2231, 2, 2, 1613, 1615, 5, 918, 460, 2, 1614, 1612, 3, 2, 2, 2, 1615, 1618, 3, 2, 2, 2, 1616, 1614, 3, 2, 2, 2, 1616, 1617, 3, 2, 2, 2, 1617, 1619, 3, 2, 2, 2, 1618, 1616, 3, 2, 2, 2, 1619, 1620, 7, 2226, 2, 2, 1620, 1622, 3, 2, 2, 2, 1621, 1610, 3, 2, 2, 2, 1621, 1622, 3, 2, 2, 2, 1622, 1623, 3, 2, 2, 2, 1623, 1624, 7, 1433, 2, 2, 1624, 1631, 5, 1460, 731, 2, 1625, 1630, 5, 906, 454, 2, 1626, 1630, 5, 14, 8, 2, 1627, 1630, 5, 18, 10, 2, 1628, 1630, 7, 377, 2, 2, 1629, 1625, 3, 2, 2, 2, 1629, 1626, 3, 2, 2, 2, 1629, 1627, 3, 2, 2, 2, 1629, 1628, 3, 2, 2, 2, 1630, 1633, 3, 2, 2, 2, 1631, 1629, 3, 2, 2, 2, 1631, 1632, 3, 2, 2, 2, 1632, 1651, 3, 2, 2, 2, 1633, 1631, 3, 2, 2, 2, 1634, 1636, 7, 1252, 2, 2, 1635, 1634, 3, 2, 2, 2, 1635, 1636, 3, 2, 2, 2, 1636, 1637, 3, 2, 2, 2, 1637, 1646, 9, 2, 2, 2, 1638, 1640, 7, 346, 2, 2, 1639, 1638, 3, 2, 2, 2, 1639, 1640, 3, 2, 2, 2, 1640, 1642, 3, 2, 2, 2, 1641, 1643, 5, 922, 462, 2, 1642, 1641, 3, 2, 2, 2, 1642, 1643, 3, 2, 2, 2, 1643, 1644, 3, 2, 2, 2, 1644, 1647, 5, 1000, 501, 2, 1645, 1647, 5, 908, 455, 2, 1646, 1639, 3, 2, 2, 2, 1646, 1645, 3, 2, 2, 2, 1647, 1652, 3, 2, 2, 2, 1648, 1649, 9, 3, 2, 2, 1649, 1650, 7, 2065, 2, 2, 1650, 1652, 5, 1380, 691, 2, 1651, 1635, 3, 2, 2, 2, 1651, 1648, 3, 2, 2, 2, 1652, 1653, 3, 2, 2, 2, 1653, 1654, 7, 2243, 2, 2, 1654, 13, 3, 2, 2, 2, 1655, 1657, 7, 1195, 2, 2, 1656, 1658, 5, 16, 9, 2, 1657, 1656, 3, 2, 2, 2, 1657, 1658, 3, 2, 2, 2, 1658, 15, 3, 2, 2, 2, 1659, 1660, 7, 2225, 2, 2, 1660, 1661, 7, 1209, 2, 2, 1661, 1662, 5, 1236, 619, 2, 1662, 1666, 7, 148, 2, 2, 1663, 1667, 7, 50, 2, 2, 1664, 1665, 9, 4, 2, 2, 1665, 1667, 5, 1446, 724, 2, 1666, 1663, 3, 2, 2, 2, 1666, 1664, 3, 2, 2, 2, 1667, 1669, 3, 2, 2, 2, 1668, 1670, 5, 22, 12, 2, 1669, 1668, 3, 2, 2, 2, 1669, 1670, 3, 2, 2, 2, 1670, 1671, 3, 2, 2, 2, 1671, 1672, 7, 2226, 2, 2, 1672, 17, 3, 2, 2, 2, 1673, 1675, 7, 1426, 2, 2, 1674, 1676, 5, 20, 11, 2, 1675, 1674, 3, 2, 2, 2, 1675, 1676, 3, 2, 2, 2, 1676, 19, 3, 2, 2, 2, 1677, 1678, 7, 1400, 2, 2, 1678, 1679, 7, 2225, 2, 2, 1679, 1684, 5, 1428, 715, 2, 1680, 1681, 7, 2231, 2, 2, 1681, 1683, 5, 1428, 715, 2, 1682, 1680, 3, 2, 2, 2, 1683, 1686, 3, 2, 2, 2, 1684, 1682, 3, 2, 2, 2, 1684, 1685, 3, 2, 2, 2, 1685, 1687, 3, 2, 2, 2, 1686, 1684, 3, 2, 2, 2, 1687, 1688, 7, 2226, 2, 2, 1688, 21, 3, 2, 2, 2, 1689, 1690, 9, 5, 2, 2, 1690, 1691, 5, 1236, 619, 2, 1691, 1692, 7, 148, 2, 2, 1692, 1693, 5, 1446, 724, 2, 1693, 23, 3, 2, 2, 2, 1694, 1695, 7, 413, 2, 2, 1695, 1697, 7, 1193, 2, 2, 1696, 1698, 7, 135, 2, 2, 1697, 1696, 3, 2, 2, 2, 1697, 1698, 3, 2, 2, 2, 1698, 1702, 3, 2, 2, 2, 1699, 1700, 5, 1436, 719, 2, 1700, 1701, 7, 2218, 2, 2, 1701, 1703, 3, 2, 2, 2, 1702, 1699, 3, 2, 2, 2, 1702, 1703, 3, 2, 2, 2, 1703, 1704, 3, 2, 2, 2, 1704, 1705, 5, 1378, 690, 2, 1705, 1706, 7, 2243, 2, 2, 1706, 25, 3, 2, 2, 2, 1707, 1708, 7, 41, 2, 2, 1708, 1709, 7, 1193, 2, 2, 1709, 1710, 5, 1378, 690, 2, 1710, 1712, 7, 225, 2, 2, 1711, 1713, 7, 342, 2, 2, 1712, 1711, 3, 2, 2, 2, 1712, 1713, 3, 2, 2, 2, 1713, 1715, 3, 2, 2, 2, 1714, 1716, 9, 6, 2, 2, 1715, 1714, 3, 2, 2, 2, 1715, 1716, 3, 2, 2, 2, 1716, 1720, 3, 2, 2, 2, 1717, 1719, 5, 400, 201, 2, 1718, 1717, 3, 2, 2, 2, 1719, 1722, 3, 2, 2, 2, 1720, 1718, 3, 2, 2, 2, 1720, 1721, 3, 2, 2, 2, 1721, 1725, 3, 2, 2, 2, 1722, 1720, 3, 2, 2, 2, 1723, 1724, 7, 1434, 2, 2, 1724, 1726, 7, 1514, 2, 2, 1725, 1723, 3, 2, 2, 2, 1725, 1726, 3, 2, 2, 2, 1726, 1727, 3, 2, 2, 2, 1727, 1728, 7, 2243, 2, 2, 1728, 27, 3, 2, 2, 2, 1729, 1732, 7, 290, 2, 2, 1730, 1731, 7, 1174, 2, 2, 1731, 1733, 7, 1409, 2, 2, 1732, 1730, 3, 2, 2, 2, 1732, 1733, 3, 2, 2, 2, 1733, 1734, 3, 2, 2, 2, 1734, 1738, 7, 1193, 2, 2, 1735, 1736, 5, 1436, 719, 2, 1736, 1737, 7, 2218, 2, 2, 1737, 1739, 3, 2, 2, 2, 1738, 1735, 3, 2, 2, 2, 1738, 1739, 3, 2, 2, 2, 1739, 1740, 3, 2, 2, 2, 1740, 1742, 5, 1378, 690, 2, 1741, 1743, 5, 906, 454, 2, 1742, 1741, 3, 2, 2, 2, 1742, 1743, 3, 2, 2, 2, 1743, 1744, 3, 2, 2, 2, 1744, 1748, 9, 2, 2, 2, 1745, 1747, 5, 32, 17, 2, 1746, 1745, 3, 2, 2, 2, 1747, 1750, 3, 2, 2, 2, 1748, 1746, 3, 2, 2, 2, 1748, 1749, 3, 2, 2, 2, 1749, 1751, 3, 2, 2, 2, 1750, 1748, 3, 2, 2, 2, 1751, 1753, 7, 447, 2, 2, 1752, 1754, 5, 1378, 690, 2, 1753, 1752, 3, 2, 2, 2, 1753, 1754, 3, 2, 2, 2, 1754, 1755, 3, 2, 2, 2, 1755, 1756, 7, 2243, 2, 2, 1756, 29, 3, 2, 2, 2, 1757, 1760, 7, 290, 2, 2, 1758, 1759, 7, 1174, 2, 2, 1759, 1761, 7, 1409, 2, 2, 1760, 1758, 3, 2, 2, 2, 1760, 1761, 3, 2, 2, 2, 1761, 1762, 3, 2, 2, 2, 1762, 1763, 7, 1193, 2, 2, 1763, 1767, 7, 135, 2, 2, 1764, 1765, 5, 1436, 719, 2, 1765, 1766, 7, 2218, 2, 2, 1766, 1768, 3, 2, 2, 2, 1767, 1764, 3, 2, 2, 2, 1767, 1768, 3, 2, 2, 2, 1768, 1769, 3, 2, 2, 2, 1769, 1770, 5, 1378, 690, 2, 1770, 1774, 9, 2, 2, 2, 1771, 1773, 5, 38, 20, 2, 1772, 1771, 3, 2, 2, 2, 1773, 1776, 3, 2, 2, 2, 1774, 1772, 3, 2, 2, 2, 1774, 1775, 3, 2, 2, 2, 1775, 1779, 3, 2, 2, 2, 1776, 1774, 3, 2, 2, 2, 1777, 1778, 7, 104, 2, 2, 1778, 1780, 5, 952, 477, 2, 1779, 1777, 3, 2, 2, 2, 1779, 1780, 3, 2, 2, 2, 1780, 1781, 3, 2, 2, 2, 1781, 1783, 7, 447, 2, 2, 1782, 1784, 5, 1378, 690, 2, 1783, 1782, 3, 2, 2, 2, 1783, 1784, 3, 2, 2, 2, 1784, 1785, 3, 2, 2, 2, 1785, 1786, 7, 2243, 2, 2, 1786, 31, 3, 2, 2, 2, 1787, 1796, 5, 936, 469, 2, 1788, 1796, 5, 926, 464, 2, 1789, 1796, 5, 928, 465, 2, 1790, 1796, 5, 930, 466, 2, 1791, 1796, 5, 934, 468, 2, 1792, 1796, 5, 944, 473, 2, 1793, 1796, 5, 34, 18, 2, 1794, 1796, 5, 36, 19, 2, 1795, 1787, 3, 2, 2, 2, 1795, 1788, 3, 2, 2, 2, 1795, 1789, 3, 2, 2, 2, 1795, 1790, 3, 2, 2, 2, 1795, 1791, 3, 2, 2, 2, 1795, 1792, 3, 2, 2, 2, 1795, 1793, 3, 2, 2, 2, 1795, 1794, 3, 2, 2, 2, 1796, 33, 3, 2, 2, 2, 1797, 1798, 7, 1316, 2, 2, 1798, 1810, 5, 1488, 745, 2, 1799, 1800, 7, 2225, 2, 2, 1800, 1805, 5, 918, 460, 2, 1801, 1802, 7, 2231, 2, 2, 1802, 1804, 5, 918, 460, 2, 1803, 1801, 3, 2, 2, 2, 1804, 1807, 3, 2, 2, 2, 1805, 1803, 3, 2, 2, 2, 1805, 1806, 3, 2, 2, 2, 1806, 1808, 3, 2, 2, 2, 1807, 1805, 3, 2, 2, 2, 1808, 1809, 7, 2226, 2, 2, 1809, 1811, 3, 2, 2, 2, 1810, 1799, 3, 2, 2, 2, 1810, 1811, 3, 2, 2, 2, 1811, 1812, 3, 2, 2, 2, 1812, 1813, 7, 2243, 2, 2, 1813, 35, 3, 2, 2, 2, 1814, 1815, 7, 560, 2, 2, 1815, 1827, 5, 1488, 745, 2, 1816, 1817, 7, 2225, 2, 2, 1817, 1822, 5, 918, 460, 2, 1818, 1819, 7, 2231, 2, 2, 1819, 1821, 5, 918, 460, 2, 1820, 1818, 3, 2, 2, 2, 1821, 1824, 3, 2, 2, 2, 1822, 1820, 3, 2, 2, 2, 1822, 1823, 3, 2, 2, 2, 1823, 1825, 3, 2, 2, 2, 1824, 1822, 3, 2, 2, 2, 1825, 1826, 7, 2226, 2, 2, 1826, 1828, 3, 2, 2, 2, 1827, 1816, 3, 2, 2, 2, 1827, 1828, 3, 2, 2, 2, 1828, 1829, 3, 2, 2, 2, 1829, 1830, 7, 1433, 2, 2, 1830, 1832, 5, 1460, 731, 2, 1831, 1833, 7, 1252, 2, 2, 1832, 1831, 3, 2, 2, 2, 1832, 1833, 3, 2, 2, 2, 1833, 1835, 3, 2, 2, 2, 1834, 1836, 7, 377, 2, 2, 1835, 1834, 3, 2, 2, 2, 1835, 1836, 3, 2, 2, 2, 1836, 1838, 3, 2, 2, 2, 1837, 1839, 7, 1426, 2, 2, 1838, 1837, 3, 2, 2, 2, 1838, 1839, 3, 2, 2, 2, 1839, 1840, 3, 2, 2, 2, 1840, 1841, 7, 2243, 2, 2, 1841, 37, 3, 2, 2, 2, 1842, 1852, 5, 926, 464, 2, 1843, 1852, 5, 928, 465, 2, 1844, 1852, 5, 930, 466, 2, 1845, 1852, 5, 934, 468, 2, 1846, 1852, 5, 944, 473, 2, 1847, 1852, 5, 46, 24, 2, 1848, 1852, 5, 44, 23, 2, 1849, 1852, 5, 34, 18, 2, 1850, 1852, 5, 36, 19, 2, 1851, 1842, 3, 2, 2, 2, 1851, 1843, 3, 2, 2, 2, 1851, 1844, 3, 2, 2, 2, 1851, 1845, 3, 2, 2, 2, 1851, 1846, 3, 2, 2, 2, 1851, 1847, 3, 2, 2, 2, 1851, 1848, 3, 2, 2, 2, 1851, 1849, 3, 2, 2, 2, 1851, 1850, 3, 2, 2, 2, 1852, 39, 3, 2, 2, 2, 1853, 1854, 7, 413, 2, 2, 1854, 1855, 7, 1316, 2, 2, 1855, 1856, 5, 1410, 706, 2, 1856, 1857, 7, 2243, 2, 2, 1857, 41, 3, 2, 2, 2, 1858, 1859, 7, 41, 2, 2, 1859, 1860, 7, 1316, 2, 2, 1860, 1861, 5, 1410, 706, 2, 1861, 1863, 7, 225, 2, 2, 1862, 1864, 7, 342, 2, 2, 1863, 1862, 3, 2, 2, 2, 1863, 1864, 3, 2, 2, 2, 1864, 1868, 3, 2, 2, 2, 1865, 1867, 5, 400, 201, 2, 1866, 1865, 3, 2, 2, 2, 1867, 1870, 3, 2, 2, 2, 1868, 1866, 3, 2, 2, 2, 1868, 1869, 3, 2, 2, 2, 1869, 1873, 3, 2, 2, 2, 1870, 1868, 3, 2, 2, 2, 1871, 1872, 7, 1434, 2, 2, 1872, 1874, 7, 1514, 2, 2, 1873, 1871, 3, 2, 2, 2, 1873, 1874, 3, 2, 2, 2, 1874, 1875, 3, 2, 2, 2, 1875, 1876, 7, 2243, 2, 2, 1876, 43, 3, 2, 2, 2, 1877, 1878, 7, 560, 2, 2, 1878, 1890, 5, 1488, 745, 2, 1879, 1880, 7, 2225, 2, 2, 1880, 1885, 5, 918, 460, 2, 1881, 1882, 7, 2231, 2, 2, 1882, 1884, 5, 918, 460, 2, 1883, 1881, 3, 2, 2, 2, 1884, 1887, 3, 2, 2, 2, 1885, 1883, 3, 2, 2, 2, 1885, 1886, 3, 2, 2, 2, 1886, 1888, 3, 2, 2, 2, 1887, 1885, 3, 2, 2, 2, 1888, 1889, 7, 2226, 2, 2, 1889, 1891, 3, 2, 2, 2, 1890, 1879, 3, 2, 2, 2, 1890, 1891, 3, 2, 2, 2, 1891, 1892, 3, 2, 2, 2, 1892, 1893, 7, 1433, 2, 2, 1893, 1900, 5, 1460, 731, 2, 1894, 1899, 5, 906, 454, 2, 1895, 1899, 5, 14, 8, 2, 1896, 1899, 5, 18, 10, 2, 1897, 1899, 7, 377, 2, 2, 1898, 1894, 3, 2, 2, 2, 1898, 1895, 3, 2, 2, 2, 1898, 1896, 3, 2, 2, 2, 1898, 1897, 3, 2, 2, 2, 1899, 1902, 3, 2, 2, 2, 1900, 1898, 3, 2, 2, 2, 1900, 1901, 3, 2, 2, 2, 1901, 1923, 3, 2, 2, 2, 1902, 1900, 3, 2, 2, 2, 1903, 1905, 7, 1252, 2, 2, 1904, 1903, 3, 2, 2, 2, 1904, 1905, 3, 2, 2, 2, 1905, 1907, 3, 2, 2, 2, 1906, 1908, 7, 377, 2, 2, 1907, 1906, 3, 2, 2, 2, 1907, 1908, 3, 2, 2, 2, 1908, 1909, 3, 2, 2, 2, 1909, 1918, 9, 2, 2, 2, 1910, 1912, 7, 346, 2, 2, 1911, 1910, 3, 2, 2, 2, 1911, 1912, 3, 2, 2, 2, 1912, 1914, 3, 2, 2, 2, 1913, 1915, 5, 922, 462, 2, 1914, 1913, 3, 2, 2, 2, 1914, 1915, 3, 2, 2, 2, 1915, 1916, 3, 2, 2, 2, 1916, 1919, 5, 1000, 501, 2, 1917, 1919, 5, 908, 455, 2, 1918, 1911, 3, 2, 2, 2, 1918, 1917, 3, 2, 2, 2, 1919, 1924, 3, 2, 2, 2, 1920, 1921, 9, 3, 2, 2, 1921, 1922, 7, 2065, 2, 2, 1922, 1924, 5, 1380, 691, 2, 1923, 1904, 3, 2, 2, 2, 1923, 1920, 3, 2, 2, 2, 1924, 1925, 3, 2, 2, 2, 1925, 1926, 7, 2243, 2, 2, 1926, 45, 3, 2, 2, 2, 1927, 1928, 7, 1316, 2, 2, 1928, 1940, 5, 1488, 745, 2, 1929, 1930, 7, 2225, 2, 2, 1930, 1935, 5, 918, 460, 2, 1931, 1932, 7, 2231, 2, 2, 1932, 1934, 5, 918, 460, 2, 1933, 1931, 3, 2, 2, 2, 1934, 1937, 3, 2, 2, 2, 1935, 1933, 3, 2, 2, 2, 1935, 1936, 3, 2, 2, 2, 1936, 1938, 3, 2, 2, 2, 1937, 1935, 3, 2, 2, 2, 1938, 1939, 7, 2226, 2, 2, 1939, 1941, 3, 2, 2, 2, 1940, 1929, 3, 2, 2, 2, 1940, 1941, 3, 2, 2, 2, 1941, 1942, 3, 2, 2, 2, 1942, 1952, 9, 2, 2, 2, 1943, 1945, 7, 346, 2, 2, 1944, 1943, 3, 2, 2, 2, 1944, 1945, 3, 2, 2, 2, 1945, 1947, 3, 2, 2, 2, 1946, 1948, 5, 922, 462, 2, 1947, 1946, 3, 2, 2, 2, 1947, 1948, 3, 2, 2, 2, 1948, 1949, 3, 2, 2, 2, 1949, 1953, 5, 1000, 501, 2, 1950, 1953, 5, 908, 455, 2, 1951, 1953, 7, 495, 2, 2, 1952, 1944, 3, 2, 2, 2, 1952, 1950, 3, 2, 2, 2, 1952, 1951, 3, 2, 2, 2, 1953, 1954, 3, 2, 2, 2, 1954, 1955, 7, 2243, 2, 2, 1955, 47, 3, 2, 2, 2, 1956, 1959, 7, 290, 2, 2, 1957, 1958, 7, 1174, 2, 2, 1958, 1960, 7, 1409, 2, 2, 1959, 1957, 3, 2, 2, 2, 1959, 1960, 3, 2, 2, 2, 1960, 1961, 3, 2, 2, 2, 1961, 1962, 7, 1316, 2, 2, 1962, 1974, 5, 1410, 706, 2, 1963, 1964, 7, 2225, 2, 2, 1964, 1969, 5, 918, 460, 2, 1965, 1966, 7, 2231, 2, 2, 1966, 1968, 5, 918, 460, 2, 1967, 1965, 3, 2, 2, 2, 1968, 1971, 3, 2, 2, 2, 1969, 1967, 3, 2, 2, 2, 1969, 1970, 3, 2, 2, 2, 1970, 1972, 3, 2, 2, 2, 1971, 1969, 3, 2, 2, 2, 1972, 1973, 7, 2226, 2, 2, 1973, 1975, 3, 2, 2, 2, 1974, 1963, 3, 2, 2, 2, 1974, 1975, 3, 2, 2, 2, 1975, 1977, 3, 2, 2, 2, 1976, 1978, 5, 906, 454, 2, 1977, 1976, 3, 2, 2, 2, 1977, 1978, 3, 2, 2, 2, 1978, 1979, 3, 2, 2, 2, 1979, 1989, 9, 2, 2, 2, 1980, 1982, 7, 346, 2, 2, 1981, 1980, 3, 2, 2, 2, 1981, 1982, 3, 2, 2, 2, 1982, 1984, 3, 2, 2, 2, 1983, 1985, 5, 922, 462, 2, 1984, 1983, 3, 2, 2, 2, 1984, 1985, 3, 2, 2, 2, 1985, 1986, 3, 2, 2, 2, 1986, 1990, 5, 1000, 501, 2, 1987, 1990, 5, 908, 455, 2, 1988, 1990, 7, 495, 2, 2, 1989, 1981, 3, 2, 2, 2, 1989, 1987, 3, 2, 2, 2, 1989, 1988, 3, 2, 2, 2, 1990, 1991, 3, 2, 2, 2, 1991, 1992, 7, 2243, 2, 2, 1992, 49, 3, 2, 2, 2, 1993, 1994, 7, 413, 2, 2, 1994, 1995, 7, 1980, 2, 2, 1995, 1996, 5, 1412, 707, 2, 1996, 1997, 7, 2243, 2, 2, 1997, 51, 3, 2, 2, 2, 1998, 1999, 7, 41, 2, 2, 1999, 2000, 7, 1980, 2, 2, 2000, 2019, 5, 1412, 707, 2, 2001, 2020, 9, 7, 2, 2, 2002, 2003, 7, 1406, 2, 2, 2003, 2004, 7, 1966, 2, 2, 2004, 2020, 5, 1412, 707, 2, 2005, 2007, 7, 225, 2, 2, 2006, 2008, 7, 342, 2, 2, 2007, 2006, 3, 2, 2, 2, 2007, 2008, 3, 2, 2, 2, 2008, 2012, 3, 2, 2, 2, 2009, 2011, 5, 400, 201, 2, 2010, 2009, 3, 2, 2, 2, 2011, 2014, 3, 2, 2, 2, 2012, 2010, 3, 2, 2, 2, 2012, 2013, 3, 2, 2, 2, 2013, 2017, 3, 2, 2, 2, 2014, 2012, 3, 2, 2, 2, 2015, 2016, 7, 1434, 2, 2, 2016, 2018, 7, 1514, 2, 2, 2017, 2015, 3, 2, 2, 2, 2017, 2018, 3, 2, 2, 2, 2018, 2020, 3, 2, 2, 2, 2019, 2001, 3, 2, 2, 2, 2019, 2002, 3, 2, 2, 2, 2019, 2005, 3, 2, 2, 2, 2020, 2021, 3, 2, 2, 2, 2021, 2022, 7, 2243, 2, 2, 2022, 53, 3, 2, 2, 2, 2023, 2026, 7, 290, 2, 2, 2024, 2025, 7, 1174, 2, 2, 2025, 2027, 7, 1409, 2, 2, 2026, 2024, 3, 2, 2, 2, 2026, 2027, 3, 2, 2, 2, 2027, 2028, 3, 2, 2, 2, 2028, 2029, 7, 1980, 2, 2, 2029, 2033, 5, 1412, 707, 2, 2030, 2034, 5, 60, 31, 2, 2031, 2034, 5, 64, 33, 2, 2032, 2034, 5, 66, 34, 2, 2033, 2030, 3, 2, 2, 2, 2033, 2031, 3, 2, 2, 2, 2033, 2032, 3, 2, 2, 2, 2034, 2036, 3, 2, 2, 2, 2035, 2037, 5, 56, 29, 2, 2036, 2035, 3, 2, 2, 2, 2036, 2037, 3, 2, 2, 2, 2037, 2039, 3, 2, 2, 2, 2038, 2040, 9, 7, 2, 2, 2039, 2038, 3, 2, 2, 2, 2039, 2040, 3, 2, 2, 2, 2040, 2042, 3, 2, 2, 2, 2041, 2043, 5, 58, 30, 2, 2042, 2041, 3, 2, 2, 2, 2042, 2043, 3, 2, 2, 2, 2043, 2044, 3, 2, 2, 2, 2044, 2045, 5, 68, 35, 2, 2045, 2046, 7, 2243, 2, 2, 2046, 55, 3, 2, 2, 2, 2047, 2048, 7, 542, 2, 2, 2048, 2053, 5, 1412, 707, 2, 2049, 2050, 7, 2231, 2, 2, 2050, 2052, 5, 1412, 707, 2, 2051, 2049, 3, 2, 2, 2, 2052, 2055, 3, 2, 2, 2, 2053, 2051, 3, 2, 2, 2, 2053, 2054, 3, 2, 2, 2, 2054, 57, 3, 2, 2, 2, 2055, 2053, 3, 2, 2, 2, 2056, 2057, 7, 2115, 2, 2, 2057, 2058, 7, 2225, 2, 2, 2058, 2059, 5, 1232, 617, 2, 2059, 2060, 7, 2226, 2, 2, 2060, 59, 3, 2, 2, 2, 2061, 2066, 7, 103, 2, 2, 2062, 2066, 7, 32, 2, 2, 2063, 2064, 7, 678, 2, 2, 2064, 2066, 7, 1117, 2, 2, 2065, 2061, 3, 2, 2, 2, 2065, 2062, 3, 2, 2, 2, 2065, 2063, 3, 2, 2, 2, 2066, 2067, 3, 2, 2, 2, 2067, 2069, 5, 78, 40, 2, 2068, 2070, 5, 84, 43, 2, 2069, 2068, 3, 2, 2, 2, 2069, 2070, 3, 2, 2, 2, 2070, 2072, 3, 2, 2, 2, 2071, 2073, 5, 62, 32, 2, 2072, 2071, 3, 2, 2, 2, 2072, 2073, 3, 2, 2, 2, 2073, 61, 3, 2, 2, 2, 2074, 2075, 7, 548, 2, 2, 2075, 2076, 7, 424, 2, 2, 2076, 2077, 7, 1453, 2, 2, 2077, 63, 3, 2, 2, 2, 2078, 2079, 7, 548, 2, 2, 2079, 2081, 5, 78, 40, 2, 2080, 2082, 5, 84, 43, 2, 2081, 2080, 3, 2, 2, 2, 2081, 2082, 3, 2, 2, 2, 2082, 65, 3, 2, 2, 2, 2083, 2084, 9, 8, 2, 2, 2084, 2089, 5, 76, 39, 2, 2085, 2086, 7, 1174, 2, 2, 2086, 2088, 5, 76, 39, 2, 2087, 2085, 3, 2, 2, 2, 2088, 2091, 3, 2, 2, 2, 2089, 2087, 3, 2, 2, 2, 2089, 2090, 3, 2, 2, 2, 2090, 2092, 3, 2, 2, 2, 2091, 2089, 3, 2, 2, 2, 2092, 2100, 7, 1130, 2, 2, 2093, 2101, 7, 318, 2, 2, 2094, 2095, 5, 1374, 688, 2, 2095, 2096, 7, 2218, 2, 2, 2096, 2098, 3, 2, 2, 2, 2097, 2094, 3, 2, 2, 2, 2097, 2098, 3, 2, 2, 2, 2098, 2099, 3, 2, 2, 2, 2099, 2101, 7, 1472, 2, 2, 2100, 2093, 3, 2, 2, 2, 2100, 2097, 3, 2, 2, 2, 2101, 67, 3, 2, 2, 2, 2102, 2103, 7, 233, 2, 2, 2103, 2108, 7, 1980, 2, 2, 2104, 2105, 7, 159, 2, 2, 2105, 2108, 5, 1488, 745, 2, 2106, 2108, 5, 1004, 503, 2, 2107, 2102, 3, 2, 2, 2, 2107, 2104, 3, 2, 2, 2, 2107, 2106, 3, 2, 2, 2, 2108, 69, 3, 2, 2, 2, 2109, 2111, 5, 1376, 689, 2, 2110, 2112, 5, 1450, 726, 2, 2111, 2110, 3, 2, 2, 2, 2111, 2112, 3, 2, 2, 2, 2112, 71, 3, 2, 2, 2, 2113, 2114, 7, 233, 2, 2, 2114, 2116, 7, 1980, 2, 2, 2115, 2117, 5, 922, 462, 2, 2116, 2115, 3, 2, 2, 2, 2116, 2117, 3, 2, 2, 2, 2117, 2119, 3, 2, 2, 2, 2118, 2120, 5, 74, 38, 2, 2119, 2118, 3, 2, 2, 2, 2120, 2121, 3, 2, 2, 2, 2121, 2119, 3, 2, 2, 2, 2121, 2122, 3, 2, 2, 2, 2122, 2123, 3, 2, 2, 2, 2123, 2124, 7, 447, 2, 2, 2124, 2125, 5, 1412, 707, 2, 2125, 73, 3, 2, 2, 2, 2126, 2127, 7, 103, 2, 2, 2127, 2128, 7, 1576, 2, 2, 2128, 2129, 7, 697, 2, 2, 2129, 2130, 5, 1004, 503, 2, 2130, 2131, 7, 103, 2, 2, 2131, 2132, 7, 1576, 2, 2, 2132, 2133, 7, 2243, 2, 2, 2133, 2163, 3, 2, 2, 2, 2134, 2135, 7, 103, 2, 2, 2135, 2136, 7, 424, 2, 2, 2136, 2137, 7, 1453, 2, 2, 2137, 2138, 7, 697, 2, 2, 2138, 2139, 5, 1004, 503, 2, 2139, 2140, 7, 103, 2, 2, 2140, 2141, 7, 424, 2, 2, 2141, 2142, 7, 1453, 2, 2, 2142, 2143, 7, 2243, 2, 2, 2143, 2163, 3, 2, 2, 2, 2144, 2145, 7, 32, 2, 2, 2145, 2146, 7, 1576, 2, 2, 2146, 2147, 7, 697, 2, 2, 2147, 2148, 5, 1004, 503, 2, 2148, 2149, 7, 32, 2, 2, 2149, 2150, 7, 1576, 2, 2, 2150, 2151, 7, 2243, 2, 2, 2151, 2163, 3, 2, 2, 2, 2152, 2153, 7, 32, 2, 2, 2153, 2154, 7, 424, 2, 2, 2154, 2155, 7, 1453, 2, 2, 2155, 2156, 7, 697, 2, 2, 2156, 2157, 5, 1004, 503, 2, 2157, 2158, 7, 32, 2, 2, 2158, 2159, 7, 424, 2, 2, 2159, 2160, 7, 1453, 2, 2, 2160, 2161, 7, 2243, 2, 2, 2161, 2163, 3, 2, 2, 2, 2162, 2126, 3, 2, 2, 2, 2162, 2134, 3, 2, 2, 2, 2162, 2144, 3, 2, 2, 2, 2162, 2152, 3, 2, 2, 2, 2163, 75, 3, 2, 2, 2, 2164, 2191, 7, 41, 2, 2, 2165, 2191, 7, 43, 2, 2, 2166, 2167, 7, 71, 2, 2, 2167, 2191, 7, 1579, 2, 2, 2168, 2191, 7, 79, 2, 2, 2169, 2191, 7, 219, 2, 2, 2170, 2191, 7, 290, 2, 2, 2171, 2172, 7, 390, 2, 2, 2172, 2191, 7, 1579, 2, 2, 2173, 2191, 7, 413, 2, 2, 2174, 2191, 7, 573, 2, 2, 2175, 2191, 7, 942, 2, 2, 2176, 2191, 7, 1406, 2, 2, 2177, 2191, 7, 1436, 2, 2, 2178, 2191, 7, 1982, 2, 2, 2179, 2191, 7, 340, 2, 2, 2180, 2191, 7, 1572, 2, 2, 2181, 2191, 7, 1524, 2, 2, 2182, 2191, 7, 336, 2, 2, 2183, 2191, 7, 788, 2, 2, 2184, 2191, 7, 787, 2, 2, 2185, 2191, 7, 1504, 2, 2, 2186, 2191, 7, 1623, 2, 2, 2187, 2191, 7, 318, 2, 2, 2188, 2191, 7, 1472, 2, 2, 2189, 2191, 7, 542, 2, 2, 2190, 2164, 3, 2, 2, 2, 2190, 2165, 3, 2, 2, 2, 2190, 2166, 3, 2, 2, 2, 2190, 2168, 3, 2, 2, 2, 2190, 2169, 3, 2, 2, 2, 2190, 2170, 3, 2, 2, 2, 2190, 2171, 3, 2, 2, 2, 2190, 2173, 3, 2, 2, 2, 2190, 2174, 3, 2, 2, 2, 2190, 2175, 3, 2, 2, 2, 2190, 2176, 3, 2, 2, 2, 2190, 2177, 3, 2, 2, 2, 2190, 2178, 3, 2, 2, 2, 2190, 2179, 3, 2, 2, 2, 2190, 2180, 3, 2, 2, 2, 2190, 2181, 3, 2, 2, 2, 2190, 2182, 3, 2, 2, 2, 2190, 2183, 3, 2, 2, 2, 2190, 2184, 3, 2, 2, 2, 2190, 2185, 3, 2, 2, 2, 2190, 2186, 3, 2, 2, 2, 2190, 2187, 3, 2, 2, 2, 2190, 2188, 3, 2, 2, 2, 2190, 2189, 3, 2, 2, 2, 2191, 77, 3, 2, 2, 2, 2192, 2197, 5, 80, 41, 2, 2193, 2194, 7, 1174, 2, 2, 2194, 2196, 5, 80, 41, 2, 2195, 2193, 3, 2, 2, 2, 2196, 2199, 3, 2, 2, 2, 2197, 2195, 3, 2, 2, 2, 2197, 2198, 3, 2, 2, 2, 2198, 2200, 3, 2, 2, 2, 2199, 2197, 3, 2, 2, 2, 2200, 2202, 7, 1130, 2, 2, 2201, 2203, 5, 82, 42, 2, 2202, 2201, 3, 2, 2, 2, 2202, 2203, 3, 2, 2, 2, 2203, 2204, 3, 2, 2, 2, 2204, 2205, 5, 1428, 715, 2, 2205, 79, 3, 2, 2, 2, 2206, 2209, 9, 9, 2, 2, 2207, 2208, 7, 1117, 2, 2, 2208, 2210, 5, 1444, 723, 2, 2209, 2207, 3, 2, 2, 2, 2209, 2210, 3, 2, 2, 2, 2210, 81, 3, 2, 2, 2, 2211, 2212, 7, 897, 2, 2, 2212, 2213, 7, 1914, 2, 2, 2213, 2214, 5, 1428, 715, 2, 2214, 2215, 7, 1117, 2, 2, 2215, 83, 3, 2, 2, 2, 2216, 2218, 7, 1377, 2, 2, 2217, 2219, 5, 86, 44, 2, 2218, 2217, 3, 2, 2, 2, 2219, 2220, 3, 2, 2, 2, 2220, 2218, 3, 2, 2, 2, 2220, 2221, 3, 2, 2, 2, 2221, 85, 3, 2, 2, 2, 2222, 2223, 9, 10, 2, 2, 2223, 2224, 5, 1354, 678, 2, 2224, 87, 3, 2, 2, 2, 2225, 2226, 7, 413, 2, 2, 2226, 2228, 7, 1989, 2, 2, 2227, 2229, 7, 135, 2, 2, 2228, 2227, 3, 2, 2, 2, 2228, 2229, 3, 2, 2, 2, 2229, 2230, 3, 2, 2, 2, 2230, 2232, 5, 1402, 702, 2, 2231, 2233, 9, 11, 2, 2, 2232, 2231, 3, 2, 2, 2, 2232, 2233, 3, 2, 2, 2, 2233, 2234, 3, 2, 2, 2, 2234, 2235, 7, 2243, 2, 2, 2235, 89, 3, 2, 2, 2, 2236, 2237, 7, 41, 2, 2, 2237, 2238, 7, 1989, 2, 2, 2238, 2245, 5, 1402, 702, 2, 2239, 2246, 5, 92, 47, 2, 2240, 2246, 5, 94, 48, 2, 2241, 2246, 5, 96, 49, 2, 2242, 2246, 5, 104, 53, 2, 2243, 2246, 5, 138, 70, 2, 2244, 2246, 5, 150, 76, 2, 2245, 2239, 3, 2, 2, 2, 2245, 2240, 3, 2, 2, 2, 2245, 2241, 3, 2, 2, 2, 2245, 2242, 3, 2, 2, 2, 2245, 2243, 3, 2, 2, 2, 2245, 2244, 3, 2, 2, 2, 2246, 2248, 3, 2, 2, 2, 2247, 2249, 5, 106, 54, 2, 2248, 2247, 3, 2, 2, 2, 2248, 2249, 3, 2, 2, 2, 2249, 2250, 3, 2, 2, 2, 2250, 2251, 7, 2243, 2, 2, 2251, 91, 3, 2, 2, 2, 2252, 2254, 7, 225, 2, 2, 2253, 2255, 7, 342, 2, 2, 2254, 2253, 3, 2, 2, 2, 2254, 2255, 3, 2, 2, 2, 2255, 2257, 3, 2, 2, 2, 2256, 2258, 9, 12, 2, 2, 2257, 2256, 3, 2, 2, 2, 2257, 2258, 3, 2, 2, 2, 2258, 2262, 3, 2, 2, 2, 2259, 2261, 5, 400, 201, 2, 2260, 2259, 3, 2, 2, 2, 2261, 2264, 3, 2, 2, 2, 2262, 2260, 3, 2, 2, 2, 2262, 2263, 3, 2, 2, 2, 2263, 2267, 3, 2, 2, 2, 2264, 2262, 3, 2, 2, 2, 2265, 2266, 7, 1434, 2, 2, 2266, 2268, 7, 1514, 2, 2, 2267, 2265, 3, 2, 2, 2, 2267, 2268, 3, 2, 2, 2, 2268, 93, 3, 2, 2, 2, 2269, 2271, 7, 1409, 2, 2, 2270, 2272, 5, 906, 454, 2, 2271, 2270, 3, 2, 2, 2, 2271, 2272, 3, 2, 2, 2, 2272, 2273, 3, 2, 2, 2, 2273, 2274, 7, 63, 2, 2, 2274, 2275, 7, 1109, 2, 2, 2275, 2276, 7, 2225, 2, 2, 2276, 2281, 5, 140, 71, 2, 2277, 2278, 7, 2231, 2, 2, 2278, 2280, 5, 140, 71, 2, 2279, 2277, 3, 2, 2, 2, 2280, 2283, 3, 2, 2, 2, 2281, 2279, 3, 2, 2, 2, 2281, 2282, 3, 2, 2, 2, 2282, 2284, 3, 2, 2, 2, 2283, 2281, 3, 2, 2, 2, 2284, 2285, 7, 2226, 2, 2, 2285, 95, 3, 2, 2, 2, 2286, 2291, 5, 98, 50, 2, 2287, 2288, 7, 2231, 2, 2, 2288, 2290, 5, 98, 50, 2, 2289, 2287, 3, 2, 2, 2, 2290, 2293, 3, 2, 2, 2, 2291, 2289, 3, 2, 2, 2, 2291, 2292, 3, 2, 2, 2, 2292, 97, 3, 2, 2, 2, 2293, 2291, 3, 2, 2, 2, 2294, 2297, 9, 13, 2, 2, 2295, 2298, 5, 160, 81, 2, 2296, 2298, 5, 148, 75, 2, 2297, 2295, 3, 2, 2, 2, 2297, 2296, 3, 2, 2, 2, 2298, 99, 3, 2, 2, 2, 2299, 2300, 9, 14, 2, 2, 2300, 2313, 7, 77, 2, 2, 2301, 2314, 5, 102, 52, 2, 2302, 2303, 7, 2225, 2, 2, 2303, 2308, 5, 102, 52, 2, 2304, 2305, 7, 2231, 2, 2, 2305, 2307, 5, 102, 52, 2, 2306, 2304, 3, 2, 2, 2, 2307, 2310, 3, 2, 2, 2, 2308, 2306, 3, 2, 2, 2, 2308, 2309, 3, 2, 2, 2, 2309, 2311, 3, 2, 2, 2, 2310, 2308, 3, 2, 2, 2, 2311, 2312, 7, 2226, 2, 2, 2312, 2314, 3, 2, 2, 2, 2313, 2301, 3, 2, 2, 2, 2313, 2302, 3, 2, 2, 2, 2314, 101, 3, 2, 2, 2, 2315, 2317, 5, 1366, 684, 2, 2316, 2318, 5, 1460, 731, 2, 2317, 2316, 3, 2, 2, 2, 2317, 2318, 3, 2, 2, 2, 2318, 103, 3, 2, 2, 2, 2319, 2325, 7, 865, 2, 2, 2320, 2321, 7, 760, 2, 2, 2321, 2326, 5, 1236, 619, 2, 2322, 2323, 7, 429, 2, 2, 2323, 2324, 7, 1989, 2, 2, 2324, 2326, 5, 1460, 731, 2, 2325, 2320, 3, 2, 2, 2, 2325, 2322, 3, 2, 2, 2, 2326, 105, 3, 2, 2, 2, 2327, 2344, 7, 694, 2, 2, 2328, 2338, 7, 164, 2, 2, 2329, 2330, 7, 271, 2, 2, 2330, 2331, 7, 1966, 2, 2, 2331, 2339, 7, 1613, 2, 2, 2332, 2334, 7, 1075, 2, 2, 2333, 2332, 3, 2, 2, 2, 2333, 2334, 3, 2, 2, 2, 2334, 2335, 3, 2, 2, 2, 2335, 2336, 7, 621, 2, 2, 2336, 2337, 7, 1914, 2, 2, 2337, 2339, 7, 319, 2, 2, 2338, 2329, 3, 2, 2, 2, 2338, 2333, 3, 2, 2, 2, 2338, 2339, 3, 2, 2, 2, 2339, 2341, 3, 2, 2, 2, 2340, 2342, 5, 108, 55, 2, 2341, 2340, 3, 2, 2, 2, 2341, 2342, 3, 2, 2, 2, 2342, 2344, 3, 2, 2, 2, 2343, 2327, 3, 2, 2, 2, 2343, 2328, 3, 2, 2, 2, 2344, 107, 3, 2, 2, 2, 2345, 2347, 7, 544, 2, 2, 2346, 2345, 3, 2, 2, 2, 2346, 2347, 3, 2, 2, 2, 2347, 2348, 3, 2, 2, 2, 2348, 2349, 7, 472, 2, 2, 2349, 2350, 7, 693, 2, 2, 2350, 2351, 5, 1428, 715, 2, 2351, 109, 3, 2, 2, 2, 2352, 2355, 7, 290, 2, 2, 2353, 2354, 7, 1174, 2, 2, 2354, 2356, 7, 1409, 2, 2, 2355, 2353, 3, 2, 2, 2, 2355, 2356, 3, 2, 2, 2, 2356, 2357, 3, 2, 2, 2, 2357, 2360, 7, 1989, 2, 2, 2358, 2361, 5, 112, 57, 2, 2359, 2361, 5, 124, 63, 2, 2360, 2358, 3, 2, 2, 2, 2360, 2359, 3, 2, 2, 2, 2361, 2362, 3, 2, 2, 2, 2362, 2363, 7, 2243, 2, 2, 2363, 111, 3, 2, 2, 2, 2364, 2367, 5, 1402, 702, 2, 2365, 2366, 7, 1119, 2, 2, 2366, 2368, 7, 2221, 2, 2, 2367, 2365, 3, 2, 2, 2, 2367, 2368, 3, 2, 2, 2, 2368, 2370, 3, 2, 2, 2, 2369, 2371, 5, 114, 58, 2, 2370, 2369, 3, 2, 2, 2, 2370, 2371, 3, 2, 2, 2, 2371, 113, 3, 2, 2, 2, 2372, 2374, 5, 906, 454, 2, 2373, 2372, 3, 2, 2, 2, 2373, 2374, 3, 2, 2, 2, 2374, 2377, 3, 2, 2, 2, 2375, 2378, 5, 116, 59, 2, 2376, 2378, 5, 118, 60, 2, 2377, 2375, 3, 2, 2, 2, 2377, 2376, 3, 2, 2, 2, 2378, 2380, 3, 2, 2, 2, 2379, 2381, 5, 122, 62, 2, 2380, 2379, 3, 2, 2, 2, 2380, 2381, 3, 2, 2, 2, 2381, 2393, 3, 2, 2, 2, 2382, 2383, 7, 2225, 2, 2, 2383, 2388, 5, 140, 71, 2, 2384, 2385, 7, 2231, 2, 2, 2385, 2387, 5, 140, 71, 2, 2386, 2384, 3, 2, 2, 2, 2387, 2390, 3, 2, 2, 2, 2388, 2386, 3, 2, 2, 2, 2388, 2389, 3, 2, 2, 2, 2389, 2391, 3, 2, 2, 2, 2390, 2388, 3, 2, 2, 2, 2391, 2392, 7, 2226, 2, 2, 2392, 2394, 3, 2, 2, 2, 2393, 2382, 3, 2, 2, 2, 2393, 2394, 3, 2, 2, 2, 2394, 2398, 3, 2, 2, 2, 2395, 2397, 5, 138, 70, 2, 2396, 2395, 3, 2, 2, 2, 2397, 2400, 3, 2, 2, 2, 2398, 2396, 3, 2, 2, 2, 2398, 2399, 3, 2, 2, 2, 2399, 115, 3, 2, 2, 2, 2400, 2398, 3, 2, 2, 2, 2401, 2405, 9, 2, 2, 2, 2402, 2406, 7, 1109, 2, 2, 2403, 2406, 5, 950, 476, 2, 2404, 2406, 5, 120, 61, 2, 2405, 2402, 3, 2, 2, 2, 2405, 2403, 3, 2, 2, 2, 2405, 2404, 3, 2, 2, 2, 2406, 117, 3, 2, 2, 2, 2407, 2408, 7, 1999, 2, 2, 2408, 2409, 5, 1460, 731, 2, 2409, 119, 3, 2, 2, 2, 2410, 2411, 7, 1914, 2, 2, 2411, 2412, 7, 1117, 2, 2, 2412, 2415, 5, 1460, 731, 2, 2413, 2414, 7, 1075, 2, 2, 2414, 2416, 7, 1099, 2, 2, 2415, 2413, 3, 2, 2, 2, 2415, 2416, 3, 2, 2, 2, 2416, 121, 3, 2, 2, 2, 2417, 2418, 7, 495, 2, 2, 2418, 2419, 7, 881, 2, 2, 2419, 2420, 5, 1236, 619, 2, 2420, 2421, 7, 731, 2, 2, 2421, 2422, 7, 702, 2, 2, 2422, 2423, 7, 2065, 2, 2, 2423, 2424, 9, 15, 2, 2, 2424, 123, 3, 2, 2, 2, 2425, 2426, 7, 135, 2, 2, 2426, 2427, 5, 1402, 702, 2, 2427, 2429, 9, 2, 2, 2, 2428, 2430, 5, 126, 64, 2, 2429, 2428, 3, 2, 2, 2, 2430, 2431, 3, 2, 2, 2, 2431, 2429, 3, 2, 2, 2, 2431, 2432, 3, 2, 2, 2, 2432, 2433, 3, 2, 2, 2, 2433, 2434, 7, 447, 2, 2, 2434, 125, 3, 2, 2, 2, 2435, 2439, 5, 128, 65, 2, 2436, 2439, 5, 130, 66, 2, 2437, 2439, 5, 150, 76, 2, 2438, 2435, 3, 2, 2, 2, 2438, 2436, 3, 2, 2, 2, 2438, 2437, 3, 2, 2, 2, 2439, 127, 3, 2, 2, 2, 2440, 2441, 9, 16, 2, 2, 2441, 2442, 7, 828, 2, 2, 2442, 2443, 5, 134, 68, 2, 2443, 129, 3, 2, 2, 2, 2444, 2448, 9, 17, 2, 2, 2445, 2449, 5, 132, 67, 2, 2446, 2449, 5, 134, 68, 2, 2447, 2449, 5, 136, 69, 2, 2448, 2445, 3, 2, 2, 2, 2448, 2446, 3, 2, 2, 2, 2448, 2447, 3, 2, 2, 2, 2449, 131, 3, 2, 2, 2, 2450, 2451, 7, 1316, 2, 2, 2451, 2452, 5, 1410, 706, 2, 2452, 2453, 7, 2225, 2, 2, 2453, 2458, 5, 166, 84, 2, 2454, 2455, 7, 2231, 2, 2, 2455, 2457, 5, 166, 84, 2, 2456, 2454, 3, 2, 2, 2, 2457, 2460, 3, 2, 2, 2, 2458, 2456, 3, 2, 2, 2, 2458, 2459, 3, 2, 2, 2, 2459, 2461, 3, 2, 2, 2, 2460, 2458, 3, 2, 2, 2, 2461, 2462, 7, 2226, 2, 2, 2462, 2473, 9, 2, 2, 2, 2463, 2474, 5, 908, 455, 2, 2464, 2466, 7, 346, 2, 2, 2465, 2464, 3, 2, 2, 2, 2465, 2466, 3, 2, 2, 2, 2466, 2468, 3, 2, 2, 2, 2467, 2469, 5, 922, 462, 2, 2468, 2467, 3, 2, 2, 2, 2468, 2469, 3, 2, 2, 2, 2469, 2470, 3, 2, 2, 2, 2470, 2471, 5, 1000, 501, 2, 2471, 2472, 7, 2243, 2, 2, 2472, 2474, 3, 2, 2, 2, 2473, 2463, 3, 2, 2, 2, 2473, 2465, 3, 2, 2, 2, 2474, 133, 3, 2, 2, 2, 2475, 2476, 7, 560, 2, 2, 2476, 2488, 5, 1408, 705, 2, 2477, 2478, 7, 2225, 2, 2, 2478, 2483, 5, 166, 84, 2, 2479, 2480, 7, 2231, 2, 2, 2480, 2482, 5, 166, 84, 2, 2481, 2479, 3, 2, 2, 2, 2482, 2485, 3, 2, 2, 2, 2483, 2481, 3, 2, 2, 2, 2483, 2484, 3, 2, 2, 2, 2484, 2486, 3, 2, 2, 2, 2485, 2483, 3, 2, 2, 2, 2486, 2487, 7, 2226, 2, 2, 2487, 2489, 3, 2, 2, 2, 2488, 2477, 3, 2, 2, 2, 2488, 2489, 3, 2, 2, 2, 2489, 2490, 3, 2, 2, 2, 2490, 2491, 7, 1433, 2, 2, 2491, 2492, 5, 1460, 731, 2, 2492, 2503, 9, 2, 2, 2, 2493, 2504, 5, 908, 455, 2, 2494, 2496, 7, 346, 2, 2, 2495, 2494, 3, 2, 2, 2, 2495, 2496, 3, 2, 2, 2, 2496, 2498, 3, 2, 2, 2, 2497, 2499, 5, 922, 462, 2, 2498, 2497, 3, 2, 2, 2, 2498, 2499, 3, 2, 2, 2, 2499, 2500, 3, 2, 2, 2, 2500, 2501, 5, 1000, 501, 2, 2501, 2502, 7, 2243, 2, 2, 2502, 2504, 3, 2, 2, 2, 2503, 2493, 3, 2, 2, 2, 2503, 2495, 3, 2, 2, 2, 2504, 135, 3, 2, 2, 2, 2505, 2507, 7, 525, 2, 2, 2506, 2505, 3, 2, 2, 2, 2506, 2507, 3, 2, 2, 2, 2507, 2509, 3, 2, 2, 2, 2508, 2510, 7, 676, 2, 2, 2509, 2508, 3, 2, 2, 2, 2509, 2510, 3, 2, 2, 2, 2510, 2511, 3, 2, 2, 2, 2511, 2512, 7, 261, 2, 2, 2512, 2513, 7, 560, 2, 2, 2513, 2531, 5, 1460, 731, 2, 2514, 2515, 7, 2225, 2, 2, 2515, 2516, 7, 1493, 2, 2, 2516, 2517, 7, 654, 2, 2, 2517, 2518, 7, 1184, 2, 2, 2518, 2519, 5, 1460, 731, 2, 2519, 2520, 7, 2231, 2, 2, 2520, 2521, 3, 2, 2, 2, 2521, 2526, 5, 166, 84, 2, 2522, 2523, 7, 2231, 2, 2, 2523, 2525, 5, 166, 84, 2, 2524, 2522, 3, 2, 2, 2, 2525, 2528, 3, 2, 2, 2, 2526, 2524, 3, 2, 2, 2, 2526, 2527, 3, 2, 2, 2, 2527, 2529, 3, 2, 2, 2, 2528, 2526, 3, 2, 2, 2, 2529, 2530, 7, 2226, 2, 2, 2530, 2532, 3, 2, 2, 2, 2531, 2514, 3, 2, 2, 2, 2531, 2532, 3, 2, 2, 2, 2532, 2533, 3, 2, 2, 2, 2533, 2534, 7, 1433, 2, 2, 2534, 2535, 7, 1493, 2, 2, 2535, 2536, 7, 63, 2, 2, 2536, 2537, 7, 1427, 2, 2, 2537, 2548, 9, 2, 2, 2, 2538, 2549, 5, 908, 455, 2, 2539, 2541, 7, 346, 2, 2, 2540, 2539, 3, 2, 2, 2, 2540, 2541, 3, 2, 2, 2, 2541, 2543, 3, 2, 2, 2, 2542, 2544, 5, 922, 462, 2, 2543, 2542, 3, 2, 2, 2, 2543, 2544, 3, 2, 2, 2, 2544, 2545, 3, 2, 2, 2, 2545, 2546, 5, 1000, 501, 2, 2546, 2547, 7, 2243, 2, 2, 2547, 2549, 3, 2, 2, 2, 2548, 2538, 3, 2, 2, 2, 2548, 2540, 3, 2, 2, 2, 2549, 137, 3, 2, 2, 2, 2550, 2552, 7, 1075, 2, 2, 2551, 2550, 3, 2, 2, 2, 2551, 2552, 3, 2, 2, 2, 2552, 2553, 3, 2, 2, 2, 2553, 2554, 9, 18, 2, 2, 2554, 139, 3, 2, 2, 2, 2555, 2556, 5, 1488, 745, 2, 2556, 2558, 5, 1460, 731, 2, 2557, 2559, 5, 142, 72, 2, 2558, 2557, 3, 2, 2, 2, 2558, 2559, 3, 2, 2, 2, 2559, 2562, 3, 2, 2, 2, 2560, 2562, 5, 144, 73, 2, 2561, 2555, 3, 2, 2, 2, 2561, 2560, 3, 2, 2, 2, 2562, 141, 3, 2, 2, 2, 2563, 2564, 7, 495, 2, 2, 2564, 2565, 7, 881, 2, 2, 2565, 2566, 5, 1236, 619, 2, 2566, 143, 3, 2, 2, 2, 2567, 2569, 5, 138, 70, 2, 2568, 2567, 3, 2, 2, 2, 2568, 2569, 3, 2, 2, 2, 2569, 2571, 3, 2, 2, 2, 2570, 2572, 5, 146, 74, 2, 2571, 2570, 3, 2, 2, 2, 2572, 2573, 3, 2, 2, 2, 2573, 2571, 3, 2, 2, 2, 2573, 2574, 3, 2, 2, 2, 2574, 2577, 3, 2, 2, 2, 2575, 2576, 7, 2231, 2, 2, 2576, 2578, 5, 162, 82, 2, 2577, 2575, 3, 2, 2, 2, 2577, 2578, 3, 2, 2, 2, 2578, 145, 3, 2, 2, 2, 2579, 2583, 5, 148, 75, 2, 2580, 2583, 5, 158, 80, 2, 2581, 2583, 5, 160, 81, 2, 2582, 2579, 3, 2, 2, 2, 2582, 2580, 3, 2, 2, 2, 2582, 2581, 3, 2, 2, 2, 2583, 147, 3, 2, 2, 2, 2584, 2587, 9, 17, 2, 2, 2585, 2588, 5, 154, 78, 2, 2586, 2588, 5, 156, 79, 2, 2587, 2585, 3, 2, 2, 2, 2587, 2586, 3, 2, 2, 2, 2588, 149, 3, 2, 2, 2, 2589, 2590, 7, 1189, 2, 2, 2590, 2591, 7, 828, 2, 2, 2591, 2592, 5, 152, 77, 2, 2592, 151, 3, 2, 2, 2, 2593, 2594, 7, 560, 2, 2, 2594, 2606, 5, 1408, 705, 2, 2595, 2596, 7, 2225, 2, 2, 2596, 2601, 5, 166, 84, 2, 2597, 2598, 7, 2231, 2, 2, 2598, 2600, 5, 166, 84, 2, 2599, 2597, 3, 2, 2, 2, 2600, 2603, 3, 2, 2, 2, 2601, 2599, 3, 2, 2, 2, 2601, 2602, 3, 2, 2, 2, 2602, 2604, 3, 2, 2, 2, 2603, 2601, 3, 2, 2, 2, 2604, 2605, 7, 2226, 2, 2, 2605, 2607, 3, 2, 2, 2, 2606, 2595, 3, 2, 2, 2, 2606, 2607, 3, 2, 2, 2, 2607, 2608, 3, 2, 2, 2, 2608, 2613, 7, 1433, 2, 2, 2609, 2614, 5, 1460, 731, 2, 2610, 2611, 7, 1493, 2, 2, 2611, 2612, 7, 63, 2, 2, 2612, 2614, 7, 1427, 2, 2, 2613, 2609, 3, 2, 2, 2, 2613, 2610, 3, 2, 2, 2, 2614, 2626, 3, 2, 2, 2, 2615, 2617, 7, 1252, 2, 2, 2616, 2615, 3, 2, 2, 2, 2616, 2617, 3, 2, 2, 2, 2617, 2618, 3, 2, 2, 2, 2618, 2620, 9, 2, 2, 2, 2619, 2621, 7, 346, 2, 2, 2620, 2619, 3, 2, 2, 2, 2620, 2621, 3, 2, 2, 2, 2621, 2623, 3, 2, 2, 2, 2622, 2624, 5, 922, 462, 2, 2623, 2622, 3, 2, 2, 2, 2623, 2624, 3, 2, 2, 2, 2624, 2625, 3, 2, 2, 2, 2625, 2627, 5, 1000, 501, 2, 2626, 2616, 3, 2, 2, 2, 2626, 2627, 3, 2, 2, 2, 2627, 2629, 3, 2, 2, 2, 2628, 2630, 7, 2243, 2, 2, 2629, 2628, 3, 2, 2, 2, 2629, 2630, 3, 2, 2, 2, 2630, 153, 3, 2, 2, 2, 2631, 2632, 7, 1316, 2, 2, 2632, 2633, 5, 1410, 706, 2, 2633, 2634, 7, 2225, 2, 2, 2634, 2639, 5, 166, 84, 2, 2635, 2636, 7, 2231, 2, 2, 2636, 2638, 5, 166, 84, 2, 2637, 2635, 3, 2, 2, 2, 2638, 2641, 3, 2, 2, 2, 2639, 2637, 3, 2, 2, 2, 2639, 2640, 3, 2, 2, 2, 2640, 2642, 3, 2, 2, 2, 2641, 2639, 3, 2, 2, 2, 2642, 2645, 7, 2226, 2, 2, 2643, 2644, 9, 2, 2, 2, 2644, 2646, 5, 908, 455, 2, 2645, 2643, 3, 2, 2, 2, 2645, 2646, 3, 2, 2, 2, 2646, 155, 3, 2, 2, 2, 2647, 2648, 7, 560, 2, 2, 2648, 2660, 5, 1408, 705, 2, 2649, 2650, 7, 2225, 2, 2, 2650, 2655, 5, 166, 84, 2, 2651, 2652, 7, 2231, 2, 2, 2652, 2654, 5, 166, 84, 2, 2653, 2651, 3, 2, 2, 2, 2654, 2657, 3, 2, 2, 2, 2655, 2653, 3, 2, 2, 2, 2655, 2656, 3, 2, 2, 2, 2656, 2658, 3, 2, 2, 2, 2657, 2655, 3, 2, 2, 2, 2658, 2659, 7, 2226, 2, 2, 2659, 2661, 3, 2, 2, 2, 2660, 2649, 3, 2, 2, 2, 2660, 2661, 3, 2, 2, 2, 2661, 2662, 3, 2, 2, 2, 2662, 2667, 7, 1433, 2, 2, 2663, 2668, 5, 1460, 731, 2, 2664, 2665, 7, 1493, 2, 2, 2665, 2666, 7, 63, 2, 2, 2666, 2668, 7, 1427, 2, 2, 2667, 2663, 3, 2, 2, 2, 2667, 2664, 3, 2, 2, 2, 2668, 2677, 3, 2, 2, 2, 2669, 2670, 9, 2, 2, 2, 2670, 2678, 5, 908, 455, 2, 2671, 2673, 7, 495, 2, 2, 2672, 2674, 7, 2079, 2, 2, 2673, 2672, 3, 2, 2, 2, 2673, 2674, 3, 2, 2, 2, 2674, 2675, 3, 2, 2, 2, 2675, 2676, 7, 881, 2, 2, 2676, 2678, 5, 1236, 619, 2, 2677, 2669, 3, 2, 2, 2, 2677, 2671, 3, 2, 2, 2, 2677, 2678, 3, 2, 2, 2, 2678, 157, 3, 2, 2, 2, 2679, 2681, 7, 525, 2, 2, 2680, 2679, 3, 2, 2, 2, 2680, 2681, 3, 2, 2, 2, 2681, 2683, 3, 2, 2, 2, 2682, 2684, 7, 676, 2, 2, 2683, 2682, 3, 2, 2, 2, 2683, 2684, 3, 2, 2, 2, 2684, 2685, 3, 2, 2, 2, 2685, 2686, 7, 261, 2, 2, 2686, 2687, 7, 560, 2, 2, 2687, 2705, 5, 1460, 731, 2, 2688, 2689, 7, 2225, 2, 2, 2689, 2690, 7, 1493, 2, 2, 2690, 2691, 7, 654, 2, 2, 2691, 2692, 7, 1184, 2, 2, 2692, 2693, 5, 1460, 731, 2, 2693, 2694, 7, 2231, 2, 2, 2694, 2695, 3, 2, 2, 2, 2695, 2700, 5, 166, 84, 2, 2696, 2697, 7, 2231, 2, 2, 2697, 2699, 5, 166, 84, 2, 2698, 2696, 3, 2, 2, 2, 2699, 2702, 3, 2, 2, 2, 2700, 2698, 3, 2, 2, 2, 2700, 2701, 3, 2, 2, 2, 2701, 2703, 3, 2, 2, 2, 2702, 2700, 3, 2, 2, 2, 2703, 2704, 7, 2226, 2, 2, 2704, 2706, 3, 2, 2, 2, 2705, 2688, 3, 2, 2, 2, 2705, 2706, 3, 2, 2, 2, 2706, 2707, 3, 2, 2, 2, 2707, 2708, 7, 1433, 2, 2, 2708, 2709, 7, 1493, 2, 2, 2709, 2710, 7, 63, 2, 2, 2710, 2713, 7, 1427, 2, 2, 2711, 2712, 9, 2, 2, 2, 2712, 2714, 5, 908, 455, 2, 2713, 2711, 3, 2, 2, 2, 2713, 2714, 3, 2, 2, 2, 2714, 159, 3, 2, 2, 2, 2715, 2716, 9, 16, 2, 2, 2716, 2717, 7, 828, 2, 2, 2717, 2718, 5, 156, 79, 2, 2718, 161, 3, 2, 2, 2, 2719, 2720, 7, 1289, 2, 2, 2720, 2721, 7, 1424, 2, 2, 2721, 2722, 7, 2225, 2, 2, 2722, 2727, 5, 164, 83, 2, 2723, 2724, 7, 2231, 2, 2, 2724, 2726, 5, 164, 83, 2, 2725, 2723, 3, 2, 2, 2, 2726, 2729, 3, 2, 2, 2, 2727, 2725, 3, 2, 2, 2, 2727, 2728, 3, 2, 2, 2, 2728, 2730, 3, 2, 2, 2, 2729, 2727, 3, 2, 2, 2, 2730, 2731, 7, 2226, 2, 2, 2731, 163, 3, 2, 2, 2, 2732, 2735, 5, 1488, 745, 2, 2733, 2735, 7, 353, 2, 2, 2734, 2732, 3, 2, 2, 2, 2734, 2733, 3, 2, 2, 2, 2735, 165, 3, 2, 2, 2, 2736, 2737, 5, 1382, 692, 2, 2737, 2738, 5, 1460, 731, 2, 2738, 167, 3, 2, 2, 2, 2739, 2740, 7, 413, 2, 2, 2740, 2741, 7, 1498, 2, 2, 2741, 2742, 5, 1404, 703, 2, 2742, 2743, 7, 2243, 2, 2, 2743, 169, 3, 2, 2, 2, 2744, 2745, 7, 41, 2, 2, 2745, 2746, 7, 1498, 2, 2, 2746, 2748, 5, 1404, 703, 2, 2747, 2749, 5, 178, 90, 2, 2748, 2747, 3, 2, 2, 2, 2749, 2750, 3, 2, 2, 2, 2750, 2748, 3, 2, 2, 2, 2750, 2751, 3, 2, 2, 2, 2751, 2752, 3, 2, 2, 2, 2752, 2753, 7, 2243, 2, 2, 2753, 171, 3, 2, 2, 2, 2754, 2755, 7, 41, 2, 2, 2755, 2785, 7, 1508, 2, 2, 2756, 2757, 7, 29, 2, 2, 2757, 2786, 9, 19, 2, 2, 2758, 2759, 7, 197, 2, 2, 2759, 2760, 7, 318, 2, 2, 2760, 2761, 7, 762, 2, 2, 2761, 2786, 5, 1382, 692, 2, 2762, 2763, 5, 650, 326, 2, 2763, 2764, 7, 220, 2, 2, 2764, 2765, 7, 654, 2, 2, 2765, 2766, 7, 1316, 2, 2, 2766, 2786, 3, 2, 2, 2, 2767, 2768, 5, 650, 326, 2, 2768, 2769, 7, 582, 2, 2, 2769, 2786, 3, 2, 2, 2, 2770, 2773, 5, 650, 326, 2, 2771, 2773, 7, 544, 2, 2, 2772, 2770, 3, 2, 2, 2, 2772, 2771, 3, 2, 2, 2, 2773, 2774, 3, 2, 2, 2, 2774, 2775, 7, 1197, 2, 2, 2775, 2781, 9, 20, 2, 2, 2776, 2779, 7, 1197, 2, 2, 2777, 2780, 5, 1292, 647, 2, 2778, 2780, 5, 1382, 692, 2, 2779, 2777, 3, 2, 2, 2, 2779, 2778, 3, 2, 2, 2, 2780, 2782, 3, 2, 2, 2, 2781, 2776, 3, 2, 2, 2, 2781, 2782, 3, 2, 2, 2, 2782, 2786, 3, 2, 2, 2, 2783, 2784, 7, 1512, 2, 2, 2784, 2786, 5, 174, 88, 2, 2785, 2756, 3, 2, 2, 2, 2785, 2758, 3, 2, 2, 2, 2785, 2762, 3, 2, 2, 2, 2785, 2767, 3, 2, 2, 2, 2785, 2772, 3, 2, 2, 2, 2785, 2783, 3, 2, 2, 2, 2786, 173, 3, 2, 2, 2, 2787, 2788, 5, 1382, 692, 2, 2788, 2789, 7, 2245, 2, 2, 2789, 2790, 5, 402, 202, 2, 2790, 175, 3, 2, 2, 2, 2791, 2792, 7, 290, 2, 2, 2792, 2793, 7, 1498, 2, 2, 2793, 2798, 5, 1404, 703, 2, 2794, 2797, 5, 180, 91, 2, 2795, 2797, 5, 178, 90, 2, 2796, 2794, 3, 2, 2, 2, 2796, 2795, 3, 2, 2, 2, 2797, 2800, 3, 2, 2, 2, 2798, 2796, 3, 2, 2, 2, 2798, 2799, 3, 2, 2, 2, 2799, 2801, 3, 2, 2, 2, 2800, 2798, 3, 2, 2, 2, 2801, 2802, 7, 2243, 2, 2, 2802, 177, 3, 2, 2, 2, 2803, 2804, 7, 623, 2, 2, 2804, 2805, 7, 148, 2, 2, 2805, 2820, 7, 2219, 2, 2, 2806, 2807, 7, 824, 2, 2, 2807, 2820, 7, 2219, 2, 2, 2808, 2820, 7, 997, 2, 2, 2809, 2810, 7, 847, 2, 2, 2810, 2820, 7, 2219, 2, 2, 2811, 2820, 7, 1000, 2, 2, 2812, 2820, 7, 316, 2, 2, 2813, 2820, 7, 965, 2, 2, 2814, 2815, 7, 152, 2, 2, 2815, 2820, 7, 2219, 2, 2, 2816, 2820, 7, 948, 2, 2, 2817, 2820, 7, 1170, 2, 2, 2818, 2820, 7, 1015, 2, 2, 2819, 2803, 3, 2, 2, 2, 2819, 2806, 3, 2, 2, 2, 2819, 2808, 3, 2, 2, 2, 2819, 2809, 3, 2, 2, 2, 2819, 2811, 3, 2, 2, 2, 2819, 2812, 3, 2, 2, 2, 2819, 2813, 3, 2, 2, 2, 2819, 2814, 3, 2, 2, 2, 2819, 2816, 3, 2, 2, 2, 2819, 2817, 3, 2, 2, 2, 2819, 2818, 3, 2, 2, 2, 2820, 179, 3, 2, 2, 2, 2821, 2822, 7, 1571, 2, 2, 2822, 2823, 7, 2123, 2, 2, 2823, 2824, 7, 2219, 2, 2, 2824, 181, 3, 2, 2, 2, 2825, 2827, 7, 290, 2, 2, 2826, 2828, 9, 21, 2, 2, 2827, 2826, 3, 2, 2, 2, 2827, 2828, 3, 2, 2, 2, 2828, 2829, 3, 2, 2, 2, 2829, 2830, 7, 633, 2, 2, 2830, 2831, 5, 1416, 709, 2, 2831, 2835, 7, 1130, 2, 2, 2832, 2836, 5, 184, 93, 2, 2833, 2836, 5, 188, 95, 2, 2834, 2836, 5, 190, 96, 2, 2835, 2832, 3, 2, 2, 2, 2835, 2833, 3, 2, 2, 2, 2835, 2834, 3, 2, 2, 2, 2836, 2838, 3, 2, 2, 2, 2837, 2839, 7, 2023, 2, 2, 2838, 2837, 3, 2, 2, 2, 2838, 2839, 3, 2, 2, 2, 2839, 2840, 3, 2, 2, 2, 2840, 2841, 7, 2243, 2, 2, 2841, 183, 3, 2, 2, 2, 2842, 2843, 7, 199, 2, 2, 2843, 2845, 5, 186, 94, 2, 2844, 2846, 5, 770, 386, 2, 2845, 2844, 3, 2, 2, 2, 2845, 2846, 3, 2, 2, 2, 2846, 185, 3, 2, 2, 2, 2847, 2848, 5, 1490, 746, 2, 2848, 2849, 7, 2218, 2, 2, 2849, 2851, 3, 2, 2, 2, 2850, 2847, 3, 2, 2, 2, 2850, 2851, 3, 2, 2, 2, 2851, 2852, 3, 2, 2, 2, 2852, 2853, 5, 1490, 746, 2, 2853, 187, 3, 2, 2, 2, 2854, 2856, 5, 1428, 715, 2, 2855, 2857, 5, 1356, 679, 2, 2856, 2855, 3, 2, 2, 2, 2856, 2857, 3, 2, 2, 2, 2857, 2858, 3, 2, 2, 2, 2858, 2859, 7, 2225, 2, 2, 2859, 2861, 5, 192, 97, 2, 2860, 2862, 9, 22, 2, 2, 2861, 2860, 3, 2, 2, 2, 2861, 2862, 3, 2, 2, 2, 2862, 2870, 3, 2, 2, 2, 2863, 2864, 7, 2231, 2, 2, 2864, 2866, 5, 192, 97, 2, 2865, 2867, 9, 22, 2, 2, 2866, 2865, 3, 2, 2, 2, 2866, 2867, 3, 2, 2, 2, 2867, 2869, 3, 2, 2, 2, 2868, 2863, 3, 2, 2, 2, 2869, 2872, 3, 2, 2, 2, 2870, 2868, 3, 2, 2, 2, 2870, 2871, 3, 2, 2, 2, 2871, 2873, 3, 2, 2, 2, 2872, 2870, 3, 2, 2, 2, 2873, 2875, 7, 2226, 2, 2, 2874, 2876, 5, 194, 98, 2, 2875, 2874, 3, 2, 2, 2, 2875, 2876, 3, 2, 2, 2, 2876, 189, 3, 2, 2, 2, 2877, 2878, 5, 1428, 715, 2, 2878, 2881, 7, 2225, 2, 2, 2879, 2882, 5, 1428, 715, 2, 2880, 2882, 5, 1356, 679, 2, 2881, 2879, 3, 2, 2, 2, 2881, 2880, 3, 2, 2, 2, 2881, 2882, 3, 2, 2, 2, 2882, 2883, 3, 2, 2, 2, 2883, 2885, 5, 1426, 714, 2, 2884, 2886, 9, 22, 2, 2, 2885, 2884, 3, 2, 2, 2, 2885, 2886, 3, 2, 2, 2, 2886, 2898, 3, 2, 2, 2, 2887, 2890, 7, 2231, 2, 2, 2888, 2891, 5, 1428, 715, 2, 2889, 2891, 5, 1356, 679, 2, 2890, 2888, 3, 2, 2, 2, 2890, 2889, 3, 2, 2, 2, 2890, 2891, 3, 2, 2, 2, 2891, 2892, 3, 2, 2, 2, 2892, 2894, 5, 1426, 714, 2, 2893, 2895, 9, 22, 2, 2, 2894, 2893, 3, 2, 2, 2, 2894, 2895, 3, 2, 2, 2, 2895, 2897, 3, 2, 2, 2, 2896, 2887, 3, 2, 2, 2, 2897, 2900, 3, 2, 2, 2, 2898, 2896, 3, 2, 2, 2, 2898, 2899, 3, 2, 2, 2, 2899, 2901, 3, 2, 2, 2, 2900, 2898, 3, 2, 2, 2, 2901, 2902, 7, 2226, 2, 2, 2902, 2903, 7, 556, 2, 2, 2903, 2904, 5, 1428, 715, 2, 2904, 2911, 5, 1356, 679, 2, 2905, 2906, 7, 2231, 2, 2, 2906, 2907, 5, 1428, 715, 2, 2907, 2908, 5, 1356, 679, 2, 2908, 2910, 3, 2, 2, 2, 2909, 2905, 3, 2, 2, 2, 2910, 2913, 3, 2, 2, 2, 2911, 2909, 3, 2, 2, 2, 2911, 2912, 3, 2, 2, 2, 2912, 2914, 3, 2, 2, 2, 2913, 2911, 3, 2, 2, 2, 2914, 2916, 5, 1358, 680, 2, 2915, 2917, 5, 208, 105, 2, 2916, 2915, 3, 2, 2, 2, 2916, 2917, 3, 2, 2, 2, 2917, 2919, 3, 2, 2, 2, 2918, 2920, 5, 770, 386, 2, 2919, 2918, 3, 2, 2, 2, 2919, 2920, 3, 2, 2, 2, 2920, 191, 3, 2, 2, 2, 2921, 2924, 5, 1426, 714, 2, 2922, 2924, 5, 1236, 619, 2, 2923, 2921, 3, 2, 2, 2, 2923, 2922, 3, 2, 2, 2, 2924, 193, 3, 2, 2, 2, 2925, 2929, 5, 204, 103, 2, 2926, 2929, 5, 208, 105, 2, 2927, 2929, 5, 770, 386, 2, 2928, 2925, 3, 2, 2, 2, 2928, 2926, 3, 2, 2, 2, 2928, 2927, 3, 2, 2, 2, 2929, 2930, 3, 2, 2, 2, 2930, 2928, 3, 2, 2, 2, 2930, 2931, 3, 2, 2, 2, 2931, 2939, 3, 2, 2, 2, 2932, 2933, 7, 647, 2, 2, 2933, 2936, 7, 697, 2, 2, 2934, 2937, 5, 196, 99, 2, 2935, 2937, 5, 200, 101, 2, 2936, 2934, 3, 2, 2, 2, 2936, 2935, 3, 2, 2, 2, 2937, 2939, 3, 2, 2, 2, 2938, 2928, 3, 2, 2, 2, 2938, 2932, 3, 2, 2, 2, 2939, 195, 3, 2, 2, 2, 2940, 2942, 5, 230, 116, 2, 2941, 2943, 5, 198, 100, 2, 2942, 2941, 3, 2, 2, 2, 2942, 2943, 3, 2, 2, 2, 2943, 2945, 3, 2, 2, 2, 2944, 2946, 5, 476, 239, 2, 2945, 2944, 3, 2, 2, 2, 2945, 2946, 3, 2, 2, 2, 2946, 2952, 3, 2, 2, 2, 2947, 2948, 7, 1199, 2, 2, 2948, 2949, 7, 2225, 2, 2, 2949, 2950, 5, 228, 115, 2, 2950, 2951, 7, 2226, 2, 2, 2951, 2953, 3, 2, 2, 2, 2952, 2947, 3, 2, 2, 2, 2952, 2953, 3, 2, 2, 2, 2953, 197, 3, 2, 2, 2, 2954, 2982, 7, 771, 2, 2, 2955, 2956, 7, 2225, 2, 2, 2956, 2957, 7, 1209, 2, 2, 2957, 2963, 5, 864, 433, 2, 2958, 2959, 7, 1199, 2, 2, 2959, 2960, 7, 2225, 2, 2, 2960, 2961, 5, 228, 115, 2, 2961, 2962, 7, 2226, 2, 2, 2962, 2964, 3, 2, 2, 2, 2963, 2958, 3, 2, 2, 2, 2963, 2964, 3, 2, 2, 2, 2964, 2977, 3, 2, 2, 2, 2965, 2966, 7, 2231, 2, 2, 2966, 2967, 7, 1209, 2, 2, 2967, 2973, 5, 864, 433, 2, 2968, 2969, 7, 1199, 2, 2, 2969, 2970, 7, 2225, 2, 2, 2970, 2971, 5, 228, 115, 2, 2971, 2972, 7, 2226, 2, 2, 2972, 2974, 3, 2, 2, 2, 2973, 2968, 3, 2, 2, 2, 2973, 2974, 3, 2, 2, 2, 2974, 2976, 3, 2, 2, 2, 2975, 2965, 3, 2, 2, 2, 2976, 2979, 3, 2, 2, 2, 2977, 2975, 3, 2, 2, 2, 2977, 2978, 3, 2, 2, 2, 2978, 2980, 3, 2, 2, 2, 2979, 2977, 3, 2, 2, 2, 2980, 2981, 7, 2226, 2, 2, 2981, 2983, 3, 2, 2, 2, 2982, 2955, 3, 2, 2, 2, 2982, 2983, 3, 2, 2, 2, 2983, 199, 3, 2, 2, 2, 2984, 2985, 7, 2129, 2, 2, 2985, 2987, 7, 2218, 2, 2, 2986, 2984, 3, 2, 2, 2, 2986, 2987, 3, 2, 2, 2, 2987, 2988, 3, 2, 2, 2, 2988, 2990, 7, 2146, 2, 2, 2989, 2991, 5, 202, 102, 2, 2990, 2989, 3, 2, 2, 2, 2990, 2991, 3, 2, 2, 2, 2991, 2993, 3, 2, 2, 2, 2992, 2994, 5, 476, 239, 2, 2993, 2992, 3, 2, 2, 2, 2993, 2994, 3, 2, 2, 2, 2994, 201, 3, 2, 2, 2, 2995, 3009, 7, 771, 2, 2, 2996, 2997, 7, 2225, 2, 2, 2997, 2998, 7, 1209, 2, 2, 2998, 3004, 5, 864, 433, 2, 2999, 3000, 7, 2231, 2, 2, 3000, 3001, 7, 1209, 2, 2, 3001, 3003, 5, 864, 433, 2, 3002, 2999, 3, 2, 2, 2, 3003, 3006, 3, 2, 2, 2, 3004, 3002, 3, 2, 2, 2, 3004, 3005, 3, 2, 2, 2, 3005, 3007, 3, 2, 2, 2, 3006, 3004, 3, 2, 2, 2, 3007, 3008, 7, 2226, 2, 2, 3008, 3010, 3, 2, 2, 2, 3009, 2996, 3, 2, 2, 2, 3009, 3010, 3, 2, 2, 2, 3010, 203, 3, 2, 2, 2, 3011, 3012, 7, 568, 2, 2, 3012, 3013, 7, 1209, 2, 2, 3013, 3044, 7, 148, 2, 2, 3014, 3015, 7, 1346, 2, 2, 3015, 3016, 7, 2225, 2, 2, 3016, 3021, 5, 1426, 714, 2, 3017, 3018, 7, 2231, 2, 2, 3018, 3020, 5, 1426, 714, 2, 3019, 3017, 3, 2, 2, 2, 3020, 3023, 3, 2, 2, 2, 3021, 3019, 3, 2, 2, 2, 3021, 3022, 3, 2, 2, 2, 3022, 3024, 3, 2, 2, 2, 3023, 3021, 3, 2, 2, 2, 3024, 3025, 7, 2226, 2, 2, 3025, 3026, 7, 2225, 2, 2, 3026, 3027, 5, 206, 104, 2, 3027, 3028, 7, 2226, 2, 2, 3028, 3045, 3, 2, 2, 2, 3029, 3030, 7, 584, 2, 2, 3030, 3031, 7, 2225, 2, 2, 3031, 3036, 5, 1426, 714, 2, 3032, 3033, 7, 2231, 2, 2, 3033, 3035, 5, 1426, 714, 2, 3034, 3032, 3, 2, 2, 2, 3035, 3038, 3, 2, 2, 2, 3036, 3034, 3, 2, 2, 2, 3036, 3037, 3, 2, 2, 2, 3037, 3039, 3, 2, 2, 2, 3038, 3036, 3, 2, 2, 2, 3039, 3042, 7, 2226, 2, 2, 3040, 3043, 5, 554, 278, 2, 3041, 3043, 5, 556, 279, 2, 3042, 3040, 3, 2, 2, 2, 3042, 3041, 3, 2, 2, 2, 3043, 3045, 3, 2, 2, 2, 3044, 3014, 3, 2, 2, 2, 3044, 3029, 3, 2, 2, 2, 3045, 205, 3, 2, 2, 2, 3046, 3048, 7, 1209, 2, 2, 3047, 3049, 5, 864, 433, 2, 3048, 3047, 3, 2, 2, 2, 3048, 3049, 3, 2, 2, 2, 3049, 3050, 3, 2, 2, 2, 3050, 3051, 7, 2075, 2, 2, 3051, 3052, 7, 748, 2, 2, 3052, 3053, 7, 1926, 2, 2, 3053, 3054, 7, 2225, 2, 2, 3054, 3059, 5, 1292, 647, 2, 3055, 3056, 7, 2231, 2, 2, 3056, 3058, 5, 1292, 647, 2, 3057, 3055, 3, 2, 2, 2, 3058, 3061, 3, 2, 2, 2, 3059, 3057, 3, 2, 2, 2, 3059, 3060, 3, 2, 2, 2, 3060, 3062, 3, 2, 2, 2, 3061, 3059, 3, 2, 2, 2, 3062, 3064, 7, 2226, 2, 2, 3063, 3065, 5, 618, 310, 2, 3064, 3063, 3, 2, 2, 2, 3064, 3065, 3, 2, 2, 2, 3065, 207, 3, 2, 2, 2, 3066, 3071, 7, 771, 2, 2, 3067, 3072, 5, 210, 106, 2, 3068, 3072, 5, 212, 107, 2, 3069, 3072, 5, 216, 109, 2, 3070, 3072, 5, 220, 111, 2, 3071, 3067, 3, 2, 2, 2, 3071, 3068, 3, 2, 2, 2, 3071, 3069, 3, 2, 2, 2, 3071, 3070, 3, 2, 2, 2, 3071, 3072, 3, 2, 2, 2, 3072, 209, 3, 2, 2, 2, 3073, 3074, 7, 2225, 2, 2, 3074, 3079, 5, 214, 108, 2, 3075, 3076, 7, 2231, 2, 2, 3076, 3078, 5, 214, 108, 2, 3077, 3075, 3, 2, 2, 2, 3078, 3081, 3, 2, 2, 2, 3079, 3077, 3, 2, 2, 2, 3079, 3080, 3, 2, 2, 2, 3080, 3082, 3, 2, 2, 2, 3081, 3079, 3, 2, 2, 2, 3082, 3083, 7, 2226, 2, 2, 3083, 211, 3, 2, 2, 2, 3084, 3085, 7, 2225, 2, 2, 3085, 3090, 5, 214, 108, 2, 3086, 3087, 7, 2231, 2, 2, 3087, 3089, 5, 214, 108, 2, 3088, 3086, 3, 2, 2, 2, 3089, 3092, 3, 2, 2, 2, 3090, 3088, 3, 2, 2, 2, 3090, 3091, 3, 2, 2, 2, 3091, 3093, 3, 2, 2, 2, 3092, 3090, 3, 2, 2, 2, 3093, 3094, 7, 2226, 2, 2, 3094, 213, 3, 2, 2, 2, 3095, 3097, 7, 1209, 2, 2, 3096, 3098, 5, 864, 433, 2, 3097, 3096, 3, 2, 2, 2, 3097, 3098, 3, 2, 2, 2, 3098, 3103, 3, 2, 2, 2, 3099, 3102, 5, 618, 310, 2, 3100, 3102, 5, 782, 392, 2, 3101, 3099, 3, 2, 2, 2, 3101, 3100, 3, 2, 2, 2, 3102, 3105, 3, 2, 2, 2, 3103, 3101, 3, 2, 2, 2, 3103, 3104, 3, 2, 2, 2, 3104, 3107, 3, 2, 2, 2, 3105, 3103, 3, 2, 2, 2, 3106, 3108, 7, 2023, 2, 2, 3107, 3106, 3, 2, 2, 2, 3107, 3108, 3, 2, 2, 2, 3108, 215, 3, 2, 2, 2, 3109, 3110, 7, 1596, 2, 2, 3110, 3111, 7, 654, 2, 2, 3111, 3112, 7, 2225, 2, 2, 3112, 3117, 5, 838, 420, 2, 3113, 3114, 7, 2231, 2, 2, 3114, 3116, 5, 838, 420, 2, 3115, 3113, 3, 2, 2, 2, 3116, 3119, 3, 2, 2, 2, 3117, 3115, 3, 2, 2, 2, 3117, 3118, 3, 2, 2, 2, 3118, 3120, 3, 2, 2, 2, 3119, 3117, 3, 2, 2, 2, 3120, 3121, 7, 2226, 2, 2, 3121, 3134, 3, 2, 2, 2, 3122, 3123, 7, 2225, 2, 2, 3123, 3128, 5, 218, 110, 2, 3124, 3125, 7, 2231, 2, 2, 3125, 3127, 5, 218, 110, 2, 3126, 3124, 3, 2, 2, 2, 3127, 3130, 3, 2, 2, 2, 3128, 3126, 3, 2, 2, 2, 3128, 3129, 3, 2, 2, 2, 3129, 3131, 3, 2, 2, 2, 3130, 3128, 3, 2, 2, 2, 3131, 3132, 7, 2226, 2, 2, 3132, 3134, 3, 2, 2, 2, 3133, 3109, 3, 2, 2, 2, 3133, 3122, 3, 2, 2, 2, 3134, 217, 3, 2, 2, 2, 3135, 3137, 7, 1209, 2, 2, 3136, 3138, 5, 864, 433, 2, 3137, 3136, 3, 2, 2, 2, 3137, 3138, 3, 2, 2, 2, 3138, 3141, 3, 2, 2, 2, 3139, 3140, 7, 1911, 2, 2, 3140, 3142, 5, 838, 420, 2, 3141, 3139, 3, 2, 2, 2, 3141, 3142, 3, 2, 2, 2, 3142, 3144, 3, 2, 2, 2, 3143, 3145, 5, 782, 392, 2, 3144, 3143, 3, 2, 2, 2, 3144, 3145, 3, 2, 2, 2, 3145, 3147, 3, 2, 2, 2, 3146, 3148, 7, 2023, 2, 2, 3147, 3146, 3, 2, 2, 2, 3147, 3148, 3, 2, 2, 2, 3148, 219, 3, 2, 2, 2, 3149, 3150, 7, 1596, 2, 2, 3150, 3151, 7, 654, 2, 2, 3151, 3152, 7, 2225, 2, 2, 3152, 3157, 5, 838, 420, 2, 3153, 3154, 7, 2231, 2, 2, 3154, 3156, 5, 838, 420, 2, 3155, 3153, 3, 2, 2, 2, 3156, 3159, 3, 2, 2, 2, 3157, 3155, 3, 2, 2, 2, 3157, 3158, 3, 2, 2, 2, 3158, 3160, 3, 2, 2, 2, 3159, 3157, 3, 2, 2, 2, 3160, 3161, 7, 2226, 2, 2, 3161, 3163, 3, 2, 2, 2, 3162, 3149, 3, 2, 2, 2, 3162, 3163, 3, 2, 2, 2, 3163, 3164, 3, 2, 2, 2, 3164, 3165, 7, 2225, 2, 2, 3165, 3170, 5, 222, 112, 2, 3166, 3167, 7, 2231, 2, 2, 3167, 3169, 5, 222, 112, 2, 3168, 3166, 3, 2, 2, 2, 3169, 3172, 3, 2, 2, 2, 3170, 3168, 3, 2, 2, 2, 3170, 3171, 3, 2, 2, 2, 3171, 3173, 3, 2, 2, 2, 3172, 3170, 3, 2, 2, 2, 3173, 3174, 7, 2226, 2, 2, 3174, 221, 3, 2, 2, 2, 3175, 3177, 7, 1209, 2, 2, 3176, 3178, 5, 864, 433, 2, 3177, 3176, 3, 2, 2, 2, 3177, 3178, 3, 2, 2, 2, 3178, 3183, 3, 2, 2, 2, 3179, 3182, 5, 618, 310, 2, 3180, 3182, 5, 782, 392, 2, 3181, 3179, 3, 2, 2, 2, 3181, 3180, 3, 2, 2, 2, 3182, 3185, 3, 2, 2, 2, 3183, 3181, 3, 2, 2, 2, 3183, 3184, 3, 2, 2, 2, 3184, 3186, 3, 2, 2, 2, 3185, 3183, 3, 2, 2, 2, 3186, 3188, 7, 2023, 2, 2, 3187, 3189, 5, 224, 113, 2, 3188, 3187, 3, 2, 2, 2, 3188, 3189, 3, 2, 2, 2, 3189, 223, 3, 2, 2, 2, 3190, 3191, 7, 1596, 2, 2, 3191, 3192, 7, 654, 2, 2, 3192, 3193, 7, 2225, 2, 2, 3193, 3198, 5, 838, 420, 2, 3194, 3195, 7, 2231, 2, 2, 3195, 3197, 5, 838, 420, 2, 3196, 3194, 3, 2, 2, 2, 3197, 3200, 3, 2, 2, 2, 3198, 3196, 3, 2, 2, 2, 3198, 3199, 3, 2, 2, 2, 3199, 3201, 3, 2, 2, 2, 3200, 3198, 3, 2, 2, 2, 3201, 3202, 7, 2226, 2, 2, 3202, 3215, 3, 2, 2, 2, 3203, 3204, 7, 2225, 2, 2, 3204, 3209, 5, 226, 114, 2, 3205, 3206, 7, 2231, 2, 2, 3206, 3208, 5, 226, 114, 2, 3207, 3205, 3, 2, 2, 2, 3208, 3211, 3, 2, 2, 2, 3209, 3207, 3, 2, 2, 2, 3209, 3210, 3, 2, 2, 2, 3210, 3212, 3, 2, 2, 2, 3211, 3209, 3, 2, 2, 2, 3212, 3213, 7, 2226, 2, 2, 3213, 3215, 3, 2, 2, 2, 3214, 3190, 3, 2, 2, 2, 3214, 3203, 3, 2, 2, 2, 3215, 225, 3, 2, 2, 2, 3216, 3218, 7, 1608, 2, 2, 3217, 3219, 5, 586, 294, 2, 3218, 3217, 3, 2, 2, 2, 3218, 3219, 3, 2, 2, 2, 3219, 3222, 3, 2, 2, 2, 3220, 3221, 7, 1911, 2, 2, 3221, 3223, 5, 838, 420, 2, 3222, 3220, 3, 2, 2, 2, 3222, 3223, 3, 2, 2, 2, 3223, 3225, 3, 2, 2, 2, 3224, 3226, 5, 782, 392, 2, 3225, 3224, 3, 2, 2, 2, 3225, 3226, 3, 2, 2, 2, 3226, 3228, 3, 2, 2, 2, 3227, 3229, 7, 2023, 2, 2, 3228, 3227, 3, 2, 2, 2, 3228, 3229, 3, 2, 2, 2, 3229, 227, 3, 2, 2, 2, 3230, 3231, 7, 2221, 2, 2, 3231, 229, 3, 2, 2, 2, 3232, 3233, 5, 1490, 746, 2, 3233, 3234, 7, 2218, 2, 2, 3234, 3236, 3, 2, 2, 2, 3235, 3232, 3, 2, 2, 2, 3235, 3236, 3, 2, 2, 2, 3236, 3237, 3, 2, 2, 2, 3237, 3238, 5, 1490, 746, 2, 3238, 231, 3, 2, 2, 2, 3239, 3240, 7, 41, 2, 2, 3240, 3241, 7, 633, 2, 2, 3241, 3244, 5, 1416, 709, 2, 3242, 3245, 5, 234, 118, 2, 3243, 3245, 5, 236, 119, 2, 3244, 3242, 3, 2, 2, 2, 3244, 3243, 3, 2, 2, 2, 3245, 3246, 3, 2, 2, 2, 3246, 3247, 7, 2243, 2, 2, 3247, 233, 3, 2, 2, 2, 3248, 3255, 5, 636, 319, 2, 3249, 3255, 5, 634, 318, 2, 3250, 3255, 5, 638, 320, 2, 3251, 3255, 5, 476, 239, 2, 3252, 3255, 5, 612, 307, 2, 3253, 3255, 5, 450, 226, 2, 3254, 3248, 3, 2, 2, 2, 3254, 3249, 3, 2, 2, 2, 3254, 3250, 3, 2, 2, 2, 3254, 3251, 3, 2, 2, 2, 3254, 3252, 3, 2, 2, 2, 3254, 3253, 3, 2, 2, 2, 3255, 3256, 3, 2, 2, 2, 3256, 3254, 3, 2, 2, 2, 3256, 3257, 3, 2, 2, 2, 3257, 235, 3, 2, 2, 2, 3258, 3280, 5, 242, 122, 2, 3259, 3260, 7, 1199, 2, 2, 3260, 3261, 7, 2225, 2, 2, 3261, 3262, 5, 228, 115, 2, 3262, 3263, 7, 2226, 2, 2, 3263, 3280, 3, 2, 2, 2, 3264, 3280, 7, 225, 2, 2, 3265, 3280, 5, 650, 326, 2, 3266, 3280, 7, 2023, 2, 2, 3267, 3280, 5, 238, 120, 2, 3268, 3269, 7, 1406, 2, 2, 3269, 3270, 7, 1966, 2, 2, 3270, 3280, 5, 270, 136, 2, 3271, 3280, 7, 207, 2, 2, 3272, 3273, 5, 240, 121, 2, 3273, 3274, 7, 2036, 2, 2, 3274, 3280, 3, 2, 2, 2, 3275, 3276, 7, 2027, 2, 2, 3276, 3277, 7, 131, 2, 2, 3277, 3280, 7, 1376, 2, 2, 3278, 3280, 5, 244, 123, 2, 3279, 3258, 3, 2, 2, 2, 3279, 3259, 3, 2, 2, 2, 3279, 3264, 3, 2, 2, 2, 3279, 3265, 3, 2, 2, 2, 3279, 3266, 3, 2, 2, 2, 3279, 3267, 3, 2, 2, 2, 3279, 3268, 3, 2, 2, 2, 3279, 3271, 3, 2, 2, 2, 3279, 3272, 3, 2, 2, 2, 3279, 3275, 3, 2, 2, 2, 3279, 3278, 3, 2, 2, 2, 3280, 237, 3, 2, 2, 2, 3281, 3282, 9, 23, 2, 2, 3282, 239, 3, 2, 2, 2, 3283, 3284, 9, 24, 2, 2, 3284, 241, 3, 2, 2, 2, 3285, 3292, 7, 1360, 2, 2, 3286, 3287, 7, 1209, 2, 2, 3287, 3293, 5, 864, 433, 2, 3288, 3289, 7, 1608, 2, 2, 3289, 3293, 5, 586, 294, 2, 3290, 3293, 7, 1435, 2, 2, 3291, 3293, 7, 1049, 2, 2, 3292, 3286, 3, 2, 2, 2, 3292, 3288, 3, 2, 2, 2, 3292, 3290, 3, 2, 2, 2, 3292, 3291, 3, 2, 2, 2, 3292, 3293, 3, 2, 2, 2, 3293, 3308, 3, 2, 2, 2, 3294, 3307, 5, 476, 239, 2, 3295, 3296, 7, 1911, 2, 2, 3296, 3307, 5, 838, 420, 2, 3297, 3298, 7, 1199, 2, 2, 3298, 3299, 7, 2225, 2, 2, 3299, 3300, 5, 228, 115, 2, 3300, 3301, 7, 2226, 2, 2, 3301, 3307, 3, 2, 2, 2, 3302, 3307, 7, 1127, 2, 2, 3303, 3307, 5, 612, 307, 2, 3304, 3307, 5, 782, 392, 2, 3305, 3307, 5, 450, 226, 2, 3306, 3294, 3, 2, 2, 2, 3306, 3295, 3, 2, 2, 2, 3306, 3297, 3, 2, 2, 2, 3306, 3302, 3, 2, 2, 2, 3306, 3303, 3, 2, 2, 2, 3306, 3304, 3, 2, 2, 2, 3306, 3305, 3, 2, 2, 2, 3307, 3310, 3, 2, 2, 2, 3308, 3306, 3, 2, 2, 2, 3308, 3309, 3, 2, 2, 2, 3309, 243, 3, 2, 2, 2, 3310, 3308, 3, 2, 2, 2, 3311, 3320, 5, 246, 124, 2, 3312, 3320, 5, 248, 125, 2, 3313, 3320, 5, 252, 127, 2, 3314, 3320, 5, 256, 129, 2, 3315, 3320, 5, 258, 130, 2, 3316, 3320, 5, 260, 131, 2, 3317, 3320, 5, 250, 126, 2, 3318, 3320, 5, 264, 133, 2, 3319, 3311, 3, 2, 2, 2, 3319, 3312, 3, 2, 2, 2, 3319, 3313, 3, 2, 2, 2, 3319, 3314, 3, 2, 2, 2, 3319, 3315, 3, 2, 2, 2, 3319, 3316, 3, 2, 2, 2, 3319, 3317, 3, 2, 2, 2, 3319, 3318, 3, 2, 2, 2, 3320, 245, 3, 2, 2, 2, 3321, 3322, 7, 865, 2, 2, 3322, 3323, 7, 353, 2, 2, 3323, 3327, 7, 78, 2, 2, 3324, 3325, 7, 548, 2, 2, 3325, 3326, 7, 1209, 2, 2, 3326, 3328, 5, 864, 433, 2, 3327, 3324, 3, 2, 2, 2, 3327, 3328, 3, 2, 2, 2, 3328, 3336, 3, 2, 2, 2, 3329, 3337, 5, 612, 307, 2, 3330, 3333, 7, 1911, 2, 2, 3331, 3334, 5, 838, 420, 2, 3332, 3334, 7, 353, 2, 2, 3333, 3331, 3, 2, 2, 2, 3333, 3332, 3, 2, 2, 2, 3334, 3337, 3, 2, 2, 2, 3335, 3337, 5, 450, 226, 2, 3336, 3329, 3, 2, 2, 2, 3336, 3330, 3, 2, 2, 2, 3336, 3335, 3, 2, 2, 2, 3337, 247, 3, 2, 2, 2, 3338, 3339, 7, 20, 2, 2, 3339, 3341, 7, 1209, 2, 2, 3340, 3342, 5, 864, 433, 2, 3341, 3340, 3, 2, 2, 2, 3341, 3342, 3, 2, 2, 2, 3342, 3345, 3, 2, 2, 2, 3343, 3344, 7, 1911, 2, 2, 3344, 3346, 5, 838, 420, 2, 3345, 3343, 3, 2, 2, 2, 3345, 3346, 3, 2, 2, 2, 3346, 3348, 3, 2, 2, 2, 3347, 3349, 5, 782, 392, 2, 3348, 3347, 3, 2, 2, 2, 3348, 3349, 3, 2, 2, 2, 3349, 3351, 3, 2, 2, 2, 3350, 3352, 5, 476, 239, 2, 3351, 3350, 3, 2, 2, 2, 3351, 3352, 3, 2, 2, 2, 3352, 249, 3, 2, 2, 2, 3353, 3354, 7, 207, 2, 2, 3354, 3356, 7, 1209, 2, 2, 3355, 3357, 5, 476, 239, 2, 3356, 3355, 3, 2, 2, 2, 3356, 3357, 3, 2, 2, 2, 3357, 251, 3, 2, 2, 2, 3358, 3359, 7, 865, 2, 2, 3359, 3360, 7, 1209, 2, 2, 3360, 3376, 5, 864, 433, 2, 3361, 3363, 5, 254, 128, 2, 3362, 3361, 3, 2, 2, 2, 3363, 3364, 3, 2, 2, 2, 3364, 3362, 3, 2, 2, 2, 3364, 3365, 3, 2, 2, 2, 3365, 3377, 3, 2, 2, 2, 3366, 3367, 7, 1199, 2, 2, 3367, 3368, 7, 2225, 2, 2, 3368, 3369, 5, 228, 115, 2, 3369, 3370, 7, 2226, 2, 2, 3370, 3377, 3, 2, 2, 2, 3371, 3377, 7, 207, 2, 2, 3372, 3373, 7, 2027, 2, 2, 3373, 3374, 7, 131, 2, 2, 3374, 3377, 7, 1376, 2, 2, 3375, 3377, 7, 2023, 2, 2, 3376, 3362, 3, 2, 2, 2, 3376, 3366, 3, 2, 2, 2, 3376, 3371, 3, 2, 2, 2, 3376, 3372, 3, 2, 2, 2, 3376, 3375, 3, 2, 2, 2, 3377, 253, 3, 2, 2, 2, 3378, 3384, 5, 636, 319, 2, 3379, 3384, 5, 634, 318, 2, 3380, 3384, 5, 612, 307, 2, 3381, 3384, 5, 450, 226, 2, 3382, 3384, 5, 782, 392, 2, 3383, 3378, 3, 2, 2, 2, 3383, 3379, 3, 2, 2, 2, 3383, 3380, 3, 2, 2, 2, 3383, 3381, 3, 2, 2, 2, 3383, 3382, 3, 2, 2, 2, 3384, 255, 3, 2, 2, 2, 3385, 3390, 7, 1406, 2, 2, 3386, 3387, 7, 1209, 2, 2, 3387, 3391, 5, 864, 433, 2, 3388, 3389, 7, 1608, 2, 2, 3389, 3391, 5, 586, 294, 2, 3390, 3386, 3, 2, 2, 2, 3390, 3388, 3, 2, 2, 2, 3391, 3392, 3, 2, 2, 2, 3392, 3393, 7, 1966, 2, 2, 3393, 3394, 5, 268, 135, 2, 3394, 257, 3, 2, 2, 2, 3395, 3396, 7, 413, 2, 2, 3396, 3397, 7, 1209, 2, 2, 3397, 3398, 5, 864, 433, 2, 3398, 259, 3, 2, 2, 2, 3399, 3400, 7, 1554, 2, 2, 3400, 3401, 7, 1209, 2, 2, 3401, 3402, 5, 266, 134, 2, 3402, 3403, 7, 76, 2, 2, 3403, 3404, 7, 2225, 2, 2, 3404, 3409, 5, 1292, 647, 2, 3405, 3406, 7, 2231, 2, 2, 3406, 3408, 5, 1292, 647, 2, 3407, 3405, 3, 2, 2, 2, 3408, 3411, 3, 2, 2, 2, 3409, 3407, 3, 2, 2, 2, 3409, 3410, 3, 2, 2, 2, 3410, 3412, 3, 2, 2, 2, 3411, 3409, 3, 2, 2, 2, 3412, 3420, 7, 2226, 2, 2, 3413, 3414, 7, 693, 2, 2, 3414, 3415, 7, 2225, 2, 2, 3415, 3416, 5, 262, 132, 2, 3416, 3417, 7, 2231, 2, 2, 3417, 3418, 5, 262, 132, 2, 3418, 3419, 7, 2226, 2, 2, 3419, 3421, 3, 2, 2, 2, 3420, 3413, 3, 2, 2, 2, 3420, 3421, 3, 2, 2, 2, 3421, 3423, 3, 2, 2, 2, 3422, 3424, 5, 476, 239, 2, 3423, 3422, 3, 2, 2, 2, 3423, 3424, 3, 2, 2, 2, 3424, 261, 3, 2, 2, 2, 3425, 3443, 7, 1209, 2, 2, 3426, 3438, 5, 864, 433, 2, 3427, 3430, 5, 618, 310, 2, 3428, 3430, 5, 782, 392, 2, 3429, 3427, 3, 2, 2, 2, 3429, 3428, 3, 2, 2, 2, 3430, 3431, 3, 2, 2, 2, 3431, 3429, 3, 2, 2, 2, 3431, 3432, 3, 2, 2, 2, 3432, 3439, 3, 2, 2, 2, 3433, 3434, 7, 1199, 2, 2, 3434, 3435, 7, 2225, 2, 2, 3435, 3436, 5, 228, 115, 2, 3436, 3437, 7, 2226, 2, 2, 3437, 3439, 3, 2, 2, 2, 3438, 3429, 3, 2, 2, 2, 3438, 3433, 3, 2, 2, 2, 3439, 3441, 3, 2, 2, 2, 3440, 3442, 7, 2023, 2, 2, 3441, 3440, 3, 2, 2, 2, 3441, 3442, 3, 2, 2, 2, 3442, 3444, 3, 2, 2, 2, 3443, 3426, 3, 2, 2, 2, 3443, 3444, 3, 2, 2, 2, 3444, 263, 3, 2, 2, 2, 3445, 3446, 7, 865, 2, 2, 3446, 3447, 7, 1608, 2, 2, 3447, 3451, 5, 586, 294, 2, 3448, 3452, 7, 2023, 2, 2, 3449, 3452, 5, 634, 318, 2, 3450, 3452, 5, 636, 319, 2, 3451, 3448, 3, 2, 2, 2, 3451, 3449, 3, 2, 2, 2, 3451, 3450, 3, 2, 2, 2, 3452, 265, 3, 2, 2, 2, 3453, 3454, 5, 864, 433, 2, 3454, 267, 3, 2, 2, 2, 3455, 3456, 5, 864, 433, 2, 3456, 269, 3, 2, 2, 2, 3457, 3458, 5, 1416, 709, 2, 3458, 271, 3, 2, 2, 2, 3459, 3460, 7, 290, 2, 2, 3460, 3461, 7, 2057, 2, 2, 3461, 3471, 5, 1440, 721, 2, 3462, 3472, 5, 278, 140, 2, 3463, 3472, 5, 280, 141, 2, 3464, 3472, 5, 282, 142, 2, 3465, 3472, 5, 284, 143, 2, 3466, 3472, 5, 286, 144, 2, 3467, 3472, 5, 292, 147, 2, 3468, 3472, 5, 294, 148, 2, 3469, 3472, 5, 296, 149, 2, 3470, 3472, 5, 386, 194, 2, 3471, 3462, 3, 2, 2, 2, 3471, 3463, 3, 2, 2, 2, 3471, 3464, 3, 2, 2, 2, 3471, 3465, 3, 2, 2, 2, 3471, 3466, 3, 2, 2, 2, 3471, 3467, 3, 2, 2, 2, 3471, 3468, 3, 2, 2, 2, 3471, 3469, 3, 2, 2, 2, 3471, 3470, 3, 2, 2, 2, 3472, 3473, 3, 2, 2, 2, 3473, 3471, 3, 2, 2, 2, 3473, 3474, 3, 2, 2, 2, 3474, 3475, 3, 2, 2, 2, 3475, 3476, 7, 2243, 2, 2, 3476, 273, 3, 2, 2, 2, 3477, 3478, 7, 41, 2, 2, 3478, 3479, 7, 2057, 2, 2, 3479, 3491, 5, 1440, 721, 2, 3480, 3492, 5, 276, 139, 2, 3481, 3492, 5, 280, 141, 2, 3482, 3492, 5, 282, 142, 2, 3483, 3492, 5, 284, 143, 2, 3484, 3492, 5, 286, 144, 2, 3485, 3492, 5, 290, 146, 2, 3486, 3492, 5, 292, 147, 2, 3487, 3492, 5, 294, 148, 2, 3488, 3492, 5, 298, 150, 2, 3489, 3492, 5, 386, 194, 2, 3490, 3492, 5, 308, 155, 2, 3491, 3480, 3, 2, 2, 2, 3491, 3481, 3, 2, 2, 2, 3491, 3482, 3, 2, 2, 2, 3491, 3483, 3, 2, 2, 2, 3491, 3484, 3, 2, 2, 2, 3491, 3485, 3, 2, 2, 2, 3491, 3486, 3, 2, 2, 2, 3491, 3487, 3, 2, 2, 2, 3491, 3488, 3, 2, 2, 2, 3491, 3489, 3, 2, 2, 2, 3491, 3490, 3, 2, 2, 2, 3492, 3493, 3, 2, 2, 2, 3493, 3491, 3, 2, 2, 2, 3493, 3494, 3, 2, 2, 2, 3494, 3495, 3, 2, 2, 2, 3495, 3496, 7, 2243, 2, 2, 3496, 3509, 3, 2, 2, 2, 3497, 3502, 5, 1440, 721, 2, 3498, 3499, 7, 2231, 2, 2, 3499, 3501, 5, 1440, 721, 2, 3500, 3498, 3, 2, 2, 2, 3501, 3504, 3, 2, 2, 2, 3502, 3500, 3, 2, 2, 2, 3502, 3503, 3, 2, 2, 2, 3503, 3505, 3, 2, 2, 2, 3504, 3502, 3, 2, 2, 2, 3505, 3506, 5, 300, 151, 2, 3506, 3507, 7, 2243, 2, 2, 3507, 3509, 3, 2, 2, 2, 3508, 3477, 3, 2, 2, 2, 3508, 3497, 3, 2, 2, 2, 3509, 275, 3, 2, 2, 2, 3510, 3513, 5, 278, 140, 2, 3511, 3512, 7, 1409, 2, 2, 3512, 3514, 5, 1490, 746, 2, 3513, 3511, 3, 2, 2, 2, 3513, 3514, 3, 2, 2, 2, 3514, 277, 3, 2, 2, 2, 3515, 3516, 7, 603, 2, 2, 3516, 3517, 7, 148, 2, 2, 3517, 3518, 5, 1490, 746, 2, 3518, 279, 3, 2, 2, 2, 3519, 3520, 7, 603, 2, 2, 3520, 3523, 9, 25, 2, 2, 3521, 3522, 7, 63, 2, 2, 3522, 3524, 5, 1486, 744, 2, 3523, 3521, 3, 2, 2, 2, 3523, 3524, 3, 2, 2, 2, 3524, 281, 3, 2, 2, 2, 3525, 3526, 9, 26, 2, 2, 3526, 3527, 7, 1911, 2, 2, 3527, 3528, 5, 1490, 746, 2, 3528, 283, 3, 2, 2, 2, 3529, 3532, 7, 1342, 2, 2, 3530, 3533, 5, 608, 305, 2, 3531, 3533, 7, 2006, 2, 2, 3532, 3530, 3, 2, 2, 2, 3532, 3531, 3, 2, 2, 2, 3533, 3534, 3, 2, 2, 2, 3534, 3535, 7, 1130, 2, 2, 3535, 3536, 5, 1490, 746, 2, 3536, 285, 3, 2, 2, 2, 3537, 3538, 7, 1318, 2, 2, 3538, 3539, 5, 1490, 746, 2, 3539, 287, 3, 2, 2, 2, 3540, 3545, 5, 1396, 699, 2, 3541, 3542, 7, 2231, 2, 2, 3542, 3544, 5, 1396, 699, 2, 3543, 3541, 3, 2, 2, 2, 3544, 3547, 3, 2, 2, 2, 3545, 3543, 3, 2, 2, 2, 3545, 3546, 3, 2, 2, 2, 3546, 3564, 3, 2, 2, 2, 3547, 3545, 3, 2, 2, 2, 3548, 3560, 7, 37, 2, 2, 3549, 3550, 7, 469, 2, 2, 3550, 3555, 5, 1396, 699, 2, 3551, 3552, 7, 2231, 2, 2, 3552, 3554, 5, 1396, 699, 2, 3553, 3551, 3, 2, 2, 2, 3554, 3557, 3, 2, 2, 2, 3555, 3553, 3, 2, 2, 2, 3555, 3556, 3, 2, 2, 2, 3556, 3559, 3, 2, 2, 2, 3557, 3555, 3, 2, 2, 2, 3558, 3549, 3, 2, 2, 2, 3559, 3562, 3, 2, 2, 2, 3560, 3558, 3, 2, 2, 2, 3560, 3561, 3, 2, 2, 2, 3561, 3564, 3, 2, 2, 2, 3562, 3560, 3, 2, 2, 2, 3563, 3540, 3, 2, 2, 2, 3563, 3548, 3, 2, 2, 2, 3564, 289, 3, 2, 2, 2, 3565, 3566, 7, 353, 2, 2, 3566, 3569, 7, 1440, 2, 2, 3567, 3570, 7, 1009, 2, 2, 3568, 3570, 5, 288, 145, 2, 3569, 3567, 3, 2, 2, 2, 3569, 3568, 3, 2, 2, 2, 3570, 291, 3, 2, 2, 2, 3571, 3572, 7, 1217, 2, 2, 3572, 3573, 7, 486, 2, 2, 3573, 293, 3, 2, 2, 2, 3574, 3575, 7, 7, 2, 2, 3575, 3576, 9, 27, 2, 2, 3576, 295, 3, 2, 2, 2, 3577, 3578, 7, 441, 2, 2, 3578, 3579, 7, 428, 2, 2, 3579, 297, 3, 2, 2, 2, 3580, 3590, 5, 296, 149, 2, 3581, 3582, 7, 548, 2, 2, 3582, 3587, 5, 1494, 748, 2, 3583, 3584, 7, 2231, 2, 2, 3584, 3586, 5, 1494, 748, 2, 3585, 3583, 3, 2, 2, 2, 3586, 3589, 3, 2, 2, 2, 3587, 3585, 3, 2, 2, 2, 3587, 3588, 3, 2, 2, 2, 3588, 3591, 3, 2, 2, 2, 3589, 3587, 3, 2, 2, 2, 3590, 3581, 3, 2, 2, 2, 3590, 3591, 3, 2, 2, 2, 3591, 3593, 3, 2, 2, 2, 3592, 3594, 7, 544, 2, 2, 3593, 3592, 3, 2, 2, 2, 3593, 3594, 3, 2, 2, 2, 3594, 299, 3, 2, 2, 2, 3595, 3596, 7, 1436, 2, 2, 3596, 3597, 7, 253, 2, 2, 3597, 3601, 7, 1930, 2, 2, 3598, 3599, 7, 452, 2, 2, 3599, 3602, 7, 2055, 2, 2, 3600, 3602, 5, 1440, 721, 2, 3601, 3598, 3, 2, 2, 2, 3601, 3600, 3, 2, 2, 2, 3602, 3635, 3, 2, 2, 2, 3603, 3604, 7, 573, 2, 2, 3604, 3605, 7, 253, 2, 2, 3605, 3632, 7, 1930, 2, 2, 3606, 3607, 7, 452, 2, 2, 3607, 3633, 7, 2055, 2, 2, 3608, 3616, 5, 1440, 721, 2, 3609, 3614, 7, 2123, 2, 2, 3610, 3611, 7, 1012, 2, 2, 3611, 3615, 7, 1442, 2, 2, 3612, 3613, 7, 1440, 2, 2, 3613, 3615, 5, 288, 145, 2, 3614, 3610, 3, 2, 2, 2, 3614, 3612, 3, 2, 2, 2, 3615, 3617, 3, 2, 2, 2, 3616, 3609, 3, 2, 2, 2, 3616, 3617, 3, 2, 2, 2, 3617, 3620, 3, 2, 2, 2, 3618, 3619, 7, 81, 2, 2, 3619, 3621, 7, 1411, 2, 2, 3620, 3618, 3, 2, 2, 2, 3620, 3621, 3, 2, 2, 2, 3621, 3630, 3, 2, 2, 2, 3622, 3623, 7, 80, 2, 2, 3623, 3628, 7, 2065, 2, 2, 3624, 3629, 7, 1217, 2, 2, 3625, 3629, 7, 171, 2, 2, 3626, 3627, 7, 399, 2, 2, 3627, 3629, 7, 881, 2, 2, 3628, 3624, 3, 2, 2, 2, 3628, 3625, 3, 2, 2, 2, 3628, 3626, 3, 2, 2, 2, 3629, 3631, 3, 2, 2, 2, 3630, 3622, 3, 2, 2, 2, 3630, 3631, 3, 2, 2, 2, 3631, 3633, 3, 2, 2, 2, 3632, 3606, 3, 2, 2, 2, 3632, 3608, 3, 2, 2, 2, 3633, 3635, 3, 2, 2, 2, 3634, 3595, 3, 2, 2, 2, 3634, 3603, 3, 2, 2, 2, 3635, 301, 3, 2, 2, 2, 3636, 3637, 7, 2225, 2, 2, 3637, 3642, 5, 1490, 746, 2, 3638, 3639, 7, 2231, 2, 2, 3639, 3641, 5, 1490, 746, 2, 3640, 3638, 3, 2, 2, 2, 3641, 3644, 3, 2, 2, 2, 3642, 3640, 3, 2, 2, 2, 3642, 3643, 3, 2, 2, 2, 3643, 3645, 3, 2, 2, 2, 3644, 3642, 3, 2, 2, 2, 3645, 3646, 7, 2226, 2, 2, 3646, 303, 3, 2, 2, 2, 3647, 3648, 7, 1512, 2, 2, 3648, 3649, 7, 263, 2, 2, 3649, 3653, 7, 2245, 2, 2, 3650, 3654, 7, 37, 2, 2, 3651, 3654, 7, 353, 2, 2, 3652, 3654, 5, 302, 152, 2, 3653, 3650, 3, 2, 2, 2, 3653, 3651, 3, 2, 2, 2, 3653, 3652, 3, 2, 2, 2, 3654, 305, 3, 2, 2, 2, 3655, 3656, 9, 28, 2, 2, 3656, 3657, 7, 263, 2, 2, 3657, 3658, 7, 2245, 2, 2, 3658, 3659, 5, 302, 152, 2, 3659, 307, 3, 2, 2, 2, 3660, 3667, 5, 304, 153, 2, 3661, 3664, 5, 306, 154, 2, 3662, 3663, 7, 548, 2, 2, 3663, 3665, 5, 1388, 695, 2, 3664, 3662, 3, 2, 2, 2, 3664, 3665, 3, 2, 2, 2, 3665, 3667, 3, 2, 2, 2, 3666, 3660, 3, 2, 2, 2, 3666, 3661, 3, 2, 2, 2, 3667, 309, 3, 2, 2, 2, 3668, 3673, 7, 43, 2, 2, 3669, 3670, 7, 1914, 2, 2, 3670, 3674, 5, 1428, 715, 2, 3671, 3672, 7, 633, 2, 2, 3672, 3674, 5, 1416, 709, 2, 3673, 3669, 3, 2, 2, 2, 3673, 3671, 3, 2, 2, 2, 3674, 3676, 3, 2, 2, 2, 3675, 3677, 5, 312, 157, 2, 3676, 3675, 3, 2, 2, 2, 3676, 3677, 3, 2, 2, 2, 3677, 3682, 3, 2, 2, 2, 3678, 3679, 7, 43, 2, 2, 3679, 3680, 7, 199, 2, 2, 3680, 3682, 5, 186, 94, 2, 3681, 3668, 3, 2, 2, 2, 3681, 3678, 3, 2, 2, 2, 3682, 3695, 3, 2, 2, 2, 3683, 3696, 5, 314, 158, 2, 3684, 3685, 7, 763, 2, 2, 3685, 3686, 7, 173, 2, 2, 3686, 3688, 7, 1454, 2, 2, 3687, 3689, 5, 318, 160, 2, 3688, 3687, 3, 2, 2, 2, 3688, 3689, 3, 2, 2, 2, 3689, 3696, 3, 2, 2, 2, 3690, 3692, 7, 364, 2, 2, 3691, 3693, 7, 1781, 2, 2, 3692, 3691, 3, 2, 2, 2, 3692, 3693, 3, 2, 2, 2, 3693, 3694, 3, 2, 2, 2, 3694, 3696, 7, 1579, 2, 2, 3695, 3683, 3, 2, 2, 2, 3695, 3684, 3, 2, 2, 2, 3695, 3690, 3, 2, 2, 2, 3696, 3697, 3, 2, 2, 2, 3697, 3698, 7, 2243, 2, 2, 3698, 311, 3, 2, 2, 2, 3699, 3716, 7, 1209, 2, 2, 3700, 3701, 7, 2225, 2, 2, 3701, 3702, 5, 864, 433, 2, 3702, 3703, 7, 2226, 2, 2, 3703, 3717, 3, 2, 2, 2, 3704, 3705, 7, 548, 2, 2, 3705, 3706, 7, 2225, 2, 2, 3706, 3711, 5, 320, 161, 2, 3707, 3708, 7, 2231, 2, 2, 3708, 3710, 5, 320, 161, 2, 3709, 3707, 3, 2, 2, 2, 3710, 3713, 3, 2, 2, 2, 3711, 3709, 3, 2, 2, 2, 3711, 3712, 3, 2, 2, 2, 3712, 3714, 3, 2, 2, 2, 3713, 3711, 3, 2, 2, 2, 3714, 3715, 7, 2226, 2, 2, 3715, 3717, 3, 2, 2, 2, 3716, 3700, 3, 2, 2, 2, 3716, 3704, 3, 2, 2, 2, 3717, 3738, 3, 2, 2, 2, 3718, 3735, 7, 1608, 2, 2, 3719, 3720, 7, 2225, 2, 2, 3720, 3721, 5, 586, 294, 2, 3721, 3722, 7, 2226, 2, 2, 3722, 3736, 3, 2, 2, 2, 3723, 3724, 7, 548, 2, 2, 3724, 3725, 7, 2225, 2, 2, 3725, 3730, 5, 322, 162, 2, 3726, 3727, 7, 2231, 2, 2, 3727, 3729, 5, 322, 162, 2, 3728, 3726, 3, 2, 2, 2, 3729, 3732, 3, 2, 2, 2, 3730, 3728, 3, 2, 2, 2, 3730, 3731, 3, 2, 2, 2, 3731, 3733, 3, 2, 2, 2, 3732, 3730, 3, 2, 2, 2, 3733, 3734, 7, 2226, 2, 2, 3734, 3736, 3, 2, 2, 2, 3735, 3719, 3, 2, 2, 2, 3735, 3723, 3, 2, 2, 2, 3736, 3738, 3, 2, 2, 2, 3737, 3699, 3, 2, 2, 2, 3737, 3718, 3, 2, 2, 2, 3738, 313, 3, 2, 2, 2, 3739, 3740, 7, 2072, 2, 2, 3740, 3741, 7, 1378, 2, 2, 3741, 3746, 7, 2027, 2, 2, 3742, 3743, 7, 1512, 2, 2, 3743, 3744, 7, 317, 2, 2, 3744, 3745, 7, 1966, 2, 2, 3745, 3747, 7, 1099, 2, 2, 3746, 3742, 3, 2, 2, 2, 3746, 3747, 3, 2, 2, 2, 3747, 3769, 3, 2, 2, 2, 3748, 3749, 7, 2072, 2, 2, 3749, 3760, 7, 1604, 2, 2, 3750, 3751, 7, 164, 2, 2, 3751, 3761, 7, 513, 2, 2, 3752, 3754, 7, 164, 2, 2, 3753, 3755, 5, 316, 159, 2, 3754, 3753, 3, 2, 2, 2, 3754, 3755, 3, 2, 2, 2, 3755, 3757, 3, 2, 2, 2, 3756, 3758, 5, 1360, 681, 2, 3757, 3756, 3, 2, 2, 2, 3757, 3758, 3, 2, 2, 2, 3758, 3761, 3, 2, 2, 2, 3759, 3761, 7, 164, 2, 2, 3760, 3750, 3, 2, 2, 2, 3760, 3752, 3, 2, 2, 2, 3760, 3759, 3, 2, 2, 2, 3760, 3761, 3, 2, 2, 2, 3761, 3763, 3, 2, 2, 2, 3762, 3764, 5, 316, 159, 2, 3763, 3762, 3, 2, 2, 2, 3763, 3764, 3, 2, 2, 2, 3764, 3766, 3, 2, 2, 2, 3765, 3767, 5, 1360, 681, 2, 3766, 3765, 3, 2, 2, 2, 3766, 3767, 3, 2, 2, 2, 3767, 3769, 3, 2, 2, 2, 3768, 3739, 3, 2, 2, 2, 3768, 3748, 3, 2, 2, 2, 3769, 315, 3, 2, 2, 2, 3770, 3771, 9, 29, 2, 2, 3771, 317, 3, 2, 2, 2, 3772, 3774, 7, 693, 2, 2, 3773, 3775, 5, 1428, 715, 2, 3774, 3773, 3, 2, 2, 2, 3774, 3775, 3, 2, 2, 2, 3775, 319, 3, 2, 2, 2, 3776, 3777, 5, 1292, 647, 2, 3777, 321, 3, 2, 2, 2, 3778, 3779, 5, 1292, 647, 2, 3779, 323, 3, 2, 2, 2, 3780, 3781, 7, 71, 2, 2, 3781, 3782, 7, 1579, 2, 2, 3782, 3785, 7, 2123, 2, 2, 3783, 3786, 5, 326, 164, 2, 3784, 3786, 5, 328, 165, 2, 3785, 3783, 3, 2, 2, 2, 3785, 3784, 3, 2, 2, 2, 3786, 3788, 3, 2, 2, 2, 3787, 3789, 5, 348, 175, 2, 3788, 3787, 3, 2, 2, 2, 3788, 3789, 3, 2, 2, 2, 3789, 3790, 3, 2, 2, 2, 3790, 3791, 7, 2243, 2, 2, 3791, 325, 3, 2, 2, 2, 3792, 3793, 7, 216, 2, 2, 3793, 3794, 5, 1428, 715, 2, 3794, 3795, 7, 2218, 2, 2, 3795, 3803, 5, 1426, 714, 2, 3796, 3797, 7, 2231, 2, 2, 3797, 3798, 5, 1428, 715, 2, 3798, 3799, 7, 2218, 2, 2, 3799, 3800, 5, 1426, 714, 2, 3800, 3802, 3, 2, 2, 2, 3801, 3796, 3, 2, 2, 2, 3802, 3805, 3, 2, 2, 2, 3803, 3801, 3, 2, 2, 2, 3803, 3804, 3, 2, 2, 2, 3804, 3806, 3, 2, 2, 2, 3805, 3803, 3, 2, 2, 2, 3806, 3807, 5, 332, 167, 2, 3807, 327, 3, 2, 2, 2, 3808, 3809, 7, 561, 2, 2, 3809, 3814, 5, 1408, 705, 2, 3810, 3811, 7, 2231, 2, 2, 3811, 3813, 5, 1408, 705, 2, 3812, 3810, 3, 2, 2, 2, 3813, 3816, 3, 2, 2, 2, 3814, 3812, 3, 2, 2, 2, 3814, 3815, 3, 2, 2, 2, 3815, 3854, 3, 2, 2, 2, 3816, 3814, 3, 2, 2, 2, 3817, 3818, 7, 1194, 2, 2, 3818, 3823, 5, 1378, 690, 2, 3819, 3820, 7, 2231, 2, 2, 3820, 3822, 5, 1378, 690, 2, 3821, 3819, 3, 2, 2, 2, 3822, 3825, 3, 2, 2, 2, 3823, 3821, 3, 2, 2, 2, 3823, 3824, 3, 2, 2, 2, 3824, 3854, 3, 2, 2, 2, 3825, 3823, 3, 2, 2, 2, 3826, 3827, 7, 1988, 2, 2, 3827, 3832, 5, 1402, 702, 2, 3828, 3829, 7, 2231, 2, 2, 3829, 3831, 5, 1402, 702, 2, 3830, 3828, 3, 2, 2, 2, 3831, 3834, 3, 2, 2, 2, 3832, 3830, 3, 2, 2, 2, 3832, 3833, 3, 2, 2, 2, 3833, 3854, 3, 2, 2, 2, 3834, 3832, 3, 2, 2, 2, 3835, 3836, 7, 630, 2, 2, 3836, 3841, 5, 1416, 709, 2, 3837, 3838, 7, 2231, 2, 2, 3838, 3840, 5, 1416, 709, 2, 3839, 3837, 3, 2, 2, 2, 3840, 3843, 3, 2, 2, 2, 3841, 3839, 3, 2, 2, 2, 3841, 3842, 3, 2, 2, 2, 3842, 3854, 3, 2, 2, 2, 3843, 3841, 3, 2, 2, 2, 3844, 3845, 7, 648, 2, 2, 3845, 3850, 5, 330, 166, 2, 3846, 3847, 7, 2231, 2, 2, 3847, 3849, 5, 330, 166, 2, 3848, 3846, 3, 2, 2, 2, 3849, 3852, 3, 2, 2, 2, 3850, 3848, 3, 2, 2, 2, 3850, 3851, 3, 2, 2, 2, 3851, 3854, 3, 2, 2, 2, 3852, 3850, 3, 2, 2, 2, 3853, 3808, 3, 2, 2, 2, 3853, 3817, 3, 2, 2, 2, 3853, 3826, 3, 2, 2, 2, 3853, 3835, 3, 2, 2, 2, 3853, 3844, 3, 2, 2, 2, 3854, 3866, 3, 2, 2, 2, 3855, 3867, 5, 332, 167, 2, 3856, 3859, 5, 336, 169, 2, 3857, 3858, 7, 2231, 2, 2, 3858, 3860, 5, 344, 173, 2, 3859, 3857, 3, 2, 2, 2, 3859, 3860, 3, 2, 2, 2, 3860, 3867, 3, 2, 2, 2, 3861, 3864, 5, 344, 173, 2, 3862, 3863, 7, 2231, 2, 2, 3863, 3865, 5, 336, 169, 2, 3864, 3862, 3, 2, 2, 2, 3864, 3865, 3, 2, 2, 2, 3865, 3867, 3, 2, 2, 2, 3866, 3855, 3, 2, 2, 2, 3866, 3856, 3, 2, 2, 2, 3866, 3861, 3, 2, 2, 2, 3867, 329, 3, 2, 2, 2, 3868, 3869, 5, 1490, 746, 2, 3869, 331, 3, 2, 2, 2, 3870, 3873, 7, 2065, 2, 2, 3871, 3874, 5, 334, 168, 2, 3872, 3874, 7, 1099, 2, 2, 3873, 3871, 3, 2, 2, 2, 3873, 3872, 3, 2, 2, 2, 3874, 333, 3, 2, 2, 2, 3875, 3876, 5, 1494, 748, 2, 3876, 335, 3, 2, 2, 2, 3877, 3878, 7, 353, 2, 2, 3878, 3879, 7, 281, 2, 2, 3879, 3880, 7, 2225, 2, 2, 3880, 3881, 5, 338, 170, 2, 3881, 3882, 7, 2231, 2, 2, 3882, 3883, 5, 340, 171, 2, 3883, 3884, 7, 2231, 2, 2, 3884, 3885, 5, 342, 172, 2, 3885, 3886, 7, 2226, 2, 2, 3886, 337, 3, 2, 2, 2, 3887, 3888, 7, 2219, 2, 2, 3888, 339, 3, 2, 2, 2, 3889, 3890, 7, 2219, 2, 2, 3890, 341, 3, 2, 2, 2, 3891, 3892, 7, 2219, 2, 2, 3892, 343, 3, 2, 2, 2, 3893, 3894, 7, 353, 2, 2, 3894, 3895, 7, 1491, 2, 2, 3895, 3896, 5, 346, 174, 2, 3896, 345, 3, 2, 2, 2, 3897, 3898, 7, 2219, 2, 2, 3898, 347, 3, 2, 2, 2, 3899, 3900, 7, 2123, 2, 2, 3900, 3901, 9, 30, 2, 2, 3901, 3902, 7, 798, 2, 2, 3902, 3903, 7, 1595, 2, 2, 3903, 3904, 7, 1912, 2, 2, 3904, 349, 3, 2, 2, 2, 3905, 3906, 6, 176, 2, 2, 3906, 3950, 7, 79, 2, 2, 3907, 3908, 7, 1269, 2, 2, 3908, 3918, 5, 352, 177, 2, 3909, 3910, 9, 31, 2, 2, 3910, 3915, 5, 364, 183, 2, 3911, 3912, 7, 2231, 2, 2, 3912, 3914, 5, 364, 183, 2, 3913, 3911, 3, 2, 2, 2, 3914, 3917, 3, 2, 2, 2, 3915, 3913, 3, 2, 2, 2, 3915, 3916, 3, 2, 2, 2, 3916, 3919, 3, 2, 2, 2, 3917, 3915, 3, 2, 2, 2, 3918, 3909, 3, 2, 2, 2, 3918, 3919, 3, 2, 2, 2, 3919, 3925, 3, 2, 2, 2, 3920, 3922, 7, 2114, 2, 2, 3921, 3923, 7, 1075, 2, 2, 3922, 3921, 3, 2, 2, 2, 3922, 3923, 3, 2, 2, 2, 3923, 3924, 3, 2, 2, 2, 3924, 3926, 7, 1619, 2, 2, 3925, 3920, 3, 2, 2, 2, 3925, 3926, 3, 2, 2, 2, 3926, 3951, 3, 2, 2, 2, 3927, 3928, 7, 267, 2, 2, 3928, 3929, 7, 882, 2, 2, 3929, 3930, 5, 516, 259, 2, 3930, 3931, 7, 78, 2, 2, 3931, 3936, 5, 1366, 684, 2, 3932, 3933, 7, 2231, 2, 2, 3933, 3935, 5, 1366, 684, 2, 3934, 3932, 3, 2, 2, 2, 3935, 3938, 3, 2, 2, 2, 3936, 3934, 3, 2, 2, 2, 3936, 3937, 3, 2, 2, 2, 3937, 3948, 3, 2, 2, 2, 3938, 3936, 3, 2, 2, 2, 3939, 3940, 7, 148, 2, 2, 3940, 3945, 5, 364, 183, 2, 3941, 3942, 7, 2231, 2, 2, 3942, 3944, 5, 364, 183, 2, 3943, 3941, 3, 2, 2, 2, 3944, 3947, 3, 2, 2, 2, 3945, 3943, 3, 2, 2, 2, 3945, 3946, 3, 2, 2, 2, 3946, 3949, 3, 2, 2, 2, 3947, 3945, 3, 2, 2, 2, 3948, 3939, 3, 2, 2, 2, 3948, 3949, 3, 2, 2, 2, 3949, 3951, 3, 2, 2, 2, 3950, 3907, 3, 2, 2, 2, 3950, 3927, 3, 2, 2, 2, 3951, 3952, 3, 2, 2, 2, 3952, 3953, 7, 2243, 2, 2, 3953, 351, 3, 2, 2, 2, 3954, 3955, 5, 1488, 745, 2, 3955, 353, 3, 2, 2, 2, 3956, 3967, 7, 79, 2, 2, 3957, 3962, 5, 360, 181, 2, 3958, 3963, 5, 362, 182, 2, 3959, 3960, 7, 654, 2, 2, 3960, 3961, 7, 1508, 2, 2, 3961, 3963, 7, 304, 2, 2, 3962, 3958, 3, 2, 2, 2, 3962, 3959, 3, 2, 2, 2, 3962, 3963, 3, 2, 2, 2, 3963, 3968, 3, 2, 2, 2, 3964, 3968, 5, 366, 184, 2, 3965, 3968, 7, 903, 2, 2, 3966, 3968, 5, 356, 179, 2, 3967, 3957, 3, 2, 2, 2, 3967, 3964, 3, 2, 2, 2, 3967, 3965, 3, 2, 2, 2, 3967, 3966, 3, 2, 2, 2, 3968, 3971, 3, 2, 2, 2, 3969, 3970, 7, 148, 2, 2, 3970, 3972, 9, 32, 2, 2, 3971, 3969, 3, 2, 2, 2, 3971, 3972, 3, 2, 2, 2, 3972, 3978, 3, 2, 2, 2, 3973, 3975, 7, 2114, 2, 2, 3974, 3976, 7, 1075, 2, 2, 3975, 3974, 3, 2, 2, 2, 3975, 3976, 3, 2, 2, 2, 3976, 3977, 3, 2, 2, 2, 3977, 3979, 7, 1619, 2, 2, 3978, 3973, 3, 2, 2, 2, 3978, 3979, 3, 2, 2, 2, 3979, 3981, 3, 2, 2, 2, 3980, 3982, 5, 358, 180, 2, 3981, 3980, 3, 2, 2, 2, 3981, 3982, 3, 2, 2, 2, 3982, 3983, 3, 2, 2, 2, 3983, 3984, 7, 2243, 2, 2, 3984, 355, 3, 2, 2, 2, 3985, 3986, 6, 179, 3, 2, 3986, 3987, 7, 383, 2, 2, 3987, 3988, 5, 362, 182, 2, 3988, 357, 3, 2, 2, 2, 3989, 3990, 6, 180, 4, 2, 3990, 3991, 7, 262, 2, 2, 3991, 3992, 7, 2245, 2, 2, 3992, 3993, 9, 33, 2, 2, 3993, 359, 3, 2, 2, 2, 3994, 4000, 5, 378, 190, 2, 3995, 3997, 7, 37, 2, 2, 3996, 3998, 7, 1575, 2, 2, 3997, 3996, 3, 2, 2, 2, 3997, 3998, 3, 2, 2, 2, 3998, 4000, 3, 2, 2, 2, 3999, 3994, 3, 2, 2, 2, 3999, 3995, 3, 2, 2, 2, 4000, 4011, 3, 2, 2, 2, 4001, 4007, 7, 2231, 2, 2, 4002, 4008, 5, 378, 190, 2, 4003, 4005, 7, 37, 2, 2, 4004, 4006, 7, 1575, 2, 2, 4005, 4004, 3, 2, 2, 2, 4005, 4006, 3, 2, 2, 2, 4006, 4008, 3, 2, 2, 2, 4007, 4002, 3, 2, 2, 2, 4007, 4003, 3, 2, 2, 2, 4008, 4010, 3, 2, 2, 2, 4009, 4001, 3, 2, 2, 2, 4010, 4013, 3, 2, 2, 2, 4011, 4009, 3, 2, 2, 2, 4011, 4012, 3, 2, 2, 2, 4012, 4031, 3, 2, 2, 2, 4013, 4011, 3, 2, 2, 2, 4014, 4018, 5, 1478, 740, 2, 4015, 4016, 7, 37, 2, 2, 4016, 4018, 7, 1314, 2, 2, 4017, 4014, 3, 2, 2, 2, 4017, 4015, 3, 2, 2, 2, 4018, 4027, 3, 2, 2, 2, 4019, 4023, 7, 2231, 2, 2, 4020, 4024, 5, 1478, 740, 2, 4021, 4022, 7, 37, 2, 2, 4022, 4024, 7, 1314, 2, 2, 4023, 4020, 3, 2, 2, 2, 4023, 4021, 3, 2, 2, 2, 4024, 4026, 3, 2, 2, 2, 4025, 4019, 3, 2, 2, 2, 4026, 4029, 3, 2, 2, 2, 4027, 4025, 3, 2, 2, 2, 4027, 4028, 3, 2, 2, 2, 4028, 4031, 3, 2, 2, 2, 4029, 4027, 3, 2, 2, 2, 4030, 3999, 3, 2, 2, 2, 4030, 4017, 3, 2, 2, 2, 4031, 361, 3, 2, 2, 2, 4032, 4033, 7, 148, 2, 2, 4033, 4038, 5, 364, 183, 2, 4034, 4035, 7, 2231, 2, 2, 4035, 4037, 5, 364, 183, 2, 4036, 4034, 3, 2, 2, 2, 4037, 4040, 3, 2, 2, 2, 4038, 4036, 3, 2, 2, 2, 4038, 4039, 3, 2, 2, 2, 4039, 363, 3, 2, 2, 2, 4040, 4038, 3, 2, 2, 2, 4041, 4042, 5, 1494, 748, 2, 4042, 365, 3, 2, 2, 2, 4043, 4048, 5, 368, 185, 2, 4044, 4045, 7, 2231, 2, 2, 4045, 4047, 5, 368, 185, 2, 4046, 4044, 3, 2, 2, 2, 4047, 4050, 3, 2, 2, 2, 4048, 4046, 3, 2, 2, 2, 4048, 4049, 3, 2, 2, 2, 4049, 4053, 3, 2, 2, 2, 4050, 4048, 3, 2, 2, 2, 4051, 4053, 7, 37, 2, 2, 4052, 4043, 3, 2, 2, 2, 4052, 4051, 3, 2, 2, 2, 4053, 4054, 3, 2, 2, 2, 4054, 4055, 5, 370, 186, 2, 4055, 367, 3, 2, 2, 2, 4056, 4057, 9, 34, 2, 2, 4057, 369, 3, 2, 2, 2, 4058, 4071, 7, 1130, 2, 2, 4059, 4072, 5, 374, 188, 2, 4060, 4061, 7, 382, 2, 2, 4061, 4072, 5, 1494, 748, 2, 4062, 4063, 7, 843, 2, 2, 4063, 4064, 7, 856, 2, 2, 4064, 4072, 5, 372, 187, 2, 4065, 4066, 6, 186, 5, 2, 4066, 4067, 7, 1559, 2, 2, 4067, 4068, 7, 1977, 2, 2, 4068, 4069, 7, 1318, 2, 2, 4069, 4072, 5, 376, 189, 2, 4070, 4072, 7, 353, 2, 2, 4071, 4059, 3, 2, 2, 2, 4071, 4060, 3, 2, 2, 2, 4071, 4062, 3, 2, 2, 2, 4071, 4065, 3, 2, 2, 2, 4071, 4070, 3, 2, 2, 2, 4072, 371, 3, 2, 2, 2, 4073, 4074, 5, 1490, 746, 2, 4074, 4075, 7, 2218, 2, 2, 4075, 4077, 3, 2, 2, 2, 4076, 4073, 3, 2, 2, 2, 4076, 4077, 3, 2, 2, 2, 4077, 4078, 3, 2, 2, 2, 4078, 4079, 5, 1490, 746, 2, 4079, 373, 3, 2, 2, 2, 4080, 4081, 5, 1490, 746, 2, 4081, 4082, 7, 2218, 2, 2, 4082, 4084, 3, 2, 2, 2, 4083, 4080, 3, 2, 2, 2, 4083, 4084, 3, 2, 2, 2, 4084, 4085, 3, 2, 2, 2, 4085, 4086, 5, 1490, 746, 2, 4086, 375, 3, 2, 2, 2, 4087, 4088, 5, 1490, 746, 2, 4088, 4089, 7, 2218, 2, 2, 4089, 4091, 3, 2, 2, 2, 4090, 4087, 3, 2, 2, 2, 4090, 4091, 3, 2, 2, 2, 4091, 4092, 3, 2, 2, 2, 4092, 4093, 5, 1490, 746, 2, 4093, 377, 3, 2, 2, 2, 4094, 4095, 7, 41, 2, 2, 4095, 4165, 7, 1781, 2, 2, 4096, 4165, 7, 199, 2, 2, 4097, 4165, 7, 267, 2, 2, 4098, 4099, 7, 318, 2, 2, 4099, 4165, 7, 762, 2, 2, 4100, 4165, 7, 379, 2, 2, 4101, 4165, 7, 382, 2, 2, 4102, 4165, 7, 633, 2, 2, 4103, 4104, 7, 811, 2, 2, 4104, 4165, 7, 2101, 2, 2, 4105, 4106, 7, 1075, 2, 2, 4106, 4165, 7, 480, 2, 2, 4107, 4165, 7, 1182, 2, 2, 4108, 4109, 6, 190, 6, 2, 4109, 4110, 7, 1267, 2, 2, 4110, 4165, 7, 318, 2, 2, 4111, 4165, 7, 1316, 2, 2, 4112, 4165, 7, 1318, 2, 2, 4113, 4114, 7, 1326, 2, 2, 4114, 4115, 7, 318, 2, 2, 4115, 4165, 7, 762, 2, 2, 4116, 4117, 7, 1326, 2, 2, 4117, 4165, 7, 1629, 2, 2, 4118, 4165, 7, 1440, 2, 2, 4119, 4120, 7, 1443, 2, 2, 4120, 4165, 7, 1490, 2, 2, 4121, 4165, 7, 1498, 2, 2, 4122, 4165, 7, 1508, 2, 2, 4123, 4165, 7, 1629, 2, 2, 4124, 4125, 7, 1781, 2, 2, 4125, 4165, 7, 79, 2, 2, 4126, 4127, 7, 1781, 2, 2, 4127, 4165, 7, 573, 2, 2, 4128, 4165, 7, 1914, 2, 2, 4129, 4165, 7, 1911, 2, 2, 4130, 4165, 7, 1980, 2, 2, 4131, 4165, 7, 1989, 2, 2, 4132, 4165, 7, 2057, 2, 2, 4133, 4165, 7, 2101, 2, 2, 4134, 4135, 7, 41, 2, 2, 4135, 4165, 7, 1498, 2, 2, 4136, 4137, 7, 41, 2, 2, 4137, 4165, 7, 1914, 2, 2, 4138, 4139, 7, 219, 2, 2, 4139, 4165, 7, 1914, 2, 2, 4140, 4141, 7, 364, 2, 2, 4141, 4165, 7, 1914, 2, 2, 4142, 4143, 7, 477, 2, 2, 4143, 4165, 7, 1316, 2, 2, 4144, 4145, 7, 573, 2, 2, 4145, 4165, 7, 382, 2, 2, 4146, 4147, 7, 573, 2, 2, 4147, 4165, 7, 1316, 2, 2, 4148, 4149, 7, 573, 2, 2, 4149, 4165, 7, 1498, 2, 2, 4150, 4151, 7, 573, 2, 2, 4151, 4165, 7, 1914, 2, 2, 4152, 4153, 7, 573, 2, 2, 4153, 4165, 7, 1989, 2, 2, 4154, 4155, 7, 671, 2, 2, 4155, 4165, 7, 1914, 2, 2, 4156, 4157, 7, 778, 2, 2, 4157, 4165, 7, 1914, 2, 2, 4158, 4159, 7, 1492, 2, 2, 4159, 4165, 7, 1498, 2, 2, 4160, 4161, 7, 1492, 2, 2, 4161, 4165, 7, 1914, 2, 2, 4162, 4163, 7, 2027, 2, 2, 4163, 4165, 7, 1914, 2, 2, 4164, 4094, 3, 2, 2, 2, 4164, 4096, 3, 2, 2, 2, 4164, 4097, 3, 2, 2, 2, 4164, 4098, 3, 2, 2, 2, 4164, 4100, 3, 2, 2, 2, 4164, 4101, 3, 2, 2, 2, 4164, 4102, 3, 2, 2, 2, 4164, 4103, 3, 2, 2, 2, 4164, 4105, 3, 2, 2, 2, 4164, 4107, 3, 2, 2, 2, 4164, 4108, 3, 2, 2, 2, 4164, 4111, 3, 2, 2, 2, 4164, 4112, 3, 2, 2, 2, 4164, 4113, 3, 2, 2, 2, 4164, 4116, 3, 2, 2, 2, 4164, 4118, 3, 2, 2, 2, 4164, 4119, 3, 2, 2, 2, 4164, 4121, 3, 2, 2, 2, 4164, 4122, 3, 2, 2, 2, 4164, 4123, 3, 2, 2, 2, 4164, 4124, 3, 2, 2, 2, 4164, 4126, 3, 2, 2, 2, 4164, 4128, 3, 2, 2, 2, 4164, 4129, 3, 2, 2, 2, 4164, 4130, 3, 2, 2, 2, 4164, 4131, 3, 2, 2, 2, 4164, 4132, 3, 2, 2, 2, 4164, 4133, 3, 2, 2, 2, 4164, 4134, 3, 2, 2, 2, 4164, 4136, 3, 2, 2, 2, 4164, 4138, 3, 2, 2, 2, 4164, 4140, 3, 2, 2, 2, 4164, 4142, 3, 2, 2, 2, 4164, 4144, 3, 2, 2, 2, 4164, 4146, 3, 2, 2, 2, 4164, 4148, 3, 2, 2, 2, 4164, 4150, 3, 2, 2, 2, 4164, 4152, 3, 2, 2, 2, 4164, 4154, 3, 2, 2, 2, 4164, 4156, 3, 2, 2, 2, 4164, 4158, 3, 2, 2, 2, 4164, 4160, 3, 2, 2, 2, 4164, 4162, 3, 2, 2, 2, 4165, 379, 3, 2, 2, 2, 4166, 4167, 7, 413, 2, 2, 4167, 4168, 7, 633, 2, 2, 4168, 4169, 5, 1416, 709, 2, 4169, 4170, 7, 2243, 2, 2, 4170, 381, 3, 2, 2, 2, 4171, 4172, 7, 1406, 2, 2, 4172, 4173, 5, 374, 188, 2, 4173, 4174, 7, 1966, 2, 2, 4174, 4175, 5, 374, 188, 2, 4175, 4176, 7, 2243, 2, 2, 4176, 383, 3, 2, 2, 2, 4177, 4189, 7, 573, 2, 2, 4178, 4180, 7, 2231, 2, 2, 4179, 4178, 3, 2, 2, 2, 4179, 4180, 3, 2, 2, 2, 4180, 4187, 3, 2, 2, 2, 4181, 4188, 5, 1396, 699, 2, 4182, 4188, 5, 1478, 740, 2, 4183, 4185, 5, 1476, 739, 2, 4184, 4186, 5, 1446, 724, 2, 4185, 4184, 3, 2, 2, 2, 4185, 4186, 3, 2, 2, 2, 4186, 4188, 3, 2, 2, 2, 4187, 4181, 3, 2, 2, 2, 4187, 4182, 3, 2, 2, 2, 4187, 4183, 3, 2, 2, 2, 4188, 4190, 3, 2, 2, 2, 4189, 4179, 3, 2, 2, 2, 4190, 4191, 3, 2, 2, 2, 4191, 4189, 3, 2, 2, 2, 4191, 4192, 3, 2, 2, 2, 4192, 4195, 3, 2, 2, 2, 4193, 4194, 7, 1130, 2, 2, 4194, 4196, 5, 1442, 722, 2, 4195, 4193, 3, 2, 2, 2, 4195, 4196, 3, 2, 2, 2, 4196, 4197, 3, 2, 2, 2, 4197, 4200, 7, 1966, 2, 2, 4198, 4201, 5, 1394, 698, 2, 4199, 4201, 7, 1326, 2, 2, 4200, 4198, 3, 2, 2, 2, 4200, 4199, 3, 2, 2, 2, 4201, 4209, 3, 2, 2, 2, 4202, 4205, 7, 2231, 2, 2, 4203, 4206, 5, 1394, 698, 2, 4204, 4206, 7, 1326, 2, 2, 4205, 4203, 3, 2, 2, 2, 4205, 4204, 3, 2, 2, 2, 4206, 4208, 3, 2, 2, 2, 4207, 4202, 3, 2, 2, 2, 4208, 4211, 3, 2, 2, 2, 4209, 4207, 3, 2, 2, 2, 4209, 4210, 3, 2, 2, 2, 4210, 4215, 3, 2, 2, 2, 4211, 4209, 3, 2, 2, 2, 4212, 4213, 7, 2123, 2, 2, 4213, 4214, 9, 35, 2, 2, 4214, 4216, 7, 1143, 2, 2, 4215, 4212, 3, 2, 2, 2, 4215, 4216, 3, 2, 2, 2, 4216, 4220, 3, 2, 2, 2, 4217, 4218, 7, 2123, 2, 2, 4218, 4219, 7, 595, 2, 2, 4219, 4221, 7, 1143, 2, 2, 4220, 4217, 3, 2, 2, 2, 4220, 4221, 3, 2, 2, 2, 4221, 4225, 3, 2, 2, 2, 4222, 4223, 7, 2123, 2, 2, 4223, 4224, 7, 573, 2, 2, 4224, 4226, 7, 1143, 2, 2, 4225, 4222, 3, 2, 2, 2, 4225, 4226, 3, 2, 2, 2, 4226, 4228, 3, 2, 2, 2, 4227, 4229, 5, 386, 194, 2, 4228, 4227, 3, 2, 2, 2, 4228, 4229, 3, 2, 2, 2, 4229, 4230, 3, 2, 2, 2, 4230, 4231, 7, 2243, 2, 2, 4231, 385, 3, 2, 2, 2, 4232, 4233, 7, 262, 2, 2, 4233, 4234, 7, 2245, 2, 2, 4234, 4235, 9, 33, 2, 2, 4235, 387, 3, 2, 2, 2, 4236, 4239, 7, 290, 2, 2, 4237, 4238, 7, 1174, 2, 2, 4238, 4240, 7, 1409, 2, 2, 4239, 4237, 3, 2, 2, 2, 4239, 4240, 3, 2, 2, 2, 4240, 4241, 3, 2, 2, 2, 4241, 4242, 7, 382, 2, 2, 4242, 4243, 5, 390, 196, 2, 4243, 4244, 7, 63, 2, 2, 4244, 4245, 5, 392, 197, 2, 4245, 4246, 7, 2243, 2, 2, 4246, 389, 3, 2, 2, 2, 4247, 4248, 5, 1494, 748, 2, 4248, 391, 3, 2, 2, 2, 4249, 4250, 7, 2221, 2, 2, 4250, 393, 3, 2, 2, 2, 4251, 4252, 7, 41, 2, 2, 4252, 4253, 7, 751, 2, 2, 4253, 4269, 5, 404, 203, 2, 4254, 4256, 7, 225, 2, 2, 4255, 4257, 5, 398, 200, 2, 4256, 4255, 3, 2, 2, 2, 4256, 4257, 3, 2, 2, 2, 4257, 4261, 3, 2, 2, 2, 4258, 4260, 5, 400, 201, 2, 4259, 4258, 3, 2, 2, 2, 4260, 4263, 3, 2, 2, 2, 4261, 4259, 3, 2, 2, 2, 4261, 4262, 3, 2, 2, 2, 4262, 4266, 3, 2, 2, 2, 4263, 4261, 3, 2, 2, 2, 4264, 4265, 7, 1434, 2, 2, 4265, 4267, 7, 1514, 2, 2, 4266, 4264, 3, 2, 2, 2, 4266, 4267, 3, 2, 2, 2, 4267, 4270, 3, 2, 2, 2, 4268, 4270, 5, 396, 199, 2, 4269, 4254, 3, 2, 2, 2, 4269, 4268, 3, 2, 2, 2, 4270, 4271, 3, 2, 2, 2, 4271, 4272, 7, 2243, 2, 2, 4272, 395, 3, 2, 2, 2, 4273, 4274, 6, 199, 7, 2, 4274, 4275, 9, 36, 2, 2, 4275, 397, 3, 2, 2, 2, 4276, 4277, 6, 200, 8, 2, 4277, 4278, 7, 342, 2, 2, 4278, 399, 3, 2, 2, 2, 4279, 4280, 5, 1382, 692, 2, 4280, 4281, 7, 2245, 2, 2, 4281, 4282, 5, 402, 202, 2, 4282, 401, 3, 2, 2, 2, 4283, 4284, 5, 1494, 748, 2, 4284, 403, 3, 2, 2, 2, 4285, 4286, 5, 1494, 748, 2, 4286, 4287, 7, 2218, 2, 2, 4287, 4289, 3, 2, 2, 2, 4288, 4285, 3, 2, 2, 2, 4288, 4289, 3, 2, 2, 2, 4289, 4290, 3, 2, 2, 2, 4290, 4291, 5, 1494, 748, 2, 4291, 405, 3, 2, 2, 2, 4292, 4293, 7, 41, 2, 2, 4293, 4294, 7, 2101, 2, 2, 4294, 4327, 5, 1428, 715, 2, 4295, 4296, 7, 20, 2, 2, 4296, 4328, 5, 424, 213, 2, 4297, 4298, 7, 865, 2, 2, 4298, 4299, 7, 259, 2, 2, 4299, 4300, 5, 1398, 700, 2, 4300, 4301, 9, 37, 2, 2, 4301, 4328, 3, 2, 2, 2, 4302, 4319, 7, 413, 2, 2, 4303, 4304, 7, 259, 2, 2, 4304, 4320, 5, 1398, 700, 2, 4305, 4306, 7, 1306, 2, 2, 4306, 4320, 7, 724, 2, 2, 4307, 4308, 7, 2004, 2, 2, 4308, 4309, 7, 2225, 2, 2, 4309, 4314, 5, 1426, 714, 2, 4310, 4311, 7, 2231, 2, 2, 4311, 4313, 5, 1426, 714, 2, 4312, 4310, 3, 2, 2, 2, 4313, 4316, 3, 2, 2, 2, 4314, 4312, 3, 2, 2, 2, 4314, 4315, 3, 2, 2, 2, 4315, 4317, 3, 2, 2, 2, 4316, 4314, 3, 2, 2, 2, 4317, 4318, 7, 2226, 2, 2, 4318, 4320, 3, 2, 2, 2, 4319, 4303, 3, 2, 2, 2, 4319, 4305, 3, 2, 2, 2, 4319, 4307, 3, 2, 2, 2, 4320, 4328, 3, 2, 2, 2, 4321, 4328, 7, 225, 2, 2, 4322, 4323, 7, 1355, 2, 2, 4323, 4328, 9, 38, 2, 2, 4324, 4326, 5, 408, 205, 2, 4325, 4324, 3, 2, 2, 2, 4325, 4326, 3, 2, 2, 2, 4326, 4328, 3, 2, 2, 2, 4327, 4295, 3, 2, 2, 2, 4327, 4297, 3, 2, 2, 2, 4327, 4302, 3, 2, 2, 2, 4327, 4321, 3, 2, 2, 2, 4327, 4322, 3, 2, 2, 2, 4327, 4325, 3, 2, 2, 2, 4328, 4329, 3, 2, 2, 2, 4329, 4330, 7, 2243, 2, 2, 4330, 407, 3, 2, 2, 2, 4331, 4332, 6, 205, 9, 2, 4332, 4333, 9, 36, 2, 2, 4333, 409, 3, 2, 2, 2, 4334, 4337, 7, 290, 2, 2, 4335, 4336, 7, 1174, 2, 2, 4336, 4338, 7, 1409, 2, 2, 4337, 4335, 3, 2, 2, 2, 4337, 4338, 3, 2, 2, 2, 4338, 4343, 3, 2, 2, 2, 4339, 4341, 7, 1174, 2, 2, 4340, 4339, 3, 2, 2, 2, 4340, 4341, 3, 2, 2, 2, 4341, 4342, 3, 2, 2, 2, 4342, 4344, 7, 544, 2, 2, 4343, 4340, 3, 2, 2, 2, 4343, 4344, 3, 2, 2, 2, 4344, 4346, 3, 2, 2, 2, 4345, 4347, 7, 425, 2, 2, 4346, 4345, 3, 2, 2, 2, 4346, 4347, 3, 2, 2, 2, 4347, 4349, 3, 2, 2, 2, 4348, 4350, 7, 427, 2, 2, 4349, 4348, 3, 2, 2, 2, 4349, 4350, 3, 2, 2, 2, 4350, 4351, 3, 2, 2, 2, 4351, 4352, 7, 2101, 2, 2, 4352, 4354, 5, 1428, 715, 2, 4353, 4355, 5, 412, 207, 2, 4354, 4353, 3, 2, 2, 2, 4354, 4355, 3, 2, 2, 2, 4355, 4356, 3, 2, 2, 2, 4356, 4357, 7, 63, 2, 2, 4357, 4359, 5, 1042, 522, 2, 4358, 4360, 5, 1226, 614, 2, 4359, 4358, 3, 2, 2, 2, 4359, 4360, 3, 2, 2, 2, 4360, 411, 3, 2, 2, 2, 4361, 4364, 5, 414, 208, 2, 4362, 4364, 5, 416, 209, 2, 4363, 4361, 3, 2, 2, 2, 4363, 4362, 3, 2, 2, 2, 4364, 413, 3, 2, 2, 2, 4365, 4379, 7, 2225, 2, 2, 4366, 4368, 7, 2231, 2, 2, 4367, 4366, 3, 2, 2, 2, 4367, 4368, 3, 2, 2, 2, 4368, 4377, 3, 2, 2, 2, 4369, 4373, 5, 1356, 679, 2, 4370, 4372, 5, 418, 210, 2, 4371, 4370, 3, 2, 2, 2, 4372, 4375, 3, 2, 2, 2, 4373, 4371, 3, 2, 2, 2, 4373, 4374, 3, 2, 2, 2, 4374, 4378, 3, 2, 2, 2, 4375, 4373, 3, 2, 2, 2, 4376, 4378, 5, 424, 213, 2, 4377, 4369, 3, 2, 2, 2, 4377, 4376, 3, 2, 2, 2, 4378, 4380, 3, 2, 2, 2, 4379, 4367, 3, 2, 2, 2, 4380, 4381, 3, 2, 2, 2, 4381, 4379, 3, 2, 2, 2, 4381, 4382, 3, 2, 2, 2, 4382, 4383, 3, 2, 2, 2, 4383, 4384, 7, 2226, 2, 2, 4384, 415, 3, 2, 2, 2, 4385, 4386, 7, 1117, 2, 2, 4386, 4405, 5, 1402, 702, 2, 4387, 4388, 7, 2123, 2, 2, 4388, 4389, 7, 1109, 2, 2, 4389, 4401, 9, 39, 2, 2, 4390, 4402, 7, 353, 2, 2, 4391, 4392, 7, 2225, 2, 2, 4392, 4397, 7, 2254, 2, 2, 4393, 4394, 7, 2231, 2, 2, 4394, 4396, 7, 2254, 2, 2, 4395, 4393, 3, 2, 2, 2, 4396, 4399, 3, 2, 2, 2, 4397, 4395, 3, 2, 2, 2, 4397, 4398, 3, 2, 2, 2, 4398, 4400, 3, 2, 2, 2, 4399, 4397, 3, 2, 2, 2, 4400, 4402, 7, 2226, 2, 2, 4401, 4390, 3, 2, 2, 2, 4401, 4391, 3, 2, 2, 2, 4402, 4406, 3, 2, 2, 2, 4403, 4404, 7, 1999, 2, 2, 4404, 4406, 5, 1428, 715, 2, 4405, 4387, 3, 2, 2, 2, 4405, 4403, 3, 2, 2, 2, 4406, 4424, 3, 2, 2, 2, 4407, 4416, 7, 2225, 2, 2, 4408, 4410, 7, 2231, 2, 2, 4409, 4408, 3, 2, 2, 2, 4409, 4410, 3, 2, 2, 2, 4410, 4414, 3, 2, 2, 2, 4411, 4415, 5, 424, 213, 2, 4412, 4413, 7, 2254, 2, 2, 4413, 4415, 5, 418, 210, 2, 4414, 4411, 3, 2, 2, 2, 4414, 4412, 3, 2, 2, 2, 4415, 4417, 3, 2, 2, 2, 4416, 4409, 3, 2, 2, 2, 4417, 4418, 3, 2, 2, 2, 4418, 4416, 3, 2, 2, 2, 4418, 4419, 3, 2, 2, 2, 4419, 4420, 3, 2, 2, 2, 4420, 4421, 7, 2226, 2, 2, 4421, 4423, 3, 2, 2, 2, 4422, 4407, 3, 2, 2, 2, 4423, 4426, 3, 2, 2, 2, 4424, 4422, 3, 2, 2, 2, 4424, 4425, 3, 2, 2, 2, 4425, 417, 3, 2, 2, 2, 4426, 4424, 3, 2, 2, 2, 4427, 4428, 7, 259, 2, 2, 4428, 4430, 5, 1398, 700, 2, 4429, 4427, 3, 2, 2, 2, 4429, 4430, 3, 2, 2, 2, 4430, 4440, 3, 2, 2, 2, 4431, 4433, 7, 1075, 2, 2, 4432, 4431, 3, 2, 2, 2, 4432, 4433, 3, 2, 2, 2, 4433, 4434, 3, 2, 2, 2, 4434, 4441, 7, 1099, 2, 2, 4435, 4441, 7, 2004, 2, 2, 4436, 4437, 7, 1306, 2, 2, 4437, 4441, 7, 724, 2, 2, 4438, 4441, 5, 896, 449, 2, 4439, 4441, 5, 886, 444, 2, 4440, 4432, 3, 2, 2, 2, 4440, 4435, 3, 2, 2, 2, 4440, 4436, 3, 2, 2, 2, 4440, 4438, 3, 2, 2, 2, 4440, 4439, 3, 2, 2, 2, 4441, 4443, 3, 2, 2, 2, 4442, 4444, 5, 426, 214, 2, 4443, 4442, 3, 2, 2, 2, 4443, 4444, 3, 2, 2, 2, 4444, 419, 3, 2, 2, 2, 4445, 4446, 7, 1475, 2, 2, 4446, 4447, 7, 697, 2, 2, 4447, 4459, 5, 1428, 715, 2, 4448, 4449, 7, 2123, 2, 2, 4449, 4459, 7, 1448, 2, 2, 4450, 4451, 7, 259, 2, 2, 4451, 4453, 5, 1398, 700, 2, 4452, 4450, 3, 2, 2, 2, 4452, 4453, 3, 2, 2, 2, 4453, 4454, 3, 2, 2, 2, 4454, 4456, 5, 896, 449, 2, 4455, 4457, 5, 426, 214, 2, 4456, 4455, 3, 2, 2, 2, 4456, 4457, 3, 2, 2, 2, 4457, 4459, 3, 2, 2, 2, 4458, 4445, 3, 2, 2, 2, 4458, 4448, 3, 2, 2, 2, 4458, 4452, 3, 2, 2, 2, 4459, 421, 3, 2, 2, 2, 4460, 4461, 7, 1475, 2, 2, 4461, 4462, 7, 548, 2, 2, 4462, 4463, 7, 2225, 2, 2, 4463, 4464, 5, 1494, 748, 2, 4464, 4465, 7, 2226, 2, 2, 4465, 4466, 7, 697, 2, 2, 4466, 4467, 5, 1428, 715, 2, 4467, 4496, 3, 2, 2, 2, 4468, 4469, 7, 1378, 2, 2, 4469, 4470, 7, 2225, 2, 2, 4470, 4471, 5, 1494, 748, 2, 4471, 4472, 7, 2226, 2, 2, 4472, 4473, 7, 2123, 2, 2, 4473, 4474, 7, 1448, 2, 2, 4474, 4496, 3, 2, 2, 2, 4475, 4476, 7, 259, 2, 2, 4476, 4478, 5, 1398, 700, 2, 4477, 4475, 3, 2, 2, 2, 4477, 4478, 3, 2, 2, 2, 4478, 4479, 3, 2, 2, 2, 4479, 4480, 7, 546, 2, 2, 4480, 4481, 7, 724, 2, 2, 4481, 4486, 7, 2225, 2, 2, 4482, 4484, 7, 2231, 2, 2, 4483, 4482, 3, 2, 2, 2, 4483, 4484, 3, 2, 2, 2, 4484, 4485, 3, 2, 2, 2, 4485, 4487, 5, 1494, 748, 2, 4486, 4483, 3, 2, 2, 2, 4487, 4488, 3, 2, 2, 2, 4488, 4486, 3, 2, 2, 2, 4488, 4489, 3, 2, 2, 2, 4489, 4490, 3, 2, 2, 2, 4490, 4491, 7, 2226, 2, 2, 4491, 4493, 5, 896, 449, 2, 4492, 4494, 5, 426, 214, 2, 4493, 4492, 3, 2, 2, 2, 4493, 4494, 3, 2, 2, 2, 4494, 4496, 3, 2, 2, 2, 4495, 4460, 3, 2, 2, 2, 4495, 4468, 3, 2, 2, 2, 4495, 4477, 3, 2, 2, 2, 4496, 423, 3, 2, 2, 2, 4497, 4498, 7, 259, 2, 2, 4498, 4500, 5, 1398, 700, 2, 4499, 4497, 3, 2, 2, 2, 4499, 4500, 3, 2, 2, 2, 4500, 4532, 3, 2, 2, 2, 4501, 4502, 7, 2004, 2, 2, 4502, 4503, 7, 2225, 2, 2, 4503, 4508, 5, 1426, 714, 2, 4504, 4505, 7, 2231, 2, 2, 4505, 4507, 5, 1426, 714, 2, 4506, 4504, 3, 2, 2, 2, 4507, 4510, 3, 2, 2, 2, 4508, 4506, 3, 2, 2, 2, 4508, 4509, 3, 2, 2, 2, 4509, 4511, 3, 2, 2, 2, 4510, 4508, 3, 2, 2, 2, 4511, 4512, 7, 2226, 2, 2, 4512, 4533, 3, 2, 2, 2, 4513, 4514, 7, 1306, 2, 2, 4514, 4515, 7, 724, 2, 2, 4515, 4516, 7, 2225, 2, 2, 4516, 4521, 5, 1426, 714, 2, 4517, 4518, 7, 2231, 2, 2, 4518, 4520, 5, 1426, 714, 2, 4519, 4517, 3, 2, 2, 2, 4520, 4523, 3, 2, 2, 2, 4521, 4519, 3, 2, 2, 2, 4521, 4522, 3, 2, 2, 2, 4522, 4524, 3, 2, 2, 2, 4523, 4521, 3, 2, 2, 2, 4524, 4525, 7, 2226, 2, 2, 4525, 4533, 3, 2, 2, 2, 4526, 4533, 5, 894, 448, 2, 4527, 4528, 7, 182, 2, 2, 4528, 4529, 7, 2225, 2, 2, 4529, 4530, 5, 1236, 619, 2, 4530, 4531, 7, 2226, 2, 2, 4531, 4533, 3, 2, 2, 2, 4532, 4501, 3, 2, 2, 2, 4532, 4513, 3, 2, 2, 2, 4532, 4526, 3, 2, 2, 2, 4532, 4527, 3, 2, 2, 2, 4533, 4535, 3, 2, 2, 2, 4534, 4536, 5, 426, 214, 2, 4535, 4534, 3, 2, 2, 2, 4535, 4536, 3, 2, 2, 2, 4536, 425, 3, 2, 2, 2, 4537, 4539, 7, 1075, 2, 2, 4538, 4537, 3, 2, 2, 2, 4538, 4539, 3, 2, 2, 2, 4539, 4540, 3, 2, 2, 2, 4540, 4548, 7, 355, 2, 2, 4541, 4542, 7, 658, 2, 2, 4542, 4548, 9, 40, 2, 2, 4543, 4548, 9, 37, 2, 2, 4544, 4548, 9, 7, 2, 2, 4545, 4548, 9, 41, 2, 2, 4546, 4548, 5, 768, 385, 2, 4547, 4538, 3, 2, 2, 2, 4547, 4541, 3, 2, 2, 2, 4547, 4543, 3, 2, 2, 2, 4547, 4544, 3, 2, 2, 2, 4547, 4545, 3, 2, 2, 2, 4547, 4546, 3, 2, 2, 2, 4548, 4549, 3, 2, 2, 2, 4549, 4547, 3, 2, 2, 2, 4549, 4550, 3, 2, 2, 2, 4550, 427, 3, 2, 2, 2, 4551, 4552, 7, 41, 2, 2, 4552, 4553, 7, 1911, 2, 2, 4553, 4586, 5, 838, 420, 2, 4554, 4556, 7, 353, 2, 2, 4555, 4557, 5, 610, 306, 2, 4556, 4555, 3, 2, 2, 2, 4556, 4557, 3, 2, 2, 2, 4557, 4559, 3, 2, 2, 2, 4558, 4560, 5, 614, 308, 2, 4559, 4558, 3, 2, 2, 2, 4559, 4560, 3, 2, 2, 2, 4560, 4587, 3, 2, 2, 2, 4561, 4562, 7, 842, 2, 2, 4562, 4563, 7, 493, 2, 2, 4563, 4587, 5, 608, 305, 2, 4564, 4565, 7, 1414, 2, 2, 4565, 4587, 5, 608, 305, 2, 4566, 4587, 7, 207, 2, 2, 4567, 4568, 7, 1523, 2, 2, 4568, 4571, 7, 1551, 2, 2, 4569, 4570, 7, 722, 2, 2, 4570, 4572, 5, 608, 305, 2, 4571, 4569, 3, 2, 2, 2, 4571, 4572, 3, 2, 2, 2, 4572, 4587, 3, 2, 2, 2, 4573, 4574, 7, 1406, 2, 2, 4574, 4575, 7, 1966, 2, 2, 4575, 4587, 5, 442, 222, 2, 4576, 4577, 5, 674, 338, 2, 4577, 4578, 7, 95, 2, 2, 4578, 4587, 3, 2, 2, 2, 4579, 4587, 5, 430, 216, 2, 4580, 4587, 5, 432, 217, 2, 4581, 4587, 5, 434, 218, 2, 4582, 4587, 5, 438, 220, 2, 4583, 4587, 5, 470, 236, 2, 4584, 4587, 5, 440, 221, 2, 4585, 4587, 5, 460, 231, 2, 4586, 4554, 3, 2, 2, 2, 4586, 4561, 3, 2, 2, 2, 4586, 4564, 3, 2, 2, 2, 4586, 4566, 3, 2, 2, 2, 4586, 4567, 3, 2, 2, 2, 4586, 4573, 3, 2, 2, 2, 4586, 4576, 3, 2, 2, 2, 4586, 4579, 3, 2, 2, 2, 4586, 4580, 3, 2, 2, 2, 4586, 4581, 3, 2, 2, 2, 4586, 4582, 3, 2, 2, 2, 4586, 4583, 3, 2, 2, 2, 4586, 4584, 3, 2, 2, 2, 4586, 4585, 3, 2, 2, 2, 4587, 4588, 3, 2, 2, 2, 4588, 4589, 7, 2243, 2, 2, 4589, 429, 3, 2, 2, 2, 4590, 4593, 7, 20, 2, 2, 4591, 4594, 5, 462, 232, 2, 4592, 4594, 5, 464, 233, 2, 4593, 4591, 3, 2, 2, 2, 4593, 4592, 3, 2, 2, 2, 4594, 4637, 3, 2, 2, 2, 4595, 4596, 7, 413, 2, 2, 4596, 4599, 9, 42, 2, 2, 4597, 4600, 5, 750, 376, 2, 4598, 4600, 7, 2219, 2, 2, 4599, 4597, 3, 2, 2, 2, 4599, 4598, 3, 2, 2, 2, 4600, 4603, 3, 2, 2, 2, 4601, 4602, 7, 722, 2, 2, 4602, 4604, 5, 608, 305, 2, 4603, 4601, 3, 2, 2, 2, 4603, 4604, 3, 2, 2, 2, 4604, 4637, 3, 2, 2, 2, 4605, 4606, 7, 1523, 2, 2, 4606, 4609, 7, 1920, 2, 2, 4607, 4610, 5, 750, 376, 2, 4608, 4610, 7, 2219, 2, 2, 4609, 4607, 3, 2, 2, 2, 4609, 4608, 3, 2, 2, 2, 4610, 4613, 3, 2, 2, 2, 4611, 4612, 7, 722, 2, 2, 4612, 4614, 5, 608, 305, 2, 4613, 4611, 3, 2, 2, 2, 4613, 4614, 3, 2, 2, 2, 4614, 4637, 3, 2, 2, 2, 4615, 4616, 7, 1406, 2, 2, 4616, 4617, 7, 320, 2, 2, 4617, 4622, 5, 750, 376, 2, 4618, 4619, 7, 2231, 2, 2, 4619, 4621, 5, 750, 376, 2, 4620, 4618, 3, 2, 2, 2, 4621, 4624, 3, 2, 2, 2, 4622, 4620, 3, 2, 2, 2, 4622, 4623, 3, 2, 2, 2, 4623, 4625, 3, 2, 2, 2, 4624, 4622, 3, 2, 2, 2, 4625, 4626, 7, 1966, 2, 2, 4626, 4631, 5, 750, 376, 2, 4627, 4628, 7, 2231, 2, 2, 4628, 4630, 5, 750, 376, 2, 4629, 4627, 3, 2, 2, 2, 4630, 4633, 3, 2, 2, 2, 4631, 4629, 3, 2, 2, 2, 4631, 4632, 3, 2, 2, 2, 4632, 4637, 3, 2, 2, 2, 4633, 4631, 3, 2, 2, 2, 4634, 4635, 9, 42, 2, 2, 4635, 4637, 5, 316, 159, 2, 4636, 4590, 3, 2, 2, 2, 4636, 4595, 3, 2, 2, 2, 4636, 4605, 3, 2, 2, 2, 4636, 4615, 3, 2, 2, 2, 4636, 4634, 3, 2, 2, 2, 4637, 431, 3, 2, 2, 2, 4638, 4645, 5, 450, 226, 2, 4639, 4641, 7, 1012, 2, 2, 4640, 4639, 3, 2, 2, 2, 4640, 4641, 3, 2, 2, 2, 4641, 4642, 3, 2, 2, 2, 4642, 4643, 7, 544, 2, 2, 4643, 4645, 7, 781, 2, 2, 4644, 4638, 3, 2, 2, 2, 4644, 4640, 3, 2, 2, 2, 4645, 433, 3, 2, 2, 2, 4646, 4647, 7, 1911, 2, 2, 4647, 4650, 7, 575, 2, 2, 4648, 4651, 5, 436, 219, 2, 4649, 4651, 7, 2221, 2, 2, 4650, 4648, 3, 2, 2, 2, 4650, 4649, 3, 2, 2, 2, 4651, 435, 3, 2, 2, 2, 4652, 4653, 5, 1494, 748, 2, 4653, 437, 3, 2, 2, 2, 4654, 4664, 7, 1127, 2, 2, 4655, 4657, 7, 1114, 2, 2, 4656, 4658, 9, 43, 2, 2, 4657, 4656, 3, 2, 2, 2, 4657, 4658, 3, 2, 2, 2, 4658, 4664, 3, 2, 2, 2, 4659, 4660, 7, 1355, 2, 2, 4660, 4664, 9, 38, 2, 2, 4661, 4664, 7, 1245, 2, 2, 4662, 4664, 7, 1922, 2, 2, 4663, 4654, 3, 2, 2, 2, 4663, 4655, 3, 2, 2, 2, 4663, 4659, 3, 2, 2, 2, 4663, 4661, 3, 2, 2, 2, 4663, 4662, 3, 2, 2, 2, 4664, 439, 3, 2, 2, 2, 4665, 4666, 7, 534, 2, 2, 4666, 4667, 9, 44, 2, 2, 4667, 441, 3, 2, 2, 2, 4668, 4669, 5, 838, 420, 2, 4669, 443, 3, 2, 2, 2, 4670, 4672, 7, 290, 2, 2, 4671, 4673, 9, 45, 2, 2, 4672, 4671, 3, 2, 2, 2, 4672, 4673, 3, 2, 2, 2, 4673, 4677, 3, 2, 2, 2, 4674, 4678, 5, 446, 224, 2, 4675, 4678, 5, 456, 229, 2, 4676, 4678, 5, 458, 230, 2, 4677, 4674, 3, 2, 2, 2, 4677, 4675, 3, 2, 2, 2, 4677, 4676, 3, 2, 2, 2, 4678, 4679, 3, 2, 2, 2, 4679, 4680, 7, 2243, 2, 2, 4680, 445, 3, 2, 2, 2, 4681, 4682, 7, 1911, 2, 2, 4682, 4684, 5, 1490, 746, 2, 4683, 4685, 5, 462, 232, 2, 4684, 4683, 3, 2, 2, 2, 4684, 4685, 3, 2, 2, 2, 4685, 4703, 3, 2, 2, 2, 4686, 4687, 7, 842, 2, 2, 4687, 4688, 7, 493, 2, 2, 4688, 4702, 5, 608, 305, 2, 4689, 4690, 7, 134, 2, 2, 4690, 4702, 5, 608, 305, 2, 4691, 4702, 5, 450, 226, 2, 4692, 4693, 7, 544, 2, 2, 4693, 4702, 7, 781, 2, 2, 4694, 4702, 9, 29, 2, 2, 4695, 4696, 7, 446, 2, 2, 4696, 4702, 5, 448, 225, 2, 4697, 4702, 7, 353, 2, 2, 4698, 4702, 5, 452, 227, 2, 4699, 4702, 5, 454, 228, 2, 4700, 4702, 5, 440, 221, 2, 4701, 4686, 3, 2, 2, 2, 4701, 4689, 3, 2, 2, 2, 4701, 4691, 3, 2, 2, 2, 4701, 4692, 3, 2, 2, 2, 4701, 4694, 3, 2, 2, 2, 4701, 4695, 3, 2, 2, 2, 4701, 4697, 3, 2, 2, 2, 4701, 4698, 3, 2, 2, 2, 4701, 4699, 3, 2, 2, 2, 4701, 4700, 3, 2, 2, 2, 4702, 4705, 3, 2, 2, 2, 4703, 4701, 3, 2, 2, 2, 4703, 4704, 3, 2, 2, 2, 4704, 447, 3, 2, 2, 2, 4705, 4703, 3, 2, 2, 2, 4706, 4707, 7, 2065, 2, 2, 4707, 4708, 7, 2221, 2, 2, 4708, 449, 3, 2, 2, 2, 4709, 4710, 9, 46, 2, 2, 4710, 451, 3, 2, 2, 2, 4711, 4712, 7, 493, 2, 2, 4712, 4713, 7, 800, 2, 2, 4713, 4720, 7, 771, 2, 2, 4714, 4721, 7, 84, 2, 2, 4715, 4718, 7, 2002, 2, 2, 4716, 4717, 7, 1537, 2, 2, 4717, 4719, 5, 608, 305, 2, 4718, 4716, 3, 2, 2, 2, 4718, 4719, 3, 2, 2, 2, 4719, 4721, 3, 2, 2, 2, 4720, 4714, 3, 2, 2, 2, 4720, 4715, 3, 2, 2, 2, 4720, 4721, 3, 2, 2, 2, 4721, 453, 3, 2, 2, 2, 4722, 4723, 7, 1490, 2, 2, 4723, 4724, 7, 1551, 2, 2, 4724, 4725, 7, 800, 2, 2, 4725, 4726, 9, 47, 2, 2, 4726, 455, 3, 2, 2, 2, 4727, 4728, 7, 1922, 2, 2, 4728, 4729, 7, 1911, 2, 2, 4729, 4731, 5, 1490, 746, 2, 4730, 4732, 5, 464, 233, 2, 4731, 4730, 3, 2, 2, 2, 4731, 4732, 3, 2, 2, 2, 4732, 4734, 3, 2, 2, 2, 4733, 4735, 5, 434, 218, 2, 4734, 4733, 3, 2, 2, 2, 4734, 4735, 3, 2, 2, 2, 4735, 4737, 3, 2, 2, 2, 4736, 4738, 5, 452, 227, 2, 4737, 4736, 3, 2, 2, 2, 4737, 4738, 3, 2, 2, 2, 4738, 457, 3, 2, 2, 2, 4739, 4740, 7, 2000, 2, 2, 4740, 4741, 7, 1911, 2, 2, 4741, 4743, 5, 1490, 746, 2, 4742, 4744, 5, 462, 232, 2, 4743, 4742, 3, 2, 2, 2, 4743, 4744, 3, 2, 2, 2, 4744, 4746, 3, 2, 2, 2, 4745, 4747, 5, 452, 227, 2, 4746, 4745, 3, 2, 2, 2, 4746, 4747, 3, 2, 2, 2, 4747, 4749, 3, 2, 2, 2, 4748, 4750, 5, 460, 231, 2, 4749, 4748, 3, 2, 2, 2, 4749, 4750, 3, 2, 2, 2, 4750, 459, 3, 2, 2, 2, 4751, 4752, 7, 1430, 2, 2, 4752, 4753, 9, 48, 2, 2, 4753, 461, 3, 2, 2, 2, 4754, 4756, 7, 320, 2, 2, 4755, 4757, 7, 2231, 2, 2, 4756, 4755, 3, 2, 2, 2, 4756, 4757, 3, 2, 2, 2, 4757, 4758, 3, 2, 2, 2, 4758, 4759, 5, 466, 234, 2, 4759, 463, 3, 2, 2, 2, 4760, 4762, 7, 1920, 2, 2, 4761, 4763, 7, 2231, 2, 2, 4762, 4761, 3, 2, 2, 2, 4762, 4763, 3, 2, 2, 2, 4763, 4764, 3, 2, 2, 2, 4764, 4765, 5, 466, 234, 2, 4765, 465, 3, 2, 2, 2, 4766, 4768, 7, 2221, 2, 2, 4767, 4766, 3, 2, 2, 2, 4767, 4768, 3, 2, 2, 2, 4768, 4771, 3, 2, 2, 2, 4769, 4770, 7, 1537, 2, 2, 4770, 4772, 5, 608, 305, 2, 4771, 4769, 3, 2, 2, 2, 4771, 4772, 3, 2, 2, 2, 4772, 4774, 3, 2, 2, 2, 4773, 4775, 7, 1434, 2, 2, 4774, 4773, 3, 2, 2, 2, 4774, 4775, 3, 2, 2, 2, 4775, 4777, 3, 2, 2, 2, 4776, 4778, 5, 470, 236, 2, 4777, 4776, 3, 2, 2, 2, 4777, 4778, 3, 2, 2, 2, 4778, 467, 3, 2, 2, 2, 4779, 4780, 7, 320, 2, 2, 4780, 4792, 7, 2221, 2, 2, 4781, 4786, 7, 2225, 2, 2, 4782, 4784, 7, 2231, 2, 2, 4783, 4782, 3, 2, 2, 2, 4783, 4784, 3, 2, 2, 2, 4784, 4785, 3, 2, 2, 2, 4785, 4787, 7, 2221, 2, 2, 4786, 4783, 3, 2, 2, 2, 4787, 4788, 3, 2, 2, 2, 4788, 4786, 3, 2, 2, 2, 4788, 4789, 3, 2, 2, 2, 4789, 4790, 3, 2, 2, 2, 4790, 4792, 7, 2226, 2, 2, 4791, 4779, 3, 2, 2, 2, 4791, 4781, 3, 2, 2, 2, 4791, 4792, 3, 2, 2, 2, 4792, 4795, 3, 2, 2, 2, 4793, 4794, 7, 1537, 2, 2, 4794, 4796, 5, 608, 305, 2, 4795, 4793, 3, 2, 2, 2, 4795, 4796, 3, 2, 2, 2, 4796, 4799, 3, 2, 2, 2, 4797, 4798, 7, 134, 2, 2, 4798, 4800, 5, 608, 305, 2, 4799, 4797, 3, 2, 2, 2, 4799, 4800, 3, 2, 2, 2, 4800, 4802, 3, 2, 2, 2, 4801, 4803, 7, 1434, 2, 2, 4802, 4801, 3, 2, 2, 2, 4802, 4803, 3, 2, 2, 2, 4803, 469, 3, 2, 2, 2, 4804, 4814, 7, 87, 2, 2, 4805, 4815, 7, 1115, 2, 2, 4806, 4809, 7, 1130, 2, 2, 4807, 4808, 7, 908, 2, 2, 4808, 4810, 5, 608, 305, 2, 4809, 4807, 3, 2, 2, 2, 4809, 4810, 3, 2, 2, 2, 4810, 4812, 3, 2, 2, 2, 4811, 4813, 5, 472, 237, 2, 4812, 4811, 3, 2, 2, 2, 4812, 4813, 3, 2, 2, 2, 4813, 4815, 3, 2, 2, 2, 4814, 4805, 3, 2, 2, 2, 4814, 4806, 3, 2, 2, 2, 4815, 471, 3, 2, 2, 2, 4816, 4819, 7, 822, 2, 2, 4817, 4820, 7, 2006, 2, 2, 4818, 4820, 5, 608, 305, 2, 4819, 4817, 3, 2, 2, 2, 4819, 4818, 3, 2, 2, 2, 4820, 473, 3, 2, 2, 2, 4821, 4822, 7, 146, 2, 2, 4822, 4823, 9, 40, 2, 2, 4823, 475, 3, 2, 2, 2, 4824, 4830, 7, 1023, 2, 2, 4825, 4827, 7, 1197, 2, 2, 4826, 4828, 7, 2219, 2, 2, 4827, 4826, 3, 2, 2, 2, 4827, 4828, 3, 2, 2, 2, 4828, 4830, 3, 2, 2, 2, 4829, 4824, 3, 2, 2, 2, 4829, 4825, 3, 2, 2, 2, 4830, 477, 3, 2, 2, 2, 4831, 4832, 7, 41, 2, 2, 4832, 4833, 7, 811, 2, 2, 4833, 4834, 7, 2101, 2, 2, 4834, 4860, 5, 1428, 715, 2, 4835, 4861, 5, 612, 307, 2, 4836, 4861, 5, 486, 244, 2, 4837, 4861, 5, 610, 306, 2, 4838, 4843, 5, 822, 412, 2, 4839, 4840, 7, 2231, 2, 2, 4840, 4842, 5, 822, 412, 2, 4841, 4839, 3, 2, 2, 2, 4842, 4845, 3, 2, 2, 2, 4843, 4841, 3, 2, 2, 2, 4843, 4844, 3, 2, 2, 2, 4844, 4861, 3, 2, 2, 2, 4845, 4843, 3, 2, 2, 2, 4846, 4851, 5, 824, 413, 2, 4847, 4848, 7, 2231, 2, 2, 4848, 4850, 5, 824, 413, 2, 4849, 4847, 3, 2, 2, 2, 4850, 4853, 3, 2, 2, 2, 4851, 4849, 3, 2, 2, 2, 4851, 4852, 3, 2, 2, 2, 4852, 4861, 3, 2, 2, 2, 4853, 4851, 3, 2, 2, 2, 4854, 4861, 5, 476, 239, 2, 4855, 4861, 5, 450, 226, 2, 4856, 4861, 5, 634, 318, 2, 4857, 4861, 5, 636, 319, 2, 4858, 4861, 5, 638, 320, 2, 4859, 4861, 5, 660, 331, 2, 4860, 4835, 3, 2, 2, 2, 4860, 4836, 3, 2, 2, 2, 4860, 4837, 3, 2, 2, 2, 4860, 4838, 3, 2, 2, 2, 4860, 4846, 3, 2, 2, 2, 4860, 4854, 3, 2, 2, 2, 4860, 4855, 3, 2, 2, 2, 4860, 4856, 3, 2, 2, 2, 4860, 4857, 3, 2, 2, 2, 4860, 4858, 3, 2, 2, 2, 4860, 4859, 3, 2, 2, 2, 4860, 4861, 3, 2, 2, 2, 4861, 4863, 3, 2, 2, 2, 4862, 4864, 5, 758, 380, 2, 4863, 4862, 3, 2, 2, 2, 4863, 4864, 3, 2, 2, 2, 4864, 4868, 3, 2, 2, 2, 4865, 4866, 7, 2065, 2, 2, 4866, 4867, 7, 633, 2, 2, 4867, 4869, 5, 612, 307, 2, 4868, 4865, 3, 2, 2, 2, 4868, 4869, 3, 2, 2, 2, 4869, 4871, 3, 2, 2, 2, 4870, 4872, 5, 480, 241, 2, 4871, 4870, 3, 2, 2, 2, 4871, 4872, 3, 2, 2, 2, 4872, 4880, 3, 2, 2, 2, 4873, 4874, 5, 650, 326, 2, 4874, 4875, 7, 1336, 2, 2, 4875, 4876, 7, 1438, 2, 2, 4876, 4881, 3, 2, 2, 2, 4877, 4881, 7, 225, 2, 2, 4878, 4879, 7, 255, 2, 2, 4879, 4881, 7, 555, 2, 2, 4880, 4873, 3, 2, 2, 2, 4880, 4877, 3, 2, 2, 2, 4880, 4878, 3, 2, 2, 2, 4880, 4881, 3, 2, 2, 2, 4881, 4882, 3, 2, 2, 2, 4882, 4883, 7, 2243, 2, 2, 4883, 479, 3, 2, 2, 2, 4884, 4885, 5, 482, 242, 2, 4885, 481, 3, 2, 2, 2, 4886, 4913, 7, 1379, 2, 2, 4887, 4914, 7, 513, 2, 2, 4888, 4914, 7, 226, 2, 2, 4889, 4914, 7, 544, 2, 2, 4890, 4891, 7, 1130, 2, 2, 4891, 4914, 9, 49, 2, 2, 4892, 4893, 7, 1571, 2, 2, 4893, 4894, 7, 2123, 2, 2, 4894, 4914, 5, 1236, 619, 2, 4895, 4896, 7, 908, 2, 2, 4896, 4914, 5, 1236, 619, 2, 4897, 4898, 7, 2123, 2, 2, 4898, 4899, 7, 1306, 2, 2, 4899, 4914, 7, 724, 2, 2, 4900, 4902, 7, 2065, 2, 2, 4901, 4903, 7, 353, 2, 2, 4902, 4901, 3, 2, 2, 2, 4902, 4903, 3, 2, 2, 2, 4903, 4904, 3, 2, 2, 2, 4904, 4905, 7, 805, 2, 2, 4905, 4906, 7, 1443, 2, 2, 4906, 4908, 7, 1490, 2, 2, 4907, 4909, 5, 484, 243, 2, 4908, 4907, 3, 2, 2, 2, 4908, 4909, 3, 2, 2, 2, 4909, 4914, 3, 2, 2, 2, 4910, 4911, 7, 2065, 2, 2, 4911, 4912, 9, 50, 2, 2, 4912, 4914, 7, 260, 2, 2, 4913, 4887, 3, 2, 2, 2, 4913, 4888, 3, 2, 2, 2, 4913, 4889, 3, 2, 2, 2, 4913, 4890, 3, 2, 2, 2, 4913, 4892, 3, 2, 2, 2, 4913, 4895, 3, 2, 2, 2, 4913, 4897, 3, 2, 2, 2, 4913, 4900, 3, 2, 2, 2, 4913, 4910, 3, 2, 2, 2, 4914, 4915, 3, 2, 2, 2, 4915, 4913, 3, 2, 2, 2, 4915, 4916, 3, 2, 2, 2, 4916, 483, 3, 2, 2, 2, 4917, 4918, 5, 1494, 748, 2, 4918, 485, 3, 2, 2, 2, 4919, 4920, 7, 865, 2, 2, 4920, 4921, 7, 2225, 2, 2, 4921, 4925, 5, 1426, 714, 2, 4922, 4923, 7, 445, 2, 2, 4923, 4926, 5, 836, 419, 2, 4924, 4926, 7, 351, 2, 2, 4925, 4922, 3, 2, 2, 2, 4925, 4924, 3, 2, 2, 2, 4925, 4926, 3, 2, 2, 2, 4926, 4927, 3, 2, 2, 2, 4927, 4928, 7, 2226, 2, 2, 4928, 487, 3, 2, 2, 2, 4929, 4930, 7, 41, 2, 2, 4930, 4931, 7, 811, 2, 2, 4931, 4932, 7, 2101, 2, 2, 4932, 4934, 7, 785, 2, 2, 4933, 4935, 7, 544, 2, 2, 4934, 4933, 3, 2, 2, 2, 4934, 4935, 3, 2, 2, 2, 4935, 4936, 3, 2, 2, 2, 4936, 4937, 7, 1130, 2, 2, 4937, 4946, 5, 1428, 715, 2, 4938, 4947, 5, 612, 307, 2, 4939, 4947, 5, 490, 246, 2, 4940, 4947, 5, 476, 239, 2, 4941, 4947, 5, 450, 226, 2, 4942, 4947, 5, 634, 318, 2, 4943, 4947, 5, 638, 320, 2, 4944, 4947, 5, 492, 247, 2, 4945, 4947, 5, 660, 331, 2, 4946, 4938, 3, 2, 2, 2, 4946, 4939, 3, 2, 2, 2, 4946, 4940, 3, 2, 2, 2, 4946, 4941, 3, 2, 2, 2, 4946, 4942, 3, 2, 2, 2, 4946, 4943, 3, 2, 2, 2, 4946, 4944, 3, 2, 2, 2, 4946, 4945, 3, 2, 2, 2, 4946, 4947, 3, 2, 2, 2, 4947, 4949, 3, 2, 2, 2, 4948, 4950, 5, 494, 248, 2, 4949, 4948, 3, 2, 2, 2, 4949, 4950, 3, 2, 2, 2, 4950, 4952, 3, 2, 2, 2, 4951, 4953, 5, 508, 255, 2, 4952, 4951, 3, 2, 2, 2, 4952, 4953, 3, 2, 2, 2, 4953, 4954, 3, 2, 2, 2, 4954, 4955, 7, 2243, 2, 2, 4955, 489, 3, 2, 2, 2, 4956, 4957, 7, 20, 2, 2, 4957, 4958, 7, 2225, 2, 2, 4958, 4959, 5, 1426, 714, 2, 4959, 4960, 7, 2226, 2, 2, 4960, 491, 3, 2, 2, 2, 4961, 4962, 7, 876, 2, 2, 4962, 4964, 5, 618, 310, 2, 4963, 4965, 5, 476, 239, 2, 4964, 4963, 3, 2, 2, 2, 4964, 4965, 3, 2, 2, 2, 4965, 493, 3, 2, 2, 2, 4966, 4999, 7, 20, 2, 2, 4967, 4968, 7, 1109, 2, 2, 4968, 4974, 7, 607, 2, 2, 4969, 4970, 7, 1306, 2, 2, 4970, 4974, 7, 724, 2, 2, 4971, 4974, 7, 1448, 2, 2, 4972, 4974, 7, 1498, 2, 2, 4973, 4967, 3, 2, 2, 2, 4973, 4969, 3, 2, 2, 2, 4973, 4971, 3, 2, 2, 2, 4973, 4972, 3, 2, 2, 2, 4974, 4986, 3, 2, 2, 2, 4975, 4976, 7, 2225, 2, 2, 4976, 4981, 5, 1426, 714, 2, 4977, 4978, 7, 2231, 2, 2, 4978, 4980, 5, 1426, 714, 2, 4979, 4977, 3, 2, 2, 2, 4980, 4983, 3, 2, 2, 2, 4981, 4979, 3, 2, 2, 2, 4981, 4982, 3, 2, 2, 2, 4982, 4984, 3, 2, 2, 2, 4983, 4981, 3, 2, 2, 2, 4984, 4985, 7, 2226, 2, 2, 4985, 4987, 3, 2, 2, 2, 4986, 4975, 3, 2, 2, 2, 4986, 4987, 3, 2, 2, 2, 4987, 5000, 3, 2, 2, 2, 4988, 4989, 7, 2225, 2, 2, 4989, 4994, 5, 1426, 714, 2, 4990, 4991, 7, 2231, 2, 2, 4991, 4993, 5, 1426, 714, 2, 4992, 4990, 3, 2, 2, 2, 4993, 4996, 3, 2, 2, 2, 4994, 4992, 3, 2, 2, 2, 4994, 4995, 3, 2, 2, 2, 4995, 4997, 3, 2, 2, 2, 4996, 4994, 3, 2, 2, 2, 4997, 4998, 7, 2226, 2, 2, 4998, 5000, 3, 2, 2, 2, 4999, 4973, 3, 2, 2, 2, 4999, 4988, 3, 2, 2, 2, 5000, 5002, 3, 2, 2, 2, 5001, 5003, 5, 506, 254, 2, 5002, 5001, 3, 2, 2, 2, 5002, 5003, 3, 2, 2, 2, 5003, 495, 3, 2, 2, 2, 5004, 5005, 5, 1236, 619, 2, 5005, 497, 3, 2, 2, 2, 5006, 5007, 5, 1236, 619, 2, 5007, 499, 3, 2, 2, 2, 5008, 5009, 9, 51, 2, 2, 5009, 501, 3, 2, 2, 2, 5010, 5011, 9, 52, 2, 2, 5011, 503, 3, 2, 2, 2, 5012, 5013, 7, 290, 2, 2, 5013, 5014, 7, 811, 2, 2, 5014, 5015, 7, 2101, 2, 2, 5015, 5016, 7, 785, 2, 2, 5016, 5017, 7, 1130, 2, 2, 5017, 5027, 5, 1428, 715, 2, 5018, 5024, 5, 612, 307, 2, 5019, 5020, 7, 1911, 2, 2, 5020, 5024, 5, 1490, 746, 2, 5021, 5024, 5, 450, 226, 2, 5022, 5024, 9, 53, 2, 2, 5023, 5018, 3, 2, 2, 2, 5023, 5019, 3, 2, 2, 2, 5023, 5021, 3, 2, 2, 2, 5023, 5022, 3, 2, 2, 2, 5024, 5025, 3, 2, 2, 2, 5025, 5023, 3, 2, 2, 2, 5025, 5026, 3, 2, 2, 2, 5026, 5028, 3, 2, 2, 2, 5027, 5023, 3, 2, 2, 2, 5027, 5028, 3, 2, 2, 2, 5028, 5030, 3, 2, 2, 2, 5029, 5031, 5, 476, 239, 2, 5030, 5029, 3, 2, 2, 2, 5030, 5031, 3, 2, 2, 2, 5031, 5071, 3, 2, 2, 2, 5032, 5048, 7, 2123, 2, 2, 5033, 5035, 7, 2231, 2, 2, 5034, 5033, 3, 2, 2, 2, 5034, 5035, 3, 2, 2, 2, 5035, 5044, 3, 2, 2, 2, 5036, 5037, 7, 1109, 2, 2, 5037, 5045, 7, 607, 2, 2, 5038, 5039, 7, 1306, 2, 2, 5039, 5045, 7, 724, 2, 2, 5040, 5045, 7, 1448, 2, 2, 5041, 5045, 7, 1498, 2, 2, 5042, 5043, 7, 220, 2, 2, 5043, 5045, 7, 1474, 2, 2, 5044, 5036, 3, 2, 2, 2, 5044, 5038, 3, 2, 2, 2, 5044, 5040, 3, 2, 2, 2, 5044, 5041, 3, 2, 2, 2, 5044, 5042, 3, 2, 2, 2, 5045, 5047, 3, 2, 2, 2, 5046, 5034, 3, 2, 2, 2, 5047, 5050, 3, 2, 2, 2, 5048, 5046, 3, 2, 2, 2, 5048, 5049, 3, 2, 2, 2, 5049, 5064, 3, 2, 2, 2, 5050, 5048, 3, 2, 2, 2, 5051, 5056, 7, 2225, 2, 2, 5052, 5054, 7, 2231, 2, 2, 5053, 5052, 3, 2, 2, 2, 5053, 5054, 3, 2, 2, 2, 5054, 5055, 3, 2, 2, 2, 5055, 5057, 5, 1494, 748, 2, 5056, 5053, 3, 2, 2, 2, 5057, 5058, 3, 2, 2, 2, 5058, 5056, 3, 2, 2, 2, 5058, 5059, 3, 2, 2, 2, 5059, 5060, 3, 2, 2, 2, 5060, 5062, 7, 2226, 2, 2, 5061, 5063, 5, 506, 254, 2, 5062, 5061, 3, 2, 2, 2, 5062, 5063, 3, 2, 2, 2, 5063, 5065, 3, 2, 2, 2, 5064, 5051, 3, 2, 2, 2, 5064, 5065, 3, 2, 2, 2, 5065, 5067, 3, 2, 2, 2, 5066, 5068, 5, 508, 255, 2, 5067, 5066, 3, 2, 2, 2, 5067, 5068, 3, 2, 2, 2, 5068, 5070, 3, 2, 2, 2, 5069, 5032, 3, 2, 2, 2, 5070, 5073, 3, 2, 2, 2, 5071, 5069, 3, 2, 2, 2, 5071, 5072, 3, 2, 2, 2, 5072, 505, 3, 2, 2, 2, 5073, 5071, 3, 2, 2, 2, 5074, 5075, 9, 52, 2, 2, 5075, 5076, 7, 905, 2, 2, 5076, 5077, 7, 2075, 2, 2, 5077, 507, 3, 2, 2, 2, 5078, 5079, 7, 1328, 2, 2, 5079, 5081, 7, 615, 2, 2, 5080, 5082, 9, 51, 2, 2, 5081, 5080, 3, 2, 2, 2, 5081, 5082, 3, 2, 2, 2, 5082, 509, 3, 2, 2, 2, 5083, 5084, 7, 290, 2, 2, 5084, 5085, 7, 811, 2, 2, 5085, 5086, 7, 2101, 2, 2, 5086, 5089, 5, 1428, 715, 2, 5087, 5088, 7, 1117, 2, 2, 5088, 5090, 5, 1402, 702, 2, 5089, 5087, 3, 2, 2, 2, 5089, 5090, 3, 2, 2, 2, 5090, 5111, 3, 2, 2, 2, 5091, 5092, 7, 1130, 2, 2, 5092, 5093, 7, 1290, 2, 2, 5093, 5097, 7, 1914, 2, 2, 5094, 5095, 9, 54, 2, 2, 5095, 5096, 7, 1371, 2, 2, 5096, 5098, 7, 1293, 2, 2, 5097, 5094, 3, 2, 2, 2, 5097, 5098, 3, 2, 2, 2, 5098, 5112, 3, 2, 2, 2, 5099, 5101, 5, 620, 311, 2, 5100, 5099, 3, 2, 2, 2, 5100, 5101, 3, 2, 2, 2, 5101, 5103, 3, 2, 2, 2, 5102, 5104, 9, 53, 2, 2, 5103, 5102, 3, 2, 2, 2, 5103, 5104, 3, 2, 2, 2, 5104, 5106, 3, 2, 2, 2, 5105, 5107, 5, 476, 239, 2, 5106, 5105, 3, 2, 2, 2, 5106, 5107, 3, 2, 2, 2, 5107, 5109, 3, 2, 2, 2, 5108, 5110, 5, 474, 238, 2, 5109, 5108, 3, 2, 2, 2, 5109, 5110, 3, 2, 2, 2, 5110, 5112, 3, 2, 2, 2, 5111, 5091, 3, 2, 2, 2, 5111, 5100, 3, 2, 2, 2, 5112, 5130, 3, 2, 2, 2, 5113, 5114, 7, 2065, 2, 2, 5114, 5124, 7, 633, 2, 2, 5115, 5119, 5, 612, 307, 2, 5116, 5117, 7, 1911, 2, 2, 5117, 5119, 5, 1490, 746, 2, 5118, 5115, 3, 2, 2, 2, 5118, 5116, 3, 2, 2, 2, 5119, 5120, 3, 2, 2, 2, 5120, 5118, 3, 2, 2, 2, 5120, 5121, 3, 2, 2, 2, 5121, 5123, 3, 2, 2, 2, 5122, 5118, 3, 2, 2, 2, 5123, 5126, 3, 2, 2, 2, 5124, 5122, 3, 2, 2, 2, 5124, 5125, 3, 2, 2, 2, 5125, 5131, 3, 2, 2, 2, 5126, 5124, 3, 2, 2, 2, 5127, 5128, 7, 2065, 2, 2, 5128, 5129, 7, 1012, 2, 2, 5129, 5131, 7, 633, 2, 2, 5130, 5113, 3, 2, 2, 2, 5130, 5127, 3, 2, 2, 2, 5130, 5131, 3, 2, 2, 2, 5131, 5133, 3, 2, 2, 2, 5132, 5134, 5, 512, 257, 2, 5133, 5132, 3, 2, 2, 2, 5133, 5134, 3, 2, 2, 2, 5134, 5137, 3, 2, 2, 2, 5135, 5136, 7, 548, 2, 2, 5136, 5138, 7, 2027, 2, 2, 5137, 5135, 3, 2, 2, 2, 5137, 5138, 3, 2, 2, 2, 5138, 5142, 3, 2, 2, 2, 5139, 5140, 9, 7, 2, 2, 5140, 5141, 7, 1336, 2, 2, 5141, 5143, 7, 1438, 2, 2, 5142, 5139, 3, 2, 2, 2, 5142, 5143, 3, 2, 2, 2, 5143, 5144, 3, 2, 2, 2, 5144, 5145, 7, 63, 2, 2, 5145, 5146, 5, 1042, 522, 2, 5146, 5147, 7, 2243, 2, 2, 5147, 511, 3, 2, 2, 2, 5148, 5149, 7, 904, 2, 2, 5149, 5188, 7, 1379, 2, 2, 5150, 5183, 7, 1379, 2, 2, 5151, 5184, 9, 55, 2, 2, 5152, 5153, 7, 1130, 2, 2, 5153, 5184, 9, 49, 2, 2, 5154, 5155, 7, 1571, 2, 2, 5155, 5158, 7, 2123, 2, 2, 5156, 5158, 7, 908, 2, 2, 5157, 5154, 3, 2, 2, 2, 5157, 5156, 3, 2, 2, 2, 5158, 5184, 3, 2, 2, 2, 5159, 5163, 7, 2123, 2, 2, 5160, 5161, 7, 1306, 2, 2, 5161, 5164, 7, 724, 2, 2, 5162, 5164, 7, 1448, 2, 2, 5163, 5160, 3, 2, 2, 2, 5163, 5162, 3, 2, 2, 2, 5164, 5184, 3, 2, 2, 2, 5165, 5178, 7, 2065, 2, 2, 5166, 5168, 7, 353, 2, 2, 5167, 5169, 9, 56, 2, 2, 5168, 5167, 3, 2, 2, 2, 5168, 5169, 3, 2, 2, 2, 5169, 5170, 3, 2, 2, 2, 5170, 5171, 7, 1443, 2, 2, 5171, 5179, 7, 1490, 2, 2, 5172, 5174, 9, 56, 2, 2, 5173, 5172, 3, 2, 2, 2, 5173, 5174, 3, 2, 2, 2, 5174, 5175, 3, 2, 2, 2, 5175, 5176, 7, 1443, 2, 2, 5176, 5177, 7, 1490, 2, 2, 5177, 5179, 7, 2254, 2, 2, 5178, 5166, 3, 2, 2, 2, 5178, 5173, 3, 2, 2, 2, 5179, 5184, 3, 2, 2, 2, 5180, 5181, 7, 2065, 2, 2, 5181, 5182, 9, 50, 2, 2, 5182, 5184, 7, 260, 2, 2, 5183, 5151, 3, 2, 2, 2, 5183, 5152, 3, 2, 2, 2, 5183, 5157, 3, 2, 2, 2, 5183, 5159, 3, 2, 2, 2, 5183, 5165, 3, 2, 2, 2, 5183, 5180, 3, 2, 2, 2, 5184, 5185, 3, 2, 2, 2, 5185, 5183, 3, 2, 2, 2, 5185, 5186, 3, 2, 2, 2, 5186, 5188, 3, 2, 2, 2, 5187, 5148, 3, 2, 2, 2, 5187, 5150, 3, 2, 2, 2, 5188, 513, 3, 2, 2, 2, 5189, 5192, 7, 290, 2, 2, 5190, 5191, 7, 1174, 2, 2, 5191, 5193, 7, 1409, 2, 2, 5192, 5190, 3, 2, 2, 2, 5192, 5193, 3, 2, 2, 2, 5193, 5194, 3, 2, 2, 2, 5194, 5195, 7, 267, 2, 2, 5195, 5196, 5, 516, 259, 2, 5196, 5200, 7, 2065, 2, 2, 5197, 5198, 5, 1436, 719, 2, 5198, 5199, 7, 2218, 2, 2, 5199, 5201, 3, 2, 2, 2, 5200, 5197, 3, 2, 2, 2, 5200, 5201, 3, 2, 2, 2, 5201, 5202, 3, 2, 2, 2, 5202, 5207, 5, 1378, 690, 2, 5203, 5204, 7, 657, 2, 2, 5204, 5208, 9, 25, 2, 2, 5205, 5206, 7, 6, 2, 2, 5206, 5208, 7, 569, 2, 2, 5207, 5203, 3, 2, 2, 2, 5207, 5205, 3, 2, 2, 2, 5207, 5208, 3, 2, 2, 2, 5208, 5209, 3, 2, 2, 2, 5209, 5210, 7, 2243, 2, 2, 5210, 515, 3, 2, 2, 2, 5211, 5212, 5, 1490, 746, 2, 5212, 517, 3, 2, 2, 2, 5213, 5214, 7, 290, 2, 2, 5214, 5215, 7, 199, 2, 2, 5215, 5216, 5, 186, 94, 2, 5216, 5217, 7, 2225, 2, 2, 5217, 5218, 5, 1426, 714, 2, 5218, 5220, 5, 1462, 732, 2, 5219, 5221, 7, 1546, 2, 2, 5220, 5219, 3, 2, 2, 2, 5220, 5221, 3, 2, 2, 2, 5221, 5230, 3, 2, 2, 2, 5222, 5223, 7, 2231, 2, 2, 5223, 5224, 5, 1426, 714, 2, 5224, 5226, 5, 1462, 732, 2, 5225, 5227, 7, 1546, 2, 2, 5226, 5225, 3, 2, 2, 2, 5226, 5227, 3, 2, 2, 2, 5227, 5229, 3, 2, 2, 2, 5228, 5222, 3, 2, 2, 2, 5229, 5232, 3, 2, 2, 2, 5230, 5228, 3, 2, 2, 2, 5230, 5231, 3, 2, 2, 2, 5231, 5233, 3, 2, 2, 2, 5232, 5230, 3, 2, 2, 2, 5233, 5253, 7, 2226, 2, 2, 5234, 5252, 5, 612, 307, 2, 5235, 5236, 7, 1537, 2, 2, 5236, 5252, 5, 608, 305, 2, 5237, 5238, 7, 1911, 2, 2, 5238, 5252, 5, 838, 420, 2, 5239, 5252, 7, 633, 2, 2, 5240, 5241, 7, 1533, 2, 2, 5241, 5243, 7, 1914, 2, 2, 5242, 5240, 3, 2, 2, 2, 5242, 5243, 3, 2, 2, 2, 5243, 5244, 3, 2, 2, 2, 5244, 5245, 7, 585, 2, 2, 5245, 5249, 7, 2219, 2, 2, 5246, 5247, 7, 584, 2, 2, 5247, 5248, 7, 697, 2, 2, 5248, 5250, 5, 1236, 619, 2, 5249, 5246, 3, 2, 2, 2, 5249, 5250, 3, 2, 2, 2, 5250, 5252, 3, 2, 2, 2, 5251, 5234, 3, 2, 2, 2, 5251, 5235, 3, 2, 2, 2, 5251, 5237, 3, 2, 2, 2, 5251, 5239, 3, 2, 2, 2, 5251, 5242, 3, 2, 2, 2, 5252, 5255, 3, 2, 2, 2, 5253, 5251, 3, 2, 2, 2, 5253, 5254, 3, 2, 2, 2, 5254, 5257, 3, 2, 2, 2, 5255, 5253, 3, 2, 2, 2, 5256, 5258, 5, 476, 239, 2, 5257, 5256, 3, 2, 2, 2, 5257, 5258, 3, 2, 2, 2, 5258, 5260, 3, 2, 2, 2, 5259, 5261, 9, 57, 2, 2, 5260, 5259, 3, 2, 2, 2, 5260, 5261, 3, 2, 2, 2, 5261, 5263, 3, 2, 2, 2, 5262, 5264, 9, 53, 2, 2, 5263, 5262, 3, 2, 2, 2, 5263, 5264, 3, 2, 2, 2, 5264, 5265, 3, 2, 2, 2, 5265, 5266, 7, 2243, 2, 2, 5266, 519, 3, 2, 2, 2, 5267, 5270, 7, 290, 2, 2, 5268, 5269, 7, 568, 2, 2, 5269, 5271, 7, 1922, 2, 2, 5270, 5268, 3, 2, 2, 2, 5270, 5271, 3, 2, 2, 2, 5271, 5272, 3, 2, 2, 2, 5272, 5273, 7, 1914, 2, 2, 5273, 5277, 5, 1428, 715, 2, 5274, 5278, 5, 542, 272, 2, 5275, 5278, 5, 532, 267, 2, 5276, 5278, 5, 522, 262, 2, 5277, 5274, 3, 2, 2, 2, 5277, 5275, 3, 2, 2, 2, 5277, 5276, 3, 2, 2, 2, 5278, 5281, 3, 2, 2, 2, 5279, 5280, 7, 63, 2, 2, 5280, 5282, 5, 1042, 522, 2, 5281, 5279, 3, 2, 2, 2, 5281, 5282, 3, 2, 2, 2, 5282, 5283, 3, 2, 2, 2, 5283, 5284, 7, 2243, 2, 2, 5284, 521, 3, 2, 2, 2, 5285, 5286, 7, 1117, 2, 2, 5286, 5291, 7, 2164, 2, 2, 5287, 5288, 7, 2225, 2, 2, 5288, 5289, 5, 538, 270, 2, 5289, 5290, 7, 2226, 2, 2, 5290, 5292, 3, 2, 2, 2, 5291, 5287, 3, 2, 2, 2, 5291, 5292, 3, 2, 2, 2, 5292, 5295, 3, 2, 2, 2, 5293, 5294, 7, 2164, 2, 2, 5294, 5296, 5, 528, 265, 2, 5295, 5293, 3, 2, 2, 2, 5295, 5296, 3, 2, 2, 2, 5296, 5298, 3, 2, 2, 2, 5297, 5299, 5, 530, 266, 2, 5298, 5297, 3, 2, 2, 2, 5298, 5299, 3, 2, 2, 2, 5299, 5301, 3, 2, 2, 2, 5300, 5302, 5, 524, 263, 2, 5301, 5300, 3, 2, 2, 2, 5301, 5302, 3, 2, 2, 2, 5302, 5307, 3, 2, 2, 2, 5303, 5304, 7, 1130, 2, 2, 5304, 5305, 7, 220, 2, 2, 5305, 5306, 9, 58, 2, 2, 5306, 5308, 7, 1454, 2, 2, 5307, 5303, 3, 2, 2, 2, 5307, 5308, 3, 2, 2, 2, 5308, 5310, 3, 2, 2, 2, 5309, 5311, 5, 536, 269, 2, 5310, 5309, 3, 2, 2, 2, 5310, 5311, 3, 2, 2, 2, 5311, 5313, 3, 2, 2, 2, 5312, 5314, 5, 534, 268, 2, 5313, 5312, 3, 2, 2, 2, 5313, 5314, 3, 2, 2, 2, 5314, 5316, 3, 2, 2, 2, 5315, 5317, 5, 620, 311, 2, 5316, 5315, 3, 2, 2, 2, 5316, 5317, 3, 2, 2, 2, 5317, 5319, 3, 2, 2, 2, 5318, 5320, 5, 842, 422, 2, 5319, 5318, 3, 2, 2, 2, 5319, 5320, 3, 2, 2, 2, 5320, 5322, 3, 2, 2, 2, 5321, 5323, 5, 546, 274, 2, 5322, 5321, 3, 2, 2, 2, 5322, 5323, 3, 2, 2, 2, 5323, 5325, 3, 2, 2, 2, 5324, 5326, 9, 53, 2, 2, 5325, 5324, 3, 2, 2, 2, 5325, 5326, 3, 2, 2, 2, 5326, 5332, 3, 2, 2, 2, 5327, 5328, 7, 1426, 2, 2, 5328, 5329, 7, 2225, 2, 2, 5329, 5330, 7, 862, 2, 2, 5330, 5331, 9, 59, 2, 2, 5331, 5333, 7, 2226, 2, 2, 5332, 5327, 3, 2, 2, 2, 5332, 5333, 3, 2, 2, 2, 5333, 5335, 3, 2, 2, 2, 5334, 5336, 5, 476, 239, 2, 5335, 5334, 3, 2, 2, 2, 5335, 5336, 3, 2, 2, 2, 5336, 5338, 3, 2, 2, 2, 5337, 5339, 9, 57, 2, 2, 5338, 5337, 3, 2, 2, 2, 5338, 5339, 3, 2, 2, 2, 5339, 5345, 3, 2, 2, 2, 5340, 5342, 5, 766, 384, 2, 5341, 5340, 3, 2, 2, 2, 5342, 5343, 3, 2, 2, 2, 5343, 5341, 3, 2, 2, 2, 5343, 5344, 3, 2, 2, 2, 5344, 5346, 3, 2, 2, 2, 5345, 5341, 3, 2, 2, 2, 5345, 5346, 3, 2, 2, 2, 5346, 5348, 3, 2, 2, 2, 5347, 5349, 5, 622, 312, 2, 5348, 5347, 3, 2, 2, 2, 5348, 5349, 3, 2, 2, 2, 5349, 5351, 3, 2, 2, 2, 5350, 5352, 5, 624, 313, 2, 5351, 5350, 3, 2, 2, 2, 5351, 5352, 3, 2, 2, 2, 5352, 523, 3, 2, 2, 2, 5353, 5354, 7, 2103, 2, 2, 5354, 5355, 7, 216, 2, 2, 5355, 5356, 7, 2225, 2, 2, 5356, 5357, 5, 1426, 714, 2, 5357, 5358, 7, 63, 2, 2, 5358, 5359, 7, 2225, 2, 2, 5359, 5360, 5, 1236, 619, 2, 5360, 5370, 7, 2226, 2, 2, 5361, 5362, 7, 2231, 2, 2, 5362, 5363, 5, 1426, 714, 2, 5363, 5364, 7, 63, 2, 2, 5364, 5365, 7, 2225, 2, 2, 5365, 5366, 5, 1236, 619, 2, 5366, 5367, 7, 2226, 2, 2, 5367, 5369, 3, 2, 2, 2, 5368, 5361, 3, 2, 2, 2, 5369, 5372, 3, 2, 2, 2, 5370, 5368, 3, 2, 2, 2, 5370, 5371, 3, 2, 2, 2, 5371, 5373, 3, 2, 2, 2, 5372, 5370, 3, 2, 2, 2, 5373, 5374, 7, 2226, 2, 2, 5374, 525, 3, 2, 2, 2, 5375, 5377, 7, 2164, 2, 2, 5376, 5378, 7, 215, 2, 2, 5377, 5376, 3, 2, 2, 2, 5377, 5378, 3, 2, 2, 2, 5378, 5379, 3, 2, 2, 2, 5379, 5381, 5, 1426, 714, 2, 5380, 5382, 5, 528, 265, 2, 5381, 5380, 3, 2, 2, 2, 5381, 5382, 3, 2, 2, 2, 5382, 5384, 3, 2, 2, 2, 5383, 5385, 5, 530, 266, 2, 5384, 5383, 3, 2, 2, 2, 5384, 5385, 3, 2, 2, 2, 5385, 527, 3, 2, 2, 2, 5386, 5387, 7, 1596, 2, 2, 5387, 5411, 7, 63, 2, 2, 5388, 5389, 7, 1109, 2, 2, 5389, 5412, 7, 1399, 2, 2, 5390, 5392, 9, 60, 2, 2, 5391, 5390, 3, 2, 2, 2, 5391, 5392, 3, 2, 2, 2, 5392, 5396, 3, 2, 2, 2, 5393, 5397, 7, 194, 2, 2, 5394, 5395, 7, 113, 2, 2, 5395, 5397, 7, 2165, 2, 2, 5396, 5393, 3, 2, 2, 2, 5396, 5394, 3, 2, 2, 2, 5397, 5409, 3, 2, 2, 2, 5398, 5403, 5, 816, 409, 2, 5399, 5400, 7, 2225, 2, 2, 5400, 5401, 5, 828, 415, 2, 5401, 5402, 7, 2226, 2, 2, 5402, 5404, 3, 2, 2, 2, 5403, 5399, 3, 2, 2, 2, 5403, 5404, 3, 2, 2, 2, 5404, 5410, 3, 2, 2, 2, 5405, 5406, 7, 2225, 2, 2, 5406, 5407, 5, 828, 415, 2, 5407, 5408, 7, 2226, 2, 2, 5408, 5410, 3, 2, 2, 2, 5409, 5398, 3, 2, 2, 2, 5409, 5405, 3, 2, 2, 2, 5409, 5410, 3, 2, 2, 2, 5410, 5412, 3, 2, 2, 2, 5411, 5388, 3, 2, 2, 2, 5411, 5391, 3, 2, 2, 2, 5412, 5418, 3, 2, 2, 2, 5413, 5414, 7, 1596, 2, 2, 5414, 5415, 7, 2081, 2, 2, 5415, 5416, 7, 63, 2, 2, 5416, 5418, 9, 61, 2, 2, 5417, 5386, 3, 2, 2, 2, 5417, 5413, 3, 2, 2, 2, 5418, 529, 3, 2, 2, 2, 5419, 5420, 7, 2159, 2, 2, 5420, 5422, 7, 2222, 2, 2, 5421, 5419, 3, 2, 2, 2, 5421, 5422, 3, 2, 2, 2, 5422, 5423, 3, 2, 2, 2, 5423, 5424, 7, 429, 2, 2, 5424, 5428, 7, 2222, 2, 2, 5425, 5426, 5, 652, 327, 2, 5426, 5427, 7, 1013, 2, 2, 5427, 5429, 3, 2, 2, 2, 5428, 5425, 3, 2, 2, 2, 5428, 5429, 3, 2, 2, 2, 5429, 5433, 3, 2, 2, 2, 5430, 5431, 5, 652, 327, 2, 5431, 5432, 7, 51, 2, 2, 5432, 5434, 3, 2, 2, 2, 5433, 5430, 3, 2, 2, 2, 5433, 5434, 3, 2, 2, 2, 5434, 531, 3, 2, 2, 2, 5435, 5436, 7, 1117, 2, 2, 5436, 5438, 5, 1402, 702, 2, 5437, 5439, 5, 540, 271, 2, 5438, 5437, 3, 2, 2, 2, 5438, 5439, 3, 2, 2, 2, 5439, 5451, 3, 2, 2, 2, 5440, 5441, 7, 2225, 2, 2, 5441, 5446, 5, 538, 270, 2, 5442, 5443, 7, 2231, 2, 2, 5443, 5445, 5, 538, 270, 2, 5444, 5442, 3, 2, 2, 2, 5445, 5448, 3, 2, 2, 2, 5446, 5444, 3, 2, 2, 2, 5446, 5447, 3, 2, 2, 2, 5447, 5449, 3, 2, 2, 2, 5448, 5446, 3, 2, 2, 2, 5449, 5450, 7, 2226, 2, 2, 5450, 5452, 3, 2, 2, 2, 5451, 5440, 3, 2, 2, 2, 5451, 5452, 3, 2, 2, 2, 5452, 5457, 3, 2, 2, 2, 5453, 5454, 7, 1130, 2, 2, 5454, 5455, 7, 220, 2, 2, 5455, 5456, 9, 58, 2, 2, 5456, 5458, 7, 1454, 2, 2, 5457, 5453, 3, 2, 2, 2, 5457, 5458, 3, 2, 2, 2, 5458, 5460, 3, 2, 2, 2, 5459, 5461, 5, 536, 269, 2, 5460, 5459, 3, 2, 2, 2, 5460, 5461, 3, 2, 2, 2, 5461, 5463, 3, 2, 2, 2, 5462, 5464, 5, 534, 268, 2, 5463, 5462, 3, 2, 2, 2, 5463, 5464, 3, 2, 2, 2, 5464, 5466, 3, 2, 2, 2, 5465, 5467, 5, 620, 311, 2, 5466, 5465, 3, 2, 2, 2, 5466, 5467, 3, 2, 2, 2, 5467, 5469, 3, 2, 2, 2, 5468, 5470, 5, 842, 422, 2, 5469, 5468, 3, 2, 2, 2, 5469, 5470, 3, 2, 2, 2, 5470, 5472, 3, 2, 2, 2, 5471, 5473, 5, 546, 274, 2, 5472, 5471, 3, 2, 2, 2, 5472, 5473, 3, 2, 2, 2, 5473, 5475, 3, 2, 2, 2, 5474, 5476, 9, 53, 2, 2, 5475, 5474, 3, 2, 2, 2, 5475, 5476, 3, 2, 2, 2, 5476, 5482, 3, 2, 2, 2, 5477, 5478, 7, 1426, 2, 2, 5478, 5479, 7, 2225, 2, 2, 5479, 5480, 7, 862, 2, 2, 5480, 5481, 9, 59, 2, 2, 5481, 5483, 7, 2226, 2, 2, 5482, 5477, 3, 2, 2, 2, 5482, 5483, 3, 2, 2, 2, 5483, 5485, 3, 2, 2, 2, 5484, 5486, 5, 476, 239, 2, 5485, 5484, 3, 2, 2, 2, 5485, 5486, 3, 2, 2, 2, 5486, 5488, 3, 2, 2, 2, 5487, 5489, 9, 57, 2, 2, 5488, 5487, 3, 2, 2, 2, 5488, 5489, 3, 2, 2, 2, 5489, 5495, 3, 2, 2, 2, 5490, 5492, 5, 766, 384, 2, 5491, 5490, 3, 2, 2, 2, 5492, 5493, 3, 2, 2, 2, 5493, 5491, 3, 2, 2, 2, 5493, 5494, 3, 2, 2, 2, 5494, 5496, 3, 2, 2, 2, 5495, 5491, 3, 2, 2, 2, 5495, 5496, 3, 2, 2, 2, 5496, 5498, 3, 2, 2, 2, 5497, 5499, 5, 622, 312, 2, 5498, 5497, 3, 2, 2, 2, 5498, 5499, 3, 2, 2, 2, 5499, 5501, 3, 2, 2, 2, 5500, 5502, 5, 624, 313, 2, 5501, 5500, 3, 2, 2, 2, 5501, 5502, 3, 2, 2, 2, 5502, 533, 3, 2, 2, 2, 5503, 5505, 7, 1118, 2, 2, 5504, 5506, 5, 1416, 709, 2, 5505, 5504, 3, 2, 2, 2, 5505, 5506, 3, 2, 2, 2, 5506, 5507, 3, 2, 2, 2, 5507, 5511, 7, 2225, 2, 2, 5508, 5512, 5, 612, 307, 2, 5509, 5510, 7, 1911, 2, 2, 5510, 5512, 5, 838, 420, 2, 5511, 5508, 3, 2, 2, 2, 5511, 5509, 3, 2, 2, 2, 5512, 5513, 3, 2, 2, 2, 5513, 5511, 3, 2, 2, 2, 5513, 5514, 3, 2, 2, 2, 5514, 5515, 3, 2, 2, 2, 5515, 5516, 7, 2226, 2, 2, 5516, 535, 3, 2, 2, 2, 5517, 5518, 7, 1109, 2, 2, 5518, 5519, 7, 604, 2, 2, 5519, 5524, 7, 697, 2, 2, 5520, 5521, 7, 1781, 2, 2, 5521, 5525, 7, 566, 2, 2, 5522, 5523, 7, 1306, 2, 2, 5523, 5525, 7, 724, 2, 2, 5524, 5520, 3, 2, 2, 2, 5524, 5522, 3, 2, 2, 2, 5525, 537, 3, 2, 2, 2, 5526, 5529, 5, 1426, 714, 2, 5527, 5529, 5, 1366, 684, 2, 5528, 5526, 3, 2, 2, 2, 5528, 5527, 3, 2, 2, 2, 5529, 5532, 3, 2, 2, 2, 5530, 5531, 7, 353, 2, 2, 5531, 5533, 5, 1236, 619, 2, 5532, 5530, 3, 2, 2, 2, 5532, 5533, 3, 2, 2, 2, 5533, 5543, 3, 2, 2, 2, 5534, 5539, 5, 418, 210, 2, 5535, 5536, 7, 2231, 2, 2, 5536, 5538, 5, 418, 210, 2, 5537, 5535, 3, 2, 2, 2, 5538, 5541, 3, 2, 2, 2, 5539, 5537, 3, 2, 2, 2, 5539, 5540, 3, 2, 2, 2, 5540, 5544, 3, 2, 2, 2, 5541, 5539, 3, 2, 2, 2, 5542, 5544, 5, 420, 211, 2, 5543, 5534, 3, 2, 2, 2, 5543, 5542, 3, 2, 2, 2, 5543, 5544, 3, 2, 2, 2, 5544, 5549, 3, 2, 2, 2, 5545, 5549, 5, 424, 213, 2, 5546, 5549, 5, 422, 212, 2, 5547, 5549, 5, 866, 434, 2, 5548, 5528, 3, 2, 2, 2, 5548, 5545, 3, 2, 2, 2, 5548, 5546, 3, 2, 2, 2, 5548, 5547, 3, 2, 2, 2, 5549, 539, 3, 2, 2, 2, 5550, 5552, 7, 1075, 2, 2, 5551, 5550, 3, 2, 2, 2, 5551, 5552, 3, 2, 2, 2, 5552, 5553, 3, 2, 2, 2, 5553, 5554, 7, 1613, 2, 2, 5554, 5555, 7, 76, 2, 2, 5555, 5556, 7, 37, 2, 2, 5556, 5557, 7, 750, 2, 2, 5557, 541, 3, 2, 2, 2, 5558, 5559, 7, 2225, 2, 2, 5559, 5564, 5, 544, 273, 2, 5560, 5561, 7, 2231, 2, 2, 5561, 5563, 5, 544, 273, 2, 5562, 5560, 3, 2, 2, 2, 5563, 5566, 3, 2, 2, 2, 5564, 5562, 3, 2, 2, 2, 5564, 5565, 3, 2, 2, 2, 5565, 5567, 3, 2, 2, 2, 5566, 5564, 3, 2, 2, 2, 5567, 5568, 7, 2226, 2, 2, 5568, 5570, 3, 2, 2, 2, 5569, 5558, 3, 2, 2, 2, 5569, 5570, 3, 2, 2, 2, 5570, 5575, 3, 2, 2, 2, 5571, 5572, 7, 1130, 2, 2, 5572, 5573, 7, 220, 2, 2, 5573, 5574, 9, 58, 2, 2, 5574, 5576, 7, 1454, 2, 2, 5575, 5571, 3, 2, 2, 2, 5575, 5576, 3, 2, 2, 2, 5576, 5578, 3, 2, 2, 2, 5577, 5579, 5, 620, 311, 2, 5578, 5577, 3, 2, 2, 2, 5578, 5579, 3, 2, 2, 2, 5579, 5581, 3, 2, 2, 2, 5580, 5582, 5, 842, 422, 2, 5581, 5580, 3, 2, 2, 2, 5581, 5582, 3, 2, 2, 2, 5582, 5584, 3, 2, 2, 2, 5583, 5585, 5, 546, 274, 2, 5584, 5583, 3, 2, 2, 2, 5584, 5585, 3, 2, 2, 2, 5585, 5587, 3, 2, 2, 2, 5586, 5588, 9, 53, 2, 2, 5587, 5586, 3, 2, 2, 2, 5587, 5588, 3, 2, 2, 2, 5588, 5594, 3, 2, 2, 2, 5589, 5590, 7, 1426, 2, 2, 5590, 5591, 7, 2225, 2, 2, 5591, 5592, 7, 862, 2, 2, 5592, 5593, 9, 59, 2, 2, 5593, 5595, 7, 2226, 2, 2, 5594, 5589, 3, 2, 2, 2, 5594, 5595, 3, 2, 2, 2, 5595, 5597, 3, 2, 2, 2, 5596, 5598, 5, 476, 239, 2, 5597, 5596, 3, 2, 2, 2, 5597, 5598, 3, 2, 2, 2, 5598, 5600, 3, 2, 2, 2, 5599, 5601, 9, 57, 2, 2, 5600, 5599, 3, 2, 2, 2, 5600, 5601, 3, 2, 2, 2, 5601, 5607, 3, 2, 2, 2, 5602, 5604, 5, 766, 384, 2, 5603, 5602, 3, 2, 2, 2, 5604, 5605, 3, 2, 2, 2, 5605, 5603, 3, 2, 2, 2, 5605, 5606, 3, 2, 2, 2, 5606, 5608, 3, 2, 2, 2, 5607, 5603, 3, 2, 2, 2, 5607, 5608, 3, 2, 2, 2, 5608, 5610, 3, 2, 2, 2, 5609, 5611, 5, 622, 312, 2, 5610, 5609, 3, 2, 2, 2, 5610, 5611, 3, 2, 2, 2, 5611, 5613, 3, 2, 2, 2, 5612, 5614, 5, 624, 313, 2, 5613, 5612, 3, 2, 2, 2, 5613, 5614, 3, 2, 2, 2, 5614, 543, 3, 2, 2, 2, 5615, 5621, 5, 850, 426, 2, 5616, 5621, 5, 852, 427, 2, 5617, 5621, 5, 424, 213, 2, 5618, 5621, 5, 422, 212, 2, 5619, 5621, 5, 866, 434, 2, 5620, 5615, 3, 2, 2, 2, 5620, 5616, 3, 2, 2, 2, 5620, 5617, 3, 2, 2, 2, 5620, 5618, 3, 2, 2, 2, 5620, 5619, 3, 2, 2, 2, 5621, 545, 3, 2, 2, 2, 5622, 5631, 5, 548, 275, 2, 5623, 5631, 5, 550, 276, 2, 5624, 5631, 5, 552, 277, 2, 5625, 5631, 5, 560, 281, 2, 5626, 5631, 5, 562, 282, 2, 5627, 5631, 5, 564, 283, 2, 5628, 5631, 5, 566, 284, 2, 5629, 5631, 5, 570, 286, 2, 5630, 5622, 3, 2, 2, 2, 5630, 5623, 3, 2, 2, 2, 5630, 5624, 3, 2, 2, 2, 5630, 5625, 3, 2, 2, 2, 5630, 5626, 3, 2, 2, 2, 5630, 5627, 3, 2, 2, 2, 5630, 5628, 3, 2, 2, 2, 5630, 5629, 3, 2, 2, 2, 5631, 547, 3, 2, 2, 2, 5632, 5633, 7, 1209, 2, 2, 5633, 5634, 7, 148, 2, 2, 5634, 5635, 7, 1346, 2, 2, 5635, 5636, 7, 2225, 2, 2, 5636, 5641, 5, 1426, 714, 2, 5637, 5638, 7, 2231, 2, 2, 5638, 5640, 5, 1426, 714, 2, 5639, 5637, 3, 2, 2, 2, 5640, 5643, 3, 2, 2, 2, 5641, 5639, 3, 2, 2, 2, 5641, 5642, 3, 2, 2, 2, 5642, 5644, 3, 2, 2, 2, 5643, 5641, 3, 2, 2, 2, 5644, 5664, 7, 2226, 2, 2, 5645, 5646, 7, 691, 2, 2, 5646, 5647, 7, 2225, 2, 2, 5647, 5648, 5, 1236, 619, 2, 5648, 5662, 7, 2226, 2, 2, 5649, 5650, 7, 1596, 2, 2, 5650, 5651, 7, 654, 2, 2, 5651, 5652, 7, 2225, 2, 2, 5652, 5657, 5, 838, 420, 2, 5653, 5654, 7, 2231, 2, 2, 5654, 5656, 5, 838, 420, 2, 5655, 5653, 3, 2, 2, 2, 5656, 5659, 3, 2, 2, 2, 5657, 5655, 3, 2, 2, 2, 5657, 5658, 3, 2, 2, 2, 5658, 5660, 3, 2, 2, 2, 5659, 5657, 3, 2, 2, 2, 5660, 5661, 7, 2226, 2, 2, 5661, 5663, 3, 2, 2, 2, 5662, 5649, 3, 2, 2, 2, 5662, 5663, 3, 2, 2, 2, 5663, 5665, 3, 2, 2, 2, 5664, 5645, 3, 2, 2, 2, 5664, 5665, 3, 2, 2, 2, 5665, 5666, 3, 2, 2, 2, 5666, 5667, 7, 2225, 2, 2, 5667, 5669, 7, 1209, 2, 2, 5668, 5670, 5, 864, 433, 2, 5669, 5668, 3, 2, 2, 2, 5669, 5670, 3, 2, 2, 2, 5670, 5671, 3, 2, 2, 2, 5671, 5672, 5, 596, 299, 2, 5672, 5683, 5, 600, 301, 2, 5673, 5674, 7, 2231, 2, 2, 5674, 5676, 7, 1209, 2, 2, 5675, 5677, 5, 864, 433, 2, 5676, 5675, 3, 2, 2, 2, 5676, 5677, 3, 2, 2, 2, 5677, 5678, 3, 2, 2, 2, 5678, 5679, 5, 596, 299, 2, 5679, 5680, 5, 600, 301, 2, 5680, 5682, 3, 2, 2, 2, 5681, 5673, 3, 2, 2, 2, 5682, 5685, 3, 2, 2, 2, 5683, 5681, 3, 2, 2, 2, 5683, 5684, 3, 2, 2, 2, 5684, 5686, 3, 2, 2, 2, 5685, 5683, 3, 2, 2, 2, 5686, 5687, 7, 2226, 2, 2, 5687, 549, 3, 2, 2, 2, 5688, 5689, 7, 1209, 2, 2, 5689, 5690, 7, 148, 2, 2, 5690, 5691, 7, 763, 2, 2, 5691, 5692, 7, 2225, 2, 2, 5692, 5693, 5, 1426, 714, 2, 5693, 5694, 7, 2226, 2, 2, 5694, 5695, 7, 2225, 2, 2, 5695, 5697, 7, 1209, 2, 2, 5696, 5698, 5, 864, 433, 2, 5697, 5696, 3, 2, 2, 2, 5697, 5698, 3, 2, 2, 2, 5698, 5699, 3, 2, 2, 2, 5699, 5700, 5, 598, 300, 2, 5700, 5711, 5, 600, 301, 2, 5701, 5702, 7, 2231, 2, 2, 5702, 5704, 7, 1209, 2, 2, 5703, 5705, 5, 864, 433, 2, 5704, 5703, 3, 2, 2, 2, 5704, 5705, 3, 2, 2, 2, 5705, 5706, 3, 2, 2, 2, 5706, 5707, 5, 598, 300, 2, 5707, 5708, 5, 600, 301, 2, 5708, 5710, 3, 2, 2, 2, 5709, 5701, 3, 2, 2, 2, 5710, 5713, 3, 2, 2, 2, 5711, 5709, 3, 2, 2, 2, 5711, 5712, 3, 2, 2, 2, 5712, 5714, 3, 2, 2, 2, 5713, 5711, 3, 2, 2, 2, 5714, 5715, 7, 2226, 2, 2, 5715, 551, 3, 2, 2, 2, 5716, 5717, 7, 1209, 2, 2, 5717, 5718, 7, 148, 2, 2, 5718, 5719, 7, 584, 2, 2, 5719, 5720, 7, 2225, 2, 2, 5720, 5725, 5, 1426, 714, 2, 5721, 5722, 7, 2231, 2, 2, 5722, 5724, 5, 1426, 714, 2, 5723, 5721, 3, 2, 2, 2, 5724, 5727, 3, 2, 2, 2, 5725, 5723, 3, 2, 2, 2, 5725, 5726, 3, 2, 2, 2, 5726, 5728, 3, 2, 2, 2, 5727, 5725, 3, 2, 2, 2, 5728, 5731, 7, 2226, 2, 2, 5729, 5732, 5, 554, 278, 2, 5730, 5732, 5, 556, 279, 2, 5731, 5729, 3, 2, 2, 2, 5731, 5730, 3, 2, 2, 2, 5732, 553, 3, 2, 2, 2, 5733, 5734, 7, 2225, 2, 2, 5734, 5736, 7, 1209, 2, 2, 5735, 5737, 5, 864, 433, 2, 5736, 5735, 3, 2, 2, 2, 5736, 5737, 3, 2, 2, 2, 5737, 5739, 3, 2, 2, 2, 5738, 5740, 5, 602, 302, 2, 5739, 5738, 3, 2, 2, 2, 5739, 5740, 3, 2, 2, 2, 5740, 5751, 3, 2, 2, 2, 5741, 5742, 7, 2231, 2, 2, 5742, 5744, 7, 1209, 2, 2, 5743, 5745, 5, 864, 433, 2, 5744, 5743, 3, 2, 2, 2, 5744, 5745, 3, 2, 2, 2, 5745, 5747, 3, 2, 2, 2, 5746, 5748, 5, 602, 302, 2, 5747, 5746, 3, 2, 2, 2, 5747, 5748, 3, 2, 2, 2, 5748, 5750, 3, 2, 2, 2, 5749, 5741, 3, 2, 2, 2, 5750, 5753, 3, 2, 2, 2, 5751, 5749, 3, 2, 2, 2, 5751, 5752, 3, 2, 2, 2, 5752, 5754, 3, 2, 2, 2, 5753, 5751, 3, 2, 2, 2, 5754, 5755, 7, 2226, 2, 2, 5755, 555, 3, 2, 2, 2, 5756, 5757, 7, 1211, 2, 2, 5757, 5771, 5, 558, 280, 2, 5758, 5759, 7, 1596, 2, 2, 5759, 5760, 7, 654, 2, 2, 5760, 5761, 7, 2225, 2, 2, 5761, 5766, 5, 838, 420, 2, 5762, 5763, 7, 2231, 2, 2, 5763, 5765, 5, 838, 420, 2, 5764, 5762, 3, 2, 2, 2, 5765, 5768, 3, 2, 2, 2, 5766, 5764, 3, 2, 2, 2, 5766, 5767, 3, 2, 2, 2, 5767, 5769, 3, 2, 2, 2, 5768, 5766, 3, 2, 2, 2, 5769, 5770, 7, 2226, 2, 2, 5770, 5772, 3, 2, 2, 2, 5771, 5758, 3, 2, 2, 2, 5771, 5772, 3, 2, 2, 2, 5772, 5775, 3, 2, 2, 2, 5773, 5776, 5, 610, 306, 2, 5774, 5776, 5, 782, 392, 2, 5775, 5773, 3, 2, 2, 2, 5775, 5774, 3, 2, 2, 2, 5775, 5776, 3, 2, 2, 2, 5776, 5791, 3, 2, 2, 2, 5777, 5778, 7, 1186, 2, 2, 5778, 5779, 7, 1596, 2, 2, 5779, 5780, 7, 654, 2, 2, 5780, 5781, 7, 2225, 2, 2, 5781, 5786, 5, 838, 420, 2, 5782, 5783, 7, 2231, 2, 2, 5783, 5785, 5, 838, 420, 2, 5784, 5782, 3, 2, 2, 2, 5785, 5788, 3, 2, 2, 2, 5786, 5784, 3, 2, 2, 2, 5786, 5787, 3, 2, 2, 2, 5787, 5789, 3, 2, 2, 2, 5788, 5786, 3, 2, 2, 2, 5789, 5790, 7, 2226, 2, 2, 5790, 5792, 3, 2, 2, 2, 5791, 5777, 3, 2, 2, 2, 5791, 5792, 3, 2, 2, 2, 5792, 557, 3, 2, 2, 2, 5793, 5794, 7, 2219, 2, 2, 5794, 559, 3, 2, 2, 2, 5795, 5796, 7, 1209, 2, 2, 5796, 5797, 7, 148, 2, 2, 5797, 5798, 7, 1346, 2, 2, 5798, 5799, 7, 2225, 2, 2, 5799, 5804, 5, 1426, 714, 2, 5800, 5801, 7, 2231, 2, 2, 5801, 5803, 5, 1426, 714, 2, 5802, 5800, 3, 2, 2, 2, 5803, 5806, 3, 2, 2, 2, 5804, 5802, 3, 2, 2, 2, 5804, 5805, 3, 2, 2, 2, 5805, 5807, 3, 2, 2, 2, 5806, 5804, 3, 2, 2, 2, 5807, 5827, 7, 2226, 2, 2, 5808, 5809, 7, 691, 2, 2, 5809, 5810, 7, 2225, 2, 2, 5810, 5811, 5, 1236, 619, 2, 5811, 5825, 7, 2226, 2, 2, 5812, 5813, 7, 1596, 2, 2, 5813, 5814, 7, 654, 2, 2, 5814, 5815, 7, 2225, 2, 2, 5815, 5820, 5, 838, 420, 2, 5816, 5817, 7, 2231, 2, 2, 5817, 5819, 5, 838, 420, 2, 5818, 5816, 3, 2, 2, 2, 5819, 5822, 3, 2, 2, 2, 5820, 5818, 3, 2, 2, 2, 5820, 5821, 3, 2, 2, 2, 5821, 5823, 3, 2, 2, 2, 5822, 5820, 3, 2, 2, 2, 5823, 5824, 7, 2226, 2, 2, 5824, 5826, 3, 2, 2, 2, 5825, 5812, 3, 2, 2, 2, 5825, 5826, 3, 2, 2, 2, 5826, 5828, 3, 2, 2, 2, 5827, 5808, 3, 2, 2, 2, 5827, 5828, 3, 2, 2, 2, 5828, 5832, 3, 2, 2, 2, 5829, 5833, 5, 580, 291, 2, 5830, 5833, 5, 582, 292, 2, 5831, 5833, 5, 584, 293, 2, 5832, 5829, 3, 2, 2, 2, 5832, 5830, 3, 2, 2, 2, 5832, 5831, 3, 2, 2, 2, 5833, 5834, 3, 2, 2, 2, 5834, 5835, 7, 2225, 2, 2, 5835, 5840, 5, 572, 287, 2, 5836, 5837, 7, 2231, 2, 2, 5837, 5839, 5, 572, 287, 2, 5838, 5836, 3, 2, 2, 2, 5839, 5842, 3, 2, 2, 2, 5840, 5838, 3, 2, 2, 2, 5840, 5841, 3, 2, 2, 2, 5841, 5843, 3, 2, 2, 2, 5842, 5840, 3, 2, 2, 2, 5843, 5844, 7, 2226, 2, 2, 5844, 561, 3, 2, 2, 2, 5845, 5846, 7, 1209, 2, 2, 5846, 5847, 7, 148, 2, 2, 5847, 5848, 7, 763, 2, 2, 5848, 5849, 7, 2225, 2, 2, 5849, 5850, 5, 1426, 714, 2, 5850, 5854, 7, 2226, 2, 2, 5851, 5855, 5, 580, 291, 2, 5852, 5855, 5, 582, 292, 2, 5853, 5855, 5, 584, 293, 2, 5854, 5851, 3, 2, 2, 2, 5854, 5852, 3, 2, 2, 2, 5854, 5853, 3, 2, 2, 2, 5855, 5856, 3, 2, 2, 2, 5856, 5857, 7, 2225, 2, 2, 5857, 5862, 5, 574, 288, 2, 5858, 5859, 7, 2231, 2, 2, 5859, 5861, 5, 574, 288, 2, 5860, 5858, 3, 2, 2, 2, 5861, 5864, 3, 2, 2, 2, 5862, 5860, 3, 2, 2, 2, 5862, 5863, 3, 2, 2, 2, 5863, 5865, 3, 2, 2, 2, 5864, 5862, 3, 2, 2, 2, 5865, 5866, 7, 2226, 2, 2, 5866, 563, 3, 2, 2, 2, 5867, 5868, 7, 1209, 2, 2, 5868, 5869, 7, 148, 2, 2, 5869, 5870, 7, 584, 2, 2, 5870, 5873, 7, 2225, 2, 2, 5871, 5872, 7, 2231, 2, 2, 5872, 5874, 5, 1426, 714, 2, 5873, 5871, 3, 2, 2, 2, 5874, 5875, 3, 2, 2, 2, 5875, 5873, 3, 2, 2, 2, 5875, 5876, 3, 2, 2, 2, 5876, 5877, 3, 2, 2, 2, 5877, 5881, 7, 2226, 2, 2, 5878, 5882, 5, 580, 291, 2, 5879, 5882, 5, 582, 292, 2, 5880, 5882, 5, 584, 293, 2, 5881, 5878, 3, 2, 2, 2, 5881, 5879, 3, 2, 2, 2, 5881, 5880, 3, 2, 2, 2, 5882, 5885, 3, 2, 2, 2, 5883, 5886, 5, 554, 278, 2, 5884, 5886, 5, 556, 279, 2, 5885, 5883, 3, 2, 2, 2, 5885, 5884, 3, 2, 2, 2, 5886, 565, 3, 2, 2, 2, 5887, 5888, 7, 1209, 2, 2, 5888, 5889, 7, 148, 2, 2, 5889, 5890, 7, 1375, 2, 2, 5890, 5891, 7, 2225, 2, 2, 5891, 5892, 5, 1494, 748, 2, 5892, 5904, 7, 2226, 2, 2, 5893, 5894, 7, 2225, 2, 2, 5894, 5899, 5, 568, 285, 2, 5895, 5896, 7, 2231, 2, 2, 5896, 5898, 5, 568, 285, 2, 5897, 5895, 3, 2, 2, 2, 5898, 5901, 3, 2, 2, 2, 5899, 5897, 3, 2, 2, 2, 5899, 5900, 3, 2, 2, 2, 5900, 5902, 3, 2, 2, 2, 5901, 5899, 3, 2, 2, 2, 5902, 5903, 7, 2226, 2, 2, 5903, 5905, 3, 2, 2, 2, 5904, 5893, 3, 2, 2, 2, 5904, 5905, 3, 2, 2, 2, 5905, 567, 3, 2, 2, 2, 5906, 5908, 7, 1209, 2, 2, 5907, 5909, 5, 864, 433, 2, 5908, 5907, 3, 2, 2, 2, 5908, 5909, 3, 2, 2, 2, 5909, 5910, 3, 2, 2, 2, 5910, 5911, 5, 600, 301, 2, 5911, 569, 3, 2, 2, 2, 5912, 5913, 7, 1209, 2, 2, 5913, 5914, 7, 148, 2, 2, 5914, 5925, 7, 1781, 2, 2, 5915, 5916, 7, 1211, 2, 2, 5916, 5926, 7, 2219, 2, 2, 5917, 5922, 5, 568, 285, 2, 5918, 5919, 7, 2231, 2, 2, 5919, 5921, 5, 568, 285, 2, 5920, 5918, 3, 2, 2, 2, 5921, 5924, 3, 2, 2, 2, 5922, 5920, 3, 2, 2, 2, 5922, 5923, 3, 2, 2, 2, 5923, 5926, 3, 2, 2, 2, 5924, 5922, 3, 2, 2, 2, 5925, 5915, 3, 2, 2, 2, 5925, 5917, 3, 2, 2, 2, 5925, 5926, 3, 2, 2, 2, 5926, 571, 3, 2, 2, 2, 5927, 5929, 7, 1209, 2, 2, 5928, 5930, 5, 864, 433, 2, 5929, 5928, 3, 2, 2, 2, 5929, 5930, 3, 2, 2, 2, 5930, 5931, 3, 2, 2, 2, 5931, 5932, 5, 596, 299, 2, 5932, 5965, 5, 600, 301, 2, 5933, 5958, 7, 2225, 2, 2, 5934, 5939, 5, 588, 295, 2, 5935, 5936, 7, 2231, 2, 2, 5936, 5938, 5, 588, 295, 2, 5937, 5935, 3, 2, 2, 2, 5938, 5941, 3, 2, 2, 2, 5939, 5937, 3, 2, 2, 2, 5939, 5940, 3, 2, 2, 2, 5940, 5959, 3, 2, 2, 2, 5941, 5939, 3, 2, 2, 2, 5942, 5947, 5, 590, 296, 2, 5943, 5944, 7, 2231, 2, 2, 5944, 5946, 5, 590, 296, 2, 5945, 5943, 3, 2, 2, 2, 5946, 5949, 3, 2, 2, 2, 5947, 5945, 3, 2, 2, 2, 5947, 5948, 3, 2, 2, 2, 5948, 5959, 3, 2, 2, 2, 5949, 5947, 3, 2, 2, 2, 5950, 5955, 5, 592, 297, 2, 5951, 5952, 7, 2231, 2, 2, 5952, 5954, 5, 592, 297, 2, 5953, 5951, 3, 2, 2, 2, 5954, 5957, 3, 2, 2, 2, 5955, 5953, 3, 2, 2, 2, 5955, 5956, 3, 2, 2, 2, 5956, 5959, 3, 2, 2, 2, 5957, 5955, 3, 2, 2, 2, 5958, 5934, 3, 2, 2, 2, 5958, 5942, 3, 2, 2, 2, 5958, 5950, 3, 2, 2, 2, 5959, 5960, 3, 2, 2, 2, 5960, 5961, 7, 2226, 2, 2, 5961, 5964, 3, 2, 2, 2, 5962, 5964, 5, 594, 298, 2, 5963, 5933, 3, 2, 2, 2, 5963, 5962, 3, 2, 2, 2, 5964, 5966, 3, 2, 2, 2, 5965, 5963, 3, 2, 2, 2, 5965, 5966, 3, 2, 2, 2, 5966, 573, 3, 2, 2, 2, 5967, 5969, 7, 1209, 2, 2, 5968, 5970, 5, 864, 433, 2, 5969, 5968, 3, 2, 2, 2, 5969, 5970, 3, 2, 2, 2, 5970, 5971, 3, 2, 2, 2, 5971, 5972, 5, 598, 300, 2, 5972, 6005, 5, 600, 301, 2, 5973, 5998, 7, 2225, 2, 2, 5974, 5979, 5, 588, 295, 2, 5975, 5976, 7, 2231, 2, 2, 5976, 5978, 5, 588, 295, 2, 5977, 5975, 3, 2, 2, 2, 5978, 5981, 3, 2, 2, 2, 5979, 5977, 3, 2, 2, 2, 5979, 5980, 3, 2, 2, 2, 5980, 5999, 3, 2, 2, 2, 5981, 5979, 3, 2, 2, 2, 5982, 5987, 5, 590, 296, 2, 5983, 5984, 7, 2231, 2, 2, 5984, 5986, 5, 590, 296, 2, 5985, 5983, 3, 2, 2, 2, 5986, 5989, 3, 2, 2, 2, 5987, 5985, 3, 2, 2, 2, 5987, 5988, 3, 2, 2, 2, 5988, 5999, 3, 2, 2, 2, 5989, 5987, 3, 2, 2, 2, 5990, 5995, 5, 592, 297, 2, 5991, 5992, 7, 2231, 2, 2, 5992, 5994, 5, 592, 297, 2, 5993, 5991, 3, 2, 2, 2, 5994, 5997, 3, 2, 2, 2, 5995, 5993, 3, 2, 2, 2, 5995, 5996, 3, 2, 2, 2, 5996, 5999, 3, 2, 2, 2, 5997, 5995, 3, 2, 2, 2, 5998, 5974, 3, 2, 2, 2, 5998, 5982, 3, 2, 2, 2, 5998, 5990, 3, 2, 2, 2, 5999, 6000, 3, 2, 2, 2, 6000, 6001, 7, 2226, 2, 2, 6001, 6004, 3, 2, 2, 2, 6002, 6004, 5, 594, 298, 2, 6003, 5973, 3, 2, 2, 2, 6003, 6002, 3, 2, 2, 2, 6004, 6006, 3, 2, 2, 2, 6005, 6003, 3, 2, 2, 2, 6005, 6006, 3, 2, 2, 2, 6006, 575, 3, 2, 2, 2, 6007, 6008, 7, 1608, 2, 2, 6008, 6039, 7, 1921, 2, 2, 6009, 6034, 7, 2225, 2, 2, 6010, 6015, 5, 588, 295, 2, 6011, 6012, 7, 2231, 2, 2, 6012, 6014, 5, 588, 295, 2, 6013, 6011, 3, 2, 2, 2, 6014, 6017, 3, 2, 2, 2, 6015, 6013, 3, 2, 2, 2, 6015, 6016, 3, 2, 2, 2, 6016, 6035, 3, 2, 2, 2, 6017, 6015, 3, 2, 2, 2, 6018, 6023, 5, 590, 296, 2, 6019, 6020, 7, 2231, 2, 2, 6020, 6022, 5, 590, 296, 2, 6021, 6019, 3, 2, 2, 2, 6022, 6025, 3, 2, 2, 2, 6023, 6021, 3, 2, 2, 2, 6023, 6024, 3, 2, 2, 2, 6024, 6035, 3, 2, 2, 2, 6025, 6023, 3, 2, 2, 2, 6026, 6031, 5, 592, 297, 2, 6027, 6028, 7, 2231, 2, 2, 6028, 6030, 5, 592, 297, 2, 6029, 6027, 3, 2, 2, 2, 6030, 6033, 3, 2, 2, 2, 6031, 6029, 3, 2, 2, 2, 6031, 6032, 3, 2, 2, 2, 6032, 6035, 3, 2, 2, 2, 6033, 6031, 3, 2, 2, 2, 6034, 6010, 3, 2, 2, 2, 6034, 6018, 3, 2, 2, 2, 6034, 6026, 3, 2, 2, 2, 6035, 6036, 3, 2, 2, 2, 6036, 6037, 7, 2226, 2, 2, 6037, 6040, 3, 2, 2, 2, 6038, 6040, 5, 578, 290, 2, 6039, 6009, 3, 2, 2, 2, 6039, 6038, 3, 2, 2, 2, 6040, 577, 3, 2, 2, 2, 6041, 6042, 7, 2219, 2, 2, 6042, 579, 3, 2, 2, 2, 6043, 6044, 7, 1608, 2, 2, 6044, 6045, 7, 148, 2, 2, 6045, 6046, 7, 1346, 2, 2, 6046, 6047, 7, 2225, 2, 2, 6047, 6052, 5, 1426, 714, 2, 6048, 6049, 7, 2231, 2, 2, 6049, 6051, 5, 1426, 714, 2, 6050, 6048, 3, 2, 2, 2, 6051, 6054, 3, 2, 2, 2, 6052, 6050, 3, 2, 2, 2, 6052, 6053, 3, 2, 2, 2, 6053, 6055, 3, 2, 2, 2, 6054, 6052, 3, 2, 2, 2, 6055, 6057, 7, 2226, 2, 2, 6056, 6058, 5, 576, 289, 2, 6057, 6056, 3, 2, 2, 2, 6057, 6058, 3, 2, 2, 2, 6058, 581, 3, 2, 2, 2, 6059, 6060, 7, 1608, 2, 2, 6060, 6061, 7, 148, 2, 2, 6061, 6062, 7, 763, 2, 2, 6062, 6063, 7, 2225, 2, 2, 6063, 6064, 5, 1426, 714, 2, 6064, 6066, 7, 2226, 2, 2, 6065, 6067, 5, 576, 289, 2, 6066, 6065, 3, 2, 2, 2, 6066, 6067, 3, 2, 2, 2, 6067, 583, 3, 2, 2, 2, 6068, 6069, 7, 1608, 2, 2, 6069, 6070, 7, 148, 2, 2, 6070, 6071, 7, 584, 2, 2, 6071, 6072, 7, 2225, 2, 2, 6072, 6077, 5, 1426, 714, 2, 6073, 6074, 7, 2231, 2, 2, 6074, 6076, 5, 1426, 714, 2, 6075, 6073, 3, 2, 2, 2, 6076, 6079, 3, 2, 2, 2, 6077, 6075, 3, 2, 2, 2, 6077, 6078, 3, 2, 2, 2, 6078, 6080, 3, 2, 2, 2, 6079, 6077, 3, 2, 2, 2, 6080, 6099, 7, 2226, 2, 2, 6081, 6082, 7, 1607, 2, 2, 6082, 6096, 7, 2219, 2, 2, 6083, 6084, 7, 1596, 2, 2, 6084, 6085, 7, 654, 2, 2, 6085, 6086, 7, 2225, 2, 2, 6086, 6091, 5, 838, 420, 2, 6087, 6088, 7, 2231, 2, 2, 6088, 6090, 5, 838, 420, 2, 6089, 6087, 3, 2, 2, 2, 6090, 6093, 3, 2, 2, 2, 6091, 6089, 3, 2, 2, 2, 6091, 6092, 3, 2, 2, 2, 6092, 6094, 3, 2, 2, 2, 6093, 6091, 3, 2, 2, 2, 6094, 6095, 7, 2226, 2, 2, 6095, 6097, 3, 2, 2, 2, 6096, 6083, 3, 2, 2, 2, 6096, 6097, 3, 2, 2, 2, 6097, 6100, 3, 2, 2, 2, 6098, 6100, 5, 576, 289, 2, 6099, 6081, 3, 2, 2, 2, 6099, 6098, 3, 2, 2, 2, 6099, 6100, 3, 2, 2, 2, 6100, 585, 3, 2, 2, 2, 6101, 6102, 5, 864, 433, 2, 6102, 587, 3, 2, 2, 2, 6103, 6105, 7, 1608, 2, 2, 6104, 6106, 5, 586, 294, 2, 6105, 6104, 3, 2, 2, 2, 6105, 6106, 3, 2, 2, 2, 6106, 6107, 3, 2, 2, 2, 6107, 6109, 5, 596, 299, 2, 6108, 6110, 5, 602, 302, 2, 6109, 6108, 3, 2, 2, 2, 6109, 6110, 3, 2, 2, 2, 6110, 589, 3, 2, 2, 2, 6111, 6113, 7, 1608, 2, 2, 6112, 6114, 5, 586, 294, 2, 6113, 6112, 3, 2, 2, 2, 6113, 6114, 3, 2, 2, 2, 6114, 6115, 3, 2, 2, 2, 6115, 6117, 5, 598, 300, 2, 6116, 6118, 5, 602, 302, 2, 6117, 6116, 3, 2, 2, 2, 6117, 6118, 3, 2, 2, 2, 6118, 591, 3, 2, 2, 2, 6119, 6121, 7, 1608, 2, 2, 6120, 6122, 5, 586, 294, 2, 6121, 6120, 3, 2, 2, 2, 6121, 6122, 3, 2, 2, 2, 6122, 6124, 3, 2, 2, 2, 6123, 6125, 5, 602, 302, 2, 6124, 6123, 3, 2, 2, 2, 6124, 6125, 3, 2, 2, 2, 6125, 593, 3, 2, 2, 2, 6126, 6127, 7, 1607, 2, 2, 6127, 6141, 7, 2219, 2, 2, 6128, 6129, 7, 1596, 2, 2, 6129, 6130, 7, 654, 2, 2, 6130, 6131, 7, 2225, 2, 2, 6131, 6136, 5, 838, 420, 2, 6132, 6133, 7, 2231, 2, 2, 6133, 6135, 5, 838, 420, 2, 6134, 6132, 3, 2, 2, 2, 6135, 6138, 3, 2, 2, 2, 6136, 6134, 3, 2, 2, 2, 6136, 6137, 3, 2, 2, 2, 6137, 6139, 3, 2, 2, 2, 6138, 6136, 3, 2, 2, 2, 6139, 6140, 7, 2226, 2, 2, 6140, 6142, 3, 2, 2, 2, 6141, 6128, 3, 2, 2, 2, 6141, 6142, 3, 2, 2, 2, 6142, 595, 3, 2, 2, 2, 6143, 6144, 7, 2075, 2, 2, 6144, 6145, 7, 748, 2, 2, 6145, 6146, 7, 1926, 2, 2, 6146, 6147, 7, 2225, 2, 2, 6147, 6152, 5, 1292, 647, 2, 6148, 6149, 7, 2231, 2, 2, 6149, 6151, 5, 1292, 647, 2, 6150, 6148, 3, 2, 2, 2, 6151, 6154, 3, 2, 2, 2, 6152, 6150, 3, 2, 2, 2, 6152, 6153, 3, 2, 2, 2, 6153, 6155, 3, 2, 2, 2, 6154, 6152, 3, 2, 2, 2, 6155, 6156, 7, 2226, 2, 2, 6156, 597, 3, 2, 2, 2, 6157, 6158, 7, 2075, 2, 2, 6158, 6168, 7, 2225, 2, 2, 6159, 6164, 5, 1292, 647, 2, 6160, 6161, 7, 2231, 2, 2, 6161, 6163, 5, 1292, 647, 2, 6162, 6160, 3, 2, 2, 2, 6163, 6166, 3, 2, 2, 2, 6164, 6162, 3, 2, 2, 2, 6164, 6165, 3, 2, 2, 2, 6165, 6169, 3, 2, 2, 2, 6166, 6164, 3, 2, 2, 2, 6167, 6169, 7, 353, 2, 2, 6168, 6159, 3, 2, 2, 2, 6168, 6167, 3, 2, 2, 2, 6169, 6170, 3, 2, 2, 2, 6170, 6171, 7, 2226, 2, 2, 6171, 599, 3, 2, 2, 2, 6172, 6174, 5, 616, 309, 2, 6173, 6172, 3, 2, 2, 2, 6173, 6174, 3, 2, 2, 2, 6174, 6176, 3, 2, 2, 2, 6175, 6177, 5, 618, 310, 2, 6176, 6175, 3, 2, 2, 2, 6176, 6177, 3, 2, 2, 2, 6177, 6180, 3, 2, 2, 2, 6178, 6181, 5, 610, 306, 2, 6179, 6181, 5, 782, 392, 2, 6180, 6178, 3, 2, 2, 2, 6180, 6179, 3, 2, 2, 2, 6180, 6181, 3, 2, 2, 2, 6181, 6186, 3, 2, 2, 2, 6182, 6184, 7, 1186, 2, 2, 6183, 6185, 5, 618, 310, 2, 6184, 6183, 3, 2, 2, 2, 6184, 6185, 3, 2, 2, 2, 6185, 6187, 3, 2, 2, 2, 6186, 6182, 3, 2, 2, 2, 6186, 6187, 3, 2, 2, 2, 6187, 6191, 3, 2, 2, 2, 6188, 6192, 5, 822, 412, 2, 6189, 6192, 5, 812, 407, 2, 6190, 6192, 5, 858, 430, 2, 6191, 6188, 3, 2, 2, 2, 6191, 6189, 3, 2, 2, 2, 6191, 6190, 3, 2, 2, 2, 6191, 6192, 3, 2, 2, 2, 6192, 601, 3, 2, 2, 2, 6193, 6194, 7, 1911, 2, 2, 6194, 6214, 5, 838, 420, 2, 6195, 6198, 7, 1186, 2, 2, 6196, 6197, 7, 1911, 2, 2, 6197, 6199, 5, 838, 420, 2, 6198, 6196, 3, 2, 2, 2, 6198, 6199, 3, 2, 2, 2, 6199, 6214, 3, 2, 2, 2, 6200, 6214, 5, 610, 306, 2, 6201, 6214, 5, 782, 392, 2, 6202, 6214, 5, 604, 303, 2, 6203, 6204, 7, 2082, 2, 2, 6204, 6205, 5, 840, 421, 2, 6205, 6206, 7, 1596, 2, 2, 6206, 6208, 7, 63, 2, 2, 6207, 6209, 9, 60, 2, 2, 6208, 6207, 3, 2, 2, 2, 6208, 6209, 3, 2, 2, 2, 6209, 6210, 3, 2, 2, 2, 6210, 6211, 7, 767, 2, 2, 6211, 6212, 5, 816, 409, 2, 6212, 6214, 3, 2, 2, 2, 6213, 6193, 3, 2, 2, 2, 6213, 6195, 3, 2, 2, 2, 6213, 6200, 3, 2, 2, 2, 6213, 6201, 3, 2, 2, 2, 6213, 6202, 3, 2, 2, 2, 6213, 6203, 3, 2, 2, 2, 6214, 6215, 3, 2, 2, 2, 6215, 6213, 3, 2, 2, 2, 6215, 6216, 3, 2, 2, 2, 6216, 603, 3, 2, 2, 2, 6217, 6218, 7, 767, 2, 2, 6218, 6219, 7, 2225, 2, 2, 6219, 6220, 5, 818, 410, 2, 6220, 6221, 7, 2226, 2, 2, 6221, 6222, 7, 1596, 2, 2, 6222, 6224, 7, 63, 2, 2, 6223, 6225, 9, 60, 2, 2, 6224, 6223, 3, 2, 2, 2, 6224, 6225, 3, 2, 2, 2, 6225, 6239, 3, 2, 2, 2, 6226, 6232, 5, 816, 409, 2, 6227, 6228, 7, 2225, 2, 2, 6228, 6229, 7, 1911, 2, 2, 6229, 6230, 5, 838, 420, 2, 6230, 6231, 7, 2226, 2, 2, 6231, 6233, 3, 2, 2, 2, 6232, 6227, 3, 2, 2, 2, 6232, 6233, 3, 2, 2, 2, 6233, 6240, 3, 2, 2, 2, 6234, 6235, 7, 2225, 2, 2, 6235, 6236, 7, 1911, 2, 2, 6236, 6237, 5, 838, 420, 2, 6237, 6238, 7, 2226, 2, 2, 6238, 6240, 3, 2, 2, 2, 6239, 6226, 3, 2, 2, 2, 6239, 6234, 3, 2, 2, 2, 6240, 605, 3, 2, 2, 2, 6241, 6242, 5, 1426, 714, 2, 6242, 6244, 5, 1462, 732, 2, 6243, 6245, 7, 1546, 2, 2, 6244, 6243, 3, 2, 2, 2, 6244, 6245, 3, 2, 2, 2, 6245, 6248, 3, 2, 2, 2, 6246, 6247, 7, 353, 2, 2, 6247, 6249, 5, 1236, 619, 2, 6248, 6246, 3, 2, 2, 2, 6248, 6249, 3, 2, 2, 2, 6249, 6269, 3, 2, 2, 2, 6250, 6253, 7, 445, 2, 2, 6251, 6252, 7, 2065, 2, 2, 6252, 6254, 7, 2221, 2, 2, 6253, 6251, 3, 2, 2, 2, 6253, 6254, 3, 2, 2, 2, 6254, 6258, 3, 2, 2, 2, 6255, 6256, 7, 603, 2, 2, 6256, 6257, 7, 148, 2, 2, 6257, 6259, 7, 2254, 2, 2, 6258, 6255, 3, 2, 2, 2, 6258, 6259, 3, 2, 2, 2, 6259, 6261, 3, 2, 2, 2, 6260, 6262, 7, 2221, 2, 2, 6261, 6260, 3, 2, 2, 2, 6261, 6262, 3, 2, 2, 2, 6262, 6267, 3, 2, 2, 2, 6263, 6265, 7, 1012, 2, 2, 6264, 6263, 3, 2, 2, 2, 6264, 6265, 3, 2, 2, 2, 6265, 6266, 3, 2, 2, 2, 6266, 6268, 7, 1460, 2, 2, 6267, 6264, 3, 2, 2, 2, 6267, 6268, 3, 2, 2, 2, 6268, 6270, 3, 2, 2, 2, 6269, 6250, 3, 2, 2, 2, 6269, 6270, 3, 2, 2, 2, 6270, 6273, 3, 2, 2, 2, 6271, 6272, 7, 1075, 2, 2, 6272, 6274, 7, 1099, 2, 2, 6273, 6271, 3, 2, 2, 2, 6273, 6274, 3, 2, 2, 2, 6274, 6276, 3, 2, 2, 2, 6275, 6277, 9, 7, 2, 2, 6276, 6275, 3, 2, 2, 2, 6276, 6277, 3, 2, 2, 2, 6277, 607, 3, 2, 2, 2, 6278, 6280, 7, 2219, 2, 2, 6279, 6281, 7, 2254, 2, 2, 6280, 6279, 3, 2, 2, 2, 6280, 6281, 3, 2, 2, 2, 6281, 609, 3, 2, 2, 2, 6282, 6292, 7, 234, 2, 2, 6283, 6293, 7, 97, 2, 2, 6284, 6290, 7, 548, 2, 2, 6285, 6291, 7, 1124, 2, 2, 6286, 6288, 9, 62, 2, 2, 6287, 6289, 9, 63, 2, 2, 6288, 6287, 3, 2, 2, 2, 6288, 6289, 3, 2, 2, 2, 6289, 6291, 3, 2, 2, 2, 6290, 6285, 3, 2, 2, 2, 6290, 6286, 3, 2, 2, 2, 6291, 6293, 3, 2, 2, 2, 6292, 6283, 3, 2, 2, 2, 6292, 6284, 3, 2, 2, 2, 6292, 6293, 3, 2, 2, 2, 6293, 6296, 3, 2, 2, 2, 6294, 6296, 7, 955, 2, 2, 6295, 6282, 3, 2, 2, 2, 6295, 6294, 3, 2, 2, 2, 6296, 611, 3, 2, 2, 2, 6297, 6298, 7, 1229, 2, 2, 6298, 6305, 7, 2219, 2, 2, 6299, 6300, 7, 1232, 2, 2, 6300, 6305, 7, 2219, 2, 2, 6301, 6302, 7, 659, 2, 2, 6302, 6305, 7, 2219, 2, 2, 6303, 6305, 5, 614, 308, 2, 6304, 6297, 3, 2, 2, 2, 6304, 6299, 3, 2, 2, 2, 6304, 6301, 3, 2, 2, 2, 6304, 6303, 3, 2, 2, 2, 6305, 6306, 3, 2, 2, 2, 6306, 6304, 3, 2, 2, 2, 6306, 6307, 3, 2, 2, 2, 6307, 613, 3, 2, 2, 2, 6308, 6309, 7, 1595, 2, 2, 6309, 6335, 7, 2225, 2, 2, 6310, 6311, 7, 656, 2, 2, 6311, 6336, 5, 608, 305, 2, 6312, 6313, 7, 908, 2, 2, 6313, 6336, 5, 608, 305, 2, 6314, 6315, 7, 840, 2, 2, 6315, 6336, 9, 64, 2, 2, 6316, 6317, 7, 815, 2, 2, 6317, 6336, 9, 64, 2, 2, 6318, 6319, 7, 1230, 2, 2, 6319, 6336, 7, 2219, 2, 2, 6320, 6321, 7, 553, 2, 2, 6321, 6336, 7, 2219, 2, 2, 6322, 6323, 7, 552, 2, 2, 6323, 6324, 7, 579, 2, 2, 6324, 6336, 7, 2219, 2, 2, 6325, 6328, 7, 1139, 2, 2, 6326, 6329, 5, 608, 305, 2, 6327, 6329, 7, 1099, 2, 2, 6328, 6326, 3, 2, 2, 2, 6328, 6327, 3, 2, 2, 2, 6329, 6336, 3, 2, 2, 2, 6330, 6331, 7, 145, 2, 2, 6331, 6336, 9, 65, 2, 2, 6332, 6333, 7, 535, 2, 2, 6333, 6336, 9, 66, 2, 2, 6334, 6336, 7, 445, 2, 2, 6335, 6310, 3, 2, 2, 2, 6335, 6312, 3, 2, 2, 2, 6335, 6314, 3, 2, 2, 2, 6335, 6316, 3, 2, 2, 2, 6335, 6318, 3, 2, 2, 2, 6335, 6320, 3, 2, 2, 2, 6335, 6322, 3, 2, 2, 2, 6335, 6325, 3, 2, 2, 2, 6335, 6330, 3, 2, 2, 2, 6335, 6332, 3, 2, 2, 2, 6335, 6334, 3, 2, 2, 2, 6336, 6337, 3, 2, 2, 2, 6337, 6335, 3, 2, 2, 2, 6337, 6338, 3, 2, 2, 2, 6338, 6339, 3, 2, 2, 2, 6339, 6340, 7, 2226, 2, 2, 6340, 615, 3, 2, 2, 2, 6341, 6342, 7, 1490, 2, 2, 6342, 6343, 7, 293, 2, 2, 6343, 6344, 9, 40, 2, 2, 6344, 617, 3, 2, 2, 2, 6345, 6350, 5, 612, 307, 2, 6346, 6347, 7, 1911, 2, 2, 6347, 6350, 5, 1490, 746, 2, 6348, 6350, 5, 450, 226, 2, 6349, 6345, 3, 2, 2, 2, 6349, 6346, 3, 2, 2, 2, 6349, 6348, 3, 2, 2, 2, 6350, 6351, 3, 2, 2, 2, 6351, 6349, 3, 2, 2, 2, 6351, 6352, 3, 2, 2, 2, 6352, 619, 3, 2, 2, 2, 6353, 6355, 5, 616, 309, 2, 6354, 6353, 3, 2, 2, 2, 6354, 6355, 3, 2, 2, 2, 6355, 6356, 3, 2, 2, 2, 6356, 6358, 5, 618, 310, 2, 6357, 6359, 5, 610, 306, 2, 6358, 6357, 3, 2, 2, 2, 6358, 6359, 3, 2, 2, 2, 6359, 621, 3, 2, 2, 2, 6360, 6362, 9, 7, 2, 2, 6361, 6360, 3, 2, 2, 2, 6361, 6362, 3, 2, 2, 2, 6362, 6363, 3, 2, 2, 2, 6363, 6364, 7, 1453, 2, 2, 6364, 6365, 7, 875, 2, 2, 6365, 623, 3, 2, 2, 2, 6366, 6367, 7, 534, 2, 2, 6367, 6368, 7, 59, 2, 2, 6368, 6373, 7, 2254, 2, 2, 6369, 6370, 7, 1012, 2, 2, 6370, 6371, 7, 534, 2, 2, 6371, 6373, 7, 59, 2, 2, 6372, 6366, 3, 2, 2, 2, 6372, 6369, 3, 2, 2, 2, 6373, 625, 3, 2, 2, 2, 6374, 6375, 7, 2219, 2, 2, 6375, 627, 3, 2, 2, 2, 6376, 6377, 7, 20, 2, 2, 6377, 6378, 7, 1622, 2, 2, 6378, 6381, 7, 785, 2, 2, 6379, 6382, 5, 630, 316, 2, 6380, 6382, 5, 632, 317, 2, 6381, 6379, 3, 2, 2, 2, 6381, 6380, 3, 2, 2, 2, 6382, 6392, 3, 2, 2, 2, 6383, 6384, 7, 2231, 2, 2, 6384, 6385, 7, 1622, 2, 2, 6385, 6388, 7, 785, 2, 2, 6386, 6389, 5, 630, 316, 2, 6387, 6389, 5, 632, 317, 2, 6388, 6386, 3, 2, 2, 2, 6388, 6387, 3, 2, 2, 2, 6389, 6391, 3, 2, 2, 2, 6390, 6383, 3, 2, 2, 2, 6391, 6394, 3, 2, 2, 2, 6392, 6390, 3, 2, 2, 2, 6392, 6393, 3, 2, 2, 2, 6393, 6417, 3, 2, 2, 2, 6394, 6392, 3, 2, 2, 2, 6395, 6396, 7, 413, 2, 2, 6396, 6397, 7, 1622, 2, 2, 6397, 6401, 7, 785, 2, 2, 6398, 6402, 5, 632, 317, 2, 6399, 6400, 7, 575, 2, 2, 6400, 6402, 5, 626, 314, 2, 6401, 6398, 3, 2, 2, 2, 6401, 6399, 3, 2, 2, 2, 6402, 6413, 3, 2, 2, 2, 6403, 6404, 7, 2231, 2, 2, 6404, 6405, 7, 1622, 2, 2, 6405, 6409, 7, 785, 2, 2, 6406, 6410, 5, 632, 317, 2, 6407, 6408, 7, 575, 2, 2, 6408, 6410, 5, 626, 314, 2, 6409, 6406, 3, 2, 2, 2, 6409, 6407, 3, 2, 2, 2, 6410, 6412, 3, 2, 2, 2, 6411, 6403, 3, 2, 2, 2, 6412, 6415, 3, 2, 2, 2, 6413, 6411, 3, 2, 2, 2, 6413, 6414, 3, 2, 2, 2, 6414, 6417, 3, 2, 2, 2, 6415, 6413, 3, 2, 2, 2, 6416, 6376, 3, 2, 2, 2, 6416, 6395, 3, 2, 2, 2, 6417, 629, 3, 2, 2, 2, 6418, 6419, 7, 575, 2, 2, 6419, 6420, 5, 626, 314, 2, 6420, 6421, 7, 2225, 2, 2, 6421, 6424, 5, 1494, 748, 2, 6422, 6423, 7, 1012, 2, 2, 6423, 6425, 7, 785, 2, 2, 6424, 6422, 3, 2, 2, 2, 6424, 6425, 3, 2, 2, 2, 6425, 6434, 3, 2, 2, 2, 6426, 6427, 7, 2231, 2, 2, 6427, 6430, 5, 1494, 748, 2, 6428, 6429, 7, 1012, 2, 2, 6429, 6431, 7, 785, 2, 2, 6430, 6428, 3, 2, 2, 2, 6430, 6431, 3, 2, 2, 2, 6431, 6433, 3, 2, 2, 2, 6432, 6426, 3, 2, 2, 2, 6433, 6436, 3, 2, 2, 2, 6434, 6432, 3, 2, 2, 2, 6434, 6435, 3, 2, 2, 2, 6435, 6437, 3, 2, 2, 2, 6436, 6434, 3, 2, 2, 2, 6437, 6439, 7, 2226, 2, 2, 6438, 6440, 7, 42, 2, 2, 6439, 6438, 3, 2, 2, 2, 6439, 6440, 3, 2, 2, 2, 6440, 631, 3, 2, 2, 2, 6441, 6442, 7, 319, 2, 2, 6442, 6454, 7, 2225, 2, 2, 6443, 6445, 7, 2231, 2, 2, 6444, 6443, 3, 2, 2, 2, 6444, 6445, 3, 2, 2, 2, 6445, 6452, 3, 2, 2, 2, 6446, 6453, 7, 37, 2, 2, 6447, 6448, 7, 1306, 2, 2, 6448, 6453, 7, 724, 2, 2, 6449, 6453, 7, 2004, 2, 2, 6450, 6451, 7, 546, 2, 2, 6451, 6453, 7, 724, 2, 2, 6452, 6446, 3, 2, 2, 2, 6452, 6447, 3, 2, 2, 2, 6452, 6449, 3, 2, 2, 2, 6452, 6450, 3, 2, 2, 2, 6453, 6455, 3, 2, 2, 2, 6454, 6444, 3, 2, 2, 2, 6455, 6456, 3, 2, 2, 2, 6456, 6454, 3, 2, 2, 2, 6456, 6457, 3, 2, 2, 2, 6457, 6458, 3, 2, 2, 2, 6458, 6459, 7, 2226, 2, 2, 6459, 6460, 7, 216, 2, 2, 6460, 633, 3, 2, 2, 2, 6461, 6462, 7, 38, 2, 2, 6462, 6475, 7, 493, 2, 2, 6463, 6470, 7, 2225, 2, 2, 6464, 6465, 7, 1537, 2, 2, 6465, 6471, 5, 608, 305, 2, 6466, 6467, 7, 320, 2, 2, 6467, 6471, 7, 2221, 2, 2, 6468, 6469, 7, 674, 2, 2, 6469, 6471, 7, 2219, 2, 2, 6470, 6464, 3, 2, 2, 2, 6470, 6466, 3, 2, 2, 2, 6470, 6468, 3, 2, 2, 2, 6471, 6472, 3, 2, 2, 2, 6472, 6470, 3, 2, 2, 2, 6472, 6473, 3, 2, 2, 2, 6473, 6474, 3, 2, 2, 2, 6474, 6476, 7, 2226, 2, 2, 6475, 6463, 3, 2, 2, 2, 6475, 6476, 3, 2, 2, 2, 6476, 635, 3, 2, 2, 2, 6477, 6478, 7, 341, 2, 2, 6478, 6481, 7, 2024, 2, 2, 6479, 6480, 7, 722, 2, 2, 6480, 6482, 5, 608, 305, 2, 6481, 6479, 3, 2, 2, 2, 6481, 6482, 3, 2, 2, 2, 6482, 637, 3, 2, 2, 2, 6483, 6484, 7, 1523, 2, 2, 6484, 6486, 7, 1551, 2, 2, 6485, 6487, 7, 223, 2, 2, 6486, 6485, 3, 2, 2, 2, 6486, 6487, 3, 2, 2, 2, 6487, 6489, 3, 2, 2, 2, 6488, 6490, 7, 164, 2, 2, 6489, 6488, 3, 2, 2, 2, 6489, 6490, 3, 2, 2, 2, 6490, 639, 3, 2, 2, 2, 6491, 6493, 9, 67, 2, 2, 6492, 6491, 3, 2, 2, 2, 6492, 6493, 3, 2, 2, 2, 6493, 6494, 3, 2, 2, 2, 6494, 6495, 7, 1362, 2, 2, 6495, 641, 3, 2, 2, 2, 6496, 6498, 7, 2031, 2, 2, 6497, 6499, 7, 1075, 2, 2, 6498, 6497, 3, 2, 2, 2, 6498, 6499, 3, 2, 2, 2, 6499, 6500, 3, 2, 2, 2, 6500, 6501, 7, 621, 2, 2, 6501, 6502, 7, 319, 2, 2, 6502, 6503, 3, 2, 2, 2, 6503, 6504, 5, 842, 422, 2, 6504, 643, 3, 2, 2, 2, 6505, 6506, 7, 413, 2, 2, 6506, 6507, 7, 1914, 2, 2, 6507, 6509, 5, 1428, 715, 2, 6508, 6510, 7, 1328, 2, 2, 6509, 6508, 3, 2, 2, 2, 6509, 6510, 3, 2, 2, 2, 6510, 6511, 3, 2, 2, 2, 6511, 6512, 7, 2243, 2, 2, 6512, 645, 3, 2, 2, 2, 6513, 6514, 7, 413, 2, 2, 6514, 6515, 7, 2101, 2, 2, 6515, 6518, 5, 1428, 715, 2, 6516, 6517, 7, 164, 2, 2, 6517, 6519, 7, 259, 2, 2, 6518, 6516, 3, 2, 2, 2, 6518, 6519, 3, 2, 2, 2, 6519, 6520, 3, 2, 2, 2, 6520, 6521, 7, 2243, 2, 2, 6521, 647, 3, 2, 2, 2, 6522, 6523, 7, 219, 2, 2, 6523, 6524, 7, 1130, 2, 2, 6524, 6525, 7, 215, 2, 2, 6525, 6526, 5, 1426, 714, 2, 6526, 6527, 7, 697, 2, 2, 6527, 6528, 5, 1486, 744, 2, 6528, 649, 3, 2, 2, 2, 6529, 6530, 9, 7, 2, 2, 6530, 651, 3, 2, 2, 2, 6531, 6532, 9, 68, 2, 2, 6532, 653, 3, 2, 2, 2, 6533, 6536, 7, 290, 2, 2, 6534, 6535, 7, 1174, 2, 2, 6535, 6537, 7, 1409, 2, 2, 6536, 6534, 3, 2, 2, 2, 6536, 6537, 3, 2, 2, 2, 6537, 6538, 3, 2, 2, 2, 6538, 6539, 7, 1326, 2, 2, 6539, 6540, 7, 1629, 2, 2, 6540, 6541, 5, 1434, 718, 2, 6541, 6545, 7, 548, 2, 2, 6542, 6543, 5, 1374, 688, 2, 6543, 6544, 7, 2218, 2, 2, 6544, 6546, 3, 2, 2, 2, 6545, 6542, 3, 2, 2, 2, 6545, 6546, 3, 2, 2, 2, 6546, 6547, 3, 2, 2, 2, 6547, 6550, 5, 1436, 719, 2, 6548, 6549, 7, 2233, 2, 2, 6549, 6551, 5, 1424, 713, 2, 6550, 6548, 3, 2, 2, 2, 6550, 6551, 3, 2, 2, 2, 6551, 6576, 3, 2, 2, 2, 6552, 6555, 7, 290, 2, 2, 6553, 6554, 7, 1174, 2, 2, 6554, 6556, 7, 1409, 2, 2, 6555, 6553, 3, 2, 2, 2, 6555, 6556, 3, 2, 2, 2, 6556, 6557, 3, 2, 2, 2, 6557, 6561, 7, 1629, 2, 2, 6558, 6559, 5, 1374, 688, 2, 6559, 6560, 7, 2218, 2, 2, 6560, 6562, 3, 2, 2, 2, 6561, 6558, 3, 2, 2, 2, 6561, 6562, 3, 2, 2, 2, 6562, 6563, 3, 2, 2, 2, 6563, 6564, 5, 1434, 718, 2, 6564, 6568, 7, 548, 2, 2, 6565, 6566, 5, 1374, 688, 2, 6566, 6567, 7, 2218, 2, 2, 6567, 6569, 3, 2, 2, 2, 6568, 6565, 3, 2, 2, 2, 6568, 6569, 3, 2, 2, 2, 6569, 6570, 3, 2, 2, 2, 6570, 6573, 5, 1436, 719, 2, 6571, 6572, 7, 2233, 2, 2, 6572, 6574, 5, 1424, 713, 2, 6573, 6571, 3, 2, 2, 2, 6573, 6574, 3, 2, 2, 2, 6574, 6576, 3, 2, 2, 2, 6575, 6533, 3, 2, 2, 2, 6575, 6552, 3, 2, 2, 2, 6576, 655, 3, 2, 2, 2, 6577, 6578, 7, 219, 2, 2, 6578, 6579, 7, 1130, 2, 2, 6579, 6580, 7, 1914, 2, 2, 6580, 6581, 5, 1428, 715, 2, 6581, 6582, 7, 697, 2, 2, 6582, 6583, 5, 1486, 744, 2, 6583, 657, 3, 2, 2, 2, 6584, 6585, 7, 41, 2, 2, 6585, 6586, 7, 199, 2, 2, 6586, 6593, 5, 186, 94, 2, 6587, 6594, 5, 612, 307, 2, 6588, 6589, 7, 1537, 2, 2, 6589, 6594, 5, 608, 305, 2, 6590, 6594, 5, 634, 318, 2, 6591, 6594, 5, 636, 319, 2, 6592, 6594, 5, 660, 331, 2, 6593, 6587, 3, 2, 2, 2, 6593, 6588, 3, 2, 2, 2, 6593, 6590, 3, 2, 2, 2, 6593, 6591, 3, 2, 2, 2, 6593, 6592, 3, 2, 2, 2, 6594, 6595, 3, 2, 2, 2, 6595, 6593, 3, 2, 2, 2, 6595, 6596, 3, 2, 2, 2, 6596, 6598, 3, 2, 2, 2, 6597, 6599, 5, 476, 239, 2, 6598, 6597, 3, 2, 2, 2, 6598, 6599, 3, 2, 2, 2, 6599, 6600, 3, 2, 2, 2, 6600, 6601, 7, 2243, 2, 2, 6601, 659, 3, 2, 2, 2, 6602, 6603, 9, 53, 2, 2, 6603, 661, 3, 2, 2, 2, 6604, 6605, 5, 1494, 748, 2, 6605, 663, 3, 2, 2, 2, 6606, 6607, 7, 41, 2, 2, 6607, 6609, 7, 318, 2, 2, 6608, 6610, 5, 662, 332, 2, 6609, 6608, 3, 2, 2, 2, 6609, 6610, 3, 2, 2, 2, 6610, 6620, 3, 2, 2, 2, 6611, 6621, 5, 666, 334, 2, 6612, 6621, 5, 672, 337, 2, 6613, 6621, 5, 688, 345, 2, 6614, 6621, 5, 696, 349, 2, 6615, 6621, 5, 714, 358, 2, 6616, 6621, 5, 718, 360, 2, 6617, 6621, 5, 734, 368, 2, 6618, 6621, 5, 738, 370, 2, 6619, 6621, 5, 740, 371, 2, 6620, 6611, 3, 2, 2, 2, 6620, 6612, 3, 2, 2, 2, 6620, 6613, 3, 2, 2, 2, 6620, 6614, 3, 2, 2, 2, 6620, 6615, 3, 2, 2, 2, 6620, 6616, 3, 2, 2, 2, 6620, 6617, 3, 2, 2, 2, 6620, 6618, 3, 2, 2, 2, 6620, 6619, 3, 2, 2, 2, 6621, 6622, 3, 2, 2, 2, 6622, 6623, 7, 2243, 2, 2, 6623, 665, 3, 2, 2, 2, 6624, 6627, 7, 873, 2, 2, 6625, 6626, 9, 69, 2, 2, 6626, 6628, 7, 318, 2, 2, 6627, 6625, 3, 2, 2, 2, 6627, 6628, 3, 2, 2, 2, 6628, 6644, 3, 2, 2, 2, 6629, 6632, 7, 1135, 2, 2, 6630, 6631, 7, 1355, 2, 2, 6631, 6633, 7, 2127, 2, 2, 6632, 6630, 3, 2, 2, 2, 6632, 6633, 3, 2, 2, 2, 6633, 6635, 3, 2, 2, 2, 6634, 6636, 5, 668, 335, 2, 6635, 6634, 3, 2, 2, 2, 6635, 6636, 3, 2, 2, 2, 6636, 6638, 3, 2, 2, 2, 6637, 6639, 5, 670, 336, 2, 6638, 6637, 3, 2, 2, 2, 6638, 6639, 3, 2, 2, 2, 6639, 6644, 3, 2, 2, 2, 6640, 6641, 7, 1135, 2, 2, 6641, 6642, 7, 1355, 2, 2, 6642, 6644, 7, 1129, 2, 2, 6643, 6624, 3, 2, 2, 2, 6643, 6629, 3, 2, 2, 2, 6643, 6640, 3, 2, 2, 2, 6644, 667, 3, 2, 2, 2, 6645, 6646, 9, 70, 2, 2, 6646, 669, 3, 2, 2, 2, 6647, 6648, 9, 71, 2, 2, 6648, 671, 3, 2, 2, 2, 6649, 6655, 5, 676, 339, 2, 6650, 6655, 5, 684, 343, 2, 6651, 6652, 5, 674, 338, 2, 6652, 6653, 7, 95, 2, 2, 6653, 6655, 3, 2, 2, 2, 6654, 6649, 3, 2, 2, 2, 6654, 6650, 3, 2, 2, 2, 6654, 6651, 3, 2, 2, 2, 6655, 673, 3, 2, 2, 2, 6656, 6657, 9, 72, 2, 2, 6657, 675, 3, 2, 2, 2, 6658, 6660, 7, 1364, 2, 2, 6659, 6661, 7, 89, 2, 2, 6660, 6659, 3, 2, 2, 2, 6660, 6661, 3, 2, 2, 2, 6661, 6664, 3, 2, 2, 2, 6662, 6663, 7, 556, 2, 2, 6663, 6665, 7, 2221, 2, 2, 6664, 6662, 3, 2, 2, 2, 6664, 6665, 3, 2, 2, 2, 6665, 6688, 3, 2, 2, 2, 6666, 6671, 5, 678, 340, 2, 6667, 6671, 5, 680, 341, 2, 6668, 6669, 7, 779, 2, 2, 6669, 6671, 7, 2221, 2, 2, 6670, 6666, 3, 2, 2, 2, 6670, 6667, 3, 2, 2, 2, 6670, 6668, 3, 2, 2, 2, 6670, 6671, 3, 2, 2, 2, 6671, 6681, 3, 2, 2, 2, 6672, 6678, 7, 1924, 2, 2, 6673, 6674, 7, 39, 2, 2, 6674, 6675, 7, 2219, 2, 2, 6675, 6678, 7, 276, 2, 2, 6676, 6678, 5, 476, 239, 2, 6677, 6672, 3, 2, 2, 2, 6677, 6673, 3, 2, 2, 2, 6677, 6676, 3, 2, 2, 2, 6678, 6679, 3, 2, 2, 2, 6679, 6677, 3, 2, 2, 2, 6679, 6680, 3, 2, 2, 2, 6680, 6682, 3, 2, 2, 2, 6681, 6677, 3, 2, 2, 2, 6681, 6682, 3, 2, 2, 2, 6682, 6689, 3, 2, 2, 2, 6683, 6685, 7, 268, 2, 2, 6684, 6686, 7, 353, 2, 2, 6685, 6684, 3, 2, 2, 2, 6685, 6686, 3, 2, 2, 2, 6686, 6689, 3, 2, 2, 2, 6687, 6689, 7, 160, 2, 2, 6688, 6670, 3, 2, 2, 2, 6688, 6683, 3, 2, 2, 2, 6688, 6687, 3, 2, 2, 2, 6689, 677, 3, 2, 2, 2, 6690, 6692, 7, 1568, 2, 2, 6691, 6690, 3, 2, 2, 2, 6691, 6692, 3, 2, 2, 2, 6692, 6693, 3, 2, 2, 2, 6693, 6710, 7, 318, 2, 2, 6694, 6701, 7, 2022, 2, 2, 6695, 6702, 7, 160, 2, 2, 6696, 6697, 7, 1939, 2, 2, 6697, 6702, 7, 2221, 2, 2, 6698, 6699, 7, 174, 2, 2, 6699, 6702, 7, 2219, 2, 2, 6700, 6702, 7, 256, 2, 2, 6701, 6695, 3, 2, 2, 2, 6701, 6696, 3, 2, 2, 2, 6701, 6698, 3, 2, 2, 2, 6701, 6700, 3, 2, 2, 2, 6702, 6707, 3, 2, 2, 2, 6703, 6704, 7, 2065, 2, 2, 6704, 6705, 7, 95, 2, 2, 6705, 6707, 7, 269, 2, 2, 6706, 6694, 3, 2, 2, 2, 6706, 6703, 3, 2, 2, 2, 6707, 6708, 3, 2, 2, 2, 6708, 6706, 3, 2, 2, 2, 6708, 6709, 3, 2, 2, 2, 6709, 6711, 3, 2, 2, 2, 6710, 6706, 3, 2, 2, 2, 6710, 6711, 3, 2, 2, 2, 6711, 679, 3, 2, 2, 2, 6712, 6713, 7, 1911, 2, 2, 6713, 6718, 5, 838, 420, 2, 6714, 6715, 7, 2231, 2, 2, 6715, 6717, 5, 838, 420, 2, 6716, 6714, 3, 2, 2, 2, 6717, 6720, 3, 2, 2, 2, 6718, 6716, 3, 2, 2, 2, 6718, 6719, 3, 2, 2, 2, 6719, 6734, 3, 2, 2, 2, 6720, 6718, 3, 2, 2, 2, 6721, 6722, 7, 320, 2, 2, 6722, 6734, 7, 2221, 2, 2, 6723, 6729, 5, 748, 375, 2, 6724, 6725, 7, 2231, 2, 2, 6725, 6728, 7, 2221, 2, 2, 6726, 6728, 5, 748, 375, 2, 6727, 6724, 3, 2, 2, 2, 6727, 6726, 3, 2, 2, 2, 6728, 6731, 3, 2, 2, 2, 6729, 6727, 3, 2, 2, 2, 6729, 6730, 3, 2, 2, 2, 6730, 6734, 3, 2, 2, 2, 6731, 6729, 3, 2, 2, 2, 6732, 6734, 5, 682, 342, 2, 6733, 6712, 3, 2, 2, 2, 6733, 6721, 3, 2, 2, 2, 6733, 6723, 3, 2, 2, 2, 6733, 6732, 3, 2, 2, 2, 6734, 681, 3, 2, 2, 2, 6735, 6736, 6, 342, 10, 2, 6736, 6757, 7, 1568, 2, 2, 6737, 6738, 7, 1911, 2, 2, 6738, 6743, 5, 838, 420, 2, 6739, 6740, 7, 2231, 2, 2, 6740, 6742, 5, 838, 420, 2, 6741, 6739, 3, 2, 2, 2, 6742, 6745, 3, 2, 2, 2, 6743, 6741, 3, 2, 2, 2, 6743, 6744, 3, 2, 2, 2, 6744, 6758, 3, 2, 2, 2, 6745, 6743, 3, 2, 2, 2, 6746, 6747, 7, 320, 2, 2, 6747, 6758, 7, 2221, 2, 2, 6748, 6754, 5, 748, 375, 2, 6749, 6750, 7, 2231, 2, 2, 6750, 6753, 7, 2221, 2, 2, 6751, 6753, 5, 748, 375, 2, 6752, 6749, 3, 2, 2, 2, 6752, 6751, 3, 2, 2, 2, 6753, 6756, 3, 2, 2, 2, 6754, 6752, 3, 2, 2, 2, 6754, 6755, 3, 2, 2, 2, 6755, 6758, 3, 2, 2, 2, 6756, 6754, 3, 2, 2, 2, 6757, 6737, 3, 2, 2, 2, 6757, 6746, 3, 2, 2, 2, 6757, 6748, 3, 2, 2, 2, 6758, 6759, 3, 2, 2, 2, 6759, 6762, 7, 2022, 2, 2, 6760, 6761, 7, 256, 2, 2, 6761, 6763, 7, 2123, 2, 2, 6762, 6760, 3, 2, 2, 2, 6762, 6763, 3, 2, 2, 2, 6763, 6764, 3, 2, 2, 2, 6764, 6765, 7, 269, 2, 2, 6765, 683, 3, 2, 2, 2, 6766, 6801, 7, 1364, 2, 2, 6767, 6768, 7, 798, 2, 2, 6768, 6769, 7, 1568, 2, 2, 6769, 6791, 7, 318, 2, 2, 6770, 6771, 7, 2065, 2, 2, 6771, 6772, 7, 304, 2, 2, 6772, 6786, 7, 779, 2, 2, 6773, 6776, 7, 392, 2, 2, 6774, 6775, 7, 556, 2, 2, 6775, 6777, 7, 1508, 2, 2, 6776, 6774, 3, 2, 2, 2, 6776, 6777, 3, 2, 2, 2, 6777, 6786, 3, 2, 2, 2, 6778, 6786, 7, 968, 2, 2, 6779, 6780, 7, 2022, 2, 2, 6780, 6781, 7, 174, 2, 2, 6781, 6786, 7, 2219, 2, 2, 6782, 6783, 7, 2022, 2, 2, 6783, 6786, 7, 256, 2, 2, 6784, 6786, 5, 476, 239, 2, 6785, 6770, 3, 2, 2, 2, 6785, 6773, 3, 2, 2, 2, 6785, 6778, 3, 2, 2, 2, 6785, 6779, 3, 2, 2, 2, 6785, 6782, 3, 2, 2, 2, 6785, 6784, 3, 2, 2, 2, 6786, 6787, 3, 2, 2, 2, 6787, 6785, 3, 2, 2, 2, 6787, 6788, 3, 2, 2, 2, 6788, 6792, 3, 2, 2, 2, 6789, 6792, 7, 527, 2, 2, 6790, 6792, 7, 160, 2, 2, 6791, 6785, 3, 2, 2, 2, 6791, 6789, 3, 2, 2, 2, 6791, 6790, 3, 2, 2, 2, 6791, 6792, 3, 2, 2, 2, 6792, 6802, 3, 2, 2, 2, 6793, 6794, 7, 1966, 2, 2, 6794, 6795, 7, 782, 2, 2, 6795, 6799, 7, 1568, 2, 2, 6796, 6800, 5, 686, 344, 2, 6797, 6798, 7, 722, 2, 2, 6798, 6800, 7, 605, 2, 2, 6799, 6796, 3, 2, 2, 2, 6799, 6797, 3, 2, 2, 2, 6800, 6802, 3, 2, 2, 2, 6801, 6767, 3, 2, 2, 2, 6801, 6793, 3, 2, 2, 2, 6802, 685, 3, 2, 2, 2, 6803, 6804, 5, 1494, 748, 2, 6804, 687, 3, 2, 2, 2, 6805, 6806, 7, 1406, 2, 2, 6806, 6807, 7, 521, 2, 2, 6807, 6812, 5, 750, 376, 2, 6808, 6809, 7, 2231, 2, 2, 6809, 6811, 5, 750, 376, 2, 6810, 6808, 3, 2, 2, 2, 6811, 6814, 3, 2, 2, 2, 6812, 6810, 3, 2, 2, 2, 6812, 6813, 3, 2, 2, 2, 6813, 6815, 3, 2, 2, 2, 6814, 6812, 3, 2, 2, 2, 6815, 6816, 7, 1966, 2, 2, 6816, 6817, 5, 750, 376, 2, 6817, 6822, 3, 2, 2, 2, 6818, 6822, 5, 690, 346, 2, 6819, 6822, 5, 692, 347, 2, 6820, 6822, 5, 694, 348, 2, 6821, 6805, 3, 2, 2, 2, 6821, 6818, 3, 2, 2, 2, 6821, 6819, 3, 2, 2, 2, 6821, 6820, 3, 2, 2, 2, 6822, 689, 3, 2, 2, 2, 6823, 6824, 7, 290, 2, 2, 6824, 6827, 7, 320, 2, 2, 6825, 6828, 5, 750, 376, 2, 6826, 6828, 5, 748, 375, 2, 6827, 6825, 3, 2, 2, 2, 6827, 6826, 3, 2, 2, 2, 6828, 6836, 3, 2, 2, 2, 6829, 6832, 7, 2231, 2, 2, 6830, 6833, 5, 750, 376, 2, 6831, 6833, 5, 748, 375, 2, 6832, 6830, 3, 2, 2, 2, 6832, 6831, 3, 2, 2, 2, 6833, 6835, 3, 2, 2, 2, 6834, 6829, 3, 2, 2, 2, 6835, 6838, 3, 2, 2, 2, 6836, 6834, 3, 2, 2, 2, 6836, 6837, 3, 2, 2, 2, 6837, 6841, 3, 2, 2, 2, 6838, 6836, 3, 2, 2, 2, 6839, 6840, 7, 63, 2, 2, 6840, 6842, 7, 905, 2, 2, 6841, 6839, 3, 2, 2, 2, 6841, 6842, 3, 2, 2, 2, 6842, 691, 3, 2, 2, 2, 6843, 6846, 7, 320, 2, 2, 6844, 6847, 5, 750, 376, 2, 6845, 6847, 5, 748, 375, 2, 6846, 6844, 3, 2, 2, 2, 6846, 6845, 3, 2, 2, 2, 6847, 6855, 3, 2, 2, 2, 6848, 6851, 7, 2231, 2, 2, 6849, 6852, 5, 750, 376, 2, 6850, 6852, 5, 748, 375, 2, 6851, 6849, 3, 2, 2, 2, 6851, 6850, 3, 2, 2, 2, 6852, 6854, 3, 2, 2, 2, 6853, 6848, 3, 2, 2, 2, 6854, 6857, 3, 2, 2, 2, 6855, 6853, 3, 2, 2, 2, 6855, 6856, 3, 2, 2, 2, 6856, 6869, 3, 2, 2, 2, 6857, 6855, 3, 2, 2, 2, 6858, 6870, 7, 1127, 2, 2, 6859, 6862, 7, 1114, 2, 2, 6860, 6861, 7, 548, 2, 2, 6861, 6863, 7, 413, 2, 2, 6862, 6860, 3, 2, 2, 2, 6862, 6863, 3, 2, 2, 2, 6863, 6870, 3, 2, 2, 2, 6864, 6865, 7, 1414, 2, 2, 6865, 6870, 5, 608, 305, 2, 6866, 6870, 5, 470, 236, 2, 6867, 6868, 7, 447, 2, 2, 6868, 6870, 7, 95, 2, 2, 6869, 6858, 3, 2, 2, 2, 6869, 6859, 3, 2, 2, 2, 6869, 6864, 3, 2, 2, 2, 6869, 6866, 3, 2, 2, 2, 6869, 6867, 3, 2, 2, 2, 6870, 693, 3, 2, 2, 2, 6871, 6874, 7, 1920, 2, 2, 6872, 6875, 5, 750, 376, 2, 6873, 6875, 5, 748, 375, 2, 6874, 6872, 3, 2, 2, 2, 6874, 6873, 3, 2, 2, 2, 6875, 6883, 3, 2, 2, 2, 6876, 6879, 7, 2231, 2, 2, 6877, 6880, 5, 750, 376, 2, 6878, 6880, 5, 748, 375, 2, 6879, 6877, 3, 2, 2, 2, 6879, 6878, 3, 2, 2, 2, 6880, 6882, 3, 2, 2, 2, 6881, 6876, 3, 2, 2, 2, 6882, 6885, 3, 2, 2, 2, 6883, 6881, 3, 2, 2, 2, 6883, 6884, 3, 2, 2, 2, 6884, 6894, 3, 2, 2, 2, 6885, 6883, 3, 2, 2, 2, 6886, 6887, 7, 1414, 2, 2, 6887, 6895, 5, 608, 305, 2, 6888, 6895, 5, 470, 236, 2, 6889, 6890, 7, 413, 2, 2, 6890, 6891, 7, 621, 2, 2, 6891, 6895, 7, 321, 2, 2, 6892, 6895, 7, 1127, 2, 2, 6893, 6895, 7, 1114, 2, 2, 6894, 6886, 3, 2, 2, 2, 6894, 6888, 3, 2, 2, 2, 6894, 6889, 3, 2, 2, 2, 6894, 6892, 3, 2, 2, 2, 6894, 6893, 3, 2, 2, 2, 6895, 695, 3, 2, 2, 2, 6896, 6898, 7, 61, 2, 2, 6897, 6899, 7, 802, 2, 2, 6898, 6897, 3, 2, 2, 2, 6898, 6899, 3, 2, 2, 2, 6899, 6902, 3, 2, 2, 2, 6900, 6902, 7, 941, 2, 2, 6901, 6896, 3, 2, 2, 2, 6901, 6900, 3, 2, 2, 2, 6902, 6943, 3, 2, 2, 2, 6903, 6905, 7, 1012, 2, 2, 6904, 6903, 3, 2, 2, 2, 6904, 6905, 3, 2, 2, 2, 6905, 6906, 3, 2, 2, 2, 6906, 6907, 7, 544, 2, 2, 6907, 6943, 7, 781, 2, 2, 6908, 6909, 7, 1406, 2, 2, 6909, 6910, 7, 521, 2, 2, 6910, 6915, 5, 750, 376, 2, 6911, 6912, 7, 2231, 2, 2, 6912, 6914, 5, 750, 376, 2, 6913, 6911, 3, 2, 2, 2, 6914, 6917, 3, 2, 2, 2, 6915, 6913, 3, 2, 2, 2, 6915, 6916, 3, 2, 2, 2, 6916, 6918, 3, 2, 2, 2, 6917, 6915, 3, 2, 2, 2, 6918, 6919, 7, 1966, 2, 2, 6919, 6920, 5, 750, 376, 2, 6920, 6943, 3, 2, 2, 2, 6921, 6923, 7, 191, 2, 2, 6922, 6924, 7, 1995, 2, 2, 6923, 6922, 3, 2, 2, 2, 6923, 6924, 3, 2, 2, 2, 6924, 6925, 3, 2, 2, 2, 6925, 6926, 7, 779, 2, 2, 6926, 6931, 5, 712, 357, 2, 6927, 6928, 7, 2231, 2, 2, 6928, 6930, 5, 712, 357, 2, 6929, 6927, 3, 2, 2, 2, 6930, 6933, 3, 2, 2, 2, 6931, 6929, 3, 2, 2, 2, 6931, 6932, 3, 2, 2, 2, 6932, 6936, 3, 2, 2, 2, 6933, 6931, 3, 2, 2, 2, 6934, 6935, 7, 2019, 2, 2, 6935, 6937, 7, 320, 2, 2, 6936, 6934, 3, 2, 2, 2, 6936, 6937, 3, 2, 2, 2, 6937, 6943, 3, 2, 2, 2, 6938, 6943, 5, 698, 350, 2, 6939, 6943, 5, 702, 352, 2, 6940, 6943, 5, 704, 353, 2, 6941, 6943, 5, 706, 354, 2, 6942, 6901, 3, 2, 2, 2, 6942, 6904, 3, 2, 2, 2, 6942, 6908, 3, 2, 2, 2, 6942, 6921, 3, 2, 2, 2, 6942, 6938, 3, 2, 2, 2, 6942, 6939, 3, 2, 2, 2, 6942, 6940, 3, 2, 2, 2, 6942, 6941, 3, 2, 2, 2, 6943, 697, 3, 2, 2, 2, 6944, 6946, 7, 20, 2, 2, 6945, 6947, 7, 1568, 2, 2, 6946, 6945, 3, 2, 2, 2, 6946, 6947, 3, 2, 2, 2, 6947, 6948, 3, 2, 2, 2, 6948, 6980, 7, 779, 2, 2, 6949, 6950, 5, 700, 351, 2, 6950, 6951, 5, 468, 235, 2, 6951, 6953, 3, 2, 2, 2, 6952, 6949, 3, 2, 2, 2, 6953, 6954, 3, 2, 2, 2, 6954, 6952, 3, 2, 2, 2, 6954, 6955, 3, 2, 2, 2, 6955, 6981, 3, 2, 2, 2, 6956, 6957, 7, 828, 2, 2, 6957, 6959, 5, 750, 376, 2, 6958, 6960, 7, 1434, 2, 2, 6959, 6958, 3, 2, 2, 2, 6959, 6960, 3, 2, 2, 2, 6960, 6968, 3, 2, 2, 2, 6961, 6962, 7, 2231, 2, 2, 6962, 6964, 5, 750, 376, 2, 6963, 6965, 7, 1434, 2, 2, 6964, 6963, 3, 2, 2, 2, 6964, 6965, 3, 2, 2, 2, 6965, 6967, 3, 2, 2, 2, 6966, 6961, 3, 2, 2, 2, 6967, 6970, 3, 2, 2, 2, 6968, 6966, 3, 2, 2, 2, 6968, 6969, 3, 2, 2, 2, 6969, 6971, 3, 2, 2, 2, 6970, 6968, 3, 2, 2, 2, 6971, 6972, 7, 1966, 2, 2, 6972, 6977, 5, 712, 357, 2, 6973, 6974, 7, 2231, 2, 2, 6974, 6976, 5, 712, 357, 2, 6975, 6973, 3, 2, 2, 2, 6976, 6979, 3, 2, 2, 2, 6977, 6975, 3, 2, 2, 2, 6977, 6978, 3, 2, 2, 2, 6978, 6981, 3, 2, 2, 2, 6979, 6977, 3, 2, 2, 2, 6980, 6952, 3, 2, 2, 2, 6980, 6956, 3, 2, 2, 2, 6981, 699, 3, 2, 2, 2, 6982, 6984, 7, 2231, 2, 2, 6983, 6982, 3, 2, 2, 2, 6983, 6984, 3, 2, 2, 2, 6984, 6987, 3, 2, 2, 2, 6985, 6986, 7, 1929, 2, 2, 6986, 6988, 7, 2219, 2, 2, 6987, 6985, 3, 2, 2, 2, 6987, 6988, 3, 2, 2, 2, 6988, 6989, 3, 2, 2, 2, 6989, 6990, 7, 575, 2, 2, 6990, 6991, 7, 2219, 2, 2, 6991, 701, 3, 2, 2, 2, 6992, 6994, 7, 413, 2, 2, 6993, 6995, 7, 1568, 2, 2, 6994, 6993, 3, 2, 2, 2, 6994, 6995, 3, 2, 2, 2, 6995, 6996, 3, 2, 2, 2, 6996, 7014, 7, 779, 2, 2, 6997, 7002, 5, 712, 357, 2, 6998, 6999, 7, 2231, 2, 2, 6999, 7001, 5, 712, 357, 2, 7000, 6998, 3, 2, 2, 2, 7001, 7004, 3, 2, 2, 2, 7002, 7000, 3, 2, 2, 2, 7002, 7003, 3, 2, 2, 2, 7003, 7015, 3, 2, 2, 2, 7004, 7002, 3, 2, 2, 2, 7005, 7006, 7, 828, 2, 2, 7006, 7011, 5, 750, 376, 2, 7007, 7008, 7, 2231, 2, 2, 7008, 7010, 5, 750, 376, 2, 7009, 7007, 3, 2, 2, 2, 7010, 7013, 3, 2, 2, 2, 7011, 7009, 3, 2, 2, 2, 7011, 7012, 3, 2, 2, 2, 7012, 7015, 3, 2, 2, 2, 7013, 7011, 3, 2, 2, 2, 7014, 6997, 3, 2, 2, 2, 7014, 7005, 3, 2, 2, 2, 7015, 703, 3, 2, 2, 2, 7016, 7017, 7, 1626, 2, 2, 7017, 7018, 7, 37, 2, 2, 7018, 7019, 7, 780, 2, 2, 7019, 7020, 7, 1966, 2, 2, 7020, 7021, 7, 134, 2, 2, 7021, 7022, 7, 2219, 2, 2, 7022, 705, 3, 2, 2, 2, 7023, 7024, 5, 708, 355, 2, 7024, 7025, 7, 1622, 2, 2, 7025, 7029, 7, 785, 2, 2, 7026, 7030, 7, 319, 2, 2, 7027, 7030, 5, 632, 317, 2, 7028, 7030, 5, 710, 356, 2, 7029, 7026, 3, 2, 2, 2, 7029, 7027, 3, 2, 2, 2, 7029, 7028, 3, 2, 2, 2, 7030, 707, 3, 2, 2, 2, 7031, 7032, 9, 13, 2, 2, 7032, 709, 3, 2, 2, 2, 7033, 7034, 7, 319, 2, 2, 7034, 7035, 7, 548, 2, 2, 7035, 7036, 7, 1315, 2, 2, 7036, 7037, 7, 1410, 2, 2, 7037, 711, 3, 2, 2, 2, 7038, 7039, 7, 575, 2, 2, 7039, 7053, 7, 2219, 2, 2, 7040, 7041, 7, 2225, 2, 2, 7041, 7046, 5, 750, 376, 2, 7042, 7043, 7, 2231, 2, 2, 7043, 7045, 5, 750, 376, 2, 7044, 7042, 3, 2, 2, 2, 7045, 7048, 3, 2, 2, 2, 7046, 7044, 3, 2, 2, 2, 7046, 7047, 3, 2, 2, 2, 7047, 7049, 3, 2, 2, 2, 7048, 7046, 3, 2, 2, 2, 7049, 7050, 7, 2226, 2, 2, 7050, 7053, 3, 2, 2, 2, 7051, 7053, 5, 750, 376, 2, 7052, 7038, 3, 2, 2, 2, 7052, 7040, 3, 2, 2, 2, 7052, 7051, 3, 2, 2, 2, 7053, 713, 3, 2, 2, 2, 7054, 7056, 7, 290, 2, 2, 7055, 7057, 9, 73, 2, 2, 7056, 7055, 3, 2, 2, 2, 7056, 7057, 3, 2, 2, 2, 7057, 7058, 3, 2, 2, 2, 7058, 7059, 7, 1568, 2, 2, 7059, 7060, 7, 269, 2, 2, 7060, 7061, 7, 63, 2, 2, 7061, 7063, 5, 750, 376, 2, 7062, 7064, 7, 1434, 2, 2, 7063, 7062, 3, 2, 2, 2, 7063, 7064, 3, 2, 2, 2, 7064, 7076, 3, 2, 2, 2, 7065, 7066, 7, 95, 2, 2, 7066, 7067, 7, 269, 2, 2, 7067, 7073, 7, 1966, 2, 2, 7068, 7070, 5, 750, 376, 2, 7069, 7071, 7, 1434, 2, 2, 7070, 7069, 3, 2, 2, 2, 7070, 7071, 3, 2, 2, 2, 7071, 7074, 3, 2, 2, 2, 7072, 7074, 5, 716, 359, 2, 7073, 7068, 3, 2, 2, 2, 7073, 7072, 3, 2, 2, 2, 7074, 7076, 3, 2, 2, 2, 7075, 7054, 3, 2, 2, 2, 7075, 7065, 3, 2, 2, 2, 7076, 715, 3, 2, 2, 2, 7077, 7083, 7, 1968, 2, 2, 7078, 7079, 7, 63, 2, 2, 7079, 7081, 5, 750, 376, 2, 7080, 7082, 7, 1434, 2, 2, 7081, 7080, 3, 2, 2, 2, 7081, 7082, 3, 2, 2, 2, 7082, 7084, 3, 2, 2, 2, 7083, 7078, 3, 2, 2, 2, 7083, 7084, 3, 2, 2, 2, 7084, 7086, 3, 2, 2, 2, 7085, 7087, 9, 70, 2, 2, 7086, 7085, 3, 2, 2, 2, 7086, 7087, 3, 2, 2, 2, 7087, 717, 3, 2, 2, 2, 7088, 7096, 5, 720, 361, 2, 7089, 7096, 5, 722, 362, 2, 7090, 7096, 5, 724, 363, 2, 7091, 7096, 5, 726, 364, 2, 7092, 7096, 5, 728, 365, 2, 7093, 7096, 5, 730, 366, 2, 7094, 7096, 5, 732, 367, 2, 7095, 7088, 3, 2, 2, 2, 7095, 7089, 3, 2, 2, 2, 7095, 7090, 3, 2, 2, 2, 7095, 7091, 3, 2, 2, 2, 7095, 7092, 3, 2, 2, 2, 7095, 7093, 3, 2, 2, 2, 7095, 7094, 3, 2, 2, 2, 7096, 7098, 3, 2, 2, 2, 7097, 7099, 5, 476, 239, 2, 7098, 7097, 3, 2, 2, 2, 7098, 7099, 3, 2, 2, 2, 7099, 719, 3, 2, 2, 2, 7100, 7102, 7, 12, 2, 2, 7101, 7103, 9, 73, 2, 2, 7102, 7101, 3, 2, 2, 2, 7102, 7103, 3, 2, 2, 2, 7103, 7104, 3, 2, 2, 2, 7104, 7105, 7, 1568, 2, 2, 7105, 7108, 7, 318, 2, 2, 7106, 7107, 7, 527, 2, 2, 7107, 7109, 7, 56, 2, 2, 7108, 7106, 3, 2, 2, 2, 7108, 7109, 3, 2, 2, 2, 7109, 721, 3, 2, 2, 2, 7110, 7111, 7, 1512, 2, 2, 7111, 7112, 7, 1568, 2, 2, 7112, 7113, 7, 318, 2, 2, 7113, 7114, 7, 1966, 2, 2, 7114, 7115, 7, 816, 2, 2, 7115, 7116, 9, 74, 2, 2, 7116, 723, 3, 2, 2, 2, 7117, 7120, 7, 1386, 2, 2, 7118, 7119, 7, 1174, 2, 2, 7119, 7121, 7, 1409, 2, 2, 7120, 7118, 3, 2, 2, 2, 7120, 7121, 3, 2, 2, 2, 7121, 7122, 3, 2, 2, 2, 7122, 7123, 9, 73, 2, 2, 7123, 7124, 7, 779, 2, 2, 7124, 725, 3, 2, 2, 2, 7125, 7126, 9, 75, 2, 2, 7126, 7127, 7, 1966, 2, 2, 7127, 7156, 7, 1625, 2, 2, 7128, 7149, 7, 1966, 2, 2, 7129, 7131, 9, 73, 2, 2, 7130, 7129, 3, 2, 2, 2, 7130, 7131, 3, 2, 2, 2, 7131, 7132, 3, 2, 2, 2, 7132, 7138, 7, 1306, 2, 2, 7133, 7135, 7, 1250, 2, 2, 7134, 7133, 3, 2, 2, 2, 7134, 7135, 3, 2, 2, 2, 7135, 7136, 3, 2, 2, 2, 7136, 7138, 7, 1568, 2, 2, 7137, 7130, 3, 2, 2, 2, 7137, 7134, 3, 2, 2, 2, 7138, 7145, 3, 2, 2, 2, 7139, 7141, 9, 54, 2, 2, 7140, 7139, 3, 2, 2, 2, 7140, 7141, 3, 2, 2, 2, 7141, 7142, 3, 2, 2, 2, 7142, 7143, 7, 1508, 2, 2, 7143, 7144, 7, 1524, 2, 2, 7144, 7146, 9, 76, 2, 2, 7145, 7140, 3, 2, 2, 2, 7145, 7146, 3, 2, 2, 2, 7146, 7150, 3, 2, 2, 2, 7147, 7148, 7, 782, 2, 2, 7148, 7150, 7, 1568, 2, 2, 7149, 7137, 3, 2, 2, 2, 7149, 7147, 3, 2, 2, 2, 7150, 7154, 3, 2, 2, 2, 7151, 7152, 7, 782, 2, 2, 7152, 7154, 7, 1568, 2, 2, 7153, 7128, 3, 2, 2, 2, 7153, 7151, 3, 2, 2, 2, 7154, 7157, 3, 2, 2, 2, 7155, 7157, 7, 160, 2, 2, 7156, 7153, 3, 2, 2, 2, 7156, 7155, 3, 2, 2, 2, 7156, 7157, 3, 2, 2, 2, 7157, 727, 3, 2, 2, 2, 7158, 7159, 7, 1571, 2, 2, 7159, 7160, 7, 782, 2, 2, 7160, 7161, 7, 1568, 2, 2, 7161, 7163, 7, 56, 2, 2, 7162, 7164, 7, 615, 2, 2, 7163, 7162, 3, 2, 2, 2, 7163, 7164, 3, 2, 2, 2, 7164, 7166, 3, 2, 2, 2, 7165, 7167, 7, 968, 2, 2, 7166, 7165, 3, 2, 2, 2, 7166, 7167, 3, 2, 2, 2, 7167, 7179, 3, 2, 2, 2, 7168, 7169, 7, 905, 2, 2, 7169, 7170, 7, 1306, 2, 2, 7170, 7180, 5, 1494, 748, 2, 7171, 7173, 7, 656, 2, 2, 7172, 7174, 7, 2219, 2, 2, 7173, 7172, 3, 2, 2, 2, 7173, 7174, 3, 2, 2, 2, 7174, 7180, 3, 2, 2, 2, 7175, 7176, 7, 1539, 2, 2, 7176, 7177, 7, 505, 2, 2, 7177, 7180, 7, 1972, 2, 2, 7178, 7180, 7, 527, 2, 2, 7179, 7168, 3, 2, 2, 2, 7179, 7171, 3, 2, 2, 2, 7179, 7175, 3, 2, 2, 2, 7179, 7178, 3, 2, 2, 2, 7179, 7180, 3, 2, 2, 2, 7180, 729, 3, 2, 2, 2, 7181, 7182, 9, 77, 2, 2, 7182, 7183, 7, 782, 2, 2, 7183, 7184, 7, 1568, 2, 2, 7184, 7185, 7, 56, 2, 2, 7185, 731, 3, 2, 2, 2, 7186, 7187, 7, 271, 2, 2, 7187, 7188, 7, 1966, 2, 2, 7188, 7189, 9, 78, 2, 2, 7189, 7190, 7, 1568, 2, 2, 7190, 733, 3, 2, 2, 2, 7191, 7192, 7, 353, 2, 2, 7192, 7193, 7, 426, 2, 2, 7193, 7194, 7, 2245, 2, 2, 7194, 7238, 5, 746, 374, 2, 7195, 7196, 7, 1512, 2, 2, 7196, 7197, 7, 353, 2, 2, 7197, 7198, 9, 45, 2, 2, 7198, 7238, 7, 1911, 2, 2, 7199, 7200, 7, 353, 2, 2, 7200, 7201, 7, 1911, 2, 2, 7201, 7238, 5, 838, 420, 2, 7202, 7203, 7, 353, 2, 2, 7203, 7204, 7, 1922, 2, 2, 7204, 7207, 7, 1911, 2, 2, 7205, 7208, 5, 838, 420, 2, 7206, 7208, 5, 436, 219, 2, 7207, 7205, 3, 2, 2, 2, 7207, 7206, 3, 2, 2, 2, 7208, 7238, 3, 2, 2, 2, 7209, 7210, 7, 1406, 2, 2, 7210, 7211, 7, 570, 2, 2, 7211, 7212, 7, 1966, 2, 2, 7212, 7215, 5, 744, 373, 2, 7213, 7214, 7, 2218, 2, 2, 7214, 7216, 5, 742, 372, 2, 7215, 7213, 3, 2, 2, 2, 7216, 7217, 3, 2, 2, 2, 7217, 7215, 3, 2, 2, 2, 7217, 7218, 3, 2, 2, 2, 7218, 7238, 3, 2, 2, 2, 7219, 7220, 7, 441, 2, 2, 7220, 7221, 7, 131, 2, 2, 7221, 7222, 7, 174, 2, 2, 7222, 7229, 7, 1970, 2, 2, 7223, 7224, 7, 2065, 2, 2, 7224, 7225, 7, 521, 2, 2, 7225, 7227, 5, 750, 376, 2, 7226, 7228, 7, 1434, 2, 2, 7227, 7226, 3, 2, 2, 2, 7227, 7228, 3, 2, 2, 2, 7228, 7230, 3, 2, 2, 2, 7229, 7223, 3, 2, 2, 2, 7229, 7230, 3, 2, 2, 2, 7230, 7238, 3, 2, 2, 2, 7231, 7232, 7, 385, 2, 2, 7232, 7233, 7, 131, 2, 2, 7233, 7234, 7, 174, 2, 2, 7234, 7238, 7, 1970, 2, 2, 7235, 7238, 5, 440, 221, 2, 7236, 7238, 5, 736, 369, 2, 7237, 7191, 3, 2, 2, 2, 7237, 7195, 3, 2, 2, 2, 7237, 7199, 3, 2, 2, 2, 7237, 7202, 3, 2, 2, 2, 7237, 7209, 3, 2, 2, 2, 7237, 7219, 3, 2, 2, 2, 7237, 7231, 3, 2, 2, 2, 7237, 7235, 3, 2, 2, 2, 7237, 7236, 3, 2, 2, 2, 7238, 735, 3, 2, 2, 2, 7239, 7240, 7, 1512, 2, 2, 7240, 7241, 7, 1940, 2, 2, 7241, 7242, 7, 2245, 2, 2, 7242, 7243, 7, 2221, 2, 2, 7243, 737, 3, 2, 2, 2, 7244, 7245, 5, 650, 326, 2, 7245, 7246, 7, 674, 2, 2, 7246, 7247, 7, 2221, 2, 2, 7247, 739, 3, 2, 2, 2, 7248, 7249, 7, 582, 2, 2, 7249, 7250, 9, 79, 2, 2, 7250, 741, 3, 2, 2, 2, 7251, 7252, 5, 1494, 748, 2, 7252, 743, 3, 2, 2, 2, 7253, 7254, 5, 1494, 748, 2, 7254, 745, 3, 2, 2, 2, 7255, 7256, 5, 1494, 748, 2, 7256, 747, 3, 2, 2, 2, 7257, 7258, 7, 2219, 2, 2, 7258, 749, 3, 2, 2, 2, 7259, 7260, 7, 2221, 2, 2, 7260, 751, 3, 2, 2, 2, 7261, 7262, 7, 41, 2, 2, 7262, 7263, 7, 1914, 2, 2, 7263, 7269, 5, 1428, 715, 2, 7264, 7270, 3, 2, 2, 2, 7265, 7270, 5, 754, 378, 2, 7266, 7270, 5, 872, 437, 2, 7267, 7270, 5, 786, 394, 2, 7268, 7270, 5, 776, 389, 2, 7269, 7264, 3, 2, 2, 2, 7269, 7265, 3, 2, 2, 2, 7269, 7266, 3, 2, 2, 2, 7269, 7267, 3, 2, 2, 2, 7269, 7268, 3, 2, 2, 2, 7270, 7283, 3, 2, 2, 2, 7271, 7280, 5, 766, 384, 2, 7272, 7277, 5, 650, 326, 2, 7273, 7274, 7, 1914, 2, 2, 7274, 7278, 7, 778, 2, 2, 7275, 7276, 7, 37, 2, 2, 7276, 7278, 7, 1979, 2, 2, 7277, 7273, 3, 2, 2, 2, 7277, 7275, 3, 2, 2, 2, 7278, 7280, 3, 2, 2, 2, 7279, 7271, 3, 2, 2, 2, 7279, 7272, 3, 2, 2, 2, 7280, 7281, 3, 2, 2, 2, 7281, 7279, 3, 2, 2, 2, 7281, 7282, 3, 2, 2, 2, 7282, 7284, 3, 2, 2, 2, 7283, 7279, 3, 2, 2, 2, 7283, 7284, 3, 2, 2, 2, 7284, 7285, 3, 2, 2, 2, 7285, 7286, 7, 2243, 2, 2, 7286, 753, 3, 2, 2, 2, 7287, 7299, 5, 756, 379, 2, 7288, 7289, 7, 1406, 2, 2, 7289, 7290, 7, 1966, 2, 2, 7290, 7299, 5, 1428, 715, 2, 7291, 7299, 5, 638, 320, 2, 7292, 7293, 7, 1355, 2, 2, 7293, 7299, 7, 1129, 2, 2, 7294, 7295, 7, 1355, 2, 2, 7295, 7299, 7, 2127, 2, 2, 7296, 7297, 7, 1398, 2, 2, 7297, 7299, 7, 2221, 2, 2, 7298, 7287, 3, 2, 2, 2, 7298, 7288, 3, 2, 2, 2, 7298, 7291, 3, 2, 2, 2, 7298, 7292, 3, 2, 2, 2, 7298, 7294, 3, 2, 2, 2, 7298, 7296, 3, 2, 2, 2, 7299, 755, 3, 2, 2, 2, 7300, 7318, 5, 612, 307, 2, 7301, 7318, 5, 450, 226, 2, 7302, 7318, 5, 610, 306, 2, 7303, 7318, 5, 628, 315, 2, 7304, 7318, 5, 634, 318, 2, 7305, 7318, 5, 636, 319, 2, 7306, 7318, 9, 53, 2, 2, 7307, 7308, 7, 1426, 2, 2, 7308, 7309, 7, 2225, 2, 2, 7309, 7310, 7, 862, 2, 2, 7310, 7311, 9, 59, 2, 2, 7311, 7318, 7, 2226, 2, 2, 7312, 7318, 5, 642, 322, 2, 7313, 7318, 5, 640, 321, 2, 7314, 7318, 5, 476, 239, 2, 7315, 7318, 5, 622, 312, 2, 7316, 7318, 5, 624, 313, 2, 7317, 7300, 3, 2, 2, 2, 7317, 7301, 3, 2, 2, 2, 7317, 7302, 3, 2, 2, 2, 7317, 7303, 3, 2, 2, 2, 7317, 7304, 3, 2, 2, 2, 7317, 7305, 3, 2, 2, 2, 7317, 7306, 3, 2, 2, 2, 7317, 7307, 3, 2, 2, 2, 7317, 7312, 3, 2, 2, 2, 7317, 7313, 3, 2, 2, 2, 7317, 7314, 3, 2, 2, 2, 7317, 7315, 3, 2, 2, 2, 7317, 7316, 3, 2, 2, 2, 7318, 7319, 3, 2, 2, 2, 7319, 7317, 3, 2, 2, 2, 7319, 7320, 3, 2, 2, 2, 7320, 7322, 3, 2, 2, 2, 7321, 7323, 5, 758, 380, 2, 7322, 7321, 3, 2, 2, 2, 7322, 7323, 3, 2, 2, 2, 7323, 757, 3, 2, 2, 2, 7324, 7329, 5, 778, 390, 2, 7325, 7329, 5, 762, 382, 2, 7326, 7329, 5, 760, 381, 2, 7327, 7329, 7, 207, 2, 2, 7328, 7324, 3, 2, 2, 2, 7328, 7325, 3, 2, 2, 2, 7328, 7326, 3, 2, 2, 2, 7328, 7327, 3, 2, 2, 2, 7329, 759, 3, 2, 2, 2, 7330, 7331, 7, 804, 2, 2, 7331, 7334, 7, 1914, 2, 2, 7332, 7335, 5, 634, 318, 2, 7333, 7335, 5, 636, 319, 2, 7334, 7332, 3, 2, 2, 2, 7334, 7333, 3, 2, 2, 2, 7335, 761, 3, 2, 2, 2, 7336, 7347, 5, 764, 383, 2, 7337, 7342, 7, 1186, 2, 2, 7338, 7343, 5, 618, 310, 2, 7339, 7343, 5, 634, 318, 2, 7340, 7343, 5, 638, 320, 2, 7341, 7343, 5, 636, 319, 2, 7342, 7338, 3, 2, 2, 2, 7342, 7339, 3, 2, 2, 2, 7342, 7340, 3, 2, 2, 2, 7342, 7341, 3, 2, 2, 2, 7343, 7344, 3, 2, 2, 2, 7344, 7342, 3, 2, 2, 2, 7344, 7345, 3, 2, 2, 2, 7345, 7347, 3, 2, 2, 2, 7346, 7336, 3, 2, 2, 2, 7346, 7337, 3, 2, 2, 2, 7347, 763, 3, 2, 2, 2, 7348, 7349, 7, 20, 2, 2, 7349, 7351, 7, 1186, 2, 2, 7350, 7352, 5, 618, 310, 2, 7351, 7350, 3, 2, 2, 2, 7351, 7352, 3, 2, 2, 2, 7352, 7369, 3, 2, 2, 2, 7353, 7354, 7, 2225, 2, 2, 7354, 7356, 7, 1209, 2, 2, 7355, 7357, 5, 618, 310, 2, 7356, 7355, 3, 2, 2, 2, 7356, 7357, 3, 2, 2, 2, 7357, 7365, 3, 2, 2, 2, 7358, 7359, 7, 2231, 2, 2, 7359, 7361, 7, 1209, 2, 2, 7360, 7362, 5, 618, 310, 2, 7361, 7360, 3, 2, 2, 2, 7361, 7362, 3, 2, 2, 2, 7362, 7364, 3, 2, 2, 2, 7363, 7358, 3, 2, 2, 2, 7364, 7367, 3, 2, 2, 2, 7365, 7363, 3, 2, 2, 2, 7365, 7366, 3, 2, 2, 2, 7366, 7368, 3, 2, 2, 2, 7367, 7365, 3, 2, 2, 2, 7368, 7370, 7, 2226, 2, 2, 7369, 7353, 3, 2, 2, 2, 7369, 7370, 3, 2, 2, 2, 7370, 765, 3, 2, 2, 2, 7371, 7373, 9, 7, 2, 2, 7372, 7374, 9, 41, 2, 2, 7373, 7372, 3, 2, 2, 2, 7373, 7374, 3, 2, 2, 2, 7374, 7391, 3, 2, 2, 2, 7375, 7376, 7, 2004, 2, 2, 7376, 7377, 7, 2225, 2, 2, 7377, 7382, 5, 1426, 714, 2, 7378, 7379, 7, 2231, 2, 2, 7379, 7381, 5, 1426, 714, 2, 7380, 7378, 3, 2, 2, 2, 7381, 7384, 3, 2, 2, 2, 7382, 7380, 3, 2, 2, 2, 7382, 7383, 3, 2, 2, 2, 7383, 7385, 3, 2, 2, 2, 7384, 7382, 3, 2, 2, 2, 7385, 7386, 7, 2226, 2, 2, 7386, 7392, 3, 2, 2, 2, 7387, 7388, 7, 1306, 2, 2, 7388, 7392, 7, 724, 2, 2, 7389, 7390, 7, 259, 2, 2, 7390, 7392, 5, 1398, 700, 2, 7391, 7375, 3, 2, 2, 2, 7391, 7387, 3, 2, 2, 2, 7391, 7389, 3, 2, 2, 2, 7392, 7394, 3, 2, 2, 2, 7393, 7395, 5, 768, 385, 2, 7394, 7393, 3, 2, 2, 2, 7394, 7395, 3, 2, 2, 2, 7395, 7397, 3, 2, 2, 2, 7396, 7398, 5, 774, 388, 2, 7397, 7396, 3, 2, 2, 2, 7397, 7398, 3, 2, 2, 2, 7398, 7400, 3, 2, 2, 2, 7399, 7401, 7, 164, 2, 2, 7400, 7399, 3, 2, 2, 2, 7400, 7401, 3, 2, 2, 2, 7401, 7404, 3, 2, 2, 2, 7402, 7403, 9, 80, 2, 2, 7403, 7405, 7, 633, 2, 2, 7404, 7402, 3, 2, 2, 2, 7404, 7405, 3, 2, 2, 2, 7405, 767, 3, 2, 2, 2, 7406, 7407, 7, 2065, 2, 2, 7407, 7414, 7, 633, 2, 2, 7408, 7415, 5, 1416, 709, 2, 7409, 7410, 7, 2225, 2, 2, 7410, 7411, 5, 182, 92, 2, 7411, 7412, 7, 2226, 2, 2, 7412, 7415, 3, 2, 2, 2, 7413, 7415, 5, 770, 386, 2, 7414, 7408, 3, 2, 2, 2, 7414, 7409, 3, 2, 2, 2, 7414, 7413, 3, 2, 2, 2, 7414, 7415, 3, 2, 2, 2, 7415, 769, 3, 2, 2, 2, 7416, 7429, 5, 612, 307, 2, 7417, 7429, 5, 450, 226, 2, 7418, 7421, 7, 1911, 2, 2, 7419, 7422, 5, 838, 420, 2, 7420, 7422, 7, 353, 2, 2, 7421, 7419, 3, 2, 2, 2, 7421, 7420, 3, 2, 2, 2, 7422, 7429, 3, 2, 2, 2, 7423, 7429, 5, 782, 392, 2, 7424, 7429, 5, 772, 387, 2, 7425, 7429, 7, 1435, 2, 2, 7426, 7429, 5, 238, 120, 2, 7427, 7429, 5, 476, 239, 2, 7428, 7416, 3, 2, 2, 2, 7428, 7417, 3, 2, 2, 2, 7428, 7418, 3, 2, 2, 2, 7428, 7423, 3, 2, 2, 2, 7428, 7424, 3, 2, 2, 2, 7428, 7425, 3, 2, 2, 2, 7428, 7426, 3, 2, 2, 2, 7428, 7427, 3, 2, 2, 2, 7429, 7430, 3, 2, 2, 2, 7430, 7428, 3, 2, 2, 2, 7430, 7431, 3, 2, 2, 2, 7431, 771, 3, 2, 2, 2, 7432, 7433, 9, 81, 2, 2, 7433, 773, 3, 2, 2, 2, 7434, 7435, 7, 472, 2, 2, 7435, 7436, 7, 693, 2, 2, 7436, 7437, 5, 1428, 715, 2, 7437, 775, 3, 2, 2, 2, 7438, 7440, 7, 876, 2, 2, 7439, 7441, 7, 1127, 2, 2, 7440, 7439, 3, 2, 2, 2, 7440, 7441, 3, 2, 2, 2, 7441, 7443, 3, 2, 2, 2, 7442, 7444, 5, 618, 310, 2, 7443, 7442, 3, 2, 2, 2, 7443, 7444, 3, 2, 2, 2, 7444, 7446, 3, 2, 2, 2, 7445, 7447, 5, 610, 306, 2, 7446, 7445, 3, 2, 2, 2, 7446, 7447, 3, 2, 2, 2, 7447, 7449, 3, 2, 2, 2, 7448, 7450, 5, 778, 390, 2, 7449, 7448, 3, 2, 2, 2, 7449, 7450, 3, 2, 2, 2, 7450, 7457, 3, 2, 2, 2, 7451, 7454, 5, 822, 412, 2, 7452, 7454, 5, 812, 407, 2, 7453, 7451, 3, 2, 2, 2, 7453, 7452, 3, 2, 2, 2, 7454, 7455, 3, 2, 2, 2, 7455, 7453, 3, 2, 2, 2, 7455, 7456, 3, 2, 2, 2, 7456, 7458, 3, 2, 2, 2, 7457, 7453, 3, 2, 2, 2, 7457, 7458, 3, 2, 2, 2, 7458, 7460, 3, 2, 2, 2, 7459, 7461, 5, 476, 239, 2, 7460, 7459, 3, 2, 2, 2, 7460, 7461, 3, 2, 2, 2, 7461, 777, 3, 2, 2, 2, 7462, 7467, 5, 780, 391, 2, 7463, 7464, 7, 1231, 2, 2, 7464, 7467, 7, 2219, 2, 2, 7465, 7467, 5, 782, 392, 2, 7466, 7462, 3, 2, 2, 2, 7466, 7463, 3, 2, 2, 2, 7466, 7465, 3, 2, 2, 2, 7467, 7469, 3, 2, 2, 2, 7468, 7470, 5, 784, 393, 2, 7469, 7468, 3, 2, 2, 2, 7469, 7470, 3, 2, 2, 2, 7470, 779, 3, 2, 2, 2, 7471, 7472, 7, 804, 2, 2, 7472, 7475, 7, 1914, 2, 2, 7473, 7475, 7, 996, 2, 2, 7474, 7471, 3, 2, 2, 2, 7474, 7473, 3, 2, 2, 2, 7475, 781, 3, 2, 2, 2, 7476, 7480, 7, 955, 2, 2, 7477, 7478, 7, 234, 2, 2, 7478, 7480, 7, 2219, 2, 2, 7479, 7476, 3, 2, 2, 2, 7479, 7477, 3, 2, 2, 2, 7480, 783, 3, 2, 2, 2, 7481, 7482, 7, 621, 2, 2, 7482, 7484, 5, 1426, 714, 2, 7483, 7481, 3, 2, 2, 2, 7483, 7484, 3, 2, 2, 2, 7484, 7485, 3, 2, 2, 2, 7485, 7487, 7, 1186, 2, 2, 7486, 7488, 5, 618, 310, 2, 7487, 7486, 3, 2, 2, 2, 7487, 7488, 3, 2, 2, 2, 7488, 785, 3, 2, 2, 2, 7489, 7494, 5, 798, 400, 2, 7490, 7494, 5, 792, 397, 2, 7491, 7494, 5, 788, 395, 2, 7492, 7494, 5, 824, 413, 2, 7493, 7489, 3, 2, 2, 2, 7493, 7490, 3, 2, 2, 2, 7493, 7491, 3, 2, 2, 2, 7493, 7492, 3, 2, 2, 2, 7494, 787, 3, 2, 2, 2, 7495, 7496, 7, 865, 2, 2, 7496, 7497, 7, 897, 2, 2, 7497, 7498, 7, 1914, 2, 2, 7498, 7499, 5, 790, 396, 2, 7499, 7500, 7, 1433, 2, 2, 7500, 7501, 7, 63, 2, 2, 7501, 7502, 9, 82, 2, 2, 7502, 789, 3, 2, 2, 2, 7503, 7504, 5, 1428, 715, 2, 7504, 791, 3, 2, 2, 2, 7505, 7506, 7, 1406, 2, 2, 7506, 7507, 7, 215, 2, 2, 7507, 7508, 5, 794, 398, 2, 7508, 7509, 7, 1966, 2, 2, 7509, 7510, 5, 796, 399, 2, 7510, 793, 3, 2, 2, 2, 7511, 7512, 5, 1426, 714, 2, 7512, 795, 3, 2, 2, 2, 7513, 7514, 5, 1426, 714, 2, 7514, 797, 3, 2, 2, 2, 7515, 7519, 5, 808, 405, 2, 7516, 7519, 5, 802, 402, 2, 7517, 7519, 5, 800, 401, 2, 7518, 7515, 3, 2, 2, 2, 7518, 7516, 3, 2, 2, 2, 7518, 7517, 3, 2, 2, 2, 7519, 7520, 3, 2, 2, 2, 7520, 7518, 3, 2, 2, 2, 7520, 7521, 3, 2, 2, 2, 7521, 799, 3, 2, 2, 2, 7522, 7523, 7, 1512, 2, 2, 7523, 7537, 7, 2024, 2, 2, 7524, 7525, 7, 215, 2, 2, 7525, 7538, 5, 1426, 714, 2, 7526, 7527, 7, 2225, 2, 2, 7527, 7532, 5, 1426, 714, 2, 7528, 7529, 7, 2231, 2, 2, 7529, 7531, 5, 1426, 714, 2, 7530, 7528, 3, 2, 2, 2, 7531, 7534, 3, 2, 2, 2, 7532, 7530, 3, 2, 2, 2, 7532, 7533, 3, 2, 2, 2, 7533, 7535, 3, 2, 2, 2, 7534, 7532, 3, 2, 2, 2, 7535, 7536, 7, 2226, 2, 2, 7536, 7538, 3, 2, 2, 2, 7537, 7524, 3, 2, 2, 2, 7537, 7526, 3, 2, 2, 2, 7538, 7544, 3, 2, 2, 2, 7539, 7540, 7, 164, 2, 2, 7540, 7543, 7, 260, 2, 2, 7541, 7543, 7, 694, 2, 2, 7542, 7539, 3, 2, 2, 2, 7542, 7541, 3, 2, 2, 2, 7543, 7546, 3, 2, 2, 2, 7544, 7542, 3, 2, 2, 2, 7544, 7545, 3, 2, 2, 2, 7545, 7585, 3, 2, 2, 2, 7546, 7544, 3, 2, 2, 2, 7547, 7561, 7, 413, 2, 2, 7548, 7549, 7, 215, 2, 2, 7549, 7562, 5, 1426, 714, 2, 7550, 7551, 7, 2225, 2, 2, 7551, 7556, 5, 1426, 714, 2, 7552, 7553, 7, 2231, 2, 2, 7553, 7555, 5, 1426, 714, 2, 7554, 7552, 3, 2, 2, 2, 7555, 7558, 3, 2, 2, 2, 7556, 7554, 3, 2, 2, 2, 7556, 7557, 3, 2, 2, 2, 7557, 7559, 3, 2, 2, 2, 7558, 7556, 3, 2, 2, 2, 7559, 7560, 7, 2226, 2, 2, 7560, 7562, 3, 2, 2, 2, 7561, 7548, 3, 2, 2, 2, 7561, 7550, 3, 2, 2, 2, 7562, 7568, 3, 2, 2, 2, 7563, 7564, 7, 164, 2, 2, 7564, 7567, 7, 260, 2, 2, 7565, 7567, 7, 694, 2, 2, 7566, 7563, 3, 2, 2, 2, 7566, 7565, 3, 2, 2, 2, 7567, 7570, 3, 2, 2, 2, 7568, 7566, 3, 2, 2, 2, 7568, 7569, 3, 2, 2, 2, 7569, 7573, 3, 2, 2, 2, 7570, 7568, 3, 2, 2, 2, 7571, 7572, 7, 183, 2, 2, 7572, 7574, 7, 2219, 2, 2, 7573, 7571, 3, 2, 2, 2, 7573, 7574, 3, 2, 2, 2, 7574, 7585, 3, 2, 2, 2, 7575, 7580, 7, 413, 2, 2, 7576, 7577, 7, 2024, 2, 2, 7577, 7581, 7, 216, 2, 2, 7578, 7579, 7, 216, 2, 2, 7579, 7581, 7, 268, 2, 2, 7580, 7576, 3, 2, 2, 2, 7580, 7578, 3, 2, 2, 2, 7581, 7582, 3, 2, 2, 2, 7582, 7583, 7, 183, 2, 2, 7583, 7585, 7, 2219, 2, 2, 7584, 7522, 3, 2, 2, 2, 7584, 7547, 3, 2, 2, 2, 7584, 7575, 3, 2, 2, 2, 7585, 801, 3, 2, 2, 2, 7586, 7600, 7, 865, 2, 2, 7587, 7588, 7, 2225, 2, 2, 7588, 7593, 5, 804, 403, 2, 7589, 7590, 7, 2231, 2, 2, 7590, 7592, 5, 804, 403, 2, 7591, 7589, 3, 2, 2, 2, 7592, 7595, 3, 2, 2, 2, 7593, 7591, 3, 2, 2, 2, 7593, 7594, 3, 2, 2, 2, 7594, 7596, 3, 2, 2, 2, 7595, 7593, 3, 2, 2, 2, 7596, 7597, 7, 2226, 2, 2, 7597, 7601, 3, 2, 2, 2, 7598, 7601, 5, 804, 403, 2, 7599, 7601, 5, 806, 404, 2, 7600, 7587, 3, 2, 2, 2, 7600, 7598, 3, 2, 2, 2, 7600, 7599, 3, 2, 2, 2, 7601, 803, 3, 2, 2, 2, 7602, 7604, 5, 1426, 714, 2, 7603, 7605, 5, 1462, 732, 2, 7604, 7603, 3, 2, 2, 2, 7604, 7605, 3, 2, 2, 2, 7605, 7608, 3, 2, 2, 2, 7606, 7607, 7, 353, 2, 2, 7607, 7609, 5, 1236, 619, 2, 7608, 7606, 3, 2, 2, 2, 7608, 7609, 3, 2, 2, 2, 7609, 7613, 3, 2, 2, 2, 7610, 7611, 7, 445, 2, 2, 7611, 7614, 5, 836, 419, 2, 7612, 7614, 7, 351, 2, 2, 7613, 7610, 3, 2, 2, 2, 7613, 7612, 3, 2, 2, 2, 7613, 7614, 3, 2, 2, 2, 7614, 7618, 3, 2, 2, 2, 7615, 7617, 5, 418, 210, 2, 7616, 7615, 3, 2, 2, 2, 7617, 7620, 3, 2, 2, 2, 7618, 7616, 3, 2, 2, 2, 7618, 7619, 3, 2, 2, 2, 7619, 7622, 3, 2, 2, 2, 7620, 7618, 3, 2, 2, 2, 7621, 7623, 5, 822, 412, 2, 7622, 7621, 3, 2, 2, 2, 7622, 7623, 3, 2, 2, 2, 7623, 805, 3, 2, 2, 2, 7624, 7625, 7, 215, 2, 2, 7625, 7627, 5, 1426, 714, 2, 7626, 7628, 7, 1075, 2, 2, 7627, 7626, 3, 2, 2, 2, 7627, 7628, 3, 2, 2, 2, 7628, 7629, 3, 2, 2, 2, 7629, 7630, 7, 1613, 2, 2, 7630, 7631, 7, 76, 2, 2, 7631, 7632, 7, 37, 2, 2, 7632, 7634, 7, 750, 2, 2, 7633, 7635, 7, 544, 2, 2, 7634, 7633, 3, 2, 2, 2, 7634, 7635, 3, 2, 2, 2, 7635, 807, 3, 2, 2, 2, 7636, 7658, 7, 20, 2, 2, 7637, 7640, 7, 2225, 2, 2, 7638, 7641, 5, 850, 426, 2, 7639, 7641, 5, 852, 427, 2, 7640, 7638, 3, 2, 2, 2, 7640, 7639, 3, 2, 2, 2, 7641, 7649, 3, 2, 2, 2, 7642, 7645, 7, 2231, 2, 2, 7643, 7646, 5, 850, 426, 2, 7644, 7646, 5, 852, 427, 2, 7645, 7643, 3, 2, 2, 2, 7645, 7644, 3, 2, 2, 2, 7646, 7648, 3, 2, 2, 2, 7647, 7642, 3, 2, 2, 2, 7648, 7651, 3, 2, 2, 2, 7649, 7647, 3, 2, 2, 2, 7649, 7650, 3, 2, 2, 2, 7650, 7652, 3, 2, 2, 2, 7651, 7649, 3, 2, 2, 2, 7652, 7653, 7, 2226, 2, 2, 7653, 7659, 3, 2, 2, 2, 7654, 7657, 5, 850, 426, 2, 7655, 7657, 5, 852, 427, 2, 7656, 7654, 3, 2, 2, 2, 7656, 7655, 3, 2, 2, 2, 7657, 7659, 3, 2, 2, 2, 7658, 7637, 3, 2, 2, 2, 7658, 7656, 3, 2, 2, 2, 7659, 7661, 3, 2, 2, 2, 7660, 7662, 5, 842, 422, 2, 7661, 7660, 3, 2, 2, 2, 7661, 7662, 3, 2, 2, 2, 7662, 809, 3, 2, 2, 2, 7663, 7664, 7, 865, 2, 2, 7664, 7665, 7, 2082, 2, 2, 7665, 7666, 5, 840, 421, 2, 7666, 7667, 7, 2225, 2, 2, 7667, 7668, 5, 826, 414, 2, 7668, 7669, 7, 2226, 2, 2, 7669, 811, 3, 2, 2, 2, 7670, 7671, 7, 2082, 2, 2, 7671, 7677, 5, 840, 421, 2, 7672, 7674, 5, 862, 432, 2, 7673, 7672, 3, 2, 2, 2, 7673, 7674, 3, 2, 2, 2, 7674, 7675, 3, 2, 2, 2, 7675, 7678, 5, 814, 408, 2, 7676, 7678, 5, 862, 432, 2, 7677, 7673, 3, 2, 2, 2, 7677, 7676, 3, 2, 2, 2, 7678, 813, 3, 2, 2, 2, 7679, 7680, 7, 1596, 2, 2, 7680, 7682, 7, 63, 2, 2, 7681, 7683, 9, 60, 2, 2, 7682, 7681, 3, 2, 2, 2, 7682, 7683, 3, 2, 2, 2, 7683, 7684, 3, 2, 2, 2, 7684, 7693, 7, 767, 2, 2, 7685, 7687, 5, 816, 409, 2, 7686, 7685, 3, 2, 2, 2, 7686, 7687, 3, 2, 2, 2, 7687, 7688, 3, 2, 2, 2, 7688, 7689, 7, 2225, 2, 2, 7689, 7690, 5, 820, 411, 2, 7690, 7691, 7, 2226, 2, 2, 7691, 7694, 3, 2, 2, 2, 7692, 7694, 5, 816, 409, 2, 7693, 7686, 3, 2, 2, 2, 7693, 7692, 3, 2, 2, 2, 7694, 815, 3, 2, 2, 2, 7695, 7696, 5, 1494, 748, 2, 7696, 817, 3, 2, 2, 2, 7697, 7698, 5, 1494, 748, 2, 7698, 819, 3, 2, 2, 2, 7699, 7700, 7, 1911, 2, 2, 7700, 7707, 5, 838, 420, 2, 7701, 7703, 5, 828, 415, 2, 7702, 7704, 5, 614, 308, 2, 7703, 7702, 3, 2, 2, 2, 7703, 7704, 3, 2, 2, 2, 7704, 7707, 3, 2, 2, 2, 7705, 7707, 5, 614, 308, 2, 7706, 7699, 3, 2, 2, 2, 7706, 7701, 3, 2, 2, 2, 7706, 7705, 3, 2, 2, 2, 7707, 821, 3, 2, 2, 2, 7708, 7745, 7, 767, 2, 2, 7709, 7710, 7, 2225, 2, 2, 7710, 7715, 5, 818, 410, 2, 7711, 7712, 7, 2231, 2, 2, 7712, 7714, 5, 818, 410, 2, 7713, 7711, 3, 2, 2, 2, 7714, 7717, 3, 2, 2, 2, 7715, 7713, 3, 2, 2, 2, 7715, 7716, 3, 2, 2, 2, 7716, 7718, 3, 2, 2, 2, 7717, 7715, 3, 2, 2, 2, 7718, 7719, 7, 2226, 2, 2, 7719, 7720, 7, 1596, 2, 2, 7720, 7726, 7, 63, 2, 2, 7721, 7727, 9, 60, 2, 2, 7722, 7723, 7, 2225, 2, 2, 7723, 7724, 5, 820, 411, 2, 7724, 7725, 7, 2226, 2, 2, 7725, 7727, 3, 2, 2, 2, 7726, 7721, 3, 2, 2, 2, 7726, 7722, 3, 2, 2, 2, 7727, 7728, 3, 2, 2, 2, 7728, 7726, 3, 2, 2, 2, 7728, 7729, 3, 2, 2, 2, 7729, 7746, 3, 2, 2, 2, 7730, 7731, 7, 2225, 2, 2, 7731, 7732, 5, 818, 410, 2, 7732, 7733, 7, 2226, 2, 2, 7733, 7734, 7, 1596, 2, 2, 7734, 7741, 7, 63, 2, 2, 7735, 7742, 9, 60, 2, 2, 7736, 7742, 5, 816, 409, 2, 7737, 7738, 7, 2225, 2, 2, 7738, 7739, 5, 820, 411, 2, 7739, 7740, 7, 2226, 2, 2, 7740, 7742, 3, 2, 2, 2, 7741, 7735, 3, 2, 2, 2, 7741, 7736, 3, 2, 2, 2, 7741, 7737, 3, 2, 2, 2, 7742, 7743, 3, 2, 2, 2, 7743, 7741, 3, 2, 2, 2, 7743, 7744, 3, 2, 2, 2, 7744, 7746, 3, 2, 2, 2, 7745, 7709, 3, 2, 2, 2, 7745, 7730, 3, 2, 2, 2, 7746, 823, 3, 2, 2, 2, 7747, 7748, 7, 865, 2, 2, 7748, 7749, 7, 767, 2, 2, 7749, 7750, 7, 2225, 2, 2, 7750, 7751, 5, 818, 410, 2, 7751, 7752, 7, 2226, 2, 2, 7752, 7753, 7, 2225, 2, 2, 7753, 7754, 5, 826, 414, 2, 7754, 7755, 7, 2226, 2, 2, 7755, 825, 3, 2, 2, 2, 7756, 7781, 5, 614, 308, 2, 7757, 7758, 9, 83, 2, 2, 7758, 7781, 7, 2219, 2, 2, 7759, 7760, 7, 1360, 2, 2, 7760, 7781, 7, 554, 2, 2, 7761, 7781, 5, 834, 418, 2, 7762, 7781, 5, 830, 416, 2, 7763, 7781, 5, 832, 417, 2, 7764, 7765, 7, 445, 2, 2, 7765, 7781, 5, 836, 419, 2, 7766, 7781, 7, 351, 2, 2, 7767, 7781, 7, 152, 2, 2, 7768, 7773, 7, 152, 2, 2, 7769, 7773, 7, 948, 2, 2, 7770, 7771, 7, 152, 2, 2, 7771, 7773, 7, 1356, 2, 2, 7772, 7768, 3, 2, 2, 2, 7772, 7769, 3, 2, 2, 2, 7772, 7770, 3, 2, 2, 2, 7773, 7775, 3, 2, 2, 2, 7774, 7776, 5, 450, 226, 2, 7775, 7774, 3, 2, 2, 2, 7775, 7776, 3, 2, 2, 2, 7776, 7781, 3, 2, 2, 2, 7777, 7781, 5, 634, 318, 2, 7778, 7781, 5, 638, 320, 2, 7779, 7781, 5, 636, 319, 2, 7780, 7756, 3, 2, 2, 2, 7780, 7757, 3, 2, 2, 2, 7780, 7759, 3, 2, 2, 2, 7780, 7761, 3, 2, 2, 2, 7780, 7762, 3, 2, 2, 2, 7780, 7763, 3, 2, 2, 2, 7780, 7764, 3, 2, 2, 2, 7780, 7766, 3, 2, 2, 2, 7780, 7767, 3, 2, 2, 2, 7780, 7772, 3, 2, 2, 2, 7780, 7777, 3, 2, 2, 2, 7780, 7778, 3, 2, 2, 2, 7780, 7779, 3, 2, 2, 2, 7781, 7782, 3, 2, 2, 2, 7782, 7780, 3, 2, 2, 2, 7782, 7783, 3, 2, 2, 2, 7783, 827, 3, 2, 2, 2, 7784, 7785, 9, 7, 2, 2, 7785, 7786, 7, 1595, 2, 2, 7786, 7787, 7, 654, 2, 2, 7787, 7810, 7, 1453, 2, 2, 7788, 7789, 7, 187, 2, 2, 7789, 7810, 7, 2219, 2, 2, 7790, 7791, 7, 1233, 2, 2, 7791, 7810, 7, 2219, 2, 2, 7792, 7793, 7, 554, 2, 2, 7793, 7810, 7, 2219, 2, 2, 7794, 7810, 5, 834, 418, 2, 7795, 7810, 5, 830, 416, 2, 7796, 7810, 5, 832, 417, 2, 7797, 7798, 7, 445, 2, 2, 7798, 7810, 5, 836, 419, 2, 7799, 7810, 7, 351, 2, 2, 7800, 7805, 7, 152, 2, 2, 7801, 7805, 7, 948, 2, 2, 7802, 7803, 7, 152, 2, 2, 7803, 7805, 7, 1356, 2, 2, 7804, 7800, 3, 2, 2, 2, 7804, 7801, 3, 2, 2, 2, 7804, 7802, 3, 2, 2, 2, 7805, 7807, 3, 2, 2, 2, 7806, 7808, 5, 450, 226, 2, 7807, 7806, 3, 2, 2, 2, 7807, 7808, 3, 2, 2, 2, 7808, 7810, 3, 2, 2, 2, 7809, 7784, 3, 2, 2, 2, 7809, 7788, 3, 2, 2, 2, 7809, 7790, 3, 2, 2, 2, 7809, 7792, 3, 2, 2, 2, 7809, 7794, 3, 2, 2, 2, 7809, 7795, 3, 2, 2, 2, 7809, 7796, 3, 2, 2, 2, 7809, 7797, 3, 2, 2, 2, 7809, 7799, 3, 2, 2, 2, 7809, 7804, 3, 2, 2, 2, 7810, 7811, 3, 2, 2, 2, 7811, 7809, 3, 2, 2, 2, 7811, 7812, 3, 2, 2, 2, 7812, 829, 3, 2, 2, 2, 7813, 7814, 9, 84, 2, 2, 7814, 831, 3, 2, 2, 2, 7815, 7821, 7, 955, 2, 2, 7816, 7818, 7, 234, 2, 2, 7817, 7819, 9, 85, 2, 2, 7818, 7817, 3, 2, 2, 2, 7818, 7819, 3, 2, 2, 2, 7819, 7821, 3, 2, 2, 2, 7820, 7815, 3, 2, 2, 2, 7820, 7816, 3, 2, 2, 2, 7821, 833, 3, 2, 2, 2, 7822, 7828, 7, 1430, 2, 2, 7823, 7829, 7, 2195, 2, 2, 7824, 7825, 7, 2197, 2, 2, 7825, 7829, 7, 2219, 2, 2, 7826, 7829, 7, 85, 2, 2, 7827, 7829, 7, 1009, 2, 2, 7828, 7823, 3, 2, 2, 2, 7828, 7824, 3, 2, 2, 2, 7828, 7826, 3, 2, 2, 2, 7828, 7827, 3, 2, 2, 2, 7828, 7829, 3, 2, 2, 2, 7829, 835, 3, 2, 2, 2, 7830, 7831, 7, 2065, 2, 2, 7831, 7833, 7, 2221, 2, 2, 7832, 7830, 3, 2, 2, 2, 7832, 7833, 3, 2, 2, 2, 7833, 7837, 3, 2, 2, 2, 7834, 7835, 7, 603, 2, 2, 7835, 7836, 7, 148, 2, 2, 7836, 7838, 7, 2254, 2, 2, 7837, 7834, 3, 2, 2, 2, 7837, 7838, 3, 2, 2, 2, 7838, 7840, 3, 2, 2, 2, 7839, 7841, 7, 2221, 2, 2, 7840, 7839, 3, 2, 2, 2, 7840, 7841, 3, 2, 2, 2, 7841, 7846, 3, 2, 2, 2, 7842, 7844, 7, 1012, 2, 2, 7843, 7842, 3, 2, 2, 2, 7843, 7844, 3, 2, 2, 2, 7844, 7845, 3, 2, 2, 2, 7845, 7847, 7, 1460, 2, 2, 7846, 7843, 3, 2, 2, 2, 7846, 7847, 3, 2, 2, 2, 7847, 837, 3, 2, 2, 2, 7848, 7849, 5, 1494, 748, 2, 7849, 839, 3, 2, 2, 2, 7850, 7851, 5, 1490, 746, 2, 7851, 7852, 7, 2218, 2, 2, 7852, 7854, 3, 2, 2, 2, 7853, 7850, 3, 2, 2, 2, 7853, 7854, 3, 2, 2, 2, 7854, 7858, 3, 2, 2, 2, 7855, 7856, 5, 1490, 746, 2, 7856, 7857, 7, 2218, 2, 2, 7857, 7859, 3, 2, 2, 2, 7858, 7855, 3, 2, 2, 2, 7858, 7859, 3, 2, 2, 2, 7859, 7860, 3, 2, 2, 2, 7860, 7861, 5, 1490, 746, 2, 7861, 841, 3, 2, 2, 2, 7862, 7870, 5, 870, 436, 2, 7863, 7870, 5, 858, 430, 2, 7864, 7867, 5, 812, 407, 2, 7865, 7867, 5, 822, 412, 2, 7866, 7864, 3, 2, 2, 2, 7866, 7865, 3, 2, 2, 2, 7867, 7870, 3, 2, 2, 2, 7868, 7870, 5, 526, 264, 2, 7869, 7862, 3, 2, 2, 2, 7869, 7863, 3, 2, 2, 2, 7869, 7866, 3, 2, 2, 2, 7869, 7868, 3, 2, 2, 2, 7870, 843, 3, 2, 2, 2, 7871, 7872, 6, 423, 11, 2, 7872, 7873, 7, 2218, 2, 2, 7873, 7874, 7, 548, 2, 2, 7874, 7881, 5, 1426, 714, 2, 7875, 7876, 7, 2225, 2, 2, 7876, 7877, 5, 846, 424, 2, 7877, 7878, 7, 2231, 2, 2, 7878, 7879, 5, 848, 425, 2, 7879, 7880, 7, 2226, 2, 2, 7880, 7882, 3, 2, 2, 2, 7881, 7875, 3, 2, 2, 2, 7881, 7882, 3, 2, 2, 2, 7882, 845, 3, 2, 2, 2, 7883, 7884, 5, 1426, 714, 2, 7884, 847, 3, 2, 2, 2, 7885, 7886, 5, 1426, 714, 2, 7886, 849, 3, 2, 2, 2, 7887, 7890, 5, 1426, 714, 2, 7888, 7891, 5, 1462, 732, 2, 7889, 7891, 5, 1402, 702, 2, 7890, 7888, 3, 2, 2, 2, 7890, 7889, 3, 2, 2, 2, 7891, 7893, 3, 2, 2, 2, 7892, 7894, 7, 1546, 2, 2, 7893, 7892, 3, 2, 2, 2, 7893, 7894, 3, 2, 2, 2, 7894, 7897, 3, 2, 2, 2, 7895, 7896, 7, 353, 2, 2, 7896, 7898, 5, 1236, 619, 2, 7897, 7895, 3, 2, 2, 2, 7897, 7898, 3, 2, 2, 2, 7898, 7918, 3, 2, 2, 2, 7899, 7902, 7, 445, 2, 2, 7900, 7901, 7, 2065, 2, 2, 7901, 7903, 7, 2221, 2, 2, 7902, 7900, 3, 2, 2, 2, 7902, 7903, 3, 2, 2, 2, 7903, 7907, 3, 2, 2, 2, 7904, 7905, 7, 603, 2, 2, 7905, 7906, 7, 148, 2, 2, 7906, 7908, 5, 1494, 748, 2, 7907, 7904, 3, 2, 2, 2, 7907, 7908, 3, 2, 2, 2, 7908, 7910, 3, 2, 2, 2, 7909, 7911, 7, 2221, 2, 2, 7910, 7909, 3, 2, 2, 2, 7910, 7911, 3, 2, 2, 2, 7911, 7916, 3, 2, 2, 2, 7912, 7914, 7, 1012, 2, 2, 7913, 7912, 3, 2, 2, 2, 7913, 7914, 3, 2, 2, 2, 7914, 7915, 3, 2, 2, 2, 7915, 7917, 7, 1460, 2, 2, 7916, 7913, 3, 2, 2, 2, 7916, 7917, 3, 2, 2, 2, 7917, 7919, 3, 2, 2, 2, 7918, 7899, 3, 2, 2, 2, 7918, 7919, 3, 2, 2, 2, 7919, 7927, 3, 2, 2, 2, 7920, 7922, 5, 418, 210, 2, 7921, 7920, 3, 2, 2, 2, 7922, 7925, 3, 2, 2, 2, 7923, 7921, 3, 2, 2, 2, 7923, 7924, 3, 2, 2, 2, 7924, 7928, 3, 2, 2, 2, 7925, 7923, 3, 2, 2, 2, 7926, 7928, 5, 420, 211, 2, 7927, 7923, 3, 2, 2, 2, 7927, 7926, 3, 2, 2, 2, 7928, 851, 3, 2, 2, 2, 7929, 7931, 5, 1426, 714, 2, 7930, 7932, 5, 1462, 732, 2, 7931, 7930, 3, 2, 2, 2, 7931, 7932, 3, 2, 2, 2, 7932, 7934, 3, 2, 2, 2, 7933, 7935, 5, 854, 428, 2, 7934, 7933, 3, 2, 2, 2, 7934, 7935, 3, 2, 2, 2, 7935, 7937, 3, 2, 2, 2, 7936, 7938, 7, 2103, 2, 2, 7937, 7936, 3, 2, 2, 2, 7937, 7938, 3, 2, 2, 2, 7938, 7942, 3, 2, 2, 2, 7939, 7941, 5, 418, 210, 2, 7940, 7939, 3, 2, 2, 2, 7941, 7944, 3, 2, 2, 2, 7942, 7940, 3, 2, 2, 2, 7942, 7943, 3, 2, 2, 2, 7943, 853, 3, 2, 2, 2, 7944, 7942, 3, 2, 2, 2, 7945, 7953, 7, 566, 2, 2, 7946, 7954, 7, 42, 2, 2, 7947, 7948, 7, 148, 2, 2, 7948, 7951, 7, 353, 2, 2, 7949, 7950, 7, 1130, 2, 2, 7950, 7952, 7, 1099, 2, 2, 7951, 7949, 3, 2, 2, 2, 7951, 7952, 3, 2, 2, 2, 7952, 7954, 3, 2, 2, 2, 7953, 7946, 3, 2, 2, 2, 7953, 7947, 3, 2, 2, 2, 7953, 7954, 3, 2, 2, 2, 7954, 7955, 3, 2, 2, 2, 7955, 7956, 7, 63, 2, 2, 7956, 7957, 7, 605, 2, 2, 7957, 855, 3, 2, 2, 2, 7958, 7959, 7, 1209, 2, 2, 7959, 7960, 5, 864, 433, 2, 7960, 857, 3, 2, 2, 2, 7961, 7962, 7, 897, 2, 2, 7962, 7965, 7, 1914, 2, 2, 7963, 7966, 5, 860, 431, 2, 7964, 7966, 7, 218, 2, 2, 7965, 7963, 3, 2, 2, 2, 7965, 7964, 3, 2, 2, 2, 7966, 7968, 3, 2, 2, 2, 7967, 7969, 5, 862, 432, 2, 7968, 7967, 3, 2, 2, 2, 7968, 7969, 3, 2, 2, 2, 7969, 7971, 3, 2, 2, 2, 7970, 7972, 9, 86, 2, 2, 7971, 7970, 3, 2, 2, 2, 7971, 7972, 3, 2, 2, 2, 7972, 7973, 3, 2, 2, 2, 7973, 7974, 7, 1596, 2, 2, 7974, 7975, 7, 63, 2, 2, 7975, 7989, 5, 1428, 715, 2, 7976, 7983, 7, 2225, 2, 2, 7977, 7978, 7, 2225, 2, 2, 7978, 7979, 5, 538, 270, 2, 7979, 7980, 7, 2226, 2, 2, 7980, 7984, 3, 2, 2, 2, 7981, 7984, 5, 620, 311, 2, 7982, 7984, 5, 842, 422, 2, 7983, 7977, 3, 2, 2, 2, 7983, 7981, 3, 2, 2, 2, 7983, 7982, 3, 2, 2, 2, 7984, 7985, 3, 2, 2, 2, 7985, 7983, 3, 2, 2, 2, 7985, 7986, 3, 2, 2, 2, 7986, 7987, 3, 2, 2, 2, 7987, 7988, 7, 2226, 2, 2, 7988, 7990, 3, 2, 2, 2, 7989, 7976, 3, 2, 2, 2, 7989, 7990, 3, 2, 2, 2, 7990, 7996, 3, 2, 2, 2, 7991, 7993, 7, 1433, 2, 2, 7992, 7994, 7, 63, 2, 2, 7993, 7992, 3, 2, 2, 2, 7993, 7994, 3, 2, 2, 2, 7994, 7995, 3, 2, 2, 2, 7995, 7997, 9, 82, 2, 2, 7996, 7991, 3, 2, 2, 2, 7996, 7997, 3, 2, 2, 2, 7997, 859, 3, 2, 2, 2, 7998, 7999, 5, 1494, 748, 2, 7999, 861, 3, 2, 2, 2, 8000, 8002, 7, 429, 2, 2, 8001, 8000, 3, 2, 2, 2, 8001, 8002, 3, 2, 2, 2, 8002, 8003, 3, 2, 2, 2, 8003, 8004, 7, 697, 2, 2, 8004, 8006, 7, 1117, 2, 2, 8005, 8007, 7, 1989, 2, 2, 8006, 8005, 3, 2, 2, 2, 8006, 8007, 3, 2, 2, 2, 8007, 8008, 3, 2, 2, 2, 8008, 8009, 7, 2225, 2, 2, 8009, 8010, 5, 1402, 702, 2, 8010, 8011, 7, 2226, 2, 2, 8011, 8020, 3, 2, 2, 2, 8012, 8014, 7, 1075, 2, 2, 8013, 8012, 3, 2, 2, 2, 8013, 8014, 3, 2, 2, 2, 8014, 8015, 3, 2, 2, 2, 8015, 8016, 7, 1613, 2, 2, 8016, 8017, 7, 76, 2, 2, 8017, 8018, 7, 37, 2, 2, 8018, 8020, 7, 750, 2, 2, 8019, 8001, 3, 2, 2, 2, 8019, 8013, 3, 2, 2, 2, 8020, 863, 3, 2, 2, 2, 8021, 8022, 5, 1494, 748, 2, 8022, 865, 3, 2, 2, 2, 8023, 8024, 7, 1622, 2, 2, 8024, 8027, 7, 785, 2, 2, 8025, 8028, 5, 630, 316, 2, 8026, 8028, 5, 632, 317, 2, 8027, 8025, 3, 2, 2, 2, 8027, 8026, 3, 2, 2, 2, 8028, 867, 3, 2, 2, 2, 8029, 8030, 5, 1494, 748, 2, 8030, 869, 3, 2, 2, 2, 8031, 8032, 7, 215, 2, 2, 8032, 8033, 5, 1494, 748, 2, 8033, 8034, 5, 862, 432, 2, 8034, 871, 3, 2, 2, 2, 8035, 8036, 7, 20, 2, 2, 8036, 8044, 7, 2225, 2, 2, 8037, 8039, 5, 424, 213, 2, 8038, 8037, 3, 2, 2, 2, 8039, 8042, 3, 2, 2, 2, 8040, 8038, 3, 2, 2, 2, 8040, 8041, 3, 2, 2, 2, 8041, 8045, 3, 2, 2, 2, 8042, 8040, 3, 2, 2, 2, 8043, 8045, 5, 422, 212, 2, 8044, 8040, 3, 2, 2, 2, 8044, 8043, 3, 2, 2, 2, 8045, 8046, 3, 2, 2, 2, 8046, 8092, 7, 2226, 2, 2, 8047, 8055, 7, 20, 2, 2, 8048, 8050, 5, 424, 213, 2, 8049, 8048, 3, 2, 2, 2, 8050, 8053, 3, 2, 2, 2, 8051, 8049, 3, 2, 2, 2, 8051, 8052, 3, 2, 2, 2, 8052, 8056, 3, 2, 2, 2, 8053, 8051, 3, 2, 2, 2, 8054, 8056, 5, 422, 212, 2, 8055, 8051, 3, 2, 2, 2, 8055, 8054, 3, 2, 2, 2, 8056, 8092, 3, 2, 2, 2, 8057, 8074, 7, 865, 2, 2, 8058, 8059, 7, 259, 2, 2, 8059, 8075, 5, 1398, 700, 2, 8060, 8061, 7, 1306, 2, 2, 8061, 8075, 7, 724, 2, 2, 8062, 8063, 7, 2004, 2, 2, 8063, 8064, 7, 2225, 2, 2, 8064, 8069, 5, 1426, 714, 2, 8065, 8066, 7, 2231, 2, 2, 8066, 8068, 5, 1426, 714, 2, 8067, 8065, 3, 2, 2, 2, 8068, 8071, 3, 2, 2, 2, 8069, 8067, 3, 2, 2, 2, 8069, 8070, 3, 2, 2, 2, 8070, 8072, 3, 2, 2, 2, 8071, 8069, 3, 2, 2, 2, 8072, 8073, 7, 2226, 2, 2, 8073, 8075, 3, 2, 2, 2, 8074, 8058, 3, 2, 2, 2, 8074, 8060, 3, 2, 2, 2, 8074, 8062, 3, 2, 2, 2, 8075, 8076, 3, 2, 2, 2, 8076, 8078, 5, 426, 214, 2, 8077, 8079, 7, 164, 2, 2, 8078, 8077, 3, 2, 2, 2, 8078, 8079, 3, 2, 2, 2, 8079, 8092, 3, 2, 2, 2, 8080, 8081, 7, 1406, 2, 2, 8081, 8082, 7, 259, 2, 2, 8082, 8083, 5, 874, 438, 2, 8083, 8084, 7, 1966, 2, 2, 8084, 8085, 5, 876, 439, 2, 8085, 8092, 3, 2, 2, 2, 8086, 8088, 5, 878, 440, 2, 8087, 8086, 3, 2, 2, 2, 8088, 8089, 3, 2, 2, 2, 8089, 8087, 3, 2, 2, 2, 8089, 8090, 3, 2, 2, 2, 8090, 8092, 3, 2, 2, 2, 8091, 8035, 3, 2, 2, 2, 8091, 8047, 3, 2, 2, 2, 8091, 8057, 3, 2, 2, 2, 8091, 8080, 3, 2, 2, 2, 8091, 8087, 3, 2, 2, 2, 8092, 873, 3, 2, 2, 2, 8093, 8094, 5, 1398, 700, 2, 8094, 875, 3, 2, 2, 2, 8095, 8096, 5, 1398, 700, 2, 8096, 877, 3, 2, 2, 2, 8097, 8098, 7, 413, 2, 2, 8098, 8099, 5, 880, 441, 2, 8099, 879, 3, 2, 2, 2, 8100, 8101, 7, 1306, 2, 2, 8101, 8115, 7, 724, 2, 2, 8102, 8103, 7, 2004, 2, 2, 8103, 8104, 7, 2225, 2, 2, 8104, 8109, 5, 1426, 714, 2, 8105, 8106, 7, 2231, 2, 2, 8106, 8108, 5, 1426, 714, 2, 8107, 8105, 3, 2, 2, 2, 8108, 8111, 3, 2, 2, 2, 8109, 8107, 3, 2, 2, 2, 8109, 8110, 3, 2, 2, 2, 8110, 8112, 3, 2, 2, 2, 8111, 8109, 3, 2, 2, 2, 8112, 8113, 7, 2226, 2, 2, 8113, 8115, 3, 2, 2, 2, 8114, 8100, 3, 2, 2, 2, 8114, 8102, 3, 2, 2, 2, 8115, 8117, 3, 2, 2, 2, 8116, 8118, 7, 164, 2, 2, 8117, 8116, 3, 2, 2, 2, 8117, 8118, 3, 2, 2, 2, 8118, 8120, 3, 2, 2, 2, 8119, 8121, 9, 80, 2, 2, 8120, 8119, 3, 2, 2, 2, 8120, 8121, 3, 2, 2, 2, 8121, 8128, 3, 2, 2, 2, 8122, 8123, 7, 259, 2, 2, 8123, 8125, 5, 1398, 700, 2, 8124, 8126, 7, 164, 2, 2, 8125, 8124, 3, 2, 2, 2, 8125, 8126, 3, 2, 2, 2, 8126, 8128, 3, 2, 2, 2, 8127, 8114, 3, 2, 2, 2, 8127, 8122, 3, 2, 2, 2, 8128, 881, 3, 2, 2, 2, 8129, 8132, 7, 20, 2, 2, 8130, 8131, 7, 259, 2, 2, 8131, 8133, 5, 1398, 700, 2, 8132, 8130, 3, 2, 2, 2, 8132, 8133, 3, 2, 2, 2, 8133, 8134, 3, 2, 2, 2, 8134, 8141, 5, 884, 443, 2, 8135, 8138, 7, 2231, 2, 2, 8136, 8137, 7, 259, 2, 2, 8137, 8139, 5, 1398, 700, 2, 8138, 8136, 3, 2, 2, 2, 8138, 8139, 3, 2, 2, 2, 8139, 8140, 3, 2, 2, 2, 8140, 8142, 5, 884, 443, 2, 8141, 8135, 3, 2, 2, 2, 8142, 8143, 3, 2, 2, 2, 8143, 8141, 3, 2, 2, 2, 8143, 8144, 3, 2, 2, 2, 8144, 883, 3, 2, 2, 2, 8145, 8150, 5, 902, 452, 2, 8146, 8150, 5, 894, 448, 2, 8147, 8150, 5, 900, 451, 2, 8148, 8150, 5, 886, 444, 2, 8149, 8145, 3, 2, 2, 2, 8149, 8146, 3, 2, 2, 2, 8149, 8147, 3, 2, 2, 2, 8149, 8148, 3, 2, 2, 2, 8150, 885, 3, 2, 2, 2, 8151, 8152, 7, 182, 2, 2, 8152, 8153, 7, 2225, 2, 2, 8153, 8154, 5, 1232, 617, 2, 8154, 8156, 7, 2226, 2, 2, 8155, 8157, 7, 385, 2, 2, 8156, 8155, 3, 2, 2, 2, 8156, 8157, 3, 2, 2, 2, 8157, 887, 3, 2, 2, 2, 8158, 8159, 7, 413, 2, 2, 8159, 8160, 7, 259, 2, 2, 8160, 8161, 5, 1398, 700, 2, 8161, 889, 3, 2, 2, 2, 8162, 8163, 7, 441, 2, 2, 8163, 8164, 7, 259, 2, 2, 8164, 8165, 5, 1398, 700, 2, 8165, 891, 3, 2, 2, 2, 8166, 8167, 7, 385, 2, 2, 8167, 8168, 7, 259, 2, 2, 8168, 8169, 5, 1398, 700, 2, 8169, 893, 3, 2, 2, 2, 8170, 8171, 7, 546, 2, 2, 8171, 8172, 7, 724, 2, 2, 8172, 8173, 5, 1446, 724, 2, 8173, 8175, 5, 896, 449, 2, 8174, 8176, 5, 898, 450, 2, 8175, 8174, 3, 2, 2, 2, 8175, 8176, 3, 2, 2, 2, 8176, 895, 3, 2, 2, 2, 8177, 8178, 7, 1376, 2, 2, 8178, 8179, 5, 1428, 715, 2, 8179, 8180, 5, 1446, 724, 2, 8180, 897, 3, 2, 2, 2, 8181, 8182, 7, 1130, 2, 2, 8182, 8186, 7, 364, 2, 2, 8183, 8187, 7, 164, 2, 2, 8184, 8185, 7, 1512, 2, 2, 8185, 8187, 7, 1099, 2, 2, 8186, 8183, 3, 2, 2, 2, 8186, 8184, 3, 2, 2, 2, 8187, 899, 3, 2, 2, 2, 8188, 8189, 7, 2004, 2, 2, 8189, 8191, 5, 1446, 724, 2, 8190, 8192, 5, 768, 385, 2, 8191, 8190, 3, 2, 2, 2, 8191, 8192, 3, 2, 2, 2, 8192, 901, 3, 2, 2, 2, 8193, 8194, 7, 1306, 2, 2, 8194, 8195, 7, 724, 2, 2, 8195, 8197, 5, 1446, 724, 2, 8196, 8198, 5, 768, 385, 2, 8197, 8196, 3, 2, 2, 2, 8197, 8198, 3, 2, 2, 2, 8198, 903, 3, 2, 2, 2, 8199, 8200, 7, 346, 2, 2, 8200, 8202, 5, 922, 462, 2, 8201, 8199, 3, 2, 2, 2, 8201, 8202, 3, 2, 2, 2, 8202, 8203, 3, 2, 2, 2, 8203, 8204, 7, 104, 2, 2, 8204, 8211, 5, 952, 477, 2, 8205, 8207, 7, 470, 2, 2, 8206, 8208, 5, 1002, 502, 2, 8207, 8206, 3, 2, 2, 2, 8208, 8209, 3, 2, 2, 2, 8209, 8207, 3, 2, 2, 2, 8209, 8210, 3, 2, 2, 2, 8210, 8212, 3, 2, 2, 2, 8211, 8205, 3, 2, 2, 2, 8211, 8212, 3, 2, 2, 2, 8212, 8213, 3, 2, 2, 2, 8213, 8214, 7, 447, 2, 2, 8214, 8215, 7, 2243, 2, 2, 8215, 905, 3, 2, 2, 2, 8216, 8217, 7, 82, 2, 2, 8217, 8218, 9, 87, 2, 2, 8218, 907, 3, 2, 2, 2, 8219, 8222, 7, 731, 2, 2, 8220, 8223, 5, 910, 456, 2, 8221, 8223, 5, 912, 457, 2, 8222, 8220, 3, 2, 2, 2, 8222, 8221, 3, 2, 2, 2, 8223, 909, 3, 2, 2, 2, 8224, 8225, 7, 702, 2, 2, 8225, 8226, 7, 881, 2, 2, 8226, 8227, 7, 2221, 2, 2, 8227, 911, 3, 2, 2, 2, 8228, 8231, 7, 192, 2, 2, 8229, 8230, 7, 881, 2, 2, 8230, 8232, 7, 2221, 2, 2, 8231, 8229, 3, 2, 2, 2, 8231, 8232, 3, 2, 2, 2, 8232, 8233, 3, 2, 2, 2, 8233, 8234, 7, 751, 2, 2, 8234, 8236, 5, 1488, 745, 2, 8235, 8237, 5, 914, 458, 2, 8236, 8235, 3, 2, 2, 2, 8236, 8237, 3, 2, 2, 2, 8237, 8240, 3, 2, 2, 2, 8238, 8239, 7, 2123, 2, 2, 8239, 8241, 7, 267, 2, 2, 8240, 8238, 3, 2, 2, 2, 8240, 8241, 3, 2, 2, 2, 8241, 8243, 3, 2, 2, 2, 8242, 8244, 5, 916, 459, 2, 8243, 8242, 3, 2, 2, 2, 8243, 8244, 3, 2, 2, 2, 8244, 913, 3, 2, 2, 2, 8245, 8246, 7, 33, 2, 2, 8246, 8247, 7, 654, 2, 2, 8247, 8248, 7, 2225, 2, 2, 8248, 8249, 5, 1234, 618, 2, 8249, 8250, 7, 2226, 2, 2, 8250, 915, 3, 2, 2, 2, 8251, 8252, 7, 1199, 2, 2, 8252, 8257, 7, 2225, 2, 2, 8253, 8258, 5, 1234, 618, 2, 8254, 8255, 7, 2218, 2, 2, 8255, 8256, 7, 2218, 2, 2, 8256, 8258, 7, 2218, 2, 2, 8257, 8253, 3, 2, 2, 2, 8257, 8254, 3, 2, 2, 2, 8258, 8259, 3, 2, 2, 2, 8259, 8260, 7, 2226, 2, 2, 8260, 917, 3, 2, 2, 2, 8261, 8265, 5, 1382, 692, 2, 8262, 8264, 9, 88, 2, 2, 8263, 8262, 3, 2, 2, 2, 8264, 8267, 3, 2, 2, 2, 8265, 8263, 3, 2, 2, 2, 8265, 8266, 3, 2, 2, 2, 8266, 8269, 3, 2, 2, 2, 8267, 8265, 3, 2, 2, 2, 8268, 8270, 5, 1460, 731, 2, 8269, 8268, 3, 2, 2, 2, 8269, 8270, 3, 2, 2, 2, 8270, 8272, 3, 2, 2, 2, 8271, 8273, 5, 920, 461, 2, 8272, 8271, 3, 2, 2, 2, 8272, 8273, 3, 2, 2, 2, 8273, 919, 3, 2, 2, 2, 8274, 8275, 9, 89, 2, 2, 8275, 8276, 5, 1236, 619, 2, 8276, 921, 3, 2, 2, 2, 8277, 8279, 5, 924, 463, 2, 8278, 8277, 3, 2, 2, 2, 8279, 8280, 3, 2, 2, 2, 8280, 8278, 3, 2, 2, 2, 8280, 8281, 3, 2, 2, 2, 8281, 923, 3, 2, 2, 2, 8282, 8293, 5, 936, 469, 2, 8283, 8293, 5, 926, 464, 2, 8284, 8293, 5, 928, 465, 2, 8285, 8293, 5, 930, 466, 2, 8286, 8293, 5, 934, 468, 2, 8287, 8293, 5, 944, 473, 2, 8288, 8293, 5, 34, 18, 2, 8289, 8293, 5, 36, 19, 2, 8290, 8293, 5, 46, 24, 2, 8291, 8293, 5, 44, 23, 2, 8292, 8282, 3, 2, 2, 2, 8292, 8283, 3, 2, 2, 2, 8292, 8284, 3, 2, 2, 2, 8292, 8285, 3, 2, 2, 2, 8292, 8286, 3, 2, 2, 2, 8292, 8287, 3, 2, 2, 2, 8292, 8288, 3, 2, 2, 2, 8292, 8289, 3, 2, 2, 2, 8292, 8290, 3, 2, 2, 2, 8292, 8291, 3, 2, 2, 2, 8293, 925, 3, 2, 2, 2, 8294, 8296, 5, 1488, 745, 2, 8295, 8297, 7, 257, 2, 2, 8296, 8295, 3, 2, 2, 2, 8296, 8297, 3, 2, 2, 2, 8297, 8298, 3, 2, 2, 2, 8298, 8301, 5, 1460, 731, 2, 8299, 8300, 7, 1075, 2, 2, 8300, 8302, 7, 1099, 2, 2, 8301, 8299, 3, 2, 2, 2, 8301, 8302, 3, 2, 2, 2, 8302, 8304, 3, 2, 2, 2, 8303, 8305, 5, 920, 461, 2, 8304, 8303, 3, 2, 2, 2, 8304, 8305, 3, 2, 2, 2, 8305, 8306, 3, 2, 2, 2, 8306, 8307, 7, 2243, 2, 2, 8307, 927, 3, 2, 2, 2, 8308, 8309, 7, 1618, 2, 2, 8309, 8310, 5, 1488, 745, 2, 8310, 8311, 7, 697, 2, 2, 8311, 8317, 5, 1460, 731, 2, 8312, 8313, 7, 1346, 2, 2, 8313, 8314, 5, 1236, 619, 2, 8314, 8315, 7, 2217, 2, 2, 8315, 8316, 5, 1236, 619, 2, 8316, 8318, 3, 2, 2, 2, 8317, 8312, 3, 2, 2, 2, 8317, 8318, 3, 2, 2, 2, 8318, 8321, 3, 2, 2, 2, 8319, 8320, 7, 1075, 2, 2, 8320, 8322, 7, 1099, 2, 2, 8321, 8319, 3, 2, 2, 2, 8321, 8322, 3, 2, 2, 2, 8322, 8323, 3, 2, 2, 2, 8323, 8324, 7, 2243, 2, 2, 8324, 929, 3, 2, 2, 2, 8325, 8326, 7, 311, 2, 2, 8326, 8338, 5, 1488, 745, 2, 8327, 8328, 7, 2225, 2, 2, 8328, 8333, 5, 932, 467, 2, 8329, 8330, 7, 2231, 2, 2, 8330, 8332, 5, 932, 467, 2, 8331, 8329, 3, 2, 2, 2, 8332, 8335, 3, 2, 2, 2, 8333, 8331, 3, 2, 2, 2, 8333, 8334, 3, 2, 2, 2, 8334, 8336, 3, 2, 2, 2, 8335, 8333, 3, 2, 2, 2, 8336, 8337, 7, 2226, 2, 2, 8337, 8339, 3, 2, 2, 2, 8338, 8327, 3, 2, 2, 2, 8338, 8339, 3, 2, 2, 2, 8339, 8342, 3, 2, 2, 2, 8340, 8341, 7, 1433, 2, 2, 8341, 8343, 5, 1460, 731, 2, 8342, 8340, 3, 2, 2, 2, 8342, 8343, 3, 2, 2, 2, 8343, 8346, 3, 2, 2, 2, 8344, 8345, 7, 697, 2, 2, 8345, 8347, 5, 1044, 523, 2, 8346, 8344, 3, 2, 2, 2, 8346, 8347, 3, 2, 2, 2, 8347, 8348, 3, 2, 2, 2, 8348, 8349, 7, 2243, 2, 2, 8349, 931, 3, 2, 2, 2, 8350, 8355, 5, 1382, 692, 2, 8351, 8353, 7, 654, 2, 2, 8352, 8351, 3, 2, 2, 2, 8352, 8353, 3, 2, 2, 2, 8353, 8354, 3, 2, 2, 2, 8354, 8356, 5, 1460, 731, 2, 8355, 8352, 3, 2, 2, 2, 8355, 8356, 3, 2, 2, 2, 8356, 8358, 3, 2, 2, 2, 8357, 8359, 5, 920, 461, 2, 8358, 8357, 3, 2, 2, 2, 8358, 8359, 3, 2, 2, 2, 8359, 933, 3, 2, 2, 2, 8360, 8361, 5, 1488, 745, 2, 8361, 8362, 7, 470, 2, 2, 8362, 8363, 7, 2243, 2, 2, 8363, 935, 3, 2, 2, 2, 8364, 8395, 7, 1289, 2, 2, 8365, 8396, 7, 1502, 2, 2, 8366, 8396, 7, 90, 2, 2, 8367, 8368, 7, 471, 2, 2, 8368, 8369, 7, 2225, 2, 2, 8369, 8370, 5, 1406, 704, 2, 8370, 8371, 7, 2231, 2, 2, 8371, 8372, 5, 1484, 743, 2, 8372, 8373, 7, 2226, 2, 2, 8373, 8396, 3, 2, 2, 2, 8374, 8375, 7, 660, 2, 2, 8375, 8376, 7, 2225, 2, 2, 8376, 8377, 5, 1488, 745, 2, 8377, 8378, 7, 2231, 2, 2, 8378, 8379, 5, 1236, 619, 2, 8379, 8380, 7, 2226, 2, 2, 8380, 8396, 3, 2, 2, 2, 8381, 8382, 7, 1424, 2, 2, 8382, 8385, 7, 2225, 2, 2, 8383, 8386, 5, 1488, 745, 2, 8384, 8386, 7, 353, 2, 2, 8385, 8383, 3, 2, 2, 2, 8385, 8384, 3, 2, 2, 2, 8386, 8389, 3, 2, 2, 2, 8387, 8388, 7, 2231, 2, 2, 8388, 8390, 5, 1488, 745, 2, 8389, 8387, 3, 2, 2, 2, 8390, 8391, 3, 2, 2, 2, 8391, 8389, 3, 2, 2, 2, 8391, 8392, 3, 2, 2, 2, 8392, 8393, 3, 2, 2, 2, 8393, 8394, 7, 2226, 2, 2, 8394, 8396, 3, 2, 2, 2, 8395, 8365, 3, 2, 2, 2, 8395, 8366, 3, 2, 2, 2, 8395, 8367, 3, 2, 2, 2, 8395, 8374, 3, 2, 2, 2, 8395, 8381, 3, 2, 2, 2, 8396, 8397, 3, 2, 2, 2, 8397, 8398, 7, 2243, 2, 2, 8398, 937, 3, 2, 2, 2, 8399, 8400, 7, 1361, 2, 2, 8400, 8401, 7, 2225, 2, 2, 8401, 8406, 5, 940, 471, 2, 8402, 8403, 7, 2231, 2, 2, 8403, 8405, 5, 940, 471, 2, 8404, 8402, 3, 2, 2, 2, 8405, 8408, 3, 2, 2, 2, 8406, 8404, 3, 2, 2, 2, 8406, 8407, 3, 2, 2, 2, 8407, 8409, 3, 2, 2, 2, 8408, 8406, 3, 2, 2, 2, 8409, 8410, 7, 2226, 2, 2, 8410, 939, 3, 2, 2, 2, 8411, 8413, 5, 1426, 714, 2, 8412, 8414, 5, 1460, 731, 2, 8413, 8412, 3, 2, 2, 2, 8413, 8414, 3, 2, 2, 2, 8414, 8417, 3, 2, 2, 2, 8415, 8416, 7, 1075, 2, 2, 8416, 8418, 7, 1099, 2, 2, 8417, 8415, 3, 2, 2, 2, 8417, 8418, 3, 2, 2, 2, 8418, 8420, 3, 2, 2, 2, 8419, 8421, 5, 920, 461, 2, 8420, 8419, 3, 2, 2, 2, 8420, 8421, 3, 2, 2, 2, 8421, 941, 3, 2, 2, 2, 8422, 8423, 7, 1378, 2, 2, 8423, 8426, 7, 311, 2, 2, 8424, 8425, 7, 1433, 2, 2, 8425, 8427, 5, 1460, 731, 2, 8426, 8424, 3, 2, 2, 2, 8426, 8427, 3, 2, 2, 2, 8427, 943, 3, 2, 2, 2, 8428, 8429, 7, 1989, 2, 2, 8429, 8430, 5, 1488, 745, 2, 8430, 8435, 7, 697, 2, 2, 8431, 8436, 5, 946, 474, 2, 8432, 8436, 5, 950, 476, 2, 8433, 8436, 5, 938, 470, 2, 8434, 8436, 5, 942, 472, 2, 8435, 8431, 3, 2, 2, 2, 8435, 8432, 3, 2, 2, 2, 8435, 8433, 3, 2, 2, 2, 8435, 8434, 3, 2, 2, 2, 8436, 8437, 3, 2, 2, 2, 8437, 8438, 7, 2243, 2, 2, 8438, 945, 3, 2, 2, 2, 8439, 8440, 7, 1914, 2, 2, 8440, 8441, 7, 1117, 2, 2, 8441, 8443, 5, 1460, 731, 2, 8442, 8444, 5, 948, 475, 2, 8443, 8442, 3, 2, 2, 2, 8443, 8444, 3, 2, 2, 2, 8444, 8447, 3, 2, 2, 2, 8445, 8446, 7, 1075, 2, 2, 8446, 8448, 7, 1099, 2, 2, 8447, 8445, 3, 2, 2, 2, 8447, 8448, 3, 2, 2, 2, 8448, 947, 3, 2, 2, 2, 8449, 8452, 7, 629, 2, 2, 8450, 8452, 7, 633, 2, 2, 8451, 8449, 3, 2, 2, 2, 8451, 8450, 3, 2, 2, 2, 8452, 8453, 3, 2, 2, 2, 8453, 8454, 7, 148, 2, 2, 8454, 8455, 5, 1460, 731, 2, 8455, 949, 3, 2, 2, 2, 8456, 8460, 7, 2082, 2, 2, 8457, 8458, 7, 2084, 2, 2, 8458, 8460, 7, 62, 2, 2, 8459, 8456, 3, 2, 2, 2, 8459, 8457, 3, 2, 2, 2, 8460, 8461, 3, 2, 2, 2, 8461, 8462, 7, 2225, 2, 2, 8462, 8463, 5, 1236, 619, 2, 8463, 8464, 7, 2226, 2, 2, 8464, 8465, 7, 1117, 2, 2, 8465, 8468, 5, 1460, 731, 2, 8466, 8467, 7, 1075, 2, 2, 8467, 8469, 7, 1099, 2, 2, 8468, 8466, 3, 2, 2, 2, 8468, 8469, 3, 2, 2, 2, 8469, 951, 3, 2, 2, 2, 8470, 8471, 5, 956, 479, 2, 8471, 8472, 9, 90, 2, 2, 8472, 8475, 3, 2, 2, 2, 8473, 8475, 5, 954, 478, 2, 8474, 8470, 3, 2, 2, 2, 8474, 8473, 3, 2, 2, 2, 8475, 8476, 3, 2, 2, 2, 8476, 8474, 3, 2, 2, 2, 8476, 8477, 3, 2, 2, 2, 8477, 953, 3, 2, 2, 2, 8478, 8479, 7, 2241, 2, 2, 8479, 8480, 7, 2241, 2, 2, 8480, 8481, 5, 1400, 701, 2, 8481, 8482, 7, 2240, 2, 2, 8482, 8483, 7, 2240, 2, 2, 8483, 955, 3, 2, 2, 2, 8484, 8502, 5, 1000, 501, 2, 8485, 8502, 5, 1006, 504, 2, 8486, 8502, 5, 960, 481, 2, 8487, 8502, 5, 962, 482, 2, 8488, 8502, 5, 964, 483, 2, 8489, 8502, 5, 966, 484, 2, 8490, 8502, 5, 968, 485, 2, 8491, 8502, 5, 974, 488, 2, 8492, 8502, 5, 978, 490, 2, 8493, 8502, 5, 988, 495, 2, 8494, 8502, 5, 990, 496, 2, 8495, 8502, 5, 992, 497, 2, 8496, 8502, 5, 1272, 637, 2, 8497, 8502, 5, 1008, 505, 2, 8498, 8502, 5, 994, 498, 2, 8499, 8502, 5, 998, 500, 2, 8500, 8502, 5, 996, 499, 2, 8501, 8484, 3, 2, 2, 2, 8501, 8485, 3, 2, 2, 2, 8501, 8486, 3, 2, 2, 2, 8501, 8487, 3, 2, 2, 2, 8501, 8488, 3, 2, 2, 2, 8501, 8489, 3, 2, 2, 2, 8501, 8490, 3, 2, 2, 2, 8501, 8491, 3, 2, 2, 2, 8501, 8492, 3, 2, 2, 2, 8501, 8493, 3, 2, 2, 2, 8501, 8494, 3, 2, 2, 2, 8501, 8495, 3, 2, 2, 2, 8501, 8496, 3, 2, 2, 2, 8501, 8497, 3, 2, 2, 2, 8501, 8498, 3, 2, 2, 2, 8501, 8499, 3, 2, 2, 2, 8501, 8500, 3, 2, 2, 2, 8502, 957, 3, 2, 2, 2, 8503, 8505, 10, 91, 2, 2, 8504, 8503, 3, 2, 2, 2, 8505, 8506, 3, 2, 2, 2, 8506, 8504, 3, 2, 2, 2, 8506, 8507, 3, 2, 2, 2, 8507, 959, 3, 2, 2, 2, 8508, 8511, 5, 1470, 736, 2, 8509, 8511, 5, 1468, 735, 2, 8510, 8508, 3, 2, 2, 2, 8510, 8509, 3, 2, 2, 2, 8511, 8512, 3, 2, 2, 2, 8512, 8513, 7, 2234, 2, 2, 8513, 8514, 5, 1236, 619, 2, 8514, 961, 3, 2, 2, 2, 8515, 8517, 7, 268, 2, 2, 8516, 8518, 5, 1400, 701, 2, 8517, 8516, 3, 2, 2, 2, 8517, 8518, 3, 2, 2, 2, 8518, 8521, 3, 2, 2, 2, 8519, 8520, 7, 2115, 2, 2, 8520, 8522, 5, 1232, 617, 2, 8521, 8519, 3, 2, 2, 2, 8521, 8522, 3, 2, 2, 2, 8522, 963, 3, 2, 2, 2, 8523, 8525, 7, 482, 2, 2, 8524, 8526, 5, 1400, 701, 2, 8525, 8524, 3, 2, 2, 2, 8525, 8526, 3, 2, 2, 2, 8526, 8529, 3, 2, 2, 2, 8527, 8528, 7, 2115, 2, 2, 8528, 8530, 5, 1232, 617, 2, 8529, 8527, 3, 2, 2, 2, 8529, 8530, 3, 2, 2, 2, 8530, 965, 3, 2, 2, 2, 8531, 8532, 7, 572, 2, 2, 8532, 8533, 5, 1400, 701, 2, 8533, 967, 3, 2, 2, 2, 8534, 8535, 7, 609, 2, 2, 8535, 8536, 5, 1232, 617, 2, 8536, 8537, 7, 1927, 2, 2, 8537, 8541, 5, 952, 477, 2, 8538, 8540, 5, 970, 486, 2, 8539, 8538, 3, 2, 2, 2, 8540, 8543, 3, 2, 2, 2, 8541, 8539, 3, 2, 2, 2, 8541, 8542, 3, 2, 2, 2, 8542, 8545, 3, 2, 2, 2, 8543, 8541, 3, 2, 2, 2, 8544, 8546, 5, 972, 487, 2, 8545, 8544, 3, 2, 2, 2, 8545, 8546, 3, 2, 2, 2, 8546, 8547, 3, 2, 2, 2, 8547, 8548, 7, 447, 2, 2, 8548, 8549, 7, 609, 2, 2, 8549, 969, 3, 2, 2, 2, 8550, 8551, 7, 435, 2, 2, 8551, 8552, 5, 1232, 617, 2, 8552, 8553, 7, 1927, 2, 2, 8553, 8554, 5, 952, 477, 2, 8554, 971, 3, 2, 2, 2, 8555, 8556, 7, 434, 2, 2, 8556, 8557, 5, 952, 477, 2, 8557, 973, 3, 2, 2, 2, 8558, 8560, 5, 954, 478, 2, 8559, 8558, 3, 2, 2, 2, 8559, 8560, 3, 2, 2, 2, 8560, 8565, 3, 2, 2, 2, 8561, 8562, 7, 2117, 2, 2, 8562, 8566, 5, 1232, 617, 2, 8563, 8564, 7, 548, 2, 2, 8564, 8566, 5, 976, 489, 2, 8565, 8561, 3, 2, 2, 2, 8565, 8563, 3, 2, 2, 2, 8565, 8566, 3, 2, 2, 2, 8566, 8567, 3, 2, 2, 2, 8567, 8568, 7, 791, 2, 2, 8568, 8569, 5, 952, 477, 2, 8569, 8570, 7, 447, 2, 2, 8570, 8572, 7, 791, 2, 2, 8571, 8573, 5, 1400, 701, 2, 8572, 8571, 3, 2, 2, 2, 8572, 8573, 3, 2, 2, 2, 8573, 975, 3, 2, 2, 2, 8574, 8575, 5, 1416, 709, 2, 8575, 8577, 7, 654, 2, 2, 8576, 8578, 7, 1435, 2, 2, 8577, 8576, 3, 2, 2, 2, 8577, 8578, 3, 2, 2, 2, 8578, 8579, 3, 2, 2, 2, 8579, 8580, 5, 984, 493, 2, 8580, 8581, 7, 2217, 2, 2, 8581, 8582, 5, 986, 494, 2, 8582, 8600, 3, 2, 2, 2, 8583, 8584, 5, 1420, 711, 2, 8584, 8597, 7, 654, 2, 2, 8585, 8591, 5, 1418, 710, 2, 8586, 8588, 7, 2225, 2, 2, 8587, 8589, 5, 1234, 618, 2, 8588, 8587, 3, 2, 2, 2, 8588, 8589, 3, 2, 2, 2, 8589, 8590, 3, 2, 2, 2, 8590, 8592, 7, 2226, 2, 2, 8591, 8586, 3, 2, 2, 2, 8591, 8592, 3, 2, 2, 2, 8592, 8598, 3, 2, 2, 2, 8593, 8594, 7, 2225, 2, 2, 8594, 8595, 5, 1044, 523, 2, 8595, 8596, 7, 2226, 2, 2, 8596, 8598, 3, 2, 2, 2, 8597, 8585, 3, 2, 2, 2, 8597, 8593, 3, 2, 2, 2, 8598, 8600, 3, 2, 2, 2, 8599, 8574, 3, 2, 2, 2, 8599, 8583, 3, 2, 2, 2, 8600, 977, 3, 2, 2, 2, 8601, 8602, 7, 543, 2, 2, 8602, 8603, 5, 1416, 709, 2, 8603, 8604, 7, 654, 2, 2, 8604, 8605, 5, 980, 491, 2, 8605, 8608, 5, 1008, 505, 2, 8606, 8607, 7, 1464, 2, 2, 8607, 8609, 7, 472, 2, 2, 8608, 8606, 3, 2, 2, 2, 8608, 8609, 3, 2, 2, 2, 8609, 979, 3, 2, 2, 2, 8610, 8611, 5, 984, 493, 2, 8611, 8612, 7, 2217, 2, 2, 8612, 8613, 5, 986, 494, 2, 8613, 8624, 3, 2, 2, 2, 8614, 8615, 7, 650, 2, 2, 8615, 8616, 7, 1117, 2, 2, 8616, 8618, 5, 1422, 712, 2, 8617, 8619, 5, 982, 492, 2, 8618, 8617, 3, 2, 2, 2, 8618, 8619, 3, 2, 2, 2, 8619, 8624, 3, 2, 2, 2, 8620, 8621, 7, 2075, 2, 2, 8621, 8622, 7, 1117, 2, 2, 8622, 8624, 5, 1416, 709, 2, 8623, 8610, 3, 2, 2, 2, 8623, 8614, 3, 2, 2, 2, 8623, 8620, 3, 2, 2, 2, 8624, 981, 3, 2, 2, 2, 8625, 8626, 7, 109, 2, 2, 8626, 8627, 5, 984, 493, 2, 8627, 8628, 7, 45, 2, 2, 8628, 8629, 5, 986, 494, 2, 8629, 983, 3, 2, 2, 2, 8630, 8631, 5, 1258, 630, 2, 8631, 985, 3, 2, 2, 2, 8632, 8633, 5, 1258, 630, 2, 8633, 987, 3, 2, 2, 2, 8634, 8635, 7, 1099, 2, 2, 8635, 989, 3, 2, 2, 2, 8636, 8638, 7, 1343, 2, 2, 8637, 8639, 5, 1406, 704, 2, 8638, 8637, 3, 2, 2, 2, 8638, 8639, 3, 2, 2, 2, 8639, 991, 3, 2, 2, 2, 8640, 8642, 7, 1433, 2, 2, 8641, 8643, 5, 1236, 619, 2, 8642, 8641, 3, 2, 2, 2, 8642, 8643, 3, 2, 2, 2, 8643, 993, 3, 2, 2, 2, 8644, 8646, 7, 159, 2, 2, 8645, 8644, 3, 2, 2, 2, 8645, 8646, 3, 2, 2, 2, 8646, 8647, 3, 2, 2, 2, 8647, 8649, 5, 1376, 689, 2, 8648, 8650, 5, 1450, 726, 2, 8649, 8648, 3, 2, 2, 2, 8649, 8650, 3, 2, 2, 2, 8650, 995, 3, 2, 2, 2, 8651, 8653, 5, 1376, 689, 2, 8652, 8654, 5, 1450, 726, 2, 8653, 8652, 3, 2, 2, 2, 8653, 8654, 3, 2, 2, 2, 8654, 997, 3, 2, 2, 2, 8655, 8656, 7, 1253, 2, 2, 8656, 8657, 7, 1453, 2, 2, 8657, 8658, 7, 2225, 2, 2, 8658, 8659, 5, 1236, 619, 2, 8659, 8660, 7, 2226, 2, 2, 8660, 999, 3, 2, 2, 2, 8661, 8662, 7, 104, 2, 2, 8662, 8669, 5, 952, 477, 2, 8663, 8665, 7, 470, 2, 2, 8664, 8666, 5, 1002, 502, 2, 8665, 8664, 3, 2, 2, 2, 8666, 8667, 3, 2, 2, 2, 8667, 8665, 3, 2, 2, 2, 8667, 8668, 3, 2, 2, 2, 8668, 8670, 3, 2, 2, 2, 8669, 8663, 3, 2, 2, 2, 8669, 8670, 3, 2, 2, 2, 8670, 8671, 3, 2, 2, 2, 8671, 8673, 7, 447, 2, 2, 8672, 8674, 5, 1400, 701, 2, 8673, 8672, 3, 2, 2, 2, 8673, 8674, 3, 2, 2, 2, 8674, 1001, 3, 2, 2, 2, 8675, 8676, 7, 2115, 2, 2, 8676, 8681, 5, 1406, 704, 2, 8677, 8678, 7, 1174, 2, 2, 8678, 8680, 5, 1406, 704, 2, 8679, 8677, 3, 2, 2, 2, 8680, 8683, 3, 2, 2, 2, 8681, 8679, 3, 2, 2, 2, 8681, 8682, 3, 2, 2, 2, 8682, 8684, 3, 2, 2, 2, 8683, 8681, 3, 2, 2, 2, 8684, 8685, 7, 1927, 2, 2, 8685, 8686, 5, 952, 477, 2, 8686, 1003, 3, 2, 2, 2, 8687, 8689, 7, 346, 2, 2, 8688, 8687, 3, 2, 2, 2, 8688, 8689, 3, 2, 2, 2, 8689, 8691, 3, 2, 2, 2, 8690, 8692, 5, 924, 463, 2, 8691, 8690, 3, 2, 2, 2, 8692, 8693, 3, 2, 2, 2, 8693, 8691, 3, 2, 2, 2, 8693, 8694, 3, 2, 2, 2, 8694, 8696, 3, 2, 2, 2, 8695, 8688, 3, 2, 2, 2, 8695, 8696, 3, 2, 2, 2, 8696, 8697, 3, 2, 2, 2, 8697, 8698, 5, 1000, 501, 2, 8698, 1005, 3, 2, 2, 2, 8699, 8701, 7, 346, 2, 2, 8700, 8699, 3, 2, 2, 2, 8700, 8701, 3, 2, 2, 2, 8701, 8703, 3, 2, 2, 2, 8702, 8704, 5, 924, 463, 2, 8703, 8702, 3, 2, 2, 2, 8704, 8705, 3, 2, 2, 2, 8705, 8703, 3, 2, 2, 2, 8705, 8706, 3, 2, 2, 2, 8706, 8707, 3, 2, 2, 2, 8707, 8708, 5, 1000, 501, 2, 8708, 1007, 3, 2, 2, 2, 8709, 8714, 5, 1010, 506, 2, 8710, 8714, 5, 1014, 508, 2, 8711, 8714, 5, 1016, 509, 2, 8712, 8714, 5, 1026, 514, 2, 8713, 8709, 3, 2, 2, 2, 8713, 8710, 3, 2, 2, 2, 8713, 8711, 3, 2, 2, 2, 8713, 8712, 3, 2, 2, 2, 8714, 1009, 3, 2, 2, 2, 8715, 8716, 7, 477, 2, 2, 8716, 8717, 7, 615, 2, 2, 8717, 8727, 5, 1236, 619, 2, 8718, 8720, 5, 1360, 681, 2, 8719, 8721, 5, 1314, 658, 2, 8720, 8719, 3, 2, 2, 2, 8720, 8721, 3, 2, 2, 2, 8721, 8728, 3, 2, 2, 2, 8722, 8724, 5, 1314, 658, 2, 8723, 8725, 5, 1012, 507, 2, 8724, 8723, 3, 2, 2, 2, 8724, 8725, 3, 2, 2, 2, 8725, 8728, 3, 2, 2, 2, 8726, 8728, 5, 1012, 507, 2, 8727, 8718, 3, 2, 2, 2, 8727, 8722, 3, 2, 2, 2, 8727, 8726, 3, 2, 2, 2, 8727, 8728, 3, 2, 2, 2, 8728, 1011, 3, 2, 2, 2, 8729, 8730, 9, 92, 2, 2, 8730, 8731, 5, 1360, 681, 2, 8731, 1013, 3, 2, 2, 2, 8732, 8740, 5, 1192, 597, 2, 8733, 8740, 5, 1204, 603, 2, 8734, 8740, 5, 1044, 523, 2, 8735, 8740, 5, 1166, 584, 2, 8736, 8740, 5, 1172, 587, 2, 8737, 8740, 5, 1174, 588, 2, 8738, 8740, 5, 1040, 521, 2, 8739, 8732, 3, 2, 2, 2, 8739, 8733, 3, 2, 2, 2, 8739, 8734, 3, 2, 2, 2, 8739, 8735, 3, 2, 2, 2, 8739, 8736, 3, 2, 2, 2, 8739, 8737, 3, 2, 2, 2, 8739, 8738, 3, 2, 2, 2, 8740, 1015, 3, 2, 2, 2, 8741, 8746, 5, 1018, 510, 2, 8742, 8746, 5, 1020, 511, 2, 8743, 8746, 5, 1022, 512, 2, 8744, 8746, 5, 1024, 513, 2, 8745, 8741, 3, 2, 2, 2, 8745, 8742, 3, 2, 2, 2, 8745, 8743, 3, 2, 2, 2, 8745, 8744, 3, 2, 2, 2, 8746, 1017, 3, 2, 2, 2, 8747, 8748, 7, 197, 2, 2, 8748, 8749, 5, 1418, 710, 2, 8749, 1019, 3, 2, 2, 2, 8750, 8751, 7, 1135, 2, 2, 8751, 8757, 5, 1418, 710, 2, 8752, 8754, 7, 2225, 2, 2, 8753, 8755, 5, 1234, 618, 2, 8754, 8753, 3, 2, 2, 2, 8754, 8755, 3, 2, 2, 2, 8755, 8756, 3, 2, 2, 2, 8756, 8758, 7, 2226, 2, 2, 8757, 8752, 3, 2, 2, 2, 8757, 8758, 3, 2, 2, 2, 8758, 1021, 3, 2, 2, 2, 8759, 8760, 7, 520, 2, 2, 8760, 8781, 5, 1418, 710, 2, 8761, 8762, 7, 693, 2, 2, 8762, 8767, 5, 1414, 708, 2, 8763, 8764, 7, 2231, 2, 2, 8764, 8766, 5, 1414, 708, 2, 8765, 8763, 3, 2, 2, 2, 8766, 8769, 3, 2, 2, 2, 8767, 8765, 3, 2, 2, 2, 8767, 8768, 3, 2, 2, 2, 8768, 8782, 3, 2, 2, 2, 8769, 8767, 3, 2, 2, 2, 8770, 8771, 7, 147, 2, 2, 8771, 8772, 7, 212, 2, 2, 8772, 8773, 7, 693, 2, 2, 8773, 8778, 5, 1414, 708, 2, 8774, 8775, 7, 2231, 2, 2, 8775, 8777, 5, 1414, 708, 2, 8776, 8774, 3, 2, 2, 2, 8777, 8780, 3, 2, 2, 2, 8778, 8776, 3, 2, 2, 2, 8778, 8779, 3, 2, 2, 2, 8779, 8782, 3, 2, 2, 2, 8780, 8778, 3, 2, 2, 2, 8781, 8761, 3, 2, 2, 2, 8781, 8770, 3, 2, 2, 2, 8782, 1023, 3, 2, 2, 2, 8783, 8784, 7, 1135, 2, 2, 8784, 8785, 5, 1414, 708, 2, 8785, 8788, 7, 548, 2, 2, 8786, 8789, 5, 1044, 523, 2, 8787, 8789, 5, 1236, 619, 2, 8788, 8786, 3, 2, 2, 2, 8788, 8787, 3, 2, 2, 2, 8789, 8791, 3, 2, 2, 2, 8790, 8792, 5, 1314, 658, 2, 8791, 8790, 3, 2, 2, 2, 8791, 8792, 3, 2, 2, 2, 8792, 1025, 3, 2, 2, 2, 8793, 8799, 5, 1028, 515, 2, 8794, 8799, 5, 1030, 516, 2, 8795, 8799, 5, 1032, 517, 2, 8796, 8799, 5, 1036, 519, 2, 8797, 8799, 5, 1038, 520, 2, 8798, 8793, 3, 2, 2, 2, 8798, 8794, 3, 2, 2, 2, 8798, 8795, 3, 2, 2, 2, 8798, 8796, 3, 2, 2, 2, 8798, 8797, 3, 2, 2, 2, 8799, 1027, 3, 2, 2, 2, 8800, 8801, 7, 1512, 2, 2, 8801, 8815, 7, 1972, 2, 2, 8802, 8803, 7, 1355, 2, 2, 8803, 8816, 9, 38, 2, 2, 8804, 8805, 7, 698, 2, 2, 8805, 8809, 7, 749, 2, 2, 8806, 8810, 7, 1501, 2, 2, 8807, 8808, 7, 1355, 2, 2, 8808, 8810, 7, 221, 2, 2, 8809, 8806, 3, 2, 2, 2, 8809, 8807, 3, 2, 2, 2, 8810, 8816, 3, 2, 2, 2, 8811, 8812, 7, 2061, 2, 2, 8812, 8813, 7, 1443, 2, 2, 8813, 8814, 7, 1490, 2, 2, 8814, 8816, 5, 1370, 686, 2, 8815, 8802, 3, 2, 2, 2, 8815, 8804, 3, 2, 2, 2, 8815, 8811, 3, 2, 2, 2, 8815, 8816, 3, 2, 2, 2, 8816, 8819, 3, 2, 2, 2, 8817, 8818, 7, 881, 2, 2, 8818, 8820, 5, 1486, 744, 2, 8819, 8817, 3, 2, 2, 2, 8819, 8820, 3, 2, 2, 2, 8820, 1029, 3, 2, 2, 2, 8821, 8822, 7, 1512, 2, 2, 8822, 8832, 9, 93, 2, 2, 8823, 8833, 7, 37, 2, 2, 8824, 8829, 5, 1398, 700, 2, 8825, 8826, 7, 2231, 2, 2, 8826, 8828, 5, 1398, 700, 2, 8827, 8825, 3, 2, 2, 2, 8828, 8831, 3, 2, 2, 2, 8829, 8827, 3, 2, 2, 2, 8829, 8830, 3, 2, 2, 2, 8830, 8833, 3, 2, 2, 2, 8831, 8829, 3, 2, 2, 2, 8832, 8823, 3, 2, 2, 2, 8832, 8824, 3, 2, 2, 2, 8833, 8834, 3, 2, 2, 2, 8834, 8835, 9, 40, 2, 2, 8835, 1031, 3, 2, 2, 2, 8836, 8838, 7, 220, 2, 2, 8837, 8839, 7, 2124, 2, 2, 8838, 8837, 3, 2, 2, 2, 8838, 8839, 3, 2, 2, 2, 8839, 8853, 3, 2, 2, 2, 8840, 8841, 7, 219, 2, 2, 8841, 8854, 5, 1236, 619, 2, 8842, 8851, 7, 544, 2, 2, 8843, 8844, 7, 278, 2, 2, 8844, 8852, 5, 1236, 619, 2, 8845, 8852, 7, 277, 2, 2, 8846, 8849, 5, 1236, 619, 2, 8847, 8848, 7, 2231, 2, 2, 8848, 8850, 5, 1236, 619, 2, 8849, 8847, 3, 2, 2, 2, 8849, 8850, 3, 2, 2, 2, 8850, 8852, 3, 2, 2, 2, 8851, 8843, 3, 2, 2, 2, 8851, 8845, 3, 2, 2, 2, 8851, 8846, 3, 2, 2, 2, 8852, 8854, 3, 2, 2, 2, 8853, 8840, 3, 2, 2, 2, 8853, 8842, 3, 2, 2, 2, 8853, 8854, 3, 2, 2, 2, 8854, 8856, 3, 2, 2, 2, 8855, 8857, 5, 1034, 518, 2, 8856, 8855, 3, 2, 2, 2, 8856, 8857, 3, 2, 2, 2, 8857, 1033, 3, 2, 2, 2, 8858, 8860, 7, 2127, 2, 2, 8859, 8861, 9, 76, 2, 2, 8860, 8859, 3, 2, 2, 2, 8860, 8861, 3, 2, 2, 2, 8861, 8863, 3, 2, 2, 2, 8862, 8864, 9, 94, 2, 2, 8863, 8862, 3, 2, 2, 2, 8863, 8864, 3, 2, 2, 2, 8864, 1035, 3, 2, 2, 2, 8865, 8867, 7, 1443, 2, 2, 8866, 8868, 7, 2124, 2, 2, 8867, 8866, 3, 2, 2, 2, 8867, 8868, 3, 2, 2, 2, 8868, 8876, 3, 2, 2, 2, 8869, 8871, 7, 1966, 2, 2, 8870, 8872, 7, 1463, 2, 2, 8871, 8870, 3, 2, 2, 2, 8871, 8872, 3, 2, 2, 2, 8872, 8873, 3, 2, 2, 2, 8873, 8877, 5, 1368, 685, 2, 8874, 8875, 7, 544, 2, 2, 8875, 8877, 5, 1486, 744, 2, 8876, 8869, 3, 2, 2, 2, 8876, 8874, 3, 2, 2, 2, 8876, 8877, 3, 2, 2, 2, 8877, 1037, 3, 2, 2, 2, 8878, 8879, 7, 1463, 2, 2, 8879, 8880, 5, 1368, 685, 2, 8880, 1039, 3, 2, 2, 2, 8881, 8882, 7, 487, 2, 2, 8882, 8887, 7, 1259, 2, 2, 8883, 8884, 7, 1512, 2, 2, 8884, 8885, 7, 1573, 2, 2, 8885, 8886, 7, 2245, 2, 2, 8886, 8888, 5, 1486, 744, 2, 8887, 8883, 3, 2, 2, 2, 8887, 8888, 3, 2, 2, 2, 8888, 8891, 3, 2, 2, 2, 8889, 8890, 7, 693, 2, 2, 8890, 8892, 5, 1428, 715, 2, 8891, 8889, 3, 2, 2, 2, 8891, 8892, 3, 2, 2, 2, 8892, 8893, 3, 2, 2, 2, 8893, 8899, 7, 548, 2, 2, 8894, 8900, 5, 1044, 523, 2, 8895, 8900, 5, 1166, 584, 2, 8896, 8900, 5, 1172, 587, 2, 8897, 8900, 5, 1174, 588, 2, 8898, 8900, 5, 1192, 597, 2, 8899, 8894, 3, 2, 2, 2, 8899, 8895, 3, 2, 2, 2, 8899, 8896, 3, 2, 2, 2, 8899, 8897, 3, 2, 2, 2, 8899, 8898, 3, 2, 2, 2, 8900, 1041, 3, 2, 2, 2, 8901, 8903, 5, 1046, 524, 2, 8902, 8901, 3, 2, 2, 2, 8902, 8903, 3, 2, 2, 2, 8903, 8904, 3, 2, 2, 2, 8904, 8905, 5, 1054, 528, 2, 8905, 1043, 3, 2, 2, 2, 8906, 8913, 5, 1042, 522, 2, 8907, 8912, 5, 1160, 581, 2, 8908, 8912, 5, 1152, 577, 2, 8909, 8912, 5, 1156, 579, 2, 8910, 8912, 5, 1158, 580, 2, 8911, 8907, 3, 2, 2, 2, 8911, 8908, 3, 2, 2, 2, 8911, 8909, 3, 2, 2, 2, 8911, 8910, 3, 2, 2, 2, 8912, 8915, 3, 2, 2, 2, 8913, 8911, 3, 2, 2, 2, 8913, 8914, 3, 2, 2, 2, 8914, 1045, 3, 2, 2, 2, 8915, 8913, 3, 2, 2, 2, 8916, 8917, 7, 2123, 2, 2, 8917, 8922, 5, 1048, 525, 2, 8918, 8919, 7, 2231, 2, 2, 8919, 8921, 5, 1048, 525, 2, 8920, 8918, 3, 2, 2, 2, 8921, 8924, 3, 2, 2, 2, 8922, 8920, 3, 2, 2, 2, 8922, 8923, 3, 2, 2, 2, 8923, 1047, 3, 2, 2, 2, 8924, 8922, 3, 2, 2, 2, 8925, 8927, 5, 1392, 697, 2, 8926, 8928, 5, 1446, 724, 2, 8927, 8926, 3, 2, 2, 2, 8927, 8928, 3, 2, 2, 2, 8928, 8929, 3, 2, 2, 2, 8929, 8930, 7, 63, 2, 2, 8930, 8931, 7, 2225, 2, 2, 8931, 8933, 5, 1054, 528, 2, 8932, 8934, 5, 1152, 577, 2, 8933, 8932, 3, 2, 2, 2, 8933, 8934, 3, 2, 2, 2, 8934, 8935, 3, 2, 2, 2, 8935, 8937, 7, 2226, 2, 2, 8936, 8938, 5, 1050, 526, 2, 8937, 8936, 3, 2, 2, 2, 8937, 8938, 3, 2, 2, 2, 8938, 8940, 3, 2, 2, 2, 8939, 8941, 5, 1052, 527, 2, 8940, 8939, 3, 2, 2, 2, 8940, 8941, 3, 2, 2, 2, 8941, 1049, 3, 2, 2, 2, 8942, 8943, 7, 1481, 2, 2, 8943, 8944, 9, 95, 2, 2, 8944, 8945, 7, 528, 2, 2, 8945, 8946, 7, 148, 2, 2, 8946, 8948, 5, 1426, 714, 2, 8947, 8949, 7, 64, 2, 2, 8948, 8947, 3, 2, 2, 2, 8948, 8949, 3, 2, 2, 2, 8949, 8951, 3, 2, 2, 2, 8950, 8952, 7, 373, 2, 2, 8951, 8950, 3, 2, 2, 2, 8951, 8952, 3, 2, 2, 2, 8952, 8955, 3, 2, 2, 2, 8953, 8954, 7, 1100, 2, 2, 8954, 8956, 7, 528, 2, 2, 8955, 8953, 3, 2, 2, 2, 8955, 8956, 3, 2, 2, 2, 8956, 8959, 3, 2, 2, 2, 8957, 8958, 7, 1100, 2, 2, 8958, 8960, 7, 733, 2, 2, 8959, 8957, 3, 2, 2, 2, 8959, 8960, 3, 2, 2, 2, 8960, 8979, 3, 2, 2, 2, 8961, 8962, 7, 2231, 2, 2, 8962, 8964, 5, 1426, 714, 2, 8963, 8965, 7, 64, 2, 2, 8964, 8963, 3, 2, 2, 2, 8964, 8965, 3, 2, 2, 2, 8965, 8967, 3, 2, 2, 2, 8966, 8968, 7, 373, 2, 2, 8967, 8966, 3, 2, 2, 2, 8967, 8968, 3, 2, 2, 2, 8968, 8971, 3, 2, 2, 2, 8969, 8970, 7, 1100, 2, 2, 8970, 8972, 7, 528, 2, 2, 8971, 8969, 3, 2, 2, 2, 8971, 8972, 3, 2, 2, 2, 8972, 8975, 3, 2, 2, 2, 8973, 8974, 7, 1100, 2, 2, 8974, 8976, 7, 733, 2, 2, 8975, 8973, 3, 2, 2, 2, 8975, 8976, 3, 2, 2, 2, 8976, 8978, 3, 2, 2, 2, 8977, 8961, 3, 2, 2, 2, 8978, 8981, 3, 2, 2, 2, 8979, 8977, 3, 2, 2, 2, 8979, 8980, 3, 2, 2, 2, 8980, 8982, 3, 2, 2, 2, 8981, 8979, 3, 2, 2, 2, 8982, 8983, 7, 1512, 2, 2, 8983, 8984, 5, 1426, 714, 2, 8984, 1051, 3, 2, 2, 2, 8985, 8986, 7, 316, 2, 2, 8986, 8987, 5, 1444, 723, 2, 8987, 8988, 7, 1512, 2, 2, 8988, 8989, 5, 1426, 714, 2, 8989, 8990, 7, 1966, 2, 2, 8990, 8991, 5, 1236, 619, 2, 8991, 8992, 7, 353, 2, 2, 8992, 8993, 5, 1236, 619, 2, 8993, 1053, 3, 2, 2, 2, 8994, 8998, 5, 1056, 529, 2, 8995, 8997, 5, 1058, 530, 2, 8996, 8995, 3, 2, 2, 2, 8997, 9000, 3, 2, 2, 2, 8998, 8996, 3, 2, 2, 2, 8998, 8999, 3, 2, 2, 2, 8999, 1055, 3, 2, 2, 2, 9000, 8998, 3, 2, 2, 2, 9001, 9007, 5, 1060, 531, 2, 9002, 9003, 7, 2225, 2, 2, 9003, 9004, 5, 1054, 528, 2, 9004, 9005, 7, 2226, 2, 2, 9005, 9007, 3, 2, 2, 2, 9006, 9001, 3, 2, 2, 2, 9006, 9002, 3, 2, 2, 2, 9007, 1057, 3, 2, 2, 2, 9008, 9010, 7, 2003, 2, 2, 9009, 9011, 7, 37, 2, 2, 9010, 9009, 3, 2, 2, 2, 9010, 9011, 3, 2, 2, 2, 9011, 9015, 3, 2, 2, 2, 9012, 9015, 7, 690, 2, 2, 9013, 9015, 7, 844, 2, 2, 9014, 9008, 3, 2, 2, 2, 9014, 9012, 3, 2, 2, 2, 9014, 9013, 3, 2, 2, 2, 9015, 9016, 3, 2, 2, 2, 9016, 9017, 5, 1056, 529, 2, 9017, 1059, 3, 2, 2, 2, 9018, 9020, 7, 1492, 2, 2, 9019, 9021, 9, 96, 2, 2, 9020, 9019, 3, 2, 2, 2, 9020, 9021, 3, 2, 2, 2, 9021, 9022, 3, 2, 2, 2, 9022, 9024, 5, 1062, 532, 2, 9023, 9025, 5, 1360, 681, 2, 9024, 9023, 3, 2, 2, 2, 9024, 9025, 3, 2, 2, 2, 9025, 9026, 3, 2, 2, 2, 9026, 9028, 5, 1064, 533, 2, 9027, 9029, 5, 1358, 680, 2, 9028, 9027, 3, 2, 2, 2, 9028, 9029, 3, 2, 2, 2, 9029, 9031, 3, 2, 2, 2, 9030, 9032, 5, 1106, 554, 2, 9031, 9030, 3, 2, 2, 2, 9031, 9032, 3, 2, 2, 2, 9032, 9034, 3, 2, 2, 2, 9033, 9035, 5, 1110, 556, 2, 9034, 9033, 3, 2, 2, 2, 9034, 9035, 3, 2, 2, 2, 9035, 9037, 3, 2, 2, 2, 9036, 9038, 5, 1122, 562, 2, 9037, 9036, 3, 2, 2, 2, 9037, 9038, 3, 2, 2, 2, 9038, 9040, 3, 2, 2, 2, 9039, 9041, 5, 1152, 577, 2, 9040, 9039, 3, 2, 2, 2, 9040, 9041, 3, 2, 2, 2, 9041, 1061, 3, 2, 2, 2, 9042, 9052, 7, 2228, 2, 2, 9043, 9048, 5, 1066, 534, 2, 9044, 9045, 7, 2231, 2, 2, 9045, 9047, 5, 1066, 534, 2, 9046, 9044, 3, 2, 2, 2, 9047, 9050, 3, 2, 2, 2, 9048, 9046, 3, 2, 2, 2, 9048, 9049, 3, 2, 2, 2, 9049, 9052, 3, 2, 2, 2, 9050, 9048, 3, 2, 2, 2, 9051, 9042, 3, 2, 2, 2, 9051, 9043, 3, 2, 2, 2, 9052, 1063, 3, 2, 2, 2, 9053, 9054, 7, 556, 2, 2, 9054, 9055, 5, 1068, 535, 2, 9055, 1065, 3, 2, 2, 2, 9056, 9057, 5, 1428, 715, 2, 9057, 9058, 7, 2218, 2, 2, 9058, 9059, 7, 2228, 2, 2, 9059, 9065, 3, 2, 2, 2, 9060, 9062, 5, 1236, 619, 2, 9061, 9063, 5, 1354, 678, 2, 9062, 9061, 3, 2, 2, 2, 9062, 9063, 3, 2, 2, 2, 9063, 9065, 3, 2, 2, 2, 9064, 9056, 3, 2, 2, 2, 9064, 9060, 3, 2, 2, 2, 9065, 1067, 3, 2, 2, 2, 9066, 9071, 5, 1070, 536, 2, 9067, 9068, 7, 2231, 2, 2, 9068, 9070, 5, 1070, 536, 2, 9069, 9067, 3, 2, 2, 2, 9070, 9073, 3, 2, 2, 2, 9071, 9069, 3, 2, 2, 2, 9071, 9072, 3, 2, 2, 2, 9072, 1069, 3, 2, 2, 2, 9073, 9071, 3, 2, 2, 2, 9074, 9078, 5, 1072, 537, 2, 9075, 9077, 5, 1076, 539, 2, 9076, 9075, 3, 2, 2, 2, 9077, 9080, 3, 2, 2, 2, 9078, 9076, 3, 2, 2, 2, 9078, 9079, 3, 2, 2, 2, 9079, 9083, 3, 2, 2, 2, 9080, 9078, 3, 2, 2, 2, 9081, 9084, 5, 1088, 545, 2, 9082, 9084, 5, 1100, 551, 2, 9083, 9081, 3, 2, 2, 2, 9083, 9082, 3, 2, 2, 2, 9083, 9084, 3, 2, 2, 2, 9084, 1071, 3, 2, 2, 2, 9085, 9089, 5, 1074, 538, 2, 9086, 9088, 5, 1086, 544, 2, 9087, 9086, 3, 2, 2, 2, 9088, 9091, 3, 2, 2, 2, 9089, 9087, 3, 2, 2, 2, 9089, 9090, 3, 2, 2, 2, 9090, 9093, 3, 2, 2, 2, 9091, 9089, 3, 2, 2, 2, 9092, 9094, 5, 1356, 679, 2, 9093, 9092, 3, 2, 2, 2, 9093, 9094, 3, 2, 2, 2, 9094, 1073, 3, 2, 2, 2, 9095, 9098, 5, 1222, 612, 2, 9096, 9099, 5, 1088, 545, 2, 9097, 9099, 5, 1100, 551, 2, 9098, 9096, 3, 2, 2, 2, 9098, 9097, 3, 2, 2, 2, 9098, 9099, 3, 2, 2, 2, 9099, 9119, 3, 2, 2, 2, 9100, 9101, 7, 2225, 2, 2, 9101, 9105, 5, 1070, 536, 2, 9102, 9104, 5, 1058, 530, 2, 9103, 9102, 3, 2, 2, 2, 9104, 9107, 3, 2, 2, 2, 9105, 9103, 3, 2, 2, 2, 9105, 9106, 3, 2, 2, 2, 9106, 9108, 3, 2, 2, 2, 9107, 9105, 3, 2, 2, 2, 9108, 9111, 7, 2226, 2, 2, 9109, 9112, 5, 1088, 545, 2, 9110, 9112, 5, 1100, 551, 2, 9111, 9109, 3, 2, 2, 2, 9111, 9110, 3, 2, 2, 2, 9111, 9112, 3, 2, 2, 2, 9112, 9119, 3, 2, 2, 2, 9113, 9114, 7, 1129, 2, 2, 9114, 9115, 7, 2225, 2, 2, 9115, 9116, 5, 1222, 612, 2, 9116, 9117, 7, 2226, 2, 2, 9117, 9119, 3, 2, 2, 2, 9118, 9095, 3, 2, 2, 2, 9118, 9100, 3, 2, 2, 2, 9118, 9113, 3, 2, 2, 2, 9119, 1075, 3, 2, 2, 2, 9120, 9122, 5, 1084, 543, 2, 9121, 9120, 3, 2, 2, 2, 9121, 9122, 3, 2, 2, 2, 9122, 9124, 3, 2, 2, 2, 9123, 9125, 9, 97, 2, 2, 9124, 9123, 3, 2, 2, 2, 9124, 9125, 3, 2, 2, 2, 9125, 9128, 3, 2, 2, 2, 9126, 9129, 7, 665, 2, 2, 9127, 9129, 5, 1082, 542, 2, 9128, 9126, 3, 2, 2, 2, 9128, 9127, 3, 2, 2, 2, 9128, 9129, 3, 2, 2, 2, 9129, 9130, 3, 2, 2, 2, 9130, 9131, 7, 704, 2, 2, 9131, 9133, 5, 1072, 537, 2, 9132, 9134, 5, 1084, 543, 2, 9133, 9132, 3, 2, 2, 2, 9133, 9134, 3, 2, 2, 2, 9134, 9139, 3, 2, 2, 2, 9135, 9138, 5, 1078, 540, 2, 9136, 9138, 5, 1080, 541, 2, 9137, 9135, 3, 2, 2, 2, 9137, 9136, 3, 2, 2, 2, 9138, 9141, 3, 2, 2, 2, 9139, 9137, 3, 2, 2, 2, 9139, 9140, 3, 2, 2, 2, 9140, 1077, 3, 2, 2, 2, 9141, 9139, 3, 2, 2, 2, 9142, 9143, 7, 1130, 2, 2, 9143, 9144, 5, 1232, 617, 2, 9144, 1079, 3, 2, 2, 2, 9145, 9146, 7, 2065, 2, 2, 9146, 9147, 5, 1446, 724, 2, 9147, 1081, 3, 2, 2, 2, 9148, 9150, 9, 98, 2, 2, 9149, 9151, 7, 1180, 2, 2, 9150, 9149, 3, 2, 2, 2, 9150, 9151, 3, 2, 2, 2, 9151, 1083, 3, 2, 2, 2, 9152, 9153, 7, 1209, 2, 2, 9153, 9161, 7, 148, 2, 2, 9154, 9157, 7, 2225, 2, 2, 9155, 9158, 5, 1054, 528, 2, 9156, 9158, 5, 1234, 618, 2, 9157, 9155, 3, 2, 2, 2, 9157, 9156, 3, 2, 2, 2, 9157, 9158, 3, 2, 2, 2, 9158, 9159, 3, 2, 2, 2, 9159, 9162, 7, 2226, 2, 2, 9160, 9162, 5, 1234, 618, 2, 9161, 9154, 3, 2, 2, 2, 9161, 9160, 3, 2, 2, 2, 9162, 1085, 3, 2, 2, 2, 9163, 9164, 7, 2098, 2, 2, 9164, 9165, 7, 109, 2, 2, 9165, 9166, 9, 99, 2, 2, 9166, 9172, 5, 1236, 619, 2, 9167, 9168, 7, 63, 2, 2, 9168, 9169, 7, 1117, 2, 2, 9169, 9170, 9, 100, 2, 2, 9170, 9172, 5, 1236, 619, 2, 9171, 9163, 3, 2, 2, 2, 9171, 9167, 3, 2, 2, 2, 9172, 1087, 3, 2, 2, 2, 9173, 9175, 7, 1255, 2, 2, 9174, 9176, 7, 2165, 2, 2, 9175, 9174, 3, 2, 2, 2, 9175, 9176, 3, 2, 2, 2, 9176, 9177, 3, 2, 2, 2, 9177, 9178, 7, 2225, 2, 2, 9178, 9183, 5, 1090, 546, 2, 9179, 9180, 7, 2231, 2, 2, 9180, 9182, 5, 1090, 546, 2, 9181, 9179, 3, 2, 2, 2, 9182, 9185, 3, 2, 2, 2, 9183, 9181, 3, 2, 2, 2, 9183, 9184, 3, 2, 2, 2, 9184, 9186, 3, 2, 2, 2, 9185, 9183, 3, 2, 2, 2, 9186, 9187, 5, 1092, 547, 2, 9187, 9188, 5, 1094, 548, 2, 9188, 9189, 7, 2226, 2, 2, 9189, 1089, 3, 2, 2, 2, 9190, 9191, 5, 1390, 696, 2, 9191, 9192, 7, 2225, 2, 2, 9192, 9193, 5, 1236, 619, 2, 9193, 9195, 7, 2226, 2, 2, 9194, 9196, 5, 1354, 678, 2, 9195, 9194, 3, 2, 2, 2, 9195, 9196, 3, 2, 2, 2, 9196, 1091, 3, 2, 2, 2, 9197, 9200, 7, 548, 2, 2, 9198, 9201, 5, 1426, 714, 2, 9199, 9201, 5, 1446, 724, 2, 9200, 9198, 3, 2, 2, 2, 9200, 9199, 3, 2, 2, 2, 9201, 1093, 3, 2, 2, 2, 9202, 9203, 7, 654, 2, 2, 9203, 9221, 7, 2225, 2, 2, 9204, 9222, 5, 1054, 528, 2, 9205, 9210, 7, 50, 2, 2, 9206, 9207, 7, 2231, 2, 2, 9207, 9209, 7, 50, 2, 2, 9208, 9206, 3, 2, 2, 2, 9209, 9212, 3, 2, 2, 2, 9210, 9208, 3, 2, 2, 2, 9210, 9211, 3, 2, 2, 2, 9211, 9222, 3, 2, 2, 2, 9212, 9210, 3, 2, 2, 2, 9213, 9218, 5, 1096, 549, 2, 9214, 9215, 7, 2231, 2, 2, 9215, 9217, 5, 1096, 549, 2, 9216, 9214, 3, 2, 2, 2, 9217, 9220, 3, 2, 2, 2, 9218, 9216, 3, 2, 2, 2, 9218, 9219, 3, 2, 2, 2, 9219, 9222, 3, 2, 2, 2, 9220, 9218, 3, 2, 2, 2, 9221, 9204, 3, 2, 2, 2, 9221, 9205, 3, 2, 2, 2, 9221, 9213, 3, 2, 2, 2, 9222, 9223, 3, 2, 2, 2, 9223, 9224, 7, 2226, 2, 2, 9224, 1095, 3, 2, 2, 2, 9225, 9227, 5, 1098, 550, 2, 9226, 9228, 5, 1354, 678, 2, 9227, 9226, 3, 2, 2, 2, 9227, 9228, 3, 2, 2, 2, 9228, 1097, 3, 2, 2, 2, 9229, 9236, 5, 1236, 619, 2, 9230, 9232, 7, 2225, 2, 2, 9231, 9233, 5, 1234, 618, 2, 9232, 9231, 3, 2, 2, 2, 9232, 9233, 3, 2, 2, 2, 9233, 9234, 3, 2, 2, 2, 9234, 9236, 7, 2226, 2, 2, 9235, 9229, 3, 2, 2, 2, 9235, 9230, 3, 2, 2, 2, 9236, 1099, 3, 2, 2, 2, 9237, 9240, 7, 2015, 2, 2, 9238, 9239, 9, 101, 2, 2, 9239, 9241, 7, 1100, 2, 2, 9240, 9238, 3, 2, 2, 2, 9240, 9241, 3, 2, 2, 2, 9241, 9242, 3, 2, 2, 2, 9242, 9245, 7, 2225, 2, 2, 9243, 9246, 5, 1426, 714, 2, 9244, 9246, 5, 1446, 724, 2, 9245, 9243, 3, 2, 2, 2, 9245, 9244, 3, 2, 2, 2, 9246, 9247, 3, 2, 2, 2, 9247, 9248, 5, 1092, 547, 2, 9248, 9249, 5, 1102, 552, 2, 9249, 9250, 7, 2226, 2, 2, 9250, 1101, 3, 2, 2, 2, 9251, 9252, 7, 654, 2, 2, 9252, 9253, 7, 2225, 2, 2, 9253, 9258, 5, 1104, 553, 2, 9254, 9255, 7, 2231, 2, 2, 9255, 9257, 5, 1104, 553, 2, 9256, 9254, 3, 2, 2, 2, 9257, 9260, 3, 2, 2, 2, 9258, 9256, 3, 2, 2, 2, 9258, 9259, 3, 2, 2, 2, 9259, 9261, 3, 2, 2, 2, 9260, 9258, 3, 2, 2, 2, 9261, 9262, 7, 2226, 2, 2, 9262, 1103, 3, 2, 2, 2, 9263, 9266, 5, 1426, 714, 2, 9264, 9266, 5, 1446, 724, 2, 9265, 9263, 3, 2, 2, 2, 9265, 9264, 3, 2, 2, 2, 9266, 9282, 3, 2, 2, 2, 9267, 9280, 7, 63, 2, 2, 9268, 9281, 5, 1480, 741, 2, 9269, 9270, 7, 2225, 2, 2, 9270, 9275, 5, 1480, 741, 2, 9271, 9272, 7, 2231, 2, 2, 9272, 9274, 5, 1480, 741, 2, 9273, 9271, 3, 2, 2, 2, 9274, 9277, 3, 2, 2, 2, 9275, 9273, 3, 2, 2, 2, 9275, 9276, 3, 2, 2, 2, 9276, 9278, 3, 2, 2, 2, 9277, 9275, 3, 2, 2, 2, 9278, 9279, 7, 2226, 2, 2, 9279, 9281, 3, 2, 2, 2, 9280, 9268, 3, 2, 2, 2, 9280, 9269, 3, 2, 2, 2, 9281, 9283, 3, 2, 2, 2, 9282, 9267, 3, 2, 2, 2, 9282, 9283, 3, 2, 2, 2, 9283, 1105, 3, 2, 2, 2, 9284, 9285, 7, 253, 2, 2, 9285, 9287, 7, 148, 2, 2, 9286, 9288, 7, 965, 2, 2, 9287, 9286, 3, 2, 2, 2, 9287, 9288, 3, 2, 2, 2, 9288, 9289, 3, 2, 2, 2, 9289, 9291, 5, 1232, 617, 2, 9290, 9292, 5, 1108, 555, 2, 9291, 9290, 3, 2, 2, 2, 9291, 9292, 3, 2, 2, 2, 9292, 9302, 3, 2, 2, 2, 9293, 9294, 5, 1108, 555, 2, 9294, 9295, 7, 253, 2, 2, 9295, 9297, 7, 148, 2, 2, 9296, 9298, 7, 965, 2, 2, 9297, 9296, 3, 2, 2, 2, 9297, 9298, 3, 2, 2, 2, 9298, 9299, 3, 2, 2, 2, 9299, 9300, 5, 1232, 617, 2, 9300, 9302, 3, 2, 2, 2, 9301, 9284, 3, 2, 2, 2, 9301, 9293, 3, 2, 2, 2, 9302, 1107, 3, 2, 2, 2, 9303, 9304, 7, 1571, 2, 2, 9304, 9305, 7, 2123, 2, 2, 9305, 9306, 5, 1232, 617, 2, 9306, 1109, 3, 2, 2, 2, 9307, 9308, 7, 575, 2, 2, 9308, 9309, 7, 148, 2, 2, 9309, 9314, 5, 1112, 557, 2, 9310, 9311, 7, 2231, 2, 2, 9311, 9313, 5, 1112, 557, 2, 9312, 9310, 3, 2, 2, 2, 9313, 9316, 3, 2, 2, 2, 9314, 9312, 3, 2, 2, 2, 9314, 9315, 3, 2, 2, 2, 9315, 9318, 3, 2, 2, 2, 9316, 9314, 3, 2, 2, 2, 9317, 9319, 5, 1120, 561, 2, 9318, 9317, 3, 2, 2, 2, 9318, 9319, 3, 2, 2, 2, 9319, 9334, 3, 2, 2, 2, 9320, 9331, 5, 1120, 561, 2, 9321, 9322, 7, 575, 2, 2, 9322, 9323, 7, 148, 2, 2, 9323, 9328, 5, 1112, 557, 2, 9324, 9325, 7, 2231, 2, 2, 9325, 9327, 5, 1112, 557, 2, 9326, 9324, 3, 2, 2, 2, 9327, 9330, 3, 2, 2, 2, 9328, 9326, 3, 2, 2, 2, 9328, 9329, 3, 2, 2, 2, 9329, 9332, 3, 2, 2, 2, 9330, 9328, 3, 2, 2, 2, 9331, 9321, 3, 2, 2, 2, 9331, 9332, 3, 2, 2, 2, 9332, 9334, 3, 2, 2, 2, 9333, 9307, 3, 2, 2, 2, 9333, 9320, 3, 2, 2, 2, 9334, 1111, 3, 2, 2, 2, 9335, 9339, 5, 1116, 559, 2, 9336, 9339, 5, 1114, 558, 2, 9337, 9339, 5, 1236, 619, 2, 9338, 9335, 3, 2, 2, 2, 9338, 9336, 3, 2, 2, 2, 9338, 9337, 3, 2, 2, 2, 9339, 1113, 3, 2, 2, 2, 9340, 9341, 9, 102, 2, 2, 9341, 9342, 7, 2225, 2, 2, 9342, 9347, 5, 1118, 560, 2, 9343, 9344, 7, 2231, 2, 2, 9344, 9346, 5, 1118, 560, 2, 9345, 9343, 3, 2, 2, 2, 9346, 9349, 3, 2, 2, 2, 9347, 9345, 3, 2, 2, 2, 9347, 9348, 3, 2, 2, 2, 9348, 9350, 3, 2, 2, 2, 9349, 9347, 3, 2, 2, 2, 9350, 9351, 7, 2226, 2, 2, 9351, 1115, 3, 2, 2, 2, 9352, 9353, 7, 577, 2, 2, 9353, 9354, 7, 1513, 2, 2, 9354, 9355, 7, 2225, 2, 2, 9355, 9360, 5, 1118, 560, 2, 9356, 9357, 7, 2231, 2, 2, 9357, 9359, 5, 1118, 560, 2, 9358, 9356, 3, 2, 2, 2, 9359, 9362, 3, 2, 2, 2, 9360, 9358, 3, 2, 2, 2, 9360, 9361, 3, 2, 2, 2, 9361, 9363, 3, 2, 2, 2, 9362, 9360, 3, 2, 2, 2, 9363, 9364, 7, 2226, 2, 2, 9364, 1117, 3, 2, 2, 2, 9365, 9373, 5, 1114, 558, 2, 9366, 9368, 7, 2225, 2, 2, 9367, 9369, 5, 1234, 618, 2, 9368, 9367, 3, 2, 2, 2, 9368, 9369, 3, 2, 2, 2, 9369, 9370, 3, 2, 2, 2, 9370, 9373, 7, 2226, 2, 2, 9371, 9373, 5, 1236, 619, 2, 9372, 9365, 3, 2, 2, 2, 9372, 9366, 3, 2, 2, 2, 9372, 9371, 3, 2, 2, 2, 9373, 1119, 3, 2, 2, 2, 9374, 9375, 7, 587, 2, 2, 9375, 9376, 5, 1232, 617, 2, 9376, 1121, 3, 2, 2, 2, 9377, 9381, 7, 856, 2, 2, 9378, 9380, 5, 1124, 563, 2, 9379, 9378, 3, 2, 2, 2, 9380, 9383, 3, 2, 2, 2, 9381, 9379, 3, 2, 2, 2, 9381, 9382, 3, 2, 2, 2, 9382, 9385, 3, 2, 2, 2, 9383, 9381, 3, 2, 2, 2, 9384, 9386, 5, 1126, 564, 2, 9385, 9384, 3, 2, 2, 2, 9385, 9386, 3, 2, 2, 2, 9386, 9390, 3, 2, 2, 2, 9387, 9389, 5, 1128, 565, 2, 9388, 9387, 3, 2, 2, 2, 9389, 9392, 3, 2, 2, 2, 9390, 9388, 3, 2, 2, 2, 9390, 9391, 3, 2, 2, 2, 9391, 9393, 3, 2, 2, 2, 9392, 9390, 3, 2, 2, 2, 9393, 9394, 5, 1130, 566, 2, 9394, 1123, 3, 2, 2, 2, 9395, 9396, 9, 103, 2, 2, 9396, 9404, 7, 890, 2, 2, 9397, 9401, 7, 2004, 2, 2, 9398, 9402, 7, 379, 2, 2, 9399, 9400, 7, 1533, 2, 2, 9400, 9402, 7, 1375, 2, 2, 9401, 9398, 3, 2, 2, 2, 9401, 9399, 3, 2, 2, 2, 9402, 9404, 3, 2, 2, 2, 9403, 9395, 3, 2, 2, 2, 9403, 9397, 3, 2, 2, 2, 9404, 1125, 3, 2, 2, 2, 9405, 9406, 7, 1433, 2, 2, 9406, 9407, 9, 104, 2, 2, 9407, 9408, 7, 1454, 2, 2, 9408, 1127, 3, 2, 2, 2, 9409, 9410, 7, 1375, 2, 2, 9410, 9411, 5, 1384, 693, 2, 9411, 9412, 7, 1130, 2, 2, 9412, 9413, 7, 2225, 2, 2, 9413, 9414, 5, 1054, 528, 2, 9414, 9415, 7, 2226, 2, 2, 9415, 9419, 5, 1132, 567, 2, 9416, 9418, 5, 1124, 563, 2, 9417, 9416, 3, 2, 2, 2, 9418, 9421, 3, 2, 2, 2, 9419, 9417, 3, 2, 2, 2, 9419, 9420, 3, 2, 2, 2, 9420, 1129, 3, 2, 2, 2, 9421, 9419, 3, 2, 2, 2, 9422, 9423, 7, 796, 2, 2, 9423, 9425, 5, 1386, 694, 2, 9424, 9422, 3, 2, 2, 2, 9424, 9425, 3, 2, 2, 2, 9425, 9426, 3, 2, 2, 2, 9426, 9430, 5, 1132, 567, 2, 9427, 9429, 5, 1124, 563, 2, 9428, 9427, 3, 2, 2, 2, 9429, 9432, 3, 2, 2, 2, 9430, 9428, 3, 2, 2, 2, 9430, 9431, 3, 2, 2, 2, 9431, 9433, 3, 2, 2, 2, 9432, 9430, 3, 2, 2, 2, 9433, 9434, 5, 1140, 571, 2, 9434, 1131, 3, 2, 2, 2, 9435, 9437, 5, 1134, 568, 2, 9436, 9435, 3, 2, 2, 2, 9436, 9437, 3, 2, 2, 2, 9437, 9438, 3, 2, 2, 2, 9438, 9439, 7, 379, 2, 2, 9439, 9440, 7, 148, 2, 2, 9440, 9441, 5, 1136, 569, 2, 9441, 9442, 7, 826, 2, 2, 9442, 9443, 5, 1136, 569, 2, 9443, 1133, 3, 2, 2, 2, 9444, 9445, 7, 1209, 2, 2, 9445, 9446, 7, 148, 2, 2, 9446, 9447, 5, 1136, 569, 2, 9447, 1135, 3, 2, 2, 2, 9448, 9449, 7, 2225, 2, 2, 9449, 9454, 5, 1138, 570, 2, 9450, 9451, 7, 2231, 2, 2, 9451, 9453, 5, 1138, 570, 2, 9452, 9450, 3, 2, 2, 2, 9453, 9456, 3, 2, 2, 2, 9454, 9452, 3, 2, 2, 2, 9454, 9455, 3, 2, 2, 2, 9455, 9457, 3, 2, 2, 2, 9456, 9454, 3, 2, 2, 2, 9457, 9458, 7, 2226, 2, 2, 9458, 1137, 3, 2, 2, 2, 9459, 9462, 5, 1236, 619, 2, 9460, 9462, 5, 1060, 531, 2, 9461, 9459, 3, 2, 2, 2, 9461, 9460, 3, 2, 2, 2, 9462, 9464, 3, 2, 2, 2, 9463, 9465, 5, 1354, 678, 2, 9464, 9463, 3, 2, 2, 2, 9464, 9465, 3, 2, 2, 2, 9465, 1139, 3, 2, 2, 2, 9466, 9468, 5, 1142, 572, 2, 9467, 9466, 3, 2, 2, 2, 9467, 9468, 3, 2, 2, 2, 9468, 9469, 3, 2, 2, 2, 9469, 9478, 7, 2225, 2, 2, 9470, 9475, 5, 1144, 573, 2, 9471, 9472, 7, 2231, 2, 2, 9472, 9474, 5, 1144, 573, 2, 9473, 9471, 3, 2, 2, 2, 9474, 9477, 3, 2, 2, 2, 9475, 9473, 3, 2, 2, 2, 9475, 9476, 3, 2, 2, 2, 9476, 9479, 3, 2, 2, 2, 9477, 9475, 3, 2, 2, 2, 9478, 9470, 3, 2, 2, 2, 9478, 9479, 3, 2, 2, 2, 9479, 9480, 3, 2, 2, 2, 9480, 9481, 7, 2226, 2, 2, 9481, 1141, 3, 2, 2, 2, 9482, 9488, 7, 1458, 2, 2, 9483, 9489, 7, 2027, 2, 2, 9484, 9486, 7, 2033, 2, 2, 9485, 9487, 7, 37, 2, 2, 9486, 9485, 3, 2, 2, 2, 9486, 9487, 3, 2, 2, 2, 9487, 9489, 3, 2, 2, 2, 9488, 9483, 3, 2, 2, 2, 9488, 9484, 3, 2, 2, 2, 9488, 9489, 3, 2, 2, 2, 9489, 9492, 3, 2, 2, 2, 9490, 9491, 9, 105, 2, 2, 9491, 9493, 7, 1170, 2, 2, 9492, 9490, 3, 2, 2, 2, 9492, 9493, 3, 2, 2, 2, 9493, 9495, 3, 2, 2, 2, 9494, 9496, 5, 1148, 575, 2, 9495, 9494, 3, 2, 2, 2, 9495, 9496, 3, 2, 2, 2, 9496, 1143, 3, 2, 2, 2, 9497, 9503, 7, 2027, 2, 2, 9498, 9500, 7, 2033, 2, 2, 9499, 9501, 7, 37, 2, 2, 9500, 9499, 3, 2, 2, 2, 9500, 9501, 3, 2, 2, 2, 9501, 9503, 3, 2, 2, 2, 9502, 9497, 3, 2, 2, 2, 9502, 9498, 3, 2, 2, 2, 9502, 9503, 3, 2, 2, 2, 9503, 9504, 3, 2, 2, 2, 9504, 9506, 5, 1146, 574, 2, 9505, 9507, 5, 1152, 577, 2, 9506, 9505, 3, 2, 2, 2, 9506, 9507, 3, 2, 2, 2, 9507, 9508, 3, 2, 2, 2, 9508, 9509, 7, 2245, 2, 2, 9509, 9510, 5, 1236, 619, 2, 9510, 1145, 3, 2, 2, 2, 9511, 9512, 5, 1262, 632, 2, 9512, 1147, 3, 2, 2, 2, 9513, 9514, 7, 700, 2, 2, 9514, 9515, 7, 2225, 2, 2, 9515, 9516, 5, 1236, 619, 2, 9516, 9518, 7, 2226, 2, 2, 9517, 9519, 5, 1150, 576, 2, 9518, 9517, 3, 2, 2, 2, 9518, 9519, 3, 2, 2, 2, 9519, 1149, 3, 2, 2, 2, 9520, 9521, 7, 2022, 2, 2, 9521, 9522, 7, 2225, 2, 2, 9522, 9523, 5, 1232, 617, 2, 9523, 9524, 7, 2226, 2, 2, 9524, 1151, 3, 2, 2, 2, 9525, 9527, 7, 1170, 2, 2, 9526, 9528, 7, 1525, 2, 2, 9527, 9526, 3, 2, 2, 2, 9527, 9528, 3, 2, 2, 2, 9528, 9529, 3, 2, 2, 2, 9529, 9530, 7, 148, 2, 2, 9530, 9535, 5, 1154, 578, 2, 9531, 9532, 7, 2231, 2, 2, 9532, 9534, 5, 1154, 578, 2, 9533, 9531, 3, 2, 2, 2, 9534, 9537, 3, 2, 2, 2, 9535, 9533, 3, 2, 2, 2, 9535, 9536, 3, 2, 2, 2, 9536, 1153, 3, 2, 2, 2, 9537, 9535, 3, 2, 2, 2, 9538, 9540, 5, 1236, 619, 2, 9539, 9541, 9, 22, 2, 2, 9540, 9539, 3, 2, 2, 2, 9540, 9541, 3, 2, 2, 2, 9541, 9544, 3, 2, 2, 2, 9542, 9543, 7, 1100, 2, 2, 9543, 9545, 9, 106, 2, 2, 9544, 9542, 3, 2, 2, 2, 9544, 9545, 3, 2, 2, 2, 9545, 1155, 3, 2, 2, 2, 9546, 9547, 7, 1116, 2, 2, 9547, 9548, 5, 1236, 619, 2, 9548, 9549, 9, 107, 2, 2, 9549, 1157, 3, 2, 2, 2, 9550, 9551, 7, 520, 2, 2, 9551, 9556, 9, 108, 2, 2, 9552, 9554, 5, 1236, 619, 2, 9553, 9555, 7, 1238, 2, 2, 9554, 9553, 3, 2, 2, 2, 9554, 9555, 3, 2, 2, 2, 9555, 9557, 3, 2, 2, 2, 9556, 9552, 3, 2, 2, 2, 9556, 9557, 3, 2, 2, 2, 9557, 9558, 3, 2, 2, 2, 9558, 9562, 9, 107, 2, 2, 9559, 9563, 7, 1129, 2, 2, 9560, 9561, 7, 2123, 2, 2, 9561, 9563, 7, 1932, 2, 2, 9562, 9559, 3, 2, 2, 2, 9562, 9560, 3, 2, 2, 2, 9563, 1159, 3, 2, 2, 2, 9564, 9565, 7, 548, 2, 2, 9565, 9567, 7, 2027, 2, 2, 9566, 9568, 5, 1162, 582, 2, 9567, 9566, 3, 2, 2, 2, 9567, 9568, 3, 2, 2, 2, 9568, 9570, 3, 2, 2, 2, 9569, 9571, 5, 1164, 583, 2, 9570, 9569, 3, 2, 2, 2, 9570, 9571, 3, 2, 2, 2, 9571, 1161, 3, 2, 2, 2, 9572, 9573, 7, 1117, 2, 2, 9573, 9574, 5, 1444, 723, 2, 9574, 1163, 3, 2, 2, 2, 9575, 9576, 7, 1539, 2, 2, 9576, 9581, 7, 776, 2, 2, 9577, 9581, 7, 1090, 2, 2, 9578, 9579, 7, 2108, 2, 2, 9579, 9581, 5, 1236, 619, 2, 9580, 9575, 3, 2, 2, 2, 9580, 9577, 3, 2, 2, 2, 9580, 9578, 3, 2, 2, 2, 9581, 1165, 3, 2, 2, 2, 9582, 9583, 7, 2027, 2, 2, 9583, 9584, 5, 1212, 607, 2, 9584, 9586, 5, 1168, 585, 2, 9585, 9587, 5, 1358, 680, 2, 9586, 9585, 3, 2, 2, 2, 9586, 9587, 3, 2, 2, 2, 9587, 9589, 3, 2, 2, 2, 9588, 9590, 5, 1214, 608, 2, 9589, 9588, 3, 2, 2, 2, 9589, 9590, 3, 2, 2, 2, 9590, 9592, 3, 2, 2, 2, 9591, 9593, 5, 1216, 609, 2, 9592, 9591, 3, 2, 2, 2, 9592, 9593, 3, 2, 2, 2, 9593, 1167, 3, 2, 2, 2, 9594, 9610, 7, 1512, 2, 2, 9595, 9600, 5, 1170, 586, 2, 9596, 9597, 7, 2231, 2, 2, 9597, 9599, 5, 1170, 586, 2, 9598, 9596, 3, 2, 2, 2, 9599, 9602, 3, 2, 2, 2, 9600, 9598, 3, 2, 2, 2, 9600, 9601, 3, 2, 2, 2, 9601, 9611, 3, 2, 2, 2, 9602, 9600, 3, 2, 2, 2, 9603, 9604, 7, 2076, 2, 2, 9604, 9605, 7, 2225, 2, 2, 9605, 9606, 5, 1488, 745, 2, 9606, 9607, 7, 2226, 2, 2, 9607, 9608, 7, 2245, 2, 2, 9608, 9609, 5, 1236, 619, 2, 9609, 9611, 3, 2, 2, 2, 9610, 9595, 3, 2, 2, 2, 9610, 9603, 3, 2, 2, 2, 9611, 1169, 3, 2, 2, 2, 9612, 9613, 5, 1426, 714, 2, 9613, 9614, 7, 2245, 2, 2, 9614, 9615, 5, 1236, 619, 2, 9615, 9621, 3, 2, 2, 2, 9616, 9617, 5, 1446, 724, 2, 9617, 9618, 7, 2245, 2, 2, 9618, 9619, 5, 1054, 528, 2, 9619, 9621, 3, 2, 2, 2, 9620, 9612, 3, 2, 2, 2, 9620, 9616, 3, 2, 2, 2, 9621, 1171, 3, 2, 2, 2, 9622, 9624, 7, 364, 2, 2, 9623, 9625, 7, 556, 2, 2, 9624, 9623, 3, 2, 2, 2, 9624, 9625, 3, 2, 2, 2, 9625, 9626, 3, 2, 2, 2, 9626, 9628, 5, 1212, 607, 2, 9627, 9629, 5, 1358, 680, 2, 9628, 9627, 3, 2, 2, 2, 9628, 9629, 3, 2, 2, 2, 9629, 9631, 3, 2, 2, 2, 9630, 9632, 5, 1214, 608, 2, 9631, 9630, 3, 2, 2, 2, 9631, 9632, 3, 2, 2, 2, 9632, 9634, 3, 2, 2, 2, 9633, 9635, 5, 1216, 609, 2, 9634, 9633, 3, 2, 2, 2, 9634, 9635, 3, 2, 2, 2, 9635, 1173, 3, 2, 2, 2, 9636, 9639, 7, 671, 2, 2, 9637, 9640, 5, 1176, 589, 2, 9638, 9640, 5, 1178, 590, 2, 9639, 9637, 3, 2, 2, 2, 9639, 9638, 3, 2, 2, 2, 9640, 1175, 3, 2, 2, 2, 9641, 9647, 5, 1188, 595, 2, 9642, 9644, 5, 1190, 596, 2, 9643, 9645, 5, 1214, 608, 2, 9644, 9643, 3, 2, 2, 2, 9644, 9645, 3, 2, 2, 2, 9645, 9648, 3, 2, 2, 2, 9646, 9648, 5, 1044, 523, 2, 9647, 9642, 3, 2, 2, 2, 9647, 9646, 3, 2, 2, 2, 9648, 9650, 3, 2, 2, 2, 9649, 9651, 5, 1216, 609, 2, 9650, 9649, 3, 2, 2, 2, 9650, 9651, 3, 2, 2, 2, 9651, 1177, 3, 2, 2, 2, 9652, 9654, 7, 37, 2, 2, 9653, 9655, 5, 1180, 591, 2, 9654, 9653, 3, 2, 2, 2, 9655, 9656, 3, 2, 2, 2, 9656, 9654, 3, 2, 2, 2, 9656, 9657, 3, 2, 2, 2, 9657, 9660, 3, 2, 2, 2, 9658, 9660, 5, 1182, 592, 2, 9659, 9652, 3, 2, 2, 2, 9659, 9658, 3, 2, 2, 2, 9660, 9661, 3, 2, 2, 2, 9661, 9662, 5, 1044, 523, 2, 9662, 1179, 3, 2, 2, 2, 9663, 9665, 5, 1188, 595, 2, 9664, 9666, 5, 1190, 596, 2, 9665, 9664, 3, 2, 2, 2, 9665, 9666, 3, 2, 2, 2, 9666, 9668, 3, 2, 2, 2, 9667, 9669, 5, 1216, 609, 2, 9668, 9667, 3, 2, 2, 2, 9668, 9669, 3, 2, 2, 2, 9669, 1181, 3, 2, 2, 2, 9670, 9672, 9, 109, 2, 2, 9671, 9670, 3, 2, 2, 2, 9671, 9672, 3, 2, 2, 2, 9672, 9674, 3, 2, 2, 2, 9673, 9675, 5, 1184, 593, 2, 9674, 9673, 3, 2, 2, 2, 9675, 9676, 3, 2, 2, 2, 9676, 9674, 3, 2, 2, 2, 9676, 9677, 3, 2, 2, 2, 9677, 9679, 3, 2, 2, 2, 9678, 9680, 5, 1186, 594, 2, 9679, 9678, 3, 2, 2, 2, 9679, 9680, 3, 2, 2, 2, 9680, 1183, 3, 2, 2, 2, 9681, 9682, 7, 2115, 2, 2, 9682, 9683, 5, 1232, 617, 2, 9683, 9685, 7, 1927, 2, 2, 9684, 9686, 5, 1180, 591, 2, 9685, 9684, 3, 2, 2, 2, 9686, 9687, 3, 2, 2, 2, 9687, 9685, 3, 2, 2, 2, 9687, 9688, 3, 2, 2, 2, 9688, 1185, 3, 2, 2, 2, 9689, 9691, 7, 434, 2, 2, 9690, 9692, 5, 1180, 591, 2, 9691, 9690, 3, 2, 2, 2, 9692, 9693, 3, 2, 2, 2, 9693, 9691, 3, 2, 2, 2, 9693, 9694, 3, 2, 2, 2, 9694, 1187, 3, 2, 2, 2, 9695, 9696, 7, 693, 2, 2, 9696, 9698, 5, 1212, 607, 2, 9697, 9699, 5, 1446, 724, 2, 9698, 9697, 3, 2, 2, 2, 9698, 9699, 3, 2, 2, 2, 9699, 1189, 3, 2, 2, 2, 9700, 9701, 7, 2075, 2, 2, 9701, 9703, 7, 2225, 2, 2, 9702, 9704, 5, 1234, 618, 2, 9703, 9702, 3, 2, 2, 2, 9703, 9704, 3, 2, 2, 2, 9704, 9705, 3, 2, 2, 2, 9705, 9706, 7, 2226, 2, 2, 9706, 1191, 3, 2, 2, 2, 9707, 9708, 7, 834, 2, 2, 9708, 9709, 7, 693, 2, 2, 9709, 9711, 5, 1428, 715, 2, 9710, 9712, 5, 1356, 679, 2, 9711, 9710, 3, 2, 2, 2, 9711, 9712, 3, 2, 2, 2, 9712, 9713, 3, 2, 2, 2, 9713, 9714, 7, 2065, 2, 2, 9714, 9715, 5, 1202, 602, 2, 9715, 9716, 7, 1130, 2, 2, 9716, 9717, 7, 2225, 2, 2, 9717, 9718, 5, 1232, 617, 2, 9718, 9727, 7, 2226, 2, 2, 9719, 9721, 5, 1194, 598, 2, 9720, 9722, 5, 1200, 601, 2, 9721, 9720, 3, 2, 2, 2, 9721, 9722, 3, 2, 2, 2, 9722, 9728, 3, 2, 2, 2, 9723, 9725, 5, 1200, 601, 2, 9724, 9726, 5, 1194, 598, 2, 9725, 9724, 3, 2, 2, 2, 9725, 9726, 3, 2, 2, 2, 9726, 9728, 3, 2, 2, 2, 9727, 9719, 3, 2, 2, 2, 9727, 9723, 3, 2, 2, 2, 9727, 9728, 3, 2, 2, 2, 9728, 9730, 3, 2, 2, 2, 9729, 9731, 5, 1216, 609, 2, 9730, 9729, 3, 2, 2, 2, 9730, 9731, 3, 2, 2, 2, 9731, 1193, 3, 2, 2, 2, 9732, 9733, 7, 2115, 2, 2, 9733, 9734, 7, 806, 2, 2, 9734, 9735, 7, 1927, 2, 2, 9735, 9736, 7, 2027, 2, 2, 9736, 9737, 7, 1512, 2, 2, 9737, 9742, 5, 1196, 599, 2, 9738, 9739, 7, 2231, 2, 2, 9739, 9741, 5, 1196, 599, 2, 9740, 9738, 3, 2, 2, 2, 9741, 9744, 3, 2, 2, 2, 9742, 9740, 3, 2, 2, 2, 9742, 9743, 3, 2, 2, 2, 9743, 9746, 3, 2, 2, 2, 9744, 9742, 3, 2, 2, 2, 9745, 9747, 5, 1358, 680, 2, 9746, 9745, 3, 2, 2, 2, 9746, 9747, 3, 2, 2, 2, 9747, 9749, 3, 2, 2, 2, 9748, 9750, 5, 1198, 600, 2, 9749, 9748, 3, 2, 2, 2, 9749, 9750, 3, 2, 2, 2, 9750, 1195, 3, 2, 2, 2, 9751, 9752, 5, 1426, 714, 2, 9752, 9753, 7, 2245, 2, 2, 9753, 9754, 5, 1236, 619, 2, 9754, 1197, 3, 2, 2, 2, 9755, 9756, 7, 364, 2, 2, 9756, 9757, 5, 1358, 680, 2, 9757, 1199, 3, 2, 2, 2, 9758, 9759, 7, 2115, 2, 2, 9759, 9760, 7, 1075, 2, 2, 9760, 9761, 7, 806, 2, 2, 9761, 9762, 7, 1927, 2, 2, 9762, 9764, 7, 671, 2, 2, 9763, 9765, 5, 1446, 724, 2, 9764, 9763, 3, 2, 2, 2, 9764, 9765, 3, 2, 2, 2, 9765, 9766, 3, 2, 2, 2, 9766, 9767, 7, 2075, 2, 2, 9767, 9769, 7, 2225, 2, 2, 9768, 9770, 5, 1234, 618, 2, 9769, 9768, 3, 2, 2, 2, 9769, 9770, 3, 2, 2, 2, 9770, 9771, 3, 2, 2, 2, 9771, 9773, 7, 2226, 2, 2, 9772, 9774, 5, 1358, 680, 2, 9773, 9772, 3, 2, 2, 2, 9773, 9774, 3, 2, 2, 2, 9774, 1201, 3, 2, 2, 2, 9775, 9781, 5, 1428, 715, 2, 9776, 9777, 7, 2225, 2, 2, 9777, 9778, 5, 1044, 523, 2, 9778, 9779, 7, 2226, 2, 2, 9779, 9781, 3, 2, 2, 2, 9780, 9775, 3, 2, 2, 2, 9780, 9776, 3, 2, 2, 2, 9781, 9783, 3, 2, 2, 2, 9782, 9784, 5, 1356, 679, 2, 9783, 9782, 3, 2, 2, 2, 9783, 9784, 3, 2, 2, 2, 9784, 1203, 3, 2, 2, 2, 9785, 9786, 7, 778, 2, 2, 9786, 9787, 7, 1914, 2, 2, 9787, 9792, 5, 1208, 605, 2, 9788, 9789, 7, 2231, 2, 2, 9789, 9791, 5, 1208, 605, 2, 9790, 9788, 3, 2, 2, 2, 9791, 9794, 3, 2, 2, 2, 9792, 9790, 3, 2, 2, 2, 9792, 9793, 3, 2, 2, 2, 9793, 9795, 3, 2, 2, 2, 9794, 9792, 3, 2, 2, 2, 9795, 9796, 7, 654, 2, 2, 9796, 9797, 5, 1210, 606, 2, 9797, 9799, 7, 862, 2, 2, 9798, 9800, 5, 1206, 604, 2, 9799, 9798, 3, 2, 2, 2, 9799, 9800, 3, 2, 2, 2, 9800, 1205, 3, 2, 2, 2, 9801, 9802, 7, 2108, 2, 2, 9802, 9805, 5, 1236, 619, 2, 9803, 9805, 7, 1090, 2, 2, 9804, 9801, 3, 2, 2, 2, 9804, 9803, 3, 2, 2, 2, 9805, 1207, 3, 2, 2, 2, 9806, 9808, 5, 1428, 715, 2, 9807, 9809, 5, 1352, 677, 2, 9808, 9807, 3, 2, 2, 2, 9808, 9809, 3, 2, 2, 2, 9809, 1209, 3, 2, 2, 2, 9810, 9811, 7, 1453, 2, 2, 9811, 9823, 7, 1519, 2, 2, 9812, 9813, 7, 1453, 2, 2, 9813, 9823, 7, 476, 2, 2, 9814, 9816, 7, 1519, 2, 2, 9815, 9817, 7, 2027, 2, 2, 9816, 9815, 3, 2, 2, 2, 9816, 9817, 3, 2, 2, 2, 9817, 9823, 3, 2, 2, 2, 9818, 9819, 7, 1519, 2, 2, 9819, 9820, 7, 1453, 2, 2, 9820, 9823, 7, 476, 2, 2, 9821, 9823, 7, 476, 2, 2, 9822, 9810, 3, 2, 2, 2, 9822, 9812, 3, 2, 2, 2, 9822, 9814, 3, 2, 2, 2, 9822, 9818, 3, 2, 2, 2, 9822, 9821, 3, 2, 2, 2, 9823, 1211, 3, 2, 2, 2, 9824, 9831, 5, 1222, 612, 2, 9825, 9826, 7, 1129, 2, 2, 9826, 9827, 7, 2225, 2, 2, 9827, 9828, 5, 1222, 612, 2, 9828, 9829, 7, 2226, 2, 2, 9829, 9831, 3, 2, 2, 2, 9830, 9824, 3, 2, 2, 2, 9830, 9825, 3, 2, 2, 2, 9831, 9833, 3, 2, 2, 2, 9832, 9834, 5, 1356, 679, 2, 9833, 9832, 3, 2, 2, 2, 9833, 9834, 3, 2, 2, 2, 9834, 1213, 3, 2, 2, 2, 9835, 9836, 9, 92, 2, 2, 9836, 9837, 5, 1234, 618, 2, 9837, 9838, 5, 1360, 681, 2, 9838, 1215, 3, 2, 2, 2, 9839, 9840, 7, 785, 2, 2, 9840, 9842, 7, 460, 2, 2, 9841, 9843, 5, 1218, 610, 2, 9842, 9841, 3, 2, 2, 2, 9842, 9843, 3, 2, 2, 2, 9843, 9845, 3, 2, 2, 2, 9844, 9846, 5, 1236, 619, 2, 9845, 9844, 3, 2, 2, 2, 9845, 9846, 3, 2, 2, 2, 9846, 9848, 3, 2, 2, 2, 9847, 9849, 5, 1220, 611, 2, 9848, 9847, 3, 2, 2, 2, 9848, 9849, 3, 2, 2, 2, 9849, 1217, 3, 2, 2, 2, 9850, 9851, 7, 693, 2, 2, 9851, 9852, 5, 1428, 715, 2, 9852, 1219, 3, 2, 2, 2, 9853, 9854, 7, 1397, 2, 2, 9854, 9857, 7, 760, 2, 2, 9855, 9858, 7, 2006, 2, 2, 9856, 9858, 5, 1236, 619, 2, 9857, 9855, 3, 2, 2, 2, 9857, 9856, 3, 2, 2, 2, 9858, 1221, 3, 2, 2, 2, 9859, 9872, 5, 1224, 613, 2, 9860, 9861, 7, 2225, 2, 2, 9861, 9863, 5, 1044, 523, 2, 9862, 9864, 5, 1226, 614, 2, 9863, 9862, 3, 2, 2, 2, 9863, 9864, 3, 2, 2, 2, 9864, 9865, 3, 2, 2, 2, 9865, 9866, 7, 2226, 2, 2, 9866, 9872, 3, 2, 2, 2, 9867, 9869, 5, 1428, 715, 2, 9868, 9870, 5, 1228, 615, 2, 9869, 9868, 3, 2, 2, 2, 9869, 9870, 3, 2, 2, 2, 9870, 9872, 3, 2, 2, 2, 9871, 9859, 3, 2, 2, 2, 9871, 9860, 3, 2, 2, 2, 9871, 9867, 3, 2, 2, 2, 9872, 1223, 3, 2, 2, 2, 9873, 9884, 9, 110, 2, 2, 9874, 9875, 7, 2225, 2, 2, 9875, 9876, 5, 1054, 528, 2, 9876, 9877, 7, 2226, 2, 2, 9877, 9885, 3, 2, 2, 2, 9878, 9879, 7, 2225, 2, 2, 9879, 9880, 5, 1236, 619, 2, 9880, 9882, 7, 2226, 2, 2, 9881, 9883, 5, 1492, 747, 2, 9882, 9881, 3, 2, 2, 2, 9882, 9883, 3, 2, 2, 2, 9883, 9885, 3, 2, 2, 2, 9884, 9874, 3, 2, 2, 2, 9884, 9878, 3, 2, 2, 2, 9885, 1225, 3, 2, 2, 2, 9886, 9895, 7, 2123, 2, 2, 9887, 9888, 7, 1355, 2, 2, 9888, 9896, 7, 1129, 2, 2, 9889, 9890, 7, 182, 2, 2, 9890, 9893, 7, 1143, 2, 2, 9891, 9892, 7, 259, 2, 2, 9892, 9894, 5, 1398, 700, 2, 9893, 9891, 3, 2, 2, 2, 9893, 9894, 3, 2, 2, 2, 9894, 9896, 3, 2, 2, 2, 9895, 9887, 3, 2, 2, 2, 9895, 9889, 3, 2, 2, 2, 9896, 1227, 3, 2, 2, 2, 9897, 9899, 7, 1461, 2, 2, 9898, 9900, 7, 131, 2, 2, 9899, 9898, 3, 2, 2, 2, 9899, 9900, 3, 2, 2, 2, 9900, 9901, 3, 2, 2, 2, 9901, 9902, 7, 2225, 2, 2, 9902, 9905, 5, 1236, 619, 2, 9903, 9904, 7, 2231, 2, 2, 9904, 9906, 5, 1236, 619, 2, 9905, 9903, 3, 2, 2, 2, 9905, 9906, 3, 2, 2, 2, 9906, 9907, 3, 2, 2, 2, 9907, 9909, 7, 2226, 2, 2, 9908, 9910, 5, 1230, 616, 2, 9909, 9908, 3, 2, 2, 2, 9909, 9910, 3, 2, 2, 2, 9910, 1229, 3, 2, 2, 2, 9911, 9912, 7, 1487, 2, 2, 9912, 9913, 7, 2225, 2, 2, 9913, 9914, 5, 1236, 619, 2, 9914, 9915, 7, 2226, 2, 2, 9915, 1231, 3, 2, 2, 2, 9916, 9917, 5, 1236, 619, 2, 9917, 1233, 3, 2, 2, 2, 9918, 9923, 5, 1236, 619, 2, 9919, 9920, 7, 2231, 2, 2, 9920, 9922, 5, 1236, 619, 2, 9921, 9919, 3, 2, 2, 2, 9922, 9925, 3, 2, 2, 2, 9923, 9921, 3, 2, 2, 2, 9923, 9924, 3, 2, 2, 2, 9924, 1235, 3, 2, 2, 2, 9925, 9923, 3, 2, 2, 2, 9926, 9929, 5, 1238, 620, 2, 9927, 9929, 5, 1240, 621, 2, 9928, 9926, 3, 2, 2, 2, 9928, 9927, 3, 2, 2, 2, 9929, 1237, 3, 2, 2, 2, 9930, 9931, 7, 311, 2, 2, 9931, 9932, 7, 2225, 2, 2, 9932, 9933, 5, 1054, 528, 2, 9933, 9934, 7, 2226, 2, 2, 9934, 1239, 3, 2, 2, 2, 9935, 9936, 8, 621, 1, 2, 9936, 9937, 5, 1242, 622, 2, 9937, 9946, 3, 2, 2, 2, 9938, 9939, 12, 4, 2, 2, 9939, 9940, 7, 45, 2, 2, 9940, 9945, 5, 1240, 621, 5, 9941, 9942, 12, 3, 2, 2, 9942, 9943, 7, 1174, 2, 2, 9943, 9945, 5, 1240, 621, 4, 9944, 9938, 3, 2, 2, 2, 9944, 9941, 3, 2, 2, 2, 9945, 9948, 3, 2, 2, 2, 9946, 9944, 3, 2, 2, 2, 9946, 9947, 3, 2, 2, 2, 9947, 1241, 3, 2, 2, 2, 9948, 9946, 3, 2, 2, 2, 9949, 9951, 7, 1075, 2, 2, 9950, 9949, 3, 2, 2, 2, 9950, 9951, 3, 2, 2, 2, 9951, 9952, 3, 2, 2, 2, 9952, 9960, 5, 1246, 624, 2, 9953, 9955, 7, 697, 2, 2, 9954, 9956, 7, 1075, 2, 2, 9955, 9954, 3, 2, 2, 2, 9955, 9956, 3, 2, 2, 2, 9956, 9957, 3, 2, 2, 2, 9957, 9959, 5, 1244, 623, 2, 9958, 9953, 3, 2, 2, 2, 9959, 9962, 3, 2, 2, 2, 9960, 9958, 3, 2, 2, 2, 9960, 9961, 3, 2, 2, 2, 9961, 1243, 3, 2, 2, 2, 9962, 9960, 3, 2, 2, 2, 9963, 9989, 7, 1099, 2, 2, 9964, 9989, 7, 883, 2, 2, 9965, 9989, 7, 1299, 2, 2, 9966, 9989, 7, 651, 2, 2, 9967, 9968, 7, 35, 2, 2, 9968, 9989, 7, 1512, 2, 2, 9969, 9989, 7, 439, 2, 2, 9970, 9972, 7, 1117, 2, 2, 9971, 9973, 7, 1989, 2, 2, 9972, 9971, 3, 2, 2, 2, 9972, 9973, 3, 2, 2, 2, 9973, 9974, 3, 2, 2, 2, 9974, 9976, 7, 2225, 2, 2, 9975, 9977, 7, 1129, 2, 2, 9976, 9975, 3, 2, 2, 2, 9976, 9977, 3, 2, 2, 2, 9977, 9978, 3, 2, 2, 2, 9978, 9983, 5, 1460, 731, 2, 9979, 9980, 7, 2231, 2, 2, 9980, 9982, 5, 1460, 731, 2, 9981, 9979, 3, 2, 2, 2, 9982, 9985, 3, 2, 2, 2, 9983, 9981, 3, 2, 2, 2, 9983, 9984, 3, 2, 2, 2, 9984, 9986, 3, 2, 2, 2, 9985, 9983, 3, 2, 2, 2, 9986, 9987, 7, 2226, 2, 2, 9987, 9989, 3, 2, 2, 2, 9988, 9963, 3, 2, 2, 2, 9988, 9964, 3, 2, 2, 2, 9988, 9965, 3, 2, 2, 2, 9988, 9966, 3, 2, 2, 2, 9988, 9967, 3, 2, 2, 2, 9988, 9969, 3, 2, 2, 2, 9988, 9970, 3, 2, 2, 2, 9989, 1245, 3, 2, 2, 2, 9990, 9996, 5, 1248, 625, 2, 9991, 9993, 9, 111, 2, 2, 9992, 9994, 7, 1117, 2, 2, 9993, 9992, 3, 2, 2, 2, 9993, 9994, 3, 2, 2, 2, 9994, 9995, 3, 2, 2, 2, 9995, 9997, 5, 1258, 630, 2, 9996, 9991, 3, 2, 2, 2, 9996, 9997, 3, 2, 2, 2, 9997, 1247, 3, 2, 2, 2, 9998, 9999, 8, 625, 1, 2, 9999, 10000, 5, 1250, 626, 2, 10000, 10007, 3, 2, 2, 2, 10001, 10002, 12, 4, 2, 2, 10002, 10003, 5, 1252, 627, 2, 10003, 10004, 5, 1248, 625, 5, 10004, 10006, 3, 2, 2, 2, 10005, 10001, 3, 2, 2, 2, 10006, 10009, 3, 2, 2, 2, 10007, 10005, 3, 2, 2, 2, 10007, 10008, 3, 2, 2, 2, 10008, 1249, 3, 2, 2, 2, 10009, 10007, 3, 2, 2, 2, 10010, 10026, 5, 1258, 630, 2, 10011, 10013, 7, 1075, 2, 2, 10012, 10011, 3, 2, 2, 2, 10012, 10013, 3, 2, 2, 2, 10013, 10024, 3, 2, 2, 2, 10014, 10015, 7, 654, 2, 2, 10015, 10025, 5, 1254, 628, 2, 10016, 10017, 7, 109, 2, 2, 10017, 10025, 5, 1256, 629, 2, 10018, 10019, 9, 112, 2, 2, 10019, 10022, 5, 1258, 630, 2, 10020, 10021, 7, 461, 2, 2, 10021, 10023, 5, 1258, 630, 2, 10022, 10020, 3, 2, 2, 2, 10022, 10023, 3, 2, 2, 2, 10023, 10025, 3, 2, 2, 2, 10024, 10014, 3, 2, 2, 2, 10024, 10016, 3, 2, 2, 2, 10024, 10018, 3, 2, 2, 2, 10025, 10027, 3, 2, 2, 2, 10026, 10012, 3, 2, 2, 2, 10026, 10027, 3, 2, 2, 2, 10027, 1251, 3, 2, 2, 2, 10028, 10043, 7, 2245, 2, 2, 10029, 10037, 7, 2236, 2, 2, 10030, 10031, 7, 2241, 2, 2, 10031, 10037, 7, 2240, 2, 2, 10032, 10033, 7, 2239, 2, 2, 10033, 10037, 7, 2245, 2, 2, 10034, 10035, 7, 2237, 2, 2, 10035, 10037, 7, 2245, 2, 2, 10036, 10029, 3, 2, 2, 2, 10036, 10030, 3, 2, 2, 2, 10036, 10032, 3, 2, 2, 2, 10036, 10034, 3, 2, 2, 2, 10037, 10043, 3, 2, 2, 2, 10038, 10040, 9, 113, 2, 2, 10039, 10041, 7, 2245, 2, 2, 10040, 10039, 3, 2, 2, 2, 10040, 10041, 3, 2, 2, 2, 10041, 10043, 3, 2, 2, 2, 10042, 10028, 3, 2, 2, 2, 10042, 10036, 3, 2, 2, 2, 10042, 10038, 3, 2, 2, 2, 10043, 1253, 3, 2, 2, 2, 10044, 10045, 7, 2225, 2, 2, 10045, 10046, 5, 1054, 528, 2, 10046, 10047, 7, 2226, 2, 2, 10047, 10063, 3, 2, 2, 2, 10048, 10049, 7, 2225, 2, 2, 10049, 10054, 5, 1258, 630, 2, 10050, 10051, 7, 2231, 2, 2, 10051, 10053, 5, 1258, 630, 2, 10052, 10050, 3, 2, 2, 2, 10053, 10056, 3, 2, 2, 2, 10054, 10052, 3, 2, 2, 2, 10054, 10055, 3, 2, 2, 2, 10055, 10057, 3, 2, 2, 2, 10056, 10054, 3, 2, 2, 2, 10057, 10058, 7, 2226, 2, 2, 10058, 10063, 3, 2, 2, 2, 10059, 10063, 5, 1480, 741, 2, 10060, 10063, 5, 1468, 735, 2, 10061, 10063, 5, 1470, 736, 2, 10062, 10044, 3, 2, 2, 2, 10062, 10048, 3, 2, 2, 2, 10062, 10059, 3, 2, 2, 2, 10062, 10060, 3, 2, 2, 2, 10062, 10061, 3, 2, 2, 2, 10063, 1255, 3, 2, 2, 2, 10064, 10065, 5, 1258, 630, 2, 10065, 10066, 7, 45, 2, 2, 10066, 10067, 5, 1258, 630, 2, 10067, 1257, 3, 2, 2, 2, 10068, 10069, 8, 630, 1, 2, 10069, 10078, 5, 1262, 632, 2, 10070, 10075, 7, 76, 2, 2, 10071, 10076, 7, 771, 2, 2, 10072, 10073, 7, 1939, 2, 2, 10073, 10074, 7, 2175, 2, 2, 10074, 10076, 5, 1258, 630, 2, 10075, 10071, 3, 2, 2, 2, 10075, 10072, 3, 2, 2, 2, 10076, 10079, 3, 2, 2, 2, 10077, 10079, 5, 1260, 631, 2, 10078, 10070, 3, 2, 2, 2, 10078, 10077, 3, 2, 2, 2, 10078, 10079, 3, 2, 2, 2, 10079, 10092, 3, 2, 2, 2, 10080, 10081, 12, 5, 2, 2, 10081, 10082, 9, 114, 2, 2, 10082, 10091, 5, 1258, 630, 6, 10083, 10084, 12, 4, 2, 2, 10084, 10085, 9, 115, 2, 2, 10085, 10091, 5, 1258, 630, 5, 10086, 10087, 12, 3, 2, 2, 10087, 10088, 7, 2244, 2, 2, 10088, 10089, 7, 2244, 2, 2, 10089, 10091, 5, 1258, 630, 4, 10090, 10080, 3, 2, 2, 2, 10090, 10083, 3, 2, 2, 2, 10090, 10086, 3, 2, 2, 2, 10091, 10094, 3, 2, 2, 2, 10092, 10090, 3, 2, 2, 2, 10092, 10093, 3, 2, 2, 2, 10093, 1259, 3, 2, 2, 2, 10094, 10092, 3, 2, 2, 2, 10095, 10100, 7, 331, 2, 2, 10096, 10097, 7, 2225, 2, 2, 10097, 10098, 5, 1258, 630, 2, 10098, 10099, 7, 2226, 2, 2, 10099, 10101, 3, 2, 2, 2, 10100, 10096, 3, 2, 2, 2, 10100, 10101, 3, 2, 2, 2, 10101, 10102, 3, 2, 2, 2, 10102, 10103, 7, 1966, 2, 2, 10103, 10108, 7, 1482, 2, 2, 10104, 10105, 7, 2225, 2, 2, 10105, 10106, 5, 1258, 630, 2, 10106, 10107, 7, 2226, 2, 2, 10107, 10109, 3, 2, 2, 2, 10108, 10104, 3, 2, 2, 2, 10108, 10109, 3, 2, 2, 2, 10109, 10120, 3, 2, 2, 2, 10110, 10115, 7, 2171, 2, 2, 10111, 10112, 7, 2225, 2, 2, 10112, 10113, 5, 1258, 630, 2, 10113, 10114, 7, 2226, 2, 2, 10114, 10116, 3, 2, 2, 2, 10115, 10111, 3, 2, 2, 2, 10115, 10116, 3, 2, 2, 2, 10116, 10117, 3, 2, 2, 2, 10117, 10118, 7, 1966, 2, 2, 10118, 10120, 7, 870, 2, 2, 10119, 10095, 3, 2, 2, 2, 10119, 10110, 3, 2, 2, 2, 10120, 1261, 3, 2, 2, 2, 10121, 10126, 5, 1270, 636, 2, 10122, 10123, 7, 2246, 2, 2, 10123, 10124, 5, 1264, 633, 2, 10124, 10125, 7, 2247, 2, 2, 10125, 10127, 3, 2, 2, 2, 10126, 10122, 3, 2, 2, 2, 10126, 10127, 3, 2, 2, 2, 10127, 1263, 3, 2, 2, 2, 10128, 10131, 7, 50, 2, 2, 10129, 10131, 5, 1236, 619, 2, 10130, 10128, 3, 2, 2, 2, 10130, 10129, 3, 2, 2, 2, 10131, 10139, 3, 2, 2, 2, 10132, 10135, 7, 2231, 2, 2, 10133, 10136, 7, 50, 2, 2, 10134, 10136, 5, 1236, 619, 2, 10135, 10133, 3, 2, 2, 2, 10135, 10134, 3, 2, 2, 2, 10136, 10138, 3, 2, 2, 2, 10137, 10132, 3, 2, 2, 2, 10138, 10141, 3, 2, 2, 2, 10139, 10137, 3, 2, 2, 2, 10139, 10140, 3, 2, 2, 2, 10140, 10152, 3, 2, 2, 2, 10141, 10139, 3, 2, 2, 2, 10142, 10147, 5, 1266, 634, 2, 10143, 10144, 7, 2231, 2, 2, 10144, 10146, 5, 1266, 634, 2, 10145, 10143, 3, 2, 2, 2, 10146, 10149, 3, 2, 2, 2, 10147, 10145, 3, 2, 2, 2, 10147, 10148, 3, 2, 2, 2, 10148, 10152, 3, 2, 2, 2, 10149, 10147, 3, 2, 2, 2, 10150, 10152, 5, 1268, 635, 2, 10151, 10130, 3, 2, 2, 2, 10151, 10142, 3, 2, 2, 2, 10151, 10150, 3, 2, 2, 2, 10152, 1265, 3, 2, 2, 2, 10153, 10154, 7, 548, 2, 2, 10154, 10172, 5, 1426, 714, 2, 10155, 10156, 7, 654, 2, 2, 10156, 10158, 7, 2225, 2, 2, 10157, 10159, 5, 1234, 618, 2, 10158, 10157, 3, 2, 2, 2, 10158, 10159, 3, 2, 2, 2, 10159, 10160, 3, 2, 2, 2, 10160, 10173, 7, 2226, 2, 2, 10161, 10162, 7, 759, 2, 2, 10162, 10164, 5, 1236, 619, 2, 10163, 10161, 3, 2, 2, 2, 10163, 10164, 3, 2, 2, 2, 10164, 10165, 3, 2, 2, 2, 10165, 10166, 7, 556, 2, 2, 10166, 10167, 5, 1236, 619, 2, 10167, 10168, 7, 1966, 2, 2, 10168, 10169, 5, 1236, 619, 2, 10169, 10170, 9, 116, 2, 2, 10170, 10171, 5, 1236, 619, 2, 10171, 10173, 3, 2, 2, 2, 10172, 10155, 3, 2, 2, 2, 10172, 10163, 3, 2, 2, 2, 10173, 1267, 3, 2, 2, 2, 10174, 10175, 7, 548, 2, 2, 10175, 10176, 5, 1446, 724, 2, 10176, 10177, 7, 654, 2, 2, 10177, 10184, 7, 2225, 2, 2, 10178, 10185, 5, 1054, 528, 2, 10179, 10181, 7, 2225, 2, 2, 10180, 10182, 5, 1234, 618, 2, 10181, 10180, 3, 2, 2, 2, 10181, 10182, 3, 2, 2, 2, 10182, 10183, 3, 2, 2, 2, 10183, 10185, 7, 2226, 2, 2, 10184, 10178, 3, 2, 2, 2, 10184, 10179, 3, 2, 2, 2, 10185, 10186, 3, 2, 2, 2, 10186, 10187, 7, 2226, 2, 2, 10187, 1269, 3, 2, 2, 2, 10188, 10189, 9, 115, 2, 2, 10189, 10205, 5, 1270, 636, 2, 10190, 10191, 7, 1309, 2, 2, 10191, 10205, 5, 1270, 636, 2, 10192, 10193, 7, 252, 2, 2, 10193, 10205, 5, 1270, 636, 2, 10194, 10195, 7, 905, 2, 2, 10195, 10205, 5, 1270, 636, 2, 10196, 10197, 7, 398, 2, 2, 10197, 10205, 5, 1270, 636, 2, 10198, 10199, 7, 37, 2, 2, 10199, 10205, 5, 1270, 636, 2, 10200, 10205, 5, 1272, 637, 2, 10201, 10205, 5, 1286, 644, 2, 10202, 10205, 5, 1290, 646, 2, 10203, 10205, 5, 1284, 643, 2, 10204, 10188, 3, 2, 2, 2, 10204, 10190, 3, 2, 2, 2, 10204, 10192, 3, 2, 2, 2, 10204, 10194, 3, 2, 2, 2, 10204, 10196, 3, 2, 2, 2, 10204, 10198, 3, 2, 2, 2, 10204, 10200, 3, 2, 2, 2, 10204, 10201, 3, 2, 2, 2, 10204, 10202, 3, 2, 2, 2, 10204, 10203, 3, 2, 2, 2, 10205, 1271, 3, 2, 2, 2, 10206, 10209, 5, 1278, 640, 2, 10207, 10209, 5, 1274, 638, 2, 10208, 10206, 3, 2, 2, 2, 10208, 10207, 3, 2, 2, 2, 10209, 1273, 3, 2, 2, 2, 10210, 10212, 5, 1400, 701, 2, 10211, 10210, 3, 2, 2, 2, 10211, 10212, 3, 2, 2, 2, 10212, 10213, 3, 2, 2, 2, 10213, 10214, 7, 165, 2, 2, 10214, 10216, 5, 1236, 619, 2, 10215, 10217, 5, 1276, 639, 2, 10216, 10215, 3, 2, 2, 2, 10217, 10218, 3, 2, 2, 2, 10218, 10216, 3, 2, 2, 2, 10218, 10219, 3, 2, 2, 2, 10219, 10221, 3, 2, 2, 2, 10220, 10222, 5, 1282, 642, 2, 10221, 10220, 3, 2, 2, 2, 10221, 10222, 3, 2, 2, 2, 10222, 10223, 3, 2, 2, 2, 10223, 10225, 7, 447, 2, 2, 10224, 10226, 7, 165, 2, 2, 10225, 10224, 3, 2, 2, 2, 10225, 10226, 3, 2, 2, 2, 10226, 10228, 3, 2, 2, 2, 10227, 10229, 5, 1400, 701, 2, 10228, 10227, 3, 2, 2, 2, 10228, 10229, 3, 2, 2, 2, 10229, 1275, 3, 2, 2, 2, 10230, 10231, 7, 2115, 2, 2, 10231, 10232, 5, 1236, 619, 2, 10232, 10235, 7, 1927, 2, 2, 10233, 10236, 5, 952, 477, 2, 10234, 10236, 5, 1236, 619, 2, 10235, 10233, 3, 2, 2, 2, 10235, 10234, 3, 2, 2, 2, 10236, 1277, 3, 2, 2, 2, 10237, 10239, 5, 1400, 701, 2, 10238, 10237, 3, 2, 2, 2, 10238, 10239, 3, 2, 2, 2, 10239, 10240, 3, 2, 2, 2, 10240, 10242, 7, 165, 2, 2, 10241, 10243, 5, 1280, 641, 2, 10242, 10241, 3, 2, 2, 2, 10243, 10244, 3, 2, 2, 2, 10244, 10242, 3, 2, 2, 2, 10244, 10245, 3, 2, 2, 2, 10245, 10247, 3, 2, 2, 2, 10246, 10248, 5, 1282, 642, 2, 10247, 10246, 3, 2, 2, 2, 10247, 10248, 3, 2, 2, 2, 10248, 10249, 3, 2, 2, 2, 10249, 10251, 7, 447, 2, 2, 10250, 10252, 7, 165, 2, 2, 10251, 10250, 3, 2, 2, 2, 10251, 10252, 3, 2, 2, 2, 10252, 10254, 3, 2, 2, 2, 10253, 10255, 5, 1400, 701, 2, 10254, 10253, 3, 2, 2, 2, 10254, 10255, 3, 2, 2, 2, 10255, 1279, 3, 2, 2, 2, 10256, 10257, 7, 2115, 2, 2, 10257, 10258, 5, 1236, 619, 2, 10258, 10261, 7, 1927, 2, 2, 10259, 10262, 5, 952, 477, 2, 10260, 10262, 5, 1236, 619, 2, 10261, 10259, 3, 2, 2, 2, 10261, 10260, 3, 2, 2, 2, 10262, 1281, 3, 2, 2, 2, 10263, 10266, 7, 434, 2, 2, 10264, 10267, 5, 952, 477, 2, 10265, 10267, 5, 1236, 619, 2, 10266, 10264, 3, 2, 2, 2, 10266, 10265, 3, 2, 2, 2, 10267, 1283, 3, 2, 2, 2, 10268, 10269, 5, 1474, 738, 2, 10269, 10270, 5, 1492, 747, 2, 10270, 10288, 3, 2, 2, 2, 10271, 10288, 5, 1468, 735, 2, 10272, 10288, 5, 1480, 741, 2, 10273, 10288, 5, 1470, 736, 2, 10274, 10275, 7, 2225, 2, 2, 10275, 10276, 5, 1054, 528, 2, 10276, 10280, 7, 2226, 2, 2, 10277, 10279, 5, 1058, 530, 2, 10278, 10277, 3, 2, 2, 2, 10279, 10282, 3, 2, 2, 2, 10280, 10278, 3, 2, 2, 2, 10280, 10281, 3, 2, 2, 2, 10281, 10288, 3, 2, 2, 2, 10282, 10280, 3, 2, 2, 2, 10283, 10284, 7, 2225, 2, 2, 10284, 10285, 5, 1234, 618, 2, 10285, 10286, 7, 2226, 2, 2, 10286, 10288, 3, 2, 2, 2, 10287, 10268, 3, 2, 2, 2, 10287, 10271, 3, 2, 2, 2, 10287, 10272, 3, 2, 2, 2, 10287, 10273, 3, 2, 2, 2, 10287, 10274, 3, 2, 2, 2, 10287, 10283, 3, 2, 2, 2, 10288, 1285, 3, 2, 2, 2, 10289, 10298, 9, 117, 2, 2, 10290, 10291, 7, 2225, 2, 2, 10291, 10292, 5, 1054, 528, 2, 10292, 10293, 7, 2226, 2, 2, 10293, 10299, 3, 2, 2, 2, 10294, 10295, 7, 2225, 2, 2, 10295, 10296, 5, 1236, 619, 2, 10296, 10297, 7, 2226, 2, 2, 10297, 10299, 3, 2, 2, 2, 10298, 10290, 3, 2, 2, 2, 10298, 10294, 3, 2, 2, 2, 10299, 1287, 3, 2, 2, 2, 10300, 10301, 7, 2204, 2, 2, 10301, 10302, 7, 2225, 2, 2, 10302, 10303, 5, 1236, 619, 2, 10303, 10304, 7, 2231, 2, 2, 10304, 10307, 5, 1236, 619, 2, 10305, 10306, 7, 2231, 2, 2, 10306, 10308, 5, 1236, 619, 2, 10307, 10305, 3, 2, 2, 2, 10307, 10308, 3, 2, 2, 2, 10308, 10309, 3, 2, 2, 2, 10309, 10310, 7, 2226, 2, 2, 10310, 10371, 3, 2, 2, 2, 10311, 10312, 7, 2205, 2, 2, 10312, 10316, 7, 2225, 2, 2, 10313, 10317, 5, 1474, 738, 2, 10314, 10317, 5, 1290, 646, 2, 10315, 10317, 5, 1236, 619, 2, 10316, 10313, 3, 2, 2, 2, 10316, 10314, 3, 2, 2, 2, 10316, 10315, 3, 2, 2, 2, 10317, 10320, 3, 2, 2, 2, 10318, 10319, 7, 2231, 2, 2, 10319, 10321, 5, 1486, 744, 2, 10320, 10318, 3, 2, 2, 2, 10320, 10321, 3, 2, 2, 2, 10321, 10324, 3, 2, 2, 2, 10322, 10323, 7, 2231, 2, 2, 10323, 10325, 5, 1486, 744, 2, 10324, 10322, 3, 2, 2, 2, 10324, 10325, 3, 2, 2, 2, 10325, 10326, 3, 2, 2, 2, 10326, 10327, 7, 2226, 2, 2, 10327, 10371, 3, 2, 2, 2, 10328, 10329, 7, 2192, 2, 2, 10329, 10330, 7, 2225, 2, 2, 10330, 10331, 5, 1234, 618, 2, 10331, 10332, 7, 2226, 2, 2, 10332, 10371, 3, 2, 2, 2, 10333, 10334, 7, 186, 2, 2, 10334, 10335, 7, 2225, 2, 2, 10335, 10336, 5, 1258, 630, 2, 10336, 10337, 7, 2065, 2, 2, 10337, 10338, 7, 891, 2, 2, 10338, 10339, 7, 2226, 2, 2, 10339, 10371, 3, 2, 2, 2, 10340, 10341, 7, 2199, 2, 2, 10341, 10342, 7, 2225, 2, 2, 10342, 10343, 5, 1236, 619, 2, 10343, 10344, 7, 2231, 2, 2, 10344, 10345, 5, 1236, 619, 2, 10345, 10346, 7, 2226, 2, 2, 10346, 10371, 3, 2, 2, 2, 10347, 10348, 7, 2206, 2, 2, 10348, 10356, 7, 2225, 2, 2, 10349, 10351, 9, 118, 2, 2, 10350, 10349, 3, 2, 2, 2, 10350, 10351, 3, 2, 2, 2, 10351, 10353, 3, 2, 2, 2, 10352, 10354, 5, 1486, 744, 2, 10353, 10352, 3, 2, 2, 2, 10353, 10354, 3, 2, 2, 2, 10354, 10355, 3, 2, 2, 2, 10355, 10357, 7, 556, 2, 2, 10356, 10350, 3, 2, 2, 2, 10356, 10357, 3, 2, 2, 2, 10357, 10358, 3, 2, 2, 2, 10358, 10359, 5, 1258, 630, 2, 10359, 10360, 7, 2226, 2, 2, 10360, 10371, 3, 2, 2, 2, 10361, 10362, 7, 2213, 2, 2, 10362, 10363, 7, 2225, 2, 2, 10363, 10366, 5, 1236, 619, 2, 10364, 10365, 7, 2231, 2, 2, 10365, 10367, 5, 1486, 744, 2, 10366, 10364, 3, 2, 2, 2, 10366, 10367, 3, 2, 2, 2, 10367, 10368, 3, 2, 2, 2, 10368, 10369, 7, 2226, 2, 2, 10369, 10371, 3, 2, 2, 2, 10370, 10300, 3, 2, 2, 2, 10370, 10311, 3, 2, 2, 2, 10370, 10328, 3, 2, 2, 2, 10370, 10333, 3, 2, 2, 2, 10370, 10340, 3, 2, 2, 2, 10370, 10347, 3, 2, 2, 2, 10370, 10361, 3, 2, 2, 2, 10371, 1289, 3, 2, 2, 2, 10372, 10376, 5, 1288, 645, 2, 10373, 10376, 5, 1294, 648, 2, 10374, 10376, 5, 1298, 650, 2, 10375, 10372, 3, 2, 2, 2, 10375, 10373, 3, 2, 2, 2, 10375, 10374, 3, 2, 2, 2, 10376, 1291, 3, 2, 2, 2, 10377, 10382, 7, 2221, 2, 2, 10378, 10382, 5, 1288, 645, 2, 10379, 10382, 5, 1482, 742, 2, 10380, 10382, 7, 824, 2, 2, 10381, 10377, 3, 2, 2, 2, 10381, 10378, 3, 2, 2, 2, 10381, 10379, 3, 2, 2, 2, 10381, 10380, 3, 2, 2, 2, 10382, 1293, 3, 2, 2, 2, 10383, 10386, 5, 1296, 649, 2, 10384, 10387, 5, 1266, 634, 2, 10385, 10387, 5, 1268, 635, 2, 10386, 10384, 3, 2, 2, 2, 10386, 10385, 3, 2, 2, 2, 10386, 10387, 3, 2, 2, 2, 10387, 1295, 3, 2, 2, 2, 10388, 10389, 7, 2207, 2, 2, 10389, 10391, 7, 2225, 2, 2, 10390, 10392, 9, 119, 2, 2, 10391, 10390, 3, 2, 2, 2, 10391, 10392, 3, 2, 2, 2, 10392, 10393, 3, 2, 2, 2, 10393, 10394, 5, 1236, 619, 2, 10394, 10395, 7, 2226, 2, 2, 10395, 10447, 3, 2, 2, 2, 10396, 10397, 7, 283, 2, 2, 10397, 10405, 7, 2225, 2, 2, 10398, 10406, 7, 2228, 2, 2, 10399, 10401, 9, 96, 2, 2, 10400, 10399, 3, 2, 2, 2, 10400, 10401, 3, 2, 2, 2, 10401, 10402, 3, 2, 2, 2, 10402, 10404, 5, 1258, 630, 2, 10403, 10400, 3, 2, 2, 2, 10403, 10404, 3, 2, 2, 2, 10404, 10406, 3, 2, 2, 2, 10405, 10398, 3, 2, 2, 2, 10405, 10403, 3, 2, 2, 2, 10406, 10407, 3, 2, 2, 2, 10407, 10409, 7, 2226, 2, 2, 10408, 10410, 5, 1306, 654, 2, 10409, 10408, 3, 2, 2, 2, 10409, 10410, 3, 2, 2, 2, 10410, 10447, 3, 2, 2, 2, 10411, 10412, 7, 2202, 2, 2, 10412, 10413, 7, 2225, 2, 2, 10413, 10416, 5, 1236, 619, 2, 10414, 10415, 7, 2231, 2, 2, 10415, 10417, 7, 2219, 2, 2, 10416, 10414, 3, 2, 2, 2, 10416, 10417, 3, 2, 2, 2, 10417, 10418, 3, 2, 2, 2, 10418, 10419, 7, 2226, 2, 2, 10419, 10447, 3, 2, 2, 2, 10420, 10421, 7, 2189, 2, 2, 10421, 10423, 7, 2225, 2, 2, 10422, 10424, 9, 119, 2, 2, 10423, 10422, 3, 2, 2, 2, 10423, 10424, 3, 2, 2, 2, 10424, 10425, 3, 2, 2, 2, 10425, 10426, 5, 1236, 619, 2, 10426, 10427, 7, 2226, 2, 2, 10427, 10447, 3, 2, 2, 2, 10428, 10429, 7, 2195, 2, 2, 10429, 10431, 7, 2225, 2, 2, 10430, 10432, 9, 119, 2, 2, 10431, 10430, 3, 2, 2, 2, 10431, 10432, 3, 2, 2, 2, 10432, 10433, 3, 2, 2, 2, 10433, 10434, 5, 1236, 619, 2, 10434, 10435, 7, 2226, 2, 2, 10435, 10447, 3, 2, 2, 2, 10436, 10437, 7, 2211, 2, 2, 10437, 10438, 7, 2225, 2, 2, 10438, 10439, 5, 1234, 618, 2, 10439, 10440, 7, 2226, 2, 2, 10440, 10447, 3, 2, 2, 2, 10441, 10442, 7, 2212, 2, 2, 10442, 10443, 7, 2225, 2, 2, 10443, 10444, 5, 1234, 618, 2, 10444, 10445, 7, 2226, 2, 2, 10445, 10447, 3, 2, 2, 2, 10446, 10388, 3, 2, 2, 2, 10446, 10396, 3, 2, 2, 2, 10446, 10411, 3, 2, 2, 2, 10446, 10420, 3, 2, 2, 2, 10446, 10428, 3, 2, 2, 2, 10446, 10436, 3, 2, 2, 2, 10446, 10441, 3, 2, 2, 2, 10447, 1297, 3, 2, 2, 2, 10448, 10449, 5, 1300, 651, 2, 10449, 10451, 5, 1452, 727, 2, 10450, 10452, 5, 1306, 654, 2, 10451, 10450, 3, 2, 2, 2, 10451, 10452, 3, 2, 2, 2, 10452, 10744, 3, 2, 2, 2, 10453, 10454, 5, 1494, 748, 2, 10454, 10456, 5, 1454, 728, 2, 10455, 10457, 5, 1314, 658, 2, 10456, 10455, 3, 2, 2, 2, 10456, 10457, 3, 2, 2, 2, 10457, 10744, 3, 2, 2, 2, 10458, 10459, 7, 283, 2, 2, 10459, 10465, 7, 2225, 2, 2, 10460, 10466, 7, 2228, 2, 2, 10461, 10463, 9, 96, 2, 2, 10462, 10461, 3, 2, 2, 2, 10462, 10463, 3, 2, 2, 2, 10463, 10464, 3, 2, 2, 2, 10464, 10466, 5, 1258, 630, 2, 10465, 10460, 3, 2, 2, 2, 10465, 10462, 3, 2, 2, 2, 10466, 10467, 3, 2, 2, 2, 10467, 10469, 7, 2226, 2, 2, 10468, 10470, 5, 1306, 654, 2, 10469, 10468, 3, 2, 2, 2, 10469, 10470, 3, 2, 2, 2, 10470, 10744, 3, 2, 2, 2, 10471, 10472, 9, 120, 2, 2, 10472, 10479, 7, 2225, 2, 2, 10473, 10474, 7, 878, 2, 2, 10474, 10475, 7, 2225, 2, 2, 10475, 10476, 5, 1054, 528, 2, 10476, 10477, 7, 2226, 2, 2, 10477, 10480, 3, 2, 2, 2, 10478, 10480, 5, 1258, 630, 2, 10479, 10473, 3, 2, 2, 2, 10479, 10478, 3, 2, 2, 2, 10480, 10481, 3, 2, 2, 2, 10481, 10482, 7, 63, 2, 2, 10482, 10483, 5, 1460, 731, 2, 10483, 10484, 7, 2226, 2, 2, 10484, 10744, 3, 2, 2, 2, 10485, 10486, 7, 207, 2, 2, 10486, 10487, 7, 2225, 2, 2, 10487, 10493, 5, 1474, 738, 2, 10488, 10491, 7, 2231, 2, 2, 10489, 10492, 5, 1482, 742, 2, 10490, 10492, 5, 1486, 744, 2, 10491, 10489, 3, 2, 2, 2, 10491, 10490, 3, 2, 2, 2, 10492, 10494, 3, 2, 2, 2, 10493, 10488, 3, 2, 2, 2, 10493, 10494, 3, 2, 2, 2, 10494, 10495, 3, 2, 2, 2, 10495, 10496, 7, 2226, 2, 2, 10496, 10744, 3, 2, 2, 2, 10497, 10498, 7, 212, 2, 2, 10498, 10500, 7, 2225, 2, 2, 10499, 10501, 9, 121, 2, 2, 10500, 10499, 3, 2, 2, 2, 10500, 10501, 3, 2, 2, 2, 10501, 10502, 3, 2, 2, 2, 10502, 10504, 5, 1258, 630, 2, 10503, 10505, 5, 1318, 660, 2, 10504, 10503, 3, 2, 2, 2, 10504, 10505, 3, 2, 2, 2, 10505, 10506, 3, 2, 2, 2, 10506, 10507, 7, 2226, 2, 2, 10507, 10744, 3, 2, 2, 2, 10508, 10509, 5, 1302, 652, 2, 10509, 10511, 5, 1450, 726, 2, 10510, 10512, 5, 1320, 661, 2, 10511, 10510, 3, 2, 2, 2, 10512, 10513, 3, 2, 2, 2, 10513, 10511, 3, 2, 2, 2, 10513, 10514, 3, 2, 2, 2, 10514, 10744, 3, 2, 2, 2, 10515, 10516, 5, 1418, 710, 2, 10516, 10517, 9, 122, 2, 2, 10517, 10744, 3, 2, 2, 2, 10518, 10519, 7, 347, 2, 2, 10519, 10520, 7, 2225, 2, 2, 10520, 10522, 5, 1258, 630, 2, 10521, 10523, 9, 123, 2, 2, 10522, 10521, 3, 2, 2, 2, 10522, 10523, 3, 2, 2, 2, 10523, 10524, 3, 2, 2, 2, 10524, 10525, 7, 2226, 2, 2, 10525, 10744, 3, 2, 2, 2, 10526, 10527, 7, 498, 2, 2, 10527, 10528, 7, 2225, 2, 2, 10528, 10529, 5, 1494, 748, 2, 10529, 10530, 7, 556, 2, 2, 10530, 10531, 5, 1258, 630, 2, 10531, 10532, 7, 2226, 2, 2, 10532, 10744, 3, 2, 2, 2, 10533, 10534, 9, 124, 2, 2, 10534, 10536, 5, 1452, 727, 2, 10535, 10537, 5, 1456, 729, 2, 10536, 10535, 3, 2, 2, 2, 10536, 10537, 3, 2, 2, 2, 10537, 10538, 3, 2, 2, 2, 10538, 10539, 5, 1306, 654, 2, 10539, 10744, 3, 2, 2, 2, 10540, 10541, 5, 1304, 653, 2, 10541, 10542, 7, 2225, 2, 2, 10542, 10544, 5, 1234, 618, 2, 10543, 10545, 5, 1322, 662, 2, 10544, 10543, 3, 2, 2, 2, 10544, 10545, 3, 2, 2, 2, 10545, 10547, 3, 2, 2, 2, 10546, 10548, 5, 1314, 658, 2, 10547, 10546, 3, 2, 2, 2, 10547, 10548, 3, 2, 2, 2, 10548, 10549, 3, 2, 2, 2, 10549, 10550, 7, 2226, 2, 2, 10550, 10744, 3, 2, 2, 2, 10551, 10552, 7, 1976, 2, 2, 10552, 10553, 7, 2225, 2, 2, 10553, 10556, 5, 1236, 619, 2, 10554, 10555, 7, 2065, 2, 2, 10555, 10557, 9, 125, 2, 2, 10556, 10554, 3, 2, 2, 2, 10556, 10557, 3, 2, 2, 2, 10557, 10562, 3, 2, 2, 2, 10558, 10559, 7, 2231, 2, 2, 10559, 10561, 5, 1236, 619, 2, 10560, 10558, 3, 2, 2, 2, 10561, 10564, 3, 2, 2, 2, 10562, 10560, 3, 2, 2, 2, 10562, 10563, 3, 2, 2, 2, 10563, 10565, 3, 2, 2, 2, 10564, 10562, 3, 2, 2, 2, 10565, 10566, 7, 2226, 2, 2, 10566, 10744, 3, 2, 2, 2, 10567, 10568, 7, 1978, 2, 2, 10568, 10569, 7, 2225, 2, 2, 10569, 10570, 5, 1236, 619, 2, 10570, 10572, 7, 63, 2, 2, 10571, 10573, 7, 1378, 2, 2, 10572, 10571, 3, 2, 2, 2, 10572, 10573, 3, 2, 2, 2, 10573, 10574, 3, 2, 2, 2, 10574, 10575, 5, 1460, 731, 2, 10575, 10576, 7, 2226, 2, 2, 10576, 10744, 3, 2, 2, 2, 10577, 10578, 7, 2206, 2, 2, 10578, 10586, 7, 2225, 2, 2, 10579, 10581, 9, 118, 2, 2, 10580, 10579, 3, 2, 2, 2, 10580, 10581, 3, 2, 2, 2, 10581, 10583, 3, 2, 2, 2, 10582, 10584, 5, 1486, 744, 2, 10583, 10582, 3, 2, 2, 2, 10583, 10584, 3, 2, 2, 2, 10584, 10585, 3, 2, 2, 2, 10585, 10587, 7, 556, 2, 2, 10586, 10580, 3, 2, 2, 2, 10586, 10587, 3, 2, 2, 2, 10587, 10588, 3, 2, 2, 2, 10588, 10589, 5, 1258, 630, 2, 10589, 10590, 7, 2226, 2, 2, 10590, 10744, 3, 2, 2, 2, 10591, 10592, 7, 2133, 2, 2, 10592, 10593, 7, 2225, 2, 2, 10593, 10595, 5, 1236, 619, 2, 10594, 10596, 5, 1152, 577, 2, 10595, 10594, 3, 2, 2, 2, 10595, 10596, 3, 2, 2, 2, 10596, 10597, 3, 2, 2, 2, 10597, 10600, 7, 2226, 2, 2, 10598, 10599, 7, 2218, 2, 2, 10599, 10601, 5, 1472, 737, 2, 10600, 10598, 3, 2, 2, 2, 10600, 10601, 3, 2, 2, 2, 10601, 10744, 3, 2, 2, 2, 10602, 10603, 9, 126, 2, 2, 10603, 10604, 7, 2225, 2, 2, 10604, 10609, 5, 1334, 668, 2, 10605, 10606, 7, 2231, 2, 2, 10606, 10608, 5, 1334, 668, 2, 10607, 10605, 3, 2, 2, 2, 10608, 10611, 3, 2, 2, 2, 10609, 10607, 3, 2, 2, 2, 10609, 10610, 3, 2, 2, 2, 10610, 10612, 3, 2, 2, 2, 10611, 10609, 3, 2, 2, 2, 10612, 10615, 7, 2226, 2, 2, 10613, 10614, 7, 2218, 2, 2, 10614, 10616, 5, 1472, 737, 2, 10615, 10613, 3, 2, 2, 2, 10615, 10616, 3, 2, 2, 2, 10616, 10744, 3, 2, 2, 2, 10617, 10618, 7, 2142, 2, 2, 10618, 10620, 7, 2225, 2, 2, 10619, 10621, 9, 127, 2, 2, 10620, 10619, 3, 2, 2, 2, 10620, 10621, 3, 2, 2, 2, 10621, 10623, 3, 2, 2, 2, 10622, 10624, 9, 128, 2, 2, 10623, 10622, 3, 2, 2, 2, 10623, 10624, 3, 2, 2, 2, 10624, 10625, 3, 2, 2, 2, 10625, 10628, 5, 1236, 619, 2, 10626, 10627, 7, 2231, 2, 2, 10627, 10629, 5, 1326, 664, 2, 10628, 10626, 3, 2, 2, 2, 10628, 10629, 3, 2, 2, 2, 10629, 10637, 3, 2, 2, 2, 10630, 10631, 7, 2231, 2, 2, 10631, 10633, 5, 1236, 619, 2, 10632, 10634, 5, 1354, 678, 2, 10633, 10632, 3, 2, 2, 2, 10633, 10634, 3, 2, 2, 2, 10634, 10636, 3, 2, 2, 2, 10635, 10630, 3, 2, 2, 2, 10636, 10639, 3, 2, 2, 2, 10637, 10635, 3, 2, 2, 2, 10637, 10638, 3, 2, 2, 2, 10638, 10640, 3, 2, 2, 2, 10639, 10637, 3, 2, 2, 2, 10640, 10643, 7, 2226, 2, 2, 10641, 10642, 7, 2218, 2, 2, 10642, 10644, 5, 1472, 737, 2, 10643, 10641, 3, 2, 2, 2, 10643, 10644, 3, 2, 2, 2, 10644, 10744, 3, 2, 2, 2, 10645, 10646, 7, 2144, 2, 2, 10646, 10647, 7, 2225, 2, 2, 10647, 10649, 5, 1236, 619, 2, 10648, 10650, 5, 1324, 663, 2, 10649, 10648, 3, 2, 2, 2, 10649, 10650, 3, 2, 2, 2, 10650, 10651, 3, 2, 2, 2, 10651, 10652, 7, 2226, 2, 2, 10652, 10744, 3, 2, 2, 2, 10653, 10654, 7, 2153, 2, 2, 10654, 10655, 7, 2225, 2, 2, 10655, 10656, 9, 129, 2, 2, 10656, 10658, 5, 1258, 630, 2, 10657, 10659, 7, 2113, 2, 2, 10658, 10657, 3, 2, 2, 2, 10658, 10659, 3, 2, 2, 2, 10659, 10660, 3, 2, 2, 2, 10660, 10663, 7, 2226, 2, 2, 10661, 10662, 7, 2218, 2, 2, 10662, 10664, 5, 1472, 737, 2, 10663, 10661, 3, 2, 2, 2, 10663, 10664, 3, 2, 2, 2, 10664, 10744, 3, 2, 2, 2, 10665, 10666, 7, 2155, 2, 2, 10666, 10671, 7, 2225, 2, 2, 10667, 10668, 7, 881, 2, 2, 10668, 10672, 5, 1488, 745, 2, 10669, 10670, 7, 464, 2, 2, 10670, 10672, 5, 1258, 630, 2, 10671, 10667, 3, 2, 2, 2, 10671, 10669, 3, 2, 2, 2, 10672, 10675, 3, 2, 2, 2, 10673, 10674, 7, 2231, 2, 2, 10674, 10676, 5, 1258, 630, 2, 10675, 10673, 3, 2, 2, 2, 10675, 10676, 3, 2, 2, 2, 10676, 10677, 3, 2, 2, 2, 10677, 10680, 7, 2226, 2, 2, 10678, 10679, 7, 2218, 2, 2, 10679, 10681, 5, 1472, 737, 2, 10680, 10678, 3, 2, 2, 2, 10680, 10681, 3, 2, 2, 2, 10681, 10744, 3, 2, 2, 2, 10682, 10683, 7, 2157, 2, 2, 10683, 10684, 7, 2225, 2, 2, 10684, 10686, 5, 1258, 630, 2, 10685, 10687, 5, 1324, 663, 2, 10686, 10685, 3, 2, 2, 2, 10686, 10687, 3, 2, 2, 2, 10687, 10688, 3, 2, 2, 2, 10688, 10689, 7, 1432, 2, 2, 10689, 10693, 7, 265, 2, 2, 10690, 10691, 7, 1099, 2, 2, 10691, 10692, 7, 1130, 2, 2, 10692, 10694, 7, 439, 2, 2, 10693, 10690, 3, 2, 2, 2, 10693, 10694, 3, 2, 2, 2, 10694, 10695, 3, 2, 2, 2, 10695, 10698, 7, 2226, 2, 2, 10696, 10697, 7, 2218, 2, 2, 10697, 10699, 5, 1472, 737, 2, 10698, 10696, 3, 2, 2, 2, 10698, 10699, 3, 2, 2, 2, 10699, 10744, 3, 2, 2, 2, 10700, 10701, 7, 2158, 2, 2, 10701, 10702, 7, 2225, 2, 2, 10702, 10705, 5, 1258, 630, 2, 10703, 10704, 7, 2231, 2, 2, 10704, 10706, 5, 1336, 669, 2, 10705, 10703, 3, 2, 2, 2, 10705, 10706, 3, 2, 2, 2, 10706, 10709, 3, 2, 2, 2, 10707, 10708, 7, 2231, 2, 2, 10708, 10710, 5, 1338, 670, 2, 10709, 10707, 3, 2, 2, 2, 10709, 10710, 3, 2, 2, 2, 10710, 10711, 3, 2, 2, 2, 10711, 10714, 7, 2226, 2, 2, 10712, 10713, 7, 2218, 2, 2, 10713, 10715, 5, 1472, 737, 2, 10714, 10712, 3, 2, 2, 2, 10714, 10715, 3, 2, 2, 2, 10715, 10744, 3, 2, 2, 2, 10716, 10717, 7, 2160, 2, 2, 10717, 10718, 7, 2225, 2, 2, 10718, 10719, 9, 129, 2, 2, 10719, 10722, 5, 1258, 630, 2, 10720, 10721, 7, 63, 2, 2, 10721, 10723, 5, 1460, 731, 2, 10722, 10720, 3, 2, 2, 2, 10722, 10723, 3, 2, 2, 2, 10723, 10725, 3, 2, 2, 2, 10724, 10726, 5, 1340, 671, 2, 10725, 10724, 3, 2, 2, 2, 10725, 10726, 3, 2, 2, 2, 10726, 10728, 3, 2, 2, 2, 10727, 10729, 5, 1342, 672, 2, 10728, 10727, 3, 2, 2, 2, 10728, 10729, 3, 2, 2, 2, 10729, 10731, 3, 2, 2, 2, 10730, 10732, 5, 1344, 673, 2, 10731, 10730, 3, 2, 2, 2, 10731, 10732, 3, 2, 2, 2, 10732, 10735, 3, 2, 2, 2, 10733, 10734, 9, 130, 2, 2, 10734, 10736, 7, 354, 2, 2, 10735, 10733, 3, 2, 2, 2, 10735, 10736, 3, 2, 2, 2, 10736, 10737, 3, 2, 2, 2, 10737, 10740, 7, 2226, 2, 2, 10738, 10739, 7, 2218, 2, 2, 10739, 10741, 5, 1472, 737, 2, 10740, 10738, 3, 2, 2, 2, 10740, 10741, 3, 2, 2, 2, 10741, 10744, 3, 2, 2, 2, 10742, 10744, 5, 1430, 716, 2, 10743, 10448, 3, 2, 2, 2, 10743, 10453, 3, 2, 2, 2, 10743, 10458, 3, 2, 2, 2, 10743, 10471, 3, 2, 2, 2, 10743, 10485, 3, 2, 2, 2, 10743, 10497, 3, 2, 2, 2, 10743, 10508, 3, 2, 2, 2, 10743, 10515, 3, 2, 2, 2, 10743, 10518, 3, 2, 2, 2, 10743, 10526, 3, 2, 2, 2, 10743, 10533, 3, 2, 2, 2, 10743, 10540, 3, 2, 2, 2, 10743, 10551, 3, 2, 2, 2, 10743, 10567, 3, 2, 2, 2, 10743, 10577, 3, 2, 2, 2, 10743, 10591, 3, 2, 2, 2, 10743, 10602, 3, 2, 2, 2, 10743, 10617, 3, 2, 2, 2, 10743, 10645, 3, 2, 2, 2, 10743, 10653, 3, 2, 2, 2, 10743, 10665, 3, 2, 2, 2, 10743, 10682, 3, 2, 2, 2, 10743, 10700, 3, 2, 2, 2, 10743, 10716, 3, 2, 2, 2, 10743, 10742, 3, 2, 2, 2, 10744, 1299, 3, 2, 2, 2, 10745, 10746, 9, 131, 2, 2, 10746, 1301, 3, 2, 2, 2, 10747, 10748, 9, 132, 2, 2, 10748, 1303, 3, 2, 2, 2, 10749, 10750, 9, 133, 2, 2, 10750, 1305, 3, 2, 2, 2, 10751, 10752, 7, 1188, 2, 2, 10752, 10754, 7, 2225, 2, 2, 10753, 10755, 5, 1084, 543, 2, 10754, 10753, 3, 2, 2, 2, 10754, 10755, 3, 2, 2, 2, 10755, 10760, 3, 2, 2, 2, 10756, 10758, 5, 1152, 577, 2, 10757, 10759, 5, 1308, 655, 2, 10758, 10757, 3, 2, 2, 2, 10758, 10759, 3, 2, 2, 2, 10759, 10761, 3, 2, 2, 2, 10760, 10756, 3, 2, 2, 2, 10760, 10761, 3, 2, 2, 2, 10761, 10762, 3, 2, 2, 2, 10762, 10763, 7, 2226, 2, 2, 10763, 1307, 3, 2, 2, 2, 10764, 10771, 5, 1310, 656, 2, 10765, 10766, 7, 109, 2, 2, 10766, 10767, 5, 1312, 657, 2, 10767, 10768, 7, 45, 2, 2, 10768, 10769, 5, 1312, 657, 2, 10769, 10772, 3, 2, 2, 2, 10770, 10772, 5, 1312, 657, 2, 10771, 10765, 3, 2, 2, 2, 10771, 10770, 3, 2, 2, 2, 10772, 1309, 3, 2, 2, 2, 10773, 10774, 9, 134, 2, 2, 10774, 1311, 3, 2, 2, 2, 10775, 10776, 7, 1996, 2, 2, 10776, 10783, 7, 1292, 2, 2, 10777, 10778, 7, 304, 2, 2, 10778, 10783, 7, 1453, 2, 2, 10779, 10780, 5, 1258, 630, 2, 10780, 10781, 9, 135, 2, 2, 10781, 10783, 3, 2, 2, 2, 10782, 10775, 3, 2, 2, 2, 10782, 10777, 3, 2, 2, 2, 10782, 10779, 3, 2, 2, 2, 10783, 1313, 3, 2, 2, 2, 10784, 10794, 7, 2065, 2, 2, 10785, 10795, 7, 2228, 2, 2, 10786, 10791, 5, 1316, 659, 2, 10787, 10788, 7, 2231, 2, 2, 10788, 10790, 5, 1316, 659, 2, 10789, 10787, 3, 2, 2, 2, 10790, 10793, 3, 2, 2, 2, 10791, 10789, 3, 2, 2, 2, 10791, 10792, 3, 2, 2, 2, 10792, 10795, 3, 2, 2, 2, 10793, 10791, 3, 2, 2, 2, 10794, 10785, 3, 2, 2, 2, 10794, 10786, 3, 2, 2, 2, 10795, 1315, 3, 2, 2, 2, 10796, 10798, 7, 654, 2, 2, 10797, 10799, 7, 1184, 2, 2, 10798, 10797, 3, 2, 2, 2, 10798, 10799, 3, 2, 2, 2, 10799, 10802, 3, 2, 2, 2, 10800, 10802, 7, 1184, 2, 2, 10801, 10796, 3, 2, 2, 2, 10801, 10800, 3, 2, 2, 2, 10801, 10802, 3, 2, 2, 2, 10802, 10803, 3, 2, 2, 2, 10803, 10804, 5, 1066, 534, 2, 10804, 1317, 3, 2, 2, 2, 10805, 10806, 7, 1170, 2, 2, 10806, 10807, 7, 148, 2, 2, 10807, 10808, 5, 1258, 630, 2, 10808, 1319, 3, 2, 2, 2, 10809, 10810, 7, 2120, 2, 2, 10810, 10811, 7, 575, 2, 2, 10811, 10812, 7, 2225, 2, 2, 10812, 10813, 5, 1152, 577, 2, 10813, 10814, 7, 2226, 2, 2, 10814, 10817, 3, 2, 2, 2, 10815, 10817, 5, 1306, 654, 2, 10816, 10809, 3, 2, 2, 2, 10816, 10815, 3, 2, 2, 2, 10817, 1321, 3, 2, 2, 2, 10818, 10840, 7, 281, 2, 2, 10819, 10821, 7, 856, 2, 2, 10820, 10822, 7, 85, 2, 2, 10821, 10820, 3, 2, 2, 2, 10821, 10822, 3, 2, 2, 2, 10822, 10841, 3, 2, 2, 2, 10823, 10824, 7, 2225, 2, 2, 10824, 10829, 5, 1364, 683, 2, 10825, 10826, 7, 2231, 2, 2, 10826, 10828, 5, 1364, 683, 2, 10827, 10825, 3, 2, 2, 2, 10828, 10831, 3, 2, 2, 2, 10829, 10827, 3, 2, 2, 2, 10829, 10830, 3, 2, 2, 2, 10830, 10832, 3, 2, 2, 2, 10831, 10829, 3, 2, 2, 2, 10832, 10833, 7, 2226, 2, 2, 10833, 10834, 7, 2075, 2, 2, 10834, 10836, 7, 2225, 2, 2, 10835, 10837, 5, 1234, 618, 2, 10836, 10835, 3, 2, 2, 2, 10836, 10837, 3, 2, 2, 2, 10837, 10838, 3, 2, 2, 2, 10838, 10839, 7, 2226, 2, 2, 10839, 10841, 3, 2, 2, 2, 10840, 10819, 3, 2, 2, 2, 10840, 10823, 3, 2, 2, 2, 10841, 1323, 3, 2, 2, 2, 10842, 10845, 7, 1213, 2, 2, 10843, 10844, 7, 148, 2, 2, 10844, 10846, 7, 2076, 2, 2, 10845, 10843, 3, 2, 2, 2, 10845, 10846, 3, 2, 2, 2, 10846, 10847, 3, 2, 2, 2, 10847, 10849, 5, 1236, 619, 2, 10848, 10850, 5, 1354, 678, 2, 10849, 10848, 3, 2, 2, 2, 10849, 10850, 3, 2, 2, 2, 10850, 10858, 3, 2, 2, 2, 10851, 10852, 7, 2231, 2, 2, 10852, 10854, 5, 1236, 619, 2, 10853, 10855, 5, 1354, 678, 2, 10854, 10853, 3, 2, 2, 2, 10854, 10855, 3, 2, 2, 2, 10855, 10857, 3, 2, 2, 2, 10856, 10851, 3, 2, 2, 2, 10857, 10860, 3, 2, 2, 2, 10858, 10856, 3, 2, 2, 2, 10858, 10859, 3, 2, 2, 2, 10859, 1325, 3, 2, 2, 2, 10860, 10858, 3, 2, 2, 2, 10861, 10862, 7, 2134, 2, 2, 10862, 10864, 7, 2225, 2, 2, 10863, 10865, 9, 127, 2, 2, 10864, 10863, 3, 2, 2, 2, 10864, 10865, 3, 2, 2, 2, 10865, 10867, 3, 2, 2, 2, 10866, 10868, 9, 136, 2, 2, 10867, 10866, 3, 2, 2, 2, 10867, 10868, 3, 2, 2, 2, 10868, 10869, 3, 2, 2, 2, 10869, 10874, 5, 1334, 668, 2, 10870, 10871, 7, 2231, 2, 2, 10871, 10873, 5, 1334, 668, 2, 10872, 10870, 3, 2, 2, 2, 10873, 10876, 3, 2, 2, 2, 10874, 10872, 3, 2, 2, 2, 10874, 10875, 3, 2, 2, 2, 10875, 10877, 3, 2, 2, 2, 10876, 10874, 3, 2, 2, 2, 10877, 10878, 7, 2226, 2, 2, 10878, 1327, 3, 2, 2, 2, 10879, 10880, 7, 2152, 2, 2, 10880, 10884, 7, 2225, 2, 2, 10881, 10882, 5, 1258, 630, 2, 10882, 10883, 5, 1354, 678, 2, 10883, 10885, 3, 2, 2, 2, 10884, 10881, 3, 2, 2, 2, 10884, 10885, 3, 2, 2, 2, 10885, 10892, 3, 2, 2, 2, 10886, 10887, 7, 2231, 2, 2, 10887, 10888, 5, 1258, 630, 2, 10888, 10889, 5, 1354, 678, 2, 10889, 10891, 3, 2, 2, 2, 10890, 10886, 3, 2, 2, 2, 10891, 10894, 3, 2, 2, 2, 10892, 10890, 3, 2, 2, 2, 10892, 10893, 3, 2, 2, 2, 10893, 10896, 3, 2, 2, 2, 10894, 10892, 3, 2, 2, 2, 10895, 10897, 5, 1332, 667, 2, 10896, 10895, 3, 2, 2, 2, 10896, 10897, 3, 2, 2, 2, 10897, 10898, 3, 2, 2, 2, 10898, 10899, 7, 2226, 2, 2, 10899, 1329, 3, 2, 2, 2, 10900, 10911, 5, 1362, 682, 2, 10901, 10902, 7, 548, 2, 2, 10902, 10912, 7, 1171, 2, 2, 10903, 10906, 5, 1460, 731, 2, 10904, 10905, 7, 1223, 2, 2, 10905, 10907, 5, 1258, 630, 2, 10906, 10904, 3, 2, 2, 2, 10906, 10907, 3, 2, 2, 2, 10907, 10909, 3, 2, 2, 2, 10908, 10910, 5, 1332, 667, 2, 10909, 10908, 3, 2, 2, 2, 10909, 10910, 3, 2, 2, 2, 10910, 10912, 3, 2, 2, 2, 10911, 10901, 3, 2, 2, 2, 10911, 10903, 3, 2, 2, 2, 10912, 1331, 3, 2, 2, 2, 10913, 10914, 7, 353, 2, 2, 10914, 10915, 5, 1258, 630, 2, 10915, 1333, 3, 2, 2, 2, 10916, 10923, 5, 1236, 619, 2, 10917, 10921, 7, 63, 2, 2, 10918, 10922, 5, 1490, 746, 2, 10919, 10920, 7, 464, 2, 2, 10920, 10922, 5, 1258, 630, 2, 10921, 10918, 3, 2, 2, 2, 10921, 10919, 3, 2, 2, 2, 10922, 10924, 3, 2, 2, 2, 10923, 10917, 3, 2, 2, 2, 10923, 10924, 3, 2, 2, 2, 10924, 1335, 3, 2, 2, 2, 10925, 10929, 7, 2100, 2, 2, 10926, 10927, 7, 1012, 2, 2, 10927, 10930, 7, 2076, 2, 2, 10928, 10930, 5, 1236, 619, 2, 10929, 10926, 3, 2, 2, 2, 10929, 10928, 3, 2, 2, 2, 10930, 1337, 3, 2, 2, 2, 10931, 10937, 7, 1564, 2, 2, 10932, 10938, 7, 2172, 2, 2, 10933, 10935, 7, 1012, 2, 2, 10934, 10936, 7, 2076, 2, 2, 10935, 10934, 3, 2, 2, 2, 10935, 10936, 3, 2, 2, 2, 10936, 10938, 3, 2, 2, 2, 10937, 10932, 3, 2, 2, 2, 10937, 10933, 3, 2, 2, 2, 10938, 1339, 3, 2, 2, 2, 10939, 10940, 7, 444, 2, 2, 10940, 10941, 5, 1258, 630, 2, 10941, 1341, 3, 2, 2, 2, 10942, 10943, 7, 2100, 2, 2, 10943, 10944, 5, 1258, 630, 2, 10944, 1343, 3, 2, 2, 2, 10945, 10946, 7, 1012, 2, 2, 10946, 10954, 7, 625, 2, 2, 10947, 10951, 7, 625, 2, 2, 10948, 10949, 7, 1537, 2, 2, 10949, 10950, 7, 2245, 2, 2, 10950, 10952, 5, 1258, 630, 2, 10951, 10948, 3, 2, 2, 2, 10951, 10952, 3, 2, 2, 2, 10952, 10954, 3, 2, 2, 2, 10953, 10945, 3, 2, 2, 2, 10953, 10947, 3, 2, 2, 2, 10954, 1345, 3, 2, 2, 2, 10955, 10964, 7, 2232, 2, 2, 10956, 10964, 7, 482, 2, 2, 10957, 10964, 7, 2252, 2, 2, 10958, 10959, 7, 1522, 2, 2, 10959, 10964, 9, 137, 2, 2, 10960, 10964, 7, 2253, 2, 2, 10961, 10964, 5, 1348, 675, 2, 10962, 10964, 5, 1350, 676, 2, 10963, 10955, 3, 2, 2, 2, 10963, 10956, 3, 2, 2, 2, 10963, 10957, 3, 2, 2, 2, 10963, 10958, 3, 2, 2, 2, 10963, 10960, 3, 2, 2, 2, 10963, 10961, 3, 2, 2, 2, 10963, 10962, 3, 2, 2, 2, 10964, 1347, 3, 2, 2, 2, 10965, 10966, 7, 2114, 2, 2, 10966, 10977, 9, 138, 2, 2, 10967, 10972, 7, 482, 2, 2, 10968, 10973, 7, 1620, 2, 2, 10969, 10973, 7, 509, 2, 2, 10970, 10973, 7, 2110, 2, 2, 10971, 10973, 5, 1414, 708, 2, 10972, 10968, 3, 2, 2, 2, 10972, 10969, 3, 2, 2, 2, 10972, 10970, 3, 2, 2, 2, 10972, 10971, 3, 2, 2, 2, 10973, 10974, 3, 2, 2, 2, 10974, 10978, 9, 139, 2, 2, 10975, 10976, 7, 268, 2, 2, 10976, 10978, 9, 140, 2, 2, 10977, 10967, 3, 2, 2, 2, 10977, 10975, 3, 2, 2, 2, 10978, 1349, 3, 2, 2, 2, 10979, 10980, 7, 1512, 2, 2, 10980, 10986, 5, 1494, 748, 2, 10981, 10987, 7, 2221, 2, 2, 10982, 10987, 7, 1130, 2, 2, 10983, 10987, 7, 1115, 2, 2, 10984, 10987, 5, 1482, 742, 2, 10985, 10987, 5, 1494, 748, 2, 10986, 10981, 3, 2, 2, 2, 10986, 10982, 3, 2, 2, 2, 10986, 10983, 3, 2, 2, 2, 10986, 10984, 3, 2, 2, 2, 10986, 10985, 3, 2, 2, 2, 10987, 1351, 3, 2, 2, 2, 10988, 10990, 9, 141, 2, 2, 10989, 10991, 7, 548, 2, 2, 10990, 10989, 3, 2, 2, 2, 10990, 10991, 3, 2, 2, 2, 10991, 10992, 3, 2, 2, 2, 10992, 10994, 7, 2225, 2, 2, 10993, 10995, 5, 1234, 618, 2, 10994, 10993, 3, 2, 2, 2, 10994, 10995, 3, 2, 2, 2, 10995, 10996, 3, 2, 2, 2, 10996, 10997, 7, 2226, 2, 2, 10997, 1353, 3, 2, 2, 2, 10998, 11000, 7, 63, 2, 2, 10999, 10998, 3, 2, 2, 2, 10999, 11000, 3, 2, 2, 2, 11000, 11003, 3, 2, 2, 2, 11001, 11004, 5, 1488, 745, 2, 11002, 11004, 5, 1486, 744, 2, 11003, 11001, 3, 2, 2, 2, 11003, 11002, 3, 2, 2, 2, 11004, 11007, 3, 2, 2, 2, 11005, 11007, 7, 63, 2, 2, 11006, 10999, 3, 2, 2, 2, 11006, 11005, 3, 2, 2, 2, 11007, 1355, 3, 2, 2, 2, 11008, 11011, 5, 1488, 745, 2, 11009, 11011, 5, 1486, 744, 2, 11010, 11008, 3, 2, 2, 2, 11010, 11009, 3, 2, 2, 2, 11011, 1357, 3, 2, 2, 2, 11012, 11017, 7, 2116, 2, 2, 11013, 11014, 7, 304, 2, 2, 11014, 11015, 7, 1117, 2, 2, 11015, 11018, 5, 1418, 710, 2, 11016, 11018, 5, 1236, 619, 2, 11017, 11013, 3, 2, 2, 2, 11017, 11016, 3, 2, 2, 2, 11018, 1359, 3, 2, 2, 2, 11019, 11020, 7, 147, 2, 2, 11020, 11022, 7, 212, 2, 2, 11021, 11019, 3, 2, 2, 2, 11021, 11022, 3, 2, 2, 2, 11022, 11023, 3, 2, 2, 2, 11023, 11024, 7, 693, 2, 2, 11024, 11029, 5, 1414, 708, 2, 11025, 11026, 7, 2231, 2, 2, 11026, 11028, 5, 1414, 708, 2, 11027, 11025, 3, 2, 2, 2, 11028, 11031, 3, 2, 2, 2, 11029, 11027, 3, 2, 2, 2, 11029, 11030, 3, 2, 2, 2, 11030, 1361, 3, 2, 2, 2, 11031, 11029, 3, 2, 2, 2, 11032, 11035, 5, 1488, 745, 2, 11033, 11035, 5, 1486, 744, 2, 11034, 11032, 3, 2, 2, 2, 11034, 11033, 3, 2, 2, 2, 11035, 1363, 3, 2, 2, 2, 11036, 11037, 5, 1488, 745, 2, 11037, 1365, 3, 2, 2, 2, 11038, 11039, 5, 1488, 745, 2, 11039, 1367, 3, 2, 2, 2, 11040, 11041, 5, 1488, 745, 2, 11041, 1369, 3, 2, 2, 2, 11042, 11043, 5, 1488, 745, 2, 11043, 1371, 3, 2, 2, 2, 11044, 11045, 5, 1488, 745, 2, 11045, 1373, 3, 2, 2, 2, 11046, 11047, 5, 1488, 745, 2, 11047, 1375, 3, 2, 2, 2, 11048, 11053, 5, 1488, 745, 2, 11049, 11050, 7, 2218, 2, 2, 11050, 11052, 5, 1490, 746, 2, 11051, 11049, 3, 2, 2, 2, 11052, 11055, 3, 2, 2, 2, 11053, 11051, 3, 2, 2, 2, 11053, 11054, 3, 2, 2, 2, 11054, 11058, 3, 2, 2, 2, 11055, 11053, 3, 2, 2, 2, 11056, 11057, 7, 2233, 2, 2, 11057, 11059, 5, 1424, 713, 2, 11058, 11056, 3, 2, 2, 2, 11058, 11059, 3, 2, 2, 2, 11059, 1377, 3, 2, 2, 2, 11060, 11061, 5, 1488, 745, 2, 11061, 1379, 3, 2, 2, 2, 11062, 11065, 5, 1488, 745, 2, 11063, 11064, 7, 2218, 2, 2, 11064, 11066, 5, 1490, 746, 2, 11065, 11063, 3, 2, 2, 2, 11065, 11066, 3, 2, 2, 2, 11066, 1381, 3, 2, 2, 2, 11067, 11068, 5, 1488, 745, 2, 11068, 1383, 3, 2, 2, 2, 11069, 11070, 5, 1488, 745, 2, 11070, 1385, 3, 2, 2, 2, 11071, 11072, 5, 1488, 745, 2, 11072, 1387, 3, 2, 2, 2, 11073, 11076, 5, 1488, 745, 2, 11074, 11075, 7, 2218, 2, 2, 11075, 11077, 5, 1490, 746, 2, 11076, 11074, 3, 2, 2, 2, 11076, 11077, 3, 2, 2, 2, 11077, 1389, 3, 2, 2, 2, 11078, 11083, 5, 1488, 745, 2, 11079, 11080, 7, 2218, 2, 2, 11080, 11082, 5, 1490, 746, 2, 11081, 11079, 3, 2, 2, 2, 11082, 11085, 3, 2, 2, 2, 11083, 11081, 3, 2, 2, 2, 11083, 11084, 3, 2, 2, 2, 11084, 1391, 3, 2, 2, 2, 11085, 11083, 3, 2, 2, 2, 11086, 11087, 5, 1488, 745, 2, 11087, 1393, 3, 2, 2, 2, 11088, 11090, 5, 1490, 746, 2, 11089, 11091, 5, 278, 140, 2, 11090, 11089, 3, 2, 2, 2, 11090, 11091, 3, 2, 2, 2, 11091, 1395, 3, 2, 2, 2, 11092, 11095, 5, 1490, 746, 2, 11093, 11095, 7, 253, 2, 2, 11094, 11092, 3, 2, 2, 2, 11094, 11093, 3, 2, 2, 2, 11095, 1397, 3, 2, 2, 2, 11096, 11101, 5, 1488, 745, 2, 11097, 11098, 7, 2218, 2, 2, 11098, 11100, 5, 1490, 746, 2, 11099, 11097, 3, 2, 2, 2, 11100, 11103, 3, 2, 2, 2, 11101, 11099, 3, 2, 2, 2, 11101, 11102, 3, 2, 2, 2, 11102, 11106, 3, 2, 2, 2, 11103, 11101, 3, 2, 2, 2, 11104, 11105, 7, 2233, 2, 2, 11105, 11107, 5, 1424, 713, 2, 11106, 11104, 3, 2, 2, 2, 11106, 11107, 3, 2, 2, 2, 11107, 1399, 3, 2, 2, 2, 11108, 11109, 5, 1490, 746, 2, 11109, 1401, 3, 2, 2, 2, 11110, 11115, 5, 1490, 746, 2, 11111, 11112, 7, 2218, 2, 2, 11112, 11114, 5, 1490, 746, 2, 11113, 11111, 3, 2, 2, 2, 11114, 11117, 3, 2, 2, 2, 11115, 11113, 3, 2, 2, 2, 11115, 11116, 3, 2, 2, 2, 11116, 1403, 3, 2, 2, 2, 11117, 11115, 3, 2, 2, 2, 11118, 11123, 5, 1490, 746, 2, 11119, 11120, 7, 2218, 2, 2, 11120, 11122, 5, 1490, 746, 2, 11121, 11119, 3, 2, 2, 2, 11122, 11125, 3, 2, 2, 2, 11123, 11121, 3, 2, 2, 2, 11123, 11124, 3, 2, 2, 2, 11124, 1405, 3, 2, 2, 2, 11125, 11123, 3, 2, 2, 2, 11126, 11131, 5, 1488, 745, 2, 11127, 11128, 7, 2218, 2, 2, 11128, 11130, 5, 1490, 746, 2, 11129, 11127, 3, 2, 2, 2, 11130, 11133, 3, 2, 2, 2, 11131, 11129, 3, 2, 2, 2, 11131, 11132, 3, 2, 2, 2, 11132, 1407, 3, 2, 2, 2, 11133, 11131, 3, 2, 2, 2, 11134, 11137, 5, 1488, 745, 2, 11135, 11136, 7, 2218, 2, 2, 11136, 11138, 5, 1490, 746, 2, 11137, 11135, 3, 2, 2, 2, 11137, 11138, 3, 2, 2, 2, 11138, 1409, 3, 2, 2, 2, 11139, 11142, 5, 1488, 745, 2, 11140, 11141, 7, 2218, 2, 2, 11141, 11143, 5, 1490, 746, 2, 11142, 11140, 3, 2, 2, 2, 11142, 11143, 3, 2, 2, 2, 11143, 1411, 3, 2, 2, 2, 11144, 11147, 5, 1488, 745, 2, 11145, 11146, 7, 2218, 2, 2, 11146, 11148, 5, 1490, 746, 2, 11147, 11145, 3, 2, 2, 2, 11147, 11148, 3, 2, 2, 2, 11148, 1413, 3, 2, 2, 2, 11149, 11150, 7, 2248, 2, 2, 11150, 11152, 5, 1432, 717, 2, 11151, 11149, 3, 2, 2, 2, 11151, 11152, 3, 2, 2, 2, 11152, 11153, 3, 2, 2, 2, 11153, 11156, 5, 1490, 746, 2, 11154, 11155, 7, 2218, 2, 2, 11155, 11157, 5, 1490, 746, 2, 11156, 11154, 3, 2, 2, 2, 11156, 11157, 3, 2, 2, 2, 11157, 11160, 3, 2, 2, 2, 11158, 11160, 5, 1468, 735, 2, 11159, 11151, 3, 2, 2, 2, 11159, 11158, 3, 2, 2, 2, 11160, 1415, 3, 2, 2, 2, 11161, 11164, 5, 1488, 745, 2, 11162, 11163, 7, 2218, 2, 2, 11163, 11165, 5, 1490, 746, 2, 11164, 11162, 3, 2, 2, 2, 11164, 11165, 3, 2, 2, 2, 11165, 1417, 3, 2, 2, 2, 11166, 11169, 5, 1470, 736, 2, 11167, 11169, 5, 1468, 735, 2, 11168, 11166, 3, 2, 2, 2, 11168, 11167, 3, 2, 2, 2, 11169, 1419, 3, 2, 2, 2, 11170, 11173, 5, 1488, 745, 2, 11171, 11173, 5, 1468, 735, 2, 11172, 11170, 3, 2, 2, 2, 11172, 11171, 3, 2, 2, 2, 11173, 1421, 3, 2, 2, 2, 11174, 11177, 5, 1488, 745, 2, 11175, 11176, 7, 2218, 2, 2, 11176, 11178, 5, 1490, 746, 2, 11177, 11175, 3, 2, 2, 2, 11177, 11178, 3, 2, 2, 2, 11178, 1423, 3, 2, 2, 2, 11179, 11180, 5, 1488, 745, 2, 11180, 1425, 3, 2, 2, 2, 11181, 11186, 5, 1488, 745, 2, 11182, 11183, 7, 2218, 2, 2, 11183, 11185, 5, 1490, 746, 2, 11184, 11182, 3, 2, 2, 2, 11185, 11188, 3, 2, 2, 2, 11186, 11184, 3, 2, 2, 2, 11186, 11187, 3, 2, 2, 2, 11187, 1427, 3, 2, 2, 2, 11188, 11186, 3, 2, 2, 2, 11189, 11192, 5, 1488, 745, 2, 11190, 11191, 7, 2218, 2, 2, 11191, 11193, 5, 1490, 746, 2, 11192, 11190, 3, 2, 2, 2, 11192, 11193, 3, 2, 2, 2, 11193, 11197, 3, 2, 2, 2, 11194, 11195, 7, 2233, 2, 2, 11195, 11198, 5, 1424, 713, 2, 11196, 11198, 5, 1352, 677, 2, 11197, 11194, 3, 2, 2, 2, 11197, 11196, 3, 2, 2, 2, 11197, 11198, 3, 2, 2, 2, 11198, 11204, 3, 2, 2, 2, 11199, 11201, 5, 1430, 716, 2, 11200, 11202, 5, 1492, 747, 2, 11201, 11200, 3, 2, 2, 2, 11201, 11202, 3, 2, 2, 2, 11202, 11204, 3, 2, 2, 2, 11203, 11189, 3, 2, 2, 2, 11203, 11199, 3, 2, 2, 2, 11204, 1429, 3, 2, 2, 2, 11205, 11206, 7, 2161, 2, 2, 11206, 11210, 7, 2225, 2, 2, 11207, 11208, 5, 1328, 665, 2, 11208, 11209, 7, 2231, 2, 2, 11209, 11211, 3, 2, 2, 2, 11210, 11207, 3, 2, 2, 2, 11210, 11211, 3, 2, 2, 2, 11211, 11212, 3, 2, 2, 2, 11212, 11214, 5, 1258, 630, 2, 11213, 11215, 5, 1324, 663, 2, 11214, 11213, 3, 2, 2, 2, 11214, 11215, 3, 2, 2, 2, 11215, 11225, 3, 2, 2, 2, 11216, 11217, 7, 216, 2, 2, 11217, 11222, 5, 1330, 666, 2, 11218, 11219, 7, 2231, 2, 2, 11219, 11221, 5, 1330, 666, 2, 11220, 11218, 3, 2, 2, 2, 11221, 11224, 3, 2, 2, 2, 11222, 11220, 3, 2, 2, 2, 11222, 11223, 3, 2, 2, 2, 11223, 11226, 3, 2, 2, 2, 11224, 11222, 3, 2, 2, 2, 11225, 11216, 3, 2, 2, 2, 11225, 11226, 3, 2, 2, 2, 11226, 11227, 3, 2, 2, 2, 11227, 11230, 7, 2226, 2, 2, 11228, 11229, 7, 2218, 2, 2, 11229, 11231, 5, 1472, 737, 2, 11230, 11228, 3, 2, 2, 2, 11230, 11231, 3, 2, 2, 2, 11231, 1431, 3, 2, 2, 2, 11232, 11237, 5, 1490, 746, 2, 11233, 11234, 7, 2218, 2, 2, 11234, 11236, 5, 1490, 746, 2, 11235, 11233, 3, 2, 2, 2, 11236, 11239, 3, 2, 2, 2, 11237, 11235, 3, 2, 2, 2, 11237, 11238, 3, 2, 2, 2, 11238, 1433, 3, 2, 2, 2, 11239, 11237, 3, 2, 2, 2, 11240, 11241, 5, 1488, 745, 2, 11241, 1435, 3, 2, 2, 2, 11242, 11243, 5, 1490, 746, 2, 11243, 1437, 3, 2, 2, 2, 11244, 11245, 5, 1490, 746, 2, 11245, 1439, 3, 2, 2, 2, 11246, 11247, 5, 1490, 746, 2, 11247, 1441, 3, 2, 2, 2, 11248, 11273, 5, 1428, 715, 2, 11249, 11250, 7, 2057, 2, 2, 11250, 11255, 5, 1440, 721, 2, 11251, 11252, 7, 2231, 2, 2, 11252, 11254, 5, 1440, 721, 2, 11253, 11251, 3, 2, 2, 2, 11254, 11257, 3, 2, 2, 2, 11255, 11253, 3, 2, 2, 2, 11255, 11256, 3, 2, 2, 2, 11256, 11273, 3, 2, 2, 2, 11257, 11255, 3, 2, 2, 2, 11258, 11259, 7, 382, 2, 2, 11259, 11273, 5, 1438, 720, 2, 11260, 11261, 7, 426, 2, 2, 11261, 11273, 5, 1436, 719, 2, 11262, 11263, 7, 843, 2, 2, 11263, 11264, 7, 856, 2, 2, 11264, 11273, 5, 1436, 719, 2, 11265, 11266, 7, 702, 2, 2, 11266, 11267, 9, 142, 2, 2, 11267, 11273, 5, 1436, 719, 2, 11268, 11269, 7, 1559, 2, 2, 11269, 11270, 7, 1977, 2, 2, 11270, 11271, 7, 1318, 2, 2, 11271, 11273, 5, 1436, 719, 2, 11272, 11248, 3, 2, 2, 2, 11272, 11249, 3, 2, 2, 2, 11272, 11258, 3, 2, 2, 2, 11272, 11260, 3, 2, 2, 2, 11272, 11262, 3, 2, 2, 2, 11272, 11265, 3, 2, 2, 2, 11272, 11268, 3, 2, 2, 2, 11273, 1443, 3, 2, 2, 2, 11274, 11279, 5, 1426, 714, 2, 11275, 11276, 7, 2231, 2, 2, 11276, 11278, 5, 1426, 714, 2, 11277, 11275, 3, 2, 2, 2, 11278, 11281, 3, 2, 2, 2, 11279, 11277, 3, 2, 2, 2, 11279, 11280, 3, 2, 2, 2, 11280, 1445, 3, 2, 2, 2, 11281, 11279, 3, 2, 2, 2, 11282, 11283, 7, 2225, 2, 2, 11283, 11284, 5, 1444, 723, 2, 11284, 11285, 7, 2226, 2, 2, 11285, 1447, 3, 2, 2, 2, 11286, 11287, 7, 722, 2, 2, 11287, 11288, 7, 2225, 2, 2, 11288, 11289, 7, 2183, 2, 2, 11289, 11290, 9, 106, 2, 2, 11290, 11291, 5, 1152, 577, 2, 11291, 11293, 7, 2226, 2, 2, 11292, 11294, 5, 1306, 654, 2, 11293, 11292, 3, 2, 2, 2, 11293, 11294, 3, 2, 2, 2, 11294, 1449, 3, 2, 2, 2, 11295, 11304, 7, 2225, 2, 2, 11296, 11301, 5, 1458, 730, 2, 11297, 11298, 7, 2231, 2, 2, 11298, 11300, 5, 1458, 730, 2, 11299, 11297, 3, 2, 2, 2, 11300, 11303, 3, 2, 2, 2, 11301, 11299, 3, 2, 2, 2, 11301, 11302, 3, 2, 2, 2, 11302, 11305, 3, 2, 2, 2, 11303, 11301, 3, 2, 2, 2, 11304, 11296, 3, 2, 2, 2, 11304, 11305, 3, 2, 2, 2, 11305, 11306, 3, 2, 2, 2, 11306, 11308, 7, 2226, 2, 2, 11307, 11309, 5, 1448, 725, 2, 11308, 11307, 3, 2, 2, 2, 11308, 11309, 3, 2, 2, 2, 11309, 1451, 3, 2, 2, 2, 11310, 11325, 7, 2225, 2, 2, 11311, 11313, 5, 1458, 730, 2, 11312, 11314, 5, 1456, 729, 2, 11313, 11312, 3, 2, 2, 2, 11313, 11314, 3, 2, 2, 2, 11314, 11322, 3, 2, 2, 2, 11315, 11316, 7, 2231, 2, 2, 11316, 11318, 5, 1458, 730, 2, 11317, 11319, 5, 1456, 729, 2, 11318, 11317, 3, 2, 2, 2, 11318, 11319, 3, 2, 2, 2, 11319, 11321, 3, 2, 2, 2, 11320, 11315, 3, 2, 2, 2, 11321, 11324, 3, 2, 2, 2, 11322, 11320, 3, 2, 2, 2, 11322, 11323, 3, 2, 2, 2, 11323, 11326, 3, 2, 2, 2, 11324, 11322, 3, 2, 2, 2, 11325, 11311, 3, 2, 2, 2, 11325, 11326, 3, 2, 2, 2, 11326, 11327, 3, 2, 2, 2, 11327, 11329, 7, 2226, 2, 2, 11328, 11330, 5, 1448, 725, 2, 11329, 11328, 3, 2, 2, 2, 11329, 11330, 3, 2, 2, 2, 11330, 1453, 3, 2, 2, 2, 11331, 11332, 7, 2225, 2, 2, 11332, 11345, 5, 1426, 714, 2, 11333, 11336, 7, 2231, 2, 2, 11334, 11337, 5, 1482, 742, 2, 11335, 11337, 7, 1099, 2, 2, 11336, 11334, 3, 2, 2, 2, 11336, 11335, 3, 2, 2, 2, 11337, 11343, 3, 2, 2, 2, 11338, 11341, 7, 2231, 2, 2, 11339, 11342, 5, 1482, 742, 2, 11340, 11342, 7, 1099, 2, 2, 11341, 11339, 3, 2, 2, 2, 11341, 11340, 3, 2, 2, 2, 11342, 11344, 3, 2, 2, 2, 11343, 11338, 3, 2, 2, 2, 11343, 11344, 3, 2, 2, 2, 11344, 11346, 3, 2, 2, 2, 11345, 11333, 3, 2, 2, 2, 11345, 11346, 3, 2, 2, 2, 11346, 11347, 3, 2, 2, 2, 11347, 11367, 7, 2065, 2, 2, 11348, 11349, 5, 1428, 715, 2, 11349, 11350, 7, 2218, 2, 2, 11350, 11351, 7, 2228, 2, 2, 11351, 11368, 3, 2, 2, 2, 11352, 11368, 7, 2228, 2, 2, 11353, 11355, 5, 1236, 619, 2, 11354, 11356, 5, 1354, 678, 2, 11355, 11354, 3, 2, 2, 2, 11355, 11356, 3, 2, 2, 2, 11356, 11364, 3, 2, 2, 2, 11357, 11358, 7, 2231, 2, 2, 11358, 11360, 5, 1236, 619, 2, 11359, 11361, 5, 1354, 678, 2, 11360, 11359, 3, 2, 2, 2, 11360, 11361, 3, 2, 2, 2, 11361, 11363, 3, 2, 2, 2, 11362, 11357, 3, 2, 2, 2, 11363, 11366, 3, 2, 2, 2, 11364, 11362, 3, 2, 2, 2, 11364, 11365, 3, 2, 2, 2, 11365, 11368, 3, 2, 2, 2, 11366, 11364, 3, 2, 2, 2, 11367, 11348, 3, 2, 2, 2, 11367, 11352, 3, 2, 2, 2, 11367, 11353, 3, 2, 2, 2, 11368, 11369, 3, 2, 2, 2, 11369, 11371, 7, 2226, 2, 2, 11370, 11372, 5, 1448, 725, 2, 11371, 11370, 3, 2, 2, 2, 11371, 11372, 3, 2, 2, 2, 11372, 1455, 3, 2, 2, 2, 11373, 11374, 9, 143, 2, 2, 11374, 11375, 7, 1100, 2, 2, 11375, 1457, 3, 2, 2, 2, 11376, 11377, 5, 1488, 745, 2, 11377, 11378, 7, 2245, 2, 2, 11378, 11379, 7, 2240, 2, 2, 11379, 11381, 3, 2, 2, 2, 11380, 11376, 3, 2, 2, 2, 11380, 11381, 3, 2, 2, 2, 11381, 11382, 3, 2, 2, 2, 11382, 11383, 5, 1236, 619, 2, 11383, 1459, 3, 2, 2, 2, 11384, 11393, 5, 1462, 732, 2, 11385, 11387, 7, 1378, 2, 2, 11386, 11385, 3, 2, 2, 2, 11386, 11387, 3, 2, 2, 2, 11387, 11388, 3, 2, 2, 2, 11388, 11390, 5, 1402, 702, 2, 11389, 11391, 9, 144, 2, 2, 11390, 11389, 3, 2, 2, 2, 11390, 11391, 3, 2, 2, 2, 11391, 11393, 3, 2, 2, 2, 11392, 11384, 3, 2, 2, 2, 11392, 11386, 3, 2, 2, 2, 11393, 1461, 3, 2, 2, 2, 11394, 11396, 5, 1466, 734, 2, 11395, 11397, 5, 1464, 733, 2, 11396, 11395, 3, 2, 2, 2, 11396, 11397, 3, 2, 2, 2, 11397, 11407, 3, 2, 2, 2, 11398, 11400, 7, 2123, 2, 2, 11399, 11401, 7, 771, 2, 2, 11400, 11399, 3, 2, 2, 2, 11400, 11401, 3, 2, 2, 2, 11401, 11402, 3, 2, 2, 2, 11402, 11403, 7, 1939, 2, 2, 11403, 11408, 7, 2175, 2, 2, 11404, 11405, 7, 177, 2, 2, 11405, 11406, 7, 1512, 2, 2, 11406, 11408, 5, 1432, 717, 2, 11407, 11398, 3, 2, 2, 2, 11407, 11404, 3, 2, 2, 2, 11407, 11408, 3, 2, 2, 2, 11408, 11426, 3, 2, 2, 2, 11409, 11410, 7, 691, 2, 2, 11410, 11415, 9, 145, 2, 2, 11411, 11412, 7, 2225, 2, 2, 11412, 11413, 5, 1236, 619, 2, 11413, 11414, 7, 2226, 2, 2, 11414, 11416, 3, 2, 2, 2, 11415, 11411, 3, 2, 2, 2, 11415, 11416, 3, 2, 2, 2, 11416, 11417, 3, 2, 2, 2, 11417, 11418, 7, 1966, 2, 2, 11418, 11423, 9, 146, 2, 2, 11419, 11420, 7, 2225, 2, 2, 11420, 11421, 5, 1236, 619, 2, 11421, 11422, 7, 2226, 2, 2, 11422, 11424, 3, 2, 2, 2, 11423, 11419, 3, 2, 2, 2, 11423, 11424, 3, 2, 2, 2, 11424, 11426, 3, 2, 2, 2, 11425, 11394, 3, 2, 2, 2, 11425, 11409, 3, 2, 2, 2, 11426, 1463, 3, 2, 2, 2, 11427, 11430, 7, 2225, 2, 2, 11428, 11431, 5, 1482, 742, 2, 11429, 11431, 7, 2228, 2, 2, 11430, 11428, 3, 2, 2, 2, 11430, 11429, 3, 2, 2, 2, 11431, 11434, 3, 2, 2, 2, 11432, 11433, 7, 2231, 2, 2, 11433, 11435, 5, 1482, 742, 2, 11434, 11432, 3, 2, 2, 2, 11434, 11435, 3, 2, 2, 2, 11435, 11437, 3, 2, 2, 2, 11436, 11438, 9, 147, 2, 2, 11437, 11436, 3, 2, 2, 2, 11437, 11438, 3, 2, 2, 2, 11438, 11439, 3, 2, 2, 2, 11439, 11440, 7, 2226, 2, 2, 11440, 1465, 3, 2, 2, 2, 11441, 11502, 7, 120, 2, 2, 11442, 11502, 7, 1261, 2, 2, 11443, 11502, 7, 888, 2, 2, 11444, 11502, 7, 117, 2, 2, 11445, 11502, 7, 114, 2, 2, 11446, 11502, 7, 889, 2, 2, 11447, 11502, 7, 1276, 2, 2, 11448, 11502, 7, 1275, 2, 2, 11449, 11502, 7, 1530, 2, 2, 11450, 11502, 7, 1531, 2, 2, 11451, 11502, 7, 1106, 2, 2, 11452, 11502, 7, 344, 2, 2, 11453, 11502, 7, 684, 2, 2, 11454, 11502, 7, 692, 2, 2, 11455, 11502, 7, 1102, 2, 2, 11456, 11502, 7, 1543, 2, 2, 11457, 11502, 7, 1101, 2, 2, 11458, 11502, 7, 345, 2, 2, 11459, 11461, 7, 409, 2, 2, 11460, 11462, 7, 1293, 2, 2, 11461, 11460, 3, 2, 2, 2, 11461, 11462, 3, 2, 2, 2, 11462, 11502, 3, 2, 2, 2, 11463, 11502, 7, 536, 2, 2, 11464, 11502, 7, 1358, 2, 2, 11465, 11502, 7, 892, 2, 2, 11466, 11468, 7, 790, 2, 2, 11467, 11469, 7, 1349, 2, 2, 11468, 11467, 3, 2, 2, 2, 11468, 11469, 3, 2, 2, 2, 11469, 11502, 3, 2, 2, 2, 11470, 11502, 7, 178, 2, 2, 11471, 11502, 7, 177, 2, 2, 11472, 11502, 7, 2077, 2, 2, 11473, 11502, 7, 2078, 2, 2, 11474, 11502, 7, 1600, 2, 2, 11475, 11502, 7, 1349, 2, 2, 11476, 11502, 7, 136, 2, 2, 11477, 11502, 7, 329, 2, 2, 11478, 11502, 7, 1448, 2, 2, 11479, 11502, 7, 2034, 2, 2, 11480, 11502, 7, 2171, 2, 2, 11481, 11502, 7, 870, 2, 2, 11482, 11502, 7, 331, 2, 2, 11483, 11502, 7, 600, 2, 2, 11484, 11502, 7, 846, 2, 2, 11485, 11502, 7, 1482, 2, 2, 11486, 11502, 7, 1942, 2, 2, 11487, 11502, 7, 1943, 2, 2, 11488, 11502, 7, 1945, 2, 2, 11489, 11502, 7, 1941, 2, 2, 11490, 11502, 7, 1935, 2, 2, 11491, 11502, 7, 1937, 2, 2, 11492, 11502, 7, 1936, 2, 2, 11493, 11502, 7, 1934, 2, 2, 11494, 11502, 7, 2173, 2, 2, 11495, 11502, 7, 415, 2, 2, 11496, 11502, 7, 110, 2, 2, 11497, 11502, 7, 130, 2, 2, 11498, 11502, 7, 194, 2, 2, 11499, 11502, 7, 894, 2, 2, 11500, 11502, 7, 851, 2, 2, 11501, 11441, 3, 2, 2, 2, 11501, 11442, 3, 2, 2, 2, 11501, 11443, 3, 2, 2, 2, 11501, 11444, 3, 2, 2, 2, 11501, 11445, 3, 2, 2, 2, 11501, 11446, 3, 2, 2, 2, 11501, 11447, 3, 2, 2, 2, 11501, 11448, 3, 2, 2, 2, 11501, 11449, 3, 2, 2, 2, 11501, 11450, 3, 2, 2, 2, 11501, 11451, 3, 2, 2, 2, 11501, 11452, 3, 2, 2, 2, 11501, 11453, 3, 2, 2, 2, 11501, 11454, 3, 2, 2, 2, 11501, 11455, 3, 2, 2, 2, 11501, 11456, 3, 2, 2, 2, 11501, 11457, 3, 2, 2, 2, 11501, 11458, 3, 2, 2, 2, 11501, 11459, 3, 2, 2, 2, 11501, 11463, 3, 2, 2, 2, 11501, 11464, 3, 2, 2, 2, 11501, 11465, 3, 2, 2, 2, 11501, 11466, 3, 2, 2, 2, 11501, 11470, 3, 2, 2, 2, 11501, 11471, 3, 2, 2, 2, 11501, 11472, 3, 2, 2, 2, 11501, 11473, 3, 2, 2, 2, 11501, 11474, 3, 2, 2, 2, 11501, 11475, 3, 2, 2, 2, 11501, 11476, 3, 2, 2, 2, 11501, 11477, 3, 2, 2, 2, 11501, 11478, 3, 2, 2, 2, 11501, 11479, 3, 2, 2, 2, 11501, 11480, 3, 2, 2, 2, 11501, 11481, 3, 2, 2, 2, 11501, 11482, 3, 2, 2, 2, 11501, 11483, 3, 2, 2, 2, 11501, 11484, 3, 2, 2, 2, 11501, 11485, 3, 2, 2, 2, 11501, 11486, 3, 2, 2, 2, 11501, 11487, 3, 2, 2, 2, 11501, 11488, 3, 2, 2, 2, 11501, 11489, 3, 2, 2, 2, 11501, 11490, 3, 2, 2, 2, 11501, 11491, 3, 2, 2, 2, 11501, 11492, 3, 2, 2, 2, 11501, 11493, 3, 2, 2, 2, 11501, 11494, 3, 2, 2, 2, 11501, 11495, 3, 2, 2, 2, 11501, 11496, 3, 2, 2, 2, 11501, 11497, 3, 2, 2, 2, 11501, 11498, 3, 2, 2, 2, 11501, 11499, 3, 2, 2, 2, 11501, 11500, 3, 2, 2, 2, 11502, 1467, 3, 2, 2, 2, 11503, 11507, 7, 2235, 2, 2, 11504, 11505, 7, 2242, 2, 2, 11505, 11507, 7, 2219, 2, 2, 11506, 11503, 3, 2, 2, 2, 11506, 11504, 3, 2, 2, 2, 11507, 11516, 3, 2, 2, 2, 11508, 11510, 7, 649, 2, 2, 11509, 11508, 3, 2, 2, 2, 11509, 11510, 3, 2, 2, 2, 11510, 11514, 3, 2, 2, 2, 11511, 11515, 7, 2235, 2, 2, 11512, 11513, 7, 2242, 2, 2, 11513, 11515, 7, 2219, 2, 2, 11514, 11511, 3, 2, 2, 2, 11514, 11512, 3, 2, 2, 2, 11515, 11517, 3, 2, 2, 2, 11516, 11509, 3, 2, 2, 2, 11516, 11517, 3, 2, 2, 2, 11517, 11522, 3, 2, 2, 2, 11518, 11519, 7, 2218, 2, 2, 11519, 11521, 5, 1472, 737, 2, 11520, 11518, 3, 2, 2, 2, 11521, 11524, 3, 2, 2, 2, 11522, 11520, 3, 2, 2, 2, 11522, 11523, 3, 2, 2, 2, 11523, 1469, 3, 2, 2, 2, 11524, 11522, 3, 2, 2, 2, 11525, 11530, 5, 1472, 737, 2, 11526, 11527, 7, 2218, 2, 2, 11527, 11529, 5, 1472, 737, 2, 11528, 11526, 3, 2, 2, 2, 11529, 11532, 3, 2, 2, 2, 11530, 11528, 3, 2, 2, 2, 11530, 11531, 3, 2, 2, 2, 11531, 1471, 3, 2, 2, 2, 11532, 11530, 3, 2, 2, 2, 11533, 11534, 7, 2248, 2, 2, 11534, 11536, 5, 1432, 717, 2, 11535, 11533, 3, 2, 2, 2, 11535, 11536, 3, 2, 2, 2, 11536, 11537, 3, 2, 2, 2, 11537, 11542, 5, 1490, 746, 2, 11538, 11539, 7, 2218, 2, 2, 11539, 11541, 5, 1490, 746, 2, 11540, 11538, 3, 2, 2, 2, 11541, 11544, 3, 2, 2, 2, 11542, 11540, 3, 2, 2, 2, 11542, 11543, 3, 2, 2, 2, 11543, 11547, 3, 2, 2, 2, 11544, 11542, 3, 2, 2, 2, 11545, 11546, 7, 2233, 2, 2, 11546, 11548, 5, 1424, 713, 2, 11547, 11545, 3, 2, 2, 2, 11547, 11548, 3, 2, 2, 2, 11548, 11550, 3, 2, 2, 2, 11549, 11551, 5, 1450, 726, 2, 11550, 11549, 3, 2, 2, 2, 11550, 11551, 3, 2, 2, 2, 11551, 1473, 3, 2, 2, 2, 11552, 11553, 7, 2248, 2, 2, 11553, 11555, 5, 1432, 717, 2, 11554, 11552, 3, 2, 2, 2, 11554, 11555, 3, 2, 2, 2, 11555, 11556, 3, 2, 2, 2, 11556, 11561, 5, 1490, 746, 2, 11557, 11558, 7, 2218, 2, 2, 11558, 11560, 5, 1490, 746, 2, 11559, 11557, 3, 2, 2, 2, 11560, 11563, 3, 2, 2, 2, 11561, 11559, 3, 2, 2, 2, 11561, 11562, 3, 2, 2, 2, 11562, 1475, 3, 2, 2, 2, 11563, 11561, 3, 2, 2, 2, 11564, 11566, 7, 37, 2, 2, 11565, 11567, 7, 1314, 2, 2, 11566, 11565, 3, 2, 2, 2, 11566, 11567, 3, 2, 2, 2, 11567, 11597, 3, 2, 2, 2, 11568, 11597, 7, 41, 2, 2, 11569, 11597, 7, 342, 2, 2, 11570, 11597, 7, 364, 2, 2, 11571, 11597, 7, 477, 2, 2, 11572, 11573, 7, 534, 2, 2, 11573, 11597, 7, 59, 2, 2, 11574, 11597, 7, 633, 2, 2, 11575, 11576, 7, 653, 2, 2, 11576, 11597, 7, 1314, 2, 2, 11577, 11597, 7, 671, 2, 2, 11578, 11579, 7, 722, 2, 2, 11579, 11597, 7, 1498, 2, 2, 11580, 11581, 7, 834, 2, 2, 11581, 11597, 7, 2101, 2, 2, 11582, 11583, 7, 1130, 2, 2, 11583, 11584, 7, 220, 2, 2, 11584, 11597, 7, 1379, 2, 2, 11585, 11586, 7, 1336, 2, 2, 11586, 11597, 7, 1438, 2, 2, 11587, 11597, 7, 1355, 2, 2, 11588, 11597, 7, 1376, 2, 2, 11589, 11597, 7, 1492, 2, 2, 11590, 11591, 7, 1976, 2, 2, 11591, 11597, 7, 1559, 2, 2, 11592, 11597, 7, 1999, 2, 2, 11593, 11597, 7, 2027, 2, 2, 11594, 11597, 7, 2061, 2, 2, 11595, 11597, 7, 2127, 2, 2, 11596, 11564, 3, 2, 2, 2, 11596, 11568, 3, 2, 2, 2, 11596, 11569, 3, 2, 2, 2, 11596, 11570, 3, 2, 2, 2, 11596, 11571, 3, 2, 2, 2, 11596, 11572, 3, 2, 2, 2, 11596, 11574, 3, 2, 2, 2, 11596, 11575, 3, 2, 2, 2, 11596, 11577, 3, 2, 2, 2, 11596, 11578, 3, 2, 2, 2, 11596, 11580, 3, 2, 2, 2, 11596, 11582, 3, 2, 2, 2, 11596, 11585, 3, 2, 2, 2, 11596, 11587, 3, 2, 2, 2, 11596, 11588, 3, 2, 2, 2, 11596, 11589, 3, 2, 2, 2, 11596, 11590, 3, 2, 2, 2, 11596, 11592, 3, 2, 2, 2, 11596, 11593, 3, 2, 2, 2, 11596, 11594, 3, 2, 2, 2, 11596, 11595, 3, 2, 2, 2, 11597, 1477, 3, 2, 2, 2, 11598, 11599, 7, 37, 2, 2, 11599, 11925, 7, 1314, 2, 2, 11600, 11925, 7, 30, 2, 2, 11601, 11603, 7, 26, 2, 2, 11602, 11604, 7, 50, 2, 2, 11603, 11602, 3, 2, 2, 2, 11603, 11604, 3, 2, 2, 2, 11604, 11605, 3, 2, 2, 2, 11605, 11606, 7, 1559, 2, 2, 11606, 11607, 7, 1986, 2, 2, 11607, 11925, 7, 1512, 2, 2, 11608, 11609, 9, 148, 2, 2, 11609, 11610, 7, 50, 2, 2, 11610, 11611, 7, 1559, 2, 2, 11611, 11925, 7, 1318, 2, 2, 11612, 11613, 7, 26, 2, 2, 11613, 11614, 7, 1559, 2, 2, 11614, 11615, 7, 800, 2, 2, 11615, 11925, 7, 1109, 2, 2, 11616, 11618, 7, 290, 2, 2, 11617, 11619, 7, 50, 2, 2, 11618, 11617, 3, 2, 2, 2, 11618, 11619, 3, 2, 2, 2, 11619, 11620, 3, 2, 2, 2, 11620, 11925, 7, 199, 2, 2, 11621, 11622, 9, 149, 2, 2, 11622, 11623, 7, 50, 2, 2, 11623, 11925, 7, 199, 2, 2, 11624, 11625, 9, 150, 2, 2, 11625, 11626, 7, 50, 2, 2, 11626, 11925, 7, 267, 2, 2, 11627, 11628, 7, 478, 2, 2, 11628, 11629, 7, 1368, 2, 2, 11629, 11925, 7, 1269, 2, 2, 11630, 11631, 7, 41, 2, 2, 11631, 11925, 7, 318, 2, 2, 11632, 11634, 9, 151, 2, 2, 11633, 11635, 7, 1326, 2, 2, 11634, 11633, 3, 2, 2, 2, 11634, 11635, 3, 2, 2, 2, 11635, 11636, 3, 2, 2, 2, 11636, 11637, 7, 318, 2, 2, 11637, 11925, 7, 762, 2, 2, 11638, 11639, 7, 413, 2, 2, 11639, 11640, 7, 1326, 2, 2, 11640, 11641, 7, 318, 2, 2, 11641, 11925, 7, 762, 2, 2, 11642, 11643, 7, 342, 2, 2, 11643, 11644, 7, 253, 2, 2, 11644, 11925, 7, 1508, 2, 2, 11645, 11646, 7, 342, 2, 2, 11646, 11647, 7, 50, 2, 2, 11647, 11925, 7, 1316, 2, 2, 11648, 11649, 7, 43, 2, 2, 11649, 11650, 7, 50, 2, 2, 11650, 11925, 7, 378, 2, 2, 11651, 11653, 7, 290, 2, 2, 11652, 11654, 7, 50, 2, 2, 11653, 11652, 3, 2, 2, 2, 11653, 11654, 3, 2, 2, 2, 11654, 11655, 3, 2, 2, 2, 11655, 11925, 7, 379, 2, 2, 11656, 11657, 9, 149, 2, 2, 11657, 11658, 7, 50, 2, 2, 11658, 11925, 7, 379, 2, 2, 11659, 11660, 9, 150, 2, 2, 11660, 11661, 7, 50, 2, 2, 11661, 11925, 7, 382, 2, 2, 11662, 11663, 9, 150, 2, 2, 11663, 11664, 7, 50, 2, 2, 11664, 11925, 7, 426, 2, 2, 11665, 11670, 7, 534, 2, 2, 11666, 11667, 7, 59, 2, 2, 11667, 11671, 7, 26, 2, 2, 11668, 11669, 7, 50, 2, 2, 11669, 11671, 7, 1914, 2, 2, 11670, 11666, 3, 2, 2, 2, 11670, 11668, 3, 2, 2, 2, 11671, 11925, 3, 2, 2, 2, 11672, 11673, 9, 148, 2, 2, 11673, 11674, 7, 50, 2, 2, 11674, 11925, 7, 633, 2, 2, 11675, 11677, 7, 290, 2, 2, 11676, 11678, 7, 50, 2, 2, 11677, 11676, 3, 2, 2, 2, 11677, 11678, 3, 2, 2, 2, 11678, 11679, 3, 2, 2, 2, 11679, 11925, 7, 647, 2, 2, 11680, 11681, 9, 152, 2, 2, 11681, 11682, 7, 50, 2, 2, 11682, 11925, 7, 647, 2, 2, 11683, 11685, 7, 290, 2, 2, 11684, 11686, 9, 153, 2, 2, 11685, 11684, 3, 2, 2, 2, 11685, 11686, 3, 2, 2, 2, 11686, 11687, 3, 2, 2, 2, 11687, 11925, 7, 703, 2, 2, 11688, 11689, 7, 477, 2, 2, 11689, 11690, 7, 50, 2, 2, 11690, 11925, 9, 154, 2, 2, 11691, 11692, 7, 799, 2, 2, 11692, 11925, 7, 1470, 2, 2, 11693, 11694, 7, 26, 2, 2, 11694, 11695, 7, 724, 2, 2, 11695, 11925, 7, 800, 2, 2, 11696, 11698, 7, 290, 2, 2, 11697, 11699, 7, 50, 2, 2, 11698, 11697, 3, 2, 2, 2, 11698, 11699, 3, 2, 2, 2, 11699, 11700, 3, 2, 2, 2, 11700, 11925, 7, 751, 2, 2, 11701, 11702, 9, 152, 2, 2, 11702, 11703, 7, 50, 2, 2, 11703, 11925, 7, 751, 2, 2, 11704, 11925, 7, 786, 2, 2, 11705, 11707, 7, 290, 2, 2, 11706, 11708, 7, 50, 2, 2, 11707, 11706, 3, 2, 2, 2, 11707, 11708, 3, 2, 2, 2, 11708, 11709, 3, 2, 2, 2, 11709, 11710, 7, 811, 2, 2, 11710, 11925, 7, 2101, 2, 2, 11711, 11712, 9, 149, 2, 2, 11712, 11713, 7, 50, 2, 2, 11713, 11714, 7, 811, 2, 2, 11714, 11925, 7, 2101, 2, 2, 11715, 11717, 7, 568, 2, 2, 11716, 11715, 3, 2, 2, 2, 11716, 11717, 3, 2, 2, 2, 11717, 11718, 3, 2, 2, 2, 11718, 11719, 7, 1336, 2, 2, 11719, 11925, 7, 1438, 2, 2, 11720, 11721, 7, 1130, 2, 2, 11721, 11722, 7, 220, 2, 2, 11722, 11925, 7, 1379, 2, 2, 11723, 11725, 7, 290, 2, 2, 11724, 11726, 7, 50, 2, 2, 11725, 11724, 3, 2, 2, 2, 11725, 11726, 3, 2, 2, 2, 11726, 11727, 3, 2, 2, 2, 11727, 11728, 7, 843, 2, 2, 11728, 11925, 7, 856, 2, 2, 11729, 11730, 9, 155, 2, 2, 11730, 11731, 7, 50, 2, 2, 11731, 11732, 7, 843, 2, 2, 11732, 11925, 7, 856, 2, 2, 11733, 11735, 7, 290, 2, 2, 11734, 11736, 7, 50, 2, 2, 11735, 11734, 3, 2, 2, 2, 11735, 11736, 3, 2, 2, 2, 11736, 11737, 3, 2, 2, 2, 11737, 11925, 7, 300, 2, 2, 11738, 11739, 9, 156, 2, 2, 11739, 11740, 7, 50, 2, 2, 11740, 11925, 7, 300, 2, 2, 11741, 11743, 7, 290, 2, 2, 11742, 11744, 7, 50, 2, 2, 11743, 11742, 3, 2, 2, 2, 11743, 11744, 3, 2, 2, 2, 11744, 11745, 3, 2, 2, 2, 11745, 11746, 7, 825, 2, 2, 11746, 11925, 7, 540, 2, 2, 11747, 11748, 9, 157, 2, 2, 11748, 11749, 7, 50, 2, 2, 11749, 11750, 7, 825, 2, 2, 11750, 11925, 7, 540, 2, 2, 11751, 11753, 7, 290, 2, 2, 11752, 11754, 7, 50, 2, 2, 11753, 11752, 3, 2, 2, 2, 11753, 11754, 3, 2, 2, 2, 11754, 11755, 3, 2, 2, 2, 11755, 11756, 7, 300, 2, 2, 11756, 11925, 7, 379, 2, 2, 11757, 11758, 9, 158, 2, 2, 11758, 11759, 7, 50, 2, 2, 11759, 11760, 7, 300, 2, 2, 11760, 11925, 7, 379, 2, 2, 11761, 11763, 7, 290, 2, 2, 11762, 11764, 7, 50, 2, 2, 11763, 11762, 3, 2, 2, 2, 11763, 11764, 3, 2, 2, 2, 11764, 11765, 3, 2, 2, 2, 11765, 11766, 7, 300, 2, 2, 11766, 11767, 7, 146, 2, 2, 11767, 11925, 7, 1317, 2, 2, 11768, 11769, 9, 159, 2, 2, 11769, 11770, 7, 50, 2, 2, 11770, 11771, 7, 300, 2, 2, 11771, 11772, 7, 146, 2, 2, 11772, 11925, 7, 1317, 2, 2, 11773, 11775, 7, 290, 2, 2, 11774, 11776, 7, 50, 2, 2, 11775, 11774, 3, 2, 2, 2, 11775, 11776, 3, 2, 2, 2, 11776, 11777, 3, 2, 2, 2, 11777, 11925, 7, 1137, 2, 2, 11778, 11779, 9, 152, 2, 2, 11779, 11780, 7, 50, 2, 2, 11780, 11925, 7, 1137, 2, 2, 11781, 11782, 9, 148, 2, 2, 11782, 11783, 7, 50, 2, 2, 11783, 11925, 7, 1182, 2, 2, 11784, 11785, 7, 290, 2, 2, 11785, 11786, 7, 1267, 2, 2, 11786, 11925, 7, 318, 2, 2, 11787, 11788, 7, 1512, 2, 2, 11788, 11925, 7, 262, 2, 2, 11789, 11791, 7, 290, 2, 2, 11790, 11792, 7, 50, 2, 2, 11791, 11790, 3, 2, 2, 2, 11791, 11792, 3, 2, 2, 2, 11792, 11793, 3, 2, 2, 2, 11793, 11925, 7, 1316, 2, 2, 11794, 11795, 9, 152, 2, 2, 11795, 11796, 7, 50, 2, 2, 11796, 11925, 7, 1316, 2, 2, 11797, 11798, 9, 148, 2, 2, 11798, 11925, 7, 1318, 2, 2, 11799, 11800, 7, 290, 2, 2, 11800, 11925, 7, 1440, 2, 2, 11801, 11802, 9, 160, 2, 2, 11802, 11803, 7, 50, 2, 2, 11803, 11925, 7, 1440, 2, 2, 11804, 11805, 9, 148, 2, 2, 11805, 11806, 7, 1443, 2, 2, 11806, 11925, 7, 1490, 2, 2, 11807, 11809, 7, 290, 2, 2, 11808, 11810, 7, 50, 2, 2, 11809, 11808, 3, 2, 2, 2, 11809, 11810, 3, 2, 2, 2, 11810, 11811, 3, 2, 2, 2, 11811, 11925, 7, 1498, 2, 2, 11812, 11813, 9, 161, 2, 2, 11813, 11814, 7, 50, 2, 2, 11814, 11925, 7, 1498, 2, 2, 11815, 11816, 9, 162, 2, 2, 11816, 11925, 7, 1508, 2, 2, 11817, 11818, 7, 41, 2, 2, 11818, 11819, 7, 1417, 2, 2, 11819, 11925, 7, 281, 2, 2, 11820, 11822, 7, 290, 2, 2, 11821, 11823, 7, 50, 2, 2, 11822, 11821, 3, 2, 2, 2, 11822, 11823, 3, 2, 2, 2, 11823, 11824, 3, 2, 2, 2, 11824, 11825, 7, 1559, 2, 2, 11825, 11826, 7, 1977, 2, 2, 11826, 11925, 7, 1318, 2, 2, 11827, 11828, 9, 163, 2, 2, 11828, 11829, 7, 50, 2, 2, 11829, 11830, 7, 1559, 2, 2, 11830, 11831, 7, 1977, 2, 2, 11831, 11925, 7, 1318, 2, 2, 11832, 11833, 7, 1976, 2, 2, 11833, 11834, 7, 50, 2, 2, 11834, 11925, 7, 1559, 2, 2, 11835, 11837, 7, 290, 2, 2, 11836, 11838, 7, 50, 2, 2, 11837, 11836, 3, 2, 2, 2, 11837, 11838, 3, 2, 2, 2, 11838, 11839, 3, 2, 2, 2, 11839, 11925, 7, 1629, 2, 2, 11840, 11841, 7, 413, 2, 2, 11841, 11842, 7, 50, 2, 2, 11842, 11925, 7, 1629, 2, 2, 11843, 11844, 9, 150, 2, 2, 11844, 11845, 7, 1326, 2, 2, 11845, 11925, 7, 1629, 2, 2, 11846, 11848, 7, 290, 2, 2, 11847, 11849, 7, 50, 2, 2, 11848, 11847, 3, 2, 2, 2, 11848, 11849, 3, 2, 2, 2, 11849, 11850, 3, 2, 2, 2, 11850, 11925, 7, 1914, 2, 2, 11851, 11852, 9, 164, 2, 2, 11852, 11853, 7, 50, 2, 2, 11853, 11925, 7, 1914, 2, 2, 11854, 11855, 9, 165, 2, 2, 11855, 11925, 7, 1911, 2, 2, 11856, 11858, 7, 290, 2, 2, 11857, 11859, 7, 50, 2, 2, 11858, 11857, 3, 2, 2, 2, 11858, 11859, 3, 2, 2, 2, 11859, 11860, 3, 2, 2, 2, 11860, 11925, 7, 1980, 2, 2, 11861, 11862, 9, 149, 2, 2, 11862, 11863, 7, 50, 2, 2, 11863, 11925, 7, 1980, 2, 2, 11864, 11865, 7, 26, 2, 2, 11865, 11866, 7, 318, 2, 2, 11866, 11925, 7, 1980, 2, 2, 11867, 11869, 7, 290, 2, 2, 11868, 11870, 7, 50, 2, 2, 11869, 11868, 3, 2, 2, 2, 11869, 11870, 3, 2, 2, 2, 11870, 11871, 3, 2, 2, 2, 11871, 11925, 7, 1989, 2, 2, 11872, 11873, 9, 166, 2, 2, 11873, 11874, 7, 50, 2, 2, 11874, 11925, 7, 1989, 2, 2, 11875, 11876, 9, 148, 2, 2, 11876, 11925, 7, 2057, 2, 2, 11877, 11879, 7, 290, 2, 2, 11878, 11880, 7, 50, 2, 2, 11879, 11878, 3, 2, 2, 2, 11879, 11880, 3, 2, 2, 2, 11880, 11881, 3, 2, 2, 2, 11881, 11925, 7, 2101, 2, 2, 11882, 11883, 9, 167, 2, 2, 11883, 11884, 7, 50, 2, 2, 11884, 11925, 7, 2101, 2, 2, 11885, 11886, 9, 168, 2, 2, 11886, 11925, 7, 50, 2, 2, 11887, 11888, 7, 102, 2, 2, 11888, 11925, 7, 2057, 2, 2, 11889, 11890, 7, 174, 2, 2, 11890, 11925, 7, 1074, 2, 2, 11891, 11892, 7, 478, 2, 2, 11892, 11893, 7, 5, 2, 2, 11893, 11925, 7, 1269, 2, 2, 11894, 11896, 7, 544, 2, 2, 11895, 11897, 7, 50, 2, 2, 11896, 11895, 3, 2, 2, 2, 11896, 11897, 3, 2, 2, 2, 11897, 11898, 3, 2, 2, 2, 11898, 11925, 7, 1972, 2, 2, 11899, 11900, 7, 573, 2, 2, 11900, 11902, 7, 50, 2, 2, 11901, 11903, 7, 1109, 2, 2, 11902, 11901, 3, 2, 2, 2, 11902, 11903, 3, 2, 2, 2, 11903, 11904, 3, 2, 2, 2, 11904, 11925, 7, 1313, 2, 2, 11905, 11906, 7, 653, 2, 2, 11906, 11907, 7, 50, 2, 2, 11907, 11925, 7, 1314, 2, 2, 11908, 11909, 7, 722, 2, 2, 11909, 11910, 7, 329, 2, 2, 11910, 11925, 7, 1939, 2, 2, 11911, 11912, 7, 722, 2, 2, 11912, 11925, 7, 1664, 2, 2, 11913, 11914, 7, 1328, 2, 2, 11914, 11925, 7, 334, 2, 2, 11915, 11925, 7, 1428, 2, 2, 11916, 11917, 7, 1492, 2, 2, 11917, 11918, 7, 50, 2, 2, 11918, 11925, 9, 169, 2, 2, 11919, 11925, 7, 1633, 2, 2, 11920, 11925, 7, 1639, 2, 2, 11921, 11925, 7, 1641, 2, 2, 11922, 11925, 7, 1665, 2, 2, 11923, 11925, 7, 1700, 2, 2, 11924, 11598, 3, 2, 2, 2, 11924, 11600, 3, 2, 2, 2, 11924, 11601, 3, 2, 2, 2, 11924, 11608, 3, 2, 2, 2, 11924, 11612, 3, 2, 2, 2, 11924, 11616, 3, 2, 2, 2, 11924, 11621, 3, 2, 2, 2, 11924, 11624, 3, 2, 2, 2, 11924, 11627, 3, 2, 2, 2, 11924, 11630, 3, 2, 2, 2, 11924, 11632, 3, 2, 2, 2, 11924, 11638, 3, 2, 2, 2, 11924, 11642, 3, 2, 2, 2, 11924, 11645, 3, 2, 2, 2, 11924, 11648, 3, 2, 2, 2, 11924, 11651, 3, 2, 2, 2, 11924, 11656, 3, 2, 2, 2, 11924, 11659, 3, 2, 2, 2, 11924, 11662, 3, 2, 2, 2, 11924, 11665, 3, 2, 2, 2, 11924, 11672, 3, 2, 2, 2, 11924, 11675, 3, 2, 2, 2, 11924, 11680, 3, 2, 2, 2, 11924, 11683, 3, 2, 2, 2, 11924, 11688, 3, 2, 2, 2, 11924, 11691, 3, 2, 2, 2, 11924, 11693, 3, 2, 2, 2, 11924, 11696, 3, 2, 2, 2, 11924, 11701, 3, 2, 2, 2, 11924, 11704, 3, 2, 2, 2, 11924, 11705, 3, 2, 2, 2, 11924, 11711, 3, 2, 2, 2, 11924, 11716, 3, 2, 2, 2, 11924, 11720, 3, 2, 2, 2, 11924, 11723, 3, 2, 2, 2, 11924, 11729, 3, 2, 2, 2, 11924, 11733, 3, 2, 2, 2, 11924, 11738, 3, 2, 2, 2, 11924, 11741, 3, 2, 2, 2, 11924, 11747, 3, 2, 2, 2, 11924, 11751, 3, 2, 2, 2, 11924, 11757, 3, 2, 2, 2, 11924, 11761, 3, 2, 2, 2, 11924, 11768, 3, 2, 2, 2, 11924, 11773, 3, 2, 2, 2, 11924, 11778, 3, 2, 2, 2, 11924, 11781, 3, 2, 2, 2, 11924, 11784, 3, 2, 2, 2, 11924, 11787, 3, 2, 2, 2, 11924, 11789, 3, 2, 2, 2, 11924, 11794, 3, 2, 2, 2, 11924, 11797, 3, 2, 2, 2, 11924, 11799, 3, 2, 2, 2, 11924, 11801, 3, 2, 2, 2, 11924, 11804, 3, 2, 2, 2, 11924, 11807, 3, 2, 2, 2, 11924, 11812, 3, 2, 2, 2, 11924, 11815, 3, 2, 2, 2, 11924, 11817, 3, 2, 2, 2, 11924, 11820, 3, 2, 2, 2, 11924, 11827, 3, 2, 2, 2, 11924, 11832, 3, 2, 2, 2, 11924, 11835, 3, 2, 2, 2, 11924, 11840, 3, 2, 2, 2, 11924, 11843, 3, 2, 2, 2, 11924, 11846, 3, 2, 2, 2, 11924, 11851, 3, 2, 2, 2, 11924, 11854, 3, 2, 2, 2, 11924, 11856, 3, 2, 2, 2, 11924, 11861, 3, 2, 2, 2, 11924, 11864, 3, 2, 2, 2, 11924, 11867, 3, 2, 2, 2, 11924, 11872, 3, 2, 2, 2, 11924, 11875, 3, 2, 2, 2, 11924, 11877, 3, 2, 2, 2, 11924, 11882, 3, 2, 2, 2, 11924, 11885, 3, 2, 2, 2, 11924, 11887, 3, 2, 2, 2, 11924, 11889, 3, 2, 2, 2, 11924, 11891, 3, 2, 2, 2, 11924, 11894, 3, 2, 2, 2, 11924, 11899, 3, 2, 2, 2, 11924, 11905, 3, 2, 2, 2, 11924, 11908, 3, 2, 2, 2, 11924, 11911, 3, 2, 2, 2, 11924, 11913, 3, 2, 2, 2, 11924, 11915, 3, 2, 2, 2, 11924, 11916, 3, 2, 2, 2, 11924, 11919, 3, 2, 2, 2, 11924, 11920, 3, 2, 2, 2, 11924, 11921, 3, 2, 2, 2, 11924, 11922, 3, 2, 2, 2, 11924, 11923, 3, 2, 2, 2, 11925, 1479, 3, 2, 2, 2, 11926, 11929, 7, 1935, 2, 2, 11927, 11930, 5, 1486, 744, 2, 11928, 11930, 5, 1468, 735, 2, 11929, 11927, 3, 2, 2, 2, 11929, 11928, 3, 2, 2, 2, 11930, 11935, 3, 2, 2, 2, 11931, 11932, 7, 76, 2, 2, 11932, 11933, 7, 1939, 2, 2, 11933, 11934, 7, 2175, 2, 2, 11934, 11936, 5, 1486, 744, 2, 11935, 11931, 3, 2, 2, 2, 11935, 11936, 3, 2, 2, 2, 11936, 11989, 3, 2, 2, 2, 11937, 11941, 7, 691, 2, 2, 11938, 11942, 5, 1486, 744, 2, 11939, 11942, 5, 1468, 735, 2, 11940, 11942, 5, 1472, 737, 2, 11941, 11938, 3, 2, 2, 2, 11941, 11939, 3, 2, 2, 2, 11941, 11940, 3, 2, 2, 2, 11942, 11943, 3, 2, 2, 2, 11943, 11957, 9, 170, 2, 2, 11944, 11947, 7, 2225, 2, 2, 11945, 11948, 7, 2219, 2, 2, 11946, 11948, 5, 1468, 735, 2, 11947, 11945, 3, 2, 2, 2, 11947, 11946, 3, 2, 2, 2, 11948, 11954, 3, 2, 2, 2, 11949, 11952, 7, 2231, 2, 2, 11950, 11953, 7, 2219, 2, 2, 11951, 11953, 5, 1468, 735, 2, 11952, 11950, 3, 2, 2, 2, 11952, 11951, 3, 2, 2, 2, 11953, 11955, 3, 2, 2, 2, 11954, 11949, 3, 2, 2, 2, 11954, 11955, 3, 2, 2, 2, 11955, 11956, 3, 2, 2, 2, 11956, 11958, 7, 2226, 2, 2, 11957, 11944, 3, 2, 2, 2, 11957, 11958, 3, 2, 2, 2, 11958, 11974, 3, 2, 2, 2, 11959, 11972, 7, 1966, 2, 2, 11960, 11973, 7, 331, 2, 2, 11961, 11973, 7, 600, 2, 2, 11962, 11973, 7, 846, 2, 2, 11963, 11970, 7, 1482, 2, 2, 11964, 11967, 7, 2225, 2, 2, 11965, 11968, 7, 2219, 2, 2, 11966, 11968, 5, 1468, 735, 2, 11967, 11965, 3, 2, 2, 2, 11967, 11966, 3, 2, 2, 2, 11968, 11969, 3, 2, 2, 2, 11969, 11971, 7, 2226, 2, 2, 11970, 11964, 3, 2, 2, 2, 11970, 11971, 3, 2, 2, 2, 11971, 11973, 3, 2, 2, 2, 11972, 11960, 3, 2, 2, 2, 11972, 11961, 3, 2, 2, 2, 11972, 11962, 3, 2, 2, 2, 11972, 11963, 3, 2, 2, 2, 11973, 11975, 3, 2, 2, 2, 11974, 11959, 3, 2, 2, 2, 11974, 11975, 3, 2, 2, 2, 11975, 11989, 3, 2, 2, 2, 11976, 11989, 5, 1482, 742, 2, 11977, 11978, 7, 329, 2, 2, 11978, 11989, 5, 1486, 744, 2, 11979, 11989, 5, 1486, 744, 2, 11980, 11989, 7, 1099, 2, 2, 11981, 11989, 7, 1981, 2, 2, 11982, 11989, 7, 510, 2, 2, 11983, 11989, 7, 337, 2, 2, 11984, 11989, 7, 1510, 2, 2, 11985, 11989, 7, 847, 2, 2, 11986, 11989, 7, 824, 2, 2, 11987, 11989, 7, 353, 2, 2, 11988, 11926, 3, 2, 2, 2, 11988, 11937, 3, 2, 2, 2, 11988, 11976, 3, 2, 2, 2, 11988, 11977, 3, 2, 2, 2, 11988, 11979, 3, 2, 2, 2, 11988, 11980, 3, 2, 2, 2, 11988, 11981, 3, 2, 2, 2, 11988, 11982, 3, 2, 2, 2, 11988, 11983, 3, 2, 2, 2, 11988, 11984, 3, 2, 2, 2, 11988, 11985, 3, 2, 2, 2, 11988, 11986, 3, 2, 2, 2, 11988, 11987, 3, 2, 2, 2, 11989, 1481, 3, 2, 2, 2, 11990, 11991, 9, 171, 2, 2, 11991, 1483, 3, 2, 2, 2, 11992, 11993, 7, 2230, 2, 2, 11993, 11994, 5, 1482, 742, 2, 11994, 1485, 3, 2, 2, 2, 11995, 11996, 9, 172, 2, 2, 11996, 1487, 3, 2, 2, 2, 11997, 11998, 7, 2248, 2, 2, 11998, 12000, 5, 1432, 717, 2, 11999, 11997, 3, 2, 2, 2, 11999, 12000, 3, 2, 2, 2, 12000, 12001, 3, 2, 2, 2, 12001, 12002, 5, 1490, 746, 2, 12002, 1489, 3, 2, 2, 2, 12003, 12006, 5, 1494, 748, 2, 12004, 12006, 7, 2222, 2, 2, 12005, 12003, 3, 2, 2, 2, 12005, 12004, 3, 2, 2, 2, 12006, 1491, 3, 2, 2, 2, 12007, 12008, 7, 2225, 2, 2, 12008, 12009, 7, 2229, 2, 2, 12009, 12010, 7, 2226, 2, 2, 12010, 1493, 3, 2, 2, 2, 12011, 12087, 5, 1498, 750, 2, 12012, 12087, 5, 1496, 749, 2, 12013, 12087, 7, 2254, 2, 2, 12014, 12087, 7, 35, 2, 2, 12015, 12087, 7, 33, 2, 2, 12016, 12087, 7, 34, 2, 2, 12017, 12087, 7, 43, 2, 2, 12018, 12087, 7, 90, 2, 2, 12019, 12087, 7, 99, 2, 2, 12020, 12087, 7, 120, 2, 2, 12021, 12087, 7, 136, 2, 2, 12022, 12087, 7, 192, 2, 2, 12023, 12087, 7, 178, 2, 2, 12024, 12087, 7, 199, 2, 2, 12025, 12087, 7, 261, 2, 2, 12026, 12087, 7, 314, 2, 2, 12027, 12087, 7, 345, 2, 2, 12028, 12087, 7, 364, 2, 2, 12029, 12087, 7, 377, 2, 2, 12030, 12087, 7, 415, 2, 2, 12031, 12087, 7, 456, 2, 2, 12032, 12087, 7, 470, 2, 2, 12033, 12087, 7, 471, 2, 2, 12034, 12087, 7, 472, 2, 2, 12035, 12087, 7, 480, 2, 2, 12036, 12087, 7, 482, 2, 2, 12037, 12087, 7, 536, 2, 2, 12038, 12087, 7, 543, 2, 2, 12039, 12087, 7, 650, 2, 2, 12040, 12087, 7, 666, 2, 2, 12041, 12087, 7, 684, 2, 2, 12042, 12087, 7, 731, 2, 2, 12043, 12087, 7, 790, 2, 2, 12044, 12087, 7, 791, 2, 2, 12045, 12087, 7, 1101, 2, 2, 12046, 12087, 7, 1149, 2, 2, 12047, 12087, 7, 1176, 2, 2, 12048, 12087, 7, 1184, 2, 2, 12049, 12087, 7, 1189, 2, 2, 12050, 12087, 7, 1195, 2, 2, 12051, 12087, 7, 1252, 2, 2, 12052, 12087, 7, 1261, 2, 2, 12053, 12087, 7, 1276, 2, 2, 12054, 12087, 7, 1275, 2, 2, 12055, 12087, 7, 1289, 2, 2, 12056, 12087, 7, 1343, 2, 2, 12057, 12087, 7, 1349, 2, 2, 12058, 12087, 7, 1361, 2, 2, 12059, 12087, 7, 1378, 2, 2, 12060, 12087, 7, 1406, 2, 2, 12061, 12087, 7, 1424, 2, 2, 12062, 12087, 7, 1427, 2, 2, 12063, 12087, 7, 1493, 2, 2, 12064, 12087, 7, 1502, 2, 2, 12065, 12087, 7, 1512, 2, 2, 12066, 12087, 7, 1530, 2, 2, 12067, 12087, 7, 1531, 2, 2, 12068, 12087, 7, 1543, 2, 2, 12069, 12087, 7, 1556, 2, 2, 12070, 12087, 7, 1557, 2, 2, 12071, 12087, 7, 1618, 2, 2, 12072, 12087, 7, 1934, 2, 2, 12073, 12087, 7, 1936, 2, 2, 12074, 12087, 7, 1937, 2, 2, 12075, 12087, 7, 1980, 2, 2, 12076, 12087, 7, 2078, 2, 2, 12077, 12087, 7, 2077, 2, 2, 12078, 12087, 7, 2079, 2, 2, 12079, 12087, 7, 2110, 2, 2, 12080, 12087, 7, 2117, 2, 2, 12081, 12087, 7, 2133, 2, 2, 12082, 12087, 7, 2173, 2, 2, 12083, 12087, 7, 2201, 2, 2, 12084, 12087, 7, 2209, 2, 2, 12085, 12087, 7, 2191, 2, 2, 12086, 12011, 3, 2, 2, 2, 12086, 12012, 3, 2, 2, 2, 12086, 12013, 3, 2, 2, 2, 12086, 12014, 3, 2, 2, 2, 12086, 12015, 3, 2, 2, 2, 12086, 12016, 3, 2, 2, 2, 12086, 12017, 3, 2, 2, 2, 12086, 12018, 3, 2, 2, 2, 12086, 12019, 3, 2, 2, 2, 12086, 12020, 3, 2, 2, 2, 12086, 12021, 3, 2, 2, 2, 12086, 12022, 3, 2, 2, 2, 12086, 12023, 3, 2, 2, 2, 12086, 12024, 3, 2, 2, 2, 12086, 12025, 3, 2, 2, 2, 12086, 12026, 3, 2, 2, 2, 12086, 12027, 3, 2, 2, 2, 12086, 12028, 3, 2, 2, 2, 12086, 12029, 3, 2, 2, 2, 12086, 12030, 3, 2, 2, 2, 12086, 12031, 3, 2, 2, 2, 12086, 12032, 3, 2, 2, 2, 12086, 12033, 3, 2, 2, 2, 12086, 12034, 3, 2, 2, 2, 12086, 12035, 3, 2, 2, 2, 12086, 12036, 3, 2, 2, 2, 12086, 12037, 3, 2, 2, 2, 12086, 12038, 3, 2, 2, 2, 12086, 12039, 3, 2, 2, 2, 12086, 12040, 3, 2, 2, 2, 12086, 12041, 3, 2, 2, 2, 12086, 12042, 3, 2, 2, 2, 12086, 12043, 3, 2, 2, 2, 12086, 12044, 3, 2, 2, 2, 12086, 12045, 3, 2, 2, 2, 12086, 12046, 3, 2, 2, 2, 12086, 12047, 3, 2, 2, 2, 12086, 12048, 3, 2, 2, 2, 12086, 12049, 3, 2, 2, 2, 12086, 12050, 3, 2, 2, 2, 12086, 12051, 3, 2, 2, 2, 12086, 12052, 3, 2, 2, 2, 12086, 12053, 3, 2, 2, 2, 12086, 12054, 3, 2, 2, 2, 12086, 12055, 3, 2, 2, 2, 12086, 12056, 3, 2, 2, 2, 12086, 12057, 3, 2, 2, 2, 12086, 12058, 3, 2, 2, 2, 12086, 12059, 3, 2, 2, 2, 12086, 12060, 3, 2, 2, 2, 12086, 12061, 3, 2, 2, 2, 12086, 12062, 3, 2, 2, 2, 12086, 12063, 3, 2, 2, 2, 12086, 12064, 3, 2, 2, 2, 12086, 12065, 3, 2, 2, 2, 12086, 12066, 3, 2, 2, 2, 12086, 12067, 3, 2, 2, 2, 12086, 12068, 3, 2, 2, 2, 12086, 12069, 3, 2, 2, 2, 12086, 12070, 3, 2, 2, 2, 12086, 12071, 3, 2, 2, 2, 12086, 12072, 3, 2, 2, 2, 12086, 12073, 3, 2, 2, 2, 12086, 12074, 3, 2, 2, 2, 12086, 12075, 3, 2, 2, 2, 12086, 12076, 3, 2, 2, 2, 12086, 12077, 3, 2, 2, 2, 12086, 12078, 3, 2, 2, 2, 12086, 12079, 3, 2, 2, 2, 12086, 12080, 3, 2, 2, 2, 12086, 12081, 3, 2, 2, 2, 12086, 12082, 3, 2, 2, 2, 12086, 12083, 3, 2, 2, 2, 12086, 12084, 3, 2, 2, 2, 12086, 12085, 3, 2, 2, 2, 12087, 1495, 3, 2, 2, 2, 12088, 12089, 9, 173, 2, 2, 12089, 1497, 3, 2, 2, 2, 12090, 12091, 9, 174, 2, 2, 12091, 1499, 3, 2, 2, 2, 12092, 12093, 9, 175, 2, 2, 12093, 1501, 3, 2, 2, 2, 12094, 12095, 9, 176, 2, 2, 12095, 1503, 3, 2, 2, 2, 1644, 1509, 1512, 1516, 1577, 1589, 1594, 1599, 1606, 1616, 1621, 1629, 1631, 1635, 1639, 1642, 1646, 1651, 1657, 1666, 1669, 1675, 1684, 1697, 1702, 1712, 1715, 1720, 1725, 1732, 1738, 1742, 1748, 1753, 1760, 1767, 1774, 1779, 1783, 1795, 1805, 1810, 1822, 1827, 1832, 1835, 1838, 1851, 1863, 1868, 1873, 1885, 1890, 1898, 1900, 1904, 1907, 1911, 1914, 1918, 1923, 1935, 1940, 1944, 1947, 1952, 1959, 1969, 1974, 1977, 1981, 1984, 1989, 2007, 2012, 2017, 2019, 2026, 2033, 2036, 2039, 2042, 2053, 2065, 2069, 2072, 2081, 2089, 2097, 2100, 2107, 2111, 2116, 2121, 2162, 2190, 2197, 2202, 2209, 2220, 2228, 2232, 2245, 2248, 2254, 2257, 2262, 2267, 2271, 2281, 2291, 2297, 2308, 2313, 2317, 2325, 2333, 2338, 2341, 2343, 2346, 2355, 2360, 2367, 2370, 2373, 2377, 2380, 2388, 2393, 2398, 2405, 2415, 2431, 2438, 2448, 2458, 2465, 2468, 2473, 2483, 2488, 2495, 2498, 2503, 2506, 2509, 2526, 2531, 2540, 2543, 2548, 2551, 2558, 2561, 2568, 2573, 2577, 2582, 2587, 2601, 2606, 2613, 2616, 2620, 2623, 2626, 2629, 2639, 2645, 2655, 2660, 2667, 2673, 2677, 2680, 2683, 2700, 2705, 2713, 2727, 2734, 2750, 2772, 2779, 2781, 2785, 2796, 2798, 2819, 2827, 2835, 2838, 2845, 2850, 2856, 2861, 2866, 2870, 2875, 2881, 2885, 2890, 2894, 2898, 2911, 2916, 2919, 2923, 2928, 2930, 2936, 2938, 2942, 2945, 2952, 2963, 2973, 2977, 2982, 2986, 2990, 2993, 3004, 3009, 3021, 3036, 3042, 3044, 3048, 3059, 3064, 3071, 3079, 3090, 3097, 3101, 3103, 3107, 3117, 3128, 3133, 3137, 3141, 3144, 3147, 3157, 3162, 3170, 3177, 3181, 3183, 3188, 3198, 3209, 3214, 3218, 3222, 3225, 3228, 3235, 3244, 3254, 3256, 3279, 3292, 3306, 3308, 3319, 3327, 3333, 3336, 3341, 3345, 3348, 3351, 3356, 3364, 3376, 3383, 3390, 3409, 3420, 3423, 3429, 3431, 3438, 3441, 3443, 3451, 3471, 3473, 3491, 3493, 3502, 3508, 3513, 3523, 3532, 3545, 3555, 3560, 3563, 3569, 3587, 3590, 3593, 3601, 3614, 3616, 3620, 3628, 3630, 3632, 3634, 3642, 3653, 3664, 3666, 3673, 3676, 3681, 3688, 3692, 3695, 3711, 3716, 3730, 3735, 3737, 3746, 3754, 3757, 3760, 3763, 3766, 3768, 3774, 3785, 3788, 3803, 3814, 3823, 3832, 3841, 3850, 3853, 3859, 3864, 3866, 3873, 3915, 3918, 3922, 3925, 3936, 3945, 3948, 3950, 3962, 3967, 3971, 3975, 3978, 3981, 3997, 3999, 4005, 4007, 4011, 4017, 4023, 4027, 4030, 4038, 4048, 4052, 4071, 4076, 4083, 4090, 4164, 4179, 4185, 4187, 4191, 4195, 4200, 4205, 4209, 4215, 4220, 4225, 4228, 4239, 4256, 4261, 4266, 4269, 4288, 4314, 4319, 4325, 4327, 4337, 4340, 4343, 4346, 4349, 4354, 4359, 4363, 4367, 4373, 4377, 4381, 4397, 4401, 4405, 4409, 4414, 4418, 4424, 4429, 4432, 4440, 4443, 4452, 4456, 4458, 4477, 4483, 4488, 4493, 4495, 4499, 4508, 4521, 4532, 4535, 4538, 4547, 4549, 4556, 4559, 4571, 4586, 4593, 4599, 4603, 4609, 4613, 4622, 4631, 4636, 4640, 4644, 4650, 4657, 4663, 4672, 4677, 4684, 4701, 4703, 4718, 4720, 4731, 4734, 4737, 4743, 4746, 4749, 4756, 4762, 4767, 4771, 4774, 4777, 4783, 4788, 4791, 4795, 4799, 4802, 4809, 4812, 4814, 4819, 4827, 4829, 4843, 4851, 4860, 4863, 4868, 4871, 4880, 4902, 4908, 4913, 4915, 4925, 4934, 4946, 4949, 4952, 4964, 4973, 4981, 4986, 4994, 4999, 5002, 5023, 5025, 5027, 5030, 5034, 5044, 5048, 5053, 5058, 5062, 5064, 5067, 5071, 5081, 5089, 5097, 5100, 5103, 5106, 5109, 5111, 5118, 5120, 5124, 5130, 5133, 5137, 5142, 5157, 5163, 5168, 5173, 5178, 5183, 5185, 5187, 5192, 5200, 5207, 5220, 5226, 5230, 5242, 5249, 5251, 5253, 5257, 5260, 5263, 5270, 5277, 5281, 5291, 5295, 5298, 5301, 5307, 5310, 5313, 5316, 5319, 5322, 5325, 5332, 5335, 5338, 5343, 5345, 5348, 5351, 5370, 5377, 5381, 5384, 5391, 5396, 5403, 5409, 5411, 5417, 5421, 5428, 5433, 5438, 5446, 5451, 5457, 5460, 5463, 5466, 5469, 5472, 5475, 5482, 5485, 5488, 5493, 5495, 5498, 5501, 5505, 5511, 5513, 5524, 5528, 5532, 5539, 5543, 5548, 5551, 5564, 5569, 5575, 5578, 5581, 5584, 5587, 5594, 5597, 5600, 5605, 5607, 5610, 5613, 5620, 5630, 5641, 5657, 5662, 5664, 5669, 5676, 5683, 5697, 5704, 5711, 5725, 5731, 5736, 5739, 5744, 5747, 5751, 5766, 5771, 5775, 5786, 5791, 5804, 5820, 5825, 5827, 5832, 5840, 5854, 5862, 5875, 5881, 5885, 5899, 5904, 5908, 5922, 5925, 5929, 5939, 5947, 5955, 5958, 5963, 5965, 5969, 5979, 5987, 5995, 5998, 6003, 6005, 6015, 6023, 6031, 6034, 6039, 6052, 6057, 6066, 6077, 6091, 6096, 6099, 6105, 6109, 6113, 6117, 6121, 6124, 6136, 6141, 6152, 6164, 6168, 6173, 6176, 6180, 6184, 6186, 6191, 6198, 6208, 6213, 6215, 6224, 6232, 6239, 6244, 6248, 6253, 6258, 6261, 6264, 6267, 6269, 6273, 6276, 6280, 6288, 6290, 6292, 6295, 6304, 6306, 6328, 6335, 6337, 6349, 6351, 6354, 6358, 6361, 6372, 6381, 6388, 6392, 6401, 6409, 6413, 6416, 6424, 6430, 6434, 6439, 6444, 6452, 6456, 6470, 6472, 6475, 6481, 6486, 6489, 6492, 6498, 6509, 6518, 6536, 6545, 6550, 6555, 6561, 6568, 6573, 6575, 6593, 6595, 6598, 6609, 6620, 6627, 6632, 6635, 6638, 6643, 6654, 6660, 6664, 6670, 6677, 6679, 6681, 6685, 6688, 6691, 6701, 6706, 6708, 6710, 6718, 6727, 6729, 6733, 6743, 6752, 6754, 6757, 6762, 6776, 6785, 6787, 6791, 6799, 6801, 6812, 6821, 6827, 6832, 6836, 6841, 6846, 6851, 6855, 6862, 6869, 6874, 6879, 6883, 6894, 6898, 6901, 6904, 6915, 6923, 6931, 6936, 6942, 6946, 6954, 6959, 6964, 6968, 6977, 6980, 6983, 6987, 6994, 7002, 7011, 7014, 7029, 7046, 7052, 7056, 7063, 7070, 7073, 7075, 7081, 7083, 7086, 7095, 7098, 7102, 7108, 7120, 7130, 7134, 7137, 7140, 7145, 7149, 7153, 7156, 7163, 7166, 7173, 7179, 7207, 7217, 7227, 7229, 7237, 7269, 7277, 7279, 7281, 7283, 7298, 7317, 7319, 7322, 7328, 7334, 7342, 7344, 7346, 7351, 7356, 7361, 7365, 7369, 7373, 7382, 7391, 7394, 7397, 7400, 7404, 7414, 7421, 7428, 7430, 7440, 7443, 7446, 7449, 7453, 7455, 7457, 7460, 7466, 7469, 7474, 7479, 7483, 7487, 7493, 7518, 7520, 7532, 7537, 7542, 7544, 7556, 7561, 7566, 7568, 7573, 7580, 7584, 7593, 7600, 7604, 7608, 7613, 7618, 7622, 7627, 7634, 7640, 7645, 7649, 7656, 7658, 7661, 7673, 7677, 7682, 7686, 7693, 7703, 7706, 7715, 7726, 7728, 7741, 7743, 7745, 7772, 7775, 7780, 7782, 7804, 7807, 7809, 7811, 7818, 7820, 7828, 7832, 7837, 7840, 7843, 7846, 7853, 7858, 7866, 7869, 7881, 7890, 7893, 7897, 7902, 7907, 7910, 7913, 7916, 7918, 7923, 7927, 7931, 7934, 7937, 7942, 7951, 7953, 7965, 7968, 7971, 7983, 7985, 7989, 7993, 7996, 8001, 8006, 8013, 8019, 8027, 8040, 8044, 8051, 8055, 8069, 8074, 8078, 8089, 8091, 8109, 8114, 8117, 8120, 8125, 8127, 8132, 8138, 8143, 8149, 8156, 8175, 8186, 8191, 8197, 8201, 8209, 8211, 8222, 8231, 8236, 8240, 8243, 8257, 8265, 8269, 8272, 8280, 8292, 8296, 8301, 8304, 8317, 8321, 8333, 8338, 8342, 8346, 8352, 8355, 8358, 8385, 8391, 8395, 8406, 8413, 8417, 8420, 8426, 8435, 8443, 8447, 8451, 8459, 8468, 8474, 8476, 8501, 8506, 8510, 8517, 8521, 8525, 8529, 8541, 8545, 8559, 8565, 8572, 8577, 8588, 8591, 8597, 8599, 8608, 8618, 8623, 8638, 8642, 8645, 8649, 8653, 8667, 8669, 8673, 8681, 8688, 8693, 8695, 8700, 8705, 8713, 8720, 8724, 8727, 8739, 8745, 8754, 8757, 8767, 8778, 8781, 8788, 8791, 8798, 8809, 8815, 8819, 8829, 8832, 8838, 8849, 8851, 8853, 8856, 8860, 8863, 8867, 8871, 8876, 8887, 8891, 8899, 8902, 8911, 8913, 8922, 8927, 8933, 8937, 8940, 8948, 8951, 8955, 8959, 8964, 8967, 8971, 8975, 8979, 8998, 9006, 9010, 9014, 9020, 9024, 9028, 9031, 9034, 9037, 9040, 9048, 9051, 9062, 9064, 9071, 9078, 9083, 9089, 9093, 9098, 9105, 9111, 9118, 9121, 9124, 9128, 9133, 9137, 9139, 9150, 9157, 9161, 9171, 9175, 9183, 9195, 9200, 9210, 9218, 9221, 9227, 9232, 9235, 9240, 9245, 9258, 9265, 9275, 9280, 9282, 9287, 9291, 9297, 9301, 9314, 9318, 9328, 9331, 9333, 9338, 9347, 9360, 9368, 9372, 9381, 9385, 9390, 9401, 9403, 9419, 9424, 9430, 9436, 9454, 9461, 9464, 9467, 9475, 9478, 9486, 9488, 9492, 9495, 9500, 9502, 9506, 9518, 9527, 9535, 9540, 9544, 9554, 9556, 9562, 9567, 9570, 9580, 9586, 9589, 9592, 9600, 9610, 9620, 9624, 9628, 9631, 9634, 9639, 9644, 9647, 9650, 9656, 9659, 9665, 9668, 9671, 9676, 9679, 9687, 9693, 9698, 9703, 9711, 9721, 9725, 9727, 9730, 9742, 9746, 9749, 9764, 9769, 9773, 9780, 9783, 9792, 9799, 9804, 9808, 9816, 9822, 9830, 9833, 9842, 9845, 9848, 9857, 9863, 9869, 9871, 9882, 9884, 9893, 9895, 9899, 9905, 9909, 9923, 9928, 9944, 9946, 9950, 9955, 9960, 9972, 9976, 9983, 9988, 9993, 9996, 10007, 10012, 10022, 10024, 10026, 10036, 10040, 10042, 10054, 10062, 10075, 10078, 10090, 10092, 10100, 10108, 10115, 10119, 10126, 10130, 10135, 10139, 10147, 10151, 10158, 10163, 10172, 10181, 10184, 10204, 10208, 10211, 10218, 10221, 10225, 10228, 10235, 10238, 10244, 10247, 10251, 10254, 10261, 10266, 10280, 10287, 10298, 10307, 10316, 10320, 10324, 10350, 10353, 10356, 10366, 10370, 10375, 10381, 10386, 10391, 10400, 10403, 10405, 10409, 10416, 10423, 10431, 10446, 10451, 10456, 10462, 10465, 10469, 10479, 10491, 10493, 10500, 10504, 10513, 10522, 10536, 10544, 10547, 10556, 10562, 10572, 10580, 10583, 10586, 10595, 10600, 10609, 10615, 10620, 10623, 10628, 10633, 10637, 10643, 10649, 10658, 10663, 10671, 10675, 10680, 10686, 10693, 10698, 10705, 10709, 10714, 10722, 10725, 10728, 10731, 10735, 10740, 10743, 10754, 10758, 10760, 10771, 10782, 10791, 10794, 10798, 10801, 10816, 10821, 10829, 10836, 10840, 10845, 10849, 10854, 10858, 10864, 10867, 10874, 10884, 10892, 10896, 10906, 10909, 10911, 10921, 10923, 10929, 10935, 10937, 10951, 10953, 10963, 10972, 10977, 10986, 10990, 10994, 10999, 11003, 11006, 11010, 11017, 11021, 11029, 11034, 11053, 11058, 11065, 11076, 11083, 11090, 11094, 11101, 11106, 11115, 11123, 11131, 11137, 11142, 11147, 11151, 11156, 11159, 11164, 11168, 11172, 11177, 11186, 11192, 11197, 11201, 11203, 11210, 11214, 11222, 11225, 11230, 11237, 11255, 11272, 11279, 11293, 11301, 11304, 11308, 11313, 11318, 11322, 11325, 11329, 11336, 11341, 11343, 11345, 11355, 11360, 11364, 11367, 11371, 11380, 11386, 11390, 11392, 11396, 11400, 11407, 11415, 11423, 11425, 11430, 11434, 11437, 11461, 11468, 11501, 11506, 11509, 11514, 11516, 11522, 11530, 11535, 11542, 11547, 11550, 11554, 11561, 11566, 11596, 11603, 11618, 11634, 11653, 11670, 11677, 11685, 11698, 11707, 11716, 11725, 11735, 11743, 11753, 11763, 11775, 11791, 11809, 11822, 11837, 11848, 11858, 11869, 11879, 11896, 11902, 11924, 11929, 11935, 11941, 11947, 11952, 11954, 11957, 11967, 11970, 11972, 11974, 11988, 11999, 12005, 12086]
\ No newline at end of file
diff --git a/src/lib/plsql/PlSqlParser.js b/src/lib/plsql/PlSqlParser.js
new file mode 100644
index 0000000..b287fdf
--- /dev/null
+++ b/src/lib/plsql/PlSqlParser.js
@@ -0,0 +1,100054 @@
+// Generated from /Users/ziv/Workspace/dt-sql-parser/src/grammar/plsql/PlSqlParser.g4 by ANTLR 4.8
+// jshint ignore: start
+var antlr4 = require('antlr4/index');
+var PlSqlParserListener = require('./PlSqlParserListener').PlSqlParserListener;
+var PlSqlParserVisitor = require('./PlSqlParserVisitor').PlSqlParserVisitor;
+
+var PlSqlBaseParser = require('./PlSqlBaseParser').PlSqlBaseParser;
+
+var grammarFileName = "PlSqlParser.g4";
+
+
+var serializedATN = ["\u0003\u608b\ua72a\u8133\ub9ed\u417c\u3be7\u7786\u5964",
+ "\u0003\u08cf\u2f41\u0004\u0002\t\u0002\u0004\u0003\t\u0003\u0004\u0004",
+ "\t\u0004\u0004\u0005\t\u0005\u0004\u0006\t\u0006\u0004\u0007\t\u0007",
+ "\u0004\b\t\b\u0004\t\t\t\u0004\n\t\n\u0004\u000b\t\u000b\u0004\f\t\f",
+ "\u0004\r\t\r\u0004\u000e\t\u000e\u0004\u000f\t\u000f\u0004\u0010\t\u0010",
+ "\u0004\u0011\t\u0011\u0004\u0012\t\u0012\u0004\u0013\t\u0013\u0004\u0014",
+ "\t\u0014\u0004\u0015\t\u0015\u0004\u0016\t\u0016\u0004\u0017\t\u0017",
+ "\u0004\u0018\t\u0018\u0004\u0019\t\u0019\u0004\u001a\t\u001a\u0004\u001b",
+ "\t\u001b\u0004\u001c\t\u001c\u0004\u001d\t\u001d\u0004\u001e\t\u001e",
+ "\u0004\u001f\t\u001f\u0004 \t \u0004!\t!\u0004\"\t\"\u0004#\t#\u0004",
+ "$\t$\u0004%\t%\u0004&\t&\u0004\'\t\'\u0004(\t(\u0004)\t)\u0004*\t*\u0004",
+ "+\t+\u0004,\t,\u0004-\t-\u0004.\t.\u0004/\t/\u00040\t0\u00041\t1\u0004",
+ "2\t2\u00043\t3\u00044\t4\u00045\t5\u00046\t6\u00047\t7\u00048\t8\u0004",
+ "9\t9\u0004:\t:\u0004;\t;\u0004<\t<\u0004=\t=\u0004>\t>\u0004?\t?\u0004",
+ "@\t@\u0004A\tA\u0004B\tB\u0004C\tC\u0004D\tD\u0004E\tE\u0004F\tF\u0004",
+ "G\tG\u0004H\tH\u0004I\tI\u0004J\tJ\u0004K\tK\u0004L\tL\u0004M\tM\u0004",
+ "N\tN\u0004O\tO\u0004P\tP\u0004Q\tQ\u0004R\tR\u0004S\tS\u0004T\tT\u0004",
+ "U\tU\u0004V\tV\u0004W\tW\u0004X\tX\u0004Y\tY\u0004Z\tZ\u0004[\t[\u0004",
+ "\\\t\\\u0004]\t]\u0004^\t^\u0004_\t_\u0004`\t`\u0004a\ta\u0004b\tb\u0004",
+ "c\tc\u0004d\td\u0004e\te\u0004f\tf\u0004g\tg\u0004h\th\u0004i\ti\u0004",
+ "j\tj\u0004k\tk\u0004l\tl\u0004m\tm\u0004n\tn\u0004o\to\u0004p\tp\u0004",
+ "q\tq\u0004r\tr\u0004s\ts\u0004t\tt\u0004u\tu\u0004v\tv\u0004w\tw\u0004",
+ "x\tx\u0004y\ty\u0004z\tz\u0004{\t{\u0004|\t|\u0004}\t}\u0004~\t~\u0004",
+ "\u007f\t\u007f\u0004\u0080\t\u0080\u0004\u0081\t\u0081\u0004\u0082\t",
+ "\u0082\u0004\u0083\t\u0083\u0004\u0084\t\u0084\u0004\u0085\t\u0085\u0004",
+ "\u0086\t\u0086\u0004\u0087\t\u0087\u0004\u0088\t\u0088\u0004\u0089\t",
+ "\u0089\u0004\u008a\t\u008a\u0004\u008b\t\u008b\u0004\u008c\t\u008c\u0004",
+ "\u008d\t\u008d\u0004\u008e\t\u008e\u0004\u008f\t\u008f\u0004\u0090\t",
+ "\u0090\u0004\u0091\t\u0091\u0004\u0092\t\u0092\u0004\u0093\t\u0093\u0004",
+ "\u0094\t\u0094\u0004\u0095\t\u0095\u0004\u0096\t\u0096\u0004\u0097\t",
+ "\u0097\u0004\u0098\t\u0098\u0004\u0099\t\u0099\u0004\u009a\t\u009a\u0004",
+ "\u009b\t\u009b\u0004\u009c\t\u009c\u0004\u009d\t\u009d\u0004\u009e\t",
+ "\u009e\u0004\u009f\t\u009f\u0004\u00a0\t\u00a0\u0004\u00a1\t\u00a1\u0004",
+ "\u00a2\t\u00a2\u0004\u00a3\t\u00a3\u0004\u00a4\t\u00a4\u0004\u00a5\t",
+ "\u00a5\u0004\u00a6\t\u00a6\u0004\u00a7\t\u00a7\u0004\u00a8\t\u00a8\u0004",
+ "\u00a9\t\u00a9\u0004\u00aa\t\u00aa\u0004\u00ab\t\u00ab\u0004\u00ac\t",
+ "\u00ac\u0004\u00ad\t\u00ad\u0004\u00ae\t\u00ae\u0004\u00af\t\u00af\u0004",
+ "\u00b0\t\u00b0\u0004\u00b1\t\u00b1\u0004\u00b2\t\u00b2\u0004\u00b3\t",
+ "\u00b3\u0004\u00b4\t\u00b4\u0004\u00b5\t\u00b5\u0004\u00b6\t\u00b6\u0004",
+ "\u00b7\t\u00b7\u0004\u00b8\t\u00b8\u0004\u00b9\t\u00b9\u0004\u00ba\t",
+ "\u00ba\u0004\u00bb\t\u00bb\u0004\u00bc\t\u00bc\u0004\u00bd\t\u00bd\u0004",
+ "\u00be\t\u00be\u0004\u00bf\t\u00bf\u0004\u00c0\t\u00c0\u0004\u00c1\t",
+ "\u00c1\u0004\u00c2\t\u00c2\u0004\u00c3\t\u00c3\u0004\u00c4\t\u00c4\u0004",
+ "\u00c5\t\u00c5\u0004\u00c6\t\u00c6\u0004\u00c7\t\u00c7\u0004\u00c8\t",
+ "\u00c8\u0004\u00c9\t\u00c9\u0004\u00ca\t\u00ca\u0004\u00cb\t\u00cb\u0004",
+ "\u00cc\t\u00cc\u0004\u00cd\t\u00cd\u0004\u00ce\t\u00ce\u0004\u00cf\t",
+ "\u00cf\u0004\u00d0\t\u00d0\u0004\u00d1\t\u00d1\u0004\u00d2\t\u00d2\u0004",
+ "\u00d3\t\u00d3\u0004\u00d4\t\u00d4\u0004\u00d5\t\u00d5\u0004\u00d6\t",
+ "\u00d6\u0004\u00d7\t\u00d7\u0004\u00d8\t\u00d8\u0004\u00d9\t\u00d9\u0004",
+ "\u00da\t\u00da\u0004\u00db\t\u00db\u0004\u00dc\t\u00dc\u0004\u00dd\t",
+ "\u00dd\u0004\u00de\t\u00de\u0004\u00df\t\u00df\u0004\u00e0\t\u00e0\u0004",
+ "\u00e1\t\u00e1\u0004\u00e2\t\u00e2\u0004\u00e3\t\u00e3\u0004\u00e4\t",
+ "\u00e4\u0004\u00e5\t\u00e5\u0004\u00e6\t\u00e6\u0004\u00e7\t\u00e7\u0004",
+ "\u00e8\t\u00e8\u0004\u00e9\t\u00e9\u0004\u00ea\t\u00ea\u0004\u00eb\t",
+ "\u00eb\u0004\u00ec\t\u00ec\u0004\u00ed\t\u00ed\u0004\u00ee\t\u00ee\u0004",
+ "\u00ef\t\u00ef\u0004\u00f0\t\u00f0\u0004\u00f1\t\u00f1\u0004\u00f2\t",
+ "\u00f2\u0004\u00f3\t\u00f3\u0004\u00f4\t\u00f4\u0004\u00f5\t\u00f5\u0004",
+ "\u00f6\t\u00f6\u0004\u00f7\t\u00f7\u0004\u00f8\t\u00f8\u0004\u00f9\t",
+ "\u00f9\u0004\u00fa\t\u00fa\u0004\u00fb\t\u00fb\u0004\u00fc\t\u00fc\u0004",
+ "\u00fd\t\u00fd\u0004\u00fe\t\u00fe\u0004\u00ff\t\u00ff\u0004\u0100\t",
+ "\u0100\u0004\u0101\t\u0101\u0004\u0102\t\u0102\u0004\u0103\t\u0103\u0004",
+ "\u0104\t\u0104\u0004\u0105\t\u0105\u0004\u0106\t\u0106\u0004\u0107\t",
+ "\u0107\u0004\u0108\t\u0108\u0004\u0109\t\u0109\u0004\u010a\t\u010a\u0004",
+ "\u010b\t\u010b\u0004\u010c\t\u010c\u0004\u010d\t\u010d\u0004\u010e\t",
+ "\u010e\u0004\u010f\t\u010f\u0004\u0110\t\u0110\u0004\u0111\t\u0111\u0004",
+ "\u0112\t\u0112\u0004\u0113\t\u0113\u0004\u0114\t\u0114\u0004\u0115\t",
+ "\u0115\u0004\u0116\t\u0116\u0004\u0117\t\u0117\u0004\u0118\t\u0118\u0004",
+ "\u0119\t\u0119\u0004\u011a\t\u011a\u0004\u011b\t\u011b\u0004\u011c\t",
+ "\u011c\u0004\u011d\t\u011d\u0004\u011e\t\u011e\u0004\u011f\t\u011f\u0004",
+ "\u0120\t\u0120\u0004\u0121\t\u0121\u0004\u0122\t\u0122\u0004\u0123\t",
+ "\u0123\u0004\u0124\t\u0124\u0004\u0125\t\u0125\u0004\u0126\t\u0126\u0004",
+ "\u0127\t\u0127\u0004\u0128\t\u0128\u0004\u0129\t\u0129\u0004\u012a\t",
+ "\u012a\u0004\u012b\t\u012b\u0004\u012c\t\u012c\u0004\u012d\t\u012d\u0004",
+ "\u012e\t\u012e\u0004\u012f\t\u012f\u0004\u0130\t\u0130\u0004\u0131\t",
+ "\u0131\u0004\u0132\t\u0132\u0004\u0133\t\u0133\u0004\u0134\t\u0134\u0004",
+ "\u0135\t\u0135\u0004\u0136\t\u0136\u0004\u0137\t\u0137\u0004\u0138\t",
+ "\u0138\u0004\u0139\t\u0139\u0004\u013a\t\u013a\u0004\u013b\t\u013b\u0004",
+ "\u013c\t\u013c\u0004\u013d\t\u013d\u0004\u013e\t\u013e\u0004\u013f\t",
+ "\u013f\u0004\u0140\t\u0140\u0004\u0141\t\u0141\u0004\u0142\t\u0142\u0004",
+ "\u0143\t\u0143\u0004\u0144\t\u0144\u0004\u0145\t\u0145\u0004\u0146\t",
+ "\u0146\u0004\u0147\t\u0147\u0004\u0148\t\u0148\u0004\u0149\t\u0149\u0004",
+ "\u014a\t\u014a\u0004\u014b\t\u014b\u0004\u014c\t\u014c\u0004\u014d\t",
+ "\u014d\u0004\u014e\t\u014e\u0004\u014f\t\u014f\u0004\u0150\t\u0150\u0004",
+ "\u0151\t\u0151\u0004\u0152\t\u0152\u0004\u0153\t\u0153\u0004\u0154\t",
+ "\u0154\u0004\u0155\t\u0155\u0004\u0156\t\u0156\u0004\u0157\t\u0157\u0004",
+ "\u0158\t\u0158\u0004\u0159\t\u0159\u0004\u015a\t\u015a\u0004\u015b\t",
+ "\u015b\u0004\u015c\t\u015c\u0004\u015d\t\u015d\u0004\u015e\t\u015e\u0004",
+ "\u015f\t\u015f\u0004\u0160\t\u0160\u0004\u0161\t\u0161\u0004\u0162\t",
+ "\u0162\u0004\u0163\t\u0163\u0004\u0164\t\u0164\u0004\u0165\t\u0165\u0004",
+ "\u0166\t\u0166\u0004\u0167\t\u0167\u0004\u0168\t\u0168\u0004\u0169\t",
+ "\u0169\u0004\u016a\t\u016a\u0004\u016b\t\u016b\u0004\u016c\t\u016c\u0004",
+ "\u016d\t\u016d\u0004\u016e\t\u016e\u0004\u016f\t\u016f\u0004\u0170\t",
+ "\u0170\u0004\u0171\t\u0171\u0004\u0172\t\u0172\u0004\u0173\t\u0173\u0004",
+ "\u0174\t\u0174\u0004\u0175\t\u0175\u0004\u0176\t\u0176\u0004\u0177\t",
+ "\u0177\u0004\u0178\t\u0178\u0004\u0179\t\u0179\u0004\u017a\t\u017a\u0004",
+ "\u017b\t\u017b\u0004\u017c\t\u017c\u0004\u017d\t\u017d\u0004\u017e\t",
+ "\u017e\u0004\u017f\t\u017f\u0004\u0180\t\u0180\u0004\u0181\t\u0181\u0004",
+ "\u0182\t\u0182\u0004\u0183\t\u0183\u0004\u0184\t\u0184\u0004\u0185\t",
+ "\u0185\u0004\u0186\t\u0186\u0004\u0187\t\u0187\u0004\u0188\t\u0188\u0004",
+ "\u0189\t\u0189\u0004\u018a\t\u018a\u0004\u018b\t\u018b\u0004\u018c\t",
+ "\u018c\u0004\u018d\t\u018d\u0004\u018e\t\u018e\u0004\u018f\t\u018f\u0004",
+ "\u0190\t\u0190\u0004\u0191\t\u0191\u0004\u0192\t\u0192\u0004\u0193\t",
+ "\u0193\u0004\u0194\t\u0194\u0004\u0195\t\u0195\u0004\u0196\t\u0196\u0004",
+ "\u0197\t\u0197\u0004\u0198\t\u0198\u0004\u0199\t\u0199\u0004\u019a\t",
+ "\u019a\u0004\u019b\t\u019b\u0004\u019c\t\u019c\u0004\u019d\t\u019d\u0004",
+ "\u019e\t\u019e\u0004\u019f\t\u019f\u0004\u01a0\t\u01a0\u0004\u01a1\t",
+ "\u01a1\u0004\u01a2\t\u01a2\u0004\u01a3\t\u01a3\u0004\u01a4\t\u01a4\u0004",
+ "\u01a5\t\u01a5\u0004\u01a6\t\u01a6\u0004\u01a7\t\u01a7\u0004\u01a8\t",
+ "\u01a8\u0004\u01a9\t\u01a9\u0004\u01aa\t\u01aa\u0004\u01ab\t\u01ab\u0004",
+ "\u01ac\t\u01ac\u0004\u01ad\t\u01ad\u0004\u01ae\t\u01ae\u0004\u01af\t",
+ "\u01af\u0004\u01b0\t\u01b0\u0004\u01b1\t\u01b1\u0004\u01b2\t\u01b2\u0004",
+ "\u01b3\t\u01b3\u0004\u01b4\t\u01b4\u0004\u01b5\t\u01b5\u0004\u01b6\t",
+ "\u01b6\u0004\u01b7\t\u01b7\u0004\u01b8\t\u01b8\u0004\u01b9\t\u01b9\u0004",
+ "\u01ba\t\u01ba\u0004\u01bb\t\u01bb\u0004\u01bc\t\u01bc\u0004\u01bd\t",
+ "\u01bd\u0004\u01be\t\u01be\u0004\u01bf\t\u01bf\u0004\u01c0\t\u01c0\u0004",
+ "\u01c1\t\u01c1\u0004\u01c2\t\u01c2\u0004\u01c3\t\u01c3\u0004\u01c4\t",
+ "\u01c4\u0004\u01c5\t\u01c5\u0004\u01c6\t\u01c6\u0004\u01c7\t\u01c7\u0004",
+ "\u01c8\t\u01c8\u0004\u01c9\t\u01c9\u0004\u01ca\t\u01ca\u0004\u01cb\t",
+ "\u01cb\u0004\u01cc\t\u01cc\u0004\u01cd\t\u01cd\u0004\u01ce\t\u01ce\u0004",
+ "\u01cf\t\u01cf\u0004\u01d0\t\u01d0\u0004\u01d1\t\u01d1\u0004\u01d2\t",
+ "\u01d2\u0004\u01d3\t\u01d3\u0004\u01d4\t\u01d4\u0004\u01d5\t\u01d5\u0004",
+ "\u01d6\t\u01d6\u0004\u01d7\t\u01d7\u0004\u01d8\t\u01d8\u0004\u01d9\t",
+ "\u01d9\u0004\u01da\t\u01da\u0004\u01db\t\u01db\u0004\u01dc\t\u01dc\u0004",
+ "\u01dd\t\u01dd\u0004\u01de\t\u01de\u0004\u01df\t\u01df\u0004\u01e0\t",
+ "\u01e0\u0004\u01e1\t\u01e1\u0004\u01e2\t\u01e2\u0004\u01e3\t\u01e3\u0004",
+ "\u01e4\t\u01e4\u0004\u01e5\t\u01e5\u0004\u01e6\t\u01e6\u0004\u01e7\t",
+ "\u01e7\u0004\u01e8\t\u01e8\u0004\u01e9\t\u01e9\u0004\u01ea\t\u01ea\u0004",
+ "\u01eb\t\u01eb\u0004\u01ec\t\u01ec\u0004\u01ed\t\u01ed\u0004\u01ee\t",
+ "\u01ee\u0004\u01ef\t\u01ef\u0004\u01f0\t\u01f0\u0004\u01f1\t\u01f1\u0004",
+ "\u01f2\t\u01f2\u0004\u01f3\t\u01f3\u0004\u01f4\t\u01f4\u0004\u01f5\t",
+ "\u01f5\u0004\u01f6\t\u01f6\u0004\u01f7\t\u01f7\u0004\u01f8\t\u01f8\u0004",
+ "\u01f9\t\u01f9\u0004\u01fa\t\u01fa\u0004\u01fb\t\u01fb\u0004\u01fc\t",
+ "\u01fc\u0004\u01fd\t\u01fd\u0004\u01fe\t\u01fe\u0004\u01ff\t\u01ff\u0004",
+ "\u0200\t\u0200\u0004\u0201\t\u0201\u0004\u0202\t\u0202\u0004\u0203\t",
+ "\u0203\u0004\u0204\t\u0204\u0004\u0205\t\u0205\u0004\u0206\t\u0206\u0004",
+ "\u0207\t\u0207\u0004\u0208\t\u0208\u0004\u0209\t\u0209\u0004\u020a\t",
+ "\u020a\u0004\u020b\t\u020b\u0004\u020c\t\u020c\u0004\u020d\t\u020d\u0004",
+ "\u020e\t\u020e\u0004\u020f\t\u020f\u0004\u0210\t\u0210\u0004\u0211\t",
+ "\u0211\u0004\u0212\t\u0212\u0004\u0213\t\u0213\u0004\u0214\t\u0214\u0004",
+ "\u0215\t\u0215\u0004\u0216\t\u0216\u0004\u0217\t\u0217\u0004\u0218\t",
+ "\u0218\u0004\u0219\t\u0219\u0004\u021a\t\u021a\u0004\u021b\t\u021b\u0004",
+ "\u021c\t\u021c\u0004\u021d\t\u021d\u0004\u021e\t\u021e\u0004\u021f\t",
+ "\u021f\u0004\u0220\t\u0220\u0004\u0221\t\u0221\u0004\u0222\t\u0222\u0004",
+ "\u0223\t\u0223\u0004\u0224\t\u0224\u0004\u0225\t\u0225\u0004\u0226\t",
+ "\u0226\u0004\u0227\t\u0227\u0004\u0228\t\u0228\u0004\u0229\t\u0229\u0004",
+ "\u022a\t\u022a\u0004\u022b\t\u022b\u0004\u022c\t\u022c\u0004\u022d\t",
+ "\u022d\u0004\u022e\t\u022e\u0004\u022f\t\u022f\u0004\u0230\t\u0230\u0004",
+ "\u0231\t\u0231\u0004\u0232\t\u0232\u0004\u0233\t\u0233\u0004\u0234\t",
+ "\u0234\u0004\u0235\t\u0235\u0004\u0236\t\u0236\u0004\u0237\t\u0237\u0004",
+ "\u0238\t\u0238\u0004\u0239\t\u0239\u0004\u023a\t\u023a\u0004\u023b\t",
+ "\u023b\u0004\u023c\t\u023c\u0004\u023d\t\u023d\u0004\u023e\t\u023e\u0004",
+ "\u023f\t\u023f\u0004\u0240\t\u0240\u0004\u0241\t\u0241\u0004\u0242\t",
+ "\u0242\u0004\u0243\t\u0243\u0004\u0244\t\u0244\u0004\u0245\t\u0245\u0004",
+ "\u0246\t\u0246\u0004\u0247\t\u0247\u0004\u0248\t\u0248\u0004\u0249\t",
+ "\u0249\u0004\u024a\t\u024a\u0004\u024b\t\u024b\u0004\u024c\t\u024c\u0004",
+ "\u024d\t\u024d\u0004\u024e\t\u024e\u0004\u024f\t\u024f\u0004\u0250\t",
+ "\u0250\u0004\u0251\t\u0251\u0004\u0252\t\u0252\u0004\u0253\t\u0253\u0004",
+ "\u0254\t\u0254\u0004\u0255\t\u0255\u0004\u0256\t\u0256\u0004\u0257\t",
+ "\u0257\u0004\u0258\t\u0258\u0004\u0259\t\u0259\u0004\u025a\t\u025a\u0004",
+ "\u025b\t\u025b\u0004\u025c\t\u025c\u0004\u025d\t\u025d\u0004\u025e\t",
+ "\u025e\u0004\u025f\t\u025f\u0004\u0260\t\u0260\u0004\u0261\t\u0261\u0004",
+ "\u0262\t\u0262\u0004\u0263\t\u0263\u0004\u0264\t\u0264\u0004\u0265\t",
+ "\u0265\u0004\u0266\t\u0266\u0004\u0267\t\u0267\u0004\u0268\t\u0268\u0004",
+ "\u0269\t\u0269\u0004\u026a\t\u026a\u0004\u026b\t\u026b\u0004\u026c\t",
+ "\u026c\u0004\u026d\t\u026d\u0004\u026e\t\u026e\u0004\u026f\t\u026f\u0004",
+ "\u0270\t\u0270\u0004\u0271\t\u0271\u0004\u0272\t\u0272\u0004\u0273\t",
+ "\u0273\u0004\u0274\t\u0274\u0004\u0275\t\u0275\u0004\u0276\t\u0276\u0004",
+ "\u0277\t\u0277\u0004\u0278\t\u0278\u0004\u0279\t\u0279\u0004\u027a\t",
+ "\u027a\u0004\u027b\t\u027b\u0004\u027c\t\u027c\u0004\u027d\t\u027d\u0004",
+ "\u027e\t\u027e\u0004\u027f\t\u027f\u0004\u0280\t\u0280\u0004\u0281\t",
+ "\u0281\u0004\u0282\t\u0282\u0004\u0283\t\u0283\u0004\u0284\t\u0284\u0004",
+ "\u0285\t\u0285\u0004\u0286\t\u0286\u0004\u0287\t\u0287\u0004\u0288\t",
+ "\u0288\u0004\u0289\t\u0289\u0004\u028a\t\u028a\u0004\u028b\t\u028b\u0004",
+ "\u028c\t\u028c\u0004\u028d\t\u028d\u0004\u028e\t\u028e\u0004\u028f\t",
+ "\u028f\u0004\u0290\t\u0290\u0004\u0291\t\u0291\u0004\u0292\t\u0292\u0004",
+ "\u0293\t\u0293\u0004\u0294\t\u0294\u0004\u0295\t\u0295\u0004\u0296\t",
+ "\u0296\u0004\u0297\t\u0297\u0004\u0298\t\u0298\u0004\u0299\t\u0299\u0004",
+ "\u029a\t\u029a\u0004\u029b\t\u029b\u0004\u029c\t\u029c\u0004\u029d\t",
+ "\u029d\u0004\u029e\t\u029e\u0004\u029f\t\u029f\u0004\u02a0\t\u02a0\u0004",
+ "\u02a1\t\u02a1\u0004\u02a2\t\u02a2\u0004\u02a3\t\u02a3\u0004\u02a4\t",
+ "\u02a4\u0004\u02a5\t\u02a5\u0004\u02a6\t\u02a6\u0004\u02a7\t\u02a7\u0004",
+ "\u02a8\t\u02a8\u0004\u02a9\t\u02a9\u0004\u02aa\t\u02aa\u0004\u02ab\t",
+ "\u02ab\u0004\u02ac\t\u02ac\u0004\u02ad\t\u02ad\u0004\u02ae\t\u02ae\u0004",
+ "\u02af\t\u02af\u0004\u02b0\t\u02b0\u0004\u02b1\t\u02b1\u0004\u02b2\t",
+ "\u02b2\u0004\u02b3\t\u02b3\u0004\u02b4\t\u02b4\u0004\u02b5\t\u02b5\u0004",
+ "\u02b6\t\u02b6\u0004\u02b7\t\u02b7\u0004\u02b8\t\u02b8\u0004\u02b9\t",
+ "\u02b9\u0004\u02ba\t\u02ba\u0004\u02bb\t\u02bb\u0004\u02bc\t\u02bc\u0004",
+ "\u02bd\t\u02bd\u0004\u02be\t\u02be\u0004\u02bf\t\u02bf\u0004\u02c0\t",
+ "\u02c0\u0004\u02c1\t\u02c1\u0004\u02c2\t\u02c2\u0004\u02c3\t\u02c3\u0004",
+ "\u02c4\t\u02c4\u0004\u02c5\t\u02c5\u0004\u02c6\t\u02c6\u0004\u02c7\t",
+ "\u02c7\u0004\u02c8\t\u02c8\u0004\u02c9\t\u02c9\u0004\u02ca\t\u02ca\u0004",
+ "\u02cb\t\u02cb\u0004\u02cc\t\u02cc\u0004\u02cd\t\u02cd\u0004\u02ce\t",
+ "\u02ce\u0004\u02cf\t\u02cf\u0004\u02d0\t\u02d0\u0004\u02d1\t\u02d1\u0004",
+ "\u02d2\t\u02d2\u0004\u02d3\t\u02d3\u0004\u02d4\t\u02d4\u0004\u02d5\t",
+ "\u02d5\u0004\u02d6\t\u02d6\u0004\u02d7\t\u02d7\u0004\u02d8\t\u02d8\u0004",
+ "\u02d9\t\u02d9\u0004\u02da\t\u02da\u0004\u02db\t\u02db\u0004\u02dc\t",
+ "\u02dc\u0004\u02dd\t\u02dd\u0004\u02de\t\u02de\u0004\u02df\t\u02df\u0004",
+ "\u02e0\t\u02e0\u0004\u02e1\t\u02e1\u0004\u02e2\t\u02e2\u0004\u02e3\t",
+ "\u02e3\u0004\u02e4\t\u02e4\u0004\u02e5\t\u02e5\u0004\u02e6\t\u02e6\u0004",
+ "\u02e7\t\u02e7\u0004\u02e8\t\u02e8\u0004\u02e9\t\u02e9\u0004\u02ea\t",
+ "\u02ea\u0004\u02eb\t\u02eb\u0004\u02ec\t\u02ec\u0004\u02ed\t\u02ed\u0004",
+ "\u02ee\t\u02ee\u0004\u02ef\t\u02ef\u0004\u02f0\t\u02f0\u0003\u0002\u0003",
+ "\u0002\u0003\u0002\u0003\u0003\u0003\u0003\u0005\u0003\u05e6\n\u0003",
+ "\u0003\u0003\u0005\u0003\u05e9\n\u0003\u0007\u0003\u05eb\n\u0003\f\u0003",
+ "\u000e\u0003\u05ee\u000b\u0003\u0003\u0003\u0003\u0003\u0003\u0004\u0003",
+ "\u0004\u0003\u0004\u0003\u0004\u0003\u0004\u0003\u0004\u0003\u0004\u0003",
+ "\u0004\u0003\u0004\u0003\u0004\u0003\u0004\u0003\u0004\u0003\u0004\u0003",
+ "\u0004\u0003\u0004\u0003\u0004\u0003\u0004\u0003\u0004\u0003\u0004\u0003",
+ "\u0004\u0003\u0004\u0003\u0004\u0003\u0004\u0003\u0004\u0003\u0004\u0003",
+ "\u0004\u0003\u0004\u0003\u0004\u0003\u0004\u0003\u0004\u0003\u0004\u0003",
+ "\u0004\u0003\u0004\u0003\u0004\u0003\u0004\u0003\u0004\u0003\u0004\u0003",
+ "\u0004\u0003\u0004\u0003\u0004\u0003\u0004\u0003\u0004\u0003\u0004\u0003",
+ "\u0004\u0003\u0004\u0003\u0004\u0003\u0004\u0003\u0004\u0003\u0004\u0003",
+ "\u0004\u0003\u0004\u0003\u0004\u0003\u0004\u0003\u0004\u0003\u0004\u0003",
+ "\u0004\u0005\u0004\u062a\n\u0004\u0003\u0005\u0003\u0005\u0003\u0005",
+ "\u0003\u0005\u0003\u0005\u0003\u0006\u0003\u0006\u0003\u0006\u0003\u0006",
+ "\u0003\u0006\u0005\u0006\u0636\n\u0006\u0003\u0006\u0007\u0006\u0639",
+ "\n\u0006\f\u0006\u000e\u0006\u063c\u000b\u0006\u0003\u0006\u0003\u0006",
+ "\u0005\u0006\u0640\n\u0006\u0003\u0006\u0003\u0006\u0003\u0007\u0003",
+ "\u0007\u0003\u0007\u0005\u0007\u0647\n\u0007\u0003\u0007\u0003\u0007",
+ "\u0003\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0007\u0007\u064f\n",
+ "\u0007\f\u0007\u000e\u0007\u0652\u000b\u0007\u0003\u0007\u0003\u0007",
+ "\u0005\u0007\u0656\n\u0007\u0003\u0007\u0003\u0007\u0003\u0007\u0003",
+ "\u0007\u0003\u0007\u0003\u0007\u0007\u0007\u065e\n\u0007\f\u0007\u000e",
+ "\u0007\u0661\u000b\u0007\u0003\u0007\u0005\u0007\u0664\n\u0007\u0003",
+ "\u0007\u0003\u0007\u0005\u0007\u0668\n\u0007\u0003\u0007\u0005\u0007",
+ "\u066b\n\u0007\u0003\u0007\u0003\u0007\u0005\u0007\u066f\n\u0007\u0003",
+ "\u0007\u0003\u0007\u0003\u0007\u0005\u0007\u0674\n\u0007\u0003\u0007",
+ "\u0003\u0007\u0003\b\u0003\b\u0005\b\u067a\n\b\u0003\t\u0003\t\u0003",
+ "\t\u0003\t\u0003\t\u0003\t\u0003\t\u0005\t\u0683\n\t\u0003\t\u0005\t",
+ "\u0686\n\t\u0003\t\u0003\t\u0003\n\u0003\n\u0005\n\u068c\n\n\u0003\u000b",
+ "\u0003\u000b\u0003\u000b\u0003\u000b\u0003\u000b\u0007\u000b\u0693\n",
+ "\u000b\f\u000b\u000e\u000b\u0696\u000b\u000b\u0003\u000b\u0003\u000b",
+ "\u0003\f\u0003\f\u0003\f\u0003\f\u0003\f\u0003\r\u0003\r\u0003\r\u0005",
+ "\r\u06a2\n\r\u0003\r\u0003\r\u0003\r\u0005\r\u06a7\n\r\u0003\r\u0003",
+ "\r\u0003\r\u0003\u000e\u0003\u000e\u0003\u000e\u0003\u000e\u0003\u000e",
+ "\u0005\u000e\u06b1\n\u000e\u0003\u000e\u0005\u000e\u06b4\n\u000e\u0003",
+ "\u000e\u0007\u000e\u06b7\n\u000e\f\u000e\u000e\u000e\u06ba\u000b\u000e",
+ "\u0003\u000e\u0003\u000e\u0005\u000e\u06be\n\u000e\u0003\u000e\u0003",
+ "\u000e\u0003\u000f\u0003\u000f\u0003\u000f\u0005\u000f\u06c5\n\u000f",
+ "\u0003\u000f\u0003\u000f\u0003\u000f\u0003\u000f\u0005\u000f\u06cb\n",
+ "\u000f\u0003\u000f\u0003\u000f\u0005\u000f\u06cf\n\u000f\u0003\u000f",
+ "\u0003\u000f\u0007\u000f\u06d3\n\u000f\f\u000f\u000e\u000f\u06d6\u000b",
+ "\u000f\u0003\u000f\u0003\u000f\u0005\u000f\u06da\n\u000f\u0003\u000f",
+ "\u0003\u000f\u0003\u0010\u0003\u0010\u0003\u0010\u0005\u0010\u06e1\n",
+ "\u0010\u0003\u0010\u0003\u0010\u0003\u0010\u0003\u0010\u0003\u0010\u0005",
+ "\u0010\u06e8\n\u0010\u0003\u0010\u0003\u0010\u0003\u0010\u0007\u0010",
+ "\u06ed\n\u0010\f\u0010\u000e\u0010\u06f0\u000b\u0010\u0003\u0010\u0003",
+ "\u0010\u0005\u0010\u06f4\n\u0010\u0003\u0010\u0003\u0010\u0005\u0010",
+ "\u06f8\n\u0010\u0003\u0010\u0003\u0010\u0003\u0011\u0003\u0011\u0003",
+ "\u0011\u0003\u0011\u0003\u0011\u0003\u0011\u0003\u0011\u0003\u0011\u0005",
+ "\u0011\u0704\n\u0011\u0003\u0012\u0003\u0012\u0003\u0012\u0003\u0012",
+ "\u0003\u0012\u0003\u0012\u0007\u0012\u070c\n\u0012\f\u0012\u000e\u0012",
+ "\u070f\u000b\u0012\u0003\u0012\u0003\u0012\u0005\u0012\u0713\n\u0012",
+ "\u0003\u0012\u0003\u0012\u0003\u0013\u0003\u0013\u0003\u0013\u0003\u0013",
+ "\u0003\u0013\u0003\u0013\u0007\u0013\u071d\n\u0013\f\u0013\u000e\u0013",
+ "\u0720\u000b\u0013\u0003\u0013\u0003\u0013\u0005\u0013\u0724\n\u0013",
+ "\u0003\u0013\u0003\u0013\u0003\u0013\u0005\u0013\u0729\n\u0013\u0003",
+ "\u0013\u0005\u0013\u072c\n\u0013\u0003\u0013\u0005\u0013\u072f\n\u0013",
+ "\u0003\u0013\u0003\u0013\u0003\u0014\u0003\u0014\u0003\u0014\u0003\u0014",
+ "\u0003\u0014\u0003\u0014\u0003\u0014\u0003\u0014\u0003\u0014\u0005\u0014",
+ "\u073c\n\u0014\u0003\u0015\u0003\u0015\u0003\u0015\u0003\u0015\u0003",
+ "\u0015\u0003\u0016\u0003\u0016\u0003\u0016\u0003\u0016\u0003\u0016\u0005",
+ "\u0016\u0748\n\u0016\u0003\u0016\u0007\u0016\u074b\n\u0016\f\u0016\u000e",
+ "\u0016\u074e\u000b\u0016\u0003\u0016\u0003\u0016\u0005\u0016\u0752\n",
+ "\u0016\u0003\u0016\u0003\u0016\u0003\u0017\u0003\u0017\u0003\u0017\u0003",
+ "\u0017\u0003\u0017\u0003\u0017\u0007\u0017\u075c\n\u0017\f\u0017\u000e",
+ "\u0017\u075f\u000b\u0017\u0003\u0017\u0003\u0017\u0005\u0017\u0763\n",
+ "\u0017\u0003\u0017\u0003\u0017\u0003\u0017\u0003\u0017\u0003\u0017\u0003",
+ "\u0017\u0007\u0017\u076b\n\u0017\f\u0017\u000e\u0017\u076e\u000b\u0017",
+ "\u0003\u0017\u0005\u0017\u0771\n\u0017\u0003\u0017\u0005\u0017\u0774",
+ "\n\u0017\u0003\u0017\u0003\u0017\u0005\u0017\u0778\n\u0017\u0003\u0017",
+ "\u0005\u0017\u077b\n\u0017\u0003\u0017\u0003\u0017\u0005\u0017\u077f",
+ "\n\u0017\u0003\u0017\u0003\u0017\u0003\u0017\u0005\u0017\u0784\n\u0017",
+ "\u0003\u0017\u0003\u0017\u0003\u0018\u0003\u0018\u0003\u0018\u0003\u0018",
+ "\u0003\u0018\u0003\u0018\u0007\u0018\u078e\n\u0018\f\u0018\u000e\u0018",
+ "\u0791\u000b\u0018\u0003\u0018\u0003\u0018\u0005\u0018\u0795\n\u0018",
+ "\u0003\u0018\u0003\u0018\u0005\u0018\u0799\n\u0018\u0003\u0018\u0005",
+ "\u0018\u079c\n\u0018\u0003\u0018\u0003\u0018\u0003\u0018\u0005\u0018",
+ "\u07a1\n\u0018\u0003\u0018\u0003\u0018\u0003\u0019\u0003\u0019\u0003",
+ "\u0019\u0005\u0019\u07a8\n\u0019\u0003\u0019\u0003\u0019\u0003\u0019",
+ "\u0003\u0019\u0003\u0019\u0003\u0019\u0007\u0019\u07b0\n\u0019\f\u0019",
+ "\u000e\u0019\u07b3\u000b\u0019\u0003\u0019\u0003\u0019\u0005\u0019\u07b7",
+ "\n\u0019\u0003\u0019\u0005\u0019\u07ba\n\u0019\u0003\u0019\u0003\u0019",
+ "\u0005\u0019\u07be\n\u0019\u0003\u0019\u0005\u0019\u07c1\n\u0019\u0003",
+ "\u0019\u0003\u0019\u0003\u0019\u0005\u0019\u07c6\n\u0019\u0003\u0019",
+ "\u0003\u0019\u0003\u001a\u0003\u001a\u0003\u001a\u0003\u001a\u0003\u001a",
+ "\u0003\u001b\u0003\u001b\u0003\u001b\u0003\u001b\u0003\u001b\u0003\u001b",
+ "\u0003\u001b\u0003\u001b\u0003\u001b\u0005\u001b\u07d8\n\u001b\u0003",
+ "\u001b\u0007\u001b\u07db\n\u001b\f\u001b\u000e\u001b\u07de\u000b\u001b",
+ "\u0003\u001b\u0003\u001b\u0005\u001b\u07e2\n\u001b\u0005\u001b\u07e4",
+ "\n\u001b\u0003\u001b\u0003\u001b\u0003\u001c\u0003\u001c\u0003\u001c",
+ "\u0005\u001c\u07eb\n\u001c\u0003\u001c\u0003\u001c\u0003\u001c\u0003",
+ "\u001c\u0003\u001c\u0005\u001c\u07f2\n\u001c\u0003\u001c\u0005\u001c",
+ "\u07f5\n\u001c\u0003\u001c\u0005\u001c\u07f8\n\u001c\u0003\u001c\u0005",
+ "\u001c\u07fb\n\u001c\u0003\u001c\u0003\u001c\u0003\u001c\u0003\u001d",
+ "\u0003\u001d\u0003\u001d\u0003\u001d\u0007\u001d\u0804\n\u001d\f\u001d",
+ "\u000e\u001d\u0807\u000b\u001d\u0003\u001e\u0003\u001e\u0003\u001e\u0003",
+ "\u001e\u0003\u001e\u0003\u001f\u0003\u001f\u0003\u001f\u0003\u001f\u0005",
+ "\u001f\u0812\n\u001f\u0003\u001f\u0003\u001f\u0005\u001f\u0816\n\u001f",
+ "\u0003\u001f\u0005\u001f\u0819\n\u001f\u0003 \u0003 \u0003 \u0003 \u0003",
+ "!\u0003!\u0003!\u0005!\u0822\n!\u0003\"\u0003\"\u0003\"\u0003\"\u0007",
+ "\"\u0828\n\"\f\"\u000e\"\u082b\u000b\"\u0003\"\u0003\"\u0003\"\u0003",
+ "\"\u0003\"\u0005\"\u0832\n\"\u0003\"\u0005\"\u0835\n\"\u0003#\u0003",
+ "#\u0003#\u0003#\u0003#\u0005#\u083c\n#\u0003$\u0003$\u0005$\u0840\n",
+ "$\u0003%\u0003%\u0003%\u0005%\u0845\n%\u0003%\u0006%\u0848\n%\r%\u000e",
+ "%\u0849\u0003%\u0003%\u0003%\u0003&\u0003&\u0003&\u0003&\u0003&\u0003",
+ "&\u0003&\u0003&\u0003&\u0003&\u0003&\u0003&\u0003&\u0003&\u0003&\u0003",
+ "&\u0003&\u0003&\u0003&\u0003&\u0003&\u0003&\u0003&\u0003&\u0003&\u0003",
+ "&\u0003&\u0003&\u0003&\u0003&\u0003&\u0003&\u0003&\u0003&\u0003&\u0003",
+ "&\u0005&\u0873\n&\u0003\'\u0003\'\u0003\'\u0003\'\u0003\'\u0003\'\u0003",
+ "\'\u0003\'\u0003\'\u0003\'\u0003\'\u0003\'\u0003\'\u0003\'\u0003\'\u0003",
+ "\'\u0003\'\u0003\'\u0003\'\u0003\'\u0003\'\u0003\'\u0003\'\u0003\'\u0003",
+ "\'\u0003\'\u0005\'\u088f\n\'\u0003(\u0003(\u0003(\u0007(\u0894\n(\f",
+ "(\u000e(\u0897\u000b(\u0003(\u0003(\u0005(\u089b\n(\u0003(\u0003(\u0003",
+ ")\u0003)\u0003)\u0005)\u08a2\n)\u0003*\u0003*\u0003*\u0003*\u0003*\u0003",
+ "+\u0003+\u0006+\u08ab\n+\r+\u000e+\u08ac\u0003,\u0003,\u0003,\u0003",
+ "-\u0003-\u0003-\u0005-\u08b5\n-\u0003-\u0003-\u0005-\u08b9\n-\u0003",
+ "-\u0003-\u0003.\u0003.\u0003.\u0003.\u0003.\u0003.\u0003.\u0003.\u0003",
+ ".\u0005.\u08c6\n.\u0003.\u0005.\u08c9\n.\u0003.\u0003.\u0003/\u0003",
+ "/\u0005/\u08cf\n/\u0003/\u0005/\u08d2\n/\u0003/\u0007/\u08d5\n/\f/\u000e",
+ "/\u08d8\u000b/\u0003/\u0003/\u0005/\u08dc\n/\u00030\u00030\u00050\u08e0",
+ "\n0\u00030\u00030\u00030\u00030\u00030\u00030\u00070\u08e8\n0\f0\u000e",
+ "0\u08eb\u000b0\u00030\u00030\u00031\u00031\u00031\u00071\u08f2\n1\f",
+ "1\u000e1\u08f5\u000b1\u00032\u00032\u00032\u00052\u08fa\n2\u00033\u0003",
+ "3\u00033\u00033\u00033\u00033\u00033\u00073\u0903\n3\f3\u000e3\u0906",
+ "\u000b3\u00033\u00033\u00053\u090a\n3\u00034\u00034\u00054\u090e\n4",
+ "\u00035\u00035\u00035\u00035\u00035\u00035\u00055\u0916\n5\u00036\u0003",
+ "6\u00036\u00036\u00036\u00036\u00056\u091e\n6\u00036\u00036\u00036\u0005",
+ "6\u0923\n6\u00036\u00056\u0926\n6\u00056\u0928\n6\u00037\u00057\u092b",
+ "\n7\u00037\u00037\u00037\u00037\u00038\u00038\u00038\u00058\u0934\n",
+ "8\u00038\u00038\u00038\u00058\u0939\n8\u00038\u00038\u00039\u00039\u0003",
+ "9\u00059\u0940\n9\u00039\u00059\u0943\n9\u0003:\u0005:\u0946\n:\u0003",
+ ":\u0003:\u0005:\u094a\n:\u0003:\u0005:\u094d\n:\u0003:\u0003:\u0003",
+ ":\u0003:\u0007:\u0953\n:\f:\u000e:\u0956\u000b:\u0003:\u0003:\u0005",
+ ":\u095a\n:\u0003:\u0007:\u095d\n:\f:\u000e:\u0960\u000b:\u0003;\u0003",
+ ";\u0003;\u0003;\u0005;\u0966\n;\u0003<\u0003<\u0003<\u0003=\u0003=\u0003",
+ "=\u0003=\u0003=\u0005=\u0970\n=\u0003>\u0003>\u0003>\u0003>\u0003>\u0003",
+ ">\u0003>\u0003>\u0003?\u0003?\u0003?\u0003?\u0006?\u097e\n?\r?\u000e",
+ "?\u097f\u0003?\u0003?\u0003@\u0003@\u0003@\u0005@\u0987\n@\u0003A\u0003",
+ "A\u0003A\u0003A\u0003B\u0003B\u0003B\u0003B\u0005B\u0991\nB\u0003C\u0003",
+ "C\u0003C\u0003C\u0003C\u0003C\u0007C\u0999\nC\fC\u000eC\u099c\u000b",
+ "C\u0003C\u0003C\u0003C\u0003C\u0005C\u09a2\nC\u0003C\u0005C\u09a5\n",
+ "C\u0003C\u0003C\u0003C\u0005C\u09aa\nC\u0003D\u0003D\u0003D\u0003D\u0003",
+ "D\u0003D\u0007D\u09b2\nD\fD\u000eD\u09b5\u000bD\u0003D\u0003D\u0005",
+ "D\u09b9\nD\u0003D\u0003D\u0003D\u0003D\u0003D\u0005D\u09c0\nD\u0003",
+ "D\u0005D\u09c3\nD\u0003D\u0003D\u0003D\u0005D\u09c8\nD\u0003E\u0005",
+ "E\u09cb\nE\u0003E\u0005E\u09ce\nE\u0003E\u0003E\u0003E\u0003E\u0003",
+ "E\u0003E\u0003E\u0003E\u0003E\u0003E\u0003E\u0003E\u0003E\u0007E\u09dd",
+ "\nE\fE\u000eE\u09e0\u000bE\u0003E\u0003E\u0005E\u09e4\nE\u0003E\u0003",
+ "E\u0003E\u0003E\u0003E\u0003E\u0003E\u0005E\u09ed\nE\u0003E\u0005E\u09f0",
+ "\nE\u0003E\u0003E\u0003E\u0005E\u09f5\nE\u0003F\u0005F\u09f8\nF\u0003",
+ "F\u0003F\u0003G\u0003G\u0003G\u0005G\u09ff\nG\u0003G\u0005G\u0a02\n",
+ "G\u0003H\u0003H\u0003H\u0003H\u0003I\u0005I\u0a09\nI\u0003I\u0006I\u0a0c",
+ "\nI\rI\u000eI\u0a0d\u0003I\u0003I\u0005I\u0a12\nI\u0003J\u0003J\u0003",
+ "J\u0005J\u0a17\nJ\u0003K\u0003K\u0003K\u0005K\u0a1c\nK\u0003L\u0003",
+ "L\u0003L\u0003L\u0003M\u0003M\u0003M\u0003M\u0003M\u0003M\u0007M\u0a28",
+ "\nM\fM\u000eM\u0a2b\u000bM\u0003M\u0003M\u0005M\u0a2f\nM\u0003M\u0003",
+ "M\u0003M\u0003M\u0003M\u0005M\u0a36\nM\u0003M\u0005M\u0a39\nM\u0003",
+ "M\u0003M\u0005M\u0a3d\nM\u0003M\u0005M\u0a40\nM\u0003M\u0005M\u0a43",
+ "\nM\u0003M\u0005M\u0a46\nM\u0003N\u0003N\u0003N\u0003N\u0003N\u0003",
+ "N\u0007N\u0a4e\nN\fN\u000eN\u0a51\u000bN\u0003N\u0003N\u0003N\u0005",
+ "N\u0a56\nN\u0003O\u0003O\u0003O\u0003O\u0003O\u0003O\u0007O\u0a5e\n",
+ "O\fO\u000eO\u0a61\u000bO\u0003O\u0003O\u0005O\u0a65\nO\u0003O\u0003",
+ "O\u0003O\u0003O\u0003O\u0005O\u0a6c\nO\u0003O\u0003O\u0003O\u0003O\u0005",
+ "O\u0a72\nO\u0003O\u0003O\u0005O\u0a76\nO\u0003P\u0005P\u0a79\nP\u0003",
+ "P\u0005P\u0a7c\nP\u0003P\u0003P\u0003P\u0003P\u0003P\u0003P\u0003P\u0003",
+ "P\u0003P\u0003P\u0003P\u0003P\u0003P\u0007P\u0a8b\nP\fP\u000eP\u0a8e",
+ "\u000bP\u0003P\u0003P\u0005P\u0a92\nP\u0003P\u0003P\u0003P\u0003P\u0003",
+ "P\u0003P\u0005P\u0a9a\nP\u0003Q\u0003Q\u0003Q\u0003Q\u0003R\u0003R\u0003",
+ "R\u0003R\u0003R\u0003R\u0007R\u0aa6\nR\fR\u000eR\u0aa9\u000bR\u0003",
+ "R\u0003R\u0003S\u0003S\u0005S\u0aaf\nS\u0003T\u0003T\u0003T\u0003U\u0003",
+ "U\u0003U\u0003U\u0003U\u0003V\u0003V\u0003V\u0003V\u0006V\u0abd\nV\r",
+ "V\u000eV\u0abe\u0003V\u0003V\u0003W\u0003W\u0003W\u0003W\u0003W\u0003",
+ "W\u0003W\u0003W\u0003W\u0003W\u0003W\u0003W\u0003W\u0003W\u0003W\u0003",
+ "W\u0003W\u0003W\u0005W\u0ad5\nW\u0003W\u0003W\u0003W\u0003W\u0003W\u0005",
+ "W\u0adc\nW\u0005W\u0ade\nW\u0003W\u0003W\u0005W\u0ae2\nW\u0003X\u0003",
+ "X\u0003X\u0003X\u0003Y\u0003Y\u0003Y\u0003Y\u0003Y\u0007Y\u0aed\nY\f",
+ "Y\u000eY\u0af0\u000bY\u0003Y\u0003Y\u0003Z\u0003Z\u0003Z\u0003Z\u0003",
+ "Z\u0003Z\u0003Z\u0003Z\u0003Z\u0003Z\u0003Z\u0003Z\u0003Z\u0003Z\u0003",
+ "Z\u0003Z\u0005Z\u0b04\nZ\u0003[\u0003[\u0003[\u0003[\u0003\\\u0003\\",
+ "\u0005\\\u0b0c\n\\\u0003\\\u0003\\\u0003\\\u0003\\\u0003\\\u0003\\\u0005",
+ "\\\u0b14\n\\\u0003\\\u0005\\\u0b17\n\\\u0003\\\u0003\\\u0003]\u0003",
+ "]\u0003]\u0005]\u0b1e\n]\u0003^\u0003^\u0003^\u0005^\u0b23\n^\u0003",
+ "^\u0003^\u0003_\u0003_\u0005_\u0b29\n_\u0003_\u0003_\u0003_\u0005_\u0b2e",
+ "\n_\u0003_\u0003_\u0003_\u0005_\u0b33\n_\u0007_\u0b35\n_\f_\u000e_\u0b38",
+ "\u000b_\u0003_\u0003_\u0005_\u0b3c\n_\u0003`\u0003`\u0003`\u0003`\u0005",
+ "`\u0b42\n`\u0003`\u0003`\u0005`\u0b46\n`\u0003`\u0003`\u0003`\u0005",
+ "`\u0b4b\n`\u0003`\u0003`\u0005`\u0b4f\n`\u0007`\u0b51\n`\f`\u000e`\u0b54",
+ "\u000b`\u0003`\u0003`\u0003`\u0003`\u0003`\u0003`\u0003`\u0003`\u0007",
+ "`\u0b5e\n`\f`\u000e`\u0b61\u000b`\u0003`\u0003`\u0005`\u0b65\n`\u0003",
+ "`\u0005`\u0b68\n`\u0003a\u0003a\u0005a\u0b6c\na\u0003b\u0003b\u0003",
+ "b\u0006b\u0b71\nb\rb\u000eb\u0b72\u0003b\u0003b\u0003b\u0003b\u0005",
+ "b\u0b79\nb\u0005b\u0b7b\nb\u0003c\u0003c\u0005c\u0b7f\nc\u0003c\u0005",
+ "c\u0b82\nc\u0003c\u0003c\u0003c\u0003c\u0003c\u0005c\u0b89\nc\u0003",
+ "d\u0003d\u0003d\u0003d\u0003d\u0003d\u0003d\u0003d\u0003d\u0005d\u0b94",
+ "\nd\u0003d\u0003d\u0003d\u0003d\u0003d\u0003d\u0003d\u0003d\u0005d\u0b9e",
+ "\nd\u0007d\u0ba0\nd\fd\u000ed\u0ba3\u000bd\u0003d\u0003d\u0005d\u0ba7",
+ "\nd\u0003e\u0003e\u0005e\u0bab\ne\u0003e\u0003e\u0005e\u0baf\ne\u0003",
+ "e\u0005e\u0bb2\ne\u0003f\u0003f\u0003f\u0003f\u0003f\u0003f\u0003f\u0007",
+ "f\u0bbb\nf\ff\u000ef\u0bbe\u000bf\u0003f\u0003f\u0005f\u0bc2\nf\u0003",
+ "g\u0003g\u0003g\u0003g\u0003g\u0003g\u0003g\u0003g\u0007g\u0bcc\ng\f",
+ "g\u000eg\u0bcf\u000bg\u0003g\u0003g\u0003g\u0003g\u0003g\u0003g\u0003",
+ "g\u0003g\u0003g\u0003g\u0007g\u0bdb\ng\fg\u000eg\u0bde\u000bg\u0003",
+ "g\u0003g\u0003g\u0005g\u0be3\ng\u0005g\u0be5\ng\u0003h\u0003h\u0005",
+ "h\u0be9\nh\u0003h\u0003h\u0003h\u0003h\u0003h\u0003h\u0003h\u0007h\u0bf2",
+ "\nh\fh\u000eh\u0bf5\u000bh\u0003h\u0003h\u0005h\u0bf9\nh\u0003i\u0003",
+ "i\u0003i\u0003i\u0003i\u0005i\u0c00\ni\u0003j\u0003j\u0003j\u0003j\u0007",
+ "j\u0c06\nj\fj\u000ej\u0c09\u000bj\u0003j\u0003j\u0003k\u0003k\u0003",
+ "k\u0003k\u0007k\u0c11\nk\fk\u000ek\u0c14\u000bk\u0003k\u0003k\u0003",
+ "l\u0003l\u0005l\u0c1a\nl\u0003l\u0003l\u0007l\u0c1e\nl\fl\u000el\u0c21",
+ "\u000bl\u0003l\u0005l\u0c24\nl\u0003m\u0003m\u0003m\u0003m\u0003m\u0003",
+ "m\u0007m\u0c2c\nm\fm\u000em\u0c2f\u000bm\u0003m\u0003m\u0003m\u0003",
+ "m\u0003m\u0003m\u0007m\u0c37\nm\fm\u000em\u0c3a\u000bm\u0003m\u0003",
+ "m\u0005m\u0c3e\nm\u0003n\u0003n\u0005n\u0c42\nn\u0003n\u0003n\u0005",
+ "n\u0c46\nn\u0003n\u0005n\u0c49\nn\u0003n\u0005n\u0c4c\nn\u0003o\u0003",
+ "o\u0003o\u0003o\u0003o\u0003o\u0007o\u0c54\no\fo\u000eo\u0c57\u000b",
+ "o\u0003o\u0003o\u0005o\u0c5b\no\u0003o\u0003o\u0003o\u0003o\u0007o\u0c61",
+ "\no\fo\u000eo\u0c64\u000bo\u0003o\u0003o\u0003p\u0003p\u0005p\u0c6a",
+ "\np\u0003p\u0003p\u0007p\u0c6e\np\fp\u000ep\u0c71\u000bp\u0003p\u0003",
+ "p\u0005p\u0c75\np\u0003q\u0003q\u0003q\u0003q\u0003q\u0003q\u0007q\u0c7d",
+ "\nq\fq\u000eq\u0c80\u000bq\u0003q\u0003q\u0003q\u0003q\u0003q\u0003",
+ "q\u0007q\u0c88\nq\fq\u000eq\u0c8b\u000bq\u0003q\u0003q\u0005q\u0c8f",
+ "\nq\u0003r\u0003r\u0005r\u0c93\nr\u0003r\u0003r\u0005r\u0c97\nr\u0003",
+ "r\u0005r\u0c9a\nr\u0003r\u0005r\u0c9d\nr\u0003s\u0003s\u0003t\u0003",
+ "t\u0003t\u0005t\u0ca4\nt\u0003t\u0003t\u0003u\u0003u\u0003u\u0003u\u0003",
+ "u\u0005u\u0cad\nu\u0003u\u0003u\u0003v\u0003v\u0003v\u0003v\u0003v\u0003",
+ "v\u0006v\u0cb7\nv\rv\u000ev\u0cb8\u0003w\u0003w\u0003w\u0003w\u0003",
+ "w\u0003w\u0003w\u0003w\u0003w\u0003w\u0003w\u0003w\u0003w\u0003w\u0003",
+ "w\u0003w\u0003w\u0003w\u0003w\u0003w\u0003w\u0005w\u0cd0\nw\u0003x\u0003",
+ "x\u0003y\u0003y\u0003z\u0003z\u0003z\u0003z\u0003z\u0003z\u0003z\u0005",
+ "z\u0cdd\nz\u0003z\u0003z\u0003z\u0003z\u0003z\u0003z\u0003z\u0003z\u0003",
+ "z\u0003z\u0003z\u0003z\u0007z\u0ceb\nz\fz\u000ez\u0cee\u000bz\u0003",
+ "{\u0003{\u0003{\u0003{\u0003{\u0003{\u0003{\u0003{\u0005{\u0cf8\n{\u0003",
+ "|\u0003|\u0003|\u0003|\u0003|\u0003|\u0005|\u0d00\n|\u0003|\u0003|\u0003",
+ "|\u0003|\u0005|\u0d06\n|\u0003|\u0005|\u0d09\n|\u0003}\u0003}\u0003",
+ "}\u0005}\u0d0e\n}\u0003}\u0003}\u0005}\u0d12\n}\u0003}\u0005}\u0d15",
+ "\n}\u0003}\u0005}\u0d18\n}\u0003~\u0003~\u0003~\u0005~\u0d1d\n~\u0003",
+ "\u007f\u0003\u007f\u0003\u007f\u0003\u007f\u0006\u007f\u0d23\n\u007f",
+ "\r\u007f\u000e\u007f\u0d24\u0003\u007f\u0003\u007f\u0003\u007f\u0003",
+ "\u007f\u0003\u007f\u0003\u007f\u0003\u007f\u0003\u007f\u0003\u007f\u0003",
+ "\u007f\u0005\u007f\u0d31\n\u007f\u0003\u0080\u0003\u0080\u0003\u0080",
+ "\u0003\u0080\u0003\u0080\u0005\u0080\u0d38\n\u0080\u0003\u0081\u0003",
+ "\u0081\u0003\u0081\u0003\u0081\u0003\u0081\u0005\u0081\u0d3f\n\u0081",
+ "\u0003\u0081\u0003\u0081\u0003\u0081\u0003\u0082\u0003\u0082\u0003\u0082",
+ "\u0003\u0082\u0003\u0083\u0003\u0083\u0003\u0083\u0003\u0083\u0003\u0083",
+ "\u0003\u0083\u0003\u0083\u0003\u0083\u0007\u0083\u0d50\n\u0083\f\u0083",
+ "\u000e\u0083\u0d53\u000b\u0083\u0003\u0083\u0003\u0083\u0003\u0083\u0003",
+ "\u0083\u0003\u0083\u0003\u0083\u0003\u0083\u0003\u0083\u0005\u0083\u0d5d",
+ "\n\u0083\u0003\u0083\u0005\u0083\u0d60\n\u0083\u0003\u0084\u0003\u0084",
+ "\u0003\u0084\u0003\u0084\u0006\u0084\u0d66\n\u0084\r\u0084\u000e\u0084",
+ "\u0d67\u0003\u0084\u0003\u0084\u0003\u0084\u0003\u0084\u0003\u0084\u0005",
+ "\u0084\u0d6f\n\u0084\u0003\u0084\u0005\u0084\u0d72\n\u0084\u0005\u0084",
+ "\u0d74\n\u0084\u0003\u0085\u0003\u0085\u0003\u0085\u0003\u0085\u0003",
+ "\u0085\u0003\u0085\u0005\u0085\u0d7c\n\u0085\u0003\u0086\u0003\u0086",
+ "\u0003\u0087\u0003\u0087\u0003\u0088\u0003\u0088\u0003\u0089\u0003\u0089",
+ "\u0003\u0089\u0003\u0089\u0003\u0089\u0003\u0089\u0003\u0089\u0003\u0089",
+ "\u0003\u0089\u0003\u0089\u0003\u0089\u0003\u0089\u0006\u0089\u0d90\n",
+ "\u0089\r\u0089\u000e\u0089\u0d91\u0003\u0089\u0003\u0089\u0003\u008a",
+ "\u0003\u008a\u0003\u008a\u0003\u008a\u0003\u008a\u0003\u008a\u0003\u008a",
+ "\u0003\u008a\u0003\u008a\u0003\u008a\u0003\u008a\u0003\u008a\u0003\u008a",
+ "\u0003\u008a\u0006\u008a\u0da4\n\u008a\r\u008a\u000e\u008a\u0da5\u0003",
+ "\u008a\u0003\u008a\u0003\u008a\u0003\u008a\u0003\u008a\u0007\u008a\u0dad",
+ "\n\u008a\f\u008a\u000e\u008a\u0db0\u000b\u008a\u0003\u008a\u0003\u008a",
+ "\u0003\u008a\u0005\u008a\u0db5\n\u008a\u0003\u008b\u0003\u008b\u0003",
+ "\u008b\u0005\u008b\u0dba\n\u008b\u0003\u008c\u0003\u008c\u0003\u008c",
+ "\u0003\u008c\u0003\u008d\u0003\u008d\u0003\u008d\u0003\u008d\u0005\u008d",
+ "\u0dc4\n\u008d\u0003\u008e\u0003\u008e\u0003\u008e\u0003\u008e\u0003",
+ "\u008f\u0003\u008f\u0003\u008f\u0005\u008f\u0dcd\n\u008f\u0003\u008f",
+ "\u0003\u008f\u0003\u008f\u0003\u0090\u0003\u0090\u0003\u0090\u0003\u0091",
+ "\u0003\u0091\u0003\u0091\u0007\u0091\u0dd8\n\u0091\f\u0091\u000e\u0091",
+ "\u0ddb\u000b\u0091\u0003\u0091\u0003\u0091\u0003\u0091\u0003\u0091\u0003",
+ "\u0091\u0007\u0091\u0de2\n\u0091\f\u0091\u000e\u0091\u0de5\u000b\u0091",
+ "\u0007\u0091\u0de7\n\u0091\f\u0091\u000e\u0091\u0dea\u000b\u0091\u0005",
+ "\u0091\u0dec\n\u0091\u0003\u0092\u0003\u0092\u0003\u0092\u0003\u0092",
+ "\u0005\u0092\u0df2\n\u0092\u0003\u0093\u0003\u0093\u0003\u0093\u0003",
+ "\u0094\u0003\u0094\u0003\u0094\u0003\u0095\u0003\u0095\u0003\u0095\u0003",
+ "\u0096\u0003\u0096\u0003\u0096\u0003\u0096\u0003\u0096\u0007\u0096\u0e02",
+ "\n\u0096\f\u0096\u000e\u0096\u0e05\u000b\u0096\u0005\u0096\u0e07\n\u0096",
+ "\u0003\u0096\u0005\u0096\u0e0a\n\u0096\u0003\u0097\u0003\u0097\u0003",
+ "\u0097\u0003\u0097\u0003\u0097\u0003\u0097\u0005\u0097\u0e12\n\u0097",
+ "\u0003\u0097\u0003\u0097\u0003\u0097\u0003\u0097\u0003\u0097\u0003\u0097",
+ "\u0003\u0097\u0003\u0097\u0003\u0097\u0003\u0097\u0003\u0097\u0005\u0097",
+ "\u0e1f\n\u0097\u0005\u0097\u0e21\n\u0097\u0003\u0097\u0003\u0097\u0005",
+ "\u0097\u0e25\n\u0097\u0003\u0097\u0003\u0097\u0003\u0097\u0003\u0097",
+ "\u0003\u0097\u0003\u0097\u0005\u0097\u0e2d\n\u0097\u0005\u0097\u0e2f",
+ "\n\u0097\u0005\u0097\u0e31\n\u0097\u0005\u0097\u0e33\n\u0097\u0003\u0098",
+ "\u0003\u0098\u0003\u0098\u0003\u0098\u0007\u0098\u0e39\n\u0098\f\u0098",
+ "\u000e\u0098\u0e3c\u000b\u0098\u0003\u0098\u0003\u0098\u0003\u0099\u0003",
+ "\u0099\u0003\u0099\u0003\u0099\u0003\u0099\u0003\u0099\u0005\u0099\u0e46",
+ "\n\u0099\u0003\u009a\u0003\u009a\u0003\u009a\u0003\u009a\u0003\u009a",
+ "\u0003\u009b\u0003\u009b\u0003\u009b\u0003\u009b\u0005\u009b\u0e51\n",
+ "\u009b\u0005\u009b\u0e53\n\u009b\u0003\u009c\u0003\u009c\u0003\u009c",
+ "\u0003\u009c\u0003\u009c\u0005\u009c\u0e5a\n\u009c\u0003\u009c\u0005",
+ "\u009c\u0e5d\n\u009c\u0003\u009c\u0003\u009c\u0003\u009c\u0005\u009c",
+ "\u0e62\n\u009c\u0003\u009c\u0003\u009c\u0003\u009c\u0003\u009c\u0003",
+ "\u009c\u0005\u009c\u0e69\n\u009c\u0003\u009c\u0003\u009c\u0005\u009c",
+ "\u0e6d\n\u009c\u0003\u009c\u0005\u009c\u0e70\n\u009c\u0003\u009c\u0003",
+ "\u009c\u0003\u009d\u0003\u009d\u0003\u009d\u0003\u009d\u0003\u009d\u0003",
+ "\u009d\u0003\u009d\u0003\u009d\u0003\u009d\u0003\u009d\u0007\u009d\u0e7e",
+ "\n\u009d\f\u009d\u000e\u009d\u0e81\u000b\u009d\u0003\u009d\u0003\u009d",
+ "\u0005\u009d\u0e85\n\u009d\u0003\u009d\u0003\u009d\u0003\u009d\u0003",
+ "\u009d\u0003\u009d\u0003\u009d\u0003\u009d\u0003\u009d\u0003\u009d\u0003",
+ "\u009d\u0007\u009d\u0e91\n\u009d\f\u009d\u000e\u009d\u0e94\u000b\u009d",
+ "\u0003\u009d\u0003\u009d\u0005\u009d\u0e98\n\u009d\u0005\u009d\u0e9a",
+ "\n\u009d\u0003\u009e\u0003\u009e\u0003\u009e\u0003\u009e\u0003\u009e",
+ "\u0003\u009e\u0003\u009e\u0005\u009e\u0ea3\n\u009e\u0003\u009e\u0003",
+ "\u009e\u0003\u009e\u0003\u009e\u0003\u009e\u0003\u009e\u0005\u009e\u0eab",
+ "\n\u009e\u0003\u009e\u0005\u009e\u0eae\n\u009e\u0003\u009e\u0005\u009e",
+ "\u0eb1\n\u009e\u0003\u009e\u0005\u009e\u0eb4\n\u009e\u0003\u009e\u0005",
+ "\u009e\u0eb7\n\u009e\u0005\u009e\u0eb9\n\u009e\u0003\u009f\u0003\u009f",
+ "\u0003\u00a0\u0003\u00a0\u0005\u00a0\u0ebf\n\u00a0\u0003\u00a1\u0003",
+ "\u00a1\u0003\u00a2\u0003\u00a2\u0003\u00a3\u0003\u00a3\u0003\u00a3\u0003",
+ "\u00a3\u0003\u00a3\u0005\u00a3\u0eca\n\u00a3\u0003\u00a3\u0005\u00a3",
+ "\u0ecd\n\u00a3\u0003\u00a3\u0003\u00a3\u0003\u00a4\u0003\u00a4\u0003",
+ "\u00a4\u0003\u00a4\u0003\u00a4\u0003\u00a4\u0003\u00a4\u0003\u00a4\u0003",
+ "\u00a4\u0007\u00a4\u0eda\n\u00a4\f\u00a4\u000e\u00a4\u0edd\u000b\u00a4",
+ "\u0003\u00a4\u0003\u00a4\u0003\u00a5\u0003\u00a5\u0003\u00a5\u0003\u00a5",
+ "\u0007\u00a5\u0ee5\n\u00a5\f\u00a5\u000e\u00a5\u0ee8\u000b\u00a5\u0003",
+ "\u00a5\u0003\u00a5\u0003\u00a5\u0003\u00a5\u0007\u00a5\u0eee\n\u00a5",
+ "\f\u00a5\u000e\u00a5\u0ef1\u000b\u00a5\u0003\u00a5\u0003\u00a5\u0003",
+ "\u00a5\u0003\u00a5\u0007\u00a5\u0ef7\n\u00a5\f\u00a5\u000e\u00a5\u0efa",
+ "\u000b\u00a5\u0003\u00a5\u0003\u00a5\u0003\u00a5\u0003\u00a5\u0007\u00a5",
+ "\u0f00\n\u00a5\f\u00a5\u000e\u00a5\u0f03\u000b\u00a5\u0003\u00a5\u0003",
+ "\u00a5\u0003\u00a5\u0003\u00a5\u0007\u00a5\u0f09\n\u00a5\f\u00a5\u000e",
+ "\u00a5\u0f0c\u000b\u00a5\u0005\u00a5\u0f0e\n\u00a5\u0003\u00a5\u0003",
+ "\u00a5\u0003\u00a5\u0003\u00a5\u0005\u00a5\u0f14\n\u00a5\u0003\u00a5",
+ "\u0003\u00a5\u0003\u00a5\u0005\u00a5\u0f19\n\u00a5\u0005\u00a5\u0f1b",
+ "\n\u00a5\u0003\u00a6\u0003\u00a6\u0003\u00a7\u0003\u00a7\u0003\u00a7",
+ "\u0005\u00a7\u0f22\n\u00a7\u0003\u00a8\u0003\u00a8\u0003\u00a9\u0003",
+ "\u00a9\u0003\u00a9\u0003\u00a9\u0003\u00a9\u0003\u00a9\u0003\u00a9\u0003",
+ "\u00a9\u0003\u00a9\u0003\u00a9\u0003\u00aa\u0003\u00aa\u0003\u00ab\u0003",
+ "\u00ab\u0003\u00ac\u0003\u00ac\u0003\u00ad\u0003\u00ad\u0003\u00ad\u0003",
+ "\u00ad\u0003\u00ae\u0003\u00ae\u0003\u00af\u0003\u00af\u0003\u00af\u0003",
+ "\u00af\u0003\u00af\u0003\u00af\u0003\u00b0\u0003\u00b0\u0003\u00b0\u0003",
+ "\u00b0\u0003\u00b0\u0003\u00b0\u0003\u00b0\u0003\u00b0\u0007\u00b0\u0f4a",
+ "\n\u00b0\f\u00b0\u000e\u00b0\u0f4d\u000b\u00b0\u0005\u00b0\u0f4f\n\u00b0",
+ "\u0003\u00b0\u0003\u00b0\u0005\u00b0\u0f53\n\u00b0\u0003\u00b0\u0005",
+ "\u00b0\u0f56\n\u00b0\u0003\u00b0\u0003\u00b0\u0003\u00b0\u0003\u00b0",
+ "\u0003\u00b0\u0003\u00b0\u0003\u00b0\u0007\u00b0\u0f5f\n\u00b0\f\u00b0",
+ "\u000e\u00b0\u0f62\u000b\u00b0\u0003\u00b0\u0003\u00b0\u0003\u00b0\u0003",
+ "\u00b0\u0007\u00b0\u0f68\n\u00b0\f\u00b0\u000e\u00b0\u0f6b\u000b\u00b0",
+ "\u0005\u00b0\u0f6d\n\u00b0\u0005\u00b0\u0f6f\n\u00b0\u0003\u00b0\u0003",
+ "\u00b0\u0003\u00b1\u0003\u00b1\u0003\u00b2\u0003\u00b2\u0003\u00b2\u0003",
+ "\u00b2\u0003\u00b2\u0003\u00b2\u0005\u00b2\u0f7b\n\u00b2\u0003\u00b2",
+ "\u0003\u00b2\u0003\u00b2\u0005\u00b2\u0f80\n\u00b2\u0003\u00b2\u0003",
+ "\u00b2\u0005\u00b2\u0f84\n\u00b2\u0003\u00b2\u0003\u00b2\u0005\u00b2",
+ "\u0f88\n\u00b2\u0003\u00b2\u0005\u00b2\u0f8b\n\u00b2\u0003\u00b2\u0005",
+ "\u00b2\u0f8e\n\u00b2\u0003\u00b2\u0003\u00b2\u0003\u00b3\u0003\u00b3",
+ "\u0003\u00b3\u0003\u00b3\u0003\u00b4\u0003\u00b4\u0003\u00b4\u0003\u00b4",
+ "\u0003\u00b4\u0003\u00b5\u0003\u00b5\u0003\u00b5\u0005\u00b5\u0f9e\n",
+ "\u00b5\u0005\u00b5\u0fa0\n\u00b5\u0003\u00b5\u0003\u00b5\u0003\u00b5",
+ "\u0003\u00b5\u0005\u00b5\u0fa6\n\u00b5\u0005\u00b5\u0fa8\n\u00b5\u0007",
+ "\u00b5\u0faa\n\u00b5\f\u00b5\u000e\u00b5\u0fad\u000b\u00b5\u0003\u00b5",
+ "\u0003\u00b5\u0003\u00b5\u0005\u00b5\u0fb2\n\u00b5\u0003\u00b5\u0003",
+ "\u00b5\u0003\u00b5\u0003\u00b5\u0005\u00b5\u0fb8\n\u00b5\u0007\u00b5",
+ "\u0fba\n\u00b5\f\u00b5\u000e\u00b5\u0fbd\u000b\u00b5\u0005\u00b5\u0fbf",
+ "\n\u00b5\u0003\u00b6\u0003\u00b6\u0003\u00b6\u0003\u00b6\u0007\u00b6",
+ "\u0fc5\n\u00b6\f\u00b6\u000e\u00b6\u0fc8\u000b\u00b6\u0003\u00b7\u0003",
+ "\u00b7\u0003\u00b8\u0003\u00b8\u0003\u00b8\u0007\u00b8\u0fcf\n\u00b8",
+ "\f\u00b8\u000e\u00b8\u0fd2\u000b\u00b8\u0003\u00b8\u0005\u00b8\u0fd5",
+ "\n\u00b8\u0003\u00b8\u0003\u00b8\u0003\u00b9\u0003\u00b9\u0003\u00ba",
+ "\u0003\u00ba\u0003\u00ba\u0003\u00ba\u0003\u00ba\u0003\u00ba\u0003\u00ba",
+ "\u0003\u00ba\u0003\u00ba\u0003\u00ba\u0003\u00ba\u0003\u00ba\u0003\u00ba",
+ "\u0005\u00ba\u0fe8\n\u00ba\u0003\u00bb\u0003\u00bb\u0003\u00bb\u0005",
+ "\u00bb\u0fed\n\u00bb\u0003\u00bb\u0003\u00bb\u0003\u00bc\u0003\u00bc",
+ "\u0003\u00bc\u0005\u00bc\u0ff4\n\u00bc\u0003\u00bc\u0003\u00bc\u0003",
+ "\u00bd\u0003\u00bd\u0003\u00bd\u0005\u00bd\u0ffb\n\u00bd\u0003\u00bd",
+ "\u0003\u00bd\u0003\u00be\u0003\u00be\u0003\u00be\u0003\u00be\u0003\u00be",
+ "\u0003\u00be\u0003\u00be\u0003\u00be\u0003\u00be\u0003\u00be\u0003\u00be",
+ "\u0003\u00be\u0003\u00be\u0003\u00be\u0003\u00be\u0003\u00be\u0003\u00be",
+ "\u0003\u00be\u0003\u00be\u0003\u00be\u0003\u00be\u0003\u00be\u0003\u00be",
+ "\u0003\u00be\u0003\u00be\u0003\u00be\u0003\u00be\u0003\u00be\u0003\u00be",
+ "\u0003\u00be\u0003\u00be\u0003\u00be\u0003\u00be\u0003\u00be\u0003\u00be",
+ "\u0003\u00be\u0003\u00be\u0003\u00be\u0003\u00be\u0003\u00be\u0003\u00be",
+ "\u0003\u00be\u0003\u00be\u0003\u00be\u0003\u00be\u0003\u00be\u0003\u00be",
+ "\u0003\u00be\u0003\u00be\u0003\u00be\u0003\u00be\u0003\u00be\u0003\u00be",
+ "\u0003\u00be\u0003\u00be\u0003\u00be\u0003\u00be\u0003\u00be\u0003\u00be",
+ "\u0003\u00be\u0003\u00be\u0003\u00be\u0003\u00be\u0003\u00be\u0003\u00be",
+ "\u0003\u00be\u0003\u00be\u0003\u00be\u0003\u00be\u0003\u00be\u0005\u00be",
+ "\u1045\n\u00be\u0003\u00bf\u0003\u00bf\u0003\u00bf\u0003\u00bf\u0003",
+ "\u00bf\u0003\u00c0\u0003\u00c0\u0003\u00c0\u0003\u00c0\u0003\u00c0\u0003",
+ "\u00c0\u0003\u00c1\u0003\u00c1\u0005\u00c1\u1054\n\u00c1\u0003\u00c1",
+ "\u0003\u00c1\u0003\u00c1\u0003\u00c1\u0005\u00c1\u105a\n\u00c1\u0005",
+ "\u00c1\u105c\n\u00c1\u0006\u00c1\u105e\n\u00c1\r\u00c1\u000e\u00c1\u105f",
+ "\u0003\u00c1\u0003\u00c1\u0005\u00c1\u1064\n\u00c1\u0003\u00c1\u0003",
+ "\u00c1\u0003\u00c1\u0005\u00c1\u1069\n\u00c1\u0003\u00c1\u0003\u00c1",
+ "\u0003\u00c1\u0005\u00c1\u106e\n\u00c1\u0007\u00c1\u1070\n\u00c1\f\u00c1",
+ "\u000e\u00c1\u1073\u000b\u00c1\u0003\u00c1\u0003\u00c1\u0003\u00c1\u0005",
+ "\u00c1\u1078\n\u00c1\u0003\u00c1\u0003\u00c1\u0003\u00c1\u0005\u00c1",
+ "\u107d\n\u00c1\u0003\u00c1\u0003\u00c1\u0003\u00c1\u0005\u00c1\u1082",
+ "\n\u00c1\u0003\u00c1\u0005\u00c1\u1085\n\u00c1\u0003\u00c1\u0003\u00c1",
+ "\u0003\u00c2\u0003\u00c2\u0003\u00c2\u0003\u00c2\u0003\u00c3\u0003\u00c3",
+ "\u0003\u00c3\u0005\u00c3\u1090\n\u00c3\u0003\u00c3\u0003\u00c3\u0003",
+ "\u00c3\u0003\u00c3\u0003\u00c3\u0003\u00c3\u0003\u00c4\u0003\u00c4\u0003",
+ "\u00c5\u0003\u00c5\u0003\u00c6\u0003\u00c6\u0003\u00c6\u0003\u00c6\u0003",
+ "\u00c6\u0005\u00c6\u10a1\n\u00c6\u0003\u00c6\u0007\u00c6\u10a4\n\u00c6",
+ "\f\u00c6\u000e\u00c6\u10a7\u000b\u00c6\u0003\u00c6\u0003\u00c6\u0005",
+ "\u00c6\u10ab\n\u00c6\u0003\u00c6\u0005\u00c6\u10ae\n\u00c6\u0003\u00c6",
+ "\u0003\u00c6\u0003\u00c7\u0003\u00c7\u0003\u00c7\u0003\u00c8\u0003\u00c8",
+ "\u0003\u00c8\u0003\u00c9\u0003\u00c9\u0003\u00c9\u0003\u00c9\u0003\u00ca",
+ "\u0003\u00ca\u0003\u00cb\u0003\u00cb\u0003\u00cb\u0005\u00cb\u10c1\n",
+ "\u00cb\u0003\u00cb\u0003\u00cb\u0003\u00cc\u0003\u00cc\u0003\u00cc\u0003",
+ "\u00cc\u0003\u00cc\u0003\u00cc\u0003\u00cc\u0003\u00cc\u0003\u00cc\u0003",
+ "\u00cc\u0003\u00cc\u0003\u00cc\u0003\u00cc\u0003\u00cc\u0003\u00cc\u0003",
+ "\u00cc\u0003\u00cc\u0003\u00cc\u0003\u00cc\u0003\u00cc\u0007\u00cc\u10d9",
+ "\n\u00cc\f\u00cc\u000e\u00cc\u10dc\u000b\u00cc\u0003\u00cc\u0003\u00cc",
+ "\u0005\u00cc\u10e0\n\u00cc\u0003\u00cc\u0003\u00cc\u0003\u00cc\u0003",
+ "\u00cc\u0005\u00cc\u10e6\n\u00cc\u0005\u00cc\u10e8\n\u00cc\u0003\u00cc",
+ "\u0003\u00cc\u0003\u00cd\u0003\u00cd\u0003\u00cd\u0003\u00ce\u0003\u00ce",
+ "\u0003\u00ce\u0005\u00ce\u10f2\n\u00ce\u0003\u00ce\u0005\u00ce\u10f5",
+ "\n\u00ce\u0003\u00ce\u0005\u00ce\u10f8\n\u00ce\u0003\u00ce\u0005\u00ce",
+ "\u10fb\n\u00ce\u0003\u00ce\u0005\u00ce\u10fe\n\u00ce\u0003\u00ce\u0003",
+ "\u00ce\u0003\u00ce\u0005\u00ce\u1103\n\u00ce\u0003\u00ce\u0003\u00ce",
+ "\u0003\u00ce\u0005\u00ce\u1108\n\u00ce\u0003\u00cf\u0003\u00cf\u0005",
+ "\u00cf\u110c\n\u00cf\u0003\u00d0\u0003\u00d0\u0005\u00d0\u1110\n\u00d0",
+ "\u0003\u00d0\u0003\u00d0\u0007\u00d0\u1114\n\u00d0\f\u00d0\u000e\u00d0",
+ "\u1117\u000b\u00d0\u0003\u00d0\u0005\u00d0\u111a\n\u00d0\u0006\u00d0",
+ "\u111c\n\u00d0\r\u00d0\u000e\u00d0\u111d\u0003\u00d0\u0003\u00d0\u0003",
+ "\u00d1\u0003\u00d1\u0003\u00d1\u0003\u00d1\u0003\u00d1\u0003\u00d1\u0003",
+ "\u00d1\u0003\u00d1\u0003\u00d1\u0003\u00d1\u0007\u00d1\u112c\n\u00d1",
+ "\f\u00d1\u000e\u00d1\u112f\u000b\u00d1\u0003\u00d1\u0005\u00d1\u1132",
+ "\n\u00d1\u0003\u00d1\u0003\u00d1\u0005\u00d1\u1136\n\u00d1\u0003\u00d1",
+ "\u0003\u00d1\u0005\u00d1\u113a\n\u00d1\u0003\u00d1\u0003\u00d1\u0003",
+ "\u00d1\u0005\u00d1\u113f\n\u00d1\u0006\u00d1\u1141\n\u00d1\r\u00d1\u000e",
+ "\u00d1\u1142\u0003\u00d1\u0003\u00d1\u0007\u00d1\u1147\n\u00d1\f\u00d1",
+ "\u000e\u00d1\u114a\u000b\u00d1\u0003\u00d2\u0003\u00d2\u0005\u00d2\u114e",
+ "\n\u00d2\u0003\u00d2\u0005\u00d2\u1151\n\u00d2\u0003\u00d2\u0003\u00d2",
+ "\u0003\u00d2\u0003\u00d2\u0003\u00d2\u0003\u00d2\u0005\u00d2\u1159\n",
+ "\u00d2\u0003\u00d2\u0005\u00d2\u115c\n\u00d2\u0003\u00d3\u0003\u00d3",
+ "\u0003\u00d3\u0003\u00d3\u0003\u00d3\u0003\u00d3\u0003\u00d3\u0005\u00d3",
+ "\u1165\n\u00d3\u0003\u00d3\u0003\u00d3\u0005\u00d3\u1169\n\u00d3\u0005",
+ "\u00d3\u116b\n\u00d3\u0003\u00d4\u0003\u00d4\u0003\u00d4\u0003\u00d4",
+ "\u0003\u00d4\u0003\u00d4\u0003\u00d4\u0003\u00d4\u0003\u00d4\u0003\u00d4",
+ "\u0003\u00d4\u0003\u00d4\u0003\u00d4\u0003\u00d4\u0003\u00d4\u0003\u00d4",
+ "\u0003\u00d4\u0005\u00d4\u117e\n\u00d4\u0003\u00d4\u0003\u00d4\u0003",
+ "\u00d4\u0003\u00d4\u0005\u00d4\u1184\n\u00d4\u0003\u00d4\u0006\u00d4",
+ "\u1187\n\u00d4\r\u00d4\u000e\u00d4\u1188\u0003\u00d4\u0003\u00d4\u0003",
+ "\u00d4\u0005\u00d4\u118e\n\u00d4\u0005\u00d4\u1190\n\u00d4\u0003\u00d5",
+ "\u0003\u00d5\u0005\u00d5\u1194\n\u00d5\u0003\u00d5\u0003\u00d5\u0003",
+ "\u00d5\u0003\u00d5\u0003\u00d5\u0007\u00d5\u119b\n\u00d5\f\u00d5\u000e",
+ "\u00d5\u119e\u000b\u00d5\u0003\u00d5\u0003\u00d5\u0003\u00d5\u0003\u00d5",
+ "\u0003\u00d5\u0003\u00d5\u0003\u00d5\u0003\u00d5\u0007\u00d5\u11a8\n",
+ "\u00d5\f\u00d5\u000e\u00d5\u11ab\u000b\u00d5\u0003\u00d5\u0003\u00d5",
+ "\u0003\u00d5\u0003\u00d5\u0003\u00d5\u0003\u00d5\u0003\u00d5\u0003\u00d5",
+ "\u0005\u00d5\u11b5\n\u00d5\u0003\u00d5\u0005\u00d5\u11b8\n\u00d5\u0003",
+ "\u00d6\u0005\u00d6\u11bb\n\u00d6\u0003\u00d6\u0003\u00d6\u0003\u00d6",
+ "\u0003\u00d6\u0003\u00d6\u0003\u00d6\u0003\u00d6\u0006\u00d6\u11c4\n",
+ "\u00d6\r\u00d6\u000e\u00d6\u11c5\u0003\u00d7\u0003\u00d7\u0003\u00d7",
+ "\u0003\u00d7\u0003\u00d7\u0005\u00d7\u11cd\n\u00d7\u0003\u00d7\u0005",
+ "\u00d7\u11d0\n\u00d7\u0003\u00d7\u0003\u00d7\u0003\u00d7\u0003\u00d7",
+ "\u0003\u00d7\u0003\u00d7\u0003\u00d7\u0003\u00d7\u0003\u00d7\u0003\u00d7",
+ "\u0005\u00d7\u11dc\n\u00d7\u0003\u00d7\u0003\u00d7\u0003\u00d7\u0003",
+ "\u00d7\u0003\u00d7\u0003\u00d7\u0003\u00d7\u0003\u00d7\u0003\u00d7\u0003",
+ "\u00d7\u0003\u00d7\u0003\u00d7\u0003\u00d7\u0005\u00d7\u11eb\n\u00d7",
+ "\u0003\u00d7\u0003\u00d7\u0003\u00d8\u0003\u00d8\u0003\u00d8\u0005\u00d8",
+ "\u11f2\n\u00d8\u0003\u00d8\u0003\u00d8\u0003\u00d8\u0003\u00d8\u0005",
+ "\u00d8\u11f8\n\u00d8\u0003\u00d8\u0003\u00d8\u0005\u00d8\u11fc\n\u00d8",
+ "\u0003\u00d8\u0003\u00d8\u0003\u00d8\u0003\u00d8\u0005\u00d8\u1202\n",
+ "\u00d8\u0003\u00d8\u0003\u00d8\u0005\u00d8\u1206\n\u00d8\u0003\u00d8",
+ "\u0003\u00d8\u0003\u00d8\u0003\u00d8\u0003\u00d8\u0007\u00d8\u120d\n",
+ "\u00d8\f\u00d8\u000e\u00d8\u1210\u000b\u00d8\u0003\u00d8\u0003\u00d8",
+ "\u0003\u00d8\u0003\u00d8\u0007\u00d8\u1216\n\u00d8\f\u00d8\u000e\u00d8",
+ "\u1219\u000b\u00d8\u0003\u00d8\u0003\u00d8\u0005\u00d8\u121d\n\u00d8",
+ "\u0003\u00d9\u0003\u00d9\u0005\u00d9\u1221\n\u00d9\u0003\u00d9\u0003",
+ "\u00d9\u0005\u00d9\u1225\n\u00d9\u0003\u00da\u0003\u00da\u0003\u00da",
+ "\u0003\u00da\u0005\u00da\u122b\n\u00da\u0003\u00db\u0003\u00db\u0003",
+ "\u00dc\u0003\u00dc\u0003\u00dc\u0005\u00dc\u1232\n\u00dc\u0003\u00dc",
+ "\u0003\u00dc\u0003\u00dc\u0003\u00dc\u0005\u00dc\u1238\n\u00dc\u0003",
+ "\u00dd\u0003\u00dd\u0003\u00dd\u0003\u00de\u0003\u00de\u0003\u00df\u0003",
+ "\u00df\u0005\u00df\u1241\n\u00df\u0003\u00df\u0003\u00df\u0003\u00df",
+ "\u0005\u00df\u1246\n\u00df\u0003\u00df\u0003\u00df\u0003\u00e0\u0003",
+ "\u00e0\u0003\u00e0\u0005\u00e0\u124d\n\u00e0\u0003\u00e0\u0003\u00e0",
+ "\u0003\u00e0\u0003\u00e0\u0003\u00e0\u0003\u00e0\u0003\u00e0\u0003\u00e0",
+ "\u0003\u00e0\u0003\u00e0\u0003\u00e0\u0003\u00e0\u0003\u00e0\u0003\u00e0",
+ "\u0003\u00e0\u0007\u00e0\u125e\n\u00e0\f\u00e0\u000e\u00e0\u1261\u000b",
+ "\u00e0\u0003\u00e1\u0003\u00e1\u0003\u00e1\u0003\u00e2\u0003\u00e2\u0003",
+ "\u00e3\u0003\u00e3\u0003\u00e3\u0003\u00e3\u0003\u00e3\u0003\u00e3\u0003",
+ "\u00e3\u0005\u00e3\u126f\n\u00e3\u0005\u00e3\u1271\n\u00e3\u0003\u00e4",
+ "\u0003\u00e4\u0003\u00e4\u0003\u00e4\u0003\u00e4\u0003\u00e5\u0003\u00e5",
+ "\u0003\u00e5\u0003\u00e5\u0005\u00e5\u127c\n\u00e5\u0003\u00e5\u0005",
+ "\u00e5\u127f\n\u00e5\u0003\u00e5\u0005\u00e5\u1282\n\u00e5\u0003\u00e6",
+ "\u0003\u00e6\u0003\u00e6\u0003\u00e6\u0005\u00e6\u1288\n\u00e6\u0003",
+ "\u00e6\u0005\u00e6\u128b\n\u00e6\u0003\u00e6\u0005\u00e6\u128e\n\u00e6",
+ "\u0003\u00e7\u0003\u00e7\u0003\u00e7\u0003\u00e8\u0003\u00e8\u0005\u00e8",
+ "\u1295\n\u00e8\u0003\u00e8\u0003\u00e8\u0003\u00e9\u0003\u00e9\u0005",
+ "\u00e9\u129b\n\u00e9\u0003\u00e9\u0003\u00e9\u0003\u00ea\u0005\u00ea",
+ "\u12a0\n\u00ea\u0003\u00ea\u0003\u00ea\u0005\u00ea\u12a4\n\u00ea\u0003",
+ "\u00ea\u0005\u00ea\u12a7\n\u00ea\u0003\u00ea\u0005\u00ea\u12aa\n\u00ea",
+ "\u0003\u00eb\u0003\u00eb\u0003\u00eb\u0003\u00eb\u0005\u00eb\u12b0\n",
+ "\u00eb\u0003\u00eb\u0006\u00eb\u12b3\n\u00eb\r\u00eb\u000e\u00eb\u12b4",
+ "\u0003\u00eb\u0005\u00eb\u12b8\n\u00eb\u0003\u00eb\u0003\u00eb\u0005",
+ "\u00eb\u12bc\n\u00eb\u0003\u00eb\u0003\u00eb\u0005\u00eb\u12c0\n\u00eb",
+ "\u0003\u00eb\u0005\u00eb\u12c3\n\u00eb\u0003\u00ec\u0003\u00ec\u0003",
+ "\u00ec\u0003\u00ec\u0003\u00ec\u0005\u00ec\u12ca\n\u00ec\u0003\u00ec",
+ "\u0005\u00ec\u12cd\n\u00ec\u0005\u00ec\u12cf\n\u00ec\u0003\u00ed\u0003",
+ "\u00ed\u0003\u00ed\u0005\u00ed\u12d4\n\u00ed\u0003\u00ee\u0003\u00ee",
+ "\u0003\u00ee\u0003\u00ef\u0003\u00ef\u0003\u00ef\u0005\u00ef\u12dc\n",
+ "\u00ef\u0005\u00ef\u12de\n\u00ef\u0003\u00f0\u0003\u00f0\u0003\u00f0",
+ "\u0003\u00f0\u0003\u00f0\u0003\u00f0\u0003\u00f0\u0003\u00f0\u0003\u00f0",
+ "\u0003\u00f0\u0007\u00f0\u12ea\n\u00f0\f\u00f0\u000e\u00f0\u12ed\u000b",
+ "\u00f0\u0003\u00f0\u0003\u00f0\u0003\u00f0\u0007\u00f0\u12f2\n\u00f0",
+ "\f\u00f0\u000e\u00f0\u12f5\u000b\u00f0\u0003\u00f0\u0003\u00f0\u0003",
+ "\u00f0\u0003\u00f0\u0003\u00f0\u0003\u00f0\u0005\u00f0\u12fd\n\u00f0",
+ "\u0003\u00f0\u0005\u00f0\u1300\n\u00f0\u0003\u00f0\u0003\u00f0\u0003",
+ "\u00f0\u0005\u00f0\u1305\n\u00f0\u0003\u00f0\u0005\u00f0\u1308\n\u00f0",
+ "\u0003\u00f0\u0003\u00f0\u0003\u00f0\u0003\u00f0\u0003\u00f0\u0003\u00f0",
+ "\u0003\u00f0\u0005\u00f0\u1311\n\u00f0\u0003\u00f0\u0003\u00f0\u0003",
+ "\u00f1\u0003\u00f1\u0003\u00f2\u0003\u00f2\u0003\u00f2\u0003\u00f2\u0003",
+ "\u00f2\u0003\u00f2\u0003\u00f2\u0003\u00f2\u0003\u00f2\u0003\u00f2\u0003",
+ "\u00f2\u0003\u00f2\u0003\u00f2\u0003\u00f2\u0003\u00f2\u0003\u00f2\u0005",
+ "\u00f2\u1327\n\u00f2\u0003\u00f2\u0003\u00f2\u0003\u00f2\u0003\u00f2",
+ "\u0005\u00f2\u132d\n\u00f2\u0003\u00f2\u0003\u00f2\u0003\u00f2\u0006",
+ "\u00f2\u1332\n\u00f2\r\u00f2\u000e\u00f2\u1333\u0003\u00f3\u0003\u00f3",
+ "\u0003\u00f4\u0003\u00f4\u0003\u00f4\u0003\u00f4\u0003\u00f4\u0003\u00f4",
+ "\u0005\u00f4\u133e\n\u00f4\u0003\u00f4\u0003\u00f4\u0003\u00f5\u0003",
+ "\u00f5\u0003\u00f5\u0003\u00f5\u0003\u00f5\u0005\u00f5\u1347\n\u00f5",
+ "\u0003\u00f5\u0003\u00f5\u0003\u00f5\u0003\u00f5\u0003\u00f5\u0003\u00f5",
+ "\u0003\u00f5\u0003\u00f5\u0003\u00f5\u0003\u00f5\u0005\u00f5\u1353\n",
+ "\u00f5\u0003\u00f5\u0005\u00f5\u1356\n\u00f5\u0003\u00f5\u0005\u00f5",
+ "\u1359\n\u00f5\u0003\u00f5\u0003\u00f5\u0003\u00f6\u0003\u00f6\u0003",
+ "\u00f6\u0003\u00f6\u0003\u00f6\u0003\u00f7\u0003\u00f7\u0003\u00f7\u0005",
+ "\u00f7\u1365\n\u00f7\u0003\u00f8\u0003\u00f8\u0003\u00f8\u0003\u00f8",
+ "\u0003\u00f8\u0003\u00f8\u0003\u00f8\u0005\u00f8\u136e\n\u00f8\u0003",
+ "\u00f8\u0003\u00f8\u0003\u00f8\u0003\u00f8\u0007\u00f8\u1374\n\u00f8",
+ "\f\u00f8\u000e\u00f8\u1377\u000b\u00f8\u0003\u00f8\u0003\u00f8\u0005",
+ "\u00f8\u137b\n\u00f8\u0003\u00f8\u0003\u00f8\u0003\u00f8\u0003\u00f8",
+ "\u0007\u00f8\u1381\n\u00f8\f\u00f8\u000e\u00f8\u1384\u000b\u00f8\u0003",
+ "\u00f8\u0003\u00f8\u0005\u00f8\u1388\n\u00f8\u0003\u00f8\u0005\u00f8",
+ "\u138b\n\u00f8\u0003\u00f9\u0003\u00f9\u0003\u00fa\u0003\u00fa\u0003",
+ "\u00fb\u0003\u00fb\u0003\u00fc\u0003\u00fc\u0003\u00fd\u0003\u00fd\u0003",
+ "\u00fd\u0003\u00fd\u0003\u00fd\u0003\u00fd\u0003\u00fd\u0003\u00fd\u0003",
+ "\u00fd\u0003\u00fd\u0003\u00fd\u0006\u00fd\u13a0\n\u00fd\r\u00fd\u000e",
+ "\u00fd\u13a1\u0005\u00fd\u13a4\n\u00fd\u0003\u00fd\u0005\u00fd\u13a7",
+ "\n\u00fd\u0003\u00fd\u0003\u00fd\u0005\u00fd\u13ab\n\u00fd\u0003\u00fd",
+ "\u0003\u00fd\u0003\u00fd\u0003\u00fd\u0003\u00fd\u0003\u00fd\u0003\u00fd",
+ "\u0003\u00fd\u0005\u00fd\u13b5\n\u00fd\u0007\u00fd\u13b7\n\u00fd\f\u00fd",
+ "\u000e\u00fd\u13ba\u000b\u00fd\u0003\u00fd\u0003\u00fd\u0005\u00fd\u13be",
+ "\n\u00fd\u0003\u00fd\u0006\u00fd\u13c1\n\u00fd\r\u00fd\u000e\u00fd\u13c2",
+ "\u0003\u00fd\u0003\u00fd\u0005\u00fd\u13c7\n\u00fd\u0005\u00fd\u13c9",
+ "\n\u00fd\u0003\u00fd\u0005\u00fd\u13cc\n\u00fd\u0007\u00fd\u13ce\n\u00fd",
+ "\f\u00fd\u000e\u00fd\u13d1\u000b\u00fd\u0003\u00fe\u0003\u00fe\u0003",
+ "\u00fe\u0003\u00fe\u0003\u00ff\u0003\u00ff\u0003\u00ff\u0005\u00ff\u13da",
+ "\n\u00ff\u0003\u0100\u0003\u0100\u0003\u0100\u0003\u0100\u0003\u0100",
+ "\u0003\u0100\u0005\u0100\u13e2\n\u0100\u0003\u0100\u0003\u0100\u0003",
+ "\u0100\u0003\u0100\u0003\u0100\u0003\u0100\u0005\u0100\u13ea\n\u0100",
+ "\u0003\u0100\u0005\u0100\u13ed\n\u0100\u0003\u0100\u0005\u0100\u13f0",
+ "\n\u0100\u0003\u0100\u0005\u0100\u13f3\n\u0100\u0003\u0100\u0005\u0100",
+ "\u13f6\n\u0100\u0005\u0100\u13f8\n\u0100\u0003\u0100\u0003\u0100\u0003",
+ "\u0100\u0003\u0100\u0003\u0100\u0006\u0100\u13ff\n\u0100\r\u0100\u000e",
+ "\u0100\u1400\u0007\u0100\u1403\n\u0100\f\u0100\u000e\u0100\u1406\u000b",
+ "\u0100\u0003\u0100\u0003\u0100\u0003\u0100\u0005\u0100\u140b\n\u0100",
+ "\u0003\u0100\u0005\u0100\u140e\n\u0100\u0003\u0100\u0003\u0100\u0005",
+ "\u0100\u1412\n\u0100\u0003\u0100\u0003\u0100\u0003\u0100\u0005\u0100",
+ "\u1417\n\u0100\u0003\u0100\u0003\u0100\u0003\u0100\u0003\u0100\u0003",
+ "\u0101\u0003\u0101\u0003\u0101\u0003\u0101\u0003\u0101\u0003\u0101\u0003",
+ "\u0101\u0003\u0101\u0003\u0101\u0005\u0101\u1426\n\u0101\u0003\u0101",
+ "\u0003\u0101\u0003\u0101\u0003\u0101\u0005\u0101\u142c\n\u0101\u0003",
+ "\u0101\u0003\u0101\u0003\u0101\u0005\u0101\u1431\n\u0101\u0003\u0101",
+ "\u0003\u0101\u0003\u0101\u0005\u0101\u1436\n\u0101\u0003\u0101\u0003",
+ "\u0101\u0003\u0101\u0005\u0101\u143b\n\u0101\u0003\u0101\u0003\u0101",
+ "\u0003\u0101\u0006\u0101\u1440\n\u0101\r\u0101\u000e\u0101\u1441\u0005",
+ "\u0101\u1444\n\u0101\u0003\u0102\u0003\u0102\u0003\u0102\u0005\u0102",
+ "\u1449\n\u0102\u0003\u0102\u0003\u0102\u0003\u0102\u0003\u0102\u0003",
+ "\u0102\u0003\u0102\u0005\u0102\u1451\n\u0102\u0003\u0102\u0003\u0102",
+ "\u0003\u0102\u0003\u0102\u0003\u0102\u0005\u0102\u1458\n\u0102\u0003",
+ "\u0102\u0003\u0102\u0003\u0103\u0003\u0103\u0003\u0104\u0003\u0104\u0003",
+ "\u0104\u0003\u0104\u0003\u0104\u0003\u0104\u0003\u0104\u0005\u0104\u1465",
+ "\n\u0104\u0003\u0104\u0003\u0104\u0003\u0104\u0003\u0104\u0005\u0104",
+ "\u146b\n\u0104\u0007\u0104\u146d\n\u0104\f\u0104\u000e\u0104\u1470\u000b",
+ "\u0104\u0003\u0104\u0003\u0104\u0003\u0104\u0003\u0104\u0003\u0104\u0003",
+ "\u0104\u0003\u0104\u0003\u0104\u0003\u0104\u0005\u0104\u147b\n\u0104",
+ "\u0003\u0104\u0003\u0104\u0003\u0104\u0003\u0104\u0003\u0104\u0005\u0104",
+ "\u1482\n\u0104\u0007\u0104\u1484\n\u0104\f\u0104\u000e\u0104\u1487\u000b",
+ "\u0104\u0003\u0104\u0005\u0104\u148a\n\u0104\u0003\u0104\u0005\u0104",
+ "\u148d\n\u0104\u0003\u0104\u0005\u0104\u1490\n\u0104\u0003\u0104\u0003",
+ "\u0104\u0003\u0105\u0003\u0105\u0003\u0105\u0005\u0105\u1497\n\u0105",
+ "\u0003\u0105\u0003\u0105\u0003\u0105\u0003\u0105\u0003\u0105\u0005\u0105",
+ "\u149e\n\u0105\u0003\u0105\u0003\u0105\u0005\u0105\u14a2\n\u0105\u0003",
+ "\u0105\u0003\u0105\u0003\u0106\u0003\u0106\u0003\u0106\u0003\u0106\u0003",
+ "\u0106\u0003\u0106\u0005\u0106\u14ac\n\u0106\u0003\u0106\u0003\u0106",
+ "\u0005\u0106\u14b0\n\u0106\u0003\u0106\u0005\u0106\u14b3\n\u0106\u0003",
+ "\u0106\u0005\u0106\u14b6\n\u0106\u0003\u0106\u0003\u0106\u0003\u0106",
+ "\u0003\u0106\u0005\u0106\u14bc\n\u0106\u0003\u0106\u0005\u0106\u14bf",
+ "\n\u0106\u0003\u0106\u0005\u0106\u14c2\n\u0106\u0003\u0106\u0005\u0106",
+ "\u14c5\n\u0106\u0003\u0106\u0005\u0106\u14c8\n\u0106\u0003\u0106\u0005",
+ "\u0106\u14cb\n\u0106\u0003\u0106\u0005\u0106\u14ce\n\u0106\u0003\u0106",
+ "\u0003\u0106\u0003\u0106\u0003\u0106\u0003\u0106\u0005\u0106\u14d5\n",
+ "\u0106\u0003\u0106\u0005\u0106\u14d8\n\u0106\u0003\u0106\u0005\u0106",
+ "\u14db\n\u0106\u0003\u0106\u0006\u0106\u14de\n\u0106\r\u0106\u000e\u0106",
+ "\u14df\u0005\u0106\u14e2\n\u0106\u0003\u0106\u0005\u0106\u14e5\n\u0106",
+ "\u0003\u0106\u0005\u0106\u14e8\n\u0106\u0003\u0107\u0003\u0107\u0003",
+ "\u0107\u0003\u0107\u0003\u0107\u0003\u0107\u0003\u0107\u0003\u0107\u0003",
+ "\u0107\u0003\u0107\u0003\u0107\u0003\u0107\u0003\u0107\u0003\u0107\u0003",
+ "\u0107\u0007\u0107\u14f9\n\u0107\f\u0107\u000e\u0107\u14fc\u000b\u0107",
+ "\u0003\u0107\u0003\u0107\u0003\u0108\u0003\u0108\u0005\u0108\u1502\n",
+ "\u0108\u0003\u0108\u0003\u0108\u0005\u0108\u1506\n\u0108\u0003\u0108",
+ "\u0005\u0108\u1509\n\u0108\u0003\u0109\u0003\u0109\u0003\u0109\u0003",
+ "\u0109\u0003\u0109\u0005\u0109\u1510\n\u0109\u0003\u0109\u0003\u0109",
+ "\u0003\u0109\u0005\u0109\u1515\n\u0109\u0003\u0109\u0003\u0109\u0003",
+ "\u0109\u0003\u0109\u0003\u0109\u0005\u0109\u151c\n\u0109\u0003\u0109",
+ "\u0003\u0109\u0003\u0109\u0003\u0109\u0005\u0109\u1522\n\u0109\u0005",
+ "\u0109\u1524\n\u0109\u0003\u0109\u0003\u0109\u0003\u0109\u0003\u0109",
+ "\u0005\u0109\u152a\n\u0109\u0003\u010a\u0003\u010a\u0005\u010a\u152e",
+ "\n\u010a\u0003\u010a\u0003\u010a\u0003\u010a\u0003\u010a\u0003\u010a",
+ "\u0005\u010a\u1535\n\u010a\u0003\u010a\u0003\u010a\u0003\u010a\u0005",
+ "\u010a\u153a\n\u010a\u0003\u010b\u0003\u010b\u0003\u010b\u0005\u010b",
+ "\u153f\n\u010b\u0003\u010b\u0003\u010b\u0003\u010b\u0003\u010b\u0007",
+ "\u010b\u1545\n\u010b\f\u010b\u000e\u010b\u1548\u000b\u010b\u0003\u010b",
+ "\u0003\u010b\u0005\u010b\u154c\n\u010b\u0003\u010b\u0003\u010b\u0003",
+ "\u010b\u0003\u010b\u0005\u010b\u1552\n\u010b\u0003\u010b\u0005\u010b",
+ "\u1555\n\u010b\u0003\u010b\u0005\u010b\u1558\n\u010b\u0003\u010b\u0005",
+ "\u010b\u155b\n\u010b\u0003\u010b\u0005\u010b\u155e\n\u010b\u0003\u010b",
+ "\u0005\u010b\u1561\n\u010b\u0003\u010b\u0005\u010b\u1564\n\u010b\u0003",
+ "\u010b\u0003\u010b\u0003\u010b\u0003\u010b\u0003\u010b\u0005\u010b\u156b",
+ "\n\u010b\u0003\u010b\u0005\u010b\u156e\n\u010b\u0003\u010b\u0005\u010b",
+ "\u1571\n\u010b\u0003\u010b\u0006\u010b\u1574\n\u010b\r\u010b\u000e\u010b",
+ "\u1575\u0005\u010b\u1578\n\u010b\u0003\u010b\u0005\u010b\u157b\n\u010b",
+ "\u0003\u010b\u0005\u010b\u157e\n\u010b\u0003\u010c\u0003\u010c\u0005",
+ "\u010c\u1582\n\u010c\u0003\u010c\u0003\u010c\u0003\u010c\u0003\u010c",
+ "\u0006\u010c\u1588\n\u010c\r\u010c\u000e\u010c\u1589\u0003\u010c\u0003",
+ "\u010c\u0003\u010d\u0003\u010d\u0003\u010d\u0003\u010d\u0003\u010d\u0003",
+ "\u010d\u0003\u010d\u0005\u010d\u1595\n\u010d\u0003\u010e\u0003\u010e",
+ "\u0005\u010e\u1599\n\u010e\u0003\u010e\u0003\u010e\u0005\u010e\u159d",
+ "\n\u010e\u0003\u010e\u0003\u010e\u0003\u010e\u0007\u010e\u15a2\n\u010e",
+ "\f\u010e\u000e\u010e\u15a5\u000b\u010e\u0003\u010e\u0005\u010e\u15a8",
+ "\n\u010e\u0003\u010e\u0003\u010e\u0003\u010e\u0005\u010e\u15ad\n\u010e",
+ "\u0003\u010f\u0005\u010f\u15b0\n\u010f\u0003\u010f\u0003\u010f\u0003",
+ "\u010f\u0003\u010f\u0003\u010f\u0003\u0110\u0003\u0110\u0003\u0110\u0003",
+ "\u0110\u0007\u0110\u15bb\n\u0110\f\u0110\u000e\u0110\u15be\u000b\u0110",
+ "\u0003\u0110\u0003\u0110\u0005\u0110\u15c2\n\u0110\u0003\u0110\u0003",
+ "\u0110\u0003\u0110\u0003\u0110\u0005\u0110\u15c8\n\u0110\u0003\u0110",
+ "\u0005\u0110\u15cb\n\u0110\u0003\u0110\u0005\u0110\u15ce\n\u0110\u0003",
+ "\u0110\u0005\u0110\u15d1\n\u0110\u0003\u0110\u0005\u0110\u15d4\n\u0110",
+ "\u0003\u0110\u0003\u0110\u0003\u0110\u0003\u0110\u0003\u0110\u0005\u0110",
+ "\u15db\n\u0110\u0003\u0110\u0005\u0110\u15de\n\u0110\u0003\u0110\u0005",
+ "\u0110\u15e1\n\u0110\u0003\u0110\u0006\u0110\u15e4\n\u0110\r\u0110\u000e",
+ "\u0110\u15e5\u0005\u0110\u15e8\n\u0110\u0003\u0110\u0005\u0110\u15eb",
+ "\n\u0110\u0003\u0110\u0005\u0110\u15ee\n\u0110\u0003\u0111\u0003\u0111",
+ "\u0003\u0111\u0003\u0111\u0003\u0111\u0005\u0111\u15f5\n\u0111\u0003",
+ "\u0112\u0003\u0112\u0003\u0112\u0003\u0112\u0003\u0112\u0003\u0112\u0003",
+ "\u0112\u0003\u0112\u0005\u0112\u15ff\n\u0112\u0003\u0113\u0003\u0113",
+ "\u0003\u0113\u0003\u0113\u0003\u0113\u0003\u0113\u0003\u0113\u0007\u0113",
+ "\u1608\n\u0113\f\u0113\u000e\u0113\u160b\u000b\u0113\u0003\u0113\u0003",
+ "\u0113\u0003\u0113\u0003\u0113\u0003\u0113\u0003\u0113\u0003\u0113\u0003",
+ "\u0113\u0003\u0113\u0003\u0113\u0003\u0113\u0007\u0113\u1618\n\u0113",
+ "\f\u0113\u000e\u0113\u161b\u000b\u0113\u0003\u0113\u0003\u0113\u0005",
+ "\u0113\u161f\n\u0113\u0005\u0113\u1621\n\u0113\u0003\u0113\u0003\u0113",
+ "\u0003\u0113\u0005\u0113\u1626\n\u0113\u0003\u0113\u0003\u0113\u0003",
+ "\u0113\u0003\u0113\u0003\u0113\u0005\u0113\u162d\n\u0113\u0003\u0113",
+ "\u0003\u0113\u0003\u0113\u0007\u0113\u1632\n\u0113\f\u0113\u000e\u0113",
+ "\u1635\u000b\u0113\u0003\u0113\u0003\u0113\u0003\u0114\u0003\u0114\u0003",
+ "\u0114\u0003\u0114\u0003\u0114\u0003\u0114\u0003\u0114\u0003\u0114\u0003",
+ "\u0114\u0005\u0114\u1642\n\u0114\u0003\u0114\u0003\u0114\u0003\u0114",
+ "\u0003\u0114\u0003\u0114\u0005\u0114\u1649\n\u0114\u0003\u0114\u0003",
+ "\u0114\u0003\u0114\u0007\u0114\u164e\n\u0114\f\u0114\u000e\u0114\u1651",
+ "\u000b\u0114\u0003\u0114\u0003\u0114\u0003\u0115\u0003\u0115\u0003\u0115",
+ "\u0003\u0115\u0003\u0115\u0003\u0115\u0003\u0115\u0007\u0115\u165c\n",
+ "\u0115\f\u0115\u000e\u0115\u165f\u000b\u0115\u0003\u0115\u0003\u0115",
+ "\u0003\u0115\u0005\u0115\u1664\n\u0115\u0003\u0116\u0003\u0116\u0003",
+ "\u0116\u0005\u0116\u1669\n\u0116\u0003\u0116\u0005\u0116\u166c\n\u0116",
+ "\u0003\u0116\u0003\u0116\u0003\u0116\u0005\u0116\u1671\n\u0116\u0003",
+ "\u0116\u0005\u0116\u1674\n\u0116\u0007\u0116\u1676\n\u0116\f\u0116\u000e",
+ "\u0116\u1679\u000b\u0116\u0003\u0116\u0003\u0116\u0003\u0117\u0003\u0117",
+ "\u0003\u0117\u0003\u0117\u0003\u0117\u0003\u0117\u0003\u0117\u0003\u0117",
+ "\u0007\u0117\u1685\n\u0117\f\u0117\u000e\u0117\u1688\u000b\u0117\u0003",
+ "\u0117\u0003\u0117\u0005\u0117\u168c\n\u0117\u0003\u0117\u0003\u0117",
+ "\u0005\u0117\u1690\n\u0117\u0003\u0117\u0003\u0117\u0003\u0117\u0003",
+ "\u0117\u0003\u0117\u0003\u0117\u0003\u0117\u0007\u0117\u1699\n\u0117",
+ "\f\u0117\u000e\u0117\u169c\u000b\u0117\u0003\u0117\u0003\u0117\u0005",
+ "\u0117\u16a0\n\u0117\u0003\u0118\u0003\u0118\u0003\u0119\u0003\u0119",
+ "\u0003\u0119\u0003\u0119\u0003\u0119\u0003\u0119\u0003\u0119\u0007\u0119",
+ "\u16ab\n\u0119\f\u0119\u000e\u0119\u16ae\u000b\u0119\u0003\u0119\u0003",
+ "\u0119\u0003\u0119\u0003\u0119\u0003\u0119\u0003\u0119\u0003\u0119\u0003",
+ "\u0119\u0003\u0119\u0003\u0119\u0003\u0119\u0007\u0119\u16bb\n\u0119",
+ "\f\u0119\u000e\u0119\u16be\u000b\u0119\u0003\u0119\u0003\u0119\u0005",
+ "\u0119\u16c2\n\u0119\u0005\u0119\u16c4\n\u0119\u0003\u0119\u0003\u0119",
+ "\u0003\u0119\u0005\u0119\u16c9\n\u0119\u0003\u0119\u0003\u0119\u0003",
+ "\u0119\u0003\u0119\u0007\u0119\u16cf\n\u0119\f\u0119\u000e\u0119\u16d2",
+ "\u000b\u0119\u0003\u0119\u0003\u0119\u0003\u011a\u0003\u011a\u0003\u011a",
+ "\u0003\u011a\u0003\u011a\u0003\u011a\u0003\u011a\u0003\u011a\u0003\u011a",
+ "\u0005\u011a\u16df\n\u011a\u0003\u011a\u0003\u011a\u0003\u011a\u0003",
+ "\u011a\u0007\u011a\u16e5\n\u011a\f\u011a\u000e\u011a\u16e8\u000b\u011a",
+ "\u0003\u011a\u0003\u011a\u0003\u011b\u0003\u011b\u0003\u011b\u0003\u011b",
+ "\u0003\u011b\u0003\u011b\u0006\u011b\u16f2\n\u011b\r\u011b\u000e\u011b",
+ "\u16f3\u0003\u011b\u0003\u011b\u0003\u011b\u0003\u011b\u0005\u011b\u16fa",
+ "\n\u011b\u0003\u011b\u0003\u011b\u0005\u011b\u16fe\n\u011b\u0003\u011c",
+ "\u0003\u011c\u0003\u011c\u0003\u011c\u0003\u011c\u0003\u011c\u0003\u011c",
+ "\u0003\u011c\u0003\u011c\u0003\u011c\u0007\u011c\u170a\n\u011c\f\u011c",
+ "\u000e\u011c\u170d\u000b\u011c\u0003\u011c\u0003\u011c\u0005\u011c\u1711",
+ "\n\u011c\u0003\u011d\u0003\u011d\u0005\u011d\u1715\n\u011d\u0003\u011d",
+ "\u0003\u011d\u0003\u011e\u0003\u011e\u0003\u011e\u0003\u011e\u0003\u011e",
+ "\u0003\u011e\u0003\u011e\u0003\u011e\u0007\u011e\u1721\n\u011e\f\u011e",
+ "\u000e\u011e\u1724\u000b\u011e\u0005\u011e\u1726\n\u011e\u0003\u011f",
+ "\u0003\u011f\u0005\u011f\u172a\n\u011f\u0003\u011f\u0003\u011f\u0003",
+ "\u011f\u0003\u011f\u0003\u011f\u0003\u011f\u0007\u011f\u1732\n\u011f",
+ "\f\u011f\u000e\u011f\u1735\u000b\u011f\u0003\u011f\u0003\u011f\u0003",
+ "\u011f\u0007\u011f\u173a\n\u011f\f\u011f\u000e\u011f\u173d\u000b\u011f",
+ "\u0003\u011f\u0003\u011f\u0003\u011f\u0007\u011f\u1742\n\u011f\f\u011f",
+ "\u000e\u011f\u1745\u000b\u011f\u0005\u011f\u1747\n\u011f\u0003\u011f",
+ "\u0003\u011f\u0003\u011f\u0005\u011f\u174c\n\u011f\u0005\u011f\u174e",
+ "\n\u011f\u0003\u0120\u0003\u0120\u0005\u0120\u1752\n\u0120\u0003\u0120",
+ "\u0003\u0120\u0003\u0120\u0003\u0120\u0003\u0120\u0003\u0120\u0007\u0120",
+ "\u175a\n\u0120\f\u0120\u000e\u0120\u175d\u000b\u0120\u0003\u0120\u0003",
+ "\u0120\u0003\u0120\u0007\u0120\u1762\n\u0120\f\u0120\u000e\u0120\u1765",
+ "\u000b\u0120\u0003\u0120\u0003\u0120\u0003\u0120\u0007\u0120\u176a\n",
+ "\u0120\f\u0120\u000e\u0120\u176d\u000b\u0120\u0005\u0120\u176f\n\u0120",
+ "\u0003\u0120\u0003\u0120\u0003\u0120\u0005\u0120\u1774\n\u0120\u0005",
+ "\u0120\u1776\n\u0120\u0003\u0121\u0003\u0121\u0003\u0121\u0003\u0121",
+ "\u0003\u0121\u0003\u0121\u0007\u0121\u177e\n\u0121\f\u0121\u000e\u0121",
+ "\u1781\u000b\u0121\u0003\u0121\u0003\u0121\u0003\u0121\u0007\u0121\u1786",
+ "\n\u0121\f\u0121\u000e\u0121\u1789\u000b\u0121\u0003\u0121\u0003\u0121",
+ "\u0003\u0121\u0007\u0121\u178e\n\u0121\f\u0121\u000e\u0121\u1791\u000b",
+ "\u0121\u0005\u0121\u1793\n\u0121\u0003\u0121\u0003\u0121\u0003\u0121",
+ "\u0005\u0121\u1798\n\u0121\u0003\u0122\u0003\u0122\u0003\u0123\u0003",
+ "\u0123\u0003\u0123\u0003\u0123\u0003\u0123\u0003\u0123\u0003\u0123\u0007",
+ "\u0123\u17a3\n\u0123\f\u0123\u000e\u0123\u17a6\u000b\u0123\u0003\u0123",
+ "\u0003\u0123\u0005\u0123\u17aa\n\u0123\u0003\u0124\u0003\u0124\u0003",
+ "\u0124\u0003\u0124\u0003\u0124\u0003\u0124\u0003\u0124\u0005\u0124\u17b3",
+ "\n\u0124\u0003\u0125\u0003\u0125\u0003\u0125\u0003\u0125\u0003\u0125",
+ "\u0003\u0125\u0003\u0125\u0007\u0125\u17bc\n\u0125\f\u0125\u000e\u0125",
+ "\u17bf\u000b\u0125\u0003\u0125\u0003\u0125\u0003\u0125\u0003\u0125\u0003",
+ "\u0125\u0003\u0125\u0003\u0125\u0003\u0125\u0003\u0125\u0007\u0125\u17ca",
+ "\n\u0125\f\u0125\u000e\u0125\u17cd\u000b\u0125\u0003\u0125\u0003\u0125",
+ "\u0005\u0125\u17d1\n\u0125\u0003\u0125\u0005\u0125\u17d4\n\u0125\u0003",
+ "\u0126\u0003\u0126\u0003\u0127\u0003\u0127\u0005\u0127\u17da\n\u0127",
+ "\u0003\u0127\u0003\u0127\u0005\u0127\u17de\n\u0127\u0003\u0128\u0003",
+ "\u0128\u0005\u0128\u17e2\n\u0128\u0003\u0128\u0003\u0128\u0005\u0128",
+ "\u17e6\n\u0128\u0003\u0129\u0003\u0129\u0005\u0129\u17ea\n\u0129\u0003",
+ "\u0129\u0005\u0129\u17ed\n\u0129\u0003\u012a\u0003\u012a\u0003\u012a",
+ "\u0003\u012a\u0003\u012a\u0003\u012a\u0003\u012a\u0003\u012a\u0007\u012a",
+ "\u17f7\n\u012a\f\u012a\u000e\u012a\u17fa\u000b\u012a\u0003\u012a\u0003",
+ "\u012a\u0005\u012a\u17fe\n\u012a\u0003\u012b\u0003\u012b\u0003\u012b",
+ "\u0003\u012b\u0003\u012b\u0003\u012b\u0003\u012b\u0007\u012b\u1807\n",
+ "\u012b\f\u012b\u000e\u012b\u180a\u000b\u012b\u0003\u012b\u0003\u012b",
+ "\u0003\u012c\u0003\u012c\u0003\u012c\u0003\u012c\u0003\u012c\u0007\u012c",
+ "\u1813\n\u012c\f\u012c\u000e\u012c\u1816\u000b\u012c\u0003\u012c\u0005",
+ "\u012c\u1819\n\u012c\u0003\u012c\u0003\u012c\u0003\u012d\u0005\u012d",
+ "\u181e\n\u012d\u0003\u012d\u0005\u012d\u1821\n\u012d\u0003\u012d\u0003",
+ "\u012d\u0005\u012d\u1825\n\u012d\u0003\u012d\u0003\u012d\u0005\u012d",
+ "\u1829\n\u012d\u0005\u012d\u182b\n\u012d\u0003\u012d\u0003\u012d\u0003",
+ "\u012d\u0005\u012d\u1830\n\u012d\u0003\u012e\u0003\u012e\u0003\u012e",
+ "\u0003\u012e\u0003\u012e\u0005\u012e\u1837\n\u012e\u0003\u012e\u0003",
+ "\u012e\u0003\u012e\u0003\u012e\u0003\u012e\u0003\u012e\u0003\u012e\u0003",
+ "\u012e\u0005\u012e\u1841\n\u012e\u0003\u012e\u0003\u012e\u0003\u012e",
+ "\u0006\u012e\u1846\n\u012e\r\u012e\u000e\u012e\u1847\u0003\u012f\u0003",
+ "\u012f\u0003\u012f\u0003\u012f\u0003\u012f\u0003\u012f\u0003\u012f\u0005",
+ "\u012f\u1851\n\u012f\u0003\u012f\u0003\u012f\u0003\u012f\u0003\u012f",
+ "\u0003\u012f\u0003\u012f\u0005\u012f\u1859\n\u012f\u0003\u012f\u0003",
+ "\u012f\u0003\u012f\u0003\u012f\u0003\u012f\u0005\u012f\u1860\n\u012f",
+ "\u0003\u0130\u0003\u0130\u0003\u0130\u0005\u0130\u1865\n\u0130\u0003",
+ "\u0130\u0003\u0130\u0005\u0130\u1869\n\u0130\u0003\u0130\u0003\u0130",
+ "\u0003\u0130\u0005\u0130\u186e\n\u0130\u0003\u0130\u0003\u0130\u0003",
+ "\u0130\u0005\u0130\u1873\n\u0130\u0003\u0130\u0005\u0130\u1876\n\u0130",
+ "\u0003\u0130\u0005\u0130\u1879\n\u0130\u0003\u0130\u0005\u0130\u187c",
+ "\n\u0130\u0005\u0130\u187e\n\u0130\u0003\u0130\u0003\u0130\u0005\u0130",
+ "\u1882\n\u0130\u0003\u0130\u0005\u0130\u1885\n\u0130\u0003\u0131\u0003",
+ "\u0131\u0005\u0131\u1889\n\u0131\u0003\u0132\u0003\u0132\u0003\u0132",
+ "\u0003\u0132\u0003\u0132\u0003\u0132\u0005\u0132\u1891\n\u0132\u0005",
+ "\u0132\u1893\n\u0132\u0005\u0132\u1895\n\u0132\u0003\u0132\u0005\u0132",
+ "\u1898\n\u0132\u0003\u0133\u0003\u0133\u0003\u0133\u0003\u0133\u0003",
+ "\u0133\u0003\u0133\u0003\u0133\u0006\u0133\u18a1\n\u0133\r\u0133\u000e",
+ "\u0133\u18a2\u0003\u0134\u0003\u0134\u0003\u0134\u0003\u0134\u0003\u0134",
+ "\u0003\u0134\u0003\u0134\u0003\u0134\u0003\u0134\u0003\u0134\u0003\u0134",
+ "\u0003\u0134\u0003\u0134\u0003\u0134\u0003\u0134\u0003\u0134\u0003\u0134",
+ "\u0003\u0134\u0003\u0134\u0003\u0134\u0005\u0134\u18b9\n\u0134\u0003",
+ "\u0134\u0003\u0134\u0003\u0134\u0003\u0134\u0003\u0134\u0006\u0134\u18c0",
+ "\n\u0134\r\u0134\u000e\u0134\u18c1\u0003\u0134\u0003\u0134\u0003\u0135",
+ "\u0003\u0135\u0003\u0135\u0003\u0135\u0003\u0136\u0003\u0136\u0003\u0136",
+ "\u0003\u0136\u0006\u0136\u18ce\n\u0136\r\u0136\u000e\u0136\u18cf\u0003",
+ "\u0137\u0005\u0137\u18d3\n\u0137\u0003\u0137\u0003\u0137\u0005\u0137",
+ "\u18d7\n\u0137\u0003\u0138\u0005\u0138\u18da\n\u0138\u0003\u0138\u0003",
+ "\u0138\u0003\u0138\u0003\u0139\u0003\u0139\u0003\u0139\u0003\u0139\u0003",
+ "\u0139\u0003\u0139\u0005\u0139\u18e5\n\u0139\u0003\u013a\u0003\u013a",
+ "\u0003\u013b\u0003\u013b\u0003\u013b\u0003\u013b\u0003\u013b\u0005\u013b",
+ "\u18ee\n\u013b\u0003\u013b\u0003\u013b\u0003\u013b\u0003\u013b\u0003",
+ "\u013b\u0005\u013b\u18f5\n\u013b\u0007\u013b\u18f7\n\u013b\f\u013b\u000e",
+ "\u013b\u18fa\u000b\u013b\u0003\u013b\u0003\u013b\u0003\u013b\u0003\u013b",
+ "\u0003\u013b\u0003\u013b\u0005\u013b\u1902\n\u013b\u0003\u013b\u0003",
+ "\u013b\u0003\u013b\u0003\u013b\u0003\u013b\u0003\u013b\u0005\u013b\u190a",
+ "\n\u013b\u0007\u013b\u190c\n\u013b\f\u013b\u000e\u013b\u190f\u000b\u013b",
+ "\u0005\u013b\u1911\n\u013b\u0003\u013c\u0003\u013c\u0003\u013c\u0003",
+ "\u013c\u0003\u013c\u0003\u013c\u0005\u013c\u1919\n\u013c\u0003\u013c",
+ "\u0003\u013c\u0003\u013c\u0003\u013c\u0005\u013c\u191f\n\u013c\u0007",
+ "\u013c\u1921\n\u013c\f\u013c\u000e\u013c\u1924\u000b\u013c\u0003\u013c",
+ "\u0003\u013c\u0005\u013c\u1928\n\u013c\u0003\u013d\u0003\u013d\u0003",
+ "\u013d\u0005\u013d\u192d\n\u013d\u0003\u013d\u0003\u013d\u0003\u013d",
+ "\u0003\u013d\u0003\u013d\u0003\u013d\u0005\u013d\u1935\n\u013d\u0006",
+ "\u013d\u1937\n\u013d\r\u013d\u000e\u013d\u1938\u0003\u013d\u0003\u013d",
+ "\u0003\u013d\u0003\u013e\u0003\u013e\u0003\u013e\u0003\u013e\u0003\u013e",
+ "\u0003\u013e\u0003\u013e\u0003\u013e\u0003\u013e\u0006\u013e\u1947\n",
+ "\u013e\r\u013e\u000e\u013e\u1948\u0003\u013e\u0005\u013e\u194c\n\u013e",
+ "\u0003\u013f\u0003\u013f\u0003\u013f\u0003\u013f\u0005\u013f\u1952\n",
+ "\u013f\u0003\u0140\u0003\u0140\u0003\u0140\u0005\u0140\u1957\n\u0140",
+ "\u0003\u0140\u0005\u0140\u195a\n\u0140\u0003\u0141\u0005\u0141\u195d",
+ "\n\u0141\u0003\u0141\u0003\u0141\u0003\u0142\u0003\u0142\u0005\u0142",
+ "\u1963\n\u0142\u0003\u0142\u0003\u0142\u0003\u0142\u0003\u0142\u0003",
+ "\u0142\u0003\u0143\u0003\u0143\u0003\u0143\u0003\u0143\u0005\u0143\u196e",
+ "\n\u0143\u0003\u0143\u0003\u0143\u0003\u0144\u0003\u0144\u0003\u0144",
+ "\u0003\u0144\u0003\u0144\u0005\u0144\u1977\n\u0144\u0003\u0144\u0003",
+ "\u0144\u0003\u0145\u0003\u0145\u0003\u0145\u0003\u0145\u0003\u0145\u0003",
+ "\u0145\u0003\u0145\u0003\u0146\u0003\u0146\u0003\u0147\u0003\u0147\u0003",
+ "\u0148\u0003\u0148\u0003\u0148\u0005\u0148\u1989\n\u0148\u0003\u0148",
+ "\u0003\u0148\u0003\u0148\u0003\u0148\u0003\u0148\u0003\u0148\u0003\u0148",
+ "\u0005\u0148\u1992\n\u0148\u0003\u0148\u0003\u0148\u0003\u0148\u0005",
+ "\u0148\u1997\n\u0148\u0003\u0148\u0003\u0148\u0003\u0148\u0005\u0148",
+ "\u199c\n\u0148\u0003\u0148\u0003\u0148\u0003\u0148\u0003\u0148\u0005",
+ "\u0148\u19a2\n\u0148\u0003\u0148\u0003\u0148\u0003\u0148\u0003\u0148",
+ "\u0003\u0148\u0005\u0148\u19a9\n\u0148\u0003\u0148\u0003\u0148\u0003",
+ "\u0148\u0005\u0148\u19ae\n\u0148\u0005\u0148\u19b0\n\u0148\u0003\u0149",
+ "\u0003\u0149\u0003\u0149\u0003\u0149\u0003\u0149\u0003\u0149\u0003\u0149",
+ "\u0003\u014a\u0003\u014a\u0003\u014a\u0003\u014a\u0003\u014a\u0003\u014a",
+ "\u0003\u014a\u0003\u014a\u0003\u014a\u0006\u014a\u19c2\n\u014a\r\u014a",
+ "\u000e\u014a\u19c3\u0003\u014a\u0005\u014a\u19c7\n\u014a\u0003\u014a",
+ "\u0003\u014a\u0003\u014b\u0003\u014b\u0003\u014c\u0003\u014c\u0003\u014d",
+ "\u0003\u014d\u0003\u014d\u0005\u014d\u19d2\n\u014d\u0003\u014d\u0003",
+ "\u014d\u0003\u014d\u0003\u014d\u0003\u014d\u0003\u014d\u0003\u014d\u0003",
+ "\u014d\u0003\u014d\u0005\u014d\u19dd\n\u014d\u0003\u014d\u0003\u014d",
+ "\u0003\u014e\u0003\u014e\u0003\u014e\u0005\u014e\u19e4\n\u014e\u0003",
+ "\u014e\u0003\u014e\u0003\u014e\u0005\u014e\u19e9\n\u014e\u0003\u014e",
+ "\u0005\u014e\u19ec\n\u014e\u0003\u014e\u0005\u014e\u19ef\n\u014e\u0003",
+ "\u014e\u0003\u014e\u0003\u014e\u0005\u014e\u19f4\n\u014e\u0003\u014f",
+ "\u0003\u014f\u0003\u0150\u0003\u0150\u0003\u0151\u0003\u0151\u0003\u0151",
+ "\u0003\u0151\u0003\u0151\u0005\u0151\u19ff\n\u0151\u0003\u0152\u0003",
+ "\u0152\u0003\u0153\u0003\u0153\u0005\u0153\u1a05\n\u0153\u0003\u0153",
+ "\u0003\u0153\u0005\u0153\u1a09\n\u0153\u0003\u0153\u0003\u0153\u0003",
+ "\u0153\u0003\u0153\u0005\u0153\u1a0f\n\u0153\u0003\u0153\u0003\u0153",
+ "\u0003\u0153\u0003\u0153\u0003\u0153\u0006\u0153\u1a16\n\u0153\r\u0153",
+ "\u000e\u0153\u1a17\u0005\u0153\u1a1a\n\u0153\u0003\u0153\u0003\u0153",
+ "\u0005\u0153\u1a1e\n\u0153\u0003\u0153\u0005\u0153\u1a21\n\u0153\u0003",
+ "\u0154\u0005\u0154\u1a24\n\u0154\u0003\u0154\u0003\u0154\u0003\u0154",
+ "\u0003\u0154\u0003\u0154\u0003\u0154\u0003\u0154\u0003\u0154\u0005\u0154",
+ "\u1a2e\n\u0154\u0003\u0154\u0003\u0154\u0003\u0154\u0006\u0154\u1a33",
+ "\n\u0154\r\u0154\u000e\u0154\u1a34\u0005\u0154\u1a37\n\u0154\u0003\u0155",
+ "\u0003\u0155\u0003\u0155\u0003\u0155\u0007\u0155\u1a3d\n\u0155\f\u0155",
+ "\u000e\u0155\u1a40\u000b\u0155\u0003\u0155\u0003\u0155\u0003\u0155\u0003",
+ "\u0155\u0003\u0155\u0003\u0155\u0007\u0155\u1a48\n\u0155\f\u0155\u000e",
+ "\u0155\u1a4b\u000b\u0155\u0003\u0155\u0005\u0155\u1a4e\n\u0155\u0003",
+ "\u0156\u0003\u0156\u0003\u0156\u0003\u0156\u0003\u0156\u0003\u0156\u0007",
+ "\u0156\u1a56\n\u0156\f\u0156\u000e\u0156\u1a59\u000b\u0156\u0003\u0156",
+ "\u0003\u0156\u0003\u0156\u0003\u0156\u0003\u0156\u0003\u0156\u0007\u0156",
+ "\u1a61\n\u0156\f\u0156\u000e\u0156\u1a64\u000b\u0156\u0005\u0156\u1a66",
+ "\n\u0156\u0003\u0156\u0003\u0156\u0003\u0156\u0005\u0156\u1a6b\n\u0156",
+ "\u0003\u0156\u0003\u0156\u0003\u0157\u0003\u0157\u0003\u0157\u0003\u0157",
+ "\u0003\u0157\u0003\u0157\u0003\u0157\u0003\u0157\u0003\u0157\u0003\u0157",
+ "\u0005\u0157\u1a79\n\u0157\u0003\u0157\u0003\u0157\u0003\u0157\u0003",
+ "\u0157\u0003\u0157\u0003\u0157\u0003\u0157\u0006\u0157\u1a82\n\u0157",
+ "\r\u0157\u000e\u0157\u1a83\u0003\u0157\u0003\u0157\u0005\u0157\u1a88",
+ "\n\u0157\u0003\u0157\u0003\u0157\u0003\u0157\u0003\u0157\u0003\u0157",
+ "\u0003\u0157\u0005\u0157\u1a90\n\u0157\u0005\u0157\u1a92\n\u0157\u0003",
+ "\u0158\u0003\u0158\u0003\u0159\u0003\u0159\u0003\u0159\u0003\u0159\u0003",
+ "\u0159\u0007\u0159\u1a9b\n\u0159\f\u0159\u000e\u0159\u1a9e\u000b\u0159",
+ "\u0003\u0159\u0003\u0159\u0003\u0159\u0003\u0159\u0003\u0159\u0003\u0159",
+ "\u0005\u0159\u1aa6\n\u0159\u0003\u015a\u0003\u015a\u0003\u015a\u0003",
+ "\u015a\u0005\u015a\u1aac\n\u015a\u0003\u015a\u0003\u015a\u0003\u015a",
+ "\u0005\u015a\u1ab1\n\u015a\u0007\u015a\u1ab3\n\u015a\f\u015a\u000e\u015a",
+ "\u1ab6\u000b\u015a\u0003\u015a\u0003\u015a\u0005\u015a\u1aba\n\u015a",
+ "\u0003\u015b\u0003\u015b\u0003\u015b\u0005\u015b\u1abf\n\u015b\u0003",
+ "\u015b\u0003\u015b\u0003\u015b\u0005\u015b\u1ac4\n\u015b\u0007\u015b",
+ "\u1ac6\n\u015b\f\u015b\u000e\u015b\u1ac9\u000b\u015b\u0003\u015b\u0003",
+ "\u015b\u0003\u015b\u0003\u015b\u0005\u015b\u1acf\n\u015b\u0003\u015b",
+ "\u0003\u015b\u0003\u015b\u0003\u015b\u0003\u015b\u0005\u015b\u1ad6\n",
+ "\u015b\u0003\u015c\u0003\u015c\u0003\u015c\u0005\u015c\u1adb\n\u015c",
+ "\u0003\u015c\u0003\u015c\u0003\u015c\u0005\u015c\u1ae0\n\u015c\u0007",
+ "\u015c\u1ae2\n\u015c\f\u015c\u000e\u015c\u1ae5\u000b\u015c\u0003\u015c",
+ "\u0003\u015c\u0003\u015c\u0003\u015c\u0003\u015c\u0003\u015c\u0003\u015c",
+ "\u0003\u015c\u0005\u015c\u1aef\n\u015c\u0003\u015d\u0003\u015d\u0005",
+ "\u015d\u1af3\n\u015d\u0003\u015d\u0005\u015d\u1af6\n\u015d\u0003\u015d",
+ "\u0005\u015d\u1af9\n\u015d\u0003\u015d\u0003\u015d\u0003\u015d\u0003",
+ "\u015d\u0003\u015d\u0003\u015d\u0003\u015d\u0007\u015d\u1b02\n\u015d",
+ "\f\u015d\u000e\u015d\u1b05\u000b\u015d\u0003\u015d\u0003\u015d\u0003",
+ "\u015d\u0003\u015d\u0003\u015d\u0005\u015d\u1b0c\n\u015d\u0003\u015d",
+ "\u0003\u015d\u0003\u015d\u0003\u015d\u0007\u015d\u1b12\n\u015d\f\u015d",
+ "\u000e\u015d\u1b15\u000b\u015d\u0003\u015d\u0003\u015d\u0005\u015d\u1b19",
+ "\n\u015d\u0003\u015d\u0003\u015d\u0003\u015d\u0003\u015d\u0005\u015d",
+ "\u1b1f\n\u015d\u0003\u015e\u0003\u015e\u0005\u015e\u1b23\n\u015e\u0003",
+ "\u015e\u0003\u015e\u0003\u015e\u0003\u015e\u0006\u015e\u1b29\n\u015e",
+ "\r\u015e\u000e\u015e\u1b2a\u0003\u015e\u0003\u015e\u0003\u015e\u0005",
+ "\u015e\u1b30\n\u015e\u0003\u015e\u0003\u015e\u0003\u015e\u0005\u015e",
+ "\u1b35\n\u015e\u0007\u015e\u1b37\n\u015e\f\u015e\u000e\u015e\u1b3a\u000b",
+ "\u015e\u0003\u015e\u0003\u015e\u0003\u015e\u0003\u015e\u0007\u015e\u1b40",
+ "\n\u015e\f\u015e\u000e\u015e\u1b43\u000b\u015e\u0005\u015e\u1b45\n\u015e",
+ "\u0003\u015f\u0005\u015f\u1b48\n\u015f\u0003\u015f\u0003\u015f\u0005",
+ "\u015f\u1b4c\n\u015f\u0003\u015f\u0003\u015f\u0003\u015f\u0003\u0160",
+ "\u0003\u0160\u0005\u0160\u1b53\n\u0160\u0003\u0160\u0003\u0160\u0003",
+ "\u0160\u0003\u0160\u0007\u0160\u1b59\n\u0160\f\u0160\u000e\u0160\u1b5c",
+ "\u000b\u0160\u0003\u0160\u0003\u0160\u0003\u0160\u0003\u0160\u0007\u0160",
+ "\u1b62\n\u0160\f\u0160\u000e\u0160\u1b65\u000b\u0160\u0005\u0160\u1b67",
+ "\n\u0160\u0003\u0161\u0003\u0161\u0003\u0161\u0003\u0161\u0003\u0161",
+ "\u0003\u0161\u0003\u0161\u0003\u0162\u0003\u0162\u0003\u0162\u0003\u0162",
+ "\u0003\u0162\u0003\u0162\u0005\u0162\u1b76\n\u0162\u0003\u0163\u0003",
+ "\u0163\u0003\u0164\u0003\u0164\u0003\u0164\u0003\u0164\u0003\u0164\u0003",
+ "\u0165\u0003\u0165\u0003\u0165\u0003\u0165\u0003\u0165\u0003\u0165\u0007",
+ "\u0165\u1b85\n\u0165\f\u0165\u000e\u0165\u1b88\u000b\u0165\u0003\u0165",
+ "\u0003\u0165\u0003\u0165\u0005\u0165\u1b8d\n\u0165\u0003\u0166\u0003",
+ "\u0166\u0005\u0166\u1b91\n\u0166\u0003\u0166\u0003\u0166\u0003\u0166",
+ "\u0003\u0166\u0003\u0166\u0005\u0166\u1b98\n\u0166\u0003\u0166\u0003",
+ "\u0166\u0003\u0166\u0003\u0166\u0003\u0166\u0005\u0166\u1b9f\n\u0166",
+ "\u0003\u0166\u0005\u0166\u1ba2\n\u0166\u0005\u0166\u1ba4\n\u0166\u0003",
+ "\u0167\u0003\u0167\u0003\u0167\u0003\u0167\u0005\u0167\u1baa\n\u0167",
+ "\u0005\u0167\u1bac\n\u0167\u0003\u0167\u0005\u0167\u1baf\n\u0167\u0003",
+ "\u0168\u0003\u0168\u0003\u0168\u0003\u0168\u0003\u0168\u0003\u0168\u0003",
+ "\u0168\u0005\u0168\u1bb8\n\u0168\u0003\u0168\u0005\u0168\u1bbb\n\u0168",
+ "\u0003\u0169\u0003\u0169\u0005\u0169\u1bbf\n\u0169\u0003\u0169\u0003",
+ "\u0169\u0003\u0169\u0003\u0169\u0005\u0169\u1bc5\n\u0169\u0003\u016a",
+ "\u0003\u016a\u0003\u016a\u0003\u016a\u0003\u016a\u0003\u016a\u0003\u016a",
+ "\u0003\u016b\u0003\u016b\u0003\u016b\u0005\u016b\u1bd1\n\u016b\u0003",
+ "\u016b\u0003\u016b\u0003\u016b\u0003\u016c\u0003\u016c\u0003\u016c\u0003",
+ "\u016c\u0003\u016c\u0005\u016c\u1bdb\n\u016c\u0003\u016c\u0003\u016c",
+ "\u0005\u016c\u1bdf\n\u016c\u0003\u016c\u0005\u016c\u1be2\n\u016c\u0003",
+ "\u016c\u0005\u016c\u1be5\n\u016c\u0003\u016c\u0003\u016c\u0003\u016c",
+ "\u0005\u016c\u1bea\n\u016c\u0003\u016c\u0003\u016c\u0005\u016c\u1bee",
+ "\n\u016c\u0003\u016c\u0003\u016c\u0005\u016c\u1bf2\n\u016c\u0003\u016c",
+ "\u0005\u016c\u1bf5\n\u016c\u0003\u016d\u0003\u016d\u0003\u016d\u0003",
+ "\u016d\u0003\u016d\u0005\u016d\u1bfc\n\u016d\u0003\u016d\u0005\u016d",
+ "\u1bff\n\u016d\u0003\u016d\u0003\u016d\u0003\u016d\u0003\u016d\u0003",
+ "\u016d\u0005\u016d\u1c06\n\u016d\u0003\u016d\u0003\u016d\u0003\u016d",
+ "\u0003\u016d\u0005\u016d\u1c0c\n\u016d\u0003\u016e\u0003\u016e\u0003",
+ "\u016e\u0003\u016e\u0003\u016e\u0003\u016f\u0003\u016f\u0003\u016f\u0003",
+ "\u016f\u0003\u016f\u0003\u0170\u0003\u0170\u0003\u0170\u0003\u0170\u0003",
+ "\u0170\u0003\u0170\u0003\u0170\u0003\u0170\u0003\u0170\u0003\u0170\u0003",
+ "\u0170\u0003\u0170\u0003\u0170\u0003\u0170\u0003\u0170\u0003\u0170\u0005",
+ "\u0170\u1c28\n\u0170\u0003\u0170\u0003\u0170\u0003\u0170\u0003\u0170",
+ "\u0003\u0170\u0003\u0170\u0006\u0170\u1c30\n\u0170\r\u0170\u000e\u0170",
+ "\u1c31\u0003\u0170\u0003\u0170\u0003\u0170\u0003\u0170\u0003\u0170\u0003",
+ "\u0170\u0003\u0170\u0003\u0170\u0005\u0170\u1c3c\n\u0170\u0005\u0170",
+ "\u1c3e\n\u0170\u0003\u0170\u0003\u0170\u0003\u0170\u0003\u0170\u0003",
+ "\u0170\u0003\u0170\u0005\u0170\u1c46\n\u0170\u0003\u0171\u0003\u0171",
+ "\u0003\u0171\u0003\u0171\u0003\u0171\u0003\u0172\u0003\u0172\u0003\u0172",
+ "\u0003\u0172\u0003\u0173\u0003\u0173\u0003\u0173\u0003\u0174\u0003\u0174",
+ "\u0003\u0175\u0003\u0175\u0003\u0176\u0003\u0176\u0003\u0177\u0003\u0177",
+ "\u0003\u0178\u0003\u0178\u0003\u0179\u0003\u0179\u0003\u0179\u0003\u0179",
+ "\u0003\u0179\u0003\u0179\u0003\u0179\u0003\u0179\u0005\u0179\u1c66\n",
+ "\u0179\u0003\u0179\u0003\u0179\u0003\u0179\u0003\u0179\u0003\u0179\u0003",
+ "\u0179\u0005\u0179\u1c6e\n\u0179\u0006\u0179\u1c70\n\u0179\r\u0179\u000e",
+ "\u0179\u1c71\u0005\u0179\u1c74\n\u0179\u0003\u0179\u0003\u0179\u0003",
+ "\u017a\u0003\u017a\u0003\u017a\u0003\u017a\u0003\u017a\u0003\u017a\u0003",
+ "\u017a\u0003\u017a\u0003\u017a\u0003\u017a\u0003\u017a\u0005\u017a\u1c83",
+ "\n\u017a\u0003\u017b\u0003\u017b\u0003\u017b\u0003\u017b\u0003\u017b",
+ "\u0003\u017b\u0003\u017b\u0003\u017b\u0003\u017b\u0003\u017b\u0003\u017b",
+ "\u0003\u017b\u0003\u017b\u0003\u017b\u0003\u017b\u0003\u017b\u0003\u017b",
+ "\u0006\u017b\u1c96\n\u017b\r\u017b\u000e\u017b\u1c97\u0003\u017b\u0005",
+ "\u017b\u1c9b\n\u017b\u0003\u017c\u0003\u017c\u0003\u017c\u0003\u017c",
+ "\u0005\u017c\u1ca1\n\u017c\u0003\u017d\u0003\u017d\u0003\u017d\u0003",
+ "\u017d\u0005\u017d\u1ca7\n\u017d\u0003\u017e\u0003\u017e\u0003\u017e",
+ "\u0003\u017e\u0003\u017e\u0003\u017e\u0006\u017e\u1caf\n\u017e\r\u017e",
+ "\u000e\u017e\u1cb0\u0005\u017e\u1cb3\n\u017e\u0003\u017f\u0003\u017f",
+ "\u0003\u017f\u0005\u017f\u1cb8\n\u017f\u0003\u017f\u0003\u017f\u0003",
+ "\u017f\u0005\u017f\u1cbd\n\u017f\u0003\u017f\u0003\u017f\u0003\u017f",
+ "\u0005\u017f\u1cc2\n\u017f\u0007\u017f\u1cc4\n\u017f\f\u017f\u000e\u017f",
+ "\u1cc7\u000b\u017f\u0003\u017f\u0005\u017f\u1cca\n\u017f\u0003\u0180",
+ "\u0003\u0180\u0005\u0180\u1cce\n\u0180\u0003\u0180\u0003\u0180\u0003",
+ "\u0180\u0003\u0180\u0003\u0180\u0007\u0180\u1cd5\n\u0180\f\u0180\u000e",
+ "\u0180\u1cd8\u000b\u0180\u0003\u0180\u0003\u0180\u0003\u0180\u0003\u0180",
+ "\u0003\u0180\u0003\u0180\u0005\u0180\u1ce0\n\u0180\u0003\u0180\u0005",
+ "\u0180\u1ce3\n\u0180\u0003\u0180\u0005\u0180\u1ce6\n\u0180\u0003\u0180",
+ "\u0005\u0180\u1ce9\n\u0180\u0003\u0180\u0003\u0180\u0005\u0180\u1ced",
+ "\n\u0180\u0003\u0181\u0003\u0181\u0003\u0181\u0003\u0181\u0003\u0181",
+ "\u0003\u0181\u0003\u0181\u0003\u0181\u0005\u0181\u1cf7\n\u0181\u0003",
+ "\u0182\u0003\u0182\u0003\u0182\u0003\u0182\u0003\u0182\u0005\u0182\u1cfe",
+ "\n\u0182\u0003\u0182\u0003\u0182\u0003\u0182\u0003\u0182\u0003\u0182",
+ "\u0006\u0182\u1d05\n\u0182\r\u0182\u000e\u0182\u1d06\u0003\u0183\u0003",
+ "\u0183\u0003\u0184\u0003\u0184\u0003\u0184\u0003\u0184\u0003\u0185\u0003",
+ "\u0185\u0005\u0185\u1d11\n\u0185\u0003\u0185\u0005\u0185\u1d14\n\u0185",
+ "\u0003\u0185\u0005\u0185\u1d17\n\u0185\u0003\u0185\u0005\u0185\u1d1a",
+ "\n\u0185\u0003\u0185\u0003\u0185\u0006\u0185\u1d1e\n\u0185\r\u0185\u000e",
+ "\u0185\u1d1f\u0005\u0185\u1d22\n\u0185\u0003\u0185\u0005\u0185\u1d25",
+ "\n\u0185\u0003\u0186\u0003\u0186\u0003\u0186\u0003\u0186\u0005\u0186",
+ "\u1d2b\n\u0186\u0003\u0186\u0005\u0186\u1d2e\n\u0186\u0003\u0187\u0003",
+ "\u0187\u0003\u0187\u0005\u0187\u1d33\n\u0187\u0003\u0188\u0003\u0188",
+ "\u0003\u0188\u0005\u0188\u1d38\n\u0188\u0003\u0189\u0003\u0189\u0005",
+ "\u0189\u1d3c\n\u0189\u0003\u0189\u0003\u0189\u0005\u0189\u1d40\n\u0189",
+ "\u0003\u018a\u0003\u018a\u0003\u018a\u0003\u018a\u0005\u018a\u1d46\n",
+ "\u018a\u0003\u018b\u0003\u018b\u0003\u018b\u0003\u018b\u0003\u018b\u0003",
+ "\u018b\u0003\u018b\u0003\u018b\u0003\u018c\u0003\u018c\u0003\u018d\u0003",
+ "\u018d\u0003\u018d\u0003\u018d\u0003\u018d\u0003\u018d\u0003\u018e\u0003",
+ "\u018e\u0003\u018f\u0003\u018f\u0003\u0190\u0003\u0190\u0003\u0190\u0006",
+ "\u0190\u1d5f\n\u0190\r\u0190\u000e\u0190\u1d60\u0003\u0191\u0003\u0191",
+ "\u0003\u0191\u0003\u0191\u0003\u0191\u0003\u0191\u0003\u0191\u0003\u0191",
+ "\u0007\u0191\u1d6b\n\u0191\f\u0191\u000e\u0191\u1d6e\u000b\u0191\u0003",
+ "\u0191\u0003\u0191\u0005\u0191\u1d72\n\u0191\u0003\u0191\u0003\u0191",
+ "\u0003\u0191\u0007\u0191\u1d77\n\u0191\f\u0191\u000e\u0191\u1d7a\u000b",
+ "\u0191\u0003\u0191\u0003\u0191\u0003\u0191\u0003\u0191\u0003\u0191\u0003",
+ "\u0191\u0003\u0191\u0007\u0191\u1d83\n\u0191\f\u0191\u000e\u0191\u1d86",
+ "\u000b\u0191\u0003\u0191\u0003\u0191\u0005\u0191\u1d8a\n\u0191\u0003",
+ "\u0191\u0003\u0191\u0003\u0191\u0007\u0191\u1d8f\n\u0191\f\u0191\u000e",
+ "\u0191\u1d92\u000b\u0191\u0003\u0191\u0003\u0191\u0005\u0191\u1d96\n",
+ "\u0191\u0003\u0191\u0003\u0191\u0003\u0191\u0003\u0191\u0003\u0191\u0005",
+ "\u0191\u1d9d\n\u0191\u0003\u0191\u0003\u0191\u0005\u0191\u1da1\n\u0191",
+ "\u0003\u0192\u0003\u0192\u0003\u0192\u0003\u0192\u0003\u0192\u0007\u0192",
+ "\u1da8\n\u0192\f\u0192\u000e\u0192\u1dab\u000b\u0192\u0003\u0192\u0003",
+ "\u0192\u0003\u0192\u0003\u0192\u0005\u0192\u1db1\n\u0192\u0003\u0193",
+ "\u0003\u0193\u0005\u0193\u1db5\n\u0193\u0003\u0193\u0003\u0193\u0005",
+ "\u0193\u1db9\n\u0193\u0003\u0193\u0003\u0193\u0003\u0193\u0005\u0193",
+ "\u1dbe\n\u0193\u0003\u0193\u0007\u0193\u1dc1\n\u0193\f\u0193\u000e\u0193",
+ "\u1dc4\u000b\u0193\u0003\u0193\u0005\u0193\u1dc7\n\u0193\u0003\u0194",
+ "\u0003\u0194\u0003\u0194\u0005\u0194\u1dcc\n\u0194\u0003\u0194\u0003",
+ "\u0194\u0003\u0194\u0003\u0194\u0003\u0194\u0005\u0194\u1dd3\n\u0194",
+ "\u0003\u0195\u0003\u0195\u0003\u0195\u0003\u0195\u0005\u0195\u1dd9\n",
+ "\u0195\u0003\u0195\u0003\u0195\u0003\u0195\u0005\u0195\u1dde\n\u0195",
+ "\u0007\u0195\u1de0\n\u0195\f\u0195\u000e\u0195\u1de3\u000b\u0195\u0003",
+ "\u0195\u0003\u0195\u0003\u0195\u0003\u0195\u0005\u0195\u1de9\n\u0195",
+ "\u0005\u0195\u1deb\n\u0195\u0003\u0195\u0005\u0195\u1dee\n\u0195\u0003",
+ "\u0196\u0003\u0196\u0003\u0196\u0003\u0196\u0003\u0196\u0003\u0196\u0003",
+ "\u0196\u0003\u0197\u0003\u0197\u0003\u0197\u0005\u0197\u1dfa\n\u0197",
+ "\u0003\u0197\u0003\u0197\u0005\u0197\u1dfe\n\u0197\u0003\u0198\u0003",
+ "\u0198\u0003\u0198\u0005\u0198\u1e03\n\u0198\u0003\u0198\u0003\u0198",
+ "\u0005\u0198\u1e07\n\u0198\u0003\u0198\u0003\u0198\u0003\u0198\u0003",
+ "\u0198\u0003\u0198\u0005\u0198\u1e0e\n\u0198\u0003\u0199\u0003\u0199",
+ "\u0003\u019a\u0003\u019a\u0003\u019b\u0003\u019b\u0003\u019b\u0003\u019b",
+ "\u0005\u019b\u1e18\n\u019b\u0003\u019b\u0005\u019b\u1e1b\n\u019b\u0003",
+ "\u019c\u0003\u019c\u0003\u019c\u0003\u019c\u0003\u019c\u0007\u019c\u1e22",
+ "\n\u019c\f\u019c\u000e\u019c\u1e25\u000b\u019c\u0003\u019c\u0003\u019c",
+ "\u0003\u019c\u0003\u019c\u0003\u019c\u0003\u019c\u0003\u019c\u0003\u019c",
+ "\u0006\u019c\u1e2f\n\u019c\r\u019c\u000e\u019c\u1e30\u0003\u019c\u0003",
+ "\u019c\u0003\u019c\u0003\u019c\u0003\u019c\u0003\u019c\u0003\u019c\u0003",
+ "\u019c\u0003\u019c\u0003\u019c\u0003\u019c\u0006\u019c\u1e3e\n\u019c",
+ "\r\u019c\u000e\u019c\u1e3f\u0005\u019c\u1e42\n\u019c\u0003\u019d\u0003",
+ "\u019d\u0003\u019d\u0003\u019d\u0003\u019d\u0003\u019d\u0003\u019d\u0003",
+ "\u019d\u0003\u019d\u0003\u019e\u0003\u019e\u0003\u019e\u0003\u019e\u0003",
+ "\u019e\u0003\u019e\u0003\u019e\u0003\u019e\u0003\u019e\u0003\u019e\u0003",
+ "\u019e\u0003\u019e\u0003\u019e\u0003\u019e\u0003\u019e\u0003\u019e\u0005",
+ "\u019e\u1e5d\n\u019e\u0003\u019e\u0005\u019e\u1e60\n\u019e\u0003\u019e",
+ "\u0003\u019e\u0003\u019e\u0006\u019e\u1e65\n\u019e\r\u019e\u000e\u019e",
+ "\u1e66\u0003\u019f\u0003\u019f\u0003\u019f\u0003\u019f\u0003\u019f\u0003",
+ "\u019f\u0003\u019f\u0003\u019f\u0003\u019f\u0003\u019f\u0003\u019f\u0003",
+ "\u019f\u0003\u019f\u0003\u019f\u0003\u019f\u0003\u019f\u0003\u019f\u0003",
+ "\u019f\u0003\u019f\u0003\u019f\u0005\u019f\u1e7d\n\u019f\u0003\u019f",
+ "\u0005\u019f\u1e80\n\u019f\u0006\u019f\u1e82\n\u019f\r\u019f\u000e\u019f",
+ "\u1e83\u0003\u01a0\u0003\u01a0\u0003\u01a1\u0003\u01a1\u0003\u01a1\u0005",
+ "\u01a1\u1e8b\n\u01a1\u0005\u01a1\u1e8d\n\u01a1\u0003\u01a2\u0003\u01a2",
+ "\u0003\u01a2\u0003\u01a2\u0003\u01a2\u0003\u01a2\u0005\u01a2\u1e95\n",
+ "\u01a2\u0003\u01a3\u0003\u01a3\u0005\u01a3\u1e99\n\u01a3\u0003\u01a3",
+ "\u0003\u01a3\u0003\u01a3\u0005\u01a3\u1e9e\n\u01a3\u0003\u01a3\u0005",
+ "\u01a3\u1ea1\n\u01a3\u0003\u01a3\u0005\u01a3\u1ea4\n\u01a3\u0003\u01a3",
+ "\u0005\u01a3\u1ea7\n\u01a3\u0003\u01a4\u0003\u01a4\u0003\u01a5\u0003",
+ "\u01a5\u0003\u01a5\u0005\u01a5\u1eae\n\u01a5\u0003\u01a5\u0003\u01a5",
+ "\u0003\u01a5\u0005\u01a5\u1eb3\n\u01a5\u0003\u01a5\u0003\u01a5\u0003",
+ "\u01a6\u0003\u01a6\u0003\u01a6\u0003\u01a6\u0005\u01a6\u1ebb\n\u01a6",
+ "\u0003\u01a6\u0005\u01a6\u1ebe\n\u01a6\u0003\u01a7\u0003\u01a7\u0003",
+ "\u01a7\u0003\u01a7\u0003\u01a7\u0003\u01a7\u0003\u01a7\u0003\u01a7\u0003",
+ "\u01a7\u0003\u01a7\u0005\u01a7\u1eca\n\u01a7\u0003\u01a8\u0003\u01a8",
+ "\u0003\u01a9\u0003\u01a9\u0003\u01aa\u0003\u01aa\u0003\u01aa\u0005\u01aa",
+ "\u1ed3\n\u01aa\u0003\u01aa\u0005\u01aa\u1ed6\n\u01aa\u0003\u01aa\u0003",
+ "\u01aa\u0005\u01aa\u1eda\n\u01aa\u0003\u01aa\u0003\u01aa\u0003\u01aa",
+ "\u0005\u01aa\u1edf\n\u01aa\u0003\u01aa\u0003\u01aa\u0003\u01aa\u0005",
+ "\u01aa\u1ee4\n\u01aa\u0003\u01aa\u0005\u01aa\u1ee7\n\u01aa\u0003\u01aa",
+ "\u0005\u01aa\u1eea\n\u01aa\u0003\u01aa\u0005\u01aa\u1eed\n\u01aa\u0005",
+ "\u01aa\u1eef\n\u01aa\u0003\u01aa\u0007\u01aa\u1ef2\n\u01aa\f\u01aa\u000e",
+ "\u01aa\u1ef5\u000b\u01aa\u0003\u01aa\u0005\u01aa\u1ef8\n\u01aa\u0003",
+ "\u01ab\u0003\u01ab\u0005\u01ab\u1efc\n\u01ab\u0003\u01ab\u0005\u01ab",
+ "\u1eff\n\u01ab\u0003\u01ab\u0005\u01ab\u1f02\n\u01ab\u0003\u01ab\u0007",
+ "\u01ab\u1f05\n\u01ab\f\u01ab\u000e\u01ab\u1f08\u000b\u01ab\u0003\u01ac",
+ "\u0003\u01ac\u0003\u01ac\u0003\u01ac\u0003\u01ac\u0003\u01ac\u0005\u01ac",
+ "\u1f10\n\u01ac\u0005\u01ac\u1f12\n\u01ac\u0003\u01ac\u0003\u01ac\u0003",
+ "\u01ac\u0003\u01ad\u0003\u01ad\u0003\u01ad\u0003\u01ae\u0003\u01ae\u0003",
+ "\u01ae\u0003\u01ae\u0005\u01ae\u1f1e\n\u01ae\u0003\u01ae\u0005\u01ae",
+ "\u1f21\n\u01ae\u0003\u01ae\u0005\u01ae\u1f24\n\u01ae\u0003\u01ae\u0003",
+ "\u01ae\u0003\u01ae\u0003\u01ae\u0003\u01ae\u0003\u01ae\u0003\u01ae\u0003",
+ "\u01ae\u0003\u01ae\u0003\u01ae\u0006\u01ae\u1f30\n\u01ae\r\u01ae\u000e",
+ "\u01ae\u1f31\u0003\u01ae\u0003\u01ae\u0005\u01ae\u1f36\n\u01ae\u0003",
+ "\u01ae\u0003\u01ae\u0005\u01ae\u1f3a\n\u01ae\u0003\u01ae\u0005\u01ae",
+ "\u1f3d\n\u01ae\u0003\u01af\u0003\u01af\u0003\u01b0\u0005\u01b0\u1f42",
+ "\n\u01b0\u0003\u01b0\u0003\u01b0\u0003\u01b0\u0005\u01b0\u1f47\n\u01b0",
+ "\u0003\u01b0\u0003\u01b0\u0003\u01b0\u0003\u01b0\u0003\u01b0\u0005\u01b0",
+ "\u1f4e\n\u01b0\u0003\u01b0\u0003\u01b0\u0003\u01b0\u0003\u01b0\u0005",
+ "\u01b0\u1f54\n\u01b0\u0003\u01b1\u0003\u01b1\u0003\u01b2\u0003\u01b2",
+ "\u0003\u01b2\u0003\u01b2\u0005\u01b2\u1f5c\n\u01b2\u0003\u01b3\u0003",
+ "\u01b3\u0003\u01b4\u0003\u01b4\u0003\u01b4\u0003\u01b4\u0003\u01b5\u0003",
+ "\u01b5\u0003\u01b5\u0007\u01b5\u1f67\n\u01b5\f\u01b5\u000e\u01b5\u1f6a",
+ "\u000b\u01b5\u0003\u01b5\u0005\u01b5\u1f6d\n\u01b5\u0003\u01b5\u0003",
+ "\u01b5\u0003\u01b5\u0007\u01b5\u1f72\n\u01b5\f\u01b5\u000e\u01b5\u1f75",
+ "\u000b\u01b5\u0003\u01b5\u0005\u01b5\u1f78\n\u01b5\u0003\u01b5\u0003",
+ "\u01b5\u0003\u01b5\u0003\u01b5\u0003\u01b5\u0003\u01b5\u0003\u01b5\u0003",
+ "\u01b5\u0003\u01b5\u0003\u01b5\u0007\u01b5\u1f84\n\u01b5\f\u01b5\u000e",
+ "\u01b5\u1f87\u000b\u01b5\u0003\u01b5\u0003\u01b5\u0005\u01b5\u1f8b\n",
+ "\u01b5\u0003\u01b5\u0003\u01b5\u0005\u01b5\u1f8f\n\u01b5\u0003\u01b5",
+ "\u0003\u01b5\u0003\u01b5\u0003\u01b5\u0003\u01b5\u0003\u01b5\u0003\u01b5",
+ "\u0006\u01b5\u1f98\n\u01b5\r\u01b5\u000e\u01b5\u1f99\u0005\u01b5\u1f9c",
+ "\n\u01b5\u0003\u01b6\u0003\u01b6\u0003\u01b7\u0003\u01b7\u0003\u01b8",
+ "\u0003\u01b8\u0003\u01b8\u0003\u01b9\u0003\u01b9\u0003\u01b9\u0003\u01b9",
+ "\u0003\u01b9\u0003\u01b9\u0003\u01b9\u0007\u01b9\u1fac\n\u01b9\f\u01b9",
+ "\u000e\u01b9\u1faf\u000b\u01b9\u0003\u01b9\u0003\u01b9\u0005\u01b9\u1fb3",
+ "\n\u01b9\u0003\u01b9\u0005\u01b9\u1fb6\n\u01b9\u0003\u01b9\u0005\u01b9",
+ "\u1fb9\n\u01b9\u0003\u01b9\u0003\u01b9\u0003\u01b9\u0005\u01b9\u1fbe",
+ "\n\u01b9\u0005\u01b9\u1fc0\n\u01b9\u0003\u01ba\u0003\u01ba\u0003\u01ba",
+ "\u0005\u01ba\u1fc5\n\u01ba\u0003\u01ba\u0003\u01ba\u0003\u01ba\u0003",
+ "\u01ba\u0005\u01ba\u1fcb\n\u01ba\u0003\u01ba\u0006\u01ba\u1fce\n\u01ba",
+ "\r\u01ba\u000e\u01ba\u1fcf\u0003\u01bb\u0003\u01bb\u0003\u01bb\u0003",
+ "\u01bb\u0005\u01bb\u1fd6\n\u01bb\u0003\u01bc\u0003\u01bc\u0003\u01bc",
+ "\u0003\u01bc\u0003\u01bc\u0005\u01bc\u1fdd\n\u01bc\u0003\u01bd\u0003",
+ "\u01bd\u0003\u01bd\u0003\u01bd\u0003\u01be\u0003\u01be\u0003\u01be\u0003",
+ "\u01be\u0003\u01bf\u0003\u01bf\u0003\u01bf\u0003\u01bf\u0003\u01c0\u0003",
+ "\u01c0\u0003\u01c0\u0003\u01c0\u0003\u01c0\u0005\u01c0\u1ff0\n\u01c0",
+ "\u0003\u01c1\u0003\u01c1\u0003\u01c1\u0003\u01c1\u0003\u01c2\u0003\u01c2",
+ "\u0003\u01c2\u0003\u01c2\u0003\u01c2\u0005\u01c2\u1ffb\n\u01c2\u0003",
+ "\u01c3\u0003\u01c3\u0003\u01c3\u0005\u01c3\u2000\n\u01c3\u0003\u01c4",
+ "\u0003\u01c4\u0003\u01c4\u0003\u01c4\u0005\u01c4\u2006\n\u01c4\u0003",
+ "\u01c5\u0003\u01c5\u0005\u01c5\u200a\n\u01c5\u0003\u01c5\u0003\u01c5",
+ "\u0003\u01c5\u0003\u01c5\u0006\u01c5\u2010\n\u01c5\r\u01c5\u000e\u01c5",
+ "\u2011\u0005\u01c5\u2014\n\u01c5\u0003\u01c5\u0003\u01c5\u0003\u01c5",
+ "\u0003\u01c6\u0003\u01c6\u0003\u01c6\u0003\u01c7\u0003\u01c7\u0003\u01c7",
+ "\u0005\u01c7\u201f\n\u01c7\u0003\u01c8\u0003\u01c8\u0003\u01c8\u0003",
+ "\u01c8\u0003\u01c9\u0003\u01c9\u0003\u01c9\u0005\u01c9\u2028\n\u01c9",
+ "\u0003\u01c9\u0003\u01c9\u0003\u01c9\u0005\u01c9\u202d\n\u01c9\u0003",
+ "\u01c9\u0003\u01c9\u0005\u01c9\u2031\n\u01c9\u0003\u01c9\u0005\u01c9",
+ "\u2034\n\u01c9\u0003\u01ca\u0003\u01ca\u0003\u01ca\u0003\u01ca\u0003",
+ "\u01ca\u0003\u01ca\u0003\u01cb\u0003\u01cb\u0003\u01cb\u0003\u01cb\u0003",
+ "\u01cb\u0003\u01cb\u0005\u01cb\u2042\n\u01cb\u0003\u01cb\u0003\u01cb",
+ "\u0003\u01cc\u0003\u01cc\u0007\u01cc\u2048\n\u01cc\f\u01cc\u000e\u01cc",
+ "\u204b\u000b\u01cc\u0003\u01cc\u0005\u01cc\u204e\n\u01cc\u0003\u01cc",
+ "\u0005\u01cc\u2051\n\u01cc\u0003\u01cd\u0003\u01cd\u0003\u01cd\u0003",
+ "\u01ce\u0006\u01ce\u2057\n\u01ce\r\u01ce\u000e\u01ce\u2058\u0003\u01cf",
+ "\u0003\u01cf\u0003\u01cf\u0003\u01cf\u0003\u01cf\u0003\u01cf\u0003\u01cf",
+ "\u0003\u01cf\u0003\u01cf\u0003\u01cf\u0005\u01cf\u2065\n\u01cf\u0003",
+ "\u01d0\u0003\u01d0\u0005\u01d0\u2069\n\u01d0\u0003\u01d0\u0003\u01d0",
+ "\u0003\u01d0\u0005\u01d0\u206e\n\u01d0\u0003\u01d0\u0005\u01d0\u2071",
+ "\n\u01d0\u0003\u01d0\u0003\u01d0\u0003\u01d1\u0003\u01d1\u0003\u01d1",
+ "\u0003\u01d1\u0003\u01d1\u0003\u01d1\u0003\u01d1\u0003\u01d1\u0003\u01d1",
+ "\u0005\u01d1\u207e\n\u01d1\u0003\u01d1\u0003\u01d1\u0005\u01d1\u2082",
+ "\n\u01d1\u0003\u01d1\u0003\u01d1\u0003\u01d2\u0003\u01d2\u0003\u01d2",
+ "\u0003\u01d2\u0003\u01d2\u0003\u01d2\u0007\u01d2\u208c\n\u01d2\f\u01d2",
+ "\u000e\u01d2\u208f\u000b\u01d2\u0003\u01d2\u0003\u01d2\u0005\u01d2\u2093",
+ "\n\u01d2\u0003\u01d2\u0003\u01d2\u0005\u01d2\u2097\n\u01d2\u0003\u01d2",
+ "\u0003\u01d2\u0005\u01d2\u209b\n\u01d2\u0003\u01d2\u0003\u01d2\u0003",
+ "\u01d3\u0003\u01d3\u0005\u01d3\u20a1\n\u01d3\u0003\u01d3\u0005\u01d3",
+ "\u20a4\n\u01d3\u0003\u01d3\u0005\u01d3\u20a7\n\u01d3\u0003\u01d4\u0003",
+ "\u01d4\u0003\u01d4\u0003\u01d4\u0003\u01d5\u0003\u01d5\u0003\u01d5\u0003",
+ "\u01d5\u0003\u01d5\u0003\u01d5\u0003\u01d5\u0003\u01d5\u0003\u01d5\u0003",
+ "\u01d5\u0003\u01d5\u0003\u01d5\u0003\u01d5\u0003\u01d5\u0003\u01d5\u0003",
+ "\u01d5\u0003\u01d5\u0003\u01d5\u0003\u01d5\u0003\u01d5\u0003\u01d5\u0005",
+ "\u01d5\u20c2\n\u01d5\u0003\u01d5\u0003\u01d5\u0006\u01d5\u20c6\n\u01d5",
+ "\r\u01d5\u000e\u01d5\u20c7\u0003\u01d5\u0003\u01d5\u0005\u01d5\u20cc",
+ "\n\u01d5\u0003\u01d5\u0003\u01d5\u0003\u01d6\u0003\u01d6\u0003\u01d6",
+ "\u0003\u01d6\u0003\u01d6\u0007\u01d6\u20d5\n\u01d6\f\u01d6\u000e\u01d6",
+ "\u20d8\u000b\u01d6\u0003\u01d6\u0003\u01d6\u0003\u01d7\u0003\u01d7\u0005",
+ "\u01d7\u20de\n\u01d7\u0003\u01d7\u0003\u01d7\u0005\u01d7\u20e2\n\u01d7",
+ "\u0003\u01d7\u0005\u01d7\u20e5\n\u01d7\u0003\u01d8\u0003\u01d8\u0003",
+ "\u01d8\u0003\u01d8\u0005\u01d8\u20eb\n\u01d8\u0003\u01d9\u0003\u01d9",
+ "\u0003\u01d9\u0003\u01d9\u0003\u01d9\u0003\u01d9\u0003\u01d9\u0005\u01d9",
+ "\u20f4\n\u01d9\u0003\u01d9\u0003\u01d9\u0003\u01da\u0003\u01da\u0003",
+ "\u01da\u0003\u01da\u0005\u01da\u20fc\n\u01da\u0003\u01da\u0003\u01da",
+ "\u0005\u01da\u2100\n\u01da\u0003\u01db\u0003\u01db\u0005\u01db\u2104",
+ "\n\u01db\u0003\u01db\u0003\u01db\u0003\u01db\u0003\u01dc\u0003\u01dc",
+ "\u0003\u01dc\u0005\u01dc\u210c\n\u01dc\u0003\u01dc\u0003\u01dc\u0003",
+ "\u01dc\u0003\u01dc\u0003\u01dc\u0003\u01dc\u0003\u01dc\u0005\u01dc\u2115",
+ "\n\u01dc\u0003\u01dd\u0003\u01dd\u0003\u01dd\u0003\u01dd\u0006\u01dd",
+ "\u211b\n\u01dd\r\u01dd\u000e\u01dd\u211c\u0003\u01de\u0003\u01de\u0003",
+ "\u01de\u0003\u01de\u0003\u01de\u0003\u01de\u0003\u01df\u0003\u01df\u0003",
+ "\u01df\u0003\u01df\u0003\u01df\u0003\u01df\u0003\u01df\u0003\u01df\u0003",
+ "\u01df\u0003\u01df\u0003\u01df\u0003\u01df\u0003\u01df\u0003\u01df\u0003",
+ "\u01df\u0003\u01df\u0003\u01df\u0005\u01df\u2136\n\u01df\u0003\u01e0",
+ "\u0006\u01e0\u2139\n\u01e0\r\u01e0\u000e\u01e0\u213a\u0003\u01e1\u0003",
+ "\u01e1\u0005\u01e1\u213f\n\u01e1\u0003\u01e1\u0003\u01e1\u0003\u01e1",
+ "\u0003\u01e2\u0003\u01e2\u0005\u01e2\u2146\n\u01e2\u0003\u01e2\u0003",
+ "\u01e2\u0005\u01e2\u214a\n\u01e2\u0003\u01e3\u0003\u01e3\u0005\u01e3",
+ "\u214e\n\u01e3\u0003\u01e3\u0003\u01e3\u0005\u01e3\u2152\n\u01e3\u0003",
+ "\u01e4\u0003\u01e4\u0003\u01e4\u0003\u01e5\u0003\u01e5\u0003\u01e5\u0003",
+ "\u01e5\u0003\u01e5\u0007\u01e5\u215c\n\u01e5\f\u01e5\u000e\u01e5\u215f",
+ "\u000b\u01e5\u0003\u01e5\u0005\u01e5\u2162\n\u01e5\u0003\u01e5\u0003",
+ "\u01e5\u0003\u01e5\u0003\u01e6\u0003\u01e6\u0003\u01e6\u0003\u01e6\u0003",
+ "\u01e6\u0003\u01e7\u0003\u01e7\u0003\u01e7\u0003\u01e8\u0005\u01e8\u2170",
+ "\n\u01e8\u0003\u01e8\u0003\u01e8\u0003\u01e8\u0003\u01e8\u0005\u01e8",
+ "\u2176\n\u01e8\u0003\u01e8\u0003\u01e8\u0003\u01e8\u0003\u01e8\u0003",
+ "\u01e8\u0005\u01e8\u217d\n\u01e8\u0003\u01e9\u0003\u01e9\u0003\u01e9",
+ "\u0005\u01e9\u2182\n\u01e9\u0003\u01e9\u0003\u01e9\u0003\u01e9\u0003",
+ "\u01e9\u0003\u01e9\u0003\u01e9\u0003\u01e9\u0003\u01e9\u0003\u01e9\u0005",
+ "\u01e9\u218d\n\u01e9\u0003\u01e9\u0005\u01e9\u2190\n\u01e9\u0003\u01e9",
+ "\u0003\u01e9\u0003\u01e9\u0003\u01e9\u0005\u01e9\u2196\n\u01e9\u0005",
+ "\u01e9\u2198\n\u01e9\u0003\u01ea\u0003\u01ea\u0003\u01ea\u0003\u01ea",
+ "\u0003\u01ea\u0003\u01ea\u0003\u01ea\u0005\u01ea\u21a1\n\u01ea\u0003",
+ "\u01eb\u0003\u01eb\u0003\u01eb\u0003\u01eb\u0003\u01eb\u0003\u01eb\u0003",
+ "\u01eb\u0003\u01eb\u0005\u01eb\u21ab\n\u01eb\u0003\u01eb\u0003\u01eb",
+ "\u0003\u01eb\u0005\u01eb\u21b0\n\u01eb\u0003\u01ec\u0003\u01ec\u0003",
+ "\u01ec\u0003\u01ec\u0003\u01ec\u0003\u01ed\u0003\u01ed\u0003\u01ee\u0003",
+ "\u01ee\u0003\u01ef\u0003\u01ef\u0003\u01f0\u0003\u01f0\u0005\u01f0\u21bf",
+ "\n\u01f0\u0003\u01f1\u0003\u01f1\u0005\u01f1\u21c3\n\u01f1\u0003\u01f2",
+ "\u0005\u01f2\u21c6\n\u01f2\u0003\u01f2\u0003\u01f2\u0005\u01f2\u21ca",
+ "\n\u01f2\u0003\u01f3\u0003\u01f3\u0005\u01f3\u21ce\n\u01f3\u0003\u01f4",
+ "\u0003\u01f4\u0003\u01f4\u0003\u01f4\u0003\u01f4\u0003\u01f4\u0003\u01f5",
+ "\u0003\u01f5\u0003\u01f5\u0003\u01f5\u0006\u01f5\u21da\n\u01f5\r\u01f5",
+ "\u000e\u01f5\u21db\u0005\u01f5\u21de\n\u01f5\u0003\u01f5\u0003\u01f5",
+ "\u0005\u01f5\u21e2\n\u01f5\u0003\u01f6\u0003\u01f6\u0003\u01f6\u0003",
+ "\u01f6\u0007\u01f6\u21e8\n\u01f6\f\u01f6\u000e\u01f6\u21eb\u000b\u01f6",
+ "\u0003\u01f6\u0003\u01f6\u0003\u01f6\u0003\u01f7\u0005\u01f7\u21f1\n",
+ "\u01f7\u0003\u01f7\u0006\u01f7\u21f4\n\u01f7\r\u01f7\u000e\u01f7\u21f5",
+ "\u0005\u01f7\u21f8\n\u01f7\u0003\u01f7\u0003\u01f7\u0003\u01f8\u0005",
+ "\u01f8\u21fd\n\u01f8\u0003\u01f8\u0006\u01f8\u2200\n\u01f8\r\u01f8\u000e",
+ "\u01f8\u2201\u0003\u01f8\u0003\u01f8\u0003\u01f9\u0003\u01f9\u0003\u01f9",
+ "\u0003\u01f9\u0005\u01f9\u220a\n\u01f9\u0003\u01fa\u0003\u01fa\u0003",
+ "\u01fa\u0003\u01fa\u0003\u01fa\u0005\u01fa\u2211\n\u01fa\u0003\u01fa",
+ "\u0003\u01fa\u0005\u01fa\u2215\n\u01fa\u0003\u01fa\u0005\u01fa\u2218",
+ "\n\u01fa\u0003\u01fb\u0003\u01fb\u0003\u01fb\u0003\u01fc\u0003\u01fc",
+ "\u0003\u01fc\u0003\u01fc\u0003\u01fc\u0003\u01fc\u0003\u01fc\u0005\u01fc",
+ "\u2224\n\u01fc\u0003\u01fd\u0003\u01fd\u0003\u01fd\u0003\u01fd\u0005",
+ "\u01fd\u222a\n\u01fd\u0003\u01fe\u0003\u01fe\u0003\u01fe\u0003\u01ff",
+ "\u0003\u01ff\u0003\u01ff\u0003\u01ff\u0005\u01ff\u2233\n\u01ff\u0003",
+ "\u01ff\u0005\u01ff\u2236\n\u01ff\u0003\u0200\u0003\u0200\u0003\u0200",
+ "\u0003\u0200\u0003\u0200\u0003\u0200\u0007\u0200\u223e\n\u0200\f\u0200",
+ "\u000e\u0200\u2241\u000b\u0200\u0003\u0200\u0003\u0200\u0003\u0200\u0003",
+ "\u0200\u0003\u0200\u0003\u0200\u0007\u0200\u2249\n\u0200\f\u0200\u000e",
+ "\u0200\u224c\u000b\u0200\u0005\u0200\u224e\n\u0200\u0003\u0201\u0003",
+ "\u0201\u0003\u0201\u0003\u0201\u0003\u0201\u0005\u0201\u2255\n\u0201",
+ "\u0003\u0201\u0005\u0201\u2258\n\u0201\u0003\u0202\u0003\u0202\u0003",
+ "\u0202\u0003\u0202\u0003\u0202\u0005\u0202\u225f\n\u0202\u0003\u0203",
+ "\u0003\u0203\u0003\u0203\u0003\u0203\u0003\u0203\u0003\u0203\u0003\u0203",
+ "\u0003\u0203\u0003\u0203\u0005\u0203\u226a\n\u0203\u0003\u0203\u0003",
+ "\u0203\u0003\u0203\u0003\u0203\u0005\u0203\u2270\n\u0203\u0003\u0203",
+ "\u0003\u0203\u0005\u0203\u2274\n\u0203\u0003\u0204\u0003\u0204\u0003",
+ "\u0204\u0003\u0204\u0003\u0204\u0003\u0204\u0007\u0204\u227c\n\u0204",
+ "\f\u0204\u000e\u0204\u227f\u000b\u0204\u0005\u0204\u2281\n\u0204\u0003",
+ "\u0204\u0003\u0204\u0003\u0205\u0003\u0205\u0005\u0205\u2287\n\u0205",
+ "\u0003\u0205\u0003\u0205\u0003\u0205\u0003\u0205\u0003\u0205\u0003\u0205",
+ "\u0003\u0205\u0003\u0205\u0003\u0205\u0005\u0205\u2292\n\u0205\u0005",
+ "\u0205\u2294\n\u0205\u0005\u0205\u2296\n\u0205\u0003\u0205\u0005\u0205",
+ "\u2299\n\u0205\u0003\u0206\u0003\u0206\u0005\u0206\u229d\n\u0206\u0003",
+ "\u0206\u0005\u0206\u22a0\n\u0206\u0003\u0207\u0003\u0207\u0005\u0207",
+ "\u22a4\n\u0207\u0003\u0207\u0003\u0207\u0005\u0207\u22a8\n\u0207\u0003",
+ "\u0207\u0003\u0207\u0003\u0207\u0005\u0207\u22ad\n\u0207\u0003\u0208",
+ "\u0003\u0208\u0003\u0208\u0003\u0209\u0003\u0209\u0003\u0209\u0003\u0209",
+ "\u0003\u0209\u0003\u0209\u0005\u0209\u22b8\n\u0209\u0003\u0209\u0003",
+ "\u0209\u0005\u0209\u22bc\n\u0209\u0003\u0209\u0003\u0209\u0003\u0209",
+ "\u0003\u0209\u0003\u0209\u0003\u0209\u0005\u0209\u22c4\n\u0209\u0003",
+ "\u020a\u0005\u020a\u22c7\n\u020a\u0003\u020a\u0003\u020a\u0003\u020b",
+ "\u0003\u020b\u0003\u020b\u0003\u020b\u0003\u020b\u0007\u020b\u22d0\n",
+ "\u020b\f\u020b\u000e\u020b\u22d3\u000b\u020b\u0003\u020c\u0003\u020c",
+ "\u0003\u020c\u0003\u020c\u0007\u020c\u22d9\n\u020c\f\u020c\u000e\u020c",
+ "\u22dc\u000b\u020c\u0003\u020d\u0003\u020d\u0005\u020d\u22e0\n\u020d",
+ "\u0003\u020d\u0003\u020d\u0003\u020d\u0003\u020d\u0005\u020d\u22e6\n",
+ "\u020d\u0003\u020d\u0003\u020d\u0005\u020d\u22ea\n\u020d\u0003\u020d",
+ "\u0005\u020d\u22ed\n\u020d\u0003\u020e\u0003\u020e\u0003\u020e\u0003",
+ "\u020e\u0003\u020e\u0003\u020e\u0005\u020e\u22f5\n\u020e\u0003\u020e",
+ "\u0005\u020e\u22f8\n\u020e\u0003\u020e\u0003\u020e\u0005\u020e\u22fc",
+ "\n\u020e\u0003\u020e\u0003\u020e\u0005\u020e\u2300\n\u020e\u0003\u020e",
+ "\u0003\u020e\u0003\u020e\u0005\u020e\u2305\n\u020e\u0003\u020e\u0005",
+ "\u020e\u2308\n\u020e\u0003\u020e\u0003\u020e\u0005\u020e\u230c\n\u020e",
+ "\u0003\u020e\u0003\u020e\u0005\u020e\u2310\n\u020e\u0007\u020e\u2312",
+ "\n\u020e\f\u020e\u000e\u020e\u2315\u000b\u020e\u0003\u020e\u0003\u020e",
+ "\u0003\u020e\u0003\u020f\u0003\u020f\u0003\u020f\u0003\u020f\u0003\u020f",
+ "\u0003\u020f\u0003\u020f\u0003\u020f\u0003\u020f\u0003\u0210\u0003\u0210",
+ "\u0007\u0210\u2325\n\u0210\f\u0210\u000e\u0210\u2328\u000b\u0210\u0003",
+ "\u0211\u0003\u0211\u0003\u0211\u0003\u0211\u0003\u0211\u0005\u0211\u232f",
+ "\n\u0211\u0003\u0212\u0003\u0212\u0005\u0212\u2333\n\u0212\u0003\u0212",
+ "\u0003\u0212\u0005\u0212\u2337\n\u0212\u0003\u0212\u0003\u0212\u0003",
+ "\u0213\u0003\u0213\u0005\u0213\u233d\n\u0213\u0003\u0213\u0003\u0213",
+ "\u0005\u0213\u2341\n\u0213\u0003\u0213\u0003\u0213\u0005\u0213\u2345",
+ "\n\u0213\u0003\u0213\u0005\u0213\u2348\n\u0213\u0003\u0213\u0005\u0213",
+ "\u234b\n\u0213\u0003\u0213\u0005\u0213\u234e\n\u0213\u0003\u0213\u0005",
+ "\u0213\u2351\n\u0213\u0003\u0214\u0003\u0214\u0003\u0214\u0003\u0214",
+ "\u0007\u0214\u2357\n\u0214\f\u0214\u000e\u0214\u235a\u000b\u0214\u0005",
+ "\u0214\u235c\n\u0214\u0003\u0215\u0003\u0215\u0003\u0215\u0003\u0216",
+ "\u0003\u0216\u0003\u0216\u0003\u0216\u0003\u0216\u0003\u0216\u0005\u0216",
+ "\u2367\n\u0216\u0005\u0216\u2369\n\u0216\u0003\u0217\u0003\u0217\u0003",
+ "\u0217\u0007\u0217\u236e\n\u0217\f\u0217\u000e\u0217\u2371\u000b\u0217",
+ "\u0003\u0218\u0003\u0218\u0007\u0218\u2375\n\u0218\f\u0218\u000e\u0218",
+ "\u2378\u000b\u0218\u0003\u0218\u0003\u0218\u0005\u0218\u237c\n\u0218",
+ "\u0003\u0219\u0003\u0219\u0007\u0219\u2380\n\u0219\f\u0219\u000e\u0219",
+ "\u2383\u000b\u0219\u0003\u0219\u0005\u0219\u2386\n\u0219\u0003\u021a",
+ "\u0003\u021a\u0003\u021a\u0005\u021a\u238b\n\u021a\u0003\u021a\u0003",
+ "\u021a\u0003\u021a\u0007\u021a\u2390\n\u021a\f\u021a\u000e\u021a\u2393",
+ "\u000b\u021a\u0003\u021a\u0003\u021a\u0003\u021a\u0005\u021a\u2398\n",
+ "\u021a\u0003\u021a\u0003\u021a\u0003\u021a\u0003\u021a\u0003\u021a\u0005",
+ "\u021a\u239f\n\u021a\u0003\u021b\u0005\u021b\u23a2\n\u021b\u0003\u021b",
+ "\u0005\u021b\u23a5\n\u021b\u0003\u021b\u0003\u021b\u0005\u021b\u23a9",
+ "\n\u021b\u0003\u021b\u0003\u021b\u0003\u021b\u0005\u021b\u23ae\n\u021b",
+ "\u0003\u021b\u0003\u021b\u0007\u021b\u23b2\n\u021b\f\u021b\u000e\u021b",
+ "\u23b5\u000b\u021b\u0003\u021c\u0003\u021c\u0003\u021c\u0003\u021d\u0003",
+ "\u021d\u0003\u021d\u0003\u021e\u0003\u021e\u0005\u021e\u23bf\n\u021e",
+ "\u0003\u021f\u0003\u021f\u0003\u021f\u0003\u021f\u0003\u021f\u0005\u021f",
+ "\u23c6\n\u021f\u0003\u021f\u0003\u021f\u0005\u021f\u23ca\n\u021f\u0003",
+ "\u0220\u0003\u0220\u0003\u0220\u0003\u0220\u0003\u0220\u0003\u0220\u0003",
+ "\u0220\u0003\u0220\u0005\u0220\u23d4\n\u0220\u0003\u0221\u0003\u0221",
+ "\u0005\u0221\u23d8\n\u0221\u0003\u0221\u0003\u0221\u0003\u0221\u0003",
+ "\u0221\u0007\u0221\u23de\n\u0221\f\u0221\u000e\u0221\u23e1\u000b\u0221",
+ "\u0003\u0221\u0003\u0221\u0003\u0221\u0003\u0221\u0003\u0222\u0003\u0222",
+ "\u0003\u0222\u0003\u0222\u0003\u0222\u0005\u0222\u23ec\n\u0222\u0003",
+ "\u0223\u0003\u0223\u0003\u0223\u0005\u0223\u23f1\n\u0223\u0003\u0224",
+ "\u0003\u0224\u0003\u0224\u0003\u0224\u0003\u0224\u0003\u0224\u0007\u0224",
+ "\u23f9\n\u0224\f\u0224\u000e\u0224\u23fc\u000b\u0224\u0003\u0224\u0003",
+ "\u0224\u0003\u0224\u0007\u0224\u2401\n\u0224\f\u0224\u000e\u0224\u2404",
+ "\u000b\u0224\u0005\u0224\u2406\n\u0224\u0003\u0224\u0003\u0224\u0003",
+ "\u0225\u0003\u0225\u0005\u0225\u240c\n\u0225\u0003\u0226\u0003\u0226",
+ "\u0003\u0226\u0005\u0226\u2411\n\u0226\u0003\u0226\u0005\u0226\u2414",
+ "\n\u0226\u0003\u0227\u0003\u0227\u0003\u0227\u0005\u0227\u2419\n\u0227",
+ "\u0003\u0227\u0003\u0227\u0003\u0227\u0005\u0227\u241e\n\u0227\u0003",
+ "\u0227\u0003\u0227\u0003\u0227\u0003\u0227\u0003\u0228\u0003\u0228\u0003",
+ "\u0228\u0003\u0228\u0003\u0228\u0007\u0228\u2429\n\u0228\f\u0228\u000e",
+ "\u0228\u242c\u000b\u0228\u0003\u0228\u0003\u0228\u0003\u0229\u0003\u0229",
+ "\u0005\u0229\u2432\n\u0229\u0003\u0229\u0003\u0229\u0003\u0229\u0003",
+ "\u0229\u0003\u0229\u0003\u0229\u0007\u0229\u243a\n\u0229\f\u0229\u000e",
+ "\u0229\u243d\u000b\u0229\u0003\u0229\u0003\u0229\u0005\u0229\u2441\n",
+ "\u0229\u0005\u0229\u2443\n\u0229\u0003\u022a\u0003\u022a\u0003\u022a",
+ "\u0005\u022a\u2448\n\u022a\u0003\u022a\u0003\u022a\u0005\u022a\u244c",
+ "\n\u022a\u0003\u022a\u0003\u022a\u0003\u022a\u0003\u022a\u0005\u022a",
+ "\u2452\n\u022a\u0003\u022a\u0003\u022a\u0005\u022a\u2456\n\u022a\u0003",
+ "\u022b\u0003\u022b\u0003\u022b\u0003\u022b\u0003\u022c\u0003\u022c\u0003",
+ "\u022c\u0003\u022c\u0003\u022c\u0007\u022c\u2461\n\u022c\f\u022c\u000e",
+ "\u022c\u2464\u000b\u022c\u0003\u022c\u0005\u022c\u2467\n\u022c\u0003",
+ "\u022c\u0003\u022c\u0003\u022c\u0003\u022c\u0003\u022c\u0003\u022c\u0007",
+ "\u022c\u246f\n\u022c\f\u022c\u000e\u022c\u2472\u000b\u022c\u0005\u022c",
+ "\u2474\n\u022c\u0005\u022c\u2476\n\u022c\u0003\u022d\u0003\u022d\u0003",
+ "\u022d\u0005\u022d\u247b\n\u022d\u0003\u022e\u0003\u022e\u0003\u022e",
+ "\u0003\u022e\u0003\u022e\u0007\u022e\u2482\n\u022e\f\u022e\u000e\u022e",
+ "\u2485\u000b\u022e\u0003\u022e\u0003\u022e\u0003\u022f\u0003\u022f\u0003",
+ "\u022f\u0003\u022f\u0003\u022f\u0003\u022f\u0007\u022f\u248f\n\u022f",
+ "\f\u022f\u000e\u022f\u2492\u000b\u022f\u0003\u022f\u0003\u022f\u0003",
+ "\u0230\u0003\u0230\u0003\u0230\u0005\u0230\u2499\n\u0230\u0003\u0230",
+ "\u0003\u0230\u0005\u0230\u249d\n\u0230\u0003\u0231\u0003\u0231\u0003",
+ "\u0231\u0003\u0232\u0003\u0232\u0007\u0232\u24a4\n\u0232\f\u0232\u000e",
+ "\u0232\u24a7\u000b\u0232\u0003\u0232\u0005\u0232\u24aa\n\u0232\u0003",
+ "\u0232\u0007\u0232\u24ad\n\u0232\f\u0232\u000e\u0232\u24b0\u000b\u0232",
+ "\u0003\u0232\u0003\u0232\u0003\u0233\u0003\u0233\u0003\u0233\u0003\u0233",
+ "\u0003\u0233\u0003\u0233\u0005\u0233\u24ba\n\u0233\u0005\u0233\u24bc",
+ "\n\u0233\u0003\u0234\u0003\u0234\u0003\u0234\u0003\u0234\u0003\u0235",
+ "\u0003\u0235\u0003\u0235\u0003\u0235\u0003\u0235\u0003\u0235\u0003\u0235",
+ "\u0003\u0235\u0007\u0235\u24ca\n\u0235\f\u0235\u000e\u0235\u24cd\u000b",
+ "\u0235\u0003\u0236\u0003\u0236\u0005\u0236\u24d1\n\u0236\u0003\u0236",
+ "\u0003\u0236\u0007\u0236\u24d5\n\u0236\f\u0236\u000e\u0236\u24d8\u000b",
+ "\u0236\u0003\u0236\u0003\u0236\u0003\u0237\u0005\u0237\u24dd\n\u0237",
+ "\u0003\u0237\u0003\u0237\u0003\u0237\u0003\u0237\u0003\u0237\u0003\u0237",
+ "\u0003\u0238\u0003\u0238\u0003\u0238\u0003\u0238\u0003\u0239\u0003\u0239",
+ "\u0003\u0239\u0003\u0239\u0007\u0239\u24ed\n\u0239\f\u0239\u000e\u0239",
+ "\u24f0\u000b\u0239\u0003\u0239\u0003\u0239\u0003\u023a\u0003\u023a\u0005",
+ "\u023a\u24f6\n\u023a\u0003\u023a\u0005\u023a\u24f9\n\u023a\u0003\u023b",
+ "\u0005\u023b\u24fc\n\u023b\u0003\u023b\u0003\u023b\u0003\u023b\u0003",
+ "\u023b\u0007\u023b\u2502\n\u023b\f\u023b\u000e\u023b\u2505\u000b\u023b",
+ "\u0005\u023b\u2507\n\u023b\u0003\u023b\u0003\u023b\u0003\u023c\u0003",
+ "\u023c\u0003\u023c\u0003\u023c\u0005\u023c\u250f\n\u023c\u0005\u023c",
+ "\u2511\n\u023c\u0003\u023c\u0003\u023c\u0005\u023c\u2515\n\u023c\u0003",
+ "\u023c\u0005\u023c\u2518\n\u023c\u0003\u023d\u0003\u023d\u0003\u023d",
+ "\u0005\u023d\u251d\n\u023d\u0005\u023d\u251f\n\u023d\u0003\u023d\u0003",
+ "\u023d\u0005\u023d\u2523\n\u023d\u0003\u023d\u0003\u023d\u0003\u023d",
+ "\u0003\u023e\u0003\u023e\u0003\u023f\u0003\u023f\u0003\u023f\u0003\u023f",
+ "\u0003\u023f\u0005\u023f\u252f\n\u023f\u0003\u0240\u0003\u0240\u0003",
+ "\u0240\u0003\u0240\u0003\u0240\u0003\u0241\u0003\u0241\u0005\u0241\u2538",
+ "\n\u0241\u0003\u0241\u0003\u0241\u0003\u0241\u0003\u0241\u0007\u0241",
+ "\u253e\n\u0241\f\u0241\u000e\u0241\u2541\u000b\u0241\u0003\u0242\u0003",
+ "\u0242\u0005\u0242\u2545\n\u0242\u0003\u0242\u0003\u0242\u0005\u0242",
+ "\u2549\n\u0242\u0003\u0243\u0003\u0243\u0003\u0243\u0003\u0243\u0003",
+ "\u0244\u0003\u0244\u0003\u0244\u0003\u0244\u0005\u0244\u2553\n\u0244",
+ "\u0005\u0244\u2555\n\u0244\u0003\u0244\u0003\u0244\u0003\u0244\u0003",
+ "\u0244\u0005\u0244\u255b\n\u0244\u0003\u0245\u0003\u0245\u0003\u0245",
+ "\u0005\u0245\u2560\n\u0245\u0003\u0245\u0005\u0245\u2563\n\u0245\u0003",
+ "\u0246\u0003\u0246\u0003\u0246\u0003\u0247\u0003\u0247\u0003\u0247\u0003",
+ "\u0247\u0003\u0247\u0005\u0247\u256d\n\u0247\u0003\u0248\u0003\u0248",
+ "\u0003\u0248\u0003\u0248\u0005\u0248\u2573\n\u0248\u0003\u0248\u0005",
+ "\u0248\u2576\n\u0248\u0003\u0248\u0005\u0248\u2579\n\u0248\u0003\u0249",
+ "\u0003\u0249\u0003\u0249\u0003\u0249\u0007\u0249\u257f\n\u0249\f\u0249",
+ "\u000e\u0249\u2582\u000b\u0249\u0003\u0249\u0003\u0249\u0003\u0249\u0003",
+ "\u0249\u0003\u0249\u0003\u0249\u0003\u0249\u0005\u0249\u258b\n\u0249",
+ "\u0003\u024a\u0003\u024a\u0003\u024a\u0003\u024a\u0003\u024a\u0003\u024a",
+ "\u0003\u024a\u0003\u024a\u0005\u024a\u2595\n\u024a\u0003\u024b\u0003",
+ "\u024b\u0005\u024b\u2599\n\u024b\u0003\u024b\u0003\u024b\u0005\u024b",
+ "\u259d\n\u024b\u0003\u024b\u0005\u024b\u25a0\n\u024b\u0003\u024b\u0005",
+ "\u024b\u25a3\n\u024b\u0003\u024c\u0003\u024c\u0003\u024c\u0005\u024c",
+ "\u25a8\n\u024c\u0003\u024d\u0003\u024d\u0003\u024d\u0005\u024d\u25ad",
+ "\n\u024d\u0003\u024d\u0005\u024d\u25b0\n\u024d\u0003\u024d\u0005\u024d",
+ "\u25b3\n\u024d\u0003\u024e\u0003\u024e\u0006\u024e\u25b7\n\u024e\r\u024e",
+ "\u000e\u024e\u25b8\u0003\u024e\u0005\u024e\u25bc\n\u024e\u0003\u024e",
+ "\u0003\u024e\u0003\u024f\u0003\u024f\u0005\u024f\u25c2\n\u024f\u0003",
+ "\u024f\u0005\u024f\u25c5\n\u024f\u0003\u0250\u0005\u0250\u25c8\n\u0250",
+ "\u0003\u0250\u0006\u0250\u25cb\n\u0250\r\u0250\u000e\u0250\u25cc\u0003",
+ "\u0250\u0005\u0250\u25d0\n\u0250\u0003\u0251\u0003\u0251\u0003\u0251",
+ "\u0003\u0251\u0006\u0251\u25d6\n\u0251\r\u0251\u000e\u0251\u25d7\u0003",
+ "\u0252\u0003\u0252\u0006\u0252\u25dc\n\u0252\r\u0252\u000e\u0252\u25dd",
+ "\u0003\u0253\u0003\u0253\u0003\u0253\u0005\u0253\u25e3\n\u0253\u0003",
+ "\u0254\u0003\u0254\u0003\u0254\u0005\u0254\u25e8\n\u0254\u0003\u0254",
+ "\u0003\u0254\u0003\u0255\u0003\u0255\u0003\u0255\u0003\u0255\u0005\u0255",
+ "\u25f0\n\u0255\u0003\u0255\u0003\u0255\u0003\u0255\u0003\u0255\u0003",
+ "\u0255\u0003\u0255\u0003\u0255\u0003\u0255\u0005\u0255\u25fa\n\u0255",
+ "\u0003\u0255\u0003\u0255\u0005\u0255\u25fe\n\u0255\u0005\u0255\u2600",
+ "\n\u0255\u0003\u0255\u0005\u0255\u2603\n\u0255\u0003\u0256\u0003\u0256",
+ "\u0003\u0256\u0003\u0256\u0003\u0256\u0003\u0256\u0003\u0256\u0003\u0256",
+ "\u0007\u0256\u260d\n\u0256\f\u0256\u000e\u0256\u2610\u000b\u0256\u0003",
+ "\u0256\u0005\u0256\u2613\n\u0256\u0003\u0256\u0005\u0256\u2616\n\u0256",
+ "\u0003\u0257\u0003\u0257\u0003\u0257\u0003\u0257\u0003\u0258\u0003\u0258",
+ "\u0003\u0258\u0003\u0259\u0003\u0259\u0003\u0259\u0003\u0259\u0003\u0259",
+ "\u0003\u0259\u0005\u0259\u2625\n\u0259\u0003\u0259\u0003\u0259\u0003",
+ "\u0259\u0005\u0259\u262a\n\u0259\u0003\u0259\u0003\u0259\u0005\u0259",
+ "\u262e\n\u0259\u0003\u025a\u0003\u025a\u0003\u025a\u0003\u025a\u0003",
+ "\u025a\u0005\u025a\u2635\n\u025a\u0003\u025a\u0005\u025a\u2638\n\u025a",
+ "\u0003\u025b\u0003\u025b\u0003\u025b\u0003\u025b\u0003\u025b\u0007\u025b",
+ "\u263f\n\u025b\f\u025b\u000e\u025b\u2642\u000b\u025b\u0003\u025b\u0003",
+ "\u025b\u0003\u025b\u0003\u025b\u0005\u025b\u2648\n\u025b\u0003\u025c",
+ "\u0003\u025c\u0003\u025c\u0005\u025c\u264d\n\u025c\u0003\u025d\u0003",
+ "\u025d\u0005\u025d\u2651\n\u025d\u0003\u025e\u0003\u025e\u0003\u025e",
+ "\u0003\u025e\u0003\u025e\u0003\u025e\u0005\u025e\u2659\n\u025e\u0003",
+ "\u025e\u0003\u025e\u0003\u025e\u0003\u025e\u0005\u025e\u265f\n\u025e",
+ "\u0003\u025f\u0003\u025f\u0003\u025f\u0003\u025f\u0003\u025f\u0003\u025f",
+ "\u0005\u025f\u2667\n\u025f\u0003\u025f\u0005\u025f\u266a\n\u025f\u0003",
+ "\u0260\u0003\u0260\u0003\u0260\u0003\u0260\u0003\u0261\u0003\u0261\u0003",
+ "\u0261\u0005\u0261\u2673\n\u0261\u0003\u0261\u0005\u0261\u2676\n\u0261",
+ "\u0003\u0261\u0005\u0261\u2679\n\u0261\u0003\u0262\u0003\u0262\u0003",
+ "\u0262\u0003\u0263\u0003\u0263\u0003\u0263\u0003\u0263\u0005\u0263\u2682",
+ "\n\u0263\u0003\u0264\u0003\u0264\u0003\u0264\u0003\u0264\u0005\u0264",
+ "\u2688\n\u0264\u0003\u0264\u0003\u0264\u0003\u0264\u0003\u0264\u0005",
+ "\u0264\u268e\n\u0264\u0005\u0264\u2690\n\u0264\u0003\u0265\u0003\u0265",
+ "\u0003\u0265\u0003\u0265\u0003\u0265\u0003\u0265\u0003\u0265\u0003\u0265",
+ "\u0003\u0265\u0005\u0265\u269b\n\u0265\u0005\u0265\u269d\n\u0265\u0003",
+ "\u0266\u0003\u0266\u0003\u0266\u0003\u0266\u0003\u0266\u0003\u0266\u0003",
+ "\u0266\u0005\u0266\u26a6\n\u0266\u0005\u0266\u26a8\n\u0266\u0003\u0267",
+ "\u0003\u0267\u0005\u0267\u26ac\n\u0267\u0003\u0267\u0003\u0267\u0003",
+ "\u0267\u0003\u0267\u0005\u0267\u26b2\n\u0267\u0003\u0267\u0003\u0267",
+ "\u0005\u0267\u26b6\n\u0267\u0003\u0268\u0003\u0268\u0003\u0268\u0003",
+ "\u0268\u0003\u0268\u0003\u0269\u0003\u0269\u0003\u026a\u0003\u026a\u0003",
+ "\u026a\u0007\u026a\u26c2\n\u026a\f\u026a\u000e\u026a\u26c5\u000b\u026a",
+ "\u0003\u026b\u0003\u026b\u0005\u026b\u26c9\n\u026b\u0003\u026c\u0003",
+ "\u026c\u0003\u026c\u0003\u026c\u0003\u026c\u0003\u026d\u0003\u026d\u0003",
+ "\u026d\u0003\u026d\u0003\u026d\u0003\u026d\u0003\u026d\u0003\u026d\u0003",
+ "\u026d\u0007\u026d\u26d9\n\u026d\f\u026d\u000e\u026d\u26dc\u000b\u026d",
+ "\u0003\u026e\u0005\u026e\u26df\n\u026e\u0003\u026e\u0003\u026e\u0003",
+ "\u026e\u0005\u026e\u26e4\n\u026e\u0003\u026e\u0007\u026e\u26e7\n\u026e",
+ "\f\u026e\u000e\u026e\u26ea\u000b\u026e\u0003\u026f\u0003\u026f\u0003",
+ "\u026f\u0003\u026f\u0003\u026f\u0003\u026f\u0003\u026f\u0003\u026f\u0003",
+ "\u026f\u0005\u026f\u26f5\n\u026f\u0003\u026f\u0003\u026f\u0005\u026f",
+ "\u26f9\n\u026f\u0003\u026f\u0003\u026f\u0003\u026f\u0007\u026f\u26fe",
+ "\n\u026f\f\u026f\u000e\u026f\u2701\u000b\u026f\u0003\u026f\u0003\u026f",
+ "\u0005\u026f\u2705\n\u026f\u0003\u0270\u0003\u0270\u0003\u0270\u0005",
+ "\u0270\u270a\n\u0270\u0003\u0270\u0005\u0270\u270d\n\u0270\u0003\u0271",
+ "\u0003\u0271\u0003\u0271\u0003\u0271\u0003\u0271\u0003\u0271\u0003\u0271",
+ "\u0007\u0271\u2716\n\u0271\f\u0271\u000e\u0271\u2719\u000b\u0271\u0003",
+ "\u0272\u0003\u0272\u0005\u0272\u271d\n\u0272\u0003\u0272\u0003\u0272",
+ "\u0003\u0272\u0003\u0272\u0003\u0272\u0003\u0272\u0003\u0272\u0003\u0272",
+ "\u0005\u0272\u2727\n\u0272\u0005\u0272\u2729\n\u0272\u0005\u0272\u272b",
+ "\n\u0272\u0003\u0273\u0003\u0273\u0003\u0273\u0003\u0273\u0003\u0273",
+ "\u0003\u0273\u0003\u0273\u0003\u0273\u0005\u0273\u2735\n\u0273\u0003",
+ "\u0273\u0003\u0273\u0005\u0273\u2739\n\u0273\u0005\u0273\u273b\n\u0273",
+ "\u0003\u0274\u0003\u0274\u0003\u0274\u0003\u0274\u0003\u0274\u0003\u0274",
+ "\u0003\u0274\u0003\u0274\u0007\u0274\u2745\n\u0274\f\u0274\u000e\u0274",
+ "\u2748\u000b\u0274\u0003\u0274\u0003\u0274\u0003\u0274\u0003\u0274\u0003",
+ "\u0274\u0005\u0274\u274f\n\u0274\u0003\u0275\u0003\u0275\u0003\u0275",
+ "\u0003\u0275\u0003\u0276\u0003\u0276\u0003\u0276\u0003\u0276\u0003\u0276",
+ "\u0003\u0276\u0003\u0276\u0005\u0276\u275c\n\u0276\u0003\u0276\u0005",
+ "\u0276\u275f\n\u0276\u0003\u0276\u0003\u0276\u0003\u0276\u0003\u0276",
+ "\u0003\u0276\u0003\u0276\u0003\u0276\u0003\u0276\u0003\u0276\u0003\u0276",
+ "\u0007\u0276\u276b\n\u0276\f\u0276\u000e\u0276\u276e\u000b\u0276\u0003",
+ "\u0277\u0003\u0277\u0003\u0277\u0003\u0277\u0003\u0277\u0005\u0277\u2775",
+ "\n\u0277\u0003\u0277\u0003\u0277\u0003\u0277\u0003\u0277\u0003\u0277",
+ "\u0003\u0277\u0005\u0277\u277d\n\u0277\u0003\u0277\u0003\u0277\u0003",
+ "\u0277\u0003\u0277\u0003\u0277\u0005\u0277\u2784\n\u0277\u0003\u0277",
+ "\u0003\u0277\u0005\u0277\u2788\n\u0277\u0003\u0278\u0003\u0278\u0003",
+ "\u0278\u0003\u0278\u0003\u0278\u0005\u0278\u278f\n\u0278\u0003\u0279",
+ "\u0003\u0279\u0005\u0279\u2793\n\u0279\u0003\u0279\u0003\u0279\u0003",
+ "\u0279\u0005\u0279\u2798\n\u0279\u0007\u0279\u279a\n\u0279\f\u0279\u000e",
+ "\u0279\u279d\u000b\u0279\u0003\u0279\u0003\u0279\u0003\u0279\u0007\u0279",
+ "\u27a2\n\u0279\f\u0279\u000e\u0279\u27a5\u000b\u0279\u0003\u0279\u0005",
+ "\u0279\u27a8\n\u0279\u0003\u027a\u0003\u027a\u0003\u027a\u0003\u027a",
+ "\u0003\u027a\u0005\u027a\u27af\n\u027a\u0003\u027a\u0003\u027a\u0003",
+ "\u027a\u0005\u027a\u27b4\n\u027a\u0003\u027a\u0003\u027a\u0003\u027a",
+ "\u0003\u027a\u0003\u027a\u0003\u027a\u0003\u027a\u0005\u027a\u27bd\n",
+ "\u027a\u0003\u027b\u0003\u027b\u0003\u027b\u0003\u027b\u0003\u027b\u0003",
+ "\u027b\u0003\u027b\u0005\u027b\u27c6\n\u027b\u0003\u027b\u0005\u027b",
+ "\u27c9\n\u027b\u0003\u027b\u0003\u027b\u0003\u027c\u0003\u027c\u0003",
+ "\u027c\u0003\u027c\u0003\u027c\u0003\u027c\u0003\u027c\u0003\u027c\u0003",
+ "\u027c\u0003\u027c\u0003\u027c\u0003\u027c\u0003\u027c\u0003\u027c\u0003",
+ "\u027c\u0003\u027c\u0005\u027c\u27dd\n\u027c\u0003\u027d\u0003\u027d",
+ "\u0005\u027d\u27e1\n\u027d\u0003\u027e\u0005\u027e\u27e4\n\u027e\u0003",
+ "\u027e\u0003\u027e\u0003\u027e\u0006\u027e\u27e9\n\u027e\r\u027e\u000e",
+ "\u027e\u27ea\u0003\u027e\u0005\u027e\u27ee\n\u027e\u0003\u027e\u0003",
+ "\u027e\u0005\u027e\u27f2\n\u027e\u0003\u027e\u0005\u027e\u27f5\n\u027e",
+ "\u0003\u027f\u0003\u027f\u0003\u027f\u0003\u027f\u0003\u027f\u0005\u027f",
+ "\u27fc\n\u027f\u0003\u0280\u0005\u0280\u27ff\n\u0280\u0003\u0280\u0003",
+ "\u0280\u0006\u0280\u2803\n\u0280\r\u0280\u000e\u0280\u2804\u0003\u0280",
+ "\u0005\u0280\u2808\n\u0280\u0003\u0280\u0003\u0280\u0005\u0280\u280c",
+ "\n\u0280\u0003\u0280\u0005\u0280\u280f\n\u0280\u0003\u0281\u0003\u0281",
+ "\u0003\u0281\u0003\u0281\u0003\u0281\u0005\u0281\u2816\n\u0281\u0003",
+ "\u0282\u0003\u0282\u0003\u0282\u0005\u0282\u281b\n\u0282\u0003\u0283",
+ "\u0003\u0283\u0003\u0283\u0003\u0283\u0003\u0283\u0003\u0283\u0003\u0283",
+ "\u0003\u0283\u0003\u0283\u0003\u0283\u0007\u0283\u2827\n\u0283\f\u0283",
+ "\u000e\u0283\u282a\u000b\u0283\u0003\u0283\u0003\u0283\u0003\u0283\u0003",
+ "\u0283\u0005\u0283\u2830\n\u0283\u0003\u0284\u0003\u0284\u0003\u0284",
+ "\u0003\u0284\u0003\u0284\u0003\u0284\u0003\u0284\u0003\u0284\u0003\u0284",
+ "\u0005\u0284\u283b\n\u0284\u0003\u0285\u0003\u0285\u0003\u0285\u0003",
+ "\u0285\u0003\u0285\u0003\u0285\u0003\u0285\u0005\u0285\u2844\n\u0285",
+ "\u0003\u0285\u0003\u0285\u0003\u0285\u0003\u0285\u0003\u0285\u0003\u0285",
+ "\u0003\u0285\u0005\u0285\u284d\n\u0285\u0003\u0285\u0003\u0285\u0005",
+ "\u0285\u2851\n\u0285\u0003\u0285\u0003\u0285\u0005\u0285\u2855\n\u0285",
+ "\u0003\u0285\u0003\u0285\u0003\u0285\u0003\u0285\u0003\u0285\u0003\u0285",
+ "\u0003\u0285\u0003\u0285\u0003\u0285\u0003\u0285\u0003\u0285\u0003\u0285",
+ "\u0003\u0285\u0003\u0285\u0003\u0285\u0003\u0285\u0003\u0285\u0003\u0285",
+ "\u0003\u0285\u0003\u0285\u0003\u0285\u0003\u0285\u0003\u0285\u0003\u0285",
+ "\u0005\u0285\u286f\n\u0285\u0003\u0285\u0005\u0285\u2872\n\u0285\u0003",
+ "\u0285\u0005\u0285\u2875\n\u0285\u0003\u0285\u0003\u0285\u0003\u0285",
+ "\u0003\u0285\u0003\u0285\u0003\u0285\u0003\u0285\u0003\u0285\u0005\u0285",
+ "\u287f\n\u0285\u0003\u0285\u0003\u0285\u0005\u0285\u2883\n\u0285\u0003",
+ "\u0286\u0003\u0286\u0003\u0286\u0005\u0286\u2888\n\u0286\u0003\u0287",
+ "\u0003\u0287\u0003\u0287\u0003\u0287\u0005\u0287\u288e\n\u0287\u0003",
+ "\u0288\u0003\u0288\u0003\u0288\u0005\u0288\u2893\n\u0288\u0003\u0289",
+ "\u0003\u0289\u0003\u0289\u0005\u0289\u2898\n\u0289\u0003\u0289\u0003",
+ "\u0289\u0003\u0289\u0003\u0289\u0003\u0289\u0003\u0289\u0003\u0289\u0005",
+ "\u0289\u28a1\n\u0289\u0003\u0289\u0005\u0289\u28a4\n\u0289\u0005\u0289",
+ "\u28a6\n\u0289\u0003\u0289\u0003\u0289\u0005\u0289\u28aa\n\u0289\u0003",
+ "\u0289\u0003\u0289\u0003\u0289\u0003\u0289\u0003\u0289\u0005\u0289\u28b1",
+ "\n\u0289\u0003\u0289\u0003\u0289\u0003\u0289\u0003\u0289\u0003\u0289",
+ "\u0005\u0289\u28b8\n\u0289\u0003\u0289\u0003\u0289\u0003\u0289\u0003",
+ "\u0289\u0003\u0289\u0003\u0289\u0005\u0289\u28c0\n\u0289\u0003\u0289",
+ "\u0003\u0289\u0003\u0289\u0003\u0289\u0003\u0289\u0003\u0289\u0003\u0289",
+ "\u0003\u0289\u0003\u0289\u0003\u0289\u0003\u0289\u0003\u0289\u0003\u0289",
+ "\u0005\u0289\u28cf\n\u0289\u0003\u028a\u0003\u028a\u0003\u028a\u0005",
+ "\u028a\u28d4\n\u028a\u0003\u028a\u0003\u028a\u0003\u028a\u0005\u028a",
+ "\u28d9\n\u028a\u0003\u028a\u0003\u028a\u0003\u028a\u0003\u028a\u0005",
+ "\u028a\u28df\n\u028a\u0003\u028a\u0005\u028a\u28e2\n\u028a\u0003\u028a",
+ "\u0003\u028a\u0005\u028a\u28e6\n\u028a\u0003\u028a\u0003\u028a\u0003",
+ "\u028a\u0003\u028a\u0003\u028a\u0003\u028a\u0003\u028a\u0003\u028a\u0005",
+ "\u028a\u28f0\n\u028a\u0003\u028a\u0003\u028a\u0003\u028a\u0003\u028a",
+ "\u0003\u028a\u0003\u028a\u0003\u028a\u0003\u028a\u0003\u028a\u0003\u028a",
+ "\u0005\u028a\u28fc\n\u028a\u0005\u028a\u28fe\n\u028a\u0003\u028a\u0003",
+ "\u028a\u0003\u028a\u0003\u028a\u0003\u028a\u0005\u028a\u2905\n\u028a",
+ "\u0003\u028a\u0003\u028a\u0005\u028a\u2909\n\u028a\u0003\u028a\u0003",
+ "\u028a\u0003\u028a\u0003\u028a\u0003\u028a\u0006\u028a\u2910\n\u028a",
+ "\r\u028a\u000e\u028a\u2911\u0003\u028a\u0003\u028a\u0003\u028a\u0003",
+ "\u028a\u0003\u028a\u0003\u028a\u0003\u028a\u0005\u028a\u291b\n\u028a",
+ "\u0003\u028a\u0003\u028a\u0003\u028a\u0003\u028a\u0003\u028a\u0003\u028a",
+ "\u0003\u028a\u0003\u028a\u0003\u028a\u0003\u028a\u0003\u028a\u0003\u028a",
+ "\u0005\u028a\u2929\n\u028a\u0003\u028a\u0003\u028a\u0003\u028a\u0003",
+ "\u028a\u0003\u028a\u0003\u028a\u0005\u028a\u2931\n\u028a\u0003\u028a",
+ "\u0005\u028a\u2934\n\u028a\u0003\u028a\u0003\u028a\u0003\u028a\u0003",
+ "\u028a\u0003\u028a\u0003\u028a\u0003\u028a\u0005\u028a\u293d\n\u028a",
+ "\u0003\u028a\u0003\u028a\u0007\u028a\u2941\n\u028a\f\u028a\u000e\u028a",
+ "\u2944\u000b\u028a\u0003\u028a\u0003\u028a\u0003\u028a\u0003\u028a\u0003",
+ "\u028a\u0003\u028a\u0003\u028a\u0005\u028a\u294d\n\u028a\u0003\u028a",
+ "\u0003\u028a\u0003\u028a\u0003\u028a\u0003\u028a\u0003\u028a\u0005\u028a",
+ "\u2955\n\u028a\u0003\u028a\u0005\u028a\u2958\n\u028a\u0003\u028a\u0005",
+ "\u028a\u295b\n\u028a\u0003\u028a\u0003\u028a\u0003\u028a\u0003\u028a",
+ "\u0003\u028a\u0003\u028a\u0003\u028a\u0005\u028a\u2964\n\u028a\u0003",
+ "\u028a\u0003\u028a\u0003\u028a\u0005\u028a\u2969\n\u028a\u0003\u028a",
+ "\u0003\u028a\u0003\u028a\u0003\u028a\u0003\u028a\u0007\u028a\u2970\n",
+ "\u028a\f\u028a\u000e\u028a\u2973\u000b\u028a\u0003\u028a\u0003\u028a",
+ "\u0003\u028a\u0005\u028a\u2978\n\u028a\u0003\u028a\u0003\u028a\u0003",
+ "\u028a\u0005\u028a\u297d\n\u028a\u0003\u028a\u0005\u028a\u2980\n\u028a",
+ "\u0003\u028a\u0003\u028a\u0003\u028a\u0005\u028a\u2985\n\u028a\u0003",
+ "\u028a\u0003\u028a\u0003\u028a\u0005\u028a\u298a\n\u028a\u0007\u028a",
+ "\u298c\n\u028a\f\u028a\u000e\u028a\u298f\u000b\u028a\u0003\u028a\u0003",
+ "\u028a\u0003\u028a\u0005\u028a\u2994\n\u028a\u0003\u028a\u0003\u028a",
+ "\u0003\u028a\u0003\u028a\u0005\u028a\u299a\n\u028a\u0003\u028a\u0003",
+ "\u028a\u0003\u028a\u0003\u028a\u0003\u028a\u0003\u028a\u0003\u028a\u0005",
+ "\u028a\u29a3\n\u028a\u0003\u028a\u0003\u028a\u0003\u028a\u0005\u028a",
+ "\u29a8\n\u028a\u0003\u028a\u0003\u028a\u0003\u028a\u0003\u028a\u0003",
+ "\u028a\u0003\u028a\u0005\u028a\u29b0\n\u028a\u0003\u028a\u0003\u028a",
+ "\u0005\u028a\u29b4\n\u028a\u0003\u028a\u0003\u028a\u0003\u028a\u0005",
+ "\u028a\u29b9\n\u028a\u0003\u028a\u0003\u028a\u0003\u028a\u0003\u028a",
+ "\u0005\u028a\u29bf\n\u028a\u0003\u028a\u0003\u028a\u0003\u028a\u0003",
+ "\u028a\u0003\u028a\u0005\u028a\u29c6\n\u028a\u0003\u028a\u0003\u028a",
+ "\u0003\u028a\u0005\u028a\u29cb\n\u028a\u0003\u028a\u0003\u028a\u0003",
+ "\u028a\u0003\u028a\u0003\u028a\u0005\u028a\u29d2\n\u028a\u0003\u028a",
+ "\u0003\u028a\u0005\u028a\u29d6\n\u028a\u0003\u028a\u0003\u028a\u0003",
+ "\u028a\u0005\u028a\u29db\n\u028a\u0003\u028a\u0003\u028a\u0003\u028a",
+ "\u0003\u028a\u0003\u028a\u0003\u028a\u0005\u028a\u29e3\n\u028a\u0003",
+ "\u028a\u0005\u028a\u29e6\n\u028a\u0003\u028a\u0005\u028a\u29e9\n\u028a",
+ "\u0003\u028a\u0005\u028a\u29ec\n\u028a\u0003\u028a\u0003\u028a\u0005",
+ "\u028a\u29f0\n\u028a\u0003\u028a\u0003\u028a\u0003\u028a\u0005\u028a",
+ "\u29f5\n\u028a\u0003\u028a\u0005\u028a\u29f8\n\u028a\u0003\u028b\u0003",
+ "\u028b\u0003\u028c\u0003\u028c\u0003\u028d\u0003\u028d\u0003\u028e\u0003",
+ "\u028e\u0003\u028e\u0005\u028e\u2a03\n\u028e\u0003\u028e\u0003\u028e",
+ "\u0005\u028e\u2a07\n\u028e\u0005\u028e\u2a09\n\u028e\u0003\u028e\u0003",
+ "\u028e\u0003\u028f\u0003\u028f\u0003\u028f\u0003\u028f\u0003\u028f\u0003",
+ "\u028f\u0003\u028f\u0005\u028f\u2a14\n\u028f\u0003\u0290\u0003\u0290",
+ "\u0003\u0291\u0003\u0291\u0003\u0291\u0003\u0291\u0003\u0291\u0003\u0291",
+ "\u0003\u0291\u0005\u0291\u2a1f\n\u0291\u0003\u0292\u0003\u0292\u0003",
+ "\u0292\u0003\u0292\u0003\u0292\u0007\u0292\u2a26\n\u0292\f\u0292\u000e",
+ "\u0292\u2a29\u000b\u0292\u0005\u0292\u2a2b\n\u0292\u0003\u0293\u0003",
+ "\u0293\u0005\u0293\u2a2f\n\u0293\u0003\u0293\u0005\u0293\u2a32\n\u0293",
+ "\u0003\u0293\u0003\u0293\u0003\u0294\u0003\u0294\u0003\u0294\u0003\u0294",
+ "\u0003\u0295\u0003\u0295\u0003\u0295\u0003\u0295\u0003\u0295\u0003\u0295",
+ "\u0003\u0295\u0005\u0295\u2a41\n\u0295\u0003\u0296\u0003\u0296\u0003",
+ "\u0296\u0005\u0296\u2a46\n\u0296\u0003\u0296\u0003\u0296\u0003\u0296",
+ "\u0003\u0296\u0007\u0296\u2a4c\n\u0296\f\u0296\u000e\u0296\u2a4f\u000b",
+ "\u0296\u0003\u0296\u0003\u0296\u0003\u0296\u0003\u0296\u0005\u0296\u2a55",
+ "\n\u0296\u0003\u0296\u0003\u0296\u0005\u0296\u2a59\n\u0296\u0003\u0297",
+ "\u0003\u0297\u0003\u0297\u0005\u0297\u2a5e\n\u0297\u0003\u0297\u0003",
+ "\u0297\u0005\u0297\u2a62\n\u0297\u0003\u0297\u0003\u0297\u0003\u0297",
+ "\u0005\u0297\u2a67\n\u0297\u0007\u0297\u2a69\n\u0297\f\u0297\u000e\u0297",
+ "\u2a6c\u000b\u0297\u0003\u0298\u0003\u0298\u0003\u0298\u0005\u0298\u2a71",
+ "\n\u0298\u0003\u0298\u0005\u0298\u2a74\n\u0298\u0003\u0298\u0003\u0298",
+ "\u0003\u0298\u0007\u0298\u2a79\n\u0298\f\u0298\u000e\u0298\u2a7c\u000b",
+ "\u0298\u0003\u0298\u0003\u0298\u0003\u0299\u0003\u0299\u0003\u0299\u0003",
+ "\u0299\u0003\u0299\u0005\u0299\u2a85\n\u0299\u0003\u0299\u0003\u0299",
+ "\u0003\u0299\u0003\u0299\u0007\u0299\u2a8b\n\u0299\f\u0299\u000e\u0299",
+ "\u2a8e\u000b\u0299\u0003\u0299\u0005\u0299\u2a91\n\u0299\u0003\u0299",
+ "\u0003\u0299\u0003\u029a\u0003\u029a\u0003\u029a\u0003\u029a\u0003\u029a",
+ "\u0003\u029a\u0005\u029a\u2a9b\n\u029a\u0003\u029a\u0005\u029a\u2a9e",
+ "\n\u029a\u0005\u029a\u2aa0\n\u029a\u0003\u029b\u0003\u029b\u0003\u029b",
+ "\u0003\u029c\u0003\u029c\u0003\u029c\u0003\u029c\u0003\u029c\u0005\u029c",
+ "\u2aaa\n\u029c\u0005\u029c\u2aac\n\u029c\u0003\u029d\u0003\u029d\u0003",
+ "\u029d\u0003\u029d\u0005\u029d\u2ab2\n\u029d\u0003\u029e\u0003\u029e",
+ "\u0003\u029e\u0003\u029e\u0005\u029e\u2ab8\n\u029e\u0005\u029e\u2aba",
+ "\n\u029e\u0003\u029f\u0003\u029f\u0003\u029f\u0003\u02a0\u0003\u02a0",
+ "\u0003\u02a0\u0003\u02a1\u0003\u02a1\u0003\u02a1\u0003\u02a1\u0003\u02a1",
+ "\u0003\u02a1\u0005\u02a1\u2ac8\n\u02a1\u0005\u02a1\u2aca\n\u02a1\u0003",
+ "\u02a2\u0003\u02a2\u0003\u02a2\u0003\u02a2\u0003\u02a2\u0003\u02a2\u0003",
+ "\u02a2\u0003\u02a2\u0005\u02a2\u2ad4\n\u02a2\u0003\u02a3\u0003\u02a3",
+ "\u0003\u02a3\u0003\u02a3\u0003\u02a3\u0003\u02a3\u0003\u02a3\u0005\u02a3",
+ "\u2add\n\u02a3\u0003\u02a3\u0003\u02a3\u0003\u02a3\u0005\u02a3\u2ae2",
+ "\n\u02a3\u0003\u02a4\u0003\u02a4\u0003\u02a4\u0003\u02a4\u0003\u02a4",
+ "\u0003\u02a4\u0003\u02a4\u0005\u02a4\u2aeb\n\u02a4\u0003\u02a5\u0003",
+ "\u02a5\u0005\u02a5\u2aef\n\u02a5\u0003\u02a5\u0003\u02a5\u0005\u02a5",
+ "\u2af3\n\u02a5\u0003\u02a5\u0003\u02a5\u0003\u02a6\u0005\u02a6\u2af8",
+ "\n\u02a6\u0003\u02a6\u0003\u02a6\u0005\u02a6\u2afc\n\u02a6\u0003\u02a6",
+ "\u0005\u02a6\u2aff\n\u02a6\u0003\u02a7\u0003\u02a7\u0005\u02a7\u2b03",
+ "\n\u02a7\u0003\u02a8\u0003\u02a8\u0003\u02a8\u0003\u02a8\u0003\u02a8",
+ "\u0005\u02a8\u2b0a\n\u02a8\u0003\u02a9\u0003\u02a9\u0005\u02a9\u2b0e",
+ "\n\u02a9\u0003\u02a9\u0003\u02a9\u0003\u02a9\u0003\u02a9\u0007\u02a9",
+ "\u2b14\n\u02a9\f\u02a9\u000e\u02a9\u2b17\u000b\u02a9\u0003\u02aa\u0003",
+ "\u02aa\u0005\u02aa\u2b1b\n\u02aa\u0003\u02ab\u0003\u02ab\u0003\u02ac",
+ "\u0003\u02ac\u0003\u02ad\u0003\u02ad\u0003\u02ae\u0003\u02ae\u0003\u02af",
+ "\u0003\u02af\u0003\u02b0\u0003\u02b0\u0003\u02b1\u0003\u02b1\u0003\u02b1",
+ "\u0007\u02b1\u2b2c\n\u02b1\f\u02b1\u000e\u02b1\u2b2f\u000b\u02b1\u0003",
+ "\u02b1\u0003\u02b1\u0005\u02b1\u2b33\n\u02b1\u0003\u02b2\u0003\u02b2",
+ "\u0003\u02b3\u0003\u02b3\u0003\u02b3\u0005\u02b3\u2b3a\n\u02b3\u0003",
+ "\u02b4\u0003\u02b4\u0003\u02b5\u0003\u02b5\u0003\u02b6\u0003\u02b6\u0003",
+ "\u02b7\u0003\u02b7\u0003\u02b7\u0005\u02b7\u2b45\n\u02b7\u0003\u02b8",
+ "\u0003\u02b8\u0003\u02b8\u0007\u02b8\u2b4a\n\u02b8\f\u02b8\u000e\u02b8",
+ "\u2b4d\u000b\u02b8\u0003\u02b9\u0003\u02b9\u0003\u02ba\u0003\u02ba\u0005",
+ "\u02ba\u2b53\n\u02ba\u0003\u02bb\u0003\u02bb\u0005\u02bb\u2b57\n\u02bb",
+ "\u0003\u02bc\u0003\u02bc\u0003\u02bc\u0007\u02bc\u2b5c\n\u02bc\f\u02bc",
+ "\u000e\u02bc\u2b5f\u000b\u02bc\u0003\u02bc\u0003\u02bc\u0005\u02bc\u2b63",
+ "\n\u02bc\u0003\u02bd\u0003\u02bd\u0003\u02be\u0003\u02be\u0003\u02be",
+ "\u0007\u02be\u2b6a\n\u02be\f\u02be\u000e\u02be\u2b6d\u000b\u02be\u0003",
+ "\u02bf\u0003\u02bf\u0003\u02bf\u0007\u02bf\u2b72\n\u02bf\f\u02bf\u000e",
+ "\u02bf\u2b75\u000b\u02bf\u0003\u02c0\u0003\u02c0\u0003\u02c0\u0007\u02c0",
+ "\u2b7a\n\u02c0\f\u02c0\u000e\u02c0\u2b7d\u000b\u02c0\u0003\u02c1\u0003",
+ "\u02c1\u0003\u02c1\u0005\u02c1\u2b82\n\u02c1\u0003\u02c2\u0003\u02c2",
+ "\u0003\u02c2\u0005\u02c2\u2b87\n\u02c2\u0003\u02c3\u0003\u02c3\u0003",
+ "\u02c3\u0005\u02c3\u2b8c\n\u02c3\u0003\u02c4\u0003\u02c4\u0005\u02c4",
+ "\u2b90\n\u02c4\u0003\u02c4\u0003\u02c4\u0003\u02c4\u0005\u02c4\u2b95",
+ "\n\u02c4\u0003\u02c4\u0005\u02c4\u2b98\n\u02c4\u0003\u02c5\u0003\u02c5",
+ "\u0003\u02c5\u0005\u02c5\u2b9d\n\u02c5\u0003\u02c6\u0003\u02c6\u0005",
+ "\u02c6\u2ba1\n\u02c6\u0003\u02c7\u0003\u02c7\u0005\u02c7\u2ba5\n\u02c7",
+ "\u0003\u02c8\u0003\u02c8\u0003\u02c8\u0005\u02c8\u2baa\n\u02c8\u0003",
+ "\u02c9\u0003\u02c9\u0003\u02ca\u0003\u02ca\u0003\u02ca\u0007\u02ca\u2bb1",
+ "\n\u02ca\f\u02ca\u000e\u02ca\u2bb4\u000b\u02ca\u0003\u02cb\u0003\u02cb",
+ "\u0003\u02cb\u0005\u02cb\u2bb9\n\u02cb\u0003\u02cb\u0003\u02cb\u0003",
+ "\u02cb\u0005\u02cb\u2bbe\n\u02cb\u0003\u02cb\u0003\u02cb\u0005\u02cb",
+ "\u2bc2\n\u02cb\u0005\u02cb\u2bc4\n\u02cb\u0003\u02cc\u0003\u02cc\u0003",
+ "\u02cc\u0003\u02cc\u0003\u02cc\u0005\u02cc\u2bcb\n\u02cc\u0003\u02cc",
+ "\u0003\u02cc\u0005\u02cc\u2bcf\n\u02cc\u0003\u02cc\u0003\u02cc\u0003",
+ "\u02cc\u0003\u02cc\u0007\u02cc\u2bd5\n\u02cc\f\u02cc\u000e\u02cc\u2bd8",
+ "\u000b\u02cc\u0005\u02cc\u2bda\n\u02cc\u0003\u02cc\u0003\u02cc\u0003",
+ "\u02cc\u0005\u02cc\u2bdf\n\u02cc\u0003\u02cd\u0003\u02cd\u0003\u02cd",
+ "\u0007\u02cd\u2be4\n\u02cd\f\u02cd\u000e\u02cd\u2be7\u000b\u02cd\u0003",
+ "\u02ce\u0003\u02ce\u0003\u02cf\u0003\u02cf\u0003\u02d0\u0003\u02d0\u0003",
+ "\u02d1\u0003\u02d1\u0003\u02d2\u0003\u02d2\u0003\u02d2\u0003\u02d2\u0003",
+ "\u02d2\u0007\u02d2\u2bf6\n\u02d2\f\u02d2\u000e\u02d2\u2bf9\u000b\u02d2",
+ "\u0003\u02d2\u0003\u02d2\u0003\u02d2\u0003\u02d2\u0003\u02d2\u0003\u02d2",
+ "\u0003\u02d2\u0003\u02d2\u0003\u02d2\u0003\u02d2\u0003\u02d2\u0003\u02d2",
+ "\u0003\u02d2\u0003\u02d2\u0005\u02d2\u2c09\n\u02d2\u0003\u02d3\u0003",
+ "\u02d3\u0003\u02d3\u0007\u02d3\u2c0e\n\u02d3\f\u02d3\u000e\u02d3\u2c11",
+ "\u000b\u02d3\u0003\u02d4\u0003\u02d4\u0003\u02d4\u0003\u02d4\u0003\u02d5",
+ "\u0003\u02d5\u0003\u02d5\u0003\u02d5\u0003\u02d5\u0003\u02d5\u0003\u02d5",
+ "\u0005\u02d5\u2c1e\n\u02d5\u0003\u02d6\u0003\u02d6\u0003\u02d6\u0003",
+ "\u02d6\u0007\u02d6\u2c24\n\u02d6\f\u02d6\u000e\u02d6\u2c27\u000b\u02d6",
+ "\u0005\u02d6\u2c29\n\u02d6\u0003\u02d6\u0003\u02d6\u0005\u02d6\u2c2d",
+ "\n\u02d6\u0003\u02d7\u0003\u02d7\u0003\u02d7\u0005\u02d7\u2c32\n\u02d7",
+ "\u0003\u02d7\u0003\u02d7\u0003\u02d7\u0005\u02d7\u2c37\n\u02d7\u0007",
+ "\u02d7\u2c39\n\u02d7\f\u02d7\u000e\u02d7\u2c3c\u000b\u02d7\u0005\u02d7",
+ "\u2c3e\n\u02d7\u0003\u02d7\u0003\u02d7\u0005\u02d7\u2c42\n\u02d7\u0003",
+ "\u02d8\u0003\u02d8\u0003\u02d8\u0003\u02d8\u0003\u02d8\u0005\u02d8\u2c49",
+ "\n\u02d8\u0003\u02d8\u0003\u02d8\u0003\u02d8\u0005\u02d8\u2c4e\n\u02d8",
+ "\u0005\u02d8\u2c50\n\u02d8\u0005\u02d8\u2c52\n\u02d8\u0003\u02d8\u0003",
+ "\u02d8\u0003\u02d8\u0003\u02d8\u0003\u02d8\u0003\u02d8\u0003\u02d8\u0003",
+ "\u02d8\u0005\u02d8\u2c5c\n\u02d8\u0003\u02d8\u0003\u02d8\u0003\u02d8",
+ "\u0005\u02d8\u2c61\n\u02d8\u0007\u02d8\u2c63\n\u02d8\f\u02d8\u000e\u02d8",
+ "\u2c66\u000b\u02d8\u0005\u02d8\u2c68\n\u02d8\u0003\u02d8\u0003\u02d8",
+ "\u0005\u02d8\u2c6c\n\u02d8\u0003\u02d9\u0003\u02d9\u0003\u02d9\u0003",
+ "\u02da\u0003\u02da\u0003\u02da\u0003\u02da\u0005\u02da\u2c75\n\u02da",
+ "\u0003\u02da\u0003\u02da\u0003\u02db\u0003\u02db\u0005\u02db\u2c7b\n",
+ "\u02db\u0003\u02db\u0003\u02db\u0005\u02db\u2c7f\n\u02db\u0005\u02db",
+ "\u2c81\n\u02db\u0003\u02dc\u0003\u02dc\u0005\u02dc\u2c85\n\u02dc\u0003",
+ "\u02dc\u0003\u02dc\u0005\u02dc\u2c89\n\u02dc\u0003\u02dc\u0003\u02dc",
+ "\u0003\u02dc\u0003\u02dc\u0003\u02dc\u0005\u02dc\u2c90\n\u02dc\u0003",
+ "\u02dc\u0003\u02dc\u0003\u02dc\u0003\u02dc\u0003\u02dc\u0003\u02dc\u0005",
+ "\u02dc\u2c98\n\u02dc\u0003\u02dc\u0003\u02dc\u0003\u02dc\u0003\u02dc",
+ "\u0003\u02dc\u0003\u02dc\u0005\u02dc\u2ca0\n\u02dc\u0005\u02dc\u2ca2",
+ "\n\u02dc\u0003\u02dd\u0003\u02dd\u0003\u02dd\u0005\u02dd\u2ca7\n\u02dd",
+ "\u0003\u02dd\u0003\u02dd\u0005\u02dd\u2cab\n\u02dd\u0003\u02dd\u0005",
+ "\u02dd\u2cae\n\u02dd\u0003\u02dd\u0003\u02dd\u0003\u02de\u0003\u02de",
+ "\u0003\u02de\u0003\u02de\u0003\u02de\u0003\u02de\u0003\u02de\u0003\u02de",
+ "\u0003\u02de\u0003\u02de\u0003\u02de\u0003\u02de\u0003\u02de\u0003\u02de",
+ "\u0003\u02de\u0003\u02de\u0003\u02de\u0003\u02de\u0003\u02de\u0003\u02de",
+ "\u0005\u02de\u2cc6\n\u02de\u0003\u02de\u0003\u02de\u0003\u02de\u0003",
+ "\u02de\u0003\u02de\u0005\u02de\u2ccd\n\u02de\u0003\u02de\u0003\u02de",
+ "\u0003\u02de\u0003\u02de\u0003\u02de\u0003\u02de\u0003\u02de\u0003\u02de",
+ "\u0003\u02de\u0003\u02de\u0003\u02de\u0003\u02de\u0003\u02de\u0003\u02de",
+ "\u0003\u02de\u0003\u02de\u0003\u02de\u0003\u02de\u0003\u02de\u0003\u02de",
+ "\u0003\u02de\u0003\u02de\u0003\u02de\u0003\u02de\u0003\u02de\u0003\u02de",
+ "\u0003\u02de\u0003\u02de\u0003\u02de\u0003\u02de\u0003\u02de\u0005\u02de",
+ "\u2cee\n\u02de\u0003\u02df\u0003\u02df\u0003\u02df\u0005\u02df\u2cf3",
+ "\n\u02df\u0003\u02df\u0005\u02df\u2cf6\n\u02df\u0003\u02df\u0003\u02df",
+ "\u0003\u02df\u0005\u02df\u2cfb\n\u02df\u0005\u02df\u2cfd\n\u02df\u0003",
+ "\u02df\u0003\u02df\u0007\u02df\u2d01\n\u02df\f\u02df\u000e\u02df\u2d04",
+ "\u000b\u02df\u0003\u02e0\u0003\u02e0\u0003\u02e0\u0007\u02e0\u2d09\n",
+ "\u02e0\f\u02e0\u000e\u02e0\u2d0c\u000b\u02e0\u0003\u02e1\u0003\u02e1",
+ "\u0005\u02e1\u2d10\n\u02e1\u0003\u02e1\u0003\u02e1\u0003\u02e1\u0007",
+ "\u02e1\u2d15\n\u02e1\f\u02e1\u000e\u02e1\u2d18\u000b\u02e1\u0003\u02e1",
+ "\u0003\u02e1\u0005\u02e1\u2d1c\n\u02e1\u0003\u02e1\u0005\u02e1\u2d1f",
+ "\n\u02e1\u0003\u02e2\u0003\u02e2\u0005\u02e2\u2d23\n\u02e2\u0003\u02e2",
+ "\u0003\u02e2\u0003\u02e2\u0007\u02e2\u2d28\n\u02e2\f\u02e2\u000e\u02e2",
+ "\u2d2b\u000b\u02e2\u0003\u02e3\u0003\u02e3\u0005\u02e3\u2d2f\n\u02e3",
+ "\u0003\u02e3\u0003\u02e3\u0003\u02e3\u0003\u02e3\u0003\u02e3\u0003\u02e3",
+ "\u0003\u02e3\u0003\u02e3\u0003\u02e3\u0003\u02e3\u0003\u02e3\u0003\u02e3",
+ "\u0003\u02e3\u0003\u02e3\u0003\u02e3\u0003\u02e3\u0003\u02e3\u0003\u02e3",
+ "\u0003\u02e3\u0003\u02e3\u0003\u02e3\u0003\u02e3\u0003\u02e3\u0003\u02e3",
+ "\u0003\u02e3\u0003\u02e3\u0003\u02e3\u0003\u02e3\u0005\u02e3\u2d4d\n",
+ "\u02e3\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0005",
+ "\u02e4\u2d54\n\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4",
+ "\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4",
+ "\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0005\u02e4\u2d63\n\u02e4\u0003",
+ "\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003",
+ "\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003",
+ "\u02e4\u0003\u02e4\u0005\u02e4\u2d73\n\u02e4\u0003\u02e4\u0003\u02e4",
+ "\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4",
+ "\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4",
+ "\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0005\u02e4\u2d86\n\u02e4\u0003",
+ "\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003",
+ "\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003",
+ "\u02e4\u0003\u02e4\u0003\u02e4\u0005\u02e4\u2d97\n\u02e4\u0003\u02e4",
+ "\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0005\u02e4\u2d9e\n",
+ "\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003",
+ "\u02e4\u0005\u02e4\u2da6\n\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4",
+ "\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4",
+ "\u0003\u02e4\u0003\u02e4\u0005\u02e4\u2db3\n\u02e4\u0003\u02e4\u0003",
+ "\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0005",
+ "\u02e4\u2dbc\n\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4",
+ "\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0005\u02e4\u2dc5\n\u02e4\u0003",
+ "\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003",
+ "\u02e4\u0005\u02e4\u2dce\n\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4",
+ "\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0005\u02e4",
+ "\u2dd8\n\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003",
+ "\u02e4\u0003\u02e4\u0005\u02e4\u2de0\n\u02e4\u0003\u02e4\u0003\u02e4",
+ "\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4",
+ "\u0005\u02e4\u2dea\n\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003",
+ "\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0005\u02e4\u2df4",
+ "\n\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4",
+ "\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0005\u02e4",
+ "\u2e00\n\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003",
+ "\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003",
+ "\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0005\u02e4\u2e10\n\u02e4",
+ "\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4",
+ "\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4",
+ "\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0005\u02e4\u2e22\n",
+ "\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003",
+ "\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0005",
+ "\u02e4\u2e2f\n\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4",
+ "\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4",
+ "\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0005\u02e4\u2e3e\n\u02e4\u0003",
+ "\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003",
+ "\u02e4\u0003\u02e4\u0003\u02e4\u0005\u02e4\u2e49\n\u02e4\u0003\u02e4",
+ "\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4",
+ "\u0003\u02e4\u0005\u02e4\u2e53\n\u02e4\u0003\u02e4\u0003\u02e4\u0003",
+ "\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003",
+ "\u02e4\u0005\u02e4\u2e5e\n\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4",
+ "\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0005\u02e4",
+ "\u2e68\n\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003",
+ "\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003",
+ "\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0005\u02e4\u2e79",
+ "\n\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0005\u02e4",
+ "\u2e7f\n\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003",
+ "\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003",
+ "\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0003",
+ "\u02e4\u0003\u02e4\u0003\u02e4\u0003\u02e4\u0005\u02e4\u2e95\n\u02e4",
+ "\u0003\u02e5\u0003\u02e5\u0003\u02e5\u0005\u02e5\u2e9a\n\u02e5\u0003",
+ "\u02e5\u0003\u02e5\u0003\u02e5\u0003\u02e5\u0005\u02e5\u2ea0\n\u02e5",
+ "\u0003\u02e5\u0003\u02e5\u0003\u02e5\u0003\u02e5\u0005\u02e5\u2ea6\n",
+ "\u02e5\u0003\u02e5\u0003\u02e5\u0003\u02e5\u0003\u02e5\u0005\u02e5\u2eac",
+ "\n\u02e5\u0003\u02e5\u0003\u02e5\u0003\u02e5\u0005\u02e5\u2eb1\n\u02e5",
+ "\u0005\u02e5\u2eb3\n\u02e5\u0003\u02e5\u0005\u02e5\u2eb6\n\u02e5\u0003",
+ "\u02e5\u0003\u02e5\u0003\u02e5\u0003\u02e5\u0003\u02e5\u0003\u02e5\u0003",
+ "\u02e5\u0003\u02e5\u0005\u02e5\u2ec0\n\u02e5\u0003\u02e5\u0005\u02e5",
+ "\u2ec3\n\u02e5\u0005\u02e5\u2ec5\n\u02e5\u0005\u02e5\u2ec7\n\u02e5\u0003",
+ "\u02e5\u0003\u02e5\u0003\u02e5\u0003\u02e5\u0003\u02e5\u0003\u02e5\u0003",
+ "\u02e5\u0003\u02e5\u0003\u02e5\u0003\u02e5\u0003\u02e5\u0003\u02e5\u0005",
+ "\u02e5\u2ed5\n\u02e5\u0003\u02e6\u0003\u02e6\u0003\u02e7\u0003\u02e7",
+ "\u0003\u02e7\u0003\u02e8\u0003\u02e8\u0003\u02e9\u0003\u02e9\u0005\u02e9",
+ "\u2ee0\n\u02e9\u0003\u02e9\u0003\u02e9\u0003\u02ea\u0003\u02ea\u0005",
+ "\u02ea\u2ee6\n\u02ea\u0003\u02eb\u0003\u02eb\u0003\u02eb\u0003\u02eb",
+ "\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003\u02ec",
+ "\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003\u02ec",
+ "\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003\u02ec",
+ "\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003\u02ec",
+ "\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003\u02ec",
+ "\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003\u02ec",
+ "\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003\u02ec",
+ "\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003\u02ec",
+ "\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003\u02ec",
+ "\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003\u02ec",
+ "\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003\u02ec",
+ "\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0003\u02ec",
+ "\u0003\u02ec\u0003\u02ec\u0003\u02ec\u0005\u02ec\u2f37\n\u02ec\u0003",
+ "\u02ed\u0003\u02ed\u0003\u02ee\u0003\u02ee\u0003\u02ef\u0003\u02ef\u0003",
+ "\u02f0\u0003\u02f0\u0003\u02f0\u0002\u0005\u04d8\u04e0\u04ea\u02f1\u0002",
+ "\u0004\u0006\b\n\f\u000e\u0010\u0012\u0014\u0016\u0018\u001a\u001c\u001e",
+ " \"$&(*,.02468:<>@BDFHJLNPRTVXZ\\^`bdfhjlnprtvxz|~\u0080\u0082\u0084",
+ "\u0086\u0088\u008a\u008c\u008e\u0090\u0092\u0094\u0096\u0098\u009a\u009c",
+ "\u009e\u00a0\u00a2\u00a4\u00a6\u00a8\u00aa\u00ac\u00ae\u00b0\u00b2\u00b4",
+ "\u00b6\u00b8\u00ba\u00bc\u00be\u00c0\u00c2\u00c4\u00c6\u00c8\u00ca\u00cc",
+ "\u00ce\u00d0\u00d2\u00d4\u00d6\u00d8\u00da\u00dc\u00de\u00e0\u00e2\u00e4",
+ "\u00e6\u00e8\u00ea\u00ec\u00ee\u00f0\u00f2\u00f4\u00f6\u00f8\u00fa\u00fc",
+ "\u00fe\u0100\u0102\u0104\u0106\u0108\u010a\u010c\u010e\u0110\u0112\u0114",
+ "\u0116\u0118\u011a\u011c\u011e\u0120\u0122\u0124\u0126\u0128\u012a\u012c",
+ "\u012e\u0130\u0132\u0134\u0136\u0138\u013a\u013c\u013e\u0140\u0142\u0144",
+ "\u0146\u0148\u014a\u014c\u014e\u0150\u0152\u0154\u0156\u0158\u015a\u015c",
+ "\u015e\u0160\u0162\u0164\u0166\u0168\u016a\u016c\u016e\u0170\u0172\u0174",
+ "\u0176\u0178\u017a\u017c\u017e\u0180\u0182\u0184\u0186\u0188\u018a\u018c",
+ "\u018e\u0190\u0192\u0194\u0196\u0198\u019a\u019c\u019e\u01a0\u01a2\u01a4",
+ "\u01a6\u01a8\u01aa\u01ac\u01ae\u01b0\u01b2\u01b4\u01b6\u01b8\u01ba\u01bc",
+ "\u01be\u01c0\u01c2\u01c4\u01c6\u01c8\u01ca\u01cc\u01ce\u01d0\u01d2\u01d4",
+ "\u01d6\u01d8\u01da\u01dc\u01de\u01e0\u01e2\u01e4\u01e6\u01e8\u01ea\u01ec",
+ "\u01ee\u01f0\u01f2\u01f4\u01f6\u01f8\u01fa\u01fc\u01fe\u0200\u0202\u0204",
+ "\u0206\u0208\u020a\u020c\u020e\u0210\u0212\u0214\u0216\u0218\u021a\u021c",
+ "\u021e\u0220\u0222\u0224\u0226\u0228\u022a\u022c\u022e\u0230\u0232\u0234",
+ "\u0236\u0238\u023a\u023c\u023e\u0240\u0242\u0244\u0246\u0248\u024a\u024c",
+ "\u024e\u0250\u0252\u0254\u0256\u0258\u025a\u025c\u025e\u0260\u0262\u0264",
+ "\u0266\u0268\u026a\u026c\u026e\u0270\u0272\u0274\u0276\u0278\u027a\u027c",
+ "\u027e\u0280\u0282\u0284\u0286\u0288\u028a\u028c\u028e\u0290\u0292\u0294",
+ "\u0296\u0298\u029a\u029c\u029e\u02a0\u02a2\u02a4\u02a6\u02a8\u02aa\u02ac",
+ "\u02ae\u02b0\u02b2\u02b4\u02b6\u02b8\u02ba\u02bc\u02be\u02c0\u02c2\u02c4",
+ "\u02c6\u02c8\u02ca\u02cc\u02ce\u02d0\u02d2\u02d4\u02d6\u02d8\u02da\u02dc",
+ "\u02de\u02e0\u02e2\u02e4\u02e6\u02e8\u02ea\u02ec\u02ee\u02f0\u02f2\u02f4",
+ "\u02f6\u02f8\u02fa\u02fc\u02fe\u0300\u0302\u0304\u0306\u0308\u030a\u030c",
+ "\u030e\u0310\u0312\u0314\u0316\u0318\u031a\u031c\u031e\u0320\u0322\u0324",
+ "\u0326\u0328\u032a\u032c\u032e\u0330\u0332\u0334\u0336\u0338\u033a\u033c",
+ "\u033e\u0340\u0342\u0344\u0346\u0348\u034a\u034c\u034e\u0350\u0352\u0354",
+ "\u0356\u0358\u035a\u035c\u035e\u0360\u0362\u0364\u0366\u0368\u036a\u036c",
+ "\u036e\u0370\u0372\u0374\u0376\u0378\u037a\u037c\u037e\u0380\u0382\u0384",
+ "\u0386\u0388\u038a\u038c\u038e\u0390\u0392\u0394\u0396\u0398\u039a\u039c",
+ "\u039e\u03a0\u03a2\u03a4\u03a6\u03a8\u03aa\u03ac\u03ae\u03b0\u03b2\u03b4",
+ "\u03b6\u03b8\u03ba\u03bc\u03be\u03c0\u03c2\u03c4\u03c6\u03c8\u03ca\u03cc",
+ "\u03ce\u03d0\u03d2\u03d4\u03d6\u03d8\u03da\u03dc\u03de\u03e0\u03e2\u03e4",
+ "\u03e6\u03e8\u03ea\u03ec\u03ee\u03f0\u03f2\u03f4\u03f6\u03f8\u03fa\u03fc",
+ "\u03fe\u0400\u0402\u0404\u0406\u0408\u040a\u040c\u040e\u0410\u0412\u0414",
+ "\u0416\u0418\u041a\u041c\u041e\u0420\u0422\u0424\u0426\u0428\u042a\u042c",
+ "\u042e\u0430\u0432\u0434\u0436\u0438\u043a\u043c\u043e\u0440\u0442\u0444",
+ "\u0446\u0448\u044a\u044c\u044e\u0450\u0452\u0454\u0456\u0458\u045a\u045c",
+ "\u045e\u0460\u0462\u0464\u0466\u0468\u046a\u046c\u046e\u0470\u0472\u0474",
+ "\u0476\u0478\u047a\u047c\u047e\u0480\u0482\u0484\u0486\u0488\u048a\u048c",
+ "\u048e\u0490\u0492\u0494\u0496\u0498\u049a\u049c\u049e\u04a0\u04a2\u04a4",
+ "\u04a6\u04a8\u04aa\u04ac\u04ae\u04b0\u04b2\u04b4\u04b6\u04b8\u04ba\u04bc",
+ "\u04be\u04c0\u04c2\u04c4\u04c6\u04c8\u04ca\u04cc\u04ce\u04d0\u04d2\u04d4",
+ "\u04d6\u04d8\u04da\u04dc\u04de\u04e0\u04e2\u04e4\u04e6\u04e8\u04ea\u04ec",
+ "\u04ee\u04f0\u04f2\u04f4\u04f6\u04f8\u04fa\u04fc\u04fe\u0500\u0502\u0504",
+ "\u0506\u0508\u050a\u050c\u050e\u0510\u0512\u0514\u0516\u0518\u051a\u051c",
+ "\u051e\u0520\u0522\u0524\u0526\u0528\u052a\u052c\u052e\u0530\u0532\u0534",
+ "\u0536\u0538\u053a\u053c\u053e\u0540\u0542\u0544\u0546\u0548\u054a\u054c",
+ "\u054e\u0550\u0552\u0554\u0556\u0558\u055a\u055c\u055e\u0560\u0562\u0564",
+ "\u0566\u0568\u056a\u056c\u056e\u0570\u0572\u0574\u0576\u0578\u057a\u057c",
+ "\u057e\u0580\u0582\u0584\u0586\u0588\u058a\u058c\u058e\u0590\u0592\u0594",
+ "\u0596\u0598\u059a\u059c\u059e\u05a0\u05a2\u05a4\u05a6\u05a8\u05aa\u05ac",
+ "\u05ae\u05b0\u05b2\u05b4\u05b6\u05b8\u05ba\u05bc\u05be\u05c0\u05c2\u05c4",
+ "\u05c6\u05c8\u05ca\u05cc\u05ce\u05d0\u05d2\u05d4\u05d6\u05d8\u05da\u05dc",
+ "\u05de\u0002\u00b1\u0004\u0002??\u02b9\u02b9\u0004\u0002\"\"\u04e4\u04e4",
+ "\u0005\u0002\u0248\u0248\u02fb\u02fb\u0542\u0542\u0004\u0002\u00c7\u00c7",
+ "\u0492\u0492\u0005\u0002\u0087\u0087\u04a9\u04a9\u0610\u0610\u0004\u0002",
+ "\u0181\u0181\u01b9\u01b9\u0004\u0002 gg\u0005\u0002\u016c\u016c\u029f",
+ "\u029f\u07eb\u07eb\u0005\u0002\u0389\u0389\u0461\u0461\u04b1\u04b1\u0004",
+ "\u0002\u0220\u0220\u0818\u0818\u0004\u0002\u0087\u0087\u0610\u0610\u0004",
+ "\u0002\u0014\u0014\u019d\u019d\u0005\u0002\u0014\u0014\u019d\u019d\u0361",
+ "\u0361\u0005\u0002\u013a\u013a\u047d\u047d\u0614\u0614\u0004\u0002\u0323",
+ "\u0323\u0492\u0492\u0004\u0002\u033c\u033c\u062a\u062a\u0005\u0002\u020d",
+ "\u020d\u02a4\u02a4\u04a5\u04a5\u0005\u0002\u00dc\u00dc\u0431\u0431\u05a3",
+ "\u05a3\u0005\u0002\u0154\u0154\u0192\u0192\u0538\u0538\u0004\u0002~",
+ "~\u07d4\u07d4\u0004\u0002@@\u0175\u0175\u0004\u0002\u02b7\u02b7\u0839",
+ "\u0839\u0004\u0002\u0364\u0364\u03eb\u03eb\u0004\u0002\u01f0\u01f0\u0239",
+ "\u0239\u0004\u0002\u0161\u0161\u0782\u0782\u0004\u0002\u030a\u030a\u07d8",
+ "\u07d8\u0004\u0002\u0014\u0014\u057d\u057d\u0004\u0002\u045a\u045a\u0467",
+ "\u0467\u0004\u0002\u06f5\u06f5\u0809\u0809\u0004\u0002\u0094\u0094\u01d5",
+ "\u01d5\u0004\u0002\u0005\u0005\u05e4\u05e4\u0004\u0002%%\u0130\u0130",
+ "\u0010\u0002))OO\u00db\u00db\u016c\u016c\u01dd\u01dd\u0216\u0216\u023d",
+ "\u023d\u0279\u0279\u029f\u029f\u030a\u030a\u054b\u054b\u057e\u057e\u05d4",
+ "\u05d4\u07eb\u07eb\u0004\u0002\u0019\u0019\u016a\u016a\u0004\u0002\u01a9",
+ "\u01a9\u03f0\u03f0\u0004\u0002\u0414\u0414\u057a\u057a\u0004\u0002\u0469",
+ "\u0469\u084f\u084f\u0005\u0002\u025c\u025c\u025f\u025f\u045f\u045f\u0004",
+ "\u0002\u0164\u0164\u0267\u0267\u0004\u0002\u043e\u043e\u0818\u0818\u0004",
+ "\u0002\u0140\u0140\u0780\u0780\u0005\u0002\u0267\u0267\u041c\u041c\u0782",
+ "\u0782\u0004\u0002\u045b\u045b\u046a\u046a\u0004\u0002pp\u0606\u0606",
+ "\u0005\u0002\u020b\u020b\u030d\u030d\u03e3\u03e3\u0004\u0002UU\u0322",
+ "\u0322\u0004\u0002\u0245\u0245\u03da\u03da\u0004\u0002\u00dc\u00dc\u016e",
+ "\u016e\u0004\u0002\u01c1\u01c1\u07c0\u07c0\u0004\u0002II\u065b\u065b",
+ "\u0004\u0002\u01db\u01db\u026d\u026d\u0004\u0002\u0098\u0098\u03b4\u03b4",
+ "\u0004\u0002\u0849\u0849\u084b\u084b\u0005\u0002\u00e2\u00e2\u0201\u0201",
+ "\u0220\u0220\u0004\u0002\u0303\u0303\u0325\u0325\u0004\u0002\u041e\u041e",
+ "\u05a6\u05a6\u0004\u0002\u016c\u016c\u0516\u0516\u0004\u0002\u0161\u0161",
+ "\u0220\u0220\u0004\u0002bb\u05cd\u05cd\u0004\u0002\u0301\u0301\u0778",
+ "\u0778\u0004\u0002;;\u0538\u0538\u0004\u0002\u0254\u0254\u0319\u0319",
+ "\u0004\u0002\u07d6\u07d6\u08ab\u08ab\u0005\u0002\u0161\u0161\u02d2\u02d2",
+ "\u0557\u0557\u0005\u0002\u0161\u0161\u02d2\u02d2\u03f1\u03f1\u0004\u0002",
+ "\u0349\u0349\u03e7\u03e7\u0004\u0002\'\'\u0185\u0185\u0004\u0002\u00c3",
+ "\u00c3\u0620\u0620\u0004\u0002\u0417\u0417\u0584\u0584\u0004\u0002\u019a",
+ "\u019a\u07ef\u07ef\u0004\u0002hh\u01bf\u01bf\u0004\u0002\u030e\u030e",
+ "\u04e2\u04e2\u0005\u0002\\\\\u04db\u04db\u052b\u052b\u0004\u0002\u00dc",
+ "\u00dc\u0511\u0511\u0004\u0002\u0442\u0442\u083c\u083c\u0004\u0002\u0003",
+ "\u0003\u063a\u063a\u0004\u0002\u04e2\u04e2\u0608\u0608\u0005\u0002%",
+ "%\u03f1\u03f1\u0620\u0620\u0004\u0002\u019d\u019d\u02d2\u02d2\u0004",
+ "\u0002\u0424\u0424\u060a\u060a\u0004\u0002\u0307\u0307\u081c\u081c\u0004",
+ "\u0002\u022a\u022a\u04d1\u04d1\u0004\u0002\u0160\u0160\u02d1\u02d1\u0005",
+ "\u0002\u0254\u0254\u0319\u0319\u033b\u033b\u0004\u0002\u0238\u0238\u0303",
+ "\u0303\u0004\u0002\u0135\u0135\u0167\u0167\u0006\u0002\u028e\u028e\u029a",
+ "\u029a\u03c1\u03c1\u04a0\u04a0\u0004\u0002\u0161\u0161\u08ba\u08ba\u0003",
+ "\u0003\u08c3\u08c3\u0003\u0002\u08c3\u08c3\u0003\u0002\u0598\u0599\u0003",
+ "\u0002\u0103\u0104\u0004\u0002cc\u0267\u0267\u0004\u0002\u008c\u008c",
+ "\u0171\u0171\u0005\u0002%%\u018e\u018e\u07d4\u07d4\u0004\u0002\u0128",
+ "\u0128\u0378\u0378\u0005\u0002\u022e\u022e\u02e6\u02e6\u059f\u059f\u0004",
+ "\u0002\u05c2\u05c2\u078f\u078f\u0005\u0002\u05c2\u05c2\u0608\u0608\u078f",
+ "\u078f\u0004\u0002\u01da\u01da\u026b\u026b\u0004\u0002\u012c\u012c\u05a5",
+ "\u05a5\u0004\u0002\u0262\u0262\u02d2\u02d2\u0004\u0002%%\u07ea\u07ea",
+ "\u0004\u0002YY\u05db\u05db\u0004\u0002\u0210\u0210\u02dd\u02dd\u0003",
+ "\u0002\u05ad\u05ae\u0004\u0002\u0210\u0210\u038c\u038c\u0004\u0002%",
+ "%\u0210\u0210\u0004\u0002\u077a\u077a\u0788\u0788\u0004\u0002\u033c",
+ "\u033c\u0645\u0645\u0004\u0002\u02f3\u02f5\u02f7\u02f7\u0003\u0002\u08c0",
+ "\u08c1\u0004\u0002\u08b4\u08b4\u08b8\u08b8\u0003\u0002\u08b5\u08b6\u0004",
+ "\u0002\u015e\u015e\u026f\u026f\u0006\u0002%%22\u01e0\u01e0\u0609\u0609",
+ "\u0005\u0002\u0089\u0089\u02e5\u02e5\u07b3\u07b3\u0004\u0002%%\u018e",
+ "\u018e\u0004\u0002\u00a6\u00a6\u0857\u0857\u0004\u0002\u018e\u018e\u07d4",
+ "\u07d4\u0004\u0002\u04d3\u04d5\u04d8\u04d8\u0004\u0002\u00a1\u00a1\u00e0",
+ "\u00e0\u0004\u0002\u0213\u0213\u02de\u02de\u0004\u0002\u00b3\u00b3\u037b",
+ "\u037b\u0004\u0002\u0859\u0859\u0861\u0861\u0004\u0002\u01c5\u01c5\u03cf",
+ "\u03cf\u0004\u0002\u01d0\u01d0\u0371\u0371\u0004\u0002\u0109\u0109\u0195",
+ "\u0195\u0004\u0002\u0252\u0252\u05f2\u05f2\u0007\u0002\u088d\u088f\u0891",
+ "\u0896\u0898\u0899\u089b\u089b\u089f\u08a2\u0003\u0002\u0886\u088c\u0003",
+ "\u0002\u0880\u0885\u0004\u0002\u0542\u0542\u05ae\u05ae\u0004\u0002\u021d",
+ "\u021d\u050c\u050c\u0004\u0002\u041f\u041f\u05bf\u05bf\u0004\u0002\u01c8",
+ "\u01c8\u01cc\u01cc\u0004\u0002\u0498\u0498\u0615\u0615\u0004\u0002\u00dc",
+ "\u00dc\u05a3\u05a3\u0005\u0002\u00dc\u00dc\u03f1\u03f1\u05a3\u05a3\u0004",
+ "\u0002\u04b9\u04b9\u0648\u0648\u0004\u0002\u0589\u0589\u060e\u060e\u0004",
+ "\u0002\u0262\u0262\u058a\u058a\u0003\u0002\u04d9\u04da\u0004\u0002\u014b",
+ "\u014b\u087b\u087b\u0004\u0002\u0366\u0366\u05ca\u05ca\u0004\u0002\u0097",
+ "\u0097\u00b2\u00b2\u0005\u0002))\u0122\u0122\u019d\u019d\u0004\u0002",
+ "))\u019d\u019d\u0004\u0002\u0122\u0122\u019d\u019d\u0004\u0002))\u0122",
+ "\u0122\u0005\u0002))\u019d\u019d\u01dd\u01dd\u0004\u000222\u01ef\u01ef",
+ "\u0004\u0002\u00bc\u00bc\u0527\u0527\u0006\u0002))\u00db\u00db\u019d",
+ "\u019d\u05d4\u05d4\u0006\u0002))\u019d\u019d\u05d4\u05d4\u07eb\u07eb",
+ "\u0005\u0002\u016c\u016c\u019d\u019d\u029f\u029f\b\u0002))\u016c\u016c",
+ "\u019d\u019d\u029f\u029f\u05d4\u05d4\u07eb\u07eb\u0004\u0002\u019d\u019d",
+ "\u07eb\u07eb\u0005\u0002))\u019d\u019d\u023d\u023d\u0005\u0002))\u019d",
+ "\u019d\u05d4\u05d4\u0005\u0002))\u0122\u0122\u058f\u058f\u0005\u0002",
+ "))\u019d\u019d\u080d\u080d\f\u0002))__\u00db\u00db\u016c\u016c\u019d",
+ "\u019d\u029f\u029f\u030a\u030a\u054b\u054b\u05d4\u05d4\u07eb\u07eb\u0007",
+ "\u0002))\u0122\u0122\u019d\u019d\u031f\u031f\u07d6\u07d6\u0006\u0002",
+ "))\u019d\u019d\u01dd\u01dd\u07cf\u07cf\u0005\u0002\u019d\u019d\u0342",
+ "\u0342\u07cf\u07cf\u0004\u0002++OO\u0004\u0002\u017a\u017a\u07b4\u07b4",
+ "\b\u0002\u014b\u014b\u0258\u0258\u034e\u034e\u0366\u0366\u05ca\u05ca",
+ "\u087b\u087b\u0003\u0002\u08ab\u08ac\u0004\u0002\u08a6\u08a6\u08ad\u08ad",
+ "\u00dd\u0002\b\b\n\u000b\r\r\u000f\u000f\u0012\u0013\u001c\u001c\u001f",
+ "\u001f/0779:<ACEEGNPUWWYY\\\\__acfhjknwy|~\u0087\u0089\u008d\u008f\u0093",
+ "\u0095\u009b\u009f\u00a0\u00a3\u00a7\u00a9\u00ae\u00b0\u00b1\u00b3\u00b5",
+ "\u00b7\u00bc\u00bf\u00bf\u00c2\u00c6\u00ca\u00ca\u00cc\u00dd\u00df\u00e3",
+ "\u00e6\u00e9\u00eb\u00ec\u00f0\u00f1\u00f5\u00fc\u00fe\u0104\u0106\u0106",
+ "\u0109\u010d\u010f\u010f\u0112\u0121\u0124\u0125\u0128\u012a\u012c\u012d",
+ "\u012f\u0139\u013b\u0141\u0144\u0144\u0146\u0146\u014a\u014b\u014d\u0151",
+ "\u0153\u0158\u015a\u015b\u015d\u0160\u0162\u0165\u0167\u0169\u016d\u0174",
+ "\u0177\u0178\u017a\u017b\u017d\u017f\u0181\u0181\u0183\u0186\u0188\u018a",
+ "\u018c\u018d\u018f\u0190\u0192\u019c\u019e\u019e\u01a0\u01a1\u01a5\u01a8",
+ "\u01aa\u01ad\u01af\u01b1\u01b5\u01b7\u01b9\u01b9\u01bb\u01be\u01c0\u01c6",
+ "\u01c9\u01ce\u01d0\u01d0\u01d2\u01d5\u01d8\u01db\u01dd\u01de\u01e1\u01e1",
+ "\u01e3\u01ea\u01ec\u01f0\u01f2\u01f6\u01f8\u01fb\u01fe\u01fe\u0201\u0201",
+ "\u0203\u0203\u0205\u0207\u0209\u0209\u020b\u0213\u0215\u0217\u0219\u021e",
+ "\u0220\u0223\u0226\u022b\u022d\u0231\u0233\u0236\u0238\u023b\u023e\u023e",
+ "\u0240\u024a\u024c\u025a\u025c\u0265\u0267\u0269\u026b\u0278\u027b\u0289",
+ "\u028b\u028c\u028f\u0295\u0297\u0297\u0299\u0299\u029c\u029e\u02a0\u02ab",
+ "\u02ae\u02b1\u02b3\u02b4\u02b6\u02b8\u02ba\u02c0\u02d1\u02d7\u02d9\u02d9",
+ "\u02dc\u02df\u02e1\u02ef\u02f1\u02f6\u02f8\u02f8\u02fa\u0308\u030b\u0311",
+ "\u0313\u0315\u0318\u0322\u0324\u0326\u032b\u0334\u0336\u033c\u033e\u0343",
+ "\u0345\u034b\u034d\u0358\u035a\u035c\u0360\u0362\u0364\u0367\u0369\u036c",
+ "\u036e\u0378\u037a\u037f\u0381\u03a9\u03ac\u03ae\u03b0\u03b0\u03b2\u03b7",
+ "\u03b9\u03b9\u03bc\u03c0\u03c2\u03c5\u03c8\u03ca\u03cc\u03d7\u03d9\u03dd",
+ "\u03e1\u03ef\u03f1\u03f5\u03f7\u0400\u0404\u0405\u0407\u0407\u040a\u040d",
+ "\u040f\u0412\u0414\u0415\u0417\u041c\u041e\u0424\u0426\u0432\u0434\u0435",
+ "\u0437\u043c\u043e\u043e\u0443\u0447\u0449\u044a\u044c\u044c\u044e\u0455",
+ "\u0457\u045b\u045e\u0462\u0464\u0464\u0467\u0467\u0469\u0469\u046b\u0476",
+ "\u0478\u0479\u047e\u0484\u048b\u048e\u0490\u0491\u0493\u0495\u0497\u0497",
+ "\u0499\u049f\u04a1\u04a4\u04a6\u04aa\u04ac\u04ad\u04af\u04b2\u04b4\u04b4",
+ "\u04b7\u04c4\u04c7\u04c7\u04c9\u04c9\u04cb\u04cc\u04ce\u04d2\u04d6\u04d7",
+ "\u04db\u04db\u04dd\u04de\u04e1\u04e3\u04e6\u04ec\u04ee\u04f2\u04f4\u04f5",
+ "\u04fd\u0500\u0502\u0502\u0505\u0506\u050a\u050f\u0511\u0516\u0518\u0518",
+ "\u051a\u051a\u051e\u051f\u0521\u052b\u052f\u0532\u0534\u053e\u0540\u0544",
+ "\u0546\u054c\u054e\u0550\u0552\u0558\u055a\u0577\u057a\u057d\u057f\u0588",
+ "\u058a\u058a\u058c\u058f\u0591\u0592\u0594\u059b\u059d\u05a0\u05a2\u05a6",
+ "\u05a8\u05b2\u05b4\u05b7\u05b9\u05c3\u05c5\u05c6\u05c8\u05ca\u05cc\u05d3",
+ "\u05d6\u05db\u05dd\u05dd\u05e0\u05e0\u05e3\u05e7\u05e9\u05ee\u05f2\u05f9",
+ "\u05fc\u0600\u0602\u0606\u0608\u060b\u060e\u0613\u0616\u0618\u061a\u061c",
+ "\u061e\u061e\u0620\u0622\u0624\u0627\u062a\u063d\u063f\u064a\u064d\u0651",
+ "\u0653\u0653\u0655\u065c\u065e\u0660\u0662\u0662\u0664\u0668\u066a\u067a",
+ "\u067c\u067f\u0682\u0684\u0687\u069b\u069d\u06a7\u06a9\u06aa\u06b0\u06c7",
+ "\u06c9\u06e3\u06e5\u06ee\u06f0\u0771\u0775\u077b\u077d\u0784\u0786\u078a",
+ "\u078d\u078d\u078f\u078f\u0792\u0793\u0795\u079c\u079e\u07ad\u07af\u07b8",
+ "\u07ba\u07bb\u07bd\u07c0\u07c2\u07c8\u07ca\u07cd\u07cf\u07d2\u07d5\u07d8",
+ "\u07da\u07df\u07e1\u07e4\u07e6\u07ea\u07ec\u07f2\u07f4\u07f6\u07f8\u07fa",
+ "\u07fc\u0801\u0803\u0807\u0809\u080d\u080f\u080f\u0811\u0811\u0818\u0819",
+ "\u081c\u081c\u0820\u0826\u082b\u0834\u0837\u0837\u0839\u083d\u0841\u0843",
+ "\u0846\u0849\u084c\u084d\u084f\u0850\u0852\u0854\u0856\u0861\u0863\u0877",
+ "\u087b\u087c\u087f\u088e\u0891\u0898\u089a\u08a0\u08a2\u08a5\u0005\u0002",
+ "\u00ba\u00ba\u0890\u0890\u089c\u089e\u0007\u0002\u011b\u011b\u088d\u088d",
+ "\u0897\u0897\u089a\u089a\u089f\u089f\u0002\u364b\u0002\u05e0\u0003\u0002",
+ "\u0002\u0002\u0004\u05ec\u0003\u0002\u0002\u0002\u0006\u0629\u0003\u0002",
+ "\u0002\u0002\b\u062b\u0003\u0002\u0002\u0002\n\u0630\u0003\u0002\u0002",
+ "\u0002\f\u0643\u0003\u0002\u0002\u0002\u000e\u0677\u0003\u0002\u0002",
+ "\u0002\u0010\u067b\u0003\u0002\u0002\u0002\u0012\u0689\u0003\u0002\u0002",
+ "\u0002\u0014\u068d\u0003\u0002\u0002\u0002\u0016\u0699\u0003\u0002\u0002",
+ "\u0002\u0018\u069e\u0003\u0002\u0002\u0002\u001a\u06ab\u0003\u0002\u0002",
+ "\u0002\u001c\u06c1\u0003\u0002\u0002\u0002\u001e\u06dd\u0003\u0002\u0002",
+ "\u0002 \u0703\u0003\u0002\u0002\u0002\"\u0705\u0003\u0002\u0002\u0002",
+ "$\u0716\u0003\u0002\u0002\u0002&\u073b\u0003\u0002\u0002\u0002(\u073d",
+ "\u0003\u0002\u0002\u0002*\u0742\u0003\u0002\u0002\u0002,\u0755\u0003",
+ "\u0002\u0002\u0002.\u0787\u0003\u0002\u0002\u00020\u07a4\u0003\u0002",
+ "\u0002\u00022\u07c9\u0003\u0002\u0002\u00024\u07ce\u0003\u0002\u0002",
+ "\u00026\u07e7\u0003\u0002\u0002\u00028\u07ff\u0003\u0002\u0002\u0002",
+ ":\u0808\u0003\u0002\u0002\u0002<\u0811\u0003\u0002\u0002\u0002>\u081a",
+ "\u0003\u0002\u0002\u0002@\u081e\u0003\u0002\u0002\u0002B\u0823\u0003",
+ "\u0002\u0002\u0002D\u083b\u0003\u0002\u0002\u0002F\u083d\u0003\u0002",
+ "\u0002\u0002H\u0841\u0003\u0002\u0002\u0002J\u0872\u0003\u0002\u0002",
+ "\u0002L\u088e\u0003\u0002\u0002\u0002N\u0890\u0003\u0002\u0002\u0002",
+ "P\u089e\u0003\u0002\u0002\u0002R\u08a3\u0003\u0002\u0002\u0002T\u08a8",
+ "\u0003\u0002\u0002\u0002V\u08ae\u0003\u0002\u0002\u0002X\u08b1\u0003",
+ "\u0002\u0002\u0002Z\u08bc\u0003\u0002\u0002\u0002\\\u08cc\u0003\u0002",
+ "\u0002\u0002^\u08dd\u0003\u0002\u0002\u0002`\u08ee\u0003\u0002\u0002",
+ "\u0002b\u08f6\u0003\u0002\u0002\u0002d\u08fb\u0003\u0002\u0002\u0002",
+ "f\u090b\u0003\u0002\u0002\u0002h\u090f\u0003\u0002\u0002\u0002j\u0927",
+ "\u0003\u0002\u0002\u0002l\u092a\u0003\u0002\u0002\u0002n\u0930\u0003",
+ "\u0002\u0002\u0002p\u093c\u0003\u0002\u0002\u0002r\u0945\u0003\u0002",
+ "\u0002\u0002t\u0961\u0003\u0002\u0002\u0002v\u0967\u0003\u0002\u0002",
+ "\u0002x\u096a\u0003\u0002\u0002\u0002z\u0971\u0003\u0002\u0002\u0002",
+ "|\u0979\u0003\u0002\u0002\u0002~\u0986\u0003\u0002\u0002\u0002\u0080",
+ "\u0988\u0003\u0002\u0002\u0002\u0082\u098c\u0003\u0002\u0002\u0002\u0084",
+ "\u0992\u0003\u0002\u0002\u0002\u0086\u09ab\u0003\u0002\u0002\u0002\u0088",
+ "\u09ca\u0003\u0002\u0002\u0002\u008a\u09f7\u0003\u0002\u0002\u0002\u008c",
+ "\u0a01\u0003\u0002\u0002\u0002\u008e\u0a03\u0003\u0002\u0002\u0002\u0090",
+ "\u0a08\u0003\u0002\u0002\u0002\u0092\u0a16\u0003\u0002\u0002\u0002\u0094",
+ "\u0a18\u0003\u0002\u0002\u0002\u0096\u0a1d\u0003\u0002\u0002\u0002\u0098",
+ "\u0a21\u0003\u0002\u0002\u0002\u009a\u0a47\u0003\u0002\u0002\u0002\u009c",
+ "\u0a57\u0003\u0002\u0002\u0002\u009e\u0a78\u0003\u0002\u0002\u0002\u00a0",
+ "\u0a9b\u0003\u0002\u0002\u0002\u00a2\u0a9f\u0003\u0002\u0002\u0002\u00a4",
+ "\u0aae\u0003\u0002\u0002\u0002\u00a6\u0ab0\u0003\u0002\u0002\u0002\u00a8",
+ "\u0ab3\u0003\u0002\u0002\u0002\u00aa\u0ab8\u0003\u0002\u0002\u0002\u00ac",
+ "\u0ac2\u0003\u0002\u0002\u0002\u00ae\u0ae3\u0003\u0002\u0002\u0002\u00b0",
+ "\u0ae7\u0003\u0002\u0002\u0002\u00b2\u0b03\u0003\u0002\u0002\u0002\u00b4",
+ "\u0b05\u0003\u0002\u0002\u0002\u00b6\u0b09\u0003\u0002\u0002\u0002\u00b8",
+ "\u0b1a\u0003\u0002\u0002\u0002\u00ba\u0b22\u0003\u0002\u0002\u0002\u00bc",
+ "\u0b26\u0003\u0002\u0002\u0002\u00be\u0b3d\u0003\u0002\u0002\u0002\u00c0",
+ "\u0b6b\u0003\u0002\u0002\u0002\u00c2\u0b7a\u0003\u0002\u0002\u0002\u00c4",
+ "\u0b7c\u0003\u0002\u0002\u0002\u00c6\u0b8a\u0003\u0002\u0002\u0002\u00c8",
+ "\u0baa\u0003\u0002\u0002\u0002\u00ca\u0bb3\u0003\u0002\u0002\u0002\u00cc",
+ "\u0bc3\u0003\u0002\u0002\u0002\u00ce\u0be6\u0003\u0002\u0002\u0002\u00d0",
+ "\u0bfa\u0003\u0002\u0002\u0002\u00d2\u0c01\u0003\u0002\u0002\u0002\u00d4",
+ "\u0c0c\u0003\u0002\u0002\u0002\u00d6\u0c17\u0003\u0002\u0002\u0002\u00d8",
+ "\u0c3d\u0003\u0002\u0002\u0002\u00da\u0c3f\u0003\u0002\u0002\u0002\u00dc",
+ "\u0c5a\u0003\u0002\u0002\u0002\u00de\u0c67\u0003\u0002\u0002\u0002\u00e0",
+ "\u0c8e\u0003\u0002\u0002\u0002\u00e2\u0c90\u0003\u0002\u0002\u0002\u00e4",
+ "\u0c9e\u0003\u0002\u0002\u0002\u00e6\u0ca3\u0003\u0002\u0002\u0002\u00e8",
+ "\u0ca7\u0003\u0002\u0002\u0002\u00ea\u0cb6\u0003\u0002\u0002\u0002\u00ec",
+ "\u0ccf\u0003\u0002\u0002\u0002\u00ee\u0cd1\u0003\u0002\u0002\u0002\u00f0",
+ "\u0cd3\u0003\u0002\u0002\u0002\u00f2\u0cd5\u0003\u0002\u0002\u0002\u00f4",
+ "\u0cf7\u0003\u0002\u0002\u0002\u00f6\u0cf9\u0003\u0002\u0002\u0002\u00f8",
+ "\u0d0a\u0003\u0002\u0002\u0002\u00fa\u0d19\u0003\u0002\u0002\u0002\u00fc",
+ "\u0d1e\u0003\u0002\u0002\u0002\u00fe\u0d37\u0003\u0002\u0002\u0002\u0100",
+ "\u0d39\u0003\u0002\u0002\u0002\u0102\u0d43\u0003\u0002\u0002\u0002\u0104",
+ "\u0d47\u0003\u0002\u0002\u0002\u0106\u0d61\u0003\u0002\u0002\u0002\u0108",
+ "\u0d75\u0003\u0002\u0002\u0002\u010a\u0d7d\u0003\u0002\u0002\u0002\u010c",
+ "\u0d7f\u0003\u0002\u0002\u0002\u010e\u0d81\u0003\u0002\u0002\u0002\u0110",
+ "\u0d83\u0003\u0002\u0002\u0002\u0112\u0db4\u0003\u0002\u0002\u0002\u0114",
+ "\u0db6\u0003\u0002\u0002\u0002\u0116\u0dbb\u0003\u0002\u0002\u0002\u0118",
+ "\u0dbf\u0003\u0002\u0002\u0002\u011a\u0dc5\u0003\u0002\u0002\u0002\u011c",
+ "\u0dc9\u0003\u0002\u0002\u0002\u011e\u0dd1\u0003\u0002\u0002\u0002\u0120",
+ "\u0deb\u0003\u0002\u0002\u0002\u0122\u0ded\u0003\u0002\u0002\u0002\u0124",
+ "\u0df3\u0003\u0002\u0002\u0002\u0126\u0df6\u0003\u0002\u0002\u0002\u0128",
+ "\u0df9\u0003\u0002\u0002\u0002\u012a\u0dfc\u0003\u0002\u0002\u0002\u012c",
+ "\u0e32\u0003\u0002\u0002\u0002\u012e\u0e34\u0003\u0002\u0002\u0002\u0130",
+ "\u0e3f\u0003\u0002\u0002\u0002\u0132\u0e47\u0003\u0002\u0002\u0002\u0134",
+ "\u0e52\u0003\u0002\u0002\u0002\u0136\u0e61\u0003\u0002\u0002\u0002\u0138",
+ "\u0e99\u0003\u0002\u0002\u0002\u013a\u0eb8\u0003\u0002\u0002\u0002\u013c",
+ "\u0eba\u0003\u0002\u0002\u0002\u013e\u0ebc\u0003\u0002\u0002\u0002\u0140",
+ "\u0ec0\u0003\u0002\u0002\u0002\u0142\u0ec2\u0003\u0002\u0002\u0002\u0144",
+ "\u0ec4\u0003\u0002\u0002\u0002\u0146\u0ed0\u0003\u0002\u0002\u0002\u0148",
+ "\u0f0d\u0003\u0002\u0002\u0002\u014a\u0f1c\u0003\u0002\u0002\u0002\u014c",
+ "\u0f1e\u0003\u0002\u0002\u0002\u014e\u0f23\u0003\u0002\u0002\u0002\u0150",
+ "\u0f25\u0003\u0002\u0002\u0002\u0152\u0f2f\u0003\u0002\u0002\u0002\u0154",
+ "\u0f31\u0003\u0002\u0002\u0002\u0156\u0f33\u0003\u0002\u0002\u0002\u0158",
+ "\u0f35\u0003\u0002\u0002\u0002\u015a\u0f39\u0003\u0002\u0002\u0002\u015c",
+ "\u0f3b\u0003\u0002\u0002\u0002\u015e\u0f41\u0003\u0002\u0002\u0002\u0160",
+ "\u0f72\u0003\u0002\u0002\u0002\u0162\u0f74\u0003\u0002\u0002\u0002\u0164",
+ "\u0f91\u0003\u0002\u0002\u0002\u0166\u0f95\u0003\u0002\u0002\u0002\u0168",
+ "\u0fbe\u0003\u0002\u0002\u0002\u016a\u0fc0\u0003\u0002\u0002\u0002\u016c",
+ "\u0fc9\u0003\u0002\u0002\u0002\u016e\u0fd4\u0003\u0002\u0002\u0002\u0170",
+ "\u0fd8\u0003\u0002\u0002\u0002\u0172\u0fda\u0003\u0002\u0002\u0002\u0174",
+ "\u0fec\u0003\u0002\u0002\u0002\u0176\u0ff3\u0003\u0002\u0002\u0002\u0178",
+ "\u0ffa\u0003\u0002\u0002\u0002\u017a\u1044\u0003\u0002\u0002\u0002\u017c",
+ "\u1046\u0003\u0002\u0002\u0002\u017e\u104b\u0003\u0002\u0002\u0002\u0180",
+ "\u1051\u0003\u0002\u0002\u0002\u0182\u1088\u0003\u0002\u0002\u0002\u0184",
+ "\u108c\u0003\u0002\u0002\u0002\u0186\u1097\u0003\u0002\u0002\u0002\u0188",
+ "\u1099\u0003\u0002\u0002\u0002\u018a\u109b\u0003\u0002\u0002\u0002\u018c",
+ "\u10b1\u0003\u0002\u0002\u0002\u018e\u10b4\u0003\u0002\u0002\u0002\u0190",
+ "\u10b7\u0003\u0002\u0002\u0002\u0192\u10bb\u0003\u0002\u0002\u0002\u0194",
+ "\u10c0\u0003\u0002\u0002\u0002\u0196\u10c4\u0003\u0002\u0002\u0002\u0198",
+ "\u10eb\u0003\u0002\u0002\u0002\u019a\u10ee\u0003\u0002\u0002\u0002\u019c",
+ "\u110b\u0003\u0002\u0002\u0002\u019e\u110d\u0003\u0002\u0002\u0002\u01a0",
+ "\u1121\u0003\u0002\u0002\u0002\u01a2\u114d\u0003\u0002\u0002\u0002\u01a4",
+ "\u116a\u0003\u0002\u0002\u0002\u01a6\u118f\u0003\u0002\u0002\u0002\u01a8",
+ "\u1193\u0003\u0002\u0002\u0002\u01aa\u11c3\u0003\u0002\u0002\u0002\u01ac",
+ "\u11c7\u0003\u0002\u0002\u0002\u01ae\u121c\u0003\u0002\u0002\u0002\u01b0",
+ "\u1224\u0003\u0002\u0002\u0002\u01b2\u1226\u0003\u0002\u0002\u0002\u01b4",
+ "\u122c\u0003\u0002\u0002\u0002\u01b6\u1237\u0003\u0002\u0002\u0002\u01b8",
+ "\u1239\u0003\u0002\u0002\u0002\u01ba\u123c\u0003\u0002\u0002\u0002\u01bc",
+ "\u123e\u0003\u0002\u0002\u0002\u01be\u1249\u0003\u0002\u0002\u0002\u01c0",
+ "\u1262\u0003\u0002\u0002\u0002\u01c2\u1265\u0003\u0002\u0002\u0002\u01c4",
+ "\u1267\u0003\u0002\u0002\u0002\u01c6\u1272\u0003\u0002\u0002\u0002\u01c8",
+ "\u1277\u0003\u0002\u0002\u0002\u01ca\u1283\u0003\u0002\u0002\u0002\u01cc",
+ "\u128f\u0003\u0002\u0002\u0002\u01ce\u1292\u0003\u0002\u0002\u0002\u01d0",
+ "\u1298\u0003\u0002\u0002\u0002\u01d2\u129f\u0003\u0002\u0002\u0002\u01d4",
+ "\u12b7\u0003\u0002\u0002\u0002\u01d6\u12c4\u0003\u0002\u0002\u0002\u01d8",
+ "\u12d0\u0003\u0002\u0002\u0002\u01da\u12d5\u0003\u0002\u0002\u0002\u01dc",
+ "\u12dd\u0003\u0002\u0002\u0002\u01de\u12df\u0003\u0002\u0002\u0002\u01e0",
+ "\u1314\u0003\u0002\u0002\u0002\u01e2\u1316\u0003\u0002\u0002\u0002\u01e4",
+ "\u1335\u0003\u0002\u0002\u0002\u01e6\u1337\u0003\u0002\u0002\u0002\u01e8",
+ "\u1341\u0003\u0002\u0002\u0002\u01ea\u135c\u0003\u0002\u0002\u0002\u01ec",
+ "\u1361\u0003\u0002\u0002\u0002\u01ee\u1366\u0003\u0002\u0002\u0002\u01f0",
+ "\u138c\u0003\u0002\u0002\u0002\u01f2\u138e\u0003\u0002\u0002\u0002\u01f4",
+ "\u1390\u0003\u0002\u0002\u0002\u01f6\u1392\u0003\u0002\u0002\u0002\u01f8",
+ "\u1394\u0003\u0002\u0002\u0002\u01fa\u13d2\u0003\u0002\u0002\u0002\u01fc",
+ "\u13d6\u0003\u0002\u0002\u0002\u01fe\u13db\u0003\u0002\u0002\u0002\u0200",
+ "\u1443\u0003\u0002\u0002\u0002\u0202\u1445\u0003\u0002\u0002\u0002\u0204",
+ "\u145b\u0003\u0002\u0002\u0002\u0206\u145d\u0003\u0002\u0002\u0002\u0208",
+ "\u1493\u0003\u0002\u0002\u0002\u020a\u14a5\u0003\u0002\u0002\u0002\u020c",
+ "\u14e9\u0003\u0002\u0002\u0002\u020e\u14ff\u0003\u0002\u0002\u0002\u0210",
+ "\u1529\u0003\u0002\u0002\u0002\u0212\u152d\u0003\u0002\u0002\u0002\u0214",
+ "\u153b\u0003\u0002\u0002\u0002\u0216\u157f\u0003\u0002\u0002\u0002\u0218",
+ "\u158d\u0003\u0002\u0002\u0002\u021a\u15ac\u0003\u0002\u0002\u0002\u021c",
+ "\u15af\u0003\u0002\u0002\u0002\u021e\u15c1\u0003\u0002\u0002\u0002\u0220",
+ "\u15f4\u0003\u0002\u0002\u0002\u0222\u15fe\u0003\u0002\u0002\u0002\u0224",
+ "\u1600\u0003\u0002\u0002\u0002\u0226\u1638\u0003\u0002\u0002\u0002\u0228",
+ "\u1654\u0003\u0002\u0002\u0002\u022a\u1665\u0003\u0002\u0002\u0002\u022c",
+ "\u167c\u0003\u0002\u0002\u0002\u022e\u16a1\u0003\u0002\u0002\u0002\u0230",
+ "\u16a3\u0003\u0002\u0002\u0002\u0232\u16d5\u0003\u0002\u0002\u0002\u0234",
+ "\u16eb\u0003\u0002\u0002\u0002\u0236\u16ff\u0003\u0002\u0002\u0002\u0238",
+ "\u1712\u0003\u0002\u0002\u0002\u023a\u1718\u0003\u0002\u0002\u0002\u023c",
+ "\u1727\u0003\u0002\u0002\u0002\u023e\u174f\u0003\u0002\u0002\u0002\u0240",
+ "\u1777\u0003\u0002\u0002\u0002\u0242\u1799\u0003\u0002\u0002\u0002\u0244",
+ "\u179b\u0003\u0002\u0002\u0002\u0246\u17ab\u0003\u0002\u0002\u0002\u0248",
+ "\u17b4\u0003\u0002\u0002\u0002\u024a\u17d5\u0003\u0002\u0002\u0002\u024c",
+ "\u17d7\u0003\u0002\u0002\u0002\u024e\u17df\u0003\u0002\u0002\u0002\u0250",
+ "\u17e7\u0003\u0002\u0002\u0002\u0252\u17ee\u0003\u0002\u0002\u0002\u0254",
+ "\u17ff\u0003\u0002\u0002\u0002\u0256\u180d\u0003\u0002\u0002\u0002\u0258",
+ "\u181d\u0003\u0002\u0002\u0002\u025a\u1845\u0003\u0002\u0002\u0002\u025c",
+ "\u1849\u0003\u0002\u0002\u0002\u025e\u1861\u0003\u0002\u0002\u0002\u0260",
+ "\u1886\u0003\u0002\u0002\u0002\u0262\u1897\u0003\u0002\u0002\u0002\u0264",
+ "\u18a0\u0003\u0002\u0002\u0002\u0266\u18a4\u0003\u0002\u0002\u0002\u0268",
+ "\u18c5\u0003\u0002\u0002\u0002\u026a\u18cd\u0003\u0002\u0002\u0002\u026c",
+ "\u18d2\u0003\u0002\u0002\u0002\u026e\u18d9\u0003\u0002\u0002\u0002\u0270",
+ "\u18e4\u0003\u0002\u0002\u0002\u0272\u18e6\u0003\u0002\u0002\u0002\u0274",
+ "\u1910\u0003\u0002\u0002\u0002\u0276\u1912\u0003\u0002\u0002\u0002\u0278",
+ "\u1929\u0003\u0002\u0002\u0002\u027a\u193d\u0003\u0002\u0002\u0002\u027c",
+ "\u194d\u0003\u0002\u0002\u0002\u027e\u1953\u0003\u0002\u0002\u0002\u0280",
+ "\u195c\u0003\u0002\u0002\u0002\u0282\u1960\u0003\u0002\u0002\u0002\u0284",
+ "\u1969\u0003\u0002\u0002\u0002\u0286\u1971\u0003\u0002\u0002\u0002\u0288",
+ "\u197a\u0003\u0002\u0002\u0002\u028a\u1981\u0003\u0002\u0002\u0002\u028c",
+ "\u1983\u0003\u0002\u0002\u0002\u028e\u19af\u0003\u0002\u0002\u0002\u0290",
+ "\u19b1\u0003\u0002\u0002\u0002\u0292\u19b8\u0003\u0002\u0002\u0002\u0294",
+ "\u19ca\u0003\u0002\u0002\u0002\u0296\u19cc\u0003\u0002\u0002\u0002\u0298",
+ "\u19ce\u0003\u0002\u0002\u0002\u029a\u19f3\u0003\u0002\u0002\u0002\u029c",
+ "\u19f5\u0003\u0002\u0002\u0002\u029e\u19f7\u0003\u0002\u0002\u0002\u02a0",
+ "\u19fe\u0003\u0002\u0002\u0002\u02a2\u1a00\u0003\u0002\u0002\u0002\u02a4",
+ "\u1a02\u0003\u0002\u0002\u0002\u02a6\u1a23\u0003\u0002\u0002\u0002\u02a8",
+ "\u1a4d\u0003\u0002\u0002\u0002\u02aa\u1a4f\u0003\u0002\u0002\u0002\u02ac",
+ "\u1a6e\u0003\u0002\u0002\u0002\u02ae\u1a93\u0003\u0002\u0002\u0002\u02b0",
+ "\u1aa5\u0003\u0002\u0002\u0002\u02b2\u1aa7\u0003\u0002\u0002\u0002\u02b4",
+ "\u1abb\u0003\u0002\u0002\u0002\u02b6\u1ad7\u0003\u0002\u0002\u0002\u02b8",
+ "\u1b1e\u0003\u0002\u0002\u0002\u02ba\u1b20\u0003\u0002\u0002\u0002\u02bc",
+ "\u1b47\u0003\u0002\u0002\u0002\u02be\u1b50\u0003\u0002\u0002\u0002\u02c0",
+ "\u1b68\u0003\u0002\u0002\u0002\u02c2\u1b6f\u0003\u0002\u0002\u0002\u02c4",
+ "\u1b77\u0003\u0002\u0002\u0002\u02c6\u1b79\u0003\u0002\u0002\u0002\u02c8",
+ "\u1b8c\u0003\u0002\u0002\u0002\u02ca\u1ba3\u0003\u0002\u0002\u0002\u02cc",
+ "\u1ba5\u0003\u0002\u0002\u0002\u02ce\u1bb7\u0003\u0002\u0002\u0002\u02d0",
+ "\u1bbc\u0003\u0002\u0002\u0002\u02d2\u1bc6\u0003\u0002\u0002\u0002\u02d4",
+ "\u1bcd\u0003\u0002\u0002\u0002\u02d6\u1bd5\u0003\u0002\u0002\u0002\u02d8",
+ "\u1bf6\u0003\u0002\u0002\u0002\u02da\u1c0d\u0003\u0002\u0002\u0002\u02dc",
+ "\u1c12\u0003\u0002\u0002\u0002\u02de\u1c45\u0003\u0002\u0002\u0002\u02e0",
+ "\u1c47\u0003\u0002\u0002\u0002\u02e2\u1c4c\u0003\u0002\u0002\u0002\u02e4",
+ "\u1c50\u0003\u0002\u0002\u0002\u02e6\u1c53\u0003\u0002\u0002\u0002\u02e8",
+ "\u1c55\u0003\u0002\u0002\u0002\u02ea\u1c57\u0003\u0002\u0002\u0002\u02ec",
+ "\u1c59\u0003\u0002\u0002\u0002\u02ee\u1c5b\u0003\u0002\u0002\u0002\u02f0",
+ "\u1c5d\u0003\u0002\u0002\u0002\u02f2\u1c82\u0003\u0002\u0002\u0002\u02f4",
+ "\u1c95\u0003\u0002\u0002\u0002\u02f6\u1ca0\u0003\u0002\u0002\u0002\u02f8",
+ "\u1ca2\u0003\u0002\u0002\u0002\u02fa\u1cb2\u0003\u0002\u0002\u0002\u02fc",
+ "\u1cb4\u0003\u0002\u0002\u0002\u02fe\u1ccb\u0003\u0002\u0002\u0002\u0300",
+ "\u1cee\u0003\u0002\u0002\u0002\u0302\u1d04\u0003\u0002\u0002\u0002\u0304",
+ "\u1d08\u0003\u0002\u0002\u0002\u0306\u1d0a\u0003\u0002\u0002\u0002\u0308",
+ "\u1d0e\u0003\u0002\u0002\u0002\u030a\u1d2a\u0003\u0002\u0002\u0002\u030c",
+ "\u1d32\u0003\u0002\u0002\u0002\u030e\u1d37\u0003\u0002\u0002\u0002\u0310",
+ "\u1d3b\u0003\u0002\u0002\u0002\u0312\u1d45\u0003\u0002\u0002\u0002\u0314",
+ "\u1d47\u0003\u0002\u0002\u0002\u0316\u1d4f\u0003\u0002\u0002\u0002\u0318",
+ "\u1d51\u0003\u0002\u0002\u0002\u031a\u1d57\u0003\u0002\u0002\u0002\u031c",
+ "\u1d59\u0003\u0002\u0002\u0002\u031e\u1d5e\u0003\u0002\u0002\u0002\u0320",
+ "\u1da0\u0003\u0002\u0002\u0002\u0322\u1da2\u0003\u0002\u0002\u0002\u0324",
+ "\u1db2\u0003\u0002\u0002\u0002\u0326\u1dc8\u0003\u0002\u0002\u0002\u0328",
+ "\u1dd4\u0003\u0002\u0002\u0002\u032a\u1def\u0003\u0002\u0002\u0002\u032c",
+ "\u1df6\u0003\u0002\u0002\u0002\u032e\u1dff\u0003\u0002\u0002\u0002\u0330",
+ "\u1e0f\u0003\u0002\u0002\u0002\u0332\u1e11\u0003\u0002\u0002\u0002\u0334",
+ "\u1e1a\u0003\u0002\u0002\u0002\u0336\u1e1c\u0003\u0002\u0002\u0002\u0338",
+ "\u1e43\u0003\u0002\u0002\u0002\u033a\u1e64\u0003\u0002\u0002\u0002\u033c",
+ "\u1e81\u0003\u0002\u0002\u0002\u033e\u1e85\u0003\u0002\u0002\u0002\u0340",
+ "\u1e8c\u0003\u0002\u0002\u0002\u0342\u1e8e\u0003\u0002\u0002\u0002\u0344",
+ "\u1e98\u0003\u0002\u0002\u0002\u0346\u1ea8\u0003\u0002\u0002\u0002\u0348",
+ "\u1ead\u0003\u0002\u0002\u0002\u034a\u1ebd\u0003\u0002\u0002\u0002\u034c",
+ "\u1ebf\u0003\u0002\u0002\u0002\u034e\u1ecb\u0003\u0002\u0002\u0002\u0350",
+ "\u1ecd\u0003\u0002\u0002\u0002\u0352\u1ecf\u0003\u0002\u0002\u0002\u0354",
+ "\u1ef9\u0003\u0002\u0002\u0002\u0356\u1f09\u0003\u0002\u0002\u0002\u0358",
+ "\u1f16\u0003\u0002\u0002\u0002\u035a\u1f19\u0003\u0002\u0002\u0002\u035c",
+ "\u1f3e\u0003\u0002\u0002\u0002\u035e\u1f53\u0003\u0002\u0002\u0002\u0360",
+ "\u1f55\u0003\u0002\u0002\u0002\u0362\u1f57\u0003\u0002\u0002\u0002\u0364",
+ "\u1f5d\u0003\u0002\u0002\u0002\u0366\u1f5f\u0003\u0002\u0002\u0002\u0368",
+ "\u1f9b\u0003\u0002\u0002\u0002\u036a\u1f9d\u0003\u0002\u0002\u0002\u036c",
+ "\u1f9f\u0003\u0002\u0002\u0002\u036e\u1fa1\u0003\u0002\u0002\u0002\u0370",
+ "\u1fbf\u0003\u0002\u0002\u0002\u0372\u1fc1\u0003\u0002\u0002\u0002\u0374",
+ "\u1fd5\u0003\u0002\u0002\u0002\u0376\u1fd7\u0003\u0002\u0002\u0002\u0378",
+ "\u1fde\u0003\u0002\u0002\u0002\u037a\u1fe2\u0003\u0002\u0002\u0002\u037c",
+ "\u1fe6\u0003\u0002\u0002\u0002\u037e\u1fea\u0003\u0002\u0002\u0002\u0380",
+ "\u1ff1\u0003\u0002\u0002\u0002\u0382\u1ff5\u0003\u0002\u0002\u0002\u0384",
+ "\u1ffc\u0003\u0002\u0002\u0002\u0386\u2001\u0003\u0002\u0002\u0002\u0388",
+ "\u2009\u0003\u0002\u0002\u0002\u038a\u2018\u0003\u0002\u0002\u0002\u038c",
+ "\u201b\u0003\u0002\u0002\u0002\u038e\u2020\u0003\u0002\u0002\u0002\u0390",
+ "\u2024\u0003\u0002\u0002\u0002\u0392\u2035\u0003\u0002\u0002\u0002\u0394",
+ "\u203b\u0003\u0002\u0002\u0002\u0396\u2045\u0003\u0002\u0002\u0002\u0398",
+ "\u2052\u0003\u0002\u0002\u0002\u039a\u2056\u0003\u0002\u0002\u0002\u039c",
+ "\u2064\u0003\u0002\u0002\u0002\u039e\u2066\u0003\u0002\u0002\u0002\u03a0",
+ "\u2074\u0003\u0002\u0002\u0002\u03a2\u2085\u0003\u0002\u0002\u0002\u03a4",
+ "\u209e\u0003\u0002\u0002\u0002\u03a6\u20a8\u0003\u0002\u0002\u0002\u03a8",
+ "\u20ac\u0003\u0002\u0002\u0002\u03aa\u20cf\u0003\u0002\u0002\u0002\u03ac",
+ "\u20db\u0003\u0002\u0002\u0002\u03ae\u20e6\u0003\u0002\u0002\u0002\u03b0",
+ "\u20ec\u0003\u0002\u0002\u0002\u03b2\u20f7\u0003\u0002\u0002\u0002\u03b4",
+ "\u2103\u0003\u0002\u0002\u0002\u03b6\u210b\u0003\u0002\u0002\u0002\u03b8",
+ "\u211a\u0003\u0002\u0002\u0002\u03ba\u211e\u0003\u0002\u0002\u0002\u03bc",
+ "\u2135\u0003\u0002\u0002\u0002\u03be\u2138\u0003\u0002\u0002\u0002\u03c0",
+ "\u213e\u0003\u0002\u0002\u0002\u03c2\u2143\u0003\u0002\u0002\u0002\u03c4",
+ "\u214b\u0003\u0002\u0002\u0002\u03c6\u2153\u0003\u0002\u0002\u0002\u03c8",
+ "\u2156\u0003\u0002\u0002\u0002\u03ca\u2166\u0003\u0002\u0002\u0002\u03cc",
+ "\u216b\u0003\u0002\u0002\u0002\u03ce\u216f\u0003\u0002\u0002\u0002\u03d0",
+ "\u2197\u0003\u0002\u0002\u0002\u03d2\u2199\u0003\u0002\u0002\u0002\u03d4",
+ "\u21af\u0003\u0002\u0002\u0002\u03d6\u21b1\u0003\u0002\u0002\u0002\u03d8",
+ "\u21b6\u0003\u0002\u0002\u0002\u03da\u21b8\u0003\u0002\u0002\u0002\u03dc",
+ "\u21ba\u0003\u0002\u0002\u0002\u03de\u21bc\u0003\u0002\u0002\u0002\u03e0",
+ "\u21c0\u0003\u0002\u0002\u0002\u03e2\u21c5\u0003\u0002\u0002\u0002\u03e4",
+ "\u21cb\u0003\u0002\u0002\u0002\u03e6\u21cf\u0003\u0002\u0002\u0002\u03e8",
+ "\u21d5\u0003\u0002\u0002\u0002\u03ea\u21e3\u0003\u0002\u0002\u0002\u03ec",
+ "\u21f7\u0003\u0002\u0002\u0002\u03ee\u21fc\u0003\u0002\u0002\u0002\u03f0",
+ "\u2209\u0003\u0002\u0002\u0002\u03f2\u220b\u0003\u0002\u0002\u0002\u03f4",
+ "\u2219\u0003\u0002\u0002\u0002\u03f6\u2223\u0003\u0002\u0002\u0002\u03f8",
+ "\u2229\u0003\u0002\u0002\u0002\u03fa\u222b\u0003\u0002\u0002\u0002\u03fc",
+ "\u222e\u0003\u0002\u0002\u0002\u03fe\u2237\u0003\u0002\u0002\u0002\u0400",
+ "\u224f\u0003\u0002\u0002\u0002\u0402\u225e\u0003\u0002\u0002\u0002\u0404",
+ "\u2260\u0003\u0002\u0002\u0002\u0406\u2275\u0003\u0002\u0002\u0002\u0408",
+ "\u2284\u0003\u0002\u0002\u0002\u040a\u229a\u0003\u0002\u0002\u0002\u040c",
+ "\u22a1\u0003\u0002\u0002\u0002\u040e\u22ae\u0003\u0002\u0002\u0002\u0410",
+ "\u22b1\u0003\u0002\u0002\u0002\u0412\u22c6\u0003\u0002\u0002\u0002\u0414",
+ "\u22ca\u0003\u0002\u0002\u0002\u0416\u22d4\u0003\u0002\u0002\u0002\u0418",
+ "\u22dd\u0003\u0002\u0002\u0002\u041a\u22ee\u0003\u0002\u0002\u0002\u041c",
+ "\u2319\u0003\u0002\u0002\u0002\u041e\u2322\u0003\u0002\u0002\u0002\u0420",
+ "\u232e\u0003\u0002\u0002\u0002\u0422\u2336\u0003\u0002\u0002\u0002\u0424",
+ "\u233a\u0003\u0002\u0002\u0002\u0426\u235b\u0003\u0002\u0002\u0002\u0428",
+ "\u235d\u0003\u0002\u0002\u0002\u042a\u2368\u0003\u0002\u0002\u0002\u042c",
+ "\u236a\u0003\u0002\u0002\u0002\u042e\u2372\u0003\u0002\u0002\u0002\u0430",
+ "\u237d\u0003\u0002\u0002\u0002\u0432\u239e\u0003\u0002\u0002\u0002\u0434",
+ "\u23a1\u0003\u0002\u0002\u0002\u0436\u23b6\u0003\u0002\u0002\u0002\u0438",
+ "\u23b9\u0003\u0002\u0002\u0002\u043a\u23bc\u0003\u0002\u0002\u0002\u043c",
+ "\u23c0\u0003\u0002\u0002\u0002\u043e\u23d3\u0003\u0002\u0002\u0002\u0440",
+ "\u23d5\u0003\u0002\u0002\u0002\u0442\u23e6\u0003\u0002\u0002\u0002\u0444",
+ "\u23ed\u0003\u0002\u0002\u0002\u0446\u23f2\u0003\u0002\u0002\u0002\u0448",
+ "\u2409\u0003\u0002\u0002\u0002\u044a\u2413\u0003\u0002\u0002\u0002\u044c",
+ "\u2415\u0003\u0002\u0002\u0002\u044e\u2423\u0003\u0002\u0002\u0002\u0450",
+ "\u2431\u0003\u0002\u0002\u0002\u0452\u2455\u0003\u0002\u0002\u0002\u0454",
+ "\u2457\u0003\u0002\u0002\u0002\u0456\u2475\u0003\u0002\u0002\u0002\u0458",
+ "\u247a\u0003\u0002\u0002\u0002\u045a\u247c\u0003\u0002\u0002\u0002\u045c",
+ "\u2488\u0003\u0002\u0002\u0002\u045e\u249c\u0003\u0002\u0002\u0002\u0460",
+ "\u249e\u0003\u0002\u0002\u0002\u0462\u24a1\u0003\u0002\u0002\u0002\u0464",
+ "\u24bb\u0003\u0002\u0002\u0002\u0466\u24bd\u0003\u0002\u0002\u0002\u0468",
+ "\u24c1\u0003\u0002\u0002\u0002\u046a\u24d0\u0003\u0002\u0002\u0002\u046c",
+ "\u24dc\u0003\u0002\u0002\u0002\u046e\u24e4\u0003\u0002\u0002\u0002\u0470",
+ "\u24e8\u0003\u0002\u0002\u0002\u0472\u24f5\u0003\u0002\u0002\u0002\u0474",
+ "\u24fb\u0003\u0002\u0002\u0002\u0476\u250a\u0003\u0002\u0002\u0002\u0478",
+ "\u251e\u0003\u0002\u0002\u0002\u047a\u2527\u0003\u0002\u0002\u0002\u047c",
+ "\u2529\u0003\u0002\u0002\u0002\u047e\u2530\u0003\u0002\u0002\u0002\u0480",
+ "\u2535\u0003\u0002\u0002\u0002\u0482\u2542\u0003\u0002\u0002\u0002\u0484",
+ "\u254a\u0003\u0002\u0002\u0002\u0486\u254e\u0003\u0002\u0002\u0002\u0488",
+ "\u255c\u0003\u0002\u0002\u0002\u048a\u2564\u0003\u0002\u0002\u0002\u048c",
+ "\u256c\u0003\u0002\u0002\u0002\u048e\u256e\u0003\u0002\u0002\u0002\u0490",
+ "\u257a\u0003\u0002\u0002\u0002\u0492\u2594\u0003\u0002\u0002\u0002\u0494",
+ "\u2596\u0003\u0002\u0002\u0002\u0496\u25a4\u0003\u0002\u0002\u0002\u0498",
+ "\u25a9\u0003\u0002\u0002\u0002\u049a\u25bb\u0003\u0002\u0002\u0002\u049c",
+ "\u25bf\u0003\u0002\u0002\u0002\u049e\u25c7\u0003\u0002\u0002\u0002\u04a0",
+ "\u25d1\u0003\u0002\u0002\u0002\u04a2\u25d9\u0003\u0002\u0002\u0002\u04a4",
+ "\u25df\u0003\u0002\u0002\u0002\u04a6\u25e4\u0003\u0002\u0002\u0002\u04a8",
+ "\u25eb\u0003\u0002\u0002\u0002\u04aa\u2604\u0003\u0002\u0002\u0002\u04ac",
+ "\u2617\u0003\u0002\u0002\u0002\u04ae\u261b\u0003\u0002\u0002\u0002\u04b0",
+ "\u261e\u0003\u0002\u0002\u0002\u04b2\u2634\u0003\u0002\u0002\u0002\u04b4",
+ "\u2639\u0003\u0002\u0002\u0002\u04b6\u264c\u0003\u0002\u0002\u0002\u04b8",
+ "\u264e\u0003\u0002\u0002\u0002\u04ba\u265e\u0003\u0002\u0002\u0002\u04bc",
+ "\u2666\u0003\u0002\u0002\u0002\u04be\u266b\u0003\u0002\u0002\u0002\u04c0",
+ "\u266f\u0003\u0002\u0002\u0002\u04c2\u267a\u0003\u0002\u0002\u0002\u04c4",
+ "\u267d\u0003\u0002\u0002\u0002\u04c6\u268f\u0003\u0002\u0002\u0002\u04c8",
+ "\u2691\u0003\u0002\u0002\u0002\u04ca\u269e\u0003\u0002\u0002\u0002\u04cc",
+ "\u26a9\u0003\u0002\u0002\u0002\u04ce\u26b7\u0003\u0002\u0002\u0002\u04d0",
+ "\u26bc\u0003\u0002\u0002\u0002\u04d2\u26be\u0003\u0002\u0002\u0002\u04d4",
+ "\u26c8\u0003\u0002\u0002\u0002\u04d6\u26ca\u0003\u0002\u0002\u0002\u04d8",
+ "\u26cf\u0003\u0002\u0002\u0002\u04da\u26de\u0003\u0002\u0002\u0002\u04dc",
+ "\u2704\u0003\u0002\u0002\u0002\u04de\u2706\u0003\u0002\u0002\u0002\u04e0",
+ "\u270e\u0003\u0002\u0002\u0002\u04e2\u271a\u0003\u0002\u0002\u0002\u04e4",
+ "\u273a\u0003\u0002\u0002\u0002\u04e6\u274e\u0003\u0002\u0002\u0002\u04e8",
+ "\u2750\u0003\u0002\u0002\u0002\u04ea\u2754\u0003\u0002\u0002\u0002\u04ec",
+ "\u2787\u0003\u0002\u0002\u0002\u04ee\u2789\u0003\u0002\u0002\u0002\u04f0",
+ "\u27a7\u0003\u0002\u0002\u0002\u04f2\u27a9\u0003\u0002\u0002\u0002\u04f4",
+ "\u27be\u0003\u0002\u0002\u0002\u04f6\u27dc\u0003\u0002\u0002\u0002\u04f8",
+ "\u27e0\u0003\u0002\u0002\u0002\u04fa\u27e3\u0003\u0002\u0002\u0002\u04fc",
+ "\u27f6\u0003\u0002\u0002\u0002\u04fe\u27fe\u0003\u0002\u0002\u0002\u0500",
+ "\u2810\u0003\u0002\u0002\u0002\u0502\u2817\u0003\u0002\u0002\u0002\u0504",
+ "\u282f\u0003\u0002\u0002\u0002\u0506\u2831\u0003\u0002\u0002\u0002\u0508",
+ "\u2882\u0003\u0002\u0002\u0002\u050a\u2887\u0003\u0002\u0002\u0002\u050c",
+ "\u288d\u0003\u0002\u0002\u0002\u050e\u288f\u0003\u0002\u0002\u0002\u0510",
+ "\u28ce\u0003\u0002\u0002\u0002\u0512\u29f7\u0003\u0002\u0002\u0002\u0514",
+ "\u29f9\u0003\u0002\u0002\u0002\u0516\u29fb\u0003\u0002\u0002\u0002\u0518",
+ "\u29fd\u0003\u0002\u0002\u0002\u051a\u29ff\u0003\u0002\u0002\u0002\u051c",
+ "\u2a0c\u0003\u0002\u0002\u0002\u051e\u2a15\u0003\u0002\u0002\u0002\u0520",
+ "\u2a1e\u0003\u0002\u0002\u0002\u0522\u2a20\u0003\u0002\u0002\u0002\u0524",
+ "\u2a31\u0003\u0002\u0002\u0002\u0526\u2a35\u0003\u0002\u0002\u0002\u0528",
+ "\u2a40\u0003\u0002\u0002\u0002\u052a\u2a42\u0003\u0002\u0002\u0002\u052c",
+ "\u2a5a\u0003\u0002\u0002\u0002\u052e\u2a6d\u0003\u0002\u0002\u0002\u0530",
+ "\u2a7f\u0003\u0002\u0002\u0002\u0532\u2a94\u0003\u0002\u0002\u0002\u0534",
+ "\u2aa1\u0003\u0002\u0002\u0002\u0536\u2aa4\u0003\u0002\u0002\u0002\u0538",
+ "\u2aad\u0003\u0002\u0002\u0002\u053a\u2ab3\u0003\u0002\u0002\u0002\u053c",
+ "\u2abb\u0003\u0002\u0002\u0002\u053e\u2abe\u0003\u0002\u0002\u0002\u0540",
+ "\u2ac9\u0003\u0002\u0002\u0002\u0542\u2ad3\u0003\u0002\u0002\u0002\u0544",
+ "\u2ad5\u0003\u0002\u0002\u0002\u0546\u2ae3\u0003\u0002\u0002\u0002\u0548",
+ "\u2aec\u0003\u0002\u0002\u0002\u054a\u2afe\u0003\u0002\u0002\u0002\u054c",
+ "\u2b02\u0003\u0002\u0002\u0002\u054e\u2b04\u0003\u0002\u0002\u0002\u0550",
+ "\u2b0d\u0003\u0002\u0002\u0002\u0552\u2b1a\u0003\u0002\u0002\u0002\u0554",
+ "\u2b1c\u0003\u0002\u0002\u0002\u0556\u2b1e\u0003\u0002\u0002\u0002\u0558",
+ "\u2b20\u0003\u0002\u0002\u0002\u055a\u2b22\u0003\u0002\u0002\u0002\u055c",
+ "\u2b24\u0003\u0002\u0002\u0002\u055e\u2b26\u0003\u0002\u0002\u0002\u0560",
+ "\u2b28\u0003\u0002\u0002\u0002\u0562\u2b34\u0003\u0002\u0002\u0002\u0564",
+ "\u2b36\u0003\u0002\u0002\u0002\u0566\u2b3b\u0003\u0002\u0002\u0002\u0568",
+ "\u2b3d\u0003\u0002\u0002\u0002\u056a\u2b3f\u0003\u0002\u0002\u0002\u056c",
+ "\u2b41\u0003\u0002\u0002\u0002\u056e\u2b46\u0003\u0002\u0002\u0002\u0570",
+ "\u2b4e\u0003\u0002\u0002\u0002\u0572\u2b50\u0003\u0002\u0002\u0002\u0574",
+ "\u2b56\u0003\u0002\u0002\u0002\u0576\u2b58\u0003\u0002\u0002\u0002\u0578",
+ "\u2b64\u0003\u0002\u0002\u0002\u057a\u2b66\u0003\u0002\u0002\u0002\u057c",
+ "\u2b6e\u0003\u0002\u0002\u0002\u057e\u2b76\u0003\u0002\u0002\u0002\u0580",
+ "\u2b7e\u0003\u0002\u0002\u0002\u0582\u2b83\u0003\u0002\u0002\u0002\u0584",
+ "\u2b88\u0003\u0002\u0002\u0002\u0586\u2b97\u0003\u0002\u0002\u0002\u0588",
+ "\u2b99\u0003\u0002\u0002\u0002\u058a\u2ba0\u0003\u0002\u0002\u0002\u058c",
+ "\u2ba4\u0003\u0002\u0002\u0002\u058e\u2ba6\u0003\u0002\u0002\u0002\u0590",
+ "\u2bab\u0003\u0002\u0002\u0002\u0592\u2bad\u0003\u0002\u0002\u0002\u0594",
+ "\u2bc3\u0003\u0002\u0002\u0002\u0596\u2bc5\u0003\u0002\u0002\u0002\u0598",
+ "\u2be0\u0003\u0002\u0002\u0002\u059a\u2be8\u0003\u0002\u0002\u0002\u059c",
+ "\u2bea\u0003\u0002\u0002\u0002\u059e\u2bec\u0003\u0002\u0002\u0002\u05a0",
+ "\u2bee\u0003\u0002\u0002\u0002\u05a2\u2c08\u0003\u0002\u0002\u0002\u05a4",
+ "\u2c0a\u0003\u0002\u0002\u0002\u05a6\u2c12\u0003\u0002\u0002\u0002\u05a8",
+ "\u2c16\u0003\u0002\u0002\u0002\u05aa\u2c1f\u0003\u0002\u0002\u0002\u05ac",
+ "\u2c2e\u0003\u0002\u0002\u0002\u05ae\u2c43\u0003\u0002\u0002\u0002\u05b0",
+ "\u2c6d\u0003\u0002\u0002\u0002\u05b2\u2c74\u0003\u0002\u0002\u0002\u05b4",
+ "\u2c80\u0003\u0002\u0002\u0002\u05b6\u2ca1\u0003\u0002\u0002\u0002\u05b8",
+ "\u2ca3\u0003\u0002\u0002\u0002\u05ba\u2ced\u0003\u0002\u0002\u0002\u05bc",
+ "\u2cf2\u0003\u0002\u0002\u0002\u05be\u2d05\u0003\u0002\u0002\u0002\u05c0",
+ "\u2d0f\u0003\u0002\u0002\u0002\u05c2\u2d22\u0003\u0002\u0002\u0002\u05c4",
+ "\u2d4c\u0003\u0002\u0002\u0002\u05c6\u2e94\u0003\u0002\u0002\u0002\u05c8",
+ "\u2ed4\u0003\u0002\u0002\u0002\u05ca\u2ed6\u0003\u0002\u0002\u0002\u05cc",
+ "\u2ed8\u0003\u0002\u0002\u0002\u05ce\u2edb\u0003\u0002\u0002\u0002\u05d0",
+ "\u2edf\u0003\u0002\u0002\u0002\u05d2\u2ee5\u0003\u0002\u0002\u0002\u05d4",
+ "\u2ee7\u0003\u0002\u0002\u0002\u05d6\u2f36\u0003\u0002\u0002\u0002\u05d8",
+ "\u2f38\u0003\u0002\u0002\u0002\u05da\u2f3a\u0003\u0002\u0002\u0002\u05dc",
+ "\u2f3c\u0003\u0002\u0002\u0002\u05de\u2f3e\u0003\u0002\u0002\u0002\u05e0",
+ "\u05e1\u0005\u0004\u0003\u0002\u05e1\u05e2\u0007\u0002\u0002\u0003\u05e2",
+ "\u0003\u0003\u0002\u0002\u0002\u05e3\u05e6\u0005\u0006\u0004\u0002\u05e4",
+ "\u05e6\u0005\u0542\u02a2\u0002\u05e5\u05e3\u0003\u0002\u0002\u0002\u05e5",
+ "\u05e4\u0003\u0002\u0002\u0002\u05e6\u05e8\u0003\u0002\u0002\u0002\u05e7",
+ "\u05e9\u0007\u08c3\u0002\u0002\u05e8\u05e7\u0003\u0002\u0002\u0002\u05e8",
+ "\u05e9\u0003\u0002\u0002\u0002\u05e9\u05eb\u0003\u0002\u0002\u0002\u05ea",
+ "\u05e5\u0003\u0002\u0002\u0002\u05eb\u05ee\u0003\u0002\u0002\u0002\u05ec",
+ "\u05ea\u0003\u0002\u0002\u0002\u05ec\u05ed\u0003\u0002\u0002\u0002\u05ed",
+ "\u05ef\u0003\u0002\u0002\u0002\u05ee\u05ec\u0003\u0002\u0002\u0002\u05ef",
+ "\u05f0\u0007\u0002\u0002\u0003\u05f0\u0005\u0003\u0002\u0002\u0002\u05f1",
+ "\u062a\u0005\u0402\u0202\u0002\u05f2\u062a\u0005\u0292\u014a\u0002\u05f3",
+ "\u062a\u0005\u0298\u014d\u0002\u05f4\u062a\u0005\n\u0006\u0002\u05f5",
+ "\u062a\u0005\u001a\u000e\u0002\u05f6\u062a\u0005*\u0016\u0002\u05f7",
+ "\u062a\u0005\u00aaV\u0002\u05f8\u062a\u0005\u00acW\u0002\u05f9\u062a",
+ "\u00054\u001b\u0002\u05fa\u062a\u0005Z.\u0002\u05fb\u062a\u0005\u02f0",
+ "\u0179\u0002\u05fc\u062a\u0005\u01ac\u00d7\u0002\u05fd\u062a\u0005\u00e8",
+ "u\u0002\u05fe\u062a\u0005\u018a\u00c6\u0002\u05ff\u062a\u0005\u01de",
+ "\u00f0\u0002\u0600\u062a\u0005\u01e8\u00f5\u0002\u0601\u062a\u0005\u0112",
+ "\u008a\u0002\u0602\u062a\u0005\u0196\u00cc\u0002\u0603\u062a\u0005\u0136",
+ "\u009c\u0002\u0604\u062a\u0005\u0144\u00a3\u0002\u0605\u062a\u0005\u0162",
+ "\u00b2\u0002\u0606\u062a\u0005\u015e\u00b0\u0002\u0607\u062a\u0005\f",
+ "\u0007\u0002\u0608\u062a\u00050\u0019\u0002\u0609\u062a\u0005\u001c",
+ "\u000f\u0002\u060a\u062a\u0005\u001e\u0010\u0002\u060b\u062a\u0005\u00b6",
+ "\\\u0002\u060c\u062a\u0005\u0208\u0105\u0002\u060d\u062a\u0005\u01bc",
+ "\u00df\u0002\u060e\u062a\u0005\u0206\u0104\u0002\u060f\u062a\u0005\u0202",
+ "\u0102\u0002\u0610\u062a\u0005\u019a\u00ce\u0002\u0611\u062a\u0005\u0184",
+ "\u00c3\u0002\u0612\u062a\u0005\u01fe\u0100\u0002\u0613\u062a\u0005\u01f8",
+ "\u00fd\u0002\u0614\u062a\u0005\u0110\u0089\u0002\u0615\u062a\u0005\u00b0",
+ "Y\u0002\u0616\u062a\u00056\u001c\u0002\u0617\u062a\u0005n8\u0002\u0618",
+ "\u062a\u0005\u028e\u0148\u0002\u0619\u062a\u0005\b\u0005\u0002\u061a",
+ "\u062a\u0005\u0018\r\u0002\u061b\u062a\u0005(\u0015\u0002\u061c\u062a",
+ "\u0005\u00a8U\u0002\u061d\u062a\u00052\u001a\u0002\u061e\u062a\u0005",
+ "X-\u0002\u061f\u062a\u0005\u03f6\u01fc\u0002\u0620\u062a\u0005\u0284",
+ "\u0143\u0002\u0621\u062a\u0005\u0286\u0144\u0002\u0622\u062a\u0005\u017c",
+ "\u00bf\u0002\u0623\u062a\u0005\u017e\u00c0\u0002\u0624\u062a\u0005\u0288",
+ "\u0145\u0002\u0625\u062a\u0005\u0290\u0149\u0002\u0626\u062a\u0005\u0388",
+ "\u01c5\u0002\u0627\u062a\u0005\u0180\u00c1\u0002\u0628\u062a\u0005\u03e4",
+ "\u01f3\u0002\u0629\u05f1\u0003\u0002\u0002\u0002\u0629\u05f2\u0003\u0002",
+ "\u0002\u0002\u0629\u05f3\u0003\u0002\u0002\u0002\u0629\u05f4\u0003\u0002",
+ "\u0002\u0002\u0629\u05f5\u0003\u0002\u0002\u0002\u0629\u05f6\u0003\u0002",
+ "\u0002\u0002\u0629\u05f7\u0003\u0002\u0002\u0002\u0629\u05f8\u0003\u0002",
+ "\u0002\u0002\u0629\u05f9\u0003\u0002\u0002\u0002\u0629\u05fa\u0003\u0002",
+ "\u0002\u0002\u0629\u05fb\u0003\u0002\u0002\u0002\u0629\u05fc\u0003\u0002",
+ "\u0002\u0002\u0629\u05fd\u0003\u0002\u0002\u0002\u0629\u05fe\u0003\u0002",
+ "\u0002\u0002\u0629\u05ff\u0003\u0002\u0002\u0002\u0629\u0600\u0003\u0002",
+ "\u0002\u0002\u0629\u0601\u0003\u0002\u0002\u0002\u0629\u0602\u0003\u0002",
+ "\u0002\u0002\u0629\u0603\u0003\u0002\u0002\u0002\u0629\u0604\u0003\u0002",
+ "\u0002\u0002\u0629\u0605\u0003\u0002\u0002\u0002\u0629\u0606\u0003\u0002",
+ "\u0002\u0002\u0629\u0607\u0003\u0002\u0002\u0002\u0629\u0608\u0003\u0002",
+ "\u0002\u0002\u0629\u0609\u0003\u0002\u0002\u0002\u0629\u060a\u0003\u0002",
+ "\u0002\u0002\u0629\u060b\u0003\u0002\u0002\u0002\u0629\u060c\u0003\u0002",
+ "\u0002\u0002\u0629\u060d\u0003\u0002\u0002\u0002\u0629\u060e\u0003\u0002",
+ "\u0002\u0002\u0629\u060f\u0003\u0002\u0002\u0002\u0629\u0610\u0003\u0002",
+ "\u0002\u0002\u0629\u0611\u0003\u0002\u0002\u0002\u0629\u0612\u0003\u0002",
+ "\u0002\u0002\u0629\u0613\u0003\u0002\u0002\u0002\u0629\u0614\u0003\u0002",
+ "\u0002\u0002\u0629\u0615\u0003\u0002\u0002\u0002\u0629\u0616\u0003\u0002",
+ "\u0002\u0002\u0629\u0617\u0003\u0002\u0002\u0002\u0629\u0618\u0003\u0002",
+ "\u0002\u0002\u0629\u0619\u0003\u0002\u0002\u0002\u0629\u061a\u0003\u0002",
+ "\u0002\u0002\u0629\u061b\u0003\u0002\u0002\u0002\u0629\u061c\u0003\u0002",
+ "\u0002\u0002\u0629\u061d\u0003\u0002\u0002\u0002\u0629\u061e\u0003\u0002",
+ "\u0002\u0002\u0629\u061f\u0003\u0002\u0002\u0002\u0629\u0620\u0003\u0002",
+ "\u0002\u0002\u0629\u0621\u0003\u0002\u0002\u0002\u0629\u0622\u0003\u0002",
+ "\u0002\u0002\u0629\u0623\u0003\u0002\u0002\u0002\u0629\u0624\u0003\u0002",
+ "\u0002\u0002\u0629\u0625\u0003\u0002\u0002\u0002\u0629\u0626\u0003\u0002",
+ "\u0002\u0002\u0629\u0627\u0003\u0002\u0002\u0002\u0629\u0628\u0003\u0002",
+ "\u0002\u0002\u062a\u0007\u0003\u0002\u0002\u0002\u062b\u062c\u0007\u019d",
+ "\u0002\u0002\u062c\u062d\u0007\u0230\u0002\u0002\u062d\u062e\u0005\u0580",
+ "\u02c1\u0002\u062e\u062f\u0007\u08c3\u0002\u0002\u062f\t\u0003\u0002",
+ "\u0002\u0002\u0630\u0631\u0007)\u0002\u0002\u0631\u0632\u0007\u0230",
+ "\u0002\u0002\u0632\u0633\u0005\u0580\u02c1\u0002\u0633\u0635\u0007\u00e1",
+ "\u0002\u0002\u0634\u0636\u0007\u0156\u0002\u0002\u0635\u0634\u0003\u0002",
+ "\u0002\u0002\u0635\u0636\u0003\u0002\u0002\u0002\u0636\u063a\u0003\u0002",
+ "\u0002\u0002\u0637\u0639\u0005\u0190\u00c9\u0002\u0638\u0637\u0003\u0002",
+ "\u0002\u0002\u0639\u063c\u0003\u0002\u0002\u0002\u063a\u0638\u0003\u0002",
+ "\u0002\u0002\u063a\u063b\u0003\u0002\u0002\u0002\u063b\u063f\u0003\u0002",
+ "\u0002\u0002\u063c\u063a\u0003\u0002\u0002\u0002\u063d\u063e\u0007\u059a",
+ "\u0002\u0002\u063e\u0640\u0007\u05ea\u0002\u0002\u063f\u063d\u0003\u0002",
+ "\u0002\u0002\u063f\u0640\u0003\u0002\u0002\u0002\u0640\u0641\u0003\u0002",
+ "\u0002\u0002\u0641\u0642\u0007\u08c3\u0002\u0002\u0642\u000b\u0003\u0002",
+ "\u0002\u0002\u0643\u0646\u0007\u0122\u0002\u0002\u0644\u0645\u0007\u0496",
+ "\u0002\u0002\u0645\u0647\u0007\u0581\u0002\u0002\u0646\u0644\u0003\u0002",
+ "\u0002\u0002\u0646\u0647\u0003\u0002\u0002\u0002\u0647\u0648\u0003\u0002",
+ "\u0002\u0002\u0648\u0649\u0007\u0230\u0002\u0002\u0649\u0655\u0005\u0580",
+ "\u02c1\u0002\u064a\u064b\u0007\u08b1\u0002\u0002\u064b\u0650\u0005\u0396",
+ "\u01cc\u0002\u064c\u064d\u0007\u08b7\u0002\u0002\u064d\u064f\u0005\u0396",
+ "\u01cc\u0002\u064e\u064c\u0003\u0002\u0002\u0002\u064f\u0652\u0003\u0002",
+ "\u0002\u0002\u0650\u064e\u0003\u0002\u0002\u0002\u0650\u0651\u0003\u0002",
+ "\u0002\u0002\u0651\u0653\u0003\u0002\u0002\u0002\u0652\u0650\u0003\u0002",
+ "\u0002\u0002\u0653\u0654\u0007\u08b2\u0002\u0002\u0654\u0656\u0003\u0002",
+ "\u0002\u0002\u0655\u064a\u0003\u0002\u0002\u0002\u0655\u0656\u0003\u0002",
+ "\u0002\u0002\u0656\u0657\u0003\u0002\u0002\u0002\u0657\u0658\u0007\u0599",
+ "\u0002\u0002\u0658\u065f\u0005\u05b4\u02db\u0002\u0659\u065e\u0005\u038a",
+ "\u01c6\u0002\u065a\u065e\u0005\u000e\b\u0002\u065b\u065e\u0005\u0012",
+ "\n\u0002\u065c\u065e\u0007\u0179\u0002\u0002\u065d\u0659\u0003\u0002",
+ "\u0002\u0002\u065d\u065a\u0003\u0002\u0002\u0002\u065d\u065b\u0003\u0002",
+ "\u0002\u0002\u065d\u065c\u0003\u0002\u0002\u0002\u065e\u0661\u0003\u0002",
+ "\u0002\u0002\u065f\u065d\u0003\u0002\u0002\u0002\u065f\u0660\u0003\u0002",
+ "\u0002\u0002\u0660\u0673\u0003\u0002\u0002\u0002\u0661\u065f\u0003\u0002",
+ "\u0002\u0002\u0662\u0664\u0007\u04e4\u0002\u0002\u0663\u0662\u0003\u0002",
+ "\u0002\u0002\u0663\u0664\u0003\u0002\u0002\u0002\u0664\u0665\u0003\u0002",
+ "\u0002\u0002\u0665\u066e\t\u0002\u0002\u0002\u0666\u0668\u0007\u015a",
+ "\u0002\u0002\u0667\u0666\u0003\u0002\u0002\u0002\u0667\u0668\u0003\u0002",
+ "\u0002\u0002\u0668\u066a\u0003\u0002\u0002\u0002\u0669\u066b\u0005\u039a",
+ "\u01ce\u0002\u066a\u0669\u0003\u0002\u0002\u0002\u066a\u066b\u0003\u0002",
+ "\u0002\u0002\u066b\u066c\u0003\u0002\u0002\u0002\u066c\u066f\u0005\u03e8",
+ "\u01f5\u0002\u066d\u066f\u0005\u038c\u01c7\u0002\u066e\u0667\u0003\u0002",
+ "\u0002\u0002\u066e\u066d\u0003\u0002\u0002\u0002\u066f\u0674\u0003\u0002",
+ "\u0002\u0002\u0670\u0671\t\u0003\u0002\u0002\u0671\u0672\u0007\u0811",
+ "\u0002\u0002\u0672\u0674\u0005\u0564\u02b3\u0002\u0673\u0663\u0003\u0002",
+ "\u0002\u0002\u0673\u0670\u0003\u0002\u0002\u0002\u0674\u0675\u0003\u0002",
+ "\u0002\u0002\u0675\u0676\u0007\u08c3\u0002\u0002\u0676\r\u0003\u0002",
+ "\u0002\u0002\u0677\u0679\u0007\u04ab\u0002\u0002\u0678\u067a\u0005\u0010",
+ "\t\u0002\u0679\u0678\u0003\u0002\u0002\u0002\u0679\u067a\u0003\u0002",
+ "\u0002\u0002\u067a\u000f\u0003\u0002\u0002\u0002\u067b\u067c\u0007\u08b1",
+ "\u0002\u0002\u067c\u067d\u0007\u04b9\u0002\u0002\u067d\u067e\u0005\u04d4",
+ "\u026b\u0002\u067e\u0682\u0007\u0094\u0002\u0002\u067f\u0683\u00072",
+ "\u0002\u0002\u0680\u0681\t\u0004\u0002\u0002\u0681\u0683\u0005\u05a6",
+ "\u02d4\u0002\u0682\u067f\u0003\u0002\u0002\u0002\u0682\u0680\u0003\u0002",
+ "\u0002\u0002\u0683\u0685\u0003\u0002\u0002\u0002\u0684\u0686\u0005\u0016",
+ "\f\u0002\u0685\u0684\u0003\u0002\u0002\u0002\u0685\u0686\u0003\u0002",
+ "\u0002\u0002\u0686\u0687\u0003\u0002\u0002\u0002\u0687\u0688\u0007\u08b2",
+ "\u0002\u0002\u0688\u0011\u0003\u0002\u0002\u0002\u0689\u068b\u0007\u0592",
+ "\u0002\u0002\u068a\u068c\u0005\u0014\u000b\u0002\u068b\u068a\u0003\u0002",
+ "\u0002\u0002\u068b\u068c\u0003\u0002\u0002\u0002\u068c\u0013\u0003\u0002",
+ "\u0002\u0002\u068d\u068e\u0007\u0578\u0002\u0002\u068e\u068f\u0007\u08b1",
+ "\u0002\u0002\u068f\u0694\u0005\u0594\u02cb\u0002\u0690\u0691\u0007\u08b7",
+ "\u0002\u0002\u0691\u0693\u0005\u0594\u02cb\u0002\u0692\u0690\u0003\u0002",
+ "\u0002\u0002\u0693\u0696\u0003\u0002\u0002\u0002\u0694\u0692\u0003\u0002",
+ "\u0002\u0002\u0694\u0695\u0003\u0002\u0002\u0002\u0695\u0697\u0003\u0002",
+ "\u0002\u0002\u0696\u0694\u0003\u0002\u0002\u0002\u0697\u0698\u0007\u08b2",
+ "\u0002\u0002\u0698\u0015\u0003\u0002\u0002\u0002\u0699\u069a\t\u0005",
+ "\u0002\u0002\u069a\u069b\u0005\u04d4\u026b\u0002\u069b\u069c\u0007\u0094",
+ "\u0002\u0002\u069c\u069d\u0005\u05a6\u02d4\u0002\u069d\u0017\u0003\u0002",
+ "\u0002\u0002\u069e\u069f\u0007\u019d\u0002\u0002\u069f\u06a1\u0007\u04a9",
+ "\u0002\u0002\u06a0\u06a2\u0007\u0087\u0002\u0002\u06a1\u06a0\u0003\u0002",
+ "\u0002\u0002\u06a1\u06a2\u0003\u0002\u0002\u0002\u06a2\u06a6\u0003\u0002",
+ "\u0002\u0002\u06a3\u06a4\u0005\u059c\u02cf\u0002\u06a4\u06a5\u0007\u08aa",
+ "\u0002\u0002\u06a5\u06a7\u0003\u0002\u0002\u0002\u06a6\u06a3\u0003\u0002",
+ "\u0002\u0002\u06a6\u06a7\u0003\u0002\u0002\u0002\u06a7\u06a8\u0003\u0002",
+ "\u0002\u0002\u06a8\u06a9\u0005\u0562\u02b2\u0002\u06a9\u06aa\u0007\u08c3",
+ "\u0002\u0002\u06aa\u0019\u0003\u0002\u0002\u0002\u06ab\u06ac\u0007)",
+ "\u0002\u0002\u06ac\u06ad\u0007\u04a9\u0002\u0002\u06ad\u06ae\u0005\u0562",
+ "\u02b2\u0002\u06ae\u06b0\u0007\u00e1\u0002\u0002\u06af\u06b1\u0007\u0156",
+ "\u0002\u0002\u06b0\u06af\u0003\u0002\u0002\u0002\u06b0\u06b1\u0003\u0002",
+ "\u0002\u0002\u06b1\u06b3\u0003\u0002\u0002\u0002\u06b2\u06b4\t\u0006",
+ "\u0002\u0002\u06b3\u06b2\u0003\u0002\u0002\u0002\u06b3\u06b4\u0003\u0002",
+ "\u0002\u0002\u06b4\u06b8\u0003\u0002\u0002\u0002\u06b5\u06b7\u0005\u0190",
+ "\u00c9\u0002\u06b6\u06b5\u0003\u0002\u0002\u0002\u06b7\u06ba\u0003\u0002",
+ "\u0002\u0002\u06b8\u06b6\u0003\u0002\u0002\u0002\u06b8\u06b9\u0003\u0002",
+ "\u0002\u0002\u06b9\u06bd\u0003\u0002\u0002\u0002\u06ba\u06b8\u0003\u0002",
+ "\u0002\u0002\u06bb\u06bc\u0007\u059a\u0002\u0002\u06bc\u06be\u0007\u05ea",
+ "\u0002\u0002\u06bd\u06bb\u0003\u0002\u0002\u0002\u06bd\u06be\u0003\u0002",
+ "\u0002\u0002\u06be\u06bf\u0003\u0002\u0002\u0002\u06bf\u06c0\u0007\u08c3",
+ "\u0002\u0002\u06c0\u001b\u0003\u0002\u0002\u0002\u06c1\u06c4\u0007\u0122",
+ "\u0002\u0002\u06c2\u06c3\u0007\u0496\u0002\u0002\u06c3\u06c5\u0007\u0581",
+ "\u0002\u0002\u06c4\u06c2\u0003\u0002\u0002\u0002\u06c4\u06c5\u0003\u0002",
+ "\u0002\u0002\u06c5\u06c6\u0003\u0002\u0002\u0002\u06c6\u06ca\u0007\u04a9",
+ "\u0002\u0002\u06c7\u06c8\u0005\u059c\u02cf\u0002\u06c8\u06c9\u0007\u08aa",
+ "\u0002\u0002\u06c9\u06cb\u0003\u0002\u0002\u0002\u06ca\u06c7\u0003\u0002",
+ "\u0002\u0002\u06ca\u06cb\u0003\u0002\u0002\u0002\u06cb\u06cc\u0003\u0002",
+ "\u0002\u0002\u06cc\u06ce\u0005\u0562\u02b2\u0002\u06cd\u06cf\u0005\u038a",
+ "\u01c6\u0002\u06ce\u06cd\u0003\u0002\u0002\u0002\u06ce\u06cf\u0003\u0002",
+ "\u0002\u0002\u06cf\u06d0\u0003\u0002\u0002\u0002\u06d0\u06d4\t\u0002",
+ "\u0002\u0002\u06d1\u06d3\u0005 \u0011\u0002\u06d2\u06d1\u0003\u0002",
+ "\u0002\u0002\u06d3\u06d6\u0003\u0002\u0002\u0002\u06d4\u06d2\u0003\u0002",
+ "\u0002\u0002\u06d4\u06d5\u0003\u0002\u0002\u0002\u06d5\u06d7\u0003\u0002",
+ "\u0002\u0002\u06d6\u06d4\u0003\u0002\u0002\u0002\u06d7\u06d9\u0007\u01bf",
+ "\u0002\u0002\u06d8\u06da\u0005\u0562\u02b2\u0002\u06d9\u06d8\u0003\u0002",
+ "\u0002\u0002\u06d9\u06da\u0003\u0002\u0002\u0002\u06da\u06db\u0003\u0002",
+ "\u0002\u0002\u06db\u06dc\u0007\u08c3\u0002\u0002\u06dc\u001d\u0003\u0002",
+ "\u0002\u0002\u06dd\u06e0\u0007\u0122\u0002\u0002\u06de\u06df\u0007\u0496",
+ "\u0002\u0002\u06df\u06e1\u0007\u0581\u0002\u0002\u06e0\u06de\u0003\u0002",
+ "\u0002\u0002\u06e0\u06e1\u0003\u0002\u0002\u0002\u06e1\u06e2\u0003\u0002",
+ "\u0002\u0002\u06e2\u06e3\u0007\u04a9\u0002\u0002\u06e3\u06e7\u0007\u0087",
+ "\u0002\u0002\u06e4\u06e5\u0005\u059c\u02cf\u0002\u06e5\u06e6\u0007\u08aa",
+ "\u0002\u0002\u06e6\u06e8\u0003\u0002\u0002\u0002\u06e7\u06e4\u0003\u0002",
+ "\u0002\u0002\u06e7\u06e8\u0003\u0002\u0002\u0002\u06e8\u06e9\u0003\u0002",
+ "\u0002\u0002\u06e9\u06ea\u0005\u0562\u02b2\u0002\u06ea\u06ee\t\u0002",
+ "\u0002\u0002\u06eb\u06ed\u0005&\u0014\u0002\u06ec\u06eb\u0003\u0002",
+ "\u0002\u0002\u06ed\u06f0\u0003\u0002\u0002\u0002\u06ee\u06ec\u0003\u0002",
+ "\u0002\u0002\u06ee\u06ef\u0003\u0002\u0002\u0002\u06ef\u06f3\u0003\u0002",
+ "\u0002\u0002\u06f0\u06ee\u0003\u0002\u0002\u0002\u06f1\u06f2\u0007h",
+ "\u0002\u0002\u06f2\u06f4\u0005\u03b8\u01dd\u0002\u06f3\u06f1\u0003\u0002",
+ "\u0002\u0002\u06f3\u06f4\u0003\u0002\u0002\u0002\u06f4\u06f5\u0003\u0002",
+ "\u0002\u0002\u06f5\u06f7\u0007\u01bf\u0002\u0002\u06f6\u06f8\u0005\u0562",
+ "\u02b2\u0002\u06f7\u06f6\u0003\u0002\u0002\u0002\u06f7\u06f8\u0003\u0002",
+ "\u0002\u0002\u06f8\u06f9\u0003\u0002\u0002\u0002\u06f9\u06fa\u0007\u08c3",
+ "\u0002\u0002\u06fa\u001f\u0003\u0002\u0002\u0002\u06fb\u0704\u0005\u03a8",
+ "\u01d5\u0002\u06fc\u0704\u0005\u039e\u01d0\u0002\u06fd\u0704\u0005\u03a0",
+ "\u01d1\u0002\u06fe\u0704\u0005\u03a2\u01d2\u0002\u06ff\u0704\u0005\u03a6",
+ "\u01d4\u0002\u0700\u0704\u0005\u03b0\u01d9\u0002\u0701\u0704\u0005\"",
+ "\u0012\u0002\u0702\u0704\u0005$\u0013\u0002\u0703\u06fb\u0003\u0002",
+ "\u0002\u0002\u0703\u06fc\u0003\u0002\u0002\u0002\u0703\u06fd\u0003\u0002",
+ "\u0002\u0002\u0703\u06fe\u0003\u0002\u0002\u0002\u0703\u06ff\u0003\u0002",
+ "\u0002\u0002\u0703\u0700\u0003\u0002\u0002\u0002\u0703\u0701\u0003\u0002",
+ "\u0002\u0002\u0703\u0702\u0003\u0002\u0002\u0002\u0704!\u0003\u0002",
+ "\u0002\u0002\u0705\u0706\u0007\u0524\u0002\u0002\u0706\u0712\u0005\u05d0",
+ "\u02e9\u0002\u0707\u0708\u0007\u08b1\u0002\u0002\u0708\u070d\u0005\u0396",
+ "\u01cc\u0002\u0709\u070a\u0007\u08b7\u0002\u0002\u070a\u070c\u0005\u0396",
+ "\u01cc\u0002\u070b\u0709\u0003\u0002\u0002\u0002\u070c\u070f\u0003\u0002",
+ "\u0002\u0002\u070d\u070b\u0003\u0002\u0002\u0002\u070d\u070e\u0003\u0002",
+ "\u0002\u0002\u070e\u0710\u0003\u0002\u0002\u0002\u070f\u070d\u0003\u0002",
+ "\u0002\u0002\u0710\u0711\u0007\u08b2\u0002\u0002\u0711\u0713\u0003\u0002",
+ "\u0002\u0002\u0712\u0707\u0003\u0002\u0002\u0002\u0712\u0713\u0003\u0002",
+ "\u0002\u0002\u0713\u0714\u0003\u0002\u0002\u0002\u0714\u0715\u0007\u08c3",
+ "\u0002\u0002\u0715#\u0003\u0002\u0002\u0002\u0716\u0717\u0007\u0230",
+ "\u0002\u0002\u0717\u0723\u0005\u05d0\u02e9\u0002\u0718\u0719\u0007\u08b1",
+ "\u0002\u0002\u0719\u071e\u0005\u0396\u01cc\u0002\u071a\u071b\u0007\u08b7",
+ "\u0002\u0002\u071b\u071d\u0005\u0396\u01cc\u0002\u071c\u071a\u0003\u0002",
+ "\u0002\u0002\u071d\u0720\u0003\u0002\u0002\u0002\u071e\u071c\u0003\u0002",
+ "\u0002\u0002\u071e\u071f\u0003\u0002\u0002\u0002\u071f\u0721\u0003\u0002",
+ "\u0002\u0002\u0720\u071e\u0003\u0002\u0002\u0002\u0721\u0722\u0007\u08b2",
+ "\u0002\u0002\u0722\u0724\u0003\u0002\u0002\u0002\u0723\u0718\u0003\u0002",
+ "\u0002\u0002\u0723\u0724\u0003\u0002\u0002\u0002\u0724\u0725\u0003\u0002",
+ "\u0002\u0002\u0725\u0726\u0007\u0599\u0002\u0002\u0726\u0728\u0005\u05b4",
+ "\u02db\u0002\u0727\u0729\u0007\u04e4\u0002\u0002\u0728\u0727\u0003\u0002",
+ "\u0002\u0002\u0728\u0729\u0003\u0002\u0002\u0002\u0729\u072b\u0003\u0002",
+ "\u0002\u0002\u072a\u072c\u0007\u0179\u0002\u0002\u072b\u072a\u0003\u0002",
+ "\u0002\u0002\u072b\u072c\u0003\u0002\u0002\u0002\u072c\u072e\u0003\u0002",
+ "\u0002\u0002\u072d\u072f\u0007\u0592\u0002\u0002\u072e\u072d\u0003\u0002",
+ "\u0002\u0002\u072e\u072f\u0003\u0002\u0002\u0002\u072f\u0730\u0003\u0002",
+ "\u0002\u0002\u0730\u0731\u0007\u08c3\u0002\u0002\u0731%\u0003\u0002",
+ "\u0002\u0002\u0732\u073c\u0005\u039e\u01d0\u0002\u0733\u073c\u0005\u03a0",
+ "\u01d1\u0002\u0734\u073c\u0005\u03a2\u01d2\u0002\u0735\u073c\u0005\u03a6",
+ "\u01d4\u0002\u0736\u073c\u0005\u03b0\u01d9\u0002\u0737\u073c\u0005.",
+ "\u0018\u0002\u0738\u073c\u0005,\u0017\u0002\u0739\u073c\u0005\"\u0012",
+ "\u0002\u073a\u073c\u0005$\u0013\u0002\u073b\u0732\u0003\u0002\u0002",
+ "\u0002\u073b\u0733\u0003\u0002\u0002\u0002\u073b\u0734\u0003\u0002\u0002",
+ "\u0002\u073b\u0735\u0003\u0002\u0002\u0002\u073b\u0736\u0003\u0002\u0002",
+ "\u0002\u073b\u0737\u0003\u0002\u0002\u0002\u073b\u0738\u0003\u0002\u0002",
+ "\u0002\u073b\u0739\u0003\u0002\u0002\u0002\u073b\u073a\u0003\u0002\u0002",
+ "\u0002\u073c\'\u0003\u0002\u0002\u0002\u073d\u073e\u0007\u019d\u0002",
+ "\u0002\u073e\u073f\u0007\u0524\u0002\u0002\u073f\u0740\u0005\u0582\u02c2",
+ "\u0002\u0740\u0741\u0007\u08c3\u0002\u0002\u0741)\u0003\u0002\u0002",
+ "\u0002\u0742\u0743\u0007)\u0002\u0002\u0743\u0744\u0007\u0524\u0002",
+ "\u0002\u0744\u0745\u0005\u0582\u02c2\u0002\u0745\u0747\u0007\u00e1\u0002",
+ "\u0002\u0746\u0748\u0007\u0156\u0002\u0002\u0747\u0746\u0003\u0002\u0002",
+ "\u0002\u0747\u0748\u0003\u0002\u0002\u0002\u0748\u074c\u0003\u0002\u0002",
+ "\u0002\u0749\u074b\u0005\u0190\u00c9\u0002\u074a\u0749\u0003\u0002\u0002",
+ "\u0002\u074b\u074e\u0003\u0002\u0002\u0002\u074c\u074a\u0003\u0002\u0002",
+ "\u0002\u074c\u074d\u0003\u0002\u0002\u0002\u074d\u0751\u0003\u0002\u0002",
+ "\u0002\u074e\u074c\u0003\u0002\u0002\u0002\u074f\u0750\u0007\u059a\u0002",
+ "\u0002\u0750\u0752\u0007\u05ea\u0002\u0002\u0751\u074f\u0003\u0002\u0002",
+ "\u0002\u0751\u0752\u0003\u0002\u0002\u0002\u0752\u0753\u0003\u0002\u0002",
+ "\u0002\u0753\u0754\u0007\u08c3\u0002\u0002\u0754+\u0003\u0002\u0002",
+ "\u0002\u0755\u0756\u0007\u0230\u0002\u0002\u0756\u0762\u0005\u05d0\u02e9",
+ "\u0002\u0757\u0758\u0007\u08b1\u0002\u0002\u0758\u075d\u0005\u0396\u01cc",
+ "\u0002\u0759\u075a\u0007\u08b7\u0002\u0002\u075a\u075c\u0005\u0396\u01cc",
+ "\u0002\u075b\u0759\u0003\u0002\u0002\u0002\u075c\u075f\u0003\u0002\u0002",
+ "\u0002\u075d\u075b\u0003\u0002\u0002\u0002\u075d\u075e\u0003\u0002\u0002",
+ "\u0002\u075e\u0760\u0003\u0002\u0002\u0002\u075f\u075d\u0003\u0002\u0002",
+ "\u0002\u0760\u0761\u0007\u08b2\u0002\u0002\u0761\u0763\u0003\u0002\u0002",
+ "\u0002\u0762\u0757\u0003\u0002\u0002\u0002\u0762\u0763\u0003\u0002\u0002",
+ "\u0002\u0763\u0764\u0003\u0002\u0002\u0002\u0764\u0765\u0007\u0599\u0002",
+ "\u0002\u0765\u076c\u0005\u05b4\u02db\u0002\u0766\u076b\u0005\u038a\u01c6",
+ "\u0002\u0767\u076b\u0005\u000e\b\u0002\u0768\u076b\u0005\u0012\n\u0002",
+ "\u0769\u076b\u0007\u0179\u0002\u0002\u076a\u0766\u0003\u0002\u0002\u0002",
+ "\u076a\u0767\u0003\u0002\u0002\u0002\u076a\u0768\u0003\u0002\u0002\u0002",
+ "\u076a\u0769\u0003\u0002\u0002\u0002\u076b\u076e\u0003\u0002\u0002\u0002",
+ "\u076c\u076a\u0003\u0002\u0002\u0002\u076c\u076d\u0003\u0002\u0002\u0002",
+ "\u076d\u0783\u0003\u0002\u0002\u0002\u076e\u076c\u0003\u0002\u0002\u0002",
+ "\u076f\u0771\u0007\u04e4\u0002\u0002\u0770\u076f\u0003\u0002\u0002\u0002",
+ "\u0770\u0771\u0003\u0002\u0002\u0002\u0771\u0773\u0003\u0002\u0002\u0002",
+ "\u0772\u0774\u0007\u0179\u0002\u0002\u0773\u0772\u0003\u0002\u0002\u0002",
+ "\u0773\u0774\u0003\u0002\u0002\u0002\u0774\u0775\u0003\u0002\u0002\u0002",
+ "\u0775\u077e\t\u0002\u0002\u0002\u0776\u0778\u0007\u015a\u0002\u0002",
+ "\u0777\u0776\u0003\u0002\u0002\u0002\u0777\u0778\u0003\u0002\u0002\u0002",
+ "\u0778\u077a\u0003\u0002\u0002\u0002\u0779\u077b\u0005\u039a\u01ce\u0002",
+ "\u077a\u0779\u0003\u0002\u0002\u0002\u077a\u077b\u0003\u0002\u0002\u0002",
+ "\u077b\u077c\u0003\u0002\u0002\u0002\u077c\u077f\u0005\u03e8\u01f5\u0002",
+ "\u077d\u077f\u0005\u038c\u01c7\u0002\u077e\u0777\u0003\u0002\u0002\u0002",
+ "\u077e\u077d\u0003\u0002\u0002\u0002\u077f\u0784\u0003\u0002\u0002\u0002",
+ "\u0780\u0781\t\u0003\u0002\u0002\u0781\u0782\u0007\u0811\u0002\u0002",
+ "\u0782\u0784\u0005\u0564\u02b3\u0002\u0783\u0770\u0003\u0002\u0002\u0002",
+ "\u0783\u0780\u0003\u0002\u0002\u0002\u0784\u0785\u0003\u0002\u0002\u0002",
+ "\u0785\u0786\u0007\u08c3\u0002\u0002\u0786-\u0003\u0002\u0002\u0002",
+ "\u0787\u0788\u0007\u0524\u0002\u0002\u0788\u0794\u0005\u05d0\u02e9\u0002",
+ "\u0789\u078a\u0007\u08b1\u0002\u0002\u078a\u078f\u0005\u0396\u01cc\u0002",
+ "\u078b\u078c\u0007\u08b7\u0002\u0002\u078c\u078e\u0005\u0396\u01cc\u0002",
+ "\u078d\u078b\u0003\u0002\u0002\u0002\u078e\u0791\u0003\u0002\u0002\u0002",
+ "\u078f\u078d\u0003\u0002\u0002\u0002\u078f\u0790\u0003\u0002\u0002\u0002",
+ "\u0790\u0792\u0003\u0002\u0002\u0002\u0791\u078f\u0003\u0002\u0002\u0002",
+ "\u0792\u0793\u0007\u08b2\u0002\u0002\u0793\u0795\u0003\u0002\u0002\u0002",
+ "\u0794\u0789\u0003\u0002\u0002\u0002\u0794\u0795\u0003\u0002\u0002\u0002",
+ "\u0795\u0796\u0003\u0002\u0002\u0002\u0796\u07a0\t\u0002\u0002\u0002",
+ "\u0797\u0799\u0007\u015a\u0002\u0002\u0798\u0797\u0003\u0002\u0002\u0002",
+ "\u0798\u0799\u0003\u0002\u0002\u0002\u0799\u079b\u0003\u0002\u0002\u0002",
+ "\u079a\u079c\u0005\u039a\u01ce\u0002\u079b\u079a\u0003\u0002\u0002\u0002",
+ "\u079b\u079c\u0003\u0002\u0002\u0002\u079c\u079d\u0003\u0002\u0002\u0002",
+ "\u079d\u07a1\u0005\u03e8\u01f5\u0002\u079e\u07a1\u0005\u038c\u01c7\u0002",
+ "\u079f\u07a1\u0007\u01ef\u0002\u0002\u07a0\u0798\u0003\u0002\u0002\u0002",
+ "\u07a0\u079e\u0003\u0002\u0002\u0002\u07a0\u079f\u0003\u0002\u0002\u0002",
+ "\u07a1\u07a2\u0003\u0002\u0002\u0002\u07a2\u07a3\u0007\u08c3\u0002\u0002",
+ "\u07a3/\u0003\u0002\u0002\u0002\u07a4\u07a7\u0007\u0122\u0002\u0002",
+ "\u07a5\u07a6\u0007\u0496\u0002\u0002\u07a6\u07a8\u0007\u0581\u0002\u0002",
+ "\u07a7\u07a5\u0003\u0002\u0002\u0002\u07a7\u07a8\u0003\u0002\u0002\u0002",
+ "\u07a8\u07a9\u0003\u0002\u0002\u0002\u07a9\u07aa\u0007\u0524\u0002\u0002",
+ "\u07aa\u07b6\u0005\u0582\u02c2\u0002\u07ab\u07ac\u0007\u08b1\u0002\u0002",
+ "\u07ac\u07b1\u0005\u0396\u01cc\u0002\u07ad\u07ae\u0007\u08b7\u0002\u0002",
+ "\u07ae\u07b0\u0005\u0396\u01cc\u0002\u07af\u07ad\u0003\u0002\u0002\u0002",
+ "\u07b0\u07b3\u0003\u0002\u0002\u0002\u07b1\u07af\u0003\u0002\u0002\u0002",
+ "\u07b1\u07b2\u0003\u0002\u0002\u0002\u07b2\u07b4\u0003\u0002\u0002\u0002",
+ "\u07b3\u07b1\u0003\u0002\u0002\u0002\u07b4\u07b5\u0007\u08b2\u0002\u0002",
+ "\u07b5\u07b7\u0003\u0002\u0002\u0002\u07b6\u07ab\u0003\u0002\u0002\u0002",
+ "\u07b6\u07b7\u0003\u0002\u0002\u0002\u07b7\u07b9\u0003\u0002\u0002\u0002",
+ "\u07b8\u07ba\u0005\u038a\u01c6\u0002\u07b9\u07b8\u0003\u0002\u0002\u0002",
+ "\u07b9\u07ba\u0003\u0002\u0002\u0002\u07ba\u07bb\u0003\u0002\u0002\u0002",
+ "\u07bb\u07c5\t\u0002\u0002\u0002\u07bc\u07be\u0007\u015a\u0002\u0002",
+ "\u07bd\u07bc\u0003\u0002\u0002\u0002\u07bd\u07be\u0003\u0002\u0002\u0002",
+ "\u07be\u07c0\u0003\u0002\u0002\u0002\u07bf\u07c1\u0005\u039a\u01ce\u0002",
+ "\u07c0\u07bf\u0003\u0002\u0002\u0002\u07c0\u07c1\u0003\u0002\u0002\u0002",
+ "\u07c1\u07c2\u0003\u0002\u0002\u0002\u07c2\u07c6\u0005\u03e8\u01f5\u0002",
+ "\u07c3\u07c6\u0005\u038c\u01c7\u0002\u07c4\u07c6\u0007\u01ef\u0002\u0002",
+ "\u07c5\u07bd\u0003\u0002\u0002\u0002\u07c5\u07c3\u0003\u0002\u0002\u0002",
+ "\u07c5\u07c4\u0003\u0002\u0002\u0002\u07c6\u07c7\u0003\u0002\u0002\u0002",
+ "\u07c7\u07c8\u0007\u08c3\u0002\u0002\u07c81\u0003\u0002\u0002\u0002",
+ "\u07c9\u07ca\u0007\u019d\u0002\u0002\u07ca\u07cb\u0007\u07bc\u0002\u0002",
+ "\u07cb\u07cc\u0005\u0584\u02c3\u0002\u07cc\u07cd\u0007\u08c3\u0002\u0002",
+ "\u07cd3\u0003\u0002\u0002\u0002\u07ce\u07cf\u0007)\u0002\u0002\u07cf",
+ "\u07d0\u0007\u07bc\u0002\u0002\u07d0\u07e3\u0005\u0584\u02c3\u0002\u07d1",
+ "\u07e4\t\u0007\u0002\u0002\u07d2\u07d3\u0007\u057e\u0002\u0002\u07d3",
+ "\u07d4\u0007\u07ae\u0002\u0002\u07d4\u07e4\u0005\u0584\u02c3\u0002\u07d5",
+ "\u07d7\u0007\u00e1\u0002\u0002\u07d6\u07d8\u0007\u0156\u0002\u0002\u07d7",
+ "\u07d6\u0003\u0002\u0002\u0002\u07d7\u07d8\u0003\u0002\u0002\u0002\u07d8",
+ "\u07dc\u0003\u0002\u0002\u0002\u07d9\u07db\u0005\u0190\u00c9\u0002\u07da",
+ "\u07d9\u0003\u0002\u0002\u0002\u07db\u07de\u0003\u0002\u0002\u0002\u07dc",
+ "\u07da\u0003\u0002\u0002\u0002\u07dc\u07dd\u0003\u0002\u0002\u0002\u07dd",
+ "\u07e1\u0003\u0002\u0002\u0002\u07de\u07dc\u0003\u0002\u0002\u0002\u07df",
+ "\u07e0\u0007\u059a\u0002\u0002\u07e0\u07e2\u0007\u05ea\u0002\u0002\u07e1",
+ "\u07df\u0003\u0002\u0002\u0002\u07e1\u07e2\u0003\u0002\u0002\u0002\u07e2",
+ "\u07e4\u0003\u0002\u0002\u0002\u07e3\u07d1\u0003\u0002\u0002\u0002\u07e3",
+ "\u07d2\u0003\u0002\u0002\u0002\u07e3\u07d5\u0003\u0002\u0002\u0002\u07e4",
+ "\u07e5\u0003\u0002\u0002\u0002\u07e5\u07e6\u0007\u08c3\u0002\u0002\u07e6",
+ "5\u0003\u0002\u0002\u0002\u07e7\u07ea\u0007\u0122\u0002\u0002\u07e8",
+ "\u07e9\u0007\u0496\u0002\u0002\u07e9\u07eb\u0007\u0581\u0002\u0002\u07ea",
+ "\u07e8\u0003\u0002\u0002\u0002\u07ea\u07eb\u0003\u0002\u0002\u0002\u07eb",
+ "\u07ec\u0003\u0002\u0002\u0002\u07ec\u07ed\u0007\u07bc\u0002\u0002\u07ed",
+ "\u07f1\u0005\u0584\u02c3\u0002\u07ee\u07f2\u0005<\u001f\u0002\u07ef",
+ "\u07f2\u0005@!\u0002\u07f0\u07f2\u0005B\"\u0002\u07f1\u07ee\u0003\u0002",
+ "\u0002\u0002\u07f1\u07ef\u0003\u0002\u0002\u0002\u07f1\u07f0\u0003\u0002",
+ "\u0002\u0002\u07f2\u07f4\u0003\u0002\u0002\u0002\u07f3\u07f5\u00058",
+ "\u001d\u0002\u07f4\u07f3\u0003\u0002\u0002\u0002\u07f4\u07f5\u0003\u0002",
+ "\u0002\u0002\u07f5\u07f7\u0003\u0002\u0002\u0002\u07f6\u07f8\t\u0007",
+ "\u0002\u0002\u07f7\u07f6\u0003\u0002\u0002\u0002\u07f7\u07f8\u0003\u0002",
+ "\u0002\u0002\u07f8\u07fa\u0003\u0002\u0002\u0002\u07f9\u07fb\u0005:",
+ "\u001e\u0002\u07fa\u07f9\u0003\u0002\u0002\u0002\u07fa\u07fb\u0003\u0002",
+ "\u0002\u0002\u07fb\u07fc\u0003\u0002\u0002\u0002\u07fc\u07fd\u0005D",
+ "#\u0002\u07fd\u07fe\u0007\u08c3\u0002\u0002\u07fe7\u0003\u0002\u0002",
+ "\u0002\u07ff\u0800\u0007\u021e\u0002\u0002\u0800\u0805\u0005\u0584\u02c3",
+ "\u0002\u0801\u0802\u0007\u08b7\u0002\u0002\u0802\u0804\u0005\u0584\u02c3",
+ "\u0002\u0803\u0801\u0003\u0002\u0002\u0002\u0804\u0807\u0003\u0002\u0002",
+ "\u0002\u0805\u0803\u0003\u0002\u0002\u0002\u0805\u0806\u0003\u0002\u0002",
+ "\u0002\u08069\u0003\u0002\u0002\u0002\u0807\u0805\u0003\u0002\u0002",
+ "\u0002\u0808\u0809\u0007\u0843\u0002\u0002\u0809\u080a\u0007\u08b1\u0002",
+ "\u0002\u080a\u080b\u0005\u04d0\u0269\u0002\u080b\u080c\u0007\u08b2\u0002",
+ "\u0002\u080c;\u0003\u0002\u0002\u0002\u080d\u0812\u0007g\u0002\u0002",
+ "\u080e\u0812\u0007 \u0002\u0002\u080f\u0810\u0007\u02a6\u0002\u0002",
+ "\u0810\u0812\u0007\u045d\u0002\u0002\u0811\u080d\u0003\u0002\u0002\u0002",
+ "\u0811\u080e\u0003\u0002\u0002\u0002\u0811\u080f\u0003\u0002\u0002\u0002",
+ "\u0812\u0813\u0003\u0002\u0002\u0002\u0813\u0815\u0005N(\u0002\u0814",
+ "\u0816\u0005T+\u0002\u0815\u0814\u0003\u0002\u0002\u0002\u0815\u0816",
+ "\u0003\u0002\u0002\u0002\u0816\u0818\u0003\u0002\u0002\u0002\u0817\u0819",
+ "\u0005> \u0002\u0818\u0817\u0003\u0002\u0002\u0002\u0818\u0819\u0003",
+ "\u0002\u0002\u0002\u0819=\u0003\u0002\u0002\u0002\u081a\u081b\u0007",
+ "\u0224\u0002\u0002\u081b\u081c\u0007\u01a8\u0002\u0002\u081c\u081d\u0007",
+ "\u05ad\u0002\u0002\u081d?\u0003\u0002\u0002\u0002\u081e\u081f\u0007",
+ "\u0224\u0002\u0002\u081f\u0821\u0005N(\u0002\u0820\u0822\u0005T+\u0002",
+ "\u0821\u0820\u0003\u0002\u0002\u0002\u0821\u0822\u0003\u0002\u0002\u0002",
+ "\u0822A\u0003\u0002\u0002\u0002\u0823\u0824\t\b\u0002\u0002\u0824\u0829",
+ "\u0005L\'\u0002\u0825\u0826\u0007\u0496\u0002\u0002\u0826\u0828\u0005",
+ "L\'\u0002\u0827\u0825\u0003\u0002\u0002\u0002\u0828\u082b\u0003\u0002",
+ "\u0002\u0002\u0829\u0827\u0003\u0002\u0002\u0002\u0829\u082a\u0003\u0002",
+ "\u0002\u0002\u082a\u082c\u0003\u0002\u0002\u0002\u082b\u0829\u0003\u0002",
+ "\u0002\u0002\u082c\u0834\u0007\u046a\u0002\u0002\u082d\u0835\u0007\u013e",
+ "\u0002\u0002\u082e\u082f\u0005\u055e\u02b0\u0002\u082f\u0830\u0007\u08aa",
+ "\u0002\u0002\u0830\u0832\u0003\u0002\u0002\u0002\u0831\u082e\u0003\u0002",
+ "\u0002\u0002\u0831\u0832\u0003\u0002\u0002\u0002\u0832\u0833\u0003\u0002",
+ "\u0002\u0002\u0833\u0835\u0007\u05c0\u0002\u0002\u0834\u082d\u0003\u0002",
+ "\u0002\u0002\u0834\u0831\u0003\u0002\u0002\u0002\u0835C\u0003\u0002",
+ "\u0002\u0002\u0836\u0837\u0007\u00e9\u0002\u0002\u0837\u083c\u0007\u07bc",
+ "\u0002\u0002\u0838\u0839\u0007\u009f\u0002\u0002\u0839\u083c\u0005\u05d0",
+ "\u02e9\u0002\u083a\u083c\u0005\u03ec\u01f7\u0002\u083b\u0836\u0003\u0002",
+ "\u0002\u0002\u083b\u0838\u0003\u0002\u0002\u0002\u083b\u083a\u0003\u0002",
+ "\u0002\u0002\u083cE\u0003\u0002\u0002\u0002\u083d\u083f\u0005\u0560",
+ "\u02b1\u0002\u083e\u0840\u0005\u05aa\u02d6\u0002\u083f\u083e\u0003\u0002",
+ "\u0002\u0002\u083f\u0840\u0003\u0002\u0002\u0002\u0840G\u0003\u0002",
+ "\u0002\u0002\u0841\u0842\u0007\u00e9\u0002\u0002\u0842\u0844\u0007\u07bc",
+ "\u0002\u0002\u0843\u0845\u0005\u039a\u01ce\u0002\u0844\u0843\u0003\u0002",
+ "\u0002\u0002\u0844\u0845\u0003\u0002\u0002\u0002\u0845\u0847\u0003\u0002",
+ "\u0002\u0002\u0846\u0848\u0005J&\u0002\u0847\u0846\u0003\u0002\u0002",
+ "\u0002\u0848\u0849\u0003\u0002\u0002\u0002\u0849\u0847\u0003\u0002\u0002",
+ "\u0002\u0849\u084a\u0003\u0002\u0002\u0002\u084a\u084b\u0003\u0002\u0002",
+ "\u0002\u084b\u084c\u0007\u01bf\u0002\u0002\u084c\u084d\u0005\u0584\u02c3",
+ "\u0002\u084dI\u0003\u0002\u0002\u0002\u084e\u084f\u0007g\u0002\u0002",
+ "\u084f\u0850\u0007\u0628\u0002\u0002\u0850\u0851\u0007\u02b9\u0002\u0002",
+ "\u0851\u0852\u0005\u03ec\u01f7\u0002\u0852\u0853\u0007g\u0002\u0002",
+ "\u0853\u0854\u0007\u0628\u0002\u0002\u0854\u0855\u0007\u08c3\u0002\u0002",
+ "\u0855\u0873\u0003\u0002\u0002\u0002\u0856\u0857\u0007g\u0002\u0002",
+ "\u0857\u0858\u0007\u01a8\u0002\u0002\u0858\u0859\u0007\u05ad\u0002\u0002",
+ "\u0859\u085a\u0007\u02b9\u0002\u0002\u085a\u085b\u0005\u03ec\u01f7\u0002",
+ "\u085b\u085c\u0007g\u0002\u0002\u085c\u085d\u0007\u01a8\u0002\u0002",
+ "\u085d\u085e\u0007\u05ad\u0002\u0002\u085e\u085f\u0007\u08c3\u0002\u0002",
+ "\u085f\u0873\u0003\u0002\u0002\u0002\u0860\u0861\u0007 \u0002\u0002",
+ "\u0861\u0862\u0007\u0628\u0002\u0002\u0862\u0863\u0007\u02b9\u0002\u0002",
+ "\u0863\u0864\u0005\u03ec\u01f7\u0002\u0864\u0865\u0007 \u0002\u0002",
+ "\u0865\u0866\u0007\u0628\u0002\u0002\u0866\u0867\u0007\u08c3\u0002\u0002",
+ "\u0867\u0873\u0003\u0002\u0002\u0002\u0868\u0869\u0007 \u0002\u0002",
+ "\u0869\u086a\u0007\u01a8\u0002\u0002\u086a\u086b\u0007\u05ad\u0002\u0002",
+ "\u086b\u086c\u0007\u02b9\u0002\u0002\u086c\u086d\u0005\u03ec\u01f7\u0002",
+ "\u086d\u086e\u0007 \u0002\u0002\u086e\u086f\u0007\u01a8\u0002\u0002",
+ "\u086f\u0870\u0007\u05ad\u0002\u0002\u0870\u0871\u0007\u08c3\u0002\u0002",
+ "\u0871\u0873\u0003\u0002\u0002\u0002\u0872\u084e\u0003\u0002\u0002\u0002",
+ "\u0872\u0856\u0003\u0002\u0002\u0002\u0872\u0860\u0003\u0002\u0002\u0002",
+ "\u0872\u0868\u0003\u0002\u0002\u0002\u0873K\u0003\u0002\u0002\u0002",
+ "\u0874\u088f\u0007)\u0002\u0002\u0875\u088f\u0007+\u0002\u0002\u0876",
+ "\u0877\u0007G\u0002\u0002\u0877\u088f\u0007\u062b\u0002\u0002\u0878",
+ "\u088f\u0007O\u0002\u0002\u0879\u088f\u0007\u00db\u0002\u0002\u087a",
+ "\u088f\u0007\u0122\u0002\u0002\u087b\u087c\u0007\u0186\u0002\u0002\u087c",
+ "\u088f\u0007\u062b\u0002\u0002\u087d\u088f\u0007\u019d\u0002\u0002\u087e",
+ "\u088f\u0007\u023d\u0002\u0002\u087f\u088f\u0007\u03ae\u0002\u0002\u0880",
+ "\u088f\u0007\u057e\u0002\u0002\u0881\u088f\u0007\u059c\u0002\u0002\u0882",
+ "\u088f\u0007\u07be\u0002\u0002\u0883\u088f\u0007\u0154\u0002\u0002\u0884",
+ "\u088f\u0007\u0624\u0002\u0002\u0885\u088f\u0007\u05f4\u0002\u0002\u0886",
+ "\u088f\u0007\u0150\u0002\u0002\u0887\u088f\u0007\u0314\u0002\u0002\u0888",
+ "\u088f\u0007\u0313\u0002\u0002\u0889\u088f\u0007\u05e0\u0002\u0002\u088a",
+ "\u088f\u0007\u0657\u0002\u0002\u088b\u088f\u0007\u013e\u0002\u0002\u088c",
+ "\u088f\u0007\u05c0\u0002\u0002\u088d\u088f\u0007\u021e\u0002\u0002\u088e",
+ "\u0874\u0003\u0002\u0002\u0002\u088e\u0875\u0003\u0002\u0002\u0002\u088e",
+ "\u0876\u0003\u0002\u0002\u0002\u088e\u0878\u0003\u0002\u0002\u0002\u088e",
+ "\u0879\u0003\u0002\u0002\u0002\u088e\u087a\u0003\u0002\u0002\u0002\u088e",
+ "\u087b\u0003\u0002\u0002\u0002\u088e\u087d\u0003\u0002\u0002\u0002\u088e",
+ "\u087e\u0003\u0002\u0002\u0002\u088e\u087f\u0003\u0002\u0002\u0002\u088e",
+ "\u0880\u0003\u0002\u0002\u0002\u088e\u0881\u0003\u0002\u0002\u0002\u088e",
+ "\u0882\u0003\u0002\u0002\u0002\u088e\u0883\u0003\u0002\u0002\u0002\u088e",
+ "\u0884\u0003\u0002\u0002\u0002\u088e\u0885\u0003\u0002\u0002\u0002\u088e",
+ "\u0886\u0003\u0002\u0002\u0002\u088e\u0887\u0003\u0002\u0002\u0002\u088e",
+ "\u0888\u0003\u0002\u0002\u0002\u088e\u0889\u0003\u0002\u0002\u0002\u088e",
+ "\u088a\u0003\u0002\u0002\u0002\u088e\u088b\u0003\u0002\u0002\u0002\u088e",
+ "\u088c\u0003\u0002\u0002\u0002\u088e\u088d\u0003\u0002\u0002\u0002\u088f",
+ "M\u0003\u0002\u0002\u0002\u0890\u0895\u0005P)\u0002\u0891\u0892\u0007",
+ "\u0496\u0002\u0002\u0892\u0894\u0005P)\u0002\u0893\u0891\u0003\u0002",
+ "\u0002\u0002\u0894\u0897\u0003\u0002\u0002\u0002\u0895\u0893\u0003\u0002",
+ "\u0002\u0002\u0895\u0896\u0003\u0002\u0002\u0002\u0896\u0898\u0003\u0002",
+ "\u0002\u0002\u0897\u0895\u0003\u0002\u0002\u0002\u0898\u089a\u0007\u046a",
+ "\u0002\u0002\u0899\u089b\u0005R*\u0002\u089a\u0899\u0003\u0002\u0002",
+ "\u0002\u089a\u089b\u0003\u0002\u0002\u0002\u089b\u089c\u0003\u0002\u0002",
+ "\u0002\u089c\u089d\u0005\u0594\u02cb\u0002\u089dO\u0003\u0002\u0002",
+ "\u0002\u089e\u08a1\t\t\u0002\u0002\u089f\u08a0\u0007\u045d\u0002\u0002",
+ "\u08a0\u08a2\u0005\u05a4\u02d3\u0002\u08a1\u089f\u0003\u0002\u0002\u0002",
+ "\u08a1\u08a2\u0003\u0002\u0002\u0002\u08a2Q\u0003\u0002\u0002\u0002",
+ "\u08a3\u08a4\u0007\u0381\u0002\u0002\u08a4\u08a5\u0007\u077a\u0002\u0002",
+ "\u08a5\u08a6\u0005\u0594\u02cb\u0002\u08a6\u08a7\u0007\u045d\u0002\u0002",
+ "\u08a7S\u0003\u0002\u0002\u0002\u08a8\u08aa\u0007\u0561\u0002\u0002",
+ "\u08a9\u08ab\u0005V,\u0002\u08aa\u08a9\u0003\u0002\u0002\u0002\u08ab",
+ "\u08ac\u0003\u0002\u0002\u0002\u08ac\u08aa\u0003\u0002\u0002\u0002\u08ac",
+ "\u08ad\u0003\u0002\u0002\u0002\u08adU\u0003\u0002\u0002\u0002\u08ae",
+ "\u08af\t\n\u0002\u0002\u08af\u08b0\u0005\u054a\u02a6\u0002\u08b0W\u0003",
+ "\u0002\u0002\u0002\u08b1\u08b2\u0007\u019d\u0002\u0002\u08b2\u08b4\u0007",
+ "\u07c5\u0002\u0002\u08b3\u08b5\u0007\u0087\u0002\u0002\u08b4\u08b3\u0003",
+ "\u0002\u0002\u0002\u08b4\u08b5\u0003\u0002\u0002\u0002\u08b5\u08b6\u0003",
+ "\u0002\u0002\u0002\u08b6\u08b8\u0005\u057a\u02be\u0002\u08b7\u08b9\t",
+ "\u000b\u0002\u0002\u08b8\u08b7\u0003\u0002\u0002\u0002\u08b8\u08b9\u0003",
+ "\u0002\u0002\u0002\u08b9\u08ba\u0003\u0002\u0002\u0002\u08ba\u08bb\u0007",
+ "\u08c3\u0002\u0002\u08bbY\u0003\u0002\u0002\u0002\u08bc\u08bd\u0007",
+ ")\u0002\u0002\u08bd\u08be\u0007\u07c5\u0002\u0002\u08be\u08c5\u0005",
+ "\u057a\u02be\u0002\u08bf\u08c6\u0005\\/\u0002\u08c0\u08c6\u0005^0\u0002",
+ "\u08c1\u08c6\u0005`1\u0002\u08c2\u08c6\u0005h5\u0002\u08c3\u08c6\u0005",
+ "\u008aF\u0002\u08c4\u08c6\u0005\u0096L\u0002\u08c5\u08bf\u0003\u0002",
+ "\u0002\u0002\u08c5\u08c0\u0003\u0002\u0002\u0002\u08c5\u08c1\u0003\u0002",
+ "\u0002\u0002\u08c5\u08c2\u0003\u0002\u0002\u0002\u08c5\u08c3\u0003\u0002",
+ "\u0002\u0002\u08c5\u08c4\u0003\u0002\u0002\u0002\u08c6\u08c8\u0003\u0002",
+ "\u0002\u0002\u08c7\u08c9\u0005j6\u0002\u08c8\u08c7\u0003\u0002\u0002",
+ "\u0002\u08c8\u08c9\u0003\u0002\u0002\u0002\u08c9\u08ca\u0003\u0002\u0002",
+ "\u0002\u08ca\u08cb\u0007\u08c3\u0002\u0002\u08cb[\u0003\u0002\u0002",
+ "\u0002\u08cc\u08ce\u0007\u00e1\u0002\u0002\u08cd\u08cf\u0007\u0156\u0002",
+ "\u0002\u08ce\u08cd\u0003\u0002\u0002\u0002\u08ce\u08cf\u0003\u0002\u0002",
+ "\u0002\u08cf\u08d1\u0003\u0002\u0002\u0002\u08d0\u08d2\t\f\u0002\u0002",
+ "\u08d1\u08d0\u0003\u0002\u0002\u0002\u08d1\u08d2\u0003\u0002\u0002\u0002",
+ "\u08d2\u08d6\u0003\u0002\u0002\u0002\u08d3\u08d5\u0005\u0190\u00c9\u0002",
+ "\u08d4\u08d3\u0003\u0002\u0002\u0002\u08d5\u08d8\u0003\u0002\u0002\u0002",
+ "\u08d6\u08d4\u0003\u0002\u0002\u0002\u08d6\u08d7\u0003\u0002\u0002\u0002",
+ "\u08d7\u08db\u0003\u0002\u0002\u0002\u08d8\u08d6\u0003\u0002\u0002\u0002",
+ "\u08d9\u08da\u0007\u059a\u0002\u0002\u08da\u08dc\u0007\u05ea\u0002\u0002",
+ "\u08db\u08d9\u0003\u0002\u0002\u0002\u08db\u08dc\u0003\u0002\u0002\u0002",
+ "\u08dc]\u0003\u0002\u0002\u0002\u08dd\u08df\u0007\u0581\u0002\u0002",
+ "\u08de\u08e0\u0005\u038a\u01c6\u0002\u08df\u08de\u0003\u0002\u0002\u0002",
+ "\u08df\u08e0\u0003\u0002\u0002\u0002\u08e0\u08e1\u0003\u0002\u0002\u0002",
+ "\u08e1\u08e2\u0007?\u0002\u0002\u08e2\u08e3\u0007\u0455\u0002\u0002",
+ "\u08e3\u08e4\u0007\u08b1\u0002\u0002\u08e4\u08e9\u0005\u008cG\u0002",
+ "\u08e5\u08e6\u0007\u08b7\u0002\u0002\u08e6\u08e8\u0005\u008cG\u0002",
+ "\u08e7\u08e5\u0003\u0002\u0002\u0002\u08e8\u08eb\u0003\u0002\u0002\u0002",
+ "\u08e9\u08e7\u0003\u0002\u0002\u0002\u08e9\u08ea\u0003\u0002\u0002\u0002",
+ "\u08ea\u08ec\u0003\u0002\u0002\u0002\u08eb\u08e9\u0003\u0002\u0002\u0002",
+ "\u08ec\u08ed\u0007\u08b2\u0002\u0002\u08ed_\u0003\u0002\u0002\u0002",
+ "\u08ee\u08f3\u0005b2\u0002\u08ef\u08f0\u0007\u08b7\u0002\u0002\u08f0",
+ "\u08f2\u0005b2\u0002\u08f1\u08ef\u0003\u0002\u0002\u0002\u08f2\u08f5",
+ "\u0003\u0002\u0002\u0002\u08f3\u08f1\u0003\u0002\u0002\u0002\u08f3\u08f4",
+ "\u0003\u0002\u0002\u0002\u08f4a\u0003\u0002\u0002\u0002\u08f5\u08f3",
+ "\u0003\u0002\u0002\u0002\u08f6\u08f9\t\r\u0002\u0002\u08f7\u08fa\u0005",
+ "\u00a0Q\u0002\u08f8\u08fa\u0005\u0094K\u0002\u08f9\u08f7\u0003\u0002",
+ "\u0002\u0002\u08f9\u08f8\u0003\u0002\u0002\u0002\u08fac\u0003\u0002",
+ "\u0002\u0002\u08fb\u08fc\t\u000e\u0002\u0002\u08fc\u0909\u0007M\u0002",
+ "\u0002\u08fd\u090a\u0005f4\u0002\u08fe\u08ff\u0007\u08b1\u0002\u0002",
+ "\u08ff\u0904\u0005f4\u0002\u0900\u0901\u0007\u08b7\u0002\u0002\u0901",
+ "\u0903\u0005f4\u0002\u0902\u0900\u0003\u0002\u0002\u0002\u0903\u0906",
+ "\u0003\u0002\u0002\u0002\u0904\u0902\u0003\u0002\u0002\u0002\u0904\u0905",
+ "\u0003\u0002\u0002\u0002\u0905\u0907\u0003\u0002\u0002\u0002\u0906\u0904",
+ "\u0003\u0002\u0002\u0002\u0907\u0908\u0007\u08b2\u0002\u0002\u0908\u090a",
+ "\u0003\u0002\u0002\u0002\u0909\u08fd\u0003\u0002\u0002\u0002\u0909\u08fe",
+ "\u0003\u0002\u0002\u0002\u090ae\u0003\u0002\u0002\u0002\u090b\u090d",
+ "\u0005\u0556\u02ac\u0002\u090c\u090e\u0005\u05b4\u02db\u0002\u090d\u090c",
+ "\u0003\u0002\u0002\u0002\u090d\u090e\u0003\u0002\u0002\u0002\u090eg",
+ "\u0003\u0002\u0002\u0002\u090f\u0915\u0007\u0361\u0002\u0002\u0910\u0911",
+ "\u0007\u02f8\u0002\u0002\u0911\u0916\u0005\u04d4\u026b\u0002\u0912\u0913",
+ "\u0007\u01ad\u0002\u0002\u0913\u0914\u0007\u07c5\u0002\u0002\u0914\u0916",
+ "\u0005\u05b4\u02db\u0002\u0915\u0910\u0003\u0002\u0002\u0002\u0915\u0912",
+ "\u0003\u0002\u0002\u0002\u0916i\u0003\u0002\u0002\u0002\u0917\u0928",
+ "\u0007\u02b6\u0002\u0002\u0918\u0922\u0007\u00a4\u0002\u0002\u0919\u091a",
+ "\u0007\u010f\u0002\u0002\u091a\u091b\u0007\u07ae\u0002\u0002\u091b\u0923",
+ "\u0007\u064d\u0002\u0002\u091c\u091e\u0007\u0433\u0002\u0002\u091d\u091c",
+ "\u0003\u0002\u0002\u0002\u091d\u091e\u0003\u0002\u0002\u0002\u091e\u091f",
+ "\u0003\u0002\u0002\u0002\u091f\u0920\u0007\u026d\u0002\u0002\u0920\u0921",
+ "\u0007\u077a\u0002\u0002\u0921\u0923\u0007\u013f\u0002\u0002\u0922\u0919",
+ "\u0003\u0002\u0002\u0002\u0922\u091d\u0003\u0002\u0002\u0002\u0922\u0923",
+ "\u0003\u0002\u0002\u0002\u0923\u0925\u0003\u0002\u0002\u0002\u0924\u0926",
+ "\u0005l7\u0002\u0925\u0924\u0003\u0002\u0002\u0002\u0925\u0926\u0003",
+ "\u0002\u0002\u0002\u0926\u0928\u0003\u0002\u0002\u0002\u0927\u0917\u0003",
+ "\u0002\u0002\u0002\u0927\u0918\u0003\u0002\u0002\u0002\u0928k\u0003",
+ "\u0002\u0002\u0002\u0929\u092b\u0007\u0220\u0002\u0002\u092a\u0929\u0003",
+ "\u0002\u0002\u0002\u092a\u092b\u0003\u0002\u0002\u0002\u092b\u092c\u0003",
+ "\u0002\u0002\u0002\u092c\u092d\u0007\u01d8\u0002\u0002\u092d\u092e\u0007",
+ "\u02b5\u0002\u0002\u092e\u092f\u0005\u0594\u02cb\u0002\u092fm\u0003",
+ "\u0002\u0002\u0002\u0930\u0933\u0007\u0122\u0002\u0002\u0931\u0932\u0007",
+ "\u0496\u0002\u0002\u0932\u0934\u0007\u0581\u0002\u0002\u0933\u0931\u0003",
+ "\u0002\u0002\u0002\u0933\u0934\u0003\u0002\u0002\u0002\u0934\u0935\u0003",
+ "\u0002\u0002\u0002\u0935\u0938\u0007\u07c5\u0002\u0002\u0936\u0939\u0005",
+ "p9\u0002\u0937\u0939\u0005|?\u0002\u0938\u0936\u0003\u0002\u0002\u0002",
+ "\u0938\u0937\u0003\u0002\u0002\u0002\u0939\u093a\u0003\u0002\u0002\u0002",
+ "\u093a\u093b\u0007\u08c3\u0002\u0002\u093bo\u0003\u0002\u0002\u0002",
+ "\u093c\u093f\u0005\u057a\u02be\u0002\u093d\u093e\u0007\u045f\u0002\u0002",
+ "\u093e\u0940\u0007\u08ad\u0002\u0002\u093f\u093d\u0003\u0002\u0002\u0002",
+ "\u093f\u0940\u0003\u0002\u0002\u0002\u0940\u0942\u0003\u0002\u0002\u0002",
+ "\u0941\u0943\u0005r:\u0002\u0942\u0941\u0003\u0002\u0002\u0002\u0942",
+ "\u0943\u0003\u0002\u0002\u0002\u0943q\u0003\u0002\u0002\u0002\u0944",
+ "\u0946\u0005\u038a\u01c6\u0002\u0945\u0944\u0003\u0002\u0002\u0002\u0945",
+ "\u0946\u0003\u0002\u0002\u0002\u0946\u0949\u0003\u0002\u0002\u0002\u0947",
+ "\u094a\u0005t;\u0002\u0948\u094a\u0005v<\u0002\u0949\u0947\u0003\u0002",
+ "\u0002\u0002\u0949\u0948\u0003\u0002\u0002\u0002\u094a\u094c\u0003\u0002",
+ "\u0002\u0002\u094b\u094d\u0005z>\u0002\u094c\u094b\u0003\u0002\u0002",
+ "\u0002\u094c\u094d\u0003\u0002\u0002\u0002\u094d\u0959\u0003\u0002\u0002",
+ "\u0002\u094e\u094f\u0007\u08b1\u0002\u0002\u094f\u0954\u0005\u008cG",
+ "\u0002\u0950\u0951\u0007\u08b7\u0002\u0002\u0951\u0953\u0005\u008cG",
+ "\u0002\u0952\u0950\u0003\u0002\u0002\u0002\u0953\u0956\u0003\u0002\u0002",
+ "\u0002\u0954\u0952\u0003\u0002\u0002\u0002\u0954\u0955\u0003\u0002\u0002",
+ "\u0002\u0955\u0957\u0003\u0002\u0002\u0002\u0956\u0954\u0003\u0002\u0002",
+ "\u0002\u0957\u0958\u0007\u08b2\u0002\u0002\u0958\u095a\u0003\u0002\u0002",
+ "\u0002\u0959\u094e\u0003\u0002\u0002\u0002\u0959\u095a\u0003\u0002\u0002",
+ "\u0002\u095a\u095e\u0003\u0002\u0002\u0002\u095b\u095d\u0005\u008aF",
+ "\u0002\u095c\u095b\u0003\u0002\u0002\u0002\u095d\u0960\u0003\u0002\u0002",
+ "\u0002\u095e\u095c\u0003\u0002\u0002\u0002\u095e\u095f\u0003\u0002\u0002",
+ "\u0002\u095fs\u0003\u0002\u0002\u0002\u0960\u095e\u0003\u0002\u0002",
+ "\u0002\u0961\u0965\t\u0002\u0002\u0002\u0962\u0966\u0007\u0455\u0002",
+ "\u0002\u0963\u0966\u0005\u03b6\u01dc\u0002\u0964\u0966\u0005x=\u0002",
+ "\u0965\u0962\u0003\u0002\u0002\u0002\u0965\u0963\u0003\u0002\u0002\u0002",
+ "\u0965\u0964\u0003\u0002\u0002\u0002\u0966u\u0003\u0002\u0002\u0002",
+ "\u0967\u0968\u0007\u07cf\u0002\u0002\u0968\u0969\u0005\u05b4\u02db\u0002",
+ "\u0969w\u0003\u0002\u0002\u0002\u096a\u096b\u0007\u077a\u0002\u0002",
+ "\u096b\u096c\u0007\u045d\u0002\u0002\u096c\u096f\u0005\u05b4\u02db\u0002",
+ "\u096d\u096e\u0007\u0433\u0002\u0002\u096e\u0970\u0007\u044b\u0002\u0002",
+ "\u096f\u096d\u0003\u0002\u0002\u0002\u096f\u0970\u0003\u0002\u0002\u0002",
+ "\u0970y\u0003\u0002\u0002\u0002\u0971\u0972\u0007\u01ef\u0002\u0002",
+ "\u0972\u0973\u0007\u0371\u0002\u0002\u0973\u0974\u0005\u04d4\u026b\u0002",
+ "\u0974\u0975\u0007\u02db\u0002\u0002\u0975\u0976\u0007\u02be\u0002\u0002",
+ "\u0976\u0977\u0007\u0811\u0002\u0002\u0977\u0978\t\u000f\u0002\u0002",
+ "\u0978{\u0003\u0002\u0002\u0002\u0979\u097a\u0007\u0087\u0002\u0002",
+ "\u097a\u097b\u0005\u057a\u02be\u0002\u097b\u097d\t\u0002\u0002\u0002",
+ "\u097c\u097e\u0005~@\u0002\u097d\u097c\u0003\u0002\u0002\u0002\u097e",
+ "\u097f\u0003\u0002\u0002\u0002\u097f\u097d\u0003\u0002\u0002\u0002\u097f",
+ "\u0980\u0003\u0002\u0002\u0002\u0980\u0981\u0003\u0002\u0002\u0002\u0981",
+ "\u0982\u0007\u01bf\u0002\u0002\u0982}\u0003\u0002\u0002\u0002\u0983",
+ "\u0987\u0005\u0080A\u0002\u0984\u0987\u0005\u0082B\u0002\u0985\u0987",
+ "\u0005\u0096L\u0002\u0986\u0983\u0003\u0002\u0002\u0002\u0986\u0984",
+ "\u0003\u0002\u0002\u0002\u0986\u0985\u0003\u0002\u0002\u0002\u0987\u007f",
+ "\u0003\u0002\u0002\u0002\u0988\u0989\t\u0010\u0002\u0002\u0989\u098a",
+ "\u0007\u033c\u0002\u0002\u098a\u098b\u0005\u0086D\u0002\u098b\u0081",
+ "\u0003\u0002\u0002\u0002\u098c\u0990\t\u0011\u0002\u0002\u098d\u0991",
+ "\u0005\u0084C\u0002\u098e\u0991\u0005\u0086D\u0002\u098f\u0991\u0005",
+ "\u0088E\u0002\u0990\u098d\u0003\u0002\u0002\u0002\u0990\u098e\u0003",
+ "\u0002\u0002\u0002\u0990\u098f\u0003\u0002\u0002\u0002\u0991\u0083\u0003",
+ "\u0002\u0002\u0002\u0992\u0993\u0007\u0524\u0002\u0002\u0993\u0994\u0005",
+ "\u0582\u02c2\u0002\u0994\u0995\u0007\u08b1\u0002\u0002\u0995\u099a\u0005",
+ "\u00a6T\u0002\u0996\u0997\u0007\u08b7\u0002\u0002\u0997\u0999\u0005",
+ "\u00a6T\u0002\u0998\u0996\u0003\u0002\u0002\u0002\u0999\u099c\u0003",
+ "\u0002\u0002\u0002\u099a\u0998\u0003\u0002\u0002\u0002\u099a\u099b\u0003",
+ "\u0002\u0002\u0002\u099b\u099d\u0003\u0002\u0002\u0002\u099c\u099a\u0003",
+ "\u0002\u0002\u0002\u099d\u099e\u0007\u08b2\u0002\u0002\u099e\u09a9\t",
+ "\u0002\u0002\u0002\u099f\u09aa\u0005\u038c\u01c7\u0002\u09a0\u09a2\u0007",
+ "\u015a\u0002\u0002\u09a1\u09a0\u0003\u0002\u0002\u0002\u09a1\u09a2\u0003",
+ "\u0002\u0002\u0002\u09a2\u09a4\u0003\u0002\u0002\u0002\u09a3\u09a5\u0005",
+ "\u039a\u01ce\u0002\u09a4\u09a3\u0003\u0002\u0002\u0002\u09a4\u09a5\u0003",
+ "\u0002\u0002\u0002\u09a5\u09a6\u0003\u0002\u0002\u0002\u09a6\u09a7\u0005",
+ "\u03e8\u01f5\u0002\u09a7\u09a8\u0007\u08c3\u0002\u0002\u09a8\u09aa\u0003",
+ "\u0002\u0002\u0002\u09a9\u099f\u0003\u0002\u0002\u0002\u09a9\u09a1\u0003",
+ "\u0002\u0002\u0002\u09aa\u0085\u0003\u0002\u0002\u0002\u09ab\u09ac\u0007",
+ "\u0230\u0002\u0002\u09ac\u09b8\u0005\u0580\u02c1\u0002\u09ad\u09ae\u0007",
+ "\u08b1\u0002\u0002\u09ae\u09b3\u0005\u00a6T\u0002\u09af\u09b0\u0007",
+ "\u08b7\u0002\u0002\u09b0\u09b2\u0005\u00a6T\u0002\u09b1\u09af\u0003",
+ "\u0002\u0002\u0002\u09b2\u09b5\u0003\u0002\u0002\u0002\u09b3\u09b1\u0003",
+ "\u0002\u0002\u0002\u09b3\u09b4\u0003\u0002\u0002\u0002\u09b4\u09b6\u0003",
+ "\u0002\u0002\u0002\u09b5\u09b3\u0003\u0002\u0002\u0002\u09b6\u09b7\u0007",
+ "\u08b2\u0002\u0002\u09b7\u09b9\u0003\u0002\u0002\u0002\u09b8\u09ad\u0003",
+ "\u0002\u0002\u0002\u09b8\u09b9\u0003\u0002\u0002\u0002\u09b9\u09ba\u0003",
+ "\u0002\u0002\u0002\u09ba\u09bb\u0007\u0599\u0002\u0002\u09bb\u09bc\u0005",
+ "\u05b4\u02db\u0002\u09bc\u09c7\t\u0002\u0002\u0002\u09bd\u09c8\u0005",
+ "\u038c\u01c7\u0002\u09be\u09c0\u0007\u015a\u0002\u0002\u09bf\u09be\u0003",
+ "\u0002\u0002\u0002\u09bf\u09c0\u0003\u0002\u0002\u0002\u09c0\u09c2\u0003",
+ "\u0002\u0002\u0002\u09c1\u09c3\u0005\u039a\u01ce\u0002\u09c2\u09c1\u0003",
+ "\u0002\u0002\u0002\u09c2\u09c3\u0003\u0002\u0002\u0002\u09c3\u09c4\u0003",
+ "\u0002\u0002\u0002\u09c4\u09c5\u0005\u03e8\u01f5\u0002\u09c5\u09c6\u0007",
+ "\u08c3\u0002\u0002\u09c6\u09c8\u0003\u0002\u0002\u0002\u09c7\u09bd\u0003",
+ "\u0002\u0002\u0002\u09c7\u09bf\u0003\u0002\u0002\u0002\u09c8\u0087\u0003",
+ "\u0002\u0002\u0002\u09c9\u09cb\u0007\u020d\u0002\u0002\u09ca\u09c9\u0003",
+ "\u0002\u0002\u0002\u09ca\u09cb\u0003\u0002\u0002\u0002\u09cb\u09cd\u0003",
+ "\u0002\u0002\u0002\u09cc\u09ce\u0007\u02a4\u0002\u0002\u09cd\u09cc\u0003",
+ "\u0002\u0002\u0002\u09cd\u09ce\u0003\u0002\u0002\u0002\u09ce\u09cf\u0003",
+ "\u0002\u0002\u0002\u09cf\u09d0\u0007\u0105\u0002\u0002\u09d0\u09d1\u0007",
+ "\u0230\u0002\u0002\u09d1\u09e3\u0005\u05b4\u02db\u0002\u09d2\u09d3\u0007",
+ "\u08b1\u0002\u0002\u09d3\u09d4\u0007\u05d5\u0002\u0002\u09d4\u09d5\u0007",
+ "\u028e\u0002\u0002\u09d5\u09d6\u0007\u04a0\u0002\u0002\u09d6\u09d7\u0005",
+ "\u05b4\u02db\u0002\u09d7\u09d8\u0007\u08b7\u0002\u0002\u09d8\u09d9\u0003",
+ "\u0002\u0002\u0002\u09d9\u09de\u0005\u00a6T\u0002\u09da\u09db\u0007",
+ "\u08b7\u0002\u0002\u09db\u09dd\u0005\u00a6T\u0002\u09dc\u09da\u0003",
+ "\u0002\u0002\u0002\u09dd\u09e0\u0003\u0002\u0002\u0002\u09de\u09dc\u0003",
+ "\u0002\u0002\u0002\u09de\u09df\u0003\u0002\u0002\u0002\u09df\u09e1\u0003",
+ "\u0002\u0002\u0002\u09e0\u09de\u0003\u0002\u0002\u0002\u09e1\u09e2\u0007",
+ "\u08b2\u0002\u0002\u09e2\u09e4\u0003\u0002\u0002\u0002\u09e3\u09d2\u0003",
+ "\u0002\u0002\u0002\u09e3\u09e4\u0003\u0002\u0002\u0002\u09e4\u09e5\u0003",
+ "\u0002\u0002\u0002\u09e5\u09e6\u0007\u0599\u0002\u0002\u09e6\u09e7\u0007",
+ "\u05d5\u0002\u0002\u09e7\u09e8\u0007?\u0002\u0002\u09e8\u09e9\u0007",
+ "\u0593\u0002\u0002\u09e9\u09f4\t\u0002\u0002\u0002\u09ea\u09f5\u0005",
+ "\u038c\u01c7\u0002\u09eb\u09ed\u0007\u015a\u0002\u0002\u09ec\u09eb\u0003",
+ "\u0002\u0002\u0002\u09ec\u09ed\u0003\u0002\u0002\u0002\u09ed\u09ef\u0003",
+ "\u0002\u0002\u0002\u09ee\u09f0\u0005\u039a\u01ce\u0002\u09ef\u09ee\u0003",
+ "\u0002\u0002\u0002\u09ef\u09f0\u0003\u0002\u0002\u0002\u09f0\u09f1\u0003",
+ "\u0002\u0002\u0002\u09f1\u09f2\u0005\u03e8\u01f5\u0002\u09f2\u09f3\u0007",
+ "\u08c3\u0002\u0002\u09f3\u09f5\u0003\u0002\u0002\u0002\u09f4\u09ea\u0003",
+ "\u0002\u0002\u0002\u09f4\u09ec\u0003\u0002\u0002\u0002\u09f5\u0089\u0003",
+ "\u0002\u0002\u0002\u09f6\u09f8\u0007\u0433\u0002\u0002\u09f7\u09f6\u0003",
+ "\u0002\u0002\u0002\u09f7\u09f8\u0003\u0002\u0002\u0002\u09f8\u09f9\u0003",
+ "\u0002\u0002\u0002\u09f9\u09fa\t\u0012\u0002\u0002\u09fa\u008b\u0003",
+ "\u0002\u0002\u0002\u09fb\u09fc\u0005\u05d0\u02e9\u0002\u09fc\u09fe\u0005",
+ "\u05b4\u02db\u0002\u09fd\u09ff\u0005\u008eH\u0002\u09fe\u09fd\u0003",
+ "\u0002\u0002\u0002\u09fe\u09ff\u0003\u0002\u0002\u0002\u09ff\u0a02\u0003",
+ "\u0002\u0002\u0002\u0a00\u0a02\u0005\u0090I\u0002\u0a01\u09fb\u0003",
+ "\u0002\u0002\u0002\u0a01\u0a00\u0003\u0002\u0002\u0002\u0a02\u008d\u0003",
+ "\u0002\u0002\u0002\u0a03\u0a04\u0007\u01ef\u0002\u0002\u0a04\u0a05\u0007",
+ "\u0371\u0002\u0002\u0a05\u0a06\u0005\u04d4\u026b\u0002\u0a06\u008f\u0003",
+ "\u0002\u0002\u0002\u0a07\u0a09\u0005\u008aF\u0002\u0a08\u0a07\u0003",
+ "\u0002\u0002\u0002\u0a08\u0a09\u0003\u0002\u0002\u0002\u0a09\u0a0b\u0003",
+ "\u0002\u0002\u0002\u0a0a\u0a0c\u0005\u0092J\u0002\u0a0b\u0a0a\u0003",
+ "\u0002\u0002\u0002\u0a0c\u0a0d\u0003\u0002\u0002\u0002\u0a0d\u0a0b\u0003",
+ "\u0002\u0002\u0002\u0a0d\u0a0e\u0003\u0002\u0002\u0002\u0a0e\u0a11\u0003",
+ "\u0002\u0002\u0002\u0a0f\u0a10\u0007\u08b7\u0002\u0002\u0a10\u0a12\u0005",
+ "\u00a2R\u0002\u0a11\u0a0f\u0003\u0002\u0002\u0002\u0a11\u0a12\u0003",
+ "\u0002\u0002\u0002\u0a12\u0091\u0003\u0002\u0002\u0002\u0a13\u0a17\u0005",
+ "\u0094K\u0002\u0a14\u0a17\u0005\u009eP\u0002\u0a15\u0a17\u0005\u00a0",
+ "Q\u0002\u0a16\u0a13\u0003\u0002\u0002\u0002\u0a16\u0a14\u0003\u0002",
+ "\u0002\u0002\u0a16\u0a15\u0003\u0002\u0002\u0002\u0a17\u0093\u0003\u0002",
+ "\u0002\u0002\u0a18\u0a1b\t\u0011\u0002\u0002\u0a19\u0a1c\u0005\u009a",
+ "N\u0002\u0a1a\u0a1c\u0005\u009cO\u0002\u0a1b\u0a19\u0003\u0002\u0002",
+ "\u0002\u0a1b\u0a1a\u0003\u0002\u0002\u0002\u0a1c\u0095\u0003\u0002\u0002",
+ "\u0002\u0a1d\u0a1e\u0007\u04a5\u0002\u0002\u0a1e\u0a1f\u0007\u033c\u0002",
+ "\u0002\u0a1f\u0a20\u0005\u0098M\u0002\u0a20\u0097\u0003\u0002\u0002",
+ "\u0002\u0a21\u0a22\u0007\u0230\u0002\u0002\u0a22\u0a2e\u0005\u0580\u02c1",
+ "\u0002\u0a23\u0a24\u0007\u08b1\u0002\u0002\u0a24\u0a29\u0005\u00a6T",
+ "\u0002\u0a25\u0a26\u0007\u08b7\u0002\u0002\u0a26\u0a28\u0005\u00a6T",
+ "\u0002\u0a27\u0a25\u0003\u0002\u0002\u0002\u0a28\u0a2b\u0003\u0002\u0002",
+ "\u0002\u0a29\u0a27\u0003\u0002\u0002\u0002\u0a29\u0a2a\u0003\u0002\u0002",
+ "\u0002\u0a2a\u0a2c\u0003\u0002\u0002\u0002\u0a2b\u0a29\u0003\u0002\u0002",
+ "\u0002\u0a2c\u0a2d\u0007\u08b2\u0002\u0002\u0a2d\u0a2f\u0003\u0002\u0002",
+ "\u0002\u0a2e\u0a23\u0003\u0002\u0002\u0002\u0a2e\u0a2f\u0003\u0002\u0002",
+ "\u0002\u0a2f\u0a30\u0003\u0002\u0002\u0002\u0a30\u0a35\u0007\u0599\u0002",
+ "\u0002\u0a31\u0a36\u0005\u05b4\u02db\u0002\u0a32\u0a33\u0007\u05d5\u0002",
+ "\u0002\u0a33\u0a34\u0007?\u0002\u0002\u0a34\u0a36\u0007\u0593\u0002",
+ "\u0002\u0a35\u0a31\u0003\u0002\u0002\u0002\u0a35\u0a32\u0003\u0002\u0002",
+ "\u0002\u0a36\u0a42\u0003\u0002\u0002\u0002\u0a37\u0a39\u0007\u04e4\u0002",
+ "\u0002\u0a38\u0a37\u0003\u0002\u0002\u0002\u0a38\u0a39\u0003\u0002\u0002",
+ "\u0002\u0a39\u0a3a\u0003\u0002\u0002\u0002\u0a3a\u0a3c\t\u0002\u0002",
+ "\u0002\u0a3b\u0a3d\u0007\u015a\u0002\u0002\u0a3c\u0a3b\u0003\u0002\u0002",
+ "\u0002\u0a3c\u0a3d\u0003\u0002\u0002\u0002\u0a3d\u0a3f\u0003\u0002\u0002",
+ "\u0002\u0a3e\u0a40\u0005\u039a\u01ce\u0002\u0a3f\u0a3e\u0003\u0002\u0002",
+ "\u0002\u0a3f\u0a40\u0003\u0002\u0002\u0002\u0a40\u0a41\u0003\u0002\u0002",
+ "\u0002\u0a41\u0a43\u0005\u03e8\u01f5\u0002\u0a42\u0a38\u0003\u0002\u0002",
+ "\u0002\u0a42\u0a43\u0003\u0002\u0002\u0002\u0a43\u0a45\u0003\u0002\u0002",
+ "\u0002\u0a44\u0a46\u0007\u08c3\u0002\u0002\u0a45\u0a44\u0003\u0002\u0002",
+ "\u0002\u0a45\u0a46\u0003\u0002\u0002\u0002\u0a46\u0099\u0003\u0002\u0002",
+ "\u0002\u0a47\u0a48\u0007\u0524\u0002\u0002\u0a48\u0a49\u0005\u0582\u02c2",
+ "\u0002\u0a49\u0a4a\u0007\u08b1\u0002\u0002\u0a4a\u0a4f\u0005\u00a6T",
+ "\u0002\u0a4b\u0a4c\u0007\u08b7\u0002\u0002\u0a4c\u0a4e\u0005\u00a6T",
+ "\u0002\u0a4d\u0a4b\u0003\u0002\u0002\u0002\u0a4e\u0a51\u0003\u0002\u0002",
+ "\u0002\u0a4f\u0a4d\u0003\u0002\u0002\u0002\u0a4f\u0a50\u0003\u0002\u0002",
+ "\u0002\u0a50\u0a52\u0003\u0002\u0002\u0002\u0a51\u0a4f\u0003\u0002\u0002",
+ "\u0002\u0a52\u0a55\u0007\u08b2\u0002\u0002\u0a53\u0a54\t\u0002\u0002",
+ "\u0002\u0a54\u0a56\u0005\u038c\u01c7\u0002\u0a55\u0a53\u0003\u0002\u0002",
+ "\u0002\u0a55\u0a56\u0003\u0002\u0002\u0002\u0a56\u009b\u0003\u0002\u0002",
+ "\u0002\u0a57\u0a58\u0007\u0230\u0002\u0002\u0a58\u0a64\u0005\u0580\u02c1",
+ "\u0002\u0a59\u0a5a\u0007\u08b1\u0002\u0002\u0a5a\u0a5f\u0005\u00a6T",
+ "\u0002\u0a5b\u0a5c\u0007\u08b7\u0002\u0002\u0a5c\u0a5e\u0005\u00a6T",
+ "\u0002\u0a5d\u0a5b\u0003\u0002\u0002\u0002\u0a5e\u0a61\u0003\u0002\u0002",
+ "\u0002\u0a5f\u0a5d\u0003\u0002\u0002\u0002\u0a5f\u0a60\u0003\u0002\u0002",
+ "\u0002\u0a60\u0a62\u0003\u0002\u0002\u0002\u0a61\u0a5f\u0003\u0002\u0002",
+ "\u0002\u0a62\u0a63\u0007\u08b2\u0002\u0002\u0a63\u0a65\u0003\u0002\u0002",
+ "\u0002\u0a64\u0a59\u0003\u0002\u0002\u0002\u0a64\u0a65\u0003\u0002\u0002",
+ "\u0002\u0a65\u0a66\u0003\u0002\u0002\u0002\u0a66\u0a6b\u0007\u0599\u0002",
+ "\u0002\u0a67\u0a6c\u0005\u05b4\u02db\u0002\u0a68\u0a69\u0007\u05d5\u0002",
+ "\u0002\u0a69\u0a6a\u0007?\u0002\u0002\u0a6a\u0a6c\u0007\u0593\u0002",
+ "\u0002\u0a6b\u0a67\u0003\u0002\u0002\u0002\u0a6b\u0a68\u0003\u0002\u0002",
+ "\u0002\u0a6c\u0a75\u0003\u0002\u0002\u0002\u0a6d\u0a6e\t\u0002\u0002",
+ "\u0002\u0a6e\u0a76\u0005\u038c\u01c7\u0002\u0a6f\u0a71\u0007\u01ef\u0002",
+ "\u0002\u0a70\u0a72\u0007\u081f\u0002\u0002\u0a71\u0a70\u0003\u0002\u0002",
+ "\u0002\u0a71\u0a72\u0003\u0002\u0002\u0002\u0a72\u0a73\u0003\u0002\u0002",
+ "\u0002\u0a73\u0a74\u0007\u0371\u0002\u0002\u0a74\u0a76\u0005\u04d4\u026b",
+ "\u0002\u0a75\u0a6d\u0003\u0002\u0002\u0002\u0a75\u0a6f\u0003\u0002\u0002",
+ "\u0002\u0a75\u0a76\u0003\u0002\u0002\u0002\u0a76\u009d\u0003\u0002\u0002",
+ "\u0002\u0a77\u0a79\u0007\u020d\u0002\u0002\u0a78\u0a77\u0003\u0002\u0002",
+ "\u0002\u0a78\u0a79\u0003\u0002\u0002\u0002\u0a79\u0a7b\u0003\u0002\u0002",
+ "\u0002\u0a7a\u0a7c\u0007\u02a4\u0002\u0002\u0a7b\u0a7a\u0003\u0002\u0002",
+ "\u0002\u0a7b\u0a7c\u0003\u0002\u0002\u0002\u0a7c\u0a7d\u0003\u0002\u0002",
+ "\u0002\u0a7d\u0a7e\u0007\u0105\u0002\u0002\u0a7e\u0a7f\u0007\u0230\u0002",
+ "\u0002\u0a7f\u0a91\u0005\u05b4\u02db\u0002\u0a80\u0a81\u0007\u08b1\u0002",
+ "\u0002\u0a81\u0a82\u0007\u05d5\u0002\u0002\u0a82\u0a83\u0007\u028e\u0002",
+ "\u0002\u0a83\u0a84\u0007\u04a0\u0002\u0002\u0a84\u0a85\u0005\u05b4\u02db",
+ "\u0002\u0a85\u0a86\u0007\u08b7\u0002\u0002\u0a86\u0a87\u0003\u0002\u0002",
+ "\u0002\u0a87\u0a8c\u0005\u00a6T\u0002\u0a88\u0a89\u0007\u08b7\u0002",
+ "\u0002\u0a89\u0a8b\u0005\u00a6T\u0002\u0a8a\u0a88\u0003\u0002\u0002",
+ "\u0002\u0a8b\u0a8e\u0003\u0002\u0002\u0002\u0a8c\u0a8a\u0003\u0002\u0002",
+ "\u0002\u0a8c\u0a8d\u0003\u0002\u0002\u0002\u0a8d\u0a8f\u0003\u0002\u0002",
+ "\u0002\u0a8e\u0a8c\u0003\u0002\u0002\u0002\u0a8f\u0a90\u0007\u08b2\u0002",
+ "\u0002\u0a90\u0a92\u0003\u0002\u0002\u0002\u0a91\u0a80\u0003\u0002\u0002",
+ "\u0002\u0a91\u0a92\u0003\u0002\u0002\u0002\u0a92\u0a93\u0003\u0002\u0002",
+ "\u0002\u0a93\u0a94\u0007\u0599\u0002\u0002\u0a94\u0a95\u0007\u05d5\u0002",
+ "\u0002\u0a95\u0a96\u0007?\u0002\u0002\u0a96\u0a99\u0007\u0593\u0002",
+ "\u0002\u0a97\u0a98\t\u0002\u0002\u0002\u0a98\u0a9a\u0005\u038c\u01c7",
+ "\u0002\u0a99\u0a97\u0003\u0002\u0002\u0002\u0a99\u0a9a\u0003\u0002\u0002",
+ "\u0002\u0a9a\u009f\u0003\u0002\u0002\u0002\u0a9b\u0a9c\t\u0010\u0002",
+ "\u0002\u0a9c\u0a9d\u0007\u033c\u0002\u0002\u0a9d\u0a9e\u0005\u009cO",
+ "\u0002\u0a9e\u00a1\u0003\u0002\u0002\u0002\u0a9f\u0aa0\u0007\u0509\u0002",
+ "\u0002\u0aa0\u0aa1\u0007\u0590\u0002\u0002\u0aa1\u0aa2\u0007\u08b1\u0002",
+ "\u0002\u0aa2\u0aa7\u0005\u00a4S\u0002\u0aa3\u0aa4\u0007\u08b7\u0002",
+ "\u0002\u0aa4\u0aa6\u0005\u00a4S\u0002\u0aa5\u0aa3\u0003\u0002\u0002",
+ "\u0002\u0aa6\u0aa9\u0003\u0002\u0002\u0002\u0aa7\u0aa5\u0003\u0002\u0002",
+ "\u0002\u0aa7\u0aa8\u0003\u0002\u0002\u0002\u0aa8\u0aaa\u0003\u0002\u0002",
+ "\u0002\u0aa9\u0aa7\u0003\u0002\u0002\u0002\u0aaa\u0aab\u0007\u08b2\u0002",
+ "\u0002\u0aab\u00a3\u0003\u0002\u0002\u0002\u0aac\u0aaf\u0005\u05d0\u02e9",
+ "\u0002\u0aad\u0aaf\u0007\u0161\u0002\u0002\u0aae\u0aac\u0003\u0002\u0002",
+ "\u0002\u0aae\u0aad\u0003\u0002\u0002\u0002\u0aaf\u00a5\u0003\u0002\u0002",
+ "\u0002\u0ab0\u0ab1\u0005\u0566\u02b4\u0002\u0ab1\u0ab2\u0005\u05b4\u02db",
+ "\u0002\u0ab2\u00a7\u0003\u0002\u0002\u0002\u0ab3\u0ab4\u0007\u019d\u0002",
+ "\u0002\u0ab4\u0ab5\u0007\u05da\u0002\u0002\u0ab5\u0ab6\u0005\u057c\u02bf",
+ "\u0002\u0ab6\u0ab7\u0007\u08c3\u0002\u0002\u0ab7\u00a9\u0003\u0002\u0002",
+ "\u0002\u0ab8\u0ab9\u0007)\u0002\u0002\u0ab9\u0aba\u0007\u05da\u0002",
+ "\u0002\u0aba\u0abc\u0005\u057c\u02bf\u0002\u0abb\u0abd\u0005\u00b2Z",
+ "\u0002\u0abc\u0abb\u0003\u0002\u0002\u0002\u0abd\u0abe\u0003\u0002\u0002",
+ "\u0002\u0abe\u0abc\u0003\u0002\u0002\u0002\u0abe\u0abf\u0003\u0002\u0002",
+ "\u0002\u0abf\u0ac0\u0003\u0002\u0002\u0002\u0ac0\u0ac1\u0007\u08c3\u0002",
+ "\u0002\u0ac1\u00ab\u0003\u0002\u0002\u0002\u0ac2\u0ac3\u0007)\u0002",
+ "\u0002\u0ac3\u0ae1\u0007\u05e4\u0002\u0002\u0ac4\u0ac5\u0007\u001d\u0002",
+ "\u0002\u0ac5\u0ae2\t\u0013\u0002\u0002\u0ac6\u0ac7\u0007\u00c5\u0002",
+ "\u0002\u0ac7\u0ac8\u0007\u013e\u0002\u0002\u0ac8\u0ac9\u0007\u02fa\u0002",
+ "\u0002\u0ac9\u0ae2\u0005\u0566\u02b4\u0002\u0aca\u0acb\u0005\u028a\u0146",
+ "\u0002\u0acb\u0acc\u0007\u00dc\u0002\u0002\u0acc\u0acd\u0007\u028e\u0002",
+ "\u0002\u0acd\u0ace\u0007\u0524\u0002\u0002\u0ace\u0ae2\u0003\u0002\u0002",
+ "\u0002\u0acf\u0ad0\u0005\u028a\u0146\u0002\u0ad0\u0ad1\u0007\u0246\u0002",
+ "\u0002\u0ad1\u0ae2\u0003\u0002\u0002\u0002\u0ad2\u0ad5\u0005\u028a\u0146",
+ "\u0002\u0ad3\u0ad5\u0007\u0220\u0002\u0002\u0ad4\u0ad2\u0003\u0002\u0002",
+ "\u0002\u0ad4\u0ad3\u0003\u0002\u0002\u0002\u0ad5\u0ad6\u0003\u0002\u0002",
+ "\u0002\u0ad6\u0ad7\u0007\u04ad\u0002\u0002\u0ad7\u0add\t\u0014\u0002",
+ "\u0002\u0ad8\u0adb\u0007\u04ad\u0002\u0002\u0ad9\u0adc\u0005\u050c\u0287",
+ "\u0002\u0ada\u0adc\u0005\u0566\u02b4\u0002\u0adb\u0ad9\u0003\u0002\u0002",
+ "\u0002\u0adb\u0ada\u0003\u0002\u0002\u0002\u0adc\u0ade\u0003\u0002\u0002",
+ "\u0002\u0add\u0ad8\u0003\u0002\u0002\u0002\u0add\u0ade\u0003\u0002\u0002",
+ "\u0002\u0ade\u0ae2\u0003\u0002\u0002\u0002\u0adf\u0ae0\u0007\u05e8\u0002",
+ "\u0002\u0ae0\u0ae2\u0005\u00aeX\u0002\u0ae1\u0ac4\u0003\u0002\u0002",
+ "\u0002\u0ae1\u0ac6\u0003\u0002\u0002\u0002\u0ae1\u0aca\u0003\u0002\u0002",
+ "\u0002\u0ae1\u0acf\u0003\u0002\u0002\u0002\u0ae1\u0ad4\u0003\u0002\u0002",
+ "\u0002\u0ae1\u0adf\u0003\u0002\u0002\u0002\u0ae2\u00ad\u0003\u0002\u0002",
+ "\u0002\u0ae3\u0ae4\u0005\u0566\u02b4\u0002\u0ae4\u0ae5\u0007\u08c5\u0002",
+ "\u0002\u0ae5\u0ae6\u0005\u0192\u00ca\u0002\u0ae6\u00af\u0003\u0002\u0002",
+ "\u0002\u0ae7\u0ae8\u0007\u0122\u0002\u0002\u0ae8\u0ae9\u0007\u05da\u0002",
+ "\u0002\u0ae9\u0aee\u0005\u057c\u02bf\u0002\u0aea\u0aed\u0005\u00b4[",
+ "\u0002\u0aeb\u0aed\u0005\u00b2Z\u0002\u0aec\u0aea\u0003\u0002\u0002",
+ "\u0002\u0aec\u0aeb\u0003\u0002\u0002\u0002\u0aed\u0af0\u0003\u0002\u0002",
+ "\u0002\u0aee\u0aec\u0003\u0002\u0002\u0002\u0aee\u0aef\u0003\u0002\u0002",
+ "\u0002\u0aef\u0af1\u0003\u0002\u0002\u0002\u0af0\u0aee\u0003\u0002\u0002",
+ "\u0002\u0af1\u0af2\u0007\u08c3\u0002\u0002\u0af2\u00b1\u0003\u0002\u0002",
+ "\u0002\u0af3\u0af4\u0007\u026f\u0002\u0002\u0af4\u0af5\u0007\u0094\u0002",
+ "\u0002\u0af5\u0b04\u0007\u08ab\u0002\u0002\u0af6\u0af7\u0007\u0338\u0002",
+ "\u0002\u0af7\u0b04\u0007\u08ab\u0002\u0002\u0af8\u0b04\u0007\u03e5\u0002",
+ "\u0002\u0af9\u0afa\u0007\u034f\u0002\u0002\u0afa\u0b04\u0007\u08ab\u0002",
+ "\u0002\u0afb\u0b04\u0007\u03e8\u0002\u0002\u0afc\u0b04\u0007\u013c\u0002",
+ "\u0002\u0afd\u0b04\u0007\u03c5\u0002\u0002\u0afe\u0aff\u0007\u0098\u0002",
+ "\u0002\u0aff\u0b04\u0007\u08ab\u0002\u0002\u0b00\u0b04\u0007\u03b4\u0002",
+ "\u0002\u0b01\u0b04\u0007\u0492\u0002\u0002\u0b02\u0b04\u0007\u03f7\u0002",
+ "\u0002\u0b03\u0af3\u0003\u0002\u0002\u0002\u0b03\u0af6\u0003\u0002\u0002",
+ "\u0002\u0b03\u0af8\u0003\u0002\u0002\u0002\u0b03\u0af9\u0003\u0002\u0002",
+ "\u0002\u0b03\u0afb\u0003\u0002\u0002\u0002\u0b03\u0afc\u0003\u0002\u0002",
+ "\u0002\u0b03\u0afd\u0003\u0002\u0002\u0002\u0b03\u0afe\u0003\u0002\u0002",
+ "\u0002\u0b03\u0b00\u0003\u0002\u0002\u0002\u0b03\u0b01\u0003\u0002\u0002",
+ "\u0002\u0b03\u0b02\u0003\u0002\u0002\u0002\u0b04\u00b3\u0003\u0002\u0002",
+ "\u0002\u0b05\u0b06\u0007\u0623\u0002\u0002\u0b06\u0b07\u0007\u084b\u0002",
+ "\u0002\u0b07\u0b08\u0007\u08ab\u0002\u0002\u0b08\u00b5\u0003\u0002\u0002",
+ "\u0002\u0b09\u0b0b\u0007\u0122\u0002\u0002\u0b0a\u0b0c\t\u0015\u0002",
+ "\u0002\u0b0b\u0b0a\u0003\u0002\u0002\u0002\u0b0b\u0b0c\u0003\u0002\u0002",
+ "\u0002\u0b0c\u0b0d\u0003\u0002\u0002\u0002\u0b0d\u0b0e\u0007\u0279\u0002",
+ "\u0002\u0b0e\u0b0f\u0005\u0588\u02c5\u0002\u0b0f\u0b13\u0007\u046a\u0002",
+ "\u0002\u0b10\u0b14\u0005\u00b8]\u0002\u0b11\u0b14\u0005\u00bc_\u0002",
+ "\u0b12\u0b14\u0005\u00be`\u0002\u0b13\u0b10\u0003\u0002\u0002\u0002",
+ "\u0b13\u0b11\u0003\u0002\u0002\u0002\u0b13\u0b12\u0003\u0002\u0002\u0002",
+ "\u0b14\u0b16\u0003\u0002\u0002\u0002\u0b15\u0b17\u0007\u07e7\u0002\u0002",
+ "\u0b16\u0b15\u0003\u0002\u0002\u0002\u0b16\u0b17\u0003\u0002\u0002\u0002",
+ "\u0b17\u0b18\u0003\u0002\u0002\u0002\u0b18\u0b19\u0007\u08c3\u0002\u0002",
+ "\u0b19\u00b7\u0003\u0002\u0002\u0002\u0b1a\u0b1b\u0007\u00c7\u0002\u0002",
+ "\u0b1b\u0b1d\u0005\u00ba^\u0002\u0b1c\u0b1e\u0005\u0302\u0182\u0002",
+ "\u0b1d\u0b1c\u0003\u0002\u0002\u0002\u0b1d\u0b1e\u0003\u0002\u0002\u0002",
+ "\u0b1e\u00b9\u0003\u0002\u0002\u0002\u0b1f\u0b20\u0005\u05d2\u02ea\u0002",
+ "\u0b20\u0b21\u0007\u08aa\u0002\u0002\u0b21\u0b23\u0003\u0002\u0002\u0002",
+ "\u0b22\u0b1f\u0003\u0002\u0002\u0002\u0b22\u0b23\u0003\u0002\u0002\u0002",
+ "\u0b23\u0b24\u0003\u0002\u0002\u0002\u0b24\u0b25\u0005\u05d2\u02ea\u0002",
+ "\u0b25\u00bb\u0003\u0002\u0002\u0002\u0b26\u0b28\u0005\u0594\u02cb\u0002",
+ "\u0b27\u0b29\u0005\u054c\u02a7\u0002\u0b28\u0b27\u0003\u0002\u0002\u0002",
+ "\u0b28\u0b29\u0003\u0002\u0002\u0002\u0b29\u0b2a\u0003\u0002\u0002\u0002",
+ "\u0b2a\u0b2b\u0007\u08b1\u0002\u0002\u0b2b\u0b2d\u0005\u00c0a\u0002",
+ "\u0b2c\u0b2e\t\u0016\u0002\u0002\u0b2d\u0b2c\u0003\u0002\u0002\u0002",
+ "\u0b2d\u0b2e\u0003\u0002\u0002\u0002\u0b2e\u0b36\u0003\u0002\u0002\u0002",
+ "\u0b2f\u0b30\u0007\u08b7\u0002\u0002\u0b30\u0b32\u0005\u00c0a\u0002",
+ "\u0b31\u0b33\t\u0016\u0002\u0002\u0b32\u0b31\u0003\u0002\u0002\u0002",
+ "\u0b32\u0b33\u0003\u0002\u0002\u0002\u0b33\u0b35\u0003\u0002\u0002\u0002",
+ "\u0b34\u0b2f\u0003\u0002\u0002\u0002\u0b35\u0b38\u0003\u0002\u0002\u0002",
+ "\u0b36\u0b34\u0003\u0002\u0002\u0002\u0b36\u0b37\u0003\u0002\u0002\u0002",
+ "\u0b37\u0b39\u0003\u0002\u0002\u0002\u0b38\u0b36\u0003\u0002\u0002\u0002",
+ "\u0b39\u0b3b\u0007\u08b2\u0002\u0002\u0b3a\u0b3c\u0005\u00c2b\u0002",
+ "\u0b3b\u0b3a\u0003\u0002\u0002\u0002\u0b3b\u0b3c\u0003\u0002\u0002\u0002",
+ "\u0b3c\u00bd\u0003\u0002\u0002\u0002\u0b3d\u0b3e\u0005\u0594\u02cb\u0002",
+ "\u0b3e\u0b41\u0007\u08b1\u0002\u0002\u0b3f\u0b42\u0005\u0594\u02cb\u0002",
+ "\u0b40\u0b42\u0005\u054c\u02a7\u0002\u0b41\u0b3f\u0003\u0002\u0002\u0002",
+ "\u0b41\u0b40\u0003\u0002\u0002\u0002\u0b41\u0b42\u0003\u0002\u0002\u0002",
+ "\u0b42\u0b43\u0003\u0002\u0002\u0002\u0b43\u0b45\u0005\u0592\u02ca\u0002",
+ "\u0b44\u0b46\t\u0016\u0002\u0002\u0b45\u0b44\u0003\u0002\u0002\u0002",
+ "\u0b45\u0b46\u0003\u0002\u0002\u0002\u0b46\u0b52\u0003\u0002\u0002\u0002",
+ "\u0b47\u0b4a\u0007\u08b7\u0002\u0002\u0b48\u0b4b\u0005\u0594\u02cb\u0002",
+ "\u0b49\u0b4b\u0005\u054c\u02a7\u0002\u0b4a\u0b48\u0003\u0002\u0002\u0002",
+ "\u0b4a\u0b49\u0003\u0002\u0002\u0002\u0b4a\u0b4b\u0003\u0002\u0002\u0002",
+ "\u0b4b\u0b4c\u0003\u0002\u0002\u0002\u0b4c\u0b4e\u0005\u0592\u02ca\u0002",
+ "\u0b4d\u0b4f\t\u0016\u0002\u0002\u0b4e\u0b4d\u0003\u0002\u0002\u0002",
+ "\u0b4e\u0b4f\u0003\u0002\u0002\u0002\u0b4f\u0b51\u0003\u0002\u0002\u0002",
+ "\u0b50\u0b47\u0003\u0002\u0002\u0002\u0b51\u0b54\u0003\u0002\u0002\u0002",
+ "\u0b52\u0b50\u0003\u0002\u0002\u0002\u0b52\u0b53\u0003\u0002\u0002\u0002",
+ "\u0b53\u0b55\u0003\u0002\u0002\u0002\u0b54\u0b52\u0003\u0002\u0002\u0002",
+ "\u0b55\u0b56\u0007\u08b2\u0002\u0002\u0b56\u0b57\u0007\u022c\u0002\u0002",
+ "\u0b57\u0b58\u0005\u0594\u02cb\u0002\u0b58\u0b5f\u0005\u054c\u02a7\u0002",
+ "\u0b59\u0b5a\u0007\u08b7\u0002\u0002\u0b5a\u0b5b\u0005\u0594\u02cb\u0002",
+ "\u0b5b\u0b5c\u0005\u054c\u02a7\u0002\u0b5c\u0b5e\u0003\u0002\u0002\u0002",
+ "\u0b5d\u0b59\u0003\u0002\u0002\u0002\u0b5e\u0b61\u0003\u0002\u0002\u0002",
+ "\u0b5f\u0b5d\u0003\u0002\u0002\u0002\u0b5f\u0b60\u0003\u0002\u0002\u0002",
+ "\u0b60\u0b62\u0003\u0002\u0002\u0002\u0b61\u0b5f\u0003\u0002\u0002\u0002",
+ "\u0b62\u0b64\u0005\u054e\u02a8\u0002\u0b63\u0b65\u0005\u00d0i\u0002",
+ "\u0b64\u0b63\u0003\u0002\u0002\u0002\u0b64\u0b65\u0003\u0002\u0002\u0002",
+ "\u0b65\u0b67\u0003\u0002\u0002\u0002\u0b66\u0b68\u0005\u0302\u0182\u0002",
+ "\u0b67\u0b66\u0003\u0002\u0002\u0002\u0b67\u0b68\u0003\u0002\u0002\u0002",
+ "\u0b68\u00bf\u0003\u0002\u0002\u0002\u0b69\u0b6c\u0005\u0592\u02ca\u0002",
+ "\u0b6a\u0b6c\u0005\u04d4\u026b\u0002\u0b6b\u0b69\u0003\u0002\u0002\u0002",
+ "\u0b6b\u0b6a\u0003\u0002\u0002\u0002\u0b6c\u00c1\u0003\u0002\u0002\u0002",
+ "\u0b6d\u0b71\u0005\u00ccg\u0002\u0b6e\u0b71\u0005\u00d0i\u0002\u0b6f",
+ "\u0b71\u0005\u0302\u0182\u0002\u0b70\u0b6d\u0003\u0002\u0002\u0002\u0b70",
+ "\u0b6e\u0003\u0002\u0002\u0002\u0b70\u0b6f\u0003\u0002\u0002\u0002\u0b71",
+ "\u0b72\u0003\u0002\u0002\u0002\u0b72\u0b70\u0003\u0002\u0002\u0002\u0b72",
+ "\u0b73\u0003\u0002\u0002\u0002\u0b73\u0b7b\u0003\u0002\u0002\u0002\u0b74",
+ "\u0b75\u0007\u0287\u0002\u0002\u0b75\u0b78\u0007\u02b9\u0002\u0002\u0b76",
+ "\u0b79\u0005\u00c4c\u0002\u0b77\u0b79\u0005\u00c8e\u0002\u0b78\u0b76",
+ "\u0003\u0002\u0002\u0002\u0b78\u0b77\u0003\u0002\u0002\u0002\u0b79\u0b7b",
+ "\u0003\u0002\u0002\u0002\u0b7a\u0b70\u0003\u0002\u0002\u0002\u0b7a\u0b74",
+ "\u0003\u0002\u0002\u0002\u0b7b\u00c3\u0003\u0002\u0002\u0002\u0b7c\u0b7e",
+ "\u0005\u00e6t\u0002\u0b7d\u0b7f\u0005\u00c6d\u0002\u0b7e\u0b7d\u0003",
+ "\u0002\u0002\u0002\u0b7e\u0b7f\u0003\u0002\u0002\u0002\u0b7f\u0b81\u0003",
+ "\u0002\u0002\u0002\u0b80\u0b82\u0005\u01dc\u00ef\u0002\u0b81\u0b80\u0003",
+ "\u0002\u0002\u0002\u0b81\u0b82\u0003\u0002\u0002\u0002\u0b82\u0b88\u0003",
+ "\u0002\u0002\u0002\u0b83\u0b84\u0007\u04af\u0002\u0002\u0b84\u0b85\u0007",
+ "\u08b1\u0002\u0002\u0b85\u0b86\u0005\u00e4s\u0002\u0b86\u0b87\u0007",
+ "\u08b2\u0002\u0002\u0b87\u0b89\u0003\u0002\u0002\u0002\u0b88\u0b83\u0003",
+ "\u0002\u0002\u0002\u0b88\u0b89\u0003\u0002\u0002\u0002\u0b89\u00c5\u0003",
+ "\u0002\u0002\u0002\u0b8a\u0ba6\u0007\u0303\u0002\u0002\u0b8b\u0b8c\u0007",
+ "\u08b1\u0002\u0002\u0b8c\u0b8d\u0007\u04b9\u0002\u0002\u0b8d\u0b93\u0005",
+ "\u0360\u01b1\u0002\u0b8e\u0b8f\u0007\u04af\u0002\u0002\u0b8f\u0b90\u0007",
+ "\u08b1\u0002\u0002\u0b90\u0b91\u0005\u00e4s\u0002\u0b91\u0b92\u0007",
+ "\u08b2\u0002\u0002\u0b92\u0b94\u0003\u0002\u0002\u0002\u0b93\u0b8e\u0003",
+ "\u0002\u0002\u0002\u0b93\u0b94\u0003\u0002\u0002\u0002\u0b94\u0ba1\u0003",
+ "\u0002\u0002\u0002\u0b95\u0b96\u0007\u08b7\u0002\u0002\u0b96\u0b97\u0007",
+ "\u04b9\u0002\u0002\u0b97\u0b9d\u0005\u0360\u01b1\u0002\u0b98\u0b99\u0007",
+ "\u04af\u0002\u0002\u0b99\u0b9a\u0007\u08b1\u0002\u0002\u0b9a\u0b9b\u0005",
+ "\u00e4s\u0002\u0b9b\u0b9c\u0007\u08b2\u0002\u0002\u0b9c\u0b9e\u0003",
+ "\u0002\u0002\u0002\u0b9d\u0b98\u0003\u0002\u0002\u0002\u0b9d\u0b9e\u0003",
+ "\u0002\u0002\u0002\u0b9e\u0ba0\u0003\u0002\u0002\u0002\u0b9f\u0b95\u0003",
+ "\u0002\u0002\u0002\u0ba0\u0ba3\u0003\u0002\u0002\u0002\u0ba1\u0b9f\u0003",
+ "\u0002\u0002\u0002\u0ba1\u0ba2\u0003\u0002\u0002\u0002\u0ba2\u0ba4\u0003",
+ "\u0002\u0002\u0002\u0ba3\u0ba1\u0003\u0002\u0002\u0002\u0ba4\u0ba5\u0007",
+ "\u08b2\u0002\u0002\u0ba5\u0ba7\u0003\u0002\u0002\u0002\u0ba6\u0b8b\u0003",
+ "\u0002\u0002\u0002\u0ba6\u0ba7\u0003\u0002\u0002\u0002\u0ba7\u00c7\u0003",
+ "\u0002\u0002\u0002\u0ba8\u0ba9\u0007\u0851\u0002\u0002\u0ba9\u0bab\u0007",
+ "\u08aa\u0002\u0002\u0baa\u0ba8\u0003\u0002\u0002\u0002\u0baa\u0bab\u0003",
+ "\u0002\u0002\u0002\u0bab\u0bac\u0003\u0002\u0002\u0002\u0bac\u0bae\u0007",
+ "\u0862\u0002\u0002\u0bad\u0baf\u0005\u00caf\u0002\u0bae\u0bad\u0003",
+ "\u0002\u0002\u0002\u0bae\u0baf\u0003\u0002\u0002\u0002\u0baf\u0bb1\u0003",
+ "\u0002\u0002\u0002\u0bb0\u0bb2\u0005\u01dc\u00ef\u0002\u0bb1\u0bb0\u0003",
+ "\u0002\u0002\u0002\u0bb1\u0bb2\u0003\u0002\u0002\u0002\u0bb2\u00c9\u0003",
+ "\u0002\u0002\u0002\u0bb3\u0bc1\u0007\u0303\u0002\u0002\u0bb4\u0bb5\u0007",
+ "\u08b1\u0002\u0002\u0bb5\u0bb6\u0007\u04b9\u0002\u0002\u0bb6\u0bbc\u0005",
+ "\u0360\u01b1\u0002\u0bb7\u0bb8\u0007\u08b7\u0002\u0002\u0bb8\u0bb9\u0007",
+ "\u04b9\u0002\u0002\u0bb9\u0bbb\u0005\u0360\u01b1\u0002\u0bba\u0bb7\u0003",
+ "\u0002\u0002\u0002\u0bbb\u0bbe\u0003\u0002\u0002\u0002\u0bbc\u0bba\u0003",
+ "\u0002\u0002\u0002\u0bbc\u0bbd\u0003\u0002\u0002\u0002\u0bbd\u0bbf\u0003",
+ "\u0002\u0002\u0002\u0bbe\u0bbc\u0003\u0002\u0002\u0002\u0bbf\u0bc0\u0007",
+ "\u08b2\u0002\u0002\u0bc0\u0bc2\u0003\u0002\u0002\u0002\u0bc1\u0bb4\u0003",
+ "\u0002\u0002\u0002\u0bc1\u0bc2\u0003\u0002\u0002\u0002\u0bc2\u00cb\u0003",
+ "\u0002\u0002\u0002\u0bc3\u0bc4\u0007\u0238\u0002\u0002\u0bc4\u0bc5\u0007",
+ "\u04b9\u0002\u0002\u0bc5\u0be4\u0007\u0094\u0002\u0002\u0bc6\u0bc7\u0007",
+ "\u0542\u0002\u0002\u0bc7\u0bc8\u0007\u08b1\u0002\u0002\u0bc8\u0bcd\u0005",
+ "\u0592\u02ca\u0002\u0bc9\u0bca\u0007\u08b7\u0002\u0002\u0bca\u0bcc\u0005",
+ "\u0592\u02ca\u0002\u0bcb\u0bc9\u0003\u0002\u0002\u0002\u0bcc\u0bcf\u0003",
+ "\u0002\u0002\u0002\u0bcd\u0bcb\u0003\u0002\u0002\u0002\u0bcd\u0bce\u0003",
+ "\u0002\u0002\u0002\u0bce\u0bd0\u0003\u0002\u0002\u0002\u0bcf\u0bcd\u0003",
+ "\u0002\u0002\u0002\u0bd0\u0bd1\u0007\u08b2\u0002\u0002\u0bd1\u0bd2\u0007",
+ "\u08b1\u0002\u0002\u0bd2\u0bd3\u0005\u00ceh\u0002\u0bd3\u0bd4\u0007",
+ "\u08b2\u0002\u0002\u0bd4\u0be5\u0003\u0002\u0002\u0002\u0bd5\u0bd6\u0007",
+ "\u0248\u0002\u0002\u0bd6\u0bd7\u0007\u08b1\u0002\u0002\u0bd7\u0bdc\u0005",
+ "\u0592\u02ca\u0002\u0bd8\u0bd9\u0007\u08b7\u0002\u0002\u0bd9\u0bdb\u0005",
+ "\u0592\u02ca\u0002\u0bda\u0bd8\u0003\u0002\u0002\u0002\u0bdb\u0bde\u0003",
+ "\u0002\u0002\u0002\u0bdc\u0bda\u0003\u0002\u0002\u0002\u0bdc\u0bdd\u0003",
+ "\u0002\u0002\u0002\u0bdd\u0bdf\u0003\u0002\u0002\u0002\u0bde\u0bdc\u0003",
+ "\u0002\u0002\u0002\u0bdf\u0be2\u0007\u08b2\u0002\u0002\u0be0\u0be3\u0005",
+ "\u022a\u0116\u0002\u0be1\u0be3\u0005\u022c\u0117\u0002\u0be2\u0be0\u0003",
+ "\u0002\u0002\u0002\u0be2\u0be1\u0003\u0002\u0002\u0002\u0be3\u0be5\u0003",
+ "\u0002\u0002\u0002\u0be4\u0bc6\u0003\u0002\u0002\u0002\u0be4\u0bd5\u0003",
+ "\u0002\u0002\u0002\u0be5\u00cd\u0003\u0002\u0002\u0002\u0be6\u0be8\u0007",
+ "\u04b9\u0002\u0002\u0be7\u0be9\u0005\u0360\u01b1\u0002\u0be8\u0be7\u0003",
+ "\u0002\u0002\u0002\u0be8\u0be9\u0003\u0002\u0002\u0002\u0be9\u0bea\u0003",
+ "\u0002\u0002\u0002\u0bea\u0beb\u0007\u081b\u0002\u0002\u0beb\u0bec\u0007",
+ "\u02ec\u0002\u0002\u0bec\u0bed\u0007\u0786\u0002\u0002\u0bed\u0bee\u0007",
+ "\u08b1\u0002\u0002\u0bee\u0bf3\u0005\u050c\u0287\u0002\u0bef\u0bf0\u0007",
+ "\u08b7\u0002\u0002\u0bf0\u0bf2\u0005\u050c\u0287\u0002\u0bf1\u0bef\u0003",
+ "\u0002\u0002\u0002\u0bf2\u0bf5\u0003\u0002\u0002\u0002\u0bf3\u0bf1\u0003",
+ "\u0002\u0002\u0002\u0bf3\u0bf4\u0003\u0002\u0002\u0002\u0bf4\u0bf6\u0003",
+ "\u0002\u0002\u0002\u0bf5\u0bf3\u0003\u0002\u0002\u0002\u0bf6\u0bf8\u0007",
+ "\u08b2\u0002\u0002\u0bf7\u0bf9\u0005\u026a\u0136\u0002\u0bf8\u0bf7\u0003",
+ "\u0002\u0002\u0002\u0bf8\u0bf9\u0003\u0002\u0002\u0002\u0bf9\u00cf\u0003",
+ "\u0002\u0002\u0002\u0bfa\u0bff\u0007\u0303\u0002\u0002\u0bfb\u0c00\u0005",
+ "\u00d2j\u0002\u0bfc\u0c00\u0005\u00d4k\u0002\u0bfd\u0c00\u0005\u00d8",
+ "m\u0002\u0bfe\u0c00\u0005\u00dco\u0002\u0bff\u0bfb\u0003\u0002\u0002",
+ "\u0002\u0bff\u0bfc\u0003\u0002\u0002\u0002\u0bff\u0bfd\u0003\u0002\u0002",
+ "\u0002\u0bff\u0bfe\u0003\u0002\u0002\u0002\u0bff\u0c00\u0003\u0002\u0002",
+ "\u0002\u0c00\u00d1\u0003\u0002\u0002\u0002\u0c01\u0c02\u0007\u08b1\u0002",
+ "\u0002\u0c02\u0c07\u0005\u00d6l\u0002\u0c03\u0c04\u0007\u08b7\u0002",
+ "\u0002\u0c04\u0c06\u0005\u00d6l\u0002\u0c05\u0c03\u0003\u0002\u0002",
+ "\u0002\u0c06\u0c09\u0003\u0002\u0002\u0002\u0c07\u0c05\u0003\u0002\u0002",
+ "\u0002\u0c07\u0c08\u0003\u0002\u0002\u0002\u0c08\u0c0a\u0003\u0002\u0002",
+ "\u0002\u0c09\u0c07\u0003\u0002\u0002\u0002\u0c0a\u0c0b\u0007\u08b2\u0002",
+ "\u0002\u0c0b\u00d3\u0003\u0002\u0002\u0002\u0c0c\u0c0d\u0007\u08b1\u0002",
+ "\u0002\u0c0d\u0c12\u0005\u00d6l\u0002\u0c0e\u0c0f\u0007\u08b7\u0002",
+ "\u0002\u0c0f\u0c11\u0005\u00d6l\u0002\u0c10\u0c0e\u0003\u0002\u0002",
+ "\u0002\u0c11\u0c14\u0003\u0002\u0002\u0002\u0c12\u0c10\u0003\u0002\u0002",
+ "\u0002\u0c12\u0c13\u0003\u0002\u0002\u0002\u0c13\u0c15\u0003\u0002\u0002",
+ "\u0002\u0c14\u0c12\u0003\u0002\u0002\u0002\u0c15\u0c16\u0007\u08b2\u0002",
+ "\u0002\u0c16\u00d5\u0003\u0002\u0002\u0002\u0c17\u0c19\u0007\u04b9\u0002",
+ "\u0002\u0c18\u0c1a\u0005\u0360\u01b1\u0002\u0c19\u0c18\u0003\u0002\u0002",
+ "\u0002\u0c19\u0c1a\u0003\u0002\u0002\u0002\u0c1a\u0c1f\u0003\u0002\u0002",
+ "\u0002\u0c1b\u0c1e\u0005\u026a\u0136\u0002\u0c1c\u0c1e\u0005\u030e\u0188",
+ "\u0002\u0c1d\u0c1b\u0003\u0002\u0002\u0002\u0c1d\u0c1c\u0003\u0002\u0002",
+ "\u0002\u0c1e\u0c21\u0003\u0002\u0002\u0002\u0c1f\u0c1d\u0003\u0002\u0002",
+ "\u0002\u0c1f\u0c20\u0003\u0002\u0002\u0002\u0c20\u0c23\u0003\u0002\u0002",
+ "\u0002\u0c21\u0c1f\u0003\u0002\u0002\u0002\u0c22\u0c24\u0007\u07e7\u0002",
+ "\u0002\u0c23\u0c22\u0003\u0002\u0002\u0002\u0c23\u0c24\u0003\u0002\u0002",
+ "\u0002\u0c24\u00d7\u0003\u0002\u0002\u0002\u0c25\u0c26\u0007\u063c\u0002",
+ "\u0002\u0c26\u0c27\u0007\u028e\u0002\u0002\u0c27\u0c28\u0007\u08b1\u0002",
+ "\u0002\u0c28\u0c2d\u0005\u0346\u01a4\u0002\u0c29\u0c2a\u0007\u08b7\u0002",
+ "\u0002\u0c2a\u0c2c\u0005\u0346\u01a4\u0002\u0c2b\u0c29\u0003\u0002\u0002",
+ "\u0002\u0c2c\u0c2f\u0003\u0002\u0002\u0002\u0c2d\u0c2b\u0003\u0002\u0002",
+ "\u0002\u0c2d\u0c2e\u0003\u0002\u0002\u0002\u0c2e\u0c30\u0003\u0002\u0002",
+ "\u0002\u0c2f\u0c2d\u0003\u0002\u0002\u0002\u0c30\u0c31\u0007\u08b2\u0002",
+ "\u0002\u0c31\u0c3e\u0003\u0002\u0002\u0002\u0c32\u0c33\u0007\u08b1\u0002",
+ "\u0002\u0c33\u0c38\u0005\u00dan\u0002\u0c34\u0c35\u0007\u08b7\u0002",
+ "\u0002\u0c35\u0c37\u0005\u00dan\u0002\u0c36\u0c34\u0003\u0002\u0002",
+ "\u0002\u0c37\u0c3a\u0003\u0002\u0002\u0002\u0c38\u0c36\u0003\u0002\u0002",
+ "\u0002\u0c38\u0c39\u0003\u0002\u0002\u0002\u0c39\u0c3b\u0003\u0002\u0002",
+ "\u0002\u0c3a\u0c38\u0003\u0002\u0002\u0002\u0c3b\u0c3c\u0007\u08b2\u0002",
+ "\u0002\u0c3c\u0c3e\u0003\u0002\u0002\u0002\u0c3d\u0c25\u0003\u0002\u0002",
+ "\u0002\u0c3d\u0c32\u0003\u0002\u0002\u0002\u0c3e\u00d9\u0003\u0002\u0002",
+ "\u0002\u0c3f\u0c41\u0007\u04b9\u0002\u0002\u0c40\u0c42\u0005\u0360\u01b1",
+ "\u0002\u0c41\u0c40\u0003\u0002\u0002\u0002\u0c41\u0c42\u0003\u0002\u0002",
+ "\u0002\u0c42\u0c45\u0003\u0002\u0002\u0002\u0c43\u0c44\u0007\u0777\u0002",
+ "\u0002\u0c44\u0c46\u0005\u0346\u01a4\u0002\u0c45\u0c43\u0003\u0002\u0002",
+ "\u0002\u0c45\u0c46\u0003\u0002\u0002\u0002\u0c46\u0c48\u0003\u0002\u0002",
+ "\u0002\u0c47\u0c49\u0005\u030e\u0188\u0002\u0c48\u0c47\u0003\u0002\u0002",
+ "\u0002\u0c48\u0c49\u0003\u0002\u0002\u0002\u0c49\u0c4b\u0003\u0002\u0002",
+ "\u0002\u0c4a\u0c4c\u0007\u07e7\u0002\u0002\u0c4b\u0c4a\u0003\u0002\u0002",
+ "\u0002\u0c4b\u0c4c\u0003\u0002\u0002\u0002\u0c4c\u00db\u0003\u0002\u0002",
+ "\u0002\u0c4d\u0c4e\u0007\u063c\u0002\u0002\u0c4e\u0c4f\u0007\u028e\u0002",
+ "\u0002\u0c4f\u0c50\u0007\u08b1\u0002\u0002\u0c50\u0c55\u0005\u0346\u01a4",
+ "\u0002\u0c51\u0c52\u0007\u08b7\u0002\u0002\u0c52\u0c54\u0005\u0346\u01a4",
+ "\u0002\u0c53\u0c51\u0003\u0002\u0002\u0002\u0c54\u0c57\u0003\u0002\u0002",
+ "\u0002\u0c55\u0c53\u0003\u0002\u0002\u0002\u0c55\u0c56\u0003\u0002\u0002",
+ "\u0002\u0c56\u0c58\u0003\u0002\u0002\u0002\u0c57\u0c55\u0003\u0002\u0002",
+ "\u0002\u0c58\u0c59\u0007\u08b2\u0002\u0002\u0c59\u0c5b\u0003\u0002\u0002",
+ "\u0002\u0c5a\u0c4d\u0003\u0002\u0002\u0002\u0c5a\u0c5b\u0003\u0002\u0002",
+ "\u0002\u0c5b\u0c5c\u0003\u0002\u0002\u0002\u0c5c\u0c5d\u0007\u08b1\u0002",
+ "\u0002\u0c5d\u0c62\u0005\u00dep\u0002\u0c5e\u0c5f\u0007\u08b7\u0002",
+ "\u0002\u0c5f\u0c61\u0005\u00dep\u0002\u0c60\u0c5e\u0003\u0002\u0002",
+ "\u0002\u0c61\u0c64\u0003\u0002\u0002\u0002\u0c62\u0c60\u0003\u0002\u0002",
+ "\u0002\u0c62\u0c63\u0003\u0002\u0002\u0002\u0c63\u0c65\u0003\u0002\u0002",
+ "\u0002\u0c64\u0c62\u0003\u0002\u0002\u0002\u0c65\u0c66\u0007\u08b2\u0002",
+ "\u0002\u0c66\u00dd\u0003\u0002\u0002\u0002\u0c67\u0c69\u0007\u04b9\u0002",
+ "\u0002\u0c68\u0c6a\u0005\u0360\u01b1\u0002\u0c69\u0c68\u0003\u0002\u0002",
+ "\u0002\u0c69\u0c6a\u0003\u0002\u0002\u0002\u0c6a\u0c6f\u0003\u0002\u0002",
+ "\u0002\u0c6b\u0c6e\u0005\u026a\u0136\u0002\u0c6c\u0c6e\u0005\u030e\u0188",
+ "\u0002\u0c6d\u0c6b\u0003\u0002\u0002\u0002\u0c6d\u0c6c\u0003\u0002\u0002",
+ "\u0002\u0c6e\u0c71\u0003\u0002\u0002\u0002\u0c6f\u0c6d\u0003\u0002\u0002",
+ "\u0002\u0c6f\u0c70\u0003\u0002\u0002\u0002\u0c70\u0c72\u0003\u0002\u0002",
+ "\u0002\u0c71\u0c6f\u0003\u0002\u0002\u0002\u0c72\u0c74\u0007\u07e7\u0002",
+ "\u0002\u0c73\u0c75\u0005\u00e0q\u0002\u0c74\u0c73\u0003\u0002\u0002",
+ "\u0002\u0c74\u0c75\u0003\u0002\u0002\u0002\u0c75\u00df\u0003\u0002\u0002",
+ "\u0002\u0c76\u0c77\u0007\u063c\u0002\u0002\u0c77\u0c78\u0007\u028e\u0002",
+ "\u0002\u0c78\u0c79\u0007\u08b1\u0002\u0002\u0c79\u0c7e\u0005\u0346\u01a4",
+ "\u0002\u0c7a\u0c7b\u0007\u08b7\u0002\u0002\u0c7b\u0c7d\u0005\u0346\u01a4",
+ "\u0002\u0c7c\u0c7a\u0003\u0002\u0002\u0002\u0c7d\u0c80\u0003\u0002\u0002",
+ "\u0002\u0c7e\u0c7c\u0003\u0002\u0002\u0002\u0c7e\u0c7f\u0003\u0002\u0002",
+ "\u0002\u0c7f\u0c81\u0003\u0002\u0002\u0002\u0c80\u0c7e\u0003\u0002\u0002",
+ "\u0002\u0c81\u0c82\u0007\u08b2\u0002\u0002\u0c82\u0c8f\u0003\u0002\u0002",
+ "\u0002\u0c83\u0c84\u0007\u08b1\u0002\u0002\u0c84\u0c89\u0005\u00e2r",
+ "\u0002\u0c85\u0c86\u0007\u08b7\u0002\u0002\u0c86\u0c88\u0005\u00e2r",
+ "\u0002\u0c87\u0c85\u0003\u0002\u0002\u0002\u0c88\u0c8b\u0003\u0002\u0002",
+ "\u0002\u0c89\u0c87\u0003\u0002\u0002\u0002\u0c89\u0c8a\u0003\u0002\u0002",
+ "\u0002\u0c8a\u0c8c\u0003\u0002\u0002\u0002\u0c8b\u0c89\u0003\u0002\u0002",
+ "\u0002\u0c8c\u0c8d\u0007\u08b2\u0002\u0002\u0c8d\u0c8f\u0003\u0002\u0002",
+ "\u0002\u0c8e\u0c76\u0003\u0002\u0002\u0002\u0c8e\u0c83\u0003\u0002\u0002",
+ "\u0002\u0c8f\u00e1\u0003\u0002\u0002\u0002\u0c90\u0c92\u0007\u0648\u0002",
+ "\u0002\u0c91\u0c93\u0005\u024a\u0126\u0002\u0c92\u0c91\u0003\u0002\u0002",
+ "\u0002\u0c92\u0c93\u0003\u0002\u0002\u0002\u0c93\u0c96\u0003\u0002\u0002",
+ "\u0002\u0c94\u0c95\u0007\u0777\u0002\u0002\u0c95\u0c97\u0005\u0346\u01a4",
+ "\u0002\u0c96\u0c94\u0003\u0002\u0002\u0002\u0c96\u0c97\u0003\u0002\u0002",
+ "\u0002\u0c97\u0c99\u0003\u0002\u0002\u0002\u0c98\u0c9a\u0005\u030e\u0188",
+ "\u0002\u0c99\u0c98\u0003\u0002\u0002\u0002\u0c99\u0c9a\u0003\u0002\u0002",
+ "\u0002\u0c9a\u0c9c\u0003\u0002\u0002\u0002\u0c9b\u0c9d\u0007\u07e7\u0002",
+ "\u0002\u0c9c\u0c9b\u0003\u0002\u0002\u0002\u0c9c\u0c9d\u0003\u0002\u0002",
+ "\u0002\u0c9d\u00e3\u0003\u0002\u0002\u0002\u0c9e\u0c9f\u0007\u08ad\u0002",
+ "\u0002\u0c9f\u00e5\u0003\u0002\u0002\u0002\u0ca0\u0ca1\u0005\u05d2\u02ea",
+ "\u0002\u0ca1\u0ca2\u0007\u08aa\u0002\u0002\u0ca2\u0ca4\u0003\u0002\u0002",
+ "\u0002\u0ca3\u0ca0\u0003\u0002\u0002\u0002\u0ca3\u0ca4\u0003\u0002\u0002",
+ "\u0002\u0ca4\u0ca5\u0003\u0002\u0002\u0002\u0ca5\u0ca6\u0005\u05d2\u02ea",
+ "\u0002\u0ca6\u00e7\u0003\u0002\u0002\u0002\u0ca7\u0ca8\u0007)\u0002",
+ "\u0002\u0ca8\u0ca9\u0007\u0279\u0002\u0002\u0ca9\u0cac\u0005\u0588\u02c5",
+ "\u0002\u0caa\u0cad\u0005\u00eav\u0002\u0cab\u0cad\u0005\u00ecw\u0002",
+ "\u0cac\u0caa\u0003\u0002\u0002\u0002\u0cac\u0cab\u0003\u0002\u0002\u0002",
+ "\u0cad\u0cae\u0003\u0002\u0002\u0002\u0cae\u0caf\u0007\u08c3\u0002\u0002",
+ "\u0caf\u00e9\u0003\u0002\u0002\u0002\u0cb0\u0cb7\u0005\u027c\u013f\u0002",
+ "\u0cb1\u0cb7\u0005\u027a\u013e\u0002\u0cb2\u0cb7\u0005\u027e\u0140\u0002",
+ "\u0cb3\u0cb7\u0005\u01dc\u00ef\u0002\u0cb4\u0cb7\u0005\u0264\u0133\u0002",
+ "\u0cb5\u0cb7\u0005\u01c2\u00e2\u0002\u0cb6\u0cb0\u0003\u0002\u0002\u0002",
+ "\u0cb6\u0cb1\u0003\u0002\u0002\u0002\u0cb6\u0cb2\u0003\u0002\u0002\u0002",
+ "\u0cb6\u0cb3\u0003\u0002\u0002\u0002\u0cb6\u0cb4\u0003\u0002\u0002\u0002",
+ "\u0cb6\u0cb5\u0003\u0002\u0002\u0002\u0cb7\u0cb8\u0003\u0002\u0002\u0002",
+ "\u0cb8\u0cb6\u0003\u0002\u0002\u0002\u0cb8\u0cb9\u0003\u0002\u0002\u0002",
+ "\u0cb9\u00eb\u0003\u0002\u0002\u0002\u0cba\u0cd0\u0005\u00f2z\u0002",
+ "\u0cbb\u0cbc\u0007\u04af\u0002\u0002\u0cbc\u0cbd\u0007\u08b1\u0002\u0002",
+ "\u0cbd\u0cbe\u0005\u00e4s\u0002\u0cbe\u0cbf\u0007\u08b2\u0002\u0002",
+ "\u0cbf\u0cd0\u0003\u0002\u0002\u0002\u0cc0\u0cd0\u0007\u00e1\u0002\u0002",
+ "\u0cc1\u0cd0\u0005\u028a\u0146\u0002\u0cc2\u0cd0\u0007\u07e7\u0002\u0002",
+ "\u0cc3\u0cd0\u0005\u00eex\u0002\u0cc4\u0cc5\u0007\u057e\u0002\u0002",
+ "\u0cc5\u0cc6\u0007\u07ae\u0002\u0002\u0cc6\u0cd0\u0005\u010e\u0088\u0002",
+ "\u0cc7\u0cd0\u0007\u00cf\u0002\u0002\u0cc8\u0cc9\u0005\u00f0y\u0002",
+ "\u0cc9\u0cca\u0007\u07f4\u0002\u0002\u0cca\u0cd0\u0003\u0002\u0002\u0002",
+ "\u0ccb\u0ccc\u0007\u07eb\u0002\u0002\u0ccc\u0ccd\u0007\u0083\u0002\u0002",
+ "\u0ccd\u0cd0\u0007\u0560\u0002\u0002\u0cce\u0cd0\u0005\u00f4{\u0002",
+ "\u0ccf\u0cba\u0003\u0002\u0002\u0002\u0ccf\u0cbb\u0003\u0002\u0002\u0002",
+ "\u0ccf\u0cc0\u0003\u0002\u0002\u0002\u0ccf\u0cc1\u0003\u0002\u0002\u0002",
+ "\u0ccf\u0cc2\u0003\u0002\u0002\u0002\u0ccf\u0cc3\u0003\u0002\u0002\u0002",
+ "\u0ccf\u0cc4\u0003\u0002\u0002\u0002\u0ccf\u0cc7\u0003\u0002\u0002\u0002",
+ "\u0ccf\u0cc8\u0003\u0002\u0002\u0002\u0ccf\u0ccb\u0003\u0002\u0002\u0002",
+ "\u0ccf\u0cce\u0003\u0002\u0002\u0002\u0cd0\u00ed\u0003\u0002\u0002\u0002",
+ "\u0cd1\u0cd2\t\u0017\u0002\u0002\u0cd2\u00ef\u0003\u0002\u0002\u0002",
+ "\u0cd3\u0cd4\t\u0018\u0002\u0002\u0cd4\u00f1\u0003\u0002\u0002\u0002",
+ "\u0cd5\u0cdc\u0007\u0550\u0002\u0002\u0cd6\u0cd7\u0007\u04b9\u0002\u0002",
+ "\u0cd7\u0cdd\u0005\u0360\u01b1\u0002\u0cd8\u0cd9\u0007\u0648\u0002\u0002",
+ "\u0cd9\u0cdd\u0005\u024a\u0126\u0002\u0cda\u0cdd\u0007\u059b\u0002\u0002",
+ "\u0cdb\u0cdd\u0007\u0419\u0002\u0002\u0cdc\u0cd6\u0003\u0002\u0002\u0002",
+ "\u0cdc\u0cd8\u0003\u0002\u0002\u0002\u0cdc\u0cda\u0003\u0002\u0002\u0002",
+ "\u0cdc\u0cdb\u0003\u0002\u0002\u0002\u0cdc\u0cdd\u0003\u0002\u0002\u0002",
+ "\u0cdd\u0cec\u0003\u0002\u0002\u0002\u0cde\u0ceb\u0005\u01dc\u00ef\u0002",
+ "\u0cdf\u0ce0\u0007\u0777\u0002\u0002\u0ce0\u0ceb\u0005\u0346\u01a4\u0002",
+ "\u0ce1\u0ce2\u0007\u04af\u0002\u0002\u0ce2\u0ce3\u0007\u08b1\u0002\u0002",
+ "\u0ce3\u0ce4\u0005\u00e4s\u0002\u0ce4\u0ce5\u0007\u08b2\u0002\u0002",
+ "\u0ce5\u0ceb\u0003\u0002\u0002\u0002\u0ce6\u0ceb\u0007\u0467\u0002\u0002",
+ "\u0ce7\u0ceb\u0005\u0264\u0133\u0002\u0ce8\u0ceb\u0005\u030e\u0188\u0002",
+ "\u0ce9\u0ceb\u0005\u01c2\u00e2\u0002\u0cea\u0cde\u0003\u0002\u0002\u0002",
+ "\u0cea\u0cdf\u0003\u0002\u0002\u0002\u0cea\u0ce1\u0003\u0002\u0002\u0002",
+ "\u0cea\u0ce6\u0003\u0002\u0002\u0002\u0cea\u0ce7\u0003\u0002\u0002\u0002",
+ "\u0cea\u0ce8\u0003\u0002\u0002\u0002\u0cea\u0ce9\u0003\u0002\u0002\u0002",
+ "\u0ceb\u0cee\u0003\u0002\u0002\u0002\u0cec\u0cea\u0003\u0002\u0002\u0002",
+ "\u0cec\u0ced\u0003\u0002\u0002\u0002\u0ced\u00f3\u0003\u0002\u0002\u0002",
+ "\u0cee\u0cec\u0003\u0002\u0002\u0002\u0cef\u0cf8\u0005\u00f6|\u0002",
+ "\u0cf0\u0cf8\u0005\u00f8}\u0002\u0cf1\u0cf8\u0005\u00fc\u007f\u0002",
+ "\u0cf2\u0cf8\u0005\u0100\u0081\u0002\u0cf3\u0cf8\u0005\u0102\u0082\u0002",
+ "\u0cf4\u0cf8\u0005\u0104\u0083\u0002\u0cf5\u0cf8\u0005\u00fa~\u0002",
+ "\u0cf6\u0cf8\u0005\u0108\u0085\u0002\u0cf7\u0cef\u0003\u0002\u0002\u0002",
+ "\u0cf7\u0cf0\u0003\u0002\u0002\u0002\u0cf7\u0cf1\u0003\u0002\u0002\u0002",
+ "\u0cf7\u0cf2\u0003\u0002\u0002\u0002\u0cf7\u0cf3\u0003\u0002\u0002\u0002",
+ "\u0cf7\u0cf4\u0003\u0002\u0002\u0002\u0cf7\u0cf5\u0003\u0002\u0002\u0002",
+ "\u0cf7\u0cf6\u0003\u0002\u0002\u0002\u0cf8\u00f5\u0003\u0002\u0002\u0002",
+ "\u0cf9\u0cfa\u0007\u0361\u0002\u0002\u0cfa\u0cfb\u0007\u0161\u0002\u0002",
+ "\u0cfb\u0cff\u0007N\u0002\u0002\u0cfc\u0cfd\u0007\u0224\u0002\u0002",
+ "\u0cfd\u0cfe\u0007\u04b9\u0002\u0002\u0cfe\u0d00\u0005\u0360\u01b1\u0002",
+ "\u0cff\u0cfc\u0003\u0002\u0002\u0002\u0cff\u0d00\u0003\u0002\u0002\u0002",
+ "\u0d00\u0d08\u0003\u0002\u0002\u0002\u0d01\u0d09\u0005\u0264\u0133\u0002",
+ "\u0d02\u0d05\u0007\u0777\u0002\u0002\u0d03\u0d06\u0005\u0346\u01a4\u0002",
+ "\u0d04\u0d06\u0007\u0161\u0002\u0002\u0d05\u0d03\u0003\u0002\u0002\u0002",
+ "\u0d05\u0d04\u0003\u0002\u0002\u0002\u0d06\u0d09\u0003\u0002\u0002\u0002",
+ "\u0d07\u0d09\u0005\u01c2\u00e2\u0002\u0d08\u0d01\u0003\u0002\u0002\u0002",
+ "\u0d08\u0d02\u0003\u0002\u0002\u0002\u0d08\u0d07\u0003\u0002\u0002\u0002",
+ "\u0d09\u00f7\u0003\u0002\u0002\u0002\u0d0a\u0d0b\u0007\u0014\u0002\u0002",
+ "\u0d0b\u0d0d\u0007\u04b9\u0002\u0002\u0d0c\u0d0e\u0005\u0360\u01b1\u0002",
+ "\u0d0d\u0d0c\u0003\u0002\u0002\u0002\u0d0d\u0d0e\u0003\u0002\u0002\u0002",
+ "\u0d0e\u0d11\u0003\u0002\u0002\u0002\u0d0f\u0d10\u0007\u0777\u0002\u0002",
+ "\u0d10\u0d12\u0005\u0346\u01a4\u0002\u0d11\u0d0f\u0003\u0002\u0002\u0002",
+ "\u0d11\u0d12\u0003\u0002\u0002\u0002\u0d12\u0d14\u0003\u0002\u0002\u0002",
+ "\u0d13\u0d15\u0005\u030e\u0188\u0002\u0d14\u0d13\u0003\u0002\u0002\u0002",
+ "\u0d14\u0d15\u0003\u0002\u0002\u0002\u0d15\u0d17\u0003\u0002\u0002\u0002",
+ "\u0d16\u0d18\u0005\u01dc\u00ef\u0002\u0d17\u0d16\u0003\u0002\u0002\u0002",
+ "\u0d17\u0d18\u0003\u0002\u0002\u0002\u0d18\u00f9\u0003\u0002\u0002\u0002",
+ "\u0d19\u0d1a\u0007\u00cf\u0002\u0002\u0d1a\u0d1c\u0007\u04b9\u0002\u0002",
+ "\u0d1b\u0d1d\u0005\u01dc\u00ef\u0002\u0d1c\u0d1b\u0003\u0002\u0002\u0002",
+ "\u0d1c\u0d1d\u0003\u0002\u0002\u0002\u0d1d\u00fb\u0003\u0002\u0002\u0002",
+ "\u0d1e\u0d1f\u0007\u0361\u0002\u0002\u0d1f\u0d20\u0007\u04b9\u0002\u0002",
+ "\u0d20\u0d30\u0005\u0360\u01b1\u0002\u0d21\u0d23\u0005\u00fe\u0080\u0002",
+ "\u0d22\u0d21\u0003\u0002\u0002\u0002\u0d23\u0d24\u0003\u0002\u0002\u0002",
+ "\u0d24\u0d22\u0003\u0002\u0002\u0002\u0d24\u0d25\u0003\u0002\u0002\u0002",
+ "\u0d25\u0d31\u0003\u0002\u0002\u0002\u0d26\u0d27\u0007\u04af\u0002\u0002",
+ "\u0d27\u0d28\u0007\u08b1\u0002\u0002\u0d28\u0d29\u0005\u00e4s\u0002",
+ "\u0d29\u0d2a\u0007\u08b2\u0002\u0002\u0d2a\u0d31\u0003\u0002\u0002\u0002",
+ "\u0d2b\u0d31\u0007\u00cf\u0002\u0002\u0d2c\u0d2d\u0007\u07eb\u0002\u0002",
+ "\u0d2d\u0d2e\u0007\u0083\u0002\u0002\u0d2e\u0d31\u0007\u0560\u0002\u0002",
+ "\u0d2f\u0d31\u0007\u07e7\u0002\u0002\u0d30\u0d22\u0003\u0002\u0002\u0002",
+ "\u0d30\u0d26\u0003\u0002\u0002\u0002\u0d30\u0d2b\u0003\u0002\u0002\u0002",
+ "\u0d30\u0d2c\u0003\u0002\u0002\u0002\u0d30\u0d2f\u0003\u0002\u0002\u0002",
+ "\u0d31\u00fd\u0003\u0002\u0002\u0002\u0d32\u0d38\u0005\u027c\u013f\u0002",
+ "\u0d33\u0d38\u0005\u027a\u013e\u0002\u0d34\u0d38\u0005\u0264\u0133\u0002",
+ "\u0d35\u0d38\u0005\u01c2\u00e2\u0002\u0d36\u0d38\u0005\u030e\u0188\u0002",
+ "\u0d37\u0d32\u0003\u0002\u0002\u0002\u0d37\u0d33\u0003\u0002\u0002\u0002",
+ "\u0d37\u0d34\u0003\u0002\u0002\u0002\u0d37\u0d35\u0003\u0002\u0002\u0002",
+ "\u0d37\u0d36\u0003\u0002\u0002\u0002\u0d38\u00ff\u0003\u0002\u0002\u0002",
+ "\u0d39\u0d3e\u0007\u057e\u0002\u0002\u0d3a\u0d3b\u0007\u04b9\u0002\u0002",
+ "\u0d3b\u0d3f\u0005\u0360\u01b1\u0002\u0d3c\u0d3d\u0007\u0648\u0002\u0002",
+ "\u0d3d\u0d3f\u0005\u024a\u0126\u0002\u0d3e\u0d3a\u0003\u0002\u0002\u0002",
+ "\u0d3e\u0d3c\u0003\u0002\u0002\u0002\u0d3f\u0d40\u0003\u0002\u0002\u0002",
+ "\u0d40\u0d41\u0007\u07ae\u0002\u0002\u0d41\u0d42\u0005\u010c\u0087\u0002",
+ "\u0d42\u0101\u0003\u0002\u0002\u0002\u0d43\u0d44\u0007\u019d\u0002\u0002",
+ "\u0d44\u0d45\u0007\u04b9\u0002\u0002\u0d45\u0d46\u0005\u0360\u01b1\u0002",
+ "\u0d46\u0103\u0003\u0002\u0002\u0002\u0d47\u0d48\u0007\u0612\u0002\u0002",
+ "\u0d48\u0d49\u0007\u04b9\u0002\u0002\u0d49\u0d4a\u0005\u010a\u0086\u0002",
+ "\u0d4a\u0d4b\u0007L\u0002\u0002\u0d4b\u0d4c\u0007\u08b1\u0002\u0002",
+ "\u0d4c\u0d51\u0005\u050c\u0287\u0002\u0d4d\u0d4e\u0007\u08b7\u0002\u0002",
+ "\u0d4e\u0d50\u0005\u050c\u0287\u0002\u0d4f\u0d4d\u0003\u0002\u0002\u0002",
+ "\u0d50\u0d53\u0003\u0002\u0002\u0002\u0d51\u0d4f\u0003\u0002\u0002\u0002",
+ "\u0d51\u0d52\u0003\u0002\u0002\u0002\u0d52\u0d54\u0003\u0002\u0002\u0002",
+ "\u0d53\u0d51\u0003\u0002\u0002\u0002\u0d54\u0d5c\u0007\u08b2\u0002\u0002",
+ "\u0d55\u0d56\u0007\u02b5\u0002\u0002\u0d56\u0d57\u0007\u08b1\u0002\u0002",
+ "\u0d57\u0d58\u0005\u0106\u0084\u0002\u0d58\u0d59\u0007\u08b7\u0002\u0002",
+ "\u0d59\u0d5a\u0005\u0106\u0084\u0002\u0d5a\u0d5b\u0007\u08b2\u0002\u0002",
+ "\u0d5b\u0d5d\u0003\u0002\u0002\u0002\u0d5c\u0d55\u0003\u0002\u0002\u0002",
+ "\u0d5c\u0d5d\u0003\u0002\u0002\u0002\u0d5d\u0d5f\u0003\u0002\u0002\u0002",
+ "\u0d5e\u0d60\u0005\u01dc\u00ef\u0002\u0d5f\u0d5e\u0003\u0002\u0002\u0002",
+ "\u0d5f\u0d60\u0003\u0002\u0002\u0002\u0d60\u0105\u0003\u0002\u0002\u0002",
+ "\u0d61\u0d73\u0007\u04b9\u0002\u0002\u0d62\u0d6e\u0005\u0360\u01b1\u0002",
+ "\u0d63\u0d66\u0005\u026a\u0136\u0002\u0d64\u0d66\u0005\u030e\u0188\u0002",
+ "\u0d65\u0d63\u0003\u0002\u0002\u0002\u0d65\u0d64\u0003\u0002\u0002\u0002",
+ "\u0d66\u0d67\u0003\u0002\u0002\u0002\u0d67\u0d65\u0003\u0002\u0002\u0002",
+ "\u0d67\u0d68\u0003\u0002\u0002\u0002\u0d68\u0d6f\u0003\u0002\u0002\u0002",
+ "\u0d69\u0d6a\u0007\u04af\u0002\u0002\u0d6a\u0d6b\u0007\u08b1\u0002\u0002",
+ "\u0d6b\u0d6c\u0005\u00e4s\u0002\u0d6c\u0d6d\u0007\u08b2\u0002\u0002",
+ "\u0d6d\u0d6f\u0003\u0002\u0002\u0002\u0d6e\u0d65\u0003\u0002\u0002\u0002",
+ "\u0d6e\u0d69\u0003\u0002\u0002\u0002\u0d6f\u0d71\u0003\u0002\u0002\u0002",
+ "\u0d70\u0d72\u0007\u07e7\u0002\u0002\u0d71\u0d70\u0003\u0002\u0002\u0002",
+ "\u0d71\u0d72\u0003\u0002\u0002\u0002\u0d72\u0d74\u0003\u0002\u0002\u0002",
+ "\u0d73\u0d62\u0003\u0002\u0002\u0002\u0d73\u0d74\u0003\u0002\u0002\u0002",
+ "\u0d74\u0107\u0003\u0002\u0002\u0002\u0d75\u0d76\u0007\u0361\u0002\u0002",
+ "\u0d76\u0d77\u0007\u0648\u0002\u0002\u0d77\u0d7b\u0005\u024a\u0126\u0002",
+ "\u0d78\u0d7c\u0007\u07e7\u0002\u0002\u0d79\u0d7c\u0005\u027a\u013e\u0002",
+ "\u0d7a\u0d7c\u0005\u027c\u013f\u0002\u0d7b\u0d78\u0003\u0002\u0002\u0002",
+ "\u0d7b\u0d79\u0003\u0002\u0002\u0002\u0d7b\u0d7a\u0003\u0002\u0002\u0002",
+ "\u0d7c\u0109\u0003\u0002\u0002\u0002\u0d7d\u0d7e\u0005\u0360\u01b1\u0002",
+ "\u0d7e\u010b\u0003\u0002\u0002\u0002\u0d7f\u0d80\u0005\u0360\u01b1\u0002",
+ "\u0d80\u010d\u0003\u0002\u0002\u0002\u0d81\u0d82\u0005\u0588\u02c5\u0002",
+ "\u0d82\u010f\u0003\u0002\u0002\u0002\u0d83\u0d84\u0007\u0122\u0002\u0002",
+ "\u0d84\u0d85\u0007\u0809\u0002\u0002\u0d85\u0d8f\u0005\u05a0\u02d1\u0002",
+ "\u0d86\u0d90\u0005\u0116\u008c\u0002\u0d87\u0d90\u0005\u0118\u008d\u0002",
+ "\u0d88\u0d90\u0005\u011a\u008e\u0002\u0d89\u0d90\u0005\u011c\u008f\u0002",
+ "\u0d8a\u0d90\u0005\u011e\u0090\u0002\u0d8b\u0d90\u0005\u0124\u0093\u0002",
+ "\u0d8c\u0d90\u0005\u0126\u0094\u0002\u0d8d\u0d90\u0005\u0128\u0095\u0002",
+ "\u0d8e\u0d90\u0005\u0182\u00c2\u0002\u0d8f\u0d86\u0003\u0002\u0002\u0002",
+ "\u0d8f\u0d87\u0003\u0002\u0002\u0002\u0d8f\u0d88\u0003\u0002\u0002\u0002",
+ "\u0d8f\u0d89\u0003\u0002\u0002\u0002\u0d8f\u0d8a\u0003\u0002\u0002\u0002",
+ "\u0d8f\u0d8b\u0003\u0002\u0002\u0002\u0d8f\u0d8c\u0003\u0002\u0002\u0002",
+ "\u0d8f\u0d8d\u0003\u0002\u0002\u0002\u0d8f\u0d8e\u0003\u0002\u0002\u0002",
+ "\u0d90\u0d91\u0003\u0002\u0002\u0002\u0d91\u0d8f\u0003\u0002\u0002\u0002",
+ "\u0d91\u0d92\u0003\u0002\u0002\u0002\u0d92\u0d93\u0003\u0002\u0002\u0002",
+ "\u0d93\u0d94\u0007\u08c3\u0002\u0002\u0d94\u0111\u0003\u0002\u0002\u0002",
+ "\u0d95\u0d96\u0007)\u0002\u0002\u0d96\u0d97\u0007\u0809\u0002\u0002",
+ "\u0d97\u0da3\u0005\u05a0\u02d1\u0002\u0d98\u0da4\u0005\u0114\u008b\u0002",
+ "\u0d99\u0da4\u0005\u0118\u008d\u0002\u0d9a\u0da4\u0005\u011a\u008e\u0002",
+ "\u0d9b\u0da4\u0005\u011c\u008f\u0002\u0d9c\u0da4\u0005\u011e\u0090\u0002",
+ "\u0d9d\u0da4\u0005\u0122\u0092\u0002\u0d9e\u0da4\u0005\u0124\u0093\u0002",
+ "\u0d9f\u0da4\u0005\u0126\u0094\u0002\u0da0\u0da4\u0005\u012a\u0096\u0002",
+ "\u0da1\u0da4\u0005\u0182\u00c2\u0002\u0da2\u0da4\u0005\u0134\u009b\u0002",
+ "\u0da3\u0d98\u0003\u0002\u0002\u0002\u0da3\u0d99\u0003\u0002\u0002\u0002",
+ "\u0da3\u0d9a\u0003\u0002\u0002\u0002\u0da3\u0d9b\u0003\u0002\u0002\u0002",
+ "\u0da3\u0d9c\u0003\u0002\u0002\u0002\u0da3\u0d9d\u0003\u0002\u0002\u0002",
+ "\u0da3\u0d9e\u0003\u0002\u0002\u0002\u0da3\u0d9f\u0003\u0002\u0002\u0002",
+ "\u0da3\u0da0\u0003\u0002\u0002\u0002\u0da3\u0da1\u0003\u0002\u0002\u0002",
+ "\u0da3\u0da2\u0003\u0002\u0002\u0002\u0da4\u0da5\u0003\u0002\u0002\u0002",
+ "\u0da5\u0da3\u0003\u0002\u0002\u0002\u0da5\u0da6\u0003\u0002\u0002\u0002",
+ "\u0da6\u0da7\u0003\u0002\u0002\u0002\u0da7\u0da8\u0007\u08c3\u0002\u0002",
+ "\u0da8\u0db5\u0003\u0002\u0002\u0002\u0da9\u0dae\u0005\u05a0\u02d1\u0002",
+ "\u0daa\u0dab\u0007\u08b7\u0002\u0002\u0dab\u0dad\u0005\u05a0\u02d1\u0002",
+ "\u0dac\u0daa\u0003\u0002\u0002\u0002\u0dad\u0db0\u0003\u0002\u0002\u0002",
+ "\u0dae\u0dac\u0003\u0002\u0002\u0002\u0dae\u0daf\u0003\u0002\u0002\u0002",
+ "\u0daf\u0db1\u0003\u0002\u0002\u0002\u0db0\u0dae\u0003\u0002\u0002\u0002",
+ "\u0db1\u0db2\u0005\u012c\u0097\u0002\u0db2\u0db3\u0007\u08c3\u0002\u0002",
+ "\u0db3\u0db5\u0003\u0002\u0002\u0002\u0db4\u0d95\u0003\u0002\u0002\u0002",
+ "\u0db4\u0da9\u0003\u0002\u0002\u0002\u0db5\u0113\u0003\u0002\u0002\u0002",
+ "\u0db6\u0db9\u0005\u0116\u008c\u0002\u0db7\u0db8\u0007\u0581\u0002\u0002",
+ "\u0db8\u0dba\u0005\u05d2\u02ea\u0002\u0db9\u0db7\u0003\u0002\u0002\u0002",
+ "\u0db9\u0dba\u0003\u0002\u0002\u0002\u0dba\u0115\u0003\u0002\u0002\u0002",
+ "\u0dbb\u0dbc\u0007\u025b\u0002\u0002\u0dbc\u0dbd\u0007\u0094\u0002\u0002",
+ "\u0dbd\u0dbe\u0005\u05d2\u02ea\u0002\u0dbe\u0117\u0003\u0002\u0002\u0002",
+ "\u0dbf\u0dc0\u0007\u025b\u0002\u0002\u0dc0\u0dc3\t\u0019\u0002\u0002",
+ "\u0dc1\u0dc2\u0007?\u0002\u0002\u0dc2\u0dc4\u0005\u05ce\u02e8\u0002",
+ "\u0dc3\u0dc1\u0003\u0002\u0002\u0002\u0dc3\u0dc4\u0003\u0002\u0002\u0002",
+ "\u0dc4\u0119\u0003\u0002\u0002\u0002\u0dc5\u0dc6\t\u001a\u0002\u0002",
+ "\u0dc6\u0dc7\u0007\u0777\u0002\u0002\u0dc7\u0dc8\u0005\u05d2\u02ea\u0002",
+ "\u0dc8\u011b\u0003\u0002\u0002\u0002\u0dc9\u0dcc\u0007\u053e\u0002\u0002",
+ "\u0dca\u0dcd\u0005\u0260\u0131\u0002\u0dcb\u0dcd\u0007\u07d6\u0002\u0002",
+ "\u0dcc\u0dca\u0003\u0002\u0002\u0002\u0dcc\u0dcb\u0003\u0002\u0002\u0002",
+ "\u0dcd\u0dce\u0003\u0002\u0002\u0002\u0dce\u0dcf\u0007\u046a\u0002\u0002",
+ "\u0dcf\u0dd0\u0005\u05d2\u02ea\u0002\u0dd0\u011d\u0003\u0002\u0002\u0002",
+ "\u0dd1\u0dd2\u0007\u0526\u0002\u0002\u0dd2\u0dd3\u0005\u05d2\u02ea\u0002",
+ "\u0dd3\u011f\u0003\u0002\u0002\u0002\u0dd4\u0dd9\u0005\u0574\u02bb\u0002",
+ "\u0dd5\u0dd6\u0007\u08b7\u0002\u0002\u0dd6\u0dd8\u0005\u0574\u02bb\u0002",
+ "\u0dd7\u0dd5\u0003\u0002\u0002\u0002\u0dd8\u0ddb\u0003\u0002\u0002\u0002",
+ "\u0dd9\u0dd7\u0003\u0002\u0002\u0002\u0dd9\u0dda\u0003\u0002\u0002\u0002",
+ "\u0dda\u0dec\u0003\u0002\u0002\u0002\u0ddb\u0dd9\u0003\u0002\u0002\u0002",
+ "\u0ddc\u0de8\u0007%\u0002\u0002\u0ddd\u0dde\u0007\u01d5\u0002\u0002",
+ "\u0dde\u0de3\u0005\u0574\u02bb\u0002\u0ddf\u0de0\u0007\u08b7\u0002\u0002",
+ "\u0de0\u0de2\u0005\u0574\u02bb\u0002\u0de1\u0ddf\u0003\u0002\u0002\u0002",
+ "\u0de2\u0de5\u0003\u0002\u0002\u0002\u0de3\u0de1\u0003\u0002\u0002\u0002",
+ "\u0de3\u0de4\u0003\u0002\u0002\u0002\u0de4\u0de7\u0003\u0002\u0002\u0002",
+ "\u0de5\u0de3\u0003\u0002\u0002\u0002\u0de6\u0ddd\u0003\u0002\u0002\u0002",
+ "\u0de7\u0dea\u0003\u0002\u0002\u0002\u0de8\u0de6\u0003\u0002\u0002\u0002",
+ "\u0de8\u0de9\u0003\u0002\u0002\u0002\u0de9\u0dec\u0003\u0002\u0002\u0002",
+ "\u0dea\u0de8\u0003\u0002\u0002\u0002\u0deb\u0dd4\u0003\u0002\u0002\u0002",
+ "\u0deb\u0ddc\u0003\u0002\u0002\u0002\u0dec\u0121\u0003\u0002\u0002\u0002",
+ "\u0ded\u0dee\u0007\u0161\u0002\u0002\u0dee\u0df1\u0007\u05a0\u0002\u0002",
+ "\u0def\u0df2\u0007\u03f1\u0002\u0002\u0df0\u0df2\u0005\u0120\u0091\u0002",
+ "\u0df1\u0def\u0003\u0002\u0002\u0002\u0df1\u0df0\u0003\u0002\u0002\u0002",
+ "\u0df2\u0123\u0003\u0002\u0002\u0002\u0df3\u0df4\u0007\u04c1\u0002\u0002",
+ "\u0df4\u0df5\u0007\u01e6\u0002\u0002\u0df5\u0125\u0003\u0002\u0002\u0002",
+ "\u0df6\u0df7\u0007\u0007\u0002\u0002\u0df7\u0df8\t\u001b\u0002\u0002",
+ "\u0df8\u0127\u0003\u0002\u0002\u0002\u0df9\u0dfa\u0007\u01b9\u0002\u0002",
+ "\u0dfa\u0dfb\u0007\u01ac\u0002\u0002\u0dfb\u0129\u0003\u0002\u0002\u0002",
+ "\u0dfc\u0e06\u0005\u0128\u0095\u0002\u0dfd\u0dfe\u0007\u0224\u0002\u0002",
+ "\u0dfe\u0e03\u0005\u05d6\u02ec\u0002\u0dff\u0e00\u0007\u08b7\u0002\u0002",
+ "\u0e00\u0e02\u0005\u05d6\u02ec\u0002\u0e01\u0dff\u0003\u0002\u0002\u0002",
+ "\u0e02\u0e05\u0003\u0002\u0002\u0002\u0e03\u0e01\u0003\u0002\u0002\u0002",
+ "\u0e03\u0e04\u0003\u0002\u0002\u0002\u0e04\u0e07\u0003\u0002\u0002\u0002",
+ "\u0e05\u0e03\u0003\u0002\u0002\u0002\u0e06\u0dfd\u0003\u0002\u0002\u0002",
+ "\u0e06\u0e07\u0003\u0002\u0002\u0002\u0e07\u0e09\u0003\u0002\u0002\u0002",
+ "\u0e08\u0e0a\u0007\u0220\u0002\u0002\u0e09\u0e08\u0003\u0002\u0002\u0002",
+ "\u0e09\u0e0a\u0003\u0002\u0002\u0002\u0e0a\u012b\u0003\u0002\u0002\u0002",
+ "\u0e0b\u0e0c\u0007\u059c\u0002\u0002\u0e0c\u0e0d\u0007\u00fd\u0002\u0002",
+ "\u0e0d\u0e11\u0007\u078a\u0002\u0002\u0e0e\u0e0f\u0007\u01c4\u0002\u0002",
+ "\u0e0f\u0e12\u0007\u0807\u0002\u0002\u0e10\u0e12\u0005\u05a0\u02d1\u0002",
+ "\u0e11\u0e0e\u0003\u0002\u0002\u0002\u0e11\u0e10\u0003\u0002\u0002\u0002",
+ "\u0e12\u0e33\u0003\u0002\u0002\u0002\u0e13\u0e14\u0007\u023d\u0002\u0002",
+ "\u0e14\u0e15\u0007\u00fd\u0002\u0002\u0e15\u0e30\u0007\u078a\u0002\u0002",
+ "\u0e16\u0e17\u0007\u01c4\u0002\u0002\u0e17\u0e31\u0007\u0807\u0002\u0002",
+ "\u0e18\u0e20\u0005\u05a0\u02d1\u0002\u0e19\u0e1e\u0007\u084b\u0002\u0002",
+ "\u0e1a\u0e1b\u0007\u03f4\u0002\u0002\u0e1b\u0e1f\u0007\u05a2\u0002\u0002",
+ "\u0e1c\u0e1d\u0007\u05a0\u0002\u0002\u0e1d\u0e1f\u0005\u0120\u0091\u0002",
+ "\u0e1e\u0e1a\u0003\u0002\u0002\u0002\u0e1e\u0e1c\u0003\u0002\u0002\u0002",
+ "\u0e1f\u0e21\u0003\u0002\u0002\u0002\u0e20\u0e19\u0003\u0002\u0002\u0002",
+ "\u0e20\u0e21\u0003\u0002\u0002\u0002\u0e21\u0e24\u0003\u0002\u0002\u0002",
+ "\u0e22\u0e23\u0007Q\u0002\u0002\u0e23\u0e25\u0007\u0583\u0002\u0002",
+ "\u0e24\u0e22\u0003\u0002\u0002\u0002\u0e24\u0e25\u0003\u0002\u0002\u0002",
+ "\u0e25\u0e2e\u0003\u0002\u0002\u0002\u0e26\u0e27\u0007P\u0002\u0002",
+ "\u0e27\u0e2c\u0007\u0811\u0002\u0002\u0e28\u0e2d\u0007\u04c1\u0002\u0002",
+ "\u0e29\u0e2d\u0007\u00ab\u0002\u0002\u0e2a\u0e2b\u0007\u018f\u0002\u0002",
+ "\u0e2b\u0e2d\u0007\u0371\u0002\u0002\u0e2c\u0e28\u0003\u0002\u0002\u0002",
+ "\u0e2c\u0e29\u0003\u0002\u0002\u0002\u0e2c\u0e2a\u0003\u0002\u0002\u0002",
+ "\u0e2d\u0e2f\u0003\u0002\u0002\u0002\u0e2e\u0e26\u0003\u0002\u0002\u0002",
+ "\u0e2e\u0e2f\u0003\u0002\u0002\u0002\u0e2f\u0e31\u0003\u0002\u0002\u0002",
+ "\u0e30\u0e16\u0003\u0002\u0002\u0002\u0e30\u0e18\u0003\u0002\u0002\u0002",
+ "\u0e31\u0e33\u0003\u0002\u0002\u0002\u0e32\u0e0b\u0003\u0002\u0002\u0002",
+ "\u0e32\u0e13\u0003\u0002\u0002\u0002\u0e33\u012d\u0003\u0002\u0002\u0002",
+ "\u0e34\u0e35\u0007\u08b1\u0002\u0002\u0e35\u0e3a\u0005\u05d2\u02ea\u0002",
+ "\u0e36\u0e37\u0007\u08b7\u0002\u0002\u0e37\u0e39\u0005\u05d2\u02ea\u0002",
+ "\u0e38\u0e36\u0003\u0002\u0002\u0002\u0e39\u0e3c\u0003\u0002\u0002\u0002",
+ "\u0e3a\u0e38\u0003\u0002\u0002\u0002\u0e3a\u0e3b\u0003\u0002\u0002\u0002",
+ "\u0e3b\u0e3d\u0003\u0002\u0002\u0002\u0e3c\u0e3a\u0003\u0002\u0002\u0002",
+ "\u0e3d\u0e3e\u0007\u08b2\u0002\u0002\u0e3e\u012f\u0003\u0002\u0002\u0002",
+ "\u0e3f\u0e40\u0007\u05e8\u0002\u0002\u0e40\u0e41\u0007\u0107\u0002\u0002",
+ "\u0e41\u0e45\u0007\u08c5\u0002\u0002\u0e42\u0e46\u0007%\u0002\u0002",
+ "\u0e43\u0e46\u0007\u0161\u0002\u0002\u0e44\u0e46\u0005\u012e\u0098\u0002",
+ "\u0e45\u0e42\u0003\u0002\u0002\u0002\u0e45\u0e43\u0003\u0002\u0002\u0002",
+ "\u0e45\u0e44\u0003\u0002\u0002\u0002\u0e46\u0131\u0003\u0002\u0002\u0002",
+ "\u0e47\u0e48\t\u001c\u0002\u0002\u0e48\u0e49\u0007\u0107\u0002\u0002",
+ "\u0e49\u0e4a\u0007\u08c5\u0002\u0002\u0e4a\u0e4b\u0005\u012e\u0098\u0002",
+ "\u0e4b\u0133\u0003\u0002\u0002\u0002\u0e4c\u0e53\u0005\u0130\u0099\u0002",
+ "\u0e4d\u0e50\u0005\u0132\u009a\u0002\u0e4e\u0e4f\u0007\u0224\u0002\u0002",
+ "\u0e4f\u0e51\u0005\u056c\u02b7\u0002\u0e50\u0e4e\u0003\u0002\u0002\u0002",
+ "\u0e50\u0e51\u0003\u0002\u0002\u0002\u0e51\u0e53\u0003\u0002\u0002\u0002",
+ "\u0e52\u0e4c\u0003\u0002\u0002\u0002\u0e52\u0e4d\u0003\u0002\u0002\u0002",
+ "\u0e53\u0135\u0003\u0002\u0002\u0002\u0e54\u0e59\u0007+\u0002\u0002",
+ "\u0e55\u0e56\u0007\u077a\u0002\u0002\u0e56\u0e5a\u0005\u0594\u02cb\u0002",
+ "\u0e57\u0e58\u0007\u0279\u0002\u0002\u0e58\u0e5a\u0005\u0588\u02c5\u0002",
+ "\u0e59\u0e55\u0003\u0002\u0002\u0002\u0e59\u0e57\u0003\u0002\u0002\u0002",
+ "\u0e5a\u0e5c\u0003\u0002\u0002\u0002\u0e5b\u0e5d\u0005\u0138\u009d\u0002",
+ "\u0e5c\u0e5b\u0003\u0002\u0002\u0002\u0e5c\u0e5d\u0003\u0002\u0002\u0002",
+ "\u0e5d\u0e62\u0003\u0002\u0002\u0002\u0e5e\u0e5f\u0007+\u0002\u0002",
+ "\u0e5f\u0e60\u0007\u00c7\u0002\u0002\u0e60\u0e62\u0005\u00ba^\u0002",
+ "\u0e61\u0e54\u0003\u0002\u0002\u0002\u0e61\u0e5e\u0003\u0002\u0002\u0002",
+ "\u0e62\u0e6f\u0003\u0002\u0002\u0002\u0e63\u0e70\u0005\u013a\u009e\u0002",
+ "\u0e64\u0e65\u0007\u02fb\u0002\u0002\u0e65\u0e66\u0007\u00ad\u0002\u0002",
+ "\u0e66\u0e68\u0007\u05ae\u0002\u0002\u0e67\u0e69\u0005\u013e\u00a0\u0002",
+ "\u0e68\u0e67\u0003\u0002\u0002\u0002\u0e68\u0e69\u0003\u0002\u0002\u0002",
+ "\u0e69\u0e70\u0003\u0002\u0002\u0002\u0e6a\u0e6c\u0007\u016c\u0002\u0002",
+ "\u0e6b\u0e6d\u0007\u06f5\u0002\u0002\u0e6c\u0e6b\u0003\u0002\u0002\u0002",
+ "\u0e6c\u0e6d\u0003\u0002\u0002\u0002\u0e6d\u0e6e\u0003\u0002\u0002\u0002",
+ "\u0e6e\u0e70\u0007\u062b\u0002\u0002\u0e6f\u0e63\u0003\u0002\u0002\u0002",
+ "\u0e6f\u0e64\u0003\u0002\u0002\u0002\u0e6f\u0e6a\u0003\u0002\u0002\u0002",
+ "\u0e70\u0e71\u0003\u0002\u0002\u0002\u0e71\u0e72\u0007\u08c3\u0002\u0002",
+ "\u0e72\u0137\u0003\u0002\u0002\u0002\u0e73\u0e84\u0007\u04b9\u0002\u0002",
+ "\u0e74\u0e75\u0007\u08b1\u0002\u0002\u0e75\u0e76\u0005\u0360\u01b1\u0002",
+ "\u0e76\u0e77\u0007\u08b2\u0002\u0002\u0e77\u0e85\u0003\u0002\u0002\u0002",
+ "\u0e78\u0e79\u0007\u0224\u0002\u0002\u0e79\u0e7a\u0007\u08b1\u0002\u0002",
+ "\u0e7a\u0e7f\u0005\u0140\u00a1\u0002\u0e7b\u0e7c\u0007\u08b7\u0002\u0002",
+ "\u0e7c\u0e7e\u0005\u0140\u00a1\u0002\u0e7d\u0e7b\u0003\u0002\u0002\u0002",
+ "\u0e7e\u0e81\u0003\u0002\u0002\u0002\u0e7f\u0e7d\u0003\u0002\u0002\u0002",
+ "\u0e7f\u0e80\u0003\u0002\u0002\u0002\u0e80\u0e82\u0003\u0002\u0002\u0002",
+ "\u0e81\u0e7f\u0003\u0002\u0002\u0002\u0e82\u0e83\u0007\u08b2\u0002\u0002",
+ "\u0e83\u0e85\u0003\u0002\u0002\u0002\u0e84\u0e74\u0003\u0002\u0002\u0002",
+ "\u0e84\u0e78\u0003\u0002\u0002\u0002\u0e85\u0e9a\u0003\u0002\u0002\u0002",
+ "\u0e86\u0e97\u0007\u0648\u0002\u0002\u0e87\u0e88\u0007\u08b1\u0002\u0002",
+ "\u0e88\u0e89\u0005\u024a\u0126\u0002\u0e89\u0e8a\u0007\u08b2\u0002\u0002",
+ "\u0e8a\u0e98\u0003\u0002\u0002\u0002\u0e8b\u0e8c\u0007\u0224\u0002\u0002",
+ "\u0e8c\u0e8d\u0007\u08b1\u0002\u0002\u0e8d\u0e92\u0005\u0142\u00a2\u0002",
+ "\u0e8e\u0e8f\u0007\u08b7\u0002\u0002\u0e8f\u0e91\u0005\u0142\u00a2\u0002",
+ "\u0e90\u0e8e\u0003\u0002\u0002\u0002\u0e91\u0e94\u0003\u0002\u0002\u0002",
+ "\u0e92\u0e90\u0003\u0002\u0002\u0002\u0e92\u0e93\u0003\u0002\u0002\u0002",
+ "\u0e93\u0e95\u0003\u0002\u0002\u0002\u0e94\u0e92\u0003\u0002\u0002\u0002",
+ "\u0e95\u0e96\u0007\u08b2\u0002\u0002\u0e96\u0e98\u0003\u0002\u0002\u0002",
+ "\u0e97\u0e87\u0003\u0002\u0002\u0002\u0e97\u0e8b\u0003\u0002\u0002\u0002",
+ "\u0e98\u0e9a\u0003\u0002\u0002\u0002\u0e99\u0e73\u0003\u0002\u0002\u0002",
+ "\u0e99\u0e86\u0003\u0002\u0002\u0002\u0e9a\u0139\u0003\u0002\u0002\u0002",
+ "\u0e9b\u0e9c\u0007\u0818\u0002\u0002\u0e9c\u0e9d\u0007\u0562\u0002\u0002",
+ "\u0e9d\u0ea2\u0007\u07eb\u0002\u0002\u0e9e\u0e9f\u0007\u05e8\u0002\u0002",
+ "\u0e9f\u0ea0\u0007\u013d\u0002\u0002\u0ea0\u0ea1\u0007\u07ae\u0002\u0002",
+ "\u0ea1\u0ea3\u0007\u044b\u0002\u0002\u0ea2\u0e9e\u0003\u0002\u0002\u0002",
+ "\u0ea2\u0ea3\u0003\u0002\u0002\u0002\u0ea3\u0eb9\u0003\u0002\u0002\u0002",
+ "\u0ea4\u0ea5\u0007\u0818\u0002\u0002\u0ea5\u0eb0\u0007\u0644\u0002\u0002",
+ "\u0ea6\u0ea7\u0007\u00a4\u0002\u0002\u0ea7\u0eb1\u0007\u0201\u0002\u0002",
+ "\u0ea8\u0eaa\u0007\u00a4\u0002\u0002\u0ea9\u0eab\u0005\u013c\u009f\u0002",
+ "\u0eaa\u0ea9\u0003\u0002\u0002\u0002\u0eaa\u0eab\u0003\u0002\u0002\u0002",
+ "\u0eab\u0ead\u0003\u0002\u0002\u0002\u0eac\u0eae\u0005\u0550\u02a9\u0002",
+ "\u0ead\u0eac\u0003\u0002\u0002\u0002\u0ead\u0eae\u0003\u0002\u0002\u0002",
+ "\u0eae\u0eb1\u0003\u0002\u0002\u0002\u0eaf\u0eb1\u0007\u00a4\u0002\u0002",
+ "\u0eb0\u0ea6\u0003\u0002\u0002\u0002\u0eb0\u0ea8\u0003\u0002\u0002\u0002",
+ "\u0eb0\u0eaf\u0003\u0002\u0002\u0002\u0eb0\u0eb1\u0003\u0002\u0002\u0002",
+ "\u0eb1\u0eb3\u0003\u0002\u0002\u0002\u0eb2\u0eb4\u0005\u013c\u009f\u0002",
+ "\u0eb3\u0eb2\u0003\u0002\u0002\u0002\u0eb3\u0eb4\u0003\u0002\u0002\u0002",
+ "\u0eb4\u0eb6\u0003\u0002\u0002\u0002\u0eb5\u0eb7\u0005\u0550\u02a9\u0002",
+ "\u0eb6\u0eb5\u0003\u0002\u0002\u0002\u0eb6\u0eb7\u0003\u0002\u0002\u0002",
+ "\u0eb7\u0eb9\u0003\u0002\u0002\u0002\u0eb8\u0e9b\u0003\u0002\u0002\u0002",
+ "\u0eb8\u0ea4\u0003\u0002\u0002\u0002\u0eb9\u013b\u0003\u0002\u0002\u0002",
+ "\u0eba\u0ebb\t\u001d\u0002\u0002\u0ebb\u013d\u0003\u0002\u0002\u0002",
+ "\u0ebc\u0ebe\u0007\u02b5\u0002\u0002\u0ebd\u0ebf\u0005\u0594\u02cb\u0002",
+ "\u0ebe\u0ebd\u0003\u0002\u0002\u0002\u0ebe\u0ebf\u0003\u0002\u0002\u0002",
+ "\u0ebf\u013f\u0003\u0002\u0002\u0002\u0ec0\u0ec1\u0005\u050c\u0287\u0002",
+ "\u0ec1\u0141\u0003\u0002\u0002\u0002\u0ec2\u0ec3\u0005\u050c\u0287\u0002",
+ "\u0ec3\u0143\u0003\u0002\u0002\u0002\u0ec4\u0ec5\u0007G\u0002\u0002",
+ "\u0ec5\u0ec6\u0007\u062b\u0002\u0002\u0ec6\u0ec9\u0007\u084b\u0002\u0002",
+ "\u0ec7\u0eca\u0005\u0146\u00a4\u0002\u0ec8\u0eca\u0005\u0148\u00a5\u0002",
+ "\u0ec9\u0ec7\u0003\u0002\u0002\u0002\u0ec9\u0ec8\u0003\u0002\u0002\u0002",
+ "\u0eca\u0ecc\u0003\u0002\u0002\u0002\u0ecb\u0ecd\u0005\u015c\u00af\u0002",
+ "\u0ecc\u0ecb\u0003\u0002\u0002\u0002\u0ecc\u0ecd\u0003\u0002\u0002\u0002",
+ "\u0ecd\u0ece\u0003\u0002\u0002\u0002\u0ece\u0ecf\u0007\u08c3\u0002\u0002",
+ "\u0ecf\u0145\u0003\u0002\u0002\u0002\u0ed0\u0ed1\u0007\u00d8\u0002\u0002",
+ "\u0ed1\u0ed2\u0005\u0594\u02cb\u0002\u0ed2\u0ed3\u0007\u08aa\u0002\u0002",
+ "\u0ed3\u0edb\u0005\u0592\u02ca\u0002\u0ed4\u0ed5\u0007\u08b7\u0002\u0002",
+ "\u0ed5\u0ed6\u0005\u0594\u02cb\u0002\u0ed6\u0ed7\u0007\u08aa\u0002\u0002",
+ "\u0ed7\u0ed8\u0005\u0592\u02ca\u0002\u0ed8\u0eda\u0003\u0002\u0002\u0002",
+ "\u0ed9\u0ed4\u0003\u0002\u0002\u0002\u0eda\u0edd\u0003\u0002\u0002\u0002",
+ "\u0edb\u0ed9\u0003\u0002\u0002\u0002\u0edb\u0edc\u0003\u0002\u0002\u0002",
+ "\u0edc\u0ede\u0003\u0002\u0002\u0002\u0edd\u0edb\u0003\u0002\u0002\u0002",
+ "\u0ede\u0edf\u0005\u014c\u00a7\u0002\u0edf\u0147\u0003\u0002\u0002\u0002",
+ "\u0ee0\u0ee1\u0007\u0231\u0002\u0002\u0ee1\u0ee6\u0005\u0580\u02c1\u0002",
+ "\u0ee2\u0ee3\u0007\u08b7\u0002\u0002\u0ee3\u0ee5\u0005\u0580\u02c1\u0002",
+ "\u0ee4\u0ee2\u0003\u0002\u0002\u0002\u0ee5\u0ee8\u0003\u0002\u0002\u0002",
+ "\u0ee6\u0ee4\u0003\u0002\u0002\u0002\u0ee6\u0ee7\u0003\u0002\u0002\u0002",
+ "\u0ee7\u0f0e\u0003\u0002\u0002\u0002\u0ee8\u0ee6\u0003\u0002\u0002\u0002",
+ "\u0ee9\u0eea\u0007\u04aa\u0002\u0002\u0eea\u0eef\u0005\u0562\u02b2\u0002",
+ "\u0eeb\u0eec\u0007\u08b7\u0002\u0002\u0eec\u0eee\u0005\u0562\u02b2\u0002",
+ "\u0eed\u0eeb\u0003\u0002\u0002\u0002\u0eee\u0ef1\u0003\u0002\u0002\u0002",
+ "\u0eef\u0eed\u0003\u0002\u0002\u0002\u0eef\u0ef0\u0003\u0002\u0002\u0002",
+ "\u0ef0\u0f0e\u0003\u0002\u0002\u0002\u0ef1\u0eef\u0003\u0002\u0002\u0002",
+ "\u0ef2\u0ef3\u0007\u07c4\u0002\u0002\u0ef3\u0ef8\u0005\u057a\u02be\u0002",
+ "\u0ef4\u0ef5\u0007\u08b7\u0002\u0002\u0ef5\u0ef7\u0005\u057a\u02be\u0002",
+ "\u0ef6\u0ef4\u0003\u0002\u0002\u0002\u0ef7\u0efa\u0003\u0002\u0002\u0002",
+ "\u0ef8\u0ef6\u0003\u0002\u0002\u0002\u0ef8\u0ef9\u0003\u0002\u0002\u0002",
+ "\u0ef9\u0f0e\u0003\u0002\u0002\u0002\u0efa\u0ef8\u0003\u0002\u0002\u0002",
+ "\u0efb\u0efc\u0007\u0276\u0002\u0002\u0efc\u0f01\u0005\u0588\u02c5\u0002",
+ "\u0efd\u0efe\u0007\u08b7\u0002\u0002\u0efe\u0f00\u0005\u0588\u02c5\u0002",
+ "\u0eff\u0efd\u0003\u0002\u0002\u0002\u0f00\u0f03\u0003\u0002\u0002\u0002",
+ "\u0f01\u0eff\u0003\u0002\u0002\u0002\u0f01\u0f02\u0003\u0002\u0002\u0002",
+ "\u0f02\u0f0e\u0003\u0002\u0002\u0002\u0f03\u0f01\u0003\u0002\u0002\u0002",
+ "\u0f04\u0f05\u0007\u0288\u0002\u0002\u0f05\u0f0a\u0005\u014a\u00a6\u0002",
+ "\u0f06\u0f07\u0007\u08b7\u0002\u0002\u0f07\u0f09\u0005\u014a\u00a6\u0002",
+ "\u0f08\u0f06\u0003\u0002\u0002\u0002\u0f09\u0f0c\u0003\u0002\u0002\u0002",
+ "\u0f0a\u0f08\u0003\u0002\u0002\u0002\u0f0a\u0f0b\u0003\u0002\u0002\u0002",
+ "\u0f0b\u0f0e\u0003\u0002\u0002\u0002\u0f0c\u0f0a\u0003\u0002\u0002\u0002",
+ "\u0f0d\u0ee0\u0003\u0002\u0002\u0002\u0f0d\u0ee9\u0003\u0002\u0002\u0002",
+ "\u0f0d\u0ef2\u0003\u0002\u0002\u0002\u0f0d\u0efb\u0003\u0002\u0002\u0002",
+ "\u0f0d\u0f04\u0003\u0002\u0002\u0002\u0f0e\u0f1a\u0003\u0002\u0002\u0002",
+ "\u0f0f\u0f1b\u0005\u014c\u00a7\u0002\u0f10\u0f13\u0005\u0150\u00a9\u0002",
+ "\u0f11\u0f12\u0007\u08b7\u0002\u0002\u0f12\u0f14\u0005\u0158\u00ad\u0002",
+ "\u0f13\u0f11\u0003\u0002\u0002\u0002\u0f13\u0f14\u0003\u0002\u0002\u0002",
+ "\u0f14\u0f1b\u0003\u0002\u0002\u0002\u0f15\u0f18\u0005\u0158\u00ad\u0002",
+ "\u0f16\u0f17\u0007\u08b7\u0002\u0002\u0f17\u0f19\u0005\u0150\u00a9\u0002",
+ "\u0f18\u0f16\u0003\u0002\u0002\u0002\u0f18\u0f19\u0003\u0002\u0002\u0002",
+ "\u0f19\u0f1b\u0003\u0002\u0002\u0002\u0f1a\u0f0f\u0003\u0002\u0002\u0002",
+ "\u0f1a\u0f10\u0003\u0002\u0002\u0002\u0f1a\u0f15\u0003\u0002\u0002\u0002",
+ "\u0f1b\u0149\u0003\u0002\u0002\u0002\u0f1c\u0f1d\u0005\u05d2\u02ea\u0002",
+ "\u0f1d\u014b\u0003\u0002\u0002\u0002\u0f1e\u0f21\u0007\u0811\u0002\u0002",
+ "\u0f1f\u0f22\u0005\u014e\u00a8\u0002\u0f20\u0f22\u0007\u044b\u0002\u0002",
+ "\u0f21\u0f1f\u0003\u0002\u0002\u0002\u0f21\u0f20\u0003\u0002\u0002\u0002",
+ "\u0f22\u014d\u0003\u0002\u0002\u0002\u0f23\u0f24\u0005\u05d6\u02ec\u0002",
+ "\u0f24\u014f\u0003\u0002\u0002\u0002\u0f25\u0f26\u0007\u0161\u0002\u0002",
+ "\u0f26\u0f27\u0007\u0119\u0002\u0002\u0f27\u0f28\u0007\u08b1\u0002\u0002",
+ "\u0f28\u0f29\u0005\u0152\u00aa\u0002\u0f29\u0f2a\u0007\u08b7\u0002\u0002",
+ "\u0f2a\u0f2b\u0005\u0154\u00ab\u0002\u0f2b\u0f2c\u0007\u08b7\u0002\u0002",
+ "\u0f2c\u0f2d\u0005\u0156\u00ac\u0002\u0f2d\u0f2e\u0007\u08b2\u0002\u0002",
+ "\u0f2e\u0151\u0003\u0002\u0002\u0002\u0f2f\u0f30\u0007\u08ab\u0002\u0002",
+ "\u0f30\u0153\u0003\u0002\u0002\u0002\u0f31\u0f32\u0007\u08ab\u0002\u0002",
+ "\u0f32\u0155\u0003\u0002\u0002\u0002\u0f33\u0f34\u0007\u08ab\u0002\u0002",
+ "\u0f34\u0157\u0003\u0002\u0002\u0002\u0f35\u0f36\u0007\u0161\u0002\u0002",
+ "\u0f36\u0f37\u0007\u05d3\u0002\u0002\u0f37\u0f38\u0005\u015a\u00ae\u0002",
+ "\u0f38\u0159\u0003\u0002\u0002\u0002\u0f39\u0f3a\u0007\u08ab\u0002\u0002",
+ "\u0f3a\u015b\u0003\u0002\u0002\u0002\u0f3b\u0f3c\u0007\u084b\u0002\u0002",
+ "\u0f3c\u0f3d\t\u001e\u0002\u0002\u0f3d\u0f3e\u0007\u031e\u0002\u0002",
+ "\u0f3e\u0f3f\u0007\u063b\u0002\u0002\u0f3f\u0f40\u0007\u0778\u0002\u0002",
+ "\u0f40\u015d\u0003\u0002\u0002\u0002\u0f41\u0f42\u0006\u00b0\u0002\u0002",
+ "\u0f42\u0f6e\u0007O\u0002\u0002\u0f43\u0f44\u0007\u04f5\u0002\u0002",
+ "\u0f44\u0f4e\u0005\u0160\u00b1\u0002\u0f45\u0f46\t\u001f\u0002\u0002",
+ "\u0f46\u0f4b\u0005\u016c\u00b7\u0002\u0f47\u0f48\u0007\u08b7\u0002\u0002",
+ "\u0f48\u0f4a\u0005\u016c\u00b7\u0002\u0f49\u0f47\u0003\u0002\u0002\u0002",
+ "\u0f4a\u0f4d\u0003\u0002\u0002\u0002\u0f4b\u0f49\u0003\u0002\u0002\u0002",
+ "\u0f4b\u0f4c\u0003\u0002\u0002\u0002\u0f4c\u0f4f\u0003\u0002\u0002\u0002",
+ "\u0f4d\u0f4b\u0003\u0002\u0002\u0002\u0f4e\u0f45\u0003\u0002\u0002\u0002",
+ "\u0f4e\u0f4f\u0003\u0002\u0002\u0002\u0f4f\u0f55\u0003\u0002\u0002\u0002",
+ "\u0f50\u0f52\u0007\u0842\u0002\u0002\u0f51\u0f53\u0007\u0433\u0002\u0002",
+ "\u0f52\u0f51\u0003\u0002\u0002\u0002\u0f52\u0f53\u0003\u0002\u0002\u0002",
+ "\u0f53\u0f54\u0003\u0002\u0002\u0002\u0f54\u0f56\u0007\u0653\u0002\u0002",
+ "\u0f55\u0f50\u0003\u0002\u0002\u0002\u0f55\u0f56\u0003\u0002\u0002\u0002",
+ "\u0f56\u0f6f\u0003\u0002\u0002\u0002\u0f57\u0f58\u0007\u010b\u0002\u0002",
+ "\u0f58\u0f59\u0007\u0372\u0002\u0002\u0f59\u0f5a\u0005\u0204\u0103\u0002",
+ "\u0f5a\u0f5b\u0007N\u0002\u0002\u0f5b\u0f60\u0005\u0556\u02ac\u0002",
+ "\u0f5c\u0f5d\u0007\u08b7\u0002\u0002\u0f5d\u0f5f\u0005\u0556\u02ac\u0002",
+ "\u0f5e\u0f5c\u0003\u0002\u0002\u0002\u0f5f\u0f62\u0003\u0002\u0002\u0002",
+ "\u0f60\u0f5e\u0003\u0002\u0002\u0002\u0f60\u0f61\u0003\u0002\u0002\u0002",
+ "\u0f61\u0f6c\u0003\u0002\u0002\u0002\u0f62\u0f60\u0003\u0002\u0002\u0002",
+ "\u0f63\u0f64\u0007\u0094\u0002\u0002\u0f64\u0f69\u0005\u016c\u00b7\u0002",
+ "\u0f65\u0f66\u0007\u08b7\u0002\u0002\u0f66\u0f68\u0005\u016c\u00b7\u0002",
+ "\u0f67\u0f65\u0003\u0002\u0002\u0002\u0f68\u0f6b\u0003\u0002\u0002\u0002",
+ "\u0f69\u0f67\u0003\u0002\u0002\u0002\u0f69\u0f6a\u0003\u0002\u0002\u0002",
+ "\u0f6a\u0f6d\u0003\u0002\u0002\u0002\u0f6b\u0f69\u0003\u0002\u0002\u0002",
+ "\u0f6c\u0f63\u0003\u0002\u0002\u0002\u0f6c\u0f6d\u0003\u0002\u0002\u0002",
+ "\u0f6d\u0f6f\u0003\u0002\u0002\u0002\u0f6e\u0f43\u0003\u0002\u0002\u0002",
+ "\u0f6e\u0f57\u0003\u0002\u0002\u0002\u0f6f\u0f70\u0003\u0002\u0002\u0002",
+ "\u0f70\u0f71\u0007\u08c3\u0002\u0002\u0f71\u015f\u0003\u0002\u0002\u0002",
+ "\u0f72\u0f73\u0005\u05d0\u02e9\u0002\u0f73\u0161\u0003\u0002\u0002\u0002",
+ "\u0f74\u0f7f\u0007O\u0002\u0002\u0f75\u0f7a\u0005\u0168\u00b5\u0002",
+ "\u0f76\u0f7b\u0005\u016a\u00b6\u0002\u0f77\u0f78\u0007\u028e\u0002\u0002",
+ "\u0f78\u0f79\u0007\u05e4\u0002\u0002\u0f79\u0f7b\u0007\u0130\u0002\u0002",
+ "\u0f7a\u0f76\u0003\u0002\u0002\u0002\u0f7a\u0f77\u0003\u0002\u0002\u0002",
+ "\u0f7a\u0f7b\u0003\u0002\u0002\u0002\u0f7b\u0f80\u0003\u0002\u0002\u0002",
+ "\u0f7c\u0f80\u0005\u016e\u00b8\u0002\u0f7d\u0f80\u0007\u0387\u0002\u0002",
+ "\u0f7e\u0f80\u0005\u0164\u00b3\u0002\u0f7f\u0f75\u0003\u0002\u0002\u0002",
+ "\u0f7f\u0f7c\u0003\u0002\u0002\u0002\u0f7f\u0f7d\u0003\u0002\u0002\u0002",
+ "\u0f7f\u0f7e\u0003\u0002\u0002\u0002\u0f80\u0f83\u0003\u0002\u0002\u0002",
+ "\u0f81\u0f82\u0007\u0094\u0002\u0002\u0f82\u0f84\t \u0002\u0002\u0f83",
+ "\u0f81\u0003\u0002\u0002\u0002\u0f83\u0f84\u0003\u0002\u0002\u0002\u0f84",
+ "\u0f8a\u0003\u0002\u0002\u0002\u0f85\u0f87\u0007\u0842\u0002\u0002\u0f86",
+ "\u0f88\u0007\u0433\u0002\u0002\u0f87\u0f86\u0003\u0002\u0002\u0002\u0f87",
+ "\u0f88\u0003\u0002\u0002\u0002\u0f88\u0f89\u0003\u0002\u0002\u0002\u0f89",
+ "\u0f8b\u0007\u0653\u0002\u0002\u0f8a\u0f85\u0003\u0002\u0002\u0002\u0f8a",
+ "\u0f8b\u0003\u0002\u0002\u0002\u0f8b\u0f8d\u0003\u0002\u0002\u0002\u0f8c",
+ "\u0f8e\u0005\u0166\u00b4\u0002\u0f8d\u0f8c\u0003\u0002\u0002\u0002\u0f8d",
+ "\u0f8e\u0003\u0002\u0002\u0002\u0f8e\u0f8f\u0003\u0002\u0002\u0002\u0f8f",
+ "\u0f90\u0007\u08c3\u0002\u0002\u0f90\u0163\u0003\u0002\u0002\u0002\u0f91",
+ "\u0f92\u0006\u00b3\u0003\u0002\u0f92\u0f93\u0007\u017f\u0002\u0002\u0f93",
+ "\u0f94\u0005\u016a\u00b6\u0002\u0f94\u0165\u0003\u0002\u0002\u0002\u0f95",
+ "\u0f96\u0006\u00b4\u0004\u0002\u0f96\u0f97\u0007\u0106\u0002\u0002\u0f97",
+ "\u0f98\u0007\u08c5\u0002\u0002\u0f98\u0f99\t!\u0002\u0002\u0f99\u0167",
+ "\u0003\u0002\u0002\u0002\u0f9a\u0fa0\u0005\u017a\u00be\u0002\u0f9b\u0f9d",
+ "\u0007%\u0002\u0002\u0f9c\u0f9e\u0007\u0627\u0002\u0002\u0f9d\u0f9c",
+ "\u0003\u0002\u0002\u0002\u0f9d\u0f9e\u0003\u0002\u0002\u0002\u0f9e\u0fa0",
+ "\u0003\u0002\u0002\u0002\u0f9f\u0f9a\u0003\u0002\u0002\u0002\u0f9f\u0f9b",
+ "\u0003\u0002\u0002\u0002\u0fa0\u0fab\u0003\u0002\u0002\u0002\u0fa1\u0fa7",
+ "\u0007\u08b7\u0002\u0002\u0fa2\u0fa8\u0005\u017a\u00be\u0002\u0fa3\u0fa5",
+ "\u0007%\u0002\u0002\u0fa4\u0fa6\u0007\u0627\u0002\u0002\u0fa5\u0fa4",
+ "\u0003\u0002\u0002\u0002\u0fa5\u0fa6\u0003\u0002\u0002\u0002\u0fa6\u0fa8",
+ "\u0003\u0002\u0002\u0002\u0fa7\u0fa2\u0003\u0002\u0002\u0002\u0fa7\u0fa3",
+ "\u0003\u0002\u0002\u0002\u0fa8\u0faa\u0003\u0002\u0002\u0002\u0fa9\u0fa1",
+ "\u0003\u0002\u0002\u0002\u0faa\u0fad\u0003\u0002\u0002\u0002\u0fab\u0fa9",
+ "\u0003\u0002\u0002\u0002\u0fab\u0fac\u0003\u0002\u0002\u0002\u0fac\u0fbf",
+ "\u0003\u0002\u0002\u0002\u0fad\u0fab\u0003\u0002\u0002\u0002\u0fae\u0fb2",
+ "\u0005\u05c6\u02e4\u0002\u0faf\u0fb0\u0007%\u0002\u0002\u0fb0\u0fb2",
+ "\u0007\u0522\u0002\u0002\u0fb1\u0fae\u0003\u0002\u0002\u0002\u0fb1\u0faf",
+ "\u0003\u0002\u0002\u0002\u0fb2\u0fbb\u0003\u0002\u0002\u0002\u0fb3\u0fb7",
+ "\u0007\u08b7\u0002\u0002\u0fb4\u0fb8\u0005\u05c6\u02e4\u0002\u0fb5\u0fb6",
+ "\u0007%\u0002\u0002\u0fb6\u0fb8\u0007\u0522\u0002\u0002\u0fb7\u0fb4",
+ "\u0003\u0002\u0002\u0002\u0fb7\u0fb5\u0003\u0002\u0002\u0002\u0fb8\u0fba",
+ "\u0003\u0002\u0002\u0002\u0fb9\u0fb3\u0003\u0002\u0002\u0002\u0fba\u0fbd",
+ "\u0003\u0002\u0002\u0002\u0fbb\u0fb9\u0003\u0002\u0002\u0002\u0fbb\u0fbc",
+ "\u0003\u0002\u0002\u0002\u0fbc\u0fbf\u0003\u0002\u0002\u0002\u0fbd\u0fbb",
+ "\u0003\u0002\u0002\u0002\u0fbe\u0f9f\u0003\u0002\u0002\u0002\u0fbe\u0fb1",
+ "\u0003\u0002\u0002\u0002\u0fbf\u0169\u0003\u0002\u0002\u0002\u0fc0\u0fc1",
+ "\u0007\u0094\u0002\u0002\u0fc1\u0fc6\u0005\u016c\u00b7\u0002\u0fc2\u0fc3",
+ "\u0007\u08b7\u0002\u0002\u0fc3\u0fc5\u0005\u016c\u00b7\u0002\u0fc4\u0fc2",
+ "\u0003\u0002\u0002\u0002\u0fc5\u0fc8\u0003\u0002\u0002\u0002\u0fc6\u0fc4",
+ "\u0003\u0002\u0002\u0002\u0fc6\u0fc7\u0003\u0002\u0002\u0002\u0fc7\u016b",
+ "\u0003\u0002\u0002\u0002\u0fc8\u0fc6\u0003\u0002\u0002\u0002\u0fc9\u0fca",
+ "\u0005\u05d6\u02ec\u0002\u0fca\u016d\u0003\u0002\u0002\u0002\u0fcb\u0fd0",
+ "\u0005\u0170\u00b9\u0002\u0fcc\u0fcd\u0007\u08b7\u0002\u0002\u0fcd\u0fcf",
+ "\u0005\u0170\u00b9\u0002\u0fce\u0fcc\u0003\u0002\u0002\u0002\u0fcf\u0fd2",
+ "\u0003\u0002\u0002\u0002\u0fd0\u0fce\u0003\u0002\u0002\u0002\u0fd0\u0fd1",
+ "\u0003\u0002\u0002\u0002\u0fd1\u0fd5\u0003\u0002\u0002\u0002\u0fd2\u0fd0",
+ "\u0003\u0002\u0002\u0002\u0fd3\u0fd5\u0007%\u0002\u0002\u0fd4\u0fcb",
+ "\u0003\u0002\u0002\u0002\u0fd4\u0fd3\u0003\u0002\u0002\u0002\u0fd5\u0fd6",
+ "\u0003\u0002\u0002\u0002\u0fd6\u0fd7\u0005\u0172\u00ba\u0002\u0fd7\u016f",
+ "\u0003\u0002\u0002\u0002\u0fd8\u0fd9\t\"\u0002\u0002\u0fd9\u0171\u0003",
+ "\u0002\u0002\u0002\u0fda\u0fe7\u0007\u046a\u0002\u0002\u0fdb\u0fe8\u0005",
+ "\u0176\u00bc\u0002\u0fdc\u0fdd\u0007\u017e\u0002\u0002\u0fdd\u0fe8\u0005",
+ "\u05d6\u02ec\u0002\u0fde\u0fdf\u0007\u034b\u0002\u0002\u0fdf\u0fe0\u0007",
+ "\u0358\u0002\u0002\u0fe0\u0fe8\u0005\u0174\u00bb\u0002\u0fe1\u0fe2\u0006",
+ "\u00ba\u0005\u0002\u0fe2\u0fe3\u0007\u0617\u0002\u0002\u0fe3\u0fe4\u0007",
+ "\u07b9\u0002\u0002\u0fe4\u0fe5\u0007\u0526\u0002\u0002\u0fe5\u0fe8\u0005",
+ "\u0178\u00bd\u0002\u0fe6\u0fe8\u0007\u0161\u0002\u0002\u0fe7\u0fdb\u0003",
+ "\u0002\u0002\u0002\u0fe7\u0fdc\u0003\u0002\u0002\u0002\u0fe7\u0fde\u0003",
+ "\u0002\u0002\u0002\u0fe7\u0fe1\u0003\u0002\u0002\u0002\u0fe7\u0fe6\u0003",
+ "\u0002\u0002\u0002\u0fe8\u0173\u0003\u0002\u0002\u0002\u0fe9\u0fea\u0005",
+ "\u05d2\u02ea\u0002\u0fea\u0feb\u0007\u08aa\u0002\u0002\u0feb\u0fed\u0003",
+ "\u0002\u0002\u0002\u0fec\u0fe9\u0003\u0002\u0002\u0002\u0fec\u0fed\u0003",
+ "\u0002\u0002\u0002\u0fed\u0fee\u0003\u0002\u0002\u0002\u0fee\u0fef\u0005",
+ "\u05d2\u02ea\u0002\u0fef\u0175\u0003\u0002\u0002\u0002\u0ff0\u0ff1\u0005",
+ "\u05d2\u02ea\u0002\u0ff1\u0ff2\u0007\u08aa\u0002\u0002\u0ff2\u0ff4\u0003",
+ "\u0002\u0002\u0002\u0ff3\u0ff0\u0003\u0002\u0002\u0002\u0ff3\u0ff4\u0003",
+ "\u0002\u0002\u0002\u0ff4\u0ff5\u0003\u0002\u0002\u0002\u0ff5\u0ff6\u0005",
+ "\u05d2\u02ea\u0002\u0ff6\u0177\u0003\u0002\u0002\u0002\u0ff7\u0ff8\u0005",
+ "\u05d2\u02ea\u0002\u0ff8\u0ff9\u0007\u08aa\u0002\u0002\u0ff9\u0ffb\u0003",
+ "\u0002\u0002\u0002\u0ffa\u0ff7\u0003\u0002\u0002\u0002\u0ffa\u0ffb\u0003",
+ "\u0002\u0002\u0002\u0ffb\u0ffc\u0003\u0002\u0002\u0002\u0ffc\u0ffd\u0005",
+ "\u05d2\u02ea\u0002\u0ffd\u0179\u0003\u0002\u0002\u0002\u0ffe\u0fff\u0007",
+ ")\u0002\u0002\u0fff\u1045\u0007\u06f5\u0002\u0002\u1000\u1045\u0007",
+ "\u00c7\u0002\u0002\u1001\u1045\u0007\u010b\u0002\u0002\u1002\u1003\u0007",
+ "\u013e\u0002\u0002\u1003\u1045\u0007\u02fa\u0002\u0002\u1004\u1045\u0007",
+ "\u017b\u0002\u0002\u1005\u1045\u0007\u017e\u0002\u0002\u1006\u1045\u0007",
+ "\u0279\u0002\u0002\u1007\u1008\u0007\u032b\u0002\u0002\u1008\u1045\u0007",
+ "\u0835\u0002\u0002\u1009\u100a\u0007\u0433\u0002\u0002\u100a\u1045\u0007",
+ "\u01e0\u0002\u0002\u100b\u1045\u0007\u049e\u0002\u0002\u100c\u100d\u0006",
+ "\u00be\u0006\u0002\u100d\u100e\u0007\u04f3\u0002\u0002\u100e\u1045\u0007",
+ "\u013e\u0002\u0002\u100f\u1045\u0007\u0524\u0002\u0002\u1010\u1045\u0007",
+ "\u0526\u0002\u0002\u1011\u1012\u0007\u052e\u0002\u0002\u1012\u1013\u0007",
+ "\u013e\u0002\u0002\u1013\u1045\u0007\u02fa\u0002\u0002\u1014\u1015\u0007",
+ "\u052e\u0002\u0002\u1015\u1045\u0007\u065d\u0002\u0002\u1016\u1045\u0007",
+ "\u05a0\u0002\u0002\u1017\u1018\u0007\u05a3\u0002\u0002\u1018\u1045\u0007",
+ "\u05d2\u0002\u0002\u1019\u1045\u0007\u05da\u0002\u0002\u101a\u1045\u0007",
+ "\u05e4\u0002\u0002\u101b\u1045\u0007\u065d\u0002\u0002\u101c\u101d\u0007",
+ "\u06f5\u0002\u0002\u101d\u1045\u0007O\u0002\u0002\u101e\u101f\u0007",
+ "\u06f5\u0002\u0002\u101f\u1045\u0007\u023d\u0002\u0002\u1020\u1045\u0007",
+ "\u077a\u0002\u0002\u1021\u1045\u0007\u0777\u0002\u0002\u1022\u1045\u0007",
+ "\u07bc\u0002\u0002\u1023\u1045\u0007\u07c5\u0002\u0002\u1024\u1045\u0007",
+ "\u0809\u0002\u0002\u1025\u1045\u0007\u0835\u0002\u0002\u1026\u1027\u0007",
+ ")\u0002\u0002\u1027\u1045\u0007\u05da\u0002\u0002\u1028\u1029\u0007",
+ ")\u0002\u0002\u1029\u1045\u0007\u077a\u0002\u0002\u102a\u102b\u0007",
+ "\u00db\u0002\u0002\u102b\u1045\u0007\u077a\u0002\u0002\u102c\u102d\u0007",
+ "\u016c\u0002\u0002\u102d\u1045\u0007\u077a\u0002\u0002\u102e\u102f\u0007",
+ "\u01dd\u0002\u0002\u102f\u1045\u0007\u0524\u0002\u0002\u1030\u1031\u0007",
+ "\u023d\u0002\u0002\u1031\u1045\u0007\u017e\u0002\u0002\u1032\u1033\u0007",
+ "\u023d\u0002\u0002\u1033\u1045\u0007\u0524\u0002\u0002\u1034\u1035\u0007",
+ "\u023d\u0002\u0002\u1035\u1045\u0007\u05da\u0002\u0002\u1036\u1037\u0007",
+ "\u023d\u0002\u0002\u1037\u1045\u0007\u077a\u0002\u0002\u1038\u1039\u0007",
+ "\u023d\u0002\u0002\u1039\u1045\u0007\u07c5\u0002\u0002\u103a\u103b\u0007",
+ "\u029f\u0002\u0002\u103b\u1045\u0007\u077a\u0002\u0002\u103c\u103d\u0007",
+ "\u030a\u0002\u0002\u103d\u1045\u0007\u077a\u0002\u0002\u103e\u103f\u0007",
+ "\u05d4\u0002\u0002\u103f\u1045\u0007\u05da\u0002\u0002\u1040\u1041\u0007",
+ "\u05d4\u0002\u0002\u1041\u1045\u0007\u077a\u0002\u0002\u1042\u1043\u0007",
+ "\u07eb\u0002\u0002\u1043\u1045\u0007\u077a\u0002\u0002\u1044\u0ffe\u0003",
+ "\u0002\u0002\u0002\u1044\u1000\u0003\u0002\u0002\u0002\u1044\u1001\u0003",
+ "\u0002\u0002\u0002\u1044\u1002\u0003\u0002\u0002\u0002\u1044\u1004\u0003",
+ "\u0002\u0002\u0002\u1044\u1005\u0003\u0002\u0002\u0002\u1044\u1006\u0003",
+ "\u0002\u0002\u0002\u1044\u1007\u0003\u0002\u0002\u0002\u1044\u1009\u0003",
+ "\u0002\u0002\u0002\u1044\u100b\u0003\u0002\u0002\u0002\u1044\u100c\u0003",
+ "\u0002\u0002\u0002\u1044\u100f\u0003\u0002\u0002\u0002\u1044\u1010\u0003",
+ "\u0002\u0002\u0002\u1044\u1011\u0003\u0002\u0002\u0002\u1044\u1014\u0003",
+ "\u0002\u0002\u0002\u1044\u1016\u0003\u0002\u0002\u0002\u1044\u1017\u0003",
+ "\u0002\u0002\u0002\u1044\u1019\u0003\u0002\u0002\u0002\u1044\u101a\u0003",
+ "\u0002\u0002\u0002\u1044\u101b\u0003\u0002\u0002\u0002\u1044\u101c\u0003",
+ "\u0002\u0002\u0002\u1044\u101e\u0003\u0002\u0002\u0002\u1044\u1020\u0003",
+ "\u0002\u0002\u0002\u1044\u1021\u0003\u0002\u0002\u0002\u1044\u1022\u0003",
+ "\u0002\u0002\u0002\u1044\u1023\u0003\u0002\u0002\u0002\u1044\u1024\u0003",
+ "\u0002\u0002\u0002\u1044\u1025\u0003\u0002\u0002\u0002\u1044\u1026\u0003",
+ "\u0002\u0002\u0002\u1044\u1028\u0003\u0002\u0002\u0002\u1044\u102a\u0003",
+ "\u0002\u0002\u0002\u1044\u102c\u0003\u0002\u0002\u0002\u1044\u102e\u0003",
+ "\u0002\u0002\u0002\u1044\u1030\u0003\u0002\u0002\u0002\u1044\u1032\u0003",
+ "\u0002\u0002\u0002\u1044\u1034\u0003\u0002\u0002\u0002\u1044\u1036\u0003",
+ "\u0002\u0002\u0002\u1044\u1038\u0003\u0002\u0002\u0002\u1044\u103a\u0003",
+ "\u0002\u0002\u0002\u1044\u103c\u0003\u0002\u0002\u0002\u1044\u103e\u0003",
+ "\u0002\u0002\u0002\u1044\u1040\u0003\u0002\u0002\u0002\u1044\u1042\u0003",
+ "\u0002\u0002\u0002\u1045\u017b\u0003\u0002\u0002\u0002\u1046\u1047\u0007",
+ "\u019d\u0002\u0002\u1047\u1048\u0007\u0279\u0002\u0002\u1048\u1049\u0005",
+ "\u0588\u02c5\u0002\u1049\u104a\u0007\u08c3\u0002\u0002\u104a\u017d\u0003",
+ "\u0002\u0002\u0002\u104b\u104c\u0007\u057e\u0002\u0002\u104c\u104d\u0005",
+ "\u0176\u00bc\u0002\u104d\u104e\u0007\u07ae\u0002\u0002\u104e\u104f\u0005",
+ "\u0176\u00bc\u0002\u104f\u1050\u0007\u08c3\u0002\u0002\u1050\u017f\u0003",
+ "\u0002\u0002\u0002\u1051\u105d\u0007\u023d\u0002\u0002\u1052\u1054\u0007",
+ "\u08b7\u0002\u0002\u1053\u1052\u0003\u0002\u0002\u0002\u1053\u1054\u0003",
+ "\u0002\u0002\u0002\u1054\u105b\u0003\u0002\u0002\u0002\u1055\u105c\u0005",
+ "\u0574\u02bb\u0002\u1056\u105c\u0005\u05c6\u02e4\u0002\u1057\u1059\u0005",
+ "\u05c4\u02e3\u0002\u1058\u105a\u0005\u05a6\u02d4\u0002\u1059\u1058\u0003",
+ "\u0002\u0002\u0002\u1059\u105a\u0003\u0002\u0002\u0002\u105a\u105c\u0003",
+ "\u0002\u0002\u0002\u105b\u1055\u0003\u0002\u0002\u0002\u105b\u1056\u0003",
+ "\u0002\u0002\u0002\u105b\u1057\u0003\u0002\u0002\u0002\u105c\u105e\u0003",
+ "\u0002\u0002\u0002\u105d\u1053\u0003\u0002\u0002\u0002\u105e\u105f\u0003",
+ "\u0002\u0002\u0002\u105f\u105d\u0003\u0002\u0002\u0002\u105f\u1060\u0003",
+ "\u0002\u0002\u0002\u1060\u1063\u0003\u0002\u0002\u0002\u1061\u1062\u0007",
+ "\u046a\u0002\u0002\u1062\u1064\u0005\u05a2\u02d2\u0002\u1063\u1061\u0003",
+ "\u0002\u0002\u0002\u1063\u1064\u0003\u0002\u0002\u0002\u1064\u1065\u0003",
+ "\u0002\u0002\u0002\u1065\u1068\u0007\u07ae\u0002\u0002\u1066\u1069\u0005",
+ "\u0572\u02ba\u0002\u1067\u1069\u0007\u052e\u0002\u0002\u1068\u1066\u0003",
+ "\u0002\u0002\u0002\u1068\u1067\u0003\u0002\u0002\u0002\u1069\u1071\u0003",
+ "\u0002\u0002\u0002\u106a\u106d\u0007\u08b7\u0002\u0002\u106b\u106e\u0005",
+ "\u0572\u02ba\u0002\u106c\u106e\u0007\u052e\u0002\u0002\u106d\u106b\u0003",
+ "\u0002\u0002\u0002\u106d\u106c\u0003\u0002\u0002\u0002\u106e\u1070\u0003",
+ "\u0002\u0002\u0002\u106f\u106a\u0003\u0002\u0002\u0002\u1070\u1073\u0003",
+ "\u0002\u0002\u0002\u1071\u106f\u0003\u0002\u0002\u0002\u1071\u1072\u0003",
+ "\u0002\u0002\u0002\u1072\u1077\u0003\u0002\u0002\u0002\u1073\u1071\u0003",
+ "\u0002\u0002\u0002\u1074\u1075\u0007\u084b\u0002\u0002\u1075\u1076\t",
+ "#\u0002\u0002\u1076\u1078\u0007\u0477\u0002\u0002\u1077\u1074\u0003",
+ "\u0002\u0002\u0002\u1077\u1078\u0003\u0002\u0002\u0002\u1078\u107c\u0003",
+ "\u0002\u0002\u0002\u1079\u107a\u0007\u084b\u0002\u0002\u107a\u107b\u0007",
+ "\u0253\u0002\u0002\u107b\u107d\u0007\u0477\u0002\u0002\u107c\u1079\u0003",
+ "\u0002\u0002\u0002\u107c\u107d\u0003\u0002\u0002\u0002\u107d\u1081\u0003",
+ "\u0002\u0002\u0002\u107e\u107f\u0007\u084b\u0002\u0002\u107f\u1080\u0007",
+ "\u023d\u0002\u0002\u1080\u1082\u0007\u0477\u0002\u0002\u1081\u107e\u0003",
+ "\u0002\u0002\u0002\u1081\u1082\u0003\u0002\u0002\u0002\u1082\u1084\u0003",
+ "\u0002\u0002\u0002\u1083\u1085\u0005\u0182\u00c2\u0002\u1084\u1083\u0003",
+ "\u0002\u0002\u0002\u1084\u1085\u0003\u0002\u0002\u0002\u1085\u1086\u0003",
+ "\u0002\u0002\u0002\u1086\u1087\u0007\u08c3\u0002\u0002\u1087\u0181\u0003",
+ "\u0002\u0002\u0002\u1088\u1089\u0007\u0106\u0002\u0002\u1089\u108a\u0007",
+ "\u08c5\u0002\u0002\u108a\u108b\t!\u0002\u0002\u108b\u0183\u0003\u0002",
+ "\u0002\u0002\u108c\u108f\u0007\u0122\u0002\u0002\u108d\u108e\u0007\u0496",
+ "\u0002\u0002\u108e\u1090\u0007\u0581\u0002\u0002\u108f\u108d\u0003\u0002",
+ "\u0002\u0002\u108f\u1090\u0003\u0002\u0002\u0002\u1090\u1091\u0003\u0002",
+ "\u0002\u0002\u1091\u1092\u0007\u017e\u0002\u0002\u1092\u1093\u0005\u0186",
+ "\u00c4\u0002\u1093\u1094\u0007?\u0002\u0002\u1094\u1095\u0005\u0188",
+ "\u00c5\u0002\u1095\u1096\u0007\u08c3\u0002\u0002\u1096\u0185\u0003\u0002",
+ "\u0002\u0002\u1097\u1098\u0005\u05d6\u02ec\u0002\u1098\u0187\u0003\u0002",
+ "\u0002\u0002\u1099\u109a\u0007\u08ad\u0002\u0002\u109a\u0189\u0003\u0002",
+ "\u0002\u0002\u109b\u109c\u0007)\u0002\u0002\u109c\u109d\u0007\u02ef",
+ "\u0002\u0002\u109d\u10ad\u0005\u0194\u00cb\u0002\u109e\u10a0\u0007\u00e1",
+ "\u0002\u0002\u109f\u10a1\u0005\u018e\u00c8\u0002\u10a0\u109f\u0003\u0002",
+ "\u0002\u0002\u10a0\u10a1\u0003\u0002\u0002\u0002\u10a1\u10a5\u0003\u0002",
+ "\u0002\u0002\u10a2\u10a4\u0005\u0190\u00c9\u0002\u10a3\u10a2\u0003\u0002",
+ "\u0002\u0002\u10a4\u10a7\u0003\u0002\u0002\u0002\u10a5\u10a3\u0003\u0002",
+ "\u0002\u0002\u10a5\u10a6\u0003\u0002\u0002\u0002\u10a6\u10aa\u0003\u0002",
+ "\u0002\u0002\u10a7\u10a5\u0003\u0002\u0002\u0002\u10a8\u10a9\u0007\u059a",
+ "\u0002\u0002\u10a9\u10ab\u0007\u05ea\u0002\u0002\u10aa\u10a8\u0003\u0002",
+ "\u0002\u0002\u10aa\u10ab\u0003\u0002\u0002\u0002\u10ab\u10ae\u0003\u0002",
+ "\u0002\u0002\u10ac\u10ae\u0005\u018c\u00c7\u0002\u10ad\u109e\u0003\u0002",
+ "\u0002\u0002\u10ad\u10ac\u0003\u0002\u0002\u0002\u10ae\u10af\u0003\u0002",
+ "\u0002\u0002\u10af\u10b0\u0007\u08c3\u0002\u0002\u10b0\u018b\u0003\u0002",
+ "\u0002\u0002\u10b1\u10b2\u0006\u00c7\u0007\u0002\u10b2\u10b3\t$\u0002",
+ "\u0002\u10b3\u018d\u0003\u0002\u0002\u0002\u10b4\u10b5\u0006\u00c8\b",
+ "\u0002\u10b5\u10b6\u0007\u0156\u0002\u0002\u10b6\u018f\u0003\u0002\u0002",
+ "\u0002\u10b7\u10b8\u0005\u0566\u02b4\u0002\u10b8\u10b9\u0007\u08c5\u0002",
+ "\u0002\u10b9\u10ba\u0005\u0192\u00ca\u0002\u10ba\u0191\u0003\u0002\u0002",
+ "\u0002\u10bb\u10bc\u0005\u05d6\u02ec\u0002\u10bc\u0193\u0003\u0002\u0002",
+ "\u0002\u10bd\u10be\u0005\u05d6\u02ec\u0002\u10be\u10bf\u0007\u08aa\u0002",
+ "\u0002\u10bf\u10c1\u0003\u0002\u0002\u0002\u10c0\u10bd\u0003\u0002\u0002",
+ "\u0002\u10c0\u10c1\u0003\u0002\u0002\u0002\u10c1\u10c2\u0003\u0002\u0002",
+ "\u0002\u10c2\u10c3\u0005\u05d6\u02ec\u0002\u10c3\u0195\u0003\u0002\u0002",
+ "\u0002\u10c4\u10c5\u0007)\u0002\u0002\u10c5\u10c6\u0007\u0835\u0002",
+ "\u0002\u10c6\u10e7\u0005\u0594\u02cb\u0002\u10c7\u10c8\u0007\u0014\u0002",
+ "\u0002\u10c8\u10e8\u0005\u01a8\u00d5\u0002\u10c9\u10ca\u0007\u0361\u0002",
+ "\u0002\u10ca\u10cb\u0007\u0103\u0002\u0002\u10cb\u10cc\u0005\u0576\u02bc",
+ "\u0002\u10cc\u10cd\t%\u0002\u0002\u10cd\u10e8\u0003\u0002\u0002\u0002",
+ "\u10ce\u10df\u0007\u019d\u0002\u0002\u10cf\u10d0\u0007\u0103\u0002\u0002",
+ "\u10d0\u10e0\u0005\u0576\u02bc\u0002\u10d1\u10d2\u0007\u051a\u0002\u0002",
+ "\u10d2\u10e0\u0007\u02d4\u0002\u0002\u10d3\u10d4\u0007\u07d4\u0002\u0002",
+ "\u10d4\u10d5\u0007\u08b1\u0002\u0002\u10d5\u10da\u0005\u0592\u02ca\u0002",
+ "\u10d6\u10d7\u0007\u08b7\u0002\u0002\u10d7\u10d9\u0005\u0592\u02ca\u0002",
+ "\u10d8\u10d6\u0003\u0002\u0002\u0002\u10d9\u10dc\u0003\u0002\u0002\u0002",
+ "\u10da\u10d8\u0003\u0002\u0002\u0002\u10da\u10db\u0003\u0002\u0002\u0002",
+ "\u10db\u10dd\u0003\u0002\u0002\u0002\u10dc\u10da\u0003\u0002\u0002\u0002",
+ "\u10dd\u10de\u0007\u08b2\u0002\u0002\u10de\u10e0\u0003\u0002\u0002\u0002",
+ "\u10df\u10cf\u0003\u0002\u0002\u0002\u10df\u10d1\u0003\u0002\u0002\u0002",
+ "\u10df\u10d3\u0003\u0002\u0002\u0002\u10e0\u10e8\u0003\u0002\u0002\u0002",
+ "\u10e1\u10e8\u0007\u00e1\u0002\u0002\u10e2\u10e3\u0007\u054b\u0002\u0002",
+ "\u10e3\u10e8\t&\u0002\u0002\u10e4\u10e6\u0005\u0198\u00cd\u0002\u10e5",
+ "\u10e4\u0003\u0002\u0002\u0002\u10e5\u10e6\u0003\u0002\u0002\u0002\u10e6",
+ "\u10e8\u0003\u0002\u0002\u0002\u10e7\u10c7\u0003\u0002\u0002\u0002\u10e7",
+ "\u10c9\u0003\u0002\u0002\u0002\u10e7\u10ce\u0003\u0002\u0002\u0002\u10e7",
+ "\u10e1\u0003\u0002\u0002\u0002\u10e7\u10e2\u0003\u0002\u0002\u0002\u10e7",
+ "\u10e5\u0003\u0002\u0002\u0002\u10e8\u10e9\u0003\u0002\u0002\u0002\u10e9",
+ "\u10ea\u0007\u08c3\u0002\u0002\u10ea\u0197\u0003\u0002\u0002\u0002\u10eb",
+ "\u10ec\u0006\u00cd\t\u0002\u10ec\u10ed\t$\u0002\u0002\u10ed\u0199\u0003",
+ "\u0002\u0002\u0002\u10ee\u10f1\u0007\u0122\u0002\u0002\u10ef\u10f0\u0007",
+ "\u0496\u0002\u0002\u10f0\u10f2\u0007\u0581\u0002\u0002\u10f1\u10ef\u0003",
+ "\u0002\u0002\u0002\u10f1\u10f2\u0003\u0002\u0002\u0002\u10f2\u10f7\u0003",
+ "\u0002\u0002\u0002\u10f3\u10f5\u0007\u0496\u0002\u0002\u10f4\u10f3\u0003",
+ "\u0002\u0002\u0002\u10f4\u10f5\u0003\u0002\u0002\u0002\u10f5\u10f6\u0003",
+ "\u0002\u0002\u0002\u10f6\u10f8\u0007\u0220\u0002\u0002\u10f7\u10f4\u0003",
+ "\u0002\u0002\u0002\u10f7\u10f8\u0003\u0002\u0002\u0002\u10f8\u10fa\u0003",
+ "\u0002\u0002\u0002\u10f9\u10fb\u0007\u01a9\u0002\u0002\u10fa\u10f9\u0003",
+ "\u0002\u0002\u0002\u10fa\u10fb\u0003\u0002\u0002\u0002\u10fb\u10fd\u0003",
+ "\u0002\u0002\u0002\u10fc\u10fe\u0007\u01ab\u0002\u0002\u10fd\u10fc\u0003",
+ "\u0002\u0002\u0002\u10fd\u10fe\u0003\u0002\u0002\u0002\u10fe\u10ff\u0003",
+ "\u0002\u0002\u0002\u10ff\u1100\u0007\u0835\u0002\u0002\u1100\u1102\u0005",
+ "\u0594\u02cb\u0002\u1101\u1103\u0005\u019c\u00cf\u0002\u1102\u1101\u0003",
+ "\u0002\u0002\u0002\u1102\u1103\u0003\u0002\u0002\u0002\u1103\u1104\u0003",
+ "\u0002\u0002\u0002\u1104\u1105\u0007?\u0002\u0002\u1105\u1107\u0005",
+ "\u0412\u020a\u0002\u1106\u1108\u0005\u04ca\u0266\u0002\u1107\u1106\u0003",
+ "\u0002\u0002\u0002\u1107\u1108\u0003\u0002\u0002\u0002\u1108\u019b\u0003",
+ "\u0002\u0002\u0002\u1109\u110c\u0005\u019e\u00d0\u0002\u110a\u110c\u0005",
+ "\u01a0\u00d1\u0002\u110b\u1109\u0003\u0002\u0002\u0002\u110b\u110a\u0003",
+ "\u0002\u0002\u0002\u110c\u019d\u0003\u0002\u0002\u0002\u110d\u111b\u0007",
+ "\u08b1\u0002\u0002\u110e\u1110\u0007\u08b7\u0002\u0002\u110f\u110e\u0003",
+ "\u0002\u0002\u0002\u110f\u1110\u0003\u0002\u0002\u0002\u1110\u1119\u0003",
+ "\u0002\u0002\u0002\u1111\u1115\u0005\u054c\u02a7\u0002\u1112\u1114\u0005",
+ "\u01a2\u00d2\u0002\u1113\u1112\u0003\u0002\u0002\u0002\u1114\u1117\u0003",
+ "\u0002\u0002\u0002\u1115\u1113\u0003\u0002\u0002\u0002\u1115\u1116\u0003",
+ "\u0002\u0002\u0002\u1116\u111a\u0003\u0002\u0002\u0002\u1117\u1115\u0003",
+ "\u0002\u0002\u0002\u1118\u111a\u0005\u01a8\u00d5\u0002\u1119\u1111\u0003",
+ "\u0002\u0002\u0002\u1119\u1118\u0003\u0002\u0002\u0002\u111a\u111c\u0003",
+ "\u0002\u0002\u0002\u111b\u110f\u0003\u0002\u0002\u0002\u111c\u111d\u0003",
+ "\u0002\u0002\u0002\u111d\u111b\u0003\u0002\u0002\u0002\u111d\u111e\u0003",
+ "\u0002\u0002\u0002\u111e\u111f\u0003\u0002\u0002\u0002\u111f\u1120\u0007",
+ "\u08b2\u0002\u0002\u1120\u019f\u0003\u0002\u0002\u0002\u1121\u1122\u0007",
+ "\u045d\u0002\u0002\u1122\u1135\u0005\u057a\u02be\u0002\u1123\u1124\u0007",
+ "\u084b\u0002\u0002\u1124\u1125\u0007\u0455\u0002\u0002\u1125\u1131\t",
+ "\'\u0002\u0002\u1126\u1132\u0007\u0161\u0002\u0002\u1127\u1128\u0007",
+ "\u08b1\u0002\u0002\u1128\u112d\u0007\u08ce\u0002\u0002\u1129\u112a\u0007",
+ "\u08b7\u0002\u0002\u112a\u112c\u0007\u08ce\u0002\u0002\u112b\u1129\u0003",
+ "\u0002\u0002\u0002\u112c\u112f\u0003\u0002\u0002\u0002\u112d\u112b\u0003",
+ "\u0002\u0002\u0002\u112d\u112e\u0003\u0002\u0002\u0002\u112e\u1130\u0003",
+ "\u0002\u0002\u0002\u112f\u112d\u0003\u0002\u0002\u0002\u1130\u1132\u0007",
+ "\u08b2\u0002\u0002\u1131\u1126\u0003\u0002\u0002\u0002\u1131\u1127\u0003",
+ "\u0002\u0002\u0002\u1132\u1136\u0003\u0002\u0002\u0002\u1133\u1134\u0007",
+ "\u07cf\u0002\u0002\u1134\u1136\u0005\u0594\u02cb\u0002\u1135\u1123\u0003",
+ "\u0002\u0002\u0002\u1135\u1133\u0003\u0002\u0002\u0002\u1136\u1148\u0003",
+ "\u0002\u0002\u0002\u1137\u1140\u0007\u08b1\u0002\u0002\u1138\u113a\u0007",
+ "\u08b7\u0002\u0002\u1139\u1138\u0003\u0002\u0002\u0002\u1139\u113a\u0003",
+ "\u0002\u0002\u0002\u113a\u113e\u0003\u0002\u0002\u0002\u113b\u113f\u0005",
+ "\u01a8\u00d5\u0002\u113c\u113d\u0007\u08ce\u0002\u0002\u113d\u113f\u0005",
+ "\u01a2\u00d2\u0002\u113e\u113b\u0003\u0002\u0002\u0002\u113e\u113c\u0003",
+ "\u0002\u0002\u0002\u113f\u1141\u0003\u0002\u0002\u0002\u1140\u1139\u0003",
+ "\u0002\u0002\u0002\u1141\u1142\u0003\u0002\u0002\u0002\u1142\u1140\u0003",
+ "\u0002\u0002\u0002\u1142\u1143\u0003\u0002\u0002\u0002\u1143\u1144\u0003",
+ "\u0002\u0002\u0002\u1144\u1145\u0007\u08b2\u0002\u0002\u1145\u1147\u0003",
+ "\u0002\u0002\u0002\u1146\u1137\u0003\u0002\u0002\u0002\u1147\u114a\u0003",
+ "\u0002\u0002\u0002\u1148\u1146\u0003\u0002\u0002\u0002\u1148\u1149\u0003",
+ "\u0002\u0002\u0002\u1149\u01a1\u0003\u0002\u0002\u0002\u114a\u1148\u0003",
+ "\u0002\u0002\u0002\u114b\u114c\u0007\u0103\u0002\u0002\u114c\u114e\u0005",
+ "\u0576\u02bc\u0002\u114d\u114b\u0003\u0002\u0002\u0002\u114d\u114e\u0003",
+ "\u0002\u0002\u0002\u114e\u1158\u0003\u0002\u0002\u0002\u114f\u1151\u0007",
+ "\u0433\u0002\u0002\u1150\u114f\u0003\u0002\u0002\u0002\u1150\u1151\u0003",
+ "\u0002\u0002\u0002\u1151\u1152\u0003\u0002\u0002\u0002\u1152\u1159\u0007",
+ "\u044b\u0002\u0002\u1153\u1159\u0007\u07d4\u0002\u0002\u1154\u1155\u0007",
+ "\u051a\u0002\u0002\u1155\u1159\u0007\u02d4\u0002\u0002\u1156\u1159\u0005",
+ "\u0380\u01c1\u0002\u1157\u1159\u0005\u0376\u01bc\u0002\u1158\u1150\u0003",
+ "\u0002\u0002\u0002\u1158\u1153\u0003\u0002\u0002\u0002\u1158\u1154\u0003",
+ "\u0002\u0002\u0002\u1158\u1156\u0003\u0002\u0002\u0002\u1158\u1157\u0003",
+ "\u0002\u0002\u0002\u1159\u115b\u0003\u0002\u0002\u0002\u115a\u115c\u0005",
+ "\u01aa\u00d6\u0002\u115b\u115a\u0003\u0002\u0002\u0002\u115b\u115c\u0003",
+ "\u0002\u0002\u0002\u115c\u01a3\u0003\u0002\u0002\u0002\u115d\u115e\u0007",
+ "\u05c3\u0002\u0002\u115e\u115f\u0007\u02b9\u0002\u0002\u115f\u116b\u0005",
+ "\u0594\u02cb\u0002\u1160\u1161\u0007\u084b\u0002\u0002\u1161\u116b\u0007",
+ "\u05a8\u0002\u0002\u1162\u1163\u0007\u0103\u0002\u0002\u1163\u1165\u0005",
+ "\u0576\u02bc\u0002\u1164\u1162\u0003\u0002\u0002\u0002\u1164\u1165\u0003",
+ "\u0002\u0002\u0002\u1165\u1166\u0003\u0002\u0002\u0002\u1166\u1168\u0005",
+ "\u0380\u01c1\u0002\u1167\u1169\u0005\u01aa\u00d6\u0002\u1168\u1167\u0003",
+ "\u0002\u0002\u0002\u1168\u1169\u0003\u0002\u0002\u0002\u1169\u116b\u0003",
+ "\u0002\u0002\u0002\u116a\u115d\u0003\u0002\u0002\u0002\u116a\u1160\u0003",
+ "\u0002\u0002\u0002\u116a\u1164\u0003\u0002\u0002\u0002\u116b\u01a5\u0003",
+ "\u0002\u0002\u0002\u116c\u116d\u0007\u05c3\u0002\u0002\u116d\u116e\u0007",
+ "\u0224\u0002\u0002\u116e\u116f\u0007\u08b1\u0002\u0002\u116f\u1170\u0005",
+ "\u05d6\u02ec\u0002\u1170\u1171\u0007\u08b2\u0002\u0002\u1171\u1172\u0007",
+ "\u02b9\u0002\u0002\u1172\u1173\u0005\u0594\u02cb\u0002\u1173\u1190\u0003",
+ "\u0002\u0002\u0002\u1174\u1175\u0007\u0562\u0002\u0002\u1175\u1176\u0007",
+ "\u08b1\u0002\u0002\u1176\u1177\u0005\u05d6\u02ec\u0002\u1177\u1178\u0007",
+ "\u08b2\u0002\u0002\u1178\u1179\u0007\u084b\u0002\u0002\u1179\u117a\u0007",
+ "\u05a8\u0002\u0002\u117a\u1190\u0003\u0002\u0002\u0002\u117b\u117c\u0007",
+ "\u0103\u0002\u0002\u117c\u117e\u0005\u0576\u02bc\u0002\u117d\u117b\u0003",
+ "\u0002\u0002\u0002\u117d\u117e\u0003\u0002\u0002\u0002\u117e\u117f\u0003",
+ "\u0002\u0002\u0002\u117f\u1180\u0007\u0222\u0002\u0002\u1180\u1181\u0007",
+ "\u02d4\u0002\u0002\u1181\u1186\u0007\u08b1\u0002\u0002\u1182\u1184\u0007",
+ "\u08b7\u0002\u0002\u1183\u1182\u0003\u0002\u0002\u0002\u1183\u1184\u0003",
+ "\u0002\u0002\u0002\u1184\u1185\u0003\u0002\u0002\u0002\u1185\u1187\u0005",
+ "\u05d6\u02ec\u0002\u1186\u1183\u0003\u0002\u0002\u0002\u1187\u1188\u0003",
+ "\u0002\u0002\u0002\u1188\u1186\u0003\u0002\u0002\u0002\u1188\u1189\u0003",
+ "\u0002\u0002\u0002\u1189\u118a\u0003\u0002\u0002\u0002\u118a\u118b\u0007",
+ "\u08b2\u0002\u0002\u118b\u118d\u0005\u0380\u01c1\u0002\u118c\u118e\u0005",
+ "\u01aa\u00d6\u0002\u118d\u118c\u0003\u0002\u0002\u0002\u118d\u118e\u0003",
+ "\u0002\u0002\u0002\u118e\u1190\u0003\u0002\u0002\u0002\u118f\u116c\u0003",
+ "\u0002\u0002\u0002\u118f\u1174\u0003\u0002\u0002\u0002\u118f\u117d\u0003",
+ "\u0002\u0002\u0002\u1190\u01a7\u0003\u0002\u0002\u0002\u1191\u1192\u0007",
+ "\u0103\u0002\u0002\u1192\u1194\u0005\u0576\u02bc\u0002\u1193\u1191\u0003",
+ "\u0002\u0002\u0002\u1193\u1194\u0003\u0002\u0002\u0002\u1194\u11b4\u0003",
+ "\u0002\u0002\u0002\u1195\u1196\u0007\u07d4\u0002\u0002\u1196\u1197\u0007",
+ "\u08b1\u0002\u0002\u1197\u119c\u0005\u0592\u02ca\u0002\u1198\u1199\u0007",
+ "\u08b7\u0002\u0002\u1199\u119b\u0005\u0592\u02ca\u0002\u119a\u1198\u0003",
+ "\u0002\u0002\u0002\u119b\u119e\u0003\u0002\u0002\u0002\u119c\u119a\u0003",
+ "\u0002\u0002\u0002\u119c\u119d\u0003\u0002\u0002\u0002\u119d\u119f\u0003",
+ "\u0002\u0002\u0002\u119e\u119c\u0003\u0002\u0002\u0002\u119f\u11a0\u0007",
+ "\u08b2\u0002\u0002\u11a0\u11b5\u0003\u0002\u0002\u0002\u11a1\u11a2\u0007",
+ "\u051a\u0002\u0002\u11a2\u11a3\u0007\u02d4\u0002\u0002\u11a3\u11a4\u0007",
+ "\u08b1\u0002\u0002\u11a4\u11a9\u0005\u0592\u02ca\u0002\u11a5\u11a6\u0007",
+ "\u08b7\u0002\u0002\u11a6\u11a8\u0005\u0592\u02ca\u0002\u11a7\u11a5\u0003",
+ "\u0002\u0002\u0002\u11a8\u11ab\u0003\u0002\u0002\u0002\u11a9\u11a7\u0003",
+ "\u0002\u0002\u0002\u11a9\u11aa\u0003\u0002\u0002\u0002\u11aa\u11ac\u0003",
+ "\u0002\u0002\u0002\u11ab\u11a9\u0003\u0002\u0002\u0002\u11ac\u11ad\u0007",
+ "\u08b2\u0002\u0002\u11ad\u11b5\u0003\u0002\u0002\u0002\u11ae\u11b5\u0005",
+ "\u037e\u01c0\u0002\u11af\u11b0\u0007\u00b6\u0002\u0002\u11b0\u11b1\u0007",
+ "\u08b1\u0002\u0002\u11b1\u11b2\u0005\u04d4\u026b\u0002\u11b2\u11b3\u0007",
+ "\u08b2\u0002\u0002\u11b3\u11b5\u0003\u0002\u0002\u0002\u11b4\u1195\u0003",
+ "\u0002\u0002\u0002\u11b4\u11a1\u0003\u0002\u0002\u0002\u11b4\u11ae\u0003",
+ "\u0002\u0002\u0002\u11b4\u11af\u0003\u0002\u0002\u0002\u11b5\u11b7\u0003",
+ "\u0002\u0002\u0002\u11b6\u11b8\u0005\u01aa\u00d6\u0002\u11b7\u11b6\u0003",
+ "\u0002\u0002\u0002\u11b7\u11b8\u0003\u0002\u0002\u0002\u11b8\u01a9\u0003",
+ "\u0002\u0002\u0002\u11b9\u11bb\u0007\u0433\u0002\u0002\u11ba\u11b9\u0003",
+ "\u0002\u0002\u0002\u11ba\u11bb\u0003\u0002\u0002\u0002\u11bb\u11bc\u0003",
+ "\u0002\u0002\u0002\u11bc\u11c4\u0007\u0163\u0002\u0002\u11bd\u11be\u0007",
+ "\u0292\u0002\u0002\u11be\u11c4\t(\u0002\u0002\u11bf\u11c4\t%\u0002\u0002",
+ "\u11c0\u11c4\t\u0007\u0002\u0002\u11c1\u11c4\t)\u0002\u0002\u11c2\u11c4",
+ "\u0005\u0300\u0181\u0002\u11c3\u11ba\u0003\u0002\u0002\u0002\u11c3\u11bd",
+ "\u0003\u0002\u0002\u0002\u11c3\u11bf\u0003\u0002\u0002\u0002\u11c3\u11c0",
+ "\u0003\u0002\u0002\u0002\u11c3\u11c1\u0003\u0002\u0002\u0002\u11c3\u11c2",
+ "\u0003\u0002\u0002\u0002\u11c4\u11c5\u0003\u0002\u0002\u0002\u11c5\u11c3",
+ "\u0003\u0002\u0002\u0002\u11c5\u11c6\u0003\u0002\u0002\u0002\u11c6\u01ab",
+ "\u0003\u0002\u0002\u0002\u11c7\u11c8\u0007)\u0002\u0002\u11c8\u11c9",
+ "\u0007\u0777\u0002\u0002\u11c9\u11ea\u0005\u0346\u01a4\u0002\u11ca\u11cc",
+ "\u0007\u0161\u0002\u0002\u11cb\u11cd\u0005\u0262\u0132\u0002\u11cc\u11cb",
+ "\u0003\u0002\u0002\u0002\u11cc\u11cd\u0003\u0002\u0002\u0002\u11cd\u11cf",
+ "\u0003\u0002\u0002\u0002\u11ce\u11d0\u0005\u0266\u0134\u0002\u11cf\u11ce",
+ "\u0003\u0002\u0002\u0002\u11cf\u11d0\u0003\u0002\u0002\u0002\u11d0\u11eb",
+ "\u0003\u0002\u0002\u0002\u11d1\u11d2\u0007\u034a\u0002\u0002\u11d2\u11d3",
+ "\u0007\u01ed\u0002\u0002\u11d3\u11eb\u0005\u0260\u0131\u0002\u11d4\u11d5",
+ "\u0007\u0586\u0002\u0002\u11d5\u11eb\u0005\u0260\u0131\u0002\u11d6\u11eb",
+ "\u0007\u00cf\u0002\u0002\u11d7\u11d8\u0007\u05f3\u0002\u0002\u11d8\u11db",
+ "\u0007\u060f\u0002\u0002\u11d9\u11da\u0007\u02d2\u0002\u0002\u11da\u11dc",
+ "\u0005\u0260\u0131\u0002\u11db\u11d9\u0003\u0002\u0002\u0002\u11db\u11dc",
+ "\u0003\u0002\u0002\u0002\u11dc\u11eb\u0003\u0002\u0002\u0002\u11dd\u11de",
+ "\u0007\u057e\u0002\u0002\u11de\u11df\u0007\u07ae\u0002\u0002\u11df\u11eb",
+ "\u0005\u01ba\u00de\u0002\u11e0\u11e1\u0005\u02a2\u0152\u0002\u11e1\u11e2",
+ "\u0007_\u0002\u0002\u11e2\u11eb\u0003\u0002\u0002\u0002\u11e3\u11eb",
+ "\u0005\u01ae\u00d8\u0002\u11e4\u11eb\u0005\u01b0\u00d9\u0002\u11e5\u11eb",
+ "\u0005\u01b2\u00da\u0002\u11e6\u11eb\u0005\u01b6\u00dc\u0002\u11e7\u11eb",
+ "\u0005\u01d6\u00ec\u0002\u11e8\u11eb\u0005\u01b8\u00dd\u0002\u11e9\u11eb",
+ "\u0005\u01cc\u00e7\u0002\u11ea\u11ca\u0003\u0002\u0002\u0002\u11ea\u11d1",
+ "\u0003\u0002\u0002\u0002\u11ea\u11d4\u0003\u0002\u0002\u0002\u11ea\u11d6",
+ "\u0003\u0002\u0002\u0002\u11ea\u11d7\u0003\u0002\u0002\u0002\u11ea\u11dd",
+ "\u0003\u0002\u0002\u0002\u11ea\u11e0\u0003\u0002\u0002\u0002\u11ea\u11e3",
+ "\u0003\u0002\u0002\u0002\u11ea\u11e4\u0003\u0002\u0002\u0002\u11ea\u11e5",
+ "\u0003\u0002\u0002\u0002\u11ea\u11e6\u0003\u0002\u0002\u0002\u11ea\u11e7",
+ "\u0003\u0002\u0002\u0002\u11ea\u11e8\u0003\u0002\u0002\u0002\u11ea\u11e9",
+ "\u0003\u0002\u0002\u0002\u11eb\u11ec\u0003\u0002\u0002\u0002\u11ec\u11ed",
+ "\u0007\u08c3\u0002\u0002\u11ed\u01ad\u0003\u0002\u0002\u0002\u11ee\u11f1",
+ "\u0007\u0014\u0002\u0002\u11ef\u11f2\u0005\u01ce\u00e8\u0002\u11f0\u11f2",
+ "\u0005\u01d0\u00e9\u0002\u11f1\u11ef\u0003\u0002\u0002\u0002\u11f1\u11f0",
+ "\u0003\u0002\u0002\u0002\u11f2\u121d\u0003\u0002\u0002\u0002\u11f3\u11f4",
+ "\u0007\u019d\u0002\u0002\u11f4\u11f7\t*\u0002\u0002\u11f5\u11f8\u0005",
+ "\u02ee\u0178\u0002\u11f6\u11f8\u0007\u08ab\u0002\u0002\u11f7\u11f5\u0003",
+ "\u0002\u0002\u0002\u11f7\u11f6\u0003\u0002\u0002\u0002\u11f8\u11fb\u0003",
+ "\u0002\u0002\u0002\u11f9\u11fa\u0007\u02d2\u0002\u0002\u11fa\u11fc\u0005",
+ "\u0260\u0131\u0002\u11fb\u11f9\u0003\u0002\u0002\u0002\u11fb\u11fc\u0003",
+ "\u0002\u0002\u0002\u11fc\u121d\u0003\u0002\u0002\u0002\u11fd\u11fe\u0007",
+ "\u05f3\u0002\u0002\u11fe\u1201\u0007\u0780\u0002\u0002\u11ff\u1202\u0005",
+ "\u02ee\u0178\u0002\u1200\u1202\u0007\u08ab\u0002\u0002\u1201\u11ff\u0003",
+ "\u0002\u0002\u0002\u1201\u1200\u0003\u0002\u0002\u0002\u1202\u1205\u0003",
+ "\u0002\u0002\u0002\u1203\u1204\u0007\u02d2\u0002\u0002\u1204\u1206\u0005",
+ "\u0260\u0131\u0002\u1205\u1203\u0003\u0002\u0002\u0002\u1205\u1206\u0003",
+ "\u0002\u0002\u0002\u1206\u121d\u0003\u0002\u0002\u0002\u1207\u1208\u0007",
+ "\u057e\u0002\u0002\u1208\u1209\u0007\u0140\u0002\u0002\u1209\u120e\u0005",
+ "\u02ee\u0178\u0002\u120a\u120b\u0007\u08b7\u0002\u0002\u120b\u120d\u0005",
+ "\u02ee\u0178\u0002\u120c\u120a\u0003\u0002\u0002\u0002\u120d\u1210\u0003",
+ "\u0002\u0002\u0002\u120e\u120c\u0003\u0002\u0002\u0002\u120e\u120f\u0003",
+ "\u0002\u0002\u0002\u120f\u1211\u0003\u0002\u0002\u0002\u1210\u120e\u0003",
+ "\u0002\u0002\u0002\u1211\u1212\u0007\u07ae\u0002\u0002\u1212\u1217\u0005",
+ "\u02ee\u0178\u0002\u1213\u1214\u0007\u08b7\u0002\u0002\u1214\u1216\u0005",
+ "\u02ee\u0178\u0002\u1215\u1213\u0003\u0002\u0002\u0002\u1216\u1219\u0003",
+ "\u0002\u0002\u0002\u1217\u1215\u0003\u0002\u0002\u0002\u1217\u1218\u0003",
+ "\u0002\u0002\u0002\u1218\u121d\u0003\u0002\u0002\u0002\u1219\u1217\u0003",
+ "\u0002\u0002\u0002\u121a\u121b\t*\u0002\u0002\u121b\u121d\u0005\u013c",
+ "\u009f\u0002\u121c\u11ee\u0003\u0002\u0002\u0002\u121c\u11f3\u0003\u0002",
+ "\u0002\u0002\u121c\u11fd\u0003\u0002\u0002\u0002\u121c\u1207\u0003\u0002",
+ "\u0002\u0002\u121c\u121a\u0003\u0002\u0002\u0002\u121d\u01af\u0003\u0002",
+ "\u0002\u0002\u121e\u1225\u0005\u01c2\u00e2\u0002\u121f\u1221\u0007\u03f4",
+ "\u0002\u0002\u1220\u121f\u0003\u0002\u0002\u0002\u1220\u1221\u0003\u0002",
+ "\u0002\u0002\u1221\u1222\u0003\u0002\u0002\u0002\u1222\u1223\u0007\u0220",
+ "\u0002\u0002\u1223\u1225\u0007\u030d\u0002\u0002\u1224\u121e\u0003\u0002",
+ "\u0002\u0002\u1224\u1220\u0003\u0002\u0002\u0002\u1225\u01b1\u0003\u0002",
+ "\u0002\u0002\u1226\u1227\u0007\u0777\u0002\u0002\u1227\u122a\u0007\u023f",
+ "\u0002\u0002\u1228\u122b\u0005\u01b4\u00db\u0002\u1229\u122b\u0007\u08ad",
+ "\u0002\u0002\u122a\u1228\u0003\u0002\u0002\u0002\u122a\u1229\u0003\u0002",
+ "\u0002\u0002\u122b\u01b3\u0003\u0002\u0002\u0002\u122c\u122d\u0005\u05d6",
+ "\u02ec\u0002\u122d\u01b5\u0003\u0002\u0002\u0002\u122e\u1238\u0007\u0467",
+ "\u0002\u0002\u122f\u1231\u0007\u045a\u0002\u0002\u1230\u1232\t+\u0002",
+ "\u0002\u1231\u1230\u0003\u0002\u0002\u0002\u1231\u1232\u0003\u0002\u0002",
+ "\u0002\u1232\u1238\u0003\u0002\u0002\u0002\u1233\u1234\u0007\u054b\u0002",
+ "\u0002\u1234\u1238\t&\u0002\u0002\u1235\u1238\u0007\u04dd\u0002\u0002",
+ "\u1236\u1238\u0007\u0782\u0002\u0002\u1237\u122e\u0003\u0002\u0002\u0002",
+ "\u1237\u122f\u0003\u0002\u0002\u0002\u1237\u1233\u0003\u0002\u0002\u0002",
+ "\u1237\u1235\u0003\u0002\u0002\u0002\u1237\u1236\u0003\u0002\u0002\u0002",
+ "\u1238\u01b7\u0003\u0002\u0002\u0002\u1239\u123a\u0007\u0216\u0002\u0002",
+ "\u123a\u123b\t,\u0002\u0002\u123b\u01b9\u0003\u0002\u0002\u0002\u123c",
+ "\u123d\u0005\u0346\u01a4\u0002\u123d\u01bb\u0003\u0002\u0002\u0002\u123e",
+ "\u1240\u0007\u0122\u0002\u0002\u123f\u1241\t-\u0002\u0002\u1240\u123f",
+ "\u0003\u0002\u0002\u0002\u1240\u1241\u0003\u0002\u0002\u0002\u1241\u1245",
+ "\u0003\u0002\u0002\u0002\u1242\u1246\u0005\u01be\u00e0\u0002\u1243\u1246",
+ "\u0005\u01c8\u00e5\u0002\u1244\u1246\u0005\u01ca\u00e6\u0002\u1245\u1242",
+ "\u0003\u0002\u0002\u0002\u1245\u1243\u0003\u0002\u0002\u0002\u1245\u1244",
+ "\u0003\u0002\u0002\u0002\u1246\u1247\u0003\u0002\u0002\u0002\u1247\u1248",
+ "\u0007\u08c3\u0002\u0002\u1248\u01bd\u0003\u0002\u0002\u0002\u1249\u124a",
+ "\u0007\u0777\u0002\u0002\u124a\u124c\u0005\u05d2\u02ea\u0002\u124b\u124d",
+ "\u0005\u01ce\u00e8\u0002\u124c\u124b\u0003\u0002\u0002\u0002\u124c\u124d",
+ "\u0003\u0002\u0002\u0002\u124d\u125f\u0003\u0002\u0002\u0002\u124e\u124f",
+ "\u0007\u034a\u0002\u0002\u124f\u1250\u0007\u01ed\u0002\u0002\u1250\u125e",
+ "\u0005\u0260\u0131\u0002\u1251\u1252\u0007\u0086\u0002\u0002\u1252\u125e",
+ "\u0005\u0260\u0131\u0002\u1253\u125e\u0005\u01c2\u00e2\u0002\u1254\u1255",
+ "\u0007\u0220\u0002\u0002\u1255\u125e\u0007\u030d\u0002\u0002\u1256\u125e",
+ "\t\u001d\u0002\u0002\u1257\u1258\u0007\u01be\u0002\u0002\u1258\u125e",
+ "\u0005\u01c0\u00e1\u0002\u1259\u125e\u0007\u0161\u0002\u0002\u125a\u125e",
+ "\u0005\u01c4\u00e3\u0002\u125b\u125e\u0005\u01c6\u00e4\u0002\u125c\u125e",
+ "\u0005\u01b8\u00dd\u0002\u125d\u124e\u0003\u0002\u0002\u0002\u125d\u1251",
+ "\u0003\u0002\u0002\u0002\u125d\u1253\u0003\u0002\u0002\u0002\u125d\u1254",
+ "\u0003\u0002\u0002\u0002\u125d\u1256\u0003\u0002\u0002\u0002\u125d\u1257",
+ "\u0003\u0002\u0002\u0002\u125d\u1259\u0003\u0002\u0002\u0002\u125d\u125a",
+ "\u0003\u0002\u0002\u0002\u125d\u125b\u0003\u0002\u0002\u0002\u125d\u125c",
+ "\u0003\u0002\u0002\u0002\u125e\u1261\u0003\u0002\u0002\u0002\u125f\u125d",
+ "\u0003\u0002\u0002\u0002\u125f\u1260\u0003\u0002\u0002\u0002\u1260\u01bf",
+ "\u0003\u0002\u0002\u0002\u1261\u125f\u0003\u0002\u0002\u0002\u1262\u1263",
+ "\u0007\u0811\u0002\u0002\u1263\u1264\u0007\u08ad\u0002\u0002\u1264\u01c1",
+ "\u0003\u0002\u0002\u0002\u1265\u1266\t.\u0002\u0002\u1266\u01c3\u0003",
+ "\u0002\u0002\u0002\u1267\u1268\u0007\u01ed\u0002\u0002\u1268\u1269\u0007",
+ "\u0320\u0002\u0002\u1269\u1270\u0007\u0303\u0002\u0002\u126a\u1271\u0007",
+ "T\u0002\u0002\u126b\u126e\u0007\u07d2\u0002\u0002\u126c\u126d\u0007",
+ "\u0601\u0002\u0002\u126d\u126f\u0005\u0260\u0131\u0002\u126e\u126c\u0003",
+ "\u0002\u0002\u0002\u126e\u126f\u0003\u0002\u0002\u0002\u126f\u1271\u0003",
+ "\u0002\u0002\u0002\u1270\u126a\u0003\u0002\u0002\u0002\u1270\u126b\u0003",
+ "\u0002\u0002\u0002\u1270\u1271\u0003\u0002\u0002\u0002\u1271\u01c5\u0003",
+ "\u0002\u0002\u0002\u1272\u1273\u0007\u05d2\u0002\u0002\u1273\u1274\u0007",
+ "\u060f\u0002\u0002\u1274\u1275\u0007\u0320\u0002\u0002\u1275\u1276\t",
+ "/\u0002\u0002\u1276\u01c7\u0003\u0002\u0002\u0002\u1277\u1278\u0007",
+ "\u0782\u0002\u0002\u1278\u1279\u0007\u0777\u0002\u0002\u1279\u127b\u0005",
+ "\u05d2\u02ea\u0002\u127a\u127c\u0005\u01d0\u00e9\u0002\u127b\u127a\u0003",
+ "\u0002\u0002\u0002\u127b\u127c\u0003\u0002\u0002\u0002\u127c\u127e\u0003",
+ "\u0002\u0002\u0002\u127d\u127f\u0005\u01b2\u00da\u0002\u127e\u127d\u0003",
+ "\u0002\u0002\u0002\u127e\u127f\u0003\u0002\u0002\u0002\u127f\u1281\u0003",
+ "\u0002\u0002\u0002\u1280\u1282\u0005\u01c4\u00e3\u0002\u1281\u1280\u0003",
+ "\u0002\u0002\u0002\u1281\u1282\u0003\u0002\u0002\u0002\u1282\u01c9\u0003",
+ "\u0002\u0002\u0002\u1283\u1284\u0007\u07d0\u0002\u0002\u1284\u1285\u0007",
+ "\u0777\u0002\u0002\u1285\u1287\u0005\u05d2\u02ea\u0002\u1286\u1288\u0005",
+ "\u01ce\u00e8\u0002\u1287\u1286\u0003\u0002\u0002\u0002\u1287\u1288\u0003",
+ "\u0002\u0002\u0002\u1288\u128a\u0003\u0002\u0002\u0002\u1289\u128b\u0005",
+ "\u01c4\u00e3\u0002\u128a\u1289\u0003\u0002\u0002\u0002\u128a\u128b\u0003",
+ "\u0002\u0002\u0002\u128b\u128d\u0003\u0002\u0002\u0002\u128c\u128e\u0005",
+ "\u01cc\u00e7\u0002\u128d\u128c\u0003\u0002\u0002\u0002\u128d\u128e\u0003",
+ "\u0002\u0002\u0002\u128e\u01cb\u0003\u0002\u0002\u0002\u128f\u1290\u0007",
+ "\u0596\u0002\u0002\u1290\u1291\t0\u0002\u0002\u1291\u01cd\u0003\u0002",
+ "\u0002\u0002\u1292\u1294\u0007\u0140\u0002\u0002\u1293\u1295\u0007\u08b7",
+ "\u0002\u0002\u1294\u1293\u0003\u0002\u0002\u0002\u1294\u1295\u0003\u0002",
+ "\u0002\u0002\u1295\u1296\u0003\u0002\u0002\u0002\u1296\u1297\u0005\u01d2",
+ "\u00ea\u0002\u1297\u01cf\u0003\u0002\u0002\u0002\u1298\u129a\u0007\u0780",
+ "\u0002\u0002\u1299\u129b\u0007\u08b7\u0002\u0002\u129a\u1299\u0003\u0002",
+ "\u0002\u0002\u129a\u129b\u0003\u0002\u0002\u0002\u129b\u129c\u0003\u0002",
+ "\u0002\u0002\u129c\u129d\u0005\u01d2\u00ea\u0002\u129d\u01d1\u0003\u0002",
+ "\u0002\u0002\u129e\u12a0\u0007\u08ad\u0002\u0002\u129f\u129e\u0003\u0002",
+ "\u0002\u0002\u129f\u12a0\u0003\u0002\u0002\u0002\u12a0\u12a3\u0003\u0002",
+ "\u0002\u0002\u12a1\u12a2\u0007\u0601\u0002\u0002\u12a2\u12a4\u0005\u0260",
+ "\u0131\u0002\u12a3\u12a1\u0003\u0002\u0002\u0002\u12a3\u12a4\u0003\u0002",
+ "\u0002\u0002\u12a4\u12a6\u0003\u0002\u0002\u0002\u12a5\u12a7\u0007\u059a",
+ "\u0002\u0002\u12a6\u12a5\u0003\u0002\u0002\u0002\u12a6\u12a7\u0003\u0002",
+ "\u0002\u0002\u12a7\u12a9\u0003\u0002\u0002\u0002\u12a8\u12aa\u0005\u01d6",
+ "\u00ec\u0002\u12a9\u12a8\u0003\u0002\u0002\u0002\u12a9\u12aa\u0003\u0002",
+ "\u0002\u0002\u12aa\u01d3\u0003\u0002\u0002\u0002\u12ab\u12ac\u0007\u0140",
+ "\u0002\u0002\u12ac\u12b8\u0007\u08ad\u0002\u0002\u12ad\u12b2\u0007\u08b1",
+ "\u0002\u0002\u12ae\u12b0\u0007\u08b7\u0002\u0002\u12af\u12ae\u0003\u0002",
+ "\u0002\u0002\u12af\u12b0\u0003\u0002\u0002\u0002\u12b0\u12b1\u0003\u0002",
+ "\u0002\u0002\u12b1\u12b3\u0007\u08ad\u0002\u0002\u12b2\u12af\u0003\u0002",
+ "\u0002\u0002\u12b3\u12b4\u0003\u0002\u0002\u0002\u12b4\u12b2\u0003\u0002",
+ "\u0002\u0002\u12b4\u12b5\u0003\u0002\u0002\u0002\u12b5\u12b6\u0003\u0002",
+ "\u0002\u0002\u12b6\u12b8\u0007\u08b2\u0002\u0002\u12b7\u12ab\u0003\u0002",
+ "\u0002\u0002\u12b7\u12ad\u0003\u0002\u0002\u0002\u12b7\u12b8\u0003\u0002",
+ "\u0002\u0002\u12b8\u12bb\u0003\u0002\u0002\u0002\u12b9\u12ba\u0007\u0601",
+ "\u0002\u0002\u12ba\u12bc\u0005\u0260\u0131\u0002\u12bb\u12b9\u0003\u0002",
+ "\u0002\u0002\u12bb\u12bc\u0003\u0002\u0002\u0002\u12bc\u12bf\u0003\u0002",
+ "\u0002\u0002\u12bd\u12be\u0007\u0086\u0002\u0002\u12be\u12c0\u0005\u0260",
+ "\u0131\u0002\u12bf\u12bd\u0003\u0002\u0002\u0002\u12bf\u12c0\u0003\u0002",
+ "\u0002\u0002\u12c0\u12c2\u0003\u0002\u0002\u0002\u12c1\u12c3\u0007\u059a",
+ "\u0002\u0002\u12c2\u12c1\u0003\u0002\u0002\u0002\u12c2\u12c3\u0003\u0002",
+ "\u0002\u0002\u12c3\u01d5\u0003\u0002\u0002\u0002\u12c4\u12ce\u0007W",
+ "\u0002\u0002\u12c5\u12cf\u0007\u045b\u0002\u0002\u12c6\u12c9\u0007\u046a",
+ "\u0002\u0002\u12c7\u12c8\u0007\u038c\u0002\u0002\u12c8\u12ca\u0005\u0260",
+ "\u0131\u0002\u12c9\u12c7\u0003\u0002\u0002\u0002\u12c9\u12ca\u0003\u0002",
+ "\u0002\u0002\u12ca\u12cc\u0003\u0002\u0002\u0002\u12cb\u12cd\u0005\u01d8",
+ "\u00ed\u0002\u12cc\u12cb\u0003\u0002\u0002\u0002\u12cc\u12cd\u0003\u0002",
+ "\u0002\u0002\u12cd\u12cf\u0003\u0002\u0002\u0002\u12ce\u12c5\u0003\u0002",
+ "\u0002\u0002\u12ce\u12c6\u0003\u0002\u0002\u0002\u12cf\u01d7\u0003\u0002",
+ "\u0002\u0002\u12d0\u12d3\u0007\u0336\u0002\u0002\u12d1\u12d4\u0007\u07d6",
+ "\u0002\u0002\u12d2\u12d4\u0005\u0260\u0131\u0002\u12d3\u12d1\u0003\u0002",
+ "\u0002\u0002\u12d3\u12d2\u0003\u0002\u0002\u0002\u12d4\u01d9\u0003\u0002",
+ "\u0002\u0002\u12d5\u12d6\u0007\u0092\u0002\u0002\u12d6\u12d7\t(\u0002",
+ "\u0002\u12d7\u01db\u0003\u0002\u0002\u0002\u12d8\u12de\u0007\u03ff\u0002",
+ "\u0002\u12d9\u12db\u0007\u04ad\u0002\u0002\u12da\u12dc\u0007\u08ab\u0002",
+ "\u0002\u12db\u12da\u0003\u0002\u0002\u0002\u12db\u12dc\u0003\u0002\u0002",
+ "\u0002\u12dc\u12de\u0003\u0002\u0002\u0002\u12dd\u12d8\u0003\u0002\u0002",
+ "\u0002\u12dd\u12d9\u0003\u0002\u0002\u0002\u12de\u01dd\u0003\u0002\u0002",
+ "\u0002\u12df\u12e0\u0007)\u0002\u0002\u12e0\u12e1\u0007\u032b\u0002",
+ "\u0002\u12e1\u12e2\u0007\u0835\u0002\u0002\u12e2\u12fc\u0005\u0594\u02cb",
+ "\u0002\u12e3\u12fd\u0005\u0264\u0133\u0002\u12e4\u12fd\u0005\u01e6\u00f4",
+ "\u0002\u12e5\u12fd\u0005\u0262\u0132\u0002\u12e6\u12eb\u0005\u0336\u019c",
+ "\u0002\u12e7\u12e8\u0007\u08b7\u0002\u0002\u12e8\u12ea\u0005\u0336\u019c",
+ "\u0002\u12e9\u12e7\u0003\u0002\u0002\u0002\u12ea\u12ed\u0003\u0002\u0002",
+ "\u0002\u12eb\u12e9\u0003\u0002\u0002\u0002\u12eb\u12ec\u0003\u0002\u0002",
+ "\u0002\u12ec\u12fd\u0003\u0002\u0002\u0002\u12ed\u12eb\u0003\u0002\u0002",
+ "\u0002\u12ee\u12f3\u0005\u0338\u019d\u0002\u12ef\u12f0\u0007\u08b7\u0002",
+ "\u0002\u12f0\u12f2\u0005\u0338\u019d\u0002\u12f1\u12ef\u0003\u0002\u0002",
+ "\u0002\u12f2\u12f5\u0003\u0002\u0002\u0002\u12f3\u12f1\u0003\u0002\u0002",
+ "\u0002\u12f3\u12f4\u0003\u0002\u0002\u0002\u12f4\u12fd\u0003\u0002\u0002",
+ "\u0002\u12f5\u12f3\u0003\u0002\u0002\u0002\u12f6\u12fd\u0005\u01dc\u00ef",
+ "\u0002\u12f7\u12fd\u0005\u01c2\u00e2\u0002\u12f8\u12fd\u0005\u027a\u013e",
+ "\u0002\u12f9\u12fd\u0005\u027c\u013f\u0002\u12fa\u12fd\u0005\u027e\u0140",
+ "\u0002\u12fb\u12fd\u0005\u0294\u014b\u0002\u12fc\u12e3\u0003\u0002\u0002",
+ "\u0002\u12fc\u12e4\u0003\u0002\u0002\u0002\u12fc\u12e5\u0003\u0002\u0002",
+ "\u0002\u12fc\u12e6\u0003\u0002\u0002\u0002\u12fc\u12ee\u0003\u0002\u0002",
+ "\u0002\u12fc\u12f6\u0003\u0002\u0002\u0002\u12fc\u12f7\u0003\u0002\u0002",
+ "\u0002\u12fc\u12f8\u0003\u0002\u0002\u0002\u12fc\u12f9\u0003\u0002\u0002",
+ "\u0002\u12fc\u12fa\u0003\u0002\u0002\u0002\u12fc\u12fb\u0003\u0002\u0002",
+ "\u0002\u12fc\u12fd\u0003\u0002\u0002\u0002\u12fd\u12ff\u0003\u0002\u0002",
+ "\u0002\u12fe\u1300\u0005\u02f6\u017c\u0002\u12ff\u12fe\u0003\u0002\u0002",
+ "\u0002\u12ff\u1300\u0003\u0002\u0002\u0002\u1300\u1304\u0003\u0002\u0002",
+ "\u0002\u1301\u1302\u0007\u0811\u0002\u0002\u1302\u1303\u0007\u0279\u0002",
+ "\u0002\u1303\u1305\u0005\u0264\u0133\u0002\u1304\u1301\u0003\u0002\u0002",
+ "\u0002\u1304\u1305\u0003\u0002\u0002\u0002\u1305\u1307\u0003\u0002\u0002",
+ "\u0002\u1306\u1308\u0005\u01e0\u00f1\u0002\u1307\u1306\u0003\u0002\u0002",
+ "\u0002\u1307\u1308\u0003\u0002\u0002\u0002\u1308\u1310\u0003\u0002\u0002",
+ "\u0002\u1309\u130a\u0005\u028a\u0146\u0002\u130a\u130b\u0007\u0538\u0002",
+ "\u0002\u130b\u130c\u0007\u059e\u0002\u0002\u130c\u1311\u0003\u0002\u0002",
+ "\u0002\u130d\u1311\u0007\u00e1\u0002\u0002\u130e\u130f\u0007\u00ff\u0002",
+ "\u0002\u130f\u1311\u0007\u022b\u0002\u0002\u1310\u1309\u0003\u0002\u0002",
+ "\u0002\u1310\u130d\u0003\u0002\u0002\u0002\u1310\u130e\u0003\u0002\u0002",
+ "\u0002\u1310\u1311\u0003\u0002\u0002\u0002\u1311\u1312\u0003\u0002\u0002",
+ "\u0002\u1312\u1313\u0007\u08c3\u0002\u0002\u1313\u01df\u0003\u0002\u0002",
+ "\u0002\u1314\u1315\u0005\u01e2\u00f2\u0002\u1315\u01e1\u0003\u0002\u0002",
+ "\u0002\u1316\u1331\u0007\u0563\u0002\u0002\u1317\u1332\u0007\u0201\u0002",
+ "\u0002\u1318\u1332\u0007\u00e2\u0002\u0002\u1319\u1332\u0007\u0220\u0002",
+ "\u0002\u131a\u131b\u0007\u046a\u0002\u0002\u131b\u1332\t1\u0002\u0002",
+ "\u131c\u131d\u0007\u0623\u0002\u0002\u131d\u131e\u0007\u084b\u0002\u0002",
+ "\u131e\u1332\u0005\u04d4\u026b\u0002\u131f\u1320\u0007\u038c\u0002\u0002",
+ "\u1320\u1332\u0005\u04d4\u026b\u0002\u1321\u1322\u0007\u084b\u0002\u0002",
+ "\u1322\u1323\u0007\u051a\u0002\u0002\u1323\u1332\u0007\u02d4\u0002\u0002",
+ "\u1324\u1326\u0007\u0811\u0002\u0002\u1325\u1327\u0007\u0161\u0002\u0002",
+ "\u1326\u1325\u0003\u0002\u0002\u0002\u1326\u1327\u0003\u0002\u0002\u0002",
+ "\u1327\u1328\u0003\u0002\u0002\u0002\u1328\u1329\u0007\u0325\u0002\u0002",
+ "\u1329\u132a\u0007\u05a3\u0002\u0002\u132a\u132c\u0007\u05d2\u0002\u0002",
+ "\u132b\u132d\u0005\u01e4\u00f3\u0002\u132c\u132b\u0003\u0002\u0002\u0002",
+ "\u132c\u132d\u0003\u0002\u0002\u0002\u132d\u1332\u0003\u0002\u0002\u0002",
+ "\u132e\u132f\u0007\u0811\u0002\u0002\u132f\u1330\t2\u0002\u0002\u1330",
+ "\u1332\u0007\u0104\u0002\u0002\u1331\u1317\u0003\u0002\u0002\u0002\u1331",
+ "\u1318\u0003\u0002\u0002\u0002\u1331\u1319\u0003\u0002\u0002\u0002\u1331",
+ "\u131a\u0003\u0002\u0002\u0002\u1331\u131c\u0003\u0002\u0002\u0002\u1331",
+ "\u131f\u0003\u0002\u0002\u0002\u1331\u1321\u0003\u0002\u0002\u0002\u1331",
+ "\u1324\u0003\u0002\u0002\u0002\u1331\u132e\u0003\u0002\u0002\u0002\u1332",
+ "\u1333\u0003\u0002\u0002\u0002\u1333\u1331\u0003\u0002\u0002\u0002\u1333",
+ "\u1334\u0003\u0002\u0002\u0002\u1334\u01e3\u0003\u0002\u0002\u0002\u1335",
+ "\u1336\u0005\u05d6\u02ec\u0002\u1336\u01e5\u0003\u0002\u0002\u0002\u1337",
+ "\u1338\u0007\u0361\u0002\u0002\u1338\u1339\u0007\u08b1\u0002\u0002\u1339",
+ "\u133d\u0005\u0592\u02ca\u0002\u133a\u133b\u0007\u01bd\u0002\u0002\u133b",
+ "\u133e\u0005\u0344\u01a3\u0002\u133c\u133e\u0007\u015f\u0002\u0002\u133d",
+ "\u133a\u0003\u0002\u0002\u0002\u133d\u133c\u0003\u0002\u0002\u0002\u133d",
+ "\u133e\u0003\u0002\u0002\u0002\u133e\u133f\u0003\u0002\u0002\u0002\u133f",
+ "\u1340\u0007\u08b2\u0002\u0002\u1340\u01e7\u0003\u0002\u0002\u0002\u1341",
+ "\u1342\u0007)\u0002\u0002\u1342\u1343\u0007\u032b\u0002\u0002\u1343",
+ "\u1344\u0007\u0835\u0002\u0002\u1344\u1346\u0007\u0311\u0002\u0002\u1345",
+ "\u1347\u0007\u0220\u0002\u0002\u1346\u1345\u0003\u0002\u0002\u0002\u1346",
+ "\u1347\u0003\u0002\u0002\u0002\u1347\u1348\u0003\u0002\u0002\u0002\u1348",
+ "\u1349\u0007\u046a\u0002\u0002\u1349\u1352\u0005\u0594\u02cb\u0002\u134a",
+ "\u1353\u0005\u0264\u0133\u0002\u134b\u1353\u0005\u01ea\u00f6\u0002\u134c",
+ "\u1353\u0005\u01dc\u00ef\u0002\u134d\u1353\u0005\u01c2\u00e2\u0002\u134e",
+ "\u1353\u0005\u027a\u013e\u0002\u134f\u1353\u0005\u027e\u0140\u0002\u1350",
+ "\u1353\u0005\u01ec\u00f7\u0002\u1351\u1353\u0005\u0294\u014b\u0002\u1352",
+ "\u134a\u0003\u0002\u0002\u0002\u1352\u134b\u0003\u0002\u0002\u0002\u1352",
+ "\u134c\u0003\u0002\u0002\u0002\u1352\u134d\u0003\u0002\u0002\u0002\u1352",
+ "\u134e\u0003\u0002\u0002\u0002\u1352\u134f\u0003\u0002\u0002\u0002\u1352",
+ "\u1350\u0003\u0002\u0002\u0002\u1352\u1351\u0003\u0002\u0002\u0002\u1352",
+ "\u1353\u0003\u0002\u0002\u0002\u1353\u1355\u0003\u0002\u0002\u0002\u1354",
+ "\u1356\u0005\u01ee\u00f8\u0002\u1355\u1354\u0003\u0002\u0002\u0002\u1355",
+ "\u1356\u0003\u0002\u0002\u0002\u1356\u1358\u0003\u0002\u0002\u0002\u1357",
+ "\u1359\u0005\u01fc\u00ff\u0002\u1358\u1357\u0003\u0002\u0002\u0002\u1358",
+ "\u1359\u0003\u0002\u0002\u0002\u1359\u135a\u0003\u0002\u0002\u0002\u135a",
+ "\u135b\u0007\u08c3\u0002\u0002\u135b\u01e9\u0003\u0002\u0002\u0002\u135c",
+ "\u135d\u0007\u0014\u0002\u0002\u135d\u135e\u0007\u08b1\u0002\u0002\u135e",
+ "\u135f\u0005\u0592\u02ca\u0002\u135f\u1360\u0007\u08b2\u0002\u0002\u1360",
+ "\u01eb\u0003\u0002\u0002\u0002\u1361\u1362\u0007\u036c\u0002\u0002\u1362",
+ "\u1364\u0005\u026a\u0136\u0002\u1363\u1365\u0005\u01dc\u00ef\u0002\u1364",
+ "\u1363\u0003\u0002\u0002\u0002\u1364\u1365\u0003\u0002\u0002\u0002\u1365",
+ "\u01ed\u0003\u0002\u0002\u0002\u1366\u1387\u0007\u0014\u0002\u0002\u1367",
+ "\u1368\u0007\u0455\u0002\u0002\u1368\u136e\u0007\u025f\u0002\u0002\u1369",
+ "\u136a\u0007\u051a\u0002\u0002\u136a\u136e\u0007\u02d4\u0002\u0002\u136b",
+ "\u136e\u0007\u05a8\u0002\u0002\u136c\u136e\u0007\u05da\u0002\u0002\u136d",
+ "\u1367\u0003\u0002\u0002\u0002\u136d\u1369\u0003\u0002\u0002\u0002\u136d",
+ "\u136b\u0003\u0002\u0002\u0002\u136d\u136c\u0003\u0002\u0002\u0002\u136e",
+ "\u137a\u0003\u0002\u0002\u0002\u136f\u1370\u0007\u08b1\u0002\u0002\u1370",
+ "\u1375\u0005\u0592\u02ca\u0002\u1371\u1372\u0007\u08b7\u0002\u0002\u1372",
+ "\u1374\u0005\u0592\u02ca\u0002\u1373\u1371\u0003\u0002\u0002\u0002\u1374",
+ "\u1377\u0003\u0002\u0002\u0002\u1375\u1373\u0003\u0002\u0002\u0002\u1375",
+ "\u1376\u0003\u0002\u0002\u0002\u1376\u1378\u0003\u0002\u0002\u0002\u1377",
+ "\u1375\u0003\u0002\u0002\u0002\u1378\u1379\u0007\u08b2\u0002\u0002\u1379",
+ "\u137b\u0003\u0002\u0002\u0002\u137a\u136f\u0003\u0002\u0002\u0002\u137a",
+ "\u137b\u0003\u0002\u0002\u0002\u137b\u1388\u0003\u0002\u0002\u0002\u137c",
+ "\u137d\u0007\u08b1\u0002\u0002\u137d\u1382\u0005\u0592\u02ca\u0002\u137e",
+ "\u137f\u0007\u08b7\u0002\u0002\u137f\u1381\u0005\u0592\u02ca\u0002\u1380",
+ "\u137e\u0003\u0002\u0002\u0002\u1381\u1384\u0003\u0002\u0002\u0002\u1382",
+ "\u1380\u0003\u0002\u0002\u0002\u1382\u1383\u0003\u0002\u0002\u0002\u1383",
+ "\u1385\u0003\u0002\u0002\u0002\u1384\u1382\u0003\u0002\u0002\u0002\u1385",
+ "\u1386\u0007\u08b2\u0002\u0002\u1386\u1388\u0003\u0002\u0002\u0002\u1387",
+ "\u136d\u0003\u0002\u0002\u0002\u1387\u137c\u0003\u0002\u0002\u0002\u1388",
+ "\u138a\u0003\u0002\u0002\u0002\u1389\u138b\u0005\u01fa\u00fe\u0002\u138a",
+ "\u1389\u0003\u0002\u0002\u0002\u138a\u138b\u0003\u0002\u0002\u0002\u138b",
+ "\u01ef\u0003\u0002\u0002\u0002\u138c\u138d\u0005\u04d4\u026b\u0002\u138d",
+ "\u01f1\u0003\u0002\u0002\u0002\u138e\u138f\u0005\u04d4\u026b\u0002\u138f",
+ "\u01f3\u0003\u0002\u0002\u0002\u1390\u1391\t3\u0002\u0002\u1391\u01f5",
+ "\u0003\u0002\u0002\u0002\u1392\u1393\t4\u0002\u0002\u1393\u01f7\u0003",
+ "\u0002\u0002\u0002\u1394\u1395\u0007\u0122\u0002\u0002\u1395\u1396\u0007",
+ "\u032b\u0002\u0002\u1396\u1397\u0007\u0835\u0002\u0002\u1397\u1398\u0007",
+ "\u0311\u0002\u0002\u1398\u1399\u0007\u046a\u0002\u0002\u1399\u13a3\u0005",
+ "\u0594\u02cb\u0002\u139a\u13a0\u0005\u0264\u0133\u0002\u139b\u139c\u0007",
+ "\u0777\u0002\u0002\u139c\u13a0\u0005\u05d2\u02ea\u0002\u139d\u13a0\u0005",
+ "\u01c2\u00e2\u0002\u139e\u13a0\t5\u0002\u0002\u139f\u139a\u0003\u0002",
+ "\u0002\u0002\u139f\u139b\u0003\u0002\u0002\u0002\u139f\u139d\u0003\u0002",
+ "\u0002\u0002\u139f\u139e\u0003\u0002\u0002\u0002\u13a0\u13a1\u0003\u0002",
+ "\u0002\u0002\u13a1\u139f\u0003\u0002\u0002\u0002\u13a1\u13a2\u0003\u0002",
+ "\u0002\u0002\u13a2\u13a4\u0003\u0002\u0002\u0002\u13a3\u139f\u0003\u0002",
+ "\u0002\u0002\u13a3\u13a4\u0003\u0002\u0002\u0002\u13a4\u13a6\u0003\u0002",
+ "\u0002\u0002\u13a5\u13a7\u0005\u01dc\u00ef\u0002\u13a6\u13a5\u0003\u0002",
+ "\u0002\u0002\u13a6\u13a7\u0003\u0002\u0002\u0002\u13a7\u13cf\u0003\u0002",
+ "\u0002\u0002\u13a8\u13b8\u0007\u084b\u0002\u0002\u13a9\u13ab\u0007\u08b7",
+ "\u0002\u0002\u13aa\u13a9\u0003\u0002\u0002\u0002\u13aa\u13ab\u0003\u0002",
+ "\u0002\u0002\u13ab\u13b4\u0003\u0002\u0002\u0002\u13ac\u13ad\u0007\u0455",
+ "\u0002\u0002\u13ad\u13b5\u0007\u025f\u0002\u0002\u13ae\u13af\u0007\u051a",
+ "\u0002\u0002\u13af\u13b5\u0007\u02d4\u0002\u0002\u13b0\u13b5\u0007\u05a8",
+ "\u0002\u0002\u13b1\u13b5\u0007\u05da\u0002\u0002\u13b2\u13b3\u0007\u00dc",
+ "\u0002\u0002\u13b3\u13b5\u0007\u05c2\u0002\u0002\u13b4\u13ac\u0003\u0002",
+ "\u0002\u0002\u13b4\u13ae\u0003\u0002\u0002\u0002\u13b4\u13b0\u0003\u0002",
+ "\u0002\u0002\u13b4\u13b1\u0003\u0002\u0002\u0002\u13b4\u13b2\u0003\u0002",
+ "\u0002\u0002\u13b5\u13b7\u0003\u0002\u0002\u0002\u13b6\u13aa\u0003\u0002",
+ "\u0002\u0002\u13b7\u13ba\u0003\u0002\u0002\u0002\u13b8\u13b6\u0003\u0002",
+ "\u0002\u0002\u13b8\u13b9\u0003\u0002\u0002\u0002\u13b9\u13c8\u0003\u0002",
+ "\u0002\u0002\u13ba\u13b8\u0003\u0002\u0002\u0002\u13bb\u13c0\u0007\u08b1",
+ "\u0002\u0002\u13bc\u13be\u0007\u08b7\u0002\u0002\u13bd\u13bc\u0003\u0002",
+ "\u0002\u0002\u13bd\u13be\u0003\u0002\u0002\u0002\u13be\u13bf\u0003\u0002",
+ "\u0002\u0002\u13bf\u13c1\u0005\u05d6\u02ec\u0002\u13c0\u13bd\u0003\u0002",
+ "\u0002\u0002\u13c1\u13c2\u0003\u0002\u0002\u0002\u13c2\u13c0\u0003\u0002",
+ "\u0002\u0002\u13c2\u13c3\u0003\u0002\u0002\u0002\u13c3\u13c4\u0003\u0002",
+ "\u0002\u0002\u13c4\u13c6\u0007\u08b2\u0002\u0002\u13c5\u13c7\u0005\u01fa",
+ "\u00fe\u0002\u13c6\u13c5\u0003\u0002\u0002\u0002\u13c6\u13c7\u0003\u0002",
+ "\u0002\u0002\u13c7\u13c9\u0003\u0002\u0002\u0002\u13c8\u13bb\u0003\u0002",
+ "\u0002\u0002\u13c8\u13c9\u0003\u0002\u0002\u0002\u13c9\u13cb\u0003\u0002",
+ "\u0002\u0002\u13ca\u13cc\u0005\u01fc\u00ff\u0002\u13cb\u13ca\u0003\u0002",
+ "\u0002\u0002\u13cb\u13cc\u0003\u0002\u0002\u0002\u13cc\u13ce\u0003\u0002",
+ "\u0002\u0002\u13cd\u13a8\u0003\u0002\u0002\u0002\u13ce\u13d1\u0003\u0002",
+ "\u0002\u0002\u13cf\u13cd\u0003\u0002\u0002\u0002\u13cf\u13d0\u0003\u0002",
+ "\u0002\u0002\u13d0\u01f9\u0003\u0002\u0002\u0002\u13d1\u13cf\u0003\u0002",
+ "\u0002\u0002\u13d2\u13d3\t4\u0002\u0002\u13d3\u13d4\u0007\u0389\u0002",
+ "\u0002\u13d4\u13d5\u0007\u081b\u0002\u0002\u13d5\u01fb\u0003\u0002\u0002",
+ "\u0002\u13d6\u13d7\u0007\u0530\u0002\u0002\u13d7\u13d9\u0007\u0267\u0002",
+ "\u0002\u13d8\u13da\t3\u0002\u0002\u13d9\u13d8\u0003\u0002\u0002\u0002",
+ "\u13d9\u13da\u0003\u0002\u0002\u0002\u13da\u01fd\u0003\u0002\u0002\u0002",
+ "\u13db\u13dc\u0007\u0122\u0002\u0002\u13dc\u13dd\u0007\u032b\u0002\u0002",
+ "\u13dd\u13de\u0007\u0835\u0002\u0002\u13de\u13e1\u0005\u0594\u02cb\u0002",
+ "\u13df\u13e0\u0007\u045d\u0002\u0002\u13e0\u13e2\u0005\u057a\u02be\u0002",
+ "\u13e1\u13df\u0003\u0002\u0002\u0002\u13e1\u13e2\u0003\u0002\u0002\u0002",
+ "\u13e2\u13f7\u0003\u0002\u0002\u0002\u13e3\u13e4\u0007\u046a\u0002\u0002",
+ "\u13e4\u13e5\u0007\u050a\u0002\u0002\u13e5\u13e9\u0007\u077a\u0002\u0002",
+ "\u13e6\u13e7\t6\u0002\u0002\u13e7\u13e8\u0007\u055b\u0002\u0002\u13e8",
+ "\u13ea\u0007\u050d\u0002\u0002\u13e9\u13e6\u0003\u0002\u0002\u0002\u13e9",
+ "\u13ea\u0003\u0002\u0002\u0002\u13ea\u13f8\u0003\u0002\u0002\u0002\u13eb",
+ "\u13ed\u0005\u026c\u0137\u0002\u13ec\u13eb\u0003\u0002\u0002\u0002\u13ec",
+ "\u13ed\u0003\u0002\u0002\u0002\u13ed\u13ef\u0003\u0002\u0002\u0002\u13ee",
+ "\u13f0\t5\u0002\u0002\u13ef\u13ee\u0003\u0002\u0002\u0002\u13ef\u13f0",
+ "\u0003\u0002\u0002\u0002\u13f0\u13f2\u0003\u0002\u0002\u0002\u13f1\u13f3",
+ "\u0005\u01dc\u00ef\u0002\u13f2\u13f1\u0003\u0002\u0002\u0002\u13f2\u13f3",
+ "\u0003\u0002\u0002\u0002\u13f3\u13f5\u0003\u0002\u0002\u0002\u13f4\u13f6",
+ "\u0005\u01da\u00ee\u0002\u13f5\u13f4\u0003\u0002\u0002\u0002\u13f5\u13f6",
+ "\u0003\u0002\u0002\u0002\u13f6\u13f8\u0003\u0002\u0002\u0002\u13f7\u13e3",
+ "\u0003\u0002\u0002\u0002\u13f7\u13ec\u0003\u0002\u0002\u0002\u13f8\u140a",
+ "\u0003\u0002\u0002\u0002\u13f9\u13fa\u0007\u0811\u0002\u0002\u13fa\u1404",
+ "\u0007\u0279\u0002\u0002\u13fb\u13ff\u0005\u0264\u0133\u0002\u13fc\u13fd",
+ "\u0007\u0777\u0002\u0002\u13fd\u13ff\u0005\u05d2\u02ea\u0002\u13fe\u13fb",
+ "\u0003\u0002\u0002\u0002\u13fe\u13fc\u0003\u0002\u0002\u0002\u13ff\u1400",
+ "\u0003\u0002\u0002\u0002\u1400\u13fe\u0003\u0002\u0002\u0002\u1400\u1401",
+ "\u0003\u0002\u0002\u0002\u1401\u1403\u0003\u0002\u0002\u0002\u1402\u13fe",
+ "\u0003\u0002\u0002\u0002\u1403\u1406\u0003\u0002\u0002\u0002\u1404\u1402",
+ "\u0003\u0002\u0002\u0002\u1404\u1405\u0003\u0002\u0002\u0002\u1405\u140b",
+ "\u0003\u0002\u0002\u0002\u1406\u1404\u0003\u0002\u0002\u0002\u1407\u1408",
+ "\u0007\u0811\u0002\u0002\u1408\u1409\u0007\u03f4\u0002\u0002\u1409\u140b",
+ "\u0007\u0279\u0002\u0002\u140a\u13f9\u0003\u0002\u0002\u0002\u140a\u1407",
+ "\u0003\u0002\u0002\u0002\u140a\u140b\u0003\u0002\u0002\u0002\u140b\u140d",
+ "\u0003\u0002\u0002\u0002\u140c\u140e\u0005\u0200\u0101\u0002\u140d\u140c",
+ "\u0003\u0002\u0002\u0002\u140d\u140e\u0003\u0002\u0002\u0002\u140e\u1411",
+ "\u0003\u0002\u0002\u0002\u140f\u1410\u0007\u0224\u0002\u0002\u1410\u1412",
+ "\u0007\u07eb\u0002\u0002\u1411\u140f\u0003\u0002\u0002\u0002\u1411\u1412",
+ "\u0003\u0002\u0002\u0002\u1412\u1416\u0003\u0002\u0002\u0002\u1413\u1414",
+ "\t\u0007\u0002\u0002\u1414\u1415\u0007\u0538\u0002\u0002\u1415\u1417",
+ "\u0007\u059e\u0002\u0002\u1416\u1413\u0003\u0002\u0002\u0002\u1416\u1417",
+ "\u0003\u0002\u0002\u0002\u1417\u1418\u0003\u0002\u0002\u0002\u1418\u1419",
+ "\u0007?\u0002\u0002\u1419\u141a\u0005\u0412\u020a\u0002\u141a\u141b",
+ "\u0007\u08c3\u0002\u0002\u141b\u01ff\u0003\u0002\u0002\u0002\u141c\u141d",
+ "\u0007\u0388\u0002\u0002\u141d\u1444\u0007\u0563\u0002\u0002\u141e\u143f",
+ "\u0007\u0563\u0002\u0002\u141f\u1440\t7\u0002\u0002\u1420\u1421\u0007",
+ "\u046a\u0002\u0002\u1421\u1440\t1\u0002\u0002\u1422\u1423\u0007\u0623",
+ "\u0002\u0002\u1423\u1426\u0007\u084b\u0002\u0002\u1424\u1426\u0007\u038c",
+ "\u0002\u0002\u1425\u1422\u0003\u0002\u0002\u0002\u1425\u1424\u0003\u0002",
+ "\u0002\u0002\u1426\u1440\u0003\u0002\u0002\u0002\u1427\u142b\u0007\u084b",
+ "\u0002\u0002\u1428\u1429\u0007\u051a\u0002\u0002\u1429\u142c\u0007\u02d4",
+ "\u0002\u0002\u142a\u142c\u0007\u05a8\u0002\u0002\u142b\u1428\u0003\u0002",
+ "\u0002\u0002\u142b\u142a\u0003\u0002\u0002\u0002\u142c\u1440\u0003\u0002",
+ "\u0002\u0002\u142d\u143a\u0007\u0811\u0002\u0002\u142e\u1430\u0007\u0161",
+ "\u0002\u0002\u142f\u1431\t8\u0002\u0002\u1430\u142f\u0003\u0002\u0002",
+ "\u0002\u1430\u1431\u0003\u0002\u0002\u0002\u1431\u1432\u0003\u0002\u0002",
+ "\u0002\u1432\u1433\u0007\u05a3\u0002\u0002\u1433\u143b\u0007\u05d2\u0002",
+ "\u0002\u1434\u1436\t8\u0002\u0002\u1435\u1434\u0003\u0002\u0002\u0002",
+ "\u1435\u1436\u0003\u0002\u0002\u0002\u1436\u1437\u0003\u0002\u0002\u0002",
+ "\u1437\u1438\u0007\u05a3\u0002\u0002\u1438\u1439\u0007\u05d2\u0002\u0002",
+ "\u1439\u143b\u0007\u08ce\u0002\u0002\u143a\u142e\u0003\u0002\u0002\u0002",
+ "\u143a\u1435\u0003\u0002\u0002\u0002\u143b\u1440\u0003\u0002\u0002\u0002",
+ "\u143c\u143d\u0007\u0811\u0002\u0002\u143d\u143e\t2\u0002\u0002\u143e",
+ "\u1440\u0007\u0104\u0002\u0002\u143f\u141f\u0003\u0002\u0002\u0002\u143f",
+ "\u1420\u0003\u0002\u0002\u0002\u143f\u1425\u0003\u0002\u0002\u0002\u143f",
+ "\u1427\u0003\u0002\u0002\u0002\u143f\u142d\u0003\u0002\u0002\u0002\u143f",
+ "\u143c\u0003\u0002\u0002\u0002\u1440\u1441\u0003\u0002\u0002\u0002\u1441",
+ "\u143f\u0003\u0002\u0002\u0002\u1441\u1442\u0003\u0002\u0002\u0002\u1442",
+ "\u1444\u0003\u0002\u0002\u0002\u1443\u141c\u0003\u0002\u0002\u0002\u1443",
+ "\u141e\u0003\u0002\u0002\u0002\u1444\u0201\u0003\u0002\u0002\u0002\u1445",
+ "\u1448\u0007\u0122\u0002\u0002\u1446\u1447\u0007\u0496\u0002\u0002\u1447",
+ "\u1449\u0007\u0581\u0002\u0002\u1448\u1446\u0003\u0002\u0002\u0002\u1448",
+ "\u1449\u0003\u0002\u0002\u0002\u1449\u144a\u0003\u0002\u0002\u0002\u144a",
+ "\u144b\u0007\u010b\u0002\u0002\u144b\u144c\u0005\u0204\u0103\u0002\u144c",
+ "\u1450\u0007\u0811\u0002\u0002\u144d\u144e\u0005\u059c\u02cf\u0002\u144e",
+ "\u144f\u0007\u08aa\u0002\u0002\u144f\u1451\u0003\u0002\u0002\u0002\u1450",
+ "\u144d\u0003\u0002\u0002\u0002\u1450\u1451\u0003\u0002\u0002\u0002\u1451",
+ "\u1452\u0003\u0002\u0002\u0002\u1452\u1457\u0005\u0562\u02b2\u0002\u1453",
+ "\u1454\u0007\u0291\u0002\u0002\u1454\u1458\t\u0019\u0002\u0002\u1455",
+ "\u1456\u0007\u0006\u0002\u0002\u1456\u1458\u0007\u0239\u0002\u0002\u1457",
+ "\u1453\u0003\u0002\u0002\u0002\u1457\u1455\u0003\u0002\u0002\u0002\u1457",
+ "\u1458\u0003\u0002\u0002\u0002\u1458\u1459\u0003\u0002\u0002\u0002\u1459",
+ "\u145a\u0007\u08c3\u0002\u0002\u145a\u0203\u0003\u0002\u0002\u0002\u145b",
+ "\u145c\u0005\u05d2\u02ea\u0002\u145c\u0205\u0003\u0002\u0002\u0002\u145d",
+ "\u145e\u0007\u0122\u0002\u0002\u145e\u145f\u0007\u00c7\u0002\u0002\u145f",
+ "\u1460\u0005\u00ba^\u0002\u1460\u1461\u0007\u08b1\u0002\u0002\u1461",
+ "\u1462\u0005\u0592\u02ca\u0002\u1462\u1464\u0005\u05b6\u02dc\u0002\u1463",
+ "\u1465\u0007\u060a\u0002\u0002\u1464\u1463\u0003\u0002\u0002\u0002\u1464",
+ "\u1465\u0003\u0002\u0002\u0002\u1465\u146e\u0003\u0002\u0002\u0002\u1466",
+ "\u1467\u0007\u08b7\u0002\u0002\u1467\u1468\u0005\u0592\u02ca\u0002\u1468",
+ "\u146a\u0005\u05b6\u02dc\u0002\u1469\u146b\u0007\u060a\u0002\u0002\u146a",
+ "\u1469\u0003\u0002\u0002\u0002\u146a\u146b\u0003\u0002\u0002\u0002\u146b",
+ "\u146d\u0003\u0002\u0002\u0002\u146c\u1466\u0003\u0002\u0002\u0002\u146d",
+ "\u1470\u0003\u0002\u0002\u0002\u146e\u146c\u0003\u0002\u0002\u0002\u146e",
+ "\u146f\u0003\u0002\u0002\u0002\u146f\u1471\u0003\u0002\u0002\u0002\u1470",
+ "\u146e\u0003\u0002\u0002\u0002\u1471\u1485\u0007\u08b2\u0002\u0002\u1472",
+ "\u1484\u0005\u0264\u0133\u0002\u1473\u1474\u0007\u0601\u0002\u0002\u1474",
+ "\u1484\u0005\u0260\u0131\u0002\u1475\u1476\u0007\u0777\u0002\u0002\u1476",
+ "\u1484\u0005\u0346\u01a4\u0002\u1477\u1484\u0007\u0279\u0002\u0002\u1478",
+ "\u1479\u0007\u05fd\u0002\u0002\u1479\u147b\u0007\u077a\u0002\u0002\u147a",
+ "\u1478\u0003\u0002\u0002\u0002\u147a\u147b\u0003\u0002\u0002\u0002\u147b",
+ "\u147c\u0003\u0002\u0002\u0002\u147c\u147d\u0007\u0249\u0002\u0002\u147d",
+ "\u1481\u0007\u08ab\u0002\u0002\u147e\u147f\u0007\u0248\u0002\u0002\u147f",
+ "\u1480\u0007\u02b9\u0002\u0002\u1480\u1482\u0005\u04d4\u026b\u0002\u1481",
+ "\u147e\u0003\u0002\u0002\u0002\u1481\u1482\u0003\u0002\u0002\u0002\u1482",
+ "\u1484\u0003\u0002\u0002\u0002\u1483\u1472\u0003\u0002\u0002\u0002\u1483",
+ "\u1473\u0003\u0002\u0002\u0002\u1483\u1475\u0003\u0002\u0002\u0002\u1483",
+ "\u1477\u0003\u0002\u0002\u0002\u1483\u147a\u0003\u0002\u0002\u0002\u1484",
+ "\u1487\u0003\u0002\u0002\u0002\u1485\u1483\u0003\u0002\u0002\u0002\u1485",
+ "\u1486\u0003\u0002\u0002\u0002\u1486\u1489\u0003\u0002\u0002\u0002\u1487",
+ "\u1485\u0003\u0002\u0002\u0002\u1488\u148a\u0005\u01dc\u00ef\u0002\u1489",
+ "\u1488\u0003\u0002\u0002\u0002\u1489\u148a\u0003\u0002\u0002\u0002\u148a",
+ "\u148c\u0003\u0002\u0002\u0002\u148b\u148d\t9\u0002\u0002\u148c\u148b",
+ "\u0003\u0002\u0002\u0002\u148c\u148d\u0003\u0002\u0002\u0002\u148d\u148f",
+ "\u0003\u0002\u0002\u0002\u148e\u1490\t5\u0002\u0002\u148f\u148e\u0003",
+ "\u0002\u0002\u0002\u148f\u1490\u0003\u0002\u0002\u0002\u1490\u1491\u0003",
+ "\u0002\u0002\u0002\u1491\u1492\u0007\u08c3\u0002\u0002\u1492\u0207\u0003",
+ "\u0002\u0002\u0002\u1493\u1496\u0007\u0122\u0002\u0002\u1494\u1495\u0007",
+ "\u0238\u0002\u0002\u1495\u1497\u0007\u0782\u0002\u0002\u1496\u1494\u0003",
+ "\u0002\u0002\u0002\u1496\u1497\u0003\u0002\u0002\u0002\u1497\u1498\u0003",
+ "\u0002\u0002\u0002\u1498\u1499\u0007\u077a\u0002\u0002\u1499\u149d\u0005",
+ "\u0594\u02cb\u0002\u149a\u149e\u0005\u021e\u0110\u0002\u149b\u149e\u0005",
+ "\u0214\u010b\u0002\u149c\u149e\u0005\u020a\u0106\u0002\u149d\u149a\u0003",
+ "\u0002\u0002\u0002\u149d\u149b\u0003\u0002\u0002\u0002\u149d\u149c\u0003",
+ "\u0002\u0002\u0002\u149e\u14a1\u0003\u0002\u0002\u0002\u149f\u14a0\u0007",
+ "?\u0002\u0002\u14a0\u14a2\u0005\u0412\u020a\u0002\u14a1\u149f\u0003",
+ "\u0002\u0002\u0002\u14a1\u14a2\u0003\u0002\u0002\u0002\u14a2\u14a3\u0003",
+ "\u0002\u0002\u0002\u14a3\u14a4\u0007\u08c3\u0002\u0002\u14a4\u0209\u0003",
+ "\u0002\u0002\u0002\u14a5\u14a6\u0007\u045d\u0002\u0002\u14a6\u14ab\u0007",
+ "\u0874\u0002\u0002\u14a7\u14a8\u0007\u08b1\u0002\u0002\u14a8\u14a9\u0005",
+ "\u021a\u010e\u0002\u14a9\u14aa\u0007\u08b2\u0002\u0002\u14aa\u14ac\u0003",
+ "\u0002\u0002\u0002\u14ab\u14a7\u0003\u0002\u0002\u0002\u14ab\u14ac\u0003",
+ "\u0002\u0002\u0002\u14ac\u14af\u0003\u0002\u0002\u0002\u14ad\u14ae\u0007",
+ "\u0874\u0002\u0002\u14ae\u14b0\u0005\u0210\u0109\u0002\u14af\u14ad\u0003",
+ "\u0002\u0002\u0002\u14af\u14b0\u0003\u0002\u0002\u0002\u14b0\u14b2\u0003",
+ "\u0002\u0002\u0002\u14b1\u14b3\u0005\u0212\u010a\u0002\u14b2\u14b1\u0003",
+ "\u0002\u0002\u0002\u14b2\u14b3\u0003\u0002\u0002\u0002\u14b3\u14b5\u0003",
+ "\u0002\u0002\u0002\u14b4\u14b6\u0005\u020c\u0107\u0002\u14b5\u14b4\u0003",
+ "\u0002\u0002\u0002\u14b5\u14b6\u0003\u0002\u0002\u0002\u14b6\u14bb\u0003",
+ "\u0002\u0002\u0002\u14b7\u14b8\u0007\u046a\u0002\u0002\u14b8\u14b9\u0007",
+ "\u00dc\u0002\u0002\u14b9\u14ba\t:\u0002\u0002\u14ba\u14bc\u0007\u05ae",
+ "\u0002\u0002\u14bb\u14b7\u0003\u0002\u0002\u0002\u14bb\u14bc\u0003\u0002",
+ "\u0002\u0002\u14bc\u14be\u0003\u0002\u0002\u0002\u14bd\u14bf\u0005\u0218",
+ "\u010d\u0002\u14be\u14bd\u0003\u0002\u0002\u0002\u14be\u14bf\u0003\u0002",
+ "\u0002\u0002\u14bf\u14c1\u0003\u0002\u0002\u0002\u14c0\u14c2\u0005\u0216",
+ "\u010c\u0002\u14c1\u14c0\u0003\u0002\u0002\u0002\u14c1\u14c2\u0003\u0002",
+ "\u0002\u0002\u14c2\u14c4\u0003\u0002\u0002\u0002\u14c3\u14c5\u0005\u026c",
+ "\u0137\u0002\u14c4\u14c3\u0003\u0002\u0002\u0002\u14c4\u14c5\u0003\u0002",
+ "\u0002\u0002\u14c5\u14c7\u0003\u0002\u0002\u0002\u14c6\u14c8\u0005\u034a",
+ "\u01a6\u0002\u14c7\u14c6\u0003\u0002\u0002\u0002\u14c7\u14c8\u0003\u0002",
+ "\u0002\u0002\u14c8\u14ca\u0003\u0002\u0002\u0002\u14c9\u14cb\u0005\u0222",
+ "\u0112\u0002\u14ca\u14c9\u0003\u0002\u0002\u0002\u14ca\u14cb\u0003\u0002",
+ "\u0002\u0002\u14cb\u14cd\u0003\u0002\u0002\u0002\u14cc\u14ce\t5\u0002",
+ "\u0002\u14cd\u14cc\u0003\u0002\u0002\u0002\u14cd\u14ce\u0003\u0002\u0002",
+ "\u0002\u14ce\u14d4\u0003\u0002\u0002\u0002\u14cf\u14d0\u0007\u0592\u0002",
+ "\u0002\u14d0\u14d1\u0007\u08b1\u0002\u0002\u14d1\u14d2\u0007\u035e\u0002",
+ "\u0002\u14d2\u14d3\t;\u0002\u0002\u14d3\u14d5\u0007\u08b2\u0002\u0002",
+ "\u14d4\u14cf\u0003\u0002\u0002\u0002\u14d4\u14d5\u0003\u0002\u0002\u0002",
+ "\u14d5\u14d7\u0003\u0002\u0002\u0002\u14d6\u14d8\u0005\u01dc\u00ef\u0002",
+ "\u14d7\u14d6\u0003\u0002\u0002\u0002\u14d7\u14d8\u0003\u0002\u0002\u0002",
+ "\u14d8\u14da\u0003\u0002\u0002\u0002\u14d9\u14db\t9\u0002\u0002\u14da",
+ "\u14d9\u0003\u0002\u0002\u0002\u14da\u14db\u0003\u0002\u0002\u0002\u14db",
+ "\u14e1\u0003\u0002\u0002\u0002\u14dc\u14de\u0005\u02fe\u0180\u0002\u14dd",
+ "\u14dc\u0003\u0002\u0002\u0002\u14de\u14df\u0003\u0002\u0002\u0002\u14df",
+ "\u14dd\u0003\u0002\u0002\u0002\u14df\u14e0\u0003\u0002\u0002\u0002\u14e0",
+ "\u14e2\u0003\u0002\u0002\u0002\u14e1\u14dd\u0003\u0002\u0002\u0002\u14e1",
+ "\u14e2\u0003\u0002\u0002\u0002\u14e2\u14e4\u0003\u0002\u0002\u0002\u14e3",
+ "\u14e5\u0005\u026e\u0138\u0002\u14e4\u14e3\u0003\u0002\u0002\u0002\u14e4",
+ "\u14e5\u0003\u0002\u0002\u0002\u14e5\u14e7\u0003\u0002\u0002\u0002\u14e6",
+ "\u14e8\u0005\u0270\u0139\u0002\u14e7\u14e6\u0003\u0002\u0002\u0002\u14e7",
+ "\u14e8\u0003\u0002\u0002\u0002\u14e8\u020b\u0003\u0002\u0002\u0002\u14e9",
+ "\u14ea\u0007\u0837\u0002\u0002\u14ea\u14eb\u0007\u00d8\u0002\u0002\u14eb",
+ "\u14ec\u0007\u08b1\u0002\u0002\u14ec\u14ed\u0005\u0592\u02ca\u0002\u14ed",
+ "\u14ee\u0007?\u0002\u0002\u14ee\u14ef\u0007\u08b1\u0002\u0002\u14ef",
+ "\u14f0\u0005\u04d4\u026b\u0002\u14f0\u14fa\u0007\u08b2\u0002\u0002\u14f1",
+ "\u14f2\u0007\u08b7\u0002\u0002\u14f2\u14f3\u0005\u0592\u02ca\u0002\u14f3",
+ "\u14f4\u0007?\u0002\u0002\u14f4\u14f5\u0007\u08b1\u0002\u0002\u14f5",
+ "\u14f6\u0005\u04d4\u026b\u0002\u14f6\u14f7\u0007\u08b2\u0002\u0002\u14f7",
+ "\u14f9\u0003\u0002\u0002\u0002\u14f8\u14f1\u0003\u0002\u0002\u0002\u14f9",
+ "\u14fc\u0003\u0002\u0002\u0002\u14fa\u14f8\u0003\u0002\u0002\u0002\u14fa",
+ "\u14fb\u0003\u0002\u0002\u0002\u14fb\u14fd\u0003\u0002\u0002\u0002\u14fc",
+ "\u14fa\u0003\u0002\u0002\u0002\u14fd\u14fe\u0007\u08b2\u0002\u0002\u14fe",
+ "\u020d\u0003\u0002\u0002\u0002\u14ff\u1501\u0007\u0874\u0002\u0002\u1500",
+ "\u1502\u0007\u00d7\u0002\u0002\u1501\u1500\u0003\u0002\u0002\u0002\u1501",
+ "\u1502\u0003\u0002\u0002\u0002\u1502\u1503\u0003\u0002\u0002\u0002\u1503",
+ "\u1505\u0005\u0592\u02ca\u0002\u1504\u1506\u0005\u0210\u0109\u0002\u1505",
+ "\u1504\u0003\u0002\u0002\u0002\u1505\u1506\u0003\u0002\u0002\u0002\u1506",
+ "\u1508\u0003\u0002\u0002\u0002\u1507\u1509\u0005\u0212\u010a\u0002\u1508",
+ "\u1507\u0003\u0002\u0002\u0002\u1508\u1509\u0003\u0002\u0002\u0002\u1509",
+ "\u020f\u0003\u0002\u0002\u0002\u150a\u150b\u0007\u063c\u0002\u0002\u150b",
+ "\u1523\u0007?\u0002\u0002\u150c\u150d\u0007\u0455\u0002\u0002\u150d",
+ "\u1524\u0007\u0577\u0002\u0002\u150e\u1510\t<\u0002\u0002\u150f\u150e",
+ "\u0003\u0002\u0002\u0002\u150f\u1510\u0003\u0002\u0002\u0002\u1510\u1514",
+ "\u0003\u0002\u0002\u0002\u1511\u1515\u0007\u00c2\u0002\u0002\u1512\u1513",
+ "\u0007q\u0002\u0002\u1513\u1515\u0007\u0875\u0002\u0002\u1514\u1511",
+ "\u0003\u0002\u0002\u0002\u1514\u1512\u0003\u0002\u0002\u0002\u1515\u1521",
+ "\u0003\u0002\u0002\u0002\u1516\u151b\u0005\u0330\u0199\u0002\u1517\u1518",
+ "\u0007\u08b1\u0002\u0002\u1518\u1519\u0005\u033c\u019f\u0002\u1519\u151a",
+ "\u0007\u08b2\u0002\u0002\u151a\u151c\u0003\u0002\u0002\u0002\u151b\u1517",
+ "\u0003\u0002\u0002\u0002\u151b\u151c\u0003\u0002\u0002\u0002\u151c\u1522",
+ "\u0003\u0002\u0002\u0002\u151d\u151e\u0007\u08b1\u0002\u0002\u151e\u151f",
+ "\u0005\u033c\u019f\u0002\u151f\u1520\u0007\u08b2\u0002\u0002\u1520\u1522",
+ "\u0003\u0002\u0002\u0002\u1521\u1516\u0003\u0002\u0002\u0002\u1521\u151d",
+ "\u0003\u0002\u0002\u0002\u1521\u1522\u0003\u0002\u0002\u0002\u1522\u1524",
+ "\u0003\u0002\u0002\u0002\u1523\u150c\u0003\u0002\u0002\u0002\u1523\u150f",
+ "\u0003\u0002\u0002\u0002\u1524\u152a\u0003\u0002\u0002\u0002\u1525\u1526",
+ "\u0007\u063c\u0002\u0002\u1526\u1527\u0007\u0821\u0002\u0002\u1527\u1528",
+ "\u0007?\u0002\u0002\u1528\u152a\t=\u0002\u0002\u1529\u150a\u0003\u0002",
+ "\u0002\u0002\u1529\u1525\u0003\u0002\u0002\u0002\u152a\u0211\u0003\u0002",
+ "\u0002\u0002\u152b\u152c\u0007\u086f\u0002\u0002\u152c\u152e\u0007\u08ae",
+ "\u0002\u0002\u152d\u152b\u0003\u0002\u0002\u0002\u152d\u152e\u0003\u0002",
+ "\u0002\u0002\u152e\u152f\u0003\u0002\u0002\u0002\u152f\u1530\u0007\u01ad",
+ "\u0002\u0002\u1530\u1534\u0007\u08ae\u0002\u0002\u1531\u1532\u0005\u028c",
+ "\u0147\u0002\u1532\u1533\u0007\u03f5\u0002\u0002\u1533\u1535\u0003\u0002",
+ "\u0002\u0002\u1534\u1531\u0003\u0002\u0002\u0002\u1534\u1535\u0003\u0002",
+ "\u0002\u0002\u1535\u1539\u0003\u0002\u0002\u0002\u1536\u1537\u0005\u028c",
+ "\u0147\u0002\u1537\u1538\u00073\u0002\u0002\u1538\u153a\u0003\u0002",
+ "\u0002\u0002\u1539\u1536\u0003\u0002\u0002\u0002\u1539\u153a\u0003\u0002",
+ "\u0002\u0002\u153a\u0213\u0003\u0002\u0002\u0002\u153b\u153c\u0007\u045d",
+ "\u0002\u0002\u153c\u153e\u0005\u057a\u02be\u0002\u153d\u153f\u0005\u021c",
+ "\u010f\u0002\u153e\u153d\u0003\u0002\u0002\u0002\u153e\u153f\u0003\u0002",
+ "\u0002\u0002\u153f\u154b\u0003\u0002\u0002\u0002\u1540\u1541\u0007\u08b1",
+ "\u0002\u0002\u1541\u1546\u0005\u021a\u010e\u0002\u1542\u1543\u0007\u08b7",
+ "\u0002\u0002\u1543\u1545\u0005\u021a\u010e\u0002\u1544\u1542\u0003\u0002",
+ "\u0002\u0002\u1545\u1548\u0003\u0002\u0002\u0002\u1546\u1544\u0003\u0002",
+ "\u0002\u0002\u1546\u1547\u0003\u0002\u0002\u0002\u1547\u1549\u0003\u0002",
+ "\u0002\u0002\u1548\u1546\u0003\u0002\u0002\u0002\u1549\u154a\u0007\u08b2",
+ "\u0002\u0002\u154a\u154c\u0003\u0002\u0002\u0002\u154b\u1540\u0003\u0002",
+ "\u0002\u0002\u154b\u154c\u0003\u0002\u0002\u0002\u154c\u1551\u0003\u0002",
+ "\u0002\u0002\u154d\u154e\u0007\u046a\u0002\u0002\u154e\u154f\u0007\u00dc",
+ "\u0002\u0002\u154f\u1550\t:\u0002\u0002\u1550\u1552\u0007\u05ae\u0002",
+ "\u0002\u1551\u154d\u0003\u0002\u0002\u0002\u1551\u1552\u0003\u0002\u0002",
+ "\u0002\u1552\u1554\u0003\u0002\u0002\u0002\u1553\u1555\u0005\u0218\u010d",
+ "\u0002\u1554\u1553\u0003\u0002\u0002\u0002\u1554\u1555\u0003\u0002\u0002",
+ "\u0002\u1555\u1557\u0003\u0002\u0002\u0002\u1556\u1558\u0005\u0216\u010c",
+ "\u0002\u1557\u1556\u0003\u0002\u0002\u0002\u1557\u1558\u0003\u0002\u0002",
+ "\u0002\u1558\u155a\u0003\u0002\u0002\u0002\u1559\u155b\u0005\u026c\u0137",
+ "\u0002\u155a\u1559\u0003\u0002\u0002\u0002\u155a\u155b\u0003\u0002\u0002",
+ "\u0002\u155b\u155d\u0003\u0002\u0002\u0002\u155c\u155e\u0005\u034a\u01a6",
+ "\u0002\u155d\u155c\u0003\u0002\u0002\u0002\u155d\u155e\u0003\u0002\u0002",
+ "\u0002\u155e\u1560\u0003\u0002\u0002\u0002\u155f\u1561\u0005\u0222\u0112",
+ "\u0002\u1560\u155f\u0003\u0002\u0002\u0002\u1560\u1561\u0003\u0002\u0002",
+ "\u0002\u1561\u1563\u0003\u0002\u0002\u0002\u1562\u1564\t5\u0002\u0002",
+ "\u1563\u1562\u0003\u0002\u0002\u0002\u1563\u1564\u0003\u0002\u0002\u0002",
+ "\u1564\u156a\u0003\u0002\u0002\u0002\u1565\u1566\u0007\u0592\u0002\u0002",
+ "\u1566\u1567\u0007\u08b1\u0002\u0002\u1567\u1568\u0007\u035e\u0002\u0002",
+ "\u1568\u1569\t;\u0002\u0002\u1569\u156b\u0007\u08b2\u0002\u0002\u156a",
+ "\u1565\u0003\u0002\u0002\u0002\u156a\u156b\u0003\u0002\u0002\u0002\u156b",
+ "\u156d\u0003\u0002\u0002\u0002\u156c\u156e\u0005\u01dc\u00ef\u0002\u156d",
+ "\u156c\u0003\u0002\u0002\u0002\u156d\u156e\u0003\u0002\u0002\u0002\u156e",
+ "\u1570\u0003\u0002\u0002\u0002\u156f\u1571\t9\u0002\u0002\u1570\u156f",
+ "\u0003\u0002\u0002\u0002\u1570\u1571\u0003\u0002\u0002\u0002\u1571\u1577",
+ "\u0003\u0002\u0002\u0002\u1572\u1574\u0005\u02fe\u0180\u0002\u1573\u1572",
+ "\u0003\u0002\u0002\u0002\u1574\u1575\u0003\u0002\u0002\u0002\u1575\u1573",
+ "\u0003\u0002\u0002\u0002\u1575\u1576\u0003\u0002\u0002\u0002\u1576\u1578",
+ "\u0003\u0002\u0002\u0002\u1577\u1573\u0003\u0002\u0002\u0002\u1577\u1578",
+ "\u0003\u0002\u0002\u0002\u1578\u157a\u0003\u0002\u0002\u0002\u1579\u157b",
+ "\u0005\u026e\u0138\u0002\u157a\u1579\u0003\u0002\u0002\u0002\u157a\u157b",
+ "\u0003\u0002\u0002\u0002\u157b\u157d\u0003\u0002\u0002\u0002\u157c\u157e",
+ "\u0005\u0270\u0139\u0002\u157d\u157c\u0003\u0002\u0002\u0002\u157d\u157e",
+ "\u0003\u0002\u0002\u0002\u157e\u0215\u0003\u0002\u0002\u0002\u157f\u1581",
+ "\u0007\u045e\u0002\u0002\u1580\u1582\u0005\u0588\u02c5\u0002\u1581\u1580",
+ "\u0003\u0002\u0002\u0002\u1581\u1582\u0003\u0002\u0002\u0002\u1582\u1583",
+ "\u0003\u0002\u0002\u0002\u1583\u1587\u0007\u08b1\u0002\u0002\u1584\u1588",
+ "\u0005\u0264\u0133\u0002\u1585\u1586\u0007\u0777\u0002\u0002\u1586\u1588",
+ "\u0005\u0346\u01a4\u0002\u1587\u1584\u0003\u0002\u0002\u0002\u1587\u1585",
+ "\u0003\u0002\u0002\u0002\u1588\u1589\u0003\u0002\u0002\u0002\u1589\u1587",
+ "\u0003\u0002\u0002\u0002\u1589\u158a\u0003\u0002\u0002\u0002\u158a\u158b",
+ "\u0003\u0002\u0002\u0002\u158b\u158c\u0007\u08b2\u0002\u0002\u158c\u0217",
+ "\u0003\u0002\u0002\u0002\u158d\u158e\u0007\u0455\u0002\u0002\u158e\u158f",
+ "\u0007\u025c\u0002\u0002\u158f\u1594\u0007\u02b9\u0002\u0002\u1590\u1591",
+ "\u0007\u06f5\u0002\u0002\u1591\u1595\u0007\u0236\u0002\u0002\u1592\u1593",
+ "\u0007\u051a\u0002\u0002\u1593\u1595\u0007\u02d4\u0002\u0002\u1594\u1590",
+ "\u0003\u0002\u0002\u0002\u1594\u1592\u0003\u0002\u0002\u0002\u1595\u0219",
+ "\u0003\u0002\u0002\u0002\u1596\u1599\u0005\u0592\u02ca\u0002\u1597\u1599",
+ "\u0005\u0556\u02ac\u0002\u1598\u1596\u0003\u0002\u0002\u0002\u1598\u1597",
+ "\u0003\u0002\u0002\u0002\u1599\u159c\u0003\u0002\u0002\u0002\u159a\u159b",
+ "\u0007\u0161\u0002\u0002\u159b\u159d\u0005\u04d4\u026b\u0002\u159c\u159a",
+ "\u0003\u0002\u0002\u0002\u159c\u159d\u0003\u0002\u0002\u0002\u159d\u15a7",
+ "\u0003\u0002\u0002\u0002\u159e\u15a3\u0005\u01a2\u00d2\u0002\u159f\u15a0",
+ "\u0007\u08b7\u0002\u0002\u15a0\u15a2\u0005\u01a2\u00d2\u0002\u15a1\u159f",
+ "\u0003\u0002\u0002\u0002\u15a2\u15a5\u0003\u0002\u0002\u0002\u15a3\u15a1",
+ "\u0003\u0002\u0002\u0002\u15a3\u15a4\u0003\u0002\u0002\u0002\u15a4\u15a8",
+ "\u0003\u0002\u0002\u0002\u15a5\u15a3\u0003\u0002\u0002\u0002\u15a6\u15a8",
+ "\u0005\u01a4\u00d3\u0002\u15a7\u159e\u0003\u0002\u0002\u0002\u15a7\u15a6",
+ "\u0003\u0002\u0002\u0002\u15a7\u15a8\u0003\u0002\u0002\u0002\u15a8\u15ad",
+ "\u0003\u0002\u0002\u0002\u15a9\u15ad\u0005\u01a8\u00d5\u0002\u15aa\u15ad",
+ "\u0005\u01a6\u00d4\u0002\u15ab\u15ad\u0005\u0362\u01b2\u0002\u15ac\u1598",
+ "\u0003\u0002\u0002\u0002\u15ac\u15a9\u0003\u0002\u0002\u0002\u15ac\u15aa",
+ "\u0003\u0002\u0002\u0002\u15ac\u15ab\u0003\u0002\u0002\u0002\u15ad\u021b",
+ "\u0003\u0002\u0002\u0002\u15ae\u15b0\u0007\u0433\u0002\u0002\u15af\u15ae",
+ "\u0003\u0002\u0002\u0002\u15af\u15b0\u0003\u0002\u0002\u0002\u15b0\u15b1",
+ "\u0003\u0002\u0002\u0002\u15b1\u15b2\u0007\u064d\u0002\u0002\u15b2\u15b3",
+ "\u0007L\u0002\u0002\u15b3\u15b4\u0007%\u0002\u0002\u15b4\u15b5\u0007",
+ "\u02ee\u0002\u0002\u15b5\u021d\u0003\u0002\u0002\u0002\u15b6\u15b7\u0007",
+ "\u08b1\u0002\u0002\u15b7\u15bc\u0005\u0220\u0111\u0002\u15b8\u15b9\u0007",
+ "\u08b7\u0002\u0002\u15b9\u15bb\u0005\u0220\u0111\u0002\u15ba\u15b8\u0003",
+ "\u0002\u0002\u0002\u15bb\u15be\u0003\u0002\u0002\u0002\u15bc\u15ba\u0003",
+ "\u0002\u0002\u0002\u15bc\u15bd\u0003\u0002\u0002\u0002\u15bd\u15bf\u0003",
+ "\u0002\u0002\u0002\u15be\u15bc\u0003\u0002\u0002\u0002\u15bf\u15c0\u0007",
+ "\u08b2\u0002\u0002\u15c0\u15c2\u0003\u0002\u0002\u0002\u15c1\u15b6\u0003",
+ "\u0002\u0002\u0002\u15c1\u15c2\u0003\u0002\u0002\u0002\u15c2\u15c7\u0003",
+ "\u0002\u0002\u0002\u15c3\u15c4\u0007\u046a\u0002\u0002\u15c4\u15c5\u0007",
+ "\u00dc\u0002\u0002\u15c5\u15c6\t:\u0002\u0002\u15c6\u15c8\u0007\u05ae",
+ "\u0002\u0002\u15c7\u15c3\u0003\u0002\u0002\u0002\u15c7\u15c8\u0003\u0002",
+ "\u0002\u0002\u15c8\u15ca\u0003\u0002\u0002\u0002\u15c9\u15cb\u0005\u026c",
+ "\u0137\u0002\u15ca\u15c9\u0003\u0002\u0002\u0002\u15ca\u15cb\u0003\u0002",
+ "\u0002\u0002\u15cb\u15cd\u0003\u0002\u0002\u0002\u15cc\u15ce\u0005\u034a",
+ "\u01a6\u0002\u15cd\u15cc\u0003\u0002\u0002\u0002\u15cd\u15ce\u0003\u0002",
+ "\u0002\u0002\u15ce\u15d0\u0003\u0002\u0002\u0002\u15cf\u15d1\u0005\u0222",
+ "\u0112\u0002\u15d0\u15cf\u0003\u0002\u0002\u0002\u15d0\u15d1\u0003\u0002",
+ "\u0002\u0002\u15d1\u15d3\u0003\u0002\u0002\u0002\u15d2\u15d4\t5\u0002",
+ "\u0002\u15d3\u15d2\u0003\u0002\u0002\u0002\u15d3\u15d4\u0003\u0002\u0002",
+ "\u0002\u15d4\u15da\u0003\u0002\u0002\u0002\u15d5\u15d6\u0007\u0592\u0002",
+ "\u0002\u15d6\u15d7\u0007\u08b1\u0002\u0002\u15d7\u15d8\u0007\u035e\u0002",
+ "\u0002\u15d8\u15d9\t;\u0002\u0002\u15d9\u15db\u0007\u08b2\u0002\u0002",
+ "\u15da\u15d5\u0003\u0002\u0002\u0002\u15da\u15db\u0003\u0002\u0002\u0002",
+ "\u15db\u15dd\u0003\u0002\u0002\u0002\u15dc\u15de\u0005\u01dc\u00ef\u0002",
+ "\u15dd\u15dc\u0003\u0002\u0002\u0002\u15dd\u15de\u0003\u0002\u0002\u0002",
+ "\u15de\u15e0\u0003\u0002\u0002\u0002\u15df\u15e1\t9\u0002\u0002\u15e0",
+ "\u15df\u0003\u0002\u0002\u0002\u15e0\u15e1\u0003\u0002\u0002\u0002\u15e1",
+ "\u15e7\u0003\u0002\u0002\u0002\u15e2\u15e4\u0005\u02fe\u0180\u0002\u15e3",
+ "\u15e2\u0003\u0002\u0002\u0002\u15e4\u15e5\u0003\u0002\u0002\u0002\u15e5",
+ "\u15e3\u0003\u0002\u0002\u0002\u15e5\u15e6\u0003\u0002\u0002\u0002\u15e6",
+ "\u15e8\u0003\u0002\u0002\u0002\u15e7\u15e3\u0003\u0002\u0002\u0002\u15e7",
+ "\u15e8\u0003\u0002\u0002\u0002\u15e8\u15ea\u0003\u0002\u0002\u0002\u15e9",
+ "\u15eb\u0005\u026e\u0138\u0002\u15ea\u15e9\u0003\u0002\u0002\u0002\u15ea",
+ "\u15eb\u0003\u0002\u0002\u0002\u15eb\u15ed\u0003\u0002\u0002\u0002\u15ec",
+ "\u15ee\u0005\u0270\u0139\u0002\u15ed\u15ec\u0003\u0002\u0002\u0002\u15ed",
+ "\u15ee\u0003\u0002\u0002\u0002\u15ee\u021f\u0003\u0002\u0002\u0002\u15ef",
+ "\u15f5\u0005\u0352\u01aa\u0002\u15f0\u15f5\u0005\u0354\u01ab\u0002\u15f1",
+ "\u15f5\u0005\u01a8\u00d5\u0002\u15f2\u15f5\u0005\u01a6\u00d4\u0002\u15f3",
+ "\u15f5\u0005\u0362\u01b2\u0002\u15f4\u15ef\u0003\u0002\u0002\u0002\u15f4",
+ "\u15f0\u0003\u0002\u0002\u0002\u15f4\u15f1\u0003\u0002\u0002\u0002\u15f4",
+ "\u15f2\u0003\u0002\u0002\u0002\u15f4\u15f3\u0003\u0002\u0002\u0002\u15f5",
+ "\u0221\u0003\u0002\u0002\u0002\u15f6\u15ff\u0005\u0224\u0113\u0002\u15f7",
+ "\u15ff\u0005\u0226\u0114\u0002\u15f8\u15ff\u0005\u0228\u0115\u0002\u15f9",
+ "\u15ff\u0005\u0230\u0119\u0002\u15fa\u15ff\u0005\u0232\u011a\u0002\u15fb",
+ "\u15ff\u0005\u0234\u011b\u0002\u15fc\u15ff\u0005\u0236\u011c\u0002\u15fd",
+ "\u15ff\u0005\u023a\u011e\u0002\u15fe\u15f6\u0003\u0002\u0002\u0002\u15fe",
+ "\u15f7\u0003\u0002\u0002\u0002\u15fe\u15f8\u0003\u0002\u0002\u0002\u15fe",
+ "\u15f9\u0003\u0002\u0002\u0002\u15fe\u15fa\u0003\u0002\u0002\u0002\u15fe",
+ "\u15fb\u0003\u0002\u0002\u0002\u15fe\u15fc\u0003\u0002\u0002\u0002\u15fe",
+ "\u15fd\u0003\u0002\u0002\u0002\u15ff\u0223\u0003\u0002\u0002\u0002\u1600",
+ "\u1601\u0007\u04b9\u0002\u0002\u1601\u1602\u0007\u0094\u0002\u0002\u1602",
+ "\u1603\u0007\u0542\u0002\u0002\u1603\u1604\u0007\u08b1\u0002\u0002\u1604",
+ "\u1609\u0005\u0592\u02ca\u0002\u1605\u1606\u0007\u08b7\u0002\u0002\u1606",
+ "\u1608\u0005\u0592\u02ca\u0002\u1607\u1605\u0003\u0002\u0002\u0002\u1608",
+ "\u160b\u0003\u0002\u0002\u0002\u1609\u1607\u0003\u0002\u0002\u0002\u1609",
+ "\u160a\u0003\u0002\u0002\u0002\u160a\u160c\u0003\u0002\u0002\u0002\u160b",
+ "\u1609\u0003\u0002\u0002\u0002\u160c\u1620\u0007\u08b2\u0002\u0002\u160d",
+ "\u160e\u0007\u02b3\u0002\u0002\u160e\u160f\u0007\u08b1\u0002\u0002\u160f",
+ "\u1610\u0005\u04d4\u026b\u0002\u1610\u161e\u0007\u08b2\u0002\u0002\u1611",
+ "\u1612\u0007\u063c\u0002\u0002\u1612\u1613\u0007\u028e\u0002\u0002\u1613",
+ "\u1614\u0007\u08b1\u0002\u0002\u1614\u1619\u0005\u0346\u01a4\u0002\u1615",
+ "\u1616\u0007\u08b7\u0002\u0002\u1616\u1618\u0005\u0346\u01a4\u0002\u1617",
+ "\u1615\u0003\u0002\u0002\u0002\u1618\u161b\u0003\u0002\u0002\u0002\u1619",
+ "\u1617\u0003\u0002\u0002\u0002\u1619\u161a\u0003\u0002\u0002\u0002\u161a",
+ "\u161c\u0003\u0002\u0002\u0002\u161b\u1619\u0003\u0002\u0002\u0002\u161c",
+ "\u161d\u0007\u08b2\u0002\u0002\u161d\u161f\u0003\u0002\u0002\u0002\u161e",
+ "\u1611\u0003\u0002\u0002\u0002\u161e\u161f\u0003\u0002\u0002\u0002\u161f",
+ "\u1621\u0003\u0002\u0002\u0002\u1620\u160d\u0003\u0002\u0002\u0002\u1620",
+ "\u1621\u0003\u0002\u0002\u0002\u1621\u1622\u0003\u0002\u0002\u0002\u1622",
+ "\u1623\u0007\u08b1\u0002\u0002\u1623\u1625\u0007\u04b9\u0002\u0002\u1624",
+ "\u1626\u0005\u0360\u01b1\u0002\u1625\u1624\u0003\u0002\u0002\u0002\u1625",
+ "\u1626\u0003\u0002\u0002\u0002\u1626\u1627\u0003\u0002\u0002\u0002\u1627",
+ "\u1628\u0005\u0254\u012b\u0002\u1628\u1633\u0005\u0258\u012d\u0002\u1629",
+ "\u162a\u0007\u08b7\u0002\u0002\u162a\u162c\u0007\u04b9\u0002\u0002\u162b",
+ "\u162d\u0005\u0360\u01b1\u0002\u162c\u162b\u0003\u0002\u0002\u0002\u162c",
+ "\u162d\u0003\u0002\u0002\u0002\u162d\u162e\u0003\u0002\u0002\u0002\u162e",
+ "\u162f\u0005\u0254\u012b\u0002\u162f\u1630\u0005\u0258\u012d\u0002\u1630",
+ "\u1632\u0003\u0002\u0002\u0002\u1631\u1629\u0003\u0002\u0002\u0002\u1632",
+ "\u1635\u0003\u0002\u0002\u0002\u1633\u1631\u0003\u0002\u0002\u0002\u1633",
+ "\u1634\u0003\u0002\u0002\u0002\u1634\u1636\u0003\u0002\u0002\u0002\u1635",
+ "\u1633\u0003\u0002\u0002\u0002\u1636\u1637\u0007\u08b2\u0002\u0002\u1637",
+ "\u0225\u0003\u0002\u0002\u0002\u1638\u1639\u0007\u04b9\u0002\u0002\u1639",
+ "\u163a\u0007\u0094\u0002\u0002\u163a\u163b\u0007\u02fb\u0002\u0002\u163b",
+ "\u163c\u0007\u08b1\u0002\u0002\u163c\u163d\u0005\u0592\u02ca\u0002\u163d",
+ "\u163e\u0007\u08b2\u0002\u0002\u163e\u163f\u0007\u08b1\u0002\u0002\u163f",
+ "\u1641\u0007\u04b9\u0002\u0002\u1640\u1642\u0005\u0360\u01b1\u0002\u1641",
+ "\u1640\u0003\u0002\u0002\u0002\u1641\u1642\u0003\u0002\u0002\u0002\u1642",
+ "\u1643\u0003\u0002\u0002\u0002\u1643\u1644\u0005\u0256\u012c\u0002\u1644",
+ "\u164f\u0005\u0258\u012d\u0002\u1645\u1646\u0007\u08b7\u0002\u0002\u1646",
+ "\u1648\u0007\u04b9\u0002\u0002\u1647\u1649\u0005\u0360\u01b1\u0002\u1648",
+ "\u1647\u0003\u0002\u0002\u0002\u1648\u1649\u0003\u0002\u0002\u0002\u1649",
+ "\u164a\u0003\u0002\u0002\u0002\u164a\u164b\u0005\u0256\u012c\u0002\u164b",
+ "\u164c\u0005\u0258\u012d\u0002\u164c\u164e\u0003\u0002\u0002\u0002\u164d",
+ "\u1645\u0003\u0002\u0002\u0002\u164e\u1651\u0003\u0002\u0002\u0002\u164f",
+ "\u164d\u0003\u0002\u0002\u0002\u164f\u1650\u0003\u0002\u0002\u0002\u1650",
+ "\u1652\u0003\u0002\u0002\u0002\u1651\u164f\u0003\u0002\u0002\u0002\u1652",
+ "\u1653\u0007\u08b2\u0002\u0002\u1653\u0227\u0003\u0002\u0002\u0002\u1654",
+ "\u1655\u0007\u04b9\u0002\u0002\u1655\u1656\u0007\u0094\u0002\u0002\u1656",
+ "\u1657\u0007\u0248\u0002\u0002\u1657\u1658\u0007\u08b1\u0002\u0002\u1658",
+ "\u165d\u0005\u0592\u02ca\u0002\u1659\u165a\u0007\u08b7\u0002\u0002\u165a",
+ "\u165c\u0005\u0592\u02ca\u0002\u165b\u1659\u0003\u0002\u0002\u0002\u165c",
+ "\u165f\u0003\u0002\u0002\u0002\u165d\u165b\u0003\u0002\u0002\u0002\u165d",
+ "\u165e\u0003\u0002\u0002\u0002\u165e\u1660\u0003\u0002\u0002\u0002\u165f",
+ "\u165d\u0003\u0002\u0002\u0002\u1660\u1663\u0007\u08b2\u0002\u0002\u1661",
+ "\u1664\u0005\u022a\u0116\u0002\u1662\u1664\u0005\u022c\u0117\u0002\u1663",
+ "\u1661\u0003\u0002\u0002\u0002\u1663\u1662\u0003\u0002\u0002\u0002\u1664",
+ "\u0229\u0003\u0002\u0002\u0002\u1665\u1666\u0007\u08b1\u0002\u0002\u1666",
+ "\u1668\u0007\u04b9\u0002\u0002\u1667\u1669\u0005\u0360\u01b1\u0002\u1668",
+ "\u1667\u0003\u0002\u0002\u0002\u1668\u1669\u0003\u0002\u0002\u0002\u1669",
+ "\u166b\u0003\u0002\u0002\u0002\u166a\u166c\u0005\u025a\u012e\u0002\u166b",
+ "\u166a\u0003\u0002\u0002\u0002\u166b\u166c\u0003\u0002\u0002\u0002\u166c",
+ "\u1677\u0003\u0002\u0002\u0002\u166d\u166e\u0007\u08b7\u0002\u0002\u166e",
+ "\u1670\u0007\u04b9\u0002\u0002\u166f\u1671\u0005\u0360\u01b1\u0002\u1670",
+ "\u166f\u0003\u0002\u0002\u0002\u1670\u1671\u0003\u0002\u0002\u0002\u1671",
+ "\u1673\u0003\u0002\u0002\u0002\u1672\u1674\u0005\u025a\u012e\u0002\u1673",
+ "\u1672\u0003\u0002\u0002\u0002\u1673\u1674\u0003\u0002\u0002\u0002\u1674",
+ "\u1676\u0003\u0002\u0002\u0002\u1675\u166d\u0003\u0002\u0002\u0002\u1676",
+ "\u1679\u0003\u0002\u0002\u0002\u1677\u1675\u0003\u0002\u0002\u0002\u1677",
+ "\u1678\u0003\u0002\u0002\u0002\u1678\u167a\u0003\u0002\u0002\u0002\u1679",
+ "\u1677\u0003\u0002\u0002\u0002\u167a\u167b\u0007\u08b2\u0002\u0002\u167b",
+ "\u022b\u0003\u0002\u0002\u0002\u167c\u167d\u0007\u04bb\u0002\u0002\u167d",
+ "\u168b\u0005\u022e\u0118\u0002\u167e\u167f\u0007\u063c\u0002\u0002\u167f",
+ "\u1680\u0007\u028e\u0002\u0002\u1680\u1681\u0007\u08b1\u0002\u0002\u1681",
+ "\u1686\u0005\u0346\u01a4\u0002\u1682\u1683\u0007\u08b7\u0002\u0002\u1683",
+ "\u1685\u0005\u0346\u01a4\u0002\u1684\u1682\u0003\u0002\u0002\u0002\u1685",
+ "\u1688\u0003\u0002\u0002\u0002\u1686\u1684\u0003\u0002\u0002\u0002\u1686",
+ "\u1687\u0003\u0002\u0002\u0002\u1687\u1689\u0003\u0002\u0002\u0002\u1688",
+ "\u1686\u0003\u0002\u0002\u0002\u1689\u168a\u0007\u08b2\u0002\u0002\u168a",
+ "\u168c\u0003\u0002\u0002\u0002\u168b\u167e\u0003\u0002\u0002\u0002\u168b",
+ "\u168c\u0003\u0002\u0002\u0002\u168c\u168f\u0003\u0002\u0002\u0002\u168d",
+ "\u1690\u0005\u0262\u0132\u0002\u168e\u1690\u0005\u030e\u0188\u0002\u168f",
+ "\u168d\u0003\u0002\u0002\u0002\u168f\u168e\u0003\u0002\u0002\u0002\u168f",
+ "\u1690\u0003\u0002\u0002\u0002\u1690\u169f\u0003\u0002\u0002\u0002\u1691",
+ "\u1692\u0007\u04a2\u0002\u0002\u1692\u1693\u0007\u063c\u0002\u0002\u1693",
+ "\u1694\u0007\u028e\u0002\u0002\u1694\u1695\u0007\u08b1\u0002\u0002\u1695",
+ "\u169a\u0005\u0346\u01a4\u0002\u1696\u1697\u0007\u08b7\u0002\u0002\u1697",
+ "\u1699\u0005\u0346\u01a4\u0002\u1698\u1696\u0003\u0002\u0002\u0002\u1699",
+ "\u169c\u0003\u0002\u0002\u0002\u169a\u1698\u0003\u0002\u0002\u0002\u169a",
+ "\u169b\u0003\u0002\u0002\u0002\u169b\u169d\u0003\u0002\u0002\u0002\u169c",
+ "\u169a\u0003\u0002\u0002\u0002\u169d\u169e\u0007\u08b2\u0002\u0002\u169e",
+ "\u16a0\u0003\u0002\u0002\u0002\u169f\u1691\u0003\u0002\u0002\u0002\u169f",
+ "\u16a0\u0003\u0002\u0002\u0002\u16a0\u022d\u0003\u0002\u0002\u0002\u16a1",
+ "\u16a2\u0007\u08ab\u0002\u0002\u16a2\u022f\u0003\u0002\u0002\u0002\u16a3",
+ "\u16a4\u0007\u04b9\u0002\u0002\u16a4\u16a5\u0007\u0094\u0002\u0002\u16a5",
+ "\u16a6\u0007\u0542\u0002\u0002\u16a6\u16a7\u0007\u08b1\u0002\u0002\u16a7",
+ "\u16ac\u0005\u0592\u02ca\u0002\u16a8\u16a9\u0007\u08b7\u0002\u0002\u16a9",
+ "\u16ab\u0005\u0592\u02ca\u0002\u16aa\u16a8\u0003\u0002\u0002\u0002\u16ab",
+ "\u16ae\u0003\u0002\u0002\u0002\u16ac\u16aa\u0003\u0002\u0002\u0002\u16ac",
+ "\u16ad\u0003\u0002\u0002\u0002\u16ad\u16af\u0003\u0002\u0002\u0002\u16ae",
+ "\u16ac\u0003\u0002\u0002\u0002\u16af\u16c3\u0007\u08b2\u0002\u0002\u16b0",
+ "\u16b1\u0007\u02b3\u0002\u0002\u16b1\u16b2\u0007\u08b1\u0002\u0002\u16b2",
+ "\u16b3\u0005\u04d4\u026b\u0002\u16b3\u16c1\u0007\u08b2\u0002\u0002\u16b4",
+ "\u16b5\u0007\u063c\u0002\u0002\u16b5\u16b6\u0007\u028e\u0002\u0002\u16b6",
+ "\u16b7\u0007\u08b1\u0002\u0002\u16b7\u16bc\u0005\u0346\u01a4\u0002\u16b8",
+ "\u16b9\u0007\u08b7\u0002\u0002\u16b9\u16bb\u0005\u0346\u01a4\u0002\u16ba",
+ "\u16b8\u0003\u0002\u0002\u0002\u16bb\u16be\u0003\u0002\u0002\u0002\u16bc",
+ "\u16ba\u0003\u0002\u0002\u0002\u16bc\u16bd\u0003\u0002\u0002\u0002\u16bd",
+ "\u16bf\u0003\u0002\u0002\u0002\u16be\u16bc\u0003\u0002\u0002\u0002\u16bf",
+ "\u16c0\u0007\u08b2\u0002\u0002\u16c0\u16c2\u0003\u0002\u0002\u0002\u16c1",
+ "\u16b4\u0003\u0002\u0002\u0002\u16c1\u16c2\u0003\u0002\u0002\u0002\u16c2",
+ "\u16c4\u0003\u0002\u0002\u0002\u16c3\u16b0\u0003\u0002\u0002\u0002\u16c3",
+ "\u16c4\u0003\u0002\u0002\u0002\u16c4\u16c8\u0003\u0002\u0002\u0002\u16c5",
+ "\u16c9\u0005\u0244\u0123\u0002\u16c6\u16c9\u0005\u0246\u0124\u0002\u16c7",
+ "\u16c9\u0005\u0248\u0125\u0002\u16c8\u16c5\u0003\u0002\u0002\u0002\u16c8",
+ "\u16c6\u0003\u0002\u0002\u0002\u16c8\u16c7\u0003\u0002\u0002\u0002\u16c9",
+ "\u16ca\u0003\u0002\u0002\u0002\u16ca\u16cb\u0007\u08b1\u0002\u0002\u16cb",
+ "\u16d0\u0005\u023c\u011f\u0002\u16cc\u16cd\u0007\u08b7\u0002\u0002\u16cd",
+ "\u16cf\u0005\u023c\u011f\u0002\u16ce\u16cc\u0003\u0002\u0002\u0002\u16cf",
+ "\u16d2\u0003\u0002\u0002\u0002\u16d0\u16ce\u0003\u0002\u0002\u0002\u16d0",
+ "\u16d1\u0003\u0002\u0002\u0002\u16d1\u16d3\u0003\u0002\u0002\u0002\u16d2",
+ "\u16d0\u0003\u0002\u0002\u0002\u16d3\u16d4\u0007\u08b2\u0002\u0002\u16d4",
+ "\u0231\u0003\u0002\u0002\u0002\u16d5\u16d6\u0007\u04b9\u0002\u0002\u16d6",
+ "\u16d7\u0007\u0094\u0002\u0002\u16d7\u16d8\u0007\u02fb\u0002\u0002\u16d8",
+ "\u16d9\u0007\u08b1\u0002\u0002\u16d9\u16da\u0005\u0592\u02ca\u0002\u16da",
+ "\u16de\u0007\u08b2\u0002\u0002\u16db\u16df\u0005\u0244\u0123\u0002\u16dc",
+ "\u16df\u0005\u0246\u0124\u0002\u16dd\u16df\u0005\u0248\u0125\u0002\u16de",
+ "\u16db\u0003\u0002\u0002\u0002\u16de\u16dc\u0003\u0002\u0002\u0002\u16de",
+ "\u16dd\u0003\u0002\u0002\u0002\u16df\u16e0\u0003\u0002\u0002\u0002\u16e0",
+ "\u16e1\u0007\u08b1\u0002\u0002\u16e1\u16e6\u0005\u023e\u0120\u0002\u16e2",
+ "\u16e3\u0007\u08b7\u0002\u0002\u16e3\u16e5\u0005\u023e\u0120\u0002\u16e4",
+ "\u16e2\u0003\u0002\u0002\u0002\u16e5\u16e8\u0003\u0002\u0002\u0002\u16e6",
+ "\u16e4\u0003\u0002\u0002\u0002\u16e6\u16e7\u0003\u0002\u0002\u0002\u16e7",
+ "\u16e9\u0003\u0002\u0002\u0002\u16e8\u16e6\u0003\u0002\u0002\u0002\u16e9",
+ "\u16ea\u0007\u08b2\u0002\u0002\u16ea\u0233\u0003\u0002\u0002\u0002\u16eb",
+ "\u16ec\u0007\u04b9\u0002\u0002\u16ec\u16ed\u0007\u0094\u0002\u0002\u16ed",
+ "\u16ee\u0007\u0248\u0002\u0002\u16ee\u16f1\u0007\u08b1\u0002\u0002\u16ef",
+ "\u16f0\u0007\u08b7\u0002\u0002\u16f0\u16f2\u0005\u0592\u02ca\u0002\u16f1",
+ "\u16ef\u0003\u0002\u0002\u0002\u16f2\u16f3\u0003\u0002\u0002\u0002\u16f3",
+ "\u16f1\u0003\u0002\u0002\u0002\u16f3\u16f4\u0003\u0002\u0002\u0002\u16f4",
+ "\u16f5\u0003\u0002\u0002\u0002\u16f5\u16f9\u0007\u08b2\u0002\u0002\u16f6",
+ "\u16fa\u0005\u0244\u0123\u0002\u16f7\u16fa\u0005\u0246\u0124\u0002\u16f8",
+ "\u16fa\u0005\u0248\u0125\u0002\u16f9\u16f6\u0003\u0002\u0002\u0002\u16f9",
+ "\u16f7\u0003\u0002\u0002\u0002\u16f9\u16f8\u0003\u0002\u0002\u0002\u16fa",
+ "\u16fd\u0003\u0002\u0002\u0002\u16fb\u16fe\u0005\u022a\u0116\u0002\u16fc",
+ "\u16fe\u0005\u022c\u0117\u0002\u16fd\u16fb\u0003\u0002\u0002\u0002\u16fd",
+ "\u16fc\u0003\u0002\u0002\u0002\u16fe\u0235\u0003\u0002\u0002\u0002\u16ff",
+ "\u1700\u0007\u04b9\u0002\u0002\u1700\u1701\u0007\u0094\u0002\u0002\u1701",
+ "\u1702\u0007\u055f\u0002\u0002\u1702\u1703\u0007\u08b1\u0002\u0002\u1703",
+ "\u1704\u0005\u05d6\u02ec\u0002\u1704\u1710\u0007\u08b2\u0002\u0002\u1705",
+ "\u1706\u0007\u08b1\u0002\u0002\u1706\u170b\u0005\u0238\u011d\u0002\u1707",
+ "\u1708\u0007\u08b7\u0002\u0002\u1708\u170a\u0005\u0238\u011d\u0002\u1709",
+ "\u1707\u0003\u0002\u0002\u0002\u170a\u170d\u0003\u0002\u0002\u0002\u170b",
+ "\u1709\u0003\u0002\u0002\u0002\u170b\u170c\u0003\u0002\u0002\u0002\u170c",
+ "\u170e\u0003\u0002\u0002\u0002\u170d\u170b\u0003\u0002\u0002\u0002\u170e",
+ "\u170f\u0007\u08b2\u0002\u0002\u170f\u1711\u0003\u0002\u0002\u0002\u1710",
+ "\u1705\u0003\u0002\u0002\u0002\u1710\u1711\u0003\u0002\u0002\u0002\u1711",
+ "\u0237\u0003\u0002\u0002\u0002\u1712\u1714\u0007\u04b9\u0002\u0002\u1713",
+ "\u1715\u0005\u0360\u01b1\u0002\u1714\u1713\u0003\u0002\u0002\u0002\u1714",
+ "\u1715\u0003\u0002\u0002\u0002\u1715\u1716\u0003\u0002\u0002\u0002\u1716",
+ "\u1717\u0005\u0258\u012d\u0002\u1717\u0239\u0003\u0002\u0002\u0002\u1718",
+ "\u1719\u0007\u04b9\u0002\u0002\u1719\u171a\u0007\u0094\u0002\u0002\u171a",
+ "\u1725\u0007\u06f5\u0002\u0002\u171b\u171c\u0007\u04bb\u0002\u0002\u171c",
+ "\u1726\u0007\u08ab\u0002\u0002\u171d\u1722\u0005\u0238\u011d\u0002\u171e",
+ "\u171f\u0007\u08b7\u0002\u0002\u171f\u1721\u0005\u0238\u011d\u0002\u1720",
+ "\u171e\u0003\u0002\u0002\u0002\u1721\u1724\u0003\u0002\u0002\u0002\u1722",
+ "\u1720\u0003\u0002\u0002\u0002\u1722\u1723\u0003\u0002\u0002\u0002\u1723",
+ "\u1726\u0003\u0002\u0002\u0002\u1724\u1722\u0003\u0002\u0002\u0002\u1725",
+ "\u171b\u0003\u0002\u0002\u0002\u1725\u171d\u0003\u0002\u0002\u0002\u1725",
+ "\u1726\u0003\u0002\u0002\u0002\u1726\u023b\u0003\u0002\u0002\u0002\u1727",
+ "\u1729\u0007\u04b9\u0002\u0002\u1728\u172a\u0005\u0360\u01b1\u0002\u1729",
+ "\u1728\u0003\u0002\u0002\u0002\u1729\u172a\u0003\u0002\u0002\u0002\u172a",
+ "\u172b\u0003\u0002\u0002\u0002\u172b\u172c\u0005\u0254\u012b\u0002\u172c",
+ "\u174d\u0005\u0258\u012d\u0002\u172d\u1746\u0007\u08b1\u0002\u0002\u172e",
+ "\u1733\u0005\u024c\u0127\u0002\u172f\u1730\u0007\u08b7\u0002\u0002\u1730",
+ "\u1732\u0005\u024c\u0127\u0002\u1731\u172f\u0003\u0002\u0002\u0002\u1732",
+ "\u1735\u0003\u0002\u0002\u0002\u1733\u1731\u0003\u0002\u0002\u0002\u1733",
+ "\u1734\u0003\u0002\u0002\u0002\u1734\u1747\u0003\u0002\u0002\u0002\u1735",
+ "\u1733\u0003\u0002\u0002\u0002\u1736\u173b\u0005\u024e\u0128\u0002\u1737",
+ "\u1738\u0007\u08b7\u0002\u0002\u1738\u173a\u0005\u024e\u0128\u0002\u1739",
+ "\u1737\u0003\u0002\u0002\u0002\u173a\u173d\u0003\u0002\u0002\u0002\u173b",
+ "\u1739\u0003\u0002\u0002\u0002\u173b\u173c\u0003\u0002\u0002\u0002\u173c",
+ "\u1747\u0003\u0002\u0002\u0002\u173d\u173b\u0003\u0002\u0002\u0002\u173e",
+ "\u1743\u0005\u0250\u0129\u0002\u173f\u1740\u0007\u08b7\u0002\u0002\u1740",
+ "\u1742\u0005\u0250\u0129\u0002\u1741\u173f\u0003\u0002\u0002\u0002\u1742",
+ "\u1745\u0003\u0002\u0002\u0002\u1743\u1741\u0003\u0002\u0002\u0002\u1743",
+ "\u1744\u0003\u0002\u0002\u0002\u1744\u1747\u0003\u0002\u0002\u0002\u1745",
+ "\u1743\u0003\u0002\u0002\u0002\u1746\u172e\u0003\u0002\u0002\u0002\u1746",
+ "\u1736\u0003\u0002\u0002\u0002\u1746\u173e\u0003\u0002\u0002\u0002\u1747",
+ "\u1748\u0003\u0002\u0002\u0002\u1748\u1749\u0007\u08b2\u0002\u0002\u1749",
+ "\u174c\u0003\u0002\u0002\u0002\u174a\u174c\u0005\u0252\u012a\u0002\u174b",
+ "\u172d\u0003\u0002\u0002\u0002\u174b\u174a\u0003\u0002\u0002\u0002\u174c",
+ "\u174e\u0003\u0002\u0002\u0002\u174d\u174b\u0003\u0002\u0002\u0002\u174d",
+ "\u174e\u0003\u0002\u0002\u0002\u174e\u023d\u0003\u0002\u0002\u0002\u174f",
+ "\u1751\u0007\u04b9\u0002\u0002\u1750\u1752\u0005\u0360\u01b1\u0002\u1751",
+ "\u1750\u0003\u0002\u0002\u0002\u1751\u1752\u0003\u0002\u0002\u0002\u1752",
+ "\u1753\u0003\u0002\u0002\u0002\u1753\u1754\u0005\u0256\u012c\u0002\u1754",
+ "\u1775\u0005\u0258\u012d\u0002\u1755\u176e\u0007\u08b1\u0002\u0002\u1756",
+ "\u175b\u0005\u024c\u0127\u0002\u1757\u1758\u0007\u08b7\u0002\u0002\u1758",
+ "\u175a\u0005\u024c\u0127\u0002\u1759\u1757\u0003\u0002\u0002\u0002\u175a",
+ "\u175d\u0003\u0002\u0002\u0002\u175b\u1759\u0003\u0002\u0002\u0002\u175b",
+ "\u175c\u0003\u0002\u0002\u0002\u175c\u176f\u0003\u0002\u0002\u0002\u175d",
+ "\u175b\u0003\u0002\u0002\u0002\u175e\u1763\u0005\u024e\u0128\u0002\u175f",
+ "\u1760\u0007\u08b7\u0002\u0002\u1760\u1762\u0005\u024e\u0128\u0002\u1761",
+ "\u175f\u0003\u0002\u0002\u0002\u1762\u1765\u0003\u0002\u0002\u0002\u1763",
+ "\u1761\u0003\u0002\u0002\u0002\u1763\u1764\u0003\u0002\u0002\u0002\u1764",
+ "\u176f\u0003\u0002\u0002\u0002\u1765\u1763\u0003\u0002\u0002\u0002\u1766",
+ "\u176b\u0005\u0250\u0129\u0002\u1767\u1768\u0007\u08b7\u0002\u0002\u1768",
+ "\u176a\u0005\u0250\u0129\u0002\u1769\u1767\u0003\u0002\u0002\u0002\u176a",
+ "\u176d\u0003\u0002\u0002\u0002\u176b\u1769\u0003\u0002\u0002\u0002\u176b",
+ "\u176c\u0003\u0002\u0002\u0002\u176c\u176f\u0003\u0002\u0002\u0002\u176d",
+ "\u176b\u0003\u0002\u0002\u0002\u176e\u1756\u0003\u0002\u0002\u0002\u176e",
+ "\u175e\u0003\u0002\u0002\u0002\u176e\u1766\u0003\u0002\u0002\u0002\u176f",
+ "\u1770\u0003\u0002\u0002\u0002\u1770\u1771\u0007\u08b2\u0002\u0002\u1771",
+ "\u1774\u0003\u0002\u0002\u0002\u1772\u1774\u0005\u0252\u012a\u0002\u1773",
+ "\u1755\u0003\u0002\u0002\u0002\u1773\u1772\u0003\u0002\u0002\u0002\u1774",
+ "\u1776\u0003\u0002\u0002\u0002\u1775\u1773\u0003\u0002\u0002\u0002\u1775",
+ "\u1776\u0003\u0002\u0002\u0002\u1776\u023f\u0003\u0002\u0002\u0002\u1777",
+ "\u1778\u0007\u0648\u0002\u0002\u1778\u1797\u0007\u0781\u0002\u0002\u1779",
+ "\u1792\u0007\u08b1\u0002\u0002\u177a\u177f\u0005\u024c\u0127\u0002\u177b",
+ "\u177c\u0007\u08b7\u0002\u0002\u177c\u177e\u0005\u024c\u0127\u0002\u177d",
+ "\u177b\u0003\u0002\u0002\u0002\u177e\u1781\u0003\u0002\u0002\u0002\u177f",
+ "\u177d\u0003\u0002\u0002\u0002\u177f\u1780\u0003\u0002\u0002\u0002\u1780",
+ "\u1793\u0003\u0002\u0002\u0002\u1781\u177f\u0003\u0002\u0002\u0002\u1782",
+ "\u1787\u0005\u024e\u0128\u0002\u1783\u1784\u0007\u08b7\u0002\u0002\u1784",
+ "\u1786\u0005\u024e\u0128\u0002\u1785\u1783\u0003\u0002\u0002\u0002\u1786",
+ "\u1789\u0003\u0002\u0002\u0002\u1787\u1785\u0003\u0002\u0002\u0002\u1787",
+ "\u1788\u0003\u0002\u0002\u0002\u1788\u1793\u0003\u0002\u0002\u0002\u1789",
+ "\u1787\u0003\u0002\u0002\u0002\u178a\u178f\u0005\u0250\u0129\u0002\u178b",
+ "\u178c\u0007\u08b7\u0002\u0002\u178c\u178e\u0005\u0250\u0129\u0002\u178d",
+ "\u178b\u0003\u0002\u0002\u0002\u178e\u1791\u0003\u0002\u0002\u0002\u178f",
+ "\u178d\u0003\u0002\u0002\u0002\u178f\u1790\u0003\u0002\u0002\u0002\u1790",
+ "\u1793\u0003\u0002\u0002\u0002\u1791\u178f\u0003\u0002\u0002\u0002\u1792",
+ "\u177a\u0003\u0002\u0002\u0002\u1792\u1782\u0003\u0002\u0002\u0002\u1792",
+ "\u178a\u0003\u0002\u0002\u0002\u1793\u1794\u0003\u0002\u0002\u0002\u1794",
+ "\u1795\u0007\u08b2\u0002\u0002\u1795\u1798\u0003\u0002\u0002\u0002\u1796",
+ "\u1798\u0005\u0242\u0122\u0002\u1797\u1779\u0003\u0002\u0002\u0002\u1797",
+ "\u1796\u0003\u0002\u0002\u0002\u1798\u0241\u0003\u0002\u0002\u0002\u1799",
+ "\u179a\u0007\u08ab\u0002\u0002\u179a\u0243\u0003\u0002\u0002\u0002\u179b",
+ "\u179c\u0007\u0648\u0002\u0002\u179c\u179d\u0007\u0094\u0002\u0002\u179d",
+ "\u179e\u0007\u0542\u0002\u0002\u179e\u179f\u0007\u08b1\u0002\u0002\u179f",
+ "\u17a4\u0005\u0592\u02ca\u0002\u17a0\u17a1\u0007\u08b7\u0002\u0002\u17a1",
+ "\u17a3\u0005\u0592\u02ca\u0002\u17a2\u17a0\u0003\u0002\u0002\u0002\u17a3",
+ "\u17a6\u0003\u0002\u0002\u0002\u17a4\u17a2\u0003\u0002\u0002\u0002\u17a4",
+ "\u17a5\u0003\u0002\u0002\u0002\u17a5\u17a7\u0003\u0002\u0002\u0002\u17a6",
+ "\u17a4\u0003\u0002\u0002\u0002\u17a7\u17a9\u0007\u08b2\u0002\u0002\u17a8",
+ "\u17aa\u0005\u0240\u0121\u0002\u17a9\u17a8\u0003\u0002\u0002\u0002\u17a9",
+ "\u17aa\u0003\u0002\u0002\u0002\u17aa\u0245\u0003\u0002\u0002\u0002\u17ab",
+ "\u17ac\u0007\u0648\u0002\u0002\u17ac\u17ad\u0007\u0094\u0002\u0002\u17ad",
+ "\u17ae\u0007\u02fb\u0002\u0002\u17ae\u17af\u0007\u08b1\u0002\u0002\u17af",
+ "\u17b0\u0005\u0592\u02ca\u0002\u17b0\u17b2\u0007\u08b2\u0002\u0002\u17b1",
+ "\u17b3\u0005\u0240\u0121\u0002\u17b2\u17b1\u0003\u0002\u0002\u0002\u17b2",
+ "\u17b3\u0003\u0002\u0002\u0002\u17b3\u0247\u0003\u0002\u0002\u0002\u17b4",
+ "\u17b5\u0007\u0648\u0002\u0002\u17b5\u17b6\u0007\u0094\u0002\u0002\u17b6",
+ "\u17b7\u0007\u0248\u0002\u0002\u17b7\u17b8\u0007\u08b1\u0002\u0002\u17b8",
+ "\u17bd\u0005\u0592\u02ca\u0002\u17b9\u17ba\u0007\u08b7\u0002\u0002\u17ba",
+ "\u17bc\u0005\u0592\u02ca\u0002\u17bb\u17b9\u0003\u0002\u0002\u0002\u17bc",
+ "\u17bf\u0003\u0002\u0002\u0002\u17bd\u17bb\u0003\u0002\u0002\u0002\u17bd",
+ "\u17be\u0003\u0002\u0002\u0002\u17be\u17c0\u0003\u0002\u0002\u0002\u17bf",
+ "\u17bd\u0003\u0002\u0002\u0002\u17c0\u17d3\u0007\u08b2\u0002\u0002\u17c1",
+ "\u17c2\u0007\u0647\u0002\u0002\u17c2\u17d0\u0007\u08ab\u0002\u0002\u17c3",
+ "\u17c4\u0007\u063c\u0002\u0002\u17c4\u17c5\u0007\u028e\u0002\u0002\u17c5",
+ "\u17c6\u0007\u08b1\u0002\u0002\u17c6\u17cb\u0005\u0346\u01a4\u0002\u17c7",
+ "\u17c8\u0007\u08b7\u0002\u0002\u17c8\u17ca\u0005\u0346\u01a4\u0002\u17c9",
+ "\u17c7\u0003\u0002\u0002\u0002\u17ca\u17cd\u0003\u0002\u0002\u0002\u17cb",
+ "\u17c9\u0003\u0002\u0002\u0002\u17cb\u17cc\u0003\u0002\u0002\u0002\u17cc",
+ "\u17ce\u0003\u0002\u0002\u0002\u17cd\u17cb\u0003\u0002\u0002\u0002\u17ce",
+ "\u17cf\u0007\u08b2\u0002\u0002\u17cf\u17d1\u0003\u0002\u0002\u0002\u17d0",
+ "\u17c3\u0003\u0002\u0002\u0002\u17d0\u17d1\u0003\u0002\u0002\u0002\u17d1",
+ "\u17d4\u0003\u0002\u0002\u0002\u17d2\u17d4\u0005\u0240\u0121\u0002\u17d3",
+ "\u17c1\u0003\u0002\u0002\u0002\u17d3\u17d2\u0003\u0002\u0002\u0002\u17d3",
+ "\u17d4\u0003\u0002\u0002\u0002\u17d4\u0249\u0003\u0002\u0002\u0002\u17d5",
+ "\u17d6\u0005\u0360\u01b1\u0002\u17d6\u024b\u0003\u0002\u0002\u0002\u17d7",
+ "\u17d9\u0007\u0648\u0002\u0002\u17d8\u17da\u0005\u024a\u0126\u0002\u17d9",
+ "\u17d8\u0003\u0002\u0002\u0002\u17d9\u17da\u0003\u0002\u0002\u0002\u17da",
+ "\u17db\u0003\u0002\u0002\u0002\u17db\u17dd\u0005\u0254\u012b\u0002\u17dc",
+ "\u17de\u0005\u025a\u012e\u0002\u17dd\u17dc\u0003\u0002\u0002\u0002\u17dd",
+ "\u17de\u0003\u0002\u0002\u0002\u17de\u024d\u0003\u0002\u0002\u0002\u17df",
+ "\u17e1\u0007\u0648\u0002\u0002\u17e0\u17e2\u0005\u024a\u0126\u0002\u17e1",
+ "\u17e0\u0003\u0002\u0002\u0002\u17e1\u17e2\u0003\u0002\u0002\u0002\u17e2",
+ "\u17e3\u0003\u0002\u0002\u0002\u17e3\u17e5\u0005\u0256\u012c\u0002\u17e4",
+ "\u17e6\u0005\u025a\u012e\u0002\u17e5\u17e4\u0003\u0002\u0002\u0002\u17e5",
+ "\u17e6\u0003\u0002\u0002\u0002\u17e6\u024f\u0003\u0002\u0002\u0002\u17e7",
+ "\u17e9\u0007\u0648\u0002\u0002\u17e8\u17ea\u0005\u024a\u0126\u0002\u17e9",
+ "\u17e8\u0003\u0002\u0002\u0002\u17e9\u17ea\u0003\u0002\u0002\u0002\u17ea",
+ "\u17ec\u0003\u0002\u0002\u0002\u17eb\u17ed\u0005\u025a\u012e\u0002\u17ec",
+ "\u17eb\u0003\u0002\u0002\u0002\u17ec\u17ed\u0003\u0002\u0002\u0002\u17ed",
+ "\u0251\u0003\u0002\u0002\u0002\u17ee\u17ef\u0007\u0647\u0002\u0002\u17ef",
+ "\u17fd\u0007\u08ab\u0002\u0002\u17f0\u17f1\u0007\u063c\u0002\u0002\u17f1",
+ "\u17f2\u0007\u028e\u0002\u0002\u17f2\u17f3\u0007\u08b1\u0002\u0002\u17f3",
+ "\u17f8\u0005\u0346\u01a4\u0002\u17f4\u17f5\u0007\u08b7\u0002\u0002\u17f5",
+ "\u17f7\u0005\u0346\u01a4\u0002\u17f6\u17f4\u0003\u0002\u0002\u0002\u17f7",
+ "\u17fa\u0003\u0002\u0002\u0002\u17f8\u17f6\u0003\u0002\u0002\u0002\u17f8",
+ "\u17f9\u0003\u0002\u0002\u0002\u17f9\u17fb\u0003\u0002\u0002\u0002\u17fa",
+ "\u17f8\u0003\u0002\u0002\u0002\u17fb\u17fc\u0007\u08b2\u0002\u0002\u17fc",
+ "\u17fe\u0003\u0002\u0002\u0002\u17fd\u17f0\u0003\u0002\u0002\u0002\u17fd",
+ "\u17fe\u0003\u0002\u0002\u0002\u17fe\u0253\u0003\u0002\u0002\u0002\u17ff",
+ "\u1800\u0007\u081b\u0002\u0002\u1800\u1801\u0007\u02ec\u0002\u0002\u1801",
+ "\u1802\u0007\u0786\u0002\u0002\u1802\u1803\u0007\u08b1\u0002\u0002\u1803",
+ "\u1808\u0005\u050c\u0287\u0002\u1804\u1805\u0007\u08b7\u0002\u0002\u1805",
+ "\u1807\u0005\u050c\u0287\u0002\u1806\u1804\u0003\u0002\u0002\u0002\u1807",
+ "\u180a\u0003\u0002\u0002\u0002\u1808\u1806\u0003\u0002\u0002\u0002\u1808",
+ "\u1809\u0003\u0002\u0002\u0002\u1809\u180b\u0003\u0002\u0002\u0002\u180a",
+ "\u1808\u0003\u0002\u0002\u0002\u180b\u180c\u0007\u08b2\u0002\u0002\u180c",
+ "\u0255\u0003\u0002\u0002\u0002\u180d\u180e\u0007\u081b\u0002\u0002\u180e",
+ "\u1818\u0007\u08b1\u0002\u0002\u180f\u1814\u0005\u050c\u0287\u0002\u1810",
+ "\u1811\u0007\u08b7\u0002\u0002\u1811\u1813\u0005\u050c\u0287\u0002\u1812",
+ "\u1810\u0003\u0002\u0002\u0002\u1813\u1816\u0003\u0002\u0002\u0002\u1814",
+ "\u1812\u0003\u0002\u0002\u0002\u1814\u1815\u0003\u0002\u0002\u0002\u1815",
+ "\u1819\u0003\u0002\u0002\u0002\u1816\u1814\u0003\u0002\u0002\u0002\u1817",
+ "\u1819\u0007\u0161\u0002\u0002\u1818\u180f\u0003\u0002\u0002\u0002\u1818",
+ "\u1817\u0003\u0002\u0002\u0002\u1819\u181a\u0003\u0002\u0002\u0002\u181a",
+ "\u181b\u0007\u08b2\u0002\u0002\u181b\u0257\u0003\u0002\u0002\u0002\u181c",
+ "\u181e\u0005\u0268\u0135\u0002\u181d\u181c\u0003\u0002\u0002\u0002\u181d",
+ "\u181e\u0003\u0002\u0002\u0002\u181e\u1820\u0003\u0002\u0002\u0002\u181f",
+ "\u1821\u0005\u026a\u0136\u0002\u1820\u181f\u0003\u0002\u0002\u0002\u1820",
+ "\u1821\u0003\u0002\u0002\u0002\u1821\u1824\u0003\u0002\u0002\u0002\u1822",
+ "\u1825\u0005\u0262\u0132\u0002\u1823\u1825\u0005\u030e\u0188\u0002\u1824",
+ "\u1822\u0003\u0002\u0002\u0002\u1824\u1823\u0003\u0002\u0002\u0002\u1824",
+ "\u1825\u0003\u0002\u0002\u0002\u1825\u182a\u0003\u0002\u0002\u0002\u1826",
+ "\u1828\u0007\u04a2\u0002\u0002\u1827\u1829\u0005\u026a\u0136\u0002\u1828",
+ "\u1827\u0003\u0002\u0002\u0002\u1828\u1829\u0003\u0002\u0002\u0002\u1829",
+ "\u182b\u0003\u0002\u0002\u0002\u182a\u1826\u0003\u0002\u0002\u0002\u182a",
+ "\u182b\u0003\u0002\u0002\u0002\u182b\u182f\u0003\u0002\u0002\u0002\u182c",
+ "\u1830\u0005\u0336\u019c\u0002\u182d\u1830\u0005\u032c\u0197\u0002\u182e",
+ "\u1830\u0005\u035a\u01ae\u0002\u182f\u182c\u0003\u0002\u0002\u0002\u182f",
+ "\u182d\u0003\u0002\u0002\u0002\u182f\u182e\u0003\u0002\u0002\u0002\u182f",
+ "\u1830\u0003\u0002\u0002\u0002\u1830\u0259\u0003\u0002\u0002\u0002\u1831",
+ "\u1832\u0007\u0777\u0002\u0002\u1832\u1846\u0005\u0346\u01a4\u0002\u1833",
+ "\u1836\u0007\u04a2\u0002\u0002\u1834\u1835\u0007\u0777\u0002\u0002\u1835",
+ "\u1837\u0005\u0346\u01a4\u0002\u1836\u1834\u0003\u0002\u0002\u0002\u1836",
+ "\u1837\u0003\u0002\u0002\u0002\u1837\u1846\u0003\u0002\u0002\u0002\u1838",
+ "\u1846\u0005\u0262\u0132\u0002\u1839\u1846\u0005\u030e\u0188\u0002\u183a",
+ "\u1846\u0005\u025c\u012f\u0002\u183b\u183c\u0007\u0822\u0002\u0002\u183c",
+ "\u183d\u0005\u0348\u01a5\u0002\u183d\u183e\u0007\u063c\u0002\u0002\u183e",
+ "\u1840\u0007?\u0002\u0002\u183f\u1841\t<\u0002\u0002\u1840\u183f\u0003",
+ "\u0002\u0002\u0002\u1840\u1841\u0003\u0002\u0002\u0002\u1841\u1842\u0003",
+ "\u0002\u0002\u0002\u1842\u1843\u0007\u02ff\u0002\u0002\u1843\u1844\u0005",
+ "\u0330\u0199\u0002\u1844\u1846\u0003\u0002\u0002\u0002\u1845\u1831\u0003",
+ "\u0002\u0002\u0002\u1845\u1833\u0003\u0002\u0002\u0002\u1845\u1838\u0003",
+ "\u0002\u0002\u0002\u1845\u1839\u0003\u0002\u0002\u0002\u1845\u183a\u0003",
+ "\u0002\u0002\u0002\u1845\u183b\u0003\u0002\u0002\u0002\u1846\u1847\u0003",
+ "\u0002\u0002\u0002\u1847\u1845\u0003\u0002\u0002\u0002\u1847\u1848\u0003",
+ "\u0002\u0002\u0002\u1848\u025b\u0003\u0002\u0002\u0002\u1849\u184a\u0007",
+ "\u02ff\u0002\u0002\u184a\u184b\u0007\u08b1\u0002\u0002\u184b\u184c\u0005",
+ "\u0332\u019a\u0002\u184c\u184d\u0007\u08b2\u0002\u0002\u184d\u184e\u0007",
+ "\u063c\u0002\u0002\u184e\u1850\u0007?\u0002\u0002\u184f\u1851\t<\u0002",
+ "\u0002\u1850\u184f\u0003\u0002\u0002\u0002\u1850\u1851\u0003\u0002\u0002",
+ "\u0002\u1851\u185f\u0003\u0002\u0002\u0002\u1852\u1858\u0005\u0330\u0199",
+ "\u0002\u1853\u1854\u0007\u08b1\u0002\u0002\u1854\u1855\u0007\u0777\u0002",
+ "\u0002\u1855\u1856\u0005\u0346\u01a4\u0002\u1856\u1857\u0007\u08b2\u0002",
+ "\u0002\u1857\u1859\u0003\u0002\u0002\u0002\u1858\u1853\u0003\u0002\u0002",
+ "\u0002\u1858\u1859\u0003\u0002\u0002\u0002\u1859\u1860\u0003\u0002\u0002",
+ "\u0002\u185a\u185b\u0007\u08b1\u0002\u0002\u185b\u185c\u0007\u0777\u0002",
+ "\u0002\u185c\u185d\u0005\u0346\u01a4\u0002\u185d\u185e\u0007\u08b2\u0002",
+ "\u0002\u185e\u1860\u0003\u0002\u0002\u0002\u185f\u1852\u0003\u0002\u0002",
+ "\u0002\u185f\u185a\u0003\u0002\u0002\u0002\u1860\u025d\u0003\u0002\u0002",
+ "\u0002\u1861\u1862\u0005\u0592\u02ca\u0002\u1862\u1864\u0005\u05b6\u02dc",
+ "\u0002\u1863\u1865\u0007\u060a\u0002\u0002\u1864\u1863\u0003\u0002\u0002",
+ "\u0002\u1864\u1865\u0003\u0002\u0002\u0002\u1865\u1868\u0003\u0002\u0002",
+ "\u0002\u1866\u1867\u0007\u0161\u0002\u0002\u1867\u1869\u0005\u04d4\u026b",
+ "\u0002\u1868\u1866\u0003\u0002\u0002\u0002\u1868\u1869\u0003\u0002\u0002",
+ "\u0002\u1869\u187d\u0003\u0002\u0002\u0002\u186a\u186d\u0007\u01bd\u0002",
+ "\u0002\u186b\u186c\u0007\u0811\u0002\u0002\u186c\u186e\u0007\u08ad\u0002",
+ "\u0002\u186d\u186b\u0003\u0002\u0002\u0002\u186d\u186e\u0003\u0002\u0002",
+ "\u0002\u186e\u1872\u0003\u0002\u0002\u0002\u186f\u1870\u0007\u025b\u0002",
+ "\u0002\u1870\u1871\u0007\u0094\u0002\u0002\u1871\u1873\u0007\u08ce\u0002",
+ "\u0002\u1872\u186f\u0003\u0002\u0002\u0002\u1872\u1873\u0003\u0002\u0002",
+ "\u0002\u1873\u1875\u0003\u0002\u0002\u0002\u1874\u1876\u0007\u08ad\u0002",
+ "\u0002\u1875\u1874\u0003\u0002\u0002\u0002\u1875\u1876\u0003\u0002\u0002",
+ "\u0002\u1876\u187b\u0003\u0002\u0002\u0002\u1877\u1879\u0007\u03f4\u0002",
+ "\u0002\u1878\u1877\u0003\u0002\u0002\u0002\u1878\u1879\u0003\u0002\u0002",
+ "\u0002\u1879\u187a\u0003\u0002\u0002\u0002\u187a\u187c\u0007\u05b4\u0002",
+ "\u0002\u187b\u1878\u0003\u0002\u0002\u0002\u187b\u187c\u0003\u0002\u0002",
+ "\u0002\u187c\u187e\u0003\u0002\u0002\u0002\u187d\u186a\u0003\u0002\u0002",
+ "\u0002\u187d\u187e\u0003\u0002\u0002\u0002\u187e\u1881\u0003\u0002\u0002",
+ "\u0002\u187f\u1880\u0007\u0433\u0002\u0002\u1880\u1882\u0007\u044b\u0002",
+ "\u0002\u1881\u187f\u0003\u0002\u0002\u0002\u1881\u1882\u0003\u0002\u0002",
+ "\u0002\u1882\u1884\u0003\u0002\u0002\u0002\u1883\u1885\t\u0007\u0002",
+ "\u0002\u1884\u1883\u0003\u0002\u0002\u0002\u1884\u1885\u0003\u0002\u0002",
+ "\u0002\u1885\u025f\u0003\u0002\u0002\u0002\u1886\u1888\u0007\u08ab\u0002",
+ "\u0002\u1887\u1889\u0007\u08ce\u0002\u0002\u1888\u1887\u0003\u0002\u0002",
+ "\u0002\u1888\u1889\u0003\u0002\u0002\u0002\u1889\u0261\u0003\u0002\u0002",
+ "\u0002\u188a\u1894\u0007\u00ea\u0002\u0002\u188b\u1895\u0007a\u0002",
+ "\u0002\u188c\u1892\u0007\u0224\u0002\u0002\u188d\u1893\u0007\u0464\u0002",
+ "\u0002\u188e\u1890\t>\u0002\u0002\u188f\u1891\t?\u0002\u0002\u1890\u188f",
+ "\u0003\u0002\u0002\u0002\u1890\u1891\u0003\u0002\u0002\u0002\u1891\u1893",
+ "\u0003\u0002\u0002\u0002\u1892\u188d\u0003\u0002\u0002\u0002\u1892\u188e",
+ "\u0003\u0002\u0002\u0002\u1893\u1895\u0003\u0002\u0002\u0002\u1894\u188b",
+ "\u0003\u0002\u0002\u0002\u1894\u188c\u0003\u0002\u0002\u0002\u1894\u1895",
+ "\u0003\u0002\u0002\u0002\u1895\u1898\u0003\u0002\u0002\u0002\u1896\u1898",
+ "\u0007\u03bb\u0002\u0002\u1897\u188a\u0003\u0002\u0002\u0002\u1897\u1896",
+ "\u0003\u0002\u0002\u0002\u1898\u0263\u0003\u0002\u0002\u0002\u1899\u189a",
+ "\u0007\u04cd\u0002\u0002\u189a\u18a1\u0007\u08ab\u0002\u0002\u189b\u189c",
+ "\u0007\u04d0\u0002\u0002\u189c\u18a1\u0007\u08ab\u0002\u0002\u189d\u189e",
+ "\u0007\u0293\u0002\u0002\u189e\u18a1\u0007\u08ab\u0002\u0002\u189f\u18a1",
+ "\u0005\u0266\u0134\u0002\u18a0\u1899\u0003\u0002\u0002\u0002\u18a0\u189b",
+ "\u0003\u0002\u0002\u0002\u18a0\u189d\u0003\u0002\u0002\u0002\u18a0\u189f",
+ "\u0003\u0002\u0002\u0002\u18a1\u18a2\u0003\u0002\u0002\u0002\u18a2\u18a0",
+ "\u0003\u0002\u0002\u0002\u18a2\u18a3\u0003\u0002\u0002\u0002\u18a3\u0265",
+ "\u0003\u0002\u0002\u0002\u18a4\u18a5\u0007\u063b\u0002\u0002\u18a5\u18bf",
+ "\u0007\u08b1\u0002\u0002\u18a6\u18a7\u0007\u0290\u0002\u0002\u18a7\u18c0",
+ "\u0005\u0260\u0131\u0002\u18a8\u18a9\u0007\u038c\u0002\u0002\u18a9\u18c0",
+ "\u0005\u0260\u0131\u0002\u18aa\u18ab\u0007\u0348\u0002\u0002\u18ab\u18c0",
+ "\t@\u0002\u0002\u18ac\u18ad\u0007\u032f\u0002\u0002\u18ad\u18c0\t@\u0002",
+ "\u0002\u18ae\u18af\u0007\u04ce\u0002\u0002\u18af\u18c0\u0007\u08ab\u0002",
+ "\u0002\u18b0\u18b1\u0007\u0229\u0002\u0002\u18b1\u18c0\u0007\u08ab\u0002",
+ "\u0002\u18b2\u18b3\u0007\u0228\u0002\u0002\u18b3\u18b4\u0007\u0243\u0002",
+ "\u0002\u18b4\u18c0\u0007\u08ab\u0002\u0002\u18b5\u18b8\u0007\u0473\u0002",
+ "\u0002\u18b6\u18b9\u0005\u0260\u0131\u0002\u18b7\u18b9\u0007\u044b\u0002",
+ "\u0002\u18b8\u18b6\u0003\u0002\u0002\u0002\u18b8\u18b7\u0003\u0002\u0002",
+ "\u0002\u18b9\u18c0\u0003\u0002\u0002\u0002\u18ba\u18bb\u0007\u0091\u0002",
+ "\u0002\u18bb\u18c0\tA\u0002\u0002\u18bc\u18bd\u0007\u0217\u0002\u0002",
+ "\u18bd\u18c0\tB\u0002\u0002\u18be\u18c0\u0007\u01bd\u0002\u0002\u18bf",
+ "\u18a6\u0003\u0002\u0002\u0002\u18bf\u18a8\u0003\u0002\u0002\u0002\u18bf",
+ "\u18aa\u0003\u0002\u0002\u0002\u18bf\u18ac\u0003\u0002\u0002\u0002\u18bf",
+ "\u18ae\u0003\u0002\u0002\u0002\u18bf\u18b0\u0003\u0002\u0002\u0002\u18bf",
+ "\u18b2\u0003\u0002\u0002\u0002\u18bf\u18b5\u0003\u0002\u0002\u0002\u18bf",
+ "\u18ba\u0003\u0002\u0002\u0002\u18bf\u18bc\u0003\u0002\u0002\u0002\u18bf",
+ "\u18be\u0003\u0002\u0002\u0002\u18c0\u18c1\u0003\u0002\u0002\u0002\u18c1",
+ "\u18bf\u0003\u0002\u0002\u0002\u18c1\u18c2\u0003\u0002\u0002\u0002\u18c2",
+ "\u18c3\u0003\u0002\u0002\u0002\u18c3\u18c4\u0007\u08b2\u0002\u0002\u18c4",
+ "\u0267\u0003\u0002\u0002\u0002\u18c5\u18c6\u0007\u05d2\u0002\u0002\u18c6",
+ "\u18c7\u0007\u0125\u0002\u0002\u18c7\u18c8\t(\u0002\u0002\u18c8\u0269",
+ "\u0003\u0002\u0002\u0002\u18c9\u18ce\u0005\u0264\u0133\u0002\u18ca\u18cb",
+ "\u0007\u0777\u0002\u0002\u18cb\u18ce\u0005\u05d2\u02ea\u0002\u18cc\u18ce",
+ "\u0005\u01c2\u00e2\u0002\u18cd\u18c9\u0003\u0002\u0002\u0002\u18cd\u18ca",
+ "\u0003\u0002\u0002\u0002\u18cd\u18cc\u0003\u0002\u0002\u0002\u18ce\u18cf",
+ "\u0003\u0002\u0002\u0002\u18cf\u18cd\u0003\u0002\u0002\u0002\u18cf\u18d0",
+ "\u0003\u0002\u0002\u0002\u18d0\u026b\u0003\u0002\u0002\u0002\u18d1\u18d3",
+ "\u0005\u0268\u0135\u0002\u18d2\u18d1\u0003\u0002\u0002\u0002\u18d2\u18d3",
+ "\u0003\u0002\u0002\u0002\u18d3\u18d4\u0003\u0002\u0002\u0002\u18d4\u18d6",
+ "\u0005\u026a\u0136\u0002\u18d5\u18d7\u0005\u0262\u0132\u0002\u18d6\u18d5",
+ "\u0003\u0002\u0002\u0002\u18d6\u18d7\u0003\u0002\u0002\u0002\u18d7\u026d",
+ "\u0003\u0002\u0002\u0002\u18d8\u18da\t\u0007\u0002\u0002\u18d9\u18d8",
+ "\u0003\u0002\u0002\u0002\u18d9\u18da\u0003\u0002\u0002\u0002\u18da\u18db",
+ "\u0003\u0002\u0002\u0002\u18db\u18dc\u0007\u05ad\u0002\u0002\u18dc\u18dd",
+ "\u0007\u036b\u0002\u0002\u18dd\u026f\u0003\u0002\u0002\u0002\u18de\u18df",
+ "\u0007\u0216\u0002\u0002\u18df\u18e0\u0007;\u0002\u0002\u18e0\u18e5",
+ "\u0007\u08ce\u0002\u0002\u18e1\u18e2\u0007\u03f4\u0002\u0002\u18e2\u18e3",
+ "\u0007\u0216\u0002\u0002\u18e3\u18e5\u0007;\u0002\u0002\u18e4\u18de",
+ "\u0003\u0002\u0002\u0002\u18e4\u18e1\u0003\u0002\u0002\u0002\u18e5\u0271",
+ "\u0003\u0002\u0002\u0002\u18e6\u18e7\u0007\u08ab\u0002\u0002\u18e7\u0273",
+ "\u0003\u0002\u0002\u0002\u18e8\u18e9\u0007\u0014\u0002\u0002\u18e9\u18ea",
+ "\u0007\u0656\u0002\u0002\u18ea\u18ed\u0007\u0311\u0002\u0002\u18eb\u18ee",
+ "\u0005\u0276\u013c\u0002\u18ec\u18ee\u0005\u0278\u013d\u0002\u18ed\u18eb",
+ "\u0003\u0002\u0002\u0002\u18ed\u18ec\u0003\u0002\u0002\u0002\u18ee\u18f8",
+ "\u0003\u0002\u0002\u0002\u18ef\u18f0\u0007\u08b7\u0002\u0002\u18f0\u18f1",
+ "\u0007\u0656\u0002\u0002\u18f1\u18f4\u0007\u0311\u0002\u0002\u18f2\u18f5",
+ "\u0005\u0276\u013c\u0002\u18f3\u18f5\u0005\u0278\u013d\u0002\u18f4\u18f2",
+ "\u0003\u0002\u0002\u0002\u18f4\u18f3\u0003\u0002\u0002\u0002\u18f5\u18f7",
+ "\u0003\u0002\u0002\u0002\u18f6\u18ef\u0003\u0002\u0002\u0002\u18f7\u18fa",
+ "\u0003\u0002\u0002\u0002\u18f8\u18f6\u0003\u0002\u0002\u0002\u18f8\u18f9",
+ "\u0003\u0002\u0002\u0002\u18f9\u1911\u0003\u0002\u0002\u0002\u18fa\u18f8",
+ "\u0003\u0002\u0002\u0002\u18fb\u18fc\u0007\u019d\u0002\u0002\u18fc\u18fd",
+ "\u0007\u0656\u0002\u0002\u18fd\u1901\u0007\u0311\u0002\u0002\u18fe\u1902",
+ "\u0005\u0278\u013d\u0002\u18ff\u1900\u0007\u023f\u0002\u0002\u1900\u1902",
+ "\u0005\u0272\u013a\u0002\u1901\u18fe\u0003\u0002\u0002\u0002\u1901\u18ff",
+ "\u0003\u0002\u0002\u0002\u1902\u190d\u0003\u0002\u0002\u0002\u1903\u1904",
+ "\u0007\u08b7\u0002\u0002\u1904\u1905\u0007\u0656\u0002\u0002\u1905\u1909",
+ "\u0007\u0311\u0002\u0002\u1906\u190a\u0005\u0278\u013d\u0002\u1907\u1908",
+ "\u0007\u023f\u0002\u0002\u1908\u190a\u0005\u0272\u013a\u0002\u1909\u1906",
+ "\u0003\u0002\u0002\u0002\u1909\u1907\u0003\u0002\u0002\u0002\u190a\u190c",
+ "\u0003\u0002\u0002\u0002\u190b\u1903\u0003\u0002\u0002\u0002\u190c\u190f",
+ "\u0003\u0002\u0002\u0002\u190d\u190b\u0003\u0002\u0002\u0002\u190d\u190e",
+ "\u0003\u0002\u0002\u0002\u190e\u1911\u0003\u0002\u0002\u0002\u190f\u190d",
+ "\u0003\u0002\u0002\u0002\u1910\u18e8\u0003\u0002\u0002\u0002\u1910\u18fb",
+ "\u0003\u0002\u0002\u0002\u1911\u0275\u0003\u0002\u0002\u0002\u1912\u1913",
+ "\u0007\u023f\u0002\u0002\u1913\u1914\u0005\u0272\u013a\u0002\u1914\u1915",
+ "\u0007\u08b1\u0002\u0002\u1915\u1918\u0005\u05d6\u02ec\u0002\u1916\u1917",
+ "\u0007\u03f4\u0002\u0002\u1917\u1919\u0007\u0311\u0002\u0002\u1918\u1916",
+ "\u0003\u0002\u0002\u0002\u1918\u1919\u0003\u0002\u0002\u0002\u1919\u1922",
+ "\u0003\u0002\u0002\u0002\u191a\u191b\u0007\u08b7\u0002\u0002\u191b\u191e",
+ "\u0005\u05d6\u02ec\u0002\u191c\u191d\u0007\u03f4\u0002\u0002\u191d\u191f",
+ "\u0007\u0311\u0002\u0002\u191e\u191c\u0003\u0002\u0002\u0002\u191e\u191f",
+ "\u0003\u0002\u0002\u0002\u191f\u1921\u0003\u0002\u0002\u0002\u1920\u191a",
+ "\u0003\u0002\u0002\u0002\u1921\u1924\u0003\u0002\u0002\u0002\u1922\u1920",
+ "\u0003\u0002\u0002\u0002\u1922\u1923\u0003\u0002\u0002\u0002\u1923\u1925",
+ "\u0003\u0002\u0002\u0002\u1924\u1922\u0003\u0002\u0002\u0002\u1925\u1927",
+ "\u0007\u08b2\u0002\u0002\u1926\u1928\u0007*\u0002\u0002\u1927\u1926",
+ "\u0003\u0002\u0002\u0002\u1927\u1928\u0003\u0002\u0002\u0002\u1928\u0277",
+ "\u0003\u0002\u0002\u0002\u1929\u192a\u0007\u013f\u0002\u0002\u192a\u1936",
+ "\u0007\u08b1\u0002\u0002\u192b\u192d\u0007\u08b7\u0002\u0002\u192c\u192b",
+ "\u0003\u0002\u0002\u0002\u192c\u192d\u0003\u0002\u0002\u0002\u192d\u1934",
+ "\u0003\u0002\u0002\u0002\u192e\u1935\u0007%\u0002\u0002\u192f\u1930",
+ "\u0007\u051a\u0002\u0002\u1930\u1935\u0007\u02d4\u0002\u0002\u1931\u1935",
+ "\u0007\u07d4\u0002\u0002\u1932\u1933\u0007\u0222\u0002\u0002\u1933\u1935",
+ "\u0007\u02d4\u0002\u0002\u1934\u192e\u0003\u0002\u0002\u0002\u1934\u192f",
+ "\u0003\u0002\u0002\u0002\u1934\u1931\u0003\u0002\u0002\u0002\u1934\u1932",
+ "\u0003\u0002\u0002\u0002\u1935\u1937\u0003\u0002\u0002\u0002\u1936\u192c",
+ "\u0003\u0002\u0002\u0002\u1937\u1938\u0003\u0002\u0002\u0002\u1938\u1936",
+ "\u0003\u0002\u0002\u0002\u1938\u1939\u0003\u0002\u0002\u0002\u1939\u193a",
+ "\u0003\u0002\u0002\u0002\u193a\u193b\u0007\u08b2\u0002\u0002\u193b\u193c",
+ "\u0007\u00d8\u0002\u0002\u193c\u0279\u0003\u0002\u0002\u0002\u193d\u193e",
+ "\u0007&\u0002\u0002\u193e\u194b\u0007\u01ed\u0002\u0002\u193f\u1946",
+ "\u0007\u08b1\u0002\u0002\u1940\u1941\u0007\u0601\u0002\u0002\u1941\u1947",
+ "\u0005\u0260\u0131\u0002\u1942\u1943\u0007\u0140\u0002\u0002\u1943\u1947",
+ "\u0007\u08ad\u0002\u0002\u1944\u1945\u0007\u02a2\u0002\u0002\u1945\u1947",
+ "\u0007\u08ab\u0002\u0002\u1946\u1940\u0003\u0002\u0002\u0002\u1946\u1942",
+ "\u0003\u0002\u0002\u0002\u1946\u1944\u0003\u0002\u0002\u0002\u1947\u1948",
+ "\u0003\u0002\u0002\u0002\u1948\u1946\u0003\u0002\u0002\u0002\u1948\u1949",
+ "\u0003\u0002\u0002\u0002\u1949\u194a\u0003\u0002\u0002\u0002\u194a\u194c",
+ "\u0007\u08b2\u0002\u0002\u194b\u193f\u0003\u0002\u0002\u0002\u194b\u194c",
+ "\u0003\u0002\u0002\u0002\u194c\u027b\u0003\u0002\u0002\u0002\u194d\u194e",
+ "\u0007\u0155\u0002\u0002\u194e\u1951\u0007\u07e8\u0002\u0002\u194f\u1950",
+ "\u0007\u02d2\u0002\u0002\u1950\u1952\u0005\u0260\u0131\u0002\u1951\u194f",
+ "\u0003\u0002\u0002\u0002\u1951\u1952\u0003\u0002\u0002\u0002\u1952\u027d",
+ "\u0003\u0002\u0002\u0002\u1953\u1954\u0007\u05f3\u0002\u0002\u1954\u1956",
+ "\u0007\u060f\u0002\u0002\u1955\u1957\u0007\u00df\u0002\u0002\u1956\u1955",
+ "\u0003\u0002\u0002\u0002\u1956\u1957\u0003\u0002\u0002\u0002\u1957\u1959",
+ "\u0003\u0002\u0002\u0002\u1958\u195a\u0007\u00a4\u0002\u0002\u1959\u1958",
+ "\u0003\u0002\u0002\u0002\u1959\u195a\u0003\u0002\u0002\u0002\u195a\u027f",
+ "\u0003\u0002\u0002\u0002\u195b\u195d\tC\u0002\u0002\u195c\u195b\u0003",
+ "\u0002\u0002\u0002\u195c\u195d\u0003\u0002\u0002\u0002\u195d\u195e\u0003",
+ "\u0002\u0002\u0002\u195e\u195f\u0007\u0552\u0002\u0002\u195f\u0281\u0003",
+ "\u0002\u0002\u0002\u1960\u1962\u0007\u07ef\u0002\u0002\u1961\u1963\u0007",
+ "\u0433\u0002\u0002\u1962\u1961\u0003\u0002\u0002\u0002\u1962\u1963\u0003",
+ "\u0002\u0002\u0002\u1963\u1964\u0003\u0002\u0002\u0002\u1964\u1965\u0007",
+ "\u026d\u0002\u0002\u1965\u1966\u0007\u013f\u0002\u0002\u1966\u1967\u0003",
+ "\u0002\u0002\u0002\u1967\u1968\u0005\u034a\u01a6\u0002\u1968\u0283\u0003",
+ "\u0002\u0002\u0002\u1969\u196a\u0007\u019d\u0002\u0002\u196a\u196b\u0007",
+ "\u077a\u0002\u0002\u196b\u196d\u0005\u0594\u02cb\u0002\u196c\u196e\u0007",
+ "\u0530\u0002\u0002\u196d\u196c\u0003\u0002\u0002\u0002\u196d\u196e\u0003",
+ "\u0002\u0002\u0002\u196e\u196f\u0003\u0002\u0002\u0002\u196f\u1970\u0007",
+ "\u08c3\u0002\u0002\u1970\u0285\u0003\u0002\u0002\u0002\u1971\u1972\u0007",
+ "\u019d\u0002\u0002\u1972\u1973\u0007\u0835\u0002\u0002\u1973\u1976\u0005",
+ "\u0594\u02cb\u0002\u1974\u1975\u0007\u00a4\u0002\u0002\u1975\u1977\u0007",
+ "\u0103\u0002\u0002\u1976\u1974\u0003\u0002\u0002\u0002\u1976\u1977\u0003",
+ "\u0002\u0002\u0002\u1977\u1978\u0003\u0002\u0002\u0002\u1978\u1979\u0007",
+ "\u08c3\u0002\u0002\u1979\u0287\u0003\u0002\u0002\u0002\u197a\u197b\u0007",
+ "\u00db\u0002\u0002\u197b\u197c\u0007\u046a\u0002\u0002\u197c\u197d\u0007",
+ "\u00d7\u0002\u0002\u197d\u197e\u0005\u0592\u02ca\u0002\u197e\u197f\u0007",
+ "\u02b9\u0002\u0002\u197f\u1980\u0005\u05ce\u02e8\u0002\u1980\u0289\u0003",
+ "\u0002\u0002\u0002\u1981\u1982\t\u0007\u0002\u0002\u1982\u028b\u0003",
+ "\u0002\u0002\u0002\u1983\u1984\tD\u0002\u0002\u1984\u028d\u0003\u0002",
+ "\u0002\u0002\u1985\u1988\u0007\u0122\u0002\u0002\u1986\u1987\u0007\u0496",
+ "\u0002\u0002\u1987\u1989\u0007\u0581\u0002\u0002\u1988\u1986\u0003\u0002",
+ "\u0002\u0002\u1988\u1989\u0003\u0002\u0002\u0002\u1989\u198a\u0003\u0002",
+ "\u0002\u0002\u198a\u198b\u0007\u052e\u0002\u0002\u198b\u198c\u0007\u065d",
+ "\u0002\u0002\u198c\u198d\u0005\u059a\u02ce\u0002\u198d\u1991\u0007\u0224",
+ "\u0002\u0002\u198e\u198f\u0005\u055e\u02b0\u0002\u198f\u1990\u0007\u08aa",
+ "\u0002\u0002\u1990\u1992\u0003\u0002\u0002\u0002\u1991\u198e\u0003\u0002",
+ "\u0002\u0002\u1991\u1992\u0003\u0002\u0002\u0002\u1992\u1993\u0003\u0002",
+ "\u0002\u0002\u1993\u1996\u0005\u059c\u02cf\u0002\u1994\u1995\u0007\u08b9",
+ "\u0002\u0002\u1995\u1997\u0005\u0590\u02c9\u0002\u1996\u1994\u0003\u0002",
+ "\u0002\u0002\u1996\u1997\u0003\u0002\u0002\u0002\u1997\u19b0\u0003\u0002",
+ "\u0002\u0002\u1998\u199b\u0007\u0122\u0002\u0002\u1999\u199a\u0007\u0496",
+ "\u0002\u0002\u199a\u199c\u0007\u0581\u0002\u0002\u199b\u1999\u0003\u0002",
+ "\u0002\u0002\u199b\u199c\u0003\u0002\u0002\u0002\u199c\u199d\u0003\u0002",
+ "\u0002\u0002\u199d\u19a1\u0007\u065d\u0002\u0002\u199e\u199f\u0005\u055e",
+ "\u02b0\u0002\u199f\u19a0\u0007\u08aa\u0002\u0002\u19a0\u19a2\u0003\u0002",
+ "\u0002\u0002\u19a1\u199e\u0003\u0002\u0002\u0002\u19a1\u19a2\u0003\u0002",
+ "\u0002\u0002\u19a2\u19a3\u0003\u0002\u0002\u0002\u19a3\u19a4\u0005\u059a",
+ "\u02ce\u0002\u19a4\u19a8\u0007\u0224\u0002\u0002\u19a5\u19a6\u0005\u055e",
+ "\u02b0\u0002\u19a6\u19a7\u0007\u08aa\u0002\u0002\u19a7\u19a9\u0003\u0002",
+ "\u0002\u0002\u19a8\u19a5\u0003\u0002\u0002\u0002\u19a8\u19a9\u0003\u0002",
+ "\u0002\u0002\u19a9\u19aa\u0003\u0002\u0002\u0002\u19aa\u19ad\u0005\u059c",
+ "\u02cf\u0002\u19ab\u19ac\u0007\u08b9\u0002\u0002\u19ac\u19ae\u0005\u0590",
+ "\u02c9\u0002\u19ad\u19ab\u0003\u0002\u0002\u0002\u19ad\u19ae\u0003\u0002",
+ "\u0002\u0002\u19ae\u19b0\u0003\u0002\u0002\u0002\u19af\u1985\u0003\u0002",
+ "\u0002\u0002\u19af\u1998\u0003\u0002\u0002\u0002\u19b0\u028f\u0003\u0002",
+ "\u0002\u0002\u19b1\u19b2\u0007\u00db\u0002\u0002\u19b2\u19b3\u0007\u046a",
+ "\u0002\u0002\u19b3\u19b4\u0007\u077a\u0002\u0002\u19b4\u19b5\u0005\u0594",
+ "\u02cb\u0002\u19b5\u19b6\u0007\u02b9\u0002\u0002\u19b6\u19b7\u0005\u05ce",
+ "\u02e8\u0002\u19b7\u0291\u0003\u0002\u0002\u0002\u19b8\u19b9\u0007)",
+ "\u0002\u0002\u19b9\u19ba\u0007\u00c7\u0002\u0002\u19ba\u19c1\u0005\u00ba",
+ "^\u0002\u19bb\u19c2\u0005\u0264\u0133\u0002\u19bc\u19bd\u0007\u0601",
+ "\u0002\u0002\u19bd\u19c2\u0005\u0260\u0131\u0002\u19be\u19c2\u0005\u027a",
+ "\u013e\u0002\u19bf\u19c2\u0005\u027c\u013f\u0002\u19c0\u19c2\u0005\u0294",
+ "\u014b\u0002\u19c1\u19bb\u0003\u0002\u0002\u0002\u19c1\u19bc\u0003\u0002",
+ "\u0002\u0002\u19c1\u19be\u0003\u0002\u0002\u0002\u19c1\u19bf\u0003\u0002",
+ "\u0002\u0002\u19c1\u19c0\u0003\u0002\u0002\u0002\u19c2\u19c3\u0003\u0002",
+ "\u0002\u0002\u19c3\u19c1\u0003\u0002\u0002\u0002\u19c3\u19c4\u0003\u0002",
+ "\u0002\u0002\u19c4\u19c6\u0003\u0002\u0002\u0002\u19c5\u19c7\u0005\u01dc",
+ "\u00ef\u0002\u19c6\u19c5\u0003\u0002\u0002\u0002\u19c6\u19c7\u0003\u0002",
+ "\u0002\u0002\u19c7\u19c8\u0003\u0002\u0002\u0002\u19c8\u19c9\u0007\u08c3",
+ "\u0002\u0002\u19c9\u0293\u0003\u0002\u0002\u0002\u19ca\u19cb\t5\u0002",
+ "\u0002\u19cb\u0295\u0003\u0002\u0002\u0002\u19cc\u19cd\u0005\u05d6\u02ec",
+ "\u0002\u19cd\u0297\u0003\u0002\u0002\u0002\u19ce\u19cf\u0007)\u0002",
+ "\u0002\u19cf\u19d1\u0007\u013e\u0002\u0002\u19d0\u19d2\u0005\u0296\u014c",
+ "\u0002\u19d1\u19d0\u0003\u0002\u0002\u0002\u19d1\u19d2\u0003\u0002\u0002",
+ "\u0002\u19d2\u19dc\u0003\u0002\u0002\u0002\u19d3\u19dd\u0005\u029a\u014e",
+ "\u0002\u19d4\u19dd\u0005\u02a0\u0151\u0002\u19d5\u19dd\u0005\u02b0\u0159",
+ "\u0002\u19d6\u19dd\u0005\u02b8\u015d\u0002\u19d7\u19dd\u0005\u02ca\u0166",
+ "\u0002\u19d8\u19dd\u0005\u02ce\u0168\u0002\u19d9\u19dd\u0005\u02de\u0170",
+ "\u0002\u19da\u19dd\u0005\u02e2\u0172\u0002\u19db\u19dd\u0005\u02e4\u0173",
+ "\u0002\u19dc\u19d3\u0003\u0002\u0002\u0002\u19dc\u19d4\u0003\u0002\u0002",
+ "\u0002\u19dc\u19d5\u0003\u0002\u0002\u0002\u19dc\u19d6\u0003\u0002\u0002",
+ "\u0002\u19dc\u19d7\u0003\u0002\u0002\u0002\u19dc\u19d8\u0003\u0002\u0002",
+ "\u0002\u19dc\u19d9\u0003\u0002\u0002\u0002\u19dc\u19da\u0003\u0002\u0002",
+ "\u0002\u19dc\u19db\u0003\u0002\u0002\u0002\u19dd\u19de\u0003\u0002\u0002",
+ "\u0002\u19de\u19df\u0007\u08c3\u0002\u0002\u19df\u0299\u0003\u0002\u0002",
+ "\u0002\u19e0\u19e3\u0007\u0369\u0002\u0002\u19e1\u19e2\tE\u0002\u0002",
+ "\u19e2\u19e4\u0007\u013e\u0002\u0002\u19e3\u19e1\u0003\u0002\u0002\u0002",
+ "\u19e3\u19e4\u0003\u0002\u0002\u0002\u19e4\u19f4\u0003\u0002\u0002\u0002",
+ "\u19e5\u19e8\u0007\u046f\u0002\u0002\u19e6\u19e7\u0007\u054b\u0002\u0002",
+ "\u19e7\u19e9\u0007\u084f\u0002\u0002\u19e8\u19e6\u0003\u0002\u0002\u0002",
+ "\u19e8\u19e9\u0003\u0002\u0002\u0002\u19e9\u19eb\u0003\u0002\u0002\u0002",
+ "\u19ea\u19ec\u0005\u029c\u014f\u0002\u19eb\u19ea\u0003\u0002\u0002\u0002",
+ "\u19eb\u19ec\u0003\u0002\u0002\u0002\u19ec\u19ee\u0003\u0002\u0002\u0002",
+ "\u19ed\u19ef\u0005\u029e\u0150\u0002\u19ee\u19ed\u0003\u0002\u0002\u0002",
+ "\u19ee\u19ef\u0003\u0002\u0002\u0002\u19ef\u19f4\u0003\u0002\u0002\u0002",
+ "\u19f0\u19f1\u0007\u046f\u0002\u0002\u19f1\u19f2\u0007\u054b\u0002\u0002",
+ "\u19f2\u19f4\u0007\u0469\u0002\u0002\u19f3\u19e0\u0003\u0002\u0002\u0002",
+ "\u19f3\u19e5\u0003\u0002\u0002\u0002\u19f3\u19f0\u0003\u0002\u0002\u0002",
+ "\u19f4\u029b\u0003\u0002\u0002\u0002\u19f5\u19f6\tF\u0002\u0002\u19f6",
+ "\u029d\u0003\u0002\u0002\u0002\u19f7\u19f8\tG\u0002\u0002\u19f8\u029f",
+ "\u0003\u0002\u0002\u0002\u19f9\u19ff\u0005\u02a4\u0153\u0002\u19fa\u19ff",
+ "\u0005\u02ac\u0157\u0002\u19fb\u19fc\u0005\u02a2\u0152\u0002\u19fc\u19fd",
+ "\u0007_\u0002\u0002\u19fd\u19ff\u0003\u0002\u0002\u0002\u19fe\u19f9",
+ "\u0003\u0002\u0002\u0002\u19fe\u19fa\u0003\u0002\u0002\u0002\u19fe\u19fb",
+ "\u0003\u0002\u0002\u0002\u19ff\u02a1\u0003\u0002\u0002\u0002\u1a00\u1a01",
+ "\tH\u0002\u0002\u1a01\u02a3\u0003\u0002\u0002\u0002\u1a02\u1a04\u0007",
+ "\u0554\u0002\u0002\u1a03\u1a05\u0007Y\u0002\u0002\u1a04\u1a03\u0003",
+ "\u0002\u0002\u0002\u1a04\u1a05\u0003\u0002\u0002\u0002\u1a05\u1a08\u0003",
+ "\u0002\u0002\u0002\u1a06\u1a07\u0007\u022c\u0002\u0002\u1a07\u1a09\u0007",
+ "\u08ad\u0002\u0002\u1a08\u1a06\u0003\u0002\u0002\u0002\u1a08\u1a09\u0003",
+ "\u0002\u0002\u0002\u1a09\u1a20\u0003\u0002\u0002\u0002\u1a0a\u1a0f\u0005",
+ "\u02a6\u0154\u0002\u1a0b\u1a0f\u0005\u02a8\u0155\u0002\u1a0c\u1a0d\u0007",
+ "\u030b\u0002\u0002\u1a0d\u1a0f\u0007\u08ad\u0002\u0002\u1a0e\u1a0a\u0003",
+ "\u0002\u0002\u0002\u1a0e\u1a0b\u0003\u0002\u0002\u0002\u1a0e\u1a0c\u0003",
+ "\u0002\u0002\u0002\u1a0e\u1a0f\u0003\u0002\u0002\u0002\u1a0f\u1a19\u0003",
+ "\u0002\u0002\u0002\u1a10\u1a16\u0007\u0784\u0002\u0002\u1a11\u1a12\u0007",
+ "\'\u0002\u0002\u1a12\u1a13\u0007\u08ab\u0002\u0002\u1a13\u1a16\u0007",
+ "\u0114\u0002\u0002\u1a14\u1a16\u0005\u01dc\u00ef\u0002\u1a15\u1a10\u0003",
+ "\u0002\u0002\u0002\u1a15\u1a11\u0003\u0002\u0002\u0002\u1a15\u1a14\u0003",
+ "\u0002\u0002\u0002\u1a16\u1a17\u0003\u0002\u0002\u0002\u1a17\u1a15\u0003",
+ "\u0002\u0002\u0002\u1a17\u1a18\u0003\u0002\u0002\u0002\u1a18\u1a1a\u0003",
+ "\u0002\u0002\u0002\u1a19\u1a15\u0003\u0002\u0002\u0002\u1a19\u1a1a\u0003",
+ "\u0002\u0002\u0002\u1a1a\u1a21\u0003\u0002\u0002\u0002\u1a1b\u1a1d\u0007",
+ "\u010c\u0002\u0002\u1a1c\u1a1e\u0007\u0161\u0002\u0002\u1a1d\u1a1c\u0003",
+ "\u0002\u0002\u0002\u1a1d\u1a1e\u0003\u0002\u0002\u0002\u1a1e\u1a21\u0003",
+ "\u0002\u0002\u0002\u1a1f\u1a21\u0007\u00a0\u0002\u0002\u1a20\u1a0e\u0003",
+ "\u0002\u0002\u0002\u1a20\u1a1b\u0003\u0002\u0002\u0002\u1a20\u1a1f\u0003",
+ "\u0002\u0002\u0002\u1a21\u02a5\u0003\u0002\u0002\u0002\u1a22\u1a24\u0007",
+ "\u0620\u0002\u0002\u1a23\u1a22\u0003\u0002\u0002\u0002\u1a23\u1a24\u0003",
+ "\u0002\u0002\u0002\u1a24\u1a25\u0003\u0002\u0002\u0002\u1a25\u1a36\u0007",
+ "\u013e\u0002\u0002\u1a26\u1a2d\u0007\u07e6\u0002\u0002\u1a27\u1a2e\u0007",
+ "\u00a0\u0002\u0002\u1a28\u1a29\u0007\u0793\u0002\u0002\u1a29\u1a2e\u0007",
+ "\u08ad\u0002\u0002\u1a2a\u1a2b\u0007\u00ae\u0002\u0002\u1a2b\u1a2e\u0007",
+ "\u08ab\u0002\u0002\u1a2c\u1a2e\u0007\u0100\u0002\u0002\u1a2d\u1a27\u0003",
+ "\u0002\u0002\u0002\u1a2d\u1a28\u0003\u0002\u0002\u0002\u1a2d\u1a2a\u0003",
+ "\u0002\u0002\u0002\u1a2d\u1a2c\u0003\u0002\u0002\u0002\u1a2e\u1a33\u0003",
+ "\u0002\u0002\u0002\u1a2f\u1a30\u0007\u0811\u0002\u0002\u1a30\u1a31\u0007",
+ "_\u0002\u0002\u1a31\u1a33\u0007\u010d\u0002\u0002\u1a32\u1a26\u0003",
+ "\u0002\u0002\u0002\u1a32\u1a2f\u0003\u0002\u0002\u0002\u1a33\u1a34\u0003",
+ "\u0002\u0002\u0002\u1a34\u1a32\u0003\u0002\u0002\u0002\u1a34\u1a35\u0003",
+ "\u0002\u0002\u0002\u1a35\u1a37\u0003\u0002\u0002\u0002\u1a36\u1a32\u0003",
+ "\u0002\u0002\u0002\u1a36\u1a37\u0003\u0002\u0002\u0002\u1a37\u02a7\u0003",
+ "\u0002\u0002\u0002\u1a38\u1a39\u0007\u0777\u0002\u0002\u1a39\u1a3e\u0005",
+ "\u0346\u01a4\u0002\u1a3a\u1a3b\u0007\u08b7\u0002\u0002\u1a3b\u1a3d\u0005",
+ "\u0346\u01a4\u0002\u1a3c\u1a3a\u0003\u0002\u0002\u0002\u1a3d\u1a40\u0003",
+ "\u0002\u0002\u0002\u1a3e\u1a3c\u0003\u0002\u0002\u0002\u1a3e\u1a3f\u0003",
+ "\u0002\u0002\u0002\u1a3f\u1a4e\u0003\u0002\u0002\u0002\u1a40\u1a3e\u0003",
+ "\u0002\u0002\u0002\u1a41\u1a42\u0007\u0140\u0002\u0002\u1a42\u1a4e\u0007",
+ "\u08ad\u0002\u0002\u1a43\u1a49\u0005\u02ec\u0177\u0002\u1a44\u1a45\u0007",
+ "\u08b7\u0002\u0002\u1a45\u1a48\u0007\u08ad\u0002\u0002\u1a46\u1a48\u0005",
+ "\u02ec\u0177\u0002\u1a47\u1a44\u0003\u0002\u0002\u0002\u1a47\u1a46\u0003",
+ "\u0002\u0002\u0002\u1a48\u1a4b\u0003\u0002\u0002\u0002\u1a49\u1a47\u0003",
+ "\u0002\u0002\u0002\u1a49\u1a4a\u0003\u0002\u0002\u0002\u1a4a\u1a4e\u0003",
+ "\u0002\u0002\u0002\u1a4b\u1a49\u0003\u0002\u0002\u0002\u1a4c\u1a4e\u0005",
+ "\u02aa\u0156\u0002\u1a4d\u1a38\u0003\u0002\u0002\u0002\u1a4d\u1a41\u0003",
+ "\u0002\u0002\u0002\u1a4d\u1a43\u0003\u0002\u0002\u0002\u1a4d\u1a4c\u0003",
+ "\u0002\u0002\u0002\u1a4e\u02a9\u0003\u0002\u0002\u0002\u1a4f\u1a50\u0006",
+ "\u0156\n\u0002\u1a50\u1a65\u0007\u0620\u0002\u0002\u1a51\u1a52\u0007",
+ "\u0777\u0002\u0002\u1a52\u1a57\u0005\u0346\u01a4\u0002\u1a53\u1a54\u0007",
+ "\u08b7\u0002\u0002\u1a54\u1a56\u0005\u0346\u01a4\u0002\u1a55\u1a53\u0003",
+ "\u0002\u0002\u0002\u1a56\u1a59\u0003\u0002\u0002\u0002\u1a57\u1a55\u0003",
+ "\u0002\u0002\u0002\u1a57\u1a58\u0003\u0002\u0002\u0002\u1a58\u1a66\u0003",
+ "\u0002\u0002\u0002\u1a59\u1a57\u0003\u0002\u0002\u0002\u1a5a\u1a5b\u0007",
+ "\u0140\u0002\u0002\u1a5b\u1a66\u0007\u08ad\u0002\u0002\u1a5c\u1a62\u0005",
+ "\u02ec\u0177\u0002\u1a5d\u1a5e\u0007\u08b7\u0002\u0002\u1a5e\u1a61\u0007",
+ "\u08ad\u0002\u0002\u1a5f\u1a61\u0005\u02ec\u0177\u0002\u1a60\u1a5d\u0003",
+ "\u0002\u0002\u0002\u1a60\u1a5f\u0003\u0002\u0002\u0002\u1a61\u1a64\u0003",
+ "\u0002\u0002\u0002\u1a62\u1a60\u0003\u0002\u0002\u0002\u1a62\u1a63\u0003",
+ "\u0002\u0002\u0002\u1a63\u1a66\u0003\u0002\u0002\u0002\u1a64\u1a62\u0003",
+ "\u0002\u0002\u0002\u1a65\u1a51\u0003\u0002\u0002\u0002\u1a65\u1a5a\u0003",
+ "\u0002\u0002\u0002\u1a65\u1a5c\u0003\u0002\u0002\u0002\u1a66\u1a67\u0003",
+ "\u0002\u0002\u0002\u1a67\u1a6a\u0007\u07e6\u0002\u0002\u1a68\u1a69\u0007",
+ "\u0100\u0002\u0002\u1a69\u1a6b\u0007\u084b\u0002\u0002\u1a6a\u1a68\u0003",
+ "\u0002\u0002\u0002\u1a6a\u1a6b\u0003\u0002\u0002\u0002\u1a6b\u1a6c\u0003",
+ "\u0002\u0002\u0002\u1a6c\u1a6d\u0007\u010d\u0002\u0002\u1a6d\u02ab\u0003",
+ "\u0002\u0002\u0002\u1a6e\u1a91\u0007\u0554\u0002\u0002\u1a6f\u1a70\u0007",
+ "\u031e\u0002\u0002\u1a70\u1a71\u0007\u0620\u0002\u0002\u1a71\u1a87\u0007",
+ "\u013e\u0002\u0002\u1a72\u1a73\u0007\u0811\u0002\u0002\u1a73\u1a74\u0007",
+ "\u0130\u0002\u0002\u1a74\u1a82\u0007\u030b\u0002\u0002\u1a75\u1a78\u0007",
+ "\u0188\u0002\u0002\u1a76\u1a77\u0007\u022c\u0002\u0002\u1a77\u1a79\u0007",
+ "\u05e4\u0002\u0002\u1a78\u1a76\u0003\u0002\u0002\u0002\u1a78\u1a79\u0003",
+ "\u0002\u0002\u0002\u1a79\u1a82\u0003\u0002\u0002\u0002\u1a7a\u1a82\u0007",
+ "\u03c8\u0002\u0002\u1a7b\u1a7c\u0007\u07e6\u0002\u0002\u1a7c\u1a7d\u0007",
+ "\u00ae\u0002\u0002\u1a7d\u1a82\u0007\u08ab\u0002\u0002\u1a7e\u1a7f\u0007",
+ "\u07e6\u0002\u0002\u1a7f\u1a82\u0007\u0100\u0002\u0002\u1a80\u1a82\u0005",
+ "\u01dc\u00ef\u0002\u1a81\u1a72\u0003\u0002\u0002\u0002\u1a81\u1a75\u0003",
+ "\u0002\u0002\u0002\u1a81\u1a7a\u0003\u0002\u0002\u0002\u1a81\u1a7b\u0003",
+ "\u0002\u0002\u0002\u1a81\u1a7e\u0003\u0002\u0002\u0002\u1a81\u1a80\u0003",
+ "\u0002\u0002\u0002\u1a82\u1a83\u0003\u0002\u0002\u0002\u1a83\u1a81\u0003",
+ "\u0002\u0002\u0002\u1a83\u1a84\u0003\u0002\u0002\u0002\u1a84\u1a88\u0003",
+ "\u0002\u0002\u0002\u1a85\u1a88\u0007\u020f\u0002\u0002\u1a86\u1a88\u0007",
+ "\u00a0\u0002\u0002\u1a87\u1a81\u0003\u0002\u0002\u0002\u1a87\u1a85\u0003",
+ "\u0002\u0002\u0002\u1a87\u1a86\u0003\u0002\u0002\u0002\u1a87\u1a88\u0003",
+ "\u0002\u0002\u0002\u1a88\u1a92\u0003\u0002\u0002\u0002\u1a89\u1a8a\u0007",
+ "\u07ae\u0002\u0002\u1a8a\u1a8b\u0007\u030e\u0002\u0002\u1a8b\u1a8f\u0007",
+ "\u0620\u0002\u0002\u1a8c\u1a90\u0005\u02ae\u0158\u0002\u1a8d\u1a8e\u0007",
+ "\u02d2\u0002\u0002\u1a8e\u1a90\u0007\u025d\u0002\u0002\u1a8f\u1a8c\u0003",
+ "\u0002\u0002\u0002\u1a8f\u1a8d\u0003\u0002\u0002\u0002\u1a90\u1a92\u0003",
+ "\u0002\u0002\u0002\u1a91\u1a6f\u0003\u0002\u0002\u0002\u1a91\u1a89\u0003",
+ "\u0002\u0002\u0002\u1a92\u02ad\u0003\u0002\u0002\u0002\u1a93\u1a94\u0005",
+ "\u05d6\u02ec\u0002\u1a94\u02af\u0003\u0002\u0002\u0002\u1a95\u1a96\u0007",
+ "\u057e\u0002\u0002\u1a96\u1a97\u0007\u0209\u0002\u0002\u1a97\u1a9c\u0005",
+ "\u02ee\u0178\u0002\u1a98\u1a99\u0007\u08b7\u0002\u0002\u1a99\u1a9b\u0005",
+ "\u02ee\u0178\u0002\u1a9a\u1a98\u0003\u0002\u0002\u0002\u1a9b\u1a9e\u0003",
+ "\u0002\u0002\u0002\u1a9c\u1a9a\u0003\u0002\u0002\u0002\u1a9c\u1a9d\u0003",
+ "\u0002\u0002\u0002\u1a9d\u1a9f\u0003\u0002\u0002\u0002\u1a9e\u1a9c\u0003",
+ "\u0002\u0002\u0002\u1a9f\u1aa0\u0007\u07ae\u0002\u0002\u1aa0\u1aa1\u0005",
+ "\u02ee\u0178\u0002\u1aa1\u1aa6\u0003\u0002\u0002\u0002\u1aa2\u1aa6\u0005",
+ "\u02b2\u015a\u0002\u1aa3\u1aa6\u0005\u02b4\u015b\u0002\u1aa4\u1aa6\u0005",
+ "\u02b6\u015c\u0002\u1aa5\u1a95\u0003\u0002\u0002\u0002\u1aa5\u1aa2\u0003",
+ "\u0002\u0002\u0002\u1aa5\u1aa3\u0003\u0002\u0002\u0002\u1aa5\u1aa4\u0003",
+ "\u0002\u0002\u0002\u1aa6\u02b1\u0003\u0002\u0002\u0002\u1aa7\u1aa8\u0007",
+ "\u0122\u0002\u0002\u1aa8\u1aab\u0007\u0140\u0002\u0002\u1aa9\u1aac\u0005",
+ "\u02ee\u0178\u0002\u1aaa\u1aac\u0005\u02ec\u0177\u0002\u1aab\u1aa9\u0003",
+ "\u0002\u0002\u0002\u1aab\u1aaa\u0003\u0002\u0002\u0002\u1aac\u1ab4\u0003",
+ "\u0002\u0002\u0002\u1aad\u1ab0\u0007\u08b7\u0002\u0002\u1aae\u1ab1\u0005",
+ "\u02ee\u0178\u0002\u1aaf\u1ab1\u0005\u02ec\u0177\u0002\u1ab0\u1aae\u0003",
+ "\u0002\u0002\u0002\u1ab0\u1aaf\u0003\u0002\u0002\u0002\u1ab1\u1ab3\u0003",
+ "\u0002\u0002\u0002\u1ab2\u1aad\u0003\u0002\u0002\u0002\u1ab3\u1ab6\u0003",
+ "\u0002\u0002\u0002\u1ab4\u1ab2\u0003\u0002\u0002\u0002\u1ab4\u1ab5\u0003",
+ "\u0002\u0002\u0002\u1ab5\u1ab9\u0003\u0002\u0002\u0002\u1ab6\u1ab4\u0003",
+ "\u0002\u0002\u0002\u1ab7\u1ab8\u0007?\u0002\u0002\u1ab8\u1aba\u0007",
+ "\u0389\u0002\u0002\u1ab9\u1ab7\u0003\u0002\u0002\u0002\u1ab9\u1aba\u0003",
+ "\u0002\u0002\u0002\u1aba\u02b3\u0003\u0002\u0002\u0002\u1abb\u1abe\u0007",
+ "\u0140\u0002\u0002\u1abc\u1abf\u0005\u02ee\u0178\u0002\u1abd\u1abf\u0005",
+ "\u02ec\u0177\u0002\u1abe\u1abc\u0003\u0002\u0002\u0002\u1abe\u1abd\u0003",
+ "\u0002\u0002\u0002\u1abf\u1ac7\u0003\u0002\u0002\u0002\u1ac0\u1ac3\u0007",
+ "\u08b7\u0002\u0002\u1ac1\u1ac4\u0005\u02ee\u0178\u0002\u1ac2\u1ac4\u0005",
+ "\u02ec\u0177\u0002\u1ac3\u1ac1\u0003\u0002\u0002\u0002\u1ac3\u1ac2\u0003",
+ "\u0002\u0002\u0002\u1ac4\u1ac6\u0003\u0002\u0002\u0002\u1ac5\u1ac0\u0003",
+ "\u0002\u0002\u0002\u1ac6\u1ac9\u0003\u0002\u0002\u0002\u1ac7\u1ac5\u0003",
+ "\u0002\u0002\u0002\u1ac7\u1ac8\u0003\u0002\u0002\u0002\u1ac8\u1ad5\u0003",
+ "\u0002\u0002\u0002\u1ac9\u1ac7\u0003\u0002\u0002\u0002\u1aca\u1ad6\u0007",
+ "\u0467\u0002\u0002\u1acb\u1ace\u0007\u045a\u0002\u0002\u1acc\u1acd\u0007",
+ "\u0224\u0002\u0002\u1acd\u1acf\u0007\u019d\u0002\u0002\u1ace\u1acc\u0003",
+ "\u0002\u0002\u0002\u1ace\u1acf\u0003\u0002\u0002\u0002\u1acf\u1ad6\u0003",
+ "\u0002\u0002\u0002\u1ad0\u1ad1\u0007\u0586\u0002\u0002\u1ad1\u1ad6\u0005",
+ "\u0260\u0131\u0002\u1ad2\u1ad6\u0005\u01d6\u00ec\u0002\u1ad3\u1ad4\u0007",
+ "\u01bf\u0002\u0002\u1ad4\u1ad6\u0007_\u0002\u0002\u1ad5\u1aca\u0003",
+ "\u0002\u0002\u0002\u1ad5\u1acb\u0003\u0002\u0002\u0002\u1ad5\u1ad0\u0003",
+ "\u0002\u0002\u0002\u1ad5\u1ad2\u0003\u0002\u0002\u0002\u1ad5\u1ad3\u0003",
+ "\u0002\u0002\u0002\u1ad6\u02b5\u0003\u0002\u0002\u0002\u1ad7\u1ada\u0007",
+ "\u0780\u0002\u0002\u1ad8\u1adb\u0005\u02ee\u0178\u0002\u1ad9\u1adb\u0005",
+ "\u02ec\u0177\u0002\u1ada\u1ad8\u0003\u0002\u0002\u0002\u1ada\u1ad9\u0003",
+ "\u0002\u0002\u0002\u1adb\u1ae3\u0003\u0002\u0002\u0002\u1adc\u1adf\u0007",
+ "\u08b7\u0002\u0002\u1add\u1ae0\u0005\u02ee\u0178\u0002\u1ade\u1ae0\u0005",
+ "\u02ec\u0177\u0002\u1adf\u1add\u0003\u0002\u0002\u0002\u1adf\u1ade\u0003",
+ "\u0002\u0002\u0002\u1ae0\u1ae2\u0003\u0002\u0002\u0002\u1ae1\u1adc\u0003",
+ "\u0002\u0002\u0002\u1ae2\u1ae5\u0003\u0002\u0002\u0002\u1ae3\u1ae1\u0003",
+ "\u0002\u0002\u0002\u1ae3\u1ae4\u0003\u0002\u0002\u0002\u1ae4\u1aee\u0003",
+ "\u0002\u0002\u0002\u1ae5\u1ae3\u0003\u0002\u0002\u0002\u1ae6\u1ae7\u0007",
+ "\u0586\u0002\u0002\u1ae7\u1aef\u0005\u0260\u0131\u0002\u1ae8\u1aef\u0005",
+ "\u01d6\u00ec\u0002\u1ae9\u1aea\u0007\u019d\u0002\u0002\u1aea\u1aeb\u0007",
+ "\u026d\u0002\u0002\u1aeb\u1aef\u0007\u0141\u0002\u0002\u1aec\u1aef\u0007",
+ "\u0467\u0002\u0002\u1aed\u1aef\u0007\u045a\u0002\u0002\u1aee\u1ae6\u0003",
+ "\u0002\u0002\u0002\u1aee\u1ae8\u0003\u0002\u0002\u0002\u1aee\u1ae9\u0003",
+ "\u0002\u0002\u0002\u1aee\u1aec\u0003\u0002\u0002\u0002\u1aee\u1aed\u0003",
+ "\u0002\u0002\u0002\u1aef\u02b7\u0003\u0002\u0002\u0002\u1af0\u1af2\u0007",
+ "=\u0002\u0002\u1af1\u1af3\u0007\u0322\u0002\u0002\u1af2\u1af1\u0003",
+ "\u0002\u0002\u0002\u1af2\u1af3\u0003\u0002\u0002\u0002\u1af3\u1af6\u0003",
+ "\u0002\u0002\u0002\u1af4\u1af6\u0007\u03ad\u0002\u0002\u1af5\u1af0\u0003",
+ "\u0002\u0002\u0002\u1af5\u1af4\u0003\u0002\u0002\u0002\u1af6\u1b1f\u0003",
+ "\u0002\u0002\u0002\u1af7\u1af9\u0007\u03f4\u0002\u0002\u1af8\u1af7\u0003",
+ "\u0002\u0002\u0002\u1af8\u1af9\u0003\u0002\u0002\u0002\u1af9\u1afa\u0003",
+ "\u0002\u0002\u0002\u1afa\u1afb\u0007\u0220\u0002\u0002\u1afb\u1b1f\u0007",
+ "\u030d\u0002\u0002\u1afc\u1afd\u0007\u057e\u0002\u0002\u1afd\u1afe\u0007",
+ "\u0209\u0002\u0002\u1afe\u1b03\u0005\u02ee\u0178\u0002\u1aff\u1b00\u0007",
+ "\u08b7\u0002\u0002\u1b00\u1b02\u0005\u02ee\u0178\u0002\u1b01\u1aff\u0003",
+ "\u0002\u0002\u0002\u1b02\u1b05\u0003\u0002\u0002\u0002\u1b03\u1b01\u0003",
+ "\u0002\u0002\u0002\u1b03\u1b04\u0003\u0002\u0002\u0002\u1b04\u1b06\u0003",
+ "\u0002\u0002\u0002\u1b05\u1b03\u0003\u0002\u0002\u0002\u1b06\u1b07\u0007",
+ "\u07ae\u0002\u0002\u1b07\u1b08\u0005\u02ee\u0178\u0002\u1b08\u1b1f\u0003",
+ "\u0002\u0002\u0002\u1b09\u1b0b\u0007\u00bf\u0002\u0002\u1b0a\u1b0c\u0007",
+ "\u07cb\u0002\u0002\u1b0b\u1b0a\u0003\u0002\u0002\u0002\u1b0b\u1b0c\u0003",
+ "\u0002\u0002\u0002\u1b0c\u1b0d\u0003\u0002\u0002\u0002\u1b0d\u1b0e\u0007",
+ "\u030b\u0002\u0002\u1b0e\u1b13\u0005\u02c8\u0165\u0002\u1b0f\u1b10\u0007",
+ "\u08b7\u0002\u0002\u1b10\u1b12\u0005\u02c8\u0165\u0002\u1b11\u1b0f\u0003",
+ "\u0002\u0002\u0002\u1b12\u1b15\u0003\u0002\u0002\u0002\u1b13\u1b11\u0003",
+ "\u0002\u0002\u0002\u1b13\u1b14\u0003\u0002\u0002\u0002\u1b14\u1b18\u0003",
+ "\u0002\u0002\u0002\u1b15\u1b13\u0003\u0002\u0002\u0002\u1b16\u1b17\u0007",
+ "\u07e3\u0002\u0002\u1b17\u1b19\u0007\u0140\u0002\u0002\u1b18\u1b16\u0003",
+ "\u0002\u0002\u0002\u1b18\u1b19\u0003\u0002\u0002\u0002\u1b19\u1b1f\u0003",
+ "\u0002\u0002\u0002\u1b1a\u1b1f\u0005\u02ba\u015e\u0002\u1b1b\u1b1f\u0005",
+ "\u02be\u0160\u0002\u1b1c\u1b1f\u0005\u02c0\u0161\u0002\u1b1d\u1b1f\u0005",
+ "\u02c2\u0162\u0002\u1b1e\u1af5\u0003\u0002\u0002\u0002\u1b1e\u1af8\u0003",
+ "\u0002\u0002\u0002\u1b1e\u1afc\u0003\u0002\u0002\u0002\u1b1e\u1b09\u0003",
+ "\u0002\u0002\u0002\u1b1e\u1b1a\u0003\u0002\u0002\u0002\u1b1e\u1b1b\u0003",
+ "\u0002\u0002\u0002\u1b1e\u1b1c\u0003\u0002\u0002\u0002\u1b1e\u1b1d\u0003",
+ "\u0002\u0002\u0002\u1b1f\u02b9\u0003\u0002\u0002\u0002\u1b20\u1b22\u0007",
+ "\u0014\u0002\u0002\u1b21\u1b23\u0007\u0620\u0002\u0002\u1b22\u1b21\u0003",
+ "\u0002\u0002\u0002\u1b22\u1b23\u0003\u0002\u0002\u0002\u1b23\u1b24\u0003",
+ "\u0002\u0002\u0002\u1b24\u1b44\u0007\u030b\u0002\u0002\u1b25\u1b26\u0005",
+ "\u02bc\u015f\u0002\u1b26\u1b27\u0005\u01d4\u00eb\u0002\u1b27\u1b29\u0003",
+ "\u0002\u0002\u0002\u1b28\u1b25\u0003\u0002\u0002\u0002\u1b29\u1b2a\u0003",
+ "\u0002\u0002\u0002\u1b2a\u1b28\u0003\u0002\u0002\u0002\u1b2a\u1b2b\u0003",
+ "\u0002\u0002\u0002\u1b2b\u1b45\u0003\u0002\u0002\u0002\u1b2c\u1b2d\u0007",
+ "\u033c\u0002\u0002\u1b2d\u1b2f\u0005\u02ee\u0178\u0002\u1b2e\u1b30\u0007",
+ "\u059a\u0002\u0002\u1b2f\u1b2e\u0003\u0002\u0002\u0002\u1b2f\u1b30\u0003",
+ "\u0002\u0002\u0002\u1b30\u1b38\u0003\u0002\u0002\u0002\u1b31\u1b32\u0007",
+ "\u08b7\u0002\u0002\u1b32\u1b34\u0005\u02ee\u0178\u0002\u1b33\u1b35\u0007",
+ "\u059a\u0002\u0002\u1b34\u1b33\u0003\u0002\u0002\u0002\u1b34\u1b35\u0003",
+ "\u0002\u0002\u0002\u1b35\u1b37\u0003\u0002\u0002\u0002\u1b36\u1b31\u0003",
+ "\u0002\u0002\u0002\u1b37\u1b3a\u0003\u0002\u0002\u0002\u1b38\u1b36\u0003",
+ "\u0002\u0002\u0002\u1b38\u1b39\u0003\u0002\u0002\u0002\u1b39\u1b3b\u0003",
+ "\u0002\u0002\u0002\u1b3a\u1b38\u0003\u0002\u0002\u0002\u1b3b\u1b3c\u0007",
+ "\u07ae\u0002\u0002\u1b3c\u1b41\u0005\u02c8\u0165\u0002\u1b3d\u1b3e\u0007",
+ "\u08b7\u0002\u0002\u1b3e\u1b40\u0005\u02c8\u0165\u0002\u1b3f\u1b3d\u0003",
+ "\u0002\u0002\u0002\u1b40\u1b43\u0003\u0002\u0002\u0002\u1b41\u1b3f\u0003",
+ "\u0002\u0002\u0002\u1b41\u1b42\u0003\u0002\u0002\u0002\u1b42\u1b45\u0003",
+ "\u0002\u0002\u0002\u1b43\u1b41\u0003\u0002\u0002\u0002\u1b44\u1b28\u0003",
+ "\u0002\u0002\u0002\u1b44\u1b2c\u0003\u0002\u0002\u0002\u1b45\u02bb\u0003",
+ "\u0002\u0002\u0002\u1b46\u1b48\u0007\u08b7\u0002\u0002\u1b47\u1b46\u0003",
+ "\u0002\u0002\u0002\u1b47\u1b48\u0003\u0002\u0002\u0002\u1b48\u1b4b\u0003",
+ "\u0002\u0002\u0002\u1b49\u1b4a\u0007\u0789\u0002\u0002\u1b4a\u1b4c\u0007",
+ "\u08ab\u0002\u0002\u1b4b\u1b49\u0003\u0002\u0002\u0002\u1b4b\u1b4c\u0003",
+ "\u0002\u0002\u0002\u1b4c\u1b4d\u0003\u0002\u0002\u0002\u1b4d\u1b4e\u0007",
+ "\u023f\u0002\u0002\u1b4e\u1b4f\u0007\u08ab\u0002\u0002\u1b4f\u02bd\u0003",
+ "\u0002\u0002\u0002\u1b50\u1b52\u0007\u019d\u0002\u0002\u1b51\u1b53\u0007",
+ "\u0620\u0002\u0002\u1b52\u1b51\u0003\u0002\u0002\u0002\u1b52\u1b53\u0003",
+ "\u0002\u0002\u0002\u1b53\u1b54\u0003\u0002\u0002\u0002\u1b54\u1b66\u0007",
+ "\u030b\u0002\u0002\u1b55\u1b5a\u0005\u02c8\u0165\u0002\u1b56\u1b57\u0007",
+ "\u08b7\u0002\u0002\u1b57\u1b59\u0005\u02c8\u0165\u0002\u1b58\u1b56\u0003",
+ "\u0002\u0002\u0002\u1b59\u1b5c\u0003\u0002\u0002\u0002\u1b5a\u1b58\u0003",
+ "\u0002\u0002\u0002\u1b5a\u1b5b\u0003\u0002\u0002\u0002\u1b5b\u1b67\u0003",
+ "\u0002\u0002\u0002\u1b5c\u1b5a\u0003\u0002\u0002\u0002\u1b5d\u1b5e\u0007",
+ "\u033c\u0002\u0002\u1b5e\u1b63\u0005\u02ee\u0178\u0002\u1b5f\u1b60\u0007",
+ "\u08b7\u0002\u0002\u1b60\u1b62\u0005\u02ee\u0178\u0002\u1b61\u1b5f\u0003",
+ "\u0002\u0002\u0002\u1b62\u1b65\u0003\u0002\u0002\u0002\u1b63\u1b61\u0003",
+ "\u0002\u0002\u0002\u1b63\u1b64\u0003\u0002\u0002\u0002\u1b64\u1b67\u0003",
+ "\u0002\u0002\u0002\u1b65\u1b63\u0003\u0002\u0002\u0002\u1b66\u1b55\u0003",
+ "\u0002\u0002\u0002\u1b66\u1b5d\u0003\u0002\u0002\u0002\u1b67\u02bf\u0003",
+ "\u0002\u0002\u0002\u1b68\u1b69\u0007\u065a\u0002\u0002\u1b69\u1b6a\u0007",
+ "%\u0002\u0002\u1b6a\u1b6b\u0007\u030c\u0002\u0002\u1b6b\u1b6c\u0007",
+ "\u07ae\u0002\u0002\u1b6c\u1b6d\u0007\u0086\u0002\u0002\u1b6d\u1b6e\u0007",
+ "\u08ab\u0002\u0002\u1b6e\u02c1\u0003\u0002\u0002\u0002\u1b6f\u1b70\u0005",
+ "\u02c4\u0163\u0002\u1b70\u1b71\u0007\u0656\u0002\u0002\u1b71\u1b75\u0007",
+ "\u0311\u0002\u0002\u1b72\u1b76\u0007\u013f\u0002\u0002\u1b73\u1b76\u0005",
+ "\u0278\u013d\u0002\u1b74\u1b76\u0005\u02c6\u0164\u0002\u1b75\u1b72\u0003",
+ "\u0002\u0002\u0002\u1b75\u1b73\u0003\u0002\u0002\u0002\u1b75\u1b74\u0003",
+ "\u0002\u0002\u0002\u1b76\u02c3\u0003\u0002\u0002\u0002\u1b77\u1b78\t",
+ "\r\u0002\u0002\u1b78\u02c5\u0003\u0002\u0002\u0002\u1b79\u1b7a\u0007",
+ "\u013f\u0002\u0002\u1b7a\u1b7b\u0007\u0224\u0002\u0002\u1b7b\u1b7c\u0007",
+ "\u0523\u0002\u0002\u1b7c\u1b7d\u0007\u0582\u0002\u0002\u1b7d\u02c7\u0003",
+ "\u0002\u0002\u0002\u1b7e\u1b7f\u0007\u023f\u0002\u0002\u1b7f\u1b8d\u0007",
+ "\u08ab\u0002\u0002\u1b80\u1b81\u0007\u08b1\u0002\u0002\u1b81\u1b86\u0005",
+ "\u02ee\u0178\u0002\u1b82\u1b83\u0007\u08b7\u0002\u0002\u1b83\u1b85\u0005",
+ "\u02ee\u0178\u0002\u1b84\u1b82\u0003\u0002\u0002\u0002\u1b85\u1b88\u0003",
+ "\u0002\u0002\u0002\u1b86\u1b84\u0003\u0002\u0002\u0002\u1b86\u1b87\u0003",
+ "\u0002\u0002\u0002\u1b87\u1b89\u0003\u0002\u0002\u0002\u1b88\u1b86\u0003",
+ "\u0002\u0002\u0002\u1b89\u1b8a\u0007\u08b2\u0002\u0002\u1b8a\u1b8d\u0003",
+ "\u0002\u0002\u0002\u1b8b\u1b8d\u0005\u02ee\u0178\u0002\u1b8c\u1b7e\u0003",
+ "\u0002\u0002\u0002\u1b8c\u1b80\u0003\u0002\u0002\u0002\u1b8c\u1b8b\u0003",
+ "\u0002\u0002\u0002\u1b8d\u02c9\u0003\u0002\u0002\u0002\u1b8e\u1b90\u0007",
+ "\u0122\u0002\u0002\u1b8f\u1b91\tI\u0002\u0002\u1b90\u1b8f\u0003\u0002",
+ "\u0002\u0002\u1b90\u1b91\u0003\u0002\u0002\u0002\u1b91\u1b92\u0003\u0002",
+ "\u0002\u0002\u1b92\u1b93\u0007\u0620\u0002\u0002\u1b93\u1b94\u0007\u010d",
+ "\u0002\u0002\u1b94\u1b95\u0007?\u0002\u0002\u1b95\u1b97\u0005\u02ee",
+ "\u0178\u0002\u1b96\u1b98\u0007\u059a\u0002\u0002\u1b97\u1b96\u0003\u0002",
+ "\u0002\u0002\u1b97\u1b98\u0003\u0002\u0002\u0002\u1b98\u1ba4\u0003\u0002",
+ "\u0002\u0002\u1b99\u1b9a\u0007_\u0002\u0002\u1b9a\u1b9b\u0007\u010d",
+ "\u0002\u0002\u1b9b\u1ba1\u0007\u07ae\u0002\u0002\u1b9c\u1b9e\u0005\u02ee",
+ "\u0178\u0002\u1b9d\u1b9f\u0007\u059a\u0002\u0002\u1b9e\u1b9d\u0003\u0002",
+ "\u0002\u0002\u1b9e\u1b9f\u0003\u0002\u0002\u0002\u1b9f\u1ba2\u0003\u0002",
+ "\u0002\u0002\u1ba0\u1ba2\u0005\u02cc\u0167\u0002\u1ba1\u1b9c\u0003\u0002",
+ "\u0002\u0002\u1ba1\u1ba0\u0003\u0002\u0002\u0002\u1ba2\u1ba4\u0003\u0002",
+ "\u0002\u0002\u1ba3\u1b8e\u0003\u0002\u0002\u0002\u1ba3\u1b99\u0003\u0002",
+ "\u0002\u0002\u1ba4\u02cb\u0003\u0002\u0002\u0002\u1ba5\u1bab\u0007\u07b0",
+ "\u0002\u0002\u1ba6\u1ba7\u0007?\u0002\u0002\u1ba7\u1ba9\u0005\u02ee",
+ "\u0178\u0002\u1ba8\u1baa\u0007\u059a\u0002\u0002\u1ba9\u1ba8\u0003\u0002",
+ "\u0002\u0002\u1ba9\u1baa\u0003\u0002\u0002\u0002\u1baa\u1bac\u0003\u0002",
+ "\u0002\u0002\u1bab\u1ba6\u0003\u0002\u0002\u0002\u1bab\u1bac\u0003\u0002",
+ "\u0002\u0002\u1bac\u1bae\u0003\u0002\u0002\u0002\u1bad\u1baf\tF\u0002",
+ "\u0002\u1bae\u1bad\u0003\u0002\u0002\u0002\u1bae\u1baf\u0003\u0002\u0002",
+ "\u0002\u1baf\u02cd\u0003\u0002\u0002\u0002\u1bb0\u1bb8\u0005\u02d0\u0169",
+ "\u0002\u1bb1\u1bb8\u0005\u02d2\u016a\u0002\u1bb2\u1bb8\u0005\u02d4\u016b",
+ "\u0002\u1bb3\u1bb8\u0005\u02d6\u016c\u0002\u1bb4\u1bb8\u0005\u02d8\u016d",
+ "\u0002\u1bb5\u1bb8\u0005\u02da\u016e\u0002\u1bb6\u1bb8\u0005\u02dc\u016f",
+ "\u0002\u1bb7\u1bb0\u0003\u0002\u0002\u0002\u1bb7\u1bb1\u0003\u0002\u0002",
+ "\u0002\u1bb7\u1bb2\u0003\u0002\u0002\u0002\u1bb7\u1bb3\u0003\u0002\u0002",
+ "\u0002\u1bb7\u1bb4\u0003\u0002\u0002\u0002\u1bb7\u1bb5\u0003\u0002\u0002",
+ "\u0002\u1bb7\u1bb6\u0003\u0002\u0002\u0002\u1bb8\u1bba\u0003\u0002\u0002",
+ "\u0002\u1bb9\u1bbb\u0005\u01dc\u00ef\u0002\u1bba\u1bb9\u0003\u0002\u0002",
+ "\u0002\u1bba\u1bbb\u0003\u0002\u0002\u0002\u1bbb\u02cf\u0003\u0002\u0002",
+ "\u0002\u1bbc\u1bbe\u0007\f\u0002\u0002\u1bbd\u1bbf\tI\u0002\u0002\u1bbe",
+ "\u1bbd\u0003\u0002\u0002\u0002\u1bbe\u1bbf\u0003\u0002\u0002\u0002\u1bbf",
+ "\u1bc0\u0003\u0002\u0002\u0002\u1bc0\u1bc1\u0007\u0620\u0002\u0002\u1bc1",
+ "\u1bc4\u0007\u013e\u0002\u0002\u1bc2\u1bc3\u0007\u020f\u0002\u0002\u1bc3",
+ "\u1bc5\u00078\u0002\u0002\u1bc4\u1bc2\u0003\u0002\u0002\u0002\u1bc4",
+ "\u1bc5\u0003\u0002\u0002\u0002\u1bc5\u02d1\u0003\u0002\u0002\u0002\u1bc6",
+ "\u1bc7\u0007\u05e8\u0002\u0002\u1bc7\u1bc8\u0007\u0620\u0002\u0002\u1bc8",
+ "\u1bc9\u0007\u013e\u0002\u0002\u1bc9\u1bca\u0007\u07ae\u0002\u0002\u1bca",
+ "\u1bcb\u0007\u0330\u0002\u0002\u1bcb\u1bcc\tJ\u0002\u0002\u1bcc\u02d3",
+ "\u0003\u0002\u0002\u0002\u1bcd\u1bd0\u0007\u056a\u0002\u0002\u1bce\u1bcf",
+ "\u0007\u0496\u0002\u0002\u1bcf\u1bd1\u0007\u0581\u0002\u0002\u1bd0\u1bce",
+ "\u0003\u0002\u0002\u0002\u1bd0\u1bd1\u0003\u0002\u0002\u0002\u1bd1\u1bd2",
+ "\u0003\u0002\u0002\u0002\u1bd2\u1bd3\tI\u0002\u0002\u1bd3\u1bd4\u0007",
+ "\u030b\u0002\u0002\u1bd4\u02d5\u0003\u0002\u0002\u0002\u1bd5\u1bd6\t",
+ "K\u0002\u0002\u1bd6\u1bd7\u0007\u07ae\u0002\u0002\u1bd7\u1bf4\u0007",
+ "\u0659\u0002\u0002\u1bd8\u1bed\u0007\u07ae\u0002\u0002\u1bd9\u1bdb\t",
+ "I\u0002\u0002\u1bda\u1bd9\u0003\u0002\u0002\u0002\u1bda\u1bdb\u0003",
+ "\u0002\u0002\u0002\u1bdb\u1bdc\u0003\u0002\u0002\u0002\u1bdc\u1be2\u0007",
+ "\u051a\u0002\u0002\u1bdd\u1bdf\u0007\u04e2\u0002\u0002\u1bde\u1bdd\u0003",
+ "\u0002\u0002\u0002\u1bde\u1bdf\u0003\u0002\u0002\u0002\u1bdf\u1be0\u0003",
+ "\u0002\u0002\u0002\u1be0\u1be2\u0007\u0620\u0002\u0002\u1be1\u1bda\u0003",
+ "\u0002\u0002\u0002\u1be1\u1bde\u0003\u0002\u0002\u0002\u1be2\u1be9\u0003",
+ "\u0002\u0002\u0002\u1be3\u1be5\t6\u0002\u0002\u1be4\u1be3\u0003\u0002",
+ "\u0002\u0002\u1be4\u1be5\u0003\u0002\u0002\u0002\u1be5\u1be6\u0003\u0002",
+ "\u0002\u0002\u1be6\u1be7\u0007\u05e4\u0002\u0002\u1be7\u1be8\u0007\u05f4",
+ "\u0002\u0002\u1be8\u1bea\tL\u0002\u0002\u1be9\u1be4\u0003\u0002\u0002",
+ "\u0002\u1be9\u1bea\u0003\u0002\u0002\u0002\u1bea\u1bee\u0003\u0002\u0002",
+ "\u0002\u1beb\u1bec\u0007\u030e\u0002\u0002\u1bec\u1bee\u0007\u0620\u0002",
+ "\u0002\u1bed\u1be1\u0003\u0002\u0002\u0002\u1bed\u1beb\u0003\u0002\u0002",
+ "\u0002\u1bee\u1bf2\u0003\u0002\u0002\u0002\u1bef\u1bf0\u0007\u030e\u0002",
+ "\u0002\u1bf0\u1bf2\u0007\u0620\u0002\u0002\u1bf1\u1bd8\u0003\u0002\u0002",
+ "\u0002\u1bf1\u1bef\u0003\u0002\u0002\u0002\u1bf2\u1bf5\u0003\u0002\u0002",
+ "\u0002\u1bf3\u1bf5\u0007\u00a0\u0002\u0002\u1bf4\u1bf1\u0003\u0002\u0002",
+ "\u0002\u1bf4\u1bf3\u0003\u0002\u0002\u0002\u1bf4\u1bf5\u0003\u0002\u0002",
+ "\u0002\u1bf5\u02d7\u0003\u0002\u0002\u0002\u1bf6\u1bf7\u0007\u0623\u0002",
+ "\u0002\u1bf7\u1bf8\u0007\u030e\u0002\u0002\u1bf8\u1bf9\u0007\u0620\u0002",
+ "\u0002\u1bf9\u1bfb\u00078\u0002\u0002\u1bfa\u1bfc\u0007\u0267\u0002",
+ "\u0002\u1bfb\u1bfa\u0003\u0002\u0002\u0002\u1bfb\u1bfc\u0003\u0002\u0002",
+ "\u0002\u1bfc\u1bfe\u0003\u0002\u0002\u0002\u1bfd\u1bff\u0007\u03c8\u0002",
+ "\u0002\u1bfe\u1bfd\u0003\u0002\u0002\u0002\u1bfe\u1bff\u0003\u0002\u0002",
+ "\u0002\u1bff\u1c0b\u0003\u0002\u0002\u0002\u1c00\u1c01\u0007\u0389\u0002",
+ "\u0002\u1c01\u1c02\u0007\u051a\u0002\u0002\u1c02\u1c0c\u0005\u05d6\u02ec",
+ "\u0002\u1c03\u1c05\u0007\u0290\u0002\u0002\u1c04\u1c06\u0007\u08ab\u0002",
+ "\u0002\u1c05\u1c04\u0003\u0002\u0002\u0002\u1c05\u1c06\u0003\u0002\u0002",
+ "\u0002\u1c06\u1c0c\u0003\u0002\u0002\u0002\u1c07\u1c08\u0007\u0603\u0002",
+ "\u0002\u1c08\u1c09\u0007\u01f9\u0002\u0002\u1c09\u1c0c\u0007\u07b4\u0002",
+ "\u0002\u1c0a\u1c0c\u0007\u020f\u0002\u0002\u1c0b\u1c00\u0003\u0002\u0002",
+ "\u0002\u1c0b\u1c03\u0003\u0002\u0002\u0002\u1c0b\u1c07\u0003\u0002\u0002",
+ "\u0002\u1c0b\u1c0a\u0003\u0002\u0002\u0002\u1c0b\u1c0c\u0003\u0002\u0002",
+ "\u0002\u1c0c\u02d9\u0003\u0002\u0002\u0002\u1c0d\u1c0e\tM\u0002\u0002",
+ "\u1c0e\u1c0f\u0007\u030e\u0002\u0002\u1c0f\u1c10\u0007\u0620\u0002\u0002",
+ "\u1c10\u1c11\u00078\u0002\u0002\u1c11\u02db\u0003\u0002\u0002\u0002",
+ "\u1c12\u1c13\u0007\u010f\u0002\u0002\u1c13\u1c14\u0007\u07ae\u0002\u0002",
+ "\u1c14\u1c15\tN\u0002\u0002\u1c15\u1c16\u0007\u0620\u0002\u0002\u1c16",
+ "\u02dd\u0003\u0002\u0002\u0002\u1c17\u1c18\u0007\u0161\u0002\u0002\u1c18",
+ "\u1c19\u0007\u01aa\u0002\u0002\u1c19\u1c1a\u0007\u08c5\u0002\u0002\u1c1a",
+ "\u1c46\u0005\u02ea\u0176\u0002\u1c1b\u1c1c\u0007\u05e8\u0002\u0002\u1c1c",
+ "\u1c1d\u0007\u0161\u0002\u0002\u1c1d\u1c1e\t-\u0002\u0002\u1c1e\u1c46",
+ "\u0007\u0777\u0002\u0002\u1c1f\u1c20\u0007\u0161\u0002\u0002\u1c20\u1c21",
+ "\u0007\u0777\u0002\u0002\u1c21\u1c46\u0005\u0346\u01a4\u0002\u1c22\u1c23",
+ "\u0007\u0161\u0002\u0002\u1c23\u1c24\u0007\u0782\u0002\u0002\u1c24\u1c27",
+ "\u0007\u0777\u0002\u0002\u1c25\u1c28\u0005\u0346\u01a4\u0002\u1c26\u1c28",
+ "\u0005\u01b4\u00db\u0002\u1c27\u1c25\u0003\u0002\u0002\u0002\u1c27\u1c26",
+ "\u0003\u0002\u0002\u0002\u1c28\u1c46\u0003\u0002\u0002\u0002\u1c29\u1c2a",
+ "\u0007\u057e\u0002\u0002\u1c2a\u1c2b\u0007\u023a\u0002\u0002\u1c2b\u1c2c",
+ "\u0007\u07ae\u0002\u0002\u1c2c\u1c2f\u0005\u02e8\u0175\u0002\u1c2d\u1c2e",
+ "\u0007\u08aa\u0002\u0002\u1c2e\u1c30\u0005\u02e6\u0174\u0002\u1c2f\u1c2d",
+ "\u0003\u0002\u0002\u0002\u1c30\u1c31\u0003\u0002\u0002\u0002\u1c31\u1c2f",
+ "\u0003\u0002\u0002\u0002\u1c31\u1c32\u0003\u0002\u0002\u0002\u1c32\u1c46",
+ "\u0003\u0002\u0002\u0002\u1c33\u1c34\u0007\u01b9\u0002\u0002\u1c34\u1c35",
+ "\u0007\u0083\u0002\u0002\u1c35\u1c36\u0007\u00ae\u0002\u0002\u1c36\u1c3d",
+ "\u0007\u07b2\u0002\u0002\u1c37\u1c38\u0007\u0811\u0002\u0002\u1c38\u1c39",
+ "\u0007\u0209\u0002\u0002\u1c39\u1c3b\u0005\u02ee\u0178\u0002\u1c3a\u1c3c",
+ "\u0007\u059a\u0002\u0002\u1c3b\u1c3a\u0003\u0002\u0002\u0002\u1c3b\u1c3c",
+ "\u0003\u0002\u0002\u0002\u1c3c\u1c3e\u0003\u0002\u0002\u0002\u1c3d\u1c37",
+ "\u0003\u0002\u0002\u0002\u1c3d\u1c3e\u0003\u0002\u0002\u0002\u1c3e\u1c46",
+ "\u0003\u0002\u0002\u0002\u1c3f\u1c40\u0007\u0181\u0002\u0002\u1c40\u1c41",
+ "\u0007\u0083\u0002\u0002\u1c41\u1c42\u0007\u00ae\u0002\u0002\u1c42\u1c46",
+ "\u0007\u07b2\u0002\u0002\u1c43\u1c46\u0005\u01b8\u00dd\u0002\u1c44\u1c46",
+ "\u0005\u02e0\u0171\u0002\u1c45\u1c17\u0003\u0002\u0002\u0002\u1c45\u1c1b",
+ "\u0003\u0002\u0002\u0002\u1c45\u1c1f\u0003\u0002\u0002\u0002\u1c45\u1c22",
+ "\u0003\u0002\u0002\u0002\u1c45\u1c29\u0003\u0002\u0002\u0002\u1c45\u1c33",
+ "\u0003\u0002\u0002\u0002\u1c45\u1c3f\u0003\u0002\u0002\u0002\u1c45\u1c43",
+ "\u0003\u0002\u0002\u0002\u1c45\u1c44\u0003\u0002\u0002\u0002\u1c46\u02df",
+ "\u0003\u0002\u0002\u0002\u1c47\u1c48\u0007\u05e8\u0002\u0002\u1c48\u1c49",
+ "\u0007\u0794\u0002\u0002\u1c49\u1c4a\u0007\u08c5\u0002\u0002\u1c4a\u1c4b",
+ "\u0007\u08ad\u0002\u0002\u1c4b\u02e1\u0003\u0002\u0002\u0002\u1c4c\u1c4d",
+ "\u0005\u028a\u0146\u0002\u1c4d\u1c4e\u0007\u02a2\u0002\u0002\u1c4e\u1c4f",
+ "\u0007\u08ad\u0002\u0002\u1c4f\u02e3\u0003\u0002\u0002\u0002\u1c50\u1c51",
+ "\u0007\u0246\u0002\u0002\u1c51\u1c52\tO\u0002\u0002\u1c52\u02e5\u0003",
+ "\u0002\u0002\u0002\u1c53\u1c54\u0005\u05d6\u02ec\u0002\u1c54\u02e7\u0003",
+ "\u0002\u0002\u0002\u1c55\u1c56\u0005\u05d6\u02ec\u0002\u1c56\u02e9\u0003",
+ "\u0002\u0002\u0002\u1c57\u1c58\u0005\u05d6\u02ec\u0002\u1c58\u02eb\u0003",
+ "\u0002\u0002\u0002\u1c59\u1c5a\u0007\u08ab\u0002\u0002\u1c5a\u02ed\u0003",
+ "\u0002\u0002\u0002\u1c5b\u1c5c\u0007\u08ad\u0002\u0002\u1c5c\u02ef\u0003",
+ "\u0002\u0002\u0002\u1c5d\u1c5e\u0007)\u0002\u0002\u1c5e\u1c5f\u0007",
+ "\u077a\u0002\u0002\u1c5f\u1c65\u0005\u0594\u02cb\u0002\u1c60\u1c66\u0003",
+ "\u0002\u0002\u0002\u1c61\u1c66\u0005\u02f2\u017a\u0002\u1c62\u1c66\u0005",
+ "\u0368\u01b5\u0002\u1c63\u1c66\u0005\u0312\u018a\u0002\u1c64\u1c66\u0005",
+ "\u0308\u0185\u0002\u1c65\u1c60\u0003\u0002\u0002\u0002\u1c65\u1c61\u0003",
+ "\u0002\u0002\u0002\u1c65\u1c62\u0003\u0002\u0002\u0002\u1c65\u1c63\u0003",
+ "\u0002\u0002\u0002\u1c65\u1c64\u0003\u0002\u0002\u0002\u1c66\u1c73\u0003",
+ "\u0002\u0002\u0002\u1c67\u1c70\u0005\u02fe\u0180\u0002\u1c68\u1c6d\u0005",
+ "\u028a\u0146\u0002\u1c69\u1c6a\u0007\u077a\u0002\u0002\u1c6a\u1c6e\u0007",
+ "\u030a\u0002\u0002\u1c6b\u1c6c\u0007%\u0002\u0002\u1c6c\u1c6e\u0007",
+ "\u07bb\u0002\u0002\u1c6d\u1c69\u0003\u0002\u0002\u0002\u1c6d\u1c6b\u0003",
+ "\u0002\u0002\u0002\u1c6e\u1c70\u0003\u0002\u0002\u0002\u1c6f\u1c67\u0003",
+ "\u0002\u0002\u0002\u1c6f\u1c68\u0003\u0002\u0002\u0002\u1c70\u1c71\u0003",
+ "\u0002\u0002\u0002\u1c71\u1c6f\u0003\u0002\u0002\u0002\u1c71\u1c72\u0003",
+ "\u0002\u0002\u0002\u1c72\u1c74\u0003\u0002\u0002\u0002\u1c73\u1c6f\u0003",
+ "\u0002\u0002\u0002\u1c73\u1c74\u0003\u0002\u0002\u0002\u1c74\u1c75\u0003",
+ "\u0002\u0002\u0002\u1c75\u1c76\u0007\u08c3\u0002\u0002\u1c76\u02f1\u0003",
+ "\u0002\u0002\u0002\u1c77\u1c83\u0005\u02f4\u017b\u0002\u1c78\u1c79\u0007",
+ "\u057e\u0002\u0002\u1c79\u1c7a\u0007\u07ae\u0002\u0002\u1c7a\u1c83\u0005",
+ "\u0594\u02cb\u0002\u1c7b\u1c83\u0005\u027e\u0140\u0002\u1c7c\u1c7d\u0007",
+ "\u054b\u0002\u0002\u1c7d\u1c83\u0007\u0469\u0002\u0002\u1c7e\u1c7f\u0007",
+ "\u054b\u0002\u0002\u1c7f\u1c83\u0007\u084f\u0002\u0002\u1c80\u1c81\u0007",
+ "\u0576\u0002\u0002\u1c81\u1c83\u0007\u08ad\u0002\u0002\u1c82\u1c77\u0003",
+ "\u0002\u0002\u0002\u1c82\u1c78\u0003\u0002\u0002\u0002\u1c82\u1c7b\u0003",
+ "\u0002\u0002\u0002\u1c82\u1c7c\u0003\u0002\u0002\u0002\u1c82\u1c7e\u0003",
+ "\u0002\u0002\u0002\u1c82\u1c80\u0003\u0002\u0002\u0002\u1c83\u02f3\u0003",
+ "\u0002\u0002\u0002\u1c84\u1c96\u0005\u0264\u0133\u0002\u1c85\u1c96\u0005",
+ "\u01c2\u00e2\u0002\u1c86\u1c96\u0005\u0262\u0132\u0002\u1c87\u1c96\u0005",
+ "\u0274\u013b\u0002\u1c88\u1c96\u0005\u027a\u013e\u0002\u1c89\u1c96\u0005",
+ "\u027c\u013f\u0002\u1c8a\u1c96\t5\u0002\u0002\u1c8b\u1c8c\u0007\u0592",
+ "\u0002\u0002\u1c8c\u1c8d\u0007\u08b1\u0002\u0002\u1c8d\u1c8e\u0007\u035e",
+ "\u0002\u0002\u1c8e\u1c8f\t;\u0002\u0002\u1c8f\u1c96\u0007\u08b2\u0002",
+ "\u0002\u1c90\u1c96\u0005\u0282\u0142\u0002\u1c91\u1c96\u0005\u0280\u0141",
+ "\u0002\u1c92\u1c96\u0005\u01dc\u00ef\u0002\u1c93\u1c96\u0005\u026e\u0138",
+ "\u0002\u1c94\u1c96\u0005\u0270\u0139\u0002\u1c95\u1c84\u0003\u0002\u0002",
+ "\u0002\u1c95\u1c85\u0003\u0002\u0002\u0002\u1c95\u1c86\u0003\u0002\u0002",
+ "\u0002\u1c95\u1c87\u0003\u0002\u0002\u0002\u1c95\u1c88\u0003\u0002\u0002",
+ "\u0002\u1c95\u1c89\u0003\u0002\u0002\u0002\u1c95\u1c8a\u0003\u0002\u0002",
+ "\u0002\u1c95\u1c8b\u0003\u0002\u0002\u0002\u1c95\u1c90\u0003\u0002\u0002",
+ "\u0002\u1c95\u1c91\u0003\u0002\u0002\u0002\u1c95\u1c92\u0003\u0002\u0002",
+ "\u0002\u1c95\u1c93\u0003\u0002\u0002\u0002\u1c95\u1c94\u0003\u0002\u0002",
+ "\u0002\u1c96\u1c97\u0003\u0002\u0002\u0002\u1c97\u1c95\u0003\u0002\u0002",
+ "\u0002\u1c97\u1c98\u0003\u0002\u0002\u0002\u1c98\u1c9a\u0003\u0002\u0002",
+ "\u0002\u1c99\u1c9b\u0005\u02f6\u017c\u0002\u1c9a\u1c99\u0003\u0002\u0002",
+ "\u0002\u1c9a\u1c9b\u0003\u0002\u0002\u0002\u1c9b\u02f5\u0003\u0002\u0002",
+ "\u0002\u1c9c\u1ca1\u0005\u030a\u0186\u0002\u1c9d\u1ca1\u0005\u02fa\u017e",
+ "\u0002\u1c9e\u1ca1\u0005\u02f8\u017d\u0002\u1c9f\u1ca1\u0007\u00cf\u0002",
+ "\u0002\u1ca0\u1c9c\u0003\u0002\u0002\u0002\u1ca0\u1c9d\u0003\u0002\u0002",
+ "\u0002\u1ca0\u1c9e\u0003\u0002\u0002\u0002\u1ca0\u1c9f\u0003\u0002\u0002",
+ "\u0002\u1ca1\u02f7\u0003\u0002\u0002\u0002\u1ca2\u1ca3\u0007\u0324\u0002",
+ "\u0002\u1ca3\u1ca6\u0007\u077a\u0002\u0002\u1ca4\u1ca7\u0005\u027a\u013e",
+ "\u0002\u1ca5\u1ca7\u0005\u027c\u013f\u0002\u1ca6\u1ca4\u0003\u0002\u0002",
+ "\u0002\u1ca6\u1ca5\u0003\u0002\u0002\u0002\u1ca7\u02f9\u0003\u0002\u0002",
+ "\u0002\u1ca8\u1cb3\u0005\u02fc\u017f\u0002\u1ca9\u1cae\u0007\u04a2\u0002",
+ "\u0002\u1caa\u1caf\u0005\u026a\u0136\u0002\u1cab\u1caf\u0005\u027a\u013e",
+ "\u0002\u1cac\u1caf\u0005\u027e\u0140\u0002\u1cad\u1caf\u0005\u027c\u013f",
+ "\u0002\u1cae\u1caa\u0003\u0002\u0002\u0002\u1cae\u1cab\u0003\u0002\u0002",
+ "\u0002\u1cae\u1cac\u0003\u0002\u0002\u0002\u1cae\u1cad\u0003\u0002\u0002",
+ "\u0002\u1caf\u1cb0\u0003\u0002\u0002\u0002\u1cb0\u1cae\u0003\u0002\u0002",
+ "\u0002\u1cb0\u1cb1\u0003\u0002\u0002\u0002\u1cb1\u1cb3\u0003\u0002\u0002",
+ "\u0002\u1cb2\u1ca8\u0003\u0002\u0002\u0002\u1cb2\u1ca9\u0003\u0002\u0002",
+ "\u0002\u1cb3\u02fb\u0003\u0002\u0002\u0002\u1cb4\u1cb5\u0007\u0014\u0002",
+ "\u0002\u1cb5\u1cb7\u0007\u04a2\u0002\u0002\u1cb6\u1cb8\u0005\u026a\u0136",
+ "\u0002\u1cb7\u1cb6\u0003\u0002\u0002\u0002\u1cb7\u1cb8\u0003\u0002\u0002",
+ "\u0002\u1cb8\u1cc9\u0003\u0002\u0002\u0002\u1cb9\u1cba\u0007\u08b1\u0002",
+ "\u0002\u1cba\u1cbc\u0007\u04b9\u0002\u0002\u1cbb\u1cbd\u0005\u026a\u0136",
+ "\u0002\u1cbc\u1cbb\u0003\u0002\u0002\u0002\u1cbc\u1cbd\u0003\u0002\u0002",
+ "\u0002\u1cbd\u1cc5\u0003\u0002\u0002\u0002\u1cbe\u1cbf\u0007\u08b7\u0002",
+ "\u0002\u1cbf\u1cc1\u0007\u04b9\u0002\u0002\u1cc0\u1cc2\u0005\u026a\u0136",
+ "\u0002\u1cc1\u1cc0\u0003\u0002\u0002\u0002\u1cc1\u1cc2\u0003\u0002\u0002",
+ "\u0002\u1cc2\u1cc4\u0003\u0002\u0002\u0002\u1cc3\u1cbe\u0003\u0002\u0002",
+ "\u0002\u1cc4\u1cc7\u0003\u0002\u0002\u0002\u1cc5\u1cc3\u0003\u0002\u0002",
+ "\u0002\u1cc5\u1cc6\u0003\u0002\u0002\u0002\u1cc6\u1cc8\u0003\u0002\u0002",
+ "\u0002\u1cc7\u1cc5\u0003\u0002\u0002\u0002\u1cc8\u1cca\u0007\u08b2\u0002",
+ "\u0002\u1cc9\u1cb9\u0003\u0002\u0002\u0002\u1cc9\u1cca\u0003\u0002\u0002",
+ "\u0002\u1cca\u02fd\u0003\u0002\u0002\u0002\u1ccb\u1ccd\t\u0007\u0002",
+ "\u0002\u1ccc\u1cce\t)\u0002\u0002\u1ccd\u1ccc\u0003\u0002\u0002\u0002",
+ "\u1ccd\u1cce\u0003\u0002\u0002\u0002\u1cce\u1cdf\u0003\u0002\u0002\u0002",
+ "\u1ccf\u1cd0\u0007\u07d4\u0002\u0002\u1cd0\u1cd1\u0007\u08b1\u0002\u0002",
+ "\u1cd1\u1cd6\u0005\u0592\u02ca\u0002\u1cd2\u1cd3\u0007\u08b7\u0002\u0002",
+ "\u1cd3\u1cd5\u0005\u0592\u02ca\u0002\u1cd4\u1cd2\u0003\u0002\u0002\u0002",
+ "\u1cd5\u1cd8\u0003\u0002\u0002\u0002\u1cd6\u1cd4\u0003\u0002\u0002\u0002",
+ "\u1cd6\u1cd7\u0003\u0002\u0002\u0002\u1cd7\u1cd9\u0003\u0002\u0002\u0002",
+ "\u1cd8\u1cd6\u0003\u0002\u0002\u0002\u1cd9\u1cda\u0007\u08b2\u0002\u0002",
+ "\u1cda\u1ce0\u0003\u0002\u0002\u0002\u1cdb\u1cdc\u0007\u051a\u0002\u0002",
+ "\u1cdc\u1ce0\u0007\u02d4\u0002\u0002\u1cdd\u1cde\u0007\u0103\u0002\u0002",
+ "\u1cde\u1ce0\u0005\u0576\u02bc\u0002\u1cdf\u1ccf\u0003\u0002\u0002\u0002",
+ "\u1cdf\u1cdb\u0003\u0002\u0002\u0002\u1cdf\u1cdd\u0003\u0002\u0002\u0002",
+ "\u1ce0\u1ce2\u0003\u0002\u0002\u0002\u1ce1\u1ce3\u0005\u0300\u0181\u0002",
+ "\u1ce2\u1ce1\u0003\u0002\u0002\u0002\u1ce2\u1ce3\u0003\u0002\u0002\u0002",
+ "\u1ce3\u1ce5\u0003\u0002\u0002\u0002\u1ce4\u1ce6\u0005\u0306\u0184\u0002",
+ "\u1ce5\u1ce4\u0003\u0002\u0002\u0002\u1ce5\u1ce6\u0003\u0002\u0002\u0002",
+ "\u1ce6\u1ce8\u0003\u0002\u0002\u0002\u1ce7\u1ce9\u0007\u00a4\u0002\u0002",
+ "\u1ce8\u1ce7\u0003\u0002\u0002\u0002\u1ce8\u1ce9\u0003\u0002\u0002\u0002",
+ "\u1ce9\u1cec\u0003\u0002\u0002\u0002\u1cea\u1ceb\tP\u0002\u0002\u1ceb",
+ "\u1ced\u0007\u0279\u0002\u0002\u1cec\u1cea\u0003\u0002\u0002\u0002\u1cec",
+ "\u1ced\u0003\u0002\u0002\u0002\u1ced\u02ff\u0003\u0002\u0002\u0002\u1cee",
+ "\u1cef\u0007\u0811\u0002\u0002\u1cef\u1cf6\u0007\u0279\u0002\u0002\u1cf0",
+ "\u1cf7\u0005\u0588\u02c5\u0002\u1cf1\u1cf2\u0007\u08b1\u0002\u0002\u1cf2",
+ "\u1cf3\u0005\u00b6\\\u0002\u1cf3\u1cf4\u0007\u08b2\u0002\u0002\u1cf4",
+ "\u1cf7\u0003\u0002\u0002\u0002\u1cf5\u1cf7\u0005\u0302\u0182\u0002\u1cf6",
+ "\u1cf0\u0003\u0002\u0002\u0002\u1cf6\u1cf1\u0003\u0002\u0002\u0002\u1cf6",
+ "\u1cf5\u0003\u0002\u0002\u0002\u1cf6\u1cf7\u0003\u0002\u0002\u0002\u1cf7",
+ "\u0301\u0003\u0002\u0002\u0002\u1cf8\u1d05\u0005\u0264\u0133\u0002\u1cf9",
+ "\u1d05\u0005\u01c2\u00e2\u0002\u1cfa\u1cfd\u0007\u0777\u0002\u0002\u1cfb",
+ "\u1cfe\u0005\u0346\u01a4\u0002\u1cfc\u1cfe\u0007\u0161\u0002\u0002\u1cfd",
+ "\u1cfb\u0003\u0002\u0002\u0002\u1cfd\u1cfc\u0003\u0002\u0002\u0002\u1cfe",
+ "\u1d05\u0003\u0002\u0002\u0002\u1cff\u1d05\u0005\u030e\u0188\u0002\u1d00",
+ "\u1d05\u0005\u0304\u0183\u0002\u1d01\u1d05\u0007\u059b\u0002\u0002\u1d02",
+ "\u1d05\u0005\u00eex\u0002\u1d03\u1d05\u0005\u01dc\u00ef\u0002\u1d04",
+ "\u1cf8\u0003\u0002\u0002\u0002\u1d04\u1cf9\u0003\u0002\u0002\u0002\u1d04",
+ "\u1cfa\u0003\u0002\u0002\u0002\u1d04\u1cff\u0003\u0002\u0002\u0002\u1d04",
+ "\u1d00\u0003\u0002\u0002\u0002\u1d04\u1d01\u0003\u0002\u0002\u0002\u1d04",
+ "\u1d02\u0003\u0002\u0002\u0002\u1d04\u1d03\u0003\u0002\u0002\u0002\u1d05",
+ "\u1d06\u0003\u0002\u0002\u0002\u1d06\u1d04\u0003\u0002\u0002\u0002\u1d06",
+ "\u1d07\u0003\u0002\u0002\u0002\u1d07\u0303\u0003\u0002\u0002\u0002\u1d08",
+ "\u1d09\tQ\u0002\u0002\u1d09\u0305\u0003\u0002\u0002\u0002\u1d0a\u1d0b",
+ "\u0007\u01d8\u0002\u0002\u1d0b\u1d0c\u0007\u02b5\u0002\u0002\u1d0c\u1d0d",
+ "\u0005\u0594\u02cb\u0002\u1d0d\u0307\u0003\u0002\u0002\u0002\u1d0e\u1d10",
+ "\u0007\u036c\u0002\u0002\u1d0f\u1d11\u0007\u0467\u0002\u0002\u1d10\u1d0f",
+ "\u0003\u0002\u0002\u0002\u1d10\u1d11\u0003\u0002\u0002\u0002\u1d11\u1d13",
+ "\u0003\u0002\u0002\u0002\u1d12\u1d14\u0005\u026a\u0136\u0002\u1d13\u1d12",
+ "\u0003\u0002\u0002\u0002\u1d13\u1d14\u0003\u0002\u0002\u0002\u1d14\u1d16",
+ "\u0003\u0002\u0002\u0002\u1d15\u1d17\u0005\u0262\u0132\u0002\u1d16\u1d15",
+ "\u0003\u0002\u0002\u0002\u1d16\u1d17\u0003\u0002\u0002\u0002\u1d17\u1d19",
+ "\u0003\u0002\u0002\u0002\u1d18\u1d1a\u0005\u030a\u0186\u0002\u1d19\u1d18",
+ "\u0003\u0002\u0002\u0002\u1d19\u1d1a\u0003\u0002\u0002\u0002\u1d1a\u1d21",
+ "\u0003\u0002\u0002\u0002\u1d1b\u1d1e\u0005\u0336\u019c\u0002\u1d1c\u1d1e",
+ "\u0005\u032c\u0197\u0002\u1d1d\u1d1b\u0003\u0002\u0002\u0002\u1d1d\u1d1c",
+ "\u0003\u0002\u0002\u0002\u1d1e\u1d1f\u0003\u0002\u0002\u0002\u1d1f\u1d1d",
+ "\u0003\u0002\u0002\u0002\u1d1f\u1d20\u0003\u0002\u0002\u0002\u1d20\u1d22",
+ "\u0003\u0002\u0002\u0002\u1d21\u1d1d\u0003\u0002\u0002\u0002\u1d21\u1d22",
+ "\u0003\u0002\u0002\u0002\u1d22\u1d24\u0003\u0002\u0002\u0002\u1d23\u1d25",
+ "\u0005\u01dc\u00ef\u0002\u1d24\u1d23\u0003\u0002\u0002\u0002\u1d24\u1d25",
+ "\u0003\u0002\u0002\u0002\u1d25\u0309\u0003\u0002\u0002\u0002\u1d26\u1d2b",
+ "\u0005\u030c\u0187\u0002\u1d27\u1d28\u0007\u04cf\u0002\u0002\u1d28\u1d2b",
+ "\u0007\u08ab\u0002\u0002\u1d29\u1d2b\u0005\u030e\u0188\u0002\u1d2a\u1d26",
+ "\u0003\u0002\u0002\u0002\u1d2a\u1d27\u0003\u0002\u0002\u0002\u1d2a\u1d29",
+ "\u0003\u0002\u0002\u0002\u1d2b\u1d2d\u0003\u0002\u0002\u0002\u1d2c\u1d2e",
+ "\u0005\u0310\u0189\u0002\u1d2d\u1d2c\u0003\u0002\u0002\u0002\u1d2d\u1d2e",
+ "\u0003\u0002\u0002\u0002\u1d2e\u030b\u0003\u0002\u0002\u0002\u1d2f\u1d30",
+ "\u0007\u0324\u0002\u0002\u1d30\u1d33\u0007\u077a\u0002\u0002\u1d31\u1d33",
+ "\u0007\u03e4\u0002\u0002\u1d32\u1d2f\u0003\u0002\u0002\u0002\u1d32\u1d31",
+ "\u0003\u0002\u0002\u0002\u1d33\u030d\u0003\u0002\u0002\u0002\u1d34\u1d38",
+ "\u0007\u03bb\u0002\u0002\u1d35\u1d36\u0007\u00ea\u0002\u0002\u1d36\u1d38",
+ "\u0007\u08ab\u0002\u0002\u1d37\u1d34\u0003\u0002\u0002\u0002\u1d37\u1d35",
+ "\u0003\u0002\u0002\u0002\u1d38\u030f\u0003\u0002\u0002\u0002\u1d39\u1d3a",
+ "\u0007\u026d\u0002\u0002\u1d3a\u1d3c\u0005\u0592\u02ca\u0002\u1d3b\u1d39",
+ "\u0003\u0002\u0002\u0002\u1d3b\u1d3c\u0003\u0002\u0002\u0002\u1d3c\u1d3d",
+ "\u0003\u0002\u0002\u0002\u1d3d\u1d3f\u0007\u04a2\u0002\u0002\u1d3e\u1d40",
+ "\u0005\u026a\u0136\u0002\u1d3f\u1d3e\u0003\u0002\u0002\u0002\u1d3f\u1d40",
+ "\u0003\u0002\u0002\u0002\u1d40\u0311\u0003\u0002\u0002\u0002\u1d41\u1d46",
+ "\u0005\u031e\u0190\u0002\u1d42\u1d46\u0005\u0318\u018d\u0002\u1d43\u1d46",
+ "\u0005\u0314\u018b\u0002\u1d44\u1d46\u0005\u0338\u019d\u0002\u1d45\u1d41",
+ "\u0003\u0002\u0002\u0002\u1d45\u1d42\u0003\u0002\u0002\u0002\u1d45\u1d43",
+ "\u0003\u0002\u0002\u0002\u1d45\u1d44\u0003\u0002\u0002\u0002\u1d46\u0313",
+ "\u0003\u0002\u0002\u0002\u1d47\u1d48\u0007\u0361\u0002\u0002\u1d48\u1d49",
+ "\u0007\u0381\u0002\u0002\u1d49\u1d4a\u0007\u077a\u0002\u0002\u1d4a\u1d4b",
+ "\u0005\u0316\u018c\u0002\u1d4b\u1d4c\u0007\u0599\u0002\u0002\u1d4c\u1d4d",
+ "\u0007?\u0002\u0002\u1d4d\u1d4e\tR\u0002\u0002\u1d4e\u0315\u0003\u0002",
+ "\u0002\u0002\u1d4f\u1d50\u0005\u0594\u02cb\u0002\u1d50\u0317\u0003\u0002",
+ "\u0002\u0002\u1d51\u1d52\u0007\u057e\u0002\u0002\u1d52\u1d53\u0007\u00d7",
+ "\u0002\u0002\u1d53\u1d54\u0005\u031a\u018e\u0002\u1d54\u1d55\u0007\u07ae",
+ "\u0002\u0002\u1d55\u1d56\u0005\u031c\u018f\u0002\u1d56\u0319\u0003\u0002",
+ "\u0002\u0002\u1d57\u1d58\u0005\u0592\u02ca\u0002\u1d58\u031b\u0003\u0002",
+ "\u0002\u0002\u1d59\u1d5a\u0005\u0592\u02ca\u0002\u1d5a\u031d\u0003\u0002",
+ "\u0002\u0002\u1d5b\u1d5f\u0005\u0328\u0195\u0002\u1d5c\u1d5f\u0005\u0322",
+ "\u0192\u0002\u1d5d\u1d5f\u0005\u0320\u0191\u0002\u1d5e\u1d5b\u0003\u0002",
+ "\u0002\u0002\u1d5e\u1d5c\u0003\u0002\u0002\u0002\u1d5e\u1d5d\u0003\u0002",
+ "\u0002\u0002\u1d5f\u1d60\u0003\u0002\u0002\u0002\u1d60\u1d5e\u0003\u0002",
+ "\u0002\u0002\u1d60\u1d61\u0003\u0002\u0002\u0002\u1d61\u031f\u0003\u0002",
+ "\u0002\u0002\u1d62\u1d63\u0007\u05e8\u0002\u0002\u1d63\u1d71\u0007\u07e8",
+ "\u0002\u0002\u1d64\u1d65\u0007\u00d7\u0002\u0002\u1d65\u1d72\u0005\u0592",
+ "\u02ca\u0002\u1d66\u1d67\u0007\u08b1\u0002\u0002\u1d67\u1d6c\u0005\u0592",
+ "\u02ca\u0002\u1d68\u1d69\u0007\u08b7\u0002\u0002\u1d69\u1d6b\u0005\u0592",
+ "\u02ca\u0002\u1d6a\u1d68\u0003\u0002\u0002\u0002\u1d6b\u1d6e\u0003\u0002",
+ "\u0002\u0002\u1d6c\u1d6a\u0003\u0002\u0002\u0002\u1d6c\u1d6d\u0003\u0002",
+ "\u0002\u0002\u1d6d\u1d6f\u0003\u0002\u0002\u0002\u1d6e\u1d6c\u0003\u0002",
+ "\u0002\u0002\u1d6f\u1d70\u0007\u08b2\u0002\u0002\u1d70\u1d72\u0003\u0002",
+ "\u0002\u0002\u1d71\u1d64\u0003\u0002\u0002\u0002\u1d71\u1d66\u0003\u0002",
+ "\u0002\u0002\u1d72\u1d78\u0003\u0002\u0002\u0002\u1d73\u1d74\u0007\u00a4",
+ "\u0002\u0002\u1d74\u1d77\u0007\u0104\u0002\u0002\u1d75\u1d77\u0007\u02b6",
+ "\u0002\u0002\u1d76\u1d73\u0003\u0002\u0002\u0002\u1d76\u1d75\u0003\u0002",
+ "\u0002\u0002\u1d77\u1d7a\u0003\u0002\u0002\u0002\u1d78\u1d76\u0003\u0002",
+ "\u0002\u0002\u1d78\u1d79\u0003\u0002\u0002\u0002\u1d79\u1da1\u0003\u0002",
+ "\u0002\u0002\u1d7a\u1d78\u0003\u0002\u0002\u0002\u1d7b\u1d89\u0007\u019d",
+ "\u0002\u0002\u1d7c\u1d7d\u0007\u00d7\u0002\u0002\u1d7d\u1d8a\u0005\u0592",
+ "\u02ca\u0002\u1d7e\u1d7f\u0007\u08b1\u0002\u0002\u1d7f\u1d84\u0005\u0592",
+ "\u02ca\u0002\u1d80\u1d81\u0007\u08b7\u0002\u0002\u1d81\u1d83\u0005\u0592",
+ "\u02ca\u0002\u1d82\u1d80\u0003\u0002\u0002\u0002\u1d83\u1d86\u0003\u0002",
+ "\u0002\u0002\u1d84\u1d82\u0003\u0002\u0002\u0002\u1d84\u1d85\u0003\u0002",
+ "\u0002\u0002\u1d85\u1d87\u0003\u0002\u0002\u0002\u1d86\u1d84\u0003\u0002",
+ "\u0002\u0002\u1d87\u1d88\u0007\u08b2\u0002\u0002\u1d88\u1d8a\u0003\u0002",
+ "\u0002\u0002\u1d89\u1d7c\u0003\u0002\u0002\u0002\u1d89\u1d7e\u0003\u0002",
+ "\u0002\u0002\u1d8a\u1d90\u0003\u0002\u0002\u0002\u1d8b\u1d8c\u0007\u00a4",
+ "\u0002\u0002\u1d8c\u1d8f\u0007\u0104\u0002\u0002\u1d8d\u1d8f\u0007\u02b6",
+ "\u0002\u0002\u1d8e\u1d8b\u0003\u0002\u0002\u0002\u1d8e\u1d8d\u0003\u0002",
+ "\u0002\u0002\u1d8f\u1d92\u0003\u0002\u0002\u0002\u1d90\u1d8e\u0003\u0002",
+ "\u0002\u0002\u1d90\u1d91\u0003\u0002\u0002\u0002\u1d91\u1d95\u0003\u0002",
+ "\u0002\u0002\u1d92\u1d90\u0003\u0002\u0002\u0002\u1d93\u1d94\u0007\u00b7",
+ "\u0002\u0002\u1d94\u1d96\u0007\u08ab\u0002\u0002\u1d95\u1d93\u0003\u0002",
+ "\u0002\u0002\u1d95\u1d96\u0003\u0002\u0002\u0002\u1d96\u1da1\u0003\u0002",
+ "\u0002\u0002\u1d97\u1d9c\u0007\u019d\u0002\u0002\u1d98\u1d99\u0007\u07e8",
+ "\u0002\u0002\u1d99\u1d9d\u0007\u00d8\u0002\u0002\u1d9a\u1d9b\u0007\u00d8",
+ "\u0002\u0002\u1d9b\u1d9d\u0007\u010c\u0002\u0002\u1d9c\u1d98\u0003\u0002",
+ "\u0002\u0002\u1d9c\u1d9a\u0003\u0002\u0002\u0002\u1d9d\u1d9e\u0003\u0002",
+ "\u0002\u0002\u1d9e\u1d9f\u0007\u00b7\u0002\u0002\u1d9f\u1da1\u0007\u08ab",
+ "\u0002\u0002\u1da0\u1d62\u0003\u0002\u0002\u0002\u1da0\u1d7b\u0003\u0002",
+ "\u0002\u0002\u1da0\u1d97\u0003\u0002\u0002\u0002\u1da1\u0321\u0003\u0002",
+ "\u0002\u0002\u1da2\u1db0\u0007\u0361\u0002\u0002\u1da3\u1da4\u0007\u08b1",
+ "\u0002\u0002\u1da4\u1da9\u0005\u0324\u0193\u0002\u1da5\u1da6\u0007\u08b7",
+ "\u0002\u0002\u1da6\u1da8\u0005\u0324\u0193\u0002\u1da7\u1da5\u0003\u0002",
+ "\u0002\u0002\u1da8\u1dab\u0003\u0002\u0002\u0002\u1da9\u1da7\u0003\u0002",
+ "\u0002\u0002\u1da9\u1daa\u0003\u0002\u0002\u0002\u1daa\u1dac\u0003\u0002",
+ "\u0002\u0002\u1dab\u1da9\u0003\u0002\u0002\u0002\u1dac\u1dad\u0007\u08b2",
+ "\u0002\u0002\u1dad\u1db1\u0003\u0002\u0002\u0002\u1dae\u1db1\u0005\u0324",
+ "\u0193\u0002\u1daf\u1db1\u0005\u0326\u0194\u0002\u1db0\u1da3\u0003\u0002",
+ "\u0002\u0002\u1db0\u1dae\u0003\u0002\u0002\u0002\u1db0\u1daf\u0003\u0002",
+ "\u0002\u0002\u1db1\u0323\u0003\u0002\u0002\u0002\u1db2\u1db4\u0005\u0592",
+ "\u02ca\u0002\u1db3\u1db5\u0005\u05b6\u02dc\u0002\u1db4\u1db3\u0003\u0002",
+ "\u0002\u0002\u1db4\u1db5\u0003\u0002\u0002\u0002\u1db5\u1db8\u0003\u0002",
+ "\u0002\u0002\u1db6\u1db7\u0007\u0161\u0002\u0002\u1db7\u1db9\u0005\u04d4",
+ "\u026b\u0002\u1db8\u1db6\u0003\u0002\u0002\u0002\u1db8\u1db9\u0003\u0002",
+ "\u0002\u0002\u1db9\u1dbd\u0003\u0002\u0002\u0002\u1dba\u1dbb\u0007\u01bd",
+ "\u0002\u0002\u1dbb\u1dbe\u0005\u0344\u01a3\u0002\u1dbc\u1dbe\u0007\u015f",
+ "\u0002\u0002\u1dbd\u1dba\u0003\u0002\u0002\u0002\u1dbd\u1dbc\u0003\u0002",
+ "\u0002\u0002\u1dbd\u1dbe\u0003\u0002\u0002\u0002\u1dbe\u1dc2\u0003\u0002",
+ "\u0002\u0002\u1dbf\u1dc1\u0005\u01a2\u00d2\u0002\u1dc0\u1dbf\u0003\u0002",
+ "\u0002\u0002\u1dc1\u1dc4\u0003\u0002\u0002\u0002\u1dc2\u1dc0\u0003\u0002",
+ "\u0002\u0002\u1dc2\u1dc3\u0003\u0002\u0002\u0002\u1dc3\u1dc6\u0003\u0002",
+ "\u0002\u0002\u1dc4\u1dc2\u0003\u0002\u0002\u0002\u1dc5\u1dc7\u0005\u0336",
+ "\u019c\u0002\u1dc6\u1dc5\u0003\u0002\u0002\u0002\u1dc6\u1dc7\u0003\u0002",
+ "\u0002\u0002\u1dc7\u0325\u0003\u0002\u0002\u0002\u1dc8\u1dc9\u0007\u00d7",
+ "\u0002\u0002\u1dc9\u1dcb\u0005\u0592\u02ca\u0002\u1dca\u1dcc\u0007\u0433",
+ "\u0002\u0002\u1dcb\u1dca\u0003\u0002\u0002\u0002\u1dcb\u1dcc\u0003\u0002",
+ "\u0002\u0002\u1dcc\u1dcd\u0003\u0002\u0002\u0002\u1dcd\u1dce\u0007\u064d",
+ "\u0002\u0002\u1dce\u1dcf\u0007L\u0002\u0002\u1dcf\u1dd0\u0007%\u0002",
+ "\u0002\u1dd0\u1dd2\u0007\u02ee\u0002\u0002\u1dd1\u1dd3\u0007\u0220\u0002",
+ "\u0002\u1dd2\u1dd1\u0003\u0002\u0002\u0002\u1dd2\u1dd3\u0003\u0002\u0002",
+ "\u0002\u1dd3\u0327\u0003\u0002\u0002\u0002\u1dd4\u1dea\u0007\u0014\u0002",
+ "\u0002\u1dd5\u1dd8\u0007\u08b1\u0002\u0002\u1dd6\u1dd9\u0005\u0352\u01aa",
+ "\u0002\u1dd7\u1dd9\u0005\u0354\u01ab\u0002\u1dd8\u1dd6\u0003\u0002\u0002",
+ "\u0002\u1dd8\u1dd7\u0003\u0002\u0002\u0002\u1dd9\u1de1\u0003\u0002\u0002",
+ "\u0002\u1dda\u1ddd\u0007\u08b7\u0002\u0002\u1ddb\u1dde\u0005\u0352\u01aa",
+ "\u0002\u1ddc\u1dde\u0005\u0354\u01ab\u0002\u1ddd\u1ddb\u0003\u0002\u0002",
+ "\u0002\u1ddd\u1ddc\u0003\u0002\u0002\u0002\u1dde\u1de0\u0003\u0002\u0002",
+ "\u0002\u1ddf\u1dda\u0003\u0002\u0002\u0002\u1de0\u1de3\u0003\u0002\u0002",
+ "\u0002\u1de1\u1ddf\u0003\u0002\u0002\u0002\u1de1\u1de2\u0003\u0002\u0002",
+ "\u0002\u1de2\u1de4\u0003\u0002\u0002\u0002\u1de3\u1de1\u0003\u0002\u0002",
+ "\u0002\u1de4\u1de5\u0007\u08b2\u0002\u0002\u1de5\u1deb\u0003\u0002\u0002",
+ "\u0002\u1de6\u1de9\u0005\u0352\u01aa\u0002\u1de7\u1de9\u0005\u0354\u01ab",
+ "\u0002\u1de8\u1de6\u0003\u0002\u0002\u0002\u1de8\u1de7\u0003\u0002\u0002",
+ "\u0002\u1de9\u1deb\u0003\u0002\u0002\u0002\u1dea\u1dd5\u0003\u0002\u0002",
+ "\u0002\u1dea\u1de8\u0003\u0002\u0002\u0002\u1deb\u1ded\u0003\u0002\u0002",
+ "\u0002\u1dec\u1dee\u0005\u034a\u01a6\u0002\u1ded\u1dec\u0003\u0002\u0002",
+ "\u0002\u1ded\u1dee\u0003\u0002\u0002\u0002\u1dee\u0329\u0003\u0002\u0002",
+ "\u0002\u1def\u1df0\u0007\u0361\u0002\u0002\u1df0\u1df1\u0007\u0822\u0002",
+ "\u0002\u1df1\u1df2\u0005\u0348\u01a5\u0002\u1df2\u1df3\u0007\u08b1\u0002",
+ "\u0002\u1df3\u1df4\u0005\u033a\u019e\u0002\u1df4\u1df5\u0007\u08b2\u0002",
+ "\u0002\u1df5\u032b\u0003\u0002\u0002\u0002\u1df6\u1df7\u0007\u0822\u0002",
+ "\u0002\u1df7\u1dfd\u0005\u0348\u01a5\u0002\u1df8\u1dfa\u0005\u035e\u01b0",
+ "\u0002\u1df9\u1df8\u0003\u0002\u0002\u0002\u1df9\u1dfa\u0003\u0002\u0002",
+ "\u0002\u1dfa\u1dfb\u0003\u0002\u0002\u0002\u1dfb\u1dfe\u0005\u032e\u0198",
+ "\u0002\u1dfc\u1dfe\u0005\u035e\u01b0\u0002\u1dfd\u1df9\u0003\u0002\u0002",
+ "\u0002\u1dfd\u1dfc\u0003\u0002\u0002\u0002\u1dfe\u032d\u0003\u0002\u0002",
+ "\u0002\u1dff\u1e00\u0007\u063c\u0002\u0002\u1e00\u1e02\u0007?\u0002",
+ "\u0002\u1e01\u1e03\t<\u0002\u0002\u1e02\u1e01\u0003\u0002\u0002\u0002",
+ "\u1e02\u1e03\u0003\u0002\u0002\u0002\u1e03\u1e04\u0003\u0002\u0002\u0002",
+ "\u1e04\u1e0d\u0007\u02ff\u0002\u0002\u1e05\u1e07\u0005\u0330\u0199\u0002",
+ "\u1e06\u1e05\u0003\u0002\u0002\u0002\u1e06\u1e07\u0003\u0002\u0002\u0002",
+ "\u1e07\u1e08\u0003\u0002\u0002\u0002\u1e08\u1e09\u0007\u08b1\u0002\u0002",
+ "\u1e09\u1e0a\u0005\u0334\u019b\u0002\u1e0a\u1e0b\u0007\u08b2\u0002\u0002",
+ "\u1e0b\u1e0e\u0003\u0002\u0002\u0002\u1e0c\u1e0e\u0005\u0330\u0199\u0002",
+ "\u1e0d\u1e06\u0003\u0002\u0002\u0002\u1e0d\u1e0c\u0003\u0002\u0002\u0002",
+ "\u1e0e\u032f\u0003\u0002\u0002\u0002\u1e0f\u1e10\u0005\u05d6\u02ec\u0002",
+ "\u1e10\u0331\u0003\u0002\u0002\u0002\u1e11\u1e12\u0005\u05d6\u02ec\u0002",
+ "\u1e12\u0333\u0003\u0002\u0002\u0002\u1e13\u1e14\u0007\u0777\u0002\u0002",
+ "\u1e14\u1e1b\u0005\u0346\u01a4\u0002\u1e15\u1e17\u0005\u033c\u019f\u0002",
+ "\u1e16\u1e18\u0005\u0266\u0134\u0002\u1e17\u1e16\u0003\u0002\u0002\u0002",
+ "\u1e17\u1e18\u0003\u0002\u0002\u0002\u1e18\u1e1b\u0003\u0002\u0002\u0002",
+ "\u1e19\u1e1b\u0005\u0266\u0134\u0002\u1e1a\u1e13\u0003\u0002\u0002\u0002",
+ "\u1e1a\u1e15\u0003\u0002\u0002\u0002\u1e1a\u1e19\u0003\u0002\u0002\u0002",
+ "\u1e1b\u0335\u0003\u0002\u0002\u0002\u1e1c\u1e41\u0007\u02ff\u0002\u0002",
+ "\u1e1d\u1e1e\u0007\u08b1\u0002\u0002\u1e1e\u1e23\u0005\u0332\u019a\u0002",
+ "\u1e1f\u1e20\u0007\u08b7\u0002\u0002\u1e20\u1e22\u0005\u0332\u019a\u0002",
+ "\u1e21\u1e1f\u0003\u0002\u0002\u0002\u1e22\u1e25\u0003\u0002\u0002\u0002",
+ "\u1e23\u1e21\u0003\u0002\u0002\u0002\u1e23\u1e24\u0003\u0002\u0002\u0002",
+ "\u1e24\u1e26\u0003\u0002\u0002\u0002\u1e25\u1e23\u0003\u0002\u0002\u0002",
+ "\u1e26\u1e27\u0007\u08b2\u0002\u0002\u1e27\u1e28\u0007\u063c\u0002\u0002",
+ "\u1e28\u1e2e\u0007?\u0002\u0002\u1e29\u1e2f\t<\u0002\u0002\u1e2a\u1e2b",
+ "\u0007\u08b1\u0002\u0002\u1e2b\u1e2c\u0005\u0334\u019b\u0002\u1e2c\u1e2d",
+ "\u0007\u08b2\u0002\u0002\u1e2d\u1e2f\u0003\u0002\u0002\u0002\u1e2e\u1e29",
+ "\u0003\u0002\u0002\u0002\u1e2e\u1e2a\u0003\u0002\u0002\u0002\u1e2f\u1e30",
+ "\u0003\u0002\u0002\u0002\u1e30\u1e2e\u0003\u0002\u0002\u0002\u1e30\u1e31",
+ "\u0003\u0002\u0002\u0002\u1e31\u1e42\u0003\u0002\u0002\u0002\u1e32\u1e33",
+ "\u0007\u08b1\u0002\u0002\u1e33\u1e34\u0005\u0332\u019a\u0002\u1e34\u1e35",
+ "\u0007\u08b2\u0002\u0002\u1e35\u1e36\u0007\u063c\u0002\u0002\u1e36\u1e3d",
+ "\u0007?\u0002\u0002\u1e37\u1e3e\t<\u0002\u0002\u1e38\u1e3e\u0005\u0330",
+ "\u0199\u0002\u1e39\u1e3a\u0007\u08b1\u0002\u0002\u1e3a\u1e3b\u0005\u0334",
+ "\u019b\u0002\u1e3b\u1e3c\u0007\u08b2\u0002\u0002\u1e3c\u1e3e\u0003\u0002",
+ "\u0002\u0002\u1e3d\u1e37\u0003\u0002\u0002\u0002\u1e3d\u1e38\u0003\u0002",
+ "\u0002\u0002\u1e3d\u1e39\u0003\u0002\u0002\u0002\u1e3e\u1e3f\u0003\u0002",
+ "\u0002\u0002\u1e3f\u1e3d\u0003\u0002\u0002\u0002\u1e3f\u1e40\u0003\u0002",
+ "\u0002\u0002\u1e40\u1e42\u0003\u0002\u0002\u0002\u1e41\u1e1d\u0003\u0002",
+ "\u0002\u0002\u1e41\u1e32\u0003\u0002\u0002\u0002\u1e42\u0337\u0003\u0002",
+ "\u0002\u0002\u1e43\u1e44\u0007\u0361\u0002\u0002\u1e44\u1e45\u0007\u02ff",
+ "\u0002\u0002\u1e45\u1e46\u0007\u08b1\u0002\u0002\u1e46\u1e47\u0005\u0332",
+ "\u019a\u0002\u1e47\u1e48\u0007\u08b2\u0002\u0002\u1e48\u1e49\u0007\u08b1",
+ "\u0002\u0002\u1e49\u1e4a\u0005\u033a\u019e\u0002\u1e4a\u1e4b\u0007\u08b2",
+ "\u0002\u0002\u1e4b\u0339\u0003\u0002\u0002\u0002\u1e4c\u1e65\u0005\u0266",
+ "\u0134\u0002\u1e4d\u1e4e\tS\u0002\u0002\u1e4e\u1e65\u0007\u08ab\u0002",
+ "\u0002\u1e4f\u1e50\u0007\u0550\u0002\u0002\u1e50\u1e65\u0007\u022a\u0002",
+ "\u0002\u1e51\u1e65\u0005\u0342\u01a2\u0002\u1e52\u1e65\u0005\u033e\u01a0",
+ "\u0002\u1e53\u1e65\u0005\u0340\u01a1\u0002\u1e54\u1e55\u0007\u01bd\u0002",
+ "\u0002\u1e55\u1e65\u0005\u0344\u01a3\u0002\u1e56\u1e65\u0007\u015f\u0002",
+ "\u0002\u1e57\u1e65\u0007\u0098\u0002\u0002\u1e58\u1e5d\u0007\u0098\u0002",
+ "\u0002\u1e59\u1e5d\u0007\u03b4\u0002\u0002\u1e5a\u1e5b\u0007\u0098\u0002",
+ "\u0002\u1e5b\u1e5d\u0007\u054c\u0002\u0002\u1e5c\u1e58\u0003\u0002\u0002",
+ "\u0002\u1e5c\u1e59\u0003\u0002\u0002\u0002\u1e5c\u1e5a\u0003\u0002\u0002",
+ "\u0002\u1e5d\u1e5f\u0003\u0002\u0002\u0002\u1e5e\u1e60\u0005\u01c2\u00e2",
+ "\u0002\u1e5f\u1e5e\u0003\u0002\u0002\u0002\u1e5f\u1e60\u0003\u0002\u0002",
+ "\u0002\u1e60\u1e65\u0003\u0002\u0002\u0002\u1e61\u1e65\u0005\u027a\u013e",
+ "\u0002\u1e62\u1e65\u0005\u027e\u0140\u0002\u1e63\u1e65\u0005\u027c\u013f",
+ "\u0002\u1e64\u1e4c\u0003\u0002\u0002\u0002\u1e64\u1e4d\u0003\u0002\u0002",
+ "\u0002\u1e64\u1e4f\u0003\u0002\u0002\u0002\u1e64\u1e51\u0003\u0002\u0002",
+ "\u0002\u1e64\u1e52\u0003\u0002\u0002\u0002\u1e64\u1e53\u0003\u0002\u0002",
+ "\u0002\u1e64\u1e54\u0003\u0002\u0002\u0002\u1e64\u1e56\u0003\u0002\u0002",
+ "\u0002\u1e64\u1e57\u0003\u0002\u0002\u0002\u1e64\u1e5c\u0003\u0002\u0002",
+ "\u0002\u1e64\u1e61\u0003\u0002\u0002\u0002\u1e64\u1e62\u0003\u0002\u0002",
+ "\u0002\u1e64\u1e63\u0003\u0002\u0002\u0002\u1e65\u1e66\u0003\u0002\u0002",
+ "\u0002\u1e66\u1e64\u0003\u0002\u0002\u0002\u1e66\u1e67\u0003\u0002\u0002",
+ "\u0002\u1e67\u033b\u0003\u0002\u0002\u0002\u1e68\u1e69\t\u0007\u0002",
+ "\u0002\u1e69\u1e6a\u0007\u063b\u0002\u0002\u1e6a\u1e6b\u0007\u028e\u0002",
+ "\u0002\u1e6b\u1e82\u0007\u05ad\u0002\u0002\u1e6c\u1e6d\u0007\u00bb\u0002",
+ "\u0002\u1e6d\u1e82\u0007\u08ab\u0002\u0002\u1e6e\u1e6f\u0007\u04d1\u0002",
+ "\u0002\u1e6f\u1e82\u0007\u08ab\u0002\u0002\u1e70\u1e71\u0007\u022a\u0002",
+ "\u0002\u1e71\u1e82\u0007\u08ab\u0002\u0002\u1e72\u1e82\u0005\u0342\u01a2",
+ "\u0002\u1e73\u1e82\u0005\u033e\u01a0\u0002\u1e74\u1e82\u0005\u0340\u01a1",
+ "\u0002\u1e75\u1e76\u0007\u01bd\u0002\u0002\u1e76\u1e82\u0005\u0344\u01a3",
+ "\u0002\u1e77\u1e82\u0007\u015f\u0002\u0002\u1e78\u1e7d\u0007\u0098\u0002",
+ "\u0002\u1e79\u1e7d\u0007\u03b4\u0002\u0002\u1e7a\u1e7b\u0007\u0098\u0002",
+ "\u0002\u1e7b\u1e7d\u0007\u054c\u0002\u0002\u1e7c\u1e78\u0003\u0002\u0002",
+ "\u0002\u1e7c\u1e79\u0003\u0002\u0002\u0002\u1e7c\u1e7a\u0003\u0002\u0002",
+ "\u0002\u1e7d\u1e7f\u0003\u0002\u0002\u0002\u1e7e\u1e80\u0005\u01c2\u00e2",
+ "\u0002\u1e7f\u1e7e\u0003\u0002\u0002\u0002\u1e7f\u1e80\u0003\u0002\u0002",
+ "\u0002\u1e80\u1e82\u0003\u0002\u0002\u0002\u1e81\u1e68\u0003\u0002\u0002",
+ "\u0002\u1e81\u1e6c\u0003\u0002\u0002\u0002\u1e81\u1e6e\u0003\u0002\u0002",
+ "\u0002\u1e81\u1e70\u0003\u0002\u0002\u0002\u1e81\u1e72\u0003\u0002\u0002",
+ "\u0002\u1e81\u1e73\u0003\u0002\u0002\u0002\u1e81\u1e74\u0003\u0002\u0002",
+ "\u0002\u1e81\u1e75\u0003\u0002\u0002\u0002\u1e81\u1e77\u0003\u0002\u0002",
+ "\u0002\u1e81\u1e7c\u0003\u0002\u0002\u0002\u1e82\u1e83\u0003\u0002\u0002",
+ "\u0002\u1e83\u1e81\u0003\u0002\u0002\u0002\u1e83\u1e84\u0003\u0002\u0002",
+ "\u0002\u1e84\u033d\u0003\u0002\u0002\u0002\u1e85\u1e86\tT\u0002\u0002",
+ "\u1e86\u033f\u0003\u0002\u0002\u0002\u1e87\u1e8d\u0007\u03bb\u0002\u0002",
+ "\u1e88\u1e8a\u0007\u00ea\u0002\u0002\u1e89\u1e8b\tU\u0002\u0002\u1e8a",
+ "\u1e89\u0003\u0002\u0002\u0002\u1e8a\u1e8b\u0003\u0002\u0002\u0002\u1e8b",
+ "\u1e8d\u0003\u0002\u0002\u0002\u1e8c\u1e87\u0003\u0002\u0002\u0002\u1e8c",
+ "\u1e88\u0003\u0002\u0002\u0002\u1e8d\u0341\u0003\u0002\u0002\u0002\u1e8e",
+ "\u1e94\u0007\u0596\u0002\u0002\u1e8f\u1e95\u0007\u0893\u0002\u0002\u1e90",
+ "\u1e91\u0007\u0895\u0002\u0002\u1e91\u1e95\u0007\u08ab\u0002\u0002\u1e92",
+ "\u1e95\u0007U\u0002\u0002\u1e93\u1e95\u0007\u03f1\u0002\u0002\u1e94",
+ "\u1e8f\u0003\u0002\u0002\u0002\u1e94\u1e90\u0003\u0002\u0002\u0002\u1e94",
+ "\u1e92\u0003\u0002\u0002\u0002\u1e94\u1e93\u0003\u0002\u0002\u0002\u1e94",
+ "\u1e95\u0003\u0002\u0002\u0002\u1e95\u0343\u0003\u0002\u0002\u0002\u1e96",
+ "\u1e97\u0007\u0811\u0002\u0002\u1e97\u1e99\u0007\u08ad\u0002\u0002\u1e98",
+ "\u1e96\u0003\u0002\u0002\u0002\u1e98\u1e99\u0003\u0002\u0002\u0002\u1e99",
+ "\u1e9d\u0003\u0002\u0002\u0002\u1e9a\u1e9b\u0007\u025b\u0002\u0002\u1e9b",
+ "\u1e9c\u0007\u0094\u0002\u0002\u1e9c\u1e9e\u0007\u08ce\u0002\u0002\u1e9d",
+ "\u1e9a\u0003\u0002\u0002\u0002\u1e9d\u1e9e\u0003\u0002\u0002\u0002\u1e9e",
+ "\u1ea0\u0003\u0002\u0002\u0002\u1e9f\u1ea1\u0007\u08ad\u0002\u0002\u1ea0",
+ "\u1e9f\u0003\u0002\u0002\u0002\u1ea0\u1ea1\u0003\u0002\u0002\u0002\u1ea1",
+ "\u1ea6\u0003\u0002\u0002\u0002\u1ea2\u1ea4\u0007\u03f4\u0002\u0002\u1ea3",
+ "\u1ea2\u0003\u0002\u0002\u0002\u1ea3\u1ea4\u0003\u0002\u0002\u0002\u1ea4",
+ "\u1ea5\u0003\u0002\u0002\u0002\u1ea5\u1ea7\u0007\u05b4\u0002\u0002\u1ea6",
+ "\u1ea3\u0003\u0002\u0002\u0002\u1ea6\u1ea7\u0003\u0002\u0002\u0002\u1ea7",
+ "\u0345\u0003\u0002\u0002\u0002\u1ea8\u1ea9\u0005\u05d6\u02ec\u0002\u1ea9",
+ "\u0347\u0003\u0002\u0002\u0002\u1eaa\u1eab\u0005\u05d2\u02ea\u0002\u1eab",
+ "\u1eac\u0007\u08aa\u0002\u0002\u1eac\u1eae\u0003\u0002\u0002\u0002\u1ead",
+ "\u1eaa\u0003\u0002\u0002\u0002\u1ead\u1eae\u0003\u0002\u0002\u0002\u1eae",
+ "\u1eb2\u0003\u0002\u0002\u0002\u1eaf\u1eb0\u0005\u05d2\u02ea\u0002\u1eb0",
+ "\u1eb1\u0007\u08aa\u0002\u0002\u1eb1\u1eb3\u0003\u0002\u0002\u0002\u1eb2",
+ "\u1eaf\u0003\u0002\u0002\u0002\u1eb2\u1eb3\u0003\u0002\u0002\u0002\u1eb3",
+ "\u1eb4\u0003\u0002\u0002\u0002\u1eb4\u1eb5\u0005\u05d2\u02ea\u0002\u1eb5",
+ "\u0349\u0003\u0002\u0002\u0002\u1eb6\u1ebe\u0005\u0366\u01b4\u0002\u1eb7",
+ "\u1ebe\u0005\u035a\u01ae\u0002\u1eb8\u1ebb\u0005\u032c\u0197\u0002\u1eb9",
+ "\u1ebb\u0005\u0336\u019c\u0002\u1eba\u1eb8\u0003\u0002\u0002\u0002\u1eba",
+ "\u1eb9\u0003\u0002\u0002\u0002\u1ebb\u1ebe\u0003\u0002\u0002\u0002\u1ebc",
+ "\u1ebe\u0005\u020e\u0108\u0002\u1ebd\u1eb6\u0003\u0002\u0002\u0002\u1ebd",
+ "\u1eb7\u0003\u0002\u0002\u0002\u1ebd\u1eba\u0003\u0002\u0002\u0002\u1ebd",
+ "\u1ebc\u0003\u0002\u0002\u0002\u1ebe\u034b\u0003\u0002\u0002\u0002\u1ebf",
+ "\u1ec0\u0006\u01a7\u000b\u0002\u1ec0\u1ec1\u0007\u08aa\u0002\u0002\u1ec1",
+ "\u1ec2\u0007\u0224\u0002\u0002\u1ec2\u1ec9\u0005\u0592\u02ca\u0002\u1ec3",
+ "\u1ec4\u0007\u08b1\u0002\u0002\u1ec4\u1ec5\u0005\u034e\u01a8\u0002\u1ec5",
+ "\u1ec6\u0007\u08b7\u0002\u0002\u1ec6\u1ec7\u0005\u0350\u01a9\u0002\u1ec7",
+ "\u1ec8\u0007\u08b2\u0002\u0002\u1ec8\u1eca\u0003\u0002\u0002\u0002\u1ec9",
+ "\u1ec3\u0003\u0002\u0002\u0002\u1ec9\u1eca\u0003\u0002\u0002\u0002\u1eca",
+ "\u034d\u0003\u0002\u0002\u0002\u1ecb\u1ecc\u0005\u0592\u02ca\u0002\u1ecc",
+ "\u034f\u0003\u0002\u0002\u0002\u1ecd\u1ece\u0005\u0592\u02ca\u0002\u1ece",
+ "\u0351\u0003\u0002\u0002\u0002\u1ecf\u1ed2\u0005\u0592\u02ca\u0002\u1ed0",
+ "\u1ed3\u0005\u05b6\u02dc\u0002\u1ed1\u1ed3\u0005\u057a\u02be\u0002\u1ed2",
+ "\u1ed0\u0003\u0002\u0002\u0002\u1ed2\u1ed1\u0003\u0002\u0002\u0002\u1ed3",
+ "\u1ed5\u0003\u0002\u0002\u0002\u1ed4\u1ed6\u0007\u060a\u0002\u0002\u1ed5",
+ "\u1ed4\u0003\u0002\u0002\u0002\u1ed5\u1ed6\u0003\u0002\u0002\u0002\u1ed6",
+ "\u1ed9\u0003\u0002\u0002\u0002\u1ed7\u1ed8\u0007\u0161\u0002\u0002\u1ed8",
+ "\u1eda\u0005\u04d4\u026b\u0002\u1ed9\u1ed7\u0003\u0002\u0002\u0002\u1ed9",
+ "\u1eda\u0003\u0002\u0002\u0002\u1eda\u1eee\u0003\u0002\u0002\u0002\u1edb",
+ "\u1ede\u0007\u01bd\u0002\u0002\u1edc\u1edd\u0007\u0811\u0002\u0002\u1edd",
+ "\u1edf\u0007\u08ad\u0002\u0002\u1ede\u1edc\u0003\u0002\u0002\u0002\u1ede",
+ "\u1edf\u0003\u0002\u0002\u0002\u1edf\u1ee3\u0003\u0002\u0002\u0002\u1ee0",
+ "\u1ee1\u0007\u025b\u0002\u0002\u1ee1\u1ee2\u0007\u0094\u0002\u0002\u1ee2",
+ "\u1ee4\u0005\u05d6\u02ec\u0002\u1ee3\u1ee0\u0003\u0002\u0002\u0002\u1ee3",
+ "\u1ee4\u0003\u0002\u0002\u0002\u1ee4\u1ee6\u0003\u0002\u0002\u0002\u1ee5",
+ "\u1ee7\u0007\u08ad\u0002\u0002\u1ee6\u1ee5\u0003\u0002\u0002\u0002\u1ee6",
+ "\u1ee7\u0003\u0002\u0002\u0002\u1ee7\u1eec\u0003\u0002\u0002\u0002\u1ee8",
+ "\u1eea\u0007\u03f4\u0002\u0002\u1ee9\u1ee8\u0003\u0002\u0002\u0002\u1ee9",
+ "\u1eea\u0003\u0002\u0002\u0002\u1eea\u1eeb\u0003\u0002\u0002\u0002\u1eeb",
+ "\u1eed\u0007\u05b4\u0002\u0002\u1eec\u1ee9\u0003\u0002\u0002\u0002\u1eec",
+ "\u1eed\u0003\u0002\u0002\u0002\u1eed\u1eef\u0003\u0002\u0002\u0002\u1eee",
+ "\u1edb\u0003\u0002\u0002\u0002\u1eee\u1eef\u0003\u0002\u0002\u0002\u1eef",
+ "\u1ef7\u0003\u0002\u0002\u0002\u1ef0\u1ef2\u0005\u01a2\u00d2\u0002\u1ef1",
+ "\u1ef0\u0003\u0002\u0002\u0002\u1ef2\u1ef5\u0003\u0002\u0002\u0002\u1ef3",
+ "\u1ef1\u0003\u0002\u0002\u0002\u1ef3\u1ef4\u0003\u0002\u0002\u0002\u1ef4",
+ "\u1ef8\u0003\u0002\u0002\u0002\u1ef5\u1ef3\u0003\u0002\u0002\u0002\u1ef6",
+ "\u1ef8\u0005\u01a4\u00d3\u0002\u1ef7\u1ef3\u0003\u0002\u0002\u0002\u1ef7",
+ "\u1ef6\u0003\u0002\u0002\u0002\u1ef8\u0353\u0003\u0002\u0002\u0002\u1ef9",
+ "\u1efb\u0005\u0592\u02ca\u0002\u1efa\u1efc\u0005\u05b6\u02dc\u0002\u1efb",
+ "\u1efa\u0003\u0002\u0002\u0002\u1efb\u1efc\u0003\u0002\u0002\u0002\u1efc",
+ "\u1efe\u0003\u0002\u0002\u0002\u1efd\u1eff\u0005\u0356\u01ac\u0002\u1efe",
+ "\u1efd\u0003\u0002\u0002\u0002\u1efe\u1eff\u0003\u0002\u0002\u0002\u1eff",
+ "\u1f01\u0003\u0002\u0002\u0002\u1f00\u1f02\u0007\u0837\u0002\u0002\u1f01",
+ "\u1f00\u0003\u0002\u0002\u0002\u1f01\u1f02\u0003\u0002\u0002\u0002\u1f02",
+ "\u1f06\u0003\u0002\u0002\u0002\u1f03\u1f05\u0005\u01a2\u00d2\u0002\u1f04",
+ "\u1f03\u0003\u0002\u0002\u0002\u1f05\u1f08\u0003\u0002\u0002\u0002\u1f06",
+ "\u1f04\u0003\u0002\u0002\u0002\u1f06\u1f07\u0003\u0002\u0002\u0002\u1f07",
+ "\u0355\u0003\u0002\u0002\u0002\u1f08\u1f06\u0003\u0002\u0002\u0002\u1f09",
+ "\u1f11\u0007\u0236\u0002\u0002\u1f0a\u1f12\u0007*\u0002\u0002\u1f0b",
+ "\u1f0c\u0007\u0094\u0002\u0002\u1f0c\u1f0f\u0007\u0161\u0002\u0002\u1f0d",
+ "\u1f0e\u0007\u046a\u0002\u0002\u1f0e\u1f10\u0007\u044b\u0002\u0002\u1f0f",
+ "\u1f0d\u0003\u0002\u0002\u0002\u1f0f\u1f10\u0003\u0002\u0002\u0002\u1f10",
+ "\u1f12\u0003\u0002\u0002\u0002\u1f11\u1f0a\u0003\u0002\u0002\u0002\u1f11",
+ "\u1f0b\u0003\u0002\u0002\u0002\u1f11\u1f12\u0003\u0002\u0002\u0002\u1f12",
+ "\u1f13\u0003\u0002\u0002\u0002\u1f13\u1f14\u0007?\u0002\u0002\u1f14",
+ "\u1f15\u0007\u025d\u0002\u0002\u1f15\u0357\u0003\u0002\u0002\u0002\u1f16",
+ "\u1f17\u0007\u04b9\u0002\u0002\u1f17\u1f18\u0005\u0360\u01b1\u0002\u1f18",
+ "\u0359\u0003\u0002\u0002\u0002\u1f19\u1f1a\u0007\u0381\u0002\u0002\u1f1a",
+ "\u1f1d\u0007\u077a\u0002\u0002\u1f1b\u1f1e\u0005\u035c\u01af\u0002\u1f1c",
+ "\u1f1e\u0007\u00da\u0002\u0002\u1f1d\u1f1b\u0003\u0002\u0002\u0002\u1f1d",
+ "\u1f1c\u0003\u0002\u0002\u0002\u1f1e\u1f20\u0003\u0002\u0002\u0002\u1f1f",
+ "\u1f21\u0005\u035e\u01b0\u0002\u1f20\u1f1f\u0003\u0002\u0002\u0002\u1f20",
+ "\u1f21\u0003\u0002\u0002\u0002\u1f21\u1f23\u0003\u0002\u0002\u0002\u1f22",
+ "\u1f24\tV\u0002\u0002\u1f23\u1f22\u0003\u0002\u0002\u0002\u1f23\u1f24",
+ "\u0003\u0002\u0002\u0002\u1f24\u1f25\u0003\u0002\u0002\u0002\u1f25\u1f26",
+ "\u0007\u063c\u0002\u0002\u1f26\u1f27\u0007?\u0002\u0002\u1f27\u1f35",
+ "\u0005\u0594\u02cb\u0002\u1f28\u1f2f\u0007\u08b1\u0002\u0002\u1f29\u1f2a",
+ "\u0007\u08b1\u0002\u0002\u1f2a\u1f2b\u0005\u021a\u010e\u0002\u1f2b\u1f2c",
+ "\u0007\u08b2\u0002\u0002\u1f2c\u1f30\u0003\u0002\u0002\u0002\u1f2d\u1f30",
+ "\u0005\u026c\u0137\u0002\u1f2e\u1f30\u0005\u034a\u01a6\u0002\u1f2f\u1f29",
+ "\u0003\u0002\u0002\u0002\u1f2f\u1f2d\u0003\u0002\u0002\u0002\u1f2f\u1f2e",
+ "\u0003\u0002\u0002\u0002\u1f30\u1f31\u0003\u0002\u0002\u0002\u1f31\u1f2f",
+ "\u0003\u0002\u0002\u0002\u1f31\u1f32\u0003\u0002\u0002\u0002\u1f32\u1f33",
+ "\u0003\u0002\u0002\u0002\u1f33\u1f34\u0007\u08b2\u0002\u0002\u1f34\u1f36",
+ "\u0003\u0002\u0002\u0002\u1f35\u1f28\u0003\u0002\u0002\u0002\u1f35\u1f36",
+ "\u0003\u0002\u0002\u0002\u1f36\u1f3c\u0003\u0002\u0002\u0002\u1f37\u1f39",
+ "\u0007\u0599\u0002\u0002\u1f38\u1f3a\u0007?\u0002\u0002\u1f39\u1f38",
+ "\u0003\u0002\u0002\u0002\u1f39\u1f3a\u0003\u0002\u0002\u0002\u1f3a\u1f3b",
+ "\u0003\u0002\u0002\u0002\u1f3b\u1f3d\tR\u0002\u0002\u1f3c\u1f37\u0003",
+ "\u0002\u0002\u0002\u1f3c\u1f3d\u0003\u0002\u0002\u0002\u1f3d\u035b\u0003",
+ "\u0002\u0002\u0002\u1f3e\u1f3f\u0005\u05d6\u02ec\u0002\u1f3f\u035d\u0003",
+ "\u0002\u0002\u0002\u1f40\u1f42\u0007\u01ad\u0002\u0002\u1f41\u1f40\u0003",
+ "\u0002\u0002\u0002\u1f41\u1f42\u0003\u0002\u0002\u0002\u1f42\u1f43\u0003",
+ "\u0002\u0002\u0002\u1f43\u1f44\u0007\u02b9\u0002\u0002\u1f44\u1f46\u0007",
+ "\u045d\u0002\u0002\u1f45\u1f47\u0007\u07c5\u0002\u0002\u1f46\u1f45\u0003",
+ "\u0002\u0002\u0002\u1f46\u1f47\u0003\u0002\u0002\u0002\u1f47\u1f48\u0003",
+ "\u0002\u0002\u0002\u1f48\u1f49\u0007\u08b1\u0002\u0002\u1f49\u1f4a\u0005",
+ "\u057a\u02be\u0002\u1f4a\u1f4b\u0007\u08b2\u0002\u0002\u1f4b\u1f54\u0003",
+ "\u0002\u0002\u0002\u1f4c\u1f4e\u0007\u0433\u0002\u0002\u1f4d\u1f4c\u0003",
+ "\u0002\u0002\u0002\u1f4d\u1f4e\u0003\u0002\u0002\u0002\u1f4e\u1f4f\u0003",
+ "\u0002\u0002\u0002\u1f4f\u1f50\u0007\u064d\u0002\u0002\u1f50\u1f51\u0007",
+ "L\u0002\u0002\u1f51\u1f52\u0007%\u0002\u0002\u1f52\u1f54\u0007\u02ee",
+ "\u0002\u0002\u1f53\u1f41\u0003\u0002\u0002\u0002\u1f53\u1f4d\u0003\u0002",
+ "\u0002\u0002\u1f54\u035f\u0003\u0002\u0002\u0002\u1f55\u1f56\u0005\u05d6",
+ "\u02ec\u0002\u1f56\u0361\u0003\u0002\u0002\u0002\u1f57\u1f58\u0007\u0656",
+ "\u0002\u0002\u1f58\u1f5b\u0007\u0311\u0002\u0002\u1f59\u1f5c\u0005\u0276",
+ "\u013c\u0002\u1f5a\u1f5c\u0005\u0278\u013d\u0002\u1f5b\u1f59\u0003\u0002",
+ "\u0002\u0002\u1f5b\u1f5a\u0003\u0002\u0002\u0002\u1f5c\u0363\u0003\u0002",
+ "\u0002\u0002\u1f5d\u1f5e\u0005\u05d6\u02ec\u0002\u1f5e\u0365\u0003\u0002",
+ "\u0002\u0002\u1f5f\u1f60\u0007\u00d7\u0002\u0002\u1f60\u1f61\u0005\u05d6",
+ "\u02ec\u0002\u1f61\u1f62\u0005\u035e\u01b0\u0002\u1f62\u0367\u0003\u0002",
+ "\u0002\u0002\u1f63\u1f64\u0007\u0014\u0002\u0002\u1f64\u1f6c\u0007\u08b1",
+ "\u0002\u0002\u1f65\u1f67\u0005\u01a8\u00d5\u0002\u1f66\u1f65\u0003\u0002",
+ "\u0002\u0002\u1f67\u1f6a\u0003\u0002\u0002\u0002\u1f68\u1f66\u0003\u0002",
+ "\u0002\u0002\u1f68\u1f69\u0003\u0002\u0002\u0002\u1f69\u1f6d\u0003\u0002",
+ "\u0002\u0002\u1f6a\u1f68\u0003\u0002\u0002\u0002\u1f6b\u1f6d\u0005\u01a6",
+ "\u00d4\u0002\u1f6c\u1f68\u0003\u0002\u0002\u0002\u1f6c\u1f6b\u0003\u0002",
+ "\u0002\u0002\u1f6d\u1f6e\u0003\u0002\u0002\u0002\u1f6e\u1f9c\u0007\u08b2",
+ "\u0002\u0002\u1f6f\u1f77\u0007\u0014\u0002\u0002\u1f70\u1f72\u0005\u01a8",
+ "\u00d5\u0002\u1f71\u1f70\u0003\u0002\u0002\u0002\u1f72\u1f75\u0003\u0002",
+ "\u0002\u0002\u1f73\u1f71\u0003\u0002\u0002\u0002\u1f73\u1f74\u0003\u0002",
+ "\u0002\u0002\u1f74\u1f78\u0003\u0002\u0002\u0002\u1f75\u1f73\u0003\u0002",
+ "\u0002\u0002\u1f76\u1f78\u0005\u01a6\u00d4\u0002\u1f77\u1f73\u0003\u0002",
+ "\u0002\u0002\u1f77\u1f76\u0003\u0002\u0002\u0002\u1f78\u1f9c\u0003\u0002",
+ "\u0002\u0002\u1f79\u1f8a\u0007\u0361\u0002\u0002\u1f7a\u1f7b\u0007\u0103",
+ "\u0002\u0002\u1f7b\u1f8b\u0005\u0576\u02bc\u0002\u1f7c\u1f7d\u0007\u051a",
+ "\u0002\u0002\u1f7d\u1f8b\u0007\u02d4\u0002\u0002\u1f7e\u1f7f\u0007\u07d4",
+ "\u0002\u0002\u1f7f\u1f80\u0007\u08b1\u0002\u0002\u1f80\u1f85\u0005\u0592",
+ "\u02ca\u0002\u1f81\u1f82\u0007\u08b7\u0002\u0002\u1f82\u1f84\u0005\u0592",
+ "\u02ca\u0002\u1f83\u1f81\u0003\u0002\u0002\u0002\u1f84\u1f87\u0003\u0002",
+ "\u0002\u0002\u1f85\u1f83\u0003\u0002\u0002\u0002\u1f85\u1f86\u0003\u0002",
+ "\u0002\u0002\u1f86\u1f88\u0003\u0002\u0002\u0002\u1f87\u1f85\u0003\u0002",
+ "\u0002\u0002\u1f88\u1f89\u0007\u08b2\u0002\u0002\u1f89\u1f8b\u0003\u0002",
+ "\u0002\u0002\u1f8a\u1f7a\u0003\u0002\u0002\u0002\u1f8a\u1f7c\u0003\u0002",
+ "\u0002\u0002\u1f8a\u1f7e\u0003\u0002\u0002\u0002\u1f8b\u1f8c\u0003\u0002",
+ "\u0002\u0002\u1f8c\u1f8e\u0005\u01aa\u00d6\u0002\u1f8d\u1f8f\u0007\u00a4",
+ "\u0002\u0002\u1f8e\u1f8d\u0003\u0002\u0002\u0002\u1f8e\u1f8f\u0003\u0002",
+ "\u0002\u0002\u1f8f\u1f9c\u0003\u0002\u0002\u0002\u1f90\u1f91\u0007\u057e",
+ "\u0002\u0002\u1f91\u1f92\u0007\u0103\u0002\u0002\u1f92\u1f93\u0005\u036a",
+ "\u01b6\u0002\u1f93\u1f94\u0007\u07ae\u0002\u0002\u1f94\u1f95\u0005\u036c",
+ "\u01b7\u0002\u1f95\u1f9c\u0003\u0002\u0002\u0002\u1f96\u1f98\u0005\u036e",
+ "\u01b8\u0002\u1f97\u1f96\u0003\u0002\u0002\u0002\u1f98\u1f99\u0003\u0002",
+ "\u0002\u0002\u1f99\u1f97\u0003\u0002\u0002\u0002\u1f99\u1f9a\u0003\u0002",
+ "\u0002\u0002\u1f9a\u1f9c\u0003\u0002\u0002\u0002\u1f9b\u1f63\u0003\u0002",
+ "\u0002\u0002\u1f9b\u1f6f\u0003\u0002\u0002\u0002\u1f9b\u1f79\u0003\u0002",
+ "\u0002\u0002\u1f9b\u1f90\u0003\u0002\u0002\u0002\u1f9b\u1f97\u0003\u0002",
+ "\u0002\u0002\u1f9c\u0369\u0003\u0002\u0002\u0002\u1f9d\u1f9e\u0005\u0576",
+ "\u02bc\u0002\u1f9e\u036b\u0003\u0002\u0002\u0002\u1f9f\u1fa0\u0005\u0576",
+ "\u02bc\u0002\u1fa0\u036d\u0003\u0002\u0002\u0002\u1fa1\u1fa2\u0007\u019d",
+ "\u0002\u0002\u1fa2\u1fa3\u0005\u0370\u01b9\u0002\u1fa3\u036f\u0003\u0002",
+ "\u0002\u0002\u1fa4\u1fa5\u0007\u051a\u0002\u0002\u1fa5\u1fb3\u0007\u02d4",
+ "\u0002\u0002\u1fa6\u1fa7\u0007\u07d4\u0002\u0002\u1fa7\u1fa8\u0007\u08b1",
+ "\u0002\u0002\u1fa8\u1fad\u0005\u0592\u02ca\u0002\u1fa9\u1faa\u0007\u08b7",
+ "\u0002\u0002\u1faa\u1fac\u0005\u0592\u02ca\u0002\u1fab\u1fa9\u0003\u0002",
+ "\u0002\u0002\u1fac\u1faf\u0003\u0002\u0002\u0002\u1fad\u1fab\u0003\u0002",
+ "\u0002\u0002\u1fad\u1fae\u0003\u0002\u0002\u0002\u1fae\u1fb0\u0003\u0002",
+ "\u0002\u0002\u1faf\u1fad\u0003\u0002\u0002\u0002\u1fb0\u1fb1\u0007\u08b2",
+ "\u0002\u0002\u1fb1\u1fb3\u0003\u0002\u0002\u0002\u1fb2\u1fa4\u0003\u0002",
+ "\u0002\u0002\u1fb2\u1fa6\u0003\u0002\u0002\u0002\u1fb3\u1fb5\u0003\u0002",
+ "\u0002\u0002\u1fb4\u1fb6\u0007\u00a4\u0002\u0002\u1fb5\u1fb4\u0003\u0002",
+ "\u0002\u0002\u1fb5\u1fb6\u0003\u0002\u0002\u0002\u1fb6\u1fb8\u0003\u0002",
+ "\u0002\u0002\u1fb7\u1fb9\tP\u0002\u0002\u1fb8\u1fb7\u0003\u0002\u0002",
+ "\u0002\u1fb8\u1fb9\u0003\u0002\u0002\u0002\u1fb9\u1fc0\u0003\u0002\u0002",
+ "\u0002\u1fba\u1fbb\u0007\u0103\u0002\u0002\u1fbb\u1fbd\u0005\u0576\u02bc",
+ "\u0002\u1fbc\u1fbe\u0007\u00a4\u0002\u0002\u1fbd\u1fbc\u0003\u0002\u0002",
+ "\u0002\u1fbd\u1fbe\u0003\u0002\u0002\u0002\u1fbe\u1fc0\u0003\u0002\u0002",
+ "\u0002\u1fbf\u1fb2\u0003\u0002\u0002\u0002\u1fbf\u1fba\u0003\u0002\u0002",
+ "\u0002\u1fc0\u0371\u0003\u0002\u0002\u0002\u1fc1\u1fc4\u0007\u0014\u0002",
+ "\u0002\u1fc2\u1fc3\u0007\u0103\u0002\u0002\u1fc3\u1fc5\u0005\u0576\u02bc",
+ "\u0002\u1fc4\u1fc2\u0003\u0002\u0002\u0002\u1fc4\u1fc5\u0003\u0002\u0002",
+ "\u0002\u1fc5\u1fc6\u0003\u0002\u0002\u0002\u1fc6\u1fcd\u0005\u0374\u01bb",
+ "\u0002\u1fc7\u1fca\u0007\u08b7\u0002\u0002\u1fc8\u1fc9\u0007\u0103\u0002",
+ "\u0002\u1fc9\u1fcb\u0005\u0576\u02bc\u0002\u1fca\u1fc8\u0003\u0002\u0002",
+ "\u0002\u1fca\u1fcb\u0003\u0002\u0002\u0002\u1fcb\u1fcc\u0003\u0002\u0002",
+ "\u0002\u1fcc\u1fce\u0005\u0374\u01bb\u0002\u1fcd\u1fc7\u0003\u0002\u0002",
+ "\u0002\u1fce\u1fcf\u0003\u0002\u0002\u0002\u1fcf\u1fcd\u0003\u0002\u0002",
+ "\u0002\u1fcf\u1fd0\u0003\u0002\u0002\u0002\u1fd0\u0373\u0003\u0002\u0002",
+ "\u0002\u1fd1\u1fd6\u0005\u0386\u01c4\u0002\u1fd2\u1fd6\u0005\u037e\u01c0",
+ "\u0002\u1fd3\u1fd6\u0005\u0384\u01c3\u0002\u1fd4\u1fd6\u0005\u0376\u01bc",
+ "\u0002\u1fd5\u1fd1\u0003\u0002\u0002\u0002\u1fd5\u1fd2\u0003\u0002\u0002",
+ "\u0002\u1fd5\u1fd3\u0003\u0002\u0002\u0002\u1fd5\u1fd4\u0003\u0002\u0002",
+ "\u0002\u1fd6\u0375\u0003\u0002\u0002\u0002\u1fd7\u1fd8\u0007\u00b6\u0002",
+ "\u0002\u1fd8\u1fd9\u0007\u08b1\u0002\u0002\u1fd9\u1fda\u0005\u04d0\u0269",
+ "\u0002\u1fda\u1fdc\u0007\u08b2\u0002\u0002\u1fdb\u1fdd\u0007\u0181\u0002",
+ "\u0002\u1fdc\u1fdb\u0003\u0002\u0002\u0002\u1fdc\u1fdd\u0003\u0002\u0002",
+ "\u0002\u1fdd\u0377\u0003\u0002\u0002\u0002\u1fde\u1fdf\u0007\u019d\u0002",
+ "\u0002\u1fdf\u1fe0\u0007\u0103\u0002\u0002\u1fe0\u1fe1\u0005\u0576\u02bc",
+ "\u0002\u1fe1\u0379\u0003\u0002\u0002\u0002\u1fe2\u1fe3\u0007\u01b9\u0002",
+ "\u0002\u1fe3\u1fe4\u0007\u0103\u0002\u0002\u1fe4\u1fe5\u0005\u0576\u02bc",
+ "\u0002\u1fe5\u037b\u0003\u0002\u0002\u0002\u1fe6\u1fe7\u0007\u0181\u0002",
+ "\u0002\u1fe7\u1fe8\u0007\u0103\u0002\u0002\u1fe8\u1fe9\u0005\u0576\u02bc",
+ "\u0002\u1fe9\u037d\u0003\u0002\u0002\u0002\u1fea\u1feb\u0007\u0222\u0002",
+ "\u0002\u1feb\u1fec\u0007\u02d4\u0002\u0002\u1fec\u1fed\u0005\u05a6\u02d4",
+ "\u0002\u1fed\u1fef\u0005\u0380\u01c1\u0002\u1fee\u1ff0\u0005\u0382\u01c2",
+ "\u0002\u1fef\u1fee\u0003\u0002\u0002\u0002\u1fef\u1ff0\u0003\u0002\u0002",
+ "\u0002\u1ff0\u037f\u0003\u0002\u0002\u0002\u1ff1\u1ff2\u0007\u0560\u0002",
+ "\u0002\u1ff2\u1ff3\u0005\u0594\u02cb\u0002\u1ff3\u1ff4\u0005\u05a6\u02d4",
+ "\u0002\u1ff4\u0381\u0003\u0002\u0002\u0002\u1ff5\u1ff6\u0007\u046a\u0002",
+ "\u0002\u1ff6\u1ffa\u0007\u016c\u0002\u0002\u1ff7\u1ffb\u0007\u00a4\u0002",
+ "\u0002\u1ff8\u1ff9\u0007\u05e8\u0002\u0002\u1ff9\u1ffb\u0007\u044b\u0002",
+ "\u0002\u1ffa\u1ff7\u0003\u0002\u0002\u0002\u1ffa\u1ff8\u0003\u0002\u0002",
+ "\u0002\u1ffb\u0383\u0003\u0002\u0002\u0002\u1ffc\u1ffd\u0007\u07d4\u0002",
+ "\u0002\u1ffd\u1fff\u0005\u05a6\u02d4\u0002\u1ffe\u2000\u0005\u0300\u0181",
+ "\u0002\u1fff\u1ffe\u0003\u0002\u0002\u0002\u1fff\u2000\u0003\u0002\u0002",
+ "\u0002\u2000\u0385\u0003\u0002\u0002\u0002\u2001\u2002\u0007\u051a\u0002",
+ "\u0002\u2002\u2003\u0007\u02d4\u0002\u0002\u2003\u2005\u0005\u05a6\u02d4",
+ "\u0002\u2004\u2006\u0005\u0300\u0181\u0002\u2005\u2004\u0003\u0002\u0002",
+ "\u0002\u2005\u2006\u0003\u0002\u0002\u0002\u2006\u0387\u0003\u0002\u0002",
+ "\u0002\u2007\u2008\u0007\u015a\u0002\u0002\u2008\u200a\u0005\u039a\u01ce",
+ "\u0002\u2009\u2007\u0003\u0002\u0002\u0002\u2009\u200a\u0003\u0002\u0002",
+ "\u0002\u200a\u200b\u0003\u0002\u0002\u0002\u200b\u200c\u0007h\u0002",
+ "\u0002\u200c\u2013\u0005\u03b8\u01dd\u0002\u200d\u200f\u0007\u01d6\u0002",
+ "\u0002\u200e\u2010\u0005\u03ea\u01f6\u0002\u200f\u200e\u0003\u0002\u0002",
+ "\u0002\u2010\u2011\u0003\u0002\u0002\u0002\u2011\u200f\u0003\u0002\u0002",
+ "\u0002\u2011\u2012\u0003\u0002\u0002\u0002\u2012\u2014\u0003\u0002\u0002",
+ "\u0002\u2013\u200d\u0003\u0002\u0002\u0002\u2013\u2014\u0003\u0002\u0002",
+ "\u0002\u2014\u2015\u0003\u0002\u0002\u0002\u2015\u2016\u0007\u01bf\u0002",
+ "\u0002\u2016\u2017\u0007\u08c3\u0002\u0002\u2017\u0389\u0003\u0002\u0002",
+ "\u0002\u2018\u2019\u0007R\u0002\u0002\u2019\u201a\tW\u0002\u0002\u201a",
+ "\u038b\u0003\u0002\u0002\u0002\u201b\u201e\u0007\u02db\u0002\u0002\u201c",
+ "\u201f\u0005\u038e\u01c8\u0002\u201d\u201f\u0005\u0390\u01c9\u0002\u201e",
+ "\u201c\u0003\u0002\u0002\u0002\u201e\u201d\u0003\u0002\u0002\u0002\u201f",
+ "\u038d\u0003\u0002\u0002\u0002\u2020\u2021\u0007\u02be\u0002\u0002\u2021",
+ "\u2022\u0007\u0371\u0002\u0002\u2022\u2023\u0007\u08ad\u0002\u0002\u2023",
+ "\u038f\u0003\u0002\u0002\u0002\u2024\u2027\u0007\u00c0\u0002\u0002\u2025",
+ "\u2026\u0007\u0371\u0002\u0002\u2026\u2028\u0007\u08ad\u0002\u0002\u2027",
+ "\u2025\u0003\u0002\u0002\u0002\u2027\u2028\u0003\u0002\u0002\u0002\u2028",
+ "\u2029\u0003\u0002\u0002\u0002\u2029\u202a\u0007\u02ef\u0002\u0002\u202a",
+ "\u202c\u0005\u05d0\u02e9\u0002\u202b\u202d\u0005\u0392\u01ca\u0002\u202c",
+ "\u202b\u0003\u0002\u0002\u0002\u202c\u202d\u0003\u0002\u0002\u0002\u202d",
+ "\u2030\u0003\u0002\u0002\u0002\u202e\u202f\u0007\u084b\u0002\u0002\u202f",
+ "\u2031\u0007\u010b\u0002\u0002\u2030\u202e\u0003\u0002\u0002\u0002\u2030",
+ "\u2031\u0003\u0002\u0002\u0002\u2031\u2033\u0003\u0002\u0002\u0002\u2032",
+ "\u2034\u0005\u0394\u01cb\u0002\u2033\u2032\u0003\u0002\u0002\u0002\u2033",
+ "\u2034\u0003\u0002\u0002\u0002\u2034\u0391\u0003\u0002\u0002\u0002\u2035",
+ "\u2036\u0007!\u0002\u0002\u2036\u2037\u0007\u028e\u0002\u0002\u2037",
+ "\u2038\u0007\u08b1\u0002\u0002\u2038\u2039\u0005\u04d2\u026a\u0002\u2039",
+ "\u203a\u0007\u08b2\u0002\u0002\u203a\u0393\u0003\u0002\u0002\u0002\u203b",
+ "\u203c\u0007\u04af\u0002\u0002\u203c\u2041\u0007\u08b1\u0002\u0002\u203d",
+ "\u2042\u0005\u04d2\u026a\u0002\u203e\u203f\u0007\u08aa\u0002\u0002\u203f",
+ "\u2040\u0007\u08aa\u0002\u0002\u2040\u2042\u0007\u08aa\u0002\u0002\u2041",
+ "\u203d\u0003\u0002\u0002\u0002\u2041\u203e\u0003\u0002\u0002\u0002\u2042",
+ "\u2043\u0003\u0002\u0002\u0002\u2043\u2044\u0007\u08b2\u0002\u0002\u2044",
+ "\u0395\u0003\u0002\u0002\u0002\u2045\u2049\u0005\u0566\u02b4\u0002\u2046",
+ "\u2048\tX\u0002\u0002\u2047\u2046\u0003\u0002\u0002\u0002\u2048\u204b",
+ "\u0003\u0002\u0002\u0002\u2049\u2047\u0003\u0002\u0002\u0002\u2049\u204a",
+ "\u0003\u0002\u0002\u0002\u204a\u204d\u0003\u0002\u0002\u0002\u204b\u2049",
+ "\u0003\u0002\u0002\u0002\u204c\u204e\u0005\u05b4\u02db\u0002\u204d\u204c",
+ "\u0003\u0002\u0002\u0002\u204d\u204e\u0003\u0002\u0002\u0002\u204e\u2050",
+ "\u0003\u0002\u0002\u0002\u204f\u2051\u0005\u0398\u01cd\u0002\u2050\u204f",
+ "\u0003\u0002\u0002\u0002\u2050\u2051\u0003\u0002\u0002\u0002\u2051\u0397",
+ "\u0003\u0002\u0002\u0002\u2052\u2053\tY\u0002\u0002\u2053\u2054\u0005",
+ "\u04d4\u026b\u0002\u2054\u0399\u0003\u0002\u0002\u0002\u2055\u2057\u0005",
+ "\u039c\u01cf\u0002\u2056\u2055\u0003\u0002\u0002\u0002\u2057\u2058\u0003",
+ "\u0002\u0002\u0002\u2058\u2056\u0003\u0002\u0002\u0002\u2058\u2059\u0003",
+ "\u0002\u0002\u0002\u2059\u039b\u0003\u0002\u0002\u0002\u205a\u2065\u0005",
+ "\u03a8\u01d5\u0002\u205b\u2065\u0005\u039e\u01d0\u0002\u205c\u2065\u0005",
+ "\u03a0\u01d1\u0002\u205d\u2065\u0005\u03a2\u01d2\u0002\u205e\u2065\u0005",
+ "\u03a6\u01d4\u0002\u205f\u2065\u0005\u03b0\u01d9\u0002\u2060\u2065\u0005",
+ "\"\u0012\u0002\u2061\u2065\u0005$\u0013\u0002\u2062\u2065\u0005.\u0018",
+ "\u0002\u2063\u2065\u0005,\u0017\u0002\u2064\u205a\u0003\u0002\u0002",
+ "\u0002\u2064\u205b\u0003\u0002\u0002\u0002\u2064\u205c\u0003\u0002\u0002",
+ "\u0002\u2064\u205d\u0003\u0002\u0002\u0002\u2064\u205e\u0003\u0002\u0002",
+ "\u0002\u2064\u205f\u0003\u0002\u0002\u0002\u2064\u2060\u0003\u0002\u0002",
+ "\u0002\u2064\u2061\u0003\u0002\u0002\u0002\u2064\u2062\u0003\u0002\u0002",
+ "\u0002\u2064\u2063\u0003\u0002\u0002\u0002\u2065\u039d\u0003\u0002\u0002",
+ "\u0002\u2066\u2068\u0005\u05d0\u02e9\u0002\u2067\u2069\u0007\u0101\u0002",
+ "\u0002\u2068\u2067\u0003\u0002\u0002\u0002\u2068\u2069\u0003\u0002\u0002",
+ "\u0002\u2069\u206a\u0003\u0002\u0002\u0002\u206a\u206d\u0005\u05b4\u02db",
+ "\u0002\u206b\u206c\u0007\u0433\u0002\u0002\u206c\u206e\u0007\u044b\u0002",
+ "\u0002\u206d\u206b\u0003\u0002\u0002\u0002\u206d\u206e\u0003\u0002\u0002",
+ "\u0002\u206e\u2070\u0003\u0002\u0002\u0002\u206f\u2071\u0005\u0398\u01cd",
+ "\u0002\u2070\u206f\u0003\u0002\u0002\u0002\u2070\u2071\u0003\u0002\u0002",
+ "\u0002\u2071\u2072\u0003\u0002\u0002\u0002\u2072\u2073\u0007\u08c3\u0002",
+ "\u0002\u2073\u039f\u0003\u0002\u0002\u0002\u2074\u2075\u0007\u0652\u0002",
+ "\u0002\u2075\u2076\u0005\u05d0\u02e9\u0002\u2076\u2077\u0007\u02b9\u0002",
+ "\u0002\u2077\u207d\u0005\u05b4\u02db\u0002\u2078\u2079\u0007\u0542\u0002",
+ "\u0002\u2079\u207a\u0005\u04d4\u026b\u0002\u207a\u207b\u0007\u08a9\u0002",
+ "\u0002\u207b\u207c\u0005\u04d4\u026b\u0002\u207c\u207e\u0003\u0002\u0002",
+ "\u0002\u207d\u2078\u0003\u0002\u0002\u0002\u207d\u207e\u0003\u0002\u0002",
+ "\u0002\u207e\u2081\u0003\u0002\u0002\u0002\u207f\u2080\u0007\u0433\u0002",
+ "\u0002\u2080\u2082\u0007\u044b\u0002\u0002\u2081\u207f\u0003\u0002\u0002",
+ "\u0002\u2081\u2082\u0003\u0002\u0002\u0002\u2082\u2083\u0003\u0002\u0002",
+ "\u0002\u2083\u2084\u0007\u08c3\u0002\u0002\u2084\u03a1\u0003\u0002\u0002",
+ "\u0002\u2085\u2086\u0007\u0137\u0002\u0002\u2086\u2092\u0005\u05d0\u02e9",
+ "\u0002\u2087\u2088\u0007\u08b1\u0002\u0002\u2088\u208d\u0005\u03a4\u01d3",
+ "\u0002\u2089\u208a\u0007\u08b7\u0002\u0002\u208a\u208c\u0005\u03a4\u01d3",
+ "\u0002\u208b\u2089\u0003\u0002\u0002\u0002\u208c\u208f\u0003\u0002\u0002",
+ "\u0002\u208d\u208b\u0003\u0002\u0002\u0002\u208d\u208e\u0003\u0002\u0002",
+ "\u0002\u208e\u2090\u0003\u0002\u0002\u0002\u208f\u208d\u0003\u0002\u0002",
+ "\u0002\u2090\u2091\u0007\u08b2\u0002\u0002\u2091\u2093\u0003\u0002\u0002",
+ "\u0002\u2092\u2087\u0003\u0002\u0002\u0002\u2092\u2093\u0003\u0002\u0002",
+ "\u0002\u2093\u2096\u0003\u0002\u0002\u0002\u2094\u2095\u0007\u0599\u0002",
+ "\u0002\u2095\u2097\u0005\u05b4\u02db\u0002\u2096\u2094\u0003\u0002\u0002",
+ "\u0002\u2096\u2097\u0003\u0002\u0002\u0002\u2097\u209a\u0003\u0002\u0002",
+ "\u0002\u2098\u2099\u0007\u02b9\u0002\u0002\u2099\u209b\u0005\u0414\u020b",
+ "\u0002\u209a\u2098\u0003\u0002\u0002\u0002\u209a\u209b\u0003\u0002\u0002",
+ "\u0002\u209b\u209c\u0003\u0002\u0002\u0002\u209c\u209d\u0007\u08c3\u0002",
+ "\u0002\u209d\u03a3\u0003\u0002\u0002\u0002\u209e\u20a3\u0005\u0566\u02b4",
+ "\u0002\u209f\u20a1\u0007\u028e\u0002\u0002\u20a0\u209f\u0003\u0002\u0002",
+ "\u0002\u20a0\u20a1\u0003\u0002\u0002\u0002\u20a1\u20a2\u0003\u0002\u0002",
+ "\u0002\u20a2\u20a4\u0005\u05b4\u02db\u0002\u20a3\u20a0\u0003\u0002\u0002",
+ "\u0002\u20a3\u20a4\u0003\u0002\u0002\u0002\u20a4\u20a6\u0003\u0002\u0002",
+ "\u0002\u20a5\u20a7\u0005\u0398\u01cd\u0002\u20a6\u20a5\u0003\u0002\u0002",
+ "\u0002\u20a6\u20a7\u0003\u0002\u0002\u0002\u20a7\u03a5\u0003\u0002\u0002",
+ "\u0002\u20a8\u20a9\u0005\u05d0\u02e9\u0002\u20a9\u20aa\u0007\u01d6\u0002",
+ "\u0002\u20aa\u20ab\u0007\u08c3\u0002\u0002\u20ab\u03a7\u0003\u0002\u0002",
+ "\u0002\u20ac\u20cb\u0007\u0509\u0002\u0002\u20ad\u20cc\u0007\u05de\u0002",
+ "\u0002\u20ae\u20cc\u0007Z\u0002\u0002\u20af\u20b0\u0007\u01d7\u0002",
+ "\u0002\u20b0\u20b1\u0007\u08b1\u0002\u0002\u20b1\u20b2\u0005\u057e\u02c0",
+ "\u0002\u20b2\u20b3\u0007\u08b7\u0002\u0002\u20b3\u20b4\u0005\u05cc\u02e7",
+ "\u0002\u20b4\u20b5\u0007\u08b2\u0002\u0002\u20b5\u20cc\u0003\u0002\u0002",
+ "\u0002\u20b6\u20b7\u0007\u0294\u0002\u0002\u20b7\u20b8\u0007\u08b1\u0002",
+ "\u0002\u20b8\u20b9\u0005\u05d0\u02e9\u0002\u20b9\u20ba\u0007\u08b7\u0002",
+ "\u0002\u20ba\u20bb\u0005\u04d4\u026b\u0002\u20bb\u20bc\u0007\u08b2\u0002",
+ "\u0002\u20bc\u20cc\u0003\u0002\u0002\u0002\u20bd\u20be\u0007\u0590\u0002",
+ "\u0002\u20be\u20c1\u0007\u08b1\u0002\u0002\u20bf\u20c2\u0005\u05d0\u02e9",
+ "\u0002\u20c0\u20c2\u0007\u0161\u0002\u0002\u20c1\u20bf\u0003\u0002\u0002",
+ "\u0002\u20c1\u20c0\u0003\u0002\u0002\u0002\u20c2\u20c5\u0003\u0002\u0002",
+ "\u0002\u20c3\u20c4\u0007\u08b7\u0002\u0002\u20c4\u20c6\u0005\u05d0\u02e9",
+ "\u0002\u20c5\u20c3\u0003\u0002\u0002\u0002\u20c6\u20c7\u0003\u0002\u0002",
+ "\u0002\u20c7\u20c5\u0003\u0002\u0002\u0002\u20c7\u20c8\u0003\u0002\u0002",
+ "\u0002\u20c8\u20c9\u0003\u0002\u0002\u0002\u20c9\u20ca\u0007\u08b2\u0002",
+ "\u0002\u20ca\u20cc\u0003\u0002\u0002\u0002\u20cb\u20ad\u0003\u0002\u0002",
+ "\u0002\u20cb\u20ae\u0003\u0002\u0002\u0002\u20cb\u20af\u0003\u0002\u0002",
+ "\u0002\u20cb\u20b6\u0003\u0002\u0002\u0002\u20cb\u20bd\u0003\u0002\u0002",
+ "\u0002\u20cc\u20cd\u0003\u0002\u0002\u0002\u20cd\u20ce\u0007\u08c3\u0002",
+ "\u0002\u20ce\u03a9\u0003\u0002\u0002\u0002\u20cf\u20d0\u0007\u0551\u0002",
+ "\u0002\u20d0\u20d1\u0007\u08b1\u0002\u0002\u20d1\u20d6\u0005\u03ac\u01d7",
+ "\u0002\u20d2\u20d3\u0007\u08b7\u0002\u0002\u20d3\u20d5\u0005\u03ac\u01d7",
+ "\u0002\u20d4\u20d2\u0003\u0002\u0002\u0002\u20d5\u20d8\u0003\u0002\u0002",
+ "\u0002\u20d6\u20d4\u0003\u0002\u0002\u0002\u20d6\u20d7\u0003\u0002\u0002",
+ "\u0002\u20d7\u20d9\u0003\u0002\u0002\u0002\u20d8\u20d6\u0003\u0002\u0002",
+ "\u0002\u20d9\u20da\u0007\u08b2\u0002\u0002\u20da\u03ab\u0003\u0002\u0002",
+ "\u0002\u20db\u20dd\u0005\u0592\u02ca\u0002\u20dc\u20de\u0005\u05b4\u02db",
+ "\u0002\u20dd\u20dc\u0003\u0002\u0002\u0002\u20dd\u20de\u0003\u0002\u0002",
+ "\u0002\u20de\u20e1\u0003\u0002\u0002\u0002\u20df\u20e0\u0007\u0433\u0002",
+ "\u0002\u20e0\u20e2\u0007\u044b\u0002\u0002\u20e1\u20df\u0003\u0002\u0002",
+ "\u0002\u20e1\u20e2\u0003\u0002\u0002\u0002\u20e2\u20e4\u0003\u0002\u0002",
+ "\u0002\u20e3\u20e5\u0005\u0398\u01cd\u0002\u20e4\u20e3\u0003\u0002\u0002",
+ "\u0002\u20e4\u20e5\u0003\u0002\u0002\u0002\u20e5\u03ad\u0003\u0002\u0002",
+ "\u0002\u20e6\u20e7\u0007\u0562\u0002\u0002\u20e7\u20ea\u0007\u0137\u0002",
+ "\u0002\u20e8\u20e9\u0007\u0599\u0002\u0002\u20e9\u20eb\u0005\u05b4\u02db",
+ "\u0002\u20ea\u20e8\u0003\u0002\u0002\u0002\u20ea\u20eb\u0003\u0002\u0002",
+ "\u0002\u20eb\u03af\u0003\u0002\u0002\u0002\u20ec\u20ed\u0007\u07c5\u0002",
+ "\u0002\u20ed\u20ee\u0005\u05d0\u02e9\u0002\u20ee\u20f3\u0007\u02b9\u0002",
+ "\u0002\u20ef\u20f4\u0005\u03b2\u01da\u0002\u20f0\u20f4\u0005\u03b6\u01dc",
+ "\u0002\u20f1\u20f4\u0005\u03aa\u01d6\u0002\u20f2\u20f4\u0005\u03ae\u01d8",
+ "\u0002\u20f3\u20ef\u0003\u0002\u0002\u0002\u20f3\u20f0\u0003\u0002\u0002",
+ "\u0002\u20f3\u20f1\u0003\u0002\u0002\u0002\u20f3\u20f2\u0003\u0002\u0002",
+ "\u0002\u20f4\u20f5\u0003\u0002\u0002\u0002\u20f5\u20f6\u0007\u08c3\u0002",
+ "\u0002\u20f6\u03b1\u0003\u0002\u0002\u0002\u20f7\u20f8\u0007\u077a\u0002",
+ "\u0002\u20f8\u20f9\u0007\u045d\u0002\u0002\u20f9\u20fb\u0005\u05b4\u02db",
+ "\u0002\u20fa\u20fc\u0005\u03b4\u01db\u0002\u20fb\u20fa\u0003\u0002\u0002",
+ "\u0002\u20fb\u20fc\u0003\u0002\u0002\u0002\u20fc\u20ff\u0003\u0002\u0002",
+ "\u0002\u20fd\u20fe\u0007\u0433\u0002\u0002\u20fe\u2100\u0007\u044b\u0002",
+ "\u0002\u20ff\u20fd\u0003\u0002\u0002\u0002\u20ff\u2100\u0003\u0002\u0002",
+ "\u0002\u2100\u03b3\u0003\u0002\u0002\u0002\u2101\u2104\u0007\u0275\u0002",
+ "\u0002\u2102\u2104\u0007\u0279\u0002\u0002\u2103\u2101\u0003\u0002\u0002",
+ "\u0002\u2103\u2102\u0003\u0002\u0002\u0002\u2104\u2105\u0003\u0002\u0002",
+ "\u0002\u2105\u2106\u0007\u0094\u0002\u0002\u2106\u2107\u0005\u05b4\u02db",
+ "\u0002\u2107\u03b5\u0003\u0002\u0002\u0002\u2108\u210c\u0007\u0822\u0002",
+ "\u0002\u2109\u210a\u0007\u0824\u0002\u0002\u210a\u210c\u0007>\u0002",
+ "\u0002\u210b\u2108\u0003\u0002\u0002\u0002\u210b\u2109\u0003\u0002\u0002",
+ "\u0002\u210c\u210d\u0003\u0002\u0002\u0002\u210d\u210e\u0007\u08b1\u0002",
+ "\u0002\u210e\u210f\u0005\u04d4\u026b\u0002\u210f\u2110\u0007\u08b2\u0002",
+ "\u0002\u2110\u2111\u0007\u045d\u0002\u0002\u2111\u2114\u0005\u05b4\u02db",
+ "\u0002\u2112\u2113\u0007\u0433\u0002\u0002\u2113\u2115\u0007\u044b\u0002",
+ "\u0002\u2114\u2112\u0003\u0002\u0002\u0002\u2114\u2115\u0003\u0002\u0002",
+ "\u0002\u2115\u03b7\u0003\u0002\u0002\u0002\u2116\u2117\u0005\u03bc\u01df",
+ "\u0002\u2117\u2118\tZ\u0002\u0002\u2118\u211b\u0003\u0002\u0002\u0002",
+ "\u2119\u211b\u0005\u03ba\u01de\u0002\u211a\u2116\u0003\u0002\u0002\u0002",
+ "\u211a\u2119\u0003\u0002\u0002\u0002\u211b\u211c\u0003\u0002\u0002\u0002",
+ "\u211c\u211a\u0003\u0002\u0002\u0002\u211c\u211d\u0003\u0002\u0002\u0002",
+ "\u211d\u03b9\u0003\u0002\u0002\u0002\u211e\u211f\u0007\u08c1\u0002\u0002",
+ "\u211f\u2120\u0007\u08c1\u0002\u0002\u2120\u2121\u0005\u0578\u02bd\u0002",
+ "\u2121\u2122\u0007\u08c0\u0002\u0002\u2122\u2123\u0007\u08c0\u0002\u0002",
+ "\u2123\u03bb\u0003\u0002\u0002\u0002\u2124\u2136\u0005\u03e8\u01f5\u0002",
+ "\u2125\u2136\u0005\u03ee\u01f8\u0002\u2126\u2136\u0005\u03c0\u01e1\u0002",
+ "\u2127\u2136\u0005\u03c2\u01e2\u0002\u2128\u2136\u0005\u03c4\u01e3\u0002",
+ "\u2129\u2136\u0005\u03c6\u01e4\u0002\u212a\u2136\u0005\u03c8\u01e5\u0002",
+ "\u212b\u2136\u0005\u03ce\u01e8\u0002\u212c\u2136\u0005\u03d2\u01ea\u0002",
+ "\u212d\u2136\u0005\u03dc\u01ef\u0002\u212e\u2136\u0005\u03de\u01f0\u0002",
+ "\u212f\u2136\u0005\u03e0\u01f1\u0002\u2130\u2136\u0005\u04f8\u027d\u0002",
+ "\u2131\u2136\u0005\u03f0\u01f9\u0002\u2132\u2136\u0005\u03e2\u01f2\u0002",
+ "\u2133\u2136\u0005\u03e6\u01f4\u0002\u2134\u2136\u0005\u03e4\u01f3\u0002",
+ "\u2135\u2124\u0003\u0002\u0002\u0002\u2135\u2125\u0003\u0002\u0002\u0002",
+ "\u2135\u2126\u0003\u0002\u0002\u0002\u2135\u2127\u0003\u0002\u0002\u0002",
+ "\u2135\u2128\u0003\u0002\u0002\u0002\u2135\u2129\u0003\u0002\u0002\u0002",
+ "\u2135\u212a\u0003\u0002\u0002\u0002\u2135\u212b\u0003\u0002\u0002\u0002",
+ "\u2135\u212c\u0003\u0002\u0002\u0002\u2135\u212d\u0003\u0002\u0002\u0002",
+ "\u2135\u212e\u0003\u0002\u0002\u0002\u2135\u212f\u0003\u0002\u0002\u0002",
+ "\u2135\u2130\u0003\u0002\u0002\u0002\u2135\u2131\u0003\u0002\u0002\u0002",
+ "\u2135\u2132\u0003\u0002\u0002\u0002\u2135\u2133\u0003\u0002\u0002\u0002",
+ "\u2135\u2134\u0003\u0002\u0002\u0002\u2136\u03bd\u0003\u0002\u0002\u0002",
+ "\u2137\u2139\n[\u0002\u0002\u2138\u2137\u0003\u0002\u0002\u0002\u2139",
+ "\u213a\u0003\u0002\u0002\u0002\u213a\u2138\u0003\u0002\u0002\u0002\u213a",
+ "\u213b\u0003\u0002\u0002\u0002\u213b\u03bf\u0003\u0002\u0002\u0002\u213c",
+ "\u213f\u0005\u05be\u02e0\u0002\u213d\u213f\u0005\u05bc\u02df\u0002\u213e",
+ "\u213c\u0003\u0002\u0002\u0002\u213e\u213d\u0003\u0002\u0002\u0002\u213f",
+ "\u2140\u0003\u0002\u0002\u0002\u2140\u2141\u0007\u08ba\u0002\u0002\u2141",
+ "\u2142\u0005\u04d4\u026b\u0002\u2142\u03c1\u0003\u0002\u0002\u0002\u2143",
+ "\u2145\u0007\u010c\u0002\u0002\u2144\u2146\u0005\u0578\u02bd\u0002\u2145",
+ "\u2144\u0003\u0002\u0002\u0002\u2145\u2146\u0003\u0002\u0002\u0002\u2146",
+ "\u2149\u0003\u0002\u0002\u0002\u2147\u2148\u0007\u0843\u0002\u0002\u2148",
+ "\u214a\u0005\u04d0\u0269\u0002\u2149\u2147\u0003\u0002\u0002\u0002\u2149",
+ "\u214a\u0003\u0002\u0002\u0002\u214a\u03c3\u0003\u0002\u0002\u0002\u214b",
+ "\u214d\u0007\u01e2\u0002\u0002\u214c\u214e\u0005\u0578\u02bd\u0002\u214d",
+ "\u214c\u0003\u0002\u0002\u0002\u214d\u214e\u0003\u0002\u0002\u0002\u214e",
+ "\u2151\u0003\u0002\u0002\u0002\u214f\u2150\u0007\u0843\u0002\u0002\u2150",
+ "\u2152\u0005\u04d0\u0269\u0002\u2151\u214f\u0003\u0002\u0002\u0002\u2151",
+ "\u2152\u0003\u0002\u0002\u0002\u2152\u03c5\u0003\u0002\u0002\u0002\u2153",
+ "\u2154\u0007\u023c\u0002\u0002\u2154\u2155\u0005\u0578\u02bd\u0002\u2155",
+ "\u03c7\u0003\u0002\u0002\u0002\u2156\u2157\u0007\u0261\u0002\u0002\u2157",
+ "\u2158\u0005\u04d0\u0269\u0002\u2158\u2159\u0007\u0787\u0002\u0002\u2159",
+ "\u215d\u0005\u03b8\u01dd\u0002\u215a\u215c\u0005\u03ca\u01e6\u0002\u215b",
+ "\u215a\u0003\u0002\u0002\u0002\u215c\u215f\u0003\u0002\u0002\u0002\u215d",
+ "\u215b\u0003\u0002\u0002\u0002\u215d\u215e\u0003\u0002\u0002\u0002\u215e",
+ "\u2161\u0003\u0002\u0002\u0002\u215f\u215d\u0003\u0002\u0002\u0002\u2160",
+ "\u2162\u0005\u03cc\u01e7\u0002\u2161\u2160\u0003\u0002\u0002\u0002\u2161",
+ "\u2162\u0003\u0002\u0002\u0002\u2162\u2163\u0003\u0002\u0002\u0002\u2163",
+ "\u2164\u0007\u01bf\u0002\u0002\u2164\u2165\u0007\u0261\u0002\u0002\u2165",
+ "\u03c9\u0003\u0002\u0002\u0002\u2166\u2167\u0007\u01b3\u0002\u0002\u2167",
+ "\u2168\u0005\u04d0\u0269\u0002\u2168\u2169\u0007\u0787\u0002\u0002\u2169",
+ "\u216a\u0005\u03b8\u01dd\u0002\u216a\u03cb\u0003\u0002\u0002\u0002\u216b",
+ "\u216c\u0007\u01b2\u0002\u0002\u216c\u216d\u0005\u03b8\u01dd\u0002\u216d",
+ "\u03cd\u0003\u0002\u0002\u0002\u216e\u2170\u0005\u03ba\u01de\u0002\u216f",
+ "\u216e\u0003\u0002\u0002\u0002\u216f\u2170\u0003\u0002\u0002\u0002\u2170",
+ "\u2175\u0003\u0002\u0002\u0002\u2171\u2172\u0007\u0845\u0002\u0002\u2172",
+ "\u2176\u0005\u04d0\u0269\u0002\u2173\u2174\u0007\u0224\u0002\u0002\u2174",
+ "\u2176\u0005\u03d0\u01e9\u0002\u2175\u2171\u0003\u0002\u0002\u0002\u2175",
+ "\u2173\u0003\u0002\u0002\u0002\u2175\u2176\u0003\u0002\u0002\u0002\u2176",
+ "\u2177\u0003\u0002\u0002\u0002\u2177\u2178\u0007\u0317\u0002\u0002\u2178",
+ "\u2179\u0005\u03b8\u01dd\u0002\u2179\u217a\u0007\u01bf\u0002\u0002\u217a",
+ "\u217c\u0007\u0317\u0002\u0002\u217b\u217d\u0005\u0578\u02bd\u0002\u217c",
+ "\u217b\u0003\u0002\u0002\u0002\u217c\u217d\u0003\u0002\u0002\u0002\u217d",
+ "\u03cf\u0003\u0002\u0002\u0002\u217e\u217f\u0005\u0588\u02c5\u0002\u217f",
+ "\u2181\u0007\u028e\u0002\u0002\u2180\u2182\u0007\u059b\u0002\u0002\u2181",
+ "\u2180\u0003\u0002\u0002\u0002\u2181\u2182\u0003\u0002\u0002\u0002\u2182",
+ "\u2183\u0003\u0002\u0002\u0002\u2183\u2184\u0005\u03d8\u01ed\u0002\u2184",
+ "\u2185\u0007\u08a9\u0002\u0002\u2185\u2186\u0005\u03da\u01ee\u0002\u2186",
+ "\u2198\u0003\u0002\u0002\u0002\u2187\u2188\u0005\u058c\u02c7\u0002\u2188",
+ "\u2195\u0007\u028e\u0002\u0002\u2189\u218f\u0005\u058a\u02c6\u0002\u218a",
+ "\u218c\u0007\u08b1\u0002\u0002\u218b\u218d\u0005\u04d2\u026a\u0002\u218c",
+ "\u218b\u0003\u0002\u0002\u0002\u218c\u218d\u0003\u0002\u0002\u0002\u218d",
+ "\u218e\u0003\u0002\u0002\u0002\u218e\u2190\u0007\u08b2\u0002\u0002\u218f",
+ "\u218a\u0003\u0002\u0002\u0002\u218f\u2190\u0003\u0002\u0002\u0002\u2190",
+ "\u2196\u0003\u0002\u0002\u0002\u2191\u2192\u0007\u08b1\u0002\u0002\u2192",
+ "\u2193\u0005\u0414\u020b\u0002\u2193\u2194\u0007\u08b2\u0002\u0002\u2194",
+ "\u2196\u0003\u0002\u0002\u0002\u2195\u2189\u0003\u0002\u0002\u0002\u2195",
+ "\u2191\u0003\u0002\u0002\u0002\u2196\u2198\u0003\u0002\u0002\u0002\u2197",
+ "\u217e\u0003\u0002\u0002\u0002\u2197\u2187\u0003\u0002\u0002\u0002\u2198",
+ "\u03d1\u0003\u0002\u0002\u0002\u2199\u219a\u0007\u021f\u0002\u0002\u219a",
+ "\u219b\u0005\u0588\u02c5\u0002\u219b\u219c\u0007\u028e\u0002\u0002\u219c",
+ "\u219d\u0005\u03d4\u01eb\u0002\u219d\u21a0\u0005\u03f0\u01f9\u0002\u219e",
+ "\u219f\u0007\u05b8\u0002\u0002\u219f\u21a1\u0007\u01d8\u0002\u0002\u21a0",
+ "\u219e\u0003\u0002\u0002\u0002\u21a0\u21a1\u0003\u0002\u0002\u0002\u21a1",
+ "\u03d3\u0003\u0002\u0002\u0002\u21a2\u21a3\u0005\u03d8\u01ed\u0002\u21a3",
+ "\u21a4\u0007\u08a9\u0002\u0002\u21a4\u21a5\u0005\u03da\u01ee\u0002\u21a5",
+ "\u21b0\u0003\u0002\u0002\u0002\u21a6\u21a7\u0007\u028a\u0002\u0002\u21a7",
+ "\u21a8\u0007\u045d\u0002\u0002\u21a8\u21aa\u0005\u058e\u02c8\u0002\u21a9",
+ "\u21ab\u0005\u03d6\u01ec\u0002\u21aa\u21a9\u0003\u0002\u0002\u0002\u21aa",
+ "\u21ab\u0003\u0002\u0002\u0002\u21ab\u21b0\u0003\u0002\u0002\u0002\u21ac",
+ "\u21ad\u0007\u081b\u0002\u0002\u21ad\u21ae\u0007\u045d\u0002\u0002\u21ae",
+ "\u21b0\u0005\u0588\u02c5\u0002\u21af\u21a2\u0003\u0002\u0002\u0002\u21af",
+ "\u21a6\u0003\u0002\u0002\u0002\u21af\u21ac\u0003\u0002\u0002\u0002\u21b0",
+ "\u03d5\u0003\u0002\u0002\u0002\u21b1\u21b2\u0007m\u0002\u0002\u21b2",
+ "\u21b3\u0005\u03d8\u01ed\u0002\u21b3\u21b4\u0007-\u0002\u0002\u21b4",
+ "\u21b5\u0005\u03da\u01ee\u0002\u21b5\u03d7\u0003\u0002\u0002\u0002\u21b6",
+ "\u21b7\u0005\u04ea\u0276\u0002\u21b7\u03d9\u0003\u0002\u0002\u0002\u21b8",
+ "\u21b9\u0005\u04ea\u0276\u0002\u21b9\u03db\u0003\u0002\u0002\u0002\u21ba",
+ "\u21bb\u0007\u044b\u0002\u0002\u21bb\u03dd\u0003\u0002\u0002\u0002\u21bc",
+ "\u21be\u0007\u053f\u0002\u0002\u21bd\u21bf\u0005\u057e\u02c0\u0002\u21be",
+ "\u21bd\u0003\u0002\u0002\u0002\u21be\u21bf\u0003\u0002\u0002\u0002\u21bf",
+ "\u03df\u0003\u0002\u0002\u0002\u21c0\u21c2\u0007\u0599\u0002\u0002\u21c1",
+ "\u21c3\u0005\u04d4\u026b\u0002\u21c2\u21c1\u0003\u0002\u0002\u0002\u21c2",
+ "\u21c3\u0003\u0002\u0002\u0002\u21c3\u03e1\u0003\u0002\u0002\u0002\u21c4",
+ "\u21c6\u0007\u009f\u0002\u0002\u21c5\u21c4\u0003\u0002\u0002\u0002\u21c5",
+ "\u21c6\u0003\u0002\u0002\u0002\u21c6\u21c7\u0003\u0002\u0002\u0002\u21c7",
+ "\u21c9\u0005\u0560\u02b1\u0002\u21c8\u21ca\u0005\u05aa\u02d6\u0002\u21c9",
+ "\u21c8\u0003\u0002\u0002\u0002\u21c9\u21ca\u0003\u0002\u0002\u0002\u21ca",
+ "\u03e3\u0003\u0002\u0002\u0002\u21cb\u21cd\u0005\u0560\u02b1\u0002\u21cc",
+ "\u21ce\u0005\u05aa\u02d6\u0002\u21cd\u21cc\u0003\u0002\u0002\u0002\u21cd",
+ "\u21ce\u0003\u0002\u0002\u0002\u21ce\u03e5\u0003\u0002\u0002\u0002\u21cf",
+ "\u21d0\u0007\u04e5\u0002\u0002\u21d0\u21d1\u0007\u05ad\u0002\u0002\u21d1",
+ "\u21d2\u0007\u08b1\u0002\u0002\u21d2\u21d3\u0005\u04d4\u026b\u0002\u21d3",
+ "\u21d4\u0007\u08b2\u0002\u0002\u21d4\u03e7\u0003\u0002\u0002\u0002\u21d5",
+ "\u21d6\u0007h\u0002\u0002\u21d6\u21dd\u0005\u03b8\u01dd\u0002\u21d7",
+ "\u21d9\u0007\u01d6\u0002\u0002\u21d8\u21da\u0005\u03ea\u01f6\u0002\u21d9",
+ "\u21d8\u0003\u0002\u0002\u0002\u21da\u21db\u0003\u0002\u0002\u0002\u21db",
+ "\u21d9\u0003\u0002\u0002\u0002\u21db\u21dc\u0003\u0002\u0002\u0002\u21dc",
+ "\u21de\u0003\u0002\u0002\u0002\u21dd\u21d7\u0003\u0002\u0002\u0002\u21dd",
+ "\u21de\u0003\u0002\u0002\u0002\u21de\u21df\u0003\u0002\u0002\u0002\u21df",
+ "\u21e1\u0007\u01bf\u0002\u0002\u21e0\u21e2\u0005\u0578\u02bd\u0002\u21e1",
+ "\u21e0\u0003\u0002\u0002\u0002\u21e1\u21e2\u0003\u0002\u0002\u0002\u21e2",
+ "\u03e9\u0003\u0002\u0002\u0002\u21e3\u21e4\u0007\u0843\u0002\u0002\u21e4",
+ "\u21e9\u0005\u057e\u02c0\u0002\u21e5\u21e6\u0007\u0496\u0002\u0002\u21e6",
+ "\u21e8\u0005\u057e\u02c0\u0002\u21e7\u21e5\u0003\u0002\u0002\u0002\u21e8",
+ "\u21eb\u0003\u0002\u0002\u0002\u21e9\u21e7\u0003\u0002\u0002\u0002\u21e9",
+ "\u21ea\u0003\u0002\u0002\u0002\u21ea\u21ec\u0003\u0002\u0002\u0002\u21eb",
+ "\u21e9\u0003\u0002\u0002\u0002\u21ec\u21ed\u0007\u0787\u0002\u0002\u21ed",
+ "\u21ee\u0005\u03b8\u01dd\u0002\u21ee\u03eb\u0003\u0002\u0002\u0002\u21ef",
+ "\u21f1\u0007\u015a\u0002\u0002\u21f0\u21ef\u0003\u0002\u0002\u0002\u21f0",
+ "\u21f1\u0003\u0002\u0002\u0002\u21f1\u21f3\u0003\u0002\u0002\u0002\u21f2",
+ "\u21f4\u0005\u039c\u01cf\u0002\u21f3\u21f2\u0003\u0002\u0002\u0002\u21f4",
+ "\u21f5\u0003\u0002\u0002\u0002\u21f5\u21f3\u0003\u0002\u0002\u0002\u21f5",
+ "\u21f6\u0003\u0002\u0002\u0002\u21f6\u21f8\u0003\u0002\u0002\u0002\u21f7",
+ "\u21f0\u0003\u0002\u0002\u0002\u21f7\u21f8\u0003\u0002\u0002\u0002\u21f8",
+ "\u21f9\u0003\u0002\u0002\u0002\u21f9\u21fa\u0005\u03e8\u01f5\u0002\u21fa",
+ "\u03ed\u0003\u0002\u0002\u0002\u21fb\u21fd\u0007\u015a\u0002\u0002\u21fc",
+ "\u21fb\u0003\u0002\u0002\u0002\u21fc\u21fd\u0003\u0002\u0002\u0002\u21fd",
+ "\u21ff\u0003\u0002\u0002\u0002\u21fe\u2200\u0005\u039c\u01cf\u0002\u21ff",
+ "\u21fe\u0003\u0002\u0002\u0002\u2200\u2201\u0003\u0002\u0002\u0002\u2201",
+ "\u21ff\u0003\u0002\u0002\u0002\u2201\u2202\u0003\u0002\u0002\u0002\u2202",
+ "\u2203\u0003\u0002\u0002\u0002\u2203\u2204\u0005\u03e8\u01f5\u0002\u2204",
+ "\u03ef\u0003\u0002\u0002\u0002\u2205\u220a\u0005\u03f2\u01fa\u0002\u2206",
+ "\u220a\u0005\u03f6\u01fc\u0002\u2207\u220a\u0005\u03f8\u01fd\u0002\u2208",
+ "\u220a\u0005\u0402\u0202\u0002\u2209\u2205\u0003\u0002\u0002\u0002\u2209",
+ "\u2206\u0003\u0002\u0002\u0002\u2209\u2207\u0003\u0002\u0002\u0002\u2209",
+ "\u2208\u0003\u0002\u0002\u0002\u220a\u03f1\u0003\u0002\u0002\u0002\u220b",
+ "\u220c\u0007\u01dd\u0002\u0002\u220c\u220d\u0007\u0267\u0002\u0002\u220d",
+ "\u2217\u0005\u04d4\u026b\u0002\u220e\u2210\u0005\u0550\u02a9\u0002\u220f",
+ "\u2211\u0005\u0522\u0292\u0002\u2210\u220f\u0003\u0002\u0002\u0002\u2210",
+ "\u2211\u0003\u0002\u0002\u0002\u2211\u2218\u0003\u0002\u0002\u0002\u2212",
+ "\u2214\u0005\u0522\u0292\u0002\u2213\u2215\u0005\u03f4\u01fb\u0002\u2214",
+ "\u2213\u0003\u0002\u0002\u0002\u2214\u2215\u0003\u0002\u0002\u0002\u2215",
+ "\u2218\u0003\u0002\u0002\u0002\u2216\u2218\u0005\u03f4\u01fb\u0002\u2217",
+ "\u220e\u0003\u0002\u0002\u0002\u2217\u2212\u0003\u0002\u0002\u0002\u2217",
+ "\u2216\u0003\u0002\u0002\u0002\u2217\u2218\u0003\u0002\u0002\u0002\u2218",
+ "\u03f3\u0003\u0002\u0002\u0002\u2219\u221a\t\\\u0002\u0002\u221a\u221b",
+ "\u0005\u0550\u02a9\u0002\u221b\u03f5\u0003\u0002\u0002\u0002\u221c\u2224",
+ "\u0005\u04a8\u0255\u0002\u221d\u2224\u0005\u04b4\u025b\u0002\u221e\u2224",
+ "\u0005\u0414\u020b\u0002\u221f\u2224\u0005\u048e\u0248\u0002\u2220\u2224",
+ "\u0005\u0494\u024b\u0002\u2221\u2224\u0005\u0496\u024c\u0002\u2222\u2224",
+ "\u0005\u0410\u0209\u0002\u2223\u221c\u0003\u0002\u0002\u0002\u2223\u221d",
+ "\u0003\u0002\u0002\u0002\u2223\u221e\u0003\u0002\u0002\u0002\u2223\u221f",
+ "\u0003\u0002\u0002\u0002\u2223\u2220\u0003\u0002\u0002\u0002\u2223\u2221",
+ "\u0003\u0002\u0002\u0002\u2223\u2222\u0003\u0002\u0002\u0002\u2224\u03f7",
+ "\u0003\u0002\u0002\u0002\u2225\u222a\u0005\u03fa\u01fe\u0002\u2226\u222a",
+ "\u0005\u03fc\u01ff\u0002\u2227\u222a\u0005\u03fe\u0200\u0002\u2228\u222a",
+ "\u0005\u0400\u0201\u0002\u2229\u2225\u0003\u0002\u0002\u0002\u2229\u2226",
+ "\u0003\u0002\u0002\u0002\u2229\u2227\u0003\u0002\u0002\u0002\u2229\u2228",
+ "\u0003\u0002\u0002\u0002\u222a\u03f9\u0003\u0002\u0002\u0002\u222b\u222c",
+ "\u0007\u00c5\u0002\u0002\u222c\u222d\u0005\u058a\u02c6\u0002\u222d\u03fb",
+ "\u0003\u0002\u0002\u0002\u222e\u222f\u0007\u046f\u0002\u0002\u222f\u2235",
+ "\u0005\u058a\u02c6\u0002\u2230\u2232\u0007\u08b1\u0002\u0002\u2231\u2233",
+ "\u0005\u04d2\u026a\u0002\u2232\u2231\u0003\u0002\u0002\u0002\u2232\u2233",
+ "\u0003\u0002\u0002\u0002\u2233\u2234\u0003\u0002\u0002\u0002\u2234\u2236",
+ "\u0007\u08b2\u0002\u0002\u2235\u2230\u0003\u0002\u0002\u0002\u2235\u2236",
+ "\u0003\u0002\u0002\u0002\u2236\u03fd\u0003\u0002\u0002\u0002\u2237\u2238",
+ "\u0007\u0208\u0002\u0002\u2238\u224d\u0005\u058a\u02c6\u0002\u2239\u223a",
+ "\u0007\u02b5\u0002\u0002\u223a\u223f\u0005\u0586\u02c4\u0002\u223b\u223c",
+ "\u0007\u08b7\u0002\u0002\u223c\u223e\u0005\u0586\u02c4\u0002\u223d\u223b",
+ "\u0003\u0002\u0002\u0002\u223e\u2241\u0003\u0002\u0002\u0002\u223f\u223d",
+ "\u0003\u0002\u0002\u0002\u223f\u2240\u0003\u0002\u0002\u0002\u2240\u224e",
+ "\u0003\u0002\u0002\u0002\u2241\u223f\u0003\u0002\u0002\u0002\u2242\u2243",
+ "\u0007\u0093\u0002\u0002\u2243\u2244\u0007\u00d4\u0002\u0002\u2244\u2245",
+ "\u0007\u02b5\u0002\u0002\u2245\u224a\u0005\u0586\u02c4\u0002\u2246\u2247",
+ "\u0007\u08b7\u0002\u0002\u2247\u2249\u0005\u0586\u02c4\u0002\u2248\u2246",
+ "\u0003\u0002\u0002\u0002\u2249\u224c\u0003\u0002\u0002\u0002\u224a\u2248",
+ "\u0003\u0002\u0002\u0002\u224a\u224b\u0003\u0002\u0002\u0002\u224b\u224e",
+ "\u0003\u0002\u0002\u0002\u224c\u224a\u0003\u0002\u0002\u0002\u224d\u2239",
+ "\u0003\u0002\u0002\u0002\u224d\u2242\u0003\u0002\u0002\u0002\u224e\u03ff",
+ "\u0003\u0002\u0002\u0002\u224f\u2250\u0007\u046f\u0002\u0002\u2250\u2251",
+ "\u0005\u0586\u02c4\u0002\u2251\u2254\u0007\u0224\u0002\u0002\u2252\u2255",
+ "\u0005\u0414\u020b\u0002\u2253\u2255\u0005\u04d4\u026b\u0002\u2254\u2252",
+ "\u0003\u0002\u0002\u0002\u2254\u2253\u0003\u0002\u0002\u0002\u2255\u2257",
+ "\u0003\u0002\u0002\u0002\u2256\u2258\u0005\u0522\u0292\u0002\u2257\u2256",
+ "\u0003\u0002\u0002\u0002\u2257\u2258\u0003\u0002\u0002\u0002\u2258\u0401",
+ "\u0003\u0002\u0002\u0002\u2259\u225f\u0005\u0404\u0203\u0002\u225a\u225f",
+ "\u0005\u0406\u0204\u0002\u225b\u225f\u0005\u0408\u0205\u0002\u225c\u225f",
+ "\u0005\u040c\u0207\u0002\u225d\u225f\u0005\u040e\u0208\u0002\u225e\u2259",
+ "\u0003\u0002\u0002\u0002\u225e\u225a\u0003\u0002\u0002\u0002\u225e\u225b",
+ "\u0003\u0002\u0002\u0002\u225e\u225c\u0003\u0002\u0002\u0002\u225e\u225d",
+ "\u0003\u0002\u0002\u0002\u225f\u0403\u0003\u0002\u0002\u0002\u2260\u2261",
+ "\u0007\u05e8\u0002\u0002\u2261\u226f\u0007\u07b4\u0002\u0002\u2262\u2263",
+ "\u0007\u054b\u0002\u0002\u2263\u2270\t&\u0002\u0002\u2264\u2265\u0007",
+ "\u02ba\u0002\u0002\u2265\u2269\u0007\u02ed\u0002\u0002\u2266\u226a\u0007",
+ "\u05dd\u0002\u0002\u2267\u2268\u0007\u054b\u0002\u0002\u2268\u226a\u0007",
+ "\u00dd\u0002\u0002\u2269\u2266\u0003\u0002\u0002\u0002\u2269\u2267\u0003",
+ "\u0002\u0002\u0002\u226a\u2270\u0003\u0002\u0002\u0002\u226b\u226c\u0007",
+ "\u080d\u0002\u0002\u226c\u226d\u0007\u05a3\u0002\u0002\u226d\u226e\u0007",
+ "\u05d2\u0002\u0002\u226e\u2270\u0005\u055a\u02ae\u0002\u226f\u2262\u0003",
+ "\u0002\u0002\u0002\u226f\u2264\u0003\u0002\u0002\u0002\u226f\u226b\u0003",
+ "\u0002\u0002\u0002\u226f\u2270\u0003\u0002\u0002\u0002\u2270\u2273\u0003",
+ "\u0002\u0002\u0002\u2271\u2272\u0007\u0371\u0002\u0002\u2272\u2274\u0005",
+ "\u05ce\u02e8\u0002\u2273\u2271\u0003\u0002\u0002\u0002\u2273\u2274\u0003",
+ "\u0002\u0002\u0002\u2274\u0405\u0003\u0002\u0002\u0002\u2275\u2276\u0007",
+ "\u05e8\u0002\u0002\u2276\u2280\t]\u0002\u0002\u2277\u2281\u0007%\u0002",
+ "\u0002\u2278\u227d\u0005\u0576\u02bc\u0002\u2279\u227a\u0007\u08b7\u0002",
+ "\u0002\u227a\u227c\u0005\u0576\u02bc\u0002\u227b\u2279\u0003\u0002\u0002",
+ "\u0002\u227c\u227f\u0003\u0002\u0002\u0002\u227d\u227b\u0003\u0002\u0002",
+ "\u0002\u227d\u227e\u0003\u0002\u0002\u0002\u227e\u2281\u0003\u0002\u0002",
+ "\u0002\u227f\u227d\u0003\u0002\u0002\u0002\u2280\u2277\u0003\u0002\u0002",
+ "\u0002\u2280\u2278\u0003\u0002\u0002\u0002\u2281\u2282\u0003\u0002\u0002",
+ "\u0002\u2282\u2283\t(\u0002\u0002\u2283\u0407\u0003\u0002\u0002\u0002",
+ "\u2284\u2286\u0007\u00dc\u0002\u0002\u2285\u2287\u0007\u084c\u0002\u0002",
+ "\u2286\u2285\u0003\u0002\u0002\u0002\u2286\u2287\u0003\u0002\u0002\u0002",
+ "\u2287\u2295\u0003\u0002\u0002\u0002\u2288\u2289\u0007\u00db\u0002\u0002",
+ "\u2289\u2296\u0005\u04d4\u026b\u0002\u228a\u2293\u0007\u0220\u0002\u0002",
+ "\u228b\u228c\u0007\u0116\u0002\u0002\u228c\u2294\u0005\u04d4\u026b\u0002",
+ "\u228d\u2294\u0007\u0115\u0002\u0002\u228e\u2291\u0005\u04d4\u026b\u0002",
+ "\u228f\u2290\u0007\u08b7\u0002\u0002\u2290\u2292\u0005\u04d4\u026b\u0002",
+ "\u2291\u228f\u0003\u0002\u0002\u0002\u2291\u2292\u0003\u0002\u0002\u0002",
+ "\u2292\u2294\u0003\u0002\u0002\u0002\u2293\u228b\u0003\u0002\u0002\u0002",
+ "\u2293\u228d\u0003\u0002\u0002\u0002\u2293\u228e\u0003\u0002\u0002\u0002",
+ "\u2294\u2296\u0003\u0002\u0002\u0002\u2295\u2288\u0003\u0002\u0002\u0002",
+ "\u2295\u228a\u0003\u0002\u0002\u0002\u2295\u2296\u0003\u0002\u0002\u0002",
+ "\u2296\u2298\u0003\u0002\u0002\u0002\u2297\u2299\u0005\u040a\u0206\u0002",
+ "\u2298\u2297\u0003\u0002\u0002\u0002\u2298\u2299\u0003\u0002\u0002\u0002",
+ "\u2299\u0409\u0003\u0002\u0002\u0002\u229a\u229c\u0007\u084f\u0002\u0002",
+ "\u229b\u229d\tL\u0002\u0002\u229c\u229b\u0003\u0002\u0002\u0002\u229c",
+ "\u229d\u0003\u0002\u0002\u0002\u229d\u229f\u0003\u0002\u0002\u0002\u229e",
+ "\u22a0\t^\u0002\u0002\u229f\u229e\u0003\u0002\u0002\u0002\u229f\u22a0",
+ "\u0003\u0002\u0002\u0002\u22a0\u040b\u0003\u0002\u0002\u0002\u22a1\u22a3",
+ "\u0007\u05a3\u0002\u0002\u22a2\u22a4\u0007\u084c\u0002\u0002\u22a3\u22a2",
+ "\u0003\u0002\u0002\u0002\u22a3\u22a4\u0003\u0002\u0002\u0002\u22a4\u22ac",
+ "\u0003\u0002\u0002\u0002\u22a5\u22a7\u0007\u07ae\u0002\u0002\u22a6\u22a8",
+ "\u0007\u05b7\u0002\u0002\u22a7\u22a6\u0003\u0002\u0002\u0002\u22a7\u22a8",
+ "\u0003\u0002\u0002\u0002\u22a8\u22a9\u0003\u0002\u0002\u0002\u22a9\u22ad",
+ "\u0005\u0558\u02ad\u0002\u22aa\u22ab\u0007\u0220\u0002\u0002\u22ab\u22ad",
+ "\u0005\u05ce\u02e8\u0002\u22ac\u22a5\u0003\u0002\u0002\u0002\u22ac\u22aa",
+ "\u0003\u0002\u0002\u0002\u22ac\u22ad\u0003\u0002\u0002\u0002\u22ad\u040d",
+ "\u0003\u0002\u0002\u0002\u22ae\u22af\u0007\u05b7\u0002\u0002\u22af\u22b0",
+ "\u0005\u0558\u02ad\u0002\u22b0\u040f\u0003\u0002\u0002\u0002\u22b1\u22b2",
+ "\u0007\u01e7\u0002\u0002\u22b2\u22b7\u0007\u04eb\u0002\u0002\u22b3\u22b4",
+ "\u0007\u05e8\u0002\u0002\u22b4\u22b5\u0007\u0625\u0002\u0002\u22b5\u22b6",
+ "\u0007\u08c5\u0002\u0002\u22b6\u22b8\u0005\u05ce\u02e8\u0002\u22b7\u22b3",
+ "\u0003\u0002\u0002\u0002\u22b7\u22b8\u0003\u0002\u0002\u0002\u22b8\u22bb",
+ "\u0003\u0002\u0002\u0002\u22b9\u22ba\u0007\u02b5\u0002\u0002\u22ba\u22bc",
+ "\u0005\u0594\u02cb\u0002\u22bb\u22b9\u0003\u0002\u0002\u0002\u22bb\u22bc",
+ "\u0003\u0002\u0002\u0002\u22bc\u22bd\u0003\u0002\u0002\u0002\u22bd\u22c3",
+ "\u0007\u0224\u0002\u0002\u22be\u22c4\u0005\u0414\u020b\u0002\u22bf\u22c4",
+ "\u0005\u048e\u0248\u0002\u22c0\u22c4\u0005\u0494\u024b\u0002\u22c1\u22c4",
+ "\u0005\u0496\u024c\u0002\u22c2\u22c4\u0005\u04a8\u0255\u0002\u22c3\u22be",
+ "\u0003\u0002\u0002\u0002\u22c3\u22bf\u0003\u0002\u0002\u0002\u22c3\u22c0",
+ "\u0003\u0002\u0002\u0002\u22c3\u22c1\u0003\u0002\u0002\u0002\u22c3\u22c2",
+ "\u0003\u0002\u0002\u0002\u22c4\u0411\u0003\u0002\u0002\u0002\u22c5\u22c7",
+ "\u0005\u0416\u020c\u0002\u22c6\u22c5\u0003\u0002\u0002\u0002\u22c6\u22c7",
+ "\u0003\u0002\u0002\u0002\u22c7\u22c8\u0003\u0002\u0002\u0002\u22c8\u22c9",
+ "\u0005\u041e\u0210\u0002\u22c9\u0413\u0003\u0002\u0002\u0002\u22ca\u22d1",
+ "\u0005\u0412\u020a\u0002\u22cb\u22d0\u0005\u0488\u0245\u0002\u22cc\u22d0",
+ "\u0005\u0480\u0241\u0002\u22cd\u22d0\u0005\u0484\u0243\u0002\u22ce\u22d0",
+ "\u0005\u0486\u0244\u0002\u22cf\u22cb\u0003\u0002\u0002\u0002\u22cf\u22cc",
+ "\u0003\u0002\u0002\u0002\u22cf\u22cd\u0003\u0002\u0002\u0002\u22cf\u22ce",
+ "\u0003\u0002\u0002\u0002\u22d0\u22d3\u0003\u0002\u0002\u0002\u22d1\u22cf",
+ "\u0003\u0002\u0002\u0002\u22d1\u22d2\u0003\u0002\u0002\u0002\u22d2\u0415",
+ "\u0003\u0002\u0002\u0002\u22d3\u22d1\u0003\u0002\u0002\u0002\u22d4\u22d5",
+ "\u0007\u084b\u0002\u0002\u22d5\u22da\u0005\u0418\u020d\u0002\u22d6\u22d7",
+ "\u0007\u08b7\u0002\u0002\u22d7\u22d9\u0005\u0418\u020d\u0002\u22d8\u22d6",
+ "\u0003\u0002\u0002\u0002\u22d9\u22dc\u0003\u0002\u0002\u0002\u22da\u22d8",
+ "\u0003\u0002\u0002\u0002\u22da\u22db\u0003\u0002\u0002\u0002\u22db\u0417",
+ "\u0003\u0002\u0002\u0002\u22dc\u22da\u0003\u0002\u0002\u0002\u22dd\u22df",
+ "\u0005\u0570\u02b9\u0002\u22de\u22e0\u0005\u05a6\u02d4\u0002\u22df\u22de",
+ "\u0003\u0002\u0002\u0002\u22df\u22e0\u0003\u0002\u0002\u0002\u22e0\u22e1",
+ "\u0003\u0002\u0002\u0002\u22e1\u22e2\u0007?\u0002\u0002\u22e2\u22e3",
+ "\u0007\u08b1\u0002\u0002\u22e3\u22e5\u0005\u041e\u0210\u0002\u22e4\u22e6",
+ "\u0005\u0480\u0241\u0002\u22e5\u22e4\u0003\u0002\u0002\u0002\u22e5\u22e6",
+ "\u0003\u0002\u0002\u0002\u22e6\u22e7\u0003\u0002\u0002\u0002\u22e7\u22e9",
+ "\u0007\u08b2\u0002\u0002\u22e8\u22ea\u0005\u041a\u020e\u0002\u22e9\u22e8",
+ "\u0003\u0002\u0002\u0002\u22e9\u22ea\u0003\u0002\u0002\u0002\u22ea\u22ec",
+ "\u0003\u0002\u0002\u0002\u22eb\u22ed\u0005\u041c\u020f\u0002\u22ec\u22eb",
+ "\u0003\u0002\u0002\u0002\u22ec\u22ed\u0003\u0002\u0002\u0002\u22ed\u0419",
+ "\u0003\u0002\u0002\u0002\u22ee\u22ef\u0007\u05c9\u0002\u0002\u22ef\u22f0",
+ "\t_\u0002\u0002\u22f0\u22f1\u0007\u0210\u0002\u0002\u22f1\u22f2\u0007",
+ "\u0094\u0002\u0002\u22f2\u22f4\u0005\u0592\u02ca\u0002\u22f3\u22f5\u0007",
+ "@\u0002\u0002\u22f4\u22f3\u0003\u0002\u0002\u0002\u22f4\u22f5\u0003",
+ "\u0002\u0002\u0002\u22f5\u22f7\u0003\u0002\u0002\u0002\u22f6\u22f8\u0007",
+ "\u0175\u0002\u0002\u22f7\u22f6\u0003\u0002\u0002\u0002\u22f7\u22f8\u0003",
+ "\u0002\u0002\u0002\u22f8\u22fb\u0003\u0002\u0002\u0002\u22f9\u22fa\u0007",
+ "\u044c\u0002\u0002\u22fa\u22fc\u0007\u0210\u0002\u0002\u22fb\u22f9\u0003",
+ "\u0002\u0002\u0002\u22fb\u22fc\u0003\u0002\u0002\u0002\u22fc\u22ff\u0003",
+ "\u0002\u0002\u0002\u22fd\u22fe\u0007\u044c\u0002\u0002\u22fe\u2300\u0007",
+ "\u02dd\u0002\u0002\u22ff\u22fd\u0003\u0002\u0002\u0002\u22ff\u2300\u0003",
+ "\u0002\u0002\u0002\u2300\u2313\u0003\u0002\u0002\u0002\u2301\u2302\u0007",
+ "\u08b7\u0002\u0002\u2302\u2304\u0005\u0592\u02ca\u0002\u2303\u2305\u0007",
+ "@\u0002\u0002\u2304\u2303\u0003\u0002\u0002\u0002\u2304\u2305\u0003",
+ "\u0002\u0002\u0002\u2305\u2307\u0003\u0002\u0002\u0002\u2306\u2308\u0007",
+ "\u0175\u0002\u0002\u2307\u2306\u0003\u0002\u0002\u0002\u2307\u2308\u0003",
+ "\u0002\u0002\u0002\u2308\u230b\u0003\u0002\u0002\u0002\u2309\u230a\u0007",
+ "\u044c\u0002\u0002\u230a\u230c\u0007\u0210\u0002\u0002\u230b\u2309\u0003",
+ "\u0002\u0002\u0002\u230b\u230c\u0003\u0002\u0002\u0002\u230c\u230f\u0003",
+ "\u0002\u0002\u0002\u230d\u230e\u0007\u044c\u0002\u0002\u230e\u2310\u0007",
+ "\u02dd\u0002\u0002\u230f\u230d\u0003\u0002\u0002\u0002\u230f\u2310\u0003",
+ "\u0002\u0002\u0002\u2310\u2312\u0003\u0002\u0002\u0002\u2311\u2301\u0003",
+ "\u0002\u0002\u0002\u2312\u2315\u0003\u0002\u0002\u0002\u2313\u2311\u0003",
+ "\u0002\u0002\u0002\u2313\u2314\u0003\u0002\u0002\u0002\u2314\u2316\u0003",
+ "\u0002\u0002\u0002\u2315\u2313\u0003\u0002\u0002\u0002\u2316\u2317\u0007",
+ "\u05e8\u0002\u0002\u2317\u2318\u0005\u0592\u02ca\u0002\u2318\u041b\u0003",
+ "\u0002\u0002\u0002\u2319\u231a\u0007\u013c\u0002\u0002\u231a\u231b\u0005",
+ "\u05a4\u02d3\u0002\u231b\u231c\u0007\u05e8\u0002\u0002\u231c\u231d\u0005",
+ "\u0592\u02ca\u0002\u231d\u231e\u0007\u07ae\u0002\u0002\u231e\u231f\u0005",
+ "\u04d4\u026b\u0002\u231f\u2320\u0007\u0161\u0002\u0002\u2320\u2321\u0005",
+ "\u04d4\u026b\u0002\u2321\u041d\u0003\u0002\u0002\u0002\u2322\u2326\u0005",
+ "\u0420\u0211\u0002\u2323\u2325\u0005\u0422\u0212\u0002\u2324\u2323\u0003",
+ "\u0002\u0002\u0002\u2325\u2328\u0003\u0002\u0002\u0002\u2326\u2324\u0003",
+ "\u0002\u0002\u0002\u2326\u2327\u0003\u0002\u0002\u0002\u2327\u041f\u0003",
+ "\u0002\u0002\u0002\u2328\u2326\u0003\u0002\u0002\u0002\u2329\u232f\u0005",
+ "\u0424\u0213\u0002\u232a\u232b\u0007\u08b1\u0002\u0002\u232b\u232c\u0005",
+ "\u041e\u0210\u0002\u232c\u232d\u0007\u08b2\u0002\u0002\u232d\u232f\u0003",
+ "\u0002\u0002\u0002\u232e\u2329\u0003\u0002\u0002\u0002\u232e\u232a\u0003",
+ "\u0002\u0002\u0002\u232f\u0421\u0003\u0002\u0002\u0002\u2330\u2332\u0007",
+ "\u07d3\u0002\u0002\u2331\u2333\u0007%\u0002\u0002\u2332\u2331\u0003",
+ "\u0002\u0002\u0002\u2332\u2333\u0003\u0002\u0002\u0002\u2333\u2337\u0003",
+ "\u0002\u0002\u0002\u2334\u2337\u0007\u02b2\u0002\u0002\u2335\u2337\u0007",
+ "\u034c\u0002\u0002\u2336\u2330\u0003\u0002\u0002\u0002\u2336\u2334\u0003",
+ "\u0002\u0002\u0002\u2336\u2335\u0003\u0002\u0002\u0002\u2337\u2338\u0003",
+ "\u0002\u0002\u0002\u2338\u2339\u0005\u0420\u0211\u0002\u2339\u0423\u0003",
+ "\u0002\u0002\u0002\u233a\u233c\u0007\u05d4\u0002\u0002\u233b\u233d\t",
+ "`\u0002\u0002\u233c\u233b\u0003\u0002\u0002\u0002\u233c\u233d\u0003",
+ "\u0002\u0002\u0002\u233d\u233e\u0003\u0002\u0002\u0002\u233e\u2340\u0005",
+ "\u0426\u0214\u0002\u233f\u2341\u0005\u0550\u02a9\u0002\u2340\u233f\u0003",
+ "\u0002\u0002\u0002\u2340\u2341\u0003\u0002\u0002\u0002\u2341\u2342\u0003",
+ "\u0002\u0002\u0002\u2342\u2344\u0005\u0428\u0215\u0002\u2343\u2345\u0005",
+ "\u054e\u02a8\u0002\u2344\u2343\u0003\u0002\u0002\u0002\u2344\u2345\u0003",
+ "\u0002\u0002\u0002\u2345\u2347\u0003\u0002\u0002\u0002\u2346\u2348\u0005",
+ "\u0452\u022a\u0002\u2347\u2346\u0003\u0002\u0002\u0002\u2347\u2348\u0003",
+ "\u0002\u0002\u0002\u2348\u234a\u0003\u0002\u0002\u0002\u2349\u234b\u0005",
+ "\u0456\u022c\u0002\u234a\u2349\u0003\u0002\u0002\u0002\u234a\u234b\u0003",
+ "\u0002\u0002\u0002\u234b\u234d\u0003\u0002\u0002\u0002\u234c\u234e\u0005",
+ "\u0462\u0232\u0002\u234d\u234c\u0003\u0002\u0002\u0002\u234d\u234e\u0003",
+ "\u0002\u0002\u0002\u234e\u2350\u0003\u0002\u0002\u0002\u234f\u2351\u0005",
+ "\u0480\u0241\u0002\u2350\u234f\u0003\u0002\u0002\u0002\u2350\u2351\u0003",
+ "\u0002\u0002\u0002\u2351\u0425\u0003\u0002\u0002\u0002\u2352\u235c\u0007",
+ "\u08b4\u0002\u0002\u2353\u2358\u0005\u042a\u0216\u0002\u2354\u2355\u0007",
+ "\u08b7\u0002\u0002\u2355\u2357\u0005\u042a\u0216\u0002\u2356\u2354\u0003",
+ "\u0002\u0002\u0002\u2357\u235a\u0003\u0002\u0002\u0002\u2358\u2356\u0003",
+ "\u0002\u0002\u0002\u2358\u2359\u0003\u0002\u0002\u0002\u2359\u235c\u0003",
+ "\u0002\u0002\u0002\u235a\u2358\u0003\u0002\u0002\u0002\u235b\u2352\u0003",
+ "\u0002\u0002\u0002\u235b\u2353\u0003\u0002\u0002\u0002\u235c\u0427\u0003",
+ "\u0002\u0002\u0002\u235d\u235e\u0007\u022c\u0002\u0002\u235e\u235f\u0005",
+ "\u042c\u0217\u0002\u235f\u0429\u0003\u0002\u0002\u0002\u2360\u2361\u0005",
+ "\u0594\u02cb\u0002\u2361\u2362\u0007\u08aa\u0002\u0002\u2362\u2363\u0007",
+ "\u08b4\u0002\u0002\u2363\u2369\u0003\u0002\u0002\u0002\u2364\u2366\u0005",
+ "\u04d4\u026b\u0002\u2365\u2367\u0005\u054a\u02a6\u0002\u2366\u2365\u0003",
+ "\u0002\u0002\u0002\u2366\u2367\u0003\u0002\u0002\u0002\u2367\u2369\u0003",
+ "\u0002\u0002\u0002\u2368\u2360\u0003\u0002\u0002\u0002\u2368\u2364\u0003",
+ "\u0002\u0002\u0002\u2369\u042b\u0003\u0002\u0002\u0002\u236a\u236f\u0005",
+ "\u042e\u0218\u0002\u236b\u236c\u0007\u08b7\u0002\u0002\u236c\u236e\u0005",
+ "\u042e\u0218\u0002\u236d\u236b\u0003\u0002\u0002\u0002\u236e\u2371\u0003",
+ "\u0002\u0002\u0002\u236f\u236d\u0003\u0002\u0002\u0002\u236f\u2370\u0003",
+ "\u0002\u0002\u0002\u2370\u042d\u0003\u0002\u0002\u0002\u2371\u236f\u0003",
+ "\u0002\u0002\u0002\u2372\u2376\u0005\u0430\u0219\u0002\u2373\u2375\u0005",
+ "\u0434\u021b\u0002\u2374\u2373\u0003\u0002\u0002\u0002\u2375\u2378\u0003",
+ "\u0002\u0002\u0002\u2376\u2374\u0003\u0002\u0002\u0002\u2376\u2377\u0003",
+ "\u0002\u0002\u0002\u2377\u237b\u0003\u0002\u0002\u0002\u2378\u2376\u0003",
+ "\u0002\u0002\u0002\u2379\u237c\u0005\u0440\u0221\u0002\u237a\u237c\u0005",
+ "\u044c\u0227\u0002\u237b\u2379\u0003\u0002\u0002\u0002\u237b\u237a\u0003",
+ "\u0002\u0002\u0002\u237b\u237c\u0003\u0002\u0002\u0002\u237c\u042f\u0003",
+ "\u0002\u0002\u0002\u237d\u2381\u0005\u0432\u021a\u0002\u237e\u2380\u0005",
+ "\u043e\u0220\u0002\u237f\u237e\u0003\u0002\u0002\u0002\u2380\u2383\u0003",
+ "\u0002\u0002\u0002\u2381\u237f\u0003\u0002\u0002\u0002\u2381\u2382\u0003",
+ "\u0002\u0002\u0002\u2382\u2385\u0003\u0002\u0002\u0002\u2383\u2381\u0003",
+ "\u0002\u0002\u0002\u2384\u2386\u0005\u054c\u02a7\u0002\u2385\u2384\u0003",
+ "\u0002\u0002\u0002\u2385\u2386\u0003\u0002\u0002\u0002\u2386\u0431\u0003",
+ "\u0002\u0002\u0002\u2387\u238a\u0005\u04c6\u0264\u0002\u2388\u238b\u0005",
+ "\u0440\u0221\u0002\u2389\u238b\u0005\u044c\u0227\u0002\u238a\u2388\u0003",
+ "\u0002\u0002\u0002\u238a\u2389\u0003\u0002\u0002\u0002\u238a\u238b\u0003",
+ "\u0002\u0002\u0002\u238b\u239f\u0003\u0002\u0002\u0002\u238c\u238d\u0007",
+ "\u08b1\u0002\u0002\u238d\u2391\u0005\u042e\u0218\u0002\u238e\u2390\u0005",
+ "\u0422\u0212\u0002\u238f\u238e\u0003\u0002\u0002\u0002\u2390\u2393\u0003",
+ "\u0002\u0002\u0002\u2391\u238f\u0003\u0002\u0002\u0002\u2391\u2392\u0003",
+ "\u0002\u0002\u0002\u2392\u2394\u0003\u0002\u0002\u0002\u2393\u2391\u0003",
+ "\u0002\u0002\u0002\u2394\u2397\u0007\u08b2\u0002\u0002\u2395\u2398\u0005",
+ "\u0440\u0221\u0002\u2396\u2398\u0005\u044c\u0227\u0002\u2397\u2395\u0003",
+ "\u0002\u0002\u0002\u2397\u2396\u0003\u0002\u0002\u0002\u2397\u2398\u0003",
+ "\u0002\u0002\u0002\u2398\u239f\u0003\u0002\u0002\u0002\u2399\u239a\u0007",
+ "\u0469\u0002\u0002\u239a\u239b\u0007\u08b1\u0002\u0002\u239b\u239c\u0005",
+ "\u04c6\u0264\u0002\u239c\u239d\u0007\u08b2\u0002\u0002\u239d\u239f\u0003",
+ "\u0002\u0002\u0002\u239e\u2387\u0003\u0002\u0002\u0002\u239e\u238c\u0003",
+ "\u0002\u0002\u0002\u239e\u2399\u0003\u0002\u0002\u0002\u239f\u0433\u0003",
+ "\u0002\u0002\u0002\u23a0\u23a2\u0005\u043c\u021f\u0002\u23a1\u23a0\u0003",
+ "\u0002\u0002\u0002\u23a1\u23a2\u0003\u0002\u0002\u0002\u23a2\u23a4\u0003",
+ "\u0002\u0002\u0002\u23a3\u23a5\ta\u0002\u0002\u23a4\u23a3\u0003\u0002",
+ "\u0002\u0002\u23a4\u23a5\u0003\u0002\u0002\u0002\u23a5\u23a8\u0003\u0002",
+ "\u0002\u0002\u23a6\u23a9\u0007\u0299\u0002\u0002\u23a7\u23a9\u0005\u043a",
+ "\u021e\u0002\u23a8\u23a6\u0003\u0002\u0002\u0002\u23a8\u23a7\u0003\u0002",
+ "\u0002\u0002\u23a8\u23a9\u0003\u0002\u0002\u0002\u23a9\u23aa\u0003\u0002",
+ "\u0002\u0002\u23aa\u23ab\u0007\u02c0\u0002\u0002\u23ab\u23ad\u0005\u0430",
+ "\u0219\u0002\u23ac\u23ae\u0005\u043c\u021f\u0002\u23ad\u23ac\u0003\u0002",
+ "\u0002\u0002\u23ad\u23ae\u0003\u0002\u0002\u0002\u23ae\u23b3\u0003\u0002",
+ "\u0002\u0002\u23af\u23b2\u0005\u0436\u021c\u0002\u23b0\u23b2\u0005\u0438",
+ "\u021d\u0002\u23b1\u23af\u0003\u0002\u0002\u0002\u23b1\u23b0\u0003\u0002",
+ "\u0002\u0002\u23b2\u23b5\u0003\u0002\u0002\u0002\u23b3\u23b1\u0003\u0002",
+ "\u0002\u0002\u23b3\u23b4\u0003\u0002\u0002\u0002\u23b4\u0435\u0003\u0002",
+ "\u0002\u0002\u23b5\u23b3\u0003\u0002\u0002\u0002\u23b6\u23b7\u0007\u046a",
+ "\u0002\u0002\u23b7\u23b8\u0005\u04d0\u0269\u0002\u23b8\u0437\u0003\u0002",
+ "\u0002\u0002\u23b9\u23ba\u0007\u0811\u0002\u0002\u23ba\u23bb\u0005\u05a6",
+ "\u02d4\u0002\u23bb\u0439\u0003\u0002\u0002\u0002\u23bc\u23be\tb\u0002",
+ "\u0002\u23bd\u23bf\u0007\u049c\u0002\u0002\u23be\u23bd\u0003\u0002\u0002",
+ "\u0002\u23be\u23bf\u0003\u0002\u0002\u0002\u23bf\u043b\u0003\u0002\u0002",
+ "\u0002\u23c0\u23c1\u0007\u04b9\u0002\u0002\u23c1\u23c9\u0007\u0094\u0002",
+ "\u0002\u23c2\u23c5\u0007\u08b1\u0002\u0002\u23c3\u23c6\u0005\u041e\u0210",
+ "\u0002\u23c4\u23c6\u0005\u04d2\u026a\u0002\u23c5\u23c3\u0003\u0002\u0002",
+ "\u0002\u23c5\u23c4\u0003\u0002\u0002\u0002\u23c5\u23c6\u0003\u0002\u0002",
+ "\u0002\u23c6\u23c7\u0003\u0002\u0002\u0002\u23c7\u23ca\u0007\u08b2\u0002",
+ "\u0002\u23c8\u23ca\u0005\u04d2\u026a\u0002\u23c9\u23c2\u0003\u0002\u0002",
+ "\u0002\u23c9\u23c8\u0003\u0002\u0002\u0002\u23ca\u043d\u0003\u0002\u0002",
+ "\u0002\u23cb\u23cc\u0007\u0832\u0002\u0002\u23cc\u23cd\u0007m\u0002",
+ "\u0002\u23cd\u23ce\tc\u0002\u0002\u23ce\u23d4\u0005\u04d4\u026b\u0002",
+ "\u23cf\u23d0\u0007?\u0002\u0002\u23d0\u23d1\u0007\u045d\u0002\u0002",
+ "\u23d1\u23d2\td\u0002\u0002\u23d2\u23d4\u0005\u04d4\u026b\u0002\u23d3",
+ "\u23cb\u0003\u0002\u0002\u0002\u23d3\u23cf\u0003\u0002\u0002\u0002\u23d4",
+ "\u043f\u0003\u0002\u0002\u0002\u23d5\u23d7\u0007\u04e7\u0002\u0002\u23d6",
+ "\u23d8\u0007\u0875\u0002\u0002\u23d7\u23d6\u0003\u0002\u0002\u0002\u23d7",
+ "\u23d8\u0003\u0002\u0002\u0002\u23d8\u23d9\u0003\u0002\u0002\u0002\u23d9",
+ "\u23da\u0007\u08b1\u0002\u0002\u23da\u23df\u0005\u0442\u0222\u0002\u23db",
+ "\u23dc\u0007\u08b7\u0002\u0002\u23dc\u23de\u0005\u0442\u0222\u0002\u23dd",
+ "\u23db\u0003\u0002\u0002\u0002\u23de\u23e1\u0003\u0002\u0002\u0002\u23df",
+ "\u23dd\u0003\u0002\u0002\u0002\u23df\u23e0\u0003\u0002\u0002\u0002\u23e0",
+ "\u23e2\u0003\u0002\u0002\u0002\u23e1\u23df\u0003\u0002\u0002\u0002\u23e2",
+ "\u23e3\u0005\u0444\u0223\u0002\u23e3\u23e4\u0005\u0446\u0224\u0002\u23e4",
+ "\u23e5\u0007\u08b2\u0002\u0002\u23e5\u0441\u0003\u0002\u0002\u0002\u23e6",
+ "\u23e7\u0005\u056e\u02b8\u0002\u23e7\u23e8\u0007\u08b1\u0002\u0002\u23e8",
+ "\u23e9\u0005\u04d4\u026b\u0002\u23e9\u23eb\u0007\u08b2\u0002\u0002\u23ea",
+ "\u23ec\u0005\u054a\u02a6\u0002\u23eb\u23ea\u0003\u0002\u0002\u0002\u23eb",
+ "\u23ec\u0003\u0002\u0002\u0002\u23ec\u0443\u0003\u0002\u0002\u0002\u23ed",
+ "\u23f0\u0007\u0224\u0002\u0002\u23ee\u23f1\u0005\u0592\u02ca\u0002\u23ef",
+ "\u23f1\u0005\u05a6\u02d4\u0002\u23f0\u23ee\u0003\u0002\u0002\u0002\u23f0",
+ "\u23ef\u0003\u0002\u0002\u0002\u23f1\u0445\u0003\u0002\u0002\u0002\u23f2",
+ "\u23f3\u0007\u028e\u0002\u0002\u23f3\u2405\u0007\u08b1\u0002\u0002\u23f4",
+ "\u2406\u0005\u041e\u0210\u0002\u23f5\u23fa\u00072\u0002\u0002\u23f6",
+ "\u23f7\u0007\u08b7\u0002\u0002\u23f7\u23f9\u00072\u0002\u0002\u23f8",
+ "\u23f6\u0003\u0002\u0002\u0002\u23f9\u23fc\u0003\u0002\u0002\u0002\u23fa",
+ "\u23f8\u0003\u0002\u0002\u0002\u23fa\u23fb\u0003\u0002\u0002\u0002\u23fb",
+ "\u2406\u0003\u0002\u0002\u0002\u23fc\u23fa\u0003\u0002\u0002\u0002\u23fd",
+ "\u2402\u0005\u0448\u0225\u0002\u23fe\u23ff\u0007\u08b7\u0002\u0002\u23ff",
+ "\u2401\u0005\u0448\u0225\u0002\u2400\u23fe\u0003\u0002\u0002\u0002\u2401",
+ "\u2404\u0003\u0002\u0002\u0002\u2402\u2400\u0003\u0002\u0002\u0002\u2402",
+ "\u2403\u0003\u0002\u0002\u0002\u2403\u2406\u0003\u0002\u0002\u0002\u2404",
+ "\u2402\u0003\u0002\u0002\u0002\u2405\u23f4\u0003\u0002\u0002\u0002\u2405",
+ "\u23f5\u0003\u0002\u0002\u0002\u2405\u23fd\u0003\u0002\u0002\u0002\u2406",
+ "\u2407\u0003\u0002\u0002\u0002\u2407\u2408\u0007\u08b2\u0002\u0002\u2408",
+ "\u0447\u0003\u0002\u0002\u0002\u2409\u240b\u0005\u044a\u0226\u0002\u240a",
+ "\u240c\u0005\u054a\u02a6\u0002\u240b\u240a\u0003\u0002\u0002\u0002\u240b",
+ "\u240c\u0003\u0002\u0002\u0002\u240c\u0449\u0003\u0002\u0002\u0002\u240d",
+ "\u2414\u0005\u04d4\u026b\u0002\u240e\u2410\u0007\u08b1\u0002\u0002\u240f",
+ "\u2411\u0005\u04d2\u026a\u0002\u2410\u240f\u0003\u0002\u0002\u0002\u2410",
+ "\u2411\u0003\u0002\u0002\u0002\u2411\u2412\u0003\u0002\u0002\u0002\u2412",
+ "\u2414\u0007\u08b2\u0002\u0002\u2413\u240d\u0003\u0002\u0002\u0002\u2413",
+ "\u240e\u0003\u0002\u0002\u0002\u2414\u044b\u0003\u0002\u0002\u0002\u2415",
+ "\u2418\u0007\u07df\u0002\u0002\u2416\u2417\te\u0002\u0002\u2417\u2419",
+ "\u0007\u044c\u0002\u0002\u2418\u2416\u0003\u0002\u0002\u0002\u2418\u2419",
+ "\u0003\u0002\u0002\u0002\u2419\u241a\u0003\u0002\u0002\u0002\u241a\u241d",
+ "\u0007\u08b1\u0002\u0002\u241b\u241e\u0005\u0592\u02ca\u0002\u241c\u241e",
+ "\u0005\u05a6\u02d4\u0002\u241d\u241b\u0003\u0002\u0002\u0002\u241d\u241c",
+ "\u0003\u0002\u0002\u0002\u241e\u241f\u0003\u0002\u0002\u0002\u241f\u2420",
+ "\u0005\u0444\u0223\u0002\u2420\u2421\u0005\u044e\u0228\u0002\u2421\u2422",
+ "\u0007\u08b2\u0002\u0002\u2422\u044d\u0003\u0002\u0002\u0002\u2423\u2424",
+ "\u0007\u028e\u0002\u0002\u2424\u2425\u0007\u08b1\u0002\u0002\u2425\u242a",
+ "\u0005\u0450\u0229\u0002\u2426\u2427\u0007\u08b7\u0002\u0002\u2427\u2429",
+ "\u0005\u0450\u0229\u0002\u2428\u2426\u0003\u0002\u0002\u0002\u2429\u242c",
+ "\u0003\u0002\u0002\u0002\u242a\u2428\u0003\u0002\u0002\u0002\u242a\u242b",
+ "\u0003\u0002\u0002\u0002\u242b\u242d\u0003\u0002\u0002\u0002\u242c\u242a",
+ "\u0003\u0002\u0002\u0002\u242d\u242e\u0007\u08b2\u0002\u0002\u242e\u044f",
+ "\u0003\u0002\u0002\u0002\u242f\u2432\u0005\u0592\u02ca\u0002\u2430\u2432",
+ "\u0005\u05a6\u02d4\u0002\u2431\u242f\u0003\u0002\u0002\u0002\u2431\u2430",
+ "\u0003\u0002\u0002\u0002\u2432\u2442\u0003\u0002\u0002\u0002\u2433\u2440",
+ "\u0007?\u0002\u0002\u2434\u2441\u0005\u05c8\u02e5\u0002\u2435\u2436",
+ "\u0007\u08b1\u0002\u0002\u2436\u243b\u0005\u05c8\u02e5\u0002\u2437\u2438",
+ "\u0007\u08b7\u0002\u0002\u2438\u243a\u0005\u05c8\u02e5\u0002\u2439\u2437",
+ "\u0003\u0002\u0002\u0002\u243a\u243d\u0003\u0002\u0002\u0002\u243b\u2439",
+ "\u0003\u0002\u0002\u0002\u243b\u243c\u0003\u0002\u0002\u0002\u243c\u243e",
+ "\u0003\u0002\u0002\u0002\u243d\u243b\u0003\u0002\u0002\u0002\u243e\u243f",
+ "\u0007\u08b2\u0002\u0002\u243f\u2441\u0003\u0002\u0002\u0002\u2440\u2434",
+ "\u0003\u0002\u0002\u0002\u2440\u2435\u0003\u0002\u0002\u0002\u2441\u2443",
+ "\u0003\u0002\u0002\u0002\u2442\u2433\u0003\u0002\u0002\u0002\u2442\u2443",
+ "\u0003\u0002\u0002\u0002\u2443\u0451\u0003\u0002\u0002\u0002\u2444\u2445",
+ "\u0007\u00fd\u0002\u0002\u2445\u2447\u0007\u0094\u0002\u0002\u2446\u2448",
+ "\u0007\u03c5\u0002\u0002\u2447\u2446\u0003\u0002\u0002\u0002\u2447\u2448",
+ "\u0003\u0002\u0002\u0002\u2448\u2449\u0003\u0002\u0002\u0002\u2449\u244b",
+ "\u0005\u04d0\u0269\u0002\u244a\u244c\u0005\u0454\u022b\u0002\u244b\u244a",
+ "\u0003\u0002\u0002\u0002\u244b\u244c\u0003\u0002\u0002\u0002\u244c\u2456",
+ "\u0003\u0002\u0002\u0002\u244d\u244e\u0005\u0454\u022b\u0002\u244e\u244f",
+ "\u0007\u00fd\u0002\u0002\u244f\u2451\u0007\u0094\u0002\u0002\u2450\u2452",
+ "\u0007\u03c5\u0002\u0002\u2451\u2450\u0003\u0002\u0002\u0002\u2451\u2452",
+ "\u0003\u0002\u0002\u0002\u2452\u2453\u0003\u0002\u0002\u0002\u2453\u2454",
+ "\u0005\u04d0\u0269\u0002\u2454\u2456\u0003\u0002\u0002\u0002\u2455\u2444",
+ "\u0003\u0002\u0002\u0002\u2455\u244d\u0003\u0002\u0002\u0002\u2456\u0453",
+ "\u0003\u0002\u0002\u0002\u2457\u2458\u0007\u0623\u0002\u0002\u2458\u2459",
+ "\u0007\u084b\u0002\u0002\u2459\u245a\u0005\u04d0\u0269\u0002\u245a\u0455",
+ "\u0003\u0002\u0002\u0002\u245b\u245c\u0007\u023f\u0002\u0002\u245c\u245d",
+ "\u0007\u0094\u0002\u0002\u245d\u2462\u0005\u0458\u022d\u0002\u245e\u245f",
+ "\u0007\u08b7\u0002\u0002\u245f\u2461\u0005\u0458\u022d\u0002\u2460\u245e",
+ "\u0003\u0002\u0002\u0002\u2461\u2464\u0003\u0002\u0002\u0002\u2462\u2460",
+ "\u0003\u0002\u0002\u0002\u2462\u2463\u0003\u0002\u0002\u0002\u2463\u2466",
+ "\u0003\u0002\u0002\u0002\u2464\u2462\u0003\u0002\u0002\u0002\u2465\u2467",
+ "\u0005\u0460\u0231\u0002\u2466\u2465\u0003\u0002\u0002\u0002\u2466\u2467",
+ "\u0003\u0002\u0002\u0002\u2467\u2476\u0003\u0002\u0002\u0002\u2468\u2473",
+ "\u0005\u0460\u0231\u0002\u2469\u246a\u0007\u023f\u0002\u0002\u246a\u246b",
+ "\u0007\u0094\u0002\u0002\u246b\u2470\u0005\u0458\u022d\u0002\u246c\u246d",
+ "\u0007\u08b7\u0002\u0002\u246d\u246f\u0005\u0458\u022d\u0002\u246e\u246c",
+ "\u0003\u0002\u0002\u0002\u246f\u2472\u0003\u0002\u0002\u0002\u2470\u246e",
+ "\u0003\u0002\u0002\u0002\u2470\u2471\u0003\u0002\u0002\u0002\u2471\u2474",
+ "\u0003\u0002\u0002\u0002\u2472\u2470\u0003\u0002\u0002\u0002\u2473\u2469",
+ "\u0003\u0002\u0002\u0002\u2473\u2474\u0003\u0002\u0002\u0002\u2474\u2476",
+ "\u0003\u0002\u0002\u0002\u2475\u245b\u0003\u0002\u0002\u0002\u2475\u2468",
+ "\u0003\u0002\u0002\u0002\u2476\u0457\u0003\u0002\u0002\u0002\u2477\u247b",
+ "\u0005\u045c\u022f\u0002\u2478\u247b\u0005\u045a\u022e\u0002\u2479\u247b",
+ "\u0005\u04d4\u026b\u0002\u247a\u2477\u0003\u0002\u0002\u0002\u247a\u2478",
+ "\u0003\u0002\u0002\u0002\u247a\u2479\u0003\u0002\u0002\u0002\u247b\u0459",
+ "\u0003\u0002\u0002\u0002\u247c\u247d\tf\u0002\u0002\u247d\u247e\u0007",
+ "\u08b1\u0002\u0002\u247e\u2483\u0005\u045e\u0230\u0002\u247f\u2480\u0007",
+ "\u08b7\u0002\u0002\u2480\u2482\u0005\u045e\u0230\u0002\u2481\u247f\u0003",
+ "\u0002\u0002\u0002\u2482\u2485\u0003\u0002\u0002\u0002\u2483\u2481\u0003",
+ "\u0002\u0002\u0002\u2483\u2484\u0003\u0002\u0002\u0002\u2484\u2486\u0003",
+ "\u0002\u0002\u0002\u2485\u2483\u0003\u0002\u0002\u0002\u2486\u2487\u0007",
+ "\u08b2\u0002\u0002\u2487\u045b\u0003\u0002\u0002\u0002\u2488\u2489\u0007",
+ "\u0241\u0002\u0002\u2489\u248a\u0007\u05e9\u0002\u0002\u248a\u248b\u0007",
+ "\u08b1\u0002\u0002\u248b\u2490\u0005\u045e\u0230\u0002\u248c\u248d\u0007",
+ "\u08b7\u0002\u0002\u248d\u248f\u0005\u045e\u0230\u0002\u248e\u248c\u0003",
+ "\u0002\u0002\u0002\u248f\u2492\u0003\u0002\u0002\u0002\u2490\u248e\u0003",
+ "\u0002\u0002\u0002\u2490\u2491\u0003\u0002\u0002\u0002\u2491\u2493\u0003",
+ "\u0002\u0002\u0002\u2492\u2490\u0003\u0002\u0002\u0002\u2493\u2494\u0007",
+ "\u08b2\u0002\u0002\u2494\u045d\u0003\u0002\u0002\u0002\u2495\u249d\u0005",
+ "\u045a\u022e\u0002\u2496\u2498\u0007\u08b1\u0002\u0002\u2497\u2499\u0005",
+ "\u04d2\u026a\u0002\u2498\u2497\u0003\u0002\u0002\u0002\u2498\u2499\u0003",
+ "\u0002\u0002\u0002\u2499\u249a\u0003\u0002\u0002\u0002\u249a\u249d\u0007",
+ "\u08b2\u0002\u0002\u249b\u249d\u0005\u04d4\u026b\u0002\u249c\u2495\u0003",
+ "\u0002\u0002\u0002\u249c\u2496\u0003\u0002\u0002\u0002\u249c\u249b\u0003",
+ "\u0002\u0002\u0002\u249d\u045f\u0003\u0002\u0002\u0002\u249e\u249f\u0007",
+ "\u024b\u0002\u0002\u249f\u24a0\u0005\u04d0\u0269\u0002\u24a0\u0461\u0003",
+ "\u0002\u0002\u0002\u24a1\u24a5\u0007\u0358\u0002\u0002\u24a2\u24a4\u0005",
+ "\u0464\u0233\u0002\u24a3\u24a2\u0003\u0002\u0002\u0002\u24a4\u24a7\u0003",
+ "\u0002\u0002\u0002\u24a5\u24a3\u0003\u0002\u0002\u0002\u24a5\u24a6\u0003",
+ "\u0002\u0002\u0002\u24a6\u24a9\u0003\u0002\u0002\u0002\u24a7\u24a5\u0003",
+ "\u0002\u0002\u0002\u24a8\u24aa\u0005\u0466\u0234\u0002\u24a9\u24a8\u0003",
+ "\u0002\u0002\u0002\u24a9\u24aa\u0003\u0002\u0002\u0002\u24aa\u24ae\u0003",
+ "\u0002\u0002\u0002\u24ab\u24ad\u0005\u0468\u0235\u0002\u24ac\u24ab\u0003",
+ "\u0002\u0002\u0002\u24ad\u24b0\u0003\u0002\u0002\u0002\u24ae\u24ac\u0003",
+ "\u0002\u0002\u0002\u24ae\u24af\u0003\u0002\u0002\u0002\u24af\u24b1\u0003",
+ "\u0002\u0002\u0002\u24b0\u24ae\u0003\u0002\u0002\u0002\u24b1\u24b2\u0005",
+ "\u046a\u0236\u0002\u24b2\u0463\u0003\u0002\u0002\u0002\u24b3\u24b4\t",
+ "g\u0002\u0002\u24b4\u24bc\u0007\u037a\u0002\u0002\u24b5\u24b9\u0007",
+ "\u07d4\u0002\u0002\u24b6\u24ba\u0007\u017b\u0002\u0002\u24b7\u24b8\u0007",
+ "\u05fd\u0002\u0002\u24b8\u24ba\u0007\u055f\u0002\u0002\u24b9\u24b6\u0003",
+ "\u0002\u0002\u0002\u24b9\u24b7\u0003\u0002\u0002\u0002\u24ba\u24bc\u0003",
+ "\u0002\u0002\u0002\u24bb\u24b3\u0003\u0002\u0002\u0002\u24bb\u24b5\u0003",
+ "\u0002\u0002\u0002\u24bc\u0465\u0003\u0002\u0002\u0002\u24bd\u24be\u0007",
+ "\u0599\u0002\u0002\u24be\u24bf\th\u0002\u0002\u24bf\u24c0\u0007\u05ae",
+ "\u0002\u0002\u24c0\u0467\u0003\u0002\u0002\u0002\u24c1\u24c2\u0007\u055f",
+ "\u0002\u0002\u24c2\u24c3\u0005\u0568\u02b5\u0002\u24c3\u24c4\u0007\u046a",
+ "\u0002\u0002\u24c4\u24c5\u0007\u08b1\u0002\u0002\u24c5\u24c6\u0005\u041e",
+ "\u0210\u0002\u24c6\u24c7\u0007\u08b2\u0002\u0002\u24c7\u24cb\u0005\u046c",
+ "\u0237\u0002\u24c8\u24ca\u0005\u0464\u0233\u0002\u24c9\u24c8\u0003\u0002",
+ "\u0002\u0002\u24ca\u24cd\u0003\u0002\u0002\u0002\u24cb\u24c9\u0003\u0002",
+ "\u0002\u0002\u24cb\u24cc\u0003\u0002\u0002\u0002\u24cc\u0469\u0003\u0002",
+ "\u0002\u0002\u24cd\u24cb\u0003\u0002\u0002\u0002\u24ce\u24cf\u0007\u031c",
+ "\u0002\u0002\u24cf\u24d1\u0005\u056a\u02b6\u0002\u24d0\u24ce\u0003\u0002",
+ "\u0002\u0002\u24d0\u24d1\u0003\u0002\u0002\u0002\u24d1\u24d2\u0003\u0002",
+ "\u0002\u0002\u24d2\u24d6\u0005\u046c\u0237\u0002\u24d3\u24d5\u0005\u0464",
+ "\u0233\u0002\u24d4\u24d3\u0003\u0002\u0002\u0002\u24d5\u24d8\u0003\u0002",
+ "\u0002\u0002\u24d6\u24d4\u0003\u0002\u0002\u0002\u24d6\u24d7\u0003\u0002",
+ "\u0002\u0002\u24d7\u24d9\u0003\u0002\u0002\u0002\u24d8\u24d6\u0003\u0002",
+ "\u0002\u0002\u24d9\u24da\u0005\u0474\u023b\u0002\u24da\u046b\u0003\u0002",
+ "\u0002\u0002\u24db\u24dd\u0005\u046e\u0238\u0002\u24dc\u24db\u0003\u0002",
+ "\u0002\u0002\u24dc\u24dd\u0003\u0002\u0002\u0002\u24dd\u24de\u0003\u0002",
+ "\u0002\u0002\u24de\u24df\u0007\u017b\u0002\u0002\u24df\u24e0\u0007\u0094",
+ "\u0002\u0002\u24e0\u24e1\u0005\u0470\u0239\u0002\u24e1\u24e2\u0007\u033a",
+ "\u0002\u0002\u24e2\u24e3\u0005\u0470\u0239\u0002\u24e3\u046d\u0003\u0002",
+ "\u0002\u0002\u24e4\u24e5\u0007\u04b9\u0002\u0002\u24e5\u24e6\u0007\u0094",
+ "\u0002\u0002\u24e6\u24e7\u0005\u0470\u0239\u0002\u24e7\u046f\u0003\u0002",
+ "\u0002\u0002\u24e8\u24e9\u0007\u08b1\u0002\u0002\u24e9\u24ee\u0005\u0472",
+ "\u023a\u0002\u24ea\u24eb\u0007\u08b7\u0002\u0002\u24eb\u24ed\u0005\u0472",
+ "\u023a\u0002\u24ec\u24ea\u0003\u0002\u0002\u0002\u24ed\u24f0\u0003\u0002",
+ "\u0002\u0002\u24ee\u24ec\u0003\u0002\u0002\u0002\u24ee\u24ef\u0003\u0002",
+ "\u0002\u0002\u24ef\u24f1\u0003\u0002\u0002\u0002\u24f0\u24ee\u0003\u0002",
+ "\u0002\u0002\u24f1\u24f2\u0007\u08b2\u0002\u0002\u24f2\u0471\u0003\u0002",
+ "\u0002\u0002\u24f3\u24f6\u0005\u04d4\u026b\u0002\u24f4\u24f6\u0005\u0424",
+ "\u0213\u0002\u24f5\u24f3\u0003\u0002\u0002\u0002\u24f5\u24f4\u0003\u0002",
+ "\u0002\u0002\u24f6\u24f8\u0003\u0002\u0002\u0002\u24f7\u24f9\u0005\u054a",
+ "\u02a6\u0002\u24f8\u24f7\u0003\u0002\u0002\u0002\u24f8\u24f9\u0003\u0002",
+ "\u0002\u0002\u24f9\u0473\u0003\u0002\u0002\u0002\u24fa\u24fc\u0005\u0476",
+ "\u023c\u0002\u24fb\u24fa\u0003\u0002\u0002\u0002\u24fb\u24fc\u0003\u0002",
+ "\u0002\u0002\u24fc\u24fd\u0003\u0002\u0002\u0002\u24fd\u2506\u0007\u08b1",
+ "\u0002\u0002\u24fe\u2503\u0005\u0478\u023d\u0002\u24ff\u2500\u0007\u08b7",
+ "\u0002\u0002\u2500\u2502\u0005\u0478\u023d\u0002\u2501\u24ff\u0003\u0002",
+ "\u0002\u0002\u2502\u2505\u0003\u0002\u0002\u0002\u2503\u2501\u0003\u0002",
+ "\u0002\u0002\u2503\u2504\u0003\u0002\u0002\u0002\u2504\u2507\u0003\u0002",
+ "\u0002\u0002\u2505\u2503\u0003\u0002\u0002\u0002\u2506\u24fe\u0003\u0002",
+ "\u0002\u0002\u2506\u2507\u0003\u0002\u0002\u0002\u2507\u2508\u0003\u0002",
+ "\u0002\u0002\u2508\u2509\u0007\u08b2\u0002\u0002\u2509\u0475\u0003\u0002",
+ "\u0002\u0002\u250a\u2510\u0007\u05b2\u0002\u0002\u250b\u2511\u0007\u07eb",
+ "\u0002\u0002\u250c\u250e\u0007\u07f1\u0002\u0002\u250d\u250f\u0007%",
+ "\u0002\u0002\u250e\u250d\u0003\u0002\u0002\u0002\u250e\u250f\u0003\u0002",
+ "\u0002\u0002\u250f\u2511\u0003\u0002\u0002\u0002\u2510\u250b\u0003\u0002",
+ "\u0002\u0002\u2510\u250c\u0003\u0002\u0002\u0002\u2510\u2511\u0003\u0002",
+ "\u0002\u0002\u2511\u2514\u0003\u0002\u0002\u0002\u2512\u2513\ti\u0002",
+ "\u0002\u2513\u2515\u0007\u0492\u0002\u0002\u2514\u2512\u0003\u0002\u0002",
+ "\u0002\u2514\u2515\u0003\u0002\u0002\u0002\u2515\u2517\u0003\u0002\u0002",
+ "\u0002\u2516\u2518\u0005\u047c\u023f\u0002\u2517\u2516\u0003\u0002\u0002",
+ "\u0002\u2517\u2518\u0003\u0002\u0002\u0002\u2518\u0477\u0003\u0002\u0002",
+ "\u0002\u2519\u251f\u0007\u07eb\u0002\u0002\u251a\u251c\u0007\u07f1\u0002",
+ "\u0002\u251b\u251d\u0007%\u0002\u0002\u251c\u251b\u0003\u0002\u0002",
+ "\u0002\u251c\u251d\u0003\u0002\u0002\u0002\u251d\u251f\u0003\u0002\u0002",
+ "\u0002\u251e\u2519\u0003\u0002\u0002\u0002\u251e\u251a\u0003\u0002\u0002",
+ "\u0002\u251e\u251f\u0003\u0002\u0002\u0002\u251f\u2520\u0003\u0002\u0002",
+ "\u0002\u2520\u2522\u0005\u047a\u023e\u0002\u2521\u2523\u0005\u0480\u0241",
+ "\u0002\u2522\u2521\u0003\u0002\u0002\u0002\u2522\u2523\u0003\u0002\u0002",
+ "\u0002\u2523\u2524\u0003\u0002\u0002\u0002\u2524\u2525\u0007\u08c5\u0002",
+ "\u0002\u2525\u2526\u0005\u04d4\u026b\u0002\u2526\u0479\u0003\u0002\u0002",
+ "\u0002\u2527\u2528\u0005\u04ee\u0278\u0002\u2528\u047b\u0003\u0002\u0002",
+ "\u0002\u2529\u252a\u0007\u02bc\u0002\u0002\u252a\u252b\u0007\u08b1\u0002",
+ "\u0002\u252b\u252c\u0005\u04d4\u026b\u0002\u252c\u252e\u0007\u08b2\u0002",
+ "\u0002\u252d\u252f\u0005\u047e\u0240\u0002\u252e\u252d\u0003\u0002\u0002",
+ "\u0002\u252e\u252f\u0003\u0002\u0002\u0002\u252f\u047d\u0003\u0002\u0002",
+ "\u0002\u2530\u2531\u0007\u07e6\u0002\u0002\u2531\u2532\u0007\u08b1\u0002",
+ "\u0002\u2532\u2533\u0005\u04d0\u0269\u0002\u2533\u2534\u0007\u08b2\u0002",
+ "\u0002\u2534\u047f\u0003\u0002\u0002\u0002\u2535\u2537\u0007\u0492\u0002",
+ "\u0002\u2536\u2538\u0007\u05f5\u0002\u0002\u2537\u2536\u0003\u0002\u0002",
+ "\u0002\u2537\u2538\u0003\u0002\u0002\u0002\u2538\u2539\u0003\u0002\u0002",
+ "\u0002\u2539\u253a\u0007\u0094\u0002\u0002\u253a\u253f\u0005\u0482\u0242",
+ "\u0002\u253b\u253c\u0007\u08b7\u0002\u0002\u253c\u253e\u0005\u0482\u0242",
+ "\u0002\u253d\u253b\u0003\u0002\u0002\u0002\u253e\u2541\u0003\u0002\u0002",
+ "\u0002\u253f\u253d\u0003\u0002\u0002\u0002\u253f\u2540\u0003\u0002\u0002",
+ "\u0002\u2540\u0481\u0003\u0002\u0002\u0002\u2541\u253f\u0003\u0002\u0002",
+ "\u0002\u2542\u2544\u0005\u04d4\u026b\u0002\u2543\u2545\t\u0016\u0002",
+ "\u0002\u2544\u2543\u0003\u0002\u0002\u0002\u2544\u2545\u0003\u0002\u0002",
+ "\u0002\u2545\u2548\u0003\u0002\u0002\u0002\u2546\u2547\u0007\u044c\u0002",
+ "\u0002\u2547\u2549\tj\u0002\u0002\u2548\u2546\u0003\u0002\u0002\u0002",
+ "\u2548\u2549\u0003\u0002\u0002\u0002\u2549\u0483\u0003\u0002\u0002\u0002",
+ "\u254a\u254b\u0007\u045c\u0002\u0002\u254b\u254c\u0005\u04d4\u026b\u0002",
+ "\u254c\u254d\tk\u0002\u0002\u254d\u0485\u0003\u0002\u0002\u0002\u254e",
+ "\u254f\u0007\u0208\u0002\u0002\u254f\u2554\tl\u0002\u0002\u2550\u2552",
+ "\u0005\u04d4\u026b\u0002\u2551\u2553\u0007\u04d6\u0002\u0002\u2552\u2551",
+ "\u0003\u0002\u0002\u0002\u2552\u2553\u0003\u0002\u0002\u0002\u2553\u2555",
+ "\u0003\u0002\u0002\u0002\u2554\u2550\u0003\u0002\u0002\u0002\u2554\u2555",
+ "\u0003\u0002\u0002\u0002\u2555\u2556\u0003\u0002\u0002\u0002\u2556\u255a",
+ "\tk\u0002\u0002\u2557\u255b\u0007\u0469\u0002\u0002\u2558\u2559\u0007",
+ "\u084b\u0002\u0002\u2559\u255b\u0007\u078c\u0002\u0002\u255a\u2557\u0003",
+ "\u0002\u0002\u0002\u255a\u2558\u0003\u0002\u0002\u0002\u255b\u0487\u0003",
+ "\u0002\u0002\u0002\u255c\u255d\u0007\u0224\u0002\u0002\u255d\u255f\u0007",
+ "\u07eb\u0002\u0002\u255e\u2560\u0005\u048a\u0246\u0002\u255f\u255e\u0003",
+ "\u0002\u0002\u0002\u255f\u2560\u0003\u0002\u0002\u0002\u2560\u2562\u0003",
+ "\u0002\u0002\u0002\u2561\u2563\u0005\u048c\u0247\u0002\u2562\u2561\u0003",
+ "\u0002\u0002\u0002\u2562\u2563\u0003\u0002\u0002\u0002\u2563\u0489\u0003",
+ "\u0002\u0002\u0002\u2564\u2565\u0007\u045d\u0002\u0002\u2565\u2566\u0005",
+ "\u05a4\u02d3\u0002\u2566\u048b\u0003\u0002\u0002\u0002\u2567\u2568\u0007",
+ "\u0603\u0002\u0002\u2568\u256d\u0007\u0308\u0002\u0002\u2569\u256d\u0007",
+ "\u0442\u0002\u0002\u256a\u256b\u0007\u083c\u0002\u0002\u256b\u256d\u0005",
+ "\u04d4\u026b\u0002\u256c\u2567\u0003\u0002\u0002\u0002\u256c\u2569\u0003",
+ "\u0002\u0002\u0002\u256c\u256a\u0003\u0002\u0002\u0002\u256d\u048d\u0003",
+ "\u0002\u0002\u0002\u256e\u256f\u0007\u07eb\u0002\u0002\u256f\u2570\u0005",
+ "\u04bc\u025f\u0002\u2570\u2572\u0005\u0490\u0249\u0002\u2571\u2573\u0005",
+ "\u054e\u02a8\u0002\u2572\u2571\u0003\u0002\u0002\u0002\u2572\u2573\u0003",
+ "\u0002\u0002\u0002\u2573\u2575\u0003\u0002\u0002\u0002\u2574\u2576\u0005",
+ "\u04be\u0260\u0002\u2575\u2574\u0003\u0002\u0002\u0002\u2575\u2576\u0003",
+ "\u0002\u0002\u0002\u2576\u2578\u0003\u0002\u0002\u0002\u2577\u2579\u0005",
+ "\u04c0\u0261\u0002\u2578\u2577\u0003\u0002\u0002\u0002\u2578\u2579\u0003",
+ "\u0002\u0002\u0002\u2579\u048f\u0003\u0002\u0002\u0002\u257a\u258a\u0007",
+ "\u05e8\u0002\u0002\u257b\u2580\u0005\u0492\u024a\u0002\u257c\u257d\u0007",
+ "\u08b7\u0002\u0002\u257d\u257f\u0005\u0492\u024a\u0002\u257e\u257c\u0003",
+ "\u0002\u0002\u0002\u257f\u2582\u0003\u0002\u0002\u0002\u2580\u257e\u0003",
+ "\u0002\u0002\u0002\u2580\u2581\u0003\u0002\u0002\u0002\u2581\u258b\u0003",
+ "\u0002\u0002\u0002\u2582\u2580\u0003\u0002\u0002\u0002\u2583\u2584\u0007",
+ "\u081c\u0002\u0002\u2584\u2585\u0007\u08b1\u0002\u0002\u2585\u2586\u0005",
+ "\u05d0\u02e9\u0002\u2586\u2587\u0007\u08b2\u0002\u0002\u2587\u2588\u0007",
+ "\u08c5\u0002\u0002\u2588\u2589\u0005\u04d4\u026b\u0002\u2589\u258b\u0003",
+ "\u0002\u0002\u0002\u258a\u257b\u0003\u0002\u0002\u0002\u258a\u2583\u0003",
+ "\u0002\u0002\u0002\u258b\u0491\u0003\u0002\u0002\u0002\u258c\u258d\u0005",
+ "\u0592\u02ca\u0002\u258d\u258e\u0007\u08c5\u0002\u0002\u258e\u258f\u0005",
+ "\u04d4\u026b\u0002\u258f\u2595\u0003\u0002\u0002\u0002\u2590\u2591\u0005",
+ "\u05a6\u02d4\u0002\u2591\u2592\u0007\u08c5\u0002\u0002\u2592\u2593\u0005",
+ "\u041e\u0210\u0002\u2593\u2595\u0003\u0002\u0002\u0002\u2594\u258c\u0003",
+ "\u0002\u0002\u0002\u2594\u2590\u0003\u0002\u0002\u0002\u2595\u0493\u0003",
+ "\u0002\u0002\u0002\u2596\u2598\u0007\u016c\u0002\u0002\u2597\u2599\u0007",
+ "\u022c\u0002\u0002\u2598\u2597\u0003\u0002\u0002\u0002\u2598\u2599\u0003",
+ "\u0002\u0002\u0002\u2599\u259a\u0003\u0002\u0002\u0002\u259a\u259c\u0005",
+ "\u04bc\u025f\u0002\u259b\u259d\u0005\u054e\u02a8\u0002\u259c\u259b\u0003",
+ "\u0002\u0002\u0002\u259c\u259d\u0003\u0002\u0002\u0002\u259d\u259f\u0003",
+ "\u0002\u0002\u0002\u259e\u25a0\u0005\u04be\u0260\u0002\u259f\u259e\u0003",
+ "\u0002\u0002\u0002\u259f\u25a0\u0003\u0002\u0002\u0002\u25a0\u25a2\u0003",
+ "\u0002\u0002\u0002\u25a1\u25a3\u0005\u04c0\u0261\u0002\u25a2\u25a1\u0003",
+ "\u0002\u0002\u0002\u25a2\u25a3\u0003\u0002\u0002\u0002\u25a3\u0495\u0003",
+ "\u0002\u0002\u0002\u25a4\u25a7\u0007\u029f\u0002\u0002\u25a5\u25a8\u0005",
+ "\u0498\u024d\u0002\u25a6\u25a8\u0005\u049a\u024e\u0002\u25a7\u25a5\u0003",
+ "\u0002\u0002\u0002\u25a7\u25a6\u0003\u0002\u0002\u0002\u25a8\u0497\u0003",
+ "\u0002\u0002\u0002\u25a9\u25af\u0005\u04a4\u0253\u0002\u25aa\u25ac\u0005",
+ "\u04a6\u0254\u0002\u25ab\u25ad\u0005\u04be\u0260\u0002\u25ac\u25ab\u0003",
+ "\u0002\u0002\u0002\u25ac\u25ad\u0003\u0002\u0002\u0002\u25ad\u25b0\u0003",
+ "\u0002\u0002\u0002\u25ae\u25b0\u0005\u0414\u020b\u0002\u25af\u25aa\u0003",
+ "\u0002\u0002\u0002\u25af\u25ae\u0003\u0002\u0002\u0002\u25b0\u25b2\u0003",
+ "\u0002\u0002\u0002\u25b1\u25b3\u0005\u04c0\u0261\u0002\u25b2\u25b1\u0003",
+ "\u0002\u0002\u0002\u25b2\u25b3\u0003\u0002\u0002\u0002\u25b3\u0499\u0003",
+ "\u0002\u0002\u0002\u25b4\u25b6\u0007%\u0002\u0002\u25b5\u25b7\u0005",
+ "\u049c\u024f\u0002\u25b6\u25b5\u0003\u0002\u0002\u0002\u25b7\u25b8\u0003",
+ "\u0002\u0002\u0002\u25b8\u25b6\u0003\u0002\u0002\u0002\u25b8\u25b9\u0003",
+ "\u0002\u0002\u0002\u25b9\u25bc\u0003\u0002\u0002\u0002\u25ba\u25bc\u0005",
+ "\u049e\u0250\u0002\u25bb\u25b4\u0003\u0002\u0002\u0002\u25bb\u25ba\u0003",
+ "\u0002\u0002\u0002\u25bc\u25bd\u0003\u0002\u0002\u0002\u25bd\u25be\u0005",
+ "\u0414\u020b\u0002\u25be\u049b\u0003\u0002\u0002\u0002\u25bf\u25c1\u0005",
+ "\u04a4\u0253\u0002\u25c0\u25c2\u0005\u04a6\u0254\u0002\u25c1\u25c0\u0003",
+ "\u0002\u0002\u0002\u25c1\u25c2\u0003\u0002\u0002\u0002\u25c2\u25c4\u0003",
+ "\u0002\u0002\u0002\u25c3\u25c5\u0005\u04c0\u0261\u0002\u25c4\u25c3\u0003",
+ "\u0002\u0002\u0002\u25c4\u25c5\u0003\u0002\u0002\u0002\u25c5\u049d\u0003",
+ "\u0002\u0002\u0002\u25c6\u25c8\tm\u0002\u0002\u25c7\u25c6\u0003\u0002",
+ "\u0002\u0002\u25c7\u25c8\u0003\u0002\u0002\u0002\u25c8\u25ca\u0003\u0002",
+ "\u0002\u0002\u25c9\u25cb\u0005\u04a0\u0251\u0002\u25ca\u25c9\u0003\u0002",
+ "\u0002\u0002\u25cb\u25cc\u0003\u0002\u0002\u0002\u25cc\u25ca\u0003\u0002",
+ "\u0002\u0002\u25cc\u25cd\u0003\u0002\u0002\u0002\u25cd\u25cf\u0003\u0002",
+ "\u0002\u0002\u25ce\u25d0\u0005\u04a2\u0252\u0002\u25cf\u25ce\u0003\u0002",
+ "\u0002\u0002\u25cf\u25d0\u0003\u0002\u0002\u0002\u25d0\u049f\u0003\u0002",
+ "\u0002\u0002\u25d1\u25d2\u0007\u0843\u0002\u0002\u25d2\u25d3\u0005\u04d0",
+ "\u0269\u0002\u25d3\u25d5\u0007\u0787\u0002\u0002\u25d4\u25d6\u0005\u049c",
+ "\u024f\u0002\u25d5\u25d4\u0003\u0002\u0002\u0002\u25d6\u25d7\u0003\u0002",
+ "\u0002\u0002\u25d7\u25d5\u0003\u0002\u0002\u0002\u25d7\u25d8\u0003\u0002",
+ "\u0002\u0002\u25d8\u04a1\u0003\u0002\u0002\u0002\u25d9\u25db\u0007\u01b2",
+ "\u0002\u0002\u25da\u25dc\u0005\u049c\u024f\u0002\u25db\u25da\u0003\u0002",
+ "\u0002\u0002\u25dc\u25dd\u0003\u0002\u0002\u0002\u25dd\u25db\u0003\u0002",
+ "\u0002\u0002\u25dd\u25de\u0003\u0002\u0002\u0002\u25de\u04a3\u0003\u0002",
+ "\u0002\u0002\u25df\u25e0\u0007\u02b5\u0002\u0002\u25e0\u25e2\u0005\u04bc",
+ "\u025f\u0002\u25e1\u25e3\u0005\u05a6\u02d4\u0002\u25e2\u25e1\u0003\u0002",
+ "\u0002\u0002\u25e2\u25e3\u0003\u0002\u0002\u0002\u25e3\u04a5\u0003\u0002",
+ "\u0002\u0002\u25e4\u25e5\u0007\u081b\u0002\u0002\u25e5\u25e7\u0007\u08b1",
+ "\u0002\u0002\u25e6\u25e8\u0005\u04d2\u026a\u0002\u25e7\u25e6\u0003\u0002",
+ "\u0002\u0002\u25e7\u25e8\u0003\u0002\u0002\u0002\u25e8\u25e9\u0003\u0002",
+ "\u0002\u0002\u25e9\u25ea\u0007\u08b2\u0002\u0002\u25ea\u04a7\u0003\u0002",
+ "\u0002\u0002\u25eb\u25ec\u0007\u0342\u0002\u0002\u25ec\u25ed\u0007\u02b5",
+ "\u0002\u0002\u25ed\u25ef\u0005\u0594\u02cb\u0002\u25ee\u25f0\u0005\u054c",
+ "\u02a7\u0002\u25ef\u25ee\u0003\u0002\u0002\u0002\u25ef\u25f0\u0003\u0002",
+ "\u0002\u0002\u25f0\u25f1\u0003\u0002\u0002\u0002\u25f1\u25f2\u0007\u0811",
+ "\u0002\u0002\u25f2\u25f3\u0005\u04b2\u025a\u0002\u25f3\u25f4\u0007\u046a",
+ "\u0002\u0002\u25f4\u25f5\u0007\u08b1\u0002\u0002\u25f5\u25f6\u0005\u04d0",
+ "\u0269\u0002\u25f6\u25ff\u0007\u08b2\u0002\u0002\u25f7\u25f9\u0005\u04aa",
+ "\u0256\u0002\u25f8\u25fa\u0005\u04b0\u0259\u0002\u25f9\u25f8\u0003\u0002",
+ "\u0002\u0002\u25f9\u25fa\u0003\u0002\u0002\u0002\u25fa\u2600\u0003\u0002",
+ "\u0002\u0002\u25fb\u25fd\u0005\u04b0\u0259\u0002\u25fc\u25fe\u0005\u04aa",
+ "\u0256\u0002\u25fd\u25fc\u0003\u0002\u0002\u0002\u25fd\u25fe\u0003\u0002",
+ "\u0002\u0002\u25fe\u2600\u0003\u0002\u0002\u0002\u25ff\u25f7\u0003\u0002",
+ "\u0002\u0002\u25ff\u25fb\u0003\u0002\u0002\u0002\u25ff\u2600\u0003\u0002",
+ "\u0002\u0002\u2600\u2602\u0003\u0002\u0002\u0002\u2601\u2603\u0005\u04c0",
+ "\u0261\u0002\u2602\u2601\u0003\u0002\u0002\u0002\u2602\u2603\u0003\u0002",
+ "\u0002\u0002\u2603\u04a9\u0003\u0002\u0002\u0002\u2604\u2605\u0007\u0843",
+ "\u0002\u0002\u2605\u2606\u0007\u0326\u0002\u0002\u2606\u2607\u0007\u0787",
+ "\u0002\u0002\u2607\u2608\u0007\u07eb\u0002\u0002\u2608\u2609\u0007\u05e8",
+ "\u0002\u0002\u2609\u260e\u0005\u04ac\u0257\u0002\u260a\u260b\u0007\u08b7",
+ "\u0002\u0002\u260b\u260d\u0005\u04ac\u0257\u0002\u260c\u260a\u0003\u0002",
+ "\u0002\u0002\u260d\u2610\u0003\u0002\u0002\u0002\u260e\u260c\u0003\u0002",
+ "\u0002\u0002\u260e\u260f\u0003\u0002\u0002\u0002\u260f\u2612\u0003\u0002",
+ "\u0002\u0002\u2610\u260e\u0003\u0002\u0002\u0002\u2611\u2613\u0005\u054e",
+ "\u02a8\u0002\u2612\u2611\u0003\u0002\u0002\u0002\u2612\u2613\u0003\u0002",
+ "\u0002\u0002\u2613\u2615\u0003\u0002\u0002\u0002\u2614\u2616\u0005\u04ae",
+ "\u0258\u0002\u2615\u2614\u0003\u0002\u0002\u0002\u2615\u2616\u0003\u0002",
+ "\u0002\u0002\u2616\u04ab\u0003\u0002\u0002\u0002\u2617\u2618\u0005\u0592",
+ "\u02ca\u0002\u2618\u2619\u0007\u08c5\u0002\u0002\u2619\u261a\u0005\u04d4",
+ "\u026b\u0002\u261a\u04ad\u0003\u0002\u0002\u0002\u261b\u261c\u0007\u016c",
+ "\u0002\u0002\u261c\u261d\u0005\u054e\u02a8\u0002\u261d\u04af\u0003\u0002",
+ "\u0002\u0002\u261e\u261f\u0007\u0843\u0002\u0002\u261f\u2620\u0007\u0433",
+ "\u0002\u0002\u2620\u2621\u0007\u0326\u0002\u0002\u2621\u2622\u0007\u0787",
+ "\u0002\u0002\u2622\u2624\u0007\u029f\u0002\u0002\u2623\u2625\u0005\u05a6",
+ "\u02d4\u0002\u2624\u2623\u0003\u0002\u0002\u0002\u2624\u2625\u0003\u0002",
+ "\u0002\u0002\u2625\u2626\u0003\u0002\u0002\u0002\u2626\u2627\u0007\u081b",
+ "\u0002\u0002\u2627\u2629\u0007\u08b1\u0002\u0002\u2628\u262a\u0005\u04d2",
+ "\u026a\u0002\u2629\u2628\u0003\u0002\u0002\u0002\u2629\u262a\u0003\u0002",
+ "\u0002\u0002\u262a\u262b\u0003\u0002\u0002\u0002\u262b\u262d\u0007\u08b2",
+ "\u0002\u0002\u262c\u262e\u0005\u054e\u02a8\u0002\u262d\u262c\u0003\u0002",
+ "\u0002\u0002\u262d\u262e\u0003\u0002\u0002\u0002\u262e\u04b1\u0003\u0002",
+ "\u0002\u0002\u262f\u2635\u0005\u0594\u02cb\u0002\u2630\u2631\u0007\u08b1",
+ "\u0002\u0002\u2631\u2632\u0005\u0414\u020b\u0002\u2632\u2633\u0007\u08b2",
+ "\u0002\u0002\u2633\u2635\u0003\u0002\u0002\u0002\u2634\u262f\u0003\u0002",
+ "\u0002\u0002\u2634\u2630\u0003\u0002\u0002\u0002\u2635\u2637\u0003\u0002",
+ "\u0002\u0002\u2636\u2638\u0005\u054c\u02a7\u0002\u2637\u2636\u0003\u0002",
+ "\u0002\u0002\u2637\u2638\u0003\u0002\u0002\u0002\u2638\u04b3\u0003\u0002",
+ "\u0002\u0002\u2639\u263a\u0007\u030a\u0002\u0002\u263a\u263b\u0007\u077a",
+ "\u0002\u0002\u263b\u2640\u0005\u04b8\u025d\u0002\u263c\u263d\u0007\u08b7",
+ "\u0002\u0002\u263d\u263f\u0005\u04b8\u025d\u0002\u263e\u263c\u0003\u0002",
+ "\u0002\u0002\u263f\u2642\u0003\u0002\u0002\u0002\u2640\u263e\u0003\u0002",
+ "\u0002\u0002\u2640\u2641\u0003\u0002\u0002\u0002\u2641\u2643\u0003\u0002",
+ "\u0002\u0002\u2642\u2640\u0003\u0002\u0002\u0002\u2643\u2644\u0007\u028e",
+ "\u0002\u0002\u2644\u2645\u0005\u04ba\u025e\u0002\u2645\u2647\u0007\u035e",
+ "\u0002\u0002\u2646\u2648\u0005\u04b6\u025c\u0002\u2647\u2646\u0003\u0002",
+ "\u0002\u0002\u2647\u2648\u0003\u0002\u0002\u0002\u2648\u04b5\u0003\u0002",
+ "\u0002\u0002\u2649\u264a\u0007\u083c\u0002\u0002\u264a\u264d\u0005\u04d4",
+ "\u026b\u0002\u264b\u264d\u0007\u0442\u0002\u0002\u264c\u2649\u0003\u0002",
+ "\u0002\u0002\u264c\u264b\u0003\u0002\u0002\u0002\u264d\u04b7\u0003\u0002",
+ "\u0002\u0002\u264e\u2650\u0005\u0594\u02cb\u0002\u264f\u2651\u0005\u0548",
+ "\u02a5\u0002\u2650\u264f\u0003\u0002\u0002\u0002\u2650\u2651\u0003\u0002",
+ "\u0002\u0002\u2651\u04b9\u0003\u0002\u0002\u0002\u2652\u2653\u0007\u05ad",
+ "\u0002\u0002\u2653\u265f\u0007\u05ef\u0002\u0002\u2654\u2655\u0007\u05ad",
+ "\u0002\u0002\u2655\u265f\u0007\u01dc\u0002\u0002\u2656\u2658\u0007\u05ef",
+ "\u0002\u0002\u2657\u2659\u0007\u07eb\u0002\u0002\u2658\u2657\u0003\u0002",
+ "\u0002\u0002\u2658\u2659\u0003\u0002\u0002\u0002\u2659\u265f\u0003\u0002",
+ "\u0002\u0002\u265a\u265b\u0007\u05ef\u0002\u0002\u265b\u265c\u0007\u05ad",
+ "\u0002\u0002\u265c\u265f\u0007\u01dc\u0002\u0002\u265d\u265f\u0007\u01dc",
+ "\u0002\u0002\u265e\u2652\u0003\u0002\u0002\u0002\u265e\u2654\u0003\u0002",
+ "\u0002\u0002\u265e\u2656\u0003\u0002\u0002\u0002\u265e\u265a\u0003\u0002",
+ "\u0002\u0002\u265e\u265d\u0003\u0002\u0002\u0002\u265f\u04bb\u0003\u0002",
+ "\u0002\u0002\u2660\u2667\u0005\u04c6\u0264\u0002\u2661\u2662\u0007\u0469",
+ "\u0002\u0002\u2662\u2663\u0007\u08b1\u0002\u0002\u2663\u2664\u0005\u04c6",
+ "\u0264\u0002\u2664\u2665\u0007\u08b2\u0002\u0002\u2665\u2667\u0003\u0002",
+ "\u0002\u0002\u2666\u2660\u0003\u0002\u0002\u0002\u2666\u2661\u0003\u0002",
+ "\u0002\u0002\u2667\u2669\u0003\u0002\u0002\u0002\u2668\u266a\u0005\u054c",
+ "\u02a7\u0002\u2669\u2668\u0003\u0002\u0002\u0002\u2669\u266a\u0003\u0002",
+ "\u0002\u0002\u266a\u04bd\u0003\u0002\u0002\u0002\u266b\u266c\t\\\u0002",
+ "\u0002\u266c\u266d\u0005\u04d2\u026a\u0002\u266d\u266e\u0005\u0550\u02a9",
+ "\u0002\u266e\u04bf\u0003\u0002\u0002\u0002\u266f\u2670\u0007\u0311\u0002",
+ "\u0002\u2670\u2672\u0007\u01cc\u0002\u0002\u2671\u2673\u0005\u04c2\u0262",
+ "\u0002\u2672\u2671\u0003\u0002\u0002\u0002\u2672\u2673\u0003\u0002\u0002",
+ "\u0002\u2673\u2675\u0003\u0002\u0002\u0002\u2674\u2676\u0005\u04d4\u026b",
+ "\u0002\u2675\u2674\u0003\u0002\u0002\u0002\u2675\u2676\u0003\u0002\u0002",
+ "\u0002\u2676\u2678\u0003\u0002\u0002\u0002\u2677\u2679\u0005\u04c4\u0263",
+ "\u0002\u2678\u2677\u0003\u0002\u0002\u0002\u2678\u2679\u0003\u0002\u0002",
+ "\u0002\u2679\u04c1\u0003\u0002\u0002\u0002\u267a\u267b\u0007\u02b5\u0002",
+ "\u0002\u267b\u267c\u0005\u0594\u02cb\u0002\u267c\u04c3\u0003\u0002\u0002",
+ "\u0002\u267d\u267e\u0007\u0575\u0002\u0002\u267e\u2681\u0007\u02f8\u0002",
+ "\u0002\u267f\u2682\u0007\u07d6\u0002\u0002\u2680\u2682\u0005\u04d4\u026b",
+ "\u0002\u2681\u267f\u0003\u0002\u0002\u0002\u2681\u2680\u0003\u0002\u0002",
+ "\u0002\u2682\u04c5\u0003\u0002\u0002\u0002\u2683\u2690\u0005\u04c8\u0265",
+ "\u0002\u2684\u2685\u0007\u08b1\u0002\u0002\u2685\u2687\u0005\u0414\u020b",
+ "\u0002\u2686\u2688\u0005\u04ca\u0266\u0002\u2687\u2686\u0003\u0002\u0002",
+ "\u0002\u2687\u2688\u0003\u0002\u0002\u0002\u2688\u2689\u0003\u0002\u0002",
+ "\u0002\u2689\u268a\u0007\u08b2\u0002\u0002\u268a\u2690\u0003\u0002\u0002",
+ "\u0002\u268b\u268d\u0005\u0594\u02cb\u0002\u268c\u268e\u0005\u04cc\u0267",
+ "\u0002\u268d\u268c\u0003\u0002\u0002\u0002\u268d\u268e\u0003\u0002\u0002",
+ "\u0002\u268e\u2690\u0003\u0002\u0002\u0002\u268f\u2683\u0003\u0002\u0002",
+ "\u0002\u268f\u2684\u0003\u0002\u0002\u0002\u268f\u268b\u0003\u0002\u0002",
+ "\u0002\u2690\u04c7\u0003\u0002\u0002\u0002\u2691\u269c\tn\u0002\u0002",
+ "\u2692\u2693\u0007\u08b1\u0002\u0002\u2693\u2694\u0005\u041e\u0210\u0002",
+ "\u2694\u2695\u0007\u08b2\u0002\u0002\u2695\u269d\u0003\u0002\u0002\u0002",
+ "\u2696\u2697\u0007\u08b1\u0002\u0002\u2697\u2698\u0005\u04d4\u026b\u0002",
+ "\u2698\u269a\u0007\u08b2\u0002\u0002\u2699\u269b\u0005\u05d4\u02eb\u0002",
+ "\u269a\u2699\u0003\u0002\u0002\u0002\u269a\u269b\u0003\u0002\u0002\u0002",
+ "\u269b\u269d\u0003\u0002\u0002\u0002\u269c\u2692\u0003\u0002\u0002\u0002",
+ "\u269c\u2696\u0003\u0002\u0002\u0002\u269d\u04c9\u0003\u0002\u0002\u0002",
+ "\u269e\u26a7\u0007\u084b\u0002\u0002\u269f\u26a0\u0007\u054b\u0002\u0002",
+ "\u26a0\u26a8\u0007\u0469\u0002\u0002\u26a1\u26a2\u0007\u00b6\u0002\u0002",
+ "\u26a2\u26a5\u0007\u0477\u0002\u0002\u26a3\u26a4\u0007\u0103\u0002\u0002",
+ "\u26a4\u26a6\u0005\u0576\u02bc\u0002\u26a5\u26a3\u0003\u0002\u0002\u0002",
+ "\u26a5\u26a6\u0003\u0002\u0002\u0002\u26a6\u26a8\u0003\u0002\u0002\u0002",
+ "\u26a7\u269f\u0003\u0002\u0002\u0002\u26a7\u26a1\u0003\u0002\u0002\u0002",
+ "\u26a8\u04cb\u0003\u0002\u0002\u0002\u26a9\u26ab\u0007\u05b5\u0002\u0002",
+ "\u26aa\u26ac\u0007\u0083\u0002\u0002\u26ab\u26aa\u0003\u0002\u0002\u0002",
+ "\u26ab\u26ac\u0003\u0002\u0002\u0002\u26ac\u26ad\u0003\u0002\u0002\u0002",
+ "\u26ad\u26ae\u0007\u08b1\u0002\u0002\u26ae\u26b1\u0005\u04d4\u026b\u0002",
+ "\u26af\u26b0\u0007\u08b7\u0002\u0002\u26b0\u26b2\u0005\u04d4\u026b\u0002",
+ "\u26b1\u26af\u0003\u0002\u0002\u0002\u26b1\u26b2\u0003\u0002\u0002\u0002",
+ "\u26b2\u26b3\u0003\u0002\u0002\u0002\u26b3\u26b5\u0007\u08b2\u0002\u0002",
+ "\u26b4\u26b6\u0005\u04ce\u0268\u0002\u26b5\u26b4\u0003\u0002\u0002\u0002",
+ "\u26b5\u26b6\u0003\u0002\u0002\u0002\u26b6\u04cd\u0003\u0002\u0002\u0002",
+ "\u26b7\u26b8\u0007\u05cf\u0002\u0002\u26b8\u26b9\u0007\u08b1\u0002\u0002",
+ "\u26b9\u26ba\u0005\u04d4\u026b\u0002\u26ba\u26bb\u0007\u08b2\u0002\u0002",
+ "\u26bb\u04cf\u0003\u0002\u0002\u0002\u26bc\u26bd\u0005\u04d4\u026b\u0002",
+ "\u26bd\u04d1\u0003\u0002\u0002\u0002\u26be\u26c3\u0005\u04d4\u026b\u0002",
+ "\u26bf\u26c0\u0007\u08b7\u0002\u0002\u26c0\u26c2\u0005\u04d4\u026b\u0002",
+ "\u26c1\u26bf\u0003\u0002\u0002\u0002\u26c2\u26c5\u0003\u0002\u0002\u0002",
+ "\u26c3\u26c1\u0003\u0002\u0002\u0002\u26c3\u26c4\u0003\u0002\u0002\u0002",
+ "\u26c4\u04d3\u0003\u0002\u0002\u0002\u26c5\u26c3\u0003\u0002\u0002\u0002",
+ "\u26c6\u26c9\u0005\u04d6\u026c\u0002\u26c7\u26c9\u0005\u04d8\u026d\u0002",
+ "\u26c8\u26c6\u0003\u0002\u0002\u0002\u26c8\u26c7\u0003\u0002\u0002\u0002",
+ "\u26c9\u04d5\u0003\u0002\u0002\u0002\u26ca\u26cb\u0007\u0137\u0002\u0002",
+ "\u26cb\u26cc\u0007\u08b1\u0002\u0002\u26cc\u26cd\u0005\u041e\u0210\u0002",
+ "\u26cd\u26ce\u0007\u08b2\u0002\u0002\u26ce\u04d7\u0003\u0002\u0002\u0002",
+ "\u26cf\u26d0\b\u026d\u0001\u0002\u26d0\u26d1\u0005\u04da\u026e\u0002",
+ "\u26d1\u26da\u0003\u0002\u0002\u0002\u26d2\u26d3\f\u0004\u0002\u0002",
+ "\u26d3\u26d4\u0007-\u0002\u0002\u26d4\u26d9\u0005\u04d8\u026d\u0005",
+ "\u26d5\u26d6\f\u0003\u0002\u0002\u26d6\u26d7\u0007\u0496\u0002\u0002",
+ "\u26d7\u26d9\u0005\u04d8\u026d\u0004\u26d8\u26d2\u0003\u0002\u0002\u0002",
+ "\u26d8\u26d5\u0003\u0002\u0002\u0002\u26d9\u26dc\u0003\u0002\u0002\u0002",
+ "\u26da\u26d8\u0003\u0002\u0002\u0002\u26da\u26db\u0003\u0002\u0002\u0002",
+ "\u26db\u04d9\u0003\u0002\u0002\u0002\u26dc\u26da\u0003\u0002\u0002\u0002",
+ "\u26dd\u26df\u0007\u0433\u0002\u0002\u26de\u26dd\u0003\u0002\u0002\u0002",
+ "\u26de\u26df\u0003\u0002\u0002\u0002\u26df\u26e0\u0003\u0002\u0002\u0002",
+ "\u26e0\u26e8\u0005\u04de\u0270\u0002\u26e1\u26e3\u0007\u02b9\u0002\u0002",
+ "\u26e2\u26e4\u0007\u0433\u0002\u0002\u26e3\u26e2\u0003\u0002\u0002\u0002",
+ "\u26e3\u26e4\u0003\u0002\u0002\u0002\u26e4\u26e5\u0003\u0002\u0002\u0002",
+ "\u26e5\u26e7\u0005\u04dc\u026f\u0002\u26e6\u26e1\u0003\u0002\u0002\u0002",
+ "\u26e7\u26ea\u0003\u0002\u0002\u0002\u26e8\u26e6\u0003\u0002\u0002\u0002",
+ "\u26e8\u26e9\u0003\u0002\u0002\u0002\u26e9\u04db\u0003\u0002\u0002\u0002",
+ "\u26ea\u26e8\u0003\u0002\u0002\u0002\u26eb\u2705\u0007\u044b\u0002\u0002",
+ "\u26ec\u2705\u0007\u0373\u0002\u0002\u26ed\u2705\u0007\u0513\u0002\u0002",
+ "\u26ee\u2705\u0007\u028b\u0002\u0002\u26ef\u26f0\u0007#\u0002\u0002",
+ "\u26f0\u2705\u0007\u05e8\u0002\u0002\u26f1\u2705\u0007\u01b7\u0002\u0002",
+ "\u26f2\u26f4\u0007\u045d\u0002\u0002\u26f3\u26f5\u0007\u07c5\u0002\u0002",
+ "\u26f4\u26f3\u0003\u0002\u0002\u0002\u26f4\u26f5\u0003\u0002\u0002\u0002",
+ "\u26f5\u26f6\u0003\u0002\u0002\u0002\u26f6\u26f8\u0007\u08b1\u0002\u0002",
+ "\u26f7\u26f9\u0007\u0469\u0002\u0002\u26f8\u26f7\u0003\u0002\u0002\u0002",
+ "\u26f8\u26f9\u0003\u0002\u0002\u0002\u26f9\u26fa\u0003\u0002\u0002\u0002",
+ "\u26fa\u26ff\u0005\u05b4\u02db\u0002\u26fb\u26fc\u0007\u08b7\u0002\u0002",
+ "\u26fc\u26fe\u0005\u05b4\u02db\u0002\u26fd\u26fb\u0003\u0002\u0002\u0002",
+ "\u26fe\u2701\u0003\u0002\u0002\u0002\u26ff\u26fd\u0003\u0002\u0002\u0002",
+ "\u26ff\u2700\u0003\u0002\u0002\u0002\u2700\u2702\u0003\u0002\u0002\u0002",
+ "\u2701\u26ff\u0003\u0002\u0002\u0002\u2702\u2703\u0007\u08b2\u0002\u0002",
+ "\u2703\u2705\u0003\u0002\u0002\u0002\u2704\u26eb\u0003\u0002\u0002\u0002",
+ "\u2704\u26ec\u0003\u0002\u0002\u0002\u2704\u26ed\u0003\u0002\u0002\u0002",
+ "\u2704\u26ee\u0003\u0002\u0002\u0002\u2704\u26ef\u0003\u0002\u0002\u0002",
+ "\u2704\u26f1\u0003\u0002\u0002\u0002\u2704\u26f2\u0003\u0002\u0002\u0002",
+ "\u2705\u04dd\u0003\u0002\u0002\u0002\u2706\u270c\u0005\u04e0\u0271\u0002",
+ "\u2707\u2709\to\u0002\u0002\u2708\u270a\u0007\u045d\u0002\u0002\u2709",
+ "\u2708\u0003\u0002\u0002\u0002\u2709\u270a\u0003\u0002\u0002\u0002\u270a",
+ "\u270b\u0003\u0002\u0002\u0002\u270b\u270d\u0005\u04ea\u0276\u0002\u270c",
+ "\u2707\u0003\u0002\u0002\u0002\u270c\u270d\u0003\u0002\u0002\u0002\u270d",
+ "\u04df\u0003\u0002\u0002\u0002\u270e\u270f\b\u0271\u0001\u0002\u270f",
+ "\u2710\u0005\u04e2\u0272\u0002\u2710\u2717\u0003\u0002\u0002\u0002\u2711",
+ "\u2712\f\u0004\u0002\u0002\u2712\u2713\u0005\u04e4\u0273\u0002\u2713",
+ "\u2714\u0005\u04e0\u0271\u0005\u2714\u2716\u0003\u0002\u0002\u0002\u2715",
+ "\u2711\u0003\u0002\u0002\u0002\u2716\u2719\u0003\u0002\u0002\u0002\u2717",
+ "\u2715\u0003\u0002\u0002\u0002\u2717\u2718\u0003\u0002\u0002\u0002\u2718",
+ "\u04e1\u0003\u0002\u0002\u0002\u2719\u2717\u0003\u0002\u0002\u0002\u271a",
+ "\u272a\u0005\u04ea\u0276\u0002\u271b\u271d\u0007\u0433\u0002\u0002\u271c",
+ "\u271b\u0003\u0002\u0002\u0002\u271c\u271d\u0003\u0002\u0002\u0002\u271d",
+ "\u2728\u0003\u0002\u0002\u0002\u271e\u271f\u0007\u028e\u0002\u0002\u271f",
+ "\u2729\u0005\u04e6\u0274\u0002\u2720\u2721\u0007m\u0002\u0002\u2721",
+ "\u2729\u0005\u04e8\u0275\u0002\u2722\u2723\tp\u0002\u0002\u2723\u2726",
+ "\u0005\u04ea\u0276\u0002\u2724\u2725\u0007\u01cd\u0002\u0002\u2725\u2727",
+ "\u0005\u04ea\u0276\u0002\u2726\u2724\u0003\u0002\u0002\u0002\u2726\u2727",
+ "\u0003\u0002\u0002\u0002\u2727\u2729\u0003\u0002\u0002\u0002\u2728\u271e",
+ "\u0003\u0002\u0002\u0002\u2728\u2720\u0003\u0002\u0002\u0002\u2728\u2722",
+ "\u0003\u0002\u0002\u0002\u2729\u272b\u0003\u0002\u0002\u0002\u272a\u271c",
+ "\u0003\u0002\u0002\u0002\u272a\u272b\u0003\u0002\u0002\u0002\u272b\u04e3",
+ "\u0003\u0002\u0002\u0002\u272c\u273b\u0007\u08c5\u0002\u0002\u272d\u2735",
+ "\u0007\u08bc\u0002\u0002\u272e\u272f\u0007\u08c1\u0002\u0002\u272f\u2735",
+ "\u0007\u08c0\u0002\u0002\u2730\u2731\u0007\u08bf\u0002\u0002\u2731\u2735",
+ "\u0007\u08c5\u0002\u0002\u2732\u2733\u0007\u08bd\u0002\u0002\u2733\u2735",
+ "\u0007\u08c5\u0002\u0002\u2734\u272d\u0003\u0002\u0002\u0002\u2734\u272e",
+ "\u0003\u0002\u0002\u0002\u2734\u2730\u0003\u0002\u0002\u0002\u2734\u2732",
+ "\u0003\u0002\u0002\u0002\u2735\u273b\u0003\u0002\u0002\u0002\u2736\u2738",
+ "\tq\u0002\u0002\u2737\u2739\u0007\u08c5\u0002\u0002\u2738\u2737\u0003",
+ "\u0002\u0002\u0002\u2738\u2739\u0003\u0002\u0002\u0002\u2739\u273b\u0003",
+ "\u0002\u0002\u0002\u273a\u272c\u0003\u0002\u0002\u0002\u273a\u2734\u0003",
+ "\u0002\u0002\u0002\u273a\u2736\u0003\u0002\u0002\u0002\u273b\u04e5\u0003",
+ "\u0002\u0002\u0002\u273c\u273d\u0007\u08b1\u0002\u0002\u273d\u273e\u0005",
+ "\u041e\u0210\u0002\u273e\u273f\u0007\u08b2\u0002\u0002\u273f\u274f\u0003",
+ "\u0002\u0002\u0002\u2740\u2741\u0007\u08b1\u0002\u0002\u2741\u2746\u0005",
+ "\u04ea\u0276\u0002\u2742\u2743\u0007\u08b7\u0002\u0002\u2743\u2745\u0005",
+ "\u04ea\u0276\u0002\u2744\u2742\u0003\u0002\u0002\u0002\u2745\u2748\u0003",
+ "\u0002\u0002\u0002\u2746\u2744\u0003\u0002\u0002\u0002\u2746\u2747\u0003",
+ "\u0002\u0002\u0002\u2747\u2749\u0003\u0002\u0002\u0002\u2748\u2746\u0003",
+ "\u0002\u0002\u0002\u2749\u274a\u0007\u08b2\u0002\u0002\u274a\u274f\u0003",
+ "\u0002\u0002\u0002\u274b\u274f\u0005\u05c8\u02e5\u0002\u274c\u274f\u0005",
+ "\u05bc\u02df\u0002\u274d\u274f\u0005\u05be\u02e0\u0002\u274e\u273c\u0003",
+ "\u0002\u0002\u0002\u274e\u2740\u0003\u0002\u0002\u0002\u274e\u274b\u0003",
+ "\u0002\u0002\u0002\u274e\u274c\u0003\u0002\u0002\u0002\u274e\u274d\u0003",
+ "\u0002\u0002\u0002\u274f\u04e7\u0003\u0002\u0002\u0002\u2750\u2751\u0005",
+ "\u04ea\u0276\u0002\u2751\u2752\u0007-\u0002\u0002\u2752\u2753\u0005",
+ "\u04ea\u0276\u0002\u2753\u04e9\u0003\u0002\u0002\u0002\u2754\u2755\b",
+ "\u0276\u0001\u0002\u2755\u275e\u0005\u04ee\u0278\u0002\u2756\u275b\u0007",
+ "L\u0002\u0002\u2757\u275c\u0007\u0303\u0002\u0002\u2758\u2759\u0007",
+ "\u0793\u0002\u0002\u2759\u275a\u0007\u087f\u0002\u0002\u275a\u275c\u0005",
+ "\u04ea\u0276\u0002\u275b\u2757\u0003\u0002\u0002\u0002\u275b\u2758\u0003",
+ "\u0002\u0002\u0002\u275c\u275f\u0003\u0002\u0002\u0002\u275d\u275f\u0005",
+ "\u04ec\u0277\u0002\u275e\u2756\u0003\u0002\u0002\u0002\u275e\u275d\u0003",
+ "\u0002\u0002\u0002\u275e\u275f\u0003\u0002\u0002\u0002\u275f\u276c\u0003",
+ "\u0002\u0002\u0002\u2760\u2761\f\u0005\u0002\u0002\u2761\u2762\tr\u0002",
+ "\u0002\u2762\u276b\u0005\u04ea\u0276\u0006\u2763\u2764\f\u0004\u0002",
+ "\u0002\u2764\u2765\ts\u0002\u0002\u2765\u276b\u0005\u04ea\u0276\u0005",
+ "\u2766\u2767\f\u0003\u0002\u0002\u2767\u2768\u0007\u08c4\u0002\u0002",
+ "\u2768\u2769\u0007\u08c4\u0002\u0002\u2769\u276b\u0005\u04ea\u0276\u0004",
+ "\u276a\u2760\u0003\u0002\u0002\u0002\u276a\u2763\u0003\u0002\u0002\u0002",
+ "\u276a\u2766\u0003\u0002\u0002\u0002\u276b\u276e\u0003\u0002\u0002\u0002",
+ "\u276c\u276a\u0003\u0002\u0002\u0002\u276c\u276d\u0003\u0002\u0002\u0002",
+ "\u276d\u04eb\u0003\u0002\u0002\u0002\u276e\u276c\u0003\u0002\u0002\u0002",
+ "\u276f\u2774\u0007\u014b\u0002\u0002\u2770\u2771\u0007\u08b1\u0002\u0002",
+ "\u2771\u2772\u0005\u04ea\u0276\u0002\u2772\u2773\u0007\u08b2\u0002\u0002",
+ "\u2773\u2775\u0003\u0002\u0002\u0002\u2774\u2770\u0003\u0002\u0002\u0002",
+ "\u2774\u2775\u0003\u0002\u0002\u0002\u2775\u2776\u0003\u0002\u0002\u0002",
+ "\u2776\u2777\u0007\u07ae\u0002\u0002\u2777\u277c\u0007\u05ca\u0002\u0002",
+ "\u2778\u2779\u0007\u08b1\u0002\u0002\u2779\u277a\u0005\u04ea\u0276\u0002",
+ "\u277a\u277b\u0007\u08b2\u0002\u0002\u277b\u277d\u0003\u0002\u0002\u0002",
+ "\u277c\u2778\u0003\u0002\u0002\u0002\u277c\u277d\u0003\u0002\u0002\u0002",
+ "\u277d\u2788\u0003\u0002\u0002\u0002\u277e\u2783\u0007\u087b\u0002\u0002",
+ "\u277f\u2780\u0007\u08b1\u0002\u0002\u2780\u2781\u0005\u04ea\u0276\u0002",
+ "\u2781\u2782\u0007\u08b2\u0002\u0002\u2782\u2784\u0003\u0002\u0002\u0002",
+ "\u2783\u277f\u0003\u0002\u0002\u0002\u2783\u2784\u0003\u0002\u0002\u0002",
+ "\u2784\u2785\u0003\u0002\u0002\u0002\u2785\u2786\u0007\u07ae\u0002\u0002",
+ "\u2786\u2788\u0007\u0366\u0002\u0002\u2787\u276f\u0003\u0002\u0002\u0002",
+ "\u2787\u277e\u0003\u0002\u0002\u0002\u2788\u04ed\u0003\u0002\u0002\u0002",
+ "\u2789\u278e\u0005\u04f6\u027c\u0002\u278a\u278b\u0007\u08c6\u0002\u0002",
+ "\u278b\u278c\u0005\u04f0\u0279\u0002\u278c\u278d\u0007\u08c7\u0002\u0002",
+ "\u278d\u278f\u0003\u0002\u0002\u0002\u278e\u278a\u0003\u0002\u0002\u0002",
+ "\u278e\u278f\u0003\u0002\u0002\u0002\u278f\u04ef\u0003\u0002\u0002\u0002",
+ "\u2790\u2793\u00072\u0002\u0002\u2791\u2793\u0005\u04d4\u026b\u0002",
+ "\u2792\u2790\u0003\u0002\u0002\u0002\u2792\u2791\u0003\u0002\u0002\u0002",
+ "\u2793\u279b\u0003\u0002\u0002\u0002\u2794\u2797\u0007\u08b7\u0002\u0002",
+ "\u2795\u2798\u00072\u0002\u0002\u2796\u2798\u0005\u04d4\u026b\u0002",
+ "\u2797\u2795\u0003\u0002\u0002\u0002\u2797\u2796\u0003\u0002\u0002\u0002",
+ "\u2798\u279a\u0003\u0002\u0002\u0002\u2799\u2794\u0003\u0002\u0002\u0002",
+ "\u279a\u279d\u0003\u0002\u0002\u0002\u279b\u2799\u0003\u0002\u0002\u0002",
+ "\u279b\u279c\u0003\u0002\u0002\u0002\u279c\u27a8\u0003\u0002\u0002\u0002",
+ "\u279d\u279b\u0003\u0002\u0002\u0002\u279e\u27a3\u0005\u04f2\u027a\u0002",
+ "\u279f\u27a0\u0007\u08b7\u0002\u0002\u27a0\u27a2\u0005\u04f2\u027a\u0002",
+ "\u27a1\u279f\u0003\u0002\u0002\u0002\u27a2\u27a5\u0003\u0002\u0002\u0002",
+ "\u27a3\u27a1\u0003\u0002\u0002\u0002\u27a3\u27a4\u0003\u0002\u0002\u0002",
+ "\u27a4\u27a8\u0003\u0002\u0002\u0002\u27a5\u27a3\u0003\u0002\u0002\u0002",
+ "\u27a6\u27a8\u0005\u04f4\u027b\u0002\u27a7\u2792\u0003\u0002\u0002\u0002",
+ "\u27a7\u279e\u0003\u0002\u0002\u0002\u27a7\u27a6\u0003\u0002\u0002\u0002",
+ "\u27a8\u04f1\u0003\u0002\u0002\u0002\u27a9\u27aa\u0007\u0224\u0002\u0002",
+ "\u27aa\u27bc\u0005\u0592\u02ca\u0002\u27ab\u27ac\u0007\u028e\u0002\u0002",
+ "\u27ac\u27ae\u0007\u08b1\u0002\u0002\u27ad\u27af\u0005\u04d2\u026a\u0002",
+ "\u27ae\u27ad\u0003\u0002\u0002\u0002\u27ae\u27af\u0003\u0002\u0002\u0002",
+ "\u27af\u27b0\u0003\u0002\u0002\u0002\u27b0\u27bd\u0007\u08b2\u0002\u0002",
+ "\u27b1\u27b2\u0007\u02f7\u0002\u0002\u27b2\u27b4\u0005\u04d4\u026b\u0002",
+ "\u27b3\u27b1\u0003\u0002\u0002\u0002\u27b3\u27b4\u0003\u0002\u0002\u0002",
+ "\u27b4\u27b5\u0003\u0002\u0002\u0002\u27b5\u27b6\u0007\u022c\u0002\u0002",
+ "\u27b6\u27b7\u0005\u04d4\u026b\u0002\u27b7\u27b8\u0007\u07ae\u0002\u0002",
+ "\u27b8\u27b9\u0005\u04d4\u026b\u0002\u27b9\u27ba\tt\u0002\u0002\u27ba",
+ "\u27bb\u0005\u04d4\u026b\u0002\u27bb\u27bd\u0003\u0002\u0002\u0002\u27bc",
+ "\u27ab\u0003\u0002\u0002\u0002\u27bc\u27b3\u0003\u0002\u0002\u0002\u27bd",
+ "\u04f3\u0003\u0002\u0002\u0002\u27be\u27bf\u0007\u0224\u0002\u0002\u27bf",
+ "\u27c0\u0005\u05a6\u02d4\u0002\u27c0\u27c1\u0007\u028e\u0002\u0002\u27c1",
+ "\u27c8\u0007\u08b1\u0002\u0002\u27c2\u27c9\u0005\u041e\u0210\u0002\u27c3",
+ "\u27c5\u0007\u08b1\u0002\u0002\u27c4\u27c6\u0005\u04d2\u026a\u0002\u27c5",
+ "\u27c4\u0003\u0002\u0002\u0002\u27c5\u27c6\u0003\u0002\u0002\u0002\u27c6",
+ "\u27c7\u0003\u0002\u0002\u0002\u27c7\u27c9\u0007\u08b2\u0002\u0002\u27c8",
+ "\u27c2\u0003\u0002\u0002\u0002\u27c8\u27c3\u0003\u0002\u0002\u0002\u27c9",
+ "\u27ca\u0003\u0002\u0002\u0002\u27ca\u27cb\u0007\u08b2\u0002\u0002\u27cb",
+ "\u04f5\u0003\u0002\u0002\u0002\u27cc\u27cd\ts\u0002\u0002\u27cd\u27dd",
+ "\u0005\u04f6\u027c\u0002\u27ce\u27cf\u0007\u051d\u0002\u0002\u27cf\u27dd",
+ "\u0005\u04f6\u027c\u0002\u27d0\u27d1\u0007\u00fc\u0002\u0002\u27d1\u27dd",
+ "\u0005\u04f6\u027c\u0002\u27d2\u27d3\u0007\u0389\u0002\u0002\u27d3\u27dd",
+ "\u0005\u04f6\u027c\u0002\u27d4\u27d5\u0007\u018e\u0002\u0002\u27d5\u27dd",
+ "\u0005\u04f6\u027c\u0002\u27d6\u27d7\u0007%\u0002\u0002\u27d7\u27dd",
+ "\u0005\u04f6\u027c\u0002\u27d8\u27dd\u0005\u04f8\u027d\u0002\u27d9\u27dd",
+ "\u0005\u0506\u0284\u0002\u27da\u27dd\u0005\u050a\u0286\u0002\u27db\u27dd",
+ "\u0005\u0504\u0283\u0002\u27dc\u27cc\u0003\u0002\u0002\u0002\u27dc\u27ce",
+ "\u0003\u0002\u0002\u0002\u27dc\u27d0\u0003\u0002\u0002\u0002\u27dc\u27d2",
+ "\u0003\u0002\u0002\u0002\u27dc\u27d4\u0003\u0002\u0002\u0002\u27dc\u27d6",
+ "\u0003\u0002\u0002\u0002\u27dc\u27d8\u0003\u0002\u0002\u0002\u27dc\u27d9",
+ "\u0003\u0002\u0002\u0002\u27dc\u27da\u0003\u0002\u0002\u0002\u27dc\u27db",
+ "\u0003\u0002\u0002\u0002\u27dd\u04f7\u0003\u0002\u0002\u0002\u27de\u27e1",
+ "\u0005\u04fe\u0280\u0002\u27df\u27e1\u0005\u04fa\u027e\u0002\u27e0\u27de",
+ "\u0003\u0002\u0002\u0002\u27e0\u27df\u0003\u0002\u0002\u0002\u27e1\u04f9",
+ "\u0003\u0002\u0002\u0002\u27e2\u27e4\u0005\u0578\u02bd\u0002\u27e3\u27e2",
+ "\u0003\u0002\u0002\u0002\u27e3\u27e4\u0003\u0002\u0002\u0002\u27e4\u27e5",
+ "\u0003\u0002\u0002\u0002\u27e5\u27e6\u0007\u00a5\u0002\u0002\u27e6\u27e8",
+ "\u0005\u04d4\u026b\u0002\u27e7\u27e9\u0005\u04fc\u027f\u0002\u27e8\u27e7",
+ "\u0003\u0002\u0002\u0002\u27e9\u27ea\u0003\u0002\u0002\u0002\u27ea\u27e8",
+ "\u0003\u0002\u0002\u0002\u27ea\u27eb\u0003\u0002\u0002\u0002\u27eb\u27ed",
+ "\u0003\u0002\u0002\u0002\u27ec\u27ee\u0005\u0502\u0282\u0002\u27ed\u27ec",
+ "\u0003\u0002\u0002\u0002\u27ed\u27ee\u0003\u0002\u0002\u0002\u27ee\u27ef",
+ "\u0003\u0002\u0002\u0002\u27ef\u27f1\u0007\u01bf\u0002\u0002\u27f0\u27f2",
+ "\u0007\u00a5\u0002\u0002\u27f1\u27f0\u0003\u0002\u0002\u0002\u27f1\u27f2",
+ "\u0003\u0002\u0002\u0002\u27f2\u27f4\u0003\u0002\u0002\u0002\u27f3\u27f5",
+ "\u0005\u0578\u02bd\u0002\u27f4\u27f3\u0003\u0002\u0002\u0002\u27f4\u27f5",
+ "\u0003\u0002\u0002\u0002\u27f5\u04fb\u0003\u0002\u0002\u0002\u27f6\u27f7",
+ "\u0007\u0843\u0002\u0002\u27f7\u27f8\u0005\u04d4\u026b\u0002\u27f8\u27fb",
+ "\u0007\u0787\u0002\u0002\u27f9\u27fc\u0005\u03b8\u01dd\u0002\u27fa\u27fc",
+ "\u0005\u04d4\u026b\u0002\u27fb\u27f9\u0003\u0002\u0002\u0002\u27fb\u27fa",
+ "\u0003\u0002\u0002\u0002\u27fc\u04fd\u0003\u0002\u0002\u0002\u27fd\u27ff",
+ "\u0005\u0578\u02bd\u0002\u27fe\u27fd\u0003\u0002\u0002\u0002\u27fe\u27ff",
+ "\u0003\u0002\u0002\u0002\u27ff\u2800\u0003\u0002\u0002\u0002\u2800\u2802",
+ "\u0007\u00a5\u0002\u0002\u2801\u2803\u0005\u0500\u0281\u0002\u2802\u2801",
+ "\u0003\u0002\u0002\u0002\u2803\u2804\u0003\u0002\u0002\u0002\u2804\u2802",
+ "\u0003\u0002\u0002\u0002\u2804\u2805\u0003\u0002\u0002\u0002\u2805\u2807",
+ "\u0003\u0002\u0002\u0002\u2806\u2808\u0005\u0502\u0282\u0002\u2807\u2806",
+ "\u0003\u0002\u0002\u0002\u2807\u2808\u0003\u0002\u0002\u0002\u2808\u2809",
+ "\u0003\u0002\u0002\u0002\u2809\u280b\u0007\u01bf\u0002\u0002\u280a\u280c",
+ "\u0007\u00a5\u0002\u0002\u280b\u280a\u0003\u0002\u0002\u0002\u280b\u280c",
+ "\u0003\u0002\u0002\u0002\u280c\u280e\u0003\u0002\u0002\u0002\u280d\u280f",
+ "\u0005\u0578\u02bd\u0002\u280e\u280d\u0003\u0002\u0002\u0002\u280e\u280f",
+ "\u0003\u0002\u0002\u0002\u280f\u04ff\u0003\u0002\u0002\u0002\u2810\u2811",
+ "\u0007\u0843\u0002\u0002\u2811\u2812\u0005\u04d4\u026b\u0002\u2812\u2815",
+ "\u0007\u0787\u0002\u0002\u2813\u2816\u0005\u03b8\u01dd\u0002\u2814\u2816",
+ "\u0005\u04d4\u026b\u0002\u2815\u2813\u0003\u0002\u0002\u0002\u2815\u2814",
+ "\u0003\u0002\u0002\u0002\u2816\u0501\u0003\u0002\u0002\u0002\u2817\u281a",
+ "\u0007\u01b2\u0002\u0002\u2818\u281b\u0005\u03b8\u01dd\u0002\u2819\u281b",
+ "\u0005\u04d4\u026b\u0002\u281a\u2818\u0003\u0002\u0002\u0002\u281a\u2819",
+ "\u0003\u0002\u0002\u0002\u281b\u0503\u0003\u0002\u0002\u0002\u281c\u281d",
+ "\u0005\u05c2\u02e2\u0002\u281d\u281e\u0005\u05d4\u02eb\u0002\u281e\u2830",
+ "\u0003\u0002\u0002\u0002\u281f\u2830\u0005\u05bc\u02df\u0002\u2820\u2830",
+ "\u0005\u05c8\u02e5\u0002\u2821\u2830\u0005\u05be\u02e0\u0002\u2822\u2823",
+ "\u0007\u08b1\u0002\u0002\u2823\u2824\u0005\u041e\u0210\u0002\u2824\u2828",
+ "\u0007\u08b2\u0002\u0002\u2825\u2827\u0005\u0422\u0212\u0002\u2826\u2825",
+ "\u0003\u0002\u0002\u0002\u2827\u282a\u0003\u0002\u0002\u0002\u2828\u2826",
+ "\u0003\u0002\u0002\u0002\u2828\u2829\u0003\u0002\u0002\u0002\u2829\u2830",
+ "\u0003\u0002\u0002\u0002\u282a\u2828\u0003\u0002\u0002\u0002\u282b\u282c",
+ "\u0007\u08b1\u0002\u0002\u282c\u282d\u0005\u04d2\u026a\u0002\u282d\u282e",
+ "\u0007\u08b2\u0002\u0002\u282e\u2830\u0003\u0002\u0002\u0002\u282f\u281c",
+ "\u0003\u0002\u0002\u0002\u282f\u281f\u0003\u0002\u0002\u0002\u282f\u2820",
+ "\u0003\u0002\u0002\u0002\u282f\u2821\u0003\u0002\u0002\u0002\u282f\u2822",
+ "\u0003\u0002\u0002\u0002\u282f\u282b\u0003\u0002\u0002\u0002\u2830\u0505",
+ "\u0003\u0002\u0002\u0002\u2831\u283a\tu\u0002\u0002\u2832\u2833\u0007",
+ "\u08b1\u0002\u0002\u2833\u2834\u0005\u041e\u0210\u0002\u2834\u2835\u0007",
+ "\u08b2\u0002\u0002\u2835\u283b\u0003\u0002\u0002\u0002\u2836\u2837\u0007",
+ "\u08b1\u0002\u0002\u2837\u2838\u0005\u04d4\u026b\u0002\u2838\u2839\u0007",
+ "\u08b2\u0002\u0002\u2839\u283b\u0003\u0002\u0002\u0002\u283a\u2832\u0003",
+ "\u0002\u0002\u0002\u283a\u2836\u0003\u0002\u0002\u0002\u283b\u0507\u0003",
+ "\u0002\u0002\u0002\u283c\u283d\u0007\u089c\u0002\u0002\u283d\u283e\u0007",
+ "\u08b1\u0002\u0002\u283e\u283f\u0005\u04d4\u026b\u0002\u283f\u2840\u0007",
+ "\u08b7\u0002\u0002\u2840\u2843\u0005\u04d4\u026b\u0002\u2841\u2842\u0007",
+ "\u08b7\u0002\u0002\u2842\u2844\u0005\u04d4\u026b\u0002\u2843\u2841\u0003",
+ "\u0002\u0002\u0002\u2843\u2844\u0003\u0002\u0002\u0002\u2844\u2845\u0003",
+ "\u0002\u0002\u0002\u2845\u2846\u0007\u08b2\u0002\u0002\u2846\u2883\u0003",
+ "\u0002\u0002\u0002\u2847\u2848\u0007\u089d\u0002\u0002\u2848\u284c\u0007",
+ "\u08b1\u0002\u0002\u2849\u284d\u0005\u05c2\u02e2\u0002\u284a\u284d\u0005",
+ "\u050a\u0286\u0002\u284b\u284d\u0005\u04d4\u026b\u0002\u284c\u2849\u0003",
+ "\u0002\u0002\u0002\u284c\u284a\u0003\u0002\u0002\u0002\u284c\u284b\u0003",
+ "\u0002\u0002\u0002\u284d\u2850\u0003\u0002\u0002\u0002\u284e\u284f\u0007",
+ "\u08b7\u0002\u0002\u284f\u2851\u0005\u05ce\u02e8\u0002\u2850\u284e\u0003",
+ "\u0002\u0002\u0002\u2850\u2851\u0003\u0002\u0002\u0002\u2851\u2854\u0003",
+ "\u0002\u0002\u0002\u2852\u2853\u0007\u08b7\u0002\u0002\u2853\u2855\u0005",
+ "\u05ce\u02e8\u0002\u2854\u2852\u0003\u0002\u0002\u0002\u2854\u2855\u0003",
+ "\u0002\u0002\u0002\u2855\u2856\u0003\u0002\u0002\u0002\u2856\u2857\u0007",
+ "\u08b2\u0002\u0002\u2857\u2883\u0003\u0002\u0002\u0002\u2858\u2859\u0007",
+ "\u0890\u0002\u0002\u2859\u285a\u0007\u08b1\u0002\u0002\u285a\u285b\u0005",
+ "\u04d2\u026a\u0002\u285b\u285c\u0007\u08b2\u0002\u0002\u285c\u2883\u0003",
+ "\u0002\u0002\u0002\u285d\u285e\u0007\u00ba\u0002\u0002\u285e\u285f\u0007",
+ "\u08b1\u0002\u0002\u285f\u2860\u0005\u04ea\u0276\u0002\u2860\u2861\u0007",
+ "\u0811\u0002\u0002\u2861\u2862\u0007\u037b\u0002\u0002\u2862\u2863\u0007",
+ "\u08b2\u0002\u0002\u2863\u2883\u0003\u0002\u0002\u0002\u2864\u2865\u0007",
+ "\u0897\u0002\u0002\u2865\u2866\u0007\u08b1\u0002\u0002\u2866\u2867\u0005",
+ "\u04d4\u026b\u0002\u2867\u2868\u0007\u08b7\u0002\u0002\u2868\u2869\u0005",
+ "\u04d4\u026b\u0002\u2869\u286a\u0007\u08b2\u0002\u0002\u286a\u2883\u0003",
+ "\u0002\u0002\u0002\u286b\u286c\u0007\u089e\u0002\u0002\u286c\u2874\u0007",
+ "\u08b1\u0002\u0002\u286d\u286f\tv\u0002\u0002\u286e\u286d\u0003\u0002",
+ "\u0002\u0002\u286e\u286f\u0003\u0002\u0002\u0002\u286f\u2871\u0003\u0002",
+ "\u0002\u0002\u2870\u2872\u0005\u05ce\u02e8\u0002\u2871\u2870\u0003\u0002",
+ "\u0002\u0002\u2871\u2872\u0003\u0002\u0002\u0002\u2872\u2873\u0003\u0002",
+ "\u0002\u0002\u2873\u2875\u0007\u022c\u0002\u0002\u2874\u286e\u0003\u0002",
+ "\u0002\u0002\u2874\u2875\u0003\u0002\u0002\u0002\u2875\u2876\u0003\u0002",
+ "\u0002\u0002\u2876\u2877\u0005\u04ea\u0276\u0002\u2877\u2878\u0007\u08b2",
+ "\u0002\u0002\u2878\u2883\u0003\u0002\u0002\u0002\u2879\u287a\u0007\u08a5",
+ "\u0002\u0002\u287a\u287b\u0007\u08b1\u0002\u0002\u287b\u287e\u0005\u04d4",
+ "\u026b\u0002\u287c\u287d\u0007\u08b7\u0002\u0002\u287d\u287f\u0005\u05ce",
+ "\u02e8\u0002\u287e\u287c\u0003\u0002\u0002\u0002\u287e\u287f\u0003\u0002",
+ "\u0002\u0002\u287f\u2880\u0003\u0002\u0002\u0002\u2880\u2881\u0007\u08b2",
+ "\u0002\u0002\u2881\u2883\u0003\u0002\u0002\u0002\u2882\u283c\u0003\u0002",
+ "\u0002\u0002\u2882\u2847\u0003\u0002\u0002\u0002\u2882\u2858\u0003\u0002",
+ "\u0002\u0002\u2882\u285d\u0003\u0002\u0002\u0002\u2882\u2864\u0003\u0002",
+ "\u0002\u0002\u2882\u286b\u0003\u0002\u0002\u0002\u2882\u2879\u0003\u0002",
+ "\u0002\u0002\u2883\u0509\u0003\u0002\u0002\u0002\u2884\u2888\u0005\u0508",
+ "\u0285\u0002\u2885\u2888\u0005\u050e\u0288\u0002\u2886\u2888\u0005\u0512",
+ "\u028a\u0002\u2887\u2884\u0003\u0002\u0002\u0002\u2887\u2885\u0003\u0002",
+ "\u0002\u0002\u2887\u2886\u0003\u0002\u0002\u0002\u2888\u050b\u0003\u0002",
+ "\u0002\u0002\u2889\u288e\u0007\u08ad\u0002\u0002\u288a\u288e\u0005\u0508",
+ "\u0285\u0002\u288b\u288e\u0005\u05ca\u02e6\u0002\u288c\u288e\u0007\u0338",
+ "\u0002\u0002\u288d\u2889\u0003\u0002\u0002\u0002\u288d\u288a\u0003\u0002",
+ "\u0002\u0002\u288d\u288b\u0003\u0002\u0002\u0002\u288d\u288c\u0003\u0002",
+ "\u0002\u0002\u288e\u050d\u0003\u0002\u0002\u0002\u288f\u2892\u0005\u0510",
+ "\u0289\u0002\u2890\u2893\u0005\u04f2\u027a\u0002\u2891\u2893\u0005\u04f4",
+ "\u027b\u0002\u2892\u2890\u0003\u0002\u0002\u0002\u2892\u2891\u0003\u0002",
+ "\u0002\u0002\u2892\u2893\u0003\u0002\u0002\u0002\u2893\u050f\u0003\u0002",
+ "\u0002\u0002\u2894\u2895\u0007\u089f\u0002\u0002\u2895\u2897\u0007\u08b1",
+ "\u0002\u0002\u2896\u2898\tw\u0002\u0002\u2897\u2896\u0003\u0002\u0002",
+ "\u0002\u2897\u2898\u0003\u0002\u0002\u0002\u2898\u2899\u0003\u0002\u0002",
+ "\u0002\u2899\u289a\u0005\u04d4\u026b\u0002\u289a\u289b\u0007\u08b2\u0002",
+ "\u0002\u289b\u28cf\u0003\u0002\u0002\u0002\u289c\u289d\u0007\u011b\u0002",
+ "\u0002\u289d\u28a5\u0007\u08b1\u0002\u0002\u289e\u28a6\u0007\u08b4\u0002",
+ "\u0002\u289f\u28a1\t`\u0002\u0002\u28a0\u289f\u0003\u0002\u0002\u0002",
+ "\u28a0\u28a1\u0003\u0002\u0002\u0002\u28a1\u28a2\u0003\u0002\u0002\u0002",
+ "\u28a2\u28a4\u0005\u04ea\u0276\u0002\u28a3\u28a0\u0003\u0002\u0002\u0002",
+ "\u28a3\u28a4\u0003\u0002\u0002\u0002\u28a4\u28a6\u0003\u0002\u0002\u0002",
+ "\u28a5\u289e\u0003\u0002\u0002\u0002\u28a5\u28a3\u0003\u0002\u0002\u0002",
+ "\u28a6\u28a7\u0003\u0002\u0002\u0002\u28a7\u28a9\u0007\u08b2\u0002\u0002",
+ "\u28a8\u28aa\u0005\u051a\u028e\u0002\u28a9\u28a8\u0003\u0002\u0002\u0002",
+ "\u28a9\u28aa\u0003\u0002\u0002\u0002\u28aa\u28cf\u0003\u0002\u0002\u0002",
+ "\u28ab\u28ac\u0007\u089a\u0002\u0002\u28ac\u28ad\u0007\u08b1\u0002\u0002",
+ "\u28ad\u28b0\u0005\u04d4\u026b\u0002\u28ae\u28af\u0007\u08b7\u0002\u0002",
+ "\u28af\u28b1\u0007\u08ab\u0002\u0002\u28b0\u28ae\u0003\u0002\u0002\u0002",
+ "\u28b0\u28b1\u0003\u0002\u0002\u0002\u28b1\u28b2\u0003\u0002\u0002\u0002",
+ "\u28b2\u28b3\u0007\u08b2\u0002\u0002\u28b3\u28cf\u0003\u0002\u0002\u0002",
+ "\u28b4\u28b5\u0007\u088d\u0002\u0002\u28b5\u28b7\u0007\u08b1\u0002\u0002",
+ "\u28b6\u28b8\tw\u0002\u0002\u28b7\u28b6\u0003\u0002\u0002\u0002\u28b7",
+ "\u28b8\u0003\u0002\u0002\u0002\u28b8\u28b9\u0003\u0002\u0002\u0002\u28b9",
+ "\u28ba\u0005\u04d4\u026b\u0002\u28ba\u28bb\u0007\u08b2\u0002\u0002\u28bb",
+ "\u28cf\u0003\u0002\u0002\u0002\u28bc\u28bd\u0007\u0893\u0002\u0002\u28bd",
+ "\u28bf\u0007\u08b1\u0002\u0002\u28be\u28c0\tw\u0002\u0002\u28bf\u28be",
+ "\u0003\u0002\u0002\u0002\u28bf\u28c0\u0003\u0002\u0002\u0002\u28c0\u28c1",
+ "\u0003\u0002\u0002\u0002\u28c1\u28c2\u0005\u04d4\u026b\u0002\u28c2\u28c3",
+ "\u0007\u08b2\u0002\u0002\u28c3\u28cf\u0003\u0002\u0002\u0002\u28c4\u28c5",
+ "\u0007\u08a3\u0002\u0002\u28c5\u28c6\u0007\u08b1\u0002\u0002\u28c6\u28c7",
+ "\u0005\u04d2\u026a\u0002\u28c7\u28c8\u0007\u08b2\u0002\u0002\u28c8\u28cf",
+ "\u0003\u0002\u0002\u0002\u28c9\u28ca\u0007\u08a4\u0002\u0002\u28ca\u28cb",
+ "\u0007\u08b1\u0002\u0002\u28cb\u28cc\u0005\u04d2\u026a\u0002\u28cc\u28cd",
+ "\u0007\u08b2\u0002\u0002\u28cd\u28cf\u0003\u0002\u0002\u0002\u28ce\u2894",
+ "\u0003\u0002\u0002\u0002\u28ce\u289c\u0003\u0002\u0002\u0002\u28ce\u28ab",
+ "\u0003\u0002\u0002\u0002\u28ce\u28b4\u0003\u0002\u0002\u0002\u28ce\u28bc",
+ "\u0003\u0002\u0002\u0002\u28ce\u28c4\u0003\u0002\u0002\u0002\u28ce\u28c9",
+ "\u0003\u0002\u0002\u0002\u28cf\u0511\u0003\u0002\u0002\u0002\u28d0\u28d1",
+ "\u0005\u0514\u028b\u0002\u28d1\u28d3\u0005\u05ac\u02d7\u0002\u28d2\u28d4",
+ "\u0005\u051a\u028e\u0002\u28d3\u28d2\u0003\u0002\u0002\u0002\u28d3\u28d4",
+ "\u0003\u0002\u0002\u0002\u28d4\u29f8\u0003\u0002\u0002\u0002\u28d5\u28d6",
+ "\u0005\u05d6\u02ec\u0002\u28d6\u28d8\u0005\u05ae\u02d8\u0002\u28d7\u28d9",
+ "\u0005\u0522\u0292\u0002\u28d8\u28d7\u0003\u0002\u0002\u0002\u28d8\u28d9",
+ "\u0003\u0002\u0002\u0002\u28d9\u29f8\u0003\u0002\u0002\u0002\u28da\u28db",
+ "\u0007\u011b\u0002\u0002\u28db\u28e1\u0007\u08b1\u0002\u0002\u28dc\u28e2",
+ "\u0007\u08b4\u0002\u0002\u28dd\u28df\t`\u0002\u0002\u28de\u28dd\u0003",
+ "\u0002\u0002\u0002\u28de\u28df\u0003\u0002\u0002\u0002\u28df\u28e0\u0003",
+ "\u0002\u0002\u0002\u28e0\u28e2\u0005\u04ea\u0276\u0002\u28e1\u28dc\u0003",
+ "\u0002\u0002\u0002\u28e1\u28de\u0003\u0002\u0002\u0002\u28e2\u28e3\u0003",
+ "\u0002\u0002\u0002\u28e3\u28e5\u0007\u08b2\u0002\u0002\u28e4\u28e6\u0005",
+ "\u051a\u028e\u0002\u28e5\u28e4\u0003\u0002\u0002\u0002\u28e5\u28e6\u0003",
+ "\u0002\u0002\u0002\u28e6\u29f8\u0003\u0002\u0002\u0002\u28e7\u28e8\t",
+ "x\u0002\u0002\u28e8\u28ef\u0007\u08b1\u0002\u0002\u28e9\u28ea\u0007",
+ "\u036e\u0002\u0002\u28ea\u28eb\u0007\u08b1\u0002\u0002\u28eb\u28ec\u0005",
+ "\u041e\u0210\u0002\u28ec\u28ed\u0007\u08b2\u0002\u0002\u28ed\u28f0\u0003",
+ "\u0002\u0002\u0002\u28ee\u28f0\u0005\u04ea\u0276\u0002\u28ef\u28e9\u0003",
+ "\u0002\u0002\u0002\u28ef\u28ee\u0003\u0002\u0002\u0002\u28f0\u28f1\u0003",
+ "\u0002\u0002\u0002\u28f1\u28f2\u0007?\u0002\u0002\u28f2\u28f3\u0005",
+ "\u05b4\u02db\u0002\u28f3\u28f4\u0007\u08b2\u0002\u0002\u28f4\u29f8\u0003",
+ "\u0002\u0002\u0002\u28f5\u28f6\u0007\u00cf\u0002\u0002\u28f6\u28f7\u0007",
+ "\u08b1\u0002\u0002\u28f7\u28fd\u0005\u05c2\u02e2\u0002\u28f8\u28fb\u0007",
+ "\u08b7\u0002\u0002\u28f9\u28fc\u0005\u05ca\u02e6\u0002\u28fa\u28fc\u0005",
+ "\u05ce\u02e8\u0002\u28fb\u28f9\u0003\u0002\u0002\u0002\u28fb\u28fa\u0003",
+ "\u0002\u0002\u0002\u28fc\u28fe\u0003\u0002\u0002\u0002\u28fd\u28f8\u0003",
+ "\u0002\u0002\u0002\u28fd\u28fe\u0003\u0002\u0002\u0002\u28fe\u28ff\u0003",
+ "\u0002\u0002\u0002\u28ff\u2900\u0007\u08b2\u0002\u0002\u2900\u29f8\u0003",
+ "\u0002\u0002\u0002\u2901\u2902\u0007\u00d4\u0002\u0002\u2902\u2904\u0007",
+ "\u08b1\u0002\u0002\u2903\u2905\ty\u0002\u0002\u2904\u2903\u0003\u0002",
+ "\u0002\u0002\u2904\u2905\u0003\u0002\u0002\u0002\u2905\u2906\u0003\u0002",
+ "\u0002\u0002\u2906\u2908\u0005\u04ea\u0276\u0002\u2907\u2909\u0005\u0526",
+ "\u0294\u0002\u2908\u2907\u0003\u0002\u0002\u0002\u2908\u2909\u0003\u0002",
+ "\u0002\u0002\u2909\u290a\u0003\u0002\u0002\u0002\u290a\u290b\u0007\u08b2",
+ "\u0002\u0002\u290b\u29f8\u0003\u0002\u0002\u0002\u290c\u290d\u0005\u0516",
+ "\u028c\u0002\u290d\u290f\u0005\u05aa\u02d6\u0002\u290e\u2910\u0005\u0528",
+ "\u0295\u0002\u290f\u290e\u0003\u0002\u0002\u0002\u2910\u2911\u0003\u0002",
+ "\u0002\u0002\u2911\u290f\u0003\u0002\u0002\u0002\u2911\u2912\u0003\u0002",
+ "\u0002\u0002\u2912\u29f8\u0003\u0002\u0002\u0002\u2913\u2914\u0005\u058a",
+ "\u02c6\u0002\u2914\u2915\tz\u0002\u0002\u2915\u29f8\u0003\u0002\u0002",
+ "\u0002\u2916\u2917\u0007\u015b\u0002\u0002\u2917\u2918\u0007\u08b1\u0002",
+ "\u0002\u2918\u291a\u0005\u04ea\u0276\u0002\u2919\u291b\t{\u0002\u0002",
+ "\u291a\u2919\u0003\u0002\u0002\u0002\u291a\u291b\u0003\u0002\u0002\u0002",
+ "\u291b\u291c\u0003\u0002\u0002\u0002\u291c\u291d\u0007\u08b2\u0002\u0002",
+ "\u291d\u29f8\u0003\u0002\u0002\u0002\u291e\u291f\u0007\u01f2\u0002\u0002",
+ "\u291f\u2920\u0007\u08b1\u0002\u0002\u2920\u2921\u0005\u05d6\u02ec\u0002",
+ "\u2921\u2922\u0007\u022c\u0002\u0002\u2922\u2923\u0005\u04ea\u0276\u0002",
+ "\u2923\u2924\u0007\u08b2\u0002\u0002\u2924\u29f8\u0003\u0002\u0002\u0002",
+ "\u2925\u2926\t|\u0002\u0002\u2926\u2928\u0005\u05ac\u02d7\u0002\u2927",
+ "\u2929\u0005\u05b0\u02d9\u0002\u2928\u2927\u0003\u0002\u0002\u0002\u2928",
+ "\u2929\u0003\u0002\u0002\u0002\u2929\u292a\u0003\u0002\u0002\u0002\u292a",
+ "\u292b\u0005\u051a\u028e\u0002\u292b\u29f8\u0003\u0002\u0002\u0002\u292c",
+ "\u292d\u0005\u0518\u028d\u0002\u292d\u292e\u0007\u08b1\u0002\u0002\u292e",
+ "\u2930\u0005\u04d2\u026a\u0002\u292f\u2931\u0005\u052a\u0296\u0002\u2930",
+ "\u292f\u0003\u0002\u0002\u0002\u2930\u2931\u0003\u0002\u0002\u0002\u2931",
+ "\u2933\u0003\u0002\u0002\u0002\u2932\u2934\u0005\u0522\u0292\u0002\u2933",
+ "\u2932\u0003\u0002\u0002\u0002\u2933\u2934\u0003\u0002\u0002\u0002\u2934",
+ "\u2935\u0003\u0002\u0002\u0002\u2935\u2936\u0007\u08b2\u0002\u0002\u2936",
+ "\u29f8\u0003\u0002\u0002\u0002\u2937\u2938\u0007\u07b8\u0002\u0002\u2938",
+ "\u2939\u0007\u08b1\u0002\u0002\u2939\u293c\u0005\u04d4\u026b\u0002\u293a",
+ "\u293b\u0007\u0811\u0002\u0002\u293b\u293d\t}\u0002\u0002\u293c\u293a",
+ "\u0003\u0002\u0002\u0002\u293c\u293d\u0003\u0002\u0002\u0002\u293d\u2942",
+ "\u0003\u0002\u0002\u0002\u293e\u293f\u0007\u08b7\u0002\u0002\u293f\u2941",
+ "\u0005\u04d4\u026b\u0002\u2940\u293e\u0003\u0002\u0002\u0002\u2941\u2944",
+ "\u0003\u0002\u0002\u0002\u2942\u2940\u0003\u0002\u0002\u0002\u2942\u2943",
+ "\u0003\u0002\u0002\u0002\u2943\u2945\u0003\u0002\u0002\u0002\u2944\u2942",
+ "\u0003\u0002\u0002\u0002\u2945\u2946\u0007\u08b2\u0002\u0002\u2946\u29f8",
+ "\u0003\u0002\u0002\u0002\u2947\u2948\u0007\u07ba\u0002\u0002\u2948\u2949",
+ "\u0007\u08b1\u0002\u0002\u2949\u294a\u0005\u04d4\u026b\u0002\u294a\u294c",
+ "\u0007?\u0002\u0002\u294b\u294d\u0007\u0562\u0002\u0002\u294c\u294b",
+ "\u0003\u0002\u0002\u0002\u294c\u294d\u0003\u0002\u0002\u0002\u294d\u294e",
+ "\u0003\u0002\u0002\u0002\u294e\u294f\u0005\u05b4\u02db\u0002\u294f\u2950",
+ "\u0007\u08b2\u0002\u0002\u2950\u29f8\u0003\u0002\u0002\u0002\u2951\u2952",
+ "\u0007\u089e\u0002\u0002\u2952\u295a\u0007\u08b1\u0002\u0002\u2953\u2955",
+ "\tv\u0002\u0002\u2954\u2953\u0003\u0002\u0002\u0002\u2954\u2955\u0003",
+ "\u0002\u0002\u0002\u2955\u2957\u0003\u0002\u0002\u0002\u2956\u2958\u0005",
+ "\u05ce\u02e8\u0002\u2957\u2956\u0003\u0002\u0002\u0002\u2957\u2958\u0003",
+ "\u0002\u0002\u0002\u2958\u2959\u0003\u0002\u0002\u0002\u2959\u295b\u0007",
+ "\u022c\u0002\u0002\u295a\u2954\u0003\u0002\u0002\u0002\u295a\u295b\u0003",
+ "\u0002\u0002\u0002\u295b\u295c\u0003\u0002\u0002\u0002\u295c\u295d\u0005",
+ "\u04ea\u0276\u0002\u295d\u295e\u0007\u08b2\u0002\u0002\u295e\u29f8\u0003",
+ "\u0002\u0002\u0002\u295f\u2960\u0007\u0855\u0002\u0002\u2960\u2961\u0007",
+ "\u08b1\u0002\u0002\u2961\u2963\u0005\u04d4\u026b\u0002\u2962\u2964\u0005",
+ "\u0480\u0241\u0002\u2963\u2962\u0003\u0002\u0002\u0002\u2963\u2964\u0003",
+ "\u0002\u0002\u0002\u2964\u2965\u0003\u0002\u0002\u0002\u2965\u2968\u0007",
+ "\u08b2\u0002\u0002\u2966\u2967\u0007\u08aa\u0002\u0002\u2967\u2969\u0005",
+ "\u05c0\u02e1\u0002\u2968\u2966\u0003\u0002\u0002\u0002\u2968\u2969\u0003",
+ "\u0002\u0002\u0002\u2969\u29f8\u0003\u0002\u0002\u0002\u296a\u296b\t",
+ "~\u0002\u0002\u296b\u296c\u0007\u08b1\u0002\u0002\u296c\u2971\u0005",
+ "\u0536\u029c\u0002\u296d\u296e\u0007\u08b7\u0002\u0002\u296e\u2970\u0005",
+ "\u0536\u029c\u0002\u296f\u296d\u0003\u0002\u0002\u0002\u2970\u2973\u0003",
+ "\u0002\u0002\u0002\u2971\u296f\u0003\u0002\u0002\u0002\u2971\u2972\u0003",
+ "\u0002\u0002\u0002\u2972\u2974\u0003\u0002\u0002\u0002\u2973\u2971\u0003",
+ "\u0002\u0002\u0002\u2974\u2977\u0007\u08b2\u0002\u0002\u2975\u2976\u0007",
+ "\u08aa\u0002\u0002\u2976\u2978\u0005\u05c0\u02e1\u0002\u2977\u2975\u0003",
+ "\u0002\u0002\u0002\u2977\u2978\u0003\u0002\u0002\u0002\u2978\u29f8\u0003",
+ "\u0002\u0002\u0002\u2979\u297a\u0007\u085e\u0002\u0002\u297a\u297c\u0007",
+ "\u08b1\u0002\u0002\u297b\u297d\t\u007f\u0002\u0002\u297c\u297b\u0003",
+ "\u0002\u0002\u0002\u297c\u297d\u0003\u0002\u0002\u0002\u297d\u297f\u0003",
+ "\u0002\u0002\u0002\u297e\u2980\t\u0080\u0002\u0002\u297f\u297e\u0003",
+ "\u0002\u0002\u0002\u297f\u2980\u0003\u0002\u0002\u0002\u2980\u2981\u0003",
+ "\u0002\u0002\u0002\u2981\u2984\u0005\u04d4\u026b\u0002\u2982\u2983\u0007",
+ "\u08b7\u0002\u0002\u2983\u2985\u0005\u052e\u0298\u0002\u2984\u2982\u0003",
+ "\u0002\u0002\u0002\u2984\u2985\u0003\u0002\u0002\u0002\u2985\u298d\u0003",
+ "\u0002\u0002\u0002\u2986\u2987\u0007\u08b7\u0002\u0002\u2987\u2989\u0005",
+ "\u04d4\u026b\u0002\u2988\u298a\u0005\u054a\u02a6\u0002\u2989\u2988\u0003",
+ "\u0002\u0002\u0002\u2989\u298a\u0003\u0002\u0002\u0002\u298a\u298c\u0003",
+ "\u0002\u0002\u0002\u298b\u2986\u0003\u0002\u0002\u0002\u298c\u298f\u0003",
+ "\u0002\u0002\u0002\u298d\u298b\u0003\u0002\u0002\u0002\u298d\u298e\u0003",
+ "\u0002\u0002\u0002\u298e\u2990\u0003\u0002\u0002\u0002\u298f\u298d\u0003",
+ "\u0002\u0002\u0002\u2990\u2993\u0007\u08b2\u0002\u0002\u2991\u2992\u0007",
+ "\u08aa\u0002\u0002\u2992\u2994\u0005\u05c0\u02e1\u0002\u2993\u2991\u0003",
+ "\u0002\u0002\u0002\u2993\u2994\u0003\u0002\u0002\u0002\u2994\u29f8\u0003",
+ "\u0002\u0002\u0002\u2995\u2996\u0007\u0860\u0002\u0002\u2996\u2997\u0007",
+ "\u08b1\u0002\u0002\u2997\u2999\u0005\u04d4\u026b\u0002\u2998\u299a\u0005",
+ "\u052c\u0297\u0002\u2999\u2998\u0003\u0002\u0002\u0002\u2999\u299a\u0003",
+ "\u0002\u0002\u0002\u299a\u299b\u0003\u0002\u0002\u0002\u299b\u299c\u0007",
+ "\u08b2\u0002\u0002\u299c\u29f8\u0003\u0002\u0002\u0002\u299d\u299e\u0007",
+ "\u0869\u0002\u0002\u299e\u299f\u0007\u08b1\u0002\u0002\u299f\u29a0\t",
+ "\u0081\u0002\u0002\u29a0\u29a2\u0005\u04ea\u0276\u0002\u29a1\u29a3\u0007",
+ "\u0841\u0002\u0002\u29a2\u29a1\u0003\u0002\u0002\u0002\u29a2\u29a3\u0003",
+ "\u0002\u0002\u0002\u29a3\u29a4\u0003\u0002\u0002\u0002\u29a4\u29a7\u0007",
+ "\u08b2\u0002\u0002\u29a5\u29a6\u0007\u08aa\u0002\u0002\u29a6\u29a8\u0005",
+ "\u05c0\u02e1\u0002\u29a7\u29a5\u0003\u0002\u0002\u0002\u29a7\u29a8\u0003",
+ "\u0002\u0002\u0002\u29a8\u29f8\u0003\u0002\u0002\u0002\u29a9\u29aa\u0007",
+ "\u086b\u0002\u0002\u29aa\u29af\u0007\u08b1\u0002\u0002\u29ab\u29ac\u0007",
+ "\u0371\u0002\u0002\u29ac\u29b0\u0005\u05d0\u02e9\u0002\u29ad\u29ae\u0007",
+ "\u01d0\u0002\u0002\u29ae\u29b0\u0005\u04ea\u0276\u0002\u29af\u29ab\u0003",
+ "\u0002\u0002\u0002\u29af\u29ad\u0003\u0002\u0002\u0002\u29b0\u29b3\u0003",
+ "\u0002\u0002\u0002\u29b1\u29b2\u0007\u08b7\u0002\u0002\u29b2\u29b4\u0005",
+ "\u04ea\u0276\u0002\u29b3\u29b1\u0003\u0002\u0002\u0002\u29b3\u29b4\u0003",
+ "\u0002\u0002\u0002\u29b4\u29b5\u0003\u0002\u0002\u0002\u29b5\u29b8\u0007",
+ "\u08b2\u0002\u0002\u29b6\u29b7\u0007\u08aa\u0002\u0002\u29b7\u29b9\u0005",
+ "\u05c0\u02e1\u0002\u29b8\u29b6\u0003\u0002\u0002\u0002\u29b8\u29b9\u0003",
+ "\u0002\u0002\u0002\u29b9\u29f8\u0003\u0002\u0002\u0002\u29ba\u29bb\u0007",
+ "\u086d\u0002\u0002\u29bb\u29bc\u0007\u08b1\u0002\u0002\u29bc\u29be\u0005",
+ "\u04ea\u0276\u0002\u29bd\u29bf\u0005\u052c\u0297\u0002\u29be\u29bd\u0003",
+ "\u0002\u0002\u0002\u29be\u29bf\u0003\u0002\u0002\u0002\u29bf\u29c0\u0003",
+ "\u0002\u0002\u0002\u29c0\u29c1\u0007\u0598\u0002\u0002\u29c1\u29c5\u0007",
+ "\u0109\u0002\u0002\u29c2\u29c3\u0007\u044b\u0002\u0002\u29c3\u29c4\u0007",
+ "\u046a\u0002\u0002\u29c4\u29c6\u0007\u01b7\u0002\u0002\u29c5\u29c2\u0003",
+ "\u0002\u0002\u0002\u29c5\u29c6\u0003\u0002\u0002\u0002\u29c6\u29c7\u0003",
+ "\u0002\u0002\u0002\u29c7\u29ca\u0007\u08b2\u0002\u0002\u29c8\u29c9\u0007",
+ "\u08aa\u0002\u0002\u29c9\u29cb\u0005\u05c0\u02e1\u0002\u29ca\u29c8\u0003",
+ "\u0002\u0002\u0002\u29ca\u29cb\u0003\u0002\u0002\u0002\u29cb\u29f8\u0003",
+ "\u0002\u0002\u0002\u29cc\u29cd\u0007\u086e\u0002\u0002\u29cd\u29ce\u0007",
+ "\u08b1\u0002\u0002\u29ce\u29d1\u0005\u04ea\u0276\u0002\u29cf\u29d0\u0007",
+ "\u08b7\u0002\u0002\u29d0\u29d2\u0005\u0538\u029d\u0002\u29d1\u29cf\u0003",
+ "\u0002\u0002\u0002\u29d1\u29d2\u0003\u0002\u0002\u0002\u29d2\u29d5\u0003",
+ "\u0002\u0002\u0002\u29d3\u29d4\u0007\u08b7\u0002\u0002\u29d4\u29d6\u0005",
+ "\u053a\u029e\u0002\u29d5\u29d3\u0003\u0002\u0002\u0002\u29d5\u29d6\u0003",
+ "\u0002\u0002\u0002\u29d6\u29d7\u0003\u0002\u0002\u0002\u29d7\u29da\u0007",
+ "\u08b2\u0002\u0002\u29d8\u29d9\u0007\u08aa\u0002\u0002\u29d9\u29db\u0005",
+ "\u05c0\u02e1\u0002\u29da\u29d8\u0003\u0002\u0002\u0002\u29da\u29db\u0003",
+ "\u0002\u0002\u0002\u29db\u29f8\u0003\u0002\u0002\u0002\u29dc\u29dd\u0007",
+ "\u0870\u0002\u0002\u29dd\u29de\u0007\u08b1\u0002\u0002\u29de\u29df\t",
+ "\u0081\u0002\u0002\u29df\u29e2\u0005\u04ea\u0276\u0002\u29e0\u29e1\u0007",
+ "?\u0002\u0002\u29e1\u29e3\u0005\u05b4\u02db\u0002\u29e2\u29e0\u0003",
+ "\u0002\u0002\u0002\u29e2\u29e3\u0003\u0002\u0002\u0002\u29e3\u29e5\u0003",
+ "\u0002\u0002\u0002\u29e4\u29e6\u0005\u053c\u029f\u0002\u29e5\u29e4\u0003",
+ "\u0002\u0002\u0002\u29e5\u29e6\u0003\u0002\u0002\u0002\u29e6\u29e8\u0003",
+ "\u0002\u0002\u0002\u29e7\u29e9\u0005\u053e\u02a0\u0002\u29e8\u29e7\u0003",
+ "\u0002\u0002\u0002\u29e8\u29e9\u0003\u0002\u0002\u0002\u29e9\u29eb\u0003",
+ "\u0002\u0002\u0002\u29ea\u29ec\u0005\u0540\u02a1\u0002\u29eb\u29ea\u0003",
+ "\u0002\u0002\u0002\u29eb\u29ec\u0003\u0002\u0002\u0002\u29ec\u29ef\u0003",
+ "\u0002\u0002\u0002\u29ed\u29ee\t\u0082\u0002\u0002\u29ee\u29f0\u0007",
+ "\u0162\u0002\u0002\u29ef\u29ed\u0003\u0002\u0002\u0002\u29ef\u29f0\u0003",
+ "\u0002\u0002\u0002\u29f0\u29f1\u0003\u0002\u0002\u0002\u29f1\u29f4\u0007",
+ "\u08b2\u0002\u0002\u29f2\u29f3\u0007\u08aa\u0002\u0002\u29f3\u29f5\u0005",
+ "\u05c0\u02e1\u0002\u29f4\u29f2\u0003\u0002\u0002\u0002\u29f4\u29f5\u0003",
+ "\u0002\u0002\u0002\u29f5\u29f8\u0003\u0002\u0002\u0002\u29f6\u29f8\u0005",
+ "\u0596\u02cc\u0002\u29f7\u28d0\u0003\u0002\u0002\u0002\u29f7\u28d5\u0003",
+ "\u0002\u0002\u0002\u29f7\u28da\u0003\u0002\u0002\u0002\u29f7\u28e7\u0003",
+ "\u0002\u0002\u0002\u29f7\u28f5\u0003\u0002\u0002\u0002\u29f7\u2901\u0003",
+ "\u0002\u0002\u0002\u29f7\u290c\u0003\u0002\u0002\u0002\u29f7\u2913\u0003",
+ "\u0002\u0002\u0002\u29f7\u2916\u0003\u0002\u0002\u0002\u29f7\u291e\u0003",
+ "\u0002\u0002\u0002\u29f7\u2925\u0003\u0002\u0002\u0002\u29f7\u292c\u0003",
+ "\u0002\u0002\u0002\u29f7\u2937\u0003\u0002\u0002\u0002\u29f7\u2947\u0003",
+ "\u0002\u0002\u0002\u29f7\u2951\u0003\u0002\u0002\u0002\u29f7\u295f\u0003",
+ "\u0002\u0002\u0002\u29f7\u296a\u0003\u0002\u0002\u0002\u29f7\u2979\u0003",
+ "\u0002\u0002\u0002\u29f7\u2995\u0003\u0002\u0002\u0002\u29f7\u299d\u0003",
+ "\u0002\u0002\u0002\u29f7\u29a9\u0003\u0002\u0002\u0002\u29f7\u29ba\u0003",
+ "\u0002\u0002\u0002\u29f7\u29cc\u0003\u0002\u0002\u0002\u29f7\u29dc\u0003",
+ "\u0002\u0002\u0002\u29f7\u29f6\u0003\u0002\u0002\u0002\u29f8\u0513\u0003",
+ "\u0002\u0002\u0002\u29f9\u29fa\t\u0083\u0002\u0002\u29fa\u0515\u0003",
+ "\u0002\u0002\u0002\u29fb\u29fc\t\u0084\u0002\u0002\u29fc\u0517\u0003",
+ "\u0002\u0002\u0002\u29fd\u29fe\t\u0085\u0002\u0002\u29fe\u0519\u0003",
+ "\u0002\u0002\u0002\u29ff\u2a00\u0007\u04a4\u0002\u0002\u2a00\u2a02\u0007",
+ "\u08b1\u0002\u0002\u2a01\u2a03\u0005\u043c\u021f\u0002\u2a02\u2a01\u0003",
+ "\u0002\u0002\u0002\u2a02\u2a03\u0003\u0002\u0002\u0002\u2a03\u2a08\u0003",
+ "\u0002\u0002\u0002\u2a04\u2a06\u0005\u0480\u0241\u0002\u2a05\u2a07\u0005",
+ "\u051c\u028f\u0002\u2a06\u2a05\u0003\u0002\u0002\u0002\u2a06\u2a07\u0003",
+ "\u0002\u0002\u0002\u2a07\u2a09\u0003\u0002\u0002\u0002\u2a08\u2a04\u0003",
+ "\u0002\u0002\u0002\u2a08\u2a09\u0003\u0002\u0002\u0002\u2a09\u2a0a\u0003",
+ "\u0002\u0002\u0002\u2a0a\u2a0b\u0007\u08b2\u0002\u0002\u2a0b\u051b\u0003",
+ "\u0002\u0002\u0002\u2a0c\u2a13\u0005\u051e\u0290\u0002\u2a0d\u2a0e\u0007",
+ "m\u0002\u0002\u2a0e\u2a0f\u0005\u0520\u0291\u0002\u2a0f\u2a10\u0007",
+ "-\u0002\u0002\u2a10\u2a11\u0005\u0520\u0291\u0002\u2a11\u2a14\u0003",
+ "\u0002\u0002\u0002\u2a12\u2a14\u0005\u0520\u0291\u0002\u2a13\u2a0d\u0003",
+ "\u0002\u0002\u0002\u2a13\u2a12\u0003\u0002\u0002\u0002\u2a14\u051d\u0003",
+ "\u0002\u0002\u0002\u2a15\u2a16\t\u0086\u0002\u0002\u2a16\u051f\u0003",
+ "\u0002\u0002\u0002\u2a17\u2a18\u0007\u07cc\u0002\u0002\u2a18\u2a1f\u0007",
+ "\u050c\u0002\u0002\u2a19\u2a1a\u0007\u0130\u0002\u0002\u2a1a\u2a1f\u0007",
+ "\u05ad\u0002\u0002\u2a1b\u2a1c\u0005\u04ea\u0276\u0002\u2a1c\u2a1d\t",
+ "\u0087\u0002\u0002\u2a1d\u2a1f\u0003\u0002\u0002\u0002\u2a1e\u2a17\u0003",
+ "\u0002\u0002\u0002\u2a1e\u2a19\u0003\u0002\u0002\u0002\u2a1e\u2a1b\u0003",
+ "\u0002\u0002\u0002\u2a1f\u0521\u0003\u0002\u0002\u0002\u2a20\u2a2a\u0007",
+ "\u0811\u0002\u0002\u2a21\u2a2b\u0007\u08b4\u0002\u0002\u2a22\u2a27\u0005",
+ "\u0524\u0293\u0002\u2a23\u2a24\u0007\u08b7\u0002\u0002\u2a24\u2a26\u0005",
+ "\u0524\u0293\u0002\u2a25\u2a23\u0003\u0002\u0002\u0002\u2a26\u2a29\u0003",
+ "\u0002\u0002\u0002\u2a27\u2a25\u0003\u0002\u0002\u0002\u2a27\u2a28\u0003",
+ "\u0002\u0002\u0002\u2a28\u2a2b\u0003\u0002\u0002\u0002\u2a29\u2a27\u0003",
+ "\u0002\u0002\u0002\u2a2a\u2a21\u0003\u0002\u0002\u0002\u2a2a\u2a22\u0003",
+ "\u0002\u0002\u0002\u2a2b\u0523\u0003\u0002\u0002\u0002\u2a2c\u2a2e\u0007",
+ "\u028e\u0002\u0002\u2a2d\u2a2f\u0007\u04a0\u0002\u0002\u2a2e\u2a2d\u0003",
+ "\u0002\u0002\u0002\u2a2e\u2a2f\u0003\u0002\u0002\u0002\u2a2f\u2a32\u0003",
+ "\u0002\u0002\u0002\u2a30\u2a32\u0007\u04a0\u0002\u0002\u2a31\u2a2c\u0003",
+ "\u0002\u0002\u0002\u2a31\u2a30\u0003\u0002\u0002\u0002\u2a31\u2a32\u0003",
+ "\u0002\u0002\u0002\u2a32\u2a33\u0003\u0002\u0002\u0002\u2a33\u2a34\u0005",
+ "\u042a\u0216\u0002\u2a34\u0525\u0003\u0002\u0002\u0002\u2a35\u2a36\u0007",
+ "\u0492\u0002\u0002\u2a36\u2a37\u0007\u0094\u0002\u0002\u2a37\u2a38\u0005",
+ "\u04ea\u0276\u0002\u2a38\u0527\u0003\u0002\u0002\u0002\u2a39\u2a3a\u0007",
+ "\u0848\u0002\u0002\u2a3a\u2a3b\u0007\u023f\u0002\u0002\u2a3b\u2a3c\u0007",
+ "\u08b1\u0002\u0002\u2a3c\u2a3d\u0005\u0480\u0241\u0002\u2a3d\u2a3e\u0007",
+ "\u08b2\u0002\u0002\u2a3e\u2a41\u0003\u0002\u0002\u0002\u2a3f\u2a41\u0005",
+ "\u051a\u028e\u0002\u2a40\u2a39\u0003\u0002\u0002\u0002\u2a40\u2a3f\u0003",
+ "\u0002\u0002\u0002\u2a41\u0529\u0003\u0002\u0002\u0002\u2a42\u2a58\u0007",
+ "\u0119\u0002\u0002\u2a43\u2a45\u0007\u0358\u0002\u0002\u2a44\u2a46\u0007",
+ "U\u0002\u0002\u2a45\u2a44\u0003\u0002\u0002\u0002\u2a45\u2a46\u0003",
+ "\u0002\u0002\u0002\u2a46\u2a59\u0003\u0002\u0002\u0002\u2a47\u2a48\u0007",
+ "\u08b1\u0002\u0002\u2a48\u2a4d\u0005\u0554\u02ab\u0002\u2a49\u2a4a\u0007",
+ "\u08b7\u0002\u0002\u2a4a\u2a4c\u0005\u0554\u02ab\u0002\u2a4b\u2a49\u0003",
+ "\u0002\u0002\u0002\u2a4c\u2a4f\u0003\u0002\u0002\u0002\u2a4d\u2a4b\u0003",
+ "\u0002\u0002\u0002\u2a4d\u2a4e\u0003\u0002\u0002\u0002\u2a4e\u2a50\u0003",
+ "\u0002\u0002\u0002\u2a4f\u2a4d\u0003\u0002\u0002\u0002\u2a50\u2a51\u0007",
+ "\u08b2\u0002\u0002\u2a51\u2a52\u0007\u081b\u0002\u0002\u2a52\u2a54\u0007",
+ "\u08b1\u0002\u0002\u2a53\u2a55\u0005\u04d2\u026a\u0002\u2a54\u2a53\u0003",
+ "\u0002\u0002\u0002\u2a54\u2a55\u0003\u0002\u0002\u0002\u2a55\u2a56\u0003",
+ "\u0002\u0002\u0002\u2a56\u2a57\u0007\u08b2\u0002\u0002\u2a57\u2a59\u0003",
+ "\u0002\u0002\u0002\u2a58\u2a43\u0003\u0002\u0002\u0002\u2a58\u2a47\u0003",
+ "\u0002\u0002\u0002\u2a59\u052b\u0003\u0002\u0002\u0002\u2a5a\u2a5d\u0007",
+ "\u04bd\u0002\u0002\u2a5b\u2a5c\u0007\u0094\u0002\u0002\u2a5c\u2a5e\u0007",
+ "\u081c\u0002\u0002\u2a5d\u2a5b\u0003\u0002\u0002\u0002\u2a5d\u2a5e\u0003",
+ "\u0002\u0002\u0002\u2a5e\u2a5f\u0003\u0002\u0002\u0002\u2a5f\u2a61\u0005",
+ "\u04d4\u026b\u0002\u2a60\u2a62\u0005\u054a\u02a6\u0002\u2a61\u2a60\u0003",
+ "\u0002\u0002\u0002\u2a61\u2a62\u0003\u0002\u0002\u0002\u2a62\u2a6a\u0003",
+ "\u0002\u0002\u0002\u2a63\u2a64\u0007\u08b7\u0002\u0002\u2a64\u2a66\u0005",
+ "\u04d4\u026b\u0002\u2a65\u2a67\u0005\u054a\u02a6\u0002\u2a66\u2a65\u0003",
+ "\u0002\u0002\u0002\u2a66\u2a67\u0003\u0002\u0002\u0002\u2a67\u2a69\u0003",
+ "\u0002\u0002\u0002\u2a68\u2a63\u0003\u0002\u0002\u0002\u2a69\u2a6c\u0003",
+ "\u0002\u0002\u0002\u2a6a\u2a68\u0003\u0002\u0002\u0002\u2a6a\u2a6b\u0003",
+ "\u0002\u0002\u0002\u2a6b\u052d\u0003\u0002\u0002\u0002\u2a6c\u2a6a\u0003",
+ "\u0002\u0002\u0002\u2a6d\u2a6e\u0007\u0856\u0002\u0002\u2a6e\u2a70\u0007",
+ "\u08b1\u0002\u0002\u2a6f\u2a71\t\u007f\u0002\u0002\u2a70\u2a6f\u0003",
+ "\u0002\u0002\u0002\u2a70\u2a71\u0003\u0002\u0002\u0002\u2a71\u2a73\u0003",
+ "\u0002\u0002\u0002\u2a72\u2a74\t\u0088\u0002\u0002\u2a73\u2a72\u0003",
+ "\u0002\u0002\u0002\u2a73\u2a74\u0003\u0002\u0002\u0002\u2a74\u2a75\u0003",
+ "\u0002\u0002\u0002\u2a75\u2a7a\u0005\u0536\u029c\u0002\u2a76\u2a77\u0007",
+ "\u08b7\u0002\u0002\u2a77\u2a79\u0005\u0536\u029c\u0002\u2a78\u2a76\u0003",
+ "\u0002\u0002\u0002\u2a79\u2a7c\u0003\u0002\u0002\u0002\u2a7a\u2a78\u0003",
+ "\u0002\u0002\u0002\u2a7a\u2a7b\u0003\u0002\u0002\u0002\u2a7b\u2a7d\u0003",
+ "\u0002\u0002\u0002\u2a7c\u2a7a\u0003\u0002\u0002\u0002\u2a7d\u2a7e\u0007",
+ "\u08b2\u0002\u0002\u2a7e\u052f\u0003\u0002\u0002\u0002\u2a7f\u2a80\u0007",
+ "\u0868\u0002\u0002\u2a80\u2a84\u0007\u08b1\u0002\u0002\u2a81\u2a82\u0005",
+ "\u04ea\u0276\u0002\u2a82\u2a83\u0005\u054a\u02a6\u0002\u2a83\u2a85\u0003",
+ "\u0002\u0002\u0002\u2a84\u2a81\u0003\u0002\u0002\u0002\u2a84\u2a85\u0003",
+ "\u0002\u0002\u0002\u2a85\u2a8c\u0003\u0002\u0002\u0002\u2a86\u2a87\u0007",
+ "\u08b7\u0002\u0002\u2a87\u2a88\u0005\u04ea\u0276\u0002\u2a88\u2a89\u0005",
+ "\u054a\u02a6\u0002\u2a89\u2a8b\u0003\u0002\u0002\u0002\u2a8a\u2a86\u0003",
+ "\u0002\u0002\u0002\u2a8b\u2a8e\u0003\u0002\u0002\u0002\u2a8c\u2a8a\u0003",
+ "\u0002\u0002\u0002\u2a8c\u2a8d\u0003\u0002\u0002\u0002\u2a8d\u2a90\u0003",
+ "\u0002\u0002\u0002\u2a8e\u2a8c\u0003\u0002\u0002\u0002\u2a8f\u2a91\u0005",
+ "\u0534\u029b\u0002\u2a90\u2a8f\u0003\u0002\u0002\u0002\u2a90\u2a91\u0003",
+ "\u0002\u0002\u0002\u2a91\u2a92\u0003\u0002\u0002\u0002\u2a92\u2a93\u0007",
+ "\u08b2\u0002\u0002\u2a93\u0531\u0003\u0002\u0002\u0002\u2a94\u2a9f\u0005",
+ "\u0552\u02aa\u0002\u2a95\u2a96\u0007\u0224\u0002\u0002\u2a96\u2aa0\u0007",
+ "\u0493\u0002\u0002\u2a97\u2a9a\u0005\u05b4\u02db\u0002\u2a98\u2a99\u0007",
+ "\u04c7\u0002\u0002\u2a99\u2a9b\u0005\u04ea\u0276\u0002\u2a9a\u2a98\u0003",
+ "\u0002\u0002\u0002\u2a9a\u2a9b\u0003\u0002\u0002\u0002\u2a9b\u2a9d\u0003",
+ "\u0002\u0002\u0002\u2a9c\u2a9e\u0005\u0534\u029b\u0002\u2a9d\u2a9c\u0003",
+ "\u0002\u0002\u0002\u2a9d\u2a9e\u0003\u0002\u0002\u0002\u2a9e\u2aa0\u0003",
+ "\u0002\u0002\u0002\u2a9f\u2a95\u0003\u0002\u0002\u0002\u2a9f\u2a97\u0003",
+ "\u0002\u0002\u0002\u2aa0\u0533\u0003\u0002\u0002\u0002\u2aa1\u2aa2\u0007",
+ "\u0161\u0002\u0002\u2aa2\u2aa3\u0005\u04ea\u0276\u0002\u2aa3\u0535\u0003",
+ "\u0002\u0002\u0002\u2aa4\u2aab\u0005\u04d4\u026b\u0002\u2aa5\u2aa9\u0007",
+ "?\u0002\u0002\u2aa6\u2aaa\u0005\u05d2\u02ea\u0002\u2aa7\u2aa8\u0007",
+ "\u01d0\u0002\u0002\u2aa8\u2aaa\u0005\u04ea\u0276\u0002\u2aa9\u2aa6\u0003",
+ "\u0002\u0002\u0002\u2aa9\u2aa7\u0003\u0002\u0002\u0002\u2aaa\u2aac\u0003",
+ "\u0002\u0002\u0002\u2aab\u2aa5\u0003\u0002\u0002\u0002\u2aab\u2aac\u0003",
+ "\u0002\u0002\u0002\u2aac\u0537\u0003\u0002\u0002\u0002\u2aad\u2ab1\u0007",
+ "\u0834\u0002\u0002\u2aae\u2aaf\u0007\u03f4\u0002\u0002\u2aaf\u2ab2\u0007",
+ "\u081c\u0002\u0002\u2ab0\u2ab2\u0005\u04d4\u026b\u0002\u2ab1\u2aae\u0003",
+ "\u0002\u0002\u0002\u2ab1\u2ab0\u0003\u0002\u0002\u0002\u2ab2\u0539\u0003",
+ "\u0002\u0002\u0002\u2ab3\u2ab9\u0007\u061c\u0002\u0002\u2ab4\u2aba\u0007",
+ "\u087c\u0002\u0002\u2ab5\u2ab7\u0007\u03f4\u0002\u0002\u2ab6\u2ab8\u0007",
+ "\u081c\u0002\u0002\u2ab7\u2ab6\u0003\u0002\u0002\u0002\u2ab7\u2ab8\u0003",
+ "\u0002\u0002\u0002\u2ab8\u2aba\u0003\u0002\u0002\u0002\u2ab9\u2ab4\u0003",
+ "\u0002\u0002\u0002\u2ab9\u2ab5\u0003\u0002\u0002\u0002\u2aba\u053b\u0003",
+ "\u0002\u0002\u0002\u2abb\u2abc\u0007\u01bc\u0002\u0002\u2abc\u2abd\u0005",
+ "\u04ea\u0276\u0002\u2abd\u053d\u0003\u0002\u0002\u0002\u2abe\u2abf\u0007",
+ "\u0834\u0002\u0002\u2abf\u2ac0\u0005\u04ea\u0276\u0002\u2ac0\u053f\u0003",
+ "\u0002\u0002\u0002\u2ac1\u2ac2\u0007\u03f4\u0002\u0002\u2ac2\u2aca\u0007",
+ "\u0271\u0002\u0002\u2ac3\u2ac7\u0007\u0271\u0002\u0002\u2ac4\u2ac5\u0007",
+ "\u0601\u0002\u0002\u2ac5\u2ac6\u0007\u08c5\u0002\u0002\u2ac6\u2ac8\u0005",
+ "\u04ea\u0276\u0002\u2ac7\u2ac4\u0003\u0002\u0002\u0002\u2ac7\u2ac8\u0003",
+ "\u0002\u0002\u0002\u2ac8\u2aca\u0003\u0002\u0002\u0002\u2ac9\u2ac1\u0003",
+ "\u0002\u0002\u0002\u2ac9\u2ac3\u0003\u0002\u0002\u0002\u2aca\u0541\u0003",
+ "\u0002\u0002\u0002\u2acb\u2ad4\u0007\u08b8\u0002\u0002\u2acc\u2ad4\u0007",
+ "\u01e2\u0002\u0002\u2acd\u2ad4\u0007\u08cc\u0002\u0002\u2ace\u2acf\u0007",
+ "\u05f2\u0002\u0002\u2acf\u2ad4\t\u0089\u0002\u0002\u2ad0\u2ad4\u0007",
+ "\u08cd\u0002\u0002\u2ad1\u2ad4\u0005\u0544\u02a3\u0002\u2ad2\u2ad4\u0005",
+ "\u0546\u02a4\u0002\u2ad3\u2acb\u0003\u0002\u0002\u0002\u2ad3\u2acc\u0003",
+ "\u0002\u0002\u0002\u2ad3\u2acd\u0003\u0002\u0002\u0002\u2ad3\u2ace\u0003",
+ "\u0002\u0002\u0002\u2ad3\u2ad0\u0003\u0002\u0002\u0002\u2ad3\u2ad1\u0003",
+ "\u0002\u0002\u0002\u2ad3\u2ad2\u0003\u0002\u0002\u0002\u2ad4\u0543\u0003",
+ "\u0002\u0002\u0002\u2ad5\u2ad6\u0007\u0842\u0002\u0002\u2ad6\u2ae1\t",
+ "\u008a\u0002\u0002\u2ad7\u2adc\u0007\u01e2\u0002\u0002\u2ad8\u2add\u0007",
+ "\u0654\u0002\u0002\u2ad9\u2add\u0007\u01fd\u0002\u0002\u2ada\u2add\u0007",
+ "\u083e\u0002\u0002\u2adb\u2add\u0005\u0586\u02c4\u0002\u2adc\u2ad8\u0003",
+ "\u0002\u0002\u0002\u2adc\u2ad9\u0003\u0002\u0002\u0002\u2adc\u2ada\u0003",
+ "\u0002\u0002\u0002\u2adc\u2adb\u0003\u0002\u0002\u0002\u2add\u2ade\u0003",
+ "\u0002\u0002\u0002\u2ade\u2ae2\t\u008b\u0002\u0002\u2adf\u2ae0\u0007",
+ "\u010c\u0002\u0002\u2ae0\u2ae2\t\u008c\u0002\u0002\u2ae1\u2ad7\u0003",
+ "\u0002\u0002\u0002\u2ae1\u2adf\u0003\u0002\u0002\u0002\u2ae2\u0545\u0003",
+ "\u0002\u0002\u0002\u2ae3\u2ae4\u0007\u05e8\u0002\u0002\u2ae4\u2aea\u0005",
+ "\u05d6\u02ec\u0002\u2ae5\u2aeb\u0007\u08ad\u0002\u0002\u2ae6\u2aeb\u0007",
+ "\u046a\u0002\u0002\u2ae7\u2aeb\u0007\u045b\u0002\u0002\u2ae8\u2aeb\u0005",
+ "\u05ca\u02e6\u0002\u2ae9\u2aeb\u0005\u05d6\u02ec\u0002\u2aea\u2ae5\u0003",
+ "\u0002\u0002\u0002\u2aea\u2ae6\u0003\u0002\u0002\u0002\u2aea\u2ae7\u0003",
+ "\u0002\u0002\u0002\u2aea\u2ae8\u0003\u0002\u0002\u0002\u2aea\u2ae9\u0003",
+ "\u0002\u0002\u0002\u2aeb\u0547\u0003\u0002\u0002\u0002\u2aec\u2aee\t",
+ "\u008d\u0002\u0002\u2aed\u2aef\u0007\u0224\u0002\u0002\u2aee\u2aed\u0003",
+ "\u0002\u0002\u0002\u2aee\u2aef\u0003\u0002\u0002\u0002\u2aef\u2af0\u0003",
+ "\u0002\u0002\u0002\u2af0\u2af2\u0007\u08b1\u0002\u0002\u2af1\u2af3\u0005",
+ "\u04d2\u026a\u0002\u2af2\u2af1\u0003\u0002\u0002\u0002\u2af2\u2af3\u0003",
+ "\u0002\u0002\u0002\u2af3\u2af4\u0003\u0002\u0002\u0002\u2af4\u2af5\u0007",
+ "\u08b2\u0002\u0002\u2af5\u0549\u0003\u0002\u0002\u0002\u2af6\u2af8\u0007",
+ "?\u0002\u0002\u2af7\u2af6\u0003\u0002\u0002\u0002\u2af7\u2af8\u0003",
+ "\u0002\u0002\u0002\u2af8\u2afb\u0003\u0002\u0002\u0002\u2af9\u2afc\u0005",
+ "\u05d0\u02e9\u0002\u2afa\u2afc\u0005\u05ce\u02e8\u0002\u2afb\u2af9\u0003",
+ "\u0002\u0002\u0002\u2afb\u2afa\u0003\u0002\u0002\u0002\u2afc\u2aff\u0003",
+ "\u0002\u0002\u0002\u2afd\u2aff\u0007?\u0002\u0002\u2afe\u2af7\u0003",
+ "\u0002\u0002\u0002\u2afe\u2afd\u0003\u0002\u0002\u0002\u2aff\u054b\u0003",
+ "\u0002\u0002\u0002\u2b00\u2b03\u0005\u05d0\u02e9\u0002\u2b01\u2b03\u0005",
+ "\u05ce\u02e8\u0002\u2b02\u2b00\u0003\u0002\u0002\u0002\u2b02\u2b01\u0003",
+ "\u0002\u0002\u0002\u2b03\u054d\u0003\u0002\u0002\u0002\u2b04\u2b09\u0007",
+ "\u0844\u0002\u0002\u2b05\u2b06\u0007\u0130\u0002\u0002\u2b06\u2b07\u0007",
+ "\u045d\u0002\u0002\u2b07\u2b0a\u0005\u058a\u02c6\u0002\u2b08\u2b0a\u0005",
+ "\u04d4\u026b\u0002\u2b09\u2b05\u0003\u0002\u0002\u0002\u2b09\u2b08\u0003",
+ "\u0002\u0002\u0002\u2b0a\u054f\u0003\u0002\u0002\u0002\u2b0b\u2b0c\u0007",
+ "\u0093\u0002\u0002\u2b0c\u2b0e\u0007\u00d4\u0002\u0002\u2b0d\u2b0b\u0003",
+ "\u0002\u0002\u0002\u2b0d\u2b0e\u0003\u0002\u0002\u0002\u2b0e\u2b0f\u0003",
+ "\u0002\u0002\u0002\u2b0f\u2b10\u0007\u02b5\u0002\u0002\u2b10\u2b15\u0005",
+ "\u0586\u02c4\u0002\u2b11\u2b12\u0007\u08b7\u0002\u0002\u2b12\u2b14\u0005",
+ "\u0586\u02c4\u0002\u2b13\u2b11\u0003\u0002\u0002\u0002\u2b14\u2b17\u0003",
+ "\u0002\u0002\u0002\u2b15\u2b13\u0003\u0002\u0002\u0002\u2b15\u2b16\u0003",
+ "\u0002\u0002\u0002\u2b16\u0551\u0003\u0002\u0002\u0002\u2b17\u2b15\u0003",
+ "\u0002\u0002\u0002\u2b18\u2b1b\u0005\u05d0\u02e9\u0002\u2b19\u2b1b\u0005",
+ "\u05ce\u02e8\u0002\u2b1a\u2b18\u0003\u0002\u0002\u0002\u2b1a\u2b19\u0003",
+ "\u0002\u0002\u0002\u2b1b\u0553\u0003\u0002\u0002\u0002\u2b1c\u2b1d\u0005",
+ "\u05d0\u02e9\u0002\u2b1d\u0555\u0003\u0002\u0002\u0002\u2b1e\u2b1f\u0005",
+ "\u05d0\u02e9\u0002\u2b1f\u0557\u0003\u0002\u0002\u0002\u2b20\u2b21\u0005",
+ "\u05d0\u02e9\u0002\u2b21\u0559\u0003\u0002\u0002\u0002\u2b22\u2b23\u0005",
+ "\u05d0\u02e9\u0002\u2b23\u055b\u0003\u0002\u0002\u0002\u2b24\u2b25\u0005",
+ "\u05d0\u02e9\u0002\u2b25\u055d\u0003\u0002\u0002\u0002\u2b26\u2b27\u0005",
+ "\u05d0\u02e9\u0002\u2b27\u055f\u0003\u0002\u0002\u0002\u2b28\u2b2d\u0005",
+ "\u05d0\u02e9\u0002\u2b29\u2b2a\u0007\u08aa\u0002\u0002\u2b2a\u2b2c\u0005",
+ "\u05d2\u02ea\u0002\u2b2b\u2b29\u0003\u0002\u0002\u0002\u2b2c\u2b2f\u0003",
+ "\u0002\u0002\u0002\u2b2d\u2b2b\u0003\u0002\u0002\u0002\u2b2d\u2b2e\u0003",
+ "\u0002\u0002\u0002\u2b2e\u2b32\u0003\u0002\u0002\u0002\u2b2f\u2b2d\u0003",
+ "\u0002\u0002\u0002\u2b30\u2b31\u0007\u08b9\u0002\u0002\u2b31\u2b33\u0005",
+ "\u0590\u02c9\u0002\u2b32\u2b30\u0003\u0002\u0002\u0002\u2b32\u2b33\u0003",
+ "\u0002\u0002\u0002\u2b33\u0561\u0003\u0002\u0002\u0002\u2b34\u2b35\u0005",
+ "\u05d0\u02e9\u0002\u2b35\u0563\u0003\u0002\u0002\u0002\u2b36\u2b39\u0005",
+ "\u05d0\u02e9\u0002\u2b37\u2b38\u0007\u08aa\u0002\u0002\u2b38\u2b3a\u0005",
+ "\u05d2\u02ea\u0002\u2b39\u2b37\u0003\u0002\u0002\u0002\u2b39\u2b3a\u0003",
+ "\u0002\u0002\u0002\u2b3a\u0565\u0003\u0002\u0002\u0002\u2b3b\u2b3c\u0005",
+ "\u05d0\u02e9\u0002\u2b3c\u0567\u0003\u0002\u0002\u0002\u2b3d\u2b3e\u0005",
+ "\u05d0\u02e9\u0002\u2b3e\u0569\u0003\u0002\u0002\u0002\u2b3f\u2b40\u0005",
+ "\u05d0\u02e9\u0002\u2b40\u056b\u0003\u0002\u0002\u0002\u2b41\u2b44\u0005",
+ "\u05d0\u02e9\u0002\u2b42\u2b43\u0007\u08aa\u0002\u0002\u2b43\u2b45\u0005",
+ "\u05d2\u02ea\u0002\u2b44\u2b42\u0003\u0002\u0002\u0002\u2b44\u2b45\u0003",
+ "\u0002\u0002\u0002\u2b45\u056d\u0003\u0002\u0002\u0002\u2b46\u2b4b\u0005",
+ "\u05d0\u02e9\u0002\u2b47\u2b48\u0007\u08aa\u0002\u0002\u2b48\u2b4a\u0005",
+ "\u05d2\u02ea\u0002\u2b49\u2b47\u0003\u0002\u0002\u0002\u2b4a\u2b4d\u0003",
+ "\u0002\u0002\u0002\u2b4b\u2b49\u0003\u0002\u0002\u0002\u2b4b\u2b4c\u0003",
+ "\u0002\u0002\u0002\u2b4c\u056f\u0003\u0002\u0002\u0002\u2b4d\u2b4b\u0003",
+ "\u0002\u0002\u0002\u2b4e\u2b4f\u0005\u05d0\u02e9\u0002\u2b4f\u0571\u0003",
+ "\u0002\u0002\u0002\u2b50\u2b52\u0005\u05d2\u02ea\u0002\u2b51\u2b53\u0005",
+ "\u0116\u008c\u0002\u2b52\u2b51\u0003\u0002\u0002\u0002\u2b52\u2b53\u0003",
+ "\u0002\u0002\u0002\u2b53\u0573\u0003\u0002\u0002\u0002\u2b54\u2b57\u0005",
+ "\u05d2\u02ea\u0002\u2b55\u2b57\u0007\u00fd\u0002\u0002\u2b56\u2b54\u0003",
+ "\u0002\u0002\u0002\u2b56\u2b55\u0003\u0002\u0002\u0002\u2b57\u0575\u0003",
+ "\u0002\u0002\u0002\u2b58\u2b5d\u0005\u05d0\u02e9\u0002\u2b59\u2b5a\u0007",
+ "\u08aa\u0002\u0002\u2b5a\u2b5c\u0005\u05d2\u02ea\u0002\u2b5b\u2b59\u0003",
+ "\u0002\u0002\u0002\u2b5c\u2b5f\u0003\u0002\u0002\u0002\u2b5d\u2b5b\u0003",
+ "\u0002\u0002\u0002\u2b5d\u2b5e\u0003\u0002\u0002\u0002\u2b5e\u2b62\u0003",
+ "\u0002\u0002\u0002\u2b5f\u2b5d\u0003\u0002\u0002\u0002\u2b60\u2b61\u0007",
+ "\u08b9\u0002\u0002\u2b61\u2b63\u0005\u0590\u02c9\u0002\u2b62\u2b60\u0003",
+ "\u0002\u0002\u0002\u2b62\u2b63\u0003\u0002\u0002\u0002\u2b63\u0577\u0003",
+ "\u0002\u0002\u0002\u2b64\u2b65\u0005\u05d2\u02ea\u0002\u2b65\u0579\u0003",
+ "\u0002\u0002\u0002\u2b66\u2b6b\u0005\u05d2\u02ea\u0002\u2b67\u2b68\u0007",
+ "\u08aa\u0002\u0002\u2b68\u2b6a\u0005\u05d2\u02ea\u0002\u2b69\u2b67\u0003",
+ "\u0002\u0002\u0002\u2b6a\u2b6d\u0003\u0002\u0002\u0002\u2b6b\u2b69\u0003",
+ "\u0002\u0002\u0002\u2b6b\u2b6c\u0003\u0002\u0002\u0002\u2b6c\u057b\u0003",
+ "\u0002\u0002\u0002\u2b6d\u2b6b\u0003\u0002\u0002\u0002\u2b6e\u2b73\u0005",
+ "\u05d2\u02ea\u0002\u2b6f\u2b70\u0007\u08aa\u0002\u0002\u2b70\u2b72\u0005",
+ "\u05d2\u02ea\u0002\u2b71\u2b6f\u0003\u0002\u0002\u0002\u2b72\u2b75\u0003",
+ "\u0002\u0002\u0002\u2b73\u2b71\u0003\u0002\u0002\u0002\u2b73\u2b74\u0003",
+ "\u0002\u0002\u0002\u2b74\u057d\u0003\u0002\u0002\u0002\u2b75\u2b73\u0003",
+ "\u0002\u0002\u0002\u2b76\u2b7b\u0005\u05d0\u02e9\u0002\u2b77\u2b78\u0007",
+ "\u08aa\u0002\u0002\u2b78\u2b7a\u0005\u05d2\u02ea\u0002\u2b79\u2b77\u0003",
+ "\u0002\u0002\u0002\u2b7a\u2b7d\u0003\u0002\u0002\u0002\u2b7b\u2b79\u0003",
+ "\u0002\u0002\u0002\u2b7b\u2b7c\u0003\u0002\u0002\u0002\u2b7c\u057f\u0003",
+ "\u0002\u0002\u0002\u2b7d\u2b7b\u0003\u0002\u0002\u0002\u2b7e\u2b81\u0005",
+ "\u05d0\u02e9\u0002\u2b7f\u2b80\u0007\u08aa\u0002\u0002\u2b80\u2b82\u0005",
+ "\u05d2\u02ea\u0002\u2b81\u2b7f\u0003\u0002\u0002\u0002\u2b81\u2b82\u0003",
+ "\u0002\u0002\u0002\u2b82\u0581\u0003\u0002\u0002\u0002\u2b83\u2b86\u0005",
+ "\u05d0\u02e9\u0002\u2b84\u2b85\u0007\u08aa\u0002\u0002\u2b85\u2b87\u0005",
+ "\u05d2\u02ea\u0002\u2b86\u2b84\u0003\u0002\u0002\u0002\u2b86\u2b87\u0003",
+ "\u0002\u0002\u0002\u2b87\u0583\u0003\u0002\u0002\u0002\u2b88\u2b8b\u0005",
+ "\u05d0\u02e9\u0002\u2b89\u2b8a\u0007\u08aa\u0002\u0002\u2b8a\u2b8c\u0005",
+ "\u05d2\u02ea\u0002\u2b8b\u2b89\u0003\u0002\u0002\u0002\u2b8b\u2b8c\u0003",
+ "\u0002\u0002\u0002\u2b8c\u0585\u0003\u0002\u0002\u0002\u2b8d\u2b8e\u0007",
+ "\u08c8\u0002\u0002\u2b8e\u2b90\u0005\u0598\u02cd\u0002\u2b8f\u2b8d\u0003",
+ "\u0002\u0002\u0002\u2b8f\u2b90\u0003\u0002\u0002\u0002\u2b90\u2b91\u0003",
+ "\u0002\u0002\u0002\u2b91\u2b94\u0005\u05d2\u02ea\u0002\u2b92\u2b93\u0007",
+ "\u08aa\u0002\u0002\u2b93\u2b95\u0005\u05d2\u02ea\u0002\u2b94\u2b92\u0003",
+ "\u0002\u0002\u0002\u2b94\u2b95\u0003\u0002\u0002\u0002\u2b95\u2b98\u0003",
+ "\u0002\u0002\u0002\u2b96\u2b98\u0005\u05bc\u02df\u0002\u2b97\u2b8f\u0003",
+ "\u0002\u0002\u0002\u2b97\u2b96\u0003\u0002\u0002\u0002\u2b98\u0587\u0003",
+ "\u0002\u0002\u0002\u2b99\u2b9c\u0005\u05d0\u02e9\u0002\u2b9a\u2b9b\u0007",
+ "\u08aa\u0002\u0002\u2b9b\u2b9d\u0005\u05d2\u02ea\u0002\u2b9c\u2b9a\u0003",
+ "\u0002\u0002\u0002\u2b9c\u2b9d\u0003\u0002\u0002\u0002\u2b9d\u0589\u0003",
+ "\u0002\u0002\u0002\u2b9e\u2ba1\u0005\u05be\u02e0\u0002\u2b9f\u2ba1\u0005",
+ "\u05bc\u02df\u0002\u2ba0\u2b9e\u0003\u0002\u0002\u0002\u2ba0\u2b9f\u0003",
+ "\u0002\u0002\u0002\u2ba1\u058b\u0003\u0002\u0002\u0002\u2ba2\u2ba5\u0005",
+ "\u05d0\u02e9\u0002\u2ba3\u2ba5\u0005\u05bc\u02df\u0002\u2ba4\u2ba2\u0003",
+ "\u0002\u0002\u0002\u2ba4\u2ba3\u0003\u0002\u0002\u0002\u2ba5\u058d\u0003",
+ "\u0002\u0002\u0002\u2ba6\u2ba9\u0005\u05d0\u02e9\u0002\u2ba7\u2ba8\u0007",
+ "\u08aa\u0002\u0002\u2ba8\u2baa\u0005\u05d2\u02ea\u0002\u2ba9\u2ba7\u0003",
+ "\u0002\u0002\u0002\u2ba9\u2baa\u0003\u0002\u0002\u0002\u2baa\u058f\u0003",
+ "\u0002\u0002\u0002\u2bab\u2bac\u0005\u05d0\u02e9\u0002\u2bac\u0591\u0003",
+ "\u0002\u0002\u0002\u2bad\u2bb2\u0005\u05d0\u02e9\u0002\u2bae\u2baf\u0007",
+ "\u08aa\u0002\u0002\u2baf\u2bb1\u0005\u05d2\u02ea\u0002\u2bb0\u2bae\u0003",
+ "\u0002\u0002\u0002\u2bb1\u2bb4\u0003\u0002\u0002\u0002\u2bb2\u2bb0\u0003",
+ "\u0002\u0002\u0002\u2bb2\u2bb3\u0003\u0002\u0002\u0002\u2bb3\u0593\u0003",
+ "\u0002\u0002\u0002\u2bb4\u2bb2\u0003\u0002\u0002\u0002\u2bb5\u2bb8\u0005",
+ "\u05d0\u02e9\u0002\u2bb6\u2bb7\u0007\u08aa\u0002\u0002\u2bb7\u2bb9\u0005",
+ "\u05d2\u02ea\u0002\u2bb8\u2bb6\u0003\u0002\u0002\u0002\u2bb8\u2bb9\u0003",
+ "\u0002\u0002\u0002\u2bb9\u2bbd\u0003\u0002\u0002\u0002\u2bba\u2bbb\u0007",
+ "\u08b9\u0002\u0002\u2bbb\u2bbe\u0005\u0590\u02c9\u0002\u2bbc\u2bbe\u0005",
+ "\u0548\u02a5\u0002\u2bbd\u2bba\u0003\u0002\u0002\u0002\u2bbd\u2bbc\u0003",
+ "\u0002\u0002\u0002\u2bbd\u2bbe\u0003\u0002\u0002\u0002\u2bbe\u2bc4\u0003",
+ "\u0002\u0002\u0002\u2bbf\u2bc1\u0005\u0596\u02cc\u0002\u2bc0\u2bc2\u0005",
+ "\u05d4\u02eb\u0002\u2bc1\u2bc0\u0003\u0002\u0002\u0002\u2bc1\u2bc2\u0003",
+ "\u0002\u0002\u0002\u2bc2\u2bc4\u0003\u0002\u0002\u0002\u2bc3\u2bb5\u0003",
+ "\u0002\u0002\u0002\u2bc3\u2bbf\u0003\u0002\u0002\u0002\u2bc4\u0595\u0003",
+ "\u0002\u0002\u0002\u2bc5\u2bc6\u0007\u0871\u0002\u0002\u2bc6\u2bca\u0007",
+ "\u08b1\u0002\u0002\u2bc7\u2bc8\u0005\u0530\u0299\u0002\u2bc8\u2bc9\u0007",
+ "\u08b7\u0002\u0002\u2bc9\u2bcb\u0003\u0002\u0002\u0002\u2bca\u2bc7\u0003",
+ "\u0002\u0002\u0002\u2bca\u2bcb\u0003\u0002\u0002\u0002\u2bcb\u2bcc\u0003",
+ "\u0002\u0002\u0002\u2bcc\u2bce\u0005\u04ea\u0276\u0002\u2bcd\u2bcf\u0005",
+ "\u052c\u0297\u0002\u2bce\u2bcd\u0003\u0002\u0002\u0002\u2bce\u2bcf\u0003",
+ "\u0002\u0002\u0002\u2bcf\u2bd9\u0003\u0002\u0002\u0002\u2bd0\u2bd1\u0007",
+ "\u00d8\u0002\u0002\u2bd1\u2bd6\u0005\u0532\u029a\u0002\u2bd2\u2bd3\u0007",
+ "\u08b7\u0002\u0002\u2bd3\u2bd5\u0005\u0532\u029a\u0002\u2bd4\u2bd2\u0003",
+ "\u0002\u0002\u0002\u2bd5\u2bd8\u0003\u0002\u0002\u0002\u2bd6\u2bd4\u0003",
+ "\u0002\u0002\u0002\u2bd6\u2bd7\u0003\u0002\u0002\u0002\u2bd7\u2bda\u0003",
+ "\u0002\u0002\u0002\u2bd8\u2bd6\u0003\u0002\u0002\u0002\u2bd9\u2bd0\u0003",
+ "\u0002\u0002\u0002\u2bd9\u2bda\u0003\u0002\u0002\u0002\u2bda\u2bdb\u0003",
+ "\u0002\u0002\u0002\u2bdb\u2bde\u0007\u08b2\u0002\u0002\u2bdc\u2bdd\u0007",
+ "\u08aa\u0002\u0002\u2bdd\u2bdf\u0005\u05c0\u02e1\u0002\u2bde\u2bdc\u0003",
+ "\u0002\u0002\u0002\u2bde\u2bdf\u0003\u0002\u0002\u0002\u2bdf\u0597\u0003",
+ "\u0002\u0002\u0002\u2be0\u2be5\u0005\u05d2\u02ea\u0002\u2be1\u2be2\u0007",
+ "\u08aa\u0002\u0002\u2be2\u2be4\u0005\u05d2\u02ea\u0002\u2be3\u2be1\u0003",
+ "\u0002\u0002\u0002\u2be4\u2be7\u0003\u0002\u0002\u0002\u2be5\u2be3\u0003",
+ "\u0002\u0002\u0002\u2be5\u2be6\u0003\u0002\u0002\u0002\u2be6\u0599\u0003",
+ "\u0002\u0002\u0002\u2be7\u2be5\u0003\u0002\u0002\u0002\u2be8\u2be9\u0005",
+ "\u05d0\u02e9\u0002\u2be9\u059b\u0003\u0002\u0002\u0002\u2bea\u2beb\u0005",
+ "\u05d2\u02ea\u0002\u2beb\u059d\u0003\u0002\u0002\u0002\u2bec\u2bed\u0005",
+ "\u05d2\u02ea\u0002\u2bed\u059f\u0003\u0002\u0002\u0002\u2bee\u2bef\u0005",
+ "\u05d2\u02ea\u0002\u2bef\u05a1\u0003\u0002\u0002\u0002\u2bf0\u2c09\u0005",
+ "\u0594\u02cb\u0002\u2bf1\u2bf2\u0007\u0809\u0002\u0002\u2bf2\u2bf7\u0005",
+ "\u05a0\u02d1\u0002\u2bf3\u2bf4\u0007\u08b7\u0002\u0002\u2bf4\u2bf6\u0005",
+ "\u05a0\u02d1\u0002\u2bf5\u2bf3\u0003\u0002\u0002\u0002\u2bf6\u2bf9\u0003",
+ "\u0002\u0002\u0002\u2bf7\u2bf5\u0003\u0002\u0002\u0002\u2bf7\u2bf8\u0003",
+ "\u0002\u0002\u0002\u2bf8\u2c09\u0003\u0002\u0002\u0002\u2bf9\u2bf7\u0003",
+ "\u0002\u0002\u0002\u2bfa\u2bfb\u0007\u017e\u0002\u0002\u2bfb\u2c09\u0005",
+ "\u059e\u02d0\u0002\u2bfc\u2bfd\u0007\u01aa\u0002\u0002\u2bfd\u2c09\u0005",
+ "\u059c\u02cf\u0002\u2bfe\u2bff\u0007\u034b\u0002\u0002\u2bff\u2c00\u0007",
+ "\u0358\u0002\u0002\u2c00\u2c09\u0005\u059c\u02cf\u0002\u2c01\u2c02\u0007",
+ "\u02be\u0002\u0002\u2c02\u2c03\t\u008e\u0002\u0002\u2c03\u2c09\u0005",
+ "\u059c\u02cf\u0002\u2c04\u2c05\u0007\u0617\u0002\u0002\u2c05\u2c06\u0007",
+ "\u07b9\u0002\u0002\u2c06\u2c07\u0007\u0526\u0002\u0002\u2c07\u2c09\u0005",
+ "\u059c\u02cf\u0002\u2c08\u2bf0\u0003\u0002\u0002\u0002\u2c08\u2bf1\u0003",
+ "\u0002\u0002\u0002\u2c08\u2bfa\u0003\u0002\u0002\u0002\u2c08\u2bfc\u0003",
+ "\u0002\u0002\u0002\u2c08\u2bfe\u0003\u0002\u0002\u0002\u2c08\u2c01\u0003",
+ "\u0002\u0002\u0002\u2c08\u2c04\u0003\u0002\u0002\u0002\u2c09\u05a3\u0003",
+ "\u0002\u0002\u0002\u2c0a\u2c0f\u0005\u0592\u02ca\u0002\u2c0b\u2c0c\u0007",
+ "\u08b7\u0002\u0002\u2c0c\u2c0e\u0005\u0592\u02ca\u0002\u2c0d\u2c0b\u0003",
+ "\u0002\u0002\u0002\u2c0e\u2c11\u0003\u0002\u0002\u0002\u2c0f\u2c0d\u0003",
+ "\u0002\u0002\u0002\u2c0f\u2c10\u0003\u0002\u0002\u0002\u2c10\u05a5\u0003",
+ "\u0002\u0002\u0002\u2c11\u2c0f\u0003\u0002\u0002\u0002\u2c12\u2c13\u0007",
+ "\u08b1\u0002\u0002\u2c13\u2c14\u0005\u05a4\u02d3\u0002\u2c14\u2c15\u0007",
+ "\u08b2\u0002\u0002\u2c15\u05a7\u0003\u0002\u0002\u0002\u2c16\u2c17\u0007",
+ "\u02d2\u0002\u0002\u2c17\u2c18\u0007\u08b1\u0002\u0002\u2c18\u2c19\u0007",
+ "\u0887\u0002\u0002\u2c19\u2c1a\tj\u0002\u0002\u2c1a\u2c1b\u0005\u0480",
+ "\u0241\u0002\u2c1b\u2c1d\u0007\u08b2\u0002\u0002\u2c1c\u2c1e\u0005\u051a",
+ "\u028e\u0002\u2c1d\u2c1c\u0003\u0002\u0002\u0002\u2c1d\u2c1e\u0003\u0002",
+ "\u0002\u0002\u2c1e\u05a9\u0003\u0002\u0002\u0002\u2c1f\u2c28\u0007\u08b1",
+ "\u0002\u0002\u2c20\u2c25\u0005\u05b2\u02da\u0002\u2c21\u2c22\u0007\u08b7",
+ "\u0002\u0002\u2c22\u2c24\u0005\u05b2\u02da\u0002\u2c23\u2c21\u0003\u0002",
+ "\u0002\u0002\u2c24\u2c27\u0003\u0002\u0002\u0002\u2c25\u2c23\u0003\u0002",
+ "\u0002\u0002\u2c25\u2c26\u0003\u0002\u0002\u0002\u2c26\u2c29\u0003\u0002",
+ "\u0002\u0002\u2c27\u2c25\u0003\u0002\u0002\u0002\u2c28\u2c20\u0003\u0002",
+ "\u0002\u0002\u2c28\u2c29\u0003\u0002\u0002\u0002\u2c29\u2c2a\u0003\u0002",
+ "\u0002\u0002\u2c2a\u2c2c\u0007\u08b2\u0002\u0002\u2c2b\u2c2d\u0005\u05a8",
+ "\u02d5\u0002\u2c2c\u2c2b\u0003\u0002\u0002\u0002\u2c2c\u2c2d\u0003\u0002",
+ "\u0002\u0002\u2c2d\u05ab\u0003\u0002\u0002\u0002\u2c2e\u2c3d\u0007\u08b1",
+ "\u0002\u0002\u2c2f\u2c31\u0005\u05b2\u02da\u0002\u2c30\u2c32\u0005\u05b0",
+ "\u02d9\u0002\u2c31\u2c30\u0003\u0002\u0002\u0002\u2c31\u2c32\u0003\u0002",
+ "\u0002\u0002\u2c32\u2c3a\u0003\u0002\u0002\u0002\u2c33\u2c34\u0007\u08b7",
+ "\u0002\u0002\u2c34\u2c36\u0005\u05b2\u02da\u0002\u2c35\u2c37\u0005\u05b0",
+ "\u02d9\u0002\u2c36\u2c35\u0003\u0002\u0002\u0002\u2c36\u2c37\u0003\u0002",
+ "\u0002\u0002\u2c37\u2c39\u0003\u0002\u0002\u0002\u2c38\u2c33\u0003\u0002",
+ "\u0002\u0002\u2c39\u2c3c\u0003\u0002\u0002\u0002\u2c3a\u2c38\u0003\u0002",
+ "\u0002\u0002\u2c3a\u2c3b\u0003\u0002\u0002\u0002\u2c3b\u2c3e\u0003\u0002",
+ "\u0002\u0002\u2c3c\u2c3a\u0003\u0002\u0002\u0002\u2c3d\u2c2f\u0003\u0002",
+ "\u0002\u0002\u2c3d\u2c3e\u0003\u0002\u0002\u0002\u2c3e\u2c3f\u0003\u0002",
+ "\u0002\u0002\u2c3f\u2c41\u0007\u08b2\u0002\u0002\u2c40\u2c42\u0005\u05a8",
+ "\u02d5\u0002\u2c41\u2c40\u0003\u0002\u0002\u0002\u2c41\u2c42\u0003\u0002",
+ "\u0002\u0002\u2c42\u05ad\u0003\u0002\u0002\u0002\u2c43\u2c44\u0007\u08b1",
+ "\u0002\u0002\u2c44\u2c51\u0005\u0592\u02ca\u0002\u2c45\u2c48\u0007\u08b7",
+ "\u0002\u0002\u2c46\u2c49\u0005\u05ca\u02e6\u0002\u2c47\u2c49\u0007\u044b",
+ "\u0002\u0002\u2c48\u2c46\u0003\u0002\u0002\u0002\u2c48\u2c47\u0003\u0002",
+ "\u0002\u0002\u2c49\u2c4f\u0003\u0002\u0002\u0002\u2c4a\u2c4d\u0007\u08b7",
+ "\u0002\u0002\u2c4b\u2c4e\u0005\u05ca\u02e6\u0002\u2c4c\u2c4e\u0007\u044b",
+ "\u0002\u0002\u2c4d\u2c4b\u0003\u0002\u0002\u0002\u2c4d\u2c4c\u0003\u0002",
+ "\u0002\u0002\u2c4e\u2c50\u0003\u0002\u0002\u0002\u2c4f\u2c4a\u0003\u0002",
+ "\u0002\u0002\u2c4f\u2c50\u0003\u0002\u0002\u0002\u2c50\u2c52\u0003\u0002",
+ "\u0002\u0002\u2c51\u2c45\u0003\u0002\u0002\u0002\u2c51\u2c52\u0003\u0002",
+ "\u0002\u0002\u2c52\u2c53\u0003\u0002\u0002\u0002\u2c53\u2c67\u0007\u0811",
+ "\u0002\u0002\u2c54\u2c55\u0005\u0594\u02cb\u0002\u2c55\u2c56\u0007\u08aa",
+ "\u0002\u0002\u2c56\u2c57\u0007\u08b4\u0002\u0002\u2c57\u2c68\u0003\u0002",
+ "\u0002\u0002\u2c58\u2c68\u0007\u08b4\u0002\u0002\u2c59\u2c5b\u0005\u04d4",
+ "\u026b\u0002\u2c5a\u2c5c\u0005\u054a\u02a6\u0002\u2c5b\u2c5a\u0003\u0002",
+ "\u0002\u0002\u2c5b\u2c5c\u0003\u0002\u0002\u0002\u2c5c\u2c64\u0003\u0002",
+ "\u0002\u0002\u2c5d\u2c5e\u0007\u08b7\u0002\u0002\u2c5e\u2c60\u0005\u04d4",
+ "\u026b\u0002\u2c5f\u2c61\u0005\u054a\u02a6\u0002\u2c60\u2c5f\u0003\u0002",
+ "\u0002\u0002\u2c60\u2c61\u0003\u0002\u0002\u0002\u2c61\u2c63\u0003\u0002",
+ "\u0002\u0002\u2c62\u2c5d\u0003\u0002\u0002\u0002\u2c63\u2c66\u0003\u0002",
+ "\u0002\u0002\u2c64\u2c62\u0003\u0002\u0002\u0002\u2c64\u2c65\u0003\u0002",
+ "\u0002\u0002\u2c65\u2c68\u0003\u0002\u0002\u0002\u2c66\u2c64\u0003\u0002",
+ "\u0002\u0002\u2c67\u2c54\u0003\u0002\u0002\u0002\u2c67\u2c58\u0003\u0002",
+ "\u0002\u0002\u2c67\u2c59\u0003\u0002\u0002\u0002\u2c68\u2c69\u0003\u0002",
+ "\u0002\u0002\u2c69\u2c6b\u0007\u08b2\u0002\u0002\u2c6a\u2c6c\u0005\u05a8",
+ "\u02d5\u0002\u2c6b\u2c6a\u0003\u0002\u0002\u0002\u2c6b\u2c6c\u0003\u0002",
+ "\u0002\u0002\u2c6c\u05af\u0003\u0002\u0002\u0002\u2c6d\u2c6e\t\u008f",
+ "\u0002\u0002\u2c6e\u2c6f\u0007\u044c\u0002\u0002\u2c6f\u05b1\u0003\u0002",
+ "\u0002\u0002\u2c70\u2c71\u0005\u05d0\u02e9\u0002\u2c71\u2c72\u0007\u08c5",
+ "\u0002\u0002\u2c72\u2c73\u0007\u08c0\u0002\u0002\u2c73\u2c75\u0003\u0002",
+ "\u0002\u0002\u2c74\u2c70\u0003\u0002\u0002\u0002\u2c74\u2c75\u0003\u0002",
+ "\u0002\u0002\u2c75\u2c76\u0003\u0002\u0002\u0002\u2c76\u2c77\u0005\u04d4",
+ "\u026b\u0002\u2c77\u05b3\u0003\u0002\u0002\u0002\u2c78\u2c81\u0005\u05b6",
+ "\u02dc\u0002\u2c79\u2c7b\u0007\u0562\u0002\u0002\u2c7a\u2c79\u0003\u0002",
+ "\u0002\u0002\u2c7a\u2c7b\u0003\u0002\u0002\u0002\u2c7b\u2c7c\u0003\u0002",
+ "\u0002\u0002\u2c7c\u2c7e\u0005\u057a\u02be\u0002\u2c7d\u2c7f\t\u0090",
+ "\u0002\u0002\u2c7e\u2c7d\u0003\u0002\u0002\u0002\u2c7e\u2c7f\u0003\u0002",
+ "\u0002\u0002\u2c7f\u2c81\u0003\u0002\u0002\u0002\u2c80\u2c78\u0003\u0002",
+ "\u0002\u0002\u2c80\u2c7a\u0003\u0002\u0002\u0002\u2c81\u05b5\u0003\u0002",
+ "\u0002\u0002\u2c82\u2c84\u0005\u05ba\u02de\u0002\u2c83\u2c85\u0005\u05b8",
+ "\u02dd\u0002\u2c84\u2c83\u0003\u0002\u0002\u0002\u2c84\u2c85\u0003\u0002",
+ "\u0002\u0002\u2c85\u2c8f\u0003\u0002\u0002\u0002\u2c86\u2c88\u0007\u084b",
+ "\u0002\u0002\u2c87\u2c89\u0007\u0303\u0002\u0002\u2c88\u2c87\u0003\u0002",
+ "\u0002\u0002\u2c88\u2c89\u0003\u0002\u0002\u0002\u2c89\u2c8a\u0003\u0002",
+ "\u0002\u0002\u2c8a\u2c8b\u0007\u0793\u0002\u0002\u2c8b\u2c90\u0007\u087f",
+ "\u0002\u0002\u2c8c\u2c8d\u0007\u00b1\u0002\u0002\u2c8d\u2c8e\u0007\u05e8",
+ "\u0002\u0002\u2c8e\u2c90\u0005\u0598\u02cd\u0002\u2c8f\u2c86\u0003\u0002",
+ "\u0002\u0002\u2c8f\u2c8c\u0003\u0002\u0002\u0002\u2c8f\u2c90\u0003\u0002",
+ "\u0002\u0002\u2c90\u2ca2\u0003\u0002\u0002\u0002\u2c91\u2c92\u0007\u02b3",
+ "\u0002\u0002\u2c92\u2c97\t\u0091\u0002\u0002\u2c93\u2c94\u0007\u08b1",
+ "\u0002\u0002\u2c94\u2c95\u0005\u04d4\u026b\u0002\u2c95\u2c96\u0007\u08b2",
+ "\u0002\u0002\u2c96\u2c98\u0003\u0002\u0002\u0002\u2c97\u2c93\u0003\u0002",
+ "\u0002\u0002\u2c97\u2c98\u0003\u0002\u0002\u0002\u2c98\u2c99\u0003\u0002",
+ "\u0002\u0002\u2c99\u2c9a\u0007\u07ae\u0002\u0002\u2c9a\u2c9f\t\u0092",
+ "\u0002\u0002\u2c9b\u2c9c\u0007\u08b1\u0002\u0002\u2c9c\u2c9d\u0005\u04d4",
+ "\u026b\u0002\u2c9d\u2c9e\u0007\u08b2\u0002\u0002\u2c9e\u2ca0\u0003\u0002",
+ "\u0002\u0002\u2c9f\u2c9b\u0003\u0002\u0002\u0002\u2c9f\u2ca0\u0003\u0002",
+ "\u0002\u0002\u2ca0\u2ca2\u0003\u0002\u0002\u0002\u2ca1\u2c82\u0003\u0002",
+ "\u0002\u0002\u2ca1\u2c91\u0003\u0002\u0002\u0002\u2ca2\u05b7\u0003\u0002",
+ "\u0002\u0002\u2ca3\u2ca6\u0007\u08b1\u0002\u0002\u2ca4\u2ca7\u0005\u05ca",
+ "\u02e6\u0002\u2ca5\u2ca7\u0007\u08b4\u0002\u0002\u2ca6\u2ca4\u0003\u0002",
+ "\u0002\u0002\u2ca6\u2ca5\u0003\u0002\u0002\u0002\u2ca7\u2caa\u0003\u0002",
+ "\u0002\u0002\u2ca8\u2ca9\u0007\u08b7\u0002\u0002\u2ca9\u2cab\u0005\u05ca",
+ "\u02e6\u0002\u2caa\u2ca8\u0003\u0002\u0002\u0002\u2caa\u2cab\u0003\u0002",
+ "\u0002\u0002\u2cab\u2cad\u0003\u0002\u0002\u0002\u2cac\u2cae\t\u0093",
+ "\u0002\u0002\u2cad\u2cac\u0003\u0002\u0002\u0002\u2cad\u2cae\u0003\u0002",
+ "\u0002\u0002\u2cae\u2caf\u0003\u0002\u0002\u0002\u2caf\u2cb0\u0007\u08b2",
+ "\u0002\u0002\u2cb0\u05b9\u0003\u0002\u0002\u0002\u2cb1\u2cee\u0007x",
+ "\u0002\u0002\u2cb2\u2cee\u0007\u04ed\u0002\u0002\u2cb3\u2cee\u0007\u0378",
+ "\u0002\u0002\u2cb4\u2cee\u0007u\u0002\u0002\u2cb5\u2cee\u0007r\u0002",
+ "\u0002\u2cb6\u2cee\u0007\u0379\u0002\u0002\u2cb7\u2cee\u0007\u04fc\u0002",
+ "\u0002\u2cb8\u2cee\u0007\u04fb\u0002\u0002\u2cb9\u2cee\u0007\u05fa\u0002",
+ "\u0002\u2cba\u2cee\u0007\u05fb\u0002\u0002\u2cbb\u2cee\u0007\u0452\u0002",
+ "\u0002\u2cbc\u2cee\u0007\u0158\u0002\u0002\u2cbd\u2cee\u0007\u02ac\u0002",
+ "\u0002\u2cbe\u2cee\u0007\u02b4\u0002\u0002\u2cbf\u2cee\u0007\u044e\u0002",
+ "\u0002\u2cc0\u2cee\u0007\u0607\u0002\u0002\u2cc1\u2cee\u0007\u044d\u0002",
+ "\u0002\u2cc2\u2cee\u0007\u0159\u0002\u0002\u2cc3\u2cc5\u0007\u0199\u0002",
+ "\u0002\u2cc4\u2cc6\u0007\u050d\u0002\u0002\u2cc5\u2cc4\u0003\u0002\u0002",
+ "\u0002\u2cc5\u2cc6\u0003\u0002\u0002\u0002\u2cc6\u2cee\u0003\u0002\u0002",
+ "\u0002\u2cc7\u2cee\u0007\u0218\u0002\u0002\u2cc8\u2cee\u0007\u054e\u0002",
+ "\u0002\u2cc9\u2cee\u0007\u037c\u0002\u0002\u2cca\u2ccc\u0007\u0316\u0002",
+ "\u0002\u2ccb\u2ccd\u0007\u0545\u0002\u0002\u2ccc\u2ccb\u0003\u0002\u0002",
+ "\u0002\u2ccc\u2ccd\u0003\u0002\u0002\u0002\u2ccd\u2cee\u0003\u0002\u0002",
+ "\u0002\u2cce\u2cee\u0007\u00b2\u0002\u0002\u2ccf\u2cee\u0007\u00b1\u0002",
+ "\u0002\u2cd0\u2cee\u0007\u081d\u0002\u0002\u2cd1\u2cee\u0007\u081e\u0002",
+ "\u0002\u2cd2\u2cee\u0007\u0640\u0002\u0002\u2cd3\u2cee\u0007\u0545\u0002",
+ "\u0002\u2cd4\u2cee\u0007\u0088\u0002\u0002\u2cd5\u2cee\u0007\u0149\u0002",
+ "\u0002\u2cd6\u2cee\u0007\u05a8\u0002\u0002\u2cd7\u2cee\u0007\u07f2\u0002",
+ "\u0002\u2cd8\u2cee\u0007\u087b\u0002\u0002\u2cd9\u2cee\u0007\u0366\u0002",
+ "\u0002\u2cda\u2cee\u0007\u014b\u0002\u0002\u2cdb\u2cee\u0007\u0258\u0002",
+ "\u0002\u2cdc\u2cee\u0007\u034e\u0002\u0002\u2cdd\u2cee\u0007\u05ca\u0002",
+ "\u0002\u2cde\u2cee\u0007\u0796\u0002\u0002\u2cdf\u2cee\u0007\u0797\u0002",
+ "\u0002\u2ce0\u2cee\u0007\u0799\u0002\u0002\u2ce1\u2cee\u0007\u0795\u0002",
+ "\u0002\u2ce2\u2cee\u0007\u078f\u0002\u0002\u2ce3\u2cee\u0007\u0791\u0002",
+ "\u0002\u2ce4\u2cee\u0007\u0790\u0002\u0002\u2ce5\u2cee\u0007\u078e\u0002",
+ "\u0002\u2ce6\u2cee\u0007\u087d\u0002\u0002\u2ce7\u2cee\u0007\u019f\u0002",
+ "\u0002\u2ce8\u2cee\u0007n\u0002\u0002\u2ce9\u2cee\u0007\u0082\u0002",
+ "\u0002\u2cea\u2cee\u0007\u00c2\u0002\u0002\u2ceb\u2cee\u0007\u037e\u0002",
+ "\u0002\u2cec\u2cee\u0007\u0353\u0002\u0002\u2ced\u2cb1\u0003\u0002\u0002",
+ "\u0002\u2ced\u2cb2\u0003\u0002\u0002\u0002\u2ced\u2cb3\u0003\u0002\u0002",
+ "\u0002\u2ced\u2cb4\u0003\u0002\u0002\u0002\u2ced\u2cb5\u0003\u0002\u0002",
+ "\u0002\u2ced\u2cb6\u0003\u0002\u0002\u0002\u2ced\u2cb7\u0003\u0002\u0002",
+ "\u0002\u2ced\u2cb8\u0003\u0002\u0002\u0002\u2ced\u2cb9\u0003\u0002\u0002",
+ "\u0002\u2ced\u2cba\u0003\u0002\u0002\u0002\u2ced\u2cbb\u0003\u0002\u0002",
+ "\u0002\u2ced\u2cbc\u0003\u0002\u0002\u0002\u2ced\u2cbd\u0003\u0002\u0002",
+ "\u0002\u2ced\u2cbe\u0003\u0002\u0002\u0002\u2ced\u2cbf\u0003\u0002\u0002",
+ "\u0002\u2ced\u2cc0\u0003\u0002\u0002\u0002\u2ced\u2cc1\u0003\u0002\u0002",
+ "\u0002\u2ced\u2cc2\u0003\u0002\u0002\u0002\u2ced\u2cc3\u0003\u0002\u0002",
+ "\u0002\u2ced\u2cc7\u0003\u0002\u0002\u0002\u2ced\u2cc8\u0003\u0002\u0002",
+ "\u0002\u2ced\u2cc9\u0003\u0002\u0002\u0002\u2ced\u2cca\u0003\u0002\u0002",
+ "\u0002\u2ced\u2cce\u0003\u0002\u0002\u0002\u2ced\u2ccf\u0003\u0002\u0002",
+ "\u0002\u2ced\u2cd0\u0003\u0002\u0002\u0002\u2ced\u2cd1\u0003\u0002\u0002",
+ "\u0002\u2ced\u2cd2\u0003\u0002\u0002\u0002\u2ced\u2cd3\u0003\u0002\u0002",
+ "\u0002\u2ced\u2cd4\u0003\u0002\u0002\u0002\u2ced\u2cd5\u0003\u0002\u0002",
+ "\u0002\u2ced\u2cd6\u0003\u0002\u0002\u0002\u2ced\u2cd7\u0003\u0002\u0002",
+ "\u0002\u2ced\u2cd8\u0003\u0002\u0002\u0002\u2ced\u2cd9\u0003\u0002\u0002",
+ "\u0002\u2ced\u2cda\u0003\u0002\u0002\u0002\u2ced\u2cdb\u0003\u0002\u0002",
+ "\u0002\u2ced\u2cdc\u0003\u0002\u0002\u0002\u2ced\u2cdd\u0003\u0002\u0002",
+ "\u0002\u2ced\u2cde\u0003\u0002\u0002\u0002\u2ced\u2cdf\u0003\u0002\u0002",
+ "\u0002\u2ced\u2ce0\u0003\u0002\u0002\u0002\u2ced\u2ce1\u0003\u0002\u0002",
+ "\u0002\u2ced\u2ce2\u0003\u0002\u0002\u0002\u2ced\u2ce3\u0003\u0002\u0002",
+ "\u0002\u2ced\u2ce4\u0003\u0002\u0002\u0002\u2ced\u2ce5\u0003\u0002\u0002",
+ "\u0002\u2ced\u2ce6\u0003\u0002\u0002\u0002\u2ced\u2ce7\u0003\u0002\u0002",
+ "\u0002\u2ced\u2ce8\u0003\u0002\u0002\u0002\u2ced\u2ce9\u0003\u0002\u0002",
+ "\u0002\u2ced\u2cea\u0003\u0002\u0002\u0002\u2ced\u2ceb\u0003\u0002\u0002",
+ "\u0002\u2ced\u2cec\u0003\u0002\u0002\u0002\u2cee\u05bb\u0003\u0002\u0002",
+ "\u0002\u2cef\u2cf3\u0007\u08bb\u0002\u0002\u2cf0\u2cf1\u0007\u08c2\u0002",
+ "\u0002\u2cf1\u2cf3\u0007\u08ab\u0002\u0002\u2cf2\u2cef\u0003\u0002\u0002",
+ "\u0002\u2cf2\u2cf0\u0003\u0002\u0002\u0002\u2cf3\u2cfc\u0003\u0002\u0002",
+ "\u0002\u2cf4\u2cf6\u0007\u0289\u0002\u0002\u2cf5\u2cf4\u0003\u0002\u0002",
+ "\u0002\u2cf5\u2cf6\u0003\u0002\u0002\u0002\u2cf6\u2cfa\u0003\u0002\u0002",
+ "\u0002\u2cf7\u2cfb\u0007\u08bb\u0002\u0002\u2cf8\u2cf9\u0007\u08c2\u0002",
+ "\u0002\u2cf9\u2cfb\u0007\u08ab\u0002\u0002\u2cfa\u2cf7\u0003\u0002\u0002",
+ "\u0002\u2cfa\u2cf8\u0003\u0002\u0002\u0002\u2cfb\u2cfd\u0003\u0002\u0002",
+ "\u0002\u2cfc\u2cf5\u0003\u0002\u0002\u0002\u2cfc\u2cfd\u0003\u0002\u0002",
+ "\u0002\u2cfd\u2d02\u0003\u0002\u0002\u0002\u2cfe\u2cff\u0007\u08aa\u0002",
+ "\u0002\u2cff\u2d01\u0005\u05c0\u02e1\u0002\u2d00\u2cfe\u0003\u0002\u0002",
+ "\u0002\u2d01\u2d04\u0003\u0002\u0002\u0002\u2d02\u2d00\u0003\u0002\u0002",
+ "\u0002\u2d02\u2d03\u0003\u0002\u0002\u0002\u2d03\u05bd\u0003\u0002\u0002",
+ "\u0002\u2d04\u2d02\u0003\u0002\u0002\u0002\u2d05\u2d0a\u0005\u05c0\u02e1",
+ "\u0002\u2d06\u2d07\u0007\u08aa\u0002\u0002\u2d07\u2d09\u0005\u05c0\u02e1",
+ "\u0002\u2d08\u2d06\u0003\u0002\u0002\u0002\u2d09\u2d0c\u0003\u0002\u0002",
+ "\u0002\u2d0a\u2d08\u0003\u0002\u0002\u0002\u2d0a\u2d0b\u0003\u0002\u0002",
+ "\u0002\u2d0b\u05bf\u0003\u0002\u0002\u0002\u2d0c\u2d0a\u0003\u0002\u0002",
+ "\u0002\u2d0d\u2d0e\u0007\u08c8\u0002\u0002\u2d0e\u2d10\u0005\u0598\u02cd",
+ "\u0002\u2d0f\u2d0d\u0003\u0002\u0002\u0002\u2d0f\u2d10\u0003\u0002\u0002",
+ "\u0002\u2d10\u2d11\u0003\u0002\u0002\u0002\u2d11\u2d16\u0005\u05d2\u02ea",
+ "\u0002\u2d12\u2d13\u0007\u08aa\u0002\u0002\u2d13\u2d15\u0005\u05d2\u02ea",
+ "\u0002\u2d14\u2d12\u0003\u0002\u0002\u0002\u2d15\u2d18\u0003\u0002\u0002",
+ "\u0002\u2d16\u2d14\u0003\u0002\u0002\u0002\u2d16\u2d17\u0003\u0002\u0002",
+ "\u0002\u2d17\u2d1b\u0003\u0002\u0002\u0002\u2d18\u2d16\u0003\u0002\u0002",
+ "\u0002\u2d19\u2d1a\u0007\u08b9\u0002\u0002\u2d1a\u2d1c\u0005\u0590\u02c9",
+ "\u0002\u2d1b\u2d19\u0003\u0002\u0002\u0002\u2d1b\u2d1c\u0003\u0002\u0002",
+ "\u0002\u2d1c\u2d1e\u0003\u0002\u0002\u0002\u2d1d\u2d1f\u0005\u05aa\u02d6",
+ "\u0002\u2d1e\u2d1d\u0003\u0002\u0002\u0002\u2d1e\u2d1f\u0003\u0002\u0002",
+ "\u0002\u2d1f\u05c1\u0003\u0002\u0002\u0002\u2d20\u2d21\u0007\u08c8\u0002",
+ "\u0002\u2d21\u2d23\u0005\u0598\u02cd\u0002\u2d22\u2d20\u0003\u0002\u0002",
+ "\u0002\u2d22\u2d23\u0003\u0002\u0002\u0002\u2d23\u2d24\u0003\u0002\u0002",
+ "\u0002\u2d24\u2d29\u0005\u05d2\u02ea\u0002\u2d25\u2d26\u0007\u08aa\u0002",
+ "\u0002\u2d26\u2d28\u0005\u05d2\u02ea\u0002\u2d27\u2d25\u0003\u0002\u0002",
+ "\u0002\u2d28\u2d2b\u0003\u0002\u0002\u0002\u2d29\u2d27\u0003\u0002\u0002",
+ "\u0002\u2d29\u2d2a\u0003\u0002\u0002\u0002\u2d2a\u05c3\u0003\u0002\u0002",
+ "\u0002\u2d2b\u2d29\u0003\u0002\u0002\u0002\u2d2c\u2d2e\u0007%\u0002",
+ "\u0002\u2d2d\u2d2f\u0007\u0522\u0002\u0002\u2d2e\u2d2d\u0003\u0002\u0002",
+ "\u0002\u2d2e\u2d2f\u0003\u0002\u0002\u0002\u2d2f\u2d4d\u0003\u0002\u0002",
+ "\u0002\u2d30\u2d4d\u0007)\u0002\u0002\u2d31\u2d4d\u0007\u0156\u0002",
+ "\u0002\u2d32\u2d4d\u0007\u016c\u0002\u0002\u2d33\u2d4d\u0007\u01dd\u0002",
+ "\u0002\u2d34\u2d35\u0007\u0216\u0002\u0002\u2d35\u2d4d\u0007;\u0002",
+ "\u0002\u2d36\u2d4d\u0007\u0279\u0002\u0002\u2d37\u2d38\u0007\u028d\u0002",
+ "\u0002\u2d38\u2d4d\u0007\u0522\u0002\u0002\u2d39\u2d4d\u0007\u029f\u0002",
+ "\u0002\u2d3a\u2d3b\u0007\u02d2\u0002\u0002\u2d3b\u2d4d\u0007\u05da\u0002",
+ "\u0002\u2d3c\u2d3d\u0007\u0342\u0002\u0002\u2d3d\u2d4d\u0007\u0835\u0002",
+ "\u0002\u2d3e\u2d3f\u0007\u046a\u0002\u0002\u2d3f\u2d40\u0007\u00dc\u0002",
+ "\u0002\u2d40\u2d4d\u0007\u0563\u0002\u0002\u2d41\u2d42\u0007\u0538\u0002",
+ "\u0002\u2d42\u2d4d\u0007\u059e\u0002\u0002\u2d43\u2d4d\u0007\u054b\u0002",
+ "\u0002\u2d44\u2d4d\u0007\u0560\u0002\u0002\u2d45\u2d4d\u0007\u05d4\u0002",
+ "\u0002\u2d46\u2d47\u0007\u07b8\u0002\u0002\u2d47\u2d4d\u0007\u0617\u0002",
+ "\u0002\u2d48\u2d4d\u0007\u07cf\u0002\u0002\u2d49\u2d4d\u0007\u07eb\u0002",
+ "\u0002\u2d4a\u2d4d\u0007\u080d\u0002\u0002\u2d4b\u2d4d\u0007\u084f\u0002",
+ "\u0002\u2d4c\u2d2c\u0003\u0002\u0002\u0002\u2d4c\u2d30\u0003\u0002\u0002",
+ "\u0002\u2d4c\u2d31\u0003\u0002\u0002\u0002\u2d4c\u2d32\u0003\u0002\u0002",
+ "\u0002\u2d4c\u2d33\u0003\u0002\u0002\u0002\u2d4c\u2d34\u0003\u0002\u0002",
+ "\u0002\u2d4c\u2d36\u0003\u0002\u0002\u0002\u2d4c\u2d37\u0003\u0002\u0002",
+ "\u0002\u2d4c\u2d39\u0003\u0002\u0002\u0002\u2d4c\u2d3a\u0003\u0002\u0002",
+ "\u0002\u2d4c\u2d3c\u0003\u0002\u0002\u0002\u2d4c\u2d3e\u0003\u0002\u0002",
+ "\u0002\u2d4c\u2d41\u0003\u0002\u0002\u0002\u2d4c\u2d43\u0003\u0002\u0002",
+ "\u0002\u2d4c\u2d44\u0003\u0002\u0002\u0002\u2d4c\u2d45\u0003\u0002\u0002",
+ "\u0002\u2d4c\u2d46\u0003\u0002\u0002\u0002\u2d4c\u2d48\u0003\u0002\u0002",
+ "\u0002\u2d4c\u2d49\u0003\u0002\u0002\u0002\u2d4c\u2d4a\u0003\u0002\u0002",
+ "\u0002\u2d4c\u2d4b\u0003\u0002\u0002\u0002\u2d4d\u05c5\u0003\u0002\u0002",
+ "\u0002\u2d4e\u2d4f\u0007%\u0002\u0002\u2d4f\u2e95\u0007\u0522\u0002",
+ "\u0002\u2d50\u2e95\u0007\u001e\u0002\u0002\u2d51\u2d53\u0007\u001a\u0002",
+ "\u0002\u2d52\u2d54\u00072\u0002\u0002\u2d53\u2d52\u0003\u0002\u0002",
+ "\u0002\u2d53\u2d54\u0003\u0002\u0002\u0002\u2d54\u2d55\u0003\u0002\u0002",
+ "\u0002\u2d55\u2d56\u0007\u0617\u0002\u0002\u2d56\u2d57\u0007\u07c2\u0002",
+ "\u0002\u2d57\u2e95\u0007\u05e8\u0002\u0002\u2d58\u2d59\t\u0094\u0002",
+ "\u0002\u2d59\u2d5a\u00072\u0002\u0002\u2d5a\u2d5b\u0007\u0617\u0002",
+ "\u0002\u2d5b\u2e95\u0007\u0526\u0002\u0002\u2d5c\u2d5d\u0007\u001a\u0002",
+ "\u0002\u2d5d\u2d5e\u0007\u0617\u0002\u0002\u2d5e\u2d5f\u0007\u0320\u0002",
+ "\u0002\u2d5f\u2e95\u0007\u0455\u0002\u0002\u2d60\u2d62\u0007\u0122\u0002",
+ "\u0002\u2d61\u2d63\u00072\u0002\u0002\u2d62\u2d61\u0003\u0002\u0002",
+ "\u0002\u2d62\u2d63\u0003\u0002\u0002\u0002\u2d63\u2d64\u0003\u0002\u0002",
+ "\u0002\u2d64\u2e95\u0007\u00c7\u0002\u0002\u2d65\u2d66\t\u0095\u0002",
+ "\u0002\u2d66\u2d67\u00072\u0002\u0002\u2d67\u2e95\u0007\u00c7\u0002",
+ "\u0002\u2d68\u2d69\t\u0096\u0002\u0002\u2d69\u2d6a\u00072\u0002\u0002",
+ "\u2d6a\u2e95\u0007\u010b\u0002\u0002\u2d6b\u2d6c\u0007\u01de\u0002\u0002",
+ "\u2d6c\u2d6d\u0007\u0558\u0002\u0002\u2d6d\u2e95\u0007\u04f5\u0002\u0002",
+ "\u2d6e\u2d6f\u0007)\u0002\u0002\u2d6f\u2e95\u0007\u013e\u0002\u0002",
+ "\u2d70\u2d72\t\u0097\u0002\u0002\u2d71\u2d73\u0007\u052e\u0002\u0002",
+ "\u2d72\u2d71\u0003\u0002\u0002\u0002\u2d72\u2d73\u0003\u0002\u0002\u0002",
+ "\u2d73\u2d74\u0003\u0002\u0002\u0002\u2d74\u2d75\u0007\u013e\u0002\u0002",
+ "\u2d75\u2e95\u0007\u02fa\u0002\u0002\u2d76\u2d77\u0007\u019d\u0002\u0002",
+ "\u2d77\u2d78\u0007\u052e\u0002\u0002\u2d78\u2d79\u0007\u013e\u0002\u0002",
+ "\u2d79\u2e95\u0007\u02fa\u0002\u0002\u2d7a\u2d7b\u0007\u0156\u0002\u0002",
+ "\u2d7b\u2d7c\u0007\u00fd\u0002\u0002\u2d7c\u2e95\u0007\u05e4\u0002\u0002",
+ "\u2d7d\u2d7e\u0007\u0156\u0002\u0002\u2d7e\u2d7f\u00072\u0002\u0002",
+ "\u2d7f\u2e95\u0007\u0524\u0002\u0002\u2d80\u2d81\u0007+\u0002\u0002",
+ "\u2d81\u2d82\u00072\u0002\u0002\u2d82\u2e95\u0007\u017a\u0002\u0002",
+ "\u2d83\u2d85\u0007\u0122\u0002\u0002\u2d84\u2d86\u00072\u0002\u0002",
+ "\u2d85\u2d84\u0003\u0002\u0002\u0002\u2d85\u2d86\u0003\u0002\u0002\u0002",
+ "\u2d86\u2d87\u0003\u0002\u0002\u0002\u2d87\u2e95\u0007\u017b\u0002\u0002",
+ "\u2d88\u2d89\t\u0095\u0002\u0002\u2d89\u2d8a\u00072\u0002\u0002\u2d8a",
+ "\u2e95\u0007\u017b\u0002\u0002\u2d8b\u2d8c\t\u0096\u0002\u0002\u2d8c",
+ "\u2d8d\u00072\u0002\u0002\u2d8d\u2e95\u0007\u017e\u0002\u0002\u2d8e",
+ "\u2d8f\t\u0096\u0002\u0002\u2d8f\u2d90\u00072\u0002\u0002\u2d90\u2e95",
+ "\u0007\u01aa\u0002\u0002\u2d91\u2d96\u0007\u0216\u0002\u0002\u2d92\u2d93",
+ "\u0007;\u0002\u0002\u2d93\u2d97\u0007\u001a\u0002\u0002\u2d94\u2d95",
+ "\u00072\u0002\u0002\u2d95\u2d97\u0007\u077a\u0002\u0002\u2d96\u2d92",
+ "\u0003\u0002\u0002\u0002\u2d96\u2d94\u0003\u0002\u0002\u0002\u2d97\u2e95",
+ "\u0003\u0002\u0002\u0002\u2d98\u2d99\t\u0094\u0002\u0002\u2d99\u2d9a",
+ "\u00072\u0002\u0002\u2d9a\u2e95\u0007\u0279\u0002\u0002\u2d9b\u2d9d",
+ "\u0007\u0122\u0002\u0002\u2d9c\u2d9e\u00072\u0002\u0002\u2d9d\u2d9c",
+ "\u0003\u0002\u0002\u0002\u2d9d\u2d9e\u0003\u0002\u0002\u0002\u2d9e\u2d9f",
+ "\u0003\u0002\u0002\u0002\u2d9f\u2e95\u0007\u0287\u0002\u0002\u2da0\u2da1",
+ "\t\u0098\u0002\u0002\u2da1\u2da2\u00072\u0002\u0002\u2da2\u2e95\u0007",
+ "\u0287\u0002\u0002\u2da3\u2da5\u0007\u0122\u0002\u0002\u2da4\u2da6\t",
+ "\u0099\u0002\u0002\u2da5\u2da4\u0003\u0002\u0002\u0002\u2da5\u2da6\u0003",
+ "\u0002\u0002\u0002\u2da6\u2da7\u0003\u0002\u0002\u0002\u2da7\u2e95\u0007",
+ "\u02bf\u0002\u0002\u2da8\u2da9\u0007\u01dd\u0002\u0002\u2da9\u2daa\u0007",
+ "2\u0002\u0002\u2daa\u2e95\t\u009a\u0002\u0002\u2dab\u2dac\u0007\u031f",
+ "\u0002\u0002\u2dac\u2e95\u0007\u05be\u0002\u0002\u2dad\u2dae\u0007\u001a",
+ "\u0002\u0002\u2dae\u2daf\u0007\u02d4\u0002\u0002\u2daf\u2e95\u0007\u0320",
+ "\u0002\u0002\u2db0\u2db2\u0007\u0122\u0002\u0002\u2db1\u2db3\u00072",
+ "\u0002\u0002\u2db2\u2db1\u0003\u0002\u0002\u0002\u2db2\u2db3\u0003\u0002",
+ "\u0002\u0002\u2db3\u2db4\u0003\u0002\u0002\u0002\u2db4\u2e95\u0007\u02ef",
+ "\u0002\u0002\u2db5\u2db6\t\u0098\u0002\u0002\u2db6\u2db7\u00072\u0002",
+ "\u0002\u2db7\u2e95\u0007\u02ef\u0002\u0002\u2db8\u2e95\u0007\u0312\u0002",
+ "\u0002\u2db9\u2dbb\u0007\u0122\u0002\u0002\u2dba\u2dbc\u00072\u0002",
+ "\u0002\u2dbb\u2dba\u0003\u0002\u0002\u0002\u2dbb\u2dbc\u0003\u0002\u0002",
+ "\u0002\u2dbc\u2dbd\u0003\u0002\u0002\u0002\u2dbd\u2dbe\u0007\u032b\u0002",
+ "\u0002\u2dbe\u2e95\u0007\u0835\u0002\u0002\u2dbf\u2dc0\t\u0095\u0002",
+ "\u0002\u2dc0\u2dc1\u00072\u0002\u0002\u2dc1\u2dc2\u0007\u032b\u0002",
+ "\u0002\u2dc2\u2e95\u0007\u0835\u0002\u0002\u2dc3\u2dc5\u0007\u0238\u0002",
+ "\u0002\u2dc4\u2dc3\u0003\u0002\u0002\u0002\u2dc4\u2dc5\u0003\u0002\u0002",
+ "\u0002\u2dc5\u2dc6\u0003\u0002\u0002\u0002\u2dc6\u2dc7\u0007\u0538\u0002",
+ "\u0002\u2dc7\u2e95\u0007\u059e\u0002\u0002\u2dc8\u2dc9\u0007\u046a\u0002",
+ "\u0002\u2dc9\u2dca\u0007\u00dc\u0002\u0002\u2dca\u2e95\u0007\u0563\u0002",
+ "\u0002\u2dcb\u2dcd\u0007\u0122\u0002\u0002\u2dcc\u2dce\u00072\u0002",
+ "\u0002\u2dcd\u2dcc\u0003\u0002\u0002\u0002\u2dcd\u2dce\u0003\u0002\u0002",
+ "\u0002\u2dce\u2dcf\u0003\u0002\u0002\u0002\u2dcf\u2dd0\u0007\u034b\u0002",
+ "\u0002\u2dd0\u2e95\u0007\u0358\u0002\u0002\u2dd1\u2dd2\t\u009b\u0002",
+ "\u0002\u2dd2\u2dd3\u00072\u0002\u0002\u2dd3\u2dd4\u0007\u034b\u0002",
+ "\u0002\u2dd4\u2e95\u0007\u0358\u0002\u0002\u2dd5\u2dd7\u0007\u0122\u0002",
+ "\u0002\u2dd6\u2dd8\u00072\u0002\u0002\u2dd7\u2dd6\u0003\u0002\u0002",
+ "\u0002\u2dd7\u2dd8\u0003\u0002\u0002\u0002\u2dd8\u2dd9\u0003\u0002\u0002",
+ "\u0002\u2dd9\u2e95\u0007\u012c\u0002\u0002\u2dda\u2ddb\t\u009c\u0002",
+ "\u0002\u2ddb\u2ddc\u00072\u0002\u0002\u2ddc\u2e95\u0007\u012c\u0002",
+ "\u0002\u2ddd\u2ddf\u0007\u0122\u0002\u0002\u2dde\u2de0\u00072\u0002",
+ "\u0002\u2ddf\u2dde\u0003\u0002\u0002\u0002\u2ddf\u2de0\u0003\u0002\u0002",
+ "\u0002\u2de0\u2de1\u0003\u0002\u0002\u0002\u2de1\u2de2\u0007\u0339\u0002",
+ "\u0002\u2de2\u2e95\u0007\u021c\u0002\u0002\u2de3\u2de4\t\u009d\u0002",
+ "\u0002\u2de4\u2de5\u00072\u0002\u0002\u2de5\u2de6\u0007\u0339\u0002",
+ "\u0002\u2de6\u2e95\u0007\u021c\u0002\u0002\u2de7\u2de9\u0007\u0122\u0002",
+ "\u0002\u2de8\u2dea\u00072\u0002\u0002\u2de9\u2de8\u0003\u0002\u0002",
+ "\u0002\u2de9\u2dea\u0003\u0002\u0002\u0002\u2dea\u2deb\u0003\u0002\u0002",
+ "\u0002\u2deb\u2dec\u0007\u012c\u0002\u0002\u2dec\u2e95\u0007\u017b\u0002",
+ "\u0002\u2ded\u2dee\t\u009e\u0002\u0002\u2dee\u2def\u00072\u0002\u0002",
+ "\u2def\u2df0\u0007\u012c\u0002\u0002\u2df0\u2e95\u0007\u017b\u0002\u0002",
+ "\u2df1\u2df3\u0007\u0122\u0002\u0002\u2df2\u2df4\u00072\u0002\u0002",
+ "\u2df3\u2df2\u0003\u0002\u0002\u0002\u2df3\u2df4\u0003\u0002\u0002\u0002",
+ "\u2df4\u2df5\u0003\u0002\u0002\u0002\u2df5\u2df6\u0007\u012c\u0002\u0002",
+ "\u2df6\u2df7\u0007\u0092\u0002\u0002\u2df7\u2e95\u0007\u0525\u0002\u0002",
+ "\u2df8\u2df9\t\u009f\u0002\u0002\u2df9\u2dfa\u00072\u0002\u0002\u2dfa",
+ "\u2dfb\u0007\u012c\u0002\u0002\u2dfb\u2dfc\u0007\u0092\u0002\u0002\u2dfc",
+ "\u2e95\u0007\u0525\u0002\u0002\u2dfd\u2dff\u0007\u0122\u0002\u0002\u2dfe",
+ "\u2e00\u00072\u0002\u0002\u2dff\u2dfe\u0003\u0002\u0002\u0002\u2dff",
+ "\u2e00\u0003\u0002\u0002\u0002\u2e00\u2e01\u0003\u0002\u0002\u0002\u2e01",
+ "\u2e95\u0007\u0471\u0002\u0002\u2e02\u2e03\t\u0098\u0002\u0002\u2e03",
+ "\u2e04\u00072\u0002\u0002\u2e04\u2e95\u0007\u0471\u0002\u0002\u2e05",
+ "\u2e06\t\u0094\u0002\u0002\u2e06\u2e07\u00072\u0002\u0002\u2e07\u2e95",
+ "\u0007\u049e\u0002\u0002\u2e08\u2e09\u0007\u0122\u0002\u0002\u2e09\u2e0a",
+ "\u0007\u04f3\u0002\u0002\u2e0a\u2e95\u0007\u013e\u0002\u0002\u2e0b\u2e0c",
+ "\u0007\u05e8\u0002\u0002\u2e0c\u2e95\u0007\u0106\u0002\u0002\u2e0d\u2e0f",
+ "\u0007\u0122\u0002\u0002\u2e0e\u2e10\u00072\u0002\u0002\u2e0f\u2e0e",
+ "\u0003\u0002\u0002\u0002\u2e0f\u2e10\u0003\u0002\u0002\u0002\u2e10\u2e11",
+ "\u0003\u0002\u0002\u0002\u2e11\u2e95\u0007\u0524\u0002\u0002\u2e12\u2e13",
+ "\t\u0098\u0002\u0002\u2e13\u2e14\u00072\u0002\u0002\u2e14\u2e95\u0007",
+ "\u0524\u0002\u0002\u2e15\u2e16\t\u0094\u0002\u0002\u2e16\u2e95\u0007",
+ "\u0526\u0002\u0002\u2e17\u2e18\u0007\u0122\u0002\u0002\u2e18\u2e95\u0007",
+ "\u05a0\u0002\u0002\u2e19\u2e1a\t\u00a0\u0002\u0002\u2e1a\u2e1b\u0007",
+ "2\u0002\u0002\u2e1b\u2e95\u0007\u05a0\u0002\u0002\u2e1c\u2e1d\t\u0094",
+ "\u0002\u0002\u2e1d\u2e1e\u0007\u05a3\u0002\u0002\u2e1e\u2e95\u0007\u05d2",
+ "\u0002\u0002\u2e1f\u2e21\u0007\u0122\u0002\u0002\u2e20\u2e22\u00072",
+ "\u0002\u0002\u2e21\u2e20\u0003\u0002\u0002\u0002\u2e21\u2e22\u0003\u0002",
+ "\u0002\u0002\u2e22\u2e23\u0003\u0002\u0002\u0002\u2e23\u2e95\u0007\u05da",
+ "\u0002\u0002\u2e24\u2e25\t\u00a1\u0002\u0002\u2e25\u2e26\u00072\u0002",
+ "\u0002\u2e26\u2e95\u0007\u05da\u0002\u0002\u2e27\u2e28\t\u00a2\u0002",
+ "\u0002\u2e28\u2e95\u0007\u05e4\u0002\u0002\u2e29\u2e2a\u0007)\u0002",
+ "\u0002\u2e2a\u2e2b\u0007\u0589\u0002\u0002\u2e2b\u2e95\u0007\u0119\u0002",
+ "\u0002\u2e2c\u2e2e\u0007\u0122\u0002\u0002\u2e2d\u2e2f\u00072\u0002",
+ "\u0002\u2e2e\u2e2d\u0003\u0002\u0002\u0002\u2e2e\u2e2f\u0003\u0002\u0002",
+ "\u0002\u2e2f\u2e30\u0003\u0002\u0002\u0002\u2e30\u2e31\u0007\u0617\u0002",
+ "\u0002\u2e31\u2e32\u0007\u07b9\u0002\u0002\u2e32\u2e95\u0007\u0526\u0002",
+ "\u0002\u2e33\u2e34\t\u00a3\u0002\u0002\u2e34\u2e35\u00072\u0002\u0002",
+ "\u2e35\u2e36\u0007\u0617\u0002\u0002\u2e36\u2e37\u0007\u07b9\u0002\u0002",
+ "\u2e37\u2e95\u0007\u0526\u0002\u0002\u2e38\u2e39\u0007\u07b8\u0002\u0002",
+ "\u2e39\u2e3a\u00072\u0002\u0002\u2e3a\u2e95\u0007\u0617\u0002\u0002",
+ "\u2e3b\u2e3d\u0007\u0122\u0002\u0002\u2e3c\u2e3e\u00072\u0002\u0002",
+ "\u2e3d\u2e3c\u0003\u0002\u0002\u0002\u2e3d\u2e3e\u0003\u0002\u0002\u0002",
+ "\u2e3e\u2e3f\u0003\u0002\u0002\u0002\u2e3f\u2e95\u0007\u065d\u0002\u0002",
+ "\u2e40\u2e41\u0007\u019d\u0002\u0002\u2e41\u2e42\u00072\u0002\u0002",
+ "\u2e42\u2e95\u0007\u065d\u0002\u0002\u2e43\u2e44\t\u0096\u0002\u0002",
+ "\u2e44\u2e45\u0007\u052e\u0002\u0002\u2e45\u2e95\u0007\u065d\u0002\u0002",
+ "\u2e46\u2e48\u0007\u0122\u0002\u0002\u2e47\u2e49\u00072\u0002\u0002",
+ "\u2e48\u2e47\u0003\u0002\u0002\u0002\u2e48\u2e49\u0003\u0002\u0002\u0002",
+ "\u2e49\u2e4a\u0003\u0002\u0002\u0002\u2e4a\u2e95\u0007\u077a\u0002\u0002",
+ "\u2e4b\u2e4c\t\u00a4\u0002\u0002\u2e4c\u2e4d\u00072\u0002\u0002\u2e4d",
+ "\u2e95\u0007\u077a\u0002\u0002\u2e4e\u2e4f\t\u00a5\u0002\u0002\u2e4f",
+ "\u2e95\u0007\u0777\u0002\u0002\u2e50\u2e52\u0007\u0122\u0002\u0002\u2e51",
+ "\u2e53\u00072\u0002\u0002\u2e52\u2e51\u0003\u0002\u0002\u0002\u2e52",
+ "\u2e53\u0003\u0002\u0002\u0002\u2e53\u2e54\u0003\u0002\u0002\u0002\u2e54",
+ "\u2e95\u0007\u07bc\u0002\u0002\u2e55\u2e56\t\u0095\u0002\u0002\u2e56",
+ "\u2e57\u00072\u0002\u0002\u2e57\u2e95\u0007\u07bc\u0002\u0002\u2e58",
+ "\u2e59\u0007\u001a\u0002\u0002\u2e59\u2e5a\u0007\u013e\u0002\u0002\u2e5a",
+ "\u2e95\u0007\u07bc\u0002\u0002\u2e5b\u2e5d\u0007\u0122\u0002\u0002\u2e5c",
+ "\u2e5e\u00072\u0002\u0002\u2e5d\u2e5c\u0003\u0002\u0002\u0002\u2e5d",
+ "\u2e5e\u0003\u0002\u0002\u0002\u2e5e\u2e5f\u0003\u0002\u0002\u0002\u2e5f",
+ "\u2e95\u0007\u07c5\u0002\u0002\u2e60\u2e61\t\u00a6\u0002\u0002\u2e61",
+ "\u2e62\u00072\u0002\u0002\u2e62\u2e95\u0007\u07c5\u0002\u0002\u2e63",
+ "\u2e64\t\u0094\u0002\u0002\u2e64\u2e95\u0007\u0809\u0002\u0002\u2e65",
+ "\u2e67\u0007\u0122\u0002\u0002\u2e66\u2e68\u00072\u0002\u0002\u2e67",
+ "\u2e66\u0003\u0002\u0002\u0002\u2e67\u2e68\u0003\u0002\u0002\u0002\u2e68",
+ "\u2e69\u0003\u0002\u0002\u0002\u2e69\u2e95\u0007\u0835\u0002\u0002\u2e6a",
+ "\u2e6b\t\u00a7\u0002\u0002\u2e6b\u2e6c\u00072\u0002\u0002\u2e6c\u2e95",
+ "\u0007\u0835\u0002\u0002\u2e6d\u2e6e\t\u00a8\u0002\u0002\u2e6e\u2e95",
+ "\u00072\u0002\u0002\u2e6f\u2e70\u0007f\u0002\u0002\u2e70\u2e95\u0007",
+ "\u0809\u0002\u0002\u2e71\u2e72\u0007\u00ae\u0002\u0002\u2e72\u2e95\u0007",
+ "\u0432\u0002\u0002\u2e73\u2e74\u0007\u01de\u0002\u0002\u2e74\u2e75\u0007",
+ "\u0005\u0002\u0002\u2e75\u2e95\u0007\u04f5\u0002\u0002\u2e76\u2e78\u0007",
+ "\u0220\u0002\u0002\u2e77\u2e79\u00072\u0002\u0002\u2e78\u2e77\u0003",
+ "\u0002\u0002\u0002\u2e78\u2e79\u0003\u0002\u0002\u0002\u2e79\u2e7a\u0003",
+ "\u0002\u0002\u0002\u2e7a\u2e95\u0007\u07b4\u0002\u0002\u2e7b\u2e7c\u0007",
+ "\u023d\u0002\u0002\u2e7c\u2e7e\u00072\u0002\u0002\u2e7d\u2e7f\u0007",
+ "\u0455\u0002\u0002\u2e7e\u2e7d\u0003\u0002\u0002\u0002\u2e7e\u2e7f\u0003",
+ "\u0002\u0002\u0002\u2e7f\u2e80\u0003\u0002\u0002\u0002\u2e80\u2e95\u0007",
+ "\u0521\u0002\u0002\u2e81\u2e82\u0007\u028d\u0002\u0002\u2e82\u2e83\u0007",
+ "2\u0002\u0002\u2e83\u2e95\u0007\u0522\u0002\u0002\u2e84\u2e85\u0007",
+ "\u02d2\u0002\u0002\u2e85\u2e86\u0007\u0149\u0002\u0002\u2e86\u2e95\u0007",
+ "\u0793\u0002\u0002\u2e87\u2e88\u0007\u02d2\u0002\u0002\u2e88\u2e95\u0007",
+ "\u0680\u0002\u0002\u2e89\u2e8a\u0007\u0530\u0002\u0002\u2e8a\u2e95\u0007",
+ "\u014e\u0002\u0002\u2e8b\u2e95\u0007\u0594\u0002\u0002\u2e8c\u2e8d\u0007",
+ "\u05d4\u0002\u0002\u2e8d\u2e8e\u00072\u0002\u0002\u2e8e\u2e95\t\u00a9",
+ "\u0002\u0002\u2e8f\u2e95\u0007\u0661\u0002\u0002\u2e90\u2e95\u0007\u0667",
+ "\u0002\u0002\u2e91\u2e95\u0007\u0669\u0002\u0002\u2e92\u2e95\u0007\u0681",
+ "\u0002\u0002\u2e93\u2e95\u0007\u06a4\u0002\u0002\u2e94\u2d4e\u0003\u0002",
+ "\u0002\u0002\u2e94\u2d50\u0003\u0002\u0002\u0002\u2e94\u2d51\u0003\u0002",
+ "\u0002\u0002\u2e94\u2d58\u0003\u0002\u0002\u0002\u2e94\u2d5c\u0003\u0002",
+ "\u0002\u0002\u2e94\u2d60\u0003\u0002\u0002\u0002\u2e94\u2d65\u0003\u0002",
+ "\u0002\u0002\u2e94\u2d68\u0003\u0002\u0002\u0002\u2e94\u2d6b\u0003\u0002",
+ "\u0002\u0002\u2e94\u2d6e\u0003\u0002\u0002\u0002\u2e94\u2d70\u0003\u0002",
+ "\u0002\u0002\u2e94\u2d76\u0003\u0002\u0002\u0002\u2e94\u2d7a\u0003\u0002",
+ "\u0002\u0002\u2e94\u2d7d\u0003\u0002\u0002\u0002\u2e94\u2d80\u0003\u0002",
+ "\u0002\u0002\u2e94\u2d83\u0003\u0002\u0002\u0002\u2e94\u2d88\u0003\u0002",
+ "\u0002\u0002\u2e94\u2d8b\u0003\u0002\u0002\u0002\u2e94\u2d8e\u0003\u0002",
+ "\u0002\u0002\u2e94\u2d91\u0003\u0002\u0002\u0002\u2e94\u2d98\u0003\u0002",
+ "\u0002\u0002\u2e94\u2d9b\u0003\u0002\u0002\u0002\u2e94\u2da0\u0003\u0002",
+ "\u0002\u0002\u2e94\u2da3\u0003\u0002\u0002\u0002\u2e94\u2da8\u0003\u0002",
+ "\u0002\u0002\u2e94\u2dab\u0003\u0002\u0002\u0002\u2e94\u2dad\u0003\u0002",
+ "\u0002\u0002\u2e94\u2db0\u0003\u0002\u0002\u0002\u2e94\u2db5\u0003\u0002",
+ "\u0002\u0002\u2e94\u2db8\u0003\u0002\u0002\u0002\u2e94\u2db9\u0003\u0002",
+ "\u0002\u0002\u2e94\u2dbf\u0003\u0002\u0002\u0002\u2e94\u2dc4\u0003\u0002",
+ "\u0002\u0002\u2e94\u2dc8\u0003\u0002\u0002\u0002\u2e94\u2dcb\u0003\u0002",
+ "\u0002\u0002\u2e94\u2dd1\u0003\u0002\u0002\u0002\u2e94\u2dd5\u0003\u0002",
+ "\u0002\u0002\u2e94\u2dda\u0003\u0002\u0002\u0002\u2e94\u2ddd\u0003\u0002",
+ "\u0002\u0002\u2e94\u2de3\u0003\u0002\u0002\u0002\u2e94\u2de7\u0003\u0002",
+ "\u0002\u0002\u2e94\u2ded\u0003\u0002\u0002\u0002\u2e94\u2df1\u0003\u0002",
+ "\u0002\u0002\u2e94\u2df8\u0003\u0002\u0002\u0002\u2e94\u2dfd\u0003\u0002",
+ "\u0002\u0002\u2e94\u2e02\u0003\u0002\u0002\u0002\u2e94\u2e05\u0003\u0002",
+ "\u0002\u0002\u2e94\u2e08\u0003\u0002\u0002\u0002\u2e94\u2e0b\u0003\u0002",
+ "\u0002\u0002\u2e94\u2e0d\u0003\u0002\u0002\u0002\u2e94\u2e12\u0003\u0002",
+ "\u0002\u0002\u2e94\u2e15\u0003\u0002\u0002\u0002\u2e94\u2e17\u0003\u0002",
+ "\u0002\u0002\u2e94\u2e19\u0003\u0002\u0002\u0002\u2e94\u2e1c\u0003\u0002",
+ "\u0002\u0002\u2e94\u2e1f\u0003\u0002\u0002\u0002\u2e94\u2e24\u0003\u0002",
+ "\u0002\u0002\u2e94\u2e27\u0003\u0002\u0002\u0002\u2e94\u2e29\u0003\u0002",
+ "\u0002\u0002\u2e94\u2e2c\u0003\u0002\u0002\u0002\u2e94\u2e33\u0003\u0002",
+ "\u0002\u0002\u2e94\u2e38\u0003\u0002\u0002\u0002\u2e94\u2e3b\u0003\u0002",
+ "\u0002\u0002\u2e94\u2e40\u0003\u0002\u0002\u0002\u2e94\u2e43\u0003\u0002",
+ "\u0002\u0002\u2e94\u2e46\u0003\u0002\u0002\u0002\u2e94\u2e4b\u0003\u0002",
+ "\u0002\u0002\u2e94\u2e4e\u0003\u0002\u0002\u0002\u2e94\u2e50\u0003\u0002",
+ "\u0002\u0002\u2e94\u2e55\u0003\u0002\u0002\u0002\u2e94\u2e58\u0003\u0002",
+ "\u0002\u0002\u2e94\u2e5b\u0003\u0002\u0002\u0002\u2e94\u2e60\u0003\u0002",
+ "\u0002\u0002\u2e94\u2e63\u0003\u0002\u0002\u0002\u2e94\u2e65\u0003\u0002",
+ "\u0002\u0002\u2e94\u2e6a\u0003\u0002\u0002\u0002\u2e94\u2e6d\u0003\u0002",
+ "\u0002\u0002\u2e94\u2e6f\u0003\u0002\u0002\u0002\u2e94\u2e71\u0003\u0002",
+ "\u0002\u0002\u2e94\u2e73\u0003\u0002\u0002\u0002\u2e94\u2e76\u0003\u0002",
+ "\u0002\u0002\u2e94\u2e7b\u0003\u0002\u0002\u0002\u2e94\u2e81\u0003\u0002",
+ "\u0002\u0002\u2e94\u2e84\u0003\u0002\u0002\u0002\u2e94\u2e87\u0003\u0002",
+ "\u0002\u0002\u2e94\u2e89\u0003\u0002\u0002\u0002\u2e94\u2e8b\u0003\u0002",
+ "\u0002\u0002\u2e94\u2e8c\u0003\u0002\u0002\u0002\u2e94\u2e8f\u0003\u0002",
+ "\u0002\u0002\u2e94\u2e90\u0003\u0002\u0002\u0002\u2e94\u2e91\u0003\u0002",
+ "\u0002\u0002\u2e94\u2e92\u0003\u0002\u0002\u0002\u2e94\u2e93\u0003\u0002",
+ "\u0002\u0002\u2e95\u05c7\u0003\u0002\u0002\u0002\u2e96\u2e99\u0007\u078f",
+ "\u0002\u0002\u2e97\u2e9a\u0005\u05ce\u02e8\u0002\u2e98\u2e9a\u0005\u05bc",
+ "\u02df\u0002\u2e99\u2e97\u0003\u0002\u0002\u0002\u2e99\u2e98\u0003\u0002",
+ "\u0002\u0002\u2e9a\u2e9f\u0003\u0002\u0002\u0002\u2e9b\u2e9c\u0007L",
+ "\u0002\u0002\u2e9c\u2e9d\u0007\u0793\u0002\u0002\u2e9d\u2e9e\u0007\u087f",
+ "\u0002\u0002\u2e9e\u2ea0\u0005\u05ce\u02e8\u0002\u2e9f\u2e9b\u0003\u0002",
+ "\u0002\u0002\u2e9f\u2ea0\u0003\u0002\u0002\u0002\u2ea0\u2ed5\u0003\u0002",
+ "\u0002\u0002\u2ea1\u2ea5\u0007\u02b3\u0002\u0002\u2ea2\u2ea6\u0005\u05ce",
+ "\u02e8\u0002\u2ea3\u2ea6\u0005\u05bc\u02df\u0002\u2ea4\u2ea6\u0005\u05c0",
+ "\u02e1\u0002\u2ea5\u2ea2\u0003\u0002\u0002\u0002\u2ea5\u2ea3\u0003\u0002",
+ "\u0002\u0002\u2ea5\u2ea4\u0003\u0002\u0002\u0002\u2ea6\u2ea7\u0003\u0002",
+ "\u0002\u0002\u2ea7\u2eb5\t\u00aa\u0002\u0002\u2ea8\u2eab\u0007\u08b1",
+ "\u0002\u0002\u2ea9\u2eac\u0007\u08ab\u0002\u0002\u2eaa\u2eac\u0005\u05bc",
+ "\u02df\u0002\u2eab\u2ea9\u0003\u0002\u0002\u0002\u2eab\u2eaa\u0003\u0002",
+ "\u0002\u0002\u2eac\u2eb2\u0003\u0002\u0002\u0002\u2ead\u2eb0\u0007\u08b7",
+ "\u0002\u0002\u2eae\u2eb1\u0007\u08ab\u0002\u0002\u2eaf\u2eb1\u0005\u05bc",
+ "\u02df\u0002\u2eb0\u2eae\u0003\u0002\u0002\u0002\u2eb0\u2eaf\u0003\u0002",
+ "\u0002\u0002\u2eb1\u2eb3\u0003\u0002\u0002\u0002\u2eb2\u2ead\u0003\u0002",
+ "\u0002\u0002\u2eb2\u2eb3\u0003\u0002\u0002\u0002\u2eb3\u2eb4\u0003\u0002",
+ "\u0002\u0002\u2eb4\u2eb6\u0007\u08b2\u0002\u0002\u2eb5\u2ea8\u0003\u0002",
+ "\u0002\u0002\u2eb5\u2eb6\u0003\u0002\u0002\u0002\u2eb6\u2ec6\u0003\u0002",
+ "\u0002\u0002\u2eb7\u2ec4\u0007\u07ae\u0002\u0002\u2eb8\u2ec5\u0007\u014b",
+ "\u0002\u0002\u2eb9\u2ec5\u0007\u0258\u0002\u0002\u2eba\u2ec5\u0007\u034e",
+ "\u0002\u0002\u2ebb\u2ec2\u0007\u05ca\u0002\u0002\u2ebc\u2ebf\u0007\u08b1",
+ "\u0002\u0002\u2ebd\u2ec0\u0007\u08ab\u0002\u0002\u2ebe\u2ec0\u0005\u05bc",
+ "\u02df\u0002\u2ebf\u2ebd\u0003\u0002\u0002\u0002\u2ebf\u2ebe\u0003\u0002",
+ "\u0002\u0002\u2ec0\u2ec1\u0003\u0002\u0002\u0002\u2ec1\u2ec3\u0007\u08b2",
+ "\u0002\u0002\u2ec2\u2ebc\u0003\u0002\u0002\u0002\u2ec2\u2ec3\u0003\u0002",
+ "\u0002\u0002\u2ec3\u2ec5\u0003\u0002\u0002\u0002\u2ec4\u2eb8\u0003\u0002",
+ "\u0002\u0002\u2ec4\u2eb9\u0003\u0002\u0002\u0002\u2ec4\u2eba\u0003\u0002",
+ "\u0002\u0002\u2ec4\u2ebb\u0003\u0002\u0002\u0002\u2ec5\u2ec7\u0003\u0002",
+ "\u0002\u0002\u2ec6\u2eb7\u0003\u0002\u0002\u0002\u2ec6\u2ec7\u0003\u0002",
+ "\u0002\u0002\u2ec7\u2ed5\u0003\u0002\u0002\u0002\u2ec8\u2ed5\u0005\u05ca",
+ "\u02e6\u0002\u2ec9\u2eca\u0007\u0149\u0002\u0002\u2eca\u2ed5\u0005\u05ce",
+ "\u02e8\u0002\u2ecb\u2ed5\u0005\u05ce\u02e8\u0002\u2ecc\u2ed5\u0007\u044b",
+ "\u0002\u0002\u2ecd\u2ed5\u0007\u07bd\u0002\u0002\u2ece\u2ed5\u0007\u01fe",
+ "\u0002\u0002\u2ecf\u2ed5\u0007\u0151\u0002\u0002\u2ed0\u2ed5\u0007\u05e6",
+ "\u0002\u0002\u2ed1\u2ed5\u0007\u034f\u0002\u0002\u2ed2\u2ed5\u0007\u0338",
+ "\u0002\u0002\u2ed3\u2ed5\u0007\u0161\u0002\u0002\u2ed4\u2e96\u0003\u0002",
+ "\u0002\u0002\u2ed4\u2ea1\u0003\u0002\u0002\u0002\u2ed4\u2ec8\u0003\u0002",
+ "\u0002\u0002\u2ed4\u2ec9\u0003\u0002\u0002\u0002\u2ed4\u2ecb\u0003\u0002",
+ "\u0002\u0002\u2ed4\u2ecc\u0003\u0002\u0002\u0002\u2ed4\u2ecd\u0003\u0002",
+ "\u0002\u0002\u2ed4\u2ece\u0003\u0002\u0002\u0002\u2ed4\u2ecf\u0003\u0002",
+ "\u0002\u0002\u2ed4\u2ed0\u0003\u0002\u0002\u0002\u2ed4\u2ed1\u0003\u0002",
+ "\u0002\u0002\u2ed4\u2ed2\u0003\u0002\u0002\u0002\u2ed4\u2ed3\u0003\u0002",
+ "\u0002\u0002\u2ed5\u05c9\u0003\u0002\u0002\u0002\u2ed6\u2ed7\t\u00ab",
+ "\u0002\u0002\u2ed7\u05cb\u0003\u0002\u0002\u0002\u2ed8\u2ed9\u0007\u08b6",
+ "\u0002\u0002\u2ed9\u2eda\u0005\u05ca\u02e6\u0002\u2eda\u05cd\u0003\u0002",
+ "\u0002\u0002\u2edb\u2edc\t\u00ac\u0002\u0002\u2edc\u05cf\u0003\u0002",
+ "\u0002\u0002\u2edd\u2ede\u0007\u08c8\u0002\u0002\u2ede\u2ee0\u0005\u0598",
+ "\u02cd\u0002\u2edf\u2edd\u0003\u0002\u0002\u0002\u2edf\u2ee0\u0003\u0002",
+ "\u0002\u0002\u2ee0\u2ee1\u0003\u0002\u0002\u0002\u2ee1\u2ee2\u0005\u05d2",
+ "\u02ea\u0002\u2ee2\u05d1\u0003\u0002\u0002\u0002\u2ee3\u2ee6\u0005\u05d6",
+ "\u02ec\u0002\u2ee4\u2ee6\u0007\u08ae\u0002\u0002\u2ee5\u2ee3\u0003\u0002",
+ "\u0002\u0002\u2ee5\u2ee4\u0003\u0002\u0002\u0002\u2ee6\u05d3\u0003\u0002",
+ "\u0002\u0002\u2ee7\u2ee8\u0007\u08b1\u0002\u0002\u2ee8\u2ee9\u0007\u08b5",
+ "\u0002\u0002\u2ee9\u2eea\u0007\u08b2\u0002\u0002\u2eea\u05d5\u0003\u0002",
+ "\u0002\u0002\u2eeb\u2f37\u0005\u05da\u02ee\u0002\u2eec\u2f37\u0005\u05d8",
+ "\u02ed\u0002\u2eed\u2f37\u0007\u08ce\u0002\u0002\u2eee\u2f37\u0007#",
+ "\u0002\u0002\u2eef\u2f37\u0007!\u0002\u0002\u2ef0\u2f37\u0007\"\u0002",
+ "\u0002\u2ef1\u2f37\u0007+\u0002\u0002\u2ef2\u2f37\u0007Z\u0002\u0002",
+ "\u2ef3\u2f37\u0007c\u0002\u0002\u2ef4\u2f37\u0007x\u0002\u0002\u2ef5",
+ "\u2f37\u0007\u0088\u0002\u0002\u2ef6\u2f37\u0007\u00c0\u0002\u0002\u2ef7",
+ "\u2f37\u0007\u00b2\u0002\u0002\u2ef8\u2f37\u0007\u00c7\u0002\u0002\u2ef9",
+ "\u2f37\u0007\u0105\u0002\u0002\u2efa\u2f37\u0007\u013a\u0002\u0002\u2efb",
+ "\u2f37\u0007\u0159\u0002\u0002\u2efc\u2f37\u0007\u016c\u0002\u0002\u2efd",
+ "\u2f37\u0007\u0179\u0002\u0002\u2efe\u2f37\u0007\u019f\u0002\u0002\u2eff",
+ "\u2f37\u0007\u01c8\u0002\u0002\u2f00\u2f37\u0007\u01d6\u0002\u0002\u2f01",
+ "\u2f37\u0007\u01d7\u0002\u0002\u2f02\u2f37\u0007\u01d8\u0002\u0002\u2f03",
+ "\u2f37\u0007\u01e0\u0002\u0002\u2f04\u2f37\u0007\u01e2\u0002\u0002\u2f05",
+ "\u2f37\u0007\u0218\u0002\u0002\u2f06\u2f37\u0007\u021f\u0002\u0002\u2f07",
+ "\u2f37\u0007\u028a\u0002\u0002\u2f08\u2f37\u0007\u029a\u0002\u0002\u2f09",
+ "\u2f37\u0007\u02ac\u0002\u0002\u2f0a\u2f37\u0007\u02db\u0002\u0002\u2f0b",
+ "\u2f37\u0007\u0316\u0002\u0002\u2f0c\u2f37\u0007\u0317\u0002\u0002\u2f0d",
+ "\u2f37\u0007\u044d\u0002\u0002\u2f0e\u2f37\u0007\u047d\u0002\u0002\u2f0f",
+ "\u2f37\u0007\u0498\u0002\u0002\u2f10\u2f37\u0007\u04a0\u0002\u0002\u2f11",
+ "\u2f37\u0007\u04a5\u0002\u0002\u2f12\u2f37\u0007\u04ab\u0002\u0002\u2f13",
+ "\u2f37\u0007\u04e4\u0002\u0002\u2f14\u2f37\u0007\u04ed\u0002\u0002\u2f15",
+ "\u2f37\u0007\u04fc\u0002\u0002\u2f16\u2f37\u0007\u04fb\u0002\u0002\u2f17",
+ "\u2f37\u0007\u0509\u0002\u0002\u2f18\u2f37\u0007\u053f\u0002\u0002\u2f19",
+ "\u2f37\u0007\u0545\u0002\u0002\u2f1a\u2f37\u0007\u0551\u0002\u0002\u2f1b",
+ "\u2f37\u0007\u0562\u0002\u0002\u2f1c\u2f37\u0007\u057e\u0002\u0002\u2f1d",
+ "\u2f37\u0007\u0590\u0002\u0002\u2f1e\u2f37\u0007\u0593\u0002\u0002\u2f1f",
+ "\u2f37\u0007\u05d5\u0002\u0002\u2f20\u2f37\u0007\u05de\u0002\u0002\u2f21",
+ "\u2f37\u0007\u05e8\u0002\u0002\u2f22\u2f37\u0007\u05fa\u0002\u0002\u2f23",
+ "\u2f37\u0007\u05fb\u0002\u0002\u2f24\u2f37\u0007\u0607\u0002\u0002\u2f25",
+ "\u2f37\u0007\u0614\u0002\u0002\u2f26\u2f37\u0007\u0615\u0002\u0002\u2f27",
+ "\u2f37\u0007\u0652\u0002\u0002\u2f28\u2f37\u0007\u078e\u0002\u0002\u2f29",
+ "\u2f37\u0007\u0790\u0002\u0002\u2f2a\u2f37\u0007\u0791\u0002\u0002\u2f2b",
+ "\u2f37\u0007\u07bc\u0002\u0002\u2f2c\u2f37\u0007\u081e\u0002\u0002\u2f2d",
+ "\u2f37\u0007\u081d\u0002\u0002\u2f2e\u2f37\u0007\u081f\u0002\u0002\u2f2f",
+ "\u2f37\u0007\u083e\u0002\u0002\u2f30\u2f37\u0007\u0845\u0002\u0002\u2f31",
+ "\u2f37\u0007\u0855\u0002\u0002\u2f32\u2f37\u0007\u087d\u0002\u0002\u2f33",
+ "\u2f37\u0007\u0899\u0002\u0002\u2f34\u2f37\u0007\u08a1\u0002\u0002\u2f35",
+ "\u2f37\u0007\u088f\u0002\u0002\u2f36\u2eeb\u0003\u0002\u0002\u0002\u2f36",
+ "\u2eec\u0003\u0002\u0002\u0002\u2f36\u2eed\u0003\u0002\u0002\u0002\u2f36",
+ "\u2eee\u0003\u0002\u0002\u0002\u2f36\u2eef\u0003\u0002\u0002\u0002\u2f36",
+ "\u2ef0\u0003\u0002\u0002\u0002\u2f36\u2ef1\u0003\u0002\u0002\u0002\u2f36",
+ "\u2ef2\u0003\u0002\u0002\u0002\u2f36\u2ef3\u0003\u0002\u0002\u0002\u2f36",
+ "\u2ef4\u0003\u0002\u0002\u0002\u2f36\u2ef5\u0003\u0002\u0002\u0002\u2f36",
+ "\u2ef6\u0003\u0002\u0002\u0002\u2f36\u2ef7\u0003\u0002\u0002\u0002\u2f36",
+ "\u2ef8\u0003\u0002\u0002\u0002\u2f36\u2ef9\u0003\u0002\u0002\u0002\u2f36",
+ "\u2efa\u0003\u0002\u0002\u0002\u2f36\u2efb\u0003\u0002\u0002\u0002\u2f36",
+ "\u2efc\u0003\u0002\u0002\u0002\u2f36\u2efd\u0003\u0002\u0002\u0002\u2f36",
+ "\u2efe\u0003\u0002\u0002\u0002\u2f36\u2eff\u0003\u0002\u0002\u0002\u2f36",
+ "\u2f00\u0003\u0002\u0002\u0002\u2f36\u2f01\u0003\u0002\u0002\u0002\u2f36",
+ "\u2f02\u0003\u0002\u0002\u0002\u2f36\u2f03\u0003\u0002\u0002\u0002\u2f36",
+ "\u2f04\u0003\u0002\u0002\u0002\u2f36\u2f05\u0003\u0002\u0002\u0002\u2f36",
+ "\u2f06\u0003\u0002\u0002\u0002\u2f36\u2f07\u0003\u0002\u0002\u0002\u2f36",
+ "\u2f08\u0003\u0002\u0002\u0002\u2f36\u2f09\u0003\u0002\u0002\u0002\u2f36",
+ "\u2f0a\u0003\u0002\u0002\u0002\u2f36\u2f0b\u0003\u0002\u0002\u0002\u2f36",
+ "\u2f0c\u0003\u0002\u0002\u0002\u2f36\u2f0d\u0003\u0002\u0002\u0002\u2f36",
+ "\u2f0e\u0003\u0002\u0002\u0002\u2f36\u2f0f\u0003\u0002\u0002\u0002\u2f36",
+ "\u2f10\u0003\u0002\u0002\u0002\u2f36\u2f11\u0003\u0002\u0002\u0002\u2f36",
+ "\u2f12\u0003\u0002\u0002\u0002\u2f36\u2f13\u0003\u0002\u0002\u0002\u2f36",
+ "\u2f14\u0003\u0002\u0002\u0002\u2f36\u2f15\u0003\u0002\u0002\u0002\u2f36",
+ "\u2f16\u0003\u0002\u0002\u0002\u2f36\u2f17\u0003\u0002\u0002\u0002\u2f36",
+ "\u2f18\u0003\u0002\u0002\u0002\u2f36\u2f19\u0003\u0002\u0002\u0002\u2f36",
+ "\u2f1a\u0003\u0002\u0002\u0002\u2f36\u2f1b\u0003\u0002\u0002\u0002\u2f36",
+ "\u2f1c\u0003\u0002\u0002\u0002\u2f36\u2f1d\u0003\u0002\u0002\u0002\u2f36",
+ "\u2f1e\u0003\u0002\u0002\u0002\u2f36\u2f1f\u0003\u0002\u0002\u0002\u2f36",
+ "\u2f20\u0003\u0002\u0002\u0002\u2f36\u2f21\u0003\u0002\u0002\u0002\u2f36",
+ "\u2f22\u0003\u0002\u0002\u0002\u2f36\u2f23\u0003\u0002\u0002\u0002\u2f36",
+ "\u2f24\u0003\u0002\u0002\u0002\u2f36\u2f25\u0003\u0002\u0002\u0002\u2f36",
+ "\u2f26\u0003\u0002\u0002\u0002\u2f36\u2f27\u0003\u0002\u0002\u0002\u2f36",
+ "\u2f28\u0003\u0002\u0002\u0002\u2f36\u2f29\u0003\u0002\u0002\u0002\u2f36",
+ "\u2f2a\u0003\u0002\u0002\u0002\u2f36\u2f2b\u0003\u0002\u0002\u0002\u2f36",
+ "\u2f2c\u0003\u0002\u0002\u0002\u2f36\u2f2d\u0003\u0002\u0002\u0002\u2f36",
+ "\u2f2e\u0003\u0002\u0002\u0002\u2f36\u2f2f\u0003\u0002\u0002\u0002\u2f36",
+ "\u2f30\u0003\u0002\u0002\u0002\u2f36\u2f31\u0003\u0002\u0002\u0002\u2f36",
+ "\u2f32\u0003\u0002\u0002\u0002\u2f36\u2f33\u0003\u0002\u0002\u0002\u2f36",
+ "\u2f34\u0003\u0002\u0002\u0002\u2f36\u2f35\u0003\u0002\u0002\u0002\u2f37",
+ "\u05d7\u0003\u0002\u0002\u0002\u2f38\u2f39\t\u00ad\u0002\u0002\u2f39",
+ "\u05d9\u0003\u0002\u0002\u0002\u2f3a\u2f3b\t\u00ae\u0002\u0002\u2f3b",
+ "\u05db\u0003\u0002\u0002\u0002\u2f3c\u2f3d\t\u00af\u0002\u0002\u2f3d",
+ "\u05dd\u0003\u0002\u0002\u0002\u2f3e\u2f3f\t\u00b0\u0002\u0002\u2f3f",
+ "\u05df\u0003\u0002\u0002\u0002\u066c\u05e5\u05e8\u05ec\u0629\u0635\u063a",
+ "\u063f\u0646\u0650\u0655\u065d\u065f\u0663\u0667\u066a\u066e\u0673\u0679",
+ "\u0682\u0685\u068b\u0694\u06a1\u06a6\u06b0\u06b3\u06b8\u06bd\u06c4\u06ca",
+ "\u06ce\u06d4\u06d9\u06e0\u06e7\u06ee\u06f3\u06f7\u0703\u070d\u0712\u071e",
+ "\u0723\u0728\u072b\u072e\u073b\u0747\u074c\u0751\u075d\u0762\u076a\u076c",
+ "\u0770\u0773\u0777\u077a\u077e\u0783\u078f\u0794\u0798\u079b\u07a0\u07a7",
+ "\u07b1\u07b6\u07b9\u07bd\u07c0\u07c5\u07d7\u07dc\u07e1\u07e3\u07ea\u07f1",
+ "\u07f4\u07f7\u07fa\u0805\u0811\u0815\u0818\u0821\u0829\u0831\u0834\u083b",
+ "\u083f\u0844\u0849\u0872\u088e\u0895\u089a\u08a1\u08ac\u08b4\u08b8\u08c5",
+ "\u08c8\u08ce\u08d1\u08d6\u08db\u08df\u08e9\u08f3\u08f9\u0904\u0909\u090d",
+ "\u0915\u091d\u0922\u0925\u0927\u092a\u0933\u0938\u093f\u0942\u0945\u0949",
+ "\u094c\u0954\u0959\u095e\u0965\u096f\u097f\u0986\u0990\u099a\u09a1\u09a4",
+ "\u09a9\u09b3\u09b8\u09bf\u09c2\u09c7\u09ca\u09cd\u09de\u09e3\u09ec\u09ef",
+ "\u09f4\u09f7\u09fe\u0a01\u0a08\u0a0d\u0a11\u0a16\u0a1b\u0a29\u0a2e\u0a35",
+ "\u0a38\u0a3c\u0a3f\u0a42\u0a45\u0a4f\u0a55\u0a5f\u0a64\u0a6b\u0a71\u0a75",
+ "\u0a78\u0a7b\u0a8c\u0a91\u0a99\u0aa7\u0aae\u0abe\u0ad4\u0adb\u0add\u0ae1",
+ "\u0aec\u0aee\u0b03\u0b0b\u0b13\u0b16\u0b1d\u0b22\u0b28\u0b2d\u0b32\u0b36",
+ "\u0b3b\u0b41\u0b45\u0b4a\u0b4e\u0b52\u0b5f\u0b64\u0b67\u0b6b\u0b70\u0b72",
+ "\u0b78\u0b7a\u0b7e\u0b81\u0b88\u0b93\u0b9d\u0ba1\u0ba6\u0baa\u0bae\u0bb1",
+ "\u0bbc\u0bc1\u0bcd\u0bdc\u0be2\u0be4\u0be8\u0bf3\u0bf8\u0bff\u0c07\u0c12",
+ "\u0c19\u0c1d\u0c1f\u0c23\u0c2d\u0c38\u0c3d\u0c41\u0c45\u0c48\u0c4b\u0c55",
+ "\u0c5a\u0c62\u0c69\u0c6d\u0c6f\u0c74\u0c7e\u0c89\u0c8e\u0c92\u0c96\u0c99",
+ "\u0c9c\u0ca3\u0cac\u0cb6\u0cb8\u0ccf\u0cdc\u0cea\u0cec\u0cf7\u0cff\u0d05",
+ "\u0d08\u0d0d\u0d11\u0d14\u0d17\u0d1c\u0d24\u0d30\u0d37\u0d3e\u0d51\u0d5c",
+ "\u0d5f\u0d65\u0d67\u0d6e\u0d71\u0d73\u0d7b\u0d8f\u0d91\u0da3\u0da5\u0dae",
+ "\u0db4\u0db9\u0dc3\u0dcc\u0dd9\u0de3\u0de8\u0deb\u0df1\u0e03\u0e06\u0e09",
+ "\u0e11\u0e1e\u0e20\u0e24\u0e2c\u0e2e\u0e30\u0e32\u0e3a\u0e45\u0e50\u0e52",
+ "\u0e59\u0e5c\u0e61\u0e68\u0e6c\u0e6f\u0e7f\u0e84\u0e92\u0e97\u0e99\u0ea2",
+ "\u0eaa\u0ead\u0eb0\u0eb3\u0eb6\u0eb8\u0ebe\u0ec9\u0ecc\u0edb\u0ee6\u0eef",
+ "\u0ef8\u0f01\u0f0a\u0f0d\u0f13\u0f18\u0f1a\u0f21\u0f4b\u0f4e\u0f52\u0f55",
+ "\u0f60\u0f69\u0f6c\u0f6e\u0f7a\u0f7f\u0f83\u0f87\u0f8a\u0f8d\u0f9d\u0f9f",
+ "\u0fa5\u0fa7\u0fab\u0fb1\u0fb7\u0fbb\u0fbe\u0fc6\u0fd0\u0fd4\u0fe7\u0fec",
+ "\u0ff3\u0ffa\u1044\u1053\u1059\u105b\u105f\u1063\u1068\u106d\u1071\u1077",
+ "\u107c\u1081\u1084\u108f\u10a0\u10a5\u10aa\u10ad\u10c0\u10da\u10df\u10e5",
+ "\u10e7\u10f1\u10f4\u10f7\u10fa\u10fd\u1102\u1107\u110b\u110f\u1115\u1119",
+ "\u111d\u112d\u1131\u1135\u1139\u113e\u1142\u1148\u114d\u1150\u1158\u115b",
+ "\u1164\u1168\u116a\u117d\u1183\u1188\u118d\u118f\u1193\u119c\u11a9\u11b4",
+ "\u11b7\u11ba\u11c3\u11c5\u11cc\u11cf\u11db\u11ea\u11f1\u11f7\u11fb\u1201",
+ "\u1205\u120e\u1217\u121c\u1220\u1224\u122a\u1231\u1237\u1240\u1245\u124c",
+ "\u125d\u125f\u126e\u1270\u127b\u127e\u1281\u1287\u128a\u128d\u1294\u129a",
+ "\u129f\u12a3\u12a6\u12a9\u12af\u12b4\u12b7\u12bb\u12bf\u12c2\u12c9\u12cc",
+ "\u12ce\u12d3\u12db\u12dd\u12eb\u12f3\u12fc\u12ff\u1304\u1307\u1310\u1326",
+ "\u132c\u1331\u1333\u133d\u1346\u1352\u1355\u1358\u1364\u136d\u1375\u137a",
+ "\u1382\u1387\u138a\u139f\u13a1\u13a3\u13a6\u13aa\u13b4\u13b8\u13bd\u13c2",
+ "\u13c6\u13c8\u13cb\u13cf\u13d9\u13e1\u13e9\u13ec\u13ef\u13f2\u13f5\u13f7",
+ "\u13fe\u1400\u1404\u140a\u140d\u1411\u1416\u1425\u142b\u1430\u1435\u143a",
+ "\u143f\u1441\u1443\u1448\u1450\u1457\u1464\u146a\u146e\u147a\u1481\u1483",
+ "\u1485\u1489\u148c\u148f\u1496\u149d\u14a1\u14ab\u14af\u14b2\u14b5\u14bb",
+ "\u14be\u14c1\u14c4\u14c7\u14ca\u14cd\u14d4\u14d7\u14da\u14df\u14e1\u14e4",
+ "\u14e7\u14fa\u1501\u1505\u1508\u150f\u1514\u151b\u1521\u1523\u1529\u152d",
+ "\u1534\u1539\u153e\u1546\u154b\u1551\u1554\u1557\u155a\u155d\u1560\u1563",
+ "\u156a\u156d\u1570\u1575\u1577\u157a\u157d\u1581\u1587\u1589\u1594\u1598",
+ "\u159c\u15a3\u15a7\u15ac\u15af\u15bc\u15c1\u15c7\u15ca\u15cd\u15d0\u15d3",
+ "\u15da\u15dd\u15e0\u15e5\u15e7\u15ea\u15ed\u15f4\u15fe\u1609\u1619\u161e",
+ "\u1620\u1625\u162c\u1633\u1641\u1648\u164f\u165d\u1663\u1668\u166b\u1670",
+ "\u1673\u1677\u1686\u168b\u168f\u169a\u169f\u16ac\u16bc\u16c1\u16c3\u16c8",
+ "\u16d0\u16de\u16e6\u16f3\u16f9\u16fd\u170b\u1710\u1714\u1722\u1725\u1729",
+ "\u1733\u173b\u1743\u1746\u174b\u174d\u1751\u175b\u1763\u176b\u176e\u1773",
+ "\u1775\u177f\u1787\u178f\u1792\u1797\u17a4\u17a9\u17b2\u17bd\u17cb\u17d0",
+ "\u17d3\u17d9\u17dd\u17e1\u17e5\u17e9\u17ec\u17f8\u17fd\u1808\u1814\u1818",
+ "\u181d\u1820\u1824\u1828\u182a\u182f\u1836\u1840\u1845\u1847\u1850\u1858",
+ "\u185f\u1864\u1868\u186d\u1872\u1875\u1878\u187b\u187d\u1881\u1884\u1888",
+ "\u1890\u1892\u1894\u1897\u18a0\u18a2\u18b8\u18bf\u18c1\u18cd\u18cf\u18d2",
+ "\u18d6\u18d9\u18e4\u18ed\u18f4\u18f8\u1901\u1909\u190d\u1910\u1918\u191e",
+ "\u1922\u1927\u192c\u1934\u1938\u1946\u1948\u194b\u1951\u1956\u1959\u195c",
+ "\u1962\u196d\u1976\u1988\u1991\u1996\u199b\u19a1\u19a8\u19ad\u19af\u19c1",
+ "\u19c3\u19c6\u19d1\u19dc\u19e3\u19e8\u19eb\u19ee\u19f3\u19fe\u1a04\u1a08",
+ "\u1a0e\u1a15\u1a17\u1a19\u1a1d\u1a20\u1a23\u1a2d\u1a32\u1a34\u1a36\u1a3e",
+ "\u1a47\u1a49\u1a4d\u1a57\u1a60\u1a62\u1a65\u1a6a\u1a78\u1a81\u1a83\u1a87",
+ "\u1a8f\u1a91\u1a9c\u1aa5\u1aab\u1ab0\u1ab4\u1ab9\u1abe\u1ac3\u1ac7\u1ace",
+ "\u1ad5\u1ada\u1adf\u1ae3\u1aee\u1af2\u1af5\u1af8\u1b03\u1b0b\u1b13\u1b18",
+ "\u1b1e\u1b22\u1b2a\u1b2f\u1b34\u1b38\u1b41\u1b44\u1b47\u1b4b\u1b52\u1b5a",
+ "\u1b63\u1b66\u1b75\u1b86\u1b8c\u1b90\u1b97\u1b9e\u1ba1\u1ba3\u1ba9\u1bab",
+ "\u1bae\u1bb7\u1bba\u1bbe\u1bc4\u1bd0\u1bda\u1bde\u1be1\u1be4\u1be9\u1bed",
+ "\u1bf1\u1bf4\u1bfb\u1bfe\u1c05\u1c0b\u1c27\u1c31\u1c3b\u1c3d\u1c45\u1c65",
+ "\u1c6d\u1c6f\u1c71\u1c73\u1c82\u1c95\u1c97\u1c9a\u1ca0\u1ca6\u1cae\u1cb0",
+ "\u1cb2\u1cb7\u1cbc\u1cc1\u1cc5\u1cc9\u1ccd\u1cd6\u1cdf\u1ce2\u1ce5\u1ce8",
+ "\u1cec\u1cf6\u1cfd\u1d04\u1d06\u1d10\u1d13\u1d16\u1d19\u1d1d\u1d1f\u1d21",
+ "\u1d24\u1d2a\u1d2d\u1d32\u1d37\u1d3b\u1d3f\u1d45\u1d5e\u1d60\u1d6c\u1d71",
+ "\u1d76\u1d78\u1d84\u1d89\u1d8e\u1d90\u1d95\u1d9c\u1da0\u1da9\u1db0\u1db4",
+ "\u1db8\u1dbd\u1dc2\u1dc6\u1dcb\u1dd2\u1dd8\u1ddd\u1de1\u1de8\u1dea\u1ded",
+ "\u1df9\u1dfd\u1e02\u1e06\u1e0d\u1e17\u1e1a\u1e23\u1e2e\u1e30\u1e3d\u1e3f",
+ "\u1e41\u1e5c\u1e5f\u1e64\u1e66\u1e7c\u1e7f\u1e81\u1e83\u1e8a\u1e8c\u1e94",
+ "\u1e98\u1e9d\u1ea0\u1ea3\u1ea6\u1ead\u1eb2\u1eba\u1ebd\u1ec9\u1ed2\u1ed5",
+ "\u1ed9\u1ede\u1ee3\u1ee6\u1ee9\u1eec\u1eee\u1ef3\u1ef7\u1efb\u1efe\u1f01",
+ "\u1f06\u1f0f\u1f11\u1f1d\u1f20\u1f23\u1f2f\u1f31\u1f35\u1f39\u1f3c\u1f41",
+ "\u1f46\u1f4d\u1f53\u1f5b\u1f68\u1f6c\u1f73\u1f77\u1f85\u1f8a\u1f8e\u1f99",
+ "\u1f9b\u1fad\u1fb2\u1fb5\u1fb8\u1fbd\u1fbf\u1fc4\u1fca\u1fcf\u1fd5\u1fdc",
+ "\u1fef\u1ffa\u1fff\u2005\u2009\u2011\u2013\u201e\u2027\u202c\u2030\u2033",
+ "\u2041\u2049\u204d\u2050\u2058\u2064\u2068\u206d\u2070\u207d\u2081\u208d",
+ "\u2092\u2096\u209a\u20a0\u20a3\u20a6\u20c1\u20c7\u20cb\u20d6\u20dd\u20e1",
+ "\u20e4\u20ea\u20f3\u20fb\u20ff\u2103\u210b\u2114\u211a\u211c\u2135\u213a",
+ "\u213e\u2145\u2149\u214d\u2151\u215d\u2161\u216f\u2175\u217c\u2181\u218c",
+ "\u218f\u2195\u2197\u21a0\u21aa\u21af\u21be\u21c2\u21c5\u21c9\u21cd\u21db",
+ "\u21dd\u21e1\u21e9\u21f0\u21f5\u21f7\u21fc\u2201\u2209\u2210\u2214\u2217",
+ "\u2223\u2229\u2232\u2235\u223f\u224a\u224d\u2254\u2257\u225e\u2269\u226f",
+ "\u2273\u227d\u2280\u2286\u2291\u2293\u2295\u2298\u229c\u229f\u22a3\u22a7",
+ "\u22ac\u22b7\u22bb\u22c3\u22c6\u22cf\u22d1\u22da\u22df\u22e5\u22e9\u22ec",
+ "\u22f4\u22f7\u22fb\u22ff\u2304\u2307\u230b\u230f\u2313\u2326\u232e\u2332",
+ "\u2336\u233c\u2340\u2344\u2347\u234a\u234d\u2350\u2358\u235b\u2366\u2368",
+ "\u236f\u2376\u237b\u2381\u2385\u238a\u2391\u2397\u239e\u23a1\u23a4\u23a8",
+ "\u23ad\u23b1\u23b3\u23be\u23c5\u23c9\u23d3\u23d7\u23df\u23eb\u23f0\u23fa",
+ "\u2402\u2405\u240b\u2410\u2413\u2418\u241d\u242a\u2431\u243b\u2440\u2442",
+ "\u2447\u244b\u2451\u2455\u2462\u2466\u2470\u2473\u2475\u247a\u2483\u2490",
+ "\u2498\u249c\u24a5\u24a9\u24ae\u24b9\u24bb\u24cb\u24d0\u24d6\u24dc\u24ee",
+ "\u24f5\u24f8\u24fb\u2503\u2506\u250e\u2510\u2514\u2517\u251c\u251e\u2522",
+ "\u252e\u2537\u253f\u2544\u2548\u2552\u2554\u255a\u255f\u2562\u256c\u2572",
+ "\u2575\u2578\u2580\u258a\u2594\u2598\u259c\u259f\u25a2\u25a7\u25ac\u25af",
+ "\u25b2\u25b8\u25bb\u25c1\u25c4\u25c7\u25cc\u25cf\u25d7\u25dd\u25e2\u25e7",
+ "\u25ef\u25f9\u25fd\u25ff\u2602\u260e\u2612\u2615\u2624\u2629\u262d\u2634",
+ "\u2637\u2640\u2647\u264c\u2650\u2658\u265e\u2666\u2669\u2672\u2675\u2678",
+ "\u2681\u2687\u268d\u268f\u269a\u269c\u26a5\u26a7\u26ab\u26b1\u26b5\u26c3",
+ "\u26c8\u26d8\u26da\u26de\u26e3\u26e8\u26f4\u26f8\u26ff\u2704\u2709\u270c",
+ "\u2717\u271c\u2726\u2728\u272a\u2734\u2738\u273a\u2746\u274e\u275b\u275e",
+ "\u276a\u276c\u2774\u277c\u2783\u2787\u278e\u2792\u2797\u279b\u27a3\u27a7",
+ "\u27ae\u27b3\u27bc\u27c5\u27c8\u27dc\u27e0\u27e3\u27ea\u27ed\u27f1\u27f4",
+ "\u27fb\u27fe\u2804\u2807\u280b\u280e\u2815\u281a\u2828\u282f\u283a\u2843",
+ "\u284c\u2850\u2854\u286e\u2871\u2874\u287e\u2882\u2887\u288d\u2892\u2897",
+ "\u28a0\u28a3\u28a5\u28a9\u28b0\u28b7\u28bf\u28ce\u28d3\u28d8\u28de\u28e1",
+ "\u28e5\u28ef\u28fb\u28fd\u2904\u2908\u2911\u291a\u2928\u2930\u2933\u293c",
+ "\u2942\u294c\u2954\u2957\u295a\u2963\u2968\u2971\u2977\u297c\u297f\u2984",
+ "\u2989\u298d\u2993\u2999\u29a2\u29a7\u29af\u29b3\u29b8\u29be\u29c5\u29ca",
+ "\u29d1\u29d5\u29da\u29e2\u29e5\u29e8\u29eb\u29ef\u29f4\u29f7\u2a02\u2a06",
+ "\u2a08\u2a13\u2a1e\u2a27\u2a2a\u2a2e\u2a31\u2a40\u2a45\u2a4d\u2a54\u2a58",
+ "\u2a5d\u2a61\u2a66\u2a6a\u2a70\u2a73\u2a7a\u2a84\u2a8c\u2a90\u2a9a\u2a9d",
+ "\u2a9f\u2aa9\u2aab\u2ab1\u2ab7\u2ab9\u2ac7\u2ac9\u2ad3\u2adc\u2ae1\u2aea",
+ "\u2aee\u2af2\u2af7\u2afb\u2afe\u2b02\u2b09\u2b0d\u2b15\u2b1a\u2b2d\u2b32",
+ "\u2b39\u2b44\u2b4b\u2b52\u2b56\u2b5d\u2b62\u2b6b\u2b73\u2b7b\u2b81\u2b86",
+ "\u2b8b\u2b8f\u2b94\u2b97\u2b9c\u2ba0\u2ba4\u2ba9\u2bb2\u2bb8\u2bbd\u2bc1",
+ "\u2bc3\u2bca\u2bce\u2bd6\u2bd9\u2bde\u2be5\u2bf7\u2c08\u2c0f\u2c1d\u2c25",
+ "\u2c28\u2c2c\u2c31\u2c36\u2c3a\u2c3d\u2c41\u2c48\u2c4d\u2c4f\u2c51\u2c5b",
+ "\u2c60\u2c64\u2c67\u2c6b\u2c74\u2c7a\u2c7e\u2c80\u2c84\u2c88\u2c8f\u2c97",
+ "\u2c9f\u2ca1\u2ca6\u2caa\u2cad\u2cc5\u2ccc\u2ced\u2cf2\u2cf5\u2cfa\u2cfc",
+ "\u2d02\u2d0a\u2d0f\u2d16\u2d1b\u2d1e\u2d22\u2d29\u2d2e\u2d4c\u2d53\u2d62",
+ "\u2d72\u2d85\u2d96\u2d9d\u2da5\u2db2\u2dbb\u2dc4\u2dcd\u2dd7\u2ddf\u2de9",
+ "\u2df3\u2dff\u2e0f\u2e21\u2e2e\u2e3d\u2e48\u2e52\u2e5d\u2e67\u2e78\u2e7e",
+ "\u2e94\u2e99\u2e9f\u2ea5\u2eab\u2eb0\u2eb2\u2eb5\u2ebf\u2ec2\u2ec4\u2ec6",
+ "\u2ed4\u2edf\u2ee5\u2f36"].join("");
+
+
+var atn = new antlr4.atn.ATNDeserializer().deserialize(serializedATN);
+
+var decisionsToDFA = atn.decisionToState.map( function(ds, index) { return new antlr4.dfa.DFA(ds, index); });
+
+var sharedContextCache = new antlr4.PredictionContextCache();
+
+var literalNames = [ null, "'ABORT'", "'ABS'", "'ACCESS'", "'ACCESSED'",
+ "'ACCOUNT'", "'ACL'", "'ACOS'", "'ACTION'", "'ACTIONS'",
+ "'ACTIVATE'", "'ACTIVE'", "'ACTIVE_COMPONENT'", "'ACTIVE_DATA'",
+ "'ACTIVE_FUNCTION'", "'ACTIVE_TAG'", "'ACTIVITY'",
+ "'ADAPTIVE_PLAN'", "'ADD'", "'ADD_COLUMN'", "'ADD_GROUP'",
+ "'ADD_MONTHS'", "'ADJ_DATE'", "'ADMIN'", "'ADMINISTER'",
+ "'ADMINISTRATOR'", "'ADVANCED'", "'ADVISE'", "'ADVISOR'",
+ "'AFD_DISKSTRING'", "'AFTER'", "'AGENT'", "'AGGREGATE'",
+ "'A'", "'ALIAS'", "'ALL'", "'ALLOCATE'", "'ALLOW'",
+ "'ALL_ROWS'", "'ALTER'", "'ALWAYS'", "'ANALYZE'", "'ANCILLARY'",
+ "'AND'", "'AND_EQUAL'", "'ANOMALY'", "'ANSI_REARCH'",
+ "'ANTIJOIN'", "'ANY'", "'ANYSCHEMA'", "'APPEND'", "'APPENDCHILDXML'",
+ "'APPEND_VALUES'", "'APPLICATION'", "'APPLY'", "'APPROX_COUNT_DISTINCT'",
+ "'ARCHIVAL'", "'ARCHIVE'", "'ARCHIVED'", "'ARCHIVELOG'",
+ "'ARRAY'", "'AS'", "'ASC'", "'ASCII'", "'ASCIISTR'",
+ "'ASIN'", "'ASIS'", "'ASSEMBLY'", "'ASSIGN'", "'ASSOCIATE'",
+ "'ASYNC'", "'ASYNCHRONOUS'", "'ATAN2'", "'ATAN'", "'AT'",
+ "'ATTRIBUTE'", "'ATTRIBUTES'", "'AUDIT'", "'AUTHENTICATED'",
+ "'AUTHENTICATION'", "'AUTHID'", "'AUTHORIZATION'",
+ "'AUTOALLOCATE'", "'AUTO'", "'AUTOBACKUP'", "'AUTOEXTEND'",
+ "'AUTO_LOGIN'", "'AUTOMATIC'", "'AUTONOMOUS_TRANSACTION'",
+ "'AUTO_REOPTIMIZE'", "'AVAILABILITY'", "'AVRO'", "'BACKGROUND'",
+ "'BACKUP'", "'BACKUPSET'", "'BASIC'", "'BASICFILE'",
+ "'BATCH'", "'BATCHSIZE'", "'BATCH_TABLE_ACCESS_BY_ROWID'",
+ "'BECOME'", "'BEFORE'", "'BEGIN'", "'BEGINNING'", "'BEGIN_OUTLINE_DATA'",
+ "'BEHALF'", "'BEQUEATH'", "'BETWEEN'", "'BFILE'", "'BFILENAME'",
+ "'BIGFILE'", "'BINARY'", "'BINARY_DOUBLE'", "'BINARY_DOUBLE_INFINITY'",
+ "'BINARY_DOUBLE_NAN'", "'BINARY_FLOAT'", "'BINARY_FLOAT_INFINITY'",
+ "'BINARY_FLOAT_NAN'", "'BINARY_INTEGER'", "'BIND_AWARE'",
+ "'BINDING'", "'BIN_TO_NUM'", "'BITAND'", "'BITMAP_AND'",
+ "'BITMAP'", "'BITMAPS'", "'BITMAP_TREE'", "'BITS'",
+ "'BLOB'", "'BLOCK'", "'BLOCK_RANGE'", "'BLOCKS'", "'BLOCKSIZE'",
+ "'BODY'", "'BOOLEAN'", "'BOTH'", "'BOUND'", "'BRANCH'",
+ "'BREADTH'", "'BROADCAST'", "'BSON'", "'BUFFER'", "'BUFFER_CACHE'",
+ "'BUFFER_POOL'", "'BUILD'", "'BULK'", "'BY'", "'BYPASS_RECURSIVE_CHECK'",
+ "'BYPASS_UJVC'", "'BYTE'", "'CACHE'", "'CACHE_CB'",
+ "'CACHE_INSTANCES'", "'CACHE_TEMP_TABLE'", "'CACHING'",
+ "'CALCULATED'", "'CALLBACK'", "'CALL'", "'CANCEL'",
+ "'CANONICAL'", "'CAPACITY'", "'CARDINALITY'", "'CASCADE'",
+ "'CASE'", "'CAST'", "'CATEGORY'", "'CDB$DEFAULT'",
+ "'CEIL'", "'CELL_FLASH_CACHE'", "'CERTIFICATE'", "'CFILE'",
+ "'CHAINED'", "'CHANGE'", "'CHANGETRACKING'", "'CHANGE_DUPKEY_ERROR_INDEX'",
+ "'CHARACTER'", "'CHAR'", "'CHAR_CS'", "'CHARTOROWID'",
+ "'CHECK_ACL_REWRITE'", "'CHECK'", "'CHECKPOINT'", "'CHILD'",
+ "'CHOOSE'", "'CHR'", "'CHUNK'", "'CLASS'", "'CLASSIFIER'",
+ "'CLEANUP'", "'CLEAR'", "'C'", "'CLIENT'", "'CLOB'",
+ "'CLONE'", "'CLOSE_CACHED_OPEN_CURSORS'", "'CLOSE'",
+ "'CLUSTER_BY_ROWID'", "'CLUSTER'", "'CLUSTER_DETAILS'",
+ "'CLUSTER_DISTANCE'", "'CLUSTER_ID'", "'CLUSTERING'",
+ "'CLUSTERING_FACTOR'", "'CLUSTER_PROBABILITY'", "'CLUSTER_SET'",
+ "'COALESCE'", "'COALESCE_SQ'", "'COARSE'", "'CO_AUTH_IND'",
+ "'COLD'", "'COLLECT'", "'COLUMNAR'", "'COLUMN_AUTH_INDICATOR'",
+ "'COLUMN'", "'COLUMNS'", "'COLUMN_STATS'", "'COLUMN_VALUE'",
+ "'COMMENT'", "'COMMIT'", "'COMMITTED'", "'COMMON_DATA'",
+ "'COMPACT'", "'COMPATIBILITY'", "'COMPILE'", "'COMPLETE'",
+ "'COMPLIANCE'", "'COMPONENT'", "'COMPONENTS'", "'COMPOSE'",
+ "'COMPOSITE'", "'COMPOSITE_LIMIT'", "'COMPOUND'", "'COMPRESS'",
+ "'COMPUTE'", "'CONCAT'", "'CON_DBID_TO_ID'", "'CONDITIONAL'",
+ "'CONDITION'", "'CONFIRM'", "'CONFORMING'", "'CON_GUID_TO_ID'",
+ "'CON_ID'", "'CON_NAME_TO_ID'", "'CONNECT_BY_CB_WHR_ONLY'",
+ "'CONNECT_BY_COMBINE_SW'", "'CONNECT_BY_COST_BASED'",
+ "'CONNECT_BY_ELIM_DUPS'", "'CONNECT_BY_FILTERING'",
+ "'CONNECT_BY_ISCYCLE'", "'CONNECT_BY_ISLEAF'", "'CONNECT_BY_ROOT'",
+ "'CONNECT'", "'CONNECT_TIME'", "'CONSIDER'", "'CONSISTENT'",
+ "'CONSTANT'", "'CONST'", "'CONSTRAINT'", "'CONSTRAINTS'",
+ "'CONSTRUCTOR'", "'CONTAINER'", "'CONTAINER_DATA'",
+ "'CONTAINERS'", "'CONTENT'", "'CONTENTS'", "'CONTEXT'",
+ "'CONTINUE'", "'CONTROLFILE'", "'CON_UID_TO_ID'", "'CONVERT'",
+ "'COOKIE'", "'COPY'", "'CORR_K'", "'CORR_S'", "'CORRUPTION'",
+ "'CORRUPT_XID_ALL'", "'CORRUPT_XID'", "'COS'", "'COSH'",
+ "'COST'", "'COST_XML_QUERY_REWRITE'", "'COUNT'", "'COVAR_POP'",
+ "'COVAR_SAMP'", "'CPU_COSTING'", "'CPU_PER_CALL'",
+ "'CPU_PER_SESSION'", "'CRASH'", "'CREATE'", "'CREATE_FILE_DEST'",
+ "'CREATE_STORED_OUTLINES'", "'CREATION'", "'CREDENTIAL'",
+ "'CRITICAL'", "'CROSS'", "'CROSSEDITION'", "'CSCONVERT'",
+ "'CUBE_AJ'", "'CUBE'", "'CUBE_GB'", "'CUBE_SJ'", "'CUME_DISTM'",
+ "'CURRENT'", "'CURRENT_DATE'", "'CURRENT_SCHEMA'",
+ "'CURRENT_TIME'", "'CURRENT_TIMESTAMP'", "'CURRENT_USER'",
+ "'CURRENTV'", "'CURSOR'", "'CURSOR_SHARING_EXACT'",
+ "'CURSOR_SPECIFIC_SEGMENT'", "'CUSTOMDATUM'", "'CV'",
+ "'CYCLE'", "'DANGLING'", "'DATABASE'", "'DATA'", "'DATAFILE'",
+ "'DATAFILES'", "'DATAGUARDCONFIG'", "'DATAMOVEMENT'",
+ "'DATAOBJNO'", "'DATAOBJ_TO_MAT_PARTITION'", "'DATAOBJ_TO_PARTITION'",
+ "'DATAPUMP'", "'DATA_SECURITY_REWRITE_LIMIT'", "'DATE'",
+ "'DATE_MODE'", "'DAY'", "'DAYS'", "'DBA'", "'DBA_RECYCLEBIN'",
+ "'DBMS_STATS'", "'DB_ROLE_CHANGE'", "'DBTIMEZONE'",
+ "'DB_UNIQUE_NAME'", "'DB_VERSION'", "'DDL'", "'DEALLOCATE'",
+ "'DEBUG'", "'DEBUGGER'", "'DEC'", "'DECIMAL'", "'DECLARE'",
+ "'DECOMPOSE'", "'DECORRELATE'", "'DECR'", "'DECREMENT'",
+ "'DECRYPT'", "'DEDUPLICATE'", "'DEFAULT'", "'DEFAULTS'",
+ "'DEFERRABLE'", "'DEFERRED'", "'DEFINED'", "'DEFINE'",
+ "'DEFINER'", "'DEGREE'", "'DELAY'", "'DELEGATE'", "'DELETE_ALL'",
+ "'DELETE'", "'DELETEXML'", "'DEMAND'", "'DENSE_RANKM'",
+ "'DEPENDENT'", "'DEPTH'", "'DEQUEUE'", "'DEREF'", "'DEREF_NO_REWRITE'",
+ "'DESC'", "'DESTROY'", "'DETACHED'", "'DETERMINES'",
+ "'DETERMINISTIC'", "'DICTIONARY'", "'DIMENSION'", "'DIMENSIONS'",
+ "'DIRECT_LOAD'", "'DIRECTORY'", "'DIRECT_PATH'", "'DISABLE_ALL'",
+ "'DISABLE'", "'DISABLE_PARALLEL_DML'", "'DISABLE_PRESET'",
+ "'DISABLE_RPKE'", "'DISALLOW'", "'DISASSOCIATE'", "'DISCARD'",
+ "'DISCONNECT'", "'DISK'", "'DISKGROUP'", "''+ DISKGROUP'",
+ "'DISKS'", "'DISMOUNT'", "'DISTINCT'", "'DISTINGUISHED'",
+ "'DISTRIBUTED'", "'DISTRIBUTE'", "'DML'", "'DML_UPDATE'",
+ "'DOCFIDELITY'", "'DOCUMENT'", "'DOMAIN_INDEX_FILTER'",
+ "'DOMAIN_INDEX_NO_SORT'", "'DOMAIN_INDEX_SORT'", "'DOUBLE'",
+ "'DOWNGRADE'", "'DRIVING_SITE'", "'DROP_COLUMN'", "'DROP'",
+ "'DROP_GROUP'", "'DSINTERVAL_UNCONSTRAINED'", "'DST_UPGRADE_INSERT_CONV'",
+ "'DUMP'", "'DUMPSET'", "'DUPLICATE'", "'DV'", "'DYNAMIC'",
+ "'DYNAMIC_SAMPLING'", "'DYNAMIC_SAMPLING_EST_CDN'",
+ "'EACH'", "'EDITIONABLE'", "'EDITION'", "'EDITIONING'",
+ "'EDITIONS'", "'ELEMENT'", "'ELIM_GROUPBY'", "'ELIMINATE_JOIN'",
+ "'ELIMINATE_OBY'", "'ELIMINATE_OUTER_JOIN'", "'ELSE'",
+ "'ELSIF'", "'EM'", "'EMPTY_BLOB'", "'EMPTY_CLOB'",
+ "'EMPTY'", "'ENABLE_ALL'", "'ENABLE'", "'ENABLE_PARALLEL_DML'",
+ "'ENABLE_PRESET'", "'ENCODING'", "'ENCRYPT'", "'ENCRYPTION'",
+ "'END'", "'END_OUTLINE_DATA'", "'ENFORCED'", "'ENFORCE'",
+ "'ENQUEUE'", "'ENTERPRISE'", "'ENTITYESCAPING'", "'ENTRY'",
+ "'EQUIPART'", "'ERR'", "'ERROR_ARGUMENT'", "'ERROR'",
+ "'ERROR_ON_OVERLAP_TIME'", "'ERRORS'", "'ESCAPE'",
+ "'ESTIMATE'", "'EVAL'", "'EVALNAME'", "'EVALUATE'",
+ "'EVALUATION'", "'EVENTS'", "'EVERY'", "'EXCEPT'",
+ "'EXCEPTION'", "'EXCEPTION_INIT'", "'EXCEPTIONS'",
+ "'EXCHANGE'", "'EXCLUDE'", "'EXCLUDING'", "'EXCLUSIVE'",
+ "'EXECUTE'", "'EXEMPT'", "'EXISTING'", "'EXISTS'",
+ "'EXISTSNODE'", "'EXIT'", "'EXPAND_GSET_TO_UNION'",
+ "'EXPAND_TABLE'", "'EXP'", "'EXPIRE'", "'EXPLAIN'",
+ "'EXPLOSION'", "'EXPORT'", "'EXPR_CORR_CHECK'", "'EXPRESS'",
+ "'EXTENDS'", "'EXTENT'", "'EXTENTS'", "'EXTERNAL'",
+ "'EXTERNALLY'", "'EXTRACTCLOBXML'", "'EXTRACT'", "'EXTRACTVALUE'",
+ "'EXTRA'", "'FACILITY'", "'FACT'", "'FACTOR'", "'FACTORIZE_JOIN'",
+ "'FAILED'", "'FAILED_LOGIN_ATTEMPTS'", "'FAILGROUP'",
+ "'FAILOVER'", "'FAILURE'", "'FALSE'", "'FAMILY'", "'FAR'",
+ "'FAST'", "'FASTSTART'", "'FBTSCAN'", "'FEATURE_DETAILS'",
+ "'FEATURE_ID'", "'FEATURE_SET'", "'FEATURE_VALUE'",
+ "'FETCH'", "'FILE'", "'FILE_NAME_CONVERT'", "'FILESYSTEM_LIKE_LOGGING'",
+ "'FILTER'", "'FINAL'", "'FINE'", "'FINISH'", "'FIRST'",
+ "'FIRSTM'", "'FIRST_ROWS'", "'FIRST_VALUE'", "'FIXED_VIEW_DATA'",
+ "'FLAGGER'", "'FLASHBACK'", "'FLASH_CACHE'", "'FLOAT'",
+ "'FLOB'", "'FLOOR'", "'FLUSH'", "'FOLDER'", "'FOLLOWING'",
+ "'FOLLOWS'", "'FORALL'", "'FORCE'", "'FORCE_XML_QUERY_REWRITE'",
+ "'FOREIGN'", "'FOREVER'", "'FOR'", "'FORMAT'", "'FORWARD'",
+ "'FRAGMENT_NUMBER'", "'FREELIST'", "'FREELISTS'", "'FREEPOOLS'",
+ "'FRESH'", "'FROM'", "'FROM_TZ'", "'FULL'", "'FULL_OUTER_JOIN_TO_OUTER'",
+ "'FUNCTION'", "'FUNCTIONS'", "'GATHER_OPTIMIZER_STATISTICS'",
+ "'GATHER_PLAN_STATISTICS'", "'GBY_CONC_ROLLUP'", "'GBY_PUSHDOWN'",
+ "'GENERATED'", "'GET'", "'GLOBAL'", "'GLOBALLY'", "'GLOBAL_NAME'",
+ "'GLOBAL_TOPIC_ENABLED'", "'GOTO'", "'GRANT'", "'GROUP_BY'",
+ "'GROUP'", "'GROUP_ID'", "'GROUPING'", "'GROUPING_ID'",
+ "'GROUPS'", "'GUARANTEED'", "'GUARANTEE'", "'GUARD'",
+ "'HASH_AJ'", "'HASH'", "'HASHKEYS'", "'HASH_SJ'", "'HAVING'",
+ "'HEADER'", "'HEAP'", "'HELP'", "'HEXTORAW'", "'HEXTOREF'",
+ "'HIDDEN'", "'HIDE'", "'HIERARCHY'", "'HIGH'", "'HINTSET_BEGIN'",
+ "'HINTSET_END'", "'HOT'", "'HOUR'", "'HWM_BROKERED'",
+ "'HYBRID'", "'IDENTIFIED'", "'IDENTIFIER'", "'IDENTITY'",
+ "'IDGENERATORS'", "'ID'", "'IDLE_TIME'", "'IF'", "'IGNORE'",
+ "'IGNORE_OPTIM_EMBEDDED_HINTS'", "'IGNORE_ROW_ON_DUPKEY_INDEX'",
+ "'IGNORE_WHERE_CLAUSE'", "'ILM'", "'IMMEDIATE'", "'IMPACT'",
+ "'IMPORT'", "'INACTIVE'", "'INCLUDE'", "'INCLUDE_VERSION'",
+ "'INCLUDING'", "'INCREMENTAL'", "'INCREMENT'", "'INCR'",
+ "'INDENT'", "'INDEX_ASC'", "'INDEX_COMBINE'", "'INDEX_DESC'",
+ "'INDEXED'", "'INDEXES'", "'INDEX_FFS'", "'INDEX_FILTER'",
+ "'INDEX'", "'INDEXING'", "'INDEX_JOIN'", "'INDEX_ROWS'",
+ "'INDEX_RRS'", "'INDEX_RS_ASC'", "'INDEX_RS_DESC'",
+ "'INDEX_RS'", "'INDEX_SCAN'", "'INDEX_SKIP_SCAN'",
+ "'INDEX_SS_ASC'", "'INDEX_SS_DESC'", "'INDEX_SS'",
+ "'INDEX_STATS'", "'INDEXTYPE'", "'INDEXTYPES'", "'INDICATOR'",
+ "'INDICES'", "'INFINITE'", "'INFORMATIONAL'", "'INHERIT'",
+ "'IN'", "'INITCAP'", "'INITIAL'", "'INITIALIZED'",
+ "'INITIALLY'", "'INITRANS'", "'INLINE'", "'INLINE_XMLTYPE_NT'",
+ "'INMEMORY'", "'IN_MEMORY_METADATA'", "'INMEMORY_PRUNING'",
+ "'INNER'", "'INOUT'", "'INPLACE'", "'INSERTCHILDXMLAFTER'",
+ "'INSERTCHILDXMLBEFORE'", "'INSERTCHILDXML'", "'INSERT'",
+ "'INSERTXMLAFTER'", "'INSERTXMLBEFORE'", "'INSTANCE'",
+ "'INSTANCES'", "'INSTANTIABLE'", "'INSTANTLY'", "'INSTEAD'",
+ "'INSTR2'", "'INSTR4'", "'INSTRB'", "'INSTRC'", "'INSTR'",
+ "'INTEGER'", "'INTERLEAVED'", "'INTERMEDIATE'", "'INTERNAL_CONVERT'",
+ "'INTERNAL_USE'", "'INTERPRETED'", "'INTERSECT'", "'INTERVAL'",
+ "'INT'", "'INTO'", "'INVALIDATE'", "'INVISIBLE'", "'IN_XQUERY'",
+ "'IS'", "'ISOLATION'", "'ISOLATION_LEVEL'", "'ITERATE'",
+ "'ITERATION_NUMBER'", "'JAVA'", "'JOB'", "'JOIN'",
+ "'JSON_ARRAYAGG'", "'JSON_ARRAY'", "'JSON_EQUAL'",
+ "'JSON_EXISTS2'", "'JSON_EXISTS'", "'JSONGET'", "'JSON'",
+ "'JSON_OBJECTAGG'", "'JSON_OBJECT'", "'JSONPARSE'",
+ "'JSON_QUERY'", "'JSON_SERIALIZE'", "'JSON_TABLE'",
+ "'JSON_TEXTCONTAINS2'", "'JSON_TEXTCONTAINS'", "'JSON_VALUE'",
+ "'KEEP_DUPLICATES'", "'KEEP'", "'KERBEROS'", "'KEY'",
+ "'KEY_LENGTH'", "'KEYSIZE'", "'KEYS'", "'KEYSTORE'",
+ "'KILL'", "'LABEL'", "'LANGUAGE'", "'LAST_DAY'", "'LAST'",
+ "'LAST_VALUE'", "'LATERAL'", "'LAX'", "'LAYER'", "'LDAP_REGISTRATION_ENABLED'",
+ "'LDAP_REGISTRATION'", "'LDAP_REG_SYNC_INTERVAL'",
+ "'LEADING'", "'LEFT'", "'LENGTH2'", "'LENGTH4'", "'LENGTHB'",
+ "'LENGTHC'", "'LENGTH'", "'LESS'", "'LEVEL'", "'LEVELS'",
+ "'LIBRARY'", "'LIFECYCLE'", "'LIFE'", "'LIFETIME'",
+ "'LIKE2'", "'LIKE4'", "'LIKEC'", "'LIKE_EXPAND'", "'LIKE'",
+ "'LIMIT'", "'LINEAR'", "'LINK'", "'LIST'", "'LN'",
+ "'LNNVL'", "'LOAD'", "'LOB'", "'LOBNVL'", "'LOBS'",
+ "'LOCAL_INDEXES'", "'LOCAL'", "'LOCALTIME'", "'LOCALTIMESTAMP'",
+ "'LOCATION'", "'LOCATOR'", "'LOCKED'", "'LOCKING'",
+ "'LOCK'", "'LOGFILE'", "'LOGFILES'", "'LOGGING'", "'LOGICAL'",
+ "'LOGICAL_READS_PER_CALL'", "'LOGICAL_READS_PER_SESSION'",
+ "'LOG'", "'LOGMINING'", "'LOGOFF'", "'LOGON'", "'LOG_READ_ONLY_VIOLATIONS'",
+ "'LONG'", "'LOOP'", "'LOWER'", "'LOW'", "'LPAD'", "'LTRIM'",
+ "'MAIN'", "'MAKE_REF'", "'MANAGED'", "'MANAGE'", "'MANAGEMENT'",
+ "'MANAGER'", "'MANUAL'", "'MAP'", "'MAPPING'", "'MASTER'",
+ "'MATCHED'", "'MATCHES'", "'MATCH'", "'MATCH_NUMBER'",
+ "'MATCH_RECOGNIZE'", "'MATERIALIZED'", "'MATERIALIZE'",
+ "'MAXARCHLOGS'", "'MAXDATAFILES'", "'MAXEXTENTS'",
+ "'MAXIMIZE'", "'MAXINSTANCES'", "'MAXLOGFILES'", "'MAXLOGHISTORY'",
+ "'MAXLOGMEMBERS'", "'MAX_SHARED_TEMP_SIZE'", "'MAXSIZE'",
+ "'MAXTRANS'", "'MAXVALUE'", "'MEASURE'", "'MEASURES'",
+ "'MEDIUM'", "'MEMBER'", "'MEMCOMPRESS'", "'MEMORY'",
+ "'MERGE$ACTIONS'", "'MERGE_AJ'", "'MERGE_CONST_ON'",
+ "'MERGE'", "'MERGE_SJ'", "'METADATA'", "'METHOD'",
+ "'MIGRATE'", "'MIGRATION'", "'MINEXTENTS'", "'MINIMIZE'",
+ "'MINIMUM'", "'MINING'", "'MINUS'", "'MINUS_NULL'",
+ "'MINUTE'", "'MINVALUE'", "'MIRRORCOLD'", "'MIRRORHOT'",
+ "'MIRROR'", "'MLSLABEL'", "'MODEL_COMPILE_SUBQUERY'",
+ "'MODEL_DONTVERIFY_UNIQUENESS'", "'MODEL_DYNAMIC_SUBQUERY'",
+ "'MODEL_MIN_ANALYSIS'", "'MODEL'", "'MODEL_NB'", "'MODEL_NO_ANALYSIS'",
+ "'MODEL_PBY'", "'MODEL_PUSH_REF'", "'MODEL_SV'", "'MODE'",
+ "'MODIFICATION'", "'MODIFY_COLUMN_TYPE'", "'MODIFY'",
+ "'MOD'", "'MODULE'", "'MONITORING'", "'MONITOR'", "'MONTH'",
+ "'MONTHS_BETWEEN'", "'MONTHS'", "'MOUNT'", "'MOUNTPATH'",
+ "'MOVEMENT'", "'MOVE'", "'MULTIDIMENSIONAL'", "'MULTISET'",
+ "'MV_MERGE'", "'NAMED'", "'NAME'", "'NAMESPACE'", "'NAN'",
+ "'NANVL'", "'NATIONAL'", "'NATIVE_FULL_OUTER_JOIN'",
+ "'NATIVE'", "'NATURAL'", "'NATURALN'", "'NAV'", "'NCHAR_CS'",
+ "'NCHAR'", "'NCHR'", "'NCLOB'", "'NEEDED'", "'NEG'",
+ "'NESTED'", "'NESTED_TABLE_FAST_INSERT'", "'NESTED_TABLE_GET_REFS'",
+ "'NESTED_TABLE_ID'", "'NESTED_TABLE_SET_REFS'", "'NESTED_TABLE_SET_SETID'",
+ "'NETWORK'", "'NEVER'", "'NEW'", "'NEW_TIME'", "'NEXT_DAY'",
+ "'NEXT'", "'NL_AJ'", "'NLJ_BATCHING'", "'NLJ_INDEX_FILTER'",
+ "'NLJ_INDEX_SCAN'", "'NLJ_PREFETCH'", "'NLS_CALENDAR'",
+ "'NLS_CHARACTERSET'", "'NLS_CHARSET_DECL_LEN'", "'NLS_CHARSET_ID'",
+ "'NLS_CHARSET_NAME'", "'NLS_COMP'", "'NLS_CURRENCY'",
+ "'NLS_DATE_FORMAT'", "'NLS_DATE_LANGUAGE'", "'NLS_INITCAP'",
+ "'NLS_ISO_CURRENCY'", "'NL_SJ'", "'NLS_LANG'", "'NLS_LANGUAGE'",
+ "'NLS_LENGTH_SEMANTICS'", "'NLS_LOWER'", "'NLS_NCHAR_CONV_EXCP'",
+ "'NLS_NUMERIC_CHARACTERS'", "'NLS_SORT'", "'NLSSORT'",
+ "'NLS_SPECIAL_CHARS'", "'NLS_TERRITORY'", "'NLS_UPPER'",
+ "'NO_ACCESS'", "'NO_ADAPTIVE_PLAN'", "'NO_ANSI_REARCH'",
+ "'NOAPPEND'", "'NOARCHIVELOG'", "'NOAUDIT'", "'NO_AUTO_REOPTIMIZE'",
+ "'NO_BASETABLE_MULTIMV_REWRITE'", "'NO_BATCH_TABLE_ACCESS_BY_ROWID'",
+ "'NO_BIND_AWARE'", "'NO_BUFFER'", "'NOCACHE'", "'NO_CARTESIAN'",
+ "'NO_CHECK_ACL_REWRITE'", "'NO_CLUSTER_BY_ROWID'",
+ "'NO_CLUSTERING'", "'NO_COALESCE_SQ'", "'NO_COMMON_DATA'",
+ "'NOCOMPRESS'", "'NO_CONNECT_BY_CB_WHR_ONLY'", "'NO_CONNECT_BY_COMBINE_SW'",
+ "'NO_CONNECT_BY_COST_BASED'", "'NO_CONNECT_BY_ELIM_DUPS'",
+ "'NO_CONNECT_BY_FILTERING'", "'NOCOPY'", "'NO_COST_XML_QUERY_REWRITE'",
+ "'NO_CPU_COSTING'", "'NOCPU_COSTING'", "'NOCYCLE'",
+ "'NO_DATA_SECURITY_REWRITE'", "'NO_DECORRELATE'", "'NODELAY'",
+ "'NO_DOMAIN_INDEX_FILTER'", "'NO_DST_UPGRADE_INSERT_CONV'",
+ "'NO_ELIM_GROUPBY'", "'NO_ELIMINATE_JOIN'", "'NO_ELIMINATE_OBY'",
+ "'NO_ELIMINATE_OUTER_JOIN'", "'NOENTITYESCAPING'",
+ "'NO_EXPAND_GSET_TO_UNION'", "'NO_EXPAND'", "'NO_EXPAND_TABLE'",
+ "'NO_FACT'", "'NO_FACTORIZE_JOIN'", "'NO_FILTERING'",
+ "'NOFORCE'", "'NO_FULL_OUTER_JOIN_TO_OUTER'", "'NO_GATHER_OPTIMIZER_STATISTICS'",
+ "'NO_GBY_PUSHDOWN'", "'NOGUARANTEE'", "'NO_INDEX_FFS'",
+ "'NO_INDEX'", "'NO_INDEX_SS'", "'NO_INMEMORY'", "'NO_INMEMORY_PRUNING'",
+ "'NOKEEP'", "'NO_LOAD'", "'NOLOCAL'", "'NOLOGGING'",
+ "'NOMAPPING'", "'NOMAXVALUE'", "'NO_MERGE'", "'NOMINIMIZE'",
+ "'NOMINVALUE'", "'NO_MODEL_PUSH_REF'", "'NO_MONITORING'",
+ "'NOMONITORING'", "'NO_MONITOR'", "'NO_MULTIMV_REWRITE'",
+ "'NO_NATIVE_FULL_OUTER_JOIN'", "'NONBLOCKING'", "'NONEDITIONABLE'",
+ "'NONE'", "'NO_NLJ_BATCHING'", "'NO_NLJ_PREFETCH'",
+ "'NO'", "'NONSCHEMA'", "'NO_OBJECT_LINK'", "'NOORDER'",
+ "'NO_ORDER_ROLLUPS'", "'NO_OUTER_JOIN_TO_ANTI'", "'NO_OUTER_JOIN_TO_INNER'",
+ "'NOOVERRIDE'", "'NO_PARALLEL_INDEX'", "'NOPARALLEL_INDEX'",
+ "'NO_PARALLEL'", "'NOPARALLEL'", "'NO_PARTIAL_COMMIT'",
+ "'NO_PARTIAL_JOIN'", "'NO_PARTIAL_ROLLUP_PUSHDOWN'",
+ "'NOPARTITION'", "'NO_PLACE_DISTINCT'", "'NO_PLACE_GROUP_BY'",
+ "'NO_PQ_CONCURRENT_UNION'", "'NO_PQ_MAP'", "'NO_PQ_REPLICATE'",
+ "'NO_PQ_SKEW'", "'NO_PRUNE_GSETS'", "'NO_PULL_PRED'",
+ "'NO_PUSH_PRED'", "'NO_PUSH_SUBQ'", "'NO_PX_FAULT_TOLERANCE'",
+ "'NO_PX_JOIN_FILTER'", "'NO_QKN_BUFF'", "'NO_QUERY_TRANSFORMATION'",
+ "'NO_REF_CASCADE'", "'NORELOCATE'", "'NORELY'", "'NOREPAIR'",
+ "'NOREPLAY'", "'NORESETLOGS'", "'NO_RESULT_CACHE'",
+ "'NOREVERSE'", "'NO_REWRITE'", "'NOREWRITE'", "'NORMAL'",
+ "'NO_ROOT_SW_FOR_LOCAL'", "'NOROWDEPENDENCIES'", "'NOSCHEMACHECK'",
+ "'NOSEGMENT'", "'NO_SEMIJOIN'", "'NO_SEMI_TO_INNER'",
+ "'NO_SET_TO_JOIN'", "'NOSORT'", "'NO_SQL_TRANSLATION'",
+ "'NO_SQL_TUNE'", "'NO_STAR_TRANSFORMATION'", "'NO_STATEMENT_QUEUING'",
+ "'NO_STATS_GSETS'", "'NOSTRICT'", "'NO_SUBQUERY_PRUNING'",
+ "'NO_SUBSTRB_PAD'", "'NO_SWAP_JOIN_INPUTS'", "'NOSWITCH'",
+ "'NO_TABLE_LOOKUP_BY_NL'", "'NO_TEMP_TABLE'", "'NOTHING'",
+ "'NOTIFICATION'", "'NOT'", "'NO_TRANSFORM_DISTINCT_AGG'",
+ "'NO_UNNEST'", "'NO_USE_CUBE'", "'NO_USE_HASH_AGGREGATION'",
+ "'NO_USE_HASH_GBY_FOR_PUSHDOWN'", "'NO_USE_HASH'",
+ "'NO_USE_INVISIBLE_INDEXES'", "'NO_USE_MERGE'", "'NO_USE_NL'",
+ "'NO_USE_VECTOR_AGGREGATION'", "'NOVALIDATE'", "'NO_VECTOR_TRANSFORM_DIMS'",
+ "'NO_VECTOR_TRANSFORM_FACT'", "'NO_VECTOR_TRANSFORM'",
+ "'NOWAIT'", "'NO_XDB_FASTPATH_INSERT'", "'NO_XML_DML_REWRITE'",
+ "'NO_XMLINDEX_REWRITE_IN_SELECT'", "'NO_XMLINDEX_REWRITE'",
+ "'NO_XML_QUERY_REWRITE'", "'NO_ZONEMAP'", "'NTH_VALUE'",
+ "'NULLIF'", "'NULL'", "'NULLS'", "'NUMBER'", "'NUMERIC'",
+ "'NUM_INDEX_KEYS'", "'NUMTODSINTERVAL'", "'NUMTOYMINTERVAL'",
+ "'NVARCHAR2'", "'NVL2'", "'OBJECT2XML'", "'OBJECT'",
+ "'OBJ_ID'", "'OBJNO'", "'OBJNO_REUSE'", "'OCCURENCES'",
+ "'OFFLINE'", "'OFF'", "'OFFSET'", "'OF'", "'OIDINDEX'",
+ "'OID'", "'OLAP'", "'OLD'", "'OLD_PUSH_PRED'", "'OLS'",
+ "'OLTP'", "'OMIT'", "'ONE'", "'ONLINE'", "'ONLINELOG'",
+ "'ONLY'", "'ON'", "'OPAQUE'", "'OPAQUE_TRANSFORM'",
+ "'OPAQUE_XCANONICAL'", "'OPCODE'", "'OPEN'", "'OPERATIONS'",
+ "'OPERATOR'", "'OPT_ESTIMATE'", "'OPTIMAL'", "'OPTIMIZE'",
+ "'OPTIMIZER_FEATURES_ENABLE'", "'OPTIMIZER_GOAL'",
+ "'OPTION'", "'OPT_PARAM'", "'ORA_BRANCH'", "'ORA_CHECK_ACL'",
+ "'ORA_CHECK_PRIVILEGE'", "'ORA_CLUSTERING'", "'ORADATA'",
+ "'ORADEBUG'", "'ORA_DST_AFFECTED'", "'ORA_DST_CONVERT'",
+ "'ORA_DST_ERROR'", "'ORA_GET_ACLIDS'", "'ORA_GET_PRIVILEGES'",
+ "'ORA_HASH'", "'ORA_INVOKING_USERID'", "'ORA_INVOKING_USER'",
+ "'ORA_INVOKING_XS_USER_GUID'", "'ORA_INVOKING_XS_USER'",
+ "'ORA_RAWCOMPARE'", "'ORA_RAWCONCAT'", "'ORA_ROWSCN'",
+ "'ORA_ROWSCN_RAW'", "'ORA_ROWVERSION'", "'ORA_TABVERSION'",
+ "'ORA_WRITE_TIME'", "'ORDERED'", "'ORDERED_PREDICATES'",
+ "'ORDER'", "'ORDINALITY'", "'OR_EXPAND'", "'ORGANIZATION'",
+ "'OR'", "'OR_PREDICATES'", "'OSERROR'", "'OTHER'",
+ "'OUTER_JOIN_TO_ANTI'", "'OUTER_JOIN_TO_INNER'", "'OUTER'",
+ "'OUTLINE_LEAF'", "'OUTLINE'", "'OUT_OF_LINE'", "'OUT'",
+ "'OVERFLOW_NOMOVE'", "'OVERFLOW'", "'OVERLAPS'", "'OVER'",
+ "'OVERRIDING'", "'OWNER'", "'OWNERSHIP'", "'OWN'",
+ "'PACKAGE'", "'PACKAGES'", "'PARALLEL_ENABLE'", "'PARALLEL_INDEX'",
+ "'PARALLEL'", "'PARAMETERFILE'", "'PARAMETERS'", "'PARAM'",
+ "'PARENT'", "'PARITY'", "'PARTIAL_JOIN'", "'PARTIALLY'",
+ "'PARTIAL'", "'PARTIAL_ROLLUP_PUSHDOWN'", "'PARTITION_HASH'",
+ "'PARTITION_LIST'", "'PARTITION'", "'PARTITION_RANGE'",
+ "'PARTITIONS'", "'PART$NUM$INST'", "'PASSING'", "'PASSWORD_GRACE_TIME'",
+ "'PASSWORD_LIFE_TIME'", "'PASSWORD_LOCK_TIME'", "'PASSWORD'",
+ "'PASSWORD_REUSE_MAX'", "'PASSWORD_REUSE_TIME'", "'PASSWORD_VERIFY_FUNCTION'",
+ "'PAST'", "'PATCH'", "'PATH'", "'PATH_PREFIX'", "'PATHS'",
+ "'PATTERN'", "'PBL_HS_BEGIN'", "'PBL_HS_END'", "'PCTFREE'",
+ "'PCTINCREASE'", "'PCTTHRESHOLD'", "'PCTUSED'", "'PCTVERSION'",
+ "'PENDING'", null, null, null, "'PERCENT'", "'PERCENT_RANKM'",
+ null, null, null, "'PERFORMANCE'", "'PERIOD'", "'PERMANENT'",
+ "'PERMISSION'", "'PERMUTE'", "'PER'", "'PFILE'", "'PHYSICAL'",
+ "'PIKEY'", "'PIPELINED'", "'PIPE'", "'PIV_GB'", "'PIVOT'",
+ "'PIV_SSF'", "'PLACE_DISTINCT'", "'PLACE_GROUP_BY'",
+ "'PLAN'", "'PLSCOPE_SETTINGS'", "'PLS_INTEGER'", "'PLSQL_CCFLAGS'",
+ "'PLSQL_CODE_TYPE'", "'PLSQL_DEBUG'", "'PLSQL_OPTIMIZE_LEVEL'",
+ "'PLSQL_WARNINGS'", "'PLUGGABLE'", "'POINT'", "'POLICY'",
+ "'POOL_16K'", "'POOL_2K'", "'POOL_32K'", "'POOL_4K'",
+ "'POOL_8K'", "'POSITIVEN'", "'POSITIVE'", "'POST_TRANSACTION'",
+ "'POWERMULTISET_BY_CARDINALITY'", "'POWERMULTISET'",
+ "'POWER'", "'PQ_CONCURRENT_UNION'", "'PQ_DISTRIBUTE'",
+ "'PQ_DISTRIBUTE_WINDOW'", "'PQ_FILTER'", "'PQ_MAP'",
+ "'PQ_NOMAP'", "'PQ_REPLICATE'", "'PQ_SKEW'", "'PRAGMA'",
+ "'PREBUILT'", "'PRECEDES'", "'PRECEDING'", "'PRECISION'",
+ "'PRECOMPUTE_SUBQUERY'", "'PREDICATE_REORDERS'", "'PRELOAD'",
+ "'PREPARE'", "'PRESENTNNV'", "'PRESENT'", "'PRESENTV'",
+ "'PRESERVE_OID'", "'PRESERVE'", "'PRETTY'", "'PREVIOUS'",
+ "'PREV'", "'PRIMARY'", "'PRINTBLOBTOCLOB'", "'PRIORITY'",
+ "'PRIOR'", "'PRIVATE'", "'PRIVATE_SGA'", "'PRIVILEGED'",
+ "'PRIVILEGE'", "'PRIVILEGES'", "'PROCEDURAL'", "'PROCEDURE'",
+ "'PROCESS'", "'PROFILE'", "'PROGRAM'", "'PROJECT'",
+ "'PROPAGATE'", "'PROTECTED'", "'PROTECTION'", "'PROXY'",
+ "'PRUNING'", "'PUBLIC'", "'PULL_PRED'", "'PURGE'",
+ "'PUSH_PRED'", "'PUSH_SUBQ'", "'PX_FAULT_TOLERANCE'",
+ "'PX_GRANULE'", "'PX_JOIN_FILTER'", "'QB_NAME'", "'QUERY_BLOCK'",
+ "'QUERY'", "'QUEUE_CURR'", "'QUEUE'", "'QUEUE_ROWP'",
+ "'QUIESCE'", "'QUORUM'", "'QUOTA'", "'RAISE'", "'RANDOM_LOCAL'",
+ "'RANDOM'", "'RANGE'", "'RANKM'", "'RAPIDLY'", "'RAW'",
+ "'RAWTOHEX'", "'RAWTONHEX'", "'RBA'", "'RBO_OUTLINE'",
+ "'RDBA'", "'READ'", "'READS'", "'REALM'", "'REAL'",
+ "'REBALANCE'", "'REBUILD'", "'RECORD'", "'RECORDS_PER_BLOCK'",
+ "'RECOVERABLE'", "'RECOVER'", "'RECOVERY'", "'RECYCLEBIN'",
+ "'RECYCLE'", "'REDACTION'", "'REDEFINE'", "'REDO'",
+ "'REDUCED'", "'REDUNDANCY'", "'REF_CASCADE_CURSOR'",
+ "'REFERENCED'", "'REFERENCE'", "'REFERENCES'", "'REFERENCING'",
+ "'REF'", "'REFRESH'", "'REFTOHEX'", "'REGEXP_COUNT'",
+ "'REGEXP_INSTR'", "'REGEXP_LIKE'", "'REGEXP_REPLACE'",
+ "'REGEXP_SUBSTR'", "'REGISTER'", "'REGR_AVGX'", "'REGR_AVGY'",
+ "'REGR_COUNT'", "'REGR_INTERCEPT'", "'REGR_R2'", "'REGR_SLOPE'",
+ "'REGR_SXX'", "'REGR_SXY'", "'REGR_SYY'", "'REGULAR'",
+ "'REJECT'", "'REKEY'", "'RELATIONAL'", "'RELIES_ON'",
+ "'RELOCATE'", "'RELY'", "'REMAINDER'", "'REMOTE_MAPPED'",
+ "'REMOVE'", "'RENAME'", "'REPAIR'", "'REPEAT'", "'REPLACE'",
+ "'REPLICATION'", "'REQUIRED'", "'RESETLOGS'", "'RESET'",
+ "'RESIZE'", "'RESOLVE'", "'RESOLVER'", "'RESOURCE'",
+ "'RESPECT'", "'RESTART'", "'RESTORE_AS_INTERVALS'",
+ "'RESTORE'", "'RESTRICT_ALL_REF_CONS'", "'RESTRICTED'",
+ "'RESTRICT_REFERENCES'", "'RESTRICT'", "'RESULT_CACHE'",
+ "'RESULT'", "'RESUMABLE'", "'RESUME'", "'RETENTION'",
+ "'RETRY_ON_ROW_CHANGE'", "'RETURNING'", "'RETURN'",
+ "'REUSE'", "'REVERSE'", "'REVOKE'", "'REWRITE_OR_ERROR'",
+ "'REWRITE'", "'RIGHT'", "'ROLE'", "'ROLESET'", "'ROLES'",
+ "'ROLLBACK'", "'ROLLING'", "'ROLLUP'", "'ROWDEPENDENCIES'",
+ "'ROWID_MAPPING_TABLE'", "'ROWID'", "'ROWIDTOCHAR'",
+ "'ROWIDTONCHAR'", "'ROW_LENGTH'", "'ROWNUM'", "'ROW'",
+ "'ROWS'", "'RPAD'", "'RTRIM'", "'RULE'", "'RULES'",
+ "'RUNNING'", "'SALT'", "'SAMPLE'", "'SAVE_AS_INTERVALS'",
+ "'SAVEPOINT'", "'SAVE'", "'SB4'", "'SCALE_ROWS'", "'SCALE'",
+ "'SCAN_INSTANCES'", "'SCAN'", "'SCHEDULER'", "'SCHEMACHECK'",
+ "'SCHEMA'", "'SCN_ASCENDING'", "'SCN'", "'SCOPE'",
+ "'SCRUB'", "'SD_ALL'", "'SD_INHIBIT'", "'SDO_GEOM_MBR'",
+ "'SD_SHOW'", "'SEARCH'", "'SECOND'", "'SECRET'", "'SECUREFILE_DBA'",
+ "'SECUREFILE'", "'SECURITY'", "'SEED'", "'SEG_BLOCK'",
+ "'SEG_FILE'", "'SEGMENT'", "'SELECTIVITY'", "'SELECT'",
+ "'SELF'", "'SEMIJOIN_DRIVER'", "'SEMIJOIN'", "'SEMI_TO_INNER'",
+ "'SEQUENCED'", "'SEQUENCE'", "'SEQUENTIAL'", "'SEQ'",
+ "'SERIALIZABLE'", "'SERIALLY_REUSABLE'", "'SERIAL'",
+ "'SERVERERROR'", "'SERVICE_NAME_CONVERT'", "'SERVICES'",
+ "'SESSION_CACHED_CURSORS'", "'SESSION'", "'SESSIONS_PER_USER'",
+ "'SESSIONTIMEZONE'", "'SESSIONTZNAME'", "'SET'", "'SETS'",
+ "'SETTINGS'", "'SET_TO_JOIN'", "'SEVERE'", "'SHARED_POOL'",
+ "'SHARED'", "'SHARE'", "'SHARING'", "'SHELFLIFE'",
+ "'SHOW'", "'SHRINK'", "'SHUTDOWN'", "'SIBLINGS'", "'SID'",
+ "'SIGNAL_COMPONENT'", "'SIGNAL_FUNCTION'", "'SIGN'",
+ "'SIGNTYPE'", "'SIMPLE_INTEGER'", "'SIMPLE'", "'SINGLE'",
+ "'SINGLETASK'", "'SINH'", "'SIN'", "'SIZE'", "'SKIP_EXT_OPTIMIZER'",
+ "'SKIP'", "'SKIP_UNQ_UNUSABLE_IDX'", "'SKIP_UNUSABLE_INDEXES'",
+ "'SMALLFILE'", "'SMALLINT'", "'SNAPSHOT'", "'SOME'",
+ "'SORT'", "'SOUNDEX'", "'SOURCE_FILE_DIRECTORY'", "'SOURCE_FILE_NAME_CONVERT'",
+ "'SOURCE'", "'SPACE'", "'SPECIFICATION'", "'SPFILE'",
+ "'SPLIT'", "'SPREADSHEET'", "'SQLDATA'", "'SQLERROR'",
+ "'SQLLDR'", "'SQL'", "'SQL_TRACE'", "'SQL_TRANSLATION_PROFILE'",
+ "'SQRT'", "'STALE'", "'STANDALONE'", "'STANDARD_HASH'",
+ "'STANDBY_MAX_DATA_DELAY'", "'STANDBYS'", "'STANDBY'",
+ "'STAR'", "'STAR_TRANSFORMATION'", "'START'", "'STARTUP'",
+ "'STATEMENT_ID'", "'STATEMENT_QUEUING'", "'STATEMENTS'",
+ "'STATEMENT'", "'STATE'", "'STATIC'", "'STATISTICS'",
+ "'STATS_BINOMIAL_TEST'", "'STATS_CROSSTAB'", "'STATS_F_TEST'",
+ "'STATS_KS_TEST'", "'STATS_MODE'", "'STATS_MW_TEST'",
+ "'STATS_ONE_WAY_ANOVA'", "'STATS_T_TEST_INDEP'", "'STATS_T_TEST_INDEPU'",
+ "'STATS_T_TEST_ONE'", "'STATS_T_TEST_PAIRED'", "'STATS_WSR_TEST'",
+ "'STDDEV_POP'", "'STDDEV_SAMP'", "'STOP'", "'STORAGE'",
+ "'STORE'", "'STREAMS'", "'STREAM'", "'STRICT'", "'STRING'",
+ "'STRIPE_COLUMNS'", "'STRIPE_WIDTH'", "'STRIP'", "'STRUCTURE'",
+ "'SUBMULTISET'", "'SUBPARTITION_REL'", "'SUBPARTITIONS'",
+ "'SUBPARTITION'", "'SUBQUERIES'", "'SUBQUERY_PRUNING'",
+ "'SUBSCRIBE'", "'SUBSET'", "'SUBSTITUTABLE'", "'SUBSTR2'",
+ "'SUBSTR4'", "'SUBSTRB'", "'SUBSTRC'", "'SUBTYPE'",
+ "'SUCCESSFUL'", "'SUCCESS'", "'SUMMARY'", "'SUPPLEMENTAL'",
+ "'SUSPEND'", "'SWAP_JOIN_INPUTS'", "'SWITCHOVER'",
+ "'SWITCH'", "'SYNCHRONOUS'", "'SYNC'", "'SYNONYM'",
+ "'SYSASM'", "'SYS_AUDIT'", "'SYSAUX'", "'SYSBACKUP'",
+ "'SYS_CHECKACL'", "'SYS_CHECK_PRIVILEGE'", "'SYS_CONNECT_BY_PATH'",
+ "'SYS_CONTEXT'", "'SYSDATE'", "'SYSDBA'", "'SYS_DBURIGEN'",
+ "'SYSDG'", "'SYS_DL_CURSOR'", "'SYS_DM_RXFORM_CHR'",
+ "'SYS_DM_RXFORM_NUM'", "'SYS_DOM_COMPARE'", "'SYS_DST_PRIM2SEC'",
+ "'SYS_DST_SEC2PRIM'", "'SYS_ET_BFILE_TO_RAW'", "'SYS_ET_BLOB_TO_IMAGE'",
+ "'SYS_ET_IMAGE_TO_BLOB'", "'SYS_ET_RAW_TO_BFILE'",
+ "'SYS_EXTPDTXT'", "'SYS_EXTRACT_UTC'", "'SYS_FBT_INSDEL'",
+ "'SYS_FILTER_ACLS'", "'SYS_FNMATCHES'", "'SYS_FNREPLACE'",
+ "'SYS_GET_ACLIDS'", "'SYS_GET_COL_ACLIDS'", "'SYS_GET_PRIVILEGES'",
+ "'SYS_GETTOKENID'", "'SYS_GETXTIVAL'", "'SYS_GUID'",
+ "'SYSGUID'", "'SYSKM'", "'SYS_MAKE_XMLNODEID'", "'SYS_MAKEXML'",
+ "'SYS_MKXMLATTR'", "'SYS_MKXTI'", "'SYSOBJ'", "'SYS_OP_ADT2BIN'",
+ "'SYS_OP_ADTCONS'", "'SYS_OP_ALSCRVAL'", "'SYS_OP_ATG'",
+ "'SYS_OP_BIN2ADT'", "'SYS_OP_BITVEC'", "'SYS_OP_BL2R'",
+ "'SYS_OP_BLOOM_FILTER_LIST'", "'SYS_OP_BLOOM_FILTER'",
+ "'SYS_OP_C2C'", "'SYS_OP_CAST'", "'SYS_OP_CEG'", "'SYS_OP_CL2C'",
+ "'SYS_OP_COMBINED_HASH'", "'SYS_OP_COMP'", "'SYS_OP_CONVERT'",
+ "'SYS_OP_COUNTCHG'", "'SYS_OP_CSCONV'", "'SYS_OP_CSCONVTEST'",
+ "'SYS_OP_CSR'", "'SYS_OP_CSX_PATCH'", "'SYS_OP_CYCLED_SEQ'",
+ "'SYS_OP_DECOMP'", "'SYS_OP_DESCEND'", "'SYS_OP_DISTINCT'",
+ "'SYS_OP_DRA'", "'SYS_OP_DUMP'", "'SYS_OP_DV_CHECK'",
+ "'SYS_OP_ENFORCE_NOT_NULL$'", "'SYSOPER'", "'SYS_OP_EXTRACT'",
+ "'SYS_OP_GROUPING'", "'SYS_OP_GUID'", "'SYS_OP_HASH'",
+ "'SYS_OP_IIX'", "'SYS_OP_ITR'", "'SYS_OP_KEY_VECTOR_CREATE'",
+ "'SYS_OP_KEY_VECTOR_FILTER_LIST'", "'SYS_OP_KEY_VECTOR_FILTER'",
+ "'SYS_OP_KEY_VECTOR_SUCCEEDED'", "'SYS_OP_KEY_VECTOR_USE'",
+ "'SYS_OP_LBID'", "'SYS_OP_LOBLOC2BLOB'", "'SYS_OP_LOBLOC2CLOB'",
+ "'SYS_OP_LOBLOC2ID'", "'SYS_OP_LOBLOC2NCLOB'", "'SYS_OP_LOBLOC2TYP'",
+ "'SYS_OP_LSVI'", "'SYS_OP_LVL'", "'SYS_OP_MAKEOID'",
+ "'SYS_OP_MAP_NONNULL'", "'SYS_OP_MSR'", "'SYS_OP_NICOMBINE'",
+ "'SYS_OP_NIEXTRACT'", "'SYS_OP_NII'", "'SYS_OP_NIX'",
+ "'SYS_OP_NOEXPAND'", "'SYS_OP_NTCIMG$'", "'SYS_OP_NUMTORAW'",
+ "'SYS_OP_OIDVALUE'", "'SYS_OP_OPNSIZE'", "'SYS_OP_PAR_1'",
+ "'SYS_OP_PARGID_1'", "'SYS_OP_PARGID'", "'SYS_OP_PAR'",
+ "'SYS_OP_PART_ID'", "'SYS_OP_PIVOT'", "'SYS_OP_R2O'",
+ "'SYS_OP_RAWTONUM'", "'SYS_OP_RDTM'", "'SYS_OP_REF'",
+ "'SYS_OP_RMTD'", "'SYS_OP_ROWIDTOOBJ'", "'SYS_OP_RPB'",
+ "'SYS_OPTLOBPRBSC'", "'SYS_OP_TOSETID'", "'SYS_OP_TPR'",
+ "'SYS_OP_TRTB'", "'SYS_OPTXICMP'", "'SYS_OPTXQCASTASNQ'",
+ "'SYS_OP_UNDESCEND'", "'SYS_OP_VECAND'", "'SYS_OP_VECBIT'",
+ "'SYS_OP_VECOR'", "'SYS_OP_VECXOR'", "'SYS_OP_VERSION'",
+ "'SYS_OP_VREF'", "'SYS_OP_VVD'", "'SYS_OP_XMLCONS_FOR_CSX'",
+ "'SYS_OP_XPTHATG'", "'SYS_OP_XPTHIDX'", "'SYS_OP_XPTHOP'",
+ "'SYS_OP_XTXT2SQLT'", "'SYS_OP_ZONE_ID'", "'SYS_ORDERKEY_DEPTH'",
+ "'SYS_ORDERKEY_MAXCHILD'", "'SYS_ORDERKEY_PARENT'",
+ "'SYS_PARALLEL_TXN'", "'SYS_PATHID_IS_ATTR'", "'SYS_PATHID_IS_NMSPC'",
+ "'SYS_PATHID_LASTNAME'", "'SYS_PATHID_LASTNMSPC'",
+ "'SYS_PATH_REVERSE'", "'SYS_PXQEXTRACT'", "'SYS_RAW_TO_XSID'",
+ "'SYS_RID_ORDER'", "'SYS_ROW_DELTA'", "'SYS_SC_2_XMLT'",
+ "'SYS_SYNRCIREDO'", "'SYSTEM_DEFINED'", "'SYSTEM'",
+ "'SYSTIMESTAMP'", "'SYS_TYPEID'", "'SYS_UMAKEXML'",
+ "'SYS_XMLANALYZE'", "'SYS_XMLCONTAINS'", "'SYS_XMLCONV'",
+ "'SYS_XMLEXNSURI'", "'SYS_XMLGEN'", "'SYS_XMLI_LOC_ISNODE'",
+ "'SYS_XMLI_LOC_ISTEXT'", "'SYS_XMLINSTR'", "'SYS_XMLLOCATOR_GETSVAL'",
+ "'SYS_XMLNODEID_GETCID'", "'SYS_XMLNODEID_GETLOCATOR'",
+ "'SYS_XMLNODEID_GETOKEY'", "'SYS_XMLNODEID_GETPATHID'",
+ "'SYS_XMLNODEID_GETPTRID'", "'SYS_XMLNODEID_GETRID'",
+ "'SYS_XMLNODEID_GETSVAL'", "'SYS_XMLNODEID_GETTID'",
+ "'SYS_XMLNODEID'", "'SYS_XMLT_2_SC'", "'SYS_XMLTRANSLATE'",
+ "'SYS_XMLTYPE2SQL'", "'SYS_XQ_ASQLCNV'", "'SYS_XQ_ATOMCNVCHK'",
+ "'SYS_XQBASEURI'", "'SYS_XQCASTABLEERRH'", "'SYS_XQCODEP2STR'",
+ "'SYS_XQCODEPEQ'", "'SYS_XQCON2SEQ'", "'SYS_XQCONCAT'",
+ "'SYS_XQDELETE'", "'SYS_XQDFLTCOLATION'", "'SYS_XQDOC'",
+ "'SYS_XQDOCURI'", "'SYS_XQDURDIV'", "'SYS_XQED4URI'",
+ "'SYS_XQENDSWITH'", "'SYS_XQERRH'", "'SYS_XQERR'",
+ "'SYS_XQESHTMLURI'", "'SYS_XQEXLOBVAL'", "'SYS_XQEXSTWRP'",
+ "'SYS_XQEXTRACT'", "'SYS_XQEXTRREF'", "'SYS_XQEXVAL'",
+ "'SYS_XQFB2STR'", "'SYS_XQFNBOOL'", "'SYS_XQFNCMP'",
+ "'SYS_XQFNDATIM'", "'SYS_XQFNLNAME'", "'SYS_XQFNNM'",
+ "'SYS_XQFNNSURI'", "'SYS_XQFNPREDTRUTH'", "'SYS_XQFNQNM'",
+ "'SYS_XQFNROOT'", "'SYS_XQFORMATNUM'", "'SYS_XQFTCONTAIN'",
+ "'SYS_XQFUNCR'", "'SYS_XQGETCONTENT'", "'SYS_XQINDXOF'",
+ "'SYS_XQINSERT'", "'SYS_XQINSPFX'", "'SYS_XQIRI2URI'",
+ "'SYS_XQLANG'", "'SYS_XQLLNMFRMQNM'", "'SYS_XQMKNODEREF'",
+ "'SYS_XQNILLED'", "'SYS_XQNODENAME'", "'SYS_XQNORMSPACE'",
+ "'SYS_XQNORMUCODE'", "'SYS_XQ_NRNG'", "'SYS_XQNSP4PFX'",
+ "'SYS_XQNSPFRMQNM'", "'SYS_XQPFXFRMQNM'", "'SYS_XQ_PKSQL2XML'",
+ "'SYS_XQPOLYABS'", "'SYS_XQPOLYADD'", "'SYS_XQPOLYCEL'",
+ "'SYS_XQPOLYCSTBL'", "'SYS_XQPOLYCST'", "'SYS_XQPOLYDIV'",
+ "'SYS_XQPOLYFLR'", "'SYS_XQPOLYMOD'", "'SYS_XQPOLYMUL'",
+ "'SYS_XQPOLYRND'", "'SYS_XQPOLYSQRT'", "'SYS_XQPOLYSUB'",
+ "'SYS_XQPOLYUMUS'", "'SYS_XQPOLYUPLS'", "'SYS_XQPOLYVEQ'",
+ "'SYS_XQPOLYVGE'", "'SYS_XQPOLYVGT'", "'SYS_XQPOLYVLE'",
+ "'SYS_XQPOLYVLT'", "'SYS_XQPOLYVNE'", "'SYS_XQREF2VAL'",
+ "'SYS_XQRENAME'", "'SYS_XQREPLACE'", "'SYS_XQRESVURI'",
+ "'SYS_XQRNDHALF2EVN'", "'SYS_XQRSLVQNM'", "'SYS_XQRYENVPGET'",
+ "'SYS_XQRYVARGET'", "'SYS_XQRYWRP'", "'SYS_XQSEQ2CON4XC'",
+ "'SYS_XQSEQ2CON'", "'SYS_XQSEQDEEPEQ'", "'SYS_XQSEQINSB'",
+ "'SYS_XQSEQRM'", "'SYS_XQSEQRVS'", "'SYS_XQSEQSUB'",
+ "'SYS_XQSEQTYPMATCH'", "'SYS_XQSTARTSWITH'", "'SYS_XQSTATBURI'",
+ "'SYS_XQSTR2CODEP'", "'SYS_XQSTRJOIN'", "'SYS_XQSUBSTRAFT'",
+ "'SYS_XQSUBSTRBEF'", "'SYS_XQTOKENIZE'", "'SYS_XQTREATAS'",
+ "'SYS_XQ_UPKXML2SQL'", "'SYS_XQXFORM'", "'SYS_XSID_TO_RAW'",
+ "'SYS_ZMAP_FILTER'", "'SYS_ZMAP_REFRESH'", "'TABLE_LOOKUP_BY_NL'",
+ "'TABLESPACE_NO'", "'TABLESPACE'", "'TABLES'", "'TABLE_STATS'",
+ "'TABLE'", "'TABNO'", "'TAG'", "'TANH'", "'TAN'", "'TBL$OR$IDX$PART$NUM'",
+ "'TEMPFILE'", "'TEMPLATE'", "'TEMPORARY'", "'TEMP_TABLE'",
+ "'TEST'", "'TEXT'", "'THAN'", "'THEN'", "'THE'", "'THREAD'",
+ "'THROUGH'", "'TIER'", "'TIES'", "'TIMEOUT'", "'TIMESTAMP_LTZ_UNCONSTRAINED'",
+ "'TIMESTAMP'", "'TIMESTAMP_TZ_UNCONSTRAINED'", "'TIMESTAMP_UNCONSTRAINED'",
+ "'TIMES'", "'TIME'", "'TIMEZONE'", "'TIMEZONE_ABBR'",
+ "'TIMEZONE_HOUR'", "'TIMEZONE_MINUTE'", "'TIMEZONE_OFFSET'",
+ "'TIMEZONE_REGION'", "'TIME_ZONE'", "'TIV_GB'", "'TIV_SSF'",
+ "'TO_ACLID'", "'TO_BINARY_DOUBLE'", "'TO_BINARY_FLOAT'",
+ "'TO_BLOB'", "'TO_CLOB'", "'TO_DSINTERVAL'", "'TO_LOB'",
+ "'TO_MULTI_BYTE'", "'TO_NCHAR'", "'TO_NCLOB'", "'TO_NUMBER'",
+ "'TOPLEVEL'", "'TO_SINGLE_BYTE'", "'TO_TIMESTAMP'",
+ "'TO_TIMESTAMP_TZ'", "'TO_TIME'", "'TO_TIME_TZ'", "'TO'",
+ "'TO_YMINTERVAL'", "'TRACE'", "'TRACING'", "'TRACKING'",
+ "'TRAILING'", "'TRANSACTION'", "'TRANSFORM_DISTINCT_AGG'",
+ "'TRANSITIONAL'", "'TRANSITION'", "'TRANSLATE'", "'TRANSLATION'",
+ "'TREAT'", "'TRIGGERS'", "'TRIGGER'", "'TRUE'", "'TRUNCATE'",
+ "'TRUNC'", "'TRUSTED'", "'TRUST'", "'TUNING'", "'TX'",
+ "'TYPES'", "'TYPE'", "'TZ_OFFSET'", "'UB2'", "'UBA'",
+ "'UCS2'", "'UID'", "'UNARCHIVED'", "'UNBOUNDED'", "'UNBOUND'",
+ "'UNCONDITIONAL'", "'UNDER'", "'UNDO'", "'UNDROP'",
+ "'UNIFORM'", "'UNION'", "'UNIQUE'", "'UNISTR'", "'UNLIMITED'",
+ "'UNLOAD'", "'UNLOCK'", "'UNMATCHED'", "'UNNEST_INNERJ_DISTINCT_VIEW'",
+ "'UNNEST_NOSEMIJ_NODISTINCTVIEW'", "'UNNEST_SEMIJ_VIEW'",
+ "'UNNEST'", "'UNPACKED'", "'UNPIVOT'", "'UNPLUG'",
+ "'UNPROTECTED'", "'UNQUIESCE'", "'UNRECOVERABLE'",
+ "'UNRESTRICTED'", "'UNSUBSCRIBE'", "'UNTIL'", "'UNUSABLE'",
+ "'UNUSED'", "'UPDATABLE'", "'UPDATED'", "'UPDATE'",
+ "'UPDATEXML'", "'UPD_INDEXES'", "'UPD_JOININDEX'",
+ "'UPGRADE'", "'UPPER'", "'UPSERT'", "'UROWID'", "'USABLE'",
+ "'USAGE'", "'USE_ANTI'", "'USE_CONCAT'", "'USE_CUBE'",
+ "'USE_HASH_AGGREGATION'", "'USE_HASH_GBY_FOR_PUSHDOWN'",
+ "'USE_HASH'", "'USE_HIDDEN_PARTITIONS'", "'USE_INVISIBLE_INDEXES'",
+ "'USE_MERGE_CARTESIAN'", "'USE_MERGE'", "'USE_NL'",
+ "'USE_NL_WITH_INDEX'", "'USE_PRIVATE_OUTLINES'", "'USER_DATA'",
+ "'USER_DEFINED'", "'USERENV'", "'USERGROUP'", "'USER_RECYCLEBIN'",
+ "'USERS'", "'USER_TABLESPACES'", "'USER'", "'USE_SEMI'",
+ "'USE_STORED_OUTLINES'", "'USE_TTT_FOR_GSETS'", "'USE'",
+ "'USE_VECTOR_AGGREGATION'", "'USE_WEAK_NAME_RESL'",
+ "'USING_NO_EXPAND'", "'USING'", "'UTF16BE'", "'UTF16LE'",
+ "'UTF32'", "'UTF8'", "'V1'", "'V2'", "'VALIDATE'",
+ "'VALIDATION'", "'VALID_TIME_END'", "'VALUES'", "'VALUE'",
+ "'VARCHAR2'", "'VARCHAR'", "'VARIABLE'", "'VAR_POP'",
+ "'VARRAYS'", "'VARRAY'", "'VAR_SAMP'", "'VARYING'",
+ "'VECTOR_READ_TRACE'", "'VECTOR_READ'", "'VECTOR_TRANSFORM_DIMS'",
+ "'VECTOR_TRANSFORM_FACT'", "'VECTOR_TRANSFORM'", "'VERIFIER'",
+ "'VERIFY'", "'VERSIONING'", "'VERSIONS_ENDSCN'", "'VERSIONS_ENDTIME'",
+ "'VERSIONS_OPERATION'", "'VERSIONS_STARTSCN'", "'VERSIONS_STARTTIME'",
+ "'VERSIONS'", "'VERSIONS_XID'", "'VERSION'", "'VIEW'",
+ "'VIOLATION'", "'VIRTUAL'", "'VISIBILITY'", "'VISIBLE'",
+ "'VOLUME'", "'VSIZE'", "'WAIT'", "'WALLET'", "'WARNING'",
+ "'WEEKS'", "'WEEK'", "'WELLFORMED'", "'WHENEVER'",
+ "'WHEN'", "'WHERE'", "'WHILE'", "'WHITESPACE'", "'WIDTH_BUCKET'",
+ "'WITHIN'", "'WITHOUT'", "'WITH_PLSQL'", "'WITH'",
+ "'WORK'", "'WRAPPED'", "'WRAPPER'", "'WRITE'", "'XDB_FASTPATH_INSERT'",
+ "'XDB'", "'X_DYN_PRUNE'", "'XID'", "'XML2OBJECT'",
+ "'XMLAGG'", "'XMLATTRIBUTES'", "'XMLCAST'", "'XMLCDATA'",
+ "'XMLCOLATTVAL'", "'XMLCOMMENT'", "'XMLCONCAT'", "'XMLDIFF'",
+ "'XML_DML_RWT_STMT'", "'XMLELEMENT'", "'XMLEXISTS2'",
+ "'XMLEXISTS'", "'XMLFOREST'", "'XMLINDEX'", "'XMLINDEX_REWRITE_IN_SELECT'",
+ "'XMLINDEX_REWRITE'", "'XMLINDEX_SEL_IDX_TBL'", "'XMLISNODE'",
+ "'XMLISVALID'", "'XMLNAMESPACES'", "'XMLPARSE'", "'XMLPATCH'",
+ "'XMLPI'", "'XMLQUERYVAL'", "'XMLQUERY'", "'XMLROOT'",
+ "'XMLSCHEMA'", "'XMLSERIALIZE'", "'XMLTABLE'", "'XMLTRANSFORMBLOB'",
+ "'XMLTRANSFORM'", "'XMLTYPE'", "'XML'", "'XPATHTABLE'",
+ "'XS_SYS_CONTEXT'", "'XS'", "'XTRANSPORT'", "'YEARS'",
+ "'YEAR'", "'YES'", "'YMINTERVAL_UNCONSTRAINED'", "'ZONEMAP'",
+ "'ZONE'", "'PREDICTION'", "'PREDICTION_BOUNDS'", "'PREDICTION_COST'",
+ "'PREDICTION_DETAILS'", "'PREDICTION_PROBABILITY'",
+ "'PREDICTION_SET'", "'CUME_DIST'", "'DENSE_RANK'",
+ "'LISTAGG'", "'PERCENT_RANK'", "'PERCENTILE_CONT'",
+ "'PERCENTILE_DISC'", "'RANK'", "'AVG'", "'CORR'", "'COVAR_'",
+ "'DECODE'", "'LAG'", "'LEAD'", "'MAX'", "'MEDIAN'",
+ "'MIN'", "'NTILE'", "'NVL'", "'RATIO_TO_REPORT'", "'REGR_'",
+ "'ROUND'", "'ROW_NUMBER'", "'SUBSTR'", "'TO_CHAR'",
+ "'TRIM'", "'SUM'", "'STDDEV'", "'VAR_'", "'VARIANCE'",
+ "'LEAST'", "'GREATEST'", "'TO_DATE'", null, null, null,
+ "'..'", "'.'", null, null, null, null, "'%'", "'&'",
+ "'('", "')'", "'**'", "'*'", "'+'", "'-'", "','", "'/'",
+ "'@'", "':='", null, null, "'^'", "'~'", "'!'", "'>'",
+ "'<'", "':'", "';'", "'|'", "'='", "'['", "']'", "'_'" ];
+
+var symbolicNames = [ null, "ABORT", "ABS", "ACCESS", "ACCESSED", "ACCOUNT",
+ "ACL", "ACOS", "ACTION", "ACTIONS", "ACTIVATE", "ACTIVE",
+ "ACTIVE_COMPONENT", "ACTIVE_DATA", "ACTIVE_FUNCTION",
+ "ACTIVE_TAG", "ACTIVITY", "ADAPTIVE_PLAN", "ADD",
+ "ADD_COLUMN", "ADD_GROUP", "ADD_MONTHS", "ADJ_DATE",
+ "ADMIN", "ADMINISTER", "ADMINISTRATOR", "ADVANCED",
+ "ADVISE", "ADVISOR", "AFD_DISKSTRING", "AFTER", "AGENT",
+ "AGGREGATE", "A_LETTER", "ALIAS", "ALL", "ALLOCATE",
+ "ALLOW", "ALL_ROWS", "ALTER", "ALWAYS", "ANALYZE",
+ "ANCILLARY", "AND", "AND_EQUAL", "ANOMALY", "ANSI_REARCH",
+ "ANTIJOIN", "ANY", "ANYSCHEMA", "APPEND", "APPENDCHILDXML",
+ "APPEND_VALUES", "APPLICATION", "APPLY", "APPROX_COUNT_DISTINCT",
+ "ARCHIVAL", "ARCHIVE", "ARCHIVED", "ARCHIVELOG", "ARRAY",
+ "AS", "ASC", "ASCII", "ASCIISTR", "ASIN", "ASIS",
+ "ASSEMBLY", "ASSIGN", "ASSOCIATE", "ASYNC", "ASYNCHRONOUS",
+ "ATAN2", "ATAN", "AT", "ATTRIBUTE", "ATTRIBUTES",
+ "AUDIT", "AUTHENTICATED", "AUTHENTICATION", "AUTHID",
+ "AUTHORIZATION", "AUTOALLOCATE", "AUTO", "AUTOBACKUP",
+ "AUTOEXTEND", "AUTO_LOGIN", "AUTOMATIC", "AUTONOMOUS_TRANSACTION",
+ "AUTO_REOPTIMIZE", "AVAILABILITY", "AVRO", "BACKGROUND",
+ "BACKUP", "BACKUPSET", "BASIC", "BASICFILE", "BATCH",
+ "BATCHSIZE", "BATCH_TABLE_ACCESS_BY_ROWID", "BECOME",
+ "BEFORE", "BEGIN", "BEGINNING", "BEGIN_OUTLINE_DATA",
+ "BEHALF", "BEQUEATH", "BETWEEN", "BFILE", "BFILENAME",
+ "BIGFILE", "BINARY", "BINARY_DOUBLE", "BINARY_DOUBLE_INFINITY",
+ "BINARY_DOUBLE_NAN", "BINARY_FLOAT", "BINARY_FLOAT_INFINITY",
+ "BINARY_FLOAT_NAN", "BINARY_INTEGER", "BIND_AWARE",
+ "BINDING", "BIN_TO_NUM", "BITAND", "BITMAP_AND", "BITMAP",
+ "BITMAPS", "BITMAP_TREE", "BITS", "BLOB", "BLOCK",
+ "BLOCK_RANGE", "BLOCKS", "BLOCKSIZE", "BODY", "BOOLEAN",
+ "BOTH", "BOUND", "BRANCH", "BREADTH", "BROADCAST",
+ "BSON", "BUFFER", "BUFFER_CACHE", "BUFFER_POOL", "BUILD",
+ "BULK", "BY", "BYPASS_RECURSIVE_CHECK", "BYPASS_UJVC",
+ "BYTE", "CACHE", "CACHE_CB", "CACHE_INSTANCES", "CACHE_TEMP_TABLE",
+ "CACHING", "CALCULATED", "CALLBACK", "CALL", "CANCEL",
+ "CANONICAL", "CAPACITY", "CARDINALITY", "CASCADE",
+ "CASE", "CAST", "CATEGORY", "CDBDEFAULT", "CEIL",
+ "CELL_FLASH_CACHE", "CERTIFICATE", "CFILE", "CHAINED",
+ "CHANGE", "CHANGETRACKING", "CHANGE_DUPKEY_ERROR_INDEX",
+ "CHARACTER", "CHAR", "CHAR_CS", "CHARTOROWID", "CHECK_ACL_REWRITE",
+ "CHECK", "CHECKPOINT", "CHILD", "CHOOSE", "CHR", "CHUNK",
+ "CLASS", "CLASSIFIER", "CLEANUP", "CLEAR", "C_LETTER",
+ "CLIENT", "CLOB", "CLONE", "CLOSE_CACHED_OPEN_CURSORS",
+ "CLOSE", "CLUSTER_BY_ROWID", "CLUSTER", "CLUSTER_DETAILS",
+ "CLUSTER_DISTANCE", "CLUSTER_ID", "CLUSTERING", "CLUSTERING_FACTOR",
+ "CLUSTER_PROBABILITY", "CLUSTER_SET", "COALESCE",
+ "COALESCE_SQ", "COARSE", "CO_AUTH_IND", "COLD", "COLLECT",
+ "COLUMNAR", "COLUMN_AUTH_INDICATOR", "COLUMN", "COLUMNS",
+ "COLUMN_STATS", "COLUMN_VALUE", "COMMENT", "COMMIT",
+ "COMMITTED", "COMMON_DATA", "COMPACT", "COMPATIBILITY",
+ "COMPILE", "COMPLETE", "COMPLIANCE", "COMPONENT",
+ "COMPONENTS", "COMPOSE", "COMPOSITE", "COMPOSITE_LIMIT",
+ "COMPOUND", "COMPRESS", "COMPUTE", "CONCAT", "CON_DBID_TO_ID",
+ "CONDITIONAL", "CONDITION", "CONFIRM", "CONFORMING",
+ "CON_GUID_TO_ID", "CON_ID", "CON_NAME_TO_ID", "CONNECT_BY_CB_WHR_ONLY",
+ "CONNECT_BY_COMBINE_SW", "CONNECT_BY_COST_BASED",
+ "CONNECT_BY_ELIM_DUPS", "CONNECT_BY_FILTERING", "CONNECT_BY_ISCYCLE",
+ "CONNECT_BY_ISLEAF", "CONNECT_BY_ROOT", "CONNECT",
+ "CONNECT_TIME", "CONSIDER", "CONSISTENT", "CONSTANT",
+ "CONST", "CONSTRAINT", "CONSTRAINTS", "CONSTRUCTOR",
+ "CONTAINER", "CONTAINER_DATA", "CONTAINERS", "CONTENT",
+ "CONTENTS", "CONTEXT", "CONTINUE", "CONTROLFILE",
+ "CON_UID_TO_ID", "CONVERT", "COOKIE", "COPY", "CORR_K",
+ "CORR_S", "CORRUPTION", "CORRUPT_XID_ALL", "CORRUPT_XID",
+ "COS", "COSH", "COST", "COST_XML_QUERY_REWRITE", "COUNT",
+ "COVAR_POP", "COVAR_SAMP", "CPU_COSTING", "CPU_PER_CALL",
+ "CPU_PER_SESSION", "CRASH", "CREATE", "CREATE_FILE_DEST",
+ "CREATE_STORED_OUTLINES", "CREATION", "CREDENTIAL",
+ "CRITICAL", "CROSS", "CROSSEDITION", "CSCONVERT",
+ "CUBE_AJ", "CUBE", "CUBE_GB", "CUBE_SJ", "CUME_DISTM",
+ "CURRENT", "CURRENT_DATE", "CURRENT_SCHEMA", "CURRENT_TIME",
+ "CURRENT_TIMESTAMP", "CURRENT_USER", "CURRENTV", "CURSOR",
+ "CURSOR_SHARING_EXACT", "CURSOR_SPECIFIC_SEGMENT",
+ "CUSTOMDATUM", "CV", "CYCLE", "DANGLING", "DATABASE",
+ "DATA", "DATAFILE", "DATAFILES", "DATAGUARDCONFIG",
+ "DATAMOVEMENT", "DATAOBJNO", "DATAOBJ_TO_MAT_PARTITION",
+ "DATAOBJ_TO_PARTITION", "DATAPUMP", "DATA_SECURITY_REWRITE_LIMIT",
+ "DATE", "DATE_MODE", "DAY", "DAYS", "DBA", "DBA_RECYCLEBIN",
+ "DBMS_STATS", "DB_ROLE_CHANGE", "DBTIMEZONE", "DB_UNIQUE_NAME",
+ "DB_VERSION", "DDL", "DEALLOCATE", "DEBUG", "DEBUGGER",
+ "DEC", "DECIMAL", "DECLARE", "DECOMPOSE", "DECORRELATE",
+ "DECR", "DECREMENT", "DECRYPT", "DEDUPLICATE", "DEFAULT",
+ "DEFAULTS", "DEFERRABLE", "DEFERRED", "DEFINED", "DEFINE",
+ "DEFINER", "DEGREE", "DELAY", "DELEGATE", "DELETE_ALL",
+ "DELETE", "DELETEXML", "DEMAND", "DENSE_RANKM", "DEPENDENT",
+ "DEPTH", "DEQUEUE", "DEREF", "DEREF_NO_REWRITE", "DESC",
+ "DESTROY", "DETACHED", "DETERMINES", "DETERMINISTIC",
+ "DICTIONARY", "DIMENSION", "DIMENSIONS", "DIRECT_LOAD",
+ "DIRECTORY", "DIRECT_PATH", "DISABLE_ALL", "DISABLE",
+ "DISABLE_PARALLEL_DML", "DISABLE_PRESET", "DISABLE_RPKE",
+ "DISALLOW", "DISASSOCIATE", "DISCARD", "DISCONNECT",
+ "DISK", "DISKGROUP", "DISKGROUP_PLUS", "DISKS", "DISMOUNT",
+ "DISTINCT", "DISTINGUISHED", "DISTRIBUTED", "DISTRIBUTE",
+ "DML", "DML_UPDATE", "DOCFIDELITY", "DOCUMENT", "DOMAIN_INDEX_FILTER",
+ "DOMAIN_INDEX_NO_SORT", "DOMAIN_INDEX_SORT", "DOUBLE",
+ "DOWNGRADE", "DRIVING_SITE", "DROP_COLUMN", "DROP",
+ "DROP_GROUP", "DSINTERVAL_UNCONSTRAINED", "DST_UPGRADE_INSERT_CONV",
+ "DUMP", "DUMPSET", "DUPLICATE", "DV", "DYNAMIC", "DYNAMIC_SAMPLING",
+ "DYNAMIC_SAMPLING_EST_CDN", "EACH", "EDITIONABLE",
+ "EDITION", "EDITIONING", "EDITIONS", "ELEMENT", "ELIM_GROUPBY",
+ "ELIMINATE_JOIN", "ELIMINATE_OBY", "ELIMINATE_OUTER_JOIN",
+ "ELSE", "ELSIF", "EM", "EMPTY_BLOB", "EMPTY_CLOB",
+ "EMPTY", "ENABLE_ALL", "ENABLE", "ENABLE_PARALLEL_DML",
+ "ENABLE_PRESET", "ENCODING", "ENCRYPT", "ENCRYPTION",
+ "END", "END_OUTLINE_DATA", "ENFORCED", "ENFORCE",
+ "ENQUEUE", "ENTERPRISE", "ENTITYESCAPING", "ENTRY",
+ "EQUIPART", "ERR", "ERROR_ARGUMENT", "ERROR", "ERROR_ON_OVERLAP_TIME",
+ "ERRORS", "ESCAPE", "ESTIMATE", "EVAL", "EVALNAME",
+ "EVALUATE", "EVALUATION", "EVENTS", "EVERY", "EXCEPT",
+ "EXCEPTION", "EXCEPTION_INIT", "EXCEPTIONS", "EXCHANGE",
+ "EXCLUDE", "EXCLUDING", "EXCLUSIVE", "EXECUTE", "EXEMPT",
+ "EXISTING", "EXISTS", "EXISTSNODE", "EXIT", "EXPAND_GSET_TO_UNION",
+ "EXPAND_TABLE", "EXP", "EXPIRE", "EXPLAIN", "EXPLOSION",
+ "EXPORT", "EXPR_CORR_CHECK", "EXPRESS", "EXTENDS",
+ "EXTENT", "EXTENTS", "EXTERNAL", "EXTERNALLY", "EXTRACTCLOBXML",
+ "EXTRACT", "EXTRACTVALUE", "EXTRA", "FACILITY", "FACT",
+ "FACTOR", "FACTORIZE_JOIN", "FAILED", "FAILED_LOGIN_ATTEMPTS",
+ "FAILGROUP", "FAILOVER", "FAILURE", "FALSE", "FAMILY",
+ "FAR", "FAST", "FASTSTART", "FBTSCAN", "FEATURE_DETAILS",
+ "FEATURE_ID", "FEATURE_SET", "FEATURE_VALUE", "FETCH",
+ "FILE", "FILE_NAME_CONVERT", "FILESYSTEM_LIKE_LOGGING",
+ "FILTER", "FINAL", "FINE", "FINISH", "FIRST", "FIRSTM",
+ "FIRST_ROWS", "FIRST_VALUE", "FIXED_VIEW_DATA", "FLAGGER",
+ "FLASHBACK", "FLASH_CACHE", "FLOAT", "FLOB", "FLOOR",
+ "FLUSH", "FOLDER", "FOLLOWING", "FOLLOWS", "FORALL",
+ "FORCE", "FORCE_XML_QUERY_REWRITE", "FOREIGN", "FOREVER",
+ "FOR", "FORMAT", "FORWARD", "FRAGMENT_NUMBER", "FREELIST",
+ "FREELISTS", "FREEPOOLS", "FRESH", "FROM", "FROM_TZ",
+ "FULL", "FULL_OUTER_JOIN_TO_OUTER", "FUNCTION", "FUNCTIONS",
+ "GATHER_OPTIMIZER_STATISTICS", "GATHER_PLAN_STATISTICS",
+ "GBY_CONC_ROLLUP", "GBY_PUSHDOWN", "GENERATED", "GET",
+ "GLOBAL", "GLOBALLY", "GLOBAL_NAME", "GLOBAL_TOPIC_ENABLED",
+ "GOTO", "GRANT", "GROUP_BY", "GROUP", "GROUP_ID",
+ "GROUPING", "GROUPING_ID", "GROUPS", "GUARANTEED",
+ "GUARANTEE", "GUARD", "HASH_AJ", "HASH", "HASHKEYS",
+ "HASH_SJ", "HAVING", "HEADER", "HEAP", "HELP", "HEXTORAW",
+ "HEXTOREF", "HIDDEN_KEYWORD", "HIDE", "HIERARCHY",
+ "HIGH", "HINTSET_BEGIN", "HINTSET_END", "HOT", "HOUR",
+ "HWM_BROKERED", "HYBRID", "IDENTIFIED", "IDENTIFIER",
+ "IDENTITY", "IDGENERATORS", "ID", "IDLE_TIME", "IF",
+ "IGNORE", "IGNORE_OPTIM_EMBEDDED_HINTS", "IGNORE_ROW_ON_DUPKEY_INDEX",
+ "IGNORE_WHERE_CLAUSE", "ILM", "IMMEDIATE", "IMPACT",
+ "IMPORT", "INACTIVE", "INCLUDE", "INCLUDE_VERSION",
+ "INCLUDING", "INCREMENTAL", "INCREMENT", "INCR", "INDENT",
+ "INDEX_ASC", "INDEX_COMBINE", "INDEX_DESC", "INDEXED",
+ "INDEXES", "INDEX_FFS", "INDEX_FILTER", "INDEX", "INDEXING",
+ "INDEX_JOIN", "INDEX_ROWS", "INDEX_RRS", "INDEX_RS_ASC",
+ "INDEX_RS_DESC", "INDEX_RS", "INDEX_SCAN", "INDEX_SKIP_SCAN",
+ "INDEX_SS_ASC", "INDEX_SS_DESC", "INDEX_SS", "INDEX_STATS",
+ "INDEXTYPE", "INDEXTYPES", "INDICATOR", "INDICES",
+ "INFINITE", "INFORMATIONAL", "INHERIT", "IN", "INITCAP",
+ "INITIAL", "INITIALIZED", "INITIALLY", "INITRANS",
+ "INLINE", "INLINE_XMLTYPE_NT", "INMEMORY", "IN_MEMORY_METADATA",
+ "INMEMORY_PRUNING", "INNER", "INOUT", "INPLACE", "INSERTCHILDXMLAFTER",
+ "INSERTCHILDXMLBEFORE", "INSERTCHILDXML", "INSERT",
+ "INSERTXMLAFTER", "INSERTXMLBEFORE", "INSTANCE", "INSTANCES",
+ "INSTANTIABLE", "INSTANTLY", "INSTEAD", "INSTR2",
+ "INSTR4", "INSTRB", "INSTRC", "INSTR", "INTEGER",
+ "INTERLEAVED", "INTERMEDIATE", "INTERNAL_CONVERT",
+ "INTERNAL_USE", "INTERPRETED", "INTERSECT", "INTERVAL",
+ "INT", "INTO", "INVALIDATE", "INVISIBLE", "IN_XQUERY",
+ "IS", "ISOLATION", "ISOLATION_LEVEL", "ITERATE", "ITERATION_NUMBER",
+ "JAVA", "JOB", "JOIN", "JSON_ARRAYAGG", "JSON_ARRAY",
+ "JSON_EQUAL", "JSON_EXISTS2", "JSON_EXISTS", "JSONGET",
+ "JSON", "JSON_OBJECTAGG", "JSON_OBJECT", "JSONPARSE",
+ "JSON_QUERY", "JSON_SERIALIZE", "JSON_TABLE", "JSON_TEXTCONTAINS2",
+ "JSON_TEXTCONTAINS", "JSON_VALUE", "KEEP_DUPLICATES",
+ "KEEP", "KERBEROS", "KEY", "KEY_LENGTH", "KEYSIZE",
+ "KEYS", "KEYSTORE", "KILL", "LABEL", "LANGUAGE", "LAST_DAY",
+ "LAST", "LAST_VALUE", "LATERAL", "LAX", "LAYER", "LDAP_REGISTRATION_ENABLED",
+ "LDAP_REGISTRATION", "LDAP_REG_SYNC_INTERVAL", "LEADING",
+ "LEFT", "LENGTH2", "LENGTH4", "LENGTHB", "LENGTHC",
+ "LENGTH", "LESS", "LEVEL", "LEVELS", "LIBRARY", "LIFECYCLE",
+ "LIFE", "LIFETIME", "LIKE2", "LIKE4", "LIKEC", "LIKE_EXPAND",
+ "LIKE", "LIMIT", "LINEAR", "LINK", "LIST", "LN", "LNNVL",
+ "LOAD", "LOB", "LOBNVL", "LOBS", "LOCAL_INDEXES",
+ "LOCAL", "LOCALTIME", "LOCALTIMESTAMP", "LOCATION",
+ "LOCATOR", "LOCKED", "LOCKING", "LOCK", "LOGFILE",
+ "LOGFILES", "LOGGING", "LOGICAL", "LOGICAL_READS_PER_CALL",
+ "LOGICAL_READS_PER_SESSION", "LOG", "LOGMINING", "LOGOFF",
+ "LOGON", "LOG_READ_ONLY_VIOLATIONS", "LONG", "LOOP",
+ "LOWER", "LOW", "LPAD", "LTRIM", "MAIN", "MAKE_REF",
+ "MANAGED", "MANAGE", "MANAGEMENT", "MANAGER", "MANUAL",
+ "MAP", "MAPPING", "MASTER", "MATCHED", "MATCHES",
+ "MATCH", "MATCH_NUMBER", "MATCH_RECOGNIZE", "MATERIALIZED",
+ "MATERIALIZE", "MAXARCHLOGS", "MAXDATAFILES", "MAXEXTENTS",
+ "MAXIMIZE", "MAXINSTANCES", "MAXLOGFILES", "MAXLOGHISTORY",
+ "MAXLOGMEMBERS", "MAX_SHARED_TEMP_SIZE", "MAXSIZE",
+ "MAXTRANS", "MAXVALUE", "MEASURE", "MEASURES", "MEDIUM",
+ "MEMBER", "MEMCOMPRESS", "MEMORY", "MERGEACTIONS",
+ "MERGE_AJ", "MERGE_CONST_ON", "MERGE", "MERGE_SJ",
+ "METADATA", "METHOD", "MIGRATE", "MIGRATION", "MINEXTENTS",
+ "MINIMIZE", "MINIMUM", "MINING", "MINUS", "MINUS_NULL",
+ "MINUTE", "MINVALUE", "MIRRORCOLD", "MIRRORHOT", "MIRROR",
+ "MLSLABEL", "MODEL_COMPILE_SUBQUERY", "MODEL_DONTVERIFY_UNIQUENESS",
+ "MODEL_DYNAMIC_SUBQUERY", "MODEL_MIN_ANALYSIS", "MODEL",
+ "MODEL_NB", "MODEL_NO_ANALYSIS", "MODEL_PBY", "MODEL_PUSH_REF",
+ "MODEL_SV", "MODE", "MODIFICATION", "MODIFY_COLUMN_TYPE",
+ "MODIFY", "MOD", "MODULE", "MONITORING", "MONITOR",
+ "MONTH", "MONTHS_BETWEEN", "MONTHS", "MOUNT", "MOUNTPATH",
+ "MOVEMENT", "MOVE", "MULTIDIMENSIONAL", "MULTISET",
+ "MV_MERGE", "NAMED", "NAME", "NAMESPACE", "NAN", "NANVL",
+ "NATIONAL", "NATIVE_FULL_OUTER_JOIN", "NATIVE", "NATURAL",
+ "NATURALN", "NAV", "NCHAR_CS", "NCHAR", "NCHR", "NCLOB",
+ "NEEDED", "NEG", "NESTED", "NESTED_TABLE_FAST_INSERT",
+ "NESTED_TABLE_GET_REFS", "NESTED_TABLE_ID", "NESTED_TABLE_SET_REFS",
+ "NESTED_TABLE_SET_SETID", "NETWORK", "NEVER", "NEW",
+ "NEW_TIME", "NEXT_DAY", "NEXT", "NL_AJ", "NLJ_BATCHING",
+ "NLJ_INDEX_FILTER", "NLJ_INDEX_SCAN", "NLJ_PREFETCH",
+ "NLS_CALENDAR", "NLS_CHARACTERSET", "NLS_CHARSET_DECL_LEN",
+ "NLS_CHARSET_ID", "NLS_CHARSET_NAME", "NLS_COMP",
+ "NLS_CURRENCY", "NLS_DATE_FORMAT", "NLS_DATE_LANGUAGE",
+ "NLS_INITCAP", "NLS_ISO_CURRENCY", "NL_SJ", "NLS_LANG",
+ "NLS_LANGUAGE", "NLS_LENGTH_SEMANTICS", "NLS_LOWER",
+ "NLS_NCHAR_CONV_EXCP", "NLS_NUMERIC_CHARACTERS", "NLS_SORT",
+ "NLSSORT", "NLS_SPECIAL_CHARS", "NLS_TERRITORY", "NLS_UPPER",
+ "NO_ACCESS", "NO_ADAPTIVE_PLAN", "NO_ANSI_REARCH",
+ "NOAPPEND", "NOARCHIVELOG", "NOAUDIT", "NO_AUTO_REOPTIMIZE",
+ "NO_BASETABLE_MULTIMV_REWRITE", "NO_BATCH_TABLE_ACCESS_BY_ROWID",
+ "NO_BIND_AWARE", "NO_BUFFER", "NOCACHE", "NO_CARTESIAN",
+ "NO_CHECK_ACL_REWRITE", "NO_CLUSTER_BY_ROWID", "NO_CLUSTERING",
+ "NO_COALESCE_SQ", "NO_COMMON_DATA", "NOCOMPRESS",
+ "NO_CONNECT_BY_CB_WHR_ONLY", "NO_CONNECT_BY_COMBINE_SW",
+ "NO_CONNECT_BY_COST_BASED", "NO_CONNECT_BY_ELIM_DUPS",
+ "NO_CONNECT_BY_FILTERING", "NOCOPY", "NO_COST_XML_QUERY_REWRITE",
+ "NO_CPU_COSTING", "NOCPU_COSTING", "NOCYCLE", "NO_DATA_SECURITY_REWRITE",
+ "NO_DECORRELATE", "NODELAY", "NO_DOMAIN_INDEX_FILTER",
+ "NO_DST_UPGRADE_INSERT_CONV", "NO_ELIM_GROUPBY", "NO_ELIMINATE_JOIN",
+ "NO_ELIMINATE_OBY", "NO_ELIMINATE_OUTER_JOIN", "NOENTITYESCAPING",
+ "NO_EXPAND_GSET_TO_UNION", "NO_EXPAND", "NO_EXPAND_TABLE",
+ "NO_FACT", "NO_FACTORIZE_JOIN", "NO_FILTERING", "NOFORCE",
+ "NO_FULL_OUTER_JOIN_TO_OUTER", "NO_GATHER_OPTIMIZER_STATISTICS",
+ "NO_GBY_PUSHDOWN", "NOGUARANTEE", "NO_INDEX_FFS",
+ "NO_INDEX", "NO_INDEX_SS", "NO_INMEMORY", "NO_INMEMORY_PRUNING",
+ "NOKEEP", "NO_LOAD", "NOLOCAL", "NOLOGGING", "NOMAPPING",
+ "NOMAXVALUE", "NO_MERGE", "NOMINIMIZE", "NOMINVALUE",
+ "NO_MODEL_PUSH_REF", "NO_MONITORING", "NOMONITORING",
+ "NO_MONITOR", "NO_MULTIMV_REWRITE", "NO_NATIVE_FULL_OUTER_JOIN",
+ "NONBLOCKING", "NONEDITIONABLE", "NONE", "NO_NLJ_BATCHING",
+ "NO_NLJ_PREFETCH", "NO", "NONSCHEMA", "NO_OBJECT_LINK",
+ "NOORDER", "NO_ORDER_ROLLUPS", "NO_OUTER_JOIN_TO_ANTI",
+ "NO_OUTER_JOIN_TO_INNER", "NOOVERRIDE", "NO_PARALLEL_INDEX",
+ "NOPARALLEL_INDEX", "NO_PARALLEL", "NOPARALLEL", "NO_PARTIAL_COMMIT",
+ "NO_PARTIAL_JOIN", "NO_PARTIAL_ROLLUP_PUSHDOWN", "NOPARTITION",
+ "NO_PLACE_DISTINCT", "NO_PLACE_GROUP_BY", "NO_PQ_CONCURRENT_UNION",
+ "NO_PQ_MAP", "NO_PQ_REPLICATE", "NO_PQ_SKEW", "NO_PRUNE_GSETS",
+ "NO_PULL_PRED", "NO_PUSH_PRED", "NO_PUSH_SUBQ", "NO_PX_FAULT_TOLERANCE",
+ "NO_PX_JOIN_FILTER", "NO_QKN_BUFF", "NO_QUERY_TRANSFORMATION",
+ "NO_REF_CASCADE", "NORELOCATE", "NORELY", "NOREPAIR",
+ "NOREPLAY", "NORESETLOGS", "NO_RESULT_CACHE", "NOREVERSE",
+ "NO_REWRITE", "NOREWRITE", "NORMAL", "NO_ROOT_SW_FOR_LOCAL",
+ "NOROWDEPENDENCIES", "NOSCHEMACHECK", "NOSEGMENT",
+ "NO_SEMIJOIN", "NO_SEMI_TO_INNER", "NO_SET_TO_JOIN",
+ "NOSORT", "NO_SQL_TRANSLATION", "NO_SQL_TUNE", "NO_STAR_TRANSFORMATION",
+ "NO_STATEMENT_QUEUING", "NO_STATS_GSETS", "NOSTRICT",
+ "NO_SUBQUERY_PRUNING", "NO_SUBSTRB_PAD", "NO_SWAP_JOIN_INPUTS",
+ "NOSWITCH", "NO_TABLE_LOOKUP_BY_NL", "NO_TEMP_TABLE",
+ "NOTHING", "NOTIFICATION", "NOT", "NO_TRANSFORM_DISTINCT_AGG",
+ "NO_UNNEST", "NO_USE_CUBE", "NO_USE_HASH_AGGREGATION",
+ "NO_USE_HASH_GBY_FOR_PUSHDOWN", "NO_USE_HASH", "NO_USE_INVISIBLE_INDEXES",
+ "NO_USE_MERGE", "NO_USE_NL", "NO_USE_VECTOR_AGGREGATION",
+ "NOVALIDATE", "NO_VECTOR_TRANSFORM_DIMS", "NO_VECTOR_TRANSFORM_FACT",
+ "NO_VECTOR_TRANSFORM", "NOWAIT", "NO_XDB_FASTPATH_INSERT",
+ "NO_XML_DML_REWRITE", "NO_XMLINDEX_REWRITE_IN_SELECT",
+ "NO_XMLINDEX_REWRITE", "NO_XML_QUERY_REWRITE", "NO_ZONEMAP",
+ "NTH_VALUE", "NULLIF", "NULL_", "NULLS", "NUMBER",
+ "NUMERIC", "NUM_INDEX_KEYS", "NUMTODSINTERVAL", "NUMTOYMINTERVAL",
+ "NVARCHAR2", "NVL2", "OBJECT2XML", "OBJECT", "OBJ_ID",
+ "OBJNO", "OBJNO_REUSE", "OCCURENCES", "OFFLINE", "OFF",
+ "OFFSET", "OF", "OIDINDEX", "OID", "OLAP", "OLD",
+ "OLD_PUSH_PRED", "OLS", "OLTP", "OMIT", "ONE", "ONLINE",
+ "ONLINELOG", "ONLY", "ON", "OPAQUE", "OPAQUE_TRANSFORM",
+ "OPAQUE_XCANONICAL", "OPCODE", "OPEN", "OPERATIONS",
+ "OPERATOR", "OPT_ESTIMATE", "OPTIMAL", "OPTIMIZE",
+ "OPTIMIZER_FEATURES_ENABLE", "OPTIMIZER_GOAL", "OPTION",
+ "OPT_PARAM", "ORA_BRANCH", "ORA_CHECK_ACL", "ORA_CHECK_PRIVILEGE",
+ "ORA_CLUSTERING", "ORADATA", "ORADEBUG", "ORA_DST_AFFECTED",
+ "ORA_DST_CONVERT", "ORA_DST_ERROR", "ORA_GET_ACLIDS",
+ "ORA_GET_PRIVILEGES", "ORA_HASH", "ORA_INVOKING_USERID",
+ "ORA_INVOKING_USER", "ORA_INVOKING_XS_USER_GUID",
+ "ORA_INVOKING_XS_USER", "ORA_RAWCOMPARE", "ORA_RAWCONCAT",
+ "ORA_ROWSCN", "ORA_ROWSCN_RAW", "ORA_ROWVERSION",
+ "ORA_TABVERSION", "ORA_WRITE_TIME", "ORDERED", "ORDERED_PREDICATES",
+ "ORDER", "ORDINALITY", "OR_EXPAND", "ORGANIZATION",
+ "OR", "OR_PREDICATES", "OSERROR", "OTHER", "OUTER_JOIN_TO_ANTI",
+ "OUTER_JOIN_TO_INNER", "OUTER", "OUTLINE_LEAF", "OUTLINE",
+ "OUT_OF_LINE", "OUT", "OVERFLOW_NOMOVE", "OVERFLOW",
+ "OVERLAPS", "OVER", "OVERRIDING", "OWNER", "OWNERSHIP",
+ "OWN", "PACKAGE", "PACKAGES", "PARALLEL_ENABLE", "PARALLEL_INDEX",
+ "PARALLEL", "PARAMETERFILE", "PARAMETERS", "PARAM",
+ "PARENT", "PARITY", "PARTIAL_JOIN", "PARTIALLY", "PARTIAL",
+ "PARTIAL_ROLLUP_PUSHDOWN", "PARTITION_HASH", "PARTITION_LIST",
+ "PARTITION", "PARTITION_RANGE", "PARTITIONS", "PARTNUMINST",
+ "PASSING", "PASSWORD_GRACE_TIME", "PASSWORD_LIFE_TIME",
+ "PASSWORD_LOCK_TIME", "PASSWORD", "PASSWORD_REUSE_MAX",
+ "PASSWORD_REUSE_TIME", "PASSWORD_VERIFY_FUNCTION",
+ "PAST", "PATCH", "PATH", "PATH_PREFIX", "PATHS", "PATTERN",
+ "PBL_HS_BEGIN", "PBL_HS_END", "PCTFREE", "PCTINCREASE",
+ "PCTTHRESHOLD", "PCTUSED", "PCTVERSION", "PENDING",
+ "PERCENT_FOUND", "PERCENT_ISOPEN", "PERCENT_NOTFOUND",
+ "PERCENT_KEYWORD", "PERCENT_RANKM", "PERCENT_ROWCOUNT",
+ "PERCENT_ROWTYPE", "PERCENT_TYPE", "PERFORMANCE",
+ "PERIOD_KEYWORD", "PERMANENT", "PERMISSION", "PERMUTE",
+ "PER", "PFILE", "PHYSICAL", "PIKEY", "PIPELINED",
+ "PIPE", "PIV_GB", "PIVOT", "PIV_SSF", "PLACE_DISTINCT",
+ "PLACE_GROUP_BY", "PLAN", "PLSCOPE_SETTINGS", "PLS_INTEGER",
+ "PLSQL_CCFLAGS", "PLSQL_CODE_TYPE", "PLSQL_DEBUG",
+ "PLSQL_OPTIMIZE_LEVEL", "PLSQL_WARNINGS", "PLUGGABLE",
+ "POINT", "POLICY", "POOL_16K", "POOL_2K", "POOL_32K",
+ "POOL_4K", "POOL_8K", "POSITIVEN", "POSITIVE", "POST_TRANSACTION",
+ "POWERMULTISET_BY_CARDINALITY", "POWERMULTISET", "POWER",
+ "PQ_CONCURRENT_UNION", "PQ_DISTRIBUTE", "PQ_DISTRIBUTE_WINDOW",
+ "PQ_FILTER", "PQ_MAP", "PQ_NOMAP", "PQ_REPLICATE",
+ "PQ_SKEW", "PRAGMA", "PREBUILT", "PRECEDES", "PRECEDING",
+ "PRECISION", "PRECOMPUTE_SUBQUERY", "PREDICATE_REORDERS",
+ "PRELOAD", "PREPARE", "PRESENTNNV", "PRESENT", "PRESENTV",
+ "PRESERVE_OID", "PRESERVE", "PRETTY", "PREVIOUS",
+ "PREV", "PRIMARY", "PRINTBLOBTOCLOB", "PRIORITY",
+ "PRIOR", "PRIVATE", "PRIVATE_SGA", "PRIVILEGED", "PRIVILEGE",
+ "PRIVILEGES", "PROCEDURAL", "PROCEDURE", "PROCESS",
+ "PROFILE", "PROGRAM", "PROJECT", "PROPAGATE", "PROTECTED",
+ "PROTECTION", "PROXY", "PRUNING", "PUBLIC", "PULL_PRED",
+ "PURGE", "PUSH_PRED", "PUSH_SUBQ", "PX_FAULT_TOLERANCE",
+ "PX_GRANULE", "PX_JOIN_FILTER", "QB_NAME", "QUERY_BLOCK",
+ "QUERY", "QUEUE_CURR", "QUEUE", "QUEUE_ROWP", "QUIESCE",
+ "QUORUM", "QUOTA", "RAISE", "RANDOM_LOCAL", "RANDOM",
+ "RANGE", "RANKM", "RAPIDLY", "RAW", "RAWTOHEX", "RAWTONHEX",
+ "RBA", "RBO_OUTLINE", "RDBA", "READ", "READS", "REALM",
+ "REAL", "REBALANCE", "REBUILD", "RECORD", "RECORDS_PER_BLOCK",
+ "RECOVERABLE", "RECOVER", "RECOVERY", "RECYCLEBIN",
+ "RECYCLE", "REDACTION", "REDEFINE", "REDO", "REDUCED",
+ "REDUNDANCY", "REF_CASCADE_CURSOR", "REFERENCED",
+ "REFERENCE", "REFERENCES", "REFERENCING", "REF", "REFRESH",
+ "REFTOHEX", "REGEXP_COUNT", "REGEXP_INSTR", "REGEXP_LIKE",
+ "REGEXP_REPLACE", "REGEXP_SUBSTR", "REGISTER", "REGR_AVGX",
+ "REGR_AVGY", "REGR_COUNT", "REGR_INTERCEPT", "REGR_R2",
+ "REGR_SLOPE", "REGR_SXX", "REGR_SXY", "REGR_SYY",
+ "REGULAR", "REJECT", "REKEY", "RELATIONAL", "RELIES_ON",
+ "RELOCATE", "RELY", "REMAINDER", "REMOTE_MAPPED",
+ "REMOVE", "RENAME", "REPAIR", "REPEAT", "REPLACE",
+ "REPLICATION", "REQUIRED", "RESETLOGS", "RESET", "RESIZE",
+ "RESOLVE", "RESOLVER", "RESOURCE", "RESPECT", "RESTART",
+ "RESTORE_AS_INTERVALS", "RESTORE", "RESTRICT_ALL_REF_CONS",
+ "RESTRICTED", "RESTRICT_REFERENCES", "RESTRICT", "RESULT_CACHE",
+ "RESULT", "RESUMABLE", "RESUME", "RETENTION", "RETRY_ON_ROW_CHANGE",
+ "RETURNING", "RETURN", "REUSE", "REVERSE", "REVOKE",
+ "REWRITE_OR_ERROR", "REWRITE", "RIGHT", "ROLE", "ROLESET",
+ "ROLES", "ROLLBACK", "ROLLING", "ROLLUP", "ROWDEPENDENCIES",
+ "ROWID_MAPPING_TABLE", "ROWID", "ROWIDTOCHAR", "ROWIDTONCHAR",
+ "ROW_LENGTH", "ROWNUM", "ROW", "ROWS", "RPAD", "RTRIM",
+ "RULE", "RULES", "RUNNING", "SALT", "SAMPLE", "SAVE_AS_INTERVALS",
+ "SAVEPOINT", "SAVE", "SB4", "SCALE_ROWS", "SCALE",
+ "SCAN_INSTANCES", "SCAN", "SCHEDULER", "SCHEMACHECK",
+ "SCHEMA", "SCN_ASCENDING", "SCN", "SCOPE", "SCRUB",
+ "SD_ALL", "SD_INHIBIT", "SDO_GEOM_MBR", "SD_SHOW",
+ "SEARCH", "SECOND", "SECRET", "SECUREFILE_DBA", "SECUREFILE",
+ "SECURITY", "SEED", "SEG_BLOCK", "SEG_FILE", "SEGMENT",
+ "SELECTIVITY", "SELECT", "SELF", "SEMIJOIN_DRIVER",
+ "SEMIJOIN", "SEMI_TO_INNER", "SEQUENCED", "SEQUENCE",
+ "SEQUENTIAL", "SEQ", "SERIALIZABLE", "SERIALLY_REUSABLE",
+ "SERIAL", "SERVERERROR", "SERVICE_NAME_CONVERT", "SERVICES",
+ "SESSION_CACHED_CURSORS", "SESSION", "SESSIONS_PER_USER",
+ "SESSIONTIMEZONE", "SESSIONTZNAME", "SET", "SETS",
+ "SETTINGS", "SET_TO_JOIN", "SEVERE", "SHARED_POOL",
+ "SHARED", "SHARE", "SHARING", "SHELFLIFE", "SHOW",
+ "SHRINK", "SHUTDOWN", "SIBLINGS", "SID", "SIGNAL_COMPONENT",
+ "SIGNAL_FUNCTION", "SIGN", "SIGNTYPE", "SIMPLE_INTEGER",
+ "SIMPLE", "SINGLE", "SINGLETASK", "SINH", "SIN", "SIZE",
+ "SKIP_EXT_OPTIMIZER", "SKIP_", "SKIP_UNQ_UNUSABLE_IDX",
+ "SKIP_UNUSABLE_INDEXES", "SMALLFILE", "SMALLINT",
+ "SNAPSHOT", "SOME", "SORT", "SOUNDEX", "SOURCE_FILE_DIRECTORY",
+ "SOURCE_FILE_NAME_CONVERT", "SOURCE", "SPACE_KEYWORD",
+ "SPECIFICATION", "SPFILE", "SPLIT", "SPREADSHEET",
+ "SQLDATA", "SQLERROR", "SQLLDR", "SQL", "SQL_TRACE",
+ "SQL_TRANSLATION_PROFILE", "SQRT", "STALE", "STANDALONE",
+ "STANDARD_HASH", "STANDBY_MAX_DATA_DELAY", "STANDBYS",
+ "STANDBY", "STAR", "STAR_TRANSFORMATION", "START",
+ "STARTUP", "STATEMENT_ID", "STATEMENT_QUEUING", "STATEMENTS",
+ "STATEMENT", "STATE", "STATIC", "STATISTICS", "STATS_BINOMIAL_TEST",
+ "STATS_CROSSTAB", "STATS_F_TEST", "STATS_KS_TEST",
+ "STATS_MODE", "STATS_MW_TEST", "STATS_ONE_WAY_ANOVA",
+ "STATS_T_TEST_INDEP", "STATS_T_TEST_INDEPU", "STATS_T_TEST_ONE",
+ "STATS_T_TEST_PAIRED", "STATS_WSR_TEST", "STDDEV_POP",
+ "STDDEV_SAMP", "STOP", "STORAGE", "STORE", "STREAMS",
+ "STREAM", "STRICT", "STRING", "STRIPE_COLUMNS", "STRIPE_WIDTH",
+ "STRIP", "STRUCTURE", "SUBMULTISET", "SUBPARTITION_REL",
+ "SUBPARTITIONS", "SUBPARTITION", "SUBQUERIES", "SUBQUERY_PRUNING",
+ "SUBSCRIBE", "SUBSET", "SUBSTITUTABLE", "SUBSTR2",
+ "SUBSTR4", "SUBSTRB", "SUBSTRC", "SUBTYPE", "SUCCESSFUL",
+ "SUCCESS", "SUMMARY", "SUPPLEMENTAL", "SUSPEND", "SWAP_JOIN_INPUTS",
+ "SWITCHOVER", "SWITCH", "SYNCHRONOUS", "SYNC", "SYNONYM",
+ "SYSASM", "SYS_AUDIT", "SYSAUX", "SYSBACKUP", "SYS_CHECKACL",
+ "SYS_CHECK_PRIVILEGE", "SYS_CONNECT_BY_PATH", "SYS_CONTEXT",
+ "SYSDATE", "SYSDBA", "SYS_DBURIGEN", "SYSDG", "SYS_DL_CURSOR",
+ "SYS_DM_RXFORM_CHR", "SYS_DM_RXFORM_NUM", "SYS_DOM_COMPARE",
+ "SYS_DST_PRIM2SEC", "SYS_DST_SEC2PRIM", "SYS_ET_BFILE_TO_RAW",
+ "SYS_ET_BLOB_TO_IMAGE", "SYS_ET_IMAGE_TO_BLOB", "SYS_ET_RAW_TO_BFILE",
+ "SYS_EXTPDTXT", "SYS_EXTRACT_UTC", "SYS_FBT_INSDEL",
+ "SYS_FILTER_ACLS", "SYS_FNMATCHES", "SYS_FNREPLACE",
+ "SYS_GET_ACLIDS", "SYS_GET_COL_ACLIDS", "SYS_GET_PRIVILEGES",
+ "SYS_GETTOKENID", "SYS_GETXTIVAL", "SYS_GUID", "SYSGUID",
+ "SYSKM", "SYS_MAKE_XMLNODEID", "SYS_MAKEXML", "SYS_MKXMLATTR",
+ "SYS_MKXTI", "SYSOBJ", "SYS_OP_ADT2BIN", "SYS_OP_ADTCONS",
+ "SYS_OP_ALSCRVAL", "SYS_OP_ATG", "SYS_OP_BIN2ADT",
+ "SYS_OP_BITVEC", "SYS_OP_BL2R", "SYS_OP_BLOOM_FILTER_LIST",
+ "SYS_OP_BLOOM_FILTER", "SYS_OP_C2C", "SYS_OP_CAST",
+ "SYS_OP_CEG", "SYS_OP_CL2C", "SYS_OP_COMBINED_HASH",
+ "SYS_OP_COMP", "SYS_OP_CONVERT", "SYS_OP_COUNTCHG",
+ "SYS_OP_CSCONV", "SYS_OP_CSCONVTEST", "SYS_OP_CSR",
+ "SYS_OP_CSX_PATCH", "SYS_OP_CYCLED_SEQ", "SYS_OP_DECOMP",
+ "SYS_OP_DESCEND", "SYS_OP_DISTINCT", "SYS_OP_DRA",
+ "SYS_OP_DUMP", "SYS_OP_DV_CHECK", "SYS_OP_ENFORCE_NOT_NULL",
+ "SYSOPER", "SYS_OP_EXTRACT", "SYS_OP_GROUPING", "SYS_OP_GUID",
+ "SYS_OP_HASH", "SYS_OP_IIX", "SYS_OP_ITR", "SYS_OP_KEY_VECTOR_CREATE",
+ "SYS_OP_KEY_VECTOR_FILTER_LIST", "SYS_OP_KEY_VECTOR_FILTER",
+ "SYS_OP_KEY_VECTOR_SUCCEEDED", "SYS_OP_KEY_VECTOR_USE",
+ "SYS_OP_LBID", "SYS_OP_LOBLOC2BLOB", "SYS_OP_LOBLOC2CLOB",
+ "SYS_OP_LOBLOC2ID", "SYS_OP_LOBLOC2NCLOB", "SYS_OP_LOBLOC2TYP",
+ "SYS_OP_LSVI", "SYS_OP_LVL", "SYS_OP_MAKEOID", "SYS_OP_MAP_NONNULL",
+ "SYS_OP_MSR", "SYS_OP_NICOMBINE", "SYS_OP_NIEXTRACT",
+ "SYS_OP_NII", "SYS_OP_NIX", "SYS_OP_NOEXPAND", "SYS_OP_NTCIMG",
+ "SYS_OP_NUMTORAW", "SYS_OP_OIDVALUE", "SYS_OP_OPNSIZE",
+ "SYS_OP_PAR_1", "SYS_OP_PARGID_1", "SYS_OP_PARGID",
+ "SYS_OP_PAR", "SYS_OP_PART_ID", "SYS_OP_PIVOT", "SYS_OP_R2O",
+ "SYS_OP_RAWTONUM", "SYS_OP_RDTM", "SYS_OP_REF", "SYS_OP_RMTD",
+ "SYS_OP_ROWIDTOOBJ", "SYS_OP_RPB", "SYS_OPTLOBPRBSC",
+ "SYS_OP_TOSETID", "SYS_OP_TPR", "SYS_OP_TRTB", "SYS_OPTXICMP",
+ "SYS_OPTXQCASTASNQ", "SYS_OP_UNDESCEND", "SYS_OP_VECAND",
+ "SYS_OP_VECBIT", "SYS_OP_VECOR", "SYS_OP_VECXOR",
+ "SYS_OP_VERSION", "SYS_OP_VREF", "SYS_OP_VVD", "SYS_OP_XMLCONS_FOR_CSX",
+ "SYS_OP_XPTHATG", "SYS_OP_XPTHIDX", "SYS_OP_XPTHOP",
+ "SYS_OP_XTXT2SQLT", "SYS_OP_ZONE_ID", "SYS_ORDERKEY_DEPTH",
+ "SYS_ORDERKEY_MAXCHILD", "SYS_ORDERKEY_PARENT", "SYS_PARALLEL_TXN",
+ "SYS_PATHID_IS_ATTR", "SYS_PATHID_IS_NMSPC", "SYS_PATHID_LASTNAME",
+ "SYS_PATHID_LASTNMSPC", "SYS_PATH_REVERSE", "SYS_PXQEXTRACT",
+ "SYS_RAW_TO_XSID", "SYS_RID_ORDER", "SYS_ROW_DELTA",
+ "SYS_SC_2_XMLT", "SYS_SYNRCIREDO", "SYSTEM_DEFINED",
+ "SYSTEM", "SYSTIMESTAMP", "SYS_TYPEID", "SYS_UMAKEXML",
+ "SYS_XMLANALYZE", "SYS_XMLCONTAINS", "SYS_XMLCONV",
+ "SYS_XMLEXNSURI", "SYS_XMLGEN", "SYS_XMLI_LOC_ISNODE",
+ "SYS_XMLI_LOC_ISTEXT", "SYS_XMLINSTR", "SYS_XMLLOCATOR_GETSVAL",
+ "SYS_XMLNODEID_GETCID", "SYS_XMLNODEID_GETLOCATOR",
+ "SYS_XMLNODEID_GETOKEY", "SYS_XMLNODEID_GETPATHID",
+ "SYS_XMLNODEID_GETPTRID", "SYS_XMLNODEID_GETRID",
+ "SYS_XMLNODEID_GETSVAL", "SYS_XMLNODEID_GETTID", "SYS_XMLNODEID",
+ "SYS_XMLT_2_SC", "SYS_XMLTRANSLATE", "SYS_XMLTYPE2SQL",
+ "SYS_XQ_ASQLCNV", "SYS_XQ_ATOMCNVCHK", "SYS_XQBASEURI",
+ "SYS_XQCASTABLEERRH", "SYS_XQCODEP2STR", "SYS_XQCODEPEQ",
+ "SYS_XQCON2SEQ", "SYS_XQCONCAT", "SYS_XQDELETE", "SYS_XQDFLTCOLATION",
+ "SYS_XQDOC", "SYS_XQDOCURI", "SYS_XQDURDIV", "SYS_XQED4URI",
+ "SYS_XQENDSWITH", "SYS_XQERRH", "SYS_XQERR", "SYS_XQESHTMLURI",
+ "SYS_XQEXLOBVAL", "SYS_XQEXSTWRP", "SYS_XQEXTRACT",
+ "SYS_XQEXTRREF", "SYS_XQEXVAL", "SYS_XQFB2STR", "SYS_XQFNBOOL",
+ "SYS_XQFNCMP", "SYS_XQFNDATIM", "SYS_XQFNLNAME", "SYS_XQFNNM",
+ "SYS_XQFNNSURI", "SYS_XQFNPREDTRUTH", "SYS_XQFNQNM",
+ "SYS_XQFNROOT", "SYS_XQFORMATNUM", "SYS_XQFTCONTAIN",
+ "SYS_XQFUNCR", "SYS_XQGETCONTENT", "SYS_XQINDXOF",
+ "SYS_XQINSERT", "SYS_XQINSPFX", "SYS_XQIRI2URI", "SYS_XQLANG",
+ "SYS_XQLLNMFRMQNM", "SYS_XQMKNODEREF", "SYS_XQNILLED",
+ "SYS_XQNODENAME", "SYS_XQNORMSPACE", "SYS_XQNORMUCODE",
+ "SYS_XQ_NRNG", "SYS_XQNSP4PFX", "SYS_XQNSPFRMQNM",
+ "SYS_XQPFXFRMQNM", "SYS_XQ_PKSQL2XML", "SYS_XQPOLYABS",
+ "SYS_XQPOLYADD", "SYS_XQPOLYCEL", "SYS_XQPOLYCSTBL",
+ "SYS_XQPOLYCST", "SYS_XQPOLYDIV", "SYS_XQPOLYFLR",
+ "SYS_XQPOLYMOD", "SYS_XQPOLYMUL", "SYS_XQPOLYRND",
+ "SYS_XQPOLYSQRT", "SYS_XQPOLYSUB", "SYS_XQPOLYUMUS",
+ "SYS_XQPOLYUPLS", "SYS_XQPOLYVEQ", "SYS_XQPOLYVGE",
+ "SYS_XQPOLYVGT", "SYS_XQPOLYVLE", "SYS_XQPOLYVLT",
+ "SYS_XQPOLYVNE", "SYS_XQREF2VAL", "SYS_XQRENAME",
+ "SYS_XQREPLACE", "SYS_XQRESVURI", "SYS_XQRNDHALF2EVN",
+ "SYS_XQRSLVQNM", "SYS_XQRYENVPGET", "SYS_XQRYVARGET",
+ "SYS_XQRYWRP", "SYS_XQSEQ2CON4XC", "SYS_XQSEQ2CON",
+ "SYS_XQSEQDEEPEQ", "SYS_XQSEQINSB", "SYS_XQSEQRM",
+ "SYS_XQSEQRVS", "SYS_XQSEQSUB", "SYS_XQSEQTYPMATCH",
+ "SYS_XQSTARTSWITH", "SYS_XQSTATBURI", "SYS_XQSTR2CODEP",
+ "SYS_XQSTRJOIN", "SYS_XQSUBSTRAFT", "SYS_XQSUBSTRBEF",
+ "SYS_XQTOKENIZE", "SYS_XQTREATAS", "SYS_XQ_UPKXML2SQL",
+ "SYS_XQXFORM", "SYS_XSID_TO_RAW", "SYS_ZMAP_FILTER",
+ "SYS_ZMAP_REFRESH", "TABLE_LOOKUP_BY_NL", "TABLESPACE_NO",
+ "TABLESPACE", "TABLES", "TABLE_STATS", "TABLE", "TABNO",
+ "TAG", "TANH", "TAN", "TBLORIDXPARTNUM", "TEMPFILE",
+ "TEMPLATE", "TEMPORARY", "TEMP_TABLE", "TEST", "TEXT",
+ "THAN", "THEN", "THE", "THREAD", "THROUGH", "TIER",
+ "TIES", "TIMEOUT", "TIMESTAMP_LTZ_UNCONSTRAINED",
+ "TIMESTAMP", "TIMESTAMP_TZ_UNCONSTRAINED", "TIMESTAMP_UNCONSTRAINED",
+ "TIMES", "TIME", "TIMEZONE", "TIMEZONE_ABBR", "TIMEZONE_HOUR",
+ "TIMEZONE_MINUTE", "TIMEZONE_OFFSET", "TIMEZONE_REGION",
+ "TIME_ZONE", "TIV_GB", "TIV_SSF", "TO_ACLID", "TO_BINARY_DOUBLE",
+ "TO_BINARY_FLOAT", "TO_BLOB", "TO_CLOB", "TO_DSINTERVAL",
+ "TO_LOB", "TO_MULTI_BYTE", "TO_NCHAR", "TO_NCLOB",
+ "TO_NUMBER", "TOPLEVEL", "TO_SINGLE_BYTE", "TO_TIMESTAMP",
+ "TO_TIMESTAMP_TZ", "TO_TIME", "TO_TIME_TZ", "TO",
+ "TO_YMINTERVAL", "TRACE", "TRACING", "TRACKING", "TRAILING",
+ "TRANSACTION", "TRANSFORM_DISTINCT_AGG", "TRANSITIONAL",
+ "TRANSITION", "TRANSLATE", "TRANSLATION", "TREAT",
+ "TRIGGERS", "TRIGGER", "TRUE", "TRUNCATE", "TRUNC",
+ "TRUSTED", "TRUST", "TUNING", "TX", "TYPES", "TYPE",
+ "TZ_OFFSET", "UB2", "UBA", "UCS2", "UID", "UNARCHIVED",
+ "UNBOUNDED", "UNBOUND", "UNCONDITIONAL", "UNDER",
+ "UNDO", "UNDROP", "UNIFORM", "UNION", "UNIQUE", "UNISTR",
+ "UNLIMITED", "UNLOAD", "UNLOCK", "UNMATCHED", "UNNEST_INNERJ_DISTINCT_VIEW",
+ "UNNEST_NOSEMIJ_NODISTINCTVIEW", "UNNEST_SEMIJ_VIEW",
+ "UNNEST", "UNPACKED", "UNPIVOT", "UNPLUG", "UNPROTECTED",
+ "UNQUIESCE", "UNRECOVERABLE", "UNRESTRICTED", "UNSUBSCRIBE",
+ "UNTIL", "UNUSABLE", "UNUSED", "UPDATABLE", "UPDATED",
+ "UPDATE", "UPDATEXML", "UPD_INDEXES", "UPD_JOININDEX",
+ "UPGRADE", "UPPER", "UPSERT", "UROWID", "USABLE",
+ "USAGE", "USE_ANTI", "USE_CONCAT", "USE_CUBE", "USE_HASH_AGGREGATION",
+ "USE_HASH_GBY_FOR_PUSHDOWN", "USE_HASH", "USE_HIDDEN_PARTITIONS",
+ "USE_INVISIBLE_INDEXES", "USE_MERGE_CARTESIAN", "USE_MERGE",
+ "USE_NL", "USE_NL_WITH_INDEX", "USE_PRIVATE_OUTLINES",
+ "USER_DATA", "USER_DEFINED", "USERENV", "USERGROUP",
+ "USER_RECYCLEBIN", "USERS", "USER_TABLESPACES", "USER",
+ "USE_SEMI", "USE_STORED_OUTLINES", "USE_TTT_FOR_GSETS",
+ "USE", "USE_VECTOR_AGGREGATION", "USE_WEAK_NAME_RESL",
+ "USING_NO_EXPAND", "USING", "UTF16BE", "UTF16LE",
+ "UTF32", "UTF8", "V1", "V2", "VALIDATE", "VALIDATION",
+ "VALID_TIME_END", "VALUES", "VALUE", "VARCHAR2", "VARCHAR",
+ "VARIABLE", "VAR_POP", "VARRAYS", "VARRAY", "VAR_SAMP",
+ "VARYING", "VECTOR_READ_TRACE", "VECTOR_READ", "VECTOR_TRANSFORM_DIMS",
+ "VECTOR_TRANSFORM_FACT", "VECTOR_TRANSFORM", "VERIFIER",
+ "VERIFY", "VERSIONING", "VERSIONS_ENDSCN", "VERSIONS_ENDTIME",
+ "VERSIONS_OPERATION", "VERSIONS_STARTSCN", "VERSIONS_STARTTIME",
+ "VERSIONS", "VERSIONS_XID", "VERSION", "VIEW", "VIOLATION",
+ "VIRTUAL", "VISIBILITY", "VISIBLE", "VOLUME", "VSIZE",
+ "WAIT", "WALLET", "WARNING", "WEEKS", "WEEK", "WELLFORMED",
+ "WHENEVER", "WHEN", "WHERE", "WHILE", "WHITESPACE",
+ "WIDTH_BUCKET", "WITHIN", "WITHOUT", "WITH_PLSQL",
+ "WITH", "WORK", "WRAPPED", "WRAPPER", "WRITE", "XDB_FASTPATH_INSERT",
+ "XDB", "X_DYN_PRUNE", "XID", "XML2OBJECT", "XMLAGG",
+ "XMLATTRIBUTES", "XMLCAST", "XMLCDATA", "XMLCOLATTVAL",
+ "XMLCOMMENT", "XMLCONCAT", "XMLDIFF", "XML_DML_RWT_STMT",
+ "XMLELEMENT", "XMLEXISTS2", "XMLEXISTS", "XMLFOREST",
+ "XMLINDEX", "XMLINDEX_REWRITE_IN_SELECT", "XMLINDEX_REWRITE",
+ "XMLINDEX_SEL_IDX_TBL", "XMLISNODE", "XMLISVALID",
+ "XMLNAMESPACES", "XMLPARSE", "XMLPATCH", "XMLPI",
+ "XMLQUERYVAL", "XMLQUERY", "XMLROOT", "XMLSCHEMA",
+ "XMLSERIALIZE", "XMLTABLE", "XMLTRANSFORMBLOB", "XMLTRANSFORM",
+ "XMLTYPE", "XML", "XPATHTABLE", "XS_SYS_CONTEXT",
+ "XS", "XTRANSPORT", "YEARS", "YEAR", "YES", "YMINTERVAL_UNCONSTRAINED",
+ "ZONEMAP", "ZONE", "PREDICTION", "PREDICTION_BOUNDS",
+ "PREDICTION_COST", "PREDICTION_DETAILS", "PREDICTION_PROBABILITY",
+ "PREDICTION_SET", "CUME_DIST", "DENSE_RANK", "LISTAGG",
+ "PERCENT_RANK", "PERCENTILE_CONT", "PERCENTILE_DISC",
+ "RANK", "AVG", "CORR", "COVAR_", "DECODE", "LAG",
+ "LEAD", "MAX", "MEDIAN", "MIN", "NTILE", "NVL", "RATIO_TO_REPORT",
+ "REGR_", "ROUND", "ROW_NUMBER", "SUBSTR", "TO_CHAR",
+ "TRIM", "SUM", "STDDEV", "VAR_", "VARIANCE", "LEAST",
+ "GREATEST", "TO_DATE", "NATIONAL_CHAR_STRING_LIT",
+ "BIT_STRING_LIT", "HEX_STRING_LIT", "DOUBLE_PERIOD",
+ "PERIOD", "UNSIGNED_INTEGER", "APPROXIMATE_NUM_LIT",
+ "CHAR_STRING", "DELIMITED_ID", "PERCENT", "AMPERSAND",
+ "LEFT_PAREN", "RIGHT_PAREN", "DOUBLE_ASTERISK", "ASTERISK",
+ "PLUS_SIGN", "MINUS_SIGN", "COMMA", "SOLIDUS", "AT_SIGN",
+ "ASSIGN_OP", "BINDVAR", "NOT_EQUAL_OP", "CARRET_OPERATOR_PART",
+ "TILDE_OPERATOR_PART", "EXCLAMATION_OPERATOR_PART",
+ "GREATER_THAN_OP", "LESS_THAN_OP", "COLON", "SEMICOLON",
+ "BAR", "EQUALS_OP", "LEFT_BRACKET", "RIGHT_BRACKET",
+ "INTRODUCER", "SINGLE_LINE_COMMENT", "MULTI_LINE_COMMENT",
+ "REMARK_COMMENT", "PROMPT_MESSAGE", "START_CMD", "REGULAR_ID",
+ "SPACES" ];
+
+var ruleNames = [ "program", "sql_script", "unit_statement", "drop_function",
+ "alter_function", "create_function_body", "parallel_enable_clause",
+ "partition_by_clause", "result_cache_clause", "relies_on_part",
+ "streaming_clause", "drop_package", "alter_package",
+ "create_package", "create_package_body", "package_obj_spec",
+ "procedure_spec", "function_spec", "package_obj_body",
+ "drop_procedure", "alter_procedure", "function_body",
+ "procedure_body", "create_procedure_body", "drop_trigger",
+ "alter_trigger", "create_trigger", "trigger_follows_clause",
+ "trigger_when_clause", "simple_dml_trigger", "for_each_row",
+ "compound_dml_trigger", "non_dml_trigger", "trigger_body",
+ "routine_clause", "compound_trigger_block", "timing_point_section",
+ "non_dml_event", "dml_event_clause", "dml_event_element",
+ "dml_event_nested_clause", "referencing_clause", "referencing_element",
+ "drop_type", "alter_type", "compile_type_clause", "replace_type_clause",
+ "alter_method_spec", "alter_method_element", "alter_attribute_definition",
+ "attribute_definition", "alter_collection_clauses", "dependent_handling_clause",
+ "dependent_exceptions_part", "create_type", "type_definition",
+ "object_type_def", "object_as_part", "object_under_part",
+ "nested_table_type_def", "sqlj_object_type", "type_body",
+ "type_body_elements", "map_order_func_declaration", "subprog_decl_in_type",
+ "proc_decl_in_type", "func_decl_in_type", "constructor_declaration",
+ "modifier_clause", "object_member_spec", "sqlj_object_type_attr",
+ "element_spec", "element_spec_options", "subprogram_spec",
+ "overriding_subprogram_spec", "overriding_function_spec",
+ "type_procedure_spec", "type_function_spec", "constructor_spec",
+ "map_order_function_spec", "pragma_clause", "pragma_elements",
+ "type_elements_parameter", "drop_sequence", "alter_sequence",
+ "alter_session", "alter_session_set_clause", "create_sequence",
+ "sequence_spec", "sequence_start_clause", "create_index",
+ "cluster_index_clause", "cluster_name", "table_index_clause",
+ "bitmap_join_index_clause", "index_expr", "index_properties",
+ "domain_index_clause", "local_domain_index_clause", "xmlindex_clause",
+ "local_xmlindex_clause", "global_partitioned_index",
+ "index_partitioning_clause", "local_partitioned_index",
+ "on_range_partitioned_table", "on_list_partitioned_table",
+ "partitioned_table", "on_hash_partitioned_table", "on_hash_partitioned_clause",
+ "on_comp_partitioned_table", "on_comp_partitioned_clause",
+ "index_subpartition_clause", "index_subpartition_subclause",
+ "odci_parameters", "indextype", "alter_index", "alter_index_ops_set1",
+ "alter_index_ops_set2", "visible_or_invisible", "monitoring_nomonitoring",
+ "rebuild_clause", "alter_index_partitioning", "modify_index_default_attrs",
+ "add_hash_index_partition", "coalesce_index_partition",
+ "modify_index_partition", "modify_index_partitions_ops",
+ "rename_index_partition", "drop_index_partition", "split_index_partition",
+ "index_partition_description", "modify_index_subpartition",
+ "partition_name_old", "new_partition_name", "new_index_name",
+ "create_user", "alter_user", "alter_identified_by", "identified_by",
+ "identified_other_clause", "user_tablespace_clause",
+ "quota_clause", "profile_clause", "role_clause", "user_default_role_clause",
+ "password_expire_clause", "user_lock_clause", "user_editions_clause",
+ "alter_user_editions_clause", "proxy_clause", "container_names",
+ "set_container_data", "add_rem_container_data", "container_data_clause",
+ "analyze", "partition_extention_clause", "validation_clauses",
+ "online_or_offline", "into_clause1", "partition_key_value",
+ "subpartition_key_value", "associate_statistics", "column_association",
+ "function_association", "indextype_name", "using_statistics_type",
+ "statistics_type_name", "default_cost_clause", "cpu_cost",
+ "io_cost", "network_cost", "default_selectivity_clause",
+ "default_selectivity", "storage_table_clause", "unified_auditing",
+ "policy_name", "audit_traditional", "audit_direct_path",
+ "audit_container_clause", "audit_operation_clause", "auditing_by_clause",
+ "audit_user", "audit_schema_object_clause", "sql_operation",
+ "auditing_on_clause", "model_name", "object_name", "profile_name",
+ "sql_statement_shortcut", "drop_index", "rename_object",
+ "grant_statement", "container_clause", "create_directory",
+ "directory_name", "directory_path", "alter_library",
+ "library_editionable", "library_debug", "compiler_parameters_clause",
+ "parameter_value", "library_name", "alter_view", "alter_view_editionable",
+ "create_view", "view_options", "view_alias_constraint",
+ "object_view_clause", "inline_constraint", "inline_ref_constraint",
+ "out_of_line_ref_constraint", "out_of_line_constraint",
+ "constraint_state", "alter_tablespace", "datafile_tempfile_clauses",
+ "tablespace_logging_clauses", "tablespace_group_clause",
+ "tablespace_group_name", "tablespace_state_clauses",
+ "flashback_mode_clause", "new_tablespace_name", "create_tablespace",
+ "permanent_tablespace_clause", "tablespace_encryption_spec",
+ "logging_clause", "extent_management_clause", "segment_management_clause",
+ "temporary_tablespace_clause", "undo_tablespace_clause",
+ "tablespace_retention_clause", "datafile_specification",
+ "tempfile_specification", "datafile_tempfile_spec", "redo_log_file_spec",
+ "autoextend_clause", "maxsize_clause", "build_clause",
+ "parallel_clause", "alter_materialized_view", "alter_mv_option1",
+ "alter_mv_refresh", "rollback_segment", "modify_mv_column_clause",
+ "alter_materialized_view_log", "add_mv_log_column_clause",
+ "move_mv_log_clause", "mv_log_augmentation", "datetime_expr",
+ "interval_expr", "synchronous_or_asynchronous", "including_or_excluding",
+ "create_materialized_view_log", "new_values_clause",
+ "mv_log_purge_clause", "create_materialized_view", "create_mv_refresh",
+ "create_context", "oracle_namespace", "create_cluster",
+ "create_table", "xmltype_table", "xmltype_virtual_columns",
+ "xmltype_column_properties", "xmltype_storage", "xmlschema_spec",
+ "object_table", "oid_index_clause", "oid_clause", "object_properties",
+ "object_table_substitution", "relational_table", "relational_property",
+ "table_partitioning_clauses", "range_partitions", "list_partitions",
+ "hash_partitions", "individual_hash_partitions", "hash_partitions_by_quantity",
+ "hash_partition_quantity", "composite_range_partitions",
+ "composite_list_partitions", "composite_hash_partitions",
+ "reference_partitioning", "reference_partition_desc",
+ "system_partitioning", "range_partition_desc", "list_partition_desc",
+ "subpartition_template", "hash_subpartition_quantity",
+ "subpartition_by_range", "subpartition_by_list", "subpartition_by_hash",
+ "subpartition_name", "range_subpartition_desc", "list_subpartition_desc",
+ "individual_hash_subparts", "hash_subparts_by_quantity",
+ "range_values_clause", "list_values_clause", "table_partition_description",
+ "partitioning_storage_clause", "lob_partitioning_storage",
+ "datatype_null_enable", "size_clause", "table_compression",
+ "physical_attributes_clause", "storage_clause", "deferred_segment_creation",
+ "segment_attributes_clause", "physical_properties", "row_movement_clause",
+ "flashback_archive_clause", "log_grp", "supplemental_table_logging",
+ "supplemental_log_grp_clause", "supplemental_id_key_clause",
+ "allocate_extent_clause", "deallocate_unused_clause",
+ "shrink_clause", "records_per_block_clause", "upgrade_table_clause",
+ "drop_table", "drop_view", "comment_on_column", "enable_or_disable",
+ "allow_or_disallow", "create_synonym", "comment_on_table",
+ "alter_cluster", "cache_or_nocache", "database_name",
+ "alter_database", "startup_clauses", "resetlogs_or_noresetlogs",
+ "upgrade_or_downgrade", "recovery_clauses", "begin_or_end",
+ "general_recovery", "full_database_recovery", "partial_database_recovery",
+ "partial_database_recovery_10g", "managed_standby_recovery",
+ "db_name", "database_file_clauses", "create_datafile_clause",
+ "alter_datafile_clause", "alter_tempfile_clause", "logfile_clauses",
+ "add_logfile_clauses", "log_file_group", "drop_logfile_clauses",
+ "switch_logfile_clause", "supplemental_db_logging", "add_or_drop",
+ "supplemental_plsql_clause", "logfile_descriptor", "controlfile_clauses",
+ "trace_file_clause", "standby_database_clauses", "activate_standby_db_clause",
+ "maximize_standby_db_clause", "register_logfile_clause",
+ "commit_switchover_clause", "start_standby_clause", "stop_standby_clause",
+ "convert_database_clause", "default_settings_clause",
+ "set_time_zone_clause", "instance_clauses", "security_clause",
+ "domain", "database", "edition_name", "filenumber", "filename",
+ "alter_table", "alter_table_properties", "alter_table_properties_1",
+ "alter_iot_clauses", "alter_mapping_table_clause", "alter_overflow_clause",
+ "add_overflow_clause", "enable_disable_clause", "using_index_clause",
+ "index_attributes", "sort_or_nosort", "exceptions_clause",
+ "move_table_clause", "index_org_table_clause", "mapping_table_clause",
+ "key_compression", "index_org_overflow_clause", "column_clauses",
+ "modify_collection_retrieval", "collection_item", "rename_column_clause",
+ "old_column_name", "new_column_name", "add_modify_drop_column_clauses",
+ "drop_column_clause", "modify_column_clauses", "modify_col_properties",
+ "modify_col_substitutable", "add_column_clause", "alter_varray_col_properties",
+ "varray_col_properties", "varray_storage_clause", "lob_segname",
+ "lob_item", "lob_storage_parameters", "lob_storage_clause",
+ "modify_lob_storage_clause", "modify_lob_parameters",
+ "lob_parameters", "lob_deduplicate_clause", "lob_compression_clause",
+ "lob_retention_clause", "encryption_spec", "tablespace",
+ "varray_item", "column_properties", "period_definition",
+ "start_time_column", "end_time_column", "column_definition",
+ "virtual_column_definition", "autogenerated_sequence_definition",
+ "out_of_line_part_storage", "nested_table_col_properties",
+ "nested_item", "substitutable_column_clause", "partition_name",
+ "supplemental_logging_props", "column_or_attribute",
+ "object_type_col_properties", "constraint_clauses", "old_constraint_name",
+ "new_constraint_name", "drop_constraint_clause", "drop_primary_key_or_unique_or_generic_clause",
+ "add_constraint", "add_constraint_clause", "check_constraint",
+ "drop_constraint", "enable_constraint", "disable_constraint",
+ "foreign_key_clause", "references_clause", "on_delete_clause",
+ "unique_key_clause", "primary_key_clause", "anonymous_block",
+ "invoker_rights_clause", "call_spec", "java_spec", "c_spec",
+ "c_agent_in_clause", "c_parameters_clause", "parameter",
+ "default_value_part", "seq_of_declare_specs", "declare_spec",
+ "variable_declaration", "subtype_declaration", "cursor_declaration",
+ "parameter_spec", "exception_declaration", "pragma_declaration",
+ "record_type_def", "field_spec", "ref_cursor_type_def",
+ "type_declaration", "table_type_def", "table_indexed_by_part",
+ "varray_type_def", "seq_of_statements", "label_declaration",
+ "statement", "swallow_to_semi", "assignment_statement",
+ "continue_statement", "exit_statement", "goto_statement",
+ "if_statement", "elsif_part", "else_part", "loop_statement",
+ "cursor_loop_param", "forall_statement", "bounds_clause",
+ "between_bound", "lower_bound", "upper_bound", "null_statement",
+ "raise_statement", "return_statement", "function_call",
+ "procedure_call", "pipe_row_statement", "body", "exception_handler",
+ "trigger_block", "block", "sql_statement", "execute_immediate",
+ "dynamic_returning_clause", "data_manipulation_language_statements",
+ "cursor_manipulation_statements", "close_statement",
+ "open_statement", "fetch_statement", "open_for_statement",
+ "transaction_control_statements", "set_transaction_command",
+ "set_constraint_command", "commit_statement", "write_clause",
+ "rollback_statement", "savepoint_statement", "explain_statement",
+ "select_only_statement", "select_statement", "subquery_factoring_clause",
+ "factoring_element", "search_clause", "cycle_clause",
+ "subquery", "subquery_basic_elements", "subquery_operation_part",
+ "query_block", "selected_list", "from_clause", "select_list_elements",
+ "table_ref_list", "table_ref", "table_ref_aux", "table_ref_aux_internal",
+ "join_clause", "join_on_part", "join_using_part", "outer_join_type",
+ "query_partition_clause", "flashback_query_clause", "pivot_clause",
+ "pivot_element", "pivot_for_clause", "pivot_in_clause",
+ "pivot_in_clause_element", "pivot_in_clause_elements",
+ "unpivot_clause", "unpivot_in_clause", "unpivot_in_elements",
+ "hierarchical_query_clause", "start_part", "group_by_clause",
+ "group_by_elements", "rollup_cube_clause", "grouping_sets_clause",
+ "grouping_sets_elements", "having_clause", "model_clause",
+ "cell_reference_options", "return_rows_clause", "reference_model",
+ "main_model", "model_column_clauses", "model_column_partition_part",
+ "model_column_list", "model_column", "model_rules_clause",
+ "model_rules_part", "model_rules_element", "cell_assignment",
+ "model_iterate_clause", "until_part", "order_by_clause",
+ "order_by_elements", "offset_clause", "fetch_clause",
+ "for_update_clause", "for_update_of_part", "for_update_options",
+ "update_statement", "update_set_clause", "column_based_update_set_clause",
+ "delete_statement", "insert_statement", "single_table_insert",
+ "multi_table_insert", "multi_table_element", "conditional_insert_clause",
+ "conditional_insert_when_part", "conditional_insert_else_part",
+ "insert_into_clause", "values_clause", "merge_statement",
+ "merge_update_clause", "merge_element", "merge_update_delete_part",
+ "merge_insert_clause", "selected_tableview", "lock_table_statement",
+ "wait_nowait_part", "lock_table_element", "lock_mode",
+ "general_table_ref", "static_returning_clause", "error_logging_clause",
+ "error_logging_into_part", "error_logging_reject_part",
+ "dml_table_expression_clause", "table_collection_expression",
+ "subquery_restriction_clause", "sample_clause", "seed_part",
+ "condition", "expressions", "expression", "cursor_expression",
+ "logical_expression", "unary_logical_expression", "logical_operation",
+ "multiset_expression", "relational_expression", "compound_expression",
+ "relational_operator", "in_elements", "between_elements",
+ "concatenation", "interval_expression", "model_expression",
+ "model_expression_element", "single_column_for_loop",
+ "multi_column_for_loop", "unary_expression", "case_statement",
+ "simple_case_statement", "simple_case_when_part", "searched_case_statement",
+ "searched_case_when_part", "case_else_part", "atom",
+ "quantified_expression", "string_function", "standard_function",
+ "literal", "numeric_function_wrapper", "numeric_function",
+ "other_function", "over_clause_keyword", "within_or_over_clause_keyword",
+ "standard_prediction_function_keyword", "over_clause",
+ "windowing_clause", "windowing_type", "windowing_elements",
+ "using_clause", "using_element", "collect_order_by_part",
+ "within_or_over_part", "cost_matrix_clause", "xml_passing_clause",
+ "xml_attributes_clause", "xml_namespaces_clause", "xml_table_column",
+ "xml_general_default_part", "xml_multiuse_expression_element",
+ "xmlroot_param_version_part", "xmlroot_param_standalone_part",
+ "xmlserialize_param_enconding_part", "xmlserialize_param_version_part",
+ "xmlserialize_param_ident_part", "sql_plus_command",
+ "whenever_command", "set_command", "partition_extension_clause",
+ "column_alias", "table_alias", "where_clause", "into_clause",
+ "xml_column_name", "cost_class_name", "attribute_name",
+ "savepoint_name", "rollback_segment_name", "table_var_name",
+ "schema_name", "routine_name", "package_name", "implementation_type_name",
+ "parameter_name", "reference_model_name", "main_model_name",
+ "container_tableview_name", "aggregate_function_name",
+ "query_name", "grantee_name", "role_name", "constraint_name",
+ "label_name", "type_name", "sequence_name", "exception_name",
+ "function_name", "procedure_name", "trigger_name", "variable_name",
+ "index_name", "cursor_name", "record_name", "collection_name",
+ "link_name", "column_name", "tableview_name", "xmltable",
+ "char_set_name", "synonym_name", "schema_object_name",
+ "dir_object_name", "user_object_name", "grant_object_name",
+ "column_list", "paren_column_list", "keep_clause", "function_argument",
+ "function_argument_analytic", "function_argument_modeling",
+ "respect_or_ignore_nulls", "argument", "type_spec", "datatype",
+ "precision_part", "native_datatype_element", "bind_variable",
+ "general_element", "general_element_part", "table_element",
+ "object_privilege", "system_privilege", "constant", "numeric",
+ "numeric_negative", "quoted_string", "identifier", "id_expression",
+ "outer_join_sign", "regular_id", "non_reserved_keywords_in_12c",
+ "non_reserved_keywords_pre12c", "string_function_name",
+ "numeric_function_name" ];
+
+function PlSqlParser (input) {
+ PlSqlBaseParser.call(this, input);
+ this._interp = new antlr4.atn.ParserATNSimulator(this, atn, decisionsToDFA, sharedContextCache);
+ this.ruleNames = ruleNames;
+ this.literalNames = literalNames;
+ this.symbolicNames = symbolicNames;
+ return this;
+}
+
+PlSqlParser.prototype = Object.create(PlSqlBaseParser.prototype);
+PlSqlParser.prototype.constructor = PlSqlParser;
+
+Object.defineProperty(PlSqlParser.prototype, "atn", {
+ get : function() {
+ return atn;
+ }
+});
+
+PlSqlParser.EOF = antlr4.Token.EOF;
+PlSqlParser.ABORT = 1;
+PlSqlParser.ABS = 2;
+PlSqlParser.ACCESS = 3;
+PlSqlParser.ACCESSED = 4;
+PlSqlParser.ACCOUNT = 5;
+PlSqlParser.ACL = 6;
+PlSqlParser.ACOS = 7;
+PlSqlParser.ACTION = 8;
+PlSqlParser.ACTIONS = 9;
+PlSqlParser.ACTIVATE = 10;
+PlSqlParser.ACTIVE = 11;
+PlSqlParser.ACTIVE_COMPONENT = 12;
+PlSqlParser.ACTIVE_DATA = 13;
+PlSqlParser.ACTIVE_FUNCTION = 14;
+PlSqlParser.ACTIVE_TAG = 15;
+PlSqlParser.ACTIVITY = 16;
+PlSqlParser.ADAPTIVE_PLAN = 17;
+PlSqlParser.ADD = 18;
+PlSqlParser.ADD_COLUMN = 19;
+PlSqlParser.ADD_GROUP = 20;
+PlSqlParser.ADD_MONTHS = 21;
+PlSqlParser.ADJ_DATE = 22;
+PlSqlParser.ADMIN = 23;
+PlSqlParser.ADMINISTER = 24;
+PlSqlParser.ADMINISTRATOR = 25;
+PlSqlParser.ADVANCED = 26;
+PlSqlParser.ADVISE = 27;
+PlSqlParser.ADVISOR = 28;
+PlSqlParser.AFD_DISKSTRING = 29;
+PlSqlParser.AFTER = 30;
+PlSqlParser.AGENT = 31;
+PlSqlParser.AGGREGATE = 32;
+PlSqlParser.A_LETTER = 33;
+PlSqlParser.ALIAS = 34;
+PlSqlParser.ALL = 35;
+PlSqlParser.ALLOCATE = 36;
+PlSqlParser.ALLOW = 37;
+PlSqlParser.ALL_ROWS = 38;
+PlSqlParser.ALTER = 39;
+PlSqlParser.ALWAYS = 40;
+PlSqlParser.ANALYZE = 41;
+PlSqlParser.ANCILLARY = 42;
+PlSqlParser.AND = 43;
+PlSqlParser.AND_EQUAL = 44;
+PlSqlParser.ANOMALY = 45;
+PlSqlParser.ANSI_REARCH = 46;
+PlSqlParser.ANTIJOIN = 47;
+PlSqlParser.ANY = 48;
+PlSqlParser.ANYSCHEMA = 49;
+PlSqlParser.APPEND = 50;
+PlSqlParser.APPENDCHILDXML = 51;
+PlSqlParser.APPEND_VALUES = 52;
+PlSqlParser.APPLICATION = 53;
+PlSqlParser.APPLY = 54;
+PlSqlParser.APPROX_COUNT_DISTINCT = 55;
+PlSqlParser.ARCHIVAL = 56;
+PlSqlParser.ARCHIVE = 57;
+PlSqlParser.ARCHIVED = 58;
+PlSqlParser.ARCHIVELOG = 59;
+PlSqlParser.ARRAY = 60;
+PlSqlParser.AS = 61;
+PlSqlParser.ASC = 62;
+PlSqlParser.ASCII = 63;
+PlSqlParser.ASCIISTR = 64;
+PlSqlParser.ASIN = 65;
+PlSqlParser.ASIS = 66;
+PlSqlParser.ASSEMBLY = 67;
+PlSqlParser.ASSIGN = 68;
+PlSqlParser.ASSOCIATE = 69;
+PlSqlParser.ASYNC = 70;
+PlSqlParser.ASYNCHRONOUS = 71;
+PlSqlParser.ATAN2 = 72;
+PlSqlParser.ATAN = 73;
+PlSqlParser.AT = 74;
+PlSqlParser.ATTRIBUTE = 75;
+PlSqlParser.ATTRIBUTES = 76;
+PlSqlParser.AUDIT = 77;
+PlSqlParser.AUTHENTICATED = 78;
+PlSqlParser.AUTHENTICATION = 79;
+PlSqlParser.AUTHID = 80;
+PlSqlParser.AUTHORIZATION = 81;
+PlSqlParser.AUTOALLOCATE = 82;
+PlSqlParser.AUTO = 83;
+PlSqlParser.AUTOBACKUP = 84;
+PlSqlParser.AUTOEXTEND = 85;
+PlSqlParser.AUTO_LOGIN = 86;
+PlSqlParser.AUTOMATIC = 87;
+PlSqlParser.AUTONOMOUS_TRANSACTION = 88;
+PlSqlParser.AUTO_REOPTIMIZE = 89;
+PlSqlParser.AVAILABILITY = 90;
+PlSqlParser.AVRO = 91;
+PlSqlParser.BACKGROUND = 92;
+PlSqlParser.BACKUP = 93;
+PlSqlParser.BACKUPSET = 94;
+PlSqlParser.BASIC = 95;
+PlSqlParser.BASICFILE = 96;
+PlSqlParser.BATCH = 97;
+PlSqlParser.BATCHSIZE = 98;
+PlSqlParser.BATCH_TABLE_ACCESS_BY_ROWID = 99;
+PlSqlParser.BECOME = 100;
+PlSqlParser.BEFORE = 101;
+PlSqlParser.BEGIN = 102;
+PlSqlParser.BEGINNING = 103;
+PlSqlParser.BEGIN_OUTLINE_DATA = 104;
+PlSqlParser.BEHALF = 105;
+PlSqlParser.BEQUEATH = 106;
+PlSqlParser.BETWEEN = 107;
+PlSqlParser.BFILE = 108;
+PlSqlParser.BFILENAME = 109;
+PlSqlParser.BIGFILE = 110;
+PlSqlParser.BINARY = 111;
+PlSqlParser.BINARY_DOUBLE = 112;
+PlSqlParser.BINARY_DOUBLE_INFINITY = 113;
+PlSqlParser.BINARY_DOUBLE_NAN = 114;
+PlSqlParser.BINARY_FLOAT = 115;
+PlSqlParser.BINARY_FLOAT_INFINITY = 116;
+PlSqlParser.BINARY_FLOAT_NAN = 117;
+PlSqlParser.BINARY_INTEGER = 118;
+PlSqlParser.BIND_AWARE = 119;
+PlSqlParser.BINDING = 120;
+PlSqlParser.BIN_TO_NUM = 121;
+PlSqlParser.BITAND = 122;
+PlSqlParser.BITMAP_AND = 123;
+PlSqlParser.BITMAP = 124;
+PlSqlParser.BITMAPS = 125;
+PlSqlParser.BITMAP_TREE = 126;
+PlSqlParser.BITS = 127;
+PlSqlParser.BLOB = 128;
+PlSqlParser.BLOCK = 129;
+PlSqlParser.BLOCK_RANGE = 130;
+PlSqlParser.BLOCKS = 131;
+PlSqlParser.BLOCKSIZE = 132;
+PlSqlParser.BODY = 133;
+PlSqlParser.BOOLEAN = 134;
+PlSqlParser.BOTH = 135;
+PlSqlParser.BOUND = 136;
+PlSqlParser.BRANCH = 137;
+PlSqlParser.BREADTH = 138;
+PlSqlParser.BROADCAST = 139;
+PlSqlParser.BSON = 140;
+PlSqlParser.BUFFER = 141;
+PlSqlParser.BUFFER_CACHE = 142;
+PlSqlParser.BUFFER_POOL = 143;
+PlSqlParser.BUILD = 144;
+PlSqlParser.BULK = 145;
+PlSqlParser.BY = 146;
+PlSqlParser.BYPASS_RECURSIVE_CHECK = 147;
+PlSqlParser.BYPASS_UJVC = 148;
+PlSqlParser.BYTE = 149;
+PlSqlParser.CACHE = 150;
+PlSqlParser.CACHE_CB = 151;
+PlSqlParser.CACHE_INSTANCES = 152;
+PlSqlParser.CACHE_TEMP_TABLE = 153;
+PlSqlParser.CACHING = 154;
+PlSqlParser.CALCULATED = 155;
+PlSqlParser.CALLBACK = 156;
+PlSqlParser.CALL = 157;
+PlSqlParser.CANCEL = 158;
+PlSqlParser.CANONICAL = 159;
+PlSqlParser.CAPACITY = 160;
+PlSqlParser.CARDINALITY = 161;
+PlSqlParser.CASCADE = 162;
+PlSqlParser.CASE = 163;
+PlSqlParser.CAST = 164;
+PlSqlParser.CATEGORY = 165;
+PlSqlParser.CDBDEFAULT = 166;
+PlSqlParser.CEIL = 167;
+PlSqlParser.CELL_FLASH_CACHE = 168;
+PlSqlParser.CERTIFICATE = 169;
+PlSqlParser.CFILE = 170;
+PlSqlParser.CHAINED = 171;
+PlSqlParser.CHANGE = 172;
+PlSqlParser.CHANGETRACKING = 173;
+PlSqlParser.CHANGE_DUPKEY_ERROR_INDEX = 174;
+PlSqlParser.CHARACTER = 175;
+PlSqlParser.CHAR = 176;
+PlSqlParser.CHAR_CS = 177;
+PlSqlParser.CHARTOROWID = 178;
+PlSqlParser.CHECK_ACL_REWRITE = 179;
+PlSqlParser.CHECK = 180;
+PlSqlParser.CHECKPOINT = 181;
+PlSqlParser.CHILD = 182;
+PlSqlParser.CHOOSE = 183;
+PlSqlParser.CHR = 184;
+PlSqlParser.CHUNK = 185;
+PlSqlParser.CLASS = 186;
+PlSqlParser.CLASSIFIER = 187;
+PlSqlParser.CLEANUP = 188;
+PlSqlParser.CLEAR = 189;
+PlSqlParser.C_LETTER = 190;
+PlSqlParser.CLIENT = 191;
+PlSqlParser.CLOB = 192;
+PlSqlParser.CLONE = 193;
+PlSqlParser.CLOSE_CACHED_OPEN_CURSORS = 194;
+PlSqlParser.CLOSE = 195;
+PlSqlParser.CLUSTER_BY_ROWID = 196;
+PlSqlParser.CLUSTER = 197;
+PlSqlParser.CLUSTER_DETAILS = 198;
+PlSqlParser.CLUSTER_DISTANCE = 199;
+PlSqlParser.CLUSTER_ID = 200;
+PlSqlParser.CLUSTERING = 201;
+PlSqlParser.CLUSTERING_FACTOR = 202;
+PlSqlParser.CLUSTER_PROBABILITY = 203;
+PlSqlParser.CLUSTER_SET = 204;
+PlSqlParser.COALESCE = 205;
+PlSqlParser.COALESCE_SQ = 206;
+PlSqlParser.COARSE = 207;
+PlSqlParser.CO_AUTH_IND = 208;
+PlSqlParser.COLD = 209;
+PlSqlParser.COLLECT = 210;
+PlSqlParser.COLUMNAR = 211;
+PlSqlParser.COLUMN_AUTH_INDICATOR = 212;
+PlSqlParser.COLUMN = 213;
+PlSqlParser.COLUMNS = 214;
+PlSqlParser.COLUMN_STATS = 215;
+PlSqlParser.COLUMN_VALUE = 216;
+PlSqlParser.COMMENT = 217;
+PlSqlParser.COMMIT = 218;
+PlSqlParser.COMMITTED = 219;
+PlSqlParser.COMMON_DATA = 220;
+PlSqlParser.COMPACT = 221;
+PlSqlParser.COMPATIBILITY = 222;
+PlSqlParser.COMPILE = 223;
+PlSqlParser.COMPLETE = 224;
+PlSqlParser.COMPLIANCE = 225;
+PlSqlParser.COMPONENT = 226;
+PlSqlParser.COMPONENTS = 227;
+PlSqlParser.COMPOSE = 228;
+PlSqlParser.COMPOSITE = 229;
+PlSqlParser.COMPOSITE_LIMIT = 230;
+PlSqlParser.COMPOUND = 231;
+PlSqlParser.COMPRESS = 232;
+PlSqlParser.COMPUTE = 233;
+PlSqlParser.CONCAT = 234;
+PlSqlParser.CON_DBID_TO_ID = 235;
+PlSqlParser.CONDITIONAL = 236;
+PlSqlParser.CONDITION = 237;
+PlSqlParser.CONFIRM = 238;
+PlSqlParser.CONFORMING = 239;
+PlSqlParser.CON_GUID_TO_ID = 240;
+PlSqlParser.CON_ID = 241;
+PlSqlParser.CON_NAME_TO_ID = 242;
+PlSqlParser.CONNECT_BY_CB_WHR_ONLY = 243;
+PlSqlParser.CONNECT_BY_COMBINE_SW = 244;
+PlSqlParser.CONNECT_BY_COST_BASED = 245;
+PlSqlParser.CONNECT_BY_ELIM_DUPS = 246;
+PlSqlParser.CONNECT_BY_FILTERING = 247;
+PlSqlParser.CONNECT_BY_ISCYCLE = 248;
+PlSqlParser.CONNECT_BY_ISLEAF = 249;
+PlSqlParser.CONNECT_BY_ROOT = 250;
+PlSqlParser.CONNECT = 251;
+PlSqlParser.CONNECT_TIME = 252;
+PlSqlParser.CONSIDER = 253;
+PlSqlParser.CONSISTENT = 254;
+PlSqlParser.CONSTANT = 255;
+PlSqlParser.CONST = 256;
+PlSqlParser.CONSTRAINT = 257;
+PlSqlParser.CONSTRAINTS = 258;
+PlSqlParser.CONSTRUCTOR = 259;
+PlSqlParser.CONTAINER = 260;
+PlSqlParser.CONTAINER_DATA = 261;
+PlSqlParser.CONTAINERS = 262;
+PlSqlParser.CONTENT = 263;
+PlSqlParser.CONTENTS = 264;
+PlSqlParser.CONTEXT = 265;
+PlSqlParser.CONTINUE = 266;
+PlSqlParser.CONTROLFILE = 267;
+PlSqlParser.CON_UID_TO_ID = 268;
+PlSqlParser.CONVERT = 269;
+PlSqlParser.COOKIE = 270;
+PlSqlParser.COPY = 271;
+PlSqlParser.CORR_K = 272;
+PlSqlParser.CORR_S = 273;
+PlSqlParser.CORRUPTION = 274;
+PlSqlParser.CORRUPT_XID_ALL = 275;
+PlSqlParser.CORRUPT_XID = 276;
+PlSqlParser.COS = 277;
+PlSqlParser.COSH = 278;
+PlSqlParser.COST = 279;
+PlSqlParser.COST_XML_QUERY_REWRITE = 280;
+PlSqlParser.COUNT = 281;
+PlSqlParser.COVAR_POP = 282;
+PlSqlParser.COVAR_SAMP = 283;
+PlSqlParser.CPU_COSTING = 284;
+PlSqlParser.CPU_PER_CALL = 285;
+PlSqlParser.CPU_PER_SESSION = 286;
+PlSqlParser.CRASH = 287;
+PlSqlParser.CREATE = 288;
+PlSqlParser.CREATE_FILE_DEST = 289;
+PlSqlParser.CREATE_STORED_OUTLINES = 290;
+PlSqlParser.CREATION = 291;
+PlSqlParser.CREDENTIAL = 292;
+PlSqlParser.CRITICAL = 293;
+PlSqlParser.CROSS = 294;
+PlSqlParser.CROSSEDITION = 295;
+PlSqlParser.CSCONVERT = 296;
+PlSqlParser.CUBE_AJ = 297;
+PlSqlParser.CUBE = 298;
+PlSqlParser.CUBE_GB = 299;
+PlSqlParser.CUBE_SJ = 300;
+PlSqlParser.CUME_DISTM = 301;
+PlSqlParser.CURRENT = 302;
+PlSqlParser.CURRENT_DATE = 303;
+PlSqlParser.CURRENT_SCHEMA = 304;
+PlSqlParser.CURRENT_TIME = 305;
+PlSqlParser.CURRENT_TIMESTAMP = 306;
+PlSqlParser.CURRENT_USER = 307;
+PlSqlParser.CURRENTV = 308;
+PlSqlParser.CURSOR = 309;
+PlSqlParser.CURSOR_SHARING_EXACT = 310;
+PlSqlParser.CURSOR_SPECIFIC_SEGMENT = 311;
+PlSqlParser.CUSTOMDATUM = 312;
+PlSqlParser.CV = 313;
+PlSqlParser.CYCLE = 314;
+PlSqlParser.DANGLING = 315;
+PlSqlParser.DATABASE = 316;
+PlSqlParser.DATA = 317;
+PlSqlParser.DATAFILE = 318;
+PlSqlParser.DATAFILES = 319;
+PlSqlParser.DATAGUARDCONFIG = 320;
+PlSqlParser.DATAMOVEMENT = 321;
+PlSqlParser.DATAOBJNO = 322;
+PlSqlParser.DATAOBJ_TO_MAT_PARTITION = 323;
+PlSqlParser.DATAOBJ_TO_PARTITION = 324;
+PlSqlParser.DATAPUMP = 325;
+PlSqlParser.DATA_SECURITY_REWRITE_LIMIT = 326;
+PlSqlParser.DATE = 327;
+PlSqlParser.DATE_MODE = 328;
+PlSqlParser.DAY = 329;
+PlSqlParser.DAYS = 330;
+PlSqlParser.DBA = 331;
+PlSqlParser.DBA_RECYCLEBIN = 332;
+PlSqlParser.DBMS_STATS = 333;
+PlSqlParser.DB_ROLE_CHANGE = 334;
+PlSqlParser.DBTIMEZONE = 335;
+PlSqlParser.DB_UNIQUE_NAME = 336;
+PlSqlParser.DB_VERSION = 337;
+PlSqlParser.DDL = 338;
+PlSqlParser.DEALLOCATE = 339;
+PlSqlParser.DEBUG = 340;
+PlSqlParser.DEBUGGER = 341;
+PlSqlParser.DEC = 342;
+PlSqlParser.DECIMAL = 343;
+PlSqlParser.DECLARE = 344;
+PlSqlParser.DECOMPOSE = 345;
+PlSqlParser.DECORRELATE = 346;
+PlSqlParser.DECR = 347;
+PlSqlParser.DECREMENT = 348;
+PlSqlParser.DECRYPT = 349;
+PlSqlParser.DEDUPLICATE = 350;
+PlSqlParser.DEFAULT = 351;
+PlSqlParser.DEFAULTS = 352;
+PlSqlParser.DEFERRABLE = 353;
+PlSqlParser.DEFERRED = 354;
+PlSqlParser.DEFINED = 355;
+PlSqlParser.DEFINE = 356;
+PlSqlParser.DEFINER = 357;
+PlSqlParser.DEGREE = 358;
+PlSqlParser.DELAY = 359;
+PlSqlParser.DELEGATE = 360;
+PlSqlParser.DELETE_ALL = 361;
+PlSqlParser.DELETE = 362;
+PlSqlParser.DELETEXML = 363;
+PlSqlParser.DEMAND = 364;
+PlSqlParser.DENSE_RANKM = 365;
+PlSqlParser.DEPENDENT = 366;
+PlSqlParser.DEPTH = 367;
+PlSqlParser.DEQUEUE = 368;
+PlSqlParser.DEREF = 369;
+PlSqlParser.DEREF_NO_REWRITE = 370;
+PlSqlParser.DESC = 371;
+PlSqlParser.DESTROY = 372;
+PlSqlParser.DETACHED = 373;
+PlSqlParser.DETERMINES = 374;
+PlSqlParser.DETERMINISTIC = 375;
+PlSqlParser.DICTIONARY = 376;
+PlSqlParser.DIMENSION = 377;
+PlSqlParser.DIMENSIONS = 378;
+PlSqlParser.DIRECT_LOAD = 379;
+PlSqlParser.DIRECTORY = 380;
+PlSqlParser.DIRECT_PATH = 381;
+PlSqlParser.DISABLE_ALL = 382;
+PlSqlParser.DISABLE = 383;
+PlSqlParser.DISABLE_PARALLEL_DML = 384;
+PlSqlParser.DISABLE_PRESET = 385;
+PlSqlParser.DISABLE_RPKE = 386;
+PlSqlParser.DISALLOW = 387;
+PlSqlParser.DISASSOCIATE = 388;
+PlSqlParser.DISCARD = 389;
+PlSqlParser.DISCONNECT = 390;
+PlSqlParser.DISK = 391;
+PlSqlParser.DISKGROUP = 392;
+PlSqlParser.DISKGROUP_PLUS = 393;
+PlSqlParser.DISKS = 394;
+PlSqlParser.DISMOUNT = 395;
+PlSqlParser.DISTINCT = 396;
+PlSqlParser.DISTINGUISHED = 397;
+PlSqlParser.DISTRIBUTED = 398;
+PlSqlParser.DISTRIBUTE = 399;
+PlSqlParser.DML = 400;
+PlSqlParser.DML_UPDATE = 401;
+PlSqlParser.DOCFIDELITY = 402;
+PlSqlParser.DOCUMENT = 403;
+PlSqlParser.DOMAIN_INDEX_FILTER = 404;
+PlSqlParser.DOMAIN_INDEX_NO_SORT = 405;
+PlSqlParser.DOMAIN_INDEX_SORT = 406;
+PlSqlParser.DOUBLE = 407;
+PlSqlParser.DOWNGRADE = 408;
+PlSqlParser.DRIVING_SITE = 409;
+PlSqlParser.DROP_COLUMN = 410;
+PlSqlParser.DROP = 411;
+PlSqlParser.DROP_GROUP = 412;
+PlSqlParser.DSINTERVAL_UNCONSTRAINED = 413;
+PlSqlParser.DST_UPGRADE_INSERT_CONV = 414;
+PlSqlParser.DUMP = 415;
+PlSqlParser.DUMPSET = 416;
+PlSqlParser.DUPLICATE = 417;
+PlSqlParser.DV = 418;
+PlSqlParser.DYNAMIC = 419;
+PlSqlParser.DYNAMIC_SAMPLING = 420;
+PlSqlParser.DYNAMIC_SAMPLING_EST_CDN = 421;
+PlSqlParser.EACH = 422;
+PlSqlParser.EDITIONABLE = 423;
+PlSqlParser.EDITION = 424;
+PlSqlParser.EDITIONING = 425;
+PlSqlParser.EDITIONS = 426;
+PlSqlParser.ELEMENT = 427;
+PlSqlParser.ELIM_GROUPBY = 428;
+PlSqlParser.ELIMINATE_JOIN = 429;
+PlSqlParser.ELIMINATE_OBY = 430;
+PlSqlParser.ELIMINATE_OUTER_JOIN = 431;
+PlSqlParser.ELSE = 432;
+PlSqlParser.ELSIF = 433;
+PlSqlParser.EM = 434;
+PlSqlParser.EMPTY_BLOB = 435;
+PlSqlParser.EMPTY_CLOB = 436;
+PlSqlParser.EMPTY = 437;
+PlSqlParser.ENABLE_ALL = 438;
+PlSqlParser.ENABLE = 439;
+PlSqlParser.ENABLE_PARALLEL_DML = 440;
+PlSqlParser.ENABLE_PRESET = 441;
+PlSqlParser.ENCODING = 442;
+PlSqlParser.ENCRYPT = 443;
+PlSqlParser.ENCRYPTION = 444;
+PlSqlParser.END = 445;
+PlSqlParser.END_OUTLINE_DATA = 446;
+PlSqlParser.ENFORCED = 447;
+PlSqlParser.ENFORCE = 448;
+PlSqlParser.ENQUEUE = 449;
+PlSqlParser.ENTERPRISE = 450;
+PlSqlParser.ENTITYESCAPING = 451;
+PlSqlParser.ENTRY = 452;
+PlSqlParser.EQUIPART = 453;
+PlSqlParser.ERR = 454;
+PlSqlParser.ERROR_ARGUMENT = 455;
+PlSqlParser.ERROR = 456;
+PlSqlParser.ERROR_ON_OVERLAP_TIME = 457;
+PlSqlParser.ERRORS = 458;
+PlSqlParser.ESCAPE = 459;
+PlSqlParser.ESTIMATE = 460;
+PlSqlParser.EVAL = 461;
+PlSqlParser.EVALNAME = 462;
+PlSqlParser.EVALUATE = 463;
+PlSqlParser.EVALUATION = 464;
+PlSqlParser.EVENTS = 465;
+PlSqlParser.EVERY = 466;
+PlSqlParser.EXCEPT = 467;
+PlSqlParser.EXCEPTION = 468;
+PlSqlParser.EXCEPTION_INIT = 469;
+PlSqlParser.EXCEPTIONS = 470;
+PlSqlParser.EXCHANGE = 471;
+PlSqlParser.EXCLUDE = 472;
+PlSqlParser.EXCLUDING = 473;
+PlSqlParser.EXCLUSIVE = 474;
+PlSqlParser.EXECUTE = 475;
+PlSqlParser.EXEMPT = 476;
+PlSqlParser.EXISTING = 477;
+PlSqlParser.EXISTS = 478;
+PlSqlParser.EXISTSNODE = 479;
+PlSqlParser.EXIT = 480;
+PlSqlParser.EXPAND_GSET_TO_UNION = 481;
+PlSqlParser.EXPAND_TABLE = 482;
+PlSqlParser.EXP = 483;
+PlSqlParser.EXPIRE = 484;
+PlSqlParser.EXPLAIN = 485;
+PlSqlParser.EXPLOSION = 486;
+PlSqlParser.EXPORT = 487;
+PlSqlParser.EXPR_CORR_CHECK = 488;
+PlSqlParser.EXPRESS = 489;
+PlSqlParser.EXTENDS = 490;
+PlSqlParser.EXTENT = 491;
+PlSqlParser.EXTENTS = 492;
+PlSqlParser.EXTERNAL = 493;
+PlSqlParser.EXTERNALLY = 494;
+PlSqlParser.EXTRACTCLOBXML = 495;
+PlSqlParser.EXTRACT = 496;
+PlSqlParser.EXTRACTVALUE = 497;
+PlSqlParser.EXTRA = 498;
+PlSqlParser.FACILITY = 499;
+PlSqlParser.FACT = 500;
+PlSqlParser.FACTOR = 501;
+PlSqlParser.FACTORIZE_JOIN = 502;
+PlSqlParser.FAILED = 503;
+PlSqlParser.FAILED_LOGIN_ATTEMPTS = 504;
+PlSqlParser.FAILGROUP = 505;
+PlSqlParser.FAILOVER = 506;
+PlSqlParser.FAILURE = 507;
+PlSqlParser.FALSE = 508;
+PlSqlParser.FAMILY = 509;
+PlSqlParser.FAR = 510;
+PlSqlParser.FAST = 511;
+PlSqlParser.FASTSTART = 512;
+PlSqlParser.FBTSCAN = 513;
+PlSqlParser.FEATURE_DETAILS = 514;
+PlSqlParser.FEATURE_ID = 515;
+PlSqlParser.FEATURE_SET = 516;
+PlSqlParser.FEATURE_VALUE = 517;
+PlSqlParser.FETCH = 518;
+PlSqlParser.FILE = 519;
+PlSqlParser.FILE_NAME_CONVERT = 520;
+PlSqlParser.FILESYSTEM_LIKE_LOGGING = 521;
+PlSqlParser.FILTER = 522;
+PlSqlParser.FINAL = 523;
+PlSqlParser.FINE = 524;
+PlSqlParser.FINISH = 525;
+PlSqlParser.FIRST = 526;
+PlSqlParser.FIRSTM = 527;
+PlSqlParser.FIRST_ROWS = 528;
+PlSqlParser.FIRST_VALUE = 529;
+PlSqlParser.FIXED_VIEW_DATA = 530;
+PlSqlParser.FLAGGER = 531;
+PlSqlParser.FLASHBACK = 532;
+PlSqlParser.FLASH_CACHE = 533;
+PlSqlParser.FLOAT = 534;
+PlSqlParser.FLOB = 535;
+PlSqlParser.FLOOR = 536;
+PlSqlParser.FLUSH = 537;
+PlSqlParser.FOLDER = 538;
+PlSqlParser.FOLLOWING = 539;
+PlSqlParser.FOLLOWS = 540;
+PlSqlParser.FORALL = 541;
+PlSqlParser.FORCE = 542;
+PlSqlParser.FORCE_XML_QUERY_REWRITE = 543;
+PlSqlParser.FOREIGN = 544;
+PlSqlParser.FOREVER = 545;
+PlSqlParser.FOR = 546;
+PlSqlParser.FORMAT = 547;
+PlSqlParser.FORWARD = 548;
+PlSqlParser.FRAGMENT_NUMBER = 549;
+PlSqlParser.FREELIST = 550;
+PlSqlParser.FREELISTS = 551;
+PlSqlParser.FREEPOOLS = 552;
+PlSqlParser.FRESH = 553;
+PlSqlParser.FROM = 554;
+PlSqlParser.FROM_TZ = 555;
+PlSqlParser.FULL = 556;
+PlSqlParser.FULL_OUTER_JOIN_TO_OUTER = 557;
+PlSqlParser.FUNCTION = 558;
+PlSqlParser.FUNCTIONS = 559;
+PlSqlParser.GATHER_OPTIMIZER_STATISTICS = 560;
+PlSqlParser.GATHER_PLAN_STATISTICS = 561;
+PlSqlParser.GBY_CONC_ROLLUP = 562;
+PlSqlParser.GBY_PUSHDOWN = 563;
+PlSqlParser.GENERATED = 564;
+PlSqlParser.GET = 565;
+PlSqlParser.GLOBAL = 566;
+PlSqlParser.GLOBALLY = 567;
+PlSqlParser.GLOBAL_NAME = 568;
+PlSqlParser.GLOBAL_TOPIC_ENABLED = 569;
+PlSqlParser.GOTO = 570;
+PlSqlParser.GRANT = 571;
+PlSqlParser.GROUP_BY = 572;
+PlSqlParser.GROUP = 573;
+PlSqlParser.GROUP_ID = 574;
+PlSqlParser.GROUPING = 575;
+PlSqlParser.GROUPING_ID = 576;
+PlSqlParser.GROUPS = 577;
+PlSqlParser.GUARANTEED = 578;
+PlSqlParser.GUARANTEE = 579;
+PlSqlParser.GUARD = 580;
+PlSqlParser.HASH_AJ = 581;
+PlSqlParser.HASH = 582;
+PlSqlParser.HASHKEYS = 583;
+PlSqlParser.HASH_SJ = 584;
+PlSqlParser.HAVING = 585;
+PlSqlParser.HEADER = 586;
+PlSqlParser.HEAP = 587;
+PlSqlParser.HELP = 588;
+PlSqlParser.HEXTORAW = 589;
+PlSqlParser.HEXTOREF = 590;
+PlSqlParser.HIDDEN_KEYWORD = 591;
+PlSqlParser.HIDE = 592;
+PlSqlParser.HIERARCHY = 593;
+PlSqlParser.HIGH = 594;
+PlSqlParser.HINTSET_BEGIN = 595;
+PlSqlParser.HINTSET_END = 596;
+PlSqlParser.HOT = 597;
+PlSqlParser.HOUR = 598;
+PlSqlParser.HWM_BROKERED = 599;
+PlSqlParser.HYBRID = 600;
+PlSqlParser.IDENTIFIED = 601;
+PlSqlParser.IDENTIFIER = 602;
+PlSqlParser.IDENTITY = 603;
+PlSqlParser.IDGENERATORS = 604;
+PlSqlParser.ID = 605;
+PlSqlParser.IDLE_TIME = 606;
+PlSqlParser.IF = 607;
+PlSqlParser.IGNORE = 608;
+PlSqlParser.IGNORE_OPTIM_EMBEDDED_HINTS = 609;
+PlSqlParser.IGNORE_ROW_ON_DUPKEY_INDEX = 610;
+PlSqlParser.IGNORE_WHERE_CLAUSE = 611;
+PlSqlParser.ILM = 612;
+PlSqlParser.IMMEDIATE = 613;
+PlSqlParser.IMPACT = 614;
+PlSqlParser.IMPORT = 615;
+PlSqlParser.INACTIVE = 616;
+PlSqlParser.INCLUDE = 617;
+PlSqlParser.INCLUDE_VERSION = 618;
+PlSqlParser.INCLUDING = 619;
+PlSqlParser.INCREMENTAL = 620;
+PlSqlParser.INCREMENT = 621;
+PlSqlParser.INCR = 622;
+PlSqlParser.INDENT = 623;
+PlSqlParser.INDEX_ASC = 624;
+PlSqlParser.INDEX_COMBINE = 625;
+PlSqlParser.INDEX_DESC = 626;
+PlSqlParser.INDEXED = 627;
+PlSqlParser.INDEXES = 628;
+PlSqlParser.INDEX_FFS = 629;
+PlSqlParser.INDEX_FILTER = 630;
+PlSqlParser.INDEX = 631;
+PlSqlParser.INDEXING = 632;
+PlSqlParser.INDEX_JOIN = 633;
+PlSqlParser.INDEX_ROWS = 634;
+PlSqlParser.INDEX_RRS = 635;
+PlSqlParser.INDEX_RS_ASC = 636;
+PlSqlParser.INDEX_RS_DESC = 637;
+PlSqlParser.INDEX_RS = 638;
+PlSqlParser.INDEX_SCAN = 639;
+PlSqlParser.INDEX_SKIP_SCAN = 640;
+PlSqlParser.INDEX_SS_ASC = 641;
+PlSqlParser.INDEX_SS_DESC = 642;
+PlSqlParser.INDEX_SS = 643;
+PlSqlParser.INDEX_STATS = 644;
+PlSqlParser.INDEXTYPE = 645;
+PlSqlParser.INDEXTYPES = 646;
+PlSqlParser.INDICATOR = 647;
+PlSqlParser.INDICES = 648;
+PlSqlParser.INFINITE = 649;
+PlSqlParser.INFORMATIONAL = 650;
+PlSqlParser.INHERIT = 651;
+PlSqlParser.IN = 652;
+PlSqlParser.INITCAP = 653;
+PlSqlParser.INITIAL = 654;
+PlSqlParser.INITIALIZED = 655;
+PlSqlParser.INITIALLY = 656;
+PlSqlParser.INITRANS = 657;
+PlSqlParser.INLINE = 658;
+PlSqlParser.INLINE_XMLTYPE_NT = 659;
+PlSqlParser.INMEMORY = 660;
+PlSqlParser.IN_MEMORY_METADATA = 661;
+PlSqlParser.INMEMORY_PRUNING = 662;
+PlSqlParser.INNER = 663;
+PlSqlParser.INOUT = 664;
+PlSqlParser.INPLACE = 665;
+PlSqlParser.INSERTCHILDXMLAFTER = 666;
+PlSqlParser.INSERTCHILDXMLBEFORE = 667;
+PlSqlParser.INSERTCHILDXML = 668;
+PlSqlParser.INSERT = 669;
+PlSqlParser.INSERTXMLAFTER = 670;
+PlSqlParser.INSERTXMLBEFORE = 671;
+PlSqlParser.INSTANCE = 672;
+PlSqlParser.INSTANCES = 673;
+PlSqlParser.INSTANTIABLE = 674;
+PlSqlParser.INSTANTLY = 675;
+PlSqlParser.INSTEAD = 676;
+PlSqlParser.INSTR2 = 677;
+PlSqlParser.INSTR4 = 678;
+PlSqlParser.INSTRB = 679;
+PlSqlParser.INSTRC = 680;
+PlSqlParser.INSTR = 681;
+PlSqlParser.INTEGER = 682;
+PlSqlParser.INTERLEAVED = 683;
+PlSqlParser.INTERMEDIATE = 684;
+PlSqlParser.INTERNAL_CONVERT = 685;
+PlSqlParser.INTERNAL_USE = 686;
+PlSqlParser.INTERPRETED = 687;
+PlSqlParser.INTERSECT = 688;
+PlSqlParser.INTERVAL = 689;
+PlSqlParser.INT = 690;
+PlSqlParser.INTO = 691;
+PlSqlParser.INVALIDATE = 692;
+PlSqlParser.INVISIBLE = 693;
+PlSqlParser.IN_XQUERY = 694;
+PlSqlParser.IS = 695;
+PlSqlParser.ISOLATION = 696;
+PlSqlParser.ISOLATION_LEVEL = 697;
+PlSqlParser.ITERATE = 698;
+PlSqlParser.ITERATION_NUMBER = 699;
+PlSqlParser.JAVA = 700;
+PlSqlParser.JOB = 701;
+PlSqlParser.JOIN = 702;
+PlSqlParser.JSON_ARRAYAGG = 703;
+PlSqlParser.JSON_ARRAY = 704;
+PlSqlParser.JSON_EQUAL = 705;
+PlSqlParser.JSON_EXISTS2 = 706;
+PlSqlParser.JSON_EXISTS = 707;
+PlSqlParser.JSONGET = 708;
+PlSqlParser.JSON = 709;
+PlSqlParser.JSON_OBJECTAGG = 710;
+PlSqlParser.JSON_OBJECT = 711;
+PlSqlParser.JSONPARSE = 712;
+PlSqlParser.JSON_QUERY = 713;
+PlSqlParser.JSON_SERIALIZE = 714;
+PlSqlParser.JSON_TABLE = 715;
+PlSqlParser.JSON_TEXTCONTAINS2 = 716;
+PlSqlParser.JSON_TEXTCONTAINS = 717;
+PlSqlParser.JSON_VALUE = 718;
+PlSqlParser.KEEP_DUPLICATES = 719;
+PlSqlParser.KEEP = 720;
+PlSqlParser.KERBEROS = 721;
+PlSqlParser.KEY = 722;
+PlSqlParser.KEY_LENGTH = 723;
+PlSqlParser.KEYSIZE = 724;
+PlSqlParser.KEYS = 725;
+PlSqlParser.KEYSTORE = 726;
+PlSqlParser.KILL = 727;
+PlSqlParser.LABEL = 728;
+PlSqlParser.LANGUAGE = 729;
+PlSqlParser.LAST_DAY = 730;
+PlSqlParser.LAST = 731;
+PlSqlParser.LAST_VALUE = 732;
+PlSqlParser.LATERAL = 733;
+PlSqlParser.LAX = 734;
+PlSqlParser.LAYER = 735;
+PlSqlParser.LDAP_REGISTRATION_ENABLED = 736;
+PlSqlParser.LDAP_REGISTRATION = 737;
+PlSqlParser.LDAP_REG_SYNC_INTERVAL = 738;
+PlSqlParser.LEADING = 739;
+PlSqlParser.LEFT = 740;
+PlSqlParser.LENGTH2 = 741;
+PlSqlParser.LENGTH4 = 742;
+PlSqlParser.LENGTHB = 743;
+PlSqlParser.LENGTHC = 744;
+PlSqlParser.LENGTH = 745;
+PlSqlParser.LESS = 746;
+PlSqlParser.LEVEL = 747;
+PlSqlParser.LEVELS = 748;
+PlSqlParser.LIBRARY = 749;
+PlSqlParser.LIFECYCLE = 750;
+PlSqlParser.LIFE = 751;
+PlSqlParser.LIFETIME = 752;
+PlSqlParser.LIKE2 = 753;
+PlSqlParser.LIKE4 = 754;
+PlSqlParser.LIKEC = 755;
+PlSqlParser.LIKE_EXPAND = 756;
+PlSqlParser.LIKE = 757;
+PlSqlParser.LIMIT = 758;
+PlSqlParser.LINEAR = 759;
+PlSqlParser.LINK = 760;
+PlSqlParser.LIST = 761;
+PlSqlParser.LN = 762;
+PlSqlParser.LNNVL = 763;
+PlSqlParser.LOAD = 764;
+PlSqlParser.LOB = 765;
+PlSqlParser.LOBNVL = 766;
+PlSqlParser.LOBS = 767;
+PlSqlParser.LOCAL_INDEXES = 768;
+PlSqlParser.LOCAL = 769;
+PlSqlParser.LOCALTIME = 770;
+PlSqlParser.LOCALTIMESTAMP = 771;
+PlSqlParser.LOCATION = 772;
+PlSqlParser.LOCATOR = 773;
+PlSqlParser.LOCKED = 774;
+PlSqlParser.LOCKING = 775;
+PlSqlParser.LOCK = 776;
+PlSqlParser.LOGFILE = 777;
+PlSqlParser.LOGFILES = 778;
+PlSqlParser.LOGGING = 779;
+PlSqlParser.LOGICAL = 780;
+PlSqlParser.LOGICAL_READS_PER_CALL = 781;
+PlSqlParser.LOGICAL_READS_PER_SESSION = 782;
+PlSqlParser.LOG = 783;
+PlSqlParser.LOGMINING = 784;
+PlSqlParser.LOGOFF = 785;
+PlSqlParser.LOGON = 786;
+PlSqlParser.LOG_READ_ONLY_VIOLATIONS = 787;
+PlSqlParser.LONG = 788;
+PlSqlParser.LOOP = 789;
+PlSqlParser.LOWER = 790;
+PlSqlParser.LOW = 791;
+PlSqlParser.LPAD = 792;
+PlSqlParser.LTRIM = 793;
+PlSqlParser.MAIN = 794;
+PlSqlParser.MAKE_REF = 795;
+PlSqlParser.MANAGED = 796;
+PlSqlParser.MANAGE = 797;
+PlSqlParser.MANAGEMENT = 798;
+PlSqlParser.MANAGER = 799;
+PlSqlParser.MANUAL = 800;
+PlSqlParser.MAP = 801;
+PlSqlParser.MAPPING = 802;
+PlSqlParser.MASTER = 803;
+PlSqlParser.MATCHED = 804;
+PlSqlParser.MATCHES = 805;
+PlSqlParser.MATCH = 806;
+PlSqlParser.MATCH_NUMBER = 807;
+PlSqlParser.MATCH_RECOGNIZE = 808;
+PlSqlParser.MATERIALIZED = 809;
+PlSqlParser.MATERIALIZE = 810;
+PlSqlParser.MAXARCHLOGS = 811;
+PlSqlParser.MAXDATAFILES = 812;
+PlSqlParser.MAXEXTENTS = 813;
+PlSqlParser.MAXIMIZE = 814;
+PlSqlParser.MAXINSTANCES = 815;
+PlSqlParser.MAXLOGFILES = 816;
+PlSqlParser.MAXLOGHISTORY = 817;
+PlSqlParser.MAXLOGMEMBERS = 818;
+PlSqlParser.MAX_SHARED_TEMP_SIZE = 819;
+PlSqlParser.MAXSIZE = 820;
+PlSqlParser.MAXTRANS = 821;
+PlSqlParser.MAXVALUE = 822;
+PlSqlParser.MEASURE = 823;
+PlSqlParser.MEASURES = 824;
+PlSqlParser.MEDIUM = 825;
+PlSqlParser.MEMBER = 826;
+PlSqlParser.MEMCOMPRESS = 827;
+PlSqlParser.MEMORY = 828;
+PlSqlParser.MERGEACTIONS = 829;
+PlSqlParser.MERGE_AJ = 830;
+PlSqlParser.MERGE_CONST_ON = 831;
+PlSqlParser.MERGE = 832;
+PlSqlParser.MERGE_SJ = 833;
+PlSqlParser.METADATA = 834;
+PlSqlParser.METHOD = 835;
+PlSqlParser.MIGRATE = 836;
+PlSqlParser.MIGRATION = 837;
+PlSqlParser.MINEXTENTS = 838;
+PlSqlParser.MINIMIZE = 839;
+PlSqlParser.MINIMUM = 840;
+PlSqlParser.MINING = 841;
+PlSqlParser.MINUS = 842;
+PlSqlParser.MINUS_NULL = 843;
+PlSqlParser.MINUTE = 844;
+PlSqlParser.MINVALUE = 845;
+PlSqlParser.MIRRORCOLD = 846;
+PlSqlParser.MIRRORHOT = 847;
+PlSqlParser.MIRROR = 848;
+PlSqlParser.MLSLABEL = 849;
+PlSqlParser.MODEL_COMPILE_SUBQUERY = 850;
+PlSqlParser.MODEL_DONTVERIFY_UNIQUENESS = 851;
+PlSqlParser.MODEL_DYNAMIC_SUBQUERY = 852;
+PlSqlParser.MODEL_MIN_ANALYSIS = 853;
+PlSqlParser.MODEL = 854;
+PlSqlParser.MODEL_NB = 855;
+PlSqlParser.MODEL_NO_ANALYSIS = 856;
+PlSqlParser.MODEL_PBY = 857;
+PlSqlParser.MODEL_PUSH_REF = 858;
+PlSqlParser.MODEL_SV = 859;
+PlSqlParser.MODE = 860;
+PlSqlParser.MODIFICATION = 861;
+PlSqlParser.MODIFY_COLUMN_TYPE = 862;
+PlSqlParser.MODIFY = 863;
+PlSqlParser.MOD = 864;
+PlSqlParser.MODULE = 865;
+PlSqlParser.MONITORING = 866;
+PlSqlParser.MONITOR = 867;
+PlSqlParser.MONTH = 868;
+PlSqlParser.MONTHS_BETWEEN = 869;
+PlSqlParser.MONTHS = 870;
+PlSqlParser.MOUNT = 871;
+PlSqlParser.MOUNTPATH = 872;
+PlSqlParser.MOVEMENT = 873;
+PlSqlParser.MOVE = 874;
+PlSqlParser.MULTIDIMENSIONAL = 875;
+PlSqlParser.MULTISET = 876;
+PlSqlParser.MV_MERGE = 877;
+PlSqlParser.NAMED = 878;
+PlSqlParser.NAME = 879;
+PlSqlParser.NAMESPACE = 880;
+PlSqlParser.NAN = 881;
+PlSqlParser.NANVL = 882;
+PlSqlParser.NATIONAL = 883;
+PlSqlParser.NATIVE_FULL_OUTER_JOIN = 884;
+PlSqlParser.NATIVE = 885;
+PlSqlParser.NATURAL = 886;
+PlSqlParser.NATURALN = 887;
+PlSqlParser.NAV = 888;
+PlSqlParser.NCHAR_CS = 889;
+PlSqlParser.NCHAR = 890;
+PlSqlParser.NCHR = 891;
+PlSqlParser.NCLOB = 892;
+PlSqlParser.NEEDED = 893;
+PlSqlParser.NEG = 894;
+PlSqlParser.NESTED = 895;
+PlSqlParser.NESTED_TABLE_FAST_INSERT = 896;
+PlSqlParser.NESTED_TABLE_GET_REFS = 897;
+PlSqlParser.NESTED_TABLE_ID = 898;
+PlSqlParser.NESTED_TABLE_SET_REFS = 899;
+PlSqlParser.NESTED_TABLE_SET_SETID = 900;
+PlSqlParser.NETWORK = 901;
+PlSqlParser.NEVER = 902;
+PlSqlParser.NEW = 903;
+PlSqlParser.NEW_TIME = 904;
+PlSqlParser.NEXT_DAY = 905;
+PlSqlParser.NEXT = 906;
+PlSqlParser.NL_AJ = 907;
+PlSqlParser.NLJ_BATCHING = 908;
+PlSqlParser.NLJ_INDEX_FILTER = 909;
+PlSqlParser.NLJ_INDEX_SCAN = 910;
+PlSqlParser.NLJ_PREFETCH = 911;
+PlSqlParser.NLS_CALENDAR = 912;
+PlSqlParser.NLS_CHARACTERSET = 913;
+PlSqlParser.NLS_CHARSET_DECL_LEN = 914;
+PlSqlParser.NLS_CHARSET_ID = 915;
+PlSqlParser.NLS_CHARSET_NAME = 916;
+PlSqlParser.NLS_COMP = 917;
+PlSqlParser.NLS_CURRENCY = 918;
+PlSqlParser.NLS_DATE_FORMAT = 919;
+PlSqlParser.NLS_DATE_LANGUAGE = 920;
+PlSqlParser.NLS_INITCAP = 921;
+PlSqlParser.NLS_ISO_CURRENCY = 922;
+PlSqlParser.NL_SJ = 923;
+PlSqlParser.NLS_LANG = 924;
+PlSqlParser.NLS_LANGUAGE = 925;
+PlSqlParser.NLS_LENGTH_SEMANTICS = 926;
+PlSqlParser.NLS_LOWER = 927;
+PlSqlParser.NLS_NCHAR_CONV_EXCP = 928;
+PlSqlParser.NLS_NUMERIC_CHARACTERS = 929;
+PlSqlParser.NLS_SORT = 930;
+PlSqlParser.NLSSORT = 931;
+PlSqlParser.NLS_SPECIAL_CHARS = 932;
+PlSqlParser.NLS_TERRITORY = 933;
+PlSqlParser.NLS_UPPER = 934;
+PlSqlParser.NO_ACCESS = 935;
+PlSqlParser.NO_ADAPTIVE_PLAN = 936;
+PlSqlParser.NO_ANSI_REARCH = 937;
+PlSqlParser.NOAPPEND = 938;
+PlSqlParser.NOARCHIVELOG = 939;
+PlSqlParser.NOAUDIT = 940;
+PlSqlParser.NO_AUTO_REOPTIMIZE = 941;
+PlSqlParser.NO_BASETABLE_MULTIMV_REWRITE = 942;
+PlSqlParser.NO_BATCH_TABLE_ACCESS_BY_ROWID = 943;
+PlSqlParser.NO_BIND_AWARE = 944;
+PlSqlParser.NO_BUFFER = 945;
+PlSqlParser.NOCACHE = 946;
+PlSqlParser.NO_CARTESIAN = 947;
+PlSqlParser.NO_CHECK_ACL_REWRITE = 948;
+PlSqlParser.NO_CLUSTER_BY_ROWID = 949;
+PlSqlParser.NO_CLUSTERING = 950;
+PlSqlParser.NO_COALESCE_SQ = 951;
+PlSqlParser.NO_COMMON_DATA = 952;
+PlSqlParser.NOCOMPRESS = 953;
+PlSqlParser.NO_CONNECT_BY_CB_WHR_ONLY = 954;
+PlSqlParser.NO_CONNECT_BY_COMBINE_SW = 955;
+PlSqlParser.NO_CONNECT_BY_COST_BASED = 956;
+PlSqlParser.NO_CONNECT_BY_ELIM_DUPS = 957;
+PlSqlParser.NO_CONNECT_BY_FILTERING = 958;
+PlSqlParser.NOCOPY = 959;
+PlSqlParser.NO_COST_XML_QUERY_REWRITE = 960;
+PlSqlParser.NO_CPU_COSTING = 961;
+PlSqlParser.NOCPU_COSTING = 962;
+PlSqlParser.NOCYCLE = 963;
+PlSqlParser.NO_DATA_SECURITY_REWRITE = 964;
+PlSqlParser.NO_DECORRELATE = 965;
+PlSqlParser.NODELAY = 966;
+PlSqlParser.NO_DOMAIN_INDEX_FILTER = 967;
+PlSqlParser.NO_DST_UPGRADE_INSERT_CONV = 968;
+PlSqlParser.NO_ELIM_GROUPBY = 969;
+PlSqlParser.NO_ELIMINATE_JOIN = 970;
+PlSqlParser.NO_ELIMINATE_OBY = 971;
+PlSqlParser.NO_ELIMINATE_OUTER_JOIN = 972;
+PlSqlParser.NOENTITYESCAPING = 973;
+PlSqlParser.NO_EXPAND_GSET_TO_UNION = 974;
+PlSqlParser.NO_EXPAND = 975;
+PlSqlParser.NO_EXPAND_TABLE = 976;
+PlSqlParser.NO_FACT = 977;
+PlSqlParser.NO_FACTORIZE_JOIN = 978;
+PlSqlParser.NO_FILTERING = 979;
+PlSqlParser.NOFORCE = 980;
+PlSqlParser.NO_FULL_OUTER_JOIN_TO_OUTER = 981;
+PlSqlParser.NO_GATHER_OPTIMIZER_STATISTICS = 982;
+PlSqlParser.NO_GBY_PUSHDOWN = 983;
+PlSqlParser.NOGUARANTEE = 984;
+PlSqlParser.NO_INDEX_FFS = 985;
+PlSqlParser.NO_INDEX = 986;
+PlSqlParser.NO_INDEX_SS = 987;
+PlSqlParser.NO_INMEMORY = 988;
+PlSqlParser.NO_INMEMORY_PRUNING = 989;
+PlSqlParser.NOKEEP = 990;
+PlSqlParser.NO_LOAD = 991;
+PlSqlParser.NOLOCAL = 992;
+PlSqlParser.NOLOGGING = 993;
+PlSqlParser.NOMAPPING = 994;
+PlSqlParser.NOMAXVALUE = 995;
+PlSqlParser.NO_MERGE = 996;
+PlSqlParser.NOMINIMIZE = 997;
+PlSqlParser.NOMINVALUE = 998;
+PlSqlParser.NO_MODEL_PUSH_REF = 999;
+PlSqlParser.NO_MONITORING = 1000;
+PlSqlParser.NOMONITORING = 1001;
+PlSqlParser.NO_MONITOR = 1002;
+PlSqlParser.NO_MULTIMV_REWRITE = 1003;
+PlSqlParser.NO_NATIVE_FULL_OUTER_JOIN = 1004;
+PlSqlParser.NONBLOCKING = 1005;
+PlSqlParser.NONEDITIONABLE = 1006;
+PlSqlParser.NONE = 1007;
+PlSqlParser.NO_NLJ_BATCHING = 1008;
+PlSqlParser.NO_NLJ_PREFETCH = 1009;
+PlSqlParser.NO = 1010;
+PlSqlParser.NONSCHEMA = 1011;
+PlSqlParser.NO_OBJECT_LINK = 1012;
+PlSqlParser.NOORDER = 1013;
+PlSqlParser.NO_ORDER_ROLLUPS = 1014;
+PlSqlParser.NO_OUTER_JOIN_TO_ANTI = 1015;
+PlSqlParser.NO_OUTER_JOIN_TO_INNER = 1016;
+PlSqlParser.NOOVERRIDE = 1017;
+PlSqlParser.NO_PARALLEL_INDEX = 1018;
+PlSqlParser.NOPARALLEL_INDEX = 1019;
+PlSqlParser.NO_PARALLEL = 1020;
+PlSqlParser.NOPARALLEL = 1021;
+PlSqlParser.NO_PARTIAL_COMMIT = 1022;
+PlSqlParser.NO_PARTIAL_JOIN = 1023;
+PlSqlParser.NO_PARTIAL_ROLLUP_PUSHDOWN = 1024;
+PlSqlParser.NOPARTITION = 1025;
+PlSqlParser.NO_PLACE_DISTINCT = 1026;
+PlSqlParser.NO_PLACE_GROUP_BY = 1027;
+PlSqlParser.NO_PQ_CONCURRENT_UNION = 1028;
+PlSqlParser.NO_PQ_MAP = 1029;
+PlSqlParser.NO_PQ_REPLICATE = 1030;
+PlSqlParser.NO_PQ_SKEW = 1031;
+PlSqlParser.NO_PRUNE_GSETS = 1032;
+PlSqlParser.NO_PULL_PRED = 1033;
+PlSqlParser.NO_PUSH_PRED = 1034;
+PlSqlParser.NO_PUSH_SUBQ = 1035;
+PlSqlParser.NO_PX_FAULT_TOLERANCE = 1036;
+PlSqlParser.NO_PX_JOIN_FILTER = 1037;
+PlSqlParser.NO_QKN_BUFF = 1038;
+PlSqlParser.NO_QUERY_TRANSFORMATION = 1039;
+PlSqlParser.NO_REF_CASCADE = 1040;
+PlSqlParser.NORELOCATE = 1041;
+PlSqlParser.NORELY = 1042;
+PlSqlParser.NOREPAIR = 1043;
+PlSqlParser.NOREPLAY = 1044;
+PlSqlParser.NORESETLOGS = 1045;
+PlSqlParser.NO_RESULT_CACHE = 1046;
+PlSqlParser.NOREVERSE = 1047;
+PlSqlParser.NO_REWRITE = 1048;
+PlSqlParser.NOREWRITE = 1049;
+PlSqlParser.NORMAL = 1050;
+PlSqlParser.NO_ROOT_SW_FOR_LOCAL = 1051;
+PlSqlParser.NOROWDEPENDENCIES = 1052;
+PlSqlParser.NOSCHEMACHECK = 1053;
+PlSqlParser.NOSEGMENT = 1054;
+PlSqlParser.NO_SEMIJOIN = 1055;
+PlSqlParser.NO_SEMI_TO_INNER = 1056;
+PlSqlParser.NO_SET_TO_JOIN = 1057;
+PlSqlParser.NOSORT = 1058;
+PlSqlParser.NO_SQL_TRANSLATION = 1059;
+PlSqlParser.NO_SQL_TUNE = 1060;
+PlSqlParser.NO_STAR_TRANSFORMATION = 1061;
+PlSqlParser.NO_STATEMENT_QUEUING = 1062;
+PlSqlParser.NO_STATS_GSETS = 1063;
+PlSqlParser.NOSTRICT = 1064;
+PlSqlParser.NO_SUBQUERY_PRUNING = 1065;
+PlSqlParser.NO_SUBSTRB_PAD = 1066;
+PlSqlParser.NO_SWAP_JOIN_INPUTS = 1067;
+PlSqlParser.NOSWITCH = 1068;
+PlSqlParser.NO_TABLE_LOOKUP_BY_NL = 1069;
+PlSqlParser.NO_TEMP_TABLE = 1070;
+PlSqlParser.NOTHING = 1071;
+PlSqlParser.NOTIFICATION = 1072;
+PlSqlParser.NOT = 1073;
+PlSqlParser.NO_TRANSFORM_DISTINCT_AGG = 1074;
+PlSqlParser.NO_UNNEST = 1075;
+PlSqlParser.NO_USE_CUBE = 1076;
+PlSqlParser.NO_USE_HASH_AGGREGATION = 1077;
+PlSqlParser.NO_USE_HASH_GBY_FOR_PUSHDOWN = 1078;
+PlSqlParser.NO_USE_HASH = 1079;
+PlSqlParser.NO_USE_INVISIBLE_INDEXES = 1080;
+PlSqlParser.NO_USE_MERGE = 1081;
+PlSqlParser.NO_USE_NL = 1082;
+PlSqlParser.NO_USE_VECTOR_AGGREGATION = 1083;
+PlSqlParser.NOVALIDATE = 1084;
+PlSqlParser.NO_VECTOR_TRANSFORM_DIMS = 1085;
+PlSqlParser.NO_VECTOR_TRANSFORM_FACT = 1086;
+PlSqlParser.NO_VECTOR_TRANSFORM = 1087;
+PlSqlParser.NOWAIT = 1088;
+PlSqlParser.NO_XDB_FASTPATH_INSERT = 1089;
+PlSqlParser.NO_XML_DML_REWRITE = 1090;
+PlSqlParser.NO_XMLINDEX_REWRITE_IN_SELECT = 1091;
+PlSqlParser.NO_XMLINDEX_REWRITE = 1092;
+PlSqlParser.NO_XML_QUERY_REWRITE = 1093;
+PlSqlParser.NO_ZONEMAP = 1094;
+PlSqlParser.NTH_VALUE = 1095;
+PlSqlParser.NULLIF = 1096;
+PlSqlParser.NULL_ = 1097;
+PlSqlParser.NULLS = 1098;
+PlSqlParser.NUMBER = 1099;
+PlSqlParser.NUMERIC = 1100;
+PlSqlParser.NUM_INDEX_KEYS = 1101;
+PlSqlParser.NUMTODSINTERVAL = 1102;
+PlSqlParser.NUMTOYMINTERVAL = 1103;
+PlSqlParser.NVARCHAR2 = 1104;
+PlSqlParser.NVL2 = 1105;
+PlSqlParser.OBJECT2XML = 1106;
+PlSqlParser.OBJECT = 1107;
+PlSqlParser.OBJ_ID = 1108;
+PlSqlParser.OBJNO = 1109;
+PlSqlParser.OBJNO_REUSE = 1110;
+PlSqlParser.OCCURENCES = 1111;
+PlSqlParser.OFFLINE = 1112;
+PlSqlParser.OFF = 1113;
+PlSqlParser.OFFSET = 1114;
+PlSqlParser.OF = 1115;
+PlSqlParser.OIDINDEX = 1116;
+PlSqlParser.OID = 1117;
+PlSqlParser.OLAP = 1118;
+PlSqlParser.OLD = 1119;
+PlSqlParser.OLD_PUSH_PRED = 1120;
+PlSqlParser.OLS = 1121;
+PlSqlParser.OLTP = 1122;
+PlSqlParser.OMIT = 1123;
+PlSqlParser.ONE = 1124;
+PlSqlParser.ONLINE = 1125;
+PlSqlParser.ONLINELOG = 1126;
+PlSqlParser.ONLY = 1127;
+PlSqlParser.ON = 1128;
+PlSqlParser.OPAQUE = 1129;
+PlSqlParser.OPAQUE_TRANSFORM = 1130;
+PlSqlParser.OPAQUE_XCANONICAL = 1131;
+PlSqlParser.OPCODE = 1132;
+PlSqlParser.OPEN = 1133;
+PlSqlParser.OPERATIONS = 1134;
+PlSqlParser.OPERATOR = 1135;
+PlSqlParser.OPT_ESTIMATE = 1136;
+PlSqlParser.OPTIMAL = 1137;
+PlSqlParser.OPTIMIZE = 1138;
+PlSqlParser.OPTIMIZER_FEATURES_ENABLE = 1139;
+PlSqlParser.OPTIMIZER_GOAL = 1140;
+PlSqlParser.OPTION = 1141;
+PlSqlParser.OPT_PARAM = 1142;
+PlSqlParser.ORA_BRANCH = 1143;
+PlSqlParser.ORA_CHECK_ACL = 1144;
+PlSqlParser.ORA_CHECK_PRIVILEGE = 1145;
+PlSqlParser.ORA_CLUSTERING = 1146;
+PlSqlParser.ORADATA = 1147;
+PlSqlParser.ORADEBUG = 1148;
+PlSqlParser.ORA_DST_AFFECTED = 1149;
+PlSqlParser.ORA_DST_CONVERT = 1150;
+PlSqlParser.ORA_DST_ERROR = 1151;
+PlSqlParser.ORA_GET_ACLIDS = 1152;
+PlSqlParser.ORA_GET_PRIVILEGES = 1153;
+PlSqlParser.ORA_HASH = 1154;
+PlSqlParser.ORA_INVOKING_USERID = 1155;
+PlSqlParser.ORA_INVOKING_USER = 1156;
+PlSqlParser.ORA_INVOKING_XS_USER_GUID = 1157;
+PlSqlParser.ORA_INVOKING_XS_USER = 1158;
+PlSqlParser.ORA_RAWCOMPARE = 1159;
+PlSqlParser.ORA_RAWCONCAT = 1160;
+PlSqlParser.ORA_ROWSCN = 1161;
+PlSqlParser.ORA_ROWSCN_RAW = 1162;
+PlSqlParser.ORA_ROWVERSION = 1163;
+PlSqlParser.ORA_TABVERSION = 1164;
+PlSqlParser.ORA_WRITE_TIME = 1165;
+PlSqlParser.ORDERED = 1166;
+PlSqlParser.ORDERED_PREDICATES = 1167;
+PlSqlParser.ORDER = 1168;
+PlSqlParser.ORDINALITY = 1169;
+PlSqlParser.OR_EXPAND = 1170;
+PlSqlParser.ORGANIZATION = 1171;
+PlSqlParser.OR = 1172;
+PlSqlParser.OR_PREDICATES = 1173;
+PlSqlParser.OSERROR = 1174;
+PlSqlParser.OTHER = 1175;
+PlSqlParser.OUTER_JOIN_TO_ANTI = 1176;
+PlSqlParser.OUTER_JOIN_TO_INNER = 1177;
+PlSqlParser.OUTER = 1178;
+PlSqlParser.OUTLINE_LEAF = 1179;
+PlSqlParser.OUTLINE = 1180;
+PlSqlParser.OUT_OF_LINE = 1181;
+PlSqlParser.OUT = 1182;
+PlSqlParser.OVERFLOW_NOMOVE = 1183;
+PlSqlParser.OVERFLOW = 1184;
+PlSqlParser.OVERLAPS = 1185;
+PlSqlParser.OVER = 1186;
+PlSqlParser.OVERRIDING = 1187;
+PlSqlParser.OWNER = 1188;
+PlSqlParser.OWNERSHIP = 1189;
+PlSqlParser.OWN = 1190;
+PlSqlParser.PACKAGE = 1191;
+PlSqlParser.PACKAGES = 1192;
+PlSqlParser.PARALLEL_ENABLE = 1193;
+PlSqlParser.PARALLEL_INDEX = 1194;
+PlSqlParser.PARALLEL = 1195;
+PlSqlParser.PARAMETERFILE = 1196;
+PlSqlParser.PARAMETERS = 1197;
+PlSqlParser.PARAM = 1198;
+PlSqlParser.PARENT = 1199;
+PlSqlParser.PARITY = 1200;
+PlSqlParser.PARTIAL_JOIN = 1201;
+PlSqlParser.PARTIALLY = 1202;
+PlSqlParser.PARTIAL = 1203;
+PlSqlParser.PARTIAL_ROLLUP_PUSHDOWN = 1204;
+PlSqlParser.PARTITION_HASH = 1205;
+PlSqlParser.PARTITION_LIST = 1206;
+PlSqlParser.PARTITION = 1207;
+PlSqlParser.PARTITION_RANGE = 1208;
+PlSqlParser.PARTITIONS = 1209;
+PlSqlParser.PARTNUMINST = 1210;
+PlSqlParser.PASSING = 1211;
+PlSqlParser.PASSWORD_GRACE_TIME = 1212;
+PlSqlParser.PASSWORD_LIFE_TIME = 1213;
+PlSqlParser.PASSWORD_LOCK_TIME = 1214;
+PlSqlParser.PASSWORD = 1215;
+PlSqlParser.PASSWORD_REUSE_MAX = 1216;
+PlSqlParser.PASSWORD_REUSE_TIME = 1217;
+PlSqlParser.PASSWORD_VERIFY_FUNCTION = 1218;
+PlSqlParser.PAST = 1219;
+PlSqlParser.PATCH = 1220;
+PlSqlParser.PATH = 1221;
+PlSqlParser.PATH_PREFIX = 1222;
+PlSqlParser.PATHS = 1223;
+PlSqlParser.PATTERN = 1224;
+PlSqlParser.PBL_HS_BEGIN = 1225;
+PlSqlParser.PBL_HS_END = 1226;
+PlSqlParser.PCTFREE = 1227;
+PlSqlParser.PCTINCREASE = 1228;
+PlSqlParser.PCTTHRESHOLD = 1229;
+PlSqlParser.PCTUSED = 1230;
+PlSqlParser.PCTVERSION = 1231;
+PlSqlParser.PENDING = 1232;
+PlSqlParser.PERCENT_FOUND = 1233;
+PlSqlParser.PERCENT_ISOPEN = 1234;
+PlSqlParser.PERCENT_NOTFOUND = 1235;
+PlSqlParser.PERCENT_KEYWORD = 1236;
+PlSqlParser.PERCENT_RANKM = 1237;
+PlSqlParser.PERCENT_ROWCOUNT = 1238;
+PlSqlParser.PERCENT_ROWTYPE = 1239;
+PlSqlParser.PERCENT_TYPE = 1240;
+PlSqlParser.PERFORMANCE = 1241;
+PlSqlParser.PERIOD_KEYWORD = 1242;
+PlSqlParser.PERMANENT = 1243;
+PlSqlParser.PERMISSION = 1244;
+PlSqlParser.PERMUTE = 1245;
+PlSqlParser.PER = 1246;
+PlSqlParser.PFILE = 1247;
+PlSqlParser.PHYSICAL = 1248;
+PlSqlParser.PIKEY = 1249;
+PlSqlParser.PIPELINED = 1250;
+PlSqlParser.PIPE = 1251;
+PlSqlParser.PIV_GB = 1252;
+PlSqlParser.PIVOT = 1253;
+PlSqlParser.PIV_SSF = 1254;
+PlSqlParser.PLACE_DISTINCT = 1255;
+PlSqlParser.PLACE_GROUP_BY = 1256;
+PlSqlParser.PLAN = 1257;
+PlSqlParser.PLSCOPE_SETTINGS = 1258;
+PlSqlParser.PLS_INTEGER = 1259;
+PlSqlParser.PLSQL_CCFLAGS = 1260;
+PlSqlParser.PLSQL_CODE_TYPE = 1261;
+PlSqlParser.PLSQL_DEBUG = 1262;
+PlSqlParser.PLSQL_OPTIMIZE_LEVEL = 1263;
+PlSqlParser.PLSQL_WARNINGS = 1264;
+PlSqlParser.PLUGGABLE = 1265;
+PlSqlParser.POINT = 1266;
+PlSqlParser.POLICY = 1267;
+PlSqlParser.POOL_16K = 1268;
+PlSqlParser.POOL_2K = 1269;
+PlSqlParser.POOL_32K = 1270;
+PlSqlParser.POOL_4K = 1271;
+PlSqlParser.POOL_8K = 1272;
+PlSqlParser.POSITIVEN = 1273;
+PlSqlParser.POSITIVE = 1274;
+PlSqlParser.POST_TRANSACTION = 1275;
+PlSqlParser.POWERMULTISET_BY_CARDINALITY = 1276;
+PlSqlParser.POWERMULTISET = 1277;
+PlSqlParser.POWER = 1278;
+PlSqlParser.PQ_CONCURRENT_UNION = 1279;
+PlSqlParser.PQ_DISTRIBUTE = 1280;
+PlSqlParser.PQ_DISTRIBUTE_WINDOW = 1281;
+PlSqlParser.PQ_FILTER = 1282;
+PlSqlParser.PQ_MAP = 1283;
+PlSqlParser.PQ_NOMAP = 1284;
+PlSqlParser.PQ_REPLICATE = 1285;
+PlSqlParser.PQ_SKEW = 1286;
+PlSqlParser.PRAGMA = 1287;
+PlSqlParser.PREBUILT = 1288;
+PlSqlParser.PRECEDES = 1289;
+PlSqlParser.PRECEDING = 1290;
+PlSqlParser.PRECISION = 1291;
+PlSqlParser.PRECOMPUTE_SUBQUERY = 1292;
+PlSqlParser.PREDICATE_REORDERS = 1293;
+PlSqlParser.PRELOAD = 1294;
+PlSqlParser.PREPARE = 1295;
+PlSqlParser.PRESENTNNV = 1296;
+PlSqlParser.PRESENT = 1297;
+PlSqlParser.PRESENTV = 1298;
+PlSqlParser.PRESERVE_OID = 1299;
+PlSqlParser.PRESERVE = 1300;
+PlSqlParser.PRETTY = 1301;
+PlSqlParser.PREVIOUS = 1302;
+PlSqlParser.PREV = 1303;
+PlSqlParser.PRIMARY = 1304;
+PlSqlParser.PRINTBLOBTOCLOB = 1305;
+PlSqlParser.PRIORITY = 1306;
+PlSqlParser.PRIOR = 1307;
+PlSqlParser.PRIVATE = 1308;
+PlSqlParser.PRIVATE_SGA = 1309;
+PlSqlParser.PRIVILEGED = 1310;
+PlSqlParser.PRIVILEGE = 1311;
+PlSqlParser.PRIVILEGES = 1312;
+PlSqlParser.PROCEDURAL = 1313;
+PlSqlParser.PROCEDURE = 1314;
+PlSqlParser.PROCESS = 1315;
+PlSqlParser.PROFILE = 1316;
+PlSqlParser.PROGRAM = 1317;
+PlSqlParser.PROJECT = 1318;
+PlSqlParser.PROPAGATE = 1319;
+PlSqlParser.PROTECTED = 1320;
+PlSqlParser.PROTECTION = 1321;
+PlSqlParser.PROXY = 1322;
+PlSqlParser.PRUNING = 1323;
+PlSqlParser.PUBLIC = 1324;
+PlSqlParser.PULL_PRED = 1325;
+PlSqlParser.PURGE = 1326;
+PlSqlParser.PUSH_PRED = 1327;
+PlSqlParser.PUSH_SUBQ = 1328;
+PlSqlParser.PX_FAULT_TOLERANCE = 1329;
+PlSqlParser.PX_GRANULE = 1330;
+PlSqlParser.PX_JOIN_FILTER = 1331;
+PlSqlParser.QB_NAME = 1332;
+PlSqlParser.QUERY_BLOCK = 1333;
+PlSqlParser.QUERY = 1334;
+PlSqlParser.QUEUE_CURR = 1335;
+PlSqlParser.QUEUE = 1336;
+PlSqlParser.QUEUE_ROWP = 1337;
+PlSqlParser.QUIESCE = 1338;
+PlSqlParser.QUORUM = 1339;
+PlSqlParser.QUOTA = 1340;
+PlSqlParser.RAISE = 1341;
+PlSqlParser.RANDOM_LOCAL = 1342;
+PlSqlParser.RANDOM = 1343;
+PlSqlParser.RANGE = 1344;
+PlSqlParser.RANKM = 1345;
+PlSqlParser.RAPIDLY = 1346;
+PlSqlParser.RAW = 1347;
+PlSqlParser.RAWTOHEX = 1348;
+PlSqlParser.RAWTONHEX = 1349;
+PlSqlParser.RBA = 1350;
+PlSqlParser.RBO_OUTLINE = 1351;
+PlSqlParser.RDBA = 1352;
+PlSqlParser.READ = 1353;
+PlSqlParser.READS = 1354;
+PlSqlParser.REALM = 1355;
+PlSqlParser.REAL = 1356;
+PlSqlParser.REBALANCE = 1357;
+PlSqlParser.REBUILD = 1358;
+PlSqlParser.RECORD = 1359;
+PlSqlParser.RECORDS_PER_BLOCK = 1360;
+PlSqlParser.RECOVERABLE = 1361;
+PlSqlParser.RECOVER = 1362;
+PlSqlParser.RECOVERY = 1363;
+PlSqlParser.RECYCLEBIN = 1364;
+PlSqlParser.RECYCLE = 1365;
+PlSqlParser.REDACTION = 1366;
+PlSqlParser.REDEFINE = 1367;
+PlSqlParser.REDO = 1368;
+PlSqlParser.REDUCED = 1369;
+PlSqlParser.REDUNDANCY = 1370;
+PlSqlParser.REF_CASCADE_CURSOR = 1371;
+PlSqlParser.REFERENCED = 1372;
+PlSqlParser.REFERENCE = 1373;
+PlSqlParser.REFERENCES = 1374;
+PlSqlParser.REFERENCING = 1375;
+PlSqlParser.REF = 1376;
+PlSqlParser.REFRESH = 1377;
+PlSqlParser.REFTOHEX = 1378;
+PlSqlParser.REGEXP_COUNT = 1379;
+PlSqlParser.REGEXP_INSTR = 1380;
+PlSqlParser.REGEXP_LIKE = 1381;
+PlSqlParser.REGEXP_REPLACE = 1382;
+PlSqlParser.REGEXP_SUBSTR = 1383;
+PlSqlParser.REGISTER = 1384;
+PlSqlParser.REGR_AVGX = 1385;
+PlSqlParser.REGR_AVGY = 1386;
+PlSqlParser.REGR_COUNT = 1387;
+PlSqlParser.REGR_INTERCEPT = 1388;
+PlSqlParser.REGR_R2 = 1389;
+PlSqlParser.REGR_SLOPE = 1390;
+PlSqlParser.REGR_SXX = 1391;
+PlSqlParser.REGR_SXY = 1392;
+PlSqlParser.REGR_SYY = 1393;
+PlSqlParser.REGULAR = 1394;
+PlSqlParser.REJECT = 1395;
+PlSqlParser.REKEY = 1396;
+PlSqlParser.RELATIONAL = 1397;
+PlSqlParser.RELIES_ON = 1398;
+PlSqlParser.RELOCATE = 1399;
+PlSqlParser.RELY = 1400;
+PlSqlParser.REMAINDER = 1401;
+PlSqlParser.REMOTE_MAPPED = 1402;
+PlSqlParser.REMOVE = 1403;
+PlSqlParser.RENAME = 1404;
+PlSqlParser.REPAIR = 1405;
+PlSqlParser.REPEAT = 1406;
+PlSqlParser.REPLACE = 1407;
+PlSqlParser.REPLICATION = 1408;
+PlSqlParser.REQUIRED = 1409;
+PlSqlParser.RESETLOGS = 1410;
+PlSqlParser.RESET = 1411;
+PlSqlParser.RESIZE = 1412;
+PlSqlParser.RESOLVE = 1413;
+PlSqlParser.RESOLVER = 1414;
+PlSqlParser.RESOURCE = 1415;
+PlSqlParser.RESPECT = 1416;
+PlSqlParser.RESTART = 1417;
+PlSqlParser.RESTORE_AS_INTERVALS = 1418;
+PlSqlParser.RESTORE = 1419;
+PlSqlParser.RESTRICT_ALL_REF_CONS = 1420;
+PlSqlParser.RESTRICTED = 1421;
+PlSqlParser.RESTRICT_REFERENCES = 1422;
+PlSqlParser.RESTRICT = 1423;
+PlSqlParser.RESULT_CACHE = 1424;
+PlSqlParser.RESULT = 1425;
+PlSqlParser.RESUMABLE = 1426;
+PlSqlParser.RESUME = 1427;
+PlSqlParser.RETENTION = 1428;
+PlSqlParser.RETRY_ON_ROW_CHANGE = 1429;
+PlSqlParser.RETURNING = 1430;
+PlSqlParser.RETURN = 1431;
+PlSqlParser.REUSE = 1432;
+PlSqlParser.REVERSE = 1433;
+PlSqlParser.REVOKE = 1434;
+PlSqlParser.REWRITE_OR_ERROR = 1435;
+PlSqlParser.REWRITE = 1436;
+PlSqlParser.RIGHT = 1437;
+PlSqlParser.ROLE = 1438;
+PlSqlParser.ROLESET = 1439;
+PlSqlParser.ROLES = 1440;
+PlSqlParser.ROLLBACK = 1441;
+PlSqlParser.ROLLING = 1442;
+PlSqlParser.ROLLUP = 1443;
+PlSqlParser.ROWDEPENDENCIES = 1444;
+PlSqlParser.ROWID_MAPPING_TABLE = 1445;
+PlSqlParser.ROWID = 1446;
+PlSqlParser.ROWIDTOCHAR = 1447;
+PlSqlParser.ROWIDTONCHAR = 1448;
+PlSqlParser.ROW_LENGTH = 1449;
+PlSqlParser.ROWNUM = 1450;
+PlSqlParser.ROW = 1451;
+PlSqlParser.ROWS = 1452;
+PlSqlParser.RPAD = 1453;
+PlSqlParser.RTRIM = 1454;
+PlSqlParser.RULE = 1455;
+PlSqlParser.RULES = 1456;
+PlSqlParser.RUNNING = 1457;
+PlSqlParser.SALT = 1458;
+PlSqlParser.SAMPLE = 1459;
+PlSqlParser.SAVE_AS_INTERVALS = 1460;
+PlSqlParser.SAVEPOINT = 1461;
+PlSqlParser.SAVE = 1462;
+PlSqlParser.SB4 = 1463;
+PlSqlParser.SCALE_ROWS = 1464;
+PlSqlParser.SCALE = 1465;
+PlSqlParser.SCAN_INSTANCES = 1466;
+PlSqlParser.SCAN = 1467;
+PlSqlParser.SCHEDULER = 1468;
+PlSqlParser.SCHEMACHECK = 1469;
+PlSqlParser.SCHEMA = 1470;
+PlSqlParser.SCN_ASCENDING = 1471;
+PlSqlParser.SCN = 1472;
+PlSqlParser.SCOPE = 1473;
+PlSqlParser.SCRUB = 1474;
+PlSqlParser.SD_ALL = 1475;
+PlSqlParser.SD_INHIBIT = 1476;
+PlSqlParser.SDO_GEOM_MBR = 1477;
+PlSqlParser.SD_SHOW = 1478;
+PlSqlParser.SEARCH = 1479;
+PlSqlParser.SECOND = 1480;
+PlSqlParser.SECRET = 1481;
+PlSqlParser.SECUREFILE_DBA = 1482;
+PlSqlParser.SECUREFILE = 1483;
+PlSqlParser.SECURITY = 1484;
+PlSqlParser.SEED = 1485;
+PlSqlParser.SEG_BLOCK = 1486;
+PlSqlParser.SEG_FILE = 1487;
+PlSqlParser.SEGMENT = 1488;
+PlSqlParser.SELECTIVITY = 1489;
+PlSqlParser.SELECT = 1490;
+PlSqlParser.SELF = 1491;
+PlSqlParser.SEMIJOIN_DRIVER = 1492;
+PlSqlParser.SEMIJOIN = 1493;
+PlSqlParser.SEMI_TO_INNER = 1494;
+PlSqlParser.SEQUENCED = 1495;
+PlSqlParser.SEQUENCE = 1496;
+PlSqlParser.SEQUENTIAL = 1497;
+PlSqlParser.SEQ = 1498;
+PlSqlParser.SERIALIZABLE = 1499;
+PlSqlParser.SERIALLY_REUSABLE = 1500;
+PlSqlParser.SERIAL = 1501;
+PlSqlParser.SERVERERROR = 1502;
+PlSqlParser.SERVICE_NAME_CONVERT = 1503;
+PlSqlParser.SERVICES = 1504;
+PlSqlParser.SESSION_CACHED_CURSORS = 1505;
+PlSqlParser.SESSION = 1506;
+PlSqlParser.SESSIONS_PER_USER = 1507;
+PlSqlParser.SESSIONTIMEZONE = 1508;
+PlSqlParser.SESSIONTZNAME = 1509;
+PlSqlParser.SET = 1510;
+PlSqlParser.SETS = 1511;
+PlSqlParser.SETTINGS = 1512;
+PlSqlParser.SET_TO_JOIN = 1513;
+PlSqlParser.SEVERE = 1514;
+PlSqlParser.SHARED_POOL = 1515;
+PlSqlParser.SHARED = 1516;
+PlSqlParser.SHARE = 1517;
+PlSqlParser.SHARING = 1518;
+PlSqlParser.SHELFLIFE = 1519;
+PlSqlParser.SHOW = 1520;
+PlSqlParser.SHRINK = 1521;
+PlSqlParser.SHUTDOWN = 1522;
+PlSqlParser.SIBLINGS = 1523;
+PlSqlParser.SID = 1524;
+PlSqlParser.SIGNAL_COMPONENT = 1525;
+PlSqlParser.SIGNAL_FUNCTION = 1526;
+PlSqlParser.SIGN = 1527;
+PlSqlParser.SIGNTYPE = 1528;
+PlSqlParser.SIMPLE_INTEGER = 1529;
+PlSqlParser.SIMPLE = 1530;
+PlSqlParser.SINGLE = 1531;
+PlSqlParser.SINGLETASK = 1532;
+PlSqlParser.SINH = 1533;
+PlSqlParser.SIN = 1534;
+PlSqlParser.SIZE = 1535;
+PlSqlParser.SKIP_EXT_OPTIMIZER = 1536;
+PlSqlParser.SKIP_ = 1537;
+PlSqlParser.SKIP_UNQ_UNUSABLE_IDX = 1538;
+PlSqlParser.SKIP_UNUSABLE_INDEXES = 1539;
+PlSqlParser.SMALLFILE = 1540;
+PlSqlParser.SMALLINT = 1541;
+PlSqlParser.SNAPSHOT = 1542;
+PlSqlParser.SOME = 1543;
+PlSqlParser.SORT = 1544;
+PlSqlParser.SOUNDEX = 1545;
+PlSqlParser.SOURCE_FILE_DIRECTORY = 1546;
+PlSqlParser.SOURCE_FILE_NAME_CONVERT = 1547;
+PlSqlParser.SOURCE = 1548;
+PlSqlParser.SPACE_KEYWORD = 1549;
+PlSqlParser.SPECIFICATION = 1550;
+PlSqlParser.SPFILE = 1551;
+PlSqlParser.SPLIT = 1552;
+PlSqlParser.SPREADSHEET = 1553;
+PlSqlParser.SQLDATA = 1554;
+PlSqlParser.SQLERROR = 1555;
+PlSqlParser.SQLLDR = 1556;
+PlSqlParser.SQL = 1557;
+PlSqlParser.SQL_TRACE = 1558;
+PlSqlParser.SQL_TRANSLATION_PROFILE = 1559;
+PlSqlParser.SQRT = 1560;
+PlSqlParser.STALE = 1561;
+PlSqlParser.STANDALONE = 1562;
+PlSqlParser.STANDARD_HASH = 1563;
+PlSqlParser.STANDBY_MAX_DATA_DELAY = 1564;
+PlSqlParser.STANDBYS = 1565;
+PlSqlParser.STANDBY = 1566;
+PlSqlParser.STAR = 1567;
+PlSqlParser.STAR_TRANSFORMATION = 1568;
+PlSqlParser.START = 1569;
+PlSqlParser.STARTUP = 1570;
+PlSqlParser.STATEMENT_ID = 1571;
+PlSqlParser.STATEMENT_QUEUING = 1572;
+PlSqlParser.STATEMENTS = 1573;
+PlSqlParser.STATEMENT = 1574;
+PlSqlParser.STATE = 1575;
+PlSqlParser.STATIC = 1576;
+PlSqlParser.STATISTICS = 1577;
+PlSqlParser.STATS_BINOMIAL_TEST = 1578;
+PlSqlParser.STATS_CROSSTAB = 1579;
+PlSqlParser.STATS_F_TEST = 1580;
+PlSqlParser.STATS_KS_TEST = 1581;
+PlSqlParser.STATS_MODE = 1582;
+PlSqlParser.STATS_MW_TEST = 1583;
+PlSqlParser.STATS_ONE_WAY_ANOVA = 1584;
+PlSqlParser.STATS_T_TEST_INDEP = 1585;
+PlSqlParser.STATS_T_TEST_INDEPU = 1586;
+PlSqlParser.STATS_T_TEST_ONE = 1587;
+PlSqlParser.STATS_T_TEST_PAIRED = 1588;
+PlSqlParser.STATS_WSR_TEST = 1589;
+PlSqlParser.STDDEV_POP = 1590;
+PlSqlParser.STDDEV_SAMP = 1591;
+PlSqlParser.STOP = 1592;
+PlSqlParser.STORAGE = 1593;
+PlSqlParser.STORE = 1594;
+PlSqlParser.STREAMS = 1595;
+PlSqlParser.STREAM = 1596;
+PlSqlParser.STRICT = 1597;
+PlSqlParser.STRING = 1598;
+PlSqlParser.STRIPE_COLUMNS = 1599;
+PlSqlParser.STRIPE_WIDTH = 1600;
+PlSqlParser.STRIP = 1601;
+PlSqlParser.STRUCTURE = 1602;
+PlSqlParser.SUBMULTISET = 1603;
+PlSqlParser.SUBPARTITION_REL = 1604;
+PlSqlParser.SUBPARTITIONS = 1605;
+PlSqlParser.SUBPARTITION = 1606;
+PlSqlParser.SUBQUERIES = 1607;
+PlSqlParser.SUBQUERY_PRUNING = 1608;
+PlSqlParser.SUBSCRIBE = 1609;
+PlSqlParser.SUBSET = 1610;
+PlSqlParser.SUBSTITUTABLE = 1611;
+PlSqlParser.SUBSTR2 = 1612;
+PlSqlParser.SUBSTR4 = 1613;
+PlSqlParser.SUBSTRB = 1614;
+PlSqlParser.SUBSTRC = 1615;
+PlSqlParser.SUBTYPE = 1616;
+PlSqlParser.SUCCESSFUL = 1617;
+PlSqlParser.SUCCESS = 1618;
+PlSqlParser.SUMMARY = 1619;
+PlSqlParser.SUPPLEMENTAL = 1620;
+PlSqlParser.SUSPEND = 1621;
+PlSqlParser.SWAP_JOIN_INPUTS = 1622;
+PlSqlParser.SWITCHOVER = 1623;
+PlSqlParser.SWITCH = 1624;
+PlSqlParser.SYNCHRONOUS = 1625;
+PlSqlParser.SYNC = 1626;
+PlSqlParser.SYNONYM = 1627;
+PlSqlParser.SYSASM = 1628;
+PlSqlParser.SYS_AUDIT = 1629;
+PlSqlParser.SYSAUX = 1630;
+PlSqlParser.SYSBACKUP = 1631;
+PlSqlParser.SYS_CHECKACL = 1632;
+PlSqlParser.SYS_CHECK_PRIVILEGE = 1633;
+PlSqlParser.SYS_CONNECT_BY_PATH = 1634;
+PlSqlParser.SYS_CONTEXT = 1635;
+PlSqlParser.SYSDATE = 1636;
+PlSqlParser.SYSDBA = 1637;
+PlSqlParser.SYS_DBURIGEN = 1638;
+PlSqlParser.SYSDG = 1639;
+PlSqlParser.SYS_DL_CURSOR = 1640;
+PlSqlParser.SYS_DM_RXFORM_CHR = 1641;
+PlSqlParser.SYS_DM_RXFORM_NUM = 1642;
+PlSqlParser.SYS_DOM_COMPARE = 1643;
+PlSqlParser.SYS_DST_PRIM2SEC = 1644;
+PlSqlParser.SYS_DST_SEC2PRIM = 1645;
+PlSqlParser.SYS_ET_BFILE_TO_RAW = 1646;
+PlSqlParser.SYS_ET_BLOB_TO_IMAGE = 1647;
+PlSqlParser.SYS_ET_IMAGE_TO_BLOB = 1648;
+PlSqlParser.SYS_ET_RAW_TO_BFILE = 1649;
+PlSqlParser.SYS_EXTPDTXT = 1650;
+PlSqlParser.SYS_EXTRACT_UTC = 1651;
+PlSqlParser.SYS_FBT_INSDEL = 1652;
+PlSqlParser.SYS_FILTER_ACLS = 1653;
+PlSqlParser.SYS_FNMATCHES = 1654;
+PlSqlParser.SYS_FNREPLACE = 1655;
+PlSqlParser.SYS_GET_ACLIDS = 1656;
+PlSqlParser.SYS_GET_COL_ACLIDS = 1657;
+PlSqlParser.SYS_GET_PRIVILEGES = 1658;
+PlSqlParser.SYS_GETTOKENID = 1659;
+PlSqlParser.SYS_GETXTIVAL = 1660;
+PlSqlParser.SYS_GUID = 1661;
+PlSqlParser.SYSGUID = 1662;
+PlSqlParser.SYSKM = 1663;
+PlSqlParser.SYS_MAKE_XMLNODEID = 1664;
+PlSqlParser.SYS_MAKEXML = 1665;
+PlSqlParser.SYS_MKXMLATTR = 1666;
+PlSqlParser.SYS_MKXTI = 1667;
+PlSqlParser.SYSOBJ = 1668;
+PlSqlParser.SYS_OP_ADT2BIN = 1669;
+PlSqlParser.SYS_OP_ADTCONS = 1670;
+PlSqlParser.SYS_OP_ALSCRVAL = 1671;
+PlSqlParser.SYS_OP_ATG = 1672;
+PlSqlParser.SYS_OP_BIN2ADT = 1673;
+PlSqlParser.SYS_OP_BITVEC = 1674;
+PlSqlParser.SYS_OP_BL2R = 1675;
+PlSqlParser.SYS_OP_BLOOM_FILTER_LIST = 1676;
+PlSqlParser.SYS_OP_BLOOM_FILTER = 1677;
+PlSqlParser.SYS_OP_C2C = 1678;
+PlSqlParser.SYS_OP_CAST = 1679;
+PlSqlParser.SYS_OP_CEG = 1680;
+PlSqlParser.SYS_OP_CL2C = 1681;
+PlSqlParser.SYS_OP_COMBINED_HASH = 1682;
+PlSqlParser.SYS_OP_COMP = 1683;
+PlSqlParser.SYS_OP_CONVERT = 1684;
+PlSqlParser.SYS_OP_COUNTCHG = 1685;
+PlSqlParser.SYS_OP_CSCONV = 1686;
+PlSqlParser.SYS_OP_CSCONVTEST = 1687;
+PlSqlParser.SYS_OP_CSR = 1688;
+PlSqlParser.SYS_OP_CSX_PATCH = 1689;
+PlSqlParser.SYS_OP_CYCLED_SEQ = 1690;
+PlSqlParser.SYS_OP_DECOMP = 1691;
+PlSqlParser.SYS_OP_DESCEND = 1692;
+PlSqlParser.SYS_OP_DISTINCT = 1693;
+PlSqlParser.SYS_OP_DRA = 1694;
+PlSqlParser.SYS_OP_DUMP = 1695;
+PlSqlParser.SYS_OP_DV_CHECK = 1696;
+PlSqlParser.SYS_OP_ENFORCE_NOT_NULL = 1697;
+PlSqlParser.SYSOPER = 1698;
+PlSqlParser.SYS_OP_EXTRACT = 1699;
+PlSqlParser.SYS_OP_GROUPING = 1700;
+PlSqlParser.SYS_OP_GUID = 1701;
+PlSqlParser.SYS_OP_HASH = 1702;
+PlSqlParser.SYS_OP_IIX = 1703;
+PlSqlParser.SYS_OP_ITR = 1704;
+PlSqlParser.SYS_OP_KEY_VECTOR_CREATE = 1705;
+PlSqlParser.SYS_OP_KEY_VECTOR_FILTER_LIST = 1706;
+PlSqlParser.SYS_OP_KEY_VECTOR_FILTER = 1707;
+PlSqlParser.SYS_OP_KEY_VECTOR_SUCCEEDED = 1708;
+PlSqlParser.SYS_OP_KEY_VECTOR_USE = 1709;
+PlSqlParser.SYS_OP_LBID = 1710;
+PlSqlParser.SYS_OP_LOBLOC2BLOB = 1711;
+PlSqlParser.SYS_OP_LOBLOC2CLOB = 1712;
+PlSqlParser.SYS_OP_LOBLOC2ID = 1713;
+PlSqlParser.SYS_OP_LOBLOC2NCLOB = 1714;
+PlSqlParser.SYS_OP_LOBLOC2TYP = 1715;
+PlSqlParser.SYS_OP_LSVI = 1716;
+PlSqlParser.SYS_OP_LVL = 1717;
+PlSqlParser.SYS_OP_MAKEOID = 1718;
+PlSqlParser.SYS_OP_MAP_NONNULL = 1719;
+PlSqlParser.SYS_OP_MSR = 1720;
+PlSqlParser.SYS_OP_NICOMBINE = 1721;
+PlSqlParser.SYS_OP_NIEXTRACT = 1722;
+PlSqlParser.SYS_OP_NII = 1723;
+PlSqlParser.SYS_OP_NIX = 1724;
+PlSqlParser.SYS_OP_NOEXPAND = 1725;
+PlSqlParser.SYS_OP_NTCIMG = 1726;
+PlSqlParser.SYS_OP_NUMTORAW = 1727;
+PlSqlParser.SYS_OP_OIDVALUE = 1728;
+PlSqlParser.SYS_OP_OPNSIZE = 1729;
+PlSqlParser.SYS_OP_PAR_1 = 1730;
+PlSqlParser.SYS_OP_PARGID_1 = 1731;
+PlSqlParser.SYS_OP_PARGID = 1732;
+PlSqlParser.SYS_OP_PAR = 1733;
+PlSqlParser.SYS_OP_PART_ID = 1734;
+PlSqlParser.SYS_OP_PIVOT = 1735;
+PlSqlParser.SYS_OP_R2O = 1736;
+PlSqlParser.SYS_OP_RAWTONUM = 1737;
+PlSqlParser.SYS_OP_RDTM = 1738;
+PlSqlParser.SYS_OP_REF = 1739;
+PlSqlParser.SYS_OP_RMTD = 1740;
+PlSqlParser.SYS_OP_ROWIDTOOBJ = 1741;
+PlSqlParser.SYS_OP_RPB = 1742;
+PlSqlParser.SYS_OPTLOBPRBSC = 1743;
+PlSqlParser.SYS_OP_TOSETID = 1744;
+PlSqlParser.SYS_OP_TPR = 1745;
+PlSqlParser.SYS_OP_TRTB = 1746;
+PlSqlParser.SYS_OPTXICMP = 1747;
+PlSqlParser.SYS_OPTXQCASTASNQ = 1748;
+PlSqlParser.SYS_OP_UNDESCEND = 1749;
+PlSqlParser.SYS_OP_VECAND = 1750;
+PlSqlParser.SYS_OP_VECBIT = 1751;
+PlSqlParser.SYS_OP_VECOR = 1752;
+PlSqlParser.SYS_OP_VECXOR = 1753;
+PlSqlParser.SYS_OP_VERSION = 1754;
+PlSqlParser.SYS_OP_VREF = 1755;
+PlSqlParser.SYS_OP_VVD = 1756;
+PlSqlParser.SYS_OP_XMLCONS_FOR_CSX = 1757;
+PlSqlParser.SYS_OP_XPTHATG = 1758;
+PlSqlParser.SYS_OP_XPTHIDX = 1759;
+PlSqlParser.SYS_OP_XPTHOP = 1760;
+PlSqlParser.SYS_OP_XTXT2SQLT = 1761;
+PlSqlParser.SYS_OP_ZONE_ID = 1762;
+PlSqlParser.SYS_ORDERKEY_DEPTH = 1763;
+PlSqlParser.SYS_ORDERKEY_MAXCHILD = 1764;
+PlSqlParser.SYS_ORDERKEY_PARENT = 1765;
+PlSqlParser.SYS_PARALLEL_TXN = 1766;
+PlSqlParser.SYS_PATHID_IS_ATTR = 1767;
+PlSqlParser.SYS_PATHID_IS_NMSPC = 1768;
+PlSqlParser.SYS_PATHID_LASTNAME = 1769;
+PlSqlParser.SYS_PATHID_LASTNMSPC = 1770;
+PlSqlParser.SYS_PATH_REVERSE = 1771;
+PlSqlParser.SYS_PXQEXTRACT = 1772;
+PlSqlParser.SYS_RAW_TO_XSID = 1773;
+PlSqlParser.SYS_RID_ORDER = 1774;
+PlSqlParser.SYS_ROW_DELTA = 1775;
+PlSqlParser.SYS_SC_2_XMLT = 1776;
+PlSqlParser.SYS_SYNRCIREDO = 1777;
+PlSqlParser.SYSTEM_DEFINED = 1778;
+PlSqlParser.SYSTEM = 1779;
+PlSqlParser.SYSTIMESTAMP = 1780;
+PlSqlParser.SYS_TYPEID = 1781;
+PlSqlParser.SYS_UMAKEXML = 1782;
+PlSqlParser.SYS_XMLANALYZE = 1783;
+PlSqlParser.SYS_XMLCONTAINS = 1784;
+PlSqlParser.SYS_XMLCONV = 1785;
+PlSqlParser.SYS_XMLEXNSURI = 1786;
+PlSqlParser.SYS_XMLGEN = 1787;
+PlSqlParser.SYS_XMLI_LOC_ISNODE = 1788;
+PlSqlParser.SYS_XMLI_LOC_ISTEXT = 1789;
+PlSqlParser.SYS_XMLINSTR = 1790;
+PlSqlParser.SYS_XMLLOCATOR_GETSVAL = 1791;
+PlSqlParser.SYS_XMLNODEID_GETCID = 1792;
+PlSqlParser.SYS_XMLNODEID_GETLOCATOR = 1793;
+PlSqlParser.SYS_XMLNODEID_GETOKEY = 1794;
+PlSqlParser.SYS_XMLNODEID_GETPATHID = 1795;
+PlSqlParser.SYS_XMLNODEID_GETPTRID = 1796;
+PlSqlParser.SYS_XMLNODEID_GETRID = 1797;
+PlSqlParser.SYS_XMLNODEID_GETSVAL = 1798;
+PlSqlParser.SYS_XMLNODEID_GETTID = 1799;
+PlSqlParser.SYS_XMLNODEID = 1800;
+PlSqlParser.SYS_XMLT_2_SC = 1801;
+PlSqlParser.SYS_XMLTRANSLATE = 1802;
+PlSqlParser.SYS_XMLTYPE2SQL = 1803;
+PlSqlParser.SYS_XQ_ASQLCNV = 1804;
+PlSqlParser.SYS_XQ_ATOMCNVCHK = 1805;
+PlSqlParser.SYS_XQBASEURI = 1806;
+PlSqlParser.SYS_XQCASTABLEERRH = 1807;
+PlSqlParser.SYS_XQCODEP2STR = 1808;
+PlSqlParser.SYS_XQCODEPEQ = 1809;
+PlSqlParser.SYS_XQCON2SEQ = 1810;
+PlSqlParser.SYS_XQCONCAT = 1811;
+PlSqlParser.SYS_XQDELETE = 1812;
+PlSqlParser.SYS_XQDFLTCOLATION = 1813;
+PlSqlParser.SYS_XQDOC = 1814;
+PlSqlParser.SYS_XQDOCURI = 1815;
+PlSqlParser.SYS_XQDURDIV = 1816;
+PlSqlParser.SYS_XQED4URI = 1817;
+PlSqlParser.SYS_XQENDSWITH = 1818;
+PlSqlParser.SYS_XQERRH = 1819;
+PlSqlParser.SYS_XQERR = 1820;
+PlSqlParser.SYS_XQESHTMLURI = 1821;
+PlSqlParser.SYS_XQEXLOBVAL = 1822;
+PlSqlParser.SYS_XQEXSTWRP = 1823;
+PlSqlParser.SYS_XQEXTRACT = 1824;
+PlSqlParser.SYS_XQEXTRREF = 1825;
+PlSqlParser.SYS_XQEXVAL = 1826;
+PlSqlParser.SYS_XQFB2STR = 1827;
+PlSqlParser.SYS_XQFNBOOL = 1828;
+PlSqlParser.SYS_XQFNCMP = 1829;
+PlSqlParser.SYS_XQFNDATIM = 1830;
+PlSqlParser.SYS_XQFNLNAME = 1831;
+PlSqlParser.SYS_XQFNNM = 1832;
+PlSqlParser.SYS_XQFNNSURI = 1833;
+PlSqlParser.SYS_XQFNPREDTRUTH = 1834;
+PlSqlParser.SYS_XQFNQNM = 1835;
+PlSqlParser.SYS_XQFNROOT = 1836;
+PlSqlParser.SYS_XQFORMATNUM = 1837;
+PlSqlParser.SYS_XQFTCONTAIN = 1838;
+PlSqlParser.SYS_XQFUNCR = 1839;
+PlSqlParser.SYS_XQGETCONTENT = 1840;
+PlSqlParser.SYS_XQINDXOF = 1841;
+PlSqlParser.SYS_XQINSERT = 1842;
+PlSqlParser.SYS_XQINSPFX = 1843;
+PlSqlParser.SYS_XQIRI2URI = 1844;
+PlSqlParser.SYS_XQLANG = 1845;
+PlSqlParser.SYS_XQLLNMFRMQNM = 1846;
+PlSqlParser.SYS_XQMKNODEREF = 1847;
+PlSqlParser.SYS_XQNILLED = 1848;
+PlSqlParser.SYS_XQNODENAME = 1849;
+PlSqlParser.SYS_XQNORMSPACE = 1850;
+PlSqlParser.SYS_XQNORMUCODE = 1851;
+PlSqlParser.SYS_XQ_NRNG = 1852;
+PlSqlParser.SYS_XQNSP4PFX = 1853;
+PlSqlParser.SYS_XQNSPFRMQNM = 1854;
+PlSqlParser.SYS_XQPFXFRMQNM = 1855;
+PlSqlParser.SYS_XQ_PKSQL2XML = 1856;
+PlSqlParser.SYS_XQPOLYABS = 1857;
+PlSqlParser.SYS_XQPOLYADD = 1858;
+PlSqlParser.SYS_XQPOLYCEL = 1859;
+PlSqlParser.SYS_XQPOLYCSTBL = 1860;
+PlSqlParser.SYS_XQPOLYCST = 1861;
+PlSqlParser.SYS_XQPOLYDIV = 1862;
+PlSqlParser.SYS_XQPOLYFLR = 1863;
+PlSqlParser.SYS_XQPOLYMOD = 1864;
+PlSqlParser.SYS_XQPOLYMUL = 1865;
+PlSqlParser.SYS_XQPOLYRND = 1866;
+PlSqlParser.SYS_XQPOLYSQRT = 1867;
+PlSqlParser.SYS_XQPOLYSUB = 1868;
+PlSqlParser.SYS_XQPOLYUMUS = 1869;
+PlSqlParser.SYS_XQPOLYUPLS = 1870;
+PlSqlParser.SYS_XQPOLYVEQ = 1871;
+PlSqlParser.SYS_XQPOLYVGE = 1872;
+PlSqlParser.SYS_XQPOLYVGT = 1873;
+PlSqlParser.SYS_XQPOLYVLE = 1874;
+PlSqlParser.SYS_XQPOLYVLT = 1875;
+PlSqlParser.SYS_XQPOLYVNE = 1876;
+PlSqlParser.SYS_XQREF2VAL = 1877;
+PlSqlParser.SYS_XQRENAME = 1878;
+PlSqlParser.SYS_XQREPLACE = 1879;
+PlSqlParser.SYS_XQRESVURI = 1880;
+PlSqlParser.SYS_XQRNDHALF2EVN = 1881;
+PlSqlParser.SYS_XQRSLVQNM = 1882;
+PlSqlParser.SYS_XQRYENVPGET = 1883;
+PlSqlParser.SYS_XQRYVARGET = 1884;
+PlSqlParser.SYS_XQRYWRP = 1885;
+PlSqlParser.SYS_XQSEQ2CON4XC = 1886;
+PlSqlParser.SYS_XQSEQ2CON = 1887;
+PlSqlParser.SYS_XQSEQDEEPEQ = 1888;
+PlSqlParser.SYS_XQSEQINSB = 1889;
+PlSqlParser.SYS_XQSEQRM = 1890;
+PlSqlParser.SYS_XQSEQRVS = 1891;
+PlSqlParser.SYS_XQSEQSUB = 1892;
+PlSqlParser.SYS_XQSEQTYPMATCH = 1893;
+PlSqlParser.SYS_XQSTARTSWITH = 1894;
+PlSqlParser.SYS_XQSTATBURI = 1895;
+PlSqlParser.SYS_XQSTR2CODEP = 1896;
+PlSqlParser.SYS_XQSTRJOIN = 1897;
+PlSqlParser.SYS_XQSUBSTRAFT = 1898;
+PlSqlParser.SYS_XQSUBSTRBEF = 1899;
+PlSqlParser.SYS_XQTOKENIZE = 1900;
+PlSqlParser.SYS_XQTREATAS = 1901;
+PlSqlParser.SYS_XQ_UPKXML2SQL = 1902;
+PlSqlParser.SYS_XQXFORM = 1903;
+PlSqlParser.SYS_XSID_TO_RAW = 1904;
+PlSqlParser.SYS_ZMAP_FILTER = 1905;
+PlSqlParser.SYS_ZMAP_REFRESH = 1906;
+PlSqlParser.TABLE_LOOKUP_BY_NL = 1907;
+PlSqlParser.TABLESPACE_NO = 1908;
+PlSqlParser.TABLESPACE = 1909;
+PlSqlParser.TABLES = 1910;
+PlSqlParser.TABLE_STATS = 1911;
+PlSqlParser.TABLE = 1912;
+PlSqlParser.TABNO = 1913;
+PlSqlParser.TAG = 1914;
+PlSqlParser.TANH = 1915;
+PlSqlParser.TAN = 1916;
+PlSqlParser.TBLORIDXPARTNUM = 1917;
+PlSqlParser.TEMPFILE = 1918;
+PlSqlParser.TEMPLATE = 1919;
+PlSqlParser.TEMPORARY = 1920;
+PlSqlParser.TEMP_TABLE = 1921;
+PlSqlParser.TEST = 1922;
+PlSqlParser.TEXT = 1923;
+PlSqlParser.THAN = 1924;
+PlSqlParser.THEN = 1925;
+PlSqlParser.THE = 1926;
+PlSqlParser.THREAD = 1927;
+PlSqlParser.THROUGH = 1928;
+PlSqlParser.TIER = 1929;
+PlSqlParser.TIES = 1930;
+PlSqlParser.TIMEOUT = 1931;
+PlSqlParser.TIMESTAMP_LTZ_UNCONSTRAINED = 1932;
+PlSqlParser.TIMESTAMP = 1933;
+PlSqlParser.TIMESTAMP_TZ_UNCONSTRAINED = 1934;
+PlSqlParser.TIMESTAMP_UNCONSTRAINED = 1935;
+PlSqlParser.TIMES = 1936;
+PlSqlParser.TIME = 1937;
+PlSqlParser.TIMEZONE = 1938;
+PlSqlParser.TIMEZONE_ABBR = 1939;
+PlSqlParser.TIMEZONE_HOUR = 1940;
+PlSqlParser.TIMEZONE_MINUTE = 1941;
+PlSqlParser.TIMEZONE_OFFSET = 1942;
+PlSqlParser.TIMEZONE_REGION = 1943;
+PlSqlParser.TIME_ZONE = 1944;
+PlSqlParser.TIV_GB = 1945;
+PlSqlParser.TIV_SSF = 1946;
+PlSqlParser.TO_ACLID = 1947;
+PlSqlParser.TO_BINARY_DOUBLE = 1948;
+PlSqlParser.TO_BINARY_FLOAT = 1949;
+PlSqlParser.TO_BLOB = 1950;
+PlSqlParser.TO_CLOB = 1951;
+PlSqlParser.TO_DSINTERVAL = 1952;
+PlSqlParser.TO_LOB = 1953;
+PlSqlParser.TO_MULTI_BYTE = 1954;
+PlSqlParser.TO_NCHAR = 1955;
+PlSqlParser.TO_NCLOB = 1956;
+PlSqlParser.TO_NUMBER = 1957;
+PlSqlParser.TOPLEVEL = 1958;
+PlSqlParser.TO_SINGLE_BYTE = 1959;
+PlSqlParser.TO_TIMESTAMP = 1960;
+PlSqlParser.TO_TIMESTAMP_TZ = 1961;
+PlSqlParser.TO_TIME = 1962;
+PlSqlParser.TO_TIME_TZ = 1963;
+PlSqlParser.TO = 1964;
+PlSqlParser.TO_YMINTERVAL = 1965;
+PlSqlParser.TRACE = 1966;
+PlSqlParser.TRACING = 1967;
+PlSqlParser.TRACKING = 1968;
+PlSqlParser.TRAILING = 1969;
+PlSqlParser.TRANSACTION = 1970;
+PlSqlParser.TRANSFORM_DISTINCT_AGG = 1971;
+PlSqlParser.TRANSITIONAL = 1972;
+PlSqlParser.TRANSITION = 1973;
+PlSqlParser.TRANSLATE = 1974;
+PlSqlParser.TRANSLATION = 1975;
+PlSqlParser.TREAT = 1976;
+PlSqlParser.TRIGGERS = 1977;
+PlSqlParser.TRIGGER = 1978;
+PlSqlParser.TRUE = 1979;
+PlSqlParser.TRUNCATE = 1980;
+PlSqlParser.TRUNC = 1981;
+PlSqlParser.TRUSTED = 1982;
+PlSqlParser.TRUST = 1983;
+PlSqlParser.TUNING = 1984;
+PlSqlParser.TX = 1985;
+PlSqlParser.TYPES = 1986;
+PlSqlParser.TYPE = 1987;
+PlSqlParser.TZ_OFFSET = 1988;
+PlSqlParser.UB2 = 1989;
+PlSqlParser.UBA = 1990;
+PlSqlParser.UCS2 = 1991;
+PlSqlParser.UID = 1992;
+PlSqlParser.UNARCHIVED = 1993;
+PlSqlParser.UNBOUNDED = 1994;
+PlSqlParser.UNBOUND = 1995;
+PlSqlParser.UNCONDITIONAL = 1996;
+PlSqlParser.UNDER = 1997;
+PlSqlParser.UNDO = 1998;
+PlSqlParser.UNDROP = 1999;
+PlSqlParser.UNIFORM = 2000;
+PlSqlParser.UNION = 2001;
+PlSqlParser.UNIQUE = 2002;
+PlSqlParser.UNISTR = 2003;
+PlSqlParser.UNLIMITED = 2004;
+PlSqlParser.UNLOAD = 2005;
+PlSqlParser.UNLOCK = 2006;
+PlSqlParser.UNMATCHED = 2007;
+PlSqlParser.UNNEST_INNERJ_DISTINCT_VIEW = 2008;
+PlSqlParser.UNNEST_NOSEMIJ_NODISTINCTVIEW = 2009;
+PlSqlParser.UNNEST_SEMIJ_VIEW = 2010;
+PlSqlParser.UNNEST = 2011;
+PlSqlParser.UNPACKED = 2012;
+PlSqlParser.UNPIVOT = 2013;
+PlSqlParser.UNPLUG = 2014;
+PlSqlParser.UNPROTECTED = 2015;
+PlSqlParser.UNQUIESCE = 2016;
+PlSqlParser.UNRECOVERABLE = 2017;
+PlSqlParser.UNRESTRICTED = 2018;
+PlSqlParser.UNSUBSCRIBE = 2019;
+PlSqlParser.UNTIL = 2020;
+PlSqlParser.UNUSABLE = 2021;
+PlSqlParser.UNUSED = 2022;
+PlSqlParser.UPDATABLE = 2023;
+PlSqlParser.UPDATED = 2024;
+PlSqlParser.UPDATE = 2025;
+PlSqlParser.UPDATEXML = 2026;
+PlSqlParser.UPD_INDEXES = 2027;
+PlSqlParser.UPD_JOININDEX = 2028;
+PlSqlParser.UPGRADE = 2029;
+PlSqlParser.UPPER = 2030;
+PlSqlParser.UPSERT = 2031;
+PlSqlParser.UROWID = 2032;
+PlSqlParser.USABLE = 2033;
+PlSqlParser.USAGE = 2034;
+PlSqlParser.USE_ANTI = 2035;
+PlSqlParser.USE_CONCAT = 2036;
+PlSqlParser.USE_CUBE = 2037;
+PlSqlParser.USE_HASH_AGGREGATION = 2038;
+PlSqlParser.USE_HASH_GBY_FOR_PUSHDOWN = 2039;
+PlSqlParser.USE_HASH = 2040;
+PlSqlParser.USE_HIDDEN_PARTITIONS = 2041;
+PlSqlParser.USE_INVISIBLE_INDEXES = 2042;
+PlSqlParser.USE_MERGE_CARTESIAN = 2043;
+PlSqlParser.USE_MERGE = 2044;
+PlSqlParser.USE_NL = 2045;
+PlSqlParser.USE_NL_WITH_INDEX = 2046;
+PlSqlParser.USE_PRIVATE_OUTLINES = 2047;
+PlSqlParser.USER_DATA = 2048;
+PlSqlParser.USER_DEFINED = 2049;
+PlSqlParser.USERENV = 2050;
+PlSqlParser.USERGROUP = 2051;
+PlSqlParser.USER_RECYCLEBIN = 2052;
+PlSqlParser.USERS = 2053;
+PlSqlParser.USER_TABLESPACES = 2054;
+PlSqlParser.USER = 2055;
+PlSqlParser.USE_SEMI = 2056;
+PlSqlParser.USE_STORED_OUTLINES = 2057;
+PlSqlParser.USE_TTT_FOR_GSETS = 2058;
+PlSqlParser.USE = 2059;
+PlSqlParser.USE_VECTOR_AGGREGATION = 2060;
+PlSqlParser.USE_WEAK_NAME_RESL = 2061;
+PlSqlParser.USING_NO_EXPAND = 2062;
+PlSqlParser.USING = 2063;
+PlSqlParser.UTF16BE = 2064;
+PlSqlParser.UTF16LE = 2065;
+PlSqlParser.UTF32 = 2066;
+PlSqlParser.UTF8 = 2067;
+PlSqlParser.V1 = 2068;
+PlSqlParser.V2 = 2069;
+PlSqlParser.VALIDATE = 2070;
+PlSqlParser.VALIDATION = 2071;
+PlSqlParser.VALID_TIME_END = 2072;
+PlSqlParser.VALUES = 2073;
+PlSqlParser.VALUE = 2074;
+PlSqlParser.VARCHAR2 = 2075;
+PlSqlParser.VARCHAR = 2076;
+PlSqlParser.VARIABLE = 2077;
+PlSqlParser.VAR_POP = 2078;
+PlSqlParser.VARRAYS = 2079;
+PlSqlParser.VARRAY = 2080;
+PlSqlParser.VAR_SAMP = 2081;
+PlSqlParser.VARYING = 2082;
+PlSqlParser.VECTOR_READ_TRACE = 2083;
+PlSqlParser.VECTOR_READ = 2084;
+PlSqlParser.VECTOR_TRANSFORM_DIMS = 2085;
+PlSqlParser.VECTOR_TRANSFORM_FACT = 2086;
+PlSqlParser.VECTOR_TRANSFORM = 2087;
+PlSqlParser.VERIFIER = 2088;
+PlSqlParser.VERIFY = 2089;
+PlSqlParser.VERSIONING = 2090;
+PlSqlParser.VERSIONS_ENDSCN = 2091;
+PlSqlParser.VERSIONS_ENDTIME = 2092;
+PlSqlParser.VERSIONS_OPERATION = 2093;
+PlSqlParser.VERSIONS_STARTSCN = 2094;
+PlSqlParser.VERSIONS_STARTTIME = 2095;
+PlSqlParser.VERSIONS = 2096;
+PlSqlParser.VERSIONS_XID = 2097;
+PlSqlParser.VERSION = 2098;
+PlSqlParser.VIEW = 2099;
+PlSqlParser.VIOLATION = 2100;
+PlSqlParser.VIRTUAL = 2101;
+PlSqlParser.VISIBILITY = 2102;
+PlSqlParser.VISIBLE = 2103;
+PlSqlParser.VOLUME = 2104;
+PlSqlParser.VSIZE = 2105;
+PlSqlParser.WAIT = 2106;
+PlSqlParser.WALLET = 2107;
+PlSqlParser.WARNING = 2108;
+PlSqlParser.WEEKS = 2109;
+PlSqlParser.WEEK = 2110;
+PlSqlParser.WELLFORMED = 2111;
+PlSqlParser.WHENEVER = 2112;
+PlSqlParser.WHEN = 2113;
+PlSqlParser.WHERE = 2114;
+PlSqlParser.WHILE = 2115;
+PlSqlParser.WHITESPACE = 2116;
+PlSqlParser.WIDTH_BUCKET = 2117;
+PlSqlParser.WITHIN = 2118;
+PlSqlParser.WITHOUT = 2119;
+PlSqlParser.WITH_PLSQL = 2120;
+PlSqlParser.WITH = 2121;
+PlSqlParser.WORK = 2122;
+PlSqlParser.WRAPPED = 2123;
+PlSqlParser.WRAPPER = 2124;
+PlSqlParser.WRITE = 2125;
+PlSqlParser.XDB_FASTPATH_INSERT = 2126;
+PlSqlParser.XDB = 2127;
+PlSqlParser.X_DYN_PRUNE = 2128;
+PlSqlParser.XID = 2129;
+PlSqlParser.XML2OBJECT = 2130;
+PlSqlParser.XMLAGG = 2131;
+PlSqlParser.XMLATTRIBUTES = 2132;
+PlSqlParser.XMLCAST = 2133;
+PlSqlParser.XMLCDATA = 2134;
+PlSqlParser.XMLCOLATTVAL = 2135;
+PlSqlParser.XMLCOMMENT = 2136;
+PlSqlParser.XMLCONCAT = 2137;
+PlSqlParser.XMLDIFF = 2138;
+PlSqlParser.XML_DML_RWT_STMT = 2139;
+PlSqlParser.XMLELEMENT = 2140;
+PlSqlParser.XMLEXISTS2 = 2141;
+PlSqlParser.XMLEXISTS = 2142;
+PlSqlParser.XMLFOREST = 2143;
+PlSqlParser.XMLINDEX = 2144;
+PlSqlParser.XMLINDEX_REWRITE_IN_SELECT = 2145;
+PlSqlParser.XMLINDEX_REWRITE = 2146;
+PlSqlParser.XMLINDEX_SEL_IDX_TBL = 2147;
+PlSqlParser.XMLISNODE = 2148;
+PlSqlParser.XMLISVALID = 2149;
+PlSqlParser.XMLNAMESPACES = 2150;
+PlSqlParser.XMLPARSE = 2151;
+PlSqlParser.XMLPATCH = 2152;
+PlSqlParser.XMLPI = 2153;
+PlSqlParser.XMLQUERYVAL = 2154;
+PlSqlParser.XMLQUERY = 2155;
+PlSqlParser.XMLROOT = 2156;
+PlSqlParser.XMLSCHEMA = 2157;
+PlSqlParser.XMLSERIALIZE = 2158;
+PlSqlParser.XMLTABLE = 2159;
+PlSqlParser.XMLTRANSFORMBLOB = 2160;
+PlSqlParser.XMLTRANSFORM = 2161;
+PlSqlParser.XMLTYPE = 2162;
+PlSqlParser.XML = 2163;
+PlSqlParser.XPATHTABLE = 2164;
+PlSqlParser.XS_SYS_CONTEXT = 2165;
+PlSqlParser.XS = 2166;
+PlSqlParser.XTRANSPORT = 2167;
+PlSqlParser.YEARS = 2168;
+PlSqlParser.YEAR = 2169;
+PlSqlParser.YES = 2170;
+PlSqlParser.YMINTERVAL_UNCONSTRAINED = 2171;
+PlSqlParser.ZONEMAP = 2172;
+PlSqlParser.ZONE = 2173;
+PlSqlParser.PREDICTION = 2174;
+PlSqlParser.PREDICTION_BOUNDS = 2175;
+PlSqlParser.PREDICTION_COST = 2176;
+PlSqlParser.PREDICTION_DETAILS = 2177;
+PlSqlParser.PREDICTION_PROBABILITY = 2178;
+PlSqlParser.PREDICTION_SET = 2179;
+PlSqlParser.CUME_DIST = 2180;
+PlSqlParser.DENSE_RANK = 2181;
+PlSqlParser.LISTAGG = 2182;
+PlSqlParser.PERCENT_RANK = 2183;
+PlSqlParser.PERCENTILE_CONT = 2184;
+PlSqlParser.PERCENTILE_DISC = 2185;
+PlSqlParser.RANK = 2186;
+PlSqlParser.AVG = 2187;
+PlSqlParser.CORR = 2188;
+PlSqlParser.COVAR_ = 2189;
+PlSqlParser.DECODE = 2190;
+PlSqlParser.LAG = 2191;
+PlSqlParser.LEAD = 2192;
+PlSqlParser.MAX = 2193;
+PlSqlParser.MEDIAN = 2194;
+PlSqlParser.MIN = 2195;
+PlSqlParser.NTILE = 2196;
+PlSqlParser.NVL = 2197;
+PlSqlParser.RATIO_TO_REPORT = 2198;
+PlSqlParser.REGR_ = 2199;
+PlSqlParser.ROUND = 2200;
+PlSqlParser.ROW_NUMBER = 2201;
+PlSqlParser.SUBSTR = 2202;
+PlSqlParser.TO_CHAR = 2203;
+PlSqlParser.TRIM = 2204;
+PlSqlParser.SUM = 2205;
+PlSqlParser.STDDEV = 2206;
+PlSqlParser.VAR_ = 2207;
+PlSqlParser.VARIANCE = 2208;
+PlSqlParser.LEAST = 2209;
+PlSqlParser.GREATEST = 2210;
+PlSqlParser.TO_DATE = 2211;
+PlSqlParser.NATIONAL_CHAR_STRING_LIT = 2212;
+PlSqlParser.BIT_STRING_LIT = 2213;
+PlSqlParser.HEX_STRING_LIT = 2214;
+PlSqlParser.DOUBLE_PERIOD = 2215;
+PlSqlParser.PERIOD = 2216;
+PlSqlParser.UNSIGNED_INTEGER = 2217;
+PlSqlParser.APPROXIMATE_NUM_LIT = 2218;
+PlSqlParser.CHAR_STRING = 2219;
+PlSqlParser.DELIMITED_ID = 2220;
+PlSqlParser.PERCENT = 2221;
+PlSqlParser.AMPERSAND = 2222;
+PlSqlParser.LEFT_PAREN = 2223;
+PlSqlParser.RIGHT_PAREN = 2224;
+PlSqlParser.DOUBLE_ASTERISK = 2225;
+PlSqlParser.ASTERISK = 2226;
+PlSqlParser.PLUS_SIGN = 2227;
+PlSqlParser.MINUS_SIGN = 2228;
+PlSqlParser.COMMA = 2229;
+PlSqlParser.SOLIDUS = 2230;
+PlSqlParser.AT_SIGN = 2231;
+PlSqlParser.ASSIGN_OP = 2232;
+PlSqlParser.BINDVAR = 2233;
+PlSqlParser.NOT_EQUAL_OP = 2234;
+PlSqlParser.CARRET_OPERATOR_PART = 2235;
+PlSqlParser.TILDE_OPERATOR_PART = 2236;
+PlSqlParser.EXCLAMATION_OPERATOR_PART = 2237;
+PlSqlParser.GREATER_THAN_OP = 2238;
+PlSqlParser.LESS_THAN_OP = 2239;
+PlSqlParser.COLON = 2240;
+PlSqlParser.SEMICOLON = 2241;
+PlSqlParser.BAR = 2242;
+PlSqlParser.EQUALS_OP = 2243;
+PlSqlParser.LEFT_BRACKET = 2244;
+PlSqlParser.RIGHT_BRACKET = 2245;
+PlSqlParser.INTRODUCER = 2246;
+PlSqlParser.SINGLE_LINE_COMMENT = 2247;
+PlSqlParser.MULTI_LINE_COMMENT = 2248;
+PlSqlParser.REMARK_COMMENT = 2249;
+PlSqlParser.PROMPT_MESSAGE = 2250;
+PlSqlParser.START_CMD = 2251;
+PlSqlParser.REGULAR_ID = 2252;
+PlSqlParser.SPACES = 2253;
+
+PlSqlParser.RULE_program = 0;
+PlSqlParser.RULE_sql_script = 1;
+PlSqlParser.RULE_unit_statement = 2;
+PlSqlParser.RULE_drop_function = 3;
+PlSqlParser.RULE_alter_function = 4;
+PlSqlParser.RULE_create_function_body = 5;
+PlSqlParser.RULE_parallel_enable_clause = 6;
+PlSqlParser.RULE_partition_by_clause = 7;
+PlSqlParser.RULE_result_cache_clause = 8;
+PlSqlParser.RULE_relies_on_part = 9;
+PlSqlParser.RULE_streaming_clause = 10;
+PlSqlParser.RULE_drop_package = 11;
+PlSqlParser.RULE_alter_package = 12;
+PlSqlParser.RULE_create_package = 13;
+PlSqlParser.RULE_create_package_body = 14;
+PlSqlParser.RULE_package_obj_spec = 15;
+PlSqlParser.RULE_procedure_spec = 16;
+PlSqlParser.RULE_function_spec = 17;
+PlSqlParser.RULE_package_obj_body = 18;
+PlSqlParser.RULE_drop_procedure = 19;
+PlSqlParser.RULE_alter_procedure = 20;
+PlSqlParser.RULE_function_body = 21;
+PlSqlParser.RULE_procedure_body = 22;
+PlSqlParser.RULE_create_procedure_body = 23;
+PlSqlParser.RULE_drop_trigger = 24;
+PlSqlParser.RULE_alter_trigger = 25;
+PlSqlParser.RULE_create_trigger = 26;
+PlSqlParser.RULE_trigger_follows_clause = 27;
+PlSqlParser.RULE_trigger_when_clause = 28;
+PlSqlParser.RULE_simple_dml_trigger = 29;
+PlSqlParser.RULE_for_each_row = 30;
+PlSqlParser.RULE_compound_dml_trigger = 31;
+PlSqlParser.RULE_non_dml_trigger = 32;
+PlSqlParser.RULE_trigger_body = 33;
+PlSqlParser.RULE_routine_clause = 34;
+PlSqlParser.RULE_compound_trigger_block = 35;
+PlSqlParser.RULE_timing_point_section = 36;
+PlSqlParser.RULE_non_dml_event = 37;
+PlSqlParser.RULE_dml_event_clause = 38;
+PlSqlParser.RULE_dml_event_element = 39;
+PlSqlParser.RULE_dml_event_nested_clause = 40;
+PlSqlParser.RULE_referencing_clause = 41;
+PlSqlParser.RULE_referencing_element = 42;
+PlSqlParser.RULE_drop_type = 43;
+PlSqlParser.RULE_alter_type = 44;
+PlSqlParser.RULE_compile_type_clause = 45;
+PlSqlParser.RULE_replace_type_clause = 46;
+PlSqlParser.RULE_alter_method_spec = 47;
+PlSqlParser.RULE_alter_method_element = 48;
+PlSqlParser.RULE_alter_attribute_definition = 49;
+PlSqlParser.RULE_attribute_definition = 50;
+PlSqlParser.RULE_alter_collection_clauses = 51;
+PlSqlParser.RULE_dependent_handling_clause = 52;
+PlSqlParser.RULE_dependent_exceptions_part = 53;
+PlSqlParser.RULE_create_type = 54;
+PlSqlParser.RULE_type_definition = 55;
+PlSqlParser.RULE_object_type_def = 56;
+PlSqlParser.RULE_object_as_part = 57;
+PlSqlParser.RULE_object_under_part = 58;
+PlSqlParser.RULE_nested_table_type_def = 59;
+PlSqlParser.RULE_sqlj_object_type = 60;
+PlSqlParser.RULE_type_body = 61;
+PlSqlParser.RULE_type_body_elements = 62;
+PlSqlParser.RULE_map_order_func_declaration = 63;
+PlSqlParser.RULE_subprog_decl_in_type = 64;
+PlSqlParser.RULE_proc_decl_in_type = 65;
+PlSqlParser.RULE_func_decl_in_type = 66;
+PlSqlParser.RULE_constructor_declaration = 67;
+PlSqlParser.RULE_modifier_clause = 68;
+PlSqlParser.RULE_object_member_spec = 69;
+PlSqlParser.RULE_sqlj_object_type_attr = 70;
+PlSqlParser.RULE_element_spec = 71;
+PlSqlParser.RULE_element_spec_options = 72;
+PlSqlParser.RULE_subprogram_spec = 73;
+PlSqlParser.RULE_overriding_subprogram_spec = 74;
+PlSqlParser.RULE_overriding_function_spec = 75;
+PlSqlParser.RULE_type_procedure_spec = 76;
+PlSqlParser.RULE_type_function_spec = 77;
+PlSqlParser.RULE_constructor_spec = 78;
+PlSqlParser.RULE_map_order_function_spec = 79;
+PlSqlParser.RULE_pragma_clause = 80;
+PlSqlParser.RULE_pragma_elements = 81;
+PlSqlParser.RULE_type_elements_parameter = 82;
+PlSqlParser.RULE_drop_sequence = 83;
+PlSqlParser.RULE_alter_sequence = 84;
+PlSqlParser.RULE_alter_session = 85;
+PlSqlParser.RULE_alter_session_set_clause = 86;
+PlSqlParser.RULE_create_sequence = 87;
+PlSqlParser.RULE_sequence_spec = 88;
+PlSqlParser.RULE_sequence_start_clause = 89;
+PlSqlParser.RULE_create_index = 90;
+PlSqlParser.RULE_cluster_index_clause = 91;
+PlSqlParser.RULE_cluster_name = 92;
+PlSqlParser.RULE_table_index_clause = 93;
+PlSqlParser.RULE_bitmap_join_index_clause = 94;
+PlSqlParser.RULE_index_expr = 95;
+PlSqlParser.RULE_index_properties = 96;
+PlSqlParser.RULE_domain_index_clause = 97;
+PlSqlParser.RULE_local_domain_index_clause = 98;
+PlSqlParser.RULE_xmlindex_clause = 99;
+PlSqlParser.RULE_local_xmlindex_clause = 100;
+PlSqlParser.RULE_global_partitioned_index = 101;
+PlSqlParser.RULE_index_partitioning_clause = 102;
+PlSqlParser.RULE_local_partitioned_index = 103;
+PlSqlParser.RULE_on_range_partitioned_table = 104;
+PlSqlParser.RULE_on_list_partitioned_table = 105;
+PlSqlParser.RULE_partitioned_table = 106;
+PlSqlParser.RULE_on_hash_partitioned_table = 107;
+PlSqlParser.RULE_on_hash_partitioned_clause = 108;
+PlSqlParser.RULE_on_comp_partitioned_table = 109;
+PlSqlParser.RULE_on_comp_partitioned_clause = 110;
+PlSqlParser.RULE_index_subpartition_clause = 111;
+PlSqlParser.RULE_index_subpartition_subclause = 112;
+PlSqlParser.RULE_odci_parameters = 113;
+PlSqlParser.RULE_indextype = 114;
+PlSqlParser.RULE_alter_index = 115;
+PlSqlParser.RULE_alter_index_ops_set1 = 116;
+PlSqlParser.RULE_alter_index_ops_set2 = 117;
+PlSqlParser.RULE_visible_or_invisible = 118;
+PlSqlParser.RULE_monitoring_nomonitoring = 119;
+PlSqlParser.RULE_rebuild_clause = 120;
+PlSqlParser.RULE_alter_index_partitioning = 121;
+PlSqlParser.RULE_modify_index_default_attrs = 122;
+PlSqlParser.RULE_add_hash_index_partition = 123;
+PlSqlParser.RULE_coalesce_index_partition = 124;
+PlSqlParser.RULE_modify_index_partition = 125;
+PlSqlParser.RULE_modify_index_partitions_ops = 126;
+PlSqlParser.RULE_rename_index_partition = 127;
+PlSqlParser.RULE_drop_index_partition = 128;
+PlSqlParser.RULE_split_index_partition = 129;
+PlSqlParser.RULE_index_partition_description = 130;
+PlSqlParser.RULE_modify_index_subpartition = 131;
+PlSqlParser.RULE_partition_name_old = 132;
+PlSqlParser.RULE_new_partition_name = 133;
+PlSqlParser.RULE_new_index_name = 134;
+PlSqlParser.RULE_create_user = 135;
+PlSqlParser.RULE_alter_user = 136;
+PlSqlParser.RULE_alter_identified_by = 137;
+PlSqlParser.RULE_identified_by = 138;
+PlSqlParser.RULE_identified_other_clause = 139;
+PlSqlParser.RULE_user_tablespace_clause = 140;
+PlSqlParser.RULE_quota_clause = 141;
+PlSqlParser.RULE_profile_clause = 142;
+PlSqlParser.RULE_role_clause = 143;
+PlSqlParser.RULE_user_default_role_clause = 144;
+PlSqlParser.RULE_password_expire_clause = 145;
+PlSqlParser.RULE_user_lock_clause = 146;
+PlSqlParser.RULE_user_editions_clause = 147;
+PlSqlParser.RULE_alter_user_editions_clause = 148;
+PlSqlParser.RULE_proxy_clause = 149;
+PlSqlParser.RULE_container_names = 150;
+PlSqlParser.RULE_set_container_data = 151;
+PlSqlParser.RULE_add_rem_container_data = 152;
+PlSqlParser.RULE_container_data_clause = 153;
+PlSqlParser.RULE_analyze = 154;
+PlSqlParser.RULE_partition_extention_clause = 155;
+PlSqlParser.RULE_validation_clauses = 156;
+PlSqlParser.RULE_online_or_offline = 157;
+PlSqlParser.RULE_into_clause1 = 158;
+PlSqlParser.RULE_partition_key_value = 159;
+PlSqlParser.RULE_subpartition_key_value = 160;
+PlSqlParser.RULE_associate_statistics = 161;
+PlSqlParser.RULE_column_association = 162;
+PlSqlParser.RULE_function_association = 163;
+PlSqlParser.RULE_indextype_name = 164;
+PlSqlParser.RULE_using_statistics_type = 165;
+PlSqlParser.RULE_statistics_type_name = 166;
+PlSqlParser.RULE_default_cost_clause = 167;
+PlSqlParser.RULE_cpu_cost = 168;
+PlSqlParser.RULE_io_cost = 169;
+PlSqlParser.RULE_network_cost = 170;
+PlSqlParser.RULE_default_selectivity_clause = 171;
+PlSqlParser.RULE_default_selectivity = 172;
+PlSqlParser.RULE_storage_table_clause = 173;
+PlSqlParser.RULE_unified_auditing = 174;
+PlSqlParser.RULE_policy_name = 175;
+PlSqlParser.RULE_audit_traditional = 176;
+PlSqlParser.RULE_audit_direct_path = 177;
+PlSqlParser.RULE_audit_container_clause = 178;
+PlSqlParser.RULE_audit_operation_clause = 179;
+PlSqlParser.RULE_auditing_by_clause = 180;
+PlSqlParser.RULE_audit_user = 181;
+PlSqlParser.RULE_audit_schema_object_clause = 182;
+PlSqlParser.RULE_sql_operation = 183;
+PlSqlParser.RULE_auditing_on_clause = 184;
+PlSqlParser.RULE_model_name = 185;
+PlSqlParser.RULE_object_name = 186;
+PlSqlParser.RULE_profile_name = 187;
+PlSqlParser.RULE_sql_statement_shortcut = 188;
+PlSqlParser.RULE_drop_index = 189;
+PlSqlParser.RULE_rename_object = 190;
+PlSqlParser.RULE_grant_statement = 191;
+PlSqlParser.RULE_container_clause = 192;
+PlSqlParser.RULE_create_directory = 193;
+PlSqlParser.RULE_directory_name = 194;
+PlSqlParser.RULE_directory_path = 195;
+PlSqlParser.RULE_alter_library = 196;
+PlSqlParser.RULE_library_editionable = 197;
+PlSqlParser.RULE_library_debug = 198;
+PlSqlParser.RULE_compiler_parameters_clause = 199;
+PlSqlParser.RULE_parameter_value = 200;
+PlSqlParser.RULE_library_name = 201;
+PlSqlParser.RULE_alter_view = 202;
+PlSqlParser.RULE_alter_view_editionable = 203;
+PlSqlParser.RULE_create_view = 204;
+PlSqlParser.RULE_view_options = 205;
+PlSqlParser.RULE_view_alias_constraint = 206;
+PlSqlParser.RULE_object_view_clause = 207;
+PlSqlParser.RULE_inline_constraint = 208;
+PlSqlParser.RULE_inline_ref_constraint = 209;
+PlSqlParser.RULE_out_of_line_ref_constraint = 210;
+PlSqlParser.RULE_out_of_line_constraint = 211;
+PlSqlParser.RULE_constraint_state = 212;
+PlSqlParser.RULE_alter_tablespace = 213;
+PlSqlParser.RULE_datafile_tempfile_clauses = 214;
+PlSqlParser.RULE_tablespace_logging_clauses = 215;
+PlSqlParser.RULE_tablespace_group_clause = 216;
+PlSqlParser.RULE_tablespace_group_name = 217;
+PlSqlParser.RULE_tablespace_state_clauses = 218;
+PlSqlParser.RULE_flashback_mode_clause = 219;
+PlSqlParser.RULE_new_tablespace_name = 220;
+PlSqlParser.RULE_create_tablespace = 221;
+PlSqlParser.RULE_permanent_tablespace_clause = 222;
+PlSqlParser.RULE_tablespace_encryption_spec = 223;
+PlSqlParser.RULE_logging_clause = 224;
+PlSqlParser.RULE_extent_management_clause = 225;
+PlSqlParser.RULE_segment_management_clause = 226;
+PlSqlParser.RULE_temporary_tablespace_clause = 227;
+PlSqlParser.RULE_undo_tablespace_clause = 228;
+PlSqlParser.RULE_tablespace_retention_clause = 229;
+PlSqlParser.RULE_datafile_specification = 230;
+PlSqlParser.RULE_tempfile_specification = 231;
+PlSqlParser.RULE_datafile_tempfile_spec = 232;
+PlSqlParser.RULE_redo_log_file_spec = 233;
+PlSqlParser.RULE_autoextend_clause = 234;
+PlSqlParser.RULE_maxsize_clause = 235;
+PlSqlParser.RULE_build_clause = 236;
+PlSqlParser.RULE_parallel_clause = 237;
+PlSqlParser.RULE_alter_materialized_view = 238;
+PlSqlParser.RULE_alter_mv_option1 = 239;
+PlSqlParser.RULE_alter_mv_refresh = 240;
+PlSqlParser.RULE_rollback_segment = 241;
+PlSqlParser.RULE_modify_mv_column_clause = 242;
+PlSqlParser.RULE_alter_materialized_view_log = 243;
+PlSqlParser.RULE_add_mv_log_column_clause = 244;
+PlSqlParser.RULE_move_mv_log_clause = 245;
+PlSqlParser.RULE_mv_log_augmentation = 246;
+PlSqlParser.RULE_datetime_expr = 247;
+PlSqlParser.RULE_interval_expr = 248;
+PlSqlParser.RULE_synchronous_or_asynchronous = 249;
+PlSqlParser.RULE_including_or_excluding = 250;
+PlSqlParser.RULE_create_materialized_view_log = 251;
+PlSqlParser.RULE_new_values_clause = 252;
+PlSqlParser.RULE_mv_log_purge_clause = 253;
+PlSqlParser.RULE_create_materialized_view = 254;
+PlSqlParser.RULE_create_mv_refresh = 255;
+PlSqlParser.RULE_create_context = 256;
+PlSqlParser.RULE_oracle_namespace = 257;
+PlSqlParser.RULE_create_cluster = 258;
+PlSqlParser.RULE_create_table = 259;
+PlSqlParser.RULE_xmltype_table = 260;
+PlSqlParser.RULE_xmltype_virtual_columns = 261;
+PlSqlParser.RULE_xmltype_column_properties = 262;
+PlSqlParser.RULE_xmltype_storage = 263;
+PlSqlParser.RULE_xmlschema_spec = 264;
+PlSqlParser.RULE_object_table = 265;
+PlSqlParser.RULE_oid_index_clause = 266;
+PlSqlParser.RULE_oid_clause = 267;
+PlSqlParser.RULE_object_properties = 268;
+PlSqlParser.RULE_object_table_substitution = 269;
+PlSqlParser.RULE_relational_table = 270;
+PlSqlParser.RULE_relational_property = 271;
+PlSqlParser.RULE_table_partitioning_clauses = 272;
+PlSqlParser.RULE_range_partitions = 273;
+PlSqlParser.RULE_list_partitions = 274;
+PlSqlParser.RULE_hash_partitions = 275;
+PlSqlParser.RULE_individual_hash_partitions = 276;
+PlSqlParser.RULE_hash_partitions_by_quantity = 277;
+PlSqlParser.RULE_hash_partition_quantity = 278;
+PlSqlParser.RULE_composite_range_partitions = 279;
+PlSqlParser.RULE_composite_list_partitions = 280;
+PlSqlParser.RULE_composite_hash_partitions = 281;
+PlSqlParser.RULE_reference_partitioning = 282;
+PlSqlParser.RULE_reference_partition_desc = 283;
+PlSqlParser.RULE_system_partitioning = 284;
+PlSqlParser.RULE_range_partition_desc = 285;
+PlSqlParser.RULE_list_partition_desc = 286;
+PlSqlParser.RULE_subpartition_template = 287;
+PlSqlParser.RULE_hash_subpartition_quantity = 288;
+PlSqlParser.RULE_subpartition_by_range = 289;
+PlSqlParser.RULE_subpartition_by_list = 290;
+PlSqlParser.RULE_subpartition_by_hash = 291;
+PlSqlParser.RULE_subpartition_name = 292;
+PlSqlParser.RULE_range_subpartition_desc = 293;
+PlSqlParser.RULE_list_subpartition_desc = 294;
+PlSqlParser.RULE_individual_hash_subparts = 295;
+PlSqlParser.RULE_hash_subparts_by_quantity = 296;
+PlSqlParser.RULE_range_values_clause = 297;
+PlSqlParser.RULE_list_values_clause = 298;
+PlSqlParser.RULE_table_partition_description = 299;
+PlSqlParser.RULE_partitioning_storage_clause = 300;
+PlSqlParser.RULE_lob_partitioning_storage = 301;
+PlSqlParser.RULE_datatype_null_enable = 302;
+PlSqlParser.RULE_size_clause = 303;
+PlSqlParser.RULE_table_compression = 304;
+PlSqlParser.RULE_physical_attributes_clause = 305;
+PlSqlParser.RULE_storage_clause = 306;
+PlSqlParser.RULE_deferred_segment_creation = 307;
+PlSqlParser.RULE_segment_attributes_clause = 308;
+PlSqlParser.RULE_physical_properties = 309;
+PlSqlParser.RULE_row_movement_clause = 310;
+PlSqlParser.RULE_flashback_archive_clause = 311;
+PlSqlParser.RULE_log_grp = 312;
+PlSqlParser.RULE_supplemental_table_logging = 313;
+PlSqlParser.RULE_supplemental_log_grp_clause = 314;
+PlSqlParser.RULE_supplemental_id_key_clause = 315;
+PlSqlParser.RULE_allocate_extent_clause = 316;
+PlSqlParser.RULE_deallocate_unused_clause = 317;
+PlSqlParser.RULE_shrink_clause = 318;
+PlSqlParser.RULE_records_per_block_clause = 319;
+PlSqlParser.RULE_upgrade_table_clause = 320;
+PlSqlParser.RULE_drop_table = 321;
+PlSqlParser.RULE_drop_view = 322;
+PlSqlParser.RULE_comment_on_column = 323;
+PlSqlParser.RULE_enable_or_disable = 324;
+PlSqlParser.RULE_allow_or_disallow = 325;
+PlSqlParser.RULE_create_synonym = 326;
+PlSqlParser.RULE_comment_on_table = 327;
+PlSqlParser.RULE_alter_cluster = 328;
+PlSqlParser.RULE_cache_or_nocache = 329;
+PlSqlParser.RULE_database_name = 330;
+PlSqlParser.RULE_alter_database = 331;
+PlSqlParser.RULE_startup_clauses = 332;
+PlSqlParser.RULE_resetlogs_or_noresetlogs = 333;
+PlSqlParser.RULE_upgrade_or_downgrade = 334;
+PlSqlParser.RULE_recovery_clauses = 335;
+PlSqlParser.RULE_begin_or_end = 336;
+PlSqlParser.RULE_general_recovery = 337;
+PlSqlParser.RULE_full_database_recovery = 338;
+PlSqlParser.RULE_partial_database_recovery = 339;
+PlSqlParser.RULE_partial_database_recovery_10g = 340;
+PlSqlParser.RULE_managed_standby_recovery = 341;
+PlSqlParser.RULE_db_name = 342;
+PlSqlParser.RULE_database_file_clauses = 343;
+PlSqlParser.RULE_create_datafile_clause = 344;
+PlSqlParser.RULE_alter_datafile_clause = 345;
+PlSqlParser.RULE_alter_tempfile_clause = 346;
+PlSqlParser.RULE_logfile_clauses = 347;
+PlSqlParser.RULE_add_logfile_clauses = 348;
+PlSqlParser.RULE_log_file_group = 349;
+PlSqlParser.RULE_drop_logfile_clauses = 350;
+PlSqlParser.RULE_switch_logfile_clause = 351;
+PlSqlParser.RULE_supplemental_db_logging = 352;
+PlSqlParser.RULE_add_or_drop = 353;
+PlSqlParser.RULE_supplemental_plsql_clause = 354;
+PlSqlParser.RULE_logfile_descriptor = 355;
+PlSqlParser.RULE_controlfile_clauses = 356;
+PlSqlParser.RULE_trace_file_clause = 357;
+PlSqlParser.RULE_standby_database_clauses = 358;
+PlSqlParser.RULE_activate_standby_db_clause = 359;
+PlSqlParser.RULE_maximize_standby_db_clause = 360;
+PlSqlParser.RULE_register_logfile_clause = 361;
+PlSqlParser.RULE_commit_switchover_clause = 362;
+PlSqlParser.RULE_start_standby_clause = 363;
+PlSqlParser.RULE_stop_standby_clause = 364;
+PlSqlParser.RULE_convert_database_clause = 365;
+PlSqlParser.RULE_default_settings_clause = 366;
+PlSqlParser.RULE_set_time_zone_clause = 367;
+PlSqlParser.RULE_instance_clauses = 368;
+PlSqlParser.RULE_security_clause = 369;
+PlSqlParser.RULE_domain = 370;
+PlSqlParser.RULE_database = 371;
+PlSqlParser.RULE_edition_name = 372;
+PlSqlParser.RULE_filenumber = 373;
+PlSqlParser.RULE_filename = 374;
+PlSqlParser.RULE_alter_table = 375;
+PlSqlParser.RULE_alter_table_properties = 376;
+PlSqlParser.RULE_alter_table_properties_1 = 377;
+PlSqlParser.RULE_alter_iot_clauses = 378;
+PlSqlParser.RULE_alter_mapping_table_clause = 379;
+PlSqlParser.RULE_alter_overflow_clause = 380;
+PlSqlParser.RULE_add_overflow_clause = 381;
+PlSqlParser.RULE_enable_disable_clause = 382;
+PlSqlParser.RULE_using_index_clause = 383;
+PlSqlParser.RULE_index_attributes = 384;
+PlSqlParser.RULE_sort_or_nosort = 385;
+PlSqlParser.RULE_exceptions_clause = 386;
+PlSqlParser.RULE_move_table_clause = 387;
+PlSqlParser.RULE_index_org_table_clause = 388;
+PlSqlParser.RULE_mapping_table_clause = 389;
+PlSqlParser.RULE_key_compression = 390;
+PlSqlParser.RULE_index_org_overflow_clause = 391;
+PlSqlParser.RULE_column_clauses = 392;
+PlSqlParser.RULE_modify_collection_retrieval = 393;
+PlSqlParser.RULE_collection_item = 394;
+PlSqlParser.RULE_rename_column_clause = 395;
+PlSqlParser.RULE_old_column_name = 396;
+PlSqlParser.RULE_new_column_name = 397;
+PlSqlParser.RULE_add_modify_drop_column_clauses = 398;
+PlSqlParser.RULE_drop_column_clause = 399;
+PlSqlParser.RULE_modify_column_clauses = 400;
+PlSqlParser.RULE_modify_col_properties = 401;
+PlSqlParser.RULE_modify_col_substitutable = 402;
+PlSqlParser.RULE_add_column_clause = 403;
+PlSqlParser.RULE_alter_varray_col_properties = 404;
+PlSqlParser.RULE_varray_col_properties = 405;
+PlSqlParser.RULE_varray_storage_clause = 406;
+PlSqlParser.RULE_lob_segname = 407;
+PlSqlParser.RULE_lob_item = 408;
+PlSqlParser.RULE_lob_storage_parameters = 409;
+PlSqlParser.RULE_lob_storage_clause = 410;
+PlSqlParser.RULE_modify_lob_storage_clause = 411;
+PlSqlParser.RULE_modify_lob_parameters = 412;
+PlSqlParser.RULE_lob_parameters = 413;
+PlSqlParser.RULE_lob_deduplicate_clause = 414;
+PlSqlParser.RULE_lob_compression_clause = 415;
+PlSqlParser.RULE_lob_retention_clause = 416;
+PlSqlParser.RULE_encryption_spec = 417;
+PlSqlParser.RULE_tablespace = 418;
+PlSqlParser.RULE_varray_item = 419;
+PlSqlParser.RULE_column_properties = 420;
+PlSqlParser.RULE_period_definition = 421;
+PlSqlParser.RULE_start_time_column = 422;
+PlSqlParser.RULE_end_time_column = 423;
+PlSqlParser.RULE_column_definition = 424;
+PlSqlParser.RULE_virtual_column_definition = 425;
+PlSqlParser.RULE_autogenerated_sequence_definition = 426;
+PlSqlParser.RULE_out_of_line_part_storage = 427;
+PlSqlParser.RULE_nested_table_col_properties = 428;
+PlSqlParser.RULE_nested_item = 429;
+PlSqlParser.RULE_substitutable_column_clause = 430;
+PlSqlParser.RULE_partition_name = 431;
+PlSqlParser.RULE_supplemental_logging_props = 432;
+PlSqlParser.RULE_column_or_attribute = 433;
+PlSqlParser.RULE_object_type_col_properties = 434;
+PlSqlParser.RULE_constraint_clauses = 435;
+PlSqlParser.RULE_old_constraint_name = 436;
+PlSqlParser.RULE_new_constraint_name = 437;
+PlSqlParser.RULE_drop_constraint_clause = 438;
+PlSqlParser.RULE_drop_primary_key_or_unique_or_generic_clause = 439;
+PlSqlParser.RULE_add_constraint = 440;
+PlSqlParser.RULE_add_constraint_clause = 441;
+PlSqlParser.RULE_check_constraint = 442;
+PlSqlParser.RULE_drop_constraint = 443;
+PlSqlParser.RULE_enable_constraint = 444;
+PlSqlParser.RULE_disable_constraint = 445;
+PlSqlParser.RULE_foreign_key_clause = 446;
+PlSqlParser.RULE_references_clause = 447;
+PlSqlParser.RULE_on_delete_clause = 448;
+PlSqlParser.RULE_unique_key_clause = 449;
+PlSqlParser.RULE_primary_key_clause = 450;
+PlSqlParser.RULE_anonymous_block = 451;
+PlSqlParser.RULE_invoker_rights_clause = 452;
+PlSqlParser.RULE_call_spec = 453;
+PlSqlParser.RULE_java_spec = 454;
+PlSqlParser.RULE_c_spec = 455;
+PlSqlParser.RULE_c_agent_in_clause = 456;
+PlSqlParser.RULE_c_parameters_clause = 457;
+PlSqlParser.RULE_parameter = 458;
+PlSqlParser.RULE_default_value_part = 459;
+PlSqlParser.RULE_seq_of_declare_specs = 460;
+PlSqlParser.RULE_declare_spec = 461;
+PlSqlParser.RULE_variable_declaration = 462;
+PlSqlParser.RULE_subtype_declaration = 463;
+PlSqlParser.RULE_cursor_declaration = 464;
+PlSqlParser.RULE_parameter_spec = 465;
+PlSqlParser.RULE_exception_declaration = 466;
+PlSqlParser.RULE_pragma_declaration = 467;
+PlSqlParser.RULE_record_type_def = 468;
+PlSqlParser.RULE_field_spec = 469;
+PlSqlParser.RULE_ref_cursor_type_def = 470;
+PlSqlParser.RULE_type_declaration = 471;
+PlSqlParser.RULE_table_type_def = 472;
+PlSqlParser.RULE_table_indexed_by_part = 473;
+PlSqlParser.RULE_varray_type_def = 474;
+PlSqlParser.RULE_seq_of_statements = 475;
+PlSqlParser.RULE_label_declaration = 476;
+PlSqlParser.RULE_statement = 477;
+PlSqlParser.RULE_swallow_to_semi = 478;
+PlSqlParser.RULE_assignment_statement = 479;
+PlSqlParser.RULE_continue_statement = 480;
+PlSqlParser.RULE_exit_statement = 481;
+PlSqlParser.RULE_goto_statement = 482;
+PlSqlParser.RULE_if_statement = 483;
+PlSqlParser.RULE_elsif_part = 484;
+PlSqlParser.RULE_else_part = 485;
+PlSqlParser.RULE_loop_statement = 486;
+PlSqlParser.RULE_cursor_loop_param = 487;
+PlSqlParser.RULE_forall_statement = 488;
+PlSqlParser.RULE_bounds_clause = 489;
+PlSqlParser.RULE_between_bound = 490;
+PlSqlParser.RULE_lower_bound = 491;
+PlSqlParser.RULE_upper_bound = 492;
+PlSqlParser.RULE_null_statement = 493;
+PlSqlParser.RULE_raise_statement = 494;
+PlSqlParser.RULE_return_statement = 495;
+PlSqlParser.RULE_function_call = 496;
+PlSqlParser.RULE_procedure_call = 497;
+PlSqlParser.RULE_pipe_row_statement = 498;
+PlSqlParser.RULE_body = 499;
+PlSqlParser.RULE_exception_handler = 500;
+PlSqlParser.RULE_trigger_block = 501;
+PlSqlParser.RULE_block = 502;
+PlSqlParser.RULE_sql_statement = 503;
+PlSqlParser.RULE_execute_immediate = 504;
+PlSqlParser.RULE_dynamic_returning_clause = 505;
+PlSqlParser.RULE_data_manipulation_language_statements = 506;
+PlSqlParser.RULE_cursor_manipulation_statements = 507;
+PlSqlParser.RULE_close_statement = 508;
+PlSqlParser.RULE_open_statement = 509;
+PlSqlParser.RULE_fetch_statement = 510;
+PlSqlParser.RULE_open_for_statement = 511;
+PlSqlParser.RULE_transaction_control_statements = 512;
+PlSqlParser.RULE_set_transaction_command = 513;
+PlSqlParser.RULE_set_constraint_command = 514;
+PlSqlParser.RULE_commit_statement = 515;
+PlSqlParser.RULE_write_clause = 516;
+PlSqlParser.RULE_rollback_statement = 517;
+PlSqlParser.RULE_savepoint_statement = 518;
+PlSqlParser.RULE_explain_statement = 519;
+PlSqlParser.RULE_select_only_statement = 520;
+PlSqlParser.RULE_select_statement = 521;
+PlSqlParser.RULE_subquery_factoring_clause = 522;
+PlSqlParser.RULE_factoring_element = 523;
+PlSqlParser.RULE_search_clause = 524;
+PlSqlParser.RULE_cycle_clause = 525;
+PlSqlParser.RULE_subquery = 526;
+PlSqlParser.RULE_subquery_basic_elements = 527;
+PlSqlParser.RULE_subquery_operation_part = 528;
+PlSqlParser.RULE_query_block = 529;
+PlSqlParser.RULE_selected_list = 530;
+PlSqlParser.RULE_from_clause = 531;
+PlSqlParser.RULE_select_list_elements = 532;
+PlSqlParser.RULE_table_ref_list = 533;
+PlSqlParser.RULE_table_ref = 534;
+PlSqlParser.RULE_table_ref_aux = 535;
+PlSqlParser.RULE_table_ref_aux_internal = 536;
+PlSqlParser.RULE_join_clause = 537;
+PlSqlParser.RULE_join_on_part = 538;
+PlSqlParser.RULE_join_using_part = 539;
+PlSqlParser.RULE_outer_join_type = 540;
+PlSqlParser.RULE_query_partition_clause = 541;
+PlSqlParser.RULE_flashback_query_clause = 542;
+PlSqlParser.RULE_pivot_clause = 543;
+PlSqlParser.RULE_pivot_element = 544;
+PlSqlParser.RULE_pivot_for_clause = 545;
+PlSqlParser.RULE_pivot_in_clause = 546;
+PlSqlParser.RULE_pivot_in_clause_element = 547;
+PlSqlParser.RULE_pivot_in_clause_elements = 548;
+PlSqlParser.RULE_unpivot_clause = 549;
+PlSqlParser.RULE_unpivot_in_clause = 550;
+PlSqlParser.RULE_unpivot_in_elements = 551;
+PlSqlParser.RULE_hierarchical_query_clause = 552;
+PlSqlParser.RULE_start_part = 553;
+PlSqlParser.RULE_group_by_clause = 554;
+PlSqlParser.RULE_group_by_elements = 555;
+PlSqlParser.RULE_rollup_cube_clause = 556;
+PlSqlParser.RULE_grouping_sets_clause = 557;
+PlSqlParser.RULE_grouping_sets_elements = 558;
+PlSqlParser.RULE_having_clause = 559;
+PlSqlParser.RULE_model_clause = 560;
+PlSqlParser.RULE_cell_reference_options = 561;
+PlSqlParser.RULE_return_rows_clause = 562;
+PlSqlParser.RULE_reference_model = 563;
+PlSqlParser.RULE_main_model = 564;
+PlSqlParser.RULE_model_column_clauses = 565;
+PlSqlParser.RULE_model_column_partition_part = 566;
+PlSqlParser.RULE_model_column_list = 567;
+PlSqlParser.RULE_model_column = 568;
+PlSqlParser.RULE_model_rules_clause = 569;
+PlSqlParser.RULE_model_rules_part = 570;
+PlSqlParser.RULE_model_rules_element = 571;
+PlSqlParser.RULE_cell_assignment = 572;
+PlSqlParser.RULE_model_iterate_clause = 573;
+PlSqlParser.RULE_until_part = 574;
+PlSqlParser.RULE_order_by_clause = 575;
+PlSqlParser.RULE_order_by_elements = 576;
+PlSqlParser.RULE_offset_clause = 577;
+PlSqlParser.RULE_fetch_clause = 578;
+PlSqlParser.RULE_for_update_clause = 579;
+PlSqlParser.RULE_for_update_of_part = 580;
+PlSqlParser.RULE_for_update_options = 581;
+PlSqlParser.RULE_update_statement = 582;
+PlSqlParser.RULE_update_set_clause = 583;
+PlSqlParser.RULE_column_based_update_set_clause = 584;
+PlSqlParser.RULE_delete_statement = 585;
+PlSqlParser.RULE_insert_statement = 586;
+PlSqlParser.RULE_single_table_insert = 587;
+PlSqlParser.RULE_multi_table_insert = 588;
+PlSqlParser.RULE_multi_table_element = 589;
+PlSqlParser.RULE_conditional_insert_clause = 590;
+PlSqlParser.RULE_conditional_insert_when_part = 591;
+PlSqlParser.RULE_conditional_insert_else_part = 592;
+PlSqlParser.RULE_insert_into_clause = 593;
+PlSqlParser.RULE_values_clause = 594;
+PlSqlParser.RULE_merge_statement = 595;
+PlSqlParser.RULE_merge_update_clause = 596;
+PlSqlParser.RULE_merge_element = 597;
+PlSqlParser.RULE_merge_update_delete_part = 598;
+PlSqlParser.RULE_merge_insert_clause = 599;
+PlSqlParser.RULE_selected_tableview = 600;
+PlSqlParser.RULE_lock_table_statement = 601;
+PlSqlParser.RULE_wait_nowait_part = 602;
+PlSqlParser.RULE_lock_table_element = 603;
+PlSqlParser.RULE_lock_mode = 604;
+PlSqlParser.RULE_general_table_ref = 605;
+PlSqlParser.RULE_static_returning_clause = 606;
+PlSqlParser.RULE_error_logging_clause = 607;
+PlSqlParser.RULE_error_logging_into_part = 608;
+PlSqlParser.RULE_error_logging_reject_part = 609;
+PlSqlParser.RULE_dml_table_expression_clause = 610;
+PlSqlParser.RULE_table_collection_expression = 611;
+PlSqlParser.RULE_subquery_restriction_clause = 612;
+PlSqlParser.RULE_sample_clause = 613;
+PlSqlParser.RULE_seed_part = 614;
+PlSqlParser.RULE_condition = 615;
+PlSqlParser.RULE_expressions = 616;
+PlSqlParser.RULE_expression = 617;
+PlSqlParser.RULE_cursor_expression = 618;
+PlSqlParser.RULE_logical_expression = 619;
+PlSqlParser.RULE_unary_logical_expression = 620;
+PlSqlParser.RULE_logical_operation = 621;
+PlSqlParser.RULE_multiset_expression = 622;
+PlSqlParser.RULE_relational_expression = 623;
+PlSqlParser.RULE_compound_expression = 624;
+PlSqlParser.RULE_relational_operator = 625;
+PlSqlParser.RULE_in_elements = 626;
+PlSqlParser.RULE_between_elements = 627;
+PlSqlParser.RULE_concatenation = 628;
+PlSqlParser.RULE_interval_expression = 629;
+PlSqlParser.RULE_model_expression = 630;
+PlSqlParser.RULE_model_expression_element = 631;
+PlSqlParser.RULE_single_column_for_loop = 632;
+PlSqlParser.RULE_multi_column_for_loop = 633;
+PlSqlParser.RULE_unary_expression = 634;
+PlSqlParser.RULE_case_statement = 635;
+PlSqlParser.RULE_simple_case_statement = 636;
+PlSqlParser.RULE_simple_case_when_part = 637;
+PlSqlParser.RULE_searched_case_statement = 638;
+PlSqlParser.RULE_searched_case_when_part = 639;
+PlSqlParser.RULE_case_else_part = 640;
+PlSqlParser.RULE_atom = 641;
+PlSqlParser.RULE_quantified_expression = 642;
+PlSqlParser.RULE_string_function = 643;
+PlSqlParser.RULE_standard_function = 644;
+PlSqlParser.RULE_literal = 645;
+PlSqlParser.RULE_numeric_function_wrapper = 646;
+PlSqlParser.RULE_numeric_function = 647;
+PlSqlParser.RULE_other_function = 648;
+PlSqlParser.RULE_over_clause_keyword = 649;
+PlSqlParser.RULE_within_or_over_clause_keyword = 650;
+PlSqlParser.RULE_standard_prediction_function_keyword = 651;
+PlSqlParser.RULE_over_clause = 652;
+PlSqlParser.RULE_windowing_clause = 653;
+PlSqlParser.RULE_windowing_type = 654;
+PlSqlParser.RULE_windowing_elements = 655;
+PlSqlParser.RULE_using_clause = 656;
+PlSqlParser.RULE_using_element = 657;
+PlSqlParser.RULE_collect_order_by_part = 658;
+PlSqlParser.RULE_within_or_over_part = 659;
+PlSqlParser.RULE_cost_matrix_clause = 660;
+PlSqlParser.RULE_xml_passing_clause = 661;
+PlSqlParser.RULE_xml_attributes_clause = 662;
+PlSqlParser.RULE_xml_namespaces_clause = 663;
+PlSqlParser.RULE_xml_table_column = 664;
+PlSqlParser.RULE_xml_general_default_part = 665;
+PlSqlParser.RULE_xml_multiuse_expression_element = 666;
+PlSqlParser.RULE_xmlroot_param_version_part = 667;
+PlSqlParser.RULE_xmlroot_param_standalone_part = 668;
+PlSqlParser.RULE_xmlserialize_param_enconding_part = 669;
+PlSqlParser.RULE_xmlserialize_param_version_part = 670;
+PlSqlParser.RULE_xmlserialize_param_ident_part = 671;
+PlSqlParser.RULE_sql_plus_command = 672;
+PlSqlParser.RULE_whenever_command = 673;
+PlSqlParser.RULE_set_command = 674;
+PlSqlParser.RULE_partition_extension_clause = 675;
+PlSqlParser.RULE_column_alias = 676;
+PlSqlParser.RULE_table_alias = 677;
+PlSqlParser.RULE_where_clause = 678;
+PlSqlParser.RULE_into_clause = 679;
+PlSqlParser.RULE_xml_column_name = 680;
+PlSqlParser.RULE_cost_class_name = 681;
+PlSqlParser.RULE_attribute_name = 682;
+PlSqlParser.RULE_savepoint_name = 683;
+PlSqlParser.RULE_rollback_segment_name = 684;
+PlSqlParser.RULE_table_var_name = 685;
+PlSqlParser.RULE_schema_name = 686;
+PlSqlParser.RULE_routine_name = 687;
+PlSqlParser.RULE_package_name = 688;
+PlSqlParser.RULE_implementation_type_name = 689;
+PlSqlParser.RULE_parameter_name = 690;
+PlSqlParser.RULE_reference_model_name = 691;
+PlSqlParser.RULE_main_model_name = 692;
+PlSqlParser.RULE_container_tableview_name = 693;
+PlSqlParser.RULE_aggregate_function_name = 694;
+PlSqlParser.RULE_query_name = 695;
+PlSqlParser.RULE_grantee_name = 696;
+PlSqlParser.RULE_role_name = 697;
+PlSqlParser.RULE_constraint_name = 698;
+PlSqlParser.RULE_label_name = 699;
+PlSqlParser.RULE_type_name = 700;
+PlSqlParser.RULE_sequence_name = 701;
+PlSqlParser.RULE_exception_name = 702;
+PlSqlParser.RULE_function_name = 703;
+PlSqlParser.RULE_procedure_name = 704;
+PlSqlParser.RULE_trigger_name = 705;
+PlSqlParser.RULE_variable_name = 706;
+PlSqlParser.RULE_index_name = 707;
+PlSqlParser.RULE_cursor_name = 708;
+PlSqlParser.RULE_record_name = 709;
+PlSqlParser.RULE_collection_name = 710;
+PlSqlParser.RULE_link_name = 711;
+PlSqlParser.RULE_column_name = 712;
+PlSqlParser.RULE_tableview_name = 713;
+PlSqlParser.RULE_xmltable = 714;
+PlSqlParser.RULE_char_set_name = 715;
+PlSqlParser.RULE_synonym_name = 716;
+PlSqlParser.RULE_schema_object_name = 717;
+PlSqlParser.RULE_dir_object_name = 718;
+PlSqlParser.RULE_user_object_name = 719;
+PlSqlParser.RULE_grant_object_name = 720;
+PlSqlParser.RULE_column_list = 721;
+PlSqlParser.RULE_paren_column_list = 722;
+PlSqlParser.RULE_keep_clause = 723;
+PlSqlParser.RULE_function_argument = 724;
+PlSqlParser.RULE_function_argument_analytic = 725;
+PlSqlParser.RULE_function_argument_modeling = 726;
+PlSqlParser.RULE_respect_or_ignore_nulls = 727;
+PlSqlParser.RULE_argument = 728;
+PlSqlParser.RULE_type_spec = 729;
+PlSqlParser.RULE_datatype = 730;
+PlSqlParser.RULE_precision_part = 731;
+PlSqlParser.RULE_native_datatype_element = 732;
+PlSqlParser.RULE_bind_variable = 733;
+PlSqlParser.RULE_general_element = 734;
+PlSqlParser.RULE_general_element_part = 735;
+PlSqlParser.RULE_table_element = 736;
+PlSqlParser.RULE_object_privilege = 737;
+PlSqlParser.RULE_system_privilege = 738;
+PlSqlParser.RULE_constant = 739;
+PlSqlParser.RULE_numeric = 740;
+PlSqlParser.RULE_numeric_negative = 741;
+PlSqlParser.RULE_quoted_string = 742;
+PlSqlParser.RULE_identifier = 743;
+PlSqlParser.RULE_id_expression = 744;
+PlSqlParser.RULE_outer_join_sign = 745;
+PlSqlParser.RULE_regular_id = 746;
+PlSqlParser.RULE_non_reserved_keywords_in_12c = 747;
+PlSqlParser.RULE_non_reserved_keywords_pre12c = 748;
+PlSqlParser.RULE_string_function_name = 749;
+PlSqlParser.RULE_numeric_function_name = 750;
+
+
+function ProgramContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_program;
+ return this;
+}
+
+ProgramContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+ProgramContext.prototype.constructor = ProgramContext;
+
+ProgramContext.prototype.sql_script = function() {
+ return this.getTypedRuleContext(Sql_scriptContext,0);
+};
+
+ProgramContext.prototype.EOF = function() {
+ return this.getToken(PlSqlParser.EOF, 0);
+};
+
+ProgramContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterProgram(this);
+ }
+};
+
+ProgramContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitProgram(this);
+ }
+};
+
+ProgramContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitProgram(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.ProgramContext = ProgramContext;
+
+PlSqlParser.prototype.program = function() {
+
+ var localctx = new ProgramContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 0, PlSqlParser.RULE_program);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1502;
+ this.sql_script();
+ this.state = 1503;
+ this.match(PlSqlParser.EOF);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Sql_scriptContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_sql_script;
+ return this;
+}
+
+Sql_scriptContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Sql_scriptContext.prototype.constructor = Sql_scriptContext;
+
+Sql_scriptContext.prototype.EOF = function() {
+ return this.getToken(PlSqlParser.EOF, 0);
+};
+
+Sql_scriptContext.prototype.unit_statement = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Unit_statementContext);
+ } else {
+ return this.getTypedRuleContext(Unit_statementContext,i);
+ }
+};
+
+Sql_scriptContext.prototype.sql_plus_command = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Sql_plus_commandContext);
+ } else {
+ return this.getTypedRuleContext(Sql_plus_commandContext,i);
+ }
+};
+
+Sql_scriptContext.prototype.SEMICOLON = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.SEMICOLON);
+ } else {
+ return this.getToken(PlSqlParser.SEMICOLON, i);
+ }
+};
+
+
+Sql_scriptContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterSql_script(this);
+ }
+};
+
+Sql_scriptContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitSql_script(this);
+ }
+};
+
+Sql_scriptContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitSql_script(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Sql_scriptContext = Sql_scriptContext;
+
+PlSqlParser.prototype.sql_script = function() {
+
+ var localctx = new Sql_scriptContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 2, PlSqlParser.RULE_sql_script);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1514;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,2,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 1507;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,0,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 1505;
+ this.unit_statement();
+ break;
+
+ case 2:
+ this.state = 1506;
+ this.sql_plus_command();
+ break;
+
+ }
+ this.state = 1510;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,1,this._ctx);
+ if(la_===1) {
+ this.state = 1509;
+ this.match(PlSqlParser.SEMICOLON);
+
+ }
+ }
+ this.state = 1516;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,2,this._ctx);
+ }
+
+ this.state = 1517;
+ this.match(PlSqlParser.EOF);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Unit_statementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_unit_statement;
+ return this;
+}
+
+Unit_statementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Unit_statementContext.prototype.constructor = Unit_statementContext;
+
+Unit_statementContext.prototype.transaction_control_statements = function() {
+ return this.getTypedRuleContext(Transaction_control_statementsContext,0);
+};
+
+Unit_statementContext.prototype.alter_cluster = function() {
+ return this.getTypedRuleContext(Alter_clusterContext,0);
+};
+
+Unit_statementContext.prototype.alter_database = function() {
+ return this.getTypedRuleContext(Alter_databaseContext,0);
+};
+
+Unit_statementContext.prototype.alter_function = function() {
+ return this.getTypedRuleContext(Alter_functionContext,0);
+};
+
+Unit_statementContext.prototype.alter_package = function() {
+ return this.getTypedRuleContext(Alter_packageContext,0);
+};
+
+Unit_statementContext.prototype.alter_procedure = function() {
+ return this.getTypedRuleContext(Alter_procedureContext,0);
+};
+
+Unit_statementContext.prototype.alter_sequence = function() {
+ return this.getTypedRuleContext(Alter_sequenceContext,0);
+};
+
+Unit_statementContext.prototype.alter_session = function() {
+ return this.getTypedRuleContext(Alter_sessionContext,0);
+};
+
+Unit_statementContext.prototype.alter_trigger = function() {
+ return this.getTypedRuleContext(Alter_triggerContext,0);
+};
+
+Unit_statementContext.prototype.alter_type = function() {
+ return this.getTypedRuleContext(Alter_typeContext,0);
+};
+
+Unit_statementContext.prototype.alter_table = function() {
+ return this.getTypedRuleContext(Alter_tableContext,0);
+};
+
+Unit_statementContext.prototype.alter_tablespace = function() {
+ return this.getTypedRuleContext(Alter_tablespaceContext,0);
+};
+
+Unit_statementContext.prototype.alter_index = function() {
+ return this.getTypedRuleContext(Alter_indexContext,0);
+};
+
+Unit_statementContext.prototype.alter_library = function() {
+ return this.getTypedRuleContext(Alter_libraryContext,0);
+};
+
+Unit_statementContext.prototype.alter_materialized_view = function() {
+ return this.getTypedRuleContext(Alter_materialized_viewContext,0);
+};
+
+Unit_statementContext.prototype.alter_materialized_view_log = function() {
+ return this.getTypedRuleContext(Alter_materialized_view_logContext,0);
+};
+
+Unit_statementContext.prototype.alter_user = function() {
+ return this.getTypedRuleContext(Alter_userContext,0);
+};
+
+Unit_statementContext.prototype.alter_view = function() {
+ return this.getTypedRuleContext(Alter_viewContext,0);
+};
+
+Unit_statementContext.prototype.analyze = function() {
+ return this.getTypedRuleContext(AnalyzeContext,0);
+};
+
+Unit_statementContext.prototype.associate_statistics = function() {
+ return this.getTypedRuleContext(Associate_statisticsContext,0);
+};
+
+Unit_statementContext.prototype.audit_traditional = function() {
+ return this.getTypedRuleContext(Audit_traditionalContext,0);
+};
+
+Unit_statementContext.prototype.unified_auditing = function() {
+ return this.getTypedRuleContext(Unified_auditingContext,0);
+};
+
+Unit_statementContext.prototype.create_function_body = function() {
+ return this.getTypedRuleContext(Create_function_bodyContext,0);
+};
+
+Unit_statementContext.prototype.create_procedure_body = function() {
+ return this.getTypedRuleContext(Create_procedure_bodyContext,0);
+};
+
+Unit_statementContext.prototype.create_package = function() {
+ return this.getTypedRuleContext(Create_packageContext,0);
+};
+
+Unit_statementContext.prototype.create_package_body = function() {
+ return this.getTypedRuleContext(Create_package_bodyContext,0);
+};
+
+Unit_statementContext.prototype.create_index = function() {
+ return this.getTypedRuleContext(Create_indexContext,0);
+};
+
+Unit_statementContext.prototype.create_table = function() {
+ return this.getTypedRuleContext(Create_tableContext,0);
+};
+
+Unit_statementContext.prototype.create_tablespace = function() {
+ return this.getTypedRuleContext(Create_tablespaceContext,0);
+};
+
+Unit_statementContext.prototype.create_cluster = function() {
+ return this.getTypedRuleContext(Create_clusterContext,0);
+};
+
+Unit_statementContext.prototype.create_context = function() {
+ return this.getTypedRuleContext(Create_contextContext,0);
+};
+
+Unit_statementContext.prototype.create_view = function() {
+ return this.getTypedRuleContext(Create_viewContext,0);
+};
+
+Unit_statementContext.prototype.create_directory = function() {
+ return this.getTypedRuleContext(Create_directoryContext,0);
+};
+
+Unit_statementContext.prototype.create_materialized_view = function() {
+ return this.getTypedRuleContext(Create_materialized_viewContext,0);
+};
+
+Unit_statementContext.prototype.create_materialized_view_log = function() {
+ return this.getTypedRuleContext(Create_materialized_view_logContext,0);
+};
+
+Unit_statementContext.prototype.create_user = function() {
+ return this.getTypedRuleContext(Create_userContext,0);
+};
+
+Unit_statementContext.prototype.create_sequence = function() {
+ return this.getTypedRuleContext(Create_sequenceContext,0);
+};
+
+Unit_statementContext.prototype.create_trigger = function() {
+ return this.getTypedRuleContext(Create_triggerContext,0);
+};
+
+Unit_statementContext.prototype.create_type = function() {
+ return this.getTypedRuleContext(Create_typeContext,0);
+};
+
+Unit_statementContext.prototype.create_synonym = function() {
+ return this.getTypedRuleContext(Create_synonymContext,0);
+};
+
+Unit_statementContext.prototype.drop_function = function() {
+ return this.getTypedRuleContext(Drop_functionContext,0);
+};
+
+Unit_statementContext.prototype.drop_package = function() {
+ return this.getTypedRuleContext(Drop_packageContext,0);
+};
+
+Unit_statementContext.prototype.drop_procedure = function() {
+ return this.getTypedRuleContext(Drop_procedureContext,0);
+};
+
+Unit_statementContext.prototype.drop_sequence = function() {
+ return this.getTypedRuleContext(Drop_sequenceContext,0);
+};
+
+Unit_statementContext.prototype.drop_trigger = function() {
+ return this.getTypedRuleContext(Drop_triggerContext,0);
+};
+
+Unit_statementContext.prototype.drop_type = function() {
+ return this.getTypedRuleContext(Drop_typeContext,0);
+};
+
+Unit_statementContext.prototype.data_manipulation_language_statements = function() {
+ return this.getTypedRuleContext(Data_manipulation_language_statementsContext,0);
+};
+
+Unit_statementContext.prototype.drop_table = function() {
+ return this.getTypedRuleContext(Drop_tableContext,0);
+};
+
+Unit_statementContext.prototype.drop_view = function() {
+ return this.getTypedRuleContext(Drop_viewContext,0);
+};
+
+Unit_statementContext.prototype.drop_index = function() {
+ return this.getTypedRuleContext(Drop_indexContext,0);
+};
+
+Unit_statementContext.prototype.rename_object = function() {
+ return this.getTypedRuleContext(Rename_objectContext,0);
+};
+
+Unit_statementContext.prototype.comment_on_column = function() {
+ return this.getTypedRuleContext(Comment_on_columnContext,0);
+};
+
+Unit_statementContext.prototype.comment_on_table = function() {
+ return this.getTypedRuleContext(Comment_on_tableContext,0);
+};
+
+Unit_statementContext.prototype.anonymous_block = function() {
+ return this.getTypedRuleContext(Anonymous_blockContext,0);
+};
+
+Unit_statementContext.prototype.grant_statement = function() {
+ return this.getTypedRuleContext(Grant_statementContext,0);
+};
+
+Unit_statementContext.prototype.procedure_call = function() {
+ return this.getTypedRuleContext(Procedure_callContext,0);
+};
+
+Unit_statementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterUnit_statement(this);
+ }
+};
+
+Unit_statementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitUnit_statement(this);
+ }
+};
+
+Unit_statementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitUnit_statement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Unit_statementContext = Unit_statementContext;
+
+PlSqlParser.prototype.unit_statement = function() {
+
+ var localctx = new Unit_statementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 4, PlSqlParser.RULE_unit_statement);
+ try {
+ this.state = 1575;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,3,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1519;
+ this.transaction_control_statements();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 1520;
+ this.alter_cluster();
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 1521;
+ this.alter_database();
+ break;
+
+ case 4:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 1522;
+ this.alter_function();
+ break;
+
+ case 5:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 1523;
+ this.alter_package();
+ break;
+
+ case 6:
+ this.enterOuterAlt(localctx, 6);
+ this.state = 1524;
+ this.alter_procedure();
+ break;
+
+ case 7:
+ this.enterOuterAlt(localctx, 7);
+ this.state = 1525;
+ this.alter_sequence();
+ break;
+
+ case 8:
+ this.enterOuterAlt(localctx, 8);
+ this.state = 1526;
+ this.alter_session();
+ break;
+
+ case 9:
+ this.enterOuterAlt(localctx, 9);
+ this.state = 1527;
+ this.alter_trigger();
+ break;
+
+ case 10:
+ this.enterOuterAlt(localctx, 10);
+ this.state = 1528;
+ this.alter_type();
+ break;
+
+ case 11:
+ this.enterOuterAlt(localctx, 11);
+ this.state = 1529;
+ this.alter_table();
+ break;
+
+ case 12:
+ this.enterOuterAlt(localctx, 12);
+ this.state = 1530;
+ this.alter_tablespace();
+ break;
+
+ case 13:
+ this.enterOuterAlt(localctx, 13);
+ this.state = 1531;
+ this.alter_index();
+ break;
+
+ case 14:
+ this.enterOuterAlt(localctx, 14);
+ this.state = 1532;
+ this.alter_library();
+ break;
+
+ case 15:
+ this.enterOuterAlt(localctx, 15);
+ this.state = 1533;
+ this.alter_materialized_view();
+ break;
+
+ case 16:
+ this.enterOuterAlt(localctx, 16);
+ this.state = 1534;
+ this.alter_materialized_view_log();
+ break;
+
+ case 17:
+ this.enterOuterAlt(localctx, 17);
+ this.state = 1535;
+ this.alter_user();
+ break;
+
+ case 18:
+ this.enterOuterAlt(localctx, 18);
+ this.state = 1536;
+ this.alter_view();
+ break;
+
+ case 19:
+ this.enterOuterAlt(localctx, 19);
+ this.state = 1537;
+ this.analyze();
+ break;
+
+ case 20:
+ this.enterOuterAlt(localctx, 20);
+ this.state = 1538;
+ this.associate_statistics();
+ break;
+
+ case 21:
+ this.enterOuterAlt(localctx, 21);
+ this.state = 1539;
+ this.audit_traditional();
+ break;
+
+ case 22:
+ this.enterOuterAlt(localctx, 22);
+ this.state = 1540;
+ this.unified_auditing();
+ break;
+
+ case 23:
+ this.enterOuterAlt(localctx, 23);
+ this.state = 1541;
+ this.create_function_body();
+ break;
+
+ case 24:
+ this.enterOuterAlt(localctx, 24);
+ this.state = 1542;
+ this.create_procedure_body();
+ break;
+
+ case 25:
+ this.enterOuterAlt(localctx, 25);
+ this.state = 1543;
+ this.create_package();
+ break;
+
+ case 26:
+ this.enterOuterAlt(localctx, 26);
+ this.state = 1544;
+ this.create_package_body();
+ break;
+
+ case 27:
+ this.enterOuterAlt(localctx, 27);
+ this.state = 1545;
+ this.create_index();
+ break;
+
+ case 28:
+ this.enterOuterAlt(localctx, 28);
+ this.state = 1546;
+ this.create_table();
+ break;
+
+ case 29:
+ this.enterOuterAlt(localctx, 29);
+ this.state = 1547;
+ this.create_tablespace();
+ break;
+
+ case 30:
+ this.enterOuterAlt(localctx, 30);
+ this.state = 1548;
+ this.create_cluster();
+ break;
+
+ case 31:
+ this.enterOuterAlt(localctx, 31);
+ this.state = 1549;
+ this.create_context();
+ break;
+
+ case 32:
+ this.enterOuterAlt(localctx, 32);
+ this.state = 1550;
+ this.create_view();
+ break;
+
+ case 33:
+ this.enterOuterAlt(localctx, 33);
+ this.state = 1551;
+ this.create_directory();
+ break;
+
+ case 34:
+ this.enterOuterAlt(localctx, 34);
+ this.state = 1552;
+ this.create_materialized_view();
+ break;
+
+ case 35:
+ this.enterOuterAlt(localctx, 35);
+ this.state = 1553;
+ this.create_materialized_view_log();
+ break;
+
+ case 36:
+ this.enterOuterAlt(localctx, 36);
+ this.state = 1554;
+ this.create_user();
+ break;
+
+ case 37:
+ this.enterOuterAlt(localctx, 37);
+ this.state = 1555;
+ this.create_sequence();
+ break;
+
+ case 38:
+ this.enterOuterAlt(localctx, 38);
+ this.state = 1556;
+ this.create_trigger();
+ break;
+
+ case 39:
+ this.enterOuterAlt(localctx, 39);
+ this.state = 1557;
+ this.create_type();
+ break;
+
+ case 40:
+ this.enterOuterAlt(localctx, 40);
+ this.state = 1558;
+ this.create_synonym();
+ break;
+
+ case 41:
+ this.enterOuterAlt(localctx, 41);
+ this.state = 1559;
+ this.drop_function();
+ break;
+
+ case 42:
+ this.enterOuterAlt(localctx, 42);
+ this.state = 1560;
+ this.drop_package();
+ break;
+
+ case 43:
+ this.enterOuterAlt(localctx, 43);
+ this.state = 1561;
+ this.drop_procedure();
+ break;
+
+ case 44:
+ this.enterOuterAlt(localctx, 44);
+ this.state = 1562;
+ this.drop_sequence();
+ break;
+
+ case 45:
+ this.enterOuterAlt(localctx, 45);
+ this.state = 1563;
+ this.drop_trigger();
+ break;
+
+ case 46:
+ this.enterOuterAlt(localctx, 46);
+ this.state = 1564;
+ this.drop_type();
+ break;
+
+ case 47:
+ this.enterOuterAlt(localctx, 47);
+ this.state = 1565;
+ this.data_manipulation_language_statements();
+ break;
+
+ case 48:
+ this.enterOuterAlt(localctx, 48);
+ this.state = 1566;
+ this.drop_table();
+ break;
+
+ case 49:
+ this.enterOuterAlt(localctx, 49);
+ this.state = 1567;
+ this.drop_view();
+ break;
+
+ case 50:
+ this.enterOuterAlt(localctx, 50);
+ this.state = 1568;
+ this.drop_index();
+ break;
+
+ case 51:
+ this.enterOuterAlt(localctx, 51);
+ this.state = 1569;
+ this.rename_object();
+ break;
+
+ case 52:
+ this.enterOuterAlt(localctx, 52);
+ this.state = 1570;
+ this.comment_on_column();
+ break;
+
+ case 53:
+ this.enterOuterAlt(localctx, 53);
+ this.state = 1571;
+ this.comment_on_table();
+ break;
+
+ case 54:
+ this.enterOuterAlt(localctx, 54);
+ this.state = 1572;
+ this.anonymous_block();
+ break;
+
+ case 55:
+ this.enterOuterAlt(localctx, 55);
+ this.state = 1573;
+ this.grant_statement();
+ break;
+
+ case 56:
+ this.enterOuterAlt(localctx, 56);
+ this.state = 1574;
+ this.procedure_call();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Drop_functionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_drop_function;
+ return this;
+}
+
+Drop_functionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Drop_functionContext.prototype.constructor = Drop_functionContext;
+
+Drop_functionContext.prototype.DROP = function() {
+ return this.getToken(PlSqlParser.DROP, 0);
+};
+
+Drop_functionContext.prototype.FUNCTION = function() {
+ return this.getToken(PlSqlParser.FUNCTION, 0);
+};
+
+Drop_functionContext.prototype.function_name = function() {
+ return this.getTypedRuleContext(Function_nameContext,0);
+};
+
+Drop_functionContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Drop_functionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterDrop_function(this);
+ }
+};
+
+Drop_functionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitDrop_function(this);
+ }
+};
+
+Drop_functionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitDrop_function(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Drop_functionContext = Drop_functionContext;
+
+PlSqlParser.prototype.drop_function = function() {
+
+ var localctx = new Drop_functionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 6, PlSqlParser.RULE_drop_function);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1577;
+ this.match(PlSqlParser.DROP);
+ this.state = 1578;
+ this.match(PlSqlParser.FUNCTION);
+ this.state = 1579;
+ this.function_name();
+ this.state = 1580;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Alter_functionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_alter_function;
+ return this;
+}
+
+Alter_functionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Alter_functionContext.prototype.constructor = Alter_functionContext;
+
+Alter_functionContext.prototype.ALTER = function() {
+ return this.getToken(PlSqlParser.ALTER, 0);
+};
+
+Alter_functionContext.prototype.FUNCTION = function() {
+ return this.getToken(PlSqlParser.FUNCTION, 0);
+};
+
+Alter_functionContext.prototype.function_name = function() {
+ return this.getTypedRuleContext(Function_nameContext,0);
+};
+
+Alter_functionContext.prototype.COMPILE = function() {
+ return this.getToken(PlSqlParser.COMPILE, 0);
+};
+
+Alter_functionContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Alter_functionContext.prototype.DEBUG = function() {
+ return this.getToken(PlSqlParser.DEBUG, 0);
+};
+
+Alter_functionContext.prototype.compiler_parameters_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Compiler_parameters_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Compiler_parameters_clauseContext,i);
+ }
+};
+
+Alter_functionContext.prototype.REUSE = function() {
+ return this.getToken(PlSqlParser.REUSE, 0);
+};
+
+Alter_functionContext.prototype.SETTINGS = function() {
+ return this.getToken(PlSqlParser.SETTINGS, 0);
+};
+
+Alter_functionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAlter_function(this);
+ }
+};
+
+Alter_functionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAlter_function(this);
+ }
+};
+
+Alter_functionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAlter_function(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Alter_functionContext = Alter_functionContext;
+
+PlSqlParser.prototype.alter_function = function() {
+
+ var localctx = new Alter_functionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 8, PlSqlParser.RULE_alter_function);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1582;
+ this.match(PlSqlParser.ALTER);
+ this.state = 1583;
+ this.match(PlSqlParser.FUNCTION);
+ this.state = 1584;
+ this.function_name();
+ this.state = 1585;
+ this.match(PlSqlParser.COMPILE);
+ this.state = 1587;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,4,this._ctx);
+ if(la_===1) {
+ this.state = 1586;
+ this.match(PlSqlParser.DEBUG);
+
+ }
+ this.state = 1592;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,5,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 1589;
+ this.compiler_parameters_clause();
+ }
+ this.state = 1594;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,5,this._ctx);
+ }
+
+ this.state = 1597;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.REUSE) {
+ this.state = 1595;
+ this.match(PlSqlParser.REUSE);
+ this.state = 1596;
+ this.match(PlSqlParser.SETTINGS);
+ }
+
+ this.state = 1599;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_function_bodyContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_create_function_body;
+ return this;
+}
+
+Create_function_bodyContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_function_bodyContext.prototype.constructor = Create_function_bodyContext;
+
+Create_function_bodyContext.prototype.CREATE = function() {
+ return this.getToken(PlSqlParser.CREATE, 0);
+};
+
+Create_function_bodyContext.prototype.FUNCTION = function() {
+ return this.getToken(PlSqlParser.FUNCTION, 0);
+};
+
+Create_function_bodyContext.prototype.function_name = function() {
+ return this.getTypedRuleContext(Function_nameContext,0);
+};
+
+Create_function_bodyContext.prototype.RETURN = function() {
+ return this.getToken(PlSqlParser.RETURN, 0);
+};
+
+Create_function_bodyContext.prototype.type_spec = function() {
+ return this.getTypedRuleContext(Type_specContext,0);
+};
+
+Create_function_bodyContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Create_function_bodyContext.prototype.USING = function() {
+ return this.getToken(PlSqlParser.USING, 0);
+};
+
+Create_function_bodyContext.prototype.implementation_type_name = function() {
+ return this.getTypedRuleContext(Implementation_type_nameContext,0);
+};
+
+Create_function_bodyContext.prototype.OR = function() {
+ return this.getToken(PlSqlParser.OR, 0);
+};
+
+Create_function_bodyContext.prototype.REPLACE = function() {
+ return this.getToken(PlSqlParser.REPLACE, 0);
+};
+
+Create_function_bodyContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Create_function_bodyContext.prototype.parameter = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ParameterContext);
+ } else {
+ return this.getTypedRuleContext(ParameterContext,i);
+ }
+};
+
+Create_function_bodyContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Create_function_bodyContext.prototype.invoker_rights_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Invoker_rights_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Invoker_rights_clauseContext,i);
+ }
+};
+
+Create_function_bodyContext.prototype.parallel_enable_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Parallel_enable_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Parallel_enable_clauseContext,i);
+ }
+};
+
+Create_function_bodyContext.prototype.result_cache_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Result_cache_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Result_cache_clauseContext,i);
+ }
+};
+
+Create_function_bodyContext.prototype.DETERMINISTIC = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.DETERMINISTIC);
+ } else {
+ return this.getToken(PlSqlParser.DETERMINISTIC, i);
+ }
+};
+
+
+Create_function_bodyContext.prototype.PIPELINED = function() {
+ return this.getToken(PlSqlParser.PIPELINED, 0);
+};
+
+Create_function_bodyContext.prototype.AGGREGATE = function() {
+ return this.getToken(PlSqlParser.AGGREGATE, 0);
+};
+
+Create_function_bodyContext.prototype.IS = function() {
+ return this.getToken(PlSqlParser.IS, 0);
+};
+
+Create_function_bodyContext.prototype.AS = function() {
+ return this.getToken(PlSqlParser.AS, 0);
+};
+
+Create_function_bodyContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Create_function_bodyContext.prototype.body = function() {
+ return this.getTypedRuleContext(BodyContext,0);
+};
+
+Create_function_bodyContext.prototype.call_spec = function() {
+ return this.getTypedRuleContext(Call_specContext,0);
+};
+
+Create_function_bodyContext.prototype.DECLARE = function() {
+ return this.getToken(PlSqlParser.DECLARE, 0);
+};
+
+Create_function_bodyContext.prototype.seq_of_declare_specs = function() {
+ return this.getTypedRuleContext(Seq_of_declare_specsContext,0);
+};
+
+Create_function_bodyContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterCreate_function_body(this);
+ }
+};
+
+Create_function_bodyContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitCreate_function_body(this);
+ }
+};
+
+Create_function_bodyContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitCreate_function_body(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Create_function_bodyContext = Create_function_bodyContext;
+
+PlSqlParser.prototype.create_function_body = function() {
+
+ var localctx = new Create_function_bodyContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 10, PlSqlParser.RULE_create_function_body);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1601;
+ this.match(PlSqlParser.CREATE);
+ this.state = 1604;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.OR) {
+ this.state = 1602;
+ this.match(PlSqlParser.OR);
+ this.state = 1603;
+ this.match(PlSqlParser.REPLACE);
+ }
+
+ this.state = 1606;
+ this.match(PlSqlParser.FUNCTION);
+ this.state = 1607;
+ this.function_name();
+ this.state = 1619;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.LEFT_PAREN) {
+ this.state = 1608;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 1609;
+ this.parameter();
+ this.state = 1614;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 1610;
+ this.match(PlSqlParser.COMMA);
+ this.state = 1611;
+ this.parameter();
+ this.state = 1616;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 1617;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ }
+
+ this.state = 1621;
+ this.match(PlSqlParser.RETURN);
+ this.state = 1622;
+ this.type_spec();
+ this.state = 1629;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.AUTHID || _la===PlSqlParser.DETERMINISTIC || _la===PlSqlParser.PARALLEL_ENABLE || _la===PlSqlParser.RESULT_CACHE) {
+ this.state = 1627;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.AUTHID:
+ this.state = 1623;
+ this.invoker_rights_clause();
+ break;
+ case PlSqlParser.PARALLEL_ENABLE:
+ this.state = 1624;
+ this.parallel_enable_clause();
+ break;
+ case PlSqlParser.RESULT_CACHE:
+ this.state = 1625;
+ this.result_cache_clause();
+ break;
+ case PlSqlParser.DETERMINISTIC:
+ this.state = 1626;
+ this.match(PlSqlParser.DETERMINISTIC);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 1631;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 1649;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,16,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 1633;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.PIPELINED) {
+ this.state = 1632;
+ this.match(PlSqlParser.PIPELINED);
+ }
+
+ this.state = 1635;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.AS || _la===PlSqlParser.IS)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 1644;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,15,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 1637;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,13,this._ctx);
+ if(la_===1) {
+ this.state = 1636;
+ this.match(PlSqlParser.DECLARE);
+
+ }
+ this.state = 1640;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,14,this._ctx);
+ if(la_===1) {
+ this.state = 1639;
+ this.seq_of_declare_specs();
+
+ }
+ this.state = 1642;
+ this.body();
+ break;
+
+ case 2:
+ this.state = 1643;
+ this.call_spec();
+ break;
+
+ }
+ break;
+
+ case 2:
+ this.state = 1646;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.AGGREGATE || _la===PlSqlParser.PIPELINED)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 1647;
+ this.match(PlSqlParser.USING);
+ this.state = 1648;
+ this.implementation_type_name();
+ break;
+
+ }
+ this.state = 1651;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Parallel_enable_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_parallel_enable_clause;
+ return this;
+}
+
+Parallel_enable_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Parallel_enable_clauseContext.prototype.constructor = Parallel_enable_clauseContext;
+
+Parallel_enable_clauseContext.prototype.PARALLEL_ENABLE = function() {
+ return this.getToken(PlSqlParser.PARALLEL_ENABLE, 0);
+};
+
+Parallel_enable_clauseContext.prototype.partition_by_clause = function() {
+ return this.getTypedRuleContext(Partition_by_clauseContext,0);
+};
+
+Parallel_enable_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterParallel_enable_clause(this);
+ }
+};
+
+Parallel_enable_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitParallel_enable_clause(this);
+ }
+};
+
+Parallel_enable_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitParallel_enable_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Parallel_enable_clauseContext = Parallel_enable_clauseContext;
+
+PlSqlParser.prototype.parallel_enable_clause = function() {
+
+ var localctx = new Parallel_enable_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 12, PlSqlParser.RULE_parallel_enable_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1653;
+ this.match(PlSqlParser.PARALLEL_ENABLE);
+ this.state = 1655;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.LEFT_PAREN) {
+ this.state = 1654;
+ this.partition_by_clause();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Partition_by_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_partition_by_clause;
+ return this;
+}
+
+Partition_by_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Partition_by_clauseContext.prototype.constructor = Partition_by_clauseContext;
+
+Partition_by_clauseContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Partition_by_clauseContext.prototype.PARTITION = function() {
+ return this.getToken(PlSqlParser.PARTITION, 0);
+};
+
+Partition_by_clauseContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+Partition_by_clauseContext.prototype.BY = function() {
+ return this.getToken(PlSqlParser.BY, 0);
+};
+
+Partition_by_clauseContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Partition_by_clauseContext.prototype.ANY = function() {
+ return this.getToken(PlSqlParser.ANY, 0);
+};
+
+Partition_by_clauseContext.prototype.paren_column_list = function() {
+ return this.getTypedRuleContext(Paren_column_listContext,0);
+};
+
+Partition_by_clauseContext.prototype.HASH = function() {
+ return this.getToken(PlSqlParser.HASH, 0);
+};
+
+Partition_by_clauseContext.prototype.RANGE = function() {
+ return this.getToken(PlSqlParser.RANGE, 0);
+};
+
+Partition_by_clauseContext.prototype.LIST = function() {
+ return this.getToken(PlSqlParser.LIST, 0);
+};
+
+Partition_by_clauseContext.prototype.streaming_clause = function() {
+ return this.getTypedRuleContext(Streaming_clauseContext,0);
+};
+
+Partition_by_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterPartition_by_clause(this);
+ }
+};
+
+Partition_by_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitPartition_by_clause(this);
+ }
+};
+
+Partition_by_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitPartition_by_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Partition_by_clauseContext = Partition_by_clauseContext;
+
+PlSqlParser.prototype.partition_by_clause = function() {
+
+ var localctx = new Partition_by_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 14, PlSqlParser.RULE_partition_by_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1657;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 1658;
+ this.match(PlSqlParser.PARTITION);
+ this.state = 1659;
+ this.expression();
+ this.state = 1660;
+ this.match(PlSqlParser.BY);
+ this.state = 1664;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.ANY:
+ this.state = 1661;
+ this.match(PlSqlParser.ANY);
+ break;
+ case PlSqlParser.HASH:
+ case PlSqlParser.LIST:
+ case PlSqlParser.RANGE:
+ this.state = 1662;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.HASH || _la===PlSqlParser.LIST || _la===PlSqlParser.RANGE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 1663;
+ this.paren_column_list();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 1667;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.CLUSTER || _la===PlSqlParser.ORDER) {
+ this.state = 1666;
+ this.streaming_clause();
+ }
+
+ this.state = 1669;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Result_cache_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_result_cache_clause;
+ return this;
+}
+
+Result_cache_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Result_cache_clauseContext.prototype.constructor = Result_cache_clauseContext;
+
+Result_cache_clauseContext.prototype.RESULT_CACHE = function() {
+ return this.getToken(PlSqlParser.RESULT_CACHE, 0);
+};
+
+Result_cache_clauseContext.prototype.relies_on_part = function() {
+ return this.getTypedRuleContext(Relies_on_partContext,0);
+};
+
+Result_cache_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterResult_cache_clause(this);
+ }
+};
+
+Result_cache_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitResult_cache_clause(this);
+ }
+};
+
+Result_cache_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitResult_cache_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Result_cache_clauseContext = Result_cache_clauseContext;
+
+PlSqlParser.prototype.result_cache_clause = function() {
+
+ var localctx = new Result_cache_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 16, PlSqlParser.RULE_result_cache_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1671;
+ this.match(PlSqlParser.RESULT_CACHE);
+ this.state = 1673;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.RELIES_ON) {
+ this.state = 1672;
+ this.relies_on_part();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Relies_on_partContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_relies_on_part;
+ return this;
+}
+
+Relies_on_partContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Relies_on_partContext.prototype.constructor = Relies_on_partContext;
+
+Relies_on_partContext.prototype.RELIES_ON = function() {
+ return this.getToken(PlSqlParser.RELIES_ON, 0);
+};
+
+Relies_on_partContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Relies_on_partContext.prototype.tableview_name = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Tableview_nameContext);
+ } else {
+ return this.getTypedRuleContext(Tableview_nameContext,i);
+ }
+};
+
+Relies_on_partContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Relies_on_partContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Relies_on_partContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterRelies_on_part(this);
+ }
+};
+
+Relies_on_partContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitRelies_on_part(this);
+ }
+};
+
+Relies_on_partContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitRelies_on_part(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Relies_on_partContext = Relies_on_partContext;
+
+PlSqlParser.prototype.relies_on_part = function() {
+
+ var localctx = new Relies_on_partContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 18, PlSqlParser.RULE_relies_on_part);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1675;
+ this.match(PlSqlParser.RELIES_ON);
+ this.state = 1676;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 1677;
+ this.tableview_name();
+ this.state = 1682;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 1678;
+ this.match(PlSqlParser.COMMA);
+ this.state = 1679;
+ this.tableview_name();
+ this.state = 1684;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 1685;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Streaming_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_streaming_clause;
+ return this;
+}
+
+Streaming_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Streaming_clauseContext.prototype.constructor = Streaming_clauseContext;
+
+Streaming_clauseContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+Streaming_clauseContext.prototype.BY = function() {
+ return this.getToken(PlSqlParser.BY, 0);
+};
+
+Streaming_clauseContext.prototype.paren_column_list = function() {
+ return this.getTypedRuleContext(Paren_column_listContext,0);
+};
+
+Streaming_clauseContext.prototype.ORDER = function() {
+ return this.getToken(PlSqlParser.ORDER, 0);
+};
+
+Streaming_clauseContext.prototype.CLUSTER = function() {
+ return this.getToken(PlSqlParser.CLUSTER, 0);
+};
+
+Streaming_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterStreaming_clause(this);
+ }
+};
+
+Streaming_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitStreaming_clause(this);
+ }
+};
+
+Streaming_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitStreaming_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Streaming_clauseContext = Streaming_clauseContext;
+
+PlSqlParser.prototype.streaming_clause = function() {
+
+ var localctx = new Streaming_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 20, PlSqlParser.RULE_streaming_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1687;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.CLUSTER || _la===PlSqlParser.ORDER)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 1688;
+ this.expression();
+ this.state = 1689;
+ this.match(PlSqlParser.BY);
+ this.state = 1690;
+ this.paren_column_list();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Drop_packageContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_drop_package;
+ return this;
+}
+
+Drop_packageContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Drop_packageContext.prototype.constructor = Drop_packageContext;
+
+Drop_packageContext.prototype.DROP = function() {
+ return this.getToken(PlSqlParser.DROP, 0);
+};
+
+Drop_packageContext.prototype.PACKAGE = function() {
+ return this.getToken(PlSqlParser.PACKAGE, 0);
+};
+
+Drop_packageContext.prototype.package_name = function() {
+ return this.getTypedRuleContext(Package_nameContext,0);
+};
+
+Drop_packageContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Drop_packageContext.prototype.BODY = function() {
+ return this.getToken(PlSqlParser.BODY, 0);
+};
+
+Drop_packageContext.prototype.schema_object_name = function() {
+ return this.getTypedRuleContext(Schema_object_nameContext,0);
+};
+
+Drop_packageContext.prototype.PERIOD = function() {
+ return this.getToken(PlSqlParser.PERIOD, 0);
+};
+
+Drop_packageContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterDrop_package(this);
+ }
+};
+
+Drop_packageContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitDrop_package(this);
+ }
+};
+
+Drop_packageContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitDrop_package(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Drop_packageContext = Drop_packageContext;
+
+PlSqlParser.prototype.drop_package = function() {
+
+ var localctx = new Drop_packageContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 22, PlSqlParser.RULE_drop_package);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1692;
+ this.match(PlSqlParser.DROP);
+ this.state = 1693;
+ this.match(PlSqlParser.PACKAGE);
+ this.state = 1695;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,22,this._ctx);
+ if(la_===1) {
+ this.state = 1694;
+ this.match(PlSqlParser.BODY);
+
+ }
+ this.state = 1700;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,23,this._ctx);
+ if(la_===1) {
+ this.state = 1697;
+ this.schema_object_name();
+ this.state = 1698;
+ this.match(PlSqlParser.PERIOD);
+
+ }
+ this.state = 1702;
+ this.package_name();
+ this.state = 1703;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Alter_packageContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_alter_package;
+ return this;
+}
+
+Alter_packageContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Alter_packageContext.prototype.constructor = Alter_packageContext;
+
+Alter_packageContext.prototype.ALTER = function() {
+ return this.getToken(PlSqlParser.ALTER, 0);
+};
+
+Alter_packageContext.prototype.PACKAGE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.PACKAGE);
+ } else {
+ return this.getToken(PlSqlParser.PACKAGE, i);
+ }
+};
+
+
+Alter_packageContext.prototype.package_name = function() {
+ return this.getTypedRuleContext(Package_nameContext,0);
+};
+
+Alter_packageContext.prototype.COMPILE = function() {
+ return this.getToken(PlSqlParser.COMPILE, 0);
+};
+
+Alter_packageContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Alter_packageContext.prototype.DEBUG = function() {
+ return this.getToken(PlSqlParser.DEBUG, 0);
+};
+
+Alter_packageContext.prototype.compiler_parameters_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Compiler_parameters_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Compiler_parameters_clauseContext,i);
+ }
+};
+
+Alter_packageContext.prototype.REUSE = function() {
+ return this.getToken(PlSqlParser.REUSE, 0);
+};
+
+Alter_packageContext.prototype.SETTINGS = function() {
+ return this.getToken(PlSqlParser.SETTINGS, 0);
+};
+
+Alter_packageContext.prototype.BODY = function() {
+ return this.getToken(PlSqlParser.BODY, 0);
+};
+
+Alter_packageContext.prototype.SPECIFICATION = function() {
+ return this.getToken(PlSqlParser.SPECIFICATION, 0);
+};
+
+Alter_packageContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAlter_package(this);
+ }
+};
+
+Alter_packageContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAlter_package(this);
+ }
+};
+
+Alter_packageContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAlter_package(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Alter_packageContext = Alter_packageContext;
+
+PlSqlParser.prototype.alter_package = function() {
+
+ var localctx = new Alter_packageContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 24, PlSqlParser.RULE_alter_package);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1705;
+ this.match(PlSqlParser.ALTER);
+ this.state = 1706;
+ this.match(PlSqlParser.PACKAGE);
+ this.state = 1707;
+ this.package_name();
+ this.state = 1708;
+ this.match(PlSqlParser.COMPILE);
+ this.state = 1710;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,24,this._ctx);
+ if(la_===1) {
+ this.state = 1709;
+ this.match(PlSqlParser.DEBUG);
+
+ }
+ this.state = 1713;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,25,this._ctx);
+ if(la_===1) {
+ this.state = 1712;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.BODY || _la===PlSqlParser.PACKAGE || _la===PlSqlParser.SPECIFICATION)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+
+ }
+ this.state = 1718;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,26,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 1715;
+ this.compiler_parameters_clause();
+ }
+ this.state = 1720;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,26,this._ctx);
+ }
+
+ this.state = 1723;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.REUSE) {
+ this.state = 1721;
+ this.match(PlSqlParser.REUSE);
+ this.state = 1722;
+ this.match(PlSqlParser.SETTINGS);
+ }
+
+ this.state = 1725;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_packageContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_create_package;
+ return this;
+}
+
+Create_packageContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_packageContext.prototype.constructor = Create_packageContext;
+
+Create_packageContext.prototype.CREATE = function() {
+ return this.getToken(PlSqlParser.CREATE, 0);
+};
+
+Create_packageContext.prototype.PACKAGE = function() {
+ return this.getToken(PlSqlParser.PACKAGE, 0);
+};
+
+Create_packageContext.prototype.package_name = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Package_nameContext);
+ } else {
+ return this.getTypedRuleContext(Package_nameContext,i);
+ }
+};
+
+Create_packageContext.prototype.END = function() {
+ return this.getToken(PlSqlParser.END, 0);
+};
+
+Create_packageContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Create_packageContext.prototype.IS = function() {
+ return this.getToken(PlSqlParser.IS, 0);
+};
+
+Create_packageContext.prototype.AS = function() {
+ return this.getToken(PlSqlParser.AS, 0);
+};
+
+Create_packageContext.prototype.OR = function() {
+ return this.getToken(PlSqlParser.OR, 0);
+};
+
+Create_packageContext.prototype.REPLACE = function() {
+ return this.getToken(PlSqlParser.REPLACE, 0);
+};
+
+Create_packageContext.prototype.schema_object_name = function() {
+ return this.getTypedRuleContext(Schema_object_nameContext,0);
+};
+
+Create_packageContext.prototype.PERIOD = function() {
+ return this.getToken(PlSqlParser.PERIOD, 0);
+};
+
+Create_packageContext.prototype.invoker_rights_clause = function() {
+ return this.getTypedRuleContext(Invoker_rights_clauseContext,0);
+};
+
+Create_packageContext.prototype.package_obj_spec = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Package_obj_specContext);
+ } else {
+ return this.getTypedRuleContext(Package_obj_specContext,i);
+ }
+};
+
+Create_packageContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterCreate_package(this);
+ }
+};
+
+Create_packageContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitCreate_package(this);
+ }
+};
+
+Create_packageContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitCreate_package(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Create_packageContext = Create_packageContext;
+
+PlSqlParser.prototype.create_package = function() {
+
+ var localctx = new Create_packageContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 26, PlSqlParser.RULE_create_package);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1727;
+ this.match(PlSqlParser.CREATE);
+ this.state = 1730;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.OR) {
+ this.state = 1728;
+ this.match(PlSqlParser.OR);
+ this.state = 1729;
+ this.match(PlSqlParser.REPLACE);
+ }
+
+ this.state = 1732;
+ this.match(PlSqlParser.PACKAGE);
+ this.state = 1736;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,29,this._ctx);
+ if(la_===1) {
+ this.state = 1733;
+ this.schema_object_name();
+ this.state = 1734;
+ this.match(PlSqlParser.PERIOD);
+
+ }
+ this.state = 1738;
+ this.package_name();
+ this.state = 1740;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.AUTHID) {
+ this.state = 1739;
+ this.invoker_rights_clause();
+ }
+
+ this.state = 1742;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.AS || _la===PlSqlParser.IS)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 1746;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while((((_la) & ~0x1f) == 0 && ((1 << _la) & ((1 << PlSqlParser.ABORT) | (1 << PlSqlParser.ABS) | (1 << PlSqlParser.ACCESS) | (1 << PlSqlParser.ACCESSED) | (1 << PlSqlParser.ACCOUNT) | (1 << PlSqlParser.ACL) | (1 << PlSqlParser.ACOS) | (1 << PlSqlParser.ACTION) | (1 << PlSqlParser.ACTIONS) | (1 << PlSqlParser.ACTIVATE) | (1 << PlSqlParser.ACTIVE) | (1 << PlSqlParser.ACTIVE_COMPONENT) | (1 << PlSqlParser.ACTIVE_DATA) | (1 << PlSqlParser.ACTIVE_FUNCTION) | (1 << PlSqlParser.ACTIVE_TAG) | (1 << PlSqlParser.ACTIVITY) | (1 << PlSqlParser.ADAPTIVE_PLAN) | (1 << PlSqlParser.ADD) | (1 << PlSqlParser.ADD_COLUMN) | (1 << PlSqlParser.ADD_GROUP) | (1 << PlSqlParser.ADD_MONTHS) | (1 << PlSqlParser.ADJ_DATE) | (1 << PlSqlParser.ADMIN) | (1 << PlSqlParser.ADMINISTER) | (1 << PlSqlParser.ADMINISTRATOR) | (1 << PlSqlParser.ADVANCED) | (1 << PlSqlParser.ADVISE) | (1 << PlSqlParser.ADVISOR) | (1 << PlSqlParser.AFD_DISKSTRING) | (1 << PlSqlParser.AFTER) | (1 << PlSqlParser.AGENT))) !== 0) || ((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (PlSqlParser.AGGREGATE - 32)) | (1 << (PlSqlParser.A_LETTER - 32)) | (1 << (PlSqlParser.ALIAS - 32)) | (1 << (PlSqlParser.ALLOCATE - 32)) | (1 << (PlSqlParser.ALLOW - 32)) | (1 << (PlSqlParser.ALL_ROWS - 32)) | (1 << (PlSqlParser.ALWAYS - 32)) | (1 << (PlSqlParser.ANALYZE - 32)) | (1 << (PlSqlParser.ANCILLARY - 32)) | (1 << (PlSqlParser.AND_EQUAL - 32)) | (1 << (PlSqlParser.ANOMALY - 32)) | (1 << (PlSqlParser.ANSI_REARCH - 32)) | (1 << (PlSqlParser.ANTIJOIN - 32)) | (1 << (PlSqlParser.ANYSCHEMA - 32)) | (1 << (PlSqlParser.APPEND - 32)) | (1 << (PlSqlParser.APPENDCHILDXML - 32)) | (1 << (PlSqlParser.APPEND_VALUES - 32)) | (1 << (PlSqlParser.APPLICATION - 32)) | (1 << (PlSqlParser.APPLY - 32)) | (1 << (PlSqlParser.APPROX_COUNT_DISTINCT - 32)) | (1 << (PlSqlParser.ARCHIVAL - 32)) | (1 << (PlSqlParser.ARCHIVE - 32)) | (1 << (PlSqlParser.ARCHIVED - 32)) | (1 << (PlSqlParser.ARCHIVELOG - 32)) | (1 << (PlSqlParser.ARRAY - 32)) | (1 << (PlSqlParser.ASCII - 32)))) !== 0) || ((((_la - 64)) & ~0x1f) == 0 && ((1 << (_la - 64)) & ((1 << (PlSqlParser.ASCIISTR - 64)) | (1 << (PlSqlParser.ASIN - 64)) | (1 << (PlSqlParser.ASIS - 64)) | (1 << (PlSqlParser.ASSEMBLY - 64)) | (1 << (PlSqlParser.ASSIGN - 64)) | (1 << (PlSqlParser.ASSOCIATE - 64)) | (1 << (PlSqlParser.ASYNC - 64)) | (1 << (PlSqlParser.ASYNCHRONOUS - 64)) | (1 << (PlSqlParser.ATAN2 - 64)) | (1 << (PlSqlParser.ATAN - 64)) | (1 << (PlSqlParser.AT - 64)) | (1 << (PlSqlParser.ATTRIBUTE - 64)) | (1 << (PlSqlParser.ATTRIBUTES - 64)) | (1 << (PlSqlParser.AUTHENTICATED - 64)) | (1 << (PlSqlParser.AUTHENTICATION - 64)) | (1 << (PlSqlParser.AUTHID - 64)) | (1 << (PlSqlParser.AUTHORIZATION - 64)) | (1 << (PlSqlParser.AUTOALLOCATE - 64)) | (1 << (PlSqlParser.AUTO - 64)) | (1 << (PlSqlParser.AUTOEXTEND - 64)) | (1 << (PlSqlParser.AUTO_LOGIN - 64)) | (1 << (PlSqlParser.AUTOMATIC - 64)) | (1 << (PlSqlParser.AUTONOMOUS_TRANSACTION - 64)) | (1 << (PlSqlParser.AUTO_REOPTIMIZE - 64)) | (1 << (PlSqlParser.AVAILABILITY - 64)) | (1 << (PlSqlParser.AVRO - 64)) | (1 << (PlSqlParser.BACKGROUND - 64)) | (1 << (PlSqlParser.BACKUP - 64)) | (1 << (PlSqlParser.BASIC - 64)))) !== 0) || ((((_la - 96)) & ~0x1f) == 0 && ((1 << (_la - 96)) & ((1 << (PlSqlParser.BASICFILE - 96)) | (1 << (PlSqlParser.BATCH - 96)) | (1 << (PlSqlParser.BATCHSIZE - 96)) | (1 << (PlSqlParser.BATCH_TABLE_ACCESS_BY_ROWID - 96)) | (1 << (PlSqlParser.BECOME - 96)) | (1 << (PlSqlParser.BEFORE - 96)) | (1 << (PlSqlParser.BEGIN - 96)) | (1 << (PlSqlParser.BEGINNING - 96)) | (1 << (PlSqlParser.BEGIN_OUTLINE_DATA - 96)) | (1 << (PlSqlParser.BEHALF - 96)) | (1 << (PlSqlParser.BEQUEATH - 96)) | (1 << (PlSqlParser.BFILE - 96)) | (1 << (PlSqlParser.BFILENAME - 96)) | (1 << (PlSqlParser.BIGFILE - 96)) | (1 << (PlSqlParser.BINARY - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE_INFINITY - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE_NAN - 96)) | (1 << (PlSqlParser.BINARY_FLOAT - 96)) | (1 << (PlSqlParser.BINARY_FLOAT_INFINITY - 96)) | (1 << (PlSqlParser.BINARY_FLOAT_NAN - 96)) | (1 << (PlSqlParser.BINARY_INTEGER - 96)) | (1 << (PlSqlParser.BIND_AWARE - 96)) | (1 << (PlSqlParser.BINDING - 96)) | (1 << (PlSqlParser.BIN_TO_NUM - 96)) | (1 << (PlSqlParser.BITAND - 96)) | (1 << (PlSqlParser.BITMAP_AND - 96)) | (1 << (PlSqlParser.BITMAP - 96)) | (1 << (PlSqlParser.BITMAPS - 96)) | (1 << (PlSqlParser.BITMAP_TREE - 96)) | (1 << (PlSqlParser.BITS - 96)))) !== 0) || ((((_la - 128)) & ~0x1f) == 0 && ((1 << (_la - 128)) & ((1 << (PlSqlParser.BLOB - 128)) | (1 << (PlSqlParser.BLOCK - 128)) | (1 << (PlSqlParser.BLOCK_RANGE - 128)) | (1 << (PlSqlParser.BLOCKS - 128)) | (1 << (PlSqlParser.BLOCKSIZE - 128)) | (1 << (PlSqlParser.BODY - 128)) | (1 << (PlSqlParser.BOOLEAN - 128)) | (1 << (PlSqlParser.BOTH - 128)) | (1 << (PlSqlParser.BOUND - 128)) | (1 << (PlSqlParser.BRANCH - 128)) | (1 << (PlSqlParser.BREADTH - 128)) | (1 << (PlSqlParser.BROADCAST - 128)) | (1 << (PlSqlParser.BSON - 128)) | (1 << (PlSqlParser.BUFFER - 128)) | (1 << (PlSqlParser.BUFFER_CACHE - 128)) | (1 << (PlSqlParser.BUFFER_POOL - 128)) | (1 << (PlSqlParser.BUILD - 128)) | (1 << (PlSqlParser.BULK - 128)) | (1 << (PlSqlParser.BYPASS_RECURSIVE_CHECK - 128)) | (1 << (PlSqlParser.BYPASS_UJVC - 128)) | (1 << (PlSqlParser.BYTE - 128)) | (1 << (PlSqlParser.CACHE - 128)) | (1 << (PlSqlParser.CACHE_CB - 128)) | (1 << (PlSqlParser.CACHE_INSTANCES - 128)) | (1 << (PlSqlParser.CACHE_TEMP_TABLE - 128)) | (1 << (PlSqlParser.CACHING - 128)) | (1 << (PlSqlParser.CALCULATED - 128)) | (1 << (PlSqlParser.CALLBACK - 128)) | (1 << (PlSqlParser.CALL - 128)) | (1 << (PlSqlParser.CANCEL - 128)))) !== 0) || ((((_la - 160)) & ~0x1f) == 0 && ((1 << (_la - 160)) & ((1 << (PlSqlParser.CAPACITY - 160)) | (1 << (PlSqlParser.CARDINALITY - 160)) | (1 << (PlSqlParser.CASCADE - 160)) | (1 << (PlSqlParser.CASE - 160)) | (1 << (PlSqlParser.CAST - 160)) | (1 << (PlSqlParser.CATEGORY - 160)) | (1 << (PlSqlParser.CDBDEFAULT - 160)) | (1 << (PlSqlParser.CEIL - 160)) | (1 << (PlSqlParser.CELL_FLASH_CACHE - 160)) | (1 << (PlSqlParser.CERTIFICATE - 160)) | (1 << (PlSqlParser.CFILE - 160)) | (1 << (PlSqlParser.CHAINED - 160)) | (1 << (PlSqlParser.CHANGE - 160)) | (1 << (PlSqlParser.CHANGE_DUPKEY_ERROR_INDEX - 160)) | (1 << (PlSqlParser.CHARACTER - 160)) | (1 << (PlSqlParser.CHAR - 160)) | (1 << (PlSqlParser.CHAR_CS - 160)) | (1 << (PlSqlParser.CHARTOROWID - 160)) | (1 << (PlSqlParser.CHECK_ACL_REWRITE - 160)) | (1 << (PlSqlParser.CHECKPOINT - 160)) | (1 << (PlSqlParser.CHILD - 160)) | (1 << (PlSqlParser.CHOOSE - 160)) | (1 << (PlSqlParser.CHR - 160)) | (1 << (PlSqlParser.CHUNK - 160)) | (1 << (PlSqlParser.CLASS - 160)) | (1 << (PlSqlParser.CLASSIFIER - 160)) | (1 << (PlSqlParser.CLEANUP - 160)) | (1 << (PlSqlParser.CLEAR - 160)) | (1 << (PlSqlParser.C_LETTER - 160)) | (1 << (PlSqlParser.CLIENT - 160)))) !== 0) || ((((_la - 192)) & ~0x1f) == 0 && ((1 << (_la - 192)) & ((1 << (PlSqlParser.CLOB - 192)) | (1 << (PlSqlParser.CLONE - 192)) | (1 << (PlSqlParser.CLOSE_CACHED_OPEN_CURSORS - 192)) | (1 << (PlSqlParser.CLOSE - 192)) | (1 << (PlSqlParser.CLUSTER_BY_ROWID - 192)) | (1 << (PlSqlParser.CLUSTER - 192)) | (1 << (PlSqlParser.CLUSTER_DETAILS - 192)) | (1 << (PlSqlParser.CLUSTER_DISTANCE - 192)) | (1 << (PlSqlParser.CLUSTER_ID - 192)) | (1 << (PlSqlParser.CLUSTERING - 192)) | (1 << (PlSqlParser.CLUSTERING_FACTOR - 192)) | (1 << (PlSqlParser.CLUSTER_PROBABILITY - 192)) | (1 << (PlSqlParser.CLUSTER_SET - 192)) | (1 << (PlSqlParser.COALESCE - 192)) | (1 << (PlSqlParser.COALESCE_SQ - 192)) | (1 << (PlSqlParser.COARSE - 192)) | (1 << (PlSqlParser.CO_AUTH_IND - 192)) | (1 << (PlSqlParser.COLD - 192)) | (1 << (PlSqlParser.COLLECT - 192)) | (1 << (PlSqlParser.COLUMNAR - 192)) | (1 << (PlSqlParser.COLUMN_AUTH_INDICATOR - 192)) | (1 << (PlSqlParser.COLUMN - 192)) | (1 << (PlSqlParser.COLUMNS - 192)) | (1 << (PlSqlParser.COLUMN_STATS - 192)) | (1 << (PlSqlParser.COLUMN_VALUE - 192)) | (1 << (PlSqlParser.COMMENT - 192)) | (1 << (PlSqlParser.COMMIT - 192)) | (1 << (PlSqlParser.COMMITTED - 192)) | (1 << (PlSqlParser.COMMON_DATA - 192)) | (1 << (PlSqlParser.COMPACT - 192)) | (1 << (PlSqlParser.COMPATIBILITY - 192)) | (1 << (PlSqlParser.COMPILE - 192)))) !== 0) || ((((_la - 224)) & ~0x1f) == 0 && ((1 << (_la - 224)) & ((1 << (PlSqlParser.COMPLETE - 224)) | (1 << (PlSqlParser.COMPLIANCE - 224)) | (1 << (PlSqlParser.COMPONENT - 224)) | (1 << (PlSqlParser.COMPONENTS - 224)) | (1 << (PlSqlParser.COMPOSE - 224)) | (1 << (PlSqlParser.COMPOSITE - 224)) | (1 << (PlSqlParser.COMPOSITE_LIMIT - 224)) | (1 << (PlSqlParser.COMPOUND - 224)) | (1 << (PlSqlParser.COMPUTE - 224)) | (1 << (PlSqlParser.CONCAT - 224)) | (1 << (PlSqlParser.CON_DBID_TO_ID - 224)) | (1 << (PlSqlParser.CONDITIONAL - 224)) | (1 << (PlSqlParser.CONDITION - 224)) | (1 << (PlSqlParser.CONFIRM - 224)) | (1 << (PlSqlParser.CONFORMING - 224)) | (1 << (PlSqlParser.CON_GUID_TO_ID - 224)) | (1 << (PlSqlParser.CON_ID - 224)) | (1 << (PlSqlParser.CON_NAME_TO_ID - 224)) | (1 << (PlSqlParser.CONNECT_BY_CB_WHR_ONLY - 224)) | (1 << (PlSqlParser.CONNECT_BY_COMBINE_SW - 224)) | (1 << (PlSqlParser.CONNECT_BY_COST_BASED - 224)) | (1 << (PlSqlParser.CONNECT_BY_ELIM_DUPS - 224)) | (1 << (PlSqlParser.CONNECT_BY_FILTERING - 224)) | (1 << (PlSqlParser.CONNECT_BY_ISCYCLE - 224)) | (1 << (PlSqlParser.CONNECT_BY_ISLEAF - 224)) | (1 << (PlSqlParser.CONNECT_BY_ROOT - 224)) | (1 << (PlSqlParser.CONNECT_TIME - 224)) | (1 << (PlSqlParser.CONSIDER - 224)) | (1 << (PlSqlParser.CONSISTENT - 224)) | (1 << (PlSqlParser.CONSTANT - 224)))) !== 0) || ((((_la - 256)) & ~0x1f) == 0 && ((1 << (_la - 256)) & ((1 << (PlSqlParser.CONST - 256)) | (1 << (PlSqlParser.CONSTRAINT - 256)) | (1 << (PlSqlParser.CONSTRAINTS - 256)) | (1 << (PlSqlParser.CONSTRUCTOR - 256)) | (1 << (PlSqlParser.CONTAINER - 256)) | (1 << (PlSqlParser.CONTAINER_DATA - 256)) | (1 << (PlSqlParser.CONTAINERS - 256)) | (1 << (PlSqlParser.CONTENT - 256)) | (1 << (PlSqlParser.CONTENTS - 256)) | (1 << (PlSqlParser.CONTEXT - 256)) | (1 << (PlSqlParser.CONTINUE - 256)) | (1 << (PlSqlParser.CONTROLFILE - 256)) | (1 << (PlSqlParser.CON_UID_TO_ID - 256)) | (1 << (PlSqlParser.CONVERT - 256)) | (1 << (PlSqlParser.COOKIE - 256)) | (1 << (PlSqlParser.COPY - 256)) | (1 << (PlSqlParser.CORR_K - 256)) | (1 << (PlSqlParser.CORR_S - 256)) | (1 << (PlSqlParser.CORRUPTION - 256)) | (1 << (PlSqlParser.CORRUPT_XID_ALL - 256)) | (1 << (PlSqlParser.CORRUPT_XID - 256)) | (1 << (PlSqlParser.COS - 256)) | (1 << (PlSqlParser.COSH - 256)) | (1 << (PlSqlParser.COST - 256)) | (1 << (PlSqlParser.COST_XML_QUERY_REWRITE - 256)) | (1 << (PlSqlParser.COUNT - 256)) | (1 << (PlSqlParser.COVAR_POP - 256)) | (1 << (PlSqlParser.COVAR_SAMP - 256)) | (1 << (PlSqlParser.CPU_COSTING - 256)) | (1 << (PlSqlParser.CPU_PER_CALL - 256)) | (1 << (PlSqlParser.CPU_PER_SESSION - 256)) | (1 << (PlSqlParser.CRASH - 256)))) !== 0) || ((((_la - 289)) & ~0x1f) == 0 && ((1 << (_la - 289)) & ((1 << (PlSqlParser.CREATE_FILE_DEST - 289)) | (1 << (PlSqlParser.CREATE_STORED_OUTLINES - 289)) | (1 << (PlSqlParser.CREATION - 289)) | (1 << (PlSqlParser.CREDENTIAL - 289)) | (1 << (PlSqlParser.CRITICAL - 289)) | (1 << (PlSqlParser.CROSS - 289)) | (1 << (PlSqlParser.CROSSEDITION - 289)) | (1 << (PlSqlParser.CSCONVERT - 289)) | (1 << (PlSqlParser.CUBE_AJ - 289)) | (1 << (PlSqlParser.CUBE - 289)) | (1 << (PlSqlParser.CUBE_GB - 289)) | (1 << (PlSqlParser.CUBE_SJ - 289)) | (1 << (PlSqlParser.CUME_DISTM - 289)) | (1 << (PlSqlParser.CURRENT - 289)) | (1 << (PlSqlParser.CURRENT_DATE - 289)) | (1 << (PlSqlParser.CURRENT_SCHEMA - 289)) | (1 << (PlSqlParser.CURRENT_TIME - 289)) | (1 << (PlSqlParser.CURRENT_TIMESTAMP - 289)) | (1 << (PlSqlParser.CURRENT_USER - 289)) | (1 << (PlSqlParser.CURRENTV - 289)) | (1 << (PlSqlParser.CURSOR - 289)) | (1 << (PlSqlParser.CURSOR_SHARING_EXACT - 289)) | (1 << (PlSqlParser.CURSOR_SPECIFIC_SEGMENT - 289)) | (1 << (PlSqlParser.CUSTOMDATUM - 289)) | (1 << (PlSqlParser.CV - 289)) | (1 << (PlSqlParser.CYCLE - 289)) | (1 << (PlSqlParser.DANGLING - 289)) | (1 << (PlSqlParser.DATABASE - 289)) | (1 << (PlSqlParser.DATA - 289)) | (1 << (PlSqlParser.DATAFILE - 289)) | (1 << (PlSqlParser.DATAFILES - 289)))) !== 0) || ((((_la - 321)) & ~0x1f) == 0 && ((1 << (_la - 321)) & ((1 << (PlSqlParser.DATAMOVEMENT - 321)) | (1 << (PlSqlParser.DATAOBJNO - 321)) | (1 << (PlSqlParser.DATAOBJ_TO_MAT_PARTITION - 321)) | (1 << (PlSqlParser.DATAOBJ_TO_PARTITION - 321)) | (1 << (PlSqlParser.DATAPUMP - 321)) | (1 << (PlSqlParser.DATA_SECURITY_REWRITE_LIMIT - 321)) | (1 << (PlSqlParser.DATE_MODE - 321)) | (1 << (PlSqlParser.DAY - 321)) | (1 << (PlSqlParser.DAYS - 321)) | (1 << (PlSqlParser.DBA - 321)) | (1 << (PlSqlParser.DBA_RECYCLEBIN - 321)) | (1 << (PlSqlParser.DBMS_STATS - 321)) | (1 << (PlSqlParser.DB_ROLE_CHANGE - 321)) | (1 << (PlSqlParser.DBTIMEZONE - 321)) | (1 << (PlSqlParser.DB_UNIQUE_NAME - 321)) | (1 << (PlSqlParser.DB_VERSION - 321)) | (1 << (PlSqlParser.DDL - 321)) | (1 << (PlSqlParser.DEALLOCATE - 321)) | (1 << (PlSqlParser.DEBUG - 321)) | (1 << (PlSqlParser.DEBUGGER - 321)) | (1 << (PlSqlParser.DEC - 321)) | (1 << (PlSqlParser.DECIMAL - 321)) | (1 << (PlSqlParser.DECLARE - 321)) | (1 << (PlSqlParser.DECOMPOSE - 321)) | (1 << (PlSqlParser.DECORRELATE - 321)) | (1 << (PlSqlParser.DECR - 321)) | (1 << (PlSqlParser.DECREMENT - 321)) | (1 << (PlSqlParser.DECRYPT - 321)) | (1 << (PlSqlParser.DEDUPLICATE - 321)) | (1 << (PlSqlParser.DEFAULTS - 321)))) !== 0) || ((((_la - 353)) & ~0x1f) == 0 && ((1 << (_la - 353)) & ((1 << (PlSqlParser.DEFERRABLE - 353)) | (1 << (PlSqlParser.DEFERRED - 353)) | (1 << (PlSqlParser.DEFINED - 353)) | (1 << (PlSqlParser.DEFINE - 353)) | (1 << (PlSqlParser.DEFINER - 353)) | (1 << (PlSqlParser.DEGREE - 353)) | (1 << (PlSqlParser.DELAY - 353)) | (1 << (PlSqlParser.DELEGATE - 353)) | (1 << (PlSqlParser.DELETE_ALL - 353)) | (1 << (PlSqlParser.DELETE - 353)) | (1 << (PlSqlParser.DELETEXML - 353)) | (1 << (PlSqlParser.DEMAND - 353)) | (1 << (PlSqlParser.DENSE_RANKM - 353)) | (1 << (PlSqlParser.DEPENDENT - 353)) | (1 << (PlSqlParser.DEPTH - 353)) | (1 << (PlSqlParser.DEQUEUE - 353)) | (1 << (PlSqlParser.DEREF - 353)) | (1 << (PlSqlParser.DEREF_NO_REWRITE - 353)) | (1 << (PlSqlParser.DESTROY - 353)) | (1 << (PlSqlParser.DETACHED - 353)) | (1 << (PlSqlParser.DETERMINES - 353)) | (1 << (PlSqlParser.DETERMINISTIC - 353)) | (1 << (PlSqlParser.DICTIONARY - 353)) | (1 << (PlSqlParser.DIMENSION - 353)) | (1 << (PlSqlParser.DIMENSIONS - 353)) | (1 << (PlSqlParser.DIRECT_LOAD - 353)) | (1 << (PlSqlParser.DIRECTORY - 353)) | (1 << (PlSqlParser.DIRECT_PATH - 353)) | (1 << (PlSqlParser.DISABLE_ALL - 353)) | (1 << (PlSqlParser.DISABLE - 353)) | (1 << (PlSqlParser.DISABLE_PARALLEL_DML - 353)))) !== 0) || ((((_la - 385)) & ~0x1f) == 0 && ((1 << (_la - 385)) & ((1 << (PlSqlParser.DISABLE_PRESET - 385)) | (1 << (PlSqlParser.DISABLE_RPKE - 385)) | (1 << (PlSqlParser.DISALLOW - 385)) | (1 << (PlSqlParser.DISASSOCIATE - 385)) | (1 << (PlSqlParser.DISCARD - 385)) | (1 << (PlSqlParser.DISCONNECT - 385)) | (1 << (PlSqlParser.DISK - 385)) | (1 << (PlSqlParser.DISKGROUP - 385)) | (1 << (PlSqlParser.DISKS - 385)) | (1 << (PlSqlParser.DISMOUNT - 385)) | (1 << (PlSqlParser.DISTINGUISHED - 385)) | (1 << (PlSqlParser.DISTRIBUTED - 385)) | (1 << (PlSqlParser.DISTRIBUTE - 385)) | (1 << (PlSqlParser.DML - 385)) | (1 << (PlSqlParser.DML_UPDATE - 385)) | (1 << (PlSqlParser.DOCFIDELITY - 385)) | (1 << (PlSqlParser.DOCUMENT - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_FILTER - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_NO_SORT - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_SORT - 385)) | (1 << (PlSqlParser.DOUBLE - 385)) | (1 << (PlSqlParser.DOWNGRADE - 385)) | (1 << (PlSqlParser.DRIVING_SITE - 385)) | (1 << (PlSqlParser.DROP_COLUMN - 385)) | (1 << (PlSqlParser.DROP_GROUP - 385)) | (1 << (PlSqlParser.DSINTERVAL_UNCONSTRAINED - 385)) | (1 << (PlSqlParser.DST_UPGRADE_INSERT_CONV - 385)) | (1 << (PlSqlParser.DUMP - 385)))) !== 0) || ((((_la - 417)) & ~0x1f) == 0 && ((1 << (_la - 417)) & ((1 << (PlSqlParser.DUPLICATE - 417)) | (1 << (PlSqlParser.DV - 417)) | (1 << (PlSqlParser.DYNAMIC - 417)) | (1 << (PlSqlParser.DYNAMIC_SAMPLING - 417)) | (1 << (PlSqlParser.DYNAMIC_SAMPLING_EST_CDN - 417)) | (1 << (PlSqlParser.EACH - 417)) | (1 << (PlSqlParser.EDITIONABLE - 417)) | (1 << (PlSqlParser.EDITION - 417)) | (1 << (PlSqlParser.EDITIONING - 417)) | (1 << (PlSqlParser.EDITIONS - 417)) | (1 << (PlSqlParser.ELEMENT - 417)) | (1 << (PlSqlParser.ELIM_GROUPBY - 417)) | (1 << (PlSqlParser.ELIMINATE_JOIN - 417)) | (1 << (PlSqlParser.ELIMINATE_OBY - 417)) | (1 << (PlSqlParser.ELIMINATE_OUTER_JOIN - 417)) | (1 << (PlSqlParser.EM - 417)) | (1 << (PlSqlParser.EMPTY_BLOB - 417)) | (1 << (PlSqlParser.EMPTY_CLOB - 417)) | (1 << (PlSqlParser.EMPTY - 417)) | (1 << (PlSqlParser.ENABLE_ALL - 417)) | (1 << (PlSqlParser.ENABLE - 417)) | (1 << (PlSqlParser.ENABLE_PARALLEL_DML - 417)) | (1 << (PlSqlParser.ENABLE_PRESET - 417)) | (1 << (PlSqlParser.ENCODING - 417)) | (1 << (PlSqlParser.ENCRYPT - 417)) | (1 << (PlSqlParser.ENCRYPTION - 417)) | (1 << (PlSqlParser.END_OUTLINE_DATA - 417)) | (1 << (PlSqlParser.ENFORCED - 417)) | (1 << (PlSqlParser.ENFORCE - 417)))) !== 0) || ((((_la - 449)) & ~0x1f) == 0 && ((1 << (_la - 449)) & ((1 << (PlSqlParser.ENQUEUE - 449)) | (1 << (PlSqlParser.ENTERPRISE - 449)) | (1 << (PlSqlParser.ENTITYESCAPING - 449)) | (1 << (PlSqlParser.ENTRY - 449)) | (1 << (PlSqlParser.EQUIPART - 449)) | (1 << (PlSqlParser.ERR - 449)) | (1 << (PlSqlParser.ERROR_ARGUMENT - 449)) | (1 << (PlSqlParser.ERROR - 449)) | (1 << (PlSqlParser.ERROR_ON_OVERLAP_TIME - 449)) | (1 << (PlSqlParser.ERRORS - 449)) | (1 << (PlSqlParser.ESCAPE - 449)) | (1 << (PlSqlParser.ESTIMATE - 449)) | (1 << (PlSqlParser.EVAL - 449)) | (1 << (PlSqlParser.EVALNAME - 449)) | (1 << (PlSqlParser.EVALUATE - 449)) | (1 << (PlSqlParser.EVALUATION - 449)) | (1 << (PlSqlParser.EVENTS - 449)) | (1 << (PlSqlParser.EVERY - 449)) | (1 << (PlSqlParser.EXCEPT - 449)) | (1 << (PlSqlParser.EXCEPTION - 449)) | (1 << (PlSqlParser.EXCEPTION_INIT - 449)) | (1 << (PlSqlParser.EXCEPTIONS - 449)) | (1 << (PlSqlParser.EXCHANGE - 449)) | (1 << (PlSqlParser.EXCLUDE - 449)) | (1 << (PlSqlParser.EXCLUDING - 449)) | (1 << (PlSqlParser.EXECUTE - 449)) | (1 << (PlSqlParser.EXEMPT - 449)) | (1 << (PlSqlParser.EXISTING - 449)) | (1 << (PlSqlParser.EXISTS - 449)) | (1 << (PlSqlParser.EXISTSNODE - 449)) | (1 << (PlSqlParser.EXIT - 449)))) !== 0) || ((((_la - 481)) & ~0x1f) == 0 && ((1 << (_la - 481)) & ((1 << (PlSqlParser.EXPAND_GSET_TO_UNION - 481)) | (1 << (PlSqlParser.EXPAND_TABLE - 481)) | (1 << (PlSqlParser.EXP - 481)) | (1 << (PlSqlParser.EXPIRE - 481)) | (1 << (PlSqlParser.EXPLAIN - 481)) | (1 << (PlSqlParser.EXPLOSION - 481)) | (1 << (PlSqlParser.EXPORT - 481)) | (1 << (PlSqlParser.EXPR_CORR_CHECK - 481)) | (1 << (PlSqlParser.EXPRESS - 481)) | (1 << (PlSqlParser.EXTENDS - 481)) | (1 << (PlSqlParser.EXTENT - 481)) | (1 << (PlSqlParser.EXTENTS - 481)) | (1 << (PlSqlParser.EXTERNAL - 481)) | (1 << (PlSqlParser.EXTERNALLY - 481)) | (1 << (PlSqlParser.EXTRACTCLOBXML - 481)) | (1 << (PlSqlParser.EXTRACT - 481)) | (1 << (PlSqlParser.EXTRACTVALUE - 481)) | (1 << (PlSqlParser.EXTRA - 481)) | (1 << (PlSqlParser.FACILITY - 481)) | (1 << (PlSqlParser.FACT - 481)) | (1 << (PlSqlParser.FACTOR - 481)) | (1 << (PlSqlParser.FACTORIZE_JOIN - 481)) | (1 << (PlSqlParser.FAILED - 481)) | (1 << (PlSqlParser.FAILED_LOGIN_ATTEMPTS - 481)) | (1 << (PlSqlParser.FAILGROUP - 481)) | (1 << (PlSqlParser.FAILOVER - 481)) | (1 << (PlSqlParser.FAILURE - 481)) | (1 << (PlSqlParser.FALSE - 481)) | (1 << (PlSqlParser.FAMILY - 481)) | (1 << (PlSqlParser.FAR - 481)) | (1 << (PlSqlParser.FAST - 481)) | (1 << (PlSqlParser.FASTSTART - 481)))) !== 0) || ((((_la - 513)) & ~0x1f) == 0 && ((1 << (_la - 513)) & ((1 << (PlSqlParser.FBTSCAN - 513)) | (1 << (PlSqlParser.FEATURE_DETAILS - 513)) | (1 << (PlSqlParser.FEATURE_ID - 513)) | (1 << (PlSqlParser.FEATURE_SET - 513)) | (1 << (PlSqlParser.FEATURE_VALUE - 513)) | (1 << (PlSqlParser.FETCH - 513)) | (1 << (PlSqlParser.FILE - 513)) | (1 << (PlSqlParser.FILE_NAME_CONVERT - 513)) | (1 << (PlSqlParser.FILESYSTEM_LIKE_LOGGING - 513)) | (1 << (PlSqlParser.FILTER - 513)) | (1 << (PlSqlParser.FINAL - 513)) | (1 << (PlSqlParser.FINE - 513)) | (1 << (PlSqlParser.FINISH - 513)) | (1 << (PlSqlParser.FIRST - 513)) | (1 << (PlSqlParser.FIRSTM - 513)) | (1 << (PlSqlParser.FIRST_ROWS - 513)) | (1 << (PlSqlParser.FIRST_VALUE - 513)) | (1 << (PlSqlParser.FIXED_VIEW_DATA - 513)) | (1 << (PlSqlParser.FLAGGER - 513)) | (1 << (PlSqlParser.FLASHBACK - 513)) | (1 << (PlSqlParser.FLASH_CACHE - 513)) | (1 << (PlSqlParser.FLOAT - 513)) | (1 << (PlSqlParser.FLOB - 513)) | (1 << (PlSqlParser.FLOOR - 513)) | (1 << (PlSqlParser.FLUSH - 513)) | (1 << (PlSqlParser.FOLDER - 513)) | (1 << (PlSqlParser.FOLLOWING - 513)) | (1 << (PlSqlParser.FOLLOWS - 513)) | (1 << (PlSqlParser.FORALL - 513)) | (1 << (PlSqlParser.FORCE - 513)) | (1 << (PlSqlParser.FORCE_XML_QUERY_REWRITE - 513)) | (1 << (PlSqlParser.FOREIGN - 513)))) !== 0) || ((((_la - 545)) & ~0x1f) == 0 && ((1 << (_la - 545)) & ((1 << (PlSqlParser.FOREVER - 545)) | (1 << (PlSqlParser.FORMAT - 545)) | (1 << (PlSqlParser.FORWARD - 545)) | (1 << (PlSqlParser.FRAGMENT_NUMBER - 545)) | (1 << (PlSqlParser.FREELIST - 545)) | (1 << (PlSqlParser.FREELISTS - 545)) | (1 << (PlSqlParser.FREEPOOLS - 545)) | (1 << (PlSqlParser.FRESH - 545)) | (1 << (PlSqlParser.FROM_TZ - 545)) | (1 << (PlSqlParser.FULL - 545)) | (1 << (PlSqlParser.FULL_OUTER_JOIN_TO_OUTER - 545)) | (1 << (PlSqlParser.FUNCTION - 545)) | (1 << (PlSqlParser.FUNCTIONS - 545)) | (1 << (PlSqlParser.GATHER_OPTIMIZER_STATISTICS - 545)) | (1 << (PlSqlParser.GATHER_PLAN_STATISTICS - 545)) | (1 << (PlSqlParser.GBY_CONC_ROLLUP - 545)) | (1 << (PlSqlParser.GBY_PUSHDOWN - 545)) | (1 << (PlSqlParser.GENERATED - 545)) | (1 << (PlSqlParser.GET - 545)) | (1 << (PlSqlParser.GLOBAL - 545)) | (1 << (PlSqlParser.GLOBALLY - 545)) | (1 << (PlSqlParser.GLOBAL_NAME - 545)) | (1 << (PlSqlParser.GLOBAL_TOPIC_ENABLED - 545)) | (1 << (PlSqlParser.GROUP_BY - 545)) | (1 << (PlSqlParser.GROUP_ID - 545)) | (1 << (PlSqlParser.GROUPING - 545)) | (1 << (PlSqlParser.GROUPING_ID - 545)))) !== 0) || ((((_la - 577)) & ~0x1f) == 0 && ((1 << (_la - 577)) & ((1 << (PlSqlParser.GROUPS - 577)) | (1 << (PlSqlParser.GUARANTEED - 577)) | (1 << (PlSqlParser.GUARANTEE - 577)) | (1 << (PlSqlParser.GUARD - 577)) | (1 << (PlSqlParser.HASH_AJ - 577)) | (1 << (PlSqlParser.HASH - 577)) | (1 << (PlSqlParser.HASHKEYS - 577)) | (1 << (PlSqlParser.HASH_SJ - 577)) | (1 << (PlSqlParser.HEADER - 577)) | (1 << (PlSqlParser.HEAP - 577)) | (1 << (PlSqlParser.HELP - 577)) | (1 << (PlSqlParser.HEXTORAW - 577)) | (1 << (PlSqlParser.HEXTOREF - 577)) | (1 << (PlSqlParser.HIDDEN_KEYWORD - 577)) | (1 << (PlSqlParser.HIDE - 577)) | (1 << (PlSqlParser.HIERARCHY - 577)) | (1 << (PlSqlParser.HIGH - 577)) | (1 << (PlSqlParser.HINTSET_BEGIN - 577)) | (1 << (PlSqlParser.HINTSET_END - 577)) | (1 << (PlSqlParser.HOT - 577)) | (1 << (PlSqlParser.HOUR - 577)) | (1 << (PlSqlParser.HWM_BROKERED - 577)) | (1 << (PlSqlParser.HYBRID - 577)) | (1 << (PlSqlParser.IDENTIFIER - 577)) | (1 << (PlSqlParser.IDENTITY - 577)) | (1 << (PlSqlParser.IDGENERATORS - 577)) | (1 << (PlSqlParser.ID - 577)) | (1 << (PlSqlParser.IDLE_TIME - 577)) | (1 << (PlSqlParser.IF - 577)) | (1 << (PlSqlParser.IGNORE - 577)))) !== 0) || ((((_la - 609)) & ~0x1f) == 0 && ((1 << (_la - 609)) & ((1 << (PlSqlParser.IGNORE_OPTIM_EMBEDDED_HINTS - 609)) | (1 << (PlSqlParser.IGNORE_ROW_ON_DUPKEY_INDEX - 609)) | (1 << (PlSqlParser.IGNORE_WHERE_CLAUSE - 609)) | (1 << (PlSqlParser.ILM - 609)) | (1 << (PlSqlParser.IMMEDIATE - 609)) | (1 << (PlSqlParser.IMPACT - 609)) | (1 << (PlSqlParser.IMPORT - 609)) | (1 << (PlSqlParser.INACTIVE - 609)) | (1 << (PlSqlParser.INCLUDE - 609)) | (1 << (PlSqlParser.INCLUDE_VERSION - 609)) | (1 << (PlSqlParser.INCLUDING - 609)) | (1 << (PlSqlParser.INCREMENTAL - 609)) | (1 << (PlSqlParser.INCREMENT - 609)) | (1 << (PlSqlParser.INCR - 609)) | (1 << (PlSqlParser.INDENT - 609)) | (1 << (PlSqlParser.INDEX_ASC - 609)) | (1 << (PlSqlParser.INDEX_COMBINE - 609)) | (1 << (PlSqlParser.INDEX_DESC - 609)) | (1 << (PlSqlParser.INDEXED - 609)) | (1 << (PlSqlParser.INDEXES - 609)) | (1 << (PlSqlParser.INDEX_FFS - 609)) | (1 << (PlSqlParser.INDEX_FILTER - 609)) | (1 << (PlSqlParser.INDEXING - 609)) | (1 << (PlSqlParser.INDEX_JOIN - 609)) | (1 << (PlSqlParser.INDEX_ROWS - 609)) | (1 << (PlSqlParser.INDEX_RRS - 609)) | (1 << (PlSqlParser.INDEX_RS_ASC - 609)) | (1 << (PlSqlParser.INDEX_RS_DESC - 609)) | (1 << (PlSqlParser.INDEX_RS - 609)) | (1 << (PlSqlParser.INDEX_SCAN - 609)) | (1 << (PlSqlParser.INDEX_SKIP_SCAN - 609)))) !== 0) || ((((_la - 641)) & ~0x1f) == 0 && ((1 << (_la - 641)) & ((1 << (PlSqlParser.INDEX_SS_ASC - 641)) | (1 << (PlSqlParser.INDEX_SS_DESC - 641)) | (1 << (PlSqlParser.INDEX_SS - 641)) | (1 << (PlSqlParser.INDEX_STATS - 641)) | (1 << (PlSqlParser.INDEXTYPE - 641)) | (1 << (PlSqlParser.INDEXTYPES - 641)) | (1 << (PlSqlParser.INDICATOR - 641)) | (1 << (PlSqlParser.INDICES - 641)) | (1 << (PlSqlParser.INFINITE - 641)) | (1 << (PlSqlParser.INFORMATIONAL - 641)) | (1 << (PlSqlParser.INHERIT - 641)) | (1 << (PlSqlParser.INITCAP - 641)) | (1 << (PlSqlParser.INITIAL - 641)) | (1 << (PlSqlParser.INITIALIZED - 641)) | (1 << (PlSqlParser.INITIALLY - 641)) | (1 << (PlSqlParser.INITRANS - 641)) | (1 << (PlSqlParser.INLINE - 641)) | (1 << (PlSqlParser.INLINE_XMLTYPE_NT - 641)) | (1 << (PlSqlParser.INMEMORY - 641)) | (1 << (PlSqlParser.IN_MEMORY_METADATA - 641)) | (1 << (PlSqlParser.INMEMORY_PRUNING - 641)) | (1 << (PlSqlParser.INNER - 641)) | (1 << (PlSqlParser.INOUT - 641)) | (1 << (PlSqlParser.INPLACE - 641)) | (1 << (PlSqlParser.INSERTCHILDXMLAFTER - 641)) | (1 << (PlSqlParser.INSERTCHILDXMLBEFORE - 641)) | (1 << (PlSqlParser.INSERTCHILDXML - 641)) | (1 << (PlSqlParser.INSERTXMLAFTER - 641)) | (1 << (PlSqlParser.INSERTXMLBEFORE - 641)) | (1 << (PlSqlParser.INSTANCE - 641)))) !== 0) || ((((_la - 673)) & ~0x1f) == 0 && ((1 << (_la - 673)) & ((1 << (PlSqlParser.INSTANCES - 673)) | (1 << (PlSqlParser.INSTANTIABLE - 673)) | (1 << (PlSqlParser.INSTANTLY - 673)) | (1 << (PlSqlParser.INSTEAD - 673)) | (1 << (PlSqlParser.INSTR2 - 673)) | (1 << (PlSqlParser.INSTR4 - 673)) | (1 << (PlSqlParser.INSTRB - 673)) | (1 << (PlSqlParser.INSTRC - 673)) | (1 << (PlSqlParser.INSTR - 673)) | (1 << (PlSqlParser.INTEGER - 673)) | (1 << (PlSqlParser.INTERLEAVED - 673)) | (1 << (PlSqlParser.INTERMEDIATE - 673)) | (1 << (PlSqlParser.INTERNAL_CONVERT - 673)) | (1 << (PlSqlParser.INTERNAL_USE - 673)) | (1 << (PlSqlParser.INTERPRETED - 673)) | (1 << (PlSqlParser.INTERVAL - 673)) | (1 << (PlSqlParser.INT - 673)) | (1 << (PlSqlParser.INVALIDATE - 673)) | (1 << (PlSqlParser.INVISIBLE - 673)) | (1 << (PlSqlParser.IN_XQUERY - 673)) | (1 << (PlSqlParser.ISOLATION - 673)) | (1 << (PlSqlParser.ISOLATION_LEVEL - 673)) | (1 << (PlSqlParser.ITERATE - 673)) | (1 << (PlSqlParser.ITERATION_NUMBER - 673)) | (1 << (PlSqlParser.JAVA - 673)) | (1 << (PlSqlParser.JOB - 673)) | (1 << (PlSqlParser.JOIN - 673)) | (1 << (PlSqlParser.JSON_ARRAYAGG - 673)) | (1 << (PlSqlParser.JSON_ARRAY - 673)))) !== 0) || ((((_la - 705)) & ~0x1f) == 0 && ((1 << (_la - 705)) & ((1 << (PlSqlParser.JSON_EQUAL - 705)) | (1 << (PlSqlParser.JSON_EXISTS2 - 705)) | (1 << (PlSqlParser.JSON_EXISTS - 705)) | (1 << (PlSqlParser.JSONGET - 705)) | (1 << (PlSqlParser.JSON - 705)) | (1 << (PlSqlParser.JSON_OBJECTAGG - 705)) | (1 << (PlSqlParser.JSON_OBJECT - 705)) | (1 << (PlSqlParser.JSONPARSE - 705)) | (1 << (PlSqlParser.JSON_QUERY - 705)) | (1 << (PlSqlParser.JSON_SERIALIZE - 705)) | (1 << (PlSqlParser.JSON_TABLE - 705)) | (1 << (PlSqlParser.JSON_TEXTCONTAINS2 - 705)) | (1 << (PlSqlParser.JSON_TEXTCONTAINS - 705)) | (1 << (PlSqlParser.JSON_VALUE - 705)) | (1 << (PlSqlParser.KEEP_DUPLICATES - 705)) | (1 << (PlSqlParser.KEEP - 705)) | (1 << (PlSqlParser.KERBEROS - 705)) | (1 << (PlSqlParser.KEY - 705)) | (1 << (PlSqlParser.KEY_LENGTH - 705)) | (1 << (PlSqlParser.KEYSIZE - 705)) | (1 << (PlSqlParser.KEYS - 705)) | (1 << (PlSqlParser.KEYSTORE - 705)) | (1 << (PlSqlParser.KILL - 705)) | (1 << (PlSqlParser.LABEL - 705)) | (1 << (PlSqlParser.LANGUAGE - 705)) | (1 << (PlSqlParser.LAST_DAY - 705)) | (1 << (PlSqlParser.LAST - 705)) | (1 << (PlSqlParser.LAST_VALUE - 705)) | (1 << (PlSqlParser.LATERAL - 705)) | (1 << (PlSqlParser.LAX - 705)) | (1 << (PlSqlParser.LAYER - 705)) | (1 << (PlSqlParser.LDAP_REGISTRATION_ENABLED - 705)))) !== 0) || ((((_la - 737)) & ~0x1f) == 0 && ((1 << (_la - 737)) & ((1 << (PlSqlParser.LDAP_REGISTRATION - 737)) | (1 << (PlSqlParser.LDAP_REG_SYNC_INTERVAL - 737)) | (1 << (PlSqlParser.LEADING - 737)) | (1 << (PlSqlParser.LEFT - 737)) | (1 << (PlSqlParser.LENGTH2 - 737)) | (1 << (PlSqlParser.LENGTH4 - 737)) | (1 << (PlSqlParser.LENGTHB - 737)) | (1 << (PlSqlParser.LENGTHC - 737)) | (1 << (PlSqlParser.LENGTH - 737)) | (1 << (PlSqlParser.LESS - 737)) | (1 << (PlSqlParser.LEVEL - 737)) | (1 << (PlSqlParser.LEVELS - 737)) | (1 << (PlSqlParser.LIBRARY - 737)) | (1 << (PlSqlParser.LIFECYCLE - 737)) | (1 << (PlSqlParser.LIFE - 737)) | (1 << (PlSqlParser.LIFETIME - 737)) | (1 << (PlSqlParser.LIKE2 - 737)) | (1 << (PlSqlParser.LIKE4 - 737)) | (1 << (PlSqlParser.LIKEC - 737)) | (1 << (PlSqlParser.LIKE_EXPAND - 737)) | (1 << (PlSqlParser.LIMIT - 737)) | (1 << (PlSqlParser.LINEAR - 737)) | (1 << (PlSqlParser.LINK - 737)) | (1 << (PlSqlParser.LIST - 737)) | (1 << (PlSqlParser.LN - 737)) | (1 << (PlSqlParser.LNNVL - 737)) | (1 << (PlSqlParser.LOAD - 737)) | (1 << (PlSqlParser.LOB - 737)) | (1 << (PlSqlParser.LOBNVL - 737)) | (1 << (PlSqlParser.LOBS - 737)) | (1 << (PlSqlParser.LOCAL_INDEXES - 737)))) !== 0) || ((((_la - 769)) & ~0x1f) == 0 && ((1 << (_la - 769)) & ((1 << (PlSqlParser.LOCAL - 769)) | (1 << (PlSqlParser.LOCALTIME - 769)) | (1 << (PlSqlParser.LOCALTIMESTAMP - 769)) | (1 << (PlSqlParser.LOCATION - 769)) | (1 << (PlSqlParser.LOCATOR - 769)) | (1 << (PlSqlParser.LOCKED - 769)) | (1 << (PlSqlParser.LOCKING - 769)) | (1 << (PlSqlParser.LOGFILE - 769)) | (1 << (PlSqlParser.LOGFILES - 769)) | (1 << (PlSqlParser.LOGGING - 769)) | (1 << (PlSqlParser.LOGICAL - 769)) | (1 << (PlSqlParser.LOGICAL_READS_PER_CALL - 769)) | (1 << (PlSqlParser.LOGICAL_READS_PER_SESSION - 769)) | (1 << (PlSqlParser.LOG - 769)) | (1 << (PlSqlParser.LOGMINING - 769)) | (1 << (PlSqlParser.LOGOFF - 769)) | (1 << (PlSqlParser.LOGON - 769)) | (1 << (PlSqlParser.LOG_READ_ONLY_VIOLATIONS - 769)) | (1 << (PlSqlParser.LONG - 769)) | (1 << (PlSqlParser.LOOP - 769)) | (1 << (PlSqlParser.LOWER - 769)) | (1 << (PlSqlParser.LOW - 769)) | (1 << (PlSqlParser.LPAD - 769)) | (1 << (PlSqlParser.LTRIM - 769)) | (1 << (PlSqlParser.MAIN - 769)) | (1 << (PlSqlParser.MAKE_REF - 769)) | (1 << (PlSqlParser.MANAGED - 769)) | (1 << (PlSqlParser.MANAGE - 769)) | (1 << (PlSqlParser.MANAGEMENT - 769)) | (1 << (PlSqlParser.MANAGER - 769)) | (1 << (PlSqlParser.MANUAL - 769)))) !== 0) || ((((_la - 801)) & ~0x1f) == 0 && ((1 << (_la - 801)) & ((1 << (PlSqlParser.MAP - 801)) | (1 << (PlSqlParser.MAPPING - 801)) | (1 << (PlSqlParser.MASTER - 801)) | (1 << (PlSqlParser.MATCHED - 801)) | (1 << (PlSqlParser.MATCHES - 801)) | (1 << (PlSqlParser.MATCH - 801)) | (1 << (PlSqlParser.MATCH_NUMBER - 801)) | (1 << (PlSqlParser.MATCH_RECOGNIZE - 801)) | (1 << (PlSqlParser.MATERIALIZED - 801)) | (1 << (PlSqlParser.MATERIALIZE - 801)) | (1 << (PlSqlParser.MAXARCHLOGS - 801)) | (1 << (PlSqlParser.MAXDATAFILES - 801)) | (1 << (PlSqlParser.MAXEXTENTS - 801)) | (1 << (PlSqlParser.MAXIMIZE - 801)) | (1 << (PlSqlParser.MAXINSTANCES - 801)) | (1 << (PlSqlParser.MAXLOGFILES - 801)) | (1 << (PlSqlParser.MAXLOGHISTORY - 801)) | (1 << (PlSqlParser.MAXLOGMEMBERS - 801)) | (1 << (PlSqlParser.MAX_SHARED_TEMP_SIZE - 801)) | (1 << (PlSqlParser.MAXSIZE - 801)) | (1 << (PlSqlParser.MAXTRANS - 801)) | (1 << (PlSqlParser.MAXVALUE - 801)) | (1 << (PlSqlParser.MEASURE - 801)) | (1 << (PlSqlParser.MEASURES - 801)) | (1 << (PlSqlParser.MEDIUM - 801)) | (1 << (PlSqlParser.MEMBER - 801)) | (1 << (PlSqlParser.MEMCOMPRESS - 801)) | (1 << (PlSqlParser.MEMORY - 801)) | (1 << (PlSqlParser.MERGEACTIONS - 801)) | (1 << (PlSqlParser.MERGE_AJ - 801)) | (1 << (PlSqlParser.MERGE_CONST_ON - 801)) | (1 << (PlSqlParser.MERGE - 801)))) !== 0) || ((((_la - 833)) & ~0x1f) == 0 && ((1 << (_la - 833)) & ((1 << (PlSqlParser.MERGE_SJ - 833)) | (1 << (PlSqlParser.METADATA - 833)) | (1 << (PlSqlParser.METHOD - 833)) | (1 << (PlSqlParser.MIGRATE - 833)) | (1 << (PlSqlParser.MIGRATION - 833)) | (1 << (PlSqlParser.MINEXTENTS - 833)) | (1 << (PlSqlParser.MINIMIZE - 833)) | (1 << (PlSqlParser.MINIMUM - 833)) | (1 << (PlSqlParser.MINING - 833)) | (1 << (PlSqlParser.MINUS_NULL - 833)) | (1 << (PlSqlParser.MINUTE - 833)) | (1 << (PlSqlParser.MINVALUE - 833)) | (1 << (PlSqlParser.MIRRORCOLD - 833)) | (1 << (PlSqlParser.MIRRORHOT - 833)) | (1 << (PlSqlParser.MIRROR - 833)) | (1 << (PlSqlParser.MLSLABEL - 833)) | (1 << (PlSqlParser.MODEL_COMPILE_SUBQUERY - 833)) | (1 << (PlSqlParser.MODEL_DONTVERIFY_UNIQUENESS - 833)) | (1 << (PlSqlParser.MODEL_DYNAMIC_SUBQUERY - 833)) | (1 << (PlSqlParser.MODEL_MIN_ANALYSIS - 833)) | (1 << (PlSqlParser.MODEL - 833)) | (1 << (PlSqlParser.MODEL_NB - 833)) | (1 << (PlSqlParser.MODEL_NO_ANALYSIS - 833)) | (1 << (PlSqlParser.MODEL_PBY - 833)) | (1 << (PlSqlParser.MODEL_PUSH_REF - 833)) | (1 << (PlSqlParser.MODEL_SV - 833)) | (1 << (PlSqlParser.MODIFICATION - 833)) | (1 << (PlSqlParser.MODIFY_COLUMN_TYPE - 833)) | (1 << (PlSqlParser.MODIFY - 833)) | (1 << (PlSqlParser.MOD - 833)))) !== 0) || ((((_la - 865)) & ~0x1f) == 0 && ((1 << (_la - 865)) & ((1 << (PlSqlParser.MODULE - 865)) | (1 << (PlSqlParser.MONITORING - 865)) | (1 << (PlSqlParser.MONITOR - 865)) | (1 << (PlSqlParser.MONTH - 865)) | (1 << (PlSqlParser.MONTHS_BETWEEN - 865)) | (1 << (PlSqlParser.MONTHS - 865)) | (1 << (PlSqlParser.MOUNT - 865)) | (1 << (PlSqlParser.MOUNTPATH - 865)) | (1 << (PlSqlParser.MOVEMENT - 865)) | (1 << (PlSqlParser.MOVE - 865)) | (1 << (PlSqlParser.MULTIDIMENSIONAL - 865)) | (1 << (PlSqlParser.MULTISET - 865)) | (1 << (PlSqlParser.MV_MERGE - 865)) | (1 << (PlSqlParser.NAMED - 865)) | (1 << (PlSqlParser.NAME - 865)) | (1 << (PlSqlParser.NAMESPACE - 865)) | (1 << (PlSqlParser.NAN - 865)) | (1 << (PlSqlParser.NANVL - 865)) | (1 << (PlSqlParser.NATIONAL - 865)) | (1 << (PlSqlParser.NATIVE_FULL_OUTER_JOIN - 865)) | (1 << (PlSqlParser.NATIVE - 865)) | (1 << (PlSqlParser.NATURAL - 865)) | (1 << (PlSqlParser.NAV - 865)) | (1 << (PlSqlParser.NCHAR_CS - 865)) | (1 << (PlSqlParser.NCHAR - 865)) | (1 << (PlSqlParser.NCHR - 865)) | (1 << (PlSqlParser.NCLOB - 865)) | (1 << (PlSqlParser.NEEDED - 865)) | (1 << (PlSqlParser.NEG - 865)) | (1 << (PlSqlParser.NESTED - 865)) | (1 << (PlSqlParser.NESTED_TABLE_FAST_INSERT - 865)))) !== 0) || ((((_la - 897)) & ~0x1f) == 0 && ((1 << (_la - 897)) & ((1 << (PlSqlParser.NESTED_TABLE_GET_REFS - 897)) | (1 << (PlSqlParser.NESTED_TABLE_ID - 897)) | (1 << (PlSqlParser.NESTED_TABLE_SET_REFS - 897)) | (1 << (PlSqlParser.NESTED_TABLE_SET_SETID - 897)) | (1 << (PlSqlParser.NETWORK - 897)) | (1 << (PlSqlParser.NEVER - 897)) | (1 << (PlSqlParser.NEW - 897)) | (1 << (PlSqlParser.NEW_TIME - 897)) | (1 << (PlSqlParser.NEXT_DAY - 897)) | (1 << (PlSqlParser.NEXT - 897)) | (1 << (PlSqlParser.NL_AJ - 897)) | (1 << (PlSqlParser.NLJ_BATCHING - 897)) | (1 << (PlSqlParser.NLJ_INDEX_FILTER - 897)) | (1 << (PlSqlParser.NLJ_INDEX_SCAN - 897)) | (1 << (PlSqlParser.NLJ_PREFETCH - 897)) | (1 << (PlSqlParser.NLS_CALENDAR - 897)) | (1 << (PlSqlParser.NLS_CHARACTERSET - 897)) | (1 << (PlSqlParser.NLS_CHARSET_DECL_LEN - 897)) | (1 << (PlSqlParser.NLS_CHARSET_ID - 897)) | (1 << (PlSqlParser.NLS_CHARSET_NAME - 897)) | (1 << (PlSqlParser.NLS_COMP - 897)) | (1 << (PlSqlParser.NLS_CURRENCY - 897)) | (1 << (PlSqlParser.NLS_DATE_FORMAT - 897)) | (1 << (PlSqlParser.NLS_DATE_LANGUAGE - 897)) | (1 << (PlSqlParser.NLS_INITCAP - 897)) | (1 << (PlSqlParser.NLS_ISO_CURRENCY - 897)) | (1 << (PlSqlParser.NL_SJ - 897)) | (1 << (PlSqlParser.NLS_LANG - 897)) | (1 << (PlSqlParser.NLS_LANGUAGE - 897)) | (1 << (PlSqlParser.NLS_LENGTH_SEMANTICS - 897)) | (1 << (PlSqlParser.NLS_LOWER - 897)) | (1 << (PlSqlParser.NLS_NCHAR_CONV_EXCP - 897)))) !== 0) || ((((_la - 929)) & ~0x1f) == 0 && ((1 << (_la - 929)) & ((1 << (PlSqlParser.NLS_NUMERIC_CHARACTERS - 929)) | (1 << (PlSqlParser.NLS_SORT - 929)) | (1 << (PlSqlParser.NLSSORT - 929)) | (1 << (PlSqlParser.NLS_SPECIAL_CHARS - 929)) | (1 << (PlSqlParser.NLS_TERRITORY - 929)) | (1 << (PlSqlParser.NLS_UPPER - 929)) | (1 << (PlSqlParser.NO_ACCESS - 929)) | (1 << (PlSqlParser.NO_ADAPTIVE_PLAN - 929)) | (1 << (PlSqlParser.NO_ANSI_REARCH - 929)) | (1 << (PlSqlParser.NOAPPEND - 929)) | (1 << (PlSqlParser.NOARCHIVELOG - 929)) | (1 << (PlSqlParser.NOAUDIT - 929)) | (1 << (PlSqlParser.NO_AUTO_REOPTIMIZE - 929)) | (1 << (PlSqlParser.NO_BASETABLE_MULTIMV_REWRITE - 929)) | (1 << (PlSqlParser.NO_BATCH_TABLE_ACCESS_BY_ROWID - 929)) | (1 << (PlSqlParser.NO_BIND_AWARE - 929)) | (1 << (PlSqlParser.NO_BUFFER - 929)) | (1 << (PlSqlParser.NOCACHE - 929)) | (1 << (PlSqlParser.NO_CARTESIAN - 929)) | (1 << (PlSqlParser.NO_CHECK_ACL_REWRITE - 929)) | (1 << (PlSqlParser.NO_CLUSTER_BY_ROWID - 929)) | (1 << (PlSqlParser.NO_CLUSTERING - 929)) | (1 << (PlSqlParser.NO_COALESCE_SQ - 929)) | (1 << (PlSqlParser.NO_COMMON_DATA - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_CB_WHR_ONLY - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_COMBINE_SW - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_COST_BASED - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_ELIM_DUPS - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_FILTERING - 929)) | (1 << (PlSqlParser.NOCOPY - 929)) | (1 << (PlSqlParser.NO_COST_XML_QUERY_REWRITE - 929)))) !== 0) || ((((_la - 961)) & ~0x1f) == 0 && ((1 << (_la - 961)) & ((1 << (PlSqlParser.NO_CPU_COSTING - 961)) | (1 << (PlSqlParser.NOCPU_COSTING - 961)) | (1 << (PlSqlParser.NOCYCLE - 961)) | (1 << (PlSqlParser.NO_DATA_SECURITY_REWRITE - 961)) | (1 << (PlSqlParser.NO_DECORRELATE - 961)) | (1 << (PlSqlParser.NODELAY - 961)) | (1 << (PlSqlParser.NO_DOMAIN_INDEX_FILTER - 961)) | (1 << (PlSqlParser.NO_DST_UPGRADE_INSERT_CONV - 961)) | (1 << (PlSqlParser.NO_ELIM_GROUPBY - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_JOIN - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_OBY - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_OUTER_JOIN - 961)) | (1 << (PlSqlParser.NOENTITYESCAPING - 961)) | (1 << (PlSqlParser.NO_EXPAND_GSET_TO_UNION - 961)) | (1 << (PlSqlParser.NO_EXPAND - 961)) | (1 << (PlSqlParser.NO_EXPAND_TABLE - 961)) | (1 << (PlSqlParser.NO_FACT - 961)) | (1 << (PlSqlParser.NO_FACTORIZE_JOIN - 961)) | (1 << (PlSqlParser.NO_FILTERING - 961)) | (1 << (PlSqlParser.NOFORCE - 961)) | (1 << (PlSqlParser.NO_FULL_OUTER_JOIN_TO_OUTER - 961)) | (1 << (PlSqlParser.NO_GATHER_OPTIMIZER_STATISTICS - 961)) | (1 << (PlSqlParser.NO_GBY_PUSHDOWN - 961)) | (1 << (PlSqlParser.NOGUARANTEE - 961)) | (1 << (PlSqlParser.NO_INDEX_FFS - 961)) | (1 << (PlSqlParser.NO_INDEX - 961)) | (1 << (PlSqlParser.NO_INDEX_SS - 961)) | (1 << (PlSqlParser.NO_INMEMORY - 961)) | (1 << (PlSqlParser.NO_INMEMORY_PRUNING - 961)) | (1 << (PlSqlParser.NOKEEP - 961)) | (1 << (PlSqlParser.NO_LOAD - 961)) | (1 << (PlSqlParser.NOLOCAL - 961)))) !== 0) || ((((_la - 993)) & ~0x1f) == 0 && ((1 << (_la - 993)) & ((1 << (PlSqlParser.NOLOGGING - 993)) | (1 << (PlSqlParser.NOMAPPING - 993)) | (1 << (PlSqlParser.NOMAXVALUE - 993)) | (1 << (PlSqlParser.NO_MERGE - 993)) | (1 << (PlSqlParser.NOMINIMIZE - 993)) | (1 << (PlSqlParser.NOMINVALUE - 993)) | (1 << (PlSqlParser.NO_MODEL_PUSH_REF - 993)) | (1 << (PlSqlParser.NO_MONITORING - 993)) | (1 << (PlSqlParser.NOMONITORING - 993)) | (1 << (PlSqlParser.NO_MONITOR - 993)) | (1 << (PlSqlParser.NO_MULTIMV_REWRITE - 993)) | (1 << (PlSqlParser.NO_NATIVE_FULL_OUTER_JOIN - 993)) | (1 << (PlSqlParser.NONBLOCKING - 993)) | (1 << (PlSqlParser.NONEDITIONABLE - 993)) | (1 << (PlSqlParser.NONE - 993)) | (1 << (PlSqlParser.NO_NLJ_BATCHING - 993)) | (1 << (PlSqlParser.NO_NLJ_PREFETCH - 993)) | (1 << (PlSqlParser.NO - 993)) | (1 << (PlSqlParser.NONSCHEMA - 993)) | (1 << (PlSqlParser.NO_OBJECT_LINK - 993)) | (1 << (PlSqlParser.NOORDER - 993)) | (1 << (PlSqlParser.NO_ORDER_ROLLUPS - 993)) | (1 << (PlSqlParser.NO_OUTER_JOIN_TO_ANTI - 993)) | (1 << (PlSqlParser.NO_OUTER_JOIN_TO_INNER - 993)) | (1 << (PlSqlParser.NOOVERRIDE - 993)) | (1 << (PlSqlParser.NO_PARALLEL_INDEX - 993)) | (1 << (PlSqlParser.NOPARALLEL_INDEX - 993)) | (1 << (PlSqlParser.NO_PARALLEL - 993)) | (1 << (PlSqlParser.NOPARALLEL - 993)) | (1 << (PlSqlParser.NO_PARTIAL_COMMIT - 993)) | (1 << (PlSqlParser.NO_PARTIAL_JOIN - 993)) | (1 << (PlSqlParser.NO_PARTIAL_ROLLUP_PUSHDOWN - 993)))) !== 0) || ((((_la - 1025)) & ~0x1f) == 0 && ((1 << (_la - 1025)) & ((1 << (PlSqlParser.NOPARTITION - 1025)) | (1 << (PlSqlParser.NO_PLACE_DISTINCT - 1025)) | (1 << (PlSqlParser.NO_PLACE_GROUP_BY - 1025)) | (1 << (PlSqlParser.NO_PQ_CONCURRENT_UNION - 1025)) | (1 << (PlSqlParser.NO_PQ_MAP - 1025)) | (1 << (PlSqlParser.NO_PQ_REPLICATE - 1025)) | (1 << (PlSqlParser.NO_PQ_SKEW - 1025)) | (1 << (PlSqlParser.NO_PRUNE_GSETS - 1025)) | (1 << (PlSqlParser.NO_PULL_PRED - 1025)) | (1 << (PlSqlParser.NO_PUSH_PRED - 1025)) | (1 << (PlSqlParser.NO_PUSH_SUBQ - 1025)) | (1 << (PlSqlParser.NO_PX_FAULT_TOLERANCE - 1025)) | (1 << (PlSqlParser.NO_PX_JOIN_FILTER - 1025)) | (1 << (PlSqlParser.NO_QKN_BUFF - 1025)) | (1 << (PlSqlParser.NO_QUERY_TRANSFORMATION - 1025)) | (1 << (PlSqlParser.NO_REF_CASCADE - 1025)) | (1 << (PlSqlParser.NORELOCATE - 1025)) | (1 << (PlSqlParser.NORELY - 1025)) | (1 << (PlSqlParser.NOREPAIR - 1025)) | (1 << (PlSqlParser.NOREPLAY - 1025)) | (1 << (PlSqlParser.NORESETLOGS - 1025)) | (1 << (PlSqlParser.NO_RESULT_CACHE - 1025)) | (1 << (PlSqlParser.NOREVERSE - 1025)) | (1 << (PlSqlParser.NO_REWRITE - 1025)) | (1 << (PlSqlParser.NOREWRITE - 1025)) | (1 << (PlSqlParser.NORMAL - 1025)) | (1 << (PlSqlParser.NO_ROOT_SW_FOR_LOCAL - 1025)) | (1 << (PlSqlParser.NOROWDEPENDENCIES - 1025)) | (1 << (PlSqlParser.NOSCHEMACHECK - 1025)) | (1 << (PlSqlParser.NOSEGMENT - 1025)) | (1 << (PlSqlParser.NO_SEMIJOIN - 1025)) | (1 << (PlSqlParser.NO_SEMI_TO_INNER - 1025)))) !== 0) || ((((_la - 1057)) & ~0x1f) == 0 && ((1 << (_la - 1057)) & ((1 << (PlSqlParser.NO_SET_TO_JOIN - 1057)) | (1 << (PlSqlParser.NOSORT - 1057)) | (1 << (PlSqlParser.NO_SQL_TRANSLATION - 1057)) | (1 << (PlSqlParser.NO_SQL_TUNE - 1057)) | (1 << (PlSqlParser.NO_STAR_TRANSFORMATION - 1057)) | (1 << (PlSqlParser.NO_STATEMENT_QUEUING - 1057)) | (1 << (PlSqlParser.NO_STATS_GSETS - 1057)) | (1 << (PlSqlParser.NOSTRICT - 1057)) | (1 << (PlSqlParser.NO_SUBQUERY_PRUNING - 1057)) | (1 << (PlSqlParser.NO_SUBSTRB_PAD - 1057)) | (1 << (PlSqlParser.NO_SWAP_JOIN_INPUTS - 1057)) | (1 << (PlSqlParser.NOSWITCH - 1057)) | (1 << (PlSqlParser.NO_TABLE_LOOKUP_BY_NL - 1057)) | (1 << (PlSqlParser.NO_TEMP_TABLE - 1057)) | (1 << (PlSqlParser.NOTHING - 1057)) | (1 << (PlSqlParser.NOTIFICATION - 1057)) | (1 << (PlSqlParser.NO_TRANSFORM_DISTINCT_AGG - 1057)) | (1 << (PlSqlParser.NO_UNNEST - 1057)) | (1 << (PlSqlParser.NO_USE_CUBE - 1057)) | (1 << (PlSqlParser.NO_USE_HASH_AGGREGATION - 1057)) | (1 << (PlSqlParser.NO_USE_HASH_GBY_FOR_PUSHDOWN - 1057)) | (1 << (PlSqlParser.NO_USE_HASH - 1057)) | (1 << (PlSqlParser.NO_USE_INVISIBLE_INDEXES - 1057)) | (1 << (PlSqlParser.NO_USE_MERGE - 1057)) | (1 << (PlSqlParser.NO_USE_NL - 1057)) | (1 << (PlSqlParser.NO_USE_VECTOR_AGGREGATION - 1057)) | (1 << (PlSqlParser.NOVALIDATE - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM_DIMS - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM_FACT - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM - 1057)))) !== 0) || ((((_la - 1089)) & ~0x1f) == 0 && ((1 << (_la - 1089)) & ((1 << (PlSqlParser.NO_XDB_FASTPATH_INSERT - 1089)) | (1 << (PlSqlParser.NO_XML_DML_REWRITE - 1089)) | (1 << (PlSqlParser.NO_XMLINDEX_REWRITE_IN_SELECT - 1089)) | (1 << (PlSqlParser.NO_XMLINDEX_REWRITE - 1089)) | (1 << (PlSqlParser.NO_XML_QUERY_REWRITE - 1089)) | (1 << (PlSqlParser.NO_ZONEMAP - 1089)) | (1 << (PlSqlParser.NTH_VALUE - 1089)) | (1 << (PlSqlParser.NULLIF - 1089)) | (1 << (PlSqlParser.NULLS - 1089)) | (1 << (PlSqlParser.NUMBER - 1089)) | (1 << (PlSqlParser.NUMERIC - 1089)) | (1 << (PlSqlParser.NUM_INDEX_KEYS - 1089)) | (1 << (PlSqlParser.NUMTODSINTERVAL - 1089)) | (1 << (PlSqlParser.NUMTOYMINTERVAL - 1089)) | (1 << (PlSqlParser.NVARCHAR2 - 1089)) | (1 << (PlSqlParser.NVL2 - 1089)) | (1 << (PlSqlParser.OBJECT2XML - 1089)) | (1 << (PlSqlParser.OBJECT - 1089)) | (1 << (PlSqlParser.OBJ_ID - 1089)) | (1 << (PlSqlParser.OBJNO - 1089)) | (1 << (PlSqlParser.OBJNO_REUSE - 1089)) | (1 << (PlSqlParser.OCCURENCES - 1089)) | (1 << (PlSqlParser.OFFLINE - 1089)) | (1 << (PlSqlParser.OFF - 1089)) | (1 << (PlSqlParser.OFFSET - 1089)) | (1 << (PlSqlParser.OIDINDEX - 1089)) | (1 << (PlSqlParser.OID - 1089)) | (1 << (PlSqlParser.OLAP - 1089)) | (1 << (PlSqlParser.OLD - 1089)) | (1 << (PlSqlParser.OLD_PUSH_PRED - 1089)))) !== 0) || ((((_la - 1121)) & ~0x1f) == 0 && ((1 << (_la - 1121)) & ((1 << (PlSqlParser.OLS - 1121)) | (1 << (PlSqlParser.OLTP - 1121)) | (1 << (PlSqlParser.OMIT - 1121)) | (1 << (PlSqlParser.ONE - 1121)) | (1 << (PlSqlParser.ONLINE - 1121)) | (1 << (PlSqlParser.ONLY - 1121)) | (1 << (PlSqlParser.OPAQUE - 1121)) | (1 << (PlSqlParser.OPAQUE_TRANSFORM - 1121)) | (1 << (PlSqlParser.OPAQUE_XCANONICAL - 1121)) | (1 << (PlSqlParser.OPCODE - 1121)) | (1 << (PlSqlParser.OPEN - 1121)) | (1 << (PlSqlParser.OPERATIONS - 1121)) | (1 << (PlSqlParser.OPERATOR - 1121)) | (1 << (PlSqlParser.OPT_ESTIMATE - 1121)) | (1 << (PlSqlParser.OPTIMAL - 1121)) | (1 << (PlSqlParser.OPTIMIZE - 1121)) | (1 << (PlSqlParser.OPTIMIZER_FEATURES_ENABLE - 1121)) | (1 << (PlSqlParser.OPTIMIZER_GOAL - 1121)) | (1 << (PlSqlParser.OPT_PARAM - 1121)) | (1 << (PlSqlParser.ORA_BRANCH - 1121)) | (1 << (PlSqlParser.ORA_CHECK_ACL - 1121)) | (1 << (PlSqlParser.ORA_CHECK_PRIVILEGE - 1121)) | (1 << (PlSqlParser.ORA_CLUSTERING - 1121)) | (1 << (PlSqlParser.ORADATA - 1121)) | (1 << (PlSqlParser.ORADEBUG - 1121)) | (1 << (PlSqlParser.ORA_DST_AFFECTED - 1121)) | (1 << (PlSqlParser.ORA_DST_CONVERT - 1121)) | (1 << (PlSqlParser.ORA_DST_ERROR - 1121)) | (1 << (PlSqlParser.ORA_GET_ACLIDS - 1121)))) !== 0) || ((((_la - 1153)) & ~0x1f) == 0 && ((1 << (_la - 1153)) & ((1 << (PlSqlParser.ORA_GET_PRIVILEGES - 1153)) | (1 << (PlSqlParser.ORA_HASH - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_USERID - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_USER - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_XS_USER_GUID - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_XS_USER - 1153)) | (1 << (PlSqlParser.ORA_RAWCOMPARE - 1153)) | (1 << (PlSqlParser.ORA_RAWCONCAT - 1153)) | (1 << (PlSqlParser.ORA_ROWSCN - 1153)) | (1 << (PlSqlParser.ORA_ROWSCN_RAW - 1153)) | (1 << (PlSqlParser.ORA_ROWVERSION - 1153)) | (1 << (PlSqlParser.ORA_TABVERSION - 1153)) | (1 << (PlSqlParser.ORA_WRITE_TIME - 1153)) | (1 << (PlSqlParser.ORDERED - 1153)) | (1 << (PlSqlParser.ORDERED_PREDICATES - 1153)) | (1 << (PlSqlParser.ORDINALITY - 1153)) | (1 << (PlSqlParser.OR_EXPAND - 1153)) | (1 << (PlSqlParser.ORGANIZATION - 1153)) | (1 << (PlSqlParser.OR_PREDICATES - 1153)) | (1 << (PlSqlParser.OSERROR - 1153)) | (1 << (PlSqlParser.OTHER - 1153)) | (1 << (PlSqlParser.OUTER_JOIN_TO_ANTI - 1153)) | (1 << (PlSqlParser.OUTER_JOIN_TO_INNER - 1153)) | (1 << (PlSqlParser.OUTER - 1153)) | (1 << (PlSqlParser.OUTLINE_LEAF - 1153)) | (1 << (PlSqlParser.OUTLINE - 1153)) | (1 << (PlSqlParser.OUT_OF_LINE - 1153)) | (1 << (PlSqlParser.OUT - 1153)) | (1 << (PlSqlParser.OVERFLOW_NOMOVE - 1153)) | (1 << (PlSqlParser.OVERFLOW - 1153)))) !== 0) || ((((_la - 1185)) & ~0x1f) == 0 && ((1 << (_la - 1185)) & ((1 << (PlSqlParser.OVERLAPS - 1185)) | (1 << (PlSqlParser.OVER - 1185)) | (1 << (PlSqlParser.OVERRIDING - 1185)) | (1 << (PlSqlParser.OWNER - 1185)) | (1 << (PlSqlParser.OWNERSHIP - 1185)) | (1 << (PlSqlParser.OWN - 1185)) | (1 << (PlSqlParser.PACKAGE - 1185)) | (1 << (PlSqlParser.PACKAGES - 1185)) | (1 << (PlSqlParser.PARALLEL_ENABLE - 1185)) | (1 << (PlSqlParser.PARALLEL_INDEX - 1185)) | (1 << (PlSqlParser.PARALLEL - 1185)) | (1 << (PlSqlParser.PARAMETERS - 1185)) | (1 << (PlSqlParser.PARAM - 1185)) | (1 << (PlSqlParser.PARENT - 1185)) | (1 << (PlSqlParser.PARITY - 1185)) | (1 << (PlSqlParser.PARTIAL_JOIN - 1185)) | (1 << (PlSqlParser.PARTIALLY - 1185)) | (1 << (PlSqlParser.PARTIAL - 1185)) | (1 << (PlSqlParser.PARTIAL_ROLLUP_PUSHDOWN - 1185)) | (1 << (PlSqlParser.PARTITION_HASH - 1185)) | (1 << (PlSqlParser.PARTITION_LIST - 1185)) | (1 << (PlSqlParser.PARTITION - 1185)) | (1 << (PlSqlParser.PARTITION_RANGE - 1185)) | (1 << (PlSqlParser.PARTITIONS - 1185)) | (1 << (PlSqlParser.PARTNUMINST - 1185)) | (1 << (PlSqlParser.PASSING - 1185)) | (1 << (PlSqlParser.PASSWORD_GRACE_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD_LIFE_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD_LOCK_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD - 1185)) | (1 << (PlSqlParser.PASSWORD_REUSE_MAX - 1185)))) !== 0) || ((((_la - 1217)) & ~0x1f) == 0 && ((1 << (_la - 1217)) & ((1 << (PlSqlParser.PASSWORD_REUSE_TIME - 1217)) | (1 << (PlSqlParser.PASSWORD_VERIFY_FUNCTION - 1217)) | (1 << (PlSqlParser.PAST - 1217)) | (1 << (PlSqlParser.PATCH - 1217)) | (1 << (PlSqlParser.PATH - 1217)) | (1 << (PlSqlParser.PATH_PREFIX - 1217)) | (1 << (PlSqlParser.PATHS - 1217)) | (1 << (PlSqlParser.PATTERN - 1217)) | (1 << (PlSqlParser.PBL_HS_BEGIN - 1217)) | (1 << (PlSqlParser.PBL_HS_END - 1217)) | (1 << (PlSqlParser.PCTINCREASE - 1217)) | (1 << (PlSqlParser.PCTTHRESHOLD - 1217)) | (1 << (PlSqlParser.PCTUSED - 1217)) | (1 << (PlSqlParser.PCTVERSION - 1217)) | (1 << (PlSqlParser.PENDING - 1217)) | (1 << (PlSqlParser.PERCENT_KEYWORD - 1217)) | (1 << (PlSqlParser.PERCENT_RANKM - 1217)) | (1 << (PlSqlParser.PERFORMANCE - 1217)) | (1 << (PlSqlParser.PERIOD_KEYWORD - 1217)) | (1 << (PlSqlParser.PERMANENT - 1217)) | (1 << (PlSqlParser.PERMISSION - 1217)) | (1 << (PlSqlParser.PERMUTE - 1217)) | (1 << (PlSqlParser.PER - 1217)) | (1 << (PlSqlParser.PFILE - 1217)) | (1 << (PlSqlParser.PHYSICAL - 1217)))) !== 0) || ((((_la - 1249)) & ~0x1f) == 0 && ((1 << (_la - 1249)) & ((1 << (PlSqlParser.PIKEY - 1249)) | (1 << (PlSqlParser.PIPELINED - 1249)) | (1 << (PlSqlParser.PIV_GB - 1249)) | (1 << (PlSqlParser.PIVOT - 1249)) | (1 << (PlSqlParser.PIV_SSF - 1249)) | (1 << (PlSqlParser.PLACE_DISTINCT - 1249)) | (1 << (PlSqlParser.PLACE_GROUP_BY - 1249)) | (1 << (PlSqlParser.PLAN - 1249)) | (1 << (PlSqlParser.PLSCOPE_SETTINGS - 1249)) | (1 << (PlSqlParser.PLS_INTEGER - 1249)) | (1 << (PlSqlParser.PLSQL_CCFLAGS - 1249)) | (1 << (PlSqlParser.PLSQL_CODE_TYPE - 1249)) | (1 << (PlSqlParser.PLSQL_DEBUG - 1249)) | (1 << (PlSqlParser.PLSQL_OPTIMIZE_LEVEL - 1249)) | (1 << (PlSqlParser.PLSQL_WARNINGS - 1249)) | (1 << (PlSqlParser.PLUGGABLE - 1249)) | (1 << (PlSqlParser.POINT - 1249)) | (1 << (PlSqlParser.POLICY - 1249)) | (1 << (PlSqlParser.POOL_16K - 1249)) | (1 << (PlSqlParser.POOL_2K - 1249)) | (1 << (PlSqlParser.POOL_32K - 1249)) | (1 << (PlSqlParser.POOL_4K - 1249)) | (1 << (PlSqlParser.POOL_8K - 1249)) | (1 << (PlSqlParser.POSITIVEN - 1249)) | (1 << (PlSqlParser.POSITIVE - 1249)) | (1 << (PlSqlParser.POST_TRANSACTION - 1249)) | (1 << (PlSqlParser.POWERMULTISET_BY_CARDINALITY - 1249)) | (1 << (PlSqlParser.POWERMULTISET - 1249)) | (1 << (PlSqlParser.POWER - 1249)) | (1 << (PlSqlParser.PQ_CONCURRENT_UNION - 1249)) | (1 << (PlSqlParser.PQ_DISTRIBUTE - 1249)))) !== 0) || ((((_la - 1281)) & ~0x1f) == 0 && ((1 << (_la - 1281)) & ((1 << (PlSqlParser.PQ_DISTRIBUTE_WINDOW - 1281)) | (1 << (PlSqlParser.PQ_FILTER - 1281)) | (1 << (PlSqlParser.PQ_MAP - 1281)) | (1 << (PlSqlParser.PQ_NOMAP - 1281)) | (1 << (PlSqlParser.PQ_REPLICATE - 1281)) | (1 << (PlSqlParser.PQ_SKEW - 1281)) | (1 << (PlSqlParser.PRAGMA - 1281)) | (1 << (PlSqlParser.PREBUILT - 1281)) | (1 << (PlSqlParser.PRECEDES - 1281)) | (1 << (PlSqlParser.PRECEDING - 1281)) | (1 << (PlSqlParser.PRECISION - 1281)) | (1 << (PlSqlParser.PRECOMPUTE_SUBQUERY - 1281)) | (1 << (PlSqlParser.PREDICATE_REORDERS - 1281)) | (1 << (PlSqlParser.PRELOAD - 1281)) | (1 << (PlSqlParser.PREPARE - 1281)) | (1 << (PlSqlParser.PRESENTNNV - 1281)) | (1 << (PlSqlParser.PRESENT - 1281)) | (1 << (PlSqlParser.PRESENTV - 1281)) | (1 << (PlSqlParser.PRESERVE_OID - 1281)) | (1 << (PlSqlParser.PRESERVE - 1281)) | (1 << (PlSqlParser.PRETTY - 1281)) | (1 << (PlSqlParser.PREVIOUS - 1281)) | (1 << (PlSqlParser.PREV - 1281)) | (1 << (PlSqlParser.PRIMARY - 1281)) | (1 << (PlSqlParser.PRINTBLOBTOCLOB - 1281)) | (1 << (PlSqlParser.PRIORITY - 1281)) | (1 << (PlSqlParser.PRIVATE - 1281)) | (1 << (PlSqlParser.PRIVATE_SGA - 1281)) | (1 << (PlSqlParser.PRIVILEGED - 1281)) | (1 << (PlSqlParser.PRIVILEGE - 1281)) | (1 << (PlSqlParser.PRIVILEGES - 1281)))) !== 0) || ((((_la - 1313)) & ~0x1f) == 0 && ((1 << (_la - 1313)) & ((1 << (PlSqlParser.PROCEDURAL - 1313)) | (1 << (PlSqlParser.PROCEDURE - 1313)) | (1 << (PlSqlParser.PROCESS - 1313)) | (1 << (PlSqlParser.PROFILE - 1313)) | (1 << (PlSqlParser.PROGRAM - 1313)) | (1 << (PlSqlParser.PROJECT - 1313)) | (1 << (PlSqlParser.PROPAGATE - 1313)) | (1 << (PlSqlParser.PROTECTED - 1313)) | (1 << (PlSqlParser.PROTECTION - 1313)) | (1 << (PlSqlParser.PROXY - 1313)) | (1 << (PlSqlParser.PRUNING - 1313)) | (1 << (PlSqlParser.PULL_PRED - 1313)) | (1 << (PlSqlParser.PURGE - 1313)) | (1 << (PlSqlParser.PUSH_PRED - 1313)) | (1 << (PlSqlParser.PUSH_SUBQ - 1313)) | (1 << (PlSqlParser.PX_FAULT_TOLERANCE - 1313)) | (1 << (PlSqlParser.PX_GRANULE - 1313)) | (1 << (PlSqlParser.PX_JOIN_FILTER - 1313)) | (1 << (PlSqlParser.QB_NAME - 1313)) | (1 << (PlSqlParser.QUERY_BLOCK - 1313)) | (1 << (PlSqlParser.QUERY - 1313)) | (1 << (PlSqlParser.QUEUE_CURR - 1313)) | (1 << (PlSqlParser.QUEUE - 1313)) | (1 << (PlSqlParser.QUEUE_ROWP - 1313)) | (1 << (PlSqlParser.QUIESCE - 1313)) | (1 << (PlSqlParser.QUORUM - 1313)) | (1 << (PlSqlParser.QUOTA - 1313)) | (1 << (PlSqlParser.RAISE - 1313)) | (1 << (PlSqlParser.RANDOM_LOCAL - 1313)) | (1 << (PlSqlParser.RANDOM - 1313)) | (1 << (PlSqlParser.RANGE - 1313)))) !== 0) || ((((_la - 1345)) & ~0x1f) == 0 && ((1 << (_la - 1345)) & ((1 << (PlSqlParser.RANKM - 1345)) | (1 << (PlSqlParser.RAPIDLY - 1345)) | (1 << (PlSqlParser.RAW - 1345)) | (1 << (PlSqlParser.RAWTOHEX - 1345)) | (1 << (PlSqlParser.RAWTONHEX - 1345)) | (1 << (PlSqlParser.RBA - 1345)) | (1 << (PlSqlParser.RBO_OUTLINE - 1345)) | (1 << (PlSqlParser.RDBA - 1345)) | (1 << (PlSqlParser.READ - 1345)) | (1 << (PlSqlParser.READS - 1345)) | (1 << (PlSqlParser.REALM - 1345)) | (1 << (PlSqlParser.REAL - 1345)) | (1 << (PlSqlParser.REBALANCE - 1345)) | (1 << (PlSqlParser.REBUILD - 1345)) | (1 << (PlSqlParser.RECORD - 1345)) | (1 << (PlSqlParser.RECORDS_PER_BLOCK - 1345)) | (1 << (PlSqlParser.RECOVERABLE - 1345)) | (1 << (PlSqlParser.RECOVER - 1345)) | (1 << (PlSqlParser.RECOVERY - 1345)) | (1 << (PlSqlParser.RECYCLEBIN - 1345)) | (1 << (PlSqlParser.RECYCLE - 1345)) | (1 << (PlSqlParser.REDACTION - 1345)) | (1 << (PlSqlParser.REDEFINE - 1345)) | (1 << (PlSqlParser.REDO - 1345)) | (1 << (PlSqlParser.REDUCED - 1345)) | (1 << (PlSqlParser.REDUNDANCY - 1345)) | (1 << (PlSqlParser.REF_CASCADE_CURSOR - 1345)) | (1 << (PlSqlParser.REFERENCED - 1345)) | (1 << (PlSqlParser.REFERENCE - 1345)) | (1 << (PlSqlParser.REFERENCES - 1345)) | (1 << (PlSqlParser.REFERENCING - 1345)) | (1 << (PlSqlParser.REF - 1345)))) !== 0) || ((((_la - 1377)) & ~0x1f) == 0 && ((1 << (_la - 1377)) & ((1 << (PlSqlParser.REFRESH - 1377)) | (1 << (PlSqlParser.REFTOHEX - 1377)) | (1 << (PlSqlParser.REGEXP_COUNT - 1377)) | (1 << (PlSqlParser.REGEXP_INSTR - 1377)) | (1 << (PlSqlParser.REGEXP_LIKE - 1377)) | (1 << (PlSqlParser.REGEXP_REPLACE - 1377)) | (1 << (PlSqlParser.REGEXP_SUBSTR - 1377)) | (1 << (PlSqlParser.REGISTER - 1377)) | (1 << (PlSqlParser.REGR_AVGX - 1377)) | (1 << (PlSqlParser.REGR_AVGY - 1377)) | (1 << (PlSqlParser.REGR_COUNT - 1377)) | (1 << (PlSqlParser.REGR_INTERCEPT - 1377)) | (1 << (PlSqlParser.REGR_R2 - 1377)) | (1 << (PlSqlParser.REGR_SLOPE - 1377)) | (1 << (PlSqlParser.REGR_SXX - 1377)) | (1 << (PlSqlParser.REGR_SXY - 1377)) | (1 << (PlSqlParser.REGR_SYY - 1377)) | (1 << (PlSqlParser.REGULAR - 1377)) | (1 << (PlSqlParser.REJECT - 1377)) | (1 << (PlSqlParser.REKEY - 1377)) | (1 << (PlSqlParser.RELATIONAL - 1377)) | (1 << (PlSqlParser.RELOCATE - 1377)) | (1 << (PlSqlParser.RELY - 1377)) | (1 << (PlSqlParser.REMAINDER - 1377)) | (1 << (PlSqlParser.REMOTE_MAPPED - 1377)) | (1 << (PlSqlParser.REMOVE - 1377)) | (1 << (PlSqlParser.RENAME - 1377)) | (1 << (PlSqlParser.REPAIR - 1377)) | (1 << (PlSqlParser.REPEAT - 1377)) | (1 << (PlSqlParser.REPLACE - 1377)) | (1 << (PlSqlParser.REPLICATION - 1377)))) !== 0) || ((((_la - 1409)) & ~0x1f) == 0 && ((1 << (_la - 1409)) & ((1 << (PlSqlParser.REQUIRED - 1409)) | (1 << (PlSqlParser.RESETLOGS - 1409)) | (1 << (PlSqlParser.RESET - 1409)) | (1 << (PlSqlParser.RESIZE - 1409)) | (1 << (PlSqlParser.RESOLVE - 1409)) | (1 << (PlSqlParser.RESOLVER - 1409)) | (1 << (PlSqlParser.RESPECT - 1409)) | (1 << (PlSqlParser.RESTART - 1409)) | (1 << (PlSqlParser.RESTORE_AS_INTERVALS - 1409)) | (1 << (PlSqlParser.RESTORE - 1409)) | (1 << (PlSqlParser.RESTRICT_ALL_REF_CONS - 1409)) | (1 << (PlSqlParser.RESTRICTED - 1409)) | (1 << (PlSqlParser.RESTRICT_REFERENCES - 1409)) | (1 << (PlSqlParser.RESTRICT - 1409)) | (1 << (PlSqlParser.RESULT_CACHE - 1409)) | (1 << (PlSqlParser.RESULT - 1409)) | (1 << (PlSqlParser.RESUMABLE - 1409)) | (1 << (PlSqlParser.RESUME - 1409)) | (1 << (PlSqlParser.RETENTION - 1409)) | (1 << (PlSqlParser.RETRY_ON_ROW_CHANGE - 1409)) | (1 << (PlSqlParser.RETURNING - 1409)) | (1 << (PlSqlParser.RETURN - 1409)) | (1 << (PlSqlParser.REUSE - 1409)) | (1 << (PlSqlParser.REVERSE - 1409)) | (1 << (PlSqlParser.REWRITE_OR_ERROR - 1409)) | (1 << (PlSqlParser.REWRITE - 1409)) | (1 << (PlSqlParser.RIGHT - 1409)) | (1 << (PlSqlParser.ROLE - 1409)) | (1 << (PlSqlParser.ROLESET - 1409)) | (1 << (PlSqlParser.ROLES - 1409)))) !== 0) || ((((_la - 1441)) & ~0x1f) == 0 && ((1 << (_la - 1441)) & ((1 << (PlSqlParser.ROLLBACK - 1441)) | (1 << (PlSqlParser.ROLLING - 1441)) | (1 << (PlSqlParser.ROLLUP - 1441)) | (1 << (PlSqlParser.ROWDEPENDENCIES - 1441)) | (1 << (PlSqlParser.ROWID_MAPPING_TABLE - 1441)) | (1 << (PlSqlParser.ROWID - 1441)) | (1 << (PlSqlParser.ROWIDTOCHAR - 1441)) | (1 << (PlSqlParser.ROWIDTONCHAR - 1441)) | (1 << (PlSqlParser.ROW_LENGTH - 1441)) | (1 << (PlSqlParser.ROWNUM - 1441)) | (1 << (PlSqlParser.ROW - 1441)) | (1 << (PlSqlParser.ROWS - 1441)) | (1 << (PlSqlParser.RPAD - 1441)) | (1 << (PlSqlParser.RTRIM - 1441)) | (1 << (PlSqlParser.RULE - 1441)) | (1 << (PlSqlParser.RULES - 1441)) | (1 << (PlSqlParser.RUNNING - 1441)) | (1 << (PlSqlParser.SALT - 1441)) | (1 << (PlSqlParser.SAMPLE - 1441)) | (1 << (PlSqlParser.SAVE_AS_INTERVALS - 1441)) | (1 << (PlSqlParser.SAVEPOINT - 1441)) | (1 << (PlSqlParser.SAVE - 1441)) | (1 << (PlSqlParser.SB4 - 1441)) | (1 << (PlSqlParser.SCALE_ROWS - 1441)) | (1 << (PlSqlParser.SCALE - 1441)) | (1 << (PlSqlParser.SCAN_INSTANCES - 1441)) | (1 << (PlSqlParser.SCAN - 1441)) | (1 << (PlSqlParser.SCHEDULER - 1441)) | (1 << (PlSqlParser.SCHEMACHECK - 1441)) | (1 << (PlSqlParser.SCHEMA - 1441)) | (1 << (PlSqlParser.SCN_ASCENDING - 1441)) | (1 << (PlSqlParser.SCN - 1441)))) !== 0) || ((((_la - 1473)) & ~0x1f) == 0 && ((1 << (_la - 1473)) & ((1 << (PlSqlParser.SCOPE - 1473)) | (1 << (PlSqlParser.SCRUB - 1473)) | (1 << (PlSqlParser.SD_ALL - 1473)) | (1 << (PlSqlParser.SD_INHIBIT - 1473)) | (1 << (PlSqlParser.SDO_GEOM_MBR - 1473)) | (1 << (PlSqlParser.SD_SHOW - 1473)) | (1 << (PlSqlParser.SEARCH - 1473)) | (1 << (PlSqlParser.SECOND - 1473)) | (1 << (PlSqlParser.SECRET - 1473)) | (1 << (PlSqlParser.SECUREFILE_DBA - 1473)) | (1 << (PlSqlParser.SECUREFILE - 1473)) | (1 << (PlSqlParser.SECURITY - 1473)) | (1 << (PlSqlParser.SEED - 1473)) | (1 << (PlSqlParser.SEG_BLOCK - 1473)) | (1 << (PlSqlParser.SEG_FILE - 1473)) | (1 << (PlSqlParser.SEGMENT - 1473)) | (1 << (PlSqlParser.SELECTIVITY - 1473)) | (1 << (PlSqlParser.SELF - 1473)) | (1 << (PlSqlParser.SEMIJOIN_DRIVER - 1473)) | (1 << (PlSqlParser.SEMIJOIN - 1473)) | (1 << (PlSqlParser.SEMI_TO_INNER - 1473)) | (1 << (PlSqlParser.SEQUENCED - 1473)) | (1 << (PlSqlParser.SEQUENCE - 1473)) | (1 << (PlSqlParser.SEQUENTIAL - 1473)) | (1 << (PlSqlParser.SERIALIZABLE - 1473)) | (1 << (PlSqlParser.SERIALLY_REUSABLE - 1473)) | (1 << (PlSqlParser.SERIAL - 1473)) | (1 << (PlSqlParser.SERVERERROR - 1473)) | (1 << (PlSqlParser.SERVICE_NAME_CONVERT - 1473)) | (1 << (PlSqlParser.SERVICES - 1473)))) !== 0) || ((((_la - 1505)) & ~0x1f) == 0 && ((1 << (_la - 1505)) & ((1 << (PlSqlParser.SESSION_CACHED_CURSORS - 1505)) | (1 << (PlSqlParser.SESSION - 1505)) | (1 << (PlSqlParser.SESSIONS_PER_USER - 1505)) | (1 << (PlSqlParser.SESSIONTIMEZONE - 1505)) | (1 << (PlSqlParser.SESSIONTZNAME - 1505)) | (1 << (PlSqlParser.SET - 1505)) | (1 << (PlSqlParser.SETS - 1505)) | (1 << (PlSqlParser.SETTINGS - 1505)) | (1 << (PlSqlParser.SET_TO_JOIN - 1505)) | (1 << (PlSqlParser.SEVERE - 1505)) | (1 << (PlSqlParser.SHARED_POOL - 1505)) | (1 << (PlSqlParser.SHARED - 1505)) | (1 << (PlSqlParser.SHARING - 1505)) | (1 << (PlSqlParser.SHELFLIFE - 1505)) | (1 << (PlSqlParser.SHOW - 1505)) | (1 << (PlSqlParser.SHRINK - 1505)) | (1 << (PlSqlParser.SHUTDOWN - 1505)) | (1 << (PlSqlParser.SIBLINGS - 1505)) | (1 << (PlSqlParser.SID - 1505)) | (1 << (PlSqlParser.SIGNAL_COMPONENT - 1505)) | (1 << (PlSqlParser.SIGNAL_FUNCTION - 1505)) | (1 << (PlSqlParser.SIGN - 1505)) | (1 << (PlSqlParser.SIGNTYPE - 1505)) | (1 << (PlSqlParser.SIMPLE_INTEGER - 1505)) | (1 << (PlSqlParser.SIMPLE - 1505)) | (1 << (PlSqlParser.SINGLE - 1505)) | (1 << (PlSqlParser.SINGLETASK - 1505)) | (1 << (PlSqlParser.SINH - 1505)) | (1 << (PlSqlParser.SIN - 1505)) | (1 << (PlSqlParser.SKIP_EXT_OPTIMIZER - 1505)))) !== 0) || ((((_la - 1537)) & ~0x1f) == 0 && ((1 << (_la - 1537)) & ((1 << (PlSqlParser.SKIP_ - 1537)) | (1 << (PlSqlParser.SKIP_UNQ_UNUSABLE_IDX - 1537)) | (1 << (PlSqlParser.SKIP_UNUSABLE_INDEXES - 1537)) | (1 << (PlSqlParser.SMALLFILE - 1537)) | (1 << (PlSqlParser.SMALLINT - 1537)) | (1 << (PlSqlParser.SNAPSHOT - 1537)) | (1 << (PlSqlParser.SOME - 1537)) | (1 << (PlSqlParser.SORT - 1537)) | (1 << (PlSqlParser.SOUNDEX - 1537)) | (1 << (PlSqlParser.SOURCE_FILE_DIRECTORY - 1537)) | (1 << (PlSqlParser.SOURCE_FILE_NAME_CONVERT - 1537)) | (1 << (PlSqlParser.SOURCE - 1537)) | (1 << (PlSqlParser.SPACE_KEYWORD - 1537)) | (1 << (PlSqlParser.SPECIFICATION - 1537)) | (1 << (PlSqlParser.SPFILE - 1537)) | (1 << (PlSqlParser.SPLIT - 1537)) | (1 << (PlSqlParser.SPREADSHEET - 1537)) | (1 << (PlSqlParser.SQLDATA - 1537)) | (1 << (PlSqlParser.SQLERROR - 1537)) | (1 << (PlSqlParser.SQLLDR - 1537)) | (1 << (PlSqlParser.SQL - 1537)) | (1 << (PlSqlParser.SQL_TRACE - 1537)) | (1 << (PlSqlParser.SQL_TRANSLATION_PROFILE - 1537)) | (1 << (PlSqlParser.SQRT - 1537)) | (1 << (PlSqlParser.STALE - 1537)) | (1 << (PlSqlParser.STANDALONE - 1537)) | (1 << (PlSqlParser.STANDARD_HASH - 1537)) | (1 << (PlSqlParser.STANDBY_MAX_DATA_DELAY - 1537)) | (1 << (PlSqlParser.STANDBYS - 1537)) | (1 << (PlSqlParser.STANDBY - 1537)) | (1 << (PlSqlParser.STAR - 1537)) | (1 << (PlSqlParser.STAR_TRANSFORMATION - 1537)))) !== 0) || ((((_la - 1570)) & ~0x1f) == 0 && ((1 << (_la - 1570)) & ((1 << (PlSqlParser.STARTUP - 1570)) | (1 << (PlSqlParser.STATEMENT_ID - 1570)) | (1 << (PlSqlParser.STATEMENT_QUEUING - 1570)) | (1 << (PlSqlParser.STATEMENTS - 1570)) | (1 << (PlSqlParser.STATEMENT - 1570)) | (1 << (PlSqlParser.STATE - 1570)) | (1 << (PlSqlParser.STATIC - 1570)) | (1 << (PlSqlParser.STATISTICS - 1570)) | (1 << (PlSqlParser.STATS_BINOMIAL_TEST - 1570)) | (1 << (PlSqlParser.STATS_CROSSTAB - 1570)) | (1 << (PlSqlParser.STATS_F_TEST - 1570)) | (1 << (PlSqlParser.STATS_KS_TEST - 1570)) | (1 << (PlSqlParser.STATS_MODE - 1570)) | (1 << (PlSqlParser.STATS_MW_TEST - 1570)) | (1 << (PlSqlParser.STATS_ONE_WAY_ANOVA - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_INDEP - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_INDEPU - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_ONE - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_PAIRED - 1570)) | (1 << (PlSqlParser.STATS_WSR_TEST - 1570)) | (1 << (PlSqlParser.STDDEV_POP - 1570)) | (1 << (PlSqlParser.STDDEV_SAMP - 1570)) | (1 << (PlSqlParser.STOP - 1570)) | (1 << (PlSqlParser.STORAGE - 1570)) | (1 << (PlSqlParser.STORE - 1570)) | (1 << (PlSqlParser.STREAMS - 1570)) | (1 << (PlSqlParser.STREAM - 1570)) | (1 << (PlSqlParser.STRICT - 1570)) | (1 << (PlSqlParser.STRING - 1570)) | (1 << (PlSqlParser.STRIPE_COLUMNS - 1570)) | (1 << (PlSqlParser.STRIPE_WIDTH - 1570)) | (1 << (PlSqlParser.STRIP - 1570)))) !== 0) || ((((_la - 1602)) & ~0x1f) == 0 && ((1 << (_la - 1602)) & ((1 << (PlSqlParser.STRUCTURE - 1602)) | (1 << (PlSqlParser.SUBMULTISET - 1602)) | (1 << (PlSqlParser.SUBPARTITION_REL - 1602)) | (1 << (PlSqlParser.SUBPARTITIONS - 1602)) | (1 << (PlSqlParser.SUBPARTITION - 1602)) | (1 << (PlSqlParser.SUBQUERIES - 1602)) | (1 << (PlSqlParser.SUBQUERY_PRUNING - 1602)) | (1 << (PlSqlParser.SUBSCRIBE - 1602)) | (1 << (PlSqlParser.SUBSET - 1602)) | (1 << (PlSqlParser.SUBSTITUTABLE - 1602)) | (1 << (PlSqlParser.SUBSTR2 - 1602)) | (1 << (PlSqlParser.SUBSTR4 - 1602)) | (1 << (PlSqlParser.SUBSTRB - 1602)) | (1 << (PlSqlParser.SUBSTRC - 1602)) | (1 << (PlSqlParser.SUBTYPE - 1602)) | (1 << (PlSqlParser.SUCCESSFUL - 1602)) | (1 << (PlSqlParser.SUCCESS - 1602)) | (1 << (PlSqlParser.SUMMARY - 1602)) | (1 << (PlSqlParser.SUPPLEMENTAL - 1602)) | (1 << (PlSqlParser.SUSPEND - 1602)) | (1 << (PlSqlParser.SWAP_JOIN_INPUTS - 1602)) | (1 << (PlSqlParser.SWITCHOVER - 1602)) | (1 << (PlSqlParser.SWITCH - 1602)) | (1 << (PlSqlParser.SYNCHRONOUS - 1602)) | (1 << (PlSqlParser.SYNC - 1602)) | (1 << (PlSqlParser.SYSASM - 1602)) | (1 << (PlSqlParser.SYS_AUDIT - 1602)) | (1 << (PlSqlParser.SYSAUX - 1602)) | (1 << (PlSqlParser.SYSBACKUP - 1602)) | (1 << (PlSqlParser.SYS_CHECKACL - 1602)) | (1 << (PlSqlParser.SYS_CHECK_PRIVILEGE - 1602)))) !== 0) || ((((_la - 1634)) & ~0x1f) == 0 && ((1 << (_la - 1634)) & ((1 << (PlSqlParser.SYS_CONNECT_BY_PATH - 1634)) | (1 << (PlSqlParser.SYS_CONTEXT - 1634)) | (1 << (PlSqlParser.SYSDATE - 1634)) | (1 << (PlSqlParser.SYSDBA - 1634)) | (1 << (PlSqlParser.SYS_DBURIGEN - 1634)) | (1 << (PlSqlParser.SYSDG - 1634)) | (1 << (PlSqlParser.SYS_DL_CURSOR - 1634)) | (1 << (PlSqlParser.SYS_DM_RXFORM_CHR - 1634)) | (1 << (PlSqlParser.SYS_DM_RXFORM_NUM - 1634)) | (1 << (PlSqlParser.SYS_DOM_COMPARE - 1634)) | (1 << (PlSqlParser.SYS_DST_PRIM2SEC - 1634)) | (1 << (PlSqlParser.SYS_DST_SEC2PRIM - 1634)) | (1 << (PlSqlParser.SYS_ET_BFILE_TO_RAW - 1634)) | (1 << (PlSqlParser.SYS_ET_BLOB_TO_IMAGE - 1634)) | (1 << (PlSqlParser.SYS_ET_IMAGE_TO_BLOB - 1634)) | (1 << (PlSqlParser.SYS_ET_RAW_TO_BFILE - 1634)) | (1 << (PlSqlParser.SYS_EXTPDTXT - 1634)) | (1 << (PlSqlParser.SYS_EXTRACT_UTC - 1634)) | (1 << (PlSqlParser.SYS_FBT_INSDEL - 1634)) | (1 << (PlSqlParser.SYS_FILTER_ACLS - 1634)) | (1 << (PlSqlParser.SYS_FNMATCHES - 1634)) | (1 << (PlSqlParser.SYS_FNREPLACE - 1634)) | (1 << (PlSqlParser.SYS_GET_ACLIDS - 1634)) | (1 << (PlSqlParser.SYS_GET_COL_ACLIDS - 1634)) | (1 << (PlSqlParser.SYS_GET_PRIVILEGES - 1634)) | (1 << (PlSqlParser.SYS_GETTOKENID - 1634)) | (1 << (PlSqlParser.SYS_GETXTIVAL - 1634)) | (1 << (PlSqlParser.SYS_GUID - 1634)) | (1 << (PlSqlParser.SYSGUID - 1634)) | (1 << (PlSqlParser.SYSKM - 1634)) | (1 << (PlSqlParser.SYS_MAKE_XMLNODEID - 1634)) | (1 << (PlSqlParser.SYS_MAKEXML - 1634)))) !== 0) || ((((_la - 1666)) & ~0x1f) == 0 && ((1 << (_la - 1666)) & ((1 << (PlSqlParser.SYS_MKXMLATTR - 1666)) | (1 << (PlSqlParser.SYS_MKXTI - 1666)) | (1 << (PlSqlParser.SYSOBJ - 1666)) | (1 << (PlSqlParser.SYS_OP_ADT2BIN - 1666)) | (1 << (PlSqlParser.SYS_OP_ADTCONS - 1666)) | (1 << (PlSqlParser.SYS_OP_ALSCRVAL - 1666)) | (1 << (PlSqlParser.SYS_OP_ATG - 1666)) | (1 << (PlSqlParser.SYS_OP_BIN2ADT - 1666)) | (1 << (PlSqlParser.SYS_OP_BITVEC - 1666)) | (1 << (PlSqlParser.SYS_OP_BL2R - 1666)) | (1 << (PlSqlParser.SYS_OP_BLOOM_FILTER_LIST - 1666)) | (1 << (PlSqlParser.SYS_OP_BLOOM_FILTER - 1666)) | (1 << (PlSqlParser.SYS_OP_C2C - 1666)) | (1 << (PlSqlParser.SYS_OP_CAST - 1666)) | (1 << (PlSqlParser.SYS_OP_CEG - 1666)) | (1 << (PlSqlParser.SYS_OP_CL2C - 1666)) | (1 << (PlSqlParser.SYS_OP_COMBINED_HASH - 1666)) | (1 << (PlSqlParser.SYS_OP_COMP - 1666)) | (1 << (PlSqlParser.SYS_OP_CONVERT - 1666)) | (1 << (PlSqlParser.SYS_OP_COUNTCHG - 1666)) | (1 << (PlSqlParser.SYS_OP_CSCONV - 1666)) | (1 << (PlSqlParser.SYS_OP_CSCONVTEST - 1666)) | (1 << (PlSqlParser.SYS_OP_CSR - 1666)) | (1 << (PlSqlParser.SYS_OP_CSX_PATCH - 1666)) | (1 << (PlSqlParser.SYS_OP_CYCLED_SEQ - 1666)) | (1 << (PlSqlParser.SYS_OP_DECOMP - 1666)) | (1 << (PlSqlParser.SYS_OP_DESCEND - 1666)) | (1 << (PlSqlParser.SYS_OP_DISTINCT - 1666)) | (1 << (PlSqlParser.SYS_OP_DRA - 1666)) | (1 << (PlSqlParser.SYS_OP_DUMP - 1666)) | (1 << (PlSqlParser.SYS_OP_DV_CHECK - 1666)) | (1 << (PlSqlParser.SYS_OP_ENFORCE_NOT_NULL - 1666)))) !== 0) || ((((_la - 1698)) & ~0x1f) == 0 && ((1 << (_la - 1698)) & ((1 << (PlSqlParser.SYSOPER - 1698)) | (1 << (PlSqlParser.SYS_OP_EXTRACT - 1698)) | (1 << (PlSqlParser.SYS_OP_GROUPING - 1698)) | (1 << (PlSqlParser.SYS_OP_GUID - 1698)) | (1 << (PlSqlParser.SYS_OP_HASH - 1698)) | (1 << (PlSqlParser.SYS_OP_IIX - 1698)) | (1 << (PlSqlParser.SYS_OP_ITR - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_CREATE - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_FILTER_LIST - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_FILTER - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_SUCCEEDED - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_USE - 1698)) | (1 << (PlSqlParser.SYS_OP_LBID - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2BLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2CLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2ID - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2NCLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2TYP - 1698)) | (1 << (PlSqlParser.SYS_OP_LSVI - 1698)) | (1 << (PlSqlParser.SYS_OP_LVL - 1698)) | (1 << (PlSqlParser.SYS_OP_MAKEOID - 1698)) | (1 << (PlSqlParser.SYS_OP_MAP_NONNULL - 1698)) | (1 << (PlSqlParser.SYS_OP_MSR - 1698)) | (1 << (PlSqlParser.SYS_OP_NICOMBINE - 1698)) | (1 << (PlSqlParser.SYS_OP_NIEXTRACT - 1698)) | (1 << (PlSqlParser.SYS_OP_NII - 1698)) | (1 << (PlSqlParser.SYS_OP_NIX - 1698)) | (1 << (PlSqlParser.SYS_OP_NOEXPAND - 1698)) | (1 << (PlSqlParser.SYS_OP_NTCIMG - 1698)) | (1 << (PlSqlParser.SYS_OP_NUMTORAW - 1698)) | (1 << (PlSqlParser.SYS_OP_OIDVALUE - 1698)) | (1 << (PlSqlParser.SYS_OP_OPNSIZE - 1698)))) !== 0) || ((((_la - 1730)) & ~0x1f) == 0 && ((1 << (_la - 1730)) & ((1 << (PlSqlParser.SYS_OP_PAR_1 - 1730)) | (1 << (PlSqlParser.SYS_OP_PARGID_1 - 1730)) | (1 << (PlSqlParser.SYS_OP_PARGID - 1730)) | (1 << (PlSqlParser.SYS_OP_PAR - 1730)) | (1 << (PlSqlParser.SYS_OP_PART_ID - 1730)) | (1 << (PlSqlParser.SYS_OP_PIVOT - 1730)) | (1 << (PlSqlParser.SYS_OP_R2O - 1730)) | (1 << (PlSqlParser.SYS_OP_RAWTONUM - 1730)) | (1 << (PlSqlParser.SYS_OP_RDTM - 1730)) | (1 << (PlSqlParser.SYS_OP_REF - 1730)) | (1 << (PlSqlParser.SYS_OP_RMTD - 1730)) | (1 << (PlSqlParser.SYS_OP_ROWIDTOOBJ - 1730)) | (1 << (PlSqlParser.SYS_OP_RPB - 1730)) | (1 << (PlSqlParser.SYS_OPTLOBPRBSC - 1730)) | (1 << (PlSqlParser.SYS_OP_TOSETID - 1730)) | (1 << (PlSqlParser.SYS_OP_TPR - 1730)) | (1 << (PlSqlParser.SYS_OP_TRTB - 1730)) | (1 << (PlSqlParser.SYS_OPTXICMP - 1730)) | (1 << (PlSqlParser.SYS_OPTXQCASTASNQ - 1730)) | (1 << (PlSqlParser.SYS_OP_UNDESCEND - 1730)) | (1 << (PlSqlParser.SYS_OP_VECAND - 1730)) | (1 << (PlSqlParser.SYS_OP_VECBIT - 1730)) | (1 << (PlSqlParser.SYS_OP_VECOR - 1730)) | (1 << (PlSqlParser.SYS_OP_VECXOR - 1730)) | (1 << (PlSqlParser.SYS_OP_VERSION - 1730)) | (1 << (PlSqlParser.SYS_OP_VREF - 1730)) | (1 << (PlSqlParser.SYS_OP_VVD - 1730)) | (1 << (PlSqlParser.SYS_OP_XMLCONS_FOR_CSX - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHATG - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHIDX - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHOP - 1730)) | (1 << (PlSqlParser.SYS_OP_XTXT2SQLT - 1730)))) !== 0) || ((((_la - 1762)) & ~0x1f) == 0 && ((1 << (_la - 1762)) & ((1 << (PlSqlParser.SYS_OP_ZONE_ID - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_DEPTH - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_MAXCHILD - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_PARENT - 1762)) | (1 << (PlSqlParser.SYS_PARALLEL_TXN - 1762)) | (1 << (PlSqlParser.SYS_PATHID_IS_ATTR - 1762)) | (1 << (PlSqlParser.SYS_PATHID_IS_NMSPC - 1762)) | (1 << (PlSqlParser.SYS_PATHID_LASTNAME - 1762)) | (1 << (PlSqlParser.SYS_PATHID_LASTNMSPC - 1762)) | (1 << (PlSqlParser.SYS_PATH_REVERSE - 1762)) | (1 << (PlSqlParser.SYS_PXQEXTRACT - 1762)) | (1 << (PlSqlParser.SYS_RAW_TO_XSID - 1762)) | (1 << (PlSqlParser.SYS_RID_ORDER - 1762)) | (1 << (PlSqlParser.SYS_ROW_DELTA - 1762)) | (1 << (PlSqlParser.SYS_SC_2_XMLT - 1762)) | (1 << (PlSqlParser.SYS_SYNRCIREDO - 1762)) | (1 << (PlSqlParser.SYSTEM_DEFINED - 1762)) | (1 << (PlSqlParser.SYSTEM - 1762)) | (1 << (PlSqlParser.SYSTIMESTAMP - 1762)) | (1 << (PlSqlParser.SYS_TYPEID - 1762)) | (1 << (PlSqlParser.SYS_UMAKEXML - 1762)) | (1 << (PlSqlParser.SYS_XMLANALYZE - 1762)) | (1 << (PlSqlParser.SYS_XMLCONTAINS - 1762)) | (1 << (PlSqlParser.SYS_XMLCONV - 1762)) | (1 << (PlSqlParser.SYS_XMLEXNSURI - 1762)) | (1 << (PlSqlParser.SYS_XMLGEN - 1762)) | (1 << (PlSqlParser.SYS_XMLI_LOC_ISNODE - 1762)) | (1 << (PlSqlParser.SYS_XMLI_LOC_ISTEXT - 1762)) | (1 << (PlSqlParser.SYS_XMLINSTR - 1762)) | (1 << (PlSqlParser.SYS_XMLLOCATOR_GETSVAL - 1762)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETCID - 1762)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETLOCATOR - 1762)))) !== 0) || ((((_la - 1794)) & ~0x1f) == 0 && ((1 << (_la - 1794)) & ((1 << (PlSqlParser.SYS_XMLNODEID_GETOKEY - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETPATHID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETPTRID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETRID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETSVAL - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETTID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID - 1794)) | (1 << (PlSqlParser.SYS_XMLT_2_SC - 1794)) | (1 << (PlSqlParser.SYS_XMLTRANSLATE - 1794)) | (1 << (PlSqlParser.SYS_XMLTYPE2SQL - 1794)) | (1 << (PlSqlParser.SYS_XQ_ASQLCNV - 1794)) | (1 << (PlSqlParser.SYS_XQ_ATOMCNVCHK - 1794)) | (1 << (PlSqlParser.SYS_XQBASEURI - 1794)) | (1 << (PlSqlParser.SYS_XQCASTABLEERRH - 1794)) | (1 << (PlSqlParser.SYS_XQCODEP2STR - 1794)) | (1 << (PlSqlParser.SYS_XQCODEPEQ - 1794)) | (1 << (PlSqlParser.SYS_XQCON2SEQ - 1794)) | (1 << (PlSqlParser.SYS_XQCONCAT - 1794)) | (1 << (PlSqlParser.SYS_XQDELETE - 1794)) | (1 << (PlSqlParser.SYS_XQDFLTCOLATION - 1794)) | (1 << (PlSqlParser.SYS_XQDOC - 1794)) | (1 << (PlSqlParser.SYS_XQDOCURI - 1794)) | (1 << (PlSqlParser.SYS_XQDURDIV - 1794)) | (1 << (PlSqlParser.SYS_XQED4URI - 1794)) | (1 << (PlSqlParser.SYS_XQENDSWITH - 1794)) | (1 << (PlSqlParser.SYS_XQERRH - 1794)) | (1 << (PlSqlParser.SYS_XQERR - 1794)) | (1 << (PlSqlParser.SYS_XQESHTMLURI - 1794)) | (1 << (PlSqlParser.SYS_XQEXLOBVAL - 1794)) | (1 << (PlSqlParser.SYS_XQEXSTWRP - 1794)) | (1 << (PlSqlParser.SYS_XQEXTRACT - 1794)) | (1 << (PlSqlParser.SYS_XQEXTRREF - 1794)))) !== 0) || ((((_la - 1826)) & ~0x1f) == 0 && ((1 << (_la - 1826)) & ((1 << (PlSqlParser.SYS_XQEXVAL - 1826)) | (1 << (PlSqlParser.SYS_XQFB2STR - 1826)) | (1 << (PlSqlParser.SYS_XQFNBOOL - 1826)) | (1 << (PlSqlParser.SYS_XQFNCMP - 1826)) | (1 << (PlSqlParser.SYS_XQFNDATIM - 1826)) | (1 << (PlSqlParser.SYS_XQFNLNAME - 1826)) | (1 << (PlSqlParser.SYS_XQFNNM - 1826)) | (1 << (PlSqlParser.SYS_XQFNNSURI - 1826)) | (1 << (PlSqlParser.SYS_XQFNPREDTRUTH - 1826)) | (1 << (PlSqlParser.SYS_XQFNQNM - 1826)) | (1 << (PlSqlParser.SYS_XQFNROOT - 1826)) | (1 << (PlSqlParser.SYS_XQFORMATNUM - 1826)) | (1 << (PlSqlParser.SYS_XQFTCONTAIN - 1826)) | (1 << (PlSqlParser.SYS_XQFUNCR - 1826)) | (1 << (PlSqlParser.SYS_XQGETCONTENT - 1826)) | (1 << (PlSqlParser.SYS_XQINDXOF - 1826)) | (1 << (PlSqlParser.SYS_XQINSERT - 1826)) | (1 << (PlSqlParser.SYS_XQINSPFX - 1826)) | (1 << (PlSqlParser.SYS_XQIRI2URI - 1826)) | (1 << (PlSqlParser.SYS_XQLANG - 1826)) | (1 << (PlSqlParser.SYS_XQLLNMFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQMKNODEREF - 1826)) | (1 << (PlSqlParser.SYS_XQNILLED - 1826)) | (1 << (PlSqlParser.SYS_XQNODENAME - 1826)) | (1 << (PlSqlParser.SYS_XQNORMSPACE - 1826)) | (1 << (PlSqlParser.SYS_XQNORMUCODE - 1826)) | (1 << (PlSqlParser.SYS_XQ_NRNG - 1826)) | (1 << (PlSqlParser.SYS_XQNSP4PFX - 1826)) | (1 << (PlSqlParser.SYS_XQNSPFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQPFXFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQ_PKSQL2XML - 1826)) | (1 << (PlSqlParser.SYS_XQPOLYABS - 1826)))) !== 0) || ((((_la - 1858)) & ~0x1f) == 0 && ((1 << (_la - 1858)) & ((1 << (PlSqlParser.SYS_XQPOLYADD - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCEL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCSTBL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCST - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYDIV - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYFLR - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYMOD - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYMUL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYRND - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYSQRT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYSUB - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYUMUS - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYUPLS - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVEQ - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVGE - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVGT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVLE - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVLT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVNE - 1858)) | (1 << (PlSqlParser.SYS_XQREF2VAL - 1858)) | (1 << (PlSqlParser.SYS_XQRENAME - 1858)) | (1 << (PlSqlParser.SYS_XQREPLACE - 1858)) | (1 << (PlSqlParser.SYS_XQRESVURI - 1858)) | (1 << (PlSqlParser.SYS_XQRNDHALF2EVN - 1858)) | (1 << (PlSqlParser.SYS_XQRSLVQNM - 1858)) | (1 << (PlSqlParser.SYS_XQRYENVPGET - 1858)) | (1 << (PlSqlParser.SYS_XQRYVARGET - 1858)) | (1 << (PlSqlParser.SYS_XQRYWRP - 1858)) | (1 << (PlSqlParser.SYS_XQSEQ2CON4XC - 1858)) | (1 << (PlSqlParser.SYS_XQSEQ2CON - 1858)) | (1 << (PlSqlParser.SYS_XQSEQDEEPEQ - 1858)) | (1 << (PlSqlParser.SYS_XQSEQINSB - 1858)))) !== 0) || ((((_la - 1890)) & ~0x1f) == 0 && ((1 << (_la - 1890)) & ((1 << (PlSqlParser.SYS_XQSEQRM - 1890)) | (1 << (PlSqlParser.SYS_XQSEQRVS - 1890)) | (1 << (PlSqlParser.SYS_XQSEQSUB - 1890)) | (1 << (PlSqlParser.SYS_XQSEQTYPMATCH - 1890)) | (1 << (PlSqlParser.SYS_XQSTARTSWITH - 1890)) | (1 << (PlSqlParser.SYS_XQSTATBURI - 1890)) | (1 << (PlSqlParser.SYS_XQSTR2CODEP - 1890)) | (1 << (PlSqlParser.SYS_XQSTRJOIN - 1890)) | (1 << (PlSqlParser.SYS_XQSUBSTRAFT - 1890)) | (1 << (PlSqlParser.SYS_XQSUBSTRBEF - 1890)) | (1 << (PlSqlParser.SYS_XQTOKENIZE - 1890)) | (1 << (PlSqlParser.SYS_XQTREATAS - 1890)) | (1 << (PlSqlParser.SYS_XQ_UPKXML2SQL - 1890)) | (1 << (PlSqlParser.SYS_XQXFORM - 1890)) | (1 << (PlSqlParser.SYS_XSID_TO_RAW - 1890)) | (1 << (PlSqlParser.SYS_ZMAP_FILTER - 1890)) | (1 << (PlSqlParser.SYS_ZMAP_REFRESH - 1890)) | (1 << (PlSqlParser.TABLE_LOOKUP_BY_NL - 1890)) | (1 << (PlSqlParser.TABLESPACE_NO - 1890)) | (1 << (PlSqlParser.TABLESPACE - 1890)) | (1 << (PlSqlParser.TABLES - 1890)) | (1 << (PlSqlParser.TABLE_STATS - 1890)) | (1 << (PlSqlParser.TABLE - 1890)) | (1 << (PlSqlParser.TABNO - 1890)) | (1 << (PlSqlParser.TAG - 1890)) | (1 << (PlSqlParser.TANH - 1890)) | (1 << (PlSqlParser.TAN - 1890)) | (1 << (PlSqlParser.TBLORIDXPARTNUM - 1890)) | (1 << (PlSqlParser.TEMPFILE - 1890)) | (1 << (PlSqlParser.TEMPLATE - 1890)) | (1 << (PlSqlParser.TEMPORARY - 1890)) | (1 << (PlSqlParser.TEMP_TABLE - 1890)))) !== 0) || ((((_la - 1922)) & ~0x1f) == 0 && ((1 << (_la - 1922)) & ((1 << (PlSqlParser.TEST - 1922)) | (1 << (PlSqlParser.TEXT - 1922)) | (1 << (PlSqlParser.THAN - 1922)) | (1 << (PlSqlParser.THEN - 1922)) | (1 << (PlSqlParser.THE - 1922)) | (1 << (PlSqlParser.THREAD - 1922)) | (1 << (PlSqlParser.THROUGH - 1922)) | (1 << (PlSqlParser.TIER - 1922)) | (1 << (PlSqlParser.TIES - 1922)) | (1 << (PlSqlParser.TIMEOUT - 1922)) | (1 << (PlSqlParser.TIMESTAMP_LTZ_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMESTAMP - 1922)) | (1 << (PlSqlParser.TIMESTAMP_TZ_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMESTAMP_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMES - 1922)) | (1 << (PlSqlParser.TIME - 1922)) | (1 << (PlSqlParser.TIMEZONE_ABBR - 1922)) | (1 << (PlSqlParser.TIMEZONE_HOUR - 1922)) | (1 << (PlSqlParser.TIMEZONE_MINUTE - 1922)) | (1 << (PlSqlParser.TIMEZONE_OFFSET - 1922)) | (1 << (PlSqlParser.TIMEZONE_REGION - 1922)) | (1 << (PlSqlParser.TIME_ZONE - 1922)) | (1 << (PlSqlParser.TIV_GB - 1922)) | (1 << (PlSqlParser.TIV_SSF - 1922)) | (1 << (PlSqlParser.TO_ACLID - 1922)) | (1 << (PlSqlParser.TO_BINARY_DOUBLE - 1922)) | (1 << (PlSqlParser.TO_BINARY_FLOAT - 1922)) | (1 << (PlSqlParser.TO_BLOB - 1922)) | (1 << (PlSqlParser.TO_CLOB - 1922)) | (1 << (PlSqlParser.TO_DSINTERVAL - 1922)) | (1 << (PlSqlParser.TO_LOB - 1922)))) !== 0) || ((((_la - 1954)) & ~0x1f) == 0 && ((1 << (_la - 1954)) & ((1 << (PlSqlParser.TO_MULTI_BYTE - 1954)) | (1 << (PlSqlParser.TO_NCHAR - 1954)) | (1 << (PlSqlParser.TO_NCLOB - 1954)) | (1 << (PlSqlParser.TO_NUMBER - 1954)) | (1 << (PlSqlParser.TOPLEVEL - 1954)) | (1 << (PlSqlParser.TO_SINGLE_BYTE - 1954)) | (1 << (PlSqlParser.TO_TIMESTAMP - 1954)) | (1 << (PlSqlParser.TO_TIMESTAMP_TZ - 1954)) | (1 << (PlSqlParser.TO_TIME - 1954)) | (1 << (PlSqlParser.TO_TIME_TZ - 1954)) | (1 << (PlSqlParser.TO_YMINTERVAL - 1954)) | (1 << (PlSqlParser.TRACE - 1954)) | (1 << (PlSqlParser.TRACING - 1954)) | (1 << (PlSqlParser.TRACKING - 1954)) | (1 << (PlSqlParser.TRAILING - 1954)) | (1 << (PlSqlParser.TRANSACTION - 1954)) | (1 << (PlSqlParser.TRANSFORM_DISTINCT_AGG - 1954)) | (1 << (PlSqlParser.TRANSITIONAL - 1954)) | (1 << (PlSqlParser.TRANSITION - 1954)) | (1 << (PlSqlParser.TRANSLATE - 1954)) | (1 << (PlSqlParser.TRANSLATION - 1954)) | (1 << (PlSqlParser.TREAT - 1954)) | (1 << (PlSqlParser.TRIGGERS - 1954)) | (1 << (PlSqlParser.TRIGGER - 1954)) | (1 << (PlSqlParser.TRUE - 1954)) | (1 << (PlSqlParser.TRUNCATE - 1954)) | (1 << (PlSqlParser.TRUNC - 1954)) | (1 << (PlSqlParser.TRUSTED - 1954)) | (1 << (PlSqlParser.TRUST - 1954)) | (1 << (PlSqlParser.TUNING - 1954)) | (1 << (PlSqlParser.TX - 1954)))) !== 0) || ((((_la - 1986)) & ~0x1f) == 0 && ((1 << (_la - 1986)) & ((1 << (PlSqlParser.TYPES - 1986)) | (1 << (PlSqlParser.TYPE - 1986)) | (1 << (PlSqlParser.TZ_OFFSET - 1986)) | (1 << (PlSqlParser.UB2 - 1986)) | (1 << (PlSqlParser.UBA - 1986)) | (1 << (PlSqlParser.UCS2 - 1986)) | (1 << (PlSqlParser.UID - 1986)) | (1 << (PlSqlParser.UNARCHIVED - 1986)) | (1 << (PlSqlParser.UNBOUNDED - 1986)) | (1 << (PlSqlParser.UNBOUND - 1986)) | (1 << (PlSqlParser.UNCONDITIONAL - 1986)) | (1 << (PlSqlParser.UNDER - 1986)) | (1 << (PlSqlParser.UNDO - 1986)) | (1 << (PlSqlParser.UNDROP - 1986)) | (1 << (PlSqlParser.UNIFORM - 1986)) | (1 << (PlSqlParser.UNISTR - 1986)) | (1 << (PlSqlParser.UNLIMITED - 1986)) | (1 << (PlSqlParser.UNLOAD - 1986)) | (1 << (PlSqlParser.UNLOCK - 1986)) | (1 << (PlSqlParser.UNMATCHED - 1986)) | (1 << (PlSqlParser.UNNEST_INNERJ_DISTINCT_VIEW - 1986)) | (1 << (PlSqlParser.UNNEST_NOSEMIJ_NODISTINCTVIEW - 1986)) | (1 << (PlSqlParser.UNNEST_SEMIJ_VIEW - 1986)) | (1 << (PlSqlParser.UNNEST - 1986)) | (1 << (PlSqlParser.UNPACKED - 1986)) | (1 << (PlSqlParser.UNPIVOT - 1986)) | (1 << (PlSqlParser.UNPLUG - 1986)) | (1 << (PlSqlParser.UNPROTECTED - 1986)) | (1 << (PlSqlParser.UNQUIESCE - 1986)) | (1 << (PlSqlParser.UNRECOVERABLE - 1986)))) !== 0) || ((((_la - 2018)) & ~0x1f) == 0 && ((1 << (_la - 2018)) & ((1 << (PlSqlParser.UNRESTRICTED - 2018)) | (1 << (PlSqlParser.UNSUBSCRIBE - 2018)) | (1 << (PlSqlParser.UNTIL - 2018)) | (1 << (PlSqlParser.UNUSABLE - 2018)) | (1 << (PlSqlParser.UNUSED - 2018)) | (1 << (PlSqlParser.UPDATABLE - 2018)) | (1 << (PlSqlParser.UPDATED - 2018)) | (1 << (PlSqlParser.UPDATEXML - 2018)) | (1 << (PlSqlParser.UPD_INDEXES - 2018)) | (1 << (PlSqlParser.UPD_JOININDEX - 2018)) | (1 << (PlSqlParser.UPGRADE - 2018)) | (1 << (PlSqlParser.UPPER - 2018)) | (1 << (PlSqlParser.UPSERT - 2018)) | (1 << (PlSqlParser.UROWID - 2018)) | (1 << (PlSqlParser.USABLE - 2018)) | (1 << (PlSqlParser.USAGE - 2018)) | (1 << (PlSqlParser.USE_ANTI - 2018)) | (1 << (PlSqlParser.USE_CONCAT - 2018)) | (1 << (PlSqlParser.USE_CUBE - 2018)) | (1 << (PlSqlParser.USE_HASH_AGGREGATION - 2018)) | (1 << (PlSqlParser.USE_HASH_GBY_FOR_PUSHDOWN - 2018)) | (1 << (PlSqlParser.USE_HASH - 2018)) | (1 << (PlSqlParser.USE_HIDDEN_PARTITIONS - 2018)) | (1 << (PlSqlParser.USE_INVISIBLE_INDEXES - 2018)) | (1 << (PlSqlParser.USE_MERGE_CARTESIAN - 2018)) | (1 << (PlSqlParser.USE_MERGE - 2018)) | (1 << (PlSqlParser.USE_NL - 2018)) | (1 << (PlSqlParser.USE_NL_WITH_INDEX - 2018)) | (1 << (PlSqlParser.USE_PRIVATE_OUTLINES - 2018)) | (1 << (PlSqlParser.USER_DATA - 2018)) | (1 << (PlSqlParser.USER_DEFINED - 2018)))) !== 0) || ((((_la - 2050)) & ~0x1f) == 0 && ((1 << (_la - 2050)) & ((1 << (PlSqlParser.USERENV - 2050)) | (1 << (PlSqlParser.USERGROUP - 2050)) | (1 << (PlSqlParser.USER_RECYCLEBIN - 2050)) | (1 << (PlSqlParser.USERS - 2050)) | (1 << (PlSqlParser.USER_TABLESPACES - 2050)) | (1 << (PlSqlParser.USER - 2050)) | (1 << (PlSqlParser.USE_SEMI - 2050)) | (1 << (PlSqlParser.USE_STORED_OUTLINES - 2050)) | (1 << (PlSqlParser.USE_TTT_FOR_GSETS - 2050)) | (1 << (PlSqlParser.USE - 2050)) | (1 << (PlSqlParser.USE_VECTOR_AGGREGATION - 2050)) | (1 << (PlSqlParser.USE_WEAK_NAME_RESL - 2050)) | (1 << (PlSqlParser.USING_NO_EXPAND - 2050)) | (1 << (PlSqlParser.USING - 2050)) | (1 << (PlSqlParser.UTF16BE - 2050)) | (1 << (PlSqlParser.UTF16LE - 2050)) | (1 << (PlSqlParser.UTF32 - 2050)) | (1 << (PlSqlParser.UTF8 - 2050)) | (1 << (PlSqlParser.V1 - 2050)) | (1 << (PlSqlParser.V2 - 2050)) | (1 << (PlSqlParser.VALIDATE - 2050)) | (1 << (PlSqlParser.VALIDATION - 2050)) | (1 << (PlSqlParser.VALID_TIME_END - 2050)) | (1 << (PlSqlParser.VALUE - 2050)) | (1 << (PlSqlParser.VARCHAR2 - 2050)) | (1 << (PlSqlParser.VARCHAR - 2050)) | (1 << (PlSqlParser.VARIABLE - 2050)) | (1 << (PlSqlParser.VAR_POP - 2050)) | (1 << (PlSqlParser.VARRAYS - 2050)) | (1 << (PlSqlParser.VARRAY - 2050)) | (1 << (PlSqlParser.VAR_SAMP - 2050)))) !== 0) || ((((_la - 2082)) & ~0x1f) == 0 && ((1 << (_la - 2082)) & ((1 << (PlSqlParser.VARYING - 2082)) | (1 << (PlSqlParser.VECTOR_READ_TRACE - 2082)) | (1 << (PlSqlParser.VECTOR_READ - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM_DIMS - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM_FACT - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM - 2082)) | (1 << (PlSqlParser.VERIFIER - 2082)) | (1 << (PlSqlParser.VERIFY - 2082)) | (1 << (PlSqlParser.VERSIONING - 2082)) | (1 << (PlSqlParser.VERSIONS_ENDSCN - 2082)) | (1 << (PlSqlParser.VERSIONS_ENDTIME - 2082)) | (1 << (PlSqlParser.VERSIONS_OPERATION - 2082)) | (1 << (PlSqlParser.VERSIONS_STARTSCN - 2082)) | (1 << (PlSqlParser.VERSIONS_STARTTIME - 2082)) | (1 << (PlSqlParser.VERSIONS - 2082)) | (1 << (PlSqlParser.VERSIONS_XID - 2082)) | (1 << (PlSqlParser.VERSION - 2082)) | (1 << (PlSqlParser.VIOLATION - 2082)) | (1 << (PlSqlParser.VIRTUAL - 2082)) | (1 << (PlSqlParser.VISIBILITY - 2082)) | (1 << (PlSqlParser.VISIBLE - 2082)) | (1 << (PlSqlParser.VOLUME - 2082)) | (1 << (PlSqlParser.VSIZE - 2082)) | (1 << (PlSqlParser.WAIT - 2082)) | (1 << (PlSqlParser.WALLET - 2082)) | (1 << (PlSqlParser.WARNING - 2082)) | (1 << (PlSqlParser.WEEKS - 2082)) | (1 << (PlSqlParser.WEEK - 2082)) | (1 << (PlSqlParser.WELLFORMED - 2082)) | (1 << (PlSqlParser.WHENEVER - 2082)) | (1 << (PlSqlParser.WHEN - 2082)))) !== 0) || ((((_la - 2115)) & ~0x1f) == 0 && ((1 << (_la - 2115)) & ((1 << (PlSqlParser.WHILE - 2115)) | (1 << (PlSqlParser.WHITESPACE - 2115)) | (1 << (PlSqlParser.WIDTH_BUCKET - 2115)) | (1 << (PlSqlParser.WITHIN - 2115)) | (1 << (PlSqlParser.WITHOUT - 2115)) | (1 << (PlSqlParser.WITH_PLSQL - 2115)) | (1 << (PlSqlParser.WORK - 2115)) | (1 << (PlSqlParser.WRAPPED - 2115)) | (1 << (PlSqlParser.WRAPPER - 2115)) | (1 << (PlSqlParser.WRITE - 2115)) | (1 << (PlSqlParser.XDB_FASTPATH_INSERT - 2115)) | (1 << (PlSqlParser.X_DYN_PRUNE - 2115)) | (1 << (PlSqlParser.XID - 2115)) | (1 << (PlSqlParser.XML2OBJECT - 2115)) | (1 << (PlSqlParser.XMLAGG - 2115)) | (1 << (PlSqlParser.XMLATTRIBUTES - 2115)) | (1 << (PlSqlParser.XMLCAST - 2115)) | (1 << (PlSqlParser.XMLCDATA - 2115)) | (1 << (PlSqlParser.XMLCOLATTVAL - 2115)) | (1 << (PlSqlParser.XMLCOMMENT - 2115)) | (1 << (PlSqlParser.XMLCONCAT - 2115)) | (1 << (PlSqlParser.XMLDIFF - 2115)) | (1 << (PlSqlParser.XML_DML_RWT_STMT - 2115)) | (1 << (PlSqlParser.XMLELEMENT - 2115)) | (1 << (PlSqlParser.XMLEXISTS2 - 2115)) | (1 << (PlSqlParser.XMLEXISTS - 2115)) | (1 << (PlSqlParser.XMLFOREST - 2115)) | (1 << (PlSqlParser.XMLINDEX_REWRITE_IN_SELECT - 2115)) | (1 << (PlSqlParser.XMLINDEX_REWRITE - 2115)))) !== 0) || ((((_la - 2147)) & ~0x1f) == 0 && ((1 << (_la - 2147)) & ((1 << (PlSqlParser.XMLINDEX_SEL_IDX_TBL - 2147)) | (1 << (PlSqlParser.XMLISNODE - 2147)) | (1 << (PlSqlParser.XMLISVALID - 2147)) | (1 << (PlSqlParser.XMLNAMESPACES - 2147)) | (1 << (PlSqlParser.XMLPARSE - 2147)) | (1 << (PlSqlParser.XMLPATCH - 2147)) | (1 << (PlSqlParser.XMLPI - 2147)) | (1 << (PlSqlParser.XMLQUERYVAL - 2147)) | (1 << (PlSqlParser.XMLQUERY - 2147)) | (1 << (PlSqlParser.XMLROOT - 2147)) | (1 << (PlSqlParser.XMLSCHEMA - 2147)) | (1 << (PlSqlParser.XMLSERIALIZE - 2147)) | (1 << (PlSqlParser.XMLTABLE - 2147)) | (1 << (PlSqlParser.XMLTRANSFORMBLOB - 2147)) | (1 << (PlSqlParser.XMLTRANSFORM - 2147)) | (1 << (PlSqlParser.XMLTYPE - 2147)) | (1 << (PlSqlParser.XML - 2147)) | (1 << (PlSqlParser.XPATHTABLE - 2147)) | (1 << (PlSqlParser.XS_SYS_CONTEXT - 2147)) | (1 << (PlSqlParser.XS - 2147)) | (1 << (PlSqlParser.YEARS - 2147)) | (1 << (PlSqlParser.YEAR - 2147)) | (1 << (PlSqlParser.YES - 2147)) | (1 << (PlSqlParser.YMINTERVAL_UNCONSTRAINED - 2147)) | (1 << (PlSqlParser.ZONEMAP - 2147)) | (1 << (PlSqlParser.ZONE - 2147)) | (1 << (PlSqlParser.PREDICTION - 2147)) | (1 << (PlSqlParser.PREDICTION_BOUNDS - 2147)) | (1 << (PlSqlParser.PREDICTION_COST - 2147)) | (1 << (PlSqlParser.PREDICTION_DETAILS - 2147)) | (1 << (PlSqlParser.PREDICTION_PROBABILITY - 2147)))) !== 0) || ((((_la - 2179)) & ~0x1f) == 0 && ((1 << (_la - 2179)) & ((1 << (PlSqlParser.PREDICTION_SET - 2179)) | (1 << (PlSqlParser.CUME_DIST - 2179)) | (1 << (PlSqlParser.DENSE_RANK - 2179)) | (1 << (PlSqlParser.LISTAGG - 2179)) | (1 << (PlSqlParser.PERCENT_RANK - 2179)) | (1 << (PlSqlParser.PERCENTILE_CONT - 2179)) | (1 << (PlSqlParser.PERCENTILE_DISC - 2179)) | (1 << (PlSqlParser.RANK - 2179)) | (1 << (PlSqlParser.AVG - 2179)) | (1 << (PlSqlParser.CORR - 2179)) | (1 << (PlSqlParser.COVAR_ - 2179)) | (1 << (PlSqlParser.LAG - 2179)) | (1 << (PlSqlParser.LEAD - 2179)) | (1 << (PlSqlParser.MAX - 2179)) | (1 << (PlSqlParser.MEDIAN - 2179)) | (1 << (PlSqlParser.MIN - 2179)) | (1 << (PlSqlParser.NTILE - 2179)) | (1 << (PlSqlParser.NVL - 2179)) | (1 << (PlSqlParser.RATIO_TO_REPORT - 2179)) | (1 << (PlSqlParser.REGR_ - 2179)) | (1 << (PlSqlParser.ROUND - 2179)) | (1 << (PlSqlParser.ROW_NUMBER - 2179)) | (1 << (PlSqlParser.SUBSTR - 2179)) | (1 << (PlSqlParser.TO_CHAR - 2179)) | (1 << (PlSqlParser.TRIM - 2179)) | (1 << (PlSqlParser.SUM - 2179)) | (1 << (PlSqlParser.STDDEV - 2179)) | (1 << (PlSqlParser.VAR_ - 2179)) | (1 << (PlSqlParser.VARIANCE - 2179)) | (1 << (PlSqlParser.LEAST - 2179)) | (1 << (PlSqlParser.GREATEST - 2179)))) !== 0) || ((((_la - 2211)) & ~0x1f) == 0 && ((1 << (_la - 2211)) & ((1 << (PlSqlParser.TO_DATE - 2211)) | (1 << (PlSqlParser.PERIOD - 2211)) | (1 << (PlSqlParser.DELIMITED_ID - 2211)))) !== 0) || _la===PlSqlParser.INTRODUCER || _la===PlSqlParser.REGULAR_ID) {
+ this.state = 1743;
+ this.package_obj_spec();
+ this.state = 1748;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 1749;
+ this.match(PlSqlParser.END);
+ this.state = 1751;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if((((_la) & ~0x1f) == 0 && ((1 << _la) & ((1 << PlSqlParser.ABORT) | (1 << PlSqlParser.ABS) | (1 << PlSqlParser.ACCESS) | (1 << PlSqlParser.ACCESSED) | (1 << PlSqlParser.ACCOUNT) | (1 << PlSqlParser.ACL) | (1 << PlSqlParser.ACOS) | (1 << PlSqlParser.ACTION) | (1 << PlSqlParser.ACTIONS) | (1 << PlSqlParser.ACTIVATE) | (1 << PlSqlParser.ACTIVE) | (1 << PlSqlParser.ACTIVE_COMPONENT) | (1 << PlSqlParser.ACTIVE_DATA) | (1 << PlSqlParser.ACTIVE_FUNCTION) | (1 << PlSqlParser.ACTIVE_TAG) | (1 << PlSqlParser.ACTIVITY) | (1 << PlSqlParser.ADAPTIVE_PLAN) | (1 << PlSqlParser.ADD) | (1 << PlSqlParser.ADD_COLUMN) | (1 << PlSqlParser.ADD_GROUP) | (1 << PlSqlParser.ADD_MONTHS) | (1 << PlSqlParser.ADJ_DATE) | (1 << PlSqlParser.ADMIN) | (1 << PlSqlParser.ADMINISTER) | (1 << PlSqlParser.ADMINISTRATOR) | (1 << PlSqlParser.ADVANCED) | (1 << PlSqlParser.ADVISE) | (1 << PlSqlParser.ADVISOR) | (1 << PlSqlParser.AFD_DISKSTRING) | (1 << PlSqlParser.AFTER) | (1 << PlSqlParser.AGENT))) !== 0) || ((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (PlSqlParser.AGGREGATE - 32)) | (1 << (PlSqlParser.A_LETTER - 32)) | (1 << (PlSqlParser.ALIAS - 32)) | (1 << (PlSqlParser.ALLOCATE - 32)) | (1 << (PlSqlParser.ALLOW - 32)) | (1 << (PlSqlParser.ALL_ROWS - 32)) | (1 << (PlSqlParser.ALWAYS - 32)) | (1 << (PlSqlParser.ANALYZE - 32)) | (1 << (PlSqlParser.ANCILLARY - 32)) | (1 << (PlSqlParser.AND_EQUAL - 32)) | (1 << (PlSqlParser.ANOMALY - 32)) | (1 << (PlSqlParser.ANSI_REARCH - 32)) | (1 << (PlSqlParser.ANTIJOIN - 32)) | (1 << (PlSqlParser.ANYSCHEMA - 32)) | (1 << (PlSqlParser.APPEND - 32)) | (1 << (PlSqlParser.APPENDCHILDXML - 32)) | (1 << (PlSqlParser.APPEND_VALUES - 32)) | (1 << (PlSqlParser.APPLICATION - 32)) | (1 << (PlSqlParser.APPLY - 32)) | (1 << (PlSqlParser.APPROX_COUNT_DISTINCT - 32)) | (1 << (PlSqlParser.ARCHIVAL - 32)) | (1 << (PlSqlParser.ARCHIVE - 32)) | (1 << (PlSqlParser.ARCHIVED - 32)) | (1 << (PlSqlParser.ARCHIVELOG - 32)) | (1 << (PlSqlParser.ARRAY - 32)) | (1 << (PlSqlParser.ASCII - 32)))) !== 0) || ((((_la - 64)) & ~0x1f) == 0 && ((1 << (_la - 64)) & ((1 << (PlSqlParser.ASCIISTR - 64)) | (1 << (PlSqlParser.ASIN - 64)) | (1 << (PlSqlParser.ASIS - 64)) | (1 << (PlSqlParser.ASSEMBLY - 64)) | (1 << (PlSqlParser.ASSIGN - 64)) | (1 << (PlSqlParser.ASSOCIATE - 64)) | (1 << (PlSqlParser.ASYNC - 64)) | (1 << (PlSqlParser.ASYNCHRONOUS - 64)) | (1 << (PlSqlParser.ATAN2 - 64)) | (1 << (PlSqlParser.ATAN - 64)) | (1 << (PlSqlParser.AT - 64)) | (1 << (PlSqlParser.ATTRIBUTE - 64)) | (1 << (PlSqlParser.ATTRIBUTES - 64)) | (1 << (PlSqlParser.AUTHENTICATED - 64)) | (1 << (PlSqlParser.AUTHENTICATION - 64)) | (1 << (PlSqlParser.AUTHID - 64)) | (1 << (PlSqlParser.AUTHORIZATION - 64)) | (1 << (PlSqlParser.AUTOALLOCATE - 64)) | (1 << (PlSqlParser.AUTO - 64)) | (1 << (PlSqlParser.AUTOEXTEND - 64)) | (1 << (PlSqlParser.AUTO_LOGIN - 64)) | (1 << (PlSqlParser.AUTOMATIC - 64)) | (1 << (PlSqlParser.AUTONOMOUS_TRANSACTION - 64)) | (1 << (PlSqlParser.AUTO_REOPTIMIZE - 64)) | (1 << (PlSqlParser.AVAILABILITY - 64)) | (1 << (PlSqlParser.AVRO - 64)) | (1 << (PlSqlParser.BACKGROUND - 64)) | (1 << (PlSqlParser.BACKUP - 64)) | (1 << (PlSqlParser.BASIC - 64)))) !== 0) || ((((_la - 96)) & ~0x1f) == 0 && ((1 << (_la - 96)) & ((1 << (PlSqlParser.BASICFILE - 96)) | (1 << (PlSqlParser.BATCH - 96)) | (1 << (PlSqlParser.BATCHSIZE - 96)) | (1 << (PlSqlParser.BATCH_TABLE_ACCESS_BY_ROWID - 96)) | (1 << (PlSqlParser.BECOME - 96)) | (1 << (PlSqlParser.BEFORE - 96)) | (1 << (PlSqlParser.BEGIN - 96)) | (1 << (PlSqlParser.BEGINNING - 96)) | (1 << (PlSqlParser.BEGIN_OUTLINE_DATA - 96)) | (1 << (PlSqlParser.BEHALF - 96)) | (1 << (PlSqlParser.BEQUEATH - 96)) | (1 << (PlSqlParser.BFILE - 96)) | (1 << (PlSqlParser.BFILENAME - 96)) | (1 << (PlSqlParser.BIGFILE - 96)) | (1 << (PlSqlParser.BINARY - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE_INFINITY - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE_NAN - 96)) | (1 << (PlSqlParser.BINARY_FLOAT - 96)) | (1 << (PlSqlParser.BINARY_FLOAT_INFINITY - 96)) | (1 << (PlSqlParser.BINARY_FLOAT_NAN - 96)) | (1 << (PlSqlParser.BINARY_INTEGER - 96)) | (1 << (PlSqlParser.BIND_AWARE - 96)) | (1 << (PlSqlParser.BINDING - 96)) | (1 << (PlSqlParser.BIN_TO_NUM - 96)) | (1 << (PlSqlParser.BITAND - 96)) | (1 << (PlSqlParser.BITMAP_AND - 96)) | (1 << (PlSqlParser.BITMAP - 96)) | (1 << (PlSqlParser.BITMAPS - 96)) | (1 << (PlSqlParser.BITMAP_TREE - 96)) | (1 << (PlSqlParser.BITS - 96)))) !== 0) || ((((_la - 128)) & ~0x1f) == 0 && ((1 << (_la - 128)) & ((1 << (PlSqlParser.BLOB - 128)) | (1 << (PlSqlParser.BLOCK - 128)) | (1 << (PlSqlParser.BLOCK_RANGE - 128)) | (1 << (PlSqlParser.BLOCKS - 128)) | (1 << (PlSqlParser.BLOCKSIZE - 128)) | (1 << (PlSqlParser.BODY - 128)) | (1 << (PlSqlParser.BOOLEAN - 128)) | (1 << (PlSqlParser.BOTH - 128)) | (1 << (PlSqlParser.BOUND - 128)) | (1 << (PlSqlParser.BRANCH - 128)) | (1 << (PlSqlParser.BREADTH - 128)) | (1 << (PlSqlParser.BROADCAST - 128)) | (1 << (PlSqlParser.BSON - 128)) | (1 << (PlSqlParser.BUFFER - 128)) | (1 << (PlSqlParser.BUFFER_CACHE - 128)) | (1 << (PlSqlParser.BUFFER_POOL - 128)) | (1 << (PlSqlParser.BUILD - 128)) | (1 << (PlSqlParser.BULK - 128)) | (1 << (PlSqlParser.BYPASS_RECURSIVE_CHECK - 128)) | (1 << (PlSqlParser.BYPASS_UJVC - 128)) | (1 << (PlSqlParser.BYTE - 128)) | (1 << (PlSqlParser.CACHE - 128)) | (1 << (PlSqlParser.CACHE_CB - 128)) | (1 << (PlSqlParser.CACHE_INSTANCES - 128)) | (1 << (PlSqlParser.CACHE_TEMP_TABLE - 128)) | (1 << (PlSqlParser.CACHING - 128)) | (1 << (PlSqlParser.CALCULATED - 128)) | (1 << (PlSqlParser.CALLBACK - 128)) | (1 << (PlSqlParser.CALL - 128)) | (1 << (PlSqlParser.CANCEL - 128)))) !== 0) || ((((_la - 160)) & ~0x1f) == 0 && ((1 << (_la - 160)) & ((1 << (PlSqlParser.CAPACITY - 160)) | (1 << (PlSqlParser.CARDINALITY - 160)) | (1 << (PlSqlParser.CASCADE - 160)) | (1 << (PlSqlParser.CASE - 160)) | (1 << (PlSqlParser.CAST - 160)) | (1 << (PlSqlParser.CATEGORY - 160)) | (1 << (PlSqlParser.CDBDEFAULT - 160)) | (1 << (PlSqlParser.CEIL - 160)) | (1 << (PlSqlParser.CELL_FLASH_CACHE - 160)) | (1 << (PlSqlParser.CERTIFICATE - 160)) | (1 << (PlSqlParser.CFILE - 160)) | (1 << (PlSqlParser.CHAINED - 160)) | (1 << (PlSqlParser.CHANGE - 160)) | (1 << (PlSqlParser.CHANGE_DUPKEY_ERROR_INDEX - 160)) | (1 << (PlSqlParser.CHARACTER - 160)) | (1 << (PlSqlParser.CHAR - 160)) | (1 << (PlSqlParser.CHAR_CS - 160)) | (1 << (PlSqlParser.CHARTOROWID - 160)) | (1 << (PlSqlParser.CHECK_ACL_REWRITE - 160)) | (1 << (PlSqlParser.CHECKPOINT - 160)) | (1 << (PlSqlParser.CHILD - 160)) | (1 << (PlSqlParser.CHOOSE - 160)) | (1 << (PlSqlParser.CHR - 160)) | (1 << (PlSqlParser.CHUNK - 160)) | (1 << (PlSqlParser.CLASS - 160)) | (1 << (PlSqlParser.CLASSIFIER - 160)) | (1 << (PlSqlParser.CLEANUP - 160)) | (1 << (PlSqlParser.CLEAR - 160)) | (1 << (PlSqlParser.C_LETTER - 160)) | (1 << (PlSqlParser.CLIENT - 160)))) !== 0) || ((((_la - 192)) & ~0x1f) == 0 && ((1 << (_la - 192)) & ((1 << (PlSqlParser.CLOB - 192)) | (1 << (PlSqlParser.CLONE - 192)) | (1 << (PlSqlParser.CLOSE_CACHED_OPEN_CURSORS - 192)) | (1 << (PlSqlParser.CLOSE - 192)) | (1 << (PlSqlParser.CLUSTER_BY_ROWID - 192)) | (1 << (PlSqlParser.CLUSTER - 192)) | (1 << (PlSqlParser.CLUSTER_DETAILS - 192)) | (1 << (PlSqlParser.CLUSTER_DISTANCE - 192)) | (1 << (PlSqlParser.CLUSTER_ID - 192)) | (1 << (PlSqlParser.CLUSTERING - 192)) | (1 << (PlSqlParser.CLUSTERING_FACTOR - 192)) | (1 << (PlSqlParser.CLUSTER_PROBABILITY - 192)) | (1 << (PlSqlParser.CLUSTER_SET - 192)) | (1 << (PlSqlParser.COALESCE - 192)) | (1 << (PlSqlParser.COALESCE_SQ - 192)) | (1 << (PlSqlParser.COARSE - 192)) | (1 << (PlSqlParser.CO_AUTH_IND - 192)) | (1 << (PlSqlParser.COLD - 192)) | (1 << (PlSqlParser.COLLECT - 192)) | (1 << (PlSqlParser.COLUMNAR - 192)) | (1 << (PlSqlParser.COLUMN_AUTH_INDICATOR - 192)) | (1 << (PlSqlParser.COLUMN - 192)) | (1 << (PlSqlParser.COLUMNS - 192)) | (1 << (PlSqlParser.COLUMN_STATS - 192)) | (1 << (PlSqlParser.COLUMN_VALUE - 192)) | (1 << (PlSqlParser.COMMENT - 192)) | (1 << (PlSqlParser.COMMIT - 192)) | (1 << (PlSqlParser.COMMITTED - 192)) | (1 << (PlSqlParser.COMMON_DATA - 192)) | (1 << (PlSqlParser.COMPACT - 192)) | (1 << (PlSqlParser.COMPATIBILITY - 192)) | (1 << (PlSqlParser.COMPILE - 192)))) !== 0) || ((((_la - 224)) & ~0x1f) == 0 && ((1 << (_la - 224)) & ((1 << (PlSqlParser.COMPLETE - 224)) | (1 << (PlSqlParser.COMPLIANCE - 224)) | (1 << (PlSqlParser.COMPONENT - 224)) | (1 << (PlSqlParser.COMPONENTS - 224)) | (1 << (PlSqlParser.COMPOSE - 224)) | (1 << (PlSqlParser.COMPOSITE - 224)) | (1 << (PlSqlParser.COMPOSITE_LIMIT - 224)) | (1 << (PlSqlParser.COMPOUND - 224)) | (1 << (PlSqlParser.COMPUTE - 224)) | (1 << (PlSqlParser.CONCAT - 224)) | (1 << (PlSqlParser.CON_DBID_TO_ID - 224)) | (1 << (PlSqlParser.CONDITIONAL - 224)) | (1 << (PlSqlParser.CONDITION - 224)) | (1 << (PlSqlParser.CONFIRM - 224)) | (1 << (PlSqlParser.CONFORMING - 224)) | (1 << (PlSqlParser.CON_GUID_TO_ID - 224)) | (1 << (PlSqlParser.CON_ID - 224)) | (1 << (PlSqlParser.CON_NAME_TO_ID - 224)) | (1 << (PlSqlParser.CONNECT_BY_CB_WHR_ONLY - 224)) | (1 << (PlSqlParser.CONNECT_BY_COMBINE_SW - 224)) | (1 << (PlSqlParser.CONNECT_BY_COST_BASED - 224)) | (1 << (PlSqlParser.CONNECT_BY_ELIM_DUPS - 224)) | (1 << (PlSqlParser.CONNECT_BY_FILTERING - 224)) | (1 << (PlSqlParser.CONNECT_BY_ISCYCLE - 224)) | (1 << (PlSqlParser.CONNECT_BY_ISLEAF - 224)) | (1 << (PlSqlParser.CONNECT_BY_ROOT - 224)) | (1 << (PlSqlParser.CONNECT_TIME - 224)) | (1 << (PlSqlParser.CONSIDER - 224)) | (1 << (PlSqlParser.CONSISTENT - 224)) | (1 << (PlSqlParser.CONSTANT - 224)))) !== 0) || ((((_la - 256)) & ~0x1f) == 0 && ((1 << (_la - 256)) & ((1 << (PlSqlParser.CONST - 256)) | (1 << (PlSqlParser.CONSTRAINT - 256)) | (1 << (PlSqlParser.CONSTRAINTS - 256)) | (1 << (PlSqlParser.CONSTRUCTOR - 256)) | (1 << (PlSqlParser.CONTAINER - 256)) | (1 << (PlSqlParser.CONTAINER_DATA - 256)) | (1 << (PlSqlParser.CONTAINERS - 256)) | (1 << (PlSqlParser.CONTENT - 256)) | (1 << (PlSqlParser.CONTENTS - 256)) | (1 << (PlSqlParser.CONTEXT - 256)) | (1 << (PlSqlParser.CONTINUE - 256)) | (1 << (PlSqlParser.CONTROLFILE - 256)) | (1 << (PlSqlParser.CON_UID_TO_ID - 256)) | (1 << (PlSqlParser.CONVERT - 256)) | (1 << (PlSqlParser.COOKIE - 256)) | (1 << (PlSqlParser.COPY - 256)) | (1 << (PlSqlParser.CORR_K - 256)) | (1 << (PlSqlParser.CORR_S - 256)) | (1 << (PlSqlParser.CORRUPTION - 256)) | (1 << (PlSqlParser.CORRUPT_XID_ALL - 256)) | (1 << (PlSqlParser.CORRUPT_XID - 256)) | (1 << (PlSqlParser.COS - 256)) | (1 << (PlSqlParser.COSH - 256)) | (1 << (PlSqlParser.COST - 256)) | (1 << (PlSqlParser.COST_XML_QUERY_REWRITE - 256)) | (1 << (PlSqlParser.COUNT - 256)) | (1 << (PlSqlParser.COVAR_POP - 256)) | (1 << (PlSqlParser.COVAR_SAMP - 256)) | (1 << (PlSqlParser.CPU_COSTING - 256)) | (1 << (PlSqlParser.CPU_PER_CALL - 256)) | (1 << (PlSqlParser.CPU_PER_SESSION - 256)) | (1 << (PlSqlParser.CRASH - 256)))) !== 0) || ((((_la - 289)) & ~0x1f) == 0 && ((1 << (_la - 289)) & ((1 << (PlSqlParser.CREATE_FILE_DEST - 289)) | (1 << (PlSqlParser.CREATE_STORED_OUTLINES - 289)) | (1 << (PlSqlParser.CREATION - 289)) | (1 << (PlSqlParser.CREDENTIAL - 289)) | (1 << (PlSqlParser.CRITICAL - 289)) | (1 << (PlSqlParser.CROSS - 289)) | (1 << (PlSqlParser.CROSSEDITION - 289)) | (1 << (PlSqlParser.CSCONVERT - 289)) | (1 << (PlSqlParser.CUBE_AJ - 289)) | (1 << (PlSqlParser.CUBE - 289)) | (1 << (PlSqlParser.CUBE_GB - 289)) | (1 << (PlSqlParser.CUBE_SJ - 289)) | (1 << (PlSqlParser.CUME_DISTM - 289)) | (1 << (PlSqlParser.CURRENT - 289)) | (1 << (PlSqlParser.CURRENT_DATE - 289)) | (1 << (PlSqlParser.CURRENT_SCHEMA - 289)) | (1 << (PlSqlParser.CURRENT_TIME - 289)) | (1 << (PlSqlParser.CURRENT_TIMESTAMP - 289)) | (1 << (PlSqlParser.CURRENT_USER - 289)) | (1 << (PlSqlParser.CURRENTV - 289)) | (1 << (PlSqlParser.CURSOR - 289)) | (1 << (PlSqlParser.CURSOR_SHARING_EXACT - 289)) | (1 << (PlSqlParser.CURSOR_SPECIFIC_SEGMENT - 289)) | (1 << (PlSqlParser.CUSTOMDATUM - 289)) | (1 << (PlSqlParser.CV - 289)) | (1 << (PlSqlParser.CYCLE - 289)) | (1 << (PlSqlParser.DANGLING - 289)) | (1 << (PlSqlParser.DATABASE - 289)) | (1 << (PlSqlParser.DATA - 289)) | (1 << (PlSqlParser.DATAFILE - 289)) | (1 << (PlSqlParser.DATAFILES - 289)))) !== 0) || ((((_la - 321)) & ~0x1f) == 0 && ((1 << (_la - 321)) & ((1 << (PlSqlParser.DATAMOVEMENT - 321)) | (1 << (PlSqlParser.DATAOBJNO - 321)) | (1 << (PlSqlParser.DATAOBJ_TO_MAT_PARTITION - 321)) | (1 << (PlSqlParser.DATAOBJ_TO_PARTITION - 321)) | (1 << (PlSqlParser.DATAPUMP - 321)) | (1 << (PlSqlParser.DATA_SECURITY_REWRITE_LIMIT - 321)) | (1 << (PlSqlParser.DATE_MODE - 321)) | (1 << (PlSqlParser.DAY - 321)) | (1 << (PlSqlParser.DAYS - 321)) | (1 << (PlSqlParser.DBA - 321)) | (1 << (PlSqlParser.DBA_RECYCLEBIN - 321)) | (1 << (PlSqlParser.DBMS_STATS - 321)) | (1 << (PlSqlParser.DB_ROLE_CHANGE - 321)) | (1 << (PlSqlParser.DBTIMEZONE - 321)) | (1 << (PlSqlParser.DB_UNIQUE_NAME - 321)) | (1 << (PlSqlParser.DB_VERSION - 321)) | (1 << (PlSqlParser.DDL - 321)) | (1 << (PlSqlParser.DEALLOCATE - 321)) | (1 << (PlSqlParser.DEBUG - 321)) | (1 << (PlSqlParser.DEBUGGER - 321)) | (1 << (PlSqlParser.DEC - 321)) | (1 << (PlSqlParser.DECIMAL - 321)) | (1 << (PlSqlParser.DECLARE - 321)) | (1 << (PlSqlParser.DECOMPOSE - 321)) | (1 << (PlSqlParser.DECORRELATE - 321)) | (1 << (PlSqlParser.DECR - 321)) | (1 << (PlSqlParser.DECREMENT - 321)) | (1 << (PlSqlParser.DECRYPT - 321)) | (1 << (PlSqlParser.DEDUPLICATE - 321)) | (1 << (PlSqlParser.DEFAULTS - 321)))) !== 0) || ((((_la - 353)) & ~0x1f) == 0 && ((1 << (_la - 353)) & ((1 << (PlSqlParser.DEFERRABLE - 353)) | (1 << (PlSqlParser.DEFERRED - 353)) | (1 << (PlSqlParser.DEFINED - 353)) | (1 << (PlSqlParser.DEFINE - 353)) | (1 << (PlSqlParser.DEFINER - 353)) | (1 << (PlSqlParser.DEGREE - 353)) | (1 << (PlSqlParser.DELAY - 353)) | (1 << (PlSqlParser.DELEGATE - 353)) | (1 << (PlSqlParser.DELETE_ALL - 353)) | (1 << (PlSqlParser.DELETE - 353)) | (1 << (PlSqlParser.DELETEXML - 353)) | (1 << (PlSqlParser.DEMAND - 353)) | (1 << (PlSqlParser.DENSE_RANKM - 353)) | (1 << (PlSqlParser.DEPENDENT - 353)) | (1 << (PlSqlParser.DEPTH - 353)) | (1 << (PlSqlParser.DEQUEUE - 353)) | (1 << (PlSqlParser.DEREF - 353)) | (1 << (PlSqlParser.DEREF_NO_REWRITE - 353)) | (1 << (PlSqlParser.DESTROY - 353)) | (1 << (PlSqlParser.DETACHED - 353)) | (1 << (PlSqlParser.DETERMINES - 353)) | (1 << (PlSqlParser.DETERMINISTIC - 353)) | (1 << (PlSqlParser.DICTIONARY - 353)) | (1 << (PlSqlParser.DIMENSION - 353)) | (1 << (PlSqlParser.DIMENSIONS - 353)) | (1 << (PlSqlParser.DIRECT_LOAD - 353)) | (1 << (PlSqlParser.DIRECTORY - 353)) | (1 << (PlSqlParser.DIRECT_PATH - 353)) | (1 << (PlSqlParser.DISABLE_ALL - 353)) | (1 << (PlSqlParser.DISABLE - 353)) | (1 << (PlSqlParser.DISABLE_PARALLEL_DML - 353)))) !== 0) || ((((_la - 385)) & ~0x1f) == 0 && ((1 << (_la - 385)) & ((1 << (PlSqlParser.DISABLE_PRESET - 385)) | (1 << (PlSqlParser.DISABLE_RPKE - 385)) | (1 << (PlSqlParser.DISALLOW - 385)) | (1 << (PlSqlParser.DISASSOCIATE - 385)) | (1 << (PlSqlParser.DISCARD - 385)) | (1 << (PlSqlParser.DISCONNECT - 385)) | (1 << (PlSqlParser.DISK - 385)) | (1 << (PlSqlParser.DISKGROUP - 385)) | (1 << (PlSqlParser.DISKS - 385)) | (1 << (PlSqlParser.DISMOUNT - 385)) | (1 << (PlSqlParser.DISTINGUISHED - 385)) | (1 << (PlSqlParser.DISTRIBUTED - 385)) | (1 << (PlSqlParser.DISTRIBUTE - 385)) | (1 << (PlSqlParser.DML - 385)) | (1 << (PlSqlParser.DML_UPDATE - 385)) | (1 << (PlSqlParser.DOCFIDELITY - 385)) | (1 << (PlSqlParser.DOCUMENT - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_FILTER - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_NO_SORT - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_SORT - 385)) | (1 << (PlSqlParser.DOUBLE - 385)) | (1 << (PlSqlParser.DOWNGRADE - 385)) | (1 << (PlSqlParser.DRIVING_SITE - 385)) | (1 << (PlSqlParser.DROP_COLUMN - 385)) | (1 << (PlSqlParser.DROP_GROUP - 385)) | (1 << (PlSqlParser.DSINTERVAL_UNCONSTRAINED - 385)) | (1 << (PlSqlParser.DST_UPGRADE_INSERT_CONV - 385)) | (1 << (PlSqlParser.DUMP - 385)))) !== 0) || ((((_la - 417)) & ~0x1f) == 0 && ((1 << (_la - 417)) & ((1 << (PlSqlParser.DUPLICATE - 417)) | (1 << (PlSqlParser.DV - 417)) | (1 << (PlSqlParser.DYNAMIC - 417)) | (1 << (PlSqlParser.DYNAMIC_SAMPLING - 417)) | (1 << (PlSqlParser.DYNAMIC_SAMPLING_EST_CDN - 417)) | (1 << (PlSqlParser.EACH - 417)) | (1 << (PlSqlParser.EDITIONABLE - 417)) | (1 << (PlSqlParser.EDITION - 417)) | (1 << (PlSqlParser.EDITIONING - 417)) | (1 << (PlSqlParser.EDITIONS - 417)) | (1 << (PlSqlParser.ELEMENT - 417)) | (1 << (PlSqlParser.ELIM_GROUPBY - 417)) | (1 << (PlSqlParser.ELIMINATE_JOIN - 417)) | (1 << (PlSqlParser.ELIMINATE_OBY - 417)) | (1 << (PlSqlParser.ELIMINATE_OUTER_JOIN - 417)) | (1 << (PlSqlParser.EM - 417)) | (1 << (PlSqlParser.EMPTY_BLOB - 417)) | (1 << (PlSqlParser.EMPTY_CLOB - 417)) | (1 << (PlSqlParser.EMPTY - 417)) | (1 << (PlSqlParser.ENABLE_ALL - 417)) | (1 << (PlSqlParser.ENABLE - 417)) | (1 << (PlSqlParser.ENABLE_PARALLEL_DML - 417)) | (1 << (PlSqlParser.ENABLE_PRESET - 417)) | (1 << (PlSqlParser.ENCODING - 417)) | (1 << (PlSqlParser.ENCRYPT - 417)) | (1 << (PlSqlParser.ENCRYPTION - 417)) | (1 << (PlSqlParser.END_OUTLINE_DATA - 417)) | (1 << (PlSqlParser.ENFORCED - 417)) | (1 << (PlSqlParser.ENFORCE - 417)))) !== 0) || ((((_la - 449)) & ~0x1f) == 0 && ((1 << (_la - 449)) & ((1 << (PlSqlParser.ENQUEUE - 449)) | (1 << (PlSqlParser.ENTERPRISE - 449)) | (1 << (PlSqlParser.ENTITYESCAPING - 449)) | (1 << (PlSqlParser.ENTRY - 449)) | (1 << (PlSqlParser.EQUIPART - 449)) | (1 << (PlSqlParser.ERR - 449)) | (1 << (PlSqlParser.ERROR_ARGUMENT - 449)) | (1 << (PlSqlParser.ERROR - 449)) | (1 << (PlSqlParser.ERROR_ON_OVERLAP_TIME - 449)) | (1 << (PlSqlParser.ERRORS - 449)) | (1 << (PlSqlParser.ESCAPE - 449)) | (1 << (PlSqlParser.ESTIMATE - 449)) | (1 << (PlSqlParser.EVAL - 449)) | (1 << (PlSqlParser.EVALNAME - 449)) | (1 << (PlSqlParser.EVALUATE - 449)) | (1 << (PlSqlParser.EVALUATION - 449)) | (1 << (PlSqlParser.EVENTS - 449)) | (1 << (PlSqlParser.EVERY - 449)) | (1 << (PlSqlParser.EXCEPT - 449)) | (1 << (PlSqlParser.EXCEPTION - 449)) | (1 << (PlSqlParser.EXCEPTION_INIT - 449)) | (1 << (PlSqlParser.EXCEPTIONS - 449)) | (1 << (PlSqlParser.EXCHANGE - 449)) | (1 << (PlSqlParser.EXCLUDE - 449)) | (1 << (PlSqlParser.EXCLUDING - 449)) | (1 << (PlSqlParser.EXECUTE - 449)) | (1 << (PlSqlParser.EXEMPT - 449)) | (1 << (PlSqlParser.EXISTING - 449)) | (1 << (PlSqlParser.EXISTS - 449)) | (1 << (PlSqlParser.EXISTSNODE - 449)) | (1 << (PlSqlParser.EXIT - 449)))) !== 0) || ((((_la - 481)) & ~0x1f) == 0 && ((1 << (_la - 481)) & ((1 << (PlSqlParser.EXPAND_GSET_TO_UNION - 481)) | (1 << (PlSqlParser.EXPAND_TABLE - 481)) | (1 << (PlSqlParser.EXP - 481)) | (1 << (PlSqlParser.EXPIRE - 481)) | (1 << (PlSqlParser.EXPLAIN - 481)) | (1 << (PlSqlParser.EXPLOSION - 481)) | (1 << (PlSqlParser.EXPORT - 481)) | (1 << (PlSqlParser.EXPR_CORR_CHECK - 481)) | (1 << (PlSqlParser.EXPRESS - 481)) | (1 << (PlSqlParser.EXTENDS - 481)) | (1 << (PlSqlParser.EXTENT - 481)) | (1 << (PlSqlParser.EXTENTS - 481)) | (1 << (PlSqlParser.EXTERNAL - 481)) | (1 << (PlSqlParser.EXTERNALLY - 481)) | (1 << (PlSqlParser.EXTRACTCLOBXML - 481)) | (1 << (PlSqlParser.EXTRACT - 481)) | (1 << (PlSqlParser.EXTRACTVALUE - 481)) | (1 << (PlSqlParser.EXTRA - 481)) | (1 << (PlSqlParser.FACILITY - 481)) | (1 << (PlSqlParser.FACT - 481)) | (1 << (PlSqlParser.FACTOR - 481)) | (1 << (PlSqlParser.FACTORIZE_JOIN - 481)) | (1 << (PlSqlParser.FAILED - 481)) | (1 << (PlSqlParser.FAILED_LOGIN_ATTEMPTS - 481)) | (1 << (PlSqlParser.FAILGROUP - 481)) | (1 << (PlSqlParser.FAILOVER - 481)) | (1 << (PlSqlParser.FAILURE - 481)) | (1 << (PlSqlParser.FALSE - 481)) | (1 << (PlSqlParser.FAMILY - 481)) | (1 << (PlSqlParser.FAR - 481)) | (1 << (PlSqlParser.FAST - 481)) | (1 << (PlSqlParser.FASTSTART - 481)))) !== 0) || ((((_la - 513)) & ~0x1f) == 0 && ((1 << (_la - 513)) & ((1 << (PlSqlParser.FBTSCAN - 513)) | (1 << (PlSqlParser.FEATURE_DETAILS - 513)) | (1 << (PlSqlParser.FEATURE_ID - 513)) | (1 << (PlSqlParser.FEATURE_SET - 513)) | (1 << (PlSqlParser.FEATURE_VALUE - 513)) | (1 << (PlSqlParser.FETCH - 513)) | (1 << (PlSqlParser.FILE - 513)) | (1 << (PlSqlParser.FILE_NAME_CONVERT - 513)) | (1 << (PlSqlParser.FILESYSTEM_LIKE_LOGGING - 513)) | (1 << (PlSqlParser.FILTER - 513)) | (1 << (PlSqlParser.FINAL - 513)) | (1 << (PlSqlParser.FINE - 513)) | (1 << (PlSqlParser.FINISH - 513)) | (1 << (PlSqlParser.FIRST - 513)) | (1 << (PlSqlParser.FIRSTM - 513)) | (1 << (PlSqlParser.FIRST_ROWS - 513)) | (1 << (PlSqlParser.FIRST_VALUE - 513)) | (1 << (PlSqlParser.FIXED_VIEW_DATA - 513)) | (1 << (PlSqlParser.FLAGGER - 513)) | (1 << (PlSqlParser.FLASHBACK - 513)) | (1 << (PlSqlParser.FLASH_CACHE - 513)) | (1 << (PlSqlParser.FLOAT - 513)) | (1 << (PlSqlParser.FLOB - 513)) | (1 << (PlSqlParser.FLOOR - 513)) | (1 << (PlSqlParser.FLUSH - 513)) | (1 << (PlSqlParser.FOLDER - 513)) | (1 << (PlSqlParser.FOLLOWING - 513)) | (1 << (PlSqlParser.FOLLOWS - 513)) | (1 << (PlSqlParser.FORALL - 513)) | (1 << (PlSqlParser.FORCE - 513)) | (1 << (PlSqlParser.FORCE_XML_QUERY_REWRITE - 513)) | (1 << (PlSqlParser.FOREIGN - 513)))) !== 0) || ((((_la - 545)) & ~0x1f) == 0 && ((1 << (_la - 545)) & ((1 << (PlSqlParser.FOREVER - 545)) | (1 << (PlSqlParser.FORMAT - 545)) | (1 << (PlSqlParser.FORWARD - 545)) | (1 << (PlSqlParser.FRAGMENT_NUMBER - 545)) | (1 << (PlSqlParser.FREELIST - 545)) | (1 << (PlSqlParser.FREELISTS - 545)) | (1 << (PlSqlParser.FREEPOOLS - 545)) | (1 << (PlSqlParser.FRESH - 545)) | (1 << (PlSqlParser.FROM_TZ - 545)) | (1 << (PlSqlParser.FULL - 545)) | (1 << (PlSqlParser.FULL_OUTER_JOIN_TO_OUTER - 545)) | (1 << (PlSqlParser.FUNCTION - 545)) | (1 << (PlSqlParser.FUNCTIONS - 545)) | (1 << (PlSqlParser.GATHER_OPTIMIZER_STATISTICS - 545)) | (1 << (PlSqlParser.GATHER_PLAN_STATISTICS - 545)) | (1 << (PlSqlParser.GBY_CONC_ROLLUP - 545)) | (1 << (PlSqlParser.GBY_PUSHDOWN - 545)) | (1 << (PlSqlParser.GENERATED - 545)) | (1 << (PlSqlParser.GET - 545)) | (1 << (PlSqlParser.GLOBAL - 545)) | (1 << (PlSqlParser.GLOBALLY - 545)) | (1 << (PlSqlParser.GLOBAL_NAME - 545)) | (1 << (PlSqlParser.GLOBAL_TOPIC_ENABLED - 545)) | (1 << (PlSqlParser.GROUP_BY - 545)) | (1 << (PlSqlParser.GROUP_ID - 545)) | (1 << (PlSqlParser.GROUPING - 545)) | (1 << (PlSqlParser.GROUPING_ID - 545)))) !== 0) || ((((_la - 577)) & ~0x1f) == 0 && ((1 << (_la - 577)) & ((1 << (PlSqlParser.GROUPS - 577)) | (1 << (PlSqlParser.GUARANTEED - 577)) | (1 << (PlSqlParser.GUARANTEE - 577)) | (1 << (PlSqlParser.GUARD - 577)) | (1 << (PlSqlParser.HASH_AJ - 577)) | (1 << (PlSqlParser.HASH - 577)) | (1 << (PlSqlParser.HASHKEYS - 577)) | (1 << (PlSqlParser.HASH_SJ - 577)) | (1 << (PlSqlParser.HEADER - 577)) | (1 << (PlSqlParser.HEAP - 577)) | (1 << (PlSqlParser.HELP - 577)) | (1 << (PlSqlParser.HEXTORAW - 577)) | (1 << (PlSqlParser.HEXTOREF - 577)) | (1 << (PlSqlParser.HIDDEN_KEYWORD - 577)) | (1 << (PlSqlParser.HIDE - 577)) | (1 << (PlSqlParser.HIERARCHY - 577)) | (1 << (PlSqlParser.HIGH - 577)) | (1 << (PlSqlParser.HINTSET_BEGIN - 577)) | (1 << (PlSqlParser.HINTSET_END - 577)) | (1 << (PlSqlParser.HOT - 577)) | (1 << (PlSqlParser.HOUR - 577)) | (1 << (PlSqlParser.HWM_BROKERED - 577)) | (1 << (PlSqlParser.HYBRID - 577)) | (1 << (PlSqlParser.IDENTIFIER - 577)) | (1 << (PlSqlParser.IDENTITY - 577)) | (1 << (PlSqlParser.IDGENERATORS - 577)) | (1 << (PlSqlParser.ID - 577)) | (1 << (PlSqlParser.IDLE_TIME - 577)) | (1 << (PlSqlParser.IF - 577)) | (1 << (PlSqlParser.IGNORE - 577)))) !== 0) || ((((_la - 609)) & ~0x1f) == 0 && ((1 << (_la - 609)) & ((1 << (PlSqlParser.IGNORE_OPTIM_EMBEDDED_HINTS - 609)) | (1 << (PlSqlParser.IGNORE_ROW_ON_DUPKEY_INDEX - 609)) | (1 << (PlSqlParser.IGNORE_WHERE_CLAUSE - 609)) | (1 << (PlSqlParser.ILM - 609)) | (1 << (PlSqlParser.IMMEDIATE - 609)) | (1 << (PlSqlParser.IMPACT - 609)) | (1 << (PlSqlParser.IMPORT - 609)) | (1 << (PlSqlParser.INACTIVE - 609)) | (1 << (PlSqlParser.INCLUDE - 609)) | (1 << (PlSqlParser.INCLUDE_VERSION - 609)) | (1 << (PlSqlParser.INCLUDING - 609)) | (1 << (PlSqlParser.INCREMENTAL - 609)) | (1 << (PlSqlParser.INCREMENT - 609)) | (1 << (PlSqlParser.INCR - 609)) | (1 << (PlSqlParser.INDENT - 609)) | (1 << (PlSqlParser.INDEX_ASC - 609)) | (1 << (PlSqlParser.INDEX_COMBINE - 609)) | (1 << (PlSqlParser.INDEX_DESC - 609)) | (1 << (PlSqlParser.INDEXED - 609)) | (1 << (PlSqlParser.INDEXES - 609)) | (1 << (PlSqlParser.INDEX_FFS - 609)) | (1 << (PlSqlParser.INDEX_FILTER - 609)) | (1 << (PlSqlParser.INDEXING - 609)) | (1 << (PlSqlParser.INDEX_JOIN - 609)) | (1 << (PlSqlParser.INDEX_ROWS - 609)) | (1 << (PlSqlParser.INDEX_RRS - 609)) | (1 << (PlSqlParser.INDEX_RS_ASC - 609)) | (1 << (PlSqlParser.INDEX_RS_DESC - 609)) | (1 << (PlSqlParser.INDEX_RS - 609)) | (1 << (PlSqlParser.INDEX_SCAN - 609)) | (1 << (PlSqlParser.INDEX_SKIP_SCAN - 609)))) !== 0) || ((((_la - 641)) & ~0x1f) == 0 && ((1 << (_la - 641)) & ((1 << (PlSqlParser.INDEX_SS_ASC - 641)) | (1 << (PlSqlParser.INDEX_SS_DESC - 641)) | (1 << (PlSqlParser.INDEX_SS - 641)) | (1 << (PlSqlParser.INDEX_STATS - 641)) | (1 << (PlSqlParser.INDEXTYPE - 641)) | (1 << (PlSqlParser.INDEXTYPES - 641)) | (1 << (PlSqlParser.INDICATOR - 641)) | (1 << (PlSqlParser.INDICES - 641)) | (1 << (PlSqlParser.INFINITE - 641)) | (1 << (PlSqlParser.INFORMATIONAL - 641)) | (1 << (PlSqlParser.INHERIT - 641)) | (1 << (PlSqlParser.INITCAP - 641)) | (1 << (PlSqlParser.INITIAL - 641)) | (1 << (PlSqlParser.INITIALIZED - 641)) | (1 << (PlSqlParser.INITIALLY - 641)) | (1 << (PlSqlParser.INITRANS - 641)) | (1 << (PlSqlParser.INLINE - 641)) | (1 << (PlSqlParser.INLINE_XMLTYPE_NT - 641)) | (1 << (PlSqlParser.INMEMORY - 641)) | (1 << (PlSqlParser.IN_MEMORY_METADATA - 641)) | (1 << (PlSqlParser.INMEMORY_PRUNING - 641)) | (1 << (PlSqlParser.INNER - 641)) | (1 << (PlSqlParser.INOUT - 641)) | (1 << (PlSqlParser.INPLACE - 641)) | (1 << (PlSqlParser.INSERTCHILDXMLAFTER - 641)) | (1 << (PlSqlParser.INSERTCHILDXMLBEFORE - 641)) | (1 << (PlSqlParser.INSERTCHILDXML - 641)) | (1 << (PlSqlParser.INSERTXMLAFTER - 641)) | (1 << (PlSqlParser.INSERTXMLBEFORE - 641)) | (1 << (PlSqlParser.INSTANCE - 641)))) !== 0) || ((((_la - 673)) & ~0x1f) == 0 && ((1 << (_la - 673)) & ((1 << (PlSqlParser.INSTANCES - 673)) | (1 << (PlSqlParser.INSTANTIABLE - 673)) | (1 << (PlSqlParser.INSTANTLY - 673)) | (1 << (PlSqlParser.INSTEAD - 673)) | (1 << (PlSqlParser.INSTR2 - 673)) | (1 << (PlSqlParser.INSTR4 - 673)) | (1 << (PlSqlParser.INSTRB - 673)) | (1 << (PlSqlParser.INSTRC - 673)) | (1 << (PlSqlParser.INSTR - 673)) | (1 << (PlSqlParser.INTEGER - 673)) | (1 << (PlSqlParser.INTERLEAVED - 673)) | (1 << (PlSqlParser.INTERMEDIATE - 673)) | (1 << (PlSqlParser.INTERNAL_CONVERT - 673)) | (1 << (PlSqlParser.INTERNAL_USE - 673)) | (1 << (PlSqlParser.INTERPRETED - 673)) | (1 << (PlSqlParser.INTERVAL - 673)) | (1 << (PlSqlParser.INT - 673)) | (1 << (PlSqlParser.INVALIDATE - 673)) | (1 << (PlSqlParser.INVISIBLE - 673)) | (1 << (PlSqlParser.IN_XQUERY - 673)) | (1 << (PlSqlParser.ISOLATION - 673)) | (1 << (PlSqlParser.ISOLATION_LEVEL - 673)) | (1 << (PlSqlParser.ITERATE - 673)) | (1 << (PlSqlParser.ITERATION_NUMBER - 673)) | (1 << (PlSqlParser.JAVA - 673)) | (1 << (PlSqlParser.JOB - 673)) | (1 << (PlSqlParser.JOIN - 673)) | (1 << (PlSqlParser.JSON_ARRAYAGG - 673)) | (1 << (PlSqlParser.JSON_ARRAY - 673)))) !== 0) || ((((_la - 705)) & ~0x1f) == 0 && ((1 << (_la - 705)) & ((1 << (PlSqlParser.JSON_EQUAL - 705)) | (1 << (PlSqlParser.JSON_EXISTS2 - 705)) | (1 << (PlSqlParser.JSON_EXISTS - 705)) | (1 << (PlSqlParser.JSONGET - 705)) | (1 << (PlSqlParser.JSON - 705)) | (1 << (PlSqlParser.JSON_OBJECTAGG - 705)) | (1 << (PlSqlParser.JSON_OBJECT - 705)) | (1 << (PlSqlParser.JSONPARSE - 705)) | (1 << (PlSqlParser.JSON_QUERY - 705)) | (1 << (PlSqlParser.JSON_SERIALIZE - 705)) | (1 << (PlSqlParser.JSON_TABLE - 705)) | (1 << (PlSqlParser.JSON_TEXTCONTAINS2 - 705)) | (1 << (PlSqlParser.JSON_TEXTCONTAINS - 705)) | (1 << (PlSqlParser.JSON_VALUE - 705)) | (1 << (PlSqlParser.KEEP_DUPLICATES - 705)) | (1 << (PlSqlParser.KEEP - 705)) | (1 << (PlSqlParser.KERBEROS - 705)) | (1 << (PlSqlParser.KEY - 705)) | (1 << (PlSqlParser.KEY_LENGTH - 705)) | (1 << (PlSqlParser.KEYSIZE - 705)) | (1 << (PlSqlParser.KEYS - 705)) | (1 << (PlSqlParser.KEYSTORE - 705)) | (1 << (PlSqlParser.KILL - 705)) | (1 << (PlSqlParser.LABEL - 705)) | (1 << (PlSqlParser.LANGUAGE - 705)) | (1 << (PlSqlParser.LAST_DAY - 705)) | (1 << (PlSqlParser.LAST - 705)) | (1 << (PlSqlParser.LAST_VALUE - 705)) | (1 << (PlSqlParser.LATERAL - 705)) | (1 << (PlSqlParser.LAX - 705)) | (1 << (PlSqlParser.LAYER - 705)) | (1 << (PlSqlParser.LDAP_REGISTRATION_ENABLED - 705)))) !== 0) || ((((_la - 737)) & ~0x1f) == 0 && ((1 << (_la - 737)) & ((1 << (PlSqlParser.LDAP_REGISTRATION - 737)) | (1 << (PlSqlParser.LDAP_REG_SYNC_INTERVAL - 737)) | (1 << (PlSqlParser.LEADING - 737)) | (1 << (PlSqlParser.LEFT - 737)) | (1 << (PlSqlParser.LENGTH2 - 737)) | (1 << (PlSqlParser.LENGTH4 - 737)) | (1 << (PlSqlParser.LENGTHB - 737)) | (1 << (PlSqlParser.LENGTHC - 737)) | (1 << (PlSqlParser.LENGTH - 737)) | (1 << (PlSqlParser.LESS - 737)) | (1 << (PlSqlParser.LEVEL - 737)) | (1 << (PlSqlParser.LEVELS - 737)) | (1 << (PlSqlParser.LIBRARY - 737)) | (1 << (PlSqlParser.LIFECYCLE - 737)) | (1 << (PlSqlParser.LIFE - 737)) | (1 << (PlSqlParser.LIFETIME - 737)) | (1 << (PlSqlParser.LIKE2 - 737)) | (1 << (PlSqlParser.LIKE4 - 737)) | (1 << (PlSqlParser.LIKEC - 737)) | (1 << (PlSqlParser.LIKE_EXPAND - 737)) | (1 << (PlSqlParser.LIMIT - 737)) | (1 << (PlSqlParser.LINEAR - 737)) | (1 << (PlSqlParser.LINK - 737)) | (1 << (PlSqlParser.LIST - 737)) | (1 << (PlSqlParser.LN - 737)) | (1 << (PlSqlParser.LNNVL - 737)) | (1 << (PlSqlParser.LOAD - 737)) | (1 << (PlSqlParser.LOB - 737)) | (1 << (PlSqlParser.LOBNVL - 737)) | (1 << (PlSqlParser.LOBS - 737)) | (1 << (PlSqlParser.LOCAL_INDEXES - 737)))) !== 0) || ((((_la - 769)) & ~0x1f) == 0 && ((1 << (_la - 769)) & ((1 << (PlSqlParser.LOCAL - 769)) | (1 << (PlSqlParser.LOCALTIME - 769)) | (1 << (PlSqlParser.LOCALTIMESTAMP - 769)) | (1 << (PlSqlParser.LOCATION - 769)) | (1 << (PlSqlParser.LOCATOR - 769)) | (1 << (PlSqlParser.LOCKED - 769)) | (1 << (PlSqlParser.LOCKING - 769)) | (1 << (PlSqlParser.LOGFILE - 769)) | (1 << (PlSqlParser.LOGFILES - 769)) | (1 << (PlSqlParser.LOGGING - 769)) | (1 << (PlSqlParser.LOGICAL - 769)) | (1 << (PlSqlParser.LOGICAL_READS_PER_CALL - 769)) | (1 << (PlSqlParser.LOGICAL_READS_PER_SESSION - 769)) | (1 << (PlSqlParser.LOG - 769)) | (1 << (PlSqlParser.LOGMINING - 769)) | (1 << (PlSqlParser.LOGOFF - 769)) | (1 << (PlSqlParser.LOGON - 769)) | (1 << (PlSqlParser.LOG_READ_ONLY_VIOLATIONS - 769)) | (1 << (PlSqlParser.LONG - 769)) | (1 << (PlSqlParser.LOOP - 769)) | (1 << (PlSqlParser.LOWER - 769)) | (1 << (PlSqlParser.LOW - 769)) | (1 << (PlSqlParser.LPAD - 769)) | (1 << (PlSqlParser.LTRIM - 769)) | (1 << (PlSqlParser.MAIN - 769)) | (1 << (PlSqlParser.MAKE_REF - 769)) | (1 << (PlSqlParser.MANAGED - 769)) | (1 << (PlSqlParser.MANAGE - 769)) | (1 << (PlSqlParser.MANAGEMENT - 769)) | (1 << (PlSqlParser.MANAGER - 769)) | (1 << (PlSqlParser.MANUAL - 769)))) !== 0) || ((((_la - 801)) & ~0x1f) == 0 && ((1 << (_la - 801)) & ((1 << (PlSqlParser.MAP - 801)) | (1 << (PlSqlParser.MAPPING - 801)) | (1 << (PlSqlParser.MASTER - 801)) | (1 << (PlSqlParser.MATCHED - 801)) | (1 << (PlSqlParser.MATCHES - 801)) | (1 << (PlSqlParser.MATCH - 801)) | (1 << (PlSqlParser.MATCH_NUMBER - 801)) | (1 << (PlSqlParser.MATCH_RECOGNIZE - 801)) | (1 << (PlSqlParser.MATERIALIZED - 801)) | (1 << (PlSqlParser.MATERIALIZE - 801)) | (1 << (PlSqlParser.MAXARCHLOGS - 801)) | (1 << (PlSqlParser.MAXDATAFILES - 801)) | (1 << (PlSqlParser.MAXEXTENTS - 801)) | (1 << (PlSqlParser.MAXIMIZE - 801)) | (1 << (PlSqlParser.MAXINSTANCES - 801)) | (1 << (PlSqlParser.MAXLOGFILES - 801)) | (1 << (PlSqlParser.MAXLOGHISTORY - 801)) | (1 << (PlSqlParser.MAXLOGMEMBERS - 801)) | (1 << (PlSqlParser.MAX_SHARED_TEMP_SIZE - 801)) | (1 << (PlSqlParser.MAXSIZE - 801)) | (1 << (PlSqlParser.MAXTRANS - 801)) | (1 << (PlSqlParser.MAXVALUE - 801)) | (1 << (PlSqlParser.MEASURE - 801)) | (1 << (PlSqlParser.MEASURES - 801)) | (1 << (PlSqlParser.MEDIUM - 801)) | (1 << (PlSqlParser.MEMBER - 801)) | (1 << (PlSqlParser.MEMCOMPRESS - 801)) | (1 << (PlSqlParser.MEMORY - 801)) | (1 << (PlSqlParser.MERGEACTIONS - 801)) | (1 << (PlSqlParser.MERGE_AJ - 801)) | (1 << (PlSqlParser.MERGE_CONST_ON - 801)) | (1 << (PlSqlParser.MERGE - 801)))) !== 0) || ((((_la - 833)) & ~0x1f) == 0 && ((1 << (_la - 833)) & ((1 << (PlSqlParser.MERGE_SJ - 833)) | (1 << (PlSqlParser.METADATA - 833)) | (1 << (PlSqlParser.METHOD - 833)) | (1 << (PlSqlParser.MIGRATE - 833)) | (1 << (PlSqlParser.MIGRATION - 833)) | (1 << (PlSqlParser.MINEXTENTS - 833)) | (1 << (PlSqlParser.MINIMIZE - 833)) | (1 << (PlSqlParser.MINIMUM - 833)) | (1 << (PlSqlParser.MINING - 833)) | (1 << (PlSqlParser.MINUS_NULL - 833)) | (1 << (PlSqlParser.MINUTE - 833)) | (1 << (PlSqlParser.MINVALUE - 833)) | (1 << (PlSqlParser.MIRRORCOLD - 833)) | (1 << (PlSqlParser.MIRRORHOT - 833)) | (1 << (PlSqlParser.MIRROR - 833)) | (1 << (PlSqlParser.MLSLABEL - 833)) | (1 << (PlSqlParser.MODEL_COMPILE_SUBQUERY - 833)) | (1 << (PlSqlParser.MODEL_DONTVERIFY_UNIQUENESS - 833)) | (1 << (PlSqlParser.MODEL_DYNAMIC_SUBQUERY - 833)) | (1 << (PlSqlParser.MODEL_MIN_ANALYSIS - 833)) | (1 << (PlSqlParser.MODEL - 833)) | (1 << (PlSqlParser.MODEL_NB - 833)) | (1 << (PlSqlParser.MODEL_NO_ANALYSIS - 833)) | (1 << (PlSqlParser.MODEL_PBY - 833)) | (1 << (PlSqlParser.MODEL_PUSH_REF - 833)) | (1 << (PlSqlParser.MODEL_SV - 833)) | (1 << (PlSqlParser.MODIFICATION - 833)) | (1 << (PlSqlParser.MODIFY_COLUMN_TYPE - 833)) | (1 << (PlSqlParser.MODIFY - 833)) | (1 << (PlSqlParser.MOD - 833)))) !== 0) || ((((_la - 865)) & ~0x1f) == 0 && ((1 << (_la - 865)) & ((1 << (PlSqlParser.MODULE - 865)) | (1 << (PlSqlParser.MONITORING - 865)) | (1 << (PlSqlParser.MONITOR - 865)) | (1 << (PlSqlParser.MONTH - 865)) | (1 << (PlSqlParser.MONTHS_BETWEEN - 865)) | (1 << (PlSqlParser.MONTHS - 865)) | (1 << (PlSqlParser.MOUNT - 865)) | (1 << (PlSqlParser.MOUNTPATH - 865)) | (1 << (PlSqlParser.MOVEMENT - 865)) | (1 << (PlSqlParser.MOVE - 865)) | (1 << (PlSqlParser.MULTIDIMENSIONAL - 865)) | (1 << (PlSqlParser.MULTISET - 865)) | (1 << (PlSqlParser.MV_MERGE - 865)) | (1 << (PlSqlParser.NAMED - 865)) | (1 << (PlSqlParser.NAME - 865)) | (1 << (PlSqlParser.NAMESPACE - 865)) | (1 << (PlSqlParser.NAN - 865)) | (1 << (PlSqlParser.NANVL - 865)) | (1 << (PlSqlParser.NATIONAL - 865)) | (1 << (PlSqlParser.NATIVE_FULL_OUTER_JOIN - 865)) | (1 << (PlSqlParser.NATIVE - 865)) | (1 << (PlSqlParser.NATURAL - 865)) | (1 << (PlSqlParser.NAV - 865)) | (1 << (PlSqlParser.NCHAR_CS - 865)) | (1 << (PlSqlParser.NCHAR - 865)) | (1 << (PlSqlParser.NCHR - 865)) | (1 << (PlSqlParser.NCLOB - 865)) | (1 << (PlSqlParser.NEEDED - 865)) | (1 << (PlSqlParser.NEG - 865)) | (1 << (PlSqlParser.NESTED - 865)) | (1 << (PlSqlParser.NESTED_TABLE_FAST_INSERT - 865)))) !== 0) || ((((_la - 897)) & ~0x1f) == 0 && ((1 << (_la - 897)) & ((1 << (PlSqlParser.NESTED_TABLE_GET_REFS - 897)) | (1 << (PlSqlParser.NESTED_TABLE_ID - 897)) | (1 << (PlSqlParser.NESTED_TABLE_SET_REFS - 897)) | (1 << (PlSqlParser.NESTED_TABLE_SET_SETID - 897)) | (1 << (PlSqlParser.NETWORK - 897)) | (1 << (PlSqlParser.NEVER - 897)) | (1 << (PlSqlParser.NEW - 897)) | (1 << (PlSqlParser.NEW_TIME - 897)) | (1 << (PlSqlParser.NEXT_DAY - 897)) | (1 << (PlSqlParser.NEXT - 897)) | (1 << (PlSqlParser.NL_AJ - 897)) | (1 << (PlSqlParser.NLJ_BATCHING - 897)) | (1 << (PlSqlParser.NLJ_INDEX_FILTER - 897)) | (1 << (PlSqlParser.NLJ_INDEX_SCAN - 897)) | (1 << (PlSqlParser.NLJ_PREFETCH - 897)) | (1 << (PlSqlParser.NLS_CALENDAR - 897)) | (1 << (PlSqlParser.NLS_CHARACTERSET - 897)) | (1 << (PlSqlParser.NLS_CHARSET_DECL_LEN - 897)) | (1 << (PlSqlParser.NLS_CHARSET_ID - 897)) | (1 << (PlSqlParser.NLS_CHARSET_NAME - 897)) | (1 << (PlSqlParser.NLS_COMP - 897)) | (1 << (PlSqlParser.NLS_CURRENCY - 897)) | (1 << (PlSqlParser.NLS_DATE_FORMAT - 897)) | (1 << (PlSqlParser.NLS_DATE_LANGUAGE - 897)) | (1 << (PlSqlParser.NLS_INITCAP - 897)) | (1 << (PlSqlParser.NLS_ISO_CURRENCY - 897)) | (1 << (PlSqlParser.NL_SJ - 897)) | (1 << (PlSqlParser.NLS_LANG - 897)) | (1 << (PlSqlParser.NLS_LANGUAGE - 897)) | (1 << (PlSqlParser.NLS_LENGTH_SEMANTICS - 897)) | (1 << (PlSqlParser.NLS_LOWER - 897)) | (1 << (PlSqlParser.NLS_NCHAR_CONV_EXCP - 897)))) !== 0) || ((((_la - 929)) & ~0x1f) == 0 && ((1 << (_la - 929)) & ((1 << (PlSqlParser.NLS_NUMERIC_CHARACTERS - 929)) | (1 << (PlSqlParser.NLS_SORT - 929)) | (1 << (PlSqlParser.NLSSORT - 929)) | (1 << (PlSqlParser.NLS_SPECIAL_CHARS - 929)) | (1 << (PlSqlParser.NLS_TERRITORY - 929)) | (1 << (PlSqlParser.NLS_UPPER - 929)) | (1 << (PlSqlParser.NO_ACCESS - 929)) | (1 << (PlSqlParser.NO_ADAPTIVE_PLAN - 929)) | (1 << (PlSqlParser.NO_ANSI_REARCH - 929)) | (1 << (PlSqlParser.NOAPPEND - 929)) | (1 << (PlSqlParser.NOARCHIVELOG - 929)) | (1 << (PlSqlParser.NOAUDIT - 929)) | (1 << (PlSqlParser.NO_AUTO_REOPTIMIZE - 929)) | (1 << (PlSqlParser.NO_BASETABLE_MULTIMV_REWRITE - 929)) | (1 << (PlSqlParser.NO_BATCH_TABLE_ACCESS_BY_ROWID - 929)) | (1 << (PlSqlParser.NO_BIND_AWARE - 929)) | (1 << (PlSqlParser.NO_BUFFER - 929)) | (1 << (PlSqlParser.NOCACHE - 929)) | (1 << (PlSqlParser.NO_CARTESIAN - 929)) | (1 << (PlSqlParser.NO_CHECK_ACL_REWRITE - 929)) | (1 << (PlSqlParser.NO_CLUSTER_BY_ROWID - 929)) | (1 << (PlSqlParser.NO_CLUSTERING - 929)) | (1 << (PlSqlParser.NO_COALESCE_SQ - 929)) | (1 << (PlSqlParser.NO_COMMON_DATA - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_CB_WHR_ONLY - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_COMBINE_SW - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_COST_BASED - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_ELIM_DUPS - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_FILTERING - 929)) | (1 << (PlSqlParser.NOCOPY - 929)) | (1 << (PlSqlParser.NO_COST_XML_QUERY_REWRITE - 929)))) !== 0) || ((((_la - 961)) & ~0x1f) == 0 && ((1 << (_la - 961)) & ((1 << (PlSqlParser.NO_CPU_COSTING - 961)) | (1 << (PlSqlParser.NOCPU_COSTING - 961)) | (1 << (PlSqlParser.NOCYCLE - 961)) | (1 << (PlSqlParser.NO_DATA_SECURITY_REWRITE - 961)) | (1 << (PlSqlParser.NO_DECORRELATE - 961)) | (1 << (PlSqlParser.NODELAY - 961)) | (1 << (PlSqlParser.NO_DOMAIN_INDEX_FILTER - 961)) | (1 << (PlSqlParser.NO_DST_UPGRADE_INSERT_CONV - 961)) | (1 << (PlSqlParser.NO_ELIM_GROUPBY - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_JOIN - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_OBY - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_OUTER_JOIN - 961)) | (1 << (PlSqlParser.NOENTITYESCAPING - 961)) | (1 << (PlSqlParser.NO_EXPAND_GSET_TO_UNION - 961)) | (1 << (PlSqlParser.NO_EXPAND - 961)) | (1 << (PlSqlParser.NO_EXPAND_TABLE - 961)) | (1 << (PlSqlParser.NO_FACT - 961)) | (1 << (PlSqlParser.NO_FACTORIZE_JOIN - 961)) | (1 << (PlSqlParser.NO_FILTERING - 961)) | (1 << (PlSqlParser.NOFORCE - 961)) | (1 << (PlSqlParser.NO_FULL_OUTER_JOIN_TO_OUTER - 961)) | (1 << (PlSqlParser.NO_GATHER_OPTIMIZER_STATISTICS - 961)) | (1 << (PlSqlParser.NO_GBY_PUSHDOWN - 961)) | (1 << (PlSqlParser.NOGUARANTEE - 961)) | (1 << (PlSqlParser.NO_INDEX_FFS - 961)) | (1 << (PlSqlParser.NO_INDEX - 961)) | (1 << (PlSqlParser.NO_INDEX_SS - 961)) | (1 << (PlSqlParser.NO_INMEMORY - 961)) | (1 << (PlSqlParser.NO_INMEMORY_PRUNING - 961)) | (1 << (PlSqlParser.NOKEEP - 961)) | (1 << (PlSqlParser.NO_LOAD - 961)) | (1 << (PlSqlParser.NOLOCAL - 961)))) !== 0) || ((((_la - 993)) & ~0x1f) == 0 && ((1 << (_la - 993)) & ((1 << (PlSqlParser.NOLOGGING - 993)) | (1 << (PlSqlParser.NOMAPPING - 993)) | (1 << (PlSqlParser.NOMAXVALUE - 993)) | (1 << (PlSqlParser.NO_MERGE - 993)) | (1 << (PlSqlParser.NOMINIMIZE - 993)) | (1 << (PlSqlParser.NOMINVALUE - 993)) | (1 << (PlSqlParser.NO_MODEL_PUSH_REF - 993)) | (1 << (PlSqlParser.NO_MONITORING - 993)) | (1 << (PlSqlParser.NOMONITORING - 993)) | (1 << (PlSqlParser.NO_MONITOR - 993)) | (1 << (PlSqlParser.NO_MULTIMV_REWRITE - 993)) | (1 << (PlSqlParser.NO_NATIVE_FULL_OUTER_JOIN - 993)) | (1 << (PlSqlParser.NONBLOCKING - 993)) | (1 << (PlSqlParser.NONEDITIONABLE - 993)) | (1 << (PlSqlParser.NONE - 993)) | (1 << (PlSqlParser.NO_NLJ_BATCHING - 993)) | (1 << (PlSqlParser.NO_NLJ_PREFETCH - 993)) | (1 << (PlSqlParser.NO - 993)) | (1 << (PlSqlParser.NONSCHEMA - 993)) | (1 << (PlSqlParser.NO_OBJECT_LINK - 993)) | (1 << (PlSqlParser.NOORDER - 993)) | (1 << (PlSqlParser.NO_ORDER_ROLLUPS - 993)) | (1 << (PlSqlParser.NO_OUTER_JOIN_TO_ANTI - 993)) | (1 << (PlSqlParser.NO_OUTER_JOIN_TO_INNER - 993)) | (1 << (PlSqlParser.NOOVERRIDE - 993)) | (1 << (PlSqlParser.NO_PARALLEL_INDEX - 993)) | (1 << (PlSqlParser.NOPARALLEL_INDEX - 993)) | (1 << (PlSqlParser.NO_PARALLEL - 993)) | (1 << (PlSqlParser.NOPARALLEL - 993)) | (1 << (PlSqlParser.NO_PARTIAL_COMMIT - 993)) | (1 << (PlSqlParser.NO_PARTIAL_JOIN - 993)) | (1 << (PlSqlParser.NO_PARTIAL_ROLLUP_PUSHDOWN - 993)))) !== 0) || ((((_la - 1025)) & ~0x1f) == 0 && ((1 << (_la - 1025)) & ((1 << (PlSqlParser.NOPARTITION - 1025)) | (1 << (PlSqlParser.NO_PLACE_DISTINCT - 1025)) | (1 << (PlSqlParser.NO_PLACE_GROUP_BY - 1025)) | (1 << (PlSqlParser.NO_PQ_CONCURRENT_UNION - 1025)) | (1 << (PlSqlParser.NO_PQ_MAP - 1025)) | (1 << (PlSqlParser.NO_PQ_REPLICATE - 1025)) | (1 << (PlSqlParser.NO_PQ_SKEW - 1025)) | (1 << (PlSqlParser.NO_PRUNE_GSETS - 1025)) | (1 << (PlSqlParser.NO_PULL_PRED - 1025)) | (1 << (PlSqlParser.NO_PUSH_PRED - 1025)) | (1 << (PlSqlParser.NO_PUSH_SUBQ - 1025)) | (1 << (PlSqlParser.NO_PX_FAULT_TOLERANCE - 1025)) | (1 << (PlSqlParser.NO_PX_JOIN_FILTER - 1025)) | (1 << (PlSqlParser.NO_QKN_BUFF - 1025)) | (1 << (PlSqlParser.NO_QUERY_TRANSFORMATION - 1025)) | (1 << (PlSqlParser.NO_REF_CASCADE - 1025)) | (1 << (PlSqlParser.NORELOCATE - 1025)) | (1 << (PlSqlParser.NORELY - 1025)) | (1 << (PlSqlParser.NOREPAIR - 1025)) | (1 << (PlSqlParser.NOREPLAY - 1025)) | (1 << (PlSqlParser.NORESETLOGS - 1025)) | (1 << (PlSqlParser.NO_RESULT_CACHE - 1025)) | (1 << (PlSqlParser.NOREVERSE - 1025)) | (1 << (PlSqlParser.NO_REWRITE - 1025)) | (1 << (PlSqlParser.NOREWRITE - 1025)) | (1 << (PlSqlParser.NORMAL - 1025)) | (1 << (PlSqlParser.NO_ROOT_SW_FOR_LOCAL - 1025)) | (1 << (PlSqlParser.NOROWDEPENDENCIES - 1025)) | (1 << (PlSqlParser.NOSCHEMACHECK - 1025)) | (1 << (PlSqlParser.NOSEGMENT - 1025)) | (1 << (PlSqlParser.NO_SEMIJOIN - 1025)) | (1 << (PlSqlParser.NO_SEMI_TO_INNER - 1025)))) !== 0) || ((((_la - 1057)) & ~0x1f) == 0 && ((1 << (_la - 1057)) & ((1 << (PlSqlParser.NO_SET_TO_JOIN - 1057)) | (1 << (PlSqlParser.NOSORT - 1057)) | (1 << (PlSqlParser.NO_SQL_TRANSLATION - 1057)) | (1 << (PlSqlParser.NO_SQL_TUNE - 1057)) | (1 << (PlSqlParser.NO_STAR_TRANSFORMATION - 1057)) | (1 << (PlSqlParser.NO_STATEMENT_QUEUING - 1057)) | (1 << (PlSqlParser.NO_STATS_GSETS - 1057)) | (1 << (PlSqlParser.NOSTRICT - 1057)) | (1 << (PlSqlParser.NO_SUBQUERY_PRUNING - 1057)) | (1 << (PlSqlParser.NO_SUBSTRB_PAD - 1057)) | (1 << (PlSqlParser.NO_SWAP_JOIN_INPUTS - 1057)) | (1 << (PlSqlParser.NOSWITCH - 1057)) | (1 << (PlSqlParser.NO_TABLE_LOOKUP_BY_NL - 1057)) | (1 << (PlSqlParser.NO_TEMP_TABLE - 1057)) | (1 << (PlSqlParser.NOTHING - 1057)) | (1 << (PlSqlParser.NOTIFICATION - 1057)) | (1 << (PlSqlParser.NO_TRANSFORM_DISTINCT_AGG - 1057)) | (1 << (PlSqlParser.NO_UNNEST - 1057)) | (1 << (PlSqlParser.NO_USE_CUBE - 1057)) | (1 << (PlSqlParser.NO_USE_HASH_AGGREGATION - 1057)) | (1 << (PlSqlParser.NO_USE_HASH_GBY_FOR_PUSHDOWN - 1057)) | (1 << (PlSqlParser.NO_USE_HASH - 1057)) | (1 << (PlSqlParser.NO_USE_INVISIBLE_INDEXES - 1057)) | (1 << (PlSqlParser.NO_USE_MERGE - 1057)) | (1 << (PlSqlParser.NO_USE_NL - 1057)) | (1 << (PlSqlParser.NO_USE_VECTOR_AGGREGATION - 1057)) | (1 << (PlSqlParser.NOVALIDATE - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM_DIMS - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM_FACT - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM - 1057)))) !== 0) || ((((_la - 1089)) & ~0x1f) == 0 && ((1 << (_la - 1089)) & ((1 << (PlSqlParser.NO_XDB_FASTPATH_INSERT - 1089)) | (1 << (PlSqlParser.NO_XML_DML_REWRITE - 1089)) | (1 << (PlSqlParser.NO_XMLINDEX_REWRITE_IN_SELECT - 1089)) | (1 << (PlSqlParser.NO_XMLINDEX_REWRITE - 1089)) | (1 << (PlSqlParser.NO_XML_QUERY_REWRITE - 1089)) | (1 << (PlSqlParser.NO_ZONEMAP - 1089)) | (1 << (PlSqlParser.NTH_VALUE - 1089)) | (1 << (PlSqlParser.NULLIF - 1089)) | (1 << (PlSqlParser.NULLS - 1089)) | (1 << (PlSqlParser.NUMBER - 1089)) | (1 << (PlSqlParser.NUMERIC - 1089)) | (1 << (PlSqlParser.NUM_INDEX_KEYS - 1089)) | (1 << (PlSqlParser.NUMTODSINTERVAL - 1089)) | (1 << (PlSqlParser.NUMTOYMINTERVAL - 1089)) | (1 << (PlSqlParser.NVARCHAR2 - 1089)) | (1 << (PlSqlParser.NVL2 - 1089)) | (1 << (PlSqlParser.OBJECT2XML - 1089)) | (1 << (PlSqlParser.OBJECT - 1089)) | (1 << (PlSqlParser.OBJ_ID - 1089)) | (1 << (PlSqlParser.OBJNO - 1089)) | (1 << (PlSqlParser.OBJNO_REUSE - 1089)) | (1 << (PlSqlParser.OCCURENCES - 1089)) | (1 << (PlSqlParser.OFFLINE - 1089)) | (1 << (PlSqlParser.OFF - 1089)) | (1 << (PlSqlParser.OFFSET - 1089)) | (1 << (PlSqlParser.OIDINDEX - 1089)) | (1 << (PlSqlParser.OID - 1089)) | (1 << (PlSqlParser.OLAP - 1089)) | (1 << (PlSqlParser.OLD - 1089)) | (1 << (PlSqlParser.OLD_PUSH_PRED - 1089)))) !== 0) || ((((_la - 1121)) & ~0x1f) == 0 && ((1 << (_la - 1121)) & ((1 << (PlSqlParser.OLS - 1121)) | (1 << (PlSqlParser.OLTP - 1121)) | (1 << (PlSqlParser.OMIT - 1121)) | (1 << (PlSqlParser.ONE - 1121)) | (1 << (PlSqlParser.ONLINE - 1121)) | (1 << (PlSqlParser.ONLY - 1121)) | (1 << (PlSqlParser.OPAQUE - 1121)) | (1 << (PlSqlParser.OPAQUE_TRANSFORM - 1121)) | (1 << (PlSqlParser.OPAQUE_XCANONICAL - 1121)) | (1 << (PlSqlParser.OPCODE - 1121)) | (1 << (PlSqlParser.OPEN - 1121)) | (1 << (PlSqlParser.OPERATIONS - 1121)) | (1 << (PlSqlParser.OPERATOR - 1121)) | (1 << (PlSqlParser.OPT_ESTIMATE - 1121)) | (1 << (PlSqlParser.OPTIMAL - 1121)) | (1 << (PlSqlParser.OPTIMIZE - 1121)) | (1 << (PlSqlParser.OPTIMIZER_FEATURES_ENABLE - 1121)) | (1 << (PlSqlParser.OPTIMIZER_GOAL - 1121)) | (1 << (PlSqlParser.OPT_PARAM - 1121)) | (1 << (PlSqlParser.ORA_BRANCH - 1121)) | (1 << (PlSqlParser.ORA_CHECK_ACL - 1121)) | (1 << (PlSqlParser.ORA_CHECK_PRIVILEGE - 1121)) | (1 << (PlSqlParser.ORA_CLUSTERING - 1121)) | (1 << (PlSqlParser.ORADATA - 1121)) | (1 << (PlSqlParser.ORADEBUG - 1121)) | (1 << (PlSqlParser.ORA_DST_AFFECTED - 1121)) | (1 << (PlSqlParser.ORA_DST_CONVERT - 1121)) | (1 << (PlSqlParser.ORA_DST_ERROR - 1121)) | (1 << (PlSqlParser.ORA_GET_ACLIDS - 1121)))) !== 0) || ((((_la - 1153)) & ~0x1f) == 0 && ((1 << (_la - 1153)) & ((1 << (PlSqlParser.ORA_GET_PRIVILEGES - 1153)) | (1 << (PlSqlParser.ORA_HASH - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_USERID - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_USER - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_XS_USER_GUID - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_XS_USER - 1153)) | (1 << (PlSqlParser.ORA_RAWCOMPARE - 1153)) | (1 << (PlSqlParser.ORA_RAWCONCAT - 1153)) | (1 << (PlSqlParser.ORA_ROWSCN - 1153)) | (1 << (PlSqlParser.ORA_ROWSCN_RAW - 1153)) | (1 << (PlSqlParser.ORA_ROWVERSION - 1153)) | (1 << (PlSqlParser.ORA_TABVERSION - 1153)) | (1 << (PlSqlParser.ORA_WRITE_TIME - 1153)) | (1 << (PlSqlParser.ORDERED - 1153)) | (1 << (PlSqlParser.ORDERED_PREDICATES - 1153)) | (1 << (PlSqlParser.ORDINALITY - 1153)) | (1 << (PlSqlParser.OR_EXPAND - 1153)) | (1 << (PlSqlParser.ORGANIZATION - 1153)) | (1 << (PlSqlParser.OR_PREDICATES - 1153)) | (1 << (PlSqlParser.OSERROR - 1153)) | (1 << (PlSqlParser.OTHER - 1153)) | (1 << (PlSqlParser.OUTER_JOIN_TO_ANTI - 1153)) | (1 << (PlSqlParser.OUTER_JOIN_TO_INNER - 1153)) | (1 << (PlSqlParser.OUTER - 1153)) | (1 << (PlSqlParser.OUTLINE_LEAF - 1153)) | (1 << (PlSqlParser.OUTLINE - 1153)) | (1 << (PlSqlParser.OUT_OF_LINE - 1153)) | (1 << (PlSqlParser.OUT - 1153)) | (1 << (PlSqlParser.OVERFLOW_NOMOVE - 1153)) | (1 << (PlSqlParser.OVERFLOW - 1153)))) !== 0) || ((((_la - 1185)) & ~0x1f) == 0 && ((1 << (_la - 1185)) & ((1 << (PlSqlParser.OVERLAPS - 1185)) | (1 << (PlSqlParser.OVER - 1185)) | (1 << (PlSqlParser.OVERRIDING - 1185)) | (1 << (PlSqlParser.OWNER - 1185)) | (1 << (PlSqlParser.OWNERSHIP - 1185)) | (1 << (PlSqlParser.OWN - 1185)) | (1 << (PlSqlParser.PACKAGE - 1185)) | (1 << (PlSqlParser.PACKAGES - 1185)) | (1 << (PlSqlParser.PARALLEL_ENABLE - 1185)) | (1 << (PlSqlParser.PARALLEL_INDEX - 1185)) | (1 << (PlSqlParser.PARALLEL - 1185)) | (1 << (PlSqlParser.PARAMETERS - 1185)) | (1 << (PlSqlParser.PARAM - 1185)) | (1 << (PlSqlParser.PARENT - 1185)) | (1 << (PlSqlParser.PARITY - 1185)) | (1 << (PlSqlParser.PARTIAL_JOIN - 1185)) | (1 << (PlSqlParser.PARTIALLY - 1185)) | (1 << (PlSqlParser.PARTIAL - 1185)) | (1 << (PlSqlParser.PARTIAL_ROLLUP_PUSHDOWN - 1185)) | (1 << (PlSqlParser.PARTITION_HASH - 1185)) | (1 << (PlSqlParser.PARTITION_LIST - 1185)) | (1 << (PlSqlParser.PARTITION - 1185)) | (1 << (PlSqlParser.PARTITION_RANGE - 1185)) | (1 << (PlSqlParser.PARTITIONS - 1185)) | (1 << (PlSqlParser.PARTNUMINST - 1185)) | (1 << (PlSqlParser.PASSING - 1185)) | (1 << (PlSqlParser.PASSWORD_GRACE_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD_LIFE_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD_LOCK_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD - 1185)) | (1 << (PlSqlParser.PASSWORD_REUSE_MAX - 1185)))) !== 0) || ((((_la - 1217)) & ~0x1f) == 0 && ((1 << (_la - 1217)) & ((1 << (PlSqlParser.PASSWORD_REUSE_TIME - 1217)) | (1 << (PlSqlParser.PASSWORD_VERIFY_FUNCTION - 1217)) | (1 << (PlSqlParser.PAST - 1217)) | (1 << (PlSqlParser.PATCH - 1217)) | (1 << (PlSqlParser.PATH - 1217)) | (1 << (PlSqlParser.PATH_PREFIX - 1217)) | (1 << (PlSqlParser.PATHS - 1217)) | (1 << (PlSqlParser.PATTERN - 1217)) | (1 << (PlSqlParser.PBL_HS_BEGIN - 1217)) | (1 << (PlSqlParser.PBL_HS_END - 1217)) | (1 << (PlSqlParser.PCTINCREASE - 1217)) | (1 << (PlSqlParser.PCTTHRESHOLD - 1217)) | (1 << (PlSqlParser.PCTUSED - 1217)) | (1 << (PlSqlParser.PCTVERSION - 1217)) | (1 << (PlSqlParser.PENDING - 1217)) | (1 << (PlSqlParser.PERCENT_KEYWORD - 1217)) | (1 << (PlSqlParser.PERCENT_RANKM - 1217)) | (1 << (PlSqlParser.PERFORMANCE - 1217)) | (1 << (PlSqlParser.PERIOD_KEYWORD - 1217)) | (1 << (PlSqlParser.PERMANENT - 1217)) | (1 << (PlSqlParser.PERMISSION - 1217)) | (1 << (PlSqlParser.PERMUTE - 1217)) | (1 << (PlSqlParser.PER - 1217)) | (1 << (PlSqlParser.PFILE - 1217)) | (1 << (PlSqlParser.PHYSICAL - 1217)))) !== 0) || ((((_la - 1249)) & ~0x1f) == 0 && ((1 << (_la - 1249)) & ((1 << (PlSqlParser.PIKEY - 1249)) | (1 << (PlSqlParser.PIPELINED - 1249)) | (1 << (PlSqlParser.PIV_GB - 1249)) | (1 << (PlSqlParser.PIVOT - 1249)) | (1 << (PlSqlParser.PIV_SSF - 1249)) | (1 << (PlSqlParser.PLACE_DISTINCT - 1249)) | (1 << (PlSqlParser.PLACE_GROUP_BY - 1249)) | (1 << (PlSqlParser.PLAN - 1249)) | (1 << (PlSqlParser.PLSCOPE_SETTINGS - 1249)) | (1 << (PlSqlParser.PLS_INTEGER - 1249)) | (1 << (PlSqlParser.PLSQL_CCFLAGS - 1249)) | (1 << (PlSqlParser.PLSQL_CODE_TYPE - 1249)) | (1 << (PlSqlParser.PLSQL_DEBUG - 1249)) | (1 << (PlSqlParser.PLSQL_OPTIMIZE_LEVEL - 1249)) | (1 << (PlSqlParser.PLSQL_WARNINGS - 1249)) | (1 << (PlSqlParser.PLUGGABLE - 1249)) | (1 << (PlSqlParser.POINT - 1249)) | (1 << (PlSqlParser.POLICY - 1249)) | (1 << (PlSqlParser.POOL_16K - 1249)) | (1 << (PlSqlParser.POOL_2K - 1249)) | (1 << (PlSqlParser.POOL_32K - 1249)) | (1 << (PlSqlParser.POOL_4K - 1249)) | (1 << (PlSqlParser.POOL_8K - 1249)) | (1 << (PlSqlParser.POSITIVEN - 1249)) | (1 << (PlSqlParser.POSITIVE - 1249)) | (1 << (PlSqlParser.POST_TRANSACTION - 1249)) | (1 << (PlSqlParser.POWERMULTISET_BY_CARDINALITY - 1249)) | (1 << (PlSqlParser.POWERMULTISET - 1249)) | (1 << (PlSqlParser.POWER - 1249)) | (1 << (PlSqlParser.PQ_CONCURRENT_UNION - 1249)) | (1 << (PlSqlParser.PQ_DISTRIBUTE - 1249)))) !== 0) || ((((_la - 1281)) & ~0x1f) == 0 && ((1 << (_la - 1281)) & ((1 << (PlSqlParser.PQ_DISTRIBUTE_WINDOW - 1281)) | (1 << (PlSqlParser.PQ_FILTER - 1281)) | (1 << (PlSqlParser.PQ_MAP - 1281)) | (1 << (PlSqlParser.PQ_NOMAP - 1281)) | (1 << (PlSqlParser.PQ_REPLICATE - 1281)) | (1 << (PlSqlParser.PQ_SKEW - 1281)) | (1 << (PlSqlParser.PRAGMA - 1281)) | (1 << (PlSqlParser.PREBUILT - 1281)) | (1 << (PlSqlParser.PRECEDES - 1281)) | (1 << (PlSqlParser.PRECEDING - 1281)) | (1 << (PlSqlParser.PRECISION - 1281)) | (1 << (PlSqlParser.PRECOMPUTE_SUBQUERY - 1281)) | (1 << (PlSqlParser.PREDICATE_REORDERS - 1281)) | (1 << (PlSqlParser.PRELOAD - 1281)) | (1 << (PlSqlParser.PREPARE - 1281)) | (1 << (PlSqlParser.PRESENTNNV - 1281)) | (1 << (PlSqlParser.PRESENT - 1281)) | (1 << (PlSqlParser.PRESENTV - 1281)) | (1 << (PlSqlParser.PRESERVE_OID - 1281)) | (1 << (PlSqlParser.PRESERVE - 1281)) | (1 << (PlSqlParser.PRETTY - 1281)) | (1 << (PlSqlParser.PREVIOUS - 1281)) | (1 << (PlSqlParser.PREV - 1281)) | (1 << (PlSqlParser.PRIMARY - 1281)) | (1 << (PlSqlParser.PRINTBLOBTOCLOB - 1281)) | (1 << (PlSqlParser.PRIORITY - 1281)) | (1 << (PlSqlParser.PRIVATE - 1281)) | (1 << (PlSqlParser.PRIVATE_SGA - 1281)) | (1 << (PlSqlParser.PRIVILEGED - 1281)) | (1 << (PlSqlParser.PRIVILEGE - 1281)) | (1 << (PlSqlParser.PRIVILEGES - 1281)))) !== 0) || ((((_la - 1313)) & ~0x1f) == 0 && ((1 << (_la - 1313)) & ((1 << (PlSqlParser.PROCEDURAL - 1313)) | (1 << (PlSqlParser.PROCEDURE - 1313)) | (1 << (PlSqlParser.PROCESS - 1313)) | (1 << (PlSqlParser.PROFILE - 1313)) | (1 << (PlSqlParser.PROGRAM - 1313)) | (1 << (PlSqlParser.PROJECT - 1313)) | (1 << (PlSqlParser.PROPAGATE - 1313)) | (1 << (PlSqlParser.PROTECTED - 1313)) | (1 << (PlSqlParser.PROTECTION - 1313)) | (1 << (PlSqlParser.PROXY - 1313)) | (1 << (PlSqlParser.PRUNING - 1313)) | (1 << (PlSqlParser.PULL_PRED - 1313)) | (1 << (PlSqlParser.PURGE - 1313)) | (1 << (PlSqlParser.PUSH_PRED - 1313)) | (1 << (PlSqlParser.PUSH_SUBQ - 1313)) | (1 << (PlSqlParser.PX_FAULT_TOLERANCE - 1313)) | (1 << (PlSqlParser.PX_GRANULE - 1313)) | (1 << (PlSqlParser.PX_JOIN_FILTER - 1313)) | (1 << (PlSqlParser.QB_NAME - 1313)) | (1 << (PlSqlParser.QUERY_BLOCK - 1313)) | (1 << (PlSqlParser.QUERY - 1313)) | (1 << (PlSqlParser.QUEUE_CURR - 1313)) | (1 << (PlSqlParser.QUEUE - 1313)) | (1 << (PlSqlParser.QUEUE_ROWP - 1313)) | (1 << (PlSqlParser.QUIESCE - 1313)) | (1 << (PlSqlParser.QUORUM - 1313)) | (1 << (PlSqlParser.QUOTA - 1313)) | (1 << (PlSqlParser.RAISE - 1313)) | (1 << (PlSqlParser.RANDOM_LOCAL - 1313)) | (1 << (PlSqlParser.RANDOM - 1313)) | (1 << (PlSqlParser.RANGE - 1313)))) !== 0) || ((((_la - 1345)) & ~0x1f) == 0 && ((1 << (_la - 1345)) & ((1 << (PlSqlParser.RANKM - 1345)) | (1 << (PlSqlParser.RAPIDLY - 1345)) | (1 << (PlSqlParser.RAW - 1345)) | (1 << (PlSqlParser.RAWTOHEX - 1345)) | (1 << (PlSqlParser.RAWTONHEX - 1345)) | (1 << (PlSqlParser.RBA - 1345)) | (1 << (PlSqlParser.RBO_OUTLINE - 1345)) | (1 << (PlSqlParser.RDBA - 1345)) | (1 << (PlSqlParser.READ - 1345)) | (1 << (PlSqlParser.READS - 1345)) | (1 << (PlSqlParser.REALM - 1345)) | (1 << (PlSqlParser.REAL - 1345)) | (1 << (PlSqlParser.REBALANCE - 1345)) | (1 << (PlSqlParser.REBUILD - 1345)) | (1 << (PlSqlParser.RECORD - 1345)) | (1 << (PlSqlParser.RECORDS_PER_BLOCK - 1345)) | (1 << (PlSqlParser.RECOVERABLE - 1345)) | (1 << (PlSqlParser.RECOVER - 1345)) | (1 << (PlSqlParser.RECOVERY - 1345)) | (1 << (PlSqlParser.RECYCLEBIN - 1345)) | (1 << (PlSqlParser.RECYCLE - 1345)) | (1 << (PlSqlParser.REDACTION - 1345)) | (1 << (PlSqlParser.REDEFINE - 1345)) | (1 << (PlSqlParser.REDO - 1345)) | (1 << (PlSqlParser.REDUCED - 1345)) | (1 << (PlSqlParser.REDUNDANCY - 1345)) | (1 << (PlSqlParser.REF_CASCADE_CURSOR - 1345)) | (1 << (PlSqlParser.REFERENCED - 1345)) | (1 << (PlSqlParser.REFERENCE - 1345)) | (1 << (PlSqlParser.REFERENCES - 1345)) | (1 << (PlSqlParser.REFERENCING - 1345)) | (1 << (PlSqlParser.REF - 1345)))) !== 0) || ((((_la - 1377)) & ~0x1f) == 0 && ((1 << (_la - 1377)) & ((1 << (PlSqlParser.REFRESH - 1377)) | (1 << (PlSqlParser.REFTOHEX - 1377)) | (1 << (PlSqlParser.REGEXP_COUNT - 1377)) | (1 << (PlSqlParser.REGEXP_INSTR - 1377)) | (1 << (PlSqlParser.REGEXP_LIKE - 1377)) | (1 << (PlSqlParser.REGEXP_REPLACE - 1377)) | (1 << (PlSqlParser.REGEXP_SUBSTR - 1377)) | (1 << (PlSqlParser.REGISTER - 1377)) | (1 << (PlSqlParser.REGR_AVGX - 1377)) | (1 << (PlSqlParser.REGR_AVGY - 1377)) | (1 << (PlSqlParser.REGR_COUNT - 1377)) | (1 << (PlSqlParser.REGR_INTERCEPT - 1377)) | (1 << (PlSqlParser.REGR_R2 - 1377)) | (1 << (PlSqlParser.REGR_SLOPE - 1377)) | (1 << (PlSqlParser.REGR_SXX - 1377)) | (1 << (PlSqlParser.REGR_SXY - 1377)) | (1 << (PlSqlParser.REGR_SYY - 1377)) | (1 << (PlSqlParser.REGULAR - 1377)) | (1 << (PlSqlParser.REJECT - 1377)) | (1 << (PlSqlParser.REKEY - 1377)) | (1 << (PlSqlParser.RELATIONAL - 1377)) | (1 << (PlSqlParser.RELOCATE - 1377)) | (1 << (PlSqlParser.RELY - 1377)) | (1 << (PlSqlParser.REMAINDER - 1377)) | (1 << (PlSqlParser.REMOTE_MAPPED - 1377)) | (1 << (PlSqlParser.REMOVE - 1377)) | (1 << (PlSqlParser.RENAME - 1377)) | (1 << (PlSqlParser.REPAIR - 1377)) | (1 << (PlSqlParser.REPEAT - 1377)) | (1 << (PlSqlParser.REPLACE - 1377)) | (1 << (PlSqlParser.REPLICATION - 1377)))) !== 0) || ((((_la - 1409)) & ~0x1f) == 0 && ((1 << (_la - 1409)) & ((1 << (PlSqlParser.REQUIRED - 1409)) | (1 << (PlSqlParser.RESETLOGS - 1409)) | (1 << (PlSqlParser.RESET - 1409)) | (1 << (PlSqlParser.RESIZE - 1409)) | (1 << (PlSqlParser.RESOLVE - 1409)) | (1 << (PlSqlParser.RESOLVER - 1409)) | (1 << (PlSqlParser.RESPECT - 1409)) | (1 << (PlSqlParser.RESTART - 1409)) | (1 << (PlSqlParser.RESTORE_AS_INTERVALS - 1409)) | (1 << (PlSqlParser.RESTORE - 1409)) | (1 << (PlSqlParser.RESTRICT_ALL_REF_CONS - 1409)) | (1 << (PlSqlParser.RESTRICTED - 1409)) | (1 << (PlSqlParser.RESTRICT_REFERENCES - 1409)) | (1 << (PlSqlParser.RESTRICT - 1409)) | (1 << (PlSqlParser.RESULT_CACHE - 1409)) | (1 << (PlSqlParser.RESULT - 1409)) | (1 << (PlSqlParser.RESUMABLE - 1409)) | (1 << (PlSqlParser.RESUME - 1409)) | (1 << (PlSqlParser.RETENTION - 1409)) | (1 << (PlSqlParser.RETRY_ON_ROW_CHANGE - 1409)) | (1 << (PlSqlParser.RETURNING - 1409)) | (1 << (PlSqlParser.RETURN - 1409)) | (1 << (PlSqlParser.REUSE - 1409)) | (1 << (PlSqlParser.REVERSE - 1409)) | (1 << (PlSqlParser.REWRITE_OR_ERROR - 1409)) | (1 << (PlSqlParser.REWRITE - 1409)) | (1 << (PlSqlParser.RIGHT - 1409)) | (1 << (PlSqlParser.ROLE - 1409)) | (1 << (PlSqlParser.ROLESET - 1409)) | (1 << (PlSqlParser.ROLES - 1409)))) !== 0) || ((((_la - 1441)) & ~0x1f) == 0 && ((1 << (_la - 1441)) & ((1 << (PlSqlParser.ROLLBACK - 1441)) | (1 << (PlSqlParser.ROLLING - 1441)) | (1 << (PlSqlParser.ROLLUP - 1441)) | (1 << (PlSqlParser.ROWDEPENDENCIES - 1441)) | (1 << (PlSqlParser.ROWID_MAPPING_TABLE - 1441)) | (1 << (PlSqlParser.ROWID - 1441)) | (1 << (PlSqlParser.ROWIDTOCHAR - 1441)) | (1 << (PlSqlParser.ROWIDTONCHAR - 1441)) | (1 << (PlSqlParser.ROW_LENGTH - 1441)) | (1 << (PlSqlParser.ROWNUM - 1441)) | (1 << (PlSqlParser.ROW - 1441)) | (1 << (PlSqlParser.ROWS - 1441)) | (1 << (PlSqlParser.RPAD - 1441)) | (1 << (PlSqlParser.RTRIM - 1441)) | (1 << (PlSqlParser.RULE - 1441)) | (1 << (PlSqlParser.RULES - 1441)) | (1 << (PlSqlParser.RUNNING - 1441)) | (1 << (PlSqlParser.SALT - 1441)) | (1 << (PlSqlParser.SAMPLE - 1441)) | (1 << (PlSqlParser.SAVE_AS_INTERVALS - 1441)) | (1 << (PlSqlParser.SAVEPOINT - 1441)) | (1 << (PlSqlParser.SAVE - 1441)) | (1 << (PlSqlParser.SB4 - 1441)) | (1 << (PlSqlParser.SCALE_ROWS - 1441)) | (1 << (PlSqlParser.SCALE - 1441)) | (1 << (PlSqlParser.SCAN_INSTANCES - 1441)) | (1 << (PlSqlParser.SCAN - 1441)) | (1 << (PlSqlParser.SCHEDULER - 1441)) | (1 << (PlSqlParser.SCHEMACHECK - 1441)) | (1 << (PlSqlParser.SCHEMA - 1441)) | (1 << (PlSqlParser.SCN_ASCENDING - 1441)) | (1 << (PlSqlParser.SCN - 1441)))) !== 0) || ((((_la - 1473)) & ~0x1f) == 0 && ((1 << (_la - 1473)) & ((1 << (PlSqlParser.SCOPE - 1473)) | (1 << (PlSqlParser.SCRUB - 1473)) | (1 << (PlSqlParser.SD_ALL - 1473)) | (1 << (PlSqlParser.SD_INHIBIT - 1473)) | (1 << (PlSqlParser.SDO_GEOM_MBR - 1473)) | (1 << (PlSqlParser.SD_SHOW - 1473)) | (1 << (PlSqlParser.SEARCH - 1473)) | (1 << (PlSqlParser.SECOND - 1473)) | (1 << (PlSqlParser.SECRET - 1473)) | (1 << (PlSqlParser.SECUREFILE_DBA - 1473)) | (1 << (PlSqlParser.SECUREFILE - 1473)) | (1 << (PlSqlParser.SECURITY - 1473)) | (1 << (PlSqlParser.SEED - 1473)) | (1 << (PlSqlParser.SEG_BLOCK - 1473)) | (1 << (PlSqlParser.SEG_FILE - 1473)) | (1 << (PlSqlParser.SEGMENT - 1473)) | (1 << (PlSqlParser.SELECTIVITY - 1473)) | (1 << (PlSqlParser.SELF - 1473)) | (1 << (PlSqlParser.SEMIJOIN_DRIVER - 1473)) | (1 << (PlSqlParser.SEMIJOIN - 1473)) | (1 << (PlSqlParser.SEMI_TO_INNER - 1473)) | (1 << (PlSqlParser.SEQUENCED - 1473)) | (1 << (PlSqlParser.SEQUENCE - 1473)) | (1 << (PlSqlParser.SEQUENTIAL - 1473)) | (1 << (PlSqlParser.SERIALIZABLE - 1473)) | (1 << (PlSqlParser.SERIALLY_REUSABLE - 1473)) | (1 << (PlSqlParser.SERIAL - 1473)) | (1 << (PlSqlParser.SERVERERROR - 1473)) | (1 << (PlSqlParser.SERVICE_NAME_CONVERT - 1473)) | (1 << (PlSqlParser.SERVICES - 1473)))) !== 0) || ((((_la - 1505)) & ~0x1f) == 0 && ((1 << (_la - 1505)) & ((1 << (PlSqlParser.SESSION_CACHED_CURSORS - 1505)) | (1 << (PlSqlParser.SESSION - 1505)) | (1 << (PlSqlParser.SESSIONS_PER_USER - 1505)) | (1 << (PlSqlParser.SESSIONTIMEZONE - 1505)) | (1 << (PlSqlParser.SESSIONTZNAME - 1505)) | (1 << (PlSqlParser.SET - 1505)) | (1 << (PlSqlParser.SETS - 1505)) | (1 << (PlSqlParser.SETTINGS - 1505)) | (1 << (PlSqlParser.SET_TO_JOIN - 1505)) | (1 << (PlSqlParser.SEVERE - 1505)) | (1 << (PlSqlParser.SHARED_POOL - 1505)) | (1 << (PlSqlParser.SHARED - 1505)) | (1 << (PlSqlParser.SHARING - 1505)) | (1 << (PlSqlParser.SHELFLIFE - 1505)) | (1 << (PlSqlParser.SHOW - 1505)) | (1 << (PlSqlParser.SHRINK - 1505)) | (1 << (PlSqlParser.SHUTDOWN - 1505)) | (1 << (PlSqlParser.SIBLINGS - 1505)) | (1 << (PlSqlParser.SID - 1505)) | (1 << (PlSqlParser.SIGNAL_COMPONENT - 1505)) | (1 << (PlSqlParser.SIGNAL_FUNCTION - 1505)) | (1 << (PlSqlParser.SIGN - 1505)) | (1 << (PlSqlParser.SIGNTYPE - 1505)) | (1 << (PlSqlParser.SIMPLE_INTEGER - 1505)) | (1 << (PlSqlParser.SIMPLE - 1505)) | (1 << (PlSqlParser.SINGLE - 1505)) | (1 << (PlSqlParser.SINGLETASK - 1505)) | (1 << (PlSqlParser.SINH - 1505)) | (1 << (PlSqlParser.SIN - 1505)) | (1 << (PlSqlParser.SKIP_EXT_OPTIMIZER - 1505)))) !== 0) || ((((_la - 1537)) & ~0x1f) == 0 && ((1 << (_la - 1537)) & ((1 << (PlSqlParser.SKIP_ - 1537)) | (1 << (PlSqlParser.SKIP_UNQ_UNUSABLE_IDX - 1537)) | (1 << (PlSqlParser.SKIP_UNUSABLE_INDEXES - 1537)) | (1 << (PlSqlParser.SMALLFILE - 1537)) | (1 << (PlSqlParser.SMALLINT - 1537)) | (1 << (PlSqlParser.SNAPSHOT - 1537)) | (1 << (PlSqlParser.SOME - 1537)) | (1 << (PlSqlParser.SORT - 1537)) | (1 << (PlSqlParser.SOUNDEX - 1537)) | (1 << (PlSqlParser.SOURCE_FILE_DIRECTORY - 1537)) | (1 << (PlSqlParser.SOURCE_FILE_NAME_CONVERT - 1537)) | (1 << (PlSqlParser.SOURCE - 1537)) | (1 << (PlSqlParser.SPACE_KEYWORD - 1537)) | (1 << (PlSqlParser.SPECIFICATION - 1537)) | (1 << (PlSqlParser.SPFILE - 1537)) | (1 << (PlSqlParser.SPLIT - 1537)) | (1 << (PlSqlParser.SPREADSHEET - 1537)) | (1 << (PlSqlParser.SQLDATA - 1537)) | (1 << (PlSqlParser.SQLERROR - 1537)) | (1 << (PlSqlParser.SQLLDR - 1537)) | (1 << (PlSqlParser.SQL - 1537)) | (1 << (PlSqlParser.SQL_TRACE - 1537)) | (1 << (PlSqlParser.SQL_TRANSLATION_PROFILE - 1537)) | (1 << (PlSqlParser.SQRT - 1537)) | (1 << (PlSqlParser.STALE - 1537)) | (1 << (PlSqlParser.STANDALONE - 1537)) | (1 << (PlSqlParser.STANDARD_HASH - 1537)) | (1 << (PlSqlParser.STANDBY_MAX_DATA_DELAY - 1537)) | (1 << (PlSqlParser.STANDBYS - 1537)) | (1 << (PlSqlParser.STANDBY - 1537)) | (1 << (PlSqlParser.STAR - 1537)) | (1 << (PlSqlParser.STAR_TRANSFORMATION - 1537)))) !== 0) || ((((_la - 1570)) & ~0x1f) == 0 && ((1 << (_la - 1570)) & ((1 << (PlSqlParser.STARTUP - 1570)) | (1 << (PlSqlParser.STATEMENT_ID - 1570)) | (1 << (PlSqlParser.STATEMENT_QUEUING - 1570)) | (1 << (PlSqlParser.STATEMENTS - 1570)) | (1 << (PlSqlParser.STATEMENT - 1570)) | (1 << (PlSqlParser.STATE - 1570)) | (1 << (PlSqlParser.STATIC - 1570)) | (1 << (PlSqlParser.STATISTICS - 1570)) | (1 << (PlSqlParser.STATS_BINOMIAL_TEST - 1570)) | (1 << (PlSqlParser.STATS_CROSSTAB - 1570)) | (1 << (PlSqlParser.STATS_F_TEST - 1570)) | (1 << (PlSqlParser.STATS_KS_TEST - 1570)) | (1 << (PlSqlParser.STATS_MODE - 1570)) | (1 << (PlSqlParser.STATS_MW_TEST - 1570)) | (1 << (PlSqlParser.STATS_ONE_WAY_ANOVA - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_INDEP - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_INDEPU - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_ONE - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_PAIRED - 1570)) | (1 << (PlSqlParser.STATS_WSR_TEST - 1570)) | (1 << (PlSqlParser.STDDEV_POP - 1570)) | (1 << (PlSqlParser.STDDEV_SAMP - 1570)) | (1 << (PlSqlParser.STOP - 1570)) | (1 << (PlSqlParser.STORAGE - 1570)) | (1 << (PlSqlParser.STORE - 1570)) | (1 << (PlSqlParser.STREAMS - 1570)) | (1 << (PlSqlParser.STREAM - 1570)) | (1 << (PlSqlParser.STRICT - 1570)) | (1 << (PlSqlParser.STRING - 1570)) | (1 << (PlSqlParser.STRIPE_COLUMNS - 1570)) | (1 << (PlSqlParser.STRIPE_WIDTH - 1570)) | (1 << (PlSqlParser.STRIP - 1570)))) !== 0) || ((((_la - 1602)) & ~0x1f) == 0 && ((1 << (_la - 1602)) & ((1 << (PlSqlParser.STRUCTURE - 1602)) | (1 << (PlSqlParser.SUBMULTISET - 1602)) | (1 << (PlSqlParser.SUBPARTITION_REL - 1602)) | (1 << (PlSqlParser.SUBPARTITIONS - 1602)) | (1 << (PlSqlParser.SUBPARTITION - 1602)) | (1 << (PlSqlParser.SUBQUERIES - 1602)) | (1 << (PlSqlParser.SUBQUERY_PRUNING - 1602)) | (1 << (PlSqlParser.SUBSCRIBE - 1602)) | (1 << (PlSqlParser.SUBSET - 1602)) | (1 << (PlSqlParser.SUBSTITUTABLE - 1602)) | (1 << (PlSqlParser.SUBSTR2 - 1602)) | (1 << (PlSqlParser.SUBSTR4 - 1602)) | (1 << (PlSqlParser.SUBSTRB - 1602)) | (1 << (PlSqlParser.SUBSTRC - 1602)) | (1 << (PlSqlParser.SUBTYPE - 1602)) | (1 << (PlSqlParser.SUCCESSFUL - 1602)) | (1 << (PlSqlParser.SUCCESS - 1602)) | (1 << (PlSqlParser.SUMMARY - 1602)) | (1 << (PlSqlParser.SUPPLEMENTAL - 1602)) | (1 << (PlSqlParser.SUSPEND - 1602)) | (1 << (PlSqlParser.SWAP_JOIN_INPUTS - 1602)) | (1 << (PlSqlParser.SWITCHOVER - 1602)) | (1 << (PlSqlParser.SWITCH - 1602)) | (1 << (PlSqlParser.SYNCHRONOUS - 1602)) | (1 << (PlSqlParser.SYNC - 1602)) | (1 << (PlSqlParser.SYSASM - 1602)) | (1 << (PlSqlParser.SYS_AUDIT - 1602)) | (1 << (PlSqlParser.SYSAUX - 1602)) | (1 << (PlSqlParser.SYSBACKUP - 1602)) | (1 << (PlSqlParser.SYS_CHECKACL - 1602)) | (1 << (PlSqlParser.SYS_CHECK_PRIVILEGE - 1602)))) !== 0) || ((((_la - 1634)) & ~0x1f) == 0 && ((1 << (_la - 1634)) & ((1 << (PlSqlParser.SYS_CONNECT_BY_PATH - 1634)) | (1 << (PlSqlParser.SYS_CONTEXT - 1634)) | (1 << (PlSqlParser.SYSDATE - 1634)) | (1 << (PlSqlParser.SYSDBA - 1634)) | (1 << (PlSqlParser.SYS_DBURIGEN - 1634)) | (1 << (PlSqlParser.SYSDG - 1634)) | (1 << (PlSqlParser.SYS_DL_CURSOR - 1634)) | (1 << (PlSqlParser.SYS_DM_RXFORM_CHR - 1634)) | (1 << (PlSqlParser.SYS_DM_RXFORM_NUM - 1634)) | (1 << (PlSqlParser.SYS_DOM_COMPARE - 1634)) | (1 << (PlSqlParser.SYS_DST_PRIM2SEC - 1634)) | (1 << (PlSqlParser.SYS_DST_SEC2PRIM - 1634)) | (1 << (PlSqlParser.SYS_ET_BFILE_TO_RAW - 1634)) | (1 << (PlSqlParser.SYS_ET_BLOB_TO_IMAGE - 1634)) | (1 << (PlSqlParser.SYS_ET_IMAGE_TO_BLOB - 1634)) | (1 << (PlSqlParser.SYS_ET_RAW_TO_BFILE - 1634)) | (1 << (PlSqlParser.SYS_EXTPDTXT - 1634)) | (1 << (PlSqlParser.SYS_EXTRACT_UTC - 1634)) | (1 << (PlSqlParser.SYS_FBT_INSDEL - 1634)) | (1 << (PlSqlParser.SYS_FILTER_ACLS - 1634)) | (1 << (PlSqlParser.SYS_FNMATCHES - 1634)) | (1 << (PlSqlParser.SYS_FNREPLACE - 1634)) | (1 << (PlSqlParser.SYS_GET_ACLIDS - 1634)) | (1 << (PlSqlParser.SYS_GET_COL_ACLIDS - 1634)) | (1 << (PlSqlParser.SYS_GET_PRIVILEGES - 1634)) | (1 << (PlSqlParser.SYS_GETTOKENID - 1634)) | (1 << (PlSqlParser.SYS_GETXTIVAL - 1634)) | (1 << (PlSqlParser.SYS_GUID - 1634)) | (1 << (PlSqlParser.SYSGUID - 1634)) | (1 << (PlSqlParser.SYSKM - 1634)) | (1 << (PlSqlParser.SYS_MAKE_XMLNODEID - 1634)) | (1 << (PlSqlParser.SYS_MAKEXML - 1634)))) !== 0) || ((((_la - 1666)) & ~0x1f) == 0 && ((1 << (_la - 1666)) & ((1 << (PlSqlParser.SYS_MKXMLATTR - 1666)) | (1 << (PlSqlParser.SYS_MKXTI - 1666)) | (1 << (PlSqlParser.SYSOBJ - 1666)) | (1 << (PlSqlParser.SYS_OP_ADT2BIN - 1666)) | (1 << (PlSqlParser.SYS_OP_ADTCONS - 1666)) | (1 << (PlSqlParser.SYS_OP_ALSCRVAL - 1666)) | (1 << (PlSqlParser.SYS_OP_ATG - 1666)) | (1 << (PlSqlParser.SYS_OP_BIN2ADT - 1666)) | (1 << (PlSqlParser.SYS_OP_BITVEC - 1666)) | (1 << (PlSqlParser.SYS_OP_BL2R - 1666)) | (1 << (PlSqlParser.SYS_OP_BLOOM_FILTER_LIST - 1666)) | (1 << (PlSqlParser.SYS_OP_BLOOM_FILTER - 1666)) | (1 << (PlSqlParser.SYS_OP_C2C - 1666)) | (1 << (PlSqlParser.SYS_OP_CAST - 1666)) | (1 << (PlSqlParser.SYS_OP_CEG - 1666)) | (1 << (PlSqlParser.SYS_OP_CL2C - 1666)) | (1 << (PlSqlParser.SYS_OP_COMBINED_HASH - 1666)) | (1 << (PlSqlParser.SYS_OP_COMP - 1666)) | (1 << (PlSqlParser.SYS_OP_CONVERT - 1666)) | (1 << (PlSqlParser.SYS_OP_COUNTCHG - 1666)) | (1 << (PlSqlParser.SYS_OP_CSCONV - 1666)) | (1 << (PlSqlParser.SYS_OP_CSCONVTEST - 1666)) | (1 << (PlSqlParser.SYS_OP_CSR - 1666)) | (1 << (PlSqlParser.SYS_OP_CSX_PATCH - 1666)) | (1 << (PlSqlParser.SYS_OP_CYCLED_SEQ - 1666)) | (1 << (PlSqlParser.SYS_OP_DECOMP - 1666)) | (1 << (PlSqlParser.SYS_OP_DESCEND - 1666)) | (1 << (PlSqlParser.SYS_OP_DISTINCT - 1666)) | (1 << (PlSqlParser.SYS_OP_DRA - 1666)) | (1 << (PlSqlParser.SYS_OP_DUMP - 1666)) | (1 << (PlSqlParser.SYS_OP_DV_CHECK - 1666)) | (1 << (PlSqlParser.SYS_OP_ENFORCE_NOT_NULL - 1666)))) !== 0) || ((((_la - 1698)) & ~0x1f) == 0 && ((1 << (_la - 1698)) & ((1 << (PlSqlParser.SYSOPER - 1698)) | (1 << (PlSqlParser.SYS_OP_EXTRACT - 1698)) | (1 << (PlSqlParser.SYS_OP_GROUPING - 1698)) | (1 << (PlSqlParser.SYS_OP_GUID - 1698)) | (1 << (PlSqlParser.SYS_OP_HASH - 1698)) | (1 << (PlSqlParser.SYS_OP_IIX - 1698)) | (1 << (PlSqlParser.SYS_OP_ITR - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_CREATE - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_FILTER_LIST - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_FILTER - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_SUCCEEDED - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_USE - 1698)) | (1 << (PlSqlParser.SYS_OP_LBID - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2BLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2CLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2ID - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2NCLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2TYP - 1698)) | (1 << (PlSqlParser.SYS_OP_LSVI - 1698)) | (1 << (PlSqlParser.SYS_OP_LVL - 1698)) | (1 << (PlSqlParser.SYS_OP_MAKEOID - 1698)) | (1 << (PlSqlParser.SYS_OP_MAP_NONNULL - 1698)) | (1 << (PlSqlParser.SYS_OP_MSR - 1698)) | (1 << (PlSqlParser.SYS_OP_NICOMBINE - 1698)) | (1 << (PlSqlParser.SYS_OP_NIEXTRACT - 1698)) | (1 << (PlSqlParser.SYS_OP_NII - 1698)) | (1 << (PlSqlParser.SYS_OP_NIX - 1698)) | (1 << (PlSqlParser.SYS_OP_NOEXPAND - 1698)) | (1 << (PlSqlParser.SYS_OP_NTCIMG - 1698)) | (1 << (PlSqlParser.SYS_OP_NUMTORAW - 1698)) | (1 << (PlSqlParser.SYS_OP_OIDVALUE - 1698)) | (1 << (PlSqlParser.SYS_OP_OPNSIZE - 1698)))) !== 0) || ((((_la - 1730)) & ~0x1f) == 0 && ((1 << (_la - 1730)) & ((1 << (PlSqlParser.SYS_OP_PAR_1 - 1730)) | (1 << (PlSqlParser.SYS_OP_PARGID_1 - 1730)) | (1 << (PlSqlParser.SYS_OP_PARGID - 1730)) | (1 << (PlSqlParser.SYS_OP_PAR - 1730)) | (1 << (PlSqlParser.SYS_OP_PART_ID - 1730)) | (1 << (PlSqlParser.SYS_OP_PIVOT - 1730)) | (1 << (PlSqlParser.SYS_OP_R2O - 1730)) | (1 << (PlSqlParser.SYS_OP_RAWTONUM - 1730)) | (1 << (PlSqlParser.SYS_OP_RDTM - 1730)) | (1 << (PlSqlParser.SYS_OP_REF - 1730)) | (1 << (PlSqlParser.SYS_OP_RMTD - 1730)) | (1 << (PlSqlParser.SYS_OP_ROWIDTOOBJ - 1730)) | (1 << (PlSqlParser.SYS_OP_RPB - 1730)) | (1 << (PlSqlParser.SYS_OPTLOBPRBSC - 1730)) | (1 << (PlSqlParser.SYS_OP_TOSETID - 1730)) | (1 << (PlSqlParser.SYS_OP_TPR - 1730)) | (1 << (PlSqlParser.SYS_OP_TRTB - 1730)) | (1 << (PlSqlParser.SYS_OPTXICMP - 1730)) | (1 << (PlSqlParser.SYS_OPTXQCASTASNQ - 1730)) | (1 << (PlSqlParser.SYS_OP_UNDESCEND - 1730)) | (1 << (PlSqlParser.SYS_OP_VECAND - 1730)) | (1 << (PlSqlParser.SYS_OP_VECBIT - 1730)) | (1 << (PlSqlParser.SYS_OP_VECOR - 1730)) | (1 << (PlSqlParser.SYS_OP_VECXOR - 1730)) | (1 << (PlSqlParser.SYS_OP_VERSION - 1730)) | (1 << (PlSqlParser.SYS_OP_VREF - 1730)) | (1 << (PlSqlParser.SYS_OP_VVD - 1730)) | (1 << (PlSqlParser.SYS_OP_XMLCONS_FOR_CSX - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHATG - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHIDX - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHOP - 1730)) | (1 << (PlSqlParser.SYS_OP_XTXT2SQLT - 1730)))) !== 0) || ((((_la - 1762)) & ~0x1f) == 0 && ((1 << (_la - 1762)) & ((1 << (PlSqlParser.SYS_OP_ZONE_ID - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_DEPTH - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_MAXCHILD - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_PARENT - 1762)) | (1 << (PlSqlParser.SYS_PARALLEL_TXN - 1762)) | (1 << (PlSqlParser.SYS_PATHID_IS_ATTR - 1762)) | (1 << (PlSqlParser.SYS_PATHID_IS_NMSPC - 1762)) | (1 << (PlSqlParser.SYS_PATHID_LASTNAME - 1762)) | (1 << (PlSqlParser.SYS_PATHID_LASTNMSPC - 1762)) | (1 << (PlSqlParser.SYS_PATH_REVERSE - 1762)) | (1 << (PlSqlParser.SYS_PXQEXTRACT - 1762)) | (1 << (PlSqlParser.SYS_RAW_TO_XSID - 1762)) | (1 << (PlSqlParser.SYS_RID_ORDER - 1762)) | (1 << (PlSqlParser.SYS_ROW_DELTA - 1762)) | (1 << (PlSqlParser.SYS_SC_2_XMLT - 1762)) | (1 << (PlSqlParser.SYS_SYNRCIREDO - 1762)) | (1 << (PlSqlParser.SYSTEM_DEFINED - 1762)) | (1 << (PlSqlParser.SYSTEM - 1762)) | (1 << (PlSqlParser.SYSTIMESTAMP - 1762)) | (1 << (PlSqlParser.SYS_TYPEID - 1762)) | (1 << (PlSqlParser.SYS_UMAKEXML - 1762)) | (1 << (PlSqlParser.SYS_XMLANALYZE - 1762)) | (1 << (PlSqlParser.SYS_XMLCONTAINS - 1762)) | (1 << (PlSqlParser.SYS_XMLCONV - 1762)) | (1 << (PlSqlParser.SYS_XMLEXNSURI - 1762)) | (1 << (PlSqlParser.SYS_XMLGEN - 1762)) | (1 << (PlSqlParser.SYS_XMLI_LOC_ISNODE - 1762)) | (1 << (PlSqlParser.SYS_XMLI_LOC_ISTEXT - 1762)) | (1 << (PlSqlParser.SYS_XMLINSTR - 1762)) | (1 << (PlSqlParser.SYS_XMLLOCATOR_GETSVAL - 1762)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETCID - 1762)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETLOCATOR - 1762)))) !== 0) || ((((_la - 1794)) & ~0x1f) == 0 && ((1 << (_la - 1794)) & ((1 << (PlSqlParser.SYS_XMLNODEID_GETOKEY - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETPATHID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETPTRID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETRID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETSVAL - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETTID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID - 1794)) | (1 << (PlSqlParser.SYS_XMLT_2_SC - 1794)) | (1 << (PlSqlParser.SYS_XMLTRANSLATE - 1794)) | (1 << (PlSqlParser.SYS_XMLTYPE2SQL - 1794)) | (1 << (PlSqlParser.SYS_XQ_ASQLCNV - 1794)) | (1 << (PlSqlParser.SYS_XQ_ATOMCNVCHK - 1794)) | (1 << (PlSqlParser.SYS_XQBASEURI - 1794)) | (1 << (PlSqlParser.SYS_XQCASTABLEERRH - 1794)) | (1 << (PlSqlParser.SYS_XQCODEP2STR - 1794)) | (1 << (PlSqlParser.SYS_XQCODEPEQ - 1794)) | (1 << (PlSqlParser.SYS_XQCON2SEQ - 1794)) | (1 << (PlSqlParser.SYS_XQCONCAT - 1794)) | (1 << (PlSqlParser.SYS_XQDELETE - 1794)) | (1 << (PlSqlParser.SYS_XQDFLTCOLATION - 1794)) | (1 << (PlSqlParser.SYS_XQDOC - 1794)) | (1 << (PlSqlParser.SYS_XQDOCURI - 1794)) | (1 << (PlSqlParser.SYS_XQDURDIV - 1794)) | (1 << (PlSqlParser.SYS_XQED4URI - 1794)) | (1 << (PlSqlParser.SYS_XQENDSWITH - 1794)) | (1 << (PlSqlParser.SYS_XQERRH - 1794)) | (1 << (PlSqlParser.SYS_XQERR - 1794)) | (1 << (PlSqlParser.SYS_XQESHTMLURI - 1794)) | (1 << (PlSqlParser.SYS_XQEXLOBVAL - 1794)) | (1 << (PlSqlParser.SYS_XQEXSTWRP - 1794)) | (1 << (PlSqlParser.SYS_XQEXTRACT - 1794)) | (1 << (PlSqlParser.SYS_XQEXTRREF - 1794)))) !== 0) || ((((_la - 1826)) & ~0x1f) == 0 && ((1 << (_la - 1826)) & ((1 << (PlSqlParser.SYS_XQEXVAL - 1826)) | (1 << (PlSqlParser.SYS_XQFB2STR - 1826)) | (1 << (PlSqlParser.SYS_XQFNBOOL - 1826)) | (1 << (PlSqlParser.SYS_XQFNCMP - 1826)) | (1 << (PlSqlParser.SYS_XQFNDATIM - 1826)) | (1 << (PlSqlParser.SYS_XQFNLNAME - 1826)) | (1 << (PlSqlParser.SYS_XQFNNM - 1826)) | (1 << (PlSqlParser.SYS_XQFNNSURI - 1826)) | (1 << (PlSqlParser.SYS_XQFNPREDTRUTH - 1826)) | (1 << (PlSqlParser.SYS_XQFNQNM - 1826)) | (1 << (PlSqlParser.SYS_XQFNROOT - 1826)) | (1 << (PlSqlParser.SYS_XQFORMATNUM - 1826)) | (1 << (PlSqlParser.SYS_XQFTCONTAIN - 1826)) | (1 << (PlSqlParser.SYS_XQFUNCR - 1826)) | (1 << (PlSqlParser.SYS_XQGETCONTENT - 1826)) | (1 << (PlSqlParser.SYS_XQINDXOF - 1826)) | (1 << (PlSqlParser.SYS_XQINSERT - 1826)) | (1 << (PlSqlParser.SYS_XQINSPFX - 1826)) | (1 << (PlSqlParser.SYS_XQIRI2URI - 1826)) | (1 << (PlSqlParser.SYS_XQLANG - 1826)) | (1 << (PlSqlParser.SYS_XQLLNMFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQMKNODEREF - 1826)) | (1 << (PlSqlParser.SYS_XQNILLED - 1826)) | (1 << (PlSqlParser.SYS_XQNODENAME - 1826)) | (1 << (PlSqlParser.SYS_XQNORMSPACE - 1826)) | (1 << (PlSqlParser.SYS_XQNORMUCODE - 1826)) | (1 << (PlSqlParser.SYS_XQ_NRNG - 1826)) | (1 << (PlSqlParser.SYS_XQNSP4PFX - 1826)) | (1 << (PlSqlParser.SYS_XQNSPFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQPFXFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQ_PKSQL2XML - 1826)) | (1 << (PlSqlParser.SYS_XQPOLYABS - 1826)))) !== 0) || ((((_la - 1858)) & ~0x1f) == 0 && ((1 << (_la - 1858)) & ((1 << (PlSqlParser.SYS_XQPOLYADD - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCEL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCSTBL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCST - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYDIV - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYFLR - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYMOD - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYMUL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYRND - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYSQRT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYSUB - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYUMUS - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYUPLS - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVEQ - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVGE - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVGT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVLE - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVLT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVNE - 1858)) | (1 << (PlSqlParser.SYS_XQREF2VAL - 1858)) | (1 << (PlSqlParser.SYS_XQRENAME - 1858)) | (1 << (PlSqlParser.SYS_XQREPLACE - 1858)) | (1 << (PlSqlParser.SYS_XQRESVURI - 1858)) | (1 << (PlSqlParser.SYS_XQRNDHALF2EVN - 1858)) | (1 << (PlSqlParser.SYS_XQRSLVQNM - 1858)) | (1 << (PlSqlParser.SYS_XQRYENVPGET - 1858)) | (1 << (PlSqlParser.SYS_XQRYVARGET - 1858)) | (1 << (PlSqlParser.SYS_XQRYWRP - 1858)) | (1 << (PlSqlParser.SYS_XQSEQ2CON4XC - 1858)) | (1 << (PlSqlParser.SYS_XQSEQ2CON - 1858)) | (1 << (PlSqlParser.SYS_XQSEQDEEPEQ - 1858)) | (1 << (PlSqlParser.SYS_XQSEQINSB - 1858)))) !== 0) || ((((_la - 1890)) & ~0x1f) == 0 && ((1 << (_la - 1890)) & ((1 << (PlSqlParser.SYS_XQSEQRM - 1890)) | (1 << (PlSqlParser.SYS_XQSEQRVS - 1890)) | (1 << (PlSqlParser.SYS_XQSEQSUB - 1890)) | (1 << (PlSqlParser.SYS_XQSEQTYPMATCH - 1890)) | (1 << (PlSqlParser.SYS_XQSTARTSWITH - 1890)) | (1 << (PlSqlParser.SYS_XQSTATBURI - 1890)) | (1 << (PlSqlParser.SYS_XQSTR2CODEP - 1890)) | (1 << (PlSqlParser.SYS_XQSTRJOIN - 1890)) | (1 << (PlSqlParser.SYS_XQSUBSTRAFT - 1890)) | (1 << (PlSqlParser.SYS_XQSUBSTRBEF - 1890)) | (1 << (PlSqlParser.SYS_XQTOKENIZE - 1890)) | (1 << (PlSqlParser.SYS_XQTREATAS - 1890)) | (1 << (PlSqlParser.SYS_XQ_UPKXML2SQL - 1890)) | (1 << (PlSqlParser.SYS_XQXFORM - 1890)) | (1 << (PlSqlParser.SYS_XSID_TO_RAW - 1890)) | (1 << (PlSqlParser.SYS_ZMAP_FILTER - 1890)) | (1 << (PlSqlParser.SYS_ZMAP_REFRESH - 1890)) | (1 << (PlSqlParser.TABLE_LOOKUP_BY_NL - 1890)) | (1 << (PlSqlParser.TABLESPACE_NO - 1890)) | (1 << (PlSqlParser.TABLESPACE - 1890)) | (1 << (PlSqlParser.TABLES - 1890)) | (1 << (PlSqlParser.TABLE_STATS - 1890)) | (1 << (PlSqlParser.TABLE - 1890)) | (1 << (PlSqlParser.TABNO - 1890)) | (1 << (PlSqlParser.TAG - 1890)) | (1 << (PlSqlParser.TANH - 1890)) | (1 << (PlSqlParser.TAN - 1890)) | (1 << (PlSqlParser.TBLORIDXPARTNUM - 1890)) | (1 << (PlSqlParser.TEMPFILE - 1890)) | (1 << (PlSqlParser.TEMPLATE - 1890)) | (1 << (PlSqlParser.TEMPORARY - 1890)) | (1 << (PlSqlParser.TEMP_TABLE - 1890)))) !== 0) || ((((_la - 1922)) & ~0x1f) == 0 && ((1 << (_la - 1922)) & ((1 << (PlSqlParser.TEST - 1922)) | (1 << (PlSqlParser.TEXT - 1922)) | (1 << (PlSqlParser.THAN - 1922)) | (1 << (PlSqlParser.THEN - 1922)) | (1 << (PlSqlParser.THE - 1922)) | (1 << (PlSqlParser.THREAD - 1922)) | (1 << (PlSqlParser.THROUGH - 1922)) | (1 << (PlSqlParser.TIER - 1922)) | (1 << (PlSqlParser.TIES - 1922)) | (1 << (PlSqlParser.TIMEOUT - 1922)) | (1 << (PlSqlParser.TIMESTAMP_LTZ_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMESTAMP - 1922)) | (1 << (PlSqlParser.TIMESTAMP_TZ_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMESTAMP_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMES - 1922)) | (1 << (PlSqlParser.TIME - 1922)) | (1 << (PlSqlParser.TIMEZONE_ABBR - 1922)) | (1 << (PlSqlParser.TIMEZONE_HOUR - 1922)) | (1 << (PlSqlParser.TIMEZONE_MINUTE - 1922)) | (1 << (PlSqlParser.TIMEZONE_OFFSET - 1922)) | (1 << (PlSqlParser.TIMEZONE_REGION - 1922)) | (1 << (PlSqlParser.TIME_ZONE - 1922)) | (1 << (PlSqlParser.TIV_GB - 1922)) | (1 << (PlSqlParser.TIV_SSF - 1922)) | (1 << (PlSqlParser.TO_ACLID - 1922)) | (1 << (PlSqlParser.TO_BINARY_DOUBLE - 1922)) | (1 << (PlSqlParser.TO_BINARY_FLOAT - 1922)) | (1 << (PlSqlParser.TO_BLOB - 1922)) | (1 << (PlSqlParser.TO_CLOB - 1922)) | (1 << (PlSqlParser.TO_DSINTERVAL - 1922)) | (1 << (PlSqlParser.TO_LOB - 1922)))) !== 0) || ((((_la - 1954)) & ~0x1f) == 0 && ((1 << (_la - 1954)) & ((1 << (PlSqlParser.TO_MULTI_BYTE - 1954)) | (1 << (PlSqlParser.TO_NCHAR - 1954)) | (1 << (PlSqlParser.TO_NCLOB - 1954)) | (1 << (PlSqlParser.TO_NUMBER - 1954)) | (1 << (PlSqlParser.TOPLEVEL - 1954)) | (1 << (PlSqlParser.TO_SINGLE_BYTE - 1954)) | (1 << (PlSqlParser.TO_TIMESTAMP - 1954)) | (1 << (PlSqlParser.TO_TIMESTAMP_TZ - 1954)) | (1 << (PlSqlParser.TO_TIME - 1954)) | (1 << (PlSqlParser.TO_TIME_TZ - 1954)) | (1 << (PlSqlParser.TO_YMINTERVAL - 1954)) | (1 << (PlSqlParser.TRACE - 1954)) | (1 << (PlSqlParser.TRACING - 1954)) | (1 << (PlSqlParser.TRACKING - 1954)) | (1 << (PlSqlParser.TRAILING - 1954)) | (1 << (PlSqlParser.TRANSACTION - 1954)) | (1 << (PlSqlParser.TRANSFORM_DISTINCT_AGG - 1954)) | (1 << (PlSqlParser.TRANSITIONAL - 1954)) | (1 << (PlSqlParser.TRANSITION - 1954)) | (1 << (PlSqlParser.TRANSLATE - 1954)) | (1 << (PlSqlParser.TRANSLATION - 1954)) | (1 << (PlSqlParser.TREAT - 1954)) | (1 << (PlSqlParser.TRIGGERS - 1954)) | (1 << (PlSqlParser.TRIGGER - 1954)) | (1 << (PlSqlParser.TRUE - 1954)) | (1 << (PlSqlParser.TRUNCATE - 1954)) | (1 << (PlSqlParser.TRUNC - 1954)) | (1 << (PlSqlParser.TRUSTED - 1954)) | (1 << (PlSqlParser.TRUST - 1954)) | (1 << (PlSqlParser.TUNING - 1954)) | (1 << (PlSqlParser.TX - 1954)))) !== 0) || ((((_la - 1986)) & ~0x1f) == 0 && ((1 << (_la - 1986)) & ((1 << (PlSqlParser.TYPES - 1986)) | (1 << (PlSqlParser.TYPE - 1986)) | (1 << (PlSqlParser.TZ_OFFSET - 1986)) | (1 << (PlSqlParser.UB2 - 1986)) | (1 << (PlSqlParser.UBA - 1986)) | (1 << (PlSqlParser.UCS2 - 1986)) | (1 << (PlSqlParser.UID - 1986)) | (1 << (PlSqlParser.UNARCHIVED - 1986)) | (1 << (PlSqlParser.UNBOUNDED - 1986)) | (1 << (PlSqlParser.UNBOUND - 1986)) | (1 << (PlSqlParser.UNCONDITIONAL - 1986)) | (1 << (PlSqlParser.UNDER - 1986)) | (1 << (PlSqlParser.UNDO - 1986)) | (1 << (PlSqlParser.UNDROP - 1986)) | (1 << (PlSqlParser.UNIFORM - 1986)) | (1 << (PlSqlParser.UNISTR - 1986)) | (1 << (PlSqlParser.UNLIMITED - 1986)) | (1 << (PlSqlParser.UNLOAD - 1986)) | (1 << (PlSqlParser.UNLOCK - 1986)) | (1 << (PlSqlParser.UNMATCHED - 1986)) | (1 << (PlSqlParser.UNNEST_INNERJ_DISTINCT_VIEW - 1986)) | (1 << (PlSqlParser.UNNEST_NOSEMIJ_NODISTINCTVIEW - 1986)) | (1 << (PlSqlParser.UNNEST_SEMIJ_VIEW - 1986)) | (1 << (PlSqlParser.UNNEST - 1986)) | (1 << (PlSqlParser.UNPACKED - 1986)) | (1 << (PlSqlParser.UNPIVOT - 1986)) | (1 << (PlSqlParser.UNPLUG - 1986)) | (1 << (PlSqlParser.UNPROTECTED - 1986)) | (1 << (PlSqlParser.UNQUIESCE - 1986)) | (1 << (PlSqlParser.UNRECOVERABLE - 1986)))) !== 0) || ((((_la - 2018)) & ~0x1f) == 0 && ((1 << (_la - 2018)) & ((1 << (PlSqlParser.UNRESTRICTED - 2018)) | (1 << (PlSqlParser.UNSUBSCRIBE - 2018)) | (1 << (PlSqlParser.UNTIL - 2018)) | (1 << (PlSqlParser.UNUSABLE - 2018)) | (1 << (PlSqlParser.UNUSED - 2018)) | (1 << (PlSqlParser.UPDATABLE - 2018)) | (1 << (PlSqlParser.UPDATED - 2018)) | (1 << (PlSqlParser.UPDATEXML - 2018)) | (1 << (PlSqlParser.UPD_INDEXES - 2018)) | (1 << (PlSqlParser.UPD_JOININDEX - 2018)) | (1 << (PlSqlParser.UPGRADE - 2018)) | (1 << (PlSqlParser.UPPER - 2018)) | (1 << (PlSqlParser.UPSERT - 2018)) | (1 << (PlSqlParser.UROWID - 2018)) | (1 << (PlSqlParser.USABLE - 2018)) | (1 << (PlSqlParser.USAGE - 2018)) | (1 << (PlSqlParser.USE_ANTI - 2018)) | (1 << (PlSqlParser.USE_CONCAT - 2018)) | (1 << (PlSqlParser.USE_CUBE - 2018)) | (1 << (PlSqlParser.USE_HASH_AGGREGATION - 2018)) | (1 << (PlSqlParser.USE_HASH_GBY_FOR_PUSHDOWN - 2018)) | (1 << (PlSqlParser.USE_HASH - 2018)) | (1 << (PlSqlParser.USE_HIDDEN_PARTITIONS - 2018)) | (1 << (PlSqlParser.USE_INVISIBLE_INDEXES - 2018)) | (1 << (PlSqlParser.USE_MERGE_CARTESIAN - 2018)) | (1 << (PlSqlParser.USE_MERGE - 2018)) | (1 << (PlSqlParser.USE_NL - 2018)) | (1 << (PlSqlParser.USE_NL_WITH_INDEX - 2018)) | (1 << (PlSqlParser.USE_PRIVATE_OUTLINES - 2018)) | (1 << (PlSqlParser.USER_DATA - 2018)) | (1 << (PlSqlParser.USER_DEFINED - 2018)))) !== 0) || ((((_la - 2050)) & ~0x1f) == 0 && ((1 << (_la - 2050)) & ((1 << (PlSqlParser.USERENV - 2050)) | (1 << (PlSqlParser.USERGROUP - 2050)) | (1 << (PlSqlParser.USER_RECYCLEBIN - 2050)) | (1 << (PlSqlParser.USERS - 2050)) | (1 << (PlSqlParser.USER_TABLESPACES - 2050)) | (1 << (PlSqlParser.USER - 2050)) | (1 << (PlSqlParser.USE_SEMI - 2050)) | (1 << (PlSqlParser.USE_STORED_OUTLINES - 2050)) | (1 << (PlSqlParser.USE_TTT_FOR_GSETS - 2050)) | (1 << (PlSqlParser.USE - 2050)) | (1 << (PlSqlParser.USE_VECTOR_AGGREGATION - 2050)) | (1 << (PlSqlParser.USE_WEAK_NAME_RESL - 2050)) | (1 << (PlSqlParser.USING_NO_EXPAND - 2050)) | (1 << (PlSqlParser.USING - 2050)) | (1 << (PlSqlParser.UTF16BE - 2050)) | (1 << (PlSqlParser.UTF16LE - 2050)) | (1 << (PlSqlParser.UTF32 - 2050)) | (1 << (PlSqlParser.UTF8 - 2050)) | (1 << (PlSqlParser.V1 - 2050)) | (1 << (PlSqlParser.V2 - 2050)) | (1 << (PlSqlParser.VALIDATE - 2050)) | (1 << (PlSqlParser.VALIDATION - 2050)) | (1 << (PlSqlParser.VALID_TIME_END - 2050)) | (1 << (PlSqlParser.VALUE - 2050)) | (1 << (PlSqlParser.VARCHAR2 - 2050)) | (1 << (PlSqlParser.VARCHAR - 2050)) | (1 << (PlSqlParser.VARIABLE - 2050)) | (1 << (PlSqlParser.VAR_POP - 2050)) | (1 << (PlSqlParser.VARRAYS - 2050)) | (1 << (PlSqlParser.VARRAY - 2050)) | (1 << (PlSqlParser.VAR_SAMP - 2050)))) !== 0) || ((((_la - 2082)) & ~0x1f) == 0 && ((1 << (_la - 2082)) & ((1 << (PlSqlParser.VARYING - 2082)) | (1 << (PlSqlParser.VECTOR_READ_TRACE - 2082)) | (1 << (PlSqlParser.VECTOR_READ - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM_DIMS - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM_FACT - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM - 2082)) | (1 << (PlSqlParser.VERIFIER - 2082)) | (1 << (PlSqlParser.VERIFY - 2082)) | (1 << (PlSqlParser.VERSIONING - 2082)) | (1 << (PlSqlParser.VERSIONS_ENDSCN - 2082)) | (1 << (PlSqlParser.VERSIONS_ENDTIME - 2082)) | (1 << (PlSqlParser.VERSIONS_OPERATION - 2082)) | (1 << (PlSqlParser.VERSIONS_STARTSCN - 2082)) | (1 << (PlSqlParser.VERSIONS_STARTTIME - 2082)) | (1 << (PlSqlParser.VERSIONS - 2082)) | (1 << (PlSqlParser.VERSIONS_XID - 2082)) | (1 << (PlSqlParser.VERSION - 2082)) | (1 << (PlSqlParser.VIOLATION - 2082)) | (1 << (PlSqlParser.VIRTUAL - 2082)) | (1 << (PlSqlParser.VISIBILITY - 2082)) | (1 << (PlSqlParser.VISIBLE - 2082)) | (1 << (PlSqlParser.VOLUME - 2082)) | (1 << (PlSqlParser.VSIZE - 2082)) | (1 << (PlSqlParser.WAIT - 2082)) | (1 << (PlSqlParser.WALLET - 2082)) | (1 << (PlSqlParser.WARNING - 2082)) | (1 << (PlSqlParser.WEEKS - 2082)) | (1 << (PlSqlParser.WEEK - 2082)) | (1 << (PlSqlParser.WELLFORMED - 2082)) | (1 << (PlSqlParser.WHENEVER - 2082)) | (1 << (PlSqlParser.WHEN - 2082)))) !== 0) || ((((_la - 2115)) & ~0x1f) == 0 && ((1 << (_la - 2115)) & ((1 << (PlSqlParser.WHILE - 2115)) | (1 << (PlSqlParser.WHITESPACE - 2115)) | (1 << (PlSqlParser.WIDTH_BUCKET - 2115)) | (1 << (PlSqlParser.WITHIN - 2115)) | (1 << (PlSqlParser.WITHOUT - 2115)) | (1 << (PlSqlParser.WITH_PLSQL - 2115)) | (1 << (PlSqlParser.WORK - 2115)) | (1 << (PlSqlParser.WRAPPED - 2115)) | (1 << (PlSqlParser.WRAPPER - 2115)) | (1 << (PlSqlParser.WRITE - 2115)) | (1 << (PlSqlParser.XDB_FASTPATH_INSERT - 2115)) | (1 << (PlSqlParser.X_DYN_PRUNE - 2115)) | (1 << (PlSqlParser.XID - 2115)) | (1 << (PlSqlParser.XML2OBJECT - 2115)) | (1 << (PlSqlParser.XMLAGG - 2115)) | (1 << (PlSqlParser.XMLATTRIBUTES - 2115)) | (1 << (PlSqlParser.XMLCAST - 2115)) | (1 << (PlSqlParser.XMLCDATA - 2115)) | (1 << (PlSqlParser.XMLCOLATTVAL - 2115)) | (1 << (PlSqlParser.XMLCOMMENT - 2115)) | (1 << (PlSqlParser.XMLCONCAT - 2115)) | (1 << (PlSqlParser.XMLDIFF - 2115)) | (1 << (PlSqlParser.XML_DML_RWT_STMT - 2115)) | (1 << (PlSqlParser.XMLELEMENT - 2115)) | (1 << (PlSqlParser.XMLEXISTS2 - 2115)) | (1 << (PlSqlParser.XMLEXISTS - 2115)) | (1 << (PlSqlParser.XMLFOREST - 2115)) | (1 << (PlSqlParser.XMLINDEX_REWRITE_IN_SELECT - 2115)) | (1 << (PlSqlParser.XMLINDEX_REWRITE - 2115)))) !== 0) || ((((_la - 2147)) & ~0x1f) == 0 && ((1 << (_la - 2147)) & ((1 << (PlSqlParser.XMLINDEX_SEL_IDX_TBL - 2147)) | (1 << (PlSqlParser.XMLISNODE - 2147)) | (1 << (PlSqlParser.XMLISVALID - 2147)) | (1 << (PlSqlParser.XMLNAMESPACES - 2147)) | (1 << (PlSqlParser.XMLPARSE - 2147)) | (1 << (PlSqlParser.XMLPATCH - 2147)) | (1 << (PlSqlParser.XMLPI - 2147)) | (1 << (PlSqlParser.XMLQUERYVAL - 2147)) | (1 << (PlSqlParser.XMLQUERY - 2147)) | (1 << (PlSqlParser.XMLROOT - 2147)) | (1 << (PlSqlParser.XMLSCHEMA - 2147)) | (1 << (PlSqlParser.XMLSERIALIZE - 2147)) | (1 << (PlSqlParser.XMLTABLE - 2147)) | (1 << (PlSqlParser.XMLTRANSFORMBLOB - 2147)) | (1 << (PlSqlParser.XMLTRANSFORM - 2147)) | (1 << (PlSqlParser.XMLTYPE - 2147)) | (1 << (PlSqlParser.XML - 2147)) | (1 << (PlSqlParser.XPATHTABLE - 2147)) | (1 << (PlSqlParser.XS_SYS_CONTEXT - 2147)) | (1 << (PlSqlParser.XS - 2147)) | (1 << (PlSqlParser.YEARS - 2147)) | (1 << (PlSqlParser.YEAR - 2147)) | (1 << (PlSqlParser.YES - 2147)) | (1 << (PlSqlParser.YMINTERVAL_UNCONSTRAINED - 2147)) | (1 << (PlSqlParser.ZONEMAP - 2147)) | (1 << (PlSqlParser.ZONE - 2147)) | (1 << (PlSqlParser.PREDICTION - 2147)) | (1 << (PlSqlParser.PREDICTION_BOUNDS - 2147)) | (1 << (PlSqlParser.PREDICTION_COST - 2147)) | (1 << (PlSqlParser.PREDICTION_DETAILS - 2147)) | (1 << (PlSqlParser.PREDICTION_PROBABILITY - 2147)))) !== 0) || ((((_la - 2179)) & ~0x1f) == 0 && ((1 << (_la - 2179)) & ((1 << (PlSqlParser.PREDICTION_SET - 2179)) | (1 << (PlSqlParser.CUME_DIST - 2179)) | (1 << (PlSqlParser.DENSE_RANK - 2179)) | (1 << (PlSqlParser.LISTAGG - 2179)) | (1 << (PlSqlParser.PERCENT_RANK - 2179)) | (1 << (PlSqlParser.PERCENTILE_CONT - 2179)) | (1 << (PlSqlParser.PERCENTILE_DISC - 2179)) | (1 << (PlSqlParser.RANK - 2179)) | (1 << (PlSqlParser.AVG - 2179)) | (1 << (PlSqlParser.CORR - 2179)) | (1 << (PlSqlParser.COVAR_ - 2179)) | (1 << (PlSqlParser.LAG - 2179)) | (1 << (PlSqlParser.LEAD - 2179)) | (1 << (PlSqlParser.MAX - 2179)) | (1 << (PlSqlParser.MEDIAN - 2179)) | (1 << (PlSqlParser.MIN - 2179)) | (1 << (PlSqlParser.NTILE - 2179)) | (1 << (PlSqlParser.NVL - 2179)) | (1 << (PlSqlParser.RATIO_TO_REPORT - 2179)) | (1 << (PlSqlParser.REGR_ - 2179)) | (1 << (PlSqlParser.ROUND - 2179)) | (1 << (PlSqlParser.ROW_NUMBER - 2179)) | (1 << (PlSqlParser.SUBSTR - 2179)) | (1 << (PlSqlParser.TO_CHAR - 2179)) | (1 << (PlSqlParser.TRIM - 2179)) | (1 << (PlSqlParser.SUM - 2179)) | (1 << (PlSqlParser.STDDEV - 2179)) | (1 << (PlSqlParser.VAR_ - 2179)) | (1 << (PlSqlParser.VARIANCE - 2179)) | (1 << (PlSqlParser.LEAST - 2179)) | (1 << (PlSqlParser.GREATEST - 2179)))) !== 0) || ((((_la - 2211)) & ~0x1f) == 0 && ((1 << (_la - 2211)) & ((1 << (PlSqlParser.TO_DATE - 2211)) | (1 << (PlSqlParser.PERIOD - 2211)) | (1 << (PlSqlParser.DELIMITED_ID - 2211)))) !== 0) || _la===PlSqlParser.INTRODUCER || _la===PlSqlParser.REGULAR_ID) {
+ this.state = 1750;
+ this.package_name();
+ }
+
+ this.state = 1753;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_package_bodyContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_create_package_body;
+ return this;
+}
+
+Create_package_bodyContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_package_bodyContext.prototype.constructor = Create_package_bodyContext;
+
+Create_package_bodyContext.prototype.CREATE = function() {
+ return this.getToken(PlSqlParser.CREATE, 0);
+};
+
+Create_package_bodyContext.prototype.PACKAGE = function() {
+ return this.getToken(PlSqlParser.PACKAGE, 0);
+};
+
+Create_package_bodyContext.prototype.BODY = function() {
+ return this.getToken(PlSqlParser.BODY, 0);
+};
+
+Create_package_bodyContext.prototype.package_name = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Package_nameContext);
+ } else {
+ return this.getTypedRuleContext(Package_nameContext,i);
+ }
+};
+
+Create_package_bodyContext.prototype.END = function() {
+ return this.getToken(PlSqlParser.END, 0);
+};
+
+Create_package_bodyContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Create_package_bodyContext.prototype.IS = function() {
+ return this.getToken(PlSqlParser.IS, 0);
+};
+
+Create_package_bodyContext.prototype.AS = function() {
+ return this.getToken(PlSqlParser.AS, 0);
+};
+
+Create_package_bodyContext.prototype.OR = function() {
+ return this.getToken(PlSqlParser.OR, 0);
+};
+
+Create_package_bodyContext.prototype.REPLACE = function() {
+ return this.getToken(PlSqlParser.REPLACE, 0);
+};
+
+Create_package_bodyContext.prototype.schema_object_name = function() {
+ return this.getTypedRuleContext(Schema_object_nameContext,0);
+};
+
+Create_package_bodyContext.prototype.PERIOD = function() {
+ return this.getToken(PlSqlParser.PERIOD, 0);
+};
+
+Create_package_bodyContext.prototype.package_obj_body = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Package_obj_bodyContext);
+ } else {
+ return this.getTypedRuleContext(Package_obj_bodyContext,i);
+ }
+};
+
+Create_package_bodyContext.prototype.BEGIN = function() {
+ return this.getToken(PlSqlParser.BEGIN, 0);
+};
+
+Create_package_bodyContext.prototype.seq_of_statements = function() {
+ return this.getTypedRuleContext(Seq_of_statementsContext,0);
+};
+
+Create_package_bodyContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterCreate_package_body(this);
+ }
+};
+
+Create_package_bodyContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitCreate_package_body(this);
+ }
+};
+
+Create_package_bodyContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitCreate_package_body(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Create_package_bodyContext = Create_package_bodyContext;
+
+PlSqlParser.prototype.create_package_body = function() {
+
+ var localctx = new Create_package_bodyContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 28, PlSqlParser.RULE_create_package_body);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1755;
+ this.match(PlSqlParser.CREATE);
+ this.state = 1758;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.OR) {
+ this.state = 1756;
+ this.match(PlSqlParser.OR);
+ this.state = 1757;
+ this.match(PlSqlParser.REPLACE);
+ }
+
+ this.state = 1760;
+ this.match(PlSqlParser.PACKAGE);
+ this.state = 1761;
+ this.match(PlSqlParser.BODY);
+ this.state = 1765;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,34,this._ctx);
+ if(la_===1) {
+ this.state = 1762;
+ this.schema_object_name();
+ this.state = 1763;
+ this.match(PlSqlParser.PERIOD);
+
+ }
+ this.state = 1767;
+ this.package_name();
+ this.state = 1768;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.AS || _la===PlSqlParser.IS)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 1772;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,35,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 1769;
+ this.package_obj_body();
+ }
+ this.state = 1774;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,35,this._ctx);
+ }
+
+ this.state = 1777;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.BEGIN) {
+ this.state = 1775;
+ this.match(PlSqlParser.BEGIN);
+ this.state = 1776;
+ this.seq_of_statements();
+ }
+
+ this.state = 1779;
+ this.match(PlSqlParser.END);
+ this.state = 1781;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if((((_la) & ~0x1f) == 0 && ((1 << _la) & ((1 << PlSqlParser.ABORT) | (1 << PlSqlParser.ABS) | (1 << PlSqlParser.ACCESS) | (1 << PlSqlParser.ACCESSED) | (1 << PlSqlParser.ACCOUNT) | (1 << PlSqlParser.ACL) | (1 << PlSqlParser.ACOS) | (1 << PlSqlParser.ACTION) | (1 << PlSqlParser.ACTIONS) | (1 << PlSqlParser.ACTIVATE) | (1 << PlSqlParser.ACTIVE) | (1 << PlSqlParser.ACTIVE_COMPONENT) | (1 << PlSqlParser.ACTIVE_DATA) | (1 << PlSqlParser.ACTIVE_FUNCTION) | (1 << PlSqlParser.ACTIVE_TAG) | (1 << PlSqlParser.ACTIVITY) | (1 << PlSqlParser.ADAPTIVE_PLAN) | (1 << PlSqlParser.ADD) | (1 << PlSqlParser.ADD_COLUMN) | (1 << PlSqlParser.ADD_GROUP) | (1 << PlSqlParser.ADD_MONTHS) | (1 << PlSqlParser.ADJ_DATE) | (1 << PlSqlParser.ADMIN) | (1 << PlSqlParser.ADMINISTER) | (1 << PlSqlParser.ADMINISTRATOR) | (1 << PlSqlParser.ADVANCED) | (1 << PlSqlParser.ADVISE) | (1 << PlSqlParser.ADVISOR) | (1 << PlSqlParser.AFD_DISKSTRING) | (1 << PlSqlParser.AFTER) | (1 << PlSqlParser.AGENT))) !== 0) || ((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (PlSqlParser.AGGREGATE - 32)) | (1 << (PlSqlParser.A_LETTER - 32)) | (1 << (PlSqlParser.ALIAS - 32)) | (1 << (PlSqlParser.ALLOCATE - 32)) | (1 << (PlSqlParser.ALLOW - 32)) | (1 << (PlSqlParser.ALL_ROWS - 32)) | (1 << (PlSqlParser.ALWAYS - 32)) | (1 << (PlSqlParser.ANALYZE - 32)) | (1 << (PlSqlParser.ANCILLARY - 32)) | (1 << (PlSqlParser.AND_EQUAL - 32)) | (1 << (PlSqlParser.ANOMALY - 32)) | (1 << (PlSqlParser.ANSI_REARCH - 32)) | (1 << (PlSqlParser.ANTIJOIN - 32)) | (1 << (PlSqlParser.ANYSCHEMA - 32)) | (1 << (PlSqlParser.APPEND - 32)) | (1 << (PlSqlParser.APPENDCHILDXML - 32)) | (1 << (PlSqlParser.APPEND_VALUES - 32)) | (1 << (PlSqlParser.APPLICATION - 32)) | (1 << (PlSqlParser.APPLY - 32)) | (1 << (PlSqlParser.APPROX_COUNT_DISTINCT - 32)) | (1 << (PlSqlParser.ARCHIVAL - 32)) | (1 << (PlSqlParser.ARCHIVE - 32)) | (1 << (PlSqlParser.ARCHIVED - 32)) | (1 << (PlSqlParser.ARCHIVELOG - 32)) | (1 << (PlSqlParser.ARRAY - 32)) | (1 << (PlSqlParser.ASCII - 32)))) !== 0) || ((((_la - 64)) & ~0x1f) == 0 && ((1 << (_la - 64)) & ((1 << (PlSqlParser.ASCIISTR - 64)) | (1 << (PlSqlParser.ASIN - 64)) | (1 << (PlSqlParser.ASIS - 64)) | (1 << (PlSqlParser.ASSEMBLY - 64)) | (1 << (PlSqlParser.ASSIGN - 64)) | (1 << (PlSqlParser.ASSOCIATE - 64)) | (1 << (PlSqlParser.ASYNC - 64)) | (1 << (PlSqlParser.ASYNCHRONOUS - 64)) | (1 << (PlSqlParser.ATAN2 - 64)) | (1 << (PlSqlParser.ATAN - 64)) | (1 << (PlSqlParser.AT - 64)) | (1 << (PlSqlParser.ATTRIBUTE - 64)) | (1 << (PlSqlParser.ATTRIBUTES - 64)) | (1 << (PlSqlParser.AUTHENTICATED - 64)) | (1 << (PlSqlParser.AUTHENTICATION - 64)) | (1 << (PlSqlParser.AUTHID - 64)) | (1 << (PlSqlParser.AUTHORIZATION - 64)) | (1 << (PlSqlParser.AUTOALLOCATE - 64)) | (1 << (PlSqlParser.AUTO - 64)) | (1 << (PlSqlParser.AUTOEXTEND - 64)) | (1 << (PlSqlParser.AUTO_LOGIN - 64)) | (1 << (PlSqlParser.AUTOMATIC - 64)) | (1 << (PlSqlParser.AUTONOMOUS_TRANSACTION - 64)) | (1 << (PlSqlParser.AUTO_REOPTIMIZE - 64)) | (1 << (PlSqlParser.AVAILABILITY - 64)) | (1 << (PlSqlParser.AVRO - 64)) | (1 << (PlSqlParser.BACKGROUND - 64)) | (1 << (PlSqlParser.BACKUP - 64)) | (1 << (PlSqlParser.BASIC - 64)))) !== 0) || ((((_la - 96)) & ~0x1f) == 0 && ((1 << (_la - 96)) & ((1 << (PlSqlParser.BASICFILE - 96)) | (1 << (PlSqlParser.BATCH - 96)) | (1 << (PlSqlParser.BATCHSIZE - 96)) | (1 << (PlSqlParser.BATCH_TABLE_ACCESS_BY_ROWID - 96)) | (1 << (PlSqlParser.BECOME - 96)) | (1 << (PlSqlParser.BEFORE - 96)) | (1 << (PlSqlParser.BEGIN - 96)) | (1 << (PlSqlParser.BEGINNING - 96)) | (1 << (PlSqlParser.BEGIN_OUTLINE_DATA - 96)) | (1 << (PlSqlParser.BEHALF - 96)) | (1 << (PlSqlParser.BEQUEATH - 96)) | (1 << (PlSqlParser.BFILE - 96)) | (1 << (PlSqlParser.BFILENAME - 96)) | (1 << (PlSqlParser.BIGFILE - 96)) | (1 << (PlSqlParser.BINARY - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE_INFINITY - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE_NAN - 96)) | (1 << (PlSqlParser.BINARY_FLOAT - 96)) | (1 << (PlSqlParser.BINARY_FLOAT_INFINITY - 96)) | (1 << (PlSqlParser.BINARY_FLOAT_NAN - 96)) | (1 << (PlSqlParser.BINARY_INTEGER - 96)) | (1 << (PlSqlParser.BIND_AWARE - 96)) | (1 << (PlSqlParser.BINDING - 96)) | (1 << (PlSqlParser.BIN_TO_NUM - 96)) | (1 << (PlSqlParser.BITAND - 96)) | (1 << (PlSqlParser.BITMAP_AND - 96)) | (1 << (PlSqlParser.BITMAP - 96)) | (1 << (PlSqlParser.BITMAPS - 96)) | (1 << (PlSqlParser.BITMAP_TREE - 96)) | (1 << (PlSqlParser.BITS - 96)))) !== 0) || ((((_la - 128)) & ~0x1f) == 0 && ((1 << (_la - 128)) & ((1 << (PlSqlParser.BLOB - 128)) | (1 << (PlSqlParser.BLOCK - 128)) | (1 << (PlSqlParser.BLOCK_RANGE - 128)) | (1 << (PlSqlParser.BLOCKS - 128)) | (1 << (PlSqlParser.BLOCKSIZE - 128)) | (1 << (PlSqlParser.BODY - 128)) | (1 << (PlSqlParser.BOOLEAN - 128)) | (1 << (PlSqlParser.BOTH - 128)) | (1 << (PlSqlParser.BOUND - 128)) | (1 << (PlSqlParser.BRANCH - 128)) | (1 << (PlSqlParser.BREADTH - 128)) | (1 << (PlSqlParser.BROADCAST - 128)) | (1 << (PlSqlParser.BSON - 128)) | (1 << (PlSqlParser.BUFFER - 128)) | (1 << (PlSqlParser.BUFFER_CACHE - 128)) | (1 << (PlSqlParser.BUFFER_POOL - 128)) | (1 << (PlSqlParser.BUILD - 128)) | (1 << (PlSqlParser.BULK - 128)) | (1 << (PlSqlParser.BYPASS_RECURSIVE_CHECK - 128)) | (1 << (PlSqlParser.BYPASS_UJVC - 128)) | (1 << (PlSqlParser.BYTE - 128)) | (1 << (PlSqlParser.CACHE - 128)) | (1 << (PlSqlParser.CACHE_CB - 128)) | (1 << (PlSqlParser.CACHE_INSTANCES - 128)) | (1 << (PlSqlParser.CACHE_TEMP_TABLE - 128)) | (1 << (PlSqlParser.CACHING - 128)) | (1 << (PlSqlParser.CALCULATED - 128)) | (1 << (PlSqlParser.CALLBACK - 128)) | (1 << (PlSqlParser.CALL - 128)) | (1 << (PlSqlParser.CANCEL - 128)))) !== 0) || ((((_la - 160)) & ~0x1f) == 0 && ((1 << (_la - 160)) & ((1 << (PlSqlParser.CAPACITY - 160)) | (1 << (PlSqlParser.CARDINALITY - 160)) | (1 << (PlSqlParser.CASCADE - 160)) | (1 << (PlSqlParser.CASE - 160)) | (1 << (PlSqlParser.CAST - 160)) | (1 << (PlSqlParser.CATEGORY - 160)) | (1 << (PlSqlParser.CDBDEFAULT - 160)) | (1 << (PlSqlParser.CEIL - 160)) | (1 << (PlSqlParser.CELL_FLASH_CACHE - 160)) | (1 << (PlSqlParser.CERTIFICATE - 160)) | (1 << (PlSqlParser.CFILE - 160)) | (1 << (PlSqlParser.CHAINED - 160)) | (1 << (PlSqlParser.CHANGE - 160)) | (1 << (PlSqlParser.CHANGE_DUPKEY_ERROR_INDEX - 160)) | (1 << (PlSqlParser.CHARACTER - 160)) | (1 << (PlSqlParser.CHAR - 160)) | (1 << (PlSqlParser.CHAR_CS - 160)) | (1 << (PlSqlParser.CHARTOROWID - 160)) | (1 << (PlSqlParser.CHECK_ACL_REWRITE - 160)) | (1 << (PlSqlParser.CHECKPOINT - 160)) | (1 << (PlSqlParser.CHILD - 160)) | (1 << (PlSqlParser.CHOOSE - 160)) | (1 << (PlSqlParser.CHR - 160)) | (1 << (PlSqlParser.CHUNK - 160)) | (1 << (PlSqlParser.CLASS - 160)) | (1 << (PlSqlParser.CLASSIFIER - 160)) | (1 << (PlSqlParser.CLEANUP - 160)) | (1 << (PlSqlParser.CLEAR - 160)) | (1 << (PlSqlParser.C_LETTER - 160)) | (1 << (PlSqlParser.CLIENT - 160)))) !== 0) || ((((_la - 192)) & ~0x1f) == 0 && ((1 << (_la - 192)) & ((1 << (PlSqlParser.CLOB - 192)) | (1 << (PlSqlParser.CLONE - 192)) | (1 << (PlSqlParser.CLOSE_CACHED_OPEN_CURSORS - 192)) | (1 << (PlSqlParser.CLOSE - 192)) | (1 << (PlSqlParser.CLUSTER_BY_ROWID - 192)) | (1 << (PlSqlParser.CLUSTER - 192)) | (1 << (PlSqlParser.CLUSTER_DETAILS - 192)) | (1 << (PlSqlParser.CLUSTER_DISTANCE - 192)) | (1 << (PlSqlParser.CLUSTER_ID - 192)) | (1 << (PlSqlParser.CLUSTERING - 192)) | (1 << (PlSqlParser.CLUSTERING_FACTOR - 192)) | (1 << (PlSqlParser.CLUSTER_PROBABILITY - 192)) | (1 << (PlSqlParser.CLUSTER_SET - 192)) | (1 << (PlSqlParser.COALESCE - 192)) | (1 << (PlSqlParser.COALESCE_SQ - 192)) | (1 << (PlSqlParser.COARSE - 192)) | (1 << (PlSqlParser.CO_AUTH_IND - 192)) | (1 << (PlSqlParser.COLD - 192)) | (1 << (PlSqlParser.COLLECT - 192)) | (1 << (PlSqlParser.COLUMNAR - 192)) | (1 << (PlSqlParser.COLUMN_AUTH_INDICATOR - 192)) | (1 << (PlSqlParser.COLUMN - 192)) | (1 << (PlSqlParser.COLUMNS - 192)) | (1 << (PlSqlParser.COLUMN_STATS - 192)) | (1 << (PlSqlParser.COLUMN_VALUE - 192)) | (1 << (PlSqlParser.COMMENT - 192)) | (1 << (PlSqlParser.COMMIT - 192)) | (1 << (PlSqlParser.COMMITTED - 192)) | (1 << (PlSqlParser.COMMON_DATA - 192)) | (1 << (PlSqlParser.COMPACT - 192)) | (1 << (PlSqlParser.COMPATIBILITY - 192)) | (1 << (PlSqlParser.COMPILE - 192)))) !== 0) || ((((_la - 224)) & ~0x1f) == 0 && ((1 << (_la - 224)) & ((1 << (PlSqlParser.COMPLETE - 224)) | (1 << (PlSqlParser.COMPLIANCE - 224)) | (1 << (PlSqlParser.COMPONENT - 224)) | (1 << (PlSqlParser.COMPONENTS - 224)) | (1 << (PlSqlParser.COMPOSE - 224)) | (1 << (PlSqlParser.COMPOSITE - 224)) | (1 << (PlSqlParser.COMPOSITE_LIMIT - 224)) | (1 << (PlSqlParser.COMPOUND - 224)) | (1 << (PlSqlParser.COMPUTE - 224)) | (1 << (PlSqlParser.CONCAT - 224)) | (1 << (PlSqlParser.CON_DBID_TO_ID - 224)) | (1 << (PlSqlParser.CONDITIONAL - 224)) | (1 << (PlSqlParser.CONDITION - 224)) | (1 << (PlSqlParser.CONFIRM - 224)) | (1 << (PlSqlParser.CONFORMING - 224)) | (1 << (PlSqlParser.CON_GUID_TO_ID - 224)) | (1 << (PlSqlParser.CON_ID - 224)) | (1 << (PlSqlParser.CON_NAME_TO_ID - 224)) | (1 << (PlSqlParser.CONNECT_BY_CB_WHR_ONLY - 224)) | (1 << (PlSqlParser.CONNECT_BY_COMBINE_SW - 224)) | (1 << (PlSqlParser.CONNECT_BY_COST_BASED - 224)) | (1 << (PlSqlParser.CONNECT_BY_ELIM_DUPS - 224)) | (1 << (PlSqlParser.CONNECT_BY_FILTERING - 224)) | (1 << (PlSqlParser.CONNECT_BY_ISCYCLE - 224)) | (1 << (PlSqlParser.CONNECT_BY_ISLEAF - 224)) | (1 << (PlSqlParser.CONNECT_BY_ROOT - 224)) | (1 << (PlSqlParser.CONNECT_TIME - 224)) | (1 << (PlSqlParser.CONSIDER - 224)) | (1 << (PlSqlParser.CONSISTENT - 224)) | (1 << (PlSqlParser.CONSTANT - 224)))) !== 0) || ((((_la - 256)) & ~0x1f) == 0 && ((1 << (_la - 256)) & ((1 << (PlSqlParser.CONST - 256)) | (1 << (PlSqlParser.CONSTRAINT - 256)) | (1 << (PlSqlParser.CONSTRAINTS - 256)) | (1 << (PlSqlParser.CONSTRUCTOR - 256)) | (1 << (PlSqlParser.CONTAINER - 256)) | (1 << (PlSqlParser.CONTAINER_DATA - 256)) | (1 << (PlSqlParser.CONTAINERS - 256)) | (1 << (PlSqlParser.CONTENT - 256)) | (1 << (PlSqlParser.CONTENTS - 256)) | (1 << (PlSqlParser.CONTEXT - 256)) | (1 << (PlSqlParser.CONTINUE - 256)) | (1 << (PlSqlParser.CONTROLFILE - 256)) | (1 << (PlSqlParser.CON_UID_TO_ID - 256)) | (1 << (PlSqlParser.CONVERT - 256)) | (1 << (PlSqlParser.COOKIE - 256)) | (1 << (PlSqlParser.COPY - 256)) | (1 << (PlSqlParser.CORR_K - 256)) | (1 << (PlSqlParser.CORR_S - 256)) | (1 << (PlSqlParser.CORRUPTION - 256)) | (1 << (PlSqlParser.CORRUPT_XID_ALL - 256)) | (1 << (PlSqlParser.CORRUPT_XID - 256)) | (1 << (PlSqlParser.COS - 256)) | (1 << (PlSqlParser.COSH - 256)) | (1 << (PlSqlParser.COST - 256)) | (1 << (PlSqlParser.COST_XML_QUERY_REWRITE - 256)) | (1 << (PlSqlParser.COUNT - 256)) | (1 << (PlSqlParser.COVAR_POP - 256)) | (1 << (PlSqlParser.COVAR_SAMP - 256)) | (1 << (PlSqlParser.CPU_COSTING - 256)) | (1 << (PlSqlParser.CPU_PER_CALL - 256)) | (1 << (PlSqlParser.CPU_PER_SESSION - 256)) | (1 << (PlSqlParser.CRASH - 256)))) !== 0) || ((((_la - 289)) & ~0x1f) == 0 && ((1 << (_la - 289)) & ((1 << (PlSqlParser.CREATE_FILE_DEST - 289)) | (1 << (PlSqlParser.CREATE_STORED_OUTLINES - 289)) | (1 << (PlSqlParser.CREATION - 289)) | (1 << (PlSqlParser.CREDENTIAL - 289)) | (1 << (PlSqlParser.CRITICAL - 289)) | (1 << (PlSqlParser.CROSS - 289)) | (1 << (PlSqlParser.CROSSEDITION - 289)) | (1 << (PlSqlParser.CSCONVERT - 289)) | (1 << (PlSqlParser.CUBE_AJ - 289)) | (1 << (PlSqlParser.CUBE - 289)) | (1 << (PlSqlParser.CUBE_GB - 289)) | (1 << (PlSqlParser.CUBE_SJ - 289)) | (1 << (PlSqlParser.CUME_DISTM - 289)) | (1 << (PlSqlParser.CURRENT - 289)) | (1 << (PlSqlParser.CURRENT_DATE - 289)) | (1 << (PlSqlParser.CURRENT_SCHEMA - 289)) | (1 << (PlSqlParser.CURRENT_TIME - 289)) | (1 << (PlSqlParser.CURRENT_TIMESTAMP - 289)) | (1 << (PlSqlParser.CURRENT_USER - 289)) | (1 << (PlSqlParser.CURRENTV - 289)) | (1 << (PlSqlParser.CURSOR - 289)) | (1 << (PlSqlParser.CURSOR_SHARING_EXACT - 289)) | (1 << (PlSqlParser.CURSOR_SPECIFIC_SEGMENT - 289)) | (1 << (PlSqlParser.CUSTOMDATUM - 289)) | (1 << (PlSqlParser.CV - 289)) | (1 << (PlSqlParser.CYCLE - 289)) | (1 << (PlSqlParser.DANGLING - 289)) | (1 << (PlSqlParser.DATABASE - 289)) | (1 << (PlSqlParser.DATA - 289)) | (1 << (PlSqlParser.DATAFILE - 289)) | (1 << (PlSqlParser.DATAFILES - 289)))) !== 0) || ((((_la - 321)) & ~0x1f) == 0 && ((1 << (_la - 321)) & ((1 << (PlSqlParser.DATAMOVEMENT - 321)) | (1 << (PlSqlParser.DATAOBJNO - 321)) | (1 << (PlSqlParser.DATAOBJ_TO_MAT_PARTITION - 321)) | (1 << (PlSqlParser.DATAOBJ_TO_PARTITION - 321)) | (1 << (PlSqlParser.DATAPUMP - 321)) | (1 << (PlSqlParser.DATA_SECURITY_REWRITE_LIMIT - 321)) | (1 << (PlSqlParser.DATE_MODE - 321)) | (1 << (PlSqlParser.DAY - 321)) | (1 << (PlSqlParser.DAYS - 321)) | (1 << (PlSqlParser.DBA - 321)) | (1 << (PlSqlParser.DBA_RECYCLEBIN - 321)) | (1 << (PlSqlParser.DBMS_STATS - 321)) | (1 << (PlSqlParser.DB_ROLE_CHANGE - 321)) | (1 << (PlSqlParser.DBTIMEZONE - 321)) | (1 << (PlSqlParser.DB_UNIQUE_NAME - 321)) | (1 << (PlSqlParser.DB_VERSION - 321)) | (1 << (PlSqlParser.DDL - 321)) | (1 << (PlSqlParser.DEALLOCATE - 321)) | (1 << (PlSqlParser.DEBUG - 321)) | (1 << (PlSqlParser.DEBUGGER - 321)) | (1 << (PlSqlParser.DEC - 321)) | (1 << (PlSqlParser.DECIMAL - 321)) | (1 << (PlSqlParser.DECLARE - 321)) | (1 << (PlSqlParser.DECOMPOSE - 321)) | (1 << (PlSqlParser.DECORRELATE - 321)) | (1 << (PlSqlParser.DECR - 321)) | (1 << (PlSqlParser.DECREMENT - 321)) | (1 << (PlSqlParser.DECRYPT - 321)) | (1 << (PlSqlParser.DEDUPLICATE - 321)) | (1 << (PlSqlParser.DEFAULTS - 321)))) !== 0) || ((((_la - 353)) & ~0x1f) == 0 && ((1 << (_la - 353)) & ((1 << (PlSqlParser.DEFERRABLE - 353)) | (1 << (PlSqlParser.DEFERRED - 353)) | (1 << (PlSqlParser.DEFINED - 353)) | (1 << (PlSqlParser.DEFINE - 353)) | (1 << (PlSqlParser.DEFINER - 353)) | (1 << (PlSqlParser.DEGREE - 353)) | (1 << (PlSqlParser.DELAY - 353)) | (1 << (PlSqlParser.DELEGATE - 353)) | (1 << (PlSqlParser.DELETE_ALL - 353)) | (1 << (PlSqlParser.DELETE - 353)) | (1 << (PlSqlParser.DELETEXML - 353)) | (1 << (PlSqlParser.DEMAND - 353)) | (1 << (PlSqlParser.DENSE_RANKM - 353)) | (1 << (PlSqlParser.DEPENDENT - 353)) | (1 << (PlSqlParser.DEPTH - 353)) | (1 << (PlSqlParser.DEQUEUE - 353)) | (1 << (PlSqlParser.DEREF - 353)) | (1 << (PlSqlParser.DEREF_NO_REWRITE - 353)) | (1 << (PlSqlParser.DESTROY - 353)) | (1 << (PlSqlParser.DETACHED - 353)) | (1 << (PlSqlParser.DETERMINES - 353)) | (1 << (PlSqlParser.DETERMINISTIC - 353)) | (1 << (PlSqlParser.DICTIONARY - 353)) | (1 << (PlSqlParser.DIMENSION - 353)) | (1 << (PlSqlParser.DIMENSIONS - 353)) | (1 << (PlSqlParser.DIRECT_LOAD - 353)) | (1 << (PlSqlParser.DIRECTORY - 353)) | (1 << (PlSqlParser.DIRECT_PATH - 353)) | (1 << (PlSqlParser.DISABLE_ALL - 353)) | (1 << (PlSqlParser.DISABLE - 353)) | (1 << (PlSqlParser.DISABLE_PARALLEL_DML - 353)))) !== 0) || ((((_la - 385)) & ~0x1f) == 0 && ((1 << (_la - 385)) & ((1 << (PlSqlParser.DISABLE_PRESET - 385)) | (1 << (PlSqlParser.DISABLE_RPKE - 385)) | (1 << (PlSqlParser.DISALLOW - 385)) | (1 << (PlSqlParser.DISASSOCIATE - 385)) | (1 << (PlSqlParser.DISCARD - 385)) | (1 << (PlSqlParser.DISCONNECT - 385)) | (1 << (PlSqlParser.DISK - 385)) | (1 << (PlSqlParser.DISKGROUP - 385)) | (1 << (PlSqlParser.DISKS - 385)) | (1 << (PlSqlParser.DISMOUNT - 385)) | (1 << (PlSqlParser.DISTINGUISHED - 385)) | (1 << (PlSqlParser.DISTRIBUTED - 385)) | (1 << (PlSqlParser.DISTRIBUTE - 385)) | (1 << (PlSqlParser.DML - 385)) | (1 << (PlSqlParser.DML_UPDATE - 385)) | (1 << (PlSqlParser.DOCFIDELITY - 385)) | (1 << (PlSqlParser.DOCUMENT - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_FILTER - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_NO_SORT - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_SORT - 385)) | (1 << (PlSqlParser.DOUBLE - 385)) | (1 << (PlSqlParser.DOWNGRADE - 385)) | (1 << (PlSqlParser.DRIVING_SITE - 385)) | (1 << (PlSqlParser.DROP_COLUMN - 385)) | (1 << (PlSqlParser.DROP_GROUP - 385)) | (1 << (PlSqlParser.DSINTERVAL_UNCONSTRAINED - 385)) | (1 << (PlSqlParser.DST_UPGRADE_INSERT_CONV - 385)) | (1 << (PlSqlParser.DUMP - 385)))) !== 0) || ((((_la - 417)) & ~0x1f) == 0 && ((1 << (_la - 417)) & ((1 << (PlSqlParser.DUPLICATE - 417)) | (1 << (PlSqlParser.DV - 417)) | (1 << (PlSqlParser.DYNAMIC - 417)) | (1 << (PlSqlParser.DYNAMIC_SAMPLING - 417)) | (1 << (PlSqlParser.DYNAMIC_SAMPLING_EST_CDN - 417)) | (1 << (PlSqlParser.EACH - 417)) | (1 << (PlSqlParser.EDITIONABLE - 417)) | (1 << (PlSqlParser.EDITION - 417)) | (1 << (PlSqlParser.EDITIONING - 417)) | (1 << (PlSqlParser.EDITIONS - 417)) | (1 << (PlSqlParser.ELEMENT - 417)) | (1 << (PlSqlParser.ELIM_GROUPBY - 417)) | (1 << (PlSqlParser.ELIMINATE_JOIN - 417)) | (1 << (PlSqlParser.ELIMINATE_OBY - 417)) | (1 << (PlSqlParser.ELIMINATE_OUTER_JOIN - 417)) | (1 << (PlSqlParser.EM - 417)) | (1 << (PlSqlParser.EMPTY_BLOB - 417)) | (1 << (PlSqlParser.EMPTY_CLOB - 417)) | (1 << (PlSqlParser.EMPTY - 417)) | (1 << (PlSqlParser.ENABLE_ALL - 417)) | (1 << (PlSqlParser.ENABLE - 417)) | (1 << (PlSqlParser.ENABLE_PARALLEL_DML - 417)) | (1 << (PlSqlParser.ENABLE_PRESET - 417)) | (1 << (PlSqlParser.ENCODING - 417)) | (1 << (PlSqlParser.ENCRYPT - 417)) | (1 << (PlSqlParser.ENCRYPTION - 417)) | (1 << (PlSqlParser.END_OUTLINE_DATA - 417)) | (1 << (PlSqlParser.ENFORCED - 417)) | (1 << (PlSqlParser.ENFORCE - 417)))) !== 0) || ((((_la - 449)) & ~0x1f) == 0 && ((1 << (_la - 449)) & ((1 << (PlSqlParser.ENQUEUE - 449)) | (1 << (PlSqlParser.ENTERPRISE - 449)) | (1 << (PlSqlParser.ENTITYESCAPING - 449)) | (1 << (PlSqlParser.ENTRY - 449)) | (1 << (PlSqlParser.EQUIPART - 449)) | (1 << (PlSqlParser.ERR - 449)) | (1 << (PlSqlParser.ERROR_ARGUMENT - 449)) | (1 << (PlSqlParser.ERROR - 449)) | (1 << (PlSqlParser.ERROR_ON_OVERLAP_TIME - 449)) | (1 << (PlSqlParser.ERRORS - 449)) | (1 << (PlSqlParser.ESCAPE - 449)) | (1 << (PlSqlParser.ESTIMATE - 449)) | (1 << (PlSqlParser.EVAL - 449)) | (1 << (PlSqlParser.EVALNAME - 449)) | (1 << (PlSqlParser.EVALUATE - 449)) | (1 << (PlSqlParser.EVALUATION - 449)) | (1 << (PlSqlParser.EVENTS - 449)) | (1 << (PlSqlParser.EVERY - 449)) | (1 << (PlSqlParser.EXCEPT - 449)) | (1 << (PlSqlParser.EXCEPTION - 449)) | (1 << (PlSqlParser.EXCEPTION_INIT - 449)) | (1 << (PlSqlParser.EXCEPTIONS - 449)) | (1 << (PlSqlParser.EXCHANGE - 449)) | (1 << (PlSqlParser.EXCLUDE - 449)) | (1 << (PlSqlParser.EXCLUDING - 449)) | (1 << (PlSqlParser.EXECUTE - 449)) | (1 << (PlSqlParser.EXEMPT - 449)) | (1 << (PlSqlParser.EXISTING - 449)) | (1 << (PlSqlParser.EXISTS - 449)) | (1 << (PlSqlParser.EXISTSNODE - 449)) | (1 << (PlSqlParser.EXIT - 449)))) !== 0) || ((((_la - 481)) & ~0x1f) == 0 && ((1 << (_la - 481)) & ((1 << (PlSqlParser.EXPAND_GSET_TO_UNION - 481)) | (1 << (PlSqlParser.EXPAND_TABLE - 481)) | (1 << (PlSqlParser.EXP - 481)) | (1 << (PlSqlParser.EXPIRE - 481)) | (1 << (PlSqlParser.EXPLAIN - 481)) | (1 << (PlSqlParser.EXPLOSION - 481)) | (1 << (PlSqlParser.EXPORT - 481)) | (1 << (PlSqlParser.EXPR_CORR_CHECK - 481)) | (1 << (PlSqlParser.EXPRESS - 481)) | (1 << (PlSqlParser.EXTENDS - 481)) | (1 << (PlSqlParser.EXTENT - 481)) | (1 << (PlSqlParser.EXTENTS - 481)) | (1 << (PlSqlParser.EXTERNAL - 481)) | (1 << (PlSqlParser.EXTERNALLY - 481)) | (1 << (PlSqlParser.EXTRACTCLOBXML - 481)) | (1 << (PlSqlParser.EXTRACT - 481)) | (1 << (PlSqlParser.EXTRACTVALUE - 481)) | (1 << (PlSqlParser.EXTRA - 481)) | (1 << (PlSqlParser.FACILITY - 481)) | (1 << (PlSqlParser.FACT - 481)) | (1 << (PlSqlParser.FACTOR - 481)) | (1 << (PlSqlParser.FACTORIZE_JOIN - 481)) | (1 << (PlSqlParser.FAILED - 481)) | (1 << (PlSqlParser.FAILED_LOGIN_ATTEMPTS - 481)) | (1 << (PlSqlParser.FAILGROUP - 481)) | (1 << (PlSqlParser.FAILOVER - 481)) | (1 << (PlSqlParser.FAILURE - 481)) | (1 << (PlSqlParser.FALSE - 481)) | (1 << (PlSqlParser.FAMILY - 481)) | (1 << (PlSqlParser.FAR - 481)) | (1 << (PlSqlParser.FAST - 481)) | (1 << (PlSqlParser.FASTSTART - 481)))) !== 0) || ((((_la - 513)) & ~0x1f) == 0 && ((1 << (_la - 513)) & ((1 << (PlSqlParser.FBTSCAN - 513)) | (1 << (PlSqlParser.FEATURE_DETAILS - 513)) | (1 << (PlSqlParser.FEATURE_ID - 513)) | (1 << (PlSqlParser.FEATURE_SET - 513)) | (1 << (PlSqlParser.FEATURE_VALUE - 513)) | (1 << (PlSqlParser.FETCH - 513)) | (1 << (PlSqlParser.FILE - 513)) | (1 << (PlSqlParser.FILE_NAME_CONVERT - 513)) | (1 << (PlSqlParser.FILESYSTEM_LIKE_LOGGING - 513)) | (1 << (PlSqlParser.FILTER - 513)) | (1 << (PlSqlParser.FINAL - 513)) | (1 << (PlSqlParser.FINE - 513)) | (1 << (PlSqlParser.FINISH - 513)) | (1 << (PlSqlParser.FIRST - 513)) | (1 << (PlSqlParser.FIRSTM - 513)) | (1 << (PlSqlParser.FIRST_ROWS - 513)) | (1 << (PlSqlParser.FIRST_VALUE - 513)) | (1 << (PlSqlParser.FIXED_VIEW_DATA - 513)) | (1 << (PlSqlParser.FLAGGER - 513)) | (1 << (PlSqlParser.FLASHBACK - 513)) | (1 << (PlSqlParser.FLASH_CACHE - 513)) | (1 << (PlSqlParser.FLOAT - 513)) | (1 << (PlSqlParser.FLOB - 513)) | (1 << (PlSqlParser.FLOOR - 513)) | (1 << (PlSqlParser.FLUSH - 513)) | (1 << (PlSqlParser.FOLDER - 513)) | (1 << (PlSqlParser.FOLLOWING - 513)) | (1 << (PlSqlParser.FOLLOWS - 513)) | (1 << (PlSqlParser.FORALL - 513)) | (1 << (PlSqlParser.FORCE - 513)) | (1 << (PlSqlParser.FORCE_XML_QUERY_REWRITE - 513)) | (1 << (PlSqlParser.FOREIGN - 513)))) !== 0) || ((((_la - 545)) & ~0x1f) == 0 && ((1 << (_la - 545)) & ((1 << (PlSqlParser.FOREVER - 545)) | (1 << (PlSqlParser.FORMAT - 545)) | (1 << (PlSqlParser.FORWARD - 545)) | (1 << (PlSqlParser.FRAGMENT_NUMBER - 545)) | (1 << (PlSqlParser.FREELIST - 545)) | (1 << (PlSqlParser.FREELISTS - 545)) | (1 << (PlSqlParser.FREEPOOLS - 545)) | (1 << (PlSqlParser.FRESH - 545)) | (1 << (PlSqlParser.FROM_TZ - 545)) | (1 << (PlSqlParser.FULL - 545)) | (1 << (PlSqlParser.FULL_OUTER_JOIN_TO_OUTER - 545)) | (1 << (PlSqlParser.FUNCTION - 545)) | (1 << (PlSqlParser.FUNCTIONS - 545)) | (1 << (PlSqlParser.GATHER_OPTIMIZER_STATISTICS - 545)) | (1 << (PlSqlParser.GATHER_PLAN_STATISTICS - 545)) | (1 << (PlSqlParser.GBY_CONC_ROLLUP - 545)) | (1 << (PlSqlParser.GBY_PUSHDOWN - 545)) | (1 << (PlSqlParser.GENERATED - 545)) | (1 << (PlSqlParser.GET - 545)) | (1 << (PlSqlParser.GLOBAL - 545)) | (1 << (PlSqlParser.GLOBALLY - 545)) | (1 << (PlSqlParser.GLOBAL_NAME - 545)) | (1 << (PlSqlParser.GLOBAL_TOPIC_ENABLED - 545)) | (1 << (PlSqlParser.GROUP_BY - 545)) | (1 << (PlSqlParser.GROUP_ID - 545)) | (1 << (PlSqlParser.GROUPING - 545)) | (1 << (PlSqlParser.GROUPING_ID - 545)))) !== 0) || ((((_la - 577)) & ~0x1f) == 0 && ((1 << (_la - 577)) & ((1 << (PlSqlParser.GROUPS - 577)) | (1 << (PlSqlParser.GUARANTEED - 577)) | (1 << (PlSqlParser.GUARANTEE - 577)) | (1 << (PlSqlParser.GUARD - 577)) | (1 << (PlSqlParser.HASH_AJ - 577)) | (1 << (PlSqlParser.HASH - 577)) | (1 << (PlSqlParser.HASHKEYS - 577)) | (1 << (PlSqlParser.HASH_SJ - 577)) | (1 << (PlSqlParser.HEADER - 577)) | (1 << (PlSqlParser.HEAP - 577)) | (1 << (PlSqlParser.HELP - 577)) | (1 << (PlSqlParser.HEXTORAW - 577)) | (1 << (PlSqlParser.HEXTOREF - 577)) | (1 << (PlSqlParser.HIDDEN_KEYWORD - 577)) | (1 << (PlSqlParser.HIDE - 577)) | (1 << (PlSqlParser.HIERARCHY - 577)) | (1 << (PlSqlParser.HIGH - 577)) | (1 << (PlSqlParser.HINTSET_BEGIN - 577)) | (1 << (PlSqlParser.HINTSET_END - 577)) | (1 << (PlSqlParser.HOT - 577)) | (1 << (PlSqlParser.HOUR - 577)) | (1 << (PlSqlParser.HWM_BROKERED - 577)) | (1 << (PlSqlParser.HYBRID - 577)) | (1 << (PlSqlParser.IDENTIFIER - 577)) | (1 << (PlSqlParser.IDENTITY - 577)) | (1 << (PlSqlParser.IDGENERATORS - 577)) | (1 << (PlSqlParser.ID - 577)) | (1 << (PlSqlParser.IDLE_TIME - 577)) | (1 << (PlSqlParser.IF - 577)) | (1 << (PlSqlParser.IGNORE - 577)))) !== 0) || ((((_la - 609)) & ~0x1f) == 0 && ((1 << (_la - 609)) & ((1 << (PlSqlParser.IGNORE_OPTIM_EMBEDDED_HINTS - 609)) | (1 << (PlSqlParser.IGNORE_ROW_ON_DUPKEY_INDEX - 609)) | (1 << (PlSqlParser.IGNORE_WHERE_CLAUSE - 609)) | (1 << (PlSqlParser.ILM - 609)) | (1 << (PlSqlParser.IMMEDIATE - 609)) | (1 << (PlSqlParser.IMPACT - 609)) | (1 << (PlSqlParser.IMPORT - 609)) | (1 << (PlSqlParser.INACTIVE - 609)) | (1 << (PlSqlParser.INCLUDE - 609)) | (1 << (PlSqlParser.INCLUDE_VERSION - 609)) | (1 << (PlSqlParser.INCLUDING - 609)) | (1 << (PlSqlParser.INCREMENTAL - 609)) | (1 << (PlSqlParser.INCREMENT - 609)) | (1 << (PlSqlParser.INCR - 609)) | (1 << (PlSqlParser.INDENT - 609)) | (1 << (PlSqlParser.INDEX_ASC - 609)) | (1 << (PlSqlParser.INDEX_COMBINE - 609)) | (1 << (PlSqlParser.INDEX_DESC - 609)) | (1 << (PlSqlParser.INDEXED - 609)) | (1 << (PlSqlParser.INDEXES - 609)) | (1 << (PlSqlParser.INDEX_FFS - 609)) | (1 << (PlSqlParser.INDEX_FILTER - 609)) | (1 << (PlSqlParser.INDEXING - 609)) | (1 << (PlSqlParser.INDEX_JOIN - 609)) | (1 << (PlSqlParser.INDEX_ROWS - 609)) | (1 << (PlSqlParser.INDEX_RRS - 609)) | (1 << (PlSqlParser.INDEX_RS_ASC - 609)) | (1 << (PlSqlParser.INDEX_RS_DESC - 609)) | (1 << (PlSqlParser.INDEX_RS - 609)) | (1 << (PlSqlParser.INDEX_SCAN - 609)) | (1 << (PlSqlParser.INDEX_SKIP_SCAN - 609)))) !== 0) || ((((_la - 641)) & ~0x1f) == 0 && ((1 << (_la - 641)) & ((1 << (PlSqlParser.INDEX_SS_ASC - 641)) | (1 << (PlSqlParser.INDEX_SS_DESC - 641)) | (1 << (PlSqlParser.INDEX_SS - 641)) | (1 << (PlSqlParser.INDEX_STATS - 641)) | (1 << (PlSqlParser.INDEXTYPE - 641)) | (1 << (PlSqlParser.INDEXTYPES - 641)) | (1 << (PlSqlParser.INDICATOR - 641)) | (1 << (PlSqlParser.INDICES - 641)) | (1 << (PlSqlParser.INFINITE - 641)) | (1 << (PlSqlParser.INFORMATIONAL - 641)) | (1 << (PlSqlParser.INHERIT - 641)) | (1 << (PlSqlParser.INITCAP - 641)) | (1 << (PlSqlParser.INITIAL - 641)) | (1 << (PlSqlParser.INITIALIZED - 641)) | (1 << (PlSqlParser.INITIALLY - 641)) | (1 << (PlSqlParser.INITRANS - 641)) | (1 << (PlSqlParser.INLINE - 641)) | (1 << (PlSqlParser.INLINE_XMLTYPE_NT - 641)) | (1 << (PlSqlParser.INMEMORY - 641)) | (1 << (PlSqlParser.IN_MEMORY_METADATA - 641)) | (1 << (PlSqlParser.INMEMORY_PRUNING - 641)) | (1 << (PlSqlParser.INNER - 641)) | (1 << (PlSqlParser.INOUT - 641)) | (1 << (PlSqlParser.INPLACE - 641)) | (1 << (PlSqlParser.INSERTCHILDXMLAFTER - 641)) | (1 << (PlSqlParser.INSERTCHILDXMLBEFORE - 641)) | (1 << (PlSqlParser.INSERTCHILDXML - 641)) | (1 << (PlSqlParser.INSERTXMLAFTER - 641)) | (1 << (PlSqlParser.INSERTXMLBEFORE - 641)) | (1 << (PlSqlParser.INSTANCE - 641)))) !== 0) || ((((_la - 673)) & ~0x1f) == 0 && ((1 << (_la - 673)) & ((1 << (PlSqlParser.INSTANCES - 673)) | (1 << (PlSqlParser.INSTANTIABLE - 673)) | (1 << (PlSqlParser.INSTANTLY - 673)) | (1 << (PlSqlParser.INSTEAD - 673)) | (1 << (PlSqlParser.INSTR2 - 673)) | (1 << (PlSqlParser.INSTR4 - 673)) | (1 << (PlSqlParser.INSTRB - 673)) | (1 << (PlSqlParser.INSTRC - 673)) | (1 << (PlSqlParser.INSTR - 673)) | (1 << (PlSqlParser.INTEGER - 673)) | (1 << (PlSqlParser.INTERLEAVED - 673)) | (1 << (PlSqlParser.INTERMEDIATE - 673)) | (1 << (PlSqlParser.INTERNAL_CONVERT - 673)) | (1 << (PlSqlParser.INTERNAL_USE - 673)) | (1 << (PlSqlParser.INTERPRETED - 673)) | (1 << (PlSqlParser.INTERVAL - 673)) | (1 << (PlSqlParser.INT - 673)) | (1 << (PlSqlParser.INVALIDATE - 673)) | (1 << (PlSqlParser.INVISIBLE - 673)) | (1 << (PlSqlParser.IN_XQUERY - 673)) | (1 << (PlSqlParser.ISOLATION - 673)) | (1 << (PlSqlParser.ISOLATION_LEVEL - 673)) | (1 << (PlSqlParser.ITERATE - 673)) | (1 << (PlSqlParser.ITERATION_NUMBER - 673)) | (1 << (PlSqlParser.JAVA - 673)) | (1 << (PlSqlParser.JOB - 673)) | (1 << (PlSqlParser.JOIN - 673)) | (1 << (PlSqlParser.JSON_ARRAYAGG - 673)) | (1 << (PlSqlParser.JSON_ARRAY - 673)))) !== 0) || ((((_la - 705)) & ~0x1f) == 0 && ((1 << (_la - 705)) & ((1 << (PlSqlParser.JSON_EQUAL - 705)) | (1 << (PlSqlParser.JSON_EXISTS2 - 705)) | (1 << (PlSqlParser.JSON_EXISTS - 705)) | (1 << (PlSqlParser.JSONGET - 705)) | (1 << (PlSqlParser.JSON - 705)) | (1 << (PlSqlParser.JSON_OBJECTAGG - 705)) | (1 << (PlSqlParser.JSON_OBJECT - 705)) | (1 << (PlSqlParser.JSONPARSE - 705)) | (1 << (PlSqlParser.JSON_QUERY - 705)) | (1 << (PlSqlParser.JSON_SERIALIZE - 705)) | (1 << (PlSqlParser.JSON_TABLE - 705)) | (1 << (PlSqlParser.JSON_TEXTCONTAINS2 - 705)) | (1 << (PlSqlParser.JSON_TEXTCONTAINS - 705)) | (1 << (PlSqlParser.JSON_VALUE - 705)) | (1 << (PlSqlParser.KEEP_DUPLICATES - 705)) | (1 << (PlSqlParser.KEEP - 705)) | (1 << (PlSqlParser.KERBEROS - 705)) | (1 << (PlSqlParser.KEY - 705)) | (1 << (PlSqlParser.KEY_LENGTH - 705)) | (1 << (PlSqlParser.KEYSIZE - 705)) | (1 << (PlSqlParser.KEYS - 705)) | (1 << (PlSqlParser.KEYSTORE - 705)) | (1 << (PlSqlParser.KILL - 705)) | (1 << (PlSqlParser.LABEL - 705)) | (1 << (PlSqlParser.LANGUAGE - 705)) | (1 << (PlSqlParser.LAST_DAY - 705)) | (1 << (PlSqlParser.LAST - 705)) | (1 << (PlSqlParser.LAST_VALUE - 705)) | (1 << (PlSqlParser.LATERAL - 705)) | (1 << (PlSqlParser.LAX - 705)) | (1 << (PlSqlParser.LAYER - 705)) | (1 << (PlSqlParser.LDAP_REGISTRATION_ENABLED - 705)))) !== 0) || ((((_la - 737)) & ~0x1f) == 0 && ((1 << (_la - 737)) & ((1 << (PlSqlParser.LDAP_REGISTRATION - 737)) | (1 << (PlSqlParser.LDAP_REG_SYNC_INTERVAL - 737)) | (1 << (PlSqlParser.LEADING - 737)) | (1 << (PlSqlParser.LEFT - 737)) | (1 << (PlSqlParser.LENGTH2 - 737)) | (1 << (PlSqlParser.LENGTH4 - 737)) | (1 << (PlSqlParser.LENGTHB - 737)) | (1 << (PlSqlParser.LENGTHC - 737)) | (1 << (PlSqlParser.LENGTH - 737)) | (1 << (PlSqlParser.LESS - 737)) | (1 << (PlSqlParser.LEVEL - 737)) | (1 << (PlSqlParser.LEVELS - 737)) | (1 << (PlSqlParser.LIBRARY - 737)) | (1 << (PlSqlParser.LIFECYCLE - 737)) | (1 << (PlSqlParser.LIFE - 737)) | (1 << (PlSqlParser.LIFETIME - 737)) | (1 << (PlSqlParser.LIKE2 - 737)) | (1 << (PlSqlParser.LIKE4 - 737)) | (1 << (PlSqlParser.LIKEC - 737)) | (1 << (PlSqlParser.LIKE_EXPAND - 737)) | (1 << (PlSqlParser.LIMIT - 737)) | (1 << (PlSqlParser.LINEAR - 737)) | (1 << (PlSqlParser.LINK - 737)) | (1 << (PlSqlParser.LIST - 737)) | (1 << (PlSqlParser.LN - 737)) | (1 << (PlSqlParser.LNNVL - 737)) | (1 << (PlSqlParser.LOAD - 737)) | (1 << (PlSqlParser.LOB - 737)) | (1 << (PlSqlParser.LOBNVL - 737)) | (1 << (PlSqlParser.LOBS - 737)) | (1 << (PlSqlParser.LOCAL_INDEXES - 737)))) !== 0) || ((((_la - 769)) & ~0x1f) == 0 && ((1 << (_la - 769)) & ((1 << (PlSqlParser.LOCAL - 769)) | (1 << (PlSqlParser.LOCALTIME - 769)) | (1 << (PlSqlParser.LOCALTIMESTAMP - 769)) | (1 << (PlSqlParser.LOCATION - 769)) | (1 << (PlSqlParser.LOCATOR - 769)) | (1 << (PlSqlParser.LOCKED - 769)) | (1 << (PlSqlParser.LOCKING - 769)) | (1 << (PlSqlParser.LOGFILE - 769)) | (1 << (PlSqlParser.LOGFILES - 769)) | (1 << (PlSqlParser.LOGGING - 769)) | (1 << (PlSqlParser.LOGICAL - 769)) | (1 << (PlSqlParser.LOGICAL_READS_PER_CALL - 769)) | (1 << (PlSqlParser.LOGICAL_READS_PER_SESSION - 769)) | (1 << (PlSqlParser.LOG - 769)) | (1 << (PlSqlParser.LOGMINING - 769)) | (1 << (PlSqlParser.LOGOFF - 769)) | (1 << (PlSqlParser.LOGON - 769)) | (1 << (PlSqlParser.LOG_READ_ONLY_VIOLATIONS - 769)) | (1 << (PlSqlParser.LONG - 769)) | (1 << (PlSqlParser.LOOP - 769)) | (1 << (PlSqlParser.LOWER - 769)) | (1 << (PlSqlParser.LOW - 769)) | (1 << (PlSqlParser.LPAD - 769)) | (1 << (PlSqlParser.LTRIM - 769)) | (1 << (PlSqlParser.MAIN - 769)) | (1 << (PlSqlParser.MAKE_REF - 769)) | (1 << (PlSqlParser.MANAGED - 769)) | (1 << (PlSqlParser.MANAGE - 769)) | (1 << (PlSqlParser.MANAGEMENT - 769)) | (1 << (PlSqlParser.MANAGER - 769)) | (1 << (PlSqlParser.MANUAL - 769)))) !== 0) || ((((_la - 801)) & ~0x1f) == 0 && ((1 << (_la - 801)) & ((1 << (PlSqlParser.MAP - 801)) | (1 << (PlSqlParser.MAPPING - 801)) | (1 << (PlSqlParser.MASTER - 801)) | (1 << (PlSqlParser.MATCHED - 801)) | (1 << (PlSqlParser.MATCHES - 801)) | (1 << (PlSqlParser.MATCH - 801)) | (1 << (PlSqlParser.MATCH_NUMBER - 801)) | (1 << (PlSqlParser.MATCH_RECOGNIZE - 801)) | (1 << (PlSqlParser.MATERIALIZED - 801)) | (1 << (PlSqlParser.MATERIALIZE - 801)) | (1 << (PlSqlParser.MAXARCHLOGS - 801)) | (1 << (PlSqlParser.MAXDATAFILES - 801)) | (1 << (PlSqlParser.MAXEXTENTS - 801)) | (1 << (PlSqlParser.MAXIMIZE - 801)) | (1 << (PlSqlParser.MAXINSTANCES - 801)) | (1 << (PlSqlParser.MAXLOGFILES - 801)) | (1 << (PlSqlParser.MAXLOGHISTORY - 801)) | (1 << (PlSqlParser.MAXLOGMEMBERS - 801)) | (1 << (PlSqlParser.MAX_SHARED_TEMP_SIZE - 801)) | (1 << (PlSqlParser.MAXSIZE - 801)) | (1 << (PlSqlParser.MAXTRANS - 801)) | (1 << (PlSqlParser.MAXVALUE - 801)) | (1 << (PlSqlParser.MEASURE - 801)) | (1 << (PlSqlParser.MEASURES - 801)) | (1 << (PlSqlParser.MEDIUM - 801)) | (1 << (PlSqlParser.MEMBER - 801)) | (1 << (PlSqlParser.MEMCOMPRESS - 801)) | (1 << (PlSqlParser.MEMORY - 801)) | (1 << (PlSqlParser.MERGEACTIONS - 801)) | (1 << (PlSqlParser.MERGE_AJ - 801)) | (1 << (PlSqlParser.MERGE_CONST_ON - 801)) | (1 << (PlSqlParser.MERGE - 801)))) !== 0) || ((((_la - 833)) & ~0x1f) == 0 && ((1 << (_la - 833)) & ((1 << (PlSqlParser.MERGE_SJ - 833)) | (1 << (PlSqlParser.METADATA - 833)) | (1 << (PlSqlParser.METHOD - 833)) | (1 << (PlSqlParser.MIGRATE - 833)) | (1 << (PlSqlParser.MIGRATION - 833)) | (1 << (PlSqlParser.MINEXTENTS - 833)) | (1 << (PlSqlParser.MINIMIZE - 833)) | (1 << (PlSqlParser.MINIMUM - 833)) | (1 << (PlSqlParser.MINING - 833)) | (1 << (PlSqlParser.MINUS_NULL - 833)) | (1 << (PlSqlParser.MINUTE - 833)) | (1 << (PlSqlParser.MINVALUE - 833)) | (1 << (PlSqlParser.MIRRORCOLD - 833)) | (1 << (PlSqlParser.MIRRORHOT - 833)) | (1 << (PlSqlParser.MIRROR - 833)) | (1 << (PlSqlParser.MLSLABEL - 833)) | (1 << (PlSqlParser.MODEL_COMPILE_SUBQUERY - 833)) | (1 << (PlSqlParser.MODEL_DONTVERIFY_UNIQUENESS - 833)) | (1 << (PlSqlParser.MODEL_DYNAMIC_SUBQUERY - 833)) | (1 << (PlSqlParser.MODEL_MIN_ANALYSIS - 833)) | (1 << (PlSqlParser.MODEL - 833)) | (1 << (PlSqlParser.MODEL_NB - 833)) | (1 << (PlSqlParser.MODEL_NO_ANALYSIS - 833)) | (1 << (PlSqlParser.MODEL_PBY - 833)) | (1 << (PlSqlParser.MODEL_PUSH_REF - 833)) | (1 << (PlSqlParser.MODEL_SV - 833)) | (1 << (PlSqlParser.MODIFICATION - 833)) | (1 << (PlSqlParser.MODIFY_COLUMN_TYPE - 833)) | (1 << (PlSqlParser.MODIFY - 833)) | (1 << (PlSqlParser.MOD - 833)))) !== 0) || ((((_la - 865)) & ~0x1f) == 0 && ((1 << (_la - 865)) & ((1 << (PlSqlParser.MODULE - 865)) | (1 << (PlSqlParser.MONITORING - 865)) | (1 << (PlSqlParser.MONITOR - 865)) | (1 << (PlSqlParser.MONTH - 865)) | (1 << (PlSqlParser.MONTHS_BETWEEN - 865)) | (1 << (PlSqlParser.MONTHS - 865)) | (1 << (PlSqlParser.MOUNT - 865)) | (1 << (PlSqlParser.MOUNTPATH - 865)) | (1 << (PlSqlParser.MOVEMENT - 865)) | (1 << (PlSqlParser.MOVE - 865)) | (1 << (PlSqlParser.MULTIDIMENSIONAL - 865)) | (1 << (PlSqlParser.MULTISET - 865)) | (1 << (PlSqlParser.MV_MERGE - 865)) | (1 << (PlSqlParser.NAMED - 865)) | (1 << (PlSqlParser.NAME - 865)) | (1 << (PlSqlParser.NAMESPACE - 865)) | (1 << (PlSqlParser.NAN - 865)) | (1 << (PlSqlParser.NANVL - 865)) | (1 << (PlSqlParser.NATIONAL - 865)) | (1 << (PlSqlParser.NATIVE_FULL_OUTER_JOIN - 865)) | (1 << (PlSqlParser.NATIVE - 865)) | (1 << (PlSqlParser.NATURAL - 865)) | (1 << (PlSqlParser.NAV - 865)) | (1 << (PlSqlParser.NCHAR_CS - 865)) | (1 << (PlSqlParser.NCHAR - 865)) | (1 << (PlSqlParser.NCHR - 865)) | (1 << (PlSqlParser.NCLOB - 865)) | (1 << (PlSqlParser.NEEDED - 865)) | (1 << (PlSqlParser.NEG - 865)) | (1 << (PlSqlParser.NESTED - 865)) | (1 << (PlSqlParser.NESTED_TABLE_FAST_INSERT - 865)))) !== 0) || ((((_la - 897)) & ~0x1f) == 0 && ((1 << (_la - 897)) & ((1 << (PlSqlParser.NESTED_TABLE_GET_REFS - 897)) | (1 << (PlSqlParser.NESTED_TABLE_ID - 897)) | (1 << (PlSqlParser.NESTED_TABLE_SET_REFS - 897)) | (1 << (PlSqlParser.NESTED_TABLE_SET_SETID - 897)) | (1 << (PlSqlParser.NETWORK - 897)) | (1 << (PlSqlParser.NEVER - 897)) | (1 << (PlSqlParser.NEW - 897)) | (1 << (PlSqlParser.NEW_TIME - 897)) | (1 << (PlSqlParser.NEXT_DAY - 897)) | (1 << (PlSqlParser.NEXT - 897)) | (1 << (PlSqlParser.NL_AJ - 897)) | (1 << (PlSqlParser.NLJ_BATCHING - 897)) | (1 << (PlSqlParser.NLJ_INDEX_FILTER - 897)) | (1 << (PlSqlParser.NLJ_INDEX_SCAN - 897)) | (1 << (PlSqlParser.NLJ_PREFETCH - 897)) | (1 << (PlSqlParser.NLS_CALENDAR - 897)) | (1 << (PlSqlParser.NLS_CHARACTERSET - 897)) | (1 << (PlSqlParser.NLS_CHARSET_DECL_LEN - 897)) | (1 << (PlSqlParser.NLS_CHARSET_ID - 897)) | (1 << (PlSqlParser.NLS_CHARSET_NAME - 897)) | (1 << (PlSqlParser.NLS_COMP - 897)) | (1 << (PlSqlParser.NLS_CURRENCY - 897)) | (1 << (PlSqlParser.NLS_DATE_FORMAT - 897)) | (1 << (PlSqlParser.NLS_DATE_LANGUAGE - 897)) | (1 << (PlSqlParser.NLS_INITCAP - 897)) | (1 << (PlSqlParser.NLS_ISO_CURRENCY - 897)) | (1 << (PlSqlParser.NL_SJ - 897)) | (1 << (PlSqlParser.NLS_LANG - 897)) | (1 << (PlSqlParser.NLS_LANGUAGE - 897)) | (1 << (PlSqlParser.NLS_LENGTH_SEMANTICS - 897)) | (1 << (PlSqlParser.NLS_LOWER - 897)) | (1 << (PlSqlParser.NLS_NCHAR_CONV_EXCP - 897)))) !== 0) || ((((_la - 929)) & ~0x1f) == 0 && ((1 << (_la - 929)) & ((1 << (PlSqlParser.NLS_NUMERIC_CHARACTERS - 929)) | (1 << (PlSqlParser.NLS_SORT - 929)) | (1 << (PlSqlParser.NLSSORT - 929)) | (1 << (PlSqlParser.NLS_SPECIAL_CHARS - 929)) | (1 << (PlSqlParser.NLS_TERRITORY - 929)) | (1 << (PlSqlParser.NLS_UPPER - 929)) | (1 << (PlSqlParser.NO_ACCESS - 929)) | (1 << (PlSqlParser.NO_ADAPTIVE_PLAN - 929)) | (1 << (PlSqlParser.NO_ANSI_REARCH - 929)) | (1 << (PlSqlParser.NOAPPEND - 929)) | (1 << (PlSqlParser.NOARCHIVELOG - 929)) | (1 << (PlSqlParser.NOAUDIT - 929)) | (1 << (PlSqlParser.NO_AUTO_REOPTIMIZE - 929)) | (1 << (PlSqlParser.NO_BASETABLE_MULTIMV_REWRITE - 929)) | (1 << (PlSqlParser.NO_BATCH_TABLE_ACCESS_BY_ROWID - 929)) | (1 << (PlSqlParser.NO_BIND_AWARE - 929)) | (1 << (PlSqlParser.NO_BUFFER - 929)) | (1 << (PlSqlParser.NOCACHE - 929)) | (1 << (PlSqlParser.NO_CARTESIAN - 929)) | (1 << (PlSqlParser.NO_CHECK_ACL_REWRITE - 929)) | (1 << (PlSqlParser.NO_CLUSTER_BY_ROWID - 929)) | (1 << (PlSqlParser.NO_CLUSTERING - 929)) | (1 << (PlSqlParser.NO_COALESCE_SQ - 929)) | (1 << (PlSqlParser.NO_COMMON_DATA - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_CB_WHR_ONLY - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_COMBINE_SW - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_COST_BASED - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_ELIM_DUPS - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_FILTERING - 929)) | (1 << (PlSqlParser.NOCOPY - 929)) | (1 << (PlSqlParser.NO_COST_XML_QUERY_REWRITE - 929)))) !== 0) || ((((_la - 961)) & ~0x1f) == 0 && ((1 << (_la - 961)) & ((1 << (PlSqlParser.NO_CPU_COSTING - 961)) | (1 << (PlSqlParser.NOCPU_COSTING - 961)) | (1 << (PlSqlParser.NOCYCLE - 961)) | (1 << (PlSqlParser.NO_DATA_SECURITY_REWRITE - 961)) | (1 << (PlSqlParser.NO_DECORRELATE - 961)) | (1 << (PlSqlParser.NODELAY - 961)) | (1 << (PlSqlParser.NO_DOMAIN_INDEX_FILTER - 961)) | (1 << (PlSqlParser.NO_DST_UPGRADE_INSERT_CONV - 961)) | (1 << (PlSqlParser.NO_ELIM_GROUPBY - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_JOIN - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_OBY - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_OUTER_JOIN - 961)) | (1 << (PlSqlParser.NOENTITYESCAPING - 961)) | (1 << (PlSqlParser.NO_EXPAND_GSET_TO_UNION - 961)) | (1 << (PlSqlParser.NO_EXPAND - 961)) | (1 << (PlSqlParser.NO_EXPAND_TABLE - 961)) | (1 << (PlSqlParser.NO_FACT - 961)) | (1 << (PlSqlParser.NO_FACTORIZE_JOIN - 961)) | (1 << (PlSqlParser.NO_FILTERING - 961)) | (1 << (PlSqlParser.NOFORCE - 961)) | (1 << (PlSqlParser.NO_FULL_OUTER_JOIN_TO_OUTER - 961)) | (1 << (PlSqlParser.NO_GATHER_OPTIMIZER_STATISTICS - 961)) | (1 << (PlSqlParser.NO_GBY_PUSHDOWN - 961)) | (1 << (PlSqlParser.NOGUARANTEE - 961)) | (1 << (PlSqlParser.NO_INDEX_FFS - 961)) | (1 << (PlSqlParser.NO_INDEX - 961)) | (1 << (PlSqlParser.NO_INDEX_SS - 961)) | (1 << (PlSqlParser.NO_INMEMORY - 961)) | (1 << (PlSqlParser.NO_INMEMORY_PRUNING - 961)) | (1 << (PlSqlParser.NOKEEP - 961)) | (1 << (PlSqlParser.NO_LOAD - 961)) | (1 << (PlSqlParser.NOLOCAL - 961)))) !== 0) || ((((_la - 993)) & ~0x1f) == 0 && ((1 << (_la - 993)) & ((1 << (PlSqlParser.NOLOGGING - 993)) | (1 << (PlSqlParser.NOMAPPING - 993)) | (1 << (PlSqlParser.NOMAXVALUE - 993)) | (1 << (PlSqlParser.NO_MERGE - 993)) | (1 << (PlSqlParser.NOMINIMIZE - 993)) | (1 << (PlSqlParser.NOMINVALUE - 993)) | (1 << (PlSqlParser.NO_MODEL_PUSH_REF - 993)) | (1 << (PlSqlParser.NO_MONITORING - 993)) | (1 << (PlSqlParser.NOMONITORING - 993)) | (1 << (PlSqlParser.NO_MONITOR - 993)) | (1 << (PlSqlParser.NO_MULTIMV_REWRITE - 993)) | (1 << (PlSqlParser.NO_NATIVE_FULL_OUTER_JOIN - 993)) | (1 << (PlSqlParser.NONBLOCKING - 993)) | (1 << (PlSqlParser.NONEDITIONABLE - 993)) | (1 << (PlSqlParser.NONE - 993)) | (1 << (PlSqlParser.NO_NLJ_BATCHING - 993)) | (1 << (PlSqlParser.NO_NLJ_PREFETCH - 993)) | (1 << (PlSqlParser.NO - 993)) | (1 << (PlSqlParser.NONSCHEMA - 993)) | (1 << (PlSqlParser.NO_OBJECT_LINK - 993)) | (1 << (PlSqlParser.NOORDER - 993)) | (1 << (PlSqlParser.NO_ORDER_ROLLUPS - 993)) | (1 << (PlSqlParser.NO_OUTER_JOIN_TO_ANTI - 993)) | (1 << (PlSqlParser.NO_OUTER_JOIN_TO_INNER - 993)) | (1 << (PlSqlParser.NOOVERRIDE - 993)) | (1 << (PlSqlParser.NO_PARALLEL_INDEX - 993)) | (1 << (PlSqlParser.NOPARALLEL_INDEX - 993)) | (1 << (PlSqlParser.NO_PARALLEL - 993)) | (1 << (PlSqlParser.NOPARALLEL - 993)) | (1 << (PlSqlParser.NO_PARTIAL_COMMIT - 993)) | (1 << (PlSqlParser.NO_PARTIAL_JOIN - 993)) | (1 << (PlSqlParser.NO_PARTIAL_ROLLUP_PUSHDOWN - 993)))) !== 0) || ((((_la - 1025)) & ~0x1f) == 0 && ((1 << (_la - 1025)) & ((1 << (PlSqlParser.NOPARTITION - 1025)) | (1 << (PlSqlParser.NO_PLACE_DISTINCT - 1025)) | (1 << (PlSqlParser.NO_PLACE_GROUP_BY - 1025)) | (1 << (PlSqlParser.NO_PQ_CONCURRENT_UNION - 1025)) | (1 << (PlSqlParser.NO_PQ_MAP - 1025)) | (1 << (PlSqlParser.NO_PQ_REPLICATE - 1025)) | (1 << (PlSqlParser.NO_PQ_SKEW - 1025)) | (1 << (PlSqlParser.NO_PRUNE_GSETS - 1025)) | (1 << (PlSqlParser.NO_PULL_PRED - 1025)) | (1 << (PlSqlParser.NO_PUSH_PRED - 1025)) | (1 << (PlSqlParser.NO_PUSH_SUBQ - 1025)) | (1 << (PlSqlParser.NO_PX_FAULT_TOLERANCE - 1025)) | (1 << (PlSqlParser.NO_PX_JOIN_FILTER - 1025)) | (1 << (PlSqlParser.NO_QKN_BUFF - 1025)) | (1 << (PlSqlParser.NO_QUERY_TRANSFORMATION - 1025)) | (1 << (PlSqlParser.NO_REF_CASCADE - 1025)) | (1 << (PlSqlParser.NORELOCATE - 1025)) | (1 << (PlSqlParser.NORELY - 1025)) | (1 << (PlSqlParser.NOREPAIR - 1025)) | (1 << (PlSqlParser.NOREPLAY - 1025)) | (1 << (PlSqlParser.NORESETLOGS - 1025)) | (1 << (PlSqlParser.NO_RESULT_CACHE - 1025)) | (1 << (PlSqlParser.NOREVERSE - 1025)) | (1 << (PlSqlParser.NO_REWRITE - 1025)) | (1 << (PlSqlParser.NOREWRITE - 1025)) | (1 << (PlSqlParser.NORMAL - 1025)) | (1 << (PlSqlParser.NO_ROOT_SW_FOR_LOCAL - 1025)) | (1 << (PlSqlParser.NOROWDEPENDENCIES - 1025)) | (1 << (PlSqlParser.NOSCHEMACHECK - 1025)) | (1 << (PlSqlParser.NOSEGMENT - 1025)) | (1 << (PlSqlParser.NO_SEMIJOIN - 1025)) | (1 << (PlSqlParser.NO_SEMI_TO_INNER - 1025)))) !== 0) || ((((_la - 1057)) & ~0x1f) == 0 && ((1 << (_la - 1057)) & ((1 << (PlSqlParser.NO_SET_TO_JOIN - 1057)) | (1 << (PlSqlParser.NOSORT - 1057)) | (1 << (PlSqlParser.NO_SQL_TRANSLATION - 1057)) | (1 << (PlSqlParser.NO_SQL_TUNE - 1057)) | (1 << (PlSqlParser.NO_STAR_TRANSFORMATION - 1057)) | (1 << (PlSqlParser.NO_STATEMENT_QUEUING - 1057)) | (1 << (PlSqlParser.NO_STATS_GSETS - 1057)) | (1 << (PlSqlParser.NOSTRICT - 1057)) | (1 << (PlSqlParser.NO_SUBQUERY_PRUNING - 1057)) | (1 << (PlSqlParser.NO_SUBSTRB_PAD - 1057)) | (1 << (PlSqlParser.NO_SWAP_JOIN_INPUTS - 1057)) | (1 << (PlSqlParser.NOSWITCH - 1057)) | (1 << (PlSqlParser.NO_TABLE_LOOKUP_BY_NL - 1057)) | (1 << (PlSqlParser.NO_TEMP_TABLE - 1057)) | (1 << (PlSqlParser.NOTHING - 1057)) | (1 << (PlSqlParser.NOTIFICATION - 1057)) | (1 << (PlSqlParser.NO_TRANSFORM_DISTINCT_AGG - 1057)) | (1 << (PlSqlParser.NO_UNNEST - 1057)) | (1 << (PlSqlParser.NO_USE_CUBE - 1057)) | (1 << (PlSqlParser.NO_USE_HASH_AGGREGATION - 1057)) | (1 << (PlSqlParser.NO_USE_HASH_GBY_FOR_PUSHDOWN - 1057)) | (1 << (PlSqlParser.NO_USE_HASH - 1057)) | (1 << (PlSqlParser.NO_USE_INVISIBLE_INDEXES - 1057)) | (1 << (PlSqlParser.NO_USE_MERGE - 1057)) | (1 << (PlSqlParser.NO_USE_NL - 1057)) | (1 << (PlSqlParser.NO_USE_VECTOR_AGGREGATION - 1057)) | (1 << (PlSqlParser.NOVALIDATE - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM_DIMS - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM_FACT - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM - 1057)))) !== 0) || ((((_la - 1089)) & ~0x1f) == 0 && ((1 << (_la - 1089)) & ((1 << (PlSqlParser.NO_XDB_FASTPATH_INSERT - 1089)) | (1 << (PlSqlParser.NO_XML_DML_REWRITE - 1089)) | (1 << (PlSqlParser.NO_XMLINDEX_REWRITE_IN_SELECT - 1089)) | (1 << (PlSqlParser.NO_XMLINDEX_REWRITE - 1089)) | (1 << (PlSqlParser.NO_XML_QUERY_REWRITE - 1089)) | (1 << (PlSqlParser.NO_ZONEMAP - 1089)) | (1 << (PlSqlParser.NTH_VALUE - 1089)) | (1 << (PlSqlParser.NULLIF - 1089)) | (1 << (PlSqlParser.NULLS - 1089)) | (1 << (PlSqlParser.NUMBER - 1089)) | (1 << (PlSqlParser.NUMERIC - 1089)) | (1 << (PlSqlParser.NUM_INDEX_KEYS - 1089)) | (1 << (PlSqlParser.NUMTODSINTERVAL - 1089)) | (1 << (PlSqlParser.NUMTOYMINTERVAL - 1089)) | (1 << (PlSqlParser.NVARCHAR2 - 1089)) | (1 << (PlSqlParser.NVL2 - 1089)) | (1 << (PlSqlParser.OBJECT2XML - 1089)) | (1 << (PlSqlParser.OBJECT - 1089)) | (1 << (PlSqlParser.OBJ_ID - 1089)) | (1 << (PlSqlParser.OBJNO - 1089)) | (1 << (PlSqlParser.OBJNO_REUSE - 1089)) | (1 << (PlSqlParser.OCCURENCES - 1089)) | (1 << (PlSqlParser.OFFLINE - 1089)) | (1 << (PlSqlParser.OFF - 1089)) | (1 << (PlSqlParser.OFFSET - 1089)) | (1 << (PlSqlParser.OIDINDEX - 1089)) | (1 << (PlSqlParser.OID - 1089)) | (1 << (PlSqlParser.OLAP - 1089)) | (1 << (PlSqlParser.OLD - 1089)) | (1 << (PlSqlParser.OLD_PUSH_PRED - 1089)))) !== 0) || ((((_la - 1121)) & ~0x1f) == 0 && ((1 << (_la - 1121)) & ((1 << (PlSqlParser.OLS - 1121)) | (1 << (PlSqlParser.OLTP - 1121)) | (1 << (PlSqlParser.OMIT - 1121)) | (1 << (PlSqlParser.ONE - 1121)) | (1 << (PlSqlParser.ONLINE - 1121)) | (1 << (PlSqlParser.ONLY - 1121)) | (1 << (PlSqlParser.OPAQUE - 1121)) | (1 << (PlSqlParser.OPAQUE_TRANSFORM - 1121)) | (1 << (PlSqlParser.OPAQUE_XCANONICAL - 1121)) | (1 << (PlSqlParser.OPCODE - 1121)) | (1 << (PlSqlParser.OPEN - 1121)) | (1 << (PlSqlParser.OPERATIONS - 1121)) | (1 << (PlSqlParser.OPERATOR - 1121)) | (1 << (PlSqlParser.OPT_ESTIMATE - 1121)) | (1 << (PlSqlParser.OPTIMAL - 1121)) | (1 << (PlSqlParser.OPTIMIZE - 1121)) | (1 << (PlSqlParser.OPTIMIZER_FEATURES_ENABLE - 1121)) | (1 << (PlSqlParser.OPTIMIZER_GOAL - 1121)) | (1 << (PlSqlParser.OPT_PARAM - 1121)) | (1 << (PlSqlParser.ORA_BRANCH - 1121)) | (1 << (PlSqlParser.ORA_CHECK_ACL - 1121)) | (1 << (PlSqlParser.ORA_CHECK_PRIVILEGE - 1121)) | (1 << (PlSqlParser.ORA_CLUSTERING - 1121)) | (1 << (PlSqlParser.ORADATA - 1121)) | (1 << (PlSqlParser.ORADEBUG - 1121)) | (1 << (PlSqlParser.ORA_DST_AFFECTED - 1121)) | (1 << (PlSqlParser.ORA_DST_CONVERT - 1121)) | (1 << (PlSqlParser.ORA_DST_ERROR - 1121)) | (1 << (PlSqlParser.ORA_GET_ACLIDS - 1121)))) !== 0) || ((((_la - 1153)) & ~0x1f) == 0 && ((1 << (_la - 1153)) & ((1 << (PlSqlParser.ORA_GET_PRIVILEGES - 1153)) | (1 << (PlSqlParser.ORA_HASH - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_USERID - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_USER - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_XS_USER_GUID - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_XS_USER - 1153)) | (1 << (PlSqlParser.ORA_RAWCOMPARE - 1153)) | (1 << (PlSqlParser.ORA_RAWCONCAT - 1153)) | (1 << (PlSqlParser.ORA_ROWSCN - 1153)) | (1 << (PlSqlParser.ORA_ROWSCN_RAW - 1153)) | (1 << (PlSqlParser.ORA_ROWVERSION - 1153)) | (1 << (PlSqlParser.ORA_TABVERSION - 1153)) | (1 << (PlSqlParser.ORA_WRITE_TIME - 1153)) | (1 << (PlSqlParser.ORDERED - 1153)) | (1 << (PlSqlParser.ORDERED_PREDICATES - 1153)) | (1 << (PlSqlParser.ORDINALITY - 1153)) | (1 << (PlSqlParser.OR_EXPAND - 1153)) | (1 << (PlSqlParser.ORGANIZATION - 1153)) | (1 << (PlSqlParser.OR_PREDICATES - 1153)) | (1 << (PlSqlParser.OSERROR - 1153)) | (1 << (PlSqlParser.OTHER - 1153)) | (1 << (PlSqlParser.OUTER_JOIN_TO_ANTI - 1153)) | (1 << (PlSqlParser.OUTER_JOIN_TO_INNER - 1153)) | (1 << (PlSqlParser.OUTER - 1153)) | (1 << (PlSqlParser.OUTLINE_LEAF - 1153)) | (1 << (PlSqlParser.OUTLINE - 1153)) | (1 << (PlSqlParser.OUT_OF_LINE - 1153)) | (1 << (PlSqlParser.OUT - 1153)) | (1 << (PlSqlParser.OVERFLOW_NOMOVE - 1153)) | (1 << (PlSqlParser.OVERFLOW - 1153)))) !== 0) || ((((_la - 1185)) & ~0x1f) == 0 && ((1 << (_la - 1185)) & ((1 << (PlSqlParser.OVERLAPS - 1185)) | (1 << (PlSqlParser.OVER - 1185)) | (1 << (PlSqlParser.OVERRIDING - 1185)) | (1 << (PlSqlParser.OWNER - 1185)) | (1 << (PlSqlParser.OWNERSHIP - 1185)) | (1 << (PlSqlParser.OWN - 1185)) | (1 << (PlSqlParser.PACKAGE - 1185)) | (1 << (PlSqlParser.PACKAGES - 1185)) | (1 << (PlSqlParser.PARALLEL_ENABLE - 1185)) | (1 << (PlSqlParser.PARALLEL_INDEX - 1185)) | (1 << (PlSqlParser.PARALLEL - 1185)) | (1 << (PlSqlParser.PARAMETERS - 1185)) | (1 << (PlSqlParser.PARAM - 1185)) | (1 << (PlSqlParser.PARENT - 1185)) | (1 << (PlSqlParser.PARITY - 1185)) | (1 << (PlSqlParser.PARTIAL_JOIN - 1185)) | (1 << (PlSqlParser.PARTIALLY - 1185)) | (1 << (PlSqlParser.PARTIAL - 1185)) | (1 << (PlSqlParser.PARTIAL_ROLLUP_PUSHDOWN - 1185)) | (1 << (PlSqlParser.PARTITION_HASH - 1185)) | (1 << (PlSqlParser.PARTITION_LIST - 1185)) | (1 << (PlSqlParser.PARTITION - 1185)) | (1 << (PlSqlParser.PARTITION_RANGE - 1185)) | (1 << (PlSqlParser.PARTITIONS - 1185)) | (1 << (PlSqlParser.PARTNUMINST - 1185)) | (1 << (PlSqlParser.PASSING - 1185)) | (1 << (PlSqlParser.PASSWORD_GRACE_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD_LIFE_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD_LOCK_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD - 1185)) | (1 << (PlSqlParser.PASSWORD_REUSE_MAX - 1185)))) !== 0) || ((((_la - 1217)) & ~0x1f) == 0 && ((1 << (_la - 1217)) & ((1 << (PlSqlParser.PASSWORD_REUSE_TIME - 1217)) | (1 << (PlSqlParser.PASSWORD_VERIFY_FUNCTION - 1217)) | (1 << (PlSqlParser.PAST - 1217)) | (1 << (PlSqlParser.PATCH - 1217)) | (1 << (PlSqlParser.PATH - 1217)) | (1 << (PlSqlParser.PATH_PREFIX - 1217)) | (1 << (PlSqlParser.PATHS - 1217)) | (1 << (PlSqlParser.PATTERN - 1217)) | (1 << (PlSqlParser.PBL_HS_BEGIN - 1217)) | (1 << (PlSqlParser.PBL_HS_END - 1217)) | (1 << (PlSqlParser.PCTINCREASE - 1217)) | (1 << (PlSqlParser.PCTTHRESHOLD - 1217)) | (1 << (PlSqlParser.PCTUSED - 1217)) | (1 << (PlSqlParser.PCTVERSION - 1217)) | (1 << (PlSqlParser.PENDING - 1217)) | (1 << (PlSqlParser.PERCENT_KEYWORD - 1217)) | (1 << (PlSqlParser.PERCENT_RANKM - 1217)) | (1 << (PlSqlParser.PERFORMANCE - 1217)) | (1 << (PlSqlParser.PERIOD_KEYWORD - 1217)) | (1 << (PlSqlParser.PERMANENT - 1217)) | (1 << (PlSqlParser.PERMISSION - 1217)) | (1 << (PlSqlParser.PERMUTE - 1217)) | (1 << (PlSqlParser.PER - 1217)) | (1 << (PlSqlParser.PFILE - 1217)) | (1 << (PlSqlParser.PHYSICAL - 1217)))) !== 0) || ((((_la - 1249)) & ~0x1f) == 0 && ((1 << (_la - 1249)) & ((1 << (PlSqlParser.PIKEY - 1249)) | (1 << (PlSqlParser.PIPELINED - 1249)) | (1 << (PlSqlParser.PIV_GB - 1249)) | (1 << (PlSqlParser.PIVOT - 1249)) | (1 << (PlSqlParser.PIV_SSF - 1249)) | (1 << (PlSqlParser.PLACE_DISTINCT - 1249)) | (1 << (PlSqlParser.PLACE_GROUP_BY - 1249)) | (1 << (PlSqlParser.PLAN - 1249)) | (1 << (PlSqlParser.PLSCOPE_SETTINGS - 1249)) | (1 << (PlSqlParser.PLS_INTEGER - 1249)) | (1 << (PlSqlParser.PLSQL_CCFLAGS - 1249)) | (1 << (PlSqlParser.PLSQL_CODE_TYPE - 1249)) | (1 << (PlSqlParser.PLSQL_DEBUG - 1249)) | (1 << (PlSqlParser.PLSQL_OPTIMIZE_LEVEL - 1249)) | (1 << (PlSqlParser.PLSQL_WARNINGS - 1249)) | (1 << (PlSqlParser.PLUGGABLE - 1249)) | (1 << (PlSqlParser.POINT - 1249)) | (1 << (PlSqlParser.POLICY - 1249)) | (1 << (PlSqlParser.POOL_16K - 1249)) | (1 << (PlSqlParser.POOL_2K - 1249)) | (1 << (PlSqlParser.POOL_32K - 1249)) | (1 << (PlSqlParser.POOL_4K - 1249)) | (1 << (PlSqlParser.POOL_8K - 1249)) | (1 << (PlSqlParser.POSITIVEN - 1249)) | (1 << (PlSqlParser.POSITIVE - 1249)) | (1 << (PlSqlParser.POST_TRANSACTION - 1249)) | (1 << (PlSqlParser.POWERMULTISET_BY_CARDINALITY - 1249)) | (1 << (PlSqlParser.POWERMULTISET - 1249)) | (1 << (PlSqlParser.POWER - 1249)) | (1 << (PlSqlParser.PQ_CONCURRENT_UNION - 1249)) | (1 << (PlSqlParser.PQ_DISTRIBUTE - 1249)))) !== 0) || ((((_la - 1281)) & ~0x1f) == 0 && ((1 << (_la - 1281)) & ((1 << (PlSqlParser.PQ_DISTRIBUTE_WINDOW - 1281)) | (1 << (PlSqlParser.PQ_FILTER - 1281)) | (1 << (PlSqlParser.PQ_MAP - 1281)) | (1 << (PlSqlParser.PQ_NOMAP - 1281)) | (1 << (PlSqlParser.PQ_REPLICATE - 1281)) | (1 << (PlSqlParser.PQ_SKEW - 1281)) | (1 << (PlSqlParser.PRAGMA - 1281)) | (1 << (PlSqlParser.PREBUILT - 1281)) | (1 << (PlSqlParser.PRECEDES - 1281)) | (1 << (PlSqlParser.PRECEDING - 1281)) | (1 << (PlSqlParser.PRECISION - 1281)) | (1 << (PlSqlParser.PRECOMPUTE_SUBQUERY - 1281)) | (1 << (PlSqlParser.PREDICATE_REORDERS - 1281)) | (1 << (PlSqlParser.PRELOAD - 1281)) | (1 << (PlSqlParser.PREPARE - 1281)) | (1 << (PlSqlParser.PRESENTNNV - 1281)) | (1 << (PlSqlParser.PRESENT - 1281)) | (1 << (PlSqlParser.PRESENTV - 1281)) | (1 << (PlSqlParser.PRESERVE_OID - 1281)) | (1 << (PlSqlParser.PRESERVE - 1281)) | (1 << (PlSqlParser.PRETTY - 1281)) | (1 << (PlSqlParser.PREVIOUS - 1281)) | (1 << (PlSqlParser.PREV - 1281)) | (1 << (PlSqlParser.PRIMARY - 1281)) | (1 << (PlSqlParser.PRINTBLOBTOCLOB - 1281)) | (1 << (PlSqlParser.PRIORITY - 1281)) | (1 << (PlSqlParser.PRIVATE - 1281)) | (1 << (PlSqlParser.PRIVATE_SGA - 1281)) | (1 << (PlSqlParser.PRIVILEGED - 1281)) | (1 << (PlSqlParser.PRIVILEGE - 1281)) | (1 << (PlSqlParser.PRIVILEGES - 1281)))) !== 0) || ((((_la - 1313)) & ~0x1f) == 0 && ((1 << (_la - 1313)) & ((1 << (PlSqlParser.PROCEDURAL - 1313)) | (1 << (PlSqlParser.PROCEDURE - 1313)) | (1 << (PlSqlParser.PROCESS - 1313)) | (1 << (PlSqlParser.PROFILE - 1313)) | (1 << (PlSqlParser.PROGRAM - 1313)) | (1 << (PlSqlParser.PROJECT - 1313)) | (1 << (PlSqlParser.PROPAGATE - 1313)) | (1 << (PlSqlParser.PROTECTED - 1313)) | (1 << (PlSqlParser.PROTECTION - 1313)) | (1 << (PlSqlParser.PROXY - 1313)) | (1 << (PlSqlParser.PRUNING - 1313)) | (1 << (PlSqlParser.PULL_PRED - 1313)) | (1 << (PlSqlParser.PURGE - 1313)) | (1 << (PlSqlParser.PUSH_PRED - 1313)) | (1 << (PlSqlParser.PUSH_SUBQ - 1313)) | (1 << (PlSqlParser.PX_FAULT_TOLERANCE - 1313)) | (1 << (PlSqlParser.PX_GRANULE - 1313)) | (1 << (PlSqlParser.PX_JOIN_FILTER - 1313)) | (1 << (PlSqlParser.QB_NAME - 1313)) | (1 << (PlSqlParser.QUERY_BLOCK - 1313)) | (1 << (PlSqlParser.QUERY - 1313)) | (1 << (PlSqlParser.QUEUE_CURR - 1313)) | (1 << (PlSqlParser.QUEUE - 1313)) | (1 << (PlSqlParser.QUEUE_ROWP - 1313)) | (1 << (PlSqlParser.QUIESCE - 1313)) | (1 << (PlSqlParser.QUORUM - 1313)) | (1 << (PlSqlParser.QUOTA - 1313)) | (1 << (PlSqlParser.RAISE - 1313)) | (1 << (PlSqlParser.RANDOM_LOCAL - 1313)) | (1 << (PlSqlParser.RANDOM - 1313)) | (1 << (PlSqlParser.RANGE - 1313)))) !== 0) || ((((_la - 1345)) & ~0x1f) == 0 && ((1 << (_la - 1345)) & ((1 << (PlSqlParser.RANKM - 1345)) | (1 << (PlSqlParser.RAPIDLY - 1345)) | (1 << (PlSqlParser.RAW - 1345)) | (1 << (PlSqlParser.RAWTOHEX - 1345)) | (1 << (PlSqlParser.RAWTONHEX - 1345)) | (1 << (PlSqlParser.RBA - 1345)) | (1 << (PlSqlParser.RBO_OUTLINE - 1345)) | (1 << (PlSqlParser.RDBA - 1345)) | (1 << (PlSqlParser.READ - 1345)) | (1 << (PlSqlParser.READS - 1345)) | (1 << (PlSqlParser.REALM - 1345)) | (1 << (PlSqlParser.REAL - 1345)) | (1 << (PlSqlParser.REBALANCE - 1345)) | (1 << (PlSqlParser.REBUILD - 1345)) | (1 << (PlSqlParser.RECORD - 1345)) | (1 << (PlSqlParser.RECORDS_PER_BLOCK - 1345)) | (1 << (PlSqlParser.RECOVERABLE - 1345)) | (1 << (PlSqlParser.RECOVER - 1345)) | (1 << (PlSqlParser.RECOVERY - 1345)) | (1 << (PlSqlParser.RECYCLEBIN - 1345)) | (1 << (PlSqlParser.RECYCLE - 1345)) | (1 << (PlSqlParser.REDACTION - 1345)) | (1 << (PlSqlParser.REDEFINE - 1345)) | (1 << (PlSqlParser.REDO - 1345)) | (1 << (PlSqlParser.REDUCED - 1345)) | (1 << (PlSqlParser.REDUNDANCY - 1345)) | (1 << (PlSqlParser.REF_CASCADE_CURSOR - 1345)) | (1 << (PlSqlParser.REFERENCED - 1345)) | (1 << (PlSqlParser.REFERENCE - 1345)) | (1 << (PlSqlParser.REFERENCES - 1345)) | (1 << (PlSqlParser.REFERENCING - 1345)) | (1 << (PlSqlParser.REF - 1345)))) !== 0) || ((((_la - 1377)) & ~0x1f) == 0 && ((1 << (_la - 1377)) & ((1 << (PlSqlParser.REFRESH - 1377)) | (1 << (PlSqlParser.REFTOHEX - 1377)) | (1 << (PlSqlParser.REGEXP_COUNT - 1377)) | (1 << (PlSqlParser.REGEXP_INSTR - 1377)) | (1 << (PlSqlParser.REGEXP_LIKE - 1377)) | (1 << (PlSqlParser.REGEXP_REPLACE - 1377)) | (1 << (PlSqlParser.REGEXP_SUBSTR - 1377)) | (1 << (PlSqlParser.REGISTER - 1377)) | (1 << (PlSqlParser.REGR_AVGX - 1377)) | (1 << (PlSqlParser.REGR_AVGY - 1377)) | (1 << (PlSqlParser.REGR_COUNT - 1377)) | (1 << (PlSqlParser.REGR_INTERCEPT - 1377)) | (1 << (PlSqlParser.REGR_R2 - 1377)) | (1 << (PlSqlParser.REGR_SLOPE - 1377)) | (1 << (PlSqlParser.REGR_SXX - 1377)) | (1 << (PlSqlParser.REGR_SXY - 1377)) | (1 << (PlSqlParser.REGR_SYY - 1377)) | (1 << (PlSqlParser.REGULAR - 1377)) | (1 << (PlSqlParser.REJECT - 1377)) | (1 << (PlSqlParser.REKEY - 1377)) | (1 << (PlSqlParser.RELATIONAL - 1377)) | (1 << (PlSqlParser.RELOCATE - 1377)) | (1 << (PlSqlParser.RELY - 1377)) | (1 << (PlSqlParser.REMAINDER - 1377)) | (1 << (PlSqlParser.REMOTE_MAPPED - 1377)) | (1 << (PlSqlParser.REMOVE - 1377)) | (1 << (PlSqlParser.RENAME - 1377)) | (1 << (PlSqlParser.REPAIR - 1377)) | (1 << (PlSqlParser.REPEAT - 1377)) | (1 << (PlSqlParser.REPLACE - 1377)) | (1 << (PlSqlParser.REPLICATION - 1377)))) !== 0) || ((((_la - 1409)) & ~0x1f) == 0 && ((1 << (_la - 1409)) & ((1 << (PlSqlParser.REQUIRED - 1409)) | (1 << (PlSqlParser.RESETLOGS - 1409)) | (1 << (PlSqlParser.RESET - 1409)) | (1 << (PlSqlParser.RESIZE - 1409)) | (1 << (PlSqlParser.RESOLVE - 1409)) | (1 << (PlSqlParser.RESOLVER - 1409)) | (1 << (PlSqlParser.RESPECT - 1409)) | (1 << (PlSqlParser.RESTART - 1409)) | (1 << (PlSqlParser.RESTORE_AS_INTERVALS - 1409)) | (1 << (PlSqlParser.RESTORE - 1409)) | (1 << (PlSqlParser.RESTRICT_ALL_REF_CONS - 1409)) | (1 << (PlSqlParser.RESTRICTED - 1409)) | (1 << (PlSqlParser.RESTRICT_REFERENCES - 1409)) | (1 << (PlSqlParser.RESTRICT - 1409)) | (1 << (PlSqlParser.RESULT_CACHE - 1409)) | (1 << (PlSqlParser.RESULT - 1409)) | (1 << (PlSqlParser.RESUMABLE - 1409)) | (1 << (PlSqlParser.RESUME - 1409)) | (1 << (PlSqlParser.RETENTION - 1409)) | (1 << (PlSqlParser.RETRY_ON_ROW_CHANGE - 1409)) | (1 << (PlSqlParser.RETURNING - 1409)) | (1 << (PlSqlParser.RETURN - 1409)) | (1 << (PlSqlParser.REUSE - 1409)) | (1 << (PlSqlParser.REVERSE - 1409)) | (1 << (PlSqlParser.REWRITE_OR_ERROR - 1409)) | (1 << (PlSqlParser.REWRITE - 1409)) | (1 << (PlSqlParser.RIGHT - 1409)) | (1 << (PlSqlParser.ROLE - 1409)) | (1 << (PlSqlParser.ROLESET - 1409)) | (1 << (PlSqlParser.ROLES - 1409)))) !== 0) || ((((_la - 1441)) & ~0x1f) == 0 && ((1 << (_la - 1441)) & ((1 << (PlSqlParser.ROLLBACK - 1441)) | (1 << (PlSqlParser.ROLLING - 1441)) | (1 << (PlSqlParser.ROLLUP - 1441)) | (1 << (PlSqlParser.ROWDEPENDENCIES - 1441)) | (1 << (PlSqlParser.ROWID_MAPPING_TABLE - 1441)) | (1 << (PlSqlParser.ROWID - 1441)) | (1 << (PlSqlParser.ROWIDTOCHAR - 1441)) | (1 << (PlSqlParser.ROWIDTONCHAR - 1441)) | (1 << (PlSqlParser.ROW_LENGTH - 1441)) | (1 << (PlSqlParser.ROWNUM - 1441)) | (1 << (PlSqlParser.ROW - 1441)) | (1 << (PlSqlParser.ROWS - 1441)) | (1 << (PlSqlParser.RPAD - 1441)) | (1 << (PlSqlParser.RTRIM - 1441)) | (1 << (PlSqlParser.RULE - 1441)) | (1 << (PlSqlParser.RULES - 1441)) | (1 << (PlSqlParser.RUNNING - 1441)) | (1 << (PlSqlParser.SALT - 1441)) | (1 << (PlSqlParser.SAMPLE - 1441)) | (1 << (PlSqlParser.SAVE_AS_INTERVALS - 1441)) | (1 << (PlSqlParser.SAVEPOINT - 1441)) | (1 << (PlSqlParser.SAVE - 1441)) | (1 << (PlSqlParser.SB4 - 1441)) | (1 << (PlSqlParser.SCALE_ROWS - 1441)) | (1 << (PlSqlParser.SCALE - 1441)) | (1 << (PlSqlParser.SCAN_INSTANCES - 1441)) | (1 << (PlSqlParser.SCAN - 1441)) | (1 << (PlSqlParser.SCHEDULER - 1441)) | (1 << (PlSqlParser.SCHEMACHECK - 1441)) | (1 << (PlSqlParser.SCHEMA - 1441)) | (1 << (PlSqlParser.SCN_ASCENDING - 1441)) | (1 << (PlSqlParser.SCN - 1441)))) !== 0) || ((((_la - 1473)) & ~0x1f) == 0 && ((1 << (_la - 1473)) & ((1 << (PlSqlParser.SCOPE - 1473)) | (1 << (PlSqlParser.SCRUB - 1473)) | (1 << (PlSqlParser.SD_ALL - 1473)) | (1 << (PlSqlParser.SD_INHIBIT - 1473)) | (1 << (PlSqlParser.SDO_GEOM_MBR - 1473)) | (1 << (PlSqlParser.SD_SHOW - 1473)) | (1 << (PlSqlParser.SEARCH - 1473)) | (1 << (PlSqlParser.SECOND - 1473)) | (1 << (PlSqlParser.SECRET - 1473)) | (1 << (PlSqlParser.SECUREFILE_DBA - 1473)) | (1 << (PlSqlParser.SECUREFILE - 1473)) | (1 << (PlSqlParser.SECURITY - 1473)) | (1 << (PlSqlParser.SEED - 1473)) | (1 << (PlSqlParser.SEG_BLOCK - 1473)) | (1 << (PlSqlParser.SEG_FILE - 1473)) | (1 << (PlSqlParser.SEGMENT - 1473)) | (1 << (PlSqlParser.SELECTIVITY - 1473)) | (1 << (PlSqlParser.SELF - 1473)) | (1 << (PlSqlParser.SEMIJOIN_DRIVER - 1473)) | (1 << (PlSqlParser.SEMIJOIN - 1473)) | (1 << (PlSqlParser.SEMI_TO_INNER - 1473)) | (1 << (PlSqlParser.SEQUENCED - 1473)) | (1 << (PlSqlParser.SEQUENCE - 1473)) | (1 << (PlSqlParser.SEQUENTIAL - 1473)) | (1 << (PlSqlParser.SERIALIZABLE - 1473)) | (1 << (PlSqlParser.SERIALLY_REUSABLE - 1473)) | (1 << (PlSqlParser.SERIAL - 1473)) | (1 << (PlSqlParser.SERVERERROR - 1473)) | (1 << (PlSqlParser.SERVICE_NAME_CONVERT - 1473)) | (1 << (PlSqlParser.SERVICES - 1473)))) !== 0) || ((((_la - 1505)) & ~0x1f) == 0 && ((1 << (_la - 1505)) & ((1 << (PlSqlParser.SESSION_CACHED_CURSORS - 1505)) | (1 << (PlSqlParser.SESSION - 1505)) | (1 << (PlSqlParser.SESSIONS_PER_USER - 1505)) | (1 << (PlSqlParser.SESSIONTIMEZONE - 1505)) | (1 << (PlSqlParser.SESSIONTZNAME - 1505)) | (1 << (PlSqlParser.SET - 1505)) | (1 << (PlSqlParser.SETS - 1505)) | (1 << (PlSqlParser.SETTINGS - 1505)) | (1 << (PlSqlParser.SET_TO_JOIN - 1505)) | (1 << (PlSqlParser.SEVERE - 1505)) | (1 << (PlSqlParser.SHARED_POOL - 1505)) | (1 << (PlSqlParser.SHARED - 1505)) | (1 << (PlSqlParser.SHARING - 1505)) | (1 << (PlSqlParser.SHELFLIFE - 1505)) | (1 << (PlSqlParser.SHOW - 1505)) | (1 << (PlSqlParser.SHRINK - 1505)) | (1 << (PlSqlParser.SHUTDOWN - 1505)) | (1 << (PlSqlParser.SIBLINGS - 1505)) | (1 << (PlSqlParser.SID - 1505)) | (1 << (PlSqlParser.SIGNAL_COMPONENT - 1505)) | (1 << (PlSqlParser.SIGNAL_FUNCTION - 1505)) | (1 << (PlSqlParser.SIGN - 1505)) | (1 << (PlSqlParser.SIGNTYPE - 1505)) | (1 << (PlSqlParser.SIMPLE_INTEGER - 1505)) | (1 << (PlSqlParser.SIMPLE - 1505)) | (1 << (PlSqlParser.SINGLE - 1505)) | (1 << (PlSqlParser.SINGLETASK - 1505)) | (1 << (PlSqlParser.SINH - 1505)) | (1 << (PlSqlParser.SIN - 1505)) | (1 << (PlSqlParser.SKIP_EXT_OPTIMIZER - 1505)))) !== 0) || ((((_la - 1537)) & ~0x1f) == 0 && ((1 << (_la - 1537)) & ((1 << (PlSqlParser.SKIP_ - 1537)) | (1 << (PlSqlParser.SKIP_UNQ_UNUSABLE_IDX - 1537)) | (1 << (PlSqlParser.SKIP_UNUSABLE_INDEXES - 1537)) | (1 << (PlSqlParser.SMALLFILE - 1537)) | (1 << (PlSqlParser.SMALLINT - 1537)) | (1 << (PlSqlParser.SNAPSHOT - 1537)) | (1 << (PlSqlParser.SOME - 1537)) | (1 << (PlSqlParser.SORT - 1537)) | (1 << (PlSqlParser.SOUNDEX - 1537)) | (1 << (PlSqlParser.SOURCE_FILE_DIRECTORY - 1537)) | (1 << (PlSqlParser.SOURCE_FILE_NAME_CONVERT - 1537)) | (1 << (PlSqlParser.SOURCE - 1537)) | (1 << (PlSqlParser.SPACE_KEYWORD - 1537)) | (1 << (PlSqlParser.SPECIFICATION - 1537)) | (1 << (PlSqlParser.SPFILE - 1537)) | (1 << (PlSqlParser.SPLIT - 1537)) | (1 << (PlSqlParser.SPREADSHEET - 1537)) | (1 << (PlSqlParser.SQLDATA - 1537)) | (1 << (PlSqlParser.SQLERROR - 1537)) | (1 << (PlSqlParser.SQLLDR - 1537)) | (1 << (PlSqlParser.SQL - 1537)) | (1 << (PlSqlParser.SQL_TRACE - 1537)) | (1 << (PlSqlParser.SQL_TRANSLATION_PROFILE - 1537)) | (1 << (PlSqlParser.SQRT - 1537)) | (1 << (PlSqlParser.STALE - 1537)) | (1 << (PlSqlParser.STANDALONE - 1537)) | (1 << (PlSqlParser.STANDARD_HASH - 1537)) | (1 << (PlSqlParser.STANDBY_MAX_DATA_DELAY - 1537)) | (1 << (PlSqlParser.STANDBYS - 1537)) | (1 << (PlSqlParser.STANDBY - 1537)) | (1 << (PlSqlParser.STAR - 1537)) | (1 << (PlSqlParser.STAR_TRANSFORMATION - 1537)))) !== 0) || ((((_la - 1570)) & ~0x1f) == 0 && ((1 << (_la - 1570)) & ((1 << (PlSqlParser.STARTUP - 1570)) | (1 << (PlSqlParser.STATEMENT_ID - 1570)) | (1 << (PlSqlParser.STATEMENT_QUEUING - 1570)) | (1 << (PlSqlParser.STATEMENTS - 1570)) | (1 << (PlSqlParser.STATEMENT - 1570)) | (1 << (PlSqlParser.STATE - 1570)) | (1 << (PlSqlParser.STATIC - 1570)) | (1 << (PlSqlParser.STATISTICS - 1570)) | (1 << (PlSqlParser.STATS_BINOMIAL_TEST - 1570)) | (1 << (PlSqlParser.STATS_CROSSTAB - 1570)) | (1 << (PlSqlParser.STATS_F_TEST - 1570)) | (1 << (PlSqlParser.STATS_KS_TEST - 1570)) | (1 << (PlSqlParser.STATS_MODE - 1570)) | (1 << (PlSqlParser.STATS_MW_TEST - 1570)) | (1 << (PlSqlParser.STATS_ONE_WAY_ANOVA - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_INDEP - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_INDEPU - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_ONE - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_PAIRED - 1570)) | (1 << (PlSqlParser.STATS_WSR_TEST - 1570)) | (1 << (PlSqlParser.STDDEV_POP - 1570)) | (1 << (PlSqlParser.STDDEV_SAMP - 1570)) | (1 << (PlSqlParser.STOP - 1570)) | (1 << (PlSqlParser.STORAGE - 1570)) | (1 << (PlSqlParser.STORE - 1570)) | (1 << (PlSqlParser.STREAMS - 1570)) | (1 << (PlSqlParser.STREAM - 1570)) | (1 << (PlSqlParser.STRICT - 1570)) | (1 << (PlSqlParser.STRING - 1570)) | (1 << (PlSqlParser.STRIPE_COLUMNS - 1570)) | (1 << (PlSqlParser.STRIPE_WIDTH - 1570)) | (1 << (PlSqlParser.STRIP - 1570)))) !== 0) || ((((_la - 1602)) & ~0x1f) == 0 && ((1 << (_la - 1602)) & ((1 << (PlSqlParser.STRUCTURE - 1602)) | (1 << (PlSqlParser.SUBMULTISET - 1602)) | (1 << (PlSqlParser.SUBPARTITION_REL - 1602)) | (1 << (PlSqlParser.SUBPARTITIONS - 1602)) | (1 << (PlSqlParser.SUBPARTITION - 1602)) | (1 << (PlSqlParser.SUBQUERIES - 1602)) | (1 << (PlSqlParser.SUBQUERY_PRUNING - 1602)) | (1 << (PlSqlParser.SUBSCRIBE - 1602)) | (1 << (PlSqlParser.SUBSET - 1602)) | (1 << (PlSqlParser.SUBSTITUTABLE - 1602)) | (1 << (PlSqlParser.SUBSTR2 - 1602)) | (1 << (PlSqlParser.SUBSTR4 - 1602)) | (1 << (PlSqlParser.SUBSTRB - 1602)) | (1 << (PlSqlParser.SUBSTRC - 1602)) | (1 << (PlSqlParser.SUBTYPE - 1602)) | (1 << (PlSqlParser.SUCCESSFUL - 1602)) | (1 << (PlSqlParser.SUCCESS - 1602)) | (1 << (PlSqlParser.SUMMARY - 1602)) | (1 << (PlSqlParser.SUPPLEMENTAL - 1602)) | (1 << (PlSqlParser.SUSPEND - 1602)) | (1 << (PlSqlParser.SWAP_JOIN_INPUTS - 1602)) | (1 << (PlSqlParser.SWITCHOVER - 1602)) | (1 << (PlSqlParser.SWITCH - 1602)) | (1 << (PlSqlParser.SYNCHRONOUS - 1602)) | (1 << (PlSqlParser.SYNC - 1602)) | (1 << (PlSqlParser.SYSASM - 1602)) | (1 << (PlSqlParser.SYS_AUDIT - 1602)) | (1 << (PlSqlParser.SYSAUX - 1602)) | (1 << (PlSqlParser.SYSBACKUP - 1602)) | (1 << (PlSqlParser.SYS_CHECKACL - 1602)) | (1 << (PlSqlParser.SYS_CHECK_PRIVILEGE - 1602)))) !== 0) || ((((_la - 1634)) & ~0x1f) == 0 && ((1 << (_la - 1634)) & ((1 << (PlSqlParser.SYS_CONNECT_BY_PATH - 1634)) | (1 << (PlSqlParser.SYS_CONTEXT - 1634)) | (1 << (PlSqlParser.SYSDATE - 1634)) | (1 << (PlSqlParser.SYSDBA - 1634)) | (1 << (PlSqlParser.SYS_DBURIGEN - 1634)) | (1 << (PlSqlParser.SYSDG - 1634)) | (1 << (PlSqlParser.SYS_DL_CURSOR - 1634)) | (1 << (PlSqlParser.SYS_DM_RXFORM_CHR - 1634)) | (1 << (PlSqlParser.SYS_DM_RXFORM_NUM - 1634)) | (1 << (PlSqlParser.SYS_DOM_COMPARE - 1634)) | (1 << (PlSqlParser.SYS_DST_PRIM2SEC - 1634)) | (1 << (PlSqlParser.SYS_DST_SEC2PRIM - 1634)) | (1 << (PlSqlParser.SYS_ET_BFILE_TO_RAW - 1634)) | (1 << (PlSqlParser.SYS_ET_BLOB_TO_IMAGE - 1634)) | (1 << (PlSqlParser.SYS_ET_IMAGE_TO_BLOB - 1634)) | (1 << (PlSqlParser.SYS_ET_RAW_TO_BFILE - 1634)) | (1 << (PlSqlParser.SYS_EXTPDTXT - 1634)) | (1 << (PlSqlParser.SYS_EXTRACT_UTC - 1634)) | (1 << (PlSqlParser.SYS_FBT_INSDEL - 1634)) | (1 << (PlSqlParser.SYS_FILTER_ACLS - 1634)) | (1 << (PlSqlParser.SYS_FNMATCHES - 1634)) | (1 << (PlSqlParser.SYS_FNREPLACE - 1634)) | (1 << (PlSqlParser.SYS_GET_ACLIDS - 1634)) | (1 << (PlSqlParser.SYS_GET_COL_ACLIDS - 1634)) | (1 << (PlSqlParser.SYS_GET_PRIVILEGES - 1634)) | (1 << (PlSqlParser.SYS_GETTOKENID - 1634)) | (1 << (PlSqlParser.SYS_GETXTIVAL - 1634)) | (1 << (PlSqlParser.SYS_GUID - 1634)) | (1 << (PlSqlParser.SYSGUID - 1634)) | (1 << (PlSqlParser.SYSKM - 1634)) | (1 << (PlSqlParser.SYS_MAKE_XMLNODEID - 1634)) | (1 << (PlSqlParser.SYS_MAKEXML - 1634)))) !== 0) || ((((_la - 1666)) & ~0x1f) == 0 && ((1 << (_la - 1666)) & ((1 << (PlSqlParser.SYS_MKXMLATTR - 1666)) | (1 << (PlSqlParser.SYS_MKXTI - 1666)) | (1 << (PlSqlParser.SYSOBJ - 1666)) | (1 << (PlSqlParser.SYS_OP_ADT2BIN - 1666)) | (1 << (PlSqlParser.SYS_OP_ADTCONS - 1666)) | (1 << (PlSqlParser.SYS_OP_ALSCRVAL - 1666)) | (1 << (PlSqlParser.SYS_OP_ATG - 1666)) | (1 << (PlSqlParser.SYS_OP_BIN2ADT - 1666)) | (1 << (PlSqlParser.SYS_OP_BITVEC - 1666)) | (1 << (PlSqlParser.SYS_OP_BL2R - 1666)) | (1 << (PlSqlParser.SYS_OP_BLOOM_FILTER_LIST - 1666)) | (1 << (PlSqlParser.SYS_OP_BLOOM_FILTER - 1666)) | (1 << (PlSqlParser.SYS_OP_C2C - 1666)) | (1 << (PlSqlParser.SYS_OP_CAST - 1666)) | (1 << (PlSqlParser.SYS_OP_CEG - 1666)) | (1 << (PlSqlParser.SYS_OP_CL2C - 1666)) | (1 << (PlSqlParser.SYS_OP_COMBINED_HASH - 1666)) | (1 << (PlSqlParser.SYS_OP_COMP - 1666)) | (1 << (PlSqlParser.SYS_OP_CONVERT - 1666)) | (1 << (PlSqlParser.SYS_OP_COUNTCHG - 1666)) | (1 << (PlSqlParser.SYS_OP_CSCONV - 1666)) | (1 << (PlSqlParser.SYS_OP_CSCONVTEST - 1666)) | (1 << (PlSqlParser.SYS_OP_CSR - 1666)) | (1 << (PlSqlParser.SYS_OP_CSX_PATCH - 1666)) | (1 << (PlSqlParser.SYS_OP_CYCLED_SEQ - 1666)) | (1 << (PlSqlParser.SYS_OP_DECOMP - 1666)) | (1 << (PlSqlParser.SYS_OP_DESCEND - 1666)) | (1 << (PlSqlParser.SYS_OP_DISTINCT - 1666)) | (1 << (PlSqlParser.SYS_OP_DRA - 1666)) | (1 << (PlSqlParser.SYS_OP_DUMP - 1666)) | (1 << (PlSqlParser.SYS_OP_DV_CHECK - 1666)) | (1 << (PlSqlParser.SYS_OP_ENFORCE_NOT_NULL - 1666)))) !== 0) || ((((_la - 1698)) & ~0x1f) == 0 && ((1 << (_la - 1698)) & ((1 << (PlSqlParser.SYSOPER - 1698)) | (1 << (PlSqlParser.SYS_OP_EXTRACT - 1698)) | (1 << (PlSqlParser.SYS_OP_GROUPING - 1698)) | (1 << (PlSqlParser.SYS_OP_GUID - 1698)) | (1 << (PlSqlParser.SYS_OP_HASH - 1698)) | (1 << (PlSqlParser.SYS_OP_IIX - 1698)) | (1 << (PlSqlParser.SYS_OP_ITR - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_CREATE - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_FILTER_LIST - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_FILTER - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_SUCCEEDED - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_USE - 1698)) | (1 << (PlSqlParser.SYS_OP_LBID - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2BLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2CLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2ID - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2NCLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2TYP - 1698)) | (1 << (PlSqlParser.SYS_OP_LSVI - 1698)) | (1 << (PlSqlParser.SYS_OP_LVL - 1698)) | (1 << (PlSqlParser.SYS_OP_MAKEOID - 1698)) | (1 << (PlSqlParser.SYS_OP_MAP_NONNULL - 1698)) | (1 << (PlSqlParser.SYS_OP_MSR - 1698)) | (1 << (PlSqlParser.SYS_OP_NICOMBINE - 1698)) | (1 << (PlSqlParser.SYS_OP_NIEXTRACT - 1698)) | (1 << (PlSqlParser.SYS_OP_NII - 1698)) | (1 << (PlSqlParser.SYS_OP_NIX - 1698)) | (1 << (PlSqlParser.SYS_OP_NOEXPAND - 1698)) | (1 << (PlSqlParser.SYS_OP_NTCIMG - 1698)) | (1 << (PlSqlParser.SYS_OP_NUMTORAW - 1698)) | (1 << (PlSqlParser.SYS_OP_OIDVALUE - 1698)) | (1 << (PlSqlParser.SYS_OP_OPNSIZE - 1698)))) !== 0) || ((((_la - 1730)) & ~0x1f) == 0 && ((1 << (_la - 1730)) & ((1 << (PlSqlParser.SYS_OP_PAR_1 - 1730)) | (1 << (PlSqlParser.SYS_OP_PARGID_1 - 1730)) | (1 << (PlSqlParser.SYS_OP_PARGID - 1730)) | (1 << (PlSqlParser.SYS_OP_PAR - 1730)) | (1 << (PlSqlParser.SYS_OP_PART_ID - 1730)) | (1 << (PlSqlParser.SYS_OP_PIVOT - 1730)) | (1 << (PlSqlParser.SYS_OP_R2O - 1730)) | (1 << (PlSqlParser.SYS_OP_RAWTONUM - 1730)) | (1 << (PlSqlParser.SYS_OP_RDTM - 1730)) | (1 << (PlSqlParser.SYS_OP_REF - 1730)) | (1 << (PlSqlParser.SYS_OP_RMTD - 1730)) | (1 << (PlSqlParser.SYS_OP_ROWIDTOOBJ - 1730)) | (1 << (PlSqlParser.SYS_OP_RPB - 1730)) | (1 << (PlSqlParser.SYS_OPTLOBPRBSC - 1730)) | (1 << (PlSqlParser.SYS_OP_TOSETID - 1730)) | (1 << (PlSqlParser.SYS_OP_TPR - 1730)) | (1 << (PlSqlParser.SYS_OP_TRTB - 1730)) | (1 << (PlSqlParser.SYS_OPTXICMP - 1730)) | (1 << (PlSqlParser.SYS_OPTXQCASTASNQ - 1730)) | (1 << (PlSqlParser.SYS_OP_UNDESCEND - 1730)) | (1 << (PlSqlParser.SYS_OP_VECAND - 1730)) | (1 << (PlSqlParser.SYS_OP_VECBIT - 1730)) | (1 << (PlSqlParser.SYS_OP_VECOR - 1730)) | (1 << (PlSqlParser.SYS_OP_VECXOR - 1730)) | (1 << (PlSqlParser.SYS_OP_VERSION - 1730)) | (1 << (PlSqlParser.SYS_OP_VREF - 1730)) | (1 << (PlSqlParser.SYS_OP_VVD - 1730)) | (1 << (PlSqlParser.SYS_OP_XMLCONS_FOR_CSX - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHATG - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHIDX - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHOP - 1730)) | (1 << (PlSqlParser.SYS_OP_XTXT2SQLT - 1730)))) !== 0) || ((((_la - 1762)) & ~0x1f) == 0 && ((1 << (_la - 1762)) & ((1 << (PlSqlParser.SYS_OP_ZONE_ID - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_DEPTH - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_MAXCHILD - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_PARENT - 1762)) | (1 << (PlSqlParser.SYS_PARALLEL_TXN - 1762)) | (1 << (PlSqlParser.SYS_PATHID_IS_ATTR - 1762)) | (1 << (PlSqlParser.SYS_PATHID_IS_NMSPC - 1762)) | (1 << (PlSqlParser.SYS_PATHID_LASTNAME - 1762)) | (1 << (PlSqlParser.SYS_PATHID_LASTNMSPC - 1762)) | (1 << (PlSqlParser.SYS_PATH_REVERSE - 1762)) | (1 << (PlSqlParser.SYS_PXQEXTRACT - 1762)) | (1 << (PlSqlParser.SYS_RAW_TO_XSID - 1762)) | (1 << (PlSqlParser.SYS_RID_ORDER - 1762)) | (1 << (PlSqlParser.SYS_ROW_DELTA - 1762)) | (1 << (PlSqlParser.SYS_SC_2_XMLT - 1762)) | (1 << (PlSqlParser.SYS_SYNRCIREDO - 1762)) | (1 << (PlSqlParser.SYSTEM_DEFINED - 1762)) | (1 << (PlSqlParser.SYSTEM - 1762)) | (1 << (PlSqlParser.SYSTIMESTAMP - 1762)) | (1 << (PlSqlParser.SYS_TYPEID - 1762)) | (1 << (PlSqlParser.SYS_UMAKEXML - 1762)) | (1 << (PlSqlParser.SYS_XMLANALYZE - 1762)) | (1 << (PlSqlParser.SYS_XMLCONTAINS - 1762)) | (1 << (PlSqlParser.SYS_XMLCONV - 1762)) | (1 << (PlSqlParser.SYS_XMLEXNSURI - 1762)) | (1 << (PlSqlParser.SYS_XMLGEN - 1762)) | (1 << (PlSqlParser.SYS_XMLI_LOC_ISNODE - 1762)) | (1 << (PlSqlParser.SYS_XMLI_LOC_ISTEXT - 1762)) | (1 << (PlSqlParser.SYS_XMLINSTR - 1762)) | (1 << (PlSqlParser.SYS_XMLLOCATOR_GETSVAL - 1762)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETCID - 1762)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETLOCATOR - 1762)))) !== 0) || ((((_la - 1794)) & ~0x1f) == 0 && ((1 << (_la - 1794)) & ((1 << (PlSqlParser.SYS_XMLNODEID_GETOKEY - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETPATHID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETPTRID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETRID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETSVAL - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETTID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID - 1794)) | (1 << (PlSqlParser.SYS_XMLT_2_SC - 1794)) | (1 << (PlSqlParser.SYS_XMLTRANSLATE - 1794)) | (1 << (PlSqlParser.SYS_XMLTYPE2SQL - 1794)) | (1 << (PlSqlParser.SYS_XQ_ASQLCNV - 1794)) | (1 << (PlSqlParser.SYS_XQ_ATOMCNVCHK - 1794)) | (1 << (PlSqlParser.SYS_XQBASEURI - 1794)) | (1 << (PlSqlParser.SYS_XQCASTABLEERRH - 1794)) | (1 << (PlSqlParser.SYS_XQCODEP2STR - 1794)) | (1 << (PlSqlParser.SYS_XQCODEPEQ - 1794)) | (1 << (PlSqlParser.SYS_XQCON2SEQ - 1794)) | (1 << (PlSqlParser.SYS_XQCONCAT - 1794)) | (1 << (PlSqlParser.SYS_XQDELETE - 1794)) | (1 << (PlSqlParser.SYS_XQDFLTCOLATION - 1794)) | (1 << (PlSqlParser.SYS_XQDOC - 1794)) | (1 << (PlSqlParser.SYS_XQDOCURI - 1794)) | (1 << (PlSqlParser.SYS_XQDURDIV - 1794)) | (1 << (PlSqlParser.SYS_XQED4URI - 1794)) | (1 << (PlSqlParser.SYS_XQENDSWITH - 1794)) | (1 << (PlSqlParser.SYS_XQERRH - 1794)) | (1 << (PlSqlParser.SYS_XQERR - 1794)) | (1 << (PlSqlParser.SYS_XQESHTMLURI - 1794)) | (1 << (PlSqlParser.SYS_XQEXLOBVAL - 1794)) | (1 << (PlSqlParser.SYS_XQEXSTWRP - 1794)) | (1 << (PlSqlParser.SYS_XQEXTRACT - 1794)) | (1 << (PlSqlParser.SYS_XQEXTRREF - 1794)))) !== 0) || ((((_la - 1826)) & ~0x1f) == 0 && ((1 << (_la - 1826)) & ((1 << (PlSqlParser.SYS_XQEXVAL - 1826)) | (1 << (PlSqlParser.SYS_XQFB2STR - 1826)) | (1 << (PlSqlParser.SYS_XQFNBOOL - 1826)) | (1 << (PlSqlParser.SYS_XQFNCMP - 1826)) | (1 << (PlSqlParser.SYS_XQFNDATIM - 1826)) | (1 << (PlSqlParser.SYS_XQFNLNAME - 1826)) | (1 << (PlSqlParser.SYS_XQFNNM - 1826)) | (1 << (PlSqlParser.SYS_XQFNNSURI - 1826)) | (1 << (PlSqlParser.SYS_XQFNPREDTRUTH - 1826)) | (1 << (PlSqlParser.SYS_XQFNQNM - 1826)) | (1 << (PlSqlParser.SYS_XQFNROOT - 1826)) | (1 << (PlSqlParser.SYS_XQFORMATNUM - 1826)) | (1 << (PlSqlParser.SYS_XQFTCONTAIN - 1826)) | (1 << (PlSqlParser.SYS_XQFUNCR - 1826)) | (1 << (PlSqlParser.SYS_XQGETCONTENT - 1826)) | (1 << (PlSqlParser.SYS_XQINDXOF - 1826)) | (1 << (PlSqlParser.SYS_XQINSERT - 1826)) | (1 << (PlSqlParser.SYS_XQINSPFX - 1826)) | (1 << (PlSqlParser.SYS_XQIRI2URI - 1826)) | (1 << (PlSqlParser.SYS_XQLANG - 1826)) | (1 << (PlSqlParser.SYS_XQLLNMFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQMKNODEREF - 1826)) | (1 << (PlSqlParser.SYS_XQNILLED - 1826)) | (1 << (PlSqlParser.SYS_XQNODENAME - 1826)) | (1 << (PlSqlParser.SYS_XQNORMSPACE - 1826)) | (1 << (PlSqlParser.SYS_XQNORMUCODE - 1826)) | (1 << (PlSqlParser.SYS_XQ_NRNG - 1826)) | (1 << (PlSqlParser.SYS_XQNSP4PFX - 1826)) | (1 << (PlSqlParser.SYS_XQNSPFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQPFXFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQ_PKSQL2XML - 1826)) | (1 << (PlSqlParser.SYS_XQPOLYABS - 1826)))) !== 0) || ((((_la - 1858)) & ~0x1f) == 0 && ((1 << (_la - 1858)) & ((1 << (PlSqlParser.SYS_XQPOLYADD - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCEL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCSTBL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCST - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYDIV - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYFLR - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYMOD - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYMUL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYRND - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYSQRT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYSUB - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYUMUS - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYUPLS - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVEQ - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVGE - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVGT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVLE - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVLT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVNE - 1858)) | (1 << (PlSqlParser.SYS_XQREF2VAL - 1858)) | (1 << (PlSqlParser.SYS_XQRENAME - 1858)) | (1 << (PlSqlParser.SYS_XQREPLACE - 1858)) | (1 << (PlSqlParser.SYS_XQRESVURI - 1858)) | (1 << (PlSqlParser.SYS_XQRNDHALF2EVN - 1858)) | (1 << (PlSqlParser.SYS_XQRSLVQNM - 1858)) | (1 << (PlSqlParser.SYS_XQRYENVPGET - 1858)) | (1 << (PlSqlParser.SYS_XQRYVARGET - 1858)) | (1 << (PlSqlParser.SYS_XQRYWRP - 1858)) | (1 << (PlSqlParser.SYS_XQSEQ2CON4XC - 1858)) | (1 << (PlSqlParser.SYS_XQSEQ2CON - 1858)) | (1 << (PlSqlParser.SYS_XQSEQDEEPEQ - 1858)) | (1 << (PlSqlParser.SYS_XQSEQINSB - 1858)))) !== 0) || ((((_la - 1890)) & ~0x1f) == 0 && ((1 << (_la - 1890)) & ((1 << (PlSqlParser.SYS_XQSEQRM - 1890)) | (1 << (PlSqlParser.SYS_XQSEQRVS - 1890)) | (1 << (PlSqlParser.SYS_XQSEQSUB - 1890)) | (1 << (PlSqlParser.SYS_XQSEQTYPMATCH - 1890)) | (1 << (PlSqlParser.SYS_XQSTARTSWITH - 1890)) | (1 << (PlSqlParser.SYS_XQSTATBURI - 1890)) | (1 << (PlSqlParser.SYS_XQSTR2CODEP - 1890)) | (1 << (PlSqlParser.SYS_XQSTRJOIN - 1890)) | (1 << (PlSqlParser.SYS_XQSUBSTRAFT - 1890)) | (1 << (PlSqlParser.SYS_XQSUBSTRBEF - 1890)) | (1 << (PlSqlParser.SYS_XQTOKENIZE - 1890)) | (1 << (PlSqlParser.SYS_XQTREATAS - 1890)) | (1 << (PlSqlParser.SYS_XQ_UPKXML2SQL - 1890)) | (1 << (PlSqlParser.SYS_XQXFORM - 1890)) | (1 << (PlSqlParser.SYS_XSID_TO_RAW - 1890)) | (1 << (PlSqlParser.SYS_ZMAP_FILTER - 1890)) | (1 << (PlSqlParser.SYS_ZMAP_REFRESH - 1890)) | (1 << (PlSqlParser.TABLE_LOOKUP_BY_NL - 1890)) | (1 << (PlSqlParser.TABLESPACE_NO - 1890)) | (1 << (PlSqlParser.TABLESPACE - 1890)) | (1 << (PlSqlParser.TABLES - 1890)) | (1 << (PlSqlParser.TABLE_STATS - 1890)) | (1 << (PlSqlParser.TABLE - 1890)) | (1 << (PlSqlParser.TABNO - 1890)) | (1 << (PlSqlParser.TAG - 1890)) | (1 << (PlSqlParser.TANH - 1890)) | (1 << (PlSqlParser.TAN - 1890)) | (1 << (PlSqlParser.TBLORIDXPARTNUM - 1890)) | (1 << (PlSqlParser.TEMPFILE - 1890)) | (1 << (PlSqlParser.TEMPLATE - 1890)) | (1 << (PlSqlParser.TEMPORARY - 1890)) | (1 << (PlSqlParser.TEMP_TABLE - 1890)))) !== 0) || ((((_la - 1922)) & ~0x1f) == 0 && ((1 << (_la - 1922)) & ((1 << (PlSqlParser.TEST - 1922)) | (1 << (PlSqlParser.TEXT - 1922)) | (1 << (PlSqlParser.THAN - 1922)) | (1 << (PlSqlParser.THEN - 1922)) | (1 << (PlSqlParser.THE - 1922)) | (1 << (PlSqlParser.THREAD - 1922)) | (1 << (PlSqlParser.THROUGH - 1922)) | (1 << (PlSqlParser.TIER - 1922)) | (1 << (PlSqlParser.TIES - 1922)) | (1 << (PlSqlParser.TIMEOUT - 1922)) | (1 << (PlSqlParser.TIMESTAMP_LTZ_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMESTAMP - 1922)) | (1 << (PlSqlParser.TIMESTAMP_TZ_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMESTAMP_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMES - 1922)) | (1 << (PlSqlParser.TIME - 1922)) | (1 << (PlSqlParser.TIMEZONE_ABBR - 1922)) | (1 << (PlSqlParser.TIMEZONE_HOUR - 1922)) | (1 << (PlSqlParser.TIMEZONE_MINUTE - 1922)) | (1 << (PlSqlParser.TIMEZONE_OFFSET - 1922)) | (1 << (PlSqlParser.TIMEZONE_REGION - 1922)) | (1 << (PlSqlParser.TIME_ZONE - 1922)) | (1 << (PlSqlParser.TIV_GB - 1922)) | (1 << (PlSqlParser.TIV_SSF - 1922)) | (1 << (PlSqlParser.TO_ACLID - 1922)) | (1 << (PlSqlParser.TO_BINARY_DOUBLE - 1922)) | (1 << (PlSqlParser.TO_BINARY_FLOAT - 1922)) | (1 << (PlSqlParser.TO_BLOB - 1922)) | (1 << (PlSqlParser.TO_CLOB - 1922)) | (1 << (PlSqlParser.TO_DSINTERVAL - 1922)) | (1 << (PlSqlParser.TO_LOB - 1922)))) !== 0) || ((((_la - 1954)) & ~0x1f) == 0 && ((1 << (_la - 1954)) & ((1 << (PlSqlParser.TO_MULTI_BYTE - 1954)) | (1 << (PlSqlParser.TO_NCHAR - 1954)) | (1 << (PlSqlParser.TO_NCLOB - 1954)) | (1 << (PlSqlParser.TO_NUMBER - 1954)) | (1 << (PlSqlParser.TOPLEVEL - 1954)) | (1 << (PlSqlParser.TO_SINGLE_BYTE - 1954)) | (1 << (PlSqlParser.TO_TIMESTAMP - 1954)) | (1 << (PlSqlParser.TO_TIMESTAMP_TZ - 1954)) | (1 << (PlSqlParser.TO_TIME - 1954)) | (1 << (PlSqlParser.TO_TIME_TZ - 1954)) | (1 << (PlSqlParser.TO_YMINTERVAL - 1954)) | (1 << (PlSqlParser.TRACE - 1954)) | (1 << (PlSqlParser.TRACING - 1954)) | (1 << (PlSqlParser.TRACKING - 1954)) | (1 << (PlSqlParser.TRAILING - 1954)) | (1 << (PlSqlParser.TRANSACTION - 1954)) | (1 << (PlSqlParser.TRANSFORM_DISTINCT_AGG - 1954)) | (1 << (PlSqlParser.TRANSITIONAL - 1954)) | (1 << (PlSqlParser.TRANSITION - 1954)) | (1 << (PlSqlParser.TRANSLATE - 1954)) | (1 << (PlSqlParser.TRANSLATION - 1954)) | (1 << (PlSqlParser.TREAT - 1954)) | (1 << (PlSqlParser.TRIGGERS - 1954)) | (1 << (PlSqlParser.TRIGGER - 1954)) | (1 << (PlSqlParser.TRUE - 1954)) | (1 << (PlSqlParser.TRUNCATE - 1954)) | (1 << (PlSqlParser.TRUNC - 1954)) | (1 << (PlSqlParser.TRUSTED - 1954)) | (1 << (PlSqlParser.TRUST - 1954)) | (1 << (PlSqlParser.TUNING - 1954)) | (1 << (PlSqlParser.TX - 1954)))) !== 0) || ((((_la - 1986)) & ~0x1f) == 0 && ((1 << (_la - 1986)) & ((1 << (PlSqlParser.TYPES - 1986)) | (1 << (PlSqlParser.TYPE - 1986)) | (1 << (PlSqlParser.TZ_OFFSET - 1986)) | (1 << (PlSqlParser.UB2 - 1986)) | (1 << (PlSqlParser.UBA - 1986)) | (1 << (PlSqlParser.UCS2 - 1986)) | (1 << (PlSqlParser.UID - 1986)) | (1 << (PlSqlParser.UNARCHIVED - 1986)) | (1 << (PlSqlParser.UNBOUNDED - 1986)) | (1 << (PlSqlParser.UNBOUND - 1986)) | (1 << (PlSqlParser.UNCONDITIONAL - 1986)) | (1 << (PlSqlParser.UNDER - 1986)) | (1 << (PlSqlParser.UNDO - 1986)) | (1 << (PlSqlParser.UNDROP - 1986)) | (1 << (PlSqlParser.UNIFORM - 1986)) | (1 << (PlSqlParser.UNISTR - 1986)) | (1 << (PlSqlParser.UNLIMITED - 1986)) | (1 << (PlSqlParser.UNLOAD - 1986)) | (1 << (PlSqlParser.UNLOCK - 1986)) | (1 << (PlSqlParser.UNMATCHED - 1986)) | (1 << (PlSqlParser.UNNEST_INNERJ_DISTINCT_VIEW - 1986)) | (1 << (PlSqlParser.UNNEST_NOSEMIJ_NODISTINCTVIEW - 1986)) | (1 << (PlSqlParser.UNNEST_SEMIJ_VIEW - 1986)) | (1 << (PlSqlParser.UNNEST - 1986)) | (1 << (PlSqlParser.UNPACKED - 1986)) | (1 << (PlSqlParser.UNPIVOT - 1986)) | (1 << (PlSqlParser.UNPLUG - 1986)) | (1 << (PlSqlParser.UNPROTECTED - 1986)) | (1 << (PlSqlParser.UNQUIESCE - 1986)) | (1 << (PlSqlParser.UNRECOVERABLE - 1986)))) !== 0) || ((((_la - 2018)) & ~0x1f) == 0 && ((1 << (_la - 2018)) & ((1 << (PlSqlParser.UNRESTRICTED - 2018)) | (1 << (PlSqlParser.UNSUBSCRIBE - 2018)) | (1 << (PlSqlParser.UNTIL - 2018)) | (1 << (PlSqlParser.UNUSABLE - 2018)) | (1 << (PlSqlParser.UNUSED - 2018)) | (1 << (PlSqlParser.UPDATABLE - 2018)) | (1 << (PlSqlParser.UPDATED - 2018)) | (1 << (PlSqlParser.UPDATEXML - 2018)) | (1 << (PlSqlParser.UPD_INDEXES - 2018)) | (1 << (PlSqlParser.UPD_JOININDEX - 2018)) | (1 << (PlSqlParser.UPGRADE - 2018)) | (1 << (PlSqlParser.UPPER - 2018)) | (1 << (PlSqlParser.UPSERT - 2018)) | (1 << (PlSqlParser.UROWID - 2018)) | (1 << (PlSqlParser.USABLE - 2018)) | (1 << (PlSqlParser.USAGE - 2018)) | (1 << (PlSqlParser.USE_ANTI - 2018)) | (1 << (PlSqlParser.USE_CONCAT - 2018)) | (1 << (PlSqlParser.USE_CUBE - 2018)) | (1 << (PlSqlParser.USE_HASH_AGGREGATION - 2018)) | (1 << (PlSqlParser.USE_HASH_GBY_FOR_PUSHDOWN - 2018)) | (1 << (PlSqlParser.USE_HASH - 2018)) | (1 << (PlSqlParser.USE_HIDDEN_PARTITIONS - 2018)) | (1 << (PlSqlParser.USE_INVISIBLE_INDEXES - 2018)) | (1 << (PlSqlParser.USE_MERGE_CARTESIAN - 2018)) | (1 << (PlSqlParser.USE_MERGE - 2018)) | (1 << (PlSqlParser.USE_NL - 2018)) | (1 << (PlSqlParser.USE_NL_WITH_INDEX - 2018)) | (1 << (PlSqlParser.USE_PRIVATE_OUTLINES - 2018)) | (1 << (PlSqlParser.USER_DATA - 2018)) | (1 << (PlSqlParser.USER_DEFINED - 2018)))) !== 0) || ((((_la - 2050)) & ~0x1f) == 0 && ((1 << (_la - 2050)) & ((1 << (PlSqlParser.USERENV - 2050)) | (1 << (PlSqlParser.USERGROUP - 2050)) | (1 << (PlSqlParser.USER_RECYCLEBIN - 2050)) | (1 << (PlSqlParser.USERS - 2050)) | (1 << (PlSqlParser.USER_TABLESPACES - 2050)) | (1 << (PlSqlParser.USER - 2050)) | (1 << (PlSqlParser.USE_SEMI - 2050)) | (1 << (PlSqlParser.USE_STORED_OUTLINES - 2050)) | (1 << (PlSqlParser.USE_TTT_FOR_GSETS - 2050)) | (1 << (PlSqlParser.USE - 2050)) | (1 << (PlSqlParser.USE_VECTOR_AGGREGATION - 2050)) | (1 << (PlSqlParser.USE_WEAK_NAME_RESL - 2050)) | (1 << (PlSqlParser.USING_NO_EXPAND - 2050)) | (1 << (PlSqlParser.USING - 2050)) | (1 << (PlSqlParser.UTF16BE - 2050)) | (1 << (PlSqlParser.UTF16LE - 2050)) | (1 << (PlSqlParser.UTF32 - 2050)) | (1 << (PlSqlParser.UTF8 - 2050)) | (1 << (PlSqlParser.V1 - 2050)) | (1 << (PlSqlParser.V2 - 2050)) | (1 << (PlSqlParser.VALIDATE - 2050)) | (1 << (PlSqlParser.VALIDATION - 2050)) | (1 << (PlSqlParser.VALID_TIME_END - 2050)) | (1 << (PlSqlParser.VALUE - 2050)) | (1 << (PlSqlParser.VARCHAR2 - 2050)) | (1 << (PlSqlParser.VARCHAR - 2050)) | (1 << (PlSqlParser.VARIABLE - 2050)) | (1 << (PlSqlParser.VAR_POP - 2050)) | (1 << (PlSqlParser.VARRAYS - 2050)) | (1 << (PlSqlParser.VARRAY - 2050)) | (1 << (PlSqlParser.VAR_SAMP - 2050)))) !== 0) || ((((_la - 2082)) & ~0x1f) == 0 && ((1 << (_la - 2082)) & ((1 << (PlSqlParser.VARYING - 2082)) | (1 << (PlSqlParser.VECTOR_READ_TRACE - 2082)) | (1 << (PlSqlParser.VECTOR_READ - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM_DIMS - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM_FACT - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM - 2082)) | (1 << (PlSqlParser.VERIFIER - 2082)) | (1 << (PlSqlParser.VERIFY - 2082)) | (1 << (PlSqlParser.VERSIONING - 2082)) | (1 << (PlSqlParser.VERSIONS_ENDSCN - 2082)) | (1 << (PlSqlParser.VERSIONS_ENDTIME - 2082)) | (1 << (PlSqlParser.VERSIONS_OPERATION - 2082)) | (1 << (PlSqlParser.VERSIONS_STARTSCN - 2082)) | (1 << (PlSqlParser.VERSIONS_STARTTIME - 2082)) | (1 << (PlSqlParser.VERSIONS - 2082)) | (1 << (PlSqlParser.VERSIONS_XID - 2082)) | (1 << (PlSqlParser.VERSION - 2082)) | (1 << (PlSqlParser.VIOLATION - 2082)) | (1 << (PlSqlParser.VIRTUAL - 2082)) | (1 << (PlSqlParser.VISIBILITY - 2082)) | (1 << (PlSqlParser.VISIBLE - 2082)) | (1 << (PlSqlParser.VOLUME - 2082)) | (1 << (PlSqlParser.VSIZE - 2082)) | (1 << (PlSqlParser.WAIT - 2082)) | (1 << (PlSqlParser.WALLET - 2082)) | (1 << (PlSqlParser.WARNING - 2082)) | (1 << (PlSqlParser.WEEKS - 2082)) | (1 << (PlSqlParser.WEEK - 2082)) | (1 << (PlSqlParser.WELLFORMED - 2082)) | (1 << (PlSqlParser.WHENEVER - 2082)) | (1 << (PlSqlParser.WHEN - 2082)))) !== 0) || ((((_la - 2115)) & ~0x1f) == 0 && ((1 << (_la - 2115)) & ((1 << (PlSqlParser.WHILE - 2115)) | (1 << (PlSqlParser.WHITESPACE - 2115)) | (1 << (PlSqlParser.WIDTH_BUCKET - 2115)) | (1 << (PlSqlParser.WITHIN - 2115)) | (1 << (PlSqlParser.WITHOUT - 2115)) | (1 << (PlSqlParser.WITH_PLSQL - 2115)) | (1 << (PlSqlParser.WORK - 2115)) | (1 << (PlSqlParser.WRAPPED - 2115)) | (1 << (PlSqlParser.WRAPPER - 2115)) | (1 << (PlSqlParser.WRITE - 2115)) | (1 << (PlSqlParser.XDB_FASTPATH_INSERT - 2115)) | (1 << (PlSqlParser.X_DYN_PRUNE - 2115)) | (1 << (PlSqlParser.XID - 2115)) | (1 << (PlSqlParser.XML2OBJECT - 2115)) | (1 << (PlSqlParser.XMLAGG - 2115)) | (1 << (PlSqlParser.XMLATTRIBUTES - 2115)) | (1 << (PlSqlParser.XMLCAST - 2115)) | (1 << (PlSqlParser.XMLCDATA - 2115)) | (1 << (PlSqlParser.XMLCOLATTVAL - 2115)) | (1 << (PlSqlParser.XMLCOMMENT - 2115)) | (1 << (PlSqlParser.XMLCONCAT - 2115)) | (1 << (PlSqlParser.XMLDIFF - 2115)) | (1 << (PlSqlParser.XML_DML_RWT_STMT - 2115)) | (1 << (PlSqlParser.XMLELEMENT - 2115)) | (1 << (PlSqlParser.XMLEXISTS2 - 2115)) | (1 << (PlSqlParser.XMLEXISTS - 2115)) | (1 << (PlSqlParser.XMLFOREST - 2115)) | (1 << (PlSqlParser.XMLINDEX_REWRITE_IN_SELECT - 2115)) | (1 << (PlSqlParser.XMLINDEX_REWRITE - 2115)))) !== 0) || ((((_la - 2147)) & ~0x1f) == 0 && ((1 << (_la - 2147)) & ((1 << (PlSqlParser.XMLINDEX_SEL_IDX_TBL - 2147)) | (1 << (PlSqlParser.XMLISNODE - 2147)) | (1 << (PlSqlParser.XMLISVALID - 2147)) | (1 << (PlSqlParser.XMLNAMESPACES - 2147)) | (1 << (PlSqlParser.XMLPARSE - 2147)) | (1 << (PlSqlParser.XMLPATCH - 2147)) | (1 << (PlSqlParser.XMLPI - 2147)) | (1 << (PlSqlParser.XMLQUERYVAL - 2147)) | (1 << (PlSqlParser.XMLQUERY - 2147)) | (1 << (PlSqlParser.XMLROOT - 2147)) | (1 << (PlSqlParser.XMLSCHEMA - 2147)) | (1 << (PlSqlParser.XMLSERIALIZE - 2147)) | (1 << (PlSqlParser.XMLTABLE - 2147)) | (1 << (PlSqlParser.XMLTRANSFORMBLOB - 2147)) | (1 << (PlSqlParser.XMLTRANSFORM - 2147)) | (1 << (PlSqlParser.XMLTYPE - 2147)) | (1 << (PlSqlParser.XML - 2147)) | (1 << (PlSqlParser.XPATHTABLE - 2147)) | (1 << (PlSqlParser.XS_SYS_CONTEXT - 2147)) | (1 << (PlSqlParser.XS - 2147)) | (1 << (PlSqlParser.YEARS - 2147)) | (1 << (PlSqlParser.YEAR - 2147)) | (1 << (PlSqlParser.YES - 2147)) | (1 << (PlSqlParser.YMINTERVAL_UNCONSTRAINED - 2147)) | (1 << (PlSqlParser.ZONEMAP - 2147)) | (1 << (PlSqlParser.ZONE - 2147)) | (1 << (PlSqlParser.PREDICTION - 2147)) | (1 << (PlSqlParser.PREDICTION_BOUNDS - 2147)) | (1 << (PlSqlParser.PREDICTION_COST - 2147)) | (1 << (PlSqlParser.PREDICTION_DETAILS - 2147)) | (1 << (PlSqlParser.PREDICTION_PROBABILITY - 2147)))) !== 0) || ((((_la - 2179)) & ~0x1f) == 0 && ((1 << (_la - 2179)) & ((1 << (PlSqlParser.PREDICTION_SET - 2179)) | (1 << (PlSqlParser.CUME_DIST - 2179)) | (1 << (PlSqlParser.DENSE_RANK - 2179)) | (1 << (PlSqlParser.LISTAGG - 2179)) | (1 << (PlSqlParser.PERCENT_RANK - 2179)) | (1 << (PlSqlParser.PERCENTILE_CONT - 2179)) | (1 << (PlSqlParser.PERCENTILE_DISC - 2179)) | (1 << (PlSqlParser.RANK - 2179)) | (1 << (PlSqlParser.AVG - 2179)) | (1 << (PlSqlParser.CORR - 2179)) | (1 << (PlSqlParser.COVAR_ - 2179)) | (1 << (PlSqlParser.LAG - 2179)) | (1 << (PlSqlParser.LEAD - 2179)) | (1 << (PlSqlParser.MAX - 2179)) | (1 << (PlSqlParser.MEDIAN - 2179)) | (1 << (PlSqlParser.MIN - 2179)) | (1 << (PlSqlParser.NTILE - 2179)) | (1 << (PlSqlParser.NVL - 2179)) | (1 << (PlSqlParser.RATIO_TO_REPORT - 2179)) | (1 << (PlSqlParser.REGR_ - 2179)) | (1 << (PlSqlParser.ROUND - 2179)) | (1 << (PlSqlParser.ROW_NUMBER - 2179)) | (1 << (PlSqlParser.SUBSTR - 2179)) | (1 << (PlSqlParser.TO_CHAR - 2179)) | (1 << (PlSqlParser.TRIM - 2179)) | (1 << (PlSqlParser.SUM - 2179)) | (1 << (PlSqlParser.STDDEV - 2179)) | (1 << (PlSqlParser.VAR_ - 2179)) | (1 << (PlSqlParser.VARIANCE - 2179)) | (1 << (PlSqlParser.LEAST - 2179)) | (1 << (PlSqlParser.GREATEST - 2179)))) !== 0) || ((((_la - 2211)) & ~0x1f) == 0 && ((1 << (_la - 2211)) & ((1 << (PlSqlParser.TO_DATE - 2211)) | (1 << (PlSqlParser.PERIOD - 2211)) | (1 << (PlSqlParser.DELIMITED_ID - 2211)))) !== 0) || _la===PlSqlParser.INTRODUCER || _la===PlSqlParser.REGULAR_ID) {
+ this.state = 1780;
+ this.package_name();
+ }
+
+ this.state = 1783;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Package_obj_specContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_package_obj_spec;
+ return this;
+}
+
+Package_obj_specContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Package_obj_specContext.prototype.constructor = Package_obj_specContext;
+
+Package_obj_specContext.prototype.pragma_declaration = function() {
+ return this.getTypedRuleContext(Pragma_declarationContext,0);
+};
+
+Package_obj_specContext.prototype.variable_declaration = function() {
+ return this.getTypedRuleContext(Variable_declarationContext,0);
+};
+
+Package_obj_specContext.prototype.subtype_declaration = function() {
+ return this.getTypedRuleContext(Subtype_declarationContext,0);
+};
+
+Package_obj_specContext.prototype.cursor_declaration = function() {
+ return this.getTypedRuleContext(Cursor_declarationContext,0);
+};
+
+Package_obj_specContext.prototype.exception_declaration = function() {
+ return this.getTypedRuleContext(Exception_declarationContext,0);
+};
+
+Package_obj_specContext.prototype.type_declaration = function() {
+ return this.getTypedRuleContext(Type_declarationContext,0);
+};
+
+Package_obj_specContext.prototype.procedure_spec = function() {
+ return this.getTypedRuleContext(Procedure_specContext,0);
+};
+
+Package_obj_specContext.prototype.function_spec = function() {
+ return this.getTypedRuleContext(Function_specContext,0);
+};
+
+Package_obj_specContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterPackage_obj_spec(this);
+ }
+};
+
+Package_obj_specContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitPackage_obj_spec(this);
+ }
+};
+
+Package_obj_specContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitPackage_obj_spec(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Package_obj_specContext = Package_obj_specContext;
+
+PlSqlParser.prototype.package_obj_spec = function() {
+
+ var localctx = new Package_obj_specContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 30, PlSqlParser.RULE_package_obj_spec);
+ try {
+ this.state = 1793;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,38,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1785;
+ this.pragma_declaration();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 1786;
+ this.variable_declaration();
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 1787;
+ this.subtype_declaration();
+ break;
+
+ case 4:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 1788;
+ this.cursor_declaration();
+ break;
+
+ case 5:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 1789;
+ this.exception_declaration();
+ break;
+
+ case 6:
+ this.enterOuterAlt(localctx, 6);
+ this.state = 1790;
+ this.type_declaration();
+ break;
+
+ case 7:
+ this.enterOuterAlt(localctx, 7);
+ this.state = 1791;
+ this.procedure_spec();
+ break;
+
+ case 8:
+ this.enterOuterAlt(localctx, 8);
+ this.state = 1792;
+ this.function_spec();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Procedure_specContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_procedure_spec;
+ return this;
+}
+
+Procedure_specContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Procedure_specContext.prototype.constructor = Procedure_specContext;
+
+Procedure_specContext.prototype.PROCEDURE = function() {
+ return this.getToken(PlSqlParser.PROCEDURE, 0);
+};
+
+Procedure_specContext.prototype.identifier = function() {
+ return this.getTypedRuleContext(IdentifierContext,0);
+};
+
+Procedure_specContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Procedure_specContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Procedure_specContext.prototype.parameter = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ParameterContext);
+ } else {
+ return this.getTypedRuleContext(ParameterContext,i);
+ }
+};
+
+Procedure_specContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Procedure_specContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Procedure_specContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterProcedure_spec(this);
+ }
+};
+
+Procedure_specContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitProcedure_spec(this);
+ }
+};
+
+Procedure_specContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitProcedure_spec(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Procedure_specContext = Procedure_specContext;
+
+PlSqlParser.prototype.procedure_spec = function() {
+
+ var localctx = new Procedure_specContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 32, PlSqlParser.RULE_procedure_spec);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1795;
+ this.match(PlSqlParser.PROCEDURE);
+ this.state = 1796;
+ this.identifier();
+ this.state = 1808;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.LEFT_PAREN) {
+ this.state = 1797;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 1798;
+ this.parameter();
+ this.state = 1803;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 1799;
+ this.match(PlSqlParser.COMMA);
+ this.state = 1800;
+ this.parameter();
+ this.state = 1805;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 1806;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ }
+
+ this.state = 1810;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Function_specContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_function_spec;
+ return this;
+}
+
+Function_specContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Function_specContext.prototype.constructor = Function_specContext;
+
+Function_specContext.prototype.FUNCTION = function() {
+ return this.getToken(PlSqlParser.FUNCTION, 0);
+};
+
+Function_specContext.prototype.identifier = function() {
+ return this.getTypedRuleContext(IdentifierContext,0);
+};
+
+Function_specContext.prototype.RETURN = function() {
+ return this.getToken(PlSqlParser.RETURN, 0);
+};
+
+Function_specContext.prototype.type_spec = function() {
+ return this.getTypedRuleContext(Type_specContext,0);
+};
+
+Function_specContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Function_specContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Function_specContext.prototype.parameter = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ParameterContext);
+ } else {
+ return this.getTypedRuleContext(ParameterContext,i);
+ }
+};
+
+Function_specContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Function_specContext.prototype.PIPELINED = function() {
+ return this.getToken(PlSqlParser.PIPELINED, 0);
+};
+
+Function_specContext.prototype.DETERMINISTIC = function() {
+ return this.getToken(PlSqlParser.DETERMINISTIC, 0);
+};
+
+Function_specContext.prototype.RESULT_CACHE = function() {
+ return this.getToken(PlSqlParser.RESULT_CACHE, 0);
+};
+
+Function_specContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Function_specContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterFunction_spec(this);
+ }
+};
+
+Function_specContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitFunction_spec(this);
+ }
+};
+
+Function_specContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitFunction_spec(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Function_specContext = Function_specContext;
+
+PlSqlParser.prototype.function_spec = function() {
+
+ var localctx = new Function_specContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 34, PlSqlParser.RULE_function_spec);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1812;
+ this.match(PlSqlParser.FUNCTION);
+ this.state = 1813;
+ this.identifier();
+ this.state = 1825;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.LEFT_PAREN) {
+ this.state = 1814;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 1815;
+ this.parameter();
+ this.state = 1820;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 1816;
+ this.match(PlSqlParser.COMMA);
+ this.state = 1817;
+ this.parameter();
+ this.state = 1822;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 1823;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ }
+
+ this.state = 1827;
+ this.match(PlSqlParser.RETURN);
+ this.state = 1828;
+ this.type_spec();
+ this.state = 1830;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.PIPELINED) {
+ this.state = 1829;
+ this.match(PlSqlParser.PIPELINED);
+ }
+
+ this.state = 1833;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.DETERMINISTIC) {
+ this.state = 1832;
+ this.match(PlSqlParser.DETERMINISTIC);
+ }
+
+ this.state = 1836;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.RESULT_CACHE) {
+ this.state = 1835;
+ this.match(PlSqlParser.RESULT_CACHE);
+ }
+
+ this.state = 1838;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Package_obj_bodyContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_package_obj_body;
+ return this;
+}
+
+Package_obj_bodyContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Package_obj_bodyContext.prototype.constructor = Package_obj_bodyContext;
+
+Package_obj_bodyContext.prototype.variable_declaration = function() {
+ return this.getTypedRuleContext(Variable_declarationContext,0);
+};
+
+Package_obj_bodyContext.prototype.subtype_declaration = function() {
+ return this.getTypedRuleContext(Subtype_declarationContext,0);
+};
+
+Package_obj_bodyContext.prototype.cursor_declaration = function() {
+ return this.getTypedRuleContext(Cursor_declarationContext,0);
+};
+
+Package_obj_bodyContext.prototype.exception_declaration = function() {
+ return this.getTypedRuleContext(Exception_declarationContext,0);
+};
+
+Package_obj_bodyContext.prototype.type_declaration = function() {
+ return this.getTypedRuleContext(Type_declarationContext,0);
+};
+
+Package_obj_bodyContext.prototype.procedure_body = function() {
+ return this.getTypedRuleContext(Procedure_bodyContext,0);
+};
+
+Package_obj_bodyContext.prototype.function_body = function() {
+ return this.getTypedRuleContext(Function_bodyContext,0);
+};
+
+Package_obj_bodyContext.prototype.procedure_spec = function() {
+ return this.getTypedRuleContext(Procedure_specContext,0);
+};
+
+Package_obj_bodyContext.prototype.function_spec = function() {
+ return this.getTypedRuleContext(Function_specContext,0);
+};
+
+Package_obj_bodyContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterPackage_obj_body(this);
+ }
+};
+
+Package_obj_bodyContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitPackage_obj_body(this);
+ }
+};
+
+Package_obj_bodyContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitPackage_obj_body(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Package_obj_bodyContext = Package_obj_bodyContext;
+
+PlSqlParser.prototype.package_obj_body = function() {
+
+ var localctx = new Package_obj_bodyContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 36, PlSqlParser.RULE_package_obj_body);
+ try {
+ this.state = 1849;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,46,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1840;
+ this.variable_declaration();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 1841;
+ this.subtype_declaration();
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 1842;
+ this.cursor_declaration();
+ break;
+
+ case 4:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 1843;
+ this.exception_declaration();
+ break;
+
+ case 5:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 1844;
+ this.type_declaration();
+ break;
+
+ case 6:
+ this.enterOuterAlt(localctx, 6);
+ this.state = 1845;
+ this.procedure_body();
+ break;
+
+ case 7:
+ this.enterOuterAlt(localctx, 7);
+ this.state = 1846;
+ this.function_body();
+ break;
+
+ case 8:
+ this.enterOuterAlt(localctx, 8);
+ this.state = 1847;
+ this.procedure_spec();
+ break;
+
+ case 9:
+ this.enterOuterAlt(localctx, 9);
+ this.state = 1848;
+ this.function_spec();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Drop_procedureContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_drop_procedure;
+ return this;
+}
+
+Drop_procedureContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Drop_procedureContext.prototype.constructor = Drop_procedureContext;
+
+Drop_procedureContext.prototype.DROP = function() {
+ return this.getToken(PlSqlParser.DROP, 0);
+};
+
+Drop_procedureContext.prototype.PROCEDURE = function() {
+ return this.getToken(PlSqlParser.PROCEDURE, 0);
+};
+
+Drop_procedureContext.prototype.procedure_name = function() {
+ return this.getTypedRuleContext(Procedure_nameContext,0);
+};
+
+Drop_procedureContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Drop_procedureContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterDrop_procedure(this);
+ }
+};
+
+Drop_procedureContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitDrop_procedure(this);
+ }
+};
+
+Drop_procedureContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitDrop_procedure(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Drop_procedureContext = Drop_procedureContext;
+
+PlSqlParser.prototype.drop_procedure = function() {
+
+ var localctx = new Drop_procedureContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 38, PlSqlParser.RULE_drop_procedure);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1851;
+ this.match(PlSqlParser.DROP);
+ this.state = 1852;
+ this.match(PlSqlParser.PROCEDURE);
+ this.state = 1853;
+ this.procedure_name();
+ this.state = 1854;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Alter_procedureContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_alter_procedure;
+ return this;
+}
+
+Alter_procedureContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Alter_procedureContext.prototype.constructor = Alter_procedureContext;
+
+Alter_procedureContext.prototype.ALTER = function() {
+ return this.getToken(PlSqlParser.ALTER, 0);
+};
+
+Alter_procedureContext.prototype.PROCEDURE = function() {
+ return this.getToken(PlSqlParser.PROCEDURE, 0);
+};
+
+Alter_procedureContext.prototype.procedure_name = function() {
+ return this.getTypedRuleContext(Procedure_nameContext,0);
+};
+
+Alter_procedureContext.prototype.COMPILE = function() {
+ return this.getToken(PlSqlParser.COMPILE, 0);
+};
+
+Alter_procedureContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Alter_procedureContext.prototype.DEBUG = function() {
+ return this.getToken(PlSqlParser.DEBUG, 0);
+};
+
+Alter_procedureContext.prototype.compiler_parameters_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Compiler_parameters_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Compiler_parameters_clauseContext,i);
+ }
+};
+
+Alter_procedureContext.prototype.REUSE = function() {
+ return this.getToken(PlSqlParser.REUSE, 0);
+};
+
+Alter_procedureContext.prototype.SETTINGS = function() {
+ return this.getToken(PlSqlParser.SETTINGS, 0);
+};
+
+Alter_procedureContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAlter_procedure(this);
+ }
+};
+
+Alter_procedureContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAlter_procedure(this);
+ }
+};
+
+Alter_procedureContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAlter_procedure(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Alter_procedureContext = Alter_procedureContext;
+
+PlSqlParser.prototype.alter_procedure = function() {
+
+ var localctx = new Alter_procedureContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 40, PlSqlParser.RULE_alter_procedure);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1856;
+ this.match(PlSqlParser.ALTER);
+ this.state = 1857;
+ this.match(PlSqlParser.PROCEDURE);
+ this.state = 1858;
+ this.procedure_name();
+ this.state = 1859;
+ this.match(PlSqlParser.COMPILE);
+ this.state = 1861;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,47,this._ctx);
+ if(la_===1) {
+ this.state = 1860;
+ this.match(PlSqlParser.DEBUG);
+
+ }
+ this.state = 1866;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,48,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 1863;
+ this.compiler_parameters_clause();
+ }
+ this.state = 1868;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,48,this._ctx);
+ }
+
+ this.state = 1871;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.REUSE) {
+ this.state = 1869;
+ this.match(PlSqlParser.REUSE);
+ this.state = 1870;
+ this.match(PlSqlParser.SETTINGS);
+ }
+
+ this.state = 1873;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Function_bodyContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_function_body;
+ return this;
+}
+
+Function_bodyContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Function_bodyContext.prototype.constructor = Function_bodyContext;
+
+Function_bodyContext.prototype.FUNCTION = function() {
+ return this.getToken(PlSqlParser.FUNCTION, 0);
+};
+
+Function_bodyContext.prototype.identifier = function() {
+ return this.getTypedRuleContext(IdentifierContext,0);
+};
+
+Function_bodyContext.prototype.RETURN = function() {
+ return this.getToken(PlSqlParser.RETURN, 0);
+};
+
+Function_bodyContext.prototype.type_spec = function() {
+ return this.getTypedRuleContext(Type_specContext,0);
+};
+
+Function_bodyContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Function_bodyContext.prototype.USING = function() {
+ return this.getToken(PlSqlParser.USING, 0);
+};
+
+Function_bodyContext.prototype.implementation_type_name = function() {
+ return this.getTypedRuleContext(Implementation_type_nameContext,0);
+};
+
+Function_bodyContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Function_bodyContext.prototype.parameter = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ParameterContext);
+ } else {
+ return this.getTypedRuleContext(ParameterContext,i);
+ }
+};
+
+Function_bodyContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Function_bodyContext.prototype.invoker_rights_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Invoker_rights_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Invoker_rights_clauseContext,i);
+ }
+};
+
+Function_bodyContext.prototype.parallel_enable_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Parallel_enable_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Parallel_enable_clauseContext,i);
+ }
+};
+
+Function_bodyContext.prototype.result_cache_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Result_cache_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Result_cache_clauseContext,i);
+ }
+};
+
+Function_bodyContext.prototype.DETERMINISTIC = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.DETERMINISTIC);
+ } else {
+ return this.getToken(PlSqlParser.DETERMINISTIC, i);
+ }
+};
+
+
+Function_bodyContext.prototype.PIPELINED = function() {
+ return this.getToken(PlSqlParser.PIPELINED, 0);
+};
+
+Function_bodyContext.prototype.AGGREGATE = function() {
+ return this.getToken(PlSqlParser.AGGREGATE, 0);
+};
+
+Function_bodyContext.prototype.IS = function() {
+ return this.getToken(PlSqlParser.IS, 0);
+};
+
+Function_bodyContext.prototype.AS = function() {
+ return this.getToken(PlSqlParser.AS, 0);
+};
+
+Function_bodyContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Function_bodyContext.prototype.body = function() {
+ return this.getTypedRuleContext(BodyContext,0);
+};
+
+Function_bodyContext.prototype.call_spec = function() {
+ return this.getTypedRuleContext(Call_specContext,0);
+};
+
+Function_bodyContext.prototype.DECLARE = function() {
+ return this.getToken(PlSqlParser.DECLARE, 0);
+};
+
+Function_bodyContext.prototype.seq_of_declare_specs = function() {
+ return this.getTypedRuleContext(Seq_of_declare_specsContext,0);
+};
+
+Function_bodyContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterFunction_body(this);
+ }
+};
+
+Function_bodyContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitFunction_body(this);
+ }
+};
+
+Function_bodyContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitFunction_body(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Function_bodyContext = Function_bodyContext;
+
+PlSqlParser.prototype.function_body = function() {
+
+ var localctx = new Function_bodyContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 42, PlSqlParser.RULE_function_body);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1875;
+ this.match(PlSqlParser.FUNCTION);
+ this.state = 1876;
+ this.identifier();
+ this.state = 1888;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.LEFT_PAREN) {
+ this.state = 1877;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 1878;
+ this.parameter();
+ this.state = 1883;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 1879;
+ this.match(PlSqlParser.COMMA);
+ this.state = 1880;
+ this.parameter();
+ this.state = 1885;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 1886;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ }
+
+ this.state = 1890;
+ this.match(PlSqlParser.RETURN);
+ this.state = 1891;
+ this.type_spec();
+ this.state = 1898;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,53,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 1896;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.AUTHID:
+ this.state = 1892;
+ this.invoker_rights_clause();
+ break;
+ case PlSqlParser.PARALLEL_ENABLE:
+ this.state = 1893;
+ this.parallel_enable_clause();
+ break;
+ case PlSqlParser.RESULT_CACHE:
+ this.state = 1894;
+ this.result_cache_clause();
+ break;
+ case PlSqlParser.DETERMINISTIC:
+ this.state = 1895;
+ this.match(PlSqlParser.DETERMINISTIC);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ }
+ this.state = 1900;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,53,this._ctx);
+ }
+
+ this.state = 1921;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,59,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 1902;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.PIPELINED) {
+ this.state = 1901;
+ this.match(PlSqlParser.PIPELINED);
+ }
+
+ this.state = 1905;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.DETERMINISTIC) {
+ this.state = 1904;
+ this.match(PlSqlParser.DETERMINISTIC);
+ }
+
+ this.state = 1907;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.AS || _la===PlSqlParser.IS)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 1916;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,58,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 1909;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,56,this._ctx);
+ if(la_===1) {
+ this.state = 1908;
+ this.match(PlSqlParser.DECLARE);
+
+ }
+ this.state = 1912;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,57,this._ctx);
+ if(la_===1) {
+ this.state = 1911;
+ this.seq_of_declare_specs();
+
+ }
+ this.state = 1914;
+ this.body();
+ break;
+
+ case 2:
+ this.state = 1915;
+ this.call_spec();
+ break;
+
+ }
+ break;
+
+ case 2:
+ this.state = 1918;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.AGGREGATE || _la===PlSqlParser.PIPELINED)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 1919;
+ this.match(PlSqlParser.USING);
+ this.state = 1920;
+ this.implementation_type_name();
+ break;
+
+ }
+ this.state = 1923;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Procedure_bodyContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_procedure_body;
+ return this;
+}
+
+Procedure_bodyContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Procedure_bodyContext.prototype.constructor = Procedure_bodyContext;
+
+Procedure_bodyContext.prototype.PROCEDURE = function() {
+ return this.getToken(PlSqlParser.PROCEDURE, 0);
+};
+
+Procedure_bodyContext.prototype.identifier = function() {
+ return this.getTypedRuleContext(IdentifierContext,0);
+};
+
+Procedure_bodyContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Procedure_bodyContext.prototype.IS = function() {
+ return this.getToken(PlSqlParser.IS, 0);
+};
+
+Procedure_bodyContext.prototype.AS = function() {
+ return this.getToken(PlSqlParser.AS, 0);
+};
+
+Procedure_bodyContext.prototype.body = function() {
+ return this.getTypedRuleContext(BodyContext,0);
+};
+
+Procedure_bodyContext.prototype.call_spec = function() {
+ return this.getTypedRuleContext(Call_specContext,0);
+};
+
+Procedure_bodyContext.prototype.EXTERNAL = function() {
+ return this.getToken(PlSqlParser.EXTERNAL, 0);
+};
+
+Procedure_bodyContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Procedure_bodyContext.prototype.parameter = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ParameterContext);
+ } else {
+ return this.getTypedRuleContext(ParameterContext,i);
+ }
+};
+
+Procedure_bodyContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Procedure_bodyContext.prototype.DECLARE = function() {
+ return this.getToken(PlSqlParser.DECLARE, 0);
+};
+
+Procedure_bodyContext.prototype.seq_of_declare_specs = function() {
+ return this.getTypedRuleContext(Seq_of_declare_specsContext,0);
+};
+
+Procedure_bodyContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Procedure_bodyContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterProcedure_body(this);
+ }
+};
+
+Procedure_bodyContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitProcedure_body(this);
+ }
+};
+
+Procedure_bodyContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitProcedure_body(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Procedure_bodyContext = Procedure_bodyContext;
+
+PlSqlParser.prototype.procedure_body = function() {
+
+ var localctx = new Procedure_bodyContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 44, PlSqlParser.RULE_procedure_body);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1925;
+ this.match(PlSqlParser.PROCEDURE);
+ this.state = 1926;
+ this.identifier();
+ this.state = 1938;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.LEFT_PAREN) {
+ this.state = 1927;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 1928;
+ this.parameter();
+ this.state = 1933;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 1929;
+ this.match(PlSqlParser.COMMA);
+ this.state = 1930;
+ this.parameter();
+ this.state = 1935;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 1936;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ }
+
+ this.state = 1940;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.AS || _la===PlSqlParser.IS)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 1950;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,64,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 1942;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,62,this._ctx);
+ if(la_===1) {
+ this.state = 1941;
+ this.match(PlSqlParser.DECLARE);
+
+ }
+ this.state = 1945;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,63,this._ctx);
+ if(la_===1) {
+ this.state = 1944;
+ this.seq_of_declare_specs();
+
+ }
+ this.state = 1947;
+ this.body();
+ break;
+
+ case 2:
+ this.state = 1948;
+ this.call_spec();
+ break;
+
+ case 3:
+ this.state = 1949;
+ this.match(PlSqlParser.EXTERNAL);
+ break;
+
+ }
+ this.state = 1952;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_procedure_bodyContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_create_procedure_body;
+ return this;
+}
+
+Create_procedure_bodyContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_procedure_bodyContext.prototype.constructor = Create_procedure_bodyContext;
+
+Create_procedure_bodyContext.prototype.CREATE = function() {
+ return this.getToken(PlSqlParser.CREATE, 0);
+};
+
+Create_procedure_bodyContext.prototype.PROCEDURE = function() {
+ return this.getToken(PlSqlParser.PROCEDURE, 0);
+};
+
+Create_procedure_bodyContext.prototype.procedure_name = function() {
+ return this.getTypedRuleContext(Procedure_nameContext,0);
+};
+
+Create_procedure_bodyContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Create_procedure_bodyContext.prototype.IS = function() {
+ return this.getToken(PlSqlParser.IS, 0);
+};
+
+Create_procedure_bodyContext.prototype.AS = function() {
+ return this.getToken(PlSqlParser.AS, 0);
+};
+
+Create_procedure_bodyContext.prototype.body = function() {
+ return this.getTypedRuleContext(BodyContext,0);
+};
+
+Create_procedure_bodyContext.prototype.call_spec = function() {
+ return this.getTypedRuleContext(Call_specContext,0);
+};
+
+Create_procedure_bodyContext.prototype.EXTERNAL = function() {
+ return this.getToken(PlSqlParser.EXTERNAL, 0);
+};
+
+Create_procedure_bodyContext.prototype.OR = function() {
+ return this.getToken(PlSqlParser.OR, 0);
+};
+
+Create_procedure_bodyContext.prototype.REPLACE = function() {
+ return this.getToken(PlSqlParser.REPLACE, 0);
+};
+
+Create_procedure_bodyContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Create_procedure_bodyContext.prototype.parameter = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ParameterContext);
+ } else {
+ return this.getTypedRuleContext(ParameterContext,i);
+ }
+};
+
+Create_procedure_bodyContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Create_procedure_bodyContext.prototype.invoker_rights_clause = function() {
+ return this.getTypedRuleContext(Invoker_rights_clauseContext,0);
+};
+
+Create_procedure_bodyContext.prototype.DECLARE = function() {
+ return this.getToken(PlSqlParser.DECLARE, 0);
+};
+
+Create_procedure_bodyContext.prototype.seq_of_declare_specs = function() {
+ return this.getTypedRuleContext(Seq_of_declare_specsContext,0);
+};
+
+Create_procedure_bodyContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Create_procedure_bodyContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterCreate_procedure_body(this);
+ }
+};
+
+Create_procedure_bodyContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitCreate_procedure_body(this);
+ }
+};
+
+Create_procedure_bodyContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitCreate_procedure_body(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Create_procedure_bodyContext = Create_procedure_bodyContext;
+
+PlSqlParser.prototype.create_procedure_body = function() {
+
+ var localctx = new Create_procedure_bodyContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 46, PlSqlParser.RULE_create_procedure_body);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1954;
+ this.match(PlSqlParser.CREATE);
+ this.state = 1957;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.OR) {
+ this.state = 1955;
+ this.match(PlSqlParser.OR);
+ this.state = 1956;
+ this.match(PlSqlParser.REPLACE);
+ }
+
+ this.state = 1959;
+ this.match(PlSqlParser.PROCEDURE);
+ this.state = 1960;
+ this.procedure_name();
+ this.state = 1972;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.LEFT_PAREN) {
+ this.state = 1961;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 1962;
+ this.parameter();
+ this.state = 1967;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 1963;
+ this.match(PlSqlParser.COMMA);
+ this.state = 1964;
+ this.parameter();
+ this.state = 1969;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 1970;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ }
+
+ this.state = 1975;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.AUTHID) {
+ this.state = 1974;
+ this.invoker_rights_clause();
+ }
+
+ this.state = 1977;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.AS || _la===PlSqlParser.IS)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 1987;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,71,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 1979;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,69,this._ctx);
+ if(la_===1) {
+ this.state = 1978;
+ this.match(PlSqlParser.DECLARE);
+
+ }
+ this.state = 1982;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,70,this._ctx);
+ if(la_===1) {
+ this.state = 1981;
+ this.seq_of_declare_specs();
+
+ }
+ this.state = 1984;
+ this.body();
+ break;
+
+ case 2:
+ this.state = 1985;
+ this.call_spec();
+ break;
+
+ case 3:
+ this.state = 1986;
+ this.match(PlSqlParser.EXTERNAL);
+ break;
+
+ }
+ this.state = 1989;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Drop_triggerContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_drop_trigger;
+ return this;
+}
+
+Drop_triggerContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Drop_triggerContext.prototype.constructor = Drop_triggerContext;
+
+Drop_triggerContext.prototype.DROP = function() {
+ return this.getToken(PlSqlParser.DROP, 0);
+};
+
+Drop_triggerContext.prototype.TRIGGER = function() {
+ return this.getToken(PlSqlParser.TRIGGER, 0);
+};
+
+Drop_triggerContext.prototype.trigger_name = function() {
+ return this.getTypedRuleContext(Trigger_nameContext,0);
+};
+
+Drop_triggerContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Drop_triggerContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterDrop_trigger(this);
+ }
+};
+
+Drop_triggerContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitDrop_trigger(this);
+ }
+};
+
+Drop_triggerContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitDrop_trigger(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Drop_triggerContext = Drop_triggerContext;
+
+PlSqlParser.prototype.drop_trigger = function() {
+
+ var localctx = new Drop_triggerContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 48, PlSqlParser.RULE_drop_trigger);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1991;
+ this.match(PlSqlParser.DROP);
+ this.state = 1992;
+ this.match(PlSqlParser.TRIGGER);
+ this.state = 1993;
+ this.trigger_name();
+ this.state = 1994;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Alter_triggerContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_alter_trigger;
+ this.alter_trigger_name = null; // Trigger_nameContext
+ this.rename_trigger_name = null; // Trigger_nameContext
+ return this;
+}
+
+Alter_triggerContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Alter_triggerContext.prototype.constructor = Alter_triggerContext;
+
+Alter_triggerContext.prototype.ALTER = function() {
+ return this.getToken(PlSqlParser.ALTER, 0);
+};
+
+Alter_triggerContext.prototype.TRIGGER = function() {
+ return this.getToken(PlSqlParser.TRIGGER, 0);
+};
+
+Alter_triggerContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Alter_triggerContext.prototype.trigger_name = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Trigger_nameContext);
+ } else {
+ return this.getTypedRuleContext(Trigger_nameContext,i);
+ }
+};
+
+Alter_triggerContext.prototype.RENAME = function() {
+ return this.getToken(PlSqlParser.RENAME, 0);
+};
+
+Alter_triggerContext.prototype.TO = function() {
+ return this.getToken(PlSqlParser.TO, 0);
+};
+
+Alter_triggerContext.prototype.COMPILE = function() {
+ return this.getToken(PlSqlParser.COMPILE, 0);
+};
+
+Alter_triggerContext.prototype.ENABLE = function() {
+ return this.getToken(PlSqlParser.ENABLE, 0);
+};
+
+Alter_triggerContext.prototype.DISABLE = function() {
+ return this.getToken(PlSqlParser.DISABLE, 0);
+};
+
+Alter_triggerContext.prototype.DEBUG = function() {
+ return this.getToken(PlSqlParser.DEBUG, 0);
+};
+
+Alter_triggerContext.prototype.compiler_parameters_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Compiler_parameters_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Compiler_parameters_clauseContext,i);
+ }
+};
+
+Alter_triggerContext.prototype.REUSE = function() {
+ return this.getToken(PlSqlParser.REUSE, 0);
+};
+
+Alter_triggerContext.prototype.SETTINGS = function() {
+ return this.getToken(PlSqlParser.SETTINGS, 0);
+};
+
+Alter_triggerContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAlter_trigger(this);
+ }
+};
+
+Alter_triggerContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAlter_trigger(this);
+ }
+};
+
+Alter_triggerContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAlter_trigger(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Alter_triggerContext = Alter_triggerContext;
+
+PlSqlParser.prototype.alter_trigger = function() {
+
+ var localctx = new Alter_triggerContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 50, PlSqlParser.RULE_alter_trigger);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 1996;
+ this.match(PlSqlParser.ALTER);
+ this.state = 1997;
+ this.match(PlSqlParser.TRIGGER);
+ this.state = 1998;
+ localctx.alter_trigger_name = this.trigger_name();
+ this.state = 2017;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.DISABLE:
+ case PlSqlParser.ENABLE:
+ this.state = 1999;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.DISABLE || _la===PlSqlParser.ENABLE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+ case PlSqlParser.RENAME:
+ this.state = 2000;
+ this.match(PlSqlParser.RENAME);
+ this.state = 2001;
+ this.match(PlSqlParser.TO);
+ this.state = 2002;
+ localctx.rename_trigger_name = this.trigger_name();
+ break;
+ case PlSqlParser.COMPILE:
+ this.state = 2003;
+ this.match(PlSqlParser.COMPILE);
+ this.state = 2005;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,72,this._ctx);
+ if(la_===1) {
+ this.state = 2004;
+ this.match(PlSqlParser.DEBUG);
+
+ }
+ this.state = 2010;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,73,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 2007;
+ this.compiler_parameters_clause();
+ }
+ this.state = 2012;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,73,this._ctx);
+ }
+
+ this.state = 2015;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.REUSE) {
+ this.state = 2013;
+ this.match(PlSqlParser.REUSE);
+ this.state = 2014;
+ this.match(PlSqlParser.SETTINGS);
+ }
+
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 2019;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_triggerContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_create_trigger;
+ return this;
+}
+
+Create_triggerContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_triggerContext.prototype.constructor = Create_triggerContext;
+
+Create_triggerContext.prototype.CREATE = function() {
+ return this.getToken(PlSqlParser.CREATE, 0);
+};
+
+Create_triggerContext.prototype.TRIGGER = function() {
+ return this.getToken(PlSqlParser.TRIGGER, 0);
+};
+
+Create_triggerContext.prototype.trigger_name = function() {
+ return this.getTypedRuleContext(Trigger_nameContext,0);
+};
+
+Create_triggerContext.prototype.trigger_body = function() {
+ return this.getTypedRuleContext(Trigger_bodyContext,0);
+};
+
+Create_triggerContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Create_triggerContext.prototype.simple_dml_trigger = function() {
+ return this.getTypedRuleContext(Simple_dml_triggerContext,0);
+};
+
+Create_triggerContext.prototype.compound_dml_trigger = function() {
+ return this.getTypedRuleContext(Compound_dml_triggerContext,0);
+};
+
+Create_triggerContext.prototype.non_dml_trigger = function() {
+ return this.getTypedRuleContext(Non_dml_triggerContext,0);
+};
+
+Create_triggerContext.prototype.OR = function() {
+ return this.getToken(PlSqlParser.OR, 0);
+};
+
+Create_triggerContext.prototype.REPLACE = function() {
+ return this.getToken(PlSqlParser.REPLACE, 0);
+};
+
+Create_triggerContext.prototype.trigger_follows_clause = function() {
+ return this.getTypedRuleContext(Trigger_follows_clauseContext,0);
+};
+
+Create_triggerContext.prototype.trigger_when_clause = function() {
+ return this.getTypedRuleContext(Trigger_when_clauseContext,0);
+};
+
+Create_triggerContext.prototype.ENABLE = function() {
+ return this.getToken(PlSqlParser.ENABLE, 0);
+};
+
+Create_triggerContext.prototype.DISABLE = function() {
+ return this.getToken(PlSqlParser.DISABLE, 0);
+};
+
+Create_triggerContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterCreate_trigger(this);
+ }
+};
+
+Create_triggerContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitCreate_trigger(this);
+ }
+};
+
+Create_triggerContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitCreate_trigger(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Create_triggerContext = Create_triggerContext;
+
+PlSqlParser.prototype.create_trigger = function() {
+
+ var localctx = new Create_triggerContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 52, PlSqlParser.RULE_create_trigger);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2021;
+ this.match(PlSqlParser.CREATE);
+ this.state = 2024;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.OR) {
+ this.state = 2022;
+ this.match(PlSqlParser.OR);
+ this.state = 2023;
+ this.match(PlSqlParser.REPLACE);
+ }
+
+ this.state = 2026;
+ this.match(PlSqlParser.TRIGGER);
+ this.state = 2027;
+ this.trigger_name();
+ this.state = 2031;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,77,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 2028;
+ this.simple_dml_trigger();
+ break;
+
+ case 2:
+ this.state = 2029;
+ this.compound_dml_trigger();
+ break;
+
+ case 3:
+ this.state = 2030;
+ this.non_dml_trigger();
+ break;
+
+ }
+ this.state = 2034;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,78,this._ctx);
+ if(la_===1) {
+ this.state = 2033;
+ this.trigger_follows_clause();
+
+ }
+ this.state = 2037;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,79,this._ctx);
+ if(la_===1) {
+ this.state = 2036;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.DISABLE || _la===PlSqlParser.ENABLE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+
+ }
+ this.state = 2040;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,80,this._ctx);
+ if(la_===1) {
+ this.state = 2039;
+ this.trigger_when_clause();
+
+ }
+ this.state = 2042;
+ this.trigger_body();
+ this.state = 2043;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Trigger_follows_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_trigger_follows_clause;
+ return this;
+}
+
+Trigger_follows_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Trigger_follows_clauseContext.prototype.constructor = Trigger_follows_clauseContext;
+
+Trigger_follows_clauseContext.prototype.FOLLOWS = function() {
+ return this.getToken(PlSqlParser.FOLLOWS, 0);
+};
+
+Trigger_follows_clauseContext.prototype.trigger_name = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Trigger_nameContext);
+ } else {
+ return this.getTypedRuleContext(Trigger_nameContext,i);
+ }
+};
+
+Trigger_follows_clauseContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Trigger_follows_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterTrigger_follows_clause(this);
+ }
+};
+
+Trigger_follows_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitTrigger_follows_clause(this);
+ }
+};
+
+Trigger_follows_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitTrigger_follows_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Trigger_follows_clauseContext = Trigger_follows_clauseContext;
+
+PlSqlParser.prototype.trigger_follows_clause = function() {
+
+ var localctx = new Trigger_follows_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 54, PlSqlParser.RULE_trigger_follows_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2045;
+ this.match(PlSqlParser.FOLLOWS);
+ this.state = 2046;
+ this.trigger_name();
+ this.state = 2051;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 2047;
+ this.match(PlSqlParser.COMMA);
+ this.state = 2048;
+ this.trigger_name();
+ this.state = 2053;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Trigger_when_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_trigger_when_clause;
+ return this;
+}
+
+Trigger_when_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Trigger_when_clauseContext.prototype.constructor = Trigger_when_clauseContext;
+
+Trigger_when_clauseContext.prototype.WHEN = function() {
+ return this.getToken(PlSqlParser.WHEN, 0);
+};
+
+Trigger_when_clauseContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Trigger_when_clauseContext.prototype.condition = function() {
+ return this.getTypedRuleContext(ConditionContext,0);
+};
+
+Trigger_when_clauseContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Trigger_when_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterTrigger_when_clause(this);
+ }
+};
+
+Trigger_when_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitTrigger_when_clause(this);
+ }
+};
+
+Trigger_when_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitTrigger_when_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Trigger_when_clauseContext = Trigger_when_clauseContext;
+
+PlSqlParser.prototype.trigger_when_clause = function() {
+
+ var localctx = new Trigger_when_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 56, PlSqlParser.RULE_trigger_when_clause);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2054;
+ this.match(PlSqlParser.WHEN);
+ this.state = 2055;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 2056;
+ this.condition();
+ this.state = 2057;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Simple_dml_triggerContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_simple_dml_trigger;
+ return this;
+}
+
+Simple_dml_triggerContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Simple_dml_triggerContext.prototype.constructor = Simple_dml_triggerContext;
+
+Simple_dml_triggerContext.prototype.dml_event_clause = function() {
+ return this.getTypedRuleContext(Dml_event_clauseContext,0);
+};
+
+Simple_dml_triggerContext.prototype.BEFORE = function() {
+ return this.getToken(PlSqlParser.BEFORE, 0);
+};
+
+Simple_dml_triggerContext.prototype.AFTER = function() {
+ return this.getToken(PlSqlParser.AFTER, 0);
+};
+
+Simple_dml_triggerContext.prototype.INSTEAD = function() {
+ return this.getToken(PlSqlParser.INSTEAD, 0);
+};
+
+Simple_dml_triggerContext.prototype.OF = function() {
+ return this.getToken(PlSqlParser.OF, 0);
+};
+
+Simple_dml_triggerContext.prototype.referencing_clause = function() {
+ return this.getTypedRuleContext(Referencing_clauseContext,0);
+};
+
+Simple_dml_triggerContext.prototype.for_each_row = function() {
+ return this.getTypedRuleContext(For_each_rowContext,0);
+};
+
+Simple_dml_triggerContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterSimple_dml_trigger(this);
+ }
+};
+
+Simple_dml_triggerContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitSimple_dml_trigger(this);
+ }
+};
+
+Simple_dml_triggerContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitSimple_dml_trigger(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Simple_dml_triggerContext = Simple_dml_triggerContext;
+
+PlSqlParser.prototype.simple_dml_trigger = function() {
+
+ var localctx = new Simple_dml_triggerContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 58, PlSqlParser.RULE_simple_dml_trigger);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2063;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.BEFORE:
+ this.state = 2059;
+ this.match(PlSqlParser.BEFORE);
+ break;
+ case PlSqlParser.AFTER:
+ this.state = 2060;
+ this.match(PlSqlParser.AFTER);
+ break;
+ case PlSqlParser.INSTEAD:
+ this.state = 2061;
+ this.match(PlSqlParser.INSTEAD);
+ this.state = 2062;
+ this.match(PlSqlParser.OF);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 2065;
+ this.dml_event_clause();
+ this.state = 2067;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,83,this._ctx);
+ if(la_===1) {
+ this.state = 2066;
+ this.referencing_clause();
+
+ }
+ this.state = 2070;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.FOR) {
+ this.state = 2069;
+ this.for_each_row();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function For_each_rowContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_for_each_row;
+ return this;
+}
+
+For_each_rowContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+For_each_rowContext.prototype.constructor = For_each_rowContext;
+
+For_each_rowContext.prototype.FOR = function() {
+ return this.getToken(PlSqlParser.FOR, 0);
+};
+
+For_each_rowContext.prototype.EACH = function() {
+ return this.getToken(PlSqlParser.EACH, 0);
+};
+
+For_each_rowContext.prototype.ROW = function() {
+ return this.getToken(PlSqlParser.ROW, 0);
+};
+
+For_each_rowContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterFor_each_row(this);
+ }
+};
+
+For_each_rowContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitFor_each_row(this);
+ }
+};
+
+For_each_rowContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitFor_each_row(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.For_each_rowContext = For_each_rowContext;
+
+PlSqlParser.prototype.for_each_row = function() {
+
+ var localctx = new For_each_rowContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 60, PlSqlParser.RULE_for_each_row);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2072;
+ this.match(PlSqlParser.FOR);
+ this.state = 2073;
+ this.match(PlSqlParser.EACH);
+ this.state = 2074;
+ this.match(PlSqlParser.ROW);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Compound_dml_triggerContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_compound_dml_trigger;
+ return this;
+}
+
+Compound_dml_triggerContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Compound_dml_triggerContext.prototype.constructor = Compound_dml_triggerContext;
+
+Compound_dml_triggerContext.prototype.FOR = function() {
+ return this.getToken(PlSqlParser.FOR, 0);
+};
+
+Compound_dml_triggerContext.prototype.dml_event_clause = function() {
+ return this.getTypedRuleContext(Dml_event_clauseContext,0);
+};
+
+Compound_dml_triggerContext.prototype.referencing_clause = function() {
+ return this.getTypedRuleContext(Referencing_clauseContext,0);
+};
+
+Compound_dml_triggerContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterCompound_dml_trigger(this);
+ }
+};
+
+Compound_dml_triggerContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitCompound_dml_trigger(this);
+ }
+};
+
+Compound_dml_triggerContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitCompound_dml_trigger(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Compound_dml_triggerContext = Compound_dml_triggerContext;
+
+PlSqlParser.prototype.compound_dml_trigger = function() {
+
+ var localctx = new Compound_dml_triggerContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 62, PlSqlParser.RULE_compound_dml_trigger);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2076;
+ this.match(PlSqlParser.FOR);
+ this.state = 2077;
+ this.dml_event_clause();
+ this.state = 2079;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,85,this._ctx);
+ if(la_===1) {
+ this.state = 2078;
+ this.referencing_clause();
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Non_dml_triggerContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_non_dml_trigger;
+ return this;
+}
+
+Non_dml_triggerContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Non_dml_triggerContext.prototype.constructor = Non_dml_triggerContext;
+
+Non_dml_triggerContext.prototype.non_dml_event = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Non_dml_eventContext);
+ } else {
+ return this.getTypedRuleContext(Non_dml_eventContext,i);
+ }
+};
+
+Non_dml_triggerContext.prototype.ON = function() {
+ return this.getToken(PlSqlParser.ON, 0);
+};
+
+Non_dml_triggerContext.prototype.BEFORE = function() {
+ return this.getToken(PlSqlParser.BEFORE, 0);
+};
+
+Non_dml_triggerContext.prototype.AFTER = function() {
+ return this.getToken(PlSqlParser.AFTER, 0);
+};
+
+Non_dml_triggerContext.prototype.DATABASE = function() {
+ return this.getToken(PlSqlParser.DATABASE, 0);
+};
+
+Non_dml_triggerContext.prototype.SCHEMA = function() {
+ return this.getToken(PlSqlParser.SCHEMA, 0);
+};
+
+Non_dml_triggerContext.prototype.OR = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.OR);
+ } else {
+ return this.getToken(PlSqlParser.OR, i);
+ }
+};
+
+
+Non_dml_triggerContext.prototype.schema_name = function() {
+ return this.getTypedRuleContext(Schema_nameContext,0);
+};
+
+Non_dml_triggerContext.prototype.PERIOD = function() {
+ return this.getToken(PlSqlParser.PERIOD, 0);
+};
+
+Non_dml_triggerContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterNon_dml_trigger(this);
+ }
+};
+
+Non_dml_triggerContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitNon_dml_trigger(this);
+ }
+};
+
+Non_dml_triggerContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitNon_dml_trigger(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Non_dml_triggerContext = Non_dml_triggerContext;
+
+PlSqlParser.prototype.non_dml_trigger = function() {
+
+ var localctx = new Non_dml_triggerContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 64, PlSqlParser.RULE_non_dml_trigger);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2081;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.AFTER || _la===PlSqlParser.BEFORE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 2082;
+ this.non_dml_event();
+ this.state = 2087;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.OR) {
+ this.state = 2083;
+ this.match(PlSqlParser.OR);
+ this.state = 2084;
+ this.non_dml_event();
+ this.state = 2089;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 2090;
+ this.match(PlSqlParser.ON);
+ this.state = 2098;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,88,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 2091;
+ this.match(PlSqlParser.DATABASE);
+ break;
+
+ case 2:
+ this.state = 2095;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,87,this._ctx);
+ if(la_===1) {
+ this.state = 2092;
+ this.schema_name();
+ this.state = 2093;
+ this.match(PlSqlParser.PERIOD);
+
+ }
+ this.state = 2097;
+ this.match(PlSqlParser.SCHEMA);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Trigger_bodyContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_trigger_body;
+ return this;
+}
+
+Trigger_bodyContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Trigger_bodyContext.prototype.constructor = Trigger_bodyContext;
+
+Trigger_bodyContext.prototype.COMPOUND = function() {
+ return this.getToken(PlSqlParser.COMPOUND, 0);
+};
+
+Trigger_bodyContext.prototype.TRIGGER = function() {
+ return this.getToken(PlSqlParser.TRIGGER, 0);
+};
+
+Trigger_bodyContext.prototype.CALL = function() {
+ return this.getToken(PlSqlParser.CALL, 0);
+};
+
+Trigger_bodyContext.prototype.identifier = function() {
+ return this.getTypedRuleContext(IdentifierContext,0);
+};
+
+Trigger_bodyContext.prototype.trigger_block = function() {
+ return this.getTypedRuleContext(Trigger_blockContext,0);
+};
+
+Trigger_bodyContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterTrigger_body(this);
+ }
+};
+
+Trigger_bodyContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitTrigger_body(this);
+ }
+};
+
+Trigger_bodyContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitTrigger_body(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Trigger_bodyContext = Trigger_bodyContext;
+
+PlSqlParser.prototype.trigger_body = function() {
+
+ var localctx = new Trigger_bodyContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 66, PlSqlParser.RULE_trigger_body);
+ try {
+ this.state = 2105;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,89,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2100;
+ this.match(PlSqlParser.COMPOUND);
+ this.state = 2101;
+ this.match(PlSqlParser.TRIGGER);
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 2102;
+ this.match(PlSqlParser.CALL);
+ this.state = 2103;
+ this.identifier();
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 2104;
+ this.trigger_block();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Routine_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_routine_clause;
+ return this;
+}
+
+Routine_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Routine_clauseContext.prototype.constructor = Routine_clauseContext;
+
+Routine_clauseContext.prototype.routine_name = function() {
+ return this.getTypedRuleContext(Routine_nameContext,0);
+};
+
+Routine_clauseContext.prototype.function_argument = function() {
+ return this.getTypedRuleContext(Function_argumentContext,0);
+};
+
+Routine_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterRoutine_clause(this);
+ }
+};
+
+Routine_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitRoutine_clause(this);
+ }
+};
+
+Routine_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitRoutine_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Routine_clauseContext = Routine_clauseContext;
+
+PlSqlParser.prototype.routine_clause = function() {
+
+ var localctx = new Routine_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 68, PlSqlParser.RULE_routine_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2107;
+ this.routine_name();
+ this.state = 2109;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.LEFT_PAREN) {
+ this.state = 2108;
+ this.function_argument();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Compound_trigger_blockContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_compound_trigger_block;
+ return this;
+}
+
+Compound_trigger_blockContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Compound_trigger_blockContext.prototype.constructor = Compound_trigger_blockContext;
+
+Compound_trigger_blockContext.prototype.COMPOUND = function() {
+ return this.getToken(PlSqlParser.COMPOUND, 0);
+};
+
+Compound_trigger_blockContext.prototype.TRIGGER = function() {
+ return this.getToken(PlSqlParser.TRIGGER, 0);
+};
+
+Compound_trigger_blockContext.prototype.END = function() {
+ return this.getToken(PlSqlParser.END, 0);
+};
+
+Compound_trigger_blockContext.prototype.trigger_name = function() {
+ return this.getTypedRuleContext(Trigger_nameContext,0);
+};
+
+Compound_trigger_blockContext.prototype.seq_of_declare_specs = function() {
+ return this.getTypedRuleContext(Seq_of_declare_specsContext,0);
+};
+
+Compound_trigger_blockContext.prototype.timing_point_section = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Timing_point_sectionContext);
+ } else {
+ return this.getTypedRuleContext(Timing_point_sectionContext,i);
+ }
+};
+
+Compound_trigger_blockContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterCompound_trigger_block(this);
+ }
+};
+
+Compound_trigger_blockContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitCompound_trigger_block(this);
+ }
+};
+
+Compound_trigger_blockContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitCompound_trigger_block(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Compound_trigger_blockContext = Compound_trigger_blockContext;
+
+PlSqlParser.prototype.compound_trigger_block = function() {
+
+ var localctx = new Compound_trigger_blockContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 70, PlSqlParser.RULE_compound_trigger_block);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2111;
+ this.match(PlSqlParser.COMPOUND);
+ this.state = 2112;
+ this.match(PlSqlParser.TRIGGER);
+ this.state = 2114;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,91,this._ctx);
+ if(la_===1) {
+ this.state = 2113;
+ this.seq_of_declare_specs();
+
+ }
+ this.state = 2117;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 2116;
+ this.timing_point_section();
+ this.state = 2119;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(_la===PlSqlParser.AFTER || _la===PlSqlParser.BEFORE);
+ this.state = 2121;
+ this.match(PlSqlParser.END);
+ this.state = 2122;
+ this.trigger_name();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Timing_point_sectionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_timing_point_section;
+ this.bk = null; // Token
+ this.ak = null; // Token
+ return this;
+}
+
+Timing_point_sectionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Timing_point_sectionContext.prototype.constructor = Timing_point_sectionContext;
+
+Timing_point_sectionContext.prototype.STATEMENT = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.STATEMENT);
+ } else {
+ return this.getToken(PlSqlParser.STATEMENT, i);
+ }
+};
+
+
+Timing_point_sectionContext.prototype.IS = function() {
+ return this.getToken(PlSqlParser.IS, 0);
+};
+
+Timing_point_sectionContext.prototype.trigger_block = function() {
+ return this.getTypedRuleContext(Trigger_blockContext,0);
+};
+
+Timing_point_sectionContext.prototype.BEFORE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.BEFORE);
+ } else {
+ return this.getToken(PlSqlParser.BEFORE, i);
+ }
+};
+
+
+Timing_point_sectionContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Timing_point_sectionContext.prototype.EACH = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.EACH);
+ } else {
+ return this.getToken(PlSqlParser.EACH, i);
+ }
+};
+
+
+Timing_point_sectionContext.prototype.ROW = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.ROW);
+ } else {
+ return this.getToken(PlSqlParser.ROW, i);
+ }
+};
+
+
+Timing_point_sectionContext.prototype.AFTER = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.AFTER);
+ } else {
+ return this.getToken(PlSqlParser.AFTER, i);
+ }
+};
+
+
+Timing_point_sectionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterTiming_point_section(this);
+ }
+};
+
+Timing_point_sectionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitTiming_point_section(this);
+ }
+};
+
+Timing_point_sectionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitTiming_point_section(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Timing_point_sectionContext = Timing_point_sectionContext;
+
+PlSqlParser.prototype.timing_point_section = function() {
+
+ var localctx = new Timing_point_sectionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 72, PlSqlParser.RULE_timing_point_section);
+ try {
+ this.state = 2160;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,93,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2124;
+ localctx.bk = this.match(PlSqlParser.BEFORE);
+ this.state = 2125;
+ this.match(PlSqlParser.STATEMENT);
+ this.state = 2126;
+ this.match(PlSqlParser.IS);
+ this.state = 2127;
+ this.trigger_block();
+ this.state = 2128;
+ this.match(PlSqlParser.BEFORE);
+ this.state = 2129;
+ this.match(PlSqlParser.STATEMENT);
+ this.state = 2130;
+ this.match(PlSqlParser.SEMICOLON);
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 2132;
+ localctx.bk = this.match(PlSqlParser.BEFORE);
+ this.state = 2133;
+ this.match(PlSqlParser.EACH);
+ this.state = 2134;
+ this.match(PlSqlParser.ROW);
+ this.state = 2135;
+ this.match(PlSqlParser.IS);
+ this.state = 2136;
+ this.trigger_block();
+ this.state = 2137;
+ this.match(PlSqlParser.BEFORE);
+ this.state = 2138;
+ this.match(PlSqlParser.EACH);
+ this.state = 2139;
+ this.match(PlSqlParser.ROW);
+ this.state = 2140;
+ this.match(PlSqlParser.SEMICOLON);
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 2142;
+ localctx.ak = this.match(PlSqlParser.AFTER);
+ this.state = 2143;
+ this.match(PlSqlParser.STATEMENT);
+ this.state = 2144;
+ this.match(PlSqlParser.IS);
+ this.state = 2145;
+ this.trigger_block();
+ this.state = 2146;
+ this.match(PlSqlParser.AFTER);
+ this.state = 2147;
+ this.match(PlSqlParser.STATEMENT);
+ this.state = 2148;
+ this.match(PlSqlParser.SEMICOLON);
+ break;
+
+ case 4:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 2150;
+ localctx.ak = this.match(PlSqlParser.AFTER);
+ this.state = 2151;
+ this.match(PlSqlParser.EACH);
+ this.state = 2152;
+ this.match(PlSqlParser.ROW);
+ this.state = 2153;
+ this.match(PlSqlParser.IS);
+ this.state = 2154;
+ this.trigger_block();
+ this.state = 2155;
+ this.match(PlSqlParser.AFTER);
+ this.state = 2156;
+ this.match(PlSqlParser.EACH);
+ this.state = 2157;
+ this.match(PlSqlParser.ROW);
+ this.state = 2158;
+ this.match(PlSqlParser.SEMICOLON);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Non_dml_eventContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_non_dml_event;
+ return this;
+}
+
+Non_dml_eventContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Non_dml_eventContext.prototype.constructor = Non_dml_eventContext;
+
+Non_dml_eventContext.prototype.ALTER = function() {
+ return this.getToken(PlSqlParser.ALTER, 0);
+};
+
+Non_dml_eventContext.prototype.ANALYZE = function() {
+ return this.getToken(PlSqlParser.ANALYZE, 0);
+};
+
+Non_dml_eventContext.prototype.ASSOCIATE = function() {
+ return this.getToken(PlSqlParser.ASSOCIATE, 0);
+};
+
+Non_dml_eventContext.prototype.STATISTICS = function() {
+ return this.getToken(PlSqlParser.STATISTICS, 0);
+};
+
+Non_dml_eventContext.prototype.AUDIT = function() {
+ return this.getToken(PlSqlParser.AUDIT, 0);
+};
+
+Non_dml_eventContext.prototype.COMMENT = function() {
+ return this.getToken(PlSqlParser.COMMENT, 0);
+};
+
+Non_dml_eventContext.prototype.CREATE = function() {
+ return this.getToken(PlSqlParser.CREATE, 0);
+};
+
+Non_dml_eventContext.prototype.DISASSOCIATE = function() {
+ return this.getToken(PlSqlParser.DISASSOCIATE, 0);
+};
+
+Non_dml_eventContext.prototype.DROP = function() {
+ return this.getToken(PlSqlParser.DROP, 0);
+};
+
+Non_dml_eventContext.prototype.GRANT = function() {
+ return this.getToken(PlSqlParser.GRANT, 0);
+};
+
+Non_dml_eventContext.prototype.NOAUDIT = function() {
+ return this.getToken(PlSqlParser.NOAUDIT, 0);
+};
+
+Non_dml_eventContext.prototype.RENAME = function() {
+ return this.getToken(PlSqlParser.RENAME, 0);
+};
+
+Non_dml_eventContext.prototype.REVOKE = function() {
+ return this.getToken(PlSqlParser.REVOKE, 0);
+};
+
+Non_dml_eventContext.prototype.TRUNCATE = function() {
+ return this.getToken(PlSqlParser.TRUNCATE, 0);
+};
+
+Non_dml_eventContext.prototype.DDL = function() {
+ return this.getToken(PlSqlParser.DDL, 0);
+};
+
+Non_dml_eventContext.prototype.STARTUP = function() {
+ return this.getToken(PlSqlParser.STARTUP, 0);
+};
+
+Non_dml_eventContext.prototype.SHUTDOWN = function() {
+ return this.getToken(PlSqlParser.SHUTDOWN, 0);
+};
+
+Non_dml_eventContext.prototype.DB_ROLE_CHANGE = function() {
+ return this.getToken(PlSqlParser.DB_ROLE_CHANGE, 0);
+};
+
+Non_dml_eventContext.prototype.LOGON = function() {
+ return this.getToken(PlSqlParser.LOGON, 0);
+};
+
+Non_dml_eventContext.prototype.LOGOFF = function() {
+ return this.getToken(PlSqlParser.LOGOFF, 0);
+};
+
+Non_dml_eventContext.prototype.SERVERERROR = function() {
+ return this.getToken(PlSqlParser.SERVERERROR, 0);
+};
+
+Non_dml_eventContext.prototype.SUSPEND = function() {
+ return this.getToken(PlSqlParser.SUSPEND, 0);
+};
+
+Non_dml_eventContext.prototype.DATABASE = function() {
+ return this.getToken(PlSqlParser.DATABASE, 0);
+};
+
+Non_dml_eventContext.prototype.SCHEMA = function() {
+ return this.getToken(PlSqlParser.SCHEMA, 0);
+};
+
+Non_dml_eventContext.prototype.FOLLOWS = function() {
+ return this.getToken(PlSqlParser.FOLLOWS, 0);
+};
+
+Non_dml_eventContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterNon_dml_event(this);
+ }
+};
+
+Non_dml_eventContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitNon_dml_event(this);
+ }
+};
+
+Non_dml_eventContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitNon_dml_event(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Non_dml_eventContext = Non_dml_eventContext;
+
+PlSqlParser.prototype.non_dml_event = function() {
+
+ var localctx = new Non_dml_eventContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 74, PlSqlParser.RULE_non_dml_event);
+ try {
+ this.state = 2188;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.ALTER:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2162;
+ this.match(PlSqlParser.ALTER);
+ break;
+ case PlSqlParser.ANALYZE:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 2163;
+ this.match(PlSqlParser.ANALYZE);
+ break;
+ case PlSqlParser.ASSOCIATE:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 2164;
+ this.match(PlSqlParser.ASSOCIATE);
+ this.state = 2165;
+ this.match(PlSqlParser.STATISTICS);
+ break;
+ case PlSqlParser.AUDIT:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 2166;
+ this.match(PlSqlParser.AUDIT);
+ break;
+ case PlSqlParser.COMMENT:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 2167;
+ this.match(PlSqlParser.COMMENT);
+ break;
+ case PlSqlParser.CREATE:
+ this.enterOuterAlt(localctx, 6);
+ this.state = 2168;
+ this.match(PlSqlParser.CREATE);
+ break;
+ case PlSqlParser.DISASSOCIATE:
+ this.enterOuterAlt(localctx, 7);
+ this.state = 2169;
+ this.match(PlSqlParser.DISASSOCIATE);
+ this.state = 2170;
+ this.match(PlSqlParser.STATISTICS);
+ break;
+ case PlSqlParser.DROP:
+ this.enterOuterAlt(localctx, 8);
+ this.state = 2171;
+ this.match(PlSqlParser.DROP);
+ break;
+ case PlSqlParser.GRANT:
+ this.enterOuterAlt(localctx, 9);
+ this.state = 2172;
+ this.match(PlSqlParser.GRANT);
+ break;
+ case PlSqlParser.NOAUDIT:
+ this.enterOuterAlt(localctx, 10);
+ this.state = 2173;
+ this.match(PlSqlParser.NOAUDIT);
+ break;
+ case PlSqlParser.RENAME:
+ this.enterOuterAlt(localctx, 11);
+ this.state = 2174;
+ this.match(PlSqlParser.RENAME);
+ break;
+ case PlSqlParser.REVOKE:
+ this.enterOuterAlt(localctx, 12);
+ this.state = 2175;
+ this.match(PlSqlParser.REVOKE);
+ break;
+ case PlSqlParser.TRUNCATE:
+ this.enterOuterAlt(localctx, 13);
+ this.state = 2176;
+ this.match(PlSqlParser.TRUNCATE);
+ break;
+ case PlSqlParser.DDL:
+ this.enterOuterAlt(localctx, 14);
+ this.state = 2177;
+ this.match(PlSqlParser.DDL);
+ break;
+ case PlSqlParser.STARTUP:
+ this.enterOuterAlt(localctx, 15);
+ this.state = 2178;
+ this.match(PlSqlParser.STARTUP);
+ break;
+ case PlSqlParser.SHUTDOWN:
+ this.enterOuterAlt(localctx, 16);
+ this.state = 2179;
+ this.match(PlSqlParser.SHUTDOWN);
+ break;
+ case PlSqlParser.DB_ROLE_CHANGE:
+ this.enterOuterAlt(localctx, 17);
+ this.state = 2180;
+ this.match(PlSqlParser.DB_ROLE_CHANGE);
+ break;
+ case PlSqlParser.LOGON:
+ this.enterOuterAlt(localctx, 18);
+ this.state = 2181;
+ this.match(PlSqlParser.LOGON);
+ break;
+ case PlSqlParser.LOGOFF:
+ this.enterOuterAlt(localctx, 19);
+ this.state = 2182;
+ this.match(PlSqlParser.LOGOFF);
+ break;
+ case PlSqlParser.SERVERERROR:
+ this.enterOuterAlt(localctx, 20);
+ this.state = 2183;
+ this.match(PlSqlParser.SERVERERROR);
+ break;
+ case PlSqlParser.SUSPEND:
+ this.enterOuterAlt(localctx, 21);
+ this.state = 2184;
+ this.match(PlSqlParser.SUSPEND);
+ break;
+ case PlSqlParser.DATABASE:
+ this.enterOuterAlt(localctx, 22);
+ this.state = 2185;
+ this.match(PlSqlParser.DATABASE);
+ break;
+ case PlSqlParser.SCHEMA:
+ this.enterOuterAlt(localctx, 23);
+ this.state = 2186;
+ this.match(PlSqlParser.SCHEMA);
+ break;
+ case PlSqlParser.FOLLOWS:
+ this.enterOuterAlt(localctx, 24);
+ this.state = 2187;
+ this.match(PlSqlParser.FOLLOWS);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Dml_event_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_dml_event_clause;
+ return this;
+}
+
+Dml_event_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Dml_event_clauseContext.prototype.constructor = Dml_event_clauseContext;
+
+Dml_event_clauseContext.prototype.dml_event_element = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Dml_event_elementContext);
+ } else {
+ return this.getTypedRuleContext(Dml_event_elementContext,i);
+ }
+};
+
+Dml_event_clauseContext.prototype.ON = function() {
+ return this.getToken(PlSqlParser.ON, 0);
+};
+
+Dml_event_clauseContext.prototype.tableview_name = function() {
+ return this.getTypedRuleContext(Tableview_nameContext,0);
+};
+
+Dml_event_clauseContext.prototype.OR = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.OR);
+ } else {
+ return this.getToken(PlSqlParser.OR, i);
+ }
+};
+
+
+Dml_event_clauseContext.prototype.dml_event_nested_clause = function() {
+ return this.getTypedRuleContext(Dml_event_nested_clauseContext,0);
+};
+
+Dml_event_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterDml_event_clause(this);
+ }
+};
+
+Dml_event_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitDml_event_clause(this);
+ }
+};
+
+Dml_event_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitDml_event_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Dml_event_clauseContext = Dml_event_clauseContext;
+
+PlSqlParser.prototype.dml_event_clause = function() {
+
+ var localctx = new Dml_event_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 76, PlSqlParser.RULE_dml_event_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2190;
+ this.dml_event_element();
+ this.state = 2195;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.OR) {
+ this.state = 2191;
+ this.match(PlSqlParser.OR);
+ this.state = 2192;
+ this.dml_event_element();
+ this.state = 2197;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 2198;
+ this.match(PlSqlParser.ON);
+ this.state = 2200;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,96,this._ctx);
+ if(la_===1) {
+ this.state = 2199;
+ this.dml_event_nested_clause();
+
+ }
+ this.state = 2202;
+ this.tableview_name();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Dml_event_elementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_dml_event_element;
+ return this;
+}
+
+Dml_event_elementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Dml_event_elementContext.prototype.constructor = Dml_event_elementContext;
+
+Dml_event_elementContext.prototype.DELETE = function() {
+ return this.getToken(PlSqlParser.DELETE, 0);
+};
+
+Dml_event_elementContext.prototype.INSERT = function() {
+ return this.getToken(PlSqlParser.INSERT, 0);
+};
+
+Dml_event_elementContext.prototype.UPDATE = function() {
+ return this.getToken(PlSqlParser.UPDATE, 0);
+};
+
+Dml_event_elementContext.prototype.OF = function() {
+ return this.getToken(PlSqlParser.OF, 0);
+};
+
+Dml_event_elementContext.prototype.column_list = function() {
+ return this.getTypedRuleContext(Column_listContext,0);
+};
+
+Dml_event_elementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterDml_event_element(this);
+ }
+};
+
+Dml_event_elementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitDml_event_element(this);
+ }
+};
+
+Dml_event_elementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitDml_event_element(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Dml_event_elementContext = Dml_event_elementContext;
+
+PlSqlParser.prototype.dml_event_element = function() {
+
+ var localctx = new Dml_event_elementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 78, PlSqlParser.RULE_dml_event_element);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2204;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.DELETE || _la===PlSqlParser.INSERT || _la===PlSqlParser.UPDATE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 2207;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.OF) {
+ this.state = 2205;
+ this.match(PlSqlParser.OF);
+ this.state = 2206;
+ this.column_list();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Dml_event_nested_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_dml_event_nested_clause;
+ return this;
+}
+
+Dml_event_nested_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Dml_event_nested_clauseContext.prototype.constructor = Dml_event_nested_clauseContext;
+
+Dml_event_nested_clauseContext.prototype.NESTED = function() {
+ return this.getToken(PlSqlParser.NESTED, 0);
+};
+
+Dml_event_nested_clauseContext.prototype.TABLE = function() {
+ return this.getToken(PlSqlParser.TABLE, 0);
+};
+
+Dml_event_nested_clauseContext.prototype.tableview_name = function() {
+ return this.getTypedRuleContext(Tableview_nameContext,0);
+};
+
+Dml_event_nested_clauseContext.prototype.OF = function() {
+ return this.getToken(PlSqlParser.OF, 0);
+};
+
+Dml_event_nested_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterDml_event_nested_clause(this);
+ }
+};
+
+Dml_event_nested_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitDml_event_nested_clause(this);
+ }
+};
+
+Dml_event_nested_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitDml_event_nested_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Dml_event_nested_clauseContext = Dml_event_nested_clauseContext;
+
+PlSqlParser.prototype.dml_event_nested_clause = function() {
+
+ var localctx = new Dml_event_nested_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 80, PlSqlParser.RULE_dml_event_nested_clause);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2209;
+ this.match(PlSqlParser.NESTED);
+ this.state = 2210;
+ this.match(PlSqlParser.TABLE);
+ this.state = 2211;
+ this.tableview_name();
+ this.state = 2212;
+ this.match(PlSqlParser.OF);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Referencing_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_referencing_clause;
+ return this;
+}
+
+Referencing_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Referencing_clauseContext.prototype.constructor = Referencing_clauseContext;
+
+Referencing_clauseContext.prototype.REFERENCING = function() {
+ return this.getToken(PlSqlParser.REFERENCING, 0);
+};
+
+Referencing_clauseContext.prototype.referencing_element = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Referencing_elementContext);
+ } else {
+ return this.getTypedRuleContext(Referencing_elementContext,i);
+ }
+};
+
+Referencing_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterReferencing_clause(this);
+ }
+};
+
+Referencing_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitReferencing_clause(this);
+ }
+};
+
+Referencing_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitReferencing_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Referencing_clauseContext = Referencing_clauseContext;
+
+PlSqlParser.prototype.referencing_clause = function() {
+
+ var localctx = new Referencing_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 82, PlSqlParser.RULE_referencing_clause);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2214;
+ this.match(PlSqlParser.REFERENCING);
+ this.state = 2216;
+ this._errHandler.sync(this);
+ var _alt = 1;
+ do {
+ switch (_alt) {
+ case 1:
+ this.state = 2215;
+ this.referencing_element();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 2218;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,98, this._ctx);
+ } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Referencing_elementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_referencing_element;
+ return this;
+}
+
+Referencing_elementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Referencing_elementContext.prototype.constructor = Referencing_elementContext;
+
+Referencing_elementContext.prototype.column_alias = function() {
+ return this.getTypedRuleContext(Column_aliasContext,0);
+};
+
+Referencing_elementContext.prototype.NEW = function() {
+ return this.getToken(PlSqlParser.NEW, 0);
+};
+
+Referencing_elementContext.prototype.OLD = function() {
+ return this.getToken(PlSqlParser.OLD, 0);
+};
+
+Referencing_elementContext.prototype.PARENT = function() {
+ return this.getToken(PlSqlParser.PARENT, 0);
+};
+
+Referencing_elementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterReferencing_element(this);
+ }
+};
+
+Referencing_elementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitReferencing_element(this);
+ }
+};
+
+Referencing_elementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitReferencing_element(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Referencing_elementContext = Referencing_elementContext;
+
+PlSqlParser.prototype.referencing_element = function() {
+
+ var localctx = new Referencing_elementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 84, PlSqlParser.RULE_referencing_element);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2220;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.NEW || _la===PlSqlParser.OLD || _la===PlSqlParser.PARENT)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 2221;
+ this.column_alias();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Drop_typeContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_drop_type;
+ return this;
+}
+
+Drop_typeContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Drop_typeContext.prototype.constructor = Drop_typeContext;
+
+Drop_typeContext.prototype.DROP = function() {
+ return this.getToken(PlSqlParser.DROP, 0);
+};
+
+Drop_typeContext.prototype.TYPE = function() {
+ return this.getToken(PlSqlParser.TYPE, 0);
+};
+
+Drop_typeContext.prototype.type_name = function() {
+ return this.getTypedRuleContext(Type_nameContext,0);
+};
+
+Drop_typeContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Drop_typeContext.prototype.BODY = function() {
+ return this.getToken(PlSqlParser.BODY, 0);
+};
+
+Drop_typeContext.prototype.FORCE = function() {
+ return this.getToken(PlSqlParser.FORCE, 0);
+};
+
+Drop_typeContext.prototype.VALIDATE = function() {
+ return this.getToken(PlSqlParser.VALIDATE, 0);
+};
+
+Drop_typeContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterDrop_type(this);
+ }
+};
+
+Drop_typeContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitDrop_type(this);
+ }
+};
+
+Drop_typeContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitDrop_type(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Drop_typeContext = Drop_typeContext;
+
+PlSqlParser.prototype.drop_type = function() {
+
+ var localctx = new Drop_typeContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 86, PlSqlParser.RULE_drop_type);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2223;
+ this.match(PlSqlParser.DROP);
+ this.state = 2224;
+ this.match(PlSqlParser.TYPE);
+ this.state = 2226;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,99,this._ctx);
+ if(la_===1) {
+ this.state = 2225;
+ this.match(PlSqlParser.BODY);
+
+ }
+ this.state = 2228;
+ this.type_name();
+ this.state = 2230;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.FORCE || _la===PlSqlParser.VALIDATE) {
+ this.state = 2229;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.FORCE || _la===PlSqlParser.VALIDATE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 2232;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Alter_typeContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_alter_type;
+ return this;
+}
+
+Alter_typeContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Alter_typeContext.prototype.constructor = Alter_typeContext;
+
+Alter_typeContext.prototype.ALTER = function() {
+ return this.getToken(PlSqlParser.ALTER, 0);
+};
+
+Alter_typeContext.prototype.TYPE = function() {
+ return this.getToken(PlSqlParser.TYPE, 0);
+};
+
+Alter_typeContext.prototype.type_name = function() {
+ return this.getTypedRuleContext(Type_nameContext,0);
+};
+
+Alter_typeContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Alter_typeContext.prototype.compile_type_clause = function() {
+ return this.getTypedRuleContext(Compile_type_clauseContext,0);
+};
+
+Alter_typeContext.prototype.replace_type_clause = function() {
+ return this.getTypedRuleContext(Replace_type_clauseContext,0);
+};
+
+Alter_typeContext.prototype.alter_method_spec = function() {
+ return this.getTypedRuleContext(Alter_method_specContext,0);
+};
+
+Alter_typeContext.prototype.alter_collection_clauses = function() {
+ return this.getTypedRuleContext(Alter_collection_clausesContext,0);
+};
+
+Alter_typeContext.prototype.modifier_clause = function() {
+ return this.getTypedRuleContext(Modifier_clauseContext,0);
+};
+
+Alter_typeContext.prototype.overriding_subprogram_spec = function() {
+ return this.getTypedRuleContext(Overriding_subprogram_specContext,0);
+};
+
+Alter_typeContext.prototype.dependent_handling_clause = function() {
+ return this.getTypedRuleContext(Dependent_handling_clauseContext,0);
+};
+
+Alter_typeContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAlter_type(this);
+ }
+};
+
+Alter_typeContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAlter_type(this);
+ }
+};
+
+Alter_typeContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAlter_type(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Alter_typeContext = Alter_typeContext;
+
+PlSqlParser.prototype.alter_type = function() {
+
+ var localctx = new Alter_typeContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 88, PlSqlParser.RULE_alter_type);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2234;
+ this.match(PlSqlParser.ALTER);
+ this.state = 2235;
+ this.match(PlSqlParser.TYPE);
+ this.state = 2236;
+ this.type_name();
+ this.state = 2243;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,101,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 2237;
+ this.compile_type_clause();
+ break;
+
+ case 2:
+ this.state = 2238;
+ this.replace_type_clause();
+ break;
+
+ case 3:
+ this.state = 2239;
+ this.alter_method_spec();
+ break;
+
+ case 4:
+ this.state = 2240;
+ this.alter_collection_clauses();
+ break;
+
+ case 5:
+ this.state = 2241;
+ this.modifier_clause();
+ break;
+
+ case 6:
+ this.state = 2242;
+ this.overriding_subprogram_spec();
+ break;
+
+ }
+ this.state = 2246;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.CASCADE || _la===PlSqlParser.INVALIDATE) {
+ this.state = 2245;
+ this.dependent_handling_clause();
+ }
+
+ this.state = 2248;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Compile_type_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_compile_type_clause;
+ return this;
+}
+
+Compile_type_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Compile_type_clauseContext.prototype.constructor = Compile_type_clauseContext;
+
+Compile_type_clauseContext.prototype.COMPILE = function() {
+ return this.getToken(PlSqlParser.COMPILE, 0);
+};
+
+Compile_type_clauseContext.prototype.DEBUG = function() {
+ return this.getToken(PlSqlParser.DEBUG, 0);
+};
+
+Compile_type_clauseContext.prototype.compiler_parameters_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Compiler_parameters_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Compiler_parameters_clauseContext,i);
+ }
+};
+
+Compile_type_clauseContext.prototype.REUSE = function() {
+ return this.getToken(PlSqlParser.REUSE, 0);
+};
+
+Compile_type_clauseContext.prototype.SETTINGS = function() {
+ return this.getToken(PlSqlParser.SETTINGS, 0);
+};
+
+Compile_type_clauseContext.prototype.SPECIFICATION = function() {
+ return this.getToken(PlSqlParser.SPECIFICATION, 0);
+};
+
+Compile_type_clauseContext.prototype.BODY = function() {
+ return this.getToken(PlSqlParser.BODY, 0);
+};
+
+Compile_type_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterCompile_type_clause(this);
+ }
+};
+
+Compile_type_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitCompile_type_clause(this);
+ }
+};
+
+Compile_type_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitCompile_type_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Compile_type_clauseContext = Compile_type_clauseContext;
+
+PlSqlParser.prototype.compile_type_clause = function() {
+
+ var localctx = new Compile_type_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 90, PlSqlParser.RULE_compile_type_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2250;
+ this.match(PlSqlParser.COMPILE);
+ this.state = 2252;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,103,this._ctx);
+ if(la_===1) {
+ this.state = 2251;
+ this.match(PlSqlParser.DEBUG);
+
+ }
+ this.state = 2255;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,104,this._ctx);
+ if(la_===1) {
+ this.state = 2254;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.BODY || _la===PlSqlParser.SPECIFICATION)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+
+ }
+ this.state = 2260;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,105,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 2257;
+ this.compiler_parameters_clause();
+ }
+ this.state = 2262;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,105,this._ctx);
+ }
+
+ this.state = 2265;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.REUSE) {
+ this.state = 2263;
+ this.match(PlSqlParser.REUSE);
+ this.state = 2264;
+ this.match(PlSqlParser.SETTINGS);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Replace_type_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_replace_type_clause;
+ return this;
+}
+
+Replace_type_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Replace_type_clauseContext.prototype.constructor = Replace_type_clauseContext;
+
+Replace_type_clauseContext.prototype.REPLACE = function() {
+ return this.getToken(PlSqlParser.REPLACE, 0);
+};
+
+Replace_type_clauseContext.prototype.AS = function() {
+ return this.getToken(PlSqlParser.AS, 0);
+};
+
+Replace_type_clauseContext.prototype.OBJECT = function() {
+ return this.getToken(PlSqlParser.OBJECT, 0);
+};
+
+Replace_type_clauseContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Replace_type_clauseContext.prototype.object_member_spec = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Object_member_specContext);
+ } else {
+ return this.getTypedRuleContext(Object_member_specContext,i);
+ }
+};
+
+Replace_type_clauseContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Replace_type_clauseContext.prototype.invoker_rights_clause = function() {
+ return this.getTypedRuleContext(Invoker_rights_clauseContext,0);
+};
+
+Replace_type_clauseContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Replace_type_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterReplace_type_clause(this);
+ }
+};
+
+Replace_type_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitReplace_type_clause(this);
+ }
+};
+
+Replace_type_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitReplace_type_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Replace_type_clauseContext = Replace_type_clauseContext;
+
+PlSqlParser.prototype.replace_type_clause = function() {
+
+ var localctx = new Replace_type_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 92, PlSqlParser.RULE_replace_type_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2267;
+ this.match(PlSqlParser.REPLACE);
+ this.state = 2269;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.AUTHID) {
+ this.state = 2268;
+ this.invoker_rights_clause();
+ }
+
+ this.state = 2271;
+ this.match(PlSqlParser.AS);
+ this.state = 2272;
+ this.match(PlSqlParser.OBJECT);
+ this.state = 2273;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 2274;
+ this.object_member_spec();
+ this.state = 2279;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 2275;
+ this.match(PlSqlParser.COMMA);
+ this.state = 2276;
+ this.object_member_spec();
+ this.state = 2281;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 2282;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Alter_method_specContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_alter_method_spec;
+ return this;
+}
+
+Alter_method_specContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Alter_method_specContext.prototype.constructor = Alter_method_specContext;
+
+Alter_method_specContext.prototype.alter_method_element = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Alter_method_elementContext);
+ } else {
+ return this.getTypedRuleContext(Alter_method_elementContext,i);
+ }
+};
+
+Alter_method_specContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Alter_method_specContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAlter_method_spec(this);
+ }
+};
+
+Alter_method_specContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAlter_method_spec(this);
+ }
+};
+
+Alter_method_specContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAlter_method_spec(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Alter_method_specContext = Alter_method_specContext;
+
+PlSqlParser.prototype.alter_method_spec = function() {
+
+ var localctx = new Alter_method_specContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 94, PlSqlParser.RULE_alter_method_spec);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2284;
+ this.alter_method_element();
+ this.state = 2289;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 2285;
+ this.match(PlSqlParser.COMMA);
+ this.state = 2286;
+ this.alter_method_element();
+ this.state = 2291;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Alter_method_elementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_alter_method_element;
+ return this;
+}
+
+Alter_method_elementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Alter_method_elementContext.prototype.constructor = Alter_method_elementContext;
+
+Alter_method_elementContext.prototype.ADD = function() {
+ return this.getToken(PlSqlParser.ADD, 0);
+};
+
+Alter_method_elementContext.prototype.DROP = function() {
+ return this.getToken(PlSqlParser.DROP, 0);
+};
+
+Alter_method_elementContext.prototype.map_order_function_spec = function() {
+ return this.getTypedRuleContext(Map_order_function_specContext,0);
+};
+
+Alter_method_elementContext.prototype.subprogram_spec = function() {
+ return this.getTypedRuleContext(Subprogram_specContext,0);
+};
+
+Alter_method_elementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAlter_method_element(this);
+ }
+};
+
+Alter_method_elementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAlter_method_element(this);
+ }
+};
+
+Alter_method_elementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAlter_method_element(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Alter_method_elementContext = Alter_method_elementContext;
+
+PlSqlParser.prototype.alter_method_element = function() {
+
+ var localctx = new Alter_method_elementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 96, PlSqlParser.RULE_alter_method_element);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2292;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.ADD || _la===PlSqlParser.DROP)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 2295;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.MAP:
+ case PlSqlParser.ORDER:
+ this.state = 2293;
+ this.map_order_function_spec();
+ break;
+ case PlSqlParser.MEMBER:
+ case PlSqlParser.STATIC:
+ this.state = 2294;
+ this.subprogram_spec();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Alter_attribute_definitionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_alter_attribute_definition;
+ return this;
+}
+
+Alter_attribute_definitionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Alter_attribute_definitionContext.prototype.constructor = Alter_attribute_definitionContext;
+
+Alter_attribute_definitionContext.prototype.ATTRIBUTE = function() {
+ return this.getToken(PlSqlParser.ATTRIBUTE, 0);
+};
+
+Alter_attribute_definitionContext.prototype.ADD = function() {
+ return this.getToken(PlSqlParser.ADD, 0);
+};
+
+Alter_attribute_definitionContext.prototype.MODIFY = function() {
+ return this.getToken(PlSqlParser.MODIFY, 0);
+};
+
+Alter_attribute_definitionContext.prototype.DROP = function() {
+ return this.getToken(PlSqlParser.DROP, 0);
+};
+
+Alter_attribute_definitionContext.prototype.attribute_definition = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Attribute_definitionContext);
+ } else {
+ return this.getTypedRuleContext(Attribute_definitionContext,i);
+ }
+};
+
+Alter_attribute_definitionContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Alter_attribute_definitionContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Alter_attribute_definitionContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Alter_attribute_definitionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAlter_attribute_definition(this);
+ }
+};
+
+Alter_attribute_definitionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAlter_attribute_definition(this);
+ }
+};
+
+Alter_attribute_definitionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAlter_attribute_definition(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Alter_attribute_definitionContext = Alter_attribute_definitionContext;
+
+PlSqlParser.prototype.alter_attribute_definition = function() {
+
+ var localctx = new Alter_attribute_definitionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 98, PlSqlParser.RULE_alter_attribute_definition);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2297;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.ADD || _la===PlSqlParser.DROP || _la===PlSqlParser.MODIFY)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 2298;
+ this.match(PlSqlParser.ATTRIBUTE);
+ this.state = 2311;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.ABORT:
+ case PlSqlParser.ABS:
+ case PlSqlParser.ACCESS:
+ case PlSqlParser.ACCESSED:
+ case PlSqlParser.ACCOUNT:
+ case PlSqlParser.ACL:
+ case PlSqlParser.ACOS:
+ case PlSqlParser.ACTION:
+ case PlSqlParser.ACTIONS:
+ case PlSqlParser.ACTIVATE:
+ case PlSqlParser.ACTIVE:
+ case PlSqlParser.ACTIVE_COMPONENT:
+ case PlSqlParser.ACTIVE_DATA:
+ case PlSqlParser.ACTIVE_FUNCTION:
+ case PlSqlParser.ACTIVE_TAG:
+ case PlSqlParser.ACTIVITY:
+ case PlSqlParser.ADAPTIVE_PLAN:
+ case PlSqlParser.ADD:
+ case PlSqlParser.ADD_COLUMN:
+ case PlSqlParser.ADD_GROUP:
+ case PlSqlParser.ADD_MONTHS:
+ case PlSqlParser.ADJ_DATE:
+ case PlSqlParser.ADMIN:
+ case PlSqlParser.ADMINISTER:
+ case PlSqlParser.ADMINISTRATOR:
+ case PlSqlParser.ADVANCED:
+ case PlSqlParser.ADVISE:
+ case PlSqlParser.ADVISOR:
+ case PlSqlParser.AFD_DISKSTRING:
+ case PlSqlParser.AFTER:
+ case PlSqlParser.AGENT:
+ case PlSqlParser.AGGREGATE:
+ case PlSqlParser.A_LETTER:
+ case PlSqlParser.ALIAS:
+ case PlSqlParser.ALLOCATE:
+ case PlSqlParser.ALLOW:
+ case PlSqlParser.ALL_ROWS:
+ case PlSqlParser.ALWAYS:
+ case PlSqlParser.ANALYZE:
+ case PlSqlParser.ANCILLARY:
+ case PlSqlParser.AND_EQUAL:
+ case PlSqlParser.ANOMALY:
+ case PlSqlParser.ANSI_REARCH:
+ case PlSqlParser.ANTIJOIN:
+ case PlSqlParser.ANYSCHEMA:
+ case PlSqlParser.APPEND:
+ case PlSqlParser.APPENDCHILDXML:
+ case PlSqlParser.APPEND_VALUES:
+ case PlSqlParser.APPLICATION:
+ case PlSqlParser.APPLY:
+ case PlSqlParser.APPROX_COUNT_DISTINCT:
+ case PlSqlParser.ARCHIVAL:
+ case PlSqlParser.ARCHIVE:
+ case PlSqlParser.ARCHIVED:
+ case PlSqlParser.ARCHIVELOG:
+ case PlSqlParser.ARRAY:
+ case PlSqlParser.ASCII:
+ case PlSqlParser.ASCIISTR:
+ case PlSqlParser.ASIN:
+ case PlSqlParser.ASIS:
+ case PlSqlParser.ASSEMBLY:
+ case PlSqlParser.ASSIGN:
+ case PlSqlParser.ASSOCIATE:
+ case PlSqlParser.ASYNC:
+ case PlSqlParser.ASYNCHRONOUS:
+ case PlSqlParser.ATAN2:
+ case PlSqlParser.ATAN:
+ case PlSqlParser.AT:
+ case PlSqlParser.ATTRIBUTE:
+ case PlSqlParser.ATTRIBUTES:
+ case PlSqlParser.AUTHENTICATED:
+ case PlSqlParser.AUTHENTICATION:
+ case PlSqlParser.AUTHID:
+ case PlSqlParser.AUTHORIZATION:
+ case PlSqlParser.AUTOALLOCATE:
+ case PlSqlParser.AUTO:
+ case PlSqlParser.AUTOEXTEND:
+ case PlSqlParser.AUTO_LOGIN:
+ case PlSqlParser.AUTOMATIC:
+ case PlSqlParser.AUTONOMOUS_TRANSACTION:
+ case PlSqlParser.AUTO_REOPTIMIZE:
+ case PlSqlParser.AVAILABILITY:
+ case PlSqlParser.AVRO:
+ case PlSqlParser.BACKGROUND:
+ case PlSqlParser.BACKUP:
+ case PlSqlParser.BASIC:
+ case PlSqlParser.BASICFILE:
+ case PlSqlParser.BATCH:
+ case PlSqlParser.BATCHSIZE:
+ case PlSqlParser.BATCH_TABLE_ACCESS_BY_ROWID:
+ case PlSqlParser.BECOME:
+ case PlSqlParser.BEFORE:
+ case PlSqlParser.BEGIN:
+ case PlSqlParser.BEGINNING:
+ case PlSqlParser.BEGIN_OUTLINE_DATA:
+ case PlSqlParser.BEHALF:
+ case PlSqlParser.BEQUEATH:
+ case PlSqlParser.BFILE:
+ case PlSqlParser.BFILENAME:
+ case PlSqlParser.BIGFILE:
+ case PlSqlParser.BINARY:
+ case PlSqlParser.BINARY_DOUBLE:
+ case PlSqlParser.BINARY_DOUBLE_INFINITY:
+ case PlSqlParser.BINARY_DOUBLE_NAN:
+ case PlSqlParser.BINARY_FLOAT:
+ case PlSqlParser.BINARY_FLOAT_INFINITY:
+ case PlSqlParser.BINARY_FLOAT_NAN:
+ case PlSqlParser.BINARY_INTEGER:
+ case PlSqlParser.BIND_AWARE:
+ case PlSqlParser.BINDING:
+ case PlSqlParser.BIN_TO_NUM:
+ case PlSqlParser.BITAND:
+ case PlSqlParser.BITMAP_AND:
+ case PlSqlParser.BITMAP:
+ case PlSqlParser.BITMAPS:
+ case PlSqlParser.BITMAP_TREE:
+ case PlSqlParser.BITS:
+ case PlSqlParser.BLOB:
+ case PlSqlParser.BLOCK:
+ case PlSqlParser.BLOCK_RANGE:
+ case PlSqlParser.BLOCKS:
+ case PlSqlParser.BLOCKSIZE:
+ case PlSqlParser.BODY:
+ case PlSqlParser.BOOLEAN:
+ case PlSqlParser.BOTH:
+ case PlSqlParser.BOUND:
+ case PlSqlParser.BRANCH:
+ case PlSqlParser.BREADTH:
+ case PlSqlParser.BROADCAST:
+ case PlSqlParser.BSON:
+ case PlSqlParser.BUFFER:
+ case PlSqlParser.BUFFER_CACHE:
+ case PlSqlParser.BUFFER_POOL:
+ case PlSqlParser.BUILD:
+ case PlSqlParser.BULK:
+ case PlSqlParser.BYPASS_RECURSIVE_CHECK:
+ case PlSqlParser.BYPASS_UJVC:
+ case PlSqlParser.BYTE:
+ case PlSqlParser.CACHE:
+ case PlSqlParser.CACHE_CB:
+ case PlSqlParser.CACHE_INSTANCES:
+ case PlSqlParser.CACHE_TEMP_TABLE:
+ case PlSqlParser.CACHING:
+ case PlSqlParser.CALCULATED:
+ case PlSqlParser.CALLBACK:
+ case PlSqlParser.CALL:
+ case PlSqlParser.CANCEL:
+ case PlSqlParser.CAPACITY:
+ case PlSqlParser.CARDINALITY:
+ case PlSqlParser.CASCADE:
+ case PlSqlParser.CASE:
+ case PlSqlParser.CAST:
+ case PlSqlParser.CATEGORY:
+ case PlSqlParser.CDBDEFAULT:
+ case PlSqlParser.CEIL:
+ case PlSqlParser.CELL_FLASH_CACHE:
+ case PlSqlParser.CERTIFICATE:
+ case PlSqlParser.CFILE:
+ case PlSqlParser.CHAINED:
+ case PlSqlParser.CHANGE:
+ case PlSqlParser.CHANGE_DUPKEY_ERROR_INDEX:
+ case PlSqlParser.CHARACTER:
+ case PlSqlParser.CHAR:
+ case PlSqlParser.CHAR_CS:
+ case PlSqlParser.CHARTOROWID:
+ case PlSqlParser.CHECK_ACL_REWRITE:
+ case PlSqlParser.CHECKPOINT:
+ case PlSqlParser.CHILD:
+ case PlSqlParser.CHOOSE:
+ case PlSqlParser.CHR:
+ case PlSqlParser.CHUNK:
+ case PlSqlParser.CLASS:
+ case PlSqlParser.CLASSIFIER:
+ case PlSqlParser.CLEANUP:
+ case PlSqlParser.CLEAR:
+ case PlSqlParser.C_LETTER:
+ case PlSqlParser.CLIENT:
+ case PlSqlParser.CLOB:
+ case PlSqlParser.CLONE:
+ case PlSqlParser.CLOSE_CACHED_OPEN_CURSORS:
+ case PlSqlParser.CLOSE:
+ case PlSqlParser.CLUSTER_BY_ROWID:
+ case PlSqlParser.CLUSTER:
+ case PlSqlParser.CLUSTER_DETAILS:
+ case PlSqlParser.CLUSTER_DISTANCE:
+ case PlSqlParser.CLUSTER_ID:
+ case PlSqlParser.CLUSTERING:
+ case PlSqlParser.CLUSTERING_FACTOR:
+ case PlSqlParser.CLUSTER_PROBABILITY:
+ case PlSqlParser.CLUSTER_SET:
+ case PlSqlParser.COALESCE:
+ case PlSqlParser.COALESCE_SQ:
+ case PlSqlParser.COARSE:
+ case PlSqlParser.CO_AUTH_IND:
+ case PlSqlParser.COLD:
+ case PlSqlParser.COLLECT:
+ case PlSqlParser.COLUMNAR:
+ case PlSqlParser.COLUMN_AUTH_INDICATOR:
+ case PlSqlParser.COLUMN:
+ case PlSqlParser.COLUMNS:
+ case PlSqlParser.COLUMN_STATS:
+ case PlSqlParser.COLUMN_VALUE:
+ case PlSqlParser.COMMENT:
+ case PlSqlParser.COMMIT:
+ case PlSqlParser.COMMITTED:
+ case PlSqlParser.COMMON_DATA:
+ case PlSqlParser.COMPACT:
+ case PlSqlParser.COMPATIBILITY:
+ case PlSqlParser.COMPILE:
+ case PlSqlParser.COMPLETE:
+ case PlSqlParser.COMPLIANCE:
+ case PlSqlParser.COMPONENT:
+ case PlSqlParser.COMPONENTS:
+ case PlSqlParser.COMPOSE:
+ case PlSqlParser.COMPOSITE:
+ case PlSqlParser.COMPOSITE_LIMIT:
+ case PlSqlParser.COMPOUND:
+ case PlSqlParser.COMPUTE:
+ case PlSqlParser.CONCAT:
+ case PlSqlParser.CON_DBID_TO_ID:
+ case PlSqlParser.CONDITIONAL:
+ case PlSqlParser.CONDITION:
+ case PlSqlParser.CONFIRM:
+ case PlSqlParser.CONFORMING:
+ case PlSqlParser.CON_GUID_TO_ID:
+ case PlSqlParser.CON_ID:
+ case PlSqlParser.CON_NAME_TO_ID:
+ case PlSqlParser.CONNECT_BY_CB_WHR_ONLY:
+ case PlSqlParser.CONNECT_BY_COMBINE_SW:
+ case PlSqlParser.CONNECT_BY_COST_BASED:
+ case PlSqlParser.CONNECT_BY_ELIM_DUPS:
+ case PlSqlParser.CONNECT_BY_FILTERING:
+ case PlSqlParser.CONNECT_BY_ISCYCLE:
+ case PlSqlParser.CONNECT_BY_ISLEAF:
+ case PlSqlParser.CONNECT_BY_ROOT:
+ case PlSqlParser.CONNECT_TIME:
+ case PlSqlParser.CONSIDER:
+ case PlSqlParser.CONSISTENT:
+ case PlSqlParser.CONSTANT:
+ case PlSqlParser.CONST:
+ case PlSqlParser.CONSTRAINT:
+ case PlSqlParser.CONSTRAINTS:
+ case PlSqlParser.CONSTRUCTOR:
+ case PlSqlParser.CONTAINER:
+ case PlSqlParser.CONTAINER_DATA:
+ case PlSqlParser.CONTAINERS:
+ case PlSqlParser.CONTENT:
+ case PlSqlParser.CONTENTS:
+ case PlSqlParser.CONTEXT:
+ case PlSqlParser.CONTINUE:
+ case PlSqlParser.CONTROLFILE:
+ case PlSqlParser.CON_UID_TO_ID:
+ case PlSqlParser.CONVERT:
+ case PlSqlParser.COOKIE:
+ case PlSqlParser.COPY:
+ case PlSqlParser.CORR_K:
+ case PlSqlParser.CORR_S:
+ case PlSqlParser.CORRUPTION:
+ case PlSqlParser.CORRUPT_XID_ALL:
+ case PlSqlParser.CORRUPT_XID:
+ case PlSqlParser.COS:
+ case PlSqlParser.COSH:
+ case PlSqlParser.COST:
+ case PlSqlParser.COST_XML_QUERY_REWRITE:
+ case PlSqlParser.COUNT:
+ case PlSqlParser.COVAR_POP:
+ case PlSqlParser.COVAR_SAMP:
+ case PlSqlParser.CPU_COSTING:
+ case PlSqlParser.CPU_PER_CALL:
+ case PlSqlParser.CPU_PER_SESSION:
+ case PlSqlParser.CRASH:
+ case PlSqlParser.CREATE_FILE_DEST:
+ case PlSqlParser.CREATE_STORED_OUTLINES:
+ case PlSqlParser.CREATION:
+ case PlSqlParser.CREDENTIAL:
+ case PlSqlParser.CRITICAL:
+ case PlSqlParser.CROSS:
+ case PlSqlParser.CROSSEDITION:
+ case PlSqlParser.CSCONVERT:
+ case PlSqlParser.CUBE_AJ:
+ case PlSqlParser.CUBE:
+ case PlSqlParser.CUBE_GB:
+ case PlSqlParser.CUBE_SJ:
+ case PlSqlParser.CUME_DISTM:
+ case PlSqlParser.CURRENT:
+ case PlSqlParser.CURRENT_DATE:
+ case PlSqlParser.CURRENT_SCHEMA:
+ case PlSqlParser.CURRENT_TIME:
+ case PlSqlParser.CURRENT_TIMESTAMP:
+ case PlSqlParser.CURRENT_USER:
+ case PlSqlParser.CURRENTV:
+ case PlSqlParser.CURSOR:
+ case PlSqlParser.CURSOR_SHARING_EXACT:
+ case PlSqlParser.CURSOR_SPECIFIC_SEGMENT:
+ case PlSqlParser.CUSTOMDATUM:
+ case PlSqlParser.CV:
+ case PlSqlParser.CYCLE:
+ case PlSqlParser.DANGLING:
+ case PlSqlParser.DATABASE:
+ case PlSqlParser.DATA:
+ case PlSqlParser.DATAFILE:
+ case PlSqlParser.DATAFILES:
+ case PlSqlParser.DATAMOVEMENT:
+ case PlSqlParser.DATAOBJNO:
+ case PlSqlParser.DATAOBJ_TO_MAT_PARTITION:
+ case PlSqlParser.DATAOBJ_TO_PARTITION:
+ case PlSqlParser.DATAPUMP:
+ case PlSqlParser.DATA_SECURITY_REWRITE_LIMIT:
+ case PlSqlParser.DATE_MODE:
+ case PlSqlParser.DAY:
+ case PlSqlParser.DAYS:
+ case PlSqlParser.DBA:
+ case PlSqlParser.DBA_RECYCLEBIN:
+ case PlSqlParser.DBMS_STATS:
+ case PlSqlParser.DB_ROLE_CHANGE:
+ case PlSqlParser.DBTIMEZONE:
+ case PlSqlParser.DB_UNIQUE_NAME:
+ case PlSqlParser.DB_VERSION:
+ case PlSqlParser.DDL:
+ case PlSqlParser.DEALLOCATE:
+ case PlSqlParser.DEBUG:
+ case PlSqlParser.DEBUGGER:
+ case PlSqlParser.DEC:
+ case PlSqlParser.DECIMAL:
+ case PlSqlParser.DECLARE:
+ case PlSqlParser.DECOMPOSE:
+ case PlSqlParser.DECORRELATE:
+ case PlSqlParser.DECR:
+ case PlSqlParser.DECREMENT:
+ case PlSqlParser.DECRYPT:
+ case PlSqlParser.DEDUPLICATE:
+ case PlSqlParser.DEFAULTS:
+ case PlSqlParser.DEFERRABLE:
+ case PlSqlParser.DEFERRED:
+ case PlSqlParser.DEFINED:
+ case PlSqlParser.DEFINE:
+ case PlSqlParser.DEFINER:
+ case PlSqlParser.DEGREE:
+ case PlSqlParser.DELAY:
+ case PlSqlParser.DELEGATE:
+ case PlSqlParser.DELETE_ALL:
+ case PlSqlParser.DELETE:
+ case PlSqlParser.DELETEXML:
+ case PlSqlParser.DEMAND:
+ case PlSqlParser.DENSE_RANKM:
+ case PlSqlParser.DEPENDENT:
+ case PlSqlParser.DEPTH:
+ case PlSqlParser.DEQUEUE:
+ case PlSqlParser.DEREF:
+ case PlSqlParser.DEREF_NO_REWRITE:
+ case PlSqlParser.DESTROY:
+ case PlSqlParser.DETACHED:
+ case PlSqlParser.DETERMINES:
+ case PlSqlParser.DETERMINISTIC:
+ case PlSqlParser.DICTIONARY:
+ case PlSqlParser.DIMENSION:
+ case PlSqlParser.DIMENSIONS:
+ case PlSqlParser.DIRECT_LOAD:
+ case PlSqlParser.DIRECTORY:
+ case PlSqlParser.DIRECT_PATH:
+ case PlSqlParser.DISABLE_ALL:
+ case PlSqlParser.DISABLE:
+ case PlSqlParser.DISABLE_PARALLEL_DML:
+ case PlSqlParser.DISABLE_PRESET:
+ case PlSqlParser.DISABLE_RPKE:
+ case PlSqlParser.DISALLOW:
+ case PlSqlParser.DISASSOCIATE:
+ case PlSqlParser.DISCARD:
+ case PlSqlParser.DISCONNECT:
+ case PlSqlParser.DISK:
+ case PlSqlParser.DISKGROUP:
+ case PlSqlParser.DISKS:
+ case PlSqlParser.DISMOUNT:
+ case PlSqlParser.DISTINGUISHED:
+ case PlSqlParser.DISTRIBUTED:
+ case PlSqlParser.DISTRIBUTE:
+ case PlSqlParser.DML:
+ case PlSqlParser.DML_UPDATE:
+ case PlSqlParser.DOCFIDELITY:
+ case PlSqlParser.DOCUMENT:
+ case PlSqlParser.DOMAIN_INDEX_FILTER:
+ case PlSqlParser.DOMAIN_INDEX_NO_SORT:
+ case PlSqlParser.DOMAIN_INDEX_SORT:
+ case PlSqlParser.DOUBLE:
+ case PlSqlParser.DOWNGRADE:
+ case PlSqlParser.DRIVING_SITE:
+ case PlSqlParser.DROP_COLUMN:
+ case PlSqlParser.DROP_GROUP:
+ case PlSqlParser.DSINTERVAL_UNCONSTRAINED:
+ case PlSqlParser.DST_UPGRADE_INSERT_CONV:
+ case PlSqlParser.DUMP:
+ case PlSqlParser.DUPLICATE:
+ case PlSqlParser.DV:
+ case PlSqlParser.DYNAMIC:
+ case PlSqlParser.DYNAMIC_SAMPLING:
+ case PlSqlParser.DYNAMIC_SAMPLING_EST_CDN:
+ case PlSqlParser.EACH:
+ case PlSqlParser.EDITIONABLE:
+ case PlSqlParser.EDITION:
+ case PlSqlParser.EDITIONING:
+ case PlSqlParser.EDITIONS:
+ case PlSqlParser.ELEMENT:
+ case PlSqlParser.ELIM_GROUPBY:
+ case PlSqlParser.ELIMINATE_JOIN:
+ case PlSqlParser.ELIMINATE_OBY:
+ case PlSqlParser.ELIMINATE_OUTER_JOIN:
+ case PlSqlParser.EM:
+ case PlSqlParser.EMPTY_BLOB:
+ case PlSqlParser.EMPTY_CLOB:
+ case PlSqlParser.EMPTY:
+ case PlSqlParser.ENABLE_ALL:
+ case PlSqlParser.ENABLE:
+ case PlSqlParser.ENABLE_PARALLEL_DML:
+ case PlSqlParser.ENABLE_PRESET:
+ case PlSqlParser.ENCODING:
+ case PlSqlParser.ENCRYPT:
+ case PlSqlParser.ENCRYPTION:
+ case PlSqlParser.END_OUTLINE_DATA:
+ case PlSqlParser.ENFORCED:
+ case PlSqlParser.ENFORCE:
+ case PlSqlParser.ENQUEUE:
+ case PlSqlParser.ENTERPRISE:
+ case PlSqlParser.ENTITYESCAPING:
+ case PlSqlParser.ENTRY:
+ case PlSqlParser.EQUIPART:
+ case PlSqlParser.ERR:
+ case PlSqlParser.ERROR_ARGUMENT:
+ case PlSqlParser.ERROR:
+ case PlSqlParser.ERROR_ON_OVERLAP_TIME:
+ case PlSqlParser.ERRORS:
+ case PlSqlParser.ESCAPE:
+ case PlSqlParser.ESTIMATE:
+ case PlSqlParser.EVAL:
+ case PlSqlParser.EVALNAME:
+ case PlSqlParser.EVALUATE:
+ case PlSqlParser.EVALUATION:
+ case PlSqlParser.EVENTS:
+ case PlSqlParser.EVERY:
+ case PlSqlParser.EXCEPT:
+ case PlSqlParser.EXCEPTION:
+ case PlSqlParser.EXCEPTION_INIT:
+ case PlSqlParser.EXCEPTIONS:
+ case PlSqlParser.EXCHANGE:
+ case PlSqlParser.EXCLUDE:
+ case PlSqlParser.EXCLUDING:
+ case PlSqlParser.EXECUTE:
+ case PlSqlParser.EXEMPT:
+ case PlSqlParser.EXISTING:
+ case PlSqlParser.EXISTS:
+ case PlSqlParser.EXISTSNODE:
+ case PlSqlParser.EXIT:
+ case PlSqlParser.EXPAND_GSET_TO_UNION:
+ case PlSqlParser.EXPAND_TABLE:
+ case PlSqlParser.EXP:
+ case PlSqlParser.EXPIRE:
+ case PlSqlParser.EXPLAIN:
+ case PlSqlParser.EXPLOSION:
+ case PlSqlParser.EXPORT:
+ case PlSqlParser.EXPR_CORR_CHECK:
+ case PlSqlParser.EXPRESS:
+ case PlSqlParser.EXTENDS:
+ case PlSqlParser.EXTENT:
+ case PlSqlParser.EXTENTS:
+ case PlSqlParser.EXTERNAL:
+ case PlSqlParser.EXTERNALLY:
+ case PlSqlParser.EXTRACTCLOBXML:
+ case PlSqlParser.EXTRACT:
+ case PlSqlParser.EXTRACTVALUE:
+ case PlSqlParser.EXTRA:
+ case PlSqlParser.FACILITY:
+ case PlSqlParser.FACT:
+ case PlSqlParser.FACTOR:
+ case PlSqlParser.FACTORIZE_JOIN:
+ case PlSqlParser.FAILED:
+ case PlSqlParser.FAILED_LOGIN_ATTEMPTS:
+ case PlSqlParser.FAILGROUP:
+ case PlSqlParser.FAILOVER:
+ case PlSqlParser.FAILURE:
+ case PlSqlParser.FALSE:
+ case PlSqlParser.FAMILY:
+ case PlSqlParser.FAR:
+ case PlSqlParser.FAST:
+ case PlSqlParser.FASTSTART:
+ case PlSqlParser.FBTSCAN:
+ case PlSqlParser.FEATURE_DETAILS:
+ case PlSqlParser.FEATURE_ID:
+ case PlSqlParser.FEATURE_SET:
+ case PlSqlParser.FEATURE_VALUE:
+ case PlSqlParser.FETCH:
+ case PlSqlParser.FILE:
+ case PlSqlParser.FILE_NAME_CONVERT:
+ case PlSqlParser.FILESYSTEM_LIKE_LOGGING:
+ case PlSqlParser.FILTER:
+ case PlSqlParser.FINAL:
+ case PlSqlParser.FINE:
+ case PlSqlParser.FINISH:
+ case PlSqlParser.FIRST:
+ case PlSqlParser.FIRSTM:
+ case PlSqlParser.FIRST_ROWS:
+ case PlSqlParser.FIRST_VALUE:
+ case PlSqlParser.FIXED_VIEW_DATA:
+ case PlSqlParser.FLAGGER:
+ case PlSqlParser.FLASHBACK:
+ case PlSqlParser.FLASH_CACHE:
+ case PlSqlParser.FLOAT:
+ case PlSqlParser.FLOB:
+ case PlSqlParser.FLOOR:
+ case PlSqlParser.FLUSH:
+ case PlSqlParser.FOLDER:
+ case PlSqlParser.FOLLOWING:
+ case PlSqlParser.FOLLOWS:
+ case PlSqlParser.FORALL:
+ case PlSqlParser.FORCE:
+ case PlSqlParser.FORCE_XML_QUERY_REWRITE:
+ case PlSqlParser.FOREIGN:
+ case PlSqlParser.FOREVER:
+ case PlSqlParser.FORMAT:
+ case PlSqlParser.FORWARD:
+ case PlSqlParser.FRAGMENT_NUMBER:
+ case PlSqlParser.FREELIST:
+ case PlSqlParser.FREELISTS:
+ case PlSqlParser.FREEPOOLS:
+ case PlSqlParser.FRESH:
+ case PlSqlParser.FROM_TZ:
+ case PlSqlParser.FULL:
+ case PlSqlParser.FULL_OUTER_JOIN_TO_OUTER:
+ case PlSqlParser.FUNCTION:
+ case PlSqlParser.FUNCTIONS:
+ case PlSqlParser.GATHER_OPTIMIZER_STATISTICS:
+ case PlSqlParser.GATHER_PLAN_STATISTICS:
+ case PlSqlParser.GBY_CONC_ROLLUP:
+ case PlSqlParser.GBY_PUSHDOWN:
+ case PlSqlParser.GENERATED:
+ case PlSqlParser.GET:
+ case PlSqlParser.GLOBAL:
+ case PlSqlParser.GLOBALLY:
+ case PlSqlParser.GLOBAL_NAME:
+ case PlSqlParser.GLOBAL_TOPIC_ENABLED:
+ case PlSqlParser.GROUP_BY:
+ case PlSqlParser.GROUP_ID:
+ case PlSqlParser.GROUPING:
+ case PlSqlParser.GROUPING_ID:
+ case PlSqlParser.GROUPS:
+ case PlSqlParser.GUARANTEED:
+ case PlSqlParser.GUARANTEE:
+ case PlSqlParser.GUARD:
+ case PlSqlParser.HASH_AJ:
+ case PlSqlParser.HASH:
+ case PlSqlParser.HASHKEYS:
+ case PlSqlParser.HASH_SJ:
+ case PlSqlParser.HEADER:
+ case PlSqlParser.HEAP:
+ case PlSqlParser.HELP:
+ case PlSqlParser.HEXTORAW:
+ case PlSqlParser.HEXTOREF:
+ case PlSqlParser.HIDDEN_KEYWORD:
+ case PlSqlParser.HIDE:
+ case PlSqlParser.HIERARCHY:
+ case PlSqlParser.HIGH:
+ case PlSqlParser.HINTSET_BEGIN:
+ case PlSqlParser.HINTSET_END:
+ case PlSqlParser.HOT:
+ case PlSqlParser.HOUR:
+ case PlSqlParser.HWM_BROKERED:
+ case PlSqlParser.HYBRID:
+ case PlSqlParser.IDENTIFIER:
+ case PlSqlParser.IDENTITY:
+ case PlSqlParser.IDGENERATORS:
+ case PlSqlParser.ID:
+ case PlSqlParser.IDLE_TIME:
+ case PlSqlParser.IF:
+ case PlSqlParser.IGNORE:
+ case PlSqlParser.IGNORE_OPTIM_EMBEDDED_HINTS:
+ case PlSqlParser.IGNORE_ROW_ON_DUPKEY_INDEX:
+ case PlSqlParser.IGNORE_WHERE_CLAUSE:
+ case PlSqlParser.ILM:
+ case PlSqlParser.IMMEDIATE:
+ case PlSqlParser.IMPACT:
+ case PlSqlParser.IMPORT:
+ case PlSqlParser.INACTIVE:
+ case PlSqlParser.INCLUDE:
+ case PlSqlParser.INCLUDE_VERSION:
+ case PlSqlParser.INCLUDING:
+ case PlSqlParser.INCREMENTAL:
+ case PlSqlParser.INCREMENT:
+ case PlSqlParser.INCR:
+ case PlSqlParser.INDENT:
+ case PlSqlParser.INDEX_ASC:
+ case PlSqlParser.INDEX_COMBINE:
+ case PlSqlParser.INDEX_DESC:
+ case PlSqlParser.INDEXED:
+ case PlSqlParser.INDEXES:
+ case PlSqlParser.INDEX_FFS:
+ case PlSqlParser.INDEX_FILTER:
+ case PlSqlParser.INDEXING:
+ case PlSqlParser.INDEX_JOIN:
+ case PlSqlParser.INDEX_ROWS:
+ case PlSqlParser.INDEX_RRS:
+ case PlSqlParser.INDEX_RS_ASC:
+ case PlSqlParser.INDEX_RS_DESC:
+ case PlSqlParser.INDEX_RS:
+ case PlSqlParser.INDEX_SCAN:
+ case PlSqlParser.INDEX_SKIP_SCAN:
+ case PlSqlParser.INDEX_SS_ASC:
+ case PlSqlParser.INDEX_SS_DESC:
+ case PlSqlParser.INDEX_SS:
+ case PlSqlParser.INDEX_STATS:
+ case PlSqlParser.INDEXTYPE:
+ case PlSqlParser.INDEXTYPES:
+ case PlSqlParser.INDICATOR:
+ case PlSqlParser.INDICES:
+ case PlSqlParser.INFINITE:
+ case PlSqlParser.INFORMATIONAL:
+ case PlSqlParser.INHERIT:
+ case PlSqlParser.INITCAP:
+ case PlSqlParser.INITIAL:
+ case PlSqlParser.INITIALIZED:
+ case PlSqlParser.INITIALLY:
+ case PlSqlParser.INITRANS:
+ case PlSqlParser.INLINE:
+ case PlSqlParser.INLINE_XMLTYPE_NT:
+ case PlSqlParser.INMEMORY:
+ case PlSqlParser.IN_MEMORY_METADATA:
+ case PlSqlParser.INMEMORY_PRUNING:
+ case PlSqlParser.INNER:
+ case PlSqlParser.INOUT:
+ case PlSqlParser.INPLACE:
+ case PlSqlParser.INSERTCHILDXMLAFTER:
+ case PlSqlParser.INSERTCHILDXMLBEFORE:
+ case PlSqlParser.INSERTCHILDXML:
+ case PlSqlParser.INSERTXMLAFTER:
+ case PlSqlParser.INSERTXMLBEFORE:
+ case PlSqlParser.INSTANCE:
+ case PlSqlParser.INSTANCES:
+ case PlSqlParser.INSTANTIABLE:
+ case PlSqlParser.INSTANTLY:
+ case PlSqlParser.INSTEAD:
+ case PlSqlParser.INSTR2:
+ case PlSqlParser.INSTR4:
+ case PlSqlParser.INSTRB:
+ case PlSqlParser.INSTRC:
+ case PlSqlParser.INSTR:
+ case PlSqlParser.INTEGER:
+ case PlSqlParser.INTERLEAVED:
+ case PlSqlParser.INTERMEDIATE:
+ case PlSqlParser.INTERNAL_CONVERT:
+ case PlSqlParser.INTERNAL_USE:
+ case PlSqlParser.INTERPRETED:
+ case PlSqlParser.INTERVAL:
+ case PlSqlParser.INT:
+ case PlSqlParser.INVALIDATE:
+ case PlSqlParser.INVISIBLE:
+ case PlSqlParser.IN_XQUERY:
+ case PlSqlParser.ISOLATION:
+ case PlSqlParser.ISOLATION_LEVEL:
+ case PlSqlParser.ITERATE:
+ case PlSqlParser.ITERATION_NUMBER:
+ case PlSqlParser.JAVA:
+ case PlSqlParser.JOB:
+ case PlSqlParser.JOIN:
+ case PlSqlParser.JSON_ARRAYAGG:
+ case PlSqlParser.JSON_ARRAY:
+ case PlSqlParser.JSON_EQUAL:
+ case PlSqlParser.JSON_EXISTS2:
+ case PlSqlParser.JSON_EXISTS:
+ case PlSqlParser.JSONGET:
+ case PlSqlParser.JSON:
+ case PlSqlParser.JSON_OBJECTAGG:
+ case PlSqlParser.JSON_OBJECT:
+ case PlSqlParser.JSONPARSE:
+ case PlSqlParser.JSON_QUERY:
+ case PlSqlParser.JSON_SERIALIZE:
+ case PlSqlParser.JSON_TABLE:
+ case PlSqlParser.JSON_TEXTCONTAINS2:
+ case PlSqlParser.JSON_TEXTCONTAINS:
+ case PlSqlParser.JSON_VALUE:
+ case PlSqlParser.KEEP_DUPLICATES:
+ case PlSqlParser.KEEP:
+ case PlSqlParser.KERBEROS:
+ case PlSqlParser.KEY:
+ case PlSqlParser.KEY_LENGTH:
+ case PlSqlParser.KEYSIZE:
+ case PlSqlParser.KEYS:
+ case PlSqlParser.KEYSTORE:
+ case PlSqlParser.KILL:
+ case PlSqlParser.LABEL:
+ case PlSqlParser.LANGUAGE:
+ case PlSqlParser.LAST_DAY:
+ case PlSqlParser.LAST:
+ case PlSqlParser.LAST_VALUE:
+ case PlSqlParser.LATERAL:
+ case PlSqlParser.LAX:
+ case PlSqlParser.LAYER:
+ case PlSqlParser.LDAP_REGISTRATION_ENABLED:
+ case PlSqlParser.LDAP_REGISTRATION:
+ case PlSqlParser.LDAP_REG_SYNC_INTERVAL:
+ case PlSqlParser.LEADING:
+ case PlSqlParser.LEFT:
+ case PlSqlParser.LENGTH2:
+ case PlSqlParser.LENGTH4:
+ case PlSqlParser.LENGTHB:
+ case PlSqlParser.LENGTHC:
+ case PlSqlParser.LENGTH:
+ case PlSqlParser.LESS:
+ case PlSqlParser.LEVEL:
+ case PlSqlParser.LEVELS:
+ case PlSqlParser.LIBRARY:
+ case PlSqlParser.LIFECYCLE:
+ case PlSqlParser.LIFE:
+ case PlSqlParser.LIFETIME:
+ case PlSqlParser.LIKE2:
+ case PlSqlParser.LIKE4:
+ case PlSqlParser.LIKEC:
+ case PlSqlParser.LIKE_EXPAND:
+ case PlSqlParser.LIMIT:
+ case PlSqlParser.LINEAR:
+ case PlSqlParser.LINK:
+ case PlSqlParser.LIST:
+ case PlSqlParser.LN:
+ case PlSqlParser.LNNVL:
+ case PlSqlParser.LOAD:
+ case PlSqlParser.LOB:
+ case PlSqlParser.LOBNVL:
+ case PlSqlParser.LOBS:
+ case PlSqlParser.LOCAL_INDEXES:
+ case PlSqlParser.LOCAL:
+ case PlSqlParser.LOCALTIME:
+ case PlSqlParser.LOCALTIMESTAMP:
+ case PlSqlParser.LOCATION:
+ case PlSqlParser.LOCATOR:
+ case PlSqlParser.LOCKED:
+ case PlSqlParser.LOCKING:
+ case PlSqlParser.LOGFILE:
+ case PlSqlParser.LOGFILES:
+ case PlSqlParser.LOGGING:
+ case PlSqlParser.LOGICAL:
+ case PlSqlParser.LOGICAL_READS_PER_CALL:
+ case PlSqlParser.LOGICAL_READS_PER_SESSION:
+ case PlSqlParser.LOG:
+ case PlSqlParser.LOGMINING:
+ case PlSqlParser.LOGOFF:
+ case PlSqlParser.LOGON:
+ case PlSqlParser.LOG_READ_ONLY_VIOLATIONS:
+ case PlSqlParser.LONG:
+ case PlSqlParser.LOOP:
+ case PlSqlParser.LOWER:
+ case PlSqlParser.LOW:
+ case PlSqlParser.LPAD:
+ case PlSqlParser.LTRIM:
+ case PlSqlParser.MAIN:
+ case PlSqlParser.MAKE_REF:
+ case PlSqlParser.MANAGED:
+ case PlSqlParser.MANAGE:
+ case PlSqlParser.MANAGEMENT:
+ case PlSqlParser.MANAGER:
+ case PlSqlParser.MANUAL:
+ case PlSqlParser.MAP:
+ case PlSqlParser.MAPPING:
+ case PlSqlParser.MASTER:
+ case PlSqlParser.MATCHED:
+ case PlSqlParser.MATCHES:
+ case PlSqlParser.MATCH:
+ case PlSqlParser.MATCH_NUMBER:
+ case PlSqlParser.MATCH_RECOGNIZE:
+ case PlSqlParser.MATERIALIZED:
+ case PlSqlParser.MATERIALIZE:
+ case PlSqlParser.MAXARCHLOGS:
+ case PlSqlParser.MAXDATAFILES:
+ case PlSqlParser.MAXEXTENTS:
+ case PlSqlParser.MAXIMIZE:
+ case PlSqlParser.MAXINSTANCES:
+ case PlSqlParser.MAXLOGFILES:
+ case PlSqlParser.MAXLOGHISTORY:
+ case PlSqlParser.MAXLOGMEMBERS:
+ case PlSqlParser.MAX_SHARED_TEMP_SIZE:
+ case PlSqlParser.MAXSIZE:
+ case PlSqlParser.MAXTRANS:
+ case PlSqlParser.MAXVALUE:
+ case PlSqlParser.MEASURE:
+ case PlSqlParser.MEASURES:
+ case PlSqlParser.MEDIUM:
+ case PlSqlParser.MEMBER:
+ case PlSqlParser.MEMCOMPRESS:
+ case PlSqlParser.MEMORY:
+ case PlSqlParser.MERGEACTIONS:
+ case PlSqlParser.MERGE_AJ:
+ case PlSqlParser.MERGE_CONST_ON:
+ case PlSqlParser.MERGE:
+ case PlSqlParser.MERGE_SJ:
+ case PlSqlParser.METADATA:
+ case PlSqlParser.METHOD:
+ case PlSqlParser.MIGRATE:
+ case PlSqlParser.MIGRATION:
+ case PlSqlParser.MINEXTENTS:
+ case PlSqlParser.MINIMIZE:
+ case PlSqlParser.MINIMUM:
+ case PlSqlParser.MINING:
+ case PlSqlParser.MINUS_NULL:
+ case PlSqlParser.MINUTE:
+ case PlSqlParser.MINVALUE:
+ case PlSqlParser.MIRRORCOLD:
+ case PlSqlParser.MIRRORHOT:
+ case PlSqlParser.MIRROR:
+ case PlSqlParser.MLSLABEL:
+ case PlSqlParser.MODEL_COMPILE_SUBQUERY:
+ case PlSqlParser.MODEL_DONTVERIFY_UNIQUENESS:
+ case PlSqlParser.MODEL_DYNAMIC_SUBQUERY:
+ case PlSqlParser.MODEL_MIN_ANALYSIS:
+ case PlSqlParser.MODEL:
+ case PlSqlParser.MODEL_NB:
+ case PlSqlParser.MODEL_NO_ANALYSIS:
+ case PlSqlParser.MODEL_PBY:
+ case PlSqlParser.MODEL_PUSH_REF:
+ case PlSqlParser.MODEL_SV:
+ case PlSqlParser.MODIFICATION:
+ case PlSqlParser.MODIFY_COLUMN_TYPE:
+ case PlSqlParser.MODIFY:
+ case PlSqlParser.MOD:
+ case PlSqlParser.MODULE:
+ case PlSqlParser.MONITORING:
+ case PlSqlParser.MONITOR:
+ case PlSqlParser.MONTH:
+ case PlSqlParser.MONTHS_BETWEEN:
+ case PlSqlParser.MONTHS:
+ case PlSqlParser.MOUNT:
+ case PlSqlParser.MOUNTPATH:
+ case PlSqlParser.MOVEMENT:
+ case PlSqlParser.MOVE:
+ case PlSqlParser.MULTIDIMENSIONAL:
+ case PlSqlParser.MULTISET:
+ case PlSqlParser.MV_MERGE:
+ case PlSqlParser.NAMED:
+ case PlSqlParser.NAME:
+ case PlSqlParser.NAMESPACE:
+ case PlSqlParser.NAN:
+ case PlSqlParser.NANVL:
+ case PlSqlParser.NATIONAL:
+ case PlSqlParser.NATIVE_FULL_OUTER_JOIN:
+ case PlSqlParser.NATIVE:
+ case PlSqlParser.NATURAL:
+ case PlSqlParser.NAV:
+ case PlSqlParser.NCHAR_CS:
+ case PlSqlParser.NCHAR:
+ case PlSqlParser.NCHR:
+ case PlSqlParser.NCLOB:
+ case PlSqlParser.NEEDED:
+ case PlSqlParser.NEG:
+ case PlSqlParser.NESTED:
+ case PlSqlParser.NESTED_TABLE_FAST_INSERT:
+ case PlSqlParser.NESTED_TABLE_GET_REFS:
+ case PlSqlParser.NESTED_TABLE_ID:
+ case PlSqlParser.NESTED_TABLE_SET_REFS:
+ case PlSqlParser.NESTED_TABLE_SET_SETID:
+ case PlSqlParser.NETWORK:
+ case PlSqlParser.NEVER:
+ case PlSqlParser.NEW:
+ case PlSqlParser.NEW_TIME:
+ case PlSqlParser.NEXT_DAY:
+ case PlSqlParser.NEXT:
+ case PlSqlParser.NL_AJ:
+ case PlSqlParser.NLJ_BATCHING:
+ case PlSqlParser.NLJ_INDEX_FILTER:
+ case PlSqlParser.NLJ_INDEX_SCAN:
+ case PlSqlParser.NLJ_PREFETCH:
+ case PlSqlParser.NLS_CALENDAR:
+ case PlSqlParser.NLS_CHARACTERSET:
+ case PlSqlParser.NLS_CHARSET_DECL_LEN:
+ case PlSqlParser.NLS_CHARSET_ID:
+ case PlSqlParser.NLS_CHARSET_NAME:
+ case PlSqlParser.NLS_COMP:
+ case PlSqlParser.NLS_CURRENCY:
+ case PlSqlParser.NLS_DATE_FORMAT:
+ case PlSqlParser.NLS_DATE_LANGUAGE:
+ case PlSqlParser.NLS_INITCAP:
+ case PlSqlParser.NLS_ISO_CURRENCY:
+ case PlSqlParser.NL_SJ:
+ case PlSqlParser.NLS_LANG:
+ case PlSqlParser.NLS_LANGUAGE:
+ case PlSqlParser.NLS_LENGTH_SEMANTICS:
+ case PlSqlParser.NLS_LOWER:
+ case PlSqlParser.NLS_NCHAR_CONV_EXCP:
+ case PlSqlParser.NLS_NUMERIC_CHARACTERS:
+ case PlSqlParser.NLS_SORT:
+ case PlSqlParser.NLSSORT:
+ case PlSqlParser.NLS_SPECIAL_CHARS:
+ case PlSqlParser.NLS_TERRITORY:
+ case PlSqlParser.NLS_UPPER:
+ case PlSqlParser.NO_ACCESS:
+ case PlSqlParser.NO_ADAPTIVE_PLAN:
+ case PlSqlParser.NO_ANSI_REARCH:
+ case PlSqlParser.NOAPPEND:
+ case PlSqlParser.NOARCHIVELOG:
+ case PlSqlParser.NOAUDIT:
+ case PlSqlParser.NO_AUTO_REOPTIMIZE:
+ case PlSqlParser.NO_BASETABLE_MULTIMV_REWRITE:
+ case PlSqlParser.NO_BATCH_TABLE_ACCESS_BY_ROWID:
+ case PlSqlParser.NO_BIND_AWARE:
+ case PlSqlParser.NO_BUFFER:
+ case PlSqlParser.NOCACHE:
+ case PlSqlParser.NO_CARTESIAN:
+ case PlSqlParser.NO_CHECK_ACL_REWRITE:
+ case PlSqlParser.NO_CLUSTER_BY_ROWID:
+ case PlSqlParser.NO_CLUSTERING:
+ case PlSqlParser.NO_COALESCE_SQ:
+ case PlSqlParser.NO_COMMON_DATA:
+ case PlSqlParser.NO_CONNECT_BY_CB_WHR_ONLY:
+ case PlSqlParser.NO_CONNECT_BY_COMBINE_SW:
+ case PlSqlParser.NO_CONNECT_BY_COST_BASED:
+ case PlSqlParser.NO_CONNECT_BY_ELIM_DUPS:
+ case PlSqlParser.NO_CONNECT_BY_FILTERING:
+ case PlSqlParser.NOCOPY:
+ case PlSqlParser.NO_COST_XML_QUERY_REWRITE:
+ case PlSqlParser.NO_CPU_COSTING:
+ case PlSqlParser.NOCPU_COSTING:
+ case PlSqlParser.NOCYCLE:
+ case PlSqlParser.NO_DATA_SECURITY_REWRITE:
+ case PlSqlParser.NO_DECORRELATE:
+ case PlSqlParser.NODELAY:
+ case PlSqlParser.NO_DOMAIN_INDEX_FILTER:
+ case PlSqlParser.NO_DST_UPGRADE_INSERT_CONV:
+ case PlSqlParser.NO_ELIM_GROUPBY:
+ case PlSqlParser.NO_ELIMINATE_JOIN:
+ case PlSqlParser.NO_ELIMINATE_OBY:
+ case PlSqlParser.NO_ELIMINATE_OUTER_JOIN:
+ case PlSqlParser.NOENTITYESCAPING:
+ case PlSqlParser.NO_EXPAND_GSET_TO_UNION:
+ case PlSqlParser.NO_EXPAND:
+ case PlSqlParser.NO_EXPAND_TABLE:
+ case PlSqlParser.NO_FACT:
+ case PlSqlParser.NO_FACTORIZE_JOIN:
+ case PlSqlParser.NO_FILTERING:
+ case PlSqlParser.NOFORCE:
+ case PlSqlParser.NO_FULL_OUTER_JOIN_TO_OUTER:
+ case PlSqlParser.NO_GATHER_OPTIMIZER_STATISTICS:
+ case PlSqlParser.NO_GBY_PUSHDOWN:
+ case PlSqlParser.NOGUARANTEE:
+ case PlSqlParser.NO_INDEX_FFS:
+ case PlSqlParser.NO_INDEX:
+ case PlSqlParser.NO_INDEX_SS:
+ case PlSqlParser.NO_INMEMORY:
+ case PlSqlParser.NO_INMEMORY_PRUNING:
+ case PlSqlParser.NOKEEP:
+ case PlSqlParser.NO_LOAD:
+ case PlSqlParser.NOLOCAL:
+ case PlSqlParser.NOLOGGING:
+ case PlSqlParser.NOMAPPING:
+ case PlSqlParser.NOMAXVALUE:
+ case PlSqlParser.NO_MERGE:
+ case PlSqlParser.NOMINIMIZE:
+ case PlSqlParser.NOMINVALUE:
+ case PlSqlParser.NO_MODEL_PUSH_REF:
+ case PlSqlParser.NO_MONITORING:
+ case PlSqlParser.NOMONITORING:
+ case PlSqlParser.NO_MONITOR:
+ case PlSqlParser.NO_MULTIMV_REWRITE:
+ case PlSqlParser.NO_NATIVE_FULL_OUTER_JOIN:
+ case PlSqlParser.NONBLOCKING:
+ case PlSqlParser.NONEDITIONABLE:
+ case PlSqlParser.NONE:
+ case PlSqlParser.NO_NLJ_BATCHING:
+ case PlSqlParser.NO_NLJ_PREFETCH:
+ case PlSqlParser.NO:
+ case PlSqlParser.NONSCHEMA:
+ case PlSqlParser.NO_OBJECT_LINK:
+ case PlSqlParser.NOORDER:
+ case PlSqlParser.NO_ORDER_ROLLUPS:
+ case PlSqlParser.NO_OUTER_JOIN_TO_ANTI:
+ case PlSqlParser.NO_OUTER_JOIN_TO_INNER:
+ case PlSqlParser.NOOVERRIDE:
+ case PlSqlParser.NO_PARALLEL_INDEX:
+ case PlSqlParser.NOPARALLEL_INDEX:
+ case PlSqlParser.NO_PARALLEL:
+ case PlSqlParser.NOPARALLEL:
+ case PlSqlParser.NO_PARTIAL_COMMIT:
+ case PlSqlParser.NO_PARTIAL_JOIN:
+ case PlSqlParser.NO_PARTIAL_ROLLUP_PUSHDOWN:
+ case PlSqlParser.NOPARTITION:
+ case PlSqlParser.NO_PLACE_DISTINCT:
+ case PlSqlParser.NO_PLACE_GROUP_BY:
+ case PlSqlParser.NO_PQ_CONCURRENT_UNION:
+ case PlSqlParser.NO_PQ_MAP:
+ case PlSqlParser.NO_PQ_REPLICATE:
+ case PlSqlParser.NO_PQ_SKEW:
+ case PlSqlParser.NO_PRUNE_GSETS:
+ case PlSqlParser.NO_PULL_PRED:
+ case PlSqlParser.NO_PUSH_PRED:
+ case PlSqlParser.NO_PUSH_SUBQ:
+ case PlSqlParser.NO_PX_FAULT_TOLERANCE:
+ case PlSqlParser.NO_PX_JOIN_FILTER:
+ case PlSqlParser.NO_QKN_BUFF:
+ case PlSqlParser.NO_QUERY_TRANSFORMATION:
+ case PlSqlParser.NO_REF_CASCADE:
+ case PlSqlParser.NORELOCATE:
+ case PlSqlParser.NORELY:
+ case PlSqlParser.NOREPAIR:
+ case PlSqlParser.NOREPLAY:
+ case PlSqlParser.NORESETLOGS:
+ case PlSqlParser.NO_RESULT_CACHE:
+ case PlSqlParser.NOREVERSE:
+ case PlSqlParser.NO_REWRITE:
+ case PlSqlParser.NOREWRITE:
+ case PlSqlParser.NORMAL:
+ case PlSqlParser.NO_ROOT_SW_FOR_LOCAL:
+ case PlSqlParser.NOROWDEPENDENCIES:
+ case PlSqlParser.NOSCHEMACHECK:
+ case PlSqlParser.NOSEGMENT:
+ case PlSqlParser.NO_SEMIJOIN:
+ case PlSqlParser.NO_SEMI_TO_INNER:
+ case PlSqlParser.NO_SET_TO_JOIN:
+ case PlSqlParser.NOSORT:
+ case PlSqlParser.NO_SQL_TRANSLATION:
+ case PlSqlParser.NO_SQL_TUNE:
+ case PlSqlParser.NO_STAR_TRANSFORMATION:
+ case PlSqlParser.NO_STATEMENT_QUEUING:
+ case PlSqlParser.NO_STATS_GSETS:
+ case PlSqlParser.NOSTRICT:
+ case PlSqlParser.NO_SUBQUERY_PRUNING:
+ case PlSqlParser.NO_SUBSTRB_PAD:
+ case PlSqlParser.NO_SWAP_JOIN_INPUTS:
+ case PlSqlParser.NOSWITCH:
+ case PlSqlParser.NO_TABLE_LOOKUP_BY_NL:
+ case PlSqlParser.NO_TEMP_TABLE:
+ case PlSqlParser.NOTHING:
+ case PlSqlParser.NOTIFICATION:
+ case PlSqlParser.NO_TRANSFORM_DISTINCT_AGG:
+ case PlSqlParser.NO_UNNEST:
+ case PlSqlParser.NO_USE_CUBE:
+ case PlSqlParser.NO_USE_HASH_AGGREGATION:
+ case PlSqlParser.NO_USE_HASH_GBY_FOR_PUSHDOWN:
+ case PlSqlParser.NO_USE_HASH:
+ case PlSqlParser.NO_USE_INVISIBLE_INDEXES:
+ case PlSqlParser.NO_USE_MERGE:
+ case PlSqlParser.NO_USE_NL:
+ case PlSqlParser.NO_USE_VECTOR_AGGREGATION:
+ case PlSqlParser.NOVALIDATE:
+ case PlSqlParser.NO_VECTOR_TRANSFORM_DIMS:
+ case PlSqlParser.NO_VECTOR_TRANSFORM_FACT:
+ case PlSqlParser.NO_VECTOR_TRANSFORM:
+ case PlSqlParser.NO_XDB_FASTPATH_INSERT:
+ case PlSqlParser.NO_XML_DML_REWRITE:
+ case PlSqlParser.NO_XMLINDEX_REWRITE_IN_SELECT:
+ case PlSqlParser.NO_XMLINDEX_REWRITE:
+ case PlSqlParser.NO_XML_QUERY_REWRITE:
+ case PlSqlParser.NO_ZONEMAP:
+ case PlSqlParser.NTH_VALUE:
+ case PlSqlParser.NULLIF:
+ case PlSqlParser.NULLS:
+ case PlSqlParser.NUMBER:
+ case PlSqlParser.NUMERIC:
+ case PlSqlParser.NUM_INDEX_KEYS:
+ case PlSqlParser.NUMTODSINTERVAL:
+ case PlSqlParser.NUMTOYMINTERVAL:
+ case PlSqlParser.NVARCHAR2:
+ case PlSqlParser.NVL2:
+ case PlSqlParser.OBJECT2XML:
+ case PlSqlParser.OBJECT:
+ case PlSqlParser.OBJ_ID:
+ case PlSqlParser.OBJNO:
+ case PlSqlParser.OBJNO_REUSE:
+ case PlSqlParser.OCCURENCES:
+ case PlSqlParser.OFFLINE:
+ case PlSqlParser.OFF:
+ case PlSqlParser.OFFSET:
+ case PlSqlParser.OIDINDEX:
+ case PlSqlParser.OID:
+ case PlSqlParser.OLAP:
+ case PlSqlParser.OLD:
+ case PlSqlParser.OLD_PUSH_PRED:
+ case PlSqlParser.OLS:
+ case PlSqlParser.OLTP:
+ case PlSqlParser.OMIT:
+ case PlSqlParser.ONE:
+ case PlSqlParser.ONLINE:
+ case PlSqlParser.ONLY:
+ case PlSqlParser.OPAQUE:
+ case PlSqlParser.OPAQUE_TRANSFORM:
+ case PlSqlParser.OPAQUE_XCANONICAL:
+ case PlSqlParser.OPCODE:
+ case PlSqlParser.OPEN:
+ case PlSqlParser.OPERATIONS:
+ case PlSqlParser.OPERATOR:
+ case PlSqlParser.OPT_ESTIMATE:
+ case PlSqlParser.OPTIMAL:
+ case PlSqlParser.OPTIMIZE:
+ case PlSqlParser.OPTIMIZER_FEATURES_ENABLE:
+ case PlSqlParser.OPTIMIZER_GOAL:
+ case PlSqlParser.OPT_PARAM:
+ case PlSqlParser.ORA_BRANCH:
+ case PlSqlParser.ORA_CHECK_ACL:
+ case PlSqlParser.ORA_CHECK_PRIVILEGE:
+ case PlSqlParser.ORA_CLUSTERING:
+ case PlSqlParser.ORADATA:
+ case PlSqlParser.ORADEBUG:
+ case PlSqlParser.ORA_DST_AFFECTED:
+ case PlSqlParser.ORA_DST_CONVERT:
+ case PlSqlParser.ORA_DST_ERROR:
+ case PlSqlParser.ORA_GET_ACLIDS:
+ case PlSqlParser.ORA_GET_PRIVILEGES:
+ case PlSqlParser.ORA_HASH:
+ case PlSqlParser.ORA_INVOKING_USERID:
+ case PlSqlParser.ORA_INVOKING_USER:
+ case PlSqlParser.ORA_INVOKING_XS_USER_GUID:
+ case PlSqlParser.ORA_INVOKING_XS_USER:
+ case PlSqlParser.ORA_RAWCOMPARE:
+ case PlSqlParser.ORA_RAWCONCAT:
+ case PlSqlParser.ORA_ROWSCN:
+ case PlSqlParser.ORA_ROWSCN_RAW:
+ case PlSqlParser.ORA_ROWVERSION:
+ case PlSqlParser.ORA_TABVERSION:
+ case PlSqlParser.ORA_WRITE_TIME:
+ case PlSqlParser.ORDERED:
+ case PlSqlParser.ORDERED_PREDICATES:
+ case PlSqlParser.ORDINALITY:
+ case PlSqlParser.OR_EXPAND:
+ case PlSqlParser.ORGANIZATION:
+ case PlSqlParser.OR_PREDICATES:
+ case PlSqlParser.OSERROR:
+ case PlSqlParser.OTHER:
+ case PlSqlParser.OUTER_JOIN_TO_ANTI:
+ case PlSqlParser.OUTER_JOIN_TO_INNER:
+ case PlSqlParser.OUTER:
+ case PlSqlParser.OUTLINE_LEAF:
+ case PlSqlParser.OUTLINE:
+ case PlSqlParser.OUT_OF_LINE:
+ case PlSqlParser.OUT:
+ case PlSqlParser.OVERFLOW_NOMOVE:
+ case PlSqlParser.OVERFLOW:
+ case PlSqlParser.OVERLAPS:
+ case PlSqlParser.OVER:
+ case PlSqlParser.OVERRIDING:
+ case PlSqlParser.OWNER:
+ case PlSqlParser.OWNERSHIP:
+ case PlSqlParser.OWN:
+ case PlSqlParser.PACKAGE:
+ case PlSqlParser.PACKAGES:
+ case PlSqlParser.PARALLEL_ENABLE:
+ case PlSqlParser.PARALLEL_INDEX:
+ case PlSqlParser.PARALLEL:
+ case PlSqlParser.PARAMETERS:
+ case PlSqlParser.PARAM:
+ case PlSqlParser.PARENT:
+ case PlSqlParser.PARITY:
+ case PlSqlParser.PARTIAL_JOIN:
+ case PlSqlParser.PARTIALLY:
+ case PlSqlParser.PARTIAL:
+ case PlSqlParser.PARTIAL_ROLLUP_PUSHDOWN:
+ case PlSqlParser.PARTITION_HASH:
+ case PlSqlParser.PARTITION_LIST:
+ case PlSqlParser.PARTITION:
+ case PlSqlParser.PARTITION_RANGE:
+ case PlSqlParser.PARTITIONS:
+ case PlSqlParser.PARTNUMINST:
+ case PlSqlParser.PASSING:
+ case PlSqlParser.PASSWORD_GRACE_TIME:
+ case PlSqlParser.PASSWORD_LIFE_TIME:
+ case PlSqlParser.PASSWORD_LOCK_TIME:
+ case PlSqlParser.PASSWORD:
+ case PlSqlParser.PASSWORD_REUSE_MAX:
+ case PlSqlParser.PASSWORD_REUSE_TIME:
+ case PlSqlParser.PASSWORD_VERIFY_FUNCTION:
+ case PlSqlParser.PAST:
+ case PlSqlParser.PATCH:
+ case PlSqlParser.PATH:
+ case PlSqlParser.PATH_PREFIX:
+ case PlSqlParser.PATHS:
+ case PlSqlParser.PATTERN:
+ case PlSqlParser.PBL_HS_BEGIN:
+ case PlSqlParser.PBL_HS_END:
+ case PlSqlParser.PCTINCREASE:
+ case PlSqlParser.PCTTHRESHOLD:
+ case PlSqlParser.PCTUSED:
+ case PlSqlParser.PCTVERSION:
+ case PlSqlParser.PENDING:
+ case PlSqlParser.PERCENT_KEYWORD:
+ case PlSqlParser.PERCENT_RANKM:
+ case PlSqlParser.PERFORMANCE:
+ case PlSqlParser.PERIOD_KEYWORD:
+ case PlSqlParser.PERMANENT:
+ case PlSqlParser.PERMISSION:
+ case PlSqlParser.PERMUTE:
+ case PlSqlParser.PER:
+ case PlSqlParser.PFILE:
+ case PlSqlParser.PHYSICAL:
+ case PlSqlParser.PIKEY:
+ case PlSqlParser.PIPELINED:
+ case PlSqlParser.PIV_GB:
+ case PlSqlParser.PIVOT:
+ case PlSqlParser.PIV_SSF:
+ case PlSqlParser.PLACE_DISTINCT:
+ case PlSqlParser.PLACE_GROUP_BY:
+ case PlSqlParser.PLAN:
+ case PlSqlParser.PLSCOPE_SETTINGS:
+ case PlSqlParser.PLS_INTEGER:
+ case PlSqlParser.PLSQL_CCFLAGS:
+ case PlSqlParser.PLSQL_CODE_TYPE:
+ case PlSqlParser.PLSQL_DEBUG:
+ case PlSqlParser.PLSQL_OPTIMIZE_LEVEL:
+ case PlSqlParser.PLSQL_WARNINGS:
+ case PlSqlParser.PLUGGABLE:
+ case PlSqlParser.POINT:
+ case PlSqlParser.POLICY:
+ case PlSqlParser.POOL_16K:
+ case PlSqlParser.POOL_2K:
+ case PlSqlParser.POOL_32K:
+ case PlSqlParser.POOL_4K:
+ case PlSqlParser.POOL_8K:
+ case PlSqlParser.POSITIVEN:
+ case PlSqlParser.POSITIVE:
+ case PlSqlParser.POST_TRANSACTION:
+ case PlSqlParser.POWERMULTISET_BY_CARDINALITY:
+ case PlSqlParser.POWERMULTISET:
+ case PlSqlParser.POWER:
+ case PlSqlParser.PQ_CONCURRENT_UNION:
+ case PlSqlParser.PQ_DISTRIBUTE:
+ case PlSqlParser.PQ_DISTRIBUTE_WINDOW:
+ case PlSqlParser.PQ_FILTER:
+ case PlSqlParser.PQ_MAP:
+ case PlSqlParser.PQ_NOMAP:
+ case PlSqlParser.PQ_REPLICATE:
+ case PlSqlParser.PQ_SKEW:
+ case PlSqlParser.PRAGMA:
+ case PlSqlParser.PREBUILT:
+ case PlSqlParser.PRECEDES:
+ case PlSqlParser.PRECEDING:
+ case PlSqlParser.PRECISION:
+ case PlSqlParser.PRECOMPUTE_SUBQUERY:
+ case PlSqlParser.PREDICATE_REORDERS:
+ case PlSqlParser.PRELOAD:
+ case PlSqlParser.PREPARE:
+ case PlSqlParser.PRESENTNNV:
+ case PlSqlParser.PRESENT:
+ case PlSqlParser.PRESENTV:
+ case PlSqlParser.PRESERVE_OID:
+ case PlSqlParser.PRESERVE:
+ case PlSqlParser.PRETTY:
+ case PlSqlParser.PREVIOUS:
+ case PlSqlParser.PREV:
+ case PlSqlParser.PRIMARY:
+ case PlSqlParser.PRINTBLOBTOCLOB:
+ case PlSqlParser.PRIORITY:
+ case PlSqlParser.PRIVATE:
+ case PlSqlParser.PRIVATE_SGA:
+ case PlSqlParser.PRIVILEGED:
+ case PlSqlParser.PRIVILEGE:
+ case PlSqlParser.PRIVILEGES:
+ case PlSqlParser.PROCEDURAL:
+ case PlSqlParser.PROCEDURE:
+ case PlSqlParser.PROCESS:
+ case PlSqlParser.PROFILE:
+ case PlSqlParser.PROGRAM:
+ case PlSqlParser.PROJECT:
+ case PlSqlParser.PROPAGATE:
+ case PlSqlParser.PROTECTED:
+ case PlSqlParser.PROTECTION:
+ case PlSqlParser.PROXY:
+ case PlSqlParser.PRUNING:
+ case PlSqlParser.PULL_PRED:
+ case PlSqlParser.PURGE:
+ case PlSqlParser.PUSH_PRED:
+ case PlSqlParser.PUSH_SUBQ:
+ case PlSqlParser.PX_FAULT_TOLERANCE:
+ case PlSqlParser.PX_GRANULE:
+ case PlSqlParser.PX_JOIN_FILTER:
+ case PlSqlParser.QB_NAME:
+ case PlSqlParser.QUERY_BLOCK:
+ case PlSqlParser.QUERY:
+ case PlSqlParser.QUEUE_CURR:
+ case PlSqlParser.QUEUE:
+ case PlSqlParser.QUEUE_ROWP:
+ case PlSqlParser.QUIESCE:
+ case PlSqlParser.QUORUM:
+ case PlSqlParser.QUOTA:
+ case PlSqlParser.RAISE:
+ case PlSqlParser.RANDOM_LOCAL:
+ case PlSqlParser.RANDOM:
+ case PlSqlParser.RANGE:
+ case PlSqlParser.RANKM:
+ case PlSqlParser.RAPIDLY:
+ case PlSqlParser.RAW:
+ case PlSqlParser.RAWTOHEX:
+ case PlSqlParser.RAWTONHEX:
+ case PlSqlParser.RBA:
+ case PlSqlParser.RBO_OUTLINE:
+ case PlSqlParser.RDBA:
+ case PlSqlParser.READ:
+ case PlSqlParser.READS:
+ case PlSqlParser.REALM:
+ case PlSqlParser.REAL:
+ case PlSqlParser.REBALANCE:
+ case PlSqlParser.REBUILD:
+ case PlSqlParser.RECORD:
+ case PlSqlParser.RECORDS_PER_BLOCK:
+ case PlSqlParser.RECOVERABLE:
+ case PlSqlParser.RECOVER:
+ case PlSqlParser.RECOVERY:
+ case PlSqlParser.RECYCLEBIN:
+ case PlSqlParser.RECYCLE:
+ case PlSqlParser.REDACTION:
+ case PlSqlParser.REDEFINE:
+ case PlSqlParser.REDO:
+ case PlSqlParser.REDUCED:
+ case PlSqlParser.REDUNDANCY:
+ case PlSqlParser.REF_CASCADE_CURSOR:
+ case PlSqlParser.REFERENCED:
+ case PlSqlParser.REFERENCE:
+ case PlSqlParser.REFERENCES:
+ case PlSqlParser.REFERENCING:
+ case PlSqlParser.REF:
+ case PlSqlParser.REFRESH:
+ case PlSqlParser.REFTOHEX:
+ case PlSqlParser.REGEXP_COUNT:
+ case PlSqlParser.REGEXP_INSTR:
+ case PlSqlParser.REGEXP_LIKE:
+ case PlSqlParser.REGEXP_REPLACE:
+ case PlSqlParser.REGEXP_SUBSTR:
+ case PlSqlParser.REGISTER:
+ case PlSqlParser.REGR_AVGX:
+ case PlSqlParser.REGR_AVGY:
+ case PlSqlParser.REGR_COUNT:
+ case PlSqlParser.REGR_INTERCEPT:
+ case PlSqlParser.REGR_R2:
+ case PlSqlParser.REGR_SLOPE:
+ case PlSqlParser.REGR_SXX:
+ case PlSqlParser.REGR_SXY:
+ case PlSqlParser.REGR_SYY:
+ case PlSqlParser.REGULAR:
+ case PlSqlParser.REJECT:
+ case PlSqlParser.REKEY:
+ case PlSqlParser.RELATIONAL:
+ case PlSqlParser.RELOCATE:
+ case PlSqlParser.RELY:
+ case PlSqlParser.REMAINDER:
+ case PlSqlParser.REMOTE_MAPPED:
+ case PlSqlParser.REMOVE:
+ case PlSqlParser.RENAME:
+ case PlSqlParser.REPAIR:
+ case PlSqlParser.REPEAT:
+ case PlSqlParser.REPLACE:
+ case PlSqlParser.REPLICATION:
+ case PlSqlParser.REQUIRED:
+ case PlSqlParser.RESETLOGS:
+ case PlSqlParser.RESET:
+ case PlSqlParser.RESIZE:
+ case PlSqlParser.RESOLVE:
+ case PlSqlParser.RESOLVER:
+ case PlSqlParser.RESPECT:
+ case PlSqlParser.RESTART:
+ case PlSqlParser.RESTORE_AS_INTERVALS:
+ case PlSqlParser.RESTORE:
+ case PlSqlParser.RESTRICT_ALL_REF_CONS:
+ case PlSqlParser.RESTRICTED:
+ case PlSqlParser.RESTRICT_REFERENCES:
+ case PlSqlParser.RESTRICT:
+ case PlSqlParser.RESULT_CACHE:
+ case PlSqlParser.RESULT:
+ case PlSqlParser.RESUMABLE:
+ case PlSqlParser.RESUME:
+ case PlSqlParser.RETENTION:
+ case PlSqlParser.RETRY_ON_ROW_CHANGE:
+ case PlSqlParser.RETURNING:
+ case PlSqlParser.RETURN:
+ case PlSqlParser.REUSE:
+ case PlSqlParser.REVERSE:
+ case PlSqlParser.REWRITE_OR_ERROR:
+ case PlSqlParser.REWRITE:
+ case PlSqlParser.RIGHT:
+ case PlSqlParser.ROLE:
+ case PlSqlParser.ROLESET:
+ case PlSqlParser.ROLES:
+ case PlSqlParser.ROLLBACK:
+ case PlSqlParser.ROLLING:
+ case PlSqlParser.ROLLUP:
+ case PlSqlParser.ROWDEPENDENCIES:
+ case PlSqlParser.ROWID_MAPPING_TABLE:
+ case PlSqlParser.ROWID:
+ case PlSqlParser.ROWIDTOCHAR:
+ case PlSqlParser.ROWIDTONCHAR:
+ case PlSqlParser.ROW_LENGTH:
+ case PlSqlParser.ROWNUM:
+ case PlSqlParser.ROW:
+ case PlSqlParser.ROWS:
+ case PlSqlParser.RPAD:
+ case PlSqlParser.RTRIM:
+ case PlSqlParser.RULE:
+ case PlSqlParser.RULES:
+ case PlSqlParser.RUNNING:
+ case PlSqlParser.SALT:
+ case PlSqlParser.SAMPLE:
+ case PlSqlParser.SAVE_AS_INTERVALS:
+ case PlSqlParser.SAVEPOINT:
+ case PlSqlParser.SAVE:
+ case PlSqlParser.SB4:
+ case PlSqlParser.SCALE_ROWS:
+ case PlSqlParser.SCALE:
+ case PlSqlParser.SCAN_INSTANCES:
+ case PlSqlParser.SCAN:
+ case PlSqlParser.SCHEDULER:
+ case PlSqlParser.SCHEMACHECK:
+ case PlSqlParser.SCHEMA:
+ case PlSqlParser.SCN_ASCENDING:
+ case PlSqlParser.SCN:
+ case PlSqlParser.SCOPE:
+ case PlSqlParser.SCRUB:
+ case PlSqlParser.SD_ALL:
+ case PlSqlParser.SD_INHIBIT:
+ case PlSqlParser.SDO_GEOM_MBR:
+ case PlSqlParser.SD_SHOW:
+ case PlSqlParser.SEARCH:
+ case PlSqlParser.SECOND:
+ case PlSqlParser.SECRET:
+ case PlSqlParser.SECUREFILE_DBA:
+ case PlSqlParser.SECUREFILE:
+ case PlSqlParser.SECURITY:
+ case PlSqlParser.SEED:
+ case PlSqlParser.SEG_BLOCK:
+ case PlSqlParser.SEG_FILE:
+ case PlSqlParser.SEGMENT:
+ case PlSqlParser.SELECTIVITY:
+ case PlSqlParser.SELF:
+ case PlSqlParser.SEMIJOIN_DRIVER:
+ case PlSqlParser.SEMIJOIN:
+ case PlSqlParser.SEMI_TO_INNER:
+ case PlSqlParser.SEQUENCED:
+ case PlSqlParser.SEQUENCE:
+ case PlSqlParser.SEQUENTIAL:
+ case PlSqlParser.SERIALIZABLE:
+ case PlSqlParser.SERIALLY_REUSABLE:
+ case PlSqlParser.SERIAL:
+ case PlSqlParser.SERVERERROR:
+ case PlSqlParser.SERVICE_NAME_CONVERT:
+ case PlSqlParser.SERVICES:
+ case PlSqlParser.SESSION_CACHED_CURSORS:
+ case PlSqlParser.SESSION:
+ case PlSqlParser.SESSIONS_PER_USER:
+ case PlSqlParser.SESSIONTIMEZONE:
+ case PlSqlParser.SESSIONTZNAME:
+ case PlSqlParser.SET:
+ case PlSqlParser.SETS:
+ case PlSqlParser.SETTINGS:
+ case PlSqlParser.SET_TO_JOIN:
+ case PlSqlParser.SEVERE:
+ case PlSqlParser.SHARED_POOL:
+ case PlSqlParser.SHARED:
+ case PlSqlParser.SHARING:
+ case PlSqlParser.SHELFLIFE:
+ case PlSqlParser.SHOW:
+ case PlSqlParser.SHRINK:
+ case PlSqlParser.SHUTDOWN:
+ case PlSqlParser.SIBLINGS:
+ case PlSqlParser.SID:
+ case PlSqlParser.SIGNAL_COMPONENT:
+ case PlSqlParser.SIGNAL_FUNCTION:
+ case PlSqlParser.SIGN:
+ case PlSqlParser.SIGNTYPE:
+ case PlSqlParser.SIMPLE_INTEGER:
+ case PlSqlParser.SIMPLE:
+ case PlSqlParser.SINGLE:
+ case PlSqlParser.SINGLETASK:
+ case PlSqlParser.SINH:
+ case PlSqlParser.SIN:
+ case PlSqlParser.SKIP_EXT_OPTIMIZER:
+ case PlSqlParser.SKIP_:
+ case PlSqlParser.SKIP_UNQ_UNUSABLE_IDX:
+ case PlSqlParser.SKIP_UNUSABLE_INDEXES:
+ case PlSqlParser.SMALLFILE:
+ case PlSqlParser.SMALLINT:
+ case PlSqlParser.SNAPSHOT:
+ case PlSqlParser.SOME:
+ case PlSqlParser.SORT:
+ case PlSqlParser.SOUNDEX:
+ case PlSqlParser.SOURCE_FILE_DIRECTORY:
+ case PlSqlParser.SOURCE_FILE_NAME_CONVERT:
+ case PlSqlParser.SOURCE:
+ case PlSqlParser.SPACE_KEYWORD:
+ case PlSqlParser.SPECIFICATION:
+ case PlSqlParser.SPFILE:
+ case PlSqlParser.SPLIT:
+ case PlSqlParser.SPREADSHEET:
+ case PlSqlParser.SQLDATA:
+ case PlSqlParser.SQLERROR:
+ case PlSqlParser.SQLLDR:
+ case PlSqlParser.SQL:
+ case PlSqlParser.SQL_TRACE:
+ case PlSqlParser.SQL_TRANSLATION_PROFILE:
+ case PlSqlParser.SQRT:
+ case PlSqlParser.STALE:
+ case PlSqlParser.STANDALONE:
+ case PlSqlParser.STANDARD_HASH:
+ case PlSqlParser.STANDBY_MAX_DATA_DELAY:
+ case PlSqlParser.STANDBYS:
+ case PlSqlParser.STANDBY:
+ case PlSqlParser.STAR:
+ case PlSqlParser.STAR_TRANSFORMATION:
+ case PlSqlParser.STARTUP:
+ case PlSqlParser.STATEMENT_ID:
+ case PlSqlParser.STATEMENT_QUEUING:
+ case PlSqlParser.STATEMENTS:
+ case PlSqlParser.STATEMENT:
+ case PlSqlParser.STATE:
+ case PlSqlParser.STATIC:
+ case PlSqlParser.STATISTICS:
+ case PlSqlParser.STATS_BINOMIAL_TEST:
+ case PlSqlParser.STATS_CROSSTAB:
+ case PlSqlParser.STATS_F_TEST:
+ case PlSqlParser.STATS_KS_TEST:
+ case PlSqlParser.STATS_MODE:
+ case PlSqlParser.STATS_MW_TEST:
+ case PlSqlParser.STATS_ONE_WAY_ANOVA:
+ case PlSqlParser.STATS_T_TEST_INDEP:
+ case PlSqlParser.STATS_T_TEST_INDEPU:
+ case PlSqlParser.STATS_T_TEST_ONE:
+ case PlSqlParser.STATS_T_TEST_PAIRED:
+ case PlSqlParser.STATS_WSR_TEST:
+ case PlSqlParser.STDDEV_POP:
+ case PlSqlParser.STDDEV_SAMP:
+ case PlSqlParser.STOP:
+ case PlSqlParser.STORAGE:
+ case PlSqlParser.STORE:
+ case PlSqlParser.STREAMS:
+ case PlSqlParser.STREAM:
+ case PlSqlParser.STRICT:
+ case PlSqlParser.STRING:
+ case PlSqlParser.STRIPE_COLUMNS:
+ case PlSqlParser.STRIPE_WIDTH:
+ case PlSqlParser.STRIP:
+ case PlSqlParser.STRUCTURE:
+ case PlSqlParser.SUBMULTISET:
+ case PlSqlParser.SUBPARTITION_REL:
+ case PlSqlParser.SUBPARTITIONS:
+ case PlSqlParser.SUBPARTITION:
+ case PlSqlParser.SUBQUERIES:
+ case PlSqlParser.SUBQUERY_PRUNING:
+ case PlSqlParser.SUBSCRIBE:
+ case PlSqlParser.SUBSET:
+ case PlSqlParser.SUBSTITUTABLE:
+ case PlSqlParser.SUBSTR2:
+ case PlSqlParser.SUBSTR4:
+ case PlSqlParser.SUBSTRB:
+ case PlSqlParser.SUBSTRC:
+ case PlSqlParser.SUBTYPE:
+ case PlSqlParser.SUCCESSFUL:
+ case PlSqlParser.SUCCESS:
+ case PlSqlParser.SUMMARY:
+ case PlSqlParser.SUPPLEMENTAL:
+ case PlSqlParser.SUSPEND:
+ case PlSqlParser.SWAP_JOIN_INPUTS:
+ case PlSqlParser.SWITCHOVER:
+ case PlSqlParser.SWITCH:
+ case PlSqlParser.SYNCHRONOUS:
+ case PlSqlParser.SYNC:
+ case PlSqlParser.SYSASM:
+ case PlSqlParser.SYS_AUDIT:
+ case PlSqlParser.SYSAUX:
+ case PlSqlParser.SYSBACKUP:
+ case PlSqlParser.SYS_CHECKACL:
+ case PlSqlParser.SYS_CHECK_PRIVILEGE:
+ case PlSqlParser.SYS_CONNECT_BY_PATH:
+ case PlSqlParser.SYS_CONTEXT:
+ case PlSqlParser.SYSDATE:
+ case PlSqlParser.SYSDBA:
+ case PlSqlParser.SYS_DBURIGEN:
+ case PlSqlParser.SYSDG:
+ case PlSqlParser.SYS_DL_CURSOR:
+ case PlSqlParser.SYS_DM_RXFORM_CHR:
+ case PlSqlParser.SYS_DM_RXFORM_NUM:
+ case PlSqlParser.SYS_DOM_COMPARE:
+ case PlSqlParser.SYS_DST_PRIM2SEC:
+ case PlSqlParser.SYS_DST_SEC2PRIM:
+ case PlSqlParser.SYS_ET_BFILE_TO_RAW:
+ case PlSqlParser.SYS_ET_BLOB_TO_IMAGE:
+ case PlSqlParser.SYS_ET_IMAGE_TO_BLOB:
+ case PlSqlParser.SYS_ET_RAW_TO_BFILE:
+ case PlSqlParser.SYS_EXTPDTXT:
+ case PlSqlParser.SYS_EXTRACT_UTC:
+ case PlSqlParser.SYS_FBT_INSDEL:
+ case PlSqlParser.SYS_FILTER_ACLS:
+ case PlSqlParser.SYS_FNMATCHES:
+ case PlSqlParser.SYS_FNREPLACE:
+ case PlSqlParser.SYS_GET_ACLIDS:
+ case PlSqlParser.SYS_GET_COL_ACLIDS:
+ case PlSqlParser.SYS_GET_PRIVILEGES:
+ case PlSqlParser.SYS_GETTOKENID:
+ case PlSqlParser.SYS_GETXTIVAL:
+ case PlSqlParser.SYS_GUID:
+ case PlSqlParser.SYSGUID:
+ case PlSqlParser.SYSKM:
+ case PlSqlParser.SYS_MAKE_XMLNODEID:
+ case PlSqlParser.SYS_MAKEXML:
+ case PlSqlParser.SYS_MKXMLATTR:
+ case PlSqlParser.SYS_MKXTI:
+ case PlSqlParser.SYSOBJ:
+ case PlSqlParser.SYS_OP_ADT2BIN:
+ case PlSqlParser.SYS_OP_ADTCONS:
+ case PlSqlParser.SYS_OP_ALSCRVAL:
+ case PlSqlParser.SYS_OP_ATG:
+ case PlSqlParser.SYS_OP_BIN2ADT:
+ case PlSqlParser.SYS_OP_BITVEC:
+ case PlSqlParser.SYS_OP_BL2R:
+ case PlSqlParser.SYS_OP_BLOOM_FILTER_LIST:
+ case PlSqlParser.SYS_OP_BLOOM_FILTER:
+ case PlSqlParser.SYS_OP_C2C:
+ case PlSqlParser.SYS_OP_CAST:
+ case PlSqlParser.SYS_OP_CEG:
+ case PlSqlParser.SYS_OP_CL2C:
+ case PlSqlParser.SYS_OP_COMBINED_HASH:
+ case PlSqlParser.SYS_OP_COMP:
+ case PlSqlParser.SYS_OP_CONVERT:
+ case PlSqlParser.SYS_OP_COUNTCHG:
+ case PlSqlParser.SYS_OP_CSCONV:
+ case PlSqlParser.SYS_OP_CSCONVTEST:
+ case PlSqlParser.SYS_OP_CSR:
+ case PlSqlParser.SYS_OP_CSX_PATCH:
+ case PlSqlParser.SYS_OP_CYCLED_SEQ:
+ case PlSqlParser.SYS_OP_DECOMP:
+ case PlSqlParser.SYS_OP_DESCEND:
+ case PlSqlParser.SYS_OP_DISTINCT:
+ case PlSqlParser.SYS_OP_DRA:
+ case PlSqlParser.SYS_OP_DUMP:
+ case PlSqlParser.SYS_OP_DV_CHECK:
+ case PlSqlParser.SYS_OP_ENFORCE_NOT_NULL:
+ case PlSqlParser.SYSOPER:
+ case PlSqlParser.SYS_OP_EXTRACT:
+ case PlSqlParser.SYS_OP_GROUPING:
+ case PlSqlParser.SYS_OP_GUID:
+ case PlSqlParser.SYS_OP_HASH:
+ case PlSqlParser.SYS_OP_IIX:
+ case PlSqlParser.SYS_OP_ITR:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_CREATE:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_FILTER_LIST:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_FILTER:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_SUCCEEDED:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_USE:
+ case PlSqlParser.SYS_OP_LBID:
+ case PlSqlParser.SYS_OP_LOBLOC2BLOB:
+ case PlSqlParser.SYS_OP_LOBLOC2CLOB:
+ case PlSqlParser.SYS_OP_LOBLOC2ID:
+ case PlSqlParser.SYS_OP_LOBLOC2NCLOB:
+ case PlSqlParser.SYS_OP_LOBLOC2TYP:
+ case PlSqlParser.SYS_OP_LSVI:
+ case PlSqlParser.SYS_OP_LVL:
+ case PlSqlParser.SYS_OP_MAKEOID:
+ case PlSqlParser.SYS_OP_MAP_NONNULL:
+ case PlSqlParser.SYS_OP_MSR:
+ case PlSqlParser.SYS_OP_NICOMBINE:
+ case PlSqlParser.SYS_OP_NIEXTRACT:
+ case PlSqlParser.SYS_OP_NII:
+ case PlSqlParser.SYS_OP_NIX:
+ case PlSqlParser.SYS_OP_NOEXPAND:
+ case PlSqlParser.SYS_OP_NTCIMG:
+ case PlSqlParser.SYS_OP_NUMTORAW:
+ case PlSqlParser.SYS_OP_OIDVALUE:
+ case PlSqlParser.SYS_OP_OPNSIZE:
+ case PlSqlParser.SYS_OP_PAR_1:
+ case PlSqlParser.SYS_OP_PARGID_1:
+ case PlSqlParser.SYS_OP_PARGID:
+ case PlSqlParser.SYS_OP_PAR:
+ case PlSqlParser.SYS_OP_PART_ID:
+ case PlSqlParser.SYS_OP_PIVOT:
+ case PlSqlParser.SYS_OP_R2O:
+ case PlSqlParser.SYS_OP_RAWTONUM:
+ case PlSqlParser.SYS_OP_RDTM:
+ case PlSqlParser.SYS_OP_REF:
+ case PlSqlParser.SYS_OP_RMTD:
+ case PlSqlParser.SYS_OP_ROWIDTOOBJ:
+ case PlSqlParser.SYS_OP_RPB:
+ case PlSqlParser.SYS_OPTLOBPRBSC:
+ case PlSqlParser.SYS_OP_TOSETID:
+ case PlSqlParser.SYS_OP_TPR:
+ case PlSqlParser.SYS_OP_TRTB:
+ case PlSqlParser.SYS_OPTXICMP:
+ case PlSqlParser.SYS_OPTXQCASTASNQ:
+ case PlSqlParser.SYS_OP_UNDESCEND:
+ case PlSqlParser.SYS_OP_VECAND:
+ case PlSqlParser.SYS_OP_VECBIT:
+ case PlSqlParser.SYS_OP_VECOR:
+ case PlSqlParser.SYS_OP_VECXOR:
+ case PlSqlParser.SYS_OP_VERSION:
+ case PlSqlParser.SYS_OP_VREF:
+ case PlSqlParser.SYS_OP_VVD:
+ case PlSqlParser.SYS_OP_XMLCONS_FOR_CSX:
+ case PlSqlParser.SYS_OP_XPTHATG:
+ case PlSqlParser.SYS_OP_XPTHIDX:
+ case PlSqlParser.SYS_OP_XPTHOP:
+ case PlSqlParser.SYS_OP_XTXT2SQLT:
+ case PlSqlParser.SYS_OP_ZONE_ID:
+ case PlSqlParser.SYS_ORDERKEY_DEPTH:
+ case PlSqlParser.SYS_ORDERKEY_MAXCHILD:
+ case PlSqlParser.SYS_ORDERKEY_PARENT:
+ case PlSqlParser.SYS_PARALLEL_TXN:
+ case PlSqlParser.SYS_PATHID_IS_ATTR:
+ case PlSqlParser.SYS_PATHID_IS_NMSPC:
+ case PlSqlParser.SYS_PATHID_LASTNAME:
+ case PlSqlParser.SYS_PATHID_LASTNMSPC:
+ case PlSqlParser.SYS_PATH_REVERSE:
+ case PlSqlParser.SYS_PXQEXTRACT:
+ case PlSqlParser.SYS_RAW_TO_XSID:
+ case PlSqlParser.SYS_RID_ORDER:
+ case PlSqlParser.SYS_ROW_DELTA:
+ case PlSqlParser.SYS_SC_2_XMLT:
+ case PlSqlParser.SYS_SYNRCIREDO:
+ case PlSqlParser.SYSTEM_DEFINED:
+ case PlSqlParser.SYSTEM:
+ case PlSqlParser.SYSTIMESTAMP:
+ case PlSqlParser.SYS_TYPEID:
+ case PlSqlParser.SYS_UMAKEXML:
+ case PlSqlParser.SYS_XMLANALYZE:
+ case PlSqlParser.SYS_XMLCONTAINS:
+ case PlSqlParser.SYS_XMLCONV:
+ case PlSqlParser.SYS_XMLEXNSURI:
+ case PlSqlParser.SYS_XMLGEN:
+ case PlSqlParser.SYS_XMLI_LOC_ISNODE:
+ case PlSqlParser.SYS_XMLI_LOC_ISTEXT:
+ case PlSqlParser.SYS_XMLINSTR:
+ case PlSqlParser.SYS_XMLLOCATOR_GETSVAL:
+ case PlSqlParser.SYS_XMLNODEID_GETCID:
+ case PlSqlParser.SYS_XMLNODEID_GETLOCATOR:
+ case PlSqlParser.SYS_XMLNODEID_GETOKEY:
+ case PlSqlParser.SYS_XMLNODEID_GETPATHID:
+ case PlSqlParser.SYS_XMLNODEID_GETPTRID:
+ case PlSqlParser.SYS_XMLNODEID_GETRID:
+ case PlSqlParser.SYS_XMLNODEID_GETSVAL:
+ case PlSqlParser.SYS_XMLNODEID_GETTID:
+ case PlSqlParser.SYS_XMLNODEID:
+ case PlSqlParser.SYS_XMLT_2_SC:
+ case PlSqlParser.SYS_XMLTRANSLATE:
+ case PlSqlParser.SYS_XMLTYPE2SQL:
+ case PlSqlParser.SYS_XQ_ASQLCNV:
+ case PlSqlParser.SYS_XQ_ATOMCNVCHK:
+ case PlSqlParser.SYS_XQBASEURI:
+ case PlSqlParser.SYS_XQCASTABLEERRH:
+ case PlSqlParser.SYS_XQCODEP2STR:
+ case PlSqlParser.SYS_XQCODEPEQ:
+ case PlSqlParser.SYS_XQCON2SEQ:
+ case PlSqlParser.SYS_XQCONCAT:
+ case PlSqlParser.SYS_XQDELETE:
+ case PlSqlParser.SYS_XQDFLTCOLATION:
+ case PlSqlParser.SYS_XQDOC:
+ case PlSqlParser.SYS_XQDOCURI:
+ case PlSqlParser.SYS_XQDURDIV:
+ case PlSqlParser.SYS_XQED4URI:
+ case PlSqlParser.SYS_XQENDSWITH:
+ case PlSqlParser.SYS_XQERRH:
+ case PlSqlParser.SYS_XQERR:
+ case PlSqlParser.SYS_XQESHTMLURI:
+ case PlSqlParser.SYS_XQEXLOBVAL:
+ case PlSqlParser.SYS_XQEXSTWRP:
+ case PlSqlParser.SYS_XQEXTRACT:
+ case PlSqlParser.SYS_XQEXTRREF:
+ case PlSqlParser.SYS_XQEXVAL:
+ case PlSqlParser.SYS_XQFB2STR:
+ case PlSqlParser.SYS_XQFNBOOL:
+ case PlSqlParser.SYS_XQFNCMP:
+ case PlSqlParser.SYS_XQFNDATIM:
+ case PlSqlParser.SYS_XQFNLNAME:
+ case PlSqlParser.SYS_XQFNNM:
+ case PlSqlParser.SYS_XQFNNSURI:
+ case PlSqlParser.SYS_XQFNPREDTRUTH:
+ case PlSqlParser.SYS_XQFNQNM:
+ case PlSqlParser.SYS_XQFNROOT:
+ case PlSqlParser.SYS_XQFORMATNUM:
+ case PlSqlParser.SYS_XQFTCONTAIN:
+ case PlSqlParser.SYS_XQFUNCR:
+ case PlSqlParser.SYS_XQGETCONTENT:
+ case PlSqlParser.SYS_XQINDXOF:
+ case PlSqlParser.SYS_XQINSERT:
+ case PlSqlParser.SYS_XQINSPFX:
+ case PlSqlParser.SYS_XQIRI2URI:
+ case PlSqlParser.SYS_XQLANG:
+ case PlSqlParser.SYS_XQLLNMFRMQNM:
+ case PlSqlParser.SYS_XQMKNODEREF:
+ case PlSqlParser.SYS_XQNILLED:
+ case PlSqlParser.SYS_XQNODENAME:
+ case PlSqlParser.SYS_XQNORMSPACE:
+ case PlSqlParser.SYS_XQNORMUCODE:
+ case PlSqlParser.SYS_XQ_NRNG:
+ case PlSqlParser.SYS_XQNSP4PFX:
+ case PlSqlParser.SYS_XQNSPFRMQNM:
+ case PlSqlParser.SYS_XQPFXFRMQNM:
+ case PlSqlParser.SYS_XQ_PKSQL2XML:
+ case PlSqlParser.SYS_XQPOLYABS:
+ case PlSqlParser.SYS_XQPOLYADD:
+ case PlSqlParser.SYS_XQPOLYCEL:
+ case PlSqlParser.SYS_XQPOLYCSTBL:
+ case PlSqlParser.SYS_XQPOLYCST:
+ case PlSqlParser.SYS_XQPOLYDIV:
+ case PlSqlParser.SYS_XQPOLYFLR:
+ case PlSqlParser.SYS_XQPOLYMOD:
+ case PlSqlParser.SYS_XQPOLYMUL:
+ case PlSqlParser.SYS_XQPOLYRND:
+ case PlSqlParser.SYS_XQPOLYSQRT:
+ case PlSqlParser.SYS_XQPOLYSUB:
+ case PlSqlParser.SYS_XQPOLYUMUS:
+ case PlSqlParser.SYS_XQPOLYUPLS:
+ case PlSqlParser.SYS_XQPOLYVEQ:
+ case PlSqlParser.SYS_XQPOLYVGE:
+ case PlSqlParser.SYS_XQPOLYVGT:
+ case PlSqlParser.SYS_XQPOLYVLE:
+ case PlSqlParser.SYS_XQPOLYVLT:
+ case PlSqlParser.SYS_XQPOLYVNE:
+ case PlSqlParser.SYS_XQREF2VAL:
+ case PlSqlParser.SYS_XQRENAME:
+ case PlSqlParser.SYS_XQREPLACE:
+ case PlSqlParser.SYS_XQRESVURI:
+ case PlSqlParser.SYS_XQRNDHALF2EVN:
+ case PlSqlParser.SYS_XQRSLVQNM:
+ case PlSqlParser.SYS_XQRYENVPGET:
+ case PlSqlParser.SYS_XQRYVARGET:
+ case PlSqlParser.SYS_XQRYWRP:
+ case PlSqlParser.SYS_XQSEQ2CON4XC:
+ case PlSqlParser.SYS_XQSEQ2CON:
+ case PlSqlParser.SYS_XQSEQDEEPEQ:
+ case PlSqlParser.SYS_XQSEQINSB:
+ case PlSqlParser.SYS_XQSEQRM:
+ case PlSqlParser.SYS_XQSEQRVS:
+ case PlSqlParser.SYS_XQSEQSUB:
+ case PlSqlParser.SYS_XQSEQTYPMATCH:
+ case PlSqlParser.SYS_XQSTARTSWITH:
+ case PlSqlParser.SYS_XQSTATBURI:
+ case PlSqlParser.SYS_XQSTR2CODEP:
+ case PlSqlParser.SYS_XQSTRJOIN:
+ case PlSqlParser.SYS_XQSUBSTRAFT:
+ case PlSqlParser.SYS_XQSUBSTRBEF:
+ case PlSqlParser.SYS_XQTOKENIZE:
+ case PlSqlParser.SYS_XQTREATAS:
+ case PlSqlParser.SYS_XQ_UPKXML2SQL:
+ case PlSqlParser.SYS_XQXFORM:
+ case PlSqlParser.SYS_XSID_TO_RAW:
+ case PlSqlParser.SYS_ZMAP_FILTER:
+ case PlSqlParser.SYS_ZMAP_REFRESH:
+ case PlSqlParser.TABLE_LOOKUP_BY_NL:
+ case PlSqlParser.TABLESPACE_NO:
+ case PlSqlParser.TABLESPACE:
+ case PlSqlParser.TABLES:
+ case PlSqlParser.TABLE_STATS:
+ case PlSqlParser.TABLE:
+ case PlSqlParser.TABNO:
+ case PlSqlParser.TAG:
+ case PlSqlParser.TANH:
+ case PlSqlParser.TAN:
+ case PlSqlParser.TBLORIDXPARTNUM:
+ case PlSqlParser.TEMPFILE:
+ case PlSqlParser.TEMPLATE:
+ case PlSqlParser.TEMPORARY:
+ case PlSqlParser.TEMP_TABLE:
+ case PlSqlParser.TEST:
+ case PlSqlParser.TEXT:
+ case PlSqlParser.THAN:
+ case PlSqlParser.THEN:
+ case PlSqlParser.THE:
+ case PlSqlParser.THREAD:
+ case PlSqlParser.THROUGH:
+ case PlSqlParser.TIER:
+ case PlSqlParser.TIES:
+ case PlSqlParser.TIMEOUT:
+ case PlSqlParser.TIMESTAMP_LTZ_UNCONSTRAINED:
+ case PlSqlParser.TIMESTAMP:
+ case PlSqlParser.TIMESTAMP_TZ_UNCONSTRAINED:
+ case PlSqlParser.TIMESTAMP_UNCONSTRAINED:
+ case PlSqlParser.TIMES:
+ case PlSqlParser.TIME:
+ case PlSqlParser.TIMEZONE_ABBR:
+ case PlSqlParser.TIMEZONE_HOUR:
+ case PlSqlParser.TIMEZONE_MINUTE:
+ case PlSqlParser.TIMEZONE_OFFSET:
+ case PlSqlParser.TIMEZONE_REGION:
+ case PlSqlParser.TIME_ZONE:
+ case PlSqlParser.TIV_GB:
+ case PlSqlParser.TIV_SSF:
+ case PlSqlParser.TO_ACLID:
+ case PlSqlParser.TO_BINARY_DOUBLE:
+ case PlSqlParser.TO_BINARY_FLOAT:
+ case PlSqlParser.TO_BLOB:
+ case PlSqlParser.TO_CLOB:
+ case PlSqlParser.TO_DSINTERVAL:
+ case PlSqlParser.TO_LOB:
+ case PlSqlParser.TO_MULTI_BYTE:
+ case PlSqlParser.TO_NCHAR:
+ case PlSqlParser.TO_NCLOB:
+ case PlSqlParser.TO_NUMBER:
+ case PlSqlParser.TOPLEVEL:
+ case PlSqlParser.TO_SINGLE_BYTE:
+ case PlSqlParser.TO_TIMESTAMP:
+ case PlSqlParser.TO_TIMESTAMP_TZ:
+ case PlSqlParser.TO_TIME:
+ case PlSqlParser.TO_TIME_TZ:
+ case PlSqlParser.TO_YMINTERVAL:
+ case PlSqlParser.TRACE:
+ case PlSqlParser.TRACING:
+ case PlSqlParser.TRACKING:
+ case PlSqlParser.TRAILING:
+ case PlSqlParser.TRANSACTION:
+ case PlSqlParser.TRANSFORM_DISTINCT_AGG:
+ case PlSqlParser.TRANSITIONAL:
+ case PlSqlParser.TRANSITION:
+ case PlSqlParser.TRANSLATE:
+ case PlSqlParser.TRANSLATION:
+ case PlSqlParser.TREAT:
+ case PlSqlParser.TRIGGERS:
+ case PlSqlParser.TRIGGER:
+ case PlSqlParser.TRUE:
+ case PlSqlParser.TRUNCATE:
+ case PlSqlParser.TRUNC:
+ case PlSqlParser.TRUSTED:
+ case PlSqlParser.TRUST:
+ case PlSqlParser.TUNING:
+ case PlSqlParser.TX:
+ case PlSqlParser.TYPES:
+ case PlSqlParser.TYPE:
+ case PlSqlParser.TZ_OFFSET:
+ case PlSqlParser.UB2:
+ case PlSqlParser.UBA:
+ case PlSqlParser.UCS2:
+ case PlSqlParser.UID:
+ case PlSqlParser.UNARCHIVED:
+ case PlSqlParser.UNBOUNDED:
+ case PlSqlParser.UNBOUND:
+ case PlSqlParser.UNCONDITIONAL:
+ case PlSqlParser.UNDER:
+ case PlSqlParser.UNDO:
+ case PlSqlParser.UNDROP:
+ case PlSqlParser.UNIFORM:
+ case PlSqlParser.UNISTR:
+ case PlSqlParser.UNLIMITED:
+ case PlSqlParser.UNLOAD:
+ case PlSqlParser.UNLOCK:
+ case PlSqlParser.UNMATCHED:
+ case PlSqlParser.UNNEST_INNERJ_DISTINCT_VIEW:
+ case PlSqlParser.UNNEST_NOSEMIJ_NODISTINCTVIEW:
+ case PlSqlParser.UNNEST_SEMIJ_VIEW:
+ case PlSqlParser.UNNEST:
+ case PlSqlParser.UNPACKED:
+ case PlSqlParser.UNPIVOT:
+ case PlSqlParser.UNPLUG:
+ case PlSqlParser.UNPROTECTED:
+ case PlSqlParser.UNQUIESCE:
+ case PlSqlParser.UNRECOVERABLE:
+ case PlSqlParser.UNRESTRICTED:
+ case PlSqlParser.UNSUBSCRIBE:
+ case PlSqlParser.UNTIL:
+ case PlSqlParser.UNUSABLE:
+ case PlSqlParser.UNUSED:
+ case PlSqlParser.UPDATABLE:
+ case PlSqlParser.UPDATED:
+ case PlSqlParser.UPDATEXML:
+ case PlSqlParser.UPD_INDEXES:
+ case PlSqlParser.UPD_JOININDEX:
+ case PlSqlParser.UPGRADE:
+ case PlSqlParser.UPPER:
+ case PlSqlParser.UPSERT:
+ case PlSqlParser.UROWID:
+ case PlSqlParser.USABLE:
+ case PlSqlParser.USAGE:
+ case PlSqlParser.USE_ANTI:
+ case PlSqlParser.USE_CONCAT:
+ case PlSqlParser.USE_CUBE:
+ case PlSqlParser.USE_HASH_AGGREGATION:
+ case PlSqlParser.USE_HASH_GBY_FOR_PUSHDOWN:
+ case PlSqlParser.USE_HASH:
+ case PlSqlParser.USE_HIDDEN_PARTITIONS:
+ case PlSqlParser.USE_INVISIBLE_INDEXES:
+ case PlSqlParser.USE_MERGE_CARTESIAN:
+ case PlSqlParser.USE_MERGE:
+ case PlSqlParser.USE_NL:
+ case PlSqlParser.USE_NL_WITH_INDEX:
+ case PlSqlParser.USE_PRIVATE_OUTLINES:
+ case PlSqlParser.USER_DATA:
+ case PlSqlParser.USER_DEFINED:
+ case PlSqlParser.USERENV:
+ case PlSqlParser.USERGROUP:
+ case PlSqlParser.USER_RECYCLEBIN:
+ case PlSqlParser.USERS:
+ case PlSqlParser.USER_TABLESPACES:
+ case PlSqlParser.USER:
+ case PlSqlParser.USE_SEMI:
+ case PlSqlParser.USE_STORED_OUTLINES:
+ case PlSqlParser.USE_TTT_FOR_GSETS:
+ case PlSqlParser.USE:
+ case PlSqlParser.USE_VECTOR_AGGREGATION:
+ case PlSqlParser.USE_WEAK_NAME_RESL:
+ case PlSqlParser.USING_NO_EXPAND:
+ case PlSqlParser.USING:
+ case PlSqlParser.UTF16BE:
+ case PlSqlParser.UTF16LE:
+ case PlSqlParser.UTF32:
+ case PlSqlParser.UTF8:
+ case PlSqlParser.V1:
+ case PlSqlParser.V2:
+ case PlSqlParser.VALIDATE:
+ case PlSqlParser.VALIDATION:
+ case PlSqlParser.VALID_TIME_END:
+ case PlSqlParser.VALUE:
+ case PlSqlParser.VARCHAR2:
+ case PlSqlParser.VARCHAR:
+ case PlSqlParser.VARIABLE:
+ case PlSqlParser.VAR_POP:
+ case PlSqlParser.VARRAYS:
+ case PlSqlParser.VARRAY:
+ case PlSqlParser.VAR_SAMP:
+ case PlSqlParser.VARYING:
+ case PlSqlParser.VECTOR_READ_TRACE:
+ case PlSqlParser.VECTOR_READ:
+ case PlSqlParser.VECTOR_TRANSFORM_DIMS:
+ case PlSqlParser.VECTOR_TRANSFORM_FACT:
+ case PlSqlParser.VECTOR_TRANSFORM:
+ case PlSqlParser.VERIFIER:
+ case PlSqlParser.VERIFY:
+ case PlSqlParser.VERSIONING:
+ case PlSqlParser.VERSIONS_ENDSCN:
+ case PlSqlParser.VERSIONS_ENDTIME:
+ case PlSqlParser.VERSIONS_OPERATION:
+ case PlSqlParser.VERSIONS_STARTSCN:
+ case PlSqlParser.VERSIONS_STARTTIME:
+ case PlSqlParser.VERSIONS:
+ case PlSqlParser.VERSIONS_XID:
+ case PlSqlParser.VERSION:
+ case PlSqlParser.VIOLATION:
+ case PlSqlParser.VIRTUAL:
+ case PlSqlParser.VISIBILITY:
+ case PlSqlParser.VISIBLE:
+ case PlSqlParser.VOLUME:
+ case PlSqlParser.VSIZE:
+ case PlSqlParser.WAIT:
+ case PlSqlParser.WALLET:
+ case PlSqlParser.WARNING:
+ case PlSqlParser.WEEKS:
+ case PlSqlParser.WEEK:
+ case PlSqlParser.WELLFORMED:
+ case PlSqlParser.WHENEVER:
+ case PlSqlParser.WHEN:
+ case PlSqlParser.WHILE:
+ case PlSqlParser.WHITESPACE:
+ case PlSqlParser.WIDTH_BUCKET:
+ case PlSqlParser.WITHIN:
+ case PlSqlParser.WITHOUT:
+ case PlSqlParser.WITH_PLSQL:
+ case PlSqlParser.WORK:
+ case PlSqlParser.WRAPPED:
+ case PlSqlParser.WRAPPER:
+ case PlSqlParser.WRITE:
+ case PlSqlParser.XDB_FASTPATH_INSERT:
+ case PlSqlParser.X_DYN_PRUNE:
+ case PlSqlParser.XID:
+ case PlSqlParser.XML2OBJECT:
+ case PlSqlParser.XMLAGG:
+ case PlSqlParser.XMLATTRIBUTES:
+ case PlSqlParser.XMLCAST:
+ case PlSqlParser.XMLCDATA:
+ case PlSqlParser.XMLCOLATTVAL:
+ case PlSqlParser.XMLCOMMENT:
+ case PlSqlParser.XMLCONCAT:
+ case PlSqlParser.XMLDIFF:
+ case PlSqlParser.XML_DML_RWT_STMT:
+ case PlSqlParser.XMLELEMENT:
+ case PlSqlParser.XMLEXISTS2:
+ case PlSqlParser.XMLEXISTS:
+ case PlSqlParser.XMLFOREST:
+ case PlSqlParser.XMLINDEX_REWRITE_IN_SELECT:
+ case PlSqlParser.XMLINDEX_REWRITE:
+ case PlSqlParser.XMLINDEX_SEL_IDX_TBL:
+ case PlSqlParser.XMLISNODE:
+ case PlSqlParser.XMLISVALID:
+ case PlSqlParser.XMLNAMESPACES:
+ case PlSqlParser.XMLPARSE:
+ case PlSqlParser.XMLPATCH:
+ case PlSqlParser.XMLPI:
+ case PlSqlParser.XMLQUERYVAL:
+ case PlSqlParser.XMLQUERY:
+ case PlSqlParser.XMLROOT:
+ case PlSqlParser.XMLSCHEMA:
+ case PlSqlParser.XMLSERIALIZE:
+ case PlSqlParser.XMLTABLE:
+ case PlSqlParser.XMLTRANSFORMBLOB:
+ case PlSqlParser.XMLTRANSFORM:
+ case PlSqlParser.XMLTYPE:
+ case PlSqlParser.XML:
+ case PlSqlParser.XPATHTABLE:
+ case PlSqlParser.XS_SYS_CONTEXT:
+ case PlSqlParser.XS:
+ case PlSqlParser.YEARS:
+ case PlSqlParser.YEAR:
+ case PlSqlParser.YES:
+ case PlSqlParser.YMINTERVAL_UNCONSTRAINED:
+ case PlSqlParser.ZONEMAP:
+ case PlSqlParser.ZONE:
+ case PlSqlParser.PREDICTION:
+ case PlSqlParser.PREDICTION_BOUNDS:
+ case PlSqlParser.PREDICTION_COST:
+ case PlSqlParser.PREDICTION_DETAILS:
+ case PlSqlParser.PREDICTION_PROBABILITY:
+ case PlSqlParser.PREDICTION_SET:
+ case PlSqlParser.CUME_DIST:
+ case PlSqlParser.DENSE_RANK:
+ case PlSqlParser.LISTAGG:
+ case PlSqlParser.PERCENT_RANK:
+ case PlSqlParser.PERCENTILE_CONT:
+ case PlSqlParser.PERCENTILE_DISC:
+ case PlSqlParser.RANK:
+ case PlSqlParser.AVG:
+ case PlSqlParser.CORR:
+ case PlSqlParser.COVAR_:
+ case PlSqlParser.LAG:
+ case PlSqlParser.LEAD:
+ case PlSqlParser.MAX:
+ case PlSqlParser.MEDIAN:
+ case PlSqlParser.MIN:
+ case PlSqlParser.NTILE:
+ case PlSqlParser.NVL:
+ case PlSqlParser.RATIO_TO_REPORT:
+ case PlSqlParser.REGR_:
+ case PlSqlParser.ROUND:
+ case PlSqlParser.ROW_NUMBER:
+ case PlSqlParser.SUBSTR:
+ case PlSqlParser.TO_CHAR:
+ case PlSqlParser.TRIM:
+ case PlSqlParser.SUM:
+ case PlSqlParser.STDDEV:
+ case PlSqlParser.VAR_:
+ case PlSqlParser.VARIANCE:
+ case PlSqlParser.LEAST:
+ case PlSqlParser.GREATEST:
+ case PlSqlParser.TO_DATE:
+ case PlSqlParser.PERIOD:
+ case PlSqlParser.DELIMITED_ID:
+ case PlSqlParser.INTRODUCER:
+ case PlSqlParser.REGULAR_ID:
+ this.state = 2299;
+ this.attribute_definition();
+ break;
+ case PlSqlParser.LEFT_PAREN:
+ this.state = 2300;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 2301;
+ this.attribute_definition();
+ this.state = 2306;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 2302;
+ this.match(PlSqlParser.COMMA);
+ this.state = 2303;
+ this.attribute_definition();
+ this.state = 2308;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 2309;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Attribute_definitionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_attribute_definition;
+ return this;
+}
+
+Attribute_definitionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Attribute_definitionContext.prototype.constructor = Attribute_definitionContext;
+
+Attribute_definitionContext.prototype.attribute_name = function() {
+ return this.getTypedRuleContext(Attribute_nameContext,0);
+};
+
+Attribute_definitionContext.prototype.type_spec = function() {
+ return this.getTypedRuleContext(Type_specContext,0);
+};
+
+Attribute_definitionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAttribute_definition(this);
+ }
+};
+
+Attribute_definitionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAttribute_definition(this);
+ }
+};
+
+Attribute_definitionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAttribute_definition(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Attribute_definitionContext = Attribute_definitionContext;
+
+PlSqlParser.prototype.attribute_definition = function() {
+
+ var localctx = new Attribute_definitionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 100, PlSqlParser.RULE_attribute_definition);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2313;
+ this.attribute_name();
+ this.state = 2315;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if((((_la) & ~0x1f) == 0 && ((1 << _la) & ((1 << PlSqlParser.ABORT) | (1 << PlSqlParser.ABS) | (1 << PlSqlParser.ACCESS) | (1 << PlSqlParser.ACCESSED) | (1 << PlSqlParser.ACCOUNT) | (1 << PlSqlParser.ACL) | (1 << PlSqlParser.ACOS) | (1 << PlSqlParser.ACTION) | (1 << PlSqlParser.ACTIONS) | (1 << PlSqlParser.ACTIVATE) | (1 << PlSqlParser.ACTIVE) | (1 << PlSqlParser.ACTIVE_COMPONENT) | (1 << PlSqlParser.ACTIVE_DATA) | (1 << PlSqlParser.ACTIVE_FUNCTION) | (1 << PlSqlParser.ACTIVE_TAG) | (1 << PlSqlParser.ACTIVITY) | (1 << PlSqlParser.ADAPTIVE_PLAN) | (1 << PlSqlParser.ADD) | (1 << PlSqlParser.ADD_COLUMN) | (1 << PlSqlParser.ADD_GROUP) | (1 << PlSqlParser.ADD_MONTHS) | (1 << PlSqlParser.ADJ_DATE) | (1 << PlSqlParser.ADMIN) | (1 << PlSqlParser.ADMINISTER) | (1 << PlSqlParser.ADMINISTRATOR) | (1 << PlSqlParser.ADVANCED) | (1 << PlSqlParser.ADVISE) | (1 << PlSqlParser.ADVISOR) | (1 << PlSqlParser.AFD_DISKSTRING) | (1 << PlSqlParser.AFTER) | (1 << PlSqlParser.AGENT))) !== 0) || ((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (PlSqlParser.AGGREGATE - 32)) | (1 << (PlSqlParser.A_LETTER - 32)) | (1 << (PlSqlParser.ALIAS - 32)) | (1 << (PlSqlParser.ALLOCATE - 32)) | (1 << (PlSqlParser.ALLOW - 32)) | (1 << (PlSqlParser.ALL_ROWS - 32)) | (1 << (PlSqlParser.ALWAYS - 32)) | (1 << (PlSqlParser.ANALYZE - 32)) | (1 << (PlSqlParser.ANCILLARY - 32)) | (1 << (PlSqlParser.AND_EQUAL - 32)) | (1 << (PlSqlParser.ANOMALY - 32)) | (1 << (PlSqlParser.ANSI_REARCH - 32)) | (1 << (PlSqlParser.ANTIJOIN - 32)) | (1 << (PlSqlParser.ANYSCHEMA - 32)) | (1 << (PlSqlParser.APPEND - 32)) | (1 << (PlSqlParser.APPENDCHILDXML - 32)) | (1 << (PlSqlParser.APPEND_VALUES - 32)) | (1 << (PlSqlParser.APPLICATION - 32)) | (1 << (PlSqlParser.APPLY - 32)) | (1 << (PlSqlParser.APPROX_COUNT_DISTINCT - 32)) | (1 << (PlSqlParser.ARCHIVAL - 32)) | (1 << (PlSqlParser.ARCHIVE - 32)) | (1 << (PlSqlParser.ARCHIVED - 32)) | (1 << (PlSqlParser.ARCHIVELOG - 32)) | (1 << (PlSqlParser.ARRAY - 32)) | (1 << (PlSqlParser.ASCII - 32)))) !== 0) || ((((_la - 64)) & ~0x1f) == 0 && ((1 << (_la - 64)) & ((1 << (PlSqlParser.ASCIISTR - 64)) | (1 << (PlSqlParser.ASIN - 64)) | (1 << (PlSqlParser.ASIS - 64)) | (1 << (PlSqlParser.ASSEMBLY - 64)) | (1 << (PlSqlParser.ASSIGN - 64)) | (1 << (PlSqlParser.ASSOCIATE - 64)) | (1 << (PlSqlParser.ASYNC - 64)) | (1 << (PlSqlParser.ASYNCHRONOUS - 64)) | (1 << (PlSqlParser.ATAN2 - 64)) | (1 << (PlSqlParser.ATAN - 64)) | (1 << (PlSqlParser.AT - 64)) | (1 << (PlSqlParser.ATTRIBUTE - 64)) | (1 << (PlSqlParser.ATTRIBUTES - 64)) | (1 << (PlSqlParser.AUTHENTICATED - 64)) | (1 << (PlSqlParser.AUTHENTICATION - 64)) | (1 << (PlSqlParser.AUTHID - 64)) | (1 << (PlSqlParser.AUTHORIZATION - 64)) | (1 << (PlSqlParser.AUTOALLOCATE - 64)) | (1 << (PlSqlParser.AUTO - 64)) | (1 << (PlSqlParser.AUTOEXTEND - 64)) | (1 << (PlSqlParser.AUTO_LOGIN - 64)) | (1 << (PlSqlParser.AUTOMATIC - 64)) | (1 << (PlSqlParser.AUTONOMOUS_TRANSACTION - 64)) | (1 << (PlSqlParser.AUTO_REOPTIMIZE - 64)) | (1 << (PlSqlParser.AVAILABILITY - 64)) | (1 << (PlSqlParser.AVRO - 64)) | (1 << (PlSqlParser.BACKGROUND - 64)) | (1 << (PlSqlParser.BACKUP - 64)) | (1 << (PlSqlParser.BASIC - 64)))) !== 0) || ((((_la - 96)) & ~0x1f) == 0 && ((1 << (_la - 96)) & ((1 << (PlSqlParser.BASICFILE - 96)) | (1 << (PlSqlParser.BATCH - 96)) | (1 << (PlSqlParser.BATCHSIZE - 96)) | (1 << (PlSqlParser.BATCH_TABLE_ACCESS_BY_ROWID - 96)) | (1 << (PlSqlParser.BECOME - 96)) | (1 << (PlSqlParser.BEFORE - 96)) | (1 << (PlSqlParser.BEGIN - 96)) | (1 << (PlSqlParser.BEGINNING - 96)) | (1 << (PlSqlParser.BEGIN_OUTLINE_DATA - 96)) | (1 << (PlSqlParser.BEHALF - 96)) | (1 << (PlSqlParser.BEQUEATH - 96)) | (1 << (PlSqlParser.BFILE - 96)) | (1 << (PlSqlParser.BFILENAME - 96)) | (1 << (PlSqlParser.BIGFILE - 96)) | (1 << (PlSqlParser.BINARY - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE_INFINITY - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE_NAN - 96)) | (1 << (PlSqlParser.BINARY_FLOAT - 96)) | (1 << (PlSqlParser.BINARY_FLOAT_INFINITY - 96)) | (1 << (PlSqlParser.BINARY_FLOAT_NAN - 96)) | (1 << (PlSqlParser.BINARY_INTEGER - 96)) | (1 << (PlSqlParser.BIND_AWARE - 96)) | (1 << (PlSqlParser.BINDING - 96)) | (1 << (PlSqlParser.BIN_TO_NUM - 96)) | (1 << (PlSqlParser.BITAND - 96)) | (1 << (PlSqlParser.BITMAP_AND - 96)) | (1 << (PlSqlParser.BITMAP - 96)) | (1 << (PlSqlParser.BITMAPS - 96)) | (1 << (PlSqlParser.BITMAP_TREE - 96)) | (1 << (PlSqlParser.BITS - 96)))) !== 0) || ((((_la - 128)) & ~0x1f) == 0 && ((1 << (_la - 128)) & ((1 << (PlSqlParser.BLOB - 128)) | (1 << (PlSqlParser.BLOCK - 128)) | (1 << (PlSqlParser.BLOCK_RANGE - 128)) | (1 << (PlSqlParser.BLOCKS - 128)) | (1 << (PlSqlParser.BLOCKSIZE - 128)) | (1 << (PlSqlParser.BODY - 128)) | (1 << (PlSqlParser.BOOLEAN - 128)) | (1 << (PlSqlParser.BOTH - 128)) | (1 << (PlSqlParser.BOUND - 128)) | (1 << (PlSqlParser.BRANCH - 128)) | (1 << (PlSqlParser.BREADTH - 128)) | (1 << (PlSqlParser.BROADCAST - 128)) | (1 << (PlSqlParser.BSON - 128)) | (1 << (PlSqlParser.BUFFER - 128)) | (1 << (PlSqlParser.BUFFER_CACHE - 128)) | (1 << (PlSqlParser.BUFFER_POOL - 128)) | (1 << (PlSqlParser.BUILD - 128)) | (1 << (PlSqlParser.BULK - 128)) | (1 << (PlSqlParser.BYPASS_RECURSIVE_CHECK - 128)) | (1 << (PlSqlParser.BYPASS_UJVC - 128)) | (1 << (PlSqlParser.BYTE - 128)) | (1 << (PlSqlParser.CACHE - 128)) | (1 << (PlSqlParser.CACHE_CB - 128)) | (1 << (PlSqlParser.CACHE_INSTANCES - 128)) | (1 << (PlSqlParser.CACHE_TEMP_TABLE - 128)) | (1 << (PlSqlParser.CACHING - 128)) | (1 << (PlSqlParser.CALCULATED - 128)) | (1 << (PlSqlParser.CALLBACK - 128)) | (1 << (PlSqlParser.CALL - 128)) | (1 << (PlSqlParser.CANCEL - 128)))) !== 0) || ((((_la - 160)) & ~0x1f) == 0 && ((1 << (_la - 160)) & ((1 << (PlSqlParser.CAPACITY - 160)) | (1 << (PlSqlParser.CARDINALITY - 160)) | (1 << (PlSqlParser.CASCADE - 160)) | (1 << (PlSqlParser.CASE - 160)) | (1 << (PlSqlParser.CAST - 160)) | (1 << (PlSqlParser.CATEGORY - 160)) | (1 << (PlSqlParser.CDBDEFAULT - 160)) | (1 << (PlSqlParser.CEIL - 160)) | (1 << (PlSqlParser.CELL_FLASH_CACHE - 160)) | (1 << (PlSqlParser.CERTIFICATE - 160)) | (1 << (PlSqlParser.CFILE - 160)) | (1 << (PlSqlParser.CHAINED - 160)) | (1 << (PlSqlParser.CHANGE - 160)) | (1 << (PlSqlParser.CHANGE_DUPKEY_ERROR_INDEX - 160)) | (1 << (PlSqlParser.CHARACTER - 160)) | (1 << (PlSqlParser.CHAR - 160)) | (1 << (PlSqlParser.CHAR_CS - 160)) | (1 << (PlSqlParser.CHARTOROWID - 160)) | (1 << (PlSqlParser.CHECK_ACL_REWRITE - 160)) | (1 << (PlSqlParser.CHECKPOINT - 160)) | (1 << (PlSqlParser.CHILD - 160)) | (1 << (PlSqlParser.CHOOSE - 160)) | (1 << (PlSqlParser.CHR - 160)) | (1 << (PlSqlParser.CHUNK - 160)) | (1 << (PlSqlParser.CLASS - 160)) | (1 << (PlSqlParser.CLASSIFIER - 160)) | (1 << (PlSqlParser.CLEANUP - 160)) | (1 << (PlSqlParser.CLEAR - 160)) | (1 << (PlSqlParser.C_LETTER - 160)) | (1 << (PlSqlParser.CLIENT - 160)))) !== 0) || ((((_la - 192)) & ~0x1f) == 0 && ((1 << (_la - 192)) & ((1 << (PlSqlParser.CLOB - 192)) | (1 << (PlSqlParser.CLONE - 192)) | (1 << (PlSqlParser.CLOSE_CACHED_OPEN_CURSORS - 192)) | (1 << (PlSqlParser.CLOSE - 192)) | (1 << (PlSqlParser.CLUSTER_BY_ROWID - 192)) | (1 << (PlSqlParser.CLUSTER - 192)) | (1 << (PlSqlParser.CLUSTER_DETAILS - 192)) | (1 << (PlSqlParser.CLUSTER_DISTANCE - 192)) | (1 << (PlSqlParser.CLUSTER_ID - 192)) | (1 << (PlSqlParser.CLUSTERING - 192)) | (1 << (PlSqlParser.CLUSTERING_FACTOR - 192)) | (1 << (PlSqlParser.CLUSTER_PROBABILITY - 192)) | (1 << (PlSqlParser.CLUSTER_SET - 192)) | (1 << (PlSqlParser.COALESCE - 192)) | (1 << (PlSqlParser.COALESCE_SQ - 192)) | (1 << (PlSqlParser.COARSE - 192)) | (1 << (PlSqlParser.CO_AUTH_IND - 192)) | (1 << (PlSqlParser.COLD - 192)) | (1 << (PlSqlParser.COLLECT - 192)) | (1 << (PlSqlParser.COLUMNAR - 192)) | (1 << (PlSqlParser.COLUMN_AUTH_INDICATOR - 192)) | (1 << (PlSqlParser.COLUMN - 192)) | (1 << (PlSqlParser.COLUMNS - 192)) | (1 << (PlSqlParser.COLUMN_STATS - 192)) | (1 << (PlSqlParser.COLUMN_VALUE - 192)) | (1 << (PlSqlParser.COMMENT - 192)) | (1 << (PlSqlParser.COMMIT - 192)) | (1 << (PlSqlParser.COMMITTED - 192)) | (1 << (PlSqlParser.COMMON_DATA - 192)) | (1 << (PlSqlParser.COMPACT - 192)) | (1 << (PlSqlParser.COMPATIBILITY - 192)) | (1 << (PlSqlParser.COMPILE - 192)))) !== 0) || ((((_la - 224)) & ~0x1f) == 0 && ((1 << (_la - 224)) & ((1 << (PlSqlParser.COMPLETE - 224)) | (1 << (PlSqlParser.COMPLIANCE - 224)) | (1 << (PlSqlParser.COMPONENT - 224)) | (1 << (PlSqlParser.COMPONENTS - 224)) | (1 << (PlSqlParser.COMPOSE - 224)) | (1 << (PlSqlParser.COMPOSITE - 224)) | (1 << (PlSqlParser.COMPOSITE_LIMIT - 224)) | (1 << (PlSqlParser.COMPOUND - 224)) | (1 << (PlSqlParser.COMPUTE - 224)) | (1 << (PlSqlParser.CONCAT - 224)) | (1 << (PlSqlParser.CON_DBID_TO_ID - 224)) | (1 << (PlSqlParser.CONDITIONAL - 224)) | (1 << (PlSqlParser.CONDITION - 224)) | (1 << (PlSqlParser.CONFIRM - 224)) | (1 << (PlSqlParser.CONFORMING - 224)) | (1 << (PlSqlParser.CON_GUID_TO_ID - 224)) | (1 << (PlSqlParser.CON_ID - 224)) | (1 << (PlSqlParser.CON_NAME_TO_ID - 224)) | (1 << (PlSqlParser.CONNECT_BY_CB_WHR_ONLY - 224)) | (1 << (PlSqlParser.CONNECT_BY_COMBINE_SW - 224)) | (1 << (PlSqlParser.CONNECT_BY_COST_BASED - 224)) | (1 << (PlSqlParser.CONNECT_BY_ELIM_DUPS - 224)) | (1 << (PlSqlParser.CONNECT_BY_FILTERING - 224)) | (1 << (PlSqlParser.CONNECT_BY_ISCYCLE - 224)) | (1 << (PlSqlParser.CONNECT_BY_ISLEAF - 224)) | (1 << (PlSqlParser.CONNECT_BY_ROOT - 224)) | (1 << (PlSqlParser.CONNECT_TIME - 224)) | (1 << (PlSqlParser.CONSIDER - 224)) | (1 << (PlSqlParser.CONSISTENT - 224)) | (1 << (PlSqlParser.CONSTANT - 224)))) !== 0) || ((((_la - 256)) & ~0x1f) == 0 && ((1 << (_la - 256)) & ((1 << (PlSqlParser.CONST - 256)) | (1 << (PlSqlParser.CONSTRAINT - 256)) | (1 << (PlSqlParser.CONSTRAINTS - 256)) | (1 << (PlSqlParser.CONSTRUCTOR - 256)) | (1 << (PlSqlParser.CONTAINER - 256)) | (1 << (PlSqlParser.CONTAINER_DATA - 256)) | (1 << (PlSqlParser.CONTAINERS - 256)) | (1 << (PlSqlParser.CONTENT - 256)) | (1 << (PlSqlParser.CONTENTS - 256)) | (1 << (PlSqlParser.CONTEXT - 256)) | (1 << (PlSqlParser.CONTINUE - 256)) | (1 << (PlSqlParser.CONTROLFILE - 256)) | (1 << (PlSqlParser.CON_UID_TO_ID - 256)) | (1 << (PlSqlParser.CONVERT - 256)) | (1 << (PlSqlParser.COOKIE - 256)) | (1 << (PlSqlParser.COPY - 256)) | (1 << (PlSqlParser.CORR_K - 256)) | (1 << (PlSqlParser.CORR_S - 256)) | (1 << (PlSqlParser.CORRUPTION - 256)) | (1 << (PlSqlParser.CORRUPT_XID_ALL - 256)) | (1 << (PlSqlParser.CORRUPT_XID - 256)) | (1 << (PlSqlParser.COS - 256)) | (1 << (PlSqlParser.COSH - 256)) | (1 << (PlSqlParser.COST - 256)) | (1 << (PlSqlParser.COST_XML_QUERY_REWRITE - 256)) | (1 << (PlSqlParser.COUNT - 256)) | (1 << (PlSqlParser.COVAR_POP - 256)) | (1 << (PlSqlParser.COVAR_SAMP - 256)) | (1 << (PlSqlParser.CPU_COSTING - 256)) | (1 << (PlSqlParser.CPU_PER_CALL - 256)) | (1 << (PlSqlParser.CPU_PER_SESSION - 256)) | (1 << (PlSqlParser.CRASH - 256)))) !== 0) || ((((_la - 289)) & ~0x1f) == 0 && ((1 << (_la - 289)) & ((1 << (PlSqlParser.CREATE_FILE_DEST - 289)) | (1 << (PlSqlParser.CREATE_STORED_OUTLINES - 289)) | (1 << (PlSqlParser.CREATION - 289)) | (1 << (PlSqlParser.CREDENTIAL - 289)) | (1 << (PlSqlParser.CRITICAL - 289)) | (1 << (PlSqlParser.CROSS - 289)) | (1 << (PlSqlParser.CROSSEDITION - 289)) | (1 << (PlSqlParser.CSCONVERT - 289)) | (1 << (PlSqlParser.CUBE_AJ - 289)) | (1 << (PlSqlParser.CUBE - 289)) | (1 << (PlSqlParser.CUBE_GB - 289)) | (1 << (PlSqlParser.CUBE_SJ - 289)) | (1 << (PlSqlParser.CUME_DISTM - 289)) | (1 << (PlSqlParser.CURRENT - 289)) | (1 << (PlSqlParser.CURRENT_DATE - 289)) | (1 << (PlSqlParser.CURRENT_SCHEMA - 289)) | (1 << (PlSqlParser.CURRENT_TIME - 289)) | (1 << (PlSqlParser.CURRENT_TIMESTAMP - 289)) | (1 << (PlSqlParser.CURRENT_USER - 289)) | (1 << (PlSqlParser.CURRENTV - 289)) | (1 << (PlSqlParser.CURSOR - 289)) | (1 << (PlSqlParser.CURSOR_SHARING_EXACT - 289)) | (1 << (PlSqlParser.CURSOR_SPECIFIC_SEGMENT - 289)) | (1 << (PlSqlParser.CUSTOMDATUM - 289)) | (1 << (PlSqlParser.CV - 289)) | (1 << (PlSqlParser.CYCLE - 289)) | (1 << (PlSqlParser.DANGLING - 289)) | (1 << (PlSqlParser.DATABASE - 289)) | (1 << (PlSqlParser.DATA - 289)) | (1 << (PlSqlParser.DATAFILE - 289)) | (1 << (PlSqlParser.DATAFILES - 289)))) !== 0) || ((((_la - 321)) & ~0x1f) == 0 && ((1 << (_la - 321)) & ((1 << (PlSqlParser.DATAMOVEMENT - 321)) | (1 << (PlSqlParser.DATAOBJNO - 321)) | (1 << (PlSqlParser.DATAOBJ_TO_MAT_PARTITION - 321)) | (1 << (PlSqlParser.DATAOBJ_TO_PARTITION - 321)) | (1 << (PlSqlParser.DATAPUMP - 321)) | (1 << (PlSqlParser.DATA_SECURITY_REWRITE_LIMIT - 321)) | (1 << (PlSqlParser.DATE - 321)) | (1 << (PlSqlParser.DATE_MODE - 321)) | (1 << (PlSqlParser.DAY - 321)) | (1 << (PlSqlParser.DAYS - 321)) | (1 << (PlSqlParser.DBA - 321)) | (1 << (PlSqlParser.DBA_RECYCLEBIN - 321)) | (1 << (PlSqlParser.DBMS_STATS - 321)) | (1 << (PlSqlParser.DB_ROLE_CHANGE - 321)) | (1 << (PlSqlParser.DBTIMEZONE - 321)) | (1 << (PlSqlParser.DB_UNIQUE_NAME - 321)) | (1 << (PlSqlParser.DB_VERSION - 321)) | (1 << (PlSqlParser.DDL - 321)) | (1 << (PlSqlParser.DEALLOCATE - 321)) | (1 << (PlSqlParser.DEBUG - 321)) | (1 << (PlSqlParser.DEBUGGER - 321)) | (1 << (PlSqlParser.DEC - 321)) | (1 << (PlSqlParser.DECIMAL - 321)) | (1 << (PlSqlParser.DECLARE - 321)) | (1 << (PlSqlParser.DECOMPOSE - 321)) | (1 << (PlSqlParser.DECORRELATE - 321)) | (1 << (PlSqlParser.DECR - 321)) | (1 << (PlSqlParser.DECREMENT - 321)) | (1 << (PlSqlParser.DECRYPT - 321)) | (1 << (PlSqlParser.DEDUPLICATE - 321)) | (1 << (PlSqlParser.DEFAULTS - 321)))) !== 0) || ((((_la - 353)) & ~0x1f) == 0 && ((1 << (_la - 353)) & ((1 << (PlSqlParser.DEFERRABLE - 353)) | (1 << (PlSqlParser.DEFERRED - 353)) | (1 << (PlSqlParser.DEFINED - 353)) | (1 << (PlSqlParser.DEFINE - 353)) | (1 << (PlSqlParser.DEFINER - 353)) | (1 << (PlSqlParser.DEGREE - 353)) | (1 << (PlSqlParser.DELAY - 353)) | (1 << (PlSqlParser.DELEGATE - 353)) | (1 << (PlSqlParser.DELETE_ALL - 353)) | (1 << (PlSqlParser.DELETE - 353)) | (1 << (PlSqlParser.DELETEXML - 353)) | (1 << (PlSqlParser.DEMAND - 353)) | (1 << (PlSqlParser.DENSE_RANKM - 353)) | (1 << (PlSqlParser.DEPENDENT - 353)) | (1 << (PlSqlParser.DEPTH - 353)) | (1 << (PlSqlParser.DEQUEUE - 353)) | (1 << (PlSqlParser.DEREF - 353)) | (1 << (PlSqlParser.DEREF_NO_REWRITE - 353)) | (1 << (PlSqlParser.DESTROY - 353)) | (1 << (PlSqlParser.DETACHED - 353)) | (1 << (PlSqlParser.DETERMINES - 353)) | (1 << (PlSqlParser.DETERMINISTIC - 353)) | (1 << (PlSqlParser.DICTIONARY - 353)) | (1 << (PlSqlParser.DIMENSION - 353)) | (1 << (PlSqlParser.DIMENSIONS - 353)) | (1 << (PlSqlParser.DIRECT_LOAD - 353)) | (1 << (PlSqlParser.DIRECTORY - 353)) | (1 << (PlSqlParser.DIRECT_PATH - 353)) | (1 << (PlSqlParser.DISABLE_ALL - 353)) | (1 << (PlSqlParser.DISABLE - 353)) | (1 << (PlSqlParser.DISABLE_PARALLEL_DML - 353)))) !== 0) || ((((_la - 385)) & ~0x1f) == 0 && ((1 << (_la - 385)) & ((1 << (PlSqlParser.DISABLE_PRESET - 385)) | (1 << (PlSqlParser.DISABLE_RPKE - 385)) | (1 << (PlSqlParser.DISALLOW - 385)) | (1 << (PlSqlParser.DISASSOCIATE - 385)) | (1 << (PlSqlParser.DISCARD - 385)) | (1 << (PlSqlParser.DISCONNECT - 385)) | (1 << (PlSqlParser.DISK - 385)) | (1 << (PlSqlParser.DISKGROUP - 385)) | (1 << (PlSqlParser.DISKS - 385)) | (1 << (PlSqlParser.DISMOUNT - 385)) | (1 << (PlSqlParser.DISTINGUISHED - 385)) | (1 << (PlSqlParser.DISTRIBUTED - 385)) | (1 << (PlSqlParser.DISTRIBUTE - 385)) | (1 << (PlSqlParser.DML - 385)) | (1 << (PlSqlParser.DML_UPDATE - 385)) | (1 << (PlSqlParser.DOCFIDELITY - 385)) | (1 << (PlSqlParser.DOCUMENT - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_FILTER - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_NO_SORT - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_SORT - 385)) | (1 << (PlSqlParser.DOUBLE - 385)) | (1 << (PlSqlParser.DOWNGRADE - 385)) | (1 << (PlSqlParser.DRIVING_SITE - 385)) | (1 << (PlSqlParser.DROP_COLUMN - 385)) | (1 << (PlSqlParser.DROP_GROUP - 385)) | (1 << (PlSqlParser.DSINTERVAL_UNCONSTRAINED - 385)) | (1 << (PlSqlParser.DST_UPGRADE_INSERT_CONV - 385)) | (1 << (PlSqlParser.DUMP - 385)))) !== 0) || ((((_la - 417)) & ~0x1f) == 0 && ((1 << (_la - 417)) & ((1 << (PlSqlParser.DUPLICATE - 417)) | (1 << (PlSqlParser.DV - 417)) | (1 << (PlSqlParser.DYNAMIC - 417)) | (1 << (PlSqlParser.DYNAMIC_SAMPLING - 417)) | (1 << (PlSqlParser.DYNAMIC_SAMPLING_EST_CDN - 417)) | (1 << (PlSqlParser.EACH - 417)) | (1 << (PlSqlParser.EDITIONABLE - 417)) | (1 << (PlSqlParser.EDITION - 417)) | (1 << (PlSqlParser.EDITIONING - 417)) | (1 << (PlSqlParser.EDITIONS - 417)) | (1 << (PlSqlParser.ELEMENT - 417)) | (1 << (PlSqlParser.ELIM_GROUPBY - 417)) | (1 << (PlSqlParser.ELIMINATE_JOIN - 417)) | (1 << (PlSqlParser.ELIMINATE_OBY - 417)) | (1 << (PlSqlParser.ELIMINATE_OUTER_JOIN - 417)) | (1 << (PlSqlParser.EM - 417)) | (1 << (PlSqlParser.EMPTY_BLOB - 417)) | (1 << (PlSqlParser.EMPTY_CLOB - 417)) | (1 << (PlSqlParser.EMPTY - 417)) | (1 << (PlSqlParser.ENABLE_ALL - 417)) | (1 << (PlSqlParser.ENABLE - 417)) | (1 << (PlSqlParser.ENABLE_PARALLEL_DML - 417)) | (1 << (PlSqlParser.ENABLE_PRESET - 417)) | (1 << (PlSqlParser.ENCODING - 417)) | (1 << (PlSqlParser.ENCRYPT - 417)) | (1 << (PlSqlParser.ENCRYPTION - 417)) | (1 << (PlSqlParser.END_OUTLINE_DATA - 417)) | (1 << (PlSqlParser.ENFORCED - 417)) | (1 << (PlSqlParser.ENFORCE - 417)))) !== 0) || ((((_la - 449)) & ~0x1f) == 0 && ((1 << (_la - 449)) & ((1 << (PlSqlParser.ENQUEUE - 449)) | (1 << (PlSqlParser.ENTERPRISE - 449)) | (1 << (PlSqlParser.ENTITYESCAPING - 449)) | (1 << (PlSqlParser.ENTRY - 449)) | (1 << (PlSqlParser.EQUIPART - 449)) | (1 << (PlSqlParser.ERR - 449)) | (1 << (PlSqlParser.ERROR_ARGUMENT - 449)) | (1 << (PlSqlParser.ERROR - 449)) | (1 << (PlSqlParser.ERROR_ON_OVERLAP_TIME - 449)) | (1 << (PlSqlParser.ERRORS - 449)) | (1 << (PlSqlParser.ESCAPE - 449)) | (1 << (PlSqlParser.ESTIMATE - 449)) | (1 << (PlSqlParser.EVAL - 449)) | (1 << (PlSqlParser.EVALNAME - 449)) | (1 << (PlSqlParser.EVALUATE - 449)) | (1 << (PlSqlParser.EVALUATION - 449)) | (1 << (PlSqlParser.EVENTS - 449)) | (1 << (PlSqlParser.EVERY - 449)) | (1 << (PlSqlParser.EXCEPT - 449)) | (1 << (PlSqlParser.EXCEPTION - 449)) | (1 << (PlSqlParser.EXCEPTION_INIT - 449)) | (1 << (PlSqlParser.EXCEPTIONS - 449)) | (1 << (PlSqlParser.EXCHANGE - 449)) | (1 << (PlSqlParser.EXCLUDE - 449)) | (1 << (PlSqlParser.EXCLUDING - 449)) | (1 << (PlSqlParser.EXECUTE - 449)) | (1 << (PlSqlParser.EXEMPT - 449)) | (1 << (PlSqlParser.EXISTING - 449)) | (1 << (PlSqlParser.EXISTS - 449)) | (1 << (PlSqlParser.EXISTSNODE - 449)) | (1 << (PlSqlParser.EXIT - 449)))) !== 0) || ((((_la - 481)) & ~0x1f) == 0 && ((1 << (_la - 481)) & ((1 << (PlSqlParser.EXPAND_GSET_TO_UNION - 481)) | (1 << (PlSqlParser.EXPAND_TABLE - 481)) | (1 << (PlSqlParser.EXP - 481)) | (1 << (PlSqlParser.EXPIRE - 481)) | (1 << (PlSqlParser.EXPLAIN - 481)) | (1 << (PlSqlParser.EXPLOSION - 481)) | (1 << (PlSqlParser.EXPORT - 481)) | (1 << (PlSqlParser.EXPR_CORR_CHECK - 481)) | (1 << (PlSqlParser.EXPRESS - 481)) | (1 << (PlSqlParser.EXTENDS - 481)) | (1 << (PlSqlParser.EXTENT - 481)) | (1 << (PlSqlParser.EXTENTS - 481)) | (1 << (PlSqlParser.EXTERNAL - 481)) | (1 << (PlSqlParser.EXTERNALLY - 481)) | (1 << (PlSqlParser.EXTRACTCLOBXML - 481)) | (1 << (PlSqlParser.EXTRACT - 481)) | (1 << (PlSqlParser.EXTRACTVALUE - 481)) | (1 << (PlSqlParser.EXTRA - 481)) | (1 << (PlSqlParser.FACILITY - 481)) | (1 << (PlSqlParser.FACT - 481)) | (1 << (PlSqlParser.FACTOR - 481)) | (1 << (PlSqlParser.FACTORIZE_JOIN - 481)) | (1 << (PlSqlParser.FAILED - 481)) | (1 << (PlSqlParser.FAILED_LOGIN_ATTEMPTS - 481)) | (1 << (PlSqlParser.FAILGROUP - 481)) | (1 << (PlSqlParser.FAILOVER - 481)) | (1 << (PlSqlParser.FAILURE - 481)) | (1 << (PlSqlParser.FALSE - 481)) | (1 << (PlSqlParser.FAMILY - 481)) | (1 << (PlSqlParser.FAR - 481)) | (1 << (PlSqlParser.FAST - 481)) | (1 << (PlSqlParser.FASTSTART - 481)))) !== 0) || ((((_la - 513)) & ~0x1f) == 0 && ((1 << (_la - 513)) & ((1 << (PlSqlParser.FBTSCAN - 513)) | (1 << (PlSqlParser.FEATURE_DETAILS - 513)) | (1 << (PlSqlParser.FEATURE_ID - 513)) | (1 << (PlSqlParser.FEATURE_SET - 513)) | (1 << (PlSqlParser.FEATURE_VALUE - 513)) | (1 << (PlSqlParser.FETCH - 513)) | (1 << (PlSqlParser.FILE - 513)) | (1 << (PlSqlParser.FILE_NAME_CONVERT - 513)) | (1 << (PlSqlParser.FILESYSTEM_LIKE_LOGGING - 513)) | (1 << (PlSqlParser.FILTER - 513)) | (1 << (PlSqlParser.FINAL - 513)) | (1 << (PlSqlParser.FINE - 513)) | (1 << (PlSqlParser.FINISH - 513)) | (1 << (PlSqlParser.FIRST - 513)) | (1 << (PlSqlParser.FIRSTM - 513)) | (1 << (PlSqlParser.FIRST_ROWS - 513)) | (1 << (PlSqlParser.FIRST_VALUE - 513)) | (1 << (PlSqlParser.FIXED_VIEW_DATA - 513)) | (1 << (PlSqlParser.FLAGGER - 513)) | (1 << (PlSqlParser.FLASHBACK - 513)) | (1 << (PlSqlParser.FLASH_CACHE - 513)) | (1 << (PlSqlParser.FLOAT - 513)) | (1 << (PlSqlParser.FLOB - 513)) | (1 << (PlSqlParser.FLOOR - 513)) | (1 << (PlSqlParser.FLUSH - 513)) | (1 << (PlSqlParser.FOLDER - 513)) | (1 << (PlSqlParser.FOLLOWING - 513)) | (1 << (PlSqlParser.FOLLOWS - 513)) | (1 << (PlSqlParser.FORALL - 513)) | (1 << (PlSqlParser.FORCE - 513)) | (1 << (PlSqlParser.FORCE_XML_QUERY_REWRITE - 513)) | (1 << (PlSqlParser.FOREIGN - 513)))) !== 0) || ((((_la - 545)) & ~0x1f) == 0 && ((1 << (_la - 545)) & ((1 << (PlSqlParser.FOREVER - 545)) | (1 << (PlSqlParser.FORMAT - 545)) | (1 << (PlSqlParser.FORWARD - 545)) | (1 << (PlSqlParser.FRAGMENT_NUMBER - 545)) | (1 << (PlSqlParser.FREELIST - 545)) | (1 << (PlSqlParser.FREELISTS - 545)) | (1 << (PlSqlParser.FREEPOOLS - 545)) | (1 << (PlSqlParser.FRESH - 545)) | (1 << (PlSqlParser.FROM_TZ - 545)) | (1 << (PlSqlParser.FULL - 545)) | (1 << (PlSqlParser.FULL_OUTER_JOIN_TO_OUTER - 545)) | (1 << (PlSqlParser.FUNCTION - 545)) | (1 << (PlSqlParser.FUNCTIONS - 545)) | (1 << (PlSqlParser.GATHER_OPTIMIZER_STATISTICS - 545)) | (1 << (PlSqlParser.GATHER_PLAN_STATISTICS - 545)) | (1 << (PlSqlParser.GBY_CONC_ROLLUP - 545)) | (1 << (PlSqlParser.GBY_PUSHDOWN - 545)) | (1 << (PlSqlParser.GENERATED - 545)) | (1 << (PlSqlParser.GET - 545)) | (1 << (PlSqlParser.GLOBAL - 545)) | (1 << (PlSqlParser.GLOBALLY - 545)) | (1 << (PlSqlParser.GLOBAL_NAME - 545)) | (1 << (PlSqlParser.GLOBAL_TOPIC_ENABLED - 545)) | (1 << (PlSqlParser.GROUP_BY - 545)) | (1 << (PlSqlParser.GROUP_ID - 545)) | (1 << (PlSqlParser.GROUPING - 545)) | (1 << (PlSqlParser.GROUPING_ID - 545)))) !== 0) || ((((_la - 577)) & ~0x1f) == 0 && ((1 << (_la - 577)) & ((1 << (PlSqlParser.GROUPS - 577)) | (1 << (PlSqlParser.GUARANTEED - 577)) | (1 << (PlSqlParser.GUARANTEE - 577)) | (1 << (PlSqlParser.GUARD - 577)) | (1 << (PlSqlParser.HASH_AJ - 577)) | (1 << (PlSqlParser.HASH - 577)) | (1 << (PlSqlParser.HASHKEYS - 577)) | (1 << (PlSqlParser.HASH_SJ - 577)) | (1 << (PlSqlParser.HEADER - 577)) | (1 << (PlSqlParser.HEAP - 577)) | (1 << (PlSqlParser.HELP - 577)) | (1 << (PlSqlParser.HEXTORAW - 577)) | (1 << (PlSqlParser.HEXTOREF - 577)) | (1 << (PlSqlParser.HIDDEN_KEYWORD - 577)) | (1 << (PlSqlParser.HIDE - 577)) | (1 << (PlSqlParser.HIERARCHY - 577)) | (1 << (PlSqlParser.HIGH - 577)) | (1 << (PlSqlParser.HINTSET_BEGIN - 577)) | (1 << (PlSqlParser.HINTSET_END - 577)) | (1 << (PlSqlParser.HOT - 577)) | (1 << (PlSqlParser.HOUR - 577)) | (1 << (PlSqlParser.HWM_BROKERED - 577)) | (1 << (PlSqlParser.HYBRID - 577)) | (1 << (PlSqlParser.IDENTIFIER - 577)) | (1 << (PlSqlParser.IDENTITY - 577)) | (1 << (PlSqlParser.IDGENERATORS - 577)) | (1 << (PlSqlParser.ID - 577)) | (1 << (PlSqlParser.IDLE_TIME - 577)) | (1 << (PlSqlParser.IF - 577)) | (1 << (PlSqlParser.IGNORE - 577)))) !== 0) || ((((_la - 609)) & ~0x1f) == 0 && ((1 << (_la - 609)) & ((1 << (PlSqlParser.IGNORE_OPTIM_EMBEDDED_HINTS - 609)) | (1 << (PlSqlParser.IGNORE_ROW_ON_DUPKEY_INDEX - 609)) | (1 << (PlSqlParser.IGNORE_WHERE_CLAUSE - 609)) | (1 << (PlSqlParser.ILM - 609)) | (1 << (PlSqlParser.IMMEDIATE - 609)) | (1 << (PlSqlParser.IMPACT - 609)) | (1 << (PlSqlParser.IMPORT - 609)) | (1 << (PlSqlParser.INACTIVE - 609)) | (1 << (PlSqlParser.INCLUDE - 609)) | (1 << (PlSqlParser.INCLUDE_VERSION - 609)) | (1 << (PlSqlParser.INCLUDING - 609)) | (1 << (PlSqlParser.INCREMENTAL - 609)) | (1 << (PlSqlParser.INCREMENT - 609)) | (1 << (PlSqlParser.INCR - 609)) | (1 << (PlSqlParser.INDENT - 609)) | (1 << (PlSqlParser.INDEX_ASC - 609)) | (1 << (PlSqlParser.INDEX_COMBINE - 609)) | (1 << (PlSqlParser.INDEX_DESC - 609)) | (1 << (PlSqlParser.INDEXED - 609)) | (1 << (PlSqlParser.INDEXES - 609)) | (1 << (PlSqlParser.INDEX_FFS - 609)) | (1 << (PlSqlParser.INDEX_FILTER - 609)) | (1 << (PlSqlParser.INDEXING - 609)) | (1 << (PlSqlParser.INDEX_JOIN - 609)) | (1 << (PlSqlParser.INDEX_ROWS - 609)) | (1 << (PlSqlParser.INDEX_RRS - 609)) | (1 << (PlSqlParser.INDEX_RS_ASC - 609)) | (1 << (PlSqlParser.INDEX_RS_DESC - 609)) | (1 << (PlSqlParser.INDEX_RS - 609)) | (1 << (PlSqlParser.INDEX_SCAN - 609)) | (1 << (PlSqlParser.INDEX_SKIP_SCAN - 609)))) !== 0) || ((((_la - 641)) & ~0x1f) == 0 && ((1 << (_la - 641)) & ((1 << (PlSqlParser.INDEX_SS_ASC - 641)) | (1 << (PlSqlParser.INDEX_SS_DESC - 641)) | (1 << (PlSqlParser.INDEX_SS - 641)) | (1 << (PlSqlParser.INDEX_STATS - 641)) | (1 << (PlSqlParser.INDEXTYPE - 641)) | (1 << (PlSqlParser.INDEXTYPES - 641)) | (1 << (PlSqlParser.INDICATOR - 641)) | (1 << (PlSqlParser.INDICES - 641)) | (1 << (PlSqlParser.INFINITE - 641)) | (1 << (PlSqlParser.INFORMATIONAL - 641)) | (1 << (PlSqlParser.INHERIT - 641)) | (1 << (PlSqlParser.INITCAP - 641)) | (1 << (PlSqlParser.INITIAL - 641)) | (1 << (PlSqlParser.INITIALIZED - 641)) | (1 << (PlSqlParser.INITIALLY - 641)) | (1 << (PlSqlParser.INITRANS - 641)) | (1 << (PlSqlParser.INLINE - 641)) | (1 << (PlSqlParser.INLINE_XMLTYPE_NT - 641)) | (1 << (PlSqlParser.INMEMORY - 641)) | (1 << (PlSqlParser.IN_MEMORY_METADATA - 641)) | (1 << (PlSqlParser.INMEMORY_PRUNING - 641)) | (1 << (PlSqlParser.INNER - 641)) | (1 << (PlSqlParser.INOUT - 641)) | (1 << (PlSqlParser.INPLACE - 641)) | (1 << (PlSqlParser.INSERTCHILDXMLAFTER - 641)) | (1 << (PlSqlParser.INSERTCHILDXMLBEFORE - 641)) | (1 << (PlSqlParser.INSERTCHILDXML - 641)) | (1 << (PlSqlParser.INSERTXMLAFTER - 641)) | (1 << (PlSqlParser.INSERTXMLBEFORE - 641)) | (1 << (PlSqlParser.INSTANCE - 641)))) !== 0) || ((((_la - 673)) & ~0x1f) == 0 && ((1 << (_la - 673)) & ((1 << (PlSqlParser.INSTANCES - 673)) | (1 << (PlSqlParser.INSTANTIABLE - 673)) | (1 << (PlSqlParser.INSTANTLY - 673)) | (1 << (PlSqlParser.INSTEAD - 673)) | (1 << (PlSqlParser.INSTR2 - 673)) | (1 << (PlSqlParser.INSTR4 - 673)) | (1 << (PlSqlParser.INSTRB - 673)) | (1 << (PlSqlParser.INSTRC - 673)) | (1 << (PlSqlParser.INSTR - 673)) | (1 << (PlSqlParser.INTEGER - 673)) | (1 << (PlSqlParser.INTERLEAVED - 673)) | (1 << (PlSqlParser.INTERMEDIATE - 673)) | (1 << (PlSqlParser.INTERNAL_CONVERT - 673)) | (1 << (PlSqlParser.INTERNAL_USE - 673)) | (1 << (PlSqlParser.INTERPRETED - 673)) | (1 << (PlSqlParser.INTERVAL - 673)) | (1 << (PlSqlParser.INT - 673)) | (1 << (PlSqlParser.INVALIDATE - 673)) | (1 << (PlSqlParser.INVISIBLE - 673)) | (1 << (PlSqlParser.IN_XQUERY - 673)) | (1 << (PlSqlParser.ISOLATION - 673)) | (1 << (PlSqlParser.ISOLATION_LEVEL - 673)) | (1 << (PlSqlParser.ITERATE - 673)) | (1 << (PlSqlParser.ITERATION_NUMBER - 673)) | (1 << (PlSqlParser.JAVA - 673)) | (1 << (PlSqlParser.JOB - 673)) | (1 << (PlSqlParser.JOIN - 673)) | (1 << (PlSqlParser.JSON_ARRAYAGG - 673)) | (1 << (PlSqlParser.JSON_ARRAY - 673)))) !== 0) || ((((_la - 705)) & ~0x1f) == 0 && ((1 << (_la - 705)) & ((1 << (PlSqlParser.JSON_EQUAL - 705)) | (1 << (PlSqlParser.JSON_EXISTS2 - 705)) | (1 << (PlSqlParser.JSON_EXISTS - 705)) | (1 << (PlSqlParser.JSONGET - 705)) | (1 << (PlSqlParser.JSON - 705)) | (1 << (PlSqlParser.JSON_OBJECTAGG - 705)) | (1 << (PlSqlParser.JSON_OBJECT - 705)) | (1 << (PlSqlParser.JSONPARSE - 705)) | (1 << (PlSqlParser.JSON_QUERY - 705)) | (1 << (PlSqlParser.JSON_SERIALIZE - 705)) | (1 << (PlSqlParser.JSON_TABLE - 705)) | (1 << (PlSqlParser.JSON_TEXTCONTAINS2 - 705)) | (1 << (PlSqlParser.JSON_TEXTCONTAINS - 705)) | (1 << (PlSqlParser.JSON_VALUE - 705)) | (1 << (PlSqlParser.KEEP_DUPLICATES - 705)) | (1 << (PlSqlParser.KEEP - 705)) | (1 << (PlSqlParser.KERBEROS - 705)) | (1 << (PlSqlParser.KEY - 705)) | (1 << (PlSqlParser.KEY_LENGTH - 705)) | (1 << (PlSqlParser.KEYSIZE - 705)) | (1 << (PlSqlParser.KEYS - 705)) | (1 << (PlSqlParser.KEYSTORE - 705)) | (1 << (PlSqlParser.KILL - 705)) | (1 << (PlSqlParser.LABEL - 705)) | (1 << (PlSqlParser.LANGUAGE - 705)) | (1 << (PlSqlParser.LAST_DAY - 705)) | (1 << (PlSqlParser.LAST - 705)) | (1 << (PlSqlParser.LAST_VALUE - 705)) | (1 << (PlSqlParser.LATERAL - 705)) | (1 << (PlSqlParser.LAX - 705)) | (1 << (PlSqlParser.LAYER - 705)) | (1 << (PlSqlParser.LDAP_REGISTRATION_ENABLED - 705)))) !== 0) || ((((_la - 737)) & ~0x1f) == 0 && ((1 << (_la - 737)) & ((1 << (PlSqlParser.LDAP_REGISTRATION - 737)) | (1 << (PlSqlParser.LDAP_REG_SYNC_INTERVAL - 737)) | (1 << (PlSqlParser.LEADING - 737)) | (1 << (PlSqlParser.LEFT - 737)) | (1 << (PlSqlParser.LENGTH2 - 737)) | (1 << (PlSqlParser.LENGTH4 - 737)) | (1 << (PlSqlParser.LENGTHB - 737)) | (1 << (PlSqlParser.LENGTHC - 737)) | (1 << (PlSqlParser.LENGTH - 737)) | (1 << (PlSqlParser.LESS - 737)) | (1 << (PlSqlParser.LEVEL - 737)) | (1 << (PlSqlParser.LEVELS - 737)) | (1 << (PlSqlParser.LIBRARY - 737)) | (1 << (PlSqlParser.LIFECYCLE - 737)) | (1 << (PlSqlParser.LIFE - 737)) | (1 << (PlSqlParser.LIFETIME - 737)) | (1 << (PlSqlParser.LIKE2 - 737)) | (1 << (PlSqlParser.LIKE4 - 737)) | (1 << (PlSqlParser.LIKEC - 737)) | (1 << (PlSqlParser.LIKE_EXPAND - 737)) | (1 << (PlSqlParser.LIMIT - 737)) | (1 << (PlSqlParser.LINEAR - 737)) | (1 << (PlSqlParser.LINK - 737)) | (1 << (PlSqlParser.LIST - 737)) | (1 << (PlSqlParser.LN - 737)) | (1 << (PlSqlParser.LNNVL - 737)) | (1 << (PlSqlParser.LOAD - 737)) | (1 << (PlSqlParser.LOB - 737)) | (1 << (PlSqlParser.LOBNVL - 737)) | (1 << (PlSqlParser.LOBS - 737)) | (1 << (PlSqlParser.LOCAL_INDEXES - 737)))) !== 0) || ((((_la - 769)) & ~0x1f) == 0 && ((1 << (_la - 769)) & ((1 << (PlSqlParser.LOCAL - 769)) | (1 << (PlSqlParser.LOCALTIME - 769)) | (1 << (PlSqlParser.LOCALTIMESTAMP - 769)) | (1 << (PlSqlParser.LOCATION - 769)) | (1 << (PlSqlParser.LOCATOR - 769)) | (1 << (PlSqlParser.LOCKED - 769)) | (1 << (PlSqlParser.LOCKING - 769)) | (1 << (PlSqlParser.LOGFILE - 769)) | (1 << (PlSqlParser.LOGFILES - 769)) | (1 << (PlSqlParser.LOGGING - 769)) | (1 << (PlSqlParser.LOGICAL - 769)) | (1 << (PlSqlParser.LOGICAL_READS_PER_CALL - 769)) | (1 << (PlSqlParser.LOGICAL_READS_PER_SESSION - 769)) | (1 << (PlSqlParser.LOG - 769)) | (1 << (PlSqlParser.LOGMINING - 769)) | (1 << (PlSqlParser.LOGOFF - 769)) | (1 << (PlSqlParser.LOGON - 769)) | (1 << (PlSqlParser.LOG_READ_ONLY_VIOLATIONS - 769)) | (1 << (PlSqlParser.LONG - 769)) | (1 << (PlSqlParser.LOOP - 769)) | (1 << (PlSqlParser.LOWER - 769)) | (1 << (PlSqlParser.LOW - 769)) | (1 << (PlSqlParser.LPAD - 769)) | (1 << (PlSqlParser.LTRIM - 769)) | (1 << (PlSqlParser.MAIN - 769)) | (1 << (PlSqlParser.MAKE_REF - 769)) | (1 << (PlSqlParser.MANAGED - 769)) | (1 << (PlSqlParser.MANAGE - 769)) | (1 << (PlSqlParser.MANAGEMENT - 769)) | (1 << (PlSqlParser.MANAGER - 769)) | (1 << (PlSqlParser.MANUAL - 769)))) !== 0) || ((((_la - 801)) & ~0x1f) == 0 && ((1 << (_la - 801)) & ((1 << (PlSqlParser.MAP - 801)) | (1 << (PlSqlParser.MAPPING - 801)) | (1 << (PlSqlParser.MASTER - 801)) | (1 << (PlSqlParser.MATCHED - 801)) | (1 << (PlSqlParser.MATCHES - 801)) | (1 << (PlSqlParser.MATCH - 801)) | (1 << (PlSqlParser.MATCH_NUMBER - 801)) | (1 << (PlSqlParser.MATCH_RECOGNIZE - 801)) | (1 << (PlSqlParser.MATERIALIZED - 801)) | (1 << (PlSqlParser.MATERIALIZE - 801)) | (1 << (PlSqlParser.MAXARCHLOGS - 801)) | (1 << (PlSqlParser.MAXDATAFILES - 801)) | (1 << (PlSqlParser.MAXEXTENTS - 801)) | (1 << (PlSqlParser.MAXIMIZE - 801)) | (1 << (PlSqlParser.MAXINSTANCES - 801)) | (1 << (PlSqlParser.MAXLOGFILES - 801)) | (1 << (PlSqlParser.MAXLOGHISTORY - 801)) | (1 << (PlSqlParser.MAXLOGMEMBERS - 801)) | (1 << (PlSqlParser.MAX_SHARED_TEMP_SIZE - 801)) | (1 << (PlSqlParser.MAXSIZE - 801)) | (1 << (PlSqlParser.MAXTRANS - 801)) | (1 << (PlSqlParser.MAXVALUE - 801)) | (1 << (PlSqlParser.MEASURE - 801)) | (1 << (PlSqlParser.MEASURES - 801)) | (1 << (PlSqlParser.MEDIUM - 801)) | (1 << (PlSqlParser.MEMBER - 801)) | (1 << (PlSqlParser.MEMCOMPRESS - 801)) | (1 << (PlSqlParser.MEMORY - 801)) | (1 << (PlSqlParser.MERGEACTIONS - 801)) | (1 << (PlSqlParser.MERGE_AJ - 801)) | (1 << (PlSqlParser.MERGE_CONST_ON - 801)) | (1 << (PlSqlParser.MERGE - 801)))) !== 0) || ((((_la - 833)) & ~0x1f) == 0 && ((1 << (_la - 833)) & ((1 << (PlSqlParser.MERGE_SJ - 833)) | (1 << (PlSqlParser.METADATA - 833)) | (1 << (PlSqlParser.METHOD - 833)) | (1 << (PlSqlParser.MIGRATE - 833)) | (1 << (PlSqlParser.MIGRATION - 833)) | (1 << (PlSqlParser.MINEXTENTS - 833)) | (1 << (PlSqlParser.MINIMIZE - 833)) | (1 << (PlSqlParser.MINIMUM - 833)) | (1 << (PlSqlParser.MINING - 833)) | (1 << (PlSqlParser.MINUS_NULL - 833)) | (1 << (PlSqlParser.MINUTE - 833)) | (1 << (PlSqlParser.MINVALUE - 833)) | (1 << (PlSqlParser.MIRRORCOLD - 833)) | (1 << (PlSqlParser.MIRRORHOT - 833)) | (1 << (PlSqlParser.MIRROR - 833)) | (1 << (PlSqlParser.MLSLABEL - 833)) | (1 << (PlSqlParser.MODEL_COMPILE_SUBQUERY - 833)) | (1 << (PlSqlParser.MODEL_DONTVERIFY_UNIQUENESS - 833)) | (1 << (PlSqlParser.MODEL_DYNAMIC_SUBQUERY - 833)) | (1 << (PlSqlParser.MODEL_MIN_ANALYSIS - 833)) | (1 << (PlSqlParser.MODEL - 833)) | (1 << (PlSqlParser.MODEL_NB - 833)) | (1 << (PlSqlParser.MODEL_NO_ANALYSIS - 833)) | (1 << (PlSqlParser.MODEL_PBY - 833)) | (1 << (PlSqlParser.MODEL_PUSH_REF - 833)) | (1 << (PlSqlParser.MODEL_SV - 833)) | (1 << (PlSqlParser.MODIFICATION - 833)) | (1 << (PlSqlParser.MODIFY_COLUMN_TYPE - 833)) | (1 << (PlSqlParser.MODIFY - 833)) | (1 << (PlSqlParser.MOD - 833)))) !== 0) || ((((_la - 865)) & ~0x1f) == 0 && ((1 << (_la - 865)) & ((1 << (PlSqlParser.MODULE - 865)) | (1 << (PlSqlParser.MONITORING - 865)) | (1 << (PlSqlParser.MONITOR - 865)) | (1 << (PlSqlParser.MONTH - 865)) | (1 << (PlSqlParser.MONTHS_BETWEEN - 865)) | (1 << (PlSqlParser.MONTHS - 865)) | (1 << (PlSqlParser.MOUNT - 865)) | (1 << (PlSqlParser.MOUNTPATH - 865)) | (1 << (PlSqlParser.MOVEMENT - 865)) | (1 << (PlSqlParser.MOVE - 865)) | (1 << (PlSqlParser.MULTIDIMENSIONAL - 865)) | (1 << (PlSqlParser.MULTISET - 865)) | (1 << (PlSqlParser.MV_MERGE - 865)) | (1 << (PlSqlParser.NAMED - 865)) | (1 << (PlSqlParser.NAME - 865)) | (1 << (PlSqlParser.NAMESPACE - 865)) | (1 << (PlSqlParser.NAN - 865)) | (1 << (PlSqlParser.NANVL - 865)) | (1 << (PlSqlParser.NATIONAL - 865)) | (1 << (PlSqlParser.NATIVE_FULL_OUTER_JOIN - 865)) | (1 << (PlSqlParser.NATIVE - 865)) | (1 << (PlSqlParser.NATURAL - 865)) | (1 << (PlSqlParser.NATURALN - 865)) | (1 << (PlSqlParser.NAV - 865)) | (1 << (PlSqlParser.NCHAR_CS - 865)) | (1 << (PlSqlParser.NCHAR - 865)) | (1 << (PlSqlParser.NCHR - 865)) | (1 << (PlSqlParser.NCLOB - 865)) | (1 << (PlSqlParser.NEEDED - 865)) | (1 << (PlSqlParser.NEG - 865)) | (1 << (PlSqlParser.NESTED - 865)) | (1 << (PlSqlParser.NESTED_TABLE_FAST_INSERT - 865)))) !== 0) || ((((_la - 897)) & ~0x1f) == 0 && ((1 << (_la - 897)) & ((1 << (PlSqlParser.NESTED_TABLE_GET_REFS - 897)) | (1 << (PlSqlParser.NESTED_TABLE_ID - 897)) | (1 << (PlSqlParser.NESTED_TABLE_SET_REFS - 897)) | (1 << (PlSqlParser.NESTED_TABLE_SET_SETID - 897)) | (1 << (PlSqlParser.NETWORK - 897)) | (1 << (PlSqlParser.NEVER - 897)) | (1 << (PlSqlParser.NEW - 897)) | (1 << (PlSqlParser.NEW_TIME - 897)) | (1 << (PlSqlParser.NEXT_DAY - 897)) | (1 << (PlSqlParser.NEXT - 897)) | (1 << (PlSqlParser.NL_AJ - 897)) | (1 << (PlSqlParser.NLJ_BATCHING - 897)) | (1 << (PlSqlParser.NLJ_INDEX_FILTER - 897)) | (1 << (PlSqlParser.NLJ_INDEX_SCAN - 897)) | (1 << (PlSqlParser.NLJ_PREFETCH - 897)) | (1 << (PlSqlParser.NLS_CALENDAR - 897)) | (1 << (PlSqlParser.NLS_CHARACTERSET - 897)) | (1 << (PlSqlParser.NLS_CHARSET_DECL_LEN - 897)) | (1 << (PlSqlParser.NLS_CHARSET_ID - 897)) | (1 << (PlSqlParser.NLS_CHARSET_NAME - 897)) | (1 << (PlSqlParser.NLS_COMP - 897)) | (1 << (PlSqlParser.NLS_CURRENCY - 897)) | (1 << (PlSqlParser.NLS_DATE_FORMAT - 897)) | (1 << (PlSqlParser.NLS_DATE_LANGUAGE - 897)) | (1 << (PlSqlParser.NLS_INITCAP - 897)) | (1 << (PlSqlParser.NLS_ISO_CURRENCY - 897)) | (1 << (PlSqlParser.NL_SJ - 897)) | (1 << (PlSqlParser.NLS_LANG - 897)) | (1 << (PlSqlParser.NLS_LANGUAGE - 897)) | (1 << (PlSqlParser.NLS_LENGTH_SEMANTICS - 897)) | (1 << (PlSqlParser.NLS_LOWER - 897)) | (1 << (PlSqlParser.NLS_NCHAR_CONV_EXCP - 897)))) !== 0) || ((((_la - 929)) & ~0x1f) == 0 && ((1 << (_la - 929)) & ((1 << (PlSqlParser.NLS_NUMERIC_CHARACTERS - 929)) | (1 << (PlSqlParser.NLS_SORT - 929)) | (1 << (PlSqlParser.NLSSORT - 929)) | (1 << (PlSqlParser.NLS_SPECIAL_CHARS - 929)) | (1 << (PlSqlParser.NLS_TERRITORY - 929)) | (1 << (PlSqlParser.NLS_UPPER - 929)) | (1 << (PlSqlParser.NO_ACCESS - 929)) | (1 << (PlSqlParser.NO_ADAPTIVE_PLAN - 929)) | (1 << (PlSqlParser.NO_ANSI_REARCH - 929)) | (1 << (PlSqlParser.NOAPPEND - 929)) | (1 << (PlSqlParser.NOARCHIVELOG - 929)) | (1 << (PlSqlParser.NOAUDIT - 929)) | (1 << (PlSqlParser.NO_AUTO_REOPTIMIZE - 929)) | (1 << (PlSqlParser.NO_BASETABLE_MULTIMV_REWRITE - 929)) | (1 << (PlSqlParser.NO_BATCH_TABLE_ACCESS_BY_ROWID - 929)) | (1 << (PlSqlParser.NO_BIND_AWARE - 929)) | (1 << (PlSqlParser.NO_BUFFER - 929)) | (1 << (PlSqlParser.NOCACHE - 929)) | (1 << (PlSqlParser.NO_CARTESIAN - 929)) | (1 << (PlSqlParser.NO_CHECK_ACL_REWRITE - 929)) | (1 << (PlSqlParser.NO_CLUSTER_BY_ROWID - 929)) | (1 << (PlSqlParser.NO_CLUSTERING - 929)) | (1 << (PlSqlParser.NO_COALESCE_SQ - 929)) | (1 << (PlSqlParser.NO_COMMON_DATA - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_CB_WHR_ONLY - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_COMBINE_SW - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_COST_BASED - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_ELIM_DUPS - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_FILTERING - 929)) | (1 << (PlSqlParser.NOCOPY - 929)) | (1 << (PlSqlParser.NO_COST_XML_QUERY_REWRITE - 929)))) !== 0) || ((((_la - 961)) & ~0x1f) == 0 && ((1 << (_la - 961)) & ((1 << (PlSqlParser.NO_CPU_COSTING - 961)) | (1 << (PlSqlParser.NOCPU_COSTING - 961)) | (1 << (PlSqlParser.NOCYCLE - 961)) | (1 << (PlSqlParser.NO_DATA_SECURITY_REWRITE - 961)) | (1 << (PlSqlParser.NO_DECORRELATE - 961)) | (1 << (PlSqlParser.NODELAY - 961)) | (1 << (PlSqlParser.NO_DOMAIN_INDEX_FILTER - 961)) | (1 << (PlSqlParser.NO_DST_UPGRADE_INSERT_CONV - 961)) | (1 << (PlSqlParser.NO_ELIM_GROUPBY - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_JOIN - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_OBY - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_OUTER_JOIN - 961)) | (1 << (PlSqlParser.NOENTITYESCAPING - 961)) | (1 << (PlSqlParser.NO_EXPAND_GSET_TO_UNION - 961)) | (1 << (PlSqlParser.NO_EXPAND - 961)) | (1 << (PlSqlParser.NO_EXPAND_TABLE - 961)) | (1 << (PlSqlParser.NO_FACT - 961)) | (1 << (PlSqlParser.NO_FACTORIZE_JOIN - 961)) | (1 << (PlSqlParser.NO_FILTERING - 961)) | (1 << (PlSqlParser.NOFORCE - 961)) | (1 << (PlSqlParser.NO_FULL_OUTER_JOIN_TO_OUTER - 961)) | (1 << (PlSqlParser.NO_GATHER_OPTIMIZER_STATISTICS - 961)) | (1 << (PlSqlParser.NO_GBY_PUSHDOWN - 961)) | (1 << (PlSqlParser.NOGUARANTEE - 961)) | (1 << (PlSqlParser.NO_INDEX_FFS - 961)) | (1 << (PlSqlParser.NO_INDEX - 961)) | (1 << (PlSqlParser.NO_INDEX_SS - 961)) | (1 << (PlSqlParser.NO_INMEMORY - 961)) | (1 << (PlSqlParser.NO_INMEMORY_PRUNING - 961)) | (1 << (PlSqlParser.NOKEEP - 961)) | (1 << (PlSqlParser.NO_LOAD - 961)) | (1 << (PlSqlParser.NOLOCAL - 961)))) !== 0) || ((((_la - 993)) & ~0x1f) == 0 && ((1 << (_la - 993)) & ((1 << (PlSqlParser.NOLOGGING - 993)) | (1 << (PlSqlParser.NOMAPPING - 993)) | (1 << (PlSqlParser.NOMAXVALUE - 993)) | (1 << (PlSqlParser.NO_MERGE - 993)) | (1 << (PlSqlParser.NOMINIMIZE - 993)) | (1 << (PlSqlParser.NOMINVALUE - 993)) | (1 << (PlSqlParser.NO_MODEL_PUSH_REF - 993)) | (1 << (PlSqlParser.NO_MONITORING - 993)) | (1 << (PlSqlParser.NOMONITORING - 993)) | (1 << (PlSqlParser.NO_MONITOR - 993)) | (1 << (PlSqlParser.NO_MULTIMV_REWRITE - 993)) | (1 << (PlSqlParser.NO_NATIVE_FULL_OUTER_JOIN - 993)) | (1 << (PlSqlParser.NONBLOCKING - 993)) | (1 << (PlSqlParser.NONEDITIONABLE - 993)) | (1 << (PlSqlParser.NONE - 993)) | (1 << (PlSqlParser.NO_NLJ_BATCHING - 993)) | (1 << (PlSqlParser.NO_NLJ_PREFETCH - 993)) | (1 << (PlSqlParser.NO - 993)) | (1 << (PlSqlParser.NONSCHEMA - 993)) | (1 << (PlSqlParser.NO_OBJECT_LINK - 993)) | (1 << (PlSqlParser.NOORDER - 993)) | (1 << (PlSqlParser.NO_ORDER_ROLLUPS - 993)) | (1 << (PlSqlParser.NO_OUTER_JOIN_TO_ANTI - 993)) | (1 << (PlSqlParser.NO_OUTER_JOIN_TO_INNER - 993)) | (1 << (PlSqlParser.NOOVERRIDE - 993)) | (1 << (PlSqlParser.NO_PARALLEL_INDEX - 993)) | (1 << (PlSqlParser.NOPARALLEL_INDEX - 993)) | (1 << (PlSqlParser.NO_PARALLEL - 993)) | (1 << (PlSqlParser.NOPARALLEL - 993)) | (1 << (PlSqlParser.NO_PARTIAL_COMMIT - 993)) | (1 << (PlSqlParser.NO_PARTIAL_JOIN - 993)) | (1 << (PlSqlParser.NO_PARTIAL_ROLLUP_PUSHDOWN - 993)))) !== 0) || ((((_la - 1025)) & ~0x1f) == 0 && ((1 << (_la - 1025)) & ((1 << (PlSqlParser.NOPARTITION - 1025)) | (1 << (PlSqlParser.NO_PLACE_DISTINCT - 1025)) | (1 << (PlSqlParser.NO_PLACE_GROUP_BY - 1025)) | (1 << (PlSqlParser.NO_PQ_CONCURRENT_UNION - 1025)) | (1 << (PlSqlParser.NO_PQ_MAP - 1025)) | (1 << (PlSqlParser.NO_PQ_REPLICATE - 1025)) | (1 << (PlSqlParser.NO_PQ_SKEW - 1025)) | (1 << (PlSqlParser.NO_PRUNE_GSETS - 1025)) | (1 << (PlSqlParser.NO_PULL_PRED - 1025)) | (1 << (PlSqlParser.NO_PUSH_PRED - 1025)) | (1 << (PlSqlParser.NO_PUSH_SUBQ - 1025)) | (1 << (PlSqlParser.NO_PX_FAULT_TOLERANCE - 1025)) | (1 << (PlSqlParser.NO_PX_JOIN_FILTER - 1025)) | (1 << (PlSqlParser.NO_QKN_BUFF - 1025)) | (1 << (PlSqlParser.NO_QUERY_TRANSFORMATION - 1025)) | (1 << (PlSqlParser.NO_REF_CASCADE - 1025)) | (1 << (PlSqlParser.NORELOCATE - 1025)) | (1 << (PlSqlParser.NORELY - 1025)) | (1 << (PlSqlParser.NOREPAIR - 1025)) | (1 << (PlSqlParser.NOREPLAY - 1025)) | (1 << (PlSqlParser.NORESETLOGS - 1025)) | (1 << (PlSqlParser.NO_RESULT_CACHE - 1025)) | (1 << (PlSqlParser.NOREVERSE - 1025)) | (1 << (PlSqlParser.NO_REWRITE - 1025)) | (1 << (PlSqlParser.NOREWRITE - 1025)) | (1 << (PlSqlParser.NORMAL - 1025)) | (1 << (PlSqlParser.NO_ROOT_SW_FOR_LOCAL - 1025)) | (1 << (PlSqlParser.NOROWDEPENDENCIES - 1025)) | (1 << (PlSqlParser.NOSCHEMACHECK - 1025)) | (1 << (PlSqlParser.NOSEGMENT - 1025)) | (1 << (PlSqlParser.NO_SEMIJOIN - 1025)) | (1 << (PlSqlParser.NO_SEMI_TO_INNER - 1025)))) !== 0) || ((((_la - 1057)) & ~0x1f) == 0 && ((1 << (_la - 1057)) & ((1 << (PlSqlParser.NO_SET_TO_JOIN - 1057)) | (1 << (PlSqlParser.NOSORT - 1057)) | (1 << (PlSqlParser.NO_SQL_TRANSLATION - 1057)) | (1 << (PlSqlParser.NO_SQL_TUNE - 1057)) | (1 << (PlSqlParser.NO_STAR_TRANSFORMATION - 1057)) | (1 << (PlSqlParser.NO_STATEMENT_QUEUING - 1057)) | (1 << (PlSqlParser.NO_STATS_GSETS - 1057)) | (1 << (PlSqlParser.NOSTRICT - 1057)) | (1 << (PlSqlParser.NO_SUBQUERY_PRUNING - 1057)) | (1 << (PlSqlParser.NO_SUBSTRB_PAD - 1057)) | (1 << (PlSqlParser.NO_SWAP_JOIN_INPUTS - 1057)) | (1 << (PlSqlParser.NOSWITCH - 1057)) | (1 << (PlSqlParser.NO_TABLE_LOOKUP_BY_NL - 1057)) | (1 << (PlSqlParser.NO_TEMP_TABLE - 1057)) | (1 << (PlSqlParser.NOTHING - 1057)) | (1 << (PlSqlParser.NOTIFICATION - 1057)) | (1 << (PlSqlParser.NO_TRANSFORM_DISTINCT_AGG - 1057)) | (1 << (PlSqlParser.NO_UNNEST - 1057)) | (1 << (PlSqlParser.NO_USE_CUBE - 1057)) | (1 << (PlSqlParser.NO_USE_HASH_AGGREGATION - 1057)) | (1 << (PlSqlParser.NO_USE_HASH_GBY_FOR_PUSHDOWN - 1057)) | (1 << (PlSqlParser.NO_USE_HASH - 1057)) | (1 << (PlSqlParser.NO_USE_INVISIBLE_INDEXES - 1057)) | (1 << (PlSqlParser.NO_USE_MERGE - 1057)) | (1 << (PlSqlParser.NO_USE_NL - 1057)) | (1 << (PlSqlParser.NO_USE_VECTOR_AGGREGATION - 1057)) | (1 << (PlSqlParser.NOVALIDATE - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM_DIMS - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM_FACT - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM - 1057)))) !== 0) || ((((_la - 1089)) & ~0x1f) == 0 && ((1 << (_la - 1089)) & ((1 << (PlSqlParser.NO_XDB_FASTPATH_INSERT - 1089)) | (1 << (PlSqlParser.NO_XML_DML_REWRITE - 1089)) | (1 << (PlSqlParser.NO_XMLINDEX_REWRITE_IN_SELECT - 1089)) | (1 << (PlSqlParser.NO_XMLINDEX_REWRITE - 1089)) | (1 << (PlSqlParser.NO_XML_QUERY_REWRITE - 1089)) | (1 << (PlSqlParser.NO_ZONEMAP - 1089)) | (1 << (PlSqlParser.NTH_VALUE - 1089)) | (1 << (PlSqlParser.NULLIF - 1089)) | (1 << (PlSqlParser.NULLS - 1089)) | (1 << (PlSqlParser.NUMBER - 1089)) | (1 << (PlSqlParser.NUMERIC - 1089)) | (1 << (PlSqlParser.NUM_INDEX_KEYS - 1089)) | (1 << (PlSqlParser.NUMTODSINTERVAL - 1089)) | (1 << (PlSqlParser.NUMTOYMINTERVAL - 1089)) | (1 << (PlSqlParser.NVARCHAR2 - 1089)) | (1 << (PlSqlParser.NVL2 - 1089)) | (1 << (PlSqlParser.OBJECT2XML - 1089)) | (1 << (PlSqlParser.OBJECT - 1089)) | (1 << (PlSqlParser.OBJ_ID - 1089)) | (1 << (PlSqlParser.OBJNO - 1089)) | (1 << (PlSqlParser.OBJNO_REUSE - 1089)) | (1 << (PlSqlParser.OCCURENCES - 1089)) | (1 << (PlSqlParser.OFFLINE - 1089)) | (1 << (PlSqlParser.OFF - 1089)) | (1 << (PlSqlParser.OFFSET - 1089)) | (1 << (PlSqlParser.OIDINDEX - 1089)) | (1 << (PlSqlParser.OID - 1089)) | (1 << (PlSqlParser.OLAP - 1089)) | (1 << (PlSqlParser.OLD - 1089)) | (1 << (PlSqlParser.OLD_PUSH_PRED - 1089)))) !== 0) || ((((_la - 1121)) & ~0x1f) == 0 && ((1 << (_la - 1121)) & ((1 << (PlSqlParser.OLS - 1121)) | (1 << (PlSqlParser.OLTP - 1121)) | (1 << (PlSqlParser.OMIT - 1121)) | (1 << (PlSqlParser.ONE - 1121)) | (1 << (PlSqlParser.ONLINE - 1121)) | (1 << (PlSqlParser.ONLY - 1121)) | (1 << (PlSqlParser.OPAQUE - 1121)) | (1 << (PlSqlParser.OPAQUE_TRANSFORM - 1121)) | (1 << (PlSqlParser.OPAQUE_XCANONICAL - 1121)) | (1 << (PlSqlParser.OPCODE - 1121)) | (1 << (PlSqlParser.OPEN - 1121)) | (1 << (PlSqlParser.OPERATIONS - 1121)) | (1 << (PlSqlParser.OPERATOR - 1121)) | (1 << (PlSqlParser.OPT_ESTIMATE - 1121)) | (1 << (PlSqlParser.OPTIMAL - 1121)) | (1 << (PlSqlParser.OPTIMIZE - 1121)) | (1 << (PlSqlParser.OPTIMIZER_FEATURES_ENABLE - 1121)) | (1 << (PlSqlParser.OPTIMIZER_GOAL - 1121)) | (1 << (PlSqlParser.OPT_PARAM - 1121)) | (1 << (PlSqlParser.ORA_BRANCH - 1121)) | (1 << (PlSqlParser.ORA_CHECK_ACL - 1121)) | (1 << (PlSqlParser.ORA_CHECK_PRIVILEGE - 1121)) | (1 << (PlSqlParser.ORA_CLUSTERING - 1121)) | (1 << (PlSqlParser.ORADATA - 1121)) | (1 << (PlSqlParser.ORADEBUG - 1121)) | (1 << (PlSqlParser.ORA_DST_AFFECTED - 1121)) | (1 << (PlSqlParser.ORA_DST_CONVERT - 1121)) | (1 << (PlSqlParser.ORA_DST_ERROR - 1121)) | (1 << (PlSqlParser.ORA_GET_ACLIDS - 1121)))) !== 0) || ((((_la - 1153)) & ~0x1f) == 0 && ((1 << (_la - 1153)) & ((1 << (PlSqlParser.ORA_GET_PRIVILEGES - 1153)) | (1 << (PlSqlParser.ORA_HASH - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_USERID - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_USER - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_XS_USER_GUID - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_XS_USER - 1153)) | (1 << (PlSqlParser.ORA_RAWCOMPARE - 1153)) | (1 << (PlSqlParser.ORA_RAWCONCAT - 1153)) | (1 << (PlSqlParser.ORA_ROWSCN - 1153)) | (1 << (PlSqlParser.ORA_ROWSCN_RAW - 1153)) | (1 << (PlSqlParser.ORA_ROWVERSION - 1153)) | (1 << (PlSqlParser.ORA_TABVERSION - 1153)) | (1 << (PlSqlParser.ORA_WRITE_TIME - 1153)) | (1 << (PlSqlParser.ORDERED - 1153)) | (1 << (PlSqlParser.ORDERED_PREDICATES - 1153)) | (1 << (PlSqlParser.ORDINALITY - 1153)) | (1 << (PlSqlParser.OR_EXPAND - 1153)) | (1 << (PlSqlParser.ORGANIZATION - 1153)) | (1 << (PlSqlParser.OR_PREDICATES - 1153)) | (1 << (PlSqlParser.OSERROR - 1153)) | (1 << (PlSqlParser.OTHER - 1153)) | (1 << (PlSqlParser.OUTER_JOIN_TO_ANTI - 1153)) | (1 << (PlSqlParser.OUTER_JOIN_TO_INNER - 1153)) | (1 << (PlSqlParser.OUTER - 1153)) | (1 << (PlSqlParser.OUTLINE_LEAF - 1153)) | (1 << (PlSqlParser.OUTLINE - 1153)) | (1 << (PlSqlParser.OUT_OF_LINE - 1153)) | (1 << (PlSqlParser.OUT - 1153)) | (1 << (PlSqlParser.OVERFLOW_NOMOVE - 1153)) | (1 << (PlSqlParser.OVERFLOW - 1153)))) !== 0) || ((((_la - 1185)) & ~0x1f) == 0 && ((1 << (_la - 1185)) & ((1 << (PlSqlParser.OVERLAPS - 1185)) | (1 << (PlSqlParser.OVER - 1185)) | (1 << (PlSqlParser.OVERRIDING - 1185)) | (1 << (PlSqlParser.OWNER - 1185)) | (1 << (PlSqlParser.OWNERSHIP - 1185)) | (1 << (PlSqlParser.OWN - 1185)) | (1 << (PlSqlParser.PACKAGE - 1185)) | (1 << (PlSqlParser.PACKAGES - 1185)) | (1 << (PlSqlParser.PARALLEL_ENABLE - 1185)) | (1 << (PlSqlParser.PARALLEL_INDEX - 1185)) | (1 << (PlSqlParser.PARALLEL - 1185)) | (1 << (PlSqlParser.PARAMETERS - 1185)) | (1 << (PlSqlParser.PARAM - 1185)) | (1 << (PlSqlParser.PARENT - 1185)) | (1 << (PlSqlParser.PARITY - 1185)) | (1 << (PlSqlParser.PARTIAL_JOIN - 1185)) | (1 << (PlSqlParser.PARTIALLY - 1185)) | (1 << (PlSqlParser.PARTIAL - 1185)) | (1 << (PlSqlParser.PARTIAL_ROLLUP_PUSHDOWN - 1185)) | (1 << (PlSqlParser.PARTITION_HASH - 1185)) | (1 << (PlSqlParser.PARTITION_LIST - 1185)) | (1 << (PlSqlParser.PARTITION - 1185)) | (1 << (PlSqlParser.PARTITION_RANGE - 1185)) | (1 << (PlSqlParser.PARTITIONS - 1185)) | (1 << (PlSqlParser.PARTNUMINST - 1185)) | (1 << (PlSqlParser.PASSING - 1185)) | (1 << (PlSqlParser.PASSWORD_GRACE_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD_LIFE_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD_LOCK_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD - 1185)) | (1 << (PlSqlParser.PASSWORD_REUSE_MAX - 1185)))) !== 0) || ((((_la - 1217)) & ~0x1f) == 0 && ((1 << (_la - 1217)) & ((1 << (PlSqlParser.PASSWORD_REUSE_TIME - 1217)) | (1 << (PlSqlParser.PASSWORD_VERIFY_FUNCTION - 1217)) | (1 << (PlSqlParser.PAST - 1217)) | (1 << (PlSqlParser.PATCH - 1217)) | (1 << (PlSqlParser.PATH - 1217)) | (1 << (PlSqlParser.PATH_PREFIX - 1217)) | (1 << (PlSqlParser.PATHS - 1217)) | (1 << (PlSqlParser.PATTERN - 1217)) | (1 << (PlSqlParser.PBL_HS_BEGIN - 1217)) | (1 << (PlSqlParser.PBL_HS_END - 1217)) | (1 << (PlSqlParser.PCTINCREASE - 1217)) | (1 << (PlSqlParser.PCTTHRESHOLD - 1217)) | (1 << (PlSqlParser.PCTUSED - 1217)) | (1 << (PlSqlParser.PCTVERSION - 1217)) | (1 << (PlSqlParser.PENDING - 1217)) | (1 << (PlSqlParser.PERCENT_KEYWORD - 1217)) | (1 << (PlSqlParser.PERCENT_RANKM - 1217)) | (1 << (PlSqlParser.PERFORMANCE - 1217)) | (1 << (PlSqlParser.PERIOD_KEYWORD - 1217)) | (1 << (PlSqlParser.PERMANENT - 1217)) | (1 << (PlSqlParser.PERMISSION - 1217)) | (1 << (PlSqlParser.PERMUTE - 1217)) | (1 << (PlSqlParser.PER - 1217)) | (1 << (PlSqlParser.PFILE - 1217)) | (1 << (PlSqlParser.PHYSICAL - 1217)))) !== 0) || ((((_la - 1249)) & ~0x1f) == 0 && ((1 << (_la - 1249)) & ((1 << (PlSqlParser.PIKEY - 1249)) | (1 << (PlSqlParser.PIPELINED - 1249)) | (1 << (PlSqlParser.PIV_GB - 1249)) | (1 << (PlSqlParser.PIVOT - 1249)) | (1 << (PlSqlParser.PIV_SSF - 1249)) | (1 << (PlSqlParser.PLACE_DISTINCT - 1249)) | (1 << (PlSqlParser.PLACE_GROUP_BY - 1249)) | (1 << (PlSqlParser.PLAN - 1249)) | (1 << (PlSqlParser.PLSCOPE_SETTINGS - 1249)) | (1 << (PlSqlParser.PLS_INTEGER - 1249)) | (1 << (PlSqlParser.PLSQL_CCFLAGS - 1249)) | (1 << (PlSqlParser.PLSQL_CODE_TYPE - 1249)) | (1 << (PlSqlParser.PLSQL_DEBUG - 1249)) | (1 << (PlSqlParser.PLSQL_OPTIMIZE_LEVEL - 1249)) | (1 << (PlSqlParser.PLSQL_WARNINGS - 1249)) | (1 << (PlSqlParser.PLUGGABLE - 1249)) | (1 << (PlSqlParser.POINT - 1249)) | (1 << (PlSqlParser.POLICY - 1249)) | (1 << (PlSqlParser.POOL_16K - 1249)) | (1 << (PlSqlParser.POOL_2K - 1249)) | (1 << (PlSqlParser.POOL_32K - 1249)) | (1 << (PlSqlParser.POOL_4K - 1249)) | (1 << (PlSqlParser.POOL_8K - 1249)) | (1 << (PlSqlParser.POSITIVEN - 1249)) | (1 << (PlSqlParser.POSITIVE - 1249)) | (1 << (PlSqlParser.POST_TRANSACTION - 1249)) | (1 << (PlSqlParser.POWERMULTISET_BY_CARDINALITY - 1249)) | (1 << (PlSqlParser.POWERMULTISET - 1249)) | (1 << (PlSqlParser.POWER - 1249)) | (1 << (PlSqlParser.PQ_CONCURRENT_UNION - 1249)) | (1 << (PlSqlParser.PQ_DISTRIBUTE - 1249)))) !== 0) || ((((_la - 1281)) & ~0x1f) == 0 && ((1 << (_la - 1281)) & ((1 << (PlSqlParser.PQ_DISTRIBUTE_WINDOW - 1281)) | (1 << (PlSqlParser.PQ_FILTER - 1281)) | (1 << (PlSqlParser.PQ_MAP - 1281)) | (1 << (PlSqlParser.PQ_NOMAP - 1281)) | (1 << (PlSqlParser.PQ_REPLICATE - 1281)) | (1 << (PlSqlParser.PQ_SKEW - 1281)) | (1 << (PlSqlParser.PRAGMA - 1281)) | (1 << (PlSqlParser.PREBUILT - 1281)) | (1 << (PlSqlParser.PRECEDES - 1281)) | (1 << (PlSqlParser.PRECEDING - 1281)) | (1 << (PlSqlParser.PRECISION - 1281)) | (1 << (PlSqlParser.PRECOMPUTE_SUBQUERY - 1281)) | (1 << (PlSqlParser.PREDICATE_REORDERS - 1281)) | (1 << (PlSqlParser.PRELOAD - 1281)) | (1 << (PlSqlParser.PREPARE - 1281)) | (1 << (PlSqlParser.PRESENTNNV - 1281)) | (1 << (PlSqlParser.PRESENT - 1281)) | (1 << (PlSqlParser.PRESENTV - 1281)) | (1 << (PlSqlParser.PRESERVE_OID - 1281)) | (1 << (PlSqlParser.PRESERVE - 1281)) | (1 << (PlSqlParser.PRETTY - 1281)) | (1 << (PlSqlParser.PREVIOUS - 1281)) | (1 << (PlSqlParser.PREV - 1281)) | (1 << (PlSqlParser.PRIMARY - 1281)) | (1 << (PlSqlParser.PRINTBLOBTOCLOB - 1281)) | (1 << (PlSqlParser.PRIORITY - 1281)) | (1 << (PlSqlParser.PRIVATE - 1281)) | (1 << (PlSqlParser.PRIVATE_SGA - 1281)) | (1 << (PlSqlParser.PRIVILEGED - 1281)) | (1 << (PlSqlParser.PRIVILEGE - 1281)) | (1 << (PlSqlParser.PRIVILEGES - 1281)))) !== 0) || ((((_la - 1313)) & ~0x1f) == 0 && ((1 << (_la - 1313)) & ((1 << (PlSqlParser.PROCEDURAL - 1313)) | (1 << (PlSqlParser.PROCEDURE - 1313)) | (1 << (PlSqlParser.PROCESS - 1313)) | (1 << (PlSqlParser.PROFILE - 1313)) | (1 << (PlSqlParser.PROGRAM - 1313)) | (1 << (PlSqlParser.PROJECT - 1313)) | (1 << (PlSqlParser.PROPAGATE - 1313)) | (1 << (PlSqlParser.PROTECTED - 1313)) | (1 << (PlSqlParser.PROTECTION - 1313)) | (1 << (PlSqlParser.PROXY - 1313)) | (1 << (PlSqlParser.PRUNING - 1313)) | (1 << (PlSqlParser.PULL_PRED - 1313)) | (1 << (PlSqlParser.PURGE - 1313)) | (1 << (PlSqlParser.PUSH_PRED - 1313)) | (1 << (PlSqlParser.PUSH_SUBQ - 1313)) | (1 << (PlSqlParser.PX_FAULT_TOLERANCE - 1313)) | (1 << (PlSqlParser.PX_GRANULE - 1313)) | (1 << (PlSqlParser.PX_JOIN_FILTER - 1313)) | (1 << (PlSqlParser.QB_NAME - 1313)) | (1 << (PlSqlParser.QUERY_BLOCK - 1313)) | (1 << (PlSqlParser.QUERY - 1313)) | (1 << (PlSqlParser.QUEUE_CURR - 1313)) | (1 << (PlSqlParser.QUEUE - 1313)) | (1 << (PlSqlParser.QUEUE_ROWP - 1313)) | (1 << (PlSqlParser.QUIESCE - 1313)) | (1 << (PlSqlParser.QUORUM - 1313)) | (1 << (PlSqlParser.QUOTA - 1313)) | (1 << (PlSqlParser.RAISE - 1313)) | (1 << (PlSqlParser.RANDOM_LOCAL - 1313)) | (1 << (PlSqlParser.RANDOM - 1313)) | (1 << (PlSqlParser.RANGE - 1313)))) !== 0) || ((((_la - 1345)) & ~0x1f) == 0 && ((1 << (_la - 1345)) & ((1 << (PlSqlParser.RANKM - 1345)) | (1 << (PlSqlParser.RAPIDLY - 1345)) | (1 << (PlSqlParser.RAW - 1345)) | (1 << (PlSqlParser.RAWTOHEX - 1345)) | (1 << (PlSqlParser.RAWTONHEX - 1345)) | (1 << (PlSqlParser.RBA - 1345)) | (1 << (PlSqlParser.RBO_OUTLINE - 1345)) | (1 << (PlSqlParser.RDBA - 1345)) | (1 << (PlSqlParser.READ - 1345)) | (1 << (PlSqlParser.READS - 1345)) | (1 << (PlSqlParser.REALM - 1345)) | (1 << (PlSqlParser.REAL - 1345)) | (1 << (PlSqlParser.REBALANCE - 1345)) | (1 << (PlSqlParser.REBUILD - 1345)) | (1 << (PlSqlParser.RECORD - 1345)) | (1 << (PlSqlParser.RECORDS_PER_BLOCK - 1345)) | (1 << (PlSqlParser.RECOVERABLE - 1345)) | (1 << (PlSqlParser.RECOVER - 1345)) | (1 << (PlSqlParser.RECOVERY - 1345)) | (1 << (PlSqlParser.RECYCLEBIN - 1345)) | (1 << (PlSqlParser.RECYCLE - 1345)) | (1 << (PlSqlParser.REDACTION - 1345)) | (1 << (PlSqlParser.REDEFINE - 1345)) | (1 << (PlSqlParser.REDO - 1345)) | (1 << (PlSqlParser.REDUCED - 1345)) | (1 << (PlSqlParser.REDUNDANCY - 1345)) | (1 << (PlSqlParser.REF_CASCADE_CURSOR - 1345)) | (1 << (PlSqlParser.REFERENCED - 1345)) | (1 << (PlSqlParser.REFERENCE - 1345)) | (1 << (PlSqlParser.REFERENCES - 1345)) | (1 << (PlSqlParser.REFERENCING - 1345)) | (1 << (PlSqlParser.REF - 1345)))) !== 0) || ((((_la - 1377)) & ~0x1f) == 0 && ((1 << (_la - 1377)) & ((1 << (PlSqlParser.REFRESH - 1377)) | (1 << (PlSqlParser.REFTOHEX - 1377)) | (1 << (PlSqlParser.REGEXP_COUNT - 1377)) | (1 << (PlSqlParser.REGEXP_INSTR - 1377)) | (1 << (PlSqlParser.REGEXP_LIKE - 1377)) | (1 << (PlSqlParser.REGEXP_REPLACE - 1377)) | (1 << (PlSqlParser.REGEXP_SUBSTR - 1377)) | (1 << (PlSqlParser.REGISTER - 1377)) | (1 << (PlSqlParser.REGR_AVGX - 1377)) | (1 << (PlSqlParser.REGR_AVGY - 1377)) | (1 << (PlSqlParser.REGR_COUNT - 1377)) | (1 << (PlSqlParser.REGR_INTERCEPT - 1377)) | (1 << (PlSqlParser.REGR_R2 - 1377)) | (1 << (PlSqlParser.REGR_SLOPE - 1377)) | (1 << (PlSqlParser.REGR_SXX - 1377)) | (1 << (PlSqlParser.REGR_SXY - 1377)) | (1 << (PlSqlParser.REGR_SYY - 1377)) | (1 << (PlSqlParser.REGULAR - 1377)) | (1 << (PlSqlParser.REJECT - 1377)) | (1 << (PlSqlParser.REKEY - 1377)) | (1 << (PlSqlParser.RELATIONAL - 1377)) | (1 << (PlSqlParser.RELOCATE - 1377)) | (1 << (PlSqlParser.RELY - 1377)) | (1 << (PlSqlParser.REMAINDER - 1377)) | (1 << (PlSqlParser.REMOTE_MAPPED - 1377)) | (1 << (PlSqlParser.REMOVE - 1377)) | (1 << (PlSqlParser.RENAME - 1377)) | (1 << (PlSqlParser.REPAIR - 1377)) | (1 << (PlSqlParser.REPEAT - 1377)) | (1 << (PlSqlParser.REPLACE - 1377)) | (1 << (PlSqlParser.REPLICATION - 1377)))) !== 0) || ((((_la - 1409)) & ~0x1f) == 0 && ((1 << (_la - 1409)) & ((1 << (PlSqlParser.REQUIRED - 1409)) | (1 << (PlSqlParser.RESETLOGS - 1409)) | (1 << (PlSqlParser.RESET - 1409)) | (1 << (PlSqlParser.RESIZE - 1409)) | (1 << (PlSqlParser.RESOLVE - 1409)) | (1 << (PlSqlParser.RESOLVER - 1409)) | (1 << (PlSqlParser.RESPECT - 1409)) | (1 << (PlSqlParser.RESTART - 1409)) | (1 << (PlSqlParser.RESTORE_AS_INTERVALS - 1409)) | (1 << (PlSqlParser.RESTORE - 1409)) | (1 << (PlSqlParser.RESTRICT_ALL_REF_CONS - 1409)) | (1 << (PlSqlParser.RESTRICTED - 1409)) | (1 << (PlSqlParser.RESTRICT_REFERENCES - 1409)) | (1 << (PlSqlParser.RESTRICT - 1409)) | (1 << (PlSqlParser.RESULT_CACHE - 1409)) | (1 << (PlSqlParser.RESULT - 1409)) | (1 << (PlSqlParser.RESUMABLE - 1409)) | (1 << (PlSqlParser.RESUME - 1409)) | (1 << (PlSqlParser.RETENTION - 1409)) | (1 << (PlSqlParser.RETRY_ON_ROW_CHANGE - 1409)) | (1 << (PlSqlParser.RETURNING - 1409)) | (1 << (PlSqlParser.RETURN - 1409)) | (1 << (PlSqlParser.REUSE - 1409)) | (1 << (PlSqlParser.REVERSE - 1409)) | (1 << (PlSqlParser.REWRITE_OR_ERROR - 1409)) | (1 << (PlSqlParser.REWRITE - 1409)) | (1 << (PlSqlParser.RIGHT - 1409)) | (1 << (PlSqlParser.ROLE - 1409)) | (1 << (PlSqlParser.ROLESET - 1409)) | (1 << (PlSqlParser.ROLES - 1409)))) !== 0) || ((((_la - 1441)) & ~0x1f) == 0 && ((1 << (_la - 1441)) & ((1 << (PlSqlParser.ROLLBACK - 1441)) | (1 << (PlSqlParser.ROLLING - 1441)) | (1 << (PlSqlParser.ROLLUP - 1441)) | (1 << (PlSqlParser.ROWDEPENDENCIES - 1441)) | (1 << (PlSqlParser.ROWID_MAPPING_TABLE - 1441)) | (1 << (PlSqlParser.ROWID - 1441)) | (1 << (PlSqlParser.ROWIDTOCHAR - 1441)) | (1 << (PlSqlParser.ROWIDTONCHAR - 1441)) | (1 << (PlSqlParser.ROW_LENGTH - 1441)) | (1 << (PlSqlParser.ROWNUM - 1441)) | (1 << (PlSqlParser.ROW - 1441)) | (1 << (PlSqlParser.ROWS - 1441)) | (1 << (PlSqlParser.RPAD - 1441)) | (1 << (PlSqlParser.RTRIM - 1441)) | (1 << (PlSqlParser.RULE - 1441)) | (1 << (PlSqlParser.RULES - 1441)) | (1 << (PlSqlParser.RUNNING - 1441)) | (1 << (PlSqlParser.SALT - 1441)) | (1 << (PlSqlParser.SAMPLE - 1441)) | (1 << (PlSqlParser.SAVE_AS_INTERVALS - 1441)) | (1 << (PlSqlParser.SAVEPOINT - 1441)) | (1 << (PlSqlParser.SAVE - 1441)) | (1 << (PlSqlParser.SB4 - 1441)) | (1 << (PlSqlParser.SCALE_ROWS - 1441)) | (1 << (PlSqlParser.SCALE - 1441)) | (1 << (PlSqlParser.SCAN_INSTANCES - 1441)) | (1 << (PlSqlParser.SCAN - 1441)) | (1 << (PlSqlParser.SCHEDULER - 1441)) | (1 << (PlSqlParser.SCHEMACHECK - 1441)) | (1 << (PlSqlParser.SCHEMA - 1441)) | (1 << (PlSqlParser.SCN_ASCENDING - 1441)) | (1 << (PlSqlParser.SCN - 1441)))) !== 0) || ((((_la - 1473)) & ~0x1f) == 0 && ((1 << (_la - 1473)) & ((1 << (PlSqlParser.SCOPE - 1473)) | (1 << (PlSqlParser.SCRUB - 1473)) | (1 << (PlSqlParser.SD_ALL - 1473)) | (1 << (PlSqlParser.SD_INHIBIT - 1473)) | (1 << (PlSqlParser.SDO_GEOM_MBR - 1473)) | (1 << (PlSqlParser.SD_SHOW - 1473)) | (1 << (PlSqlParser.SEARCH - 1473)) | (1 << (PlSqlParser.SECOND - 1473)) | (1 << (PlSqlParser.SECRET - 1473)) | (1 << (PlSqlParser.SECUREFILE_DBA - 1473)) | (1 << (PlSqlParser.SECUREFILE - 1473)) | (1 << (PlSqlParser.SECURITY - 1473)) | (1 << (PlSqlParser.SEED - 1473)) | (1 << (PlSqlParser.SEG_BLOCK - 1473)) | (1 << (PlSqlParser.SEG_FILE - 1473)) | (1 << (PlSqlParser.SEGMENT - 1473)) | (1 << (PlSqlParser.SELECTIVITY - 1473)) | (1 << (PlSqlParser.SELF - 1473)) | (1 << (PlSqlParser.SEMIJOIN_DRIVER - 1473)) | (1 << (PlSqlParser.SEMIJOIN - 1473)) | (1 << (PlSqlParser.SEMI_TO_INNER - 1473)) | (1 << (PlSqlParser.SEQUENCED - 1473)) | (1 << (PlSqlParser.SEQUENCE - 1473)) | (1 << (PlSqlParser.SEQUENTIAL - 1473)) | (1 << (PlSqlParser.SERIALIZABLE - 1473)) | (1 << (PlSqlParser.SERIALLY_REUSABLE - 1473)) | (1 << (PlSqlParser.SERIAL - 1473)) | (1 << (PlSqlParser.SERVERERROR - 1473)) | (1 << (PlSqlParser.SERVICE_NAME_CONVERT - 1473)) | (1 << (PlSqlParser.SERVICES - 1473)))) !== 0) || ((((_la - 1505)) & ~0x1f) == 0 && ((1 << (_la - 1505)) & ((1 << (PlSqlParser.SESSION_CACHED_CURSORS - 1505)) | (1 << (PlSqlParser.SESSION - 1505)) | (1 << (PlSqlParser.SESSIONS_PER_USER - 1505)) | (1 << (PlSqlParser.SESSIONTIMEZONE - 1505)) | (1 << (PlSqlParser.SESSIONTZNAME - 1505)) | (1 << (PlSqlParser.SET - 1505)) | (1 << (PlSqlParser.SETS - 1505)) | (1 << (PlSqlParser.SETTINGS - 1505)) | (1 << (PlSqlParser.SET_TO_JOIN - 1505)) | (1 << (PlSqlParser.SEVERE - 1505)) | (1 << (PlSqlParser.SHARED_POOL - 1505)) | (1 << (PlSqlParser.SHARED - 1505)) | (1 << (PlSqlParser.SHARING - 1505)) | (1 << (PlSqlParser.SHELFLIFE - 1505)) | (1 << (PlSqlParser.SHOW - 1505)) | (1 << (PlSqlParser.SHRINK - 1505)) | (1 << (PlSqlParser.SHUTDOWN - 1505)) | (1 << (PlSqlParser.SIBLINGS - 1505)) | (1 << (PlSqlParser.SID - 1505)) | (1 << (PlSqlParser.SIGNAL_COMPONENT - 1505)) | (1 << (PlSqlParser.SIGNAL_FUNCTION - 1505)) | (1 << (PlSqlParser.SIGN - 1505)) | (1 << (PlSqlParser.SIGNTYPE - 1505)) | (1 << (PlSqlParser.SIMPLE_INTEGER - 1505)) | (1 << (PlSqlParser.SIMPLE - 1505)) | (1 << (PlSqlParser.SINGLE - 1505)) | (1 << (PlSqlParser.SINGLETASK - 1505)) | (1 << (PlSqlParser.SINH - 1505)) | (1 << (PlSqlParser.SIN - 1505)) | (1 << (PlSqlParser.SKIP_EXT_OPTIMIZER - 1505)))) !== 0) || ((((_la - 1537)) & ~0x1f) == 0 && ((1 << (_la - 1537)) & ((1 << (PlSqlParser.SKIP_ - 1537)) | (1 << (PlSqlParser.SKIP_UNQ_UNUSABLE_IDX - 1537)) | (1 << (PlSqlParser.SKIP_UNUSABLE_INDEXES - 1537)) | (1 << (PlSqlParser.SMALLFILE - 1537)) | (1 << (PlSqlParser.SMALLINT - 1537)) | (1 << (PlSqlParser.SNAPSHOT - 1537)) | (1 << (PlSqlParser.SOME - 1537)) | (1 << (PlSqlParser.SORT - 1537)) | (1 << (PlSqlParser.SOUNDEX - 1537)) | (1 << (PlSqlParser.SOURCE_FILE_DIRECTORY - 1537)) | (1 << (PlSqlParser.SOURCE_FILE_NAME_CONVERT - 1537)) | (1 << (PlSqlParser.SOURCE - 1537)) | (1 << (PlSqlParser.SPACE_KEYWORD - 1537)) | (1 << (PlSqlParser.SPECIFICATION - 1537)) | (1 << (PlSqlParser.SPFILE - 1537)) | (1 << (PlSqlParser.SPLIT - 1537)) | (1 << (PlSqlParser.SPREADSHEET - 1537)) | (1 << (PlSqlParser.SQLDATA - 1537)) | (1 << (PlSqlParser.SQLERROR - 1537)) | (1 << (PlSqlParser.SQLLDR - 1537)) | (1 << (PlSqlParser.SQL - 1537)) | (1 << (PlSqlParser.SQL_TRACE - 1537)) | (1 << (PlSqlParser.SQL_TRANSLATION_PROFILE - 1537)) | (1 << (PlSqlParser.SQRT - 1537)) | (1 << (PlSqlParser.STALE - 1537)) | (1 << (PlSqlParser.STANDALONE - 1537)) | (1 << (PlSqlParser.STANDARD_HASH - 1537)) | (1 << (PlSqlParser.STANDBY_MAX_DATA_DELAY - 1537)) | (1 << (PlSqlParser.STANDBYS - 1537)) | (1 << (PlSqlParser.STANDBY - 1537)) | (1 << (PlSqlParser.STAR - 1537)) | (1 << (PlSqlParser.STAR_TRANSFORMATION - 1537)))) !== 0) || ((((_la - 1570)) & ~0x1f) == 0 && ((1 << (_la - 1570)) & ((1 << (PlSqlParser.STARTUP - 1570)) | (1 << (PlSqlParser.STATEMENT_ID - 1570)) | (1 << (PlSqlParser.STATEMENT_QUEUING - 1570)) | (1 << (PlSqlParser.STATEMENTS - 1570)) | (1 << (PlSqlParser.STATEMENT - 1570)) | (1 << (PlSqlParser.STATE - 1570)) | (1 << (PlSqlParser.STATIC - 1570)) | (1 << (PlSqlParser.STATISTICS - 1570)) | (1 << (PlSqlParser.STATS_BINOMIAL_TEST - 1570)) | (1 << (PlSqlParser.STATS_CROSSTAB - 1570)) | (1 << (PlSqlParser.STATS_F_TEST - 1570)) | (1 << (PlSqlParser.STATS_KS_TEST - 1570)) | (1 << (PlSqlParser.STATS_MODE - 1570)) | (1 << (PlSqlParser.STATS_MW_TEST - 1570)) | (1 << (PlSqlParser.STATS_ONE_WAY_ANOVA - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_INDEP - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_INDEPU - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_ONE - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_PAIRED - 1570)) | (1 << (PlSqlParser.STATS_WSR_TEST - 1570)) | (1 << (PlSqlParser.STDDEV_POP - 1570)) | (1 << (PlSqlParser.STDDEV_SAMP - 1570)) | (1 << (PlSqlParser.STOP - 1570)) | (1 << (PlSqlParser.STORAGE - 1570)) | (1 << (PlSqlParser.STORE - 1570)) | (1 << (PlSqlParser.STREAMS - 1570)) | (1 << (PlSqlParser.STREAM - 1570)) | (1 << (PlSqlParser.STRICT - 1570)) | (1 << (PlSqlParser.STRING - 1570)) | (1 << (PlSqlParser.STRIPE_COLUMNS - 1570)) | (1 << (PlSqlParser.STRIPE_WIDTH - 1570)) | (1 << (PlSqlParser.STRIP - 1570)))) !== 0) || ((((_la - 1602)) & ~0x1f) == 0 && ((1 << (_la - 1602)) & ((1 << (PlSqlParser.STRUCTURE - 1602)) | (1 << (PlSqlParser.SUBMULTISET - 1602)) | (1 << (PlSqlParser.SUBPARTITION_REL - 1602)) | (1 << (PlSqlParser.SUBPARTITIONS - 1602)) | (1 << (PlSqlParser.SUBPARTITION - 1602)) | (1 << (PlSqlParser.SUBQUERIES - 1602)) | (1 << (PlSqlParser.SUBQUERY_PRUNING - 1602)) | (1 << (PlSqlParser.SUBSCRIBE - 1602)) | (1 << (PlSqlParser.SUBSET - 1602)) | (1 << (PlSqlParser.SUBSTITUTABLE - 1602)) | (1 << (PlSqlParser.SUBSTR2 - 1602)) | (1 << (PlSqlParser.SUBSTR4 - 1602)) | (1 << (PlSqlParser.SUBSTRB - 1602)) | (1 << (PlSqlParser.SUBSTRC - 1602)) | (1 << (PlSqlParser.SUBTYPE - 1602)) | (1 << (PlSqlParser.SUCCESSFUL - 1602)) | (1 << (PlSqlParser.SUCCESS - 1602)) | (1 << (PlSqlParser.SUMMARY - 1602)) | (1 << (PlSqlParser.SUPPLEMENTAL - 1602)) | (1 << (PlSqlParser.SUSPEND - 1602)) | (1 << (PlSqlParser.SWAP_JOIN_INPUTS - 1602)) | (1 << (PlSqlParser.SWITCHOVER - 1602)) | (1 << (PlSqlParser.SWITCH - 1602)) | (1 << (PlSqlParser.SYNCHRONOUS - 1602)) | (1 << (PlSqlParser.SYNC - 1602)) | (1 << (PlSqlParser.SYSASM - 1602)) | (1 << (PlSqlParser.SYS_AUDIT - 1602)) | (1 << (PlSqlParser.SYSAUX - 1602)) | (1 << (PlSqlParser.SYSBACKUP - 1602)) | (1 << (PlSqlParser.SYS_CHECKACL - 1602)) | (1 << (PlSqlParser.SYS_CHECK_PRIVILEGE - 1602)))) !== 0) || ((((_la - 1634)) & ~0x1f) == 0 && ((1 << (_la - 1634)) & ((1 << (PlSqlParser.SYS_CONNECT_BY_PATH - 1634)) | (1 << (PlSqlParser.SYS_CONTEXT - 1634)) | (1 << (PlSqlParser.SYSDATE - 1634)) | (1 << (PlSqlParser.SYSDBA - 1634)) | (1 << (PlSqlParser.SYS_DBURIGEN - 1634)) | (1 << (PlSqlParser.SYSDG - 1634)) | (1 << (PlSqlParser.SYS_DL_CURSOR - 1634)) | (1 << (PlSqlParser.SYS_DM_RXFORM_CHR - 1634)) | (1 << (PlSqlParser.SYS_DM_RXFORM_NUM - 1634)) | (1 << (PlSqlParser.SYS_DOM_COMPARE - 1634)) | (1 << (PlSqlParser.SYS_DST_PRIM2SEC - 1634)) | (1 << (PlSqlParser.SYS_DST_SEC2PRIM - 1634)) | (1 << (PlSqlParser.SYS_ET_BFILE_TO_RAW - 1634)) | (1 << (PlSqlParser.SYS_ET_BLOB_TO_IMAGE - 1634)) | (1 << (PlSqlParser.SYS_ET_IMAGE_TO_BLOB - 1634)) | (1 << (PlSqlParser.SYS_ET_RAW_TO_BFILE - 1634)) | (1 << (PlSqlParser.SYS_EXTPDTXT - 1634)) | (1 << (PlSqlParser.SYS_EXTRACT_UTC - 1634)) | (1 << (PlSqlParser.SYS_FBT_INSDEL - 1634)) | (1 << (PlSqlParser.SYS_FILTER_ACLS - 1634)) | (1 << (PlSqlParser.SYS_FNMATCHES - 1634)) | (1 << (PlSqlParser.SYS_FNREPLACE - 1634)) | (1 << (PlSqlParser.SYS_GET_ACLIDS - 1634)) | (1 << (PlSqlParser.SYS_GET_COL_ACLIDS - 1634)) | (1 << (PlSqlParser.SYS_GET_PRIVILEGES - 1634)) | (1 << (PlSqlParser.SYS_GETTOKENID - 1634)) | (1 << (PlSqlParser.SYS_GETXTIVAL - 1634)) | (1 << (PlSqlParser.SYS_GUID - 1634)) | (1 << (PlSqlParser.SYSGUID - 1634)) | (1 << (PlSqlParser.SYSKM - 1634)) | (1 << (PlSqlParser.SYS_MAKE_XMLNODEID - 1634)) | (1 << (PlSqlParser.SYS_MAKEXML - 1634)))) !== 0) || ((((_la - 1666)) & ~0x1f) == 0 && ((1 << (_la - 1666)) & ((1 << (PlSqlParser.SYS_MKXMLATTR - 1666)) | (1 << (PlSqlParser.SYS_MKXTI - 1666)) | (1 << (PlSqlParser.SYSOBJ - 1666)) | (1 << (PlSqlParser.SYS_OP_ADT2BIN - 1666)) | (1 << (PlSqlParser.SYS_OP_ADTCONS - 1666)) | (1 << (PlSqlParser.SYS_OP_ALSCRVAL - 1666)) | (1 << (PlSqlParser.SYS_OP_ATG - 1666)) | (1 << (PlSqlParser.SYS_OP_BIN2ADT - 1666)) | (1 << (PlSqlParser.SYS_OP_BITVEC - 1666)) | (1 << (PlSqlParser.SYS_OP_BL2R - 1666)) | (1 << (PlSqlParser.SYS_OP_BLOOM_FILTER_LIST - 1666)) | (1 << (PlSqlParser.SYS_OP_BLOOM_FILTER - 1666)) | (1 << (PlSqlParser.SYS_OP_C2C - 1666)) | (1 << (PlSqlParser.SYS_OP_CAST - 1666)) | (1 << (PlSqlParser.SYS_OP_CEG - 1666)) | (1 << (PlSqlParser.SYS_OP_CL2C - 1666)) | (1 << (PlSqlParser.SYS_OP_COMBINED_HASH - 1666)) | (1 << (PlSqlParser.SYS_OP_COMP - 1666)) | (1 << (PlSqlParser.SYS_OP_CONVERT - 1666)) | (1 << (PlSqlParser.SYS_OP_COUNTCHG - 1666)) | (1 << (PlSqlParser.SYS_OP_CSCONV - 1666)) | (1 << (PlSqlParser.SYS_OP_CSCONVTEST - 1666)) | (1 << (PlSqlParser.SYS_OP_CSR - 1666)) | (1 << (PlSqlParser.SYS_OP_CSX_PATCH - 1666)) | (1 << (PlSqlParser.SYS_OP_CYCLED_SEQ - 1666)) | (1 << (PlSqlParser.SYS_OP_DECOMP - 1666)) | (1 << (PlSqlParser.SYS_OP_DESCEND - 1666)) | (1 << (PlSqlParser.SYS_OP_DISTINCT - 1666)) | (1 << (PlSqlParser.SYS_OP_DRA - 1666)) | (1 << (PlSqlParser.SYS_OP_DUMP - 1666)) | (1 << (PlSqlParser.SYS_OP_DV_CHECK - 1666)) | (1 << (PlSqlParser.SYS_OP_ENFORCE_NOT_NULL - 1666)))) !== 0) || ((((_la - 1698)) & ~0x1f) == 0 && ((1 << (_la - 1698)) & ((1 << (PlSqlParser.SYSOPER - 1698)) | (1 << (PlSqlParser.SYS_OP_EXTRACT - 1698)) | (1 << (PlSqlParser.SYS_OP_GROUPING - 1698)) | (1 << (PlSqlParser.SYS_OP_GUID - 1698)) | (1 << (PlSqlParser.SYS_OP_HASH - 1698)) | (1 << (PlSqlParser.SYS_OP_IIX - 1698)) | (1 << (PlSqlParser.SYS_OP_ITR - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_CREATE - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_FILTER_LIST - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_FILTER - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_SUCCEEDED - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_USE - 1698)) | (1 << (PlSqlParser.SYS_OP_LBID - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2BLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2CLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2ID - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2NCLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2TYP - 1698)) | (1 << (PlSqlParser.SYS_OP_LSVI - 1698)) | (1 << (PlSqlParser.SYS_OP_LVL - 1698)) | (1 << (PlSqlParser.SYS_OP_MAKEOID - 1698)) | (1 << (PlSqlParser.SYS_OP_MAP_NONNULL - 1698)) | (1 << (PlSqlParser.SYS_OP_MSR - 1698)) | (1 << (PlSqlParser.SYS_OP_NICOMBINE - 1698)) | (1 << (PlSqlParser.SYS_OP_NIEXTRACT - 1698)) | (1 << (PlSqlParser.SYS_OP_NII - 1698)) | (1 << (PlSqlParser.SYS_OP_NIX - 1698)) | (1 << (PlSqlParser.SYS_OP_NOEXPAND - 1698)) | (1 << (PlSqlParser.SYS_OP_NTCIMG - 1698)) | (1 << (PlSqlParser.SYS_OP_NUMTORAW - 1698)) | (1 << (PlSqlParser.SYS_OP_OIDVALUE - 1698)) | (1 << (PlSqlParser.SYS_OP_OPNSIZE - 1698)))) !== 0) || ((((_la - 1730)) & ~0x1f) == 0 && ((1 << (_la - 1730)) & ((1 << (PlSqlParser.SYS_OP_PAR_1 - 1730)) | (1 << (PlSqlParser.SYS_OP_PARGID_1 - 1730)) | (1 << (PlSqlParser.SYS_OP_PARGID - 1730)) | (1 << (PlSqlParser.SYS_OP_PAR - 1730)) | (1 << (PlSqlParser.SYS_OP_PART_ID - 1730)) | (1 << (PlSqlParser.SYS_OP_PIVOT - 1730)) | (1 << (PlSqlParser.SYS_OP_R2O - 1730)) | (1 << (PlSqlParser.SYS_OP_RAWTONUM - 1730)) | (1 << (PlSqlParser.SYS_OP_RDTM - 1730)) | (1 << (PlSqlParser.SYS_OP_REF - 1730)) | (1 << (PlSqlParser.SYS_OP_RMTD - 1730)) | (1 << (PlSqlParser.SYS_OP_ROWIDTOOBJ - 1730)) | (1 << (PlSqlParser.SYS_OP_RPB - 1730)) | (1 << (PlSqlParser.SYS_OPTLOBPRBSC - 1730)) | (1 << (PlSqlParser.SYS_OP_TOSETID - 1730)) | (1 << (PlSqlParser.SYS_OP_TPR - 1730)) | (1 << (PlSqlParser.SYS_OP_TRTB - 1730)) | (1 << (PlSqlParser.SYS_OPTXICMP - 1730)) | (1 << (PlSqlParser.SYS_OPTXQCASTASNQ - 1730)) | (1 << (PlSqlParser.SYS_OP_UNDESCEND - 1730)) | (1 << (PlSqlParser.SYS_OP_VECAND - 1730)) | (1 << (PlSqlParser.SYS_OP_VECBIT - 1730)) | (1 << (PlSqlParser.SYS_OP_VECOR - 1730)) | (1 << (PlSqlParser.SYS_OP_VECXOR - 1730)) | (1 << (PlSqlParser.SYS_OP_VERSION - 1730)) | (1 << (PlSqlParser.SYS_OP_VREF - 1730)) | (1 << (PlSqlParser.SYS_OP_VVD - 1730)) | (1 << (PlSqlParser.SYS_OP_XMLCONS_FOR_CSX - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHATG - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHIDX - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHOP - 1730)) | (1 << (PlSqlParser.SYS_OP_XTXT2SQLT - 1730)))) !== 0) || ((((_la - 1762)) & ~0x1f) == 0 && ((1 << (_la - 1762)) & ((1 << (PlSqlParser.SYS_OP_ZONE_ID - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_DEPTH - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_MAXCHILD - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_PARENT - 1762)) | (1 << (PlSqlParser.SYS_PARALLEL_TXN - 1762)) | (1 << (PlSqlParser.SYS_PATHID_IS_ATTR - 1762)) | (1 << (PlSqlParser.SYS_PATHID_IS_NMSPC - 1762)) | (1 << (PlSqlParser.SYS_PATHID_LASTNAME - 1762)) | (1 << (PlSqlParser.SYS_PATHID_LASTNMSPC - 1762)) | (1 << (PlSqlParser.SYS_PATH_REVERSE - 1762)) | (1 << (PlSqlParser.SYS_PXQEXTRACT - 1762)) | (1 << (PlSqlParser.SYS_RAW_TO_XSID - 1762)) | (1 << (PlSqlParser.SYS_RID_ORDER - 1762)) | (1 << (PlSqlParser.SYS_ROW_DELTA - 1762)) | (1 << (PlSqlParser.SYS_SC_2_XMLT - 1762)) | (1 << (PlSqlParser.SYS_SYNRCIREDO - 1762)) | (1 << (PlSqlParser.SYSTEM_DEFINED - 1762)) | (1 << (PlSqlParser.SYSTEM - 1762)) | (1 << (PlSqlParser.SYSTIMESTAMP - 1762)) | (1 << (PlSqlParser.SYS_TYPEID - 1762)) | (1 << (PlSqlParser.SYS_UMAKEXML - 1762)) | (1 << (PlSqlParser.SYS_XMLANALYZE - 1762)) | (1 << (PlSqlParser.SYS_XMLCONTAINS - 1762)) | (1 << (PlSqlParser.SYS_XMLCONV - 1762)) | (1 << (PlSqlParser.SYS_XMLEXNSURI - 1762)) | (1 << (PlSqlParser.SYS_XMLGEN - 1762)) | (1 << (PlSqlParser.SYS_XMLI_LOC_ISNODE - 1762)) | (1 << (PlSqlParser.SYS_XMLI_LOC_ISTEXT - 1762)) | (1 << (PlSqlParser.SYS_XMLINSTR - 1762)) | (1 << (PlSqlParser.SYS_XMLLOCATOR_GETSVAL - 1762)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETCID - 1762)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETLOCATOR - 1762)))) !== 0) || ((((_la - 1794)) & ~0x1f) == 0 && ((1 << (_la - 1794)) & ((1 << (PlSqlParser.SYS_XMLNODEID_GETOKEY - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETPATHID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETPTRID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETRID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETSVAL - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETTID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID - 1794)) | (1 << (PlSqlParser.SYS_XMLT_2_SC - 1794)) | (1 << (PlSqlParser.SYS_XMLTRANSLATE - 1794)) | (1 << (PlSqlParser.SYS_XMLTYPE2SQL - 1794)) | (1 << (PlSqlParser.SYS_XQ_ASQLCNV - 1794)) | (1 << (PlSqlParser.SYS_XQ_ATOMCNVCHK - 1794)) | (1 << (PlSqlParser.SYS_XQBASEURI - 1794)) | (1 << (PlSqlParser.SYS_XQCASTABLEERRH - 1794)) | (1 << (PlSqlParser.SYS_XQCODEP2STR - 1794)) | (1 << (PlSqlParser.SYS_XQCODEPEQ - 1794)) | (1 << (PlSqlParser.SYS_XQCON2SEQ - 1794)) | (1 << (PlSqlParser.SYS_XQCONCAT - 1794)) | (1 << (PlSqlParser.SYS_XQDELETE - 1794)) | (1 << (PlSqlParser.SYS_XQDFLTCOLATION - 1794)) | (1 << (PlSqlParser.SYS_XQDOC - 1794)) | (1 << (PlSqlParser.SYS_XQDOCURI - 1794)) | (1 << (PlSqlParser.SYS_XQDURDIV - 1794)) | (1 << (PlSqlParser.SYS_XQED4URI - 1794)) | (1 << (PlSqlParser.SYS_XQENDSWITH - 1794)) | (1 << (PlSqlParser.SYS_XQERRH - 1794)) | (1 << (PlSqlParser.SYS_XQERR - 1794)) | (1 << (PlSqlParser.SYS_XQESHTMLURI - 1794)) | (1 << (PlSqlParser.SYS_XQEXLOBVAL - 1794)) | (1 << (PlSqlParser.SYS_XQEXSTWRP - 1794)) | (1 << (PlSqlParser.SYS_XQEXTRACT - 1794)) | (1 << (PlSqlParser.SYS_XQEXTRREF - 1794)))) !== 0) || ((((_la - 1826)) & ~0x1f) == 0 && ((1 << (_la - 1826)) & ((1 << (PlSqlParser.SYS_XQEXVAL - 1826)) | (1 << (PlSqlParser.SYS_XQFB2STR - 1826)) | (1 << (PlSqlParser.SYS_XQFNBOOL - 1826)) | (1 << (PlSqlParser.SYS_XQFNCMP - 1826)) | (1 << (PlSqlParser.SYS_XQFNDATIM - 1826)) | (1 << (PlSqlParser.SYS_XQFNLNAME - 1826)) | (1 << (PlSqlParser.SYS_XQFNNM - 1826)) | (1 << (PlSqlParser.SYS_XQFNNSURI - 1826)) | (1 << (PlSqlParser.SYS_XQFNPREDTRUTH - 1826)) | (1 << (PlSqlParser.SYS_XQFNQNM - 1826)) | (1 << (PlSqlParser.SYS_XQFNROOT - 1826)) | (1 << (PlSqlParser.SYS_XQFORMATNUM - 1826)) | (1 << (PlSqlParser.SYS_XQFTCONTAIN - 1826)) | (1 << (PlSqlParser.SYS_XQFUNCR - 1826)) | (1 << (PlSqlParser.SYS_XQGETCONTENT - 1826)) | (1 << (PlSqlParser.SYS_XQINDXOF - 1826)) | (1 << (PlSqlParser.SYS_XQINSERT - 1826)) | (1 << (PlSqlParser.SYS_XQINSPFX - 1826)) | (1 << (PlSqlParser.SYS_XQIRI2URI - 1826)) | (1 << (PlSqlParser.SYS_XQLANG - 1826)) | (1 << (PlSqlParser.SYS_XQLLNMFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQMKNODEREF - 1826)) | (1 << (PlSqlParser.SYS_XQNILLED - 1826)) | (1 << (PlSqlParser.SYS_XQNODENAME - 1826)) | (1 << (PlSqlParser.SYS_XQNORMSPACE - 1826)) | (1 << (PlSqlParser.SYS_XQNORMUCODE - 1826)) | (1 << (PlSqlParser.SYS_XQ_NRNG - 1826)) | (1 << (PlSqlParser.SYS_XQNSP4PFX - 1826)) | (1 << (PlSqlParser.SYS_XQNSPFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQPFXFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQ_PKSQL2XML - 1826)) | (1 << (PlSqlParser.SYS_XQPOLYABS - 1826)))) !== 0) || ((((_la - 1858)) & ~0x1f) == 0 && ((1 << (_la - 1858)) & ((1 << (PlSqlParser.SYS_XQPOLYADD - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCEL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCSTBL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCST - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYDIV - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYFLR - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYMOD - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYMUL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYRND - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYSQRT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYSUB - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYUMUS - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYUPLS - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVEQ - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVGE - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVGT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVLE - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVLT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVNE - 1858)) | (1 << (PlSqlParser.SYS_XQREF2VAL - 1858)) | (1 << (PlSqlParser.SYS_XQRENAME - 1858)) | (1 << (PlSqlParser.SYS_XQREPLACE - 1858)) | (1 << (PlSqlParser.SYS_XQRESVURI - 1858)) | (1 << (PlSqlParser.SYS_XQRNDHALF2EVN - 1858)) | (1 << (PlSqlParser.SYS_XQRSLVQNM - 1858)) | (1 << (PlSqlParser.SYS_XQRYENVPGET - 1858)) | (1 << (PlSqlParser.SYS_XQRYVARGET - 1858)) | (1 << (PlSqlParser.SYS_XQRYWRP - 1858)) | (1 << (PlSqlParser.SYS_XQSEQ2CON4XC - 1858)) | (1 << (PlSqlParser.SYS_XQSEQ2CON - 1858)) | (1 << (PlSqlParser.SYS_XQSEQDEEPEQ - 1858)) | (1 << (PlSqlParser.SYS_XQSEQINSB - 1858)))) !== 0) || ((((_la - 1890)) & ~0x1f) == 0 && ((1 << (_la - 1890)) & ((1 << (PlSqlParser.SYS_XQSEQRM - 1890)) | (1 << (PlSqlParser.SYS_XQSEQRVS - 1890)) | (1 << (PlSqlParser.SYS_XQSEQSUB - 1890)) | (1 << (PlSqlParser.SYS_XQSEQTYPMATCH - 1890)) | (1 << (PlSqlParser.SYS_XQSTARTSWITH - 1890)) | (1 << (PlSqlParser.SYS_XQSTATBURI - 1890)) | (1 << (PlSqlParser.SYS_XQSTR2CODEP - 1890)) | (1 << (PlSqlParser.SYS_XQSTRJOIN - 1890)) | (1 << (PlSqlParser.SYS_XQSUBSTRAFT - 1890)) | (1 << (PlSqlParser.SYS_XQSUBSTRBEF - 1890)) | (1 << (PlSqlParser.SYS_XQTOKENIZE - 1890)) | (1 << (PlSqlParser.SYS_XQTREATAS - 1890)) | (1 << (PlSqlParser.SYS_XQ_UPKXML2SQL - 1890)) | (1 << (PlSqlParser.SYS_XQXFORM - 1890)) | (1 << (PlSqlParser.SYS_XSID_TO_RAW - 1890)) | (1 << (PlSqlParser.SYS_ZMAP_FILTER - 1890)) | (1 << (PlSqlParser.SYS_ZMAP_REFRESH - 1890)) | (1 << (PlSqlParser.TABLE_LOOKUP_BY_NL - 1890)) | (1 << (PlSqlParser.TABLESPACE_NO - 1890)) | (1 << (PlSqlParser.TABLESPACE - 1890)) | (1 << (PlSqlParser.TABLES - 1890)) | (1 << (PlSqlParser.TABLE_STATS - 1890)) | (1 << (PlSqlParser.TABLE - 1890)) | (1 << (PlSqlParser.TABNO - 1890)) | (1 << (PlSqlParser.TAG - 1890)) | (1 << (PlSqlParser.TANH - 1890)) | (1 << (PlSqlParser.TAN - 1890)) | (1 << (PlSqlParser.TBLORIDXPARTNUM - 1890)) | (1 << (PlSqlParser.TEMPFILE - 1890)) | (1 << (PlSqlParser.TEMPLATE - 1890)) | (1 << (PlSqlParser.TEMPORARY - 1890)) | (1 << (PlSqlParser.TEMP_TABLE - 1890)))) !== 0) || ((((_la - 1922)) & ~0x1f) == 0 && ((1 << (_la - 1922)) & ((1 << (PlSqlParser.TEST - 1922)) | (1 << (PlSqlParser.TEXT - 1922)) | (1 << (PlSqlParser.THAN - 1922)) | (1 << (PlSqlParser.THEN - 1922)) | (1 << (PlSqlParser.THE - 1922)) | (1 << (PlSqlParser.THREAD - 1922)) | (1 << (PlSqlParser.THROUGH - 1922)) | (1 << (PlSqlParser.TIER - 1922)) | (1 << (PlSqlParser.TIES - 1922)) | (1 << (PlSqlParser.TIMEOUT - 1922)) | (1 << (PlSqlParser.TIMESTAMP_LTZ_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMESTAMP - 1922)) | (1 << (PlSqlParser.TIMESTAMP_TZ_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMESTAMP_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMES - 1922)) | (1 << (PlSqlParser.TIME - 1922)) | (1 << (PlSqlParser.TIMEZONE_ABBR - 1922)) | (1 << (PlSqlParser.TIMEZONE_HOUR - 1922)) | (1 << (PlSqlParser.TIMEZONE_MINUTE - 1922)) | (1 << (PlSqlParser.TIMEZONE_OFFSET - 1922)) | (1 << (PlSqlParser.TIMEZONE_REGION - 1922)) | (1 << (PlSqlParser.TIME_ZONE - 1922)) | (1 << (PlSqlParser.TIV_GB - 1922)) | (1 << (PlSqlParser.TIV_SSF - 1922)) | (1 << (PlSqlParser.TO_ACLID - 1922)) | (1 << (PlSqlParser.TO_BINARY_DOUBLE - 1922)) | (1 << (PlSqlParser.TO_BINARY_FLOAT - 1922)) | (1 << (PlSqlParser.TO_BLOB - 1922)) | (1 << (PlSqlParser.TO_CLOB - 1922)) | (1 << (PlSqlParser.TO_DSINTERVAL - 1922)) | (1 << (PlSqlParser.TO_LOB - 1922)))) !== 0) || ((((_la - 1954)) & ~0x1f) == 0 && ((1 << (_la - 1954)) & ((1 << (PlSqlParser.TO_MULTI_BYTE - 1954)) | (1 << (PlSqlParser.TO_NCHAR - 1954)) | (1 << (PlSqlParser.TO_NCLOB - 1954)) | (1 << (PlSqlParser.TO_NUMBER - 1954)) | (1 << (PlSqlParser.TOPLEVEL - 1954)) | (1 << (PlSqlParser.TO_SINGLE_BYTE - 1954)) | (1 << (PlSqlParser.TO_TIMESTAMP - 1954)) | (1 << (PlSqlParser.TO_TIMESTAMP_TZ - 1954)) | (1 << (PlSqlParser.TO_TIME - 1954)) | (1 << (PlSqlParser.TO_TIME_TZ - 1954)) | (1 << (PlSqlParser.TO_YMINTERVAL - 1954)) | (1 << (PlSqlParser.TRACE - 1954)) | (1 << (PlSqlParser.TRACING - 1954)) | (1 << (PlSqlParser.TRACKING - 1954)) | (1 << (PlSqlParser.TRAILING - 1954)) | (1 << (PlSqlParser.TRANSACTION - 1954)) | (1 << (PlSqlParser.TRANSFORM_DISTINCT_AGG - 1954)) | (1 << (PlSqlParser.TRANSITIONAL - 1954)) | (1 << (PlSqlParser.TRANSITION - 1954)) | (1 << (PlSqlParser.TRANSLATE - 1954)) | (1 << (PlSqlParser.TRANSLATION - 1954)) | (1 << (PlSqlParser.TREAT - 1954)) | (1 << (PlSqlParser.TRIGGERS - 1954)) | (1 << (PlSqlParser.TRIGGER - 1954)) | (1 << (PlSqlParser.TRUE - 1954)) | (1 << (PlSqlParser.TRUNCATE - 1954)) | (1 << (PlSqlParser.TRUNC - 1954)) | (1 << (PlSqlParser.TRUSTED - 1954)) | (1 << (PlSqlParser.TRUST - 1954)) | (1 << (PlSqlParser.TUNING - 1954)) | (1 << (PlSqlParser.TX - 1954)))) !== 0) || ((((_la - 1986)) & ~0x1f) == 0 && ((1 << (_la - 1986)) & ((1 << (PlSqlParser.TYPES - 1986)) | (1 << (PlSqlParser.TYPE - 1986)) | (1 << (PlSqlParser.TZ_OFFSET - 1986)) | (1 << (PlSqlParser.UB2 - 1986)) | (1 << (PlSqlParser.UBA - 1986)) | (1 << (PlSqlParser.UCS2 - 1986)) | (1 << (PlSqlParser.UID - 1986)) | (1 << (PlSqlParser.UNARCHIVED - 1986)) | (1 << (PlSqlParser.UNBOUNDED - 1986)) | (1 << (PlSqlParser.UNBOUND - 1986)) | (1 << (PlSqlParser.UNCONDITIONAL - 1986)) | (1 << (PlSqlParser.UNDER - 1986)) | (1 << (PlSqlParser.UNDO - 1986)) | (1 << (PlSqlParser.UNDROP - 1986)) | (1 << (PlSqlParser.UNIFORM - 1986)) | (1 << (PlSqlParser.UNISTR - 1986)) | (1 << (PlSqlParser.UNLIMITED - 1986)) | (1 << (PlSqlParser.UNLOAD - 1986)) | (1 << (PlSqlParser.UNLOCK - 1986)) | (1 << (PlSqlParser.UNMATCHED - 1986)) | (1 << (PlSqlParser.UNNEST_INNERJ_DISTINCT_VIEW - 1986)) | (1 << (PlSqlParser.UNNEST_NOSEMIJ_NODISTINCTVIEW - 1986)) | (1 << (PlSqlParser.UNNEST_SEMIJ_VIEW - 1986)) | (1 << (PlSqlParser.UNNEST - 1986)) | (1 << (PlSqlParser.UNPACKED - 1986)) | (1 << (PlSqlParser.UNPIVOT - 1986)) | (1 << (PlSqlParser.UNPLUG - 1986)) | (1 << (PlSqlParser.UNPROTECTED - 1986)) | (1 << (PlSqlParser.UNQUIESCE - 1986)) | (1 << (PlSqlParser.UNRECOVERABLE - 1986)))) !== 0) || ((((_la - 2018)) & ~0x1f) == 0 && ((1 << (_la - 2018)) & ((1 << (PlSqlParser.UNRESTRICTED - 2018)) | (1 << (PlSqlParser.UNSUBSCRIBE - 2018)) | (1 << (PlSqlParser.UNTIL - 2018)) | (1 << (PlSqlParser.UNUSABLE - 2018)) | (1 << (PlSqlParser.UNUSED - 2018)) | (1 << (PlSqlParser.UPDATABLE - 2018)) | (1 << (PlSqlParser.UPDATED - 2018)) | (1 << (PlSqlParser.UPDATEXML - 2018)) | (1 << (PlSqlParser.UPD_INDEXES - 2018)) | (1 << (PlSqlParser.UPD_JOININDEX - 2018)) | (1 << (PlSqlParser.UPGRADE - 2018)) | (1 << (PlSqlParser.UPPER - 2018)) | (1 << (PlSqlParser.UPSERT - 2018)) | (1 << (PlSqlParser.UROWID - 2018)) | (1 << (PlSqlParser.USABLE - 2018)) | (1 << (PlSqlParser.USAGE - 2018)) | (1 << (PlSqlParser.USE_ANTI - 2018)) | (1 << (PlSqlParser.USE_CONCAT - 2018)) | (1 << (PlSqlParser.USE_CUBE - 2018)) | (1 << (PlSqlParser.USE_HASH_AGGREGATION - 2018)) | (1 << (PlSqlParser.USE_HASH_GBY_FOR_PUSHDOWN - 2018)) | (1 << (PlSqlParser.USE_HASH - 2018)) | (1 << (PlSqlParser.USE_HIDDEN_PARTITIONS - 2018)) | (1 << (PlSqlParser.USE_INVISIBLE_INDEXES - 2018)) | (1 << (PlSqlParser.USE_MERGE_CARTESIAN - 2018)) | (1 << (PlSqlParser.USE_MERGE - 2018)) | (1 << (PlSqlParser.USE_NL - 2018)) | (1 << (PlSqlParser.USE_NL_WITH_INDEX - 2018)) | (1 << (PlSqlParser.USE_PRIVATE_OUTLINES - 2018)) | (1 << (PlSqlParser.USER_DATA - 2018)) | (1 << (PlSqlParser.USER_DEFINED - 2018)))) !== 0) || ((((_la - 2050)) & ~0x1f) == 0 && ((1 << (_la - 2050)) & ((1 << (PlSqlParser.USERENV - 2050)) | (1 << (PlSqlParser.USERGROUP - 2050)) | (1 << (PlSqlParser.USER_RECYCLEBIN - 2050)) | (1 << (PlSqlParser.USERS - 2050)) | (1 << (PlSqlParser.USER_TABLESPACES - 2050)) | (1 << (PlSqlParser.USER - 2050)) | (1 << (PlSqlParser.USE_SEMI - 2050)) | (1 << (PlSqlParser.USE_STORED_OUTLINES - 2050)) | (1 << (PlSqlParser.USE_TTT_FOR_GSETS - 2050)) | (1 << (PlSqlParser.USE - 2050)) | (1 << (PlSqlParser.USE_VECTOR_AGGREGATION - 2050)) | (1 << (PlSqlParser.USE_WEAK_NAME_RESL - 2050)) | (1 << (PlSqlParser.USING_NO_EXPAND - 2050)) | (1 << (PlSqlParser.USING - 2050)) | (1 << (PlSqlParser.UTF16BE - 2050)) | (1 << (PlSqlParser.UTF16LE - 2050)) | (1 << (PlSqlParser.UTF32 - 2050)) | (1 << (PlSqlParser.UTF8 - 2050)) | (1 << (PlSqlParser.V1 - 2050)) | (1 << (PlSqlParser.V2 - 2050)) | (1 << (PlSqlParser.VALIDATE - 2050)) | (1 << (PlSqlParser.VALIDATION - 2050)) | (1 << (PlSqlParser.VALID_TIME_END - 2050)) | (1 << (PlSqlParser.VALUE - 2050)) | (1 << (PlSqlParser.VARCHAR2 - 2050)) | (1 << (PlSqlParser.VARCHAR - 2050)) | (1 << (PlSqlParser.VARIABLE - 2050)) | (1 << (PlSqlParser.VAR_POP - 2050)) | (1 << (PlSqlParser.VARRAYS - 2050)) | (1 << (PlSqlParser.VARRAY - 2050)) | (1 << (PlSqlParser.VAR_SAMP - 2050)))) !== 0) || ((((_la - 2082)) & ~0x1f) == 0 && ((1 << (_la - 2082)) & ((1 << (PlSqlParser.VARYING - 2082)) | (1 << (PlSqlParser.VECTOR_READ_TRACE - 2082)) | (1 << (PlSqlParser.VECTOR_READ - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM_DIMS - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM_FACT - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM - 2082)) | (1 << (PlSqlParser.VERIFIER - 2082)) | (1 << (PlSqlParser.VERIFY - 2082)) | (1 << (PlSqlParser.VERSIONING - 2082)) | (1 << (PlSqlParser.VERSIONS_ENDSCN - 2082)) | (1 << (PlSqlParser.VERSIONS_ENDTIME - 2082)) | (1 << (PlSqlParser.VERSIONS_OPERATION - 2082)) | (1 << (PlSqlParser.VERSIONS_STARTSCN - 2082)) | (1 << (PlSqlParser.VERSIONS_STARTTIME - 2082)) | (1 << (PlSqlParser.VERSIONS - 2082)) | (1 << (PlSqlParser.VERSIONS_XID - 2082)) | (1 << (PlSqlParser.VERSION - 2082)) | (1 << (PlSqlParser.VIOLATION - 2082)) | (1 << (PlSqlParser.VIRTUAL - 2082)) | (1 << (PlSqlParser.VISIBILITY - 2082)) | (1 << (PlSqlParser.VISIBLE - 2082)) | (1 << (PlSqlParser.VOLUME - 2082)) | (1 << (PlSqlParser.VSIZE - 2082)) | (1 << (PlSqlParser.WAIT - 2082)) | (1 << (PlSqlParser.WALLET - 2082)) | (1 << (PlSqlParser.WARNING - 2082)) | (1 << (PlSqlParser.WEEKS - 2082)) | (1 << (PlSqlParser.WEEK - 2082)) | (1 << (PlSqlParser.WELLFORMED - 2082)) | (1 << (PlSqlParser.WHENEVER - 2082)) | (1 << (PlSqlParser.WHEN - 2082)))) !== 0) || ((((_la - 2115)) & ~0x1f) == 0 && ((1 << (_la - 2115)) & ((1 << (PlSqlParser.WHILE - 2115)) | (1 << (PlSqlParser.WHITESPACE - 2115)) | (1 << (PlSqlParser.WIDTH_BUCKET - 2115)) | (1 << (PlSqlParser.WITHIN - 2115)) | (1 << (PlSqlParser.WITHOUT - 2115)) | (1 << (PlSqlParser.WITH_PLSQL - 2115)) | (1 << (PlSqlParser.WORK - 2115)) | (1 << (PlSqlParser.WRAPPED - 2115)) | (1 << (PlSqlParser.WRAPPER - 2115)) | (1 << (PlSqlParser.WRITE - 2115)) | (1 << (PlSqlParser.XDB_FASTPATH_INSERT - 2115)) | (1 << (PlSqlParser.X_DYN_PRUNE - 2115)) | (1 << (PlSqlParser.XID - 2115)) | (1 << (PlSqlParser.XML2OBJECT - 2115)) | (1 << (PlSqlParser.XMLAGG - 2115)) | (1 << (PlSqlParser.XMLATTRIBUTES - 2115)) | (1 << (PlSqlParser.XMLCAST - 2115)) | (1 << (PlSqlParser.XMLCDATA - 2115)) | (1 << (PlSqlParser.XMLCOLATTVAL - 2115)) | (1 << (PlSqlParser.XMLCOMMENT - 2115)) | (1 << (PlSqlParser.XMLCONCAT - 2115)) | (1 << (PlSqlParser.XMLDIFF - 2115)) | (1 << (PlSqlParser.XML_DML_RWT_STMT - 2115)) | (1 << (PlSqlParser.XMLELEMENT - 2115)) | (1 << (PlSqlParser.XMLEXISTS2 - 2115)) | (1 << (PlSqlParser.XMLEXISTS - 2115)) | (1 << (PlSqlParser.XMLFOREST - 2115)) | (1 << (PlSqlParser.XMLINDEX_REWRITE_IN_SELECT - 2115)) | (1 << (PlSqlParser.XMLINDEX_REWRITE - 2115)))) !== 0) || ((((_la - 2147)) & ~0x1f) == 0 && ((1 << (_la - 2147)) & ((1 << (PlSqlParser.XMLINDEX_SEL_IDX_TBL - 2147)) | (1 << (PlSqlParser.XMLISNODE - 2147)) | (1 << (PlSqlParser.XMLISVALID - 2147)) | (1 << (PlSqlParser.XMLNAMESPACES - 2147)) | (1 << (PlSqlParser.XMLPARSE - 2147)) | (1 << (PlSqlParser.XMLPATCH - 2147)) | (1 << (PlSqlParser.XMLPI - 2147)) | (1 << (PlSqlParser.XMLQUERYVAL - 2147)) | (1 << (PlSqlParser.XMLQUERY - 2147)) | (1 << (PlSqlParser.XMLROOT - 2147)) | (1 << (PlSqlParser.XMLSCHEMA - 2147)) | (1 << (PlSqlParser.XMLSERIALIZE - 2147)) | (1 << (PlSqlParser.XMLTABLE - 2147)) | (1 << (PlSqlParser.XMLTRANSFORMBLOB - 2147)) | (1 << (PlSqlParser.XMLTRANSFORM - 2147)) | (1 << (PlSqlParser.XMLTYPE - 2147)) | (1 << (PlSqlParser.XML - 2147)) | (1 << (PlSqlParser.XPATHTABLE - 2147)) | (1 << (PlSqlParser.XS_SYS_CONTEXT - 2147)) | (1 << (PlSqlParser.XS - 2147)) | (1 << (PlSqlParser.YEARS - 2147)) | (1 << (PlSqlParser.YEAR - 2147)) | (1 << (PlSqlParser.YES - 2147)) | (1 << (PlSqlParser.YMINTERVAL_UNCONSTRAINED - 2147)) | (1 << (PlSqlParser.ZONEMAP - 2147)) | (1 << (PlSqlParser.ZONE - 2147)) | (1 << (PlSqlParser.PREDICTION - 2147)) | (1 << (PlSqlParser.PREDICTION_BOUNDS - 2147)) | (1 << (PlSqlParser.PREDICTION_COST - 2147)) | (1 << (PlSqlParser.PREDICTION_DETAILS - 2147)) | (1 << (PlSqlParser.PREDICTION_PROBABILITY - 2147)))) !== 0) || ((((_la - 2179)) & ~0x1f) == 0 && ((1 << (_la - 2179)) & ((1 << (PlSqlParser.PREDICTION_SET - 2179)) | (1 << (PlSqlParser.CUME_DIST - 2179)) | (1 << (PlSqlParser.DENSE_RANK - 2179)) | (1 << (PlSqlParser.LISTAGG - 2179)) | (1 << (PlSqlParser.PERCENT_RANK - 2179)) | (1 << (PlSqlParser.PERCENTILE_CONT - 2179)) | (1 << (PlSqlParser.PERCENTILE_DISC - 2179)) | (1 << (PlSqlParser.RANK - 2179)) | (1 << (PlSqlParser.AVG - 2179)) | (1 << (PlSqlParser.CORR - 2179)) | (1 << (PlSqlParser.COVAR_ - 2179)) | (1 << (PlSqlParser.LAG - 2179)) | (1 << (PlSqlParser.LEAD - 2179)) | (1 << (PlSqlParser.MAX - 2179)) | (1 << (PlSqlParser.MEDIAN - 2179)) | (1 << (PlSqlParser.MIN - 2179)) | (1 << (PlSqlParser.NTILE - 2179)) | (1 << (PlSqlParser.NVL - 2179)) | (1 << (PlSqlParser.RATIO_TO_REPORT - 2179)) | (1 << (PlSqlParser.REGR_ - 2179)) | (1 << (PlSqlParser.ROUND - 2179)) | (1 << (PlSqlParser.ROW_NUMBER - 2179)) | (1 << (PlSqlParser.SUBSTR - 2179)) | (1 << (PlSqlParser.TO_CHAR - 2179)) | (1 << (PlSqlParser.TRIM - 2179)) | (1 << (PlSqlParser.SUM - 2179)) | (1 << (PlSqlParser.STDDEV - 2179)) | (1 << (PlSqlParser.VAR_ - 2179)) | (1 << (PlSqlParser.VARIANCE - 2179)) | (1 << (PlSqlParser.LEAST - 2179)) | (1 << (PlSqlParser.GREATEST - 2179)))) !== 0) || ((((_la - 2211)) & ~0x1f) == 0 && ((1 << (_la - 2211)) & ((1 << (PlSqlParser.TO_DATE - 2211)) | (1 << (PlSqlParser.PERIOD - 2211)) | (1 << (PlSqlParser.DELIMITED_ID - 2211)))) !== 0) || _la===PlSqlParser.REGULAR_ID) {
+ this.state = 2314;
+ this.type_spec();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Alter_collection_clausesContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_alter_collection_clauses;
+ return this;
+}
+
+Alter_collection_clausesContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Alter_collection_clausesContext.prototype.constructor = Alter_collection_clausesContext;
+
+Alter_collection_clausesContext.prototype.MODIFY = function() {
+ return this.getToken(PlSqlParser.MODIFY, 0);
+};
+
+Alter_collection_clausesContext.prototype.LIMIT = function() {
+ return this.getToken(PlSqlParser.LIMIT, 0);
+};
+
+Alter_collection_clausesContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+Alter_collection_clausesContext.prototype.ELEMENT = function() {
+ return this.getToken(PlSqlParser.ELEMENT, 0);
+};
+
+Alter_collection_clausesContext.prototype.TYPE = function() {
+ return this.getToken(PlSqlParser.TYPE, 0);
+};
+
+Alter_collection_clausesContext.prototype.type_spec = function() {
+ return this.getTypedRuleContext(Type_specContext,0);
+};
+
+Alter_collection_clausesContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAlter_collection_clauses(this);
+ }
+};
+
+Alter_collection_clausesContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAlter_collection_clauses(this);
+ }
+};
+
+Alter_collection_clausesContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAlter_collection_clauses(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Alter_collection_clausesContext = Alter_collection_clausesContext;
+
+PlSqlParser.prototype.alter_collection_clauses = function() {
+
+ var localctx = new Alter_collection_clausesContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 102, PlSqlParser.RULE_alter_collection_clauses);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2317;
+ this.match(PlSqlParser.MODIFY);
+ this.state = 2323;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.LIMIT:
+ this.state = 2318;
+ this.match(PlSqlParser.LIMIT);
+ this.state = 2319;
+ this.expression();
+ break;
+ case PlSqlParser.ELEMENT:
+ this.state = 2320;
+ this.match(PlSqlParser.ELEMENT);
+ this.state = 2321;
+ this.match(PlSqlParser.TYPE);
+ this.state = 2322;
+ this.type_spec();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Dependent_handling_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_dependent_handling_clause;
+ return this;
+}
+
+Dependent_handling_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Dependent_handling_clauseContext.prototype.constructor = Dependent_handling_clauseContext;
+
+Dependent_handling_clauseContext.prototype.INVALIDATE = function() {
+ return this.getToken(PlSqlParser.INVALIDATE, 0);
+};
+
+Dependent_handling_clauseContext.prototype.CASCADE = function() {
+ return this.getToken(PlSqlParser.CASCADE, 0);
+};
+
+Dependent_handling_clauseContext.prototype.CONVERT = function() {
+ return this.getToken(PlSqlParser.CONVERT, 0);
+};
+
+Dependent_handling_clauseContext.prototype.TO = function() {
+ return this.getToken(PlSqlParser.TO, 0);
+};
+
+Dependent_handling_clauseContext.prototype.SUBSTITUTABLE = function() {
+ return this.getToken(PlSqlParser.SUBSTITUTABLE, 0);
+};
+
+Dependent_handling_clauseContext.prototype.INCLUDING = function() {
+ return this.getToken(PlSqlParser.INCLUDING, 0);
+};
+
+Dependent_handling_clauseContext.prototype.TABLE = function() {
+ return this.getToken(PlSqlParser.TABLE, 0);
+};
+
+Dependent_handling_clauseContext.prototype.DATA = function() {
+ return this.getToken(PlSqlParser.DATA, 0);
+};
+
+Dependent_handling_clauseContext.prototype.dependent_exceptions_part = function() {
+ return this.getTypedRuleContext(Dependent_exceptions_partContext,0);
+};
+
+Dependent_handling_clauseContext.prototype.NOT = function() {
+ return this.getToken(PlSqlParser.NOT, 0);
+};
+
+Dependent_handling_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterDependent_handling_clause(this);
+ }
+};
+
+Dependent_handling_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitDependent_handling_clause(this);
+ }
+};
+
+Dependent_handling_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitDependent_handling_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Dependent_handling_clauseContext = Dependent_handling_clauseContext;
+
+PlSqlParser.prototype.dependent_handling_clause = function() {
+
+ var localctx = new Dependent_handling_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 104, PlSqlParser.RULE_dependent_handling_clause);
+ var _la = 0; // Token type
+ try {
+ this.state = 2341;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.INVALIDATE:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2325;
+ this.match(PlSqlParser.INVALIDATE);
+ break;
+ case PlSqlParser.CASCADE:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 2326;
+ this.match(PlSqlParser.CASCADE);
+ this.state = 2336;
+ this._errHandler.sync(this);
+ switch (this._input.LA(1)) {
+ case PlSqlParser.CONVERT:
+ this.state = 2327;
+ this.match(PlSqlParser.CONVERT);
+ this.state = 2328;
+ this.match(PlSqlParser.TO);
+ this.state = 2329;
+ this.match(PlSqlParser.SUBSTITUTABLE);
+ break;
+ case PlSqlParser.INCLUDING:
+ case PlSqlParser.NOT:
+ this.state = 2331;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.NOT) {
+ this.state = 2330;
+ this.match(PlSqlParser.NOT);
+ }
+
+ this.state = 2333;
+ this.match(PlSqlParser.INCLUDING);
+ this.state = 2334;
+ this.match(PlSqlParser.TABLE);
+ this.state = 2335;
+ this.match(PlSqlParser.DATA);
+ break;
+ case PlSqlParser.EXCEPTIONS:
+ case PlSqlParser.FORCE:
+ case PlSqlParser.SEMICOLON:
+ break;
+ default:
+ break;
+ }
+ this.state = 2339;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.EXCEPTIONS || _la===PlSqlParser.FORCE) {
+ this.state = 2338;
+ this.dependent_exceptions_part();
+ }
+
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Dependent_exceptions_partContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_dependent_exceptions_part;
+ return this;
+}
+
+Dependent_exceptions_partContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Dependent_exceptions_partContext.prototype.constructor = Dependent_exceptions_partContext;
+
+Dependent_exceptions_partContext.prototype.EXCEPTIONS = function() {
+ return this.getToken(PlSqlParser.EXCEPTIONS, 0);
+};
+
+Dependent_exceptions_partContext.prototype.INTO = function() {
+ return this.getToken(PlSqlParser.INTO, 0);
+};
+
+Dependent_exceptions_partContext.prototype.tableview_name = function() {
+ return this.getTypedRuleContext(Tableview_nameContext,0);
+};
+
+Dependent_exceptions_partContext.prototype.FORCE = function() {
+ return this.getToken(PlSqlParser.FORCE, 0);
+};
+
+Dependent_exceptions_partContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterDependent_exceptions_part(this);
+ }
+};
+
+Dependent_exceptions_partContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitDependent_exceptions_part(this);
+ }
+};
+
+Dependent_exceptions_partContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitDependent_exceptions_part(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Dependent_exceptions_partContext = Dependent_exceptions_partContext;
+
+PlSqlParser.prototype.dependent_exceptions_part = function() {
+
+ var localctx = new Dependent_exceptions_partContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 106, PlSqlParser.RULE_dependent_exceptions_part);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2344;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.FORCE) {
+ this.state = 2343;
+ this.match(PlSqlParser.FORCE);
+ }
+
+ this.state = 2346;
+ this.match(PlSqlParser.EXCEPTIONS);
+ this.state = 2347;
+ this.match(PlSqlParser.INTO);
+ this.state = 2348;
+ this.tableview_name();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_typeContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_create_type;
+ return this;
+}
+
+Create_typeContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_typeContext.prototype.constructor = Create_typeContext;
+
+Create_typeContext.prototype.CREATE = function() {
+ return this.getToken(PlSqlParser.CREATE, 0);
+};
+
+Create_typeContext.prototype.TYPE = function() {
+ return this.getToken(PlSqlParser.TYPE, 0);
+};
+
+Create_typeContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Create_typeContext.prototype.type_definition = function() {
+ return this.getTypedRuleContext(Type_definitionContext,0);
+};
+
+Create_typeContext.prototype.type_body = function() {
+ return this.getTypedRuleContext(Type_bodyContext,0);
+};
+
+Create_typeContext.prototype.OR = function() {
+ return this.getToken(PlSqlParser.OR, 0);
+};
+
+Create_typeContext.prototype.REPLACE = function() {
+ return this.getToken(PlSqlParser.REPLACE, 0);
+};
+
+Create_typeContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterCreate_type(this);
+ }
+};
+
+Create_typeContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitCreate_type(this);
+ }
+};
+
+Create_typeContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitCreate_type(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Create_typeContext = Create_typeContext;
+
+PlSqlParser.prototype.create_type = function() {
+
+ var localctx = new Create_typeContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 108, PlSqlParser.RULE_create_type);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2350;
+ this.match(PlSqlParser.CREATE);
+ this.state = 2353;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.OR) {
+ this.state = 2351;
+ this.match(PlSqlParser.OR);
+ this.state = 2352;
+ this.match(PlSqlParser.REPLACE);
+ }
+
+ this.state = 2355;
+ this.match(PlSqlParser.TYPE);
+ this.state = 2358;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,121,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 2356;
+ this.type_definition();
+ break;
+
+ case 2:
+ this.state = 2357;
+ this.type_body();
+ break;
+
+ }
+ this.state = 2360;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Type_definitionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_type_definition;
+ return this;
+}
+
+Type_definitionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Type_definitionContext.prototype.constructor = Type_definitionContext;
+
+Type_definitionContext.prototype.type_name = function() {
+ return this.getTypedRuleContext(Type_nameContext,0);
+};
+
+Type_definitionContext.prototype.OID = function() {
+ return this.getToken(PlSqlParser.OID, 0);
+};
+
+Type_definitionContext.prototype.CHAR_STRING = function() {
+ return this.getToken(PlSqlParser.CHAR_STRING, 0);
+};
+
+Type_definitionContext.prototype.object_type_def = function() {
+ return this.getTypedRuleContext(Object_type_defContext,0);
+};
+
+Type_definitionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterType_definition(this);
+ }
+};
+
+Type_definitionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitType_definition(this);
+ }
+};
+
+Type_definitionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitType_definition(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Type_definitionContext = Type_definitionContext;
+
+PlSqlParser.prototype.type_definition = function() {
+
+ var localctx = new Type_definitionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 110, PlSqlParser.RULE_type_definition);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2362;
+ this.type_name();
+ this.state = 2365;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.OID) {
+ this.state = 2363;
+ this.match(PlSqlParser.OID);
+ this.state = 2364;
+ this.match(PlSqlParser.CHAR_STRING);
+ }
+
+ this.state = 2368;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.AS || _la===PlSqlParser.AUTHID || _la===PlSqlParser.IS || _la===PlSqlParser.UNDER) {
+ this.state = 2367;
+ this.object_type_def();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Object_type_defContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_object_type_def;
+ return this;
+}
+
+Object_type_defContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Object_type_defContext.prototype.constructor = Object_type_defContext;
+
+Object_type_defContext.prototype.object_as_part = function() {
+ return this.getTypedRuleContext(Object_as_partContext,0);
+};
+
+Object_type_defContext.prototype.object_under_part = function() {
+ return this.getTypedRuleContext(Object_under_partContext,0);
+};
+
+Object_type_defContext.prototype.invoker_rights_clause = function() {
+ return this.getTypedRuleContext(Invoker_rights_clauseContext,0);
+};
+
+Object_type_defContext.prototype.sqlj_object_type = function() {
+ return this.getTypedRuleContext(Sqlj_object_typeContext,0);
+};
+
+Object_type_defContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Object_type_defContext.prototype.object_member_spec = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Object_member_specContext);
+ } else {
+ return this.getTypedRuleContext(Object_member_specContext,i);
+ }
+};
+
+Object_type_defContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Object_type_defContext.prototype.modifier_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Modifier_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Modifier_clauseContext,i);
+ }
+};
+
+Object_type_defContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Object_type_defContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterObject_type_def(this);
+ }
+};
+
+Object_type_defContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitObject_type_def(this);
+ }
+};
+
+Object_type_defContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitObject_type_def(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Object_type_defContext = Object_type_defContext;
+
+PlSqlParser.prototype.object_type_def = function() {
+
+ var localctx = new Object_type_defContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 112, PlSqlParser.RULE_object_type_def);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2371;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.AUTHID) {
+ this.state = 2370;
+ this.invoker_rights_clause();
+ }
+
+ this.state = 2375;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.AS:
+ case PlSqlParser.IS:
+ this.state = 2373;
+ this.object_as_part();
+ break;
+ case PlSqlParser.UNDER:
+ this.state = 2374;
+ this.object_under_part();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 2378;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.EXTERNAL) {
+ this.state = 2377;
+ this.sqlj_object_type();
+ }
+
+ this.state = 2391;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.LEFT_PAREN) {
+ this.state = 2380;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 2381;
+ this.object_member_spec();
+ this.state = 2386;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 2382;
+ this.match(PlSqlParser.COMMA);
+ this.state = 2383;
+ this.object_member_spec();
+ this.state = 2388;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 2389;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ }
+
+ this.state = 2396;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.FINAL || _la===PlSqlParser.INSTANTIABLE || _la===PlSqlParser.NOT || _la===PlSqlParser.OVERRIDING) {
+ this.state = 2393;
+ this.modifier_clause();
+ this.state = 2398;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Object_as_partContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_object_as_part;
+ return this;
+}
+
+Object_as_partContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Object_as_partContext.prototype.constructor = Object_as_partContext;
+
+Object_as_partContext.prototype.IS = function() {
+ return this.getToken(PlSqlParser.IS, 0);
+};
+
+Object_as_partContext.prototype.AS = function() {
+ return this.getToken(PlSqlParser.AS, 0);
+};
+
+Object_as_partContext.prototype.OBJECT = function() {
+ return this.getToken(PlSqlParser.OBJECT, 0);
+};
+
+Object_as_partContext.prototype.varray_type_def = function() {
+ return this.getTypedRuleContext(Varray_type_defContext,0);
+};
+
+Object_as_partContext.prototype.nested_table_type_def = function() {
+ return this.getTypedRuleContext(Nested_table_type_defContext,0);
+};
+
+Object_as_partContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterObject_as_part(this);
+ }
+};
+
+Object_as_partContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitObject_as_part(this);
+ }
+};
+
+Object_as_partContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitObject_as_part(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Object_as_partContext = Object_as_partContext;
+
+PlSqlParser.prototype.object_as_part = function() {
+
+ var localctx = new Object_as_partContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 114, PlSqlParser.RULE_object_as_part);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2399;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.AS || _la===PlSqlParser.IS)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 2403;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.OBJECT:
+ this.state = 2400;
+ this.match(PlSqlParser.OBJECT);
+ break;
+ case PlSqlParser.VARRAY:
+ case PlSqlParser.VARYING:
+ this.state = 2401;
+ this.varray_type_def();
+ break;
+ case PlSqlParser.TABLE:
+ this.state = 2402;
+ this.nested_table_type_def();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Object_under_partContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_object_under_part;
+ return this;
+}
+
+Object_under_partContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Object_under_partContext.prototype.constructor = Object_under_partContext;
+
+Object_under_partContext.prototype.UNDER = function() {
+ return this.getToken(PlSqlParser.UNDER, 0);
+};
+
+Object_under_partContext.prototype.type_spec = function() {
+ return this.getTypedRuleContext(Type_specContext,0);
+};
+
+Object_under_partContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterObject_under_part(this);
+ }
+};
+
+Object_under_partContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitObject_under_part(this);
+ }
+};
+
+Object_under_partContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitObject_under_part(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Object_under_partContext = Object_under_partContext;
+
+PlSqlParser.prototype.object_under_part = function() {
+
+ var localctx = new Object_under_partContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 116, PlSqlParser.RULE_object_under_part);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2405;
+ this.match(PlSqlParser.UNDER);
+ this.state = 2406;
+ this.type_spec();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Nested_table_type_defContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_nested_table_type_def;
+ return this;
+}
+
+Nested_table_type_defContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Nested_table_type_defContext.prototype.constructor = Nested_table_type_defContext;
+
+Nested_table_type_defContext.prototype.TABLE = function() {
+ return this.getToken(PlSqlParser.TABLE, 0);
+};
+
+Nested_table_type_defContext.prototype.OF = function() {
+ return this.getToken(PlSqlParser.OF, 0);
+};
+
+Nested_table_type_defContext.prototype.type_spec = function() {
+ return this.getTypedRuleContext(Type_specContext,0);
+};
+
+Nested_table_type_defContext.prototype.NOT = function() {
+ return this.getToken(PlSqlParser.NOT, 0);
+};
+
+Nested_table_type_defContext.prototype.NULL_ = function() {
+ return this.getToken(PlSqlParser.NULL_, 0);
+};
+
+Nested_table_type_defContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterNested_table_type_def(this);
+ }
+};
+
+Nested_table_type_defContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitNested_table_type_def(this);
+ }
+};
+
+Nested_table_type_defContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitNested_table_type_def(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Nested_table_type_defContext = Nested_table_type_defContext;
+
+PlSqlParser.prototype.nested_table_type_def = function() {
+
+ var localctx = new Nested_table_type_defContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 118, PlSqlParser.RULE_nested_table_type_def);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2408;
+ this.match(PlSqlParser.TABLE);
+ this.state = 2409;
+ this.match(PlSqlParser.OF);
+ this.state = 2410;
+ this.type_spec();
+ this.state = 2413;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,131,this._ctx);
+ if(la_===1) {
+ this.state = 2411;
+ this.match(PlSqlParser.NOT);
+ this.state = 2412;
+ this.match(PlSqlParser.NULL_);
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Sqlj_object_typeContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_sqlj_object_type;
+ return this;
+}
+
+Sqlj_object_typeContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Sqlj_object_typeContext.prototype.constructor = Sqlj_object_typeContext;
+
+Sqlj_object_typeContext.prototype.EXTERNAL = function() {
+ return this.getToken(PlSqlParser.EXTERNAL, 0);
+};
+
+Sqlj_object_typeContext.prototype.NAME = function() {
+ return this.getToken(PlSqlParser.NAME, 0);
+};
+
+Sqlj_object_typeContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+Sqlj_object_typeContext.prototype.LANGUAGE = function() {
+ return this.getToken(PlSqlParser.LANGUAGE, 0);
+};
+
+Sqlj_object_typeContext.prototype.JAVA = function() {
+ return this.getToken(PlSqlParser.JAVA, 0);
+};
+
+Sqlj_object_typeContext.prototype.USING = function() {
+ return this.getToken(PlSqlParser.USING, 0);
+};
+
+Sqlj_object_typeContext.prototype.SQLDATA = function() {
+ return this.getToken(PlSqlParser.SQLDATA, 0);
+};
+
+Sqlj_object_typeContext.prototype.CUSTOMDATUM = function() {
+ return this.getToken(PlSqlParser.CUSTOMDATUM, 0);
+};
+
+Sqlj_object_typeContext.prototype.ORADATA = function() {
+ return this.getToken(PlSqlParser.ORADATA, 0);
+};
+
+Sqlj_object_typeContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterSqlj_object_type(this);
+ }
+};
+
+Sqlj_object_typeContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitSqlj_object_type(this);
+ }
+};
+
+Sqlj_object_typeContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitSqlj_object_type(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Sqlj_object_typeContext = Sqlj_object_typeContext;
+
+PlSqlParser.prototype.sqlj_object_type = function() {
+
+ var localctx = new Sqlj_object_typeContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 120, PlSqlParser.RULE_sqlj_object_type);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2415;
+ this.match(PlSqlParser.EXTERNAL);
+ this.state = 2416;
+ this.match(PlSqlParser.NAME);
+ this.state = 2417;
+ this.expression();
+ this.state = 2418;
+ this.match(PlSqlParser.LANGUAGE);
+ this.state = 2419;
+ this.match(PlSqlParser.JAVA);
+ this.state = 2420;
+ this.match(PlSqlParser.USING);
+ this.state = 2421;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.CUSTOMDATUM || _la===PlSqlParser.ORADATA || _la===PlSqlParser.SQLDATA)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Type_bodyContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_type_body;
+ return this;
+}
+
+Type_bodyContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Type_bodyContext.prototype.constructor = Type_bodyContext;
+
+Type_bodyContext.prototype.BODY = function() {
+ return this.getToken(PlSqlParser.BODY, 0);
+};
+
+Type_bodyContext.prototype.type_name = function() {
+ return this.getTypedRuleContext(Type_nameContext,0);
+};
+
+Type_bodyContext.prototype.END = function() {
+ return this.getToken(PlSqlParser.END, 0);
+};
+
+Type_bodyContext.prototype.IS = function() {
+ return this.getToken(PlSqlParser.IS, 0);
+};
+
+Type_bodyContext.prototype.AS = function() {
+ return this.getToken(PlSqlParser.AS, 0);
+};
+
+Type_bodyContext.prototype.type_body_elements = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Type_body_elementsContext);
+ } else {
+ return this.getTypedRuleContext(Type_body_elementsContext,i);
+ }
+};
+
+Type_bodyContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterType_body(this);
+ }
+};
+
+Type_bodyContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitType_body(this);
+ }
+};
+
+Type_bodyContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitType_body(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Type_bodyContext = Type_bodyContext;
+
+PlSqlParser.prototype.type_body = function() {
+
+ var localctx = new Type_bodyContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 122, PlSqlParser.RULE_type_body);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2423;
+ this.match(PlSqlParser.BODY);
+ this.state = 2424;
+ this.type_name();
+ this.state = 2425;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.AS || _la===PlSqlParser.IS)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 2427;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 2426;
+ this.type_body_elements();
+ this.state = 2429;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(_la===PlSqlParser.MAP || _la===PlSqlParser.MEMBER || _la===PlSqlParser.ORDER || _la===PlSqlParser.OVERRIDING || _la===PlSqlParser.STATIC);
+ this.state = 2431;
+ this.match(PlSqlParser.END);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Type_body_elementsContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_type_body_elements;
+ return this;
+}
+
+Type_body_elementsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Type_body_elementsContext.prototype.constructor = Type_body_elementsContext;
+
+Type_body_elementsContext.prototype.map_order_func_declaration = function() {
+ return this.getTypedRuleContext(Map_order_func_declarationContext,0);
+};
+
+Type_body_elementsContext.prototype.subprog_decl_in_type = function() {
+ return this.getTypedRuleContext(Subprog_decl_in_typeContext,0);
+};
+
+Type_body_elementsContext.prototype.overriding_subprogram_spec = function() {
+ return this.getTypedRuleContext(Overriding_subprogram_specContext,0);
+};
+
+Type_body_elementsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterType_body_elements(this);
+ }
+};
+
+Type_body_elementsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitType_body_elements(this);
+ }
+};
+
+Type_body_elementsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitType_body_elements(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Type_body_elementsContext = Type_body_elementsContext;
+
+PlSqlParser.prototype.type_body_elements = function() {
+
+ var localctx = new Type_body_elementsContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 124, PlSqlParser.RULE_type_body_elements);
+ try {
+ this.state = 2436;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.MAP:
+ case PlSqlParser.ORDER:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2433;
+ this.map_order_func_declaration();
+ break;
+ case PlSqlParser.MEMBER:
+ case PlSqlParser.STATIC:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 2434;
+ this.subprog_decl_in_type();
+ break;
+ case PlSqlParser.OVERRIDING:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 2435;
+ this.overriding_subprogram_spec();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Map_order_func_declarationContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_map_order_func_declaration;
+ return this;
+}
+
+Map_order_func_declarationContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Map_order_func_declarationContext.prototype.constructor = Map_order_func_declarationContext;
+
+Map_order_func_declarationContext.prototype.MEMBER = function() {
+ return this.getToken(PlSqlParser.MEMBER, 0);
+};
+
+Map_order_func_declarationContext.prototype.func_decl_in_type = function() {
+ return this.getTypedRuleContext(Func_decl_in_typeContext,0);
+};
+
+Map_order_func_declarationContext.prototype.MAP = function() {
+ return this.getToken(PlSqlParser.MAP, 0);
+};
+
+Map_order_func_declarationContext.prototype.ORDER = function() {
+ return this.getToken(PlSqlParser.ORDER, 0);
+};
+
+Map_order_func_declarationContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterMap_order_func_declaration(this);
+ }
+};
+
+Map_order_func_declarationContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitMap_order_func_declaration(this);
+ }
+};
+
+Map_order_func_declarationContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitMap_order_func_declaration(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Map_order_func_declarationContext = Map_order_func_declarationContext;
+
+PlSqlParser.prototype.map_order_func_declaration = function() {
+
+ var localctx = new Map_order_func_declarationContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 126, PlSqlParser.RULE_map_order_func_declaration);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2438;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.MAP || _la===PlSqlParser.ORDER)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 2439;
+ this.match(PlSqlParser.MEMBER);
+ this.state = 2440;
+ this.func_decl_in_type();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Subprog_decl_in_typeContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_subprog_decl_in_type;
+ return this;
+}
+
+Subprog_decl_in_typeContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Subprog_decl_in_typeContext.prototype.constructor = Subprog_decl_in_typeContext;
+
+Subprog_decl_in_typeContext.prototype.MEMBER = function() {
+ return this.getToken(PlSqlParser.MEMBER, 0);
+};
+
+Subprog_decl_in_typeContext.prototype.STATIC = function() {
+ return this.getToken(PlSqlParser.STATIC, 0);
+};
+
+Subprog_decl_in_typeContext.prototype.proc_decl_in_type = function() {
+ return this.getTypedRuleContext(Proc_decl_in_typeContext,0);
+};
+
+Subprog_decl_in_typeContext.prototype.func_decl_in_type = function() {
+ return this.getTypedRuleContext(Func_decl_in_typeContext,0);
+};
+
+Subprog_decl_in_typeContext.prototype.constructor_declaration = function() {
+ return this.getTypedRuleContext(Constructor_declarationContext,0);
+};
+
+Subprog_decl_in_typeContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterSubprog_decl_in_type(this);
+ }
+};
+
+Subprog_decl_in_typeContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitSubprog_decl_in_type(this);
+ }
+};
+
+Subprog_decl_in_typeContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitSubprog_decl_in_type(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Subprog_decl_in_typeContext = Subprog_decl_in_typeContext;
+
+PlSqlParser.prototype.subprog_decl_in_type = function() {
+
+ var localctx = new Subprog_decl_in_typeContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 128, PlSqlParser.RULE_subprog_decl_in_type);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2442;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.MEMBER || _la===PlSqlParser.STATIC)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 2446;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.PROCEDURE:
+ this.state = 2443;
+ this.proc_decl_in_type();
+ break;
+ case PlSqlParser.FUNCTION:
+ this.state = 2444;
+ this.func_decl_in_type();
+ break;
+ case PlSqlParser.CONSTRUCTOR:
+ case PlSqlParser.FINAL:
+ case PlSqlParser.INSTANTIABLE:
+ this.state = 2445;
+ this.constructor_declaration();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Proc_decl_in_typeContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_proc_decl_in_type;
+ return this;
+}
+
+Proc_decl_in_typeContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Proc_decl_in_typeContext.prototype.constructor = Proc_decl_in_typeContext;
+
+Proc_decl_in_typeContext.prototype.PROCEDURE = function() {
+ return this.getToken(PlSqlParser.PROCEDURE, 0);
+};
+
+Proc_decl_in_typeContext.prototype.procedure_name = function() {
+ return this.getTypedRuleContext(Procedure_nameContext,0);
+};
+
+Proc_decl_in_typeContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Proc_decl_in_typeContext.prototype.type_elements_parameter = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Type_elements_parameterContext);
+ } else {
+ return this.getTypedRuleContext(Type_elements_parameterContext,i);
+ }
+};
+
+Proc_decl_in_typeContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Proc_decl_in_typeContext.prototype.IS = function() {
+ return this.getToken(PlSqlParser.IS, 0);
+};
+
+Proc_decl_in_typeContext.prototype.AS = function() {
+ return this.getToken(PlSqlParser.AS, 0);
+};
+
+Proc_decl_in_typeContext.prototype.call_spec = function() {
+ return this.getTypedRuleContext(Call_specContext,0);
+};
+
+Proc_decl_in_typeContext.prototype.body = function() {
+ return this.getTypedRuleContext(BodyContext,0);
+};
+
+Proc_decl_in_typeContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Proc_decl_in_typeContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Proc_decl_in_typeContext.prototype.DECLARE = function() {
+ return this.getToken(PlSqlParser.DECLARE, 0);
+};
+
+Proc_decl_in_typeContext.prototype.seq_of_declare_specs = function() {
+ return this.getTypedRuleContext(Seq_of_declare_specsContext,0);
+};
+
+Proc_decl_in_typeContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterProc_decl_in_type(this);
+ }
+};
+
+Proc_decl_in_typeContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitProc_decl_in_type(this);
+ }
+};
+
+Proc_decl_in_typeContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitProc_decl_in_type(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Proc_decl_in_typeContext = Proc_decl_in_typeContext;
+
+PlSqlParser.prototype.proc_decl_in_type = function() {
+
+ var localctx = new Proc_decl_in_typeContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 130, PlSqlParser.RULE_proc_decl_in_type);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2448;
+ this.match(PlSqlParser.PROCEDURE);
+ this.state = 2449;
+ this.procedure_name();
+ this.state = 2450;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 2451;
+ this.type_elements_parameter();
+ this.state = 2456;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 2452;
+ this.match(PlSqlParser.COMMA);
+ this.state = 2453;
+ this.type_elements_parameter();
+ this.state = 2458;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 2459;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ this.state = 2460;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.AS || _la===PlSqlParser.IS)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 2471;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,138,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 2461;
+ this.call_spec();
+ break;
+
+ case 2:
+ this.state = 2463;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,136,this._ctx);
+ if(la_===1) {
+ this.state = 2462;
+ this.match(PlSqlParser.DECLARE);
+
+ }
+ this.state = 2466;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,137,this._ctx);
+ if(la_===1) {
+ this.state = 2465;
+ this.seq_of_declare_specs();
+
+ }
+ this.state = 2468;
+ this.body();
+ this.state = 2469;
+ this.match(PlSqlParser.SEMICOLON);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Func_decl_in_typeContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_func_decl_in_type;
+ return this;
+}
+
+Func_decl_in_typeContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Func_decl_in_typeContext.prototype.constructor = Func_decl_in_typeContext;
+
+Func_decl_in_typeContext.prototype.FUNCTION = function() {
+ return this.getToken(PlSqlParser.FUNCTION, 0);
+};
+
+Func_decl_in_typeContext.prototype.function_name = function() {
+ return this.getTypedRuleContext(Function_nameContext,0);
+};
+
+Func_decl_in_typeContext.prototype.RETURN = function() {
+ return this.getToken(PlSqlParser.RETURN, 0);
+};
+
+Func_decl_in_typeContext.prototype.type_spec = function() {
+ return this.getTypedRuleContext(Type_specContext,0);
+};
+
+Func_decl_in_typeContext.prototype.IS = function() {
+ return this.getToken(PlSqlParser.IS, 0);
+};
+
+Func_decl_in_typeContext.prototype.AS = function() {
+ return this.getToken(PlSqlParser.AS, 0);
+};
+
+Func_decl_in_typeContext.prototype.call_spec = function() {
+ return this.getTypedRuleContext(Call_specContext,0);
+};
+
+Func_decl_in_typeContext.prototype.body = function() {
+ return this.getTypedRuleContext(BodyContext,0);
+};
+
+Func_decl_in_typeContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Func_decl_in_typeContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Func_decl_in_typeContext.prototype.type_elements_parameter = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Type_elements_parameterContext);
+ } else {
+ return this.getTypedRuleContext(Type_elements_parameterContext,i);
+ }
+};
+
+Func_decl_in_typeContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Func_decl_in_typeContext.prototype.DECLARE = function() {
+ return this.getToken(PlSqlParser.DECLARE, 0);
+};
+
+Func_decl_in_typeContext.prototype.seq_of_declare_specs = function() {
+ return this.getTypedRuleContext(Seq_of_declare_specsContext,0);
+};
+
+Func_decl_in_typeContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Func_decl_in_typeContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterFunc_decl_in_type(this);
+ }
+};
+
+Func_decl_in_typeContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitFunc_decl_in_type(this);
+ }
+};
+
+Func_decl_in_typeContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitFunc_decl_in_type(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Func_decl_in_typeContext = Func_decl_in_typeContext;
+
+PlSqlParser.prototype.func_decl_in_type = function() {
+
+ var localctx = new Func_decl_in_typeContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 132, PlSqlParser.RULE_func_decl_in_type);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2473;
+ this.match(PlSqlParser.FUNCTION);
+ this.state = 2474;
+ this.function_name();
+ this.state = 2486;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.LEFT_PAREN) {
+ this.state = 2475;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 2476;
+ this.type_elements_parameter();
+ this.state = 2481;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 2477;
+ this.match(PlSqlParser.COMMA);
+ this.state = 2478;
+ this.type_elements_parameter();
+ this.state = 2483;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 2484;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ }
+
+ this.state = 2488;
+ this.match(PlSqlParser.RETURN);
+ this.state = 2489;
+ this.type_spec();
+ this.state = 2490;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.AS || _la===PlSqlParser.IS)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 2501;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,143,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 2491;
+ this.call_spec();
+ break;
+
+ case 2:
+ this.state = 2493;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,141,this._ctx);
+ if(la_===1) {
+ this.state = 2492;
+ this.match(PlSqlParser.DECLARE);
+
+ }
+ this.state = 2496;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,142,this._ctx);
+ if(la_===1) {
+ this.state = 2495;
+ this.seq_of_declare_specs();
+
+ }
+ this.state = 2498;
+ this.body();
+ this.state = 2499;
+ this.match(PlSqlParser.SEMICOLON);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Constructor_declarationContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_constructor_declaration;
+ return this;
+}
+
+Constructor_declarationContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Constructor_declarationContext.prototype.constructor = Constructor_declarationContext;
+
+Constructor_declarationContext.prototype.CONSTRUCTOR = function() {
+ return this.getToken(PlSqlParser.CONSTRUCTOR, 0);
+};
+
+Constructor_declarationContext.prototype.FUNCTION = function() {
+ return this.getToken(PlSqlParser.FUNCTION, 0);
+};
+
+Constructor_declarationContext.prototype.type_spec = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Type_specContext);
+ } else {
+ return this.getTypedRuleContext(Type_specContext,i);
+ }
+};
+
+Constructor_declarationContext.prototype.RETURN = function() {
+ return this.getToken(PlSqlParser.RETURN, 0);
+};
+
+Constructor_declarationContext.prototype.SELF = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.SELF);
+ } else {
+ return this.getToken(PlSqlParser.SELF, i);
+ }
+};
+
+
+Constructor_declarationContext.prototype.AS = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.AS);
+ } else {
+ return this.getToken(PlSqlParser.AS, i);
+ }
+};
+
+
+Constructor_declarationContext.prototype.RESULT = function() {
+ return this.getToken(PlSqlParser.RESULT, 0);
+};
+
+Constructor_declarationContext.prototype.IS = function() {
+ return this.getToken(PlSqlParser.IS, 0);
+};
+
+Constructor_declarationContext.prototype.call_spec = function() {
+ return this.getTypedRuleContext(Call_specContext,0);
+};
+
+Constructor_declarationContext.prototype.body = function() {
+ return this.getTypedRuleContext(BodyContext,0);
+};
+
+Constructor_declarationContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Constructor_declarationContext.prototype.FINAL = function() {
+ return this.getToken(PlSqlParser.FINAL, 0);
+};
+
+Constructor_declarationContext.prototype.INSTANTIABLE = function() {
+ return this.getToken(PlSqlParser.INSTANTIABLE, 0);
+};
+
+Constructor_declarationContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Constructor_declarationContext.prototype.type_elements_parameter = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Type_elements_parameterContext);
+ } else {
+ return this.getTypedRuleContext(Type_elements_parameterContext,i);
+ }
+};
+
+Constructor_declarationContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Constructor_declarationContext.prototype.IN = function() {
+ return this.getToken(PlSqlParser.IN, 0);
+};
+
+Constructor_declarationContext.prototype.OUT = function() {
+ return this.getToken(PlSqlParser.OUT, 0);
+};
+
+Constructor_declarationContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Constructor_declarationContext.prototype.DECLARE = function() {
+ return this.getToken(PlSqlParser.DECLARE, 0);
+};
+
+Constructor_declarationContext.prototype.seq_of_declare_specs = function() {
+ return this.getTypedRuleContext(Seq_of_declare_specsContext,0);
+};
+
+Constructor_declarationContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterConstructor_declaration(this);
+ }
+};
+
+Constructor_declarationContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitConstructor_declaration(this);
+ }
+};
+
+Constructor_declarationContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitConstructor_declaration(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Constructor_declarationContext = Constructor_declarationContext;
+
+PlSqlParser.prototype.constructor_declaration = function() {
+
+ var localctx = new Constructor_declarationContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 134, PlSqlParser.RULE_constructor_declaration);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2504;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.FINAL) {
+ this.state = 2503;
+ this.match(PlSqlParser.FINAL);
+ }
+
+ this.state = 2507;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.INSTANTIABLE) {
+ this.state = 2506;
+ this.match(PlSqlParser.INSTANTIABLE);
+ }
+
+ this.state = 2509;
+ this.match(PlSqlParser.CONSTRUCTOR);
+ this.state = 2510;
+ this.match(PlSqlParser.FUNCTION);
+ this.state = 2511;
+ this.type_spec();
+ this.state = 2529;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.LEFT_PAREN) {
+ this.state = 2512;
+ this.match(PlSqlParser.LEFT_PAREN);
+
+ this.state = 2513;
+ this.match(PlSqlParser.SELF);
+ this.state = 2514;
+ this.match(PlSqlParser.IN);
+ this.state = 2515;
+ this.match(PlSqlParser.OUT);
+ this.state = 2516;
+ this.type_spec();
+ this.state = 2517;
+ this.match(PlSqlParser.COMMA);
+ this.state = 2519;
+ this.type_elements_parameter();
+ this.state = 2524;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 2520;
+ this.match(PlSqlParser.COMMA);
+ this.state = 2521;
+ this.type_elements_parameter();
+ this.state = 2526;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 2527;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ }
+
+ this.state = 2531;
+ this.match(PlSqlParser.RETURN);
+ this.state = 2532;
+ this.match(PlSqlParser.SELF);
+ this.state = 2533;
+ this.match(PlSqlParser.AS);
+ this.state = 2534;
+ this.match(PlSqlParser.RESULT);
+ this.state = 2535;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.AS || _la===PlSqlParser.IS)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 2546;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,150,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 2536;
+ this.call_spec();
+ break;
+
+ case 2:
+ this.state = 2538;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,148,this._ctx);
+ if(la_===1) {
+ this.state = 2537;
+ this.match(PlSqlParser.DECLARE);
+
+ }
+ this.state = 2541;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,149,this._ctx);
+ if(la_===1) {
+ this.state = 2540;
+ this.seq_of_declare_specs();
+
+ }
+ this.state = 2543;
+ this.body();
+ this.state = 2544;
+ this.match(PlSqlParser.SEMICOLON);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Modifier_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_modifier_clause;
+ return this;
+}
+
+Modifier_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Modifier_clauseContext.prototype.constructor = Modifier_clauseContext;
+
+Modifier_clauseContext.prototype.INSTANTIABLE = function() {
+ return this.getToken(PlSqlParser.INSTANTIABLE, 0);
+};
+
+Modifier_clauseContext.prototype.FINAL = function() {
+ return this.getToken(PlSqlParser.FINAL, 0);
+};
+
+Modifier_clauseContext.prototype.OVERRIDING = function() {
+ return this.getToken(PlSqlParser.OVERRIDING, 0);
+};
+
+Modifier_clauseContext.prototype.NOT = function() {
+ return this.getToken(PlSqlParser.NOT, 0);
+};
+
+Modifier_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterModifier_clause(this);
+ }
+};
+
+Modifier_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitModifier_clause(this);
+ }
+};
+
+Modifier_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitModifier_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Modifier_clauseContext = Modifier_clauseContext;
+
+PlSqlParser.prototype.modifier_clause = function() {
+
+ var localctx = new Modifier_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 136, PlSqlParser.RULE_modifier_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2549;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.NOT) {
+ this.state = 2548;
+ this.match(PlSqlParser.NOT);
+ }
+
+ this.state = 2551;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.FINAL || _la===PlSqlParser.INSTANTIABLE || _la===PlSqlParser.OVERRIDING)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Object_member_specContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_object_member_spec;
+ return this;
+}
+
+Object_member_specContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Object_member_specContext.prototype.constructor = Object_member_specContext;
+
+Object_member_specContext.prototype.identifier = function() {
+ return this.getTypedRuleContext(IdentifierContext,0);
+};
+
+Object_member_specContext.prototype.type_spec = function() {
+ return this.getTypedRuleContext(Type_specContext,0);
+};
+
+Object_member_specContext.prototype.sqlj_object_type_attr = function() {
+ return this.getTypedRuleContext(Sqlj_object_type_attrContext,0);
+};
+
+Object_member_specContext.prototype.element_spec = function() {
+ return this.getTypedRuleContext(Element_specContext,0);
+};
+
+Object_member_specContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterObject_member_spec(this);
+ }
+};
+
+Object_member_specContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitObject_member_spec(this);
+ }
+};
+
+Object_member_specContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitObject_member_spec(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Object_member_specContext = Object_member_specContext;
+
+PlSqlParser.prototype.object_member_spec = function() {
+
+ var localctx = new Object_member_specContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 138, PlSqlParser.RULE_object_member_spec);
+ var _la = 0; // Token type
+ try {
+ this.state = 2559;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,153,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2553;
+ this.identifier();
+ this.state = 2554;
+ this.type_spec();
+ this.state = 2556;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.EXTERNAL) {
+ this.state = 2555;
+ this.sqlj_object_type_attr();
+ }
+
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 2558;
+ this.element_spec();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Sqlj_object_type_attrContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_sqlj_object_type_attr;
+ return this;
+}
+
+Sqlj_object_type_attrContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Sqlj_object_type_attrContext.prototype.constructor = Sqlj_object_type_attrContext;
+
+Sqlj_object_type_attrContext.prototype.EXTERNAL = function() {
+ return this.getToken(PlSqlParser.EXTERNAL, 0);
+};
+
+Sqlj_object_type_attrContext.prototype.NAME = function() {
+ return this.getToken(PlSqlParser.NAME, 0);
+};
+
+Sqlj_object_type_attrContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+Sqlj_object_type_attrContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterSqlj_object_type_attr(this);
+ }
+};
+
+Sqlj_object_type_attrContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitSqlj_object_type_attr(this);
+ }
+};
+
+Sqlj_object_type_attrContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitSqlj_object_type_attr(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Sqlj_object_type_attrContext = Sqlj_object_type_attrContext;
+
+PlSqlParser.prototype.sqlj_object_type_attr = function() {
+
+ var localctx = new Sqlj_object_type_attrContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 140, PlSqlParser.RULE_sqlj_object_type_attr);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2561;
+ this.match(PlSqlParser.EXTERNAL);
+ this.state = 2562;
+ this.match(PlSqlParser.NAME);
+ this.state = 2563;
+ this.expression();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Element_specContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_element_spec;
+ return this;
+}
+
+Element_specContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Element_specContext.prototype.constructor = Element_specContext;
+
+Element_specContext.prototype.modifier_clause = function() {
+ return this.getTypedRuleContext(Modifier_clauseContext,0);
+};
+
+Element_specContext.prototype.element_spec_options = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Element_spec_optionsContext);
+ } else {
+ return this.getTypedRuleContext(Element_spec_optionsContext,i);
+ }
+};
+
+Element_specContext.prototype.COMMA = function() {
+ return this.getToken(PlSqlParser.COMMA, 0);
+};
+
+Element_specContext.prototype.pragma_clause = function() {
+ return this.getTypedRuleContext(Pragma_clauseContext,0);
+};
+
+Element_specContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterElement_spec(this);
+ }
+};
+
+Element_specContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitElement_spec(this);
+ }
+};
+
+Element_specContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitElement_spec(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Element_specContext = Element_specContext;
+
+PlSqlParser.prototype.element_spec = function() {
+
+ var localctx = new Element_specContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 142, PlSqlParser.RULE_element_spec);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2566;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,154,this._ctx);
+ if(la_===1) {
+ this.state = 2565;
+ this.modifier_clause();
+
+ }
+ this.state = 2569;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 2568;
+ this.element_spec_options();
+ this.state = 2571;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(_la===PlSqlParser.CONSTRUCTOR || _la===PlSqlParser.FINAL || _la===PlSqlParser.INSTANTIABLE || _la===PlSqlParser.MAP || _la===PlSqlParser.MEMBER || _la===PlSqlParser.ORDER || _la===PlSqlParser.STATIC);
+ this.state = 2575;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,156,this._ctx);
+ if(la_===1) {
+ this.state = 2573;
+ this.match(PlSqlParser.COMMA);
+ this.state = 2574;
+ this.pragma_clause();
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Element_spec_optionsContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_element_spec_options;
+ return this;
+}
+
+Element_spec_optionsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Element_spec_optionsContext.prototype.constructor = Element_spec_optionsContext;
+
+Element_spec_optionsContext.prototype.subprogram_spec = function() {
+ return this.getTypedRuleContext(Subprogram_specContext,0);
+};
+
+Element_spec_optionsContext.prototype.constructor_spec = function() {
+ return this.getTypedRuleContext(Constructor_specContext,0);
+};
+
+Element_spec_optionsContext.prototype.map_order_function_spec = function() {
+ return this.getTypedRuleContext(Map_order_function_specContext,0);
+};
+
+Element_spec_optionsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterElement_spec_options(this);
+ }
+};
+
+Element_spec_optionsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitElement_spec_options(this);
+ }
+};
+
+Element_spec_optionsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitElement_spec_options(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Element_spec_optionsContext = Element_spec_optionsContext;
+
+PlSqlParser.prototype.element_spec_options = function() {
+
+ var localctx = new Element_spec_optionsContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 144, PlSqlParser.RULE_element_spec_options);
+ try {
+ this.state = 2580;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.MEMBER:
+ case PlSqlParser.STATIC:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2577;
+ this.subprogram_spec();
+ break;
+ case PlSqlParser.CONSTRUCTOR:
+ case PlSqlParser.FINAL:
+ case PlSqlParser.INSTANTIABLE:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 2578;
+ this.constructor_spec();
+ break;
+ case PlSqlParser.MAP:
+ case PlSqlParser.ORDER:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 2579;
+ this.map_order_function_spec();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Subprogram_specContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_subprogram_spec;
+ return this;
+}
+
+Subprogram_specContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Subprogram_specContext.prototype.constructor = Subprogram_specContext;
+
+Subprogram_specContext.prototype.MEMBER = function() {
+ return this.getToken(PlSqlParser.MEMBER, 0);
+};
+
+Subprogram_specContext.prototype.STATIC = function() {
+ return this.getToken(PlSqlParser.STATIC, 0);
+};
+
+Subprogram_specContext.prototype.type_procedure_spec = function() {
+ return this.getTypedRuleContext(Type_procedure_specContext,0);
+};
+
+Subprogram_specContext.prototype.type_function_spec = function() {
+ return this.getTypedRuleContext(Type_function_specContext,0);
+};
+
+Subprogram_specContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterSubprogram_spec(this);
+ }
+};
+
+Subprogram_specContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitSubprogram_spec(this);
+ }
+};
+
+Subprogram_specContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitSubprogram_spec(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Subprogram_specContext = Subprogram_specContext;
+
+PlSqlParser.prototype.subprogram_spec = function() {
+
+ var localctx = new Subprogram_specContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 146, PlSqlParser.RULE_subprogram_spec);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2582;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.MEMBER || _la===PlSqlParser.STATIC)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 2585;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.PROCEDURE:
+ this.state = 2583;
+ this.type_procedure_spec();
+ break;
+ case PlSqlParser.FUNCTION:
+ this.state = 2584;
+ this.type_function_spec();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Overriding_subprogram_specContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_overriding_subprogram_spec;
+ return this;
+}
+
+Overriding_subprogram_specContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Overriding_subprogram_specContext.prototype.constructor = Overriding_subprogram_specContext;
+
+Overriding_subprogram_specContext.prototype.OVERRIDING = function() {
+ return this.getToken(PlSqlParser.OVERRIDING, 0);
+};
+
+Overriding_subprogram_specContext.prototype.MEMBER = function() {
+ return this.getToken(PlSqlParser.MEMBER, 0);
+};
+
+Overriding_subprogram_specContext.prototype.overriding_function_spec = function() {
+ return this.getTypedRuleContext(Overriding_function_specContext,0);
+};
+
+Overriding_subprogram_specContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterOverriding_subprogram_spec(this);
+ }
+};
+
+Overriding_subprogram_specContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitOverriding_subprogram_spec(this);
+ }
+};
+
+Overriding_subprogram_specContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitOverriding_subprogram_spec(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Overriding_subprogram_specContext = Overriding_subprogram_specContext;
+
+PlSqlParser.prototype.overriding_subprogram_spec = function() {
+
+ var localctx = new Overriding_subprogram_specContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 148, PlSqlParser.RULE_overriding_subprogram_spec);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2587;
+ this.match(PlSqlParser.OVERRIDING);
+ this.state = 2588;
+ this.match(PlSqlParser.MEMBER);
+ this.state = 2589;
+ this.overriding_function_spec();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Overriding_function_specContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_overriding_function_spec;
+ return this;
+}
+
+Overriding_function_specContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Overriding_function_specContext.prototype.constructor = Overriding_function_specContext;
+
+Overriding_function_specContext.prototype.FUNCTION = function() {
+ return this.getToken(PlSqlParser.FUNCTION, 0);
+};
+
+Overriding_function_specContext.prototype.function_name = function() {
+ return this.getTypedRuleContext(Function_nameContext,0);
+};
+
+Overriding_function_specContext.prototype.RETURN = function() {
+ return this.getToken(PlSqlParser.RETURN, 0);
+};
+
+Overriding_function_specContext.prototype.type_spec = function() {
+ return this.getTypedRuleContext(Type_specContext,0);
+};
+
+Overriding_function_specContext.prototype.SELF = function() {
+ return this.getToken(PlSqlParser.SELF, 0);
+};
+
+Overriding_function_specContext.prototype.AS = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.AS);
+ } else {
+ return this.getToken(PlSqlParser.AS, i);
+ }
+};
+
+
+Overriding_function_specContext.prototype.RESULT = function() {
+ return this.getToken(PlSqlParser.RESULT, 0);
+};
+
+Overriding_function_specContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Overriding_function_specContext.prototype.type_elements_parameter = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Type_elements_parameterContext);
+ } else {
+ return this.getTypedRuleContext(Type_elements_parameterContext,i);
+ }
+};
+
+Overriding_function_specContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Overriding_function_specContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Overriding_function_specContext.prototype.IS = function() {
+ return this.getToken(PlSqlParser.IS, 0);
+};
+
+Overriding_function_specContext.prototype.body = function() {
+ return this.getTypedRuleContext(BodyContext,0);
+};
+
+Overriding_function_specContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Overriding_function_specContext.prototype.PIPELINED = function() {
+ return this.getToken(PlSqlParser.PIPELINED, 0);
+};
+
+Overriding_function_specContext.prototype.DECLARE = function() {
+ return this.getToken(PlSqlParser.DECLARE, 0);
+};
+
+Overriding_function_specContext.prototype.seq_of_declare_specs = function() {
+ return this.getTypedRuleContext(Seq_of_declare_specsContext,0);
+};
+
+Overriding_function_specContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterOverriding_function_spec(this);
+ }
+};
+
+Overriding_function_specContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitOverriding_function_spec(this);
+ }
+};
+
+Overriding_function_specContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitOverriding_function_spec(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Overriding_function_specContext = Overriding_function_specContext;
+
+PlSqlParser.prototype.overriding_function_spec = function() {
+
+ var localctx = new Overriding_function_specContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 150, PlSqlParser.RULE_overriding_function_spec);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2591;
+ this.match(PlSqlParser.FUNCTION);
+ this.state = 2592;
+ this.function_name();
+ this.state = 2604;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.LEFT_PAREN) {
+ this.state = 2593;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 2594;
+ this.type_elements_parameter();
+ this.state = 2599;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 2595;
+ this.match(PlSqlParser.COMMA);
+ this.state = 2596;
+ this.type_elements_parameter();
+ this.state = 2601;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 2602;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ }
+
+ this.state = 2606;
+ this.match(PlSqlParser.RETURN);
+ this.state = 2611;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,161,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 2607;
+ this.type_spec();
+ break;
+
+ case 2:
+ this.state = 2608;
+ this.match(PlSqlParser.SELF);
+ this.state = 2609;
+ this.match(PlSqlParser.AS);
+ this.state = 2610;
+ this.match(PlSqlParser.RESULT);
+ break;
+
+ }
+ this.state = 2624;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.AS || _la===PlSqlParser.IS || _la===PlSqlParser.PIPELINED) {
+ this.state = 2614;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.PIPELINED) {
+ this.state = 2613;
+ this.match(PlSqlParser.PIPELINED);
+ }
+
+ this.state = 2616;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.AS || _la===PlSqlParser.IS)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+
+ this.state = 2618;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,163,this._ctx);
+ if(la_===1) {
+ this.state = 2617;
+ this.match(PlSqlParser.DECLARE);
+
+ }
+ this.state = 2621;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,164,this._ctx);
+ if(la_===1) {
+ this.state = 2620;
+ this.seq_of_declare_specs();
+
+ }
+ this.state = 2623;
+ this.body();
+ }
+
+ this.state = 2627;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,166,this._ctx);
+ if(la_===1) {
+ this.state = 2626;
+ this.match(PlSqlParser.SEMICOLON);
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Type_procedure_specContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_type_procedure_spec;
+ return this;
+}
+
+Type_procedure_specContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Type_procedure_specContext.prototype.constructor = Type_procedure_specContext;
+
+Type_procedure_specContext.prototype.PROCEDURE = function() {
+ return this.getToken(PlSqlParser.PROCEDURE, 0);
+};
+
+Type_procedure_specContext.prototype.procedure_name = function() {
+ return this.getTypedRuleContext(Procedure_nameContext,0);
+};
+
+Type_procedure_specContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Type_procedure_specContext.prototype.type_elements_parameter = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Type_elements_parameterContext);
+ } else {
+ return this.getTypedRuleContext(Type_elements_parameterContext,i);
+ }
+};
+
+Type_procedure_specContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Type_procedure_specContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Type_procedure_specContext.prototype.call_spec = function() {
+ return this.getTypedRuleContext(Call_specContext,0);
+};
+
+Type_procedure_specContext.prototype.IS = function() {
+ return this.getToken(PlSqlParser.IS, 0);
+};
+
+Type_procedure_specContext.prototype.AS = function() {
+ return this.getToken(PlSqlParser.AS, 0);
+};
+
+Type_procedure_specContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterType_procedure_spec(this);
+ }
+};
+
+Type_procedure_specContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitType_procedure_spec(this);
+ }
+};
+
+Type_procedure_specContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitType_procedure_spec(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Type_procedure_specContext = Type_procedure_specContext;
+
+PlSqlParser.prototype.type_procedure_spec = function() {
+
+ var localctx = new Type_procedure_specContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 152, PlSqlParser.RULE_type_procedure_spec);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2629;
+ this.match(PlSqlParser.PROCEDURE);
+ this.state = 2630;
+ this.procedure_name();
+ this.state = 2631;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 2632;
+ this.type_elements_parameter();
+ this.state = 2637;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 2633;
+ this.match(PlSqlParser.COMMA);
+ this.state = 2634;
+ this.type_elements_parameter();
+ this.state = 2639;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 2640;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ this.state = 2643;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.AS || _la===PlSqlParser.IS) {
+ this.state = 2641;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.AS || _la===PlSqlParser.IS)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 2642;
+ this.call_spec();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Type_function_specContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_type_function_spec;
+ return this;
+}
+
+Type_function_specContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Type_function_specContext.prototype.constructor = Type_function_specContext;
+
+Type_function_specContext.prototype.FUNCTION = function() {
+ return this.getToken(PlSqlParser.FUNCTION, 0);
+};
+
+Type_function_specContext.prototype.function_name = function() {
+ return this.getTypedRuleContext(Function_nameContext,0);
+};
+
+Type_function_specContext.prototype.RETURN = function() {
+ return this.getToken(PlSqlParser.RETURN, 0);
+};
+
+Type_function_specContext.prototype.type_spec = function() {
+ return this.getTypedRuleContext(Type_specContext,0);
+};
+
+Type_function_specContext.prototype.SELF = function() {
+ return this.getToken(PlSqlParser.SELF, 0);
+};
+
+Type_function_specContext.prototype.AS = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.AS);
+ } else {
+ return this.getToken(PlSqlParser.AS, i);
+ }
+};
+
+
+Type_function_specContext.prototype.RESULT = function() {
+ return this.getToken(PlSqlParser.RESULT, 0);
+};
+
+Type_function_specContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Type_function_specContext.prototype.type_elements_parameter = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Type_elements_parameterContext);
+ } else {
+ return this.getTypedRuleContext(Type_elements_parameterContext,i);
+ }
+};
+
+Type_function_specContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Type_function_specContext.prototype.call_spec = function() {
+ return this.getTypedRuleContext(Call_specContext,0);
+};
+
+Type_function_specContext.prototype.EXTERNAL = function() {
+ return this.getToken(PlSqlParser.EXTERNAL, 0);
+};
+
+Type_function_specContext.prototype.NAME = function() {
+ return this.getToken(PlSqlParser.NAME, 0);
+};
+
+Type_function_specContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+Type_function_specContext.prototype.IS = function() {
+ return this.getToken(PlSqlParser.IS, 0);
+};
+
+Type_function_specContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Type_function_specContext.prototype.VARIABLE = function() {
+ return this.getToken(PlSqlParser.VARIABLE, 0);
+};
+
+Type_function_specContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterType_function_spec(this);
+ }
+};
+
+Type_function_specContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitType_function_spec(this);
+ }
+};
+
+Type_function_specContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitType_function_spec(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Type_function_specContext = Type_function_specContext;
+
+PlSqlParser.prototype.type_function_spec = function() {
+
+ var localctx = new Type_function_specContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 154, PlSqlParser.RULE_type_function_spec);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2645;
+ this.match(PlSqlParser.FUNCTION);
+ this.state = 2646;
+ this.function_name();
+ this.state = 2658;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.LEFT_PAREN) {
+ this.state = 2647;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 2648;
+ this.type_elements_parameter();
+ this.state = 2653;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 2649;
+ this.match(PlSqlParser.COMMA);
+ this.state = 2650;
+ this.type_elements_parameter();
+ this.state = 2655;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 2656;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ }
+
+ this.state = 2660;
+ this.match(PlSqlParser.RETURN);
+ this.state = 2665;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,171,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 2661;
+ this.type_spec();
+ break;
+
+ case 2:
+ this.state = 2662;
+ this.match(PlSqlParser.SELF);
+ this.state = 2663;
+ this.match(PlSqlParser.AS);
+ this.state = 2664;
+ this.match(PlSqlParser.RESULT);
+ break;
+
+ }
+ this.state = 2675;
+ this._errHandler.sync(this);
+ switch (this._input.LA(1)) {
+ case PlSqlParser.AS:
+ case PlSqlParser.IS:
+ this.state = 2667;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.AS || _la===PlSqlParser.IS)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 2668;
+ this.call_spec();
+ break;
+ case PlSqlParser.EXTERNAL:
+ this.state = 2669;
+ this.match(PlSqlParser.EXTERNAL);
+ this.state = 2671;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.VARIABLE) {
+ this.state = 2670;
+ this.match(PlSqlParser.VARIABLE);
+ }
+
+ this.state = 2673;
+ this.match(PlSqlParser.NAME);
+ this.state = 2674;
+ this.expression();
+ break;
+ case PlSqlParser.CASCADE:
+ case PlSqlParser.CONSTRUCTOR:
+ case PlSqlParser.FINAL:
+ case PlSqlParser.INSTANTIABLE:
+ case PlSqlParser.INVALIDATE:
+ case PlSqlParser.MAP:
+ case PlSqlParser.MEMBER:
+ case PlSqlParser.ORDER:
+ case PlSqlParser.STATIC:
+ case PlSqlParser.RIGHT_PAREN:
+ case PlSqlParser.COMMA:
+ case PlSqlParser.SEMICOLON:
+ break;
+ default:
+ break;
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Constructor_specContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_constructor_spec;
+ return this;
+}
+
+Constructor_specContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Constructor_specContext.prototype.constructor = Constructor_specContext;
+
+Constructor_specContext.prototype.CONSTRUCTOR = function() {
+ return this.getToken(PlSqlParser.CONSTRUCTOR, 0);
+};
+
+Constructor_specContext.prototype.FUNCTION = function() {
+ return this.getToken(PlSqlParser.FUNCTION, 0);
+};
+
+Constructor_specContext.prototype.type_spec = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Type_specContext);
+ } else {
+ return this.getTypedRuleContext(Type_specContext,i);
+ }
+};
+
+Constructor_specContext.prototype.RETURN = function() {
+ return this.getToken(PlSqlParser.RETURN, 0);
+};
+
+Constructor_specContext.prototype.SELF = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.SELF);
+ } else {
+ return this.getToken(PlSqlParser.SELF, i);
+ }
+};
+
+
+Constructor_specContext.prototype.AS = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.AS);
+ } else {
+ return this.getToken(PlSqlParser.AS, i);
+ }
+};
+
+
+Constructor_specContext.prototype.RESULT = function() {
+ return this.getToken(PlSqlParser.RESULT, 0);
+};
+
+Constructor_specContext.prototype.FINAL = function() {
+ return this.getToken(PlSqlParser.FINAL, 0);
+};
+
+Constructor_specContext.prototype.INSTANTIABLE = function() {
+ return this.getToken(PlSqlParser.INSTANTIABLE, 0);
+};
+
+Constructor_specContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Constructor_specContext.prototype.type_elements_parameter = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Type_elements_parameterContext);
+ } else {
+ return this.getTypedRuleContext(Type_elements_parameterContext,i);
+ }
+};
+
+Constructor_specContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Constructor_specContext.prototype.call_spec = function() {
+ return this.getTypedRuleContext(Call_specContext,0);
+};
+
+Constructor_specContext.prototype.IS = function() {
+ return this.getToken(PlSqlParser.IS, 0);
+};
+
+Constructor_specContext.prototype.IN = function() {
+ return this.getToken(PlSqlParser.IN, 0);
+};
+
+Constructor_specContext.prototype.OUT = function() {
+ return this.getToken(PlSqlParser.OUT, 0);
+};
+
+Constructor_specContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Constructor_specContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterConstructor_spec(this);
+ }
+};
+
+Constructor_specContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitConstructor_spec(this);
+ }
+};
+
+Constructor_specContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitConstructor_spec(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Constructor_specContext = Constructor_specContext;
+
+PlSqlParser.prototype.constructor_spec = function() {
+
+ var localctx = new Constructor_specContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 156, PlSqlParser.RULE_constructor_spec);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2678;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.FINAL) {
+ this.state = 2677;
+ this.match(PlSqlParser.FINAL);
+ }
+
+ this.state = 2681;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.INSTANTIABLE) {
+ this.state = 2680;
+ this.match(PlSqlParser.INSTANTIABLE);
+ }
+
+ this.state = 2683;
+ this.match(PlSqlParser.CONSTRUCTOR);
+ this.state = 2684;
+ this.match(PlSqlParser.FUNCTION);
+ this.state = 2685;
+ this.type_spec();
+ this.state = 2703;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.LEFT_PAREN) {
+ this.state = 2686;
+ this.match(PlSqlParser.LEFT_PAREN);
+
+ this.state = 2687;
+ this.match(PlSqlParser.SELF);
+ this.state = 2688;
+ this.match(PlSqlParser.IN);
+ this.state = 2689;
+ this.match(PlSqlParser.OUT);
+ this.state = 2690;
+ this.type_spec();
+ this.state = 2691;
+ this.match(PlSqlParser.COMMA);
+ this.state = 2693;
+ this.type_elements_parameter();
+ this.state = 2698;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 2694;
+ this.match(PlSqlParser.COMMA);
+ this.state = 2695;
+ this.type_elements_parameter();
+ this.state = 2700;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 2701;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ }
+
+ this.state = 2705;
+ this.match(PlSqlParser.RETURN);
+ this.state = 2706;
+ this.match(PlSqlParser.SELF);
+ this.state = 2707;
+ this.match(PlSqlParser.AS);
+ this.state = 2708;
+ this.match(PlSqlParser.RESULT);
+ this.state = 2711;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.AS || _la===PlSqlParser.IS) {
+ this.state = 2709;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.AS || _la===PlSqlParser.IS)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 2710;
+ this.call_spec();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Map_order_function_specContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_map_order_function_spec;
+ return this;
+}
+
+Map_order_function_specContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Map_order_function_specContext.prototype.constructor = Map_order_function_specContext;
+
+Map_order_function_specContext.prototype.MEMBER = function() {
+ return this.getToken(PlSqlParser.MEMBER, 0);
+};
+
+Map_order_function_specContext.prototype.type_function_spec = function() {
+ return this.getTypedRuleContext(Type_function_specContext,0);
+};
+
+Map_order_function_specContext.prototype.MAP = function() {
+ return this.getToken(PlSqlParser.MAP, 0);
+};
+
+Map_order_function_specContext.prototype.ORDER = function() {
+ return this.getToken(PlSqlParser.ORDER, 0);
+};
+
+Map_order_function_specContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterMap_order_function_spec(this);
+ }
+};
+
+Map_order_function_specContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitMap_order_function_spec(this);
+ }
+};
+
+Map_order_function_specContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitMap_order_function_spec(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Map_order_function_specContext = Map_order_function_specContext;
+
+PlSqlParser.prototype.map_order_function_spec = function() {
+
+ var localctx = new Map_order_function_specContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 158, PlSqlParser.RULE_map_order_function_spec);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2713;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.MAP || _la===PlSqlParser.ORDER)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 2714;
+ this.match(PlSqlParser.MEMBER);
+ this.state = 2715;
+ this.type_function_spec();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Pragma_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_pragma_clause;
+ return this;
+}
+
+Pragma_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Pragma_clauseContext.prototype.constructor = Pragma_clauseContext;
+
+Pragma_clauseContext.prototype.PRAGMA = function() {
+ return this.getToken(PlSqlParser.PRAGMA, 0);
+};
+
+Pragma_clauseContext.prototype.RESTRICT_REFERENCES = function() {
+ return this.getToken(PlSqlParser.RESTRICT_REFERENCES, 0);
+};
+
+Pragma_clauseContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Pragma_clauseContext.prototype.pragma_elements = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Pragma_elementsContext);
+ } else {
+ return this.getTypedRuleContext(Pragma_elementsContext,i);
+ }
+};
+
+Pragma_clauseContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Pragma_clauseContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Pragma_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterPragma_clause(this);
+ }
+};
+
+Pragma_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitPragma_clause(this);
+ }
+};
+
+Pragma_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitPragma_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Pragma_clauseContext = Pragma_clauseContext;
+
+PlSqlParser.prototype.pragma_clause = function() {
+
+ var localctx = new Pragma_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 160, PlSqlParser.RULE_pragma_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2717;
+ this.match(PlSqlParser.PRAGMA);
+ this.state = 2718;
+ this.match(PlSqlParser.RESTRICT_REFERENCES);
+ this.state = 2719;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 2720;
+ this.pragma_elements();
+ this.state = 2725;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 2721;
+ this.match(PlSqlParser.COMMA);
+ this.state = 2722;
+ this.pragma_elements();
+ this.state = 2727;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 2728;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Pragma_elementsContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_pragma_elements;
+ return this;
+}
+
+Pragma_elementsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Pragma_elementsContext.prototype.constructor = Pragma_elementsContext;
+
+Pragma_elementsContext.prototype.identifier = function() {
+ return this.getTypedRuleContext(IdentifierContext,0);
+};
+
+Pragma_elementsContext.prototype.DEFAULT = function() {
+ return this.getToken(PlSqlParser.DEFAULT, 0);
+};
+
+Pragma_elementsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterPragma_elements(this);
+ }
+};
+
+Pragma_elementsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitPragma_elements(this);
+ }
+};
+
+Pragma_elementsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitPragma_elements(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Pragma_elementsContext = Pragma_elementsContext;
+
+PlSqlParser.prototype.pragma_elements = function() {
+
+ var localctx = new Pragma_elementsContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 162, PlSqlParser.RULE_pragma_elements);
+ try {
+ this.state = 2732;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.ABORT:
+ case PlSqlParser.ABS:
+ case PlSqlParser.ACCESS:
+ case PlSqlParser.ACCESSED:
+ case PlSqlParser.ACCOUNT:
+ case PlSqlParser.ACL:
+ case PlSqlParser.ACOS:
+ case PlSqlParser.ACTION:
+ case PlSqlParser.ACTIONS:
+ case PlSqlParser.ACTIVATE:
+ case PlSqlParser.ACTIVE:
+ case PlSqlParser.ACTIVE_COMPONENT:
+ case PlSqlParser.ACTIVE_DATA:
+ case PlSqlParser.ACTIVE_FUNCTION:
+ case PlSqlParser.ACTIVE_TAG:
+ case PlSqlParser.ACTIVITY:
+ case PlSqlParser.ADAPTIVE_PLAN:
+ case PlSqlParser.ADD:
+ case PlSqlParser.ADD_COLUMN:
+ case PlSqlParser.ADD_GROUP:
+ case PlSqlParser.ADD_MONTHS:
+ case PlSqlParser.ADJ_DATE:
+ case PlSqlParser.ADMIN:
+ case PlSqlParser.ADMINISTER:
+ case PlSqlParser.ADMINISTRATOR:
+ case PlSqlParser.ADVANCED:
+ case PlSqlParser.ADVISE:
+ case PlSqlParser.ADVISOR:
+ case PlSqlParser.AFD_DISKSTRING:
+ case PlSqlParser.AFTER:
+ case PlSqlParser.AGENT:
+ case PlSqlParser.AGGREGATE:
+ case PlSqlParser.A_LETTER:
+ case PlSqlParser.ALIAS:
+ case PlSqlParser.ALLOCATE:
+ case PlSqlParser.ALLOW:
+ case PlSqlParser.ALL_ROWS:
+ case PlSqlParser.ALWAYS:
+ case PlSqlParser.ANALYZE:
+ case PlSqlParser.ANCILLARY:
+ case PlSqlParser.AND_EQUAL:
+ case PlSqlParser.ANOMALY:
+ case PlSqlParser.ANSI_REARCH:
+ case PlSqlParser.ANTIJOIN:
+ case PlSqlParser.ANYSCHEMA:
+ case PlSqlParser.APPEND:
+ case PlSqlParser.APPENDCHILDXML:
+ case PlSqlParser.APPEND_VALUES:
+ case PlSqlParser.APPLICATION:
+ case PlSqlParser.APPLY:
+ case PlSqlParser.APPROX_COUNT_DISTINCT:
+ case PlSqlParser.ARCHIVAL:
+ case PlSqlParser.ARCHIVE:
+ case PlSqlParser.ARCHIVED:
+ case PlSqlParser.ARCHIVELOG:
+ case PlSqlParser.ARRAY:
+ case PlSqlParser.ASCII:
+ case PlSqlParser.ASCIISTR:
+ case PlSqlParser.ASIN:
+ case PlSqlParser.ASIS:
+ case PlSqlParser.ASSEMBLY:
+ case PlSqlParser.ASSIGN:
+ case PlSqlParser.ASSOCIATE:
+ case PlSqlParser.ASYNC:
+ case PlSqlParser.ASYNCHRONOUS:
+ case PlSqlParser.ATAN2:
+ case PlSqlParser.ATAN:
+ case PlSqlParser.AT:
+ case PlSqlParser.ATTRIBUTE:
+ case PlSqlParser.ATTRIBUTES:
+ case PlSqlParser.AUTHENTICATED:
+ case PlSqlParser.AUTHENTICATION:
+ case PlSqlParser.AUTHID:
+ case PlSqlParser.AUTHORIZATION:
+ case PlSqlParser.AUTOALLOCATE:
+ case PlSqlParser.AUTO:
+ case PlSqlParser.AUTOEXTEND:
+ case PlSqlParser.AUTO_LOGIN:
+ case PlSqlParser.AUTOMATIC:
+ case PlSqlParser.AUTONOMOUS_TRANSACTION:
+ case PlSqlParser.AUTO_REOPTIMIZE:
+ case PlSqlParser.AVAILABILITY:
+ case PlSqlParser.AVRO:
+ case PlSqlParser.BACKGROUND:
+ case PlSqlParser.BACKUP:
+ case PlSqlParser.BASIC:
+ case PlSqlParser.BASICFILE:
+ case PlSqlParser.BATCH:
+ case PlSqlParser.BATCHSIZE:
+ case PlSqlParser.BATCH_TABLE_ACCESS_BY_ROWID:
+ case PlSqlParser.BECOME:
+ case PlSqlParser.BEFORE:
+ case PlSqlParser.BEGIN:
+ case PlSqlParser.BEGINNING:
+ case PlSqlParser.BEGIN_OUTLINE_DATA:
+ case PlSqlParser.BEHALF:
+ case PlSqlParser.BEQUEATH:
+ case PlSqlParser.BFILE:
+ case PlSqlParser.BFILENAME:
+ case PlSqlParser.BIGFILE:
+ case PlSqlParser.BINARY:
+ case PlSqlParser.BINARY_DOUBLE:
+ case PlSqlParser.BINARY_DOUBLE_INFINITY:
+ case PlSqlParser.BINARY_DOUBLE_NAN:
+ case PlSqlParser.BINARY_FLOAT:
+ case PlSqlParser.BINARY_FLOAT_INFINITY:
+ case PlSqlParser.BINARY_FLOAT_NAN:
+ case PlSqlParser.BINARY_INTEGER:
+ case PlSqlParser.BIND_AWARE:
+ case PlSqlParser.BINDING:
+ case PlSqlParser.BIN_TO_NUM:
+ case PlSqlParser.BITAND:
+ case PlSqlParser.BITMAP_AND:
+ case PlSqlParser.BITMAP:
+ case PlSqlParser.BITMAPS:
+ case PlSqlParser.BITMAP_TREE:
+ case PlSqlParser.BITS:
+ case PlSqlParser.BLOB:
+ case PlSqlParser.BLOCK:
+ case PlSqlParser.BLOCK_RANGE:
+ case PlSqlParser.BLOCKS:
+ case PlSqlParser.BLOCKSIZE:
+ case PlSqlParser.BODY:
+ case PlSqlParser.BOOLEAN:
+ case PlSqlParser.BOTH:
+ case PlSqlParser.BOUND:
+ case PlSqlParser.BRANCH:
+ case PlSqlParser.BREADTH:
+ case PlSqlParser.BROADCAST:
+ case PlSqlParser.BSON:
+ case PlSqlParser.BUFFER:
+ case PlSqlParser.BUFFER_CACHE:
+ case PlSqlParser.BUFFER_POOL:
+ case PlSqlParser.BUILD:
+ case PlSqlParser.BULK:
+ case PlSqlParser.BYPASS_RECURSIVE_CHECK:
+ case PlSqlParser.BYPASS_UJVC:
+ case PlSqlParser.BYTE:
+ case PlSqlParser.CACHE:
+ case PlSqlParser.CACHE_CB:
+ case PlSqlParser.CACHE_INSTANCES:
+ case PlSqlParser.CACHE_TEMP_TABLE:
+ case PlSqlParser.CACHING:
+ case PlSqlParser.CALCULATED:
+ case PlSqlParser.CALLBACK:
+ case PlSqlParser.CALL:
+ case PlSqlParser.CANCEL:
+ case PlSqlParser.CAPACITY:
+ case PlSqlParser.CARDINALITY:
+ case PlSqlParser.CASCADE:
+ case PlSqlParser.CASE:
+ case PlSqlParser.CAST:
+ case PlSqlParser.CATEGORY:
+ case PlSqlParser.CDBDEFAULT:
+ case PlSqlParser.CEIL:
+ case PlSqlParser.CELL_FLASH_CACHE:
+ case PlSqlParser.CERTIFICATE:
+ case PlSqlParser.CFILE:
+ case PlSqlParser.CHAINED:
+ case PlSqlParser.CHANGE:
+ case PlSqlParser.CHANGE_DUPKEY_ERROR_INDEX:
+ case PlSqlParser.CHARACTER:
+ case PlSqlParser.CHAR:
+ case PlSqlParser.CHAR_CS:
+ case PlSqlParser.CHARTOROWID:
+ case PlSqlParser.CHECK_ACL_REWRITE:
+ case PlSqlParser.CHECKPOINT:
+ case PlSqlParser.CHILD:
+ case PlSqlParser.CHOOSE:
+ case PlSqlParser.CHR:
+ case PlSqlParser.CHUNK:
+ case PlSqlParser.CLASS:
+ case PlSqlParser.CLASSIFIER:
+ case PlSqlParser.CLEANUP:
+ case PlSqlParser.CLEAR:
+ case PlSqlParser.C_LETTER:
+ case PlSqlParser.CLIENT:
+ case PlSqlParser.CLOB:
+ case PlSqlParser.CLONE:
+ case PlSqlParser.CLOSE_CACHED_OPEN_CURSORS:
+ case PlSqlParser.CLOSE:
+ case PlSqlParser.CLUSTER_BY_ROWID:
+ case PlSqlParser.CLUSTER:
+ case PlSqlParser.CLUSTER_DETAILS:
+ case PlSqlParser.CLUSTER_DISTANCE:
+ case PlSqlParser.CLUSTER_ID:
+ case PlSqlParser.CLUSTERING:
+ case PlSqlParser.CLUSTERING_FACTOR:
+ case PlSqlParser.CLUSTER_PROBABILITY:
+ case PlSqlParser.CLUSTER_SET:
+ case PlSqlParser.COALESCE:
+ case PlSqlParser.COALESCE_SQ:
+ case PlSqlParser.COARSE:
+ case PlSqlParser.CO_AUTH_IND:
+ case PlSqlParser.COLD:
+ case PlSqlParser.COLLECT:
+ case PlSqlParser.COLUMNAR:
+ case PlSqlParser.COLUMN_AUTH_INDICATOR:
+ case PlSqlParser.COLUMN:
+ case PlSqlParser.COLUMNS:
+ case PlSqlParser.COLUMN_STATS:
+ case PlSqlParser.COLUMN_VALUE:
+ case PlSqlParser.COMMENT:
+ case PlSqlParser.COMMIT:
+ case PlSqlParser.COMMITTED:
+ case PlSqlParser.COMMON_DATA:
+ case PlSqlParser.COMPACT:
+ case PlSqlParser.COMPATIBILITY:
+ case PlSqlParser.COMPILE:
+ case PlSqlParser.COMPLETE:
+ case PlSqlParser.COMPLIANCE:
+ case PlSqlParser.COMPONENT:
+ case PlSqlParser.COMPONENTS:
+ case PlSqlParser.COMPOSE:
+ case PlSqlParser.COMPOSITE:
+ case PlSqlParser.COMPOSITE_LIMIT:
+ case PlSqlParser.COMPOUND:
+ case PlSqlParser.COMPUTE:
+ case PlSqlParser.CONCAT:
+ case PlSqlParser.CON_DBID_TO_ID:
+ case PlSqlParser.CONDITIONAL:
+ case PlSqlParser.CONDITION:
+ case PlSqlParser.CONFIRM:
+ case PlSqlParser.CONFORMING:
+ case PlSqlParser.CON_GUID_TO_ID:
+ case PlSqlParser.CON_ID:
+ case PlSqlParser.CON_NAME_TO_ID:
+ case PlSqlParser.CONNECT_BY_CB_WHR_ONLY:
+ case PlSqlParser.CONNECT_BY_COMBINE_SW:
+ case PlSqlParser.CONNECT_BY_COST_BASED:
+ case PlSqlParser.CONNECT_BY_ELIM_DUPS:
+ case PlSqlParser.CONNECT_BY_FILTERING:
+ case PlSqlParser.CONNECT_BY_ISCYCLE:
+ case PlSqlParser.CONNECT_BY_ISLEAF:
+ case PlSqlParser.CONNECT_BY_ROOT:
+ case PlSqlParser.CONNECT_TIME:
+ case PlSqlParser.CONSIDER:
+ case PlSqlParser.CONSISTENT:
+ case PlSqlParser.CONSTANT:
+ case PlSqlParser.CONST:
+ case PlSqlParser.CONSTRAINT:
+ case PlSqlParser.CONSTRAINTS:
+ case PlSqlParser.CONSTRUCTOR:
+ case PlSqlParser.CONTAINER:
+ case PlSqlParser.CONTAINER_DATA:
+ case PlSqlParser.CONTAINERS:
+ case PlSqlParser.CONTENT:
+ case PlSqlParser.CONTENTS:
+ case PlSqlParser.CONTEXT:
+ case PlSqlParser.CONTINUE:
+ case PlSqlParser.CONTROLFILE:
+ case PlSqlParser.CON_UID_TO_ID:
+ case PlSqlParser.CONVERT:
+ case PlSqlParser.COOKIE:
+ case PlSqlParser.COPY:
+ case PlSqlParser.CORR_K:
+ case PlSqlParser.CORR_S:
+ case PlSqlParser.CORRUPTION:
+ case PlSqlParser.CORRUPT_XID_ALL:
+ case PlSqlParser.CORRUPT_XID:
+ case PlSqlParser.COS:
+ case PlSqlParser.COSH:
+ case PlSqlParser.COST:
+ case PlSqlParser.COST_XML_QUERY_REWRITE:
+ case PlSqlParser.COUNT:
+ case PlSqlParser.COVAR_POP:
+ case PlSqlParser.COVAR_SAMP:
+ case PlSqlParser.CPU_COSTING:
+ case PlSqlParser.CPU_PER_CALL:
+ case PlSqlParser.CPU_PER_SESSION:
+ case PlSqlParser.CRASH:
+ case PlSqlParser.CREATE_FILE_DEST:
+ case PlSqlParser.CREATE_STORED_OUTLINES:
+ case PlSqlParser.CREATION:
+ case PlSqlParser.CREDENTIAL:
+ case PlSqlParser.CRITICAL:
+ case PlSqlParser.CROSS:
+ case PlSqlParser.CROSSEDITION:
+ case PlSqlParser.CSCONVERT:
+ case PlSqlParser.CUBE_AJ:
+ case PlSqlParser.CUBE:
+ case PlSqlParser.CUBE_GB:
+ case PlSqlParser.CUBE_SJ:
+ case PlSqlParser.CUME_DISTM:
+ case PlSqlParser.CURRENT:
+ case PlSqlParser.CURRENT_DATE:
+ case PlSqlParser.CURRENT_SCHEMA:
+ case PlSqlParser.CURRENT_TIME:
+ case PlSqlParser.CURRENT_TIMESTAMP:
+ case PlSqlParser.CURRENT_USER:
+ case PlSqlParser.CURRENTV:
+ case PlSqlParser.CURSOR:
+ case PlSqlParser.CURSOR_SHARING_EXACT:
+ case PlSqlParser.CURSOR_SPECIFIC_SEGMENT:
+ case PlSqlParser.CUSTOMDATUM:
+ case PlSqlParser.CV:
+ case PlSqlParser.CYCLE:
+ case PlSqlParser.DANGLING:
+ case PlSqlParser.DATABASE:
+ case PlSqlParser.DATA:
+ case PlSqlParser.DATAFILE:
+ case PlSqlParser.DATAFILES:
+ case PlSqlParser.DATAMOVEMENT:
+ case PlSqlParser.DATAOBJNO:
+ case PlSqlParser.DATAOBJ_TO_MAT_PARTITION:
+ case PlSqlParser.DATAOBJ_TO_PARTITION:
+ case PlSqlParser.DATAPUMP:
+ case PlSqlParser.DATA_SECURITY_REWRITE_LIMIT:
+ case PlSqlParser.DATE_MODE:
+ case PlSqlParser.DAY:
+ case PlSqlParser.DAYS:
+ case PlSqlParser.DBA:
+ case PlSqlParser.DBA_RECYCLEBIN:
+ case PlSqlParser.DBMS_STATS:
+ case PlSqlParser.DB_ROLE_CHANGE:
+ case PlSqlParser.DBTIMEZONE:
+ case PlSqlParser.DB_UNIQUE_NAME:
+ case PlSqlParser.DB_VERSION:
+ case PlSqlParser.DDL:
+ case PlSqlParser.DEALLOCATE:
+ case PlSqlParser.DEBUG:
+ case PlSqlParser.DEBUGGER:
+ case PlSqlParser.DEC:
+ case PlSqlParser.DECIMAL:
+ case PlSqlParser.DECLARE:
+ case PlSqlParser.DECOMPOSE:
+ case PlSqlParser.DECORRELATE:
+ case PlSqlParser.DECR:
+ case PlSqlParser.DECREMENT:
+ case PlSqlParser.DECRYPT:
+ case PlSqlParser.DEDUPLICATE:
+ case PlSqlParser.DEFAULTS:
+ case PlSqlParser.DEFERRABLE:
+ case PlSqlParser.DEFERRED:
+ case PlSqlParser.DEFINED:
+ case PlSqlParser.DEFINE:
+ case PlSqlParser.DEFINER:
+ case PlSqlParser.DEGREE:
+ case PlSqlParser.DELAY:
+ case PlSqlParser.DELEGATE:
+ case PlSqlParser.DELETE_ALL:
+ case PlSqlParser.DELETE:
+ case PlSqlParser.DELETEXML:
+ case PlSqlParser.DEMAND:
+ case PlSqlParser.DENSE_RANKM:
+ case PlSqlParser.DEPENDENT:
+ case PlSqlParser.DEPTH:
+ case PlSqlParser.DEQUEUE:
+ case PlSqlParser.DEREF:
+ case PlSqlParser.DEREF_NO_REWRITE:
+ case PlSqlParser.DESTROY:
+ case PlSqlParser.DETACHED:
+ case PlSqlParser.DETERMINES:
+ case PlSqlParser.DETERMINISTIC:
+ case PlSqlParser.DICTIONARY:
+ case PlSqlParser.DIMENSION:
+ case PlSqlParser.DIMENSIONS:
+ case PlSqlParser.DIRECT_LOAD:
+ case PlSqlParser.DIRECTORY:
+ case PlSqlParser.DIRECT_PATH:
+ case PlSqlParser.DISABLE_ALL:
+ case PlSqlParser.DISABLE:
+ case PlSqlParser.DISABLE_PARALLEL_DML:
+ case PlSqlParser.DISABLE_PRESET:
+ case PlSqlParser.DISABLE_RPKE:
+ case PlSqlParser.DISALLOW:
+ case PlSqlParser.DISASSOCIATE:
+ case PlSqlParser.DISCARD:
+ case PlSqlParser.DISCONNECT:
+ case PlSqlParser.DISK:
+ case PlSqlParser.DISKGROUP:
+ case PlSqlParser.DISKS:
+ case PlSqlParser.DISMOUNT:
+ case PlSqlParser.DISTINGUISHED:
+ case PlSqlParser.DISTRIBUTED:
+ case PlSqlParser.DISTRIBUTE:
+ case PlSqlParser.DML:
+ case PlSqlParser.DML_UPDATE:
+ case PlSqlParser.DOCFIDELITY:
+ case PlSqlParser.DOCUMENT:
+ case PlSqlParser.DOMAIN_INDEX_FILTER:
+ case PlSqlParser.DOMAIN_INDEX_NO_SORT:
+ case PlSqlParser.DOMAIN_INDEX_SORT:
+ case PlSqlParser.DOUBLE:
+ case PlSqlParser.DOWNGRADE:
+ case PlSqlParser.DRIVING_SITE:
+ case PlSqlParser.DROP_COLUMN:
+ case PlSqlParser.DROP_GROUP:
+ case PlSqlParser.DSINTERVAL_UNCONSTRAINED:
+ case PlSqlParser.DST_UPGRADE_INSERT_CONV:
+ case PlSqlParser.DUMP:
+ case PlSqlParser.DUPLICATE:
+ case PlSqlParser.DV:
+ case PlSqlParser.DYNAMIC:
+ case PlSqlParser.DYNAMIC_SAMPLING:
+ case PlSqlParser.DYNAMIC_SAMPLING_EST_CDN:
+ case PlSqlParser.EACH:
+ case PlSqlParser.EDITIONABLE:
+ case PlSqlParser.EDITION:
+ case PlSqlParser.EDITIONING:
+ case PlSqlParser.EDITIONS:
+ case PlSqlParser.ELEMENT:
+ case PlSqlParser.ELIM_GROUPBY:
+ case PlSqlParser.ELIMINATE_JOIN:
+ case PlSqlParser.ELIMINATE_OBY:
+ case PlSqlParser.ELIMINATE_OUTER_JOIN:
+ case PlSqlParser.EM:
+ case PlSqlParser.EMPTY_BLOB:
+ case PlSqlParser.EMPTY_CLOB:
+ case PlSqlParser.EMPTY:
+ case PlSqlParser.ENABLE_ALL:
+ case PlSqlParser.ENABLE:
+ case PlSqlParser.ENABLE_PARALLEL_DML:
+ case PlSqlParser.ENABLE_PRESET:
+ case PlSqlParser.ENCODING:
+ case PlSqlParser.ENCRYPT:
+ case PlSqlParser.ENCRYPTION:
+ case PlSqlParser.END_OUTLINE_DATA:
+ case PlSqlParser.ENFORCED:
+ case PlSqlParser.ENFORCE:
+ case PlSqlParser.ENQUEUE:
+ case PlSqlParser.ENTERPRISE:
+ case PlSqlParser.ENTITYESCAPING:
+ case PlSqlParser.ENTRY:
+ case PlSqlParser.EQUIPART:
+ case PlSqlParser.ERR:
+ case PlSqlParser.ERROR_ARGUMENT:
+ case PlSqlParser.ERROR:
+ case PlSqlParser.ERROR_ON_OVERLAP_TIME:
+ case PlSqlParser.ERRORS:
+ case PlSqlParser.ESCAPE:
+ case PlSqlParser.ESTIMATE:
+ case PlSqlParser.EVAL:
+ case PlSqlParser.EVALNAME:
+ case PlSqlParser.EVALUATE:
+ case PlSqlParser.EVALUATION:
+ case PlSqlParser.EVENTS:
+ case PlSqlParser.EVERY:
+ case PlSqlParser.EXCEPT:
+ case PlSqlParser.EXCEPTION:
+ case PlSqlParser.EXCEPTION_INIT:
+ case PlSqlParser.EXCEPTIONS:
+ case PlSqlParser.EXCHANGE:
+ case PlSqlParser.EXCLUDE:
+ case PlSqlParser.EXCLUDING:
+ case PlSqlParser.EXECUTE:
+ case PlSqlParser.EXEMPT:
+ case PlSqlParser.EXISTING:
+ case PlSqlParser.EXISTS:
+ case PlSqlParser.EXISTSNODE:
+ case PlSqlParser.EXIT:
+ case PlSqlParser.EXPAND_GSET_TO_UNION:
+ case PlSqlParser.EXPAND_TABLE:
+ case PlSqlParser.EXP:
+ case PlSqlParser.EXPIRE:
+ case PlSqlParser.EXPLAIN:
+ case PlSqlParser.EXPLOSION:
+ case PlSqlParser.EXPORT:
+ case PlSqlParser.EXPR_CORR_CHECK:
+ case PlSqlParser.EXPRESS:
+ case PlSqlParser.EXTENDS:
+ case PlSqlParser.EXTENT:
+ case PlSqlParser.EXTENTS:
+ case PlSqlParser.EXTERNAL:
+ case PlSqlParser.EXTERNALLY:
+ case PlSqlParser.EXTRACTCLOBXML:
+ case PlSqlParser.EXTRACT:
+ case PlSqlParser.EXTRACTVALUE:
+ case PlSqlParser.EXTRA:
+ case PlSqlParser.FACILITY:
+ case PlSqlParser.FACT:
+ case PlSqlParser.FACTOR:
+ case PlSqlParser.FACTORIZE_JOIN:
+ case PlSqlParser.FAILED:
+ case PlSqlParser.FAILED_LOGIN_ATTEMPTS:
+ case PlSqlParser.FAILGROUP:
+ case PlSqlParser.FAILOVER:
+ case PlSqlParser.FAILURE:
+ case PlSqlParser.FALSE:
+ case PlSqlParser.FAMILY:
+ case PlSqlParser.FAR:
+ case PlSqlParser.FAST:
+ case PlSqlParser.FASTSTART:
+ case PlSqlParser.FBTSCAN:
+ case PlSqlParser.FEATURE_DETAILS:
+ case PlSqlParser.FEATURE_ID:
+ case PlSqlParser.FEATURE_SET:
+ case PlSqlParser.FEATURE_VALUE:
+ case PlSqlParser.FETCH:
+ case PlSqlParser.FILE:
+ case PlSqlParser.FILE_NAME_CONVERT:
+ case PlSqlParser.FILESYSTEM_LIKE_LOGGING:
+ case PlSqlParser.FILTER:
+ case PlSqlParser.FINAL:
+ case PlSqlParser.FINE:
+ case PlSqlParser.FINISH:
+ case PlSqlParser.FIRST:
+ case PlSqlParser.FIRSTM:
+ case PlSqlParser.FIRST_ROWS:
+ case PlSqlParser.FIRST_VALUE:
+ case PlSqlParser.FIXED_VIEW_DATA:
+ case PlSqlParser.FLAGGER:
+ case PlSqlParser.FLASHBACK:
+ case PlSqlParser.FLASH_CACHE:
+ case PlSqlParser.FLOAT:
+ case PlSqlParser.FLOB:
+ case PlSqlParser.FLOOR:
+ case PlSqlParser.FLUSH:
+ case PlSqlParser.FOLDER:
+ case PlSqlParser.FOLLOWING:
+ case PlSqlParser.FOLLOWS:
+ case PlSqlParser.FORALL:
+ case PlSqlParser.FORCE:
+ case PlSqlParser.FORCE_XML_QUERY_REWRITE:
+ case PlSqlParser.FOREIGN:
+ case PlSqlParser.FOREVER:
+ case PlSqlParser.FORMAT:
+ case PlSqlParser.FORWARD:
+ case PlSqlParser.FRAGMENT_NUMBER:
+ case PlSqlParser.FREELIST:
+ case PlSqlParser.FREELISTS:
+ case PlSqlParser.FREEPOOLS:
+ case PlSqlParser.FRESH:
+ case PlSqlParser.FROM_TZ:
+ case PlSqlParser.FULL:
+ case PlSqlParser.FULL_OUTER_JOIN_TO_OUTER:
+ case PlSqlParser.FUNCTION:
+ case PlSqlParser.FUNCTIONS:
+ case PlSqlParser.GATHER_OPTIMIZER_STATISTICS:
+ case PlSqlParser.GATHER_PLAN_STATISTICS:
+ case PlSqlParser.GBY_CONC_ROLLUP:
+ case PlSqlParser.GBY_PUSHDOWN:
+ case PlSqlParser.GENERATED:
+ case PlSqlParser.GET:
+ case PlSqlParser.GLOBAL:
+ case PlSqlParser.GLOBALLY:
+ case PlSqlParser.GLOBAL_NAME:
+ case PlSqlParser.GLOBAL_TOPIC_ENABLED:
+ case PlSqlParser.GROUP_BY:
+ case PlSqlParser.GROUP_ID:
+ case PlSqlParser.GROUPING:
+ case PlSqlParser.GROUPING_ID:
+ case PlSqlParser.GROUPS:
+ case PlSqlParser.GUARANTEED:
+ case PlSqlParser.GUARANTEE:
+ case PlSqlParser.GUARD:
+ case PlSqlParser.HASH_AJ:
+ case PlSqlParser.HASH:
+ case PlSqlParser.HASHKEYS:
+ case PlSqlParser.HASH_SJ:
+ case PlSqlParser.HEADER:
+ case PlSqlParser.HEAP:
+ case PlSqlParser.HELP:
+ case PlSqlParser.HEXTORAW:
+ case PlSqlParser.HEXTOREF:
+ case PlSqlParser.HIDDEN_KEYWORD:
+ case PlSqlParser.HIDE:
+ case PlSqlParser.HIERARCHY:
+ case PlSqlParser.HIGH:
+ case PlSqlParser.HINTSET_BEGIN:
+ case PlSqlParser.HINTSET_END:
+ case PlSqlParser.HOT:
+ case PlSqlParser.HOUR:
+ case PlSqlParser.HWM_BROKERED:
+ case PlSqlParser.HYBRID:
+ case PlSqlParser.IDENTIFIER:
+ case PlSqlParser.IDENTITY:
+ case PlSqlParser.IDGENERATORS:
+ case PlSqlParser.ID:
+ case PlSqlParser.IDLE_TIME:
+ case PlSqlParser.IF:
+ case PlSqlParser.IGNORE:
+ case PlSqlParser.IGNORE_OPTIM_EMBEDDED_HINTS:
+ case PlSqlParser.IGNORE_ROW_ON_DUPKEY_INDEX:
+ case PlSqlParser.IGNORE_WHERE_CLAUSE:
+ case PlSqlParser.ILM:
+ case PlSqlParser.IMMEDIATE:
+ case PlSqlParser.IMPACT:
+ case PlSqlParser.IMPORT:
+ case PlSqlParser.INACTIVE:
+ case PlSqlParser.INCLUDE:
+ case PlSqlParser.INCLUDE_VERSION:
+ case PlSqlParser.INCLUDING:
+ case PlSqlParser.INCREMENTAL:
+ case PlSqlParser.INCREMENT:
+ case PlSqlParser.INCR:
+ case PlSqlParser.INDENT:
+ case PlSqlParser.INDEX_ASC:
+ case PlSqlParser.INDEX_COMBINE:
+ case PlSqlParser.INDEX_DESC:
+ case PlSqlParser.INDEXED:
+ case PlSqlParser.INDEXES:
+ case PlSqlParser.INDEX_FFS:
+ case PlSqlParser.INDEX_FILTER:
+ case PlSqlParser.INDEXING:
+ case PlSqlParser.INDEX_JOIN:
+ case PlSqlParser.INDEX_ROWS:
+ case PlSqlParser.INDEX_RRS:
+ case PlSqlParser.INDEX_RS_ASC:
+ case PlSqlParser.INDEX_RS_DESC:
+ case PlSqlParser.INDEX_RS:
+ case PlSqlParser.INDEX_SCAN:
+ case PlSqlParser.INDEX_SKIP_SCAN:
+ case PlSqlParser.INDEX_SS_ASC:
+ case PlSqlParser.INDEX_SS_DESC:
+ case PlSqlParser.INDEX_SS:
+ case PlSqlParser.INDEX_STATS:
+ case PlSqlParser.INDEXTYPE:
+ case PlSqlParser.INDEXTYPES:
+ case PlSqlParser.INDICATOR:
+ case PlSqlParser.INDICES:
+ case PlSqlParser.INFINITE:
+ case PlSqlParser.INFORMATIONAL:
+ case PlSqlParser.INHERIT:
+ case PlSqlParser.INITCAP:
+ case PlSqlParser.INITIAL:
+ case PlSqlParser.INITIALIZED:
+ case PlSqlParser.INITIALLY:
+ case PlSqlParser.INITRANS:
+ case PlSqlParser.INLINE:
+ case PlSqlParser.INLINE_XMLTYPE_NT:
+ case PlSqlParser.INMEMORY:
+ case PlSqlParser.IN_MEMORY_METADATA:
+ case PlSqlParser.INMEMORY_PRUNING:
+ case PlSqlParser.INNER:
+ case PlSqlParser.INOUT:
+ case PlSqlParser.INPLACE:
+ case PlSqlParser.INSERTCHILDXMLAFTER:
+ case PlSqlParser.INSERTCHILDXMLBEFORE:
+ case PlSqlParser.INSERTCHILDXML:
+ case PlSqlParser.INSERTXMLAFTER:
+ case PlSqlParser.INSERTXMLBEFORE:
+ case PlSqlParser.INSTANCE:
+ case PlSqlParser.INSTANCES:
+ case PlSqlParser.INSTANTIABLE:
+ case PlSqlParser.INSTANTLY:
+ case PlSqlParser.INSTEAD:
+ case PlSqlParser.INSTR2:
+ case PlSqlParser.INSTR4:
+ case PlSqlParser.INSTRB:
+ case PlSqlParser.INSTRC:
+ case PlSqlParser.INSTR:
+ case PlSqlParser.INTEGER:
+ case PlSqlParser.INTERLEAVED:
+ case PlSqlParser.INTERMEDIATE:
+ case PlSqlParser.INTERNAL_CONVERT:
+ case PlSqlParser.INTERNAL_USE:
+ case PlSqlParser.INTERPRETED:
+ case PlSqlParser.INTERVAL:
+ case PlSqlParser.INT:
+ case PlSqlParser.INVALIDATE:
+ case PlSqlParser.INVISIBLE:
+ case PlSqlParser.IN_XQUERY:
+ case PlSqlParser.ISOLATION:
+ case PlSqlParser.ISOLATION_LEVEL:
+ case PlSqlParser.ITERATE:
+ case PlSqlParser.ITERATION_NUMBER:
+ case PlSqlParser.JAVA:
+ case PlSqlParser.JOB:
+ case PlSqlParser.JOIN:
+ case PlSqlParser.JSON_ARRAYAGG:
+ case PlSqlParser.JSON_ARRAY:
+ case PlSqlParser.JSON_EQUAL:
+ case PlSqlParser.JSON_EXISTS2:
+ case PlSqlParser.JSON_EXISTS:
+ case PlSqlParser.JSONGET:
+ case PlSqlParser.JSON:
+ case PlSqlParser.JSON_OBJECTAGG:
+ case PlSqlParser.JSON_OBJECT:
+ case PlSqlParser.JSONPARSE:
+ case PlSqlParser.JSON_QUERY:
+ case PlSqlParser.JSON_SERIALIZE:
+ case PlSqlParser.JSON_TABLE:
+ case PlSqlParser.JSON_TEXTCONTAINS2:
+ case PlSqlParser.JSON_TEXTCONTAINS:
+ case PlSqlParser.JSON_VALUE:
+ case PlSqlParser.KEEP_DUPLICATES:
+ case PlSqlParser.KEEP:
+ case PlSqlParser.KERBEROS:
+ case PlSqlParser.KEY:
+ case PlSqlParser.KEY_LENGTH:
+ case PlSqlParser.KEYSIZE:
+ case PlSqlParser.KEYS:
+ case PlSqlParser.KEYSTORE:
+ case PlSqlParser.KILL:
+ case PlSqlParser.LABEL:
+ case PlSqlParser.LANGUAGE:
+ case PlSqlParser.LAST_DAY:
+ case PlSqlParser.LAST:
+ case PlSqlParser.LAST_VALUE:
+ case PlSqlParser.LATERAL:
+ case PlSqlParser.LAX:
+ case PlSqlParser.LAYER:
+ case PlSqlParser.LDAP_REGISTRATION_ENABLED:
+ case PlSqlParser.LDAP_REGISTRATION:
+ case PlSqlParser.LDAP_REG_SYNC_INTERVAL:
+ case PlSqlParser.LEADING:
+ case PlSqlParser.LEFT:
+ case PlSqlParser.LENGTH2:
+ case PlSqlParser.LENGTH4:
+ case PlSqlParser.LENGTHB:
+ case PlSqlParser.LENGTHC:
+ case PlSqlParser.LENGTH:
+ case PlSqlParser.LESS:
+ case PlSqlParser.LEVEL:
+ case PlSqlParser.LEVELS:
+ case PlSqlParser.LIBRARY:
+ case PlSqlParser.LIFECYCLE:
+ case PlSqlParser.LIFE:
+ case PlSqlParser.LIFETIME:
+ case PlSqlParser.LIKE2:
+ case PlSqlParser.LIKE4:
+ case PlSqlParser.LIKEC:
+ case PlSqlParser.LIKE_EXPAND:
+ case PlSqlParser.LIMIT:
+ case PlSqlParser.LINEAR:
+ case PlSqlParser.LINK:
+ case PlSqlParser.LIST:
+ case PlSqlParser.LN:
+ case PlSqlParser.LNNVL:
+ case PlSqlParser.LOAD:
+ case PlSqlParser.LOB:
+ case PlSqlParser.LOBNVL:
+ case PlSqlParser.LOBS:
+ case PlSqlParser.LOCAL_INDEXES:
+ case PlSqlParser.LOCAL:
+ case PlSqlParser.LOCALTIME:
+ case PlSqlParser.LOCALTIMESTAMP:
+ case PlSqlParser.LOCATION:
+ case PlSqlParser.LOCATOR:
+ case PlSqlParser.LOCKED:
+ case PlSqlParser.LOCKING:
+ case PlSqlParser.LOGFILE:
+ case PlSqlParser.LOGFILES:
+ case PlSqlParser.LOGGING:
+ case PlSqlParser.LOGICAL:
+ case PlSqlParser.LOGICAL_READS_PER_CALL:
+ case PlSqlParser.LOGICAL_READS_PER_SESSION:
+ case PlSqlParser.LOG:
+ case PlSqlParser.LOGMINING:
+ case PlSqlParser.LOGOFF:
+ case PlSqlParser.LOGON:
+ case PlSqlParser.LOG_READ_ONLY_VIOLATIONS:
+ case PlSqlParser.LONG:
+ case PlSqlParser.LOOP:
+ case PlSqlParser.LOWER:
+ case PlSqlParser.LOW:
+ case PlSqlParser.LPAD:
+ case PlSqlParser.LTRIM:
+ case PlSqlParser.MAIN:
+ case PlSqlParser.MAKE_REF:
+ case PlSqlParser.MANAGED:
+ case PlSqlParser.MANAGE:
+ case PlSqlParser.MANAGEMENT:
+ case PlSqlParser.MANAGER:
+ case PlSqlParser.MANUAL:
+ case PlSqlParser.MAP:
+ case PlSqlParser.MAPPING:
+ case PlSqlParser.MASTER:
+ case PlSqlParser.MATCHED:
+ case PlSqlParser.MATCHES:
+ case PlSqlParser.MATCH:
+ case PlSqlParser.MATCH_NUMBER:
+ case PlSqlParser.MATCH_RECOGNIZE:
+ case PlSqlParser.MATERIALIZED:
+ case PlSqlParser.MATERIALIZE:
+ case PlSqlParser.MAXARCHLOGS:
+ case PlSqlParser.MAXDATAFILES:
+ case PlSqlParser.MAXEXTENTS:
+ case PlSqlParser.MAXIMIZE:
+ case PlSqlParser.MAXINSTANCES:
+ case PlSqlParser.MAXLOGFILES:
+ case PlSqlParser.MAXLOGHISTORY:
+ case PlSqlParser.MAXLOGMEMBERS:
+ case PlSqlParser.MAX_SHARED_TEMP_SIZE:
+ case PlSqlParser.MAXSIZE:
+ case PlSqlParser.MAXTRANS:
+ case PlSqlParser.MAXVALUE:
+ case PlSqlParser.MEASURE:
+ case PlSqlParser.MEASURES:
+ case PlSqlParser.MEDIUM:
+ case PlSqlParser.MEMBER:
+ case PlSqlParser.MEMCOMPRESS:
+ case PlSqlParser.MEMORY:
+ case PlSqlParser.MERGEACTIONS:
+ case PlSqlParser.MERGE_AJ:
+ case PlSqlParser.MERGE_CONST_ON:
+ case PlSqlParser.MERGE:
+ case PlSqlParser.MERGE_SJ:
+ case PlSqlParser.METADATA:
+ case PlSqlParser.METHOD:
+ case PlSqlParser.MIGRATE:
+ case PlSqlParser.MIGRATION:
+ case PlSqlParser.MINEXTENTS:
+ case PlSqlParser.MINIMIZE:
+ case PlSqlParser.MINIMUM:
+ case PlSqlParser.MINING:
+ case PlSqlParser.MINUS_NULL:
+ case PlSqlParser.MINUTE:
+ case PlSqlParser.MINVALUE:
+ case PlSqlParser.MIRRORCOLD:
+ case PlSqlParser.MIRRORHOT:
+ case PlSqlParser.MIRROR:
+ case PlSqlParser.MLSLABEL:
+ case PlSqlParser.MODEL_COMPILE_SUBQUERY:
+ case PlSqlParser.MODEL_DONTVERIFY_UNIQUENESS:
+ case PlSqlParser.MODEL_DYNAMIC_SUBQUERY:
+ case PlSqlParser.MODEL_MIN_ANALYSIS:
+ case PlSqlParser.MODEL:
+ case PlSqlParser.MODEL_NB:
+ case PlSqlParser.MODEL_NO_ANALYSIS:
+ case PlSqlParser.MODEL_PBY:
+ case PlSqlParser.MODEL_PUSH_REF:
+ case PlSqlParser.MODEL_SV:
+ case PlSqlParser.MODIFICATION:
+ case PlSqlParser.MODIFY_COLUMN_TYPE:
+ case PlSqlParser.MODIFY:
+ case PlSqlParser.MOD:
+ case PlSqlParser.MODULE:
+ case PlSqlParser.MONITORING:
+ case PlSqlParser.MONITOR:
+ case PlSqlParser.MONTH:
+ case PlSqlParser.MONTHS_BETWEEN:
+ case PlSqlParser.MONTHS:
+ case PlSqlParser.MOUNT:
+ case PlSqlParser.MOUNTPATH:
+ case PlSqlParser.MOVEMENT:
+ case PlSqlParser.MOVE:
+ case PlSqlParser.MULTIDIMENSIONAL:
+ case PlSqlParser.MULTISET:
+ case PlSqlParser.MV_MERGE:
+ case PlSqlParser.NAMED:
+ case PlSqlParser.NAME:
+ case PlSqlParser.NAMESPACE:
+ case PlSqlParser.NAN:
+ case PlSqlParser.NANVL:
+ case PlSqlParser.NATIONAL:
+ case PlSqlParser.NATIVE_FULL_OUTER_JOIN:
+ case PlSqlParser.NATIVE:
+ case PlSqlParser.NATURAL:
+ case PlSqlParser.NAV:
+ case PlSqlParser.NCHAR_CS:
+ case PlSqlParser.NCHAR:
+ case PlSqlParser.NCHR:
+ case PlSqlParser.NCLOB:
+ case PlSqlParser.NEEDED:
+ case PlSqlParser.NEG:
+ case PlSqlParser.NESTED:
+ case PlSqlParser.NESTED_TABLE_FAST_INSERT:
+ case PlSqlParser.NESTED_TABLE_GET_REFS:
+ case PlSqlParser.NESTED_TABLE_ID:
+ case PlSqlParser.NESTED_TABLE_SET_REFS:
+ case PlSqlParser.NESTED_TABLE_SET_SETID:
+ case PlSqlParser.NETWORK:
+ case PlSqlParser.NEVER:
+ case PlSqlParser.NEW:
+ case PlSqlParser.NEW_TIME:
+ case PlSqlParser.NEXT_DAY:
+ case PlSqlParser.NEXT:
+ case PlSqlParser.NL_AJ:
+ case PlSqlParser.NLJ_BATCHING:
+ case PlSqlParser.NLJ_INDEX_FILTER:
+ case PlSqlParser.NLJ_INDEX_SCAN:
+ case PlSqlParser.NLJ_PREFETCH:
+ case PlSqlParser.NLS_CALENDAR:
+ case PlSqlParser.NLS_CHARACTERSET:
+ case PlSqlParser.NLS_CHARSET_DECL_LEN:
+ case PlSqlParser.NLS_CHARSET_ID:
+ case PlSqlParser.NLS_CHARSET_NAME:
+ case PlSqlParser.NLS_COMP:
+ case PlSqlParser.NLS_CURRENCY:
+ case PlSqlParser.NLS_DATE_FORMAT:
+ case PlSqlParser.NLS_DATE_LANGUAGE:
+ case PlSqlParser.NLS_INITCAP:
+ case PlSqlParser.NLS_ISO_CURRENCY:
+ case PlSqlParser.NL_SJ:
+ case PlSqlParser.NLS_LANG:
+ case PlSqlParser.NLS_LANGUAGE:
+ case PlSqlParser.NLS_LENGTH_SEMANTICS:
+ case PlSqlParser.NLS_LOWER:
+ case PlSqlParser.NLS_NCHAR_CONV_EXCP:
+ case PlSqlParser.NLS_NUMERIC_CHARACTERS:
+ case PlSqlParser.NLS_SORT:
+ case PlSqlParser.NLSSORT:
+ case PlSqlParser.NLS_SPECIAL_CHARS:
+ case PlSqlParser.NLS_TERRITORY:
+ case PlSqlParser.NLS_UPPER:
+ case PlSqlParser.NO_ACCESS:
+ case PlSqlParser.NO_ADAPTIVE_PLAN:
+ case PlSqlParser.NO_ANSI_REARCH:
+ case PlSqlParser.NOAPPEND:
+ case PlSqlParser.NOARCHIVELOG:
+ case PlSqlParser.NOAUDIT:
+ case PlSqlParser.NO_AUTO_REOPTIMIZE:
+ case PlSqlParser.NO_BASETABLE_MULTIMV_REWRITE:
+ case PlSqlParser.NO_BATCH_TABLE_ACCESS_BY_ROWID:
+ case PlSqlParser.NO_BIND_AWARE:
+ case PlSqlParser.NO_BUFFER:
+ case PlSqlParser.NOCACHE:
+ case PlSqlParser.NO_CARTESIAN:
+ case PlSqlParser.NO_CHECK_ACL_REWRITE:
+ case PlSqlParser.NO_CLUSTER_BY_ROWID:
+ case PlSqlParser.NO_CLUSTERING:
+ case PlSqlParser.NO_COALESCE_SQ:
+ case PlSqlParser.NO_COMMON_DATA:
+ case PlSqlParser.NO_CONNECT_BY_CB_WHR_ONLY:
+ case PlSqlParser.NO_CONNECT_BY_COMBINE_SW:
+ case PlSqlParser.NO_CONNECT_BY_COST_BASED:
+ case PlSqlParser.NO_CONNECT_BY_ELIM_DUPS:
+ case PlSqlParser.NO_CONNECT_BY_FILTERING:
+ case PlSqlParser.NOCOPY:
+ case PlSqlParser.NO_COST_XML_QUERY_REWRITE:
+ case PlSqlParser.NO_CPU_COSTING:
+ case PlSqlParser.NOCPU_COSTING:
+ case PlSqlParser.NOCYCLE:
+ case PlSqlParser.NO_DATA_SECURITY_REWRITE:
+ case PlSqlParser.NO_DECORRELATE:
+ case PlSqlParser.NODELAY:
+ case PlSqlParser.NO_DOMAIN_INDEX_FILTER:
+ case PlSqlParser.NO_DST_UPGRADE_INSERT_CONV:
+ case PlSqlParser.NO_ELIM_GROUPBY:
+ case PlSqlParser.NO_ELIMINATE_JOIN:
+ case PlSqlParser.NO_ELIMINATE_OBY:
+ case PlSqlParser.NO_ELIMINATE_OUTER_JOIN:
+ case PlSqlParser.NOENTITYESCAPING:
+ case PlSqlParser.NO_EXPAND_GSET_TO_UNION:
+ case PlSqlParser.NO_EXPAND:
+ case PlSqlParser.NO_EXPAND_TABLE:
+ case PlSqlParser.NO_FACT:
+ case PlSqlParser.NO_FACTORIZE_JOIN:
+ case PlSqlParser.NO_FILTERING:
+ case PlSqlParser.NOFORCE:
+ case PlSqlParser.NO_FULL_OUTER_JOIN_TO_OUTER:
+ case PlSqlParser.NO_GATHER_OPTIMIZER_STATISTICS:
+ case PlSqlParser.NO_GBY_PUSHDOWN:
+ case PlSqlParser.NOGUARANTEE:
+ case PlSqlParser.NO_INDEX_FFS:
+ case PlSqlParser.NO_INDEX:
+ case PlSqlParser.NO_INDEX_SS:
+ case PlSqlParser.NO_INMEMORY:
+ case PlSqlParser.NO_INMEMORY_PRUNING:
+ case PlSqlParser.NOKEEP:
+ case PlSqlParser.NO_LOAD:
+ case PlSqlParser.NOLOCAL:
+ case PlSqlParser.NOLOGGING:
+ case PlSqlParser.NOMAPPING:
+ case PlSqlParser.NOMAXVALUE:
+ case PlSqlParser.NO_MERGE:
+ case PlSqlParser.NOMINIMIZE:
+ case PlSqlParser.NOMINVALUE:
+ case PlSqlParser.NO_MODEL_PUSH_REF:
+ case PlSqlParser.NO_MONITORING:
+ case PlSqlParser.NOMONITORING:
+ case PlSqlParser.NO_MONITOR:
+ case PlSqlParser.NO_MULTIMV_REWRITE:
+ case PlSqlParser.NO_NATIVE_FULL_OUTER_JOIN:
+ case PlSqlParser.NONBLOCKING:
+ case PlSqlParser.NONEDITIONABLE:
+ case PlSqlParser.NONE:
+ case PlSqlParser.NO_NLJ_BATCHING:
+ case PlSqlParser.NO_NLJ_PREFETCH:
+ case PlSqlParser.NO:
+ case PlSqlParser.NONSCHEMA:
+ case PlSqlParser.NO_OBJECT_LINK:
+ case PlSqlParser.NOORDER:
+ case PlSqlParser.NO_ORDER_ROLLUPS:
+ case PlSqlParser.NO_OUTER_JOIN_TO_ANTI:
+ case PlSqlParser.NO_OUTER_JOIN_TO_INNER:
+ case PlSqlParser.NOOVERRIDE:
+ case PlSqlParser.NO_PARALLEL_INDEX:
+ case PlSqlParser.NOPARALLEL_INDEX:
+ case PlSqlParser.NO_PARALLEL:
+ case PlSqlParser.NOPARALLEL:
+ case PlSqlParser.NO_PARTIAL_COMMIT:
+ case PlSqlParser.NO_PARTIAL_JOIN:
+ case PlSqlParser.NO_PARTIAL_ROLLUP_PUSHDOWN:
+ case PlSqlParser.NOPARTITION:
+ case PlSqlParser.NO_PLACE_DISTINCT:
+ case PlSqlParser.NO_PLACE_GROUP_BY:
+ case PlSqlParser.NO_PQ_CONCURRENT_UNION:
+ case PlSqlParser.NO_PQ_MAP:
+ case PlSqlParser.NO_PQ_REPLICATE:
+ case PlSqlParser.NO_PQ_SKEW:
+ case PlSqlParser.NO_PRUNE_GSETS:
+ case PlSqlParser.NO_PULL_PRED:
+ case PlSqlParser.NO_PUSH_PRED:
+ case PlSqlParser.NO_PUSH_SUBQ:
+ case PlSqlParser.NO_PX_FAULT_TOLERANCE:
+ case PlSqlParser.NO_PX_JOIN_FILTER:
+ case PlSqlParser.NO_QKN_BUFF:
+ case PlSqlParser.NO_QUERY_TRANSFORMATION:
+ case PlSqlParser.NO_REF_CASCADE:
+ case PlSqlParser.NORELOCATE:
+ case PlSqlParser.NORELY:
+ case PlSqlParser.NOREPAIR:
+ case PlSqlParser.NOREPLAY:
+ case PlSqlParser.NORESETLOGS:
+ case PlSqlParser.NO_RESULT_CACHE:
+ case PlSqlParser.NOREVERSE:
+ case PlSqlParser.NO_REWRITE:
+ case PlSqlParser.NOREWRITE:
+ case PlSqlParser.NORMAL:
+ case PlSqlParser.NO_ROOT_SW_FOR_LOCAL:
+ case PlSqlParser.NOROWDEPENDENCIES:
+ case PlSqlParser.NOSCHEMACHECK:
+ case PlSqlParser.NOSEGMENT:
+ case PlSqlParser.NO_SEMIJOIN:
+ case PlSqlParser.NO_SEMI_TO_INNER:
+ case PlSqlParser.NO_SET_TO_JOIN:
+ case PlSqlParser.NOSORT:
+ case PlSqlParser.NO_SQL_TRANSLATION:
+ case PlSqlParser.NO_SQL_TUNE:
+ case PlSqlParser.NO_STAR_TRANSFORMATION:
+ case PlSqlParser.NO_STATEMENT_QUEUING:
+ case PlSqlParser.NO_STATS_GSETS:
+ case PlSqlParser.NOSTRICT:
+ case PlSqlParser.NO_SUBQUERY_PRUNING:
+ case PlSqlParser.NO_SUBSTRB_PAD:
+ case PlSqlParser.NO_SWAP_JOIN_INPUTS:
+ case PlSqlParser.NOSWITCH:
+ case PlSqlParser.NO_TABLE_LOOKUP_BY_NL:
+ case PlSqlParser.NO_TEMP_TABLE:
+ case PlSqlParser.NOTHING:
+ case PlSqlParser.NOTIFICATION:
+ case PlSqlParser.NO_TRANSFORM_DISTINCT_AGG:
+ case PlSqlParser.NO_UNNEST:
+ case PlSqlParser.NO_USE_CUBE:
+ case PlSqlParser.NO_USE_HASH_AGGREGATION:
+ case PlSqlParser.NO_USE_HASH_GBY_FOR_PUSHDOWN:
+ case PlSqlParser.NO_USE_HASH:
+ case PlSqlParser.NO_USE_INVISIBLE_INDEXES:
+ case PlSqlParser.NO_USE_MERGE:
+ case PlSqlParser.NO_USE_NL:
+ case PlSqlParser.NO_USE_VECTOR_AGGREGATION:
+ case PlSqlParser.NOVALIDATE:
+ case PlSqlParser.NO_VECTOR_TRANSFORM_DIMS:
+ case PlSqlParser.NO_VECTOR_TRANSFORM_FACT:
+ case PlSqlParser.NO_VECTOR_TRANSFORM:
+ case PlSqlParser.NO_XDB_FASTPATH_INSERT:
+ case PlSqlParser.NO_XML_DML_REWRITE:
+ case PlSqlParser.NO_XMLINDEX_REWRITE_IN_SELECT:
+ case PlSqlParser.NO_XMLINDEX_REWRITE:
+ case PlSqlParser.NO_XML_QUERY_REWRITE:
+ case PlSqlParser.NO_ZONEMAP:
+ case PlSqlParser.NTH_VALUE:
+ case PlSqlParser.NULLIF:
+ case PlSqlParser.NULLS:
+ case PlSqlParser.NUMBER:
+ case PlSqlParser.NUMERIC:
+ case PlSqlParser.NUM_INDEX_KEYS:
+ case PlSqlParser.NUMTODSINTERVAL:
+ case PlSqlParser.NUMTOYMINTERVAL:
+ case PlSqlParser.NVARCHAR2:
+ case PlSqlParser.NVL2:
+ case PlSqlParser.OBJECT2XML:
+ case PlSqlParser.OBJECT:
+ case PlSqlParser.OBJ_ID:
+ case PlSqlParser.OBJNO:
+ case PlSqlParser.OBJNO_REUSE:
+ case PlSqlParser.OCCURENCES:
+ case PlSqlParser.OFFLINE:
+ case PlSqlParser.OFF:
+ case PlSqlParser.OFFSET:
+ case PlSqlParser.OIDINDEX:
+ case PlSqlParser.OID:
+ case PlSqlParser.OLAP:
+ case PlSqlParser.OLD:
+ case PlSqlParser.OLD_PUSH_PRED:
+ case PlSqlParser.OLS:
+ case PlSqlParser.OLTP:
+ case PlSqlParser.OMIT:
+ case PlSqlParser.ONE:
+ case PlSqlParser.ONLINE:
+ case PlSqlParser.ONLY:
+ case PlSqlParser.OPAQUE:
+ case PlSqlParser.OPAQUE_TRANSFORM:
+ case PlSqlParser.OPAQUE_XCANONICAL:
+ case PlSqlParser.OPCODE:
+ case PlSqlParser.OPEN:
+ case PlSqlParser.OPERATIONS:
+ case PlSqlParser.OPERATOR:
+ case PlSqlParser.OPT_ESTIMATE:
+ case PlSqlParser.OPTIMAL:
+ case PlSqlParser.OPTIMIZE:
+ case PlSqlParser.OPTIMIZER_FEATURES_ENABLE:
+ case PlSqlParser.OPTIMIZER_GOAL:
+ case PlSqlParser.OPT_PARAM:
+ case PlSqlParser.ORA_BRANCH:
+ case PlSqlParser.ORA_CHECK_ACL:
+ case PlSqlParser.ORA_CHECK_PRIVILEGE:
+ case PlSqlParser.ORA_CLUSTERING:
+ case PlSqlParser.ORADATA:
+ case PlSqlParser.ORADEBUG:
+ case PlSqlParser.ORA_DST_AFFECTED:
+ case PlSqlParser.ORA_DST_CONVERT:
+ case PlSqlParser.ORA_DST_ERROR:
+ case PlSqlParser.ORA_GET_ACLIDS:
+ case PlSqlParser.ORA_GET_PRIVILEGES:
+ case PlSqlParser.ORA_HASH:
+ case PlSqlParser.ORA_INVOKING_USERID:
+ case PlSqlParser.ORA_INVOKING_USER:
+ case PlSqlParser.ORA_INVOKING_XS_USER_GUID:
+ case PlSqlParser.ORA_INVOKING_XS_USER:
+ case PlSqlParser.ORA_RAWCOMPARE:
+ case PlSqlParser.ORA_RAWCONCAT:
+ case PlSqlParser.ORA_ROWSCN:
+ case PlSqlParser.ORA_ROWSCN_RAW:
+ case PlSqlParser.ORA_ROWVERSION:
+ case PlSqlParser.ORA_TABVERSION:
+ case PlSqlParser.ORA_WRITE_TIME:
+ case PlSqlParser.ORDERED:
+ case PlSqlParser.ORDERED_PREDICATES:
+ case PlSqlParser.ORDINALITY:
+ case PlSqlParser.OR_EXPAND:
+ case PlSqlParser.ORGANIZATION:
+ case PlSqlParser.OR_PREDICATES:
+ case PlSqlParser.OSERROR:
+ case PlSqlParser.OTHER:
+ case PlSqlParser.OUTER_JOIN_TO_ANTI:
+ case PlSqlParser.OUTER_JOIN_TO_INNER:
+ case PlSqlParser.OUTER:
+ case PlSqlParser.OUTLINE_LEAF:
+ case PlSqlParser.OUTLINE:
+ case PlSqlParser.OUT_OF_LINE:
+ case PlSqlParser.OUT:
+ case PlSqlParser.OVERFLOW_NOMOVE:
+ case PlSqlParser.OVERFLOW:
+ case PlSqlParser.OVERLAPS:
+ case PlSqlParser.OVER:
+ case PlSqlParser.OVERRIDING:
+ case PlSqlParser.OWNER:
+ case PlSqlParser.OWNERSHIP:
+ case PlSqlParser.OWN:
+ case PlSqlParser.PACKAGE:
+ case PlSqlParser.PACKAGES:
+ case PlSqlParser.PARALLEL_ENABLE:
+ case PlSqlParser.PARALLEL_INDEX:
+ case PlSqlParser.PARALLEL:
+ case PlSqlParser.PARAMETERS:
+ case PlSqlParser.PARAM:
+ case PlSqlParser.PARENT:
+ case PlSqlParser.PARITY:
+ case PlSqlParser.PARTIAL_JOIN:
+ case PlSqlParser.PARTIALLY:
+ case PlSqlParser.PARTIAL:
+ case PlSqlParser.PARTIAL_ROLLUP_PUSHDOWN:
+ case PlSqlParser.PARTITION_HASH:
+ case PlSqlParser.PARTITION_LIST:
+ case PlSqlParser.PARTITION:
+ case PlSqlParser.PARTITION_RANGE:
+ case PlSqlParser.PARTITIONS:
+ case PlSqlParser.PARTNUMINST:
+ case PlSqlParser.PASSING:
+ case PlSqlParser.PASSWORD_GRACE_TIME:
+ case PlSqlParser.PASSWORD_LIFE_TIME:
+ case PlSqlParser.PASSWORD_LOCK_TIME:
+ case PlSqlParser.PASSWORD:
+ case PlSqlParser.PASSWORD_REUSE_MAX:
+ case PlSqlParser.PASSWORD_REUSE_TIME:
+ case PlSqlParser.PASSWORD_VERIFY_FUNCTION:
+ case PlSqlParser.PAST:
+ case PlSqlParser.PATCH:
+ case PlSqlParser.PATH:
+ case PlSqlParser.PATH_PREFIX:
+ case PlSqlParser.PATHS:
+ case PlSqlParser.PATTERN:
+ case PlSqlParser.PBL_HS_BEGIN:
+ case PlSqlParser.PBL_HS_END:
+ case PlSqlParser.PCTINCREASE:
+ case PlSqlParser.PCTTHRESHOLD:
+ case PlSqlParser.PCTUSED:
+ case PlSqlParser.PCTVERSION:
+ case PlSqlParser.PENDING:
+ case PlSqlParser.PERCENT_KEYWORD:
+ case PlSqlParser.PERCENT_RANKM:
+ case PlSqlParser.PERFORMANCE:
+ case PlSqlParser.PERIOD_KEYWORD:
+ case PlSqlParser.PERMANENT:
+ case PlSqlParser.PERMISSION:
+ case PlSqlParser.PERMUTE:
+ case PlSqlParser.PER:
+ case PlSqlParser.PFILE:
+ case PlSqlParser.PHYSICAL:
+ case PlSqlParser.PIKEY:
+ case PlSqlParser.PIPELINED:
+ case PlSqlParser.PIV_GB:
+ case PlSqlParser.PIVOT:
+ case PlSqlParser.PIV_SSF:
+ case PlSqlParser.PLACE_DISTINCT:
+ case PlSqlParser.PLACE_GROUP_BY:
+ case PlSqlParser.PLAN:
+ case PlSqlParser.PLSCOPE_SETTINGS:
+ case PlSqlParser.PLS_INTEGER:
+ case PlSqlParser.PLSQL_CCFLAGS:
+ case PlSqlParser.PLSQL_CODE_TYPE:
+ case PlSqlParser.PLSQL_DEBUG:
+ case PlSqlParser.PLSQL_OPTIMIZE_LEVEL:
+ case PlSqlParser.PLSQL_WARNINGS:
+ case PlSqlParser.PLUGGABLE:
+ case PlSqlParser.POINT:
+ case PlSqlParser.POLICY:
+ case PlSqlParser.POOL_16K:
+ case PlSqlParser.POOL_2K:
+ case PlSqlParser.POOL_32K:
+ case PlSqlParser.POOL_4K:
+ case PlSqlParser.POOL_8K:
+ case PlSqlParser.POSITIVEN:
+ case PlSqlParser.POSITIVE:
+ case PlSqlParser.POST_TRANSACTION:
+ case PlSqlParser.POWERMULTISET_BY_CARDINALITY:
+ case PlSqlParser.POWERMULTISET:
+ case PlSqlParser.POWER:
+ case PlSqlParser.PQ_CONCURRENT_UNION:
+ case PlSqlParser.PQ_DISTRIBUTE:
+ case PlSqlParser.PQ_DISTRIBUTE_WINDOW:
+ case PlSqlParser.PQ_FILTER:
+ case PlSqlParser.PQ_MAP:
+ case PlSqlParser.PQ_NOMAP:
+ case PlSqlParser.PQ_REPLICATE:
+ case PlSqlParser.PQ_SKEW:
+ case PlSqlParser.PRAGMA:
+ case PlSqlParser.PREBUILT:
+ case PlSqlParser.PRECEDES:
+ case PlSqlParser.PRECEDING:
+ case PlSqlParser.PRECISION:
+ case PlSqlParser.PRECOMPUTE_SUBQUERY:
+ case PlSqlParser.PREDICATE_REORDERS:
+ case PlSqlParser.PRELOAD:
+ case PlSqlParser.PREPARE:
+ case PlSqlParser.PRESENTNNV:
+ case PlSqlParser.PRESENT:
+ case PlSqlParser.PRESENTV:
+ case PlSqlParser.PRESERVE_OID:
+ case PlSqlParser.PRESERVE:
+ case PlSqlParser.PRETTY:
+ case PlSqlParser.PREVIOUS:
+ case PlSqlParser.PREV:
+ case PlSqlParser.PRIMARY:
+ case PlSqlParser.PRINTBLOBTOCLOB:
+ case PlSqlParser.PRIORITY:
+ case PlSqlParser.PRIVATE:
+ case PlSqlParser.PRIVATE_SGA:
+ case PlSqlParser.PRIVILEGED:
+ case PlSqlParser.PRIVILEGE:
+ case PlSqlParser.PRIVILEGES:
+ case PlSqlParser.PROCEDURAL:
+ case PlSqlParser.PROCEDURE:
+ case PlSqlParser.PROCESS:
+ case PlSqlParser.PROFILE:
+ case PlSqlParser.PROGRAM:
+ case PlSqlParser.PROJECT:
+ case PlSqlParser.PROPAGATE:
+ case PlSqlParser.PROTECTED:
+ case PlSqlParser.PROTECTION:
+ case PlSqlParser.PROXY:
+ case PlSqlParser.PRUNING:
+ case PlSqlParser.PULL_PRED:
+ case PlSqlParser.PURGE:
+ case PlSqlParser.PUSH_PRED:
+ case PlSqlParser.PUSH_SUBQ:
+ case PlSqlParser.PX_FAULT_TOLERANCE:
+ case PlSqlParser.PX_GRANULE:
+ case PlSqlParser.PX_JOIN_FILTER:
+ case PlSqlParser.QB_NAME:
+ case PlSqlParser.QUERY_BLOCK:
+ case PlSqlParser.QUERY:
+ case PlSqlParser.QUEUE_CURR:
+ case PlSqlParser.QUEUE:
+ case PlSqlParser.QUEUE_ROWP:
+ case PlSqlParser.QUIESCE:
+ case PlSqlParser.QUORUM:
+ case PlSqlParser.QUOTA:
+ case PlSqlParser.RAISE:
+ case PlSqlParser.RANDOM_LOCAL:
+ case PlSqlParser.RANDOM:
+ case PlSqlParser.RANGE:
+ case PlSqlParser.RANKM:
+ case PlSqlParser.RAPIDLY:
+ case PlSqlParser.RAW:
+ case PlSqlParser.RAWTOHEX:
+ case PlSqlParser.RAWTONHEX:
+ case PlSqlParser.RBA:
+ case PlSqlParser.RBO_OUTLINE:
+ case PlSqlParser.RDBA:
+ case PlSqlParser.READ:
+ case PlSqlParser.READS:
+ case PlSqlParser.REALM:
+ case PlSqlParser.REAL:
+ case PlSqlParser.REBALANCE:
+ case PlSqlParser.REBUILD:
+ case PlSqlParser.RECORD:
+ case PlSqlParser.RECORDS_PER_BLOCK:
+ case PlSqlParser.RECOVERABLE:
+ case PlSqlParser.RECOVER:
+ case PlSqlParser.RECOVERY:
+ case PlSqlParser.RECYCLEBIN:
+ case PlSqlParser.RECYCLE:
+ case PlSqlParser.REDACTION:
+ case PlSqlParser.REDEFINE:
+ case PlSqlParser.REDO:
+ case PlSqlParser.REDUCED:
+ case PlSqlParser.REDUNDANCY:
+ case PlSqlParser.REF_CASCADE_CURSOR:
+ case PlSqlParser.REFERENCED:
+ case PlSqlParser.REFERENCE:
+ case PlSqlParser.REFERENCES:
+ case PlSqlParser.REFERENCING:
+ case PlSqlParser.REF:
+ case PlSqlParser.REFRESH:
+ case PlSqlParser.REFTOHEX:
+ case PlSqlParser.REGEXP_COUNT:
+ case PlSqlParser.REGEXP_INSTR:
+ case PlSqlParser.REGEXP_LIKE:
+ case PlSqlParser.REGEXP_REPLACE:
+ case PlSqlParser.REGEXP_SUBSTR:
+ case PlSqlParser.REGISTER:
+ case PlSqlParser.REGR_AVGX:
+ case PlSqlParser.REGR_AVGY:
+ case PlSqlParser.REGR_COUNT:
+ case PlSqlParser.REGR_INTERCEPT:
+ case PlSqlParser.REGR_R2:
+ case PlSqlParser.REGR_SLOPE:
+ case PlSqlParser.REGR_SXX:
+ case PlSqlParser.REGR_SXY:
+ case PlSqlParser.REGR_SYY:
+ case PlSqlParser.REGULAR:
+ case PlSqlParser.REJECT:
+ case PlSqlParser.REKEY:
+ case PlSqlParser.RELATIONAL:
+ case PlSqlParser.RELOCATE:
+ case PlSqlParser.RELY:
+ case PlSqlParser.REMAINDER:
+ case PlSqlParser.REMOTE_MAPPED:
+ case PlSqlParser.REMOVE:
+ case PlSqlParser.RENAME:
+ case PlSqlParser.REPAIR:
+ case PlSqlParser.REPEAT:
+ case PlSqlParser.REPLACE:
+ case PlSqlParser.REPLICATION:
+ case PlSqlParser.REQUIRED:
+ case PlSqlParser.RESETLOGS:
+ case PlSqlParser.RESET:
+ case PlSqlParser.RESIZE:
+ case PlSqlParser.RESOLVE:
+ case PlSqlParser.RESOLVER:
+ case PlSqlParser.RESPECT:
+ case PlSqlParser.RESTART:
+ case PlSqlParser.RESTORE_AS_INTERVALS:
+ case PlSqlParser.RESTORE:
+ case PlSqlParser.RESTRICT_ALL_REF_CONS:
+ case PlSqlParser.RESTRICTED:
+ case PlSqlParser.RESTRICT_REFERENCES:
+ case PlSqlParser.RESTRICT:
+ case PlSqlParser.RESULT_CACHE:
+ case PlSqlParser.RESULT:
+ case PlSqlParser.RESUMABLE:
+ case PlSqlParser.RESUME:
+ case PlSqlParser.RETENTION:
+ case PlSqlParser.RETRY_ON_ROW_CHANGE:
+ case PlSqlParser.RETURNING:
+ case PlSqlParser.RETURN:
+ case PlSqlParser.REUSE:
+ case PlSqlParser.REVERSE:
+ case PlSqlParser.REWRITE_OR_ERROR:
+ case PlSqlParser.REWRITE:
+ case PlSqlParser.RIGHT:
+ case PlSqlParser.ROLE:
+ case PlSqlParser.ROLESET:
+ case PlSqlParser.ROLES:
+ case PlSqlParser.ROLLBACK:
+ case PlSqlParser.ROLLING:
+ case PlSqlParser.ROLLUP:
+ case PlSqlParser.ROWDEPENDENCIES:
+ case PlSqlParser.ROWID_MAPPING_TABLE:
+ case PlSqlParser.ROWID:
+ case PlSqlParser.ROWIDTOCHAR:
+ case PlSqlParser.ROWIDTONCHAR:
+ case PlSqlParser.ROW_LENGTH:
+ case PlSqlParser.ROWNUM:
+ case PlSqlParser.ROW:
+ case PlSqlParser.ROWS:
+ case PlSqlParser.RPAD:
+ case PlSqlParser.RTRIM:
+ case PlSqlParser.RULE:
+ case PlSqlParser.RULES:
+ case PlSqlParser.RUNNING:
+ case PlSqlParser.SALT:
+ case PlSqlParser.SAMPLE:
+ case PlSqlParser.SAVE_AS_INTERVALS:
+ case PlSqlParser.SAVEPOINT:
+ case PlSqlParser.SAVE:
+ case PlSqlParser.SB4:
+ case PlSqlParser.SCALE_ROWS:
+ case PlSqlParser.SCALE:
+ case PlSqlParser.SCAN_INSTANCES:
+ case PlSqlParser.SCAN:
+ case PlSqlParser.SCHEDULER:
+ case PlSqlParser.SCHEMACHECK:
+ case PlSqlParser.SCHEMA:
+ case PlSqlParser.SCN_ASCENDING:
+ case PlSqlParser.SCN:
+ case PlSqlParser.SCOPE:
+ case PlSqlParser.SCRUB:
+ case PlSqlParser.SD_ALL:
+ case PlSqlParser.SD_INHIBIT:
+ case PlSqlParser.SDO_GEOM_MBR:
+ case PlSqlParser.SD_SHOW:
+ case PlSqlParser.SEARCH:
+ case PlSqlParser.SECOND:
+ case PlSqlParser.SECRET:
+ case PlSqlParser.SECUREFILE_DBA:
+ case PlSqlParser.SECUREFILE:
+ case PlSqlParser.SECURITY:
+ case PlSqlParser.SEED:
+ case PlSqlParser.SEG_BLOCK:
+ case PlSqlParser.SEG_FILE:
+ case PlSqlParser.SEGMENT:
+ case PlSqlParser.SELECTIVITY:
+ case PlSqlParser.SELF:
+ case PlSqlParser.SEMIJOIN_DRIVER:
+ case PlSqlParser.SEMIJOIN:
+ case PlSqlParser.SEMI_TO_INNER:
+ case PlSqlParser.SEQUENCED:
+ case PlSqlParser.SEQUENCE:
+ case PlSqlParser.SEQUENTIAL:
+ case PlSqlParser.SERIALIZABLE:
+ case PlSqlParser.SERIALLY_REUSABLE:
+ case PlSqlParser.SERIAL:
+ case PlSqlParser.SERVERERROR:
+ case PlSqlParser.SERVICE_NAME_CONVERT:
+ case PlSqlParser.SERVICES:
+ case PlSqlParser.SESSION_CACHED_CURSORS:
+ case PlSqlParser.SESSION:
+ case PlSqlParser.SESSIONS_PER_USER:
+ case PlSqlParser.SESSIONTIMEZONE:
+ case PlSqlParser.SESSIONTZNAME:
+ case PlSqlParser.SET:
+ case PlSqlParser.SETS:
+ case PlSqlParser.SETTINGS:
+ case PlSqlParser.SET_TO_JOIN:
+ case PlSqlParser.SEVERE:
+ case PlSqlParser.SHARED_POOL:
+ case PlSqlParser.SHARED:
+ case PlSqlParser.SHARING:
+ case PlSqlParser.SHELFLIFE:
+ case PlSqlParser.SHOW:
+ case PlSqlParser.SHRINK:
+ case PlSqlParser.SHUTDOWN:
+ case PlSqlParser.SIBLINGS:
+ case PlSqlParser.SID:
+ case PlSqlParser.SIGNAL_COMPONENT:
+ case PlSqlParser.SIGNAL_FUNCTION:
+ case PlSqlParser.SIGN:
+ case PlSqlParser.SIGNTYPE:
+ case PlSqlParser.SIMPLE_INTEGER:
+ case PlSqlParser.SIMPLE:
+ case PlSqlParser.SINGLE:
+ case PlSqlParser.SINGLETASK:
+ case PlSqlParser.SINH:
+ case PlSqlParser.SIN:
+ case PlSqlParser.SKIP_EXT_OPTIMIZER:
+ case PlSqlParser.SKIP_:
+ case PlSqlParser.SKIP_UNQ_UNUSABLE_IDX:
+ case PlSqlParser.SKIP_UNUSABLE_INDEXES:
+ case PlSqlParser.SMALLFILE:
+ case PlSqlParser.SMALLINT:
+ case PlSqlParser.SNAPSHOT:
+ case PlSqlParser.SOME:
+ case PlSqlParser.SORT:
+ case PlSqlParser.SOUNDEX:
+ case PlSqlParser.SOURCE_FILE_DIRECTORY:
+ case PlSqlParser.SOURCE_FILE_NAME_CONVERT:
+ case PlSqlParser.SOURCE:
+ case PlSqlParser.SPACE_KEYWORD:
+ case PlSqlParser.SPECIFICATION:
+ case PlSqlParser.SPFILE:
+ case PlSqlParser.SPLIT:
+ case PlSqlParser.SPREADSHEET:
+ case PlSqlParser.SQLDATA:
+ case PlSqlParser.SQLERROR:
+ case PlSqlParser.SQLLDR:
+ case PlSqlParser.SQL:
+ case PlSqlParser.SQL_TRACE:
+ case PlSqlParser.SQL_TRANSLATION_PROFILE:
+ case PlSqlParser.SQRT:
+ case PlSqlParser.STALE:
+ case PlSqlParser.STANDALONE:
+ case PlSqlParser.STANDARD_HASH:
+ case PlSqlParser.STANDBY_MAX_DATA_DELAY:
+ case PlSqlParser.STANDBYS:
+ case PlSqlParser.STANDBY:
+ case PlSqlParser.STAR:
+ case PlSqlParser.STAR_TRANSFORMATION:
+ case PlSqlParser.STARTUP:
+ case PlSqlParser.STATEMENT_ID:
+ case PlSqlParser.STATEMENT_QUEUING:
+ case PlSqlParser.STATEMENTS:
+ case PlSqlParser.STATEMENT:
+ case PlSqlParser.STATE:
+ case PlSqlParser.STATIC:
+ case PlSqlParser.STATISTICS:
+ case PlSqlParser.STATS_BINOMIAL_TEST:
+ case PlSqlParser.STATS_CROSSTAB:
+ case PlSqlParser.STATS_F_TEST:
+ case PlSqlParser.STATS_KS_TEST:
+ case PlSqlParser.STATS_MODE:
+ case PlSqlParser.STATS_MW_TEST:
+ case PlSqlParser.STATS_ONE_WAY_ANOVA:
+ case PlSqlParser.STATS_T_TEST_INDEP:
+ case PlSqlParser.STATS_T_TEST_INDEPU:
+ case PlSqlParser.STATS_T_TEST_ONE:
+ case PlSqlParser.STATS_T_TEST_PAIRED:
+ case PlSqlParser.STATS_WSR_TEST:
+ case PlSqlParser.STDDEV_POP:
+ case PlSqlParser.STDDEV_SAMP:
+ case PlSqlParser.STOP:
+ case PlSqlParser.STORAGE:
+ case PlSqlParser.STORE:
+ case PlSqlParser.STREAMS:
+ case PlSqlParser.STREAM:
+ case PlSqlParser.STRICT:
+ case PlSqlParser.STRING:
+ case PlSqlParser.STRIPE_COLUMNS:
+ case PlSqlParser.STRIPE_WIDTH:
+ case PlSqlParser.STRIP:
+ case PlSqlParser.STRUCTURE:
+ case PlSqlParser.SUBMULTISET:
+ case PlSqlParser.SUBPARTITION_REL:
+ case PlSqlParser.SUBPARTITIONS:
+ case PlSqlParser.SUBPARTITION:
+ case PlSqlParser.SUBQUERIES:
+ case PlSqlParser.SUBQUERY_PRUNING:
+ case PlSqlParser.SUBSCRIBE:
+ case PlSqlParser.SUBSET:
+ case PlSqlParser.SUBSTITUTABLE:
+ case PlSqlParser.SUBSTR2:
+ case PlSqlParser.SUBSTR4:
+ case PlSqlParser.SUBSTRB:
+ case PlSqlParser.SUBSTRC:
+ case PlSqlParser.SUBTYPE:
+ case PlSqlParser.SUCCESSFUL:
+ case PlSqlParser.SUCCESS:
+ case PlSqlParser.SUMMARY:
+ case PlSqlParser.SUPPLEMENTAL:
+ case PlSqlParser.SUSPEND:
+ case PlSqlParser.SWAP_JOIN_INPUTS:
+ case PlSqlParser.SWITCHOVER:
+ case PlSqlParser.SWITCH:
+ case PlSqlParser.SYNCHRONOUS:
+ case PlSqlParser.SYNC:
+ case PlSqlParser.SYSASM:
+ case PlSqlParser.SYS_AUDIT:
+ case PlSqlParser.SYSAUX:
+ case PlSqlParser.SYSBACKUP:
+ case PlSqlParser.SYS_CHECKACL:
+ case PlSqlParser.SYS_CHECK_PRIVILEGE:
+ case PlSqlParser.SYS_CONNECT_BY_PATH:
+ case PlSqlParser.SYS_CONTEXT:
+ case PlSqlParser.SYSDATE:
+ case PlSqlParser.SYSDBA:
+ case PlSqlParser.SYS_DBURIGEN:
+ case PlSqlParser.SYSDG:
+ case PlSqlParser.SYS_DL_CURSOR:
+ case PlSqlParser.SYS_DM_RXFORM_CHR:
+ case PlSqlParser.SYS_DM_RXFORM_NUM:
+ case PlSqlParser.SYS_DOM_COMPARE:
+ case PlSqlParser.SYS_DST_PRIM2SEC:
+ case PlSqlParser.SYS_DST_SEC2PRIM:
+ case PlSqlParser.SYS_ET_BFILE_TO_RAW:
+ case PlSqlParser.SYS_ET_BLOB_TO_IMAGE:
+ case PlSqlParser.SYS_ET_IMAGE_TO_BLOB:
+ case PlSqlParser.SYS_ET_RAW_TO_BFILE:
+ case PlSqlParser.SYS_EXTPDTXT:
+ case PlSqlParser.SYS_EXTRACT_UTC:
+ case PlSqlParser.SYS_FBT_INSDEL:
+ case PlSqlParser.SYS_FILTER_ACLS:
+ case PlSqlParser.SYS_FNMATCHES:
+ case PlSqlParser.SYS_FNREPLACE:
+ case PlSqlParser.SYS_GET_ACLIDS:
+ case PlSqlParser.SYS_GET_COL_ACLIDS:
+ case PlSqlParser.SYS_GET_PRIVILEGES:
+ case PlSqlParser.SYS_GETTOKENID:
+ case PlSqlParser.SYS_GETXTIVAL:
+ case PlSqlParser.SYS_GUID:
+ case PlSqlParser.SYSGUID:
+ case PlSqlParser.SYSKM:
+ case PlSqlParser.SYS_MAKE_XMLNODEID:
+ case PlSqlParser.SYS_MAKEXML:
+ case PlSqlParser.SYS_MKXMLATTR:
+ case PlSqlParser.SYS_MKXTI:
+ case PlSqlParser.SYSOBJ:
+ case PlSqlParser.SYS_OP_ADT2BIN:
+ case PlSqlParser.SYS_OP_ADTCONS:
+ case PlSqlParser.SYS_OP_ALSCRVAL:
+ case PlSqlParser.SYS_OP_ATG:
+ case PlSqlParser.SYS_OP_BIN2ADT:
+ case PlSqlParser.SYS_OP_BITVEC:
+ case PlSqlParser.SYS_OP_BL2R:
+ case PlSqlParser.SYS_OP_BLOOM_FILTER_LIST:
+ case PlSqlParser.SYS_OP_BLOOM_FILTER:
+ case PlSqlParser.SYS_OP_C2C:
+ case PlSqlParser.SYS_OP_CAST:
+ case PlSqlParser.SYS_OP_CEG:
+ case PlSqlParser.SYS_OP_CL2C:
+ case PlSqlParser.SYS_OP_COMBINED_HASH:
+ case PlSqlParser.SYS_OP_COMP:
+ case PlSqlParser.SYS_OP_CONVERT:
+ case PlSqlParser.SYS_OP_COUNTCHG:
+ case PlSqlParser.SYS_OP_CSCONV:
+ case PlSqlParser.SYS_OP_CSCONVTEST:
+ case PlSqlParser.SYS_OP_CSR:
+ case PlSqlParser.SYS_OP_CSX_PATCH:
+ case PlSqlParser.SYS_OP_CYCLED_SEQ:
+ case PlSqlParser.SYS_OP_DECOMP:
+ case PlSqlParser.SYS_OP_DESCEND:
+ case PlSqlParser.SYS_OP_DISTINCT:
+ case PlSqlParser.SYS_OP_DRA:
+ case PlSqlParser.SYS_OP_DUMP:
+ case PlSqlParser.SYS_OP_DV_CHECK:
+ case PlSqlParser.SYS_OP_ENFORCE_NOT_NULL:
+ case PlSqlParser.SYSOPER:
+ case PlSqlParser.SYS_OP_EXTRACT:
+ case PlSqlParser.SYS_OP_GROUPING:
+ case PlSqlParser.SYS_OP_GUID:
+ case PlSqlParser.SYS_OP_HASH:
+ case PlSqlParser.SYS_OP_IIX:
+ case PlSqlParser.SYS_OP_ITR:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_CREATE:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_FILTER_LIST:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_FILTER:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_SUCCEEDED:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_USE:
+ case PlSqlParser.SYS_OP_LBID:
+ case PlSqlParser.SYS_OP_LOBLOC2BLOB:
+ case PlSqlParser.SYS_OP_LOBLOC2CLOB:
+ case PlSqlParser.SYS_OP_LOBLOC2ID:
+ case PlSqlParser.SYS_OP_LOBLOC2NCLOB:
+ case PlSqlParser.SYS_OP_LOBLOC2TYP:
+ case PlSqlParser.SYS_OP_LSVI:
+ case PlSqlParser.SYS_OP_LVL:
+ case PlSqlParser.SYS_OP_MAKEOID:
+ case PlSqlParser.SYS_OP_MAP_NONNULL:
+ case PlSqlParser.SYS_OP_MSR:
+ case PlSqlParser.SYS_OP_NICOMBINE:
+ case PlSqlParser.SYS_OP_NIEXTRACT:
+ case PlSqlParser.SYS_OP_NII:
+ case PlSqlParser.SYS_OP_NIX:
+ case PlSqlParser.SYS_OP_NOEXPAND:
+ case PlSqlParser.SYS_OP_NTCIMG:
+ case PlSqlParser.SYS_OP_NUMTORAW:
+ case PlSqlParser.SYS_OP_OIDVALUE:
+ case PlSqlParser.SYS_OP_OPNSIZE:
+ case PlSqlParser.SYS_OP_PAR_1:
+ case PlSqlParser.SYS_OP_PARGID_1:
+ case PlSqlParser.SYS_OP_PARGID:
+ case PlSqlParser.SYS_OP_PAR:
+ case PlSqlParser.SYS_OP_PART_ID:
+ case PlSqlParser.SYS_OP_PIVOT:
+ case PlSqlParser.SYS_OP_R2O:
+ case PlSqlParser.SYS_OP_RAWTONUM:
+ case PlSqlParser.SYS_OP_RDTM:
+ case PlSqlParser.SYS_OP_REF:
+ case PlSqlParser.SYS_OP_RMTD:
+ case PlSqlParser.SYS_OP_ROWIDTOOBJ:
+ case PlSqlParser.SYS_OP_RPB:
+ case PlSqlParser.SYS_OPTLOBPRBSC:
+ case PlSqlParser.SYS_OP_TOSETID:
+ case PlSqlParser.SYS_OP_TPR:
+ case PlSqlParser.SYS_OP_TRTB:
+ case PlSqlParser.SYS_OPTXICMP:
+ case PlSqlParser.SYS_OPTXQCASTASNQ:
+ case PlSqlParser.SYS_OP_UNDESCEND:
+ case PlSqlParser.SYS_OP_VECAND:
+ case PlSqlParser.SYS_OP_VECBIT:
+ case PlSqlParser.SYS_OP_VECOR:
+ case PlSqlParser.SYS_OP_VECXOR:
+ case PlSqlParser.SYS_OP_VERSION:
+ case PlSqlParser.SYS_OP_VREF:
+ case PlSqlParser.SYS_OP_VVD:
+ case PlSqlParser.SYS_OP_XMLCONS_FOR_CSX:
+ case PlSqlParser.SYS_OP_XPTHATG:
+ case PlSqlParser.SYS_OP_XPTHIDX:
+ case PlSqlParser.SYS_OP_XPTHOP:
+ case PlSqlParser.SYS_OP_XTXT2SQLT:
+ case PlSqlParser.SYS_OP_ZONE_ID:
+ case PlSqlParser.SYS_ORDERKEY_DEPTH:
+ case PlSqlParser.SYS_ORDERKEY_MAXCHILD:
+ case PlSqlParser.SYS_ORDERKEY_PARENT:
+ case PlSqlParser.SYS_PARALLEL_TXN:
+ case PlSqlParser.SYS_PATHID_IS_ATTR:
+ case PlSqlParser.SYS_PATHID_IS_NMSPC:
+ case PlSqlParser.SYS_PATHID_LASTNAME:
+ case PlSqlParser.SYS_PATHID_LASTNMSPC:
+ case PlSqlParser.SYS_PATH_REVERSE:
+ case PlSqlParser.SYS_PXQEXTRACT:
+ case PlSqlParser.SYS_RAW_TO_XSID:
+ case PlSqlParser.SYS_RID_ORDER:
+ case PlSqlParser.SYS_ROW_DELTA:
+ case PlSqlParser.SYS_SC_2_XMLT:
+ case PlSqlParser.SYS_SYNRCIREDO:
+ case PlSqlParser.SYSTEM_DEFINED:
+ case PlSqlParser.SYSTEM:
+ case PlSqlParser.SYSTIMESTAMP:
+ case PlSqlParser.SYS_TYPEID:
+ case PlSqlParser.SYS_UMAKEXML:
+ case PlSqlParser.SYS_XMLANALYZE:
+ case PlSqlParser.SYS_XMLCONTAINS:
+ case PlSqlParser.SYS_XMLCONV:
+ case PlSqlParser.SYS_XMLEXNSURI:
+ case PlSqlParser.SYS_XMLGEN:
+ case PlSqlParser.SYS_XMLI_LOC_ISNODE:
+ case PlSqlParser.SYS_XMLI_LOC_ISTEXT:
+ case PlSqlParser.SYS_XMLINSTR:
+ case PlSqlParser.SYS_XMLLOCATOR_GETSVAL:
+ case PlSqlParser.SYS_XMLNODEID_GETCID:
+ case PlSqlParser.SYS_XMLNODEID_GETLOCATOR:
+ case PlSqlParser.SYS_XMLNODEID_GETOKEY:
+ case PlSqlParser.SYS_XMLNODEID_GETPATHID:
+ case PlSqlParser.SYS_XMLNODEID_GETPTRID:
+ case PlSqlParser.SYS_XMLNODEID_GETRID:
+ case PlSqlParser.SYS_XMLNODEID_GETSVAL:
+ case PlSqlParser.SYS_XMLNODEID_GETTID:
+ case PlSqlParser.SYS_XMLNODEID:
+ case PlSqlParser.SYS_XMLT_2_SC:
+ case PlSqlParser.SYS_XMLTRANSLATE:
+ case PlSqlParser.SYS_XMLTYPE2SQL:
+ case PlSqlParser.SYS_XQ_ASQLCNV:
+ case PlSqlParser.SYS_XQ_ATOMCNVCHK:
+ case PlSqlParser.SYS_XQBASEURI:
+ case PlSqlParser.SYS_XQCASTABLEERRH:
+ case PlSqlParser.SYS_XQCODEP2STR:
+ case PlSqlParser.SYS_XQCODEPEQ:
+ case PlSqlParser.SYS_XQCON2SEQ:
+ case PlSqlParser.SYS_XQCONCAT:
+ case PlSqlParser.SYS_XQDELETE:
+ case PlSqlParser.SYS_XQDFLTCOLATION:
+ case PlSqlParser.SYS_XQDOC:
+ case PlSqlParser.SYS_XQDOCURI:
+ case PlSqlParser.SYS_XQDURDIV:
+ case PlSqlParser.SYS_XQED4URI:
+ case PlSqlParser.SYS_XQENDSWITH:
+ case PlSqlParser.SYS_XQERRH:
+ case PlSqlParser.SYS_XQERR:
+ case PlSqlParser.SYS_XQESHTMLURI:
+ case PlSqlParser.SYS_XQEXLOBVAL:
+ case PlSqlParser.SYS_XQEXSTWRP:
+ case PlSqlParser.SYS_XQEXTRACT:
+ case PlSqlParser.SYS_XQEXTRREF:
+ case PlSqlParser.SYS_XQEXVAL:
+ case PlSqlParser.SYS_XQFB2STR:
+ case PlSqlParser.SYS_XQFNBOOL:
+ case PlSqlParser.SYS_XQFNCMP:
+ case PlSqlParser.SYS_XQFNDATIM:
+ case PlSqlParser.SYS_XQFNLNAME:
+ case PlSqlParser.SYS_XQFNNM:
+ case PlSqlParser.SYS_XQFNNSURI:
+ case PlSqlParser.SYS_XQFNPREDTRUTH:
+ case PlSqlParser.SYS_XQFNQNM:
+ case PlSqlParser.SYS_XQFNROOT:
+ case PlSqlParser.SYS_XQFORMATNUM:
+ case PlSqlParser.SYS_XQFTCONTAIN:
+ case PlSqlParser.SYS_XQFUNCR:
+ case PlSqlParser.SYS_XQGETCONTENT:
+ case PlSqlParser.SYS_XQINDXOF:
+ case PlSqlParser.SYS_XQINSERT:
+ case PlSqlParser.SYS_XQINSPFX:
+ case PlSqlParser.SYS_XQIRI2URI:
+ case PlSqlParser.SYS_XQLANG:
+ case PlSqlParser.SYS_XQLLNMFRMQNM:
+ case PlSqlParser.SYS_XQMKNODEREF:
+ case PlSqlParser.SYS_XQNILLED:
+ case PlSqlParser.SYS_XQNODENAME:
+ case PlSqlParser.SYS_XQNORMSPACE:
+ case PlSqlParser.SYS_XQNORMUCODE:
+ case PlSqlParser.SYS_XQ_NRNG:
+ case PlSqlParser.SYS_XQNSP4PFX:
+ case PlSqlParser.SYS_XQNSPFRMQNM:
+ case PlSqlParser.SYS_XQPFXFRMQNM:
+ case PlSqlParser.SYS_XQ_PKSQL2XML:
+ case PlSqlParser.SYS_XQPOLYABS:
+ case PlSqlParser.SYS_XQPOLYADD:
+ case PlSqlParser.SYS_XQPOLYCEL:
+ case PlSqlParser.SYS_XQPOLYCSTBL:
+ case PlSqlParser.SYS_XQPOLYCST:
+ case PlSqlParser.SYS_XQPOLYDIV:
+ case PlSqlParser.SYS_XQPOLYFLR:
+ case PlSqlParser.SYS_XQPOLYMOD:
+ case PlSqlParser.SYS_XQPOLYMUL:
+ case PlSqlParser.SYS_XQPOLYRND:
+ case PlSqlParser.SYS_XQPOLYSQRT:
+ case PlSqlParser.SYS_XQPOLYSUB:
+ case PlSqlParser.SYS_XQPOLYUMUS:
+ case PlSqlParser.SYS_XQPOLYUPLS:
+ case PlSqlParser.SYS_XQPOLYVEQ:
+ case PlSqlParser.SYS_XQPOLYVGE:
+ case PlSqlParser.SYS_XQPOLYVGT:
+ case PlSqlParser.SYS_XQPOLYVLE:
+ case PlSqlParser.SYS_XQPOLYVLT:
+ case PlSqlParser.SYS_XQPOLYVNE:
+ case PlSqlParser.SYS_XQREF2VAL:
+ case PlSqlParser.SYS_XQRENAME:
+ case PlSqlParser.SYS_XQREPLACE:
+ case PlSqlParser.SYS_XQRESVURI:
+ case PlSqlParser.SYS_XQRNDHALF2EVN:
+ case PlSqlParser.SYS_XQRSLVQNM:
+ case PlSqlParser.SYS_XQRYENVPGET:
+ case PlSqlParser.SYS_XQRYVARGET:
+ case PlSqlParser.SYS_XQRYWRP:
+ case PlSqlParser.SYS_XQSEQ2CON4XC:
+ case PlSqlParser.SYS_XQSEQ2CON:
+ case PlSqlParser.SYS_XQSEQDEEPEQ:
+ case PlSqlParser.SYS_XQSEQINSB:
+ case PlSqlParser.SYS_XQSEQRM:
+ case PlSqlParser.SYS_XQSEQRVS:
+ case PlSqlParser.SYS_XQSEQSUB:
+ case PlSqlParser.SYS_XQSEQTYPMATCH:
+ case PlSqlParser.SYS_XQSTARTSWITH:
+ case PlSqlParser.SYS_XQSTATBURI:
+ case PlSqlParser.SYS_XQSTR2CODEP:
+ case PlSqlParser.SYS_XQSTRJOIN:
+ case PlSqlParser.SYS_XQSUBSTRAFT:
+ case PlSqlParser.SYS_XQSUBSTRBEF:
+ case PlSqlParser.SYS_XQTOKENIZE:
+ case PlSqlParser.SYS_XQTREATAS:
+ case PlSqlParser.SYS_XQ_UPKXML2SQL:
+ case PlSqlParser.SYS_XQXFORM:
+ case PlSqlParser.SYS_XSID_TO_RAW:
+ case PlSqlParser.SYS_ZMAP_FILTER:
+ case PlSqlParser.SYS_ZMAP_REFRESH:
+ case PlSqlParser.TABLE_LOOKUP_BY_NL:
+ case PlSqlParser.TABLESPACE_NO:
+ case PlSqlParser.TABLESPACE:
+ case PlSqlParser.TABLES:
+ case PlSqlParser.TABLE_STATS:
+ case PlSqlParser.TABLE:
+ case PlSqlParser.TABNO:
+ case PlSqlParser.TAG:
+ case PlSqlParser.TANH:
+ case PlSqlParser.TAN:
+ case PlSqlParser.TBLORIDXPARTNUM:
+ case PlSqlParser.TEMPFILE:
+ case PlSqlParser.TEMPLATE:
+ case PlSqlParser.TEMPORARY:
+ case PlSqlParser.TEMP_TABLE:
+ case PlSqlParser.TEST:
+ case PlSqlParser.TEXT:
+ case PlSqlParser.THAN:
+ case PlSqlParser.THEN:
+ case PlSqlParser.THE:
+ case PlSqlParser.THREAD:
+ case PlSqlParser.THROUGH:
+ case PlSqlParser.TIER:
+ case PlSqlParser.TIES:
+ case PlSqlParser.TIMEOUT:
+ case PlSqlParser.TIMESTAMP_LTZ_UNCONSTRAINED:
+ case PlSqlParser.TIMESTAMP:
+ case PlSqlParser.TIMESTAMP_TZ_UNCONSTRAINED:
+ case PlSqlParser.TIMESTAMP_UNCONSTRAINED:
+ case PlSqlParser.TIMES:
+ case PlSqlParser.TIME:
+ case PlSqlParser.TIMEZONE_ABBR:
+ case PlSqlParser.TIMEZONE_HOUR:
+ case PlSqlParser.TIMEZONE_MINUTE:
+ case PlSqlParser.TIMEZONE_OFFSET:
+ case PlSqlParser.TIMEZONE_REGION:
+ case PlSqlParser.TIME_ZONE:
+ case PlSqlParser.TIV_GB:
+ case PlSqlParser.TIV_SSF:
+ case PlSqlParser.TO_ACLID:
+ case PlSqlParser.TO_BINARY_DOUBLE:
+ case PlSqlParser.TO_BINARY_FLOAT:
+ case PlSqlParser.TO_BLOB:
+ case PlSqlParser.TO_CLOB:
+ case PlSqlParser.TO_DSINTERVAL:
+ case PlSqlParser.TO_LOB:
+ case PlSqlParser.TO_MULTI_BYTE:
+ case PlSqlParser.TO_NCHAR:
+ case PlSqlParser.TO_NCLOB:
+ case PlSqlParser.TO_NUMBER:
+ case PlSqlParser.TOPLEVEL:
+ case PlSqlParser.TO_SINGLE_BYTE:
+ case PlSqlParser.TO_TIMESTAMP:
+ case PlSqlParser.TO_TIMESTAMP_TZ:
+ case PlSqlParser.TO_TIME:
+ case PlSqlParser.TO_TIME_TZ:
+ case PlSqlParser.TO_YMINTERVAL:
+ case PlSqlParser.TRACE:
+ case PlSqlParser.TRACING:
+ case PlSqlParser.TRACKING:
+ case PlSqlParser.TRAILING:
+ case PlSqlParser.TRANSACTION:
+ case PlSqlParser.TRANSFORM_DISTINCT_AGG:
+ case PlSqlParser.TRANSITIONAL:
+ case PlSqlParser.TRANSITION:
+ case PlSqlParser.TRANSLATE:
+ case PlSqlParser.TRANSLATION:
+ case PlSqlParser.TREAT:
+ case PlSqlParser.TRIGGERS:
+ case PlSqlParser.TRIGGER:
+ case PlSqlParser.TRUE:
+ case PlSqlParser.TRUNCATE:
+ case PlSqlParser.TRUNC:
+ case PlSqlParser.TRUSTED:
+ case PlSqlParser.TRUST:
+ case PlSqlParser.TUNING:
+ case PlSqlParser.TX:
+ case PlSqlParser.TYPES:
+ case PlSqlParser.TYPE:
+ case PlSqlParser.TZ_OFFSET:
+ case PlSqlParser.UB2:
+ case PlSqlParser.UBA:
+ case PlSqlParser.UCS2:
+ case PlSqlParser.UID:
+ case PlSqlParser.UNARCHIVED:
+ case PlSqlParser.UNBOUNDED:
+ case PlSqlParser.UNBOUND:
+ case PlSqlParser.UNCONDITIONAL:
+ case PlSqlParser.UNDER:
+ case PlSqlParser.UNDO:
+ case PlSqlParser.UNDROP:
+ case PlSqlParser.UNIFORM:
+ case PlSqlParser.UNISTR:
+ case PlSqlParser.UNLIMITED:
+ case PlSqlParser.UNLOAD:
+ case PlSqlParser.UNLOCK:
+ case PlSqlParser.UNMATCHED:
+ case PlSqlParser.UNNEST_INNERJ_DISTINCT_VIEW:
+ case PlSqlParser.UNNEST_NOSEMIJ_NODISTINCTVIEW:
+ case PlSqlParser.UNNEST_SEMIJ_VIEW:
+ case PlSqlParser.UNNEST:
+ case PlSqlParser.UNPACKED:
+ case PlSqlParser.UNPIVOT:
+ case PlSqlParser.UNPLUG:
+ case PlSqlParser.UNPROTECTED:
+ case PlSqlParser.UNQUIESCE:
+ case PlSqlParser.UNRECOVERABLE:
+ case PlSqlParser.UNRESTRICTED:
+ case PlSqlParser.UNSUBSCRIBE:
+ case PlSqlParser.UNTIL:
+ case PlSqlParser.UNUSABLE:
+ case PlSqlParser.UNUSED:
+ case PlSqlParser.UPDATABLE:
+ case PlSqlParser.UPDATED:
+ case PlSqlParser.UPDATEXML:
+ case PlSqlParser.UPD_INDEXES:
+ case PlSqlParser.UPD_JOININDEX:
+ case PlSqlParser.UPGRADE:
+ case PlSqlParser.UPPER:
+ case PlSqlParser.UPSERT:
+ case PlSqlParser.UROWID:
+ case PlSqlParser.USABLE:
+ case PlSqlParser.USAGE:
+ case PlSqlParser.USE_ANTI:
+ case PlSqlParser.USE_CONCAT:
+ case PlSqlParser.USE_CUBE:
+ case PlSqlParser.USE_HASH_AGGREGATION:
+ case PlSqlParser.USE_HASH_GBY_FOR_PUSHDOWN:
+ case PlSqlParser.USE_HASH:
+ case PlSqlParser.USE_HIDDEN_PARTITIONS:
+ case PlSqlParser.USE_INVISIBLE_INDEXES:
+ case PlSqlParser.USE_MERGE_CARTESIAN:
+ case PlSqlParser.USE_MERGE:
+ case PlSqlParser.USE_NL:
+ case PlSqlParser.USE_NL_WITH_INDEX:
+ case PlSqlParser.USE_PRIVATE_OUTLINES:
+ case PlSqlParser.USER_DATA:
+ case PlSqlParser.USER_DEFINED:
+ case PlSqlParser.USERENV:
+ case PlSqlParser.USERGROUP:
+ case PlSqlParser.USER_RECYCLEBIN:
+ case PlSqlParser.USERS:
+ case PlSqlParser.USER_TABLESPACES:
+ case PlSqlParser.USER:
+ case PlSqlParser.USE_SEMI:
+ case PlSqlParser.USE_STORED_OUTLINES:
+ case PlSqlParser.USE_TTT_FOR_GSETS:
+ case PlSqlParser.USE:
+ case PlSqlParser.USE_VECTOR_AGGREGATION:
+ case PlSqlParser.USE_WEAK_NAME_RESL:
+ case PlSqlParser.USING_NO_EXPAND:
+ case PlSqlParser.USING:
+ case PlSqlParser.UTF16BE:
+ case PlSqlParser.UTF16LE:
+ case PlSqlParser.UTF32:
+ case PlSqlParser.UTF8:
+ case PlSqlParser.V1:
+ case PlSqlParser.V2:
+ case PlSqlParser.VALIDATE:
+ case PlSqlParser.VALIDATION:
+ case PlSqlParser.VALID_TIME_END:
+ case PlSqlParser.VALUE:
+ case PlSqlParser.VARCHAR2:
+ case PlSqlParser.VARCHAR:
+ case PlSqlParser.VARIABLE:
+ case PlSqlParser.VAR_POP:
+ case PlSqlParser.VARRAYS:
+ case PlSqlParser.VARRAY:
+ case PlSqlParser.VAR_SAMP:
+ case PlSqlParser.VARYING:
+ case PlSqlParser.VECTOR_READ_TRACE:
+ case PlSqlParser.VECTOR_READ:
+ case PlSqlParser.VECTOR_TRANSFORM_DIMS:
+ case PlSqlParser.VECTOR_TRANSFORM_FACT:
+ case PlSqlParser.VECTOR_TRANSFORM:
+ case PlSqlParser.VERIFIER:
+ case PlSqlParser.VERIFY:
+ case PlSqlParser.VERSIONING:
+ case PlSqlParser.VERSIONS_ENDSCN:
+ case PlSqlParser.VERSIONS_ENDTIME:
+ case PlSqlParser.VERSIONS_OPERATION:
+ case PlSqlParser.VERSIONS_STARTSCN:
+ case PlSqlParser.VERSIONS_STARTTIME:
+ case PlSqlParser.VERSIONS:
+ case PlSqlParser.VERSIONS_XID:
+ case PlSqlParser.VERSION:
+ case PlSqlParser.VIOLATION:
+ case PlSqlParser.VIRTUAL:
+ case PlSqlParser.VISIBILITY:
+ case PlSqlParser.VISIBLE:
+ case PlSqlParser.VOLUME:
+ case PlSqlParser.VSIZE:
+ case PlSqlParser.WAIT:
+ case PlSqlParser.WALLET:
+ case PlSqlParser.WARNING:
+ case PlSqlParser.WEEKS:
+ case PlSqlParser.WEEK:
+ case PlSqlParser.WELLFORMED:
+ case PlSqlParser.WHENEVER:
+ case PlSqlParser.WHEN:
+ case PlSqlParser.WHILE:
+ case PlSqlParser.WHITESPACE:
+ case PlSqlParser.WIDTH_BUCKET:
+ case PlSqlParser.WITHIN:
+ case PlSqlParser.WITHOUT:
+ case PlSqlParser.WITH_PLSQL:
+ case PlSqlParser.WORK:
+ case PlSqlParser.WRAPPED:
+ case PlSqlParser.WRAPPER:
+ case PlSqlParser.WRITE:
+ case PlSqlParser.XDB_FASTPATH_INSERT:
+ case PlSqlParser.X_DYN_PRUNE:
+ case PlSqlParser.XID:
+ case PlSqlParser.XML2OBJECT:
+ case PlSqlParser.XMLAGG:
+ case PlSqlParser.XMLATTRIBUTES:
+ case PlSqlParser.XMLCAST:
+ case PlSqlParser.XMLCDATA:
+ case PlSqlParser.XMLCOLATTVAL:
+ case PlSqlParser.XMLCOMMENT:
+ case PlSqlParser.XMLCONCAT:
+ case PlSqlParser.XMLDIFF:
+ case PlSqlParser.XML_DML_RWT_STMT:
+ case PlSqlParser.XMLELEMENT:
+ case PlSqlParser.XMLEXISTS2:
+ case PlSqlParser.XMLEXISTS:
+ case PlSqlParser.XMLFOREST:
+ case PlSqlParser.XMLINDEX_REWRITE_IN_SELECT:
+ case PlSqlParser.XMLINDEX_REWRITE:
+ case PlSqlParser.XMLINDEX_SEL_IDX_TBL:
+ case PlSqlParser.XMLISNODE:
+ case PlSqlParser.XMLISVALID:
+ case PlSqlParser.XMLNAMESPACES:
+ case PlSqlParser.XMLPARSE:
+ case PlSqlParser.XMLPATCH:
+ case PlSqlParser.XMLPI:
+ case PlSqlParser.XMLQUERYVAL:
+ case PlSqlParser.XMLQUERY:
+ case PlSqlParser.XMLROOT:
+ case PlSqlParser.XMLSCHEMA:
+ case PlSqlParser.XMLSERIALIZE:
+ case PlSqlParser.XMLTABLE:
+ case PlSqlParser.XMLTRANSFORMBLOB:
+ case PlSqlParser.XMLTRANSFORM:
+ case PlSqlParser.XMLTYPE:
+ case PlSqlParser.XML:
+ case PlSqlParser.XPATHTABLE:
+ case PlSqlParser.XS_SYS_CONTEXT:
+ case PlSqlParser.XS:
+ case PlSqlParser.YEARS:
+ case PlSqlParser.YEAR:
+ case PlSqlParser.YES:
+ case PlSqlParser.YMINTERVAL_UNCONSTRAINED:
+ case PlSqlParser.ZONEMAP:
+ case PlSqlParser.ZONE:
+ case PlSqlParser.PREDICTION:
+ case PlSqlParser.PREDICTION_BOUNDS:
+ case PlSqlParser.PREDICTION_COST:
+ case PlSqlParser.PREDICTION_DETAILS:
+ case PlSqlParser.PREDICTION_PROBABILITY:
+ case PlSqlParser.PREDICTION_SET:
+ case PlSqlParser.CUME_DIST:
+ case PlSqlParser.DENSE_RANK:
+ case PlSqlParser.LISTAGG:
+ case PlSqlParser.PERCENT_RANK:
+ case PlSqlParser.PERCENTILE_CONT:
+ case PlSqlParser.PERCENTILE_DISC:
+ case PlSqlParser.RANK:
+ case PlSqlParser.AVG:
+ case PlSqlParser.CORR:
+ case PlSqlParser.COVAR_:
+ case PlSqlParser.LAG:
+ case PlSqlParser.LEAD:
+ case PlSqlParser.MAX:
+ case PlSqlParser.MEDIAN:
+ case PlSqlParser.MIN:
+ case PlSqlParser.NTILE:
+ case PlSqlParser.NVL:
+ case PlSqlParser.RATIO_TO_REPORT:
+ case PlSqlParser.REGR_:
+ case PlSqlParser.ROUND:
+ case PlSqlParser.ROW_NUMBER:
+ case PlSqlParser.SUBSTR:
+ case PlSqlParser.TO_CHAR:
+ case PlSqlParser.TRIM:
+ case PlSqlParser.SUM:
+ case PlSqlParser.STDDEV:
+ case PlSqlParser.VAR_:
+ case PlSqlParser.VARIANCE:
+ case PlSqlParser.LEAST:
+ case PlSqlParser.GREATEST:
+ case PlSqlParser.TO_DATE:
+ case PlSqlParser.PERIOD:
+ case PlSqlParser.DELIMITED_ID:
+ case PlSqlParser.INTRODUCER:
+ case PlSqlParser.REGULAR_ID:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2730;
+ this.identifier();
+ break;
+ case PlSqlParser.DEFAULT:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 2731;
+ this.match(PlSqlParser.DEFAULT);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Type_elements_parameterContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_type_elements_parameter;
+ return this;
+}
+
+Type_elements_parameterContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Type_elements_parameterContext.prototype.constructor = Type_elements_parameterContext;
+
+Type_elements_parameterContext.prototype.parameter_name = function() {
+ return this.getTypedRuleContext(Parameter_nameContext,0);
+};
+
+Type_elements_parameterContext.prototype.type_spec = function() {
+ return this.getTypedRuleContext(Type_specContext,0);
+};
+
+Type_elements_parameterContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterType_elements_parameter(this);
+ }
+};
+
+Type_elements_parameterContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitType_elements_parameter(this);
+ }
+};
+
+Type_elements_parameterContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitType_elements_parameter(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Type_elements_parameterContext = Type_elements_parameterContext;
+
+PlSqlParser.prototype.type_elements_parameter = function() {
+
+ var localctx = new Type_elements_parameterContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 164, PlSqlParser.RULE_type_elements_parameter);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2734;
+ this.parameter_name();
+ this.state = 2735;
+ this.type_spec();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Drop_sequenceContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_drop_sequence;
+ return this;
+}
+
+Drop_sequenceContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Drop_sequenceContext.prototype.constructor = Drop_sequenceContext;
+
+Drop_sequenceContext.prototype.DROP = function() {
+ return this.getToken(PlSqlParser.DROP, 0);
+};
+
+Drop_sequenceContext.prototype.SEQUENCE = function() {
+ return this.getToken(PlSqlParser.SEQUENCE, 0);
+};
+
+Drop_sequenceContext.prototype.sequence_name = function() {
+ return this.getTypedRuleContext(Sequence_nameContext,0);
+};
+
+Drop_sequenceContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Drop_sequenceContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterDrop_sequence(this);
+ }
+};
+
+Drop_sequenceContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitDrop_sequence(this);
+ }
+};
+
+Drop_sequenceContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitDrop_sequence(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Drop_sequenceContext = Drop_sequenceContext;
+
+PlSqlParser.prototype.drop_sequence = function() {
+
+ var localctx = new Drop_sequenceContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 166, PlSqlParser.RULE_drop_sequence);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2737;
+ this.match(PlSqlParser.DROP);
+ this.state = 2738;
+ this.match(PlSqlParser.SEQUENCE);
+ this.state = 2739;
+ this.sequence_name();
+ this.state = 2740;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Alter_sequenceContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_alter_sequence;
+ return this;
+}
+
+Alter_sequenceContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Alter_sequenceContext.prototype.constructor = Alter_sequenceContext;
+
+Alter_sequenceContext.prototype.ALTER = function() {
+ return this.getToken(PlSqlParser.ALTER, 0);
+};
+
+Alter_sequenceContext.prototype.SEQUENCE = function() {
+ return this.getToken(PlSqlParser.SEQUENCE, 0);
+};
+
+Alter_sequenceContext.prototype.sequence_name = function() {
+ return this.getTypedRuleContext(Sequence_nameContext,0);
+};
+
+Alter_sequenceContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Alter_sequenceContext.prototype.sequence_spec = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Sequence_specContext);
+ } else {
+ return this.getTypedRuleContext(Sequence_specContext,i);
+ }
+};
+
+Alter_sequenceContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAlter_sequence(this);
+ }
+};
+
+Alter_sequenceContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAlter_sequence(this);
+ }
+};
+
+Alter_sequenceContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAlter_sequence(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Alter_sequenceContext = Alter_sequenceContext;
+
+PlSqlParser.prototype.alter_sequence = function() {
+
+ var localctx = new Alter_sequenceContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 168, PlSqlParser.RULE_alter_sequence);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2742;
+ this.match(PlSqlParser.ALTER);
+ this.state = 2743;
+ this.match(PlSqlParser.SEQUENCE);
+ this.state = 2744;
+ this.sequence_name();
+ this.state = 2746;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 2745;
+ this.sequence_spec();
+ this.state = 2748;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(_la===PlSqlParser.CACHE || _la===PlSqlParser.CYCLE || _la===PlSqlParser.INCREMENT || _la===PlSqlParser.MAXVALUE || _la===PlSqlParser.MINVALUE || _la===PlSqlParser.NOCACHE || _la===PlSqlParser.NOCYCLE || ((((_la - 995)) & ~0x1f) == 0 && ((1 << (_la - 995)) & ((1 << (PlSqlParser.NOMAXVALUE - 995)) | (1 << (PlSqlParser.NOMINVALUE - 995)) | (1 << (PlSqlParser.NOORDER - 995)))) !== 0) || _la===PlSqlParser.ORDER);
+ this.state = 2750;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Alter_sessionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_alter_session;
+ return this;
+}
+
+Alter_sessionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Alter_sessionContext.prototype.constructor = Alter_sessionContext;
+
+Alter_sessionContext.prototype.ALTER = function() {
+ return this.getToken(PlSqlParser.ALTER, 0);
+};
+
+Alter_sessionContext.prototype.SESSION = function() {
+ return this.getToken(PlSqlParser.SESSION, 0);
+};
+
+Alter_sessionContext.prototype.ADVISE = function() {
+ return this.getToken(PlSqlParser.ADVISE, 0);
+};
+
+Alter_sessionContext.prototype.CLOSE = function() {
+ return this.getToken(PlSqlParser.CLOSE, 0);
+};
+
+Alter_sessionContext.prototype.DATABASE = function() {
+ return this.getToken(PlSqlParser.DATABASE, 0);
+};
+
+Alter_sessionContext.prototype.LINK = function() {
+ return this.getToken(PlSqlParser.LINK, 0);
+};
+
+Alter_sessionContext.prototype.parameter_name = function() {
+ return this.getTypedRuleContext(Parameter_nameContext,0);
+};
+
+Alter_sessionContext.prototype.enable_or_disable = function() {
+ return this.getTypedRuleContext(Enable_or_disableContext,0);
+};
+
+Alter_sessionContext.prototype.COMMIT = function() {
+ return this.getToken(PlSqlParser.COMMIT, 0);
+};
+
+Alter_sessionContext.prototype.IN = function() {
+ return this.getToken(PlSqlParser.IN, 0);
+};
+
+Alter_sessionContext.prototype.PROCEDURE = function() {
+ return this.getToken(PlSqlParser.PROCEDURE, 0);
+};
+
+Alter_sessionContext.prototype.GUARD = function() {
+ return this.getToken(PlSqlParser.GUARD, 0);
+};
+
+Alter_sessionContext.prototype.PARALLEL = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.PARALLEL);
+ } else {
+ return this.getToken(PlSqlParser.PARALLEL, i);
+ }
+};
+
+
+Alter_sessionContext.prototype.SET = function() {
+ return this.getToken(PlSqlParser.SET, 0);
+};
+
+Alter_sessionContext.prototype.alter_session_set_clause = function() {
+ return this.getTypedRuleContext(Alter_session_set_clauseContext,0);
+};
+
+Alter_sessionContext.prototype.ROLLBACK = function() {
+ return this.getToken(PlSqlParser.ROLLBACK, 0);
+};
+
+Alter_sessionContext.prototype.NOTHING = function() {
+ return this.getToken(PlSqlParser.NOTHING, 0);
+};
+
+Alter_sessionContext.prototype.DML = function() {
+ return this.getToken(PlSqlParser.DML, 0);
+};
+
+Alter_sessionContext.prototype.DDL = function() {
+ return this.getToken(PlSqlParser.DDL, 0);
+};
+
+Alter_sessionContext.prototype.QUERY = function() {
+ return this.getToken(PlSqlParser.QUERY, 0);
+};
+
+Alter_sessionContext.prototype.FORCE = function() {
+ return this.getToken(PlSqlParser.FORCE, 0);
+};
+
+Alter_sessionContext.prototype.literal = function() {
+ return this.getTypedRuleContext(LiteralContext,0);
+};
+
+Alter_sessionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAlter_session(this);
+ }
+};
+
+Alter_sessionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAlter_session(this);
+ }
+};
+
+Alter_sessionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAlter_session(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Alter_sessionContext = Alter_sessionContext;
+
+PlSqlParser.prototype.alter_session = function() {
+
+ var localctx = new Alter_sessionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 170, PlSqlParser.RULE_alter_session);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2752;
+ this.match(PlSqlParser.ALTER);
+ this.state = 2753;
+ this.match(PlSqlParser.SESSION);
+ this.state = 2783;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,185,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 2754;
+ this.match(PlSqlParser.ADVISE);
+ this.state = 2755;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.COMMIT || _la===PlSqlParser.NOTHING || _la===PlSqlParser.ROLLBACK)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+
+ case 2:
+ this.state = 2756;
+ this.match(PlSqlParser.CLOSE);
+ this.state = 2757;
+ this.match(PlSqlParser.DATABASE);
+ this.state = 2758;
+ this.match(PlSqlParser.LINK);
+ this.state = 2759;
+ this.parameter_name();
+ break;
+
+ case 3:
+ this.state = 2760;
+ this.enable_or_disable();
+ this.state = 2761;
+ this.match(PlSqlParser.COMMIT);
+ this.state = 2762;
+ this.match(PlSqlParser.IN);
+ this.state = 2763;
+ this.match(PlSqlParser.PROCEDURE);
+ break;
+
+ case 4:
+ this.state = 2765;
+ this.enable_or_disable();
+ this.state = 2766;
+ this.match(PlSqlParser.GUARD);
+ break;
+
+ case 5:
+ this.state = 2770;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.DISABLE:
+ case PlSqlParser.ENABLE:
+ this.state = 2768;
+ this.enable_or_disable();
+ break;
+ case PlSqlParser.FORCE:
+ this.state = 2769;
+ this.match(PlSqlParser.FORCE);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 2772;
+ this.match(PlSqlParser.PARALLEL);
+ this.state = 2773;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.DDL || _la===PlSqlParser.DML || _la===PlSqlParser.QUERY)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 2779;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,184,this._ctx);
+ if(la_===1) {
+ this.state = 2774;
+ this.match(PlSqlParser.PARALLEL);
+ this.state = 2777;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,183,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 2775;
+ this.literal();
+ break;
+
+ case 2:
+ this.state = 2776;
+ this.parameter_name();
+ break;
+
+ }
+
+ }
+ break;
+
+ case 6:
+ this.state = 2781;
+ this.match(PlSqlParser.SET);
+ this.state = 2782;
+ this.alter_session_set_clause();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Alter_session_set_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_alter_session_set_clause;
+ return this;
+}
+
+Alter_session_set_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Alter_session_set_clauseContext.prototype.constructor = Alter_session_set_clauseContext;
+
+Alter_session_set_clauseContext.prototype.parameter_name = function() {
+ return this.getTypedRuleContext(Parameter_nameContext,0);
+};
+
+Alter_session_set_clauseContext.prototype.EQUALS_OP = function() {
+ return this.getToken(PlSqlParser.EQUALS_OP, 0);
+};
+
+Alter_session_set_clauseContext.prototype.parameter_value = function() {
+ return this.getTypedRuleContext(Parameter_valueContext,0);
+};
+
+Alter_session_set_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAlter_session_set_clause(this);
+ }
+};
+
+Alter_session_set_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAlter_session_set_clause(this);
+ }
+};
+
+Alter_session_set_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAlter_session_set_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Alter_session_set_clauseContext = Alter_session_set_clauseContext;
+
+PlSqlParser.prototype.alter_session_set_clause = function() {
+
+ var localctx = new Alter_session_set_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 172, PlSqlParser.RULE_alter_session_set_clause);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2785;
+ this.parameter_name();
+ this.state = 2786;
+ this.match(PlSqlParser.EQUALS_OP);
+ this.state = 2787;
+ this.parameter_value();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_sequenceContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_create_sequence;
+ return this;
+}
+
+Create_sequenceContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_sequenceContext.prototype.constructor = Create_sequenceContext;
+
+Create_sequenceContext.prototype.CREATE = function() {
+ return this.getToken(PlSqlParser.CREATE, 0);
+};
+
+Create_sequenceContext.prototype.SEQUENCE = function() {
+ return this.getToken(PlSqlParser.SEQUENCE, 0);
+};
+
+Create_sequenceContext.prototype.sequence_name = function() {
+ return this.getTypedRuleContext(Sequence_nameContext,0);
+};
+
+Create_sequenceContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Create_sequenceContext.prototype.sequence_start_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Sequence_start_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Sequence_start_clauseContext,i);
+ }
+};
+
+Create_sequenceContext.prototype.sequence_spec = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Sequence_specContext);
+ } else {
+ return this.getTypedRuleContext(Sequence_specContext,i);
+ }
+};
+
+Create_sequenceContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterCreate_sequence(this);
+ }
+};
+
+Create_sequenceContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitCreate_sequence(this);
+ }
+};
+
+Create_sequenceContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitCreate_sequence(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Create_sequenceContext = Create_sequenceContext;
+
+PlSqlParser.prototype.create_sequence = function() {
+
+ var localctx = new Create_sequenceContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 174, PlSqlParser.RULE_create_sequence);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2789;
+ this.match(PlSqlParser.CREATE);
+ this.state = 2790;
+ this.match(PlSqlParser.SEQUENCE);
+ this.state = 2791;
+ this.sequence_name();
+ this.state = 2796;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.CACHE || _la===PlSqlParser.CYCLE || _la===PlSqlParser.INCREMENT || _la===PlSqlParser.MAXVALUE || _la===PlSqlParser.MINVALUE || _la===PlSqlParser.NOCACHE || _la===PlSqlParser.NOCYCLE || ((((_la - 995)) & ~0x1f) == 0 && ((1 << (_la - 995)) & ((1 << (PlSqlParser.NOMAXVALUE - 995)) | (1 << (PlSqlParser.NOMINVALUE - 995)) | (1 << (PlSqlParser.NOORDER - 995)))) !== 0) || _la===PlSqlParser.ORDER || _la===PlSqlParser.START) {
+ this.state = 2794;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.START:
+ this.state = 2792;
+ this.sequence_start_clause();
+ break;
+ case PlSqlParser.CACHE:
+ case PlSqlParser.CYCLE:
+ case PlSqlParser.INCREMENT:
+ case PlSqlParser.MAXVALUE:
+ case PlSqlParser.MINVALUE:
+ case PlSqlParser.NOCACHE:
+ case PlSqlParser.NOCYCLE:
+ case PlSqlParser.NOMAXVALUE:
+ case PlSqlParser.NOMINVALUE:
+ case PlSqlParser.NOORDER:
+ case PlSqlParser.ORDER:
+ this.state = 2793;
+ this.sequence_spec();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 2798;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 2799;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Sequence_specContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_sequence_spec;
+ return this;
+}
+
+Sequence_specContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Sequence_specContext.prototype.constructor = Sequence_specContext;
+
+Sequence_specContext.prototype.INCREMENT = function() {
+ return this.getToken(PlSqlParser.INCREMENT, 0);
+};
+
+Sequence_specContext.prototype.BY = function() {
+ return this.getToken(PlSqlParser.BY, 0);
+};
+
+Sequence_specContext.prototype.UNSIGNED_INTEGER = function() {
+ return this.getToken(PlSqlParser.UNSIGNED_INTEGER, 0);
+};
+
+Sequence_specContext.prototype.MAXVALUE = function() {
+ return this.getToken(PlSqlParser.MAXVALUE, 0);
+};
+
+Sequence_specContext.prototype.NOMAXVALUE = function() {
+ return this.getToken(PlSqlParser.NOMAXVALUE, 0);
+};
+
+Sequence_specContext.prototype.MINVALUE = function() {
+ return this.getToken(PlSqlParser.MINVALUE, 0);
+};
+
+Sequence_specContext.prototype.NOMINVALUE = function() {
+ return this.getToken(PlSqlParser.NOMINVALUE, 0);
+};
+
+Sequence_specContext.prototype.CYCLE = function() {
+ return this.getToken(PlSqlParser.CYCLE, 0);
+};
+
+Sequence_specContext.prototype.NOCYCLE = function() {
+ return this.getToken(PlSqlParser.NOCYCLE, 0);
+};
+
+Sequence_specContext.prototype.CACHE = function() {
+ return this.getToken(PlSqlParser.CACHE, 0);
+};
+
+Sequence_specContext.prototype.NOCACHE = function() {
+ return this.getToken(PlSqlParser.NOCACHE, 0);
+};
+
+Sequence_specContext.prototype.ORDER = function() {
+ return this.getToken(PlSqlParser.ORDER, 0);
+};
+
+Sequence_specContext.prototype.NOORDER = function() {
+ return this.getToken(PlSqlParser.NOORDER, 0);
+};
+
+Sequence_specContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterSequence_spec(this);
+ }
+};
+
+Sequence_specContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitSequence_spec(this);
+ }
+};
+
+Sequence_specContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitSequence_spec(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Sequence_specContext = Sequence_specContext;
+
+PlSqlParser.prototype.sequence_spec = function() {
+
+ var localctx = new Sequence_specContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 176, PlSqlParser.RULE_sequence_spec);
+ try {
+ this.state = 2817;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.INCREMENT:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2801;
+ this.match(PlSqlParser.INCREMENT);
+ this.state = 2802;
+ this.match(PlSqlParser.BY);
+ this.state = 2803;
+ this.match(PlSqlParser.UNSIGNED_INTEGER);
+ break;
+ case PlSqlParser.MAXVALUE:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 2804;
+ this.match(PlSqlParser.MAXVALUE);
+ this.state = 2805;
+ this.match(PlSqlParser.UNSIGNED_INTEGER);
+ break;
+ case PlSqlParser.NOMAXVALUE:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 2806;
+ this.match(PlSqlParser.NOMAXVALUE);
+ break;
+ case PlSqlParser.MINVALUE:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 2807;
+ this.match(PlSqlParser.MINVALUE);
+ this.state = 2808;
+ this.match(PlSqlParser.UNSIGNED_INTEGER);
+ break;
+ case PlSqlParser.NOMINVALUE:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 2809;
+ this.match(PlSqlParser.NOMINVALUE);
+ break;
+ case PlSqlParser.CYCLE:
+ this.enterOuterAlt(localctx, 6);
+ this.state = 2810;
+ this.match(PlSqlParser.CYCLE);
+ break;
+ case PlSqlParser.NOCYCLE:
+ this.enterOuterAlt(localctx, 7);
+ this.state = 2811;
+ this.match(PlSqlParser.NOCYCLE);
+ break;
+ case PlSqlParser.CACHE:
+ this.enterOuterAlt(localctx, 8);
+ this.state = 2812;
+ this.match(PlSqlParser.CACHE);
+ this.state = 2813;
+ this.match(PlSqlParser.UNSIGNED_INTEGER);
+ break;
+ case PlSqlParser.NOCACHE:
+ this.enterOuterAlt(localctx, 9);
+ this.state = 2814;
+ this.match(PlSqlParser.NOCACHE);
+ break;
+ case PlSqlParser.ORDER:
+ this.enterOuterAlt(localctx, 10);
+ this.state = 2815;
+ this.match(PlSqlParser.ORDER);
+ break;
+ case PlSqlParser.NOORDER:
+ this.enterOuterAlt(localctx, 11);
+ this.state = 2816;
+ this.match(PlSqlParser.NOORDER);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Sequence_start_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_sequence_start_clause;
+ return this;
+}
+
+Sequence_start_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Sequence_start_clauseContext.prototype.constructor = Sequence_start_clauseContext;
+
+Sequence_start_clauseContext.prototype.START = function() {
+ return this.getToken(PlSqlParser.START, 0);
+};
+
+Sequence_start_clauseContext.prototype.WITH = function() {
+ return this.getToken(PlSqlParser.WITH, 0);
+};
+
+Sequence_start_clauseContext.prototype.UNSIGNED_INTEGER = function() {
+ return this.getToken(PlSqlParser.UNSIGNED_INTEGER, 0);
+};
+
+Sequence_start_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterSequence_start_clause(this);
+ }
+};
+
+Sequence_start_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitSequence_start_clause(this);
+ }
+};
+
+Sequence_start_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitSequence_start_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Sequence_start_clauseContext = Sequence_start_clauseContext;
+
+PlSqlParser.prototype.sequence_start_clause = function() {
+
+ var localctx = new Sequence_start_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 178, PlSqlParser.RULE_sequence_start_clause);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2819;
+ this.match(PlSqlParser.START);
+ this.state = 2820;
+ this.match(PlSqlParser.WITH);
+ this.state = 2821;
+ this.match(PlSqlParser.UNSIGNED_INTEGER);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_indexContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_create_index;
+ return this;
+}
+
+Create_indexContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_indexContext.prototype.constructor = Create_indexContext;
+
+Create_indexContext.prototype.CREATE = function() {
+ return this.getToken(PlSqlParser.CREATE, 0);
+};
+
+Create_indexContext.prototype.INDEX = function() {
+ return this.getToken(PlSqlParser.INDEX, 0);
+};
+
+Create_indexContext.prototype.index_name = function() {
+ return this.getTypedRuleContext(Index_nameContext,0);
+};
+
+Create_indexContext.prototype.ON = function() {
+ return this.getToken(PlSqlParser.ON, 0);
+};
+
+Create_indexContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Create_indexContext.prototype.cluster_index_clause = function() {
+ return this.getTypedRuleContext(Cluster_index_clauseContext,0);
+};
+
+Create_indexContext.prototype.table_index_clause = function() {
+ return this.getTypedRuleContext(Table_index_clauseContext,0);
+};
+
+Create_indexContext.prototype.bitmap_join_index_clause = function() {
+ return this.getTypedRuleContext(Bitmap_join_index_clauseContext,0);
+};
+
+Create_indexContext.prototype.UNUSABLE = function() {
+ return this.getToken(PlSqlParser.UNUSABLE, 0);
+};
+
+Create_indexContext.prototype.UNIQUE = function() {
+ return this.getToken(PlSqlParser.UNIQUE, 0);
+};
+
+Create_indexContext.prototype.BITMAP = function() {
+ return this.getToken(PlSqlParser.BITMAP, 0);
+};
+
+Create_indexContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterCreate_index(this);
+ }
+};
+
+Create_indexContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitCreate_index(this);
+ }
+};
+
+Create_indexContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitCreate_index(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Create_indexContext = Create_indexContext;
+
+PlSqlParser.prototype.create_index = function() {
+
+ var localctx = new Create_indexContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 180, PlSqlParser.RULE_create_index);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2823;
+ this.match(PlSqlParser.CREATE);
+ this.state = 2825;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.BITMAP || _la===PlSqlParser.UNIQUE) {
+ this.state = 2824;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.BITMAP || _la===PlSqlParser.UNIQUE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 2827;
+ this.match(PlSqlParser.INDEX);
+ this.state = 2828;
+ this.index_name();
+ this.state = 2829;
+ this.match(PlSqlParser.ON);
+ this.state = 2833;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,190,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 2830;
+ this.cluster_index_clause();
+ break;
+
+ case 2:
+ this.state = 2831;
+ this.table_index_clause();
+ break;
+
+ case 3:
+ this.state = 2832;
+ this.bitmap_join_index_clause();
+ break;
+
+ }
+ this.state = 2836;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.UNUSABLE) {
+ this.state = 2835;
+ this.match(PlSqlParser.UNUSABLE);
+ }
+
+ this.state = 2838;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Cluster_index_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_cluster_index_clause;
+ return this;
+}
+
+Cluster_index_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Cluster_index_clauseContext.prototype.constructor = Cluster_index_clauseContext;
+
+Cluster_index_clauseContext.prototype.CLUSTER = function() {
+ return this.getToken(PlSqlParser.CLUSTER, 0);
+};
+
+Cluster_index_clauseContext.prototype.cluster_name = function() {
+ return this.getTypedRuleContext(Cluster_nameContext,0);
+};
+
+Cluster_index_clauseContext.prototype.index_attributes = function() {
+ return this.getTypedRuleContext(Index_attributesContext,0);
+};
+
+Cluster_index_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterCluster_index_clause(this);
+ }
+};
+
+Cluster_index_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitCluster_index_clause(this);
+ }
+};
+
+Cluster_index_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitCluster_index_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Cluster_index_clauseContext = Cluster_index_clauseContext;
+
+PlSqlParser.prototype.cluster_index_clause = function() {
+
+ var localctx = new Cluster_index_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 182, PlSqlParser.RULE_cluster_index_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2840;
+ this.match(PlSqlParser.CLUSTER);
+ this.state = 2841;
+ this.cluster_name();
+ this.state = 2843;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.COMPRESS || _la===PlSqlParser.FILESYSTEM_LIKE_LOGGING || _la===PlSqlParser.INITRANS || _la===PlSqlParser.INVISIBLE || _la===PlSqlParser.LOGGING || _la===PlSqlParser.NOCOMPRESS || _la===PlSqlParser.NOLOGGING || _la===PlSqlParser.NOPARALLEL || _la===PlSqlParser.NOSORT || _la===PlSqlParser.PARALLEL || _la===PlSqlParser.PCTFREE || _la===PlSqlParser.PCTUSED || _la===PlSqlParser.REVERSE || _la===PlSqlParser.SORT || _la===PlSqlParser.STORAGE || _la===PlSqlParser.TABLESPACE || _la===PlSqlParser.VISIBLE) {
+ this.state = 2842;
+ this.index_attributes();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Cluster_nameContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_cluster_name;
+ return this;
+}
+
+Cluster_nameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Cluster_nameContext.prototype.constructor = Cluster_nameContext;
+
+Cluster_nameContext.prototype.id_expression = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Id_expressionContext);
+ } else {
+ return this.getTypedRuleContext(Id_expressionContext,i);
+ }
+};
+
+Cluster_nameContext.prototype.PERIOD = function() {
+ return this.getToken(PlSqlParser.PERIOD, 0);
+};
+
+Cluster_nameContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterCluster_name(this);
+ }
+};
+
+Cluster_nameContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitCluster_name(this);
+ }
+};
+
+Cluster_nameContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitCluster_name(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Cluster_nameContext = Cluster_nameContext;
+
+PlSqlParser.prototype.cluster_name = function() {
+
+ var localctx = new Cluster_nameContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 184, PlSqlParser.RULE_cluster_name);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2848;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,193,this._ctx);
+ if(la_===1) {
+ this.state = 2845;
+ this.id_expression();
+ this.state = 2846;
+ this.match(PlSqlParser.PERIOD);
+
+ }
+ this.state = 2850;
+ this.id_expression();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Table_index_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_table_index_clause;
+ return this;
+}
+
+Table_index_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Table_index_clauseContext.prototype.constructor = Table_index_clauseContext;
+
+Table_index_clauseContext.prototype.tableview_name = function() {
+ return this.getTypedRuleContext(Tableview_nameContext,0);
+};
+
+Table_index_clauseContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Table_index_clauseContext.prototype.index_expr = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Index_exprContext);
+ } else {
+ return this.getTypedRuleContext(Index_exprContext,i);
+ }
+};
+
+Table_index_clauseContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Table_index_clauseContext.prototype.table_alias = function() {
+ return this.getTypedRuleContext(Table_aliasContext,0);
+};
+
+Table_index_clauseContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Table_index_clauseContext.prototype.index_properties = function() {
+ return this.getTypedRuleContext(Index_propertiesContext,0);
+};
+
+Table_index_clauseContext.prototype.ASC = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.ASC);
+ } else {
+ return this.getToken(PlSqlParser.ASC, i);
+ }
+};
+
+
+Table_index_clauseContext.prototype.DESC = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.DESC);
+ } else {
+ return this.getToken(PlSqlParser.DESC, i);
+ }
+};
+
+
+Table_index_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterTable_index_clause(this);
+ }
+};
+
+Table_index_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitTable_index_clause(this);
+ }
+};
+
+Table_index_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitTable_index_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Table_index_clauseContext = Table_index_clauseContext;
+
+PlSqlParser.prototype.table_index_clause = function() {
+
+ var localctx = new Table_index_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 186, PlSqlParser.RULE_table_index_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2852;
+ this.tableview_name();
+ this.state = 2854;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if((((_la) & ~0x1f) == 0 && ((1 << _la) & ((1 << PlSqlParser.ABORT) | (1 << PlSqlParser.ABS) | (1 << PlSqlParser.ACCESS) | (1 << PlSqlParser.ACCESSED) | (1 << PlSqlParser.ACCOUNT) | (1 << PlSqlParser.ACL) | (1 << PlSqlParser.ACOS) | (1 << PlSqlParser.ACTION) | (1 << PlSqlParser.ACTIONS) | (1 << PlSqlParser.ACTIVATE) | (1 << PlSqlParser.ACTIVE) | (1 << PlSqlParser.ACTIVE_COMPONENT) | (1 << PlSqlParser.ACTIVE_DATA) | (1 << PlSqlParser.ACTIVE_FUNCTION) | (1 << PlSqlParser.ACTIVE_TAG) | (1 << PlSqlParser.ACTIVITY) | (1 << PlSqlParser.ADAPTIVE_PLAN) | (1 << PlSqlParser.ADD) | (1 << PlSqlParser.ADD_COLUMN) | (1 << PlSqlParser.ADD_GROUP) | (1 << PlSqlParser.ADD_MONTHS) | (1 << PlSqlParser.ADJ_DATE) | (1 << PlSqlParser.ADMIN) | (1 << PlSqlParser.ADMINISTER) | (1 << PlSqlParser.ADMINISTRATOR) | (1 << PlSqlParser.ADVANCED) | (1 << PlSqlParser.ADVISE) | (1 << PlSqlParser.ADVISOR) | (1 << PlSqlParser.AFD_DISKSTRING) | (1 << PlSqlParser.AFTER) | (1 << PlSqlParser.AGENT))) !== 0) || ((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (PlSqlParser.AGGREGATE - 32)) | (1 << (PlSqlParser.A_LETTER - 32)) | (1 << (PlSqlParser.ALIAS - 32)) | (1 << (PlSqlParser.ALLOCATE - 32)) | (1 << (PlSqlParser.ALLOW - 32)) | (1 << (PlSqlParser.ALL_ROWS - 32)) | (1 << (PlSqlParser.ALWAYS - 32)) | (1 << (PlSqlParser.ANALYZE - 32)) | (1 << (PlSqlParser.ANCILLARY - 32)) | (1 << (PlSqlParser.AND_EQUAL - 32)) | (1 << (PlSqlParser.ANOMALY - 32)) | (1 << (PlSqlParser.ANSI_REARCH - 32)) | (1 << (PlSqlParser.ANTIJOIN - 32)) | (1 << (PlSqlParser.ANYSCHEMA - 32)) | (1 << (PlSqlParser.APPEND - 32)) | (1 << (PlSqlParser.APPENDCHILDXML - 32)) | (1 << (PlSqlParser.APPEND_VALUES - 32)) | (1 << (PlSqlParser.APPLICATION - 32)) | (1 << (PlSqlParser.APPLY - 32)) | (1 << (PlSqlParser.APPROX_COUNT_DISTINCT - 32)) | (1 << (PlSqlParser.ARCHIVAL - 32)) | (1 << (PlSqlParser.ARCHIVE - 32)) | (1 << (PlSqlParser.ARCHIVED - 32)) | (1 << (PlSqlParser.ARCHIVELOG - 32)) | (1 << (PlSqlParser.ARRAY - 32)) | (1 << (PlSqlParser.ASCII - 32)))) !== 0) || ((((_la - 64)) & ~0x1f) == 0 && ((1 << (_la - 64)) & ((1 << (PlSqlParser.ASCIISTR - 64)) | (1 << (PlSqlParser.ASIN - 64)) | (1 << (PlSqlParser.ASIS - 64)) | (1 << (PlSqlParser.ASSEMBLY - 64)) | (1 << (PlSqlParser.ASSIGN - 64)) | (1 << (PlSqlParser.ASSOCIATE - 64)) | (1 << (PlSqlParser.ASYNC - 64)) | (1 << (PlSqlParser.ASYNCHRONOUS - 64)) | (1 << (PlSqlParser.ATAN2 - 64)) | (1 << (PlSqlParser.ATAN - 64)) | (1 << (PlSqlParser.AT - 64)) | (1 << (PlSqlParser.ATTRIBUTE - 64)) | (1 << (PlSqlParser.ATTRIBUTES - 64)) | (1 << (PlSqlParser.AUTHENTICATED - 64)) | (1 << (PlSqlParser.AUTHENTICATION - 64)) | (1 << (PlSqlParser.AUTHID - 64)) | (1 << (PlSqlParser.AUTHORIZATION - 64)) | (1 << (PlSqlParser.AUTOALLOCATE - 64)) | (1 << (PlSqlParser.AUTO - 64)) | (1 << (PlSqlParser.AUTOEXTEND - 64)) | (1 << (PlSqlParser.AUTO_LOGIN - 64)) | (1 << (PlSqlParser.AUTOMATIC - 64)) | (1 << (PlSqlParser.AUTONOMOUS_TRANSACTION - 64)) | (1 << (PlSqlParser.AUTO_REOPTIMIZE - 64)) | (1 << (PlSqlParser.AVAILABILITY - 64)) | (1 << (PlSqlParser.AVRO - 64)) | (1 << (PlSqlParser.BACKGROUND - 64)) | (1 << (PlSqlParser.BACKUP - 64)) | (1 << (PlSqlParser.BASIC - 64)))) !== 0) || ((((_la - 96)) & ~0x1f) == 0 && ((1 << (_la - 96)) & ((1 << (PlSqlParser.BASICFILE - 96)) | (1 << (PlSqlParser.BATCH - 96)) | (1 << (PlSqlParser.BATCHSIZE - 96)) | (1 << (PlSqlParser.BATCH_TABLE_ACCESS_BY_ROWID - 96)) | (1 << (PlSqlParser.BECOME - 96)) | (1 << (PlSqlParser.BEFORE - 96)) | (1 << (PlSqlParser.BEGIN - 96)) | (1 << (PlSqlParser.BEGINNING - 96)) | (1 << (PlSqlParser.BEGIN_OUTLINE_DATA - 96)) | (1 << (PlSqlParser.BEHALF - 96)) | (1 << (PlSqlParser.BEQUEATH - 96)) | (1 << (PlSqlParser.BFILE - 96)) | (1 << (PlSqlParser.BFILENAME - 96)) | (1 << (PlSqlParser.BIGFILE - 96)) | (1 << (PlSqlParser.BINARY - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE_INFINITY - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE_NAN - 96)) | (1 << (PlSqlParser.BINARY_FLOAT - 96)) | (1 << (PlSqlParser.BINARY_FLOAT_INFINITY - 96)) | (1 << (PlSqlParser.BINARY_FLOAT_NAN - 96)) | (1 << (PlSqlParser.BINARY_INTEGER - 96)) | (1 << (PlSqlParser.BIND_AWARE - 96)) | (1 << (PlSqlParser.BINDING - 96)) | (1 << (PlSqlParser.BIN_TO_NUM - 96)) | (1 << (PlSqlParser.BITAND - 96)) | (1 << (PlSqlParser.BITMAP_AND - 96)) | (1 << (PlSqlParser.BITMAP - 96)) | (1 << (PlSqlParser.BITMAPS - 96)) | (1 << (PlSqlParser.BITMAP_TREE - 96)) | (1 << (PlSqlParser.BITS - 96)))) !== 0) || ((((_la - 128)) & ~0x1f) == 0 && ((1 << (_la - 128)) & ((1 << (PlSqlParser.BLOB - 128)) | (1 << (PlSqlParser.BLOCK - 128)) | (1 << (PlSqlParser.BLOCK_RANGE - 128)) | (1 << (PlSqlParser.BLOCKS - 128)) | (1 << (PlSqlParser.BLOCKSIZE - 128)) | (1 << (PlSqlParser.BODY - 128)) | (1 << (PlSqlParser.BOOLEAN - 128)) | (1 << (PlSqlParser.BOTH - 128)) | (1 << (PlSqlParser.BOUND - 128)) | (1 << (PlSqlParser.BRANCH - 128)) | (1 << (PlSqlParser.BREADTH - 128)) | (1 << (PlSqlParser.BROADCAST - 128)) | (1 << (PlSqlParser.BSON - 128)) | (1 << (PlSqlParser.BUFFER - 128)) | (1 << (PlSqlParser.BUFFER_CACHE - 128)) | (1 << (PlSqlParser.BUFFER_POOL - 128)) | (1 << (PlSqlParser.BUILD - 128)) | (1 << (PlSqlParser.BULK - 128)) | (1 << (PlSqlParser.BYPASS_RECURSIVE_CHECK - 128)) | (1 << (PlSqlParser.BYPASS_UJVC - 128)) | (1 << (PlSqlParser.BYTE - 128)) | (1 << (PlSqlParser.CACHE - 128)) | (1 << (PlSqlParser.CACHE_CB - 128)) | (1 << (PlSqlParser.CACHE_INSTANCES - 128)) | (1 << (PlSqlParser.CACHE_TEMP_TABLE - 128)) | (1 << (PlSqlParser.CACHING - 128)) | (1 << (PlSqlParser.CALCULATED - 128)) | (1 << (PlSqlParser.CALLBACK - 128)) | (1 << (PlSqlParser.CALL - 128)) | (1 << (PlSqlParser.CANCEL - 128)))) !== 0) || ((((_la - 160)) & ~0x1f) == 0 && ((1 << (_la - 160)) & ((1 << (PlSqlParser.CAPACITY - 160)) | (1 << (PlSqlParser.CARDINALITY - 160)) | (1 << (PlSqlParser.CASCADE - 160)) | (1 << (PlSqlParser.CASE - 160)) | (1 << (PlSqlParser.CAST - 160)) | (1 << (PlSqlParser.CATEGORY - 160)) | (1 << (PlSqlParser.CDBDEFAULT - 160)) | (1 << (PlSqlParser.CEIL - 160)) | (1 << (PlSqlParser.CELL_FLASH_CACHE - 160)) | (1 << (PlSqlParser.CERTIFICATE - 160)) | (1 << (PlSqlParser.CFILE - 160)) | (1 << (PlSqlParser.CHAINED - 160)) | (1 << (PlSqlParser.CHANGE - 160)) | (1 << (PlSqlParser.CHANGE_DUPKEY_ERROR_INDEX - 160)) | (1 << (PlSqlParser.CHARACTER - 160)) | (1 << (PlSqlParser.CHAR - 160)) | (1 << (PlSqlParser.CHAR_CS - 160)) | (1 << (PlSqlParser.CHARTOROWID - 160)) | (1 << (PlSqlParser.CHECK_ACL_REWRITE - 160)) | (1 << (PlSqlParser.CHECKPOINT - 160)) | (1 << (PlSqlParser.CHILD - 160)) | (1 << (PlSqlParser.CHOOSE - 160)) | (1 << (PlSqlParser.CHR - 160)) | (1 << (PlSqlParser.CHUNK - 160)) | (1 << (PlSqlParser.CLASS - 160)) | (1 << (PlSqlParser.CLASSIFIER - 160)) | (1 << (PlSqlParser.CLEANUP - 160)) | (1 << (PlSqlParser.CLEAR - 160)) | (1 << (PlSqlParser.C_LETTER - 160)) | (1 << (PlSqlParser.CLIENT - 160)))) !== 0) || ((((_la - 192)) & ~0x1f) == 0 && ((1 << (_la - 192)) & ((1 << (PlSqlParser.CLOB - 192)) | (1 << (PlSqlParser.CLONE - 192)) | (1 << (PlSqlParser.CLOSE_CACHED_OPEN_CURSORS - 192)) | (1 << (PlSqlParser.CLOSE - 192)) | (1 << (PlSqlParser.CLUSTER_BY_ROWID - 192)) | (1 << (PlSqlParser.CLUSTER - 192)) | (1 << (PlSqlParser.CLUSTER_DETAILS - 192)) | (1 << (PlSqlParser.CLUSTER_DISTANCE - 192)) | (1 << (PlSqlParser.CLUSTER_ID - 192)) | (1 << (PlSqlParser.CLUSTERING - 192)) | (1 << (PlSqlParser.CLUSTERING_FACTOR - 192)) | (1 << (PlSqlParser.CLUSTER_PROBABILITY - 192)) | (1 << (PlSqlParser.CLUSTER_SET - 192)) | (1 << (PlSqlParser.COALESCE - 192)) | (1 << (PlSqlParser.COALESCE_SQ - 192)) | (1 << (PlSqlParser.COARSE - 192)) | (1 << (PlSqlParser.CO_AUTH_IND - 192)) | (1 << (PlSqlParser.COLD - 192)) | (1 << (PlSqlParser.COLLECT - 192)) | (1 << (PlSqlParser.COLUMNAR - 192)) | (1 << (PlSqlParser.COLUMN_AUTH_INDICATOR - 192)) | (1 << (PlSqlParser.COLUMN - 192)) | (1 << (PlSqlParser.COLUMNS - 192)) | (1 << (PlSqlParser.COLUMN_STATS - 192)) | (1 << (PlSqlParser.COLUMN_VALUE - 192)) | (1 << (PlSqlParser.COMMENT - 192)) | (1 << (PlSqlParser.COMMIT - 192)) | (1 << (PlSqlParser.COMMITTED - 192)) | (1 << (PlSqlParser.COMMON_DATA - 192)) | (1 << (PlSqlParser.COMPACT - 192)) | (1 << (PlSqlParser.COMPATIBILITY - 192)) | (1 << (PlSqlParser.COMPILE - 192)))) !== 0) || ((((_la - 224)) & ~0x1f) == 0 && ((1 << (_la - 224)) & ((1 << (PlSqlParser.COMPLETE - 224)) | (1 << (PlSqlParser.COMPLIANCE - 224)) | (1 << (PlSqlParser.COMPONENT - 224)) | (1 << (PlSqlParser.COMPONENTS - 224)) | (1 << (PlSqlParser.COMPOSE - 224)) | (1 << (PlSqlParser.COMPOSITE - 224)) | (1 << (PlSqlParser.COMPOSITE_LIMIT - 224)) | (1 << (PlSqlParser.COMPOUND - 224)) | (1 << (PlSqlParser.COMPUTE - 224)) | (1 << (PlSqlParser.CONCAT - 224)) | (1 << (PlSqlParser.CON_DBID_TO_ID - 224)) | (1 << (PlSqlParser.CONDITIONAL - 224)) | (1 << (PlSqlParser.CONDITION - 224)) | (1 << (PlSqlParser.CONFIRM - 224)) | (1 << (PlSqlParser.CONFORMING - 224)) | (1 << (PlSqlParser.CON_GUID_TO_ID - 224)) | (1 << (PlSqlParser.CON_ID - 224)) | (1 << (PlSqlParser.CON_NAME_TO_ID - 224)) | (1 << (PlSqlParser.CONNECT_BY_CB_WHR_ONLY - 224)) | (1 << (PlSqlParser.CONNECT_BY_COMBINE_SW - 224)) | (1 << (PlSqlParser.CONNECT_BY_COST_BASED - 224)) | (1 << (PlSqlParser.CONNECT_BY_ELIM_DUPS - 224)) | (1 << (PlSqlParser.CONNECT_BY_FILTERING - 224)) | (1 << (PlSqlParser.CONNECT_BY_ISCYCLE - 224)) | (1 << (PlSqlParser.CONNECT_BY_ISLEAF - 224)) | (1 << (PlSqlParser.CONNECT_BY_ROOT - 224)) | (1 << (PlSqlParser.CONNECT_TIME - 224)) | (1 << (PlSqlParser.CONSIDER - 224)) | (1 << (PlSqlParser.CONSISTENT - 224)) | (1 << (PlSqlParser.CONSTANT - 224)))) !== 0) || ((((_la - 256)) & ~0x1f) == 0 && ((1 << (_la - 256)) & ((1 << (PlSqlParser.CONST - 256)) | (1 << (PlSqlParser.CONSTRAINT - 256)) | (1 << (PlSqlParser.CONSTRAINTS - 256)) | (1 << (PlSqlParser.CONSTRUCTOR - 256)) | (1 << (PlSqlParser.CONTAINER - 256)) | (1 << (PlSqlParser.CONTAINER_DATA - 256)) | (1 << (PlSqlParser.CONTAINERS - 256)) | (1 << (PlSqlParser.CONTENT - 256)) | (1 << (PlSqlParser.CONTENTS - 256)) | (1 << (PlSqlParser.CONTEXT - 256)) | (1 << (PlSqlParser.CONTINUE - 256)) | (1 << (PlSqlParser.CONTROLFILE - 256)) | (1 << (PlSqlParser.CON_UID_TO_ID - 256)) | (1 << (PlSqlParser.CONVERT - 256)) | (1 << (PlSqlParser.COOKIE - 256)) | (1 << (PlSqlParser.COPY - 256)) | (1 << (PlSqlParser.CORR_K - 256)) | (1 << (PlSqlParser.CORR_S - 256)) | (1 << (PlSqlParser.CORRUPTION - 256)) | (1 << (PlSqlParser.CORRUPT_XID_ALL - 256)) | (1 << (PlSqlParser.CORRUPT_XID - 256)) | (1 << (PlSqlParser.COS - 256)) | (1 << (PlSqlParser.COSH - 256)) | (1 << (PlSqlParser.COST - 256)) | (1 << (PlSqlParser.COST_XML_QUERY_REWRITE - 256)) | (1 << (PlSqlParser.COUNT - 256)) | (1 << (PlSqlParser.COVAR_POP - 256)) | (1 << (PlSqlParser.COVAR_SAMP - 256)) | (1 << (PlSqlParser.CPU_COSTING - 256)) | (1 << (PlSqlParser.CPU_PER_CALL - 256)) | (1 << (PlSqlParser.CPU_PER_SESSION - 256)) | (1 << (PlSqlParser.CRASH - 256)))) !== 0) || ((((_la - 289)) & ~0x1f) == 0 && ((1 << (_la - 289)) & ((1 << (PlSqlParser.CREATE_FILE_DEST - 289)) | (1 << (PlSqlParser.CREATE_STORED_OUTLINES - 289)) | (1 << (PlSqlParser.CREATION - 289)) | (1 << (PlSqlParser.CREDENTIAL - 289)) | (1 << (PlSqlParser.CRITICAL - 289)) | (1 << (PlSqlParser.CROSS - 289)) | (1 << (PlSqlParser.CROSSEDITION - 289)) | (1 << (PlSqlParser.CSCONVERT - 289)) | (1 << (PlSqlParser.CUBE_AJ - 289)) | (1 << (PlSqlParser.CUBE - 289)) | (1 << (PlSqlParser.CUBE_GB - 289)) | (1 << (PlSqlParser.CUBE_SJ - 289)) | (1 << (PlSqlParser.CUME_DISTM - 289)) | (1 << (PlSqlParser.CURRENT - 289)) | (1 << (PlSqlParser.CURRENT_DATE - 289)) | (1 << (PlSqlParser.CURRENT_SCHEMA - 289)) | (1 << (PlSqlParser.CURRENT_TIME - 289)) | (1 << (PlSqlParser.CURRENT_TIMESTAMP - 289)) | (1 << (PlSqlParser.CURRENT_USER - 289)) | (1 << (PlSqlParser.CURRENTV - 289)) | (1 << (PlSqlParser.CURSOR - 289)) | (1 << (PlSqlParser.CURSOR_SHARING_EXACT - 289)) | (1 << (PlSqlParser.CURSOR_SPECIFIC_SEGMENT - 289)) | (1 << (PlSqlParser.CUSTOMDATUM - 289)) | (1 << (PlSqlParser.CV - 289)) | (1 << (PlSqlParser.CYCLE - 289)) | (1 << (PlSqlParser.DANGLING - 289)) | (1 << (PlSqlParser.DATABASE - 289)) | (1 << (PlSqlParser.DATA - 289)) | (1 << (PlSqlParser.DATAFILE - 289)) | (1 << (PlSqlParser.DATAFILES - 289)))) !== 0) || ((((_la - 321)) & ~0x1f) == 0 && ((1 << (_la - 321)) & ((1 << (PlSqlParser.DATAMOVEMENT - 321)) | (1 << (PlSqlParser.DATAOBJNO - 321)) | (1 << (PlSqlParser.DATAOBJ_TO_MAT_PARTITION - 321)) | (1 << (PlSqlParser.DATAOBJ_TO_PARTITION - 321)) | (1 << (PlSqlParser.DATAPUMP - 321)) | (1 << (PlSqlParser.DATA_SECURITY_REWRITE_LIMIT - 321)) | (1 << (PlSqlParser.DATE_MODE - 321)) | (1 << (PlSqlParser.DAY - 321)) | (1 << (PlSqlParser.DAYS - 321)) | (1 << (PlSqlParser.DBA - 321)) | (1 << (PlSqlParser.DBA_RECYCLEBIN - 321)) | (1 << (PlSqlParser.DBMS_STATS - 321)) | (1 << (PlSqlParser.DB_ROLE_CHANGE - 321)) | (1 << (PlSqlParser.DBTIMEZONE - 321)) | (1 << (PlSqlParser.DB_UNIQUE_NAME - 321)) | (1 << (PlSqlParser.DB_VERSION - 321)) | (1 << (PlSqlParser.DDL - 321)) | (1 << (PlSqlParser.DEALLOCATE - 321)) | (1 << (PlSqlParser.DEBUG - 321)) | (1 << (PlSqlParser.DEBUGGER - 321)) | (1 << (PlSqlParser.DEC - 321)) | (1 << (PlSqlParser.DECIMAL - 321)) | (1 << (PlSqlParser.DECLARE - 321)) | (1 << (PlSqlParser.DECOMPOSE - 321)) | (1 << (PlSqlParser.DECORRELATE - 321)) | (1 << (PlSqlParser.DECR - 321)) | (1 << (PlSqlParser.DECREMENT - 321)) | (1 << (PlSqlParser.DECRYPT - 321)) | (1 << (PlSqlParser.DEDUPLICATE - 321)) | (1 << (PlSqlParser.DEFAULTS - 321)))) !== 0) || ((((_la - 353)) & ~0x1f) == 0 && ((1 << (_la - 353)) & ((1 << (PlSqlParser.DEFERRABLE - 353)) | (1 << (PlSqlParser.DEFERRED - 353)) | (1 << (PlSqlParser.DEFINED - 353)) | (1 << (PlSqlParser.DEFINE - 353)) | (1 << (PlSqlParser.DEFINER - 353)) | (1 << (PlSqlParser.DEGREE - 353)) | (1 << (PlSqlParser.DELAY - 353)) | (1 << (PlSqlParser.DELEGATE - 353)) | (1 << (PlSqlParser.DELETE_ALL - 353)) | (1 << (PlSqlParser.DELETE - 353)) | (1 << (PlSqlParser.DELETEXML - 353)) | (1 << (PlSqlParser.DEMAND - 353)) | (1 << (PlSqlParser.DENSE_RANKM - 353)) | (1 << (PlSqlParser.DEPENDENT - 353)) | (1 << (PlSqlParser.DEPTH - 353)) | (1 << (PlSqlParser.DEQUEUE - 353)) | (1 << (PlSqlParser.DEREF - 353)) | (1 << (PlSqlParser.DEREF_NO_REWRITE - 353)) | (1 << (PlSqlParser.DESTROY - 353)) | (1 << (PlSqlParser.DETACHED - 353)) | (1 << (PlSqlParser.DETERMINES - 353)) | (1 << (PlSqlParser.DETERMINISTIC - 353)) | (1 << (PlSqlParser.DICTIONARY - 353)) | (1 << (PlSqlParser.DIMENSION - 353)) | (1 << (PlSqlParser.DIMENSIONS - 353)) | (1 << (PlSqlParser.DIRECT_LOAD - 353)) | (1 << (PlSqlParser.DIRECTORY - 353)) | (1 << (PlSqlParser.DIRECT_PATH - 353)) | (1 << (PlSqlParser.DISABLE_ALL - 353)) | (1 << (PlSqlParser.DISABLE - 353)) | (1 << (PlSqlParser.DISABLE_PARALLEL_DML - 353)))) !== 0) || ((((_la - 385)) & ~0x1f) == 0 && ((1 << (_la - 385)) & ((1 << (PlSqlParser.DISABLE_PRESET - 385)) | (1 << (PlSqlParser.DISABLE_RPKE - 385)) | (1 << (PlSqlParser.DISALLOW - 385)) | (1 << (PlSqlParser.DISASSOCIATE - 385)) | (1 << (PlSqlParser.DISCARD - 385)) | (1 << (PlSqlParser.DISCONNECT - 385)) | (1 << (PlSqlParser.DISK - 385)) | (1 << (PlSqlParser.DISKGROUP - 385)) | (1 << (PlSqlParser.DISKS - 385)) | (1 << (PlSqlParser.DISMOUNT - 385)) | (1 << (PlSqlParser.DISTINGUISHED - 385)) | (1 << (PlSqlParser.DISTRIBUTED - 385)) | (1 << (PlSqlParser.DISTRIBUTE - 385)) | (1 << (PlSqlParser.DML - 385)) | (1 << (PlSqlParser.DML_UPDATE - 385)) | (1 << (PlSqlParser.DOCFIDELITY - 385)) | (1 << (PlSqlParser.DOCUMENT - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_FILTER - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_NO_SORT - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_SORT - 385)) | (1 << (PlSqlParser.DOUBLE - 385)) | (1 << (PlSqlParser.DOWNGRADE - 385)) | (1 << (PlSqlParser.DRIVING_SITE - 385)) | (1 << (PlSqlParser.DROP_COLUMN - 385)) | (1 << (PlSqlParser.DROP_GROUP - 385)) | (1 << (PlSqlParser.DSINTERVAL_UNCONSTRAINED - 385)) | (1 << (PlSqlParser.DST_UPGRADE_INSERT_CONV - 385)) | (1 << (PlSqlParser.DUMP - 385)))) !== 0) || ((((_la - 417)) & ~0x1f) == 0 && ((1 << (_la - 417)) & ((1 << (PlSqlParser.DUPLICATE - 417)) | (1 << (PlSqlParser.DV - 417)) | (1 << (PlSqlParser.DYNAMIC - 417)) | (1 << (PlSqlParser.DYNAMIC_SAMPLING - 417)) | (1 << (PlSqlParser.DYNAMIC_SAMPLING_EST_CDN - 417)) | (1 << (PlSqlParser.EACH - 417)) | (1 << (PlSqlParser.EDITIONABLE - 417)) | (1 << (PlSqlParser.EDITION - 417)) | (1 << (PlSqlParser.EDITIONING - 417)) | (1 << (PlSqlParser.EDITIONS - 417)) | (1 << (PlSqlParser.ELEMENT - 417)) | (1 << (PlSqlParser.ELIM_GROUPBY - 417)) | (1 << (PlSqlParser.ELIMINATE_JOIN - 417)) | (1 << (PlSqlParser.ELIMINATE_OBY - 417)) | (1 << (PlSqlParser.ELIMINATE_OUTER_JOIN - 417)) | (1 << (PlSqlParser.EM - 417)) | (1 << (PlSqlParser.EMPTY_BLOB - 417)) | (1 << (PlSqlParser.EMPTY_CLOB - 417)) | (1 << (PlSqlParser.EMPTY - 417)) | (1 << (PlSqlParser.ENABLE_ALL - 417)) | (1 << (PlSqlParser.ENABLE - 417)) | (1 << (PlSqlParser.ENABLE_PARALLEL_DML - 417)) | (1 << (PlSqlParser.ENABLE_PRESET - 417)) | (1 << (PlSqlParser.ENCODING - 417)) | (1 << (PlSqlParser.ENCRYPT - 417)) | (1 << (PlSqlParser.ENCRYPTION - 417)) | (1 << (PlSqlParser.END_OUTLINE_DATA - 417)) | (1 << (PlSqlParser.ENFORCED - 417)) | (1 << (PlSqlParser.ENFORCE - 417)))) !== 0) || ((((_la - 449)) & ~0x1f) == 0 && ((1 << (_la - 449)) & ((1 << (PlSqlParser.ENQUEUE - 449)) | (1 << (PlSqlParser.ENTERPRISE - 449)) | (1 << (PlSqlParser.ENTITYESCAPING - 449)) | (1 << (PlSqlParser.ENTRY - 449)) | (1 << (PlSqlParser.EQUIPART - 449)) | (1 << (PlSqlParser.ERR - 449)) | (1 << (PlSqlParser.ERROR_ARGUMENT - 449)) | (1 << (PlSqlParser.ERROR - 449)) | (1 << (PlSqlParser.ERROR_ON_OVERLAP_TIME - 449)) | (1 << (PlSqlParser.ERRORS - 449)) | (1 << (PlSqlParser.ESCAPE - 449)) | (1 << (PlSqlParser.ESTIMATE - 449)) | (1 << (PlSqlParser.EVAL - 449)) | (1 << (PlSqlParser.EVALNAME - 449)) | (1 << (PlSqlParser.EVALUATE - 449)) | (1 << (PlSqlParser.EVALUATION - 449)) | (1 << (PlSqlParser.EVENTS - 449)) | (1 << (PlSqlParser.EVERY - 449)) | (1 << (PlSqlParser.EXCEPT - 449)) | (1 << (PlSqlParser.EXCEPTION - 449)) | (1 << (PlSqlParser.EXCEPTION_INIT - 449)) | (1 << (PlSqlParser.EXCEPTIONS - 449)) | (1 << (PlSqlParser.EXCHANGE - 449)) | (1 << (PlSqlParser.EXCLUDE - 449)) | (1 << (PlSqlParser.EXCLUDING - 449)) | (1 << (PlSqlParser.EXECUTE - 449)) | (1 << (PlSqlParser.EXEMPT - 449)) | (1 << (PlSqlParser.EXISTING - 449)) | (1 << (PlSqlParser.EXISTS - 449)) | (1 << (PlSqlParser.EXISTSNODE - 449)) | (1 << (PlSqlParser.EXIT - 449)))) !== 0) || ((((_la - 481)) & ~0x1f) == 0 && ((1 << (_la - 481)) & ((1 << (PlSqlParser.EXPAND_GSET_TO_UNION - 481)) | (1 << (PlSqlParser.EXPAND_TABLE - 481)) | (1 << (PlSqlParser.EXP - 481)) | (1 << (PlSqlParser.EXPIRE - 481)) | (1 << (PlSqlParser.EXPLAIN - 481)) | (1 << (PlSqlParser.EXPLOSION - 481)) | (1 << (PlSqlParser.EXPORT - 481)) | (1 << (PlSqlParser.EXPR_CORR_CHECK - 481)) | (1 << (PlSqlParser.EXPRESS - 481)) | (1 << (PlSqlParser.EXTENDS - 481)) | (1 << (PlSqlParser.EXTENT - 481)) | (1 << (PlSqlParser.EXTENTS - 481)) | (1 << (PlSqlParser.EXTERNAL - 481)) | (1 << (PlSqlParser.EXTERNALLY - 481)) | (1 << (PlSqlParser.EXTRACTCLOBXML - 481)) | (1 << (PlSqlParser.EXTRACT - 481)) | (1 << (PlSqlParser.EXTRACTVALUE - 481)) | (1 << (PlSqlParser.EXTRA - 481)) | (1 << (PlSqlParser.FACILITY - 481)) | (1 << (PlSqlParser.FACT - 481)) | (1 << (PlSqlParser.FACTOR - 481)) | (1 << (PlSqlParser.FACTORIZE_JOIN - 481)) | (1 << (PlSqlParser.FAILED - 481)) | (1 << (PlSqlParser.FAILED_LOGIN_ATTEMPTS - 481)) | (1 << (PlSqlParser.FAILGROUP - 481)) | (1 << (PlSqlParser.FAILOVER - 481)) | (1 << (PlSqlParser.FAILURE - 481)) | (1 << (PlSqlParser.FALSE - 481)) | (1 << (PlSqlParser.FAMILY - 481)) | (1 << (PlSqlParser.FAR - 481)) | (1 << (PlSqlParser.FAST - 481)) | (1 << (PlSqlParser.FASTSTART - 481)))) !== 0) || ((((_la - 513)) & ~0x1f) == 0 && ((1 << (_la - 513)) & ((1 << (PlSqlParser.FBTSCAN - 513)) | (1 << (PlSqlParser.FEATURE_DETAILS - 513)) | (1 << (PlSqlParser.FEATURE_ID - 513)) | (1 << (PlSqlParser.FEATURE_SET - 513)) | (1 << (PlSqlParser.FEATURE_VALUE - 513)) | (1 << (PlSqlParser.FETCH - 513)) | (1 << (PlSqlParser.FILE - 513)) | (1 << (PlSqlParser.FILE_NAME_CONVERT - 513)) | (1 << (PlSqlParser.FILESYSTEM_LIKE_LOGGING - 513)) | (1 << (PlSqlParser.FILTER - 513)) | (1 << (PlSqlParser.FINAL - 513)) | (1 << (PlSqlParser.FINE - 513)) | (1 << (PlSqlParser.FINISH - 513)) | (1 << (PlSqlParser.FIRST - 513)) | (1 << (PlSqlParser.FIRSTM - 513)) | (1 << (PlSqlParser.FIRST_ROWS - 513)) | (1 << (PlSqlParser.FIRST_VALUE - 513)) | (1 << (PlSqlParser.FIXED_VIEW_DATA - 513)) | (1 << (PlSqlParser.FLAGGER - 513)) | (1 << (PlSqlParser.FLASHBACK - 513)) | (1 << (PlSqlParser.FLASH_CACHE - 513)) | (1 << (PlSqlParser.FLOAT - 513)) | (1 << (PlSqlParser.FLOB - 513)) | (1 << (PlSqlParser.FLOOR - 513)) | (1 << (PlSqlParser.FLUSH - 513)) | (1 << (PlSqlParser.FOLDER - 513)) | (1 << (PlSqlParser.FOLLOWING - 513)) | (1 << (PlSqlParser.FOLLOWS - 513)) | (1 << (PlSqlParser.FORALL - 513)) | (1 << (PlSqlParser.FORCE - 513)) | (1 << (PlSqlParser.FORCE_XML_QUERY_REWRITE - 513)) | (1 << (PlSqlParser.FOREIGN - 513)))) !== 0) || ((((_la - 545)) & ~0x1f) == 0 && ((1 << (_la - 545)) & ((1 << (PlSqlParser.FOREVER - 545)) | (1 << (PlSqlParser.FORMAT - 545)) | (1 << (PlSqlParser.FORWARD - 545)) | (1 << (PlSqlParser.FRAGMENT_NUMBER - 545)) | (1 << (PlSqlParser.FREELIST - 545)) | (1 << (PlSqlParser.FREELISTS - 545)) | (1 << (PlSqlParser.FREEPOOLS - 545)) | (1 << (PlSqlParser.FRESH - 545)) | (1 << (PlSqlParser.FROM_TZ - 545)) | (1 << (PlSqlParser.FULL - 545)) | (1 << (PlSqlParser.FULL_OUTER_JOIN_TO_OUTER - 545)) | (1 << (PlSqlParser.FUNCTION - 545)) | (1 << (PlSqlParser.FUNCTIONS - 545)) | (1 << (PlSqlParser.GATHER_OPTIMIZER_STATISTICS - 545)) | (1 << (PlSqlParser.GATHER_PLAN_STATISTICS - 545)) | (1 << (PlSqlParser.GBY_CONC_ROLLUP - 545)) | (1 << (PlSqlParser.GBY_PUSHDOWN - 545)) | (1 << (PlSqlParser.GENERATED - 545)) | (1 << (PlSqlParser.GET - 545)) | (1 << (PlSqlParser.GLOBAL - 545)) | (1 << (PlSqlParser.GLOBALLY - 545)) | (1 << (PlSqlParser.GLOBAL_NAME - 545)) | (1 << (PlSqlParser.GLOBAL_TOPIC_ENABLED - 545)) | (1 << (PlSqlParser.GROUP_BY - 545)) | (1 << (PlSqlParser.GROUP_ID - 545)) | (1 << (PlSqlParser.GROUPING - 545)) | (1 << (PlSqlParser.GROUPING_ID - 545)))) !== 0) || ((((_la - 577)) & ~0x1f) == 0 && ((1 << (_la - 577)) & ((1 << (PlSqlParser.GROUPS - 577)) | (1 << (PlSqlParser.GUARANTEED - 577)) | (1 << (PlSqlParser.GUARANTEE - 577)) | (1 << (PlSqlParser.GUARD - 577)) | (1 << (PlSqlParser.HASH_AJ - 577)) | (1 << (PlSqlParser.HASH - 577)) | (1 << (PlSqlParser.HASHKEYS - 577)) | (1 << (PlSqlParser.HASH_SJ - 577)) | (1 << (PlSqlParser.HEADER - 577)) | (1 << (PlSqlParser.HEAP - 577)) | (1 << (PlSqlParser.HELP - 577)) | (1 << (PlSqlParser.HEXTORAW - 577)) | (1 << (PlSqlParser.HEXTOREF - 577)) | (1 << (PlSqlParser.HIDDEN_KEYWORD - 577)) | (1 << (PlSqlParser.HIDE - 577)) | (1 << (PlSqlParser.HIERARCHY - 577)) | (1 << (PlSqlParser.HIGH - 577)) | (1 << (PlSqlParser.HINTSET_BEGIN - 577)) | (1 << (PlSqlParser.HINTSET_END - 577)) | (1 << (PlSqlParser.HOT - 577)) | (1 << (PlSqlParser.HOUR - 577)) | (1 << (PlSqlParser.HWM_BROKERED - 577)) | (1 << (PlSqlParser.HYBRID - 577)) | (1 << (PlSqlParser.IDENTIFIER - 577)) | (1 << (PlSqlParser.IDENTITY - 577)) | (1 << (PlSqlParser.IDGENERATORS - 577)) | (1 << (PlSqlParser.ID - 577)) | (1 << (PlSqlParser.IDLE_TIME - 577)) | (1 << (PlSqlParser.IF - 577)) | (1 << (PlSqlParser.IGNORE - 577)))) !== 0) || ((((_la - 609)) & ~0x1f) == 0 && ((1 << (_la - 609)) & ((1 << (PlSqlParser.IGNORE_OPTIM_EMBEDDED_HINTS - 609)) | (1 << (PlSqlParser.IGNORE_ROW_ON_DUPKEY_INDEX - 609)) | (1 << (PlSqlParser.IGNORE_WHERE_CLAUSE - 609)) | (1 << (PlSqlParser.ILM - 609)) | (1 << (PlSqlParser.IMMEDIATE - 609)) | (1 << (PlSqlParser.IMPACT - 609)) | (1 << (PlSqlParser.IMPORT - 609)) | (1 << (PlSqlParser.INACTIVE - 609)) | (1 << (PlSqlParser.INCLUDE - 609)) | (1 << (PlSqlParser.INCLUDE_VERSION - 609)) | (1 << (PlSqlParser.INCLUDING - 609)) | (1 << (PlSqlParser.INCREMENTAL - 609)) | (1 << (PlSqlParser.INCREMENT - 609)) | (1 << (PlSqlParser.INCR - 609)) | (1 << (PlSqlParser.INDENT - 609)) | (1 << (PlSqlParser.INDEX_ASC - 609)) | (1 << (PlSqlParser.INDEX_COMBINE - 609)) | (1 << (PlSqlParser.INDEX_DESC - 609)) | (1 << (PlSqlParser.INDEXED - 609)) | (1 << (PlSqlParser.INDEXES - 609)) | (1 << (PlSqlParser.INDEX_FFS - 609)) | (1 << (PlSqlParser.INDEX_FILTER - 609)) | (1 << (PlSqlParser.INDEXING - 609)) | (1 << (PlSqlParser.INDEX_JOIN - 609)) | (1 << (PlSqlParser.INDEX_ROWS - 609)) | (1 << (PlSqlParser.INDEX_RRS - 609)) | (1 << (PlSqlParser.INDEX_RS_ASC - 609)) | (1 << (PlSqlParser.INDEX_RS_DESC - 609)) | (1 << (PlSqlParser.INDEX_RS - 609)) | (1 << (PlSqlParser.INDEX_SCAN - 609)) | (1 << (PlSqlParser.INDEX_SKIP_SCAN - 609)))) !== 0) || ((((_la - 641)) & ~0x1f) == 0 && ((1 << (_la - 641)) & ((1 << (PlSqlParser.INDEX_SS_ASC - 641)) | (1 << (PlSqlParser.INDEX_SS_DESC - 641)) | (1 << (PlSqlParser.INDEX_SS - 641)) | (1 << (PlSqlParser.INDEX_STATS - 641)) | (1 << (PlSqlParser.INDEXTYPE - 641)) | (1 << (PlSqlParser.INDEXTYPES - 641)) | (1 << (PlSqlParser.INDICATOR - 641)) | (1 << (PlSqlParser.INDICES - 641)) | (1 << (PlSqlParser.INFINITE - 641)) | (1 << (PlSqlParser.INFORMATIONAL - 641)) | (1 << (PlSqlParser.INHERIT - 641)) | (1 << (PlSqlParser.INITCAP - 641)) | (1 << (PlSqlParser.INITIAL - 641)) | (1 << (PlSqlParser.INITIALIZED - 641)) | (1 << (PlSqlParser.INITIALLY - 641)) | (1 << (PlSqlParser.INITRANS - 641)) | (1 << (PlSqlParser.INLINE - 641)) | (1 << (PlSqlParser.INLINE_XMLTYPE_NT - 641)) | (1 << (PlSqlParser.INMEMORY - 641)) | (1 << (PlSqlParser.IN_MEMORY_METADATA - 641)) | (1 << (PlSqlParser.INMEMORY_PRUNING - 641)) | (1 << (PlSqlParser.INNER - 641)) | (1 << (PlSqlParser.INOUT - 641)) | (1 << (PlSqlParser.INPLACE - 641)) | (1 << (PlSqlParser.INSERTCHILDXMLAFTER - 641)) | (1 << (PlSqlParser.INSERTCHILDXMLBEFORE - 641)) | (1 << (PlSqlParser.INSERTCHILDXML - 641)) | (1 << (PlSqlParser.INSERTXMLAFTER - 641)) | (1 << (PlSqlParser.INSERTXMLBEFORE - 641)) | (1 << (PlSqlParser.INSTANCE - 641)))) !== 0) || ((((_la - 673)) & ~0x1f) == 0 && ((1 << (_la - 673)) & ((1 << (PlSqlParser.INSTANCES - 673)) | (1 << (PlSqlParser.INSTANTIABLE - 673)) | (1 << (PlSqlParser.INSTANTLY - 673)) | (1 << (PlSqlParser.INSTEAD - 673)) | (1 << (PlSqlParser.INSTR2 - 673)) | (1 << (PlSqlParser.INSTR4 - 673)) | (1 << (PlSqlParser.INSTRB - 673)) | (1 << (PlSqlParser.INSTRC - 673)) | (1 << (PlSqlParser.INSTR - 673)) | (1 << (PlSqlParser.INTEGER - 673)) | (1 << (PlSqlParser.INTERLEAVED - 673)) | (1 << (PlSqlParser.INTERMEDIATE - 673)) | (1 << (PlSqlParser.INTERNAL_CONVERT - 673)) | (1 << (PlSqlParser.INTERNAL_USE - 673)) | (1 << (PlSqlParser.INTERPRETED - 673)) | (1 << (PlSqlParser.INTERVAL - 673)) | (1 << (PlSqlParser.INT - 673)) | (1 << (PlSqlParser.INVALIDATE - 673)) | (1 << (PlSqlParser.INVISIBLE - 673)) | (1 << (PlSqlParser.IN_XQUERY - 673)) | (1 << (PlSqlParser.ISOLATION - 673)) | (1 << (PlSqlParser.ISOLATION_LEVEL - 673)) | (1 << (PlSqlParser.ITERATE - 673)) | (1 << (PlSqlParser.ITERATION_NUMBER - 673)) | (1 << (PlSqlParser.JAVA - 673)) | (1 << (PlSqlParser.JOB - 673)) | (1 << (PlSqlParser.JOIN - 673)) | (1 << (PlSqlParser.JSON_ARRAYAGG - 673)) | (1 << (PlSqlParser.JSON_ARRAY - 673)))) !== 0) || ((((_la - 705)) & ~0x1f) == 0 && ((1 << (_la - 705)) & ((1 << (PlSqlParser.JSON_EQUAL - 705)) | (1 << (PlSqlParser.JSON_EXISTS2 - 705)) | (1 << (PlSqlParser.JSON_EXISTS - 705)) | (1 << (PlSqlParser.JSONGET - 705)) | (1 << (PlSqlParser.JSON - 705)) | (1 << (PlSqlParser.JSON_OBJECTAGG - 705)) | (1 << (PlSqlParser.JSON_OBJECT - 705)) | (1 << (PlSqlParser.JSONPARSE - 705)) | (1 << (PlSqlParser.JSON_QUERY - 705)) | (1 << (PlSqlParser.JSON_SERIALIZE - 705)) | (1 << (PlSqlParser.JSON_TABLE - 705)) | (1 << (PlSqlParser.JSON_TEXTCONTAINS2 - 705)) | (1 << (PlSqlParser.JSON_TEXTCONTAINS - 705)) | (1 << (PlSqlParser.JSON_VALUE - 705)) | (1 << (PlSqlParser.KEEP_DUPLICATES - 705)) | (1 << (PlSqlParser.KEEP - 705)) | (1 << (PlSqlParser.KERBEROS - 705)) | (1 << (PlSqlParser.KEY - 705)) | (1 << (PlSqlParser.KEY_LENGTH - 705)) | (1 << (PlSqlParser.KEYSIZE - 705)) | (1 << (PlSqlParser.KEYS - 705)) | (1 << (PlSqlParser.KEYSTORE - 705)) | (1 << (PlSqlParser.KILL - 705)) | (1 << (PlSqlParser.LABEL - 705)) | (1 << (PlSqlParser.LANGUAGE - 705)) | (1 << (PlSqlParser.LAST_DAY - 705)) | (1 << (PlSqlParser.LAST - 705)) | (1 << (PlSqlParser.LAST_VALUE - 705)) | (1 << (PlSqlParser.LATERAL - 705)) | (1 << (PlSqlParser.LAX - 705)) | (1 << (PlSqlParser.LAYER - 705)) | (1 << (PlSqlParser.LDAP_REGISTRATION_ENABLED - 705)))) !== 0) || ((((_la - 737)) & ~0x1f) == 0 && ((1 << (_la - 737)) & ((1 << (PlSqlParser.LDAP_REGISTRATION - 737)) | (1 << (PlSqlParser.LDAP_REG_SYNC_INTERVAL - 737)) | (1 << (PlSqlParser.LEADING - 737)) | (1 << (PlSqlParser.LEFT - 737)) | (1 << (PlSqlParser.LENGTH2 - 737)) | (1 << (PlSqlParser.LENGTH4 - 737)) | (1 << (PlSqlParser.LENGTHB - 737)) | (1 << (PlSqlParser.LENGTHC - 737)) | (1 << (PlSqlParser.LENGTH - 737)) | (1 << (PlSqlParser.LESS - 737)) | (1 << (PlSqlParser.LEVEL - 737)) | (1 << (PlSqlParser.LEVELS - 737)) | (1 << (PlSqlParser.LIBRARY - 737)) | (1 << (PlSqlParser.LIFECYCLE - 737)) | (1 << (PlSqlParser.LIFE - 737)) | (1 << (PlSqlParser.LIFETIME - 737)) | (1 << (PlSqlParser.LIKE2 - 737)) | (1 << (PlSqlParser.LIKE4 - 737)) | (1 << (PlSqlParser.LIKEC - 737)) | (1 << (PlSqlParser.LIKE_EXPAND - 737)) | (1 << (PlSqlParser.LIMIT - 737)) | (1 << (PlSqlParser.LINEAR - 737)) | (1 << (PlSqlParser.LINK - 737)) | (1 << (PlSqlParser.LIST - 737)) | (1 << (PlSqlParser.LN - 737)) | (1 << (PlSqlParser.LNNVL - 737)) | (1 << (PlSqlParser.LOAD - 737)) | (1 << (PlSqlParser.LOB - 737)) | (1 << (PlSqlParser.LOBNVL - 737)) | (1 << (PlSqlParser.LOBS - 737)) | (1 << (PlSqlParser.LOCAL_INDEXES - 737)))) !== 0) || ((((_la - 769)) & ~0x1f) == 0 && ((1 << (_la - 769)) & ((1 << (PlSqlParser.LOCAL - 769)) | (1 << (PlSqlParser.LOCALTIME - 769)) | (1 << (PlSqlParser.LOCALTIMESTAMP - 769)) | (1 << (PlSqlParser.LOCATION - 769)) | (1 << (PlSqlParser.LOCATOR - 769)) | (1 << (PlSqlParser.LOCKED - 769)) | (1 << (PlSqlParser.LOCKING - 769)) | (1 << (PlSqlParser.LOGFILE - 769)) | (1 << (PlSqlParser.LOGFILES - 769)) | (1 << (PlSqlParser.LOGGING - 769)) | (1 << (PlSqlParser.LOGICAL - 769)) | (1 << (PlSqlParser.LOGICAL_READS_PER_CALL - 769)) | (1 << (PlSqlParser.LOGICAL_READS_PER_SESSION - 769)) | (1 << (PlSqlParser.LOG - 769)) | (1 << (PlSqlParser.LOGMINING - 769)) | (1 << (PlSqlParser.LOGOFF - 769)) | (1 << (PlSqlParser.LOGON - 769)) | (1 << (PlSqlParser.LOG_READ_ONLY_VIOLATIONS - 769)) | (1 << (PlSqlParser.LONG - 769)) | (1 << (PlSqlParser.LOOP - 769)) | (1 << (PlSqlParser.LOWER - 769)) | (1 << (PlSqlParser.LOW - 769)) | (1 << (PlSqlParser.LPAD - 769)) | (1 << (PlSqlParser.LTRIM - 769)) | (1 << (PlSqlParser.MAIN - 769)) | (1 << (PlSqlParser.MAKE_REF - 769)) | (1 << (PlSqlParser.MANAGED - 769)) | (1 << (PlSqlParser.MANAGE - 769)) | (1 << (PlSqlParser.MANAGEMENT - 769)) | (1 << (PlSqlParser.MANAGER - 769)) | (1 << (PlSqlParser.MANUAL - 769)))) !== 0) || ((((_la - 801)) & ~0x1f) == 0 && ((1 << (_la - 801)) & ((1 << (PlSqlParser.MAP - 801)) | (1 << (PlSqlParser.MAPPING - 801)) | (1 << (PlSqlParser.MASTER - 801)) | (1 << (PlSqlParser.MATCHED - 801)) | (1 << (PlSqlParser.MATCHES - 801)) | (1 << (PlSqlParser.MATCH - 801)) | (1 << (PlSqlParser.MATCH_NUMBER - 801)) | (1 << (PlSqlParser.MATCH_RECOGNIZE - 801)) | (1 << (PlSqlParser.MATERIALIZED - 801)) | (1 << (PlSqlParser.MATERIALIZE - 801)) | (1 << (PlSqlParser.MAXARCHLOGS - 801)) | (1 << (PlSqlParser.MAXDATAFILES - 801)) | (1 << (PlSqlParser.MAXEXTENTS - 801)) | (1 << (PlSqlParser.MAXIMIZE - 801)) | (1 << (PlSqlParser.MAXINSTANCES - 801)) | (1 << (PlSqlParser.MAXLOGFILES - 801)) | (1 << (PlSqlParser.MAXLOGHISTORY - 801)) | (1 << (PlSqlParser.MAXLOGMEMBERS - 801)) | (1 << (PlSqlParser.MAX_SHARED_TEMP_SIZE - 801)) | (1 << (PlSqlParser.MAXSIZE - 801)) | (1 << (PlSqlParser.MAXTRANS - 801)) | (1 << (PlSqlParser.MAXVALUE - 801)) | (1 << (PlSqlParser.MEASURE - 801)) | (1 << (PlSqlParser.MEASURES - 801)) | (1 << (PlSqlParser.MEDIUM - 801)) | (1 << (PlSqlParser.MEMBER - 801)) | (1 << (PlSqlParser.MEMCOMPRESS - 801)) | (1 << (PlSqlParser.MEMORY - 801)) | (1 << (PlSqlParser.MERGEACTIONS - 801)) | (1 << (PlSqlParser.MERGE_AJ - 801)) | (1 << (PlSqlParser.MERGE_CONST_ON - 801)) | (1 << (PlSqlParser.MERGE - 801)))) !== 0) || ((((_la - 833)) & ~0x1f) == 0 && ((1 << (_la - 833)) & ((1 << (PlSqlParser.MERGE_SJ - 833)) | (1 << (PlSqlParser.METADATA - 833)) | (1 << (PlSqlParser.METHOD - 833)) | (1 << (PlSqlParser.MIGRATE - 833)) | (1 << (PlSqlParser.MIGRATION - 833)) | (1 << (PlSqlParser.MINEXTENTS - 833)) | (1 << (PlSqlParser.MINIMIZE - 833)) | (1 << (PlSqlParser.MINIMUM - 833)) | (1 << (PlSqlParser.MINING - 833)) | (1 << (PlSqlParser.MINUS_NULL - 833)) | (1 << (PlSqlParser.MINUTE - 833)) | (1 << (PlSqlParser.MINVALUE - 833)) | (1 << (PlSqlParser.MIRRORCOLD - 833)) | (1 << (PlSqlParser.MIRRORHOT - 833)) | (1 << (PlSqlParser.MIRROR - 833)) | (1 << (PlSqlParser.MLSLABEL - 833)) | (1 << (PlSqlParser.MODEL_COMPILE_SUBQUERY - 833)) | (1 << (PlSqlParser.MODEL_DONTVERIFY_UNIQUENESS - 833)) | (1 << (PlSqlParser.MODEL_DYNAMIC_SUBQUERY - 833)) | (1 << (PlSqlParser.MODEL_MIN_ANALYSIS - 833)) | (1 << (PlSqlParser.MODEL - 833)) | (1 << (PlSqlParser.MODEL_NB - 833)) | (1 << (PlSqlParser.MODEL_NO_ANALYSIS - 833)) | (1 << (PlSqlParser.MODEL_PBY - 833)) | (1 << (PlSqlParser.MODEL_PUSH_REF - 833)) | (1 << (PlSqlParser.MODEL_SV - 833)) | (1 << (PlSqlParser.MODIFICATION - 833)) | (1 << (PlSqlParser.MODIFY_COLUMN_TYPE - 833)) | (1 << (PlSqlParser.MODIFY - 833)) | (1 << (PlSqlParser.MOD - 833)))) !== 0) || ((((_la - 865)) & ~0x1f) == 0 && ((1 << (_la - 865)) & ((1 << (PlSqlParser.MODULE - 865)) | (1 << (PlSqlParser.MONITORING - 865)) | (1 << (PlSqlParser.MONITOR - 865)) | (1 << (PlSqlParser.MONTH - 865)) | (1 << (PlSqlParser.MONTHS_BETWEEN - 865)) | (1 << (PlSqlParser.MONTHS - 865)) | (1 << (PlSqlParser.MOUNT - 865)) | (1 << (PlSqlParser.MOUNTPATH - 865)) | (1 << (PlSqlParser.MOVEMENT - 865)) | (1 << (PlSqlParser.MOVE - 865)) | (1 << (PlSqlParser.MULTIDIMENSIONAL - 865)) | (1 << (PlSqlParser.MULTISET - 865)) | (1 << (PlSqlParser.MV_MERGE - 865)) | (1 << (PlSqlParser.NAMED - 865)) | (1 << (PlSqlParser.NAME - 865)) | (1 << (PlSqlParser.NAMESPACE - 865)) | (1 << (PlSqlParser.NAN - 865)) | (1 << (PlSqlParser.NANVL - 865)) | (1 << (PlSqlParser.NATIONAL - 865)) | (1 << (PlSqlParser.NATIVE_FULL_OUTER_JOIN - 865)) | (1 << (PlSqlParser.NATIVE - 865)) | (1 << (PlSqlParser.NATURAL - 865)) | (1 << (PlSqlParser.NAV - 865)) | (1 << (PlSqlParser.NCHAR_CS - 865)) | (1 << (PlSqlParser.NCHAR - 865)) | (1 << (PlSqlParser.NCHR - 865)) | (1 << (PlSqlParser.NCLOB - 865)) | (1 << (PlSqlParser.NEEDED - 865)) | (1 << (PlSqlParser.NEG - 865)) | (1 << (PlSqlParser.NESTED - 865)) | (1 << (PlSqlParser.NESTED_TABLE_FAST_INSERT - 865)))) !== 0) || ((((_la - 897)) & ~0x1f) == 0 && ((1 << (_la - 897)) & ((1 << (PlSqlParser.NESTED_TABLE_GET_REFS - 897)) | (1 << (PlSqlParser.NESTED_TABLE_ID - 897)) | (1 << (PlSqlParser.NESTED_TABLE_SET_REFS - 897)) | (1 << (PlSqlParser.NESTED_TABLE_SET_SETID - 897)) | (1 << (PlSqlParser.NETWORK - 897)) | (1 << (PlSqlParser.NEVER - 897)) | (1 << (PlSqlParser.NEW - 897)) | (1 << (PlSqlParser.NEW_TIME - 897)) | (1 << (PlSqlParser.NEXT_DAY - 897)) | (1 << (PlSqlParser.NEXT - 897)) | (1 << (PlSqlParser.NL_AJ - 897)) | (1 << (PlSqlParser.NLJ_BATCHING - 897)) | (1 << (PlSqlParser.NLJ_INDEX_FILTER - 897)) | (1 << (PlSqlParser.NLJ_INDEX_SCAN - 897)) | (1 << (PlSqlParser.NLJ_PREFETCH - 897)) | (1 << (PlSqlParser.NLS_CALENDAR - 897)) | (1 << (PlSqlParser.NLS_CHARACTERSET - 897)) | (1 << (PlSqlParser.NLS_CHARSET_DECL_LEN - 897)) | (1 << (PlSqlParser.NLS_CHARSET_ID - 897)) | (1 << (PlSqlParser.NLS_CHARSET_NAME - 897)) | (1 << (PlSqlParser.NLS_COMP - 897)) | (1 << (PlSqlParser.NLS_CURRENCY - 897)) | (1 << (PlSqlParser.NLS_DATE_FORMAT - 897)) | (1 << (PlSqlParser.NLS_DATE_LANGUAGE - 897)) | (1 << (PlSqlParser.NLS_INITCAP - 897)) | (1 << (PlSqlParser.NLS_ISO_CURRENCY - 897)) | (1 << (PlSqlParser.NL_SJ - 897)) | (1 << (PlSqlParser.NLS_LANG - 897)) | (1 << (PlSqlParser.NLS_LANGUAGE - 897)) | (1 << (PlSqlParser.NLS_LENGTH_SEMANTICS - 897)) | (1 << (PlSqlParser.NLS_LOWER - 897)) | (1 << (PlSqlParser.NLS_NCHAR_CONV_EXCP - 897)))) !== 0) || ((((_la - 929)) & ~0x1f) == 0 && ((1 << (_la - 929)) & ((1 << (PlSqlParser.NLS_NUMERIC_CHARACTERS - 929)) | (1 << (PlSqlParser.NLS_SORT - 929)) | (1 << (PlSqlParser.NLSSORT - 929)) | (1 << (PlSqlParser.NLS_SPECIAL_CHARS - 929)) | (1 << (PlSqlParser.NLS_TERRITORY - 929)) | (1 << (PlSqlParser.NLS_UPPER - 929)) | (1 << (PlSqlParser.NO_ACCESS - 929)) | (1 << (PlSqlParser.NO_ADAPTIVE_PLAN - 929)) | (1 << (PlSqlParser.NO_ANSI_REARCH - 929)) | (1 << (PlSqlParser.NOAPPEND - 929)) | (1 << (PlSqlParser.NOARCHIVELOG - 929)) | (1 << (PlSqlParser.NOAUDIT - 929)) | (1 << (PlSqlParser.NO_AUTO_REOPTIMIZE - 929)) | (1 << (PlSqlParser.NO_BASETABLE_MULTIMV_REWRITE - 929)) | (1 << (PlSqlParser.NO_BATCH_TABLE_ACCESS_BY_ROWID - 929)) | (1 << (PlSqlParser.NO_BIND_AWARE - 929)) | (1 << (PlSqlParser.NO_BUFFER - 929)) | (1 << (PlSqlParser.NOCACHE - 929)) | (1 << (PlSqlParser.NO_CARTESIAN - 929)) | (1 << (PlSqlParser.NO_CHECK_ACL_REWRITE - 929)) | (1 << (PlSqlParser.NO_CLUSTER_BY_ROWID - 929)) | (1 << (PlSqlParser.NO_CLUSTERING - 929)) | (1 << (PlSqlParser.NO_COALESCE_SQ - 929)) | (1 << (PlSqlParser.NO_COMMON_DATA - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_CB_WHR_ONLY - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_COMBINE_SW - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_COST_BASED - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_ELIM_DUPS - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_FILTERING - 929)) | (1 << (PlSqlParser.NOCOPY - 929)) | (1 << (PlSqlParser.NO_COST_XML_QUERY_REWRITE - 929)))) !== 0) || ((((_la - 961)) & ~0x1f) == 0 && ((1 << (_la - 961)) & ((1 << (PlSqlParser.NO_CPU_COSTING - 961)) | (1 << (PlSqlParser.NOCPU_COSTING - 961)) | (1 << (PlSqlParser.NOCYCLE - 961)) | (1 << (PlSqlParser.NO_DATA_SECURITY_REWRITE - 961)) | (1 << (PlSqlParser.NO_DECORRELATE - 961)) | (1 << (PlSqlParser.NODELAY - 961)) | (1 << (PlSqlParser.NO_DOMAIN_INDEX_FILTER - 961)) | (1 << (PlSqlParser.NO_DST_UPGRADE_INSERT_CONV - 961)) | (1 << (PlSqlParser.NO_ELIM_GROUPBY - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_JOIN - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_OBY - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_OUTER_JOIN - 961)) | (1 << (PlSqlParser.NOENTITYESCAPING - 961)) | (1 << (PlSqlParser.NO_EXPAND_GSET_TO_UNION - 961)) | (1 << (PlSqlParser.NO_EXPAND - 961)) | (1 << (PlSqlParser.NO_EXPAND_TABLE - 961)) | (1 << (PlSqlParser.NO_FACT - 961)) | (1 << (PlSqlParser.NO_FACTORIZE_JOIN - 961)) | (1 << (PlSqlParser.NO_FILTERING - 961)) | (1 << (PlSqlParser.NOFORCE - 961)) | (1 << (PlSqlParser.NO_FULL_OUTER_JOIN_TO_OUTER - 961)) | (1 << (PlSqlParser.NO_GATHER_OPTIMIZER_STATISTICS - 961)) | (1 << (PlSqlParser.NO_GBY_PUSHDOWN - 961)) | (1 << (PlSqlParser.NOGUARANTEE - 961)) | (1 << (PlSqlParser.NO_INDEX_FFS - 961)) | (1 << (PlSqlParser.NO_INDEX - 961)) | (1 << (PlSqlParser.NO_INDEX_SS - 961)) | (1 << (PlSqlParser.NO_INMEMORY - 961)) | (1 << (PlSqlParser.NO_INMEMORY_PRUNING - 961)) | (1 << (PlSqlParser.NOKEEP - 961)) | (1 << (PlSqlParser.NO_LOAD - 961)) | (1 << (PlSqlParser.NOLOCAL - 961)))) !== 0) || ((((_la - 993)) & ~0x1f) == 0 && ((1 << (_la - 993)) & ((1 << (PlSqlParser.NOLOGGING - 993)) | (1 << (PlSqlParser.NOMAPPING - 993)) | (1 << (PlSqlParser.NOMAXVALUE - 993)) | (1 << (PlSqlParser.NO_MERGE - 993)) | (1 << (PlSqlParser.NOMINIMIZE - 993)) | (1 << (PlSqlParser.NOMINVALUE - 993)) | (1 << (PlSqlParser.NO_MODEL_PUSH_REF - 993)) | (1 << (PlSqlParser.NO_MONITORING - 993)) | (1 << (PlSqlParser.NOMONITORING - 993)) | (1 << (PlSqlParser.NO_MONITOR - 993)) | (1 << (PlSqlParser.NO_MULTIMV_REWRITE - 993)) | (1 << (PlSqlParser.NO_NATIVE_FULL_OUTER_JOIN - 993)) | (1 << (PlSqlParser.NONBLOCKING - 993)) | (1 << (PlSqlParser.NONEDITIONABLE - 993)) | (1 << (PlSqlParser.NONE - 993)) | (1 << (PlSqlParser.NO_NLJ_BATCHING - 993)) | (1 << (PlSqlParser.NO_NLJ_PREFETCH - 993)) | (1 << (PlSqlParser.NO - 993)) | (1 << (PlSqlParser.NONSCHEMA - 993)) | (1 << (PlSqlParser.NO_OBJECT_LINK - 993)) | (1 << (PlSqlParser.NOORDER - 993)) | (1 << (PlSqlParser.NO_ORDER_ROLLUPS - 993)) | (1 << (PlSqlParser.NO_OUTER_JOIN_TO_ANTI - 993)) | (1 << (PlSqlParser.NO_OUTER_JOIN_TO_INNER - 993)) | (1 << (PlSqlParser.NOOVERRIDE - 993)) | (1 << (PlSqlParser.NO_PARALLEL_INDEX - 993)) | (1 << (PlSqlParser.NOPARALLEL_INDEX - 993)) | (1 << (PlSqlParser.NO_PARALLEL - 993)) | (1 << (PlSqlParser.NOPARALLEL - 993)) | (1 << (PlSqlParser.NO_PARTIAL_COMMIT - 993)) | (1 << (PlSqlParser.NO_PARTIAL_JOIN - 993)) | (1 << (PlSqlParser.NO_PARTIAL_ROLLUP_PUSHDOWN - 993)))) !== 0) || ((((_la - 1025)) & ~0x1f) == 0 && ((1 << (_la - 1025)) & ((1 << (PlSqlParser.NOPARTITION - 1025)) | (1 << (PlSqlParser.NO_PLACE_DISTINCT - 1025)) | (1 << (PlSqlParser.NO_PLACE_GROUP_BY - 1025)) | (1 << (PlSqlParser.NO_PQ_CONCURRENT_UNION - 1025)) | (1 << (PlSqlParser.NO_PQ_MAP - 1025)) | (1 << (PlSqlParser.NO_PQ_REPLICATE - 1025)) | (1 << (PlSqlParser.NO_PQ_SKEW - 1025)) | (1 << (PlSqlParser.NO_PRUNE_GSETS - 1025)) | (1 << (PlSqlParser.NO_PULL_PRED - 1025)) | (1 << (PlSqlParser.NO_PUSH_PRED - 1025)) | (1 << (PlSqlParser.NO_PUSH_SUBQ - 1025)) | (1 << (PlSqlParser.NO_PX_FAULT_TOLERANCE - 1025)) | (1 << (PlSqlParser.NO_PX_JOIN_FILTER - 1025)) | (1 << (PlSqlParser.NO_QKN_BUFF - 1025)) | (1 << (PlSqlParser.NO_QUERY_TRANSFORMATION - 1025)) | (1 << (PlSqlParser.NO_REF_CASCADE - 1025)) | (1 << (PlSqlParser.NORELOCATE - 1025)) | (1 << (PlSqlParser.NORELY - 1025)) | (1 << (PlSqlParser.NOREPAIR - 1025)) | (1 << (PlSqlParser.NOREPLAY - 1025)) | (1 << (PlSqlParser.NORESETLOGS - 1025)) | (1 << (PlSqlParser.NO_RESULT_CACHE - 1025)) | (1 << (PlSqlParser.NOREVERSE - 1025)) | (1 << (PlSqlParser.NO_REWRITE - 1025)) | (1 << (PlSqlParser.NOREWRITE - 1025)) | (1 << (PlSqlParser.NORMAL - 1025)) | (1 << (PlSqlParser.NO_ROOT_SW_FOR_LOCAL - 1025)) | (1 << (PlSqlParser.NOROWDEPENDENCIES - 1025)) | (1 << (PlSqlParser.NOSCHEMACHECK - 1025)) | (1 << (PlSqlParser.NOSEGMENT - 1025)) | (1 << (PlSqlParser.NO_SEMIJOIN - 1025)) | (1 << (PlSqlParser.NO_SEMI_TO_INNER - 1025)))) !== 0) || ((((_la - 1057)) & ~0x1f) == 0 && ((1 << (_la - 1057)) & ((1 << (PlSqlParser.NO_SET_TO_JOIN - 1057)) | (1 << (PlSqlParser.NOSORT - 1057)) | (1 << (PlSqlParser.NO_SQL_TRANSLATION - 1057)) | (1 << (PlSqlParser.NO_SQL_TUNE - 1057)) | (1 << (PlSqlParser.NO_STAR_TRANSFORMATION - 1057)) | (1 << (PlSqlParser.NO_STATEMENT_QUEUING - 1057)) | (1 << (PlSqlParser.NO_STATS_GSETS - 1057)) | (1 << (PlSqlParser.NOSTRICT - 1057)) | (1 << (PlSqlParser.NO_SUBQUERY_PRUNING - 1057)) | (1 << (PlSqlParser.NO_SUBSTRB_PAD - 1057)) | (1 << (PlSqlParser.NO_SWAP_JOIN_INPUTS - 1057)) | (1 << (PlSqlParser.NOSWITCH - 1057)) | (1 << (PlSqlParser.NO_TABLE_LOOKUP_BY_NL - 1057)) | (1 << (PlSqlParser.NO_TEMP_TABLE - 1057)) | (1 << (PlSqlParser.NOTHING - 1057)) | (1 << (PlSqlParser.NOTIFICATION - 1057)) | (1 << (PlSqlParser.NO_TRANSFORM_DISTINCT_AGG - 1057)) | (1 << (PlSqlParser.NO_UNNEST - 1057)) | (1 << (PlSqlParser.NO_USE_CUBE - 1057)) | (1 << (PlSqlParser.NO_USE_HASH_AGGREGATION - 1057)) | (1 << (PlSqlParser.NO_USE_HASH_GBY_FOR_PUSHDOWN - 1057)) | (1 << (PlSqlParser.NO_USE_HASH - 1057)) | (1 << (PlSqlParser.NO_USE_INVISIBLE_INDEXES - 1057)) | (1 << (PlSqlParser.NO_USE_MERGE - 1057)) | (1 << (PlSqlParser.NO_USE_NL - 1057)) | (1 << (PlSqlParser.NO_USE_VECTOR_AGGREGATION - 1057)) | (1 << (PlSqlParser.NOVALIDATE - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM_DIMS - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM_FACT - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM - 1057)))) !== 0) || ((((_la - 1089)) & ~0x1f) == 0 && ((1 << (_la - 1089)) & ((1 << (PlSqlParser.NO_XDB_FASTPATH_INSERT - 1089)) | (1 << (PlSqlParser.NO_XML_DML_REWRITE - 1089)) | (1 << (PlSqlParser.NO_XMLINDEX_REWRITE_IN_SELECT - 1089)) | (1 << (PlSqlParser.NO_XMLINDEX_REWRITE - 1089)) | (1 << (PlSqlParser.NO_XML_QUERY_REWRITE - 1089)) | (1 << (PlSqlParser.NO_ZONEMAP - 1089)) | (1 << (PlSqlParser.NTH_VALUE - 1089)) | (1 << (PlSqlParser.NULLIF - 1089)) | (1 << (PlSqlParser.NULLS - 1089)) | (1 << (PlSqlParser.NUMBER - 1089)) | (1 << (PlSqlParser.NUMERIC - 1089)) | (1 << (PlSqlParser.NUM_INDEX_KEYS - 1089)) | (1 << (PlSqlParser.NUMTODSINTERVAL - 1089)) | (1 << (PlSqlParser.NUMTOYMINTERVAL - 1089)) | (1 << (PlSqlParser.NVARCHAR2 - 1089)) | (1 << (PlSqlParser.NVL2 - 1089)) | (1 << (PlSqlParser.OBJECT2XML - 1089)) | (1 << (PlSqlParser.OBJECT - 1089)) | (1 << (PlSqlParser.OBJ_ID - 1089)) | (1 << (PlSqlParser.OBJNO - 1089)) | (1 << (PlSqlParser.OBJNO_REUSE - 1089)) | (1 << (PlSqlParser.OCCURENCES - 1089)) | (1 << (PlSqlParser.OFFLINE - 1089)) | (1 << (PlSqlParser.OFF - 1089)) | (1 << (PlSqlParser.OFFSET - 1089)) | (1 << (PlSqlParser.OIDINDEX - 1089)) | (1 << (PlSqlParser.OID - 1089)) | (1 << (PlSqlParser.OLAP - 1089)) | (1 << (PlSqlParser.OLD - 1089)) | (1 << (PlSqlParser.OLD_PUSH_PRED - 1089)))) !== 0) || ((((_la - 1121)) & ~0x1f) == 0 && ((1 << (_la - 1121)) & ((1 << (PlSqlParser.OLS - 1121)) | (1 << (PlSqlParser.OLTP - 1121)) | (1 << (PlSqlParser.OMIT - 1121)) | (1 << (PlSqlParser.ONE - 1121)) | (1 << (PlSqlParser.ONLINE - 1121)) | (1 << (PlSqlParser.ONLY - 1121)) | (1 << (PlSqlParser.OPAQUE - 1121)) | (1 << (PlSqlParser.OPAQUE_TRANSFORM - 1121)) | (1 << (PlSqlParser.OPAQUE_XCANONICAL - 1121)) | (1 << (PlSqlParser.OPCODE - 1121)) | (1 << (PlSqlParser.OPEN - 1121)) | (1 << (PlSqlParser.OPERATIONS - 1121)) | (1 << (PlSqlParser.OPERATOR - 1121)) | (1 << (PlSqlParser.OPT_ESTIMATE - 1121)) | (1 << (PlSqlParser.OPTIMAL - 1121)) | (1 << (PlSqlParser.OPTIMIZE - 1121)) | (1 << (PlSqlParser.OPTIMIZER_FEATURES_ENABLE - 1121)) | (1 << (PlSqlParser.OPTIMIZER_GOAL - 1121)) | (1 << (PlSqlParser.OPT_PARAM - 1121)) | (1 << (PlSqlParser.ORA_BRANCH - 1121)) | (1 << (PlSqlParser.ORA_CHECK_ACL - 1121)) | (1 << (PlSqlParser.ORA_CHECK_PRIVILEGE - 1121)) | (1 << (PlSqlParser.ORA_CLUSTERING - 1121)) | (1 << (PlSqlParser.ORADATA - 1121)) | (1 << (PlSqlParser.ORADEBUG - 1121)) | (1 << (PlSqlParser.ORA_DST_AFFECTED - 1121)) | (1 << (PlSqlParser.ORA_DST_CONVERT - 1121)) | (1 << (PlSqlParser.ORA_DST_ERROR - 1121)) | (1 << (PlSqlParser.ORA_GET_ACLIDS - 1121)))) !== 0) || ((((_la - 1153)) & ~0x1f) == 0 && ((1 << (_la - 1153)) & ((1 << (PlSqlParser.ORA_GET_PRIVILEGES - 1153)) | (1 << (PlSqlParser.ORA_HASH - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_USERID - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_USER - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_XS_USER_GUID - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_XS_USER - 1153)) | (1 << (PlSqlParser.ORA_RAWCOMPARE - 1153)) | (1 << (PlSqlParser.ORA_RAWCONCAT - 1153)) | (1 << (PlSqlParser.ORA_ROWSCN - 1153)) | (1 << (PlSqlParser.ORA_ROWSCN_RAW - 1153)) | (1 << (PlSqlParser.ORA_ROWVERSION - 1153)) | (1 << (PlSqlParser.ORA_TABVERSION - 1153)) | (1 << (PlSqlParser.ORA_WRITE_TIME - 1153)) | (1 << (PlSqlParser.ORDERED - 1153)) | (1 << (PlSqlParser.ORDERED_PREDICATES - 1153)) | (1 << (PlSqlParser.ORDINALITY - 1153)) | (1 << (PlSqlParser.OR_EXPAND - 1153)) | (1 << (PlSqlParser.ORGANIZATION - 1153)) | (1 << (PlSqlParser.OR_PREDICATES - 1153)) | (1 << (PlSqlParser.OSERROR - 1153)) | (1 << (PlSqlParser.OTHER - 1153)) | (1 << (PlSqlParser.OUTER_JOIN_TO_ANTI - 1153)) | (1 << (PlSqlParser.OUTER_JOIN_TO_INNER - 1153)) | (1 << (PlSqlParser.OUTER - 1153)) | (1 << (PlSqlParser.OUTLINE_LEAF - 1153)) | (1 << (PlSqlParser.OUTLINE - 1153)) | (1 << (PlSqlParser.OUT_OF_LINE - 1153)) | (1 << (PlSqlParser.OUT - 1153)) | (1 << (PlSqlParser.OVERFLOW_NOMOVE - 1153)) | (1 << (PlSqlParser.OVERFLOW - 1153)))) !== 0) || ((((_la - 1185)) & ~0x1f) == 0 && ((1 << (_la - 1185)) & ((1 << (PlSqlParser.OVERLAPS - 1185)) | (1 << (PlSqlParser.OVER - 1185)) | (1 << (PlSqlParser.OVERRIDING - 1185)) | (1 << (PlSqlParser.OWNER - 1185)) | (1 << (PlSqlParser.OWNERSHIP - 1185)) | (1 << (PlSqlParser.OWN - 1185)) | (1 << (PlSqlParser.PACKAGE - 1185)) | (1 << (PlSqlParser.PACKAGES - 1185)) | (1 << (PlSqlParser.PARALLEL_ENABLE - 1185)) | (1 << (PlSqlParser.PARALLEL_INDEX - 1185)) | (1 << (PlSqlParser.PARALLEL - 1185)) | (1 << (PlSqlParser.PARAMETERS - 1185)) | (1 << (PlSqlParser.PARAM - 1185)) | (1 << (PlSqlParser.PARENT - 1185)) | (1 << (PlSqlParser.PARITY - 1185)) | (1 << (PlSqlParser.PARTIAL_JOIN - 1185)) | (1 << (PlSqlParser.PARTIALLY - 1185)) | (1 << (PlSqlParser.PARTIAL - 1185)) | (1 << (PlSqlParser.PARTIAL_ROLLUP_PUSHDOWN - 1185)) | (1 << (PlSqlParser.PARTITION_HASH - 1185)) | (1 << (PlSqlParser.PARTITION_LIST - 1185)) | (1 << (PlSqlParser.PARTITION - 1185)) | (1 << (PlSqlParser.PARTITION_RANGE - 1185)) | (1 << (PlSqlParser.PARTITIONS - 1185)) | (1 << (PlSqlParser.PARTNUMINST - 1185)) | (1 << (PlSqlParser.PASSING - 1185)) | (1 << (PlSqlParser.PASSWORD_GRACE_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD_LIFE_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD_LOCK_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD - 1185)) | (1 << (PlSqlParser.PASSWORD_REUSE_MAX - 1185)))) !== 0) || ((((_la - 1217)) & ~0x1f) == 0 && ((1 << (_la - 1217)) & ((1 << (PlSqlParser.PASSWORD_REUSE_TIME - 1217)) | (1 << (PlSqlParser.PASSWORD_VERIFY_FUNCTION - 1217)) | (1 << (PlSqlParser.PAST - 1217)) | (1 << (PlSqlParser.PATCH - 1217)) | (1 << (PlSqlParser.PATH - 1217)) | (1 << (PlSqlParser.PATH_PREFIX - 1217)) | (1 << (PlSqlParser.PATHS - 1217)) | (1 << (PlSqlParser.PATTERN - 1217)) | (1 << (PlSqlParser.PBL_HS_BEGIN - 1217)) | (1 << (PlSqlParser.PBL_HS_END - 1217)) | (1 << (PlSqlParser.PCTINCREASE - 1217)) | (1 << (PlSqlParser.PCTTHRESHOLD - 1217)) | (1 << (PlSqlParser.PCTUSED - 1217)) | (1 << (PlSqlParser.PCTVERSION - 1217)) | (1 << (PlSqlParser.PENDING - 1217)) | (1 << (PlSqlParser.PERCENT_KEYWORD - 1217)) | (1 << (PlSqlParser.PERCENT_RANKM - 1217)) | (1 << (PlSqlParser.PERFORMANCE - 1217)) | (1 << (PlSqlParser.PERIOD_KEYWORD - 1217)) | (1 << (PlSqlParser.PERMANENT - 1217)) | (1 << (PlSqlParser.PERMISSION - 1217)) | (1 << (PlSqlParser.PERMUTE - 1217)) | (1 << (PlSqlParser.PER - 1217)) | (1 << (PlSqlParser.PFILE - 1217)) | (1 << (PlSqlParser.PHYSICAL - 1217)))) !== 0) || ((((_la - 1249)) & ~0x1f) == 0 && ((1 << (_la - 1249)) & ((1 << (PlSqlParser.PIKEY - 1249)) | (1 << (PlSqlParser.PIPELINED - 1249)) | (1 << (PlSqlParser.PIV_GB - 1249)) | (1 << (PlSqlParser.PIVOT - 1249)) | (1 << (PlSqlParser.PIV_SSF - 1249)) | (1 << (PlSqlParser.PLACE_DISTINCT - 1249)) | (1 << (PlSqlParser.PLACE_GROUP_BY - 1249)) | (1 << (PlSqlParser.PLAN - 1249)) | (1 << (PlSqlParser.PLSCOPE_SETTINGS - 1249)) | (1 << (PlSqlParser.PLS_INTEGER - 1249)) | (1 << (PlSqlParser.PLSQL_CCFLAGS - 1249)) | (1 << (PlSqlParser.PLSQL_CODE_TYPE - 1249)) | (1 << (PlSqlParser.PLSQL_DEBUG - 1249)) | (1 << (PlSqlParser.PLSQL_OPTIMIZE_LEVEL - 1249)) | (1 << (PlSqlParser.PLSQL_WARNINGS - 1249)) | (1 << (PlSqlParser.PLUGGABLE - 1249)) | (1 << (PlSqlParser.POINT - 1249)) | (1 << (PlSqlParser.POLICY - 1249)) | (1 << (PlSqlParser.POOL_16K - 1249)) | (1 << (PlSqlParser.POOL_2K - 1249)) | (1 << (PlSqlParser.POOL_32K - 1249)) | (1 << (PlSqlParser.POOL_4K - 1249)) | (1 << (PlSqlParser.POOL_8K - 1249)) | (1 << (PlSqlParser.POSITIVEN - 1249)) | (1 << (PlSqlParser.POSITIVE - 1249)) | (1 << (PlSqlParser.POST_TRANSACTION - 1249)) | (1 << (PlSqlParser.POWERMULTISET_BY_CARDINALITY - 1249)) | (1 << (PlSqlParser.POWERMULTISET - 1249)) | (1 << (PlSqlParser.POWER - 1249)) | (1 << (PlSqlParser.PQ_CONCURRENT_UNION - 1249)) | (1 << (PlSqlParser.PQ_DISTRIBUTE - 1249)))) !== 0) || ((((_la - 1281)) & ~0x1f) == 0 && ((1 << (_la - 1281)) & ((1 << (PlSqlParser.PQ_DISTRIBUTE_WINDOW - 1281)) | (1 << (PlSqlParser.PQ_FILTER - 1281)) | (1 << (PlSqlParser.PQ_MAP - 1281)) | (1 << (PlSqlParser.PQ_NOMAP - 1281)) | (1 << (PlSqlParser.PQ_REPLICATE - 1281)) | (1 << (PlSqlParser.PQ_SKEW - 1281)) | (1 << (PlSqlParser.PRAGMA - 1281)) | (1 << (PlSqlParser.PREBUILT - 1281)) | (1 << (PlSqlParser.PRECEDES - 1281)) | (1 << (PlSqlParser.PRECEDING - 1281)) | (1 << (PlSqlParser.PRECISION - 1281)) | (1 << (PlSqlParser.PRECOMPUTE_SUBQUERY - 1281)) | (1 << (PlSqlParser.PREDICATE_REORDERS - 1281)) | (1 << (PlSqlParser.PRELOAD - 1281)) | (1 << (PlSqlParser.PREPARE - 1281)) | (1 << (PlSqlParser.PRESENTNNV - 1281)) | (1 << (PlSqlParser.PRESENT - 1281)) | (1 << (PlSqlParser.PRESENTV - 1281)) | (1 << (PlSqlParser.PRESERVE_OID - 1281)) | (1 << (PlSqlParser.PRESERVE - 1281)) | (1 << (PlSqlParser.PRETTY - 1281)) | (1 << (PlSqlParser.PREVIOUS - 1281)) | (1 << (PlSqlParser.PREV - 1281)) | (1 << (PlSqlParser.PRIMARY - 1281)) | (1 << (PlSqlParser.PRINTBLOBTOCLOB - 1281)) | (1 << (PlSqlParser.PRIORITY - 1281)) | (1 << (PlSqlParser.PRIVATE - 1281)) | (1 << (PlSqlParser.PRIVATE_SGA - 1281)) | (1 << (PlSqlParser.PRIVILEGED - 1281)) | (1 << (PlSqlParser.PRIVILEGE - 1281)) | (1 << (PlSqlParser.PRIVILEGES - 1281)))) !== 0) || ((((_la - 1313)) & ~0x1f) == 0 && ((1 << (_la - 1313)) & ((1 << (PlSqlParser.PROCEDURAL - 1313)) | (1 << (PlSqlParser.PROCEDURE - 1313)) | (1 << (PlSqlParser.PROCESS - 1313)) | (1 << (PlSqlParser.PROFILE - 1313)) | (1 << (PlSqlParser.PROGRAM - 1313)) | (1 << (PlSqlParser.PROJECT - 1313)) | (1 << (PlSqlParser.PROPAGATE - 1313)) | (1 << (PlSqlParser.PROTECTED - 1313)) | (1 << (PlSqlParser.PROTECTION - 1313)) | (1 << (PlSqlParser.PROXY - 1313)) | (1 << (PlSqlParser.PRUNING - 1313)) | (1 << (PlSqlParser.PULL_PRED - 1313)) | (1 << (PlSqlParser.PURGE - 1313)) | (1 << (PlSqlParser.PUSH_PRED - 1313)) | (1 << (PlSqlParser.PUSH_SUBQ - 1313)) | (1 << (PlSqlParser.PX_FAULT_TOLERANCE - 1313)) | (1 << (PlSqlParser.PX_GRANULE - 1313)) | (1 << (PlSqlParser.PX_JOIN_FILTER - 1313)) | (1 << (PlSqlParser.QB_NAME - 1313)) | (1 << (PlSqlParser.QUERY_BLOCK - 1313)) | (1 << (PlSqlParser.QUERY - 1313)) | (1 << (PlSqlParser.QUEUE_CURR - 1313)) | (1 << (PlSqlParser.QUEUE - 1313)) | (1 << (PlSqlParser.QUEUE_ROWP - 1313)) | (1 << (PlSqlParser.QUIESCE - 1313)) | (1 << (PlSqlParser.QUORUM - 1313)) | (1 << (PlSqlParser.QUOTA - 1313)) | (1 << (PlSqlParser.RAISE - 1313)) | (1 << (PlSqlParser.RANDOM_LOCAL - 1313)) | (1 << (PlSqlParser.RANDOM - 1313)) | (1 << (PlSqlParser.RANGE - 1313)))) !== 0) || ((((_la - 1345)) & ~0x1f) == 0 && ((1 << (_la - 1345)) & ((1 << (PlSqlParser.RANKM - 1345)) | (1 << (PlSqlParser.RAPIDLY - 1345)) | (1 << (PlSqlParser.RAW - 1345)) | (1 << (PlSqlParser.RAWTOHEX - 1345)) | (1 << (PlSqlParser.RAWTONHEX - 1345)) | (1 << (PlSqlParser.RBA - 1345)) | (1 << (PlSqlParser.RBO_OUTLINE - 1345)) | (1 << (PlSqlParser.RDBA - 1345)) | (1 << (PlSqlParser.READ - 1345)) | (1 << (PlSqlParser.READS - 1345)) | (1 << (PlSqlParser.REALM - 1345)) | (1 << (PlSqlParser.REAL - 1345)) | (1 << (PlSqlParser.REBALANCE - 1345)) | (1 << (PlSqlParser.REBUILD - 1345)) | (1 << (PlSqlParser.RECORD - 1345)) | (1 << (PlSqlParser.RECORDS_PER_BLOCK - 1345)) | (1 << (PlSqlParser.RECOVERABLE - 1345)) | (1 << (PlSqlParser.RECOVER - 1345)) | (1 << (PlSqlParser.RECOVERY - 1345)) | (1 << (PlSqlParser.RECYCLEBIN - 1345)) | (1 << (PlSqlParser.RECYCLE - 1345)) | (1 << (PlSqlParser.REDACTION - 1345)) | (1 << (PlSqlParser.REDEFINE - 1345)) | (1 << (PlSqlParser.REDO - 1345)) | (1 << (PlSqlParser.REDUCED - 1345)) | (1 << (PlSqlParser.REDUNDANCY - 1345)) | (1 << (PlSqlParser.REF_CASCADE_CURSOR - 1345)) | (1 << (PlSqlParser.REFERENCED - 1345)) | (1 << (PlSqlParser.REFERENCE - 1345)) | (1 << (PlSqlParser.REFERENCES - 1345)) | (1 << (PlSqlParser.REFERENCING - 1345)) | (1 << (PlSqlParser.REF - 1345)))) !== 0) || ((((_la - 1377)) & ~0x1f) == 0 && ((1 << (_la - 1377)) & ((1 << (PlSqlParser.REFRESH - 1377)) | (1 << (PlSqlParser.REFTOHEX - 1377)) | (1 << (PlSqlParser.REGEXP_COUNT - 1377)) | (1 << (PlSqlParser.REGEXP_INSTR - 1377)) | (1 << (PlSqlParser.REGEXP_LIKE - 1377)) | (1 << (PlSqlParser.REGEXP_REPLACE - 1377)) | (1 << (PlSqlParser.REGEXP_SUBSTR - 1377)) | (1 << (PlSqlParser.REGISTER - 1377)) | (1 << (PlSqlParser.REGR_AVGX - 1377)) | (1 << (PlSqlParser.REGR_AVGY - 1377)) | (1 << (PlSqlParser.REGR_COUNT - 1377)) | (1 << (PlSqlParser.REGR_INTERCEPT - 1377)) | (1 << (PlSqlParser.REGR_R2 - 1377)) | (1 << (PlSqlParser.REGR_SLOPE - 1377)) | (1 << (PlSqlParser.REGR_SXX - 1377)) | (1 << (PlSqlParser.REGR_SXY - 1377)) | (1 << (PlSqlParser.REGR_SYY - 1377)) | (1 << (PlSqlParser.REGULAR - 1377)) | (1 << (PlSqlParser.REJECT - 1377)) | (1 << (PlSqlParser.REKEY - 1377)) | (1 << (PlSqlParser.RELATIONAL - 1377)) | (1 << (PlSqlParser.RELOCATE - 1377)) | (1 << (PlSqlParser.RELY - 1377)) | (1 << (PlSqlParser.REMAINDER - 1377)) | (1 << (PlSqlParser.REMOTE_MAPPED - 1377)) | (1 << (PlSqlParser.REMOVE - 1377)) | (1 << (PlSqlParser.RENAME - 1377)) | (1 << (PlSqlParser.REPAIR - 1377)) | (1 << (PlSqlParser.REPEAT - 1377)) | (1 << (PlSqlParser.REPLACE - 1377)) | (1 << (PlSqlParser.REPLICATION - 1377)))) !== 0) || ((((_la - 1409)) & ~0x1f) == 0 && ((1 << (_la - 1409)) & ((1 << (PlSqlParser.REQUIRED - 1409)) | (1 << (PlSqlParser.RESETLOGS - 1409)) | (1 << (PlSqlParser.RESET - 1409)) | (1 << (PlSqlParser.RESIZE - 1409)) | (1 << (PlSqlParser.RESOLVE - 1409)) | (1 << (PlSqlParser.RESOLVER - 1409)) | (1 << (PlSqlParser.RESPECT - 1409)) | (1 << (PlSqlParser.RESTART - 1409)) | (1 << (PlSqlParser.RESTORE_AS_INTERVALS - 1409)) | (1 << (PlSqlParser.RESTORE - 1409)) | (1 << (PlSqlParser.RESTRICT_ALL_REF_CONS - 1409)) | (1 << (PlSqlParser.RESTRICTED - 1409)) | (1 << (PlSqlParser.RESTRICT_REFERENCES - 1409)) | (1 << (PlSqlParser.RESTRICT - 1409)) | (1 << (PlSqlParser.RESULT_CACHE - 1409)) | (1 << (PlSqlParser.RESULT - 1409)) | (1 << (PlSqlParser.RESUMABLE - 1409)) | (1 << (PlSqlParser.RESUME - 1409)) | (1 << (PlSqlParser.RETENTION - 1409)) | (1 << (PlSqlParser.RETRY_ON_ROW_CHANGE - 1409)) | (1 << (PlSqlParser.RETURNING - 1409)) | (1 << (PlSqlParser.RETURN - 1409)) | (1 << (PlSqlParser.REUSE - 1409)) | (1 << (PlSqlParser.REVERSE - 1409)) | (1 << (PlSqlParser.REWRITE_OR_ERROR - 1409)) | (1 << (PlSqlParser.REWRITE - 1409)) | (1 << (PlSqlParser.RIGHT - 1409)) | (1 << (PlSqlParser.ROLE - 1409)) | (1 << (PlSqlParser.ROLESET - 1409)) | (1 << (PlSqlParser.ROLES - 1409)))) !== 0) || ((((_la - 1441)) & ~0x1f) == 0 && ((1 << (_la - 1441)) & ((1 << (PlSqlParser.ROLLBACK - 1441)) | (1 << (PlSqlParser.ROLLING - 1441)) | (1 << (PlSqlParser.ROLLUP - 1441)) | (1 << (PlSqlParser.ROWDEPENDENCIES - 1441)) | (1 << (PlSqlParser.ROWID_MAPPING_TABLE - 1441)) | (1 << (PlSqlParser.ROWID - 1441)) | (1 << (PlSqlParser.ROWIDTOCHAR - 1441)) | (1 << (PlSqlParser.ROWIDTONCHAR - 1441)) | (1 << (PlSqlParser.ROW_LENGTH - 1441)) | (1 << (PlSqlParser.ROWNUM - 1441)) | (1 << (PlSqlParser.ROW - 1441)) | (1 << (PlSqlParser.ROWS - 1441)) | (1 << (PlSqlParser.RPAD - 1441)) | (1 << (PlSqlParser.RTRIM - 1441)) | (1 << (PlSqlParser.RULE - 1441)) | (1 << (PlSqlParser.RULES - 1441)) | (1 << (PlSqlParser.RUNNING - 1441)) | (1 << (PlSqlParser.SALT - 1441)) | (1 << (PlSqlParser.SAMPLE - 1441)) | (1 << (PlSqlParser.SAVE_AS_INTERVALS - 1441)) | (1 << (PlSqlParser.SAVEPOINT - 1441)) | (1 << (PlSqlParser.SAVE - 1441)) | (1 << (PlSqlParser.SB4 - 1441)) | (1 << (PlSqlParser.SCALE_ROWS - 1441)) | (1 << (PlSqlParser.SCALE - 1441)) | (1 << (PlSqlParser.SCAN_INSTANCES - 1441)) | (1 << (PlSqlParser.SCAN - 1441)) | (1 << (PlSqlParser.SCHEDULER - 1441)) | (1 << (PlSqlParser.SCHEMACHECK - 1441)) | (1 << (PlSqlParser.SCHEMA - 1441)) | (1 << (PlSqlParser.SCN_ASCENDING - 1441)) | (1 << (PlSqlParser.SCN - 1441)))) !== 0) || ((((_la - 1473)) & ~0x1f) == 0 && ((1 << (_la - 1473)) & ((1 << (PlSqlParser.SCOPE - 1473)) | (1 << (PlSqlParser.SCRUB - 1473)) | (1 << (PlSqlParser.SD_ALL - 1473)) | (1 << (PlSqlParser.SD_INHIBIT - 1473)) | (1 << (PlSqlParser.SDO_GEOM_MBR - 1473)) | (1 << (PlSqlParser.SD_SHOW - 1473)) | (1 << (PlSqlParser.SEARCH - 1473)) | (1 << (PlSqlParser.SECOND - 1473)) | (1 << (PlSqlParser.SECRET - 1473)) | (1 << (PlSqlParser.SECUREFILE_DBA - 1473)) | (1 << (PlSqlParser.SECUREFILE - 1473)) | (1 << (PlSqlParser.SECURITY - 1473)) | (1 << (PlSqlParser.SEED - 1473)) | (1 << (PlSqlParser.SEG_BLOCK - 1473)) | (1 << (PlSqlParser.SEG_FILE - 1473)) | (1 << (PlSqlParser.SEGMENT - 1473)) | (1 << (PlSqlParser.SELECTIVITY - 1473)) | (1 << (PlSqlParser.SELF - 1473)) | (1 << (PlSqlParser.SEMIJOIN_DRIVER - 1473)) | (1 << (PlSqlParser.SEMIJOIN - 1473)) | (1 << (PlSqlParser.SEMI_TO_INNER - 1473)) | (1 << (PlSqlParser.SEQUENCED - 1473)) | (1 << (PlSqlParser.SEQUENCE - 1473)) | (1 << (PlSqlParser.SEQUENTIAL - 1473)) | (1 << (PlSqlParser.SERIALIZABLE - 1473)) | (1 << (PlSqlParser.SERIALLY_REUSABLE - 1473)) | (1 << (PlSqlParser.SERIAL - 1473)) | (1 << (PlSqlParser.SERVERERROR - 1473)) | (1 << (PlSqlParser.SERVICE_NAME_CONVERT - 1473)) | (1 << (PlSqlParser.SERVICES - 1473)))) !== 0) || ((((_la - 1505)) & ~0x1f) == 0 && ((1 << (_la - 1505)) & ((1 << (PlSqlParser.SESSION_CACHED_CURSORS - 1505)) | (1 << (PlSqlParser.SESSION - 1505)) | (1 << (PlSqlParser.SESSIONS_PER_USER - 1505)) | (1 << (PlSqlParser.SESSIONTIMEZONE - 1505)) | (1 << (PlSqlParser.SESSIONTZNAME - 1505)) | (1 << (PlSqlParser.SET - 1505)) | (1 << (PlSqlParser.SETS - 1505)) | (1 << (PlSqlParser.SETTINGS - 1505)) | (1 << (PlSqlParser.SET_TO_JOIN - 1505)) | (1 << (PlSqlParser.SEVERE - 1505)) | (1 << (PlSqlParser.SHARED_POOL - 1505)) | (1 << (PlSqlParser.SHARED - 1505)) | (1 << (PlSqlParser.SHARING - 1505)) | (1 << (PlSqlParser.SHELFLIFE - 1505)) | (1 << (PlSqlParser.SHOW - 1505)) | (1 << (PlSqlParser.SHRINK - 1505)) | (1 << (PlSqlParser.SHUTDOWN - 1505)) | (1 << (PlSqlParser.SIBLINGS - 1505)) | (1 << (PlSqlParser.SID - 1505)) | (1 << (PlSqlParser.SIGNAL_COMPONENT - 1505)) | (1 << (PlSqlParser.SIGNAL_FUNCTION - 1505)) | (1 << (PlSqlParser.SIGN - 1505)) | (1 << (PlSqlParser.SIGNTYPE - 1505)) | (1 << (PlSqlParser.SIMPLE_INTEGER - 1505)) | (1 << (PlSqlParser.SIMPLE - 1505)) | (1 << (PlSqlParser.SINGLE - 1505)) | (1 << (PlSqlParser.SINGLETASK - 1505)) | (1 << (PlSqlParser.SINH - 1505)) | (1 << (PlSqlParser.SIN - 1505)) | (1 << (PlSqlParser.SKIP_EXT_OPTIMIZER - 1505)))) !== 0) || ((((_la - 1537)) & ~0x1f) == 0 && ((1 << (_la - 1537)) & ((1 << (PlSqlParser.SKIP_ - 1537)) | (1 << (PlSqlParser.SKIP_UNQ_UNUSABLE_IDX - 1537)) | (1 << (PlSqlParser.SKIP_UNUSABLE_INDEXES - 1537)) | (1 << (PlSqlParser.SMALLFILE - 1537)) | (1 << (PlSqlParser.SMALLINT - 1537)) | (1 << (PlSqlParser.SNAPSHOT - 1537)) | (1 << (PlSqlParser.SOME - 1537)) | (1 << (PlSqlParser.SORT - 1537)) | (1 << (PlSqlParser.SOUNDEX - 1537)) | (1 << (PlSqlParser.SOURCE_FILE_DIRECTORY - 1537)) | (1 << (PlSqlParser.SOURCE_FILE_NAME_CONVERT - 1537)) | (1 << (PlSqlParser.SOURCE - 1537)) | (1 << (PlSqlParser.SPACE_KEYWORD - 1537)) | (1 << (PlSqlParser.SPECIFICATION - 1537)) | (1 << (PlSqlParser.SPFILE - 1537)) | (1 << (PlSqlParser.SPLIT - 1537)) | (1 << (PlSqlParser.SPREADSHEET - 1537)) | (1 << (PlSqlParser.SQLDATA - 1537)) | (1 << (PlSqlParser.SQLERROR - 1537)) | (1 << (PlSqlParser.SQLLDR - 1537)) | (1 << (PlSqlParser.SQL - 1537)) | (1 << (PlSqlParser.SQL_TRACE - 1537)) | (1 << (PlSqlParser.SQL_TRANSLATION_PROFILE - 1537)) | (1 << (PlSqlParser.SQRT - 1537)) | (1 << (PlSqlParser.STALE - 1537)) | (1 << (PlSqlParser.STANDALONE - 1537)) | (1 << (PlSqlParser.STANDARD_HASH - 1537)) | (1 << (PlSqlParser.STANDBY_MAX_DATA_DELAY - 1537)) | (1 << (PlSqlParser.STANDBYS - 1537)) | (1 << (PlSqlParser.STANDBY - 1537)) | (1 << (PlSqlParser.STAR - 1537)) | (1 << (PlSqlParser.STAR_TRANSFORMATION - 1537)))) !== 0) || ((((_la - 1570)) & ~0x1f) == 0 && ((1 << (_la - 1570)) & ((1 << (PlSqlParser.STARTUP - 1570)) | (1 << (PlSqlParser.STATEMENT_ID - 1570)) | (1 << (PlSqlParser.STATEMENT_QUEUING - 1570)) | (1 << (PlSqlParser.STATEMENTS - 1570)) | (1 << (PlSqlParser.STATEMENT - 1570)) | (1 << (PlSqlParser.STATE - 1570)) | (1 << (PlSqlParser.STATIC - 1570)) | (1 << (PlSqlParser.STATISTICS - 1570)) | (1 << (PlSqlParser.STATS_BINOMIAL_TEST - 1570)) | (1 << (PlSqlParser.STATS_CROSSTAB - 1570)) | (1 << (PlSqlParser.STATS_F_TEST - 1570)) | (1 << (PlSqlParser.STATS_KS_TEST - 1570)) | (1 << (PlSqlParser.STATS_MODE - 1570)) | (1 << (PlSqlParser.STATS_MW_TEST - 1570)) | (1 << (PlSqlParser.STATS_ONE_WAY_ANOVA - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_INDEP - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_INDEPU - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_ONE - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_PAIRED - 1570)) | (1 << (PlSqlParser.STATS_WSR_TEST - 1570)) | (1 << (PlSqlParser.STDDEV_POP - 1570)) | (1 << (PlSqlParser.STDDEV_SAMP - 1570)) | (1 << (PlSqlParser.STOP - 1570)) | (1 << (PlSqlParser.STORAGE - 1570)) | (1 << (PlSqlParser.STORE - 1570)) | (1 << (PlSqlParser.STREAMS - 1570)) | (1 << (PlSqlParser.STREAM - 1570)) | (1 << (PlSqlParser.STRICT - 1570)) | (1 << (PlSqlParser.STRING - 1570)) | (1 << (PlSqlParser.STRIPE_COLUMNS - 1570)) | (1 << (PlSqlParser.STRIPE_WIDTH - 1570)) | (1 << (PlSqlParser.STRIP - 1570)))) !== 0) || ((((_la - 1602)) & ~0x1f) == 0 && ((1 << (_la - 1602)) & ((1 << (PlSqlParser.STRUCTURE - 1602)) | (1 << (PlSqlParser.SUBMULTISET - 1602)) | (1 << (PlSqlParser.SUBPARTITION_REL - 1602)) | (1 << (PlSqlParser.SUBPARTITIONS - 1602)) | (1 << (PlSqlParser.SUBPARTITION - 1602)) | (1 << (PlSqlParser.SUBQUERIES - 1602)) | (1 << (PlSqlParser.SUBQUERY_PRUNING - 1602)) | (1 << (PlSqlParser.SUBSCRIBE - 1602)) | (1 << (PlSqlParser.SUBSET - 1602)) | (1 << (PlSqlParser.SUBSTITUTABLE - 1602)) | (1 << (PlSqlParser.SUBSTR2 - 1602)) | (1 << (PlSqlParser.SUBSTR4 - 1602)) | (1 << (PlSqlParser.SUBSTRB - 1602)) | (1 << (PlSqlParser.SUBSTRC - 1602)) | (1 << (PlSqlParser.SUBTYPE - 1602)) | (1 << (PlSqlParser.SUCCESSFUL - 1602)) | (1 << (PlSqlParser.SUCCESS - 1602)) | (1 << (PlSqlParser.SUMMARY - 1602)) | (1 << (PlSqlParser.SUPPLEMENTAL - 1602)) | (1 << (PlSqlParser.SUSPEND - 1602)) | (1 << (PlSqlParser.SWAP_JOIN_INPUTS - 1602)) | (1 << (PlSqlParser.SWITCHOVER - 1602)) | (1 << (PlSqlParser.SWITCH - 1602)) | (1 << (PlSqlParser.SYNCHRONOUS - 1602)) | (1 << (PlSqlParser.SYNC - 1602)) | (1 << (PlSqlParser.SYSASM - 1602)) | (1 << (PlSqlParser.SYS_AUDIT - 1602)) | (1 << (PlSqlParser.SYSAUX - 1602)) | (1 << (PlSqlParser.SYSBACKUP - 1602)) | (1 << (PlSqlParser.SYS_CHECKACL - 1602)) | (1 << (PlSqlParser.SYS_CHECK_PRIVILEGE - 1602)))) !== 0) || ((((_la - 1634)) & ~0x1f) == 0 && ((1 << (_la - 1634)) & ((1 << (PlSqlParser.SYS_CONNECT_BY_PATH - 1634)) | (1 << (PlSqlParser.SYS_CONTEXT - 1634)) | (1 << (PlSqlParser.SYSDATE - 1634)) | (1 << (PlSqlParser.SYSDBA - 1634)) | (1 << (PlSqlParser.SYS_DBURIGEN - 1634)) | (1 << (PlSqlParser.SYSDG - 1634)) | (1 << (PlSqlParser.SYS_DL_CURSOR - 1634)) | (1 << (PlSqlParser.SYS_DM_RXFORM_CHR - 1634)) | (1 << (PlSqlParser.SYS_DM_RXFORM_NUM - 1634)) | (1 << (PlSqlParser.SYS_DOM_COMPARE - 1634)) | (1 << (PlSqlParser.SYS_DST_PRIM2SEC - 1634)) | (1 << (PlSqlParser.SYS_DST_SEC2PRIM - 1634)) | (1 << (PlSqlParser.SYS_ET_BFILE_TO_RAW - 1634)) | (1 << (PlSqlParser.SYS_ET_BLOB_TO_IMAGE - 1634)) | (1 << (PlSqlParser.SYS_ET_IMAGE_TO_BLOB - 1634)) | (1 << (PlSqlParser.SYS_ET_RAW_TO_BFILE - 1634)) | (1 << (PlSqlParser.SYS_EXTPDTXT - 1634)) | (1 << (PlSqlParser.SYS_EXTRACT_UTC - 1634)) | (1 << (PlSqlParser.SYS_FBT_INSDEL - 1634)) | (1 << (PlSqlParser.SYS_FILTER_ACLS - 1634)) | (1 << (PlSqlParser.SYS_FNMATCHES - 1634)) | (1 << (PlSqlParser.SYS_FNREPLACE - 1634)) | (1 << (PlSqlParser.SYS_GET_ACLIDS - 1634)) | (1 << (PlSqlParser.SYS_GET_COL_ACLIDS - 1634)) | (1 << (PlSqlParser.SYS_GET_PRIVILEGES - 1634)) | (1 << (PlSqlParser.SYS_GETTOKENID - 1634)) | (1 << (PlSqlParser.SYS_GETXTIVAL - 1634)) | (1 << (PlSqlParser.SYS_GUID - 1634)) | (1 << (PlSqlParser.SYSGUID - 1634)) | (1 << (PlSqlParser.SYSKM - 1634)) | (1 << (PlSqlParser.SYS_MAKE_XMLNODEID - 1634)) | (1 << (PlSqlParser.SYS_MAKEXML - 1634)))) !== 0) || ((((_la - 1666)) & ~0x1f) == 0 && ((1 << (_la - 1666)) & ((1 << (PlSqlParser.SYS_MKXMLATTR - 1666)) | (1 << (PlSqlParser.SYS_MKXTI - 1666)) | (1 << (PlSqlParser.SYSOBJ - 1666)) | (1 << (PlSqlParser.SYS_OP_ADT2BIN - 1666)) | (1 << (PlSqlParser.SYS_OP_ADTCONS - 1666)) | (1 << (PlSqlParser.SYS_OP_ALSCRVAL - 1666)) | (1 << (PlSqlParser.SYS_OP_ATG - 1666)) | (1 << (PlSqlParser.SYS_OP_BIN2ADT - 1666)) | (1 << (PlSqlParser.SYS_OP_BITVEC - 1666)) | (1 << (PlSqlParser.SYS_OP_BL2R - 1666)) | (1 << (PlSqlParser.SYS_OP_BLOOM_FILTER_LIST - 1666)) | (1 << (PlSqlParser.SYS_OP_BLOOM_FILTER - 1666)) | (1 << (PlSqlParser.SYS_OP_C2C - 1666)) | (1 << (PlSqlParser.SYS_OP_CAST - 1666)) | (1 << (PlSqlParser.SYS_OP_CEG - 1666)) | (1 << (PlSqlParser.SYS_OP_CL2C - 1666)) | (1 << (PlSqlParser.SYS_OP_COMBINED_HASH - 1666)) | (1 << (PlSqlParser.SYS_OP_COMP - 1666)) | (1 << (PlSqlParser.SYS_OP_CONVERT - 1666)) | (1 << (PlSqlParser.SYS_OP_COUNTCHG - 1666)) | (1 << (PlSqlParser.SYS_OP_CSCONV - 1666)) | (1 << (PlSqlParser.SYS_OP_CSCONVTEST - 1666)) | (1 << (PlSqlParser.SYS_OP_CSR - 1666)) | (1 << (PlSqlParser.SYS_OP_CSX_PATCH - 1666)) | (1 << (PlSqlParser.SYS_OP_CYCLED_SEQ - 1666)) | (1 << (PlSqlParser.SYS_OP_DECOMP - 1666)) | (1 << (PlSqlParser.SYS_OP_DESCEND - 1666)) | (1 << (PlSqlParser.SYS_OP_DISTINCT - 1666)) | (1 << (PlSqlParser.SYS_OP_DRA - 1666)) | (1 << (PlSqlParser.SYS_OP_DUMP - 1666)) | (1 << (PlSqlParser.SYS_OP_DV_CHECK - 1666)) | (1 << (PlSqlParser.SYS_OP_ENFORCE_NOT_NULL - 1666)))) !== 0) || ((((_la - 1698)) & ~0x1f) == 0 && ((1 << (_la - 1698)) & ((1 << (PlSqlParser.SYSOPER - 1698)) | (1 << (PlSqlParser.SYS_OP_EXTRACT - 1698)) | (1 << (PlSqlParser.SYS_OP_GROUPING - 1698)) | (1 << (PlSqlParser.SYS_OP_GUID - 1698)) | (1 << (PlSqlParser.SYS_OP_HASH - 1698)) | (1 << (PlSqlParser.SYS_OP_IIX - 1698)) | (1 << (PlSqlParser.SYS_OP_ITR - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_CREATE - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_FILTER_LIST - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_FILTER - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_SUCCEEDED - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_USE - 1698)) | (1 << (PlSqlParser.SYS_OP_LBID - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2BLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2CLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2ID - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2NCLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2TYP - 1698)) | (1 << (PlSqlParser.SYS_OP_LSVI - 1698)) | (1 << (PlSqlParser.SYS_OP_LVL - 1698)) | (1 << (PlSqlParser.SYS_OP_MAKEOID - 1698)) | (1 << (PlSqlParser.SYS_OP_MAP_NONNULL - 1698)) | (1 << (PlSqlParser.SYS_OP_MSR - 1698)) | (1 << (PlSqlParser.SYS_OP_NICOMBINE - 1698)) | (1 << (PlSqlParser.SYS_OP_NIEXTRACT - 1698)) | (1 << (PlSqlParser.SYS_OP_NII - 1698)) | (1 << (PlSqlParser.SYS_OP_NIX - 1698)) | (1 << (PlSqlParser.SYS_OP_NOEXPAND - 1698)) | (1 << (PlSqlParser.SYS_OP_NTCIMG - 1698)) | (1 << (PlSqlParser.SYS_OP_NUMTORAW - 1698)) | (1 << (PlSqlParser.SYS_OP_OIDVALUE - 1698)) | (1 << (PlSqlParser.SYS_OP_OPNSIZE - 1698)))) !== 0) || ((((_la - 1730)) & ~0x1f) == 0 && ((1 << (_la - 1730)) & ((1 << (PlSqlParser.SYS_OP_PAR_1 - 1730)) | (1 << (PlSqlParser.SYS_OP_PARGID_1 - 1730)) | (1 << (PlSqlParser.SYS_OP_PARGID - 1730)) | (1 << (PlSqlParser.SYS_OP_PAR - 1730)) | (1 << (PlSqlParser.SYS_OP_PART_ID - 1730)) | (1 << (PlSqlParser.SYS_OP_PIVOT - 1730)) | (1 << (PlSqlParser.SYS_OP_R2O - 1730)) | (1 << (PlSqlParser.SYS_OP_RAWTONUM - 1730)) | (1 << (PlSqlParser.SYS_OP_RDTM - 1730)) | (1 << (PlSqlParser.SYS_OP_REF - 1730)) | (1 << (PlSqlParser.SYS_OP_RMTD - 1730)) | (1 << (PlSqlParser.SYS_OP_ROWIDTOOBJ - 1730)) | (1 << (PlSqlParser.SYS_OP_RPB - 1730)) | (1 << (PlSqlParser.SYS_OPTLOBPRBSC - 1730)) | (1 << (PlSqlParser.SYS_OP_TOSETID - 1730)) | (1 << (PlSqlParser.SYS_OP_TPR - 1730)) | (1 << (PlSqlParser.SYS_OP_TRTB - 1730)) | (1 << (PlSqlParser.SYS_OPTXICMP - 1730)) | (1 << (PlSqlParser.SYS_OPTXQCASTASNQ - 1730)) | (1 << (PlSqlParser.SYS_OP_UNDESCEND - 1730)) | (1 << (PlSqlParser.SYS_OP_VECAND - 1730)) | (1 << (PlSqlParser.SYS_OP_VECBIT - 1730)) | (1 << (PlSqlParser.SYS_OP_VECOR - 1730)) | (1 << (PlSqlParser.SYS_OP_VECXOR - 1730)) | (1 << (PlSqlParser.SYS_OP_VERSION - 1730)) | (1 << (PlSqlParser.SYS_OP_VREF - 1730)) | (1 << (PlSqlParser.SYS_OP_VVD - 1730)) | (1 << (PlSqlParser.SYS_OP_XMLCONS_FOR_CSX - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHATG - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHIDX - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHOP - 1730)) | (1 << (PlSqlParser.SYS_OP_XTXT2SQLT - 1730)))) !== 0) || ((((_la - 1762)) & ~0x1f) == 0 && ((1 << (_la - 1762)) & ((1 << (PlSqlParser.SYS_OP_ZONE_ID - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_DEPTH - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_MAXCHILD - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_PARENT - 1762)) | (1 << (PlSqlParser.SYS_PARALLEL_TXN - 1762)) | (1 << (PlSqlParser.SYS_PATHID_IS_ATTR - 1762)) | (1 << (PlSqlParser.SYS_PATHID_IS_NMSPC - 1762)) | (1 << (PlSqlParser.SYS_PATHID_LASTNAME - 1762)) | (1 << (PlSqlParser.SYS_PATHID_LASTNMSPC - 1762)) | (1 << (PlSqlParser.SYS_PATH_REVERSE - 1762)) | (1 << (PlSqlParser.SYS_PXQEXTRACT - 1762)) | (1 << (PlSqlParser.SYS_RAW_TO_XSID - 1762)) | (1 << (PlSqlParser.SYS_RID_ORDER - 1762)) | (1 << (PlSqlParser.SYS_ROW_DELTA - 1762)) | (1 << (PlSqlParser.SYS_SC_2_XMLT - 1762)) | (1 << (PlSqlParser.SYS_SYNRCIREDO - 1762)) | (1 << (PlSqlParser.SYSTEM_DEFINED - 1762)) | (1 << (PlSqlParser.SYSTEM - 1762)) | (1 << (PlSqlParser.SYSTIMESTAMP - 1762)) | (1 << (PlSqlParser.SYS_TYPEID - 1762)) | (1 << (PlSqlParser.SYS_UMAKEXML - 1762)) | (1 << (PlSqlParser.SYS_XMLANALYZE - 1762)) | (1 << (PlSqlParser.SYS_XMLCONTAINS - 1762)) | (1 << (PlSqlParser.SYS_XMLCONV - 1762)) | (1 << (PlSqlParser.SYS_XMLEXNSURI - 1762)) | (1 << (PlSqlParser.SYS_XMLGEN - 1762)) | (1 << (PlSqlParser.SYS_XMLI_LOC_ISNODE - 1762)) | (1 << (PlSqlParser.SYS_XMLI_LOC_ISTEXT - 1762)) | (1 << (PlSqlParser.SYS_XMLINSTR - 1762)) | (1 << (PlSqlParser.SYS_XMLLOCATOR_GETSVAL - 1762)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETCID - 1762)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETLOCATOR - 1762)))) !== 0) || ((((_la - 1794)) & ~0x1f) == 0 && ((1 << (_la - 1794)) & ((1 << (PlSqlParser.SYS_XMLNODEID_GETOKEY - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETPATHID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETPTRID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETRID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETSVAL - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETTID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID - 1794)) | (1 << (PlSqlParser.SYS_XMLT_2_SC - 1794)) | (1 << (PlSqlParser.SYS_XMLTRANSLATE - 1794)) | (1 << (PlSqlParser.SYS_XMLTYPE2SQL - 1794)) | (1 << (PlSqlParser.SYS_XQ_ASQLCNV - 1794)) | (1 << (PlSqlParser.SYS_XQ_ATOMCNVCHK - 1794)) | (1 << (PlSqlParser.SYS_XQBASEURI - 1794)) | (1 << (PlSqlParser.SYS_XQCASTABLEERRH - 1794)) | (1 << (PlSqlParser.SYS_XQCODEP2STR - 1794)) | (1 << (PlSqlParser.SYS_XQCODEPEQ - 1794)) | (1 << (PlSqlParser.SYS_XQCON2SEQ - 1794)) | (1 << (PlSqlParser.SYS_XQCONCAT - 1794)) | (1 << (PlSqlParser.SYS_XQDELETE - 1794)) | (1 << (PlSqlParser.SYS_XQDFLTCOLATION - 1794)) | (1 << (PlSqlParser.SYS_XQDOC - 1794)) | (1 << (PlSqlParser.SYS_XQDOCURI - 1794)) | (1 << (PlSqlParser.SYS_XQDURDIV - 1794)) | (1 << (PlSqlParser.SYS_XQED4URI - 1794)) | (1 << (PlSqlParser.SYS_XQENDSWITH - 1794)) | (1 << (PlSqlParser.SYS_XQERRH - 1794)) | (1 << (PlSqlParser.SYS_XQERR - 1794)) | (1 << (PlSqlParser.SYS_XQESHTMLURI - 1794)) | (1 << (PlSqlParser.SYS_XQEXLOBVAL - 1794)) | (1 << (PlSqlParser.SYS_XQEXSTWRP - 1794)) | (1 << (PlSqlParser.SYS_XQEXTRACT - 1794)) | (1 << (PlSqlParser.SYS_XQEXTRREF - 1794)))) !== 0) || ((((_la - 1826)) & ~0x1f) == 0 && ((1 << (_la - 1826)) & ((1 << (PlSqlParser.SYS_XQEXVAL - 1826)) | (1 << (PlSqlParser.SYS_XQFB2STR - 1826)) | (1 << (PlSqlParser.SYS_XQFNBOOL - 1826)) | (1 << (PlSqlParser.SYS_XQFNCMP - 1826)) | (1 << (PlSqlParser.SYS_XQFNDATIM - 1826)) | (1 << (PlSqlParser.SYS_XQFNLNAME - 1826)) | (1 << (PlSqlParser.SYS_XQFNNM - 1826)) | (1 << (PlSqlParser.SYS_XQFNNSURI - 1826)) | (1 << (PlSqlParser.SYS_XQFNPREDTRUTH - 1826)) | (1 << (PlSqlParser.SYS_XQFNQNM - 1826)) | (1 << (PlSqlParser.SYS_XQFNROOT - 1826)) | (1 << (PlSqlParser.SYS_XQFORMATNUM - 1826)) | (1 << (PlSqlParser.SYS_XQFTCONTAIN - 1826)) | (1 << (PlSqlParser.SYS_XQFUNCR - 1826)) | (1 << (PlSqlParser.SYS_XQGETCONTENT - 1826)) | (1 << (PlSqlParser.SYS_XQINDXOF - 1826)) | (1 << (PlSqlParser.SYS_XQINSERT - 1826)) | (1 << (PlSqlParser.SYS_XQINSPFX - 1826)) | (1 << (PlSqlParser.SYS_XQIRI2URI - 1826)) | (1 << (PlSqlParser.SYS_XQLANG - 1826)) | (1 << (PlSqlParser.SYS_XQLLNMFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQMKNODEREF - 1826)) | (1 << (PlSqlParser.SYS_XQNILLED - 1826)) | (1 << (PlSqlParser.SYS_XQNODENAME - 1826)) | (1 << (PlSqlParser.SYS_XQNORMSPACE - 1826)) | (1 << (PlSqlParser.SYS_XQNORMUCODE - 1826)) | (1 << (PlSqlParser.SYS_XQ_NRNG - 1826)) | (1 << (PlSqlParser.SYS_XQNSP4PFX - 1826)) | (1 << (PlSqlParser.SYS_XQNSPFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQPFXFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQ_PKSQL2XML - 1826)) | (1 << (PlSqlParser.SYS_XQPOLYABS - 1826)))) !== 0) || ((((_la - 1858)) & ~0x1f) == 0 && ((1 << (_la - 1858)) & ((1 << (PlSqlParser.SYS_XQPOLYADD - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCEL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCSTBL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCST - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYDIV - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYFLR - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYMOD - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYMUL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYRND - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYSQRT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYSUB - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYUMUS - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYUPLS - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVEQ - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVGE - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVGT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVLE - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVLT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVNE - 1858)) | (1 << (PlSqlParser.SYS_XQREF2VAL - 1858)) | (1 << (PlSqlParser.SYS_XQRENAME - 1858)) | (1 << (PlSqlParser.SYS_XQREPLACE - 1858)) | (1 << (PlSqlParser.SYS_XQRESVURI - 1858)) | (1 << (PlSqlParser.SYS_XQRNDHALF2EVN - 1858)) | (1 << (PlSqlParser.SYS_XQRSLVQNM - 1858)) | (1 << (PlSqlParser.SYS_XQRYENVPGET - 1858)) | (1 << (PlSqlParser.SYS_XQRYVARGET - 1858)) | (1 << (PlSqlParser.SYS_XQRYWRP - 1858)) | (1 << (PlSqlParser.SYS_XQSEQ2CON4XC - 1858)) | (1 << (PlSqlParser.SYS_XQSEQ2CON - 1858)) | (1 << (PlSqlParser.SYS_XQSEQDEEPEQ - 1858)) | (1 << (PlSqlParser.SYS_XQSEQINSB - 1858)))) !== 0) || ((((_la - 1890)) & ~0x1f) == 0 && ((1 << (_la - 1890)) & ((1 << (PlSqlParser.SYS_XQSEQRM - 1890)) | (1 << (PlSqlParser.SYS_XQSEQRVS - 1890)) | (1 << (PlSqlParser.SYS_XQSEQSUB - 1890)) | (1 << (PlSqlParser.SYS_XQSEQTYPMATCH - 1890)) | (1 << (PlSqlParser.SYS_XQSTARTSWITH - 1890)) | (1 << (PlSqlParser.SYS_XQSTATBURI - 1890)) | (1 << (PlSqlParser.SYS_XQSTR2CODEP - 1890)) | (1 << (PlSqlParser.SYS_XQSTRJOIN - 1890)) | (1 << (PlSqlParser.SYS_XQSUBSTRAFT - 1890)) | (1 << (PlSqlParser.SYS_XQSUBSTRBEF - 1890)) | (1 << (PlSqlParser.SYS_XQTOKENIZE - 1890)) | (1 << (PlSqlParser.SYS_XQTREATAS - 1890)) | (1 << (PlSqlParser.SYS_XQ_UPKXML2SQL - 1890)) | (1 << (PlSqlParser.SYS_XQXFORM - 1890)) | (1 << (PlSqlParser.SYS_XSID_TO_RAW - 1890)) | (1 << (PlSqlParser.SYS_ZMAP_FILTER - 1890)) | (1 << (PlSqlParser.SYS_ZMAP_REFRESH - 1890)) | (1 << (PlSqlParser.TABLE_LOOKUP_BY_NL - 1890)) | (1 << (PlSqlParser.TABLESPACE_NO - 1890)) | (1 << (PlSqlParser.TABLESPACE - 1890)) | (1 << (PlSqlParser.TABLES - 1890)) | (1 << (PlSqlParser.TABLE_STATS - 1890)) | (1 << (PlSqlParser.TABLE - 1890)) | (1 << (PlSqlParser.TABNO - 1890)) | (1 << (PlSqlParser.TAG - 1890)) | (1 << (PlSqlParser.TANH - 1890)) | (1 << (PlSqlParser.TAN - 1890)) | (1 << (PlSqlParser.TBLORIDXPARTNUM - 1890)) | (1 << (PlSqlParser.TEMPFILE - 1890)) | (1 << (PlSqlParser.TEMPLATE - 1890)) | (1 << (PlSqlParser.TEMPORARY - 1890)) | (1 << (PlSqlParser.TEMP_TABLE - 1890)))) !== 0) || ((((_la - 1922)) & ~0x1f) == 0 && ((1 << (_la - 1922)) & ((1 << (PlSqlParser.TEST - 1922)) | (1 << (PlSqlParser.TEXT - 1922)) | (1 << (PlSqlParser.THAN - 1922)) | (1 << (PlSqlParser.THEN - 1922)) | (1 << (PlSqlParser.THE - 1922)) | (1 << (PlSqlParser.THREAD - 1922)) | (1 << (PlSqlParser.THROUGH - 1922)) | (1 << (PlSqlParser.TIER - 1922)) | (1 << (PlSqlParser.TIES - 1922)) | (1 << (PlSqlParser.TIMEOUT - 1922)) | (1 << (PlSqlParser.TIMESTAMP_LTZ_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMESTAMP - 1922)) | (1 << (PlSqlParser.TIMESTAMP_TZ_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMESTAMP_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMES - 1922)) | (1 << (PlSqlParser.TIME - 1922)) | (1 << (PlSqlParser.TIMEZONE_ABBR - 1922)) | (1 << (PlSqlParser.TIMEZONE_HOUR - 1922)) | (1 << (PlSqlParser.TIMEZONE_MINUTE - 1922)) | (1 << (PlSqlParser.TIMEZONE_OFFSET - 1922)) | (1 << (PlSqlParser.TIMEZONE_REGION - 1922)) | (1 << (PlSqlParser.TIME_ZONE - 1922)) | (1 << (PlSqlParser.TIV_GB - 1922)) | (1 << (PlSqlParser.TIV_SSF - 1922)) | (1 << (PlSqlParser.TO_ACLID - 1922)) | (1 << (PlSqlParser.TO_BINARY_DOUBLE - 1922)) | (1 << (PlSqlParser.TO_BINARY_FLOAT - 1922)) | (1 << (PlSqlParser.TO_BLOB - 1922)) | (1 << (PlSqlParser.TO_CLOB - 1922)) | (1 << (PlSqlParser.TO_DSINTERVAL - 1922)) | (1 << (PlSqlParser.TO_LOB - 1922)))) !== 0) || ((((_la - 1954)) & ~0x1f) == 0 && ((1 << (_la - 1954)) & ((1 << (PlSqlParser.TO_MULTI_BYTE - 1954)) | (1 << (PlSqlParser.TO_NCHAR - 1954)) | (1 << (PlSqlParser.TO_NCLOB - 1954)) | (1 << (PlSqlParser.TO_NUMBER - 1954)) | (1 << (PlSqlParser.TOPLEVEL - 1954)) | (1 << (PlSqlParser.TO_SINGLE_BYTE - 1954)) | (1 << (PlSqlParser.TO_TIMESTAMP - 1954)) | (1 << (PlSqlParser.TO_TIMESTAMP_TZ - 1954)) | (1 << (PlSqlParser.TO_TIME - 1954)) | (1 << (PlSqlParser.TO_TIME_TZ - 1954)) | (1 << (PlSqlParser.TO_YMINTERVAL - 1954)) | (1 << (PlSqlParser.TRACE - 1954)) | (1 << (PlSqlParser.TRACING - 1954)) | (1 << (PlSqlParser.TRACKING - 1954)) | (1 << (PlSqlParser.TRAILING - 1954)) | (1 << (PlSqlParser.TRANSACTION - 1954)) | (1 << (PlSqlParser.TRANSFORM_DISTINCT_AGG - 1954)) | (1 << (PlSqlParser.TRANSITIONAL - 1954)) | (1 << (PlSqlParser.TRANSITION - 1954)) | (1 << (PlSqlParser.TRANSLATE - 1954)) | (1 << (PlSqlParser.TRANSLATION - 1954)) | (1 << (PlSqlParser.TREAT - 1954)) | (1 << (PlSqlParser.TRIGGERS - 1954)) | (1 << (PlSqlParser.TRIGGER - 1954)) | (1 << (PlSqlParser.TRUE - 1954)) | (1 << (PlSqlParser.TRUNCATE - 1954)) | (1 << (PlSqlParser.TRUNC - 1954)) | (1 << (PlSqlParser.TRUSTED - 1954)) | (1 << (PlSqlParser.TRUST - 1954)) | (1 << (PlSqlParser.TUNING - 1954)) | (1 << (PlSqlParser.TX - 1954)))) !== 0) || ((((_la - 1986)) & ~0x1f) == 0 && ((1 << (_la - 1986)) & ((1 << (PlSqlParser.TYPES - 1986)) | (1 << (PlSqlParser.TYPE - 1986)) | (1 << (PlSqlParser.TZ_OFFSET - 1986)) | (1 << (PlSqlParser.UB2 - 1986)) | (1 << (PlSqlParser.UBA - 1986)) | (1 << (PlSqlParser.UCS2 - 1986)) | (1 << (PlSqlParser.UID - 1986)) | (1 << (PlSqlParser.UNARCHIVED - 1986)) | (1 << (PlSqlParser.UNBOUNDED - 1986)) | (1 << (PlSqlParser.UNBOUND - 1986)) | (1 << (PlSqlParser.UNCONDITIONAL - 1986)) | (1 << (PlSqlParser.UNDER - 1986)) | (1 << (PlSqlParser.UNDO - 1986)) | (1 << (PlSqlParser.UNDROP - 1986)) | (1 << (PlSqlParser.UNIFORM - 1986)) | (1 << (PlSqlParser.UNISTR - 1986)) | (1 << (PlSqlParser.UNLIMITED - 1986)) | (1 << (PlSqlParser.UNLOAD - 1986)) | (1 << (PlSqlParser.UNLOCK - 1986)) | (1 << (PlSqlParser.UNMATCHED - 1986)) | (1 << (PlSqlParser.UNNEST_INNERJ_DISTINCT_VIEW - 1986)) | (1 << (PlSqlParser.UNNEST_NOSEMIJ_NODISTINCTVIEW - 1986)) | (1 << (PlSqlParser.UNNEST_SEMIJ_VIEW - 1986)) | (1 << (PlSqlParser.UNNEST - 1986)) | (1 << (PlSqlParser.UNPACKED - 1986)) | (1 << (PlSqlParser.UNPIVOT - 1986)) | (1 << (PlSqlParser.UNPLUG - 1986)) | (1 << (PlSqlParser.UNPROTECTED - 1986)) | (1 << (PlSqlParser.UNQUIESCE - 1986)) | (1 << (PlSqlParser.UNRECOVERABLE - 1986)))) !== 0) || ((((_la - 2018)) & ~0x1f) == 0 && ((1 << (_la - 2018)) & ((1 << (PlSqlParser.UNRESTRICTED - 2018)) | (1 << (PlSqlParser.UNSUBSCRIBE - 2018)) | (1 << (PlSqlParser.UNTIL - 2018)) | (1 << (PlSqlParser.UNUSABLE - 2018)) | (1 << (PlSqlParser.UNUSED - 2018)) | (1 << (PlSqlParser.UPDATABLE - 2018)) | (1 << (PlSqlParser.UPDATED - 2018)) | (1 << (PlSqlParser.UPDATEXML - 2018)) | (1 << (PlSqlParser.UPD_INDEXES - 2018)) | (1 << (PlSqlParser.UPD_JOININDEX - 2018)) | (1 << (PlSqlParser.UPGRADE - 2018)) | (1 << (PlSqlParser.UPPER - 2018)) | (1 << (PlSqlParser.UPSERT - 2018)) | (1 << (PlSqlParser.UROWID - 2018)) | (1 << (PlSqlParser.USABLE - 2018)) | (1 << (PlSqlParser.USAGE - 2018)) | (1 << (PlSqlParser.USE_ANTI - 2018)) | (1 << (PlSqlParser.USE_CONCAT - 2018)) | (1 << (PlSqlParser.USE_CUBE - 2018)) | (1 << (PlSqlParser.USE_HASH_AGGREGATION - 2018)) | (1 << (PlSqlParser.USE_HASH_GBY_FOR_PUSHDOWN - 2018)) | (1 << (PlSqlParser.USE_HASH - 2018)) | (1 << (PlSqlParser.USE_HIDDEN_PARTITIONS - 2018)) | (1 << (PlSqlParser.USE_INVISIBLE_INDEXES - 2018)) | (1 << (PlSqlParser.USE_MERGE_CARTESIAN - 2018)) | (1 << (PlSqlParser.USE_MERGE - 2018)) | (1 << (PlSqlParser.USE_NL - 2018)) | (1 << (PlSqlParser.USE_NL_WITH_INDEX - 2018)) | (1 << (PlSqlParser.USE_PRIVATE_OUTLINES - 2018)) | (1 << (PlSqlParser.USER_DATA - 2018)) | (1 << (PlSqlParser.USER_DEFINED - 2018)))) !== 0) || ((((_la - 2050)) & ~0x1f) == 0 && ((1 << (_la - 2050)) & ((1 << (PlSqlParser.USERENV - 2050)) | (1 << (PlSqlParser.USERGROUP - 2050)) | (1 << (PlSqlParser.USER_RECYCLEBIN - 2050)) | (1 << (PlSqlParser.USERS - 2050)) | (1 << (PlSqlParser.USER_TABLESPACES - 2050)) | (1 << (PlSqlParser.USER - 2050)) | (1 << (PlSqlParser.USE_SEMI - 2050)) | (1 << (PlSqlParser.USE_STORED_OUTLINES - 2050)) | (1 << (PlSqlParser.USE_TTT_FOR_GSETS - 2050)) | (1 << (PlSqlParser.USE - 2050)) | (1 << (PlSqlParser.USE_VECTOR_AGGREGATION - 2050)) | (1 << (PlSqlParser.USE_WEAK_NAME_RESL - 2050)) | (1 << (PlSqlParser.USING_NO_EXPAND - 2050)) | (1 << (PlSqlParser.USING - 2050)) | (1 << (PlSqlParser.UTF16BE - 2050)) | (1 << (PlSqlParser.UTF16LE - 2050)) | (1 << (PlSqlParser.UTF32 - 2050)) | (1 << (PlSqlParser.UTF8 - 2050)) | (1 << (PlSqlParser.V1 - 2050)) | (1 << (PlSqlParser.V2 - 2050)) | (1 << (PlSqlParser.VALIDATE - 2050)) | (1 << (PlSqlParser.VALIDATION - 2050)) | (1 << (PlSqlParser.VALID_TIME_END - 2050)) | (1 << (PlSqlParser.VALUE - 2050)) | (1 << (PlSqlParser.VARCHAR2 - 2050)) | (1 << (PlSqlParser.VARCHAR - 2050)) | (1 << (PlSqlParser.VARIABLE - 2050)) | (1 << (PlSqlParser.VAR_POP - 2050)) | (1 << (PlSqlParser.VARRAYS - 2050)) | (1 << (PlSqlParser.VARRAY - 2050)) | (1 << (PlSqlParser.VAR_SAMP - 2050)))) !== 0) || ((((_la - 2082)) & ~0x1f) == 0 && ((1 << (_la - 2082)) & ((1 << (PlSqlParser.VARYING - 2082)) | (1 << (PlSqlParser.VECTOR_READ_TRACE - 2082)) | (1 << (PlSqlParser.VECTOR_READ - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM_DIMS - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM_FACT - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM - 2082)) | (1 << (PlSqlParser.VERIFIER - 2082)) | (1 << (PlSqlParser.VERIFY - 2082)) | (1 << (PlSqlParser.VERSIONING - 2082)) | (1 << (PlSqlParser.VERSIONS_ENDSCN - 2082)) | (1 << (PlSqlParser.VERSIONS_ENDTIME - 2082)) | (1 << (PlSqlParser.VERSIONS_OPERATION - 2082)) | (1 << (PlSqlParser.VERSIONS_STARTSCN - 2082)) | (1 << (PlSqlParser.VERSIONS_STARTTIME - 2082)) | (1 << (PlSqlParser.VERSIONS - 2082)) | (1 << (PlSqlParser.VERSIONS_XID - 2082)) | (1 << (PlSqlParser.VERSION - 2082)) | (1 << (PlSqlParser.VIOLATION - 2082)) | (1 << (PlSqlParser.VIRTUAL - 2082)) | (1 << (PlSqlParser.VISIBILITY - 2082)) | (1 << (PlSqlParser.VISIBLE - 2082)) | (1 << (PlSqlParser.VOLUME - 2082)) | (1 << (PlSqlParser.VSIZE - 2082)) | (1 << (PlSqlParser.WAIT - 2082)) | (1 << (PlSqlParser.WALLET - 2082)) | (1 << (PlSqlParser.WARNING - 2082)) | (1 << (PlSqlParser.WEEKS - 2082)) | (1 << (PlSqlParser.WEEK - 2082)) | (1 << (PlSqlParser.WELLFORMED - 2082)) | (1 << (PlSqlParser.WHENEVER - 2082)) | (1 << (PlSqlParser.WHEN - 2082)))) !== 0) || ((((_la - 2115)) & ~0x1f) == 0 && ((1 << (_la - 2115)) & ((1 << (PlSqlParser.WHILE - 2115)) | (1 << (PlSqlParser.WHITESPACE - 2115)) | (1 << (PlSqlParser.WIDTH_BUCKET - 2115)) | (1 << (PlSqlParser.WITHIN - 2115)) | (1 << (PlSqlParser.WITHOUT - 2115)) | (1 << (PlSqlParser.WITH_PLSQL - 2115)) | (1 << (PlSqlParser.WORK - 2115)) | (1 << (PlSqlParser.WRAPPED - 2115)) | (1 << (PlSqlParser.WRAPPER - 2115)) | (1 << (PlSqlParser.WRITE - 2115)) | (1 << (PlSqlParser.XDB_FASTPATH_INSERT - 2115)) | (1 << (PlSqlParser.X_DYN_PRUNE - 2115)) | (1 << (PlSqlParser.XID - 2115)) | (1 << (PlSqlParser.XML2OBJECT - 2115)) | (1 << (PlSqlParser.XMLAGG - 2115)) | (1 << (PlSqlParser.XMLATTRIBUTES - 2115)) | (1 << (PlSqlParser.XMLCAST - 2115)) | (1 << (PlSqlParser.XMLCDATA - 2115)) | (1 << (PlSqlParser.XMLCOLATTVAL - 2115)) | (1 << (PlSqlParser.XMLCOMMENT - 2115)) | (1 << (PlSqlParser.XMLCONCAT - 2115)) | (1 << (PlSqlParser.XMLDIFF - 2115)) | (1 << (PlSqlParser.XML_DML_RWT_STMT - 2115)) | (1 << (PlSqlParser.XMLELEMENT - 2115)) | (1 << (PlSqlParser.XMLEXISTS2 - 2115)) | (1 << (PlSqlParser.XMLEXISTS - 2115)) | (1 << (PlSqlParser.XMLFOREST - 2115)) | (1 << (PlSqlParser.XMLINDEX_REWRITE_IN_SELECT - 2115)) | (1 << (PlSqlParser.XMLINDEX_REWRITE - 2115)))) !== 0) || ((((_la - 2147)) & ~0x1f) == 0 && ((1 << (_la - 2147)) & ((1 << (PlSqlParser.XMLINDEX_SEL_IDX_TBL - 2147)) | (1 << (PlSqlParser.XMLISNODE - 2147)) | (1 << (PlSqlParser.XMLISVALID - 2147)) | (1 << (PlSqlParser.XMLNAMESPACES - 2147)) | (1 << (PlSqlParser.XMLPARSE - 2147)) | (1 << (PlSqlParser.XMLPATCH - 2147)) | (1 << (PlSqlParser.XMLPI - 2147)) | (1 << (PlSqlParser.XMLQUERYVAL - 2147)) | (1 << (PlSqlParser.XMLQUERY - 2147)) | (1 << (PlSqlParser.XMLROOT - 2147)) | (1 << (PlSqlParser.XMLSCHEMA - 2147)) | (1 << (PlSqlParser.XMLSERIALIZE - 2147)) | (1 << (PlSqlParser.XMLTABLE - 2147)) | (1 << (PlSqlParser.XMLTRANSFORMBLOB - 2147)) | (1 << (PlSqlParser.XMLTRANSFORM - 2147)) | (1 << (PlSqlParser.XMLTYPE - 2147)) | (1 << (PlSqlParser.XML - 2147)) | (1 << (PlSqlParser.XPATHTABLE - 2147)) | (1 << (PlSqlParser.XS_SYS_CONTEXT - 2147)) | (1 << (PlSqlParser.XS - 2147)) | (1 << (PlSqlParser.YEARS - 2147)) | (1 << (PlSqlParser.YEAR - 2147)) | (1 << (PlSqlParser.YES - 2147)) | (1 << (PlSqlParser.YMINTERVAL_UNCONSTRAINED - 2147)) | (1 << (PlSqlParser.ZONEMAP - 2147)) | (1 << (PlSqlParser.ZONE - 2147)) | (1 << (PlSqlParser.PREDICTION - 2147)) | (1 << (PlSqlParser.PREDICTION_BOUNDS - 2147)) | (1 << (PlSqlParser.PREDICTION_COST - 2147)) | (1 << (PlSqlParser.PREDICTION_DETAILS - 2147)) | (1 << (PlSqlParser.PREDICTION_PROBABILITY - 2147)))) !== 0) || ((((_la - 2179)) & ~0x1f) == 0 && ((1 << (_la - 2179)) & ((1 << (PlSqlParser.PREDICTION_SET - 2179)) | (1 << (PlSqlParser.CUME_DIST - 2179)) | (1 << (PlSqlParser.DENSE_RANK - 2179)) | (1 << (PlSqlParser.LISTAGG - 2179)) | (1 << (PlSqlParser.PERCENT_RANK - 2179)) | (1 << (PlSqlParser.PERCENTILE_CONT - 2179)) | (1 << (PlSqlParser.PERCENTILE_DISC - 2179)) | (1 << (PlSqlParser.RANK - 2179)) | (1 << (PlSqlParser.AVG - 2179)) | (1 << (PlSqlParser.CORR - 2179)) | (1 << (PlSqlParser.COVAR_ - 2179)) | (1 << (PlSqlParser.LAG - 2179)) | (1 << (PlSqlParser.LEAD - 2179)) | (1 << (PlSqlParser.MAX - 2179)) | (1 << (PlSqlParser.MEDIAN - 2179)) | (1 << (PlSqlParser.MIN - 2179)) | (1 << (PlSqlParser.NTILE - 2179)) | (1 << (PlSqlParser.NVL - 2179)) | (1 << (PlSqlParser.RATIO_TO_REPORT - 2179)) | (1 << (PlSqlParser.REGR_ - 2179)) | (1 << (PlSqlParser.ROUND - 2179)) | (1 << (PlSqlParser.ROW_NUMBER - 2179)) | (1 << (PlSqlParser.SUBSTR - 2179)) | (1 << (PlSqlParser.TO_CHAR - 2179)) | (1 << (PlSqlParser.TRIM - 2179)) | (1 << (PlSqlParser.SUM - 2179)) | (1 << (PlSqlParser.STDDEV - 2179)) | (1 << (PlSqlParser.VAR_ - 2179)) | (1 << (PlSqlParser.VARIANCE - 2179)) | (1 << (PlSqlParser.LEAST - 2179)) | (1 << (PlSqlParser.GREATEST - 2179)))) !== 0) || ((((_la - 2211)) & ~0x1f) == 0 && ((1 << (_la - 2211)) & ((1 << (PlSqlParser.TO_DATE - 2211)) | (1 << (PlSqlParser.NATIONAL_CHAR_STRING_LIT - 2211)) | (1 << (PlSqlParser.PERIOD - 2211)) | (1 << (PlSqlParser.CHAR_STRING - 2211)) | (1 << (PlSqlParser.DELIMITED_ID - 2211)))) !== 0) || _la===PlSqlParser.INTRODUCER || _la===PlSqlParser.REGULAR_ID) {
+ this.state = 2853;
+ this.table_alias();
+ }
+
+ this.state = 2856;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 2857;
+ this.index_expr();
+ this.state = 2859;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.ASC || _la===PlSqlParser.DESC) {
+ this.state = 2858;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.ASC || _la===PlSqlParser.DESC)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 2868;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 2861;
+ this.match(PlSqlParser.COMMA);
+ this.state = 2862;
+ this.index_expr();
+ this.state = 2864;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.ASC || _la===PlSqlParser.DESC) {
+ this.state = 2863;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.ASC || _la===PlSqlParser.DESC)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 2870;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 2871;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ this.state = 2873;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.COMPRESS || _la===PlSqlParser.FILESYSTEM_LIKE_LOGGING || _la===PlSqlParser.GLOBAL || _la===PlSqlParser.INDEXTYPE || _la===PlSqlParser.INITRANS || _la===PlSqlParser.INVISIBLE || _la===PlSqlParser.LOCAL || _la===PlSqlParser.LOGGING || _la===PlSqlParser.NOCOMPRESS || _la===PlSqlParser.NOLOGGING || _la===PlSqlParser.NOPARALLEL || _la===PlSqlParser.NOSORT || _la===PlSqlParser.PARALLEL || _la===PlSqlParser.PCTFREE || _la===PlSqlParser.PCTUSED || _la===PlSqlParser.REVERSE || _la===PlSqlParser.SORT || _la===PlSqlParser.STORAGE || _la===PlSqlParser.TABLESPACE || _la===PlSqlParser.VISIBLE) {
+ this.state = 2872;
+ this.index_properties();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Bitmap_join_index_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_bitmap_join_index_clause;
+ return this;
+}
+
+Bitmap_join_index_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Bitmap_join_index_clauseContext.prototype.constructor = Bitmap_join_index_clauseContext;
+
+Bitmap_join_index_clauseContext.prototype.tableview_name = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Tableview_nameContext);
+ } else {
+ return this.getTypedRuleContext(Tableview_nameContext,i);
+ }
+};
+
+Bitmap_join_index_clauseContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Bitmap_join_index_clauseContext.prototype.column_name = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Column_nameContext);
+ } else {
+ return this.getTypedRuleContext(Column_nameContext,i);
+ }
+};
+
+Bitmap_join_index_clauseContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Bitmap_join_index_clauseContext.prototype.FROM = function() {
+ return this.getToken(PlSqlParser.FROM, 0);
+};
+
+Bitmap_join_index_clauseContext.prototype.table_alias = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Table_aliasContext);
+ } else {
+ return this.getTypedRuleContext(Table_aliasContext,i);
+ }
+};
+
+Bitmap_join_index_clauseContext.prototype.where_clause = function() {
+ return this.getTypedRuleContext(Where_clauseContext,0);
+};
+
+Bitmap_join_index_clauseContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Bitmap_join_index_clauseContext.prototype.local_partitioned_index = function() {
+ return this.getTypedRuleContext(Local_partitioned_indexContext,0);
+};
+
+Bitmap_join_index_clauseContext.prototype.index_attributes = function() {
+ return this.getTypedRuleContext(Index_attributesContext,0);
+};
+
+Bitmap_join_index_clauseContext.prototype.ASC = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.ASC);
+ } else {
+ return this.getToken(PlSqlParser.ASC, i);
+ }
+};
+
+
+Bitmap_join_index_clauseContext.prototype.DESC = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.DESC);
+ } else {
+ return this.getToken(PlSqlParser.DESC, i);
+ }
+};
+
+
+Bitmap_join_index_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterBitmap_join_index_clause(this);
+ }
+};
+
+Bitmap_join_index_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitBitmap_join_index_clause(this);
+ }
+};
+
+Bitmap_join_index_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitBitmap_join_index_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Bitmap_join_index_clauseContext = Bitmap_join_index_clauseContext;
+
+PlSqlParser.prototype.bitmap_join_index_clause = function() {
+
+ var localctx = new Bitmap_join_index_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 188, PlSqlParser.RULE_bitmap_join_index_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2875;
+ this.tableview_name();
+ this.state = 2876;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 2879;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,199,this._ctx);
+ if(la_===1) {
+ this.state = 2877;
+ this.tableview_name();
+
+ } else if(la_===2) {
+ this.state = 2878;
+ this.table_alias();
+
+ }
+ this.state = 2881;
+ this.column_name();
+ this.state = 2883;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.ASC || _la===PlSqlParser.DESC) {
+ this.state = 2882;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.ASC || _la===PlSqlParser.DESC)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 2896;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 2885;
+ this.match(PlSqlParser.COMMA);
+ this.state = 2888;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,201,this._ctx);
+ if(la_===1) {
+ this.state = 2886;
+ this.tableview_name();
+
+ } else if(la_===2) {
+ this.state = 2887;
+ this.table_alias();
+
+ }
+ this.state = 2890;
+ this.column_name();
+ this.state = 2892;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.ASC || _la===PlSqlParser.DESC) {
+ this.state = 2891;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.ASC || _la===PlSqlParser.DESC)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 2898;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 2899;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ this.state = 2900;
+ this.match(PlSqlParser.FROM);
+ this.state = 2901;
+ this.tableview_name();
+ this.state = 2902;
+ this.table_alias();
+ this.state = 2909;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 2903;
+ this.match(PlSqlParser.COMMA);
+ this.state = 2904;
+ this.tableview_name();
+ this.state = 2905;
+ this.table_alias();
+ this.state = 2911;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 2912;
+ this.where_clause();
+ this.state = 2914;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.LOCAL) {
+ this.state = 2913;
+ this.local_partitioned_index();
+ }
+
+ this.state = 2917;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.COMPRESS || _la===PlSqlParser.FILESYSTEM_LIKE_LOGGING || _la===PlSqlParser.INITRANS || _la===PlSqlParser.INVISIBLE || _la===PlSqlParser.LOGGING || _la===PlSqlParser.NOCOMPRESS || _la===PlSqlParser.NOLOGGING || _la===PlSqlParser.NOPARALLEL || _la===PlSqlParser.NOSORT || _la===PlSqlParser.PARALLEL || _la===PlSqlParser.PCTFREE || _la===PlSqlParser.PCTUSED || _la===PlSqlParser.REVERSE || _la===PlSqlParser.SORT || _la===PlSqlParser.STORAGE || _la===PlSqlParser.TABLESPACE || _la===PlSqlParser.VISIBLE) {
+ this.state = 2916;
+ this.index_attributes();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Index_exprContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_index_expr;
+ return this;
+}
+
+Index_exprContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Index_exprContext.prototype.constructor = Index_exprContext;
+
+Index_exprContext.prototype.column_name = function() {
+ return this.getTypedRuleContext(Column_nameContext,0);
+};
+
+Index_exprContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+Index_exprContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterIndex_expr(this);
+ }
+};
+
+Index_exprContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitIndex_expr(this);
+ }
+};
+
+Index_exprContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitIndex_expr(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Index_exprContext = Index_exprContext;
+
+PlSqlParser.prototype.index_expr = function() {
+
+ var localctx = new Index_exprContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 190, PlSqlParser.RULE_index_expr);
+ try {
+ this.state = 2921;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,207,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2919;
+ this.column_name();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 2920;
+ this.expression();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Index_propertiesContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_index_properties;
+ return this;
+}
+
+Index_propertiesContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Index_propertiesContext.prototype.constructor = Index_propertiesContext;
+
+Index_propertiesContext.prototype.global_partitioned_index = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Global_partitioned_indexContext);
+ } else {
+ return this.getTypedRuleContext(Global_partitioned_indexContext,i);
+ }
+};
+
+Index_propertiesContext.prototype.local_partitioned_index = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Local_partitioned_indexContext);
+ } else {
+ return this.getTypedRuleContext(Local_partitioned_indexContext,i);
+ }
+};
+
+Index_propertiesContext.prototype.index_attributes = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Index_attributesContext);
+ } else {
+ return this.getTypedRuleContext(Index_attributesContext,i);
+ }
+};
+
+Index_propertiesContext.prototype.INDEXTYPE = function() {
+ return this.getToken(PlSqlParser.INDEXTYPE, 0);
+};
+
+Index_propertiesContext.prototype.IS = function() {
+ return this.getToken(PlSqlParser.IS, 0);
+};
+
+Index_propertiesContext.prototype.domain_index_clause = function() {
+ return this.getTypedRuleContext(Domain_index_clauseContext,0);
+};
+
+Index_propertiesContext.prototype.xmlindex_clause = function() {
+ return this.getTypedRuleContext(Xmlindex_clauseContext,0);
+};
+
+Index_propertiesContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterIndex_properties(this);
+ }
+};
+
+Index_propertiesContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitIndex_properties(this);
+ }
+};
+
+Index_propertiesContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitIndex_properties(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Index_propertiesContext = Index_propertiesContext;
+
+PlSqlParser.prototype.index_properties = function() {
+
+ var localctx = new Index_propertiesContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 192, PlSqlParser.RULE_index_properties);
+ var _la = 0; // Token type
+ try {
+ this.state = 2936;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.COMPRESS:
+ case PlSqlParser.FILESYSTEM_LIKE_LOGGING:
+ case PlSqlParser.GLOBAL:
+ case PlSqlParser.INITRANS:
+ case PlSqlParser.INVISIBLE:
+ case PlSqlParser.LOCAL:
+ case PlSqlParser.LOGGING:
+ case PlSqlParser.NOCOMPRESS:
+ case PlSqlParser.NOLOGGING:
+ case PlSqlParser.NOPARALLEL:
+ case PlSqlParser.NOSORT:
+ case PlSqlParser.PARALLEL:
+ case PlSqlParser.PCTFREE:
+ case PlSqlParser.PCTUSED:
+ case PlSqlParser.REVERSE:
+ case PlSqlParser.SORT:
+ case PlSqlParser.STORAGE:
+ case PlSqlParser.TABLESPACE:
+ case PlSqlParser.VISIBLE:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2926;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 2926;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.GLOBAL:
+ this.state = 2923;
+ this.global_partitioned_index();
+ break;
+ case PlSqlParser.LOCAL:
+ this.state = 2924;
+ this.local_partitioned_index();
+ break;
+ case PlSqlParser.COMPRESS:
+ case PlSqlParser.FILESYSTEM_LIKE_LOGGING:
+ case PlSqlParser.INITRANS:
+ case PlSqlParser.INVISIBLE:
+ case PlSqlParser.LOGGING:
+ case PlSqlParser.NOCOMPRESS:
+ case PlSqlParser.NOLOGGING:
+ case PlSqlParser.NOPARALLEL:
+ case PlSqlParser.NOSORT:
+ case PlSqlParser.PARALLEL:
+ case PlSqlParser.PCTFREE:
+ case PlSqlParser.PCTUSED:
+ case PlSqlParser.REVERSE:
+ case PlSqlParser.SORT:
+ case PlSqlParser.STORAGE:
+ case PlSqlParser.TABLESPACE:
+ case PlSqlParser.VISIBLE:
+ this.state = 2925;
+ this.index_attributes();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 2928;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(_la===PlSqlParser.COMPRESS || _la===PlSqlParser.FILESYSTEM_LIKE_LOGGING || _la===PlSqlParser.GLOBAL || _la===PlSqlParser.INITRANS || _la===PlSqlParser.INVISIBLE || _la===PlSqlParser.LOCAL || _la===PlSqlParser.LOGGING || _la===PlSqlParser.NOCOMPRESS || _la===PlSqlParser.NOLOGGING || _la===PlSqlParser.NOPARALLEL || _la===PlSqlParser.NOSORT || _la===PlSqlParser.PARALLEL || _la===PlSqlParser.PCTFREE || _la===PlSqlParser.PCTUSED || _la===PlSqlParser.REVERSE || _la===PlSqlParser.SORT || _la===PlSqlParser.STORAGE || _la===PlSqlParser.TABLESPACE || _la===PlSqlParser.VISIBLE);
+ break;
+ case PlSqlParser.INDEXTYPE:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 2930;
+ this.match(PlSqlParser.INDEXTYPE);
+ this.state = 2931;
+ this.match(PlSqlParser.IS);
+ this.state = 2934;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.ABORT:
+ case PlSqlParser.ABS:
+ case PlSqlParser.ACCESS:
+ case PlSqlParser.ACCESSED:
+ case PlSqlParser.ACCOUNT:
+ case PlSqlParser.ACL:
+ case PlSqlParser.ACOS:
+ case PlSqlParser.ACTION:
+ case PlSqlParser.ACTIONS:
+ case PlSqlParser.ACTIVATE:
+ case PlSqlParser.ACTIVE:
+ case PlSqlParser.ACTIVE_COMPONENT:
+ case PlSqlParser.ACTIVE_DATA:
+ case PlSqlParser.ACTIVE_FUNCTION:
+ case PlSqlParser.ACTIVE_TAG:
+ case PlSqlParser.ACTIVITY:
+ case PlSqlParser.ADAPTIVE_PLAN:
+ case PlSqlParser.ADD:
+ case PlSqlParser.ADD_COLUMN:
+ case PlSqlParser.ADD_GROUP:
+ case PlSqlParser.ADD_MONTHS:
+ case PlSqlParser.ADJ_DATE:
+ case PlSqlParser.ADMIN:
+ case PlSqlParser.ADMINISTER:
+ case PlSqlParser.ADMINISTRATOR:
+ case PlSqlParser.ADVANCED:
+ case PlSqlParser.ADVISE:
+ case PlSqlParser.ADVISOR:
+ case PlSqlParser.AFD_DISKSTRING:
+ case PlSqlParser.AFTER:
+ case PlSqlParser.AGENT:
+ case PlSqlParser.AGGREGATE:
+ case PlSqlParser.A_LETTER:
+ case PlSqlParser.ALIAS:
+ case PlSqlParser.ALLOCATE:
+ case PlSqlParser.ALLOW:
+ case PlSqlParser.ALL_ROWS:
+ case PlSqlParser.ALWAYS:
+ case PlSqlParser.ANALYZE:
+ case PlSqlParser.ANCILLARY:
+ case PlSqlParser.AND_EQUAL:
+ case PlSqlParser.ANOMALY:
+ case PlSqlParser.ANSI_REARCH:
+ case PlSqlParser.ANTIJOIN:
+ case PlSqlParser.ANYSCHEMA:
+ case PlSqlParser.APPEND:
+ case PlSqlParser.APPENDCHILDXML:
+ case PlSqlParser.APPEND_VALUES:
+ case PlSqlParser.APPLICATION:
+ case PlSqlParser.APPLY:
+ case PlSqlParser.APPROX_COUNT_DISTINCT:
+ case PlSqlParser.ARCHIVAL:
+ case PlSqlParser.ARCHIVE:
+ case PlSqlParser.ARCHIVED:
+ case PlSqlParser.ARCHIVELOG:
+ case PlSqlParser.ARRAY:
+ case PlSqlParser.ASCII:
+ case PlSqlParser.ASCIISTR:
+ case PlSqlParser.ASIN:
+ case PlSqlParser.ASIS:
+ case PlSqlParser.ASSEMBLY:
+ case PlSqlParser.ASSIGN:
+ case PlSqlParser.ASSOCIATE:
+ case PlSqlParser.ASYNC:
+ case PlSqlParser.ASYNCHRONOUS:
+ case PlSqlParser.ATAN2:
+ case PlSqlParser.ATAN:
+ case PlSqlParser.AT:
+ case PlSqlParser.ATTRIBUTE:
+ case PlSqlParser.ATTRIBUTES:
+ case PlSqlParser.AUTHENTICATED:
+ case PlSqlParser.AUTHENTICATION:
+ case PlSqlParser.AUTHID:
+ case PlSqlParser.AUTHORIZATION:
+ case PlSqlParser.AUTOALLOCATE:
+ case PlSqlParser.AUTO:
+ case PlSqlParser.AUTOEXTEND:
+ case PlSqlParser.AUTO_LOGIN:
+ case PlSqlParser.AUTOMATIC:
+ case PlSqlParser.AUTONOMOUS_TRANSACTION:
+ case PlSqlParser.AUTO_REOPTIMIZE:
+ case PlSqlParser.AVAILABILITY:
+ case PlSqlParser.AVRO:
+ case PlSqlParser.BACKGROUND:
+ case PlSqlParser.BACKUP:
+ case PlSqlParser.BASIC:
+ case PlSqlParser.BASICFILE:
+ case PlSqlParser.BATCH:
+ case PlSqlParser.BATCHSIZE:
+ case PlSqlParser.BATCH_TABLE_ACCESS_BY_ROWID:
+ case PlSqlParser.BECOME:
+ case PlSqlParser.BEFORE:
+ case PlSqlParser.BEGIN:
+ case PlSqlParser.BEGINNING:
+ case PlSqlParser.BEGIN_OUTLINE_DATA:
+ case PlSqlParser.BEHALF:
+ case PlSqlParser.BEQUEATH:
+ case PlSqlParser.BFILE:
+ case PlSqlParser.BFILENAME:
+ case PlSqlParser.BIGFILE:
+ case PlSqlParser.BINARY:
+ case PlSqlParser.BINARY_DOUBLE:
+ case PlSqlParser.BINARY_DOUBLE_INFINITY:
+ case PlSqlParser.BINARY_DOUBLE_NAN:
+ case PlSqlParser.BINARY_FLOAT:
+ case PlSqlParser.BINARY_FLOAT_INFINITY:
+ case PlSqlParser.BINARY_FLOAT_NAN:
+ case PlSqlParser.BINARY_INTEGER:
+ case PlSqlParser.BIND_AWARE:
+ case PlSqlParser.BINDING:
+ case PlSqlParser.BIN_TO_NUM:
+ case PlSqlParser.BITAND:
+ case PlSqlParser.BITMAP_AND:
+ case PlSqlParser.BITMAP:
+ case PlSqlParser.BITMAPS:
+ case PlSqlParser.BITMAP_TREE:
+ case PlSqlParser.BITS:
+ case PlSqlParser.BLOB:
+ case PlSqlParser.BLOCK:
+ case PlSqlParser.BLOCK_RANGE:
+ case PlSqlParser.BLOCKS:
+ case PlSqlParser.BLOCKSIZE:
+ case PlSqlParser.BODY:
+ case PlSqlParser.BOOLEAN:
+ case PlSqlParser.BOTH:
+ case PlSqlParser.BOUND:
+ case PlSqlParser.BRANCH:
+ case PlSqlParser.BREADTH:
+ case PlSqlParser.BROADCAST:
+ case PlSqlParser.BSON:
+ case PlSqlParser.BUFFER:
+ case PlSqlParser.BUFFER_CACHE:
+ case PlSqlParser.BUFFER_POOL:
+ case PlSqlParser.BUILD:
+ case PlSqlParser.BULK:
+ case PlSqlParser.BYPASS_RECURSIVE_CHECK:
+ case PlSqlParser.BYPASS_UJVC:
+ case PlSqlParser.BYTE:
+ case PlSqlParser.CACHE:
+ case PlSqlParser.CACHE_CB:
+ case PlSqlParser.CACHE_INSTANCES:
+ case PlSqlParser.CACHE_TEMP_TABLE:
+ case PlSqlParser.CACHING:
+ case PlSqlParser.CALCULATED:
+ case PlSqlParser.CALLBACK:
+ case PlSqlParser.CALL:
+ case PlSqlParser.CANCEL:
+ case PlSqlParser.CAPACITY:
+ case PlSqlParser.CARDINALITY:
+ case PlSqlParser.CASCADE:
+ case PlSqlParser.CASE:
+ case PlSqlParser.CAST:
+ case PlSqlParser.CATEGORY:
+ case PlSqlParser.CDBDEFAULT:
+ case PlSqlParser.CEIL:
+ case PlSqlParser.CELL_FLASH_CACHE:
+ case PlSqlParser.CERTIFICATE:
+ case PlSqlParser.CFILE:
+ case PlSqlParser.CHAINED:
+ case PlSqlParser.CHANGE:
+ case PlSqlParser.CHANGE_DUPKEY_ERROR_INDEX:
+ case PlSqlParser.CHARACTER:
+ case PlSqlParser.CHAR:
+ case PlSqlParser.CHAR_CS:
+ case PlSqlParser.CHARTOROWID:
+ case PlSqlParser.CHECK_ACL_REWRITE:
+ case PlSqlParser.CHECKPOINT:
+ case PlSqlParser.CHILD:
+ case PlSqlParser.CHOOSE:
+ case PlSqlParser.CHR:
+ case PlSqlParser.CHUNK:
+ case PlSqlParser.CLASS:
+ case PlSqlParser.CLASSIFIER:
+ case PlSqlParser.CLEANUP:
+ case PlSqlParser.CLEAR:
+ case PlSqlParser.C_LETTER:
+ case PlSqlParser.CLIENT:
+ case PlSqlParser.CLOB:
+ case PlSqlParser.CLONE:
+ case PlSqlParser.CLOSE_CACHED_OPEN_CURSORS:
+ case PlSqlParser.CLOSE:
+ case PlSqlParser.CLUSTER_BY_ROWID:
+ case PlSqlParser.CLUSTER:
+ case PlSqlParser.CLUSTER_DETAILS:
+ case PlSqlParser.CLUSTER_DISTANCE:
+ case PlSqlParser.CLUSTER_ID:
+ case PlSqlParser.CLUSTERING:
+ case PlSqlParser.CLUSTERING_FACTOR:
+ case PlSqlParser.CLUSTER_PROBABILITY:
+ case PlSqlParser.CLUSTER_SET:
+ case PlSqlParser.COALESCE:
+ case PlSqlParser.COALESCE_SQ:
+ case PlSqlParser.COARSE:
+ case PlSqlParser.CO_AUTH_IND:
+ case PlSqlParser.COLD:
+ case PlSqlParser.COLLECT:
+ case PlSqlParser.COLUMNAR:
+ case PlSqlParser.COLUMN_AUTH_INDICATOR:
+ case PlSqlParser.COLUMN:
+ case PlSqlParser.COLUMNS:
+ case PlSqlParser.COLUMN_STATS:
+ case PlSqlParser.COLUMN_VALUE:
+ case PlSqlParser.COMMENT:
+ case PlSqlParser.COMMIT:
+ case PlSqlParser.COMMITTED:
+ case PlSqlParser.COMMON_DATA:
+ case PlSqlParser.COMPACT:
+ case PlSqlParser.COMPATIBILITY:
+ case PlSqlParser.COMPILE:
+ case PlSqlParser.COMPLETE:
+ case PlSqlParser.COMPLIANCE:
+ case PlSqlParser.COMPONENT:
+ case PlSqlParser.COMPONENTS:
+ case PlSqlParser.COMPOSE:
+ case PlSqlParser.COMPOSITE:
+ case PlSqlParser.COMPOSITE_LIMIT:
+ case PlSqlParser.COMPOUND:
+ case PlSqlParser.COMPUTE:
+ case PlSqlParser.CONCAT:
+ case PlSqlParser.CON_DBID_TO_ID:
+ case PlSqlParser.CONDITIONAL:
+ case PlSqlParser.CONDITION:
+ case PlSqlParser.CONFIRM:
+ case PlSqlParser.CONFORMING:
+ case PlSqlParser.CON_GUID_TO_ID:
+ case PlSqlParser.CON_ID:
+ case PlSqlParser.CON_NAME_TO_ID:
+ case PlSqlParser.CONNECT_BY_CB_WHR_ONLY:
+ case PlSqlParser.CONNECT_BY_COMBINE_SW:
+ case PlSqlParser.CONNECT_BY_COST_BASED:
+ case PlSqlParser.CONNECT_BY_ELIM_DUPS:
+ case PlSqlParser.CONNECT_BY_FILTERING:
+ case PlSqlParser.CONNECT_BY_ISCYCLE:
+ case PlSqlParser.CONNECT_BY_ISLEAF:
+ case PlSqlParser.CONNECT_BY_ROOT:
+ case PlSqlParser.CONNECT_TIME:
+ case PlSqlParser.CONSIDER:
+ case PlSqlParser.CONSISTENT:
+ case PlSqlParser.CONSTANT:
+ case PlSqlParser.CONST:
+ case PlSqlParser.CONSTRAINT:
+ case PlSqlParser.CONSTRAINTS:
+ case PlSqlParser.CONSTRUCTOR:
+ case PlSqlParser.CONTAINER:
+ case PlSqlParser.CONTAINER_DATA:
+ case PlSqlParser.CONTAINERS:
+ case PlSqlParser.CONTENT:
+ case PlSqlParser.CONTENTS:
+ case PlSqlParser.CONTEXT:
+ case PlSqlParser.CONTINUE:
+ case PlSqlParser.CONTROLFILE:
+ case PlSqlParser.CON_UID_TO_ID:
+ case PlSqlParser.CONVERT:
+ case PlSqlParser.COOKIE:
+ case PlSqlParser.COPY:
+ case PlSqlParser.CORR_K:
+ case PlSqlParser.CORR_S:
+ case PlSqlParser.CORRUPTION:
+ case PlSqlParser.CORRUPT_XID_ALL:
+ case PlSqlParser.CORRUPT_XID:
+ case PlSqlParser.COS:
+ case PlSqlParser.COSH:
+ case PlSqlParser.COST:
+ case PlSqlParser.COST_XML_QUERY_REWRITE:
+ case PlSqlParser.COUNT:
+ case PlSqlParser.COVAR_POP:
+ case PlSqlParser.COVAR_SAMP:
+ case PlSqlParser.CPU_COSTING:
+ case PlSqlParser.CPU_PER_CALL:
+ case PlSqlParser.CPU_PER_SESSION:
+ case PlSqlParser.CRASH:
+ case PlSqlParser.CREATE_FILE_DEST:
+ case PlSqlParser.CREATE_STORED_OUTLINES:
+ case PlSqlParser.CREATION:
+ case PlSqlParser.CREDENTIAL:
+ case PlSqlParser.CRITICAL:
+ case PlSqlParser.CROSS:
+ case PlSqlParser.CROSSEDITION:
+ case PlSqlParser.CSCONVERT:
+ case PlSqlParser.CUBE_AJ:
+ case PlSqlParser.CUBE:
+ case PlSqlParser.CUBE_GB:
+ case PlSqlParser.CUBE_SJ:
+ case PlSqlParser.CUME_DISTM:
+ case PlSqlParser.CURRENT:
+ case PlSqlParser.CURRENT_DATE:
+ case PlSqlParser.CURRENT_SCHEMA:
+ case PlSqlParser.CURRENT_TIME:
+ case PlSqlParser.CURRENT_TIMESTAMP:
+ case PlSqlParser.CURRENT_USER:
+ case PlSqlParser.CURRENTV:
+ case PlSqlParser.CURSOR:
+ case PlSqlParser.CURSOR_SHARING_EXACT:
+ case PlSqlParser.CURSOR_SPECIFIC_SEGMENT:
+ case PlSqlParser.CUSTOMDATUM:
+ case PlSqlParser.CV:
+ case PlSqlParser.CYCLE:
+ case PlSqlParser.DANGLING:
+ case PlSqlParser.DATABASE:
+ case PlSqlParser.DATA:
+ case PlSqlParser.DATAFILE:
+ case PlSqlParser.DATAFILES:
+ case PlSqlParser.DATAMOVEMENT:
+ case PlSqlParser.DATAOBJNO:
+ case PlSqlParser.DATAOBJ_TO_MAT_PARTITION:
+ case PlSqlParser.DATAOBJ_TO_PARTITION:
+ case PlSqlParser.DATAPUMP:
+ case PlSqlParser.DATA_SECURITY_REWRITE_LIMIT:
+ case PlSqlParser.DATE_MODE:
+ case PlSqlParser.DAY:
+ case PlSqlParser.DAYS:
+ case PlSqlParser.DBA:
+ case PlSqlParser.DBA_RECYCLEBIN:
+ case PlSqlParser.DBMS_STATS:
+ case PlSqlParser.DB_ROLE_CHANGE:
+ case PlSqlParser.DBTIMEZONE:
+ case PlSqlParser.DB_UNIQUE_NAME:
+ case PlSqlParser.DB_VERSION:
+ case PlSqlParser.DDL:
+ case PlSqlParser.DEALLOCATE:
+ case PlSqlParser.DEBUG:
+ case PlSqlParser.DEBUGGER:
+ case PlSqlParser.DEC:
+ case PlSqlParser.DECIMAL:
+ case PlSqlParser.DECLARE:
+ case PlSqlParser.DECOMPOSE:
+ case PlSqlParser.DECORRELATE:
+ case PlSqlParser.DECR:
+ case PlSqlParser.DECREMENT:
+ case PlSqlParser.DECRYPT:
+ case PlSqlParser.DEDUPLICATE:
+ case PlSqlParser.DEFAULTS:
+ case PlSqlParser.DEFERRABLE:
+ case PlSqlParser.DEFERRED:
+ case PlSqlParser.DEFINED:
+ case PlSqlParser.DEFINE:
+ case PlSqlParser.DEFINER:
+ case PlSqlParser.DEGREE:
+ case PlSqlParser.DELAY:
+ case PlSqlParser.DELEGATE:
+ case PlSqlParser.DELETE_ALL:
+ case PlSqlParser.DELETE:
+ case PlSqlParser.DELETEXML:
+ case PlSqlParser.DEMAND:
+ case PlSqlParser.DENSE_RANKM:
+ case PlSqlParser.DEPENDENT:
+ case PlSqlParser.DEPTH:
+ case PlSqlParser.DEQUEUE:
+ case PlSqlParser.DEREF:
+ case PlSqlParser.DEREF_NO_REWRITE:
+ case PlSqlParser.DESTROY:
+ case PlSqlParser.DETACHED:
+ case PlSqlParser.DETERMINES:
+ case PlSqlParser.DETERMINISTIC:
+ case PlSqlParser.DICTIONARY:
+ case PlSqlParser.DIMENSION:
+ case PlSqlParser.DIMENSIONS:
+ case PlSqlParser.DIRECT_LOAD:
+ case PlSqlParser.DIRECTORY:
+ case PlSqlParser.DIRECT_PATH:
+ case PlSqlParser.DISABLE_ALL:
+ case PlSqlParser.DISABLE:
+ case PlSqlParser.DISABLE_PARALLEL_DML:
+ case PlSqlParser.DISABLE_PRESET:
+ case PlSqlParser.DISABLE_RPKE:
+ case PlSqlParser.DISALLOW:
+ case PlSqlParser.DISASSOCIATE:
+ case PlSqlParser.DISCARD:
+ case PlSqlParser.DISCONNECT:
+ case PlSqlParser.DISK:
+ case PlSqlParser.DISKGROUP:
+ case PlSqlParser.DISKS:
+ case PlSqlParser.DISMOUNT:
+ case PlSqlParser.DISTINGUISHED:
+ case PlSqlParser.DISTRIBUTED:
+ case PlSqlParser.DISTRIBUTE:
+ case PlSqlParser.DML:
+ case PlSqlParser.DML_UPDATE:
+ case PlSqlParser.DOCFIDELITY:
+ case PlSqlParser.DOCUMENT:
+ case PlSqlParser.DOMAIN_INDEX_FILTER:
+ case PlSqlParser.DOMAIN_INDEX_NO_SORT:
+ case PlSqlParser.DOMAIN_INDEX_SORT:
+ case PlSqlParser.DOUBLE:
+ case PlSqlParser.DOWNGRADE:
+ case PlSqlParser.DRIVING_SITE:
+ case PlSqlParser.DROP_COLUMN:
+ case PlSqlParser.DROP_GROUP:
+ case PlSqlParser.DSINTERVAL_UNCONSTRAINED:
+ case PlSqlParser.DST_UPGRADE_INSERT_CONV:
+ case PlSqlParser.DUMP:
+ case PlSqlParser.DUPLICATE:
+ case PlSqlParser.DV:
+ case PlSqlParser.DYNAMIC:
+ case PlSqlParser.DYNAMIC_SAMPLING:
+ case PlSqlParser.DYNAMIC_SAMPLING_EST_CDN:
+ case PlSqlParser.EACH:
+ case PlSqlParser.EDITIONABLE:
+ case PlSqlParser.EDITION:
+ case PlSqlParser.EDITIONING:
+ case PlSqlParser.EDITIONS:
+ case PlSqlParser.ELEMENT:
+ case PlSqlParser.ELIM_GROUPBY:
+ case PlSqlParser.ELIMINATE_JOIN:
+ case PlSqlParser.ELIMINATE_OBY:
+ case PlSqlParser.ELIMINATE_OUTER_JOIN:
+ case PlSqlParser.EM:
+ case PlSqlParser.EMPTY_BLOB:
+ case PlSqlParser.EMPTY_CLOB:
+ case PlSqlParser.EMPTY:
+ case PlSqlParser.ENABLE_ALL:
+ case PlSqlParser.ENABLE:
+ case PlSqlParser.ENABLE_PARALLEL_DML:
+ case PlSqlParser.ENABLE_PRESET:
+ case PlSqlParser.ENCODING:
+ case PlSqlParser.ENCRYPT:
+ case PlSqlParser.ENCRYPTION:
+ case PlSqlParser.END_OUTLINE_DATA:
+ case PlSqlParser.ENFORCED:
+ case PlSqlParser.ENFORCE:
+ case PlSqlParser.ENQUEUE:
+ case PlSqlParser.ENTERPRISE:
+ case PlSqlParser.ENTITYESCAPING:
+ case PlSqlParser.ENTRY:
+ case PlSqlParser.EQUIPART:
+ case PlSqlParser.ERR:
+ case PlSqlParser.ERROR_ARGUMENT:
+ case PlSqlParser.ERROR:
+ case PlSqlParser.ERROR_ON_OVERLAP_TIME:
+ case PlSqlParser.ERRORS:
+ case PlSqlParser.ESCAPE:
+ case PlSqlParser.ESTIMATE:
+ case PlSqlParser.EVAL:
+ case PlSqlParser.EVALNAME:
+ case PlSqlParser.EVALUATE:
+ case PlSqlParser.EVALUATION:
+ case PlSqlParser.EVENTS:
+ case PlSqlParser.EVERY:
+ case PlSqlParser.EXCEPT:
+ case PlSqlParser.EXCEPTION:
+ case PlSqlParser.EXCEPTION_INIT:
+ case PlSqlParser.EXCEPTIONS:
+ case PlSqlParser.EXCHANGE:
+ case PlSqlParser.EXCLUDE:
+ case PlSqlParser.EXCLUDING:
+ case PlSqlParser.EXECUTE:
+ case PlSqlParser.EXEMPT:
+ case PlSqlParser.EXISTING:
+ case PlSqlParser.EXISTS:
+ case PlSqlParser.EXISTSNODE:
+ case PlSqlParser.EXIT:
+ case PlSqlParser.EXPAND_GSET_TO_UNION:
+ case PlSqlParser.EXPAND_TABLE:
+ case PlSqlParser.EXP:
+ case PlSqlParser.EXPIRE:
+ case PlSqlParser.EXPLAIN:
+ case PlSqlParser.EXPLOSION:
+ case PlSqlParser.EXPORT:
+ case PlSqlParser.EXPR_CORR_CHECK:
+ case PlSqlParser.EXPRESS:
+ case PlSqlParser.EXTENDS:
+ case PlSqlParser.EXTENT:
+ case PlSqlParser.EXTENTS:
+ case PlSqlParser.EXTERNAL:
+ case PlSqlParser.EXTERNALLY:
+ case PlSqlParser.EXTRACTCLOBXML:
+ case PlSqlParser.EXTRACT:
+ case PlSqlParser.EXTRACTVALUE:
+ case PlSqlParser.EXTRA:
+ case PlSqlParser.FACILITY:
+ case PlSqlParser.FACT:
+ case PlSqlParser.FACTOR:
+ case PlSqlParser.FACTORIZE_JOIN:
+ case PlSqlParser.FAILED:
+ case PlSqlParser.FAILED_LOGIN_ATTEMPTS:
+ case PlSqlParser.FAILGROUP:
+ case PlSqlParser.FAILOVER:
+ case PlSqlParser.FAILURE:
+ case PlSqlParser.FALSE:
+ case PlSqlParser.FAMILY:
+ case PlSqlParser.FAR:
+ case PlSqlParser.FAST:
+ case PlSqlParser.FASTSTART:
+ case PlSqlParser.FBTSCAN:
+ case PlSqlParser.FEATURE_DETAILS:
+ case PlSqlParser.FEATURE_ID:
+ case PlSqlParser.FEATURE_SET:
+ case PlSqlParser.FEATURE_VALUE:
+ case PlSqlParser.FETCH:
+ case PlSqlParser.FILE:
+ case PlSqlParser.FILE_NAME_CONVERT:
+ case PlSqlParser.FILESYSTEM_LIKE_LOGGING:
+ case PlSqlParser.FILTER:
+ case PlSqlParser.FINAL:
+ case PlSqlParser.FINE:
+ case PlSqlParser.FINISH:
+ case PlSqlParser.FIRST:
+ case PlSqlParser.FIRSTM:
+ case PlSqlParser.FIRST_ROWS:
+ case PlSqlParser.FIRST_VALUE:
+ case PlSqlParser.FIXED_VIEW_DATA:
+ case PlSqlParser.FLAGGER:
+ case PlSqlParser.FLASHBACK:
+ case PlSqlParser.FLASH_CACHE:
+ case PlSqlParser.FLOAT:
+ case PlSqlParser.FLOB:
+ case PlSqlParser.FLOOR:
+ case PlSqlParser.FLUSH:
+ case PlSqlParser.FOLDER:
+ case PlSqlParser.FOLLOWING:
+ case PlSqlParser.FOLLOWS:
+ case PlSqlParser.FORALL:
+ case PlSqlParser.FORCE:
+ case PlSqlParser.FORCE_XML_QUERY_REWRITE:
+ case PlSqlParser.FOREIGN:
+ case PlSqlParser.FOREVER:
+ case PlSqlParser.FORMAT:
+ case PlSqlParser.FORWARD:
+ case PlSqlParser.FRAGMENT_NUMBER:
+ case PlSqlParser.FREELIST:
+ case PlSqlParser.FREELISTS:
+ case PlSqlParser.FREEPOOLS:
+ case PlSqlParser.FRESH:
+ case PlSqlParser.FROM_TZ:
+ case PlSqlParser.FULL:
+ case PlSqlParser.FULL_OUTER_JOIN_TO_OUTER:
+ case PlSqlParser.FUNCTION:
+ case PlSqlParser.FUNCTIONS:
+ case PlSqlParser.GATHER_OPTIMIZER_STATISTICS:
+ case PlSqlParser.GATHER_PLAN_STATISTICS:
+ case PlSqlParser.GBY_CONC_ROLLUP:
+ case PlSqlParser.GBY_PUSHDOWN:
+ case PlSqlParser.GENERATED:
+ case PlSqlParser.GET:
+ case PlSqlParser.GLOBAL:
+ case PlSqlParser.GLOBALLY:
+ case PlSqlParser.GLOBAL_NAME:
+ case PlSqlParser.GLOBAL_TOPIC_ENABLED:
+ case PlSqlParser.GROUP_BY:
+ case PlSqlParser.GROUP_ID:
+ case PlSqlParser.GROUPING:
+ case PlSqlParser.GROUPING_ID:
+ case PlSqlParser.GROUPS:
+ case PlSqlParser.GUARANTEED:
+ case PlSqlParser.GUARANTEE:
+ case PlSqlParser.GUARD:
+ case PlSqlParser.HASH_AJ:
+ case PlSqlParser.HASH:
+ case PlSqlParser.HASHKEYS:
+ case PlSqlParser.HASH_SJ:
+ case PlSqlParser.HEADER:
+ case PlSqlParser.HEAP:
+ case PlSqlParser.HELP:
+ case PlSqlParser.HEXTORAW:
+ case PlSqlParser.HEXTOREF:
+ case PlSqlParser.HIDDEN_KEYWORD:
+ case PlSqlParser.HIDE:
+ case PlSqlParser.HIERARCHY:
+ case PlSqlParser.HIGH:
+ case PlSqlParser.HINTSET_BEGIN:
+ case PlSqlParser.HINTSET_END:
+ case PlSqlParser.HOT:
+ case PlSqlParser.HOUR:
+ case PlSqlParser.HWM_BROKERED:
+ case PlSqlParser.HYBRID:
+ case PlSqlParser.IDENTIFIER:
+ case PlSqlParser.IDENTITY:
+ case PlSqlParser.IDGENERATORS:
+ case PlSqlParser.ID:
+ case PlSqlParser.IDLE_TIME:
+ case PlSqlParser.IF:
+ case PlSqlParser.IGNORE:
+ case PlSqlParser.IGNORE_OPTIM_EMBEDDED_HINTS:
+ case PlSqlParser.IGNORE_ROW_ON_DUPKEY_INDEX:
+ case PlSqlParser.IGNORE_WHERE_CLAUSE:
+ case PlSqlParser.ILM:
+ case PlSqlParser.IMMEDIATE:
+ case PlSqlParser.IMPACT:
+ case PlSqlParser.IMPORT:
+ case PlSqlParser.INACTIVE:
+ case PlSqlParser.INCLUDE:
+ case PlSqlParser.INCLUDE_VERSION:
+ case PlSqlParser.INCLUDING:
+ case PlSqlParser.INCREMENTAL:
+ case PlSqlParser.INCREMENT:
+ case PlSqlParser.INCR:
+ case PlSqlParser.INDENT:
+ case PlSqlParser.INDEX_ASC:
+ case PlSqlParser.INDEX_COMBINE:
+ case PlSqlParser.INDEX_DESC:
+ case PlSqlParser.INDEXED:
+ case PlSqlParser.INDEXES:
+ case PlSqlParser.INDEX_FFS:
+ case PlSqlParser.INDEX_FILTER:
+ case PlSqlParser.INDEXING:
+ case PlSqlParser.INDEX_JOIN:
+ case PlSqlParser.INDEX_ROWS:
+ case PlSqlParser.INDEX_RRS:
+ case PlSqlParser.INDEX_RS_ASC:
+ case PlSqlParser.INDEX_RS_DESC:
+ case PlSqlParser.INDEX_RS:
+ case PlSqlParser.INDEX_SCAN:
+ case PlSqlParser.INDEX_SKIP_SCAN:
+ case PlSqlParser.INDEX_SS_ASC:
+ case PlSqlParser.INDEX_SS_DESC:
+ case PlSqlParser.INDEX_SS:
+ case PlSqlParser.INDEX_STATS:
+ case PlSqlParser.INDEXTYPE:
+ case PlSqlParser.INDEXTYPES:
+ case PlSqlParser.INDICATOR:
+ case PlSqlParser.INDICES:
+ case PlSqlParser.INFINITE:
+ case PlSqlParser.INFORMATIONAL:
+ case PlSqlParser.INHERIT:
+ case PlSqlParser.INITCAP:
+ case PlSqlParser.INITIAL:
+ case PlSqlParser.INITIALIZED:
+ case PlSqlParser.INITIALLY:
+ case PlSqlParser.INITRANS:
+ case PlSqlParser.INLINE:
+ case PlSqlParser.INLINE_XMLTYPE_NT:
+ case PlSqlParser.INMEMORY:
+ case PlSqlParser.IN_MEMORY_METADATA:
+ case PlSqlParser.INMEMORY_PRUNING:
+ case PlSqlParser.INNER:
+ case PlSqlParser.INOUT:
+ case PlSqlParser.INPLACE:
+ case PlSqlParser.INSERTCHILDXMLAFTER:
+ case PlSqlParser.INSERTCHILDXMLBEFORE:
+ case PlSqlParser.INSERTCHILDXML:
+ case PlSqlParser.INSERTXMLAFTER:
+ case PlSqlParser.INSERTXMLBEFORE:
+ case PlSqlParser.INSTANCE:
+ case PlSqlParser.INSTANCES:
+ case PlSqlParser.INSTANTIABLE:
+ case PlSqlParser.INSTANTLY:
+ case PlSqlParser.INSTEAD:
+ case PlSqlParser.INSTR2:
+ case PlSqlParser.INSTR4:
+ case PlSqlParser.INSTRB:
+ case PlSqlParser.INSTRC:
+ case PlSqlParser.INSTR:
+ case PlSqlParser.INTEGER:
+ case PlSqlParser.INTERLEAVED:
+ case PlSqlParser.INTERMEDIATE:
+ case PlSqlParser.INTERNAL_CONVERT:
+ case PlSqlParser.INTERNAL_USE:
+ case PlSqlParser.INTERPRETED:
+ case PlSqlParser.INTERVAL:
+ case PlSqlParser.INT:
+ case PlSqlParser.INVALIDATE:
+ case PlSqlParser.INVISIBLE:
+ case PlSqlParser.IN_XQUERY:
+ case PlSqlParser.ISOLATION:
+ case PlSqlParser.ISOLATION_LEVEL:
+ case PlSqlParser.ITERATE:
+ case PlSqlParser.ITERATION_NUMBER:
+ case PlSqlParser.JAVA:
+ case PlSqlParser.JOB:
+ case PlSqlParser.JOIN:
+ case PlSqlParser.JSON_ARRAYAGG:
+ case PlSqlParser.JSON_ARRAY:
+ case PlSqlParser.JSON_EQUAL:
+ case PlSqlParser.JSON_EXISTS2:
+ case PlSqlParser.JSON_EXISTS:
+ case PlSqlParser.JSONGET:
+ case PlSqlParser.JSON:
+ case PlSqlParser.JSON_OBJECTAGG:
+ case PlSqlParser.JSON_OBJECT:
+ case PlSqlParser.JSONPARSE:
+ case PlSqlParser.JSON_QUERY:
+ case PlSqlParser.JSON_SERIALIZE:
+ case PlSqlParser.JSON_TABLE:
+ case PlSqlParser.JSON_TEXTCONTAINS2:
+ case PlSqlParser.JSON_TEXTCONTAINS:
+ case PlSqlParser.JSON_VALUE:
+ case PlSqlParser.KEEP_DUPLICATES:
+ case PlSqlParser.KEEP:
+ case PlSqlParser.KERBEROS:
+ case PlSqlParser.KEY:
+ case PlSqlParser.KEY_LENGTH:
+ case PlSqlParser.KEYSIZE:
+ case PlSqlParser.KEYS:
+ case PlSqlParser.KEYSTORE:
+ case PlSqlParser.KILL:
+ case PlSqlParser.LABEL:
+ case PlSqlParser.LANGUAGE:
+ case PlSqlParser.LAST_DAY:
+ case PlSqlParser.LAST:
+ case PlSqlParser.LAST_VALUE:
+ case PlSqlParser.LATERAL:
+ case PlSqlParser.LAX:
+ case PlSqlParser.LAYER:
+ case PlSqlParser.LDAP_REGISTRATION_ENABLED:
+ case PlSqlParser.LDAP_REGISTRATION:
+ case PlSqlParser.LDAP_REG_SYNC_INTERVAL:
+ case PlSqlParser.LEADING:
+ case PlSqlParser.LEFT:
+ case PlSqlParser.LENGTH2:
+ case PlSqlParser.LENGTH4:
+ case PlSqlParser.LENGTHB:
+ case PlSqlParser.LENGTHC:
+ case PlSqlParser.LENGTH:
+ case PlSqlParser.LESS:
+ case PlSqlParser.LEVEL:
+ case PlSqlParser.LEVELS:
+ case PlSqlParser.LIBRARY:
+ case PlSqlParser.LIFECYCLE:
+ case PlSqlParser.LIFE:
+ case PlSqlParser.LIFETIME:
+ case PlSqlParser.LIKE2:
+ case PlSqlParser.LIKE4:
+ case PlSqlParser.LIKEC:
+ case PlSqlParser.LIKE_EXPAND:
+ case PlSqlParser.LIMIT:
+ case PlSqlParser.LINEAR:
+ case PlSqlParser.LINK:
+ case PlSqlParser.LIST:
+ case PlSqlParser.LN:
+ case PlSqlParser.LNNVL:
+ case PlSqlParser.LOAD:
+ case PlSqlParser.LOB:
+ case PlSqlParser.LOBNVL:
+ case PlSqlParser.LOBS:
+ case PlSqlParser.LOCAL_INDEXES:
+ case PlSqlParser.LOCAL:
+ case PlSqlParser.LOCALTIME:
+ case PlSqlParser.LOCALTIMESTAMP:
+ case PlSqlParser.LOCATION:
+ case PlSqlParser.LOCATOR:
+ case PlSqlParser.LOCKED:
+ case PlSqlParser.LOCKING:
+ case PlSqlParser.LOGFILE:
+ case PlSqlParser.LOGFILES:
+ case PlSqlParser.LOGGING:
+ case PlSqlParser.LOGICAL:
+ case PlSqlParser.LOGICAL_READS_PER_CALL:
+ case PlSqlParser.LOGICAL_READS_PER_SESSION:
+ case PlSqlParser.LOG:
+ case PlSqlParser.LOGMINING:
+ case PlSqlParser.LOGOFF:
+ case PlSqlParser.LOGON:
+ case PlSqlParser.LOG_READ_ONLY_VIOLATIONS:
+ case PlSqlParser.LONG:
+ case PlSqlParser.LOOP:
+ case PlSqlParser.LOWER:
+ case PlSqlParser.LOW:
+ case PlSqlParser.LPAD:
+ case PlSqlParser.LTRIM:
+ case PlSqlParser.MAIN:
+ case PlSqlParser.MAKE_REF:
+ case PlSqlParser.MANAGED:
+ case PlSqlParser.MANAGE:
+ case PlSqlParser.MANAGEMENT:
+ case PlSqlParser.MANAGER:
+ case PlSqlParser.MANUAL:
+ case PlSqlParser.MAP:
+ case PlSqlParser.MAPPING:
+ case PlSqlParser.MASTER:
+ case PlSqlParser.MATCHED:
+ case PlSqlParser.MATCHES:
+ case PlSqlParser.MATCH:
+ case PlSqlParser.MATCH_NUMBER:
+ case PlSqlParser.MATCH_RECOGNIZE:
+ case PlSqlParser.MATERIALIZED:
+ case PlSqlParser.MATERIALIZE:
+ case PlSqlParser.MAXARCHLOGS:
+ case PlSqlParser.MAXDATAFILES:
+ case PlSqlParser.MAXEXTENTS:
+ case PlSqlParser.MAXIMIZE:
+ case PlSqlParser.MAXINSTANCES:
+ case PlSqlParser.MAXLOGFILES:
+ case PlSqlParser.MAXLOGHISTORY:
+ case PlSqlParser.MAXLOGMEMBERS:
+ case PlSqlParser.MAX_SHARED_TEMP_SIZE:
+ case PlSqlParser.MAXSIZE:
+ case PlSqlParser.MAXTRANS:
+ case PlSqlParser.MAXVALUE:
+ case PlSqlParser.MEASURE:
+ case PlSqlParser.MEASURES:
+ case PlSqlParser.MEDIUM:
+ case PlSqlParser.MEMBER:
+ case PlSqlParser.MEMCOMPRESS:
+ case PlSqlParser.MEMORY:
+ case PlSqlParser.MERGEACTIONS:
+ case PlSqlParser.MERGE_AJ:
+ case PlSqlParser.MERGE_CONST_ON:
+ case PlSqlParser.MERGE:
+ case PlSqlParser.MERGE_SJ:
+ case PlSqlParser.METADATA:
+ case PlSqlParser.METHOD:
+ case PlSqlParser.MIGRATE:
+ case PlSqlParser.MIGRATION:
+ case PlSqlParser.MINEXTENTS:
+ case PlSqlParser.MINIMIZE:
+ case PlSqlParser.MINIMUM:
+ case PlSqlParser.MINING:
+ case PlSqlParser.MINUS_NULL:
+ case PlSqlParser.MINUTE:
+ case PlSqlParser.MINVALUE:
+ case PlSqlParser.MIRRORCOLD:
+ case PlSqlParser.MIRRORHOT:
+ case PlSqlParser.MIRROR:
+ case PlSqlParser.MLSLABEL:
+ case PlSqlParser.MODEL_COMPILE_SUBQUERY:
+ case PlSqlParser.MODEL_DONTVERIFY_UNIQUENESS:
+ case PlSqlParser.MODEL_DYNAMIC_SUBQUERY:
+ case PlSqlParser.MODEL_MIN_ANALYSIS:
+ case PlSqlParser.MODEL:
+ case PlSqlParser.MODEL_NB:
+ case PlSqlParser.MODEL_NO_ANALYSIS:
+ case PlSqlParser.MODEL_PBY:
+ case PlSqlParser.MODEL_PUSH_REF:
+ case PlSqlParser.MODEL_SV:
+ case PlSqlParser.MODIFICATION:
+ case PlSqlParser.MODIFY_COLUMN_TYPE:
+ case PlSqlParser.MODIFY:
+ case PlSqlParser.MOD:
+ case PlSqlParser.MODULE:
+ case PlSqlParser.MONITORING:
+ case PlSqlParser.MONITOR:
+ case PlSqlParser.MONTH:
+ case PlSqlParser.MONTHS_BETWEEN:
+ case PlSqlParser.MONTHS:
+ case PlSqlParser.MOUNT:
+ case PlSqlParser.MOUNTPATH:
+ case PlSqlParser.MOVEMENT:
+ case PlSqlParser.MOVE:
+ case PlSqlParser.MULTIDIMENSIONAL:
+ case PlSqlParser.MULTISET:
+ case PlSqlParser.MV_MERGE:
+ case PlSqlParser.NAMED:
+ case PlSqlParser.NAME:
+ case PlSqlParser.NAMESPACE:
+ case PlSqlParser.NAN:
+ case PlSqlParser.NANVL:
+ case PlSqlParser.NATIONAL:
+ case PlSqlParser.NATIVE_FULL_OUTER_JOIN:
+ case PlSqlParser.NATIVE:
+ case PlSqlParser.NATURAL:
+ case PlSqlParser.NAV:
+ case PlSqlParser.NCHAR_CS:
+ case PlSqlParser.NCHAR:
+ case PlSqlParser.NCHR:
+ case PlSqlParser.NCLOB:
+ case PlSqlParser.NEEDED:
+ case PlSqlParser.NEG:
+ case PlSqlParser.NESTED:
+ case PlSqlParser.NESTED_TABLE_FAST_INSERT:
+ case PlSqlParser.NESTED_TABLE_GET_REFS:
+ case PlSqlParser.NESTED_TABLE_ID:
+ case PlSqlParser.NESTED_TABLE_SET_REFS:
+ case PlSqlParser.NESTED_TABLE_SET_SETID:
+ case PlSqlParser.NETWORK:
+ case PlSqlParser.NEVER:
+ case PlSqlParser.NEW:
+ case PlSqlParser.NEW_TIME:
+ case PlSqlParser.NEXT_DAY:
+ case PlSqlParser.NEXT:
+ case PlSqlParser.NL_AJ:
+ case PlSqlParser.NLJ_BATCHING:
+ case PlSqlParser.NLJ_INDEX_FILTER:
+ case PlSqlParser.NLJ_INDEX_SCAN:
+ case PlSqlParser.NLJ_PREFETCH:
+ case PlSqlParser.NLS_CALENDAR:
+ case PlSqlParser.NLS_CHARACTERSET:
+ case PlSqlParser.NLS_CHARSET_DECL_LEN:
+ case PlSqlParser.NLS_CHARSET_ID:
+ case PlSqlParser.NLS_CHARSET_NAME:
+ case PlSqlParser.NLS_COMP:
+ case PlSqlParser.NLS_CURRENCY:
+ case PlSqlParser.NLS_DATE_FORMAT:
+ case PlSqlParser.NLS_DATE_LANGUAGE:
+ case PlSqlParser.NLS_INITCAP:
+ case PlSqlParser.NLS_ISO_CURRENCY:
+ case PlSqlParser.NL_SJ:
+ case PlSqlParser.NLS_LANG:
+ case PlSqlParser.NLS_LANGUAGE:
+ case PlSqlParser.NLS_LENGTH_SEMANTICS:
+ case PlSqlParser.NLS_LOWER:
+ case PlSqlParser.NLS_NCHAR_CONV_EXCP:
+ case PlSqlParser.NLS_NUMERIC_CHARACTERS:
+ case PlSqlParser.NLS_SORT:
+ case PlSqlParser.NLSSORT:
+ case PlSqlParser.NLS_SPECIAL_CHARS:
+ case PlSqlParser.NLS_TERRITORY:
+ case PlSqlParser.NLS_UPPER:
+ case PlSqlParser.NO_ACCESS:
+ case PlSqlParser.NO_ADAPTIVE_PLAN:
+ case PlSqlParser.NO_ANSI_REARCH:
+ case PlSqlParser.NOAPPEND:
+ case PlSqlParser.NOARCHIVELOG:
+ case PlSqlParser.NOAUDIT:
+ case PlSqlParser.NO_AUTO_REOPTIMIZE:
+ case PlSqlParser.NO_BASETABLE_MULTIMV_REWRITE:
+ case PlSqlParser.NO_BATCH_TABLE_ACCESS_BY_ROWID:
+ case PlSqlParser.NO_BIND_AWARE:
+ case PlSqlParser.NO_BUFFER:
+ case PlSqlParser.NOCACHE:
+ case PlSqlParser.NO_CARTESIAN:
+ case PlSqlParser.NO_CHECK_ACL_REWRITE:
+ case PlSqlParser.NO_CLUSTER_BY_ROWID:
+ case PlSqlParser.NO_CLUSTERING:
+ case PlSqlParser.NO_COALESCE_SQ:
+ case PlSqlParser.NO_COMMON_DATA:
+ case PlSqlParser.NO_CONNECT_BY_CB_WHR_ONLY:
+ case PlSqlParser.NO_CONNECT_BY_COMBINE_SW:
+ case PlSqlParser.NO_CONNECT_BY_COST_BASED:
+ case PlSqlParser.NO_CONNECT_BY_ELIM_DUPS:
+ case PlSqlParser.NO_CONNECT_BY_FILTERING:
+ case PlSqlParser.NOCOPY:
+ case PlSqlParser.NO_COST_XML_QUERY_REWRITE:
+ case PlSqlParser.NO_CPU_COSTING:
+ case PlSqlParser.NOCPU_COSTING:
+ case PlSqlParser.NOCYCLE:
+ case PlSqlParser.NO_DATA_SECURITY_REWRITE:
+ case PlSqlParser.NO_DECORRELATE:
+ case PlSqlParser.NODELAY:
+ case PlSqlParser.NO_DOMAIN_INDEX_FILTER:
+ case PlSqlParser.NO_DST_UPGRADE_INSERT_CONV:
+ case PlSqlParser.NO_ELIM_GROUPBY:
+ case PlSqlParser.NO_ELIMINATE_JOIN:
+ case PlSqlParser.NO_ELIMINATE_OBY:
+ case PlSqlParser.NO_ELIMINATE_OUTER_JOIN:
+ case PlSqlParser.NOENTITYESCAPING:
+ case PlSqlParser.NO_EXPAND_GSET_TO_UNION:
+ case PlSqlParser.NO_EXPAND:
+ case PlSqlParser.NO_EXPAND_TABLE:
+ case PlSqlParser.NO_FACT:
+ case PlSqlParser.NO_FACTORIZE_JOIN:
+ case PlSqlParser.NO_FILTERING:
+ case PlSqlParser.NOFORCE:
+ case PlSqlParser.NO_FULL_OUTER_JOIN_TO_OUTER:
+ case PlSqlParser.NO_GATHER_OPTIMIZER_STATISTICS:
+ case PlSqlParser.NO_GBY_PUSHDOWN:
+ case PlSqlParser.NOGUARANTEE:
+ case PlSqlParser.NO_INDEX_FFS:
+ case PlSqlParser.NO_INDEX:
+ case PlSqlParser.NO_INDEX_SS:
+ case PlSqlParser.NO_INMEMORY:
+ case PlSqlParser.NO_INMEMORY_PRUNING:
+ case PlSqlParser.NOKEEP:
+ case PlSqlParser.NO_LOAD:
+ case PlSqlParser.NOLOCAL:
+ case PlSqlParser.NOLOGGING:
+ case PlSqlParser.NOMAPPING:
+ case PlSqlParser.NOMAXVALUE:
+ case PlSqlParser.NO_MERGE:
+ case PlSqlParser.NOMINIMIZE:
+ case PlSqlParser.NOMINVALUE:
+ case PlSqlParser.NO_MODEL_PUSH_REF:
+ case PlSqlParser.NO_MONITORING:
+ case PlSqlParser.NOMONITORING:
+ case PlSqlParser.NO_MONITOR:
+ case PlSqlParser.NO_MULTIMV_REWRITE:
+ case PlSqlParser.NO_NATIVE_FULL_OUTER_JOIN:
+ case PlSqlParser.NONBLOCKING:
+ case PlSqlParser.NONEDITIONABLE:
+ case PlSqlParser.NONE:
+ case PlSqlParser.NO_NLJ_BATCHING:
+ case PlSqlParser.NO_NLJ_PREFETCH:
+ case PlSqlParser.NO:
+ case PlSqlParser.NONSCHEMA:
+ case PlSqlParser.NO_OBJECT_LINK:
+ case PlSqlParser.NOORDER:
+ case PlSqlParser.NO_ORDER_ROLLUPS:
+ case PlSqlParser.NO_OUTER_JOIN_TO_ANTI:
+ case PlSqlParser.NO_OUTER_JOIN_TO_INNER:
+ case PlSqlParser.NOOVERRIDE:
+ case PlSqlParser.NO_PARALLEL_INDEX:
+ case PlSqlParser.NOPARALLEL_INDEX:
+ case PlSqlParser.NO_PARALLEL:
+ case PlSqlParser.NOPARALLEL:
+ case PlSqlParser.NO_PARTIAL_COMMIT:
+ case PlSqlParser.NO_PARTIAL_JOIN:
+ case PlSqlParser.NO_PARTIAL_ROLLUP_PUSHDOWN:
+ case PlSqlParser.NOPARTITION:
+ case PlSqlParser.NO_PLACE_DISTINCT:
+ case PlSqlParser.NO_PLACE_GROUP_BY:
+ case PlSqlParser.NO_PQ_CONCURRENT_UNION:
+ case PlSqlParser.NO_PQ_MAP:
+ case PlSqlParser.NO_PQ_REPLICATE:
+ case PlSqlParser.NO_PQ_SKEW:
+ case PlSqlParser.NO_PRUNE_GSETS:
+ case PlSqlParser.NO_PULL_PRED:
+ case PlSqlParser.NO_PUSH_PRED:
+ case PlSqlParser.NO_PUSH_SUBQ:
+ case PlSqlParser.NO_PX_FAULT_TOLERANCE:
+ case PlSqlParser.NO_PX_JOIN_FILTER:
+ case PlSqlParser.NO_QKN_BUFF:
+ case PlSqlParser.NO_QUERY_TRANSFORMATION:
+ case PlSqlParser.NO_REF_CASCADE:
+ case PlSqlParser.NORELOCATE:
+ case PlSqlParser.NORELY:
+ case PlSqlParser.NOREPAIR:
+ case PlSqlParser.NOREPLAY:
+ case PlSqlParser.NORESETLOGS:
+ case PlSqlParser.NO_RESULT_CACHE:
+ case PlSqlParser.NOREVERSE:
+ case PlSqlParser.NO_REWRITE:
+ case PlSqlParser.NOREWRITE:
+ case PlSqlParser.NORMAL:
+ case PlSqlParser.NO_ROOT_SW_FOR_LOCAL:
+ case PlSqlParser.NOROWDEPENDENCIES:
+ case PlSqlParser.NOSCHEMACHECK:
+ case PlSqlParser.NOSEGMENT:
+ case PlSqlParser.NO_SEMIJOIN:
+ case PlSqlParser.NO_SEMI_TO_INNER:
+ case PlSqlParser.NO_SET_TO_JOIN:
+ case PlSqlParser.NOSORT:
+ case PlSqlParser.NO_SQL_TRANSLATION:
+ case PlSqlParser.NO_SQL_TUNE:
+ case PlSqlParser.NO_STAR_TRANSFORMATION:
+ case PlSqlParser.NO_STATEMENT_QUEUING:
+ case PlSqlParser.NO_STATS_GSETS:
+ case PlSqlParser.NOSTRICT:
+ case PlSqlParser.NO_SUBQUERY_PRUNING:
+ case PlSqlParser.NO_SUBSTRB_PAD:
+ case PlSqlParser.NO_SWAP_JOIN_INPUTS:
+ case PlSqlParser.NOSWITCH:
+ case PlSqlParser.NO_TABLE_LOOKUP_BY_NL:
+ case PlSqlParser.NO_TEMP_TABLE:
+ case PlSqlParser.NOTHING:
+ case PlSqlParser.NOTIFICATION:
+ case PlSqlParser.NO_TRANSFORM_DISTINCT_AGG:
+ case PlSqlParser.NO_UNNEST:
+ case PlSqlParser.NO_USE_CUBE:
+ case PlSqlParser.NO_USE_HASH_AGGREGATION:
+ case PlSqlParser.NO_USE_HASH_GBY_FOR_PUSHDOWN:
+ case PlSqlParser.NO_USE_HASH:
+ case PlSqlParser.NO_USE_INVISIBLE_INDEXES:
+ case PlSqlParser.NO_USE_MERGE:
+ case PlSqlParser.NO_USE_NL:
+ case PlSqlParser.NO_USE_VECTOR_AGGREGATION:
+ case PlSqlParser.NOVALIDATE:
+ case PlSqlParser.NO_VECTOR_TRANSFORM_DIMS:
+ case PlSqlParser.NO_VECTOR_TRANSFORM_FACT:
+ case PlSqlParser.NO_VECTOR_TRANSFORM:
+ case PlSqlParser.NO_XDB_FASTPATH_INSERT:
+ case PlSqlParser.NO_XML_DML_REWRITE:
+ case PlSqlParser.NO_XMLINDEX_REWRITE_IN_SELECT:
+ case PlSqlParser.NO_XMLINDEX_REWRITE:
+ case PlSqlParser.NO_XML_QUERY_REWRITE:
+ case PlSqlParser.NO_ZONEMAP:
+ case PlSqlParser.NTH_VALUE:
+ case PlSqlParser.NULLIF:
+ case PlSqlParser.NULLS:
+ case PlSqlParser.NUMBER:
+ case PlSqlParser.NUMERIC:
+ case PlSqlParser.NUM_INDEX_KEYS:
+ case PlSqlParser.NUMTODSINTERVAL:
+ case PlSqlParser.NUMTOYMINTERVAL:
+ case PlSqlParser.NVARCHAR2:
+ case PlSqlParser.NVL2:
+ case PlSqlParser.OBJECT2XML:
+ case PlSqlParser.OBJECT:
+ case PlSqlParser.OBJ_ID:
+ case PlSqlParser.OBJNO:
+ case PlSqlParser.OBJNO_REUSE:
+ case PlSqlParser.OCCURENCES:
+ case PlSqlParser.OFFLINE:
+ case PlSqlParser.OFF:
+ case PlSqlParser.OFFSET:
+ case PlSqlParser.OIDINDEX:
+ case PlSqlParser.OID:
+ case PlSqlParser.OLAP:
+ case PlSqlParser.OLD:
+ case PlSqlParser.OLD_PUSH_PRED:
+ case PlSqlParser.OLS:
+ case PlSqlParser.OLTP:
+ case PlSqlParser.OMIT:
+ case PlSqlParser.ONE:
+ case PlSqlParser.ONLINE:
+ case PlSqlParser.ONLY:
+ case PlSqlParser.OPAQUE:
+ case PlSqlParser.OPAQUE_TRANSFORM:
+ case PlSqlParser.OPAQUE_XCANONICAL:
+ case PlSqlParser.OPCODE:
+ case PlSqlParser.OPEN:
+ case PlSqlParser.OPERATIONS:
+ case PlSqlParser.OPERATOR:
+ case PlSqlParser.OPT_ESTIMATE:
+ case PlSqlParser.OPTIMAL:
+ case PlSqlParser.OPTIMIZE:
+ case PlSqlParser.OPTIMIZER_FEATURES_ENABLE:
+ case PlSqlParser.OPTIMIZER_GOAL:
+ case PlSqlParser.OPT_PARAM:
+ case PlSqlParser.ORA_BRANCH:
+ case PlSqlParser.ORA_CHECK_ACL:
+ case PlSqlParser.ORA_CHECK_PRIVILEGE:
+ case PlSqlParser.ORA_CLUSTERING:
+ case PlSqlParser.ORADATA:
+ case PlSqlParser.ORADEBUG:
+ case PlSqlParser.ORA_DST_AFFECTED:
+ case PlSqlParser.ORA_DST_CONVERT:
+ case PlSqlParser.ORA_DST_ERROR:
+ case PlSqlParser.ORA_GET_ACLIDS:
+ case PlSqlParser.ORA_GET_PRIVILEGES:
+ case PlSqlParser.ORA_HASH:
+ case PlSqlParser.ORA_INVOKING_USERID:
+ case PlSqlParser.ORA_INVOKING_USER:
+ case PlSqlParser.ORA_INVOKING_XS_USER_GUID:
+ case PlSqlParser.ORA_INVOKING_XS_USER:
+ case PlSqlParser.ORA_RAWCOMPARE:
+ case PlSqlParser.ORA_RAWCONCAT:
+ case PlSqlParser.ORA_ROWSCN:
+ case PlSqlParser.ORA_ROWSCN_RAW:
+ case PlSqlParser.ORA_ROWVERSION:
+ case PlSqlParser.ORA_TABVERSION:
+ case PlSqlParser.ORA_WRITE_TIME:
+ case PlSqlParser.ORDERED:
+ case PlSqlParser.ORDERED_PREDICATES:
+ case PlSqlParser.ORDINALITY:
+ case PlSqlParser.OR_EXPAND:
+ case PlSqlParser.ORGANIZATION:
+ case PlSqlParser.OR_PREDICATES:
+ case PlSqlParser.OSERROR:
+ case PlSqlParser.OTHER:
+ case PlSqlParser.OUTER_JOIN_TO_ANTI:
+ case PlSqlParser.OUTER_JOIN_TO_INNER:
+ case PlSqlParser.OUTER:
+ case PlSqlParser.OUTLINE_LEAF:
+ case PlSqlParser.OUTLINE:
+ case PlSqlParser.OUT_OF_LINE:
+ case PlSqlParser.OUT:
+ case PlSqlParser.OVERFLOW_NOMOVE:
+ case PlSqlParser.OVERFLOW:
+ case PlSqlParser.OVERLAPS:
+ case PlSqlParser.OVER:
+ case PlSqlParser.OVERRIDING:
+ case PlSqlParser.OWNER:
+ case PlSqlParser.OWNERSHIP:
+ case PlSqlParser.OWN:
+ case PlSqlParser.PACKAGE:
+ case PlSqlParser.PACKAGES:
+ case PlSqlParser.PARALLEL_ENABLE:
+ case PlSqlParser.PARALLEL_INDEX:
+ case PlSqlParser.PARALLEL:
+ case PlSqlParser.PARAMETERS:
+ case PlSqlParser.PARAM:
+ case PlSqlParser.PARENT:
+ case PlSqlParser.PARITY:
+ case PlSqlParser.PARTIAL_JOIN:
+ case PlSqlParser.PARTIALLY:
+ case PlSqlParser.PARTIAL:
+ case PlSqlParser.PARTIAL_ROLLUP_PUSHDOWN:
+ case PlSqlParser.PARTITION_HASH:
+ case PlSqlParser.PARTITION_LIST:
+ case PlSqlParser.PARTITION:
+ case PlSqlParser.PARTITION_RANGE:
+ case PlSqlParser.PARTITIONS:
+ case PlSqlParser.PARTNUMINST:
+ case PlSqlParser.PASSING:
+ case PlSqlParser.PASSWORD_GRACE_TIME:
+ case PlSqlParser.PASSWORD_LIFE_TIME:
+ case PlSqlParser.PASSWORD_LOCK_TIME:
+ case PlSqlParser.PASSWORD:
+ case PlSqlParser.PASSWORD_REUSE_MAX:
+ case PlSqlParser.PASSWORD_REUSE_TIME:
+ case PlSqlParser.PASSWORD_VERIFY_FUNCTION:
+ case PlSqlParser.PAST:
+ case PlSqlParser.PATCH:
+ case PlSqlParser.PATH:
+ case PlSqlParser.PATH_PREFIX:
+ case PlSqlParser.PATHS:
+ case PlSqlParser.PATTERN:
+ case PlSqlParser.PBL_HS_BEGIN:
+ case PlSqlParser.PBL_HS_END:
+ case PlSqlParser.PCTINCREASE:
+ case PlSqlParser.PCTTHRESHOLD:
+ case PlSqlParser.PCTUSED:
+ case PlSqlParser.PCTVERSION:
+ case PlSqlParser.PENDING:
+ case PlSqlParser.PERCENT_KEYWORD:
+ case PlSqlParser.PERCENT_RANKM:
+ case PlSqlParser.PERFORMANCE:
+ case PlSqlParser.PERIOD_KEYWORD:
+ case PlSqlParser.PERMANENT:
+ case PlSqlParser.PERMISSION:
+ case PlSqlParser.PERMUTE:
+ case PlSqlParser.PER:
+ case PlSqlParser.PFILE:
+ case PlSqlParser.PHYSICAL:
+ case PlSqlParser.PIKEY:
+ case PlSqlParser.PIPELINED:
+ case PlSqlParser.PIV_GB:
+ case PlSqlParser.PIVOT:
+ case PlSqlParser.PIV_SSF:
+ case PlSqlParser.PLACE_DISTINCT:
+ case PlSqlParser.PLACE_GROUP_BY:
+ case PlSqlParser.PLAN:
+ case PlSqlParser.PLSCOPE_SETTINGS:
+ case PlSqlParser.PLS_INTEGER:
+ case PlSqlParser.PLSQL_CCFLAGS:
+ case PlSqlParser.PLSQL_CODE_TYPE:
+ case PlSqlParser.PLSQL_DEBUG:
+ case PlSqlParser.PLSQL_OPTIMIZE_LEVEL:
+ case PlSqlParser.PLSQL_WARNINGS:
+ case PlSqlParser.PLUGGABLE:
+ case PlSqlParser.POINT:
+ case PlSqlParser.POLICY:
+ case PlSqlParser.POOL_16K:
+ case PlSqlParser.POOL_2K:
+ case PlSqlParser.POOL_32K:
+ case PlSqlParser.POOL_4K:
+ case PlSqlParser.POOL_8K:
+ case PlSqlParser.POSITIVEN:
+ case PlSqlParser.POSITIVE:
+ case PlSqlParser.POST_TRANSACTION:
+ case PlSqlParser.POWERMULTISET_BY_CARDINALITY:
+ case PlSqlParser.POWERMULTISET:
+ case PlSqlParser.POWER:
+ case PlSqlParser.PQ_CONCURRENT_UNION:
+ case PlSqlParser.PQ_DISTRIBUTE:
+ case PlSqlParser.PQ_DISTRIBUTE_WINDOW:
+ case PlSqlParser.PQ_FILTER:
+ case PlSqlParser.PQ_MAP:
+ case PlSqlParser.PQ_NOMAP:
+ case PlSqlParser.PQ_REPLICATE:
+ case PlSqlParser.PQ_SKEW:
+ case PlSqlParser.PRAGMA:
+ case PlSqlParser.PREBUILT:
+ case PlSqlParser.PRECEDES:
+ case PlSqlParser.PRECEDING:
+ case PlSqlParser.PRECISION:
+ case PlSqlParser.PRECOMPUTE_SUBQUERY:
+ case PlSqlParser.PREDICATE_REORDERS:
+ case PlSqlParser.PRELOAD:
+ case PlSqlParser.PREPARE:
+ case PlSqlParser.PRESENTNNV:
+ case PlSqlParser.PRESENT:
+ case PlSqlParser.PRESENTV:
+ case PlSqlParser.PRESERVE_OID:
+ case PlSqlParser.PRESERVE:
+ case PlSqlParser.PRETTY:
+ case PlSqlParser.PREVIOUS:
+ case PlSqlParser.PREV:
+ case PlSqlParser.PRIMARY:
+ case PlSqlParser.PRINTBLOBTOCLOB:
+ case PlSqlParser.PRIORITY:
+ case PlSqlParser.PRIVATE:
+ case PlSqlParser.PRIVATE_SGA:
+ case PlSqlParser.PRIVILEGED:
+ case PlSqlParser.PRIVILEGE:
+ case PlSqlParser.PRIVILEGES:
+ case PlSqlParser.PROCEDURAL:
+ case PlSqlParser.PROCEDURE:
+ case PlSqlParser.PROCESS:
+ case PlSqlParser.PROFILE:
+ case PlSqlParser.PROGRAM:
+ case PlSqlParser.PROJECT:
+ case PlSqlParser.PROPAGATE:
+ case PlSqlParser.PROTECTED:
+ case PlSqlParser.PROTECTION:
+ case PlSqlParser.PROXY:
+ case PlSqlParser.PRUNING:
+ case PlSqlParser.PULL_PRED:
+ case PlSqlParser.PURGE:
+ case PlSqlParser.PUSH_PRED:
+ case PlSqlParser.PUSH_SUBQ:
+ case PlSqlParser.PX_FAULT_TOLERANCE:
+ case PlSqlParser.PX_GRANULE:
+ case PlSqlParser.PX_JOIN_FILTER:
+ case PlSqlParser.QB_NAME:
+ case PlSqlParser.QUERY_BLOCK:
+ case PlSqlParser.QUERY:
+ case PlSqlParser.QUEUE_CURR:
+ case PlSqlParser.QUEUE:
+ case PlSqlParser.QUEUE_ROWP:
+ case PlSqlParser.QUIESCE:
+ case PlSqlParser.QUORUM:
+ case PlSqlParser.QUOTA:
+ case PlSqlParser.RAISE:
+ case PlSqlParser.RANDOM_LOCAL:
+ case PlSqlParser.RANDOM:
+ case PlSqlParser.RANGE:
+ case PlSqlParser.RANKM:
+ case PlSqlParser.RAPIDLY:
+ case PlSqlParser.RAW:
+ case PlSqlParser.RAWTOHEX:
+ case PlSqlParser.RAWTONHEX:
+ case PlSqlParser.RBA:
+ case PlSqlParser.RBO_OUTLINE:
+ case PlSqlParser.RDBA:
+ case PlSqlParser.READ:
+ case PlSqlParser.READS:
+ case PlSqlParser.REALM:
+ case PlSqlParser.REAL:
+ case PlSqlParser.REBALANCE:
+ case PlSqlParser.REBUILD:
+ case PlSqlParser.RECORD:
+ case PlSqlParser.RECORDS_PER_BLOCK:
+ case PlSqlParser.RECOVERABLE:
+ case PlSqlParser.RECOVER:
+ case PlSqlParser.RECOVERY:
+ case PlSqlParser.RECYCLEBIN:
+ case PlSqlParser.RECYCLE:
+ case PlSqlParser.REDACTION:
+ case PlSqlParser.REDEFINE:
+ case PlSqlParser.REDO:
+ case PlSqlParser.REDUCED:
+ case PlSqlParser.REDUNDANCY:
+ case PlSqlParser.REF_CASCADE_CURSOR:
+ case PlSqlParser.REFERENCED:
+ case PlSqlParser.REFERENCE:
+ case PlSqlParser.REFERENCES:
+ case PlSqlParser.REFERENCING:
+ case PlSqlParser.REF:
+ case PlSqlParser.REFRESH:
+ case PlSqlParser.REFTOHEX:
+ case PlSqlParser.REGEXP_COUNT:
+ case PlSqlParser.REGEXP_INSTR:
+ case PlSqlParser.REGEXP_LIKE:
+ case PlSqlParser.REGEXP_REPLACE:
+ case PlSqlParser.REGEXP_SUBSTR:
+ case PlSqlParser.REGISTER:
+ case PlSqlParser.REGR_AVGX:
+ case PlSqlParser.REGR_AVGY:
+ case PlSqlParser.REGR_COUNT:
+ case PlSqlParser.REGR_INTERCEPT:
+ case PlSqlParser.REGR_R2:
+ case PlSqlParser.REGR_SLOPE:
+ case PlSqlParser.REGR_SXX:
+ case PlSqlParser.REGR_SXY:
+ case PlSqlParser.REGR_SYY:
+ case PlSqlParser.REGULAR:
+ case PlSqlParser.REJECT:
+ case PlSqlParser.REKEY:
+ case PlSqlParser.RELATIONAL:
+ case PlSqlParser.RELOCATE:
+ case PlSqlParser.RELY:
+ case PlSqlParser.REMAINDER:
+ case PlSqlParser.REMOTE_MAPPED:
+ case PlSqlParser.REMOVE:
+ case PlSqlParser.RENAME:
+ case PlSqlParser.REPAIR:
+ case PlSqlParser.REPEAT:
+ case PlSqlParser.REPLACE:
+ case PlSqlParser.REPLICATION:
+ case PlSqlParser.REQUIRED:
+ case PlSqlParser.RESETLOGS:
+ case PlSqlParser.RESET:
+ case PlSqlParser.RESIZE:
+ case PlSqlParser.RESOLVE:
+ case PlSqlParser.RESOLVER:
+ case PlSqlParser.RESPECT:
+ case PlSqlParser.RESTART:
+ case PlSqlParser.RESTORE_AS_INTERVALS:
+ case PlSqlParser.RESTORE:
+ case PlSqlParser.RESTRICT_ALL_REF_CONS:
+ case PlSqlParser.RESTRICTED:
+ case PlSqlParser.RESTRICT_REFERENCES:
+ case PlSqlParser.RESTRICT:
+ case PlSqlParser.RESULT_CACHE:
+ case PlSqlParser.RESULT:
+ case PlSqlParser.RESUMABLE:
+ case PlSqlParser.RESUME:
+ case PlSqlParser.RETENTION:
+ case PlSqlParser.RETRY_ON_ROW_CHANGE:
+ case PlSqlParser.RETURNING:
+ case PlSqlParser.RETURN:
+ case PlSqlParser.REUSE:
+ case PlSqlParser.REVERSE:
+ case PlSqlParser.REWRITE_OR_ERROR:
+ case PlSqlParser.REWRITE:
+ case PlSqlParser.RIGHT:
+ case PlSqlParser.ROLE:
+ case PlSqlParser.ROLESET:
+ case PlSqlParser.ROLES:
+ case PlSqlParser.ROLLBACK:
+ case PlSqlParser.ROLLING:
+ case PlSqlParser.ROLLUP:
+ case PlSqlParser.ROWDEPENDENCIES:
+ case PlSqlParser.ROWID_MAPPING_TABLE:
+ case PlSqlParser.ROWID:
+ case PlSqlParser.ROWIDTOCHAR:
+ case PlSqlParser.ROWIDTONCHAR:
+ case PlSqlParser.ROW_LENGTH:
+ case PlSqlParser.ROWNUM:
+ case PlSqlParser.ROW:
+ case PlSqlParser.ROWS:
+ case PlSqlParser.RPAD:
+ case PlSqlParser.RTRIM:
+ case PlSqlParser.RULE:
+ case PlSqlParser.RULES:
+ case PlSqlParser.RUNNING:
+ case PlSqlParser.SALT:
+ case PlSqlParser.SAMPLE:
+ case PlSqlParser.SAVE_AS_INTERVALS:
+ case PlSqlParser.SAVEPOINT:
+ case PlSqlParser.SAVE:
+ case PlSqlParser.SB4:
+ case PlSqlParser.SCALE_ROWS:
+ case PlSqlParser.SCALE:
+ case PlSqlParser.SCAN_INSTANCES:
+ case PlSqlParser.SCAN:
+ case PlSqlParser.SCHEDULER:
+ case PlSqlParser.SCHEMACHECK:
+ case PlSqlParser.SCHEMA:
+ case PlSqlParser.SCN_ASCENDING:
+ case PlSqlParser.SCN:
+ case PlSqlParser.SCOPE:
+ case PlSqlParser.SCRUB:
+ case PlSqlParser.SD_ALL:
+ case PlSqlParser.SD_INHIBIT:
+ case PlSqlParser.SDO_GEOM_MBR:
+ case PlSqlParser.SD_SHOW:
+ case PlSqlParser.SEARCH:
+ case PlSqlParser.SECOND:
+ case PlSqlParser.SECRET:
+ case PlSqlParser.SECUREFILE_DBA:
+ case PlSqlParser.SECUREFILE:
+ case PlSqlParser.SECURITY:
+ case PlSqlParser.SEED:
+ case PlSqlParser.SEG_BLOCK:
+ case PlSqlParser.SEG_FILE:
+ case PlSqlParser.SEGMENT:
+ case PlSqlParser.SELECTIVITY:
+ case PlSqlParser.SELF:
+ case PlSqlParser.SEMIJOIN_DRIVER:
+ case PlSqlParser.SEMIJOIN:
+ case PlSqlParser.SEMI_TO_INNER:
+ case PlSqlParser.SEQUENCED:
+ case PlSqlParser.SEQUENCE:
+ case PlSqlParser.SEQUENTIAL:
+ case PlSqlParser.SERIALIZABLE:
+ case PlSqlParser.SERIALLY_REUSABLE:
+ case PlSqlParser.SERIAL:
+ case PlSqlParser.SERVERERROR:
+ case PlSqlParser.SERVICE_NAME_CONVERT:
+ case PlSqlParser.SERVICES:
+ case PlSqlParser.SESSION_CACHED_CURSORS:
+ case PlSqlParser.SESSION:
+ case PlSqlParser.SESSIONS_PER_USER:
+ case PlSqlParser.SESSIONTIMEZONE:
+ case PlSqlParser.SESSIONTZNAME:
+ case PlSqlParser.SET:
+ case PlSqlParser.SETS:
+ case PlSqlParser.SETTINGS:
+ case PlSqlParser.SET_TO_JOIN:
+ case PlSqlParser.SEVERE:
+ case PlSqlParser.SHARED_POOL:
+ case PlSqlParser.SHARED:
+ case PlSqlParser.SHARING:
+ case PlSqlParser.SHELFLIFE:
+ case PlSqlParser.SHOW:
+ case PlSqlParser.SHRINK:
+ case PlSqlParser.SHUTDOWN:
+ case PlSqlParser.SIBLINGS:
+ case PlSqlParser.SID:
+ case PlSqlParser.SIGNAL_COMPONENT:
+ case PlSqlParser.SIGNAL_FUNCTION:
+ case PlSqlParser.SIGN:
+ case PlSqlParser.SIGNTYPE:
+ case PlSqlParser.SIMPLE_INTEGER:
+ case PlSqlParser.SIMPLE:
+ case PlSqlParser.SINGLE:
+ case PlSqlParser.SINGLETASK:
+ case PlSqlParser.SINH:
+ case PlSqlParser.SIN:
+ case PlSqlParser.SKIP_EXT_OPTIMIZER:
+ case PlSqlParser.SKIP_:
+ case PlSqlParser.SKIP_UNQ_UNUSABLE_IDX:
+ case PlSqlParser.SKIP_UNUSABLE_INDEXES:
+ case PlSqlParser.SMALLFILE:
+ case PlSqlParser.SMALLINT:
+ case PlSqlParser.SNAPSHOT:
+ case PlSqlParser.SOME:
+ case PlSqlParser.SORT:
+ case PlSqlParser.SOUNDEX:
+ case PlSqlParser.SOURCE_FILE_DIRECTORY:
+ case PlSqlParser.SOURCE_FILE_NAME_CONVERT:
+ case PlSqlParser.SOURCE:
+ case PlSqlParser.SPACE_KEYWORD:
+ case PlSqlParser.SPECIFICATION:
+ case PlSqlParser.SPFILE:
+ case PlSqlParser.SPLIT:
+ case PlSqlParser.SPREADSHEET:
+ case PlSqlParser.SQLDATA:
+ case PlSqlParser.SQLERROR:
+ case PlSqlParser.SQLLDR:
+ case PlSqlParser.SQL:
+ case PlSqlParser.SQL_TRACE:
+ case PlSqlParser.SQL_TRANSLATION_PROFILE:
+ case PlSqlParser.SQRT:
+ case PlSqlParser.STALE:
+ case PlSqlParser.STANDALONE:
+ case PlSqlParser.STANDARD_HASH:
+ case PlSqlParser.STANDBY_MAX_DATA_DELAY:
+ case PlSqlParser.STANDBYS:
+ case PlSqlParser.STANDBY:
+ case PlSqlParser.STAR:
+ case PlSqlParser.STAR_TRANSFORMATION:
+ case PlSqlParser.STARTUP:
+ case PlSqlParser.STATEMENT_ID:
+ case PlSqlParser.STATEMENT_QUEUING:
+ case PlSqlParser.STATEMENTS:
+ case PlSqlParser.STATEMENT:
+ case PlSqlParser.STATE:
+ case PlSqlParser.STATIC:
+ case PlSqlParser.STATISTICS:
+ case PlSqlParser.STATS_BINOMIAL_TEST:
+ case PlSqlParser.STATS_CROSSTAB:
+ case PlSqlParser.STATS_F_TEST:
+ case PlSqlParser.STATS_KS_TEST:
+ case PlSqlParser.STATS_MODE:
+ case PlSqlParser.STATS_MW_TEST:
+ case PlSqlParser.STATS_ONE_WAY_ANOVA:
+ case PlSqlParser.STATS_T_TEST_INDEP:
+ case PlSqlParser.STATS_T_TEST_INDEPU:
+ case PlSqlParser.STATS_T_TEST_ONE:
+ case PlSqlParser.STATS_T_TEST_PAIRED:
+ case PlSqlParser.STATS_WSR_TEST:
+ case PlSqlParser.STDDEV_POP:
+ case PlSqlParser.STDDEV_SAMP:
+ case PlSqlParser.STOP:
+ case PlSqlParser.STORAGE:
+ case PlSqlParser.STORE:
+ case PlSqlParser.STREAMS:
+ case PlSqlParser.STREAM:
+ case PlSqlParser.STRICT:
+ case PlSqlParser.STRING:
+ case PlSqlParser.STRIPE_COLUMNS:
+ case PlSqlParser.STRIPE_WIDTH:
+ case PlSqlParser.STRIP:
+ case PlSqlParser.STRUCTURE:
+ case PlSqlParser.SUBMULTISET:
+ case PlSqlParser.SUBPARTITION_REL:
+ case PlSqlParser.SUBPARTITIONS:
+ case PlSqlParser.SUBPARTITION:
+ case PlSqlParser.SUBQUERIES:
+ case PlSqlParser.SUBQUERY_PRUNING:
+ case PlSqlParser.SUBSCRIBE:
+ case PlSqlParser.SUBSET:
+ case PlSqlParser.SUBSTITUTABLE:
+ case PlSqlParser.SUBSTR2:
+ case PlSqlParser.SUBSTR4:
+ case PlSqlParser.SUBSTRB:
+ case PlSqlParser.SUBSTRC:
+ case PlSqlParser.SUBTYPE:
+ case PlSqlParser.SUCCESSFUL:
+ case PlSqlParser.SUCCESS:
+ case PlSqlParser.SUMMARY:
+ case PlSqlParser.SUPPLEMENTAL:
+ case PlSqlParser.SUSPEND:
+ case PlSqlParser.SWAP_JOIN_INPUTS:
+ case PlSqlParser.SWITCHOVER:
+ case PlSqlParser.SWITCH:
+ case PlSqlParser.SYNCHRONOUS:
+ case PlSqlParser.SYNC:
+ case PlSqlParser.SYSASM:
+ case PlSqlParser.SYS_AUDIT:
+ case PlSqlParser.SYSAUX:
+ case PlSqlParser.SYSBACKUP:
+ case PlSqlParser.SYS_CHECKACL:
+ case PlSqlParser.SYS_CHECK_PRIVILEGE:
+ case PlSqlParser.SYS_CONNECT_BY_PATH:
+ case PlSqlParser.SYS_CONTEXT:
+ case PlSqlParser.SYSDATE:
+ case PlSqlParser.SYSDBA:
+ case PlSqlParser.SYS_DBURIGEN:
+ case PlSqlParser.SYSDG:
+ case PlSqlParser.SYS_DL_CURSOR:
+ case PlSqlParser.SYS_DM_RXFORM_CHR:
+ case PlSqlParser.SYS_DM_RXFORM_NUM:
+ case PlSqlParser.SYS_DOM_COMPARE:
+ case PlSqlParser.SYS_DST_PRIM2SEC:
+ case PlSqlParser.SYS_DST_SEC2PRIM:
+ case PlSqlParser.SYS_ET_BFILE_TO_RAW:
+ case PlSqlParser.SYS_ET_BLOB_TO_IMAGE:
+ case PlSqlParser.SYS_ET_IMAGE_TO_BLOB:
+ case PlSqlParser.SYS_ET_RAW_TO_BFILE:
+ case PlSqlParser.SYS_EXTPDTXT:
+ case PlSqlParser.SYS_EXTRACT_UTC:
+ case PlSqlParser.SYS_FBT_INSDEL:
+ case PlSqlParser.SYS_FILTER_ACLS:
+ case PlSqlParser.SYS_FNMATCHES:
+ case PlSqlParser.SYS_FNREPLACE:
+ case PlSqlParser.SYS_GET_ACLIDS:
+ case PlSqlParser.SYS_GET_COL_ACLIDS:
+ case PlSqlParser.SYS_GET_PRIVILEGES:
+ case PlSqlParser.SYS_GETTOKENID:
+ case PlSqlParser.SYS_GETXTIVAL:
+ case PlSqlParser.SYS_GUID:
+ case PlSqlParser.SYSGUID:
+ case PlSqlParser.SYSKM:
+ case PlSqlParser.SYS_MAKE_XMLNODEID:
+ case PlSqlParser.SYS_MAKEXML:
+ case PlSqlParser.SYS_MKXMLATTR:
+ case PlSqlParser.SYS_MKXTI:
+ case PlSqlParser.SYSOBJ:
+ case PlSqlParser.SYS_OP_ADT2BIN:
+ case PlSqlParser.SYS_OP_ADTCONS:
+ case PlSqlParser.SYS_OP_ALSCRVAL:
+ case PlSqlParser.SYS_OP_ATG:
+ case PlSqlParser.SYS_OP_BIN2ADT:
+ case PlSqlParser.SYS_OP_BITVEC:
+ case PlSqlParser.SYS_OP_BL2R:
+ case PlSqlParser.SYS_OP_BLOOM_FILTER_LIST:
+ case PlSqlParser.SYS_OP_BLOOM_FILTER:
+ case PlSqlParser.SYS_OP_C2C:
+ case PlSqlParser.SYS_OP_CAST:
+ case PlSqlParser.SYS_OP_CEG:
+ case PlSqlParser.SYS_OP_CL2C:
+ case PlSqlParser.SYS_OP_COMBINED_HASH:
+ case PlSqlParser.SYS_OP_COMP:
+ case PlSqlParser.SYS_OP_CONVERT:
+ case PlSqlParser.SYS_OP_COUNTCHG:
+ case PlSqlParser.SYS_OP_CSCONV:
+ case PlSqlParser.SYS_OP_CSCONVTEST:
+ case PlSqlParser.SYS_OP_CSR:
+ case PlSqlParser.SYS_OP_CSX_PATCH:
+ case PlSqlParser.SYS_OP_CYCLED_SEQ:
+ case PlSqlParser.SYS_OP_DECOMP:
+ case PlSqlParser.SYS_OP_DESCEND:
+ case PlSqlParser.SYS_OP_DISTINCT:
+ case PlSqlParser.SYS_OP_DRA:
+ case PlSqlParser.SYS_OP_DUMP:
+ case PlSqlParser.SYS_OP_DV_CHECK:
+ case PlSqlParser.SYS_OP_ENFORCE_NOT_NULL:
+ case PlSqlParser.SYSOPER:
+ case PlSqlParser.SYS_OP_EXTRACT:
+ case PlSqlParser.SYS_OP_GROUPING:
+ case PlSqlParser.SYS_OP_GUID:
+ case PlSqlParser.SYS_OP_HASH:
+ case PlSqlParser.SYS_OP_IIX:
+ case PlSqlParser.SYS_OP_ITR:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_CREATE:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_FILTER_LIST:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_FILTER:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_SUCCEEDED:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_USE:
+ case PlSqlParser.SYS_OP_LBID:
+ case PlSqlParser.SYS_OP_LOBLOC2BLOB:
+ case PlSqlParser.SYS_OP_LOBLOC2CLOB:
+ case PlSqlParser.SYS_OP_LOBLOC2ID:
+ case PlSqlParser.SYS_OP_LOBLOC2NCLOB:
+ case PlSqlParser.SYS_OP_LOBLOC2TYP:
+ case PlSqlParser.SYS_OP_LSVI:
+ case PlSqlParser.SYS_OP_LVL:
+ case PlSqlParser.SYS_OP_MAKEOID:
+ case PlSqlParser.SYS_OP_MAP_NONNULL:
+ case PlSqlParser.SYS_OP_MSR:
+ case PlSqlParser.SYS_OP_NICOMBINE:
+ case PlSqlParser.SYS_OP_NIEXTRACT:
+ case PlSqlParser.SYS_OP_NII:
+ case PlSqlParser.SYS_OP_NIX:
+ case PlSqlParser.SYS_OP_NOEXPAND:
+ case PlSqlParser.SYS_OP_NTCIMG:
+ case PlSqlParser.SYS_OP_NUMTORAW:
+ case PlSqlParser.SYS_OP_OIDVALUE:
+ case PlSqlParser.SYS_OP_OPNSIZE:
+ case PlSqlParser.SYS_OP_PAR_1:
+ case PlSqlParser.SYS_OP_PARGID_1:
+ case PlSqlParser.SYS_OP_PARGID:
+ case PlSqlParser.SYS_OP_PAR:
+ case PlSqlParser.SYS_OP_PART_ID:
+ case PlSqlParser.SYS_OP_PIVOT:
+ case PlSqlParser.SYS_OP_R2O:
+ case PlSqlParser.SYS_OP_RAWTONUM:
+ case PlSqlParser.SYS_OP_RDTM:
+ case PlSqlParser.SYS_OP_REF:
+ case PlSqlParser.SYS_OP_RMTD:
+ case PlSqlParser.SYS_OP_ROWIDTOOBJ:
+ case PlSqlParser.SYS_OP_RPB:
+ case PlSqlParser.SYS_OPTLOBPRBSC:
+ case PlSqlParser.SYS_OP_TOSETID:
+ case PlSqlParser.SYS_OP_TPR:
+ case PlSqlParser.SYS_OP_TRTB:
+ case PlSqlParser.SYS_OPTXICMP:
+ case PlSqlParser.SYS_OPTXQCASTASNQ:
+ case PlSqlParser.SYS_OP_UNDESCEND:
+ case PlSqlParser.SYS_OP_VECAND:
+ case PlSqlParser.SYS_OP_VECBIT:
+ case PlSqlParser.SYS_OP_VECOR:
+ case PlSqlParser.SYS_OP_VECXOR:
+ case PlSqlParser.SYS_OP_VERSION:
+ case PlSqlParser.SYS_OP_VREF:
+ case PlSqlParser.SYS_OP_VVD:
+ case PlSqlParser.SYS_OP_XMLCONS_FOR_CSX:
+ case PlSqlParser.SYS_OP_XPTHATG:
+ case PlSqlParser.SYS_OP_XPTHIDX:
+ case PlSqlParser.SYS_OP_XPTHOP:
+ case PlSqlParser.SYS_OP_XTXT2SQLT:
+ case PlSqlParser.SYS_OP_ZONE_ID:
+ case PlSqlParser.SYS_ORDERKEY_DEPTH:
+ case PlSqlParser.SYS_ORDERKEY_MAXCHILD:
+ case PlSqlParser.SYS_ORDERKEY_PARENT:
+ case PlSqlParser.SYS_PARALLEL_TXN:
+ case PlSqlParser.SYS_PATHID_IS_ATTR:
+ case PlSqlParser.SYS_PATHID_IS_NMSPC:
+ case PlSqlParser.SYS_PATHID_LASTNAME:
+ case PlSqlParser.SYS_PATHID_LASTNMSPC:
+ case PlSqlParser.SYS_PATH_REVERSE:
+ case PlSqlParser.SYS_PXQEXTRACT:
+ case PlSqlParser.SYS_RAW_TO_XSID:
+ case PlSqlParser.SYS_RID_ORDER:
+ case PlSqlParser.SYS_ROW_DELTA:
+ case PlSqlParser.SYS_SC_2_XMLT:
+ case PlSqlParser.SYS_SYNRCIREDO:
+ case PlSqlParser.SYSTEM_DEFINED:
+ case PlSqlParser.SYSTEM:
+ case PlSqlParser.SYSTIMESTAMP:
+ case PlSqlParser.SYS_TYPEID:
+ case PlSqlParser.SYS_UMAKEXML:
+ case PlSqlParser.SYS_XMLANALYZE:
+ case PlSqlParser.SYS_XMLCONTAINS:
+ case PlSqlParser.SYS_XMLCONV:
+ case PlSqlParser.SYS_XMLEXNSURI:
+ case PlSqlParser.SYS_XMLGEN:
+ case PlSqlParser.SYS_XMLI_LOC_ISNODE:
+ case PlSqlParser.SYS_XMLI_LOC_ISTEXT:
+ case PlSqlParser.SYS_XMLINSTR:
+ case PlSqlParser.SYS_XMLLOCATOR_GETSVAL:
+ case PlSqlParser.SYS_XMLNODEID_GETCID:
+ case PlSqlParser.SYS_XMLNODEID_GETLOCATOR:
+ case PlSqlParser.SYS_XMLNODEID_GETOKEY:
+ case PlSqlParser.SYS_XMLNODEID_GETPATHID:
+ case PlSqlParser.SYS_XMLNODEID_GETPTRID:
+ case PlSqlParser.SYS_XMLNODEID_GETRID:
+ case PlSqlParser.SYS_XMLNODEID_GETSVAL:
+ case PlSqlParser.SYS_XMLNODEID_GETTID:
+ case PlSqlParser.SYS_XMLNODEID:
+ case PlSqlParser.SYS_XMLT_2_SC:
+ case PlSqlParser.SYS_XMLTRANSLATE:
+ case PlSqlParser.SYS_XMLTYPE2SQL:
+ case PlSqlParser.SYS_XQ_ASQLCNV:
+ case PlSqlParser.SYS_XQ_ATOMCNVCHK:
+ case PlSqlParser.SYS_XQBASEURI:
+ case PlSqlParser.SYS_XQCASTABLEERRH:
+ case PlSqlParser.SYS_XQCODEP2STR:
+ case PlSqlParser.SYS_XQCODEPEQ:
+ case PlSqlParser.SYS_XQCON2SEQ:
+ case PlSqlParser.SYS_XQCONCAT:
+ case PlSqlParser.SYS_XQDELETE:
+ case PlSqlParser.SYS_XQDFLTCOLATION:
+ case PlSqlParser.SYS_XQDOC:
+ case PlSqlParser.SYS_XQDOCURI:
+ case PlSqlParser.SYS_XQDURDIV:
+ case PlSqlParser.SYS_XQED4URI:
+ case PlSqlParser.SYS_XQENDSWITH:
+ case PlSqlParser.SYS_XQERRH:
+ case PlSqlParser.SYS_XQERR:
+ case PlSqlParser.SYS_XQESHTMLURI:
+ case PlSqlParser.SYS_XQEXLOBVAL:
+ case PlSqlParser.SYS_XQEXSTWRP:
+ case PlSqlParser.SYS_XQEXTRACT:
+ case PlSqlParser.SYS_XQEXTRREF:
+ case PlSqlParser.SYS_XQEXVAL:
+ case PlSqlParser.SYS_XQFB2STR:
+ case PlSqlParser.SYS_XQFNBOOL:
+ case PlSqlParser.SYS_XQFNCMP:
+ case PlSqlParser.SYS_XQFNDATIM:
+ case PlSqlParser.SYS_XQFNLNAME:
+ case PlSqlParser.SYS_XQFNNM:
+ case PlSqlParser.SYS_XQFNNSURI:
+ case PlSqlParser.SYS_XQFNPREDTRUTH:
+ case PlSqlParser.SYS_XQFNQNM:
+ case PlSqlParser.SYS_XQFNROOT:
+ case PlSqlParser.SYS_XQFORMATNUM:
+ case PlSqlParser.SYS_XQFTCONTAIN:
+ case PlSqlParser.SYS_XQFUNCR:
+ case PlSqlParser.SYS_XQGETCONTENT:
+ case PlSqlParser.SYS_XQINDXOF:
+ case PlSqlParser.SYS_XQINSERT:
+ case PlSqlParser.SYS_XQINSPFX:
+ case PlSqlParser.SYS_XQIRI2URI:
+ case PlSqlParser.SYS_XQLANG:
+ case PlSqlParser.SYS_XQLLNMFRMQNM:
+ case PlSqlParser.SYS_XQMKNODEREF:
+ case PlSqlParser.SYS_XQNILLED:
+ case PlSqlParser.SYS_XQNODENAME:
+ case PlSqlParser.SYS_XQNORMSPACE:
+ case PlSqlParser.SYS_XQNORMUCODE:
+ case PlSqlParser.SYS_XQ_NRNG:
+ case PlSqlParser.SYS_XQNSP4PFX:
+ case PlSqlParser.SYS_XQNSPFRMQNM:
+ case PlSqlParser.SYS_XQPFXFRMQNM:
+ case PlSqlParser.SYS_XQ_PKSQL2XML:
+ case PlSqlParser.SYS_XQPOLYABS:
+ case PlSqlParser.SYS_XQPOLYADD:
+ case PlSqlParser.SYS_XQPOLYCEL:
+ case PlSqlParser.SYS_XQPOLYCSTBL:
+ case PlSqlParser.SYS_XQPOLYCST:
+ case PlSqlParser.SYS_XQPOLYDIV:
+ case PlSqlParser.SYS_XQPOLYFLR:
+ case PlSqlParser.SYS_XQPOLYMOD:
+ case PlSqlParser.SYS_XQPOLYMUL:
+ case PlSqlParser.SYS_XQPOLYRND:
+ case PlSqlParser.SYS_XQPOLYSQRT:
+ case PlSqlParser.SYS_XQPOLYSUB:
+ case PlSqlParser.SYS_XQPOLYUMUS:
+ case PlSqlParser.SYS_XQPOLYUPLS:
+ case PlSqlParser.SYS_XQPOLYVEQ:
+ case PlSqlParser.SYS_XQPOLYVGE:
+ case PlSqlParser.SYS_XQPOLYVGT:
+ case PlSqlParser.SYS_XQPOLYVLE:
+ case PlSqlParser.SYS_XQPOLYVLT:
+ case PlSqlParser.SYS_XQPOLYVNE:
+ case PlSqlParser.SYS_XQREF2VAL:
+ case PlSqlParser.SYS_XQRENAME:
+ case PlSqlParser.SYS_XQREPLACE:
+ case PlSqlParser.SYS_XQRESVURI:
+ case PlSqlParser.SYS_XQRNDHALF2EVN:
+ case PlSqlParser.SYS_XQRSLVQNM:
+ case PlSqlParser.SYS_XQRYENVPGET:
+ case PlSqlParser.SYS_XQRYVARGET:
+ case PlSqlParser.SYS_XQRYWRP:
+ case PlSqlParser.SYS_XQSEQ2CON4XC:
+ case PlSqlParser.SYS_XQSEQ2CON:
+ case PlSqlParser.SYS_XQSEQDEEPEQ:
+ case PlSqlParser.SYS_XQSEQINSB:
+ case PlSqlParser.SYS_XQSEQRM:
+ case PlSqlParser.SYS_XQSEQRVS:
+ case PlSqlParser.SYS_XQSEQSUB:
+ case PlSqlParser.SYS_XQSEQTYPMATCH:
+ case PlSqlParser.SYS_XQSTARTSWITH:
+ case PlSqlParser.SYS_XQSTATBURI:
+ case PlSqlParser.SYS_XQSTR2CODEP:
+ case PlSqlParser.SYS_XQSTRJOIN:
+ case PlSqlParser.SYS_XQSUBSTRAFT:
+ case PlSqlParser.SYS_XQSUBSTRBEF:
+ case PlSqlParser.SYS_XQTOKENIZE:
+ case PlSqlParser.SYS_XQTREATAS:
+ case PlSqlParser.SYS_XQ_UPKXML2SQL:
+ case PlSqlParser.SYS_XQXFORM:
+ case PlSqlParser.SYS_XSID_TO_RAW:
+ case PlSqlParser.SYS_ZMAP_FILTER:
+ case PlSqlParser.SYS_ZMAP_REFRESH:
+ case PlSqlParser.TABLE_LOOKUP_BY_NL:
+ case PlSqlParser.TABLESPACE_NO:
+ case PlSqlParser.TABLESPACE:
+ case PlSqlParser.TABLES:
+ case PlSqlParser.TABLE_STATS:
+ case PlSqlParser.TABLE:
+ case PlSqlParser.TABNO:
+ case PlSqlParser.TAG:
+ case PlSqlParser.TANH:
+ case PlSqlParser.TAN:
+ case PlSqlParser.TBLORIDXPARTNUM:
+ case PlSqlParser.TEMPFILE:
+ case PlSqlParser.TEMPLATE:
+ case PlSqlParser.TEMPORARY:
+ case PlSqlParser.TEMP_TABLE:
+ case PlSqlParser.TEST:
+ case PlSqlParser.TEXT:
+ case PlSqlParser.THAN:
+ case PlSqlParser.THEN:
+ case PlSqlParser.THE:
+ case PlSqlParser.THREAD:
+ case PlSqlParser.THROUGH:
+ case PlSqlParser.TIER:
+ case PlSqlParser.TIES:
+ case PlSqlParser.TIMEOUT:
+ case PlSqlParser.TIMESTAMP_LTZ_UNCONSTRAINED:
+ case PlSqlParser.TIMESTAMP:
+ case PlSqlParser.TIMESTAMP_TZ_UNCONSTRAINED:
+ case PlSqlParser.TIMESTAMP_UNCONSTRAINED:
+ case PlSqlParser.TIMES:
+ case PlSqlParser.TIME:
+ case PlSqlParser.TIMEZONE_ABBR:
+ case PlSqlParser.TIMEZONE_HOUR:
+ case PlSqlParser.TIMEZONE_MINUTE:
+ case PlSqlParser.TIMEZONE_OFFSET:
+ case PlSqlParser.TIMEZONE_REGION:
+ case PlSqlParser.TIME_ZONE:
+ case PlSqlParser.TIV_GB:
+ case PlSqlParser.TIV_SSF:
+ case PlSqlParser.TO_ACLID:
+ case PlSqlParser.TO_BINARY_DOUBLE:
+ case PlSqlParser.TO_BINARY_FLOAT:
+ case PlSqlParser.TO_BLOB:
+ case PlSqlParser.TO_CLOB:
+ case PlSqlParser.TO_DSINTERVAL:
+ case PlSqlParser.TO_LOB:
+ case PlSqlParser.TO_MULTI_BYTE:
+ case PlSqlParser.TO_NCHAR:
+ case PlSqlParser.TO_NCLOB:
+ case PlSqlParser.TO_NUMBER:
+ case PlSqlParser.TOPLEVEL:
+ case PlSqlParser.TO_SINGLE_BYTE:
+ case PlSqlParser.TO_TIMESTAMP:
+ case PlSqlParser.TO_TIMESTAMP_TZ:
+ case PlSqlParser.TO_TIME:
+ case PlSqlParser.TO_TIME_TZ:
+ case PlSqlParser.TO_YMINTERVAL:
+ case PlSqlParser.TRACE:
+ case PlSqlParser.TRACING:
+ case PlSqlParser.TRACKING:
+ case PlSqlParser.TRAILING:
+ case PlSqlParser.TRANSACTION:
+ case PlSqlParser.TRANSFORM_DISTINCT_AGG:
+ case PlSqlParser.TRANSITIONAL:
+ case PlSqlParser.TRANSITION:
+ case PlSqlParser.TRANSLATE:
+ case PlSqlParser.TRANSLATION:
+ case PlSqlParser.TREAT:
+ case PlSqlParser.TRIGGERS:
+ case PlSqlParser.TRIGGER:
+ case PlSqlParser.TRUE:
+ case PlSqlParser.TRUNCATE:
+ case PlSqlParser.TRUNC:
+ case PlSqlParser.TRUSTED:
+ case PlSqlParser.TRUST:
+ case PlSqlParser.TUNING:
+ case PlSqlParser.TX:
+ case PlSqlParser.TYPES:
+ case PlSqlParser.TYPE:
+ case PlSqlParser.TZ_OFFSET:
+ case PlSqlParser.UB2:
+ case PlSqlParser.UBA:
+ case PlSqlParser.UCS2:
+ case PlSqlParser.UID:
+ case PlSqlParser.UNARCHIVED:
+ case PlSqlParser.UNBOUNDED:
+ case PlSqlParser.UNBOUND:
+ case PlSqlParser.UNCONDITIONAL:
+ case PlSqlParser.UNDER:
+ case PlSqlParser.UNDO:
+ case PlSqlParser.UNDROP:
+ case PlSqlParser.UNIFORM:
+ case PlSqlParser.UNISTR:
+ case PlSqlParser.UNLIMITED:
+ case PlSqlParser.UNLOAD:
+ case PlSqlParser.UNLOCK:
+ case PlSqlParser.UNMATCHED:
+ case PlSqlParser.UNNEST_INNERJ_DISTINCT_VIEW:
+ case PlSqlParser.UNNEST_NOSEMIJ_NODISTINCTVIEW:
+ case PlSqlParser.UNNEST_SEMIJ_VIEW:
+ case PlSqlParser.UNNEST:
+ case PlSqlParser.UNPACKED:
+ case PlSqlParser.UNPIVOT:
+ case PlSqlParser.UNPLUG:
+ case PlSqlParser.UNPROTECTED:
+ case PlSqlParser.UNQUIESCE:
+ case PlSqlParser.UNRECOVERABLE:
+ case PlSqlParser.UNRESTRICTED:
+ case PlSqlParser.UNSUBSCRIBE:
+ case PlSqlParser.UNTIL:
+ case PlSqlParser.UNUSABLE:
+ case PlSqlParser.UNUSED:
+ case PlSqlParser.UPDATABLE:
+ case PlSqlParser.UPDATED:
+ case PlSqlParser.UPDATEXML:
+ case PlSqlParser.UPD_INDEXES:
+ case PlSqlParser.UPD_JOININDEX:
+ case PlSqlParser.UPGRADE:
+ case PlSqlParser.UPPER:
+ case PlSqlParser.UPSERT:
+ case PlSqlParser.UROWID:
+ case PlSqlParser.USABLE:
+ case PlSqlParser.USAGE:
+ case PlSqlParser.USE_ANTI:
+ case PlSqlParser.USE_CONCAT:
+ case PlSqlParser.USE_CUBE:
+ case PlSqlParser.USE_HASH_AGGREGATION:
+ case PlSqlParser.USE_HASH_GBY_FOR_PUSHDOWN:
+ case PlSqlParser.USE_HASH:
+ case PlSqlParser.USE_HIDDEN_PARTITIONS:
+ case PlSqlParser.USE_INVISIBLE_INDEXES:
+ case PlSqlParser.USE_MERGE_CARTESIAN:
+ case PlSqlParser.USE_MERGE:
+ case PlSqlParser.USE_NL:
+ case PlSqlParser.USE_NL_WITH_INDEX:
+ case PlSqlParser.USE_PRIVATE_OUTLINES:
+ case PlSqlParser.USER_DATA:
+ case PlSqlParser.USER_DEFINED:
+ case PlSqlParser.USERENV:
+ case PlSqlParser.USERGROUP:
+ case PlSqlParser.USER_RECYCLEBIN:
+ case PlSqlParser.USERS:
+ case PlSqlParser.USER_TABLESPACES:
+ case PlSqlParser.USER:
+ case PlSqlParser.USE_SEMI:
+ case PlSqlParser.USE_STORED_OUTLINES:
+ case PlSqlParser.USE_TTT_FOR_GSETS:
+ case PlSqlParser.USE:
+ case PlSqlParser.USE_VECTOR_AGGREGATION:
+ case PlSqlParser.USE_WEAK_NAME_RESL:
+ case PlSqlParser.USING_NO_EXPAND:
+ case PlSqlParser.USING:
+ case PlSqlParser.UTF16BE:
+ case PlSqlParser.UTF16LE:
+ case PlSqlParser.UTF32:
+ case PlSqlParser.UTF8:
+ case PlSqlParser.V1:
+ case PlSqlParser.V2:
+ case PlSqlParser.VALIDATE:
+ case PlSqlParser.VALIDATION:
+ case PlSqlParser.VALID_TIME_END:
+ case PlSqlParser.VALUE:
+ case PlSqlParser.VARCHAR2:
+ case PlSqlParser.VARCHAR:
+ case PlSqlParser.VARIABLE:
+ case PlSqlParser.VAR_POP:
+ case PlSqlParser.VARRAYS:
+ case PlSqlParser.VARRAY:
+ case PlSqlParser.VAR_SAMP:
+ case PlSqlParser.VARYING:
+ case PlSqlParser.VECTOR_READ_TRACE:
+ case PlSqlParser.VECTOR_READ:
+ case PlSqlParser.VECTOR_TRANSFORM_DIMS:
+ case PlSqlParser.VECTOR_TRANSFORM_FACT:
+ case PlSqlParser.VECTOR_TRANSFORM:
+ case PlSqlParser.VERIFIER:
+ case PlSqlParser.VERIFY:
+ case PlSqlParser.VERSIONING:
+ case PlSqlParser.VERSIONS_ENDSCN:
+ case PlSqlParser.VERSIONS_ENDTIME:
+ case PlSqlParser.VERSIONS_OPERATION:
+ case PlSqlParser.VERSIONS_STARTSCN:
+ case PlSqlParser.VERSIONS_STARTTIME:
+ case PlSqlParser.VERSIONS:
+ case PlSqlParser.VERSIONS_XID:
+ case PlSqlParser.VERSION:
+ case PlSqlParser.VIOLATION:
+ case PlSqlParser.VIRTUAL:
+ case PlSqlParser.VISIBILITY:
+ case PlSqlParser.VISIBLE:
+ case PlSqlParser.VOLUME:
+ case PlSqlParser.VSIZE:
+ case PlSqlParser.WAIT:
+ case PlSqlParser.WALLET:
+ case PlSqlParser.WARNING:
+ case PlSqlParser.WEEKS:
+ case PlSqlParser.WEEK:
+ case PlSqlParser.WELLFORMED:
+ case PlSqlParser.WHENEVER:
+ case PlSqlParser.WHEN:
+ case PlSqlParser.WHILE:
+ case PlSqlParser.WHITESPACE:
+ case PlSqlParser.WIDTH_BUCKET:
+ case PlSqlParser.WITHIN:
+ case PlSqlParser.WITHOUT:
+ case PlSqlParser.WITH_PLSQL:
+ case PlSqlParser.WORK:
+ case PlSqlParser.WRAPPED:
+ case PlSqlParser.WRAPPER:
+ case PlSqlParser.WRITE:
+ case PlSqlParser.XDB_FASTPATH_INSERT:
+ case PlSqlParser.X_DYN_PRUNE:
+ case PlSqlParser.XID:
+ case PlSqlParser.XML2OBJECT:
+ case PlSqlParser.XMLAGG:
+ case PlSqlParser.XMLATTRIBUTES:
+ case PlSqlParser.XMLCAST:
+ case PlSqlParser.XMLCDATA:
+ case PlSqlParser.XMLCOLATTVAL:
+ case PlSqlParser.XMLCOMMENT:
+ case PlSqlParser.XMLCONCAT:
+ case PlSqlParser.XMLDIFF:
+ case PlSqlParser.XML_DML_RWT_STMT:
+ case PlSqlParser.XMLELEMENT:
+ case PlSqlParser.XMLEXISTS2:
+ case PlSqlParser.XMLEXISTS:
+ case PlSqlParser.XMLFOREST:
+ case PlSqlParser.XMLINDEX_REWRITE_IN_SELECT:
+ case PlSqlParser.XMLINDEX_REWRITE:
+ case PlSqlParser.XMLINDEX_SEL_IDX_TBL:
+ case PlSqlParser.XMLISNODE:
+ case PlSqlParser.XMLISVALID:
+ case PlSqlParser.XMLNAMESPACES:
+ case PlSqlParser.XMLPARSE:
+ case PlSqlParser.XMLPATCH:
+ case PlSqlParser.XMLPI:
+ case PlSqlParser.XMLQUERYVAL:
+ case PlSqlParser.XMLQUERY:
+ case PlSqlParser.XMLROOT:
+ case PlSqlParser.XMLSCHEMA:
+ case PlSqlParser.XMLSERIALIZE:
+ case PlSqlParser.XMLTABLE:
+ case PlSqlParser.XMLTRANSFORMBLOB:
+ case PlSqlParser.XMLTRANSFORM:
+ case PlSqlParser.XMLTYPE:
+ case PlSqlParser.XML:
+ case PlSqlParser.XPATHTABLE:
+ case PlSqlParser.XS_SYS_CONTEXT:
+ case PlSqlParser.XS:
+ case PlSqlParser.YEARS:
+ case PlSqlParser.YEAR:
+ case PlSqlParser.YES:
+ case PlSqlParser.YMINTERVAL_UNCONSTRAINED:
+ case PlSqlParser.ZONEMAP:
+ case PlSqlParser.ZONE:
+ case PlSqlParser.PREDICTION:
+ case PlSqlParser.PREDICTION_BOUNDS:
+ case PlSqlParser.PREDICTION_COST:
+ case PlSqlParser.PREDICTION_DETAILS:
+ case PlSqlParser.PREDICTION_PROBABILITY:
+ case PlSqlParser.PREDICTION_SET:
+ case PlSqlParser.CUME_DIST:
+ case PlSqlParser.DENSE_RANK:
+ case PlSqlParser.LISTAGG:
+ case PlSqlParser.PERCENT_RANK:
+ case PlSqlParser.PERCENTILE_CONT:
+ case PlSqlParser.PERCENTILE_DISC:
+ case PlSqlParser.RANK:
+ case PlSqlParser.AVG:
+ case PlSqlParser.CORR:
+ case PlSqlParser.COVAR_:
+ case PlSqlParser.LAG:
+ case PlSqlParser.LEAD:
+ case PlSqlParser.MAX:
+ case PlSqlParser.MEDIAN:
+ case PlSqlParser.MIN:
+ case PlSqlParser.NTILE:
+ case PlSqlParser.NVL:
+ case PlSqlParser.RATIO_TO_REPORT:
+ case PlSqlParser.REGR_:
+ case PlSqlParser.ROUND:
+ case PlSqlParser.ROW_NUMBER:
+ case PlSqlParser.SUBSTR:
+ case PlSqlParser.TO_CHAR:
+ case PlSqlParser.TRIM:
+ case PlSqlParser.SUM:
+ case PlSqlParser.STDDEV:
+ case PlSqlParser.VAR_:
+ case PlSqlParser.VARIANCE:
+ case PlSqlParser.LEAST:
+ case PlSqlParser.GREATEST:
+ case PlSqlParser.TO_DATE:
+ case PlSqlParser.PERIOD:
+ case PlSqlParser.DELIMITED_ID:
+ case PlSqlParser.REGULAR_ID:
+ this.state = 2932;
+ this.domain_index_clause();
+ break;
+ case PlSqlParser.XDB:
+ case PlSqlParser.XMLINDEX:
+ this.state = 2933;
+ this.xmlindex_clause();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Domain_index_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_domain_index_clause;
+ return this;
+}
+
+Domain_index_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Domain_index_clauseContext.prototype.constructor = Domain_index_clauseContext;
+
+Domain_index_clauseContext.prototype.indextype = function() {
+ return this.getTypedRuleContext(IndextypeContext,0);
+};
+
+Domain_index_clauseContext.prototype.local_domain_index_clause = function() {
+ return this.getTypedRuleContext(Local_domain_index_clauseContext,0);
+};
+
+Domain_index_clauseContext.prototype.parallel_clause = function() {
+ return this.getTypedRuleContext(Parallel_clauseContext,0);
+};
+
+Domain_index_clauseContext.prototype.PARAMETERS = function() {
+ return this.getToken(PlSqlParser.PARAMETERS, 0);
+};
+
+Domain_index_clauseContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Domain_index_clauseContext.prototype.odci_parameters = function() {
+ return this.getTypedRuleContext(Odci_parametersContext,0);
+};
+
+Domain_index_clauseContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Domain_index_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterDomain_index_clause(this);
+ }
+};
+
+Domain_index_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitDomain_index_clause(this);
+ }
+};
+
+Domain_index_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitDomain_index_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Domain_index_clauseContext = Domain_index_clauseContext;
+
+PlSqlParser.prototype.domain_index_clause = function() {
+
+ var localctx = new Domain_index_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 194, PlSqlParser.RULE_domain_index_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2938;
+ this.indextype();
+ this.state = 2940;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.LOCAL) {
+ this.state = 2939;
+ this.local_domain_index_clause();
+ }
+
+ this.state = 2943;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.NOPARALLEL || _la===PlSqlParser.PARALLEL) {
+ this.state = 2942;
+ this.parallel_clause();
+ }
+
+ this.state = 2950;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.PARAMETERS) {
+ this.state = 2945;
+ this.match(PlSqlParser.PARAMETERS);
+ this.state = 2946;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 2947;
+ this.odci_parameters();
+ this.state = 2948;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Local_domain_index_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_local_domain_index_clause;
+ return this;
+}
+
+Local_domain_index_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Local_domain_index_clauseContext.prototype.constructor = Local_domain_index_clauseContext;
+
+Local_domain_index_clauseContext.prototype.LOCAL = function() {
+ return this.getToken(PlSqlParser.LOCAL, 0);
+};
+
+Local_domain_index_clauseContext.prototype.LEFT_PAREN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.LEFT_PAREN);
+ } else {
+ return this.getToken(PlSqlParser.LEFT_PAREN, i);
+ }
+};
+
+
+Local_domain_index_clauseContext.prototype.PARTITION = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.PARTITION);
+ } else {
+ return this.getToken(PlSqlParser.PARTITION, i);
+ }
+};
+
+
+Local_domain_index_clauseContext.prototype.partition_name = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Partition_nameContext);
+ } else {
+ return this.getTypedRuleContext(Partition_nameContext,i);
+ }
+};
+
+Local_domain_index_clauseContext.prototype.RIGHT_PAREN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.RIGHT_PAREN);
+ } else {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, i);
+ }
+};
+
+
+Local_domain_index_clauseContext.prototype.PARAMETERS = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.PARAMETERS);
+ } else {
+ return this.getToken(PlSqlParser.PARAMETERS, i);
+ }
+};
+
+
+Local_domain_index_clauseContext.prototype.odci_parameters = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Odci_parametersContext);
+ } else {
+ return this.getTypedRuleContext(Odci_parametersContext,i);
+ }
+};
+
+Local_domain_index_clauseContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Local_domain_index_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterLocal_domain_index_clause(this);
+ }
+};
+
+Local_domain_index_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitLocal_domain_index_clause(this);
+ }
+};
+
+Local_domain_index_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitLocal_domain_index_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Local_domain_index_clauseContext = Local_domain_index_clauseContext;
+
+PlSqlParser.prototype.local_domain_index_clause = function() {
+
+ var localctx = new Local_domain_index_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 196, PlSqlParser.RULE_local_domain_index_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2952;
+ this.match(PlSqlParser.LOCAL);
+ this.state = 2980;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.LEFT_PAREN) {
+ this.state = 2953;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 2954;
+ this.match(PlSqlParser.PARTITION);
+ this.state = 2955;
+ this.partition_name();
+ this.state = 2961;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.PARAMETERS) {
+ this.state = 2956;
+ this.match(PlSqlParser.PARAMETERS);
+ this.state = 2957;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 2958;
+ this.odci_parameters();
+ this.state = 2959;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ }
+
+ this.state = 2975;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 2963;
+ this.match(PlSqlParser.COMMA);
+ this.state = 2964;
+ this.match(PlSqlParser.PARTITION);
+ this.state = 2965;
+ this.partition_name();
+ this.state = 2971;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.PARAMETERS) {
+ this.state = 2966;
+ this.match(PlSqlParser.PARAMETERS);
+ this.state = 2967;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 2968;
+ this.odci_parameters();
+ this.state = 2969;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ }
+
+ this.state = 2977;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 2978;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Xmlindex_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_xmlindex_clause;
+ return this;
+}
+
+Xmlindex_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Xmlindex_clauseContext.prototype.constructor = Xmlindex_clauseContext;
+
+Xmlindex_clauseContext.prototype.XMLINDEX = function() {
+ return this.getToken(PlSqlParser.XMLINDEX, 0);
+};
+
+Xmlindex_clauseContext.prototype.XDB = function() {
+ return this.getToken(PlSqlParser.XDB, 0);
+};
+
+Xmlindex_clauseContext.prototype.PERIOD = function() {
+ return this.getToken(PlSqlParser.PERIOD, 0);
+};
+
+Xmlindex_clauseContext.prototype.local_xmlindex_clause = function() {
+ return this.getTypedRuleContext(Local_xmlindex_clauseContext,0);
+};
+
+Xmlindex_clauseContext.prototype.parallel_clause = function() {
+ return this.getTypedRuleContext(Parallel_clauseContext,0);
+};
+
+Xmlindex_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterXmlindex_clause(this);
+ }
+};
+
+Xmlindex_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitXmlindex_clause(this);
+ }
+};
+
+Xmlindex_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitXmlindex_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Xmlindex_clauseContext = Xmlindex_clauseContext;
+
+PlSqlParser.prototype.xmlindex_clause = function() {
+
+ var localctx = new Xmlindex_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 198, PlSqlParser.RULE_xmlindex_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2984;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.XDB) {
+ this.state = 2982;
+ this.match(PlSqlParser.XDB);
+ this.state = 2983;
+ this.match(PlSqlParser.PERIOD);
+ }
+
+ this.state = 2986;
+ this.match(PlSqlParser.XMLINDEX);
+ this.state = 2988;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.LOCAL) {
+ this.state = 2987;
+ this.local_xmlindex_clause();
+ }
+
+ this.state = 2991;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.NOPARALLEL || _la===PlSqlParser.PARALLEL) {
+ this.state = 2990;
+ this.parallel_clause();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Local_xmlindex_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_local_xmlindex_clause;
+ return this;
+}
+
+Local_xmlindex_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Local_xmlindex_clauseContext.prototype.constructor = Local_xmlindex_clauseContext;
+
+Local_xmlindex_clauseContext.prototype.LOCAL = function() {
+ return this.getToken(PlSqlParser.LOCAL, 0);
+};
+
+Local_xmlindex_clauseContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Local_xmlindex_clauseContext.prototype.PARTITION = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.PARTITION);
+ } else {
+ return this.getToken(PlSqlParser.PARTITION, i);
+ }
+};
+
+
+Local_xmlindex_clauseContext.prototype.partition_name = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Partition_nameContext);
+ } else {
+ return this.getTypedRuleContext(Partition_nameContext,i);
+ }
+};
+
+Local_xmlindex_clauseContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Local_xmlindex_clauseContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Local_xmlindex_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterLocal_xmlindex_clause(this);
+ }
+};
+
+Local_xmlindex_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitLocal_xmlindex_clause(this);
+ }
+};
+
+Local_xmlindex_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitLocal_xmlindex_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Local_xmlindex_clauseContext = Local_xmlindex_clauseContext;
+
+PlSqlParser.prototype.local_xmlindex_clause = function() {
+
+ var localctx = new Local_xmlindex_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 200, PlSqlParser.RULE_local_xmlindex_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 2993;
+ this.match(PlSqlParser.LOCAL);
+ this.state = 3007;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.LEFT_PAREN) {
+ this.state = 2994;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 2995;
+ this.match(PlSqlParser.PARTITION);
+ this.state = 2996;
+ this.partition_name();
+ this.state = 3002;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 2997;
+ this.match(PlSqlParser.COMMA);
+ this.state = 2998;
+ this.match(PlSqlParser.PARTITION);
+ this.state = 2999;
+ this.partition_name();
+ this.state = 3004;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 3005;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Global_partitioned_indexContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_global_partitioned_index;
+ return this;
+}
+
+Global_partitioned_indexContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Global_partitioned_indexContext.prototype.constructor = Global_partitioned_indexContext;
+
+Global_partitioned_indexContext.prototype.GLOBAL = function() {
+ return this.getToken(PlSqlParser.GLOBAL, 0);
+};
+
+Global_partitioned_indexContext.prototype.PARTITION = function() {
+ return this.getToken(PlSqlParser.PARTITION, 0);
+};
+
+Global_partitioned_indexContext.prototype.BY = function() {
+ return this.getToken(PlSqlParser.BY, 0);
+};
+
+Global_partitioned_indexContext.prototype.RANGE = function() {
+ return this.getToken(PlSqlParser.RANGE, 0);
+};
+
+Global_partitioned_indexContext.prototype.LEFT_PAREN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.LEFT_PAREN);
+ } else {
+ return this.getToken(PlSqlParser.LEFT_PAREN, i);
+ }
+};
+
+
+Global_partitioned_indexContext.prototype.column_name = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Column_nameContext);
+ } else {
+ return this.getTypedRuleContext(Column_nameContext,i);
+ }
+};
+
+Global_partitioned_indexContext.prototype.RIGHT_PAREN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.RIGHT_PAREN);
+ } else {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, i);
+ }
+};
+
+
+Global_partitioned_indexContext.prototype.index_partitioning_clause = function() {
+ return this.getTypedRuleContext(Index_partitioning_clauseContext,0);
+};
+
+Global_partitioned_indexContext.prototype.HASH = function() {
+ return this.getToken(PlSqlParser.HASH, 0);
+};
+
+Global_partitioned_indexContext.prototype.individual_hash_partitions = function() {
+ return this.getTypedRuleContext(Individual_hash_partitionsContext,0);
+};
+
+Global_partitioned_indexContext.prototype.hash_partitions_by_quantity = function() {
+ return this.getTypedRuleContext(Hash_partitions_by_quantityContext,0);
+};
+
+Global_partitioned_indexContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Global_partitioned_indexContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterGlobal_partitioned_index(this);
+ }
+};
+
+Global_partitioned_indexContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitGlobal_partitioned_index(this);
+ }
+};
+
+Global_partitioned_indexContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitGlobal_partitioned_index(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Global_partitioned_indexContext = Global_partitioned_indexContext;
+
+PlSqlParser.prototype.global_partitioned_index = function() {
+
+ var localctx = new Global_partitioned_indexContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 202, PlSqlParser.RULE_global_partitioned_index);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3009;
+ this.match(PlSqlParser.GLOBAL);
+ this.state = 3010;
+ this.match(PlSqlParser.PARTITION);
+ this.state = 3011;
+ this.match(PlSqlParser.BY);
+ this.state = 3042;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.RANGE:
+ this.state = 3012;
+ this.match(PlSqlParser.RANGE);
+ this.state = 3013;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 3014;
+ this.column_name();
+ this.state = 3019;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 3015;
+ this.match(PlSqlParser.COMMA);
+ this.state = 3016;
+ this.column_name();
+ this.state = 3021;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 3022;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ this.state = 3023;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 3024;
+ this.index_partitioning_clause();
+ this.state = 3025;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ break;
+ case PlSqlParser.HASH:
+ this.state = 3027;
+ this.match(PlSqlParser.HASH);
+ this.state = 3028;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 3029;
+ this.column_name();
+ this.state = 3034;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 3030;
+ this.match(PlSqlParser.COMMA);
+ this.state = 3031;
+ this.column_name();
+ this.state = 3036;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 3037;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ this.state = 3040;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.LEFT_PAREN:
+ this.state = 3038;
+ this.individual_hash_partitions();
+ break;
+ case PlSqlParser.PARTITIONS:
+ this.state = 3039;
+ this.hash_partitions_by_quantity();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Index_partitioning_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_index_partitioning_clause;
+ return this;
+}
+
+Index_partitioning_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Index_partitioning_clauseContext.prototype.constructor = Index_partitioning_clauseContext;
+
+Index_partitioning_clauseContext.prototype.PARTITION = function() {
+ return this.getToken(PlSqlParser.PARTITION, 0);
+};
+
+Index_partitioning_clauseContext.prototype.VALUES = function() {
+ return this.getToken(PlSqlParser.VALUES, 0);
+};
+
+Index_partitioning_clauseContext.prototype.LESS = function() {
+ return this.getToken(PlSqlParser.LESS, 0);
+};
+
+Index_partitioning_clauseContext.prototype.THAN = function() {
+ return this.getToken(PlSqlParser.THAN, 0);
+};
+
+Index_partitioning_clauseContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Index_partitioning_clauseContext.prototype.literal = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(LiteralContext);
+ } else {
+ return this.getTypedRuleContext(LiteralContext,i);
+ }
+};
+
+Index_partitioning_clauseContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Index_partitioning_clauseContext.prototype.partition_name = function() {
+ return this.getTypedRuleContext(Partition_nameContext,0);
+};
+
+Index_partitioning_clauseContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Index_partitioning_clauseContext.prototype.segment_attributes_clause = function() {
+ return this.getTypedRuleContext(Segment_attributes_clauseContext,0);
+};
+
+Index_partitioning_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterIndex_partitioning_clause(this);
+ }
+};
+
+Index_partitioning_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitIndex_partitioning_clause(this);
+ }
+};
+
+Index_partitioning_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitIndex_partitioning_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Index_partitioning_clauseContext = Index_partitioning_clauseContext;
+
+PlSqlParser.prototype.index_partitioning_clause = function() {
+
+ var localctx = new Index_partitioning_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 204, PlSqlParser.RULE_index_partitioning_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3044;
+ this.match(PlSqlParser.PARTITION);
+ this.state = 3046;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if((((_la) & ~0x1f) == 0 && ((1 << _la) & ((1 << PlSqlParser.ABORT) | (1 << PlSqlParser.ABS) | (1 << PlSqlParser.ACCESS) | (1 << PlSqlParser.ACCESSED) | (1 << PlSqlParser.ACCOUNT) | (1 << PlSqlParser.ACL) | (1 << PlSqlParser.ACOS) | (1 << PlSqlParser.ACTION) | (1 << PlSqlParser.ACTIONS) | (1 << PlSqlParser.ACTIVATE) | (1 << PlSqlParser.ACTIVE) | (1 << PlSqlParser.ACTIVE_COMPONENT) | (1 << PlSqlParser.ACTIVE_DATA) | (1 << PlSqlParser.ACTIVE_FUNCTION) | (1 << PlSqlParser.ACTIVE_TAG) | (1 << PlSqlParser.ACTIVITY) | (1 << PlSqlParser.ADAPTIVE_PLAN) | (1 << PlSqlParser.ADD) | (1 << PlSqlParser.ADD_COLUMN) | (1 << PlSqlParser.ADD_GROUP) | (1 << PlSqlParser.ADD_MONTHS) | (1 << PlSqlParser.ADJ_DATE) | (1 << PlSqlParser.ADMIN) | (1 << PlSqlParser.ADMINISTER) | (1 << PlSqlParser.ADMINISTRATOR) | (1 << PlSqlParser.ADVANCED) | (1 << PlSqlParser.ADVISE) | (1 << PlSqlParser.ADVISOR) | (1 << PlSqlParser.AFD_DISKSTRING) | (1 << PlSqlParser.AFTER) | (1 << PlSqlParser.AGENT))) !== 0) || ((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (PlSqlParser.AGGREGATE - 32)) | (1 << (PlSqlParser.A_LETTER - 32)) | (1 << (PlSqlParser.ALIAS - 32)) | (1 << (PlSqlParser.ALLOCATE - 32)) | (1 << (PlSqlParser.ALLOW - 32)) | (1 << (PlSqlParser.ALL_ROWS - 32)) | (1 << (PlSqlParser.ALWAYS - 32)) | (1 << (PlSqlParser.ANALYZE - 32)) | (1 << (PlSqlParser.ANCILLARY - 32)) | (1 << (PlSqlParser.AND_EQUAL - 32)) | (1 << (PlSqlParser.ANOMALY - 32)) | (1 << (PlSqlParser.ANSI_REARCH - 32)) | (1 << (PlSqlParser.ANTIJOIN - 32)) | (1 << (PlSqlParser.ANYSCHEMA - 32)) | (1 << (PlSqlParser.APPEND - 32)) | (1 << (PlSqlParser.APPENDCHILDXML - 32)) | (1 << (PlSqlParser.APPEND_VALUES - 32)) | (1 << (PlSqlParser.APPLICATION - 32)) | (1 << (PlSqlParser.APPLY - 32)) | (1 << (PlSqlParser.APPROX_COUNT_DISTINCT - 32)) | (1 << (PlSqlParser.ARCHIVAL - 32)) | (1 << (PlSqlParser.ARCHIVE - 32)) | (1 << (PlSqlParser.ARCHIVED - 32)) | (1 << (PlSqlParser.ARCHIVELOG - 32)) | (1 << (PlSqlParser.ARRAY - 32)) | (1 << (PlSqlParser.ASCII - 32)))) !== 0) || ((((_la - 64)) & ~0x1f) == 0 && ((1 << (_la - 64)) & ((1 << (PlSqlParser.ASCIISTR - 64)) | (1 << (PlSqlParser.ASIN - 64)) | (1 << (PlSqlParser.ASIS - 64)) | (1 << (PlSqlParser.ASSEMBLY - 64)) | (1 << (PlSqlParser.ASSIGN - 64)) | (1 << (PlSqlParser.ASSOCIATE - 64)) | (1 << (PlSqlParser.ASYNC - 64)) | (1 << (PlSqlParser.ASYNCHRONOUS - 64)) | (1 << (PlSqlParser.ATAN2 - 64)) | (1 << (PlSqlParser.ATAN - 64)) | (1 << (PlSqlParser.AT - 64)) | (1 << (PlSqlParser.ATTRIBUTE - 64)) | (1 << (PlSqlParser.ATTRIBUTES - 64)) | (1 << (PlSqlParser.AUTHENTICATED - 64)) | (1 << (PlSqlParser.AUTHENTICATION - 64)) | (1 << (PlSqlParser.AUTHID - 64)) | (1 << (PlSqlParser.AUTHORIZATION - 64)) | (1 << (PlSqlParser.AUTOALLOCATE - 64)) | (1 << (PlSqlParser.AUTO - 64)) | (1 << (PlSqlParser.AUTOEXTEND - 64)) | (1 << (PlSqlParser.AUTO_LOGIN - 64)) | (1 << (PlSqlParser.AUTOMATIC - 64)) | (1 << (PlSqlParser.AUTONOMOUS_TRANSACTION - 64)) | (1 << (PlSqlParser.AUTO_REOPTIMIZE - 64)) | (1 << (PlSqlParser.AVAILABILITY - 64)) | (1 << (PlSqlParser.AVRO - 64)) | (1 << (PlSqlParser.BACKGROUND - 64)) | (1 << (PlSqlParser.BACKUP - 64)) | (1 << (PlSqlParser.BASIC - 64)))) !== 0) || ((((_la - 96)) & ~0x1f) == 0 && ((1 << (_la - 96)) & ((1 << (PlSqlParser.BASICFILE - 96)) | (1 << (PlSqlParser.BATCH - 96)) | (1 << (PlSqlParser.BATCHSIZE - 96)) | (1 << (PlSqlParser.BATCH_TABLE_ACCESS_BY_ROWID - 96)) | (1 << (PlSqlParser.BECOME - 96)) | (1 << (PlSqlParser.BEFORE - 96)) | (1 << (PlSqlParser.BEGIN - 96)) | (1 << (PlSqlParser.BEGINNING - 96)) | (1 << (PlSqlParser.BEGIN_OUTLINE_DATA - 96)) | (1 << (PlSqlParser.BEHALF - 96)) | (1 << (PlSqlParser.BEQUEATH - 96)) | (1 << (PlSqlParser.BFILE - 96)) | (1 << (PlSqlParser.BFILENAME - 96)) | (1 << (PlSqlParser.BIGFILE - 96)) | (1 << (PlSqlParser.BINARY - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE_INFINITY - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE_NAN - 96)) | (1 << (PlSqlParser.BINARY_FLOAT - 96)) | (1 << (PlSqlParser.BINARY_FLOAT_INFINITY - 96)) | (1 << (PlSqlParser.BINARY_FLOAT_NAN - 96)) | (1 << (PlSqlParser.BINARY_INTEGER - 96)) | (1 << (PlSqlParser.BIND_AWARE - 96)) | (1 << (PlSqlParser.BINDING - 96)) | (1 << (PlSqlParser.BIN_TO_NUM - 96)) | (1 << (PlSqlParser.BITAND - 96)) | (1 << (PlSqlParser.BITMAP_AND - 96)) | (1 << (PlSqlParser.BITMAP - 96)) | (1 << (PlSqlParser.BITMAPS - 96)) | (1 << (PlSqlParser.BITMAP_TREE - 96)) | (1 << (PlSqlParser.BITS - 96)))) !== 0) || ((((_la - 128)) & ~0x1f) == 0 && ((1 << (_la - 128)) & ((1 << (PlSqlParser.BLOB - 128)) | (1 << (PlSqlParser.BLOCK - 128)) | (1 << (PlSqlParser.BLOCK_RANGE - 128)) | (1 << (PlSqlParser.BLOCKS - 128)) | (1 << (PlSqlParser.BLOCKSIZE - 128)) | (1 << (PlSqlParser.BODY - 128)) | (1 << (PlSqlParser.BOOLEAN - 128)) | (1 << (PlSqlParser.BOTH - 128)) | (1 << (PlSqlParser.BOUND - 128)) | (1 << (PlSqlParser.BRANCH - 128)) | (1 << (PlSqlParser.BREADTH - 128)) | (1 << (PlSqlParser.BROADCAST - 128)) | (1 << (PlSqlParser.BSON - 128)) | (1 << (PlSqlParser.BUFFER - 128)) | (1 << (PlSqlParser.BUFFER_CACHE - 128)) | (1 << (PlSqlParser.BUFFER_POOL - 128)) | (1 << (PlSqlParser.BUILD - 128)) | (1 << (PlSqlParser.BULK - 128)) | (1 << (PlSqlParser.BYPASS_RECURSIVE_CHECK - 128)) | (1 << (PlSqlParser.BYPASS_UJVC - 128)) | (1 << (PlSqlParser.BYTE - 128)) | (1 << (PlSqlParser.CACHE - 128)) | (1 << (PlSqlParser.CACHE_CB - 128)) | (1 << (PlSqlParser.CACHE_INSTANCES - 128)) | (1 << (PlSqlParser.CACHE_TEMP_TABLE - 128)) | (1 << (PlSqlParser.CACHING - 128)) | (1 << (PlSqlParser.CALCULATED - 128)) | (1 << (PlSqlParser.CALLBACK - 128)) | (1 << (PlSqlParser.CALL - 128)) | (1 << (PlSqlParser.CANCEL - 128)))) !== 0) || ((((_la - 160)) & ~0x1f) == 0 && ((1 << (_la - 160)) & ((1 << (PlSqlParser.CAPACITY - 160)) | (1 << (PlSqlParser.CARDINALITY - 160)) | (1 << (PlSqlParser.CASCADE - 160)) | (1 << (PlSqlParser.CASE - 160)) | (1 << (PlSqlParser.CAST - 160)) | (1 << (PlSqlParser.CATEGORY - 160)) | (1 << (PlSqlParser.CDBDEFAULT - 160)) | (1 << (PlSqlParser.CEIL - 160)) | (1 << (PlSqlParser.CELL_FLASH_CACHE - 160)) | (1 << (PlSqlParser.CERTIFICATE - 160)) | (1 << (PlSqlParser.CFILE - 160)) | (1 << (PlSqlParser.CHAINED - 160)) | (1 << (PlSqlParser.CHANGE - 160)) | (1 << (PlSqlParser.CHANGE_DUPKEY_ERROR_INDEX - 160)) | (1 << (PlSqlParser.CHARACTER - 160)) | (1 << (PlSqlParser.CHAR - 160)) | (1 << (PlSqlParser.CHAR_CS - 160)) | (1 << (PlSqlParser.CHARTOROWID - 160)) | (1 << (PlSqlParser.CHECK_ACL_REWRITE - 160)) | (1 << (PlSqlParser.CHECKPOINT - 160)) | (1 << (PlSqlParser.CHILD - 160)) | (1 << (PlSqlParser.CHOOSE - 160)) | (1 << (PlSqlParser.CHR - 160)) | (1 << (PlSqlParser.CHUNK - 160)) | (1 << (PlSqlParser.CLASS - 160)) | (1 << (PlSqlParser.CLASSIFIER - 160)) | (1 << (PlSqlParser.CLEANUP - 160)) | (1 << (PlSqlParser.CLEAR - 160)) | (1 << (PlSqlParser.C_LETTER - 160)) | (1 << (PlSqlParser.CLIENT - 160)))) !== 0) || ((((_la - 192)) & ~0x1f) == 0 && ((1 << (_la - 192)) & ((1 << (PlSqlParser.CLOB - 192)) | (1 << (PlSqlParser.CLONE - 192)) | (1 << (PlSqlParser.CLOSE_CACHED_OPEN_CURSORS - 192)) | (1 << (PlSqlParser.CLOSE - 192)) | (1 << (PlSqlParser.CLUSTER_BY_ROWID - 192)) | (1 << (PlSqlParser.CLUSTER - 192)) | (1 << (PlSqlParser.CLUSTER_DETAILS - 192)) | (1 << (PlSqlParser.CLUSTER_DISTANCE - 192)) | (1 << (PlSqlParser.CLUSTER_ID - 192)) | (1 << (PlSqlParser.CLUSTERING - 192)) | (1 << (PlSqlParser.CLUSTERING_FACTOR - 192)) | (1 << (PlSqlParser.CLUSTER_PROBABILITY - 192)) | (1 << (PlSqlParser.CLUSTER_SET - 192)) | (1 << (PlSqlParser.COALESCE - 192)) | (1 << (PlSqlParser.COALESCE_SQ - 192)) | (1 << (PlSqlParser.COARSE - 192)) | (1 << (PlSqlParser.CO_AUTH_IND - 192)) | (1 << (PlSqlParser.COLD - 192)) | (1 << (PlSqlParser.COLLECT - 192)) | (1 << (PlSqlParser.COLUMNAR - 192)) | (1 << (PlSqlParser.COLUMN_AUTH_INDICATOR - 192)) | (1 << (PlSqlParser.COLUMN - 192)) | (1 << (PlSqlParser.COLUMNS - 192)) | (1 << (PlSqlParser.COLUMN_STATS - 192)) | (1 << (PlSqlParser.COLUMN_VALUE - 192)) | (1 << (PlSqlParser.COMMENT - 192)) | (1 << (PlSqlParser.COMMIT - 192)) | (1 << (PlSqlParser.COMMITTED - 192)) | (1 << (PlSqlParser.COMMON_DATA - 192)) | (1 << (PlSqlParser.COMPACT - 192)) | (1 << (PlSqlParser.COMPATIBILITY - 192)) | (1 << (PlSqlParser.COMPILE - 192)))) !== 0) || ((((_la - 224)) & ~0x1f) == 0 && ((1 << (_la - 224)) & ((1 << (PlSqlParser.COMPLETE - 224)) | (1 << (PlSqlParser.COMPLIANCE - 224)) | (1 << (PlSqlParser.COMPONENT - 224)) | (1 << (PlSqlParser.COMPONENTS - 224)) | (1 << (PlSqlParser.COMPOSE - 224)) | (1 << (PlSqlParser.COMPOSITE - 224)) | (1 << (PlSqlParser.COMPOSITE_LIMIT - 224)) | (1 << (PlSqlParser.COMPOUND - 224)) | (1 << (PlSqlParser.COMPUTE - 224)) | (1 << (PlSqlParser.CONCAT - 224)) | (1 << (PlSqlParser.CON_DBID_TO_ID - 224)) | (1 << (PlSqlParser.CONDITIONAL - 224)) | (1 << (PlSqlParser.CONDITION - 224)) | (1 << (PlSqlParser.CONFIRM - 224)) | (1 << (PlSqlParser.CONFORMING - 224)) | (1 << (PlSqlParser.CON_GUID_TO_ID - 224)) | (1 << (PlSqlParser.CON_ID - 224)) | (1 << (PlSqlParser.CON_NAME_TO_ID - 224)) | (1 << (PlSqlParser.CONNECT_BY_CB_WHR_ONLY - 224)) | (1 << (PlSqlParser.CONNECT_BY_COMBINE_SW - 224)) | (1 << (PlSqlParser.CONNECT_BY_COST_BASED - 224)) | (1 << (PlSqlParser.CONNECT_BY_ELIM_DUPS - 224)) | (1 << (PlSqlParser.CONNECT_BY_FILTERING - 224)) | (1 << (PlSqlParser.CONNECT_BY_ISCYCLE - 224)) | (1 << (PlSqlParser.CONNECT_BY_ISLEAF - 224)) | (1 << (PlSqlParser.CONNECT_BY_ROOT - 224)) | (1 << (PlSqlParser.CONNECT_TIME - 224)) | (1 << (PlSqlParser.CONSIDER - 224)) | (1 << (PlSqlParser.CONSISTENT - 224)) | (1 << (PlSqlParser.CONSTANT - 224)))) !== 0) || ((((_la - 256)) & ~0x1f) == 0 && ((1 << (_la - 256)) & ((1 << (PlSqlParser.CONST - 256)) | (1 << (PlSqlParser.CONSTRAINT - 256)) | (1 << (PlSqlParser.CONSTRAINTS - 256)) | (1 << (PlSqlParser.CONSTRUCTOR - 256)) | (1 << (PlSqlParser.CONTAINER - 256)) | (1 << (PlSqlParser.CONTAINER_DATA - 256)) | (1 << (PlSqlParser.CONTAINERS - 256)) | (1 << (PlSqlParser.CONTENT - 256)) | (1 << (PlSqlParser.CONTENTS - 256)) | (1 << (PlSqlParser.CONTEXT - 256)) | (1 << (PlSqlParser.CONTINUE - 256)) | (1 << (PlSqlParser.CONTROLFILE - 256)) | (1 << (PlSqlParser.CON_UID_TO_ID - 256)) | (1 << (PlSqlParser.CONVERT - 256)) | (1 << (PlSqlParser.COOKIE - 256)) | (1 << (PlSqlParser.COPY - 256)) | (1 << (PlSqlParser.CORR_K - 256)) | (1 << (PlSqlParser.CORR_S - 256)) | (1 << (PlSqlParser.CORRUPTION - 256)) | (1 << (PlSqlParser.CORRUPT_XID_ALL - 256)) | (1 << (PlSqlParser.CORRUPT_XID - 256)) | (1 << (PlSqlParser.COS - 256)) | (1 << (PlSqlParser.COSH - 256)) | (1 << (PlSqlParser.COST - 256)) | (1 << (PlSqlParser.COST_XML_QUERY_REWRITE - 256)) | (1 << (PlSqlParser.COUNT - 256)) | (1 << (PlSqlParser.COVAR_POP - 256)) | (1 << (PlSqlParser.COVAR_SAMP - 256)) | (1 << (PlSqlParser.CPU_COSTING - 256)) | (1 << (PlSqlParser.CPU_PER_CALL - 256)) | (1 << (PlSqlParser.CPU_PER_SESSION - 256)) | (1 << (PlSqlParser.CRASH - 256)))) !== 0) || ((((_la - 289)) & ~0x1f) == 0 && ((1 << (_la - 289)) & ((1 << (PlSqlParser.CREATE_FILE_DEST - 289)) | (1 << (PlSqlParser.CREATE_STORED_OUTLINES - 289)) | (1 << (PlSqlParser.CREATION - 289)) | (1 << (PlSqlParser.CREDENTIAL - 289)) | (1 << (PlSqlParser.CRITICAL - 289)) | (1 << (PlSqlParser.CROSS - 289)) | (1 << (PlSqlParser.CROSSEDITION - 289)) | (1 << (PlSqlParser.CSCONVERT - 289)) | (1 << (PlSqlParser.CUBE_AJ - 289)) | (1 << (PlSqlParser.CUBE - 289)) | (1 << (PlSqlParser.CUBE_GB - 289)) | (1 << (PlSqlParser.CUBE_SJ - 289)) | (1 << (PlSqlParser.CUME_DISTM - 289)) | (1 << (PlSqlParser.CURRENT - 289)) | (1 << (PlSqlParser.CURRENT_DATE - 289)) | (1 << (PlSqlParser.CURRENT_SCHEMA - 289)) | (1 << (PlSqlParser.CURRENT_TIME - 289)) | (1 << (PlSqlParser.CURRENT_TIMESTAMP - 289)) | (1 << (PlSqlParser.CURRENT_USER - 289)) | (1 << (PlSqlParser.CURRENTV - 289)) | (1 << (PlSqlParser.CURSOR - 289)) | (1 << (PlSqlParser.CURSOR_SHARING_EXACT - 289)) | (1 << (PlSqlParser.CURSOR_SPECIFIC_SEGMENT - 289)) | (1 << (PlSqlParser.CUSTOMDATUM - 289)) | (1 << (PlSqlParser.CV - 289)) | (1 << (PlSqlParser.CYCLE - 289)) | (1 << (PlSqlParser.DANGLING - 289)) | (1 << (PlSqlParser.DATABASE - 289)) | (1 << (PlSqlParser.DATA - 289)) | (1 << (PlSqlParser.DATAFILE - 289)) | (1 << (PlSqlParser.DATAFILES - 289)))) !== 0) || ((((_la - 321)) & ~0x1f) == 0 && ((1 << (_la - 321)) & ((1 << (PlSqlParser.DATAMOVEMENT - 321)) | (1 << (PlSqlParser.DATAOBJNO - 321)) | (1 << (PlSqlParser.DATAOBJ_TO_MAT_PARTITION - 321)) | (1 << (PlSqlParser.DATAOBJ_TO_PARTITION - 321)) | (1 << (PlSqlParser.DATAPUMP - 321)) | (1 << (PlSqlParser.DATA_SECURITY_REWRITE_LIMIT - 321)) | (1 << (PlSqlParser.DATE_MODE - 321)) | (1 << (PlSqlParser.DAY - 321)) | (1 << (PlSqlParser.DAYS - 321)) | (1 << (PlSqlParser.DBA - 321)) | (1 << (PlSqlParser.DBA_RECYCLEBIN - 321)) | (1 << (PlSqlParser.DBMS_STATS - 321)) | (1 << (PlSqlParser.DB_ROLE_CHANGE - 321)) | (1 << (PlSqlParser.DBTIMEZONE - 321)) | (1 << (PlSqlParser.DB_UNIQUE_NAME - 321)) | (1 << (PlSqlParser.DB_VERSION - 321)) | (1 << (PlSqlParser.DDL - 321)) | (1 << (PlSqlParser.DEALLOCATE - 321)) | (1 << (PlSqlParser.DEBUG - 321)) | (1 << (PlSqlParser.DEBUGGER - 321)) | (1 << (PlSqlParser.DEC - 321)) | (1 << (PlSqlParser.DECIMAL - 321)) | (1 << (PlSqlParser.DECLARE - 321)) | (1 << (PlSqlParser.DECOMPOSE - 321)) | (1 << (PlSqlParser.DECORRELATE - 321)) | (1 << (PlSqlParser.DECR - 321)) | (1 << (PlSqlParser.DECREMENT - 321)) | (1 << (PlSqlParser.DECRYPT - 321)) | (1 << (PlSqlParser.DEDUPLICATE - 321)) | (1 << (PlSqlParser.DEFAULTS - 321)))) !== 0) || ((((_la - 353)) & ~0x1f) == 0 && ((1 << (_la - 353)) & ((1 << (PlSqlParser.DEFERRABLE - 353)) | (1 << (PlSqlParser.DEFERRED - 353)) | (1 << (PlSqlParser.DEFINED - 353)) | (1 << (PlSqlParser.DEFINE - 353)) | (1 << (PlSqlParser.DEFINER - 353)) | (1 << (PlSqlParser.DEGREE - 353)) | (1 << (PlSqlParser.DELAY - 353)) | (1 << (PlSqlParser.DELEGATE - 353)) | (1 << (PlSqlParser.DELETE_ALL - 353)) | (1 << (PlSqlParser.DELETE - 353)) | (1 << (PlSqlParser.DELETEXML - 353)) | (1 << (PlSqlParser.DEMAND - 353)) | (1 << (PlSqlParser.DENSE_RANKM - 353)) | (1 << (PlSqlParser.DEPENDENT - 353)) | (1 << (PlSqlParser.DEPTH - 353)) | (1 << (PlSqlParser.DEQUEUE - 353)) | (1 << (PlSqlParser.DEREF - 353)) | (1 << (PlSqlParser.DEREF_NO_REWRITE - 353)) | (1 << (PlSqlParser.DESTROY - 353)) | (1 << (PlSqlParser.DETACHED - 353)) | (1 << (PlSqlParser.DETERMINES - 353)) | (1 << (PlSqlParser.DETERMINISTIC - 353)) | (1 << (PlSqlParser.DICTIONARY - 353)) | (1 << (PlSqlParser.DIMENSION - 353)) | (1 << (PlSqlParser.DIMENSIONS - 353)) | (1 << (PlSqlParser.DIRECT_LOAD - 353)) | (1 << (PlSqlParser.DIRECTORY - 353)) | (1 << (PlSqlParser.DIRECT_PATH - 353)) | (1 << (PlSqlParser.DISABLE_ALL - 353)) | (1 << (PlSqlParser.DISABLE - 353)) | (1 << (PlSqlParser.DISABLE_PARALLEL_DML - 353)))) !== 0) || ((((_la - 385)) & ~0x1f) == 0 && ((1 << (_la - 385)) & ((1 << (PlSqlParser.DISABLE_PRESET - 385)) | (1 << (PlSqlParser.DISABLE_RPKE - 385)) | (1 << (PlSqlParser.DISALLOW - 385)) | (1 << (PlSqlParser.DISASSOCIATE - 385)) | (1 << (PlSqlParser.DISCARD - 385)) | (1 << (PlSqlParser.DISCONNECT - 385)) | (1 << (PlSqlParser.DISK - 385)) | (1 << (PlSqlParser.DISKGROUP - 385)) | (1 << (PlSqlParser.DISKS - 385)) | (1 << (PlSqlParser.DISMOUNT - 385)) | (1 << (PlSqlParser.DISTINGUISHED - 385)) | (1 << (PlSqlParser.DISTRIBUTED - 385)) | (1 << (PlSqlParser.DISTRIBUTE - 385)) | (1 << (PlSqlParser.DML - 385)) | (1 << (PlSqlParser.DML_UPDATE - 385)) | (1 << (PlSqlParser.DOCFIDELITY - 385)) | (1 << (PlSqlParser.DOCUMENT - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_FILTER - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_NO_SORT - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_SORT - 385)) | (1 << (PlSqlParser.DOUBLE - 385)) | (1 << (PlSqlParser.DOWNGRADE - 385)) | (1 << (PlSqlParser.DRIVING_SITE - 385)) | (1 << (PlSqlParser.DROP_COLUMN - 385)) | (1 << (PlSqlParser.DROP_GROUP - 385)) | (1 << (PlSqlParser.DSINTERVAL_UNCONSTRAINED - 385)) | (1 << (PlSqlParser.DST_UPGRADE_INSERT_CONV - 385)) | (1 << (PlSqlParser.DUMP - 385)))) !== 0) || ((((_la - 417)) & ~0x1f) == 0 && ((1 << (_la - 417)) & ((1 << (PlSqlParser.DUPLICATE - 417)) | (1 << (PlSqlParser.DV - 417)) | (1 << (PlSqlParser.DYNAMIC - 417)) | (1 << (PlSqlParser.DYNAMIC_SAMPLING - 417)) | (1 << (PlSqlParser.DYNAMIC_SAMPLING_EST_CDN - 417)) | (1 << (PlSqlParser.EACH - 417)) | (1 << (PlSqlParser.EDITIONABLE - 417)) | (1 << (PlSqlParser.EDITION - 417)) | (1 << (PlSqlParser.EDITIONING - 417)) | (1 << (PlSqlParser.EDITIONS - 417)) | (1 << (PlSqlParser.ELEMENT - 417)) | (1 << (PlSqlParser.ELIM_GROUPBY - 417)) | (1 << (PlSqlParser.ELIMINATE_JOIN - 417)) | (1 << (PlSqlParser.ELIMINATE_OBY - 417)) | (1 << (PlSqlParser.ELIMINATE_OUTER_JOIN - 417)) | (1 << (PlSqlParser.EM - 417)) | (1 << (PlSqlParser.EMPTY_BLOB - 417)) | (1 << (PlSqlParser.EMPTY_CLOB - 417)) | (1 << (PlSqlParser.EMPTY - 417)) | (1 << (PlSqlParser.ENABLE_ALL - 417)) | (1 << (PlSqlParser.ENABLE - 417)) | (1 << (PlSqlParser.ENABLE_PARALLEL_DML - 417)) | (1 << (PlSqlParser.ENABLE_PRESET - 417)) | (1 << (PlSqlParser.ENCODING - 417)) | (1 << (PlSqlParser.ENCRYPT - 417)) | (1 << (PlSqlParser.ENCRYPTION - 417)) | (1 << (PlSqlParser.END_OUTLINE_DATA - 417)) | (1 << (PlSqlParser.ENFORCED - 417)) | (1 << (PlSqlParser.ENFORCE - 417)))) !== 0) || ((((_la - 449)) & ~0x1f) == 0 && ((1 << (_la - 449)) & ((1 << (PlSqlParser.ENQUEUE - 449)) | (1 << (PlSqlParser.ENTERPRISE - 449)) | (1 << (PlSqlParser.ENTITYESCAPING - 449)) | (1 << (PlSqlParser.ENTRY - 449)) | (1 << (PlSqlParser.EQUIPART - 449)) | (1 << (PlSqlParser.ERR - 449)) | (1 << (PlSqlParser.ERROR_ARGUMENT - 449)) | (1 << (PlSqlParser.ERROR - 449)) | (1 << (PlSqlParser.ERROR_ON_OVERLAP_TIME - 449)) | (1 << (PlSqlParser.ERRORS - 449)) | (1 << (PlSqlParser.ESCAPE - 449)) | (1 << (PlSqlParser.ESTIMATE - 449)) | (1 << (PlSqlParser.EVAL - 449)) | (1 << (PlSqlParser.EVALNAME - 449)) | (1 << (PlSqlParser.EVALUATE - 449)) | (1 << (PlSqlParser.EVALUATION - 449)) | (1 << (PlSqlParser.EVENTS - 449)) | (1 << (PlSqlParser.EVERY - 449)) | (1 << (PlSqlParser.EXCEPT - 449)) | (1 << (PlSqlParser.EXCEPTION - 449)) | (1 << (PlSqlParser.EXCEPTION_INIT - 449)) | (1 << (PlSqlParser.EXCEPTIONS - 449)) | (1 << (PlSqlParser.EXCHANGE - 449)) | (1 << (PlSqlParser.EXCLUDE - 449)) | (1 << (PlSqlParser.EXCLUDING - 449)) | (1 << (PlSqlParser.EXECUTE - 449)) | (1 << (PlSqlParser.EXEMPT - 449)) | (1 << (PlSqlParser.EXISTING - 449)) | (1 << (PlSqlParser.EXISTS - 449)) | (1 << (PlSqlParser.EXISTSNODE - 449)) | (1 << (PlSqlParser.EXIT - 449)))) !== 0) || ((((_la - 481)) & ~0x1f) == 0 && ((1 << (_la - 481)) & ((1 << (PlSqlParser.EXPAND_GSET_TO_UNION - 481)) | (1 << (PlSqlParser.EXPAND_TABLE - 481)) | (1 << (PlSqlParser.EXP - 481)) | (1 << (PlSqlParser.EXPIRE - 481)) | (1 << (PlSqlParser.EXPLAIN - 481)) | (1 << (PlSqlParser.EXPLOSION - 481)) | (1 << (PlSqlParser.EXPORT - 481)) | (1 << (PlSqlParser.EXPR_CORR_CHECK - 481)) | (1 << (PlSqlParser.EXPRESS - 481)) | (1 << (PlSqlParser.EXTENDS - 481)) | (1 << (PlSqlParser.EXTENT - 481)) | (1 << (PlSqlParser.EXTENTS - 481)) | (1 << (PlSqlParser.EXTERNAL - 481)) | (1 << (PlSqlParser.EXTERNALLY - 481)) | (1 << (PlSqlParser.EXTRACTCLOBXML - 481)) | (1 << (PlSqlParser.EXTRACT - 481)) | (1 << (PlSqlParser.EXTRACTVALUE - 481)) | (1 << (PlSqlParser.EXTRA - 481)) | (1 << (PlSqlParser.FACILITY - 481)) | (1 << (PlSqlParser.FACT - 481)) | (1 << (PlSqlParser.FACTOR - 481)) | (1 << (PlSqlParser.FACTORIZE_JOIN - 481)) | (1 << (PlSqlParser.FAILED - 481)) | (1 << (PlSqlParser.FAILED_LOGIN_ATTEMPTS - 481)) | (1 << (PlSqlParser.FAILGROUP - 481)) | (1 << (PlSqlParser.FAILOVER - 481)) | (1 << (PlSqlParser.FAILURE - 481)) | (1 << (PlSqlParser.FALSE - 481)) | (1 << (PlSqlParser.FAMILY - 481)) | (1 << (PlSqlParser.FAR - 481)) | (1 << (PlSqlParser.FAST - 481)) | (1 << (PlSqlParser.FASTSTART - 481)))) !== 0) || ((((_la - 513)) & ~0x1f) == 0 && ((1 << (_la - 513)) & ((1 << (PlSqlParser.FBTSCAN - 513)) | (1 << (PlSqlParser.FEATURE_DETAILS - 513)) | (1 << (PlSqlParser.FEATURE_ID - 513)) | (1 << (PlSqlParser.FEATURE_SET - 513)) | (1 << (PlSqlParser.FEATURE_VALUE - 513)) | (1 << (PlSqlParser.FETCH - 513)) | (1 << (PlSqlParser.FILE - 513)) | (1 << (PlSqlParser.FILE_NAME_CONVERT - 513)) | (1 << (PlSqlParser.FILESYSTEM_LIKE_LOGGING - 513)) | (1 << (PlSqlParser.FILTER - 513)) | (1 << (PlSqlParser.FINAL - 513)) | (1 << (PlSqlParser.FINE - 513)) | (1 << (PlSqlParser.FINISH - 513)) | (1 << (PlSqlParser.FIRST - 513)) | (1 << (PlSqlParser.FIRSTM - 513)) | (1 << (PlSqlParser.FIRST_ROWS - 513)) | (1 << (PlSqlParser.FIRST_VALUE - 513)) | (1 << (PlSqlParser.FIXED_VIEW_DATA - 513)) | (1 << (PlSqlParser.FLAGGER - 513)) | (1 << (PlSqlParser.FLASHBACK - 513)) | (1 << (PlSqlParser.FLASH_CACHE - 513)) | (1 << (PlSqlParser.FLOAT - 513)) | (1 << (PlSqlParser.FLOB - 513)) | (1 << (PlSqlParser.FLOOR - 513)) | (1 << (PlSqlParser.FLUSH - 513)) | (1 << (PlSqlParser.FOLDER - 513)) | (1 << (PlSqlParser.FOLLOWING - 513)) | (1 << (PlSqlParser.FOLLOWS - 513)) | (1 << (PlSqlParser.FORALL - 513)) | (1 << (PlSqlParser.FORCE - 513)) | (1 << (PlSqlParser.FORCE_XML_QUERY_REWRITE - 513)) | (1 << (PlSqlParser.FOREIGN - 513)))) !== 0) || ((((_la - 545)) & ~0x1f) == 0 && ((1 << (_la - 545)) & ((1 << (PlSqlParser.FOREVER - 545)) | (1 << (PlSqlParser.FORMAT - 545)) | (1 << (PlSqlParser.FORWARD - 545)) | (1 << (PlSqlParser.FRAGMENT_NUMBER - 545)) | (1 << (PlSqlParser.FREELIST - 545)) | (1 << (PlSqlParser.FREELISTS - 545)) | (1 << (PlSqlParser.FREEPOOLS - 545)) | (1 << (PlSqlParser.FRESH - 545)) | (1 << (PlSqlParser.FROM_TZ - 545)) | (1 << (PlSqlParser.FULL - 545)) | (1 << (PlSqlParser.FULL_OUTER_JOIN_TO_OUTER - 545)) | (1 << (PlSqlParser.FUNCTION - 545)) | (1 << (PlSqlParser.FUNCTIONS - 545)) | (1 << (PlSqlParser.GATHER_OPTIMIZER_STATISTICS - 545)) | (1 << (PlSqlParser.GATHER_PLAN_STATISTICS - 545)) | (1 << (PlSqlParser.GBY_CONC_ROLLUP - 545)) | (1 << (PlSqlParser.GBY_PUSHDOWN - 545)) | (1 << (PlSqlParser.GENERATED - 545)) | (1 << (PlSqlParser.GET - 545)) | (1 << (PlSqlParser.GLOBAL - 545)) | (1 << (PlSqlParser.GLOBALLY - 545)) | (1 << (PlSqlParser.GLOBAL_NAME - 545)) | (1 << (PlSqlParser.GLOBAL_TOPIC_ENABLED - 545)) | (1 << (PlSqlParser.GROUP_BY - 545)) | (1 << (PlSqlParser.GROUP_ID - 545)) | (1 << (PlSqlParser.GROUPING - 545)) | (1 << (PlSqlParser.GROUPING_ID - 545)))) !== 0) || ((((_la - 577)) & ~0x1f) == 0 && ((1 << (_la - 577)) & ((1 << (PlSqlParser.GROUPS - 577)) | (1 << (PlSqlParser.GUARANTEED - 577)) | (1 << (PlSqlParser.GUARANTEE - 577)) | (1 << (PlSqlParser.GUARD - 577)) | (1 << (PlSqlParser.HASH_AJ - 577)) | (1 << (PlSqlParser.HASH - 577)) | (1 << (PlSqlParser.HASHKEYS - 577)) | (1 << (PlSqlParser.HASH_SJ - 577)) | (1 << (PlSqlParser.HEADER - 577)) | (1 << (PlSqlParser.HEAP - 577)) | (1 << (PlSqlParser.HELP - 577)) | (1 << (PlSqlParser.HEXTORAW - 577)) | (1 << (PlSqlParser.HEXTOREF - 577)) | (1 << (PlSqlParser.HIDDEN_KEYWORD - 577)) | (1 << (PlSqlParser.HIDE - 577)) | (1 << (PlSqlParser.HIERARCHY - 577)) | (1 << (PlSqlParser.HIGH - 577)) | (1 << (PlSqlParser.HINTSET_BEGIN - 577)) | (1 << (PlSqlParser.HINTSET_END - 577)) | (1 << (PlSqlParser.HOT - 577)) | (1 << (PlSqlParser.HOUR - 577)) | (1 << (PlSqlParser.HWM_BROKERED - 577)) | (1 << (PlSqlParser.HYBRID - 577)) | (1 << (PlSqlParser.IDENTIFIER - 577)) | (1 << (PlSqlParser.IDENTITY - 577)) | (1 << (PlSqlParser.IDGENERATORS - 577)) | (1 << (PlSqlParser.ID - 577)) | (1 << (PlSqlParser.IDLE_TIME - 577)) | (1 << (PlSqlParser.IF - 577)) | (1 << (PlSqlParser.IGNORE - 577)))) !== 0) || ((((_la - 609)) & ~0x1f) == 0 && ((1 << (_la - 609)) & ((1 << (PlSqlParser.IGNORE_OPTIM_EMBEDDED_HINTS - 609)) | (1 << (PlSqlParser.IGNORE_ROW_ON_DUPKEY_INDEX - 609)) | (1 << (PlSqlParser.IGNORE_WHERE_CLAUSE - 609)) | (1 << (PlSqlParser.ILM - 609)) | (1 << (PlSqlParser.IMMEDIATE - 609)) | (1 << (PlSqlParser.IMPACT - 609)) | (1 << (PlSqlParser.IMPORT - 609)) | (1 << (PlSqlParser.INACTIVE - 609)) | (1 << (PlSqlParser.INCLUDE - 609)) | (1 << (PlSqlParser.INCLUDE_VERSION - 609)) | (1 << (PlSqlParser.INCLUDING - 609)) | (1 << (PlSqlParser.INCREMENTAL - 609)) | (1 << (PlSqlParser.INCREMENT - 609)) | (1 << (PlSqlParser.INCR - 609)) | (1 << (PlSqlParser.INDENT - 609)) | (1 << (PlSqlParser.INDEX_ASC - 609)) | (1 << (PlSqlParser.INDEX_COMBINE - 609)) | (1 << (PlSqlParser.INDEX_DESC - 609)) | (1 << (PlSqlParser.INDEXED - 609)) | (1 << (PlSqlParser.INDEXES - 609)) | (1 << (PlSqlParser.INDEX_FFS - 609)) | (1 << (PlSqlParser.INDEX_FILTER - 609)) | (1 << (PlSqlParser.INDEXING - 609)) | (1 << (PlSqlParser.INDEX_JOIN - 609)) | (1 << (PlSqlParser.INDEX_ROWS - 609)) | (1 << (PlSqlParser.INDEX_RRS - 609)) | (1 << (PlSqlParser.INDEX_RS_ASC - 609)) | (1 << (PlSqlParser.INDEX_RS_DESC - 609)) | (1 << (PlSqlParser.INDEX_RS - 609)) | (1 << (PlSqlParser.INDEX_SCAN - 609)) | (1 << (PlSqlParser.INDEX_SKIP_SCAN - 609)))) !== 0) || ((((_la - 641)) & ~0x1f) == 0 && ((1 << (_la - 641)) & ((1 << (PlSqlParser.INDEX_SS_ASC - 641)) | (1 << (PlSqlParser.INDEX_SS_DESC - 641)) | (1 << (PlSqlParser.INDEX_SS - 641)) | (1 << (PlSqlParser.INDEX_STATS - 641)) | (1 << (PlSqlParser.INDEXTYPE - 641)) | (1 << (PlSqlParser.INDEXTYPES - 641)) | (1 << (PlSqlParser.INDICATOR - 641)) | (1 << (PlSqlParser.INDICES - 641)) | (1 << (PlSqlParser.INFINITE - 641)) | (1 << (PlSqlParser.INFORMATIONAL - 641)) | (1 << (PlSqlParser.INHERIT - 641)) | (1 << (PlSqlParser.INITCAP - 641)) | (1 << (PlSqlParser.INITIAL - 641)) | (1 << (PlSqlParser.INITIALIZED - 641)) | (1 << (PlSqlParser.INITIALLY - 641)) | (1 << (PlSqlParser.INITRANS - 641)) | (1 << (PlSqlParser.INLINE - 641)) | (1 << (PlSqlParser.INLINE_XMLTYPE_NT - 641)) | (1 << (PlSqlParser.INMEMORY - 641)) | (1 << (PlSqlParser.IN_MEMORY_METADATA - 641)) | (1 << (PlSqlParser.INMEMORY_PRUNING - 641)) | (1 << (PlSqlParser.INNER - 641)) | (1 << (PlSqlParser.INOUT - 641)) | (1 << (PlSqlParser.INPLACE - 641)) | (1 << (PlSqlParser.INSERTCHILDXMLAFTER - 641)) | (1 << (PlSqlParser.INSERTCHILDXMLBEFORE - 641)) | (1 << (PlSqlParser.INSERTCHILDXML - 641)) | (1 << (PlSqlParser.INSERTXMLAFTER - 641)) | (1 << (PlSqlParser.INSERTXMLBEFORE - 641)) | (1 << (PlSqlParser.INSTANCE - 641)))) !== 0) || ((((_la - 673)) & ~0x1f) == 0 && ((1 << (_la - 673)) & ((1 << (PlSqlParser.INSTANCES - 673)) | (1 << (PlSqlParser.INSTANTIABLE - 673)) | (1 << (PlSqlParser.INSTANTLY - 673)) | (1 << (PlSqlParser.INSTEAD - 673)) | (1 << (PlSqlParser.INSTR2 - 673)) | (1 << (PlSqlParser.INSTR4 - 673)) | (1 << (PlSqlParser.INSTRB - 673)) | (1 << (PlSqlParser.INSTRC - 673)) | (1 << (PlSqlParser.INSTR - 673)) | (1 << (PlSqlParser.INTEGER - 673)) | (1 << (PlSqlParser.INTERLEAVED - 673)) | (1 << (PlSqlParser.INTERMEDIATE - 673)) | (1 << (PlSqlParser.INTERNAL_CONVERT - 673)) | (1 << (PlSqlParser.INTERNAL_USE - 673)) | (1 << (PlSqlParser.INTERPRETED - 673)) | (1 << (PlSqlParser.INTERVAL - 673)) | (1 << (PlSqlParser.INT - 673)) | (1 << (PlSqlParser.INVALIDATE - 673)) | (1 << (PlSqlParser.INVISIBLE - 673)) | (1 << (PlSqlParser.IN_XQUERY - 673)) | (1 << (PlSqlParser.ISOLATION - 673)) | (1 << (PlSqlParser.ISOLATION_LEVEL - 673)) | (1 << (PlSqlParser.ITERATE - 673)) | (1 << (PlSqlParser.ITERATION_NUMBER - 673)) | (1 << (PlSqlParser.JAVA - 673)) | (1 << (PlSqlParser.JOB - 673)) | (1 << (PlSqlParser.JOIN - 673)) | (1 << (PlSqlParser.JSON_ARRAYAGG - 673)) | (1 << (PlSqlParser.JSON_ARRAY - 673)))) !== 0) || ((((_la - 705)) & ~0x1f) == 0 && ((1 << (_la - 705)) & ((1 << (PlSqlParser.JSON_EQUAL - 705)) | (1 << (PlSqlParser.JSON_EXISTS2 - 705)) | (1 << (PlSqlParser.JSON_EXISTS - 705)) | (1 << (PlSqlParser.JSONGET - 705)) | (1 << (PlSqlParser.JSON - 705)) | (1 << (PlSqlParser.JSON_OBJECTAGG - 705)) | (1 << (PlSqlParser.JSON_OBJECT - 705)) | (1 << (PlSqlParser.JSONPARSE - 705)) | (1 << (PlSqlParser.JSON_QUERY - 705)) | (1 << (PlSqlParser.JSON_SERIALIZE - 705)) | (1 << (PlSqlParser.JSON_TABLE - 705)) | (1 << (PlSqlParser.JSON_TEXTCONTAINS2 - 705)) | (1 << (PlSqlParser.JSON_TEXTCONTAINS - 705)) | (1 << (PlSqlParser.JSON_VALUE - 705)) | (1 << (PlSqlParser.KEEP_DUPLICATES - 705)) | (1 << (PlSqlParser.KEEP - 705)) | (1 << (PlSqlParser.KERBEROS - 705)) | (1 << (PlSqlParser.KEY - 705)) | (1 << (PlSqlParser.KEY_LENGTH - 705)) | (1 << (PlSqlParser.KEYSIZE - 705)) | (1 << (PlSqlParser.KEYS - 705)) | (1 << (PlSqlParser.KEYSTORE - 705)) | (1 << (PlSqlParser.KILL - 705)) | (1 << (PlSqlParser.LABEL - 705)) | (1 << (PlSqlParser.LANGUAGE - 705)) | (1 << (PlSqlParser.LAST_DAY - 705)) | (1 << (PlSqlParser.LAST - 705)) | (1 << (PlSqlParser.LAST_VALUE - 705)) | (1 << (PlSqlParser.LATERAL - 705)) | (1 << (PlSqlParser.LAX - 705)) | (1 << (PlSqlParser.LAYER - 705)) | (1 << (PlSqlParser.LDAP_REGISTRATION_ENABLED - 705)))) !== 0) || ((((_la - 737)) & ~0x1f) == 0 && ((1 << (_la - 737)) & ((1 << (PlSqlParser.LDAP_REGISTRATION - 737)) | (1 << (PlSqlParser.LDAP_REG_SYNC_INTERVAL - 737)) | (1 << (PlSqlParser.LEADING - 737)) | (1 << (PlSqlParser.LEFT - 737)) | (1 << (PlSqlParser.LENGTH2 - 737)) | (1 << (PlSqlParser.LENGTH4 - 737)) | (1 << (PlSqlParser.LENGTHB - 737)) | (1 << (PlSqlParser.LENGTHC - 737)) | (1 << (PlSqlParser.LENGTH - 737)) | (1 << (PlSqlParser.LESS - 737)) | (1 << (PlSqlParser.LEVEL - 737)) | (1 << (PlSqlParser.LEVELS - 737)) | (1 << (PlSqlParser.LIBRARY - 737)) | (1 << (PlSqlParser.LIFECYCLE - 737)) | (1 << (PlSqlParser.LIFE - 737)) | (1 << (PlSqlParser.LIFETIME - 737)) | (1 << (PlSqlParser.LIKE2 - 737)) | (1 << (PlSqlParser.LIKE4 - 737)) | (1 << (PlSqlParser.LIKEC - 737)) | (1 << (PlSqlParser.LIKE_EXPAND - 737)) | (1 << (PlSqlParser.LIMIT - 737)) | (1 << (PlSqlParser.LINEAR - 737)) | (1 << (PlSqlParser.LINK - 737)) | (1 << (PlSqlParser.LIST - 737)) | (1 << (PlSqlParser.LN - 737)) | (1 << (PlSqlParser.LNNVL - 737)) | (1 << (PlSqlParser.LOAD - 737)) | (1 << (PlSqlParser.LOB - 737)) | (1 << (PlSqlParser.LOBNVL - 737)) | (1 << (PlSqlParser.LOBS - 737)) | (1 << (PlSqlParser.LOCAL_INDEXES - 737)))) !== 0) || ((((_la - 769)) & ~0x1f) == 0 && ((1 << (_la - 769)) & ((1 << (PlSqlParser.LOCAL - 769)) | (1 << (PlSqlParser.LOCALTIME - 769)) | (1 << (PlSqlParser.LOCALTIMESTAMP - 769)) | (1 << (PlSqlParser.LOCATION - 769)) | (1 << (PlSqlParser.LOCATOR - 769)) | (1 << (PlSqlParser.LOCKED - 769)) | (1 << (PlSqlParser.LOCKING - 769)) | (1 << (PlSqlParser.LOGFILE - 769)) | (1 << (PlSqlParser.LOGFILES - 769)) | (1 << (PlSqlParser.LOGGING - 769)) | (1 << (PlSqlParser.LOGICAL - 769)) | (1 << (PlSqlParser.LOGICAL_READS_PER_CALL - 769)) | (1 << (PlSqlParser.LOGICAL_READS_PER_SESSION - 769)) | (1 << (PlSqlParser.LOG - 769)) | (1 << (PlSqlParser.LOGMINING - 769)) | (1 << (PlSqlParser.LOGOFF - 769)) | (1 << (PlSqlParser.LOGON - 769)) | (1 << (PlSqlParser.LOG_READ_ONLY_VIOLATIONS - 769)) | (1 << (PlSqlParser.LONG - 769)) | (1 << (PlSqlParser.LOOP - 769)) | (1 << (PlSqlParser.LOWER - 769)) | (1 << (PlSqlParser.LOW - 769)) | (1 << (PlSqlParser.LPAD - 769)) | (1 << (PlSqlParser.LTRIM - 769)) | (1 << (PlSqlParser.MAIN - 769)) | (1 << (PlSqlParser.MAKE_REF - 769)) | (1 << (PlSqlParser.MANAGED - 769)) | (1 << (PlSqlParser.MANAGE - 769)) | (1 << (PlSqlParser.MANAGEMENT - 769)) | (1 << (PlSqlParser.MANAGER - 769)) | (1 << (PlSqlParser.MANUAL - 769)))) !== 0) || ((((_la - 801)) & ~0x1f) == 0 && ((1 << (_la - 801)) & ((1 << (PlSqlParser.MAP - 801)) | (1 << (PlSqlParser.MAPPING - 801)) | (1 << (PlSqlParser.MASTER - 801)) | (1 << (PlSqlParser.MATCHED - 801)) | (1 << (PlSqlParser.MATCHES - 801)) | (1 << (PlSqlParser.MATCH - 801)) | (1 << (PlSqlParser.MATCH_NUMBER - 801)) | (1 << (PlSqlParser.MATCH_RECOGNIZE - 801)) | (1 << (PlSqlParser.MATERIALIZED - 801)) | (1 << (PlSqlParser.MATERIALIZE - 801)) | (1 << (PlSqlParser.MAXARCHLOGS - 801)) | (1 << (PlSqlParser.MAXDATAFILES - 801)) | (1 << (PlSqlParser.MAXEXTENTS - 801)) | (1 << (PlSqlParser.MAXIMIZE - 801)) | (1 << (PlSqlParser.MAXINSTANCES - 801)) | (1 << (PlSqlParser.MAXLOGFILES - 801)) | (1 << (PlSqlParser.MAXLOGHISTORY - 801)) | (1 << (PlSqlParser.MAXLOGMEMBERS - 801)) | (1 << (PlSqlParser.MAX_SHARED_TEMP_SIZE - 801)) | (1 << (PlSqlParser.MAXSIZE - 801)) | (1 << (PlSqlParser.MAXTRANS - 801)) | (1 << (PlSqlParser.MAXVALUE - 801)) | (1 << (PlSqlParser.MEASURE - 801)) | (1 << (PlSqlParser.MEASURES - 801)) | (1 << (PlSqlParser.MEDIUM - 801)) | (1 << (PlSqlParser.MEMBER - 801)) | (1 << (PlSqlParser.MEMCOMPRESS - 801)) | (1 << (PlSqlParser.MEMORY - 801)) | (1 << (PlSqlParser.MERGEACTIONS - 801)) | (1 << (PlSqlParser.MERGE_AJ - 801)) | (1 << (PlSqlParser.MERGE_CONST_ON - 801)) | (1 << (PlSqlParser.MERGE - 801)))) !== 0) || ((((_la - 833)) & ~0x1f) == 0 && ((1 << (_la - 833)) & ((1 << (PlSqlParser.MERGE_SJ - 833)) | (1 << (PlSqlParser.METADATA - 833)) | (1 << (PlSqlParser.METHOD - 833)) | (1 << (PlSqlParser.MIGRATE - 833)) | (1 << (PlSqlParser.MIGRATION - 833)) | (1 << (PlSqlParser.MINEXTENTS - 833)) | (1 << (PlSqlParser.MINIMIZE - 833)) | (1 << (PlSqlParser.MINIMUM - 833)) | (1 << (PlSqlParser.MINING - 833)) | (1 << (PlSqlParser.MINUS_NULL - 833)) | (1 << (PlSqlParser.MINUTE - 833)) | (1 << (PlSqlParser.MINVALUE - 833)) | (1 << (PlSqlParser.MIRRORCOLD - 833)) | (1 << (PlSqlParser.MIRRORHOT - 833)) | (1 << (PlSqlParser.MIRROR - 833)) | (1 << (PlSqlParser.MLSLABEL - 833)) | (1 << (PlSqlParser.MODEL_COMPILE_SUBQUERY - 833)) | (1 << (PlSqlParser.MODEL_DONTVERIFY_UNIQUENESS - 833)) | (1 << (PlSqlParser.MODEL_DYNAMIC_SUBQUERY - 833)) | (1 << (PlSqlParser.MODEL_MIN_ANALYSIS - 833)) | (1 << (PlSqlParser.MODEL - 833)) | (1 << (PlSqlParser.MODEL_NB - 833)) | (1 << (PlSqlParser.MODEL_NO_ANALYSIS - 833)) | (1 << (PlSqlParser.MODEL_PBY - 833)) | (1 << (PlSqlParser.MODEL_PUSH_REF - 833)) | (1 << (PlSqlParser.MODEL_SV - 833)) | (1 << (PlSqlParser.MODIFICATION - 833)) | (1 << (PlSqlParser.MODIFY_COLUMN_TYPE - 833)) | (1 << (PlSqlParser.MODIFY - 833)) | (1 << (PlSqlParser.MOD - 833)))) !== 0) || ((((_la - 865)) & ~0x1f) == 0 && ((1 << (_la - 865)) & ((1 << (PlSqlParser.MODULE - 865)) | (1 << (PlSqlParser.MONITORING - 865)) | (1 << (PlSqlParser.MONITOR - 865)) | (1 << (PlSqlParser.MONTH - 865)) | (1 << (PlSqlParser.MONTHS_BETWEEN - 865)) | (1 << (PlSqlParser.MONTHS - 865)) | (1 << (PlSqlParser.MOUNT - 865)) | (1 << (PlSqlParser.MOUNTPATH - 865)) | (1 << (PlSqlParser.MOVEMENT - 865)) | (1 << (PlSqlParser.MOVE - 865)) | (1 << (PlSqlParser.MULTIDIMENSIONAL - 865)) | (1 << (PlSqlParser.MULTISET - 865)) | (1 << (PlSqlParser.MV_MERGE - 865)) | (1 << (PlSqlParser.NAMED - 865)) | (1 << (PlSqlParser.NAME - 865)) | (1 << (PlSqlParser.NAMESPACE - 865)) | (1 << (PlSqlParser.NAN - 865)) | (1 << (PlSqlParser.NANVL - 865)) | (1 << (PlSqlParser.NATIONAL - 865)) | (1 << (PlSqlParser.NATIVE_FULL_OUTER_JOIN - 865)) | (1 << (PlSqlParser.NATIVE - 865)) | (1 << (PlSqlParser.NATURAL - 865)) | (1 << (PlSqlParser.NAV - 865)) | (1 << (PlSqlParser.NCHAR_CS - 865)) | (1 << (PlSqlParser.NCHAR - 865)) | (1 << (PlSqlParser.NCHR - 865)) | (1 << (PlSqlParser.NCLOB - 865)) | (1 << (PlSqlParser.NEEDED - 865)) | (1 << (PlSqlParser.NEG - 865)) | (1 << (PlSqlParser.NESTED - 865)) | (1 << (PlSqlParser.NESTED_TABLE_FAST_INSERT - 865)))) !== 0) || ((((_la - 897)) & ~0x1f) == 0 && ((1 << (_la - 897)) & ((1 << (PlSqlParser.NESTED_TABLE_GET_REFS - 897)) | (1 << (PlSqlParser.NESTED_TABLE_ID - 897)) | (1 << (PlSqlParser.NESTED_TABLE_SET_REFS - 897)) | (1 << (PlSqlParser.NESTED_TABLE_SET_SETID - 897)) | (1 << (PlSqlParser.NETWORK - 897)) | (1 << (PlSqlParser.NEVER - 897)) | (1 << (PlSqlParser.NEW - 897)) | (1 << (PlSqlParser.NEW_TIME - 897)) | (1 << (PlSqlParser.NEXT_DAY - 897)) | (1 << (PlSqlParser.NEXT - 897)) | (1 << (PlSqlParser.NL_AJ - 897)) | (1 << (PlSqlParser.NLJ_BATCHING - 897)) | (1 << (PlSqlParser.NLJ_INDEX_FILTER - 897)) | (1 << (PlSqlParser.NLJ_INDEX_SCAN - 897)) | (1 << (PlSqlParser.NLJ_PREFETCH - 897)) | (1 << (PlSqlParser.NLS_CALENDAR - 897)) | (1 << (PlSqlParser.NLS_CHARACTERSET - 897)) | (1 << (PlSqlParser.NLS_CHARSET_DECL_LEN - 897)) | (1 << (PlSqlParser.NLS_CHARSET_ID - 897)) | (1 << (PlSqlParser.NLS_CHARSET_NAME - 897)) | (1 << (PlSqlParser.NLS_COMP - 897)) | (1 << (PlSqlParser.NLS_CURRENCY - 897)) | (1 << (PlSqlParser.NLS_DATE_FORMAT - 897)) | (1 << (PlSqlParser.NLS_DATE_LANGUAGE - 897)) | (1 << (PlSqlParser.NLS_INITCAP - 897)) | (1 << (PlSqlParser.NLS_ISO_CURRENCY - 897)) | (1 << (PlSqlParser.NL_SJ - 897)) | (1 << (PlSqlParser.NLS_LANG - 897)) | (1 << (PlSqlParser.NLS_LANGUAGE - 897)) | (1 << (PlSqlParser.NLS_LENGTH_SEMANTICS - 897)) | (1 << (PlSqlParser.NLS_LOWER - 897)) | (1 << (PlSqlParser.NLS_NCHAR_CONV_EXCP - 897)))) !== 0) || ((((_la - 929)) & ~0x1f) == 0 && ((1 << (_la - 929)) & ((1 << (PlSqlParser.NLS_NUMERIC_CHARACTERS - 929)) | (1 << (PlSqlParser.NLS_SORT - 929)) | (1 << (PlSqlParser.NLSSORT - 929)) | (1 << (PlSqlParser.NLS_SPECIAL_CHARS - 929)) | (1 << (PlSqlParser.NLS_TERRITORY - 929)) | (1 << (PlSqlParser.NLS_UPPER - 929)) | (1 << (PlSqlParser.NO_ACCESS - 929)) | (1 << (PlSqlParser.NO_ADAPTIVE_PLAN - 929)) | (1 << (PlSqlParser.NO_ANSI_REARCH - 929)) | (1 << (PlSqlParser.NOAPPEND - 929)) | (1 << (PlSqlParser.NOARCHIVELOG - 929)) | (1 << (PlSqlParser.NOAUDIT - 929)) | (1 << (PlSqlParser.NO_AUTO_REOPTIMIZE - 929)) | (1 << (PlSqlParser.NO_BASETABLE_MULTIMV_REWRITE - 929)) | (1 << (PlSqlParser.NO_BATCH_TABLE_ACCESS_BY_ROWID - 929)) | (1 << (PlSqlParser.NO_BIND_AWARE - 929)) | (1 << (PlSqlParser.NO_BUFFER - 929)) | (1 << (PlSqlParser.NOCACHE - 929)) | (1 << (PlSqlParser.NO_CARTESIAN - 929)) | (1 << (PlSqlParser.NO_CHECK_ACL_REWRITE - 929)) | (1 << (PlSqlParser.NO_CLUSTER_BY_ROWID - 929)) | (1 << (PlSqlParser.NO_CLUSTERING - 929)) | (1 << (PlSqlParser.NO_COALESCE_SQ - 929)) | (1 << (PlSqlParser.NO_COMMON_DATA - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_CB_WHR_ONLY - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_COMBINE_SW - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_COST_BASED - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_ELIM_DUPS - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_FILTERING - 929)) | (1 << (PlSqlParser.NOCOPY - 929)) | (1 << (PlSqlParser.NO_COST_XML_QUERY_REWRITE - 929)))) !== 0) || ((((_la - 961)) & ~0x1f) == 0 && ((1 << (_la - 961)) & ((1 << (PlSqlParser.NO_CPU_COSTING - 961)) | (1 << (PlSqlParser.NOCPU_COSTING - 961)) | (1 << (PlSqlParser.NOCYCLE - 961)) | (1 << (PlSqlParser.NO_DATA_SECURITY_REWRITE - 961)) | (1 << (PlSqlParser.NO_DECORRELATE - 961)) | (1 << (PlSqlParser.NODELAY - 961)) | (1 << (PlSqlParser.NO_DOMAIN_INDEX_FILTER - 961)) | (1 << (PlSqlParser.NO_DST_UPGRADE_INSERT_CONV - 961)) | (1 << (PlSqlParser.NO_ELIM_GROUPBY - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_JOIN - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_OBY - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_OUTER_JOIN - 961)) | (1 << (PlSqlParser.NOENTITYESCAPING - 961)) | (1 << (PlSqlParser.NO_EXPAND_GSET_TO_UNION - 961)) | (1 << (PlSqlParser.NO_EXPAND - 961)) | (1 << (PlSqlParser.NO_EXPAND_TABLE - 961)) | (1 << (PlSqlParser.NO_FACT - 961)) | (1 << (PlSqlParser.NO_FACTORIZE_JOIN - 961)) | (1 << (PlSqlParser.NO_FILTERING - 961)) | (1 << (PlSqlParser.NOFORCE - 961)) | (1 << (PlSqlParser.NO_FULL_OUTER_JOIN_TO_OUTER - 961)) | (1 << (PlSqlParser.NO_GATHER_OPTIMIZER_STATISTICS - 961)) | (1 << (PlSqlParser.NO_GBY_PUSHDOWN - 961)) | (1 << (PlSqlParser.NOGUARANTEE - 961)) | (1 << (PlSqlParser.NO_INDEX_FFS - 961)) | (1 << (PlSqlParser.NO_INDEX - 961)) | (1 << (PlSqlParser.NO_INDEX_SS - 961)) | (1 << (PlSqlParser.NO_INMEMORY - 961)) | (1 << (PlSqlParser.NO_INMEMORY_PRUNING - 961)) | (1 << (PlSqlParser.NOKEEP - 961)) | (1 << (PlSqlParser.NO_LOAD - 961)) | (1 << (PlSqlParser.NOLOCAL - 961)))) !== 0) || ((((_la - 993)) & ~0x1f) == 0 && ((1 << (_la - 993)) & ((1 << (PlSqlParser.NOLOGGING - 993)) | (1 << (PlSqlParser.NOMAPPING - 993)) | (1 << (PlSqlParser.NOMAXVALUE - 993)) | (1 << (PlSqlParser.NO_MERGE - 993)) | (1 << (PlSqlParser.NOMINIMIZE - 993)) | (1 << (PlSqlParser.NOMINVALUE - 993)) | (1 << (PlSqlParser.NO_MODEL_PUSH_REF - 993)) | (1 << (PlSqlParser.NO_MONITORING - 993)) | (1 << (PlSqlParser.NOMONITORING - 993)) | (1 << (PlSqlParser.NO_MONITOR - 993)) | (1 << (PlSqlParser.NO_MULTIMV_REWRITE - 993)) | (1 << (PlSqlParser.NO_NATIVE_FULL_OUTER_JOIN - 993)) | (1 << (PlSqlParser.NONBLOCKING - 993)) | (1 << (PlSqlParser.NONEDITIONABLE - 993)) | (1 << (PlSqlParser.NONE - 993)) | (1 << (PlSqlParser.NO_NLJ_BATCHING - 993)) | (1 << (PlSqlParser.NO_NLJ_PREFETCH - 993)) | (1 << (PlSqlParser.NO - 993)) | (1 << (PlSqlParser.NONSCHEMA - 993)) | (1 << (PlSqlParser.NO_OBJECT_LINK - 993)) | (1 << (PlSqlParser.NOORDER - 993)) | (1 << (PlSqlParser.NO_ORDER_ROLLUPS - 993)) | (1 << (PlSqlParser.NO_OUTER_JOIN_TO_ANTI - 993)) | (1 << (PlSqlParser.NO_OUTER_JOIN_TO_INNER - 993)) | (1 << (PlSqlParser.NOOVERRIDE - 993)) | (1 << (PlSqlParser.NO_PARALLEL_INDEX - 993)) | (1 << (PlSqlParser.NOPARALLEL_INDEX - 993)) | (1 << (PlSqlParser.NO_PARALLEL - 993)) | (1 << (PlSqlParser.NOPARALLEL - 993)) | (1 << (PlSqlParser.NO_PARTIAL_COMMIT - 993)) | (1 << (PlSqlParser.NO_PARTIAL_JOIN - 993)) | (1 << (PlSqlParser.NO_PARTIAL_ROLLUP_PUSHDOWN - 993)))) !== 0) || ((((_la - 1025)) & ~0x1f) == 0 && ((1 << (_la - 1025)) & ((1 << (PlSqlParser.NOPARTITION - 1025)) | (1 << (PlSqlParser.NO_PLACE_DISTINCT - 1025)) | (1 << (PlSqlParser.NO_PLACE_GROUP_BY - 1025)) | (1 << (PlSqlParser.NO_PQ_CONCURRENT_UNION - 1025)) | (1 << (PlSqlParser.NO_PQ_MAP - 1025)) | (1 << (PlSqlParser.NO_PQ_REPLICATE - 1025)) | (1 << (PlSqlParser.NO_PQ_SKEW - 1025)) | (1 << (PlSqlParser.NO_PRUNE_GSETS - 1025)) | (1 << (PlSqlParser.NO_PULL_PRED - 1025)) | (1 << (PlSqlParser.NO_PUSH_PRED - 1025)) | (1 << (PlSqlParser.NO_PUSH_SUBQ - 1025)) | (1 << (PlSqlParser.NO_PX_FAULT_TOLERANCE - 1025)) | (1 << (PlSqlParser.NO_PX_JOIN_FILTER - 1025)) | (1 << (PlSqlParser.NO_QKN_BUFF - 1025)) | (1 << (PlSqlParser.NO_QUERY_TRANSFORMATION - 1025)) | (1 << (PlSqlParser.NO_REF_CASCADE - 1025)) | (1 << (PlSqlParser.NORELOCATE - 1025)) | (1 << (PlSqlParser.NORELY - 1025)) | (1 << (PlSqlParser.NOREPAIR - 1025)) | (1 << (PlSqlParser.NOREPLAY - 1025)) | (1 << (PlSqlParser.NORESETLOGS - 1025)) | (1 << (PlSqlParser.NO_RESULT_CACHE - 1025)) | (1 << (PlSqlParser.NOREVERSE - 1025)) | (1 << (PlSqlParser.NO_REWRITE - 1025)) | (1 << (PlSqlParser.NOREWRITE - 1025)) | (1 << (PlSqlParser.NORMAL - 1025)) | (1 << (PlSqlParser.NO_ROOT_SW_FOR_LOCAL - 1025)) | (1 << (PlSqlParser.NOROWDEPENDENCIES - 1025)) | (1 << (PlSqlParser.NOSCHEMACHECK - 1025)) | (1 << (PlSqlParser.NOSEGMENT - 1025)) | (1 << (PlSqlParser.NO_SEMIJOIN - 1025)) | (1 << (PlSqlParser.NO_SEMI_TO_INNER - 1025)))) !== 0) || ((((_la - 1057)) & ~0x1f) == 0 && ((1 << (_la - 1057)) & ((1 << (PlSqlParser.NO_SET_TO_JOIN - 1057)) | (1 << (PlSqlParser.NOSORT - 1057)) | (1 << (PlSqlParser.NO_SQL_TRANSLATION - 1057)) | (1 << (PlSqlParser.NO_SQL_TUNE - 1057)) | (1 << (PlSqlParser.NO_STAR_TRANSFORMATION - 1057)) | (1 << (PlSqlParser.NO_STATEMENT_QUEUING - 1057)) | (1 << (PlSqlParser.NO_STATS_GSETS - 1057)) | (1 << (PlSqlParser.NOSTRICT - 1057)) | (1 << (PlSqlParser.NO_SUBQUERY_PRUNING - 1057)) | (1 << (PlSqlParser.NO_SUBSTRB_PAD - 1057)) | (1 << (PlSqlParser.NO_SWAP_JOIN_INPUTS - 1057)) | (1 << (PlSqlParser.NOSWITCH - 1057)) | (1 << (PlSqlParser.NO_TABLE_LOOKUP_BY_NL - 1057)) | (1 << (PlSqlParser.NO_TEMP_TABLE - 1057)) | (1 << (PlSqlParser.NOTHING - 1057)) | (1 << (PlSqlParser.NOTIFICATION - 1057)) | (1 << (PlSqlParser.NO_TRANSFORM_DISTINCT_AGG - 1057)) | (1 << (PlSqlParser.NO_UNNEST - 1057)) | (1 << (PlSqlParser.NO_USE_CUBE - 1057)) | (1 << (PlSqlParser.NO_USE_HASH_AGGREGATION - 1057)) | (1 << (PlSqlParser.NO_USE_HASH_GBY_FOR_PUSHDOWN - 1057)) | (1 << (PlSqlParser.NO_USE_HASH - 1057)) | (1 << (PlSqlParser.NO_USE_INVISIBLE_INDEXES - 1057)) | (1 << (PlSqlParser.NO_USE_MERGE - 1057)) | (1 << (PlSqlParser.NO_USE_NL - 1057)) | (1 << (PlSqlParser.NO_USE_VECTOR_AGGREGATION - 1057)) | (1 << (PlSqlParser.NOVALIDATE - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM_DIMS - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM_FACT - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM - 1057)))) !== 0) || ((((_la - 1089)) & ~0x1f) == 0 && ((1 << (_la - 1089)) & ((1 << (PlSqlParser.NO_XDB_FASTPATH_INSERT - 1089)) | (1 << (PlSqlParser.NO_XML_DML_REWRITE - 1089)) | (1 << (PlSqlParser.NO_XMLINDEX_REWRITE_IN_SELECT - 1089)) | (1 << (PlSqlParser.NO_XMLINDEX_REWRITE - 1089)) | (1 << (PlSqlParser.NO_XML_QUERY_REWRITE - 1089)) | (1 << (PlSqlParser.NO_ZONEMAP - 1089)) | (1 << (PlSqlParser.NTH_VALUE - 1089)) | (1 << (PlSqlParser.NULLIF - 1089)) | (1 << (PlSqlParser.NULLS - 1089)) | (1 << (PlSqlParser.NUMBER - 1089)) | (1 << (PlSqlParser.NUMERIC - 1089)) | (1 << (PlSqlParser.NUM_INDEX_KEYS - 1089)) | (1 << (PlSqlParser.NUMTODSINTERVAL - 1089)) | (1 << (PlSqlParser.NUMTOYMINTERVAL - 1089)) | (1 << (PlSqlParser.NVARCHAR2 - 1089)) | (1 << (PlSqlParser.NVL2 - 1089)) | (1 << (PlSqlParser.OBJECT2XML - 1089)) | (1 << (PlSqlParser.OBJECT - 1089)) | (1 << (PlSqlParser.OBJ_ID - 1089)) | (1 << (PlSqlParser.OBJNO - 1089)) | (1 << (PlSqlParser.OBJNO_REUSE - 1089)) | (1 << (PlSqlParser.OCCURENCES - 1089)) | (1 << (PlSqlParser.OFFLINE - 1089)) | (1 << (PlSqlParser.OFF - 1089)) | (1 << (PlSqlParser.OFFSET - 1089)) | (1 << (PlSqlParser.OIDINDEX - 1089)) | (1 << (PlSqlParser.OID - 1089)) | (1 << (PlSqlParser.OLAP - 1089)) | (1 << (PlSqlParser.OLD - 1089)) | (1 << (PlSqlParser.OLD_PUSH_PRED - 1089)))) !== 0) || ((((_la - 1121)) & ~0x1f) == 0 && ((1 << (_la - 1121)) & ((1 << (PlSqlParser.OLS - 1121)) | (1 << (PlSqlParser.OLTP - 1121)) | (1 << (PlSqlParser.OMIT - 1121)) | (1 << (PlSqlParser.ONE - 1121)) | (1 << (PlSqlParser.ONLINE - 1121)) | (1 << (PlSqlParser.ONLY - 1121)) | (1 << (PlSqlParser.OPAQUE - 1121)) | (1 << (PlSqlParser.OPAQUE_TRANSFORM - 1121)) | (1 << (PlSqlParser.OPAQUE_XCANONICAL - 1121)) | (1 << (PlSqlParser.OPCODE - 1121)) | (1 << (PlSqlParser.OPEN - 1121)) | (1 << (PlSqlParser.OPERATIONS - 1121)) | (1 << (PlSqlParser.OPERATOR - 1121)) | (1 << (PlSqlParser.OPT_ESTIMATE - 1121)) | (1 << (PlSqlParser.OPTIMAL - 1121)) | (1 << (PlSqlParser.OPTIMIZE - 1121)) | (1 << (PlSqlParser.OPTIMIZER_FEATURES_ENABLE - 1121)) | (1 << (PlSqlParser.OPTIMIZER_GOAL - 1121)) | (1 << (PlSqlParser.OPT_PARAM - 1121)) | (1 << (PlSqlParser.ORA_BRANCH - 1121)) | (1 << (PlSqlParser.ORA_CHECK_ACL - 1121)) | (1 << (PlSqlParser.ORA_CHECK_PRIVILEGE - 1121)) | (1 << (PlSqlParser.ORA_CLUSTERING - 1121)) | (1 << (PlSqlParser.ORADATA - 1121)) | (1 << (PlSqlParser.ORADEBUG - 1121)) | (1 << (PlSqlParser.ORA_DST_AFFECTED - 1121)) | (1 << (PlSqlParser.ORA_DST_CONVERT - 1121)) | (1 << (PlSqlParser.ORA_DST_ERROR - 1121)) | (1 << (PlSqlParser.ORA_GET_ACLIDS - 1121)))) !== 0) || ((((_la - 1153)) & ~0x1f) == 0 && ((1 << (_la - 1153)) & ((1 << (PlSqlParser.ORA_GET_PRIVILEGES - 1153)) | (1 << (PlSqlParser.ORA_HASH - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_USERID - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_USER - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_XS_USER_GUID - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_XS_USER - 1153)) | (1 << (PlSqlParser.ORA_RAWCOMPARE - 1153)) | (1 << (PlSqlParser.ORA_RAWCONCAT - 1153)) | (1 << (PlSqlParser.ORA_ROWSCN - 1153)) | (1 << (PlSqlParser.ORA_ROWSCN_RAW - 1153)) | (1 << (PlSqlParser.ORA_ROWVERSION - 1153)) | (1 << (PlSqlParser.ORA_TABVERSION - 1153)) | (1 << (PlSqlParser.ORA_WRITE_TIME - 1153)) | (1 << (PlSqlParser.ORDERED - 1153)) | (1 << (PlSqlParser.ORDERED_PREDICATES - 1153)) | (1 << (PlSqlParser.ORDINALITY - 1153)) | (1 << (PlSqlParser.OR_EXPAND - 1153)) | (1 << (PlSqlParser.ORGANIZATION - 1153)) | (1 << (PlSqlParser.OR_PREDICATES - 1153)) | (1 << (PlSqlParser.OSERROR - 1153)) | (1 << (PlSqlParser.OTHER - 1153)) | (1 << (PlSqlParser.OUTER_JOIN_TO_ANTI - 1153)) | (1 << (PlSqlParser.OUTER_JOIN_TO_INNER - 1153)) | (1 << (PlSqlParser.OUTER - 1153)) | (1 << (PlSqlParser.OUTLINE_LEAF - 1153)) | (1 << (PlSqlParser.OUTLINE - 1153)) | (1 << (PlSqlParser.OUT_OF_LINE - 1153)) | (1 << (PlSqlParser.OUT - 1153)) | (1 << (PlSqlParser.OVERFLOW_NOMOVE - 1153)) | (1 << (PlSqlParser.OVERFLOW - 1153)))) !== 0) || ((((_la - 1185)) & ~0x1f) == 0 && ((1 << (_la - 1185)) & ((1 << (PlSqlParser.OVERLAPS - 1185)) | (1 << (PlSqlParser.OVER - 1185)) | (1 << (PlSqlParser.OVERRIDING - 1185)) | (1 << (PlSqlParser.OWNER - 1185)) | (1 << (PlSqlParser.OWNERSHIP - 1185)) | (1 << (PlSqlParser.OWN - 1185)) | (1 << (PlSqlParser.PACKAGE - 1185)) | (1 << (PlSqlParser.PACKAGES - 1185)) | (1 << (PlSqlParser.PARALLEL_ENABLE - 1185)) | (1 << (PlSqlParser.PARALLEL_INDEX - 1185)) | (1 << (PlSqlParser.PARALLEL - 1185)) | (1 << (PlSqlParser.PARAMETERS - 1185)) | (1 << (PlSqlParser.PARAM - 1185)) | (1 << (PlSqlParser.PARENT - 1185)) | (1 << (PlSqlParser.PARITY - 1185)) | (1 << (PlSqlParser.PARTIAL_JOIN - 1185)) | (1 << (PlSqlParser.PARTIALLY - 1185)) | (1 << (PlSqlParser.PARTIAL - 1185)) | (1 << (PlSqlParser.PARTIAL_ROLLUP_PUSHDOWN - 1185)) | (1 << (PlSqlParser.PARTITION_HASH - 1185)) | (1 << (PlSqlParser.PARTITION_LIST - 1185)) | (1 << (PlSqlParser.PARTITION - 1185)) | (1 << (PlSqlParser.PARTITION_RANGE - 1185)) | (1 << (PlSqlParser.PARTITIONS - 1185)) | (1 << (PlSqlParser.PARTNUMINST - 1185)) | (1 << (PlSqlParser.PASSING - 1185)) | (1 << (PlSqlParser.PASSWORD_GRACE_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD_LIFE_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD_LOCK_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD - 1185)) | (1 << (PlSqlParser.PASSWORD_REUSE_MAX - 1185)))) !== 0) || ((((_la - 1217)) & ~0x1f) == 0 && ((1 << (_la - 1217)) & ((1 << (PlSqlParser.PASSWORD_REUSE_TIME - 1217)) | (1 << (PlSqlParser.PASSWORD_VERIFY_FUNCTION - 1217)) | (1 << (PlSqlParser.PAST - 1217)) | (1 << (PlSqlParser.PATCH - 1217)) | (1 << (PlSqlParser.PATH - 1217)) | (1 << (PlSqlParser.PATH_PREFIX - 1217)) | (1 << (PlSqlParser.PATHS - 1217)) | (1 << (PlSqlParser.PATTERN - 1217)) | (1 << (PlSqlParser.PBL_HS_BEGIN - 1217)) | (1 << (PlSqlParser.PBL_HS_END - 1217)) | (1 << (PlSqlParser.PCTINCREASE - 1217)) | (1 << (PlSqlParser.PCTTHRESHOLD - 1217)) | (1 << (PlSqlParser.PCTUSED - 1217)) | (1 << (PlSqlParser.PCTVERSION - 1217)) | (1 << (PlSqlParser.PENDING - 1217)) | (1 << (PlSqlParser.PERCENT_KEYWORD - 1217)) | (1 << (PlSqlParser.PERCENT_RANKM - 1217)) | (1 << (PlSqlParser.PERFORMANCE - 1217)) | (1 << (PlSqlParser.PERIOD_KEYWORD - 1217)) | (1 << (PlSqlParser.PERMANENT - 1217)) | (1 << (PlSqlParser.PERMISSION - 1217)) | (1 << (PlSqlParser.PERMUTE - 1217)) | (1 << (PlSqlParser.PER - 1217)) | (1 << (PlSqlParser.PFILE - 1217)) | (1 << (PlSqlParser.PHYSICAL - 1217)))) !== 0) || ((((_la - 1249)) & ~0x1f) == 0 && ((1 << (_la - 1249)) & ((1 << (PlSqlParser.PIKEY - 1249)) | (1 << (PlSqlParser.PIPELINED - 1249)) | (1 << (PlSqlParser.PIV_GB - 1249)) | (1 << (PlSqlParser.PIVOT - 1249)) | (1 << (PlSqlParser.PIV_SSF - 1249)) | (1 << (PlSqlParser.PLACE_DISTINCT - 1249)) | (1 << (PlSqlParser.PLACE_GROUP_BY - 1249)) | (1 << (PlSqlParser.PLAN - 1249)) | (1 << (PlSqlParser.PLSCOPE_SETTINGS - 1249)) | (1 << (PlSqlParser.PLS_INTEGER - 1249)) | (1 << (PlSqlParser.PLSQL_CCFLAGS - 1249)) | (1 << (PlSqlParser.PLSQL_CODE_TYPE - 1249)) | (1 << (PlSqlParser.PLSQL_DEBUG - 1249)) | (1 << (PlSqlParser.PLSQL_OPTIMIZE_LEVEL - 1249)) | (1 << (PlSqlParser.PLSQL_WARNINGS - 1249)) | (1 << (PlSqlParser.PLUGGABLE - 1249)) | (1 << (PlSqlParser.POINT - 1249)) | (1 << (PlSqlParser.POLICY - 1249)) | (1 << (PlSqlParser.POOL_16K - 1249)) | (1 << (PlSqlParser.POOL_2K - 1249)) | (1 << (PlSqlParser.POOL_32K - 1249)) | (1 << (PlSqlParser.POOL_4K - 1249)) | (1 << (PlSqlParser.POOL_8K - 1249)) | (1 << (PlSqlParser.POSITIVEN - 1249)) | (1 << (PlSqlParser.POSITIVE - 1249)) | (1 << (PlSqlParser.POST_TRANSACTION - 1249)) | (1 << (PlSqlParser.POWERMULTISET_BY_CARDINALITY - 1249)) | (1 << (PlSqlParser.POWERMULTISET - 1249)) | (1 << (PlSqlParser.POWER - 1249)) | (1 << (PlSqlParser.PQ_CONCURRENT_UNION - 1249)) | (1 << (PlSqlParser.PQ_DISTRIBUTE - 1249)))) !== 0) || ((((_la - 1281)) & ~0x1f) == 0 && ((1 << (_la - 1281)) & ((1 << (PlSqlParser.PQ_DISTRIBUTE_WINDOW - 1281)) | (1 << (PlSqlParser.PQ_FILTER - 1281)) | (1 << (PlSqlParser.PQ_MAP - 1281)) | (1 << (PlSqlParser.PQ_NOMAP - 1281)) | (1 << (PlSqlParser.PQ_REPLICATE - 1281)) | (1 << (PlSqlParser.PQ_SKEW - 1281)) | (1 << (PlSqlParser.PRAGMA - 1281)) | (1 << (PlSqlParser.PREBUILT - 1281)) | (1 << (PlSqlParser.PRECEDES - 1281)) | (1 << (PlSqlParser.PRECEDING - 1281)) | (1 << (PlSqlParser.PRECISION - 1281)) | (1 << (PlSqlParser.PRECOMPUTE_SUBQUERY - 1281)) | (1 << (PlSqlParser.PREDICATE_REORDERS - 1281)) | (1 << (PlSqlParser.PRELOAD - 1281)) | (1 << (PlSqlParser.PREPARE - 1281)) | (1 << (PlSqlParser.PRESENTNNV - 1281)) | (1 << (PlSqlParser.PRESENT - 1281)) | (1 << (PlSqlParser.PRESENTV - 1281)) | (1 << (PlSqlParser.PRESERVE_OID - 1281)) | (1 << (PlSqlParser.PRESERVE - 1281)) | (1 << (PlSqlParser.PRETTY - 1281)) | (1 << (PlSqlParser.PREVIOUS - 1281)) | (1 << (PlSqlParser.PREV - 1281)) | (1 << (PlSqlParser.PRIMARY - 1281)) | (1 << (PlSqlParser.PRINTBLOBTOCLOB - 1281)) | (1 << (PlSqlParser.PRIORITY - 1281)) | (1 << (PlSqlParser.PRIVATE - 1281)) | (1 << (PlSqlParser.PRIVATE_SGA - 1281)) | (1 << (PlSqlParser.PRIVILEGED - 1281)) | (1 << (PlSqlParser.PRIVILEGE - 1281)) | (1 << (PlSqlParser.PRIVILEGES - 1281)))) !== 0) || ((((_la - 1313)) & ~0x1f) == 0 && ((1 << (_la - 1313)) & ((1 << (PlSqlParser.PROCEDURAL - 1313)) | (1 << (PlSqlParser.PROCEDURE - 1313)) | (1 << (PlSqlParser.PROCESS - 1313)) | (1 << (PlSqlParser.PROFILE - 1313)) | (1 << (PlSqlParser.PROGRAM - 1313)) | (1 << (PlSqlParser.PROJECT - 1313)) | (1 << (PlSqlParser.PROPAGATE - 1313)) | (1 << (PlSqlParser.PROTECTED - 1313)) | (1 << (PlSqlParser.PROTECTION - 1313)) | (1 << (PlSqlParser.PROXY - 1313)) | (1 << (PlSqlParser.PRUNING - 1313)) | (1 << (PlSqlParser.PULL_PRED - 1313)) | (1 << (PlSqlParser.PURGE - 1313)) | (1 << (PlSqlParser.PUSH_PRED - 1313)) | (1 << (PlSqlParser.PUSH_SUBQ - 1313)) | (1 << (PlSqlParser.PX_FAULT_TOLERANCE - 1313)) | (1 << (PlSqlParser.PX_GRANULE - 1313)) | (1 << (PlSqlParser.PX_JOIN_FILTER - 1313)) | (1 << (PlSqlParser.QB_NAME - 1313)) | (1 << (PlSqlParser.QUERY_BLOCK - 1313)) | (1 << (PlSqlParser.QUERY - 1313)) | (1 << (PlSqlParser.QUEUE_CURR - 1313)) | (1 << (PlSqlParser.QUEUE - 1313)) | (1 << (PlSqlParser.QUEUE_ROWP - 1313)) | (1 << (PlSqlParser.QUIESCE - 1313)) | (1 << (PlSqlParser.QUORUM - 1313)) | (1 << (PlSqlParser.QUOTA - 1313)) | (1 << (PlSqlParser.RAISE - 1313)) | (1 << (PlSqlParser.RANDOM_LOCAL - 1313)) | (1 << (PlSqlParser.RANDOM - 1313)) | (1 << (PlSqlParser.RANGE - 1313)))) !== 0) || ((((_la - 1345)) & ~0x1f) == 0 && ((1 << (_la - 1345)) & ((1 << (PlSqlParser.RANKM - 1345)) | (1 << (PlSqlParser.RAPIDLY - 1345)) | (1 << (PlSqlParser.RAW - 1345)) | (1 << (PlSqlParser.RAWTOHEX - 1345)) | (1 << (PlSqlParser.RAWTONHEX - 1345)) | (1 << (PlSqlParser.RBA - 1345)) | (1 << (PlSqlParser.RBO_OUTLINE - 1345)) | (1 << (PlSqlParser.RDBA - 1345)) | (1 << (PlSqlParser.READ - 1345)) | (1 << (PlSqlParser.READS - 1345)) | (1 << (PlSqlParser.REALM - 1345)) | (1 << (PlSqlParser.REAL - 1345)) | (1 << (PlSqlParser.REBALANCE - 1345)) | (1 << (PlSqlParser.REBUILD - 1345)) | (1 << (PlSqlParser.RECORD - 1345)) | (1 << (PlSqlParser.RECORDS_PER_BLOCK - 1345)) | (1 << (PlSqlParser.RECOVERABLE - 1345)) | (1 << (PlSqlParser.RECOVER - 1345)) | (1 << (PlSqlParser.RECOVERY - 1345)) | (1 << (PlSqlParser.RECYCLEBIN - 1345)) | (1 << (PlSqlParser.RECYCLE - 1345)) | (1 << (PlSqlParser.REDACTION - 1345)) | (1 << (PlSqlParser.REDEFINE - 1345)) | (1 << (PlSqlParser.REDO - 1345)) | (1 << (PlSqlParser.REDUCED - 1345)) | (1 << (PlSqlParser.REDUNDANCY - 1345)) | (1 << (PlSqlParser.REF_CASCADE_CURSOR - 1345)) | (1 << (PlSqlParser.REFERENCED - 1345)) | (1 << (PlSqlParser.REFERENCE - 1345)) | (1 << (PlSqlParser.REFERENCES - 1345)) | (1 << (PlSqlParser.REFERENCING - 1345)) | (1 << (PlSqlParser.REF - 1345)))) !== 0) || ((((_la - 1377)) & ~0x1f) == 0 && ((1 << (_la - 1377)) & ((1 << (PlSqlParser.REFRESH - 1377)) | (1 << (PlSqlParser.REFTOHEX - 1377)) | (1 << (PlSqlParser.REGEXP_COUNT - 1377)) | (1 << (PlSqlParser.REGEXP_INSTR - 1377)) | (1 << (PlSqlParser.REGEXP_LIKE - 1377)) | (1 << (PlSqlParser.REGEXP_REPLACE - 1377)) | (1 << (PlSqlParser.REGEXP_SUBSTR - 1377)) | (1 << (PlSqlParser.REGISTER - 1377)) | (1 << (PlSqlParser.REGR_AVGX - 1377)) | (1 << (PlSqlParser.REGR_AVGY - 1377)) | (1 << (PlSqlParser.REGR_COUNT - 1377)) | (1 << (PlSqlParser.REGR_INTERCEPT - 1377)) | (1 << (PlSqlParser.REGR_R2 - 1377)) | (1 << (PlSqlParser.REGR_SLOPE - 1377)) | (1 << (PlSqlParser.REGR_SXX - 1377)) | (1 << (PlSqlParser.REGR_SXY - 1377)) | (1 << (PlSqlParser.REGR_SYY - 1377)) | (1 << (PlSqlParser.REGULAR - 1377)) | (1 << (PlSqlParser.REJECT - 1377)) | (1 << (PlSqlParser.REKEY - 1377)) | (1 << (PlSqlParser.RELATIONAL - 1377)) | (1 << (PlSqlParser.RELOCATE - 1377)) | (1 << (PlSqlParser.RELY - 1377)) | (1 << (PlSqlParser.REMAINDER - 1377)) | (1 << (PlSqlParser.REMOTE_MAPPED - 1377)) | (1 << (PlSqlParser.REMOVE - 1377)) | (1 << (PlSqlParser.RENAME - 1377)) | (1 << (PlSqlParser.REPAIR - 1377)) | (1 << (PlSqlParser.REPEAT - 1377)) | (1 << (PlSqlParser.REPLACE - 1377)) | (1 << (PlSqlParser.REPLICATION - 1377)))) !== 0) || ((((_la - 1409)) & ~0x1f) == 0 && ((1 << (_la - 1409)) & ((1 << (PlSqlParser.REQUIRED - 1409)) | (1 << (PlSqlParser.RESETLOGS - 1409)) | (1 << (PlSqlParser.RESET - 1409)) | (1 << (PlSqlParser.RESIZE - 1409)) | (1 << (PlSqlParser.RESOLVE - 1409)) | (1 << (PlSqlParser.RESOLVER - 1409)) | (1 << (PlSqlParser.RESPECT - 1409)) | (1 << (PlSqlParser.RESTART - 1409)) | (1 << (PlSqlParser.RESTORE_AS_INTERVALS - 1409)) | (1 << (PlSqlParser.RESTORE - 1409)) | (1 << (PlSqlParser.RESTRICT_ALL_REF_CONS - 1409)) | (1 << (PlSqlParser.RESTRICTED - 1409)) | (1 << (PlSqlParser.RESTRICT_REFERENCES - 1409)) | (1 << (PlSqlParser.RESTRICT - 1409)) | (1 << (PlSqlParser.RESULT_CACHE - 1409)) | (1 << (PlSqlParser.RESULT - 1409)) | (1 << (PlSqlParser.RESUMABLE - 1409)) | (1 << (PlSqlParser.RESUME - 1409)) | (1 << (PlSqlParser.RETENTION - 1409)) | (1 << (PlSqlParser.RETRY_ON_ROW_CHANGE - 1409)) | (1 << (PlSqlParser.RETURNING - 1409)) | (1 << (PlSqlParser.RETURN - 1409)) | (1 << (PlSqlParser.REUSE - 1409)) | (1 << (PlSqlParser.REVERSE - 1409)) | (1 << (PlSqlParser.REWRITE_OR_ERROR - 1409)) | (1 << (PlSqlParser.REWRITE - 1409)) | (1 << (PlSqlParser.RIGHT - 1409)) | (1 << (PlSqlParser.ROLE - 1409)) | (1 << (PlSqlParser.ROLESET - 1409)) | (1 << (PlSqlParser.ROLES - 1409)))) !== 0) || ((((_la - 1441)) & ~0x1f) == 0 && ((1 << (_la - 1441)) & ((1 << (PlSqlParser.ROLLBACK - 1441)) | (1 << (PlSqlParser.ROLLING - 1441)) | (1 << (PlSqlParser.ROLLUP - 1441)) | (1 << (PlSqlParser.ROWDEPENDENCIES - 1441)) | (1 << (PlSqlParser.ROWID_MAPPING_TABLE - 1441)) | (1 << (PlSqlParser.ROWID - 1441)) | (1 << (PlSqlParser.ROWIDTOCHAR - 1441)) | (1 << (PlSqlParser.ROWIDTONCHAR - 1441)) | (1 << (PlSqlParser.ROW_LENGTH - 1441)) | (1 << (PlSqlParser.ROWNUM - 1441)) | (1 << (PlSqlParser.ROW - 1441)) | (1 << (PlSqlParser.ROWS - 1441)) | (1 << (PlSqlParser.RPAD - 1441)) | (1 << (PlSqlParser.RTRIM - 1441)) | (1 << (PlSqlParser.RULE - 1441)) | (1 << (PlSqlParser.RULES - 1441)) | (1 << (PlSqlParser.RUNNING - 1441)) | (1 << (PlSqlParser.SALT - 1441)) | (1 << (PlSqlParser.SAMPLE - 1441)) | (1 << (PlSqlParser.SAVE_AS_INTERVALS - 1441)) | (1 << (PlSqlParser.SAVEPOINT - 1441)) | (1 << (PlSqlParser.SAVE - 1441)) | (1 << (PlSqlParser.SB4 - 1441)) | (1 << (PlSqlParser.SCALE_ROWS - 1441)) | (1 << (PlSqlParser.SCALE - 1441)) | (1 << (PlSqlParser.SCAN_INSTANCES - 1441)) | (1 << (PlSqlParser.SCAN - 1441)) | (1 << (PlSqlParser.SCHEDULER - 1441)) | (1 << (PlSqlParser.SCHEMACHECK - 1441)) | (1 << (PlSqlParser.SCHEMA - 1441)) | (1 << (PlSqlParser.SCN_ASCENDING - 1441)) | (1 << (PlSqlParser.SCN - 1441)))) !== 0) || ((((_la - 1473)) & ~0x1f) == 0 && ((1 << (_la - 1473)) & ((1 << (PlSqlParser.SCOPE - 1473)) | (1 << (PlSqlParser.SCRUB - 1473)) | (1 << (PlSqlParser.SD_ALL - 1473)) | (1 << (PlSqlParser.SD_INHIBIT - 1473)) | (1 << (PlSqlParser.SDO_GEOM_MBR - 1473)) | (1 << (PlSqlParser.SD_SHOW - 1473)) | (1 << (PlSqlParser.SEARCH - 1473)) | (1 << (PlSqlParser.SECOND - 1473)) | (1 << (PlSqlParser.SECRET - 1473)) | (1 << (PlSqlParser.SECUREFILE_DBA - 1473)) | (1 << (PlSqlParser.SECUREFILE - 1473)) | (1 << (PlSqlParser.SECURITY - 1473)) | (1 << (PlSqlParser.SEED - 1473)) | (1 << (PlSqlParser.SEG_BLOCK - 1473)) | (1 << (PlSqlParser.SEG_FILE - 1473)) | (1 << (PlSqlParser.SEGMENT - 1473)) | (1 << (PlSqlParser.SELECTIVITY - 1473)) | (1 << (PlSqlParser.SELF - 1473)) | (1 << (PlSqlParser.SEMIJOIN_DRIVER - 1473)) | (1 << (PlSqlParser.SEMIJOIN - 1473)) | (1 << (PlSqlParser.SEMI_TO_INNER - 1473)) | (1 << (PlSqlParser.SEQUENCED - 1473)) | (1 << (PlSqlParser.SEQUENCE - 1473)) | (1 << (PlSqlParser.SEQUENTIAL - 1473)) | (1 << (PlSqlParser.SERIALIZABLE - 1473)) | (1 << (PlSqlParser.SERIALLY_REUSABLE - 1473)) | (1 << (PlSqlParser.SERIAL - 1473)) | (1 << (PlSqlParser.SERVERERROR - 1473)) | (1 << (PlSqlParser.SERVICE_NAME_CONVERT - 1473)) | (1 << (PlSqlParser.SERVICES - 1473)))) !== 0) || ((((_la - 1505)) & ~0x1f) == 0 && ((1 << (_la - 1505)) & ((1 << (PlSqlParser.SESSION_CACHED_CURSORS - 1505)) | (1 << (PlSqlParser.SESSION - 1505)) | (1 << (PlSqlParser.SESSIONS_PER_USER - 1505)) | (1 << (PlSqlParser.SESSIONTIMEZONE - 1505)) | (1 << (PlSqlParser.SESSIONTZNAME - 1505)) | (1 << (PlSqlParser.SET - 1505)) | (1 << (PlSqlParser.SETS - 1505)) | (1 << (PlSqlParser.SETTINGS - 1505)) | (1 << (PlSqlParser.SET_TO_JOIN - 1505)) | (1 << (PlSqlParser.SEVERE - 1505)) | (1 << (PlSqlParser.SHARED_POOL - 1505)) | (1 << (PlSqlParser.SHARED - 1505)) | (1 << (PlSqlParser.SHARING - 1505)) | (1 << (PlSqlParser.SHELFLIFE - 1505)) | (1 << (PlSqlParser.SHOW - 1505)) | (1 << (PlSqlParser.SHRINK - 1505)) | (1 << (PlSqlParser.SHUTDOWN - 1505)) | (1 << (PlSqlParser.SIBLINGS - 1505)) | (1 << (PlSqlParser.SID - 1505)) | (1 << (PlSqlParser.SIGNAL_COMPONENT - 1505)) | (1 << (PlSqlParser.SIGNAL_FUNCTION - 1505)) | (1 << (PlSqlParser.SIGN - 1505)) | (1 << (PlSqlParser.SIGNTYPE - 1505)) | (1 << (PlSqlParser.SIMPLE_INTEGER - 1505)) | (1 << (PlSqlParser.SIMPLE - 1505)) | (1 << (PlSqlParser.SINGLE - 1505)) | (1 << (PlSqlParser.SINGLETASK - 1505)) | (1 << (PlSqlParser.SINH - 1505)) | (1 << (PlSqlParser.SIN - 1505)) | (1 << (PlSqlParser.SKIP_EXT_OPTIMIZER - 1505)))) !== 0) || ((((_la - 1537)) & ~0x1f) == 0 && ((1 << (_la - 1537)) & ((1 << (PlSqlParser.SKIP_ - 1537)) | (1 << (PlSqlParser.SKIP_UNQ_UNUSABLE_IDX - 1537)) | (1 << (PlSqlParser.SKIP_UNUSABLE_INDEXES - 1537)) | (1 << (PlSqlParser.SMALLFILE - 1537)) | (1 << (PlSqlParser.SMALLINT - 1537)) | (1 << (PlSqlParser.SNAPSHOT - 1537)) | (1 << (PlSqlParser.SOME - 1537)) | (1 << (PlSqlParser.SORT - 1537)) | (1 << (PlSqlParser.SOUNDEX - 1537)) | (1 << (PlSqlParser.SOURCE_FILE_DIRECTORY - 1537)) | (1 << (PlSqlParser.SOURCE_FILE_NAME_CONVERT - 1537)) | (1 << (PlSqlParser.SOURCE - 1537)) | (1 << (PlSqlParser.SPACE_KEYWORD - 1537)) | (1 << (PlSqlParser.SPECIFICATION - 1537)) | (1 << (PlSqlParser.SPFILE - 1537)) | (1 << (PlSqlParser.SPLIT - 1537)) | (1 << (PlSqlParser.SPREADSHEET - 1537)) | (1 << (PlSqlParser.SQLDATA - 1537)) | (1 << (PlSqlParser.SQLERROR - 1537)) | (1 << (PlSqlParser.SQLLDR - 1537)) | (1 << (PlSqlParser.SQL - 1537)) | (1 << (PlSqlParser.SQL_TRACE - 1537)) | (1 << (PlSqlParser.SQL_TRANSLATION_PROFILE - 1537)) | (1 << (PlSqlParser.SQRT - 1537)) | (1 << (PlSqlParser.STALE - 1537)) | (1 << (PlSqlParser.STANDALONE - 1537)) | (1 << (PlSqlParser.STANDARD_HASH - 1537)) | (1 << (PlSqlParser.STANDBY_MAX_DATA_DELAY - 1537)) | (1 << (PlSqlParser.STANDBYS - 1537)) | (1 << (PlSqlParser.STANDBY - 1537)) | (1 << (PlSqlParser.STAR - 1537)) | (1 << (PlSqlParser.STAR_TRANSFORMATION - 1537)))) !== 0) || ((((_la - 1570)) & ~0x1f) == 0 && ((1 << (_la - 1570)) & ((1 << (PlSqlParser.STARTUP - 1570)) | (1 << (PlSqlParser.STATEMENT_ID - 1570)) | (1 << (PlSqlParser.STATEMENT_QUEUING - 1570)) | (1 << (PlSqlParser.STATEMENTS - 1570)) | (1 << (PlSqlParser.STATEMENT - 1570)) | (1 << (PlSqlParser.STATE - 1570)) | (1 << (PlSqlParser.STATIC - 1570)) | (1 << (PlSqlParser.STATISTICS - 1570)) | (1 << (PlSqlParser.STATS_BINOMIAL_TEST - 1570)) | (1 << (PlSqlParser.STATS_CROSSTAB - 1570)) | (1 << (PlSqlParser.STATS_F_TEST - 1570)) | (1 << (PlSqlParser.STATS_KS_TEST - 1570)) | (1 << (PlSqlParser.STATS_MODE - 1570)) | (1 << (PlSqlParser.STATS_MW_TEST - 1570)) | (1 << (PlSqlParser.STATS_ONE_WAY_ANOVA - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_INDEP - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_INDEPU - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_ONE - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_PAIRED - 1570)) | (1 << (PlSqlParser.STATS_WSR_TEST - 1570)) | (1 << (PlSqlParser.STDDEV_POP - 1570)) | (1 << (PlSqlParser.STDDEV_SAMP - 1570)) | (1 << (PlSqlParser.STOP - 1570)) | (1 << (PlSqlParser.STORAGE - 1570)) | (1 << (PlSqlParser.STORE - 1570)) | (1 << (PlSqlParser.STREAMS - 1570)) | (1 << (PlSqlParser.STREAM - 1570)) | (1 << (PlSqlParser.STRICT - 1570)) | (1 << (PlSqlParser.STRING - 1570)) | (1 << (PlSqlParser.STRIPE_COLUMNS - 1570)) | (1 << (PlSqlParser.STRIPE_WIDTH - 1570)) | (1 << (PlSqlParser.STRIP - 1570)))) !== 0) || ((((_la - 1602)) & ~0x1f) == 0 && ((1 << (_la - 1602)) & ((1 << (PlSqlParser.STRUCTURE - 1602)) | (1 << (PlSqlParser.SUBMULTISET - 1602)) | (1 << (PlSqlParser.SUBPARTITION_REL - 1602)) | (1 << (PlSqlParser.SUBPARTITIONS - 1602)) | (1 << (PlSqlParser.SUBPARTITION - 1602)) | (1 << (PlSqlParser.SUBQUERIES - 1602)) | (1 << (PlSqlParser.SUBQUERY_PRUNING - 1602)) | (1 << (PlSqlParser.SUBSCRIBE - 1602)) | (1 << (PlSqlParser.SUBSET - 1602)) | (1 << (PlSqlParser.SUBSTITUTABLE - 1602)) | (1 << (PlSqlParser.SUBSTR2 - 1602)) | (1 << (PlSqlParser.SUBSTR4 - 1602)) | (1 << (PlSqlParser.SUBSTRB - 1602)) | (1 << (PlSqlParser.SUBSTRC - 1602)) | (1 << (PlSqlParser.SUBTYPE - 1602)) | (1 << (PlSqlParser.SUCCESSFUL - 1602)) | (1 << (PlSqlParser.SUCCESS - 1602)) | (1 << (PlSqlParser.SUMMARY - 1602)) | (1 << (PlSqlParser.SUPPLEMENTAL - 1602)) | (1 << (PlSqlParser.SUSPEND - 1602)) | (1 << (PlSqlParser.SWAP_JOIN_INPUTS - 1602)) | (1 << (PlSqlParser.SWITCHOVER - 1602)) | (1 << (PlSqlParser.SWITCH - 1602)) | (1 << (PlSqlParser.SYNCHRONOUS - 1602)) | (1 << (PlSqlParser.SYNC - 1602)) | (1 << (PlSqlParser.SYSASM - 1602)) | (1 << (PlSqlParser.SYS_AUDIT - 1602)) | (1 << (PlSqlParser.SYSAUX - 1602)) | (1 << (PlSqlParser.SYSBACKUP - 1602)) | (1 << (PlSqlParser.SYS_CHECKACL - 1602)) | (1 << (PlSqlParser.SYS_CHECK_PRIVILEGE - 1602)))) !== 0) || ((((_la - 1634)) & ~0x1f) == 0 && ((1 << (_la - 1634)) & ((1 << (PlSqlParser.SYS_CONNECT_BY_PATH - 1634)) | (1 << (PlSqlParser.SYS_CONTEXT - 1634)) | (1 << (PlSqlParser.SYSDATE - 1634)) | (1 << (PlSqlParser.SYSDBA - 1634)) | (1 << (PlSqlParser.SYS_DBURIGEN - 1634)) | (1 << (PlSqlParser.SYSDG - 1634)) | (1 << (PlSqlParser.SYS_DL_CURSOR - 1634)) | (1 << (PlSqlParser.SYS_DM_RXFORM_CHR - 1634)) | (1 << (PlSqlParser.SYS_DM_RXFORM_NUM - 1634)) | (1 << (PlSqlParser.SYS_DOM_COMPARE - 1634)) | (1 << (PlSqlParser.SYS_DST_PRIM2SEC - 1634)) | (1 << (PlSqlParser.SYS_DST_SEC2PRIM - 1634)) | (1 << (PlSqlParser.SYS_ET_BFILE_TO_RAW - 1634)) | (1 << (PlSqlParser.SYS_ET_BLOB_TO_IMAGE - 1634)) | (1 << (PlSqlParser.SYS_ET_IMAGE_TO_BLOB - 1634)) | (1 << (PlSqlParser.SYS_ET_RAW_TO_BFILE - 1634)) | (1 << (PlSqlParser.SYS_EXTPDTXT - 1634)) | (1 << (PlSqlParser.SYS_EXTRACT_UTC - 1634)) | (1 << (PlSqlParser.SYS_FBT_INSDEL - 1634)) | (1 << (PlSqlParser.SYS_FILTER_ACLS - 1634)) | (1 << (PlSqlParser.SYS_FNMATCHES - 1634)) | (1 << (PlSqlParser.SYS_FNREPLACE - 1634)) | (1 << (PlSqlParser.SYS_GET_ACLIDS - 1634)) | (1 << (PlSqlParser.SYS_GET_COL_ACLIDS - 1634)) | (1 << (PlSqlParser.SYS_GET_PRIVILEGES - 1634)) | (1 << (PlSqlParser.SYS_GETTOKENID - 1634)) | (1 << (PlSqlParser.SYS_GETXTIVAL - 1634)) | (1 << (PlSqlParser.SYS_GUID - 1634)) | (1 << (PlSqlParser.SYSGUID - 1634)) | (1 << (PlSqlParser.SYSKM - 1634)) | (1 << (PlSqlParser.SYS_MAKE_XMLNODEID - 1634)) | (1 << (PlSqlParser.SYS_MAKEXML - 1634)))) !== 0) || ((((_la - 1666)) & ~0x1f) == 0 && ((1 << (_la - 1666)) & ((1 << (PlSqlParser.SYS_MKXMLATTR - 1666)) | (1 << (PlSqlParser.SYS_MKXTI - 1666)) | (1 << (PlSqlParser.SYSOBJ - 1666)) | (1 << (PlSqlParser.SYS_OP_ADT2BIN - 1666)) | (1 << (PlSqlParser.SYS_OP_ADTCONS - 1666)) | (1 << (PlSqlParser.SYS_OP_ALSCRVAL - 1666)) | (1 << (PlSqlParser.SYS_OP_ATG - 1666)) | (1 << (PlSqlParser.SYS_OP_BIN2ADT - 1666)) | (1 << (PlSqlParser.SYS_OP_BITVEC - 1666)) | (1 << (PlSqlParser.SYS_OP_BL2R - 1666)) | (1 << (PlSqlParser.SYS_OP_BLOOM_FILTER_LIST - 1666)) | (1 << (PlSqlParser.SYS_OP_BLOOM_FILTER - 1666)) | (1 << (PlSqlParser.SYS_OP_C2C - 1666)) | (1 << (PlSqlParser.SYS_OP_CAST - 1666)) | (1 << (PlSqlParser.SYS_OP_CEG - 1666)) | (1 << (PlSqlParser.SYS_OP_CL2C - 1666)) | (1 << (PlSqlParser.SYS_OP_COMBINED_HASH - 1666)) | (1 << (PlSqlParser.SYS_OP_COMP - 1666)) | (1 << (PlSqlParser.SYS_OP_CONVERT - 1666)) | (1 << (PlSqlParser.SYS_OP_COUNTCHG - 1666)) | (1 << (PlSqlParser.SYS_OP_CSCONV - 1666)) | (1 << (PlSqlParser.SYS_OP_CSCONVTEST - 1666)) | (1 << (PlSqlParser.SYS_OP_CSR - 1666)) | (1 << (PlSqlParser.SYS_OP_CSX_PATCH - 1666)) | (1 << (PlSqlParser.SYS_OP_CYCLED_SEQ - 1666)) | (1 << (PlSqlParser.SYS_OP_DECOMP - 1666)) | (1 << (PlSqlParser.SYS_OP_DESCEND - 1666)) | (1 << (PlSqlParser.SYS_OP_DISTINCT - 1666)) | (1 << (PlSqlParser.SYS_OP_DRA - 1666)) | (1 << (PlSqlParser.SYS_OP_DUMP - 1666)) | (1 << (PlSqlParser.SYS_OP_DV_CHECK - 1666)) | (1 << (PlSqlParser.SYS_OP_ENFORCE_NOT_NULL - 1666)))) !== 0) || ((((_la - 1698)) & ~0x1f) == 0 && ((1 << (_la - 1698)) & ((1 << (PlSqlParser.SYSOPER - 1698)) | (1 << (PlSqlParser.SYS_OP_EXTRACT - 1698)) | (1 << (PlSqlParser.SYS_OP_GROUPING - 1698)) | (1 << (PlSqlParser.SYS_OP_GUID - 1698)) | (1 << (PlSqlParser.SYS_OP_HASH - 1698)) | (1 << (PlSqlParser.SYS_OP_IIX - 1698)) | (1 << (PlSqlParser.SYS_OP_ITR - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_CREATE - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_FILTER_LIST - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_FILTER - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_SUCCEEDED - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_USE - 1698)) | (1 << (PlSqlParser.SYS_OP_LBID - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2BLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2CLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2ID - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2NCLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2TYP - 1698)) | (1 << (PlSqlParser.SYS_OP_LSVI - 1698)) | (1 << (PlSqlParser.SYS_OP_LVL - 1698)) | (1 << (PlSqlParser.SYS_OP_MAKEOID - 1698)) | (1 << (PlSqlParser.SYS_OP_MAP_NONNULL - 1698)) | (1 << (PlSqlParser.SYS_OP_MSR - 1698)) | (1 << (PlSqlParser.SYS_OP_NICOMBINE - 1698)) | (1 << (PlSqlParser.SYS_OP_NIEXTRACT - 1698)) | (1 << (PlSqlParser.SYS_OP_NII - 1698)) | (1 << (PlSqlParser.SYS_OP_NIX - 1698)) | (1 << (PlSqlParser.SYS_OP_NOEXPAND - 1698)) | (1 << (PlSqlParser.SYS_OP_NTCIMG - 1698)) | (1 << (PlSqlParser.SYS_OP_NUMTORAW - 1698)) | (1 << (PlSqlParser.SYS_OP_OIDVALUE - 1698)) | (1 << (PlSqlParser.SYS_OP_OPNSIZE - 1698)))) !== 0) || ((((_la - 1730)) & ~0x1f) == 0 && ((1 << (_la - 1730)) & ((1 << (PlSqlParser.SYS_OP_PAR_1 - 1730)) | (1 << (PlSqlParser.SYS_OP_PARGID_1 - 1730)) | (1 << (PlSqlParser.SYS_OP_PARGID - 1730)) | (1 << (PlSqlParser.SYS_OP_PAR - 1730)) | (1 << (PlSqlParser.SYS_OP_PART_ID - 1730)) | (1 << (PlSqlParser.SYS_OP_PIVOT - 1730)) | (1 << (PlSqlParser.SYS_OP_R2O - 1730)) | (1 << (PlSqlParser.SYS_OP_RAWTONUM - 1730)) | (1 << (PlSqlParser.SYS_OP_RDTM - 1730)) | (1 << (PlSqlParser.SYS_OP_REF - 1730)) | (1 << (PlSqlParser.SYS_OP_RMTD - 1730)) | (1 << (PlSqlParser.SYS_OP_ROWIDTOOBJ - 1730)) | (1 << (PlSqlParser.SYS_OP_RPB - 1730)) | (1 << (PlSqlParser.SYS_OPTLOBPRBSC - 1730)) | (1 << (PlSqlParser.SYS_OP_TOSETID - 1730)) | (1 << (PlSqlParser.SYS_OP_TPR - 1730)) | (1 << (PlSqlParser.SYS_OP_TRTB - 1730)) | (1 << (PlSqlParser.SYS_OPTXICMP - 1730)) | (1 << (PlSqlParser.SYS_OPTXQCASTASNQ - 1730)) | (1 << (PlSqlParser.SYS_OP_UNDESCEND - 1730)) | (1 << (PlSqlParser.SYS_OP_VECAND - 1730)) | (1 << (PlSqlParser.SYS_OP_VECBIT - 1730)) | (1 << (PlSqlParser.SYS_OP_VECOR - 1730)) | (1 << (PlSqlParser.SYS_OP_VECXOR - 1730)) | (1 << (PlSqlParser.SYS_OP_VERSION - 1730)) | (1 << (PlSqlParser.SYS_OP_VREF - 1730)) | (1 << (PlSqlParser.SYS_OP_VVD - 1730)) | (1 << (PlSqlParser.SYS_OP_XMLCONS_FOR_CSX - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHATG - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHIDX - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHOP - 1730)) | (1 << (PlSqlParser.SYS_OP_XTXT2SQLT - 1730)))) !== 0) || ((((_la - 1762)) & ~0x1f) == 0 && ((1 << (_la - 1762)) & ((1 << (PlSqlParser.SYS_OP_ZONE_ID - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_DEPTH - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_MAXCHILD - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_PARENT - 1762)) | (1 << (PlSqlParser.SYS_PARALLEL_TXN - 1762)) | (1 << (PlSqlParser.SYS_PATHID_IS_ATTR - 1762)) | (1 << (PlSqlParser.SYS_PATHID_IS_NMSPC - 1762)) | (1 << (PlSqlParser.SYS_PATHID_LASTNAME - 1762)) | (1 << (PlSqlParser.SYS_PATHID_LASTNMSPC - 1762)) | (1 << (PlSqlParser.SYS_PATH_REVERSE - 1762)) | (1 << (PlSqlParser.SYS_PXQEXTRACT - 1762)) | (1 << (PlSqlParser.SYS_RAW_TO_XSID - 1762)) | (1 << (PlSqlParser.SYS_RID_ORDER - 1762)) | (1 << (PlSqlParser.SYS_ROW_DELTA - 1762)) | (1 << (PlSqlParser.SYS_SC_2_XMLT - 1762)) | (1 << (PlSqlParser.SYS_SYNRCIREDO - 1762)) | (1 << (PlSqlParser.SYSTEM_DEFINED - 1762)) | (1 << (PlSqlParser.SYSTEM - 1762)) | (1 << (PlSqlParser.SYSTIMESTAMP - 1762)) | (1 << (PlSqlParser.SYS_TYPEID - 1762)) | (1 << (PlSqlParser.SYS_UMAKEXML - 1762)) | (1 << (PlSqlParser.SYS_XMLANALYZE - 1762)) | (1 << (PlSqlParser.SYS_XMLCONTAINS - 1762)) | (1 << (PlSqlParser.SYS_XMLCONV - 1762)) | (1 << (PlSqlParser.SYS_XMLEXNSURI - 1762)) | (1 << (PlSqlParser.SYS_XMLGEN - 1762)) | (1 << (PlSqlParser.SYS_XMLI_LOC_ISNODE - 1762)) | (1 << (PlSqlParser.SYS_XMLI_LOC_ISTEXT - 1762)) | (1 << (PlSqlParser.SYS_XMLINSTR - 1762)) | (1 << (PlSqlParser.SYS_XMLLOCATOR_GETSVAL - 1762)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETCID - 1762)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETLOCATOR - 1762)))) !== 0) || ((((_la - 1794)) & ~0x1f) == 0 && ((1 << (_la - 1794)) & ((1 << (PlSqlParser.SYS_XMLNODEID_GETOKEY - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETPATHID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETPTRID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETRID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETSVAL - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETTID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID - 1794)) | (1 << (PlSqlParser.SYS_XMLT_2_SC - 1794)) | (1 << (PlSqlParser.SYS_XMLTRANSLATE - 1794)) | (1 << (PlSqlParser.SYS_XMLTYPE2SQL - 1794)) | (1 << (PlSqlParser.SYS_XQ_ASQLCNV - 1794)) | (1 << (PlSqlParser.SYS_XQ_ATOMCNVCHK - 1794)) | (1 << (PlSqlParser.SYS_XQBASEURI - 1794)) | (1 << (PlSqlParser.SYS_XQCASTABLEERRH - 1794)) | (1 << (PlSqlParser.SYS_XQCODEP2STR - 1794)) | (1 << (PlSqlParser.SYS_XQCODEPEQ - 1794)) | (1 << (PlSqlParser.SYS_XQCON2SEQ - 1794)) | (1 << (PlSqlParser.SYS_XQCONCAT - 1794)) | (1 << (PlSqlParser.SYS_XQDELETE - 1794)) | (1 << (PlSqlParser.SYS_XQDFLTCOLATION - 1794)) | (1 << (PlSqlParser.SYS_XQDOC - 1794)) | (1 << (PlSqlParser.SYS_XQDOCURI - 1794)) | (1 << (PlSqlParser.SYS_XQDURDIV - 1794)) | (1 << (PlSqlParser.SYS_XQED4URI - 1794)) | (1 << (PlSqlParser.SYS_XQENDSWITH - 1794)) | (1 << (PlSqlParser.SYS_XQERRH - 1794)) | (1 << (PlSqlParser.SYS_XQERR - 1794)) | (1 << (PlSqlParser.SYS_XQESHTMLURI - 1794)) | (1 << (PlSqlParser.SYS_XQEXLOBVAL - 1794)) | (1 << (PlSqlParser.SYS_XQEXSTWRP - 1794)) | (1 << (PlSqlParser.SYS_XQEXTRACT - 1794)) | (1 << (PlSqlParser.SYS_XQEXTRREF - 1794)))) !== 0) || ((((_la - 1826)) & ~0x1f) == 0 && ((1 << (_la - 1826)) & ((1 << (PlSqlParser.SYS_XQEXVAL - 1826)) | (1 << (PlSqlParser.SYS_XQFB2STR - 1826)) | (1 << (PlSqlParser.SYS_XQFNBOOL - 1826)) | (1 << (PlSqlParser.SYS_XQFNCMP - 1826)) | (1 << (PlSqlParser.SYS_XQFNDATIM - 1826)) | (1 << (PlSqlParser.SYS_XQFNLNAME - 1826)) | (1 << (PlSqlParser.SYS_XQFNNM - 1826)) | (1 << (PlSqlParser.SYS_XQFNNSURI - 1826)) | (1 << (PlSqlParser.SYS_XQFNPREDTRUTH - 1826)) | (1 << (PlSqlParser.SYS_XQFNQNM - 1826)) | (1 << (PlSqlParser.SYS_XQFNROOT - 1826)) | (1 << (PlSqlParser.SYS_XQFORMATNUM - 1826)) | (1 << (PlSqlParser.SYS_XQFTCONTAIN - 1826)) | (1 << (PlSqlParser.SYS_XQFUNCR - 1826)) | (1 << (PlSqlParser.SYS_XQGETCONTENT - 1826)) | (1 << (PlSqlParser.SYS_XQINDXOF - 1826)) | (1 << (PlSqlParser.SYS_XQINSERT - 1826)) | (1 << (PlSqlParser.SYS_XQINSPFX - 1826)) | (1 << (PlSqlParser.SYS_XQIRI2URI - 1826)) | (1 << (PlSqlParser.SYS_XQLANG - 1826)) | (1 << (PlSqlParser.SYS_XQLLNMFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQMKNODEREF - 1826)) | (1 << (PlSqlParser.SYS_XQNILLED - 1826)) | (1 << (PlSqlParser.SYS_XQNODENAME - 1826)) | (1 << (PlSqlParser.SYS_XQNORMSPACE - 1826)) | (1 << (PlSqlParser.SYS_XQNORMUCODE - 1826)) | (1 << (PlSqlParser.SYS_XQ_NRNG - 1826)) | (1 << (PlSqlParser.SYS_XQNSP4PFX - 1826)) | (1 << (PlSqlParser.SYS_XQNSPFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQPFXFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQ_PKSQL2XML - 1826)) | (1 << (PlSqlParser.SYS_XQPOLYABS - 1826)))) !== 0) || ((((_la - 1858)) & ~0x1f) == 0 && ((1 << (_la - 1858)) & ((1 << (PlSqlParser.SYS_XQPOLYADD - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCEL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCSTBL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCST - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYDIV - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYFLR - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYMOD - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYMUL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYRND - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYSQRT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYSUB - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYUMUS - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYUPLS - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVEQ - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVGE - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVGT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVLE - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVLT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVNE - 1858)) | (1 << (PlSqlParser.SYS_XQREF2VAL - 1858)) | (1 << (PlSqlParser.SYS_XQRENAME - 1858)) | (1 << (PlSqlParser.SYS_XQREPLACE - 1858)) | (1 << (PlSqlParser.SYS_XQRESVURI - 1858)) | (1 << (PlSqlParser.SYS_XQRNDHALF2EVN - 1858)) | (1 << (PlSqlParser.SYS_XQRSLVQNM - 1858)) | (1 << (PlSqlParser.SYS_XQRYENVPGET - 1858)) | (1 << (PlSqlParser.SYS_XQRYVARGET - 1858)) | (1 << (PlSqlParser.SYS_XQRYWRP - 1858)) | (1 << (PlSqlParser.SYS_XQSEQ2CON4XC - 1858)) | (1 << (PlSqlParser.SYS_XQSEQ2CON - 1858)) | (1 << (PlSqlParser.SYS_XQSEQDEEPEQ - 1858)) | (1 << (PlSqlParser.SYS_XQSEQINSB - 1858)))) !== 0) || ((((_la - 1890)) & ~0x1f) == 0 && ((1 << (_la - 1890)) & ((1 << (PlSqlParser.SYS_XQSEQRM - 1890)) | (1 << (PlSqlParser.SYS_XQSEQRVS - 1890)) | (1 << (PlSqlParser.SYS_XQSEQSUB - 1890)) | (1 << (PlSqlParser.SYS_XQSEQTYPMATCH - 1890)) | (1 << (PlSqlParser.SYS_XQSTARTSWITH - 1890)) | (1 << (PlSqlParser.SYS_XQSTATBURI - 1890)) | (1 << (PlSqlParser.SYS_XQSTR2CODEP - 1890)) | (1 << (PlSqlParser.SYS_XQSTRJOIN - 1890)) | (1 << (PlSqlParser.SYS_XQSUBSTRAFT - 1890)) | (1 << (PlSqlParser.SYS_XQSUBSTRBEF - 1890)) | (1 << (PlSqlParser.SYS_XQTOKENIZE - 1890)) | (1 << (PlSqlParser.SYS_XQTREATAS - 1890)) | (1 << (PlSqlParser.SYS_XQ_UPKXML2SQL - 1890)) | (1 << (PlSqlParser.SYS_XQXFORM - 1890)) | (1 << (PlSqlParser.SYS_XSID_TO_RAW - 1890)) | (1 << (PlSqlParser.SYS_ZMAP_FILTER - 1890)) | (1 << (PlSqlParser.SYS_ZMAP_REFRESH - 1890)) | (1 << (PlSqlParser.TABLE_LOOKUP_BY_NL - 1890)) | (1 << (PlSqlParser.TABLESPACE_NO - 1890)) | (1 << (PlSqlParser.TABLESPACE - 1890)) | (1 << (PlSqlParser.TABLES - 1890)) | (1 << (PlSqlParser.TABLE_STATS - 1890)) | (1 << (PlSqlParser.TABLE - 1890)) | (1 << (PlSqlParser.TABNO - 1890)) | (1 << (PlSqlParser.TAG - 1890)) | (1 << (PlSqlParser.TANH - 1890)) | (1 << (PlSqlParser.TAN - 1890)) | (1 << (PlSqlParser.TBLORIDXPARTNUM - 1890)) | (1 << (PlSqlParser.TEMPFILE - 1890)) | (1 << (PlSqlParser.TEMPLATE - 1890)) | (1 << (PlSqlParser.TEMPORARY - 1890)) | (1 << (PlSqlParser.TEMP_TABLE - 1890)))) !== 0) || ((((_la - 1922)) & ~0x1f) == 0 && ((1 << (_la - 1922)) & ((1 << (PlSqlParser.TEST - 1922)) | (1 << (PlSqlParser.TEXT - 1922)) | (1 << (PlSqlParser.THAN - 1922)) | (1 << (PlSqlParser.THEN - 1922)) | (1 << (PlSqlParser.THE - 1922)) | (1 << (PlSqlParser.THREAD - 1922)) | (1 << (PlSqlParser.THROUGH - 1922)) | (1 << (PlSqlParser.TIER - 1922)) | (1 << (PlSqlParser.TIES - 1922)) | (1 << (PlSqlParser.TIMEOUT - 1922)) | (1 << (PlSqlParser.TIMESTAMP_LTZ_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMESTAMP - 1922)) | (1 << (PlSqlParser.TIMESTAMP_TZ_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMESTAMP_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMES - 1922)) | (1 << (PlSqlParser.TIME - 1922)) | (1 << (PlSqlParser.TIMEZONE_ABBR - 1922)) | (1 << (PlSqlParser.TIMEZONE_HOUR - 1922)) | (1 << (PlSqlParser.TIMEZONE_MINUTE - 1922)) | (1 << (PlSqlParser.TIMEZONE_OFFSET - 1922)) | (1 << (PlSqlParser.TIMEZONE_REGION - 1922)) | (1 << (PlSqlParser.TIME_ZONE - 1922)) | (1 << (PlSqlParser.TIV_GB - 1922)) | (1 << (PlSqlParser.TIV_SSF - 1922)) | (1 << (PlSqlParser.TO_ACLID - 1922)) | (1 << (PlSqlParser.TO_BINARY_DOUBLE - 1922)) | (1 << (PlSqlParser.TO_BINARY_FLOAT - 1922)) | (1 << (PlSqlParser.TO_BLOB - 1922)) | (1 << (PlSqlParser.TO_CLOB - 1922)) | (1 << (PlSqlParser.TO_DSINTERVAL - 1922)) | (1 << (PlSqlParser.TO_LOB - 1922)))) !== 0) || ((((_la - 1954)) & ~0x1f) == 0 && ((1 << (_la - 1954)) & ((1 << (PlSqlParser.TO_MULTI_BYTE - 1954)) | (1 << (PlSqlParser.TO_NCHAR - 1954)) | (1 << (PlSqlParser.TO_NCLOB - 1954)) | (1 << (PlSqlParser.TO_NUMBER - 1954)) | (1 << (PlSqlParser.TOPLEVEL - 1954)) | (1 << (PlSqlParser.TO_SINGLE_BYTE - 1954)) | (1 << (PlSqlParser.TO_TIMESTAMP - 1954)) | (1 << (PlSqlParser.TO_TIMESTAMP_TZ - 1954)) | (1 << (PlSqlParser.TO_TIME - 1954)) | (1 << (PlSqlParser.TO_TIME_TZ - 1954)) | (1 << (PlSqlParser.TO_YMINTERVAL - 1954)) | (1 << (PlSqlParser.TRACE - 1954)) | (1 << (PlSqlParser.TRACING - 1954)) | (1 << (PlSqlParser.TRACKING - 1954)) | (1 << (PlSqlParser.TRAILING - 1954)) | (1 << (PlSqlParser.TRANSACTION - 1954)) | (1 << (PlSqlParser.TRANSFORM_DISTINCT_AGG - 1954)) | (1 << (PlSqlParser.TRANSITIONAL - 1954)) | (1 << (PlSqlParser.TRANSITION - 1954)) | (1 << (PlSqlParser.TRANSLATE - 1954)) | (1 << (PlSqlParser.TRANSLATION - 1954)) | (1 << (PlSqlParser.TREAT - 1954)) | (1 << (PlSqlParser.TRIGGERS - 1954)) | (1 << (PlSqlParser.TRIGGER - 1954)) | (1 << (PlSqlParser.TRUE - 1954)) | (1 << (PlSqlParser.TRUNCATE - 1954)) | (1 << (PlSqlParser.TRUNC - 1954)) | (1 << (PlSqlParser.TRUSTED - 1954)) | (1 << (PlSqlParser.TRUST - 1954)) | (1 << (PlSqlParser.TUNING - 1954)) | (1 << (PlSqlParser.TX - 1954)))) !== 0) || ((((_la - 1986)) & ~0x1f) == 0 && ((1 << (_la - 1986)) & ((1 << (PlSqlParser.TYPES - 1986)) | (1 << (PlSqlParser.TYPE - 1986)) | (1 << (PlSqlParser.TZ_OFFSET - 1986)) | (1 << (PlSqlParser.UB2 - 1986)) | (1 << (PlSqlParser.UBA - 1986)) | (1 << (PlSqlParser.UCS2 - 1986)) | (1 << (PlSqlParser.UID - 1986)) | (1 << (PlSqlParser.UNARCHIVED - 1986)) | (1 << (PlSqlParser.UNBOUNDED - 1986)) | (1 << (PlSqlParser.UNBOUND - 1986)) | (1 << (PlSqlParser.UNCONDITIONAL - 1986)) | (1 << (PlSqlParser.UNDER - 1986)) | (1 << (PlSqlParser.UNDO - 1986)) | (1 << (PlSqlParser.UNDROP - 1986)) | (1 << (PlSqlParser.UNIFORM - 1986)) | (1 << (PlSqlParser.UNISTR - 1986)) | (1 << (PlSqlParser.UNLIMITED - 1986)) | (1 << (PlSqlParser.UNLOAD - 1986)) | (1 << (PlSqlParser.UNLOCK - 1986)) | (1 << (PlSqlParser.UNMATCHED - 1986)) | (1 << (PlSqlParser.UNNEST_INNERJ_DISTINCT_VIEW - 1986)) | (1 << (PlSqlParser.UNNEST_NOSEMIJ_NODISTINCTVIEW - 1986)) | (1 << (PlSqlParser.UNNEST_SEMIJ_VIEW - 1986)) | (1 << (PlSqlParser.UNNEST - 1986)) | (1 << (PlSqlParser.UNPACKED - 1986)) | (1 << (PlSqlParser.UNPIVOT - 1986)) | (1 << (PlSqlParser.UNPLUG - 1986)) | (1 << (PlSqlParser.UNPROTECTED - 1986)) | (1 << (PlSqlParser.UNQUIESCE - 1986)) | (1 << (PlSqlParser.UNRECOVERABLE - 1986)))) !== 0) || ((((_la - 2018)) & ~0x1f) == 0 && ((1 << (_la - 2018)) & ((1 << (PlSqlParser.UNRESTRICTED - 2018)) | (1 << (PlSqlParser.UNSUBSCRIBE - 2018)) | (1 << (PlSqlParser.UNTIL - 2018)) | (1 << (PlSqlParser.UNUSABLE - 2018)) | (1 << (PlSqlParser.UNUSED - 2018)) | (1 << (PlSqlParser.UPDATABLE - 2018)) | (1 << (PlSqlParser.UPDATED - 2018)) | (1 << (PlSqlParser.UPDATEXML - 2018)) | (1 << (PlSqlParser.UPD_INDEXES - 2018)) | (1 << (PlSqlParser.UPD_JOININDEX - 2018)) | (1 << (PlSqlParser.UPGRADE - 2018)) | (1 << (PlSqlParser.UPPER - 2018)) | (1 << (PlSqlParser.UPSERT - 2018)) | (1 << (PlSqlParser.UROWID - 2018)) | (1 << (PlSqlParser.USABLE - 2018)) | (1 << (PlSqlParser.USAGE - 2018)) | (1 << (PlSqlParser.USE_ANTI - 2018)) | (1 << (PlSqlParser.USE_CONCAT - 2018)) | (1 << (PlSqlParser.USE_CUBE - 2018)) | (1 << (PlSqlParser.USE_HASH_AGGREGATION - 2018)) | (1 << (PlSqlParser.USE_HASH_GBY_FOR_PUSHDOWN - 2018)) | (1 << (PlSqlParser.USE_HASH - 2018)) | (1 << (PlSqlParser.USE_HIDDEN_PARTITIONS - 2018)) | (1 << (PlSqlParser.USE_INVISIBLE_INDEXES - 2018)) | (1 << (PlSqlParser.USE_MERGE_CARTESIAN - 2018)) | (1 << (PlSqlParser.USE_MERGE - 2018)) | (1 << (PlSqlParser.USE_NL - 2018)) | (1 << (PlSqlParser.USE_NL_WITH_INDEX - 2018)) | (1 << (PlSqlParser.USE_PRIVATE_OUTLINES - 2018)) | (1 << (PlSqlParser.USER_DATA - 2018)) | (1 << (PlSqlParser.USER_DEFINED - 2018)))) !== 0) || ((((_la - 2050)) & ~0x1f) == 0 && ((1 << (_la - 2050)) & ((1 << (PlSqlParser.USERENV - 2050)) | (1 << (PlSqlParser.USERGROUP - 2050)) | (1 << (PlSqlParser.USER_RECYCLEBIN - 2050)) | (1 << (PlSqlParser.USERS - 2050)) | (1 << (PlSqlParser.USER_TABLESPACES - 2050)) | (1 << (PlSqlParser.USER - 2050)) | (1 << (PlSqlParser.USE_SEMI - 2050)) | (1 << (PlSqlParser.USE_STORED_OUTLINES - 2050)) | (1 << (PlSqlParser.USE_TTT_FOR_GSETS - 2050)) | (1 << (PlSqlParser.USE - 2050)) | (1 << (PlSqlParser.USE_VECTOR_AGGREGATION - 2050)) | (1 << (PlSqlParser.USE_WEAK_NAME_RESL - 2050)) | (1 << (PlSqlParser.USING_NO_EXPAND - 2050)) | (1 << (PlSqlParser.USING - 2050)) | (1 << (PlSqlParser.UTF16BE - 2050)) | (1 << (PlSqlParser.UTF16LE - 2050)) | (1 << (PlSqlParser.UTF32 - 2050)) | (1 << (PlSqlParser.UTF8 - 2050)) | (1 << (PlSqlParser.V1 - 2050)) | (1 << (PlSqlParser.V2 - 2050)) | (1 << (PlSqlParser.VALIDATE - 2050)) | (1 << (PlSqlParser.VALIDATION - 2050)) | (1 << (PlSqlParser.VALID_TIME_END - 2050)) | (1 << (PlSqlParser.VALUE - 2050)) | (1 << (PlSqlParser.VARCHAR2 - 2050)) | (1 << (PlSqlParser.VARCHAR - 2050)) | (1 << (PlSqlParser.VARIABLE - 2050)) | (1 << (PlSqlParser.VAR_POP - 2050)) | (1 << (PlSqlParser.VARRAYS - 2050)) | (1 << (PlSqlParser.VARRAY - 2050)) | (1 << (PlSqlParser.VAR_SAMP - 2050)))) !== 0) || ((((_la - 2082)) & ~0x1f) == 0 && ((1 << (_la - 2082)) & ((1 << (PlSqlParser.VARYING - 2082)) | (1 << (PlSqlParser.VECTOR_READ_TRACE - 2082)) | (1 << (PlSqlParser.VECTOR_READ - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM_DIMS - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM_FACT - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM - 2082)) | (1 << (PlSqlParser.VERIFIER - 2082)) | (1 << (PlSqlParser.VERIFY - 2082)) | (1 << (PlSqlParser.VERSIONING - 2082)) | (1 << (PlSqlParser.VERSIONS_ENDSCN - 2082)) | (1 << (PlSqlParser.VERSIONS_ENDTIME - 2082)) | (1 << (PlSqlParser.VERSIONS_OPERATION - 2082)) | (1 << (PlSqlParser.VERSIONS_STARTSCN - 2082)) | (1 << (PlSqlParser.VERSIONS_STARTTIME - 2082)) | (1 << (PlSqlParser.VERSIONS - 2082)) | (1 << (PlSqlParser.VERSIONS_XID - 2082)) | (1 << (PlSqlParser.VERSION - 2082)) | (1 << (PlSqlParser.VIOLATION - 2082)) | (1 << (PlSqlParser.VIRTUAL - 2082)) | (1 << (PlSqlParser.VISIBILITY - 2082)) | (1 << (PlSqlParser.VISIBLE - 2082)) | (1 << (PlSqlParser.VOLUME - 2082)) | (1 << (PlSqlParser.VSIZE - 2082)) | (1 << (PlSqlParser.WAIT - 2082)) | (1 << (PlSqlParser.WALLET - 2082)) | (1 << (PlSqlParser.WARNING - 2082)) | (1 << (PlSqlParser.WEEKS - 2082)) | (1 << (PlSqlParser.WEEK - 2082)) | (1 << (PlSqlParser.WELLFORMED - 2082)) | (1 << (PlSqlParser.WHENEVER - 2082)) | (1 << (PlSqlParser.WHEN - 2082)))) !== 0) || ((((_la - 2115)) & ~0x1f) == 0 && ((1 << (_la - 2115)) & ((1 << (PlSqlParser.WHILE - 2115)) | (1 << (PlSqlParser.WHITESPACE - 2115)) | (1 << (PlSqlParser.WIDTH_BUCKET - 2115)) | (1 << (PlSqlParser.WITHIN - 2115)) | (1 << (PlSqlParser.WITHOUT - 2115)) | (1 << (PlSqlParser.WITH_PLSQL - 2115)) | (1 << (PlSqlParser.WORK - 2115)) | (1 << (PlSqlParser.WRAPPED - 2115)) | (1 << (PlSqlParser.WRAPPER - 2115)) | (1 << (PlSqlParser.WRITE - 2115)) | (1 << (PlSqlParser.XDB_FASTPATH_INSERT - 2115)) | (1 << (PlSqlParser.X_DYN_PRUNE - 2115)) | (1 << (PlSqlParser.XID - 2115)) | (1 << (PlSqlParser.XML2OBJECT - 2115)) | (1 << (PlSqlParser.XMLAGG - 2115)) | (1 << (PlSqlParser.XMLATTRIBUTES - 2115)) | (1 << (PlSqlParser.XMLCAST - 2115)) | (1 << (PlSqlParser.XMLCDATA - 2115)) | (1 << (PlSqlParser.XMLCOLATTVAL - 2115)) | (1 << (PlSqlParser.XMLCOMMENT - 2115)) | (1 << (PlSqlParser.XMLCONCAT - 2115)) | (1 << (PlSqlParser.XMLDIFF - 2115)) | (1 << (PlSqlParser.XML_DML_RWT_STMT - 2115)) | (1 << (PlSqlParser.XMLELEMENT - 2115)) | (1 << (PlSqlParser.XMLEXISTS2 - 2115)) | (1 << (PlSqlParser.XMLEXISTS - 2115)) | (1 << (PlSqlParser.XMLFOREST - 2115)) | (1 << (PlSqlParser.XMLINDEX_REWRITE_IN_SELECT - 2115)) | (1 << (PlSqlParser.XMLINDEX_REWRITE - 2115)))) !== 0) || ((((_la - 2147)) & ~0x1f) == 0 && ((1 << (_la - 2147)) & ((1 << (PlSqlParser.XMLINDEX_SEL_IDX_TBL - 2147)) | (1 << (PlSqlParser.XMLISNODE - 2147)) | (1 << (PlSqlParser.XMLISVALID - 2147)) | (1 << (PlSqlParser.XMLNAMESPACES - 2147)) | (1 << (PlSqlParser.XMLPARSE - 2147)) | (1 << (PlSqlParser.XMLPATCH - 2147)) | (1 << (PlSqlParser.XMLPI - 2147)) | (1 << (PlSqlParser.XMLQUERYVAL - 2147)) | (1 << (PlSqlParser.XMLQUERY - 2147)) | (1 << (PlSqlParser.XMLROOT - 2147)) | (1 << (PlSqlParser.XMLSCHEMA - 2147)) | (1 << (PlSqlParser.XMLSERIALIZE - 2147)) | (1 << (PlSqlParser.XMLTABLE - 2147)) | (1 << (PlSqlParser.XMLTRANSFORMBLOB - 2147)) | (1 << (PlSqlParser.XMLTRANSFORM - 2147)) | (1 << (PlSqlParser.XMLTYPE - 2147)) | (1 << (PlSqlParser.XML - 2147)) | (1 << (PlSqlParser.XPATHTABLE - 2147)) | (1 << (PlSqlParser.XS_SYS_CONTEXT - 2147)) | (1 << (PlSqlParser.XS - 2147)) | (1 << (PlSqlParser.YEARS - 2147)) | (1 << (PlSqlParser.YEAR - 2147)) | (1 << (PlSqlParser.YES - 2147)) | (1 << (PlSqlParser.YMINTERVAL_UNCONSTRAINED - 2147)) | (1 << (PlSqlParser.ZONEMAP - 2147)) | (1 << (PlSqlParser.ZONE - 2147)) | (1 << (PlSqlParser.PREDICTION - 2147)) | (1 << (PlSqlParser.PREDICTION_BOUNDS - 2147)) | (1 << (PlSqlParser.PREDICTION_COST - 2147)) | (1 << (PlSqlParser.PREDICTION_DETAILS - 2147)) | (1 << (PlSqlParser.PREDICTION_PROBABILITY - 2147)))) !== 0) || ((((_la - 2179)) & ~0x1f) == 0 && ((1 << (_la - 2179)) & ((1 << (PlSqlParser.PREDICTION_SET - 2179)) | (1 << (PlSqlParser.CUME_DIST - 2179)) | (1 << (PlSqlParser.DENSE_RANK - 2179)) | (1 << (PlSqlParser.LISTAGG - 2179)) | (1 << (PlSqlParser.PERCENT_RANK - 2179)) | (1 << (PlSqlParser.PERCENTILE_CONT - 2179)) | (1 << (PlSqlParser.PERCENTILE_DISC - 2179)) | (1 << (PlSqlParser.RANK - 2179)) | (1 << (PlSqlParser.AVG - 2179)) | (1 << (PlSqlParser.CORR - 2179)) | (1 << (PlSqlParser.COVAR_ - 2179)) | (1 << (PlSqlParser.LAG - 2179)) | (1 << (PlSqlParser.LEAD - 2179)) | (1 << (PlSqlParser.MAX - 2179)) | (1 << (PlSqlParser.MEDIAN - 2179)) | (1 << (PlSqlParser.MIN - 2179)) | (1 << (PlSqlParser.NTILE - 2179)) | (1 << (PlSqlParser.NVL - 2179)) | (1 << (PlSqlParser.RATIO_TO_REPORT - 2179)) | (1 << (PlSqlParser.REGR_ - 2179)) | (1 << (PlSqlParser.ROUND - 2179)) | (1 << (PlSqlParser.ROW_NUMBER - 2179)) | (1 << (PlSqlParser.SUBSTR - 2179)) | (1 << (PlSqlParser.TO_CHAR - 2179)) | (1 << (PlSqlParser.TRIM - 2179)) | (1 << (PlSqlParser.SUM - 2179)) | (1 << (PlSqlParser.STDDEV - 2179)) | (1 << (PlSqlParser.VAR_ - 2179)) | (1 << (PlSqlParser.VARIANCE - 2179)) | (1 << (PlSqlParser.LEAST - 2179)) | (1 << (PlSqlParser.GREATEST - 2179)))) !== 0) || _la===PlSqlParser.TO_DATE || _la===PlSqlParser.PERIOD || _la===PlSqlParser.REGULAR_ID) {
+ this.state = 3045;
+ this.partition_name();
+ }
+
+ this.state = 3048;
+ this.match(PlSqlParser.VALUES);
+ this.state = 3049;
+ this.match(PlSqlParser.LESS);
+ this.state = 3050;
+ this.match(PlSqlParser.THAN);
+ this.state = 3051;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 3052;
+ this.literal();
+ this.state = 3057;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 3053;
+ this.match(PlSqlParser.COMMA);
+ this.state = 3054;
+ this.literal();
+ this.state = 3059;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 3060;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ this.state = 3062;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.FILESYSTEM_LIKE_LOGGING || _la===PlSqlParser.INITRANS || _la===PlSqlParser.LOGGING || _la===PlSqlParser.NOLOGGING || _la===PlSqlParser.PCTFREE || _la===PlSqlParser.PCTUSED || _la===PlSqlParser.STORAGE || _la===PlSqlParser.TABLESPACE) {
+ this.state = 3061;
+ this.segment_attributes_clause();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Local_partitioned_indexContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_local_partitioned_index;
+ return this;
+}
+
+Local_partitioned_indexContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Local_partitioned_indexContext.prototype.constructor = Local_partitioned_indexContext;
+
+Local_partitioned_indexContext.prototype.LOCAL = function() {
+ return this.getToken(PlSqlParser.LOCAL, 0);
+};
+
+Local_partitioned_indexContext.prototype.on_range_partitioned_table = function() {
+ return this.getTypedRuleContext(On_range_partitioned_tableContext,0);
+};
+
+Local_partitioned_indexContext.prototype.on_list_partitioned_table = function() {
+ return this.getTypedRuleContext(On_list_partitioned_tableContext,0);
+};
+
+Local_partitioned_indexContext.prototype.on_hash_partitioned_table = function() {
+ return this.getTypedRuleContext(On_hash_partitioned_tableContext,0);
+};
+
+Local_partitioned_indexContext.prototype.on_comp_partitioned_table = function() {
+ return this.getTypedRuleContext(On_comp_partitioned_tableContext,0);
+};
+
+Local_partitioned_indexContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterLocal_partitioned_index(this);
+ }
+};
+
+Local_partitioned_indexContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitLocal_partitioned_index(this);
+ }
+};
+
+Local_partitioned_indexContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitLocal_partitioned_index(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Local_partitioned_indexContext = Local_partitioned_indexContext;
+
+PlSqlParser.prototype.local_partitioned_index = function() {
+
+ var localctx = new Local_partitioned_indexContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 206, PlSqlParser.RULE_local_partitioned_index);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3064;
+ this.match(PlSqlParser.LOCAL);
+ this.state = 3069;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,231,this._ctx);
+ if(la_===1) {
+ this.state = 3065;
+ this.on_range_partitioned_table();
+
+ } else if(la_===2) {
+ this.state = 3066;
+ this.on_list_partitioned_table();
+
+ } else if(la_===3) {
+ this.state = 3067;
+ this.on_hash_partitioned_table();
+
+ } else if(la_===4) {
+ this.state = 3068;
+ this.on_comp_partitioned_table();
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function On_range_partitioned_tableContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_on_range_partitioned_table;
+ return this;
+}
+
+On_range_partitioned_tableContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+On_range_partitioned_tableContext.prototype.constructor = On_range_partitioned_tableContext;
+
+On_range_partitioned_tableContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+On_range_partitioned_tableContext.prototype.partitioned_table = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Partitioned_tableContext);
+ } else {
+ return this.getTypedRuleContext(Partitioned_tableContext,i);
+ }
+};
+
+On_range_partitioned_tableContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+On_range_partitioned_tableContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+On_range_partitioned_tableContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterOn_range_partitioned_table(this);
+ }
+};
+
+On_range_partitioned_tableContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitOn_range_partitioned_table(this);
+ }
+};
+
+On_range_partitioned_tableContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitOn_range_partitioned_table(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.On_range_partitioned_tableContext = On_range_partitioned_tableContext;
+
+PlSqlParser.prototype.on_range_partitioned_table = function() {
+
+ var localctx = new On_range_partitioned_tableContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 208, PlSqlParser.RULE_on_range_partitioned_table);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3071;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 3072;
+ this.partitioned_table();
+ this.state = 3077;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 3073;
+ this.match(PlSqlParser.COMMA);
+ this.state = 3074;
+ this.partitioned_table();
+ this.state = 3079;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 3080;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function On_list_partitioned_tableContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_on_list_partitioned_table;
+ return this;
+}
+
+On_list_partitioned_tableContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+On_list_partitioned_tableContext.prototype.constructor = On_list_partitioned_tableContext;
+
+On_list_partitioned_tableContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+On_list_partitioned_tableContext.prototype.partitioned_table = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Partitioned_tableContext);
+ } else {
+ return this.getTypedRuleContext(Partitioned_tableContext,i);
+ }
+};
+
+On_list_partitioned_tableContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+On_list_partitioned_tableContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+On_list_partitioned_tableContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterOn_list_partitioned_table(this);
+ }
+};
+
+On_list_partitioned_tableContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitOn_list_partitioned_table(this);
+ }
+};
+
+On_list_partitioned_tableContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitOn_list_partitioned_table(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.On_list_partitioned_tableContext = On_list_partitioned_tableContext;
+
+PlSqlParser.prototype.on_list_partitioned_table = function() {
+
+ var localctx = new On_list_partitioned_tableContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 210, PlSqlParser.RULE_on_list_partitioned_table);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3082;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 3083;
+ this.partitioned_table();
+ this.state = 3088;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 3084;
+ this.match(PlSqlParser.COMMA);
+ this.state = 3085;
+ this.partitioned_table();
+ this.state = 3090;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 3091;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Partitioned_tableContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_partitioned_table;
+ return this;
+}
+
+Partitioned_tableContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Partitioned_tableContext.prototype.constructor = Partitioned_tableContext;
+
+Partitioned_tableContext.prototype.PARTITION = function() {
+ return this.getToken(PlSqlParser.PARTITION, 0);
+};
+
+Partitioned_tableContext.prototype.partition_name = function() {
+ return this.getTypedRuleContext(Partition_nameContext,0);
+};
+
+Partitioned_tableContext.prototype.segment_attributes_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Segment_attributes_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Segment_attributes_clauseContext,i);
+ }
+};
+
+Partitioned_tableContext.prototype.key_compression = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Key_compressionContext);
+ } else {
+ return this.getTypedRuleContext(Key_compressionContext,i);
+ }
+};
+
+Partitioned_tableContext.prototype.UNUSABLE = function() {
+ return this.getToken(PlSqlParser.UNUSABLE, 0);
+};
+
+Partitioned_tableContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterPartitioned_table(this);
+ }
+};
+
+Partitioned_tableContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitPartitioned_table(this);
+ }
+};
+
+Partitioned_tableContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitPartitioned_table(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Partitioned_tableContext = Partitioned_tableContext;
+
+PlSqlParser.prototype.partitioned_table = function() {
+
+ var localctx = new Partitioned_tableContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 212, PlSqlParser.RULE_partitioned_table);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3093;
+ this.match(PlSqlParser.PARTITION);
+ this.state = 3095;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,234,this._ctx);
+ if(la_===1) {
+ this.state = 3094;
+ this.partition_name();
+
+ }
+ this.state = 3101;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMPRESS || _la===PlSqlParser.FILESYSTEM_LIKE_LOGGING || _la===PlSqlParser.INITRANS || _la===PlSqlParser.LOGGING || _la===PlSqlParser.NOCOMPRESS || _la===PlSqlParser.NOLOGGING || _la===PlSqlParser.PCTFREE || _la===PlSqlParser.PCTUSED || _la===PlSqlParser.STORAGE || _la===PlSqlParser.TABLESPACE) {
+ this.state = 3099;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.FILESYSTEM_LIKE_LOGGING:
+ case PlSqlParser.INITRANS:
+ case PlSqlParser.LOGGING:
+ case PlSqlParser.NOLOGGING:
+ case PlSqlParser.PCTFREE:
+ case PlSqlParser.PCTUSED:
+ case PlSqlParser.STORAGE:
+ case PlSqlParser.TABLESPACE:
+ this.state = 3097;
+ this.segment_attributes_clause();
+ break;
+ case PlSqlParser.COMPRESS:
+ case PlSqlParser.NOCOMPRESS:
+ this.state = 3098;
+ this.key_compression();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 3103;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 3105;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.UNUSABLE) {
+ this.state = 3104;
+ this.match(PlSqlParser.UNUSABLE);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function On_hash_partitioned_tableContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_on_hash_partitioned_table;
+ return this;
+}
+
+On_hash_partitioned_tableContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+On_hash_partitioned_tableContext.prototype.constructor = On_hash_partitioned_tableContext;
+
+On_hash_partitioned_tableContext.prototype.STORE = function() {
+ return this.getToken(PlSqlParser.STORE, 0);
+};
+
+On_hash_partitioned_tableContext.prototype.IN = function() {
+ return this.getToken(PlSqlParser.IN, 0);
+};
+
+On_hash_partitioned_tableContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+On_hash_partitioned_tableContext.prototype.tablespace = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(TablespaceContext);
+ } else {
+ return this.getTypedRuleContext(TablespaceContext,i);
+ }
+};
+
+On_hash_partitioned_tableContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+On_hash_partitioned_tableContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+On_hash_partitioned_tableContext.prototype.on_hash_partitioned_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(On_hash_partitioned_clauseContext);
+ } else {
+ return this.getTypedRuleContext(On_hash_partitioned_clauseContext,i);
+ }
+};
+
+On_hash_partitioned_tableContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterOn_hash_partitioned_table(this);
+ }
+};
+
+On_hash_partitioned_tableContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitOn_hash_partitioned_table(this);
+ }
+};
+
+On_hash_partitioned_tableContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitOn_hash_partitioned_table(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.On_hash_partitioned_tableContext = On_hash_partitioned_tableContext;
+
+PlSqlParser.prototype.on_hash_partitioned_table = function() {
+
+ var localctx = new On_hash_partitioned_tableContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 214, PlSqlParser.RULE_on_hash_partitioned_table);
+ var _la = 0; // Token type
+ try {
+ this.state = 3131;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.STORE:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3107;
+ this.match(PlSqlParser.STORE);
+ this.state = 3108;
+ this.match(PlSqlParser.IN);
+ this.state = 3109;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 3110;
+ this.tablespace();
+ this.state = 3115;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 3111;
+ this.match(PlSqlParser.COMMA);
+ this.state = 3112;
+ this.tablespace();
+ this.state = 3117;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 3118;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ break;
+ case PlSqlParser.LEFT_PAREN:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 3120;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 3121;
+ this.on_hash_partitioned_clause();
+ this.state = 3126;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 3122;
+ this.match(PlSqlParser.COMMA);
+ this.state = 3123;
+ this.on_hash_partitioned_clause();
+ this.state = 3128;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 3129;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function On_hash_partitioned_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_on_hash_partitioned_clause;
+ return this;
+}
+
+On_hash_partitioned_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+On_hash_partitioned_clauseContext.prototype.constructor = On_hash_partitioned_clauseContext;
+
+On_hash_partitioned_clauseContext.prototype.PARTITION = function() {
+ return this.getToken(PlSqlParser.PARTITION, 0);
+};
+
+On_hash_partitioned_clauseContext.prototype.partition_name = function() {
+ return this.getTypedRuleContext(Partition_nameContext,0);
+};
+
+On_hash_partitioned_clauseContext.prototype.TABLESPACE = function() {
+ return this.getToken(PlSqlParser.TABLESPACE, 0);
+};
+
+On_hash_partitioned_clauseContext.prototype.tablespace = function() {
+ return this.getTypedRuleContext(TablespaceContext,0);
+};
+
+On_hash_partitioned_clauseContext.prototype.key_compression = function() {
+ return this.getTypedRuleContext(Key_compressionContext,0);
+};
+
+On_hash_partitioned_clauseContext.prototype.UNUSABLE = function() {
+ return this.getToken(PlSqlParser.UNUSABLE, 0);
+};
+
+On_hash_partitioned_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterOn_hash_partitioned_clause(this);
+ }
+};
+
+On_hash_partitioned_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitOn_hash_partitioned_clause(this);
+ }
+};
+
+On_hash_partitioned_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitOn_hash_partitioned_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.On_hash_partitioned_clauseContext = On_hash_partitioned_clauseContext;
+
+PlSqlParser.prototype.on_hash_partitioned_clause = function() {
+
+ var localctx = new On_hash_partitioned_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 216, PlSqlParser.RULE_on_hash_partitioned_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3133;
+ this.match(PlSqlParser.PARTITION);
+ this.state = 3135;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,241,this._ctx);
+ if(la_===1) {
+ this.state = 3134;
+ this.partition_name();
+
+ }
+ this.state = 3139;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.TABLESPACE) {
+ this.state = 3137;
+ this.match(PlSqlParser.TABLESPACE);
+ this.state = 3138;
+ this.tablespace();
+ }
+
+ this.state = 3142;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.COMPRESS || _la===PlSqlParser.NOCOMPRESS) {
+ this.state = 3141;
+ this.key_compression();
+ }
+
+ this.state = 3145;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.UNUSABLE) {
+ this.state = 3144;
+ this.match(PlSqlParser.UNUSABLE);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function On_comp_partitioned_tableContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_on_comp_partitioned_table;
+ return this;
+}
+
+On_comp_partitioned_tableContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+On_comp_partitioned_tableContext.prototype.constructor = On_comp_partitioned_tableContext;
+
+On_comp_partitioned_tableContext.prototype.LEFT_PAREN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.LEFT_PAREN);
+ } else {
+ return this.getToken(PlSqlParser.LEFT_PAREN, i);
+ }
+};
+
+
+On_comp_partitioned_tableContext.prototype.on_comp_partitioned_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(On_comp_partitioned_clauseContext);
+ } else {
+ return this.getTypedRuleContext(On_comp_partitioned_clauseContext,i);
+ }
+};
+
+On_comp_partitioned_tableContext.prototype.RIGHT_PAREN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.RIGHT_PAREN);
+ } else {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, i);
+ }
+};
+
+
+On_comp_partitioned_tableContext.prototype.STORE = function() {
+ return this.getToken(PlSqlParser.STORE, 0);
+};
+
+On_comp_partitioned_tableContext.prototype.IN = function() {
+ return this.getToken(PlSqlParser.IN, 0);
+};
+
+On_comp_partitioned_tableContext.prototype.tablespace = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(TablespaceContext);
+ } else {
+ return this.getTypedRuleContext(TablespaceContext,i);
+ }
+};
+
+On_comp_partitioned_tableContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+On_comp_partitioned_tableContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterOn_comp_partitioned_table(this);
+ }
+};
+
+On_comp_partitioned_tableContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitOn_comp_partitioned_table(this);
+ }
+};
+
+On_comp_partitioned_tableContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitOn_comp_partitioned_table(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.On_comp_partitioned_tableContext = On_comp_partitioned_tableContext;
+
+PlSqlParser.prototype.on_comp_partitioned_table = function() {
+
+ var localctx = new On_comp_partitioned_tableContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 218, PlSqlParser.RULE_on_comp_partitioned_table);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3160;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.STORE) {
+ this.state = 3147;
+ this.match(PlSqlParser.STORE);
+ this.state = 3148;
+ this.match(PlSqlParser.IN);
+ this.state = 3149;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 3150;
+ this.tablespace();
+ this.state = 3155;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 3151;
+ this.match(PlSqlParser.COMMA);
+ this.state = 3152;
+ this.tablespace();
+ this.state = 3157;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 3158;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ }
+
+ this.state = 3162;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 3163;
+ this.on_comp_partitioned_clause();
+ this.state = 3168;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 3164;
+ this.match(PlSqlParser.COMMA);
+ this.state = 3165;
+ this.on_comp_partitioned_clause();
+ this.state = 3170;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 3171;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function On_comp_partitioned_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_on_comp_partitioned_clause;
+ return this;
+}
+
+On_comp_partitioned_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+On_comp_partitioned_clauseContext.prototype.constructor = On_comp_partitioned_clauseContext;
+
+On_comp_partitioned_clauseContext.prototype.PARTITION = function() {
+ return this.getToken(PlSqlParser.PARTITION, 0);
+};
+
+On_comp_partitioned_clauseContext.prototype.UNUSABLE = function() {
+ return this.getToken(PlSqlParser.UNUSABLE, 0);
+};
+
+On_comp_partitioned_clauseContext.prototype.partition_name = function() {
+ return this.getTypedRuleContext(Partition_nameContext,0);
+};
+
+On_comp_partitioned_clauseContext.prototype.segment_attributes_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Segment_attributes_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Segment_attributes_clauseContext,i);
+ }
+};
+
+On_comp_partitioned_clauseContext.prototype.key_compression = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Key_compressionContext);
+ } else {
+ return this.getTypedRuleContext(Key_compressionContext,i);
+ }
+};
+
+On_comp_partitioned_clauseContext.prototype.index_subpartition_clause = function() {
+ return this.getTypedRuleContext(Index_subpartition_clauseContext,0);
+};
+
+On_comp_partitioned_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterOn_comp_partitioned_clause(this);
+ }
+};
+
+On_comp_partitioned_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitOn_comp_partitioned_clause(this);
+ }
+};
+
+On_comp_partitioned_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitOn_comp_partitioned_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.On_comp_partitioned_clauseContext = On_comp_partitioned_clauseContext;
+
+PlSqlParser.prototype.on_comp_partitioned_clause = function() {
+
+ var localctx = new On_comp_partitioned_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 220, PlSqlParser.RULE_on_comp_partitioned_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3173;
+ this.match(PlSqlParser.PARTITION);
+ this.state = 3175;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,248,this._ctx);
+ if(la_===1) {
+ this.state = 3174;
+ this.partition_name();
+
+ }
+ this.state = 3181;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMPRESS || _la===PlSqlParser.FILESYSTEM_LIKE_LOGGING || _la===PlSqlParser.INITRANS || _la===PlSqlParser.LOGGING || _la===PlSqlParser.NOCOMPRESS || _la===PlSqlParser.NOLOGGING || _la===PlSqlParser.PCTFREE || _la===PlSqlParser.PCTUSED || _la===PlSqlParser.STORAGE || _la===PlSqlParser.TABLESPACE) {
+ this.state = 3179;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.FILESYSTEM_LIKE_LOGGING:
+ case PlSqlParser.INITRANS:
+ case PlSqlParser.LOGGING:
+ case PlSqlParser.NOLOGGING:
+ case PlSqlParser.PCTFREE:
+ case PlSqlParser.PCTUSED:
+ case PlSqlParser.STORAGE:
+ case PlSqlParser.TABLESPACE:
+ this.state = 3177;
+ this.segment_attributes_clause();
+ break;
+ case PlSqlParser.COMPRESS:
+ case PlSqlParser.NOCOMPRESS:
+ this.state = 3178;
+ this.key_compression();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 3183;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 3184;
+ this.match(PlSqlParser.UNUSABLE);
+ this.state = 3186;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.STORE || _la===PlSqlParser.LEFT_PAREN) {
+ this.state = 3185;
+ this.index_subpartition_clause();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Index_subpartition_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_index_subpartition_clause;
+ return this;
+}
+
+Index_subpartition_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Index_subpartition_clauseContext.prototype.constructor = Index_subpartition_clauseContext;
+
+Index_subpartition_clauseContext.prototype.STORE = function() {
+ return this.getToken(PlSqlParser.STORE, 0);
+};
+
+Index_subpartition_clauseContext.prototype.IN = function() {
+ return this.getToken(PlSqlParser.IN, 0);
+};
+
+Index_subpartition_clauseContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Index_subpartition_clauseContext.prototype.tablespace = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(TablespaceContext);
+ } else {
+ return this.getTypedRuleContext(TablespaceContext,i);
+ }
+};
+
+Index_subpartition_clauseContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Index_subpartition_clauseContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Index_subpartition_clauseContext.prototype.index_subpartition_subclause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Index_subpartition_subclauseContext);
+ } else {
+ return this.getTypedRuleContext(Index_subpartition_subclauseContext,i);
+ }
+};
+
+Index_subpartition_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterIndex_subpartition_clause(this);
+ }
+};
+
+Index_subpartition_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitIndex_subpartition_clause(this);
+ }
+};
+
+Index_subpartition_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitIndex_subpartition_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Index_subpartition_clauseContext = Index_subpartition_clauseContext;
+
+PlSqlParser.prototype.index_subpartition_clause = function() {
+
+ var localctx = new Index_subpartition_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 222, PlSqlParser.RULE_index_subpartition_clause);
+ var _la = 0; // Token type
+ try {
+ this.state = 3212;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.STORE:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3188;
+ this.match(PlSqlParser.STORE);
+ this.state = 3189;
+ this.match(PlSqlParser.IN);
+ this.state = 3190;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 3191;
+ this.tablespace();
+ this.state = 3196;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 3192;
+ this.match(PlSqlParser.COMMA);
+ this.state = 3193;
+ this.tablespace();
+ this.state = 3198;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 3199;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ break;
+ case PlSqlParser.LEFT_PAREN:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 3201;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 3202;
+ this.index_subpartition_subclause();
+ this.state = 3207;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 3203;
+ this.match(PlSqlParser.COMMA);
+ this.state = 3204;
+ this.index_subpartition_subclause();
+ this.state = 3209;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 3210;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Index_subpartition_subclauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_index_subpartition_subclause;
+ return this;
+}
+
+Index_subpartition_subclauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Index_subpartition_subclauseContext.prototype.constructor = Index_subpartition_subclauseContext;
+
+Index_subpartition_subclauseContext.prototype.SUBPARTITION = function() {
+ return this.getToken(PlSqlParser.SUBPARTITION, 0);
+};
+
+Index_subpartition_subclauseContext.prototype.subpartition_name = function() {
+ return this.getTypedRuleContext(Subpartition_nameContext,0);
+};
+
+Index_subpartition_subclauseContext.prototype.TABLESPACE = function() {
+ return this.getToken(PlSqlParser.TABLESPACE, 0);
+};
+
+Index_subpartition_subclauseContext.prototype.tablespace = function() {
+ return this.getTypedRuleContext(TablespaceContext,0);
+};
+
+Index_subpartition_subclauseContext.prototype.key_compression = function() {
+ return this.getTypedRuleContext(Key_compressionContext,0);
+};
+
+Index_subpartition_subclauseContext.prototype.UNUSABLE = function() {
+ return this.getToken(PlSqlParser.UNUSABLE, 0);
+};
+
+Index_subpartition_subclauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterIndex_subpartition_subclause(this);
+ }
+};
+
+Index_subpartition_subclauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitIndex_subpartition_subclause(this);
+ }
+};
+
+Index_subpartition_subclauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitIndex_subpartition_subclause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Index_subpartition_subclauseContext = Index_subpartition_subclauseContext;
+
+PlSqlParser.prototype.index_subpartition_subclause = function() {
+
+ var localctx = new Index_subpartition_subclauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 224, PlSqlParser.RULE_index_subpartition_subclause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3214;
+ this.match(PlSqlParser.SUBPARTITION);
+ this.state = 3216;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,255,this._ctx);
+ if(la_===1) {
+ this.state = 3215;
+ this.subpartition_name();
+
+ }
+ this.state = 3220;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.TABLESPACE) {
+ this.state = 3218;
+ this.match(PlSqlParser.TABLESPACE);
+ this.state = 3219;
+ this.tablespace();
+ }
+
+ this.state = 3223;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.COMPRESS || _la===PlSqlParser.NOCOMPRESS) {
+ this.state = 3222;
+ this.key_compression();
+ }
+
+ this.state = 3226;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.UNUSABLE) {
+ this.state = 3225;
+ this.match(PlSqlParser.UNUSABLE);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Odci_parametersContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_odci_parameters;
+ return this;
+}
+
+Odci_parametersContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Odci_parametersContext.prototype.constructor = Odci_parametersContext;
+
+Odci_parametersContext.prototype.CHAR_STRING = function() {
+ return this.getToken(PlSqlParser.CHAR_STRING, 0);
+};
+
+Odci_parametersContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterOdci_parameters(this);
+ }
+};
+
+Odci_parametersContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitOdci_parameters(this);
+ }
+};
+
+Odci_parametersContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitOdci_parameters(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Odci_parametersContext = Odci_parametersContext;
+
+PlSqlParser.prototype.odci_parameters = function() {
+
+ var localctx = new Odci_parametersContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 226, PlSqlParser.RULE_odci_parameters);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3228;
+ this.match(PlSqlParser.CHAR_STRING);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function IndextypeContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_indextype;
+ return this;
+}
+
+IndextypeContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+IndextypeContext.prototype.constructor = IndextypeContext;
+
+IndextypeContext.prototype.id_expression = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Id_expressionContext);
+ } else {
+ return this.getTypedRuleContext(Id_expressionContext,i);
+ }
+};
+
+IndextypeContext.prototype.PERIOD = function() {
+ return this.getToken(PlSqlParser.PERIOD, 0);
+};
+
+IndextypeContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterIndextype(this);
+ }
+};
+
+IndextypeContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitIndextype(this);
+ }
+};
+
+IndextypeContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitIndextype(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.IndextypeContext = IndextypeContext;
+
+PlSqlParser.prototype.indextype = function() {
+
+ var localctx = new IndextypeContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 228, PlSqlParser.RULE_indextype);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3233;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,259,this._ctx);
+ if(la_===1) {
+ this.state = 3230;
+ this.id_expression();
+ this.state = 3231;
+ this.match(PlSqlParser.PERIOD);
+
+ }
+ this.state = 3235;
+ this.id_expression();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Alter_indexContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_alter_index;
+ return this;
+}
+
+Alter_indexContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Alter_indexContext.prototype.constructor = Alter_indexContext;
+
+Alter_indexContext.prototype.ALTER = function() {
+ return this.getToken(PlSqlParser.ALTER, 0);
+};
+
+Alter_indexContext.prototype.INDEX = function() {
+ return this.getToken(PlSqlParser.INDEX, 0);
+};
+
+Alter_indexContext.prototype.index_name = function() {
+ return this.getTypedRuleContext(Index_nameContext,0);
+};
+
+Alter_indexContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Alter_indexContext.prototype.alter_index_ops_set1 = function() {
+ return this.getTypedRuleContext(Alter_index_ops_set1Context,0);
+};
+
+Alter_indexContext.prototype.alter_index_ops_set2 = function() {
+ return this.getTypedRuleContext(Alter_index_ops_set2Context,0);
+};
+
+Alter_indexContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAlter_index(this);
+ }
+};
+
+Alter_indexContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAlter_index(this);
+ }
+};
+
+Alter_indexContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAlter_index(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Alter_indexContext = Alter_indexContext;
+
+PlSqlParser.prototype.alter_index = function() {
+
+ var localctx = new Alter_indexContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 230, PlSqlParser.RULE_alter_index);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3237;
+ this.match(PlSqlParser.ALTER);
+ this.state = 3238;
+ this.match(PlSqlParser.INDEX);
+ this.state = 3239;
+ this.index_name();
+ this.state = 3242;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.ALLOCATE:
+ case PlSqlParser.DEALLOCATE:
+ case PlSqlParser.FILESYSTEM_LIKE_LOGGING:
+ case PlSqlParser.INITRANS:
+ case PlSqlParser.LOGGING:
+ case PlSqlParser.NOLOGGING:
+ case PlSqlParser.NOPARALLEL:
+ case PlSqlParser.PARALLEL:
+ case PlSqlParser.PCTFREE:
+ case PlSqlParser.PCTUSED:
+ case PlSqlParser.SHRINK:
+ case PlSqlParser.STORAGE:
+ this.state = 3240;
+ this.alter_index_ops_set1();
+ break;
+ case PlSqlParser.ADD:
+ case PlSqlParser.COALESCE:
+ case PlSqlParser.COMPILE:
+ case PlSqlParser.DISABLE:
+ case PlSqlParser.DROP:
+ case PlSqlParser.ENABLE:
+ case PlSqlParser.INVISIBLE:
+ case PlSqlParser.MODIFY:
+ case PlSqlParser.MONITORING:
+ case PlSqlParser.NOMONITORING:
+ case PlSqlParser.PARAMETERS:
+ case PlSqlParser.REBUILD:
+ case PlSqlParser.RENAME:
+ case PlSqlParser.SPLIT:
+ case PlSqlParser.UNUSABLE:
+ case PlSqlParser.UPDATE:
+ case PlSqlParser.VISIBLE:
+ this.state = 3241;
+ this.alter_index_ops_set2();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 3244;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Alter_index_ops_set1Context(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_alter_index_ops_set1;
+ return this;
+}
+
+Alter_index_ops_set1Context.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Alter_index_ops_set1Context.prototype.constructor = Alter_index_ops_set1Context;
+
+Alter_index_ops_set1Context.prototype.deallocate_unused_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Deallocate_unused_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Deallocate_unused_clauseContext,i);
+ }
+};
+
+Alter_index_ops_set1Context.prototype.allocate_extent_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Allocate_extent_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Allocate_extent_clauseContext,i);
+ }
+};
+
+Alter_index_ops_set1Context.prototype.shrink_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Shrink_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Shrink_clauseContext,i);
+ }
+};
+
+Alter_index_ops_set1Context.prototype.parallel_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Parallel_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Parallel_clauseContext,i);
+ }
+};
+
+Alter_index_ops_set1Context.prototype.physical_attributes_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Physical_attributes_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Physical_attributes_clauseContext,i);
+ }
+};
+
+Alter_index_ops_set1Context.prototype.logging_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Logging_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Logging_clauseContext,i);
+ }
+};
+
+Alter_index_ops_set1Context.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAlter_index_ops_set1(this);
+ }
+};
+
+Alter_index_ops_set1Context.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAlter_index_ops_set1(this);
+ }
+};
+
+Alter_index_ops_set1Context.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAlter_index_ops_set1(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Alter_index_ops_set1Context = Alter_index_ops_set1Context;
+
+PlSqlParser.prototype.alter_index_ops_set1 = function() {
+
+ var localctx = new Alter_index_ops_set1Context(this, this._ctx, this.state);
+ this.enterRule(localctx, 232, PlSqlParser.RULE_alter_index_ops_set1);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3252;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 3252;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.DEALLOCATE:
+ this.state = 3246;
+ this.deallocate_unused_clause();
+ break;
+ case PlSqlParser.ALLOCATE:
+ this.state = 3247;
+ this.allocate_extent_clause();
+ break;
+ case PlSqlParser.SHRINK:
+ this.state = 3248;
+ this.shrink_clause();
+ break;
+ case PlSqlParser.NOPARALLEL:
+ case PlSqlParser.PARALLEL:
+ this.state = 3249;
+ this.parallel_clause();
+ break;
+ case PlSqlParser.INITRANS:
+ case PlSqlParser.PCTFREE:
+ case PlSqlParser.PCTUSED:
+ case PlSqlParser.STORAGE:
+ this.state = 3250;
+ this.physical_attributes_clause();
+ break;
+ case PlSqlParser.FILESYSTEM_LIKE_LOGGING:
+ case PlSqlParser.LOGGING:
+ case PlSqlParser.NOLOGGING:
+ this.state = 3251;
+ this.logging_clause();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 3254;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(_la===PlSqlParser.ALLOCATE || _la===PlSqlParser.DEALLOCATE || _la===PlSqlParser.FILESYSTEM_LIKE_LOGGING || _la===PlSqlParser.INITRANS || _la===PlSqlParser.LOGGING || _la===PlSqlParser.NOLOGGING || _la===PlSqlParser.NOPARALLEL || _la===PlSqlParser.PARALLEL || _la===PlSqlParser.PCTFREE || _la===PlSqlParser.PCTUSED || _la===PlSqlParser.SHRINK || _la===PlSqlParser.STORAGE);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Alter_index_ops_set2Context(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_alter_index_ops_set2;
+ return this;
+}
+
+Alter_index_ops_set2Context.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Alter_index_ops_set2Context.prototype.constructor = Alter_index_ops_set2Context;
+
+Alter_index_ops_set2Context.prototype.rebuild_clause = function() {
+ return this.getTypedRuleContext(Rebuild_clauseContext,0);
+};
+
+Alter_index_ops_set2Context.prototype.PARAMETERS = function() {
+ return this.getToken(PlSqlParser.PARAMETERS, 0);
+};
+
+Alter_index_ops_set2Context.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Alter_index_ops_set2Context.prototype.odci_parameters = function() {
+ return this.getTypedRuleContext(Odci_parametersContext,0);
+};
+
+Alter_index_ops_set2Context.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Alter_index_ops_set2Context.prototype.COMPILE = function() {
+ return this.getToken(PlSqlParser.COMPILE, 0);
+};
+
+Alter_index_ops_set2Context.prototype.enable_or_disable = function() {
+ return this.getTypedRuleContext(Enable_or_disableContext,0);
+};
+
+Alter_index_ops_set2Context.prototype.UNUSABLE = function() {
+ return this.getToken(PlSqlParser.UNUSABLE, 0);
+};
+
+Alter_index_ops_set2Context.prototype.visible_or_invisible = function() {
+ return this.getTypedRuleContext(Visible_or_invisibleContext,0);
+};
+
+Alter_index_ops_set2Context.prototype.RENAME = function() {
+ return this.getToken(PlSqlParser.RENAME, 0);
+};
+
+Alter_index_ops_set2Context.prototype.TO = function() {
+ return this.getToken(PlSqlParser.TO, 0);
+};
+
+Alter_index_ops_set2Context.prototype.new_index_name = function() {
+ return this.getTypedRuleContext(New_index_nameContext,0);
+};
+
+Alter_index_ops_set2Context.prototype.COALESCE = function() {
+ return this.getToken(PlSqlParser.COALESCE, 0);
+};
+
+Alter_index_ops_set2Context.prototype.monitoring_nomonitoring = function() {
+ return this.getTypedRuleContext(Monitoring_nomonitoringContext,0);
+};
+
+Alter_index_ops_set2Context.prototype.USAGE = function() {
+ return this.getToken(PlSqlParser.USAGE, 0);
+};
+
+Alter_index_ops_set2Context.prototype.UPDATE = function() {
+ return this.getToken(PlSqlParser.UPDATE, 0);
+};
+
+Alter_index_ops_set2Context.prototype.BLOCK = function() {
+ return this.getToken(PlSqlParser.BLOCK, 0);
+};
+
+Alter_index_ops_set2Context.prototype.REFERENCES = function() {
+ return this.getToken(PlSqlParser.REFERENCES, 0);
+};
+
+Alter_index_ops_set2Context.prototype.alter_index_partitioning = function() {
+ return this.getTypedRuleContext(Alter_index_partitioningContext,0);
+};
+
+Alter_index_ops_set2Context.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAlter_index_ops_set2(this);
+ }
+};
+
+Alter_index_ops_set2Context.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAlter_index_ops_set2(this);
+ }
+};
+
+Alter_index_ops_set2Context.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAlter_index_ops_set2(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Alter_index_ops_set2Context = Alter_index_ops_set2Context;
+
+PlSqlParser.prototype.alter_index_ops_set2 = function() {
+
+ var localctx = new Alter_index_ops_set2Context(this, this._ctx, this.state);
+ this.enterRule(localctx, 234, PlSqlParser.RULE_alter_index_ops_set2);
+ try {
+ this.state = 3277;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,263,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3256;
+ this.rebuild_clause();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 3257;
+ this.match(PlSqlParser.PARAMETERS);
+ this.state = 3258;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 3259;
+ this.odci_parameters();
+ this.state = 3260;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 3262;
+ this.match(PlSqlParser.COMPILE);
+ break;
+
+ case 4:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 3263;
+ this.enable_or_disable();
+ break;
+
+ case 5:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 3264;
+ this.match(PlSqlParser.UNUSABLE);
+ break;
+
+ case 6:
+ this.enterOuterAlt(localctx, 6);
+ this.state = 3265;
+ this.visible_or_invisible();
+ break;
+
+ case 7:
+ this.enterOuterAlt(localctx, 7);
+ this.state = 3266;
+ this.match(PlSqlParser.RENAME);
+ this.state = 3267;
+ this.match(PlSqlParser.TO);
+ this.state = 3268;
+ this.new_index_name();
+ break;
+
+ case 8:
+ this.enterOuterAlt(localctx, 8);
+ this.state = 3269;
+ this.match(PlSqlParser.COALESCE);
+ break;
+
+ case 9:
+ this.enterOuterAlt(localctx, 9);
+ this.state = 3270;
+ this.monitoring_nomonitoring();
+ this.state = 3271;
+ this.match(PlSqlParser.USAGE);
+ break;
+
+ case 10:
+ this.enterOuterAlt(localctx, 10);
+ this.state = 3273;
+ this.match(PlSqlParser.UPDATE);
+ this.state = 3274;
+ this.match(PlSqlParser.BLOCK);
+ this.state = 3275;
+ this.match(PlSqlParser.REFERENCES);
+ break;
+
+ case 11:
+ this.enterOuterAlt(localctx, 11);
+ this.state = 3276;
+ this.alter_index_partitioning();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Visible_or_invisibleContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_visible_or_invisible;
+ return this;
+}
+
+Visible_or_invisibleContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Visible_or_invisibleContext.prototype.constructor = Visible_or_invisibleContext;
+
+Visible_or_invisibleContext.prototype.VISIBLE = function() {
+ return this.getToken(PlSqlParser.VISIBLE, 0);
+};
+
+Visible_or_invisibleContext.prototype.INVISIBLE = function() {
+ return this.getToken(PlSqlParser.INVISIBLE, 0);
+};
+
+Visible_or_invisibleContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterVisible_or_invisible(this);
+ }
+};
+
+Visible_or_invisibleContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitVisible_or_invisible(this);
+ }
+};
+
+Visible_or_invisibleContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitVisible_or_invisible(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Visible_or_invisibleContext = Visible_or_invisibleContext;
+
+PlSqlParser.prototype.visible_or_invisible = function() {
+
+ var localctx = new Visible_or_invisibleContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 236, PlSqlParser.RULE_visible_or_invisible);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3279;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.INVISIBLE || _la===PlSqlParser.VISIBLE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Monitoring_nomonitoringContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_monitoring_nomonitoring;
+ return this;
+}
+
+Monitoring_nomonitoringContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Monitoring_nomonitoringContext.prototype.constructor = Monitoring_nomonitoringContext;
+
+Monitoring_nomonitoringContext.prototype.MONITORING = function() {
+ return this.getToken(PlSqlParser.MONITORING, 0);
+};
+
+Monitoring_nomonitoringContext.prototype.NOMONITORING = function() {
+ return this.getToken(PlSqlParser.NOMONITORING, 0);
+};
+
+Monitoring_nomonitoringContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterMonitoring_nomonitoring(this);
+ }
+};
+
+Monitoring_nomonitoringContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitMonitoring_nomonitoring(this);
+ }
+};
+
+Monitoring_nomonitoringContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitMonitoring_nomonitoring(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Monitoring_nomonitoringContext = Monitoring_nomonitoringContext;
+
+PlSqlParser.prototype.monitoring_nomonitoring = function() {
+
+ var localctx = new Monitoring_nomonitoringContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 238, PlSqlParser.RULE_monitoring_nomonitoring);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3281;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.MONITORING || _la===PlSqlParser.NOMONITORING)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Rebuild_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_rebuild_clause;
+ return this;
+}
+
+Rebuild_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Rebuild_clauseContext.prototype.constructor = Rebuild_clauseContext;
+
+Rebuild_clauseContext.prototype.REBUILD = function() {
+ return this.getToken(PlSqlParser.REBUILD, 0);
+};
+
+Rebuild_clauseContext.prototype.PARTITION = function() {
+ return this.getToken(PlSqlParser.PARTITION, 0);
+};
+
+Rebuild_clauseContext.prototype.partition_name = function() {
+ return this.getTypedRuleContext(Partition_nameContext,0);
+};
+
+Rebuild_clauseContext.prototype.SUBPARTITION = function() {
+ return this.getToken(PlSqlParser.SUBPARTITION, 0);
+};
+
+Rebuild_clauseContext.prototype.subpartition_name = function() {
+ return this.getTypedRuleContext(Subpartition_nameContext,0);
+};
+
+Rebuild_clauseContext.prototype.REVERSE = function() {
+ return this.getToken(PlSqlParser.REVERSE, 0);
+};
+
+Rebuild_clauseContext.prototype.NOREVERSE = function() {
+ return this.getToken(PlSqlParser.NOREVERSE, 0);
+};
+
+Rebuild_clauseContext.prototype.parallel_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Parallel_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Parallel_clauseContext,i);
+ }
+};
+
+Rebuild_clauseContext.prototype.TABLESPACE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.TABLESPACE);
+ } else {
+ return this.getToken(PlSqlParser.TABLESPACE, i);
+ }
+};
+
+
+Rebuild_clauseContext.prototype.tablespace = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(TablespaceContext);
+ } else {
+ return this.getTypedRuleContext(TablespaceContext,i);
+ }
+};
+
+Rebuild_clauseContext.prototype.PARAMETERS = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.PARAMETERS);
+ } else {
+ return this.getToken(PlSqlParser.PARAMETERS, i);
+ }
+};
+
+
+Rebuild_clauseContext.prototype.LEFT_PAREN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.LEFT_PAREN);
+ } else {
+ return this.getToken(PlSqlParser.LEFT_PAREN, i);
+ }
+};
+
+
+Rebuild_clauseContext.prototype.odci_parameters = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Odci_parametersContext);
+ } else {
+ return this.getTypedRuleContext(Odci_parametersContext,i);
+ }
+};
+
+Rebuild_clauseContext.prototype.RIGHT_PAREN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.RIGHT_PAREN);
+ } else {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, i);
+ }
+};
+
+
+Rebuild_clauseContext.prototype.ONLINE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.ONLINE);
+ } else {
+ return this.getToken(PlSqlParser.ONLINE, i);
+ }
+};
+
+
+Rebuild_clauseContext.prototype.physical_attributes_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Physical_attributes_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Physical_attributes_clauseContext,i);
+ }
+};
+
+Rebuild_clauseContext.prototype.key_compression = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Key_compressionContext);
+ } else {
+ return this.getTypedRuleContext(Key_compressionContext,i);
+ }
+};
+
+Rebuild_clauseContext.prototype.logging_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Logging_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Logging_clauseContext,i);
+ }
+};
+
+Rebuild_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterRebuild_clause(this);
+ }
+};
+
+Rebuild_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitRebuild_clause(this);
+ }
+};
+
+Rebuild_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitRebuild_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Rebuild_clauseContext = Rebuild_clauseContext;
+
+PlSqlParser.prototype.rebuild_clause = function() {
+
+ var localctx = new Rebuild_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 240, PlSqlParser.RULE_rebuild_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3283;
+ this.match(PlSqlParser.REBUILD);
+ this.state = 3290;
+ this._errHandler.sync(this);
+ switch (this._input.LA(1)) {
+ case PlSqlParser.PARTITION:
+ this.state = 3284;
+ this.match(PlSqlParser.PARTITION);
+ this.state = 3285;
+ this.partition_name();
+ break;
+ case PlSqlParser.SUBPARTITION:
+ this.state = 3286;
+ this.match(PlSqlParser.SUBPARTITION);
+ this.state = 3287;
+ this.subpartition_name();
+ break;
+ case PlSqlParser.REVERSE:
+ this.state = 3288;
+ this.match(PlSqlParser.REVERSE);
+ break;
+ case PlSqlParser.NOREVERSE:
+ this.state = 3289;
+ this.match(PlSqlParser.NOREVERSE);
+ break;
+ case PlSqlParser.COMPRESS:
+ case PlSqlParser.FILESYSTEM_LIKE_LOGGING:
+ case PlSqlParser.INITRANS:
+ case PlSqlParser.LOGGING:
+ case PlSqlParser.NOCOMPRESS:
+ case PlSqlParser.NOLOGGING:
+ case PlSqlParser.NOPARALLEL:
+ case PlSqlParser.ONLINE:
+ case PlSqlParser.PARALLEL:
+ case PlSqlParser.PARAMETERS:
+ case PlSqlParser.PCTFREE:
+ case PlSqlParser.PCTUSED:
+ case PlSqlParser.STORAGE:
+ case PlSqlParser.TABLESPACE:
+ case PlSqlParser.SEMICOLON:
+ break;
+ default:
+ break;
+ }
+ this.state = 3306;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMPRESS || _la===PlSqlParser.FILESYSTEM_LIKE_LOGGING || _la===PlSqlParser.INITRANS || _la===PlSqlParser.LOGGING || _la===PlSqlParser.NOCOMPRESS || _la===PlSqlParser.NOLOGGING || _la===PlSqlParser.NOPARALLEL || _la===PlSqlParser.ONLINE || _la===PlSqlParser.PARALLEL || _la===PlSqlParser.PARAMETERS || _la===PlSqlParser.PCTFREE || _la===PlSqlParser.PCTUSED || _la===PlSqlParser.STORAGE || _la===PlSqlParser.TABLESPACE) {
+ this.state = 3304;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.NOPARALLEL:
+ case PlSqlParser.PARALLEL:
+ this.state = 3292;
+ this.parallel_clause();
+ break;
+ case PlSqlParser.TABLESPACE:
+ this.state = 3293;
+ this.match(PlSqlParser.TABLESPACE);
+ this.state = 3294;
+ this.tablespace();
+ break;
+ case PlSqlParser.PARAMETERS:
+ this.state = 3295;
+ this.match(PlSqlParser.PARAMETERS);
+ this.state = 3296;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 3297;
+ this.odci_parameters();
+ this.state = 3298;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ break;
+ case PlSqlParser.ONLINE:
+ this.state = 3300;
+ this.match(PlSqlParser.ONLINE);
+ break;
+ case PlSqlParser.INITRANS:
+ case PlSqlParser.PCTFREE:
+ case PlSqlParser.PCTUSED:
+ case PlSqlParser.STORAGE:
+ this.state = 3301;
+ this.physical_attributes_clause();
+ break;
+ case PlSqlParser.COMPRESS:
+ case PlSqlParser.NOCOMPRESS:
+ this.state = 3302;
+ this.key_compression();
+ break;
+ case PlSqlParser.FILESYSTEM_LIKE_LOGGING:
+ case PlSqlParser.LOGGING:
+ case PlSqlParser.NOLOGGING:
+ this.state = 3303;
+ this.logging_clause();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 3308;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Alter_index_partitioningContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_alter_index_partitioning;
+ return this;
+}
+
+Alter_index_partitioningContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Alter_index_partitioningContext.prototype.constructor = Alter_index_partitioningContext;
+
+Alter_index_partitioningContext.prototype.modify_index_default_attrs = function() {
+ return this.getTypedRuleContext(Modify_index_default_attrsContext,0);
+};
+
+Alter_index_partitioningContext.prototype.add_hash_index_partition = function() {
+ return this.getTypedRuleContext(Add_hash_index_partitionContext,0);
+};
+
+Alter_index_partitioningContext.prototype.modify_index_partition = function() {
+ return this.getTypedRuleContext(Modify_index_partitionContext,0);
+};
+
+Alter_index_partitioningContext.prototype.rename_index_partition = function() {
+ return this.getTypedRuleContext(Rename_index_partitionContext,0);
+};
+
+Alter_index_partitioningContext.prototype.drop_index_partition = function() {
+ return this.getTypedRuleContext(Drop_index_partitionContext,0);
+};
+
+Alter_index_partitioningContext.prototype.split_index_partition = function() {
+ return this.getTypedRuleContext(Split_index_partitionContext,0);
+};
+
+Alter_index_partitioningContext.prototype.coalesce_index_partition = function() {
+ return this.getTypedRuleContext(Coalesce_index_partitionContext,0);
+};
+
+Alter_index_partitioningContext.prototype.modify_index_subpartition = function() {
+ return this.getTypedRuleContext(Modify_index_subpartitionContext,0);
+};
+
+Alter_index_partitioningContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAlter_index_partitioning(this);
+ }
+};
+
+Alter_index_partitioningContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAlter_index_partitioning(this);
+ }
+};
+
+Alter_index_partitioningContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAlter_index_partitioning(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Alter_index_partitioningContext = Alter_index_partitioningContext;
+
+PlSqlParser.prototype.alter_index_partitioning = function() {
+
+ var localctx = new Alter_index_partitioningContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 242, PlSqlParser.RULE_alter_index_partitioning);
+ try {
+ this.state = 3317;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,267,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3309;
+ this.modify_index_default_attrs();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 3310;
+ this.add_hash_index_partition();
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 3311;
+ this.modify_index_partition();
+ break;
+
+ case 4:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 3312;
+ this.rename_index_partition();
+ break;
+
+ case 5:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 3313;
+ this.drop_index_partition();
+ break;
+
+ case 6:
+ this.enterOuterAlt(localctx, 6);
+ this.state = 3314;
+ this.split_index_partition();
+ break;
+
+ case 7:
+ this.enterOuterAlt(localctx, 7);
+ this.state = 3315;
+ this.coalesce_index_partition();
+ break;
+
+ case 8:
+ this.enterOuterAlt(localctx, 8);
+ this.state = 3316;
+ this.modify_index_subpartition();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Modify_index_default_attrsContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_modify_index_default_attrs;
+ return this;
+}
+
+Modify_index_default_attrsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Modify_index_default_attrsContext.prototype.constructor = Modify_index_default_attrsContext;
+
+Modify_index_default_attrsContext.prototype.MODIFY = function() {
+ return this.getToken(PlSqlParser.MODIFY, 0);
+};
+
+Modify_index_default_attrsContext.prototype.DEFAULT = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.DEFAULT);
+ } else {
+ return this.getToken(PlSqlParser.DEFAULT, i);
+ }
+};
+
+
+Modify_index_default_attrsContext.prototype.ATTRIBUTES = function() {
+ return this.getToken(PlSqlParser.ATTRIBUTES, 0);
+};
+
+Modify_index_default_attrsContext.prototype.physical_attributes_clause = function() {
+ return this.getTypedRuleContext(Physical_attributes_clauseContext,0);
+};
+
+Modify_index_default_attrsContext.prototype.TABLESPACE = function() {
+ return this.getToken(PlSqlParser.TABLESPACE, 0);
+};
+
+Modify_index_default_attrsContext.prototype.logging_clause = function() {
+ return this.getTypedRuleContext(Logging_clauseContext,0);
+};
+
+Modify_index_default_attrsContext.prototype.FOR = function() {
+ return this.getToken(PlSqlParser.FOR, 0);
+};
+
+Modify_index_default_attrsContext.prototype.PARTITION = function() {
+ return this.getToken(PlSqlParser.PARTITION, 0);
+};
+
+Modify_index_default_attrsContext.prototype.partition_name = function() {
+ return this.getTypedRuleContext(Partition_nameContext,0);
+};
+
+Modify_index_default_attrsContext.prototype.tablespace = function() {
+ return this.getTypedRuleContext(TablespaceContext,0);
+};
+
+Modify_index_default_attrsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterModify_index_default_attrs(this);
+ }
+};
+
+Modify_index_default_attrsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitModify_index_default_attrs(this);
+ }
+};
+
+Modify_index_default_attrsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitModify_index_default_attrs(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Modify_index_default_attrsContext = Modify_index_default_attrsContext;
+
+PlSqlParser.prototype.modify_index_default_attrs = function() {
+
+ var localctx = new Modify_index_default_attrsContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 244, PlSqlParser.RULE_modify_index_default_attrs);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3319;
+ this.match(PlSqlParser.MODIFY);
+ this.state = 3320;
+ this.match(PlSqlParser.DEFAULT);
+ this.state = 3321;
+ this.match(PlSqlParser.ATTRIBUTES);
+ this.state = 3325;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.FOR) {
+ this.state = 3322;
+ this.match(PlSqlParser.FOR);
+ this.state = 3323;
+ this.match(PlSqlParser.PARTITION);
+ this.state = 3324;
+ this.partition_name();
+ }
+
+ this.state = 3334;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.INITRANS:
+ case PlSqlParser.PCTFREE:
+ case PlSqlParser.PCTUSED:
+ case PlSqlParser.STORAGE:
+ this.state = 3327;
+ this.physical_attributes_clause();
+ break;
+ case PlSqlParser.TABLESPACE:
+ this.state = 3328;
+ this.match(PlSqlParser.TABLESPACE);
+ this.state = 3331;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.ABORT:
+ case PlSqlParser.ABS:
+ case PlSqlParser.ACCESS:
+ case PlSqlParser.ACCESSED:
+ case PlSqlParser.ACCOUNT:
+ case PlSqlParser.ACL:
+ case PlSqlParser.ACOS:
+ case PlSqlParser.ACTION:
+ case PlSqlParser.ACTIONS:
+ case PlSqlParser.ACTIVATE:
+ case PlSqlParser.ACTIVE:
+ case PlSqlParser.ACTIVE_COMPONENT:
+ case PlSqlParser.ACTIVE_DATA:
+ case PlSqlParser.ACTIVE_FUNCTION:
+ case PlSqlParser.ACTIVE_TAG:
+ case PlSqlParser.ACTIVITY:
+ case PlSqlParser.ADAPTIVE_PLAN:
+ case PlSqlParser.ADD:
+ case PlSqlParser.ADD_COLUMN:
+ case PlSqlParser.ADD_GROUP:
+ case PlSqlParser.ADD_MONTHS:
+ case PlSqlParser.ADJ_DATE:
+ case PlSqlParser.ADMIN:
+ case PlSqlParser.ADMINISTER:
+ case PlSqlParser.ADMINISTRATOR:
+ case PlSqlParser.ADVANCED:
+ case PlSqlParser.ADVISE:
+ case PlSqlParser.ADVISOR:
+ case PlSqlParser.AFD_DISKSTRING:
+ case PlSqlParser.AFTER:
+ case PlSqlParser.AGENT:
+ case PlSqlParser.AGGREGATE:
+ case PlSqlParser.A_LETTER:
+ case PlSqlParser.ALIAS:
+ case PlSqlParser.ALLOCATE:
+ case PlSqlParser.ALLOW:
+ case PlSqlParser.ALL_ROWS:
+ case PlSqlParser.ALWAYS:
+ case PlSqlParser.ANALYZE:
+ case PlSqlParser.ANCILLARY:
+ case PlSqlParser.AND_EQUAL:
+ case PlSqlParser.ANOMALY:
+ case PlSqlParser.ANSI_REARCH:
+ case PlSqlParser.ANTIJOIN:
+ case PlSqlParser.ANYSCHEMA:
+ case PlSqlParser.APPEND:
+ case PlSqlParser.APPENDCHILDXML:
+ case PlSqlParser.APPEND_VALUES:
+ case PlSqlParser.APPLICATION:
+ case PlSqlParser.APPLY:
+ case PlSqlParser.APPROX_COUNT_DISTINCT:
+ case PlSqlParser.ARCHIVAL:
+ case PlSqlParser.ARCHIVE:
+ case PlSqlParser.ARCHIVED:
+ case PlSqlParser.ARCHIVELOG:
+ case PlSqlParser.ARRAY:
+ case PlSqlParser.ASCII:
+ case PlSqlParser.ASCIISTR:
+ case PlSqlParser.ASIN:
+ case PlSqlParser.ASIS:
+ case PlSqlParser.ASSEMBLY:
+ case PlSqlParser.ASSIGN:
+ case PlSqlParser.ASSOCIATE:
+ case PlSqlParser.ASYNC:
+ case PlSqlParser.ASYNCHRONOUS:
+ case PlSqlParser.ATAN2:
+ case PlSqlParser.ATAN:
+ case PlSqlParser.AT:
+ case PlSqlParser.ATTRIBUTE:
+ case PlSqlParser.ATTRIBUTES:
+ case PlSqlParser.AUTHENTICATED:
+ case PlSqlParser.AUTHENTICATION:
+ case PlSqlParser.AUTHID:
+ case PlSqlParser.AUTHORIZATION:
+ case PlSqlParser.AUTOALLOCATE:
+ case PlSqlParser.AUTO:
+ case PlSqlParser.AUTOEXTEND:
+ case PlSqlParser.AUTO_LOGIN:
+ case PlSqlParser.AUTOMATIC:
+ case PlSqlParser.AUTONOMOUS_TRANSACTION:
+ case PlSqlParser.AUTO_REOPTIMIZE:
+ case PlSqlParser.AVAILABILITY:
+ case PlSqlParser.AVRO:
+ case PlSqlParser.BACKGROUND:
+ case PlSqlParser.BACKUP:
+ case PlSqlParser.BASIC:
+ case PlSqlParser.BASICFILE:
+ case PlSqlParser.BATCH:
+ case PlSqlParser.BATCHSIZE:
+ case PlSqlParser.BATCH_TABLE_ACCESS_BY_ROWID:
+ case PlSqlParser.BECOME:
+ case PlSqlParser.BEFORE:
+ case PlSqlParser.BEGIN:
+ case PlSqlParser.BEGINNING:
+ case PlSqlParser.BEGIN_OUTLINE_DATA:
+ case PlSqlParser.BEHALF:
+ case PlSqlParser.BEQUEATH:
+ case PlSqlParser.BFILE:
+ case PlSqlParser.BFILENAME:
+ case PlSqlParser.BIGFILE:
+ case PlSqlParser.BINARY:
+ case PlSqlParser.BINARY_DOUBLE:
+ case PlSqlParser.BINARY_DOUBLE_INFINITY:
+ case PlSqlParser.BINARY_DOUBLE_NAN:
+ case PlSqlParser.BINARY_FLOAT:
+ case PlSqlParser.BINARY_FLOAT_INFINITY:
+ case PlSqlParser.BINARY_FLOAT_NAN:
+ case PlSqlParser.BINARY_INTEGER:
+ case PlSqlParser.BIND_AWARE:
+ case PlSqlParser.BINDING:
+ case PlSqlParser.BIN_TO_NUM:
+ case PlSqlParser.BITAND:
+ case PlSqlParser.BITMAP_AND:
+ case PlSqlParser.BITMAP:
+ case PlSqlParser.BITMAPS:
+ case PlSqlParser.BITMAP_TREE:
+ case PlSqlParser.BITS:
+ case PlSqlParser.BLOB:
+ case PlSqlParser.BLOCK:
+ case PlSqlParser.BLOCK_RANGE:
+ case PlSqlParser.BLOCKS:
+ case PlSqlParser.BLOCKSIZE:
+ case PlSqlParser.BODY:
+ case PlSqlParser.BOOLEAN:
+ case PlSqlParser.BOTH:
+ case PlSqlParser.BOUND:
+ case PlSqlParser.BRANCH:
+ case PlSqlParser.BREADTH:
+ case PlSqlParser.BROADCAST:
+ case PlSqlParser.BSON:
+ case PlSqlParser.BUFFER:
+ case PlSqlParser.BUFFER_CACHE:
+ case PlSqlParser.BUFFER_POOL:
+ case PlSqlParser.BUILD:
+ case PlSqlParser.BULK:
+ case PlSqlParser.BYPASS_RECURSIVE_CHECK:
+ case PlSqlParser.BYPASS_UJVC:
+ case PlSqlParser.BYTE:
+ case PlSqlParser.CACHE:
+ case PlSqlParser.CACHE_CB:
+ case PlSqlParser.CACHE_INSTANCES:
+ case PlSqlParser.CACHE_TEMP_TABLE:
+ case PlSqlParser.CACHING:
+ case PlSqlParser.CALCULATED:
+ case PlSqlParser.CALLBACK:
+ case PlSqlParser.CALL:
+ case PlSqlParser.CANCEL:
+ case PlSqlParser.CAPACITY:
+ case PlSqlParser.CARDINALITY:
+ case PlSqlParser.CASCADE:
+ case PlSqlParser.CASE:
+ case PlSqlParser.CAST:
+ case PlSqlParser.CATEGORY:
+ case PlSqlParser.CDBDEFAULT:
+ case PlSqlParser.CEIL:
+ case PlSqlParser.CELL_FLASH_CACHE:
+ case PlSqlParser.CERTIFICATE:
+ case PlSqlParser.CFILE:
+ case PlSqlParser.CHAINED:
+ case PlSqlParser.CHANGE:
+ case PlSqlParser.CHANGE_DUPKEY_ERROR_INDEX:
+ case PlSqlParser.CHARACTER:
+ case PlSqlParser.CHAR:
+ case PlSqlParser.CHAR_CS:
+ case PlSqlParser.CHARTOROWID:
+ case PlSqlParser.CHECK_ACL_REWRITE:
+ case PlSqlParser.CHECKPOINT:
+ case PlSqlParser.CHILD:
+ case PlSqlParser.CHOOSE:
+ case PlSqlParser.CHR:
+ case PlSqlParser.CHUNK:
+ case PlSqlParser.CLASS:
+ case PlSqlParser.CLASSIFIER:
+ case PlSqlParser.CLEANUP:
+ case PlSqlParser.CLEAR:
+ case PlSqlParser.C_LETTER:
+ case PlSqlParser.CLIENT:
+ case PlSqlParser.CLOB:
+ case PlSqlParser.CLONE:
+ case PlSqlParser.CLOSE_CACHED_OPEN_CURSORS:
+ case PlSqlParser.CLOSE:
+ case PlSqlParser.CLUSTER_BY_ROWID:
+ case PlSqlParser.CLUSTER:
+ case PlSqlParser.CLUSTER_DETAILS:
+ case PlSqlParser.CLUSTER_DISTANCE:
+ case PlSqlParser.CLUSTER_ID:
+ case PlSqlParser.CLUSTERING:
+ case PlSqlParser.CLUSTERING_FACTOR:
+ case PlSqlParser.CLUSTER_PROBABILITY:
+ case PlSqlParser.CLUSTER_SET:
+ case PlSqlParser.COALESCE:
+ case PlSqlParser.COALESCE_SQ:
+ case PlSqlParser.COARSE:
+ case PlSqlParser.CO_AUTH_IND:
+ case PlSqlParser.COLD:
+ case PlSqlParser.COLLECT:
+ case PlSqlParser.COLUMNAR:
+ case PlSqlParser.COLUMN_AUTH_INDICATOR:
+ case PlSqlParser.COLUMN:
+ case PlSqlParser.COLUMNS:
+ case PlSqlParser.COLUMN_STATS:
+ case PlSqlParser.COLUMN_VALUE:
+ case PlSqlParser.COMMENT:
+ case PlSqlParser.COMMIT:
+ case PlSqlParser.COMMITTED:
+ case PlSqlParser.COMMON_DATA:
+ case PlSqlParser.COMPACT:
+ case PlSqlParser.COMPATIBILITY:
+ case PlSqlParser.COMPILE:
+ case PlSqlParser.COMPLETE:
+ case PlSqlParser.COMPLIANCE:
+ case PlSqlParser.COMPONENT:
+ case PlSqlParser.COMPONENTS:
+ case PlSqlParser.COMPOSE:
+ case PlSqlParser.COMPOSITE:
+ case PlSqlParser.COMPOSITE_LIMIT:
+ case PlSqlParser.COMPOUND:
+ case PlSqlParser.COMPUTE:
+ case PlSqlParser.CONCAT:
+ case PlSqlParser.CON_DBID_TO_ID:
+ case PlSqlParser.CONDITIONAL:
+ case PlSqlParser.CONDITION:
+ case PlSqlParser.CONFIRM:
+ case PlSqlParser.CONFORMING:
+ case PlSqlParser.CON_GUID_TO_ID:
+ case PlSqlParser.CON_ID:
+ case PlSqlParser.CON_NAME_TO_ID:
+ case PlSqlParser.CONNECT_BY_CB_WHR_ONLY:
+ case PlSqlParser.CONNECT_BY_COMBINE_SW:
+ case PlSqlParser.CONNECT_BY_COST_BASED:
+ case PlSqlParser.CONNECT_BY_ELIM_DUPS:
+ case PlSqlParser.CONNECT_BY_FILTERING:
+ case PlSqlParser.CONNECT_BY_ISCYCLE:
+ case PlSqlParser.CONNECT_BY_ISLEAF:
+ case PlSqlParser.CONNECT_BY_ROOT:
+ case PlSqlParser.CONNECT_TIME:
+ case PlSqlParser.CONSIDER:
+ case PlSqlParser.CONSISTENT:
+ case PlSqlParser.CONSTANT:
+ case PlSqlParser.CONST:
+ case PlSqlParser.CONSTRAINT:
+ case PlSqlParser.CONSTRAINTS:
+ case PlSqlParser.CONSTRUCTOR:
+ case PlSqlParser.CONTAINER:
+ case PlSqlParser.CONTAINER_DATA:
+ case PlSqlParser.CONTAINERS:
+ case PlSqlParser.CONTENT:
+ case PlSqlParser.CONTENTS:
+ case PlSqlParser.CONTEXT:
+ case PlSqlParser.CONTINUE:
+ case PlSqlParser.CONTROLFILE:
+ case PlSqlParser.CON_UID_TO_ID:
+ case PlSqlParser.CONVERT:
+ case PlSqlParser.COOKIE:
+ case PlSqlParser.COPY:
+ case PlSqlParser.CORR_K:
+ case PlSqlParser.CORR_S:
+ case PlSqlParser.CORRUPTION:
+ case PlSqlParser.CORRUPT_XID_ALL:
+ case PlSqlParser.CORRUPT_XID:
+ case PlSqlParser.COS:
+ case PlSqlParser.COSH:
+ case PlSqlParser.COST:
+ case PlSqlParser.COST_XML_QUERY_REWRITE:
+ case PlSqlParser.COUNT:
+ case PlSqlParser.COVAR_POP:
+ case PlSqlParser.COVAR_SAMP:
+ case PlSqlParser.CPU_COSTING:
+ case PlSqlParser.CPU_PER_CALL:
+ case PlSqlParser.CPU_PER_SESSION:
+ case PlSqlParser.CRASH:
+ case PlSqlParser.CREATE_FILE_DEST:
+ case PlSqlParser.CREATE_STORED_OUTLINES:
+ case PlSqlParser.CREATION:
+ case PlSqlParser.CREDENTIAL:
+ case PlSqlParser.CRITICAL:
+ case PlSqlParser.CROSS:
+ case PlSqlParser.CROSSEDITION:
+ case PlSqlParser.CSCONVERT:
+ case PlSqlParser.CUBE_AJ:
+ case PlSqlParser.CUBE:
+ case PlSqlParser.CUBE_GB:
+ case PlSqlParser.CUBE_SJ:
+ case PlSqlParser.CUME_DISTM:
+ case PlSqlParser.CURRENT:
+ case PlSqlParser.CURRENT_DATE:
+ case PlSqlParser.CURRENT_SCHEMA:
+ case PlSqlParser.CURRENT_TIME:
+ case PlSqlParser.CURRENT_TIMESTAMP:
+ case PlSqlParser.CURRENT_USER:
+ case PlSqlParser.CURRENTV:
+ case PlSqlParser.CURSOR:
+ case PlSqlParser.CURSOR_SHARING_EXACT:
+ case PlSqlParser.CURSOR_SPECIFIC_SEGMENT:
+ case PlSqlParser.CUSTOMDATUM:
+ case PlSqlParser.CV:
+ case PlSqlParser.CYCLE:
+ case PlSqlParser.DANGLING:
+ case PlSqlParser.DATABASE:
+ case PlSqlParser.DATA:
+ case PlSqlParser.DATAFILE:
+ case PlSqlParser.DATAFILES:
+ case PlSqlParser.DATAMOVEMENT:
+ case PlSqlParser.DATAOBJNO:
+ case PlSqlParser.DATAOBJ_TO_MAT_PARTITION:
+ case PlSqlParser.DATAOBJ_TO_PARTITION:
+ case PlSqlParser.DATAPUMP:
+ case PlSqlParser.DATA_SECURITY_REWRITE_LIMIT:
+ case PlSqlParser.DATE_MODE:
+ case PlSqlParser.DAY:
+ case PlSqlParser.DAYS:
+ case PlSqlParser.DBA:
+ case PlSqlParser.DBA_RECYCLEBIN:
+ case PlSqlParser.DBMS_STATS:
+ case PlSqlParser.DB_ROLE_CHANGE:
+ case PlSqlParser.DBTIMEZONE:
+ case PlSqlParser.DB_UNIQUE_NAME:
+ case PlSqlParser.DB_VERSION:
+ case PlSqlParser.DDL:
+ case PlSqlParser.DEALLOCATE:
+ case PlSqlParser.DEBUG:
+ case PlSqlParser.DEBUGGER:
+ case PlSqlParser.DEC:
+ case PlSqlParser.DECIMAL:
+ case PlSqlParser.DECLARE:
+ case PlSqlParser.DECOMPOSE:
+ case PlSqlParser.DECORRELATE:
+ case PlSqlParser.DECR:
+ case PlSqlParser.DECREMENT:
+ case PlSqlParser.DECRYPT:
+ case PlSqlParser.DEDUPLICATE:
+ case PlSqlParser.DEFAULTS:
+ case PlSqlParser.DEFERRABLE:
+ case PlSqlParser.DEFERRED:
+ case PlSqlParser.DEFINED:
+ case PlSqlParser.DEFINE:
+ case PlSqlParser.DEFINER:
+ case PlSqlParser.DEGREE:
+ case PlSqlParser.DELAY:
+ case PlSqlParser.DELEGATE:
+ case PlSqlParser.DELETE_ALL:
+ case PlSqlParser.DELETE:
+ case PlSqlParser.DELETEXML:
+ case PlSqlParser.DEMAND:
+ case PlSqlParser.DENSE_RANKM:
+ case PlSqlParser.DEPENDENT:
+ case PlSqlParser.DEPTH:
+ case PlSqlParser.DEQUEUE:
+ case PlSqlParser.DEREF:
+ case PlSqlParser.DEREF_NO_REWRITE:
+ case PlSqlParser.DESTROY:
+ case PlSqlParser.DETACHED:
+ case PlSqlParser.DETERMINES:
+ case PlSqlParser.DETERMINISTIC:
+ case PlSqlParser.DICTIONARY:
+ case PlSqlParser.DIMENSION:
+ case PlSqlParser.DIMENSIONS:
+ case PlSqlParser.DIRECT_LOAD:
+ case PlSqlParser.DIRECTORY:
+ case PlSqlParser.DIRECT_PATH:
+ case PlSqlParser.DISABLE_ALL:
+ case PlSqlParser.DISABLE:
+ case PlSqlParser.DISABLE_PARALLEL_DML:
+ case PlSqlParser.DISABLE_PRESET:
+ case PlSqlParser.DISABLE_RPKE:
+ case PlSqlParser.DISALLOW:
+ case PlSqlParser.DISASSOCIATE:
+ case PlSqlParser.DISCARD:
+ case PlSqlParser.DISCONNECT:
+ case PlSqlParser.DISK:
+ case PlSqlParser.DISKGROUP:
+ case PlSqlParser.DISKS:
+ case PlSqlParser.DISMOUNT:
+ case PlSqlParser.DISTINGUISHED:
+ case PlSqlParser.DISTRIBUTED:
+ case PlSqlParser.DISTRIBUTE:
+ case PlSqlParser.DML:
+ case PlSqlParser.DML_UPDATE:
+ case PlSqlParser.DOCFIDELITY:
+ case PlSqlParser.DOCUMENT:
+ case PlSqlParser.DOMAIN_INDEX_FILTER:
+ case PlSqlParser.DOMAIN_INDEX_NO_SORT:
+ case PlSqlParser.DOMAIN_INDEX_SORT:
+ case PlSqlParser.DOUBLE:
+ case PlSqlParser.DOWNGRADE:
+ case PlSqlParser.DRIVING_SITE:
+ case PlSqlParser.DROP_COLUMN:
+ case PlSqlParser.DROP_GROUP:
+ case PlSqlParser.DSINTERVAL_UNCONSTRAINED:
+ case PlSqlParser.DST_UPGRADE_INSERT_CONV:
+ case PlSqlParser.DUMP:
+ case PlSqlParser.DUPLICATE:
+ case PlSqlParser.DV:
+ case PlSqlParser.DYNAMIC:
+ case PlSqlParser.DYNAMIC_SAMPLING:
+ case PlSqlParser.DYNAMIC_SAMPLING_EST_CDN:
+ case PlSqlParser.EACH:
+ case PlSqlParser.EDITIONABLE:
+ case PlSqlParser.EDITION:
+ case PlSqlParser.EDITIONING:
+ case PlSqlParser.EDITIONS:
+ case PlSqlParser.ELEMENT:
+ case PlSqlParser.ELIM_GROUPBY:
+ case PlSqlParser.ELIMINATE_JOIN:
+ case PlSqlParser.ELIMINATE_OBY:
+ case PlSqlParser.ELIMINATE_OUTER_JOIN:
+ case PlSqlParser.EM:
+ case PlSqlParser.EMPTY_BLOB:
+ case PlSqlParser.EMPTY_CLOB:
+ case PlSqlParser.EMPTY:
+ case PlSqlParser.ENABLE_ALL:
+ case PlSqlParser.ENABLE:
+ case PlSqlParser.ENABLE_PARALLEL_DML:
+ case PlSqlParser.ENABLE_PRESET:
+ case PlSqlParser.ENCODING:
+ case PlSqlParser.ENCRYPT:
+ case PlSqlParser.ENCRYPTION:
+ case PlSqlParser.END_OUTLINE_DATA:
+ case PlSqlParser.ENFORCED:
+ case PlSqlParser.ENFORCE:
+ case PlSqlParser.ENQUEUE:
+ case PlSqlParser.ENTERPRISE:
+ case PlSqlParser.ENTITYESCAPING:
+ case PlSqlParser.ENTRY:
+ case PlSqlParser.EQUIPART:
+ case PlSqlParser.ERR:
+ case PlSqlParser.ERROR_ARGUMENT:
+ case PlSqlParser.ERROR:
+ case PlSqlParser.ERROR_ON_OVERLAP_TIME:
+ case PlSqlParser.ERRORS:
+ case PlSqlParser.ESCAPE:
+ case PlSqlParser.ESTIMATE:
+ case PlSqlParser.EVAL:
+ case PlSqlParser.EVALNAME:
+ case PlSqlParser.EVALUATE:
+ case PlSqlParser.EVALUATION:
+ case PlSqlParser.EVENTS:
+ case PlSqlParser.EVERY:
+ case PlSqlParser.EXCEPT:
+ case PlSqlParser.EXCEPTION:
+ case PlSqlParser.EXCEPTION_INIT:
+ case PlSqlParser.EXCEPTIONS:
+ case PlSqlParser.EXCHANGE:
+ case PlSqlParser.EXCLUDE:
+ case PlSqlParser.EXCLUDING:
+ case PlSqlParser.EXECUTE:
+ case PlSqlParser.EXEMPT:
+ case PlSqlParser.EXISTING:
+ case PlSqlParser.EXISTS:
+ case PlSqlParser.EXISTSNODE:
+ case PlSqlParser.EXIT:
+ case PlSqlParser.EXPAND_GSET_TO_UNION:
+ case PlSqlParser.EXPAND_TABLE:
+ case PlSqlParser.EXP:
+ case PlSqlParser.EXPIRE:
+ case PlSqlParser.EXPLAIN:
+ case PlSqlParser.EXPLOSION:
+ case PlSqlParser.EXPORT:
+ case PlSqlParser.EXPR_CORR_CHECK:
+ case PlSqlParser.EXPRESS:
+ case PlSqlParser.EXTENDS:
+ case PlSqlParser.EXTENT:
+ case PlSqlParser.EXTENTS:
+ case PlSqlParser.EXTERNAL:
+ case PlSqlParser.EXTERNALLY:
+ case PlSqlParser.EXTRACTCLOBXML:
+ case PlSqlParser.EXTRACT:
+ case PlSqlParser.EXTRACTVALUE:
+ case PlSqlParser.EXTRA:
+ case PlSqlParser.FACILITY:
+ case PlSqlParser.FACT:
+ case PlSqlParser.FACTOR:
+ case PlSqlParser.FACTORIZE_JOIN:
+ case PlSqlParser.FAILED:
+ case PlSqlParser.FAILED_LOGIN_ATTEMPTS:
+ case PlSqlParser.FAILGROUP:
+ case PlSqlParser.FAILOVER:
+ case PlSqlParser.FAILURE:
+ case PlSqlParser.FALSE:
+ case PlSqlParser.FAMILY:
+ case PlSqlParser.FAR:
+ case PlSqlParser.FAST:
+ case PlSqlParser.FASTSTART:
+ case PlSqlParser.FBTSCAN:
+ case PlSqlParser.FEATURE_DETAILS:
+ case PlSqlParser.FEATURE_ID:
+ case PlSqlParser.FEATURE_SET:
+ case PlSqlParser.FEATURE_VALUE:
+ case PlSqlParser.FETCH:
+ case PlSqlParser.FILE:
+ case PlSqlParser.FILE_NAME_CONVERT:
+ case PlSqlParser.FILESYSTEM_LIKE_LOGGING:
+ case PlSqlParser.FILTER:
+ case PlSqlParser.FINAL:
+ case PlSqlParser.FINE:
+ case PlSqlParser.FINISH:
+ case PlSqlParser.FIRST:
+ case PlSqlParser.FIRSTM:
+ case PlSqlParser.FIRST_ROWS:
+ case PlSqlParser.FIRST_VALUE:
+ case PlSqlParser.FIXED_VIEW_DATA:
+ case PlSqlParser.FLAGGER:
+ case PlSqlParser.FLASHBACK:
+ case PlSqlParser.FLASH_CACHE:
+ case PlSqlParser.FLOAT:
+ case PlSqlParser.FLOB:
+ case PlSqlParser.FLOOR:
+ case PlSqlParser.FLUSH:
+ case PlSqlParser.FOLDER:
+ case PlSqlParser.FOLLOWING:
+ case PlSqlParser.FOLLOWS:
+ case PlSqlParser.FORALL:
+ case PlSqlParser.FORCE:
+ case PlSqlParser.FORCE_XML_QUERY_REWRITE:
+ case PlSqlParser.FOREIGN:
+ case PlSqlParser.FOREVER:
+ case PlSqlParser.FORMAT:
+ case PlSqlParser.FORWARD:
+ case PlSqlParser.FRAGMENT_NUMBER:
+ case PlSqlParser.FREELIST:
+ case PlSqlParser.FREELISTS:
+ case PlSqlParser.FREEPOOLS:
+ case PlSqlParser.FRESH:
+ case PlSqlParser.FROM_TZ:
+ case PlSqlParser.FULL:
+ case PlSqlParser.FULL_OUTER_JOIN_TO_OUTER:
+ case PlSqlParser.FUNCTION:
+ case PlSqlParser.FUNCTIONS:
+ case PlSqlParser.GATHER_OPTIMIZER_STATISTICS:
+ case PlSqlParser.GATHER_PLAN_STATISTICS:
+ case PlSqlParser.GBY_CONC_ROLLUP:
+ case PlSqlParser.GBY_PUSHDOWN:
+ case PlSqlParser.GENERATED:
+ case PlSqlParser.GET:
+ case PlSqlParser.GLOBAL:
+ case PlSqlParser.GLOBALLY:
+ case PlSqlParser.GLOBAL_NAME:
+ case PlSqlParser.GLOBAL_TOPIC_ENABLED:
+ case PlSqlParser.GROUP_BY:
+ case PlSqlParser.GROUP_ID:
+ case PlSqlParser.GROUPING:
+ case PlSqlParser.GROUPING_ID:
+ case PlSqlParser.GROUPS:
+ case PlSqlParser.GUARANTEED:
+ case PlSqlParser.GUARANTEE:
+ case PlSqlParser.GUARD:
+ case PlSqlParser.HASH_AJ:
+ case PlSqlParser.HASH:
+ case PlSqlParser.HASHKEYS:
+ case PlSqlParser.HASH_SJ:
+ case PlSqlParser.HEADER:
+ case PlSqlParser.HEAP:
+ case PlSqlParser.HELP:
+ case PlSqlParser.HEXTORAW:
+ case PlSqlParser.HEXTOREF:
+ case PlSqlParser.HIDDEN_KEYWORD:
+ case PlSqlParser.HIDE:
+ case PlSqlParser.HIERARCHY:
+ case PlSqlParser.HIGH:
+ case PlSqlParser.HINTSET_BEGIN:
+ case PlSqlParser.HINTSET_END:
+ case PlSqlParser.HOT:
+ case PlSqlParser.HOUR:
+ case PlSqlParser.HWM_BROKERED:
+ case PlSqlParser.HYBRID:
+ case PlSqlParser.IDENTIFIER:
+ case PlSqlParser.IDENTITY:
+ case PlSqlParser.IDGENERATORS:
+ case PlSqlParser.ID:
+ case PlSqlParser.IDLE_TIME:
+ case PlSqlParser.IF:
+ case PlSqlParser.IGNORE:
+ case PlSqlParser.IGNORE_OPTIM_EMBEDDED_HINTS:
+ case PlSqlParser.IGNORE_ROW_ON_DUPKEY_INDEX:
+ case PlSqlParser.IGNORE_WHERE_CLAUSE:
+ case PlSqlParser.ILM:
+ case PlSqlParser.IMMEDIATE:
+ case PlSqlParser.IMPACT:
+ case PlSqlParser.IMPORT:
+ case PlSqlParser.INACTIVE:
+ case PlSqlParser.INCLUDE:
+ case PlSqlParser.INCLUDE_VERSION:
+ case PlSqlParser.INCLUDING:
+ case PlSqlParser.INCREMENTAL:
+ case PlSqlParser.INCREMENT:
+ case PlSqlParser.INCR:
+ case PlSqlParser.INDENT:
+ case PlSqlParser.INDEX_ASC:
+ case PlSqlParser.INDEX_COMBINE:
+ case PlSqlParser.INDEX_DESC:
+ case PlSqlParser.INDEXED:
+ case PlSqlParser.INDEXES:
+ case PlSqlParser.INDEX_FFS:
+ case PlSqlParser.INDEX_FILTER:
+ case PlSqlParser.INDEXING:
+ case PlSqlParser.INDEX_JOIN:
+ case PlSqlParser.INDEX_ROWS:
+ case PlSqlParser.INDEX_RRS:
+ case PlSqlParser.INDEX_RS_ASC:
+ case PlSqlParser.INDEX_RS_DESC:
+ case PlSqlParser.INDEX_RS:
+ case PlSqlParser.INDEX_SCAN:
+ case PlSqlParser.INDEX_SKIP_SCAN:
+ case PlSqlParser.INDEX_SS_ASC:
+ case PlSqlParser.INDEX_SS_DESC:
+ case PlSqlParser.INDEX_SS:
+ case PlSqlParser.INDEX_STATS:
+ case PlSqlParser.INDEXTYPE:
+ case PlSqlParser.INDEXTYPES:
+ case PlSqlParser.INDICATOR:
+ case PlSqlParser.INDICES:
+ case PlSqlParser.INFINITE:
+ case PlSqlParser.INFORMATIONAL:
+ case PlSqlParser.INHERIT:
+ case PlSqlParser.INITCAP:
+ case PlSqlParser.INITIAL:
+ case PlSqlParser.INITIALIZED:
+ case PlSqlParser.INITIALLY:
+ case PlSqlParser.INITRANS:
+ case PlSqlParser.INLINE:
+ case PlSqlParser.INLINE_XMLTYPE_NT:
+ case PlSqlParser.INMEMORY:
+ case PlSqlParser.IN_MEMORY_METADATA:
+ case PlSqlParser.INMEMORY_PRUNING:
+ case PlSqlParser.INNER:
+ case PlSqlParser.INOUT:
+ case PlSqlParser.INPLACE:
+ case PlSqlParser.INSERTCHILDXMLAFTER:
+ case PlSqlParser.INSERTCHILDXMLBEFORE:
+ case PlSqlParser.INSERTCHILDXML:
+ case PlSqlParser.INSERTXMLAFTER:
+ case PlSqlParser.INSERTXMLBEFORE:
+ case PlSqlParser.INSTANCE:
+ case PlSqlParser.INSTANCES:
+ case PlSqlParser.INSTANTIABLE:
+ case PlSqlParser.INSTANTLY:
+ case PlSqlParser.INSTEAD:
+ case PlSqlParser.INSTR2:
+ case PlSqlParser.INSTR4:
+ case PlSqlParser.INSTRB:
+ case PlSqlParser.INSTRC:
+ case PlSqlParser.INSTR:
+ case PlSqlParser.INTEGER:
+ case PlSqlParser.INTERLEAVED:
+ case PlSqlParser.INTERMEDIATE:
+ case PlSqlParser.INTERNAL_CONVERT:
+ case PlSqlParser.INTERNAL_USE:
+ case PlSqlParser.INTERPRETED:
+ case PlSqlParser.INTERVAL:
+ case PlSqlParser.INT:
+ case PlSqlParser.INVALIDATE:
+ case PlSqlParser.INVISIBLE:
+ case PlSqlParser.IN_XQUERY:
+ case PlSqlParser.ISOLATION:
+ case PlSqlParser.ISOLATION_LEVEL:
+ case PlSqlParser.ITERATE:
+ case PlSqlParser.ITERATION_NUMBER:
+ case PlSqlParser.JAVA:
+ case PlSqlParser.JOB:
+ case PlSqlParser.JOIN:
+ case PlSqlParser.JSON_ARRAYAGG:
+ case PlSqlParser.JSON_ARRAY:
+ case PlSqlParser.JSON_EQUAL:
+ case PlSqlParser.JSON_EXISTS2:
+ case PlSqlParser.JSON_EXISTS:
+ case PlSqlParser.JSONGET:
+ case PlSqlParser.JSON:
+ case PlSqlParser.JSON_OBJECTAGG:
+ case PlSqlParser.JSON_OBJECT:
+ case PlSqlParser.JSONPARSE:
+ case PlSqlParser.JSON_QUERY:
+ case PlSqlParser.JSON_SERIALIZE:
+ case PlSqlParser.JSON_TABLE:
+ case PlSqlParser.JSON_TEXTCONTAINS2:
+ case PlSqlParser.JSON_TEXTCONTAINS:
+ case PlSqlParser.JSON_VALUE:
+ case PlSqlParser.KEEP_DUPLICATES:
+ case PlSqlParser.KEEP:
+ case PlSqlParser.KERBEROS:
+ case PlSqlParser.KEY:
+ case PlSqlParser.KEY_LENGTH:
+ case PlSqlParser.KEYSIZE:
+ case PlSqlParser.KEYS:
+ case PlSqlParser.KEYSTORE:
+ case PlSqlParser.KILL:
+ case PlSqlParser.LABEL:
+ case PlSqlParser.LANGUAGE:
+ case PlSqlParser.LAST_DAY:
+ case PlSqlParser.LAST:
+ case PlSqlParser.LAST_VALUE:
+ case PlSqlParser.LATERAL:
+ case PlSqlParser.LAX:
+ case PlSqlParser.LAYER:
+ case PlSqlParser.LDAP_REGISTRATION_ENABLED:
+ case PlSqlParser.LDAP_REGISTRATION:
+ case PlSqlParser.LDAP_REG_SYNC_INTERVAL:
+ case PlSqlParser.LEADING:
+ case PlSqlParser.LEFT:
+ case PlSqlParser.LENGTH2:
+ case PlSqlParser.LENGTH4:
+ case PlSqlParser.LENGTHB:
+ case PlSqlParser.LENGTHC:
+ case PlSqlParser.LENGTH:
+ case PlSqlParser.LESS:
+ case PlSqlParser.LEVEL:
+ case PlSqlParser.LEVELS:
+ case PlSqlParser.LIBRARY:
+ case PlSqlParser.LIFECYCLE:
+ case PlSqlParser.LIFE:
+ case PlSqlParser.LIFETIME:
+ case PlSqlParser.LIKE2:
+ case PlSqlParser.LIKE4:
+ case PlSqlParser.LIKEC:
+ case PlSqlParser.LIKE_EXPAND:
+ case PlSqlParser.LIMIT:
+ case PlSqlParser.LINEAR:
+ case PlSqlParser.LINK:
+ case PlSqlParser.LIST:
+ case PlSqlParser.LN:
+ case PlSqlParser.LNNVL:
+ case PlSqlParser.LOAD:
+ case PlSqlParser.LOB:
+ case PlSqlParser.LOBNVL:
+ case PlSqlParser.LOBS:
+ case PlSqlParser.LOCAL_INDEXES:
+ case PlSqlParser.LOCAL:
+ case PlSqlParser.LOCALTIME:
+ case PlSqlParser.LOCALTIMESTAMP:
+ case PlSqlParser.LOCATION:
+ case PlSqlParser.LOCATOR:
+ case PlSqlParser.LOCKED:
+ case PlSqlParser.LOCKING:
+ case PlSqlParser.LOGFILE:
+ case PlSqlParser.LOGFILES:
+ case PlSqlParser.LOGGING:
+ case PlSqlParser.LOGICAL:
+ case PlSqlParser.LOGICAL_READS_PER_CALL:
+ case PlSqlParser.LOGICAL_READS_PER_SESSION:
+ case PlSqlParser.LOG:
+ case PlSqlParser.LOGMINING:
+ case PlSqlParser.LOGOFF:
+ case PlSqlParser.LOGON:
+ case PlSqlParser.LOG_READ_ONLY_VIOLATIONS:
+ case PlSqlParser.LONG:
+ case PlSqlParser.LOOP:
+ case PlSqlParser.LOWER:
+ case PlSqlParser.LOW:
+ case PlSqlParser.LPAD:
+ case PlSqlParser.LTRIM:
+ case PlSqlParser.MAIN:
+ case PlSqlParser.MAKE_REF:
+ case PlSqlParser.MANAGED:
+ case PlSqlParser.MANAGE:
+ case PlSqlParser.MANAGEMENT:
+ case PlSqlParser.MANAGER:
+ case PlSqlParser.MANUAL:
+ case PlSqlParser.MAP:
+ case PlSqlParser.MAPPING:
+ case PlSqlParser.MASTER:
+ case PlSqlParser.MATCHED:
+ case PlSqlParser.MATCHES:
+ case PlSqlParser.MATCH:
+ case PlSqlParser.MATCH_NUMBER:
+ case PlSqlParser.MATCH_RECOGNIZE:
+ case PlSqlParser.MATERIALIZED:
+ case PlSqlParser.MATERIALIZE:
+ case PlSqlParser.MAXARCHLOGS:
+ case PlSqlParser.MAXDATAFILES:
+ case PlSqlParser.MAXEXTENTS:
+ case PlSqlParser.MAXIMIZE:
+ case PlSqlParser.MAXINSTANCES:
+ case PlSqlParser.MAXLOGFILES:
+ case PlSqlParser.MAXLOGHISTORY:
+ case PlSqlParser.MAXLOGMEMBERS:
+ case PlSqlParser.MAX_SHARED_TEMP_SIZE:
+ case PlSqlParser.MAXSIZE:
+ case PlSqlParser.MAXTRANS:
+ case PlSqlParser.MAXVALUE:
+ case PlSqlParser.MEASURE:
+ case PlSqlParser.MEASURES:
+ case PlSqlParser.MEDIUM:
+ case PlSqlParser.MEMBER:
+ case PlSqlParser.MEMCOMPRESS:
+ case PlSqlParser.MEMORY:
+ case PlSqlParser.MERGEACTIONS:
+ case PlSqlParser.MERGE_AJ:
+ case PlSqlParser.MERGE_CONST_ON:
+ case PlSqlParser.MERGE:
+ case PlSqlParser.MERGE_SJ:
+ case PlSqlParser.METADATA:
+ case PlSqlParser.METHOD:
+ case PlSqlParser.MIGRATE:
+ case PlSqlParser.MIGRATION:
+ case PlSqlParser.MINEXTENTS:
+ case PlSqlParser.MINIMIZE:
+ case PlSqlParser.MINIMUM:
+ case PlSqlParser.MINING:
+ case PlSqlParser.MINUS_NULL:
+ case PlSqlParser.MINUTE:
+ case PlSqlParser.MINVALUE:
+ case PlSqlParser.MIRRORCOLD:
+ case PlSqlParser.MIRRORHOT:
+ case PlSqlParser.MIRROR:
+ case PlSqlParser.MLSLABEL:
+ case PlSqlParser.MODEL_COMPILE_SUBQUERY:
+ case PlSqlParser.MODEL_DONTVERIFY_UNIQUENESS:
+ case PlSqlParser.MODEL_DYNAMIC_SUBQUERY:
+ case PlSqlParser.MODEL_MIN_ANALYSIS:
+ case PlSqlParser.MODEL:
+ case PlSqlParser.MODEL_NB:
+ case PlSqlParser.MODEL_NO_ANALYSIS:
+ case PlSqlParser.MODEL_PBY:
+ case PlSqlParser.MODEL_PUSH_REF:
+ case PlSqlParser.MODEL_SV:
+ case PlSqlParser.MODIFICATION:
+ case PlSqlParser.MODIFY_COLUMN_TYPE:
+ case PlSqlParser.MODIFY:
+ case PlSqlParser.MOD:
+ case PlSqlParser.MODULE:
+ case PlSqlParser.MONITORING:
+ case PlSqlParser.MONITOR:
+ case PlSqlParser.MONTH:
+ case PlSqlParser.MONTHS_BETWEEN:
+ case PlSqlParser.MONTHS:
+ case PlSqlParser.MOUNT:
+ case PlSqlParser.MOUNTPATH:
+ case PlSqlParser.MOVEMENT:
+ case PlSqlParser.MOVE:
+ case PlSqlParser.MULTIDIMENSIONAL:
+ case PlSqlParser.MULTISET:
+ case PlSqlParser.MV_MERGE:
+ case PlSqlParser.NAMED:
+ case PlSqlParser.NAME:
+ case PlSqlParser.NAMESPACE:
+ case PlSqlParser.NAN:
+ case PlSqlParser.NANVL:
+ case PlSqlParser.NATIONAL:
+ case PlSqlParser.NATIVE_FULL_OUTER_JOIN:
+ case PlSqlParser.NATIVE:
+ case PlSqlParser.NATURAL:
+ case PlSqlParser.NAV:
+ case PlSqlParser.NCHAR_CS:
+ case PlSqlParser.NCHAR:
+ case PlSqlParser.NCHR:
+ case PlSqlParser.NCLOB:
+ case PlSqlParser.NEEDED:
+ case PlSqlParser.NEG:
+ case PlSqlParser.NESTED:
+ case PlSqlParser.NESTED_TABLE_FAST_INSERT:
+ case PlSqlParser.NESTED_TABLE_GET_REFS:
+ case PlSqlParser.NESTED_TABLE_ID:
+ case PlSqlParser.NESTED_TABLE_SET_REFS:
+ case PlSqlParser.NESTED_TABLE_SET_SETID:
+ case PlSqlParser.NETWORK:
+ case PlSqlParser.NEVER:
+ case PlSqlParser.NEW:
+ case PlSqlParser.NEW_TIME:
+ case PlSqlParser.NEXT_DAY:
+ case PlSqlParser.NEXT:
+ case PlSqlParser.NL_AJ:
+ case PlSqlParser.NLJ_BATCHING:
+ case PlSqlParser.NLJ_INDEX_FILTER:
+ case PlSqlParser.NLJ_INDEX_SCAN:
+ case PlSqlParser.NLJ_PREFETCH:
+ case PlSqlParser.NLS_CALENDAR:
+ case PlSqlParser.NLS_CHARACTERSET:
+ case PlSqlParser.NLS_CHARSET_DECL_LEN:
+ case PlSqlParser.NLS_CHARSET_ID:
+ case PlSqlParser.NLS_CHARSET_NAME:
+ case PlSqlParser.NLS_COMP:
+ case PlSqlParser.NLS_CURRENCY:
+ case PlSqlParser.NLS_DATE_FORMAT:
+ case PlSqlParser.NLS_DATE_LANGUAGE:
+ case PlSqlParser.NLS_INITCAP:
+ case PlSqlParser.NLS_ISO_CURRENCY:
+ case PlSqlParser.NL_SJ:
+ case PlSqlParser.NLS_LANG:
+ case PlSqlParser.NLS_LANGUAGE:
+ case PlSqlParser.NLS_LENGTH_SEMANTICS:
+ case PlSqlParser.NLS_LOWER:
+ case PlSqlParser.NLS_NCHAR_CONV_EXCP:
+ case PlSqlParser.NLS_NUMERIC_CHARACTERS:
+ case PlSqlParser.NLS_SORT:
+ case PlSqlParser.NLSSORT:
+ case PlSqlParser.NLS_SPECIAL_CHARS:
+ case PlSqlParser.NLS_TERRITORY:
+ case PlSqlParser.NLS_UPPER:
+ case PlSqlParser.NO_ACCESS:
+ case PlSqlParser.NO_ADAPTIVE_PLAN:
+ case PlSqlParser.NO_ANSI_REARCH:
+ case PlSqlParser.NOAPPEND:
+ case PlSqlParser.NOARCHIVELOG:
+ case PlSqlParser.NOAUDIT:
+ case PlSqlParser.NO_AUTO_REOPTIMIZE:
+ case PlSqlParser.NO_BASETABLE_MULTIMV_REWRITE:
+ case PlSqlParser.NO_BATCH_TABLE_ACCESS_BY_ROWID:
+ case PlSqlParser.NO_BIND_AWARE:
+ case PlSqlParser.NO_BUFFER:
+ case PlSqlParser.NOCACHE:
+ case PlSqlParser.NO_CARTESIAN:
+ case PlSqlParser.NO_CHECK_ACL_REWRITE:
+ case PlSqlParser.NO_CLUSTER_BY_ROWID:
+ case PlSqlParser.NO_CLUSTERING:
+ case PlSqlParser.NO_COALESCE_SQ:
+ case PlSqlParser.NO_COMMON_DATA:
+ case PlSqlParser.NO_CONNECT_BY_CB_WHR_ONLY:
+ case PlSqlParser.NO_CONNECT_BY_COMBINE_SW:
+ case PlSqlParser.NO_CONNECT_BY_COST_BASED:
+ case PlSqlParser.NO_CONNECT_BY_ELIM_DUPS:
+ case PlSqlParser.NO_CONNECT_BY_FILTERING:
+ case PlSqlParser.NOCOPY:
+ case PlSqlParser.NO_COST_XML_QUERY_REWRITE:
+ case PlSqlParser.NO_CPU_COSTING:
+ case PlSqlParser.NOCPU_COSTING:
+ case PlSqlParser.NOCYCLE:
+ case PlSqlParser.NO_DATA_SECURITY_REWRITE:
+ case PlSqlParser.NO_DECORRELATE:
+ case PlSqlParser.NODELAY:
+ case PlSqlParser.NO_DOMAIN_INDEX_FILTER:
+ case PlSqlParser.NO_DST_UPGRADE_INSERT_CONV:
+ case PlSqlParser.NO_ELIM_GROUPBY:
+ case PlSqlParser.NO_ELIMINATE_JOIN:
+ case PlSqlParser.NO_ELIMINATE_OBY:
+ case PlSqlParser.NO_ELIMINATE_OUTER_JOIN:
+ case PlSqlParser.NOENTITYESCAPING:
+ case PlSqlParser.NO_EXPAND_GSET_TO_UNION:
+ case PlSqlParser.NO_EXPAND:
+ case PlSqlParser.NO_EXPAND_TABLE:
+ case PlSqlParser.NO_FACT:
+ case PlSqlParser.NO_FACTORIZE_JOIN:
+ case PlSqlParser.NO_FILTERING:
+ case PlSqlParser.NOFORCE:
+ case PlSqlParser.NO_FULL_OUTER_JOIN_TO_OUTER:
+ case PlSqlParser.NO_GATHER_OPTIMIZER_STATISTICS:
+ case PlSqlParser.NO_GBY_PUSHDOWN:
+ case PlSqlParser.NOGUARANTEE:
+ case PlSqlParser.NO_INDEX_FFS:
+ case PlSqlParser.NO_INDEX:
+ case PlSqlParser.NO_INDEX_SS:
+ case PlSqlParser.NO_INMEMORY:
+ case PlSqlParser.NO_INMEMORY_PRUNING:
+ case PlSqlParser.NOKEEP:
+ case PlSqlParser.NO_LOAD:
+ case PlSqlParser.NOLOCAL:
+ case PlSqlParser.NOLOGGING:
+ case PlSqlParser.NOMAPPING:
+ case PlSqlParser.NOMAXVALUE:
+ case PlSqlParser.NO_MERGE:
+ case PlSqlParser.NOMINIMIZE:
+ case PlSqlParser.NOMINVALUE:
+ case PlSqlParser.NO_MODEL_PUSH_REF:
+ case PlSqlParser.NO_MONITORING:
+ case PlSqlParser.NOMONITORING:
+ case PlSqlParser.NO_MONITOR:
+ case PlSqlParser.NO_MULTIMV_REWRITE:
+ case PlSqlParser.NO_NATIVE_FULL_OUTER_JOIN:
+ case PlSqlParser.NONBLOCKING:
+ case PlSqlParser.NONEDITIONABLE:
+ case PlSqlParser.NONE:
+ case PlSqlParser.NO_NLJ_BATCHING:
+ case PlSqlParser.NO_NLJ_PREFETCH:
+ case PlSqlParser.NO:
+ case PlSqlParser.NONSCHEMA:
+ case PlSqlParser.NO_OBJECT_LINK:
+ case PlSqlParser.NOORDER:
+ case PlSqlParser.NO_ORDER_ROLLUPS:
+ case PlSqlParser.NO_OUTER_JOIN_TO_ANTI:
+ case PlSqlParser.NO_OUTER_JOIN_TO_INNER:
+ case PlSqlParser.NOOVERRIDE:
+ case PlSqlParser.NO_PARALLEL_INDEX:
+ case PlSqlParser.NOPARALLEL_INDEX:
+ case PlSqlParser.NO_PARALLEL:
+ case PlSqlParser.NOPARALLEL:
+ case PlSqlParser.NO_PARTIAL_COMMIT:
+ case PlSqlParser.NO_PARTIAL_JOIN:
+ case PlSqlParser.NO_PARTIAL_ROLLUP_PUSHDOWN:
+ case PlSqlParser.NOPARTITION:
+ case PlSqlParser.NO_PLACE_DISTINCT:
+ case PlSqlParser.NO_PLACE_GROUP_BY:
+ case PlSqlParser.NO_PQ_CONCURRENT_UNION:
+ case PlSqlParser.NO_PQ_MAP:
+ case PlSqlParser.NO_PQ_REPLICATE:
+ case PlSqlParser.NO_PQ_SKEW:
+ case PlSqlParser.NO_PRUNE_GSETS:
+ case PlSqlParser.NO_PULL_PRED:
+ case PlSqlParser.NO_PUSH_PRED:
+ case PlSqlParser.NO_PUSH_SUBQ:
+ case PlSqlParser.NO_PX_FAULT_TOLERANCE:
+ case PlSqlParser.NO_PX_JOIN_FILTER:
+ case PlSqlParser.NO_QKN_BUFF:
+ case PlSqlParser.NO_QUERY_TRANSFORMATION:
+ case PlSqlParser.NO_REF_CASCADE:
+ case PlSqlParser.NORELOCATE:
+ case PlSqlParser.NORELY:
+ case PlSqlParser.NOREPAIR:
+ case PlSqlParser.NOREPLAY:
+ case PlSqlParser.NORESETLOGS:
+ case PlSqlParser.NO_RESULT_CACHE:
+ case PlSqlParser.NOREVERSE:
+ case PlSqlParser.NO_REWRITE:
+ case PlSqlParser.NOREWRITE:
+ case PlSqlParser.NORMAL:
+ case PlSqlParser.NO_ROOT_SW_FOR_LOCAL:
+ case PlSqlParser.NOROWDEPENDENCIES:
+ case PlSqlParser.NOSCHEMACHECK:
+ case PlSqlParser.NOSEGMENT:
+ case PlSqlParser.NO_SEMIJOIN:
+ case PlSqlParser.NO_SEMI_TO_INNER:
+ case PlSqlParser.NO_SET_TO_JOIN:
+ case PlSqlParser.NOSORT:
+ case PlSqlParser.NO_SQL_TRANSLATION:
+ case PlSqlParser.NO_SQL_TUNE:
+ case PlSqlParser.NO_STAR_TRANSFORMATION:
+ case PlSqlParser.NO_STATEMENT_QUEUING:
+ case PlSqlParser.NO_STATS_GSETS:
+ case PlSqlParser.NOSTRICT:
+ case PlSqlParser.NO_SUBQUERY_PRUNING:
+ case PlSqlParser.NO_SUBSTRB_PAD:
+ case PlSqlParser.NO_SWAP_JOIN_INPUTS:
+ case PlSqlParser.NOSWITCH:
+ case PlSqlParser.NO_TABLE_LOOKUP_BY_NL:
+ case PlSqlParser.NO_TEMP_TABLE:
+ case PlSqlParser.NOTHING:
+ case PlSqlParser.NOTIFICATION:
+ case PlSqlParser.NO_TRANSFORM_DISTINCT_AGG:
+ case PlSqlParser.NO_UNNEST:
+ case PlSqlParser.NO_USE_CUBE:
+ case PlSqlParser.NO_USE_HASH_AGGREGATION:
+ case PlSqlParser.NO_USE_HASH_GBY_FOR_PUSHDOWN:
+ case PlSqlParser.NO_USE_HASH:
+ case PlSqlParser.NO_USE_INVISIBLE_INDEXES:
+ case PlSqlParser.NO_USE_MERGE:
+ case PlSqlParser.NO_USE_NL:
+ case PlSqlParser.NO_USE_VECTOR_AGGREGATION:
+ case PlSqlParser.NOVALIDATE:
+ case PlSqlParser.NO_VECTOR_TRANSFORM_DIMS:
+ case PlSqlParser.NO_VECTOR_TRANSFORM_FACT:
+ case PlSqlParser.NO_VECTOR_TRANSFORM:
+ case PlSqlParser.NO_XDB_FASTPATH_INSERT:
+ case PlSqlParser.NO_XML_DML_REWRITE:
+ case PlSqlParser.NO_XMLINDEX_REWRITE_IN_SELECT:
+ case PlSqlParser.NO_XMLINDEX_REWRITE:
+ case PlSqlParser.NO_XML_QUERY_REWRITE:
+ case PlSqlParser.NO_ZONEMAP:
+ case PlSqlParser.NTH_VALUE:
+ case PlSqlParser.NULLIF:
+ case PlSqlParser.NULLS:
+ case PlSqlParser.NUMBER:
+ case PlSqlParser.NUMERIC:
+ case PlSqlParser.NUM_INDEX_KEYS:
+ case PlSqlParser.NUMTODSINTERVAL:
+ case PlSqlParser.NUMTOYMINTERVAL:
+ case PlSqlParser.NVARCHAR2:
+ case PlSqlParser.NVL2:
+ case PlSqlParser.OBJECT2XML:
+ case PlSqlParser.OBJECT:
+ case PlSqlParser.OBJ_ID:
+ case PlSqlParser.OBJNO:
+ case PlSqlParser.OBJNO_REUSE:
+ case PlSqlParser.OCCURENCES:
+ case PlSqlParser.OFFLINE:
+ case PlSqlParser.OFF:
+ case PlSqlParser.OFFSET:
+ case PlSqlParser.OIDINDEX:
+ case PlSqlParser.OID:
+ case PlSqlParser.OLAP:
+ case PlSqlParser.OLD:
+ case PlSqlParser.OLD_PUSH_PRED:
+ case PlSqlParser.OLS:
+ case PlSqlParser.OLTP:
+ case PlSqlParser.OMIT:
+ case PlSqlParser.ONE:
+ case PlSqlParser.ONLINE:
+ case PlSqlParser.ONLY:
+ case PlSqlParser.OPAQUE:
+ case PlSqlParser.OPAQUE_TRANSFORM:
+ case PlSqlParser.OPAQUE_XCANONICAL:
+ case PlSqlParser.OPCODE:
+ case PlSqlParser.OPEN:
+ case PlSqlParser.OPERATIONS:
+ case PlSqlParser.OPERATOR:
+ case PlSqlParser.OPT_ESTIMATE:
+ case PlSqlParser.OPTIMAL:
+ case PlSqlParser.OPTIMIZE:
+ case PlSqlParser.OPTIMIZER_FEATURES_ENABLE:
+ case PlSqlParser.OPTIMIZER_GOAL:
+ case PlSqlParser.OPT_PARAM:
+ case PlSqlParser.ORA_BRANCH:
+ case PlSqlParser.ORA_CHECK_ACL:
+ case PlSqlParser.ORA_CHECK_PRIVILEGE:
+ case PlSqlParser.ORA_CLUSTERING:
+ case PlSqlParser.ORADATA:
+ case PlSqlParser.ORADEBUG:
+ case PlSqlParser.ORA_DST_AFFECTED:
+ case PlSqlParser.ORA_DST_CONVERT:
+ case PlSqlParser.ORA_DST_ERROR:
+ case PlSqlParser.ORA_GET_ACLIDS:
+ case PlSqlParser.ORA_GET_PRIVILEGES:
+ case PlSqlParser.ORA_HASH:
+ case PlSqlParser.ORA_INVOKING_USERID:
+ case PlSqlParser.ORA_INVOKING_USER:
+ case PlSqlParser.ORA_INVOKING_XS_USER_GUID:
+ case PlSqlParser.ORA_INVOKING_XS_USER:
+ case PlSqlParser.ORA_RAWCOMPARE:
+ case PlSqlParser.ORA_RAWCONCAT:
+ case PlSqlParser.ORA_ROWSCN:
+ case PlSqlParser.ORA_ROWSCN_RAW:
+ case PlSqlParser.ORA_ROWVERSION:
+ case PlSqlParser.ORA_TABVERSION:
+ case PlSqlParser.ORA_WRITE_TIME:
+ case PlSqlParser.ORDERED:
+ case PlSqlParser.ORDERED_PREDICATES:
+ case PlSqlParser.ORDINALITY:
+ case PlSqlParser.OR_EXPAND:
+ case PlSqlParser.ORGANIZATION:
+ case PlSqlParser.OR_PREDICATES:
+ case PlSqlParser.OSERROR:
+ case PlSqlParser.OTHER:
+ case PlSqlParser.OUTER_JOIN_TO_ANTI:
+ case PlSqlParser.OUTER_JOIN_TO_INNER:
+ case PlSqlParser.OUTER:
+ case PlSqlParser.OUTLINE_LEAF:
+ case PlSqlParser.OUTLINE:
+ case PlSqlParser.OUT_OF_LINE:
+ case PlSqlParser.OUT:
+ case PlSqlParser.OVERFLOW_NOMOVE:
+ case PlSqlParser.OVERFLOW:
+ case PlSqlParser.OVERLAPS:
+ case PlSqlParser.OVER:
+ case PlSqlParser.OVERRIDING:
+ case PlSqlParser.OWNER:
+ case PlSqlParser.OWNERSHIP:
+ case PlSqlParser.OWN:
+ case PlSqlParser.PACKAGE:
+ case PlSqlParser.PACKAGES:
+ case PlSqlParser.PARALLEL_ENABLE:
+ case PlSqlParser.PARALLEL_INDEX:
+ case PlSqlParser.PARALLEL:
+ case PlSqlParser.PARAMETERS:
+ case PlSqlParser.PARAM:
+ case PlSqlParser.PARENT:
+ case PlSqlParser.PARITY:
+ case PlSqlParser.PARTIAL_JOIN:
+ case PlSqlParser.PARTIALLY:
+ case PlSqlParser.PARTIAL:
+ case PlSqlParser.PARTIAL_ROLLUP_PUSHDOWN:
+ case PlSqlParser.PARTITION_HASH:
+ case PlSqlParser.PARTITION_LIST:
+ case PlSqlParser.PARTITION:
+ case PlSqlParser.PARTITION_RANGE:
+ case PlSqlParser.PARTITIONS:
+ case PlSqlParser.PARTNUMINST:
+ case PlSqlParser.PASSING:
+ case PlSqlParser.PASSWORD_GRACE_TIME:
+ case PlSqlParser.PASSWORD_LIFE_TIME:
+ case PlSqlParser.PASSWORD_LOCK_TIME:
+ case PlSqlParser.PASSWORD:
+ case PlSqlParser.PASSWORD_REUSE_MAX:
+ case PlSqlParser.PASSWORD_REUSE_TIME:
+ case PlSqlParser.PASSWORD_VERIFY_FUNCTION:
+ case PlSqlParser.PAST:
+ case PlSqlParser.PATCH:
+ case PlSqlParser.PATH:
+ case PlSqlParser.PATH_PREFIX:
+ case PlSqlParser.PATHS:
+ case PlSqlParser.PATTERN:
+ case PlSqlParser.PBL_HS_BEGIN:
+ case PlSqlParser.PBL_HS_END:
+ case PlSqlParser.PCTINCREASE:
+ case PlSqlParser.PCTTHRESHOLD:
+ case PlSqlParser.PCTUSED:
+ case PlSqlParser.PCTVERSION:
+ case PlSqlParser.PENDING:
+ case PlSqlParser.PERCENT_KEYWORD:
+ case PlSqlParser.PERCENT_RANKM:
+ case PlSqlParser.PERFORMANCE:
+ case PlSqlParser.PERIOD_KEYWORD:
+ case PlSqlParser.PERMANENT:
+ case PlSqlParser.PERMISSION:
+ case PlSqlParser.PERMUTE:
+ case PlSqlParser.PER:
+ case PlSqlParser.PFILE:
+ case PlSqlParser.PHYSICAL:
+ case PlSqlParser.PIKEY:
+ case PlSqlParser.PIPELINED:
+ case PlSqlParser.PIV_GB:
+ case PlSqlParser.PIVOT:
+ case PlSqlParser.PIV_SSF:
+ case PlSqlParser.PLACE_DISTINCT:
+ case PlSqlParser.PLACE_GROUP_BY:
+ case PlSqlParser.PLAN:
+ case PlSqlParser.PLSCOPE_SETTINGS:
+ case PlSqlParser.PLS_INTEGER:
+ case PlSqlParser.PLSQL_CCFLAGS:
+ case PlSqlParser.PLSQL_CODE_TYPE:
+ case PlSqlParser.PLSQL_DEBUG:
+ case PlSqlParser.PLSQL_OPTIMIZE_LEVEL:
+ case PlSqlParser.PLSQL_WARNINGS:
+ case PlSqlParser.PLUGGABLE:
+ case PlSqlParser.POINT:
+ case PlSqlParser.POLICY:
+ case PlSqlParser.POOL_16K:
+ case PlSqlParser.POOL_2K:
+ case PlSqlParser.POOL_32K:
+ case PlSqlParser.POOL_4K:
+ case PlSqlParser.POOL_8K:
+ case PlSqlParser.POSITIVEN:
+ case PlSqlParser.POSITIVE:
+ case PlSqlParser.POST_TRANSACTION:
+ case PlSqlParser.POWERMULTISET_BY_CARDINALITY:
+ case PlSqlParser.POWERMULTISET:
+ case PlSqlParser.POWER:
+ case PlSqlParser.PQ_CONCURRENT_UNION:
+ case PlSqlParser.PQ_DISTRIBUTE:
+ case PlSqlParser.PQ_DISTRIBUTE_WINDOW:
+ case PlSqlParser.PQ_FILTER:
+ case PlSqlParser.PQ_MAP:
+ case PlSqlParser.PQ_NOMAP:
+ case PlSqlParser.PQ_REPLICATE:
+ case PlSqlParser.PQ_SKEW:
+ case PlSqlParser.PRAGMA:
+ case PlSqlParser.PREBUILT:
+ case PlSqlParser.PRECEDES:
+ case PlSqlParser.PRECEDING:
+ case PlSqlParser.PRECISION:
+ case PlSqlParser.PRECOMPUTE_SUBQUERY:
+ case PlSqlParser.PREDICATE_REORDERS:
+ case PlSqlParser.PRELOAD:
+ case PlSqlParser.PREPARE:
+ case PlSqlParser.PRESENTNNV:
+ case PlSqlParser.PRESENT:
+ case PlSqlParser.PRESENTV:
+ case PlSqlParser.PRESERVE_OID:
+ case PlSqlParser.PRESERVE:
+ case PlSqlParser.PRETTY:
+ case PlSqlParser.PREVIOUS:
+ case PlSqlParser.PREV:
+ case PlSqlParser.PRIMARY:
+ case PlSqlParser.PRINTBLOBTOCLOB:
+ case PlSqlParser.PRIORITY:
+ case PlSqlParser.PRIVATE:
+ case PlSqlParser.PRIVATE_SGA:
+ case PlSqlParser.PRIVILEGED:
+ case PlSqlParser.PRIVILEGE:
+ case PlSqlParser.PRIVILEGES:
+ case PlSqlParser.PROCEDURAL:
+ case PlSqlParser.PROCEDURE:
+ case PlSqlParser.PROCESS:
+ case PlSqlParser.PROFILE:
+ case PlSqlParser.PROGRAM:
+ case PlSqlParser.PROJECT:
+ case PlSqlParser.PROPAGATE:
+ case PlSqlParser.PROTECTED:
+ case PlSqlParser.PROTECTION:
+ case PlSqlParser.PROXY:
+ case PlSqlParser.PRUNING:
+ case PlSqlParser.PULL_PRED:
+ case PlSqlParser.PURGE:
+ case PlSqlParser.PUSH_PRED:
+ case PlSqlParser.PUSH_SUBQ:
+ case PlSqlParser.PX_FAULT_TOLERANCE:
+ case PlSqlParser.PX_GRANULE:
+ case PlSqlParser.PX_JOIN_FILTER:
+ case PlSqlParser.QB_NAME:
+ case PlSqlParser.QUERY_BLOCK:
+ case PlSqlParser.QUERY:
+ case PlSqlParser.QUEUE_CURR:
+ case PlSqlParser.QUEUE:
+ case PlSqlParser.QUEUE_ROWP:
+ case PlSqlParser.QUIESCE:
+ case PlSqlParser.QUORUM:
+ case PlSqlParser.QUOTA:
+ case PlSqlParser.RAISE:
+ case PlSqlParser.RANDOM_LOCAL:
+ case PlSqlParser.RANDOM:
+ case PlSqlParser.RANGE:
+ case PlSqlParser.RANKM:
+ case PlSqlParser.RAPIDLY:
+ case PlSqlParser.RAW:
+ case PlSqlParser.RAWTOHEX:
+ case PlSqlParser.RAWTONHEX:
+ case PlSqlParser.RBA:
+ case PlSqlParser.RBO_OUTLINE:
+ case PlSqlParser.RDBA:
+ case PlSqlParser.READ:
+ case PlSqlParser.READS:
+ case PlSqlParser.REALM:
+ case PlSqlParser.REAL:
+ case PlSqlParser.REBALANCE:
+ case PlSqlParser.REBUILD:
+ case PlSqlParser.RECORD:
+ case PlSqlParser.RECORDS_PER_BLOCK:
+ case PlSqlParser.RECOVERABLE:
+ case PlSqlParser.RECOVER:
+ case PlSqlParser.RECOVERY:
+ case PlSqlParser.RECYCLEBIN:
+ case PlSqlParser.RECYCLE:
+ case PlSqlParser.REDACTION:
+ case PlSqlParser.REDEFINE:
+ case PlSqlParser.REDO:
+ case PlSqlParser.REDUCED:
+ case PlSqlParser.REDUNDANCY:
+ case PlSqlParser.REF_CASCADE_CURSOR:
+ case PlSqlParser.REFERENCED:
+ case PlSqlParser.REFERENCE:
+ case PlSqlParser.REFERENCES:
+ case PlSqlParser.REFERENCING:
+ case PlSqlParser.REF:
+ case PlSqlParser.REFRESH:
+ case PlSqlParser.REFTOHEX:
+ case PlSqlParser.REGEXP_COUNT:
+ case PlSqlParser.REGEXP_INSTR:
+ case PlSqlParser.REGEXP_LIKE:
+ case PlSqlParser.REGEXP_REPLACE:
+ case PlSqlParser.REGEXP_SUBSTR:
+ case PlSqlParser.REGISTER:
+ case PlSqlParser.REGR_AVGX:
+ case PlSqlParser.REGR_AVGY:
+ case PlSqlParser.REGR_COUNT:
+ case PlSqlParser.REGR_INTERCEPT:
+ case PlSqlParser.REGR_R2:
+ case PlSqlParser.REGR_SLOPE:
+ case PlSqlParser.REGR_SXX:
+ case PlSqlParser.REGR_SXY:
+ case PlSqlParser.REGR_SYY:
+ case PlSqlParser.REGULAR:
+ case PlSqlParser.REJECT:
+ case PlSqlParser.REKEY:
+ case PlSqlParser.RELATIONAL:
+ case PlSqlParser.RELOCATE:
+ case PlSqlParser.RELY:
+ case PlSqlParser.REMAINDER:
+ case PlSqlParser.REMOTE_MAPPED:
+ case PlSqlParser.REMOVE:
+ case PlSqlParser.RENAME:
+ case PlSqlParser.REPAIR:
+ case PlSqlParser.REPEAT:
+ case PlSqlParser.REPLACE:
+ case PlSqlParser.REPLICATION:
+ case PlSqlParser.REQUIRED:
+ case PlSqlParser.RESETLOGS:
+ case PlSqlParser.RESET:
+ case PlSqlParser.RESIZE:
+ case PlSqlParser.RESOLVE:
+ case PlSqlParser.RESOLVER:
+ case PlSqlParser.RESPECT:
+ case PlSqlParser.RESTART:
+ case PlSqlParser.RESTORE_AS_INTERVALS:
+ case PlSqlParser.RESTORE:
+ case PlSqlParser.RESTRICT_ALL_REF_CONS:
+ case PlSqlParser.RESTRICTED:
+ case PlSqlParser.RESTRICT_REFERENCES:
+ case PlSqlParser.RESTRICT:
+ case PlSqlParser.RESULT_CACHE:
+ case PlSqlParser.RESULT:
+ case PlSqlParser.RESUMABLE:
+ case PlSqlParser.RESUME:
+ case PlSqlParser.RETENTION:
+ case PlSqlParser.RETRY_ON_ROW_CHANGE:
+ case PlSqlParser.RETURNING:
+ case PlSqlParser.RETURN:
+ case PlSqlParser.REUSE:
+ case PlSqlParser.REVERSE:
+ case PlSqlParser.REWRITE_OR_ERROR:
+ case PlSqlParser.REWRITE:
+ case PlSqlParser.RIGHT:
+ case PlSqlParser.ROLE:
+ case PlSqlParser.ROLESET:
+ case PlSqlParser.ROLES:
+ case PlSqlParser.ROLLBACK:
+ case PlSqlParser.ROLLING:
+ case PlSqlParser.ROLLUP:
+ case PlSqlParser.ROWDEPENDENCIES:
+ case PlSqlParser.ROWID_MAPPING_TABLE:
+ case PlSqlParser.ROWID:
+ case PlSqlParser.ROWIDTOCHAR:
+ case PlSqlParser.ROWIDTONCHAR:
+ case PlSqlParser.ROW_LENGTH:
+ case PlSqlParser.ROWNUM:
+ case PlSqlParser.ROW:
+ case PlSqlParser.ROWS:
+ case PlSqlParser.RPAD:
+ case PlSqlParser.RTRIM:
+ case PlSqlParser.RULE:
+ case PlSqlParser.RULES:
+ case PlSqlParser.RUNNING:
+ case PlSqlParser.SALT:
+ case PlSqlParser.SAMPLE:
+ case PlSqlParser.SAVE_AS_INTERVALS:
+ case PlSqlParser.SAVEPOINT:
+ case PlSqlParser.SAVE:
+ case PlSqlParser.SB4:
+ case PlSqlParser.SCALE_ROWS:
+ case PlSqlParser.SCALE:
+ case PlSqlParser.SCAN_INSTANCES:
+ case PlSqlParser.SCAN:
+ case PlSqlParser.SCHEDULER:
+ case PlSqlParser.SCHEMACHECK:
+ case PlSqlParser.SCHEMA:
+ case PlSqlParser.SCN_ASCENDING:
+ case PlSqlParser.SCN:
+ case PlSqlParser.SCOPE:
+ case PlSqlParser.SCRUB:
+ case PlSqlParser.SD_ALL:
+ case PlSqlParser.SD_INHIBIT:
+ case PlSqlParser.SDO_GEOM_MBR:
+ case PlSqlParser.SD_SHOW:
+ case PlSqlParser.SEARCH:
+ case PlSqlParser.SECOND:
+ case PlSqlParser.SECRET:
+ case PlSqlParser.SECUREFILE_DBA:
+ case PlSqlParser.SECUREFILE:
+ case PlSqlParser.SECURITY:
+ case PlSqlParser.SEED:
+ case PlSqlParser.SEG_BLOCK:
+ case PlSqlParser.SEG_FILE:
+ case PlSqlParser.SEGMENT:
+ case PlSqlParser.SELECTIVITY:
+ case PlSqlParser.SELF:
+ case PlSqlParser.SEMIJOIN_DRIVER:
+ case PlSqlParser.SEMIJOIN:
+ case PlSqlParser.SEMI_TO_INNER:
+ case PlSqlParser.SEQUENCED:
+ case PlSqlParser.SEQUENCE:
+ case PlSqlParser.SEQUENTIAL:
+ case PlSqlParser.SERIALIZABLE:
+ case PlSqlParser.SERIALLY_REUSABLE:
+ case PlSqlParser.SERIAL:
+ case PlSqlParser.SERVERERROR:
+ case PlSqlParser.SERVICE_NAME_CONVERT:
+ case PlSqlParser.SERVICES:
+ case PlSqlParser.SESSION_CACHED_CURSORS:
+ case PlSqlParser.SESSION:
+ case PlSqlParser.SESSIONS_PER_USER:
+ case PlSqlParser.SESSIONTIMEZONE:
+ case PlSqlParser.SESSIONTZNAME:
+ case PlSqlParser.SET:
+ case PlSqlParser.SETS:
+ case PlSqlParser.SETTINGS:
+ case PlSqlParser.SET_TO_JOIN:
+ case PlSqlParser.SEVERE:
+ case PlSqlParser.SHARED_POOL:
+ case PlSqlParser.SHARED:
+ case PlSqlParser.SHARING:
+ case PlSqlParser.SHELFLIFE:
+ case PlSqlParser.SHOW:
+ case PlSqlParser.SHRINK:
+ case PlSqlParser.SHUTDOWN:
+ case PlSqlParser.SIBLINGS:
+ case PlSqlParser.SID:
+ case PlSqlParser.SIGNAL_COMPONENT:
+ case PlSqlParser.SIGNAL_FUNCTION:
+ case PlSqlParser.SIGN:
+ case PlSqlParser.SIGNTYPE:
+ case PlSqlParser.SIMPLE_INTEGER:
+ case PlSqlParser.SIMPLE:
+ case PlSqlParser.SINGLE:
+ case PlSqlParser.SINGLETASK:
+ case PlSqlParser.SINH:
+ case PlSqlParser.SIN:
+ case PlSqlParser.SKIP_EXT_OPTIMIZER:
+ case PlSqlParser.SKIP_:
+ case PlSqlParser.SKIP_UNQ_UNUSABLE_IDX:
+ case PlSqlParser.SKIP_UNUSABLE_INDEXES:
+ case PlSqlParser.SMALLFILE:
+ case PlSqlParser.SMALLINT:
+ case PlSqlParser.SNAPSHOT:
+ case PlSqlParser.SOME:
+ case PlSqlParser.SORT:
+ case PlSqlParser.SOUNDEX:
+ case PlSqlParser.SOURCE_FILE_DIRECTORY:
+ case PlSqlParser.SOURCE_FILE_NAME_CONVERT:
+ case PlSqlParser.SOURCE:
+ case PlSqlParser.SPACE_KEYWORD:
+ case PlSqlParser.SPECIFICATION:
+ case PlSqlParser.SPFILE:
+ case PlSqlParser.SPLIT:
+ case PlSqlParser.SPREADSHEET:
+ case PlSqlParser.SQLDATA:
+ case PlSqlParser.SQLERROR:
+ case PlSqlParser.SQLLDR:
+ case PlSqlParser.SQL:
+ case PlSqlParser.SQL_TRACE:
+ case PlSqlParser.SQL_TRANSLATION_PROFILE:
+ case PlSqlParser.SQRT:
+ case PlSqlParser.STALE:
+ case PlSqlParser.STANDALONE:
+ case PlSqlParser.STANDARD_HASH:
+ case PlSqlParser.STANDBY_MAX_DATA_DELAY:
+ case PlSqlParser.STANDBYS:
+ case PlSqlParser.STANDBY:
+ case PlSqlParser.STAR:
+ case PlSqlParser.STAR_TRANSFORMATION:
+ case PlSqlParser.STARTUP:
+ case PlSqlParser.STATEMENT_ID:
+ case PlSqlParser.STATEMENT_QUEUING:
+ case PlSqlParser.STATEMENTS:
+ case PlSqlParser.STATEMENT:
+ case PlSqlParser.STATE:
+ case PlSqlParser.STATIC:
+ case PlSqlParser.STATISTICS:
+ case PlSqlParser.STATS_BINOMIAL_TEST:
+ case PlSqlParser.STATS_CROSSTAB:
+ case PlSqlParser.STATS_F_TEST:
+ case PlSqlParser.STATS_KS_TEST:
+ case PlSqlParser.STATS_MODE:
+ case PlSqlParser.STATS_MW_TEST:
+ case PlSqlParser.STATS_ONE_WAY_ANOVA:
+ case PlSqlParser.STATS_T_TEST_INDEP:
+ case PlSqlParser.STATS_T_TEST_INDEPU:
+ case PlSqlParser.STATS_T_TEST_ONE:
+ case PlSqlParser.STATS_T_TEST_PAIRED:
+ case PlSqlParser.STATS_WSR_TEST:
+ case PlSqlParser.STDDEV_POP:
+ case PlSqlParser.STDDEV_SAMP:
+ case PlSqlParser.STOP:
+ case PlSqlParser.STORAGE:
+ case PlSqlParser.STORE:
+ case PlSqlParser.STREAMS:
+ case PlSqlParser.STREAM:
+ case PlSqlParser.STRICT:
+ case PlSqlParser.STRING:
+ case PlSqlParser.STRIPE_COLUMNS:
+ case PlSqlParser.STRIPE_WIDTH:
+ case PlSqlParser.STRIP:
+ case PlSqlParser.STRUCTURE:
+ case PlSqlParser.SUBMULTISET:
+ case PlSqlParser.SUBPARTITION_REL:
+ case PlSqlParser.SUBPARTITIONS:
+ case PlSqlParser.SUBPARTITION:
+ case PlSqlParser.SUBQUERIES:
+ case PlSqlParser.SUBQUERY_PRUNING:
+ case PlSqlParser.SUBSCRIBE:
+ case PlSqlParser.SUBSET:
+ case PlSqlParser.SUBSTITUTABLE:
+ case PlSqlParser.SUBSTR2:
+ case PlSqlParser.SUBSTR4:
+ case PlSqlParser.SUBSTRB:
+ case PlSqlParser.SUBSTRC:
+ case PlSqlParser.SUBTYPE:
+ case PlSqlParser.SUCCESSFUL:
+ case PlSqlParser.SUCCESS:
+ case PlSqlParser.SUMMARY:
+ case PlSqlParser.SUPPLEMENTAL:
+ case PlSqlParser.SUSPEND:
+ case PlSqlParser.SWAP_JOIN_INPUTS:
+ case PlSqlParser.SWITCHOVER:
+ case PlSqlParser.SWITCH:
+ case PlSqlParser.SYNCHRONOUS:
+ case PlSqlParser.SYNC:
+ case PlSqlParser.SYSASM:
+ case PlSqlParser.SYS_AUDIT:
+ case PlSqlParser.SYSAUX:
+ case PlSqlParser.SYSBACKUP:
+ case PlSqlParser.SYS_CHECKACL:
+ case PlSqlParser.SYS_CHECK_PRIVILEGE:
+ case PlSqlParser.SYS_CONNECT_BY_PATH:
+ case PlSqlParser.SYS_CONTEXT:
+ case PlSqlParser.SYSDATE:
+ case PlSqlParser.SYSDBA:
+ case PlSqlParser.SYS_DBURIGEN:
+ case PlSqlParser.SYSDG:
+ case PlSqlParser.SYS_DL_CURSOR:
+ case PlSqlParser.SYS_DM_RXFORM_CHR:
+ case PlSqlParser.SYS_DM_RXFORM_NUM:
+ case PlSqlParser.SYS_DOM_COMPARE:
+ case PlSqlParser.SYS_DST_PRIM2SEC:
+ case PlSqlParser.SYS_DST_SEC2PRIM:
+ case PlSqlParser.SYS_ET_BFILE_TO_RAW:
+ case PlSqlParser.SYS_ET_BLOB_TO_IMAGE:
+ case PlSqlParser.SYS_ET_IMAGE_TO_BLOB:
+ case PlSqlParser.SYS_ET_RAW_TO_BFILE:
+ case PlSqlParser.SYS_EXTPDTXT:
+ case PlSqlParser.SYS_EXTRACT_UTC:
+ case PlSqlParser.SYS_FBT_INSDEL:
+ case PlSqlParser.SYS_FILTER_ACLS:
+ case PlSqlParser.SYS_FNMATCHES:
+ case PlSqlParser.SYS_FNREPLACE:
+ case PlSqlParser.SYS_GET_ACLIDS:
+ case PlSqlParser.SYS_GET_COL_ACLIDS:
+ case PlSqlParser.SYS_GET_PRIVILEGES:
+ case PlSqlParser.SYS_GETTOKENID:
+ case PlSqlParser.SYS_GETXTIVAL:
+ case PlSqlParser.SYS_GUID:
+ case PlSqlParser.SYSGUID:
+ case PlSqlParser.SYSKM:
+ case PlSqlParser.SYS_MAKE_XMLNODEID:
+ case PlSqlParser.SYS_MAKEXML:
+ case PlSqlParser.SYS_MKXMLATTR:
+ case PlSqlParser.SYS_MKXTI:
+ case PlSqlParser.SYSOBJ:
+ case PlSqlParser.SYS_OP_ADT2BIN:
+ case PlSqlParser.SYS_OP_ADTCONS:
+ case PlSqlParser.SYS_OP_ALSCRVAL:
+ case PlSqlParser.SYS_OP_ATG:
+ case PlSqlParser.SYS_OP_BIN2ADT:
+ case PlSqlParser.SYS_OP_BITVEC:
+ case PlSqlParser.SYS_OP_BL2R:
+ case PlSqlParser.SYS_OP_BLOOM_FILTER_LIST:
+ case PlSqlParser.SYS_OP_BLOOM_FILTER:
+ case PlSqlParser.SYS_OP_C2C:
+ case PlSqlParser.SYS_OP_CAST:
+ case PlSqlParser.SYS_OP_CEG:
+ case PlSqlParser.SYS_OP_CL2C:
+ case PlSqlParser.SYS_OP_COMBINED_HASH:
+ case PlSqlParser.SYS_OP_COMP:
+ case PlSqlParser.SYS_OP_CONVERT:
+ case PlSqlParser.SYS_OP_COUNTCHG:
+ case PlSqlParser.SYS_OP_CSCONV:
+ case PlSqlParser.SYS_OP_CSCONVTEST:
+ case PlSqlParser.SYS_OP_CSR:
+ case PlSqlParser.SYS_OP_CSX_PATCH:
+ case PlSqlParser.SYS_OP_CYCLED_SEQ:
+ case PlSqlParser.SYS_OP_DECOMP:
+ case PlSqlParser.SYS_OP_DESCEND:
+ case PlSqlParser.SYS_OP_DISTINCT:
+ case PlSqlParser.SYS_OP_DRA:
+ case PlSqlParser.SYS_OP_DUMP:
+ case PlSqlParser.SYS_OP_DV_CHECK:
+ case PlSqlParser.SYS_OP_ENFORCE_NOT_NULL:
+ case PlSqlParser.SYSOPER:
+ case PlSqlParser.SYS_OP_EXTRACT:
+ case PlSqlParser.SYS_OP_GROUPING:
+ case PlSqlParser.SYS_OP_GUID:
+ case PlSqlParser.SYS_OP_HASH:
+ case PlSqlParser.SYS_OP_IIX:
+ case PlSqlParser.SYS_OP_ITR:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_CREATE:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_FILTER_LIST:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_FILTER:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_SUCCEEDED:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_USE:
+ case PlSqlParser.SYS_OP_LBID:
+ case PlSqlParser.SYS_OP_LOBLOC2BLOB:
+ case PlSqlParser.SYS_OP_LOBLOC2CLOB:
+ case PlSqlParser.SYS_OP_LOBLOC2ID:
+ case PlSqlParser.SYS_OP_LOBLOC2NCLOB:
+ case PlSqlParser.SYS_OP_LOBLOC2TYP:
+ case PlSqlParser.SYS_OP_LSVI:
+ case PlSqlParser.SYS_OP_LVL:
+ case PlSqlParser.SYS_OP_MAKEOID:
+ case PlSqlParser.SYS_OP_MAP_NONNULL:
+ case PlSqlParser.SYS_OP_MSR:
+ case PlSqlParser.SYS_OP_NICOMBINE:
+ case PlSqlParser.SYS_OP_NIEXTRACT:
+ case PlSqlParser.SYS_OP_NII:
+ case PlSqlParser.SYS_OP_NIX:
+ case PlSqlParser.SYS_OP_NOEXPAND:
+ case PlSqlParser.SYS_OP_NTCIMG:
+ case PlSqlParser.SYS_OP_NUMTORAW:
+ case PlSqlParser.SYS_OP_OIDVALUE:
+ case PlSqlParser.SYS_OP_OPNSIZE:
+ case PlSqlParser.SYS_OP_PAR_1:
+ case PlSqlParser.SYS_OP_PARGID_1:
+ case PlSqlParser.SYS_OP_PARGID:
+ case PlSqlParser.SYS_OP_PAR:
+ case PlSqlParser.SYS_OP_PART_ID:
+ case PlSqlParser.SYS_OP_PIVOT:
+ case PlSqlParser.SYS_OP_R2O:
+ case PlSqlParser.SYS_OP_RAWTONUM:
+ case PlSqlParser.SYS_OP_RDTM:
+ case PlSqlParser.SYS_OP_REF:
+ case PlSqlParser.SYS_OP_RMTD:
+ case PlSqlParser.SYS_OP_ROWIDTOOBJ:
+ case PlSqlParser.SYS_OP_RPB:
+ case PlSqlParser.SYS_OPTLOBPRBSC:
+ case PlSqlParser.SYS_OP_TOSETID:
+ case PlSqlParser.SYS_OP_TPR:
+ case PlSqlParser.SYS_OP_TRTB:
+ case PlSqlParser.SYS_OPTXICMP:
+ case PlSqlParser.SYS_OPTXQCASTASNQ:
+ case PlSqlParser.SYS_OP_UNDESCEND:
+ case PlSqlParser.SYS_OP_VECAND:
+ case PlSqlParser.SYS_OP_VECBIT:
+ case PlSqlParser.SYS_OP_VECOR:
+ case PlSqlParser.SYS_OP_VECXOR:
+ case PlSqlParser.SYS_OP_VERSION:
+ case PlSqlParser.SYS_OP_VREF:
+ case PlSqlParser.SYS_OP_VVD:
+ case PlSqlParser.SYS_OP_XMLCONS_FOR_CSX:
+ case PlSqlParser.SYS_OP_XPTHATG:
+ case PlSqlParser.SYS_OP_XPTHIDX:
+ case PlSqlParser.SYS_OP_XPTHOP:
+ case PlSqlParser.SYS_OP_XTXT2SQLT:
+ case PlSqlParser.SYS_OP_ZONE_ID:
+ case PlSqlParser.SYS_ORDERKEY_DEPTH:
+ case PlSqlParser.SYS_ORDERKEY_MAXCHILD:
+ case PlSqlParser.SYS_ORDERKEY_PARENT:
+ case PlSqlParser.SYS_PARALLEL_TXN:
+ case PlSqlParser.SYS_PATHID_IS_ATTR:
+ case PlSqlParser.SYS_PATHID_IS_NMSPC:
+ case PlSqlParser.SYS_PATHID_LASTNAME:
+ case PlSqlParser.SYS_PATHID_LASTNMSPC:
+ case PlSqlParser.SYS_PATH_REVERSE:
+ case PlSqlParser.SYS_PXQEXTRACT:
+ case PlSqlParser.SYS_RAW_TO_XSID:
+ case PlSqlParser.SYS_RID_ORDER:
+ case PlSqlParser.SYS_ROW_DELTA:
+ case PlSqlParser.SYS_SC_2_XMLT:
+ case PlSqlParser.SYS_SYNRCIREDO:
+ case PlSqlParser.SYSTEM_DEFINED:
+ case PlSqlParser.SYSTEM:
+ case PlSqlParser.SYSTIMESTAMP:
+ case PlSqlParser.SYS_TYPEID:
+ case PlSqlParser.SYS_UMAKEXML:
+ case PlSqlParser.SYS_XMLANALYZE:
+ case PlSqlParser.SYS_XMLCONTAINS:
+ case PlSqlParser.SYS_XMLCONV:
+ case PlSqlParser.SYS_XMLEXNSURI:
+ case PlSqlParser.SYS_XMLGEN:
+ case PlSqlParser.SYS_XMLI_LOC_ISNODE:
+ case PlSqlParser.SYS_XMLI_LOC_ISTEXT:
+ case PlSqlParser.SYS_XMLINSTR:
+ case PlSqlParser.SYS_XMLLOCATOR_GETSVAL:
+ case PlSqlParser.SYS_XMLNODEID_GETCID:
+ case PlSqlParser.SYS_XMLNODEID_GETLOCATOR:
+ case PlSqlParser.SYS_XMLNODEID_GETOKEY:
+ case PlSqlParser.SYS_XMLNODEID_GETPATHID:
+ case PlSqlParser.SYS_XMLNODEID_GETPTRID:
+ case PlSqlParser.SYS_XMLNODEID_GETRID:
+ case PlSqlParser.SYS_XMLNODEID_GETSVAL:
+ case PlSqlParser.SYS_XMLNODEID_GETTID:
+ case PlSqlParser.SYS_XMLNODEID:
+ case PlSqlParser.SYS_XMLT_2_SC:
+ case PlSqlParser.SYS_XMLTRANSLATE:
+ case PlSqlParser.SYS_XMLTYPE2SQL:
+ case PlSqlParser.SYS_XQ_ASQLCNV:
+ case PlSqlParser.SYS_XQ_ATOMCNVCHK:
+ case PlSqlParser.SYS_XQBASEURI:
+ case PlSqlParser.SYS_XQCASTABLEERRH:
+ case PlSqlParser.SYS_XQCODEP2STR:
+ case PlSqlParser.SYS_XQCODEPEQ:
+ case PlSqlParser.SYS_XQCON2SEQ:
+ case PlSqlParser.SYS_XQCONCAT:
+ case PlSqlParser.SYS_XQDELETE:
+ case PlSqlParser.SYS_XQDFLTCOLATION:
+ case PlSqlParser.SYS_XQDOC:
+ case PlSqlParser.SYS_XQDOCURI:
+ case PlSqlParser.SYS_XQDURDIV:
+ case PlSqlParser.SYS_XQED4URI:
+ case PlSqlParser.SYS_XQENDSWITH:
+ case PlSqlParser.SYS_XQERRH:
+ case PlSqlParser.SYS_XQERR:
+ case PlSqlParser.SYS_XQESHTMLURI:
+ case PlSqlParser.SYS_XQEXLOBVAL:
+ case PlSqlParser.SYS_XQEXSTWRP:
+ case PlSqlParser.SYS_XQEXTRACT:
+ case PlSqlParser.SYS_XQEXTRREF:
+ case PlSqlParser.SYS_XQEXVAL:
+ case PlSqlParser.SYS_XQFB2STR:
+ case PlSqlParser.SYS_XQFNBOOL:
+ case PlSqlParser.SYS_XQFNCMP:
+ case PlSqlParser.SYS_XQFNDATIM:
+ case PlSqlParser.SYS_XQFNLNAME:
+ case PlSqlParser.SYS_XQFNNM:
+ case PlSqlParser.SYS_XQFNNSURI:
+ case PlSqlParser.SYS_XQFNPREDTRUTH:
+ case PlSqlParser.SYS_XQFNQNM:
+ case PlSqlParser.SYS_XQFNROOT:
+ case PlSqlParser.SYS_XQFORMATNUM:
+ case PlSqlParser.SYS_XQFTCONTAIN:
+ case PlSqlParser.SYS_XQFUNCR:
+ case PlSqlParser.SYS_XQGETCONTENT:
+ case PlSqlParser.SYS_XQINDXOF:
+ case PlSqlParser.SYS_XQINSERT:
+ case PlSqlParser.SYS_XQINSPFX:
+ case PlSqlParser.SYS_XQIRI2URI:
+ case PlSqlParser.SYS_XQLANG:
+ case PlSqlParser.SYS_XQLLNMFRMQNM:
+ case PlSqlParser.SYS_XQMKNODEREF:
+ case PlSqlParser.SYS_XQNILLED:
+ case PlSqlParser.SYS_XQNODENAME:
+ case PlSqlParser.SYS_XQNORMSPACE:
+ case PlSqlParser.SYS_XQNORMUCODE:
+ case PlSqlParser.SYS_XQ_NRNG:
+ case PlSqlParser.SYS_XQNSP4PFX:
+ case PlSqlParser.SYS_XQNSPFRMQNM:
+ case PlSqlParser.SYS_XQPFXFRMQNM:
+ case PlSqlParser.SYS_XQ_PKSQL2XML:
+ case PlSqlParser.SYS_XQPOLYABS:
+ case PlSqlParser.SYS_XQPOLYADD:
+ case PlSqlParser.SYS_XQPOLYCEL:
+ case PlSqlParser.SYS_XQPOLYCSTBL:
+ case PlSqlParser.SYS_XQPOLYCST:
+ case PlSqlParser.SYS_XQPOLYDIV:
+ case PlSqlParser.SYS_XQPOLYFLR:
+ case PlSqlParser.SYS_XQPOLYMOD:
+ case PlSqlParser.SYS_XQPOLYMUL:
+ case PlSqlParser.SYS_XQPOLYRND:
+ case PlSqlParser.SYS_XQPOLYSQRT:
+ case PlSqlParser.SYS_XQPOLYSUB:
+ case PlSqlParser.SYS_XQPOLYUMUS:
+ case PlSqlParser.SYS_XQPOLYUPLS:
+ case PlSqlParser.SYS_XQPOLYVEQ:
+ case PlSqlParser.SYS_XQPOLYVGE:
+ case PlSqlParser.SYS_XQPOLYVGT:
+ case PlSqlParser.SYS_XQPOLYVLE:
+ case PlSqlParser.SYS_XQPOLYVLT:
+ case PlSqlParser.SYS_XQPOLYVNE:
+ case PlSqlParser.SYS_XQREF2VAL:
+ case PlSqlParser.SYS_XQRENAME:
+ case PlSqlParser.SYS_XQREPLACE:
+ case PlSqlParser.SYS_XQRESVURI:
+ case PlSqlParser.SYS_XQRNDHALF2EVN:
+ case PlSqlParser.SYS_XQRSLVQNM:
+ case PlSqlParser.SYS_XQRYENVPGET:
+ case PlSqlParser.SYS_XQRYVARGET:
+ case PlSqlParser.SYS_XQRYWRP:
+ case PlSqlParser.SYS_XQSEQ2CON4XC:
+ case PlSqlParser.SYS_XQSEQ2CON:
+ case PlSqlParser.SYS_XQSEQDEEPEQ:
+ case PlSqlParser.SYS_XQSEQINSB:
+ case PlSqlParser.SYS_XQSEQRM:
+ case PlSqlParser.SYS_XQSEQRVS:
+ case PlSqlParser.SYS_XQSEQSUB:
+ case PlSqlParser.SYS_XQSEQTYPMATCH:
+ case PlSqlParser.SYS_XQSTARTSWITH:
+ case PlSqlParser.SYS_XQSTATBURI:
+ case PlSqlParser.SYS_XQSTR2CODEP:
+ case PlSqlParser.SYS_XQSTRJOIN:
+ case PlSqlParser.SYS_XQSUBSTRAFT:
+ case PlSqlParser.SYS_XQSUBSTRBEF:
+ case PlSqlParser.SYS_XQTOKENIZE:
+ case PlSqlParser.SYS_XQTREATAS:
+ case PlSqlParser.SYS_XQ_UPKXML2SQL:
+ case PlSqlParser.SYS_XQXFORM:
+ case PlSqlParser.SYS_XSID_TO_RAW:
+ case PlSqlParser.SYS_ZMAP_FILTER:
+ case PlSqlParser.SYS_ZMAP_REFRESH:
+ case PlSqlParser.TABLE_LOOKUP_BY_NL:
+ case PlSqlParser.TABLESPACE_NO:
+ case PlSqlParser.TABLESPACE:
+ case PlSqlParser.TABLES:
+ case PlSqlParser.TABLE_STATS:
+ case PlSqlParser.TABLE:
+ case PlSqlParser.TABNO:
+ case PlSqlParser.TAG:
+ case PlSqlParser.TANH:
+ case PlSqlParser.TAN:
+ case PlSqlParser.TBLORIDXPARTNUM:
+ case PlSqlParser.TEMPFILE:
+ case PlSqlParser.TEMPLATE:
+ case PlSqlParser.TEMPORARY:
+ case PlSqlParser.TEMP_TABLE:
+ case PlSqlParser.TEST:
+ case PlSqlParser.TEXT:
+ case PlSqlParser.THAN:
+ case PlSqlParser.THEN:
+ case PlSqlParser.THE:
+ case PlSqlParser.THREAD:
+ case PlSqlParser.THROUGH:
+ case PlSqlParser.TIER:
+ case PlSqlParser.TIES:
+ case PlSqlParser.TIMEOUT:
+ case PlSqlParser.TIMESTAMP_LTZ_UNCONSTRAINED:
+ case PlSqlParser.TIMESTAMP:
+ case PlSqlParser.TIMESTAMP_TZ_UNCONSTRAINED:
+ case PlSqlParser.TIMESTAMP_UNCONSTRAINED:
+ case PlSqlParser.TIMES:
+ case PlSqlParser.TIME:
+ case PlSqlParser.TIMEZONE_ABBR:
+ case PlSqlParser.TIMEZONE_HOUR:
+ case PlSqlParser.TIMEZONE_MINUTE:
+ case PlSqlParser.TIMEZONE_OFFSET:
+ case PlSqlParser.TIMEZONE_REGION:
+ case PlSqlParser.TIME_ZONE:
+ case PlSqlParser.TIV_GB:
+ case PlSqlParser.TIV_SSF:
+ case PlSqlParser.TO_ACLID:
+ case PlSqlParser.TO_BINARY_DOUBLE:
+ case PlSqlParser.TO_BINARY_FLOAT:
+ case PlSqlParser.TO_BLOB:
+ case PlSqlParser.TO_CLOB:
+ case PlSqlParser.TO_DSINTERVAL:
+ case PlSqlParser.TO_LOB:
+ case PlSqlParser.TO_MULTI_BYTE:
+ case PlSqlParser.TO_NCHAR:
+ case PlSqlParser.TO_NCLOB:
+ case PlSqlParser.TO_NUMBER:
+ case PlSqlParser.TOPLEVEL:
+ case PlSqlParser.TO_SINGLE_BYTE:
+ case PlSqlParser.TO_TIMESTAMP:
+ case PlSqlParser.TO_TIMESTAMP_TZ:
+ case PlSqlParser.TO_TIME:
+ case PlSqlParser.TO_TIME_TZ:
+ case PlSqlParser.TO_YMINTERVAL:
+ case PlSqlParser.TRACE:
+ case PlSqlParser.TRACING:
+ case PlSqlParser.TRACKING:
+ case PlSqlParser.TRAILING:
+ case PlSqlParser.TRANSACTION:
+ case PlSqlParser.TRANSFORM_DISTINCT_AGG:
+ case PlSqlParser.TRANSITIONAL:
+ case PlSqlParser.TRANSITION:
+ case PlSqlParser.TRANSLATE:
+ case PlSqlParser.TRANSLATION:
+ case PlSqlParser.TREAT:
+ case PlSqlParser.TRIGGERS:
+ case PlSqlParser.TRIGGER:
+ case PlSqlParser.TRUE:
+ case PlSqlParser.TRUNCATE:
+ case PlSqlParser.TRUNC:
+ case PlSqlParser.TRUSTED:
+ case PlSqlParser.TRUST:
+ case PlSqlParser.TUNING:
+ case PlSqlParser.TX:
+ case PlSqlParser.TYPES:
+ case PlSqlParser.TYPE:
+ case PlSqlParser.TZ_OFFSET:
+ case PlSqlParser.UB2:
+ case PlSqlParser.UBA:
+ case PlSqlParser.UCS2:
+ case PlSqlParser.UID:
+ case PlSqlParser.UNARCHIVED:
+ case PlSqlParser.UNBOUNDED:
+ case PlSqlParser.UNBOUND:
+ case PlSqlParser.UNCONDITIONAL:
+ case PlSqlParser.UNDER:
+ case PlSqlParser.UNDO:
+ case PlSqlParser.UNDROP:
+ case PlSqlParser.UNIFORM:
+ case PlSqlParser.UNISTR:
+ case PlSqlParser.UNLIMITED:
+ case PlSqlParser.UNLOAD:
+ case PlSqlParser.UNLOCK:
+ case PlSqlParser.UNMATCHED:
+ case PlSqlParser.UNNEST_INNERJ_DISTINCT_VIEW:
+ case PlSqlParser.UNNEST_NOSEMIJ_NODISTINCTVIEW:
+ case PlSqlParser.UNNEST_SEMIJ_VIEW:
+ case PlSqlParser.UNNEST:
+ case PlSqlParser.UNPACKED:
+ case PlSqlParser.UNPIVOT:
+ case PlSqlParser.UNPLUG:
+ case PlSqlParser.UNPROTECTED:
+ case PlSqlParser.UNQUIESCE:
+ case PlSqlParser.UNRECOVERABLE:
+ case PlSqlParser.UNRESTRICTED:
+ case PlSqlParser.UNSUBSCRIBE:
+ case PlSqlParser.UNTIL:
+ case PlSqlParser.UNUSABLE:
+ case PlSqlParser.UNUSED:
+ case PlSqlParser.UPDATABLE:
+ case PlSqlParser.UPDATED:
+ case PlSqlParser.UPDATEXML:
+ case PlSqlParser.UPD_INDEXES:
+ case PlSqlParser.UPD_JOININDEX:
+ case PlSqlParser.UPGRADE:
+ case PlSqlParser.UPPER:
+ case PlSqlParser.UPSERT:
+ case PlSqlParser.UROWID:
+ case PlSqlParser.USABLE:
+ case PlSqlParser.USAGE:
+ case PlSqlParser.USE_ANTI:
+ case PlSqlParser.USE_CONCAT:
+ case PlSqlParser.USE_CUBE:
+ case PlSqlParser.USE_HASH_AGGREGATION:
+ case PlSqlParser.USE_HASH_GBY_FOR_PUSHDOWN:
+ case PlSqlParser.USE_HASH:
+ case PlSqlParser.USE_HIDDEN_PARTITIONS:
+ case PlSqlParser.USE_INVISIBLE_INDEXES:
+ case PlSqlParser.USE_MERGE_CARTESIAN:
+ case PlSqlParser.USE_MERGE:
+ case PlSqlParser.USE_NL:
+ case PlSqlParser.USE_NL_WITH_INDEX:
+ case PlSqlParser.USE_PRIVATE_OUTLINES:
+ case PlSqlParser.USER_DATA:
+ case PlSqlParser.USER_DEFINED:
+ case PlSqlParser.USERENV:
+ case PlSqlParser.USERGROUP:
+ case PlSqlParser.USER_RECYCLEBIN:
+ case PlSqlParser.USERS:
+ case PlSqlParser.USER_TABLESPACES:
+ case PlSqlParser.USER:
+ case PlSqlParser.USE_SEMI:
+ case PlSqlParser.USE_STORED_OUTLINES:
+ case PlSqlParser.USE_TTT_FOR_GSETS:
+ case PlSqlParser.USE:
+ case PlSqlParser.USE_VECTOR_AGGREGATION:
+ case PlSqlParser.USE_WEAK_NAME_RESL:
+ case PlSqlParser.USING_NO_EXPAND:
+ case PlSqlParser.USING:
+ case PlSqlParser.UTF16BE:
+ case PlSqlParser.UTF16LE:
+ case PlSqlParser.UTF32:
+ case PlSqlParser.UTF8:
+ case PlSqlParser.V1:
+ case PlSqlParser.V2:
+ case PlSqlParser.VALIDATE:
+ case PlSqlParser.VALIDATION:
+ case PlSqlParser.VALID_TIME_END:
+ case PlSqlParser.VALUE:
+ case PlSqlParser.VARCHAR2:
+ case PlSqlParser.VARCHAR:
+ case PlSqlParser.VARIABLE:
+ case PlSqlParser.VAR_POP:
+ case PlSqlParser.VARRAYS:
+ case PlSqlParser.VARRAY:
+ case PlSqlParser.VAR_SAMP:
+ case PlSqlParser.VARYING:
+ case PlSqlParser.VECTOR_READ_TRACE:
+ case PlSqlParser.VECTOR_READ:
+ case PlSqlParser.VECTOR_TRANSFORM_DIMS:
+ case PlSqlParser.VECTOR_TRANSFORM_FACT:
+ case PlSqlParser.VECTOR_TRANSFORM:
+ case PlSqlParser.VERIFIER:
+ case PlSqlParser.VERIFY:
+ case PlSqlParser.VERSIONING:
+ case PlSqlParser.VERSIONS_ENDSCN:
+ case PlSqlParser.VERSIONS_ENDTIME:
+ case PlSqlParser.VERSIONS_OPERATION:
+ case PlSqlParser.VERSIONS_STARTSCN:
+ case PlSqlParser.VERSIONS_STARTTIME:
+ case PlSqlParser.VERSIONS:
+ case PlSqlParser.VERSIONS_XID:
+ case PlSqlParser.VERSION:
+ case PlSqlParser.VIOLATION:
+ case PlSqlParser.VIRTUAL:
+ case PlSqlParser.VISIBILITY:
+ case PlSqlParser.VISIBLE:
+ case PlSqlParser.VOLUME:
+ case PlSqlParser.VSIZE:
+ case PlSqlParser.WAIT:
+ case PlSqlParser.WALLET:
+ case PlSqlParser.WARNING:
+ case PlSqlParser.WEEKS:
+ case PlSqlParser.WEEK:
+ case PlSqlParser.WELLFORMED:
+ case PlSqlParser.WHENEVER:
+ case PlSqlParser.WHEN:
+ case PlSqlParser.WHILE:
+ case PlSqlParser.WHITESPACE:
+ case PlSqlParser.WIDTH_BUCKET:
+ case PlSqlParser.WITHIN:
+ case PlSqlParser.WITHOUT:
+ case PlSqlParser.WITH_PLSQL:
+ case PlSqlParser.WORK:
+ case PlSqlParser.WRAPPED:
+ case PlSqlParser.WRAPPER:
+ case PlSqlParser.WRITE:
+ case PlSqlParser.XDB_FASTPATH_INSERT:
+ case PlSqlParser.X_DYN_PRUNE:
+ case PlSqlParser.XID:
+ case PlSqlParser.XML2OBJECT:
+ case PlSqlParser.XMLAGG:
+ case PlSqlParser.XMLATTRIBUTES:
+ case PlSqlParser.XMLCAST:
+ case PlSqlParser.XMLCDATA:
+ case PlSqlParser.XMLCOLATTVAL:
+ case PlSqlParser.XMLCOMMENT:
+ case PlSqlParser.XMLCONCAT:
+ case PlSqlParser.XMLDIFF:
+ case PlSqlParser.XML_DML_RWT_STMT:
+ case PlSqlParser.XMLELEMENT:
+ case PlSqlParser.XMLEXISTS2:
+ case PlSqlParser.XMLEXISTS:
+ case PlSqlParser.XMLFOREST:
+ case PlSqlParser.XMLINDEX_REWRITE_IN_SELECT:
+ case PlSqlParser.XMLINDEX_REWRITE:
+ case PlSqlParser.XMLINDEX_SEL_IDX_TBL:
+ case PlSqlParser.XMLISNODE:
+ case PlSqlParser.XMLISVALID:
+ case PlSqlParser.XMLNAMESPACES:
+ case PlSqlParser.XMLPARSE:
+ case PlSqlParser.XMLPATCH:
+ case PlSqlParser.XMLPI:
+ case PlSqlParser.XMLQUERYVAL:
+ case PlSqlParser.XMLQUERY:
+ case PlSqlParser.XMLROOT:
+ case PlSqlParser.XMLSCHEMA:
+ case PlSqlParser.XMLSERIALIZE:
+ case PlSqlParser.XMLTABLE:
+ case PlSqlParser.XMLTRANSFORMBLOB:
+ case PlSqlParser.XMLTRANSFORM:
+ case PlSqlParser.XMLTYPE:
+ case PlSqlParser.XML:
+ case PlSqlParser.XPATHTABLE:
+ case PlSqlParser.XS_SYS_CONTEXT:
+ case PlSqlParser.XS:
+ case PlSqlParser.YEARS:
+ case PlSqlParser.YEAR:
+ case PlSqlParser.YES:
+ case PlSqlParser.YMINTERVAL_UNCONSTRAINED:
+ case PlSqlParser.ZONEMAP:
+ case PlSqlParser.ZONE:
+ case PlSqlParser.PREDICTION:
+ case PlSqlParser.PREDICTION_BOUNDS:
+ case PlSqlParser.PREDICTION_COST:
+ case PlSqlParser.PREDICTION_DETAILS:
+ case PlSqlParser.PREDICTION_PROBABILITY:
+ case PlSqlParser.PREDICTION_SET:
+ case PlSqlParser.CUME_DIST:
+ case PlSqlParser.DENSE_RANK:
+ case PlSqlParser.LISTAGG:
+ case PlSqlParser.PERCENT_RANK:
+ case PlSqlParser.PERCENTILE_CONT:
+ case PlSqlParser.PERCENTILE_DISC:
+ case PlSqlParser.RANK:
+ case PlSqlParser.AVG:
+ case PlSqlParser.CORR:
+ case PlSqlParser.COVAR_:
+ case PlSqlParser.LAG:
+ case PlSqlParser.LEAD:
+ case PlSqlParser.MAX:
+ case PlSqlParser.MEDIAN:
+ case PlSqlParser.MIN:
+ case PlSqlParser.NTILE:
+ case PlSqlParser.NVL:
+ case PlSqlParser.RATIO_TO_REPORT:
+ case PlSqlParser.REGR_:
+ case PlSqlParser.ROUND:
+ case PlSqlParser.ROW_NUMBER:
+ case PlSqlParser.SUBSTR:
+ case PlSqlParser.TO_CHAR:
+ case PlSqlParser.TRIM:
+ case PlSqlParser.SUM:
+ case PlSqlParser.STDDEV:
+ case PlSqlParser.VAR_:
+ case PlSqlParser.VARIANCE:
+ case PlSqlParser.LEAST:
+ case PlSqlParser.GREATEST:
+ case PlSqlParser.TO_DATE:
+ case PlSqlParser.PERIOD:
+ case PlSqlParser.REGULAR_ID:
+ this.state = 3329;
+ this.tablespace();
+ break;
+ case PlSqlParser.DEFAULT:
+ this.state = 3330;
+ this.match(PlSqlParser.DEFAULT);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ break;
+ case PlSqlParser.FILESYSTEM_LIKE_LOGGING:
+ case PlSqlParser.LOGGING:
+ case PlSqlParser.NOLOGGING:
+ this.state = 3333;
+ this.logging_clause();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Add_hash_index_partitionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_add_hash_index_partition;
+ return this;
+}
+
+Add_hash_index_partitionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Add_hash_index_partitionContext.prototype.constructor = Add_hash_index_partitionContext;
+
+Add_hash_index_partitionContext.prototype.ADD = function() {
+ return this.getToken(PlSqlParser.ADD, 0);
+};
+
+Add_hash_index_partitionContext.prototype.PARTITION = function() {
+ return this.getToken(PlSqlParser.PARTITION, 0);
+};
+
+Add_hash_index_partitionContext.prototype.partition_name = function() {
+ return this.getTypedRuleContext(Partition_nameContext,0);
+};
+
+Add_hash_index_partitionContext.prototype.TABLESPACE = function() {
+ return this.getToken(PlSqlParser.TABLESPACE, 0);
+};
+
+Add_hash_index_partitionContext.prototype.tablespace = function() {
+ return this.getTypedRuleContext(TablespaceContext,0);
+};
+
+Add_hash_index_partitionContext.prototype.key_compression = function() {
+ return this.getTypedRuleContext(Key_compressionContext,0);
+};
+
+Add_hash_index_partitionContext.prototype.parallel_clause = function() {
+ return this.getTypedRuleContext(Parallel_clauseContext,0);
+};
+
+Add_hash_index_partitionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAdd_hash_index_partition(this);
+ }
+};
+
+Add_hash_index_partitionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAdd_hash_index_partition(this);
+ }
+};
+
+Add_hash_index_partitionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAdd_hash_index_partition(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Add_hash_index_partitionContext = Add_hash_index_partitionContext;
+
+PlSqlParser.prototype.add_hash_index_partition = function() {
+
+ var localctx = new Add_hash_index_partitionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 246, PlSqlParser.RULE_add_hash_index_partition);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3336;
+ this.match(PlSqlParser.ADD);
+ this.state = 3337;
+ this.match(PlSqlParser.PARTITION);
+ this.state = 3339;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,271,this._ctx);
+ if(la_===1) {
+ this.state = 3338;
+ this.partition_name();
+
+ }
+ this.state = 3343;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.TABLESPACE) {
+ this.state = 3341;
+ this.match(PlSqlParser.TABLESPACE);
+ this.state = 3342;
+ this.tablespace();
+ }
+
+ this.state = 3346;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.COMPRESS || _la===PlSqlParser.NOCOMPRESS) {
+ this.state = 3345;
+ this.key_compression();
+ }
+
+ this.state = 3349;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.NOPARALLEL || _la===PlSqlParser.PARALLEL) {
+ this.state = 3348;
+ this.parallel_clause();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Coalesce_index_partitionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_coalesce_index_partition;
+ return this;
+}
+
+Coalesce_index_partitionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Coalesce_index_partitionContext.prototype.constructor = Coalesce_index_partitionContext;
+
+Coalesce_index_partitionContext.prototype.COALESCE = function() {
+ return this.getToken(PlSqlParser.COALESCE, 0);
+};
+
+Coalesce_index_partitionContext.prototype.PARTITION = function() {
+ return this.getToken(PlSqlParser.PARTITION, 0);
+};
+
+Coalesce_index_partitionContext.prototype.parallel_clause = function() {
+ return this.getTypedRuleContext(Parallel_clauseContext,0);
+};
+
+Coalesce_index_partitionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterCoalesce_index_partition(this);
+ }
+};
+
+Coalesce_index_partitionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitCoalesce_index_partition(this);
+ }
+};
+
+Coalesce_index_partitionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitCoalesce_index_partition(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Coalesce_index_partitionContext = Coalesce_index_partitionContext;
+
+PlSqlParser.prototype.coalesce_index_partition = function() {
+
+ var localctx = new Coalesce_index_partitionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 248, PlSqlParser.RULE_coalesce_index_partition);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3351;
+ this.match(PlSqlParser.COALESCE);
+ this.state = 3352;
+ this.match(PlSqlParser.PARTITION);
+ this.state = 3354;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.NOPARALLEL || _la===PlSqlParser.PARALLEL) {
+ this.state = 3353;
+ this.parallel_clause();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Modify_index_partitionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_modify_index_partition;
+ return this;
+}
+
+Modify_index_partitionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Modify_index_partitionContext.prototype.constructor = Modify_index_partitionContext;
+
+Modify_index_partitionContext.prototype.MODIFY = function() {
+ return this.getToken(PlSqlParser.MODIFY, 0);
+};
+
+Modify_index_partitionContext.prototype.PARTITION = function() {
+ return this.getToken(PlSqlParser.PARTITION, 0);
+};
+
+Modify_index_partitionContext.prototype.partition_name = function() {
+ return this.getTypedRuleContext(Partition_nameContext,0);
+};
+
+Modify_index_partitionContext.prototype.PARAMETERS = function() {
+ return this.getToken(PlSqlParser.PARAMETERS, 0);
+};
+
+Modify_index_partitionContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Modify_index_partitionContext.prototype.odci_parameters = function() {
+ return this.getTypedRuleContext(Odci_parametersContext,0);
+};
+
+Modify_index_partitionContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Modify_index_partitionContext.prototype.COALESCE = function() {
+ return this.getToken(PlSqlParser.COALESCE, 0);
+};
+
+Modify_index_partitionContext.prototype.UPDATE = function() {
+ return this.getToken(PlSqlParser.UPDATE, 0);
+};
+
+Modify_index_partitionContext.prototype.BLOCK = function() {
+ return this.getToken(PlSqlParser.BLOCK, 0);
+};
+
+Modify_index_partitionContext.prototype.REFERENCES = function() {
+ return this.getToken(PlSqlParser.REFERENCES, 0);
+};
+
+Modify_index_partitionContext.prototype.UNUSABLE = function() {
+ return this.getToken(PlSqlParser.UNUSABLE, 0);
+};
+
+Modify_index_partitionContext.prototype.modify_index_partitions_ops = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Modify_index_partitions_opsContext);
+ } else {
+ return this.getTypedRuleContext(Modify_index_partitions_opsContext,i);
+ }
+};
+
+Modify_index_partitionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterModify_index_partition(this);
+ }
+};
+
+Modify_index_partitionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitModify_index_partition(this);
+ }
+};
+
+Modify_index_partitionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitModify_index_partition(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Modify_index_partitionContext = Modify_index_partitionContext;
+
+PlSqlParser.prototype.modify_index_partition = function() {
+
+ var localctx = new Modify_index_partitionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 250, PlSqlParser.RULE_modify_index_partition);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3356;
+ this.match(PlSqlParser.MODIFY);
+ this.state = 3357;
+ this.match(PlSqlParser.PARTITION);
+ this.state = 3358;
+ this.partition_name();
+ this.state = 3374;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.ALLOCATE:
+ case PlSqlParser.COMPRESS:
+ case PlSqlParser.DEALLOCATE:
+ case PlSqlParser.FILESYSTEM_LIKE_LOGGING:
+ case PlSqlParser.INITRANS:
+ case PlSqlParser.LOGGING:
+ case PlSqlParser.NOCOMPRESS:
+ case PlSqlParser.NOLOGGING:
+ case PlSqlParser.PCTFREE:
+ case PlSqlParser.PCTUSED:
+ case PlSqlParser.STORAGE:
+ this.state = 3360;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 3359;
+ this.modify_index_partitions_ops();
+ this.state = 3362;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(_la===PlSqlParser.ALLOCATE || _la===PlSqlParser.COMPRESS || _la===PlSqlParser.DEALLOCATE || _la===PlSqlParser.FILESYSTEM_LIKE_LOGGING || _la===PlSqlParser.INITRANS || _la===PlSqlParser.LOGGING || _la===PlSqlParser.NOCOMPRESS || _la===PlSqlParser.NOLOGGING || _la===PlSqlParser.PCTFREE || _la===PlSqlParser.PCTUSED || _la===PlSqlParser.STORAGE);
+ break;
+ case PlSqlParser.PARAMETERS:
+ this.state = 3364;
+ this.match(PlSqlParser.PARAMETERS);
+ this.state = 3365;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 3366;
+ this.odci_parameters();
+ this.state = 3367;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ break;
+ case PlSqlParser.COALESCE:
+ this.state = 3369;
+ this.match(PlSqlParser.COALESCE);
+ break;
+ case PlSqlParser.UPDATE:
+ this.state = 3370;
+ this.match(PlSqlParser.UPDATE);
+ this.state = 3371;
+ this.match(PlSqlParser.BLOCK);
+ this.state = 3372;
+ this.match(PlSqlParser.REFERENCES);
+ break;
+ case PlSqlParser.UNUSABLE:
+ this.state = 3373;
+ this.match(PlSqlParser.UNUSABLE);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Modify_index_partitions_opsContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_modify_index_partitions_ops;
+ return this;
+}
+
+Modify_index_partitions_opsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Modify_index_partitions_opsContext.prototype.constructor = Modify_index_partitions_opsContext;
+
+Modify_index_partitions_opsContext.prototype.deallocate_unused_clause = function() {
+ return this.getTypedRuleContext(Deallocate_unused_clauseContext,0);
+};
+
+Modify_index_partitions_opsContext.prototype.allocate_extent_clause = function() {
+ return this.getTypedRuleContext(Allocate_extent_clauseContext,0);
+};
+
+Modify_index_partitions_opsContext.prototype.physical_attributes_clause = function() {
+ return this.getTypedRuleContext(Physical_attributes_clauseContext,0);
+};
+
+Modify_index_partitions_opsContext.prototype.logging_clause = function() {
+ return this.getTypedRuleContext(Logging_clauseContext,0);
+};
+
+Modify_index_partitions_opsContext.prototype.key_compression = function() {
+ return this.getTypedRuleContext(Key_compressionContext,0);
+};
+
+Modify_index_partitions_opsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterModify_index_partitions_ops(this);
+ }
+};
+
+Modify_index_partitions_opsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitModify_index_partitions_ops(this);
+ }
+};
+
+Modify_index_partitions_opsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitModify_index_partitions_ops(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Modify_index_partitions_opsContext = Modify_index_partitions_opsContext;
+
+PlSqlParser.prototype.modify_index_partitions_ops = function() {
+
+ var localctx = new Modify_index_partitions_opsContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 252, PlSqlParser.RULE_modify_index_partitions_ops);
+ try {
+ this.state = 3381;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.DEALLOCATE:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3376;
+ this.deallocate_unused_clause();
+ break;
+ case PlSqlParser.ALLOCATE:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 3377;
+ this.allocate_extent_clause();
+ break;
+ case PlSqlParser.INITRANS:
+ case PlSqlParser.PCTFREE:
+ case PlSqlParser.PCTUSED:
+ case PlSqlParser.STORAGE:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 3378;
+ this.physical_attributes_clause();
+ break;
+ case PlSqlParser.FILESYSTEM_LIKE_LOGGING:
+ case PlSqlParser.LOGGING:
+ case PlSqlParser.NOLOGGING:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 3379;
+ this.logging_clause();
+ break;
+ case PlSqlParser.COMPRESS:
+ case PlSqlParser.NOCOMPRESS:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 3380;
+ this.key_compression();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Rename_index_partitionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_rename_index_partition;
+ return this;
+}
+
+Rename_index_partitionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Rename_index_partitionContext.prototype.constructor = Rename_index_partitionContext;
+
+Rename_index_partitionContext.prototype.RENAME = function() {
+ return this.getToken(PlSqlParser.RENAME, 0);
+};
+
+Rename_index_partitionContext.prototype.TO = function() {
+ return this.getToken(PlSqlParser.TO, 0);
+};
+
+Rename_index_partitionContext.prototype.new_partition_name = function() {
+ return this.getTypedRuleContext(New_partition_nameContext,0);
+};
+
+Rename_index_partitionContext.prototype.PARTITION = function() {
+ return this.getToken(PlSqlParser.PARTITION, 0);
+};
+
+Rename_index_partitionContext.prototype.partition_name = function() {
+ return this.getTypedRuleContext(Partition_nameContext,0);
+};
+
+Rename_index_partitionContext.prototype.SUBPARTITION = function() {
+ return this.getToken(PlSqlParser.SUBPARTITION, 0);
+};
+
+Rename_index_partitionContext.prototype.subpartition_name = function() {
+ return this.getTypedRuleContext(Subpartition_nameContext,0);
+};
+
+Rename_index_partitionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterRename_index_partition(this);
+ }
+};
+
+Rename_index_partitionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitRename_index_partition(this);
+ }
+};
+
+Rename_index_partitionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitRename_index_partition(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Rename_index_partitionContext = Rename_index_partitionContext;
+
+PlSqlParser.prototype.rename_index_partition = function() {
+
+ var localctx = new Rename_index_partitionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 254, PlSqlParser.RULE_rename_index_partition);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3383;
+ this.match(PlSqlParser.RENAME);
+ this.state = 3388;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.PARTITION:
+ this.state = 3384;
+ this.match(PlSqlParser.PARTITION);
+ this.state = 3385;
+ this.partition_name();
+ break;
+ case PlSqlParser.SUBPARTITION:
+ this.state = 3386;
+ this.match(PlSqlParser.SUBPARTITION);
+ this.state = 3387;
+ this.subpartition_name();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 3390;
+ this.match(PlSqlParser.TO);
+ this.state = 3391;
+ this.new_partition_name();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Drop_index_partitionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_drop_index_partition;
+ return this;
+}
+
+Drop_index_partitionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Drop_index_partitionContext.prototype.constructor = Drop_index_partitionContext;
+
+Drop_index_partitionContext.prototype.DROP = function() {
+ return this.getToken(PlSqlParser.DROP, 0);
+};
+
+Drop_index_partitionContext.prototype.PARTITION = function() {
+ return this.getToken(PlSqlParser.PARTITION, 0);
+};
+
+Drop_index_partitionContext.prototype.partition_name = function() {
+ return this.getTypedRuleContext(Partition_nameContext,0);
+};
+
+Drop_index_partitionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterDrop_index_partition(this);
+ }
+};
+
+Drop_index_partitionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitDrop_index_partition(this);
+ }
+};
+
+Drop_index_partitionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitDrop_index_partition(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Drop_index_partitionContext = Drop_index_partitionContext;
+
+PlSqlParser.prototype.drop_index_partition = function() {
+
+ var localctx = new Drop_index_partitionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 256, PlSqlParser.RULE_drop_index_partition);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3393;
+ this.match(PlSqlParser.DROP);
+ this.state = 3394;
+ this.match(PlSqlParser.PARTITION);
+ this.state = 3395;
+ this.partition_name();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Split_index_partitionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_split_index_partition;
+ return this;
+}
+
+Split_index_partitionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Split_index_partitionContext.prototype.constructor = Split_index_partitionContext;
+
+Split_index_partitionContext.prototype.SPLIT = function() {
+ return this.getToken(PlSqlParser.SPLIT, 0);
+};
+
+Split_index_partitionContext.prototype.PARTITION = function() {
+ return this.getToken(PlSqlParser.PARTITION, 0);
+};
+
+Split_index_partitionContext.prototype.partition_name_old = function() {
+ return this.getTypedRuleContext(Partition_name_oldContext,0);
+};
+
+Split_index_partitionContext.prototype.AT = function() {
+ return this.getToken(PlSqlParser.AT, 0);
+};
+
+Split_index_partitionContext.prototype.LEFT_PAREN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.LEFT_PAREN);
+ } else {
+ return this.getToken(PlSqlParser.LEFT_PAREN, i);
+ }
+};
+
+
+Split_index_partitionContext.prototype.literal = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(LiteralContext);
+ } else {
+ return this.getTypedRuleContext(LiteralContext,i);
+ }
+};
+
+Split_index_partitionContext.prototype.RIGHT_PAREN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.RIGHT_PAREN);
+ } else {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, i);
+ }
+};
+
+
+Split_index_partitionContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Split_index_partitionContext.prototype.INTO = function() {
+ return this.getToken(PlSqlParser.INTO, 0);
+};
+
+Split_index_partitionContext.prototype.index_partition_description = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Index_partition_descriptionContext);
+ } else {
+ return this.getTypedRuleContext(Index_partition_descriptionContext,i);
+ }
+};
+
+Split_index_partitionContext.prototype.parallel_clause = function() {
+ return this.getTypedRuleContext(Parallel_clauseContext,0);
+};
+
+Split_index_partitionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterSplit_index_partition(this);
+ }
+};
+
+Split_index_partitionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitSplit_index_partition(this);
+ }
+};
+
+Split_index_partitionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitSplit_index_partition(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Split_index_partitionContext = Split_index_partitionContext;
+
+PlSqlParser.prototype.split_index_partition = function() {
+
+ var localctx = new Split_index_partitionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 258, PlSqlParser.RULE_split_index_partition);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3397;
+ this.match(PlSqlParser.SPLIT);
+ this.state = 3398;
+ this.match(PlSqlParser.PARTITION);
+ this.state = 3399;
+ this.partition_name_old();
+ this.state = 3400;
+ this.match(PlSqlParser.AT);
+ this.state = 3401;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 3402;
+ this.literal();
+ this.state = 3407;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 3403;
+ this.match(PlSqlParser.COMMA);
+ this.state = 3404;
+ this.literal();
+ this.state = 3409;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 3410;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ this.state = 3418;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.INTO) {
+ this.state = 3411;
+ this.match(PlSqlParser.INTO);
+ this.state = 3412;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 3413;
+ this.index_partition_description();
+ this.state = 3414;
+ this.match(PlSqlParser.COMMA);
+ this.state = 3415;
+ this.index_partition_description();
+ this.state = 3416;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ }
+
+ this.state = 3421;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.NOPARALLEL || _la===PlSqlParser.PARALLEL) {
+ this.state = 3420;
+ this.parallel_clause();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Index_partition_descriptionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_index_partition_description;
+ return this;
+}
+
+Index_partition_descriptionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Index_partition_descriptionContext.prototype.constructor = Index_partition_descriptionContext;
+
+Index_partition_descriptionContext.prototype.PARTITION = function() {
+ return this.getToken(PlSqlParser.PARTITION, 0);
+};
+
+Index_partition_descriptionContext.prototype.partition_name = function() {
+ return this.getTypedRuleContext(Partition_nameContext,0);
+};
+
+Index_partition_descriptionContext.prototype.PARAMETERS = function() {
+ return this.getToken(PlSqlParser.PARAMETERS, 0);
+};
+
+Index_partition_descriptionContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Index_partition_descriptionContext.prototype.odci_parameters = function() {
+ return this.getTypedRuleContext(Odci_parametersContext,0);
+};
+
+Index_partition_descriptionContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Index_partition_descriptionContext.prototype.UNUSABLE = function() {
+ return this.getToken(PlSqlParser.UNUSABLE, 0);
+};
+
+Index_partition_descriptionContext.prototype.segment_attributes_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Segment_attributes_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Segment_attributes_clauseContext,i);
+ }
+};
+
+Index_partition_descriptionContext.prototype.key_compression = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Key_compressionContext);
+ } else {
+ return this.getTypedRuleContext(Key_compressionContext,i);
+ }
+};
+
+Index_partition_descriptionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterIndex_partition_description(this);
+ }
+};
+
+Index_partition_descriptionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitIndex_partition_description(this);
+ }
+};
+
+Index_partition_descriptionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitIndex_partition_description(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Index_partition_descriptionContext = Index_partition_descriptionContext;
+
+PlSqlParser.prototype.index_partition_description = function() {
+
+ var localctx = new Index_partition_descriptionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 260, PlSqlParser.RULE_index_partition_description);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3423;
+ this.match(PlSqlParser.PARTITION);
+ this.state = 3441;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if((((_la) & ~0x1f) == 0 && ((1 << _la) & ((1 << PlSqlParser.ABORT) | (1 << PlSqlParser.ABS) | (1 << PlSqlParser.ACCESS) | (1 << PlSqlParser.ACCESSED) | (1 << PlSqlParser.ACCOUNT) | (1 << PlSqlParser.ACL) | (1 << PlSqlParser.ACOS) | (1 << PlSqlParser.ACTION) | (1 << PlSqlParser.ACTIONS) | (1 << PlSqlParser.ACTIVATE) | (1 << PlSqlParser.ACTIVE) | (1 << PlSqlParser.ACTIVE_COMPONENT) | (1 << PlSqlParser.ACTIVE_DATA) | (1 << PlSqlParser.ACTIVE_FUNCTION) | (1 << PlSqlParser.ACTIVE_TAG) | (1 << PlSqlParser.ACTIVITY) | (1 << PlSqlParser.ADAPTIVE_PLAN) | (1 << PlSqlParser.ADD) | (1 << PlSqlParser.ADD_COLUMN) | (1 << PlSqlParser.ADD_GROUP) | (1 << PlSqlParser.ADD_MONTHS) | (1 << PlSqlParser.ADJ_DATE) | (1 << PlSqlParser.ADMIN) | (1 << PlSqlParser.ADMINISTER) | (1 << PlSqlParser.ADMINISTRATOR) | (1 << PlSqlParser.ADVANCED) | (1 << PlSqlParser.ADVISE) | (1 << PlSqlParser.ADVISOR) | (1 << PlSqlParser.AFD_DISKSTRING) | (1 << PlSqlParser.AFTER) | (1 << PlSqlParser.AGENT))) !== 0) || ((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (PlSqlParser.AGGREGATE - 32)) | (1 << (PlSqlParser.A_LETTER - 32)) | (1 << (PlSqlParser.ALIAS - 32)) | (1 << (PlSqlParser.ALLOCATE - 32)) | (1 << (PlSqlParser.ALLOW - 32)) | (1 << (PlSqlParser.ALL_ROWS - 32)) | (1 << (PlSqlParser.ALWAYS - 32)) | (1 << (PlSqlParser.ANALYZE - 32)) | (1 << (PlSqlParser.ANCILLARY - 32)) | (1 << (PlSqlParser.AND_EQUAL - 32)) | (1 << (PlSqlParser.ANOMALY - 32)) | (1 << (PlSqlParser.ANSI_REARCH - 32)) | (1 << (PlSqlParser.ANTIJOIN - 32)) | (1 << (PlSqlParser.ANYSCHEMA - 32)) | (1 << (PlSqlParser.APPEND - 32)) | (1 << (PlSqlParser.APPENDCHILDXML - 32)) | (1 << (PlSqlParser.APPEND_VALUES - 32)) | (1 << (PlSqlParser.APPLICATION - 32)) | (1 << (PlSqlParser.APPLY - 32)) | (1 << (PlSqlParser.APPROX_COUNT_DISTINCT - 32)) | (1 << (PlSqlParser.ARCHIVAL - 32)) | (1 << (PlSqlParser.ARCHIVE - 32)) | (1 << (PlSqlParser.ARCHIVED - 32)) | (1 << (PlSqlParser.ARCHIVELOG - 32)) | (1 << (PlSqlParser.ARRAY - 32)) | (1 << (PlSqlParser.ASCII - 32)))) !== 0) || ((((_la - 64)) & ~0x1f) == 0 && ((1 << (_la - 64)) & ((1 << (PlSqlParser.ASCIISTR - 64)) | (1 << (PlSqlParser.ASIN - 64)) | (1 << (PlSqlParser.ASIS - 64)) | (1 << (PlSqlParser.ASSEMBLY - 64)) | (1 << (PlSqlParser.ASSIGN - 64)) | (1 << (PlSqlParser.ASSOCIATE - 64)) | (1 << (PlSqlParser.ASYNC - 64)) | (1 << (PlSqlParser.ASYNCHRONOUS - 64)) | (1 << (PlSqlParser.ATAN2 - 64)) | (1 << (PlSqlParser.ATAN - 64)) | (1 << (PlSqlParser.AT - 64)) | (1 << (PlSqlParser.ATTRIBUTE - 64)) | (1 << (PlSqlParser.ATTRIBUTES - 64)) | (1 << (PlSqlParser.AUTHENTICATED - 64)) | (1 << (PlSqlParser.AUTHENTICATION - 64)) | (1 << (PlSqlParser.AUTHID - 64)) | (1 << (PlSqlParser.AUTHORIZATION - 64)) | (1 << (PlSqlParser.AUTOALLOCATE - 64)) | (1 << (PlSqlParser.AUTO - 64)) | (1 << (PlSqlParser.AUTOEXTEND - 64)) | (1 << (PlSqlParser.AUTO_LOGIN - 64)) | (1 << (PlSqlParser.AUTOMATIC - 64)) | (1 << (PlSqlParser.AUTONOMOUS_TRANSACTION - 64)) | (1 << (PlSqlParser.AUTO_REOPTIMIZE - 64)) | (1 << (PlSqlParser.AVAILABILITY - 64)) | (1 << (PlSqlParser.AVRO - 64)) | (1 << (PlSqlParser.BACKGROUND - 64)) | (1 << (PlSqlParser.BACKUP - 64)) | (1 << (PlSqlParser.BASIC - 64)))) !== 0) || ((((_la - 96)) & ~0x1f) == 0 && ((1 << (_la - 96)) & ((1 << (PlSqlParser.BASICFILE - 96)) | (1 << (PlSqlParser.BATCH - 96)) | (1 << (PlSqlParser.BATCHSIZE - 96)) | (1 << (PlSqlParser.BATCH_TABLE_ACCESS_BY_ROWID - 96)) | (1 << (PlSqlParser.BECOME - 96)) | (1 << (PlSqlParser.BEFORE - 96)) | (1 << (PlSqlParser.BEGIN - 96)) | (1 << (PlSqlParser.BEGINNING - 96)) | (1 << (PlSqlParser.BEGIN_OUTLINE_DATA - 96)) | (1 << (PlSqlParser.BEHALF - 96)) | (1 << (PlSqlParser.BEQUEATH - 96)) | (1 << (PlSqlParser.BFILE - 96)) | (1 << (PlSqlParser.BFILENAME - 96)) | (1 << (PlSqlParser.BIGFILE - 96)) | (1 << (PlSqlParser.BINARY - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE_INFINITY - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE_NAN - 96)) | (1 << (PlSqlParser.BINARY_FLOAT - 96)) | (1 << (PlSqlParser.BINARY_FLOAT_INFINITY - 96)) | (1 << (PlSqlParser.BINARY_FLOAT_NAN - 96)) | (1 << (PlSqlParser.BINARY_INTEGER - 96)) | (1 << (PlSqlParser.BIND_AWARE - 96)) | (1 << (PlSqlParser.BINDING - 96)) | (1 << (PlSqlParser.BIN_TO_NUM - 96)) | (1 << (PlSqlParser.BITAND - 96)) | (1 << (PlSqlParser.BITMAP_AND - 96)) | (1 << (PlSqlParser.BITMAP - 96)) | (1 << (PlSqlParser.BITMAPS - 96)) | (1 << (PlSqlParser.BITMAP_TREE - 96)) | (1 << (PlSqlParser.BITS - 96)))) !== 0) || ((((_la - 128)) & ~0x1f) == 0 && ((1 << (_la - 128)) & ((1 << (PlSqlParser.BLOB - 128)) | (1 << (PlSqlParser.BLOCK - 128)) | (1 << (PlSqlParser.BLOCK_RANGE - 128)) | (1 << (PlSqlParser.BLOCKS - 128)) | (1 << (PlSqlParser.BLOCKSIZE - 128)) | (1 << (PlSqlParser.BODY - 128)) | (1 << (PlSqlParser.BOOLEAN - 128)) | (1 << (PlSqlParser.BOTH - 128)) | (1 << (PlSqlParser.BOUND - 128)) | (1 << (PlSqlParser.BRANCH - 128)) | (1 << (PlSqlParser.BREADTH - 128)) | (1 << (PlSqlParser.BROADCAST - 128)) | (1 << (PlSqlParser.BSON - 128)) | (1 << (PlSqlParser.BUFFER - 128)) | (1 << (PlSqlParser.BUFFER_CACHE - 128)) | (1 << (PlSqlParser.BUFFER_POOL - 128)) | (1 << (PlSqlParser.BUILD - 128)) | (1 << (PlSqlParser.BULK - 128)) | (1 << (PlSqlParser.BYPASS_RECURSIVE_CHECK - 128)) | (1 << (PlSqlParser.BYPASS_UJVC - 128)) | (1 << (PlSqlParser.BYTE - 128)) | (1 << (PlSqlParser.CACHE - 128)) | (1 << (PlSqlParser.CACHE_CB - 128)) | (1 << (PlSqlParser.CACHE_INSTANCES - 128)) | (1 << (PlSqlParser.CACHE_TEMP_TABLE - 128)) | (1 << (PlSqlParser.CACHING - 128)) | (1 << (PlSqlParser.CALCULATED - 128)) | (1 << (PlSqlParser.CALLBACK - 128)) | (1 << (PlSqlParser.CALL - 128)) | (1 << (PlSqlParser.CANCEL - 128)))) !== 0) || ((((_la - 160)) & ~0x1f) == 0 && ((1 << (_la - 160)) & ((1 << (PlSqlParser.CAPACITY - 160)) | (1 << (PlSqlParser.CARDINALITY - 160)) | (1 << (PlSqlParser.CASCADE - 160)) | (1 << (PlSqlParser.CASE - 160)) | (1 << (PlSqlParser.CAST - 160)) | (1 << (PlSqlParser.CATEGORY - 160)) | (1 << (PlSqlParser.CDBDEFAULT - 160)) | (1 << (PlSqlParser.CEIL - 160)) | (1 << (PlSqlParser.CELL_FLASH_CACHE - 160)) | (1 << (PlSqlParser.CERTIFICATE - 160)) | (1 << (PlSqlParser.CFILE - 160)) | (1 << (PlSqlParser.CHAINED - 160)) | (1 << (PlSqlParser.CHANGE - 160)) | (1 << (PlSqlParser.CHANGE_DUPKEY_ERROR_INDEX - 160)) | (1 << (PlSqlParser.CHARACTER - 160)) | (1 << (PlSqlParser.CHAR - 160)) | (1 << (PlSqlParser.CHAR_CS - 160)) | (1 << (PlSqlParser.CHARTOROWID - 160)) | (1 << (PlSqlParser.CHECK_ACL_REWRITE - 160)) | (1 << (PlSqlParser.CHECKPOINT - 160)) | (1 << (PlSqlParser.CHILD - 160)) | (1 << (PlSqlParser.CHOOSE - 160)) | (1 << (PlSqlParser.CHR - 160)) | (1 << (PlSqlParser.CHUNK - 160)) | (1 << (PlSqlParser.CLASS - 160)) | (1 << (PlSqlParser.CLASSIFIER - 160)) | (1 << (PlSqlParser.CLEANUP - 160)) | (1 << (PlSqlParser.CLEAR - 160)) | (1 << (PlSqlParser.C_LETTER - 160)) | (1 << (PlSqlParser.CLIENT - 160)))) !== 0) || ((((_la - 192)) & ~0x1f) == 0 && ((1 << (_la - 192)) & ((1 << (PlSqlParser.CLOB - 192)) | (1 << (PlSqlParser.CLONE - 192)) | (1 << (PlSqlParser.CLOSE_CACHED_OPEN_CURSORS - 192)) | (1 << (PlSqlParser.CLOSE - 192)) | (1 << (PlSqlParser.CLUSTER_BY_ROWID - 192)) | (1 << (PlSqlParser.CLUSTER - 192)) | (1 << (PlSqlParser.CLUSTER_DETAILS - 192)) | (1 << (PlSqlParser.CLUSTER_DISTANCE - 192)) | (1 << (PlSqlParser.CLUSTER_ID - 192)) | (1 << (PlSqlParser.CLUSTERING - 192)) | (1 << (PlSqlParser.CLUSTERING_FACTOR - 192)) | (1 << (PlSqlParser.CLUSTER_PROBABILITY - 192)) | (1 << (PlSqlParser.CLUSTER_SET - 192)) | (1 << (PlSqlParser.COALESCE - 192)) | (1 << (PlSqlParser.COALESCE_SQ - 192)) | (1 << (PlSqlParser.COARSE - 192)) | (1 << (PlSqlParser.CO_AUTH_IND - 192)) | (1 << (PlSqlParser.COLD - 192)) | (1 << (PlSqlParser.COLLECT - 192)) | (1 << (PlSqlParser.COLUMNAR - 192)) | (1 << (PlSqlParser.COLUMN_AUTH_INDICATOR - 192)) | (1 << (PlSqlParser.COLUMN - 192)) | (1 << (PlSqlParser.COLUMNS - 192)) | (1 << (PlSqlParser.COLUMN_STATS - 192)) | (1 << (PlSqlParser.COLUMN_VALUE - 192)) | (1 << (PlSqlParser.COMMENT - 192)) | (1 << (PlSqlParser.COMMIT - 192)) | (1 << (PlSqlParser.COMMITTED - 192)) | (1 << (PlSqlParser.COMMON_DATA - 192)) | (1 << (PlSqlParser.COMPACT - 192)) | (1 << (PlSqlParser.COMPATIBILITY - 192)) | (1 << (PlSqlParser.COMPILE - 192)))) !== 0) || ((((_la - 224)) & ~0x1f) == 0 && ((1 << (_la - 224)) & ((1 << (PlSqlParser.COMPLETE - 224)) | (1 << (PlSqlParser.COMPLIANCE - 224)) | (1 << (PlSqlParser.COMPONENT - 224)) | (1 << (PlSqlParser.COMPONENTS - 224)) | (1 << (PlSqlParser.COMPOSE - 224)) | (1 << (PlSqlParser.COMPOSITE - 224)) | (1 << (PlSqlParser.COMPOSITE_LIMIT - 224)) | (1 << (PlSqlParser.COMPOUND - 224)) | (1 << (PlSqlParser.COMPUTE - 224)) | (1 << (PlSqlParser.CONCAT - 224)) | (1 << (PlSqlParser.CON_DBID_TO_ID - 224)) | (1 << (PlSqlParser.CONDITIONAL - 224)) | (1 << (PlSqlParser.CONDITION - 224)) | (1 << (PlSqlParser.CONFIRM - 224)) | (1 << (PlSqlParser.CONFORMING - 224)) | (1 << (PlSqlParser.CON_GUID_TO_ID - 224)) | (1 << (PlSqlParser.CON_ID - 224)) | (1 << (PlSqlParser.CON_NAME_TO_ID - 224)) | (1 << (PlSqlParser.CONNECT_BY_CB_WHR_ONLY - 224)) | (1 << (PlSqlParser.CONNECT_BY_COMBINE_SW - 224)) | (1 << (PlSqlParser.CONNECT_BY_COST_BASED - 224)) | (1 << (PlSqlParser.CONNECT_BY_ELIM_DUPS - 224)) | (1 << (PlSqlParser.CONNECT_BY_FILTERING - 224)) | (1 << (PlSqlParser.CONNECT_BY_ISCYCLE - 224)) | (1 << (PlSqlParser.CONNECT_BY_ISLEAF - 224)) | (1 << (PlSqlParser.CONNECT_BY_ROOT - 224)) | (1 << (PlSqlParser.CONNECT_TIME - 224)) | (1 << (PlSqlParser.CONSIDER - 224)) | (1 << (PlSqlParser.CONSISTENT - 224)) | (1 << (PlSqlParser.CONSTANT - 224)))) !== 0) || ((((_la - 256)) & ~0x1f) == 0 && ((1 << (_la - 256)) & ((1 << (PlSqlParser.CONST - 256)) | (1 << (PlSqlParser.CONSTRAINT - 256)) | (1 << (PlSqlParser.CONSTRAINTS - 256)) | (1 << (PlSqlParser.CONSTRUCTOR - 256)) | (1 << (PlSqlParser.CONTAINER - 256)) | (1 << (PlSqlParser.CONTAINER_DATA - 256)) | (1 << (PlSqlParser.CONTAINERS - 256)) | (1 << (PlSqlParser.CONTENT - 256)) | (1 << (PlSqlParser.CONTENTS - 256)) | (1 << (PlSqlParser.CONTEXT - 256)) | (1 << (PlSqlParser.CONTINUE - 256)) | (1 << (PlSqlParser.CONTROLFILE - 256)) | (1 << (PlSqlParser.CON_UID_TO_ID - 256)) | (1 << (PlSqlParser.CONVERT - 256)) | (1 << (PlSqlParser.COOKIE - 256)) | (1 << (PlSqlParser.COPY - 256)) | (1 << (PlSqlParser.CORR_K - 256)) | (1 << (PlSqlParser.CORR_S - 256)) | (1 << (PlSqlParser.CORRUPTION - 256)) | (1 << (PlSqlParser.CORRUPT_XID_ALL - 256)) | (1 << (PlSqlParser.CORRUPT_XID - 256)) | (1 << (PlSqlParser.COS - 256)) | (1 << (PlSqlParser.COSH - 256)) | (1 << (PlSqlParser.COST - 256)) | (1 << (PlSqlParser.COST_XML_QUERY_REWRITE - 256)) | (1 << (PlSqlParser.COUNT - 256)) | (1 << (PlSqlParser.COVAR_POP - 256)) | (1 << (PlSqlParser.COVAR_SAMP - 256)) | (1 << (PlSqlParser.CPU_COSTING - 256)) | (1 << (PlSqlParser.CPU_PER_CALL - 256)) | (1 << (PlSqlParser.CPU_PER_SESSION - 256)) | (1 << (PlSqlParser.CRASH - 256)))) !== 0) || ((((_la - 289)) & ~0x1f) == 0 && ((1 << (_la - 289)) & ((1 << (PlSqlParser.CREATE_FILE_DEST - 289)) | (1 << (PlSqlParser.CREATE_STORED_OUTLINES - 289)) | (1 << (PlSqlParser.CREATION - 289)) | (1 << (PlSqlParser.CREDENTIAL - 289)) | (1 << (PlSqlParser.CRITICAL - 289)) | (1 << (PlSqlParser.CROSS - 289)) | (1 << (PlSqlParser.CROSSEDITION - 289)) | (1 << (PlSqlParser.CSCONVERT - 289)) | (1 << (PlSqlParser.CUBE_AJ - 289)) | (1 << (PlSqlParser.CUBE - 289)) | (1 << (PlSqlParser.CUBE_GB - 289)) | (1 << (PlSqlParser.CUBE_SJ - 289)) | (1 << (PlSqlParser.CUME_DISTM - 289)) | (1 << (PlSqlParser.CURRENT - 289)) | (1 << (PlSqlParser.CURRENT_DATE - 289)) | (1 << (PlSqlParser.CURRENT_SCHEMA - 289)) | (1 << (PlSqlParser.CURRENT_TIME - 289)) | (1 << (PlSqlParser.CURRENT_TIMESTAMP - 289)) | (1 << (PlSqlParser.CURRENT_USER - 289)) | (1 << (PlSqlParser.CURRENTV - 289)) | (1 << (PlSqlParser.CURSOR - 289)) | (1 << (PlSqlParser.CURSOR_SHARING_EXACT - 289)) | (1 << (PlSqlParser.CURSOR_SPECIFIC_SEGMENT - 289)) | (1 << (PlSqlParser.CUSTOMDATUM - 289)) | (1 << (PlSqlParser.CV - 289)) | (1 << (PlSqlParser.CYCLE - 289)) | (1 << (PlSqlParser.DANGLING - 289)) | (1 << (PlSqlParser.DATABASE - 289)) | (1 << (PlSqlParser.DATA - 289)) | (1 << (PlSqlParser.DATAFILE - 289)) | (1 << (PlSqlParser.DATAFILES - 289)))) !== 0) || ((((_la - 321)) & ~0x1f) == 0 && ((1 << (_la - 321)) & ((1 << (PlSqlParser.DATAMOVEMENT - 321)) | (1 << (PlSqlParser.DATAOBJNO - 321)) | (1 << (PlSqlParser.DATAOBJ_TO_MAT_PARTITION - 321)) | (1 << (PlSqlParser.DATAOBJ_TO_PARTITION - 321)) | (1 << (PlSqlParser.DATAPUMP - 321)) | (1 << (PlSqlParser.DATA_SECURITY_REWRITE_LIMIT - 321)) | (1 << (PlSqlParser.DATE_MODE - 321)) | (1 << (PlSqlParser.DAY - 321)) | (1 << (PlSqlParser.DAYS - 321)) | (1 << (PlSqlParser.DBA - 321)) | (1 << (PlSqlParser.DBA_RECYCLEBIN - 321)) | (1 << (PlSqlParser.DBMS_STATS - 321)) | (1 << (PlSqlParser.DB_ROLE_CHANGE - 321)) | (1 << (PlSqlParser.DBTIMEZONE - 321)) | (1 << (PlSqlParser.DB_UNIQUE_NAME - 321)) | (1 << (PlSqlParser.DB_VERSION - 321)) | (1 << (PlSqlParser.DDL - 321)) | (1 << (PlSqlParser.DEALLOCATE - 321)) | (1 << (PlSqlParser.DEBUG - 321)) | (1 << (PlSqlParser.DEBUGGER - 321)) | (1 << (PlSqlParser.DEC - 321)) | (1 << (PlSqlParser.DECIMAL - 321)) | (1 << (PlSqlParser.DECLARE - 321)) | (1 << (PlSqlParser.DECOMPOSE - 321)) | (1 << (PlSqlParser.DECORRELATE - 321)) | (1 << (PlSqlParser.DECR - 321)) | (1 << (PlSqlParser.DECREMENT - 321)) | (1 << (PlSqlParser.DECRYPT - 321)) | (1 << (PlSqlParser.DEDUPLICATE - 321)) | (1 << (PlSqlParser.DEFAULTS - 321)))) !== 0) || ((((_la - 353)) & ~0x1f) == 0 && ((1 << (_la - 353)) & ((1 << (PlSqlParser.DEFERRABLE - 353)) | (1 << (PlSqlParser.DEFERRED - 353)) | (1 << (PlSqlParser.DEFINED - 353)) | (1 << (PlSqlParser.DEFINE - 353)) | (1 << (PlSqlParser.DEFINER - 353)) | (1 << (PlSqlParser.DEGREE - 353)) | (1 << (PlSqlParser.DELAY - 353)) | (1 << (PlSqlParser.DELEGATE - 353)) | (1 << (PlSqlParser.DELETE_ALL - 353)) | (1 << (PlSqlParser.DELETE - 353)) | (1 << (PlSqlParser.DELETEXML - 353)) | (1 << (PlSqlParser.DEMAND - 353)) | (1 << (PlSqlParser.DENSE_RANKM - 353)) | (1 << (PlSqlParser.DEPENDENT - 353)) | (1 << (PlSqlParser.DEPTH - 353)) | (1 << (PlSqlParser.DEQUEUE - 353)) | (1 << (PlSqlParser.DEREF - 353)) | (1 << (PlSqlParser.DEREF_NO_REWRITE - 353)) | (1 << (PlSqlParser.DESTROY - 353)) | (1 << (PlSqlParser.DETACHED - 353)) | (1 << (PlSqlParser.DETERMINES - 353)) | (1 << (PlSqlParser.DETERMINISTIC - 353)) | (1 << (PlSqlParser.DICTIONARY - 353)) | (1 << (PlSqlParser.DIMENSION - 353)) | (1 << (PlSqlParser.DIMENSIONS - 353)) | (1 << (PlSqlParser.DIRECT_LOAD - 353)) | (1 << (PlSqlParser.DIRECTORY - 353)) | (1 << (PlSqlParser.DIRECT_PATH - 353)) | (1 << (PlSqlParser.DISABLE_ALL - 353)) | (1 << (PlSqlParser.DISABLE - 353)) | (1 << (PlSqlParser.DISABLE_PARALLEL_DML - 353)))) !== 0) || ((((_la - 385)) & ~0x1f) == 0 && ((1 << (_la - 385)) & ((1 << (PlSqlParser.DISABLE_PRESET - 385)) | (1 << (PlSqlParser.DISABLE_RPKE - 385)) | (1 << (PlSqlParser.DISALLOW - 385)) | (1 << (PlSqlParser.DISASSOCIATE - 385)) | (1 << (PlSqlParser.DISCARD - 385)) | (1 << (PlSqlParser.DISCONNECT - 385)) | (1 << (PlSqlParser.DISK - 385)) | (1 << (PlSqlParser.DISKGROUP - 385)) | (1 << (PlSqlParser.DISKS - 385)) | (1 << (PlSqlParser.DISMOUNT - 385)) | (1 << (PlSqlParser.DISTINGUISHED - 385)) | (1 << (PlSqlParser.DISTRIBUTED - 385)) | (1 << (PlSqlParser.DISTRIBUTE - 385)) | (1 << (PlSqlParser.DML - 385)) | (1 << (PlSqlParser.DML_UPDATE - 385)) | (1 << (PlSqlParser.DOCFIDELITY - 385)) | (1 << (PlSqlParser.DOCUMENT - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_FILTER - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_NO_SORT - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_SORT - 385)) | (1 << (PlSqlParser.DOUBLE - 385)) | (1 << (PlSqlParser.DOWNGRADE - 385)) | (1 << (PlSqlParser.DRIVING_SITE - 385)) | (1 << (PlSqlParser.DROP_COLUMN - 385)) | (1 << (PlSqlParser.DROP_GROUP - 385)) | (1 << (PlSqlParser.DSINTERVAL_UNCONSTRAINED - 385)) | (1 << (PlSqlParser.DST_UPGRADE_INSERT_CONV - 385)) | (1 << (PlSqlParser.DUMP - 385)))) !== 0) || ((((_la - 417)) & ~0x1f) == 0 && ((1 << (_la - 417)) & ((1 << (PlSqlParser.DUPLICATE - 417)) | (1 << (PlSqlParser.DV - 417)) | (1 << (PlSqlParser.DYNAMIC - 417)) | (1 << (PlSqlParser.DYNAMIC_SAMPLING - 417)) | (1 << (PlSqlParser.DYNAMIC_SAMPLING_EST_CDN - 417)) | (1 << (PlSqlParser.EACH - 417)) | (1 << (PlSqlParser.EDITIONABLE - 417)) | (1 << (PlSqlParser.EDITION - 417)) | (1 << (PlSqlParser.EDITIONING - 417)) | (1 << (PlSqlParser.EDITIONS - 417)) | (1 << (PlSqlParser.ELEMENT - 417)) | (1 << (PlSqlParser.ELIM_GROUPBY - 417)) | (1 << (PlSqlParser.ELIMINATE_JOIN - 417)) | (1 << (PlSqlParser.ELIMINATE_OBY - 417)) | (1 << (PlSqlParser.ELIMINATE_OUTER_JOIN - 417)) | (1 << (PlSqlParser.EM - 417)) | (1 << (PlSqlParser.EMPTY_BLOB - 417)) | (1 << (PlSqlParser.EMPTY_CLOB - 417)) | (1 << (PlSqlParser.EMPTY - 417)) | (1 << (PlSqlParser.ENABLE_ALL - 417)) | (1 << (PlSqlParser.ENABLE - 417)) | (1 << (PlSqlParser.ENABLE_PARALLEL_DML - 417)) | (1 << (PlSqlParser.ENABLE_PRESET - 417)) | (1 << (PlSqlParser.ENCODING - 417)) | (1 << (PlSqlParser.ENCRYPT - 417)) | (1 << (PlSqlParser.ENCRYPTION - 417)) | (1 << (PlSqlParser.END_OUTLINE_DATA - 417)) | (1 << (PlSqlParser.ENFORCED - 417)) | (1 << (PlSqlParser.ENFORCE - 417)))) !== 0) || ((((_la - 449)) & ~0x1f) == 0 && ((1 << (_la - 449)) & ((1 << (PlSqlParser.ENQUEUE - 449)) | (1 << (PlSqlParser.ENTERPRISE - 449)) | (1 << (PlSqlParser.ENTITYESCAPING - 449)) | (1 << (PlSqlParser.ENTRY - 449)) | (1 << (PlSqlParser.EQUIPART - 449)) | (1 << (PlSqlParser.ERR - 449)) | (1 << (PlSqlParser.ERROR_ARGUMENT - 449)) | (1 << (PlSqlParser.ERROR - 449)) | (1 << (PlSqlParser.ERROR_ON_OVERLAP_TIME - 449)) | (1 << (PlSqlParser.ERRORS - 449)) | (1 << (PlSqlParser.ESCAPE - 449)) | (1 << (PlSqlParser.ESTIMATE - 449)) | (1 << (PlSqlParser.EVAL - 449)) | (1 << (PlSqlParser.EVALNAME - 449)) | (1 << (PlSqlParser.EVALUATE - 449)) | (1 << (PlSqlParser.EVALUATION - 449)) | (1 << (PlSqlParser.EVENTS - 449)) | (1 << (PlSqlParser.EVERY - 449)) | (1 << (PlSqlParser.EXCEPT - 449)) | (1 << (PlSqlParser.EXCEPTION - 449)) | (1 << (PlSqlParser.EXCEPTION_INIT - 449)) | (1 << (PlSqlParser.EXCEPTIONS - 449)) | (1 << (PlSqlParser.EXCHANGE - 449)) | (1 << (PlSqlParser.EXCLUDE - 449)) | (1 << (PlSqlParser.EXCLUDING - 449)) | (1 << (PlSqlParser.EXECUTE - 449)) | (1 << (PlSqlParser.EXEMPT - 449)) | (1 << (PlSqlParser.EXISTING - 449)) | (1 << (PlSqlParser.EXISTS - 449)) | (1 << (PlSqlParser.EXISTSNODE - 449)) | (1 << (PlSqlParser.EXIT - 449)))) !== 0) || ((((_la - 481)) & ~0x1f) == 0 && ((1 << (_la - 481)) & ((1 << (PlSqlParser.EXPAND_GSET_TO_UNION - 481)) | (1 << (PlSqlParser.EXPAND_TABLE - 481)) | (1 << (PlSqlParser.EXP - 481)) | (1 << (PlSqlParser.EXPIRE - 481)) | (1 << (PlSqlParser.EXPLAIN - 481)) | (1 << (PlSqlParser.EXPLOSION - 481)) | (1 << (PlSqlParser.EXPORT - 481)) | (1 << (PlSqlParser.EXPR_CORR_CHECK - 481)) | (1 << (PlSqlParser.EXPRESS - 481)) | (1 << (PlSqlParser.EXTENDS - 481)) | (1 << (PlSqlParser.EXTENT - 481)) | (1 << (PlSqlParser.EXTENTS - 481)) | (1 << (PlSqlParser.EXTERNAL - 481)) | (1 << (PlSqlParser.EXTERNALLY - 481)) | (1 << (PlSqlParser.EXTRACTCLOBXML - 481)) | (1 << (PlSqlParser.EXTRACT - 481)) | (1 << (PlSqlParser.EXTRACTVALUE - 481)) | (1 << (PlSqlParser.EXTRA - 481)) | (1 << (PlSqlParser.FACILITY - 481)) | (1 << (PlSqlParser.FACT - 481)) | (1 << (PlSqlParser.FACTOR - 481)) | (1 << (PlSqlParser.FACTORIZE_JOIN - 481)) | (1 << (PlSqlParser.FAILED - 481)) | (1 << (PlSqlParser.FAILED_LOGIN_ATTEMPTS - 481)) | (1 << (PlSqlParser.FAILGROUP - 481)) | (1 << (PlSqlParser.FAILOVER - 481)) | (1 << (PlSqlParser.FAILURE - 481)) | (1 << (PlSqlParser.FALSE - 481)) | (1 << (PlSqlParser.FAMILY - 481)) | (1 << (PlSqlParser.FAR - 481)) | (1 << (PlSqlParser.FAST - 481)) | (1 << (PlSqlParser.FASTSTART - 481)))) !== 0) || ((((_la - 513)) & ~0x1f) == 0 && ((1 << (_la - 513)) & ((1 << (PlSqlParser.FBTSCAN - 513)) | (1 << (PlSqlParser.FEATURE_DETAILS - 513)) | (1 << (PlSqlParser.FEATURE_ID - 513)) | (1 << (PlSqlParser.FEATURE_SET - 513)) | (1 << (PlSqlParser.FEATURE_VALUE - 513)) | (1 << (PlSqlParser.FETCH - 513)) | (1 << (PlSqlParser.FILE - 513)) | (1 << (PlSqlParser.FILE_NAME_CONVERT - 513)) | (1 << (PlSqlParser.FILESYSTEM_LIKE_LOGGING - 513)) | (1 << (PlSqlParser.FILTER - 513)) | (1 << (PlSqlParser.FINAL - 513)) | (1 << (PlSqlParser.FINE - 513)) | (1 << (PlSqlParser.FINISH - 513)) | (1 << (PlSqlParser.FIRST - 513)) | (1 << (PlSqlParser.FIRSTM - 513)) | (1 << (PlSqlParser.FIRST_ROWS - 513)) | (1 << (PlSqlParser.FIRST_VALUE - 513)) | (1 << (PlSqlParser.FIXED_VIEW_DATA - 513)) | (1 << (PlSqlParser.FLAGGER - 513)) | (1 << (PlSqlParser.FLASHBACK - 513)) | (1 << (PlSqlParser.FLASH_CACHE - 513)) | (1 << (PlSqlParser.FLOAT - 513)) | (1 << (PlSqlParser.FLOB - 513)) | (1 << (PlSqlParser.FLOOR - 513)) | (1 << (PlSqlParser.FLUSH - 513)) | (1 << (PlSqlParser.FOLDER - 513)) | (1 << (PlSqlParser.FOLLOWING - 513)) | (1 << (PlSqlParser.FOLLOWS - 513)) | (1 << (PlSqlParser.FORALL - 513)) | (1 << (PlSqlParser.FORCE - 513)) | (1 << (PlSqlParser.FORCE_XML_QUERY_REWRITE - 513)) | (1 << (PlSqlParser.FOREIGN - 513)))) !== 0) || ((((_la - 545)) & ~0x1f) == 0 && ((1 << (_la - 545)) & ((1 << (PlSqlParser.FOREVER - 545)) | (1 << (PlSqlParser.FORMAT - 545)) | (1 << (PlSqlParser.FORWARD - 545)) | (1 << (PlSqlParser.FRAGMENT_NUMBER - 545)) | (1 << (PlSqlParser.FREELIST - 545)) | (1 << (PlSqlParser.FREELISTS - 545)) | (1 << (PlSqlParser.FREEPOOLS - 545)) | (1 << (PlSqlParser.FRESH - 545)) | (1 << (PlSqlParser.FROM_TZ - 545)) | (1 << (PlSqlParser.FULL - 545)) | (1 << (PlSqlParser.FULL_OUTER_JOIN_TO_OUTER - 545)) | (1 << (PlSqlParser.FUNCTION - 545)) | (1 << (PlSqlParser.FUNCTIONS - 545)) | (1 << (PlSqlParser.GATHER_OPTIMIZER_STATISTICS - 545)) | (1 << (PlSqlParser.GATHER_PLAN_STATISTICS - 545)) | (1 << (PlSqlParser.GBY_CONC_ROLLUP - 545)) | (1 << (PlSqlParser.GBY_PUSHDOWN - 545)) | (1 << (PlSqlParser.GENERATED - 545)) | (1 << (PlSqlParser.GET - 545)) | (1 << (PlSqlParser.GLOBAL - 545)) | (1 << (PlSqlParser.GLOBALLY - 545)) | (1 << (PlSqlParser.GLOBAL_NAME - 545)) | (1 << (PlSqlParser.GLOBAL_TOPIC_ENABLED - 545)) | (1 << (PlSqlParser.GROUP_BY - 545)) | (1 << (PlSqlParser.GROUP_ID - 545)) | (1 << (PlSqlParser.GROUPING - 545)) | (1 << (PlSqlParser.GROUPING_ID - 545)))) !== 0) || ((((_la - 577)) & ~0x1f) == 0 && ((1 << (_la - 577)) & ((1 << (PlSqlParser.GROUPS - 577)) | (1 << (PlSqlParser.GUARANTEED - 577)) | (1 << (PlSqlParser.GUARANTEE - 577)) | (1 << (PlSqlParser.GUARD - 577)) | (1 << (PlSqlParser.HASH_AJ - 577)) | (1 << (PlSqlParser.HASH - 577)) | (1 << (PlSqlParser.HASHKEYS - 577)) | (1 << (PlSqlParser.HASH_SJ - 577)) | (1 << (PlSqlParser.HEADER - 577)) | (1 << (PlSqlParser.HEAP - 577)) | (1 << (PlSqlParser.HELP - 577)) | (1 << (PlSqlParser.HEXTORAW - 577)) | (1 << (PlSqlParser.HEXTOREF - 577)) | (1 << (PlSqlParser.HIDDEN_KEYWORD - 577)) | (1 << (PlSqlParser.HIDE - 577)) | (1 << (PlSqlParser.HIERARCHY - 577)) | (1 << (PlSqlParser.HIGH - 577)) | (1 << (PlSqlParser.HINTSET_BEGIN - 577)) | (1 << (PlSqlParser.HINTSET_END - 577)) | (1 << (PlSqlParser.HOT - 577)) | (1 << (PlSqlParser.HOUR - 577)) | (1 << (PlSqlParser.HWM_BROKERED - 577)) | (1 << (PlSqlParser.HYBRID - 577)) | (1 << (PlSqlParser.IDENTIFIER - 577)) | (1 << (PlSqlParser.IDENTITY - 577)) | (1 << (PlSqlParser.IDGENERATORS - 577)) | (1 << (PlSqlParser.ID - 577)) | (1 << (PlSqlParser.IDLE_TIME - 577)) | (1 << (PlSqlParser.IF - 577)) | (1 << (PlSqlParser.IGNORE - 577)))) !== 0) || ((((_la - 609)) & ~0x1f) == 0 && ((1 << (_la - 609)) & ((1 << (PlSqlParser.IGNORE_OPTIM_EMBEDDED_HINTS - 609)) | (1 << (PlSqlParser.IGNORE_ROW_ON_DUPKEY_INDEX - 609)) | (1 << (PlSqlParser.IGNORE_WHERE_CLAUSE - 609)) | (1 << (PlSqlParser.ILM - 609)) | (1 << (PlSqlParser.IMMEDIATE - 609)) | (1 << (PlSqlParser.IMPACT - 609)) | (1 << (PlSqlParser.IMPORT - 609)) | (1 << (PlSqlParser.INACTIVE - 609)) | (1 << (PlSqlParser.INCLUDE - 609)) | (1 << (PlSqlParser.INCLUDE_VERSION - 609)) | (1 << (PlSqlParser.INCLUDING - 609)) | (1 << (PlSqlParser.INCREMENTAL - 609)) | (1 << (PlSqlParser.INCREMENT - 609)) | (1 << (PlSqlParser.INCR - 609)) | (1 << (PlSqlParser.INDENT - 609)) | (1 << (PlSqlParser.INDEX_ASC - 609)) | (1 << (PlSqlParser.INDEX_COMBINE - 609)) | (1 << (PlSqlParser.INDEX_DESC - 609)) | (1 << (PlSqlParser.INDEXED - 609)) | (1 << (PlSqlParser.INDEXES - 609)) | (1 << (PlSqlParser.INDEX_FFS - 609)) | (1 << (PlSqlParser.INDEX_FILTER - 609)) | (1 << (PlSqlParser.INDEXING - 609)) | (1 << (PlSqlParser.INDEX_JOIN - 609)) | (1 << (PlSqlParser.INDEX_ROWS - 609)) | (1 << (PlSqlParser.INDEX_RRS - 609)) | (1 << (PlSqlParser.INDEX_RS_ASC - 609)) | (1 << (PlSqlParser.INDEX_RS_DESC - 609)) | (1 << (PlSqlParser.INDEX_RS - 609)) | (1 << (PlSqlParser.INDEX_SCAN - 609)) | (1 << (PlSqlParser.INDEX_SKIP_SCAN - 609)))) !== 0) || ((((_la - 641)) & ~0x1f) == 0 && ((1 << (_la - 641)) & ((1 << (PlSqlParser.INDEX_SS_ASC - 641)) | (1 << (PlSqlParser.INDEX_SS_DESC - 641)) | (1 << (PlSqlParser.INDEX_SS - 641)) | (1 << (PlSqlParser.INDEX_STATS - 641)) | (1 << (PlSqlParser.INDEXTYPE - 641)) | (1 << (PlSqlParser.INDEXTYPES - 641)) | (1 << (PlSqlParser.INDICATOR - 641)) | (1 << (PlSqlParser.INDICES - 641)) | (1 << (PlSqlParser.INFINITE - 641)) | (1 << (PlSqlParser.INFORMATIONAL - 641)) | (1 << (PlSqlParser.INHERIT - 641)) | (1 << (PlSqlParser.INITCAP - 641)) | (1 << (PlSqlParser.INITIAL - 641)) | (1 << (PlSqlParser.INITIALIZED - 641)) | (1 << (PlSqlParser.INITIALLY - 641)) | (1 << (PlSqlParser.INITRANS - 641)) | (1 << (PlSqlParser.INLINE - 641)) | (1 << (PlSqlParser.INLINE_XMLTYPE_NT - 641)) | (1 << (PlSqlParser.INMEMORY - 641)) | (1 << (PlSqlParser.IN_MEMORY_METADATA - 641)) | (1 << (PlSqlParser.INMEMORY_PRUNING - 641)) | (1 << (PlSqlParser.INNER - 641)) | (1 << (PlSqlParser.INOUT - 641)) | (1 << (PlSqlParser.INPLACE - 641)) | (1 << (PlSqlParser.INSERTCHILDXMLAFTER - 641)) | (1 << (PlSqlParser.INSERTCHILDXMLBEFORE - 641)) | (1 << (PlSqlParser.INSERTCHILDXML - 641)) | (1 << (PlSqlParser.INSERTXMLAFTER - 641)) | (1 << (PlSqlParser.INSERTXMLBEFORE - 641)) | (1 << (PlSqlParser.INSTANCE - 641)))) !== 0) || ((((_la - 673)) & ~0x1f) == 0 && ((1 << (_la - 673)) & ((1 << (PlSqlParser.INSTANCES - 673)) | (1 << (PlSqlParser.INSTANTIABLE - 673)) | (1 << (PlSqlParser.INSTANTLY - 673)) | (1 << (PlSqlParser.INSTEAD - 673)) | (1 << (PlSqlParser.INSTR2 - 673)) | (1 << (PlSqlParser.INSTR4 - 673)) | (1 << (PlSqlParser.INSTRB - 673)) | (1 << (PlSqlParser.INSTRC - 673)) | (1 << (PlSqlParser.INSTR - 673)) | (1 << (PlSqlParser.INTEGER - 673)) | (1 << (PlSqlParser.INTERLEAVED - 673)) | (1 << (PlSqlParser.INTERMEDIATE - 673)) | (1 << (PlSqlParser.INTERNAL_CONVERT - 673)) | (1 << (PlSqlParser.INTERNAL_USE - 673)) | (1 << (PlSqlParser.INTERPRETED - 673)) | (1 << (PlSqlParser.INTERVAL - 673)) | (1 << (PlSqlParser.INT - 673)) | (1 << (PlSqlParser.INVALIDATE - 673)) | (1 << (PlSqlParser.INVISIBLE - 673)) | (1 << (PlSqlParser.IN_XQUERY - 673)) | (1 << (PlSqlParser.ISOLATION - 673)) | (1 << (PlSqlParser.ISOLATION_LEVEL - 673)) | (1 << (PlSqlParser.ITERATE - 673)) | (1 << (PlSqlParser.ITERATION_NUMBER - 673)) | (1 << (PlSqlParser.JAVA - 673)) | (1 << (PlSqlParser.JOB - 673)) | (1 << (PlSqlParser.JOIN - 673)) | (1 << (PlSqlParser.JSON_ARRAYAGG - 673)) | (1 << (PlSqlParser.JSON_ARRAY - 673)))) !== 0) || ((((_la - 705)) & ~0x1f) == 0 && ((1 << (_la - 705)) & ((1 << (PlSqlParser.JSON_EQUAL - 705)) | (1 << (PlSqlParser.JSON_EXISTS2 - 705)) | (1 << (PlSqlParser.JSON_EXISTS - 705)) | (1 << (PlSqlParser.JSONGET - 705)) | (1 << (PlSqlParser.JSON - 705)) | (1 << (PlSqlParser.JSON_OBJECTAGG - 705)) | (1 << (PlSqlParser.JSON_OBJECT - 705)) | (1 << (PlSqlParser.JSONPARSE - 705)) | (1 << (PlSqlParser.JSON_QUERY - 705)) | (1 << (PlSqlParser.JSON_SERIALIZE - 705)) | (1 << (PlSqlParser.JSON_TABLE - 705)) | (1 << (PlSqlParser.JSON_TEXTCONTAINS2 - 705)) | (1 << (PlSqlParser.JSON_TEXTCONTAINS - 705)) | (1 << (PlSqlParser.JSON_VALUE - 705)) | (1 << (PlSqlParser.KEEP_DUPLICATES - 705)) | (1 << (PlSqlParser.KEEP - 705)) | (1 << (PlSqlParser.KERBEROS - 705)) | (1 << (PlSqlParser.KEY - 705)) | (1 << (PlSqlParser.KEY_LENGTH - 705)) | (1 << (PlSqlParser.KEYSIZE - 705)) | (1 << (PlSqlParser.KEYS - 705)) | (1 << (PlSqlParser.KEYSTORE - 705)) | (1 << (PlSqlParser.KILL - 705)) | (1 << (PlSqlParser.LABEL - 705)) | (1 << (PlSqlParser.LANGUAGE - 705)) | (1 << (PlSqlParser.LAST_DAY - 705)) | (1 << (PlSqlParser.LAST - 705)) | (1 << (PlSqlParser.LAST_VALUE - 705)) | (1 << (PlSqlParser.LATERAL - 705)) | (1 << (PlSqlParser.LAX - 705)) | (1 << (PlSqlParser.LAYER - 705)) | (1 << (PlSqlParser.LDAP_REGISTRATION_ENABLED - 705)))) !== 0) || ((((_la - 737)) & ~0x1f) == 0 && ((1 << (_la - 737)) & ((1 << (PlSqlParser.LDAP_REGISTRATION - 737)) | (1 << (PlSqlParser.LDAP_REG_SYNC_INTERVAL - 737)) | (1 << (PlSqlParser.LEADING - 737)) | (1 << (PlSqlParser.LEFT - 737)) | (1 << (PlSqlParser.LENGTH2 - 737)) | (1 << (PlSqlParser.LENGTH4 - 737)) | (1 << (PlSqlParser.LENGTHB - 737)) | (1 << (PlSqlParser.LENGTHC - 737)) | (1 << (PlSqlParser.LENGTH - 737)) | (1 << (PlSqlParser.LESS - 737)) | (1 << (PlSqlParser.LEVEL - 737)) | (1 << (PlSqlParser.LEVELS - 737)) | (1 << (PlSqlParser.LIBRARY - 737)) | (1 << (PlSqlParser.LIFECYCLE - 737)) | (1 << (PlSqlParser.LIFE - 737)) | (1 << (PlSqlParser.LIFETIME - 737)) | (1 << (PlSqlParser.LIKE2 - 737)) | (1 << (PlSqlParser.LIKE4 - 737)) | (1 << (PlSqlParser.LIKEC - 737)) | (1 << (PlSqlParser.LIKE_EXPAND - 737)) | (1 << (PlSqlParser.LIMIT - 737)) | (1 << (PlSqlParser.LINEAR - 737)) | (1 << (PlSqlParser.LINK - 737)) | (1 << (PlSqlParser.LIST - 737)) | (1 << (PlSqlParser.LN - 737)) | (1 << (PlSqlParser.LNNVL - 737)) | (1 << (PlSqlParser.LOAD - 737)) | (1 << (PlSqlParser.LOB - 737)) | (1 << (PlSqlParser.LOBNVL - 737)) | (1 << (PlSqlParser.LOBS - 737)) | (1 << (PlSqlParser.LOCAL_INDEXES - 737)))) !== 0) || ((((_la - 769)) & ~0x1f) == 0 && ((1 << (_la - 769)) & ((1 << (PlSqlParser.LOCAL - 769)) | (1 << (PlSqlParser.LOCALTIME - 769)) | (1 << (PlSqlParser.LOCALTIMESTAMP - 769)) | (1 << (PlSqlParser.LOCATION - 769)) | (1 << (PlSqlParser.LOCATOR - 769)) | (1 << (PlSqlParser.LOCKED - 769)) | (1 << (PlSqlParser.LOCKING - 769)) | (1 << (PlSqlParser.LOGFILE - 769)) | (1 << (PlSqlParser.LOGFILES - 769)) | (1 << (PlSqlParser.LOGGING - 769)) | (1 << (PlSqlParser.LOGICAL - 769)) | (1 << (PlSqlParser.LOGICAL_READS_PER_CALL - 769)) | (1 << (PlSqlParser.LOGICAL_READS_PER_SESSION - 769)) | (1 << (PlSqlParser.LOG - 769)) | (1 << (PlSqlParser.LOGMINING - 769)) | (1 << (PlSqlParser.LOGOFF - 769)) | (1 << (PlSqlParser.LOGON - 769)) | (1 << (PlSqlParser.LOG_READ_ONLY_VIOLATIONS - 769)) | (1 << (PlSqlParser.LONG - 769)) | (1 << (PlSqlParser.LOOP - 769)) | (1 << (PlSqlParser.LOWER - 769)) | (1 << (PlSqlParser.LOW - 769)) | (1 << (PlSqlParser.LPAD - 769)) | (1 << (PlSqlParser.LTRIM - 769)) | (1 << (PlSqlParser.MAIN - 769)) | (1 << (PlSqlParser.MAKE_REF - 769)) | (1 << (PlSqlParser.MANAGED - 769)) | (1 << (PlSqlParser.MANAGE - 769)) | (1 << (PlSqlParser.MANAGEMENT - 769)) | (1 << (PlSqlParser.MANAGER - 769)) | (1 << (PlSqlParser.MANUAL - 769)))) !== 0) || ((((_la - 801)) & ~0x1f) == 0 && ((1 << (_la - 801)) & ((1 << (PlSqlParser.MAP - 801)) | (1 << (PlSqlParser.MAPPING - 801)) | (1 << (PlSqlParser.MASTER - 801)) | (1 << (PlSqlParser.MATCHED - 801)) | (1 << (PlSqlParser.MATCHES - 801)) | (1 << (PlSqlParser.MATCH - 801)) | (1 << (PlSqlParser.MATCH_NUMBER - 801)) | (1 << (PlSqlParser.MATCH_RECOGNIZE - 801)) | (1 << (PlSqlParser.MATERIALIZED - 801)) | (1 << (PlSqlParser.MATERIALIZE - 801)) | (1 << (PlSqlParser.MAXARCHLOGS - 801)) | (1 << (PlSqlParser.MAXDATAFILES - 801)) | (1 << (PlSqlParser.MAXEXTENTS - 801)) | (1 << (PlSqlParser.MAXIMIZE - 801)) | (1 << (PlSqlParser.MAXINSTANCES - 801)) | (1 << (PlSqlParser.MAXLOGFILES - 801)) | (1 << (PlSqlParser.MAXLOGHISTORY - 801)) | (1 << (PlSqlParser.MAXLOGMEMBERS - 801)) | (1 << (PlSqlParser.MAX_SHARED_TEMP_SIZE - 801)) | (1 << (PlSqlParser.MAXSIZE - 801)) | (1 << (PlSqlParser.MAXTRANS - 801)) | (1 << (PlSqlParser.MAXVALUE - 801)) | (1 << (PlSqlParser.MEASURE - 801)) | (1 << (PlSqlParser.MEASURES - 801)) | (1 << (PlSqlParser.MEDIUM - 801)) | (1 << (PlSqlParser.MEMBER - 801)) | (1 << (PlSqlParser.MEMCOMPRESS - 801)) | (1 << (PlSqlParser.MEMORY - 801)) | (1 << (PlSqlParser.MERGEACTIONS - 801)) | (1 << (PlSqlParser.MERGE_AJ - 801)) | (1 << (PlSqlParser.MERGE_CONST_ON - 801)) | (1 << (PlSqlParser.MERGE - 801)))) !== 0) || ((((_la - 833)) & ~0x1f) == 0 && ((1 << (_la - 833)) & ((1 << (PlSqlParser.MERGE_SJ - 833)) | (1 << (PlSqlParser.METADATA - 833)) | (1 << (PlSqlParser.METHOD - 833)) | (1 << (PlSqlParser.MIGRATE - 833)) | (1 << (PlSqlParser.MIGRATION - 833)) | (1 << (PlSqlParser.MINEXTENTS - 833)) | (1 << (PlSqlParser.MINIMIZE - 833)) | (1 << (PlSqlParser.MINIMUM - 833)) | (1 << (PlSqlParser.MINING - 833)) | (1 << (PlSqlParser.MINUS_NULL - 833)) | (1 << (PlSqlParser.MINUTE - 833)) | (1 << (PlSqlParser.MINVALUE - 833)) | (1 << (PlSqlParser.MIRRORCOLD - 833)) | (1 << (PlSqlParser.MIRRORHOT - 833)) | (1 << (PlSqlParser.MIRROR - 833)) | (1 << (PlSqlParser.MLSLABEL - 833)) | (1 << (PlSqlParser.MODEL_COMPILE_SUBQUERY - 833)) | (1 << (PlSqlParser.MODEL_DONTVERIFY_UNIQUENESS - 833)) | (1 << (PlSqlParser.MODEL_DYNAMIC_SUBQUERY - 833)) | (1 << (PlSqlParser.MODEL_MIN_ANALYSIS - 833)) | (1 << (PlSqlParser.MODEL - 833)) | (1 << (PlSqlParser.MODEL_NB - 833)) | (1 << (PlSqlParser.MODEL_NO_ANALYSIS - 833)) | (1 << (PlSqlParser.MODEL_PBY - 833)) | (1 << (PlSqlParser.MODEL_PUSH_REF - 833)) | (1 << (PlSqlParser.MODEL_SV - 833)) | (1 << (PlSqlParser.MODIFICATION - 833)) | (1 << (PlSqlParser.MODIFY_COLUMN_TYPE - 833)) | (1 << (PlSqlParser.MODIFY - 833)) | (1 << (PlSqlParser.MOD - 833)))) !== 0) || ((((_la - 865)) & ~0x1f) == 0 && ((1 << (_la - 865)) & ((1 << (PlSqlParser.MODULE - 865)) | (1 << (PlSqlParser.MONITORING - 865)) | (1 << (PlSqlParser.MONITOR - 865)) | (1 << (PlSqlParser.MONTH - 865)) | (1 << (PlSqlParser.MONTHS_BETWEEN - 865)) | (1 << (PlSqlParser.MONTHS - 865)) | (1 << (PlSqlParser.MOUNT - 865)) | (1 << (PlSqlParser.MOUNTPATH - 865)) | (1 << (PlSqlParser.MOVEMENT - 865)) | (1 << (PlSqlParser.MOVE - 865)) | (1 << (PlSqlParser.MULTIDIMENSIONAL - 865)) | (1 << (PlSqlParser.MULTISET - 865)) | (1 << (PlSqlParser.MV_MERGE - 865)) | (1 << (PlSqlParser.NAMED - 865)) | (1 << (PlSqlParser.NAME - 865)) | (1 << (PlSqlParser.NAMESPACE - 865)) | (1 << (PlSqlParser.NAN - 865)) | (1 << (PlSqlParser.NANVL - 865)) | (1 << (PlSqlParser.NATIONAL - 865)) | (1 << (PlSqlParser.NATIVE_FULL_OUTER_JOIN - 865)) | (1 << (PlSqlParser.NATIVE - 865)) | (1 << (PlSqlParser.NATURAL - 865)) | (1 << (PlSqlParser.NAV - 865)) | (1 << (PlSqlParser.NCHAR_CS - 865)) | (1 << (PlSqlParser.NCHAR - 865)) | (1 << (PlSqlParser.NCHR - 865)) | (1 << (PlSqlParser.NCLOB - 865)) | (1 << (PlSqlParser.NEEDED - 865)) | (1 << (PlSqlParser.NEG - 865)) | (1 << (PlSqlParser.NESTED - 865)) | (1 << (PlSqlParser.NESTED_TABLE_FAST_INSERT - 865)))) !== 0) || ((((_la - 897)) & ~0x1f) == 0 && ((1 << (_la - 897)) & ((1 << (PlSqlParser.NESTED_TABLE_GET_REFS - 897)) | (1 << (PlSqlParser.NESTED_TABLE_ID - 897)) | (1 << (PlSqlParser.NESTED_TABLE_SET_REFS - 897)) | (1 << (PlSqlParser.NESTED_TABLE_SET_SETID - 897)) | (1 << (PlSqlParser.NETWORK - 897)) | (1 << (PlSqlParser.NEVER - 897)) | (1 << (PlSqlParser.NEW - 897)) | (1 << (PlSqlParser.NEW_TIME - 897)) | (1 << (PlSqlParser.NEXT_DAY - 897)) | (1 << (PlSqlParser.NEXT - 897)) | (1 << (PlSqlParser.NL_AJ - 897)) | (1 << (PlSqlParser.NLJ_BATCHING - 897)) | (1 << (PlSqlParser.NLJ_INDEX_FILTER - 897)) | (1 << (PlSqlParser.NLJ_INDEX_SCAN - 897)) | (1 << (PlSqlParser.NLJ_PREFETCH - 897)) | (1 << (PlSqlParser.NLS_CALENDAR - 897)) | (1 << (PlSqlParser.NLS_CHARACTERSET - 897)) | (1 << (PlSqlParser.NLS_CHARSET_DECL_LEN - 897)) | (1 << (PlSqlParser.NLS_CHARSET_ID - 897)) | (1 << (PlSqlParser.NLS_CHARSET_NAME - 897)) | (1 << (PlSqlParser.NLS_COMP - 897)) | (1 << (PlSqlParser.NLS_CURRENCY - 897)) | (1 << (PlSqlParser.NLS_DATE_FORMAT - 897)) | (1 << (PlSqlParser.NLS_DATE_LANGUAGE - 897)) | (1 << (PlSqlParser.NLS_INITCAP - 897)) | (1 << (PlSqlParser.NLS_ISO_CURRENCY - 897)) | (1 << (PlSqlParser.NL_SJ - 897)) | (1 << (PlSqlParser.NLS_LANG - 897)) | (1 << (PlSqlParser.NLS_LANGUAGE - 897)) | (1 << (PlSqlParser.NLS_LENGTH_SEMANTICS - 897)) | (1 << (PlSqlParser.NLS_LOWER - 897)) | (1 << (PlSqlParser.NLS_NCHAR_CONV_EXCP - 897)))) !== 0) || ((((_la - 929)) & ~0x1f) == 0 && ((1 << (_la - 929)) & ((1 << (PlSqlParser.NLS_NUMERIC_CHARACTERS - 929)) | (1 << (PlSqlParser.NLS_SORT - 929)) | (1 << (PlSqlParser.NLSSORT - 929)) | (1 << (PlSqlParser.NLS_SPECIAL_CHARS - 929)) | (1 << (PlSqlParser.NLS_TERRITORY - 929)) | (1 << (PlSqlParser.NLS_UPPER - 929)) | (1 << (PlSqlParser.NO_ACCESS - 929)) | (1 << (PlSqlParser.NO_ADAPTIVE_PLAN - 929)) | (1 << (PlSqlParser.NO_ANSI_REARCH - 929)) | (1 << (PlSqlParser.NOAPPEND - 929)) | (1 << (PlSqlParser.NOARCHIVELOG - 929)) | (1 << (PlSqlParser.NOAUDIT - 929)) | (1 << (PlSqlParser.NO_AUTO_REOPTIMIZE - 929)) | (1 << (PlSqlParser.NO_BASETABLE_MULTIMV_REWRITE - 929)) | (1 << (PlSqlParser.NO_BATCH_TABLE_ACCESS_BY_ROWID - 929)) | (1 << (PlSqlParser.NO_BIND_AWARE - 929)) | (1 << (PlSqlParser.NO_BUFFER - 929)) | (1 << (PlSqlParser.NOCACHE - 929)) | (1 << (PlSqlParser.NO_CARTESIAN - 929)) | (1 << (PlSqlParser.NO_CHECK_ACL_REWRITE - 929)) | (1 << (PlSqlParser.NO_CLUSTER_BY_ROWID - 929)) | (1 << (PlSqlParser.NO_CLUSTERING - 929)) | (1 << (PlSqlParser.NO_COALESCE_SQ - 929)) | (1 << (PlSqlParser.NO_COMMON_DATA - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_CB_WHR_ONLY - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_COMBINE_SW - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_COST_BASED - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_ELIM_DUPS - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_FILTERING - 929)) | (1 << (PlSqlParser.NOCOPY - 929)) | (1 << (PlSqlParser.NO_COST_XML_QUERY_REWRITE - 929)))) !== 0) || ((((_la - 961)) & ~0x1f) == 0 && ((1 << (_la - 961)) & ((1 << (PlSqlParser.NO_CPU_COSTING - 961)) | (1 << (PlSqlParser.NOCPU_COSTING - 961)) | (1 << (PlSqlParser.NOCYCLE - 961)) | (1 << (PlSqlParser.NO_DATA_SECURITY_REWRITE - 961)) | (1 << (PlSqlParser.NO_DECORRELATE - 961)) | (1 << (PlSqlParser.NODELAY - 961)) | (1 << (PlSqlParser.NO_DOMAIN_INDEX_FILTER - 961)) | (1 << (PlSqlParser.NO_DST_UPGRADE_INSERT_CONV - 961)) | (1 << (PlSqlParser.NO_ELIM_GROUPBY - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_JOIN - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_OBY - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_OUTER_JOIN - 961)) | (1 << (PlSqlParser.NOENTITYESCAPING - 961)) | (1 << (PlSqlParser.NO_EXPAND_GSET_TO_UNION - 961)) | (1 << (PlSqlParser.NO_EXPAND - 961)) | (1 << (PlSqlParser.NO_EXPAND_TABLE - 961)) | (1 << (PlSqlParser.NO_FACT - 961)) | (1 << (PlSqlParser.NO_FACTORIZE_JOIN - 961)) | (1 << (PlSqlParser.NO_FILTERING - 961)) | (1 << (PlSqlParser.NOFORCE - 961)) | (1 << (PlSqlParser.NO_FULL_OUTER_JOIN_TO_OUTER - 961)) | (1 << (PlSqlParser.NO_GATHER_OPTIMIZER_STATISTICS - 961)) | (1 << (PlSqlParser.NO_GBY_PUSHDOWN - 961)) | (1 << (PlSqlParser.NOGUARANTEE - 961)) | (1 << (PlSqlParser.NO_INDEX_FFS - 961)) | (1 << (PlSqlParser.NO_INDEX - 961)) | (1 << (PlSqlParser.NO_INDEX_SS - 961)) | (1 << (PlSqlParser.NO_INMEMORY - 961)) | (1 << (PlSqlParser.NO_INMEMORY_PRUNING - 961)) | (1 << (PlSqlParser.NOKEEP - 961)) | (1 << (PlSqlParser.NO_LOAD - 961)) | (1 << (PlSqlParser.NOLOCAL - 961)))) !== 0) || ((((_la - 993)) & ~0x1f) == 0 && ((1 << (_la - 993)) & ((1 << (PlSqlParser.NOLOGGING - 993)) | (1 << (PlSqlParser.NOMAPPING - 993)) | (1 << (PlSqlParser.NOMAXVALUE - 993)) | (1 << (PlSqlParser.NO_MERGE - 993)) | (1 << (PlSqlParser.NOMINIMIZE - 993)) | (1 << (PlSqlParser.NOMINVALUE - 993)) | (1 << (PlSqlParser.NO_MODEL_PUSH_REF - 993)) | (1 << (PlSqlParser.NO_MONITORING - 993)) | (1 << (PlSqlParser.NOMONITORING - 993)) | (1 << (PlSqlParser.NO_MONITOR - 993)) | (1 << (PlSqlParser.NO_MULTIMV_REWRITE - 993)) | (1 << (PlSqlParser.NO_NATIVE_FULL_OUTER_JOIN - 993)) | (1 << (PlSqlParser.NONBLOCKING - 993)) | (1 << (PlSqlParser.NONEDITIONABLE - 993)) | (1 << (PlSqlParser.NONE - 993)) | (1 << (PlSqlParser.NO_NLJ_BATCHING - 993)) | (1 << (PlSqlParser.NO_NLJ_PREFETCH - 993)) | (1 << (PlSqlParser.NO - 993)) | (1 << (PlSqlParser.NONSCHEMA - 993)) | (1 << (PlSqlParser.NO_OBJECT_LINK - 993)) | (1 << (PlSqlParser.NOORDER - 993)) | (1 << (PlSqlParser.NO_ORDER_ROLLUPS - 993)) | (1 << (PlSqlParser.NO_OUTER_JOIN_TO_ANTI - 993)) | (1 << (PlSqlParser.NO_OUTER_JOIN_TO_INNER - 993)) | (1 << (PlSqlParser.NOOVERRIDE - 993)) | (1 << (PlSqlParser.NO_PARALLEL_INDEX - 993)) | (1 << (PlSqlParser.NOPARALLEL_INDEX - 993)) | (1 << (PlSqlParser.NO_PARALLEL - 993)) | (1 << (PlSqlParser.NOPARALLEL - 993)) | (1 << (PlSqlParser.NO_PARTIAL_COMMIT - 993)) | (1 << (PlSqlParser.NO_PARTIAL_JOIN - 993)) | (1 << (PlSqlParser.NO_PARTIAL_ROLLUP_PUSHDOWN - 993)))) !== 0) || ((((_la - 1025)) & ~0x1f) == 0 && ((1 << (_la - 1025)) & ((1 << (PlSqlParser.NOPARTITION - 1025)) | (1 << (PlSqlParser.NO_PLACE_DISTINCT - 1025)) | (1 << (PlSqlParser.NO_PLACE_GROUP_BY - 1025)) | (1 << (PlSqlParser.NO_PQ_CONCURRENT_UNION - 1025)) | (1 << (PlSqlParser.NO_PQ_MAP - 1025)) | (1 << (PlSqlParser.NO_PQ_REPLICATE - 1025)) | (1 << (PlSqlParser.NO_PQ_SKEW - 1025)) | (1 << (PlSqlParser.NO_PRUNE_GSETS - 1025)) | (1 << (PlSqlParser.NO_PULL_PRED - 1025)) | (1 << (PlSqlParser.NO_PUSH_PRED - 1025)) | (1 << (PlSqlParser.NO_PUSH_SUBQ - 1025)) | (1 << (PlSqlParser.NO_PX_FAULT_TOLERANCE - 1025)) | (1 << (PlSqlParser.NO_PX_JOIN_FILTER - 1025)) | (1 << (PlSqlParser.NO_QKN_BUFF - 1025)) | (1 << (PlSqlParser.NO_QUERY_TRANSFORMATION - 1025)) | (1 << (PlSqlParser.NO_REF_CASCADE - 1025)) | (1 << (PlSqlParser.NORELOCATE - 1025)) | (1 << (PlSqlParser.NORELY - 1025)) | (1 << (PlSqlParser.NOREPAIR - 1025)) | (1 << (PlSqlParser.NOREPLAY - 1025)) | (1 << (PlSqlParser.NORESETLOGS - 1025)) | (1 << (PlSqlParser.NO_RESULT_CACHE - 1025)) | (1 << (PlSqlParser.NOREVERSE - 1025)) | (1 << (PlSqlParser.NO_REWRITE - 1025)) | (1 << (PlSqlParser.NOREWRITE - 1025)) | (1 << (PlSqlParser.NORMAL - 1025)) | (1 << (PlSqlParser.NO_ROOT_SW_FOR_LOCAL - 1025)) | (1 << (PlSqlParser.NOROWDEPENDENCIES - 1025)) | (1 << (PlSqlParser.NOSCHEMACHECK - 1025)) | (1 << (PlSqlParser.NOSEGMENT - 1025)) | (1 << (PlSqlParser.NO_SEMIJOIN - 1025)) | (1 << (PlSqlParser.NO_SEMI_TO_INNER - 1025)))) !== 0) || ((((_la - 1057)) & ~0x1f) == 0 && ((1 << (_la - 1057)) & ((1 << (PlSqlParser.NO_SET_TO_JOIN - 1057)) | (1 << (PlSqlParser.NOSORT - 1057)) | (1 << (PlSqlParser.NO_SQL_TRANSLATION - 1057)) | (1 << (PlSqlParser.NO_SQL_TUNE - 1057)) | (1 << (PlSqlParser.NO_STAR_TRANSFORMATION - 1057)) | (1 << (PlSqlParser.NO_STATEMENT_QUEUING - 1057)) | (1 << (PlSqlParser.NO_STATS_GSETS - 1057)) | (1 << (PlSqlParser.NOSTRICT - 1057)) | (1 << (PlSqlParser.NO_SUBQUERY_PRUNING - 1057)) | (1 << (PlSqlParser.NO_SUBSTRB_PAD - 1057)) | (1 << (PlSqlParser.NO_SWAP_JOIN_INPUTS - 1057)) | (1 << (PlSqlParser.NOSWITCH - 1057)) | (1 << (PlSqlParser.NO_TABLE_LOOKUP_BY_NL - 1057)) | (1 << (PlSqlParser.NO_TEMP_TABLE - 1057)) | (1 << (PlSqlParser.NOTHING - 1057)) | (1 << (PlSqlParser.NOTIFICATION - 1057)) | (1 << (PlSqlParser.NO_TRANSFORM_DISTINCT_AGG - 1057)) | (1 << (PlSqlParser.NO_UNNEST - 1057)) | (1 << (PlSqlParser.NO_USE_CUBE - 1057)) | (1 << (PlSqlParser.NO_USE_HASH_AGGREGATION - 1057)) | (1 << (PlSqlParser.NO_USE_HASH_GBY_FOR_PUSHDOWN - 1057)) | (1 << (PlSqlParser.NO_USE_HASH - 1057)) | (1 << (PlSqlParser.NO_USE_INVISIBLE_INDEXES - 1057)) | (1 << (PlSqlParser.NO_USE_MERGE - 1057)) | (1 << (PlSqlParser.NO_USE_NL - 1057)) | (1 << (PlSqlParser.NO_USE_VECTOR_AGGREGATION - 1057)) | (1 << (PlSqlParser.NOVALIDATE - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM_DIMS - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM_FACT - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM - 1057)))) !== 0) || ((((_la - 1089)) & ~0x1f) == 0 && ((1 << (_la - 1089)) & ((1 << (PlSqlParser.NO_XDB_FASTPATH_INSERT - 1089)) | (1 << (PlSqlParser.NO_XML_DML_REWRITE - 1089)) | (1 << (PlSqlParser.NO_XMLINDEX_REWRITE_IN_SELECT - 1089)) | (1 << (PlSqlParser.NO_XMLINDEX_REWRITE - 1089)) | (1 << (PlSqlParser.NO_XML_QUERY_REWRITE - 1089)) | (1 << (PlSqlParser.NO_ZONEMAP - 1089)) | (1 << (PlSqlParser.NTH_VALUE - 1089)) | (1 << (PlSqlParser.NULLIF - 1089)) | (1 << (PlSqlParser.NULLS - 1089)) | (1 << (PlSqlParser.NUMBER - 1089)) | (1 << (PlSqlParser.NUMERIC - 1089)) | (1 << (PlSqlParser.NUM_INDEX_KEYS - 1089)) | (1 << (PlSqlParser.NUMTODSINTERVAL - 1089)) | (1 << (PlSqlParser.NUMTOYMINTERVAL - 1089)) | (1 << (PlSqlParser.NVARCHAR2 - 1089)) | (1 << (PlSqlParser.NVL2 - 1089)) | (1 << (PlSqlParser.OBJECT2XML - 1089)) | (1 << (PlSqlParser.OBJECT - 1089)) | (1 << (PlSqlParser.OBJ_ID - 1089)) | (1 << (PlSqlParser.OBJNO - 1089)) | (1 << (PlSqlParser.OBJNO_REUSE - 1089)) | (1 << (PlSqlParser.OCCURENCES - 1089)) | (1 << (PlSqlParser.OFFLINE - 1089)) | (1 << (PlSqlParser.OFF - 1089)) | (1 << (PlSqlParser.OFFSET - 1089)) | (1 << (PlSqlParser.OIDINDEX - 1089)) | (1 << (PlSqlParser.OID - 1089)) | (1 << (PlSqlParser.OLAP - 1089)) | (1 << (PlSqlParser.OLD - 1089)) | (1 << (PlSqlParser.OLD_PUSH_PRED - 1089)))) !== 0) || ((((_la - 1121)) & ~0x1f) == 0 && ((1 << (_la - 1121)) & ((1 << (PlSqlParser.OLS - 1121)) | (1 << (PlSqlParser.OLTP - 1121)) | (1 << (PlSqlParser.OMIT - 1121)) | (1 << (PlSqlParser.ONE - 1121)) | (1 << (PlSqlParser.ONLINE - 1121)) | (1 << (PlSqlParser.ONLY - 1121)) | (1 << (PlSqlParser.OPAQUE - 1121)) | (1 << (PlSqlParser.OPAQUE_TRANSFORM - 1121)) | (1 << (PlSqlParser.OPAQUE_XCANONICAL - 1121)) | (1 << (PlSqlParser.OPCODE - 1121)) | (1 << (PlSqlParser.OPEN - 1121)) | (1 << (PlSqlParser.OPERATIONS - 1121)) | (1 << (PlSqlParser.OPERATOR - 1121)) | (1 << (PlSqlParser.OPT_ESTIMATE - 1121)) | (1 << (PlSqlParser.OPTIMAL - 1121)) | (1 << (PlSqlParser.OPTIMIZE - 1121)) | (1 << (PlSqlParser.OPTIMIZER_FEATURES_ENABLE - 1121)) | (1 << (PlSqlParser.OPTIMIZER_GOAL - 1121)) | (1 << (PlSqlParser.OPT_PARAM - 1121)) | (1 << (PlSqlParser.ORA_BRANCH - 1121)) | (1 << (PlSqlParser.ORA_CHECK_ACL - 1121)) | (1 << (PlSqlParser.ORA_CHECK_PRIVILEGE - 1121)) | (1 << (PlSqlParser.ORA_CLUSTERING - 1121)) | (1 << (PlSqlParser.ORADATA - 1121)) | (1 << (PlSqlParser.ORADEBUG - 1121)) | (1 << (PlSqlParser.ORA_DST_AFFECTED - 1121)) | (1 << (PlSqlParser.ORA_DST_CONVERT - 1121)) | (1 << (PlSqlParser.ORA_DST_ERROR - 1121)) | (1 << (PlSqlParser.ORA_GET_ACLIDS - 1121)))) !== 0) || ((((_la - 1153)) & ~0x1f) == 0 && ((1 << (_la - 1153)) & ((1 << (PlSqlParser.ORA_GET_PRIVILEGES - 1153)) | (1 << (PlSqlParser.ORA_HASH - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_USERID - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_USER - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_XS_USER_GUID - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_XS_USER - 1153)) | (1 << (PlSqlParser.ORA_RAWCOMPARE - 1153)) | (1 << (PlSqlParser.ORA_RAWCONCAT - 1153)) | (1 << (PlSqlParser.ORA_ROWSCN - 1153)) | (1 << (PlSqlParser.ORA_ROWSCN_RAW - 1153)) | (1 << (PlSqlParser.ORA_ROWVERSION - 1153)) | (1 << (PlSqlParser.ORA_TABVERSION - 1153)) | (1 << (PlSqlParser.ORA_WRITE_TIME - 1153)) | (1 << (PlSqlParser.ORDERED - 1153)) | (1 << (PlSqlParser.ORDERED_PREDICATES - 1153)) | (1 << (PlSqlParser.ORDINALITY - 1153)) | (1 << (PlSqlParser.OR_EXPAND - 1153)) | (1 << (PlSqlParser.ORGANIZATION - 1153)) | (1 << (PlSqlParser.OR_PREDICATES - 1153)) | (1 << (PlSqlParser.OSERROR - 1153)) | (1 << (PlSqlParser.OTHER - 1153)) | (1 << (PlSqlParser.OUTER_JOIN_TO_ANTI - 1153)) | (1 << (PlSqlParser.OUTER_JOIN_TO_INNER - 1153)) | (1 << (PlSqlParser.OUTER - 1153)) | (1 << (PlSqlParser.OUTLINE_LEAF - 1153)) | (1 << (PlSqlParser.OUTLINE - 1153)) | (1 << (PlSqlParser.OUT_OF_LINE - 1153)) | (1 << (PlSqlParser.OUT - 1153)) | (1 << (PlSqlParser.OVERFLOW_NOMOVE - 1153)) | (1 << (PlSqlParser.OVERFLOW - 1153)))) !== 0) || ((((_la - 1185)) & ~0x1f) == 0 && ((1 << (_la - 1185)) & ((1 << (PlSqlParser.OVERLAPS - 1185)) | (1 << (PlSqlParser.OVER - 1185)) | (1 << (PlSqlParser.OVERRIDING - 1185)) | (1 << (PlSqlParser.OWNER - 1185)) | (1 << (PlSqlParser.OWNERSHIP - 1185)) | (1 << (PlSqlParser.OWN - 1185)) | (1 << (PlSqlParser.PACKAGE - 1185)) | (1 << (PlSqlParser.PACKAGES - 1185)) | (1 << (PlSqlParser.PARALLEL_ENABLE - 1185)) | (1 << (PlSqlParser.PARALLEL_INDEX - 1185)) | (1 << (PlSqlParser.PARALLEL - 1185)) | (1 << (PlSqlParser.PARAMETERS - 1185)) | (1 << (PlSqlParser.PARAM - 1185)) | (1 << (PlSqlParser.PARENT - 1185)) | (1 << (PlSqlParser.PARITY - 1185)) | (1 << (PlSqlParser.PARTIAL_JOIN - 1185)) | (1 << (PlSqlParser.PARTIALLY - 1185)) | (1 << (PlSqlParser.PARTIAL - 1185)) | (1 << (PlSqlParser.PARTIAL_ROLLUP_PUSHDOWN - 1185)) | (1 << (PlSqlParser.PARTITION_HASH - 1185)) | (1 << (PlSqlParser.PARTITION_LIST - 1185)) | (1 << (PlSqlParser.PARTITION - 1185)) | (1 << (PlSqlParser.PARTITION_RANGE - 1185)) | (1 << (PlSqlParser.PARTITIONS - 1185)) | (1 << (PlSqlParser.PARTNUMINST - 1185)) | (1 << (PlSqlParser.PASSING - 1185)) | (1 << (PlSqlParser.PASSWORD_GRACE_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD_LIFE_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD_LOCK_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD - 1185)) | (1 << (PlSqlParser.PASSWORD_REUSE_MAX - 1185)))) !== 0) || ((((_la - 1217)) & ~0x1f) == 0 && ((1 << (_la - 1217)) & ((1 << (PlSqlParser.PASSWORD_REUSE_TIME - 1217)) | (1 << (PlSqlParser.PASSWORD_VERIFY_FUNCTION - 1217)) | (1 << (PlSqlParser.PAST - 1217)) | (1 << (PlSqlParser.PATCH - 1217)) | (1 << (PlSqlParser.PATH - 1217)) | (1 << (PlSqlParser.PATH_PREFIX - 1217)) | (1 << (PlSqlParser.PATHS - 1217)) | (1 << (PlSqlParser.PATTERN - 1217)) | (1 << (PlSqlParser.PBL_HS_BEGIN - 1217)) | (1 << (PlSqlParser.PBL_HS_END - 1217)) | (1 << (PlSqlParser.PCTINCREASE - 1217)) | (1 << (PlSqlParser.PCTTHRESHOLD - 1217)) | (1 << (PlSqlParser.PCTUSED - 1217)) | (1 << (PlSqlParser.PCTVERSION - 1217)) | (1 << (PlSqlParser.PENDING - 1217)) | (1 << (PlSqlParser.PERCENT_KEYWORD - 1217)) | (1 << (PlSqlParser.PERCENT_RANKM - 1217)) | (1 << (PlSqlParser.PERFORMANCE - 1217)) | (1 << (PlSqlParser.PERIOD_KEYWORD - 1217)) | (1 << (PlSqlParser.PERMANENT - 1217)) | (1 << (PlSqlParser.PERMISSION - 1217)) | (1 << (PlSqlParser.PERMUTE - 1217)) | (1 << (PlSqlParser.PER - 1217)) | (1 << (PlSqlParser.PFILE - 1217)) | (1 << (PlSqlParser.PHYSICAL - 1217)))) !== 0) || ((((_la - 1249)) & ~0x1f) == 0 && ((1 << (_la - 1249)) & ((1 << (PlSqlParser.PIKEY - 1249)) | (1 << (PlSqlParser.PIPELINED - 1249)) | (1 << (PlSqlParser.PIV_GB - 1249)) | (1 << (PlSqlParser.PIVOT - 1249)) | (1 << (PlSqlParser.PIV_SSF - 1249)) | (1 << (PlSqlParser.PLACE_DISTINCT - 1249)) | (1 << (PlSqlParser.PLACE_GROUP_BY - 1249)) | (1 << (PlSqlParser.PLAN - 1249)) | (1 << (PlSqlParser.PLSCOPE_SETTINGS - 1249)) | (1 << (PlSqlParser.PLS_INTEGER - 1249)) | (1 << (PlSqlParser.PLSQL_CCFLAGS - 1249)) | (1 << (PlSqlParser.PLSQL_CODE_TYPE - 1249)) | (1 << (PlSqlParser.PLSQL_DEBUG - 1249)) | (1 << (PlSqlParser.PLSQL_OPTIMIZE_LEVEL - 1249)) | (1 << (PlSqlParser.PLSQL_WARNINGS - 1249)) | (1 << (PlSqlParser.PLUGGABLE - 1249)) | (1 << (PlSqlParser.POINT - 1249)) | (1 << (PlSqlParser.POLICY - 1249)) | (1 << (PlSqlParser.POOL_16K - 1249)) | (1 << (PlSqlParser.POOL_2K - 1249)) | (1 << (PlSqlParser.POOL_32K - 1249)) | (1 << (PlSqlParser.POOL_4K - 1249)) | (1 << (PlSqlParser.POOL_8K - 1249)) | (1 << (PlSqlParser.POSITIVEN - 1249)) | (1 << (PlSqlParser.POSITIVE - 1249)) | (1 << (PlSqlParser.POST_TRANSACTION - 1249)) | (1 << (PlSqlParser.POWERMULTISET_BY_CARDINALITY - 1249)) | (1 << (PlSqlParser.POWERMULTISET - 1249)) | (1 << (PlSqlParser.POWER - 1249)) | (1 << (PlSqlParser.PQ_CONCURRENT_UNION - 1249)) | (1 << (PlSqlParser.PQ_DISTRIBUTE - 1249)))) !== 0) || ((((_la - 1281)) & ~0x1f) == 0 && ((1 << (_la - 1281)) & ((1 << (PlSqlParser.PQ_DISTRIBUTE_WINDOW - 1281)) | (1 << (PlSqlParser.PQ_FILTER - 1281)) | (1 << (PlSqlParser.PQ_MAP - 1281)) | (1 << (PlSqlParser.PQ_NOMAP - 1281)) | (1 << (PlSqlParser.PQ_REPLICATE - 1281)) | (1 << (PlSqlParser.PQ_SKEW - 1281)) | (1 << (PlSqlParser.PRAGMA - 1281)) | (1 << (PlSqlParser.PREBUILT - 1281)) | (1 << (PlSqlParser.PRECEDES - 1281)) | (1 << (PlSqlParser.PRECEDING - 1281)) | (1 << (PlSqlParser.PRECISION - 1281)) | (1 << (PlSqlParser.PRECOMPUTE_SUBQUERY - 1281)) | (1 << (PlSqlParser.PREDICATE_REORDERS - 1281)) | (1 << (PlSqlParser.PRELOAD - 1281)) | (1 << (PlSqlParser.PREPARE - 1281)) | (1 << (PlSqlParser.PRESENTNNV - 1281)) | (1 << (PlSqlParser.PRESENT - 1281)) | (1 << (PlSqlParser.PRESENTV - 1281)) | (1 << (PlSqlParser.PRESERVE_OID - 1281)) | (1 << (PlSqlParser.PRESERVE - 1281)) | (1 << (PlSqlParser.PRETTY - 1281)) | (1 << (PlSqlParser.PREVIOUS - 1281)) | (1 << (PlSqlParser.PREV - 1281)) | (1 << (PlSqlParser.PRIMARY - 1281)) | (1 << (PlSqlParser.PRINTBLOBTOCLOB - 1281)) | (1 << (PlSqlParser.PRIORITY - 1281)) | (1 << (PlSqlParser.PRIVATE - 1281)) | (1 << (PlSqlParser.PRIVATE_SGA - 1281)) | (1 << (PlSqlParser.PRIVILEGED - 1281)) | (1 << (PlSqlParser.PRIVILEGE - 1281)) | (1 << (PlSqlParser.PRIVILEGES - 1281)))) !== 0) || ((((_la - 1313)) & ~0x1f) == 0 && ((1 << (_la - 1313)) & ((1 << (PlSqlParser.PROCEDURAL - 1313)) | (1 << (PlSqlParser.PROCEDURE - 1313)) | (1 << (PlSqlParser.PROCESS - 1313)) | (1 << (PlSqlParser.PROFILE - 1313)) | (1 << (PlSqlParser.PROGRAM - 1313)) | (1 << (PlSqlParser.PROJECT - 1313)) | (1 << (PlSqlParser.PROPAGATE - 1313)) | (1 << (PlSqlParser.PROTECTED - 1313)) | (1 << (PlSqlParser.PROTECTION - 1313)) | (1 << (PlSqlParser.PROXY - 1313)) | (1 << (PlSqlParser.PRUNING - 1313)) | (1 << (PlSqlParser.PULL_PRED - 1313)) | (1 << (PlSqlParser.PURGE - 1313)) | (1 << (PlSqlParser.PUSH_PRED - 1313)) | (1 << (PlSqlParser.PUSH_SUBQ - 1313)) | (1 << (PlSqlParser.PX_FAULT_TOLERANCE - 1313)) | (1 << (PlSqlParser.PX_GRANULE - 1313)) | (1 << (PlSqlParser.PX_JOIN_FILTER - 1313)) | (1 << (PlSqlParser.QB_NAME - 1313)) | (1 << (PlSqlParser.QUERY_BLOCK - 1313)) | (1 << (PlSqlParser.QUERY - 1313)) | (1 << (PlSqlParser.QUEUE_CURR - 1313)) | (1 << (PlSqlParser.QUEUE - 1313)) | (1 << (PlSqlParser.QUEUE_ROWP - 1313)) | (1 << (PlSqlParser.QUIESCE - 1313)) | (1 << (PlSqlParser.QUORUM - 1313)) | (1 << (PlSqlParser.QUOTA - 1313)) | (1 << (PlSqlParser.RAISE - 1313)) | (1 << (PlSqlParser.RANDOM_LOCAL - 1313)) | (1 << (PlSqlParser.RANDOM - 1313)) | (1 << (PlSqlParser.RANGE - 1313)))) !== 0) || ((((_la - 1345)) & ~0x1f) == 0 && ((1 << (_la - 1345)) & ((1 << (PlSqlParser.RANKM - 1345)) | (1 << (PlSqlParser.RAPIDLY - 1345)) | (1 << (PlSqlParser.RAW - 1345)) | (1 << (PlSqlParser.RAWTOHEX - 1345)) | (1 << (PlSqlParser.RAWTONHEX - 1345)) | (1 << (PlSqlParser.RBA - 1345)) | (1 << (PlSqlParser.RBO_OUTLINE - 1345)) | (1 << (PlSqlParser.RDBA - 1345)) | (1 << (PlSqlParser.READ - 1345)) | (1 << (PlSqlParser.READS - 1345)) | (1 << (PlSqlParser.REALM - 1345)) | (1 << (PlSqlParser.REAL - 1345)) | (1 << (PlSqlParser.REBALANCE - 1345)) | (1 << (PlSqlParser.REBUILD - 1345)) | (1 << (PlSqlParser.RECORD - 1345)) | (1 << (PlSqlParser.RECORDS_PER_BLOCK - 1345)) | (1 << (PlSqlParser.RECOVERABLE - 1345)) | (1 << (PlSqlParser.RECOVER - 1345)) | (1 << (PlSqlParser.RECOVERY - 1345)) | (1 << (PlSqlParser.RECYCLEBIN - 1345)) | (1 << (PlSqlParser.RECYCLE - 1345)) | (1 << (PlSqlParser.REDACTION - 1345)) | (1 << (PlSqlParser.REDEFINE - 1345)) | (1 << (PlSqlParser.REDO - 1345)) | (1 << (PlSqlParser.REDUCED - 1345)) | (1 << (PlSqlParser.REDUNDANCY - 1345)) | (1 << (PlSqlParser.REF_CASCADE_CURSOR - 1345)) | (1 << (PlSqlParser.REFERENCED - 1345)) | (1 << (PlSqlParser.REFERENCE - 1345)) | (1 << (PlSqlParser.REFERENCES - 1345)) | (1 << (PlSqlParser.REFERENCING - 1345)) | (1 << (PlSqlParser.REF - 1345)))) !== 0) || ((((_la - 1377)) & ~0x1f) == 0 && ((1 << (_la - 1377)) & ((1 << (PlSqlParser.REFRESH - 1377)) | (1 << (PlSqlParser.REFTOHEX - 1377)) | (1 << (PlSqlParser.REGEXP_COUNT - 1377)) | (1 << (PlSqlParser.REGEXP_INSTR - 1377)) | (1 << (PlSqlParser.REGEXP_LIKE - 1377)) | (1 << (PlSqlParser.REGEXP_REPLACE - 1377)) | (1 << (PlSqlParser.REGEXP_SUBSTR - 1377)) | (1 << (PlSqlParser.REGISTER - 1377)) | (1 << (PlSqlParser.REGR_AVGX - 1377)) | (1 << (PlSqlParser.REGR_AVGY - 1377)) | (1 << (PlSqlParser.REGR_COUNT - 1377)) | (1 << (PlSqlParser.REGR_INTERCEPT - 1377)) | (1 << (PlSqlParser.REGR_R2 - 1377)) | (1 << (PlSqlParser.REGR_SLOPE - 1377)) | (1 << (PlSqlParser.REGR_SXX - 1377)) | (1 << (PlSqlParser.REGR_SXY - 1377)) | (1 << (PlSqlParser.REGR_SYY - 1377)) | (1 << (PlSqlParser.REGULAR - 1377)) | (1 << (PlSqlParser.REJECT - 1377)) | (1 << (PlSqlParser.REKEY - 1377)) | (1 << (PlSqlParser.RELATIONAL - 1377)) | (1 << (PlSqlParser.RELOCATE - 1377)) | (1 << (PlSqlParser.RELY - 1377)) | (1 << (PlSqlParser.REMAINDER - 1377)) | (1 << (PlSqlParser.REMOTE_MAPPED - 1377)) | (1 << (PlSqlParser.REMOVE - 1377)) | (1 << (PlSqlParser.RENAME - 1377)) | (1 << (PlSqlParser.REPAIR - 1377)) | (1 << (PlSqlParser.REPEAT - 1377)) | (1 << (PlSqlParser.REPLACE - 1377)) | (1 << (PlSqlParser.REPLICATION - 1377)))) !== 0) || ((((_la - 1409)) & ~0x1f) == 0 && ((1 << (_la - 1409)) & ((1 << (PlSqlParser.REQUIRED - 1409)) | (1 << (PlSqlParser.RESETLOGS - 1409)) | (1 << (PlSqlParser.RESET - 1409)) | (1 << (PlSqlParser.RESIZE - 1409)) | (1 << (PlSqlParser.RESOLVE - 1409)) | (1 << (PlSqlParser.RESOLVER - 1409)) | (1 << (PlSqlParser.RESPECT - 1409)) | (1 << (PlSqlParser.RESTART - 1409)) | (1 << (PlSqlParser.RESTORE_AS_INTERVALS - 1409)) | (1 << (PlSqlParser.RESTORE - 1409)) | (1 << (PlSqlParser.RESTRICT_ALL_REF_CONS - 1409)) | (1 << (PlSqlParser.RESTRICTED - 1409)) | (1 << (PlSqlParser.RESTRICT_REFERENCES - 1409)) | (1 << (PlSqlParser.RESTRICT - 1409)) | (1 << (PlSqlParser.RESULT_CACHE - 1409)) | (1 << (PlSqlParser.RESULT - 1409)) | (1 << (PlSqlParser.RESUMABLE - 1409)) | (1 << (PlSqlParser.RESUME - 1409)) | (1 << (PlSqlParser.RETENTION - 1409)) | (1 << (PlSqlParser.RETRY_ON_ROW_CHANGE - 1409)) | (1 << (PlSqlParser.RETURNING - 1409)) | (1 << (PlSqlParser.RETURN - 1409)) | (1 << (PlSqlParser.REUSE - 1409)) | (1 << (PlSqlParser.REVERSE - 1409)) | (1 << (PlSqlParser.REWRITE_OR_ERROR - 1409)) | (1 << (PlSqlParser.REWRITE - 1409)) | (1 << (PlSqlParser.RIGHT - 1409)) | (1 << (PlSqlParser.ROLE - 1409)) | (1 << (PlSqlParser.ROLESET - 1409)) | (1 << (PlSqlParser.ROLES - 1409)))) !== 0) || ((((_la - 1441)) & ~0x1f) == 0 && ((1 << (_la - 1441)) & ((1 << (PlSqlParser.ROLLBACK - 1441)) | (1 << (PlSqlParser.ROLLING - 1441)) | (1 << (PlSqlParser.ROLLUP - 1441)) | (1 << (PlSqlParser.ROWDEPENDENCIES - 1441)) | (1 << (PlSqlParser.ROWID_MAPPING_TABLE - 1441)) | (1 << (PlSqlParser.ROWID - 1441)) | (1 << (PlSqlParser.ROWIDTOCHAR - 1441)) | (1 << (PlSqlParser.ROWIDTONCHAR - 1441)) | (1 << (PlSqlParser.ROW_LENGTH - 1441)) | (1 << (PlSqlParser.ROWNUM - 1441)) | (1 << (PlSqlParser.ROW - 1441)) | (1 << (PlSqlParser.ROWS - 1441)) | (1 << (PlSqlParser.RPAD - 1441)) | (1 << (PlSqlParser.RTRIM - 1441)) | (1 << (PlSqlParser.RULE - 1441)) | (1 << (PlSqlParser.RULES - 1441)) | (1 << (PlSqlParser.RUNNING - 1441)) | (1 << (PlSqlParser.SALT - 1441)) | (1 << (PlSqlParser.SAMPLE - 1441)) | (1 << (PlSqlParser.SAVE_AS_INTERVALS - 1441)) | (1 << (PlSqlParser.SAVEPOINT - 1441)) | (1 << (PlSqlParser.SAVE - 1441)) | (1 << (PlSqlParser.SB4 - 1441)) | (1 << (PlSqlParser.SCALE_ROWS - 1441)) | (1 << (PlSqlParser.SCALE - 1441)) | (1 << (PlSqlParser.SCAN_INSTANCES - 1441)) | (1 << (PlSqlParser.SCAN - 1441)) | (1 << (PlSqlParser.SCHEDULER - 1441)) | (1 << (PlSqlParser.SCHEMACHECK - 1441)) | (1 << (PlSqlParser.SCHEMA - 1441)) | (1 << (PlSqlParser.SCN_ASCENDING - 1441)) | (1 << (PlSqlParser.SCN - 1441)))) !== 0) || ((((_la - 1473)) & ~0x1f) == 0 && ((1 << (_la - 1473)) & ((1 << (PlSqlParser.SCOPE - 1473)) | (1 << (PlSqlParser.SCRUB - 1473)) | (1 << (PlSqlParser.SD_ALL - 1473)) | (1 << (PlSqlParser.SD_INHIBIT - 1473)) | (1 << (PlSqlParser.SDO_GEOM_MBR - 1473)) | (1 << (PlSqlParser.SD_SHOW - 1473)) | (1 << (PlSqlParser.SEARCH - 1473)) | (1 << (PlSqlParser.SECOND - 1473)) | (1 << (PlSqlParser.SECRET - 1473)) | (1 << (PlSqlParser.SECUREFILE_DBA - 1473)) | (1 << (PlSqlParser.SECUREFILE - 1473)) | (1 << (PlSqlParser.SECURITY - 1473)) | (1 << (PlSqlParser.SEED - 1473)) | (1 << (PlSqlParser.SEG_BLOCK - 1473)) | (1 << (PlSqlParser.SEG_FILE - 1473)) | (1 << (PlSqlParser.SEGMENT - 1473)) | (1 << (PlSqlParser.SELECTIVITY - 1473)) | (1 << (PlSqlParser.SELF - 1473)) | (1 << (PlSqlParser.SEMIJOIN_DRIVER - 1473)) | (1 << (PlSqlParser.SEMIJOIN - 1473)) | (1 << (PlSqlParser.SEMI_TO_INNER - 1473)) | (1 << (PlSqlParser.SEQUENCED - 1473)) | (1 << (PlSqlParser.SEQUENCE - 1473)) | (1 << (PlSqlParser.SEQUENTIAL - 1473)) | (1 << (PlSqlParser.SERIALIZABLE - 1473)) | (1 << (PlSqlParser.SERIALLY_REUSABLE - 1473)) | (1 << (PlSqlParser.SERIAL - 1473)) | (1 << (PlSqlParser.SERVERERROR - 1473)) | (1 << (PlSqlParser.SERVICE_NAME_CONVERT - 1473)) | (1 << (PlSqlParser.SERVICES - 1473)))) !== 0) || ((((_la - 1505)) & ~0x1f) == 0 && ((1 << (_la - 1505)) & ((1 << (PlSqlParser.SESSION_CACHED_CURSORS - 1505)) | (1 << (PlSqlParser.SESSION - 1505)) | (1 << (PlSqlParser.SESSIONS_PER_USER - 1505)) | (1 << (PlSqlParser.SESSIONTIMEZONE - 1505)) | (1 << (PlSqlParser.SESSIONTZNAME - 1505)) | (1 << (PlSqlParser.SET - 1505)) | (1 << (PlSqlParser.SETS - 1505)) | (1 << (PlSqlParser.SETTINGS - 1505)) | (1 << (PlSqlParser.SET_TO_JOIN - 1505)) | (1 << (PlSqlParser.SEVERE - 1505)) | (1 << (PlSqlParser.SHARED_POOL - 1505)) | (1 << (PlSqlParser.SHARED - 1505)) | (1 << (PlSqlParser.SHARING - 1505)) | (1 << (PlSqlParser.SHELFLIFE - 1505)) | (1 << (PlSqlParser.SHOW - 1505)) | (1 << (PlSqlParser.SHRINK - 1505)) | (1 << (PlSqlParser.SHUTDOWN - 1505)) | (1 << (PlSqlParser.SIBLINGS - 1505)) | (1 << (PlSqlParser.SID - 1505)) | (1 << (PlSqlParser.SIGNAL_COMPONENT - 1505)) | (1 << (PlSqlParser.SIGNAL_FUNCTION - 1505)) | (1 << (PlSqlParser.SIGN - 1505)) | (1 << (PlSqlParser.SIGNTYPE - 1505)) | (1 << (PlSqlParser.SIMPLE_INTEGER - 1505)) | (1 << (PlSqlParser.SIMPLE - 1505)) | (1 << (PlSqlParser.SINGLE - 1505)) | (1 << (PlSqlParser.SINGLETASK - 1505)) | (1 << (PlSqlParser.SINH - 1505)) | (1 << (PlSqlParser.SIN - 1505)) | (1 << (PlSqlParser.SKIP_EXT_OPTIMIZER - 1505)))) !== 0) || ((((_la - 1537)) & ~0x1f) == 0 && ((1 << (_la - 1537)) & ((1 << (PlSqlParser.SKIP_ - 1537)) | (1 << (PlSqlParser.SKIP_UNQ_UNUSABLE_IDX - 1537)) | (1 << (PlSqlParser.SKIP_UNUSABLE_INDEXES - 1537)) | (1 << (PlSqlParser.SMALLFILE - 1537)) | (1 << (PlSqlParser.SMALLINT - 1537)) | (1 << (PlSqlParser.SNAPSHOT - 1537)) | (1 << (PlSqlParser.SOME - 1537)) | (1 << (PlSqlParser.SORT - 1537)) | (1 << (PlSqlParser.SOUNDEX - 1537)) | (1 << (PlSqlParser.SOURCE_FILE_DIRECTORY - 1537)) | (1 << (PlSqlParser.SOURCE_FILE_NAME_CONVERT - 1537)) | (1 << (PlSqlParser.SOURCE - 1537)) | (1 << (PlSqlParser.SPACE_KEYWORD - 1537)) | (1 << (PlSqlParser.SPECIFICATION - 1537)) | (1 << (PlSqlParser.SPFILE - 1537)) | (1 << (PlSqlParser.SPLIT - 1537)) | (1 << (PlSqlParser.SPREADSHEET - 1537)) | (1 << (PlSqlParser.SQLDATA - 1537)) | (1 << (PlSqlParser.SQLERROR - 1537)) | (1 << (PlSqlParser.SQLLDR - 1537)) | (1 << (PlSqlParser.SQL - 1537)) | (1 << (PlSqlParser.SQL_TRACE - 1537)) | (1 << (PlSqlParser.SQL_TRANSLATION_PROFILE - 1537)) | (1 << (PlSqlParser.SQRT - 1537)) | (1 << (PlSqlParser.STALE - 1537)) | (1 << (PlSqlParser.STANDALONE - 1537)) | (1 << (PlSqlParser.STANDARD_HASH - 1537)) | (1 << (PlSqlParser.STANDBY_MAX_DATA_DELAY - 1537)) | (1 << (PlSqlParser.STANDBYS - 1537)) | (1 << (PlSqlParser.STANDBY - 1537)) | (1 << (PlSqlParser.STAR - 1537)) | (1 << (PlSqlParser.STAR_TRANSFORMATION - 1537)))) !== 0) || ((((_la - 1570)) & ~0x1f) == 0 && ((1 << (_la - 1570)) & ((1 << (PlSqlParser.STARTUP - 1570)) | (1 << (PlSqlParser.STATEMENT_ID - 1570)) | (1 << (PlSqlParser.STATEMENT_QUEUING - 1570)) | (1 << (PlSqlParser.STATEMENTS - 1570)) | (1 << (PlSqlParser.STATEMENT - 1570)) | (1 << (PlSqlParser.STATE - 1570)) | (1 << (PlSqlParser.STATIC - 1570)) | (1 << (PlSqlParser.STATISTICS - 1570)) | (1 << (PlSqlParser.STATS_BINOMIAL_TEST - 1570)) | (1 << (PlSqlParser.STATS_CROSSTAB - 1570)) | (1 << (PlSqlParser.STATS_F_TEST - 1570)) | (1 << (PlSqlParser.STATS_KS_TEST - 1570)) | (1 << (PlSqlParser.STATS_MODE - 1570)) | (1 << (PlSqlParser.STATS_MW_TEST - 1570)) | (1 << (PlSqlParser.STATS_ONE_WAY_ANOVA - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_INDEP - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_INDEPU - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_ONE - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_PAIRED - 1570)) | (1 << (PlSqlParser.STATS_WSR_TEST - 1570)) | (1 << (PlSqlParser.STDDEV_POP - 1570)) | (1 << (PlSqlParser.STDDEV_SAMP - 1570)) | (1 << (PlSqlParser.STOP - 1570)) | (1 << (PlSqlParser.STORAGE - 1570)) | (1 << (PlSqlParser.STORE - 1570)) | (1 << (PlSqlParser.STREAMS - 1570)) | (1 << (PlSqlParser.STREAM - 1570)) | (1 << (PlSqlParser.STRICT - 1570)) | (1 << (PlSqlParser.STRING - 1570)) | (1 << (PlSqlParser.STRIPE_COLUMNS - 1570)) | (1 << (PlSqlParser.STRIPE_WIDTH - 1570)) | (1 << (PlSqlParser.STRIP - 1570)))) !== 0) || ((((_la - 1602)) & ~0x1f) == 0 && ((1 << (_la - 1602)) & ((1 << (PlSqlParser.STRUCTURE - 1602)) | (1 << (PlSqlParser.SUBMULTISET - 1602)) | (1 << (PlSqlParser.SUBPARTITION_REL - 1602)) | (1 << (PlSqlParser.SUBPARTITIONS - 1602)) | (1 << (PlSqlParser.SUBPARTITION - 1602)) | (1 << (PlSqlParser.SUBQUERIES - 1602)) | (1 << (PlSqlParser.SUBQUERY_PRUNING - 1602)) | (1 << (PlSqlParser.SUBSCRIBE - 1602)) | (1 << (PlSqlParser.SUBSET - 1602)) | (1 << (PlSqlParser.SUBSTITUTABLE - 1602)) | (1 << (PlSqlParser.SUBSTR2 - 1602)) | (1 << (PlSqlParser.SUBSTR4 - 1602)) | (1 << (PlSqlParser.SUBSTRB - 1602)) | (1 << (PlSqlParser.SUBSTRC - 1602)) | (1 << (PlSqlParser.SUBTYPE - 1602)) | (1 << (PlSqlParser.SUCCESSFUL - 1602)) | (1 << (PlSqlParser.SUCCESS - 1602)) | (1 << (PlSqlParser.SUMMARY - 1602)) | (1 << (PlSqlParser.SUPPLEMENTAL - 1602)) | (1 << (PlSqlParser.SUSPEND - 1602)) | (1 << (PlSqlParser.SWAP_JOIN_INPUTS - 1602)) | (1 << (PlSqlParser.SWITCHOVER - 1602)) | (1 << (PlSqlParser.SWITCH - 1602)) | (1 << (PlSqlParser.SYNCHRONOUS - 1602)) | (1 << (PlSqlParser.SYNC - 1602)) | (1 << (PlSqlParser.SYSASM - 1602)) | (1 << (PlSqlParser.SYS_AUDIT - 1602)) | (1 << (PlSqlParser.SYSAUX - 1602)) | (1 << (PlSqlParser.SYSBACKUP - 1602)) | (1 << (PlSqlParser.SYS_CHECKACL - 1602)) | (1 << (PlSqlParser.SYS_CHECK_PRIVILEGE - 1602)))) !== 0) || ((((_la - 1634)) & ~0x1f) == 0 && ((1 << (_la - 1634)) & ((1 << (PlSqlParser.SYS_CONNECT_BY_PATH - 1634)) | (1 << (PlSqlParser.SYS_CONTEXT - 1634)) | (1 << (PlSqlParser.SYSDATE - 1634)) | (1 << (PlSqlParser.SYSDBA - 1634)) | (1 << (PlSqlParser.SYS_DBURIGEN - 1634)) | (1 << (PlSqlParser.SYSDG - 1634)) | (1 << (PlSqlParser.SYS_DL_CURSOR - 1634)) | (1 << (PlSqlParser.SYS_DM_RXFORM_CHR - 1634)) | (1 << (PlSqlParser.SYS_DM_RXFORM_NUM - 1634)) | (1 << (PlSqlParser.SYS_DOM_COMPARE - 1634)) | (1 << (PlSqlParser.SYS_DST_PRIM2SEC - 1634)) | (1 << (PlSqlParser.SYS_DST_SEC2PRIM - 1634)) | (1 << (PlSqlParser.SYS_ET_BFILE_TO_RAW - 1634)) | (1 << (PlSqlParser.SYS_ET_BLOB_TO_IMAGE - 1634)) | (1 << (PlSqlParser.SYS_ET_IMAGE_TO_BLOB - 1634)) | (1 << (PlSqlParser.SYS_ET_RAW_TO_BFILE - 1634)) | (1 << (PlSqlParser.SYS_EXTPDTXT - 1634)) | (1 << (PlSqlParser.SYS_EXTRACT_UTC - 1634)) | (1 << (PlSqlParser.SYS_FBT_INSDEL - 1634)) | (1 << (PlSqlParser.SYS_FILTER_ACLS - 1634)) | (1 << (PlSqlParser.SYS_FNMATCHES - 1634)) | (1 << (PlSqlParser.SYS_FNREPLACE - 1634)) | (1 << (PlSqlParser.SYS_GET_ACLIDS - 1634)) | (1 << (PlSqlParser.SYS_GET_COL_ACLIDS - 1634)) | (1 << (PlSqlParser.SYS_GET_PRIVILEGES - 1634)) | (1 << (PlSqlParser.SYS_GETTOKENID - 1634)) | (1 << (PlSqlParser.SYS_GETXTIVAL - 1634)) | (1 << (PlSqlParser.SYS_GUID - 1634)) | (1 << (PlSqlParser.SYSGUID - 1634)) | (1 << (PlSqlParser.SYSKM - 1634)) | (1 << (PlSqlParser.SYS_MAKE_XMLNODEID - 1634)) | (1 << (PlSqlParser.SYS_MAKEXML - 1634)))) !== 0) || ((((_la - 1666)) & ~0x1f) == 0 && ((1 << (_la - 1666)) & ((1 << (PlSqlParser.SYS_MKXMLATTR - 1666)) | (1 << (PlSqlParser.SYS_MKXTI - 1666)) | (1 << (PlSqlParser.SYSOBJ - 1666)) | (1 << (PlSqlParser.SYS_OP_ADT2BIN - 1666)) | (1 << (PlSqlParser.SYS_OP_ADTCONS - 1666)) | (1 << (PlSqlParser.SYS_OP_ALSCRVAL - 1666)) | (1 << (PlSqlParser.SYS_OP_ATG - 1666)) | (1 << (PlSqlParser.SYS_OP_BIN2ADT - 1666)) | (1 << (PlSqlParser.SYS_OP_BITVEC - 1666)) | (1 << (PlSqlParser.SYS_OP_BL2R - 1666)) | (1 << (PlSqlParser.SYS_OP_BLOOM_FILTER_LIST - 1666)) | (1 << (PlSqlParser.SYS_OP_BLOOM_FILTER - 1666)) | (1 << (PlSqlParser.SYS_OP_C2C - 1666)) | (1 << (PlSqlParser.SYS_OP_CAST - 1666)) | (1 << (PlSqlParser.SYS_OP_CEG - 1666)) | (1 << (PlSqlParser.SYS_OP_CL2C - 1666)) | (1 << (PlSqlParser.SYS_OP_COMBINED_HASH - 1666)) | (1 << (PlSqlParser.SYS_OP_COMP - 1666)) | (1 << (PlSqlParser.SYS_OP_CONVERT - 1666)) | (1 << (PlSqlParser.SYS_OP_COUNTCHG - 1666)) | (1 << (PlSqlParser.SYS_OP_CSCONV - 1666)) | (1 << (PlSqlParser.SYS_OP_CSCONVTEST - 1666)) | (1 << (PlSqlParser.SYS_OP_CSR - 1666)) | (1 << (PlSqlParser.SYS_OP_CSX_PATCH - 1666)) | (1 << (PlSqlParser.SYS_OP_CYCLED_SEQ - 1666)) | (1 << (PlSqlParser.SYS_OP_DECOMP - 1666)) | (1 << (PlSqlParser.SYS_OP_DESCEND - 1666)) | (1 << (PlSqlParser.SYS_OP_DISTINCT - 1666)) | (1 << (PlSqlParser.SYS_OP_DRA - 1666)) | (1 << (PlSqlParser.SYS_OP_DUMP - 1666)) | (1 << (PlSqlParser.SYS_OP_DV_CHECK - 1666)) | (1 << (PlSqlParser.SYS_OP_ENFORCE_NOT_NULL - 1666)))) !== 0) || ((((_la - 1698)) & ~0x1f) == 0 && ((1 << (_la - 1698)) & ((1 << (PlSqlParser.SYSOPER - 1698)) | (1 << (PlSqlParser.SYS_OP_EXTRACT - 1698)) | (1 << (PlSqlParser.SYS_OP_GROUPING - 1698)) | (1 << (PlSqlParser.SYS_OP_GUID - 1698)) | (1 << (PlSqlParser.SYS_OP_HASH - 1698)) | (1 << (PlSqlParser.SYS_OP_IIX - 1698)) | (1 << (PlSqlParser.SYS_OP_ITR - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_CREATE - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_FILTER_LIST - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_FILTER - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_SUCCEEDED - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_USE - 1698)) | (1 << (PlSqlParser.SYS_OP_LBID - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2BLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2CLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2ID - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2NCLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2TYP - 1698)) | (1 << (PlSqlParser.SYS_OP_LSVI - 1698)) | (1 << (PlSqlParser.SYS_OP_LVL - 1698)) | (1 << (PlSqlParser.SYS_OP_MAKEOID - 1698)) | (1 << (PlSqlParser.SYS_OP_MAP_NONNULL - 1698)) | (1 << (PlSqlParser.SYS_OP_MSR - 1698)) | (1 << (PlSqlParser.SYS_OP_NICOMBINE - 1698)) | (1 << (PlSqlParser.SYS_OP_NIEXTRACT - 1698)) | (1 << (PlSqlParser.SYS_OP_NII - 1698)) | (1 << (PlSqlParser.SYS_OP_NIX - 1698)) | (1 << (PlSqlParser.SYS_OP_NOEXPAND - 1698)) | (1 << (PlSqlParser.SYS_OP_NTCIMG - 1698)) | (1 << (PlSqlParser.SYS_OP_NUMTORAW - 1698)) | (1 << (PlSqlParser.SYS_OP_OIDVALUE - 1698)) | (1 << (PlSqlParser.SYS_OP_OPNSIZE - 1698)))) !== 0) || ((((_la - 1730)) & ~0x1f) == 0 && ((1 << (_la - 1730)) & ((1 << (PlSqlParser.SYS_OP_PAR_1 - 1730)) | (1 << (PlSqlParser.SYS_OP_PARGID_1 - 1730)) | (1 << (PlSqlParser.SYS_OP_PARGID - 1730)) | (1 << (PlSqlParser.SYS_OP_PAR - 1730)) | (1 << (PlSqlParser.SYS_OP_PART_ID - 1730)) | (1 << (PlSqlParser.SYS_OP_PIVOT - 1730)) | (1 << (PlSqlParser.SYS_OP_R2O - 1730)) | (1 << (PlSqlParser.SYS_OP_RAWTONUM - 1730)) | (1 << (PlSqlParser.SYS_OP_RDTM - 1730)) | (1 << (PlSqlParser.SYS_OP_REF - 1730)) | (1 << (PlSqlParser.SYS_OP_RMTD - 1730)) | (1 << (PlSqlParser.SYS_OP_ROWIDTOOBJ - 1730)) | (1 << (PlSqlParser.SYS_OP_RPB - 1730)) | (1 << (PlSqlParser.SYS_OPTLOBPRBSC - 1730)) | (1 << (PlSqlParser.SYS_OP_TOSETID - 1730)) | (1 << (PlSqlParser.SYS_OP_TPR - 1730)) | (1 << (PlSqlParser.SYS_OP_TRTB - 1730)) | (1 << (PlSqlParser.SYS_OPTXICMP - 1730)) | (1 << (PlSqlParser.SYS_OPTXQCASTASNQ - 1730)) | (1 << (PlSqlParser.SYS_OP_UNDESCEND - 1730)) | (1 << (PlSqlParser.SYS_OP_VECAND - 1730)) | (1 << (PlSqlParser.SYS_OP_VECBIT - 1730)) | (1 << (PlSqlParser.SYS_OP_VECOR - 1730)) | (1 << (PlSqlParser.SYS_OP_VECXOR - 1730)) | (1 << (PlSqlParser.SYS_OP_VERSION - 1730)) | (1 << (PlSqlParser.SYS_OP_VREF - 1730)) | (1 << (PlSqlParser.SYS_OP_VVD - 1730)) | (1 << (PlSqlParser.SYS_OP_XMLCONS_FOR_CSX - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHATG - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHIDX - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHOP - 1730)) | (1 << (PlSqlParser.SYS_OP_XTXT2SQLT - 1730)))) !== 0) || ((((_la - 1762)) & ~0x1f) == 0 && ((1 << (_la - 1762)) & ((1 << (PlSqlParser.SYS_OP_ZONE_ID - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_DEPTH - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_MAXCHILD - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_PARENT - 1762)) | (1 << (PlSqlParser.SYS_PARALLEL_TXN - 1762)) | (1 << (PlSqlParser.SYS_PATHID_IS_ATTR - 1762)) | (1 << (PlSqlParser.SYS_PATHID_IS_NMSPC - 1762)) | (1 << (PlSqlParser.SYS_PATHID_LASTNAME - 1762)) | (1 << (PlSqlParser.SYS_PATHID_LASTNMSPC - 1762)) | (1 << (PlSqlParser.SYS_PATH_REVERSE - 1762)) | (1 << (PlSqlParser.SYS_PXQEXTRACT - 1762)) | (1 << (PlSqlParser.SYS_RAW_TO_XSID - 1762)) | (1 << (PlSqlParser.SYS_RID_ORDER - 1762)) | (1 << (PlSqlParser.SYS_ROW_DELTA - 1762)) | (1 << (PlSqlParser.SYS_SC_2_XMLT - 1762)) | (1 << (PlSqlParser.SYS_SYNRCIREDO - 1762)) | (1 << (PlSqlParser.SYSTEM_DEFINED - 1762)) | (1 << (PlSqlParser.SYSTEM - 1762)) | (1 << (PlSqlParser.SYSTIMESTAMP - 1762)) | (1 << (PlSqlParser.SYS_TYPEID - 1762)) | (1 << (PlSqlParser.SYS_UMAKEXML - 1762)) | (1 << (PlSqlParser.SYS_XMLANALYZE - 1762)) | (1 << (PlSqlParser.SYS_XMLCONTAINS - 1762)) | (1 << (PlSqlParser.SYS_XMLCONV - 1762)) | (1 << (PlSqlParser.SYS_XMLEXNSURI - 1762)) | (1 << (PlSqlParser.SYS_XMLGEN - 1762)) | (1 << (PlSqlParser.SYS_XMLI_LOC_ISNODE - 1762)) | (1 << (PlSqlParser.SYS_XMLI_LOC_ISTEXT - 1762)) | (1 << (PlSqlParser.SYS_XMLINSTR - 1762)) | (1 << (PlSqlParser.SYS_XMLLOCATOR_GETSVAL - 1762)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETCID - 1762)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETLOCATOR - 1762)))) !== 0) || ((((_la - 1794)) & ~0x1f) == 0 && ((1 << (_la - 1794)) & ((1 << (PlSqlParser.SYS_XMLNODEID_GETOKEY - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETPATHID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETPTRID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETRID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETSVAL - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETTID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID - 1794)) | (1 << (PlSqlParser.SYS_XMLT_2_SC - 1794)) | (1 << (PlSqlParser.SYS_XMLTRANSLATE - 1794)) | (1 << (PlSqlParser.SYS_XMLTYPE2SQL - 1794)) | (1 << (PlSqlParser.SYS_XQ_ASQLCNV - 1794)) | (1 << (PlSqlParser.SYS_XQ_ATOMCNVCHK - 1794)) | (1 << (PlSqlParser.SYS_XQBASEURI - 1794)) | (1 << (PlSqlParser.SYS_XQCASTABLEERRH - 1794)) | (1 << (PlSqlParser.SYS_XQCODEP2STR - 1794)) | (1 << (PlSqlParser.SYS_XQCODEPEQ - 1794)) | (1 << (PlSqlParser.SYS_XQCON2SEQ - 1794)) | (1 << (PlSqlParser.SYS_XQCONCAT - 1794)) | (1 << (PlSqlParser.SYS_XQDELETE - 1794)) | (1 << (PlSqlParser.SYS_XQDFLTCOLATION - 1794)) | (1 << (PlSqlParser.SYS_XQDOC - 1794)) | (1 << (PlSqlParser.SYS_XQDOCURI - 1794)) | (1 << (PlSqlParser.SYS_XQDURDIV - 1794)) | (1 << (PlSqlParser.SYS_XQED4URI - 1794)) | (1 << (PlSqlParser.SYS_XQENDSWITH - 1794)) | (1 << (PlSqlParser.SYS_XQERRH - 1794)) | (1 << (PlSqlParser.SYS_XQERR - 1794)) | (1 << (PlSqlParser.SYS_XQESHTMLURI - 1794)) | (1 << (PlSqlParser.SYS_XQEXLOBVAL - 1794)) | (1 << (PlSqlParser.SYS_XQEXSTWRP - 1794)) | (1 << (PlSqlParser.SYS_XQEXTRACT - 1794)) | (1 << (PlSqlParser.SYS_XQEXTRREF - 1794)))) !== 0) || ((((_la - 1826)) & ~0x1f) == 0 && ((1 << (_la - 1826)) & ((1 << (PlSqlParser.SYS_XQEXVAL - 1826)) | (1 << (PlSqlParser.SYS_XQFB2STR - 1826)) | (1 << (PlSqlParser.SYS_XQFNBOOL - 1826)) | (1 << (PlSqlParser.SYS_XQFNCMP - 1826)) | (1 << (PlSqlParser.SYS_XQFNDATIM - 1826)) | (1 << (PlSqlParser.SYS_XQFNLNAME - 1826)) | (1 << (PlSqlParser.SYS_XQFNNM - 1826)) | (1 << (PlSqlParser.SYS_XQFNNSURI - 1826)) | (1 << (PlSqlParser.SYS_XQFNPREDTRUTH - 1826)) | (1 << (PlSqlParser.SYS_XQFNQNM - 1826)) | (1 << (PlSqlParser.SYS_XQFNROOT - 1826)) | (1 << (PlSqlParser.SYS_XQFORMATNUM - 1826)) | (1 << (PlSqlParser.SYS_XQFTCONTAIN - 1826)) | (1 << (PlSqlParser.SYS_XQFUNCR - 1826)) | (1 << (PlSqlParser.SYS_XQGETCONTENT - 1826)) | (1 << (PlSqlParser.SYS_XQINDXOF - 1826)) | (1 << (PlSqlParser.SYS_XQINSERT - 1826)) | (1 << (PlSqlParser.SYS_XQINSPFX - 1826)) | (1 << (PlSqlParser.SYS_XQIRI2URI - 1826)) | (1 << (PlSqlParser.SYS_XQLANG - 1826)) | (1 << (PlSqlParser.SYS_XQLLNMFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQMKNODEREF - 1826)) | (1 << (PlSqlParser.SYS_XQNILLED - 1826)) | (1 << (PlSqlParser.SYS_XQNODENAME - 1826)) | (1 << (PlSqlParser.SYS_XQNORMSPACE - 1826)) | (1 << (PlSqlParser.SYS_XQNORMUCODE - 1826)) | (1 << (PlSqlParser.SYS_XQ_NRNG - 1826)) | (1 << (PlSqlParser.SYS_XQNSP4PFX - 1826)) | (1 << (PlSqlParser.SYS_XQNSPFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQPFXFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQ_PKSQL2XML - 1826)) | (1 << (PlSqlParser.SYS_XQPOLYABS - 1826)))) !== 0) || ((((_la - 1858)) & ~0x1f) == 0 && ((1 << (_la - 1858)) & ((1 << (PlSqlParser.SYS_XQPOLYADD - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCEL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCSTBL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCST - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYDIV - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYFLR - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYMOD - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYMUL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYRND - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYSQRT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYSUB - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYUMUS - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYUPLS - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVEQ - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVGE - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVGT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVLE - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVLT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVNE - 1858)) | (1 << (PlSqlParser.SYS_XQREF2VAL - 1858)) | (1 << (PlSqlParser.SYS_XQRENAME - 1858)) | (1 << (PlSqlParser.SYS_XQREPLACE - 1858)) | (1 << (PlSqlParser.SYS_XQRESVURI - 1858)) | (1 << (PlSqlParser.SYS_XQRNDHALF2EVN - 1858)) | (1 << (PlSqlParser.SYS_XQRSLVQNM - 1858)) | (1 << (PlSqlParser.SYS_XQRYENVPGET - 1858)) | (1 << (PlSqlParser.SYS_XQRYVARGET - 1858)) | (1 << (PlSqlParser.SYS_XQRYWRP - 1858)) | (1 << (PlSqlParser.SYS_XQSEQ2CON4XC - 1858)) | (1 << (PlSqlParser.SYS_XQSEQ2CON - 1858)) | (1 << (PlSqlParser.SYS_XQSEQDEEPEQ - 1858)) | (1 << (PlSqlParser.SYS_XQSEQINSB - 1858)))) !== 0) || ((((_la - 1890)) & ~0x1f) == 0 && ((1 << (_la - 1890)) & ((1 << (PlSqlParser.SYS_XQSEQRM - 1890)) | (1 << (PlSqlParser.SYS_XQSEQRVS - 1890)) | (1 << (PlSqlParser.SYS_XQSEQSUB - 1890)) | (1 << (PlSqlParser.SYS_XQSEQTYPMATCH - 1890)) | (1 << (PlSqlParser.SYS_XQSTARTSWITH - 1890)) | (1 << (PlSqlParser.SYS_XQSTATBURI - 1890)) | (1 << (PlSqlParser.SYS_XQSTR2CODEP - 1890)) | (1 << (PlSqlParser.SYS_XQSTRJOIN - 1890)) | (1 << (PlSqlParser.SYS_XQSUBSTRAFT - 1890)) | (1 << (PlSqlParser.SYS_XQSUBSTRBEF - 1890)) | (1 << (PlSqlParser.SYS_XQTOKENIZE - 1890)) | (1 << (PlSqlParser.SYS_XQTREATAS - 1890)) | (1 << (PlSqlParser.SYS_XQ_UPKXML2SQL - 1890)) | (1 << (PlSqlParser.SYS_XQXFORM - 1890)) | (1 << (PlSqlParser.SYS_XSID_TO_RAW - 1890)) | (1 << (PlSqlParser.SYS_ZMAP_FILTER - 1890)) | (1 << (PlSqlParser.SYS_ZMAP_REFRESH - 1890)) | (1 << (PlSqlParser.TABLE_LOOKUP_BY_NL - 1890)) | (1 << (PlSqlParser.TABLESPACE_NO - 1890)) | (1 << (PlSqlParser.TABLESPACE - 1890)) | (1 << (PlSqlParser.TABLES - 1890)) | (1 << (PlSqlParser.TABLE_STATS - 1890)) | (1 << (PlSqlParser.TABLE - 1890)) | (1 << (PlSqlParser.TABNO - 1890)) | (1 << (PlSqlParser.TAG - 1890)) | (1 << (PlSqlParser.TANH - 1890)) | (1 << (PlSqlParser.TAN - 1890)) | (1 << (PlSqlParser.TBLORIDXPARTNUM - 1890)) | (1 << (PlSqlParser.TEMPFILE - 1890)) | (1 << (PlSqlParser.TEMPLATE - 1890)) | (1 << (PlSqlParser.TEMPORARY - 1890)) | (1 << (PlSqlParser.TEMP_TABLE - 1890)))) !== 0) || ((((_la - 1922)) & ~0x1f) == 0 && ((1 << (_la - 1922)) & ((1 << (PlSqlParser.TEST - 1922)) | (1 << (PlSqlParser.TEXT - 1922)) | (1 << (PlSqlParser.THAN - 1922)) | (1 << (PlSqlParser.THEN - 1922)) | (1 << (PlSqlParser.THE - 1922)) | (1 << (PlSqlParser.THREAD - 1922)) | (1 << (PlSqlParser.THROUGH - 1922)) | (1 << (PlSqlParser.TIER - 1922)) | (1 << (PlSqlParser.TIES - 1922)) | (1 << (PlSqlParser.TIMEOUT - 1922)) | (1 << (PlSqlParser.TIMESTAMP_LTZ_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMESTAMP - 1922)) | (1 << (PlSqlParser.TIMESTAMP_TZ_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMESTAMP_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMES - 1922)) | (1 << (PlSqlParser.TIME - 1922)) | (1 << (PlSqlParser.TIMEZONE_ABBR - 1922)) | (1 << (PlSqlParser.TIMEZONE_HOUR - 1922)) | (1 << (PlSqlParser.TIMEZONE_MINUTE - 1922)) | (1 << (PlSqlParser.TIMEZONE_OFFSET - 1922)) | (1 << (PlSqlParser.TIMEZONE_REGION - 1922)) | (1 << (PlSqlParser.TIME_ZONE - 1922)) | (1 << (PlSqlParser.TIV_GB - 1922)) | (1 << (PlSqlParser.TIV_SSF - 1922)) | (1 << (PlSqlParser.TO_ACLID - 1922)) | (1 << (PlSqlParser.TO_BINARY_DOUBLE - 1922)) | (1 << (PlSqlParser.TO_BINARY_FLOAT - 1922)) | (1 << (PlSqlParser.TO_BLOB - 1922)) | (1 << (PlSqlParser.TO_CLOB - 1922)) | (1 << (PlSqlParser.TO_DSINTERVAL - 1922)) | (1 << (PlSqlParser.TO_LOB - 1922)))) !== 0) || ((((_la - 1954)) & ~0x1f) == 0 && ((1 << (_la - 1954)) & ((1 << (PlSqlParser.TO_MULTI_BYTE - 1954)) | (1 << (PlSqlParser.TO_NCHAR - 1954)) | (1 << (PlSqlParser.TO_NCLOB - 1954)) | (1 << (PlSqlParser.TO_NUMBER - 1954)) | (1 << (PlSqlParser.TOPLEVEL - 1954)) | (1 << (PlSqlParser.TO_SINGLE_BYTE - 1954)) | (1 << (PlSqlParser.TO_TIMESTAMP - 1954)) | (1 << (PlSqlParser.TO_TIMESTAMP_TZ - 1954)) | (1 << (PlSqlParser.TO_TIME - 1954)) | (1 << (PlSqlParser.TO_TIME_TZ - 1954)) | (1 << (PlSqlParser.TO_YMINTERVAL - 1954)) | (1 << (PlSqlParser.TRACE - 1954)) | (1 << (PlSqlParser.TRACING - 1954)) | (1 << (PlSqlParser.TRACKING - 1954)) | (1 << (PlSqlParser.TRAILING - 1954)) | (1 << (PlSqlParser.TRANSACTION - 1954)) | (1 << (PlSqlParser.TRANSFORM_DISTINCT_AGG - 1954)) | (1 << (PlSqlParser.TRANSITIONAL - 1954)) | (1 << (PlSqlParser.TRANSITION - 1954)) | (1 << (PlSqlParser.TRANSLATE - 1954)) | (1 << (PlSqlParser.TRANSLATION - 1954)) | (1 << (PlSqlParser.TREAT - 1954)) | (1 << (PlSqlParser.TRIGGERS - 1954)) | (1 << (PlSqlParser.TRIGGER - 1954)) | (1 << (PlSqlParser.TRUE - 1954)) | (1 << (PlSqlParser.TRUNCATE - 1954)) | (1 << (PlSqlParser.TRUNC - 1954)) | (1 << (PlSqlParser.TRUSTED - 1954)) | (1 << (PlSqlParser.TRUST - 1954)) | (1 << (PlSqlParser.TUNING - 1954)) | (1 << (PlSqlParser.TX - 1954)))) !== 0) || ((((_la - 1986)) & ~0x1f) == 0 && ((1 << (_la - 1986)) & ((1 << (PlSqlParser.TYPES - 1986)) | (1 << (PlSqlParser.TYPE - 1986)) | (1 << (PlSqlParser.TZ_OFFSET - 1986)) | (1 << (PlSqlParser.UB2 - 1986)) | (1 << (PlSqlParser.UBA - 1986)) | (1 << (PlSqlParser.UCS2 - 1986)) | (1 << (PlSqlParser.UID - 1986)) | (1 << (PlSqlParser.UNARCHIVED - 1986)) | (1 << (PlSqlParser.UNBOUNDED - 1986)) | (1 << (PlSqlParser.UNBOUND - 1986)) | (1 << (PlSqlParser.UNCONDITIONAL - 1986)) | (1 << (PlSqlParser.UNDER - 1986)) | (1 << (PlSqlParser.UNDO - 1986)) | (1 << (PlSqlParser.UNDROP - 1986)) | (1 << (PlSqlParser.UNIFORM - 1986)) | (1 << (PlSqlParser.UNISTR - 1986)) | (1 << (PlSqlParser.UNLIMITED - 1986)) | (1 << (PlSqlParser.UNLOAD - 1986)) | (1 << (PlSqlParser.UNLOCK - 1986)) | (1 << (PlSqlParser.UNMATCHED - 1986)) | (1 << (PlSqlParser.UNNEST_INNERJ_DISTINCT_VIEW - 1986)) | (1 << (PlSqlParser.UNNEST_NOSEMIJ_NODISTINCTVIEW - 1986)) | (1 << (PlSqlParser.UNNEST_SEMIJ_VIEW - 1986)) | (1 << (PlSqlParser.UNNEST - 1986)) | (1 << (PlSqlParser.UNPACKED - 1986)) | (1 << (PlSqlParser.UNPIVOT - 1986)) | (1 << (PlSqlParser.UNPLUG - 1986)) | (1 << (PlSqlParser.UNPROTECTED - 1986)) | (1 << (PlSqlParser.UNQUIESCE - 1986)) | (1 << (PlSqlParser.UNRECOVERABLE - 1986)))) !== 0) || ((((_la - 2018)) & ~0x1f) == 0 && ((1 << (_la - 2018)) & ((1 << (PlSqlParser.UNRESTRICTED - 2018)) | (1 << (PlSqlParser.UNSUBSCRIBE - 2018)) | (1 << (PlSqlParser.UNTIL - 2018)) | (1 << (PlSqlParser.UNUSABLE - 2018)) | (1 << (PlSqlParser.UNUSED - 2018)) | (1 << (PlSqlParser.UPDATABLE - 2018)) | (1 << (PlSqlParser.UPDATED - 2018)) | (1 << (PlSqlParser.UPDATEXML - 2018)) | (1 << (PlSqlParser.UPD_INDEXES - 2018)) | (1 << (PlSqlParser.UPD_JOININDEX - 2018)) | (1 << (PlSqlParser.UPGRADE - 2018)) | (1 << (PlSqlParser.UPPER - 2018)) | (1 << (PlSqlParser.UPSERT - 2018)) | (1 << (PlSqlParser.UROWID - 2018)) | (1 << (PlSqlParser.USABLE - 2018)) | (1 << (PlSqlParser.USAGE - 2018)) | (1 << (PlSqlParser.USE_ANTI - 2018)) | (1 << (PlSqlParser.USE_CONCAT - 2018)) | (1 << (PlSqlParser.USE_CUBE - 2018)) | (1 << (PlSqlParser.USE_HASH_AGGREGATION - 2018)) | (1 << (PlSqlParser.USE_HASH_GBY_FOR_PUSHDOWN - 2018)) | (1 << (PlSqlParser.USE_HASH - 2018)) | (1 << (PlSqlParser.USE_HIDDEN_PARTITIONS - 2018)) | (1 << (PlSqlParser.USE_INVISIBLE_INDEXES - 2018)) | (1 << (PlSqlParser.USE_MERGE_CARTESIAN - 2018)) | (1 << (PlSqlParser.USE_MERGE - 2018)) | (1 << (PlSqlParser.USE_NL - 2018)) | (1 << (PlSqlParser.USE_NL_WITH_INDEX - 2018)) | (1 << (PlSqlParser.USE_PRIVATE_OUTLINES - 2018)) | (1 << (PlSqlParser.USER_DATA - 2018)) | (1 << (PlSqlParser.USER_DEFINED - 2018)))) !== 0) || ((((_la - 2050)) & ~0x1f) == 0 && ((1 << (_la - 2050)) & ((1 << (PlSqlParser.USERENV - 2050)) | (1 << (PlSqlParser.USERGROUP - 2050)) | (1 << (PlSqlParser.USER_RECYCLEBIN - 2050)) | (1 << (PlSqlParser.USERS - 2050)) | (1 << (PlSqlParser.USER_TABLESPACES - 2050)) | (1 << (PlSqlParser.USER - 2050)) | (1 << (PlSqlParser.USE_SEMI - 2050)) | (1 << (PlSqlParser.USE_STORED_OUTLINES - 2050)) | (1 << (PlSqlParser.USE_TTT_FOR_GSETS - 2050)) | (1 << (PlSqlParser.USE - 2050)) | (1 << (PlSqlParser.USE_VECTOR_AGGREGATION - 2050)) | (1 << (PlSqlParser.USE_WEAK_NAME_RESL - 2050)) | (1 << (PlSqlParser.USING_NO_EXPAND - 2050)) | (1 << (PlSqlParser.USING - 2050)) | (1 << (PlSqlParser.UTF16BE - 2050)) | (1 << (PlSqlParser.UTF16LE - 2050)) | (1 << (PlSqlParser.UTF32 - 2050)) | (1 << (PlSqlParser.UTF8 - 2050)) | (1 << (PlSqlParser.V1 - 2050)) | (1 << (PlSqlParser.V2 - 2050)) | (1 << (PlSqlParser.VALIDATE - 2050)) | (1 << (PlSqlParser.VALIDATION - 2050)) | (1 << (PlSqlParser.VALID_TIME_END - 2050)) | (1 << (PlSqlParser.VALUE - 2050)) | (1 << (PlSqlParser.VARCHAR2 - 2050)) | (1 << (PlSqlParser.VARCHAR - 2050)) | (1 << (PlSqlParser.VARIABLE - 2050)) | (1 << (PlSqlParser.VAR_POP - 2050)) | (1 << (PlSqlParser.VARRAYS - 2050)) | (1 << (PlSqlParser.VARRAY - 2050)) | (1 << (PlSqlParser.VAR_SAMP - 2050)))) !== 0) || ((((_la - 2082)) & ~0x1f) == 0 && ((1 << (_la - 2082)) & ((1 << (PlSqlParser.VARYING - 2082)) | (1 << (PlSqlParser.VECTOR_READ_TRACE - 2082)) | (1 << (PlSqlParser.VECTOR_READ - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM_DIMS - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM_FACT - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM - 2082)) | (1 << (PlSqlParser.VERIFIER - 2082)) | (1 << (PlSqlParser.VERIFY - 2082)) | (1 << (PlSqlParser.VERSIONING - 2082)) | (1 << (PlSqlParser.VERSIONS_ENDSCN - 2082)) | (1 << (PlSqlParser.VERSIONS_ENDTIME - 2082)) | (1 << (PlSqlParser.VERSIONS_OPERATION - 2082)) | (1 << (PlSqlParser.VERSIONS_STARTSCN - 2082)) | (1 << (PlSqlParser.VERSIONS_STARTTIME - 2082)) | (1 << (PlSqlParser.VERSIONS - 2082)) | (1 << (PlSqlParser.VERSIONS_XID - 2082)) | (1 << (PlSqlParser.VERSION - 2082)) | (1 << (PlSqlParser.VIOLATION - 2082)) | (1 << (PlSqlParser.VIRTUAL - 2082)) | (1 << (PlSqlParser.VISIBILITY - 2082)) | (1 << (PlSqlParser.VISIBLE - 2082)) | (1 << (PlSqlParser.VOLUME - 2082)) | (1 << (PlSqlParser.VSIZE - 2082)) | (1 << (PlSqlParser.WAIT - 2082)) | (1 << (PlSqlParser.WALLET - 2082)) | (1 << (PlSqlParser.WARNING - 2082)) | (1 << (PlSqlParser.WEEKS - 2082)) | (1 << (PlSqlParser.WEEK - 2082)) | (1 << (PlSqlParser.WELLFORMED - 2082)) | (1 << (PlSqlParser.WHENEVER - 2082)) | (1 << (PlSqlParser.WHEN - 2082)))) !== 0) || ((((_la - 2115)) & ~0x1f) == 0 && ((1 << (_la - 2115)) & ((1 << (PlSqlParser.WHILE - 2115)) | (1 << (PlSqlParser.WHITESPACE - 2115)) | (1 << (PlSqlParser.WIDTH_BUCKET - 2115)) | (1 << (PlSqlParser.WITHIN - 2115)) | (1 << (PlSqlParser.WITHOUT - 2115)) | (1 << (PlSqlParser.WITH_PLSQL - 2115)) | (1 << (PlSqlParser.WORK - 2115)) | (1 << (PlSqlParser.WRAPPED - 2115)) | (1 << (PlSqlParser.WRAPPER - 2115)) | (1 << (PlSqlParser.WRITE - 2115)) | (1 << (PlSqlParser.XDB_FASTPATH_INSERT - 2115)) | (1 << (PlSqlParser.X_DYN_PRUNE - 2115)) | (1 << (PlSqlParser.XID - 2115)) | (1 << (PlSqlParser.XML2OBJECT - 2115)) | (1 << (PlSqlParser.XMLAGG - 2115)) | (1 << (PlSqlParser.XMLATTRIBUTES - 2115)) | (1 << (PlSqlParser.XMLCAST - 2115)) | (1 << (PlSqlParser.XMLCDATA - 2115)) | (1 << (PlSqlParser.XMLCOLATTVAL - 2115)) | (1 << (PlSqlParser.XMLCOMMENT - 2115)) | (1 << (PlSqlParser.XMLCONCAT - 2115)) | (1 << (PlSqlParser.XMLDIFF - 2115)) | (1 << (PlSqlParser.XML_DML_RWT_STMT - 2115)) | (1 << (PlSqlParser.XMLELEMENT - 2115)) | (1 << (PlSqlParser.XMLEXISTS2 - 2115)) | (1 << (PlSqlParser.XMLEXISTS - 2115)) | (1 << (PlSqlParser.XMLFOREST - 2115)) | (1 << (PlSqlParser.XMLINDEX_REWRITE_IN_SELECT - 2115)) | (1 << (PlSqlParser.XMLINDEX_REWRITE - 2115)))) !== 0) || ((((_la - 2147)) & ~0x1f) == 0 && ((1 << (_la - 2147)) & ((1 << (PlSqlParser.XMLINDEX_SEL_IDX_TBL - 2147)) | (1 << (PlSqlParser.XMLISNODE - 2147)) | (1 << (PlSqlParser.XMLISVALID - 2147)) | (1 << (PlSqlParser.XMLNAMESPACES - 2147)) | (1 << (PlSqlParser.XMLPARSE - 2147)) | (1 << (PlSqlParser.XMLPATCH - 2147)) | (1 << (PlSqlParser.XMLPI - 2147)) | (1 << (PlSqlParser.XMLQUERYVAL - 2147)) | (1 << (PlSqlParser.XMLQUERY - 2147)) | (1 << (PlSqlParser.XMLROOT - 2147)) | (1 << (PlSqlParser.XMLSCHEMA - 2147)) | (1 << (PlSqlParser.XMLSERIALIZE - 2147)) | (1 << (PlSqlParser.XMLTABLE - 2147)) | (1 << (PlSqlParser.XMLTRANSFORMBLOB - 2147)) | (1 << (PlSqlParser.XMLTRANSFORM - 2147)) | (1 << (PlSqlParser.XMLTYPE - 2147)) | (1 << (PlSqlParser.XML - 2147)) | (1 << (PlSqlParser.XPATHTABLE - 2147)) | (1 << (PlSqlParser.XS_SYS_CONTEXT - 2147)) | (1 << (PlSqlParser.XS - 2147)) | (1 << (PlSqlParser.YEARS - 2147)) | (1 << (PlSqlParser.YEAR - 2147)) | (1 << (PlSqlParser.YES - 2147)) | (1 << (PlSqlParser.YMINTERVAL_UNCONSTRAINED - 2147)) | (1 << (PlSqlParser.ZONEMAP - 2147)) | (1 << (PlSqlParser.ZONE - 2147)) | (1 << (PlSqlParser.PREDICTION - 2147)) | (1 << (PlSqlParser.PREDICTION_BOUNDS - 2147)) | (1 << (PlSqlParser.PREDICTION_COST - 2147)) | (1 << (PlSqlParser.PREDICTION_DETAILS - 2147)) | (1 << (PlSqlParser.PREDICTION_PROBABILITY - 2147)))) !== 0) || ((((_la - 2179)) & ~0x1f) == 0 && ((1 << (_la - 2179)) & ((1 << (PlSqlParser.PREDICTION_SET - 2179)) | (1 << (PlSqlParser.CUME_DIST - 2179)) | (1 << (PlSqlParser.DENSE_RANK - 2179)) | (1 << (PlSqlParser.LISTAGG - 2179)) | (1 << (PlSqlParser.PERCENT_RANK - 2179)) | (1 << (PlSqlParser.PERCENTILE_CONT - 2179)) | (1 << (PlSqlParser.PERCENTILE_DISC - 2179)) | (1 << (PlSqlParser.RANK - 2179)) | (1 << (PlSqlParser.AVG - 2179)) | (1 << (PlSqlParser.CORR - 2179)) | (1 << (PlSqlParser.COVAR_ - 2179)) | (1 << (PlSqlParser.LAG - 2179)) | (1 << (PlSqlParser.LEAD - 2179)) | (1 << (PlSqlParser.MAX - 2179)) | (1 << (PlSqlParser.MEDIAN - 2179)) | (1 << (PlSqlParser.MIN - 2179)) | (1 << (PlSqlParser.NTILE - 2179)) | (1 << (PlSqlParser.NVL - 2179)) | (1 << (PlSqlParser.RATIO_TO_REPORT - 2179)) | (1 << (PlSqlParser.REGR_ - 2179)) | (1 << (PlSqlParser.ROUND - 2179)) | (1 << (PlSqlParser.ROW_NUMBER - 2179)) | (1 << (PlSqlParser.SUBSTR - 2179)) | (1 << (PlSqlParser.TO_CHAR - 2179)) | (1 << (PlSqlParser.TRIM - 2179)) | (1 << (PlSqlParser.SUM - 2179)) | (1 << (PlSqlParser.STDDEV - 2179)) | (1 << (PlSqlParser.VAR_ - 2179)) | (1 << (PlSqlParser.VARIANCE - 2179)) | (1 << (PlSqlParser.LEAST - 2179)) | (1 << (PlSqlParser.GREATEST - 2179)))) !== 0) || _la===PlSqlParser.TO_DATE || _la===PlSqlParser.PERIOD || _la===PlSqlParser.REGULAR_ID) {
+ this.state = 3424;
+ this.partition_name();
+ this.state = 3436;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.COMPRESS:
+ case PlSqlParser.FILESYSTEM_LIKE_LOGGING:
+ case PlSqlParser.INITRANS:
+ case PlSqlParser.LOGGING:
+ case PlSqlParser.NOCOMPRESS:
+ case PlSqlParser.NOLOGGING:
+ case PlSqlParser.PCTFREE:
+ case PlSqlParser.PCTUSED:
+ case PlSqlParser.STORAGE:
+ case PlSqlParser.TABLESPACE:
+ this.state = 3427;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 3427;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.FILESYSTEM_LIKE_LOGGING:
+ case PlSqlParser.INITRANS:
+ case PlSqlParser.LOGGING:
+ case PlSqlParser.NOLOGGING:
+ case PlSqlParser.PCTFREE:
+ case PlSqlParser.PCTUSED:
+ case PlSqlParser.STORAGE:
+ case PlSqlParser.TABLESPACE:
+ this.state = 3425;
+ this.segment_attributes_clause();
+ break;
+ case PlSqlParser.COMPRESS:
+ case PlSqlParser.NOCOMPRESS:
+ this.state = 3426;
+ this.key_compression();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 3429;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(_la===PlSqlParser.COMPRESS || _la===PlSqlParser.FILESYSTEM_LIKE_LOGGING || _la===PlSqlParser.INITRANS || _la===PlSqlParser.LOGGING || _la===PlSqlParser.NOCOMPRESS || _la===PlSqlParser.NOLOGGING || _la===PlSqlParser.PCTFREE || _la===PlSqlParser.PCTUSED || _la===PlSqlParser.STORAGE || _la===PlSqlParser.TABLESPACE);
+ break;
+ case PlSqlParser.PARAMETERS:
+ this.state = 3431;
+ this.match(PlSqlParser.PARAMETERS);
+ this.state = 3432;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 3433;
+ this.odci_parameters();
+ this.state = 3434;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 3439;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.UNUSABLE) {
+ this.state = 3438;
+ this.match(PlSqlParser.UNUSABLE);
+ }
+
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Modify_index_subpartitionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_modify_index_subpartition;
+ return this;
+}
+
+Modify_index_subpartitionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Modify_index_subpartitionContext.prototype.constructor = Modify_index_subpartitionContext;
+
+Modify_index_subpartitionContext.prototype.MODIFY = function() {
+ return this.getToken(PlSqlParser.MODIFY, 0);
+};
+
+Modify_index_subpartitionContext.prototype.SUBPARTITION = function() {
+ return this.getToken(PlSqlParser.SUBPARTITION, 0);
+};
+
+Modify_index_subpartitionContext.prototype.subpartition_name = function() {
+ return this.getTypedRuleContext(Subpartition_nameContext,0);
+};
+
+Modify_index_subpartitionContext.prototype.UNUSABLE = function() {
+ return this.getToken(PlSqlParser.UNUSABLE, 0);
+};
+
+Modify_index_subpartitionContext.prototype.allocate_extent_clause = function() {
+ return this.getTypedRuleContext(Allocate_extent_clauseContext,0);
+};
+
+Modify_index_subpartitionContext.prototype.deallocate_unused_clause = function() {
+ return this.getTypedRuleContext(Deallocate_unused_clauseContext,0);
+};
+
+Modify_index_subpartitionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterModify_index_subpartition(this);
+ }
+};
+
+Modify_index_subpartitionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitModify_index_subpartition(this);
+ }
+};
+
+Modify_index_subpartitionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitModify_index_subpartition(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Modify_index_subpartitionContext = Modify_index_subpartitionContext;
+
+PlSqlParser.prototype.modify_index_subpartition = function() {
+
+ var localctx = new Modify_index_subpartitionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 262, PlSqlParser.RULE_modify_index_subpartition);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3443;
+ this.match(PlSqlParser.MODIFY);
+ this.state = 3444;
+ this.match(PlSqlParser.SUBPARTITION);
+ this.state = 3445;
+ this.subpartition_name();
+ this.state = 3449;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.UNUSABLE:
+ this.state = 3446;
+ this.match(PlSqlParser.UNUSABLE);
+ break;
+ case PlSqlParser.ALLOCATE:
+ this.state = 3447;
+ this.allocate_extent_clause();
+ break;
+ case PlSqlParser.DEALLOCATE:
+ this.state = 3448;
+ this.deallocate_unused_clause();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Partition_name_oldContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_partition_name_old;
+ return this;
+}
+
+Partition_name_oldContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Partition_name_oldContext.prototype.constructor = Partition_name_oldContext;
+
+Partition_name_oldContext.prototype.partition_name = function() {
+ return this.getTypedRuleContext(Partition_nameContext,0);
+};
+
+Partition_name_oldContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterPartition_name_old(this);
+ }
+};
+
+Partition_name_oldContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitPartition_name_old(this);
+ }
+};
+
+Partition_name_oldContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitPartition_name_old(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Partition_name_oldContext = Partition_name_oldContext;
+
+PlSqlParser.prototype.partition_name_old = function() {
+
+ var localctx = new Partition_name_oldContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 264, PlSqlParser.RULE_partition_name_old);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3451;
+ this.partition_name();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function New_partition_nameContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_new_partition_name;
+ return this;
+}
+
+New_partition_nameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+New_partition_nameContext.prototype.constructor = New_partition_nameContext;
+
+New_partition_nameContext.prototype.partition_name = function() {
+ return this.getTypedRuleContext(Partition_nameContext,0);
+};
+
+New_partition_nameContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterNew_partition_name(this);
+ }
+};
+
+New_partition_nameContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitNew_partition_name(this);
+ }
+};
+
+New_partition_nameContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitNew_partition_name(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.New_partition_nameContext = New_partition_nameContext;
+
+PlSqlParser.prototype.new_partition_name = function() {
+
+ var localctx = new New_partition_nameContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 266, PlSqlParser.RULE_new_partition_name);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3453;
+ this.partition_name();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function New_index_nameContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_new_index_name;
+ return this;
+}
+
+New_index_nameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+New_index_nameContext.prototype.constructor = New_index_nameContext;
+
+New_index_nameContext.prototype.index_name = function() {
+ return this.getTypedRuleContext(Index_nameContext,0);
+};
+
+New_index_nameContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterNew_index_name(this);
+ }
+};
+
+New_index_nameContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitNew_index_name(this);
+ }
+};
+
+New_index_nameContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitNew_index_name(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.New_index_nameContext = New_index_nameContext;
+
+PlSqlParser.prototype.new_index_name = function() {
+
+ var localctx = new New_index_nameContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 268, PlSqlParser.RULE_new_index_name);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3455;
+ this.index_name();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_userContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_create_user;
+ return this;
+}
+
+Create_userContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_userContext.prototype.constructor = Create_userContext;
+
+Create_userContext.prototype.CREATE = function() {
+ return this.getToken(PlSqlParser.CREATE, 0);
+};
+
+Create_userContext.prototype.USER = function() {
+ return this.getToken(PlSqlParser.USER, 0);
+};
+
+Create_userContext.prototype.user_object_name = function() {
+ return this.getTypedRuleContext(User_object_nameContext,0);
+};
+
+Create_userContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Create_userContext.prototype.identified_by = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Identified_byContext);
+ } else {
+ return this.getTypedRuleContext(Identified_byContext,i);
+ }
+};
+
+Create_userContext.prototype.identified_other_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Identified_other_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Identified_other_clauseContext,i);
+ }
+};
+
+Create_userContext.prototype.user_tablespace_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(User_tablespace_clauseContext);
+ } else {
+ return this.getTypedRuleContext(User_tablespace_clauseContext,i);
+ }
+};
+
+Create_userContext.prototype.quota_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Quota_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Quota_clauseContext,i);
+ }
+};
+
+Create_userContext.prototype.profile_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Profile_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Profile_clauseContext,i);
+ }
+};
+
+Create_userContext.prototype.password_expire_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Password_expire_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Password_expire_clauseContext,i);
+ }
+};
+
+Create_userContext.prototype.user_lock_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(User_lock_clauseContext);
+ } else {
+ return this.getTypedRuleContext(User_lock_clauseContext,i);
+ }
+};
+
+Create_userContext.prototype.user_editions_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(User_editions_clauseContext);
+ } else {
+ return this.getTypedRuleContext(User_editions_clauseContext,i);
+ }
+};
+
+Create_userContext.prototype.container_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Container_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Container_clauseContext,i);
+ }
+};
+
+Create_userContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterCreate_user(this);
+ }
+};
+
+Create_userContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitCreate_user(this);
+ }
+};
+
+Create_userContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitCreate_user(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Create_userContext = Create_userContext;
+
+PlSqlParser.prototype.create_user = function() {
+
+ var localctx = new Create_userContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 270, PlSqlParser.RULE_create_user);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3457;
+ this.match(PlSqlParser.CREATE);
+ this.state = 3458;
+ this.match(PlSqlParser.USER);
+ this.state = 3459;
+ this.user_object_name();
+ this.state = 3469;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 3469;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,289,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 3460;
+ this.identified_by();
+ break;
+
+ case 2:
+ this.state = 3461;
+ this.identified_other_clause();
+ break;
+
+ case 3:
+ this.state = 3462;
+ this.user_tablespace_clause();
+ break;
+
+ case 4:
+ this.state = 3463;
+ this.quota_clause();
+ break;
+
+ case 5:
+ this.state = 3464;
+ this.profile_clause();
+ break;
+
+ case 6:
+ this.state = 3465;
+ this.password_expire_clause();
+ break;
+
+ case 7:
+ this.state = 3466;
+ this.user_lock_clause();
+ break;
+
+ case 8:
+ this.state = 3467;
+ this.user_editions_clause();
+ break;
+
+ case 9:
+ this.state = 3468;
+ this.container_clause();
+ break;
+
+ }
+ this.state = 3471;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(_la===PlSqlParser.ACCOUNT || _la===PlSqlParser.CONTAINER || _la===PlSqlParser.DEFAULT || _la===PlSqlParser.ENABLE || _la===PlSqlParser.IDENTIFIED || _la===PlSqlParser.PASSWORD || _la===PlSqlParser.PROFILE || _la===PlSqlParser.QUOTA || _la===PlSqlParser.TEMPORARY);
+ this.state = 3473;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Alter_userContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_alter_user;
+ return this;
+}
+
+Alter_userContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Alter_userContext.prototype.constructor = Alter_userContext;
+
+Alter_userContext.prototype.ALTER = function() {
+ return this.getToken(PlSqlParser.ALTER, 0);
+};
+
+Alter_userContext.prototype.USER = function() {
+ return this.getToken(PlSqlParser.USER, 0);
+};
+
+Alter_userContext.prototype.user_object_name = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(User_object_nameContext);
+ } else {
+ return this.getTypedRuleContext(User_object_nameContext,i);
+ }
+};
+
+Alter_userContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Alter_userContext.prototype.alter_identified_by = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Alter_identified_byContext);
+ } else {
+ return this.getTypedRuleContext(Alter_identified_byContext,i);
+ }
+};
+
+Alter_userContext.prototype.identified_other_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Identified_other_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Identified_other_clauseContext,i);
+ }
+};
+
+Alter_userContext.prototype.user_tablespace_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(User_tablespace_clauseContext);
+ } else {
+ return this.getTypedRuleContext(User_tablespace_clauseContext,i);
+ }
+};
+
+Alter_userContext.prototype.quota_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Quota_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Quota_clauseContext,i);
+ }
+};
+
+Alter_userContext.prototype.profile_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Profile_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Profile_clauseContext,i);
+ }
+};
+
+Alter_userContext.prototype.user_default_role_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(User_default_role_clauseContext);
+ } else {
+ return this.getTypedRuleContext(User_default_role_clauseContext,i);
+ }
+};
+
+Alter_userContext.prototype.password_expire_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Password_expire_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Password_expire_clauseContext,i);
+ }
+};
+
+Alter_userContext.prototype.user_lock_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(User_lock_clauseContext);
+ } else {
+ return this.getTypedRuleContext(User_lock_clauseContext,i);
+ }
+};
+
+Alter_userContext.prototype.alter_user_editions_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Alter_user_editions_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Alter_user_editions_clauseContext,i);
+ }
+};
+
+Alter_userContext.prototype.container_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Container_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Container_clauseContext,i);
+ }
+};
+
+Alter_userContext.prototype.container_data_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Container_data_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Container_data_clauseContext,i);
+ }
+};
+
+Alter_userContext.prototype.proxy_clause = function() {
+ return this.getTypedRuleContext(Proxy_clauseContext,0);
+};
+
+Alter_userContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Alter_userContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAlter_user(this);
+ }
+};
+
+Alter_userContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAlter_user(this);
+ }
+};
+
+Alter_userContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAlter_user(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Alter_userContext = Alter_userContext;
+
+PlSqlParser.prototype.alter_user = function() {
+
+ var localctx = new Alter_userContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 272, PlSqlParser.RULE_alter_user);
+ var _la = 0; // Token type
+ try {
+ this.state = 3506;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.ALTER:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3475;
+ this.match(PlSqlParser.ALTER);
+ this.state = 3476;
+ this.match(PlSqlParser.USER);
+ this.state = 3477;
+ this.user_object_name();
+ this.state = 3489;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 3489;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,291,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 3478;
+ this.alter_identified_by();
+ break;
+
+ case 2:
+ this.state = 3479;
+ this.identified_other_clause();
+ break;
+
+ case 3:
+ this.state = 3480;
+ this.user_tablespace_clause();
+ break;
+
+ case 4:
+ this.state = 3481;
+ this.quota_clause();
+ break;
+
+ case 5:
+ this.state = 3482;
+ this.profile_clause();
+ break;
+
+ case 6:
+ this.state = 3483;
+ this.user_default_role_clause();
+ break;
+
+ case 7:
+ this.state = 3484;
+ this.password_expire_clause();
+ break;
+
+ case 8:
+ this.state = 3485;
+ this.user_lock_clause();
+ break;
+
+ case 9:
+ this.state = 3486;
+ this.alter_user_editions_clause();
+ break;
+
+ case 10:
+ this.state = 3487;
+ this.container_clause();
+ break;
+
+ case 11:
+ this.state = 3488;
+ this.container_data_clause();
+ break;
+
+ }
+ this.state = 3491;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(_la===PlSqlParser.ACCOUNT || _la===PlSqlParser.ADD || _la===PlSqlParser.CONTAINER || _la===PlSqlParser.DEFAULT || _la===PlSqlParser.ENABLE || _la===PlSqlParser.IDENTIFIED || _la===PlSqlParser.PASSWORD || _la===PlSqlParser.PROFILE || _la===PlSqlParser.QUOTA || _la===PlSqlParser.REMOVE || _la===PlSqlParser.SET || _la===PlSqlParser.TEMPORARY);
+ this.state = 3493;
+ this.match(PlSqlParser.SEMICOLON);
+ break;
+ case PlSqlParser.ABORT:
+ case PlSqlParser.ABS:
+ case PlSqlParser.ACCESS:
+ case PlSqlParser.ACCESSED:
+ case PlSqlParser.ACCOUNT:
+ case PlSqlParser.ACL:
+ case PlSqlParser.ACOS:
+ case PlSqlParser.ACTION:
+ case PlSqlParser.ACTIONS:
+ case PlSqlParser.ACTIVATE:
+ case PlSqlParser.ACTIVE:
+ case PlSqlParser.ACTIVE_COMPONENT:
+ case PlSqlParser.ACTIVE_DATA:
+ case PlSqlParser.ACTIVE_FUNCTION:
+ case PlSqlParser.ACTIVE_TAG:
+ case PlSqlParser.ACTIVITY:
+ case PlSqlParser.ADAPTIVE_PLAN:
+ case PlSqlParser.ADD:
+ case PlSqlParser.ADD_COLUMN:
+ case PlSqlParser.ADD_GROUP:
+ case PlSqlParser.ADD_MONTHS:
+ case PlSqlParser.ADJ_DATE:
+ case PlSqlParser.ADMIN:
+ case PlSqlParser.ADMINISTER:
+ case PlSqlParser.ADMINISTRATOR:
+ case PlSqlParser.ADVANCED:
+ case PlSqlParser.ADVISE:
+ case PlSqlParser.ADVISOR:
+ case PlSqlParser.AFD_DISKSTRING:
+ case PlSqlParser.AFTER:
+ case PlSqlParser.AGENT:
+ case PlSqlParser.AGGREGATE:
+ case PlSqlParser.A_LETTER:
+ case PlSqlParser.ALIAS:
+ case PlSqlParser.ALLOCATE:
+ case PlSqlParser.ALLOW:
+ case PlSqlParser.ALL_ROWS:
+ case PlSqlParser.ALWAYS:
+ case PlSqlParser.ANALYZE:
+ case PlSqlParser.ANCILLARY:
+ case PlSqlParser.AND_EQUAL:
+ case PlSqlParser.ANOMALY:
+ case PlSqlParser.ANSI_REARCH:
+ case PlSqlParser.ANTIJOIN:
+ case PlSqlParser.ANYSCHEMA:
+ case PlSqlParser.APPEND:
+ case PlSqlParser.APPENDCHILDXML:
+ case PlSqlParser.APPEND_VALUES:
+ case PlSqlParser.APPLICATION:
+ case PlSqlParser.APPLY:
+ case PlSqlParser.APPROX_COUNT_DISTINCT:
+ case PlSqlParser.ARCHIVAL:
+ case PlSqlParser.ARCHIVE:
+ case PlSqlParser.ARCHIVED:
+ case PlSqlParser.ARCHIVELOG:
+ case PlSqlParser.ARRAY:
+ case PlSqlParser.ASCII:
+ case PlSqlParser.ASCIISTR:
+ case PlSqlParser.ASIN:
+ case PlSqlParser.ASIS:
+ case PlSqlParser.ASSEMBLY:
+ case PlSqlParser.ASSIGN:
+ case PlSqlParser.ASSOCIATE:
+ case PlSqlParser.ASYNC:
+ case PlSqlParser.ASYNCHRONOUS:
+ case PlSqlParser.ATAN2:
+ case PlSqlParser.ATAN:
+ case PlSqlParser.AT:
+ case PlSqlParser.ATTRIBUTE:
+ case PlSqlParser.ATTRIBUTES:
+ case PlSqlParser.AUTHENTICATED:
+ case PlSqlParser.AUTHENTICATION:
+ case PlSqlParser.AUTHID:
+ case PlSqlParser.AUTHORIZATION:
+ case PlSqlParser.AUTOALLOCATE:
+ case PlSqlParser.AUTO:
+ case PlSqlParser.AUTOEXTEND:
+ case PlSqlParser.AUTO_LOGIN:
+ case PlSqlParser.AUTOMATIC:
+ case PlSqlParser.AUTONOMOUS_TRANSACTION:
+ case PlSqlParser.AUTO_REOPTIMIZE:
+ case PlSqlParser.AVAILABILITY:
+ case PlSqlParser.AVRO:
+ case PlSqlParser.BACKGROUND:
+ case PlSqlParser.BACKUP:
+ case PlSqlParser.BASIC:
+ case PlSqlParser.BASICFILE:
+ case PlSqlParser.BATCH:
+ case PlSqlParser.BATCHSIZE:
+ case PlSqlParser.BATCH_TABLE_ACCESS_BY_ROWID:
+ case PlSqlParser.BECOME:
+ case PlSqlParser.BEFORE:
+ case PlSqlParser.BEGIN:
+ case PlSqlParser.BEGINNING:
+ case PlSqlParser.BEGIN_OUTLINE_DATA:
+ case PlSqlParser.BEHALF:
+ case PlSqlParser.BEQUEATH:
+ case PlSqlParser.BFILE:
+ case PlSqlParser.BFILENAME:
+ case PlSqlParser.BIGFILE:
+ case PlSqlParser.BINARY:
+ case PlSqlParser.BINARY_DOUBLE:
+ case PlSqlParser.BINARY_DOUBLE_INFINITY:
+ case PlSqlParser.BINARY_DOUBLE_NAN:
+ case PlSqlParser.BINARY_FLOAT:
+ case PlSqlParser.BINARY_FLOAT_INFINITY:
+ case PlSqlParser.BINARY_FLOAT_NAN:
+ case PlSqlParser.BINARY_INTEGER:
+ case PlSqlParser.BIND_AWARE:
+ case PlSqlParser.BINDING:
+ case PlSqlParser.BIN_TO_NUM:
+ case PlSqlParser.BITAND:
+ case PlSqlParser.BITMAP_AND:
+ case PlSqlParser.BITMAP:
+ case PlSqlParser.BITMAPS:
+ case PlSqlParser.BITMAP_TREE:
+ case PlSqlParser.BITS:
+ case PlSqlParser.BLOB:
+ case PlSqlParser.BLOCK:
+ case PlSqlParser.BLOCK_RANGE:
+ case PlSqlParser.BLOCKS:
+ case PlSqlParser.BLOCKSIZE:
+ case PlSqlParser.BODY:
+ case PlSqlParser.BOOLEAN:
+ case PlSqlParser.BOTH:
+ case PlSqlParser.BOUND:
+ case PlSqlParser.BRANCH:
+ case PlSqlParser.BREADTH:
+ case PlSqlParser.BROADCAST:
+ case PlSqlParser.BSON:
+ case PlSqlParser.BUFFER:
+ case PlSqlParser.BUFFER_CACHE:
+ case PlSqlParser.BUFFER_POOL:
+ case PlSqlParser.BUILD:
+ case PlSqlParser.BULK:
+ case PlSqlParser.BYPASS_RECURSIVE_CHECK:
+ case PlSqlParser.BYPASS_UJVC:
+ case PlSqlParser.BYTE:
+ case PlSqlParser.CACHE:
+ case PlSqlParser.CACHE_CB:
+ case PlSqlParser.CACHE_INSTANCES:
+ case PlSqlParser.CACHE_TEMP_TABLE:
+ case PlSqlParser.CACHING:
+ case PlSqlParser.CALCULATED:
+ case PlSqlParser.CALLBACK:
+ case PlSqlParser.CALL:
+ case PlSqlParser.CANCEL:
+ case PlSqlParser.CAPACITY:
+ case PlSqlParser.CARDINALITY:
+ case PlSqlParser.CASCADE:
+ case PlSqlParser.CASE:
+ case PlSqlParser.CAST:
+ case PlSqlParser.CATEGORY:
+ case PlSqlParser.CDBDEFAULT:
+ case PlSqlParser.CEIL:
+ case PlSqlParser.CELL_FLASH_CACHE:
+ case PlSqlParser.CERTIFICATE:
+ case PlSqlParser.CFILE:
+ case PlSqlParser.CHAINED:
+ case PlSqlParser.CHANGE:
+ case PlSqlParser.CHANGE_DUPKEY_ERROR_INDEX:
+ case PlSqlParser.CHARACTER:
+ case PlSqlParser.CHAR:
+ case PlSqlParser.CHAR_CS:
+ case PlSqlParser.CHARTOROWID:
+ case PlSqlParser.CHECK_ACL_REWRITE:
+ case PlSqlParser.CHECKPOINT:
+ case PlSqlParser.CHILD:
+ case PlSqlParser.CHOOSE:
+ case PlSqlParser.CHR:
+ case PlSqlParser.CHUNK:
+ case PlSqlParser.CLASS:
+ case PlSqlParser.CLASSIFIER:
+ case PlSqlParser.CLEANUP:
+ case PlSqlParser.CLEAR:
+ case PlSqlParser.C_LETTER:
+ case PlSqlParser.CLIENT:
+ case PlSqlParser.CLOB:
+ case PlSqlParser.CLONE:
+ case PlSqlParser.CLOSE_CACHED_OPEN_CURSORS:
+ case PlSqlParser.CLOSE:
+ case PlSqlParser.CLUSTER_BY_ROWID:
+ case PlSqlParser.CLUSTER:
+ case PlSqlParser.CLUSTER_DETAILS:
+ case PlSqlParser.CLUSTER_DISTANCE:
+ case PlSqlParser.CLUSTER_ID:
+ case PlSqlParser.CLUSTERING:
+ case PlSqlParser.CLUSTERING_FACTOR:
+ case PlSqlParser.CLUSTER_PROBABILITY:
+ case PlSqlParser.CLUSTER_SET:
+ case PlSqlParser.COALESCE:
+ case PlSqlParser.COALESCE_SQ:
+ case PlSqlParser.COARSE:
+ case PlSqlParser.CO_AUTH_IND:
+ case PlSqlParser.COLD:
+ case PlSqlParser.COLLECT:
+ case PlSqlParser.COLUMNAR:
+ case PlSqlParser.COLUMN_AUTH_INDICATOR:
+ case PlSqlParser.COLUMN:
+ case PlSqlParser.COLUMNS:
+ case PlSqlParser.COLUMN_STATS:
+ case PlSqlParser.COLUMN_VALUE:
+ case PlSqlParser.COMMENT:
+ case PlSqlParser.COMMIT:
+ case PlSqlParser.COMMITTED:
+ case PlSqlParser.COMMON_DATA:
+ case PlSqlParser.COMPACT:
+ case PlSqlParser.COMPATIBILITY:
+ case PlSqlParser.COMPILE:
+ case PlSqlParser.COMPLETE:
+ case PlSqlParser.COMPLIANCE:
+ case PlSqlParser.COMPONENT:
+ case PlSqlParser.COMPONENTS:
+ case PlSqlParser.COMPOSE:
+ case PlSqlParser.COMPOSITE:
+ case PlSqlParser.COMPOSITE_LIMIT:
+ case PlSqlParser.COMPOUND:
+ case PlSqlParser.COMPUTE:
+ case PlSqlParser.CONCAT:
+ case PlSqlParser.CON_DBID_TO_ID:
+ case PlSqlParser.CONDITIONAL:
+ case PlSqlParser.CONDITION:
+ case PlSqlParser.CONFIRM:
+ case PlSqlParser.CONFORMING:
+ case PlSqlParser.CON_GUID_TO_ID:
+ case PlSqlParser.CON_ID:
+ case PlSqlParser.CON_NAME_TO_ID:
+ case PlSqlParser.CONNECT_BY_CB_WHR_ONLY:
+ case PlSqlParser.CONNECT_BY_COMBINE_SW:
+ case PlSqlParser.CONNECT_BY_COST_BASED:
+ case PlSqlParser.CONNECT_BY_ELIM_DUPS:
+ case PlSqlParser.CONNECT_BY_FILTERING:
+ case PlSqlParser.CONNECT_BY_ISCYCLE:
+ case PlSqlParser.CONNECT_BY_ISLEAF:
+ case PlSqlParser.CONNECT_BY_ROOT:
+ case PlSqlParser.CONNECT_TIME:
+ case PlSqlParser.CONSIDER:
+ case PlSqlParser.CONSISTENT:
+ case PlSqlParser.CONSTANT:
+ case PlSqlParser.CONST:
+ case PlSqlParser.CONSTRAINT:
+ case PlSqlParser.CONSTRAINTS:
+ case PlSqlParser.CONSTRUCTOR:
+ case PlSqlParser.CONTAINER:
+ case PlSqlParser.CONTAINER_DATA:
+ case PlSqlParser.CONTAINERS:
+ case PlSqlParser.CONTENT:
+ case PlSqlParser.CONTENTS:
+ case PlSqlParser.CONTEXT:
+ case PlSqlParser.CONTINUE:
+ case PlSqlParser.CONTROLFILE:
+ case PlSqlParser.CON_UID_TO_ID:
+ case PlSqlParser.CONVERT:
+ case PlSqlParser.COOKIE:
+ case PlSqlParser.COPY:
+ case PlSqlParser.CORR_K:
+ case PlSqlParser.CORR_S:
+ case PlSqlParser.CORRUPTION:
+ case PlSqlParser.CORRUPT_XID_ALL:
+ case PlSqlParser.CORRUPT_XID:
+ case PlSqlParser.COS:
+ case PlSqlParser.COSH:
+ case PlSqlParser.COST:
+ case PlSqlParser.COST_XML_QUERY_REWRITE:
+ case PlSqlParser.COUNT:
+ case PlSqlParser.COVAR_POP:
+ case PlSqlParser.COVAR_SAMP:
+ case PlSqlParser.CPU_COSTING:
+ case PlSqlParser.CPU_PER_CALL:
+ case PlSqlParser.CPU_PER_SESSION:
+ case PlSqlParser.CRASH:
+ case PlSqlParser.CREATE_FILE_DEST:
+ case PlSqlParser.CREATE_STORED_OUTLINES:
+ case PlSqlParser.CREATION:
+ case PlSqlParser.CREDENTIAL:
+ case PlSqlParser.CRITICAL:
+ case PlSqlParser.CROSS:
+ case PlSqlParser.CROSSEDITION:
+ case PlSqlParser.CSCONVERT:
+ case PlSqlParser.CUBE_AJ:
+ case PlSqlParser.CUBE:
+ case PlSqlParser.CUBE_GB:
+ case PlSqlParser.CUBE_SJ:
+ case PlSqlParser.CUME_DISTM:
+ case PlSqlParser.CURRENT:
+ case PlSqlParser.CURRENT_DATE:
+ case PlSqlParser.CURRENT_SCHEMA:
+ case PlSqlParser.CURRENT_TIME:
+ case PlSqlParser.CURRENT_TIMESTAMP:
+ case PlSqlParser.CURRENT_USER:
+ case PlSqlParser.CURRENTV:
+ case PlSqlParser.CURSOR:
+ case PlSqlParser.CURSOR_SHARING_EXACT:
+ case PlSqlParser.CURSOR_SPECIFIC_SEGMENT:
+ case PlSqlParser.CUSTOMDATUM:
+ case PlSqlParser.CV:
+ case PlSqlParser.CYCLE:
+ case PlSqlParser.DANGLING:
+ case PlSqlParser.DATABASE:
+ case PlSqlParser.DATA:
+ case PlSqlParser.DATAFILE:
+ case PlSqlParser.DATAFILES:
+ case PlSqlParser.DATAMOVEMENT:
+ case PlSqlParser.DATAOBJNO:
+ case PlSqlParser.DATAOBJ_TO_MAT_PARTITION:
+ case PlSqlParser.DATAOBJ_TO_PARTITION:
+ case PlSqlParser.DATAPUMP:
+ case PlSqlParser.DATA_SECURITY_REWRITE_LIMIT:
+ case PlSqlParser.DATE_MODE:
+ case PlSqlParser.DAY:
+ case PlSqlParser.DAYS:
+ case PlSqlParser.DBA:
+ case PlSqlParser.DBA_RECYCLEBIN:
+ case PlSqlParser.DBMS_STATS:
+ case PlSqlParser.DB_ROLE_CHANGE:
+ case PlSqlParser.DBTIMEZONE:
+ case PlSqlParser.DB_UNIQUE_NAME:
+ case PlSqlParser.DB_VERSION:
+ case PlSqlParser.DDL:
+ case PlSqlParser.DEALLOCATE:
+ case PlSqlParser.DEBUG:
+ case PlSqlParser.DEBUGGER:
+ case PlSqlParser.DEC:
+ case PlSqlParser.DECIMAL:
+ case PlSqlParser.DECLARE:
+ case PlSqlParser.DECOMPOSE:
+ case PlSqlParser.DECORRELATE:
+ case PlSqlParser.DECR:
+ case PlSqlParser.DECREMENT:
+ case PlSqlParser.DECRYPT:
+ case PlSqlParser.DEDUPLICATE:
+ case PlSqlParser.DEFAULTS:
+ case PlSqlParser.DEFERRABLE:
+ case PlSqlParser.DEFERRED:
+ case PlSqlParser.DEFINED:
+ case PlSqlParser.DEFINE:
+ case PlSqlParser.DEFINER:
+ case PlSqlParser.DEGREE:
+ case PlSqlParser.DELAY:
+ case PlSqlParser.DELEGATE:
+ case PlSqlParser.DELETE_ALL:
+ case PlSqlParser.DELETE:
+ case PlSqlParser.DELETEXML:
+ case PlSqlParser.DEMAND:
+ case PlSqlParser.DENSE_RANKM:
+ case PlSqlParser.DEPENDENT:
+ case PlSqlParser.DEPTH:
+ case PlSqlParser.DEQUEUE:
+ case PlSqlParser.DEREF:
+ case PlSqlParser.DEREF_NO_REWRITE:
+ case PlSqlParser.DESTROY:
+ case PlSqlParser.DETACHED:
+ case PlSqlParser.DETERMINES:
+ case PlSqlParser.DETERMINISTIC:
+ case PlSqlParser.DICTIONARY:
+ case PlSqlParser.DIMENSION:
+ case PlSqlParser.DIMENSIONS:
+ case PlSqlParser.DIRECT_LOAD:
+ case PlSqlParser.DIRECTORY:
+ case PlSqlParser.DIRECT_PATH:
+ case PlSqlParser.DISABLE_ALL:
+ case PlSqlParser.DISABLE:
+ case PlSqlParser.DISABLE_PARALLEL_DML:
+ case PlSqlParser.DISABLE_PRESET:
+ case PlSqlParser.DISABLE_RPKE:
+ case PlSqlParser.DISALLOW:
+ case PlSqlParser.DISASSOCIATE:
+ case PlSqlParser.DISCARD:
+ case PlSqlParser.DISCONNECT:
+ case PlSqlParser.DISK:
+ case PlSqlParser.DISKGROUP:
+ case PlSqlParser.DISKS:
+ case PlSqlParser.DISMOUNT:
+ case PlSqlParser.DISTINGUISHED:
+ case PlSqlParser.DISTRIBUTED:
+ case PlSqlParser.DISTRIBUTE:
+ case PlSqlParser.DML:
+ case PlSqlParser.DML_UPDATE:
+ case PlSqlParser.DOCFIDELITY:
+ case PlSqlParser.DOCUMENT:
+ case PlSqlParser.DOMAIN_INDEX_FILTER:
+ case PlSqlParser.DOMAIN_INDEX_NO_SORT:
+ case PlSqlParser.DOMAIN_INDEX_SORT:
+ case PlSqlParser.DOUBLE:
+ case PlSqlParser.DOWNGRADE:
+ case PlSqlParser.DRIVING_SITE:
+ case PlSqlParser.DROP_COLUMN:
+ case PlSqlParser.DROP_GROUP:
+ case PlSqlParser.DSINTERVAL_UNCONSTRAINED:
+ case PlSqlParser.DST_UPGRADE_INSERT_CONV:
+ case PlSqlParser.DUMP:
+ case PlSqlParser.DUPLICATE:
+ case PlSqlParser.DV:
+ case PlSqlParser.DYNAMIC:
+ case PlSqlParser.DYNAMIC_SAMPLING:
+ case PlSqlParser.DYNAMIC_SAMPLING_EST_CDN:
+ case PlSqlParser.EACH:
+ case PlSqlParser.EDITIONABLE:
+ case PlSqlParser.EDITION:
+ case PlSqlParser.EDITIONING:
+ case PlSqlParser.EDITIONS:
+ case PlSqlParser.ELEMENT:
+ case PlSqlParser.ELIM_GROUPBY:
+ case PlSqlParser.ELIMINATE_JOIN:
+ case PlSqlParser.ELIMINATE_OBY:
+ case PlSqlParser.ELIMINATE_OUTER_JOIN:
+ case PlSqlParser.EM:
+ case PlSqlParser.EMPTY_BLOB:
+ case PlSqlParser.EMPTY_CLOB:
+ case PlSqlParser.EMPTY:
+ case PlSqlParser.ENABLE_ALL:
+ case PlSqlParser.ENABLE:
+ case PlSqlParser.ENABLE_PARALLEL_DML:
+ case PlSqlParser.ENABLE_PRESET:
+ case PlSqlParser.ENCODING:
+ case PlSqlParser.ENCRYPT:
+ case PlSqlParser.ENCRYPTION:
+ case PlSqlParser.END_OUTLINE_DATA:
+ case PlSqlParser.ENFORCED:
+ case PlSqlParser.ENFORCE:
+ case PlSqlParser.ENQUEUE:
+ case PlSqlParser.ENTERPRISE:
+ case PlSqlParser.ENTITYESCAPING:
+ case PlSqlParser.ENTRY:
+ case PlSqlParser.EQUIPART:
+ case PlSqlParser.ERR:
+ case PlSqlParser.ERROR_ARGUMENT:
+ case PlSqlParser.ERROR:
+ case PlSqlParser.ERROR_ON_OVERLAP_TIME:
+ case PlSqlParser.ERRORS:
+ case PlSqlParser.ESCAPE:
+ case PlSqlParser.ESTIMATE:
+ case PlSqlParser.EVAL:
+ case PlSqlParser.EVALNAME:
+ case PlSqlParser.EVALUATE:
+ case PlSqlParser.EVALUATION:
+ case PlSqlParser.EVENTS:
+ case PlSqlParser.EVERY:
+ case PlSqlParser.EXCEPT:
+ case PlSqlParser.EXCEPTION:
+ case PlSqlParser.EXCEPTION_INIT:
+ case PlSqlParser.EXCEPTIONS:
+ case PlSqlParser.EXCHANGE:
+ case PlSqlParser.EXCLUDE:
+ case PlSqlParser.EXCLUDING:
+ case PlSqlParser.EXECUTE:
+ case PlSqlParser.EXEMPT:
+ case PlSqlParser.EXISTING:
+ case PlSqlParser.EXISTS:
+ case PlSqlParser.EXISTSNODE:
+ case PlSqlParser.EXIT:
+ case PlSqlParser.EXPAND_GSET_TO_UNION:
+ case PlSqlParser.EXPAND_TABLE:
+ case PlSqlParser.EXP:
+ case PlSqlParser.EXPIRE:
+ case PlSqlParser.EXPLAIN:
+ case PlSqlParser.EXPLOSION:
+ case PlSqlParser.EXPORT:
+ case PlSqlParser.EXPR_CORR_CHECK:
+ case PlSqlParser.EXPRESS:
+ case PlSqlParser.EXTENDS:
+ case PlSqlParser.EXTENT:
+ case PlSqlParser.EXTENTS:
+ case PlSqlParser.EXTERNAL:
+ case PlSqlParser.EXTERNALLY:
+ case PlSqlParser.EXTRACTCLOBXML:
+ case PlSqlParser.EXTRACT:
+ case PlSqlParser.EXTRACTVALUE:
+ case PlSqlParser.EXTRA:
+ case PlSqlParser.FACILITY:
+ case PlSqlParser.FACT:
+ case PlSqlParser.FACTOR:
+ case PlSqlParser.FACTORIZE_JOIN:
+ case PlSqlParser.FAILED:
+ case PlSqlParser.FAILED_LOGIN_ATTEMPTS:
+ case PlSqlParser.FAILGROUP:
+ case PlSqlParser.FAILOVER:
+ case PlSqlParser.FAILURE:
+ case PlSqlParser.FALSE:
+ case PlSqlParser.FAMILY:
+ case PlSqlParser.FAR:
+ case PlSqlParser.FAST:
+ case PlSqlParser.FASTSTART:
+ case PlSqlParser.FBTSCAN:
+ case PlSqlParser.FEATURE_DETAILS:
+ case PlSqlParser.FEATURE_ID:
+ case PlSqlParser.FEATURE_SET:
+ case PlSqlParser.FEATURE_VALUE:
+ case PlSqlParser.FETCH:
+ case PlSqlParser.FILE:
+ case PlSqlParser.FILE_NAME_CONVERT:
+ case PlSqlParser.FILESYSTEM_LIKE_LOGGING:
+ case PlSqlParser.FILTER:
+ case PlSqlParser.FINAL:
+ case PlSqlParser.FINE:
+ case PlSqlParser.FINISH:
+ case PlSqlParser.FIRST:
+ case PlSqlParser.FIRSTM:
+ case PlSqlParser.FIRST_ROWS:
+ case PlSqlParser.FIRST_VALUE:
+ case PlSqlParser.FIXED_VIEW_DATA:
+ case PlSqlParser.FLAGGER:
+ case PlSqlParser.FLASHBACK:
+ case PlSqlParser.FLASH_CACHE:
+ case PlSqlParser.FLOAT:
+ case PlSqlParser.FLOB:
+ case PlSqlParser.FLOOR:
+ case PlSqlParser.FLUSH:
+ case PlSqlParser.FOLDER:
+ case PlSqlParser.FOLLOWING:
+ case PlSqlParser.FOLLOWS:
+ case PlSqlParser.FORALL:
+ case PlSqlParser.FORCE:
+ case PlSqlParser.FORCE_XML_QUERY_REWRITE:
+ case PlSqlParser.FOREIGN:
+ case PlSqlParser.FOREVER:
+ case PlSqlParser.FORMAT:
+ case PlSqlParser.FORWARD:
+ case PlSqlParser.FRAGMENT_NUMBER:
+ case PlSqlParser.FREELIST:
+ case PlSqlParser.FREELISTS:
+ case PlSqlParser.FREEPOOLS:
+ case PlSqlParser.FRESH:
+ case PlSqlParser.FROM_TZ:
+ case PlSqlParser.FULL:
+ case PlSqlParser.FULL_OUTER_JOIN_TO_OUTER:
+ case PlSqlParser.FUNCTION:
+ case PlSqlParser.FUNCTIONS:
+ case PlSqlParser.GATHER_OPTIMIZER_STATISTICS:
+ case PlSqlParser.GATHER_PLAN_STATISTICS:
+ case PlSqlParser.GBY_CONC_ROLLUP:
+ case PlSqlParser.GBY_PUSHDOWN:
+ case PlSqlParser.GENERATED:
+ case PlSqlParser.GET:
+ case PlSqlParser.GLOBAL:
+ case PlSqlParser.GLOBALLY:
+ case PlSqlParser.GLOBAL_NAME:
+ case PlSqlParser.GLOBAL_TOPIC_ENABLED:
+ case PlSqlParser.GROUP_BY:
+ case PlSqlParser.GROUP_ID:
+ case PlSqlParser.GROUPING:
+ case PlSqlParser.GROUPING_ID:
+ case PlSqlParser.GROUPS:
+ case PlSqlParser.GUARANTEED:
+ case PlSqlParser.GUARANTEE:
+ case PlSqlParser.GUARD:
+ case PlSqlParser.HASH_AJ:
+ case PlSqlParser.HASH:
+ case PlSqlParser.HASHKEYS:
+ case PlSqlParser.HASH_SJ:
+ case PlSqlParser.HEADER:
+ case PlSqlParser.HEAP:
+ case PlSqlParser.HELP:
+ case PlSqlParser.HEXTORAW:
+ case PlSqlParser.HEXTOREF:
+ case PlSqlParser.HIDDEN_KEYWORD:
+ case PlSqlParser.HIDE:
+ case PlSqlParser.HIERARCHY:
+ case PlSqlParser.HIGH:
+ case PlSqlParser.HINTSET_BEGIN:
+ case PlSqlParser.HINTSET_END:
+ case PlSqlParser.HOT:
+ case PlSqlParser.HOUR:
+ case PlSqlParser.HWM_BROKERED:
+ case PlSqlParser.HYBRID:
+ case PlSqlParser.IDENTIFIER:
+ case PlSqlParser.IDENTITY:
+ case PlSqlParser.IDGENERATORS:
+ case PlSqlParser.ID:
+ case PlSqlParser.IDLE_TIME:
+ case PlSqlParser.IF:
+ case PlSqlParser.IGNORE:
+ case PlSqlParser.IGNORE_OPTIM_EMBEDDED_HINTS:
+ case PlSqlParser.IGNORE_ROW_ON_DUPKEY_INDEX:
+ case PlSqlParser.IGNORE_WHERE_CLAUSE:
+ case PlSqlParser.ILM:
+ case PlSqlParser.IMMEDIATE:
+ case PlSqlParser.IMPACT:
+ case PlSqlParser.IMPORT:
+ case PlSqlParser.INACTIVE:
+ case PlSqlParser.INCLUDE:
+ case PlSqlParser.INCLUDE_VERSION:
+ case PlSqlParser.INCLUDING:
+ case PlSqlParser.INCREMENTAL:
+ case PlSqlParser.INCREMENT:
+ case PlSqlParser.INCR:
+ case PlSqlParser.INDENT:
+ case PlSqlParser.INDEX_ASC:
+ case PlSqlParser.INDEX_COMBINE:
+ case PlSqlParser.INDEX_DESC:
+ case PlSqlParser.INDEXED:
+ case PlSqlParser.INDEXES:
+ case PlSqlParser.INDEX_FFS:
+ case PlSqlParser.INDEX_FILTER:
+ case PlSqlParser.INDEXING:
+ case PlSqlParser.INDEX_JOIN:
+ case PlSqlParser.INDEX_ROWS:
+ case PlSqlParser.INDEX_RRS:
+ case PlSqlParser.INDEX_RS_ASC:
+ case PlSqlParser.INDEX_RS_DESC:
+ case PlSqlParser.INDEX_RS:
+ case PlSqlParser.INDEX_SCAN:
+ case PlSqlParser.INDEX_SKIP_SCAN:
+ case PlSqlParser.INDEX_SS_ASC:
+ case PlSqlParser.INDEX_SS_DESC:
+ case PlSqlParser.INDEX_SS:
+ case PlSqlParser.INDEX_STATS:
+ case PlSqlParser.INDEXTYPE:
+ case PlSqlParser.INDEXTYPES:
+ case PlSqlParser.INDICATOR:
+ case PlSqlParser.INDICES:
+ case PlSqlParser.INFINITE:
+ case PlSqlParser.INFORMATIONAL:
+ case PlSqlParser.INHERIT:
+ case PlSqlParser.INITCAP:
+ case PlSqlParser.INITIAL:
+ case PlSqlParser.INITIALIZED:
+ case PlSqlParser.INITIALLY:
+ case PlSqlParser.INITRANS:
+ case PlSqlParser.INLINE:
+ case PlSqlParser.INLINE_XMLTYPE_NT:
+ case PlSqlParser.INMEMORY:
+ case PlSqlParser.IN_MEMORY_METADATA:
+ case PlSqlParser.INMEMORY_PRUNING:
+ case PlSqlParser.INNER:
+ case PlSqlParser.INOUT:
+ case PlSqlParser.INPLACE:
+ case PlSqlParser.INSERTCHILDXMLAFTER:
+ case PlSqlParser.INSERTCHILDXMLBEFORE:
+ case PlSqlParser.INSERTCHILDXML:
+ case PlSqlParser.INSERTXMLAFTER:
+ case PlSqlParser.INSERTXMLBEFORE:
+ case PlSqlParser.INSTANCE:
+ case PlSqlParser.INSTANCES:
+ case PlSqlParser.INSTANTIABLE:
+ case PlSqlParser.INSTANTLY:
+ case PlSqlParser.INSTEAD:
+ case PlSqlParser.INSTR2:
+ case PlSqlParser.INSTR4:
+ case PlSqlParser.INSTRB:
+ case PlSqlParser.INSTRC:
+ case PlSqlParser.INSTR:
+ case PlSqlParser.INTEGER:
+ case PlSqlParser.INTERLEAVED:
+ case PlSqlParser.INTERMEDIATE:
+ case PlSqlParser.INTERNAL_CONVERT:
+ case PlSqlParser.INTERNAL_USE:
+ case PlSqlParser.INTERPRETED:
+ case PlSqlParser.INTERVAL:
+ case PlSqlParser.INT:
+ case PlSqlParser.INVALIDATE:
+ case PlSqlParser.INVISIBLE:
+ case PlSqlParser.IN_XQUERY:
+ case PlSqlParser.ISOLATION:
+ case PlSqlParser.ISOLATION_LEVEL:
+ case PlSqlParser.ITERATE:
+ case PlSqlParser.ITERATION_NUMBER:
+ case PlSqlParser.JAVA:
+ case PlSqlParser.JOB:
+ case PlSqlParser.JOIN:
+ case PlSqlParser.JSON_ARRAYAGG:
+ case PlSqlParser.JSON_ARRAY:
+ case PlSqlParser.JSON_EQUAL:
+ case PlSqlParser.JSON_EXISTS2:
+ case PlSqlParser.JSON_EXISTS:
+ case PlSqlParser.JSONGET:
+ case PlSqlParser.JSON:
+ case PlSqlParser.JSON_OBJECTAGG:
+ case PlSqlParser.JSON_OBJECT:
+ case PlSqlParser.JSONPARSE:
+ case PlSqlParser.JSON_QUERY:
+ case PlSqlParser.JSON_SERIALIZE:
+ case PlSqlParser.JSON_TABLE:
+ case PlSqlParser.JSON_TEXTCONTAINS2:
+ case PlSqlParser.JSON_TEXTCONTAINS:
+ case PlSqlParser.JSON_VALUE:
+ case PlSqlParser.KEEP_DUPLICATES:
+ case PlSqlParser.KEEP:
+ case PlSqlParser.KERBEROS:
+ case PlSqlParser.KEY:
+ case PlSqlParser.KEY_LENGTH:
+ case PlSqlParser.KEYSIZE:
+ case PlSqlParser.KEYS:
+ case PlSqlParser.KEYSTORE:
+ case PlSqlParser.KILL:
+ case PlSqlParser.LABEL:
+ case PlSqlParser.LANGUAGE:
+ case PlSqlParser.LAST_DAY:
+ case PlSqlParser.LAST:
+ case PlSqlParser.LAST_VALUE:
+ case PlSqlParser.LATERAL:
+ case PlSqlParser.LAX:
+ case PlSqlParser.LAYER:
+ case PlSqlParser.LDAP_REGISTRATION_ENABLED:
+ case PlSqlParser.LDAP_REGISTRATION:
+ case PlSqlParser.LDAP_REG_SYNC_INTERVAL:
+ case PlSqlParser.LEADING:
+ case PlSqlParser.LEFT:
+ case PlSqlParser.LENGTH2:
+ case PlSqlParser.LENGTH4:
+ case PlSqlParser.LENGTHB:
+ case PlSqlParser.LENGTHC:
+ case PlSqlParser.LENGTH:
+ case PlSqlParser.LESS:
+ case PlSqlParser.LEVEL:
+ case PlSqlParser.LEVELS:
+ case PlSqlParser.LIBRARY:
+ case PlSqlParser.LIFECYCLE:
+ case PlSqlParser.LIFE:
+ case PlSqlParser.LIFETIME:
+ case PlSqlParser.LIKE2:
+ case PlSqlParser.LIKE4:
+ case PlSqlParser.LIKEC:
+ case PlSqlParser.LIKE_EXPAND:
+ case PlSqlParser.LIMIT:
+ case PlSqlParser.LINEAR:
+ case PlSqlParser.LINK:
+ case PlSqlParser.LIST:
+ case PlSqlParser.LN:
+ case PlSqlParser.LNNVL:
+ case PlSqlParser.LOAD:
+ case PlSqlParser.LOB:
+ case PlSqlParser.LOBNVL:
+ case PlSqlParser.LOBS:
+ case PlSqlParser.LOCAL_INDEXES:
+ case PlSqlParser.LOCAL:
+ case PlSqlParser.LOCALTIME:
+ case PlSqlParser.LOCALTIMESTAMP:
+ case PlSqlParser.LOCATION:
+ case PlSqlParser.LOCATOR:
+ case PlSqlParser.LOCKED:
+ case PlSqlParser.LOCKING:
+ case PlSqlParser.LOGFILE:
+ case PlSqlParser.LOGFILES:
+ case PlSqlParser.LOGGING:
+ case PlSqlParser.LOGICAL:
+ case PlSqlParser.LOGICAL_READS_PER_CALL:
+ case PlSqlParser.LOGICAL_READS_PER_SESSION:
+ case PlSqlParser.LOG:
+ case PlSqlParser.LOGMINING:
+ case PlSqlParser.LOGOFF:
+ case PlSqlParser.LOGON:
+ case PlSqlParser.LOG_READ_ONLY_VIOLATIONS:
+ case PlSqlParser.LONG:
+ case PlSqlParser.LOOP:
+ case PlSqlParser.LOWER:
+ case PlSqlParser.LOW:
+ case PlSqlParser.LPAD:
+ case PlSqlParser.LTRIM:
+ case PlSqlParser.MAIN:
+ case PlSqlParser.MAKE_REF:
+ case PlSqlParser.MANAGED:
+ case PlSqlParser.MANAGE:
+ case PlSqlParser.MANAGEMENT:
+ case PlSqlParser.MANAGER:
+ case PlSqlParser.MANUAL:
+ case PlSqlParser.MAP:
+ case PlSqlParser.MAPPING:
+ case PlSqlParser.MASTER:
+ case PlSqlParser.MATCHED:
+ case PlSqlParser.MATCHES:
+ case PlSqlParser.MATCH:
+ case PlSqlParser.MATCH_NUMBER:
+ case PlSqlParser.MATCH_RECOGNIZE:
+ case PlSqlParser.MATERIALIZED:
+ case PlSqlParser.MATERIALIZE:
+ case PlSqlParser.MAXARCHLOGS:
+ case PlSqlParser.MAXDATAFILES:
+ case PlSqlParser.MAXEXTENTS:
+ case PlSqlParser.MAXIMIZE:
+ case PlSqlParser.MAXINSTANCES:
+ case PlSqlParser.MAXLOGFILES:
+ case PlSqlParser.MAXLOGHISTORY:
+ case PlSqlParser.MAXLOGMEMBERS:
+ case PlSqlParser.MAX_SHARED_TEMP_SIZE:
+ case PlSqlParser.MAXSIZE:
+ case PlSqlParser.MAXTRANS:
+ case PlSqlParser.MAXVALUE:
+ case PlSqlParser.MEASURE:
+ case PlSqlParser.MEASURES:
+ case PlSqlParser.MEDIUM:
+ case PlSqlParser.MEMBER:
+ case PlSqlParser.MEMCOMPRESS:
+ case PlSqlParser.MEMORY:
+ case PlSqlParser.MERGEACTIONS:
+ case PlSqlParser.MERGE_AJ:
+ case PlSqlParser.MERGE_CONST_ON:
+ case PlSqlParser.MERGE:
+ case PlSqlParser.MERGE_SJ:
+ case PlSqlParser.METADATA:
+ case PlSqlParser.METHOD:
+ case PlSqlParser.MIGRATE:
+ case PlSqlParser.MIGRATION:
+ case PlSqlParser.MINEXTENTS:
+ case PlSqlParser.MINIMIZE:
+ case PlSqlParser.MINIMUM:
+ case PlSqlParser.MINING:
+ case PlSqlParser.MINUS_NULL:
+ case PlSqlParser.MINUTE:
+ case PlSqlParser.MINVALUE:
+ case PlSqlParser.MIRRORCOLD:
+ case PlSqlParser.MIRRORHOT:
+ case PlSqlParser.MIRROR:
+ case PlSqlParser.MLSLABEL:
+ case PlSqlParser.MODEL_COMPILE_SUBQUERY:
+ case PlSqlParser.MODEL_DONTVERIFY_UNIQUENESS:
+ case PlSqlParser.MODEL_DYNAMIC_SUBQUERY:
+ case PlSqlParser.MODEL_MIN_ANALYSIS:
+ case PlSqlParser.MODEL:
+ case PlSqlParser.MODEL_NB:
+ case PlSqlParser.MODEL_NO_ANALYSIS:
+ case PlSqlParser.MODEL_PBY:
+ case PlSqlParser.MODEL_PUSH_REF:
+ case PlSqlParser.MODEL_SV:
+ case PlSqlParser.MODIFICATION:
+ case PlSqlParser.MODIFY_COLUMN_TYPE:
+ case PlSqlParser.MODIFY:
+ case PlSqlParser.MOD:
+ case PlSqlParser.MODULE:
+ case PlSqlParser.MONITORING:
+ case PlSqlParser.MONITOR:
+ case PlSqlParser.MONTH:
+ case PlSqlParser.MONTHS_BETWEEN:
+ case PlSqlParser.MONTHS:
+ case PlSqlParser.MOUNT:
+ case PlSqlParser.MOUNTPATH:
+ case PlSqlParser.MOVEMENT:
+ case PlSqlParser.MOVE:
+ case PlSqlParser.MULTIDIMENSIONAL:
+ case PlSqlParser.MULTISET:
+ case PlSqlParser.MV_MERGE:
+ case PlSqlParser.NAMED:
+ case PlSqlParser.NAME:
+ case PlSqlParser.NAMESPACE:
+ case PlSqlParser.NAN:
+ case PlSqlParser.NANVL:
+ case PlSqlParser.NATIONAL:
+ case PlSqlParser.NATIVE_FULL_OUTER_JOIN:
+ case PlSqlParser.NATIVE:
+ case PlSqlParser.NATURAL:
+ case PlSqlParser.NAV:
+ case PlSqlParser.NCHAR_CS:
+ case PlSqlParser.NCHAR:
+ case PlSqlParser.NCHR:
+ case PlSqlParser.NCLOB:
+ case PlSqlParser.NEEDED:
+ case PlSqlParser.NEG:
+ case PlSqlParser.NESTED:
+ case PlSqlParser.NESTED_TABLE_FAST_INSERT:
+ case PlSqlParser.NESTED_TABLE_GET_REFS:
+ case PlSqlParser.NESTED_TABLE_ID:
+ case PlSqlParser.NESTED_TABLE_SET_REFS:
+ case PlSqlParser.NESTED_TABLE_SET_SETID:
+ case PlSqlParser.NETWORK:
+ case PlSqlParser.NEVER:
+ case PlSqlParser.NEW:
+ case PlSqlParser.NEW_TIME:
+ case PlSqlParser.NEXT_DAY:
+ case PlSqlParser.NEXT:
+ case PlSqlParser.NL_AJ:
+ case PlSqlParser.NLJ_BATCHING:
+ case PlSqlParser.NLJ_INDEX_FILTER:
+ case PlSqlParser.NLJ_INDEX_SCAN:
+ case PlSqlParser.NLJ_PREFETCH:
+ case PlSqlParser.NLS_CALENDAR:
+ case PlSqlParser.NLS_CHARACTERSET:
+ case PlSqlParser.NLS_CHARSET_DECL_LEN:
+ case PlSqlParser.NLS_CHARSET_ID:
+ case PlSqlParser.NLS_CHARSET_NAME:
+ case PlSqlParser.NLS_COMP:
+ case PlSqlParser.NLS_CURRENCY:
+ case PlSqlParser.NLS_DATE_FORMAT:
+ case PlSqlParser.NLS_DATE_LANGUAGE:
+ case PlSqlParser.NLS_INITCAP:
+ case PlSqlParser.NLS_ISO_CURRENCY:
+ case PlSqlParser.NL_SJ:
+ case PlSqlParser.NLS_LANG:
+ case PlSqlParser.NLS_LANGUAGE:
+ case PlSqlParser.NLS_LENGTH_SEMANTICS:
+ case PlSqlParser.NLS_LOWER:
+ case PlSqlParser.NLS_NCHAR_CONV_EXCP:
+ case PlSqlParser.NLS_NUMERIC_CHARACTERS:
+ case PlSqlParser.NLS_SORT:
+ case PlSqlParser.NLSSORT:
+ case PlSqlParser.NLS_SPECIAL_CHARS:
+ case PlSqlParser.NLS_TERRITORY:
+ case PlSqlParser.NLS_UPPER:
+ case PlSqlParser.NO_ACCESS:
+ case PlSqlParser.NO_ADAPTIVE_PLAN:
+ case PlSqlParser.NO_ANSI_REARCH:
+ case PlSqlParser.NOAPPEND:
+ case PlSqlParser.NOARCHIVELOG:
+ case PlSqlParser.NOAUDIT:
+ case PlSqlParser.NO_AUTO_REOPTIMIZE:
+ case PlSqlParser.NO_BASETABLE_MULTIMV_REWRITE:
+ case PlSqlParser.NO_BATCH_TABLE_ACCESS_BY_ROWID:
+ case PlSqlParser.NO_BIND_AWARE:
+ case PlSqlParser.NO_BUFFER:
+ case PlSqlParser.NOCACHE:
+ case PlSqlParser.NO_CARTESIAN:
+ case PlSqlParser.NO_CHECK_ACL_REWRITE:
+ case PlSqlParser.NO_CLUSTER_BY_ROWID:
+ case PlSqlParser.NO_CLUSTERING:
+ case PlSqlParser.NO_COALESCE_SQ:
+ case PlSqlParser.NO_COMMON_DATA:
+ case PlSqlParser.NO_CONNECT_BY_CB_WHR_ONLY:
+ case PlSqlParser.NO_CONNECT_BY_COMBINE_SW:
+ case PlSqlParser.NO_CONNECT_BY_COST_BASED:
+ case PlSqlParser.NO_CONNECT_BY_ELIM_DUPS:
+ case PlSqlParser.NO_CONNECT_BY_FILTERING:
+ case PlSqlParser.NOCOPY:
+ case PlSqlParser.NO_COST_XML_QUERY_REWRITE:
+ case PlSqlParser.NO_CPU_COSTING:
+ case PlSqlParser.NOCPU_COSTING:
+ case PlSqlParser.NOCYCLE:
+ case PlSqlParser.NO_DATA_SECURITY_REWRITE:
+ case PlSqlParser.NO_DECORRELATE:
+ case PlSqlParser.NODELAY:
+ case PlSqlParser.NO_DOMAIN_INDEX_FILTER:
+ case PlSqlParser.NO_DST_UPGRADE_INSERT_CONV:
+ case PlSqlParser.NO_ELIM_GROUPBY:
+ case PlSqlParser.NO_ELIMINATE_JOIN:
+ case PlSqlParser.NO_ELIMINATE_OBY:
+ case PlSqlParser.NO_ELIMINATE_OUTER_JOIN:
+ case PlSqlParser.NOENTITYESCAPING:
+ case PlSqlParser.NO_EXPAND_GSET_TO_UNION:
+ case PlSqlParser.NO_EXPAND:
+ case PlSqlParser.NO_EXPAND_TABLE:
+ case PlSqlParser.NO_FACT:
+ case PlSqlParser.NO_FACTORIZE_JOIN:
+ case PlSqlParser.NO_FILTERING:
+ case PlSqlParser.NOFORCE:
+ case PlSqlParser.NO_FULL_OUTER_JOIN_TO_OUTER:
+ case PlSqlParser.NO_GATHER_OPTIMIZER_STATISTICS:
+ case PlSqlParser.NO_GBY_PUSHDOWN:
+ case PlSqlParser.NOGUARANTEE:
+ case PlSqlParser.NO_INDEX_FFS:
+ case PlSqlParser.NO_INDEX:
+ case PlSqlParser.NO_INDEX_SS:
+ case PlSqlParser.NO_INMEMORY:
+ case PlSqlParser.NO_INMEMORY_PRUNING:
+ case PlSqlParser.NOKEEP:
+ case PlSqlParser.NO_LOAD:
+ case PlSqlParser.NOLOCAL:
+ case PlSqlParser.NOLOGGING:
+ case PlSqlParser.NOMAPPING:
+ case PlSqlParser.NOMAXVALUE:
+ case PlSqlParser.NO_MERGE:
+ case PlSqlParser.NOMINIMIZE:
+ case PlSqlParser.NOMINVALUE:
+ case PlSqlParser.NO_MODEL_PUSH_REF:
+ case PlSqlParser.NO_MONITORING:
+ case PlSqlParser.NOMONITORING:
+ case PlSqlParser.NO_MONITOR:
+ case PlSqlParser.NO_MULTIMV_REWRITE:
+ case PlSqlParser.NO_NATIVE_FULL_OUTER_JOIN:
+ case PlSqlParser.NONBLOCKING:
+ case PlSqlParser.NONEDITIONABLE:
+ case PlSqlParser.NONE:
+ case PlSqlParser.NO_NLJ_BATCHING:
+ case PlSqlParser.NO_NLJ_PREFETCH:
+ case PlSqlParser.NO:
+ case PlSqlParser.NONSCHEMA:
+ case PlSqlParser.NO_OBJECT_LINK:
+ case PlSqlParser.NOORDER:
+ case PlSqlParser.NO_ORDER_ROLLUPS:
+ case PlSqlParser.NO_OUTER_JOIN_TO_ANTI:
+ case PlSqlParser.NO_OUTER_JOIN_TO_INNER:
+ case PlSqlParser.NOOVERRIDE:
+ case PlSqlParser.NO_PARALLEL_INDEX:
+ case PlSqlParser.NOPARALLEL_INDEX:
+ case PlSqlParser.NO_PARALLEL:
+ case PlSqlParser.NOPARALLEL:
+ case PlSqlParser.NO_PARTIAL_COMMIT:
+ case PlSqlParser.NO_PARTIAL_JOIN:
+ case PlSqlParser.NO_PARTIAL_ROLLUP_PUSHDOWN:
+ case PlSqlParser.NOPARTITION:
+ case PlSqlParser.NO_PLACE_DISTINCT:
+ case PlSqlParser.NO_PLACE_GROUP_BY:
+ case PlSqlParser.NO_PQ_CONCURRENT_UNION:
+ case PlSqlParser.NO_PQ_MAP:
+ case PlSqlParser.NO_PQ_REPLICATE:
+ case PlSqlParser.NO_PQ_SKEW:
+ case PlSqlParser.NO_PRUNE_GSETS:
+ case PlSqlParser.NO_PULL_PRED:
+ case PlSqlParser.NO_PUSH_PRED:
+ case PlSqlParser.NO_PUSH_SUBQ:
+ case PlSqlParser.NO_PX_FAULT_TOLERANCE:
+ case PlSqlParser.NO_PX_JOIN_FILTER:
+ case PlSqlParser.NO_QKN_BUFF:
+ case PlSqlParser.NO_QUERY_TRANSFORMATION:
+ case PlSqlParser.NO_REF_CASCADE:
+ case PlSqlParser.NORELOCATE:
+ case PlSqlParser.NORELY:
+ case PlSqlParser.NOREPAIR:
+ case PlSqlParser.NOREPLAY:
+ case PlSqlParser.NORESETLOGS:
+ case PlSqlParser.NO_RESULT_CACHE:
+ case PlSqlParser.NOREVERSE:
+ case PlSqlParser.NO_REWRITE:
+ case PlSqlParser.NOREWRITE:
+ case PlSqlParser.NORMAL:
+ case PlSqlParser.NO_ROOT_SW_FOR_LOCAL:
+ case PlSqlParser.NOROWDEPENDENCIES:
+ case PlSqlParser.NOSCHEMACHECK:
+ case PlSqlParser.NOSEGMENT:
+ case PlSqlParser.NO_SEMIJOIN:
+ case PlSqlParser.NO_SEMI_TO_INNER:
+ case PlSqlParser.NO_SET_TO_JOIN:
+ case PlSqlParser.NOSORT:
+ case PlSqlParser.NO_SQL_TRANSLATION:
+ case PlSqlParser.NO_SQL_TUNE:
+ case PlSqlParser.NO_STAR_TRANSFORMATION:
+ case PlSqlParser.NO_STATEMENT_QUEUING:
+ case PlSqlParser.NO_STATS_GSETS:
+ case PlSqlParser.NOSTRICT:
+ case PlSqlParser.NO_SUBQUERY_PRUNING:
+ case PlSqlParser.NO_SUBSTRB_PAD:
+ case PlSqlParser.NO_SWAP_JOIN_INPUTS:
+ case PlSqlParser.NOSWITCH:
+ case PlSqlParser.NO_TABLE_LOOKUP_BY_NL:
+ case PlSqlParser.NO_TEMP_TABLE:
+ case PlSqlParser.NOTHING:
+ case PlSqlParser.NOTIFICATION:
+ case PlSqlParser.NO_TRANSFORM_DISTINCT_AGG:
+ case PlSqlParser.NO_UNNEST:
+ case PlSqlParser.NO_USE_CUBE:
+ case PlSqlParser.NO_USE_HASH_AGGREGATION:
+ case PlSqlParser.NO_USE_HASH_GBY_FOR_PUSHDOWN:
+ case PlSqlParser.NO_USE_HASH:
+ case PlSqlParser.NO_USE_INVISIBLE_INDEXES:
+ case PlSqlParser.NO_USE_MERGE:
+ case PlSqlParser.NO_USE_NL:
+ case PlSqlParser.NO_USE_VECTOR_AGGREGATION:
+ case PlSqlParser.NOVALIDATE:
+ case PlSqlParser.NO_VECTOR_TRANSFORM_DIMS:
+ case PlSqlParser.NO_VECTOR_TRANSFORM_FACT:
+ case PlSqlParser.NO_VECTOR_TRANSFORM:
+ case PlSqlParser.NO_XDB_FASTPATH_INSERT:
+ case PlSqlParser.NO_XML_DML_REWRITE:
+ case PlSqlParser.NO_XMLINDEX_REWRITE_IN_SELECT:
+ case PlSqlParser.NO_XMLINDEX_REWRITE:
+ case PlSqlParser.NO_XML_QUERY_REWRITE:
+ case PlSqlParser.NO_ZONEMAP:
+ case PlSqlParser.NTH_VALUE:
+ case PlSqlParser.NULLIF:
+ case PlSqlParser.NULLS:
+ case PlSqlParser.NUMBER:
+ case PlSqlParser.NUMERIC:
+ case PlSqlParser.NUM_INDEX_KEYS:
+ case PlSqlParser.NUMTODSINTERVAL:
+ case PlSqlParser.NUMTOYMINTERVAL:
+ case PlSqlParser.NVARCHAR2:
+ case PlSqlParser.NVL2:
+ case PlSqlParser.OBJECT2XML:
+ case PlSqlParser.OBJECT:
+ case PlSqlParser.OBJ_ID:
+ case PlSqlParser.OBJNO:
+ case PlSqlParser.OBJNO_REUSE:
+ case PlSqlParser.OCCURENCES:
+ case PlSqlParser.OFFLINE:
+ case PlSqlParser.OFF:
+ case PlSqlParser.OFFSET:
+ case PlSqlParser.OIDINDEX:
+ case PlSqlParser.OID:
+ case PlSqlParser.OLAP:
+ case PlSqlParser.OLD:
+ case PlSqlParser.OLD_PUSH_PRED:
+ case PlSqlParser.OLS:
+ case PlSqlParser.OLTP:
+ case PlSqlParser.OMIT:
+ case PlSqlParser.ONE:
+ case PlSqlParser.ONLINE:
+ case PlSqlParser.ONLY:
+ case PlSqlParser.OPAQUE:
+ case PlSqlParser.OPAQUE_TRANSFORM:
+ case PlSqlParser.OPAQUE_XCANONICAL:
+ case PlSqlParser.OPCODE:
+ case PlSqlParser.OPEN:
+ case PlSqlParser.OPERATIONS:
+ case PlSqlParser.OPERATOR:
+ case PlSqlParser.OPT_ESTIMATE:
+ case PlSqlParser.OPTIMAL:
+ case PlSqlParser.OPTIMIZE:
+ case PlSqlParser.OPTIMIZER_FEATURES_ENABLE:
+ case PlSqlParser.OPTIMIZER_GOAL:
+ case PlSqlParser.OPT_PARAM:
+ case PlSqlParser.ORA_BRANCH:
+ case PlSqlParser.ORA_CHECK_ACL:
+ case PlSqlParser.ORA_CHECK_PRIVILEGE:
+ case PlSqlParser.ORA_CLUSTERING:
+ case PlSqlParser.ORADATA:
+ case PlSqlParser.ORADEBUG:
+ case PlSqlParser.ORA_DST_AFFECTED:
+ case PlSqlParser.ORA_DST_CONVERT:
+ case PlSqlParser.ORA_DST_ERROR:
+ case PlSqlParser.ORA_GET_ACLIDS:
+ case PlSqlParser.ORA_GET_PRIVILEGES:
+ case PlSqlParser.ORA_HASH:
+ case PlSqlParser.ORA_INVOKING_USERID:
+ case PlSqlParser.ORA_INVOKING_USER:
+ case PlSqlParser.ORA_INVOKING_XS_USER_GUID:
+ case PlSqlParser.ORA_INVOKING_XS_USER:
+ case PlSqlParser.ORA_RAWCOMPARE:
+ case PlSqlParser.ORA_RAWCONCAT:
+ case PlSqlParser.ORA_ROWSCN:
+ case PlSqlParser.ORA_ROWSCN_RAW:
+ case PlSqlParser.ORA_ROWVERSION:
+ case PlSqlParser.ORA_TABVERSION:
+ case PlSqlParser.ORA_WRITE_TIME:
+ case PlSqlParser.ORDERED:
+ case PlSqlParser.ORDERED_PREDICATES:
+ case PlSqlParser.ORDINALITY:
+ case PlSqlParser.OR_EXPAND:
+ case PlSqlParser.ORGANIZATION:
+ case PlSqlParser.OR_PREDICATES:
+ case PlSqlParser.OSERROR:
+ case PlSqlParser.OTHER:
+ case PlSqlParser.OUTER_JOIN_TO_ANTI:
+ case PlSqlParser.OUTER_JOIN_TO_INNER:
+ case PlSqlParser.OUTER:
+ case PlSqlParser.OUTLINE_LEAF:
+ case PlSqlParser.OUTLINE:
+ case PlSqlParser.OUT_OF_LINE:
+ case PlSqlParser.OUT:
+ case PlSqlParser.OVERFLOW_NOMOVE:
+ case PlSqlParser.OVERFLOW:
+ case PlSqlParser.OVERLAPS:
+ case PlSqlParser.OVER:
+ case PlSqlParser.OVERRIDING:
+ case PlSqlParser.OWNER:
+ case PlSqlParser.OWNERSHIP:
+ case PlSqlParser.OWN:
+ case PlSqlParser.PACKAGE:
+ case PlSqlParser.PACKAGES:
+ case PlSqlParser.PARALLEL_ENABLE:
+ case PlSqlParser.PARALLEL_INDEX:
+ case PlSqlParser.PARALLEL:
+ case PlSqlParser.PARAMETERS:
+ case PlSqlParser.PARAM:
+ case PlSqlParser.PARENT:
+ case PlSqlParser.PARITY:
+ case PlSqlParser.PARTIAL_JOIN:
+ case PlSqlParser.PARTIALLY:
+ case PlSqlParser.PARTIAL:
+ case PlSqlParser.PARTIAL_ROLLUP_PUSHDOWN:
+ case PlSqlParser.PARTITION_HASH:
+ case PlSqlParser.PARTITION_LIST:
+ case PlSqlParser.PARTITION:
+ case PlSqlParser.PARTITION_RANGE:
+ case PlSqlParser.PARTITIONS:
+ case PlSqlParser.PARTNUMINST:
+ case PlSqlParser.PASSING:
+ case PlSqlParser.PASSWORD_GRACE_TIME:
+ case PlSqlParser.PASSWORD_LIFE_TIME:
+ case PlSqlParser.PASSWORD_LOCK_TIME:
+ case PlSqlParser.PASSWORD:
+ case PlSqlParser.PASSWORD_REUSE_MAX:
+ case PlSqlParser.PASSWORD_REUSE_TIME:
+ case PlSqlParser.PASSWORD_VERIFY_FUNCTION:
+ case PlSqlParser.PAST:
+ case PlSqlParser.PATCH:
+ case PlSqlParser.PATH:
+ case PlSqlParser.PATH_PREFIX:
+ case PlSqlParser.PATHS:
+ case PlSqlParser.PATTERN:
+ case PlSqlParser.PBL_HS_BEGIN:
+ case PlSqlParser.PBL_HS_END:
+ case PlSqlParser.PCTINCREASE:
+ case PlSqlParser.PCTTHRESHOLD:
+ case PlSqlParser.PCTUSED:
+ case PlSqlParser.PCTVERSION:
+ case PlSqlParser.PENDING:
+ case PlSqlParser.PERCENT_KEYWORD:
+ case PlSqlParser.PERCENT_RANKM:
+ case PlSqlParser.PERFORMANCE:
+ case PlSqlParser.PERIOD_KEYWORD:
+ case PlSqlParser.PERMANENT:
+ case PlSqlParser.PERMISSION:
+ case PlSqlParser.PERMUTE:
+ case PlSqlParser.PER:
+ case PlSqlParser.PFILE:
+ case PlSqlParser.PHYSICAL:
+ case PlSqlParser.PIKEY:
+ case PlSqlParser.PIPELINED:
+ case PlSqlParser.PIV_GB:
+ case PlSqlParser.PIVOT:
+ case PlSqlParser.PIV_SSF:
+ case PlSqlParser.PLACE_DISTINCT:
+ case PlSqlParser.PLACE_GROUP_BY:
+ case PlSqlParser.PLAN:
+ case PlSqlParser.PLSCOPE_SETTINGS:
+ case PlSqlParser.PLS_INTEGER:
+ case PlSqlParser.PLSQL_CCFLAGS:
+ case PlSqlParser.PLSQL_CODE_TYPE:
+ case PlSqlParser.PLSQL_DEBUG:
+ case PlSqlParser.PLSQL_OPTIMIZE_LEVEL:
+ case PlSqlParser.PLSQL_WARNINGS:
+ case PlSqlParser.PLUGGABLE:
+ case PlSqlParser.POINT:
+ case PlSqlParser.POLICY:
+ case PlSqlParser.POOL_16K:
+ case PlSqlParser.POOL_2K:
+ case PlSqlParser.POOL_32K:
+ case PlSqlParser.POOL_4K:
+ case PlSqlParser.POOL_8K:
+ case PlSqlParser.POSITIVEN:
+ case PlSqlParser.POSITIVE:
+ case PlSqlParser.POST_TRANSACTION:
+ case PlSqlParser.POWERMULTISET_BY_CARDINALITY:
+ case PlSqlParser.POWERMULTISET:
+ case PlSqlParser.POWER:
+ case PlSqlParser.PQ_CONCURRENT_UNION:
+ case PlSqlParser.PQ_DISTRIBUTE:
+ case PlSqlParser.PQ_DISTRIBUTE_WINDOW:
+ case PlSqlParser.PQ_FILTER:
+ case PlSqlParser.PQ_MAP:
+ case PlSqlParser.PQ_NOMAP:
+ case PlSqlParser.PQ_REPLICATE:
+ case PlSqlParser.PQ_SKEW:
+ case PlSqlParser.PRAGMA:
+ case PlSqlParser.PREBUILT:
+ case PlSqlParser.PRECEDES:
+ case PlSqlParser.PRECEDING:
+ case PlSqlParser.PRECISION:
+ case PlSqlParser.PRECOMPUTE_SUBQUERY:
+ case PlSqlParser.PREDICATE_REORDERS:
+ case PlSqlParser.PRELOAD:
+ case PlSqlParser.PREPARE:
+ case PlSqlParser.PRESENTNNV:
+ case PlSqlParser.PRESENT:
+ case PlSqlParser.PRESENTV:
+ case PlSqlParser.PRESERVE_OID:
+ case PlSqlParser.PRESERVE:
+ case PlSqlParser.PRETTY:
+ case PlSqlParser.PREVIOUS:
+ case PlSqlParser.PREV:
+ case PlSqlParser.PRIMARY:
+ case PlSqlParser.PRINTBLOBTOCLOB:
+ case PlSqlParser.PRIORITY:
+ case PlSqlParser.PRIVATE:
+ case PlSqlParser.PRIVATE_SGA:
+ case PlSqlParser.PRIVILEGED:
+ case PlSqlParser.PRIVILEGE:
+ case PlSqlParser.PRIVILEGES:
+ case PlSqlParser.PROCEDURAL:
+ case PlSqlParser.PROCEDURE:
+ case PlSqlParser.PROCESS:
+ case PlSqlParser.PROFILE:
+ case PlSqlParser.PROGRAM:
+ case PlSqlParser.PROJECT:
+ case PlSqlParser.PROPAGATE:
+ case PlSqlParser.PROTECTED:
+ case PlSqlParser.PROTECTION:
+ case PlSqlParser.PROXY:
+ case PlSqlParser.PRUNING:
+ case PlSqlParser.PULL_PRED:
+ case PlSqlParser.PURGE:
+ case PlSqlParser.PUSH_PRED:
+ case PlSqlParser.PUSH_SUBQ:
+ case PlSqlParser.PX_FAULT_TOLERANCE:
+ case PlSqlParser.PX_GRANULE:
+ case PlSqlParser.PX_JOIN_FILTER:
+ case PlSqlParser.QB_NAME:
+ case PlSqlParser.QUERY_BLOCK:
+ case PlSqlParser.QUERY:
+ case PlSqlParser.QUEUE_CURR:
+ case PlSqlParser.QUEUE:
+ case PlSqlParser.QUEUE_ROWP:
+ case PlSqlParser.QUIESCE:
+ case PlSqlParser.QUORUM:
+ case PlSqlParser.QUOTA:
+ case PlSqlParser.RAISE:
+ case PlSqlParser.RANDOM_LOCAL:
+ case PlSqlParser.RANDOM:
+ case PlSqlParser.RANGE:
+ case PlSqlParser.RANKM:
+ case PlSqlParser.RAPIDLY:
+ case PlSqlParser.RAW:
+ case PlSqlParser.RAWTOHEX:
+ case PlSqlParser.RAWTONHEX:
+ case PlSqlParser.RBA:
+ case PlSqlParser.RBO_OUTLINE:
+ case PlSqlParser.RDBA:
+ case PlSqlParser.READ:
+ case PlSqlParser.READS:
+ case PlSqlParser.REALM:
+ case PlSqlParser.REAL:
+ case PlSqlParser.REBALANCE:
+ case PlSqlParser.REBUILD:
+ case PlSqlParser.RECORD:
+ case PlSqlParser.RECORDS_PER_BLOCK:
+ case PlSqlParser.RECOVERABLE:
+ case PlSqlParser.RECOVER:
+ case PlSqlParser.RECOVERY:
+ case PlSqlParser.RECYCLEBIN:
+ case PlSqlParser.RECYCLE:
+ case PlSqlParser.REDACTION:
+ case PlSqlParser.REDEFINE:
+ case PlSqlParser.REDO:
+ case PlSqlParser.REDUCED:
+ case PlSqlParser.REDUNDANCY:
+ case PlSqlParser.REF_CASCADE_CURSOR:
+ case PlSqlParser.REFERENCED:
+ case PlSqlParser.REFERENCE:
+ case PlSqlParser.REFERENCES:
+ case PlSqlParser.REFERENCING:
+ case PlSqlParser.REF:
+ case PlSqlParser.REFRESH:
+ case PlSqlParser.REFTOHEX:
+ case PlSqlParser.REGEXP_COUNT:
+ case PlSqlParser.REGEXP_INSTR:
+ case PlSqlParser.REGEXP_LIKE:
+ case PlSqlParser.REGEXP_REPLACE:
+ case PlSqlParser.REGEXP_SUBSTR:
+ case PlSqlParser.REGISTER:
+ case PlSqlParser.REGR_AVGX:
+ case PlSqlParser.REGR_AVGY:
+ case PlSqlParser.REGR_COUNT:
+ case PlSqlParser.REGR_INTERCEPT:
+ case PlSqlParser.REGR_R2:
+ case PlSqlParser.REGR_SLOPE:
+ case PlSqlParser.REGR_SXX:
+ case PlSqlParser.REGR_SXY:
+ case PlSqlParser.REGR_SYY:
+ case PlSqlParser.REGULAR:
+ case PlSqlParser.REJECT:
+ case PlSqlParser.REKEY:
+ case PlSqlParser.RELATIONAL:
+ case PlSqlParser.RELOCATE:
+ case PlSqlParser.RELY:
+ case PlSqlParser.REMAINDER:
+ case PlSqlParser.REMOTE_MAPPED:
+ case PlSqlParser.REMOVE:
+ case PlSqlParser.RENAME:
+ case PlSqlParser.REPAIR:
+ case PlSqlParser.REPEAT:
+ case PlSqlParser.REPLACE:
+ case PlSqlParser.REPLICATION:
+ case PlSqlParser.REQUIRED:
+ case PlSqlParser.RESETLOGS:
+ case PlSqlParser.RESET:
+ case PlSqlParser.RESIZE:
+ case PlSqlParser.RESOLVE:
+ case PlSqlParser.RESOLVER:
+ case PlSqlParser.RESPECT:
+ case PlSqlParser.RESTART:
+ case PlSqlParser.RESTORE_AS_INTERVALS:
+ case PlSqlParser.RESTORE:
+ case PlSqlParser.RESTRICT_ALL_REF_CONS:
+ case PlSqlParser.RESTRICTED:
+ case PlSqlParser.RESTRICT_REFERENCES:
+ case PlSqlParser.RESTRICT:
+ case PlSqlParser.RESULT_CACHE:
+ case PlSqlParser.RESULT:
+ case PlSqlParser.RESUMABLE:
+ case PlSqlParser.RESUME:
+ case PlSqlParser.RETENTION:
+ case PlSqlParser.RETRY_ON_ROW_CHANGE:
+ case PlSqlParser.RETURNING:
+ case PlSqlParser.RETURN:
+ case PlSqlParser.REUSE:
+ case PlSqlParser.REVERSE:
+ case PlSqlParser.REWRITE_OR_ERROR:
+ case PlSqlParser.REWRITE:
+ case PlSqlParser.RIGHT:
+ case PlSqlParser.ROLE:
+ case PlSqlParser.ROLESET:
+ case PlSqlParser.ROLES:
+ case PlSqlParser.ROLLBACK:
+ case PlSqlParser.ROLLING:
+ case PlSqlParser.ROLLUP:
+ case PlSqlParser.ROWDEPENDENCIES:
+ case PlSqlParser.ROWID_MAPPING_TABLE:
+ case PlSqlParser.ROWID:
+ case PlSqlParser.ROWIDTOCHAR:
+ case PlSqlParser.ROWIDTONCHAR:
+ case PlSqlParser.ROW_LENGTH:
+ case PlSqlParser.ROWNUM:
+ case PlSqlParser.ROW:
+ case PlSqlParser.ROWS:
+ case PlSqlParser.RPAD:
+ case PlSqlParser.RTRIM:
+ case PlSqlParser.RULE:
+ case PlSqlParser.RULES:
+ case PlSqlParser.RUNNING:
+ case PlSqlParser.SALT:
+ case PlSqlParser.SAMPLE:
+ case PlSqlParser.SAVE_AS_INTERVALS:
+ case PlSqlParser.SAVEPOINT:
+ case PlSqlParser.SAVE:
+ case PlSqlParser.SB4:
+ case PlSqlParser.SCALE_ROWS:
+ case PlSqlParser.SCALE:
+ case PlSqlParser.SCAN_INSTANCES:
+ case PlSqlParser.SCAN:
+ case PlSqlParser.SCHEDULER:
+ case PlSqlParser.SCHEMACHECK:
+ case PlSqlParser.SCHEMA:
+ case PlSqlParser.SCN_ASCENDING:
+ case PlSqlParser.SCN:
+ case PlSqlParser.SCOPE:
+ case PlSqlParser.SCRUB:
+ case PlSqlParser.SD_ALL:
+ case PlSqlParser.SD_INHIBIT:
+ case PlSqlParser.SDO_GEOM_MBR:
+ case PlSqlParser.SD_SHOW:
+ case PlSqlParser.SEARCH:
+ case PlSqlParser.SECOND:
+ case PlSqlParser.SECRET:
+ case PlSqlParser.SECUREFILE_DBA:
+ case PlSqlParser.SECUREFILE:
+ case PlSqlParser.SECURITY:
+ case PlSqlParser.SEED:
+ case PlSqlParser.SEG_BLOCK:
+ case PlSqlParser.SEG_FILE:
+ case PlSqlParser.SEGMENT:
+ case PlSqlParser.SELECTIVITY:
+ case PlSqlParser.SELF:
+ case PlSqlParser.SEMIJOIN_DRIVER:
+ case PlSqlParser.SEMIJOIN:
+ case PlSqlParser.SEMI_TO_INNER:
+ case PlSqlParser.SEQUENCED:
+ case PlSqlParser.SEQUENCE:
+ case PlSqlParser.SEQUENTIAL:
+ case PlSqlParser.SERIALIZABLE:
+ case PlSqlParser.SERIALLY_REUSABLE:
+ case PlSqlParser.SERIAL:
+ case PlSqlParser.SERVERERROR:
+ case PlSqlParser.SERVICE_NAME_CONVERT:
+ case PlSqlParser.SERVICES:
+ case PlSqlParser.SESSION_CACHED_CURSORS:
+ case PlSqlParser.SESSION:
+ case PlSqlParser.SESSIONS_PER_USER:
+ case PlSqlParser.SESSIONTIMEZONE:
+ case PlSqlParser.SESSIONTZNAME:
+ case PlSqlParser.SET:
+ case PlSqlParser.SETS:
+ case PlSqlParser.SETTINGS:
+ case PlSqlParser.SET_TO_JOIN:
+ case PlSqlParser.SEVERE:
+ case PlSqlParser.SHARED_POOL:
+ case PlSqlParser.SHARED:
+ case PlSqlParser.SHARING:
+ case PlSqlParser.SHELFLIFE:
+ case PlSqlParser.SHOW:
+ case PlSqlParser.SHRINK:
+ case PlSqlParser.SHUTDOWN:
+ case PlSqlParser.SIBLINGS:
+ case PlSqlParser.SID:
+ case PlSqlParser.SIGNAL_COMPONENT:
+ case PlSqlParser.SIGNAL_FUNCTION:
+ case PlSqlParser.SIGN:
+ case PlSqlParser.SIGNTYPE:
+ case PlSqlParser.SIMPLE_INTEGER:
+ case PlSqlParser.SIMPLE:
+ case PlSqlParser.SINGLE:
+ case PlSqlParser.SINGLETASK:
+ case PlSqlParser.SINH:
+ case PlSqlParser.SIN:
+ case PlSqlParser.SKIP_EXT_OPTIMIZER:
+ case PlSqlParser.SKIP_:
+ case PlSqlParser.SKIP_UNQ_UNUSABLE_IDX:
+ case PlSqlParser.SKIP_UNUSABLE_INDEXES:
+ case PlSqlParser.SMALLFILE:
+ case PlSqlParser.SMALLINT:
+ case PlSqlParser.SNAPSHOT:
+ case PlSqlParser.SOME:
+ case PlSqlParser.SORT:
+ case PlSqlParser.SOUNDEX:
+ case PlSqlParser.SOURCE_FILE_DIRECTORY:
+ case PlSqlParser.SOURCE_FILE_NAME_CONVERT:
+ case PlSqlParser.SOURCE:
+ case PlSqlParser.SPACE_KEYWORD:
+ case PlSqlParser.SPECIFICATION:
+ case PlSqlParser.SPFILE:
+ case PlSqlParser.SPLIT:
+ case PlSqlParser.SPREADSHEET:
+ case PlSqlParser.SQLDATA:
+ case PlSqlParser.SQLERROR:
+ case PlSqlParser.SQLLDR:
+ case PlSqlParser.SQL:
+ case PlSqlParser.SQL_TRACE:
+ case PlSqlParser.SQL_TRANSLATION_PROFILE:
+ case PlSqlParser.SQRT:
+ case PlSqlParser.STALE:
+ case PlSqlParser.STANDALONE:
+ case PlSqlParser.STANDARD_HASH:
+ case PlSqlParser.STANDBY_MAX_DATA_DELAY:
+ case PlSqlParser.STANDBYS:
+ case PlSqlParser.STANDBY:
+ case PlSqlParser.STAR:
+ case PlSqlParser.STAR_TRANSFORMATION:
+ case PlSqlParser.STARTUP:
+ case PlSqlParser.STATEMENT_ID:
+ case PlSqlParser.STATEMENT_QUEUING:
+ case PlSqlParser.STATEMENTS:
+ case PlSqlParser.STATEMENT:
+ case PlSqlParser.STATE:
+ case PlSqlParser.STATIC:
+ case PlSqlParser.STATISTICS:
+ case PlSqlParser.STATS_BINOMIAL_TEST:
+ case PlSqlParser.STATS_CROSSTAB:
+ case PlSqlParser.STATS_F_TEST:
+ case PlSqlParser.STATS_KS_TEST:
+ case PlSqlParser.STATS_MODE:
+ case PlSqlParser.STATS_MW_TEST:
+ case PlSqlParser.STATS_ONE_WAY_ANOVA:
+ case PlSqlParser.STATS_T_TEST_INDEP:
+ case PlSqlParser.STATS_T_TEST_INDEPU:
+ case PlSqlParser.STATS_T_TEST_ONE:
+ case PlSqlParser.STATS_T_TEST_PAIRED:
+ case PlSqlParser.STATS_WSR_TEST:
+ case PlSqlParser.STDDEV_POP:
+ case PlSqlParser.STDDEV_SAMP:
+ case PlSqlParser.STOP:
+ case PlSqlParser.STORAGE:
+ case PlSqlParser.STORE:
+ case PlSqlParser.STREAMS:
+ case PlSqlParser.STREAM:
+ case PlSqlParser.STRICT:
+ case PlSqlParser.STRING:
+ case PlSqlParser.STRIPE_COLUMNS:
+ case PlSqlParser.STRIPE_WIDTH:
+ case PlSqlParser.STRIP:
+ case PlSqlParser.STRUCTURE:
+ case PlSqlParser.SUBMULTISET:
+ case PlSqlParser.SUBPARTITION_REL:
+ case PlSqlParser.SUBPARTITIONS:
+ case PlSqlParser.SUBPARTITION:
+ case PlSqlParser.SUBQUERIES:
+ case PlSqlParser.SUBQUERY_PRUNING:
+ case PlSqlParser.SUBSCRIBE:
+ case PlSqlParser.SUBSET:
+ case PlSqlParser.SUBSTITUTABLE:
+ case PlSqlParser.SUBSTR2:
+ case PlSqlParser.SUBSTR4:
+ case PlSqlParser.SUBSTRB:
+ case PlSqlParser.SUBSTRC:
+ case PlSqlParser.SUBTYPE:
+ case PlSqlParser.SUCCESSFUL:
+ case PlSqlParser.SUCCESS:
+ case PlSqlParser.SUMMARY:
+ case PlSqlParser.SUPPLEMENTAL:
+ case PlSqlParser.SUSPEND:
+ case PlSqlParser.SWAP_JOIN_INPUTS:
+ case PlSqlParser.SWITCHOVER:
+ case PlSqlParser.SWITCH:
+ case PlSqlParser.SYNCHRONOUS:
+ case PlSqlParser.SYNC:
+ case PlSqlParser.SYSASM:
+ case PlSqlParser.SYS_AUDIT:
+ case PlSqlParser.SYSAUX:
+ case PlSqlParser.SYSBACKUP:
+ case PlSqlParser.SYS_CHECKACL:
+ case PlSqlParser.SYS_CHECK_PRIVILEGE:
+ case PlSqlParser.SYS_CONNECT_BY_PATH:
+ case PlSqlParser.SYS_CONTEXT:
+ case PlSqlParser.SYSDATE:
+ case PlSqlParser.SYSDBA:
+ case PlSqlParser.SYS_DBURIGEN:
+ case PlSqlParser.SYSDG:
+ case PlSqlParser.SYS_DL_CURSOR:
+ case PlSqlParser.SYS_DM_RXFORM_CHR:
+ case PlSqlParser.SYS_DM_RXFORM_NUM:
+ case PlSqlParser.SYS_DOM_COMPARE:
+ case PlSqlParser.SYS_DST_PRIM2SEC:
+ case PlSqlParser.SYS_DST_SEC2PRIM:
+ case PlSqlParser.SYS_ET_BFILE_TO_RAW:
+ case PlSqlParser.SYS_ET_BLOB_TO_IMAGE:
+ case PlSqlParser.SYS_ET_IMAGE_TO_BLOB:
+ case PlSqlParser.SYS_ET_RAW_TO_BFILE:
+ case PlSqlParser.SYS_EXTPDTXT:
+ case PlSqlParser.SYS_EXTRACT_UTC:
+ case PlSqlParser.SYS_FBT_INSDEL:
+ case PlSqlParser.SYS_FILTER_ACLS:
+ case PlSqlParser.SYS_FNMATCHES:
+ case PlSqlParser.SYS_FNREPLACE:
+ case PlSqlParser.SYS_GET_ACLIDS:
+ case PlSqlParser.SYS_GET_COL_ACLIDS:
+ case PlSqlParser.SYS_GET_PRIVILEGES:
+ case PlSqlParser.SYS_GETTOKENID:
+ case PlSqlParser.SYS_GETXTIVAL:
+ case PlSqlParser.SYS_GUID:
+ case PlSqlParser.SYSGUID:
+ case PlSqlParser.SYSKM:
+ case PlSqlParser.SYS_MAKE_XMLNODEID:
+ case PlSqlParser.SYS_MAKEXML:
+ case PlSqlParser.SYS_MKXMLATTR:
+ case PlSqlParser.SYS_MKXTI:
+ case PlSqlParser.SYSOBJ:
+ case PlSqlParser.SYS_OP_ADT2BIN:
+ case PlSqlParser.SYS_OP_ADTCONS:
+ case PlSqlParser.SYS_OP_ALSCRVAL:
+ case PlSqlParser.SYS_OP_ATG:
+ case PlSqlParser.SYS_OP_BIN2ADT:
+ case PlSqlParser.SYS_OP_BITVEC:
+ case PlSqlParser.SYS_OP_BL2R:
+ case PlSqlParser.SYS_OP_BLOOM_FILTER_LIST:
+ case PlSqlParser.SYS_OP_BLOOM_FILTER:
+ case PlSqlParser.SYS_OP_C2C:
+ case PlSqlParser.SYS_OP_CAST:
+ case PlSqlParser.SYS_OP_CEG:
+ case PlSqlParser.SYS_OP_CL2C:
+ case PlSqlParser.SYS_OP_COMBINED_HASH:
+ case PlSqlParser.SYS_OP_COMP:
+ case PlSqlParser.SYS_OP_CONVERT:
+ case PlSqlParser.SYS_OP_COUNTCHG:
+ case PlSqlParser.SYS_OP_CSCONV:
+ case PlSqlParser.SYS_OP_CSCONVTEST:
+ case PlSqlParser.SYS_OP_CSR:
+ case PlSqlParser.SYS_OP_CSX_PATCH:
+ case PlSqlParser.SYS_OP_CYCLED_SEQ:
+ case PlSqlParser.SYS_OP_DECOMP:
+ case PlSqlParser.SYS_OP_DESCEND:
+ case PlSqlParser.SYS_OP_DISTINCT:
+ case PlSqlParser.SYS_OP_DRA:
+ case PlSqlParser.SYS_OP_DUMP:
+ case PlSqlParser.SYS_OP_DV_CHECK:
+ case PlSqlParser.SYS_OP_ENFORCE_NOT_NULL:
+ case PlSqlParser.SYSOPER:
+ case PlSqlParser.SYS_OP_EXTRACT:
+ case PlSqlParser.SYS_OP_GROUPING:
+ case PlSqlParser.SYS_OP_GUID:
+ case PlSqlParser.SYS_OP_HASH:
+ case PlSqlParser.SYS_OP_IIX:
+ case PlSqlParser.SYS_OP_ITR:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_CREATE:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_FILTER_LIST:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_FILTER:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_SUCCEEDED:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_USE:
+ case PlSqlParser.SYS_OP_LBID:
+ case PlSqlParser.SYS_OP_LOBLOC2BLOB:
+ case PlSqlParser.SYS_OP_LOBLOC2CLOB:
+ case PlSqlParser.SYS_OP_LOBLOC2ID:
+ case PlSqlParser.SYS_OP_LOBLOC2NCLOB:
+ case PlSqlParser.SYS_OP_LOBLOC2TYP:
+ case PlSqlParser.SYS_OP_LSVI:
+ case PlSqlParser.SYS_OP_LVL:
+ case PlSqlParser.SYS_OP_MAKEOID:
+ case PlSqlParser.SYS_OP_MAP_NONNULL:
+ case PlSqlParser.SYS_OP_MSR:
+ case PlSqlParser.SYS_OP_NICOMBINE:
+ case PlSqlParser.SYS_OP_NIEXTRACT:
+ case PlSqlParser.SYS_OP_NII:
+ case PlSqlParser.SYS_OP_NIX:
+ case PlSqlParser.SYS_OP_NOEXPAND:
+ case PlSqlParser.SYS_OP_NTCIMG:
+ case PlSqlParser.SYS_OP_NUMTORAW:
+ case PlSqlParser.SYS_OP_OIDVALUE:
+ case PlSqlParser.SYS_OP_OPNSIZE:
+ case PlSqlParser.SYS_OP_PAR_1:
+ case PlSqlParser.SYS_OP_PARGID_1:
+ case PlSqlParser.SYS_OP_PARGID:
+ case PlSqlParser.SYS_OP_PAR:
+ case PlSqlParser.SYS_OP_PART_ID:
+ case PlSqlParser.SYS_OP_PIVOT:
+ case PlSqlParser.SYS_OP_R2O:
+ case PlSqlParser.SYS_OP_RAWTONUM:
+ case PlSqlParser.SYS_OP_RDTM:
+ case PlSqlParser.SYS_OP_REF:
+ case PlSqlParser.SYS_OP_RMTD:
+ case PlSqlParser.SYS_OP_ROWIDTOOBJ:
+ case PlSqlParser.SYS_OP_RPB:
+ case PlSqlParser.SYS_OPTLOBPRBSC:
+ case PlSqlParser.SYS_OP_TOSETID:
+ case PlSqlParser.SYS_OP_TPR:
+ case PlSqlParser.SYS_OP_TRTB:
+ case PlSqlParser.SYS_OPTXICMP:
+ case PlSqlParser.SYS_OPTXQCASTASNQ:
+ case PlSqlParser.SYS_OP_UNDESCEND:
+ case PlSqlParser.SYS_OP_VECAND:
+ case PlSqlParser.SYS_OP_VECBIT:
+ case PlSqlParser.SYS_OP_VECOR:
+ case PlSqlParser.SYS_OP_VECXOR:
+ case PlSqlParser.SYS_OP_VERSION:
+ case PlSqlParser.SYS_OP_VREF:
+ case PlSqlParser.SYS_OP_VVD:
+ case PlSqlParser.SYS_OP_XMLCONS_FOR_CSX:
+ case PlSqlParser.SYS_OP_XPTHATG:
+ case PlSqlParser.SYS_OP_XPTHIDX:
+ case PlSqlParser.SYS_OP_XPTHOP:
+ case PlSqlParser.SYS_OP_XTXT2SQLT:
+ case PlSqlParser.SYS_OP_ZONE_ID:
+ case PlSqlParser.SYS_ORDERKEY_DEPTH:
+ case PlSqlParser.SYS_ORDERKEY_MAXCHILD:
+ case PlSqlParser.SYS_ORDERKEY_PARENT:
+ case PlSqlParser.SYS_PARALLEL_TXN:
+ case PlSqlParser.SYS_PATHID_IS_ATTR:
+ case PlSqlParser.SYS_PATHID_IS_NMSPC:
+ case PlSqlParser.SYS_PATHID_LASTNAME:
+ case PlSqlParser.SYS_PATHID_LASTNMSPC:
+ case PlSqlParser.SYS_PATH_REVERSE:
+ case PlSqlParser.SYS_PXQEXTRACT:
+ case PlSqlParser.SYS_RAW_TO_XSID:
+ case PlSqlParser.SYS_RID_ORDER:
+ case PlSqlParser.SYS_ROW_DELTA:
+ case PlSqlParser.SYS_SC_2_XMLT:
+ case PlSqlParser.SYS_SYNRCIREDO:
+ case PlSqlParser.SYSTEM_DEFINED:
+ case PlSqlParser.SYSTEM:
+ case PlSqlParser.SYSTIMESTAMP:
+ case PlSqlParser.SYS_TYPEID:
+ case PlSqlParser.SYS_UMAKEXML:
+ case PlSqlParser.SYS_XMLANALYZE:
+ case PlSqlParser.SYS_XMLCONTAINS:
+ case PlSqlParser.SYS_XMLCONV:
+ case PlSqlParser.SYS_XMLEXNSURI:
+ case PlSqlParser.SYS_XMLGEN:
+ case PlSqlParser.SYS_XMLI_LOC_ISNODE:
+ case PlSqlParser.SYS_XMLI_LOC_ISTEXT:
+ case PlSqlParser.SYS_XMLINSTR:
+ case PlSqlParser.SYS_XMLLOCATOR_GETSVAL:
+ case PlSqlParser.SYS_XMLNODEID_GETCID:
+ case PlSqlParser.SYS_XMLNODEID_GETLOCATOR:
+ case PlSqlParser.SYS_XMLNODEID_GETOKEY:
+ case PlSqlParser.SYS_XMLNODEID_GETPATHID:
+ case PlSqlParser.SYS_XMLNODEID_GETPTRID:
+ case PlSqlParser.SYS_XMLNODEID_GETRID:
+ case PlSqlParser.SYS_XMLNODEID_GETSVAL:
+ case PlSqlParser.SYS_XMLNODEID_GETTID:
+ case PlSqlParser.SYS_XMLNODEID:
+ case PlSqlParser.SYS_XMLT_2_SC:
+ case PlSqlParser.SYS_XMLTRANSLATE:
+ case PlSqlParser.SYS_XMLTYPE2SQL:
+ case PlSqlParser.SYS_XQ_ASQLCNV:
+ case PlSqlParser.SYS_XQ_ATOMCNVCHK:
+ case PlSqlParser.SYS_XQBASEURI:
+ case PlSqlParser.SYS_XQCASTABLEERRH:
+ case PlSqlParser.SYS_XQCODEP2STR:
+ case PlSqlParser.SYS_XQCODEPEQ:
+ case PlSqlParser.SYS_XQCON2SEQ:
+ case PlSqlParser.SYS_XQCONCAT:
+ case PlSqlParser.SYS_XQDELETE:
+ case PlSqlParser.SYS_XQDFLTCOLATION:
+ case PlSqlParser.SYS_XQDOC:
+ case PlSqlParser.SYS_XQDOCURI:
+ case PlSqlParser.SYS_XQDURDIV:
+ case PlSqlParser.SYS_XQED4URI:
+ case PlSqlParser.SYS_XQENDSWITH:
+ case PlSqlParser.SYS_XQERRH:
+ case PlSqlParser.SYS_XQERR:
+ case PlSqlParser.SYS_XQESHTMLURI:
+ case PlSqlParser.SYS_XQEXLOBVAL:
+ case PlSqlParser.SYS_XQEXSTWRP:
+ case PlSqlParser.SYS_XQEXTRACT:
+ case PlSqlParser.SYS_XQEXTRREF:
+ case PlSqlParser.SYS_XQEXVAL:
+ case PlSqlParser.SYS_XQFB2STR:
+ case PlSqlParser.SYS_XQFNBOOL:
+ case PlSqlParser.SYS_XQFNCMP:
+ case PlSqlParser.SYS_XQFNDATIM:
+ case PlSqlParser.SYS_XQFNLNAME:
+ case PlSqlParser.SYS_XQFNNM:
+ case PlSqlParser.SYS_XQFNNSURI:
+ case PlSqlParser.SYS_XQFNPREDTRUTH:
+ case PlSqlParser.SYS_XQFNQNM:
+ case PlSqlParser.SYS_XQFNROOT:
+ case PlSqlParser.SYS_XQFORMATNUM:
+ case PlSqlParser.SYS_XQFTCONTAIN:
+ case PlSqlParser.SYS_XQFUNCR:
+ case PlSqlParser.SYS_XQGETCONTENT:
+ case PlSqlParser.SYS_XQINDXOF:
+ case PlSqlParser.SYS_XQINSERT:
+ case PlSqlParser.SYS_XQINSPFX:
+ case PlSqlParser.SYS_XQIRI2URI:
+ case PlSqlParser.SYS_XQLANG:
+ case PlSqlParser.SYS_XQLLNMFRMQNM:
+ case PlSqlParser.SYS_XQMKNODEREF:
+ case PlSqlParser.SYS_XQNILLED:
+ case PlSqlParser.SYS_XQNODENAME:
+ case PlSqlParser.SYS_XQNORMSPACE:
+ case PlSqlParser.SYS_XQNORMUCODE:
+ case PlSqlParser.SYS_XQ_NRNG:
+ case PlSqlParser.SYS_XQNSP4PFX:
+ case PlSqlParser.SYS_XQNSPFRMQNM:
+ case PlSqlParser.SYS_XQPFXFRMQNM:
+ case PlSqlParser.SYS_XQ_PKSQL2XML:
+ case PlSqlParser.SYS_XQPOLYABS:
+ case PlSqlParser.SYS_XQPOLYADD:
+ case PlSqlParser.SYS_XQPOLYCEL:
+ case PlSqlParser.SYS_XQPOLYCSTBL:
+ case PlSqlParser.SYS_XQPOLYCST:
+ case PlSqlParser.SYS_XQPOLYDIV:
+ case PlSqlParser.SYS_XQPOLYFLR:
+ case PlSqlParser.SYS_XQPOLYMOD:
+ case PlSqlParser.SYS_XQPOLYMUL:
+ case PlSqlParser.SYS_XQPOLYRND:
+ case PlSqlParser.SYS_XQPOLYSQRT:
+ case PlSqlParser.SYS_XQPOLYSUB:
+ case PlSqlParser.SYS_XQPOLYUMUS:
+ case PlSqlParser.SYS_XQPOLYUPLS:
+ case PlSqlParser.SYS_XQPOLYVEQ:
+ case PlSqlParser.SYS_XQPOLYVGE:
+ case PlSqlParser.SYS_XQPOLYVGT:
+ case PlSqlParser.SYS_XQPOLYVLE:
+ case PlSqlParser.SYS_XQPOLYVLT:
+ case PlSqlParser.SYS_XQPOLYVNE:
+ case PlSqlParser.SYS_XQREF2VAL:
+ case PlSqlParser.SYS_XQRENAME:
+ case PlSqlParser.SYS_XQREPLACE:
+ case PlSqlParser.SYS_XQRESVURI:
+ case PlSqlParser.SYS_XQRNDHALF2EVN:
+ case PlSqlParser.SYS_XQRSLVQNM:
+ case PlSqlParser.SYS_XQRYENVPGET:
+ case PlSqlParser.SYS_XQRYVARGET:
+ case PlSqlParser.SYS_XQRYWRP:
+ case PlSqlParser.SYS_XQSEQ2CON4XC:
+ case PlSqlParser.SYS_XQSEQ2CON:
+ case PlSqlParser.SYS_XQSEQDEEPEQ:
+ case PlSqlParser.SYS_XQSEQINSB:
+ case PlSqlParser.SYS_XQSEQRM:
+ case PlSqlParser.SYS_XQSEQRVS:
+ case PlSqlParser.SYS_XQSEQSUB:
+ case PlSqlParser.SYS_XQSEQTYPMATCH:
+ case PlSqlParser.SYS_XQSTARTSWITH:
+ case PlSqlParser.SYS_XQSTATBURI:
+ case PlSqlParser.SYS_XQSTR2CODEP:
+ case PlSqlParser.SYS_XQSTRJOIN:
+ case PlSqlParser.SYS_XQSUBSTRAFT:
+ case PlSqlParser.SYS_XQSUBSTRBEF:
+ case PlSqlParser.SYS_XQTOKENIZE:
+ case PlSqlParser.SYS_XQTREATAS:
+ case PlSqlParser.SYS_XQ_UPKXML2SQL:
+ case PlSqlParser.SYS_XQXFORM:
+ case PlSqlParser.SYS_XSID_TO_RAW:
+ case PlSqlParser.SYS_ZMAP_FILTER:
+ case PlSqlParser.SYS_ZMAP_REFRESH:
+ case PlSqlParser.TABLE_LOOKUP_BY_NL:
+ case PlSqlParser.TABLESPACE_NO:
+ case PlSqlParser.TABLESPACE:
+ case PlSqlParser.TABLES:
+ case PlSqlParser.TABLE_STATS:
+ case PlSqlParser.TABLE:
+ case PlSqlParser.TABNO:
+ case PlSqlParser.TAG:
+ case PlSqlParser.TANH:
+ case PlSqlParser.TAN:
+ case PlSqlParser.TBLORIDXPARTNUM:
+ case PlSqlParser.TEMPFILE:
+ case PlSqlParser.TEMPLATE:
+ case PlSqlParser.TEMPORARY:
+ case PlSqlParser.TEMP_TABLE:
+ case PlSqlParser.TEST:
+ case PlSqlParser.TEXT:
+ case PlSqlParser.THAN:
+ case PlSqlParser.THEN:
+ case PlSqlParser.THE:
+ case PlSqlParser.THREAD:
+ case PlSqlParser.THROUGH:
+ case PlSqlParser.TIER:
+ case PlSqlParser.TIES:
+ case PlSqlParser.TIMEOUT:
+ case PlSqlParser.TIMESTAMP_LTZ_UNCONSTRAINED:
+ case PlSqlParser.TIMESTAMP:
+ case PlSqlParser.TIMESTAMP_TZ_UNCONSTRAINED:
+ case PlSqlParser.TIMESTAMP_UNCONSTRAINED:
+ case PlSqlParser.TIMES:
+ case PlSqlParser.TIME:
+ case PlSqlParser.TIMEZONE_ABBR:
+ case PlSqlParser.TIMEZONE_HOUR:
+ case PlSqlParser.TIMEZONE_MINUTE:
+ case PlSqlParser.TIMEZONE_OFFSET:
+ case PlSqlParser.TIMEZONE_REGION:
+ case PlSqlParser.TIME_ZONE:
+ case PlSqlParser.TIV_GB:
+ case PlSqlParser.TIV_SSF:
+ case PlSqlParser.TO_ACLID:
+ case PlSqlParser.TO_BINARY_DOUBLE:
+ case PlSqlParser.TO_BINARY_FLOAT:
+ case PlSqlParser.TO_BLOB:
+ case PlSqlParser.TO_CLOB:
+ case PlSqlParser.TO_DSINTERVAL:
+ case PlSqlParser.TO_LOB:
+ case PlSqlParser.TO_MULTI_BYTE:
+ case PlSqlParser.TO_NCHAR:
+ case PlSqlParser.TO_NCLOB:
+ case PlSqlParser.TO_NUMBER:
+ case PlSqlParser.TOPLEVEL:
+ case PlSqlParser.TO_SINGLE_BYTE:
+ case PlSqlParser.TO_TIMESTAMP:
+ case PlSqlParser.TO_TIMESTAMP_TZ:
+ case PlSqlParser.TO_TIME:
+ case PlSqlParser.TO_TIME_TZ:
+ case PlSqlParser.TO_YMINTERVAL:
+ case PlSqlParser.TRACE:
+ case PlSqlParser.TRACING:
+ case PlSqlParser.TRACKING:
+ case PlSqlParser.TRAILING:
+ case PlSqlParser.TRANSACTION:
+ case PlSqlParser.TRANSFORM_DISTINCT_AGG:
+ case PlSqlParser.TRANSITIONAL:
+ case PlSqlParser.TRANSITION:
+ case PlSqlParser.TRANSLATE:
+ case PlSqlParser.TRANSLATION:
+ case PlSqlParser.TREAT:
+ case PlSqlParser.TRIGGERS:
+ case PlSqlParser.TRIGGER:
+ case PlSqlParser.TRUE:
+ case PlSqlParser.TRUNCATE:
+ case PlSqlParser.TRUNC:
+ case PlSqlParser.TRUSTED:
+ case PlSqlParser.TRUST:
+ case PlSqlParser.TUNING:
+ case PlSqlParser.TX:
+ case PlSqlParser.TYPES:
+ case PlSqlParser.TYPE:
+ case PlSqlParser.TZ_OFFSET:
+ case PlSqlParser.UB2:
+ case PlSqlParser.UBA:
+ case PlSqlParser.UCS2:
+ case PlSqlParser.UID:
+ case PlSqlParser.UNARCHIVED:
+ case PlSqlParser.UNBOUNDED:
+ case PlSqlParser.UNBOUND:
+ case PlSqlParser.UNCONDITIONAL:
+ case PlSqlParser.UNDER:
+ case PlSqlParser.UNDO:
+ case PlSqlParser.UNDROP:
+ case PlSqlParser.UNIFORM:
+ case PlSqlParser.UNISTR:
+ case PlSqlParser.UNLIMITED:
+ case PlSqlParser.UNLOAD:
+ case PlSqlParser.UNLOCK:
+ case PlSqlParser.UNMATCHED:
+ case PlSqlParser.UNNEST_INNERJ_DISTINCT_VIEW:
+ case PlSqlParser.UNNEST_NOSEMIJ_NODISTINCTVIEW:
+ case PlSqlParser.UNNEST_SEMIJ_VIEW:
+ case PlSqlParser.UNNEST:
+ case PlSqlParser.UNPACKED:
+ case PlSqlParser.UNPIVOT:
+ case PlSqlParser.UNPLUG:
+ case PlSqlParser.UNPROTECTED:
+ case PlSqlParser.UNQUIESCE:
+ case PlSqlParser.UNRECOVERABLE:
+ case PlSqlParser.UNRESTRICTED:
+ case PlSqlParser.UNSUBSCRIBE:
+ case PlSqlParser.UNTIL:
+ case PlSqlParser.UNUSABLE:
+ case PlSqlParser.UNUSED:
+ case PlSqlParser.UPDATABLE:
+ case PlSqlParser.UPDATED:
+ case PlSqlParser.UPDATEXML:
+ case PlSqlParser.UPD_INDEXES:
+ case PlSqlParser.UPD_JOININDEX:
+ case PlSqlParser.UPGRADE:
+ case PlSqlParser.UPPER:
+ case PlSqlParser.UPSERT:
+ case PlSqlParser.UROWID:
+ case PlSqlParser.USABLE:
+ case PlSqlParser.USAGE:
+ case PlSqlParser.USE_ANTI:
+ case PlSqlParser.USE_CONCAT:
+ case PlSqlParser.USE_CUBE:
+ case PlSqlParser.USE_HASH_AGGREGATION:
+ case PlSqlParser.USE_HASH_GBY_FOR_PUSHDOWN:
+ case PlSqlParser.USE_HASH:
+ case PlSqlParser.USE_HIDDEN_PARTITIONS:
+ case PlSqlParser.USE_INVISIBLE_INDEXES:
+ case PlSqlParser.USE_MERGE_CARTESIAN:
+ case PlSqlParser.USE_MERGE:
+ case PlSqlParser.USE_NL:
+ case PlSqlParser.USE_NL_WITH_INDEX:
+ case PlSqlParser.USE_PRIVATE_OUTLINES:
+ case PlSqlParser.USER_DATA:
+ case PlSqlParser.USER_DEFINED:
+ case PlSqlParser.USERENV:
+ case PlSqlParser.USERGROUP:
+ case PlSqlParser.USER_RECYCLEBIN:
+ case PlSqlParser.USERS:
+ case PlSqlParser.USER_TABLESPACES:
+ case PlSqlParser.USER:
+ case PlSqlParser.USE_SEMI:
+ case PlSqlParser.USE_STORED_OUTLINES:
+ case PlSqlParser.USE_TTT_FOR_GSETS:
+ case PlSqlParser.USE:
+ case PlSqlParser.USE_VECTOR_AGGREGATION:
+ case PlSqlParser.USE_WEAK_NAME_RESL:
+ case PlSqlParser.USING_NO_EXPAND:
+ case PlSqlParser.USING:
+ case PlSqlParser.UTF16BE:
+ case PlSqlParser.UTF16LE:
+ case PlSqlParser.UTF32:
+ case PlSqlParser.UTF8:
+ case PlSqlParser.V1:
+ case PlSqlParser.V2:
+ case PlSqlParser.VALIDATE:
+ case PlSqlParser.VALIDATION:
+ case PlSqlParser.VALID_TIME_END:
+ case PlSqlParser.VALUE:
+ case PlSqlParser.VARCHAR2:
+ case PlSqlParser.VARCHAR:
+ case PlSqlParser.VARIABLE:
+ case PlSqlParser.VAR_POP:
+ case PlSqlParser.VARRAYS:
+ case PlSqlParser.VARRAY:
+ case PlSqlParser.VAR_SAMP:
+ case PlSqlParser.VARYING:
+ case PlSqlParser.VECTOR_READ_TRACE:
+ case PlSqlParser.VECTOR_READ:
+ case PlSqlParser.VECTOR_TRANSFORM_DIMS:
+ case PlSqlParser.VECTOR_TRANSFORM_FACT:
+ case PlSqlParser.VECTOR_TRANSFORM:
+ case PlSqlParser.VERIFIER:
+ case PlSqlParser.VERIFY:
+ case PlSqlParser.VERSIONING:
+ case PlSqlParser.VERSIONS_ENDSCN:
+ case PlSqlParser.VERSIONS_ENDTIME:
+ case PlSqlParser.VERSIONS_OPERATION:
+ case PlSqlParser.VERSIONS_STARTSCN:
+ case PlSqlParser.VERSIONS_STARTTIME:
+ case PlSqlParser.VERSIONS:
+ case PlSqlParser.VERSIONS_XID:
+ case PlSqlParser.VERSION:
+ case PlSqlParser.VIOLATION:
+ case PlSqlParser.VIRTUAL:
+ case PlSqlParser.VISIBILITY:
+ case PlSqlParser.VISIBLE:
+ case PlSqlParser.VOLUME:
+ case PlSqlParser.VSIZE:
+ case PlSqlParser.WAIT:
+ case PlSqlParser.WALLET:
+ case PlSqlParser.WARNING:
+ case PlSqlParser.WEEKS:
+ case PlSqlParser.WEEK:
+ case PlSqlParser.WELLFORMED:
+ case PlSqlParser.WHENEVER:
+ case PlSqlParser.WHEN:
+ case PlSqlParser.WHILE:
+ case PlSqlParser.WHITESPACE:
+ case PlSqlParser.WIDTH_BUCKET:
+ case PlSqlParser.WITHIN:
+ case PlSqlParser.WITHOUT:
+ case PlSqlParser.WITH_PLSQL:
+ case PlSqlParser.WORK:
+ case PlSqlParser.WRAPPED:
+ case PlSqlParser.WRAPPER:
+ case PlSqlParser.WRITE:
+ case PlSqlParser.XDB_FASTPATH_INSERT:
+ case PlSqlParser.X_DYN_PRUNE:
+ case PlSqlParser.XID:
+ case PlSqlParser.XML2OBJECT:
+ case PlSqlParser.XMLAGG:
+ case PlSqlParser.XMLATTRIBUTES:
+ case PlSqlParser.XMLCAST:
+ case PlSqlParser.XMLCDATA:
+ case PlSqlParser.XMLCOLATTVAL:
+ case PlSqlParser.XMLCOMMENT:
+ case PlSqlParser.XMLCONCAT:
+ case PlSqlParser.XMLDIFF:
+ case PlSqlParser.XML_DML_RWT_STMT:
+ case PlSqlParser.XMLELEMENT:
+ case PlSqlParser.XMLEXISTS2:
+ case PlSqlParser.XMLEXISTS:
+ case PlSqlParser.XMLFOREST:
+ case PlSqlParser.XMLINDEX_REWRITE_IN_SELECT:
+ case PlSqlParser.XMLINDEX_REWRITE:
+ case PlSqlParser.XMLINDEX_SEL_IDX_TBL:
+ case PlSqlParser.XMLISNODE:
+ case PlSqlParser.XMLISVALID:
+ case PlSqlParser.XMLNAMESPACES:
+ case PlSqlParser.XMLPARSE:
+ case PlSqlParser.XMLPATCH:
+ case PlSqlParser.XMLPI:
+ case PlSqlParser.XMLQUERYVAL:
+ case PlSqlParser.XMLQUERY:
+ case PlSqlParser.XMLROOT:
+ case PlSqlParser.XMLSCHEMA:
+ case PlSqlParser.XMLSERIALIZE:
+ case PlSqlParser.XMLTABLE:
+ case PlSqlParser.XMLTRANSFORMBLOB:
+ case PlSqlParser.XMLTRANSFORM:
+ case PlSqlParser.XMLTYPE:
+ case PlSqlParser.XML:
+ case PlSqlParser.XPATHTABLE:
+ case PlSqlParser.XS_SYS_CONTEXT:
+ case PlSqlParser.XS:
+ case PlSqlParser.YEARS:
+ case PlSqlParser.YEAR:
+ case PlSqlParser.YES:
+ case PlSqlParser.YMINTERVAL_UNCONSTRAINED:
+ case PlSqlParser.ZONEMAP:
+ case PlSqlParser.ZONE:
+ case PlSqlParser.PREDICTION:
+ case PlSqlParser.PREDICTION_BOUNDS:
+ case PlSqlParser.PREDICTION_COST:
+ case PlSqlParser.PREDICTION_DETAILS:
+ case PlSqlParser.PREDICTION_PROBABILITY:
+ case PlSqlParser.PREDICTION_SET:
+ case PlSqlParser.CUME_DIST:
+ case PlSqlParser.DENSE_RANK:
+ case PlSqlParser.LISTAGG:
+ case PlSqlParser.PERCENT_RANK:
+ case PlSqlParser.PERCENTILE_CONT:
+ case PlSqlParser.PERCENTILE_DISC:
+ case PlSqlParser.RANK:
+ case PlSqlParser.AVG:
+ case PlSqlParser.CORR:
+ case PlSqlParser.COVAR_:
+ case PlSqlParser.LAG:
+ case PlSqlParser.LEAD:
+ case PlSqlParser.MAX:
+ case PlSqlParser.MEDIAN:
+ case PlSqlParser.MIN:
+ case PlSqlParser.NTILE:
+ case PlSqlParser.NVL:
+ case PlSqlParser.RATIO_TO_REPORT:
+ case PlSqlParser.REGR_:
+ case PlSqlParser.ROUND:
+ case PlSqlParser.ROW_NUMBER:
+ case PlSqlParser.SUBSTR:
+ case PlSqlParser.TO_CHAR:
+ case PlSqlParser.TRIM:
+ case PlSqlParser.SUM:
+ case PlSqlParser.STDDEV:
+ case PlSqlParser.VAR_:
+ case PlSqlParser.VARIANCE:
+ case PlSqlParser.LEAST:
+ case PlSqlParser.GREATEST:
+ case PlSqlParser.TO_DATE:
+ case PlSqlParser.PERIOD:
+ case PlSqlParser.DELIMITED_ID:
+ case PlSqlParser.REGULAR_ID:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 3495;
+ this.user_object_name();
+ this.state = 3500;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 3496;
+ this.match(PlSqlParser.COMMA);
+ this.state = 3497;
+ this.user_object_name();
+ this.state = 3502;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 3503;
+ this.proxy_clause();
+ this.state = 3504;
+ this.match(PlSqlParser.SEMICOLON);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Alter_identified_byContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_alter_identified_by;
+ return this;
+}
+
+Alter_identified_byContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Alter_identified_byContext.prototype.constructor = Alter_identified_byContext;
+
+Alter_identified_byContext.prototype.identified_by = function() {
+ return this.getTypedRuleContext(Identified_byContext,0);
+};
+
+Alter_identified_byContext.prototype.REPLACE = function() {
+ return this.getToken(PlSqlParser.REPLACE, 0);
+};
+
+Alter_identified_byContext.prototype.id_expression = function() {
+ return this.getTypedRuleContext(Id_expressionContext,0);
+};
+
+Alter_identified_byContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAlter_identified_by(this);
+ }
+};
+
+Alter_identified_byContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAlter_identified_by(this);
+ }
+};
+
+Alter_identified_byContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAlter_identified_by(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Alter_identified_byContext = Alter_identified_byContext;
+
+PlSqlParser.prototype.alter_identified_by = function() {
+
+ var localctx = new Alter_identified_byContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 274, PlSqlParser.RULE_alter_identified_by);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3508;
+ this.identified_by();
+ this.state = 3511;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.REPLACE) {
+ this.state = 3509;
+ this.match(PlSqlParser.REPLACE);
+ this.state = 3510;
+ this.id_expression();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Identified_byContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_identified_by;
+ return this;
+}
+
+Identified_byContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Identified_byContext.prototype.constructor = Identified_byContext;
+
+Identified_byContext.prototype.IDENTIFIED = function() {
+ return this.getToken(PlSqlParser.IDENTIFIED, 0);
+};
+
+Identified_byContext.prototype.BY = function() {
+ return this.getToken(PlSqlParser.BY, 0);
+};
+
+Identified_byContext.prototype.id_expression = function() {
+ return this.getTypedRuleContext(Id_expressionContext,0);
+};
+
+Identified_byContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterIdentified_by(this);
+ }
+};
+
+Identified_byContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitIdentified_by(this);
+ }
+};
+
+Identified_byContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitIdentified_by(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Identified_byContext = Identified_byContext;
+
+PlSqlParser.prototype.identified_by = function() {
+
+ var localctx = new Identified_byContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 276, PlSqlParser.RULE_identified_by);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3513;
+ this.match(PlSqlParser.IDENTIFIED);
+ this.state = 3514;
+ this.match(PlSqlParser.BY);
+ this.state = 3515;
+ this.id_expression();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Identified_other_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_identified_other_clause;
+ return this;
+}
+
+Identified_other_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Identified_other_clauseContext.prototype.constructor = Identified_other_clauseContext;
+
+Identified_other_clauseContext.prototype.IDENTIFIED = function() {
+ return this.getToken(PlSqlParser.IDENTIFIED, 0);
+};
+
+Identified_other_clauseContext.prototype.EXTERNALLY = function() {
+ return this.getToken(PlSqlParser.EXTERNALLY, 0);
+};
+
+Identified_other_clauseContext.prototype.GLOBALLY = function() {
+ return this.getToken(PlSqlParser.GLOBALLY, 0);
+};
+
+Identified_other_clauseContext.prototype.AS = function() {
+ return this.getToken(PlSqlParser.AS, 0);
+};
+
+Identified_other_clauseContext.prototype.quoted_string = function() {
+ return this.getTypedRuleContext(Quoted_stringContext,0);
+};
+
+Identified_other_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterIdentified_other_clause(this);
+ }
+};
+
+Identified_other_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitIdentified_other_clause(this);
+ }
+};
+
+Identified_other_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitIdentified_other_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Identified_other_clauseContext = Identified_other_clauseContext;
+
+PlSqlParser.prototype.identified_other_clause = function() {
+
+ var localctx = new Identified_other_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 278, PlSqlParser.RULE_identified_other_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3517;
+ this.match(PlSqlParser.IDENTIFIED);
+ this.state = 3518;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.EXTERNALLY || _la===PlSqlParser.GLOBALLY)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 3521;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.AS) {
+ this.state = 3519;
+ this.match(PlSqlParser.AS);
+ this.state = 3520;
+ this.quoted_string();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function User_tablespace_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_user_tablespace_clause;
+ return this;
+}
+
+User_tablespace_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+User_tablespace_clauseContext.prototype.constructor = User_tablespace_clauseContext;
+
+User_tablespace_clauseContext.prototype.TABLESPACE = function() {
+ return this.getToken(PlSqlParser.TABLESPACE, 0);
+};
+
+User_tablespace_clauseContext.prototype.id_expression = function() {
+ return this.getTypedRuleContext(Id_expressionContext,0);
+};
+
+User_tablespace_clauseContext.prototype.DEFAULT = function() {
+ return this.getToken(PlSqlParser.DEFAULT, 0);
+};
+
+User_tablespace_clauseContext.prototype.TEMPORARY = function() {
+ return this.getToken(PlSqlParser.TEMPORARY, 0);
+};
+
+User_tablespace_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterUser_tablespace_clause(this);
+ }
+};
+
+User_tablespace_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitUser_tablespace_clause(this);
+ }
+};
+
+User_tablespace_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitUser_tablespace_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.User_tablespace_clauseContext = User_tablespace_clauseContext;
+
+PlSqlParser.prototype.user_tablespace_clause = function() {
+
+ var localctx = new User_tablespace_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 280, PlSqlParser.RULE_user_tablespace_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3523;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.DEFAULT || _la===PlSqlParser.TEMPORARY)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 3524;
+ this.match(PlSqlParser.TABLESPACE);
+ this.state = 3525;
+ this.id_expression();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Quota_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_quota_clause;
+ return this;
+}
+
+Quota_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Quota_clauseContext.prototype.constructor = Quota_clauseContext;
+
+Quota_clauseContext.prototype.QUOTA = function() {
+ return this.getToken(PlSqlParser.QUOTA, 0);
+};
+
+Quota_clauseContext.prototype.ON = function() {
+ return this.getToken(PlSqlParser.ON, 0);
+};
+
+Quota_clauseContext.prototype.id_expression = function() {
+ return this.getTypedRuleContext(Id_expressionContext,0);
+};
+
+Quota_clauseContext.prototype.size_clause = function() {
+ return this.getTypedRuleContext(Size_clauseContext,0);
+};
+
+Quota_clauseContext.prototype.UNLIMITED = function() {
+ return this.getToken(PlSqlParser.UNLIMITED, 0);
+};
+
+Quota_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterQuota_clause(this);
+ }
+};
+
+Quota_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitQuota_clause(this);
+ }
+};
+
+Quota_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitQuota_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Quota_clauseContext = Quota_clauseContext;
+
+PlSqlParser.prototype.quota_clause = function() {
+
+ var localctx = new Quota_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 282, PlSqlParser.RULE_quota_clause);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3527;
+ this.match(PlSqlParser.QUOTA);
+ this.state = 3530;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.UNSIGNED_INTEGER:
+ this.state = 3528;
+ this.size_clause();
+ break;
+ case PlSqlParser.UNLIMITED:
+ this.state = 3529;
+ this.match(PlSqlParser.UNLIMITED);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 3532;
+ this.match(PlSqlParser.ON);
+ this.state = 3533;
+ this.id_expression();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Profile_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_profile_clause;
+ return this;
+}
+
+Profile_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Profile_clauseContext.prototype.constructor = Profile_clauseContext;
+
+Profile_clauseContext.prototype.PROFILE = function() {
+ return this.getToken(PlSqlParser.PROFILE, 0);
+};
+
+Profile_clauseContext.prototype.id_expression = function() {
+ return this.getTypedRuleContext(Id_expressionContext,0);
+};
+
+Profile_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterProfile_clause(this);
+ }
+};
+
+Profile_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitProfile_clause(this);
+ }
+};
+
+Profile_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitProfile_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Profile_clauseContext = Profile_clauseContext;
+
+PlSqlParser.prototype.profile_clause = function() {
+
+ var localctx = new Profile_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 284, PlSqlParser.RULE_profile_clause);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3535;
+ this.match(PlSqlParser.PROFILE);
+ this.state = 3536;
+ this.id_expression();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Role_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_role_clause;
+ return this;
+}
+
+Role_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Role_clauseContext.prototype.constructor = Role_clauseContext;
+
+Role_clauseContext.prototype.role_name = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Role_nameContext);
+ } else {
+ return this.getTypedRuleContext(Role_nameContext,i);
+ }
+};
+
+Role_clauseContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Role_clauseContext.prototype.ALL = function() {
+ return this.getToken(PlSqlParser.ALL, 0);
+};
+
+Role_clauseContext.prototype.EXCEPT = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.EXCEPT);
+ } else {
+ return this.getToken(PlSqlParser.EXCEPT, i);
+ }
+};
+
+
+Role_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterRole_clause(this);
+ }
+};
+
+Role_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitRole_clause(this);
+ }
+};
+
+Role_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitRole_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Role_clauseContext = Role_clauseContext;
+
+PlSqlParser.prototype.role_clause = function() {
+
+ var localctx = new Role_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 286, PlSqlParser.RULE_role_clause);
+ var _la = 0; // Token type
+ try {
+ this.state = 3561;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.ABORT:
+ case PlSqlParser.ABS:
+ case PlSqlParser.ACCESS:
+ case PlSqlParser.ACCESSED:
+ case PlSqlParser.ACCOUNT:
+ case PlSqlParser.ACL:
+ case PlSqlParser.ACOS:
+ case PlSqlParser.ACTION:
+ case PlSqlParser.ACTIONS:
+ case PlSqlParser.ACTIVATE:
+ case PlSqlParser.ACTIVE:
+ case PlSqlParser.ACTIVE_COMPONENT:
+ case PlSqlParser.ACTIVE_DATA:
+ case PlSqlParser.ACTIVE_FUNCTION:
+ case PlSqlParser.ACTIVE_TAG:
+ case PlSqlParser.ACTIVITY:
+ case PlSqlParser.ADAPTIVE_PLAN:
+ case PlSqlParser.ADD:
+ case PlSqlParser.ADD_COLUMN:
+ case PlSqlParser.ADD_GROUP:
+ case PlSqlParser.ADD_MONTHS:
+ case PlSqlParser.ADJ_DATE:
+ case PlSqlParser.ADMIN:
+ case PlSqlParser.ADMINISTER:
+ case PlSqlParser.ADMINISTRATOR:
+ case PlSqlParser.ADVANCED:
+ case PlSqlParser.ADVISE:
+ case PlSqlParser.ADVISOR:
+ case PlSqlParser.AFD_DISKSTRING:
+ case PlSqlParser.AFTER:
+ case PlSqlParser.AGENT:
+ case PlSqlParser.AGGREGATE:
+ case PlSqlParser.A_LETTER:
+ case PlSqlParser.ALIAS:
+ case PlSqlParser.ALLOCATE:
+ case PlSqlParser.ALLOW:
+ case PlSqlParser.ALL_ROWS:
+ case PlSqlParser.ALWAYS:
+ case PlSqlParser.ANALYZE:
+ case PlSqlParser.ANCILLARY:
+ case PlSqlParser.AND_EQUAL:
+ case PlSqlParser.ANOMALY:
+ case PlSqlParser.ANSI_REARCH:
+ case PlSqlParser.ANTIJOIN:
+ case PlSqlParser.ANYSCHEMA:
+ case PlSqlParser.APPEND:
+ case PlSqlParser.APPENDCHILDXML:
+ case PlSqlParser.APPEND_VALUES:
+ case PlSqlParser.APPLICATION:
+ case PlSqlParser.APPLY:
+ case PlSqlParser.APPROX_COUNT_DISTINCT:
+ case PlSqlParser.ARCHIVAL:
+ case PlSqlParser.ARCHIVE:
+ case PlSqlParser.ARCHIVED:
+ case PlSqlParser.ARCHIVELOG:
+ case PlSqlParser.ARRAY:
+ case PlSqlParser.ASCII:
+ case PlSqlParser.ASCIISTR:
+ case PlSqlParser.ASIN:
+ case PlSqlParser.ASIS:
+ case PlSqlParser.ASSEMBLY:
+ case PlSqlParser.ASSIGN:
+ case PlSqlParser.ASSOCIATE:
+ case PlSqlParser.ASYNC:
+ case PlSqlParser.ASYNCHRONOUS:
+ case PlSqlParser.ATAN2:
+ case PlSqlParser.ATAN:
+ case PlSqlParser.AT:
+ case PlSqlParser.ATTRIBUTE:
+ case PlSqlParser.ATTRIBUTES:
+ case PlSqlParser.AUTHENTICATED:
+ case PlSqlParser.AUTHENTICATION:
+ case PlSqlParser.AUTHID:
+ case PlSqlParser.AUTHORIZATION:
+ case PlSqlParser.AUTOALLOCATE:
+ case PlSqlParser.AUTO:
+ case PlSqlParser.AUTOEXTEND:
+ case PlSqlParser.AUTO_LOGIN:
+ case PlSqlParser.AUTOMATIC:
+ case PlSqlParser.AUTONOMOUS_TRANSACTION:
+ case PlSqlParser.AUTO_REOPTIMIZE:
+ case PlSqlParser.AVAILABILITY:
+ case PlSqlParser.AVRO:
+ case PlSqlParser.BACKGROUND:
+ case PlSqlParser.BACKUP:
+ case PlSqlParser.BASIC:
+ case PlSqlParser.BASICFILE:
+ case PlSqlParser.BATCH:
+ case PlSqlParser.BATCHSIZE:
+ case PlSqlParser.BATCH_TABLE_ACCESS_BY_ROWID:
+ case PlSqlParser.BECOME:
+ case PlSqlParser.BEFORE:
+ case PlSqlParser.BEGIN:
+ case PlSqlParser.BEGINNING:
+ case PlSqlParser.BEGIN_OUTLINE_DATA:
+ case PlSqlParser.BEHALF:
+ case PlSqlParser.BEQUEATH:
+ case PlSqlParser.BFILE:
+ case PlSqlParser.BFILENAME:
+ case PlSqlParser.BIGFILE:
+ case PlSqlParser.BINARY:
+ case PlSqlParser.BINARY_DOUBLE:
+ case PlSqlParser.BINARY_DOUBLE_INFINITY:
+ case PlSqlParser.BINARY_DOUBLE_NAN:
+ case PlSqlParser.BINARY_FLOAT:
+ case PlSqlParser.BINARY_FLOAT_INFINITY:
+ case PlSqlParser.BINARY_FLOAT_NAN:
+ case PlSqlParser.BINARY_INTEGER:
+ case PlSqlParser.BIND_AWARE:
+ case PlSqlParser.BINDING:
+ case PlSqlParser.BIN_TO_NUM:
+ case PlSqlParser.BITAND:
+ case PlSqlParser.BITMAP_AND:
+ case PlSqlParser.BITMAP:
+ case PlSqlParser.BITMAPS:
+ case PlSqlParser.BITMAP_TREE:
+ case PlSqlParser.BITS:
+ case PlSqlParser.BLOB:
+ case PlSqlParser.BLOCK:
+ case PlSqlParser.BLOCK_RANGE:
+ case PlSqlParser.BLOCKS:
+ case PlSqlParser.BLOCKSIZE:
+ case PlSqlParser.BODY:
+ case PlSqlParser.BOOLEAN:
+ case PlSqlParser.BOTH:
+ case PlSqlParser.BOUND:
+ case PlSqlParser.BRANCH:
+ case PlSqlParser.BREADTH:
+ case PlSqlParser.BROADCAST:
+ case PlSqlParser.BSON:
+ case PlSqlParser.BUFFER:
+ case PlSqlParser.BUFFER_CACHE:
+ case PlSqlParser.BUFFER_POOL:
+ case PlSqlParser.BUILD:
+ case PlSqlParser.BULK:
+ case PlSqlParser.BYPASS_RECURSIVE_CHECK:
+ case PlSqlParser.BYPASS_UJVC:
+ case PlSqlParser.BYTE:
+ case PlSqlParser.CACHE:
+ case PlSqlParser.CACHE_CB:
+ case PlSqlParser.CACHE_INSTANCES:
+ case PlSqlParser.CACHE_TEMP_TABLE:
+ case PlSqlParser.CACHING:
+ case PlSqlParser.CALCULATED:
+ case PlSqlParser.CALLBACK:
+ case PlSqlParser.CALL:
+ case PlSqlParser.CANCEL:
+ case PlSqlParser.CAPACITY:
+ case PlSqlParser.CARDINALITY:
+ case PlSqlParser.CASCADE:
+ case PlSqlParser.CASE:
+ case PlSqlParser.CAST:
+ case PlSqlParser.CATEGORY:
+ case PlSqlParser.CDBDEFAULT:
+ case PlSqlParser.CEIL:
+ case PlSqlParser.CELL_FLASH_CACHE:
+ case PlSqlParser.CERTIFICATE:
+ case PlSqlParser.CFILE:
+ case PlSqlParser.CHAINED:
+ case PlSqlParser.CHANGE:
+ case PlSqlParser.CHANGE_DUPKEY_ERROR_INDEX:
+ case PlSqlParser.CHARACTER:
+ case PlSqlParser.CHAR:
+ case PlSqlParser.CHAR_CS:
+ case PlSqlParser.CHARTOROWID:
+ case PlSqlParser.CHECK_ACL_REWRITE:
+ case PlSqlParser.CHECKPOINT:
+ case PlSqlParser.CHILD:
+ case PlSqlParser.CHOOSE:
+ case PlSqlParser.CHR:
+ case PlSqlParser.CHUNK:
+ case PlSqlParser.CLASS:
+ case PlSqlParser.CLASSIFIER:
+ case PlSqlParser.CLEANUP:
+ case PlSqlParser.CLEAR:
+ case PlSqlParser.C_LETTER:
+ case PlSqlParser.CLIENT:
+ case PlSqlParser.CLOB:
+ case PlSqlParser.CLONE:
+ case PlSqlParser.CLOSE_CACHED_OPEN_CURSORS:
+ case PlSqlParser.CLOSE:
+ case PlSqlParser.CLUSTER_BY_ROWID:
+ case PlSqlParser.CLUSTER:
+ case PlSqlParser.CLUSTER_DETAILS:
+ case PlSqlParser.CLUSTER_DISTANCE:
+ case PlSqlParser.CLUSTER_ID:
+ case PlSqlParser.CLUSTERING:
+ case PlSqlParser.CLUSTERING_FACTOR:
+ case PlSqlParser.CLUSTER_PROBABILITY:
+ case PlSqlParser.CLUSTER_SET:
+ case PlSqlParser.COALESCE:
+ case PlSqlParser.COALESCE_SQ:
+ case PlSqlParser.COARSE:
+ case PlSqlParser.CO_AUTH_IND:
+ case PlSqlParser.COLD:
+ case PlSqlParser.COLLECT:
+ case PlSqlParser.COLUMNAR:
+ case PlSqlParser.COLUMN_AUTH_INDICATOR:
+ case PlSqlParser.COLUMN:
+ case PlSqlParser.COLUMNS:
+ case PlSqlParser.COLUMN_STATS:
+ case PlSqlParser.COLUMN_VALUE:
+ case PlSqlParser.COMMENT:
+ case PlSqlParser.COMMIT:
+ case PlSqlParser.COMMITTED:
+ case PlSqlParser.COMMON_DATA:
+ case PlSqlParser.COMPACT:
+ case PlSqlParser.COMPATIBILITY:
+ case PlSqlParser.COMPILE:
+ case PlSqlParser.COMPLETE:
+ case PlSqlParser.COMPLIANCE:
+ case PlSqlParser.COMPONENT:
+ case PlSqlParser.COMPONENTS:
+ case PlSqlParser.COMPOSE:
+ case PlSqlParser.COMPOSITE:
+ case PlSqlParser.COMPOSITE_LIMIT:
+ case PlSqlParser.COMPOUND:
+ case PlSqlParser.COMPUTE:
+ case PlSqlParser.CONCAT:
+ case PlSqlParser.CON_DBID_TO_ID:
+ case PlSqlParser.CONDITIONAL:
+ case PlSqlParser.CONDITION:
+ case PlSqlParser.CONFIRM:
+ case PlSqlParser.CONFORMING:
+ case PlSqlParser.CON_GUID_TO_ID:
+ case PlSqlParser.CON_ID:
+ case PlSqlParser.CON_NAME_TO_ID:
+ case PlSqlParser.CONNECT_BY_CB_WHR_ONLY:
+ case PlSqlParser.CONNECT_BY_COMBINE_SW:
+ case PlSqlParser.CONNECT_BY_COST_BASED:
+ case PlSqlParser.CONNECT_BY_ELIM_DUPS:
+ case PlSqlParser.CONNECT_BY_FILTERING:
+ case PlSqlParser.CONNECT_BY_ISCYCLE:
+ case PlSqlParser.CONNECT_BY_ISLEAF:
+ case PlSqlParser.CONNECT_BY_ROOT:
+ case PlSqlParser.CONNECT:
+ case PlSqlParser.CONNECT_TIME:
+ case PlSqlParser.CONSIDER:
+ case PlSqlParser.CONSISTENT:
+ case PlSqlParser.CONSTANT:
+ case PlSqlParser.CONST:
+ case PlSqlParser.CONSTRAINT:
+ case PlSqlParser.CONSTRAINTS:
+ case PlSqlParser.CONSTRUCTOR:
+ case PlSqlParser.CONTAINER:
+ case PlSqlParser.CONTAINER_DATA:
+ case PlSqlParser.CONTAINERS:
+ case PlSqlParser.CONTENT:
+ case PlSqlParser.CONTENTS:
+ case PlSqlParser.CONTEXT:
+ case PlSqlParser.CONTINUE:
+ case PlSqlParser.CONTROLFILE:
+ case PlSqlParser.CON_UID_TO_ID:
+ case PlSqlParser.CONVERT:
+ case PlSqlParser.COOKIE:
+ case PlSqlParser.COPY:
+ case PlSqlParser.CORR_K:
+ case PlSqlParser.CORR_S:
+ case PlSqlParser.CORRUPTION:
+ case PlSqlParser.CORRUPT_XID_ALL:
+ case PlSqlParser.CORRUPT_XID:
+ case PlSqlParser.COS:
+ case PlSqlParser.COSH:
+ case PlSqlParser.COST:
+ case PlSqlParser.COST_XML_QUERY_REWRITE:
+ case PlSqlParser.COUNT:
+ case PlSqlParser.COVAR_POP:
+ case PlSqlParser.COVAR_SAMP:
+ case PlSqlParser.CPU_COSTING:
+ case PlSqlParser.CPU_PER_CALL:
+ case PlSqlParser.CPU_PER_SESSION:
+ case PlSqlParser.CRASH:
+ case PlSqlParser.CREATE_FILE_DEST:
+ case PlSqlParser.CREATE_STORED_OUTLINES:
+ case PlSqlParser.CREATION:
+ case PlSqlParser.CREDENTIAL:
+ case PlSqlParser.CRITICAL:
+ case PlSqlParser.CROSS:
+ case PlSqlParser.CROSSEDITION:
+ case PlSqlParser.CSCONVERT:
+ case PlSqlParser.CUBE_AJ:
+ case PlSqlParser.CUBE:
+ case PlSqlParser.CUBE_GB:
+ case PlSqlParser.CUBE_SJ:
+ case PlSqlParser.CUME_DISTM:
+ case PlSqlParser.CURRENT:
+ case PlSqlParser.CURRENT_DATE:
+ case PlSqlParser.CURRENT_SCHEMA:
+ case PlSqlParser.CURRENT_TIME:
+ case PlSqlParser.CURRENT_TIMESTAMP:
+ case PlSqlParser.CURRENT_USER:
+ case PlSqlParser.CURRENTV:
+ case PlSqlParser.CURSOR:
+ case PlSqlParser.CURSOR_SHARING_EXACT:
+ case PlSqlParser.CURSOR_SPECIFIC_SEGMENT:
+ case PlSqlParser.CUSTOMDATUM:
+ case PlSqlParser.CV:
+ case PlSqlParser.CYCLE:
+ case PlSqlParser.DANGLING:
+ case PlSqlParser.DATABASE:
+ case PlSqlParser.DATA:
+ case PlSqlParser.DATAFILE:
+ case PlSqlParser.DATAFILES:
+ case PlSqlParser.DATAMOVEMENT:
+ case PlSqlParser.DATAOBJNO:
+ case PlSqlParser.DATAOBJ_TO_MAT_PARTITION:
+ case PlSqlParser.DATAOBJ_TO_PARTITION:
+ case PlSqlParser.DATAPUMP:
+ case PlSqlParser.DATA_SECURITY_REWRITE_LIMIT:
+ case PlSqlParser.DATE_MODE:
+ case PlSqlParser.DAY:
+ case PlSqlParser.DAYS:
+ case PlSqlParser.DBA:
+ case PlSqlParser.DBA_RECYCLEBIN:
+ case PlSqlParser.DBMS_STATS:
+ case PlSqlParser.DB_ROLE_CHANGE:
+ case PlSqlParser.DBTIMEZONE:
+ case PlSqlParser.DB_UNIQUE_NAME:
+ case PlSqlParser.DB_VERSION:
+ case PlSqlParser.DDL:
+ case PlSqlParser.DEALLOCATE:
+ case PlSqlParser.DEBUG:
+ case PlSqlParser.DEBUGGER:
+ case PlSqlParser.DEC:
+ case PlSqlParser.DECIMAL:
+ case PlSqlParser.DECLARE:
+ case PlSqlParser.DECOMPOSE:
+ case PlSqlParser.DECORRELATE:
+ case PlSqlParser.DECR:
+ case PlSqlParser.DECREMENT:
+ case PlSqlParser.DECRYPT:
+ case PlSqlParser.DEDUPLICATE:
+ case PlSqlParser.DEFAULTS:
+ case PlSqlParser.DEFERRABLE:
+ case PlSqlParser.DEFERRED:
+ case PlSqlParser.DEFINED:
+ case PlSqlParser.DEFINE:
+ case PlSqlParser.DEFINER:
+ case PlSqlParser.DEGREE:
+ case PlSqlParser.DELAY:
+ case PlSqlParser.DELEGATE:
+ case PlSqlParser.DELETE_ALL:
+ case PlSqlParser.DELETE:
+ case PlSqlParser.DELETEXML:
+ case PlSqlParser.DEMAND:
+ case PlSqlParser.DENSE_RANKM:
+ case PlSqlParser.DEPENDENT:
+ case PlSqlParser.DEPTH:
+ case PlSqlParser.DEQUEUE:
+ case PlSqlParser.DEREF:
+ case PlSqlParser.DEREF_NO_REWRITE:
+ case PlSqlParser.DESTROY:
+ case PlSqlParser.DETACHED:
+ case PlSqlParser.DETERMINES:
+ case PlSqlParser.DETERMINISTIC:
+ case PlSqlParser.DICTIONARY:
+ case PlSqlParser.DIMENSION:
+ case PlSqlParser.DIMENSIONS:
+ case PlSqlParser.DIRECT_LOAD:
+ case PlSqlParser.DIRECTORY:
+ case PlSqlParser.DIRECT_PATH:
+ case PlSqlParser.DISABLE_ALL:
+ case PlSqlParser.DISABLE:
+ case PlSqlParser.DISABLE_PARALLEL_DML:
+ case PlSqlParser.DISABLE_PRESET:
+ case PlSqlParser.DISABLE_RPKE:
+ case PlSqlParser.DISALLOW:
+ case PlSqlParser.DISASSOCIATE:
+ case PlSqlParser.DISCARD:
+ case PlSqlParser.DISCONNECT:
+ case PlSqlParser.DISK:
+ case PlSqlParser.DISKGROUP:
+ case PlSqlParser.DISKS:
+ case PlSqlParser.DISMOUNT:
+ case PlSqlParser.DISTINGUISHED:
+ case PlSqlParser.DISTRIBUTED:
+ case PlSqlParser.DISTRIBUTE:
+ case PlSqlParser.DML:
+ case PlSqlParser.DML_UPDATE:
+ case PlSqlParser.DOCFIDELITY:
+ case PlSqlParser.DOCUMENT:
+ case PlSqlParser.DOMAIN_INDEX_FILTER:
+ case PlSqlParser.DOMAIN_INDEX_NO_SORT:
+ case PlSqlParser.DOMAIN_INDEX_SORT:
+ case PlSqlParser.DOUBLE:
+ case PlSqlParser.DOWNGRADE:
+ case PlSqlParser.DRIVING_SITE:
+ case PlSqlParser.DROP_COLUMN:
+ case PlSqlParser.DROP_GROUP:
+ case PlSqlParser.DSINTERVAL_UNCONSTRAINED:
+ case PlSqlParser.DST_UPGRADE_INSERT_CONV:
+ case PlSqlParser.DUMP:
+ case PlSqlParser.DUPLICATE:
+ case PlSqlParser.DV:
+ case PlSqlParser.DYNAMIC:
+ case PlSqlParser.DYNAMIC_SAMPLING:
+ case PlSqlParser.DYNAMIC_SAMPLING_EST_CDN:
+ case PlSqlParser.EACH:
+ case PlSqlParser.EDITIONABLE:
+ case PlSqlParser.EDITION:
+ case PlSqlParser.EDITIONING:
+ case PlSqlParser.EDITIONS:
+ case PlSqlParser.ELEMENT:
+ case PlSqlParser.ELIM_GROUPBY:
+ case PlSqlParser.ELIMINATE_JOIN:
+ case PlSqlParser.ELIMINATE_OBY:
+ case PlSqlParser.ELIMINATE_OUTER_JOIN:
+ case PlSqlParser.EM:
+ case PlSqlParser.EMPTY_BLOB:
+ case PlSqlParser.EMPTY_CLOB:
+ case PlSqlParser.EMPTY:
+ case PlSqlParser.ENABLE_ALL:
+ case PlSqlParser.ENABLE:
+ case PlSqlParser.ENABLE_PARALLEL_DML:
+ case PlSqlParser.ENABLE_PRESET:
+ case PlSqlParser.ENCODING:
+ case PlSqlParser.ENCRYPT:
+ case PlSqlParser.ENCRYPTION:
+ case PlSqlParser.END_OUTLINE_DATA:
+ case PlSqlParser.ENFORCED:
+ case PlSqlParser.ENFORCE:
+ case PlSqlParser.ENQUEUE:
+ case PlSqlParser.ENTERPRISE:
+ case PlSqlParser.ENTITYESCAPING:
+ case PlSqlParser.ENTRY:
+ case PlSqlParser.EQUIPART:
+ case PlSqlParser.ERR:
+ case PlSqlParser.ERROR_ARGUMENT:
+ case PlSqlParser.ERROR:
+ case PlSqlParser.ERROR_ON_OVERLAP_TIME:
+ case PlSqlParser.ERRORS:
+ case PlSqlParser.ESCAPE:
+ case PlSqlParser.ESTIMATE:
+ case PlSqlParser.EVAL:
+ case PlSqlParser.EVALNAME:
+ case PlSqlParser.EVALUATE:
+ case PlSqlParser.EVALUATION:
+ case PlSqlParser.EVENTS:
+ case PlSqlParser.EVERY:
+ case PlSqlParser.EXCEPT:
+ case PlSqlParser.EXCEPTION:
+ case PlSqlParser.EXCEPTION_INIT:
+ case PlSqlParser.EXCEPTIONS:
+ case PlSqlParser.EXCHANGE:
+ case PlSqlParser.EXCLUDE:
+ case PlSqlParser.EXCLUDING:
+ case PlSqlParser.EXECUTE:
+ case PlSqlParser.EXEMPT:
+ case PlSqlParser.EXISTING:
+ case PlSqlParser.EXISTS:
+ case PlSqlParser.EXISTSNODE:
+ case PlSqlParser.EXIT:
+ case PlSqlParser.EXPAND_GSET_TO_UNION:
+ case PlSqlParser.EXPAND_TABLE:
+ case PlSqlParser.EXP:
+ case PlSqlParser.EXPIRE:
+ case PlSqlParser.EXPLAIN:
+ case PlSqlParser.EXPLOSION:
+ case PlSqlParser.EXPORT:
+ case PlSqlParser.EXPR_CORR_CHECK:
+ case PlSqlParser.EXPRESS:
+ case PlSqlParser.EXTENDS:
+ case PlSqlParser.EXTENT:
+ case PlSqlParser.EXTENTS:
+ case PlSqlParser.EXTERNAL:
+ case PlSqlParser.EXTERNALLY:
+ case PlSqlParser.EXTRACTCLOBXML:
+ case PlSqlParser.EXTRACT:
+ case PlSqlParser.EXTRACTVALUE:
+ case PlSqlParser.EXTRA:
+ case PlSqlParser.FACILITY:
+ case PlSqlParser.FACT:
+ case PlSqlParser.FACTOR:
+ case PlSqlParser.FACTORIZE_JOIN:
+ case PlSqlParser.FAILED:
+ case PlSqlParser.FAILED_LOGIN_ATTEMPTS:
+ case PlSqlParser.FAILGROUP:
+ case PlSqlParser.FAILOVER:
+ case PlSqlParser.FAILURE:
+ case PlSqlParser.FALSE:
+ case PlSqlParser.FAMILY:
+ case PlSqlParser.FAR:
+ case PlSqlParser.FAST:
+ case PlSqlParser.FASTSTART:
+ case PlSqlParser.FBTSCAN:
+ case PlSqlParser.FEATURE_DETAILS:
+ case PlSqlParser.FEATURE_ID:
+ case PlSqlParser.FEATURE_SET:
+ case PlSqlParser.FEATURE_VALUE:
+ case PlSqlParser.FETCH:
+ case PlSqlParser.FILE:
+ case PlSqlParser.FILE_NAME_CONVERT:
+ case PlSqlParser.FILESYSTEM_LIKE_LOGGING:
+ case PlSqlParser.FILTER:
+ case PlSqlParser.FINAL:
+ case PlSqlParser.FINE:
+ case PlSqlParser.FINISH:
+ case PlSqlParser.FIRST:
+ case PlSqlParser.FIRSTM:
+ case PlSqlParser.FIRST_ROWS:
+ case PlSqlParser.FIRST_VALUE:
+ case PlSqlParser.FIXED_VIEW_DATA:
+ case PlSqlParser.FLAGGER:
+ case PlSqlParser.FLASHBACK:
+ case PlSqlParser.FLASH_CACHE:
+ case PlSqlParser.FLOAT:
+ case PlSqlParser.FLOB:
+ case PlSqlParser.FLOOR:
+ case PlSqlParser.FLUSH:
+ case PlSqlParser.FOLDER:
+ case PlSqlParser.FOLLOWING:
+ case PlSqlParser.FOLLOWS:
+ case PlSqlParser.FORALL:
+ case PlSqlParser.FORCE:
+ case PlSqlParser.FORCE_XML_QUERY_REWRITE:
+ case PlSqlParser.FOREIGN:
+ case PlSqlParser.FOREVER:
+ case PlSqlParser.FORMAT:
+ case PlSqlParser.FORWARD:
+ case PlSqlParser.FRAGMENT_NUMBER:
+ case PlSqlParser.FREELIST:
+ case PlSqlParser.FREELISTS:
+ case PlSqlParser.FREEPOOLS:
+ case PlSqlParser.FRESH:
+ case PlSqlParser.FROM_TZ:
+ case PlSqlParser.FULL:
+ case PlSqlParser.FULL_OUTER_JOIN_TO_OUTER:
+ case PlSqlParser.FUNCTION:
+ case PlSqlParser.FUNCTIONS:
+ case PlSqlParser.GATHER_OPTIMIZER_STATISTICS:
+ case PlSqlParser.GATHER_PLAN_STATISTICS:
+ case PlSqlParser.GBY_CONC_ROLLUP:
+ case PlSqlParser.GBY_PUSHDOWN:
+ case PlSqlParser.GENERATED:
+ case PlSqlParser.GET:
+ case PlSqlParser.GLOBAL:
+ case PlSqlParser.GLOBALLY:
+ case PlSqlParser.GLOBAL_NAME:
+ case PlSqlParser.GLOBAL_TOPIC_ENABLED:
+ case PlSqlParser.GROUP_BY:
+ case PlSqlParser.GROUP_ID:
+ case PlSqlParser.GROUPING:
+ case PlSqlParser.GROUPING_ID:
+ case PlSqlParser.GROUPS:
+ case PlSqlParser.GUARANTEED:
+ case PlSqlParser.GUARANTEE:
+ case PlSqlParser.GUARD:
+ case PlSqlParser.HASH_AJ:
+ case PlSqlParser.HASH:
+ case PlSqlParser.HASHKEYS:
+ case PlSqlParser.HASH_SJ:
+ case PlSqlParser.HEADER:
+ case PlSqlParser.HEAP:
+ case PlSqlParser.HELP:
+ case PlSqlParser.HEXTORAW:
+ case PlSqlParser.HEXTOREF:
+ case PlSqlParser.HIDDEN_KEYWORD:
+ case PlSqlParser.HIDE:
+ case PlSqlParser.HIERARCHY:
+ case PlSqlParser.HIGH:
+ case PlSqlParser.HINTSET_BEGIN:
+ case PlSqlParser.HINTSET_END:
+ case PlSqlParser.HOT:
+ case PlSqlParser.HOUR:
+ case PlSqlParser.HWM_BROKERED:
+ case PlSqlParser.HYBRID:
+ case PlSqlParser.IDENTIFIER:
+ case PlSqlParser.IDENTITY:
+ case PlSqlParser.IDGENERATORS:
+ case PlSqlParser.ID:
+ case PlSqlParser.IDLE_TIME:
+ case PlSqlParser.IF:
+ case PlSqlParser.IGNORE:
+ case PlSqlParser.IGNORE_OPTIM_EMBEDDED_HINTS:
+ case PlSqlParser.IGNORE_ROW_ON_DUPKEY_INDEX:
+ case PlSqlParser.IGNORE_WHERE_CLAUSE:
+ case PlSqlParser.ILM:
+ case PlSqlParser.IMMEDIATE:
+ case PlSqlParser.IMPACT:
+ case PlSqlParser.IMPORT:
+ case PlSqlParser.INACTIVE:
+ case PlSqlParser.INCLUDE:
+ case PlSqlParser.INCLUDE_VERSION:
+ case PlSqlParser.INCLUDING:
+ case PlSqlParser.INCREMENTAL:
+ case PlSqlParser.INCREMENT:
+ case PlSqlParser.INCR:
+ case PlSqlParser.INDENT:
+ case PlSqlParser.INDEX_ASC:
+ case PlSqlParser.INDEX_COMBINE:
+ case PlSqlParser.INDEX_DESC:
+ case PlSqlParser.INDEXED:
+ case PlSqlParser.INDEXES:
+ case PlSqlParser.INDEX_FFS:
+ case PlSqlParser.INDEX_FILTER:
+ case PlSqlParser.INDEXING:
+ case PlSqlParser.INDEX_JOIN:
+ case PlSqlParser.INDEX_ROWS:
+ case PlSqlParser.INDEX_RRS:
+ case PlSqlParser.INDEX_RS_ASC:
+ case PlSqlParser.INDEX_RS_DESC:
+ case PlSqlParser.INDEX_RS:
+ case PlSqlParser.INDEX_SCAN:
+ case PlSqlParser.INDEX_SKIP_SCAN:
+ case PlSqlParser.INDEX_SS_ASC:
+ case PlSqlParser.INDEX_SS_DESC:
+ case PlSqlParser.INDEX_SS:
+ case PlSqlParser.INDEX_STATS:
+ case PlSqlParser.INDEXTYPE:
+ case PlSqlParser.INDEXTYPES:
+ case PlSqlParser.INDICATOR:
+ case PlSqlParser.INDICES:
+ case PlSqlParser.INFINITE:
+ case PlSqlParser.INFORMATIONAL:
+ case PlSqlParser.INHERIT:
+ case PlSqlParser.INITCAP:
+ case PlSqlParser.INITIAL:
+ case PlSqlParser.INITIALIZED:
+ case PlSqlParser.INITIALLY:
+ case PlSqlParser.INITRANS:
+ case PlSqlParser.INLINE:
+ case PlSqlParser.INLINE_XMLTYPE_NT:
+ case PlSqlParser.INMEMORY:
+ case PlSqlParser.IN_MEMORY_METADATA:
+ case PlSqlParser.INMEMORY_PRUNING:
+ case PlSqlParser.INNER:
+ case PlSqlParser.INOUT:
+ case PlSqlParser.INPLACE:
+ case PlSqlParser.INSERTCHILDXMLAFTER:
+ case PlSqlParser.INSERTCHILDXMLBEFORE:
+ case PlSqlParser.INSERTCHILDXML:
+ case PlSqlParser.INSERTXMLAFTER:
+ case PlSqlParser.INSERTXMLBEFORE:
+ case PlSqlParser.INSTANCE:
+ case PlSqlParser.INSTANCES:
+ case PlSqlParser.INSTANTIABLE:
+ case PlSqlParser.INSTANTLY:
+ case PlSqlParser.INSTEAD:
+ case PlSqlParser.INSTR2:
+ case PlSqlParser.INSTR4:
+ case PlSqlParser.INSTRB:
+ case PlSqlParser.INSTRC:
+ case PlSqlParser.INSTR:
+ case PlSqlParser.INTEGER:
+ case PlSqlParser.INTERLEAVED:
+ case PlSqlParser.INTERMEDIATE:
+ case PlSqlParser.INTERNAL_CONVERT:
+ case PlSqlParser.INTERNAL_USE:
+ case PlSqlParser.INTERPRETED:
+ case PlSqlParser.INTERVAL:
+ case PlSqlParser.INT:
+ case PlSqlParser.INVALIDATE:
+ case PlSqlParser.INVISIBLE:
+ case PlSqlParser.IN_XQUERY:
+ case PlSqlParser.ISOLATION:
+ case PlSqlParser.ISOLATION_LEVEL:
+ case PlSqlParser.ITERATE:
+ case PlSqlParser.ITERATION_NUMBER:
+ case PlSqlParser.JAVA:
+ case PlSqlParser.JOB:
+ case PlSqlParser.JOIN:
+ case PlSqlParser.JSON_ARRAYAGG:
+ case PlSqlParser.JSON_ARRAY:
+ case PlSqlParser.JSON_EQUAL:
+ case PlSqlParser.JSON_EXISTS2:
+ case PlSqlParser.JSON_EXISTS:
+ case PlSqlParser.JSONGET:
+ case PlSqlParser.JSON:
+ case PlSqlParser.JSON_OBJECTAGG:
+ case PlSqlParser.JSON_OBJECT:
+ case PlSqlParser.JSONPARSE:
+ case PlSqlParser.JSON_QUERY:
+ case PlSqlParser.JSON_SERIALIZE:
+ case PlSqlParser.JSON_TABLE:
+ case PlSqlParser.JSON_TEXTCONTAINS2:
+ case PlSqlParser.JSON_TEXTCONTAINS:
+ case PlSqlParser.JSON_VALUE:
+ case PlSqlParser.KEEP_DUPLICATES:
+ case PlSqlParser.KEEP:
+ case PlSqlParser.KERBEROS:
+ case PlSqlParser.KEY:
+ case PlSqlParser.KEY_LENGTH:
+ case PlSqlParser.KEYSIZE:
+ case PlSqlParser.KEYS:
+ case PlSqlParser.KEYSTORE:
+ case PlSqlParser.KILL:
+ case PlSqlParser.LABEL:
+ case PlSqlParser.LANGUAGE:
+ case PlSqlParser.LAST_DAY:
+ case PlSqlParser.LAST:
+ case PlSqlParser.LAST_VALUE:
+ case PlSqlParser.LATERAL:
+ case PlSqlParser.LAX:
+ case PlSqlParser.LAYER:
+ case PlSqlParser.LDAP_REGISTRATION_ENABLED:
+ case PlSqlParser.LDAP_REGISTRATION:
+ case PlSqlParser.LDAP_REG_SYNC_INTERVAL:
+ case PlSqlParser.LEADING:
+ case PlSqlParser.LEFT:
+ case PlSqlParser.LENGTH2:
+ case PlSqlParser.LENGTH4:
+ case PlSqlParser.LENGTHB:
+ case PlSqlParser.LENGTHC:
+ case PlSqlParser.LENGTH:
+ case PlSqlParser.LESS:
+ case PlSqlParser.LEVEL:
+ case PlSqlParser.LEVELS:
+ case PlSqlParser.LIBRARY:
+ case PlSqlParser.LIFECYCLE:
+ case PlSqlParser.LIFE:
+ case PlSqlParser.LIFETIME:
+ case PlSqlParser.LIKE2:
+ case PlSqlParser.LIKE4:
+ case PlSqlParser.LIKEC:
+ case PlSqlParser.LIKE_EXPAND:
+ case PlSqlParser.LIMIT:
+ case PlSqlParser.LINEAR:
+ case PlSqlParser.LINK:
+ case PlSqlParser.LIST:
+ case PlSqlParser.LN:
+ case PlSqlParser.LNNVL:
+ case PlSqlParser.LOAD:
+ case PlSqlParser.LOB:
+ case PlSqlParser.LOBNVL:
+ case PlSqlParser.LOBS:
+ case PlSqlParser.LOCAL_INDEXES:
+ case PlSqlParser.LOCAL:
+ case PlSqlParser.LOCALTIME:
+ case PlSqlParser.LOCALTIMESTAMP:
+ case PlSqlParser.LOCATION:
+ case PlSqlParser.LOCATOR:
+ case PlSqlParser.LOCKED:
+ case PlSqlParser.LOCKING:
+ case PlSqlParser.LOGFILE:
+ case PlSqlParser.LOGFILES:
+ case PlSqlParser.LOGGING:
+ case PlSqlParser.LOGICAL:
+ case PlSqlParser.LOGICAL_READS_PER_CALL:
+ case PlSqlParser.LOGICAL_READS_PER_SESSION:
+ case PlSqlParser.LOG:
+ case PlSqlParser.LOGMINING:
+ case PlSqlParser.LOGOFF:
+ case PlSqlParser.LOGON:
+ case PlSqlParser.LOG_READ_ONLY_VIOLATIONS:
+ case PlSqlParser.LONG:
+ case PlSqlParser.LOOP:
+ case PlSqlParser.LOWER:
+ case PlSqlParser.LOW:
+ case PlSqlParser.LPAD:
+ case PlSqlParser.LTRIM:
+ case PlSqlParser.MAIN:
+ case PlSqlParser.MAKE_REF:
+ case PlSqlParser.MANAGED:
+ case PlSqlParser.MANAGE:
+ case PlSqlParser.MANAGEMENT:
+ case PlSqlParser.MANAGER:
+ case PlSqlParser.MANUAL:
+ case PlSqlParser.MAP:
+ case PlSqlParser.MAPPING:
+ case PlSqlParser.MASTER:
+ case PlSqlParser.MATCHED:
+ case PlSqlParser.MATCHES:
+ case PlSqlParser.MATCH:
+ case PlSqlParser.MATCH_NUMBER:
+ case PlSqlParser.MATCH_RECOGNIZE:
+ case PlSqlParser.MATERIALIZED:
+ case PlSqlParser.MATERIALIZE:
+ case PlSqlParser.MAXARCHLOGS:
+ case PlSqlParser.MAXDATAFILES:
+ case PlSqlParser.MAXEXTENTS:
+ case PlSqlParser.MAXIMIZE:
+ case PlSqlParser.MAXINSTANCES:
+ case PlSqlParser.MAXLOGFILES:
+ case PlSqlParser.MAXLOGHISTORY:
+ case PlSqlParser.MAXLOGMEMBERS:
+ case PlSqlParser.MAX_SHARED_TEMP_SIZE:
+ case PlSqlParser.MAXSIZE:
+ case PlSqlParser.MAXTRANS:
+ case PlSqlParser.MAXVALUE:
+ case PlSqlParser.MEASURE:
+ case PlSqlParser.MEASURES:
+ case PlSqlParser.MEDIUM:
+ case PlSqlParser.MEMBER:
+ case PlSqlParser.MEMCOMPRESS:
+ case PlSqlParser.MEMORY:
+ case PlSqlParser.MERGEACTIONS:
+ case PlSqlParser.MERGE_AJ:
+ case PlSqlParser.MERGE_CONST_ON:
+ case PlSqlParser.MERGE:
+ case PlSqlParser.MERGE_SJ:
+ case PlSqlParser.METADATA:
+ case PlSqlParser.METHOD:
+ case PlSqlParser.MIGRATE:
+ case PlSqlParser.MIGRATION:
+ case PlSqlParser.MINEXTENTS:
+ case PlSqlParser.MINIMIZE:
+ case PlSqlParser.MINIMUM:
+ case PlSqlParser.MINING:
+ case PlSqlParser.MINUS_NULL:
+ case PlSqlParser.MINUTE:
+ case PlSqlParser.MINVALUE:
+ case PlSqlParser.MIRRORCOLD:
+ case PlSqlParser.MIRRORHOT:
+ case PlSqlParser.MIRROR:
+ case PlSqlParser.MLSLABEL:
+ case PlSqlParser.MODEL_COMPILE_SUBQUERY:
+ case PlSqlParser.MODEL_DONTVERIFY_UNIQUENESS:
+ case PlSqlParser.MODEL_DYNAMIC_SUBQUERY:
+ case PlSqlParser.MODEL_MIN_ANALYSIS:
+ case PlSqlParser.MODEL:
+ case PlSqlParser.MODEL_NB:
+ case PlSqlParser.MODEL_NO_ANALYSIS:
+ case PlSqlParser.MODEL_PBY:
+ case PlSqlParser.MODEL_PUSH_REF:
+ case PlSqlParser.MODEL_SV:
+ case PlSqlParser.MODIFICATION:
+ case PlSqlParser.MODIFY_COLUMN_TYPE:
+ case PlSqlParser.MODIFY:
+ case PlSqlParser.MOD:
+ case PlSqlParser.MODULE:
+ case PlSqlParser.MONITORING:
+ case PlSqlParser.MONITOR:
+ case PlSqlParser.MONTH:
+ case PlSqlParser.MONTHS_BETWEEN:
+ case PlSqlParser.MONTHS:
+ case PlSqlParser.MOUNT:
+ case PlSqlParser.MOUNTPATH:
+ case PlSqlParser.MOVEMENT:
+ case PlSqlParser.MOVE:
+ case PlSqlParser.MULTIDIMENSIONAL:
+ case PlSqlParser.MULTISET:
+ case PlSqlParser.MV_MERGE:
+ case PlSqlParser.NAMED:
+ case PlSqlParser.NAME:
+ case PlSqlParser.NAMESPACE:
+ case PlSqlParser.NAN:
+ case PlSqlParser.NANVL:
+ case PlSqlParser.NATIONAL:
+ case PlSqlParser.NATIVE_FULL_OUTER_JOIN:
+ case PlSqlParser.NATIVE:
+ case PlSqlParser.NATURAL:
+ case PlSqlParser.NAV:
+ case PlSqlParser.NCHAR_CS:
+ case PlSqlParser.NCHAR:
+ case PlSqlParser.NCHR:
+ case PlSqlParser.NCLOB:
+ case PlSqlParser.NEEDED:
+ case PlSqlParser.NEG:
+ case PlSqlParser.NESTED:
+ case PlSqlParser.NESTED_TABLE_FAST_INSERT:
+ case PlSqlParser.NESTED_TABLE_GET_REFS:
+ case PlSqlParser.NESTED_TABLE_ID:
+ case PlSqlParser.NESTED_TABLE_SET_REFS:
+ case PlSqlParser.NESTED_TABLE_SET_SETID:
+ case PlSqlParser.NETWORK:
+ case PlSqlParser.NEVER:
+ case PlSqlParser.NEW:
+ case PlSqlParser.NEW_TIME:
+ case PlSqlParser.NEXT_DAY:
+ case PlSqlParser.NEXT:
+ case PlSqlParser.NL_AJ:
+ case PlSqlParser.NLJ_BATCHING:
+ case PlSqlParser.NLJ_INDEX_FILTER:
+ case PlSqlParser.NLJ_INDEX_SCAN:
+ case PlSqlParser.NLJ_PREFETCH:
+ case PlSqlParser.NLS_CALENDAR:
+ case PlSqlParser.NLS_CHARACTERSET:
+ case PlSqlParser.NLS_CHARSET_DECL_LEN:
+ case PlSqlParser.NLS_CHARSET_ID:
+ case PlSqlParser.NLS_CHARSET_NAME:
+ case PlSqlParser.NLS_COMP:
+ case PlSqlParser.NLS_CURRENCY:
+ case PlSqlParser.NLS_DATE_FORMAT:
+ case PlSqlParser.NLS_DATE_LANGUAGE:
+ case PlSqlParser.NLS_INITCAP:
+ case PlSqlParser.NLS_ISO_CURRENCY:
+ case PlSqlParser.NL_SJ:
+ case PlSqlParser.NLS_LANG:
+ case PlSqlParser.NLS_LANGUAGE:
+ case PlSqlParser.NLS_LENGTH_SEMANTICS:
+ case PlSqlParser.NLS_LOWER:
+ case PlSqlParser.NLS_NCHAR_CONV_EXCP:
+ case PlSqlParser.NLS_NUMERIC_CHARACTERS:
+ case PlSqlParser.NLS_SORT:
+ case PlSqlParser.NLSSORT:
+ case PlSqlParser.NLS_SPECIAL_CHARS:
+ case PlSqlParser.NLS_TERRITORY:
+ case PlSqlParser.NLS_UPPER:
+ case PlSqlParser.NO_ACCESS:
+ case PlSqlParser.NO_ADAPTIVE_PLAN:
+ case PlSqlParser.NO_ANSI_REARCH:
+ case PlSqlParser.NOAPPEND:
+ case PlSqlParser.NOARCHIVELOG:
+ case PlSqlParser.NOAUDIT:
+ case PlSqlParser.NO_AUTO_REOPTIMIZE:
+ case PlSqlParser.NO_BASETABLE_MULTIMV_REWRITE:
+ case PlSqlParser.NO_BATCH_TABLE_ACCESS_BY_ROWID:
+ case PlSqlParser.NO_BIND_AWARE:
+ case PlSqlParser.NO_BUFFER:
+ case PlSqlParser.NOCACHE:
+ case PlSqlParser.NO_CARTESIAN:
+ case PlSqlParser.NO_CHECK_ACL_REWRITE:
+ case PlSqlParser.NO_CLUSTER_BY_ROWID:
+ case PlSqlParser.NO_CLUSTERING:
+ case PlSqlParser.NO_COALESCE_SQ:
+ case PlSqlParser.NO_COMMON_DATA:
+ case PlSqlParser.NO_CONNECT_BY_CB_WHR_ONLY:
+ case PlSqlParser.NO_CONNECT_BY_COMBINE_SW:
+ case PlSqlParser.NO_CONNECT_BY_COST_BASED:
+ case PlSqlParser.NO_CONNECT_BY_ELIM_DUPS:
+ case PlSqlParser.NO_CONNECT_BY_FILTERING:
+ case PlSqlParser.NOCOPY:
+ case PlSqlParser.NO_COST_XML_QUERY_REWRITE:
+ case PlSqlParser.NO_CPU_COSTING:
+ case PlSqlParser.NOCPU_COSTING:
+ case PlSqlParser.NOCYCLE:
+ case PlSqlParser.NO_DATA_SECURITY_REWRITE:
+ case PlSqlParser.NO_DECORRELATE:
+ case PlSqlParser.NODELAY:
+ case PlSqlParser.NO_DOMAIN_INDEX_FILTER:
+ case PlSqlParser.NO_DST_UPGRADE_INSERT_CONV:
+ case PlSqlParser.NO_ELIM_GROUPBY:
+ case PlSqlParser.NO_ELIMINATE_JOIN:
+ case PlSqlParser.NO_ELIMINATE_OBY:
+ case PlSqlParser.NO_ELIMINATE_OUTER_JOIN:
+ case PlSqlParser.NOENTITYESCAPING:
+ case PlSqlParser.NO_EXPAND_GSET_TO_UNION:
+ case PlSqlParser.NO_EXPAND:
+ case PlSqlParser.NO_EXPAND_TABLE:
+ case PlSqlParser.NO_FACT:
+ case PlSqlParser.NO_FACTORIZE_JOIN:
+ case PlSqlParser.NO_FILTERING:
+ case PlSqlParser.NOFORCE:
+ case PlSqlParser.NO_FULL_OUTER_JOIN_TO_OUTER:
+ case PlSqlParser.NO_GATHER_OPTIMIZER_STATISTICS:
+ case PlSqlParser.NO_GBY_PUSHDOWN:
+ case PlSqlParser.NOGUARANTEE:
+ case PlSqlParser.NO_INDEX_FFS:
+ case PlSqlParser.NO_INDEX:
+ case PlSqlParser.NO_INDEX_SS:
+ case PlSqlParser.NO_INMEMORY:
+ case PlSqlParser.NO_INMEMORY_PRUNING:
+ case PlSqlParser.NOKEEP:
+ case PlSqlParser.NO_LOAD:
+ case PlSqlParser.NOLOCAL:
+ case PlSqlParser.NOLOGGING:
+ case PlSqlParser.NOMAPPING:
+ case PlSqlParser.NOMAXVALUE:
+ case PlSqlParser.NO_MERGE:
+ case PlSqlParser.NOMINIMIZE:
+ case PlSqlParser.NOMINVALUE:
+ case PlSqlParser.NO_MODEL_PUSH_REF:
+ case PlSqlParser.NO_MONITORING:
+ case PlSqlParser.NOMONITORING:
+ case PlSqlParser.NO_MONITOR:
+ case PlSqlParser.NO_MULTIMV_REWRITE:
+ case PlSqlParser.NO_NATIVE_FULL_OUTER_JOIN:
+ case PlSqlParser.NONBLOCKING:
+ case PlSqlParser.NONEDITIONABLE:
+ case PlSqlParser.NONE:
+ case PlSqlParser.NO_NLJ_BATCHING:
+ case PlSqlParser.NO_NLJ_PREFETCH:
+ case PlSqlParser.NO:
+ case PlSqlParser.NONSCHEMA:
+ case PlSqlParser.NO_OBJECT_LINK:
+ case PlSqlParser.NOORDER:
+ case PlSqlParser.NO_ORDER_ROLLUPS:
+ case PlSqlParser.NO_OUTER_JOIN_TO_ANTI:
+ case PlSqlParser.NO_OUTER_JOIN_TO_INNER:
+ case PlSqlParser.NOOVERRIDE:
+ case PlSqlParser.NO_PARALLEL_INDEX:
+ case PlSqlParser.NOPARALLEL_INDEX:
+ case PlSqlParser.NO_PARALLEL:
+ case PlSqlParser.NOPARALLEL:
+ case PlSqlParser.NO_PARTIAL_COMMIT:
+ case PlSqlParser.NO_PARTIAL_JOIN:
+ case PlSqlParser.NO_PARTIAL_ROLLUP_PUSHDOWN:
+ case PlSqlParser.NOPARTITION:
+ case PlSqlParser.NO_PLACE_DISTINCT:
+ case PlSqlParser.NO_PLACE_GROUP_BY:
+ case PlSqlParser.NO_PQ_CONCURRENT_UNION:
+ case PlSqlParser.NO_PQ_MAP:
+ case PlSqlParser.NO_PQ_REPLICATE:
+ case PlSqlParser.NO_PQ_SKEW:
+ case PlSqlParser.NO_PRUNE_GSETS:
+ case PlSqlParser.NO_PULL_PRED:
+ case PlSqlParser.NO_PUSH_PRED:
+ case PlSqlParser.NO_PUSH_SUBQ:
+ case PlSqlParser.NO_PX_FAULT_TOLERANCE:
+ case PlSqlParser.NO_PX_JOIN_FILTER:
+ case PlSqlParser.NO_QKN_BUFF:
+ case PlSqlParser.NO_QUERY_TRANSFORMATION:
+ case PlSqlParser.NO_REF_CASCADE:
+ case PlSqlParser.NORELOCATE:
+ case PlSqlParser.NORELY:
+ case PlSqlParser.NOREPAIR:
+ case PlSqlParser.NOREPLAY:
+ case PlSqlParser.NORESETLOGS:
+ case PlSqlParser.NO_RESULT_CACHE:
+ case PlSqlParser.NOREVERSE:
+ case PlSqlParser.NO_REWRITE:
+ case PlSqlParser.NOREWRITE:
+ case PlSqlParser.NORMAL:
+ case PlSqlParser.NO_ROOT_SW_FOR_LOCAL:
+ case PlSqlParser.NOROWDEPENDENCIES:
+ case PlSqlParser.NOSCHEMACHECK:
+ case PlSqlParser.NOSEGMENT:
+ case PlSqlParser.NO_SEMIJOIN:
+ case PlSqlParser.NO_SEMI_TO_INNER:
+ case PlSqlParser.NO_SET_TO_JOIN:
+ case PlSqlParser.NOSORT:
+ case PlSqlParser.NO_SQL_TRANSLATION:
+ case PlSqlParser.NO_SQL_TUNE:
+ case PlSqlParser.NO_STAR_TRANSFORMATION:
+ case PlSqlParser.NO_STATEMENT_QUEUING:
+ case PlSqlParser.NO_STATS_GSETS:
+ case PlSqlParser.NOSTRICT:
+ case PlSqlParser.NO_SUBQUERY_PRUNING:
+ case PlSqlParser.NO_SUBSTRB_PAD:
+ case PlSqlParser.NO_SWAP_JOIN_INPUTS:
+ case PlSqlParser.NOSWITCH:
+ case PlSqlParser.NO_TABLE_LOOKUP_BY_NL:
+ case PlSqlParser.NO_TEMP_TABLE:
+ case PlSqlParser.NOTHING:
+ case PlSqlParser.NOTIFICATION:
+ case PlSqlParser.NO_TRANSFORM_DISTINCT_AGG:
+ case PlSqlParser.NO_UNNEST:
+ case PlSqlParser.NO_USE_CUBE:
+ case PlSqlParser.NO_USE_HASH_AGGREGATION:
+ case PlSqlParser.NO_USE_HASH_GBY_FOR_PUSHDOWN:
+ case PlSqlParser.NO_USE_HASH:
+ case PlSqlParser.NO_USE_INVISIBLE_INDEXES:
+ case PlSqlParser.NO_USE_MERGE:
+ case PlSqlParser.NO_USE_NL:
+ case PlSqlParser.NO_USE_VECTOR_AGGREGATION:
+ case PlSqlParser.NOVALIDATE:
+ case PlSqlParser.NO_VECTOR_TRANSFORM_DIMS:
+ case PlSqlParser.NO_VECTOR_TRANSFORM_FACT:
+ case PlSqlParser.NO_VECTOR_TRANSFORM:
+ case PlSqlParser.NO_XDB_FASTPATH_INSERT:
+ case PlSqlParser.NO_XML_DML_REWRITE:
+ case PlSqlParser.NO_XMLINDEX_REWRITE_IN_SELECT:
+ case PlSqlParser.NO_XMLINDEX_REWRITE:
+ case PlSqlParser.NO_XML_QUERY_REWRITE:
+ case PlSqlParser.NO_ZONEMAP:
+ case PlSqlParser.NTH_VALUE:
+ case PlSqlParser.NULLIF:
+ case PlSqlParser.NULLS:
+ case PlSqlParser.NUMBER:
+ case PlSqlParser.NUMERIC:
+ case PlSqlParser.NUM_INDEX_KEYS:
+ case PlSqlParser.NUMTODSINTERVAL:
+ case PlSqlParser.NUMTOYMINTERVAL:
+ case PlSqlParser.NVARCHAR2:
+ case PlSqlParser.NVL2:
+ case PlSqlParser.OBJECT2XML:
+ case PlSqlParser.OBJECT:
+ case PlSqlParser.OBJ_ID:
+ case PlSqlParser.OBJNO:
+ case PlSqlParser.OBJNO_REUSE:
+ case PlSqlParser.OCCURENCES:
+ case PlSqlParser.OFFLINE:
+ case PlSqlParser.OFF:
+ case PlSqlParser.OFFSET:
+ case PlSqlParser.OIDINDEX:
+ case PlSqlParser.OID:
+ case PlSqlParser.OLAP:
+ case PlSqlParser.OLD:
+ case PlSqlParser.OLD_PUSH_PRED:
+ case PlSqlParser.OLS:
+ case PlSqlParser.OLTP:
+ case PlSqlParser.OMIT:
+ case PlSqlParser.ONE:
+ case PlSqlParser.ONLINE:
+ case PlSqlParser.ONLY:
+ case PlSqlParser.OPAQUE:
+ case PlSqlParser.OPAQUE_TRANSFORM:
+ case PlSqlParser.OPAQUE_XCANONICAL:
+ case PlSqlParser.OPCODE:
+ case PlSqlParser.OPEN:
+ case PlSqlParser.OPERATIONS:
+ case PlSqlParser.OPERATOR:
+ case PlSqlParser.OPT_ESTIMATE:
+ case PlSqlParser.OPTIMAL:
+ case PlSqlParser.OPTIMIZE:
+ case PlSqlParser.OPTIMIZER_FEATURES_ENABLE:
+ case PlSqlParser.OPTIMIZER_GOAL:
+ case PlSqlParser.OPT_PARAM:
+ case PlSqlParser.ORA_BRANCH:
+ case PlSqlParser.ORA_CHECK_ACL:
+ case PlSqlParser.ORA_CHECK_PRIVILEGE:
+ case PlSqlParser.ORA_CLUSTERING:
+ case PlSqlParser.ORADATA:
+ case PlSqlParser.ORADEBUG:
+ case PlSqlParser.ORA_DST_AFFECTED:
+ case PlSqlParser.ORA_DST_CONVERT:
+ case PlSqlParser.ORA_DST_ERROR:
+ case PlSqlParser.ORA_GET_ACLIDS:
+ case PlSqlParser.ORA_GET_PRIVILEGES:
+ case PlSqlParser.ORA_HASH:
+ case PlSqlParser.ORA_INVOKING_USERID:
+ case PlSqlParser.ORA_INVOKING_USER:
+ case PlSqlParser.ORA_INVOKING_XS_USER_GUID:
+ case PlSqlParser.ORA_INVOKING_XS_USER:
+ case PlSqlParser.ORA_RAWCOMPARE:
+ case PlSqlParser.ORA_RAWCONCAT:
+ case PlSqlParser.ORA_ROWSCN:
+ case PlSqlParser.ORA_ROWSCN_RAW:
+ case PlSqlParser.ORA_ROWVERSION:
+ case PlSqlParser.ORA_TABVERSION:
+ case PlSqlParser.ORA_WRITE_TIME:
+ case PlSqlParser.ORDERED:
+ case PlSqlParser.ORDERED_PREDICATES:
+ case PlSqlParser.ORDINALITY:
+ case PlSqlParser.OR_EXPAND:
+ case PlSqlParser.ORGANIZATION:
+ case PlSqlParser.OR_PREDICATES:
+ case PlSqlParser.OSERROR:
+ case PlSqlParser.OTHER:
+ case PlSqlParser.OUTER_JOIN_TO_ANTI:
+ case PlSqlParser.OUTER_JOIN_TO_INNER:
+ case PlSqlParser.OUTER:
+ case PlSqlParser.OUTLINE_LEAF:
+ case PlSqlParser.OUTLINE:
+ case PlSqlParser.OUT_OF_LINE:
+ case PlSqlParser.OUT:
+ case PlSqlParser.OVERFLOW_NOMOVE:
+ case PlSqlParser.OVERFLOW:
+ case PlSqlParser.OVERLAPS:
+ case PlSqlParser.OVER:
+ case PlSqlParser.OVERRIDING:
+ case PlSqlParser.OWNER:
+ case PlSqlParser.OWNERSHIP:
+ case PlSqlParser.OWN:
+ case PlSqlParser.PACKAGE:
+ case PlSqlParser.PACKAGES:
+ case PlSqlParser.PARALLEL_ENABLE:
+ case PlSqlParser.PARALLEL_INDEX:
+ case PlSqlParser.PARALLEL:
+ case PlSqlParser.PARAMETERS:
+ case PlSqlParser.PARAM:
+ case PlSqlParser.PARENT:
+ case PlSqlParser.PARITY:
+ case PlSqlParser.PARTIAL_JOIN:
+ case PlSqlParser.PARTIALLY:
+ case PlSqlParser.PARTIAL:
+ case PlSqlParser.PARTIAL_ROLLUP_PUSHDOWN:
+ case PlSqlParser.PARTITION_HASH:
+ case PlSqlParser.PARTITION_LIST:
+ case PlSqlParser.PARTITION:
+ case PlSqlParser.PARTITION_RANGE:
+ case PlSqlParser.PARTITIONS:
+ case PlSqlParser.PARTNUMINST:
+ case PlSqlParser.PASSING:
+ case PlSqlParser.PASSWORD_GRACE_TIME:
+ case PlSqlParser.PASSWORD_LIFE_TIME:
+ case PlSqlParser.PASSWORD_LOCK_TIME:
+ case PlSqlParser.PASSWORD:
+ case PlSqlParser.PASSWORD_REUSE_MAX:
+ case PlSqlParser.PASSWORD_REUSE_TIME:
+ case PlSqlParser.PASSWORD_VERIFY_FUNCTION:
+ case PlSqlParser.PAST:
+ case PlSqlParser.PATCH:
+ case PlSqlParser.PATH:
+ case PlSqlParser.PATH_PREFIX:
+ case PlSqlParser.PATHS:
+ case PlSqlParser.PATTERN:
+ case PlSqlParser.PBL_HS_BEGIN:
+ case PlSqlParser.PBL_HS_END:
+ case PlSqlParser.PCTINCREASE:
+ case PlSqlParser.PCTTHRESHOLD:
+ case PlSqlParser.PCTUSED:
+ case PlSqlParser.PCTVERSION:
+ case PlSqlParser.PENDING:
+ case PlSqlParser.PERCENT_KEYWORD:
+ case PlSqlParser.PERCENT_RANKM:
+ case PlSqlParser.PERFORMANCE:
+ case PlSqlParser.PERIOD_KEYWORD:
+ case PlSqlParser.PERMANENT:
+ case PlSqlParser.PERMISSION:
+ case PlSqlParser.PERMUTE:
+ case PlSqlParser.PER:
+ case PlSqlParser.PFILE:
+ case PlSqlParser.PHYSICAL:
+ case PlSqlParser.PIKEY:
+ case PlSqlParser.PIPELINED:
+ case PlSqlParser.PIV_GB:
+ case PlSqlParser.PIVOT:
+ case PlSqlParser.PIV_SSF:
+ case PlSqlParser.PLACE_DISTINCT:
+ case PlSqlParser.PLACE_GROUP_BY:
+ case PlSqlParser.PLAN:
+ case PlSqlParser.PLSCOPE_SETTINGS:
+ case PlSqlParser.PLS_INTEGER:
+ case PlSqlParser.PLSQL_CCFLAGS:
+ case PlSqlParser.PLSQL_CODE_TYPE:
+ case PlSqlParser.PLSQL_DEBUG:
+ case PlSqlParser.PLSQL_OPTIMIZE_LEVEL:
+ case PlSqlParser.PLSQL_WARNINGS:
+ case PlSqlParser.PLUGGABLE:
+ case PlSqlParser.POINT:
+ case PlSqlParser.POLICY:
+ case PlSqlParser.POOL_16K:
+ case PlSqlParser.POOL_2K:
+ case PlSqlParser.POOL_32K:
+ case PlSqlParser.POOL_4K:
+ case PlSqlParser.POOL_8K:
+ case PlSqlParser.POSITIVEN:
+ case PlSqlParser.POSITIVE:
+ case PlSqlParser.POST_TRANSACTION:
+ case PlSqlParser.POWERMULTISET_BY_CARDINALITY:
+ case PlSqlParser.POWERMULTISET:
+ case PlSqlParser.POWER:
+ case PlSqlParser.PQ_CONCURRENT_UNION:
+ case PlSqlParser.PQ_DISTRIBUTE:
+ case PlSqlParser.PQ_DISTRIBUTE_WINDOW:
+ case PlSqlParser.PQ_FILTER:
+ case PlSqlParser.PQ_MAP:
+ case PlSqlParser.PQ_NOMAP:
+ case PlSqlParser.PQ_REPLICATE:
+ case PlSqlParser.PQ_SKEW:
+ case PlSqlParser.PRAGMA:
+ case PlSqlParser.PREBUILT:
+ case PlSqlParser.PRECEDES:
+ case PlSqlParser.PRECEDING:
+ case PlSqlParser.PRECISION:
+ case PlSqlParser.PRECOMPUTE_SUBQUERY:
+ case PlSqlParser.PREDICATE_REORDERS:
+ case PlSqlParser.PRELOAD:
+ case PlSqlParser.PREPARE:
+ case PlSqlParser.PRESENTNNV:
+ case PlSqlParser.PRESENT:
+ case PlSqlParser.PRESENTV:
+ case PlSqlParser.PRESERVE_OID:
+ case PlSqlParser.PRESERVE:
+ case PlSqlParser.PRETTY:
+ case PlSqlParser.PREVIOUS:
+ case PlSqlParser.PREV:
+ case PlSqlParser.PRIMARY:
+ case PlSqlParser.PRINTBLOBTOCLOB:
+ case PlSqlParser.PRIORITY:
+ case PlSqlParser.PRIVATE:
+ case PlSqlParser.PRIVATE_SGA:
+ case PlSqlParser.PRIVILEGED:
+ case PlSqlParser.PRIVILEGE:
+ case PlSqlParser.PRIVILEGES:
+ case PlSqlParser.PROCEDURAL:
+ case PlSqlParser.PROCEDURE:
+ case PlSqlParser.PROCESS:
+ case PlSqlParser.PROFILE:
+ case PlSqlParser.PROGRAM:
+ case PlSqlParser.PROJECT:
+ case PlSqlParser.PROPAGATE:
+ case PlSqlParser.PROTECTED:
+ case PlSqlParser.PROTECTION:
+ case PlSqlParser.PROXY:
+ case PlSqlParser.PRUNING:
+ case PlSqlParser.PULL_PRED:
+ case PlSqlParser.PURGE:
+ case PlSqlParser.PUSH_PRED:
+ case PlSqlParser.PUSH_SUBQ:
+ case PlSqlParser.PX_FAULT_TOLERANCE:
+ case PlSqlParser.PX_GRANULE:
+ case PlSqlParser.PX_JOIN_FILTER:
+ case PlSqlParser.QB_NAME:
+ case PlSqlParser.QUERY_BLOCK:
+ case PlSqlParser.QUERY:
+ case PlSqlParser.QUEUE_CURR:
+ case PlSqlParser.QUEUE:
+ case PlSqlParser.QUEUE_ROWP:
+ case PlSqlParser.QUIESCE:
+ case PlSqlParser.QUORUM:
+ case PlSqlParser.QUOTA:
+ case PlSqlParser.RAISE:
+ case PlSqlParser.RANDOM_LOCAL:
+ case PlSqlParser.RANDOM:
+ case PlSqlParser.RANGE:
+ case PlSqlParser.RANKM:
+ case PlSqlParser.RAPIDLY:
+ case PlSqlParser.RAW:
+ case PlSqlParser.RAWTOHEX:
+ case PlSqlParser.RAWTONHEX:
+ case PlSqlParser.RBA:
+ case PlSqlParser.RBO_OUTLINE:
+ case PlSqlParser.RDBA:
+ case PlSqlParser.READ:
+ case PlSqlParser.READS:
+ case PlSqlParser.REALM:
+ case PlSqlParser.REAL:
+ case PlSqlParser.REBALANCE:
+ case PlSqlParser.REBUILD:
+ case PlSqlParser.RECORD:
+ case PlSqlParser.RECORDS_PER_BLOCK:
+ case PlSqlParser.RECOVERABLE:
+ case PlSqlParser.RECOVER:
+ case PlSqlParser.RECOVERY:
+ case PlSqlParser.RECYCLEBIN:
+ case PlSqlParser.RECYCLE:
+ case PlSqlParser.REDACTION:
+ case PlSqlParser.REDEFINE:
+ case PlSqlParser.REDO:
+ case PlSqlParser.REDUCED:
+ case PlSqlParser.REDUNDANCY:
+ case PlSqlParser.REF_CASCADE_CURSOR:
+ case PlSqlParser.REFERENCED:
+ case PlSqlParser.REFERENCE:
+ case PlSqlParser.REFERENCES:
+ case PlSqlParser.REFERENCING:
+ case PlSqlParser.REF:
+ case PlSqlParser.REFRESH:
+ case PlSqlParser.REFTOHEX:
+ case PlSqlParser.REGEXP_COUNT:
+ case PlSqlParser.REGEXP_INSTR:
+ case PlSqlParser.REGEXP_LIKE:
+ case PlSqlParser.REGEXP_REPLACE:
+ case PlSqlParser.REGEXP_SUBSTR:
+ case PlSqlParser.REGISTER:
+ case PlSqlParser.REGR_AVGX:
+ case PlSqlParser.REGR_AVGY:
+ case PlSqlParser.REGR_COUNT:
+ case PlSqlParser.REGR_INTERCEPT:
+ case PlSqlParser.REGR_R2:
+ case PlSqlParser.REGR_SLOPE:
+ case PlSqlParser.REGR_SXX:
+ case PlSqlParser.REGR_SXY:
+ case PlSqlParser.REGR_SYY:
+ case PlSqlParser.REGULAR:
+ case PlSqlParser.REJECT:
+ case PlSqlParser.REKEY:
+ case PlSqlParser.RELATIONAL:
+ case PlSqlParser.RELOCATE:
+ case PlSqlParser.RELY:
+ case PlSqlParser.REMAINDER:
+ case PlSqlParser.REMOTE_MAPPED:
+ case PlSqlParser.REMOVE:
+ case PlSqlParser.RENAME:
+ case PlSqlParser.REPAIR:
+ case PlSqlParser.REPEAT:
+ case PlSqlParser.REPLACE:
+ case PlSqlParser.REPLICATION:
+ case PlSqlParser.REQUIRED:
+ case PlSqlParser.RESETLOGS:
+ case PlSqlParser.RESET:
+ case PlSqlParser.RESIZE:
+ case PlSqlParser.RESOLVE:
+ case PlSqlParser.RESOLVER:
+ case PlSqlParser.RESPECT:
+ case PlSqlParser.RESTART:
+ case PlSqlParser.RESTORE_AS_INTERVALS:
+ case PlSqlParser.RESTORE:
+ case PlSqlParser.RESTRICT_ALL_REF_CONS:
+ case PlSqlParser.RESTRICTED:
+ case PlSqlParser.RESTRICT_REFERENCES:
+ case PlSqlParser.RESTRICT:
+ case PlSqlParser.RESULT_CACHE:
+ case PlSqlParser.RESULT:
+ case PlSqlParser.RESUMABLE:
+ case PlSqlParser.RESUME:
+ case PlSqlParser.RETENTION:
+ case PlSqlParser.RETRY_ON_ROW_CHANGE:
+ case PlSqlParser.RETURNING:
+ case PlSqlParser.RETURN:
+ case PlSqlParser.REUSE:
+ case PlSqlParser.REVERSE:
+ case PlSqlParser.REWRITE_OR_ERROR:
+ case PlSqlParser.REWRITE:
+ case PlSqlParser.RIGHT:
+ case PlSqlParser.ROLE:
+ case PlSqlParser.ROLESET:
+ case PlSqlParser.ROLES:
+ case PlSqlParser.ROLLBACK:
+ case PlSqlParser.ROLLING:
+ case PlSqlParser.ROLLUP:
+ case PlSqlParser.ROWDEPENDENCIES:
+ case PlSqlParser.ROWID_MAPPING_TABLE:
+ case PlSqlParser.ROWID:
+ case PlSqlParser.ROWIDTOCHAR:
+ case PlSqlParser.ROWIDTONCHAR:
+ case PlSqlParser.ROW_LENGTH:
+ case PlSqlParser.ROWNUM:
+ case PlSqlParser.ROW:
+ case PlSqlParser.ROWS:
+ case PlSqlParser.RPAD:
+ case PlSqlParser.RTRIM:
+ case PlSqlParser.RULE:
+ case PlSqlParser.RULES:
+ case PlSqlParser.RUNNING:
+ case PlSqlParser.SALT:
+ case PlSqlParser.SAMPLE:
+ case PlSqlParser.SAVE_AS_INTERVALS:
+ case PlSqlParser.SAVEPOINT:
+ case PlSqlParser.SAVE:
+ case PlSqlParser.SB4:
+ case PlSqlParser.SCALE_ROWS:
+ case PlSqlParser.SCALE:
+ case PlSqlParser.SCAN_INSTANCES:
+ case PlSqlParser.SCAN:
+ case PlSqlParser.SCHEDULER:
+ case PlSqlParser.SCHEMACHECK:
+ case PlSqlParser.SCHEMA:
+ case PlSqlParser.SCN_ASCENDING:
+ case PlSqlParser.SCN:
+ case PlSqlParser.SCOPE:
+ case PlSqlParser.SCRUB:
+ case PlSqlParser.SD_ALL:
+ case PlSqlParser.SD_INHIBIT:
+ case PlSqlParser.SDO_GEOM_MBR:
+ case PlSqlParser.SD_SHOW:
+ case PlSqlParser.SEARCH:
+ case PlSqlParser.SECOND:
+ case PlSqlParser.SECRET:
+ case PlSqlParser.SECUREFILE_DBA:
+ case PlSqlParser.SECUREFILE:
+ case PlSqlParser.SECURITY:
+ case PlSqlParser.SEED:
+ case PlSqlParser.SEG_BLOCK:
+ case PlSqlParser.SEG_FILE:
+ case PlSqlParser.SEGMENT:
+ case PlSqlParser.SELECTIVITY:
+ case PlSqlParser.SELF:
+ case PlSqlParser.SEMIJOIN_DRIVER:
+ case PlSqlParser.SEMIJOIN:
+ case PlSqlParser.SEMI_TO_INNER:
+ case PlSqlParser.SEQUENCED:
+ case PlSqlParser.SEQUENCE:
+ case PlSqlParser.SEQUENTIAL:
+ case PlSqlParser.SERIALIZABLE:
+ case PlSqlParser.SERIALLY_REUSABLE:
+ case PlSqlParser.SERIAL:
+ case PlSqlParser.SERVERERROR:
+ case PlSqlParser.SERVICE_NAME_CONVERT:
+ case PlSqlParser.SERVICES:
+ case PlSqlParser.SESSION_CACHED_CURSORS:
+ case PlSqlParser.SESSION:
+ case PlSqlParser.SESSIONS_PER_USER:
+ case PlSqlParser.SESSIONTIMEZONE:
+ case PlSqlParser.SESSIONTZNAME:
+ case PlSqlParser.SET:
+ case PlSqlParser.SETS:
+ case PlSqlParser.SETTINGS:
+ case PlSqlParser.SET_TO_JOIN:
+ case PlSqlParser.SEVERE:
+ case PlSqlParser.SHARED_POOL:
+ case PlSqlParser.SHARED:
+ case PlSqlParser.SHARING:
+ case PlSqlParser.SHELFLIFE:
+ case PlSqlParser.SHOW:
+ case PlSqlParser.SHRINK:
+ case PlSqlParser.SHUTDOWN:
+ case PlSqlParser.SIBLINGS:
+ case PlSqlParser.SID:
+ case PlSqlParser.SIGNAL_COMPONENT:
+ case PlSqlParser.SIGNAL_FUNCTION:
+ case PlSqlParser.SIGN:
+ case PlSqlParser.SIGNTYPE:
+ case PlSqlParser.SIMPLE_INTEGER:
+ case PlSqlParser.SIMPLE:
+ case PlSqlParser.SINGLE:
+ case PlSqlParser.SINGLETASK:
+ case PlSqlParser.SINH:
+ case PlSqlParser.SIN:
+ case PlSqlParser.SKIP_EXT_OPTIMIZER:
+ case PlSqlParser.SKIP_:
+ case PlSqlParser.SKIP_UNQ_UNUSABLE_IDX:
+ case PlSqlParser.SKIP_UNUSABLE_INDEXES:
+ case PlSqlParser.SMALLFILE:
+ case PlSqlParser.SMALLINT:
+ case PlSqlParser.SNAPSHOT:
+ case PlSqlParser.SOME:
+ case PlSqlParser.SORT:
+ case PlSqlParser.SOUNDEX:
+ case PlSqlParser.SOURCE_FILE_DIRECTORY:
+ case PlSqlParser.SOURCE_FILE_NAME_CONVERT:
+ case PlSqlParser.SOURCE:
+ case PlSqlParser.SPACE_KEYWORD:
+ case PlSqlParser.SPECIFICATION:
+ case PlSqlParser.SPFILE:
+ case PlSqlParser.SPLIT:
+ case PlSqlParser.SPREADSHEET:
+ case PlSqlParser.SQLDATA:
+ case PlSqlParser.SQLERROR:
+ case PlSqlParser.SQLLDR:
+ case PlSqlParser.SQL:
+ case PlSqlParser.SQL_TRACE:
+ case PlSqlParser.SQL_TRANSLATION_PROFILE:
+ case PlSqlParser.SQRT:
+ case PlSqlParser.STALE:
+ case PlSqlParser.STANDALONE:
+ case PlSqlParser.STANDARD_HASH:
+ case PlSqlParser.STANDBY_MAX_DATA_DELAY:
+ case PlSqlParser.STANDBYS:
+ case PlSqlParser.STANDBY:
+ case PlSqlParser.STAR:
+ case PlSqlParser.STAR_TRANSFORMATION:
+ case PlSqlParser.STARTUP:
+ case PlSqlParser.STATEMENT_ID:
+ case PlSqlParser.STATEMENT_QUEUING:
+ case PlSqlParser.STATEMENTS:
+ case PlSqlParser.STATEMENT:
+ case PlSqlParser.STATE:
+ case PlSqlParser.STATIC:
+ case PlSqlParser.STATISTICS:
+ case PlSqlParser.STATS_BINOMIAL_TEST:
+ case PlSqlParser.STATS_CROSSTAB:
+ case PlSqlParser.STATS_F_TEST:
+ case PlSqlParser.STATS_KS_TEST:
+ case PlSqlParser.STATS_MODE:
+ case PlSqlParser.STATS_MW_TEST:
+ case PlSqlParser.STATS_ONE_WAY_ANOVA:
+ case PlSqlParser.STATS_T_TEST_INDEP:
+ case PlSqlParser.STATS_T_TEST_INDEPU:
+ case PlSqlParser.STATS_T_TEST_ONE:
+ case PlSqlParser.STATS_T_TEST_PAIRED:
+ case PlSqlParser.STATS_WSR_TEST:
+ case PlSqlParser.STDDEV_POP:
+ case PlSqlParser.STDDEV_SAMP:
+ case PlSqlParser.STOP:
+ case PlSqlParser.STORAGE:
+ case PlSqlParser.STORE:
+ case PlSqlParser.STREAMS:
+ case PlSqlParser.STREAM:
+ case PlSqlParser.STRICT:
+ case PlSqlParser.STRING:
+ case PlSqlParser.STRIPE_COLUMNS:
+ case PlSqlParser.STRIPE_WIDTH:
+ case PlSqlParser.STRIP:
+ case PlSqlParser.STRUCTURE:
+ case PlSqlParser.SUBMULTISET:
+ case PlSqlParser.SUBPARTITION_REL:
+ case PlSqlParser.SUBPARTITIONS:
+ case PlSqlParser.SUBPARTITION:
+ case PlSqlParser.SUBQUERIES:
+ case PlSqlParser.SUBQUERY_PRUNING:
+ case PlSqlParser.SUBSCRIBE:
+ case PlSqlParser.SUBSET:
+ case PlSqlParser.SUBSTITUTABLE:
+ case PlSqlParser.SUBSTR2:
+ case PlSqlParser.SUBSTR4:
+ case PlSqlParser.SUBSTRB:
+ case PlSqlParser.SUBSTRC:
+ case PlSqlParser.SUBTYPE:
+ case PlSqlParser.SUCCESSFUL:
+ case PlSqlParser.SUCCESS:
+ case PlSqlParser.SUMMARY:
+ case PlSqlParser.SUPPLEMENTAL:
+ case PlSqlParser.SUSPEND:
+ case PlSqlParser.SWAP_JOIN_INPUTS:
+ case PlSqlParser.SWITCHOVER:
+ case PlSqlParser.SWITCH:
+ case PlSqlParser.SYNCHRONOUS:
+ case PlSqlParser.SYNC:
+ case PlSqlParser.SYSASM:
+ case PlSqlParser.SYS_AUDIT:
+ case PlSqlParser.SYSAUX:
+ case PlSqlParser.SYSBACKUP:
+ case PlSqlParser.SYS_CHECKACL:
+ case PlSqlParser.SYS_CHECK_PRIVILEGE:
+ case PlSqlParser.SYS_CONNECT_BY_PATH:
+ case PlSqlParser.SYS_CONTEXT:
+ case PlSqlParser.SYSDATE:
+ case PlSqlParser.SYSDBA:
+ case PlSqlParser.SYS_DBURIGEN:
+ case PlSqlParser.SYSDG:
+ case PlSqlParser.SYS_DL_CURSOR:
+ case PlSqlParser.SYS_DM_RXFORM_CHR:
+ case PlSqlParser.SYS_DM_RXFORM_NUM:
+ case PlSqlParser.SYS_DOM_COMPARE:
+ case PlSqlParser.SYS_DST_PRIM2SEC:
+ case PlSqlParser.SYS_DST_SEC2PRIM:
+ case PlSqlParser.SYS_ET_BFILE_TO_RAW:
+ case PlSqlParser.SYS_ET_BLOB_TO_IMAGE:
+ case PlSqlParser.SYS_ET_IMAGE_TO_BLOB:
+ case PlSqlParser.SYS_ET_RAW_TO_BFILE:
+ case PlSqlParser.SYS_EXTPDTXT:
+ case PlSqlParser.SYS_EXTRACT_UTC:
+ case PlSqlParser.SYS_FBT_INSDEL:
+ case PlSqlParser.SYS_FILTER_ACLS:
+ case PlSqlParser.SYS_FNMATCHES:
+ case PlSqlParser.SYS_FNREPLACE:
+ case PlSqlParser.SYS_GET_ACLIDS:
+ case PlSqlParser.SYS_GET_COL_ACLIDS:
+ case PlSqlParser.SYS_GET_PRIVILEGES:
+ case PlSqlParser.SYS_GETTOKENID:
+ case PlSqlParser.SYS_GETXTIVAL:
+ case PlSqlParser.SYS_GUID:
+ case PlSqlParser.SYSGUID:
+ case PlSqlParser.SYSKM:
+ case PlSqlParser.SYS_MAKE_XMLNODEID:
+ case PlSqlParser.SYS_MAKEXML:
+ case PlSqlParser.SYS_MKXMLATTR:
+ case PlSqlParser.SYS_MKXTI:
+ case PlSqlParser.SYSOBJ:
+ case PlSqlParser.SYS_OP_ADT2BIN:
+ case PlSqlParser.SYS_OP_ADTCONS:
+ case PlSqlParser.SYS_OP_ALSCRVAL:
+ case PlSqlParser.SYS_OP_ATG:
+ case PlSqlParser.SYS_OP_BIN2ADT:
+ case PlSqlParser.SYS_OP_BITVEC:
+ case PlSqlParser.SYS_OP_BL2R:
+ case PlSqlParser.SYS_OP_BLOOM_FILTER_LIST:
+ case PlSqlParser.SYS_OP_BLOOM_FILTER:
+ case PlSqlParser.SYS_OP_C2C:
+ case PlSqlParser.SYS_OP_CAST:
+ case PlSqlParser.SYS_OP_CEG:
+ case PlSqlParser.SYS_OP_CL2C:
+ case PlSqlParser.SYS_OP_COMBINED_HASH:
+ case PlSqlParser.SYS_OP_COMP:
+ case PlSqlParser.SYS_OP_CONVERT:
+ case PlSqlParser.SYS_OP_COUNTCHG:
+ case PlSqlParser.SYS_OP_CSCONV:
+ case PlSqlParser.SYS_OP_CSCONVTEST:
+ case PlSqlParser.SYS_OP_CSR:
+ case PlSqlParser.SYS_OP_CSX_PATCH:
+ case PlSqlParser.SYS_OP_CYCLED_SEQ:
+ case PlSqlParser.SYS_OP_DECOMP:
+ case PlSqlParser.SYS_OP_DESCEND:
+ case PlSqlParser.SYS_OP_DISTINCT:
+ case PlSqlParser.SYS_OP_DRA:
+ case PlSqlParser.SYS_OP_DUMP:
+ case PlSqlParser.SYS_OP_DV_CHECK:
+ case PlSqlParser.SYS_OP_ENFORCE_NOT_NULL:
+ case PlSqlParser.SYSOPER:
+ case PlSqlParser.SYS_OP_EXTRACT:
+ case PlSqlParser.SYS_OP_GROUPING:
+ case PlSqlParser.SYS_OP_GUID:
+ case PlSqlParser.SYS_OP_HASH:
+ case PlSqlParser.SYS_OP_IIX:
+ case PlSqlParser.SYS_OP_ITR:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_CREATE:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_FILTER_LIST:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_FILTER:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_SUCCEEDED:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_USE:
+ case PlSqlParser.SYS_OP_LBID:
+ case PlSqlParser.SYS_OP_LOBLOC2BLOB:
+ case PlSqlParser.SYS_OP_LOBLOC2CLOB:
+ case PlSqlParser.SYS_OP_LOBLOC2ID:
+ case PlSqlParser.SYS_OP_LOBLOC2NCLOB:
+ case PlSqlParser.SYS_OP_LOBLOC2TYP:
+ case PlSqlParser.SYS_OP_LSVI:
+ case PlSqlParser.SYS_OP_LVL:
+ case PlSqlParser.SYS_OP_MAKEOID:
+ case PlSqlParser.SYS_OP_MAP_NONNULL:
+ case PlSqlParser.SYS_OP_MSR:
+ case PlSqlParser.SYS_OP_NICOMBINE:
+ case PlSqlParser.SYS_OP_NIEXTRACT:
+ case PlSqlParser.SYS_OP_NII:
+ case PlSqlParser.SYS_OP_NIX:
+ case PlSqlParser.SYS_OP_NOEXPAND:
+ case PlSqlParser.SYS_OP_NTCIMG:
+ case PlSqlParser.SYS_OP_NUMTORAW:
+ case PlSqlParser.SYS_OP_OIDVALUE:
+ case PlSqlParser.SYS_OP_OPNSIZE:
+ case PlSqlParser.SYS_OP_PAR_1:
+ case PlSqlParser.SYS_OP_PARGID_1:
+ case PlSqlParser.SYS_OP_PARGID:
+ case PlSqlParser.SYS_OP_PAR:
+ case PlSqlParser.SYS_OP_PART_ID:
+ case PlSqlParser.SYS_OP_PIVOT:
+ case PlSqlParser.SYS_OP_R2O:
+ case PlSqlParser.SYS_OP_RAWTONUM:
+ case PlSqlParser.SYS_OP_RDTM:
+ case PlSqlParser.SYS_OP_REF:
+ case PlSqlParser.SYS_OP_RMTD:
+ case PlSqlParser.SYS_OP_ROWIDTOOBJ:
+ case PlSqlParser.SYS_OP_RPB:
+ case PlSqlParser.SYS_OPTLOBPRBSC:
+ case PlSqlParser.SYS_OP_TOSETID:
+ case PlSqlParser.SYS_OP_TPR:
+ case PlSqlParser.SYS_OP_TRTB:
+ case PlSqlParser.SYS_OPTXICMP:
+ case PlSqlParser.SYS_OPTXQCASTASNQ:
+ case PlSqlParser.SYS_OP_UNDESCEND:
+ case PlSqlParser.SYS_OP_VECAND:
+ case PlSqlParser.SYS_OP_VECBIT:
+ case PlSqlParser.SYS_OP_VECOR:
+ case PlSqlParser.SYS_OP_VECXOR:
+ case PlSqlParser.SYS_OP_VERSION:
+ case PlSqlParser.SYS_OP_VREF:
+ case PlSqlParser.SYS_OP_VVD:
+ case PlSqlParser.SYS_OP_XMLCONS_FOR_CSX:
+ case PlSqlParser.SYS_OP_XPTHATG:
+ case PlSqlParser.SYS_OP_XPTHIDX:
+ case PlSqlParser.SYS_OP_XPTHOP:
+ case PlSqlParser.SYS_OP_XTXT2SQLT:
+ case PlSqlParser.SYS_OP_ZONE_ID:
+ case PlSqlParser.SYS_ORDERKEY_DEPTH:
+ case PlSqlParser.SYS_ORDERKEY_MAXCHILD:
+ case PlSqlParser.SYS_ORDERKEY_PARENT:
+ case PlSqlParser.SYS_PARALLEL_TXN:
+ case PlSqlParser.SYS_PATHID_IS_ATTR:
+ case PlSqlParser.SYS_PATHID_IS_NMSPC:
+ case PlSqlParser.SYS_PATHID_LASTNAME:
+ case PlSqlParser.SYS_PATHID_LASTNMSPC:
+ case PlSqlParser.SYS_PATH_REVERSE:
+ case PlSqlParser.SYS_PXQEXTRACT:
+ case PlSqlParser.SYS_RAW_TO_XSID:
+ case PlSqlParser.SYS_RID_ORDER:
+ case PlSqlParser.SYS_ROW_DELTA:
+ case PlSqlParser.SYS_SC_2_XMLT:
+ case PlSqlParser.SYS_SYNRCIREDO:
+ case PlSqlParser.SYSTEM_DEFINED:
+ case PlSqlParser.SYSTEM:
+ case PlSqlParser.SYSTIMESTAMP:
+ case PlSqlParser.SYS_TYPEID:
+ case PlSqlParser.SYS_UMAKEXML:
+ case PlSqlParser.SYS_XMLANALYZE:
+ case PlSqlParser.SYS_XMLCONTAINS:
+ case PlSqlParser.SYS_XMLCONV:
+ case PlSqlParser.SYS_XMLEXNSURI:
+ case PlSqlParser.SYS_XMLGEN:
+ case PlSqlParser.SYS_XMLI_LOC_ISNODE:
+ case PlSqlParser.SYS_XMLI_LOC_ISTEXT:
+ case PlSqlParser.SYS_XMLINSTR:
+ case PlSqlParser.SYS_XMLLOCATOR_GETSVAL:
+ case PlSqlParser.SYS_XMLNODEID_GETCID:
+ case PlSqlParser.SYS_XMLNODEID_GETLOCATOR:
+ case PlSqlParser.SYS_XMLNODEID_GETOKEY:
+ case PlSqlParser.SYS_XMLNODEID_GETPATHID:
+ case PlSqlParser.SYS_XMLNODEID_GETPTRID:
+ case PlSqlParser.SYS_XMLNODEID_GETRID:
+ case PlSqlParser.SYS_XMLNODEID_GETSVAL:
+ case PlSqlParser.SYS_XMLNODEID_GETTID:
+ case PlSqlParser.SYS_XMLNODEID:
+ case PlSqlParser.SYS_XMLT_2_SC:
+ case PlSqlParser.SYS_XMLTRANSLATE:
+ case PlSqlParser.SYS_XMLTYPE2SQL:
+ case PlSqlParser.SYS_XQ_ASQLCNV:
+ case PlSqlParser.SYS_XQ_ATOMCNVCHK:
+ case PlSqlParser.SYS_XQBASEURI:
+ case PlSqlParser.SYS_XQCASTABLEERRH:
+ case PlSqlParser.SYS_XQCODEP2STR:
+ case PlSqlParser.SYS_XQCODEPEQ:
+ case PlSqlParser.SYS_XQCON2SEQ:
+ case PlSqlParser.SYS_XQCONCAT:
+ case PlSqlParser.SYS_XQDELETE:
+ case PlSqlParser.SYS_XQDFLTCOLATION:
+ case PlSqlParser.SYS_XQDOC:
+ case PlSqlParser.SYS_XQDOCURI:
+ case PlSqlParser.SYS_XQDURDIV:
+ case PlSqlParser.SYS_XQED4URI:
+ case PlSqlParser.SYS_XQENDSWITH:
+ case PlSqlParser.SYS_XQERRH:
+ case PlSqlParser.SYS_XQERR:
+ case PlSqlParser.SYS_XQESHTMLURI:
+ case PlSqlParser.SYS_XQEXLOBVAL:
+ case PlSqlParser.SYS_XQEXSTWRP:
+ case PlSqlParser.SYS_XQEXTRACT:
+ case PlSqlParser.SYS_XQEXTRREF:
+ case PlSqlParser.SYS_XQEXVAL:
+ case PlSqlParser.SYS_XQFB2STR:
+ case PlSqlParser.SYS_XQFNBOOL:
+ case PlSqlParser.SYS_XQFNCMP:
+ case PlSqlParser.SYS_XQFNDATIM:
+ case PlSqlParser.SYS_XQFNLNAME:
+ case PlSqlParser.SYS_XQFNNM:
+ case PlSqlParser.SYS_XQFNNSURI:
+ case PlSqlParser.SYS_XQFNPREDTRUTH:
+ case PlSqlParser.SYS_XQFNQNM:
+ case PlSqlParser.SYS_XQFNROOT:
+ case PlSqlParser.SYS_XQFORMATNUM:
+ case PlSqlParser.SYS_XQFTCONTAIN:
+ case PlSqlParser.SYS_XQFUNCR:
+ case PlSqlParser.SYS_XQGETCONTENT:
+ case PlSqlParser.SYS_XQINDXOF:
+ case PlSqlParser.SYS_XQINSERT:
+ case PlSqlParser.SYS_XQINSPFX:
+ case PlSqlParser.SYS_XQIRI2URI:
+ case PlSqlParser.SYS_XQLANG:
+ case PlSqlParser.SYS_XQLLNMFRMQNM:
+ case PlSqlParser.SYS_XQMKNODEREF:
+ case PlSqlParser.SYS_XQNILLED:
+ case PlSqlParser.SYS_XQNODENAME:
+ case PlSqlParser.SYS_XQNORMSPACE:
+ case PlSqlParser.SYS_XQNORMUCODE:
+ case PlSqlParser.SYS_XQ_NRNG:
+ case PlSqlParser.SYS_XQNSP4PFX:
+ case PlSqlParser.SYS_XQNSPFRMQNM:
+ case PlSqlParser.SYS_XQPFXFRMQNM:
+ case PlSqlParser.SYS_XQ_PKSQL2XML:
+ case PlSqlParser.SYS_XQPOLYABS:
+ case PlSqlParser.SYS_XQPOLYADD:
+ case PlSqlParser.SYS_XQPOLYCEL:
+ case PlSqlParser.SYS_XQPOLYCSTBL:
+ case PlSqlParser.SYS_XQPOLYCST:
+ case PlSqlParser.SYS_XQPOLYDIV:
+ case PlSqlParser.SYS_XQPOLYFLR:
+ case PlSqlParser.SYS_XQPOLYMOD:
+ case PlSqlParser.SYS_XQPOLYMUL:
+ case PlSqlParser.SYS_XQPOLYRND:
+ case PlSqlParser.SYS_XQPOLYSQRT:
+ case PlSqlParser.SYS_XQPOLYSUB:
+ case PlSqlParser.SYS_XQPOLYUMUS:
+ case PlSqlParser.SYS_XQPOLYUPLS:
+ case PlSqlParser.SYS_XQPOLYVEQ:
+ case PlSqlParser.SYS_XQPOLYVGE:
+ case PlSqlParser.SYS_XQPOLYVGT:
+ case PlSqlParser.SYS_XQPOLYVLE:
+ case PlSqlParser.SYS_XQPOLYVLT:
+ case PlSqlParser.SYS_XQPOLYVNE:
+ case PlSqlParser.SYS_XQREF2VAL:
+ case PlSqlParser.SYS_XQRENAME:
+ case PlSqlParser.SYS_XQREPLACE:
+ case PlSqlParser.SYS_XQRESVURI:
+ case PlSqlParser.SYS_XQRNDHALF2EVN:
+ case PlSqlParser.SYS_XQRSLVQNM:
+ case PlSqlParser.SYS_XQRYENVPGET:
+ case PlSqlParser.SYS_XQRYVARGET:
+ case PlSqlParser.SYS_XQRYWRP:
+ case PlSqlParser.SYS_XQSEQ2CON4XC:
+ case PlSqlParser.SYS_XQSEQ2CON:
+ case PlSqlParser.SYS_XQSEQDEEPEQ:
+ case PlSqlParser.SYS_XQSEQINSB:
+ case PlSqlParser.SYS_XQSEQRM:
+ case PlSqlParser.SYS_XQSEQRVS:
+ case PlSqlParser.SYS_XQSEQSUB:
+ case PlSqlParser.SYS_XQSEQTYPMATCH:
+ case PlSqlParser.SYS_XQSTARTSWITH:
+ case PlSqlParser.SYS_XQSTATBURI:
+ case PlSqlParser.SYS_XQSTR2CODEP:
+ case PlSqlParser.SYS_XQSTRJOIN:
+ case PlSqlParser.SYS_XQSUBSTRAFT:
+ case PlSqlParser.SYS_XQSUBSTRBEF:
+ case PlSqlParser.SYS_XQTOKENIZE:
+ case PlSqlParser.SYS_XQTREATAS:
+ case PlSqlParser.SYS_XQ_UPKXML2SQL:
+ case PlSqlParser.SYS_XQXFORM:
+ case PlSqlParser.SYS_XSID_TO_RAW:
+ case PlSqlParser.SYS_ZMAP_FILTER:
+ case PlSqlParser.SYS_ZMAP_REFRESH:
+ case PlSqlParser.TABLE_LOOKUP_BY_NL:
+ case PlSqlParser.TABLESPACE_NO:
+ case PlSqlParser.TABLESPACE:
+ case PlSqlParser.TABLES:
+ case PlSqlParser.TABLE_STATS:
+ case PlSqlParser.TABLE:
+ case PlSqlParser.TABNO:
+ case PlSqlParser.TAG:
+ case PlSqlParser.TANH:
+ case PlSqlParser.TAN:
+ case PlSqlParser.TBLORIDXPARTNUM:
+ case PlSqlParser.TEMPFILE:
+ case PlSqlParser.TEMPLATE:
+ case PlSqlParser.TEMPORARY:
+ case PlSqlParser.TEMP_TABLE:
+ case PlSqlParser.TEST:
+ case PlSqlParser.TEXT:
+ case PlSqlParser.THAN:
+ case PlSqlParser.THEN:
+ case PlSqlParser.THE:
+ case PlSqlParser.THREAD:
+ case PlSqlParser.THROUGH:
+ case PlSqlParser.TIER:
+ case PlSqlParser.TIES:
+ case PlSqlParser.TIMEOUT:
+ case PlSqlParser.TIMESTAMP_LTZ_UNCONSTRAINED:
+ case PlSqlParser.TIMESTAMP:
+ case PlSqlParser.TIMESTAMP_TZ_UNCONSTRAINED:
+ case PlSqlParser.TIMESTAMP_UNCONSTRAINED:
+ case PlSqlParser.TIMES:
+ case PlSqlParser.TIME:
+ case PlSqlParser.TIMEZONE_ABBR:
+ case PlSqlParser.TIMEZONE_HOUR:
+ case PlSqlParser.TIMEZONE_MINUTE:
+ case PlSqlParser.TIMEZONE_OFFSET:
+ case PlSqlParser.TIMEZONE_REGION:
+ case PlSqlParser.TIME_ZONE:
+ case PlSqlParser.TIV_GB:
+ case PlSqlParser.TIV_SSF:
+ case PlSqlParser.TO_ACLID:
+ case PlSqlParser.TO_BINARY_DOUBLE:
+ case PlSqlParser.TO_BINARY_FLOAT:
+ case PlSqlParser.TO_BLOB:
+ case PlSqlParser.TO_CLOB:
+ case PlSqlParser.TO_DSINTERVAL:
+ case PlSqlParser.TO_LOB:
+ case PlSqlParser.TO_MULTI_BYTE:
+ case PlSqlParser.TO_NCHAR:
+ case PlSqlParser.TO_NCLOB:
+ case PlSqlParser.TO_NUMBER:
+ case PlSqlParser.TOPLEVEL:
+ case PlSqlParser.TO_SINGLE_BYTE:
+ case PlSqlParser.TO_TIMESTAMP:
+ case PlSqlParser.TO_TIMESTAMP_TZ:
+ case PlSqlParser.TO_TIME:
+ case PlSqlParser.TO_TIME_TZ:
+ case PlSqlParser.TO_YMINTERVAL:
+ case PlSqlParser.TRACE:
+ case PlSqlParser.TRACING:
+ case PlSqlParser.TRACKING:
+ case PlSqlParser.TRAILING:
+ case PlSqlParser.TRANSACTION:
+ case PlSqlParser.TRANSFORM_DISTINCT_AGG:
+ case PlSqlParser.TRANSITIONAL:
+ case PlSqlParser.TRANSITION:
+ case PlSqlParser.TRANSLATE:
+ case PlSqlParser.TRANSLATION:
+ case PlSqlParser.TREAT:
+ case PlSqlParser.TRIGGERS:
+ case PlSqlParser.TRIGGER:
+ case PlSqlParser.TRUE:
+ case PlSqlParser.TRUNCATE:
+ case PlSqlParser.TRUNC:
+ case PlSqlParser.TRUSTED:
+ case PlSqlParser.TRUST:
+ case PlSqlParser.TUNING:
+ case PlSqlParser.TX:
+ case PlSqlParser.TYPES:
+ case PlSqlParser.TYPE:
+ case PlSqlParser.TZ_OFFSET:
+ case PlSqlParser.UB2:
+ case PlSqlParser.UBA:
+ case PlSqlParser.UCS2:
+ case PlSqlParser.UID:
+ case PlSqlParser.UNARCHIVED:
+ case PlSqlParser.UNBOUNDED:
+ case PlSqlParser.UNBOUND:
+ case PlSqlParser.UNCONDITIONAL:
+ case PlSqlParser.UNDER:
+ case PlSqlParser.UNDO:
+ case PlSqlParser.UNDROP:
+ case PlSqlParser.UNIFORM:
+ case PlSqlParser.UNISTR:
+ case PlSqlParser.UNLIMITED:
+ case PlSqlParser.UNLOAD:
+ case PlSqlParser.UNLOCK:
+ case PlSqlParser.UNMATCHED:
+ case PlSqlParser.UNNEST_INNERJ_DISTINCT_VIEW:
+ case PlSqlParser.UNNEST_NOSEMIJ_NODISTINCTVIEW:
+ case PlSqlParser.UNNEST_SEMIJ_VIEW:
+ case PlSqlParser.UNNEST:
+ case PlSqlParser.UNPACKED:
+ case PlSqlParser.UNPIVOT:
+ case PlSqlParser.UNPLUG:
+ case PlSqlParser.UNPROTECTED:
+ case PlSqlParser.UNQUIESCE:
+ case PlSqlParser.UNRECOVERABLE:
+ case PlSqlParser.UNRESTRICTED:
+ case PlSqlParser.UNSUBSCRIBE:
+ case PlSqlParser.UNTIL:
+ case PlSqlParser.UNUSABLE:
+ case PlSqlParser.UNUSED:
+ case PlSqlParser.UPDATABLE:
+ case PlSqlParser.UPDATED:
+ case PlSqlParser.UPDATEXML:
+ case PlSqlParser.UPD_INDEXES:
+ case PlSqlParser.UPD_JOININDEX:
+ case PlSqlParser.UPGRADE:
+ case PlSqlParser.UPPER:
+ case PlSqlParser.UPSERT:
+ case PlSqlParser.UROWID:
+ case PlSqlParser.USABLE:
+ case PlSqlParser.USAGE:
+ case PlSqlParser.USE_ANTI:
+ case PlSqlParser.USE_CONCAT:
+ case PlSqlParser.USE_CUBE:
+ case PlSqlParser.USE_HASH_AGGREGATION:
+ case PlSqlParser.USE_HASH_GBY_FOR_PUSHDOWN:
+ case PlSqlParser.USE_HASH:
+ case PlSqlParser.USE_HIDDEN_PARTITIONS:
+ case PlSqlParser.USE_INVISIBLE_INDEXES:
+ case PlSqlParser.USE_MERGE_CARTESIAN:
+ case PlSqlParser.USE_MERGE:
+ case PlSqlParser.USE_NL:
+ case PlSqlParser.USE_NL_WITH_INDEX:
+ case PlSqlParser.USE_PRIVATE_OUTLINES:
+ case PlSqlParser.USER_DATA:
+ case PlSqlParser.USER_DEFINED:
+ case PlSqlParser.USERENV:
+ case PlSqlParser.USERGROUP:
+ case PlSqlParser.USER_RECYCLEBIN:
+ case PlSqlParser.USERS:
+ case PlSqlParser.USER_TABLESPACES:
+ case PlSqlParser.USER:
+ case PlSqlParser.USE_SEMI:
+ case PlSqlParser.USE_STORED_OUTLINES:
+ case PlSqlParser.USE_TTT_FOR_GSETS:
+ case PlSqlParser.USE:
+ case PlSqlParser.USE_VECTOR_AGGREGATION:
+ case PlSqlParser.USE_WEAK_NAME_RESL:
+ case PlSqlParser.USING_NO_EXPAND:
+ case PlSqlParser.USING:
+ case PlSqlParser.UTF16BE:
+ case PlSqlParser.UTF16LE:
+ case PlSqlParser.UTF32:
+ case PlSqlParser.UTF8:
+ case PlSqlParser.V1:
+ case PlSqlParser.V2:
+ case PlSqlParser.VALIDATE:
+ case PlSqlParser.VALIDATION:
+ case PlSqlParser.VALID_TIME_END:
+ case PlSqlParser.VALUE:
+ case PlSqlParser.VARCHAR2:
+ case PlSqlParser.VARCHAR:
+ case PlSqlParser.VARIABLE:
+ case PlSqlParser.VAR_POP:
+ case PlSqlParser.VARRAYS:
+ case PlSqlParser.VARRAY:
+ case PlSqlParser.VAR_SAMP:
+ case PlSqlParser.VARYING:
+ case PlSqlParser.VECTOR_READ_TRACE:
+ case PlSqlParser.VECTOR_READ:
+ case PlSqlParser.VECTOR_TRANSFORM_DIMS:
+ case PlSqlParser.VECTOR_TRANSFORM_FACT:
+ case PlSqlParser.VECTOR_TRANSFORM:
+ case PlSqlParser.VERIFIER:
+ case PlSqlParser.VERIFY:
+ case PlSqlParser.VERSIONING:
+ case PlSqlParser.VERSIONS_ENDSCN:
+ case PlSqlParser.VERSIONS_ENDTIME:
+ case PlSqlParser.VERSIONS_OPERATION:
+ case PlSqlParser.VERSIONS_STARTSCN:
+ case PlSqlParser.VERSIONS_STARTTIME:
+ case PlSqlParser.VERSIONS:
+ case PlSqlParser.VERSIONS_XID:
+ case PlSqlParser.VERSION:
+ case PlSqlParser.VIOLATION:
+ case PlSqlParser.VIRTUAL:
+ case PlSqlParser.VISIBILITY:
+ case PlSqlParser.VISIBLE:
+ case PlSqlParser.VOLUME:
+ case PlSqlParser.VSIZE:
+ case PlSqlParser.WAIT:
+ case PlSqlParser.WALLET:
+ case PlSqlParser.WARNING:
+ case PlSqlParser.WEEKS:
+ case PlSqlParser.WEEK:
+ case PlSqlParser.WELLFORMED:
+ case PlSqlParser.WHENEVER:
+ case PlSqlParser.WHEN:
+ case PlSqlParser.WHILE:
+ case PlSqlParser.WHITESPACE:
+ case PlSqlParser.WIDTH_BUCKET:
+ case PlSqlParser.WITHIN:
+ case PlSqlParser.WITHOUT:
+ case PlSqlParser.WITH_PLSQL:
+ case PlSqlParser.WORK:
+ case PlSqlParser.WRAPPED:
+ case PlSqlParser.WRAPPER:
+ case PlSqlParser.WRITE:
+ case PlSqlParser.XDB_FASTPATH_INSERT:
+ case PlSqlParser.X_DYN_PRUNE:
+ case PlSqlParser.XID:
+ case PlSqlParser.XML2OBJECT:
+ case PlSqlParser.XMLAGG:
+ case PlSqlParser.XMLATTRIBUTES:
+ case PlSqlParser.XMLCAST:
+ case PlSqlParser.XMLCDATA:
+ case PlSqlParser.XMLCOLATTVAL:
+ case PlSqlParser.XMLCOMMENT:
+ case PlSqlParser.XMLCONCAT:
+ case PlSqlParser.XMLDIFF:
+ case PlSqlParser.XML_DML_RWT_STMT:
+ case PlSqlParser.XMLELEMENT:
+ case PlSqlParser.XMLEXISTS2:
+ case PlSqlParser.XMLEXISTS:
+ case PlSqlParser.XMLFOREST:
+ case PlSqlParser.XMLINDEX_REWRITE_IN_SELECT:
+ case PlSqlParser.XMLINDEX_REWRITE:
+ case PlSqlParser.XMLINDEX_SEL_IDX_TBL:
+ case PlSqlParser.XMLISNODE:
+ case PlSqlParser.XMLISVALID:
+ case PlSqlParser.XMLNAMESPACES:
+ case PlSqlParser.XMLPARSE:
+ case PlSqlParser.XMLPATCH:
+ case PlSqlParser.XMLPI:
+ case PlSqlParser.XMLQUERYVAL:
+ case PlSqlParser.XMLQUERY:
+ case PlSqlParser.XMLROOT:
+ case PlSqlParser.XMLSCHEMA:
+ case PlSqlParser.XMLSERIALIZE:
+ case PlSqlParser.XMLTABLE:
+ case PlSqlParser.XMLTRANSFORMBLOB:
+ case PlSqlParser.XMLTRANSFORM:
+ case PlSqlParser.XMLTYPE:
+ case PlSqlParser.XML:
+ case PlSqlParser.XPATHTABLE:
+ case PlSqlParser.XS_SYS_CONTEXT:
+ case PlSqlParser.XS:
+ case PlSqlParser.YEARS:
+ case PlSqlParser.YEAR:
+ case PlSqlParser.YES:
+ case PlSqlParser.YMINTERVAL_UNCONSTRAINED:
+ case PlSqlParser.ZONEMAP:
+ case PlSqlParser.ZONE:
+ case PlSqlParser.PREDICTION:
+ case PlSqlParser.PREDICTION_BOUNDS:
+ case PlSqlParser.PREDICTION_COST:
+ case PlSqlParser.PREDICTION_DETAILS:
+ case PlSqlParser.PREDICTION_PROBABILITY:
+ case PlSqlParser.PREDICTION_SET:
+ case PlSqlParser.CUME_DIST:
+ case PlSqlParser.DENSE_RANK:
+ case PlSqlParser.LISTAGG:
+ case PlSqlParser.PERCENT_RANK:
+ case PlSqlParser.PERCENTILE_CONT:
+ case PlSqlParser.PERCENTILE_DISC:
+ case PlSqlParser.RANK:
+ case PlSqlParser.AVG:
+ case PlSqlParser.CORR:
+ case PlSqlParser.COVAR_:
+ case PlSqlParser.LAG:
+ case PlSqlParser.LEAD:
+ case PlSqlParser.MAX:
+ case PlSqlParser.MEDIAN:
+ case PlSqlParser.MIN:
+ case PlSqlParser.NTILE:
+ case PlSqlParser.NVL:
+ case PlSqlParser.RATIO_TO_REPORT:
+ case PlSqlParser.REGR_:
+ case PlSqlParser.ROUND:
+ case PlSqlParser.ROW_NUMBER:
+ case PlSqlParser.SUBSTR:
+ case PlSqlParser.TO_CHAR:
+ case PlSqlParser.TRIM:
+ case PlSqlParser.SUM:
+ case PlSqlParser.STDDEV:
+ case PlSqlParser.VAR_:
+ case PlSqlParser.VARIANCE:
+ case PlSqlParser.LEAST:
+ case PlSqlParser.GREATEST:
+ case PlSqlParser.TO_DATE:
+ case PlSqlParser.PERIOD:
+ case PlSqlParser.DELIMITED_ID:
+ case PlSqlParser.REGULAR_ID:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3538;
+ this.role_name();
+ this.state = 3543;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 3539;
+ this.match(PlSqlParser.COMMA);
+ this.state = 3540;
+ this.role_name();
+ this.state = 3545;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+ case PlSqlParser.ALL:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 3546;
+ this.match(PlSqlParser.ALL);
+ this.state = 3558;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.EXCEPT) {
+ this.state = 3547;
+ this.match(PlSqlParser.EXCEPT);
+ this.state = 3548;
+ this.role_name();
+ this.state = 3553;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 3549;
+ this.match(PlSqlParser.COMMA);
+ this.state = 3550;
+ this.role_name();
+ this.state = 3555;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 3560;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function User_default_role_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_user_default_role_clause;
+ return this;
+}
+
+User_default_role_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+User_default_role_clauseContext.prototype.constructor = User_default_role_clauseContext;
+
+User_default_role_clauseContext.prototype.DEFAULT = function() {
+ return this.getToken(PlSqlParser.DEFAULT, 0);
+};
+
+User_default_role_clauseContext.prototype.ROLE = function() {
+ return this.getToken(PlSqlParser.ROLE, 0);
+};
+
+User_default_role_clauseContext.prototype.NONE = function() {
+ return this.getToken(PlSqlParser.NONE, 0);
+};
+
+User_default_role_clauseContext.prototype.role_clause = function() {
+ return this.getTypedRuleContext(Role_clauseContext,0);
+};
+
+User_default_role_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterUser_default_role_clause(this);
+ }
+};
+
+User_default_role_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitUser_default_role_clause(this);
+ }
+};
+
+User_default_role_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitUser_default_role_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.User_default_role_clauseContext = User_default_role_clauseContext;
+
+PlSqlParser.prototype.user_default_role_clause = function() {
+
+ var localctx = new User_default_role_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 288, PlSqlParser.RULE_user_default_role_clause);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3563;
+ this.match(PlSqlParser.DEFAULT);
+ this.state = 3564;
+ this.match(PlSqlParser.ROLE);
+ this.state = 3567;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,302,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 3565;
+ this.match(PlSqlParser.NONE);
+ break;
+
+ case 2:
+ this.state = 3566;
+ this.role_clause();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Password_expire_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_password_expire_clause;
+ return this;
+}
+
+Password_expire_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Password_expire_clauseContext.prototype.constructor = Password_expire_clauseContext;
+
+Password_expire_clauseContext.prototype.PASSWORD = function() {
+ return this.getToken(PlSqlParser.PASSWORD, 0);
+};
+
+Password_expire_clauseContext.prototype.EXPIRE = function() {
+ return this.getToken(PlSqlParser.EXPIRE, 0);
+};
+
+Password_expire_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterPassword_expire_clause(this);
+ }
+};
+
+Password_expire_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitPassword_expire_clause(this);
+ }
+};
+
+Password_expire_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitPassword_expire_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Password_expire_clauseContext = Password_expire_clauseContext;
+
+PlSqlParser.prototype.password_expire_clause = function() {
+
+ var localctx = new Password_expire_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 290, PlSqlParser.RULE_password_expire_clause);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3569;
+ this.match(PlSqlParser.PASSWORD);
+ this.state = 3570;
+ this.match(PlSqlParser.EXPIRE);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function User_lock_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_user_lock_clause;
+ return this;
+}
+
+User_lock_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+User_lock_clauseContext.prototype.constructor = User_lock_clauseContext;
+
+User_lock_clauseContext.prototype.ACCOUNT = function() {
+ return this.getToken(PlSqlParser.ACCOUNT, 0);
+};
+
+User_lock_clauseContext.prototype.LOCK = function() {
+ return this.getToken(PlSqlParser.LOCK, 0);
+};
+
+User_lock_clauseContext.prototype.UNLOCK = function() {
+ return this.getToken(PlSqlParser.UNLOCK, 0);
+};
+
+User_lock_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterUser_lock_clause(this);
+ }
+};
+
+User_lock_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitUser_lock_clause(this);
+ }
+};
+
+User_lock_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitUser_lock_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.User_lock_clauseContext = User_lock_clauseContext;
+
+PlSqlParser.prototype.user_lock_clause = function() {
+
+ var localctx = new User_lock_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 292, PlSqlParser.RULE_user_lock_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3572;
+ this.match(PlSqlParser.ACCOUNT);
+ this.state = 3573;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.LOCK || _la===PlSqlParser.UNLOCK)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function User_editions_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_user_editions_clause;
+ return this;
+}
+
+User_editions_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+User_editions_clauseContext.prototype.constructor = User_editions_clauseContext;
+
+User_editions_clauseContext.prototype.ENABLE = function() {
+ return this.getToken(PlSqlParser.ENABLE, 0);
+};
+
+User_editions_clauseContext.prototype.EDITIONS = function() {
+ return this.getToken(PlSqlParser.EDITIONS, 0);
+};
+
+User_editions_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterUser_editions_clause(this);
+ }
+};
+
+User_editions_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitUser_editions_clause(this);
+ }
+};
+
+User_editions_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitUser_editions_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.User_editions_clauseContext = User_editions_clauseContext;
+
+PlSqlParser.prototype.user_editions_clause = function() {
+
+ var localctx = new User_editions_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 294, PlSqlParser.RULE_user_editions_clause);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3575;
+ this.match(PlSqlParser.ENABLE);
+ this.state = 3576;
+ this.match(PlSqlParser.EDITIONS);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Alter_user_editions_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_alter_user_editions_clause;
+ return this;
+}
+
+Alter_user_editions_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Alter_user_editions_clauseContext.prototype.constructor = Alter_user_editions_clauseContext;
+
+Alter_user_editions_clauseContext.prototype.user_editions_clause = function() {
+ return this.getTypedRuleContext(User_editions_clauseContext,0);
+};
+
+Alter_user_editions_clauseContext.prototype.FOR = function() {
+ return this.getToken(PlSqlParser.FOR, 0);
+};
+
+Alter_user_editions_clauseContext.prototype.regular_id = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Regular_idContext);
+ } else {
+ return this.getTypedRuleContext(Regular_idContext,i);
+ }
+};
+
+Alter_user_editions_clauseContext.prototype.FORCE = function() {
+ return this.getToken(PlSqlParser.FORCE, 0);
+};
+
+Alter_user_editions_clauseContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Alter_user_editions_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAlter_user_editions_clause(this);
+ }
+};
+
+Alter_user_editions_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAlter_user_editions_clause(this);
+ }
+};
+
+Alter_user_editions_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAlter_user_editions_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Alter_user_editions_clauseContext = Alter_user_editions_clauseContext;
+
+PlSqlParser.prototype.alter_user_editions_clause = function() {
+
+ var localctx = new Alter_user_editions_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 296, PlSqlParser.RULE_alter_user_editions_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3578;
+ this.user_editions_clause();
+ this.state = 3588;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.FOR) {
+ this.state = 3579;
+ this.match(PlSqlParser.FOR);
+ this.state = 3580;
+ this.regular_id();
+ this.state = 3585;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 3581;
+ this.match(PlSqlParser.COMMA);
+ this.state = 3582;
+ this.regular_id();
+ this.state = 3587;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ }
+
+ this.state = 3591;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.FORCE) {
+ this.state = 3590;
+ this.match(PlSqlParser.FORCE);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Proxy_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_proxy_clause;
+ return this;
+}
+
+Proxy_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Proxy_clauseContext.prototype.constructor = Proxy_clauseContext;
+
+Proxy_clauseContext.prototype.REVOKE = function() {
+ return this.getToken(PlSqlParser.REVOKE, 0);
+};
+
+Proxy_clauseContext.prototype.CONNECT = function() {
+ return this.getToken(PlSqlParser.CONNECT, 0);
+};
+
+Proxy_clauseContext.prototype.THROUGH = function() {
+ return this.getToken(PlSqlParser.THROUGH, 0);
+};
+
+Proxy_clauseContext.prototype.ENTERPRISE = function() {
+ return this.getToken(PlSqlParser.ENTERPRISE, 0);
+};
+
+Proxy_clauseContext.prototype.USERS = function() {
+ return this.getToken(PlSqlParser.USERS, 0);
+};
+
+Proxy_clauseContext.prototype.user_object_name = function() {
+ return this.getTypedRuleContext(User_object_nameContext,0);
+};
+
+Proxy_clauseContext.prototype.GRANT = function() {
+ return this.getToken(PlSqlParser.GRANT, 0);
+};
+
+Proxy_clauseContext.prototype.WITH = function() {
+ return this.getToken(PlSqlParser.WITH, 0);
+};
+
+Proxy_clauseContext.prototype.AUTHENTICATION = function() {
+ return this.getToken(PlSqlParser.AUTHENTICATION, 0);
+};
+
+Proxy_clauseContext.prototype.REQUIRED = function() {
+ return this.getToken(PlSqlParser.REQUIRED, 0);
+};
+
+Proxy_clauseContext.prototype.AUTHENTICATED = function() {
+ return this.getToken(PlSqlParser.AUTHENTICATED, 0);
+};
+
+Proxy_clauseContext.prototype.USING = function() {
+ return this.getToken(PlSqlParser.USING, 0);
+};
+
+Proxy_clauseContext.prototype.NO = function() {
+ return this.getToken(PlSqlParser.NO, 0);
+};
+
+Proxy_clauseContext.prototype.ROLES = function() {
+ return this.getToken(PlSqlParser.ROLES, 0);
+};
+
+Proxy_clauseContext.prototype.ROLE = function() {
+ return this.getToken(PlSqlParser.ROLE, 0);
+};
+
+Proxy_clauseContext.prototype.role_clause = function() {
+ return this.getTypedRuleContext(Role_clauseContext,0);
+};
+
+Proxy_clauseContext.prototype.PASSWORD = function() {
+ return this.getToken(PlSqlParser.PASSWORD, 0);
+};
+
+Proxy_clauseContext.prototype.CERTIFICATE = function() {
+ return this.getToken(PlSqlParser.CERTIFICATE, 0);
+};
+
+Proxy_clauseContext.prototype.DISTINGUISHED = function() {
+ return this.getToken(PlSqlParser.DISTINGUISHED, 0);
+};
+
+Proxy_clauseContext.prototype.NAME = function() {
+ return this.getToken(PlSqlParser.NAME, 0);
+};
+
+Proxy_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterProxy_clause(this);
+ }
+};
+
+Proxy_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitProxy_clause(this);
+ }
+};
+
+Proxy_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitProxy_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Proxy_clauseContext = Proxy_clauseContext;
+
+PlSqlParser.prototype.proxy_clause = function() {
+
+ var localctx = new Proxy_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 298, PlSqlParser.RULE_proxy_clause);
+ var _la = 0; // Token type
+ try {
+ this.state = 3632;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.REVOKE:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3593;
+ this.match(PlSqlParser.REVOKE);
+ this.state = 3594;
+ this.match(PlSqlParser.CONNECT);
+ this.state = 3595;
+ this.match(PlSqlParser.THROUGH);
+ this.state = 3599;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,306,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 3596;
+ this.match(PlSqlParser.ENTERPRISE);
+ this.state = 3597;
+ this.match(PlSqlParser.USERS);
+ break;
+
+ case 2:
+ this.state = 3598;
+ this.user_object_name();
+ break;
+
+ }
+ break;
+ case PlSqlParser.GRANT:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 3601;
+ this.match(PlSqlParser.GRANT);
+ this.state = 3602;
+ this.match(PlSqlParser.CONNECT);
+ this.state = 3603;
+ this.match(PlSqlParser.THROUGH);
+ this.state = 3630;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,312,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 3604;
+ this.match(PlSqlParser.ENTERPRISE);
+ this.state = 3605;
+ this.match(PlSqlParser.USERS);
+ break;
+
+ case 2:
+ this.state = 3606;
+ this.user_object_name();
+ this.state = 3614;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.WITH) {
+ this.state = 3607;
+ this.match(PlSqlParser.WITH);
+ this.state = 3612;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.NO:
+ this.state = 3608;
+ this.match(PlSqlParser.NO);
+ this.state = 3609;
+ this.match(PlSqlParser.ROLES);
+ break;
+ case PlSqlParser.ROLE:
+ this.state = 3610;
+ this.match(PlSqlParser.ROLE);
+ this.state = 3611;
+ this.role_clause();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ }
+
+ this.state = 3618;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.AUTHENTICATION) {
+ this.state = 3616;
+ this.match(PlSqlParser.AUTHENTICATION);
+ this.state = 3617;
+ this.match(PlSqlParser.REQUIRED);
+ }
+
+ this.state = 3628;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.AUTHENTICATED) {
+ this.state = 3620;
+ this.match(PlSqlParser.AUTHENTICATED);
+ this.state = 3621;
+ this.match(PlSqlParser.USING);
+ this.state = 3626;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.PASSWORD:
+ this.state = 3622;
+ this.match(PlSqlParser.PASSWORD);
+ break;
+ case PlSqlParser.CERTIFICATE:
+ this.state = 3623;
+ this.match(PlSqlParser.CERTIFICATE);
+ break;
+ case PlSqlParser.DISTINGUISHED:
+ this.state = 3624;
+ this.match(PlSqlParser.DISTINGUISHED);
+ this.state = 3625;
+ this.match(PlSqlParser.NAME);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ }
+
+ break;
+
+ }
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Container_namesContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_container_names;
+ return this;
+}
+
+Container_namesContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Container_namesContext.prototype.constructor = Container_namesContext;
+
+Container_namesContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Container_namesContext.prototype.id_expression = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Id_expressionContext);
+ } else {
+ return this.getTypedRuleContext(Id_expressionContext,i);
+ }
+};
+
+Container_namesContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Container_namesContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Container_namesContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterContainer_names(this);
+ }
+};
+
+Container_namesContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitContainer_names(this);
+ }
+};
+
+Container_namesContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitContainer_names(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Container_namesContext = Container_namesContext;
+
+PlSqlParser.prototype.container_names = function() {
+
+ var localctx = new Container_namesContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 300, PlSqlParser.RULE_container_names);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3634;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 3635;
+ this.id_expression();
+ this.state = 3640;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 3636;
+ this.match(PlSqlParser.COMMA);
+ this.state = 3637;
+ this.id_expression();
+ this.state = 3642;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 3643;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Set_container_dataContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_set_container_data;
+ return this;
+}
+
+Set_container_dataContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Set_container_dataContext.prototype.constructor = Set_container_dataContext;
+
+Set_container_dataContext.prototype.SET = function() {
+ return this.getToken(PlSqlParser.SET, 0);
+};
+
+Set_container_dataContext.prototype.CONTAINER_DATA = function() {
+ return this.getToken(PlSqlParser.CONTAINER_DATA, 0);
+};
+
+Set_container_dataContext.prototype.EQUALS_OP = function() {
+ return this.getToken(PlSqlParser.EQUALS_OP, 0);
+};
+
+Set_container_dataContext.prototype.ALL = function() {
+ return this.getToken(PlSqlParser.ALL, 0);
+};
+
+Set_container_dataContext.prototype.DEFAULT = function() {
+ return this.getToken(PlSqlParser.DEFAULT, 0);
+};
+
+Set_container_dataContext.prototype.container_names = function() {
+ return this.getTypedRuleContext(Container_namesContext,0);
+};
+
+Set_container_dataContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterSet_container_data(this);
+ }
+};
+
+Set_container_dataContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitSet_container_data(this);
+ }
+};
+
+Set_container_dataContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitSet_container_data(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Set_container_dataContext = Set_container_dataContext;
+
+PlSqlParser.prototype.set_container_data = function() {
+
+ var localctx = new Set_container_dataContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 302, PlSqlParser.RULE_set_container_data);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3645;
+ this.match(PlSqlParser.SET);
+ this.state = 3646;
+ this.match(PlSqlParser.CONTAINER_DATA);
+ this.state = 3647;
+ this.match(PlSqlParser.EQUALS_OP);
+ this.state = 3651;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.ALL:
+ this.state = 3648;
+ this.match(PlSqlParser.ALL);
+ break;
+ case PlSqlParser.DEFAULT:
+ this.state = 3649;
+ this.match(PlSqlParser.DEFAULT);
+ break;
+ case PlSqlParser.LEFT_PAREN:
+ this.state = 3650;
+ this.container_names();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Add_rem_container_dataContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_add_rem_container_data;
+ return this;
+}
+
+Add_rem_container_dataContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Add_rem_container_dataContext.prototype.constructor = Add_rem_container_dataContext;
+
+Add_rem_container_dataContext.prototype.CONTAINER_DATA = function() {
+ return this.getToken(PlSqlParser.CONTAINER_DATA, 0);
+};
+
+Add_rem_container_dataContext.prototype.EQUALS_OP = function() {
+ return this.getToken(PlSqlParser.EQUALS_OP, 0);
+};
+
+Add_rem_container_dataContext.prototype.container_names = function() {
+ return this.getTypedRuleContext(Container_namesContext,0);
+};
+
+Add_rem_container_dataContext.prototype.ADD = function() {
+ return this.getToken(PlSqlParser.ADD, 0);
+};
+
+Add_rem_container_dataContext.prototype.REMOVE = function() {
+ return this.getToken(PlSqlParser.REMOVE, 0);
+};
+
+Add_rem_container_dataContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAdd_rem_container_data(this);
+ }
+};
+
+Add_rem_container_dataContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAdd_rem_container_data(this);
+ }
+};
+
+Add_rem_container_dataContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAdd_rem_container_data(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Add_rem_container_dataContext = Add_rem_container_dataContext;
+
+PlSqlParser.prototype.add_rem_container_data = function() {
+
+ var localctx = new Add_rem_container_dataContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 304, PlSqlParser.RULE_add_rem_container_data);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3653;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.ADD || _la===PlSqlParser.REMOVE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 3654;
+ this.match(PlSqlParser.CONTAINER_DATA);
+ this.state = 3655;
+ this.match(PlSqlParser.EQUALS_OP);
+ this.state = 3656;
+ this.container_names();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Container_data_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_container_data_clause;
+ return this;
+}
+
+Container_data_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Container_data_clauseContext.prototype.constructor = Container_data_clauseContext;
+
+Container_data_clauseContext.prototype.set_container_data = function() {
+ return this.getTypedRuleContext(Set_container_dataContext,0);
+};
+
+Container_data_clauseContext.prototype.add_rem_container_data = function() {
+ return this.getTypedRuleContext(Add_rem_container_dataContext,0);
+};
+
+Container_data_clauseContext.prototype.FOR = function() {
+ return this.getToken(PlSqlParser.FOR, 0);
+};
+
+Container_data_clauseContext.prototype.container_tableview_name = function() {
+ return this.getTypedRuleContext(Container_tableview_nameContext,0);
+};
+
+Container_data_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterContainer_data_clause(this);
+ }
+};
+
+Container_data_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitContainer_data_clause(this);
+ }
+};
+
+Container_data_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitContainer_data_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Container_data_clauseContext = Container_data_clauseContext;
+
+PlSqlParser.prototype.container_data_clause = function() {
+
+ var localctx = new Container_data_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 306, PlSqlParser.RULE_container_data_clause);
+ var _la = 0; // Token type
+ try {
+ this.state = 3664;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.SET:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3658;
+ this.set_container_data();
+ break;
+ case PlSqlParser.ADD:
+ case PlSqlParser.REMOVE:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 3659;
+ this.add_rem_container_data();
+ this.state = 3662;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.FOR) {
+ this.state = 3660;
+ this.match(PlSqlParser.FOR);
+ this.state = 3661;
+ this.container_tableview_name();
+ }
+
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function AnalyzeContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_analyze;
+ return this;
+}
+
+AnalyzeContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+AnalyzeContext.prototype.constructor = AnalyzeContext;
+
+AnalyzeContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+AnalyzeContext.prototype.ANALYZE = function() {
+ return this.getToken(PlSqlParser.ANALYZE, 0);
+};
+
+AnalyzeContext.prototype.CLUSTER = function() {
+ return this.getToken(PlSqlParser.CLUSTER, 0);
+};
+
+AnalyzeContext.prototype.cluster_name = function() {
+ return this.getTypedRuleContext(Cluster_nameContext,0);
+};
+
+AnalyzeContext.prototype.validation_clauses = function() {
+ return this.getTypedRuleContext(Validation_clausesContext,0);
+};
+
+AnalyzeContext.prototype.LIST = function() {
+ return this.getToken(PlSqlParser.LIST, 0);
+};
+
+AnalyzeContext.prototype.CHAINED = function() {
+ return this.getToken(PlSqlParser.CHAINED, 0);
+};
+
+AnalyzeContext.prototype.ROWS = function() {
+ return this.getToken(PlSqlParser.ROWS, 0);
+};
+
+AnalyzeContext.prototype.DELETE = function() {
+ return this.getToken(PlSqlParser.DELETE, 0);
+};
+
+AnalyzeContext.prototype.STATISTICS = function() {
+ return this.getToken(PlSqlParser.STATISTICS, 0);
+};
+
+AnalyzeContext.prototype.TABLE = function() {
+ return this.getToken(PlSqlParser.TABLE, 0);
+};
+
+AnalyzeContext.prototype.tableview_name = function() {
+ return this.getTypedRuleContext(Tableview_nameContext,0);
+};
+
+AnalyzeContext.prototype.INDEX = function() {
+ return this.getToken(PlSqlParser.INDEX, 0);
+};
+
+AnalyzeContext.prototype.index_name = function() {
+ return this.getTypedRuleContext(Index_nameContext,0);
+};
+
+AnalyzeContext.prototype.partition_extention_clause = function() {
+ return this.getTypedRuleContext(Partition_extention_clauseContext,0);
+};
+
+AnalyzeContext.prototype.into_clause1 = function() {
+ return this.getTypedRuleContext(Into_clause1Context,0);
+};
+
+AnalyzeContext.prototype.SYSTEM = function() {
+ return this.getToken(PlSqlParser.SYSTEM, 0);
+};
+
+AnalyzeContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAnalyze(this);
+ }
+};
+
+AnalyzeContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAnalyze(this);
+ }
+};
+
+AnalyzeContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAnalyze(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.AnalyzeContext = AnalyzeContext;
+
+PlSqlParser.prototype.analyze = function() {
+
+ var localctx = new AnalyzeContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 308, PlSqlParser.RULE_analyze);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3679;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,320,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 3666;
+ this.match(PlSqlParser.ANALYZE);
+ this.state = 3671;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.TABLE:
+ this.state = 3667;
+ this.match(PlSqlParser.TABLE);
+ this.state = 3668;
+ this.tableview_name();
+ break;
+ case PlSqlParser.INDEX:
+ this.state = 3669;
+ this.match(PlSqlParser.INDEX);
+ this.state = 3670;
+ this.index_name();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 3674;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.PARTITION || _la===PlSqlParser.SUBPARTITION) {
+ this.state = 3673;
+ this.partition_extention_clause();
+ }
+
+ break;
+
+ case 2:
+ this.state = 3676;
+ this.match(PlSqlParser.ANALYZE);
+ this.state = 3677;
+ this.match(PlSqlParser.CLUSTER);
+ this.state = 3678;
+ this.cluster_name();
+ break;
+
+ }
+ this.state = 3693;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.VALIDATE:
+ this.state = 3681;
+ this.validation_clauses();
+ break;
+ case PlSqlParser.LIST:
+ this.state = 3682;
+ this.match(PlSqlParser.LIST);
+ this.state = 3683;
+ this.match(PlSqlParser.CHAINED);
+ this.state = 3684;
+ this.match(PlSqlParser.ROWS);
+ this.state = 3686;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.INTO) {
+ this.state = 3685;
+ this.into_clause1();
+ }
+
+ break;
+ case PlSqlParser.DELETE:
+ this.state = 3688;
+ this.match(PlSqlParser.DELETE);
+ this.state = 3690;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.SYSTEM) {
+ this.state = 3689;
+ this.match(PlSqlParser.SYSTEM);
+ }
+
+ this.state = 3692;
+ this.match(PlSqlParser.STATISTICS);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 3695;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Partition_extention_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_partition_extention_clause;
+ return this;
+}
+
+Partition_extention_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Partition_extention_clauseContext.prototype.constructor = Partition_extention_clauseContext;
+
+Partition_extention_clauseContext.prototype.PARTITION = function() {
+ return this.getToken(PlSqlParser.PARTITION, 0);
+};
+
+Partition_extention_clauseContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Partition_extention_clauseContext.prototype.partition_name = function() {
+ return this.getTypedRuleContext(Partition_nameContext,0);
+};
+
+Partition_extention_clauseContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Partition_extention_clauseContext.prototype.FOR = function() {
+ return this.getToken(PlSqlParser.FOR, 0);
+};
+
+Partition_extention_clauseContext.prototype.partition_key_value = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Partition_key_valueContext);
+ } else {
+ return this.getTypedRuleContext(Partition_key_valueContext,i);
+ }
+};
+
+Partition_extention_clauseContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Partition_extention_clauseContext.prototype.SUBPARTITION = function() {
+ return this.getToken(PlSqlParser.SUBPARTITION, 0);
+};
+
+Partition_extention_clauseContext.prototype.subpartition_name = function() {
+ return this.getTypedRuleContext(Subpartition_nameContext,0);
+};
+
+Partition_extention_clauseContext.prototype.subpartition_key_value = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Subpartition_key_valueContext);
+ } else {
+ return this.getTypedRuleContext(Subpartition_key_valueContext,i);
+ }
+};
+
+Partition_extention_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterPartition_extention_clause(this);
+ }
+};
+
+Partition_extention_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitPartition_extention_clause(this);
+ }
+};
+
+Partition_extention_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitPartition_extention_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Partition_extention_clauseContext = Partition_extention_clauseContext;
+
+PlSqlParser.prototype.partition_extention_clause = function() {
+
+ var localctx = new Partition_extention_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 310, PlSqlParser.RULE_partition_extention_clause);
+ var _la = 0; // Token type
+ try {
+ this.state = 3735;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.PARTITION:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3697;
+ this.match(PlSqlParser.PARTITION);
+ this.state = 3714;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.LEFT_PAREN:
+ this.state = 3698;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 3699;
+ this.partition_name();
+ this.state = 3700;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ break;
+ case PlSqlParser.FOR:
+ this.state = 3702;
+ this.match(PlSqlParser.FOR);
+ this.state = 3703;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 3704;
+ this.partition_key_value();
+ this.state = 3709;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 3705;
+ this.match(PlSqlParser.COMMA);
+ this.state = 3706;
+ this.partition_key_value();
+ this.state = 3711;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 3712;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ break;
+ case PlSqlParser.SUBPARTITION:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 3716;
+ this.match(PlSqlParser.SUBPARTITION);
+ this.state = 3733;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.LEFT_PAREN:
+ this.state = 3717;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 3718;
+ this.subpartition_name();
+ this.state = 3719;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ break;
+ case PlSqlParser.FOR:
+ this.state = 3721;
+ this.match(PlSqlParser.FOR);
+ this.state = 3722;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 3723;
+ this.subpartition_key_value();
+ this.state = 3728;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 3724;
+ this.match(PlSqlParser.COMMA);
+ this.state = 3725;
+ this.subpartition_key_value();
+ this.state = 3730;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 3731;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Validation_clausesContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_validation_clauses;
+ return this;
+}
+
+Validation_clausesContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Validation_clausesContext.prototype.constructor = Validation_clausesContext;
+
+Validation_clausesContext.prototype.VALIDATE = function() {
+ return this.getToken(PlSqlParser.VALIDATE, 0);
+};
+
+Validation_clausesContext.prototype.REF = function() {
+ return this.getToken(PlSqlParser.REF, 0);
+};
+
+Validation_clausesContext.prototype.UPDATE = function() {
+ return this.getToken(PlSqlParser.UPDATE, 0);
+};
+
+Validation_clausesContext.prototype.SET = function() {
+ return this.getToken(PlSqlParser.SET, 0);
+};
+
+Validation_clausesContext.prototype.DANGLING = function() {
+ return this.getToken(PlSqlParser.DANGLING, 0);
+};
+
+Validation_clausesContext.prototype.TO = function() {
+ return this.getToken(PlSqlParser.TO, 0);
+};
+
+Validation_clausesContext.prototype.NULL_ = function() {
+ return this.getToken(PlSqlParser.NULL_, 0);
+};
+
+Validation_clausesContext.prototype.STRUCTURE = function() {
+ return this.getToken(PlSqlParser.STRUCTURE, 0);
+};
+
+Validation_clausesContext.prototype.CASCADE = function() {
+ return this.getToken(PlSqlParser.CASCADE, 0);
+};
+
+Validation_clausesContext.prototype.FAST = function() {
+ return this.getToken(PlSqlParser.FAST, 0);
+};
+
+Validation_clausesContext.prototype.online_or_offline = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Online_or_offlineContext);
+ } else {
+ return this.getTypedRuleContext(Online_or_offlineContext,i);
+ }
+};
+
+Validation_clausesContext.prototype.into_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Into_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Into_clauseContext,i);
+ }
+};
+
+Validation_clausesContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterValidation_clauses(this);
+ }
+};
+
+Validation_clausesContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitValidation_clauses(this);
+ }
+};
+
+Validation_clausesContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitValidation_clauses(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Validation_clausesContext = Validation_clausesContext;
+
+PlSqlParser.prototype.validation_clauses = function() {
+
+ var localctx = new Validation_clausesContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 312, PlSqlParser.RULE_validation_clauses);
+ var _la = 0; // Token type
+ try {
+ this.state = 3766;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,335,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3737;
+ this.match(PlSqlParser.VALIDATE);
+ this.state = 3738;
+ this.match(PlSqlParser.REF);
+ this.state = 3739;
+ this.match(PlSqlParser.UPDATE);
+ this.state = 3744;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.SET) {
+ this.state = 3740;
+ this.match(PlSqlParser.SET);
+ this.state = 3741;
+ this.match(PlSqlParser.DANGLING);
+ this.state = 3742;
+ this.match(PlSqlParser.TO);
+ this.state = 3743;
+ this.match(PlSqlParser.NULL_);
+ }
+
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 3746;
+ this.match(PlSqlParser.VALIDATE);
+ this.state = 3747;
+ this.match(PlSqlParser.STRUCTURE);
+ this.state = 3758;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,332,this._ctx);
+ if(la_===1) {
+ this.state = 3748;
+ this.match(PlSqlParser.CASCADE);
+ this.state = 3749;
+ this.match(PlSqlParser.FAST);
+
+ } else if(la_===2) {
+ this.state = 3750;
+ this.match(PlSqlParser.CASCADE);
+ this.state = 3752;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,330,this._ctx);
+ if(la_===1) {
+ this.state = 3751;
+ this.online_or_offline();
+
+ }
+ this.state = 3755;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,331,this._ctx);
+ if(la_===1) {
+ this.state = 3754;
+ this.into_clause();
+
+ }
+
+ } else if(la_===3) {
+ this.state = 3757;
+ this.match(PlSqlParser.CASCADE);
+
+ }
+ this.state = 3761;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.OFFLINE || _la===PlSqlParser.ONLINE) {
+ this.state = 3760;
+ this.online_or_offline();
+ }
+
+ this.state = 3764;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.BULK || _la===PlSqlParser.INTO) {
+ this.state = 3763;
+ this.into_clause();
+ }
+
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Online_or_offlineContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_online_or_offline;
+ return this;
+}
+
+Online_or_offlineContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Online_or_offlineContext.prototype.constructor = Online_or_offlineContext;
+
+Online_or_offlineContext.prototype.OFFLINE = function() {
+ return this.getToken(PlSqlParser.OFFLINE, 0);
+};
+
+Online_or_offlineContext.prototype.ONLINE = function() {
+ return this.getToken(PlSqlParser.ONLINE, 0);
+};
+
+Online_or_offlineContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterOnline_or_offline(this);
+ }
+};
+
+Online_or_offlineContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitOnline_or_offline(this);
+ }
+};
+
+Online_or_offlineContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitOnline_or_offline(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Online_or_offlineContext = Online_or_offlineContext;
+
+PlSqlParser.prototype.online_or_offline = function() {
+
+ var localctx = new Online_or_offlineContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 314, PlSqlParser.RULE_online_or_offline);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3768;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.OFFLINE || _la===PlSqlParser.ONLINE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Into_clause1Context(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_into_clause1;
+ return this;
+}
+
+Into_clause1Context.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Into_clause1Context.prototype.constructor = Into_clause1Context;
+
+Into_clause1Context.prototype.INTO = function() {
+ return this.getToken(PlSqlParser.INTO, 0);
+};
+
+Into_clause1Context.prototype.tableview_name = function() {
+ return this.getTypedRuleContext(Tableview_nameContext,0);
+};
+
+Into_clause1Context.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterInto_clause1(this);
+ }
+};
+
+Into_clause1Context.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitInto_clause1(this);
+ }
+};
+
+Into_clause1Context.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitInto_clause1(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Into_clause1Context = Into_clause1Context;
+
+PlSqlParser.prototype.into_clause1 = function() {
+
+ var localctx = new Into_clause1Context(this, this._ctx, this.state);
+ this.enterRule(localctx, 316, PlSqlParser.RULE_into_clause1);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3770;
+ this.match(PlSqlParser.INTO);
+ this.state = 3772;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if((((_la) & ~0x1f) == 0 && ((1 << _la) & ((1 << PlSqlParser.ABORT) | (1 << PlSqlParser.ABS) | (1 << PlSqlParser.ACCESS) | (1 << PlSqlParser.ACCESSED) | (1 << PlSqlParser.ACCOUNT) | (1 << PlSqlParser.ACL) | (1 << PlSqlParser.ACOS) | (1 << PlSqlParser.ACTION) | (1 << PlSqlParser.ACTIONS) | (1 << PlSqlParser.ACTIVATE) | (1 << PlSqlParser.ACTIVE) | (1 << PlSqlParser.ACTIVE_COMPONENT) | (1 << PlSqlParser.ACTIVE_DATA) | (1 << PlSqlParser.ACTIVE_FUNCTION) | (1 << PlSqlParser.ACTIVE_TAG) | (1 << PlSqlParser.ACTIVITY) | (1 << PlSqlParser.ADAPTIVE_PLAN) | (1 << PlSqlParser.ADD) | (1 << PlSqlParser.ADD_COLUMN) | (1 << PlSqlParser.ADD_GROUP) | (1 << PlSqlParser.ADD_MONTHS) | (1 << PlSqlParser.ADJ_DATE) | (1 << PlSqlParser.ADMIN) | (1 << PlSqlParser.ADMINISTER) | (1 << PlSqlParser.ADMINISTRATOR) | (1 << PlSqlParser.ADVANCED) | (1 << PlSqlParser.ADVISE) | (1 << PlSqlParser.ADVISOR) | (1 << PlSqlParser.AFD_DISKSTRING) | (1 << PlSqlParser.AFTER) | (1 << PlSqlParser.AGENT))) !== 0) || ((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (PlSqlParser.AGGREGATE - 32)) | (1 << (PlSqlParser.A_LETTER - 32)) | (1 << (PlSqlParser.ALIAS - 32)) | (1 << (PlSqlParser.ALLOCATE - 32)) | (1 << (PlSqlParser.ALLOW - 32)) | (1 << (PlSqlParser.ALL_ROWS - 32)) | (1 << (PlSqlParser.ALWAYS - 32)) | (1 << (PlSqlParser.ANALYZE - 32)) | (1 << (PlSqlParser.ANCILLARY - 32)) | (1 << (PlSqlParser.AND_EQUAL - 32)) | (1 << (PlSqlParser.ANOMALY - 32)) | (1 << (PlSqlParser.ANSI_REARCH - 32)) | (1 << (PlSqlParser.ANTIJOIN - 32)) | (1 << (PlSqlParser.ANYSCHEMA - 32)) | (1 << (PlSqlParser.APPEND - 32)) | (1 << (PlSqlParser.APPENDCHILDXML - 32)) | (1 << (PlSqlParser.APPEND_VALUES - 32)) | (1 << (PlSqlParser.APPLICATION - 32)) | (1 << (PlSqlParser.APPLY - 32)) | (1 << (PlSqlParser.APPROX_COUNT_DISTINCT - 32)) | (1 << (PlSqlParser.ARCHIVAL - 32)) | (1 << (PlSqlParser.ARCHIVE - 32)) | (1 << (PlSqlParser.ARCHIVED - 32)) | (1 << (PlSqlParser.ARCHIVELOG - 32)) | (1 << (PlSqlParser.ARRAY - 32)) | (1 << (PlSqlParser.ASCII - 32)))) !== 0) || ((((_la - 64)) & ~0x1f) == 0 && ((1 << (_la - 64)) & ((1 << (PlSqlParser.ASCIISTR - 64)) | (1 << (PlSqlParser.ASIN - 64)) | (1 << (PlSqlParser.ASIS - 64)) | (1 << (PlSqlParser.ASSEMBLY - 64)) | (1 << (PlSqlParser.ASSIGN - 64)) | (1 << (PlSqlParser.ASSOCIATE - 64)) | (1 << (PlSqlParser.ASYNC - 64)) | (1 << (PlSqlParser.ASYNCHRONOUS - 64)) | (1 << (PlSqlParser.ATAN2 - 64)) | (1 << (PlSqlParser.ATAN - 64)) | (1 << (PlSqlParser.AT - 64)) | (1 << (PlSqlParser.ATTRIBUTE - 64)) | (1 << (PlSqlParser.ATTRIBUTES - 64)) | (1 << (PlSqlParser.AUTHENTICATED - 64)) | (1 << (PlSqlParser.AUTHENTICATION - 64)) | (1 << (PlSqlParser.AUTHID - 64)) | (1 << (PlSqlParser.AUTHORIZATION - 64)) | (1 << (PlSqlParser.AUTOALLOCATE - 64)) | (1 << (PlSqlParser.AUTO - 64)) | (1 << (PlSqlParser.AUTOEXTEND - 64)) | (1 << (PlSqlParser.AUTO_LOGIN - 64)) | (1 << (PlSqlParser.AUTOMATIC - 64)) | (1 << (PlSqlParser.AUTONOMOUS_TRANSACTION - 64)) | (1 << (PlSqlParser.AUTO_REOPTIMIZE - 64)) | (1 << (PlSqlParser.AVAILABILITY - 64)) | (1 << (PlSqlParser.AVRO - 64)) | (1 << (PlSqlParser.BACKGROUND - 64)) | (1 << (PlSqlParser.BACKUP - 64)) | (1 << (PlSqlParser.BASIC - 64)))) !== 0) || ((((_la - 96)) & ~0x1f) == 0 && ((1 << (_la - 96)) & ((1 << (PlSqlParser.BASICFILE - 96)) | (1 << (PlSqlParser.BATCH - 96)) | (1 << (PlSqlParser.BATCHSIZE - 96)) | (1 << (PlSqlParser.BATCH_TABLE_ACCESS_BY_ROWID - 96)) | (1 << (PlSqlParser.BECOME - 96)) | (1 << (PlSqlParser.BEFORE - 96)) | (1 << (PlSqlParser.BEGIN - 96)) | (1 << (PlSqlParser.BEGINNING - 96)) | (1 << (PlSqlParser.BEGIN_OUTLINE_DATA - 96)) | (1 << (PlSqlParser.BEHALF - 96)) | (1 << (PlSqlParser.BEQUEATH - 96)) | (1 << (PlSqlParser.BFILE - 96)) | (1 << (PlSqlParser.BFILENAME - 96)) | (1 << (PlSqlParser.BIGFILE - 96)) | (1 << (PlSqlParser.BINARY - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE_INFINITY - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE_NAN - 96)) | (1 << (PlSqlParser.BINARY_FLOAT - 96)) | (1 << (PlSqlParser.BINARY_FLOAT_INFINITY - 96)) | (1 << (PlSqlParser.BINARY_FLOAT_NAN - 96)) | (1 << (PlSqlParser.BINARY_INTEGER - 96)) | (1 << (PlSqlParser.BIND_AWARE - 96)) | (1 << (PlSqlParser.BINDING - 96)) | (1 << (PlSqlParser.BIN_TO_NUM - 96)) | (1 << (PlSqlParser.BITAND - 96)) | (1 << (PlSqlParser.BITMAP_AND - 96)) | (1 << (PlSqlParser.BITMAP - 96)) | (1 << (PlSqlParser.BITMAPS - 96)) | (1 << (PlSqlParser.BITMAP_TREE - 96)) | (1 << (PlSqlParser.BITS - 96)))) !== 0) || ((((_la - 128)) & ~0x1f) == 0 && ((1 << (_la - 128)) & ((1 << (PlSqlParser.BLOB - 128)) | (1 << (PlSqlParser.BLOCK - 128)) | (1 << (PlSqlParser.BLOCK_RANGE - 128)) | (1 << (PlSqlParser.BLOCKS - 128)) | (1 << (PlSqlParser.BLOCKSIZE - 128)) | (1 << (PlSqlParser.BODY - 128)) | (1 << (PlSqlParser.BOOLEAN - 128)) | (1 << (PlSqlParser.BOTH - 128)) | (1 << (PlSqlParser.BOUND - 128)) | (1 << (PlSqlParser.BRANCH - 128)) | (1 << (PlSqlParser.BREADTH - 128)) | (1 << (PlSqlParser.BROADCAST - 128)) | (1 << (PlSqlParser.BSON - 128)) | (1 << (PlSqlParser.BUFFER - 128)) | (1 << (PlSqlParser.BUFFER_CACHE - 128)) | (1 << (PlSqlParser.BUFFER_POOL - 128)) | (1 << (PlSqlParser.BUILD - 128)) | (1 << (PlSqlParser.BULK - 128)) | (1 << (PlSqlParser.BYPASS_RECURSIVE_CHECK - 128)) | (1 << (PlSqlParser.BYPASS_UJVC - 128)) | (1 << (PlSqlParser.BYTE - 128)) | (1 << (PlSqlParser.CACHE - 128)) | (1 << (PlSqlParser.CACHE_CB - 128)) | (1 << (PlSqlParser.CACHE_INSTANCES - 128)) | (1 << (PlSqlParser.CACHE_TEMP_TABLE - 128)) | (1 << (PlSqlParser.CACHING - 128)) | (1 << (PlSqlParser.CALCULATED - 128)) | (1 << (PlSqlParser.CALLBACK - 128)) | (1 << (PlSqlParser.CALL - 128)) | (1 << (PlSqlParser.CANCEL - 128)))) !== 0) || ((((_la - 160)) & ~0x1f) == 0 && ((1 << (_la - 160)) & ((1 << (PlSqlParser.CAPACITY - 160)) | (1 << (PlSqlParser.CARDINALITY - 160)) | (1 << (PlSqlParser.CASCADE - 160)) | (1 << (PlSqlParser.CASE - 160)) | (1 << (PlSqlParser.CAST - 160)) | (1 << (PlSqlParser.CATEGORY - 160)) | (1 << (PlSqlParser.CDBDEFAULT - 160)) | (1 << (PlSqlParser.CEIL - 160)) | (1 << (PlSqlParser.CELL_FLASH_CACHE - 160)) | (1 << (PlSqlParser.CERTIFICATE - 160)) | (1 << (PlSqlParser.CFILE - 160)) | (1 << (PlSqlParser.CHAINED - 160)) | (1 << (PlSqlParser.CHANGE - 160)) | (1 << (PlSqlParser.CHANGE_DUPKEY_ERROR_INDEX - 160)) | (1 << (PlSqlParser.CHARACTER - 160)) | (1 << (PlSqlParser.CHAR - 160)) | (1 << (PlSqlParser.CHAR_CS - 160)) | (1 << (PlSqlParser.CHARTOROWID - 160)) | (1 << (PlSqlParser.CHECK_ACL_REWRITE - 160)) | (1 << (PlSqlParser.CHECKPOINT - 160)) | (1 << (PlSqlParser.CHILD - 160)) | (1 << (PlSqlParser.CHOOSE - 160)) | (1 << (PlSqlParser.CHR - 160)) | (1 << (PlSqlParser.CHUNK - 160)) | (1 << (PlSqlParser.CLASS - 160)) | (1 << (PlSqlParser.CLASSIFIER - 160)) | (1 << (PlSqlParser.CLEANUP - 160)) | (1 << (PlSqlParser.CLEAR - 160)) | (1 << (PlSqlParser.C_LETTER - 160)) | (1 << (PlSqlParser.CLIENT - 160)))) !== 0) || ((((_la - 192)) & ~0x1f) == 0 && ((1 << (_la - 192)) & ((1 << (PlSqlParser.CLOB - 192)) | (1 << (PlSqlParser.CLONE - 192)) | (1 << (PlSqlParser.CLOSE_CACHED_OPEN_CURSORS - 192)) | (1 << (PlSqlParser.CLOSE - 192)) | (1 << (PlSqlParser.CLUSTER_BY_ROWID - 192)) | (1 << (PlSqlParser.CLUSTER - 192)) | (1 << (PlSqlParser.CLUSTER_DETAILS - 192)) | (1 << (PlSqlParser.CLUSTER_DISTANCE - 192)) | (1 << (PlSqlParser.CLUSTER_ID - 192)) | (1 << (PlSqlParser.CLUSTERING - 192)) | (1 << (PlSqlParser.CLUSTERING_FACTOR - 192)) | (1 << (PlSqlParser.CLUSTER_PROBABILITY - 192)) | (1 << (PlSqlParser.CLUSTER_SET - 192)) | (1 << (PlSqlParser.COALESCE - 192)) | (1 << (PlSqlParser.COALESCE_SQ - 192)) | (1 << (PlSqlParser.COARSE - 192)) | (1 << (PlSqlParser.CO_AUTH_IND - 192)) | (1 << (PlSqlParser.COLD - 192)) | (1 << (PlSqlParser.COLLECT - 192)) | (1 << (PlSqlParser.COLUMNAR - 192)) | (1 << (PlSqlParser.COLUMN_AUTH_INDICATOR - 192)) | (1 << (PlSqlParser.COLUMN - 192)) | (1 << (PlSqlParser.COLUMNS - 192)) | (1 << (PlSqlParser.COLUMN_STATS - 192)) | (1 << (PlSqlParser.COLUMN_VALUE - 192)) | (1 << (PlSqlParser.COMMENT - 192)) | (1 << (PlSqlParser.COMMIT - 192)) | (1 << (PlSqlParser.COMMITTED - 192)) | (1 << (PlSqlParser.COMMON_DATA - 192)) | (1 << (PlSqlParser.COMPACT - 192)) | (1 << (PlSqlParser.COMPATIBILITY - 192)) | (1 << (PlSqlParser.COMPILE - 192)))) !== 0) || ((((_la - 224)) & ~0x1f) == 0 && ((1 << (_la - 224)) & ((1 << (PlSqlParser.COMPLETE - 224)) | (1 << (PlSqlParser.COMPLIANCE - 224)) | (1 << (PlSqlParser.COMPONENT - 224)) | (1 << (PlSqlParser.COMPONENTS - 224)) | (1 << (PlSqlParser.COMPOSE - 224)) | (1 << (PlSqlParser.COMPOSITE - 224)) | (1 << (PlSqlParser.COMPOSITE_LIMIT - 224)) | (1 << (PlSqlParser.COMPOUND - 224)) | (1 << (PlSqlParser.COMPUTE - 224)) | (1 << (PlSqlParser.CONCAT - 224)) | (1 << (PlSqlParser.CON_DBID_TO_ID - 224)) | (1 << (PlSqlParser.CONDITIONAL - 224)) | (1 << (PlSqlParser.CONDITION - 224)) | (1 << (PlSqlParser.CONFIRM - 224)) | (1 << (PlSqlParser.CONFORMING - 224)) | (1 << (PlSqlParser.CON_GUID_TO_ID - 224)) | (1 << (PlSqlParser.CON_ID - 224)) | (1 << (PlSqlParser.CON_NAME_TO_ID - 224)) | (1 << (PlSqlParser.CONNECT_BY_CB_WHR_ONLY - 224)) | (1 << (PlSqlParser.CONNECT_BY_COMBINE_SW - 224)) | (1 << (PlSqlParser.CONNECT_BY_COST_BASED - 224)) | (1 << (PlSqlParser.CONNECT_BY_ELIM_DUPS - 224)) | (1 << (PlSqlParser.CONNECT_BY_FILTERING - 224)) | (1 << (PlSqlParser.CONNECT_BY_ISCYCLE - 224)) | (1 << (PlSqlParser.CONNECT_BY_ISLEAF - 224)) | (1 << (PlSqlParser.CONNECT_BY_ROOT - 224)) | (1 << (PlSqlParser.CONNECT_TIME - 224)) | (1 << (PlSqlParser.CONSIDER - 224)) | (1 << (PlSqlParser.CONSISTENT - 224)) | (1 << (PlSqlParser.CONSTANT - 224)))) !== 0) || ((((_la - 256)) & ~0x1f) == 0 && ((1 << (_la - 256)) & ((1 << (PlSqlParser.CONST - 256)) | (1 << (PlSqlParser.CONSTRAINT - 256)) | (1 << (PlSqlParser.CONSTRAINTS - 256)) | (1 << (PlSqlParser.CONSTRUCTOR - 256)) | (1 << (PlSqlParser.CONTAINER - 256)) | (1 << (PlSqlParser.CONTAINER_DATA - 256)) | (1 << (PlSqlParser.CONTAINERS - 256)) | (1 << (PlSqlParser.CONTENT - 256)) | (1 << (PlSqlParser.CONTENTS - 256)) | (1 << (PlSqlParser.CONTEXT - 256)) | (1 << (PlSqlParser.CONTINUE - 256)) | (1 << (PlSqlParser.CONTROLFILE - 256)) | (1 << (PlSqlParser.CON_UID_TO_ID - 256)) | (1 << (PlSqlParser.CONVERT - 256)) | (1 << (PlSqlParser.COOKIE - 256)) | (1 << (PlSqlParser.COPY - 256)) | (1 << (PlSqlParser.CORR_K - 256)) | (1 << (PlSqlParser.CORR_S - 256)) | (1 << (PlSqlParser.CORRUPTION - 256)) | (1 << (PlSqlParser.CORRUPT_XID_ALL - 256)) | (1 << (PlSqlParser.CORRUPT_XID - 256)) | (1 << (PlSqlParser.COS - 256)) | (1 << (PlSqlParser.COSH - 256)) | (1 << (PlSqlParser.COST - 256)) | (1 << (PlSqlParser.COST_XML_QUERY_REWRITE - 256)) | (1 << (PlSqlParser.COUNT - 256)) | (1 << (PlSqlParser.COVAR_POP - 256)) | (1 << (PlSqlParser.COVAR_SAMP - 256)) | (1 << (PlSqlParser.CPU_COSTING - 256)) | (1 << (PlSqlParser.CPU_PER_CALL - 256)) | (1 << (PlSqlParser.CPU_PER_SESSION - 256)) | (1 << (PlSqlParser.CRASH - 256)))) !== 0) || ((((_la - 289)) & ~0x1f) == 0 && ((1 << (_la - 289)) & ((1 << (PlSqlParser.CREATE_FILE_DEST - 289)) | (1 << (PlSqlParser.CREATE_STORED_OUTLINES - 289)) | (1 << (PlSqlParser.CREATION - 289)) | (1 << (PlSqlParser.CREDENTIAL - 289)) | (1 << (PlSqlParser.CRITICAL - 289)) | (1 << (PlSqlParser.CROSS - 289)) | (1 << (PlSqlParser.CROSSEDITION - 289)) | (1 << (PlSqlParser.CSCONVERT - 289)) | (1 << (PlSqlParser.CUBE_AJ - 289)) | (1 << (PlSqlParser.CUBE - 289)) | (1 << (PlSqlParser.CUBE_GB - 289)) | (1 << (PlSqlParser.CUBE_SJ - 289)) | (1 << (PlSqlParser.CUME_DISTM - 289)) | (1 << (PlSqlParser.CURRENT - 289)) | (1 << (PlSqlParser.CURRENT_DATE - 289)) | (1 << (PlSqlParser.CURRENT_SCHEMA - 289)) | (1 << (PlSqlParser.CURRENT_TIME - 289)) | (1 << (PlSqlParser.CURRENT_TIMESTAMP - 289)) | (1 << (PlSqlParser.CURRENT_USER - 289)) | (1 << (PlSqlParser.CURRENTV - 289)) | (1 << (PlSqlParser.CURSOR - 289)) | (1 << (PlSqlParser.CURSOR_SHARING_EXACT - 289)) | (1 << (PlSqlParser.CURSOR_SPECIFIC_SEGMENT - 289)) | (1 << (PlSqlParser.CUSTOMDATUM - 289)) | (1 << (PlSqlParser.CV - 289)) | (1 << (PlSqlParser.CYCLE - 289)) | (1 << (PlSqlParser.DANGLING - 289)) | (1 << (PlSqlParser.DATABASE - 289)) | (1 << (PlSqlParser.DATA - 289)) | (1 << (PlSqlParser.DATAFILE - 289)) | (1 << (PlSqlParser.DATAFILES - 289)))) !== 0) || ((((_la - 321)) & ~0x1f) == 0 && ((1 << (_la - 321)) & ((1 << (PlSqlParser.DATAMOVEMENT - 321)) | (1 << (PlSqlParser.DATAOBJNO - 321)) | (1 << (PlSqlParser.DATAOBJ_TO_MAT_PARTITION - 321)) | (1 << (PlSqlParser.DATAOBJ_TO_PARTITION - 321)) | (1 << (PlSqlParser.DATAPUMP - 321)) | (1 << (PlSqlParser.DATA_SECURITY_REWRITE_LIMIT - 321)) | (1 << (PlSqlParser.DATE_MODE - 321)) | (1 << (PlSqlParser.DAY - 321)) | (1 << (PlSqlParser.DAYS - 321)) | (1 << (PlSqlParser.DBA - 321)) | (1 << (PlSqlParser.DBA_RECYCLEBIN - 321)) | (1 << (PlSqlParser.DBMS_STATS - 321)) | (1 << (PlSqlParser.DB_ROLE_CHANGE - 321)) | (1 << (PlSqlParser.DBTIMEZONE - 321)) | (1 << (PlSqlParser.DB_UNIQUE_NAME - 321)) | (1 << (PlSqlParser.DB_VERSION - 321)) | (1 << (PlSqlParser.DDL - 321)) | (1 << (PlSqlParser.DEALLOCATE - 321)) | (1 << (PlSqlParser.DEBUG - 321)) | (1 << (PlSqlParser.DEBUGGER - 321)) | (1 << (PlSqlParser.DEC - 321)) | (1 << (PlSqlParser.DECIMAL - 321)) | (1 << (PlSqlParser.DECLARE - 321)) | (1 << (PlSqlParser.DECOMPOSE - 321)) | (1 << (PlSqlParser.DECORRELATE - 321)) | (1 << (PlSqlParser.DECR - 321)) | (1 << (PlSqlParser.DECREMENT - 321)) | (1 << (PlSqlParser.DECRYPT - 321)) | (1 << (PlSqlParser.DEDUPLICATE - 321)) | (1 << (PlSqlParser.DEFAULTS - 321)))) !== 0) || ((((_la - 353)) & ~0x1f) == 0 && ((1 << (_la - 353)) & ((1 << (PlSqlParser.DEFERRABLE - 353)) | (1 << (PlSqlParser.DEFERRED - 353)) | (1 << (PlSqlParser.DEFINED - 353)) | (1 << (PlSqlParser.DEFINE - 353)) | (1 << (PlSqlParser.DEFINER - 353)) | (1 << (PlSqlParser.DEGREE - 353)) | (1 << (PlSqlParser.DELAY - 353)) | (1 << (PlSqlParser.DELEGATE - 353)) | (1 << (PlSqlParser.DELETE_ALL - 353)) | (1 << (PlSqlParser.DELETE - 353)) | (1 << (PlSqlParser.DELETEXML - 353)) | (1 << (PlSqlParser.DEMAND - 353)) | (1 << (PlSqlParser.DENSE_RANKM - 353)) | (1 << (PlSqlParser.DEPENDENT - 353)) | (1 << (PlSqlParser.DEPTH - 353)) | (1 << (PlSqlParser.DEQUEUE - 353)) | (1 << (PlSqlParser.DEREF - 353)) | (1 << (PlSqlParser.DEREF_NO_REWRITE - 353)) | (1 << (PlSqlParser.DESTROY - 353)) | (1 << (PlSqlParser.DETACHED - 353)) | (1 << (PlSqlParser.DETERMINES - 353)) | (1 << (PlSqlParser.DETERMINISTIC - 353)) | (1 << (PlSqlParser.DICTIONARY - 353)) | (1 << (PlSqlParser.DIMENSION - 353)) | (1 << (PlSqlParser.DIMENSIONS - 353)) | (1 << (PlSqlParser.DIRECT_LOAD - 353)) | (1 << (PlSqlParser.DIRECTORY - 353)) | (1 << (PlSqlParser.DIRECT_PATH - 353)) | (1 << (PlSqlParser.DISABLE_ALL - 353)) | (1 << (PlSqlParser.DISABLE - 353)) | (1 << (PlSqlParser.DISABLE_PARALLEL_DML - 353)))) !== 0) || ((((_la - 385)) & ~0x1f) == 0 && ((1 << (_la - 385)) & ((1 << (PlSqlParser.DISABLE_PRESET - 385)) | (1 << (PlSqlParser.DISABLE_RPKE - 385)) | (1 << (PlSqlParser.DISALLOW - 385)) | (1 << (PlSqlParser.DISASSOCIATE - 385)) | (1 << (PlSqlParser.DISCARD - 385)) | (1 << (PlSqlParser.DISCONNECT - 385)) | (1 << (PlSqlParser.DISK - 385)) | (1 << (PlSqlParser.DISKGROUP - 385)) | (1 << (PlSqlParser.DISKS - 385)) | (1 << (PlSqlParser.DISMOUNT - 385)) | (1 << (PlSqlParser.DISTINGUISHED - 385)) | (1 << (PlSqlParser.DISTRIBUTED - 385)) | (1 << (PlSqlParser.DISTRIBUTE - 385)) | (1 << (PlSqlParser.DML - 385)) | (1 << (PlSqlParser.DML_UPDATE - 385)) | (1 << (PlSqlParser.DOCFIDELITY - 385)) | (1 << (PlSqlParser.DOCUMENT - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_FILTER - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_NO_SORT - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_SORT - 385)) | (1 << (PlSqlParser.DOUBLE - 385)) | (1 << (PlSqlParser.DOWNGRADE - 385)) | (1 << (PlSqlParser.DRIVING_SITE - 385)) | (1 << (PlSqlParser.DROP_COLUMN - 385)) | (1 << (PlSqlParser.DROP_GROUP - 385)) | (1 << (PlSqlParser.DSINTERVAL_UNCONSTRAINED - 385)) | (1 << (PlSqlParser.DST_UPGRADE_INSERT_CONV - 385)) | (1 << (PlSqlParser.DUMP - 385)))) !== 0) || ((((_la - 417)) & ~0x1f) == 0 && ((1 << (_la - 417)) & ((1 << (PlSqlParser.DUPLICATE - 417)) | (1 << (PlSqlParser.DV - 417)) | (1 << (PlSqlParser.DYNAMIC - 417)) | (1 << (PlSqlParser.DYNAMIC_SAMPLING - 417)) | (1 << (PlSqlParser.DYNAMIC_SAMPLING_EST_CDN - 417)) | (1 << (PlSqlParser.EACH - 417)) | (1 << (PlSqlParser.EDITIONABLE - 417)) | (1 << (PlSqlParser.EDITION - 417)) | (1 << (PlSqlParser.EDITIONING - 417)) | (1 << (PlSqlParser.EDITIONS - 417)) | (1 << (PlSqlParser.ELEMENT - 417)) | (1 << (PlSqlParser.ELIM_GROUPBY - 417)) | (1 << (PlSqlParser.ELIMINATE_JOIN - 417)) | (1 << (PlSqlParser.ELIMINATE_OBY - 417)) | (1 << (PlSqlParser.ELIMINATE_OUTER_JOIN - 417)) | (1 << (PlSqlParser.EM - 417)) | (1 << (PlSqlParser.EMPTY_BLOB - 417)) | (1 << (PlSqlParser.EMPTY_CLOB - 417)) | (1 << (PlSqlParser.EMPTY - 417)) | (1 << (PlSqlParser.ENABLE_ALL - 417)) | (1 << (PlSqlParser.ENABLE - 417)) | (1 << (PlSqlParser.ENABLE_PARALLEL_DML - 417)) | (1 << (PlSqlParser.ENABLE_PRESET - 417)) | (1 << (PlSqlParser.ENCODING - 417)) | (1 << (PlSqlParser.ENCRYPT - 417)) | (1 << (PlSqlParser.ENCRYPTION - 417)) | (1 << (PlSqlParser.END_OUTLINE_DATA - 417)) | (1 << (PlSqlParser.ENFORCED - 417)) | (1 << (PlSqlParser.ENFORCE - 417)))) !== 0) || ((((_la - 449)) & ~0x1f) == 0 && ((1 << (_la - 449)) & ((1 << (PlSqlParser.ENQUEUE - 449)) | (1 << (PlSqlParser.ENTERPRISE - 449)) | (1 << (PlSqlParser.ENTITYESCAPING - 449)) | (1 << (PlSqlParser.ENTRY - 449)) | (1 << (PlSqlParser.EQUIPART - 449)) | (1 << (PlSqlParser.ERR - 449)) | (1 << (PlSqlParser.ERROR_ARGUMENT - 449)) | (1 << (PlSqlParser.ERROR - 449)) | (1 << (PlSqlParser.ERROR_ON_OVERLAP_TIME - 449)) | (1 << (PlSqlParser.ERRORS - 449)) | (1 << (PlSqlParser.ESCAPE - 449)) | (1 << (PlSqlParser.ESTIMATE - 449)) | (1 << (PlSqlParser.EVAL - 449)) | (1 << (PlSqlParser.EVALNAME - 449)) | (1 << (PlSqlParser.EVALUATE - 449)) | (1 << (PlSqlParser.EVALUATION - 449)) | (1 << (PlSqlParser.EVENTS - 449)) | (1 << (PlSqlParser.EVERY - 449)) | (1 << (PlSqlParser.EXCEPT - 449)) | (1 << (PlSqlParser.EXCEPTION - 449)) | (1 << (PlSqlParser.EXCEPTION_INIT - 449)) | (1 << (PlSqlParser.EXCEPTIONS - 449)) | (1 << (PlSqlParser.EXCHANGE - 449)) | (1 << (PlSqlParser.EXCLUDE - 449)) | (1 << (PlSqlParser.EXCLUDING - 449)) | (1 << (PlSqlParser.EXECUTE - 449)) | (1 << (PlSqlParser.EXEMPT - 449)) | (1 << (PlSqlParser.EXISTING - 449)) | (1 << (PlSqlParser.EXISTS - 449)) | (1 << (PlSqlParser.EXISTSNODE - 449)) | (1 << (PlSqlParser.EXIT - 449)))) !== 0) || ((((_la - 481)) & ~0x1f) == 0 && ((1 << (_la - 481)) & ((1 << (PlSqlParser.EXPAND_GSET_TO_UNION - 481)) | (1 << (PlSqlParser.EXPAND_TABLE - 481)) | (1 << (PlSqlParser.EXP - 481)) | (1 << (PlSqlParser.EXPIRE - 481)) | (1 << (PlSqlParser.EXPLAIN - 481)) | (1 << (PlSqlParser.EXPLOSION - 481)) | (1 << (PlSqlParser.EXPORT - 481)) | (1 << (PlSqlParser.EXPR_CORR_CHECK - 481)) | (1 << (PlSqlParser.EXPRESS - 481)) | (1 << (PlSqlParser.EXTENDS - 481)) | (1 << (PlSqlParser.EXTENT - 481)) | (1 << (PlSqlParser.EXTENTS - 481)) | (1 << (PlSqlParser.EXTERNAL - 481)) | (1 << (PlSqlParser.EXTERNALLY - 481)) | (1 << (PlSqlParser.EXTRACTCLOBXML - 481)) | (1 << (PlSqlParser.EXTRACT - 481)) | (1 << (PlSqlParser.EXTRACTVALUE - 481)) | (1 << (PlSqlParser.EXTRA - 481)) | (1 << (PlSqlParser.FACILITY - 481)) | (1 << (PlSqlParser.FACT - 481)) | (1 << (PlSqlParser.FACTOR - 481)) | (1 << (PlSqlParser.FACTORIZE_JOIN - 481)) | (1 << (PlSqlParser.FAILED - 481)) | (1 << (PlSqlParser.FAILED_LOGIN_ATTEMPTS - 481)) | (1 << (PlSqlParser.FAILGROUP - 481)) | (1 << (PlSqlParser.FAILOVER - 481)) | (1 << (PlSqlParser.FAILURE - 481)) | (1 << (PlSqlParser.FALSE - 481)) | (1 << (PlSqlParser.FAMILY - 481)) | (1 << (PlSqlParser.FAR - 481)) | (1 << (PlSqlParser.FAST - 481)) | (1 << (PlSqlParser.FASTSTART - 481)))) !== 0) || ((((_la - 513)) & ~0x1f) == 0 && ((1 << (_la - 513)) & ((1 << (PlSqlParser.FBTSCAN - 513)) | (1 << (PlSqlParser.FEATURE_DETAILS - 513)) | (1 << (PlSqlParser.FEATURE_ID - 513)) | (1 << (PlSqlParser.FEATURE_SET - 513)) | (1 << (PlSqlParser.FEATURE_VALUE - 513)) | (1 << (PlSqlParser.FETCH - 513)) | (1 << (PlSqlParser.FILE - 513)) | (1 << (PlSqlParser.FILE_NAME_CONVERT - 513)) | (1 << (PlSqlParser.FILESYSTEM_LIKE_LOGGING - 513)) | (1 << (PlSqlParser.FILTER - 513)) | (1 << (PlSqlParser.FINAL - 513)) | (1 << (PlSqlParser.FINE - 513)) | (1 << (PlSqlParser.FINISH - 513)) | (1 << (PlSqlParser.FIRST - 513)) | (1 << (PlSqlParser.FIRSTM - 513)) | (1 << (PlSqlParser.FIRST_ROWS - 513)) | (1 << (PlSqlParser.FIRST_VALUE - 513)) | (1 << (PlSqlParser.FIXED_VIEW_DATA - 513)) | (1 << (PlSqlParser.FLAGGER - 513)) | (1 << (PlSqlParser.FLASHBACK - 513)) | (1 << (PlSqlParser.FLASH_CACHE - 513)) | (1 << (PlSqlParser.FLOAT - 513)) | (1 << (PlSqlParser.FLOB - 513)) | (1 << (PlSqlParser.FLOOR - 513)) | (1 << (PlSqlParser.FLUSH - 513)) | (1 << (PlSqlParser.FOLDER - 513)) | (1 << (PlSqlParser.FOLLOWING - 513)) | (1 << (PlSqlParser.FOLLOWS - 513)) | (1 << (PlSqlParser.FORALL - 513)) | (1 << (PlSqlParser.FORCE - 513)) | (1 << (PlSqlParser.FORCE_XML_QUERY_REWRITE - 513)) | (1 << (PlSqlParser.FOREIGN - 513)))) !== 0) || ((((_la - 545)) & ~0x1f) == 0 && ((1 << (_la - 545)) & ((1 << (PlSqlParser.FOREVER - 545)) | (1 << (PlSqlParser.FORMAT - 545)) | (1 << (PlSqlParser.FORWARD - 545)) | (1 << (PlSqlParser.FRAGMENT_NUMBER - 545)) | (1 << (PlSqlParser.FREELIST - 545)) | (1 << (PlSqlParser.FREELISTS - 545)) | (1 << (PlSqlParser.FREEPOOLS - 545)) | (1 << (PlSqlParser.FRESH - 545)) | (1 << (PlSqlParser.FROM_TZ - 545)) | (1 << (PlSqlParser.FULL - 545)) | (1 << (PlSqlParser.FULL_OUTER_JOIN_TO_OUTER - 545)) | (1 << (PlSqlParser.FUNCTION - 545)) | (1 << (PlSqlParser.FUNCTIONS - 545)) | (1 << (PlSqlParser.GATHER_OPTIMIZER_STATISTICS - 545)) | (1 << (PlSqlParser.GATHER_PLAN_STATISTICS - 545)) | (1 << (PlSqlParser.GBY_CONC_ROLLUP - 545)) | (1 << (PlSqlParser.GBY_PUSHDOWN - 545)) | (1 << (PlSqlParser.GENERATED - 545)) | (1 << (PlSqlParser.GET - 545)) | (1 << (PlSqlParser.GLOBAL - 545)) | (1 << (PlSqlParser.GLOBALLY - 545)) | (1 << (PlSqlParser.GLOBAL_NAME - 545)) | (1 << (PlSqlParser.GLOBAL_TOPIC_ENABLED - 545)) | (1 << (PlSqlParser.GROUP_BY - 545)) | (1 << (PlSqlParser.GROUP_ID - 545)) | (1 << (PlSqlParser.GROUPING - 545)) | (1 << (PlSqlParser.GROUPING_ID - 545)))) !== 0) || ((((_la - 577)) & ~0x1f) == 0 && ((1 << (_la - 577)) & ((1 << (PlSqlParser.GROUPS - 577)) | (1 << (PlSqlParser.GUARANTEED - 577)) | (1 << (PlSqlParser.GUARANTEE - 577)) | (1 << (PlSqlParser.GUARD - 577)) | (1 << (PlSqlParser.HASH_AJ - 577)) | (1 << (PlSqlParser.HASH - 577)) | (1 << (PlSqlParser.HASHKEYS - 577)) | (1 << (PlSqlParser.HASH_SJ - 577)) | (1 << (PlSqlParser.HEADER - 577)) | (1 << (PlSqlParser.HEAP - 577)) | (1 << (PlSqlParser.HELP - 577)) | (1 << (PlSqlParser.HEXTORAW - 577)) | (1 << (PlSqlParser.HEXTOREF - 577)) | (1 << (PlSqlParser.HIDDEN_KEYWORD - 577)) | (1 << (PlSqlParser.HIDE - 577)) | (1 << (PlSqlParser.HIERARCHY - 577)) | (1 << (PlSqlParser.HIGH - 577)) | (1 << (PlSqlParser.HINTSET_BEGIN - 577)) | (1 << (PlSqlParser.HINTSET_END - 577)) | (1 << (PlSqlParser.HOT - 577)) | (1 << (PlSqlParser.HOUR - 577)) | (1 << (PlSqlParser.HWM_BROKERED - 577)) | (1 << (PlSqlParser.HYBRID - 577)) | (1 << (PlSqlParser.IDENTIFIER - 577)) | (1 << (PlSqlParser.IDENTITY - 577)) | (1 << (PlSqlParser.IDGENERATORS - 577)) | (1 << (PlSqlParser.ID - 577)) | (1 << (PlSqlParser.IDLE_TIME - 577)) | (1 << (PlSqlParser.IF - 577)) | (1 << (PlSqlParser.IGNORE - 577)))) !== 0) || ((((_la - 609)) & ~0x1f) == 0 && ((1 << (_la - 609)) & ((1 << (PlSqlParser.IGNORE_OPTIM_EMBEDDED_HINTS - 609)) | (1 << (PlSqlParser.IGNORE_ROW_ON_DUPKEY_INDEX - 609)) | (1 << (PlSqlParser.IGNORE_WHERE_CLAUSE - 609)) | (1 << (PlSqlParser.ILM - 609)) | (1 << (PlSqlParser.IMMEDIATE - 609)) | (1 << (PlSqlParser.IMPACT - 609)) | (1 << (PlSqlParser.IMPORT - 609)) | (1 << (PlSqlParser.INACTIVE - 609)) | (1 << (PlSqlParser.INCLUDE - 609)) | (1 << (PlSqlParser.INCLUDE_VERSION - 609)) | (1 << (PlSqlParser.INCLUDING - 609)) | (1 << (PlSqlParser.INCREMENTAL - 609)) | (1 << (PlSqlParser.INCREMENT - 609)) | (1 << (PlSqlParser.INCR - 609)) | (1 << (PlSqlParser.INDENT - 609)) | (1 << (PlSqlParser.INDEX_ASC - 609)) | (1 << (PlSqlParser.INDEX_COMBINE - 609)) | (1 << (PlSqlParser.INDEX_DESC - 609)) | (1 << (PlSqlParser.INDEXED - 609)) | (1 << (PlSqlParser.INDEXES - 609)) | (1 << (PlSqlParser.INDEX_FFS - 609)) | (1 << (PlSqlParser.INDEX_FILTER - 609)) | (1 << (PlSqlParser.INDEXING - 609)) | (1 << (PlSqlParser.INDEX_JOIN - 609)) | (1 << (PlSqlParser.INDEX_ROWS - 609)) | (1 << (PlSqlParser.INDEX_RRS - 609)) | (1 << (PlSqlParser.INDEX_RS_ASC - 609)) | (1 << (PlSqlParser.INDEX_RS_DESC - 609)) | (1 << (PlSqlParser.INDEX_RS - 609)) | (1 << (PlSqlParser.INDEX_SCAN - 609)) | (1 << (PlSqlParser.INDEX_SKIP_SCAN - 609)))) !== 0) || ((((_la - 641)) & ~0x1f) == 0 && ((1 << (_la - 641)) & ((1 << (PlSqlParser.INDEX_SS_ASC - 641)) | (1 << (PlSqlParser.INDEX_SS_DESC - 641)) | (1 << (PlSqlParser.INDEX_SS - 641)) | (1 << (PlSqlParser.INDEX_STATS - 641)) | (1 << (PlSqlParser.INDEXTYPE - 641)) | (1 << (PlSqlParser.INDEXTYPES - 641)) | (1 << (PlSqlParser.INDICATOR - 641)) | (1 << (PlSqlParser.INDICES - 641)) | (1 << (PlSqlParser.INFINITE - 641)) | (1 << (PlSqlParser.INFORMATIONAL - 641)) | (1 << (PlSqlParser.INHERIT - 641)) | (1 << (PlSqlParser.INITCAP - 641)) | (1 << (PlSqlParser.INITIAL - 641)) | (1 << (PlSqlParser.INITIALIZED - 641)) | (1 << (PlSqlParser.INITIALLY - 641)) | (1 << (PlSqlParser.INITRANS - 641)) | (1 << (PlSqlParser.INLINE - 641)) | (1 << (PlSqlParser.INLINE_XMLTYPE_NT - 641)) | (1 << (PlSqlParser.INMEMORY - 641)) | (1 << (PlSqlParser.IN_MEMORY_METADATA - 641)) | (1 << (PlSqlParser.INMEMORY_PRUNING - 641)) | (1 << (PlSqlParser.INNER - 641)) | (1 << (PlSqlParser.INOUT - 641)) | (1 << (PlSqlParser.INPLACE - 641)) | (1 << (PlSqlParser.INSERTCHILDXMLAFTER - 641)) | (1 << (PlSqlParser.INSERTCHILDXMLBEFORE - 641)) | (1 << (PlSqlParser.INSERTCHILDXML - 641)) | (1 << (PlSqlParser.INSERTXMLAFTER - 641)) | (1 << (PlSqlParser.INSERTXMLBEFORE - 641)) | (1 << (PlSqlParser.INSTANCE - 641)))) !== 0) || ((((_la - 673)) & ~0x1f) == 0 && ((1 << (_la - 673)) & ((1 << (PlSqlParser.INSTANCES - 673)) | (1 << (PlSqlParser.INSTANTIABLE - 673)) | (1 << (PlSqlParser.INSTANTLY - 673)) | (1 << (PlSqlParser.INSTEAD - 673)) | (1 << (PlSqlParser.INSTR2 - 673)) | (1 << (PlSqlParser.INSTR4 - 673)) | (1 << (PlSqlParser.INSTRB - 673)) | (1 << (PlSqlParser.INSTRC - 673)) | (1 << (PlSqlParser.INSTR - 673)) | (1 << (PlSqlParser.INTEGER - 673)) | (1 << (PlSqlParser.INTERLEAVED - 673)) | (1 << (PlSqlParser.INTERMEDIATE - 673)) | (1 << (PlSqlParser.INTERNAL_CONVERT - 673)) | (1 << (PlSqlParser.INTERNAL_USE - 673)) | (1 << (PlSqlParser.INTERPRETED - 673)) | (1 << (PlSqlParser.INTERVAL - 673)) | (1 << (PlSqlParser.INT - 673)) | (1 << (PlSqlParser.INVALIDATE - 673)) | (1 << (PlSqlParser.INVISIBLE - 673)) | (1 << (PlSqlParser.IN_XQUERY - 673)) | (1 << (PlSqlParser.ISOLATION - 673)) | (1 << (PlSqlParser.ISOLATION_LEVEL - 673)) | (1 << (PlSqlParser.ITERATE - 673)) | (1 << (PlSqlParser.ITERATION_NUMBER - 673)) | (1 << (PlSqlParser.JAVA - 673)) | (1 << (PlSqlParser.JOB - 673)) | (1 << (PlSqlParser.JOIN - 673)) | (1 << (PlSqlParser.JSON_ARRAYAGG - 673)) | (1 << (PlSqlParser.JSON_ARRAY - 673)))) !== 0) || ((((_la - 705)) & ~0x1f) == 0 && ((1 << (_la - 705)) & ((1 << (PlSqlParser.JSON_EQUAL - 705)) | (1 << (PlSqlParser.JSON_EXISTS2 - 705)) | (1 << (PlSqlParser.JSON_EXISTS - 705)) | (1 << (PlSqlParser.JSONGET - 705)) | (1 << (PlSqlParser.JSON - 705)) | (1 << (PlSqlParser.JSON_OBJECTAGG - 705)) | (1 << (PlSqlParser.JSON_OBJECT - 705)) | (1 << (PlSqlParser.JSONPARSE - 705)) | (1 << (PlSqlParser.JSON_QUERY - 705)) | (1 << (PlSqlParser.JSON_SERIALIZE - 705)) | (1 << (PlSqlParser.JSON_TABLE - 705)) | (1 << (PlSqlParser.JSON_TEXTCONTAINS2 - 705)) | (1 << (PlSqlParser.JSON_TEXTCONTAINS - 705)) | (1 << (PlSqlParser.JSON_VALUE - 705)) | (1 << (PlSqlParser.KEEP_DUPLICATES - 705)) | (1 << (PlSqlParser.KEEP - 705)) | (1 << (PlSqlParser.KERBEROS - 705)) | (1 << (PlSqlParser.KEY - 705)) | (1 << (PlSqlParser.KEY_LENGTH - 705)) | (1 << (PlSqlParser.KEYSIZE - 705)) | (1 << (PlSqlParser.KEYS - 705)) | (1 << (PlSqlParser.KEYSTORE - 705)) | (1 << (PlSqlParser.KILL - 705)) | (1 << (PlSqlParser.LABEL - 705)) | (1 << (PlSqlParser.LANGUAGE - 705)) | (1 << (PlSqlParser.LAST_DAY - 705)) | (1 << (PlSqlParser.LAST - 705)) | (1 << (PlSqlParser.LAST_VALUE - 705)) | (1 << (PlSqlParser.LATERAL - 705)) | (1 << (PlSqlParser.LAX - 705)) | (1 << (PlSqlParser.LAYER - 705)) | (1 << (PlSqlParser.LDAP_REGISTRATION_ENABLED - 705)))) !== 0) || ((((_la - 737)) & ~0x1f) == 0 && ((1 << (_la - 737)) & ((1 << (PlSqlParser.LDAP_REGISTRATION - 737)) | (1 << (PlSqlParser.LDAP_REG_SYNC_INTERVAL - 737)) | (1 << (PlSqlParser.LEADING - 737)) | (1 << (PlSqlParser.LEFT - 737)) | (1 << (PlSqlParser.LENGTH2 - 737)) | (1 << (PlSqlParser.LENGTH4 - 737)) | (1 << (PlSqlParser.LENGTHB - 737)) | (1 << (PlSqlParser.LENGTHC - 737)) | (1 << (PlSqlParser.LENGTH - 737)) | (1 << (PlSqlParser.LESS - 737)) | (1 << (PlSqlParser.LEVEL - 737)) | (1 << (PlSqlParser.LEVELS - 737)) | (1 << (PlSqlParser.LIBRARY - 737)) | (1 << (PlSqlParser.LIFECYCLE - 737)) | (1 << (PlSqlParser.LIFE - 737)) | (1 << (PlSqlParser.LIFETIME - 737)) | (1 << (PlSqlParser.LIKE2 - 737)) | (1 << (PlSqlParser.LIKE4 - 737)) | (1 << (PlSqlParser.LIKEC - 737)) | (1 << (PlSqlParser.LIKE_EXPAND - 737)) | (1 << (PlSqlParser.LIMIT - 737)) | (1 << (PlSqlParser.LINEAR - 737)) | (1 << (PlSqlParser.LINK - 737)) | (1 << (PlSqlParser.LIST - 737)) | (1 << (PlSqlParser.LN - 737)) | (1 << (PlSqlParser.LNNVL - 737)) | (1 << (PlSqlParser.LOAD - 737)) | (1 << (PlSqlParser.LOB - 737)) | (1 << (PlSqlParser.LOBNVL - 737)) | (1 << (PlSqlParser.LOBS - 737)) | (1 << (PlSqlParser.LOCAL_INDEXES - 737)))) !== 0) || ((((_la - 769)) & ~0x1f) == 0 && ((1 << (_la - 769)) & ((1 << (PlSqlParser.LOCAL - 769)) | (1 << (PlSqlParser.LOCALTIME - 769)) | (1 << (PlSqlParser.LOCALTIMESTAMP - 769)) | (1 << (PlSqlParser.LOCATION - 769)) | (1 << (PlSqlParser.LOCATOR - 769)) | (1 << (PlSqlParser.LOCKED - 769)) | (1 << (PlSqlParser.LOCKING - 769)) | (1 << (PlSqlParser.LOGFILE - 769)) | (1 << (PlSqlParser.LOGFILES - 769)) | (1 << (PlSqlParser.LOGGING - 769)) | (1 << (PlSqlParser.LOGICAL - 769)) | (1 << (PlSqlParser.LOGICAL_READS_PER_CALL - 769)) | (1 << (PlSqlParser.LOGICAL_READS_PER_SESSION - 769)) | (1 << (PlSqlParser.LOG - 769)) | (1 << (PlSqlParser.LOGMINING - 769)) | (1 << (PlSqlParser.LOGOFF - 769)) | (1 << (PlSqlParser.LOGON - 769)) | (1 << (PlSqlParser.LOG_READ_ONLY_VIOLATIONS - 769)) | (1 << (PlSqlParser.LONG - 769)) | (1 << (PlSqlParser.LOOP - 769)) | (1 << (PlSqlParser.LOWER - 769)) | (1 << (PlSqlParser.LOW - 769)) | (1 << (PlSqlParser.LPAD - 769)) | (1 << (PlSqlParser.LTRIM - 769)) | (1 << (PlSqlParser.MAIN - 769)) | (1 << (PlSqlParser.MAKE_REF - 769)) | (1 << (PlSqlParser.MANAGED - 769)) | (1 << (PlSqlParser.MANAGE - 769)) | (1 << (PlSqlParser.MANAGEMENT - 769)) | (1 << (PlSqlParser.MANAGER - 769)) | (1 << (PlSqlParser.MANUAL - 769)))) !== 0) || ((((_la - 801)) & ~0x1f) == 0 && ((1 << (_la - 801)) & ((1 << (PlSqlParser.MAP - 801)) | (1 << (PlSqlParser.MAPPING - 801)) | (1 << (PlSqlParser.MASTER - 801)) | (1 << (PlSqlParser.MATCHED - 801)) | (1 << (PlSqlParser.MATCHES - 801)) | (1 << (PlSqlParser.MATCH - 801)) | (1 << (PlSqlParser.MATCH_NUMBER - 801)) | (1 << (PlSqlParser.MATCH_RECOGNIZE - 801)) | (1 << (PlSqlParser.MATERIALIZED - 801)) | (1 << (PlSqlParser.MATERIALIZE - 801)) | (1 << (PlSqlParser.MAXARCHLOGS - 801)) | (1 << (PlSqlParser.MAXDATAFILES - 801)) | (1 << (PlSqlParser.MAXEXTENTS - 801)) | (1 << (PlSqlParser.MAXIMIZE - 801)) | (1 << (PlSqlParser.MAXINSTANCES - 801)) | (1 << (PlSqlParser.MAXLOGFILES - 801)) | (1 << (PlSqlParser.MAXLOGHISTORY - 801)) | (1 << (PlSqlParser.MAXLOGMEMBERS - 801)) | (1 << (PlSqlParser.MAX_SHARED_TEMP_SIZE - 801)) | (1 << (PlSqlParser.MAXSIZE - 801)) | (1 << (PlSqlParser.MAXTRANS - 801)) | (1 << (PlSqlParser.MAXVALUE - 801)) | (1 << (PlSqlParser.MEASURE - 801)) | (1 << (PlSqlParser.MEASURES - 801)) | (1 << (PlSqlParser.MEDIUM - 801)) | (1 << (PlSqlParser.MEMBER - 801)) | (1 << (PlSqlParser.MEMCOMPRESS - 801)) | (1 << (PlSqlParser.MEMORY - 801)) | (1 << (PlSqlParser.MERGEACTIONS - 801)) | (1 << (PlSqlParser.MERGE_AJ - 801)) | (1 << (PlSqlParser.MERGE_CONST_ON - 801)) | (1 << (PlSqlParser.MERGE - 801)))) !== 0) || ((((_la - 833)) & ~0x1f) == 0 && ((1 << (_la - 833)) & ((1 << (PlSqlParser.MERGE_SJ - 833)) | (1 << (PlSqlParser.METADATA - 833)) | (1 << (PlSqlParser.METHOD - 833)) | (1 << (PlSqlParser.MIGRATE - 833)) | (1 << (PlSqlParser.MIGRATION - 833)) | (1 << (PlSqlParser.MINEXTENTS - 833)) | (1 << (PlSqlParser.MINIMIZE - 833)) | (1 << (PlSqlParser.MINIMUM - 833)) | (1 << (PlSqlParser.MINING - 833)) | (1 << (PlSqlParser.MINUS_NULL - 833)) | (1 << (PlSqlParser.MINUTE - 833)) | (1 << (PlSqlParser.MINVALUE - 833)) | (1 << (PlSqlParser.MIRRORCOLD - 833)) | (1 << (PlSqlParser.MIRRORHOT - 833)) | (1 << (PlSqlParser.MIRROR - 833)) | (1 << (PlSqlParser.MLSLABEL - 833)) | (1 << (PlSqlParser.MODEL_COMPILE_SUBQUERY - 833)) | (1 << (PlSqlParser.MODEL_DONTVERIFY_UNIQUENESS - 833)) | (1 << (PlSqlParser.MODEL_DYNAMIC_SUBQUERY - 833)) | (1 << (PlSqlParser.MODEL_MIN_ANALYSIS - 833)) | (1 << (PlSqlParser.MODEL - 833)) | (1 << (PlSqlParser.MODEL_NB - 833)) | (1 << (PlSqlParser.MODEL_NO_ANALYSIS - 833)) | (1 << (PlSqlParser.MODEL_PBY - 833)) | (1 << (PlSqlParser.MODEL_PUSH_REF - 833)) | (1 << (PlSqlParser.MODEL_SV - 833)) | (1 << (PlSqlParser.MODIFICATION - 833)) | (1 << (PlSqlParser.MODIFY_COLUMN_TYPE - 833)) | (1 << (PlSqlParser.MODIFY - 833)) | (1 << (PlSqlParser.MOD - 833)))) !== 0) || ((((_la - 865)) & ~0x1f) == 0 && ((1 << (_la - 865)) & ((1 << (PlSqlParser.MODULE - 865)) | (1 << (PlSqlParser.MONITORING - 865)) | (1 << (PlSqlParser.MONITOR - 865)) | (1 << (PlSqlParser.MONTH - 865)) | (1 << (PlSqlParser.MONTHS_BETWEEN - 865)) | (1 << (PlSqlParser.MONTHS - 865)) | (1 << (PlSqlParser.MOUNT - 865)) | (1 << (PlSqlParser.MOUNTPATH - 865)) | (1 << (PlSqlParser.MOVEMENT - 865)) | (1 << (PlSqlParser.MOVE - 865)) | (1 << (PlSqlParser.MULTIDIMENSIONAL - 865)) | (1 << (PlSqlParser.MULTISET - 865)) | (1 << (PlSqlParser.MV_MERGE - 865)) | (1 << (PlSqlParser.NAMED - 865)) | (1 << (PlSqlParser.NAME - 865)) | (1 << (PlSqlParser.NAMESPACE - 865)) | (1 << (PlSqlParser.NAN - 865)) | (1 << (PlSqlParser.NANVL - 865)) | (1 << (PlSqlParser.NATIONAL - 865)) | (1 << (PlSqlParser.NATIVE_FULL_OUTER_JOIN - 865)) | (1 << (PlSqlParser.NATIVE - 865)) | (1 << (PlSqlParser.NATURAL - 865)) | (1 << (PlSqlParser.NAV - 865)) | (1 << (PlSqlParser.NCHAR_CS - 865)) | (1 << (PlSqlParser.NCHAR - 865)) | (1 << (PlSqlParser.NCHR - 865)) | (1 << (PlSqlParser.NCLOB - 865)) | (1 << (PlSqlParser.NEEDED - 865)) | (1 << (PlSqlParser.NEG - 865)) | (1 << (PlSqlParser.NESTED - 865)) | (1 << (PlSqlParser.NESTED_TABLE_FAST_INSERT - 865)))) !== 0) || ((((_la - 897)) & ~0x1f) == 0 && ((1 << (_la - 897)) & ((1 << (PlSqlParser.NESTED_TABLE_GET_REFS - 897)) | (1 << (PlSqlParser.NESTED_TABLE_ID - 897)) | (1 << (PlSqlParser.NESTED_TABLE_SET_REFS - 897)) | (1 << (PlSqlParser.NESTED_TABLE_SET_SETID - 897)) | (1 << (PlSqlParser.NETWORK - 897)) | (1 << (PlSqlParser.NEVER - 897)) | (1 << (PlSqlParser.NEW - 897)) | (1 << (PlSqlParser.NEW_TIME - 897)) | (1 << (PlSqlParser.NEXT_DAY - 897)) | (1 << (PlSqlParser.NEXT - 897)) | (1 << (PlSqlParser.NL_AJ - 897)) | (1 << (PlSqlParser.NLJ_BATCHING - 897)) | (1 << (PlSqlParser.NLJ_INDEX_FILTER - 897)) | (1 << (PlSqlParser.NLJ_INDEX_SCAN - 897)) | (1 << (PlSqlParser.NLJ_PREFETCH - 897)) | (1 << (PlSqlParser.NLS_CALENDAR - 897)) | (1 << (PlSqlParser.NLS_CHARACTERSET - 897)) | (1 << (PlSqlParser.NLS_CHARSET_DECL_LEN - 897)) | (1 << (PlSqlParser.NLS_CHARSET_ID - 897)) | (1 << (PlSqlParser.NLS_CHARSET_NAME - 897)) | (1 << (PlSqlParser.NLS_COMP - 897)) | (1 << (PlSqlParser.NLS_CURRENCY - 897)) | (1 << (PlSqlParser.NLS_DATE_FORMAT - 897)) | (1 << (PlSqlParser.NLS_DATE_LANGUAGE - 897)) | (1 << (PlSqlParser.NLS_INITCAP - 897)) | (1 << (PlSqlParser.NLS_ISO_CURRENCY - 897)) | (1 << (PlSqlParser.NL_SJ - 897)) | (1 << (PlSqlParser.NLS_LANG - 897)) | (1 << (PlSqlParser.NLS_LANGUAGE - 897)) | (1 << (PlSqlParser.NLS_LENGTH_SEMANTICS - 897)) | (1 << (PlSqlParser.NLS_LOWER - 897)) | (1 << (PlSqlParser.NLS_NCHAR_CONV_EXCP - 897)))) !== 0) || ((((_la - 929)) & ~0x1f) == 0 && ((1 << (_la - 929)) & ((1 << (PlSqlParser.NLS_NUMERIC_CHARACTERS - 929)) | (1 << (PlSqlParser.NLS_SORT - 929)) | (1 << (PlSqlParser.NLSSORT - 929)) | (1 << (PlSqlParser.NLS_SPECIAL_CHARS - 929)) | (1 << (PlSqlParser.NLS_TERRITORY - 929)) | (1 << (PlSqlParser.NLS_UPPER - 929)) | (1 << (PlSqlParser.NO_ACCESS - 929)) | (1 << (PlSqlParser.NO_ADAPTIVE_PLAN - 929)) | (1 << (PlSqlParser.NO_ANSI_REARCH - 929)) | (1 << (PlSqlParser.NOAPPEND - 929)) | (1 << (PlSqlParser.NOARCHIVELOG - 929)) | (1 << (PlSqlParser.NOAUDIT - 929)) | (1 << (PlSqlParser.NO_AUTO_REOPTIMIZE - 929)) | (1 << (PlSqlParser.NO_BASETABLE_MULTIMV_REWRITE - 929)) | (1 << (PlSqlParser.NO_BATCH_TABLE_ACCESS_BY_ROWID - 929)) | (1 << (PlSqlParser.NO_BIND_AWARE - 929)) | (1 << (PlSqlParser.NO_BUFFER - 929)) | (1 << (PlSqlParser.NOCACHE - 929)) | (1 << (PlSqlParser.NO_CARTESIAN - 929)) | (1 << (PlSqlParser.NO_CHECK_ACL_REWRITE - 929)) | (1 << (PlSqlParser.NO_CLUSTER_BY_ROWID - 929)) | (1 << (PlSqlParser.NO_CLUSTERING - 929)) | (1 << (PlSqlParser.NO_COALESCE_SQ - 929)) | (1 << (PlSqlParser.NO_COMMON_DATA - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_CB_WHR_ONLY - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_COMBINE_SW - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_COST_BASED - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_ELIM_DUPS - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_FILTERING - 929)) | (1 << (PlSqlParser.NOCOPY - 929)) | (1 << (PlSqlParser.NO_COST_XML_QUERY_REWRITE - 929)))) !== 0) || ((((_la - 961)) & ~0x1f) == 0 && ((1 << (_la - 961)) & ((1 << (PlSqlParser.NO_CPU_COSTING - 961)) | (1 << (PlSqlParser.NOCPU_COSTING - 961)) | (1 << (PlSqlParser.NOCYCLE - 961)) | (1 << (PlSqlParser.NO_DATA_SECURITY_REWRITE - 961)) | (1 << (PlSqlParser.NO_DECORRELATE - 961)) | (1 << (PlSqlParser.NODELAY - 961)) | (1 << (PlSqlParser.NO_DOMAIN_INDEX_FILTER - 961)) | (1 << (PlSqlParser.NO_DST_UPGRADE_INSERT_CONV - 961)) | (1 << (PlSqlParser.NO_ELIM_GROUPBY - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_JOIN - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_OBY - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_OUTER_JOIN - 961)) | (1 << (PlSqlParser.NOENTITYESCAPING - 961)) | (1 << (PlSqlParser.NO_EXPAND_GSET_TO_UNION - 961)) | (1 << (PlSqlParser.NO_EXPAND - 961)) | (1 << (PlSqlParser.NO_EXPAND_TABLE - 961)) | (1 << (PlSqlParser.NO_FACT - 961)) | (1 << (PlSqlParser.NO_FACTORIZE_JOIN - 961)) | (1 << (PlSqlParser.NO_FILTERING - 961)) | (1 << (PlSqlParser.NOFORCE - 961)) | (1 << (PlSqlParser.NO_FULL_OUTER_JOIN_TO_OUTER - 961)) | (1 << (PlSqlParser.NO_GATHER_OPTIMIZER_STATISTICS - 961)) | (1 << (PlSqlParser.NO_GBY_PUSHDOWN - 961)) | (1 << (PlSqlParser.NOGUARANTEE - 961)) | (1 << (PlSqlParser.NO_INDEX_FFS - 961)) | (1 << (PlSqlParser.NO_INDEX - 961)) | (1 << (PlSqlParser.NO_INDEX_SS - 961)) | (1 << (PlSqlParser.NO_INMEMORY - 961)) | (1 << (PlSqlParser.NO_INMEMORY_PRUNING - 961)) | (1 << (PlSqlParser.NOKEEP - 961)) | (1 << (PlSqlParser.NO_LOAD - 961)) | (1 << (PlSqlParser.NOLOCAL - 961)))) !== 0) || ((((_la - 993)) & ~0x1f) == 0 && ((1 << (_la - 993)) & ((1 << (PlSqlParser.NOLOGGING - 993)) | (1 << (PlSqlParser.NOMAPPING - 993)) | (1 << (PlSqlParser.NOMAXVALUE - 993)) | (1 << (PlSqlParser.NO_MERGE - 993)) | (1 << (PlSqlParser.NOMINIMIZE - 993)) | (1 << (PlSqlParser.NOMINVALUE - 993)) | (1 << (PlSqlParser.NO_MODEL_PUSH_REF - 993)) | (1 << (PlSqlParser.NO_MONITORING - 993)) | (1 << (PlSqlParser.NOMONITORING - 993)) | (1 << (PlSqlParser.NO_MONITOR - 993)) | (1 << (PlSqlParser.NO_MULTIMV_REWRITE - 993)) | (1 << (PlSqlParser.NO_NATIVE_FULL_OUTER_JOIN - 993)) | (1 << (PlSqlParser.NONBLOCKING - 993)) | (1 << (PlSqlParser.NONEDITIONABLE - 993)) | (1 << (PlSqlParser.NONE - 993)) | (1 << (PlSqlParser.NO_NLJ_BATCHING - 993)) | (1 << (PlSqlParser.NO_NLJ_PREFETCH - 993)) | (1 << (PlSqlParser.NO - 993)) | (1 << (PlSqlParser.NONSCHEMA - 993)) | (1 << (PlSqlParser.NO_OBJECT_LINK - 993)) | (1 << (PlSqlParser.NOORDER - 993)) | (1 << (PlSqlParser.NO_ORDER_ROLLUPS - 993)) | (1 << (PlSqlParser.NO_OUTER_JOIN_TO_ANTI - 993)) | (1 << (PlSqlParser.NO_OUTER_JOIN_TO_INNER - 993)) | (1 << (PlSqlParser.NOOVERRIDE - 993)) | (1 << (PlSqlParser.NO_PARALLEL_INDEX - 993)) | (1 << (PlSqlParser.NOPARALLEL_INDEX - 993)) | (1 << (PlSqlParser.NO_PARALLEL - 993)) | (1 << (PlSqlParser.NOPARALLEL - 993)) | (1 << (PlSqlParser.NO_PARTIAL_COMMIT - 993)) | (1 << (PlSqlParser.NO_PARTIAL_JOIN - 993)) | (1 << (PlSqlParser.NO_PARTIAL_ROLLUP_PUSHDOWN - 993)))) !== 0) || ((((_la - 1025)) & ~0x1f) == 0 && ((1 << (_la - 1025)) & ((1 << (PlSqlParser.NOPARTITION - 1025)) | (1 << (PlSqlParser.NO_PLACE_DISTINCT - 1025)) | (1 << (PlSqlParser.NO_PLACE_GROUP_BY - 1025)) | (1 << (PlSqlParser.NO_PQ_CONCURRENT_UNION - 1025)) | (1 << (PlSqlParser.NO_PQ_MAP - 1025)) | (1 << (PlSqlParser.NO_PQ_REPLICATE - 1025)) | (1 << (PlSqlParser.NO_PQ_SKEW - 1025)) | (1 << (PlSqlParser.NO_PRUNE_GSETS - 1025)) | (1 << (PlSqlParser.NO_PULL_PRED - 1025)) | (1 << (PlSqlParser.NO_PUSH_PRED - 1025)) | (1 << (PlSqlParser.NO_PUSH_SUBQ - 1025)) | (1 << (PlSqlParser.NO_PX_FAULT_TOLERANCE - 1025)) | (1 << (PlSqlParser.NO_PX_JOIN_FILTER - 1025)) | (1 << (PlSqlParser.NO_QKN_BUFF - 1025)) | (1 << (PlSqlParser.NO_QUERY_TRANSFORMATION - 1025)) | (1 << (PlSqlParser.NO_REF_CASCADE - 1025)) | (1 << (PlSqlParser.NORELOCATE - 1025)) | (1 << (PlSqlParser.NORELY - 1025)) | (1 << (PlSqlParser.NOREPAIR - 1025)) | (1 << (PlSqlParser.NOREPLAY - 1025)) | (1 << (PlSqlParser.NORESETLOGS - 1025)) | (1 << (PlSqlParser.NO_RESULT_CACHE - 1025)) | (1 << (PlSqlParser.NOREVERSE - 1025)) | (1 << (PlSqlParser.NO_REWRITE - 1025)) | (1 << (PlSqlParser.NOREWRITE - 1025)) | (1 << (PlSqlParser.NORMAL - 1025)) | (1 << (PlSqlParser.NO_ROOT_SW_FOR_LOCAL - 1025)) | (1 << (PlSqlParser.NOROWDEPENDENCIES - 1025)) | (1 << (PlSqlParser.NOSCHEMACHECK - 1025)) | (1 << (PlSqlParser.NOSEGMENT - 1025)) | (1 << (PlSqlParser.NO_SEMIJOIN - 1025)) | (1 << (PlSqlParser.NO_SEMI_TO_INNER - 1025)))) !== 0) || ((((_la - 1057)) & ~0x1f) == 0 && ((1 << (_la - 1057)) & ((1 << (PlSqlParser.NO_SET_TO_JOIN - 1057)) | (1 << (PlSqlParser.NOSORT - 1057)) | (1 << (PlSqlParser.NO_SQL_TRANSLATION - 1057)) | (1 << (PlSqlParser.NO_SQL_TUNE - 1057)) | (1 << (PlSqlParser.NO_STAR_TRANSFORMATION - 1057)) | (1 << (PlSqlParser.NO_STATEMENT_QUEUING - 1057)) | (1 << (PlSqlParser.NO_STATS_GSETS - 1057)) | (1 << (PlSqlParser.NOSTRICT - 1057)) | (1 << (PlSqlParser.NO_SUBQUERY_PRUNING - 1057)) | (1 << (PlSqlParser.NO_SUBSTRB_PAD - 1057)) | (1 << (PlSqlParser.NO_SWAP_JOIN_INPUTS - 1057)) | (1 << (PlSqlParser.NOSWITCH - 1057)) | (1 << (PlSqlParser.NO_TABLE_LOOKUP_BY_NL - 1057)) | (1 << (PlSqlParser.NO_TEMP_TABLE - 1057)) | (1 << (PlSqlParser.NOTHING - 1057)) | (1 << (PlSqlParser.NOTIFICATION - 1057)) | (1 << (PlSqlParser.NO_TRANSFORM_DISTINCT_AGG - 1057)) | (1 << (PlSqlParser.NO_UNNEST - 1057)) | (1 << (PlSqlParser.NO_USE_CUBE - 1057)) | (1 << (PlSqlParser.NO_USE_HASH_AGGREGATION - 1057)) | (1 << (PlSqlParser.NO_USE_HASH_GBY_FOR_PUSHDOWN - 1057)) | (1 << (PlSqlParser.NO_USE_HASH - 1057)) | (1 << (PlSqlParser.NO_USE_INVISIBLE_INDEXES - 1057)) | (1 << (PlSqlParser.NO_USE_MERGE - 1057)) | (1 << (PlSqlParser.NO_USE_NL - 1057)) | (1 << (PlSqlParser.NO_USE_VECTOR_AGGREGATION - 1057)) | (1 << (PlSqlParser.NOVALIDATE - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM_DIMS - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM_FACT - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM - 1057)))) !== 0) || ((((_la - 1089)) & ~0x1f) == 0 && ((1 << (_la - 1089)) & ((1 << (PlSqlParser.NO_XDB_FASTPATH_INSERT - 1089)) | (1 << (PlSqlParser.NO_XML_DML_REWRITE - 1089)) | (1 << (PlSqlParser.NO_XMLINDEX_REWRITE_IN_SELECT - 1089)) | (1 << (PlSqlParser.NO_XMLINDEX_REWRITE - 1089)) | (1 << (PlSqlParser.NO_XML_QUERY_REWRITE - 1089)) | (1 << (PlSqlParser.NO_ZONEMAP - 1089)) | (1 << (PlSqlParser.NTH_VALUE - 1089)) | (1 << (PlSqlParser.NULLIF - 1089)) | (1 << (PlSqlParser.NULLS - 1089)) | (1 << (PlSqlParser.NUMBER - 1089)) | (1 << (PlSqlParser.NUMERIC - 1089)) | (1 << (PlSqlParser.NUM_INDEX_KEYS - 1089)) | (1 << (PlSqlParser.NUMTODSINTERVAL - 1089)) | (1 << (PlSqlParser.NUMTOYMINTERVAL - 1089)) | (1 << (PlSqlParser.NVARCHAR2 - 1089)) | (1 << (PlSqlParser.NVL2 - 1089)) | (1 << (PlSqlParser.OBJECT2XML - 1089)) | (1 << (PlSqlParser.OBJECT - 1089)) | (1 << (PlSqlParser.OBJ_ID - 1089)) | (1 << (PlSqlParser.OBJNO - 1089)) | (1 << (PlSqlParser.OBJNO_REUSE - 1089)) | (1 << (PlSqlParser.OCCURENCES - 1089)) | (1 << (PlSqlParser.OFFLINE - 1089)) | (1 << (PlSqlParser.OFF - 1089)) | (1 << (PlSqlParser.OFFSET - 1089)) | (1 << (PlSqlParser.OIDINDEX - 1089)) | (1 << (PlSqlParser.OID - 1089)) | (1 << (PlSqlParser.OLAP - 1089)) | (1 << (PlSqlParser.OLD - 1089)) | (1 << (PlSqlParser.OLD_PUSH_PRED - 1089)))) !== 0) || ((((_la - 1121)) & ~0x1f) == 0 && ((1 << (_la - 1121)) & ((1 << (PlSqlParser.OLS - 1121)) | (1 << (PlSqlParser.OLTP - 1121)) | (1 << (PlSqlParser.OMIT - 1121)) | (1 << (PlSqlParser.ONE - 1121)) | (1 << (PlSqlParser.ONLINE - 1121)) | (1 << (PlSqlParser.ONLY - 1121)) | (1 << (PlSqlParser.OPAQUE - 1121)) | (1 << (PlSqlParser.OPAQUE_TRANSFORM - 1121)) | (1 << (PlSqlParser.OPAQUE_XCANONICAL - 1121)) | (1 << (PlSqlParser.OPCODE - 1121)) | (1 << (PlSqlParser.OPEN - 1121)) | (1 << (PlSqlParser.OPERATIONS - 1121)) | (1 << (PlSqlParser.OPERATOR - 1121)) | (1 << (PlSqlParser.OPT_ESTIMATE - 1121)) | (1 << (PlSqlParser.OPTIMAL - 1121)) | (1 << (PlSqlParser.OPTIMIZE - 1121)) | (1 << (PlSqlParser.OPTIMIZER_FEATURES_ENABLE - 1121)) | (1 << (PlSqlParser.OPTIMIZER_GOAL - 1121)) | (1 << (PlSqlParser.OPT_PARAM - 1121)) | (1 << (PlSqlParser.ORA_BRANCH - 1121)) | (1 << (PlSqlParser.ORA_CHECK_ACL - 1121)) | (1 << (PlSqlParser.ORA_CHECK_PRIVILEGE - 1121)) | (1 << (PlSqlParser.ORA_CLUSTERING - 1121)) | (1 << (PlSqlParser.ORADATA - 1121)) | (1 << (PlSqlParser.ORADEBUG - 1121)) | (1 << (PlSqlParser.ORA_DST_AFFECTED - 1121)) | (1 << (PlSqlParser.ORA_DST_CONVERT - 1121)) | (1 << (PlSqlParser.ORA_DST_ERROR - 1121)) | (1 << (PlSqlParser.ORA_GET_ACLIDS - 1121)))) !== 0) || ((((_la - 1153)) & ~0x1f) == 0 && ((1 << (_la - 1153)) & ((1 << (PlSqlParser.ORA_GET_PRIVILEGES - 1153)) | (1 << (PlSqlParser.ORA_HASH - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_USERID - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_USER - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_XS_USER_GUID - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_XS_USER - 1153)) | (1 << (PlSqlParser.ORA_RAWCOMPARE - 1153)) | (1 << (PlSqlParser.ORA_RAWCONCAT - 1153)) | (1 << (PlSqlParser.ORA_ROWSCN - 1153)) | (1 << (PlSqlParser.ORA_ROWSCN_RAW - 1153)) | (1 << (PlSqlParser.ORA_ROWVERSION - 1153)) | (1 << (PlSqlParser.ORA_TABVERSION - 1153)) | (1 << (PlSqlParser.ORA_WRITE_TIME - 1153)) | (1 << (PlSqlParser.ORDERED - 1153)) | (1 << (PlSqlParser.ORDERED_PREDICATES - 1153)) | (1 << (PlSqlParser.ORDINALITY - 1153)) | (1 << (PlSqlParser.OR_EXPAND - 1153)) | (1 << (PlSqlParser.ORGANIZATION - 1153)) | (1 << (PlSqlParser.OR_PREDICATES - 1153)) | (1 << (PlSqlParser.OSERROR - 1153)) | (1 << (PlSqlParser.OTHER - 1153)) | (1 << (PlSqlParser.OUTER_JOIN_TO_ANTI - 1153)) | (1 << (PlSqlParser.OUTER_JOIN_TO_INNER - 1153)) | (1 << (PlSqlParser.OUTER - 1153)) | (1 << (PlSqlParser.OUTLINE_LEAF - 1153)) | (1 << (PlSqlParser.OUTLINE - 1153)) | (1 << (PlSqlParser.OUT_OF_LINE - 1153)) | (1 << (PlSqlParser.OUT - 1153)) | (1 << (PlSqlParser.OVERFLOW_NOMOVE - 1153)) | (1 << (PlSqlParser.OVERFLOW - 1153)))) !== 0) || ((((_la - 1185)) & ~0x1f) == 0 && ((1 << (_la - 1185)) & ((1 << (PlSqlParser.OVERLAPS - 1185)) | (1 << (PlSqlParser.OVER - 1185)) | (1 << (PlSqlParser.OVERRIDING - 1185)) | (1 << (PlSqlParser.OWNER - 1185)) | (1 << (PlSqlParser.OWNERSHIP - 1185)) | (1 << (PlSqlParser.OWN - 1185)) | (1 << (PlSqlParser.PACKAGE - 1185)) | (1 << (PlSqlParser.PACKAGES - 1185)) | (1 << (PlSqlParser.PARALLEL_ENABLE - 1185)) | (1 << (PlSqlParser.PARALLEL_INDEX - 1185)) | (1 << (PlSqlParser.PARALLEL - 1185)) | (1 << (PlSqlParser.PARAMETERS - 1185)) | (1 << (PlSqlParser.PARAM - 1185)) | (1 << (PlSqlParser.PARENT - 1185)) | (1 << (PlSqlParser.PARITY - 1185)) | (1 << (PlSqlParser.PARTIAL_JOIN - 1185)) | (1 << (PlSqlParser.PARTIALLY - 1185)) | (1 << (PlSqlParser.PARTIAL - 1185)) | (1 << (PlSqlParser.PARTIAL_ROLLUP_PUSHDOWN - 1185)) | (1 << (PlSqlParser.PARTITION_HASH - 1185)) | (1 << (PlSqlParser.PARTITION_LIST - 1185)) | (1 << (PlSqlParser.PARTITION - 1185)) | (1 << (PlSqlParser.PARTITION_RANGE - 1185)) | (1 << (PlSqlParser.PARTITIONS - 1185)) | (1 << (PlSqlParser.PARTNUMINST - 1185)) | (1 << (PlSqlParser.PASSING - 1185)) | (1 << (PlSqlParser.PASSWORD_GRACE_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD_LIFE_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD_LOCK_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD - 1185)) | (1 << (PlSqlParser.PASSWORD_REUSE_MAX - 1185)))) !== 0) || ((((_la - 1217)) & ~0x1f) == 0 && ((1 << (_la - 1217)) & ((1 << (PlSqlParser.PASSWORD_REUSE_TIME - 1217)) | (1 << (PlSqlParser.PASSWORD_VERIFY_FUNCTION - 1217)) | (1 << (PlSqlParser.PAST - 1217)) | (1 << (PlSqlParser.PATCH - 1217)) | (1 << (PlSqlParser.PATH - 1217)) | (1 << (PlSqlParser.PATH_PREFIX - 1217)) | (1 << (PlSqlParser.PATHS - 1217)) | (1 << (PlSqlParser.PATTERN - 1217)) | (1 << (PlSqlParser.PBL_HS_BEGIN - 1217)) | (1 << (PlSqlParser.PBL_HS_END - 1217)) | (1 << (PlSqlParser.PCTINCREASE - 1217)) | (1 << (PlSqlParser.PCTTHRESHOLD - 1217)) | (1 << (PlSqlParser.PCTUSED - 1217)) | (1 << (PlSqlParser.PCTVERSION - 1217)) | (1 << (PlSqlParser.PENDING - 1217)) | (1 << (PlSqlParser.PERCENT_KEYWORD - 1217)) | (1 << (PlSqlParser.PERCENT_RANKM - 1217)) | (1 << (PlSqlParser.PERFORMANCE - 1217)) | (1 << (PlSqlParser.PERIOD_KEYWORD - 1217)) | (1 << (PlSqlParser.PERMANENT - 1217)) | (1 << (PlSqlParser.PERMISSION - 1217)) | (1 << (PlSqlParser.PERMUTE - 1217)) | (1 << (PlSqlParser.PER - 1217)) | (1 << (PlSqlParser.PFILE - 1217)) | (1 << (PlSqlParser.PHYSICAL - 1217)))) !== 0) || ((((_la - 1249)) & ~0x1f) == 0 && ((1 << (_la - 1249)) & ((1 << (PlSqlParser.PIKEY - 1249)) | (1 << (PlSqlParser.PIPELINED - 1249)) | (1 << (PlSqlParser.PIV_GB - 1249)) | (1 << (PlSqlParser.PIVOT - 1249)) | (1 << (PlSqlParser.PIV_SSF - 1249)) | (1 << (PlSqlParser.PLACE_DISTINCT - 1249)) | (1 << (PlSqlParser.PLACE_GROUP_BY - 1249)) | (1 << (PlSqlParser.PLAN - 1249)) | (1 << (PlSqlParser.PLSCOPE_SETTINGS - 1249)) | (1 << (PlSqlParser.PLS_INTEGER - 1249)) | (1 << (PlSqlParser.PLSQL_CCFLAGS - 1249)) | (1 << (PlSqlParser.PLSQL_CODE_TYPE - 1249)) | (1 << (PlSqlParser.PLSQL_DEBUG - 1249)) | (1 << (PlSqlParser.PLSQL_OPTIMIZE_LEVEL - 1249)) | (1 << (PlSqlParser.PLSQL_WARNINGS - 1249)) | (1 << (PlSqlParser.PLUGGABLE - 1249)) | (1 << (PlSqlParser.POINT - 1249)) | (1 << (PlSqlParser.POLICY - 1249)) | (1 << (PlSqlParser.POOL_16K - 1249)) | (1 << (PlSqlParser.POOL_2K - 1249)) | (1 << (PlSqlParser.POOL_32K - 1249)) | (1 << (PlSqlParser.POOL_4K - 1249)) | (1 << (PlSqlParser.POOL_8K - 1249)) | (1 << (PlSqlParser.POSITIVEN - 1249)) | (1 << (PlSqlParser.POSITIVE - 1249)) | (1 << (PlSqlParser.POST_TRANSACTION - 1249)) | (1 << (PlSqlParser.POWERMULTISET_BY_CARDINALITY - 1249)) | (1 << (PlSqlParser.POWERMULTISET - 1249)) | (1 << (PlSqlParser.POWER - 1249)) | (1 << (PlSqlParser.PQ_CONCURRENT_UNION - 1249)) | (1 << (PlSqlParser.PQ_DISTRIBUTE - 1249)))) !== 0) || ((((_la - 1281)) & ~0x1f) == 0 && ((1 << (_la - 1281)) & ((1 << (PlSqlParser.PQ_DISTRIBUTE_WINDOW - 1281)) | (1 << (PlSqlParser.PQ_FILTER - 1281)) | (1 << (PlSqlParser.PQ_MAP - 1281)) | (1 << (PlSqlParser.PQ_NOMAP - 1281)) | (1 << (PlSqlParser.PQ_REPLICATE - 1281)) | (1 << (PlSqlParser.PQ_SKEW - 1281)) | (1 << (PlSqlParser.PRAGMA - 1281)) | (1 << (PlSqlParser.PREBUILT - 1281)) | (1 << (PlSqlParser.PRECEDES - 1281)) | (1 << (PlSqlParser.PRECEDING - 1281)) | (1 << (PlSqlParser.PRECISION - 1281)) | (1 << (PlSqlParser.PRECOMPUTE_SUBQUERY - 1281)) | (1 << (PlSqlParser.PREDICATE_REORDERS - 1281)) | (1 << (PlSqlParser.PRELOAD - 1281)) | (1 << (PlSqlParser.PREPARE - 1281)) | (1 << (PlSqlParser.PRESENTNNV - 1281)) | (1 << (PlSqlParser.PRESENT - 1281)) | (1 << (PlSqlParser.PRESENTV - 1281)) | (1 << (PlSqlParser.PRESERVE_OID - 1281)) | (1 << (PlSqlParser.PRESERVE - 1281)) | (1 << (PlSqlParser.PRETTY - 1281)) | (1 << (PlSqlParser.PREVIOUS - 1281)) | (1 << (PlSqlParser.PREV - 1281)) | (1 << (PlSqlParser.PRIMARY - 1281)) | (1 << (PlSqlParser.PRINTBLOBTOCLOB - 1281)) | (1 << (PlSqlParser.PRIORITY - 1281)) | (1 << (PlSqlParser.PRIVATE - 1281)) | (1 << (PlSqlParser.PRIVATE_SGA - 1281)) | (1 << (PlSqlParser.PRIVILEGED - 1281)) | (1 << (PlSqlParser.PRIVILEGE - 1281)) | (1 << (PlSqlParser.PRIVILEGES - 1281)))) !== 0) || ((((_la - 1313)) & ~0x1f) == 0 && ((1 << (_la - 1313)) & ((1 << (PlSqlParser.PROCEDURAL - 1313)) | (1 << (PlSqlParser.PROCEDURE - 1313)) | (1 << (PlSqlParser.PROCESS - 1313)) | (1 << (PlSqlParser.PROFILE - 1313)) | (1 << (PlSqlParser.PROGRAM - 1313)) | (1 << (PlSqlParser.PROJECT - 1313)) | (1 << (PlSqlParser.PROPAGATE - 1313)) | (1 << (PlSqlParser.PROTECTED - 1313)) | (1 << (PlSqlParser.PROTECTION - 1313)) | (1 << (PlSqlParser.PROXY - 1313)) | (1 << (PlSqlParser.PRUNING - 1313)) | (1 << (PlSqlParser.PULL_PRED - 1313)) | (1 << (PlSqlParser.PURGE - 1313)) | (1 << (PlSqlParser.PUSH_PRED - 1313)) | (1 << (PlSqlParser.PUSH_SUBQ - 1313)) | (1 << (PlSqlParser.PX_FAULT_TOLERANCE - 1313)) | (1 << (PlSqlParser.PX_GRANULE - 1313)) | (1 << (PlSqlParser.PX_JOIN_FILTER - 1313)) | (1 << (PlSqlParser.QB_NAME - 1313)) | (1 << (PlSqlParser.QUERY_BLOCK - 1313)) | (1 << (PlSqlParser.QUERY - 1313)) | (1 << (PlSqlParser.QUEUE_CURR - 1313)) | (1 << (PlSqlParser.QUEUE - 1313)) | (1 << (PlSqlParser.QUEUE_ROWP - 1313)) | (1 << (PlSqlParser.QUIESCE - 1313)) | (1 << (PlSqlParser.QUORUM - 1313)) | (1 << (PlSqlParser.QUOTA - 1313)) | (1 << (PlSqlParser.RAISE - 1313)) | (1 << (PlSqlParser.RANDOM_LOCAL - 1313)) | (1 << (PlSqlParser.RANDOM - 1313)) | (1 << (PlSqlParser.RANGE - 1313)))) !== 0) || ((((_la - 1345)) & ~0x1f) == 0 && ((1 << (_la - 1345)) & ((1 << (PlSqlParser.RANKM - 1345)) | (1 << (PlSqlParser.RAPIDLY - 1345)) | (1 << (PlSqlParser.RAW - 1345)) | (1 << (PlSqlParser.RAWTOHEX - 1345)) | (1 << (PlSqlParser.RAWTONHEX - 1345)) | (1 << (PlSqlParser.RBA - 1345)) | (1 << (PlSqlParser.RBO_OUTLINE - 1345)) | (1 << (PlSqlParser.RDBA - 1345)) | (1 << (PlSqlParser.READ - 1345)) | (1 << (PlSqlParser.READS - 1345)) | (1 << (PlSqlParser.REALM - 1345)) | (1 << (PlSqlParser.REAL - 1345)) | (1 << (PlSqlParser.REBALANCE - 1345)) | (1 << (PlSqlParser.REBUILD - 1345)) | (1 << (PlSqlParser.RECORD - 1345)) | (1 << (PlSqlParser.RECORDS_PER_BLOCK - 1345)) | (1 << (PlSqlParser.RECOVERABLE - 1345)) | (1 << (PlSqlParser.RECOVER - 1345)) | (1 << (PlSqlParser.RECOVERY - 1345)) | (1 << (PlSqlParser.RECYCLEBIN - 1345)) | (1 << (PlSqlParser.RECYCLE - 1345)) | (1 << (PlSqlParser.REDACTION - 1345)) | (1 << (PlSqlParser.REDEFINE - 1345)) | (1 << (PlSqlParser.REDO - 1345)) | (1 << (PlSqlParser.REDUCED - 1345)) | (1 << (PlSqlParser.REDUNDANCY - 1345)) | (1 << (PlSqlParser.REF_CASCADE_CURSOR - 1345)) | (1 << (PlSqlParser.REFERENCED - 1345)) | (1 << (PlSqlParser.REFERENCE - 1345)) | (1 << (PlSqlParser.REFERENCES - 1345)) | (1 << (PlSqlParser.REFERENCING - 1345)) | (1 << (PlSqlParser.REF - 1345)))) !== 0) || ((((_la - 1377)) & ~0x1f) == 0 && ((1 << (_la - 1377)) & ((1 << (PlSqlParser.REFRESH - 1377)) | (1 << (PlSqlParser.REFTOHEX - 1377)) | (1 << (PlSqlParser.REGEXP_COUNT - 1377)) | (1 << (PlSqlParser.REGEXP_INSTR - 1377)) | (1 << (PlSqlParser.REGEXP_LIKE - 1377)) | (1 << (PlSqlParser.REGEXP_REPLACE - 1377)) | (1 << (PlSqlParser.REGEXP_SUBSTR - 1377)) | (1 << (PlSqlParser.REGISTER - 1377)) | (1 << (PlSqlParser.REGR_AVGX - 1377)) | (1 << (PlSqlParser.REGR_AVGY - 1377)) | (1 << (PlSqlParser.REGR_COUNT - 1377)) | (1 << (PlSqlParser.REGR_INTERCEPT - 1377)) | (1 << (PlSqlParser.REGR_R2 - 1377)) | (1 << (PlSqlParser.REGR_SLOPE - 1377)) | (1 << (PlSqlParser.REGR_SXX - 1377)) | (1 << (PlSqlParser.REGR_SXY - 1377)) | (1 << (PlSqlParser.REGR_SYY - 1377)) | (1 << (PlSqlParser.REGULAR - 1377)) | (1 << (PlSqlParser.REJECT - 1377)) | (1 << (PlSqlParser.REKEY - 1377)) | (1 << (PlSqlParser.RELATIONAL - 1377)) | (1 << (PlSqlParser.RELOCATE - 1377)) | (1 << (PlSqlParser.RELY - 1377)) | (1 << (PlSqlParser.REMAINDER - 1377)) | (1 << (PlSqlParser.REMOTE_MAPPED - 1377)) | (1 << (PlSqlParser.REMOVE - 1377)) | (1 << (PlSqlParser.RENAME - 1377)) | (1 << (PlSqlParser.REPAIR - 1377)) | (1 << (PlSqlParser.REPEAT - 1377)) | (1 << (PlSqlParser.REPLACE - 1377)) | (1 << (PlSqlParser.REPLICATION - 1377)))) !== 0) || ((((_la - 1409)) & ~0x1f) == 0 && ((1 << (_la - 1409)) & ((1 << (PlSqlParser.REQUIRED - 1409)) | (1 << (PlSqlParser.RESETLOGS - 1409)) | (1 << (PlSqlParser.RESET - 1409)) | (1 << (PlSqlParser.RESIZE - 1409)) | (1 << (PlSqlParser.RESOLVE - 1409)) | (1 << (PlSqlParser.RESOLVER - 1409)) | (1 << (PlSqlParser.RESPECT - 1409)) | (1 << (PlSqlParser.RESTART - 1409)) | (1 << (PlSqlParser.RESTORE_AS_INTERVALS - 1409)) | (1 << (PlSqlParser.RESTORE - 1409)) | (1 << (PlSqlParser.RESTRICT_ALL_REF_CONS - 1409)) | (1 << (PlSqlParser.RESTRICTED - 1409)) | (1 << (PlSqlParser.RESTRICT_REFERENCES - 1409)) | (1 << (PlSqlParser.RESTRICT - 1409)) | (1 << (PlSqlParser.RESULT_CACHE - 1409)) | (1 << (PlSqlParser.RESULT - 1409)) | (1 << (PlSqlParser.RESUMABLE - 1409)) | (1 << (PlSqlParser.RESUME - 1409)) | (1 << (PlSqlParser.RETENTION - 1409)) | (1 << (PlSqlParser.RETRY_ON_ROW_CHANGE - 1409)) | (1 << (PlSqlParser.RETURNING - 1409)) | (1 << (PlSqlParser.RETURN - 1409)) | (1 << (PlSqlParser.REUSE - 1409)) | (1 << (PlSqlParser.REVERSE - 1409)) | (1 << (PlSqlParser.REWRITE_OR_ERROR - 1409)) | (1 << (PlSqlParser.REWRITE - 1409)) | (1 << (PlSqlParser.RIGHT - 1409)) | (1 << (PlSqlParser.ROLE - 1409)) | (1 << (PlSqlParser.ROLESET - 1409)) | (1 << (PlSqlParser.ROLES - 1409)))) !== 0) || ((((_la - 1441)) & ~0x1f) == 0 && ((1 << (_la - 1441)) & ((1 << (PlSqlParser.ROLLBACK - 1441)) | (1 << (PlSqlParser.ROLLING - 1441)) | (1 << (PlSqlParser.ROLLUP - 1441)) | (1 << (PlSqlParser.ROWDEPENDENCIES - 1441)) | (1 << (PlSqlParser.ROWID_MAPPING_TABLE - 1441)) | (1 << (PlSqlParser.ROWID - 1441)) | (1 << (PlSqlParser.ROWIDTOCHAR - 1441)) | (1 << (PlSqlParser.ROWIDTONCHAR - 1441)) | (1 << (PlSqlParser.ROW_LENGTH - 1441)) | (1 << (PlSqlParser.ROWNUM - 1441)) | (1 << (PlSqlParser.ROW - 1441)) | (1 << (PlSqlParser.ROWS - 1441)) | (1 << (PlSqlParser.RPAD - 1441)) | (1 << (PlSqlParser.RTRIM - 1441)) | (1 << (PlSqlParser.RULE - 1441)) | (1 << (PlSqlParser.RULES - 1441)) | (1 << (PlSqlParser.RUNNING - 1441)) | (1 << (PlSqlParser.SALT - 1441)) | (1 << (PlSqlParser.SAMPLE - 1441)) | (1 << (PlSqlParser.SAVE_AS_INTERVALS - 1441)) | (1 << (PlSqlParser.SAVEPOINT - 1441)) | (1 << (PlSqlParser.SAVE - 1441)) | (1 << (PlSqlParser.SB4 - 1441)) | (1 << (PlSqlParser.SCALE_ROWS - 1441)) | (1 << (PlSqlParser.SCALE - 1441)) | (1 << (PlSqlParser.SCAN_INSTANCES - 1441)) | (1 << (PlSqlParser.SCAN - 1441)) | (1 << (PlSqlParser.SCHEDULER - 1441)) | (1 << (PlSqlParser.SCHEMACHECK - 1441)) | (1 << (PlSqlParser.SCHEMA - 1441)) | (1 << (PlSqlParser.SCN_ASCENDING - 1441)) | (1 << (PlSqlParser.SCN - 1441)))) !== 0) || ((((_la - 1473)) & ~0x1f) == 0 && ((1 << (_la - 1473)) & ((1 << (PlSqlParser.SCOPE - 1473)) | (1 << (PlSqlParser.SCRUB - 1473)) | (1 << (PlSqlParser.SD_ALL - 1473)) | (1 << (PlSqlParser.SD_INHIBIT - 1473)) | (1 << (PlSqlParser.SDO_GEOM_MBR - 1473)) | (1 << (PlSqlParser.SD_SHOW - 1473)) | (1 << (PlSqlParser.SEARCH - 1473)) | (1 << (PlSqlParser.SECOND - 1473)) | (1 << (PlSqlParser.SECRET - 1473)) | (1 << (PlSqlParser.SECUREFILE_DBA - 1473)) | (1 << (PlSqlParser.SECUREFILE - 1473)) | (1 << (PlSqlParser.SECURITY - 1473)) | (1 << (PlSqlParser.SEED - 1473)) | (1 << (PlSqlParser.SEG_BLOCK - 1473)) | (1 << (PlSqlParser.SEG_FILE - 1473)) | (1 << (PlSqlParser.SEGMENT - 1473)) | (1 << (PlSqlParser.SELECTIVITY - 1473)) | (1 << (PlSqlParser.SELF - 1473)) | (1 << (PlSqlParser.SEMIJOIN_DRIVER - 1473)) | (1 << (PlSqlParser.SEMIJOIN - 1473)) | (1 << (PlSqlParser.SEMI_TO_INNER - 1473)) | (1 << (PlSqlParser.SEQUENCED - 1473)) | (1 << (PlSqlParser.SEQUENCE - 1473)) | (1 << (PlSqlParser.SEQUENTIAL - 1473)) | (1 << (PlSqlParser.SERIALIZABLE - 1473)) | (1 << (PlSqlParser.SERIALLY_REUSABLE - 1473)) | (1 << (PlSqlParser.SERIAL - 1473)) | (1 << (PlSqlParser.SERVERERROR - 1473)) | (1 << (PlSqlParser.SERVICE_NAME_CONVERT - 1473)) | (1 << (PlSqlParser.SERVICES - 1473)))) !== 0) || ((((_la - 1505)) & ~0x1f) == 0 && ((1 << (_la - 1505)) & ((1 << (PlSqlParser.SESSION_CACHED_CURSORS - 1505)) | (1 << (PlSqlParser.SESSION - 1505)) | (1 << (PlSqlParser.SESSIONS_PER_USER - 1505)) | (1 << (PlSqlParser.SESSIONTIMEZONE - 1505)) | (1 << (PlSqlParser.SESSIONTZNAME - 1505)) | (1 << (PlSqlParser.SET - 1505)) | (1 << (PlSqlParser.SETS - 1505)) | (1 << (PlSqlParser.SETTINGS - 1505)) | (1 << (PlSqlParser.SET_TO_JOIN - 1505)) | (1 << (PlSqlParser.SEVERE - 1505)) | (1 << (PlSqlParser.SHARED_POOL - 1505)) | (1 << (PlSqlParser.SHARED - 1505)) | (1 << (PlSqlParser.SHARING - 1505)) | (1 << (PlSqlParser.SHELFLIFE - 1505)) | (1 << (PlSqlParser.SHOW - 1505)) | (1 << (PlSqlParser.SHRINK - 1505)) | (1 << (PlSqlParser.SHUTDOWN - 1505)) | (1 << (PlSqlParser.SIBLINGS - 1505)) | (1 << (PlSqlParser.SID - 1505)) | (1 << (PlSqlParser.SIGNAL_COMPONENT - 1505)) | (1 << (PlSqlParser.SIGNAL_FUNCTION - 1505)) | (1 << (PlSqlParser.SIGN - 1505)) | (1 << (PlSqlParser.SIGNTYPE - 1505)) | (1 << (PlSqlParser.SIMPLE_INTEGER - 1505)) | (1 << (PlSqlParser.SIMPLE - 1505)) | (1 << (PlSqlParser.SINGLE - 1505)) | (1 << (PlSqlParser.SINGLETASK - 1505)) | (1 << (PlSqlParser.SINH - 1505)) | (1 << (PlSqlParser.SIN - 1505)) | (1 << (PlSqlParser.SKIP_EXT_OPTIMIZER - 1505)))) !== 0) || ((((_la - 1537)) & ~0x1f) == 0 && ((1 << (_la - 1537)) & ((1 << (PlSqlParser.SKIP_ - 1537)) | (1 << (PlSqlParser.SKIP_UNQ_UNUSABLE_IDX - 1537)) | (1 << (PlSqlParser.SKIP_UNUSABLE_INDEXES - 1537)) | (1 << (PlSqlParser.SMALLFILE - 1537)) | (1 << (PlSqlParser.SMALLINT - 1537)) | (1 << (PlSqlParser.SNAPSHOT - 1537)) | (1 << (PlSqlParser.SOME - 1537)) | (1 << (PlSqlParser.SORT - 1537)) | (1 << (PlSqlParser.SOUNDEX - 1537)) | (1 << (PlSqlParser.SOURCE_FILE_DIRECTORY - 1537)) | (1 << (PlSqlParser.SOURCE_FILE_NAME_CONVERT - 1537)) | (1 << (PlSqlParser.SOURCE - 1537)) | (1 << (PlSqlParser.SPACE_KEYWORD - 1537)) | (1 << (PlSqlParser.SPECIFICATION - 1537)) | (1 << (PlSqlParser.SPFILE - 1537)) | (1 << (PlSqlParser.SPLIT - 1537)) | (1 << (PlSqlParser.SPREADSHEET - 1537)) | (1 << (PlSqlParser.SQLDATA - 1537)) | (1 << (PlSqlParser.SQLERROR - 1537)) | (1 << (PlSqlParser.SQLLDR - 1537)) | (1 << (PlSqlParser.SQL - 1537)) | (1 << (PlSqlParser.SQL_TRACE - 1537)) | (1 << (PlSqlParser.SQL_TRANSLATION_PROFILE - 1537)) | (1 << (PlSqlParser.SQRT - 1537)) | (1 << (PlSqlParser.STALE - 1537)) | (1 << (PlSqlParser.STANDALONE - 1537)) | (1 << (PlSqlParser.STANDARD_HASH - 1537)) | (1 << (PlSqlParser.STANDBY_MAX_DATA_DELAY - 1537)) | (1 << (PlSqlParser.STANDBYS - 1537)) | (1 << (PlSqlParser.STANDBY - 1537)) | (1 << (PlSqlParser.STAR - 1537)) | (1 << (PlSqlParser.STAR_TRANSFORMATION - 1537)))) !== 0) || ((((_la - 1570)) & ~0x1f) == 0 && ((1 << (_la - 1570)) & ((1 << (PlSqlParser.STARTUP - 1570)) | (1 << (PlSqlParser.STATEMENT_ID - 1570)) | (1 << (PlSqlParser.STATEMENT_QUEUING - 1570)) | (1 << (PlSqlParser.STATEMENTS - 1570)) | (1 << (PlSqlParser.STATEMENT - 1570)) | (1 << (PlSqlParser.STATE - 1570)) | (1 << (PlSqlParser.STATIC - 1570)) | (1 << (PlSqlParser.STATISTICS - 1570)) | (1 << (PlSqlParser.STATS_BINOMIAL_TEST - 1570)) | (1 << (PlSqlParser.STATS_CROSSTAB - 1570)) | (1 << (PlSqlParser.STATS_F_TEST - 1570)) | (1 << (PlSqlParser.STATS_KS_TEST - 1570)) | (1 << (PlSqlParser.STATS_MODE - 1570)) | (1 << (PlSqlParser.STATS_MW_TEST - 1570)) | (1 << (PlSqlParser.STATS_ONE_WAY_ANOVA - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_INDEP - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_INDEPU - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_ONE - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_PAIRED - 1570)) | (1 << (PlSqlParser.STATS_WSR_TEST - 1570)) | (1 << (PlSqlParser.STDDEV_POP - 1570)) | (1 << (PlSqlParser.STDDEV_SAMP - 1570)) | (1 << (PlSqlParser.STOP - 1570)) | (1 << (PlSqlParser.STORAGE - 1570)) | (1 << (PlSqlParser.STORE - 1570)) | (1 << (PlSqlParser.STREAMS - 1570)) | (1 << (PlSqlParser.STREAM - 1570)) | (1 << (PlSqlParser.STRICT - 1570)) | (1 << (PlSqlParser.STRING - 1570)) | (1 << (PlSqlParser.STRIPE_COLUMNS - 1570)) | (1 << (PlSqlParser.STRIPE_WIDTH - 1570)) | (1 << (PlSqlParser.STRIP - 1570)))) !== 0) || ((((_la - 1602)) & ~0x1f) == 0 && ((1 << (_la - 1602)) & ((1 << (PlSqlParser.STRUCTURE - 1602)) | (1 << (PlSqlParser.SUBMULTISET - 1602)) | (1 << (PlSqlParser.SUBPARTITION_REL - 1602)) | (1 << (PlSqlParser.SUBPARTITIONS - 1602)) | (1 << (PlSqlParser.SUBPARTITION - 1602)) | (1 << (PlSqlParser.SUBQUERIES - 1602)) | (1 << (PlSqlParser.SUBQUERY_PRUNING - 1602)) | (1 << (PlSqlParser.SUBSCRIBE - 1602)) | (1 << (PlSqlParser.SUBSET - 1602)) | (1 << (PlSqlParser.SUBSTITUTABLE - 1602)) | (1 << (PlSqlParser.SUBSTR2 - 1602)) | (1 << (PlSqlParser.SUBSTR4 - 1602)) | (1 << (PlSqlParser.SUBSTRB - 1602)) | (1 << (PlSqlParser.SUBSTRC - 1602)) | (1 << (PlSqlParser.SUBTYPE - 1602)) | (1 << (PlSqlParser.SUCCESSFUL - 1602)) | (1 << (PlSqlParser.SUCCESS - 1602)) | (1 << (PlSqlParser.SUMMARY - 1602)) | (1 << (PlSqlParser.SUPPLEMENTAL - 1602)) | (1 << (PlSqlParser.SUSPEND - 1602)) | (1 << (PlSqlParser.SWAP_JOIN_INPUTS - 1602)) | (1 << (PlSqlParser.SWITCHOVER - 1602)) | (1 << (PlSqlParser.SWITCH - 1602)) | (1 << (PlSqlParser.SYNCHRONOUS - 1602)) | (1 << (PlSqlParser.SYNC - 1602)) | (1 << (PlSqlParser.SYSASM - 1602)) | (1 << (PlSqlParser.SYS_AUDIT - 1602)) | (1 << (PlSqlParser.SYSAUX - 1602)) | (1 << (PlSqlParser.SYSBACKUP - 1602)) | (1 << (PlSqlParser.SYS_CHECKACL - 1602)) | (1 << (PlSqlParser.SYS_CHECK_PRIVILEGE - 1602)))) !== 0) || ((((_la - 1634)) & ~0x1f) == 0 && ((1 << (_la - 1634)) & ((1 << (PlSqlParser.SYS_CONNECT_BY_PATH - 1634)) | (1 << (PlSqlParser.SYS_CONTEXT - 1634)) | (1 << (PlSqlParser.SYSDATE - 1634)) | (1 << (PlSqlParser.SYSDBA - 1634)) | (1 << (PlSqlParser.SYS_DBURIGEN - 1634)) | (1 << (PlSqlParser.SYSDG - 1634)) | (1 << (PlSqlParser.SYS_DL_CURSOR - 1634)) | (1 << (PlSqlParser.SYS_DM_RXFORM_CHR - 1634)) | (1 << (PlSqlParser.SYS_DM_RXFORM_NUM - 1634)) | (1 << (PlSqlParser.SYS_DOM_COMPARE - 1634)) | (1 << (PlSqlParser.SYS_DST_PRIM2SEC - 1634)) | (1 << (PlSqlParser.SYS_DST_SEC2PRIM - 1634)) | (1 << (PlSqlParser.SYS_ET_BFILE_TO_RAW - 1634)) | (1 << (PlSqlParser.SYS_ET_BLOB_TO_IMAGE - 1634)) | (1 << (PlSqlParser.SYS_ET_IMAGE_TO_BLOB - 1634)) | (1 << (PlSqlParser.SYS_ET_RAW_TO_BFILE - 1634)) | (1 << (PlSqlParser.SYS_EXTPDTXT - 1634)) | (1 << (PlSqlParser.SYS_EXTRACT_UTC - 1634)) | (1 << (PlSqlParser.SYS_FBT_INSDEL - 1634)) | (1 << (PlSqlParser.SYS_FILTER_ACLS - 1634)) | (1 << (PlSqlParser.SYS_FNMATCHES - 1634)) | (1 << (PlSqlParser.SYS_FNREPLACE - 1634)) | (1 << (PlSqlParser.SYS_GET_ACLIDS - 1634)) | (1 << (PlSqlParser.SYS_GET_COL_ACLIDS - 1634)) | (1 << (PlSqlParser.SYS_GET_PRIVILEGES - 1634)) | (1 << (PlSqlParser.SYS_GETTOKENID - 1634)) | (1 << (PlSqlParser.SYS_GETXTIVAL - 1634)) | (1 << (PlSqlParser.SYS_GUID - 1634)) | (1 << (PlSqlParser.SYSGUID - 1634)) | (1 << (PlSqlParser.SYSKM - 1634)) | (1 << (PlSqlParser.SYS_MAKE_XMLNODEID - 1634)) | (1 << (PlSqlParser.SYS_MAKEXML - 1634)))) !== 0) || ((((_la - 1666)) & ~0x1f) == 0 && ((1 << (_la - 1666)) & ((1 << (PlSqlParser.SYS_MKXMLATTR - 1666)) | (1 << (PlSqlParser.SYS_MKXTI - 1666)) | (1 << (PlSqlParser.SYSOBJ - 1666)) | (1 << (PlSqlParser.SYS_OP_ADT2BIN - 1666)) | (1 << (PlSqlParser.SYS_OP_ADTCONS - 1666)) | (1 << (PlSqlParser.SYS_OP_ALSCRVAL - 1666)) | (1 << (PlSqlParser.SYS_OP_ATG - 1666)) | (1 << (PlSqlParser.SYS_OP_BIN2ADT - 1666)) | (1 << (PlSqlParser.SYS_OP_BITVEC - 1666)) | (1 << (PlSqlParser.SYS_OP_BL2R - 1666)) | (1 << (PlSqlParser.SYS_OP_BLOOM_FILTER_LIST - 1666)) | (1 << (PlSqlParser.SYS_OP_BLOOM_FILTER - 1666)) | (1 << (PlSqlParser.SYS_OP_C2C - 1666)) | (1 << (PlSqlParser.SYS_OP_CAST - 1666)) | (1 << (PlSqlParser.SYS_OP_CEG - 1666)) | (1 << (PlSqlParser.SYS_OP_CL2C - 1666)) | (1 << (PlSqlParser.SYS_OP_COMBINED_HASH - 1666)) | (1 << (PlSqlParser.SYS_OP_COMP - 1666)) | (1 << (PlSqlParser.SYS_OP_CONVERT - 1666)) | (1 << (PlSqlParser.SYS_OP_COUNTCHG - 1666)) | (1 << (PlSqlParser.SYS_OP_CSCONV - 1666)) | (1 << (PlSqlParser.SYS_OP_CSCONVTEST - 1666)) | (1 << (PlSqlParser.SYS_OP_CSR - 1666)) | (1 << (PlSqlParser.SYS_OP_CSX_PATCH - 1666)) | (1 << (PlSqlParser.SYS_OP_CYCLED_SEQ - 1666)) | (1 << (PlSqlParser.SYS_OP_DECOMP - 1666)) | (1 << (PlSqlParser.SYS_OP_DESCEND - 1666)) | (1 << (PlSqlParser.SYS_OP_DISTINCT - 1666)) | (1 << (PlSqlParser.SYS_OP_DRA - 1666)) | (1 << (PlSqlParser.SYS_OP_DUMP - 1666)) | (1 << (PlSqlParser.SYS_OP_DV_CHECK - 1666)) | (1 << (PlSqlParser.SYS_OP_ENFORCE_NOT_NULL - 1666)))) !== 0) || ((((_la - 1698)) & ~0x1f) == 0 && ((1 << (_la - 1698)) & ((1 << (PlSqlParser.SYSOPER - 1698)) | (1 << (PlSqlParser.SYS_OP_EXTRACT - 1698)) | (1 << (PlSqlParser.SYS_OP_GROUPING - 1698)) | (1 << (PlSqlParser.SYS_OP_GUID - 1698)) | (1 << (PlSqlParser.SYS_OP_HASH - 1698)) | (1 << (PlSqlParser.SYS_OP_IIX - 1698)) | (1 << (PlSqlParser.SYS_OP_ITR - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_CREATE - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_FILTER_LIST - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_FILTER - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_SUCCEEDED - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_USE - 1698)) | (1 << (PlSqlParser.SYS_OP_LBID - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2BLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2CLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2ID - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2NCLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2TYP - 1698)) | (1 << (PlSqlParser.SYS_OP_LSVI - 1698)) | (1 << (PlSqlParser.SYS_OP_LVL - 1698)) | (1 << (PlSqlParser.SYS_OP_MAKEOID - 1698)) | (1 << (PlSqlParser.SYS_OP_MAP_NONNULL - 1698)) | (1 << (PlSqlParser.SYS_OP_MSR - 1698)) | (1 << (PlSqlParser.SYS_OP_NICOMBINE - 1698)) | (1 << (PlSqlParser.SYS_OP_NIEXTRACT - 1698)) | (1 << (PlSqlParser.SYS_OP_NII - 1698)) | (1 << (PlSqlParser.SYS_OP_NIX - 1698)) | (1 << (PlSqlParser.SYS_OP_NOEXPAND - 1698)) | (1 << (PlSqlParser.SYS_OP_NTCIMG - 1698)) | (1 << (PlSqlParser.SYS_OP_NUMTORAW - 1698)) | (1 << (PlSqlParser.SYS_OP_OIDVALUE - 1698)) | (1 << (PlSqlParser.SYS_OP_OPNSIZE - 1698)))) !== 0) || ((((_la - 1730)) & ~0x1f) == 0 && ((1 << (_la - 1730)) & ((1 << (PlSqlParser.SYS_OP_PAR_1 - 1730)) | (1 << (PlSqlParser.SYS_OP_PARGID_1 - 1730)) | (1 << (PlSqlParser.SYS_OP_PARGID - 1730)) | (1 << (PlSqlParser.SYS_OP_PAR - 1730)) | (1 << (PlSqlParser.SYS_OP_PART_ID - 1730)) | (1 << (PlSqlParser.SYS_OP_PIVOT - 1730)) | (1 << (PlSqlParser.SYS_OP_R2O - 1730)) | (1 << (PlSqlParser.SYS_OP_RAWTONUM - 1730)) | (1 << (PlSqlParser.SYS_OP_RDTM - 1730)) | (1 << (PlSqlParser.SYS_OP_REF - 1730)) | (1 << (PlSqlParser.SYS_OP_RMTD - 1730)) | (1 << (PlSqlParser.SYS_OP_ROWIDTOOBJ - 1730)) | (1 << (PlSqlParser.SYS_OP_RPB - 1730)) | (1 << (PlSqlParser.SYS_OPTLOBPRBSC - 1730)) | (1 << (PlSqlParser.SYS_OP_TOSETID - 1730)) | (1 << (PlSqlParser.SYS_OP_TPR - 1730)) | (1 << (PlSqlParser.SYS_OP_TRTB - 1730)) | (1 << (PlSqlParser.SYS_OPTXICMP - 1730)) | (1 << (PlSqlParser.SYS_OPTXQCASTASNQ - 1730)) | (1 << (PlSqlParser.SYS_OP_UNDESCEND - 1730)) | (1 << (PlSqlParser.SYS_OP_VECAND - 1730)) | (1 << (PlSqlParser.SYS_OP_VECBIT - 1730)) | (1 << (PlSqlParser.SYS_OP_VECOR - 1730)) | (1 << (PlSqlParser.SYS_OP_VECXOR - 1730)) | (1 << (PlSqlParser.SYS_OP_VERSION - 1730)) | (1 << (PlSqlParser.SYS_OP_VREF - 1730)) | (1 << (PlSqlParser.SYS_OP_VVD - 1730)) | (1 << (PlSqlParser.SYS_OP_XMLCONS_FOR_CSX - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHATG - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHIDX - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHOP - 1730)) | (1 << (PlSqlParser.SYS_OP_XTXT2SQLT - 1730)))) !== 0) || ((((_la - 1762)) & ~0x1f) == 0 && ((1 << (_la - 1762)) & ((1 << (PlSqlParser.SYS_OP_ZONE_ID - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_DEPTH - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_MAXCHILD - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_PARENT - 1762)) | (1 << (PlSqlParser.SYS_PARALLEL_TXN - 1762)) | (1 << (PlSqlParser.SYS_PATHID_IS_ATTR - 1762)) | (1 << (PlSqlParser.SYS_PATHID_IS_NMSPC - 1762)) | (1 << (PlSqlParser.SYS_PATHID_LASTNAME - 1762)) | (1 << (PlSqlParser.SYS_PATHID_LASTNMSPC - 1762)) | (1 << (PlSqlParser.SYS_PATH_REVERSE - 1762)) | (1 << (PlSqlParser.SYS_PXQEXTRACT - 1762)) | (1 << (PlSqlParser.SYS_RAW_TO_XSID - 1762)) | (1 << (PlSqlParser.SYS_RID_ORDER - 1762)) | (1 << (PlSqlParser.SYS_ROW_DELTA - 1762)) | (1 << (PlSqlParser.SYS_SC_2_XMLT - 1762)) | (1 << (PlSqlParser.SYS_SYNRCIREDO - 1762)) | (1 << (PlSqlParser.SYSTEM_DEFINED - 1762)) | (1 << (PlSqlParser.SYSTEM - 1762)) | (1 << (PlSqlParser.SYSTIMESTAMP - 1762)) | (1 << (PlSqlParser.SYS_TYPEID - 1762)) | (1 << (PlSqlParser.SYS_UMAKEXML - 1762)) | (1 << (PlSqlParser.SYS_XMLANALYZE - 1762)) | (1 << (PlSqlParser.SYS_XMLCONTAINS - 1762)) | (1 << (PlSqlParser.SYS_XMLCONV - 1762)) | (1 << (PlSqlParser.SYS_XMLEXNSURI - 1762)) | (1 << (PlSqlParser.SYS_XMLGEN - 1762)) | (1 << (PlSqlParser.SYS_XMLI_LOC_ISNODE - 1762)) | (1 << (PlSqlParser.SYS_XMLI_LOC_ISTEXT - 1762)) | (1 << (PlSqlParser.SYS_XMLINSTR - 1762)) | (1 << (PlSqlParser.SYS_XMLLOCATOR_GETSVAL - 1762)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETCID - 1762)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETLOCATOR - 1762)))) !== 0) || ((((_la - 1794)) & ~0x1f) == 0 && ((1 << (_la - 1794)) & ((1 << (PlSqlParser.SYS_XMLNODEID_GETOKEY - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETPATHID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETPTRID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETRID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETSVAL - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETTID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID - 1794)) | (1 << (PlSqlParser.SYS_XMLT_2_SC - 1794)) | (1 << (PlSqlParser.SYS_XMLTRANSLATE - 1794)) | (1 << (PlSqlParser.SYS_XMLTYPE2SQL - 1794)) | (1 << (PlSqlParser.SYS_XQ_ASQLCNV - 1794)) | (1 << (PlSqlParser.SYS_XQ_ATOMCNVCHK - 1794)) | (1 << (PlSqlParser.SYS_XQBASEURI - 1794)) | (1 << (PlSqlParser.SYS_XQCASTABLEERRH - 1794)) | (1 << (PlSqlParser.SYS_XQCODEP2STR - 1794)) | (1 << (PlSqlParser.SYS_XQCODEPEQ - 1794)) | (1 << (PlSqlParser.SYS_XQCON2SEQ - 1794)) | (1 << (PlSqlParser.SYS_XQCONCAT - 1794)) | (1 << (PlSqlParser.SYS_XQDELETE - 1794)) | (1 << (PlSqlParser.SYS_XQDFLTCOLATION - 1794)) | (1 << (PlSqlParser.SYS_XQDOC - 1794)) | (1 << (PlSqlParser.SYS_XQDOCURI - 1794)) | (1 << (PlSqlParser.SYS_XQDURDIV - 1794)) | (1 << (PlSqlParser.SYS_XQED4URI - 1794)) | (1 << (PlSqlParser.SYS_XQENDSWITH - 1794)) | (1 << (PlSqlParser.SYS_XQERRH - 1794)) | (1 << (PlSqlParser.SYS_XQERR - 1794)) | (1 << (PlSqlParser.SYS_XQESHTMLURI - 1794)) | (1 << (PlSqlParser.SYS_XQEXLOBVAL - 1794)) | (1 << (PlSqlParser.SYS_XQEXSTWRP - 1794)) | (1 << (PlSqlParser.SYS_XQEXTRACT - 1794)) | (1 << (PlSqlParser.SYS_XQEXTRREF - 1794)))) !== 0) || ((((_la - 1826)) & ~0x1f) == 0 && ((1 << (_la - 1826)) & ((1 << (PlSqlParser.SYS_XQEXVAL - 1826)) | (1 << (PlSqlParser.SYS_XQFB2STR - 1826)) | (1 << (PlSqlParser.SYS_XQFNBOOL - 1826)) | (1 << (PlSqlParser.SYS_XQFNCMP - 1826)) | (1 << (PlSqlParser.SYS_XQFNDATIM - 1826)) | (1 << (PlSqlParser.SYS_XQFNLNAME - 1826)) | (1 << (PlSqlParser.SYS_XQFNNM - 1826)) | (1 << (PlSqlParser.SYS_XQFNNSURI - 1826)) | (1 << (PlSqlParser.SYS_XQFNPREDTRUTH - 1826)) | (1 << (PlSqlParser.SYS_XQFNQNM - 1826)) | (1 << (PlSqlParser.SYS_XQFNROOT - 1826)) | (1 << (PlSqlParser.SYS_XQFORMATNUM - 1826)) | (1 << (PlSqlParser.SYS_XQFTCONTAIN - 1826)) | (1 << (PlSqlParser.SYS_XQFUNCR - 1826)) | (1 << (PlSqlParser.SYS_XQGETCONTENT - 1826)) | (1 << (PlSqlParser.SYS_XQINDXOF - 1826)) | (1 << (PlSqlParser.SYS_XQINSERT - 1826)) | (1 << (PlSqlParser.SYS_XQINSPFX - 1826)) | (1 << (PlSqlParser.SYS_XQIRI2URI - 1826)) | (1 << (PlSqlParser.SYS_XQLANG - 1826)) | (1 << (PlSqlParser.SYS_XQLLNMFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQMKNODEREF - 1826)) | (1 << (PlSqlParser.SYS_XQNILLED - 1826)) | (1 << (PlSqlParser.SYS_XQNODENAME - 1826)) | (1 << (PlSqlParser.SYS_XQNORMSPACE - 1826)) | (1 << (PlSqlParser.SYS_XQNORMUCODE - 1826)) | (1 << (PlSqlParser.SYS_XQ_NRNG - 1826)) | (1 << (PlSqlParser.SYS_XQNSP4PFX - 1826)) | (1 << (PlSqlParser.SYS_XQNSPFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQPFXFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQ_PKSQL2XML - 1826)) | (1 << (PlSqlParser.SYS_XQPOLYABS - 1826)))) !== 0) || ((((_la - 1858)) & ~0x1f) == 0 && ((1 << (_la - 1858)) & ((1 << (PlSqlParser.SYS_XQPOLYADD - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCEL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCSTBL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCST - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYDIV - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYFLR - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYMOD - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYMUL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYRND - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYSQRT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYSUB - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYUMUS - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYUPLS - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVEQ - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVGE - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVGT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVLE - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVLT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVNE - 1858)) | (1 << (PlSqlParser.SYS_XQREF2VAL - 1858)) | (1 << (PlSqlParser.SYS_XQRENAME - 1858)) | (1 << (PlSqlParser.SYS_XQREPLACE - 1858)) | (1 << (PlSqlParser.SYS_XQRESVURI - 1858)) | (1 << (PlSqlParser.SYS_XQRNDHALF2EVN - 1858)) | (1 << (PlSqlParser.SYS_XQRSLVQNM - 1858)) | (1 << (PlSqlParser.SYS_XQRYENVPGET - 1858)) | (1 << (PlSqlParser.SYS_XQRYVARGET - 1858)) | (1 << (PlSqlParser.SYS_XQRYWRP - 1858)) | (1 << (PlSqlParser.SYS_XQSEQ2CON4XC - 1858)) | (1 << (PlSqlParser.SYS_XQSEQ2CON - 1858)) | (1 << (PlSqlParser.SYS_XQSEQDEEPEQ - 1858)) | (1 << (PlSqlParser.SYS_XQSEQINSB - 1858)))) !== 0) || ((((_la - 1890)) & ~0x1f) == 0 && ((1 << (_la - 1890)) & ((1 << (PlSqlParser.SYS_XQSEQRM - 1890)) | (1 << (PlSqlParser.SYS_XQSEQRVS - 1890)) | (1 << (PlSqlParser.SYS_XQSEQSUB - 1890)) | (1 << (PlSqlParser.SYS_XQSEQTYPMATCH - 1890)) | (1 << (PlSqlParser.SYS_XQSTARTSWITH - 1890)) | (1 << (PlSqlParser.SYS_XQSTATBURI - 1890)) | (1 << (PlSqlParser.SYS_XQSTR2CODEP - 1890)) | (1 << (PlSqlParser.SYS_XQSTRJOIN - 1890)) | (1 << (PlSqlParser.SYS_XQSUBSTRAFT - 1890)) | (1 << (PlSqlParser.SYS_XQSUBSTRBEF - 1890)) | (1 << (PlSqlParser.SYS_XQTOKENIZE - 1890)) | (1 << (PlSqlParser.SYS_XQTREATAS - 1890)) | (1 << (PlSqlParser.SYS_XQ_UPKXML2SQL - 1890)) | (1 << (PlSqlParser.SYS_XQXFORM - 1890)) | (1 << (PlSqlParser.SYS_XSID_TO_RAW - 1890)) | (1 << (PlSqlParser.SYS_ZMAP_FILTER - 1890)) | (1 << (PlSqlParser.SYS_ZMAP_REFRESH - 1890)) | (1 << (PlSqlParser.TABLE_LOOKUP_BY_NL - 1890)) | (1 << (PlSqlParser.TABLESPACE_NO - 1890)) | (1 << (PlSqlParser.TABLESPACE - 1890)) | (1 << (PlSqlParser.TABLES - 1890)) | (1 << (PlSqlParser.TABLE_STATS - 1890)) | (1 << (PlSqlParser.TABLE - 1890)) | (1 << (PlSqlParser.TABNO - 1890)) | (1 << (PlSqlParser.TAG - 1890)) | (1 << (PlSqlParser.TANH - 1890)) | (1 << (PlSqlParser.TAN - 1890)) | (1 << (PlSqlParser.TBLORIDXPARTNUM - 1890)) | (1 << (PlSqlParser.TEMPFILE - 1890)) | (1 << (PlSqlParser.TEMPLATE - 1890)) | (1 << (PlSqlParser.TEMPORARY - 1890)) | (1 << (PlSqlParser.TEMP_TABLE - 1890)))) !== 0) || ((((_la - 1922)) & ~0x1f) == 0 && ((1 << (_la - 1922)) & ((1 << (PlSqlParser.TEST - 1922)) | (1 << (PlSqlParser.TEXT - 1922)) | (1 << (PlSqlParser.THAN - 1922)) | (1 << (PlSqlParser.THEN - 1922)) | (1 << (PlSqlParser.THE - 1922)) | (1 << (PlSqlParser.THREAD - 1922)) | (1 << (PlSqlParser.THROUGH - 1922)) | (1 << (PlSqlParser.TIER - 1922)) | (1 << (PlSqlParser.TIES - 1922)) | (1 << (PlSqlParser.TIMEOUT - 1922)) | (1 << (PlSqlParser.TIMESTAMP_LTZ_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMESTAMP - 1922)) | (1 << (PlSqlParser.TIMESTAMP_TZ_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMESTAMP_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMES - 1922)) | (1 << (PlSqlParser.TIME - 1922)) | (1 << (PlSqlParser.TIMEZONE_ABBR - 1922)) | (1 << (PlSqlParser.TIMEZONE_HOUR - 1922)) | (1 << (PlSqlParser.TIMEZONE_MINUTE - 1922)) | (1 << (PlSqlParser.TIMEZONE_OFFSET - 1922)) | (1 << (PlSqlParser.TIMEZONE_REGION - 1922)) | (1 << (PlSqlParser.TIME_ZONE - 1922)) | (1 << (PlSqlParser.TIV_GB - 1922)) | (1 << (PlSqlParser.TIV_SSF - 1922)) | (1 << (PlSqlParser.TO_ACLID - 1922)) | (1 << (PlSqlParser.TO_BINARY_DOUBLE - 1922)) | (1 << (PlSqlParser.TO_BINARY_FLOAT - 1922)) | (1 << (PlSqlParser.TO_BLOB - 1922)) | (1 << (PlSqlParser.TO_CLOB - 1922)) | (1 << (PlSqlParser.TO_DSINTERVAL - 1922)) | (1 << (PlSqlParser.TO_LOB - 1922)))) !== 0) || ((((_la - 1954)) & ~0x1f) == 0 && ((1 << (_la - 1954)) & ((1 << (PlSqlParser.TO_MULTI_BYTE - 1954)) | (1 << (PlSqlParser.TO_NCHAR - 1954)) | (1 << (PlSqlParser.TO_NCLOB - 1954)) | (1 << (PlSqlParser.TO_NUMBER - 1954)) | (1 << (PlSqlParser.TOPLEVEL - 1954)) | (1 << (PlSqlParser.TO_SINGLE_BYTE - 1954)) | (1 << (PlSqlParser.TO_TIMESTAMP - 1954)) | (1 << (PlSqlParser.TO_TIMESTAMP_TZ - 1954)) | (1 << (PlSqlParser.TO_TIME - 1954)) | (1 << (PlSqlParser.TO_TIME_TZ - 1954)) | (1 << (PlSqlParser.TO_YMINTERVAL - 1954)) | (1 << (PlSqlParser.TRACE - 1954)) | (1 << (PlSqlParser.TRACING - 1954)) | (1 << (PlSqlParser.TRACKING - 1954)) | (1 << (PlSqlParser.TRAILING - 1954)) | (1 << (PlSqlParser.TRANSACTION - 1954)) | (1 << (PlSqlParser.TRANSFORM_DISTINCT_AGG - 1954)) | (1 << (PlSqlParser.TRANSITIONAL - 1954)) | (1 << (PlSqlParser.TRANSITION - 1954)) | (1 << (PlSqlParser.TRANSLATE - 1954)) | (1 << (PlSqlParser.TRANSLATION - 1954)) | (1 << (PlSqlParser.TREAT - 1954)) | (1 << (PlSqlParser.TRIGGERS - 1954)) | (1 << (PlSqlParser.TRIGGER - 1954)) | (1 << (PlSqlParser.TRUE - 1954)) | (1 << (PlSqlParser.TRUNCATE - 1954)) | (1 << (PlSqlParser.TRUNC - 1954)) | (1 << (PlSqlParser.TRUSTED - 1954)) | (1 << (PlSqlParser.TRUST - 1954)) | (1 << (PlSqlParser.TUNING - 1954)) | (1 << (PlSqlParser.TX - 1954)))) !== 0) || ((((_la - 1986)) & ~0x1f) == 0 && ((1 << (_la - 1986)) & ((1 << (PlSqlParser.TYPES - 1986)) | (1 << (PlSqlParser.TYPE - 1986)) | (1 << (PlSqlParser.TZ_OFFSET - 1986)) | (1 << (PlSqlParser.UB2 - 1986)) | (1 << (PlSqlParser.UBA - 1986)) | (1 << (PlSqlParser.UCS2 - 1986)) | (1 << (PlSqlParser.UID - 1986)) | (1 << (PlSqlParser.UNARCHIVED - 1986)) | (1 << (PlSqlParser.UNBOUNDED - 1986)) | (1 << (PlSqlParser.UNBOUND - 1986)) | (1 << (PlSqlParser.UNCONDITIONAL - 1986)) | (1 << (PlSqlParser.UNDER - 1986)) | (1 << (PlSqlParser.UNDO - 1986)) | (1 << (PlSqlParser.UNDROP - 1986)) | (1 << (PlSqlParser.UNIFORM - 1986)) | (1 << (PlSqlParser.UNISTR - 1986)) | (1 << (PlSqlParser.UNLIMITED - 1986)) | (1 << (PlSqlParser.UNLOAD - 1986)) | (1 << (PlSqlParser.UNLOCK - 1986)) | (1 << (PlSqlParser.UNMATCHED - 1986)) | (1 << (PlSqlParser.UNNEST_INNERJ_DISTINCT_VIEW - 1986)) | (1 << (PlSqlParser.UNNEST_NOSEMIJ_NODISTINCTVIEW - 1986)) | (1 << (PlSqlParser.UNNEST_SEMIJ_VIEW - 1986)) | (1 << (PlSqlParser.UNNEST - 1986)) | (1 << (PlSqlParser.UNPACKED - 1986)) | (1 << (PlSqlParser.UNPIVOT - 1986)) | (1 << (PlSqlParser.UNPLUG - 1986)) | (1 << (PlSqlParser.UNPROTECTED - 1986)) | (1 << (PlSqlParser.UNQUIESCE - 1986)) | (1 << (PlSqlParser.UNRECOVERABLE - 1986)))) !== 0) || ((((_la - 2018)) & ~0x1f) == 0 && ((1 << (_la - 2018)) & ((1 << (PlSqlParser.UNRESTRICTED - 2018)) | (1 << (PlSqlParser.UNSUBSCRIBE - 2018)) | (1 << (PlSqlParser.UNTIL - 2018)) | (1 << (PlSqlParser.UNUSABLE - 2018)) | (1 << (PlSqlParser.UNUSED - 2018)) | (1 << (PlSqlParser.UPDATABLE - 2018)) | (1 << (PlSqlParser.UPDATED - 2018)) | (1 << (PlSqlParser.UPDATEXML - 2018)) | (1 << (PlSqlParser.UPD_INDEXES - 2018)) | (1 << (PlSqlParser.UPD_JOININDEX - 2018)) | (1 << (PlSqlParser.UPGRADE - 2018)) | (1 << (PlSqlParser.UPPER - 2018)) | (1 << (PlSqlParser.UPSERT - 2018)) | (1 << (PlSqlParser.UROWID - 2018)) | (1 << (PlSqlParser.USABLE - 2018)) | (1 << (PlSqlParser.USAGE - 2018)) | (1 << (PlSqlParser.USE_ANTI - 2018)) | (1 << (PlSqlParser.USE_CONCAT - 2018)) | (1 << (PlSqlParser.USE_CUBE - 2018)) | (1 << (PlSqlParser.USE_HASH_AGGREGATION - 2018)) | (1 << (PlSqlParser.USE_HASH_GBY_FOR_PUSHDOWN - 2018)) | (1 << (PlSqlParser.USE_HASH - 2018)) | (1 << (PlSqlParser.USE_HIDDEN_PARTITIONS - 2018)) | (1 << (PlSqlParser.USE_INVISIBLE_INDEXES - 2018)) | (1 << (PlSqlParser.USE_MERGE_CARTESIAN - 2018)) | (1 << (PlSqlParser.USE_MERGE - 2018)) | (1 << (PlSqlParser.USE_NL - 2018)) | (1 << (PlSqlParser.USE_NL_WITH_INDEX - 2018)) | (1 << (PlSqlParser.USE_PRIVATE_OUTLINES - 2018)) | (1 << (PlSqlParser.USER_DATA - 2018)) | (1 << (PlSqlParser.USER_DEFINED - 2018)))) !== 0) || ((((_la - 2050)) & ~0x1f) == 0 && ((1 << (_la - 2050)) & ((1 << (PlSqlParser.USERENV - 2050)) | (1 << (PlSqlParser.USERGROUP - 2050)) | (1 << (PlSqlParser.USER_RECYCLEBIN - 2050)) | (1 << (PlSqlParser.USERS - 2050)) | (1 << (PlSqlParser.USER_TABLESPACES - 2050)) | (1 << (PlSqlParser.USER - 2050)) | (1 << (PlSqlParser.USE_SEMI - 2050)) | (1 << (PlSqlParser.USE_STORED_OUTLINES - 2050)) | (1 << (PlSqlParser.USE_TTT_FOR_GSETS - 2050)) | (1 << (PlSqlParser.USE - 2050)) | (1 << (PlSqlParser.USE_VECTOR_AGGREGATION - 2050)) | (1 << (PlSqlParser.USE_WEAK_NAME_RESL - 2050)) | (1 << (PlSqlParser.USING_NO_EXPAND - 2050)) | (1 << (PlSqlParser.USING - 2050)) | (1 << (PlSqlParser.UTF16BE - 2050)) | (1 << (PlSqlParser.UTF16LE - 2050)) | (1 << (PlSqlParser.UTF32 - 2050)) | (1 << (PlSqlParser.UTF8 - 2050)) | (1 << (PlSqlParser.V1 - 2050)) | (1 << (PlSqlParser.V2 - 2050)) | (1 << (PlSqlParser.VALIDATE - 2050)) | (1 << (PlSqlParser.VALIDATION - 2050)) | (1 << (PlSqlParser.VALID_TIME_END - 2050)) | (1 << (PlSqlParser.VALUE - 2050)) | (1 << (PlSqlParser.VARCHAR2 - 2050)) | (1 << (PlSqlParser.VARCHAR - 2050)) | (1 << (PlSqlParser.VARIABLE - 2050)) | (1 << (PlSqlParser.VAR_POP - 2050)) | (1 << (PlSqlParser.VARRAYS - 2050)) | (1 << (PlSqlParser.VARRAY - 2050)) | (1 << (PlSqlParser.VAR_SAMP - 2050)))) !== 0) || ((((_la - 2082)) & ~0x1f) == 0 && ((1 << (_la - 2082)) & ((1 << (PlSqlParser.VARYING - 2082)) | (1 << (PlSqlParser.VECTOR_READ_TRACE - 2082)) | (1 << (PlSqlParser.VECTOR_READ - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM_DIMS - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM_FACT - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM - 2082)) | (1 << (PlSqlParser.VERIFIER - 2082)) | (1 << (PlSqlParser.VERIFY - 2082)) | (1 << (PlSqlParser.VERSIONING - 2082)) | (1 << (PlSqlParser.VERSIONS_ENDSCN - 2082)) | (1 << (PlSqlParser.VERSIONS_ENDTIME - 2082)) | (1 << (PlSqlParser.VERSIONS_OPERATION - 2082)) | (1 << (PlSqlParser.VERSIONS_STARTSCN - 2082)) | (1 << (PlSqlParser.VERSIONS_STARTTIME - 2082)) | (1 << (PlSqlParser.VERSIONS - 2082)) | (1 << (PlSqlParser.VERSIONS_XID - 2082)) | (1 << (PlSqlParser.VERSION - 2082)) | (1 << (PlSqlParser.VIOLATION - 2082)) | (1 << (PlSqlParser.VIRTUAL - 2082)) | (1 << (PlSqlParser.VISIBILITY - 2082)) | (1 << (PlSqlParser.VISIBLE - 2082)) | (1 << (PlSqlParser.VOLUME - 2082)) | (1 << (PlSqlParser.VSIZE - 2082)) | (1 << (PlSqlParser.WAIT - 2082)) | (1 << (PlSqlParser.WALLET - 2082)) | (1 << (PlSqlParser.WARNING - 2082)) | (1 << (PlSqlParser.WEEKS - 2082)) | (1 << (PlSqlParser.WEEK - 2082)) | (1 << (PlSqlParser.WELLFORMED - 2082)) | (1 << (PlSqlParser.WHENEVER - 2082)) | (1 << (PlSqlParser.WHEN - 2082)))) !== 0) || ((((_la - 2115)) & ~0x1f) == 0 && ((1 << (_la - 2115)) & ((1 << (PlSqlParser.WHILE - 2115)) | (1 << (PlSqlParser.WHITESPACE - 2115)) | (1 << (PlSqlParser.WIDTH_BUCKET - 2115)) | (1 << (PlSqlParser.WITHIN - 2115)) | (1 << (PlSqlParser.WITHOUT - 2115)) | (1 << (PlSqlParser.WITH_PLSQL - 2115)) | (1 << (PlSqlParser.WORK - 2115)) | (1 << (PlSqlParser.WRAPPED - 2115)) | (1 << (PlSqlParser.WRAPPER - 2115)) | (1 << (PlSqlParser.WRITE - 2115)) | (1 << (PlSqlParser.XDB_FASTPATH_INSERT - 2115)) | (1 << (PlSqlParser.X_DYN_PRUNE - 2115)) | (1 << (PlSqlParser.XID - 2115)) | (1 << (PlSqlParser.XML2OBJECT - 2115)) | (1 << (PlSqlParser.XMLAGG - 2115)) | (1 << (PlSqlParser.XMLATTRIBUTES - 2115)) | (1 << (PlSqlParser.XMLCAST - 2115)) | (1 << (PlSqlParser.XMLCDATA - 2115)) | (1 << (PlSqlParser.XMLCOLATTVAL - 2115)) | (1 << (PlSqlParser.XMLCOMMENT - 2115)) | (1 << (PlSqlParser.XMLCONCAT - 2115)) | (1 << (PlSqlParser.XMLDIFF - 2115)) | (1 << (PlSqlParser.XML_DML_RWT_STMT - 2115)) | (1 << (PlSqlParser.XMLELEMENT - 2115)) | (1 << (PlSqlParser.XMLEXISTS2 - 2115)) | (1 << (PlSqlParser.XMLEXISTS - 2115)) | (1 << (PlSqlParser.XMLFOREST - 2115)) | (1 << (PlSqlParser.XMLINDEX_REWRITE_IN_SELECT - 2115)) | (1 << (PlSqlParser.XMLINDEX_REWRITE - 2115)))) !== 0) || ((((_la - 2147)) & ~0x1f) == 0 && ((1 << (_la - 2147)) & ((1 << (PlSqlParser.XMLINDEX_SEL_IDX_TBL - 2147)) | (1 << (PlSqlParser.XMLISNODE - 2147)) | (1 << (PlSqlParser.XMLISVALID - 2147)) | (1 << (PlSqlParser.XMLNAMESPACES - 2147)) | (1 << (PlSqlParser.XMLPARSE - 2147)) | (1 << (PlSqlParser.XMLPATCH - 2147)) | (1 << (PlSqlParser.XMLPI - 2147)) | (1 << (PlSqlParser.XMLQUERYVAL - 2147)) | (1 << (PlSqlParser.XMLQUERY - 2147)) | (1 << (PlSqlParser.XMLROOT - 2147)) | (1 << (PlSqlParser.XMLSCHEMA - 2147)) | (1 << (PlSqlParser.XMLSERIALIZE - 2147)) | (1 << (PlSqlParser.XMLTABLE - 2147)) | (1 << (PlSqlParser.XMLTRANSFORMBLOB - 2147)) | (1 << (PlSqlParser.XMLTRANSFORM - 2147)) | (1 << (PlSqlParser.XMLTYPE - 2147)) | (1 << (PlSqlParser.XML - 2147)) | (1 << (PlSqlParser.XPATHTABLE - 2147)) | (1 << (PlSqlParser.XS_SYS_CONTEXT - 2147)) | (1 << (PlSqlParser.XS - 2147)) | (1 << (PlSqlParser.YEARS - 2147)) | (1 << (PlSqlParser.YEAR - 2147)) | (1 << (PlSqlParser.YES - 2147)) | (1 << (PlSqlParser.YMINTERVAL_UNCONSTRAINED - 2147)) | (1 << (PlSqlParser.ZONEMAP - 2147)) | (1 << (PlSqlParser.ZONE - 2147)) | (1 << (PlSqlParser.PREDICTION - 2147)) | (1 << (PlSqlParser.PREDICTION_BOUNDS - 2147)) | (1 << (PlSqlParser.PREDICTION_COST - 2147)) | (1 << (PlSqlParser.PREDICTION_DETAILS - 2147)) | (1 << (PlSqlParser.PREDICTION_PROBABILITY - 2147)))) !== 0) || ((((_la - 2179)) & ~0x1f) == 0 && ((1 << (_la - 2179)) & ((1 << (PlSqlParser.PREDICTION_SET - 2179)) | (1 << (PlSqlParser.CUME_DIST - 2179)) | (1 << (PlSqlParser.DENSE_RANK - 2179)) | (1 << (PlSqlParser.LISTAGG - 2179)) | (1 << (PlSqlParser.PERCENT_RANK - 2179)) | (1 << (PlSqlParser.PERCENTILE_CONT - 2179)) | (1 << (PlSqlParser.PERCENTILE_DISC - 2179)) | (1 << (PlSqlParser.RANK - 2179)) | (1 << (PlSqlParser.AVG - 2179)) | (1 << (PlSqlParser.CORR - 2179)) | (1 << (PlSqlParser.COVAR_ - 2179)) | (1 << (PlSqlParser.LAG - 2179)) | (1 << (PlSqlParser.LEAD - 2179)) | (1 << (PlSqlParser.MAX - 2179)) | (1 << (PlSqlParser.MEDIAN - 2179)) | (1 << (PlSqlParser.MIN - 2179)) | (1 << (PlSqlParser.NTILE - 2179)) | (1 << (PlSqlParser.NVL - 2179)) | (1 << (PlSqlParser.RATIO_TO_REPORT - 2179)) | (1 << (PlSqlParser.REGR_ - 2179)) | (1 << (PlSqlParser.ROUND - 2179)) | (1 << (PlSqlParser.ROW_NUMBER - 2179)) | (1 << (PlSqlParser.SUBSTR - 2179)) | (1 << (PlSqlParser.TO_CHAR - 2179)) | (1 << (PlSqlParser.TRIM - 2179)) | (1 << (PlSqlParser.SUM - 2179)) | (1 << (PlSqlParser.STDDEV - 2179)) | (1 << (PlSqlParser.VAR_ - 2179)) | (1 << (PlSqlParser.VARIANCE - 2179)) | (1 << (PlSqlParser.LEAST - 2179)) | (1 << (PlSqlParser.GREATEST - 2179)))) !== 0) || ((((_la - 2211)) & ~0x1f) == 0 && ((1 << (_la - 2211)) & ((1 << (PlSqlParser.TO_DATE - 2211)) | (1 << (PlSqlParser.PERIOD - 2211)) | (1 << (PlSqlParser.DELIMITED_ID - 2211)))) !== 0) || _la===PlSqlParser.INTRODUCER || _la===PlSqlParser.REGULAR_ID) {
+ this.state = 3771;
+ this.tableview_name();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Partition_key_valueContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_partition_key_value;
+ return this;
+}
+
+Partition_key_valueContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Partition_key_valueContext.prototype.constructor = Partition_key_valueContext;
+
+Partition_key_valueContext.prototype.literal = function() {
+ return this.getTypedRuleContext(LiteralContext,0);
+};
+
+Partition_key_valueContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterPartition_key_value(this);
+ }
+};
+
+Partition_key_valueContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitPartition_key_value(this);
+ }
+};
+
+Partition_key_valueContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitPartition_key_value(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Partition_key_valueContext = Partition_key_valueContext;
+
+PlSqlParser.prototype.partition_key_value = function() {
+
+ var localctx = new Partition_key_valueContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 318, PlSqlParser.RULE_partition_key_value);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3774;
+ this.literal();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Subpartition_key_valueContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_subpartition_key_value;
+ return this;
+}
+
+Subpartition_key_valueContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Subpartition_key_valueContext.prototype.constructor = Subpartition_key_valueContext;
+
+Subpartition_key_valueContext.prototype.literal = function() {
+ return this.getTypedRuleContext(LiteralContext,0);
+};
+
+Subpartition_key_valueContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterSubpartition_key_value(this);
+ }
+};
+
+Subpartition_key_valueContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitSubpartition_key_value(this);
+ }
+};
+
+Subpartition_key_valueContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitSubpartition_key_value(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Subpartition_key_valueContext = Subpartition_key_valueContext;
+
+PlSqlParser.prototype.subpartition_key_value = function() {
+
+ var localctx = new Subpartition_key_valueContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 320, PlSqlParser.RULE_subpartition_key_value);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3776;
+ this.literal();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Associate_statisticsContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_associate_statistics;
+ return this;
+}
+
+Associate_statisticsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Associate_statisticsContext.prototype.constructor = Associate_statisticsContext;
+
+Associate_statisticsContext.prototype.ASSOCIATE = function() {
+ return this.getToken(PlSqlParser.ASSOCIATE, 0);
+};
+
+Associate_statisticsContext.prototype.STATISTICS = function() {
+ return this.getToken(PlSqlParser.STATISTICS, 0);
+};
+
+Associate_statisticsContext.prototype.WITH = function() {
+ return this.getToken(PlSqlParser.WITH, 0);
+};
+
+Associate_statisticsContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Associate_statisticsContext.prototype.column_association = function() {
+ return this.getTypedRuleContext(Column_associationContext,0);
+};
+
+Associate_statisticsContext.prototype.function_association = function() {
+ return this.getTypedRuleContext(Function_associationContext,0);
+};
+
+Associate_statisticsContext.prototype.storage_table_clause = function() {
+ return this.getTypedRuleContext(Storage_table_clauseContext,0);
+};
+
+Associate_statisticsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAssociate_statistics(this);
+ }
+};
+
+Associate_statisticsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAssociate_statistics(this);
+ }
+};
+
+Associate_statisticsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAssociate_statistics(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Associate_statisticsContext = Associate_statisticsContext;
+
+PlSqlParser.prototype.associate_statistics = function() {
+
+ var localctx = new Associate_statisticsContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 322, PlSqlParser.RULE_associate_statistics);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3778;
+ this.match(PlSqlParser.ASSOCIATE);
+ this.state = 3779;
+ this.match(PlSqlParser.STATISTICS);
+ this.state = 3780;
+ this.match(PlSqlParser.WITH);
+ this.state = 3783;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.COLUMNS:
+ this.state = 3781;
+ this.column_association();
+ break;
+ case PlSqlParser.FUNCTIONS:
+ case PlSqlParser.INDEXES:
+ case PlSqlParser.INDEXTYPES:
+ case PlSqlParser.PACKAGES:
+ case PlSqlParser.TYPES:
+ this.state = 3782;
+ this.function_association();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 3786;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.WITH) {
+ this.state = 3785;
+ this.storage_table_clause();
+ }
+
+ this.state = 3788;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Column_associationContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_column_association;
+ return this;
+}
+
+Column_associationContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Column_associationContext.prototype.constructor = Column_associationContext;
+
+Column_associationContext.prototype.COLUMNS = function() {
+ return this.getToken(PlSqlParser.COLUMNS, 0);
+};
+
+Column_associationContext.prototype.tableview_name = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Tableview_nameContext);
+ } else {
+ return this.getTypedRuleContext(Tableview_nameContext,i);
+ }
+};
+
+Column_associationContext.prototype.PERIOD = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.PERIOD);
+ } else {
+ return this.getToken(PlSqlParser.PERIOD, i);
+ }
+};
+
+
+Column_associationContext.prototype.column_name = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Column_nameContext);
+ } else {
+ return this.getTypedRuleContext(Column_nameContext,i);
+ }
+};
+
+Column_associationContext.prototype.using_statistics_type = function() {
+ return this.getTypedRuleContext(Using_statistics_typeContext,0);
+};
+
+Column_associationContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Column_associationContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterColumn_association(this);
+ }
+};
+
+Column_associationContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitColumn_association(this);
+ }
+};
+
+Column_associationContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitColumn_association(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Column_associationContext = Column_associationContext;
+
+PlSqlParser.prototype.column_association = function() {
+
+ var localctx = new Column_associationContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 324, PlSqlParser.RULE_column_association);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3790;
+ this.match(PlSqlParser.COLUMNS);
+ this.state = 3791;
+ this.tableview_name();
+ this.state = 3792;
+ this.match(PlSqlParser.PERIOD);
+ this.state = 3793;
+ this.column_name();
+ this.state = 3801;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 3794;
+ this.match(PlSqlParser.COMMA);
+ this.state = 3795;
+ this.tableview_name();
+ this.state = 3796;
+ this.match(PlSqlParser.PERIOD);
+ this.state = 3797;
+ this.column_name();
+ this.state = 3803;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 3804;
+ this.using_statistics_type();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Function_associationContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_function_association;
+ return this;
+}
+
+Function_associationContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Function_associationContext.prototype.constructor = Function_associationContext;
+
+Function_associationContext.prototype.FUNCTIONS = function() {
+ return this.getToken(PlSqlParser.FUNCTIONS, 0);
+};
+
+Function_associationContext.prototype.function_name = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Function_nameContext);
+ } else {
+ return this.getTypedRuleContext(Function_nameContext,i);
+ }
+};
+
+Function_associationContext.prototype.PACKAGES = function() {
+ return this.getToken(PlSqlParser.PACKAGES, 0);
+};
+
+Function_associationContext.prototype.package_name = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Package_nameContext);
+ } else {
+ return this.getTypedRuleContext(Package_nameContext,i);
+ }
+};
+
+Function_associationContext.prototype.TYPES = function() {
+ return this.getToken(PlSqlParser.TYPES, 0);
+};
+
+Function_associationContext.prototype.type_name = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Type_nameContext);
+ } else {
+ return this.getTypedRuleContext(Type_nameContext,i);
+ }
+};
+
+Function_associationContext.prototype.INDEXES = function() {
+ return this.getToken(PlSqlParser.INDEXES, 0);
+};
+
+Function_associationContext.prototype.index_name = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Index_nameContext);
+ } else {
+ return this.getTypedRuleContext(Index_nameContext,i);
+ }
+};
+
+Function_associationContext.prototype.INDEXTYPES = function() {
+ return this.getToken(PlSqlParser.INDEXTYPES, 0);
+};
+
+Function_associationContext.prototype.indextype_name = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Indextype_nameContext);
+ } else {
+ return this.getTypedRuleContext(Indextype_nameContext,i);
+ }
+};
+
+Function_associationContext.prototype.using_statistics_type = function() {
+ return this.getTypedRuleContext(Using_statistics_typeContext,0);
+};
+
+Function_associationContext.prototype.default_cost_clause = function() {
+ return this.getTypedRuleContext(Default_cost_clauseContext,0);
+};
+
+Function_associationContext.prototype.default_selectivity_clause = function() {
+ return this.getTypedRuleContext(Default_selectivity_clauseContext,0);
+};
+
+Function_associationContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Function_associationContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterFunction_association(this);
+ }
+};
+
+Function_associationContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitFunction_association(this);
+ }
+};
+
+Function_associationContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitFunction_association(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Function_associationContext = Function_associationContext;
+
+PlSqlParser.prototype.function_association = function() {
+
+ var localctx = new Function_associationContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 326, PlSqlParser.RULE_function_association);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3851;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.FUNCTIONS:
+ this.state = 3806;
+ this.match(PlSqlParser.FUNCTIONS);
+ this.state = 3807;
+ this.function_name();
+ this.state = 3812;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 3808;
+ this.match(PlSqlParser.COMMA);
+ this.state = 3809;
+ this.function_name();
+ this.state = 3814;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+ case PlSqlParser.PACKAGES:
+ this.state = 3815;
+ this.match(PlSqlParser.PACKAGES);
+ this.state = 3816;
+ this.package_name();
+ this.state = 3821;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 3817;
+ this.match(PlSqlParser.COMMA);
+ this.state = 3818;
+ this.package_name();
+ this.state = 3823;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+ case PlSqlParser.TYPES:
+ this.state = 3824;
+ this.match(PlSqlParser.TYPES);
+ this.state = 3825;
+ this.type_name();
+ this.state = 3830;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 3826;
+ this.match(PlSqlParser.COMMA);
+ this.state = 3827;
+ this.type_name();
+ this.state = 3832;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+ case PlSqlParser.INDEXES:
+ this.state = 3833;
+ this.match(PlSqlParser.INDEXES);
+ this.state = 3834;
+ this.index_name();
+ this.state = 3839;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 3835;
+ this.match(PlSqlParser.COMMA);
+ this.state = 3836;
+ this.index_name();
+ this.state = 3841;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+ case PlSqlParser.INDEXTYPES:
+ this.state = 3842;
+ this.match(PlSqlParser.INDEXTYPES);
+ this.state = 3843;
+ this.indextype_name();
+ this.state = 3848;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 3844;
+ this.match(PlSqlParser.COMMA);
+ this.state = 3845;
+ this.indextype_name();
+ this.state = 3850;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 3864;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,348,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 3853;
+ this.using_statistics_type();
+ break;
+
+ case 2:
+ this.state = 3854;
+ this.default_cost_clause();
+ this.state = 3857;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.COMMA) {
+ this.state = 3855;
+ this.match(PlSqlParser.COMMA);
+ this.state = 3856;
+ this.default_selectivity_clause();
+ }
+
+ break;
+
+ case 3:
+ this.state = 3859;
+ this.default_selectivity_clause();
+ this.state = 3862;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.COMMA) {
+ this.state = 3860;
+ this.match(PlSqlParser.COMMA);
+ this.state = 3861;
+ this.default_cost_clause();
+ }
+
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Indextype_nameContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_indextype_name;
+ return this;
+}
+
+Indextype_nameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Indextype_nameContext.prototype.constructor = Indextype_nameContext;
+
+Indextype_nameContext.prototype.id_expression = function() {
+ return this.getTypedRuleContext(Id_expressionContext,0);
+};
+
+Indextype_nameContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterIndextype_name(this);
+ }
+};
+
+Indextype_nameContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitIndextype_name(this);
+ }
+};
+
+Indextype_nameContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitIndextype_name(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Indextype_nameContext = Indextype_nameContext;
+
+PlSqlParser.prototype.indextype_name = function() {
+
+ var localctx = new Indextype_nameContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 328, PlSqlParser.RULE_indextype_name);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3866;
+ this.id_expression();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Using_statistics_typeContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_using_statistics_type;
+ return this;
+}
+
+Using_statistics_typeContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Using_statistics_typeContext.prototype.constructor = Using_statistics_typeContext;
+
+Using_statistics_typeContext.prototype.USING = function() {
+ return this.getToken(PlSqlParser.USING, 0);
+};
+
+Using_statistics_typeContext.prototype.statistics_type_name = function() {
+ return this.getTypedRuleContext(Statistics_type_nameContext,0);
+};
+
+Using_statistics_typeContext.prototype.NULL_ = function() {
+ return this.getToken(PlSqlParser.NULL_, 0);
+};
+
+Using_statistics_typeContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterUsing_statistics_type(this);
+ }
+};
+
+Using_statistics_typeContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitUsing_statistics_type(this);
+ }
+};
+
+Using_statistics_typeContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitUsing_statistics_type(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Using_statistics_typeContext = Using_statistics_typeContext;
+
+PlSqlParser.prototype.using_statistics_type = function() {
+
+ var localctx = new Using_statistics_typeContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 330, PlSqlParser.RULE_using_statistics_type);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3868;
+ this.match(PlSqlParser.USING);
+ this.state = 3871;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.ABORT:
+ case PlSqlParser.ABS:
+ case PlSqlParser.ACCESS:
+ case PlSqlParser.ACCESSED:
+ case PlSqlParser.ACCOUNT:
+ case PlSqlParser.ACL:
+ case PlSqlParser.ACOS:
+ case PlSqlParser.ACTION:
+ case PlSqlParser.ACTIONS:
+ case PlSqlParser.ACTIVATE:
+ case PlSqlParser.ACTIVE:
+ case PlSqlParser.ACTIVE_COMPONENT:
+ case PlSqlParser.ACTIVE_DATA:
+ case PlSqlParser.ACTIVE_FUNCTION:
+ case PlSqlParser.ACTIVE_TAG:
+ case PlSqlParser.ACTIVITY:
+ case PlSqlParser.ADAPTIVE_PLAN:
+ case PlSqlParser.ADD:
+ case PlSqlParser.ADD_COLUMN:
+ case PlSqlParser.ADD_GROUP:
+ case PlSqlParser.ADD_MONTHS:
+ case PlSqlParser.ADJ_DATE:
+ case PlSqlParser.ADMIN:
+ case PlSqlParser.ADMINISTER:
+ case PlSqlParser.ADMINISTRATOR:
+ case PlSqlParser.ADVANCED:
+ case PlSqlParser.ADVISE:
+ case PlSqlParser.ADVISOR:
+ case PlSqlParser.AFD_DISKSTRING:
+ case PlSqlParser.AFTER:
+ case PlSqlParser.AGENT:
+ case PlSqlParser.AGGREGATE:
+ case PlSqlParser.A_LETTER:
+ case PlSqlParser.ALIAS:
+ case PlSqlParser.ALLOCATE:
+ case PlSqlParser.ALLOW:
+ case PlSqlParser.ALL_ROWS:
+ case PlSqlParser.ALWAYS:
+ case PlSqlParser.ANALYZE:
+ case PlSqlParser.ANCILLARY:
+ case PlSqlParser.AND_EQUAL:
+ case PlSqlParser.ANOMALY:
+ case PlSqlParser.ANSI_REARCH:
+ case PlSqlParser.ANTIJOIN:
+ case PlSqlParser.ANYSCHEMA:
+ case PlSqlParser.APPEND:
+ case PlSqlParser.APPENDCHILDXML:
+ case PlSqlParser.APPEND_VALUES:
+ case PlSqlParser.APPLICATION:
+ case PlSqlParser.APPLY:
+ case PlSqlParser.APPROX_COUNT_DISTINCT:
+ case PlSqlParser.ARCHIVAL:
+ case PlSqlParser.ARCHIVE:
+ case PlSqlParser.ARCHIVED:
+ case PlSqlParser.ARCHIVELOG:
+ case PlSqlParser.ARRAY:
+ case PlSqlParser.ASCII:
+ case PlSqlParser.ASCIISTR:
+ case PlSqlParser.ASIN:
+ case PlSqlParser.ASIS:
+ case PlSqlParser.ASSEMBLY:
+ case PlSqlParser.ASSIGN:
+ case PlSqlParser.ASSOCIATE:
+ case PlSqlParser.ASYNC:
+ case PlSqlParser.ASYNCHRONOUS:
+ case PlSqlParser.ATAN2:
+ case PlSqlParser.ATAN:
+ case PlSqlParser.AT:
+ case PlSqlParser.ATTRIBUTE:
+ case PlSqlParser.ATTRIBUTES:
+ case PlSqlParser.AUTHENTICATED:
+ case PlSqlParser.AUTHENTICATION:
+ case PlSqlParser.AUTHID:
+ case PlSqlParser.AUTHORIZATION:
+ case PlSqlParser.AUTOALLOCATE:
+ case PlSqlParser.AUTO:
+ case PlSqlParser.AUTOEXTEND:
+ case PlSqlParser.AUTO_LOGIN:
+ case PlSqlParser.AUTOMATIC:
+ case PlSqlParser.AUTONOMOUS_TRANSACTION:
+ case PlSqlParser.AUTO_REOPTIMIZE:
+ case PlSqlParser.AVAILABILITY:
+ case PlSqlParser.AVRO:
+ case PlSqlParser.BACKGROUND:
+ case PlSqlParser.BACKUP:
+ case PlSqlParser.BASIC:
+ case PlSqlParser.BASICFILE:
+ case PlSqlParser.BATCH:
+ case PlSqlParser.BATCHSIZE:
+ case PlSqlParser.BATCH_TABLE_ACCESS_BY_ROWID:
+ case PlSqlParser.BECOME:
+ case PlSqlParser.BEFORE:
+ case PlSqlParser.BEGIN:
+ case PlSqlParser.BEGINNING:
+ case PlSqlParser.BEGIN_OUTLINE_DATA:
+ case PlSqlParser.BEHALF:
+ case PlSqlParser.BEQUEATH:
+ case PlSqlParser.BFILE:
+ case PlSqlParser.BFILENAME:
+ case PlSqlParser.BIGFILE:
+ case PlSqlParser.BINARY:
+ case PlSqlParser.BINARY_DOUBLE:
+ case PlSqlParser.BINARY_DOUBLE_INFINITY:
+ case PlSqlParser.BINARY_DOUBLE_NAN:
+ case PlSqlParser.BINARY_FLOAT:
+ case PlSqlParser.BINARY_FLOAT_INFINITY:
+ case PlSqlParser.BINARY_FLOAT_NAN:
+ case PlSqlParser.BINARY_INTEGER:
+ case PlSqlParser.BIND_AWARE:
+ case PlSqlParser.BINDING:
+ case PlSqlParser.BIN_TO_NUM:
+ case PlSqlParser.BITAND:
+ case PlSqlParser.BITMAP_AND:
+ case PlSqlParser.BITMAP:
+ case PlSqlParser.BITMAPS:
+ case PlSqlParser.BITMAP_TREE:
+ case PlSqlParser.BITS:
+ case PlSqlParser.BLOB:
+ case PlSqlParser.BLOCK:
+ case PlSqlParser.BLOCK_RANGE:
+ case PlSqlParser.BLOCKS:
+ case PlSqlParser.BLOCKSIZE:
+ case PlSqlParser.BODY:
+ case PlSqlParser.BOOLEAN:
+ case PlSqlParser.BOTH:
+ case PlSqlParser.BOUND:
+ case PlSqlParser.BRANCH:
+ case PlSqlParser.BREADTH:
+ case PlSqlParser.BROADCAST:
+ case PlSqlParser.BSON:
+ case PlSqlParser.BUFFER:
+ case PlSqlParser.BUFFER_CACHE:
+ case PlSqlParser.BUFFER_POOL:
+ case PlSqlParser.BUILD:
+ case PlSqlParser.BULK:
+ case PlSqlParser.BYPASS_RECURSIVE_CHECK:
+ case PlSqlParser.BYPASS_UJVC:
+ case PlSqlParser.BYTE:
+ case PlSqlParser.CACHE:
+ case PlSqlParser.CACHE_CB:
+ case PlSqlParser.CACHE_INSTANCES:
+ case PlSqlParser.CACHE_TEMP_TABLE:
+ case PlSqlParser.CACHING:
+ case PlSqlParser.CALCULATED:
+ case PlSqlParser.CALLBACK:
+ case PlSqlParser.CALL:
+ case PlSqlParser.CANCEL:
+ case PlSqlParser.CAPACITY:
+ case PlSqlParser.CARDINALITY:
+ case PlSqlParser.CASCADE:
+ case PlSqlParser.CASE:
+ case PlSqlParser.CAST:
+ case PlSqlParser.CATEGORY:
+ case PlSqlParser.CDBDEFAULT:
+ case PlSqlParser.CEIL:
+ case PlSqlParser.CELL_FLASH_CACHE:
+ case PlSqlParser.CERTIFICATE:
+ case PlSqlParser.CFILE:
+ case PlSqlParser.CHAINED:
+ case PlSqlParser.CHANGE:
+ case PlSqlParser.CHANGE_DUPKEY_ERROR_INDEX:
+ case PlSqlParser.CHARACTER:
+ case PlSqlParser.CHAR:
+ case PlSqlParser.CHAR_CS:
+ case PlSqlParser.CHARTOROWID:
+ case PlSqlParser.CHECK_ACL_REWRITE:
+ case PlSqlParser.CHECKPOINT:
+ case PlSqlParser.CHILD:
+ case PlSqlParser.CHOOSE:
+ case PlSqlParser.CHR:
+ case PlSqlParser.CHUNK:
+ case PlSqlParser.CLASS:
+ case PlSqlParser.CLASSIFIER:
+ case PlSqlParser.CLEANUP:
+ case PlSqlParser.CLEAR:
+ case PlSqlParser.C_LETTER:
+ case PlSqlParser.CLIENT:
+ case PlSqlParser.CLOB:
+ case PlSqlParser.CLONE:
+ case PlSqlParser.CLOSE_CACHED_OPEN_CURSORS:
+ case PlSqlParser.CLOSE:
+ case PlSqlParser.CLUSTER_BY_ROWID:
+ case PlSqlParser.CLUSTER:
+ case PlSqlParser.CLUSTER_DETAILS:
+ case PlSqlParser.CLUSTER_DISTANCE:
+ case PlSqlParser.CLUSTER_ID:
+ case PlSqlParser.CLUSTERING:
+ case PlSqlParser.CLUSTERING_FACTOR:
+ case PlSqlParser.CLUSTER_PROBABILITY:
+ case PlSqlParser.CLUSTER_SET:
+ case PlSqlParser.COALESCE:
+ case PlSqlParser.COALESCE_SQ:
+ case PlSqlParser.COARSE:
+ case PlSqlParser.CO_AUTH_IND:
+ case PlSqlParser.COLD:
+ case PlSqlParser.COLLECT:
+ case PlSqlParser.COLUMNAR:
+ case PlSqlParser.COLUMN_AUTH_INDICATOR:
+ case PlSqlParser.COLUMN:
+ case PlSqlParser.COLUMNS:
+ case PlSqlParser.COLUMN_STATS:
+ case PlSqlParser.COLUMN_VALUE:
+ case PlSqlParser.COMMENT:
+ case PlSqlParser.COMMIT:
+ case PlSqlParser.COMMITTED:
+ case PlSqlParser.COMMON_DATA:
+ case PlSqlParser.COMPACT:
+ case PlSqlParser.COMPATIBILITY:
+ case PlSqlParser.COMPILE:
+ case PlSqlParser.COMPLETE:
+ case PlSqlParser.COMPLIANCE:
+ case PlSqlParser.COMPONENT:
+ case PlSqlParser.COMPONENTS:
+ case PlSqlParser.COMPOSE:
+ case PlSqlParser.COMPOSITE:
+ case PlSqlParser.COMPOSITE_LIMIT:
+ case PlSqlParser.COMPOUND:
+ case PlSqlParser.COMPUTE:
+ case PlSqlParser.CONCAT:
+ case PlSqlParser.CON_DBID_TO_ID:
+ case PlSqlParser.CONDITIONAL:
+ case PlSqlParser.CONDITION:
+ case PlSqlParser.CONFIRM:
+ case PlSqlParser.CONFORMING:
+ case PlSqlParser.CON_GUID_TO_ID:
+ case PlSqlParser.CON_ID:
+ case PlSqlParser.CON_NAME_TO_ID:
+ case PlSqlParser.CONNECT_BY_CB_WHR_ONLY:
+ case PlSqlParser.CONNECT_BY_COMBINE_SW:
+ case PlSqlParser.CONNECT_BY_COST_BASED:
+ case PlSqlParser.CONNECT_BY_ELIM_DUPS:
+ case PlSqlParser.CONNECT_BY_FILTERING:
+ case PlSqlParser.CONNECT_BY_ISCYCLE:
+ case PlSqlParser.CONNECT_BY_ISLEAF:
+ case PlSqlParser.CONNECT_BY_ROOT:
+ case PlSqlParser.CONNECT_TIME:
+ case PlSqlParser.CONSIDER:
+ case PlSqlParser.CONSISTENT:
+ case PlSqlParser.CONSTANT:
+ case PlSqlParser.CONST:
+ case PlSqlParser.CONSTRAINT:
+ case PlSqlParser.CONSTRAINTS:
+ case PlSqlParser.CONSTRUCTOR:
+ case PlSqlParser.CONTAINER:
+ case PlSqlParser.CONTAINER_DATA:
+ case PlSqlParser.CONTAINERS:
+ case PlSqlParser.CONTENT:
+ case PlSqlParser.CONTENTS:
+ case PlSqlParser.CONTEXT:
+ case PlSqlParser.CONTINUE:
+ case PlSqlParser.CONTROLFILE:
+ case PlSqlParser.CON_UID_TO_ID:
+ case PlSqlParser.CONVERT:
+ case PlSqlParser.COOKIE:
+ case PlSqlParser.COPY:
+ case PlSqlParser.CORR_K:
+ case PlSqlParser.CORR_S:
+ case PlSqlParser.CORRUPTION:
+ case PlSqlParser.CORRUPT_XID_ALL:
+ case PlSqlParser.CORRUPT_XID:
+ case PlSqlParser.COS:
+ case PlSqlParser.COSH:
+ case PlSqlParser.COST:
+ case PlSqlParser.COST_XML_QUERY_REWRITE:
+ case PlSqlParser.COUNT:
+ case PlSqlParser.COVAR_POP:
+ case PlSqlParser.COVAR_SAMP:
+ case PlSqlParser.CPU_COSTING:
+ case PlSqlParser.CPU_PER_CALL:
+ case PlSqlParser.CPU_PER_SESSION:
+ case PlSqlParser.CRASH:
+ case PlSqlParser.CREATE_FILE_DEST:
+ case PlSqlParser.CREATE_STORED_OUTLINES:
+ case PlSqlParser.CREATION:
+ case PlSqlParser.CREDENTIAL:
+ case PlSqlParser.CRITICAL:
+ case PlSqlParser.CROSS:
+ case PlSqlParser.CROSSEDITION:
+ case PlSqlParser.CSCONVERT:
+ case PlSqlParser.CUBE_AJ:
+ case PlSqlParser.CUBE:
+ case PlSqlParser.CUBE_GB:
+ case PlSqlParser.CUBE_SJ:
+ case PlSqlParser.CUME_DISTM:
+ case PlSqlParser.CURRENT:
+ case PlSqlParser.CURRENT_DATE:
+ case PlSqlParser.CURRENT_SCHEMA:
+ case PlSqlParser.CURRENT_TIME:
+ case PlSqlParser.CURRENT_TIMESTAMP:
+ case PlSqlParser.CURRENT_USER:
+ case PlSqlParser.CURRENTV:
+ case PlSqlParser.CURSOR:
+ case PlSqlParser.CURSOR_SHARING_EXACT:
+ case PlSqlParser.CURSOR_SPECIFIC_SEGMENT:
+ case PlSqlParser.CUSTOMDATUM:
+ case PlSqlParser.CV:
+ case PlSqlParser.CYCLE:
+ case PlSqlParser.DANGLING:
+ case PlSqlParser.DATABASE:
+ case PlSqlParser.DATA:
+ case PlSqlParser.DATAFILE:
+ case PlSqlParser.DATAFILES:
+ case PlSqlParser.DATAMOVEMENT:
+ case PlSqlParser.DATAOBJNO:
+ case PlSqlParser.DATAOBJ_TO_MAT_PARTITION:
+ case PlSqlParser.DATAOBJ_TO_PARTITION:
+ case PlSqlParser.DATAPUMP:
+ case PlSqlParser.DATA_SECURITY_REWRITE_LIMIT:
+ case PlSqlParser.DATE_MODE:
+ case PlSqlParser.DAY:
+ case PlSqlParser.DAYS:
+ case PlSqlParser.DBA:
+ case PlSqlParser.DBA_RECYCLEBIN:
+ case PlSqlParser.DBMS_STATS:
+ case PlSqlParser.DB_ROLE_CHANGE:
+ case PlSqlParser.DBTIMEZONE:
+ case PlSqlParser.DB_UNIQUE_NAME:
+ case PlSqlParser.DB_VERSION:
+ case PlSqlParser.DDL:
+ case PlSqlParser.DEALLOCATE:
+ case PlSqlParser.DEBUG:
+ case PlSqlParser.DEBUGGER:
+ case PlSqlParser.DEC:
+ case PlSqlParser.DECIMAL:
+ case PlSqlParser.DECLARE:
+ case PlSqlParser.DECOMPOSE:
+ case PlSqlParser.DECORRELATE:
+ case PlSqlParser.DECR:
+ case PlSqlParser.DECREMENT:
+ case PlSqlParser.DECRYPT:
+ case PlSqlParser.DEDUPLICATE:
+ case PlSqlParser.DEFAULTS:
+ case PlSqlParser.DEFERRABLE:
+ case PlSqlParser.DEFERRED:
+ case PlSqlParser.DEFINED:
+ case PlSqlParser.DEFINE:
+ case PlSqlParser.DEFINER:
+ case PlSqlParser.DEGREE:
+ case PlSqlParser.DELAY:
+ case PlSqlParser.DELEGATE:
+ case PlSqlParser.DELETE_ALL:
+ case PlSqlParser.DELETE:
+ case PlSqlParser.DELETEXML:
+ case PlSqlParser.DEMAND:
+ case PlSqlParser.DENSE_RANKM:
+ case PlSqlParser.DEPENDENT:
+ case PlSqlParser.DEPTH:
+ case PlSqlParser.DEQUEUE:
+ case PlSqlParser.DEREF:
+ case PlSqlParser.DEREF_NO_REWRITE:
+ case PlSqlParser.DESTROY:
+ case PlSqlParser.DETACHED:
+ case PlSqlParser.DETERMINES:
+ case PlSqlParser.DETERMINISTIC:
+ case PlSqlParser.DICTIONARY:
+ case PlSqlParser.DIMENSION:
+ case PlSqlParser.DIMENSIONS:
+ case PlSqlParser.DIRECT_LOAD:
+ case PlSqlParser.DIRECTORY:
+ case PlSqlParser.DIRECT_PATH:
+ case PlSqlParser.DISABLE_ALL:
+ case PlSqlParser.DISABLE:
+ case PlSqlParser.DISABLE_PARALLEL_DML:
+ case PlSqlParser.DISABLE_PRESET:
+ case PlSqlParser.DISABLE_RPKE:
+ case PlSqlParser.DISALLOW:
+ case PlSqlParser.DISASSOCIATE:
+ case PlSqlParser.DISCARD:
+ case PlSqlParser.DISCONNECT:
+ case PlSqlParser.DISK:
+ case PlSqlParser.DISKGROUP:
+ case PlSqlParser.DISKS:
+ case PlSqlParser.DISMOUNT:
+ case PlSqlParser.DISTINGUISHED:
+ case PlSqlParser.DISTRIBUTED:
+ case PlSqlParser.DISTRIBUTE:
+ case PlSqlParser.DML:
+ case PlSqlParser.DML_UPDATE:
+ case PlSqlParser.DOCFIDELITY:
+ case PlSqlParser.DOCUMENT:
+ case PlSqlParser.DOMAIN_INDEX_FILTER:
+ case PlSqlParser.DOMAIN_INDEX_NO_SORT:
+ case PlSqlParser.DOMAIN_INDEX_SORT:
+ case PlSqlParser.DOUBLE:
+ case PlSqlParser.DOWNGRADE:
+ case PlSqlParser.DRIVING_SITE:
+ case PlSqlParser.DROP_COLUMN:
+ case PlSqlParser.DROP_GROUP:
+ case PlSqlParser.DSINTERVAL_UNCONSTRAINED:
+ case PlSqlParser.DST_UPGRADE_INSERT_CONV:
+ case PlSqlParser.DUMP:
+ case PlSqlParser.DUPLICATE:
+ case PlSqlParser.DV:
+ case PlSqlParser.DYNAMIC:
+ case PlSqlParser.DYNAMIC_SAMPLING:
+ case PlSqlParser.DYNAMIC_SAMPLING_EST_CDN:
+ case PlSqlParser.EACH:
+ case PlSqlParser.EDITIONABLE:
+ case PlSqlParser.EDITION:
+ case PlSqlParser.EDITIONING:
+ case PlSqlParser.EDITIONS:
+ case PlSqlParser.ELEMENT:
+ case PlSqlParser.ELIM_GROUPBY:
+ case PlSqlParser.ELIMINATE_JOIN:
+ case PlSqlParser.ELIMINATE_OBY:
+ case PlSqlParser.ELIMINATE_OUTER_JOIN:
+ case PlSqlParser.EM:
+ case PlSqlParser.EMPTY_BLOB:
+ case PlSqlParser.EMPTY_CLOB:
+ case PlSqlParser.EMPTY:
+ case PlSqlParser.ENABLE_ALL:
+ case PlSqlParser.ENABLE:
+ case PlSqlParser.ENABLE_PARALLEL_DML:
+ case PlSqlParser.ENABLE_PRESET:
+ case PlSqlParser.ENCODING:
+ case PlSqlParser.ENCRYPT:
+ case PlSqlParser.ENCRYPTION:
+ case PlSqlParser.END_OUTLINE_DATA:
+ case PlSqlParser.ENFORCED:
+ case PlSqlParser.ENFORCE:
+ case PlSqlParser.ENQUEUE:
+ case PlSqlParser.ENTERPRISE:
+ case PlSqlParser.ENTITYESCAPING:
+ case PlSqlParser.ENTRY:
+ case PlSqlParser.EQUIPART:
+ case PlSqlParser.ERR:
+ case PlSqlParser.ERROR_ARGUMENT:
+ case PlSqlParser.ERROR:
+ case PlSqlParser.ERROR_ON_OVERLAP_TIME:
+ case PlSqlParser.ERRORS:
+ case PlSqlParser.ESCAPE:
+ case PlSqlParser.ESTIMATE:
+ case PlSqlParser.EVAL:
+ case PlSqlParser.EVALNAME:
+ case PlSqlParser.EVALUATE:
+ case PlSqlParser.EVALUATION:
+ case PlSqlParser.EVENTS:
+ case PlSqlParser.EVERY:
+ case PlSqlParser.EXCEPT:
+ case PlSqlParser.EXCEPTION:
+ case PlSqlParser.EXCEPTION_INIT:
+ case PlSqlParser.EXCEPTIONS:
+ case PlSqlParser.EXCHANGE:
+ case PlSqlParser.EXCLUDE:
+ case PlSqlParser.EXCLUDING:
+ case PlSqlParser.EXECUTE:
+ case PlSqlParser.EXEMPT:
+ case PlSqlParser.EXISTING:
+ case PlSqlParser.EXISTS:
+ case PlSqlParser.EXISTSNODE:
+ case PlSqlParser.EXIT:
+ case PlSqlParser.EXPAND_GSET_TO_UNION:
+ case PlSqlParser.EXPAND_TABLE:
+ case PlSqlParser.EXP:
+ case PlSqlParser.EXPIRE:
+ case PlSqlParser.EXPLAIN:
+ case PlSqlParser.EXPLOSION:
+ case PlSqlParser.EXPORT:
+ case PlSqlParser.EXPR_CORR_CHECK:
+ case PlSqlParser.EXPRESS:
+ case PlSqlParser.EXTENDS:
+ case PlSqlParser.EXTENT:
+ case PlSqlParser.EXTENTS:
+ case PlSqlParser.EXTERNAL:
+ case PlSqlParser.EXTERNALLY:
+ case PlSqlParser.EXTRACTCLOBXML:
+ case PlSqlParser.EXTRACT:
+ case PlSqlParser.EXTRACTVALUE:
+ case PlSqlParser.EXTRA:
+ case PlSqlParser.FACILITY:
+ case PlSqlParser.FACT:
+ case PlSqlParser.FACTOR:
+ case PlSqlParser.FACTORIZE_JOIN:
+ case PlSqlParser.FAILED:
+ case PlSqlParser.FAILED_LOGIN_ATTEMPTS:
+ case PlSqlParser.FAILGROUP:
+ case PlSqlParser.FAILOVER:
+ case PlSqlParser.FAILURE:
+ case PlSqlParser.FALSE:
+ case PlSqlParser.FAMILY:
+ case PlSqlParser.FAR:
+ case PlSqlParser.FAST:
+ case PlSqlParser.FASTSTART:
+ case PlSqlParser.FBTSCAN:
+ case PlSqlParser.FEATURE_DETAILS:
+ case PlSqlParser.FEATURE_ID:
+ case PlSqlParser.FEATURE_SET:
+ case PlSqlParser.FEATURE_VALUE:
+ case PlSqlParser.FETCH:
+ case PlSqlParser.FILE:
+ case PlSqlParser.FILE_NAME_CONVERT:
+ case PlSqlParser.FILESYSTEM_LIKE_LOGGING:
+ case PlSqlParser.FILTER:
+ case PlSqlParser.FINAL:
+ case PlSqlParser.FINE:
+ case PlSqlParser.FINISH:
+ case PlSqlParser.FIRST:
+ case PlSqlParser.FIRSTM:
+ case PlSqlParser.FIRST_ROWS:
+ case PlSqlParser.FIRST_VALUE:
+ case PlSqlParser.FIXED_VIEW_DATA:
+ case PlSqlParser.FLAGGER:
+ case PlSqlParser.FLASHBACK:
+ case PlSqlParser.FLASH_CACHE:
+ case PlSqlParser.FLOAT:
+ case PlSqlParser.FLOB:
+ case PlSqlParser.FLOOR:
+ case PlSqlParser.FLUSH:
+ case PlSqlParser.FOLDER:
+ case PlSqlParser.FOLLOWING:
+ case PlSqlParser.FOLLOWS:
+ case PlSqlParser.FORALL:
+ case PlSqlParser.FORCE:
+ case PlSqlParser.FORCE_XML_QUERY_REWRITE:
+ case PlSqlParser.FOREIGN:
+ case PlSqlParser.FOREVER:
+ case PlSqlParser.FORMAT:
+ case PlSqlParser.FORWARD:
+ case PlSqlParser.FRAGMENT_NUMBER:
+ case PlSqlParser.FREELIST:
+ case PlSqlParser.FREELISTS:
+ case PlSqlParser.FREEPOOLS:
+ case PlSqlParser.FRESH:
+ case PlSqlParser.FROM_TZ:
+ case PlSqlParser.FULL:
+ case PlSqlParser.FULL_OUTER_JOIN_TO_OUTER:
+ case PlSqlParser.FUNCTION:
+ case PlSqlParser.FUNCTIONS:
+ case PlSqlParser.GATHER_OPTIMIZER_STATISTICS:
+ case PlSqlParser.GATHER_PLAN_STATISTICS:
+ case PlSqlParser.GBY_CONC_ROLLUP:
+ case PlSqlParser.GBY_PUSHDOWN:
+ case PlSqlParser.GENERATED:
+ case PlSqlParser.GET:
+ case PlSqlParser.GLOBAL:
+ case PlSqlParser.GLOBALLY:
+ case PlSqlParser.GLOBAL_NAME:
+ case PlSqlParser.GLOBAL_TOPIC_ENABLED:
+ case PlSqlParser.GROUP_BY:
+ case PlSqlParser.GROUP_ID:
+ case PlSqlParser.GROUPING:
+ case PlSqlParser.GROUPING_ID:
+ case PlSqlParser.GROUPS:
+ case PlSqlParser.GUARANTEED:
+ case PlSqlParser.GUARANTEE:
+ case PlSqlParser.GUARD:
+ case PlSqlParser.HASH_AJ:
+ case PlSqlParser.HASH:
+ case PlSqlParser.HASHKEYS:
+ case PlSqlParser.HASH_SJ:
+ case PlSqlParser.HEADER:
+ case PlSqlParser.HEAP:
+ case PlSqlParser.HELP:
+ case PlSqlParser.HEXTORAW:
+ case PlSqlParser.HEXTOREF:
+ case PlSqlParser.HIDDEN_KEYWORD:
+ case PlSqlParser.HIDE:
+ case PlSqlParser.HIERARCHY:
+ case PlSqlParser.HIGH:
+ case PlSqlParser.HINTSET_BEGIN:
+ case PlSqlParser.HINTSET_END:
+ case PlSqlParser.HOT:
+ case PlSqlParser.HOUR:
+ case PlSqlParser.HWM_BROKERED:
+ case PlSqlParser.HYBRID:
+ case PlSqlParser.IDENTIFIER:
+ case PlSqlParser.IDENTITY:
+ case PlSqlParser.IDGENERATORS:
+ case PlSqlParser.ID:
+ case PlSqlParser.IDLE_TIME:
+ case PlSqlParser.IF:
+ case PlSqlParser.IGNORE:
+ case PlSqlParser.IGNORE_OPTIM_EMBEDDED_HINTS:
+ case PlSqlParser.IGNORE_ROW_ON_DUPKEY_INDEX:
+ case PlSqlParser.IGNORE_WHERE_CLAUSE:
+ case PlSqlParser.ILM:
+ case PlSqlParser.IMMEDIATE:
+ case PlSqlParser.IMPACT:
+ case PlSqlParser.IMPORT:
+ case PlSqlParser.INACTIVE:
+ case PlSqlParser.INCLUDE:
+ case PlSqlParser.INCLUDE_VERSION:
+ case PlSqlParser.INCLUDING:
+ case PlSqlParser.INCREMENTAL:
+ case PlSqlParser.INCREMENT:
+ case PlSqlParser.INCR:
+ case PlSqlParser.INDENT:
+ case PlSqlParser.INDEX_ASC:
+ case PlSqlParser.INDEX_COMBINE:
+ case PlSqlParser.INDEX_DESC:
+ case PlSqlParser.INDEXED:
+ case PlSqlParser.INDEXES:
+ case PlSqlParser.INDEX_FFS:
+ case PlSqlParser.INDEX_FILTER:
+ case PlSqlParser.INDEXING:
+ case PlSqlParser.INDEX_JOIN:
+ case PlSqlParser.INDEX_ROWS:
+ case PlSqlParser.INDEX_RRS:
+ case PlSqlParser.INDEX_RS_ASC:
+ case PlSqlParser.INDEX_RS_DESC:
+ case PlSqlParser.INDEX_RS:
+ case PlSqlParser.INDEX_SCAN:
+ case PlSqlParser.INDEX_SKIP_SCAN:
+ case PlSqlParser.INDEX_SS_ASC:
+ case PlSqlParser.INDEX_SS_DESC:
+ case PlSqlParser.INDEX_SS:
+ case PlSqlParser.INDEX_STATS:
+ case PlSqlParser.INDEXTYPE:
+ case PlSqlParser.INDEXTYPES:
+ case PlSqlParser.INDICATOR:
+ case PlSqlParser.INDICES:
+ case PlSqlParser.INFINITE:
+ case PlSqlParser.INFORMATIONAL:
+ case PlSqlParser.INHERIT:
+ case PlSqlParser.INITCAP:
+ case PlSqlParser.INITIAL:
+ case PlSqlParser.INITIALIZED:
+ case PlSqlParser.INITIALLY:
+ case PlSqlParser.INITRANS:
+ case PlSqlParser.INLINE:
+ case PlSqlParser.INLINE_XMLTYPE_NT:
+ case PlSqlParser.INMEMORY:
+ case PlSqlParser.IN_MEMORY_METADATA:
+ case PlSqlParser.INMEMORY_PRUNING:
+ case PlSqlParser.INNER:
+ case PlSqlParser.INOUT:
+ case PlSqlParser.INPLACE:
+ case PlSqlParser.INSERTCHILDXMLAFTER:
+ case PlSqlParser.INSERTCHILDXMLBEFORE:
+ case PlSqlParser.INSERTCHILDXML:
+ case PlSqlParser.INSERTXMLAFTER:
+ case PlSqlParser.INSERTXMLBEFORE:
+ case PlSqlParser.INSTANCE:
+ case PlSqlParser.INSTANCES:
+ case PlSqlParser.INSTANTIABLE:
+ case PlSqlParser.INSTANTLY:
+ case PlSqlParser.INSTEAD:
+ case PlSqlParser.INSTR2:
+ case PlSqlParser.INSTR4:
+ case PlSqlParser.INSTRB:
+ case PlSqlParser.INSTRC:
+ case PlSqlParser.INSTR:
+ case PlSqlParser.INTEGER:
+ case PlSqlParser.INTERLEAVED:
+ case PlSqlParser.INTERMEDIATE:
+ case PlSqlParser.INTERNAL_CONVERT:
+ case PlSqlParser.INTERNAL_USE:
+ case PlSqlParser.INTERPRETED:
+ case PlSqlParser.INTERVAL:
+ case PlSqlParser.INT:
+ case PlSqlParser.INVALIDATE:
+ case PlSqlParser.INVISIBLE:
+ case PlSqlParser.IN_XQUERY:
+ case PlSqlParser.ISOLATION:
+ case PlSqlParser.ISOLATION_LEVEL:
+ case PlSqlParser.ITERATE:
+ case PlSqlParser.ITERATION_NUMBER:
+ case PlSqlParser.JAVA:
+ case PlSqlParser.JOB:
+ case PlSqlParser.JOIN:
+ case PlSqlParser.JSON_ARRAYAGG:
+ case PlSqlParser.JSON_ARRAY:
+ case PlSqlParser.JSON_EQUAL:
+ case PlSqlParser.JSON_EXISTS2:
+ case PlSqlParser.JSON_EXISTS:
+ case PlSqlParser.JSONGET:
+ case PlSqlParser.JSON:
+ case PlSqlParser.JSON_OBJECTAGG:
+ case PlSqlParser.JSON_OBJECT:
+ case PlSqlParser.JSONPARSE:
+ case PlSqlParser.JSON_QUERY:
+ case PlSqlParser.JSON_SERIALIZE:
+ case PlSqlParser.JSON_TABLE:
+ case PlSqlParser.JSON_TEXTCONTAINS2:
+ case PlSqlParser.JSON_TEXTCONTAINS:
+ case PlSqlParser.JSON_VALUE:
+ case PlSqlParser.KEEP_DUPLICATES:
+ case PlSqlParser.KEEP:
+ case PlSqlParser.KERBEROS:
+ case PlSqlParser.KEY:
+ case PlSqlParser.KEY_LENGTH:
+ case PlSqlParser.KEYSIZE:
+ case PlSqlParser.KEYS:
+ case PlSqlParser.KEYSTORE:
+ case PlSqlParser.KILL:
+ case PlSqlParser.LABEL:
+ case PlSqlParser.LANGUAGE:
+ case PlSqlParser.LAST_DAY:
+ case PlSqlParser.LAST:
+ case PlSqlParser.LAST_VALUE:
+ case PlSqlParser.LATERAL:
+ case PlSqlParser.LAX:
+ case PlSqlParser.LAYER:
+ case PlSqlParser.LDAP_REGISTRATION_ENABLED:
+ case PlSqlParser.LDAP_REGISTRATION:
+ case PlSqlParser.LDAP_REG_SYNC_INTERVAL:
+ case PlSqlParser.LEADING:
+ case PlSqlParser.LEFT:
+ case PlSqlParser.LENGTH2:
+ case PlSqlParser.LENGTH4:
+ case PlSqlParser.LENGTHB:
+ case PlSqlParser.LENGTHC:
+ case PlSqlParser.LENGTH:
+ case PlSqlParser.LESS:
+ case PlSqlParser.LEVEL:
+ case PlSqlParser.LEVELS:
+ case PlSqlParser.LIBRARY:
+ case PlSqlParser.LIFECYCLE:
+ case PlSqlParser.LIFE:
+ case PlSqlParser.LIFETIME:
+ case PlSqlParser.LIKE2:
+ case PlSqlParser.LIKE4:
+ case PlSqlParser.LIKEC:
+ case PlSqlParser.LIKE_EXPAND:
+ case PlSqlParser.LIMIT:
+ case PlSqlParser.LINEAR:
+ case PlSqlParser.LINK:
+ case PlSqlParser.LIST:
+ case PlSqlParser.LN:
+ case PlSqlParser.LNNVL:
+ case PlSqlParser.LOAD:
+ case PlSqlParser.LOB:
+ case PlSqlParser.LOBNVL:
+ case PlSqlParser.LOBS:
+ case PlSqlParser.LOCAL_INDEXES:
+ case PlSqlParser.LOCAL:
+ case PlSqlParser.LOCALTIME:
+ case PlSqlParser.LOCALTIMESTAMP:
+ case PlSqlParser.LOCATION:
+ case PlSqlParser.LOCATOR:
+ case PlSqlParser.LOCKED:
+ case PlSqlParser.LOCKING:
+ case PlSqlParser.LOGFILE:
+ case PlSqlParser.LOGFILES:
+ case PlSqlParser.LOGGING:
+ case PlSqlParser.LOGICAL:
+ case PlSqlParser.LOGICAL_READS_PER_CALL:
+ case PlSqlParser.LOGICAL_READS_PER_SESSION:
+ case PlSqlParser.LOG:
+ case PlSqlParser.LOGMINING:
+ case PlSqlParser.LOGOFF:
+ case PlSqlParser.LOGON:
+ case PlSqlParser.LOG_READ_ONLY_VIOLATIONS:
+ case PlSqlParser.LONG:
+ case PlSqlParser.LOOP:
+ case PlSqlParser.LOWER:
+ case PlSqlParser.LOW:
+ case PlSqlParser.LPAD:
+ case PlSqlParser.LTRIM:
+ case PlSqlParser.MAIN:
+ case PlSqlParser.MAKE_REF:
+ case PlSqlParser.MANAGED:
+ case PlSqlParser.MANAGE:
+ case PlSqlParser.MANAGEMENT:
+ case PlSqlParser.MANAGER:
+ case PlSqlParser.MANUAL:
+ case PlSqlParser.MAP:
+ case PlSqlParser.MAPPING:
+ case PlSqlParser.MASTER:
+ case PlSqlParser.MATCHED:
+ case PlSqlParser.MATCHES:
+ case PlSqlParser.MATCH:
+ case PlSqlParser.MATCH_NUMBER:
+ case PlSqlParser.MATCH_RECOGNIZE:
+ case PlSqlParser.MATERIALIZED:
+ case PlSqlParser.MATERIALIZE:
+ case PlSqlParser.MAXARCHLOGS:
+ case PlSqlParser.MAXDATAFILES:
+ case PlSqlParser.MAXEXTENTS:
+ case PlSqlParser.MAXIMIZE:
+ case PlSqlParser.MAXINSTANCES:
+ case PlSqlParser.MAXLOGFILES:
+ case PlSqlParser.MAXLOGHISTORY:
+ case PlSqlParser.MAXLOGMEMBERS:
+ case PlSqlParser.MAX_SHARED_TEMP_SIZE:
+ case PlSqlParser.MAXSIZE:
+ case PlSqlParser.MAXTRANS:
+ case PlSqlParser.MAXVALUE:
+ case PlSqlParser.MEASURE:
+ case PlSqlParser.MEASURES:
+ case PlSqlParser.MEDIUM:
+ case PlSqlParser.MEMBER:
+ case PlSqlParser.MEMCOMPRESS:
+ case PlSqlParser.MEMORY:
+ case PlSqlParser.MERGEACTIONS:
+ case PlSqlParser.MERGE_AJ:
+ case PlSqlParser.MERGE_CONST_ON:
+ case PlSqlParser.MERGE:
+ case PlSqlParser.MERGE_SJ:
+ case PlSqlParser.METADATA:
+ case PlSqlParser.METHOD:
+ case PlSqlParser.MIGRATE:
+ case PlSqlParser.MIGRATION:
+ case PlSqlParser.MINEXTENTS:
+ case PlSqlParser.MINIMIZE:
+ case PlSqlParser.MINIMUM:
+ case PlSqlParser.MINING:
+ case PlSqlParser.MINUS_NULL:
+ case PlSqlParser.MINUTE:
+ case PlSqlParser.MINVALUE:
+ case PlSqlParser.MIRRORCOLD:
+ case PlSqlParser.MIRRORHOT:
+ case PlSqlParser.MIRROR:
+ case PlSqlParser.MLSLABEL:
+ case PlSqlParser.MODEL_COMPILE_SUBQUERY:
+ case PlSqlParser.MODEL_DONTVERIFY_UNIQUENESS:
+ case PlSqlParser.MODEL_DYNAMIC_SUBQUERY:
+ case PlSqlParser.MODEL_MIN_ANALYSIS:
+ case PlSqlParser.MODEL:
+ case PlSqlParser.MODEL_NB:
+ case PlSqlParser.MODEL_NO_ANALYSIS:
+ case PlSqlParser.MODEL_PBY:
+ case PlSqlParser.MODEL_PUSH_REF:
+ case PlSqlParser.MODEL_SV:
+ case PlSqlParser.MODIFICATION:
+ case PlSqlParser.MODIFY_COLUMN_TYPE:
+ case PlSqlParser.MODIFY:
+ case PlSqlParser.MOD:
+ case PlSqlParser.MODULE:
+ case PlSqlParser.MONITORING:
+ case PlSqlParser.MONITOR:
+ case PlSqlParser.MONTH:
+ case PlSqlParser.MONTHS_BETWEEN:
+ case PlSqlParser.MONTHS:
+ case PlSqlParser.MOUNT:
+ case PlSqlParser.MOUNTPATH:
+ case PlSqlParser.MOVEMENT:
+ case PlSqlParser.MOVE:
+ case PlSqlParser.MULTIDIMENSIONAL:
+ case PlSqlParser.MULTISET:
+ case PlSqlParser.MV_MERGE:
+ case PlSqlParser.NAMED:
+ case PlSqlParser.NAME:
+ case PlSqlParser.NAMESPACE:
+ case PlSqlParser.NAN:
+ case PlSqlParser.NANVL:
+ case PlSqlParser.NATIONAL:
+ case PlSqlParser.NATIVE_FULL_OUTER_JOIN:
+ case PlSqlParser.NATIVE:
+ case PlSqlParser.NATURAL:
+ case PlSqlParser.NAV:
+ case PlSqlParser.NCHAR_CS:
+ case PlSqlParser.NCHAR:
+ case PlSqlParser.NCHR:
+ case PlSqlParser.NCLOB:
+ case PlSqlParser.NEEDED:
+ case PlSqlParser.NEG:
+ case PlSqlParser.NESTED:
+ case PlSqlParser.NESTED_TABLE_FAST_INSERT:
+ case PlSqlParser.NESTED_TABLE_GET_REFS:
+ case PlSqlParser.NESTED_TABLE_ID:
+ case PlSqlParser.NESTED_TABLE_SET_REFS:
+ case PlSqlParser.NESTED_TABLE_SET_SETID:
+ case PlSqlParser.NETWORK:
+ case PlSqlParser.NEVER:
+ case PlSqlParser.NEW:
+ case PlSqlParser.NEW_TIME:
+ case PlSqlParser.NEXT_DAY:
+ case PlSqlParser.NEXT:
+ case PlSqlParser.NL_AJ:
+ case PlSqlParser.NLJ_BATCHING:
+ case PlSqlParser.NLJ_INDEX_FILTER:
+ case PlSqlParser.NLJ_INDEX_SCAN:
+ case PlSqlParser.NLJ_PREFETCH:
+ case PlSqlParser.NLS_CALENDAR:
+ case PlSqlParser.NLS_CHARACTERSET:
+ case PlSqlParser.NLS_CHARSET_DECL_LEN:
+ case PlSqlParser.NLS_CHARSET_ID:
+ case PlSqlParser.NLS_CHARSET_NAME:
+ case PlSqlParser.NLS_COMP:
+ case PlSqlParser.NLS_CURRENCY:
+ case PlSqlParser.NLS_DATE_FORMAT:
+ case PlSqlParser.NLS_DATE_LANGUAGE:
+ case PlSqlParser.NLS_INITCAP:
+ case PlSqlParser.NLS_ISO_CURRENCY:
+ case PlSqlParser.NL_SJ:
+ case PlSqlParser.NLS_LANG:
+ case PlSqlParser.NLS_LANGUAGE:
+ case PlSqlParser.NLS_LENGTH_SEMANTICS:
+ case PlSqlParser.NLS_LOWER:
+ case PlSqlParser.NLS_NCHAR_CONV_EXCP:
+ case PlSqlParser.NLS_NUMERIC_CHARACTERS:
+ case PlSqlParser.NLS_SORT:
+ case PlSqlParser.NLSSORT:
+ case PlSqlParser.NLS_SPECIAL_CHARS:
+ case PlSqlParser.NLS_TERRITORY:
+ case PlSqlParser.NLS_UPPER:
+ case PlSqlParser.NO_ACCESS:
+ case PlSqlParser.NO_ADAPTIVE_PLAN:
+ case PlSqlParser.NO_ANSI_REARCH:
+ case PlSqlParser.NOAPPEND:
+ case PlSqlParser.NOARCHIVELOG:
+ case PlSqlParser.NOAUDIT:
+ case PlSqlParser.NO_AUTO_REOPTIMIZE:
+ case PlSqlParser.NO_BASETABLE_MULTIMV_REWRITE:
+ case PlSqlParser.NO_BATCH_TABLE_ACCESS_BY_ROWID:
+ case PlSqlParser.NO_BIND_AWARE:
+ case PlSqlParser.NO_BUFFER:
+ case PlSqlParser.NOCACHE:
+ case PlSqlParser.NO_CARTESIAN:
+ case PlSqlParser.NO_CHECK_ACL_REWRITE:
+ case PlSqlParser.NO_CLUSTER_BY_ROWID:
+ case PlSqlParser.NO_CLUSTERING:
+ case PlSqlParser.NO_COALESCE_SQ:
+ case PlSqlParser.NO_COMMON_DATA:
+ case PlSqlParser.NO_CONNECT_BY_CB_WHR_ONLY:
+ case PlSqlParser.NO_CONNECT_BY_COMBINE_SW:
+ case PlSqlParser.NO_CONNECT_BY_COST_BASED:
+ case PlSqlParser.NO_CONNECT_BY_ELIM_DUPS:
+ case PlSqlParser.NO_CONNECT_BY_FILTERING:
+ case PlSqlParser.NOCOPY:
+ case PlSqlParser.NO_COST_XML_QUERY_REWRITE:
+ case PlSqlParser.NO_CPU_COSTING:
+ case PlSqlParser.NOCPU_COSTING:
+ case PlSqlParser.NOCYCLE:
+ case PlSqlParser.NO_DATA_SECURITY_REWRITE:
+ case PlSqlParser.NO_DECORRELATE:
+ case PlSqlParser.NODELAY:
+ case PlSqlParser.NO_DOMAIN_INDEX_FILTER:
+ case PlSqlParser.NO_DST_UPGRADE_INSERT_CONV:
+ case PlSqlParser.NO_ELIM_GROUPBY:
+ case PlSqlParser.NO_ELIMINATE_JOIN:
+ case PlSqlParser.NO_ELIMINATE_OBY:
+ case PlSqlParser.NO_ELIMINATE_OUTER_JOIN:
+ case PlSqlParser.NOENTITYESCAPING:
+ case PlSqlParser.NO_EXPAND_GSET_TO_UNION:
+ case PlSqlParser.NO_EXPAND:
+ case PlSqlParser.NO_EXPAND_TABLE:
+ case PlSqlParser.NO_FACT:
+ case PlSqlParser.NO_FACTORIZE_JOIN:
+ case PlSqlParser.NO_FILTERING:
+ case PlSqlParser.NOFORCE:
+ case PlSqlParser.NO_FULL_OUTER_JOIN_TO_OUTER:
+ case PlSqlParser.NO_GATHER_OPTIMIZER_STATISTICS:
+ case PlSqlParser.NO_GBY_PUSHDOWN:
+ case PlSqlParser.NOGUARANTEE:
+ case PlSqlParser.NO_INDEX_FFS:
+ case PlSqlParser.NO_INDEX:
+ case PlSqlParser.NO_INDEX_SS:
+ case PlSqlParser.NO_INMEMORY:
+ case PlSqlParser.NO_INMEMORY_PRUNING:
+ case PlSqlParser.NOKEEP:
+ case PlSqlParser.NO_LOAD:
+ case PlSqlParser.NOLOCAL:
+ case PlSqlParser.NOLOGGING:
+ case PlSqlParser.NOMAPPING:
+ case PlSqlParser.NOMAXVALUE:
+ case PlSqlParser.NO_MERGE:
+ case PlSqlParser.NOMINIMIZE:
+ case PlSqlParser.NOMINVALUE:
+ case PlSqlParser.NO_MODEL_PUSH_REF:
+ case PlSqlParser.NO_MONITORING:
+ case PlSqlParser.NOMONITORING:
+ case PlSqlParser.NO_MONITOR:
+ case PlSqlParser.NO_MULTIMV_REWRITE:
+ case PlSqlParser.NO_NATIVE_FULL_OUTER_JOIN:
+ case PlSqlParser.NONBLOCKING:
+ case PlSqlParser.NONEDITIONABLE:
+ case PlSqlParser.NONE:
+ case PlSqlParser.NO_NLJ_BATCHING:
+ case PlSqlParser.NO_NLJ_PREFETCH:
+ case PlSqlParser.NO:
+ case PlSqlParser.NONSCHEMA:
+ case PlSqlParser.NO_OBJECT_LINK:
+ case PlSqlParser.NOORDER:
+ case PlSqlParser.NO_ORDER_ROLLUPS:
+ case PlSqlParser.NO_OUTER_JOIN_TO_ANTI:
+ case PlSqlParser.NO_OUTER_JOIN_TO_INNER:
+ case PlSqlParser.NOOVERRIDE:
+ case PlSqlParser.NO_PARALLEL_INDEX:
+ case PlSqlParser.NOPARALLEL_INDEX:
+ case PlSqlParser.NO_PARALLEL:
+ case PlSqlParser.NOPARALLEL:
+ case PlSqlParser.NO_PARTIAL_COMMIT:
+ case PlSqlParser.NO_PARTIAL_JOIN:
+ case PlSqlParser.NO_PARTIAL_ROLLUP_PUSHDOWN:
+ case PlSqlParser.NOPARTITION:
+ case PlSqlParser.NO_PLACE_DISTINCT:
+ case PlSqlParser.NO_PLACE_GROUP_BY:
+ case PlSqlParser.NO_PQ_CONCURRENT_UNION:
+ case PlSqlParser.NO_PQ_MAP:
+ case PlSqlParser.NO_PQ_REPLICATE:
+ case PlSqlParser.NO_PQ_SKEW:
+ case PlSqlParser.NO_PRUNE_GSETS:
+ case PlSqlParser.NO_PULL_PRED:
+ case PlSqlParser.NO_PUSH_PRED:
+ case PlSqlParser.NO_PUSH_SUBQ:
+ case PlSqlParser.NO_PX_FAULT_TOLERANCE:
+ case PlSqlParser.NO_PX_JOIN_FILTER:
+ case PlSqlParser.NO_QKN_BUFF:
+ case PlSqlParser.NO_QUERY_TRANSFORMATION:
+ case PlSqlParser.NO_REF_CASCADE:
+ case PlSqlParser.NORELOCATE:
+ case PlSqlParser.NORELY:
+ case PlSqlParser.NOREPAIR:
+ case PlSqlParser.NOREPLAY:
+ case PlSqlParser.NORESETLOGS:
+ case PlSqlParser.NO_RESULT_CACHE:
+ case PlSqlParser.NOREVERSE:
+ case PlSqlParser.NO_REWRITE:
+ case PlSqlParser.NOREWRITE:
+ case PlSqlParser.NORMAL:
+ case PlSqlParser.NO_ROOT_SW_FOR_LOCAL:
+ case PlSqlParser.NOROWDEPENDENCIES:
+ case PlSqlParser.NOSCHEMACHECK:
+ case PlSqlParser.NOSEGMENT:
+ case PlSqlParser.NO_SEMIJOIN:
+ case PlSqlParser.NO_SEMI_TO_INNER:
+ case PlSqlParser.NO_SET_TO_JOIN:
+ case PlSqlParser.NOSORT:
+ case PlSqlParser.NO_SQL_TRANSLATION:
+ case PlSqlParser.NO_SQL_TUNE:
+ case PlSqlParser.NO_STAR_TRANSFORMATION:
+ case PlSqlParser.NO_STATEMENT_QUEUING:
+ case PlSqlParser.NO_STATS_GSETS:
+ case PlSqlParser.NOSTRICT:
+ case PlSqlParser.NO_SUBQUERY_PRUNING:
+ case PlSqlParser.NO_SUBSTRB_PAD:
+ case PlSqlParser.NO_SWAP_JOIN_INPUTS:
+ case PlSqlParser.NOSWITCH:
+ case PlSqlParser.NO_TABLE_LOOKUP_BY_NL:
+ case PlSqlParser.NO_TEMP_TABLE:
+ case PlSqlParser.NOTHING:
+ case PlSqlParser.NOTIFICATION:
+ case PlSqlParser.NO_TRANSFORM_DISTINCT_AGG:
+ case PlSqlParser.NO_UNNEST:
+ case PlSqlParser.NO_USE_CUBE:
+ case PlSqlParser.NO_USE_HASH_AGGREGATION:
+ case PlSqlParser.NO_USE_HASH_GBY_FOR_PUSHDOWN:
+ case PlSqlParser.NO_USE_HASH:
+ case PlSqlParser.NO_USE_INVISIBLE_INDEXES:
+ case PlSqlParser.NO_USE_MERGE:
+ case PlSqlParser.NO_USE_NL:
+ case PlSqlParser.NO_USE_VECTOR_AGGREGATION:
+ case PlSqlParser.NOVALIDATE:
+ case PlSqlParser.NO_VECTOR_TRANSFORM_DIMS:
+ case PlSqlParser.NO_VECTOR_TRANSFORM_FACT:
+ case PlSqlParser.NO_VECTOR_TRANSFORM:
+ case PlSqlParser.NO_XDB_FASTPATH_INSERT:
+ case PlSqlParser.NO_XML_DML_REWRITE:
+ case PlSqlParser.NO_XMLINDEX_REWRITE_IN_SELECT:
+ case PlSqlParser.NO_XMLINDEX_REWRITE:
+ case PlSqlParser.NO_XML_QUERY_REWRITE:
+ case PlSqlParser.NO_ZONEMAP:
+ case PlSqlParser.NTH_VALUE:
+ case PlSqlParser.NULLIF:
+ case PlSqlParser.NULLS:
+ case PlSqlParser.NUMBER:
+ case PlSqlParser.NUMERIC:
+ case PlSqlParser.NUM_INDEX_KEYS:
+ case PlSqlParser.NUMTODSINTERVAL:
+ case PlSqlParser.NUMTOYMINTERVAL:
+ case PlSqlParser.NVARCHAR2:
+ case PlSqlParser.NVL2:
+ case PlSqlParser.OBJECT2XML:
+ case PlSqlParser.OBJECT:
+ case PlSqlParser.OBJ_ID:
+ case PlSqlParser.OBJNO:
+ case PlSqlParser.OBJNO_REUSE:
+ case PlSqlParser.OCCURENCES:
+ case PlSqlParser.OFFLINE:
+ case PlSqlParser.OFF:
+ case PlSqlParser.OFFSET:
+ case PlSqlParser.OIDINDEX:
+ case PlSqlParser.OID:
+ case PlSqlParser.OLAP:
+ case PlSqlParser.OLD:
+ case PlSqlParser.OLD_PUSH_PRED:
+ case PlSqlParser.OLS:
+ case PlSqlParser.OLTP:
+ case PlSqlParser.OMIT:
+ case PlSqlParser.ONE:
+ case PlSqlParser.ONLINE:
+ case PlSqlParser.ONLY:
+ case PlSqlParser.OPAQUE:
+ case PlSqlParser.OPAQUE_TRANSFORM:
+ case PlSqlParser.OPAQUE_XCANONICAL:
+ case PlSqlParser.OPCODE:
+ case PlSqlParser.OPEN:
+ case PlSqlParser.OPERATIONS:
+ case PlSqlParser.OPERATOR:
+ case PlSqlParser.OPT_ESTIMATE:
+ case PlSqlParser.OPTIMAL:
+ case PlSqlParser.OPTIMIZE:
+ case PlSqlParser.OPTIMIZER_FEATURES_ENABLE:
+ case PlSqlParser.OPTIMIZER_GOAL:
+ case PlSqlParser.OPT_PARAM:
+ case PlSqlParser.ORA_BRANCH:
+ case PlSqlParser.ORA_CHECK_ACL:
+ case PlSqlParser.ORA_CHECK_PRIVILEGE:
+ case PlSqlParser.ORA_CLUSTERING:
+ case PlSqlParser.ORADATA:
+ case PlSqlParser.ORADEBUG:
+ case PlSqlParser.ORA_DST_AFFECTED:
+ case PlSqlParser.ORA_DST_CONVERT:
+ case PlSqlParser.ORA_DST_ERROR:
+ case PlSqlParser.ORA_GET_ACLIDS:
+ case PlSqlParser.ORA_GET_PRIVILEGES:
+ case PlSqlParser.ORA_HASH:
+ case PlSqlParser.ORA_INVOKING_USERID:
+ case PlSqlParser.ORA_INVOKING_USER:
+ case PlSqlParser.ORA_INVOKING_XS_USER_GUID:
+ case PlSqlParser.ORA_INVOKING_XS_USER:
+ case PlSqlParser.ORA_RAWCOMPARE:
+ case PlSqlParser.ORA_RAWCONCAT:
+ case PlSqlParser.ORA_ROWSCN:
+ case PlSqlParser.ORA_ROWSCN_RAW:
+ case PlSqlParser.ORA_ROWVERSION:
+ case PlSqlParser.ORA_TABVERSION:
+ case PlSqlParser.ORA_WRITE_TIME:
+ case PlSqlParser.ORDERED:
+ case PlSqlParser.ORDERED_PREDICATES:
+ case PlSqlParser.ORDINALITY:
+ case PlSqlParser.OR_EXPAND:
+ case PlSqlParser.ORGANIZATION:
+ case PlSqlParser.OR_PREDICATES:
+ case PlSqlParser.OSERROR:
+ case PlSqlParser.OTHER:
+ case PlSqlParser.OUTER_JOIN_TO_ANTI:
+ case PlSqlParser.OUTER_JOIN_TO_INNER:
+ case PlSqlParser.OUTER:
+ case PlSqlParser.OUTLINE_LEAF:
+ case PlSqlParser.OUTLINE:
+ case PlSqlParser.OUT_OF_LINE:
+ case PlSqlParser.OUT:
+ case PlSqlParser.OVERFLOW_NOMOVE:
+ case PlSqlParser.OVERFLOW:
+ case PlSqlParser.OVERLAPS:
+ case PlSqlParser.OVER:
+ case PlSqlParser.OVERRIDING:
+ case PlSqlParser.OWNER:
+ case PlSqlParser.OWNERSHIP:
+ case PlSqlParser.OWN:
+ case PlSqlParser.PACKAGE:
+ case PlSqlParser.PACKAGES:
+ case PlSqlParser.PARALLEL_ENABLE:
+ case PlSqlParser.PARALLEL_INDEX:
+ case PlSqlParser.PARALLEL:
+ case PlSqlParser.PARAMETERS:
+ case PlSqlParser.PARAM:
+ case PlSqlParser.PARENT:
+ case PlSqlParser.PARITY:
+ case PlSqlParser.PARTIAL_JOIN:
+ case PlSqlParser.PARTIALLY:
+ case PlSqlParser.PARTIAL:
+ case PlSqlParser.PARTIAL_ROLLUP_PUSHDOWN:
+ case PlSqlParser.PARTITION_HASH:
+ case PlSqlParser.PARTITION_LIST:
+ case PlSqlParser.PARTITION:
+ case PlSqlParser.PARTITION_RANGE:
+ case PlSqlParser.PARTITIONS:
+ case PlSqlParser.PARTNUMINST:
+ case PlSqlParser.PASSING:
+ case PlSqlParser.PASSWORD_GRACE_TIME:
+ case PlSqlParser.PASSWORD_LIFE_TIME:
+ case PlSqlParser.PASSWORD_LOCK_TIME:
+ case PlSqlParser.PASSWORD:
+ case PlSqlParser.PASSWORD_REUSE_MAX:
+ case PlSqlParser.PASSWORD_REUSE_TIME:
+ case PlSqlParser.PASSWORD_VERIFY_FUNCTION:
+ case PlSqlParser.PAST:
+ case PlSqlParser.PATCH:
+ case PlSqlParser.PATH:
+ case PlSqlParser.PATH_PREFIX:
+ case PlSqlParser.PATHS:
+ case PlSqlParser.PATTERN:
+ case PlSqlParser.PBL_HS_BEGIN:
+ case PlSqlParser.PBL_HS_END:
+ case PlSqlParser.PCTINCREASE:
+ case PlSqlParser.PCTTHRESHOLD:
+ case PlSqlParser.PCTUSED:
+ case PlSqlParser.PCTVERSION:
+ case PlSqlParser.PENDING:
+ case PlSqlParser.PERCENT_KEYWORD:
+ case PlSqlParser.PERCENT_RANKM:
+ case PlSqlParser.PERFORMANCE:
+ case PlSqlParser.PERIOD_KEYWORD:
+ case PlSqlParser.PERMANENT:
+ case PlSqlParser.PERMISSION:
+ case PlSqlParser.PERMUTE:
+ case PlSqlParser.PER:
+ case PlSqlParser.PFILE:
+ case PlSqlParser.PHYSICAL:
+ case PlSqlParser.PIKEY:
+ case PlSqlParser.PIPELINED:
+ case PlSqlParser.PIV_GB:
+ case PlSqlParser.PIVOT:
+ case PlSqlParser.PIV_SSF:
+ case PlSqlParser.PLACE_DISTINCT:
+ case PlSqlParser.PLACE_GROUP_BY:
+ case PlSqlParser.PLAN:
+ case PlSqlParser.PLSCOPE_SETTINGS:
+ case PlSqlParser.PLS_INTEGER:
+ case PlSqlParser.PLSQL_CCFLAGS:
+ case PlSqlParser.PLSQL_CODE_TYPE:
+ case PlSqlParser.PLSQL_DEBUG:
+ case PlSqlParser.PLSQL_OPTIMIZE_LEVEL:
+ case PlSqlParser.PLSQL_WARNINGS:
+ case PlSqlParser.PLUGGABLE:
+ case PlSqlParser.POINT:
+ case PlSqlParser.POLICY:
+ case PlSqlParser.POOL_16K:
+ case PlSqlParser.POOL_2K:
+ case PlSqlParser.POOL_32K:
+ case PlSqlParser.POOL_4K:
+ case PlSqlParser.POOL_8K:
+ case PlSqlParser.POSITIVEN:
+ case PlSqlParser.POSITIVE:
+ case PlSqlParser.POST_TRANSACTION:
+ case PlSqlParser.POWERMULTISET_BY_CARDINALITY:
+ case PlSqlParser.POWERMULTISET:
+ case PlSqlParser.POWER:
+ case PlSqlParser.PQ_CONCURRENT_UNION:
+ case PlSqlParser.PQ_DISTRIBUTE:
+ case PlSqlParser.PQ_DISTRIBUTE_WINDOW:
+ case PlSqlParser.PQ_FILTER:
+ case PlSqlParser.PQ_MAP:
+ case PlSqlParser.PQ_NOMAP:
+ case PlSqlParser.PQ_REPLICATE:
+ case PlSqlParser.PQ_SKEW:
+ case PlSqlParser.PRAGMA:
+ case PlSqlParser.PREBUILT:
+ case PlSqlParser.PRECEDES:
+ case PlSqlParser.PRECEDING:
+ case PlSqlParser.PRECISION:
+ case PlSqlParser.PRECOMPUTE_SUBQUERY:
+ case PlSqlParser.PREDICATE_REORDERS:
+ case PlSqlParser.PRELOAD:
+ case PlSqlParser.PREPARE:
+ case PlSqlParser.PRESENTNNV:
+ case PlSqlParser.PRESENT:
+ case PlSqlParser.PRESENTV:
+ case PlSqlParser.PRESERVE_OID:
+ case PlSqlParser.PRESERVE:
+ case PlSqlParser.PRETTY:
+ case PlSqlParser.PREVIOUS:
+ case PlSqlParser.PREV:
+ case PlSqlParser.PRIMARY:
+ case PlSqlParser.PRINTBLOBTOCLOB:
+ case PlSqlParser.PRIORITY:
+ case PlSqlParser.PRIVATE:
+ case PlSqlParser.PRIVATE_SGA:
+ case PlSqlParser.PRIVILEGED:
+ case PlSqlParser.PRIVILEGE:
+ case PlSqlParser.PRIVILEGES:
+ case PlSqlParser.PROCEDURAL:
+ case PlSqlParser.PROCEDURE:
+ case PlSqlParser.PROCESS:
+ case PlSqlParser.PROFILE:
+ case PlSqlParser.PROGRAM:
+ case PlSqlParser.PROJECT:
+ case PlSqlParser.PROPAGATE:
+ case PlSqlParser.PROTECTED:
+ case PlSqlParser.PROTECTION:
+ case PlSqlParser.PROXY:
+ case PlSqlParser.PRUNING:
+ case PlSqlParser.PULL_PRED:
+ case PlSqlParser.PURGE:
+ case PlSqlParser.PUSH_PRED:
+ case PlSqlParser.PUSH_SUBQ:
+ case PlSqlParser.PX_FAULT_TOLERANCE:
+ case PlSqlParser.PX_GRANULE:
+ case PlSqlParser.PX_JOIN_FILTER:
+ case PlSqlParser.QB_NAME:
+ case PlSqlParser.QUERY_BLOCK:
+ case PlSqlParser.QUERY:
+ case PlSqlParser.QUEUE_CURR:
+ case PlSqlParser.QUEUE:
+ case PlSqlParser.QUEUE_ROWP:
+ case PlSqlParser.QUIESCE:
+ case PlSqlParser.QUORUM:
+ case PlSqlParser.QUOTA:
+ case PlSqlParser.RAISE:
+ case PlSqlParser.RANDOM_LOCAL:
+ case PlSqlParser.RANDOM:
+ case PlSqlParser.RANGE:
+ case PlSqlParser.RANKM:
+ case PlSqlParser.RAPIDLY:
+ case PlSqlParser.RAW:
+ case PlSqlParser.RAWTOHEX:
+ case PlSqlParser.RAWTONHEX:
+ case PlSqlParser.RBA:
+ case PlSqlParser.RBO_OUTLINE:
+ case PlSqlParser.RDBA:
+ case PlSqlParser.READ:
+ case PlSqlParser.READS:
+ case PlSqlParser.REALM:
+ case PlSqlParser.REAL:
+ case PlSqlParser.REBALANCE:
+ case PlSqlParser.REBUILD:
+ case PlSqlParser.RECORD:
+ case PlSqlParser.RECORDS_PER_BLOCK:
+ case PlSqlParser.RECOVERABLE:
+ case PlSqlParser.RECOVER:
+ case PlSqlParser.RECOVERY:
+ case PlSqlParser.RECYCLEBIN:
+ case PlSqlParser.RECYCLE:
+ case PlSqlParser.REDACTION:
+ case PlSqlParser.REDEFINE:
+ case PlSqlParser.REDO:
+ case PlSqlParser.REDUCED:
+ case PlSqlParser.REDUNDANCY:
+ case PlSqlParser.REF_CASCADE_CURSOR:
+ case PlSqlParser.REFERENCED:
+ case PlSqlParser.REFERENCE:
+ case PlSqlParser.REFERENCES:
+ case PlSqlParser.REFERENCING:
+ case PlSqlParser.REF:
+ case PlSqlParser.REFRESH:
+ case PlSqlParser.REFTOHEX:
+ case PlSqlParser.REGEXP_COUNT:
+ case PlSqlParser.REGEXP_INSTR:
+ case PlSqlParser.REGEXP_LIKE:
+ case PlSqlParser.REGEXP_REPLACE:
+ case PlSqlParser.REGEXP_SUBSTR:
+ case PlSqlParser.REGISTER:
+ case PlSqlParser.REGR_AVGX:
+ case PlSqlParser.REGR_AVGY:
+ case PlSqlParser.REGR_COUNT:
+ case PlSqlParser.REGR_INTERCEPT:
+ case PlSqlParser.REGR_R2:
+ case PlSqlParser.REGR_SLOPE:
+ case PlSqlParser.REGR_SXX:
+ case PlSqlParser.REGR_SXY:
+ case PlSqlParser.REGR_SYY:
+ case PlSqlParser.REGULAR:
+ case PlSqlParser.REJECT:
+ case PlSqlParser.REKEY:
+ case PlSqlParser.RELATIONAL:
+ case PlSqlParser.RELOCATE:
+ case PlSqlParser.RELY:
+ case PlSqlParser.REMAINDER:
+ case PlSqlParser.REMOTE_MAPPED:
+ case PlSqlParser.REMOVE:
+ case PlSqlParser.RENAME:
+ case PlSqlParser.REPAIR:
+ case PlSqlParser.REPEAT:
+ case PlSqlParser.REPLACE:
+ case PlSqlParser.REPLICATION:
+ case PlSqlParser.REQUIRED:
+ case PlSqlParser.RESETLOGS:
+ case PlSqlParser.RESET:
+ case PlSqlParser.RESIZE:
+ case PlSqlParser.RESOLVE:
+ case PlSqlParser.RESOLVER:
+ case PlSqlParser.RESPECT:
+ case PlSqlParser.RESTART:
+ case PlSqlParser.RESTORE_AS_INTERVALS:
+ case PlSqlParser.RESTORE:
+ case PlSqlParser.RESTRICT_ALL_REF_CONS:
+ case PlSqlParser.RESTRICTED:
+ case PlSqlParser.RESTRICT_REFERENCES:
+ case PlSqlParser.RESTRICT:
+ case PlSqlParser.RESULT_CACHE:
+ case PlSqlParser.RESULT:
+ case PlSqlParser.RESUMABLE:
+ case PlSqlParser.RESUME:
+ case PlSqlParser.RETENTION:
+ case PlSqlParser.RETRY_ON_ROW_CHANGE:
+ case PlSqlParser.RETURNING:
+ case PlSqlParser.RETURN:
+ case PlSqlParser.REUSE:
+ case PlSqlParser.REVERSE:
+ case PlSqlParser.REWRITE_OR_ERROR:
+ case PlSqlParser.REWRITE:
+ case PlSqlParser.RIGHT:
+ case PlSqlParser.ROLE:
+ case PlSqlParser.ROLESET:
+ case PlSqlParser.ROLES:
+ case PlSqlParser.ROLLBACK:
+ case PlSqlParser.ROLLING:
+ case PlSqlParser.ROLLUP:
+ case PlSqlParser.ROWDEPENDENCIES:
+ case PlSqlParser.ROWID_MAPPING_TABLE:
+ case PlSqlParser.ROWID:
+ case PlSqlParser.ROWIDTOCHAR:
+ case PlSqlParser.ROWIDTONCHAR:
+ case PlSqlParser.ROW_LENGTH:
+ case PlSqlParser.ROWNUM:
+ case PlSqlParser.ROW:
+ case PlSqlParser.ROWS:
+ case PlSqlParser.RPAD:
+ case PlSqlParser.RTRIM:
+ case PlSqlParser.RULE:
+ case PlSqlParser.RULES:
+ case PlSqlParser.RUNNING:
+ case PlSqlParser.SALT:
+ case PlSqlParser.SAMPLE:
+ case PlSqlParser.SAVE_AS_INTERVALS:
+ case PlSqlParser.SAVEPOINT:
+ case PlSqlParser.SAVE:
+ case PlSqlParser.SB4:
+ case PlSqlParser.SCALE_ROWS:
+ case PlSqlParser.SCALE:
+ case PlSqlParser.SCAN_INSTANCES:
+ case PlSqlParser.SCAN:
+ case PlSqlParser.SCHEDULER:
+ case PlSqlParser.SCHEMACHECK:
+ case PlSqlParser.SCHEMA:
+ case PlSqlParser.SCN_ASCENDING:
+ case PlSqlParser.SCN:
+ case PlSqlParser.SCOPE:
+ case PlSqlParser.SCRUB:
+ case PlSqlParser.SD_ALL:
+ case PlSqlParser.SD_INHIBIT:
+ case PlSqlParser.SDO_GEOM_MBR:
+ case PlSqlParser.SD_SHOW:
+ case PlSqlParser.SEARCH:
+ case PlSqlParser.SECOND:
+ case PlSqlParser.SECRET:
+ case PlSqlParser.SECUREFILE_DBA:
+ case PlSqlParser.SECUREFILE:
+ case PlSqlParser.SECURITY:
+ case PlSqlParser.SEED:
+ case PlSqlParser.SEG_BLOCK:
+ case PlSqlParser.SEG_FILE:
+ case PlSqlParser.SEGMENT:
+ case PlSqlParser.SELECTIVITY:
+ case PlSqlParser.SELF:
+ case PlSqlParser.SEMIJOIN_DRIVER:
+ case PlSqlParser.SEMIJOIN:
+ case PlSqlParser.SEMI_TO_INNER:
+ case PlSqlParser.SEQUENCED:
+ case PlSqlParser.SEQUENCE:
+ case PlSqlParser.SEQUENTIAL:
+ case PlSqlParser.SERIALIZABLE:
+ case PlSqlParser.SERIALLY_REUSABLE:
+ case PlSqlParser.SERIAL:
+ case PlSqlParser.SERVERERROR:
+ case PlSqlParser.SERVICE_NAME_CONVERT:
+ case PlSqlParser.SERVICES:
+ case PlSqlParser.SESSION_CACHED_CURSORS:
+ case PlSqlParser.SESSION:
+ case PlSqlParser.SESSIONS_PER_USER:
+ case PlSqlParser.SESSIONTIMEZONE:
+ case PlSqlParser.SESSIONTZNAME:
+ case PlSqlParser.SET:
+ case PlSqlParser.SETS:
+ case PlSqlParser.SETTINGS:
+ case PlSqlParser.SET_TO_JOIN:
+ case PlSqlParser.SEVERE:
+ case PlSqlParser.SHARED_POOL:
+ case PlSqlParser.SHARED:
+ case PlSqlParser.SHARING:
+ case PlSqlParser.SHELFLIFE:
+ case PlSqlParser.SHOW:
+ case PlSqlParser.SHRINK:
+ case PlSqlParser.SHUTDOWN:
+ case PlSqlParser.SIBLINGS:
+ case PlSqlParser.SID:
+ case PlSqlParser.SIGNAL_COMPONENT:
+ case PlSqlParser.SIGNAL_FUNCTION:
+ case PlSqlParser.SIGN:
+ case PlSqlParser.SIGNTYPE:
+ case PlSqlParser.SIMPLE_INTEGER:
+ case PlSqlParser.SIMPLE:
+ case PlSqlParser.SINGLE:
+ case PlSqlParser.SINGLETASK:
+ case PlSqlParser.SINH:
+ case PlSqlParser.SIN:
+ case PlSqlParser.SKIP_EXT_OPTIMIZER:
+ case PlSqlParser.SKIP_:
+ case PlSqlParser.SKIP_UNQ_UNUSABLE_IDX:
+ case PlSqlParser.SKIP_UNUSABLE_INDEXES:
+ case PlSqlParser.SMALLFILE:
+ case PlSqlParser.SMALLINT:
+ case PlSqlParser.SNAPSHOT:
+ case PlSqlParser.SOME:
+ case PlSqlParser.SORT:
+ case PlSqlParser.SOUNDEX:
+ case PlSqlParser.SOURCE_FILE_DIRECTORY:
+ case PlSqlParser.SOURCE_FILE_NAME_CONVERT:
+ case PlSqlParser.SOURCE:
+ case PlSqlParser.SPACE_KEYWORD:
+ case PlSqlParser.SPECIFICATION:
+ case PlSqlParser.SPFILE:
+ case PlSqlParser.SPLIT:
+ case PlSqlParser.SPREADSHEET:
+ case PlSqlParser.SQLDATA:
+ case PlSqlParser.SQLERROR:
+ case PlSqlParser.SQLLDR:
+ case PlSqlParser.SQL:
+ case PlSqlParser.SQL_TRACE:
+ case PlSqlParser.SQL_TRANSLATION_PROFILE:
+ case PlSqlParser.SQRT:
+ case PlSqlParser.STALE:
+ case PlSqlParser.STANDALONE:
+ case PlSqlParser.STANDARD_HASH:
+ case PlSqlParser.STANDBY_MAX_DATA_DELAY:
+ case PlSqlParser.STANDBYS:
+ case PlSqlParser.STANDBY:
+ case PlSqlParser.STAR:
+ case PlSqlParser.STAR_TRANSFORMATION:
+ case PlSqlParser.STARTUP:
+ case PlSqlParser.STATEMENT_ID:
+ case PlSqlParser.STATEMENT_QUEUING:
+ case PlSqlParser.STATEMENTS:
+ case PlSqlParser.STATEMENT:
+ case PlSqlParser.STATE:
+ case PlSqlParser.STATIC:
+ case PlSqlParser.STATISTICS:
+ case PlSqlParser.STATS_BINOMIAL_TEST:
+ case PlSqlParser.STATS_CROSSTAB:
+ case PlSqlParser.STATS_F_TEST:
+ case PlSqlParser.STATS_KS_TEST:
+ case PlSqlParser.STATS_MODE:
+ case PlSqlParser.STATS_MW_TEST:
+ case PlSqlParser.STATS_ONE_WAY_ANOVA:
+ case PlSqlParser.STATS_T_TEST_INDEP:
+ case PlSqlParser.STATS_T_TEST_INDEPU:
+ case PlSqlParser.STATS_T_TEST_ONE:
+ case PlSqlParser.STATS_T_TEST_PAIRED:
+ case PlSqlParser.STATS_WSR_TEST:
+ case PlSqlParser.STDDEV_POP:
+ case PlSqlParser.STDDEV_SAMP:
+ case PlSqlParser.STOP:
+ case PlSqlParser.STORAGE:
+ case PlSqlParser.STORE:
+ case PlSqlParser.STREAMS:
+ case PlSqlParser.STREAM:
+ case PlSqlParser.STRICT:
+ case PlSqlParser.STRING:
+ case PlSqlParser.STRIPE_COLUMNS:
+ case PlSqlParser.STRIPE_WIDTH:
+ case PlSqlParser.STRIP:
+ case PlSqlParser.STRUCTURE:
+ case PlSqlParser.SUBMULTISET:
+ case PlSqlParser.SUBPARTITION_REL:
+ case PlSqlParser.SUBPARTITIONS:
+ case PlSqlParser.SUBPARTITION:
+ case PlSqlParser.SUBQUERIES:
+ case PlSqlParser.SUBQUERY_PRUNING:
+ case PlSqlParser.SUBSCRIBE:
+ case PlSqlParser.SUBSET:
+ case PlSqlParser.SUBSTITUTABLE:
+ case PlSqlParser.SUBSTR2:
+ case PlSqlParser.SUBSTR4:
+ case PlSqlParser.SUBSTRB:
+ case PlSqlParser.SUBSTRC:
+ case PlSqlParser.SUBTYPE:
+ case PlSqlParser.SUCCESSFUL:
+ case PlSqlParser.SUCCESS:
+ case PlSqlParser.SUMMARY:
+ case PlSqlParser.SUPPLEMENTAL:
+ case PlSqlParser.SUSPEND:
+ case PlSqlParser.SWAP_JOIN_INPUTS:
+ case PlSqlParser.SWITCHOVER:
+ case PlSqlParser.SWITCH:
+ case PlSqlParser.SYNCHRONOUS:
+ case PlSqlParser.SYNC:
+ case PlSqlParser.SYSASM:
+ case PlSqlParser.SYS_AUDIT:
+ case PlSqlParser.SYSAUX:
+ case PlSqlParser.SYSBACKUP:
+ case PlSqlParser.SYS_CHECKACL:
+ case PlSqlParser.SYS_CHECK_PRIVILEGE:
+ case PlSqlParser.SYS_CONNECT_BY_PATH:
+ case PlSqlParser.SYS_CONTEXT:
+ case PlSqlParser.SYSDATE:
+ case PlSqlParser.SYSDBA:
+ case PlSqlParser.SYS_DBURIGEN:
+ case PlSqlParser.SYSDG:
+ case PlSqlParser.SYS_DL_CURSOR:
+ case PlSqlParser.SYS_DM_RXFORM_CHR:
+ case PlSqlParser.SYS_DM_RXFORM_NUM:
+ case PlSqlParser.SYS_DOM_COMPARE:
+ case PlSqlParser.SYS_DST_PRIM2SEC:
+ case PlSqlParser.SYS_DST_SEC2PRIM:
+ case PlSqlParser.SYS_ET_BFILE_TO_RAW:
+ case PlSqlParser.SYS_ET_BLOB_TO_IMAGE:
+ case PlSqlParser.SYS_ET_IMAGE_TO_BLOB:
+ case PlSqlParser.SYS_ET_RAW_TO_BFILE:
+ case PlSqlParser.SYS_EXTPDTXT:
+ case PlSqlParser.SYS_EXTRACT_UTC:
+ case PlSqlParser.SYS_FBT_INSDEL:
+ case PlSqlParser.SYS_FILTER_ACLS:
+ case PlSqlParser.SYS_FNMATCHES:
+ case PlSqlParser.SYS_FNREPLACE:
+ case PlSqlParser.SYS_GET_ACLIDS:
+ case PlSqlParser.SYS_GET_COL_ACLIDS:
+ case PlSqlParser.SYS_GET_PRIVILEGES:
+ case PlSqlParser.SYS_GETTOKENID:
+ case PlSqlParser.SYS_GETXTIVAL:
+ case PlSqlParser.SYS_GUID:
+ case PlSqlParser.SYSGUID:
+ case PlSqlParser.SYSKM:
+ case PlSqlParser.SYS_MAKE_XMLNODEID:
+ case PlSqlParser.SYS_MAKEXML:
+ case PlSqlParser.SYS_MKXMLATTR:
+ case PlSqlParser.SYS_MKXTI:
+ case PlSqlParser.SYSOBJ:
+ case PlSqlParser.SYS_OP_ADT2BIN:
+ case PlSqlParser.SYS_OP_ADTCONS:
+ case PlSqlParser.SYS_OP_ALSCRVAL:
+ case PlSqlParser.SYS_OP_ATG:
+ case PlSqlParser.SYS_OP_BIN2ADT:
+ case PlSqlParser.SYS_OP_BITVEC:
+ case PlSqlParser.SYS_OP_BL2R:
+ case PlSqlParser.SYS_OP_BLOOM_FILTER_LIST:
+ case PlSqlParser.SYS_OP_BLOOM_FILTER:
+ case PlSqlParser.SYS_OP_C2C:
+ case PlSqlParser.SYS_OP_CAST:
+ case PlSqlParser.SYS_OP_CEG:
+ case PlSqlParser.SYS_OP_CL2C:
+ case PlSqlParser.SYS_OP_COMBINED_HASH:
+ case PlSqlParser.SYS_OP_COMP:
+ case PlSqlParser.SYS_OP_CONVERT:
+ case PlSqlParser.SYS_OP_COUNTCHG:
+ case PlSqlParser.SYS_OP_CSCONV:
+ case PlSqlParser.SYS_OP_CSCONVTEST:
+ case PlSqlParser.SYS_OP_CSR:
+ case PlSqlParser.SYS_OP_CSX_PATCH:
+ case PlSqlParser.SYS_OP_CYCLED_SEQ:
+ case PlSqlParser.SYS_OP_DECOMP:
+ case PlSqlParser.SYS_OP_DESCEND:
+ case PlSqlParser.SYS_OP_DISTINCT:
+ case PlSqlParser.SYS_OP_DRA:
+ case PlSqlParser.SYS_OP_DUMP:
+ case PlSqlParser.SYS_OP_DV_CHECK:
+ case PlSqlParser.SYS_OP_ENFORCE_NOT_NULL:
+ case PlSqlParser.SYSOPER:
+ case PlSqlParser.SYS_OP_EXTRACT:
+ case PlSqlParser.SYS_OP_GROUPING:
+ case PlSqlParser.SYS_OP_GUID:
+ case PlSqlParser.SYS_OP_HASH:
+ case PlSqlParser.SYS_OP_IIX:
+ case PlSqlParser.SYS_OP_ITR:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_CREATE:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_FILTER_LIST:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_FILTER:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_SUCCEEDED:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_USE:
+ case PlSqlParser.SYS_OP_LBID:
+ case PlSqlParser.SYS_OP_LOBLOC2BLOB:
+ case PlSqlParser.SYS_OP_LOBLOC2CLOB:
+ case PlSqlParser.SYS_OP_LOBLOC2ID:
+ case PlSqlParser.SYS_OP_LOBLOC2NCLOB:
+ case PlSqlParser.SYS_OP_LOBLOC2TYP:
+ case PlSqlParser.SYS_OP_LSVI:
+ case PlSqlParser.SYS_OP_LVL:
+ case PlSqlParser.SYS_OP_MAKEOID:
+ case PlSqlParser.SYS_OP_MAP_NONNULL:
+ case PlSqlParser.SYS_OP_MSR:
+ case PlSqlParser.SYS_OP_NICOMBINE:
+ case PlSqlParser.SYS_OP_NIEXTRACT:
+ case PlSqlParser.SYS_OP_NII:
+ case PlSqlParser.SYS_OP_NIX:
+ case PlSqlParser.SYS_OP_NOEXPAND:
+ case PlSqlParser.SYS_OP_NTCIMG:
+ case PlSqlParser.SYS_OP_NUMTORAW:
+ case PlSqlParser.SYS_OP_OIDVALUE:
+ case PlSqlParser.SYS_OP_OPNSIZE:
+ case PlSqlParser.SYS_OP_PAR_1:
+ case PlSqlParser.SYS_OP_PARGID_1:
+ case PlSqlParser.SYS_OP_PARGID:
+ case PlSqlParser.SYS_OP_PAR:
+ case PlSqlParser.SYS_OP_PART_ID:
+ case PlSqlParser.SYS_OP_PIVOT:
+ case PlSqlParser.SYS_OP_R2O:
+ case PlSqlParser.SYS_OP_RAWTONUM:
+ case PlSqlParser.SYS_OP_RDTM:
+ case PlSqlParser.SYS_OP_REF:
+ case PlSqlParser.SYS_OP_RMTD:
+ case PlSqlParser.SYS_OP_ROWIDTOOBJ:
+ case PlSqlParser.SYS_OP_RPB:
+ case PlSqlParser.SYS_OPTLOBPRBSC:
+ case PlSqlParser.SYS_OP_TOSETID:
+ case PlSqlParser.SYS_OP_TPR:
+ case PlSqlParser.SYS_OP_TRTB:
+ case PlSqlParser.SYS_OPTXICMP:
+ case PlSqlParser.SYS_OPTXQCASTASNQ:
+ case PlSqlParser.SYS_OP_UNDESCEND:
+ case PlSqlParser.SYS_OP_VECAND:
+ case PlSqlParser.SYS_OP_VECBIT:
+ case PlSqlParser.SYS_OP_VECOR:
+ case PlSqlParser.SYS_OP_VECXOR:
+ case PlSqlParser.SYS_OP_VERSION:
+ case PlSqlParser.SYS_OP_VREF:
+ case PlSqlParser.SYS_OP_VVD:
+ case PlSqlParser.SYS_OP_XMLCONS_FOR_CSX:
+ case PlSqlParser.SYS_OP_XPTHATG:
+ case PlSqlParser.SYS_OP_XPTHIDX:
+ case PlSqlParser.SYS_OP_XPTHOP:
+ case PlSqlParser.SYS_OP_XTXT2SQLT:
+ case PlSqlParser.SYS_OP_ZONE_ID:
+ case PlSqlParser.SYS_ORDERKEY_DEPTH:
+ case PlSqlParser.SYS_ORDERKEY_MAXCHILD:
+ case PlSqlParser.SYS_ORDERKEY_PARENT:
+ case PlSqlParser.SYS_PARALLEL_TXN:
+ case PlSqlParser.SYS_PATHID_IS_ATTR:
+ case PlSqlParser.SYS_PATHID_IS_NMSPC:
+ case PlSqlParser.SYS_PATHID_LASTNAME:
+ case PlSqlParser.SYS_PATHID_LASTNMSPC:
+ case PlSqlParser.SYS_PATH_REVERSE:
+ case PlSqlParser.SYS_PXQEXTRACT:
+ case PlSqlParser.SYS_RAW_TO_XSID:
+ case PlSqlParser.SYS_RID_ORDER:
+ case PlSqlParser.SYS_ROW_DELTA:
+ case PlSqlParser.SYS_SC_2_XMLT:
+ case PlSqlParser.SYS_SYNRCIREDO:
+ case PlSqlParser.SYSTEM_DEFINED:
+ case PlSqlParser.SYSTEM:
+ case PlSqlParser.SYSTIMESTAMP:
+ case PlSqlParser.SYS_TYPEID:
+ case PlSqlParser.SYS_UMAKEXML:
+ case PlSqlParser.SYS_XMLANALYZE:
+ case PlSqlParser.SYS_XMLCONTAINS:
+ case PlSqlParser.SYS_XMLCONV:
+ case PlSqlParser.SYS_XMLEXNSURI:
+ case PlSqlParser.SYS_XMLGEN:
+ case PlSqlParser.SYS_XMLI_LOC_ISNODE:
+ case PlSqlParser.SYS_XMLI_LOC_ISTEXT:
+ case PlSqlParser.SYS_XMLINSTR:
+ case PlSqlParser.SYS_XMLLOCATOR_GETSVAL:
+ case PlSqlParser.SYS_XMLNODEID_GETCID:
+ case PlSqlParser.SYS_XMLNODEID_GETLOCATOR:
+ case PlSqlParser.SYS_XMLNODEID_GETOKEY:
+ case PlSqlParser.SYS_XMLNODEID_GETPATHID:
+ case PlSqlParser.SYS_XMLNODEID_GETPTRID:
+ case PlSqlParser.SYS_XMLNODEID_GETRID:
+ case PlSqlParser.SYS_XMLNODEID_GETSVAL:
+ case PlSqlParser.SYS_XMLNODEID_GETTID:
+ case PlSqlParser.SYS_XMLNODEID:
+ case PlSqlParser.SYS_XMLT_2_SC:
+ case PlSqlParser.SYS_XMLTRANSLATE:
+ case PlSqlParser.SYS_XMLTYPE2SQL:
+ case PlSqlParser.SYS_XQ_ASQLCNV:
+ case PlSqlParser.SYS_XQ_ATOMCNVCHK:
+ case PlSqlParser.SYS_XQBASEURI:
+ case PlSqlParser.SYS_XQCASTABLEERRH:
+ case PlSqlParser.SYS_XQCODEP2STR:
+ case PlSqlParser.SYS_XQCODEPEQ:
+ case PlSqlParser.SYS_XQCON2SEQ:
+ case PlSqlParser.SYS_XQCONCAT:
+ case PlSqlParser.SYS_XQDELETE:
+ case PlSqlParser.SYS_XQDFLTCOLATION:
+ case PlSqlParser.SYS_XQDOC:
+ case PlSqlParser.SYS_XQDOCURI:
+ case PlSqlParser.SYS_XQDURDIV:
+ case PlSqlParser.SYS_XQED4URI:
+ case PlSqlParser.SYS_XQENDSWITH:
+ case PlSqlParser.SYS_XQERRH:
+ case PlSqlParser.SYS_XQERR:
+ case PlSqlParser.SYS_XQESHTMLURI:
+ case PlSqlParser.SYS_XQEXLOBVAL:
+ case PlSqlParser.SYS_XQEXSTWRP:
+ case PlSqlParser.SYS_XQEXTRACT:
+ case PlSqlParser.SYS_XQEXTRREF:
+ case PlSqlParser.SYS_XQEXVAL:
+ case PlSqlParser.SYS_XQFB2STR:
+ case PlSqlParser.SYS_XQFNBOOL:
+ case PlSqlParser.SYS_XQFNCMP:
+ case PlSqlParser.SYS_XQFNDATIM:
+ case PlSqlParser.SYS_XQFNLNAME:
+ case PlSqlParser.SYS_XQFNNM:
+ case PlSqlParser.SYS_XQFNNSURI:
+ case PlSqlParser.SYS_XQFNPREDTRUTH:
+ case PlSqlParser.SYS_XQFNQNM:
+ case PlSqlParser.SYS_XQFNROOT:
+ case PlSqlParser.SYS_XQFORMATNUM:
+ case PlSqlParser.SYS_XQFTCONTAIN:
+ case PlSqlParser.SYS_XQFUNCR:
+ case PlSqlParser.SYS_XQGETCONTENT:
+ case PlSqlParser.SYS_XQINDXOF:
+ case PlSqlParser.SYS_XQINSERT:
+ case PlSqlParser.SYS_XQINSPFX:
+ case PlSqlParser.SYS_XQIRI2URI:
+ case PlSqlParser.SYS_XQLANG:
+ case PlSqlParser.SYS_XQLLNMFRMQNM:
+ case PlSqlParser.SYS_XQMKNODEREF:
+ case PlSqlParser.SYS_XQNILLED:
+ case PlSqlParser.SYS_XQNODENAME:
+ case PlSqlParser.SYS_XQNORMSPACE:
+ case PlSqlParser.SYS_XQNORMUCODE:
+ case PlSqlParser.SYS_XQ_NRNG:
+ case PlSqlParser.SYS_XQNSP4PFX:
+ case PlSqlParser.SYS_XQNSPFRMQNM:
+ case PlSqlParser.SYS_XQPFXFRMQNM:
+ case PlSqlParser.SYS_XQ_PKSQL2XML:
+ case PlSqlParser.SYS_XQPOLYABS:
+ case PlSqlParser.SYS_XQPOLYADD:
+ case PlSqlParser.SYS_XQPOLYCEL:
+ case PlSqlParser.SYS_XQPOLYCSTBL:
+ case PlSqlParser.SYS_XQPOLYCST:
+ case PlSqlParser.SYS_XQPOLYDIV:
+ case PlSqlParser.SYS_XQPOLYFLR:
+ case PlSqlParser.SYS_XQPOLYMOD:
+ case PlSqlParser.SYS_XQPOLYMUL:
+ case PlSqlParser.SYS_XQPOLYRND:
+ case PlSqlParser.SYS_XQPOLYSQRT:
+ case PlSqlParser.SYS_XQPOLYSUB:
+ case PlSqlParser.SYS_XQPOLYUMUS:
+ case PlSqlParser.SYS_XQPOLYUPLS:
+ case PlSqlParser.SYS_XQPOLYVEQ:
+ case PlSqlParser.SYS_XQPOLYVGE:
+ case PlSqlParser.SYS_XQPOLYVGT:
+ case PlSqlParser.SYS_XQPOLYVLE:
+ case PlSqlParser.SYS_XQPOLYVLT:
+ case PlSqlParser.SYS_XQPOLYVNE:
+ case PlSqlParser.SYS_XQREF2VAL:
+ case PlSqlParser.SYS_XQRENAME:
+ case PlSqlParser.SYS_XQREPLACE:
+ case PlSqlParser.SYS_XQRESVURI:
+ case PlSqlParser.SYS_XQRNDHALF2EVN:
+ case PlSqlParser.SYS_XQRSLVQNM:
+ case PlSqlParser.SYS_XQRYENVPGET:
+ case PlSqlParser.SYS_XQRYVARGET:
+ case PlSqlParser.SYS_XQRYWRP:
+ case PlSqlParser.SYS_XQSEQ2CON4XC:
+ case PlSqlParser.SYS_XQSEQ2CON:
+ case PlSqlParser.SYS_XQSEQDEEPEQ:
+ case PlSqlParser.SYS_XQSEQINSB:
+ case PlSqlParser.SYS_XQSEQRM:
+ case PlSqlParser.SYS_XQSEQRVS:
+ case PlSqlParser.SYS_XQSEQSUB:
+ case PlSqlParser.SYS_XQSEQTYPMATCH:
+ case PlSqlParser.SYS_XQSTARTSWITH:
+ case PlSqlParser.SYS_XQSTATBURI:
+ case PlSqlParser.SYS_XQSTR2CODEP:
+ case PlSqlParser.SYS_XQSTRJOIN:
+ case PlSqlParser.SYS_XQSUBSTRAFT:
+ case PlSqlParser.SYS_XQSUBSTRBEF:
+ case PlSqlParser.SYS_XQTOKENIZE:
+ case PlSqlParser.SYS_XQTREATAS:
+ case PlSqlParser.SYS_XQ_UPKXML2SQL:
+ case PlSqlParser.SYS_XQXFORM:
+ case PlSqlParser.SYS_XSID_TO_RAW:
+ case PlSqlParser.SYS_ZMAP_FILTER:
+ case PlSqlParser.SYS_ZMAP_REFRESH:
+ case PlSqlParser.TABLE_LOOKUP_BY_NL:
+ case PlSqlParser.TABLESPACE_NO:
+ case PlSqlParser.TABLESPACE:
+ case PlSqlParser.TABLES:
+ case PlSqlParser.TABLE_STATS:
+ case PlSqlParser.TABLE:
+ case PlSqlParser.TABNO:
+ case PlSqlParser.TAG:
+ case PlSqlParser.TANH:
+ case PlSqlParser.TAN:
+ case PlSqlParser.TBLORIDXPARTNUM:
+ case PlSqlParser.TEMPFILE:
+ case PlSqlParser.TEMPLATE:
+ case PlSqlParser.TEMPORARY:
+ case PlSqlParser.TEMP_TABLE:
+ case PlSqlParser.TEST:
+ case PlSqlParser.TEXT:
+ case PlSqlParser.THAN:
+ case PlSqlParser.THEN:
+ case PlSqlParser.THE:
+ case PlSqlParser.THREAD:
+ case PlSqlParser.THROUGH:
+ case PlSqlParser.TIER:
+ case PlSqlParser.TIES:
+ case PlSqlParser.TIMEOUT:
+ case PlSqlParser.TIMESTAMP_LTZ_UNCONSTRAINED:
+ case PlSqlParser.TIMESTAMP:
+ case PlSqlParser.TIMESTAMP_TZ_UNCONSTRAINED:
+ case PlSqlParser.TIMESTAMP_UNCONSTRAINED:
+ case PlSqlParser.TIMES:
+ case PlSqlParser.TIME:
+ case PlSqlParser.TIMEZONE_ABBR:
+ case PlSqlParser.TIMEZONE_HOUR:
+ case PlSqlParser.TIMEZONE_MINUTE:
+ case PlSqlParser.TIMEZONE_OFFSET:
+ case PlSqlParser.TIMEZONE_REGION:
+ case PlSqlParser.TIME_ZONE:
+ case PlSqlParser.TIV_GB:
+ case PlSqlParser.TIV_SSF:
+ case PlSqlParser.TO_ACLID:
+ case PlSqlParser.TO_BINARY_DOUBLE:
+ case PlSqlParser.TO_BINARY_FLOAT:
+ case PlSqlParser.TO_BLOB:
+ case PlSqlParser.TO_CLOB:
+ case PlSqlParser.TO_DSINTERVAL:
+ case PlSqlParser.TO_LOB:
+ case PlSqlParser.TO_MULTI_BYTE:
+ case PlSqlParser.TO_NCHAR:
+ case PlSqlParser.TO_NCLOB:
+ case PlSqlParser.TO_NUMBER:
+ case PlSqlParser.TOPLEVEL:
+ case PlSqlParser.TO_SINGLE_BYTE:
+ case PlSqlParser.TO_TIMESTAMP:
+ case PlSqlParser.TO_TIMESTAMP_TZ:
+ case PlSqlParser.TO_TIME:
+ case PlSqlParser.TO_TIME_TZ:
+ case PlSqlParser.TO_YMINTERVAL:
+ case PlSqlParser.TRACE:
+ case PlSqlParser.TRACING:
+ case PlSqlParser.TRACKING:
+ case PlSqlParser.TRAILING:
+ case PlSqlParser.TRANSACTION:
+ case PlSqlParser.TRANSFORM_DISTINCT_AGG:
+ case PlSqlParser.TRANSITIONAL:
+ case PlSqlParser.TRANSITION:
+ case PlSqlParser.TRANSLATE:
+ case PlSqlParser.TRANSLATION:
+ case PlSqlParser.TREAT:
+ case PlSqlParser.TRIGGERS:
+ case PlSqlParser.TRIGGER:
+ case PlSqlParser.TRUE:
+ case PlSqlParser.TRUNCATE:
+ case PlSqlParser.TRUNC:
+ case PlSqlParser.TRUSTED:
+ case PlSqlParser.TRUST:
+ case PlSqlParser.TUNING:
+ case PlSqlParser.TX:
+ case PlSqlParser.TYPES:
+ case PlSqlParser.TYPE:
+ case PlSqlParser.TZ_OFFSET:
+ case PlSqlParser.UB2:
+ case PlSqlParser.UBA:
+ case PlSqlParser.UCS2:
+ case PlSqlParser.UID:
+ case PlSqlParser.UNARCHIVED:
+ case PlSqlParser.UNBOUNDED:
+ case PlSqlParser.UNBOUND:
+ case PlSqlParser.UNCONDITIONAL:
+ case PlSqlParser.UNDER:
+ case PlSqlParser.UNDO:
+ case PlSqlParser.UNDROP:
+ case PlSqlParser.UNIFORM:
+ case PlSqlParser.UNISTR:
+ case PlSqlParser.UNLIMITED:
+ case PlSqlParser.UNLOAD:
+ case PlSqlParser.UNLOCK:
+ case PlSqlParser.UNMATCHED:
+ case PlSqlParser.UNNEST_INNERJ_DISTINCT_VIEW:
+ case PlSqlParser.UNNEST_NOSEMIJ_NODISTINCTVIEW:
+ case PlSqlParser.UNNEST_SEMIJ_VIEW:
+ case PlSqlParser.UNNEST:
+ case PlSqlParser.UNPACKED:
+ case PlSqlParser.UNPIVOT:
+ case PlSqlParser.UNPLUG:
+ case PlSqlParser.UNPROTECTED:
+ case PlSqlParser.UNQUIESCE:
+ case PlSqlParser.UNRECOVERABLE:
+ case PlSqlParser.UNRESTRICTED:
+ case PlSqlParser.UNSUBSCRIBE:
+ case PlSqlParser.UNTIL:
+ case PlSqlParser.UNUSABLE:
+ case PlSqlParser.UNUSED:
+ case PlSqlParser.UPDATABLE:
+ case PlSqlParser.UPDATED:
+ case PlSqlParser.UPDATEXML:
+ case PlSqlParser.UPD_INDEXES:
+ case PlSqlParser.UPD_JOININDEX:
+ case PlSqlParser.UPGRADE:
+ case PlSqlParser.UPPER:
+ case PlSqlParser.UPSERT:
+ case PlSqlParser.UROWID:
+ case PlSqlParser.USABLE:
+ case PlSqlParser.USAGE:
+ case PlSqlParser.USE_ANTI:
+ case PlSqlParser.USE_CONCAT:
+ case PlSqlParser.USE_CUBE:
+ case PlSqlParser.USE_HASH_AGGREGATION:
+ case PlSqlParser.USE_HASH_GBY_FOR_PUSHDOWN:
+ case PlSqlParser.USE_HASH:
+ case PlSqlParser.USE_HIDDEN_PARTITIONS:
+ case PlSqlParser.USE_INVISIBLE_INDEXES:
+ case PlSqlParser.USE_MERGE_CARTESIAN:
+ case PlSqlParser.USE_MERGE:
+ case PlSqlParser.USE_NL:
+ case PlSqlParser.USE_NL_WITH_INDEX:
+ case PlSqlParser.USE_PRIVATE_OUTLINES:
+ case PlSqlParser.USER_DATA:
+ case PlSqlParser.USER_DEFINED:
+ case PlSqlParser.USERENV:
+ case PlSqlParser.USERGROUP:
+ case PlSqlParser.USER_RECYCLEBIN:
+ case PlSqlParser.USERS:
+ case PlSqlParser.USER_TABLESPACES:
+ case PlSqlParser.USER:
+ case PlSqlParser.USE_SEMI:
+ case PlSqlParser.USE_STORED_OUTLINES:
+ case PlSqlParser.USE_TTT_FOR_GSETS:
+ case PlSqlParser.USE:
+ case PlSqlParser.USE_VECTOR_AGGREGATION:
+ case PlSqlParser.USE_WEAK_NAME_RESL:
+ case PlSqlParser.USING_NO_EXPAND:
+ case PlSqlParser.USING:
+ case PlSqlParser.UTF16BE:
+ case PlSqlParser.UTF16LE:
+ case PlSqlParser.UTF32:
+ case PlSqlParser.UTF8:
+ case PlSqlParser.V1:
+ case PlSqlParser.V2:
+ case PlSqlParser.VALIDATE:
+ case PlSqlParser.VALIDATION:
+ case PlSqlParser.VALID_TIME_END:
+ case PlSqlParser.VALUE:
+ case PlSqlParser.VARCHAR2:
+ case PlSqlParser.VARCHAR:
+ case PlSqlParser.VARIABLE:
+ case PlSqlParser.VAR_POP:
+ case PlSqlParser.VARRAYS:
+ case PlSqlParser.VARRAY:
+ case PlSqlParser.VAR_SAMP:
+ case PlSqlParser.VARYING:
+ case PlSqlParser.VECTOR_READ_TRACE:
+ case PlSqlParser.VECTOR_READ:
+ case PlSqlParser.VECTOR_TRANSFORM_DIMS:
+ case PlSqlParser.VECTOR_TRANSFORM_FACT:
+ case PlSqlParser.VECTOR_TRANSFORM:
+ case PlSqlParser.VERIFIER:
+ case PlSqlParser.VERIFY:
+ case PlSqlParser.VERSIONING:
+ case PlSqlParser.VERSIONS_ENDSCN:
+ case PlSqlParser.VERSIONS_ENDTIME:
+ case PlSqlParser.VERSIONS_OPERATION:
+ case PlSqlParser.VERSIONS_STARTSCN:
+ case PlSqlParser.VERSIONS_STARTTIME:
+ case PlSqlParser.VERSIONS:
+ case PlSqlParser.VERSIONS_XID:
+ case PlSqlParser.VERSION:
+ case PlSqlParser.VIOLATION:
+ case PlSqlParser.VIRTUAL:
+ case PlSqlParser.VISIBILITY:
+ case PlSqlParser.VISIBLE:
+ case PlSqlParser.VOLUME:
+ case PlSqlParser.VSIZE:
+ case PlSqlParser.WAIT:
+ case PlSqlParser.WALLET:
+ case PlSqlParser.WARNING:
+ case PlSqlParser.WEEKS:
+ case PlSqlParser.WEEK:
+ case PlSqlParser.WELLFORMED:
+ case PlSqlParser.WHENEVER:
+ case PlSqlParser.WHEN:
+ case PlSqlParser.WHILE:
+ case PlSqlParser.WHITESPACE:
+ case PlSqlParser.WIDTH_BUCKET:
+ case PlSqlParser.WITHIN:
+ case PlSqlParser.WITHOUT:
+ case PlSqlParser.WITH_PLSQL:
+ case PlSqlParser.WORK:
+ case PlSqlParser.WRAPPED:
+ case PlSqlParser.WRAPPER:
+ case PlSqlParser.WRITE:
+ case PlSqlParser.XDB_FASTPATH_INSERT:
+ case PlSqlParser.X_DYN_PRUNE:
+ case PlSqlParser.XID:
+ case PlSqlParser.XML2OBJECT:
+ case PlSqlParser.XMLAGG:
+ case PlSqlParser.XMLATTRIBUTES:
+ case PlSqlParser.XMLCAST:
+ case PlSqlParser.XMLCDATA:
+ case PlSqlParser.XMLCOLATTVAL:
+ case PlSqlParser.XMLCOMMENT:
+ case PlSqlParser.XMLCONCAT:
+ case PlSqlParser.XMLDIFF:
+ case PlSqlParser.XML_DML_RWT_STMT:
+ case PlSqlParser.XMLELEMENT:
+ case PlSqlParser.XMLEXISTS2:
+ case PlSqlParser.XMLEXISTS:
+ case PlSqlParser.XMLFOREST:
+ case PlSqlParser.XMLINDEX_REWRITE_IN_SELECT:
+ case PlSqlParser.XMLINDEX_REWRITE:
+ case PlSqlParser.XMLINDEX_SEL_IDX_TBL:
+ case PlSqlParser.XMLISNODE:
+ case PlSqlParser.XMLISVALID:
+ case PlSqlParser.XMLNAMESPACES:
+ case PlSqlParser.XMLPARSE:
+ case PlSqlParser.XMLPATCH:
+ case PlSqlParser.XMLPI:
+ case PlSqlParser.XMLQUERYVAL:
+ case PlSqlParser.XMLQUERY:
+ case PlSqlParser.XMLROOT:
+ case PlSqlParser.XMLSCHEMA:
+ case PlSqlParser.XMLSERIALIZE:
+ case PlSqlParser.XMLTABLE:
+ case PlSqlParser.XMLTRANSFORMBLOB:
+ case PlSqlParser.XMLTRANSFORM:
+ case PlSqlParser.XMLTYPE:
+ case PlSqlParser.XML:
+ case PlSqlParser.XPATHTABLE:
+ case PlSqlParser.XS_SYS_CONTEXT:
+ case PlSqlParser.XS:
+ case PlSqlParser.YEARS:
+ case PlSqlParser.YEAR:
+ case PlSqlParser.YES:
+ case PlSqlParser.YMINTERVAL_UNCONSTRAINED:
+ case PlSqlParser.ZONEMAP:
+ case PlSqlParser.ZONE:
+ case PlSqlParser.PREDICTION:
+ case PlSqlParser.PREDICTION_BOUNDS:
+ case PlSqlParser.PREDICTION_COST:
+ case PlSqlParser.PREDICTION_DETAILS:
+ case PlSqlParser.PREDICTION_PROBABILITY:
+ case PlSqlParser.PREDICTION_SET:
+ case PlSqlParser.CUME_DIST:
+ case PlSqlParser.DENSE_RANK:
+ case PlSqlParser.LISTAGG:
+ case PlSqlParser.PERCENT_RANK:
+ case PlSqlParser.PERCENTILE_CONT:
+ case PlSqlParser.PERCENTILE_DISC:
+ case PlSqlParser.RANK:
+ case PlSqlParser.AVG:
+ case PlSqlParser.CORR:
+ case PlSqlParser.COVAR_:
+ case PlSqlParser.LAG:
+ case PlSqlParser.LEAD:
+ case PlSqlParser.MAX:
+ case PlSqlParser.MEDIAN:
+ case PlSqlParser.MIN:
+ case PlSqlParser.NTILE:
+ case PlSqlParser.NVL:
+ case PlSqlParser.RATIO_TO_REPORT:
+ case PlSqlParser.REGR_:
+ case PlSqlParser.ROUND:
+ case PlSqlParser.ROW_NUMBER:
+ case PlSqlParser.SUBSTR:
+ case PlSqlParser.TO_CHAR:
+ case PlSqlParser.TRIM:
+ case PlSqlParser.SUM:
+ case PlSqlParser.STDDEV:
+ case PlSqlParser.VAR_:
+ case PlSqlParser.VARIANCE:
+ case PlSqlParser.LEAST:
+ case PlSqlParser.GREATEST:
+ case PlSqlParser.TO_DATE:
+ case PlSqlParser.PERIOD:
+ case PlSqlParser.REGULAR_ID:
+ this.state = 3869;
+ this.statistics_type_name();
+ break;
+ case PlSqlParser.NULL_:
+ this.state = 3870;
+ this.match(PlSqlParser.NULL_);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Statistics_type_nameContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_statistics_type_name;
+ return this;
+}
+
+Statistics_type_nameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Statistics_type_nameContext.prototype.constructor = Statistics_type_nameContext;
+
+Statistics_type_nameContext.prototype.regular_id = function() {
+ return this.getTypedRuleContext(Regular_idContext,0);
+};
+
+Statistics_type_nameContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterStatistics_type_name(this);
+ }
+};
+
+Statistics_type_nameContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitStatistics_type_name(this);
+ }
+};
+
+Statistics_type_nameContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitStatistics_type_name(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Statistics_type_nameContext = Statistics_type_nameContext;
+
+PlSqlParser.prototype.statistics_type_name = function() {
+
+ var localctx = new Statistics_type_nameContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 332, PlSqlParser.RULE_statistics_type_name);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3873;
+ this.regular_id();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Default_cost_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_default_cost_clause;
+ return this;
+}
+
+Default_cost_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Default_cost_clauseContext.prototype.constructor = Default_cost_clauseContext;
+
+Default_cost_clauseContext.prototype.DEFAULT = function() {
+ return this.getToken(PlSqlParser.DEFAULT, 0);
+};
+
+Default_cost_clauseContext.prototype.COST = function() {
+ return this.getToken(PlSqlParser.COST, 0);
+};
+
+Default_cost_clauseContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Default_cost_clauseContext.prototype.cpu_cost = function() {
+ return this.getTypedRuleContext(Cpu_costContext,0);
+};
+
+Default_cost_clauseContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Default_cost_clauseContext.prototype.io_cost = function() {
+ return this.getTypedRuleContext(Io_costContext,0);
+};
+
+Default_cost_clauseContext.prototype.network_cost = function() {
+ return this.getTypedRuleContext(Network_costContext,0);
+};
+
+Default_cost_clauseContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Default_cost_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterDefault_cost_clause(this);
+ }
+};
+
+Default_cost_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitDefault_cost_clause(this);
+ }
+};
+
+Default_cost_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitDefault_cost_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Default_cost_clauseContext = Default_cost_clauseContext;
+
+PlSqlParser.prototype.default_cost_clause = function() {
+
+ var localctx = new Default_cost_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 334, PlSqlParser.RULE_default_cost_clause);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3875;
+ this.match(PlSqlParser.DEFAULT);
+ this.state = 3876;
+ this.match(PlSqlParser.COST);
+ this.state = 3877;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 3878;
+ this.cpu_cost();
+ this.state = 3879;
+ this.match(PlSqlParser.COMMA);
+ this.state = 3880;
+ this.io_cost();
+ this.state = 3881;
+ this.match(PlSqlParser.COMMA);
+ this.state = 3882;
+ this.network_cost();
+ this.state = 3883;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Cpu_costContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_cpu_cost;
+ return this;
+}
+
+Cpu_costContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Cpu_costContext.prototype.constructor = Cpu_costContext;
+
+Cpu_costContext.prototype.UNSIGNED_INTEGER = function() {
+ return this.getToken(PlSqlParser.UNSIGNED_INTEGER, 0);
+};
+
+Cpu_costContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterCpu_cost(this);
+ }
+};
+
+Cpu_costContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitCpu_cost(this);
+ }
+};
+
+Cpu_costContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitCpu_cost(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Cpu_costContext = Cpu_costContext;
+
+PlSqlParser.prototype.cpu_cost = function() {
+
+ var localctx = new Cpu_costContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 336, PlSqlParser.RULE_cpu_cost);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3885;
+ this.match(PlSqlParser.UNSIGNED_INTEGER);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Io_costContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_io_cost;
+ return this;
+}
+
+Io_costContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Io_costContext.prototype.constructor = Io_costContext;
+
+Io_costContext.prototype.UNSIGNED_INTEGER = function() {
+ return this.getToken(PlSqlParser.UNSIGNED_INTEGER, 0);
+};
+
+Io_costContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterIo_cost(this);
+ }
+};
+
+Io_costContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitIo_cost(this);
+ }
+};
+
+Io_costContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitIo_cost(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Io_costContext = Io_costContext;
+
+PlSqlParser.prototype.io_cost = function() {
+
+ var localctx = new Io_costContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 338, PlSqlParser.RULE_io_cost);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3887;
+ this.match(PlSqlParser.UNSIGNED_INTEGER);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Network_costContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_network_cost;
+ return this;
+}
+
+Network_costContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Network_costContext.prototype.constructor = Network_costContext;
+
+Network_costContext.prototype.UNSIGNED_INTEGER = function() {
+ return this.getToken(PlSqlParser.UNSIGNED_INTEGER, 0);
+};
+
+Network_costContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterNetwork_cost(this);
+ }
+};
+
+Network_costContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitNetwork_cost(this);
+ }
+};
+
+Network_costContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitNetwork_cost(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Network_costContext = Network_costContext;
+
+PlSqlParser.prototype.network_cost = function() {
+
+ var localctx = new Network_costContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 340, PlSqlParser.RULE_network_cost);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3889;
+ this.match(PlSqlParser.UNSIGNED_INTEGER);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Default_selectivity_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_default_selectivity_clause;
+ return this;
+}
+
+Default_selectivity_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Default_selectivity_clauseContext.prototype.constructor = Default_selectivity_clauseContext;
+
+Default_selectivity_clauseContext.prototype.DEFAULT = function() {
+ return this.getToken(PlSqlParser.DEFAULT, 0);
+};
+
+Default_selectivity_clauseContext.prototype.SELECTIVITY = function() {
+ return this.getToken(PlSqlParser.SELECTIVITY, 0);
+};
+
+Default_selectivity_clauseContext.prototype.default_selectivity = function() {
+ return this.getTypedRuleContext(Default_selectivityContext,0);
+};
+
+Default_selectivity_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterDefault_selectivity_clause(this);
+ }
+};
+
+Default_selectivity_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitDefault_selectivity_clause(this);
+ }
+};
+
+Default_selectivity_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitDefault_selectivity_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Default_selectivity_clauseContext = Default_selectivity_clauseContext;
+
+PlSqlParser.prototype.default_selectivity_clause = function() {
+
+ var localctx = new Default_selectivity_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 342, PlSqlParser.RULE_default_selectivity_clause);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3891;
+ this.match(PlSqlParser.DEFAULT);
+ this.state = 3892;
+ this.match(PlSqlParser.SELECTIVITY);
+ this.state = 3893;
+ this.default_selectivity();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Default_selectivityContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_default_selectivity;
+ return this;
+}
+
+Default_selectivityContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Default_selectivityContext.prototype.constructor = Default_selectivityContext;
+
+Default_selectivityContext.prototype.UNSIGNED_INTEGER = function() {
+ return this.getToken(PlSqlParser.UNSIGNED_INTEGER, 0);
+};
+
+Default_selectivityContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterDefault_selectivity(this);
+ }
+};
+
+Default_selectivityContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitDefault_selectivity(this);
+ }
+};
+
+Default_selectivityContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitDefault_selectivity(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Default_selectivityContext = Default_selectivityContext;
+
+PlSqlParser.prototype.default_selectivity = function() {
+
+ var localctx = new Default_selectivityContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 344, PlSqlParser.RULE_default_selectivity);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3895;
+ this.match(PlSqlParser.UNSIGNED_INTEGER);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Storage_table_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_storage_table_clause;
+ return this;
+}
+
+Storage_table_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Storage_table_clauseContext.prototype.constructor = Storage_table_clauseContext;
+
+Storage_table_clauseContext.prototype.WITH = function() {
+ return this.getToken(PlSqlParser.WITH, 0);
+};
+
+Storage_table_clauseContext.prototype.MANAGED = function() {
+ return this.getToken(PlSqlParser.MANAGED, 0);
+};
+
+Storage_table_clauseContext.prototype.STORAGE = function() {
+ return this.getToken(PlSqlParser.STORAGE, 0);
+};
+
+Storage_table_clauseContext.prototype.TABLES = function() {
+ return this.getToken(PlSqlParser.TABLES, 0);
+};
+
+Storage_table_clauseContext.prototype.SYSTEM = function() {
+ return this.getToken(PlSqlParser.SYSTEM, 0);
+};
+
+Storage_table_clauseContext.prototype.USER = function() {
+ return this.getToken(PlSqlParser.USER, 0);
+};
+
+Storage_table_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterStorage_table_clause(this);
+ }
+};
+
+Storage_table_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitStorage_table_clause(this);
+ }
+};
+
+Storage_table_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitStorage_table_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Storage_table_clauseContext = Storage_table_clauseContext;
+
+PlSqlParser.prototype.storage_table_clause = function() {
+
+ var localctx = new Storage_table_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 346, PlSqlParser.RULE_storage_table_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3897;
+ this.match(PlSqlParser.WITH);
+ this.state = 3898;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.SYSTEM || _la===PlSqlParser.USER)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 3899;
+ this.match(PlSqlParser.MANAGED);
+ this.state = 3900;
+ this.match(PlSqlParser.STORAGE);
+ this.state = 3901;
+ this.match(PlSqlParser.TABLES);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Unified_auditingContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_unified_auditing;
+ return this;
+}
+
+Unified_auditingContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Unified_auditingContext.prototype.constructor = Unified_auditingContext;
+
+Unified_auditingContext.prototype.AUDIT = function() {
+ return this.getToken(PlSqlParser.AUDIT, 0);
+};
+
+Unified_auditingContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Unified_auditingContext.prototype.POLICY = function() {
+ return this.getToken(PlSqlParser.POLICY, 0);
+};
+
+Unified_auditingContext.prototype.policy_name = function() {
+ return this.getTypedRuleContext(Policy_nameContext,0);
+};
+
+Unified_auditingContext.prototype.CONTEXT = function() {
+ return this.getToken(PlSqlParser.CONTEXT, 0);
+};
+
+Unified_auditingContext.prototype.NAMESPACE = function() {
+ return this.getToken(PlSqlParser.NAMESPACE, 0);
+};
+
+Unified_auditingContext.prototype.oracle_namespace = function() {
+ return this.getTypedRuleContext(Oracle_namespaceContext,0);
+};
+
+Unified_auditingContext.prototype.ATTRIBUTES = function() {
+ return this.getToken(PlSqlParser.ATTRIBUTES, 0);
+};
+
+Unified_auditingContext.prototype.attribute_name = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Attribute_nameContext);
+ } else {
+ return this.getTypedRuleContext(Attribute_nameContext,i);
+ }
+};
+
+Unified_auditingContext.prototype.audit_user = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Audit_userContext);
+ } else {
+ return this.getTypedRuleContext(Audit_userContext,i);
+ }
+};
+
+Unified_auditingContext.prototype.WHENEVER = function() {
+ return this.getToken(PlSqlParser.WHENEVER, 0);
+};
+
+Unified_auditingContext.prototype.SUCCESSFUL = function() {
+ return this.getToken(PlSqlParser.SUCCESSFUL, 0);
+};
+
+Unified_auditingContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Unified_auditingContext.prototype.BY = function() {
+ return this.getToken(PlSqlParser.BY, 0);
+};
+
+Unified_auditingContext.prototype.EXCEPT = function() {
+ return this.getToken(PlSqlParser.EXCEPT, 0);
+};
+
+Unified_auditingContext.prototype.NOT = function() {
+ return this.getToken(PlSqlParser.NOT, 0);
+};
+
+Unified_auditingContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterUnified_auditing(this);
+ }
+};
+
+Unified_auditingContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitUnified_auditing(this);
+ }
+};
+
+Unified_auditingContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitUnified_auditing(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Unified_auditingContext = Unified_auditingContext;
+
+PlSqlParser.prototype.unified_auditing = function() {
+
+ var localctx = new Unified_auditingContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 348, PlSqlParser.RULE_unified_auditing);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3903;
+ if (!( this.isVersion12())) {
+ throw new antlr4.error.FailedPredicateException(this, "this.isVersion12()");
+ }
+ this.state = 3904;
+ this.match(PlSqlParser.AUDIT);
+ this.state = 3948;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.POLICY:
+ this.state = 3905;
+ this.match(PlSqlParser.POLICY);
+ this.state = 3906;
+ this.policy_name();
+ this.state = 3916;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.BY || _la===PlSqlParser.EXCEPT) {
+ this.state = 3907;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.BY || _la===PlSqlParser.EXCEPT)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 3908;
+ this.audit_user();
+ this.state = 3913;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 3909;
+ this.match(PlSqlParser.COMMA);
+ this.state = 3910;
+ this.audit_user();
+ this.state = 3915;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ }
+
+ this.state = 3923;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.WHENEVER) {
+ this.state = 3918;
+ this.match(PlSqlParser.WHENEVER);
+ this.state = 3920;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.NOT) {
+ this.state = 3919;
+ this.match(PlSqlParser.NOT);
+ }
+
+ this.state = 3922;
+ this.match(PlSqlParser.SUCCESSFUL);
+ }
+
+ break;
+ case PlSqlParser.CONTEXT:
+ this.state = 3925;
+ this.match(PlSqlParser.CONTEXT);
+ this.state = 3926;
+ this.match(PlSqlParser.NAMESPACE);
+ this.state = 3927;
+ this.oracle_namespace();
+ this.state = 3928;
+ this.match(PlSqlParser.ATTRIBUTES);
+ this.state = 3929;
+ this.attribute_name();
+ this.state = 3934;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 3930;
+ this.match(PlSqlParser.COMMA);
+ this.state = 3931;
+ this.attribute_name();
+ this.state = 3936;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 3946;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.BY) {
+ this.state = 3937;
+ this.match(PlSqlParser.BY);
+ this.state = 3938;
+ this.audit_user();
+ this.state = 3943;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 3939;
+ this.match(PlSqlParser.COMMA);
+ this.state = 3940;
+ this.audit_user();
+ this.state = 3945;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ }
+
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 3950;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Policy_nameContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_policy_name;
+ return this;
+}
+
+Policy_nameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Policy_nameContext.prototype.constructor = Policy_nameContext;
+
+Policy_nameContext.prototype.identifier = function() {
+ return this.getTypedRuleContext(IdentifierContext,0);
+};
+
+Policy_nameContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterPolicy_name(this);
+ }
+};
+
+Policy_nameContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitPolicy_name(this);
+ }
+};
+
+Policy_nameContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitPolicy_name(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Policy_nameContext = Policy_nameContext;
+
+PlSqlParser.prototype.policy_name = function() {
+
+ var localctx = new Policy_nameContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 350, PlSqlParser.RULE_policy_name);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3952;
+ this.identifier();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Audit_traditionalContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_audit_traditional;
+ return this;
+}
+
+Audit_traditionalContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Audit_traditionalContext.prototype.constructor = Audit_traditionalContext;
+
+Audit_traditionalContext.prototype.AUDIT = function() {
+ return this.getToken(PlSqlParser.AUDIT, 0);
+};
+
+Audit_traditionalContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Audit_traditionalContext.prototype.audit_operation_clause = function() {
+ return this.getTypedRuleContext(Audit_operation_clauseContext,0);
+};
+
+Audit_traditionalContext.prototype.audit_schema_object_clause = function() {
+ return this.getTypedRuleContext(Audit_schema_object_clauseContext,0);
+};
+
+Audit_traditionalContext.prototype.NETWORK = function() {
+ return this.getToken(PlSqlParser.NETWORK, 0);
+};
+
+Audit_traditionalContext.prototype.audit_direct_path = function() {
+ return this.getTypedRuleContext(Audit_direct_pathContext,0);
+};
+
+Audit_traditionalContext.prototype.BY = function() {
+ return this.getToken(PlSqlParser.BY, 0);
+};
+
+Audit_traditionalContext.prototype.WHENEVER = function() {
+ return this.getToken(PlSqlParser.WHENEVER, 0);
+};
+
+Audit_traditionalContext.prototype.SUCCESSFUL = function() {
+ return this.getToken(PlSqlParser.SUCCESSFUL, 0);
+};
+
+Audit_traditionalContext.prototype.audit_container_clause = function() {
+ return this.getTypedRuleContext(Audit_container_clauseContext,0);
+};
+
+Audit_traditionalContext.prototype.SESSION = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.SESSION);
+ } else {
+ return this.getToken(PlSqlParser.SESSION, i);
+ }
+};
+
+
+Audit_traditionalContext.prototype.ACCESS = function() {
+ return this.getToken(PlSqlParser.ACCESS, 0);
+};
+
+Audit_traditionalContext.prototype.auditing_by_clause = function() {
+ return this.getTypedRuleContext(Auditing_by_clauseContext,0);
+};
+
+Audit_traditionalContext.prototype.IN = function() {
+ return this.getToken(PlSqlParser.IN, 0);
+};
+
+Audit_traditionalContext.prototype.CURRENT = function() {
+ return this.getToken(PlSqlParser.CURRENT, 0);
+};
+
+Audit_traditionalContext.prototype.NOT = function() {
+ return this.getToken(PlSqlParser.NOT, 0);
+};
+
+Audit_traditionalContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAudit_traditional(this);
+ }
+};
+
+Audit_traditionalContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAudit_traditional(this);
+ }
+};
+
+Audit_traditionalContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAudit_traditional(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Audit_traditionalContext = Audit_traditionalContext;
+
+PlSqlParser.prototype.audit_traditional = function() {
+
+ var localctx = new Audit_traditionalContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 352, PlSqlParser.RULE_audit_traditional);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3954;
+ this.match(PlSqlParser.AUDIT);
+ this.state = 3965;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,359,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 3955;
+ this.audit_operation_clause();
+ this.state = 3960;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,358,this._ctx);
+ if(la_===1) {
+ this.state = 3956;
+ this.auditing_by_clause();
+
+ } else if(la_===2) {
+ this.state = 3957;
+ this.match(PlSqlParser.IN);
+ this.state = 3958;
+ this.match(PlSqlParser.SESSION);
+ this.state = 3959;
+ this.match(PlSqlParser.CURRENT);
+
+ }
+ break;
+
+ case 2:
+ this.state = 3962;
+ this.audit_schema_object_clause();
+ break;
+
+ case 3:
+ this.state = 3963;
+ this.match(PlSqlParser.NETWORK);
+ break;
+
+ case 4:
+ this.state = 3964;
+ this.audit_direct_path();
+ break;
+
+ }
+ this.state = 3969;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,360,this._ctx);
+ if(la_===1) {
+ this.state = 3967;
+ this.match(PlSqlParser.BY);
+ this.state = 3968;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.ACCESS || _la===PlSqlParser.SESSION)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+
+ }
+ this.state = 3976;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,362,this._ctx);
+ if(la_===1) {
+ this.state = 3971;
+ this.match(PlSqlParser.WHENEVER);
+ this.state = 3973;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.NOT) {
+ this.state = 3972;
+ this.match(PlSqlParser.NOT);
+ }
+
+ this.state = 3975;
+ this.match(PlSqlParser.SUCCESSFUL);
+
+ }
+ this.state = 3979;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,363,this._ctx);
+ if(la_===1) {
+ this.state = 3978;
+ this.audit_container_clause();
+
+ }
+ this.state = 3981;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Audit_direct_pathContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_audit_direct_path;
+ return this;
+}
+
+Audit_direct_pathContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Audit_direct_pathContext.prototype.constructor = Audit_direct_pathContext;
+
+Audit_direct_pathContext.prototype.DIRECT_PATH = function() {
+ return this.getToken(PlSqlParser.DIRECT_PATH, 0);
+};
+
+Audit_direct_pathContext.prototype.auditing_by_clause = function() {
+ return this.getTypedRuleContext(Auditing_by_clauseContext,0);
+};
+
+Audit_direct_pathContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAudit_direct_path(this);
+ }
+};
+
+Audit_direct_pathContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAudit_direct_path(this);
+ }
+};
+
+Audit_direct_pathContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAudit_direct_path(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Audit_direct_pathContext = Audit_direct_pathContext;
+
+PlSqlParser.prototype.audit_direct_path = function() {
+
+ var localctx = new Audit_direct_pathContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 354, PlSqlParser.RULE_audit_direct_path);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3983;
+ if (!( this.isVersion12())) {
+ throw new antlr4.error.FailedPredicateException(this, "this.isVersion12()");
+ }
+ this.state = 3984;
+ this.match(PlSqlParser.DIRECT_PATH);
+ this.state = 3985;
+ this.auditing_by_clause();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Audit_container_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_audit_container_clause;
+ return this;
+}
+
+Audit_container_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Audit_container_clauseContext.prototype.constructor = Audit_container_clauseContext;
+
+Audit_container_clauseContext.prototype.CONTAINER = function() {
+ return this.getToken(PlSqlParser.CONTAINER, 0);
+};
+
+Audit_container_clauseContext.prototype.EQUALS_OP = function() {
+ return this.getToken(PlSqlParser.EQUALS_OP, 0);
+};
+
+Audit_container_clauseContext.prototype.CURRENT = function() {
+ return this.getToken(PlSqlParser.CURRENT, 0);
+};
+
+Audit_container_clauseContext.prototype.ALL = function() {
+ return this.getToken(PlSqlParser.ALL, 0);
+};
+
+Audit_container_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAudit_container_clause(this);
+ }
+};
+
+Audit_container_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAudit_container_clause(this);
+ }
+};
+
+Audit_container_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAudit_container_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Audit_container_clauseContext = Audit_container_clauseContext;
+
+PlSqlParser.prototype.audit_container_clause = function() {
+
+ var localctx = new Audit_container_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 356, PlSqlParser.RULE_audit_container_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 3987;
+ if (!( this.isVersion12())) {
+ throw new antlr4.error.FailedPredicateException(this, "this.isVersion12()");
+ }
+
+ this.state = 3988;
+ this.match(PlSqlParser.CONTAINER);
+ this.state = 3989;
+ this.match(PlSqlParser.EQUALS_OP);
+ this.state = 3990;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.ALL || _la===PlSqlParser.CURRENT)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Audit_operation_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_audit_operation_clause;
+ return this;
+}
+
+Audit_operation_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Audit_operation_clauseContext.prototype.constructor = Audit_operation_clauseContext;
+
+Audit_operation_clauseContext.prototype.sql_statement_shortcut = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Sql_statement_shortcutContext);
+ } else {
+ return this.getTypedRuleContext(Sql_statement_shortcutContext,i);
+ }
+};
+
+Audit_operation_clauseContext.prototype.ALL = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.ALL);
+ } else {
+ return this.getToken(PlSqlParser.ALL, i);
+ }
+};
+
+
+Audit_operation_clauseContext.prototype.system_privilege = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(System_privilegeContext);
+ } else {
+ return this.getTypedRuleContext(System_privilegeContext,i);
+ }
+};
+
+Audit_operation_clauseContext.prototype.PRIVILEGES = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.PRIVILEGES);
+ } else {
+ return this.getToken(PlSqlParser.PRIVILEGES, i);
+ }
+};
+
+
+Audit_operation_clauseContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Audit_operation_clauseContext.prototype.STATEMENTS = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.STATEMENTS);
+ } else {
+ return this.getToken(PlSqlParser.STATEMENTS, i);
+ }
+};
+
+
+Audit_operation_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAudit_operation_clause(this);
+ }
+};
+
+Audit_operation_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAudit_operation_clause(this);
+ }
+};
+
+Audit_operation_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAudit_operation_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Audit_operation_clauseContext = Audit_operation_clauseContext;
+
+PlSqlParser.prototype.audit_operation_clause = function() {
+
+ var localctx = new Audit_operation_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 358, PlSqlParser.RULE_audit_operation_clause);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4028;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,372,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 3997;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,365,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 3992;
+ this.sql_statement_shortcut();
+ break;
+
+ case 2:
+ this.state = 3993;
+ this.match(PlSqlParser.ALL);
+ this.state = 3995;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,364,this._ctx);
+ if(la_===1) {
+ this.state = 3994;
+ this.match(PlSqlParser.STATEMENTS);
+
+ }
+ break;
+
+ }
+ this.state = 4009;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,368,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 3999;
+ this.match(PlSqlParser.COMMA);
+ this.state = 4005;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,367,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 4000;
+ this.sql_statement_shortcut();
+ break;
+
+ case 2:
+ this.state = 4001;
+ this.match(PlSqlParser.ALL);
+ this.state = 4003;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,366,this._ctx);
+ if(la_===1) {
+ this.state = 4002;
+ this.match(PlSqlParser.STATEMENTS);
+
+ }
+ break;
+
+ }
+ }
+ this.state = 4011;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,368,this._ctx);
+ }
+
+ break;
+
+ case 2:
+ this.state = 4015;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,369,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 4012;
+ this.system_privilege();
+ break;
+
+ case 2:
+ this.state = 4013;
+ this.match(PlSqlParser.ALL);
+ this.state = 4014;
+ this.match(PlSqlParser.PRIVILEGES);
+ break;
+
+ }
+ this.state = 4025;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,371,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 4017;
+ this.match(PlSqlParser.COMMA);
+ this.state = 4021;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,370,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 4018;
+ this.system_privilege();
+ break;
+
+ case 2:
+ this.state = 4019;
+ this.match(PlSqlParser.ALL);
+ this.state = 4020;
+ this.match(PlSqlParser.PRIVILEGES);
+ break;
+
+ }
+ }
+ this.state = 4027;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,371,this._ctx);
+ }
+
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Auditing_by_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_auditing_by_clause;
+ return this;
+}
+
+Auditing_by_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Auditing_by_clauseContext.prototype.constructor = Auditing_by_clauseContext;
+
+Auditing_by_clauseContext.prototype.BY = function() {
+ return this.getToken(PlSqlParser.BY, 0);
+};
+
+Auditing_by_clauseContext.prototype.audit_user = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Audit_userContext);
+ } else {
+ return this.getTypedRuleContext(Audit_userContext,i);
+ }
+};
+
+Auditing_by_clauseContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Auditing_by_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAuditing_by_clause(this);
+ }
+};
+
+Auditing_by_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAuditing_by_clause(this);
+ }
+};
+
+Auditing_by_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAuditing_by_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Auditing_by_clauseContext = Auditing_by_clauseContext;
+
+PlSqlParser.prototype.auditing_by_clause = function() {
+
+ var localctx = new Auditing_by_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 360, PlSqlParser.RULE_auditing_by_clause);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4030;
+ this.match(PlSqlParser.BY);
+ this.state = 4031;
+ this.audit_user();
+ this.state = 4036;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,373,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 4032;
+ this.match(PlSqlParser.COMMA);
+ this.state = 4033;
+ this.audit_user();
+ }
+ this.state = 4038;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,373,this._ctx);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Audit_userContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_audit_user;
+ return this;
+}
+
+Audit_userContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Audit_userContext.prototype.constructor = Audit_userContext;
+
+Audit_userContext.prototype.regular_id = function() {
+ return this.getTypedRuleContext(Regular_idContext,0);
+};
+
+Audit_userContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAudit_user(this);
+ }
+};
+
+Audit_userContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAudit_user(this);
+ }
+};
+
+Audit_userContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAudit_user(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Audit_userContext = Audit_userContext;
+
+PlSqlParser.prototype.audit_user = function() {
+
+ var localctx = new Audit_userContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 362, PlSqlParser.RULE_audit_user);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4039;
+ this.regular_id();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Audit_schema_object_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_audit_schema_object_clause;
+ return this;
+}
+
+Audit_schema_object_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Audit_schema_object_clauseContext.prototype.constructor = Audit_schema_object_clauseContext;
+
+Audit_schema_object_clauseContext.prototype.auditing_on_clause = function() {
+ return this.getTypedRuleContext(Auditing_on_clauseContext,0);
+};
+
+Audit_schema_object_clauseContext.prototype.sql_operation = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Sql_operationContext);
+ } else {
+ return this.getTypedRuleContext(Sql_operationContext,i);
+ }
+};
+
+Audit_schema_object_clauseContext.prototype.ALL = function() {
+ return this.getToken(PlSqlParser.ALL, 0);
+};
+
+Audit_schema_object_clauseContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Audit_schema_object_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAudit_schema_object_clause(this);
+ }
+};
+
+Audit_schema_object_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAudit_schema_object_clause(this);
+ }
+};
+
+Audit_schema_object_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAudit_schema_object_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Audit_schema_object_clauseContext = Audit_schema_object_clauseContext;
+
+PlSqlParser.prototype.audit_schema_object_clause = function() {
+
+ var localctx = new Audit_schema_object_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 364, PlSqlParser.RULE_audit_schema_object_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4050;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.ALTER:
+ case PlSqlParser.AUDIT:
+ case PlSqlParser.COMMENT:
+ case PlSqlParser.DELETE:
+ case PlSqlParser.EXECUTE:
+ case PlSqlParser.FLASHBACK:
+ case PlSqlParser.GRANT:
+ case PlSqlParser.INDEX:
+ case PlSqlParser.INSERT:
+ case PlSqlParser.LOCK:
+ case PlSqlParser.READ:
+ case PlSqlParser.RENAME:
+ case PlSqlParser.SELECT:
+ case PlSqlParser.UPDATE:
+ this.state = 4041;
+ this.sql_operation();
+ this.state = 4046;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 4042;
+ this.match(PlSqlParser.COMMA);
+ this.state = 4043;
+ this.sql_operation();
+ this.state = 4048;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+ case PlSqlParser.ALL:
+ this.state = 4049;
+ this.match(PlSqlParser.ALL);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 4052;
+ this.auditing_on_clause();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Sql_operationContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_sql_operation;
+ return this;
+}
+
+Sql_operationContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Sql_operationContext.prototype.constructor = Sql_operationContext;
+
+Sql_operationContext.prototype.ALTER = function() {
+ return this.getToken(PlSqlParser.ALTER, 0);
+};
+
+Sql_operationContext.prototype.AUDIT = function() {
+ return this.getToken(PlSqlParser.AUDIT, 0);
+};
+
+Sql_operationContext.prototype.COMMENT = function() {
+ return this.getToken(PlSqlParser.COMMENT, 0);
+};
+
+Sql_operationContext.prototype.DELETE = function() {
+ return this.getToken(PlSqlParser.DELETE, 0);
+};
+
+Sql_operationContext.prototype.EXECUTE = function() {
+ return this.getToken(PlSqlParser.EXECUTE, 0);
+};
+
+Sql_operationContext.prototype.FLASHBACK = function() {
+ return this.getToken(PlSqlParser.FLASHBACK, 0);
+};
+
+Sql_operationContext.prototype.GRANT = function() {
+ return this.getToken(PlSqlParser.GRANT, 0);
+};
+
+Sql_operationContext.prototype.INDEX = function() {
+ return this.getToken(PlSqlParser.INDEX, 0);
+};
+
+Sql_operationContext.prototype.INSERT = function() {
+ return this.getToken(PlSqlParser.INSERT, 0);
+};
+
+Sql_operationContext.prototype.LOCK = function() {
+ return this.getToken(PlSqlParser.LOCK, 0);
+};
+
+Sql_operationContext.prototype.READ = function() {
+ return this.getToken(PlSqlParser.READ, 0);
+};
+
+Sql_operationContext.prototype.RENAME = function() {
+ return this.getToken(PlSqlParser.RENAME, 0);
+};
+
+Sql_operationContext.prototype.SELECT = function() {
+ return this.getToken(PlSqlParser.SELECT, 0);
+};
+
+Sql_operationContext.prototype.UPDATE = function() {
+ return this.getToken(PlSqlParser.UPDATE, 0);
+};
+
+Sql_operationContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterSql_operation(this);
+ }
+};
+
+Sql_operationContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitSql_operation(this);
+ }
+};
+
+Sql_operationContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitSql_operation(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Sql_operationContext = Sql_operationContext;
+
+PlSqlParser.prototype.sql_operation = function() {
+
+ var localctx = new Sql_operationContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 366, PlSqlParser.RULE_sql_operation);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4054;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.ALTER || _la===PlSqlParser.AUDIT || _la===PlSqlParser.COMMENT || _la===PlSqlParser.DELETE || _la===PlSqlParser.EXECUTE || _la===PlSqlParser.FLASHBACK || _la===PlSqlParser.GRANT || _la===PlSqlParser.INDEX || _la===PlSqlParser.INSERT || _la===PlSqlParser.LOCK || _la===PlSqlParser.READ || _la===PlSqlParser.RENAME || _la===PlSqlParser.SELECT || _la===PlSqlParser.UPDATE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Auditing_on_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_auditing_on_clause;
+ return this;
+}
+
+Auditing_on_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Auditing_on_clauseContext.prototype.constructor = Auditing_on_clauseContext;
+
+Auditing_on_clauseContext.prototype.ON = function() {
+ return this.getToken(PlSqlParser.ON, 0);
+};
+
+Auditing_on_clauseContext.prototype.object_name = function() {
+ return this.getTypedRuleContext(Object_nameContext,0);
+};
+
+Auditing_on_clauseContext.prototype.DIRECTORY = function() {
+ return this.getToken(PlSqlParser.DIRECTORY, 0);
+};
+
+Auditing_on_clauseContext.prototype.regular_id = function() {
+ return this.getTypedRuleContext(Regular_idContext,0);
+};
+
+Auditing_on_clauseContext.prototype.MINING = function() {
+ return this.getToken(PlSqlParser.MINING, 0);
+};
+
+Auditing_on_clauseContext.prototype.MODEL = function() {
+ return this.getToken(PlSqlParser.MODEL, 0);
+};
+
+Auditing_on_clauseContext.prototype.model_name = function() {
+ return this.getTypedRuleContext(Model_nameContext,0);
+};
+
+Auditing_on_clauseContext.prototype.SQL = function() {
+ return this.getToken(PlSqlParser.SQL, 0);
+};
+
+Auditing_on_clauseContext.prototype.TRANSLATION = function() {
+ return this.getToken(PlSqlParser.TRANSLATION, 0);
+};
+
+Auditing_on_clauseContext.prototype.PROFILE = function() {
+ return this.getToken(PlSqlParser.PROFILE, 0);
+};
+
+Auditing_on_clauseContext.prototype.profile_name = function() {
+ return this.getTypedRuleContext(Profile_nameContext,0);
+};
+
+Auditing_on_clauseContext.prototype.DEFAULT = function() {
+ return this.getToken(PlSqlParser.DEFAULT, 0);
+};
+
+Auditing_on_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAuditing_on_clause(this);
+ }
+};
+
+Auditing_on_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAuditing_on_clause(this);
+ }
+};
+
+Auditing_on_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAuditing_on_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Auditing_on_clauseContext = Auditing_on_clauseContext;
+
+PlSqlParser.prototype.auditing_on_clause = function() {
+
+ var localctx = new Auditing_on_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 368, PlSqlParser.RULE_auditing_on_clause);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4056;
+ this.match(PlSqlParser.ON);
+ this.state = 4069;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,376,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 4057;
+ this.object_name();
+ break;
+
+ case 2:
+ this.state = 4058;
+ this.match(PlSqlParser.DIRECTORY);
+ this.state = 4059;
+ this.regular_id();
+ break;
+
+ case 3:
+ this.state = 4060;
+ this.match(PlSqlParser.MINING);
+ this.state = 4061;
+ this.match(PlSqlParser.MODEL);
+ this.state = 4062;
+ this.model_name();
+ break;
+
+ case 4:
+ this.state = 4063;
+ if (!( this.isVersion12())) {
+ throw new antlr4.error.FailedPredicateException(this, "this.isVersion12()");
+ }
+ this.state = 4064;
+ this.match(PlSqlParser.SQL);
+ this.state = 4065;
+ this.match(PlSqlParser.TRANSLATION);
+ this.state = 4066;
+ this.match(PlSqlParser.PROFILE);
+ this.state = 4067;
+ this.profile_name();
+ break;
+
+ case 5:
+ this.state = 4068;
+ this.match(PlSqlParser.DEFAULT);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Model_nameContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_model_name;
+ return this;
+}
+
+Model_nameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Model_nameContext.prototype.constructor = Model_nameContext;
+
+Model_nameContext.prototype.id_expression = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Id_expressionContext);
+ } else {
+ return this.getTypedRuleContext(Id_expressionContext,i);
+ }
+};
+
+Model_nameContext.prototype.PERIOD = function() {
+ return this.getToken(PlSqlParser.PERIOD, 0);
+};
+
+Model_nameContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterModel_name(this);
+ }
+};
+
+Model_nameContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitModel_name(this);
+ }
+};
+
+Model_nameContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitModel_name(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Model_nameContext = Model_nameContext;
+
+PlSqlParser.prototype.model_name = function() {
+
+ var localctx = new Model_nameContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 370, PlSqlParser.RULE_model_name);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4074;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,377,this._ctx);
+ if(la_===1) {
+ this.state = 4071;
+ this.id_expression();
+ this.state = 4072;
+ this.match(PlSqlParser.PERIOD);
+
+ }
+ this.state = 4076;
+ this.id_expression();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Object_nameContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_object_name;
+ return this;
+}
+
+Object_nameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Object_nameContext.prototype.constructor = Object_nameContext;
+
+Object_nameContext.prototype.id_expression = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Id_expressionContext);
+ } else {
+ return this.getTypedRuleContext(Id_expressionContext,i);
+ }
+};
+
+Object_nameContext.prototype.PERIOD = function() {
+ return this.getToken(PlSqlParser.PERIOD, 0);
+};
+
+Object_nameContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterObject_name(this);
+ }
+};
+
+Object_nameContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitObject_name(this);
+ }
+};
+
+Object_nameContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitObject_name(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Object_nameContext = Object_nameContext;
+
+PlSqlParser.prototype.object_name = function() {
+
+ var localctx = new Object_nameContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 372, PlSqlParser.RULE_object_name);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4081;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,378,this._ctx);
+ if(la_===1) {
+ this.state = 4078;
+ this.id_expression();
+ this.state = 4079;
+ this.match(PlSqlParser.PERIOD);
+
+ }
+ this.state = 4083;
+ this.id_expression();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Profile_nameContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_profile_name;
+ return this;
+}
+
+Profile_nameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Profile_nameContext.prototype.constructor = Profile_nameContext;
+
+Profile_nameContext.prototype.id_expression = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Id_expressionContext);
+ } else {
+ return this.getTypedRuleContext(Id_expressionContext,i);
+ }
+};
+
+Profile_nameContext.prototype.PERIOD = function() {
+ return this.getToken(PlSqlParser.PERIOD, 0);
+};
+
+Profile_nameContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterProfile_name(this);
+ }
+};
+
+Profile_nameContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitProfile_name(this);
+ }
+};
+
+Profile_nameContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitProfile_name(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Profile_nameContext = Profile_nameContext;
+
+PlSqlParser.prototype.profile_name = function() {
+
+ var localctx = new Profile_nameContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 374, PlSqlParser.RULE_profile_name);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4088;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,379,this._ctx);
+ if(la_===1) {
+ this.state = 4085;
+ this.id_expression();
+ this.state = 4086;
+ this.match(PlSqlParser.PERIOD);
+
+ }
+ this.state = 4090;
+ this.id_expression();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Sql_statement_shortcutContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_sql_statement_shortcut;
+ return this;
+}
+
+Sql_statement_shortcutContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Sql_statement_shortcutContext.prototype.constructor = Sql_statement_shortcutContext;
+
+Sql_statement_shortcutContext.prototype.ALTER = function() {
+ return this.getToken(PlSqlParser.ALTER, 0);
+};
+
+Sql_statement_shortcutContext.prototype.SYSTEM = function() {
+ return this.getToken(PlSqlParser.SYSTEM, 0);
+};
+
+Sql_statement_shortcutContext.prototype.CLUSTER = function() {
+ return this.getToken(PlSqlParser.CLUSTER, 0);
+};
+
+Sql_statement_shortcutContext.prototype.CONTEXT = function() {
+ return this.getToken(PlSqlParser.CONTEXT, 0);
+};
+
+Sql_statement_shortcutContext.prototype.DATABASE = function() {
+ return this.getToken(PlSqlParser.DATABASE, 0);
+};
+
+Sql_statement_shortcutContext.prototype.LINK = function() {
+ return this.getToken(PlSqlParser.LINK, 0);
+};
+
+Sql_statement_shortcutContext.prototype.DIMENSION = function() {
+ return this.getToken(PlSqlParser.DIMENSION, 0);
+};
+
+Sql_statement_shortcutContext.prototype.DIRECTORY = function() {
+ return this.getToken(PlSqlParser.DIRECTORY, 0);
+};
+
+Sql_statement_shortcutContext.prototype.INDEX = function() {
+ return this.getToken(PlSqlParser.INDEX, 0);
+};
+
+Sql_statement_shortcutContext.prototype.MATERIALIZED = function() {
+ return this.getToken(PlSqlParser.MATERIALIZED, 0);
+};
+
+Sql_statement_shortcutContext.prototype.VIEW = function() {
+ return this.getToken(PlSqlParser.VIEW, 0);
+};
+
+Sql_statement_shortcutContext.prototype.NOT = function() {
+ return this.getToken(PlSqlParser.NOT, 0);
+};
+
+Sql_statement_shortcutContext.prototype.EXISTS = function() {
+ return this.getToken(PlSqlParser.EXISTS, 0);
+};
+
+Sql_statement_shortcutContext.prototype.OUTLINE = function() {
+ return this.getToken(PlSqlParser.OUTLINE, 0);
+};
+
+Sql_statement_shortcutContext.prototype.PLUGGABLE = function() {
+ return this.getToken(PlSqlParser.PLUGGABLE, 0);
+};
+
+Sql_statement_shortcutContext.prototype.PROCEDURE = function() {
+ return this.getToken(PlSqlParser.PROCEDURE, 0);
+};
+
+Sql_statement_shortcutContext.prototype.PROFILE = function() {
+ return this.getToken(PlSqlParser.PROFILE, 0);
+};
+
+Sql_statement_shortcutContext.prototype.PUBLIC = function() {
+ return this.getToken(PlSqlParser.PUBLIC, 0);
+};
+
+Sql_statement_shortcutContext.prototype.SYNONYM = function() {
+ return this.getToken(PlSqlParser.SYNONYM, 0);
+};
+
+Sql_statement_shortcutContext.prototype.ROLE = function() {
+ return this.getToken(PlSqlParser.ROLE, 0);
+};
+
+Sql_statement_shortcutContext.prototype.ROLLBACK = function() {
+ return this.getToken(PlSqlParser.ROLLBACK, 0);
+};
+
+Sql_statement_shortcutContext.prototype.SEGMENT = function() {
+ return this.getToken(PlSqlParser.SEGMENT, 0);
+};
+
+Sql_statement_shortcutContext.prototype.SEQUENCE = function() {
+ return this.getToken(PlSqlParser.SEQUENCE, 0);
+};
+
+Sql_statement_shortcutContext.prototype.SESSION = function() {
+ return this.getToken(PlSqlParser.SESSION, 0);
+};
+
+Sql_statement_shortcutContext.prototype.AUDIT = function() {
+ return this.getToken(PlSqlParser.AUDIT, 0);
+};
+
+Sql_statement_shortcutContext.prototype.GRANT = function() {
+ return this.getToken(PlSqlParser.GRANT, 0);
+};
+
+Sql_statement_shortcutContext.prototype.TABLE = function() {
+ return this.getToken(PlSqlParser.TABLE, 0);
+};
+
+Sql_statement_shortcutContext.prototype.TABLESPACE = function() {
+ return this.getToken(PlSqlParser.TABLESPACE, 0);
+};
+
+Sql_statement_shortcutContext.prototype.TRIGGER = function() {
+ return this.getToken(PlSqlParser.TRIGGER, 0);
+};
+
+Sql_statement_shortcutContext.prototype.TYPE = function() {
+ return this.getToken(PlSqlParser.TYPE, 0);
+};
+
+Sql_statement_shortcutContext.prototype.USER = function() {
+ return this.getToken(PlSqlParser.USER, 0);
+};
+
+Sql_statement_shortcutContext.prototype.COMMENT = function() {
+ return this.getToken(PlSqlParser.COMMENT, 0);
+};
+
+Sql_statement_shortcutContext.prototype.DELETE = function() {
+ return this.getToken(PlSqlParser.DELETE, 0);
+};
+
+Sql_statement_shortcutContext.prototype.EXECUTE = function() {
+ return this.getToken(PlSqlParser.EXECUTE, 0);
+};
+
+Sql_statement_shortcutContext.prototype.INSERT = function() {
+ return this.getToken(PlSqlParser.INSERT, 0);
+};
+
+Sql_statement_shortcutContext.prototype.LOCK = function() {
+ return this.getToken(PlSqlParser.LOCK, 0);
+};
+
+Sql_statement_shortcutContext.prototype.SELECT = function() {
+ return this.getToken(PlSqlParser.SELECT, 0);
+};
+
+Sql_statement_shortcutContext.prototype.UPDATE = function() {
+ return this.getToken(PlSqlParser.UPDATE, 0);
+};
+
+Sql_statement_shortcutContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterSql_statement_shortcut(this);
+ }
+};
+
+Sql_statement_shortcutContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitSql_statement_shortcut(this);
+ }
+};
+
+Sql_statement_shortcutContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitSql_statement_shortcut(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Sql_statement_shortcutContext = Sql_statement_shortcutContext;
+
+PlSqlParser.prototype.sql_statement_shortcut = function() {
+
+ var localctx = new Sql_statement_shortcutContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 376, PlSqlParser.RULE_sql_statement_shortcut);
+ try {
+ this.state = 4162;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,380,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4092;
+ this.match(PlSqlParser.ALTER);
+ this.state = 4093;
+ this.match(PlSqlParser.SYSTEM);
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 4094;
+ this.match(PlSqlParser.CLUSTER);
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 4095;
+ this.match(PlSqlParser.CONTEXT);
+ break;
+
+ case 4:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 4096;
+ this.match(PlSqlParser.DATABASE);
+ this.state = 4097;
+ this.match(PlSqlParser.LINK);
+ break;
+
+ case 5:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 4098;
+ this.match(PlSqlParser.DIMENSION);
+ break;
+
+ case 6:
+ this.enterOuterAlt(localctx, 6);
+ this.state = 4099;
+ this.match(PlSqlParser.DIRECTORY);
+ break;
+
+ case 7:
+ this.enterOuterAlt(localctx, 7);
+ this.state = 4100;
+ this.match(PlSqlParser.INDEX);
+ break;
+
+ case 8:
+ this.enterOuterAlt(localctx, 8);
+ this.state = 4101;
+ this.match(PlSqlParser.MATERIALIZED);
+ this.state = 4102;
+ this.match(PlSqlParser.VIEW);
+ break;
+
+ case 9:
+ this.enterOuterAlt(localctx, 9);
+ this.state = 4103;
+ this.match(PlSqlParser.NOT);
+ this.state = 4104;
+ this.match(PlSqlParser.EXISTS);
+ break;
+
+ case 10:
+ this.enterOuterAlt(localctx, 10);
+ this.state = 4105;
+ this.match(PlSqlParser.OUTLINE);
+ break;
+
+ case 11:
+ this.enterOuterAlt(localctx, 11);
+ this.state = 4106;
+ if (!( this.isVersion12())) {
+ throw new antlr4.error.FailedPredicateException(this, "this.isVersion12()");
+ }
+ this.state = 4107;
+ this.match(PlSqlParser.PLUGGABLE);
+ this.state = 4108;
+ this.match(PlSqlParser.DATABASE);
+ break;
+
+ case 12:
+ this.enterOuterAlt(localctx, 12);
+ this.state = 4109;
+ this.match(PlSqlParser.PROCEDURE);
+ break;
+
+ case 13:
+ this.enterOuterAlt(localctx, 13);
+ this.state = 4110;
+ this.match(PlSqlParser.PROFILE);
+ break;
+
+ case 14:
+ this.enterOuterAlt(localctx, 14);
+ this.state = 4111;
+ this.match(PlSqlParser.PUBLIC);
+ this.state = 4112;
+ this.match(PlSqlParser.DATABASE);
+ this.state = 4113;
+ this.match(PlSqlParser.LINK);
+ break;
+
+ case 15:
+ this.enterOuterAlt(localctx, 15);
+ this.state = 4114;
+ this.match(PlSqlParser.PUBLIC);
+ this.state = 4115;
+ this.match(PlSqlParser.SYNONYM);
+ break;
+
+ case 16:
+ this.enterOuterAlt(localctx, 16);
+ this.state = 4116;
+ this.match(PlSqlParser.ROLE);
+ break;
+
+ case 17:
+ this.enterOuterAlt(localctx, 17);
+ this.state = 4117;
+ this.match(PlSqlParser.ROLLBACK);
+ this.state = 4118;
+ this.match(PlSqlParser.SEGMENT);
+ break;
+
+ case 18:
+ this.enterOuterAlt(localctx, 18);
+ this.state = 4119;
+ this.match(PlSqlParser.SEQUENCE);
+ break;
+
+ case 19:
+ this.enterOuterAlt(localctx, 19);
+ this.state = 4120;
+ this.match(PlSqlParser.SESSION);
+ break;
+
+ case 20:
+ this.enterOuterAlt(localctx, 20);
+ this.state = 4121;
+ this.match(PlSqlParser.SYNONYM);
+ break;
+
+ case 21:
+ this.enterOuterAlt(localctx, 21);
+ this.state = 4122;
+ this.match(PlSqlParser.SYSTEM);
+ this.state = 4123;
+ this.match(PlSqlParser.AUDIT);
+ break;
+
+ case 22:
+ this.enterOuterAlt(localctx, 22);
+ this.state = 4124;
+ this.match(PlSqlParser.SYSTEM);
+ this.state = 4125;
+ this.match(PlSqlParser.GRANT);
+ break;
+
+ case 23:
+ this.enterOuterAlt(localctx, 23);
+ this.state = 4126;
+ this.match(PlSqlParser.TABLE);
+ break;
+
+ case 24:
+ this.enterOuterAlt(localctx, 24);
+ this.state = 4127;
+ this.match(PlSqlParser.TABLESPACE);
+ break;
+
+ case 25:
+ this.enterOuterAlt(localctx, 25);
+ this.state = 4128;
+ this.match(PlSqlParser.TRIGGER);
+ break;
+
+ case 26:
+ this.enterOuterAlt(localctx, 26);
+ this.state = 4129;
+ this.match(PlSqlParser.TYPE);
+ break;
+
+ case 27:
+ this.enterOuterAlt(localctx, 27);
+ this.state = 4130;
+ this.match(PlSqlParser.USER);
+ break;
+
+ case 28:
+ this.enterOuterAlt(localctx, 28);
+ this.state = 4131;
+ this.match(PlSqlParser.VIEW);
+ break;
+
+ case 29:
+ this.enterOuterAlt(localctx, 29);
+ this.state = 4132;
+ this.match(PlSqlParser.ALTER);
+ this.state = 4133;
+ this.match(PlSqlParser.SEQUENCE);
+ break;
+
+ case 30:
+ this.enterOuterAlt(localctx, 30);
+ this.state = 4134;
+ this.match(PlSqlParser.ALTER);
+ this.state = 4135;
+ this.match(PlSqlParser.TABLE);
+ break;
+
+ case 31:
+ this.enterOuterAlt(localctx, 31);
+ this.state = 4136;
+ this.match(PlSqlParser.COMMENT);
+ this.state = 4137;
+ this.match(PlSqlParser.TABLE);
+ break;
+
+ case 32:
+ this.enterOuterAlt(localctx, 32);
+ this.state = 4138;
+ this.match(PlSqlParser.DELETE);
+ this.state = 4139;
+ this.match(PlSqlParser.TABLE);
+ break;
+
+ case 33:
+ this.enterOuterAlt(localctx, 33);
+ this.state = 4140;
+ this.match(PlSqlParser.EXECUTE);
+ this.state = 4141;
+ this.match(PlSqlParser.PROCEDURE);
+ break;
+
+ case 34:
+ this.enterOuterAlt(localctx, 34);
+ this.state = 4142;
+ this.match(PlSqlParser.GRANT);
+ this.state = 4143;
+ this.match(PlSqlParser.DIRECTORY);
+ break;
+
+ case 35:
+ this.enterOuterAlt(localctx, 35);
+ this.state = 4144;
+ this.match(PlSqlParser.GRANT);
+ this.state = 4145;
+ this.match(PlSqlParser.PROCEDURE);
+ break;
+
+ case 36:
+ this.enterOuterAlt(localctx, 36);
+ this.state = 4146;
+ this.match(PlSqlParser.GRANT);
+ this.state = 4147;
+ this.match(PlSqlParser.SEQUENCE);
+ break;
+
+ case 37:
+ this.enterOuterAlt(localctx, 37);
+ this.state = 4148;
+ this.match(PlSqlParser.GRANT);
+ this.state = 4149;
+ this.match(PlSqlParser.TABLE);
+ break;
+
+ case 38:
+ this.enterOuterAlt(localctx, 38);
+ this.state = 4150;
+ this.match(PlSqlParser.GRANT);
+ this.state = 4151;
+ this.match(PlSqlParser.TYPE);
+ break;
+
+ case 39:
+ this.enterOuterAlt(localctx, 39);
+ this.state = 4152;
+ this.match(PlSqlParser.INSERT);
+ this.state = 4153;
+ this.match(PlSqlParser.TABLE);
+ break;
+
+ case 40:
+ this.enterOuterAlt(localctx, 40);
+ this.state = 4154;
+ this.match(PlSqlParser.LOCK);
+ this.state = 4155;
+ this.match(PlSqlParser.TABLE);
+ break;
+
+ case 41:
+ this.enterOuterAlt(localctx, 41);
+ this.state = 4156;
+ this.match(PlSqlParser.SELECT);
+ this.state = 4157;
+ this.match(PlSqlParser.SEQUENCE);
+ break;
+
+ case 42:
+ this.enterOuterAlt(localctx, 42);
+ this.state = 4158;
+ this.match(PlSqlParser.SELECT);
+ this.state = 4159;
+ this.match(PlSqlParser.TABLE);
+ break;
+
+ case 43:
+ this.enterOuterAlt(localctx, 43);
+ this.state = 4160;
+ this.match(PlSqlParser.UPDATE);
+ this.state = 4161;
+ this.match(PlSqlParser.TABLE);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Drop_indexContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_drop_index;
+ return this;
+}
+
+Drop_indexContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Drop_indexContext.prototype.constructor = Drop_indexContext;
+
+Drop_indexContext.prototype.DROP = function() {
+ return this.getToken(PlSqlParser.DROP, 0);
+};
+
+Drop_indexContext.prototype.INDEX = function() {
+ return this.getToken(PlSqlParser.INDEX, 0);
+};
+
+Drop_indexContext.prototype.index_name = function() {
+ return this.getTypedRuleContext(Index_nameContext,0);
+};
+
+Drop_indexContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Drop_indexContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterDrop_index(this);
+ }
+};
+
+Drop_indexContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitDrop_index(this);
+ }
+};
+
+Drop_indexContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitDrop_index(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Drop_indexContext = Drop_indexContext;
+
+PlSqlParser.prototype.drop_index = function() {
+
+ var localctx = new Drop_indexContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 378, PlSqlParser.RULE_drop_index);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4164;
+ this.match(PlSqlParser.DROP);
+ this.state = 4165;
+ this.match(PlSqlParser.INDEX);
+ this.state = 4166;
+ this.index_name();
+ this.state = 4167;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Rename_objectContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_rename_object;
+ return this;
+}
+
+Rename_objectContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Rename_objectContext.prototype.constructor = Rename_objectContext;
+
+Rename_objectContext.prototype.RENAME = function() {
+ return this.getToken(PlSqlParser.RENAME, 0);
+};
+
+Rename_objectContext.prototype.object_name = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Object_nameContext);
+ } else {
+ return this.getTypedRuleContext(Object_nameContext,i);
+ }
+};
+
+Rename_objectContext.prototype.TO = function() {
+ return this.getToken(PlSqlParser.TO, 0);
+};
+
+Rename_objectContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Rename_objectContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterRename_object(this);
+ }
+};
+
+Rename_objectContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitRename_object(this);
+ }
+};
+
+Rename_objectContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitRename_object(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Rename_objectContext = Rename_objectContext;
+
+PlSqlParser.prototype.rename_object = function() {
+
+ var localctx = new Rename_objectContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 380, PlSqlParser.RULE_rename_object);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4169;
+ this.match(PlSqlParser.RENAME);
+ this.state = 4170;
+ this.object_name();
+ this.state = 4171;
+ this.match(PlSqlParser.TO);
+ this.state = 4172;
+ this.object_name();
+ this.state = 4173;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Grant_statementContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_grant_statement;
+ return this;
+}
+
+Grant_statementContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Grant_statementContext.prototype.constructor = Grant_statementContext;
+
+Grant_statementContext.prototype.GRANT = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.GRANT);
+ } else {
+ return this.getToken(PlSqlParser.GRANT, i);
+ }
+};
+
+
+Grant_statementContext.prototype.TO = function() {
+ return this.getToken(PlSqlParser.TO, 0);
+};
+
+Grant_statementContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Grant_statementContext.prototype.grantee_name = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Grantee_nameContext);
+ } else {
+ return this.getTypedRuleContext(Grantee_nameContext,i);
+ }
+};
+
+Grant_statementContext.prototype.PUBLIC = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.PUBLIC);
+ } else {
+ return this.getToken(PlSqlParser.PUBLIC, i);
+ }
+};
+
+
+Grant_statementContext.prototype.ON = function() {
+ return this.getToken(PlSqlParser.ON, 0);
+};
+
+Grant_statementContext.prototype.grant_object_name = function() {
+ return this.getTypedRuleContext(Grant_object_nameContext,0);
+};
+
+Grant_statementContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Grant_statementContext.prototype.WITH = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.WITH);
+ } else {
+ return this.getToken(PlSqlParser.WITH, i);
+ }
+};
+
+
+Grant_statementContext.prototype.OPTION = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.OPTION);
+ } else {
+ return this.getToken(PlSqlParser.OPTION, i);
+ }
+};
+
+
+Grant_statementContext.prototype.HIERARCHY = function() {
+ return this.getToken(PlSqlParser.HIERARCHY, 0);
+};
+
+Grant_statementContext.prototype.container_clause = function() {
+ return this.getTypedRuleContext(Container_clauseContext,0);
+};
+
+Grant_statementContext.prototype.ADMIN = function() {
+ return this.getToken(PlSqlParser.ADMIN, 0);
+};
+
+Grant_statementContext.prototype.DELEGATE = function() {
+ return this.getToken(PlSqlParser.DELEGATE, 0);
+};
+
+Grant_statementContext.prototype.role_name = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Role_nameContext);
+ } else {
+ return this.getTypedRuleContext(Role_nameContext,i);
+ }
+};
+
+Grant_statementContext.prototype.system_privilege = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(System_privilegeContext);
+ } else {
+ return this.getTypedRuleContext(System_privilegeContext,i);
+ }
+};
+
+Grant_statementContext.prototype.object_privilege = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Object_privilegeContext);
+ } else {
+ return this.getTypedRuleContext(Object_privilegeContext,i);
+ }
+};
+
+Grant_statementContext.prototype.paren_column_list = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Paren_column_listContext);
+ } else {
+ return this.getTypedRuleContext(Paren_column_listContext,i);
+ }
+};
+
+Grant_statementContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterGrant_statement(this);
+ }
+};
+
+Grant_statementContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitGrant_statement(this);
+ }
+};
+
+Grant_statementContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitGrant_statement(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Grant_statementContext = Grant_statementContext;
+
+PlSqlParser.prototype.grant_statement = function() {
+
+ var localctx = new Grant_statementContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 382, PlSqlParser.RULE_grant_statement);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4175;
+ this.match(PlSqlParser.GRANT);
+ this.state = 4187;
+ this._errHandler.sync(this);
+ var _alt = 1;
+ do {
+ switch (_alt) {
+ case 1:
+ this.state = 4177;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.COMMA) {
+ this.state = 4176;
+ this.match(PlSqlParser.COMMA);
+ }
+
+ this.state = 4185;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,383,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 4179;
+ this.role_name();
+ break;
+
+ case 2:
+ this.state = 4180;
+ this.system_privilege();
+ break;
+
+ case 3:
+ this.state = 4181;
+ this.object_privilege();
+ this.state = 4183;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.LEFT_PAREN) {
+ this.state = 4182;
+ this.paren_column_list();
+ }
+
+ break;
+
+ }
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 4189;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,384, this._ctx);
+ } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
+ this.state = 4193;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.ON) {
+ this.state = 4191;
+ this.match(PlSqlParser.ON);
+ this.state = 4192;
+ this.grant_object_name();
+ }
+
+ this.state = 4195;
+ this.match(PlSqlParser.TO);
+ this.state = 4198;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.ABORT:
+ case PlSqlParser.ABS:
+ case PlSqlParser.ACCESS:
+ case PlSqlParser.ACCESSED:
+ case PlSqlParser.ACCOUNT:
+ case PlSqlParser.ACL:
+ case PlSqlParser.ACOS:
+ case PlSqlParser.ACTION:
+ case PlSqlParser.ACTIONS:
+ case PlSqlParser.ACTIVATE:
+ case PlSqlParser.ACTIVE:
+ case PlSqlParser.ACTIVE_COMPONENT:
+ case PlSqlParser.ACTIVE_DATA:
+ case PlSqlParser.ACTIVE_FUNCTION:
+ case PlSqlParser.ACTIVE_TAG:
+ case PlSqlParser.ACTIVITY:
+ case PlSqlParser.ADAPTIVE_PLAN:
+ case PlSqlParser.ADD:
+ case PlSqlParser.ADD_COLUMN:
+ case PlSqlParser.ADD_GROUP:
+ case PlSqlParser.ADD_MONTHS:
+ case PlSqlParser.ADJ_DATE:
+ case PlSqlParser.ADMIN:
+ case PlSqlParser.ADMINISTER:
+ case PlSqlParser.ADMINISTRATOR:
+ case PlSqlParser.ADVANCED:
+ case PlSqlParser.ADVISE:
+ case PlSqlParser.ADVISOR:
+ case PlSqlParser.AFD_DISKSTRING:
+ case PlSqlParser.AFTER:
+ case PlSqlParser.AGENT:
+ case PlSqlParser.AGGREGATE:
+ case PlSqlParser.A_LETTER:
+ case PlSqlParser.ALIAS:
+ case PlSqlParser.ALLOCATE:
+ case PlSqlParser.ALLOW:
+ case PlSqlParser.ALL_ROWS:
+ case PlSqlParser.ALWAYS:
+ case PlSqlParser.ANALYZE:
+ case PlSqlParser.ANCILLARY:
+ case PlSqlParser.AND_EQUAL:
+ case PlSqlParser.ANOMALY:
+ case PlSqlParser.ANSI_REARCH:
+ case PlSqlParser.ANTIJOIN:
+ case PlSqlParser.ANYSCHEMA:
+ case PlSqlParser.APPEND:
+ case PlSqlParser.APPENDCHILDXML:
+ case PlSqlParser.APPEND_VALUES:
+ case PlSqlParser.APPLICATION:
+ case PlSqlParser.APPLY:
+ case PlSqlParser.APPROX_COUNT_DISTINCT:
+ case PlSqlParser.ARCHIVAL:
+ case PlSqlParser.ARCHIVE:
+ case PlSqlParser.ARCHIVED:
+ case PlSqlParser.ARCHIVELOG:
+ case PlSqlParser.ARRAY:
+ case PlSqlParser.ASCII:
+ case PlSqlParser.ASCIISTR:
+ case PlSqlParser.ASIN:
+ case PlSqlParser.ASIS:
+ case PlSqlParser.ASSEMBLY:
+ case PlSqlParser.ASSIGN:
+ case PlSqlParser.ASSOCIATE:
+ case PlSqlParser.ASYNC:
+ case PlSqlParser.ASYNCHRONOUS:
+ case PlSqlParser.ATAN2:
+ case PlSqlParser.ATAN:
+ case PlSqlParser.AT:
+ case PlSqlParser.ATTRIBUTE:
+ case PlSqlParser.ATTRIBUTES:
+ case PlSqlParser.AUTHENTICATED:
+ case PlSqlParser.AUTHENTICATION:
+ case PlSqlParser.AUTHID:
+ case PlSqlParser.AUTHORIZATION:
+ case PlSqlParser.AUTOALLOCATE:
+ case PlSqlParser.AUTO:
+ case PlSqlParser.AUTOEXTEND:
+ case PlSqlParser.AUTO_LOGIN:
+ case PlSqlParser.AUTOMATIC:
+ case PlSqlParser.AUTONOMOUS_TRANSACTION:
+ case PlSqlParser.AUTO_REOPTIMIZE:
+ case PlSqlParser.AVAILABILITY:
+ case PlSqlParser.AVRO:
+ case PlSqlParser.BACKGROUND:
+ case PlSqlParser.BACKUP:
+ case PlSqlParser.BASIC:
+ case PlSqlParser.BASICFILE:
+ case PlSqlParser.BATCH:
+ case PlSqlParser.BATCHSIZE:
+ case PlSqlParser.BATCH_TABLE_ACCESS_BY_ROWID:
+ case PlSqlParser.BECOME:
+ case PlSqlParser.BEFORE:
+ case PlSqlParser.BEGIN:
+ case PlSqlParser.BEGINNING:
+ case PlSqlParser.BEGIN_OUTLINE_DATA:
+ case PlSqlParser.BEHALF:
+ case PlSqlParser.BEQUEATH:
+ case PlSqlParser.BFILE:
+ case PlSqlParser.BFILENAME:
+ case PlSqlParser.BIGFILE:
+ case PlSqlParser.BINARY:
+ case PlSqlParser.BINARY_DOUBLE:
+ case PlSqlParser.BINARY_DOUBLE_INFINITY:
+ case PlSqlParser.BINARY_DOUBLE_NAN:
+ case PlSqlParser.BINARY_FLOAT:
+ case PlSqlParser.BINARY_FLOAT_INFINITY:
+ case PlSqlParser.BINARY_FLOAT_NAN:
+ case PlSqlParser.BINARY_INTEGER:
+ case PlSqlParser.BIND_AWARE:
+ case PlSqlParser.BINDING:
+ case PlSqlParser.BIN_TO_NUM:
+ case PlSqlParser.BITAND:
+ case PlSqlParser.BITMAP_AND:
+ case PlSqlParser.BITMAP:
+ case PlSqlParser.BITMAPS:
+ case PlSqlParser.BITMAP_TREE:
+ case PlSqlParser.BITS:
+ case PlSqlParser.BLOB:
+ case PlSqlParser.BLOCK:
+ case PlSqlParser.BLOCK_RANGE:
+ case PlSqlParser.BLOCKS:
+ case PlSqlParser.BLOCKSIZE:
+ case PlSqlParser.BODY:
+ case PlSqlParser.BOOLEAN:
+ case PlSqlParser.BOTH:
+ case PlSqlParser.BOUND:
+ case PlSqlParser.BRANCH:
+ case PlSqlParser.BREADTH:
+ case PlSqlParser.BROADCAST:
+ case PlSqlParser.BSON:
+ case PlSqlParser.BUFFER:
+ case PlSqlParser.BUFFER_CACHE:
+ case PlSqlParser.BUFFER_POOL:
+ case PlSqlParser.BUILD:
+ case PlSqlParser.BULK:
+ case PlSqlParser.BYPASS_RECURSIVE_CHECK:
+ case PlSqlParser.BYPASS_UJVC:
+ case PlSqlParser.BYTE:
+ case PlSqlParser.CACHE:
+ case PlSqlParser.CACHE_CB:
+ case PlSqlParser.CACHE_INSTANCES:
+ case PlSqlParser.CACHE_TEMP_TABLE:
+ case PlSqlParser.CACHING:
+ case PlSqlParser.CALCULATED:
+ case PlSqlParser.CALLBACK:
+ case PlSqlParser.CALL:
+ case PlSqlParser.CANCEL:
+ case PlSqlParser.CAPACITY:
+ case PlSqlParser.CARDINALITY:
+ case PlSqlParser.CASCADE:
+ case PlSqlParser.CASE:
+ case PlSqlParser.CAST:
+ case PlSqlParser.CATEGORY:
+ case PlSqlParser.CDBDEFAULT:
+ case PlSqlParser.CEIL:
+ case PlSqlParser.CELL_FLASH_CACHE:
+ case PlSqlParser.CERTIFICATE:
+ case PlSqlParser.CFILE:
+ case PlSqlParser.CHAINED:
+ case PlSqlParser.CHANGE:
+ case PlSqlParser.CHANGE_DUPKEY_ERROR_INDEX:
+ case PlSqlParser.CHARACTER:
+ case PlSqlParser.CHAR:
+ case PlSqlParser.CHAR_CS:
+ case PlSqlParser.CHARTOROWID:
+ case PlSqlParser.CHECK_ACL_REWRITE:
+ case PlSqlParser.CHECKPOINT:
+ case PlSqlParser.CHILD:
+ case PlSqlParser.CHOOSE:
+ case PlSqlParser.CHR:
+ case PlSqlParser.CHUNK:
+ case PlSqlParser.CLASS:
+ case PlSqlParser.CLASSIFIER:
+ case PlSqlParser.CLEANUP:
+ case PlSqlParser.CLEAR:
+ case PlSqlParser.C_LETTER:
+ case PlSqlParser.CLIENT:
+ case PlSqlParser.CLOB:
+ case PlSqlParser.CLONE:
+ case PlSqlParser.CLOSE_CACHED_OPEN_CURSORS:
+ case PlSqlParser.CLOSE:
+ case PlSqlParser.CLUSTER_BY_ROWID:
+ case PlSqlParser.CLUSTER:
+ case PlSqlParser.CLUSTER_DETAILS:
+ case PlSqlParser.CLUSTER_DISTANCE:
+ case PlSqlParser.CLUSTER_ID:
+ case PlSqlParser.CLUSTERING:
+ case PlSqlParser.CLUSTERING_FACTOR:
+ case PlSqlParser.CLUSTER_PROBABILITY:
+ case PlSqlParser.CLUSTER_SET:
+ case PlSqlParser.COALESCE:
+ case PlSqlParser.COALESCE_SQ:
+ case PlSqlParser.COARSE:
+ case PlSqlParser.CO_AUTH_IND:
+ case PlSqlParser.COLD:
+ case PlSqlParser.COLLECT:
+ case PlSqlParser.COLUMNAR:
+ case PlSqlParser.COLUMN_AUTH_INDICATOR:
+ case PlSqlParser.COLUMN:
+ case PlSqlParser.COLUMNS:
+ case PlSqlParser.COLUMN_STATS:
+ case PlSqlParser.COLUMN_VALUE:
+ case PlSqlParser.COMMENT:
+ case PlSqlParser.COMMIT:
+ case PlSqlParser.COMMITTED:
+ case PlSqlParser.COMMON_DATA:
+ case PlSqlParser.COMPACT:
+ case PlSqlParser.COMPATIBILITY:
+ case PlSqlParser.COMPILE:
+ case PlSqlParser.COMPLETE:
+ case PlSqlParser.COMPLIANCE:
+ case PlSqlParser.COMPONENT:
+ case PlSqlParser.COMPONENTS:
+ case PlSqlParser.COMPOSE:
+ case PlSqlParser.COMPOSITE:
+ case PlSqlParser.COMPOSITE_LIMIT:
+ case PlSqlParser.COMPOUND:
+ case PlSqlParser.COMPUTE:
+ case PlSqlParser.CONCAT:
+ case PlSqlParser.CON_DBID_TO_ID:
+ case PlSqlParser.CONDITIONAL:
+ case PlSqlParser.CONDITION:
+ case PlSqlParser.CONFIRM:
+ case PlSqlParser.CONFORMING:
+ case PlSqlParser.CON_GUID_TO_ID:
+ case PlSqlParser.CON_ID:
+ case PlSqlParser.CON_NAME_TO_ID:
+ case PlSqlParser.CONNECT_BY_CB_WHR_ONLY:
+ case PlSqlParser.CONNECT_BY_COMBINE_SW:
+ case PlSqlParser.CONNECT_BY_COST_BASED:
+ case PlSqlParser.CONNECT_BY_ELIM_DUPS:
+ case PlSqlParser.CONNECT_BY_FILTERING:
+ case PlSqlParser.CONNECT_BY_ISCYCLE:
+ case PlSqlParser.CONNECT_BY_ISLEAF:
+ case PlSqlParser.CONNECT_BY_ROOT:
+ case PlSqlParser.CONNECT_TIME:
+ case PlSqlParser.CONSIDER:
+ case PlSqlParser.CONSISTENT:
+ case PlSqlParser.CONSTANT:
+ case PlSqlParser.CONST:
+ case PlSqlParser.CONSTRAINT:
+ case PlSqlParser.CONSTRAINTS:
+ case PlSqlParser.CONSTRUCTOR:
+ case PlSqlParser.CONTAINER:
+ case PlSqlParser.CONTAINER_DATA:
+ case PlSqlParser.CONTAINERS:
+ case PlSqlParser.CONTENT:
+ case PlSqlParser.CONTENTS:
+ case PlSqlParser.CONTEXT:
+ case PlSqlParser.CONTINUE:
+ case PlSqlParser.CONTROLFILE:
+ case PlSqlParser.CON_UID_TO_ID:
+ case PlSqlParser.CONVERT:
+ case PlSqlParser.COOKIE:
+ case PlSqlParser.COPY:
+ case PlSqlParser.CORR_K:
+ case PlSqlParser.CORR_S:
+ case PlSqlParser.CORRUPTION:
+ case PlSqlParser.CORRUPT_XID_ALL:
+ case PlSqlParser.CORRUPT_XID:
+ case PlSqlParser.COS:
+ case PlSqlParser.COSH:
+ case PlSqlParser.COST:
+ case PlSqlParser.COST_XML_QUERY_REWRITE:
+ case PlSqlParser.COUNT:
+ case PlSqlParser.COVAR_POP:
+ case PlSqlParser.COVAR_SAMP:
+ case PlSqlParser.CPU_COSTING:
+ case PlSqlParser.CPU_PER_CALL:
+ case PlSqlParser.CPU_PER_SESSION:
+ case PlSqlParser.CRASH:
+ case PlSqlParser.CREATE_FILE_DEST:
+ case PlSqlParser.CREATE_STORED_OUTLINES:
+ case PlSqlParser.CREATION:
+ case PlSqlParser.CREDENTIAL:
+ case PlSqlParser.CRITICAL:
+ case PlSqlParser.CROSS:
+ case PlSqlParser.CROSSEDITION:
+ case PlSqlParser.CSCONVERT:
+ case PlSqlParser.CUBE_AJ:
+ case PlSqlParser.CUBE:
+ case PlSqlParser.CUBE_GB:
+ case PlSqlParser.CUBE_SJ:
+ case PlSqlParser.CUME_DISTM:
+ case PlSqlParser.CURRENT:
+ case PlSqlParser.CURRENT_DATE:
+ case PlSqlParser.CURRENT_SCHEMA:
+ case PlSqlParser.CURRENT_TIME:
+ case PlSqlParser.CURRENT_TIMESTAMP:
+ case PlSqlParser.CURRENT_USER:
+ case PlSqlParser.CURRENTV:
+ case PlSqlParser.CURSOR:
+ case PlSqlParser.CURSOR_SHARING_EXACT:
+ case PlSqlParser.CURSOR_SPECIFIC_SEGMENT:
+ case PlSqlParser.CUSTOMDATUM:
+ case PlSqlParser.CV:
+ case PlSqlParser.CYCLE:
+ case PlSqlParser.DANGLING:
+ case PlSqlParser.DATABASE:
+ case PlSqlParser.DATA:
+ case PlSqlParser.DATAFILE:
+ case PlSqlParser.DATAFILES:
+ case PlSqlParser.DATAMOVEMENT:
+ case PlSqlParser.DATAOBJNO:
+ case PlSqlParser.DATAOBJ_TO_MAT_PARTITION:
+ case PlSqlParser.DATAOBJ_TO_PARTITION:
+ case PlSqlParser.DATAPUMP:
+ case PlSqlParser.DATA_SECURITY_REWRITE_LIMIT:
+ case PlSqlParser.DATE_MODE:
+ case PlSqlParser.DAY:
+ case PlSqlParser.DAYS:
+ case PlSqlParser.DBA:
+ case PlSqlParser.DBA_RECYCLEBIN:
+ case PlSqlParser.DBMS_STATS:
+ case PlSqlParser.DB_ROLE_CHANGE:
+ case PlSqlParser.DBTIMEZONE:
+ case PlSqlParser.DB_UNIQUE_NAME:
+ case PlSqlParser.DB_VERSION:
+ case PlSqlParser.DDL:
+ case PlSqlParser.DEALLOCATE:
+ case PlSqlParser.DEBUG:
+ case PlSqlParser.DEBUGGER:
+ case PlSqlParser.DEC:
+ case PlSqlParser.DECIMAL:
+ case PlSqlParser.DECLARE:
+ case PlSqlParser.DECOMPOSE:
+ case PlSqlParser.DECORRELATE:
+ case PlSqlParser.DECR:
+ case PlSqlParser.DECREMENT:
+ case PlSqlParser.DECRYPT:
+ case PlSqlParser.DEDUPLICATE:
+ case PlSqlParser.DEFAULTS:
+ case PlSqlParser.DEFERRABLE:
+ case PlSqlParser.DEFERRED:
+ case PlSqlParser.DEFINED:
+ case PlSqlParser.DEFINE:
+ case PlSqlParser.DEFINER:
+ case PlSqlParser.DEGREE:
+ case PlSqlParser.DELAY:
+ case PlSqlParser.DELEGATE:
+ case PlSqlParser.DELETE_ALL:
+ case PlSqlParser.DELETE:
+ case PlSqlParser.DELETEXML:
+ case PlSqlParser.DEMAND:
+ case PlSqlParser.DENSE_RANKM:
+ case PlSqlParser.DEPENDENT:
+ case PlSqlParser.DEPTH:
+ case PlSqlParser.DEQUEUE:
+ case PlSqlParser.DEREF:
+ case PlSqlParser.DEREF_NO_REWRITE:
+ case PlSqlParser.DESTROY:
+ case PlSqlParser.DETACHED:
+ case PlSqlParser.DETERMINES:
+ case PlSqlParser.DETERMINISTIC:
+ case PlSqlParser.DICTIONARY:
+ case PlSqlParser.DIMENSION:
+ case PlSqlParser.DIMENSIONS:
+ case PlSqlParser.DIRECT_LOAD:
+ case PlSqlParser.DIRECTORY:
+ case PlSqlParser.DIRECT_PATH:
+ case PlSqlParser.DISABLE_ALL:
+ case PlSqlParser.DISABLE:
+ case PlSqlParser.DISABLE_PARALLEL_DML:
+ case PlSqlParser.DISABLE_PRESET:
+ case PlSqlParser.DISABLE_RPKE:
+ case PlSqlParser.DISALLOW:
+ case PlSqlParser.DISASSOCIATE:
+ case PlSqlParser.DISCARD:
+ case PlSqlParser.DISCONNECT:
+ case PlSqlParser.DISK:
+ case PlSqlParser.DISKGROUP:
+ case PlSqlParser.DISKS:
+ case PlSqlParser.DISMOUNT:
+ case PlSqlParser.DISTINGUISHED:
+ case PlSqlParser.DISTRIBUTED:
+ case PlSqlParser.DISTRIBUTE:
+ case PlSqlParser.DML:
+ case PlSqlParser.DML_UPDATE:
+ case PlSqlParser.DOCFIDELITY:
+ case PlSqlParser.DOCUMENT:
+ case PlSqlParser.DOMAIN_INDEX_FILTER:
+ case PlSqlParser.DOMAIN_INDEX_NO_SORT:
+ case PlSqlParser.DOMAIN_INDEX_SORT:
+ case PlSqlParser.DOUBLE:
+ case PlSqlParser.DOWNGRADE:
+ case PlSqlParser.DRIVING_SITE:
+ case PlSqlParser.DROP_COLUMN:
+ case PlSqlParser.DROP_GROUP:
+ case PlSqlParser.DSINTERVAL_UNCONSTRAINED:
+ case PlSqlParser.DST_UPGRADE_INSERT_CONV:
+ case PlSqlParser.DUMP:
+ case PlSqlParser.DUPLICATE:
+ case PlSqlParser.DV:
+ case PlSqlParser.DYNAMIC:
+ case PlSqlParser.DYNAMIC_SAMPLING:
+ case PlSqlParser.DYNAMIC_SAMPLING_EST_CDN:
+ case PlSqlParser.EACH:
+ case PlSqlParser.EDITIONABLE:
+ case PlSqlParser.EDITION:
+ case PlSqlParser.EDITIONING:
+ case PlSqlParser.EDITIONS:
+ case PlSqlParser.ELEMENT:
+ case PlSqlParser.ELIM_GROUPBY:
+ case PlSqlParser.ELIMINATE_JOIN:
+ case PlSqlParser.ELIMINATE_OBY:
+ case PlSqlParser.ELIMINATE_OUTER_JOIN:
+ case PlSqlParser.EM:
+ case PlSqlParser.EMPTY_BLOB:
+ case PlSqlParser.EMPTY_CLOB:
+ case PlSqlParser.EMPTY:
+ case PlSqlParser.ENABLE_ALL:
+ case PlSqlParser.ENABLE:
+ case PlSqlParser.ENABLE_PARALLEL_DML:
+ case PlSqlParser.ENABLE_PRESET:
+ case PlSqlParser.ENCODING:
+ case PlSqlParser.ENCRYPT:
+ case PlSqlParser.ENCRYPTION:
+ case PlSqlParser.END_OUTLINE_DATA:
+ case PlSqlParser.ENFORCED:
+ case PlSqlParser.ENFORCE:
+ case PlSqlParser.ENQUEUE:
+ case PlSqlParser.ENTERPRISE:
+ case PlSqlParser.ENTITYESCAPING:
+ case PlSqlParser.ENTRY:
+ case PlSqlParser.EQUIPART:
+ case PlSqlParser.ERR:
+ case PlSqlParser.ERROR_ARGUMENT:
+ case PlSqlParser.ERROR:
+ case PlSqlParser.ERROR_ON_OVERLAP_TIME:
+ case PlSqlParser.ERRORS:
+ case PlSqlParser.ESCAPE:
+ case PlSqlParser.ESTIMATE:
+ case PlSqlParser.EVAL:
+ case PlSqlParser.EVALNAME:
+ case PlSqlParser.EVALUATE:
+ case PlSqlParser.EVALUATION:
+ case PlSqlParser.EVENTS:
+ case PlSqlParser.EVERY:
+ case PlSqlParser.EXCEPT:
+ case PlSqlParser.EXCEPTION:
+ case PlSqlParser.EXCEPTION_INIT:
+ case PlSqlParser.EXCEPTIONS:
+ case PlSqlParser.EXCHANGE:
+ case PlSqlParser.EXCLUDE:
+ case PlSqlParser.EXCLUDING:
+ case PlSqlParser.EXECUTE:
+ case PlSqlParser.EXEMPT:
+ case PlSqlParser.EXISTING:
+ case PlSqlParser.EXISTS:
+ case PlSqlParser.EXISTSNODE:
+ case PlSqlParser.EXIT:
+ case PlSqlParser.EXPAND_GSET_TO_UNION:
+ case PlSqlParser.EXPAND_TABLE:
+ case PlSqlParser.EXP:
+ case PlSqlParser.EXPIRE:
+ case PlSqlParser.EXPLAIN:
+ case PlSqlParser.EXPLOSION:
+ case PlSqlParser.EXPORT:
+ case PlSqlParser.EXPR_CORR_CHECK:
+ case PlSqlParser.EXPRESS:
+ case PlSqlParser.EXTENDS:
+ case PlSqlParser.EXTENT:
+ case PlSqlParser.EXTENTS:
+ case PlSqlParser.EXTERNAL:
+ case PlSqlParser.EXTERNALLY:
+ case PlSqlParser.EXTRACTCLOBXML:
+ case PlSqlParser.EXTRACT:
+ case PlSqlParser.EXTRACTVALUE:
+ case PlSqlParser.EXTRA:
+ case PlSqlParser.FACILITY:
+ case PlSqlParser.FACT:
+ case PlSqlParser.FACTOR:
+ case PlSqlParser.FACTORIZE_JOIN:
+ case PlSqlParser.FAILED:
+ case PlSqlParser.FAILED_LOGIN_ATTEMPTS:
+ case PlSqlParser.FAILGROUP:
+ case PlSqlParser.FAILOVER:
+ case PlSqlParser.FAILURE:
+ case PlSqlParser.FALSE:
+ case PlSqlParser.FAMILY:
+ case PlSqlParser.FAR:
+ case PlSqlParser.FAST:
+ case PlSqlParser.FASTSTART:
+ case PlSqlParser.FBTSCAN:
+ case PlSqlParser.FEATURE_DETAILS:
+ case PlSqlParser.FEATURE_ID:
+ case PlSqlParser.FEATURE_SET:
+ case PlSqlParser.FEATURE_VALUE:
+ case PlSqlParser.FETCH:
+ case PlSqlParser.FILE:
+ case PlSqlParser.FILE_NAME_CONVERT:
+ case PlSqlParser.FILESYSTEM_LIKE_LOGGING:
+ case PlSqlParser.FILTER:
+ case PlSqlParser.FINAL:
+ case PlSqlParser.FINE:
+ case PlSqlParser.FINISH:
+ case PlSqlParser.FIRST:
+ case PlSqlParser.FIRSTM:
+ case PlSqlParser.FIRST_ROWS:
+ case PlSqlParser.FIRST_VALUE:
+ case PlSqlParser.FIXED_VIEW_DATA:
+ case PlSqlParser.FLAGGER:
+ case PlSqlParser.FLASHBACK:
+ case PlSqlParser.FLASH_CACHE:
+ case PlSqlParser.FLOAT:
+ case PlSqlParser.FLOB:
+ case PlSqlParser.FLOOR:
+ case PlSqlParser.FLUSH:
+ case PlSqlParser.FOLDER:
+ case PlSqlParser.FOLLOWING:
+ case PlSqlParser.FOLLOWS:
+ case PlSqlParser.FORALL:
+ case PlSqlParser.FORCE:
+ case PlSqlParser.FORCE_XML_QUERY_REWRITE:
+ case PlSqlParser.FOREIGN:
+ case PlSqlParser.FOREVER:
+ case PlSqlParser.FORMAT:
+ case PlSqlParser.FORWARD:
+ case PlSqlParser.FRAGMENT_NUMBER:
+ case PlSqlParser.FREELIST:
+ case PlSqlParser.FREELISTS:
+ case PlSqlParser.FREEPOOLS:
+ case PlSqlParser.FRESH:
+ case PlSqlParser.FROM_TZ:
+ case PlSqlParser.FULL:
+ case PlSqlParser.FULL_OUTER_JOIN_TO_OUTER:
+ case PlSqlParser.FUNCTION:
+ case PlSqlParser.FUNCTIONS:
+ case PlSqlParser.GATHER_OPTIMIZER_STATISTICS:
+ case PlSqlParser.GATHER_PLAN_STATISTICS:
+ case PlSqlParser.GBY_CONC_ROLLUP:
+ case PlSqlParser.GBY_PUSHDOWN:
+ case PlSqlParser.GENERATED:
+ case PlSqlParser.GET:
+ case PlSqlParser.GLOBAL:
+ case PlSqlParser.GLOBALLY:
+ case PlSqlParser.GLOBAL_NAME:
+ case PlSqlParser.GLOBAL_TOPIC_ENABLED:
+ case PlSqlParser.GROUP_BY:
+ case PlSqlParser.GROUP_ID:
+ case PlSqlParser.GROUPING:
+ case PlSqlParser.GROUPING_ID:
+ case PlSqlParser.GROUPS:
+ case PlSqlParser.GUARANTEED:
+ case PlSqlParser.GUARANTEE:
+ case PlSqlParser.GUARD:
+ case PlSqlParser.HASH_AJ:
+ case PlSqlParser.HASH:
+ case PlSqlParser.HASHKEYS:
+ case PlSqlParser.HASH_SJ:
+ case PlSqlParser.HEADER:
+ case PlSqlParser.HEAP:
+ case PlSqlParser.HELP:
+ case PlSqlParser.HEXTORAW:
+ case PlSqlParser.HEXTOREF:
+ case PlSqlParser.HIDDEN_KEYWORD:
+ case PlSqlParser.HIDE:
+ case PlSqlParser.HIERARCHY:
+ case PlSqlParser.HIGH:
+ case PlSqlParser.HINTSET_BEGIN:
+ case PlSqlParser.HINTSET_END:
+ case PlSqlParser.HOT:
+ case PlSqlParser.HOUR:
+ case PlSqlParser.HWM_BROKERED:
+ case PlSqlParser.HYBRID:
+ case PlSqlParser.IDENTIFIER:
+ case PlSqlParser.IDENTITY:
+ case PlSqlParser.IDGENERATORS:
+ case PlSqlParser.ID:
+ case PlSqlParser.IDLE_TIME:
+ case PlSqlParser.IF:
+ case PlSqlParser.IGNORE:
+ case PlSqlParser.IGNORE_OPTIM_EMBEDDED_HINTS:
+ case PlSqlParser.IGNORE_ROW_ON_DUPKEY_INDEX:
+ case PlSqlParser.IGNORE_WHERE_CLAUSE:
+ case PlSqlParser.ILM:
+ case PlSqlParser.IMMEDIATE:
+ case PlSqlParser.IMPACT:
+ case PlSqlParser.IMPORT:
+ case PlSqlParser.INACTIVE:
+ case PlSqlParser.INCLUDE:
+ case PlSqlParser.INCLUDE_VERSION:
+ case PlSqlParser.INCLUDING:
+ case PlSqlParser.INCREMENTAL:
+ case PlSqlParser.INCREMENT:
+ case PlSqlParser.INCR:
+ case PlSqlParser.INDENT:
+ case PlSqlParser.INDEX_ASC:
+ case PlSqlParser.INDEX_COMBINE:
+ case PlSqlParser.INDEX_DESC:
+ case PlSqlParser.INDEXED:
+ case PlSqlParser.INDEXES:
+ case PlSqlParser.INDEX_FFS:
+ case PlSqlParser.INDEX_FILTER:
+ case PlSqlParser.INDEXING:
+ case PlSqlParser.INDEX_JOIN:
+ case PlSqlParser.INDEX_ROWS:
+ case PlSqlParser.INDEX_RRS:
+ case PlSqlParser.INDEX_RS_ASC:
+ case PlSqlParser.INDEX_RS_DESC:
+ case PlSqlParser.INDEX_RS:
+ case PlSqlParser.INDEX_SCAN:
+ case PlSqlParser.INDEX_SKIP_SCAN:
+ case PlSqlParser.INDEX_SS_ASC:
+ case PlSqlParser.INDEX_SS_DESC:
+ case PlSqlParser.INDEX_SS:
+ case PlSqlParser.INDEX_STATS:
+ case PlSqlParser.INDEXTYPE:
+ case PlSqlParser.INDEXTYPES:
+ case PlSqlParser.INDICATOR:
+ case PlSqlParser.INDICES:
+ case PlSqlParser.INFINITE:
+ case PlSqlParser.INFORMATIONAL:
+ case PlSqlParser.INHERIT:
+ case PlSqlParser.INITCAP:
+ case PlSqlParser.INITIAL:
+ case PlSqlParser.INITIALIZED:
+ case PlSqlParser.INITIALLY:
+ case PlSqlParser.INITRANS:
+ case PlSqlParser.INLINE:
+ case PlSqlParser.INLINE_XMLTYPE_NT:
+ case PlSqlParser.INMEMORY:
+ case PlSqlParser.IN_MEMORY_METADATA:
+ case PlSqlParser.INMEMORY_PRUNING:
+ case PlSqlParser.INNER:
+ case PlSqlParser.INOUT:
+ case PlSqlParser.INPLACE:
+ case PlSqlParser.INSERTCHILDXMLAFTER:
+ case PlSqlParser.INSERTCHILDXMLBEFORE:
+ case PlSqlParser.INSERTCHILDXML:
+ case PlSqlParser.INSERTXMLAFTER:
+ case PlSqlParser.INSERTXMLBEFORE:
+ case PlSqlParser.INSTANCE:
+ case PlSqlParser.INSTANCES:
+ case PlSqlParser.INSTANTIABLE:
+ case PlSqlParser.INSTANTLY:
+ case PlSqlParser.INSTEAD:
+ case PlSqlParser.INSTR2:
+ case PlSqlParser.INSTR4:
+ case PlSqlParser.INSTRB:
+ case PlSqlParser.INSTRC:
+ case PlSqlParser.INSTR:
+ case PlSqlParser.INTEGER:
+ case PlSqlParser.INTERLEAVED:
+ case PlSqlParser.INTERMEDIATE:
+ case PlSqlParser.INTERNAL_CONVERT:
+ case PlSqlParser.INTERNAL_USE:
+ case PlSqlParser.INTERPRETED:
+ case PlSqlParser.INTERVAL:
+ case PlSqlParser.INT:
+ case PlSqlParser.INVALIDATE:
+ case PlSqlParser.INVISIBLE:
+ case PlSqlParser.IN_XQUERY:
+ case PlSqlParser.ISOLATION:
+ case PlSqlParser.ISOLATION_LEVEL:
+ case PlSqlParser.ITERATE:
+ case PlSqlParser.ITERATION_NUMBER:
+ case PlSqlParser.JAVA:
+ case PlSqlParser.JOB:
+ case PlSqlParser.JOIN:
+ case PlSqlParser.JSON_ARRAYAGG:
+ case PlSqlParser.JSON_ARRAY:
+ case PlSqlParser.JSON_EQUAL:
+ case PlSqlParser.JSON_EXISTS2:
+ case PlSqlParser.JSON_EXISTS:
+ case PlSqlParser.JSONGET:
+ case PlSqlParser.JSON:
+ case PlSqlParser.JSON_OBJECTAGG:
+ case PlSqlParser.JSON_OBJECT:
+ case PlSqlParser.JSONPARSE:
+ case PlSqlParser.JSON_QUERY:
+ case PlSqlParser.JSON_SERIALIZE:
+ case PlSqlParser.JSON_TABLE:
+ case PlSqlParser.JSON_TEXTCONTAINS2:
+ case PlSqlParser.JSON_TEXTCONTAINS:
+ case PlSqlParser.JSON_VALUE:
+ case PlSqlParser.KEEP_DUPLICATES:
+ case PlSqlParser.KEEP:
+ case PlSqlParser.KERBEROS:
+ case PlSqlParser.KEY:
+ case PlSqlParser.KEY_LENGTH:
+ case PlSqlParser.KEYSIZE:
+ case PlSqlParser.KEYS:
+ case PlSqlParser.KEYSTORE:
+ case PlSqlParser.KILL:
+ case PlSqlParser.LABEL:
+ case PlSqlParser.LANGUAGE:
+ case PlSqlParser.LAST_DAY:
+ case PlSqlParser.LAST:
+ case PlSqlParser.LAST_VALUE:
+ case PlSqlParser.LATERAL:
+ case PlSqlParser.LAX:
+ case PlSqlParser.LAYER:
+ case PlSqlParser.LDAP_REGISTRATION_ENABLED:
+ case PlSqlParser.LDAP_REGISTRATION:
+ case PlSqlParser.LDAP_REG_SYNC_INTERVAL:
+ case PlSqlParser.LEADING:
+ case PlSqlParser.LEFT:
+ case PlSqlParser.LENGTH2:
+ case PlSqlParser.LENGTH4:
+ case PlSqlParser.LENGTHB:
+ case PlSqlParser.LENGTHC:
+ case PlSqlParser.LENGTH:
+ case PlSqlParser.LESS:
+ case PlSqlParser.LEVEL:
+ case PlSqlParser.LEVELS:
+ case PlSqlParser.LIBRARY:
+ case PlSqlParser.LIFECYCLE:
+ case PlSqlParser.LIFE:
+ case PlSqlParser.LIFETIME:
+ case PlSqlParser.LIKE2:
+ case PlSqlParser.LIKE4:
+ case PlSqlParser.LIKEC:
+ case PlSqlParser.LIKE_EXPAND:
+ case PlSqlParser.LIMIT:
+ case PlSqlParser.LINEAR:
+ case PlSqlParser.LINK:
+ case PlSqlParser.LIST:
+ case PlSqlParser.LN:
+ case PlSqlParser.LNNVL:
+ case PlSqlParser.LOAD:
+ case PlSqlParser.LOB:
+ case PlSqlParser.LOBNVL:
+ case PlSqlParser.LOBS:
+ case PlSqlParser.LOCAL_INDEXES:
+ case PlSqlParser.LOCAL:
+ case PlSqlParser.LOCALTIME:
+ case PlSqlParser.LOCALTIMESTAMP:
+ case PlSqlParser.LOCATION:
+ case PlSqlParser.LOCATOR:
+ case PlSqlParser.LOCKED:
+ case PlSqlParser.LOCKING:
+ case PlSqlParser.LOGFILE:
+ case PlSqlParser.LOGFILES:
+ case PlSqlParser.LOGGING:
+ case PlSqlParser.LOGICAL:
+ case PlSqlParser.LOGICAL_READS_PER_CALL:
+ case PlSqlParser.LOGICAL_READS_PER_SESSION:
+ case PlSqlParser.LOG:
+ case PlSqlParser.LOGMINING:
+ case PlSqlParser.LOGOFF:
+ case PlSqlParser.LOGON:
+ case PlSqlParser.LOG_READ_ONLY_VIOLATIONS:
+ case PlSqlParser.LONG:
+ case PlSqlParser.LOOP:
+ case PlSqlParser.LOWER:
+ case PlSqlParser.LOW:
+ case PlSqlParser.LPAD:
+ case PlSqlParser.LTRIM:
+ case PlSqlParser.MAIN:
+ case PlSqlParser.MAKE_REF:
+ case PlSqlParser.MANAGED:
+ case PlSqlParser.MANAGE:
+ case PlSqlParser.MANAGEMENT:
+ case PlSqlParser.MANAGER:
+ case PlSqlParser.MANUAL:
+ case PlSqlParser.MAP:
+ case PlSqlParser.MAPPING:
+ case PlSqlParser.MASTER:
+ case PlSqlParser.MATCHED:
+ case PlSqlParser.MATCHES:
+ case PlSqlParser.MATCH:
+ case PlSqlParser.MATCH_NUMBER:
+ case PlSqlParser.MATCH_RECOGNIZE:
+ case PlSqlParser.MATERIALIZED:
+ case PlSqlParser.MATERIALIZE:
+ case PlSqlParser.MAXARCHLOGS:
+ case PlSqlParser.MAXDATAFILES:
+ case PlSqlParser.MAXEXTENTS:
+ case PlSqlParser.MAXIMIZE:
+ case PlSqlParser.MAXINSTANCES:
+ case PlSqlParser.MAXLOGFILES:
+ case PlSqlParser.MAXLOGHISTORY:
+ case PlSqlParser.MAXLOGMEMBERS:
+ case PlSqlParser.MAX_SHARED_TEMP_SIZE:
+ case PlSqlParser.MAXSIZE:
+ case PlSqlParser.MAXTRANS:
+ case PlSqlParser.MAXVALUE:
+ case PlSqlParser.MEASURE:
+ case PlSqlParser.MEASURES:
+ case PlSqlParser.MEDIUM:
+ case PlSqlParser.MEMBER:
+ case PlSqlParser.MEMCOMPRESS:
+ case PlSqlParser.MEMORY:
+ case PlSqlParser.MERGEACTIONS:
+ case PlSqlParser.MERGE_AJ:
+ case PlSqlParser.MERGE_CONST_ON:
+ case PlSqlParser.MERGE:
+ case PlSqlParser.MERGE_SJ:
+ case PlSqlParser.METADATA:
+ case PlSqlParser.METHOD:
+ case PlSqlParser.MIGRATE:
+ case PlSqlParser.MIGRATION:
+ case PlSqlParser.MINEXTENTS:
+ case PlSqlParser.MINIMIZE:
+ case PlSqlParser.MINIMUM:
+ case PlSqlParser.MINING:
+ case PlSqlParser.MINUS_NULL:
+ case PlSqlParser.MINUTE:
+ case PlSqlParser.MINVALUE:
+ case PlSqlParser.MIRRORCOLD:
+ case PlSqlParser.MIRRORHOT:
+ case PlSqlParser.MIRROR:
+ case PlSqlParser.MLSLABEL:
+ case PlSqlParser.MODEL_COMPILE_SUBQUERY:
+ case PlSqlParser.MODEL_DONTVERIFY_UNIQUENESS:
+ case PlSqlParser.MODEL_DYNAMIC_SUBQUERY:
+ case PlSqlParser.MODEL_MIN_ANALYSIS:
+ case PlSqlParser.MODEL:
+ case PlSqlParser.MODEL_NB:
+ case PlSqlParser.MODEL_NO_ANALYSIS:
+ case PlSqlParser.MODEL_PBY:
+ case PlSqlParser.MODEL_PUSH_REF:
+ case PlSqlParser.MODEL_SV:
+ case PlSqlParser.MODIFICATION:
+ case PlSqlParser.MODIFY_COLUMN_TYPE:
+ case PlSqlParser.MODIFY:
+ case PlSqlParser.MOD:
+ case PlSqlParser.MODULE:
+ case PlSqlParser.MONITORING:
+ case PlSqlParser.MONITOR:
+ case PlSqlParser.MONTH:
+ case PlSqlParser.MONTHS_BETWEEN:
+ case PlSqlParser.MONTHS:
+ case PlSqlParser.MOUNT:
+ case PlSqlParser.MOUNTPATH:
+ case PlSqlParser.MOVEMENT:
+ case PlSqlParser.MOVE:
+ case PlSqlParser.MULTIDIMENSIONAL:
+ case PlSqlParser.MULTISET:
+ case PlSqlParser.MV_MERGE:
+ case PlSqlParser.NAMED:
+ case PlSqlParser.NAME:
+ case PlSqlParser.NAMESPACE:
+ case PlSqlParser.NAN:
+ case PlSqlParser.NANVL:
+ case PlSqlParser.NATIONAL:
+ case PlSqlParser.NATIVE_FULL_OUTER_JOIN:
+ case PlSqlParser.NATIVE:
+ case PlSqlParser.NATURAL:
+ case PlSqlParser.NAV:
+ case PlSqlParser.NCHAR_CS:
+ case PlSqlParser.NCHAR:
+ case PlSqlParser.NCHR:
+ case PlSqlParser.NCLOB:
+ case PlSqlParser.NEEDED:
+ case PlSqlParser.NEG:
+ case PlSqlParser.NESTED:
+ case PlSqlParser.NESTED_TABLE_FAST_INSERT:
+ case PlSqlParser.NESTED_TABLE_GET_REFS:
+ case PlSqlParser.NESTED_TABLE_ID:
+ case PlSqlParser.NESTED_TABLE_SET_REFS:
+ case PlSqlParser.NESTED_TABLE_SET_SETID:
+ case PlSqlParser.NETWORK:
+ case PlSqlParser.NEVER:
+ case PlSqlParser.NEW:
+ case PlSqlParser.NEW_TIME:
+ case PlSqlParser.NEXT_DAY:
+ case PlSqlParser.NEXT:
+ case PlSqlParser.NL_AJ:
+ case PlSqlParser.NLJ_BATCHING:
+ case PlSqlParser.NLJ_INDEX_FILTER:
+ case PlSqlParser.NLJ_INDEX_SCAN:
+ case PlSqlParser.NLJ_PREFETCH:
+ case PlSqlParser.NLS_CALENDAR:
+ case PlSqlParser.NLS_CHARACTERSET:
+ case PlSqlParser.NLS_CHARSET_DECL_LEN:
+ case PlSqlParser.NLS_CHARSET_ID:
+ case PlSqlParser.NLS_CHARSET_NAME:
+ case PlSqlParser.NLS_COMP:
+ case PlSqlParser.NLS_CURRENCY:
+ case PlSqlParser.NLS_DATE_FORMAT:
+ case PlSqlParser.NLS_DATE_LANGUAGE:
+ case PlSqlParser.NLS_INITCAP:
+ case PlSqlParser.NLS_ISO_CURRENCY:
+ case PlSqlParser.NL_SJ:
+ case PlSqlParser.NLS_LANG:
+ case PlSqlParser.NLS_LANGUAGE:
+ case PlSqlParser.NLS_LENGTH_SEMANTICS:
+ case PlSqlParser.NLS_LOWER:
+ case PlSqlParser.NLS_NCHAR_CONV_EXCP:
+ case PlSqlParser.NLS_NUMERIC_CHARACTERS:
+ case PlSqlParser.NLS_SORT:
+ case PlSqlParser.NLSSORT:
+ case PlSqlParser.NLS_SPECIAL_CHARS:
+ case PlSqlParser.NLS_TERRITORY:
+ case PlSqlParser.NLS_UPPER:
+ case PlSqlParser.NO_ACCESS:
+ case PlSqlParser.NO_ADAPTIVE_PLAN:
+ case PlSqlParser.NO_ANSI_REARCH:
+ case PlSqlParser.NOAPPEND:
+ case PlSqlParser.NOARCHIVELOG:
+ case PlSqlParser.NOAUDIT:
+ case PlSqlParser.NO_AUTO_REOPTIMIZE:
+ case PlSqlParser.NO_BASETABLE_MULTIMV_REWRITE:
+ case PlSqlParser.NO_BATCH_TABLE_ACCESS_BY_ROWID:
+ case PlSqlParser.NO_BIND_AWARE:
+ case PlSqlParser.NO_BUFFER:
+ case PlSqlParser.NOCACHE:
+ case PlSqlParser.NO_CARTESIAN:
+ case PlSqlParser.NO_CHECK_ACL_REWRITE:
+ case PlSqlParser.NO_CLUSTER_BY_ROWID:
+ case PlSqlParser.NO_CLUSTERING:
+ case PlSqlParser.NO_COALESCE_SQ:
+ case PlSqlParser.NO_COMMON_DATA:
+ case PlSqlParser.NO_CONNECT_BY_CB_WHR_ONLY:
+ case PlSqlParser.NO_CONNECT_BY_COMBINE_SW:
+ case PlSqlParser.NO_CONNECT_BY_COST_BASED:
+ case PlSqlParser.NO_CONNECT_BY_ELIM_DUPS:
+ case PlSqlParser.NO_CONNECT_BY_FILTERING:
+ case PlSqlParser.NOCOPY:
+ case PlSqlParser.NO_COST_XML_QUERY_REWRITE:
+ case PlSqlParser.NO_CPU_COSTING:
+ case PlSqlParser.NOCPU_COSTING:
+ case PlSqlParser.NOCYCLE:
+ case PlSqlParser.NO_DATA_SECURITY_REWRITE:
+ case PlSqlParser.NO_DECORRELATE:
+ case PlSqlParser.NODELAY:
+ case PlSqlParser.NO_DOMAIN_INDEX_FILTER:
+ case PlSqlParser.NO_DST_UPGRADE_INSERT_CONV:
+ case PlSqlParser.NO_ELIM_GROUPBY:
+ case PlSqlParser.NO_ELIMINATE_JOIN:
+ case PlSqlParser.NO_ELIMINATE_OBY:
+ case PlSqlParser.NO_ELIMINATE_OUTER_JOIN:
+ case PlSqlParser.NOENTITYESCAPING:
+ case PlSqlParser.NO_EXPAND_GSET_TO_UNION:
+ case PlSqlParser.NO_EXPAND:
+ case PlSqlParser.NO_EXPAND_TABLE:
+ case PlSqlParser.NO_FACT:
+ case PlSqlParser.NO_FACTORIZE_JOIN:
+ case PlSqlParser.NO_FILTERING:
+ case PlSqlParser.NOFORCE:
+ case PlSqlParser.NO_FULL_OUTER_JOIN_TO_OUTER:
+ case PlSqlParser.NO_GATHER_OPTIMIZER_STATISTICS:
+ case PlSqlParser.NO_GBY_PUSHDOWN:
+ case PlSqlParser.NOGUARANTEE:
+ case PlSqlParser.NO_INDEX_FFS:
+ case PlSqlParser.NO_INDEX:
+ case PlSqlParser.NO_INDEX_SS:
+ case PlSqlParser.NO_INMEMORY:
+ case PlSqlParser.NO_INMEMORY_PRUNING:
+ case PlSqlParser.NOKEEP:
+ case PlSqlParser.NO_LOAD:
+ case PlSqlParser.NOLOCAL:
+ case PlSqlParser.NOLOGGING:
+ case PlSqlParser.NOMAPPING:
+ case PlSqlParser.NOMAXVALUE:
+ case PlSqlParser.NO_MERGE:
+ case PlSqlParser.NOMINIMIZE:
+ case PlSqlParser.NOMINVALUE:
+ case PlSqlParser.NO_MODEL_PUSH_REF:
+ case PlSqlParser.NO_MONITORING:
+ case PlSqlParser.NOMONITORING:
+ case PlSqlParser.NO_MONITOR:
+ case PlSqlParser.NO_MULTIMV_REWRITE:
+ case PlSqlParser.NO_NATIVE_FULL_OUTER_JOIN:
+ case PlSqlParser.NONBLOCKING:
+ case PlSqlParser.NONEDITIONABLE:
+ case PlSqlParser.NONE:
+ case PlSqlParser.NO_NLJ_BATCHING:
+ case PlSqlParser.NO_NLJ_PREFETCH:
+ case PlSqlParser.NO:
+ case PlSqlParser.NONSCHEMA:
+ case PlSqlParser.NO_OBJECT_LINK:
+ case PlSqlParser.NOORDER:
+ case PlSqlParser.NO_ORDER_ROLLUPS:
+ case PlSqlParser.NO_OUTER_JOIN_TO_ANTI:
+ case PlSqlParser.NO_OUTER_JOIN_TO_INNER:
+ case PlSqlParser.NOOVERRIDE:
+ case PlSqlParser.NO_PARALLEL_INDEX:
+ case PlSqlParser.NOPARALLEL_INDEX:
+ case PlSqlParser.NO_PARALLEL:
+ case PlSqlParser.NOPARALLEL:
+ case PlSqlParser.NO_PARTIAL_COMMIT:
+ case PlSqlParser.NO_PARTIAL_JOIN:
+ case PlSqlParser.NO_PARTIAL_ROLLUP_PUSHDOWN:
+ case PlSqlParser.NOPARTITION:
+ case PlSqlParser.NO_PLACE_DISTINCT:
+ case PlSqlParser.NO_PLACE_GROUP_BY:
+ case PlSqlParser.NO_PQ_CONCURRENT_UNION:
+ case PlSqlParser.NO_PQ_MAP:
+ case PlSqlParser.NO_PQ_REPLICATE:
+ case PlSqlParser.NO_PQ_SKEW:
+ case PlSqlParser.NO_PRUNE_GSETS:
+ case PlSqlParser.NO_PULL_PRED:
+ case PlSqlParser.NO_PUSH_PRED:
+ case PlSqlParser.NO_PUSH_SUBQ:
+ case PlSqlParser.NO_PX_FAULT_TOLERANCE:
+ case PlSqlParser.NO_PX_JOIN_FILTER:
+ case PlSqlParser.NO_QKN_BUFF:
+ case PlSqlParser.NO_QUERY_TRANSFORMATION:
+ case PlSqlParser.NO_REF_CASCADE:
+ case PlSqlParser.NORELOCATE:
+ case PlSqlParser.NORELY:
+ case PlSqlParser.NOREPAIR:
+ case PlSqlParser.NOREPLAY:
+ case PlSqlParser.NORESETLOGS:
+ case PlSqlParser.NO_RESULT_CACHE:
+ case PlSqlParser.NOREVERSE:
+ case PlSqlParser.NO_REWRITE:
+ case PlSqlParser.NOREWRITE:
+ case PlSqlParser.NORMAL:
+ case PlSqlParser.NO_ROOT_SW_FOR_LOCAL:
+ case PlSqlParser.NOROWDEPENDENCIES:
+ case PlSqlParser.NOSCHEMACHECK:
+ case PlSqlParser.NOSEGMENT:
+ case PlSqlParser.NO_SEMIJOIN:
+ case PlSqlParser.NO_SEMI_TO_INNER:
+ case PlSqlParser.NO_SET_TO_JOIN:
+ case PlSqlParser.NOSORT:
+ case PlSqlParser.NO_SQL_TRANSLATION:
+ case PlSqlParser.NO_SQL_TUNE:
+ case PlSqlParser.NO_STAR_TRANSFORMATION:
+ case PlSqlParser.NO_STATEMENT_QUEUING:
+ case PlSqlParser.NO_STATS_GSETS:
+ case PlSqlParser.NOSTRICT:
+ case PlSqlParser.NO_SUBQUERY_PRUNING:
+ case PlSqlParser.NO_SUBSTRB_PAD:
+ case PlSqlParser.NO_SWAP_JOIN_INPUTS:
+ case PlSqlParser.NOSWITCH:
+ case PlSqlParser.NO_TABLE_LOOKUP_BY_NL:
+ case PlSqlParser.NO_TEMP_TABLE:
+ case PlSqlParser.NOTHING:
+ case PlSqlParser.NOTIFICATION:
+ case PlSqlParser.NO_TRANSFORM_DISTINCT_AGG:
+ case PlSqlParser.NO_UNNEST:
+ case PlSqlParser.NO_USE_CUBE:
+ case PlSqlParser.NO_USE_HASH_AGGREGATION:
+ case PlSqlParser.NO_USE_HASH_GBY_FOR_PUSHDOWN:
+ case PlSqlParser.NO_USE_HASH:
+ case PlSqlParser.NO_USE_INVISIBLE_INDEXES:
+ case PlSqlParser.NO_USE_MERGE:
+ case PlSqlParser.NO_USE_NL:
+ case PlSqlParser.NO_USE_VECTOR_AGGREGATION:
+ case PlSqlParser.NOVALIDATE:
+ case PlSqlParser.NO_VECTOR_TRANSFORM_DIMS:
+ case PlSqlParser.NO_VECTOR_TRANSFORM_FACT:
+ case PlSqlParser.NO_VECTOR_TRANSFORM:
+ case PlSqlParser.NO_XDB_FASTPATH_INSERT:
+ case PlSqlParser.NO_XML_DML_REWRITE:
+ case PlSqlParser.NO_XMLINDEX_REWRITE_IN_SELECT:
+ case PlSqlParser.NO_XMLINDEX_REWRITE:
+ case PlSqlParser.NO_XML_QUERY_REWRITE:
+ case PlSqlParser.NO_ZONEMAP:
+ case PlSqlParser.NTH_VALUE:
+ case PlSqlParser.NULLIF:
+ case PlSqlParser.NULLS:
+ case PlSqlParser.NUMBER:
+ case PlSqlParser.NUMERIC:
+ case PlSqlParser.NUM_INDEX_KEYS:
+ case PlSqlParser.NUMTODSINTERVAL:
+ case PlSqlParser.NUMTOYMINTERVAL:
+ case PlSqlParser.NVARCHAR2:
+ case PlSqlParser.NVL2:
+ case PlSqlParser.OBJECT2XML:
+ case PlSqlParser.OBJECT:
+ case PlSqlParser.OBJ_ID:
+ case PlSqlParser.OBJNO:
+ case PlSqlParser.OBJNO_REUSE:
+ case PlSqlParser.OCCURENCES:
+ case PlSqlParser.OFFLINE:
+ case PlSqlParser.OFF:
+ case PlSqlParser.OFFSET:
+ case PlSqlParser.OIDINDEX:
+ case PlSqlParser.OID:
+ case PlSqlParser.OLAP:
+ case PlSqlParser.OLD:
+ case PlSqlParser.OLD_PUSH_PRED:
+ case PlSqlParser.OLS:
+ case PlSqlParser.OLTP:
+ case PlSqlParser.OMIT:
+ case PlSqlParser.ONE:
+ case PlSqlParser.ONLINE:
+ case PlSqlParser.ONLY:
+ case PlSqlParser.OPAQUE:
+ case PlSqlParser.OPAQUE_TRANSFORM:
+ case PlSqlParser.OPAQUE_XCANONICAL:
+ case PlSqlParser.OPCODE:
+ case PlSqlParser.OPEN:
+ case PlSqlParser.OPERATIONS:
+ case PlSqlParser.OPERATOR:
+ case PlSqlParser.OPT_ESTIMATE:
+ case PlSqlParser.OPTIMAL:
+ case PlSqlParser.OPTIMIZE:
+ case PlSqlParser.OPTIMIZER_FEATURES_ENABLE:
+ case PlSqlParser.OPTIMIZER_GOAL:
+ case PlSqlParser.OPT_PARAM:
+ case PlSqlParser.ORA_BRANCH:
+ case PlSqlParser.ORA_CHECK_ACL:
+ case PlSqlParser.ORA_CHECK_PRIVILEGE:
+ case PlSqlParser.ORA_CLUSTERING:
+ case PlSqlParser.ORADATA:
+ case PlSqlParser.ORADEBUG:
+ case PlSqlParser.ORA_DST_AFFECTED:
+ case PlSqlParser.ORA_DST_CONVERT:
+ case PlSqlParser.ORA_DST_ERROR:
+ case PlSqlParser.ORA_GET_ACLIDS:
+ case PlSqlParser.ORA_GET_PRIVILEGES:
+ case PlSqlParser.ORA_HASH:
+ case PlSqlParser.ORA_INVOKING_USERID:
+ case PlSqlParser.ORA_INVOKING_USER:
+ case PlSqlParser.ORA_INVOKING_XS_USER_GUID:
+ case PlSqlParser.ORA_INVOKING_XS_USER:
+ case PlSqlParser.ORA_RAWCOMPARE:
+ case PlSqlParser.ORA_RAWCONCAT:
+ case PlSqlParser.ORA_ROWSCN:
+ case PlSqlParser.ORA_ROWSCN_RAW:
+ case PlSqlParser.ORA_ROWVERSION:
+ case PlSqlParser.ORA_TABVERSION:
+ case PlSqlParser.ORA_WRITE_TIME:
+ case PlSqlParser.ORDERED:
+ case PlSqlParser.ORDERED_PREDICATES:
+ case PlSqlParser.ORDINALITY:
+ case PlSqlParser.OR_EXPAND:
+ case PlSqlParser.ORGANIZATION:
+ case PlSqlParser.OR_PREDICATES:
+ case PlSqlParser.OSERROR:
+ case PlSqlParser.OTHER:
+ case PlSqlParser.OUTER_JOIN_TO_ANTI:
+ case PlSqlParser.OUTER_JOIN_TO_INNER:
+ case PlSqlParser.OUTER:
+ case PlSqlParser.OUTLINE_LEAF:
+ case PlSqlParser.OUTLINE:
+ case PlSqlParser.OUT_OF_LINE:
+ case PlSqlParser.OUT:
+ case PlSqlParser.OVERFLOW_NOMOVE:
+ case PlSqlParser.OVERFLOW:
+ case PlSqlParser.OVERLAPS:
+ case PlSqlParser.OVER:
+ case PlSqlParser.OVERRIDING:
+ case PlSqlParser.OWNER:
+ case PlSqlParser.OWNERSHIP:
+ case PlSqlParser.OWN:
+ case PlSqlParser.PACKAGE:
+ case PlSqlParser.PACKAGES:
+ case PlSqlParser.PARALLEL_ENABLE:
+ case PlSqlParser.PARALLEL_INDEX:
+ case PlSqlParser.PARALLEL:
+ case PlSqlParser.PARAMETERS:
+ case PlSqlParser.PARAM:
+ case PlSqlParser.PARENT:
+ case PlSqlParser.PARITY:
+ case PlSqlParser.PARTIAL_JOIN:
+ case PlSqlParser.PARTIALLY:
+ case PlSqlParser.PARTIAL:
+ case PlSqlParser.PARTIAL_ROLLUP_PUSHDOWN:
+ case PlSqlParser.PARTITION_HASH:
+ case PlSqlParser.PARTITION_LIST:
+ case PlSqlParser.PARTITION:
+ case PlSqlParser.PARTITION_RANGE:
+ case PlSqlParser.PARTITIONS:
+ case PlSqlParser.PARTNUMINST:
+ case PlSqlParser.PASSING:
+ case PlSqlParser.PASSWORD_GRACE_TIME:
+ case PlSqlParser.PASSWORD_LIFE_TIME:
+ case PlSqlParser.PASSWORD_LOCK_TIME:
+ case PlSqlParser.PASSWORD:
+ case PlSqlParser.PASSWORD_REUSE_MAX:
+ case PlSqlParser.PASSWORD_REUSE_TIME:
+ case PlSqlParser.PASSWORD_VERIFY_FUNCTION:
+ case PlSqlParser.PAST:
+ case PlSqlParser.PATCH:
+ case PlSqlParser.PATH:
+ case PlSqlParser.PATH_PREFIX:
+ case PlSqlParser.PATHS:
+ case PlSqlParser.PATTERN:
+ case PlSqlParser.PBL_HS_BEGIN:
+ case PlSqlParser.PBL_HS_END:
+ case PlSqlParser.PCTINCREASE:
+ case PlSqlParser.PCTTHRESHOLD:
+ case PlSqlParser.PCTUSED:
+ case PlSqlParser.PCTVERSION:
+ case PlSqlParser.PENDING:
+ case PlSqlParser.PERCENT_KEYWORD:
+ case PlSqlParser.PERCENT_RANKM:
+ case PlSqlParser.PERFORMANCE:
+ case PlSqlParser.PERIOD_KEYWORD:
+ case PlSqlParser.PERMANENT:
+ case PlSqlParser.PERMISSION:
+ case PlSqlParser.PERMUTE:
+ case PlSqlParser.PER:
+ case PlSqlParser.PFILE:
+ case PlSqlParser.PHYSICAL:
+ case PlSqlParser.PIKEY:
+ case PlSqlParser.PIPELINED:
+ case PlSqlParser.PIV_GB:
+ case PlSqlParser.PIVOT:
+ case PlSqlParser.PIV_SSF:
+ case PlSqlParser.PLACE_DISTINCT:
+ case PlSqlParser.PLACE_GROUP_BY:
+ case PlSqlParser.PLAN:
+ case PlSqlParser.PLSCOPE_SETTINGS:
+ case PlSqlParser.PLS_INTEGER:
+ case PlSqlParser.PLSQL_CCFLAGS:
+ case PlSqlParser.PLSQL_CODE_TYPE:
+ case PlSqlParser.PLSQL_DEBUG:
+ case PlSqlParser.PLSQL_OPTIMIZE_LEVEL:
+ case PlSqlParser.PLSQL_WARNINGS:
+ case PlSqlParser.PLUGGABLE:
+ case PlSqlParser.POINT:
+ case PlSqlParser.POLICY:
+ case PlSqlParser.POOL_16K:
+ case PlSqlParser.POOL_2K:
+ case PlSqlParser.POOL_32K:
+ case PlSqlParser.POOL_4K:
+ case PlSqlParser.POOL_8K:
+ case PlSqlParser.POSITIVEN:
+ case PlSqlParser.POSITIVE:
+ case PlSqlParser.POST_TRANSACTION:
+ case PlSqlParser.POWERMULTISET_BY_CARDINALITY:
+ case PlSqlParser.POWERMULTISET:
+ case PlSqlParser.POWER:
+ case PlSqlParser.PQ_CONCURRENT_UNION:
+ case PlSqlParser.PQ_DISTRIBUTE:
+ case PlSqlParser.PQ_DISTRIBUTE_WINDOW:
+ case PlSqlParser.PQ_FILTER:
+ case PlSqlParser.PQ_MAP:
+ case PlSqlParser.PQ_NOMAP:
+ case PlSqlParser.PQ_REPLICATE:
+ case PlSqlParser.PQ_SKEW:
+ case PlSqlParser.PRAGMA:
+ case PlSqlParser.PREBUILT:
+ case PlSqlParser.PRECEDES:
+ case PlSqlParser.PRECEDING:
+ case PlSqlParser.PRECISION:
+ case PlSqlParser.PRECOMPUTE_SUBQUERY:
+ case PlSqlParser.PREDICATE_REORDERS:
+ case PlSqlParser.PRELOAD:
+ case PlSqlParser.PREPARE:
+ case PlSqlParser.PRESENTNNV:
+ case PlSqlParser.PRESENT:
+ case PlSqlParser.PRESENTV:
+ case PlSqlParser.PRESERVE_OID:
+ case PlSqlParser.PRESERVE:
+ case PlSqlParser.PRETTY:
+ case PlSqlParser.PREVIOUS:
+ case PlSqlParser.PREV:
+ case PlSqlParser.PRIMARY:
+ case PlSqlParser.PRINTBLOBTOCLOB:
+ case PlSqlParser.PRIORITY:
+ case PlSqlParser.PRIVATE:
+ case PlSqlParser.PRIVATE_SGA:
+ case PlSqlParser.PRIVILEGED:
+ case PlSqlParser.PRIVILEGE:
+ case PlSqlParser.PRIVILEGES:
+ case PlSqlParser.PROCEDURAL:
+ case PlSqlParser.PROCEDURE:
+ case PlSqlParser.PROCESS:
+ case PlSqlParser.PROFILE:
+ case PlSqlParser.PROGRAM:
+ case PlSqlParser.PROJECT:
+ case PlSqlParser.PROPAGATE:
+ case PlSqlParser.PROTECTED:
+ case PlSqlParser.PROTECTION:
+ case PlSqlParser.PROXY:
+ case PlSqlParser.PRUNING:
+ case PlSqlParser.PULL_PRED:
+ case PlSqlParser.PURGE:
+ case PlSqlParser.PUSH_PRED:
+ case PlSqlParser.PUSH_SUBQ:
+ case PlSqlParser.PX_FAULT_TOLERANCE:
+ case PlSqlParser.PX_GRANULE:
+ case PlSqlParser.PX_JOIN_FILTER:
+ case PlSqlParser.QB_NAME:
+ case PlSqlParser.QUERY_BLOCK:
+ case PlSqlParser.QUERY:
+ case PlSqlParser.QUEUE_CURR:
+ case PlSqlParser.QUEUE:
+ case PlSqlParser.QUEUE_ROWP:
+ case PlSqlParser.QUIESCE:
+ case PlSqlParser.QUORUM:
+ case PlSqlParser.QUOTA:
+ case PlSqlParser.RAISE:
+ case PlSqlParser.RANDOM_LOCAL:
+ case PlSqlParser.RANDOM:
+ case PlSqlParser.RANGE:
+ case PlSqlParser.RANKM:
+ case PlSqlParser.RAPIDLY:
+ case PlSqlParser.RAW:
+ case PlSqlParser.RAWTOHEX:
+ case PlSqlParser.RAWTONHEX:
+ case PlSqlParser.RBA:
+ case PlSqlParser.RBO_OUTLINE:
+ case PlSqlParser.RDBA:
+ case PlSqlParser.READ:
+ case PlSqlParser.READS:
+ case PlSqlParser.REALM:
+ case PlSqlParser.REAL:
+ case PlSqlParser.REBALANCE:
+ case PlSqlParser.REBUILD:
+ case PlSqlParser.RECORD:
+ case PlSqlParser.RECORDS_PER_BLOCK:
+ case PlSqlParser.RECOVERABLE:
+ case PlSqlParser.RECOVER:
+ case PlSqlParser.RECOVERY:
+ case PlSqlParser.RECYCLEBIN:
+ case PlSqlParser.RECYCLE:
+ case PlSqlParser.REDACTION:
+ case PlSqlParser.REDEFINE:
+ case PlSqlParser.REDO:
+ case PlSqlParser.REDUCED:
+ case PlSqlParser.REDUNDANCY:
+ case PlSqlParser.REF_CASCADE_CURSOR:
+ case PlSqlParser.REFERENCED:
+ case PlSqlParser.REFERENCE:
+ case PlSqlParser.REFERENCES:
+ case PlSqlParser.REFERENCING:
+ case PlSqlParser.REF:
+ case PlSqlParser.REFRESH:
+ case PlSqlParser.REFTOHEX:
+ case PlSqlParser.REGEXP_COUNT:
+ case PlSqlParser.REGEXP_INSTR:
+ case PlSqlParser.REGEXP_LIKE:
+ case PlSqlParser.REGEXP_REPLACE:
+ case PlSqlParser.REGEXP_SUBSTR:
+ case PlSqlParser.REGISTER:
+ case PlSqlParser.REGR_AVGX:
+ case PlSqlParser.REGR_AVGY:
+ case PlSqlParser.REGR_COUNT:
+ case PlSqlParser.REGR_INTERCEPT:
+ case PlSqlParser.REGR_R2:
+ case PlSqlParser.REGR_SLOPE:
+ case PlSqlParser.REGR_SXX:
+ case PlSqlParser.REGR_SXY:
+ case PlSqlParser.REGR_SYY:
+ case PlSqlParser.REGULAR:
+ case PlSqlParser.REJECT:
+ case PlSqlParser.REKEY:
+ case PlSqlParser.RELATIONAL:
+ case PlSqlParser.RELOCATE:
+ case PlSqlParser.RELY:
+ case PlSqlParser.REMAINDER:
+ case PlSqlParser.REMOTE_MAPPED:
+ case PlSqlParser.REMOVE:
+ case PlSqlParser.RENAME:
+ case PlSqlParser.REPAIR:
+ case PlSqlParser.REPEAT:
+ case PlSqlParser.REPLACE:
+ case PlSqlParser.REPLICATION:
+ case PlSqlParser.REQUIRED:
+ case PlSqlParser.RESETLOGS:
+ case PlSqlParser.RESET:
+ case PlSqlParser.RESIZE:
+ case PlSqlParser.RESOLVE:
+ case PlSqlParser.RESOLVER:
+ case PlSqlParser.RESPECT:
+ case PlSqlParser.RESTART:
+ case PlSqlParser.RESTORE_AS_INTERVALS:
+ case PlSqlParser.RESTORE:
+ case PlSqlParser.RESTRICT_ALL_REF_CONS:
+ case PlSqlParser.RESTRICTED:
+ case PlSqlParser.RESTRICT_REFERENCES:
+ case PlSqlParser.RESTRICT:
+ case PlSqlParser.RESULT_CACHE:
+ case PlSqlParser.RESULT:
+ case PlSqlParser.RESUMABLE:
+ case PlSqlParser.RESUME:
+ case PlSqlParser.RETENTION:
+ case PlSqlParser.RETRY_ON_ROW_CHANGE:
+ case PlSqlParser.RETURNING:
+ case PlSqlParser.RETURN:
+ case PlSqlParser.REUSE:
+ case PlSqlParser.REVERSE:
+ case PlSqlParser.REWRITE_OR_ERROR:
+ case PlSqlParser.REWRITE:
+ case PlSqlParser.RIGHT:
+ case PlSqlParser.ROLE:
+ case PlSqlParser.ROLESET:
+ case PlSqlParser.ROLES:
+ case PlSqlParser.ROLLBACK:
+ case PlSqlParser.ROLLING:
+ case PlSqlParser.ROLLUP:
+ case PlSqlParser.ROWDEPENDENCIES:
+ case PlSqlParser.ROWID_MAPPING_TABLE:
+ case PlSqlParser.ROWID:
+ case PlSqlParser.ROWIDTOCHAR:
+ case PlSqlParser.ROWIDTONCHAR:
+ case PlSqlParser.ROW_LENGTH:
+ case PlSqlParser.ROWNUM:
+ case PlSqlParser.ROW:
+ case PlSqlParser.ROWS:
+ case PlSqlParser.RPAD:
+ case PlSqlParser.RTRIM:
+ case PlSqlParser.RULE:
+ case PlSqlParser.RULES:
+ case PlSqlParser.RUNNING:
+ case PlSqlParser.SALT:
+ case PlSqlParser.SAMPLE:
+ case PlSqlParser.SAVE_AS_INTERVALS:
+ case PlSqlParser.SAVEPOINT:
+ case PlSqlParser.SAVE:
+ case PlSqlParser.SB4:
+ case PlSqlParser.SCALE_ROWS:
+ case PlSqlParser.SCALE:
+ case PlSqlParser.SCAN_INSTANCES:
+ case PlSqlParser.SCAN:
+ case PlSqlParser.SCHEDULER:
+ case PlSqlParser.SCHEMACHECK:
+ case PlSqlParser.SCHEMA:
+ case PlSqlParser.SCN_ASCENDING:
+ case PlSqlParser.SCN:
+ case PlSqlParser.SCOPE:
+ case PlSqlParser.SCRUB:
+ case PlSqlParser.SD_ALL:
+ case PlSqlParser.SD_INHIBIT:
+ case PlSqlParser.SDO_GEOM_MBR:
+ case PlSqlParser.SD_SHOW:
+ case PlSqlParser.SEARCH:
+ case PlSqlParser.SECOND:
+ case PlSqlParser.SECRET:
+ case PlSqlParser.SECUREFILE_DBA:
+ case PlSqlParser.SECUREFILE:
+ case PlSqlParser.SECURITY:
+ case PlSqlParser.SEED:
+ case PlSqlParser.SEG_BLOCK:
+ case PlSqlParser.SEG_FILE:
+ case PlSqlParser.SEGMENT:
+ case PlSqlParser.SELECTIVITY:
+ case PlSqlParser.SELF:
+ case PlSqlParser.SEMIJOIN_DRIVER:
+ case PlSqlParser.SEMIJOIN:
+ case PlSqlParser.SEMI_TO_INNER:
+ case PlSqlParser.SEQUENCED:
+ case PlSqlParser.SEQUENCE:
+ case PlSqlParser.SEQUENTIAL:
+ case PlSqlParser.SERIALIZABLE:
+ case PlSqlParser.SERIALLY_REUSABLE:
+ case PlSqlParser.SERIAL:
+ case PlSqlParser.SERVERERROR:
+ case PlSqlParser.SERVICE_NAME_CONVERT:
+ case PlSqlParser.SERVICES:
+ case PlSqlParser.SESSION_CACHED_CURSORS:
+ case PlSqlParser.SESSION:
+ case PlSqlParser.SESSIONS_PER_USER:
+ case PlSqlParser.SESSIONTIMEZONE:
+ case PlSqlParser.SESSIONTZNAME:
+ case PlSqlParser.SET:
+ case PlSqlParser.SETS:
+ case PlSqlParser.SETTINGS:
+ case PlSqlParser.SET_TO_JOIN:
+ case PlSqlParser.SEVERE:
+ case PlSqlParser.SHARED_POOL:
+ case PlSqlParser.SHARED:
+ case PlSqlParser.SHARING:
+ case PlSqlParser.SHELFLIFE:
+ case PlSqlParser.SHOW:
+ case PlSqlParser.SHRINK:
+ case PlSqlParser.SHUTDOWN:
+ case PlSqlParser.SIBLINGS:
+ case PlSqlParser.SID:
+ case PlSqlParser.SIGNAL_COMPONENT:
+ case PlSqlParser.SIGNAL_FUNCTION:
+ case PlSqlParser.SIGN:
+ case PlSqlParser.SIGNTYPE:
+ case PlSqlParser.SIMPLE_INTEGER:
+ case PlSqlParser.SIMPLE:
+ case PlSqlParser.SINGLE:
+ case PlSqlParser.SINGLETASK:
+ case PlSqlParser.SINH:
+ case PlSqlParser.SIN:
+ case PlSqlParser.SKIP_EXT_OPTIMIZER:
+ case PlSqlParser.SKIP_:
+ case PlSqlParser.SKIP_UNQ_UNUSABLE_IDX:
+ case PlSqlParser.SKIP_UNUSABLE_INDEXES:
+ case PlSqlParser.SMALLFILE:
+ case PlSqlParser.SMALLINT:
+ case PlSqlParser.SNAPSHOT:
+ case PlSqlParser.SOME:
+ case PlSqlParser.SORT:
+ case PlSqlParser.SOUNDEX:
+ case PlSqlParser.SOURCE_FILE_DIRECTORY:
+ case PlSqlParser.SOURCE_FILE_NAME_CONVERT:
+ case PlSqlParser.SOURCE:
+ case PlSqlParser.SPACE_KEYWORD:
+ case PlSqlParser.SPECIFICATION:
+ case PlSqlParser.SPFILE:
+ case PlSqlParser.SPLIT:
+ case PlSqlParser.SPREADSHEET:
+ case PlSqlParser.SQLDATA:
+ case PlSqlParser.SQLERROR:
+ case PlSqlParser.SQLLDR:
+ case PlSqlParser.SQL:
+ case PlSqlParser.SQL_TRACE:
+ case PlSqlParser.SQL_TRANSLATION_PROFILE:
+ case PlSqlParser.SQRT:
+ case PlSqlParser.STALE:
+ case PlSqlParser.STANDALONE:
+ case PlSqlParser.STANDARD_HASH:
+ case PlSqlParser.STANDBY_MAX_DATA_DELAY:
+ case PlSqlParser.STANDBYS:
+ case PlSqlParser.STANDBY:
+ case PlSqlParser.STAR:
+ case PlSqlParser.STAR_TRANSFORMATION:
+ case PlSqlParser.STARTUP:
+ case PlSqlParser.STATEMENT_ID:
+ case PlSqlParser.STATEMENT_QUEUING:
+ case PlSqlParser.STATEMENTS:
+ case PlSqlParser.STATEMENT:
+ case PlSqlParser.STATE:
+ case PlSqlParser.STATIC:
+ case PlSqlParser.STATISTICS:
+ case PlSqlParser.STATS_BINOMIAL_TEST:
+ case PlSqlParser.STATS_CROSSTAB:
+ case PlSqlParser.STATS_F_TEST:
+ case PlSqlParser.STATS_KS_TEST:
+ case PlSqlParser.STATS_MODE:
+ case PlSqlParser.STATS_MW_TEST:
+ case PlSqlParser.STATS_ONE_WAY_ANOVA:
+ case PlSqlParser.STATS_T_TEST_INDEP:
+ case PlSqlParser.STATS_T_TEST_INDEPU:
+ case PlSqlParser.STATS_T_TEST_ONE:
+ case PlSqlParser.STATS_T_TEST_PAIRED:
+ case PlSqlParser.STATS_WSR_TEST:
+ case PlSqlParser.STDDEV_POP:
+ case PlSqlParser.STDDEV_SAMP:
+ case PlSqlParser.STOP:
+ case PlSqlParser.STORAGE:
+ case PlSqlParser.STORE:
+ case PlSqlParser.STREAMS:
+ case PlSqlParser.STREAM:
+ case PlSqlParser.STRICT:
+ case PlSqlParser.STRING:
+ case PlSqlParser.STRIPE_COLUMNS:
+ case PlSqlParser.STRIPE_WIDTH:
+ case PlSqlParser.STRIP:
+ case PlSqlParser.STRUCTURE:
+ case PlSqlParser.SUBMULTISET:
+ case PlSqlParser.SUBPARTITION_REL:
+ case PlSqlParser.SUBPARTITIONS:
+ case PlSqlParser.SUBPARTITION:
+ case PlSqlParser.SUBQUERIES:
+ case PlSqlParser.SUBQUERY_PRUNING:
+ case PlSqlParser.SUBSCRIBE:
+ case PlSqlParser.SUBSET:
+ case PlSqlParser.SUBSTITUTABLE:
+ case PlSqlParser.SUBSTR2:
+ case PlSqlParser.SUBSTR4:
+ case PlSqlParser.SUBSTRB:
+ case PlSqlParser.SUBSTRC:
+ case PlSqlParser.SUBTYPE:
+ case PlSqlParser.SUCCESSFUL:
+ case PlSqlParser.SUCCESS:
+ case PlSqlParser.SUMMARY:
+ case PlSqlParser.SUPPLEMENTAL:
+ case PlSqlParser.SUSPEND:
+ case PlSqlParser.SWAP_JOIN_INPUTS:
+ case PlSqlParser.SWITCHOVER:
+ case PlSqlParser.SWITCH:
+ case PlSqlParser.SYNCHRONOUS:
+ case PlSqlParser.SYNC:
+ case PlSqlParser.SYSASM:
+ case PlSqlParser.SYS_AUDIT:
+ case PlSqlParser.SYSAUX:
+ case PlSqlParser.SYSBACKUP:
+ case PlSqlParser.SYS_CHECKACL:
+ case PlSqlParser.SYS_CHECK_PRIVILEGE:
+ case PlSqlParser.SYS_CONNECT_BY_PATH:
+ case PlSqlParser.SYS_CONTEXT:
+ case PlSqlParser.SYSDATE:
+ case PlSqlParser.SYSDBA:
+ case PlSqlParser.SYS_DBURIGEN:
+ case PlSqlParser.SYSDG:
+ case PlSqlParser.SYS_DL_CURSOR:
+ case PlSqlParser.SYS_DM_RXFORM_CHR:
+ case PlSqlParser.SYS_DM_RXFORM_NUM:
+ case PlSqlParser.SYS_DOM_COMPARE:
+ case PlSqlParser.SYS_DST_PRIM2SEC:
+ case PlSqlParser.SYS_DST_SEC2PRIM:
+ case PlSqlParser.SYS_ET_BFILE_TO_RAW:
+ case PlSqlParser.SYS_ET_BLOB_TO_IMAGE:
+ case PlSqlParser.SYS_ET_IMAGE_TO_BLOB:
+ case PlSqlParser.SYS_ET_RAW_TO_BFILE:
+ case PlSqlParser.SYS_EXTPDTXT:
+ case PlSqlParser.SYS_EXTRACT_UTC:
+ case PlSqlParser.SYS_FBT_INSDEL:
+ case PlSqlParser.SYS_FILTER_ACLS:
+ case PlSqlParser.SYS_FNMATCHES:
+ case PlSqlParser.SYS_FNREPLACE:
+ case PlSqlParser.SYS_GET_ACLIDS:
+ case PlSqlParser.SYS_GET_COL_ACLIDS:
+ case PlSqlParser.SYS_GET_PRIVILEGES:
+ case PlSqlParser.SYS_GETTOKENID:
+ case PlSqlParser.SYS_GETXTIVAL:
+ case PlSqlParser.SYS_GUID:
+ case PlSqlParser.SYSGUID:
+ case PlSqlParser.SYSKM:
+ case PlSqlParser.SYS_MAKE_XMLNODEID:
+ case PlSqlParser.SYS_MAKEXML:
+ case PlSqlParser.SYS_MKXMLATTR:
+ case PlSqlParser.SYS_MKXTI:
+ case PlSqlParser.SYSOBJ:
+ case PlSqlParser.SYS_OP_ADT2BIN:
+ case PlSqlParser.SYS_OP_ADTCONS:
+ case PlSqlParser.SYS_OP_ALSCRVAL:
+ case PlSqlParser.SYS_OP_ATG:
+ case PlSqlParser.SYS_OP_BIN2ADT:
+ case PlSqlParser.SYS_OP_BITVEC:
+ case PlSqlParser.SYS_OP_BL2R:
+ case PlSqlParser.SYS_OP_BLOOM_FILTER_LIST:
+ case PlSqlParser.SYS_OP_BLOOM_FILTER:
+ case PlSqlParser.SYS_OP_C2C:
+ case PlSqlParser.SYS_OP_CAST:
+ case PlSqlParser.SYS_OP_CEG:
+ case PlSqlParser.SYS_OP_CL2C:
+ case PlSqlParser.SYS_OP_COMBINED_HASH:
+ case PlSqlParser.SYS_OP_COMP:
+ case PlSqlParser.SYS_OP_CONVERT:
+ case PlSqlParser.SYS_OP_COUNTCHG:
+ case PlSqlParser.SYS_OP_CSCONV:
+ case PlSqlParser.SYS_OP_CSCONVTEST:
+ case PlSqlParser.SYS_OP_CSR:
+ case PlSqlParser.SYS_OP_CSX_PATCH:
+ case PlSqlParser.SYS_OP_CYCLED_SEQ:
+ case PlSqlParser.SYS_OP_DECOMP:
+ case PlSqlParser.SYS_OP_DESCEND:
+ case PlSqlParser.SYS_OP_DISTINCT:
+ case PlSqlParser.SYS_OP_DRA:
+ case PlSqlParser.SYS_OP_DUMP:
+ case PlSqlParser.SYS_OP_DV_CHECK:
+ case PlSqlParser.SYS_OP_ENFORCE_NOT_NULL:
+ case PlSqlParser.SYSOPER:
+ case PlSqlParser.SYS_OP_EXTRACT:
+ case PlSqlParser.SYS_OP_GROUPING:
+ case PlSqlParser.SYS_OP_GUID:
+ case PlSqlParser.SYS_OP_HASH:
+ case PlSqlParser.SYS_OP_IIX:
+ case PlSqlParser.SYS_OP_ITR:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_CREATE:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_FILTER_LIST:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_FILTER:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_SUCCEEDED:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_USE:
+ case PlSqlParser.SYS_OP_LBID:
+ case PlSqlParser.SYS_OP_LOBLOC2BLOB:
+ case PlSqlParser.SYS_OP_LOBLOC2CLOB:
+ case PlSqlParser.SYS_OP_LOBLOC2ID:
+ case PlSqlParser.SYS_OP_LOBLOC2NCLOB:
+ case PlSqlParser.SYS_OP_LOBLOC2TYP:
+ case PlSqlParser.SYS_OP_LSVI:
+ case PlSqlParser.SYS_OP_LVL:
+ case PlSqlParser.SYS_OP_MAKEOID:
+ case PlSqlParser.SYS_OP_MAP_NONNULL:
+ case PlSqlParser.SYS_OP_MSR:
+ case PlSqlParser.SYS_OP_NICOMBINE:
+ case PlSqlParser.SYS_OP_NIEXTRACT:
+ case PlSqlParser.SYS_OP_NII:
+ case PlSqlParser.SYS_OP_NIX:
+ case PlSqlParser.SYS_OP_NOEXPAND:
+ case PlSqlParser.SYS_OP_NTCIMG:
+ case PlSqlParser.SYS_OP_NUMTORAW:
+ case PlSqlParser.SYS_OP_OIDVALUE:
+ case PlSqlParser.SYS_OP_OPNSIZE:
+ case PlSqlParser.SYS_OP_PAR_1:
+ case PlSqlParser.SYS_OP_PARGID_1:
+ case PlSqlParser.SYS_OP_PARGID:
+ case PlSqlParser.SYS_OP_PAR:
+ case PlSqlParser.SYS_OP_PART_ID:
+ case PlSqlParser.SYS_OP_PIVOT:
+ case PlSqlParser.SYS_OP_R2O:
+ case PlSqlParser.SYS_OP_RAWTONUM:
+ case PlSqlParser.SYS_OP_RDTM:
+ case PlSqlParser.SYS_OP_REF:
+ case PlSqlParser.SYS_OP_RMTD:
+ case PlSqlParser.SYS_OP_ROWIDTOOBJ:
+ case PlSqlParser.SYS_OP_RPB:
+ case PlSqlParser.SYS_OPTLOBPRBSC:
+ case PlSqlParser.SYS_OP_TOSETID:
+ case PlSqlParser.SYS_OP_TPR:
+ case PlSqlParser.SYS_OP_TRTB:
+ case PlSqlParser.SYS_OPTXICMP:
+ case PlSqlParser.SYS_OPTXQCASTASNQ:
+ case PlSqlParser.SYS_OP_UNDESCEND:
+ case PlSqlParser.SYS_OP_VECAND:
+ case PlSqlParser.SYS_OP_VECBIT:
+ case PlSqlParser.SYS_OP_VECOR:
+ case PlSqlParser.SYS_OP_VECXOR:
+ case PlSqlParser.SYS_OP_VERSION:
+ case PlSqlParser.SYS_OP_VREF:
+ case PlSqlParser.SYS_OP_VVD:
+ case PlSqlParser.SYS_OP_XMLCONS_FOR_CSX:
+ case PlSqlParser.SYS_OP_XPTHATG:
+ case PlSqlParser.SYS_OP_XPTHIDX:
+ case PlSqlParser.SYS_OP_XPTHOP:
+ case PlSqlParser.SYS_OP_XTXT2SQLT:
+ case PlSqlParser.SYS_OP_ZONE_ID:
+ case PlSqlParser.SYS_ORDERKEY_DEPTH:
+ case PlSqlParser.SYS_ORDERKEY_MAXCHILD:
+ case PlSqlParser.SYS_ORDERKEY_PARENT:
+ case PlSqlParser.SYS_PARALLEL_TXN:
+ case PlSqlParser.SYS_PATHID_IS_ATTR:
+ case PlSqlParser.SYS_PATHID_IS_NMSPC:
+ case PlSqlParser.SYS_PATHID_LASTNAME:
+ case PlSqlParser.SYS_PATHID_LASTNMSPC:
+ case PlSqlParser.SYS_PATH_REVERSE:
+ case PlSqlParser.SYS_PXQEXTRACT:
+ case PlSqlParser.SYS_RAW_TO_XSID:
+ case PlSqlParser.SYS_RID_ORDER:
+ case PlSqlParser.SYS_ROW_DELTA:
+ case PlSqlParser.SYS_SC_2_XMLT:
+ case PlSqlParser.SYS_SYNRCIREDO:
+ case PlSqlParser.SYSTEM_DEFINED:
+ case PlSqlParser.SYSTEM:
+ case PlSqlParser.SYSTIMESTAMP:
+ case PlSqlParser.SYS_TYPEID:
+ case PlSqlParser.SYS_UMAKEXML:
+ case PlSqlParser.SYS_XMLANALYZE:
+ case PlSqlParser.SYS_XMLCONTAINS:
+ case PlSqlParser.SYS_XMLCONV:
+ case PlSqlParser.SYS_XMLEXNSURI:
+ case PlSqlParser.SYS_XMLGEN:
+ case PlSqlParser.SYS_XMLI_LOC_ISNODE:
+ case PlSqlParser.SYS_XMLI_LOC_ISTEXT:
+ case PlSqlParser.SYS_XMLINSTR:
+ case PlSqlParser.SYS_XMLLOCATOR_GETSVAL:
+ case PlSqlParser.SYS_XMLNODEID_GETCID:
+ case PlSqlParser.SYS_XMLNODEID_GETLOCATOR:
+ case PlSqlParser.SYS_XMLNODEID_GETOKEY:
+ case PlSqlParser.SYS_XMLNODEID_GETPATHID:
+ case PlSqlParser.SYS_XMLNODEID_GETPTRID:
+ case PlSqlParser.SYS_XMLNODEID_GETRID:
+ case PlSqlParser.SYS_XMLNODEID_GETSVAL:
+ case PlSqlParser.SYS_XMLNODEID_GETTID:
+ case PlSqlParser.SYS_XMLNODEID:
+ case PlSqlParser.SYS_XMLT_2_SC:
+ case PlSqlParser.SYS_XMLTRANSLATE:
+ case PlSqlParser.SYS_XMLTYPE2SQL:
+ case PlSqlParser.SYS_XQ_ASQLCNV:
+ case PlSqlParser.SYS_XQ_ATOMCNVCHK:
+ case PlSqlParser.SYS_XQBASEURI:
+ case PlSqlParser.SYS_XQCASTABLEERRH:
+ case PlSqlParser.SYS_XQCODEP2STR:
+ case PlSqlParser.SYS_XQCODEPEQ:
+ case PlSqlParser.SYS_XQCON2SEQ:
+ case PlSqlParser.SYS_XQCONCAT:
+ case PlSqlParser.SYS_XQDELETE:
+ case PlSqlParser.SYS_XQDFLTCOLATION:
+ case PlSqlParser.SYS_XQDOC:
+ case PlSqlParser.SYS_XQDOCURI:
+ case PlSqlParser.SYS_XQDURDIV:
+ case PlSqlParser.SYS_XQED4URI:
+ case PlSqlParser.SYS_XQENDSWITH:
+ case PlSqlParser.SYS_XQERRH:
+ case PlSqlParser.SYS_XQERR:
+ case PlSqlParser.SYS_XQESHTMLURI:
+ case PlSqlParser.SYS_XQEXLOBVAL:
+ case PlSqlParser.SYS_XQEXSTWRP:
+ case PlSqlParser.SYS_XQEXTRACT:
+ case PlSqlParser.SYS_XQEXTRREF:
+ case PlSqlParser.SYS_XQEXVAL:
+ case PlSqlParser.SYS_XQFB2STR:
+ case PlSqlParser.SYS_XQFNBOOL:
+ case PlSqlParser.SYS_XQFNCMP:
+ case PlSqlParser.SYS_XQFNDATIM:
+ case PlSqlParser.SYS_XQFNLNAME:
+ case PlSqlParser.SYS_XQFNNM:
+ case PlSqlParser.SYS_XQFNNSURI:
+ case PlSqlParser.SYS_XQFNPREDTRUTH:
+ case PlSqlParser.SYS_XQFNQNM:
+ case PlSqlParser.SYS_XQFNROOT:
+ case PlSqlParser.SYS_XQFORMATNUM:
+ case PlSqlParser.SYS_XQFTCONTAIN:
+ case PlSqlParser.SYS_XQFUNCR:
+ case PlSqlParser.SYS_XQGETCONTENT:
+ case PlSqlParser.SYS_XQINDXOF:
+ case PlSqlParser.SYS_XQINSERT:
+ case PlSqlParser.SYS_XQINSPFX:
+ case PlSqlParser.SYS_XQIRI2URI:
+ case PlSqlParser.SYS_XQLANG:
+ case PlSqlParser.SYS_XQLLNMFRMQNM:
+ case PlSqlParser.SYS_XQMKNODEREF:
+ case PlSqlParser.SYS_XQNILLED:
+ case PlSqlParser.SYS_XQNODENAME:
+ case PlSqlParser.SYS_XQNORMSPACE:
+ case PlSqlParser.SYS_XQNORMUCODE:
+ case PlSqlParser.SYS_XQ_NRNG:
+ case PlSqlParser.SYS_XQNSP4PFX:
+ case PlSqlParser.SYS_XQNSPFRMQNM:
+ case PlSqlParser.SYS_XQPFXFRMQNM:
+ case PlSqlParser.SYS_XQ_PKSQL2XML:
+ case PlSqlParser.SYS_XQPOLYABS:
+ case PlSqlParser.SYS_XQPOLYADD:
+ case PlSqlParser.SYS_XQPOLYCEL:
+ case PlSqlParser.SYS_XQPOLYCSTBL:
+ case PlSqlParser.SYS_XQPOLYCST:
+ case PlSqlParser.SYS_XQPOLYDIV:
+ case PlSqlParser.SYS_XQPOLYFLR:
+ case PlSqlParser.SYS_XQPOLYMOD:
+ case PlSqlParser.SYS_XQPOLYMUL:
+ case PlSqlParser.SYS_XQPOLYRND:
+ case PlSqlParser.SYS_XQPOLYSQRT:
+ case PlSqlParser.SYS_XQPOLYSUB:
+ case PlSqlParser.SYS_XQPOLYUMUS:
+ case PlSqlParser.SYS_XQPOLYUPLS:
+ case PlSqlParser.SYS_XQPOLYVEQ:
+ case PlSqlParser.SYS_XQPOLYVGE:
+ case PlSqlParser.SYS_XQPOLYVGT:
+ case PlSqlParser.SYS_XQPOLYVLE:
+ case PlSqlParser.SYS_XQPOLYVLT:
+ case PlSqlParser.SYS_XQPOLYVNE:
+ case PlSqlParser.SYS_XQREF2VAL:
+ case PlSqlParser.SYS_XQRENAME:
+ case PlSqlParser.SYS_XQREPLACE:
+ case PlSqlParser.SYS_XQRESVURI:
+ case PlSqlParser.SYS_XQRNDHALF2EVN:
+ case PlSqlParser.SYS_XQRSLVQNM:
+ case PlSqlParser.SYS_XQRYENVPGET:
+ case PlSqlParser.SYS_XQRYVARGET:
+ case PlSqlParser.SYS_XQRYWRP:
+ case PlSqlParser.SYS_XQSEQ2CON4XC:
+ case PlSqlParser.SYS_XQSEQ2CON:
+ case PlSqlParser.SYS_XQSEQDEEPEQ:
+ case PlSqlParser.SYS_XQSEQINSB:
+ case PlSqlParser.SYS_XQSEQRM:
+ case PlSqlParser.SYS_XQSEQRVS:
+ case PlSqlParser.SYS_XQSEQSUB:
+ case PlSqlParser.SYS_XQSEQTYPMATCH:
+ case PlSqlParser.SYS_XQSTARTSWITH:
+ case PlSqlParser.SYS_XQSTATBURI:
+ case PlSqlParser.SYS_XQSTR2CODEP:
+ case PlSqlParser.SYS_XQSTRJOIN:
+ case PlSqlParser.SYS_XQSUBSTRAFT:
+ case PlSqlParser.SYS_XQSUBSTRBEF:
+ case PlSqlParser.SYS_XQTOKENIZE:
+ case PlSqlParser.SYS_XQTREATAS:
+ case PlSqlParser.SYS_XQ_UPKXML2SQL:
+ case PlSqlParser.SYS_XQXFORM:
+ case PlSqlParser.SYS_XSID_TO_RAW:
+ case PlSqlParser.SYS_ZMAP_FILTER:
+ case PlSqlParser.SYS_ZMAP_REFRESH:
+ case PlSqlParser.TABLE_LOOKUP_BY_NL:
+ case PlSqlParser.TABLESPACE_NO:
+ case PlSqlParser.TABLESPACE:
+ case PlSqlParser.TABLES:
+ case PlSqlParser.TABLE_STATS:
+ case PlSqlParser.TABLE:
+ case PlSqlParser.TABNO:
+ case PlSqlParser.TAG:
+ case PlSqlParser.TANH:
+ case PlSqlParser.TAN:
+ case PlSqlParser.TBLORIDXPARTNUM:
+ case PlSqlParser.TEMPFILE:
+ case PlSqlParser.TEMPLATE:
+ case PlSqlParser.TEMPORARY:
+ case PlSqlParser.TEMP_TABLE:
+ case PlSqlParser.TEST:
+ case PlSqlParser.TEXT:
+ case PlSqlParser.THAN:
+ case PlSqlParser.THEN:
+ case PlSqlParser.THE:
+ case PlSqlParser.THREAD:
+ case PlSqlParser.THROUGH:
+ case PlSqlParser.TIER:
+ case PlSqlParser.TIES:
+ case PlSqlParser.TIMEOUT:
+ case PlSqlParser.TIMESTAMP_LTZ_UNCONSTRAINED:
+ case PlSqlParser.TIMESTAMP:
+ case PlSqlParser.TIMESTAMP_TZ_UNCONSTRAINED:
+ case PlSqlParser.TIMESTAMP_UNCONSTRAINED:
+ case PlSqlParser.TIMES:
+ case PlSqlParser.TIME:
+ case PlSqlParser.TIMEZONE_ABBR:
+ case PlSqlParser.TIMEZONE_HOUR:
+ case PlSqlParser.TIMEZONE_MINUTE:
+ case PlSqlParser.TIMEZONE_OFFSET:
+ case PlSqlParser.TIMEZONE_REGION:
+ case PlSqlParser.TIME_ZONE:
+ case PlSqlParser.TIV_GB:
+ case PlSqlParser.TIV_SSF:
+ case PlSqlParser.TO_ACLID:
+ case PlSqlParser.TO_BINARY_DOUBLE:
+ case PlSqlParser.TO_BINARY_FLOAT:
+ case PlSqlParser.TO_BLOB:
+ case PlSqlParser.TO_CLOB:
+ case PlSqlParser.TO_DSINTERVAL:
+ case PlSqlParser.TO_LOB:
+ case PlSqlParser.TO_MULTI_BYTE:
+ case PlSqlParser.TO_NCHAR:
+ case PlSqlParser.TO_NCLOB:
+ case PlSqlParser.TO_NUMBER:
+ case PlSqlParser.TOPLEVEL:
+ case PlSqlParser.TO_SINGLE_BYTE:
+ case PlSqlParser.TO_TIMESTAMP:
+ case PlSqlParser.TO_TIMESTAMP_TZ:
+ case PlSqlParser.TO_TIME:
+ case PlSqlParser.TO_TIME_TZ:
+ case PlSqlParser.TO_YMINTERVAL:
+ case PlSqlParser.TRACE:
+ case PlSqlParser.TRACING:
+ case PlSqlParser.TRACKING:
+ case PlSqlParser.TRAILING:
+ case PlSqlParser.TRANSACTION:
+ case PlSqlParser.TRANSFORM_DISTINCT_AGG:
+ case PlSqlParser.TRANSITIONAL:
+ case PlSqlParser.TRANSITION:
+ case PlSqlParser.TRANSLATE:
+ case PlSqlParser.TRANSLATION:
+ case PlSqlParser.TREAT:
+ case PlSqlParser.TRIGGERS:
+ case PlSqlParser.TRIGGER:
+ case PlSqlParser.TRUE:
+ case PlSqlParser.TRUNCATE:
+ case PlSqlParser.TRUNC:
+ case PlSqlParser.TRUSTED:
+ case PlSqlParser.TRUST:
+ case PlSqlParser.TUNING:
+ case PlSqlParser.TX:
+ case PlSqlParser.TYPES:
+ case PlSqlParser.TYPE:
+ case PlSqlParser.TZ_OFFSET:
+ case PlSqlParser.UB2:
+ case PlSqlParser.UBA:
+ case PlSqlParser.UCS2:
+ case PlSqlParser.UID:
+ case PlSqlParser.UNARCHIVED:
+ case PlSqlParser.UNBOUNDED:
+ case PlSqlParser.UNBOUND:
+ case PlSqlParser.UNCONDITIONAL:
+ case PlSqlParser.UNDER:
+ case PlSqlParser.UNDO:
+ case PlSqlParser.UNDROP:
+ case PlSqlParser.UNIFORM:
+ case PlSqlParser.UNISTR:
+ case PlSqlParser.UNLIMITED:
+ case PlSqlParser.UNLOAD:
+ case PlSqlParser.UNLOCK:
+ case PlSqlParser.UNMATCHED:
+ case PlSqlParser.UNNEST_INNERJ_DISTINCT_VIEW:
+ case PlSqlParser.UNNEST_NOSEMIJ_NODISTINCTVIEW:
+ case PlSqlParser.UNNEST_SEMIJ_VIEW:
+ case PlSqlParser.UNNEST:
+ case PlSqlParser.UNPACKED:
+ case PlSqlParser.UNPIVOT:
+ case PlSqlParser.UNPLUG:
+ case PlSqlParser.UNPROTECTED:
+ case PlSqlParser.UNQUIESCE:
+ case PlSqlParser.UNRECOVERABLE:
+ case PlSqlParser.UNRESTRICTED:
+ case PlSqlParser.UNSUBSCRIBE:
+ case PlSqlParser.UNTIL:
+ case PlSqlParser.UNUSABLE:
+ case PlSqlParser.UNUSED:
+ case PlSqlParser.UPDATABLE:
+ case PlSqlParser.UPDATED:
+ case PlSqlParser.UPDATEXML:
+ case PlSqlParser.UPD_INDEXES:
+ case PlSqlParser.UPD_JOININDEX:
+ case PlSqlParser.UPGRADE:
+ case PlSqlParser.UPPER:
+ case PlSqlParser.UPSERT:
+ case PlSqlParser.UROWID:
+ case PlSqlParser.USABLE:
+ case PlSqlParser.USAGE:
+ case PlSqlParser.USE_ANTI:
+ case PlSqlParser.USE_CONCAT:
+ case PlSqlParser.USE_CUBE:
+ case PlSqlParser.USE_HASH_AGGREGATION:
+ case PlSqlParser.USE_HASH_GBY_FOR_PUSHDOWN:
+ case PlSqlParser.USE_HASH:
+ case PlSqlParser.USE_HIDDEN_PARTITIONS:
+ case PlSqlParser.USE_INVISIBLE_INDEXES:
+ case PlSqlParser.USE_MERGE_CARTESIAN:
+ case PlSqlParser.USE_MERGE:
+ case PlSqlParser.USE_NL:
+ case PlSqlParser.USE_NL_WITH_INDEX:
+ case PlSqlParser.USE_PRIVATE_OUTLINES:
+ case PlSqlParser.USER_DATA:
+ case PlSqlParser.USER_DEFINED:
+ case PlSqlParser.USERENV:
+ case PlSqlParser.USERGROUP:
+ case PlSqlParser.USER_RECYCLEBIN:
+ case PlSqlParser.USERS:
+ case PlSqlParser.USER_TABLESPACES:
+ case PlSqlParser.USER:
+ case PlSqlParser.USE_SEMI:
+ case PlSqlParser.USE_STORED_OUTLINES:
+ case PlSqlParser.USE_TTT_FOR_GSETS:
+ case PlSqlParser.USE:
+ case PlSqlParser.USE_VECTOR_AGGREGATION:
+ case PlSqlParser.USE_WEAK_NAME_RESL:
+ case PlSqlParser.USING_NO_EXPAND:
+ case PlSqlParser.USING:
+ case PlSqlParser.UTF16BE:
+ case PlSqlParser.UTF16LE:
+ case PlSqlParser.UTF32:
+ case PlSqlParser.UTF8:
+ case PlSqlParser.V1:
+ case PlSqlParser.V2:
+ case PlSqlParser.VALIDATE:
+ case PlSqlParser.VALIDATION:
+ case PlSqlParser.VALID_TIME_END:
+ case PlSqlParser.VALUE:
+ case PlSqlParser.VARCHAR2:
+ case PlSqlParser.VARCHAR:
+ case PlSqlParser.VARIABLE:
+ case PlSqlParser.VAR_POP:
+ case PlSqlParser.VARRAYS:
+ case PlSqlParser.VARRAY:
+ case PlSqlParser.VAR_SAMP:
+ case PlSqlParser.VARYING:
+ case PlSqlParser.VECTOR_READ_TRACE:
+ case PlSqlParser.VECTOR_READ:
+ case PlSqlParser.VECTOR_TRANSFORM_DIMS:
+ case PlSqlParser.VECTOR_TRANSFORM_FACT:
+ case PlSqlParser.VECTOR_TRANSFORM:
+ case PlSqlParser.VERIFIER:
+ case PlSqlParser.VERIFY:
+ case PlSqlParser.VERSIONING:
+ case PlSqlParser.VERSIONS_ENDSCN:
+ case PlSqlParser.VERSIONS_ENDTIME:
+ case PlSqlParser.VERSIONS_OPERATION:
+ case PlSqlParser.VERSIONS_STARTSCN:
+ case PlSqlParser.VERSIONS_STARTTIME:
+ case PlSqlParser.VERSIONS:
+ case PlSqlParser.VERSIONS_XID:
+ case PlSqlParser.VERSION:
+ case PlSqlParser.VIOLATION:
+ case PlSqlParser.VIRTUAL:
+ case PlSqlParser.VISIBILITY:
+ case PlSqlParser.VISIBLE:
+ case PlSqlParser.VOLUME:
+ case PlSqlParser.VSIZE:
+ case PlSqlParser.WAIT:
+ case PlSqlParser.WALLET:
+ case PlSqlParser.WARNING:
+ case PlSqlParser.WEEKS:
+ case PlSqlParser.WEEK:
+ case PlSqlParser.WELLFORMED:
+ case PlSqlParser.WHENEVER:
+ case PlSqlParser.WHEN:
+ case PlSqlParser.WHILE:
+ case PlSqlParser.WHITESPACE:
+ case PlSqlParser.WIDTH_BUCKET:
+ case PlSqlParser.WITHIN:
+ case PlSqlParser.WITHOUT:
+ case PlSqlParser.WITH_PLSQL:
+ case PlSqlParser.WORK:
+ case PlSqlParser.WRAPPED:
+ case PlSqlParser.WRAPPER:
+ case PlSqlParser.WRITE:
+ case PlSqlParser.XDB_FASTPATH_INSERT:
+ case PlSqlParser.X_DYN_PRUNE:
+ case PlSqlParser.XID:
+ case PlSqlParser.XML2OBJECT:
+ case PlSqlParser.XMLAGG:
+ case PlSqlParser.XMLATTRIBUTES:
+ case PlSqlParser.XMLCAST:
+ case PlSqlParser.XMLCDATA:
+ case PlSqlParser.XMLCOLATTVAL:
+ case PlSqlParser.XMLCOMMENT:
+ case PlSqlParser.XMLCONCAT:
+ case PlSqlParser.XMLDIFF:
+ case PlSqlParser.XML_DML_RWT_STMT:
+ case PlSqlParser.XMLELEMENT:
+ case PlSqlParser.XMLEXISTS2:
+ case PlSqlParser.XMLEXISTS:
+ case PlSqlParser.XMLFOREST:
+ case PlSqlParser.XMLINDEX_REWRITE_IN_SELECT:
+ case PlSqlParser.XMLINDEX_REWRITE:
+ case PlSqlParser.XMLINDEX_SEL_IDX_TBL:
+ case PlSqlParser.XMLISNODE:
+ case PlSqlParser.XMLISVALID:
+ case PlSqlParser.XMLNAMESPACES:
+ case PlSqlParser.XMLPARSE:
+ case PlSqlParser.XMLPATCH:
+ case PlSqlParser.XMLPI:
+ case PlSqlParser.XMLQUERYVAL:
+ case PlSqlParser.XMLQUERY:
+ case PlSqlParser.XMLROOT:
+ case PlSqlParser.XMLSCHEMA:
+ case PlSqlParser.XMLSERIALIZE:
+ case PlSqlParser.XMLTABLE:
+ case PlSqlParser.XMLTRANSFORMBLOB:
+ case PlSqlParser.XMLTRANSFORM:
+ case PlSqlParser.XMLTYPE:
+ case PlSqlParser.XML:
+ case PlSqlParser.XPATHTABLE:
+ case PlSqlParser.XS_SYS_CONTEXT:
+ case PlSqlParser.XS:
+ case PlSqlParser.YEARS:
+ case PlSqlParser.YEAR:
+ case PlSqlParser.YES:
+ case PlSqlParser.YMINTERVAL_UNCONSTRAINED:
+ case PlSqlParser.ZONEMAP:
+ case PlSqlParser.ZONE:
+ case PlSqlParser.PREDICTION:
+ case PlSqlParser.PREDICTION_BOUNDS:
+ case PlSqlParser.PREDICTION_COST:
+ case PlSqlParser.PREDICTION_DETAILS:
+ case PlSqlParser.PREDICTION_PROBABILITY:
+ case PlSqlParser.PREDICTION_SET:
+ case PlSqlParser.CUME_DIST:
+ case PlSqlParser.DENSE_RANK:
+ case PlSqlParser.LISTAGG:
+ case PlSqlParser.PERCENT_RANK:
+ case PlSqlParser.PERCENTILE_CONT:
+ case PlSqlParser.PERCENTILE_DISC:
+ case PlSqlParser.RANK:
+ case PlSqlParser.AVG:
+ case PlSqlParser.CORR:
+ case PlSqlParser.COVAR_:
+ case PlSqlParser.LAG:
+ case PlSqlParser.LEAD:
+ case PlSqlParser.MAX:
+ case PlSqlParser.MEDIAN:
+ case PlSqlParser.MIN:
+ case PlSqlParser.NTILE:
+ case PlSqlParser.NVL:
+ case PlSqlParser.RATIO_TO_REPORT:
+ case PlSqlParser.REGR_:
+ case PlSqlParser.ROUND:
+ case PlSqlParser.ROW_NUMBER:
+ case PlSqlParser.SUBSTR:
+ case PlSqlParser.TO_CHAR:
+ case PlSqlParser.TRIM:
+ case PlSqlParser.SUM:
+ case PlSqlParser.STDDEV:
+ case PlSqlParser.VAR_:
+ case PlSqlParser.VARIANCE:
+ case PlSqlParser.LEAST:
+ case PlSqlParser.GREATEST:
+ case PlSqlParser.TO_DATE:
+ case PlSqlParser.PERIOD:
+ case PlSqlParser.DELIMITED_ID:
+ case PlSqlParser.REGULAR_ID:
+ this.state = 4196;
+ this.grantee_name();
+ break;
+ case PlSqlParser.PUBLIC:
+ this.state = 4197;
+ this.match(PlSqlParser.PUBLIC);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 4207;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 4200;
+ this.match(PlSqlParser.COMMA);
+ this.state = 4203;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.ABORT:
+ case PlSqlParser.ABS:
+ case PlSqlParser.ACCESS:
+ case PlSqlParser.ACCESSED:
+ case PlSqlParser.ACCOUNT:
+ case PlSqlParser.ACL:
+ case PlSqlParser.ACOS:
+ case PlSqlParser.ACTION:
+ case PlSqlParser.ACTIONS:
+ case PlSqlParser.ACTIVATE:
+ case PlSqlParser.ACTIVE:
+ case PlSqlParser.ACTIVE_COMPONENT:
+ case PlSqlParser.ACTIVE_DATA:
+ case PlSqlParser.ACTIVE_FUNCTION:
+ case PlSqlParser.ACTIVE_TAG:
+ case PlSqlParser.ACTIVITY:
+ case PlSqlParser.ADAPTIVE_PLAN:
+ case PlSqlParser.ADD:
+ case PlSqlParser.ADD_COLUMN:
+ case PlSqlParser.ADD_GROUP:
+ case PlSqlParser.ADD_MONTHS:
+ case PlSqlParser.ADJ_DATE:
+ case PlSqlParser.ADMIN:
+ case PlSqlParser.ADMINISTER:
+ case PlSqlParser.ADMINISTRATOR:
+ case PlSqlParser.ADVANCED:
+ case PlSqlParser.ADVISE:
+ case PlSqlParser.ADVISOR:
+ case PlSqlParser.AFD_DISKSTRING:
+ case PlSqlParser.AFTER:
+ case PlSqlParser.AGENT:
+ case PlSqlParser.AGGREGATE:
+ case PlSqlParser.A_LETTER:
+ case PlSqlParser.ALIAS:
+ case PlSqlParser.ALLOCATE:
+ case PlSqlParser.ALLOW:
+ case PlSqlParser.ALL_ROWS:
+ case PlSqlParser.ALWAYS:
+ case PlSqlParser.ANALYZE:
+ case PlSqlParser.ANCILLARY:
+ case PlSqlParser.AND_EQUAL:
+ case PlSqlParser.ANOMALY:
+ case PlSqlParser.ANSI_REARCH:
+ case PlSqlParser.ANTIJOIN:
+ case PlSqlParser.ANYSCHEMA:
+ case PlSqlParser.APPEND:
+ case PlSqlParser.APPENDCHILDXML:
+ case PlSqlParser.APPEND_VALUES:
+ case PlSqlParser.APPLICATION:
+ case PlSqlParser.APPLY:
+ case PlSqlParser.APPROX_COUNT_DISTINCT:
+ case PlSqlParser.ARCHIVAL:
+ case PlSqlParser.ARCHIVE:
+ case PlSqlParser.ARCHIVED:
+ case PlSqlParser.ARCHIVELOG:
+ case PlSqlParser.ARRAY:
+ case PlSqlParser.ASCII:
+ case PlSqlParser.ASCIISTR:
+ case PlSqlParser.ASIN:
+ case PlSqlParser.ASIS:
+ case PlSqlParser.ASSEMBLY:
+ case PlSqlParser.ASSIGN:
+ case PlSqlParser.ASSOCIATE:
+ case PlSqlParser.ASYNC:
+ case PlSqlParser.ASYNCHRONOUS:
+ case PlSqlParser.ATAN2:
+ case PlSqlParser.ATAN:
+ case PlSqlParser.AT:
+ case PlSqlParser.ATTRIBUTE:
+ case PlSqlParser.ATTRIBUTES:
+ case PlSqlParser.AUTHENTICATED:
+ case PlSqlParser.AUTHENTICATION:
+ case PlSqlParser.AUTHID:
+ case PlSqlParser.AUTHORIZATION:
+ case PlSqlParser.AUTOALLOCATE:
+ case PlSqlParser.AUTO:
+ case PlSqlParser.AUTOEXTEND:
+ case PlSqlParser.AUTO_LOGIN:
+ case PlSqlParser.AUTOMATIC:
+ case PlSqlParser.AUTONOMOUS_TRANSACTION:
+ case PlSqlParser.AUTO_REOPTIMIZE:
+ case PlSqlParser.AVAILABILITY:
+ case PlSqlParser.AVRO:
+ case PlSqlParser.BACKGROUND:
+ case PlSqlParser.BACKUP:
+ case PlSqlParser.BASIC:
+ case PlSqlParser.BASICFILE:
+ case PlSqlParser.BATCH:
+ case PlSqlParser.BATCHSIZE:
+ case PlSqlParser.BATCH_TABLE_ACCESS_BY_ROWID:
+ case PlSqlParser.BECOME:
+ case PlSqlParser.BEFORE:
+ case PlSqlParser.BEGIN:
+ case PlSqlParser.BEGINNING:
+ case PlSqlParser.BEGIN_OUTLINE_DATA:
+ case PlSqlParser.BEHALF:
+ case PlSqlParser.BEQUEATH:
+ case PlSqlParser.BFILE:
+ case PlSqlParser.BFILENAME:
+ case PlSqlParser.BIGFILE:
+ case PlSqlParser.BINARY:
+ case PlSqlParser.BINARY_DOUBLE:
+ case PlSqlParser.BINARY_DOUBLE_INFINITY:
+ case PlSqlParser.BINARY_DOUBLE_NAN:
+ case PlSqlParser.BINARY_FLOAT:
+ case PlSqlParser.BINARY_FLOAT_INFINITY:
+ case PlSqlParser.BINARY_FLOAT_NAN:
+ case PlSqlParser.BINARY_INTEGER:
+ case PlSqlParser.BIND_AWARE:
+ case PlSqlParser.BINDING:
+ case PlSqlParser.BIN_TO_NUM:
+ case PlSqlParser.BITAND:
+ case PlSqlParser.BITMAP_AND:
+ case PlSqlParser.BITMAP:
+ case PlSqlParser.BITMAPS:
+ case PlSqlParser.BITMAP_TREE:
+ case PlSqlParser.BITS:
+ case PlSqlParser.BLOB:
+ case PlSqlParser.BLOCK:
+ case PlSqlParser.BLOCK_RANGE:
+ case PlSqlParser.BLOCKS:
+ case PlSqlParser.BLOCKSIZE:
+ case PlSqlParser.BODY:
+ case PlSqlParser.BOOLEAN:
+ case PlSqlParser.BOTH:
+ case PlSqlParser.BOUND:
+ case PlSqlParser.BRANCH:
+ case PlSqlParser.BREADTH:
+ case PlSqlParser.BROADCAST:
+ case PlSqlParser.BSON:
+ case PlSqlParser.BUFFER:
+ case PlSqlParser.BUFFER_CACHE:
+ case PlSqlParser.BUFFER_POOL:
+ case PlSqlParser.BUILD:
+ case PlSqlParser.BULK:
+ case PlSqlParser.BYPASS_RECURSIVE_CHECK:
+ case PlSqlParser.BYPASS_UJVC:
+ case PlSqlParser.BYTE:
+ case PlSqlParser.CACHE:
+ case PlSqlParser.CACHE_CB:
+ case PlSqlParser.CACHE_INSTANCES:
+ case PlSqlParser.CACHE_TEMP_TABLE:
+ case PlSqlParser.CACHING:
+ case PlSqlParser.CALCULATED:
+ case PlSqlParser.CALLBACK:
+ case PlSqlParser.CALL:
+ case PlSqlParser.CANCEL:
+ case PlSqlParser.CAPACITY:
+ case PlSqlParser.CARDINALITY:
+ case PlSqlParser.CASCADE:
+ case PlSqlParser.CASE:
+ case PlSqlParser.CAST:
+ case PlSqlParser.CATEGORY:
+ case PlSqlParser.CDBDEFAULT:
+ case PlSqlParser.CEIL:
+ case PlSqlParser.CELL_FLASH_CACHE:
+ case PlSqlParser.CERTIFICATE:
+ case PlSqlParser.CFILE:
+ case PlSqlParser.CHAINED:
+ case PlSqlParser.CHANGE:
+ case PlSqlParser.CHANGE_DUPKEY_ERROR_INDEX:
+ case PlSqlParser.CHARACTER:
+ case PlSqlParser.CHAR:
+ case PlSqlParser.CHAR_CS:
+ case PlSqlParser.CHARTOROWID:
+ case PlSqlParser.CHECK_ACL_REWRITE:
+ case PlSqlParser.CHECKPOINT:
+ case PlSqlParser.CHILD:
+ case PlSqlParser.CHOOSE:
+ case PlSqlParser.CHR:
+ case PlSqlParser.CHUNK:
+ case PlSqlParser.CLASS:
+ case PlSqlParser.CLASSIFIER:
+ case PlSqlParser.CLEANUP:
+ case PlSqlParser.CLEAR:
+ case PlSqlParser.C_LETTER:
+ case PlSqlParser.CLIENT:
+ case PlSqlParser.CLOB:
+ case PlSqlParser.CLONE:
+ case PlSqlParser.CLOSE_CACHED_OPEN_CURSORS:
+ case PlSqlParser.CLOSE:
+ case PlSqlParser.CLUSTER_BY_ROWID:
+ case PlSqlParser.CLUSTER:
+ case PlSqlParser.CLUSTER_DETAILS:
+ case PlSqlParser.CLUSTER_DISTANCE:
+ case PlSqlParser.CLUSTER_ID:
+ case PlSqlParser.CLUSTERING:
+ case PlSqlParser.CLUSTERING_FACTOR:
+ case PlSqlParser.CLUSTER_PROBABILITY:
+ case PlSqlParser.CLUSTER_SET:
+ case PlSqlParser.COALESCE:
+ case PlSqlParser.COALESCE_SQ:
+ case PlSqlParser.COARSE:
+ case PlSqlParser.CO_AUTH_IND:
+ case PlSqlParser.COLD:
+ case PlSqlParser.COLLECT:
+ case PlSqlParser.COLUMNAR:
+ case PlSqlParser.COLUMN_AUTH_INDICATOR:
+ case PlSqlParser.COLUMN:
+ case PlSqlParser.COLUMNS:
+ case PlSqlParser.COLUMN_STATS:
+ case PlSqlParser.COLUMN_VALUE:
+ case PlSqlParser.COMMENT:
+ case PlSqlParser.COMMIT:
+ case PlSqlParser.COMMITTED:
+ case PlSqlParser.COMMON_DATA:
+ case PlSqlParser.COMPACT:
+ case PlSqlParser.COMPATIBILITY:
+ case PlSqlParser.COMPILE:
+ case PlSqlParser.COMPLETE:
+ case PlSqlParser.COMPLIANCE:
+ case PlSqlParser.COMPONENT:
+ case PlSqlParser.COMPONENTS:
+ case PlSqlParser.COMPOSE:
+ case PlSqlParser.COMPOSITE:
+ case PlSqlParser.COMPOSITE_LIMIT:
+ case PlSqlParser.COMPOUND:
+ case PlSqlParser.COMPUTE:
+ case PlSqlParser.CONCAT:
+ case PlSqlParser.CON_DBID_TO_ID:
+ case PlSqlParser.CONDITIONAL:
+ case PlSqlParser.CONDITION:
+ case PlSqlParser.CONFIRM:
+ case PlSqlParser.CONFORMING:
+ case PlSqlParser.CON_GUID_TO_ID:
+ case PlSqlParser.CON_ID:
+ case PlSqlParser.CON_NAME_TO_ID:
+ case PlSqlParser.CONNECT_BY_CB_WHR_ONLY:
+ case PlSqlParser.CONNECT_BY_COMBINE_SW:
+ case PlSqlParser.CONNECT_BY_COST_BASED:
+ case PlSqlParser.CONNECT_BY_ELIM_DUPS:
+ case PlSqlParser.CONNECT_BY_FILTERING:
+ case PlSqlParser.CONNECT_BY_ISCYCLE:
+ case PlSqlParser.CONNECT_BY_ISLEAF:
+ case PlSqlParser.CONNECT_BY_ROOT:
+ case PlSqlParser.CONNECT_TIME:
+ case PlSqlParser.CONSIDER:
+ case PlSqlParser.CONSISTENT:
+ case PlSqlParser.CONSTANT:
+ case PlSqlParser.CONST:
+ case PlSqlParser.CONSTRAINT:
+ case PlSqlParser.CONSTRAINTS:
+ case PlSqlParser.CONSTRUCTOR:
+ case PlSqlParser.CONTAINER:
+ case PlSqlParser.CONTAINER_DATA:
+ case PlSqlParser.CONTAINERS:
+ case PlSqlParser.CONTENT:
+ case PlSqlParser.CONTENTS:
+ case PlSqlParser.CONTEXT:
+ case PlSqlParser.CONTINUE:
+ case PlSqlParser.CONTROLFILE:
+ case PlSqlParser.CON_UID_TO_ID:
+ case PlSqlParser.CONVERT:
+ case PlSqlParser.COOKIE:
+ case PlSqlParser.COPY:
+ case PlSqlParser.CORR_K:
+ case PlSqlParser.CORR_S:
+ case PlSqlParser.CORRUPTION:
+ case PlSqlParser.CORRUPT_XID_ALL:
+ case PlSqlParser.CORRUPT_XID:
+ case PlSqlParser.COS:
+ case PlSqlParser.COSH:
+ case PlSqlParser.COST:
+ case PlSqlParser.COST_XML_QUERY_REWRITE:
+ case PlSqlParser.COUNT:
+ case PlSqlParser.COVAR_POP:
+ case PlSqlParser.COVAR_SAMP:
+ case PlSqlParser.CPU_COSTING:
+ case PlSqlParser.CPU_PER_CALL:
+ case PlSqlParser.CPU_PER_SESSION:
+ case PlSqlParser.CRASH:
+ case PlSqlParser.CREATE_FILE_DEST:
+ case PlSqlParser.CREATE_STORED_OUTLINES:
+ case PlSqlParser.CREATION:
+ case PlSqlParser.CREDENTIAL:
+ case PlSqlParser.CRITICAL:
+ case PlSqlParser.CROSS:
+ case PlSqlParser.CROSSEDITION:
+ case PlSqlParser.CSCONVERT:
+ case PlSqlParser.CUBE_AJ:
+ case PlSqlParser.CUBE:
+ case PlSqlParser.CUBE_GB:
+ case PlSqlParser.CUBE_SJ:
+ case PlSqlParser.CUME_DISTM:
+ case PlSqlParser.CURRENT:
+ case PlSqlParser.CURRENT_DATE:
+ case PlSqlParser.CURRENT_SCHEMA:
+ case PlSqlParser.CURRENT_TIME:
+ case PlSqlParser.CURRENT_TIMESTAMP:
+ case PlSqlParser.CURRENT_USER:
+ case PlSqlParser.CURRENTV:
+ case PlSqlParser.CURSOR:
+ case PlSqlParser.CURSOR_SHARING_EXACT:
+ case PlSqlParser.CURSOR_SPECIFIC_SEGMENT:
+ case PlSqlParser.CUSTOMDATUM:
+ case PlSqlParser.CV:
+ case PlSqlParser.CYCLE:
+ case PlSqlParser.DANGLING:
+ case PlSqlParser.DATABASE:
+ case PlSqlParser.DATA:
+ case PlSqlParser.DATAFILE:
+ case PlSqlParser.DATAFILES:
+ case PlSqlParser.DATAMOVEMENT:
+ case PlSqlParser.DATAOBJNO:
+ case PlSqlParser.DATAOBJ_TO_MAT_PARTITION:
+ case PlSqlParser.DATAOBJ_TO_PARTITION:
+ case PlSqlParser.DATAPUMP:
+ case PlSqlParser.DATA_SECURITY_REWRITE_LIMIT:
+ case PlSqlParser.DATE_MODE:
+ case PlSqlParser.DAY:
+ case PlSqlParser.DAYS:
+ case PlSqlParser.DBA:
+ case PlSqlParser.DBA_RECYCLEBIN:
+ case PlSqlParser.DBMS_STATS:
+ case PlSqlParser.DB_ROLE_CHANGE:
+ case PlSqlParser.DBTIMEZONE:
+ case PlSqlParser.DB_UNIQUE_NAME:
+ case PlSqlParser.DB_VERSION:
+ case PlSqlParser.DDL:
+ case PlSqlParser.DEALLOCATE:
+ case PlSqlParser.DEBUG:
+ case PlSqlParser.DEBUGGER:
+ case PlSqlParser.DEC:
+ case PlSqlParser.DECIMAL:
+ case PlSqlParser.DECLARE:
+ case PlSqlParser.DECOMPOSE:
+ case PlSqlParser.DECORRELATE:
+ case PlSqlParser.DECR:
+ case PlSqlParser.DECREMENT:
+ case PlSqlParser.DECRYPT:
+ case PlSqlParser.DEDUPLICATE:
+ case PlSqlParser.DEFAULTS:
+ case PlSqlParser.DEFERRABLE:
+ case PlSqlParser.DEFERRED:
+ case PlSqlParser.DEFINED:
+ case PlSqlParser.DEFINE:
+ case PlSqlParser.DEFINER:
+ case PlSqlParser.DEGREE:
+ case PlSqlParser.DELAY:
+ case PlSqlParser.DELEGATE:
+ case PlSqlParser.DELETE_ALL:
+ case PlSqlParser.DELETE:
+ case PlSqlParser.DELETEXML:
+ case PlSqlParser.DEMAND:
+ case PlSqlParser.DENSE_RANKM:
+ case PlSqlParser.DEPENDENT:
+ case PlSqlParser.DEPTH:
+ case PlSqlParser.DEQUEUE:
+ case PlSqlParser.DEREF:
+ case PlSqlParser.DEREF_NO_REWRITE:
+ case PlSqlParser.DESTROY:
+ case PlSqlParser.DETACHED:
+ case PlSqlParser.DETERMINES:
+ case PlSqlParser.DETERMINISTIC:
+ case PlSqlParser.DICTIONARY:
+ case PlSqlParser.DIMENSION:
+ case PlSqlParser.DIMENSIONS:
+ case PlSqlParser.DIRECT_LOAD:
+ case PlSqlParser.DIRECTORY:
+ case PlSqlParser.DIRECT_PATH:
+ case PlSqlParser.DISABLE_ALL:
+ case PlSqlParser.DISABLE:
+ case PlSqlParser.DISABLE_PARALLEL_DML:
+ case PlSqlParser.DISABLE_PRESET:
+ case PlSqlParser.DISABLE_RPKE:
+ case PlSqlParser.DISALLOW:
+ case PlSqlParser.DISASSOCIATE:
+ case PlSqlParser.DISCARD:
+ case PlSqlParser.DISCONNECT:
+ case PlSqlParser.DISK:
+ case PlSqlParser.DISKGROUP:
+ case PlSqlParser.DISKS:
+ case PlSqlParser.DISMOUNT:
+ case PlSqlParser.DISTINGUISHED:
+ case PlSqlParser.DISTRIBUTED:
+ case PlSqlParser.DISTRIBUTE:
+ case PlSqlParser.DML:
+ case PlSqlParser.DML_UPDATE:
+ case PlSqlParser.DOCFIDELITY:
+ case PlSqlParser.DOCUMENT:
+ case PlSqlParser.DOMAIN_INDEX_FILTER:
+ case PlSqlParser.DOMAIN_INDEX_NO_SORT:
+ case PlSqlParser.DOMAIN_INDEX_SORT:
+ case PlSqlParser.DOUBLE:
+ case PlSqlParser.DOWNGRADE:
+ case PlSqlParser.DRIVING_SITE:
+ case PlSqlParser.DROP_COLUMN:
+ case PlSqlParser.DROP_GROUP:
+ case PlSqlParser.DSINTERVAL_UNCONSTRAINED:
+ case PlSqlParser.DST_UPGRADE_INSERT_CONV:
+ case PlSqlParser.DUMP:
+ case PlSqlParser.DUPLICATE:
+ case PlSqlParser.DV:
+ case PlSqlParser.DYNAMIC:
+ case PlSqlParser.DYNAMIC_SAMPLING:
+ case PlSqlParser.DYNAMIC_SAMPLING_EST_CDN:
+ case PlSqlParser.EACH:
+ case PlSqlParser.EDITIONABLE:
+ case PlSqlParser.EDITION:
+ case PlSqlParser.EDITIONING:
+ case PlSqlParser.EDITIONS:
+ case PlSqlParser.ELEMENT:
+ case PlSqlParser.ELIM_GROUPBY:
+ case PlSqlParser.ELIMINATE_JOIN:
+ case PlSqlParser.ELIMINATE_OBY:
+ case PlSqlParser.ELIMINATE_OUTER_JOIN:
+ case PlSqlParser.EM:
+ case PlSqlParser.EMPTY_BLOB:
+ case PlSqlParser.EMPTY_CLOB:
+ case PlSqlParser.EMPTY:
+ case PlSqlParser.ENABLE_ALL:
+ case PlSqlParser.ENABLE:
+ case PlSqlParser.ENABLE_PARALLEL_DML:
+ case PlSqlParser.ENABLE_PRESET:
+ case PlSqlParser.ENCODING:
+ case PlSqlParser.ENCRYPT:
+ case PlSqlParser.ENCRYPTION:
+ case PlSqlParser.END_OUTLINE_DATA:
+ case PlSqlParser.ENFORCED:
+ case PlSqlParser.ENFORCE:
+ case PlSqlParser.ENQUEUE:
+ case PlSqlParser.ENTERPRISE:
+ case PlSqlParser.ENTITYESCAPING:
+ case PlSqlParser.ENTRY:
+ case PlSqlParser.EQUIPART:
+ case PlSqlParser.ERR:
+ case PlSqlParser.ERROR_ARGUMENT:
+ case PlSqlParser.ERROR:
+ case PlSqlParser.ERROR_ON_OVERLAP_TIME:
+ case PlSqlParser.ERRORS:
+ case PlSqlParser.ESCAPE:
+ case PlSqlParser.ESTIMATE:
+ case PlSqlParser.EVAL:
+ case PlSqlParser.EVALNAME:
+ case PlSqlParser.EVALUATE:
+ case PlSqlParser.EVALUATION:
+ case PlSqlParser.EVENTS:
+ case PlSqlParser.EVERY:
+ case PlSqlParser.EXCEPT:
+ case PlSqlParser.EXCEPTION:
+ case PlSqlParser.EXCEPTION_INIT:
+ case PlSqlParser.EXCEPTIONS:
+ case PlSqlParser.EXCHANGE:
+ case PlSqlParser.EXCLUDE:
+ case PlSqlParser.EXCLUDING:
+ case PlSqlParser.EXECUTE:
+ case PlSqlParser.EXEMPT:
+ case PlSqlParser.EXISTING:
+ case PlSqlParser.EXISTS:
+ case PlSqlParser.EXISTSNODE:
+ case PlSqlParser.EXIT:
+ case PlSqlParser.EXPAND_GSET_TO_UNION:
+ case PlSqlParser.EXPAND_TABLE:
+ case PlSqlParser.EXP:
+ case PlSqlParser.EXPIRE:
+ case PlSqlParser.EXPLAIN:
+ case PlSqlParser.EXPLOSION:
+ case PlSqlParser.EXPORT:
+ case PlSqlParser.EXPR_CORR_CHECK:
+ case PlSqlParser.EXPRESS:
+ case PlSqlParser.EXTENDS:
+ case PlSqlParser.EXTENT:
+ case PlSqlParser.EXTENTS:
+ case PlSqlParser.EXTERNAL:
+ case PlSqlParser.EXTERNALLY:
+ case PlSqlParser.EXTRACTCLOBXML:
+ case PlSqlParser.EXTRACT:
+ case PlSqlParser.EXTRACTVALUE:
+ case PlSqlParser.EXTRA:
+ case PlSqlParser.FACILITY:
+ case PlSqlParser.FACT:
+ case PlSqlParser.FACTOR:
+ case PlSqlParser.FACTORIZE_JOIN:
+ case PlSqlParser.FAILED:
+ case PlSqlParser.FAILED_LOGIN_ATTEMPTS:
+ case PlSqlParser.FAILGROUP:
+ case PlSqlParser.FAILOVER:
+ case PlSqlParser.FAILURE:
+ case PlSqlParser.FALSE:
+ case PlSqlParser.FAMILY:
+ case PlSqlParser.FAR:
+ case PlSqlParser.FAST:
+ case PlSqlParser.FASTSTART:
+ case PlSqlParser.FBTSCAN:
+ case PlSqlParser.FEATURE_DETAILS:
+ case PlSqlParser.FEATURE_ID:
+ case PlSqlParser.FEATURE_SET:
+ case PlSqlParser.FEATURE_VALUE:
+ case PlSqlParser.FETCH:
+ case PlSqlParser.FILE:
+ case PlSqlParser.FILE_NAME_CONVERT:
+ case PlSqlParser.FILESYSTEM_LIKE_LOGGING:
+ case PlSqlParser.FILTER:
+ case PlSqlParser.FINAL:
+ case PlSqlParser.FINE:
+ case PlSqlParser.FINISH:
+ case PlSqlParser.FIRST:
+ case PlSqlParser.FIRSTM:
+ case PlSqlParser.FIRST_ROWS:
+ case PlSqlParser.FIRST_VALUE:
+ case PlSqlParser.FIXED_VIEW_DATA:
+ case PlSqlParser.FLAGGER:
+ case PlSqlParser.FLASHBACK:
+ case PlSqlParser.FLASH_CACHE:
+ case PlSqlParser.FLOAT:
+ case PlSqlParser.FLOB:
+ case PlSqlParser.FLOOR:
+ case PlSqlParser.FLUSH:
+ case PlSqlParser.FOLDER:
+ case PlSqlParser.FOLLOWING:
+ case PlSqlParser.FOLLOWS:
+ case PlSqlParser.FORALL:
+ case PlSqlParser.FORCE:
+ case PlSqlParser.FORCE_XML_QUERY_REWRITE:
+ case PlSqlParser.FOREIGN:
+ case PlSqlParser.FOREVER:
+ case PlSqlParser.FORMAT:
+ case PlSqlParser.FORWARD:
+ case PlSqlParser.FRAGMENT_NUMBER:
+ case PlSqlParser.FREELIST:
+ case PlSqlParser.FREELISTS:
+ case PlSqlParser.FREEPOOLS:
+ case PlSqlParser.FRESH:
+ case PlSqlParser.FROM_TZ:
+ case PlSqlParser.FULL:
+ case PlSqlParser.FULL_OUTER_JOIN_TO_OUTER:
+ case PlSqlParser.FUNCTION:
+ case PlSqlParser.FUNCTIONS:
+ case PlSqlParser.GATHER_OPTIMIZER_STATISTICS:
+ case PlSqlParser.GATHER_PLAN_STATISTICS:
+ case PlSqlParser.GBY_CONC_ROLLUP:
+ case PlSqlParser.GBY_PUSHDOWN:
+ case PlSqlParser.GENERATED:
+ case PlSqlParser.GET:
+ case PlSqlParser.GLOBAL:
+ case PlSqlParser.GLOBALLY:
+ case PlSqlParser.GLOBAL_NAME:
+ case PlSqlParser.GLOBAL_TOPIC_ENABLED:
+ case PlSqlParser.GROUP_BY:
+ case PlSqlParser.GROUP_ID:
+ case PlSqlParser.GROUPING:
+ case PlSqlParser.GROUPING_ID:
+ case PlSqlParser.GROUPS:
+ case PlSqlParser.GUARANTEED:
+ case PlSqlParser.GUARANTEE:
+ case PlSqlParser.GUARD:
+ case PlSqlParser.HASH_AJ:
+ case PlSqlParser.HASH:
+ case PlSqlParser.HASHKEYS:
+ case PlSqlParser.HASH_SJ:
+ case PlSqlParser.HEADER:
+ case PlSqlParser.HEAP:
+ case PlSqlParser.HELP:
+ case PlSqlParser.HEXTORAW:
+ case PlSqlParser.HEXTOREF:
+ case PlSqlParser.HIDDEN_KEYWORD:
+ case PlSqlParser.HIDE:
+ case PlSqlParser.HIERARCHY:
+ case PlSqlParser.HIGH:
+ case PlSqlParser.HINTSET_BEGIN:
+ case PlSqlParser.HINTSET_END:
+ case PlSqlParser.HOT:
+ case PlSqlParser.HOUR:
+ case PlSqlParser.HWM_BROKERED:
+ case PlSqlParser.HYBRID:
+ case PlSqlParser.IDENTIFIER:
+ case PlSqlParser.IDENTITY:
+ case PlSqlParser.IDGENERATORS:
+ case PlSqlParser.ID:
+ case PlSqlParser.IDLE_TIME:
+ case PlSqlParser.IF:
+ case PlSqlParser.IGNORE:
+ case PlSqlParser.IGNORE_OPTIM_EMBEDDED_HINTS:
+ case PlSqlParser.IGNORE_ROW_ON_DUPKEY_INDEX:
+ case PlSqlParser.IGNORE_WHERE_CLAUSE:
+ case PlSqlParser.ILM:
+ case PlSqlParser.IMMEDIATE:
+ case PlSqlParser.IMPACT:
+ case PlSqlParser.IMPORT:
+ case PlSqlParser.INACTIVE:
+ case PlSqlParser.INCLUDE:
+ case PlSqlParser.INCLUDE_VERSION:
+ case PlSqlParser.INCLUDING:
+ case PlSqlParser.INCREMENTAL:
+ case PlSqlParser.INCREMENT:
+ case PlSqlParser.INCR:
+ case PlSqlParser.INDENT:
+ case PlSqlParser.INDEX_ASC:
+ case PlSqlParser.INDEX_COMBINE:
+ case PlSqlParser.INDEX_DESC:
+ case PlSqlParser.INDEXED:
+ case PlSqlParser.INDEXES:
+ case PlSqlParser.INDEX_FFS:
+ case PlSqlParser.INDEX_FILTER:
+ case PlSqlParser.INDEXING:
+ case PlSqlParser.INDEX_JOIN:
+ case PlSqlParser.INDEX_ROWS:
+ case PlSqlParser.INDEX_RRS:
+ case PlSqlParser.INDEX_RS_ASC:
+ case PlSqlParser.INDEX_RS_DESC:
+ case PlSqlParser.INDEX_RS:
+ case PlSqlParser.INDEX_SCAN:
+ case PlSqlParser.INDEX_SKIP_SCAN:
+ case PlSqlParser.INDEX_SS_ASC:
+ case PlSqlParser.INDEX_SS_DESC:
+ case PlSqlParser.INDEX_SS:
+ case PlSqlParser.INDEX_STATS:
+ case PlSqlParser.INDEXTYPE:
+ case PlSqlParser.INDEXTYPES:
+ case PlSqlParser.INDICATOR:
+ case PlSqlParser.INDICES:
+ case PlSqlParser.INFINITE:
+ case PlSqlParser.INFORMATIONAL:
+ case PlSqlParser.INHERIT:
+ case PlSqlParser.INITCAP:
+ case PlSqlParser.INITIAL:
+ case PlSqlParser.INITIALIZED:
+ case PlSqlParser.INITIALLY:
+ case PlSqlParser.INITRANS:
+ case PlSqlParser.INLINE:
+ case PlSqlParser.INLINE_XMLTYPE_NT:
+ case PlSqlParser.INMEMORY:
+ case PlSqlParser.IN_MEMORY_METADATA:
+ case PlSqlParser.INMEMORY_PRUNING:
+ case PlSqlParser.INNER:
+ case PlSqlParser.INOUT:
+ case PlSqlParser.INPLACE:
+ case PlSqlParser.INSERTCHILDXMLAFTER:
+ case PlSqlParser.INSERTCHILDXMLBEFORE:
+ case PlSqlParser.INSERTCHILDXML:
+ case PlSqlParser.INSERTXMLAFTER:
+ case PlSqlParser.INSERTXMLBEFORE:
+ case PlSqlParser.INSTANCE:
+ case PlSqlParser.INSTANCES:
+ case PlSqlParser.INSTANTIABLE:
+ case PlSqlParser.INSTANTLY:
+ case PlSqlParser.INSTEAD:
+ case PlSqlParser.INSTR2:
+ case PlSqlParser.INSTR4:
+ case PlSqlParser.INSTRB:
+ case PlSqlParser.INSTRC:
+ case PlSqlParser.INSTR:
+ case PlSqlParser.INTEGER:
+ case PlSqlParser.INTERLEAVED:
+ case PlSqlParser.INTERMEDIATE:
+ case PlSqlParser.INTERNAL_CONVERT:
+ case PlSqlParser.INTERNAL_USE:
+ case PlSqlParser.INTERPRETED:
+ case PlSqlParser.INTERVAL:
+ case PlSqlParser.INT:
+ case PlSqlParser.INVALIDATE:
+ case PlSqlParser.INVISIBLE:
+ case PlSqlParser.IN_XQUERY:
+ case PlSqlParser.ISOLATION:
+ case PlSqlParser.ISOLATION_LEVEL:
+ case PlSqlParser.ITERATE:
+ case PlSqlParser.ITERATION_NUMBER:
+ case PlSqlParser.JAVA:
+ case PlSqlParser.JOB:
+ case PlSqlParser.JOIN:
+ case PlSqlParser.JSON_ARRAYAGG:
+ case PlSqlParser.JSON_ARRAY:
+ case PlSqlParser.JSON_EQUAL:
+ case PlSqlParser.JSON_EXISTS2:
+ case PlSqlParser.JSON_EXISTS:
+ case PlSqlParser.JSONGET:
+ case PlSqlParser.JSON:
+ case PlSqlParser.JSON_OBJECTAGG:
+ case PlSqlParser.JSON_OBJECT:
+ case PlSqlParser.JSONPARSE:
+ case PlSqlParser.JSON_QUERY:
+ case PlSqlParser.JSON_SERIALIZE:
+ case PlSqlParser.JSON_TABLE:
+ case PlSqlParser.JSON_TEXTCONTAINS2:
+ case PlSqlParser.JSON_TEXTCONTAINS:
+ case PlSqlParser.JSON_VALUE:
+ case PlSqlParser.KEEP_DUPLICATES:
+ case PlSqlParser.KEEP:
+ case PlSqlParser.KERBEROS:
+ case PlSqlParser.KEY:
+ case PlSqlParser.KEY_LENGTH:
+ case PlSqlParser.KEYSIZE:
+ case PlSqlParser.KEYS:
+ case PlSqlParser.KEYSTORE:
+ case PlSqlParser.KILL:
+ case PlSqlParser.LABEL:
+ case PlSqlParser.LANGUAGE:
+ case PlSqlParser.LAST_DAY:
+ case PlSqlParser.LAST:
+ case PlSqlParser.LAST_VALUE:
+ case PlSqlParser.LATERAL:
+ case PlSqlParser.LAX:
+ case PlSqlParser.LAYER:
+ case PlSqlParser.LDAP_REGISTRATION_ENABLED:
+ case PlSqlParser.LDAP_REGISTRATION:
+ case PlSqlParser.LDAP_REG_SYNC_INTERVAL:
+ case PlSqlParser.LEADING:
+ case PlSqlParser.LEFT:
+ case PlSqlParser.LENGTH2:
+ case PlSqlParser.LENGTH4:
+ case PlSqlParser.LENGTHB:
+ case PlSqlParser.LENGTHC:
+ case PlSqlParser.LENGTH:
+ case PlSqlParser.LESS:
+ case PlSqlParser.LEVEL:
+ case PlSqlParser.LEVELS:
+ case PlSqlParser.LIBRARY:
+ case PlSqlParser.LIFECYCLE:
+ case PlSqlParser.LIFE:
+ case PlSqlParser.LIFETIME:
+ case PlSqlParser.LIKE2:
+ case PlSqlParser.LIKE4:
+ case PlSqlParser.LIKEC:
+ case PlSqlParser.LIKE_EXPAND:
+ case PlSqlParser.LIMIT:
+ case PlSqlParser.LINEAR:
+ case PlSqlParser.LINK:
+ case PlSqlParser.LIST:
+ case PlSqlParser.LN:
+ case PlSqlParser.LNNVL:
+ case PlSqlParser.LOAD:
+ case PlSqlParser.LOB:
+ case PlSqlParser.LOBNVL:
+ case PlSqlParser.LOBS:
+ case PlSqlParser.LOCAL_INDEXES:
+ case PlSqlParser.LOCAL:
+ case PlSqlParser.LOCALTIME:
+ case PlSqlParser.LOCALTIMESTAMP:
+ case PlSqlParser.LOCATION:
+ case PlSqlParser.LOCATOR:
+ case PlSqlParser.LOCKED:
+ case PlSqlParser.LOCKING:
+ case PlSqlParser.LOGFILE:
+ case PlSqlParser.LOGFILES:
+ case PlSqlParser.LOGGING:
+ case PlSqlParser.LOGICAL:
+ case PlSqlParser.LOGICAL_READS_PER_CALL:
+ case PlSqlParser.LOGICAL_READS_PER_SESSION:
+ case PlSqlParser.LOG:
+ case PlSqlParser.LOGMINING:
+ case PlSqlParser.LOGOFF:
+ case PlSqlParser.LOGON:
+ case PlSqlParser.LOG_READ_ONLY_VIOLATIONS:
+ case PlSqlParser.LONG:
+ case PlSqlParser.LOOP:
+ case PlSqlParser.LOWER:
+ case PlSqlParser.LOW:
+ case PlSqlParser.LPAD:
+ case PlSqlParser.LTRIM:
+ case PlSqlParser.MAIN:
+ case PlSqlParser.MAKE_REF:
+ case PlSqlParser.MANAGED:
+ case PlSqlParser.MANAGE:
+ case PlSqlParser.MANAGEMENT:
+ case PlSqlParser.MANAGER:
+ case PlSqlParser.MANUAL:
+ case PlSqlParser.MAP:
+ case PlSqlParser.MAPPING:
+ case PlSqlParser.MASTER:
+ case PlSqlParser.MATCHED:
+ case PlSqlParser.MATCHES:
+ case PlSqlParser.MATCH:
+ case PlSqlParser.MATCH_NUMBER:
+ case PlSqlParser.MATCH_RECOGNIZE:
+ case PlSqlParser.MATERIALIZED:
+ case PlSqlParser.MATERIALIZE:
+ case PlSqlParser.MAXARCHLOGS:
+ case PlSqlParser.MAXDATAFILES:
+ case PlSqlParser.MAXEXTENTS:
+ case PlSqlParser.MAXIMIZE:
+ case PlSqlParser.MAXINSTANCES:
+ case PlSqlParser.MAXLOGFILES:
+ case PlSqlParser.MAXLOGHISTORY:
+ case PlSqlParser.MAXLOGMEMBERS:
+ case PlSqlParser.MAX_SHARED_TEMP_SIZE:
+ case PlSqlParser.MAXSIZE:
+ case PlSqlParser.MAXTRANS:
+ case PlSqlParser.MAXVALUE:
+ case PlSqlParser.MEASURE:
+ case PlSqlParser.MEASURES:
+ case PlSqlParser.MEDIUM:
+ case PlSqlParser.MEMBER:
+ case PlSqlParser.MEMCOMPRESS:
+ case PlSqlParser.MEMORY:
+ case PlSqlParser.MERGEACTIONS:
+ case PlSqlParser.MERGE_AJ:
+ case PlSqlParser.MERGE_CONST_ON:
+ case PlSqlParser.MERGE:
+ case PlSqlParser.MERGE_SJ:
+ case PlSqlParser.METADATA:
+ case PlSqlParser.METHOD:
+ case PlSqlParser.MIGRATE:
+ case PlSqlParser.MIGRATION:
+ case PlSqlParser.MINEXTENTS:
+ case PlSqlParser.MINIMIZE:
+ case PlSqlParser.MINIMUM:
+ case PlSqlParser.MINING:
+ case PlSqlParser.MINUS_NULL:
+ case PlSqlParser.MINUTE:
+ case PlSqlParser.MINVALUE:
+ case PlSqlParser.MIRRORCOLD:
+ case PlSqlParser.MIRRORHOT:
+ case PlSqlParser.MIRROR:
+ case PlSqlParser.MLSLABEL:
+ case PlSqlParser.MODEL_COMPILE_SUBQUERY:
+ case PlSqlParser.MODEL_DONTVERIFY_UNIQUENESS:
+ case PlSqlParser.MODEL_DYNAMIC_SUBQUERY:
+ case PlSqlParser.MODEL_MIN_ANALYSIS:
+ case PlSqlParser.MODEL:
+ case PlSqlParser.MODEL_NB:
+ case PlSqlParser.MODEL_NO_ANALYSIS:
+ case PlSqlParser.MODEL_PBY:
+ case PlSqlParser.MODEL_PUSH_REF:
+ case PlSqlParser.MODEL_SV:
+ case PlSqlParser.MODIFICATION:
+ case PlSqlParser.MODIFY_COLUMN_TYPE:
+ case PlSqlParser.MODIFY:
+ case PlSqlParser.MOD:
+ case PlSqlParser.MODULE:
+ case PlSqlParser.MONITORING:
+ case PlSqlParser.MONITOR:
+ case PlSqlParser.MONTH:
+ case PlSqlParser.MONTHS_BETWEEN:
+ case PlSqlParser.MONTHS:
+ case PlSqlParser.MOUNT:
+ case PlSqlParser.MOUNTPATH:
+ case PlSqlParser.MOVEMENT:
+ case PlSqlParser.MOVE:
+ case PlSqlParser.MULTIDIMENSIONAL:
+ case PlSqlParser.MULTISET:
+ case PlSqlParser.MV_MERGE:
+ case PlSqlParser.NAMED:
+ case PlSqlParser.NAME:
+ case PlSqlParser.NAMESPACE:
+ case PlSqlParser.NAN:
+ case PlSqlParser.NANVL:
+ case PlSqlParser.NATIONAL:
+ case PlSqlParser.NATIVE_FULL_OUTER_JOIN:
+ case PlSqlParser.NATIVE:
+ case PlSqlParser.NATURAL:
+ case PlSqlParser.NAV:
+ case PlSqlParser.NCHAR_CS:
+ case PlSqlParser.NCHAR:
+ case PlSqlParser.NCHR:
+ case PlSqlParser.NCLOB:
+ case PlSqlParser.NEEDED:
+ case PlSqlParser.NEG:
+ case PlSqlParser.NESTED:
+ case PlSqlParser.NESTED_TABLE_FAST_INSERT:
+ case PlSqlParser.NESTED_TABLE_GET_REFS:
+ case PlSqlParser.NESTED_TABLE_ID:
+ case PlSqlParser.NESTED_TABLE_SET_REFS:
+ case PlSqlParser.NESTED_TABLE_SET_SETID:
+ case PlSqlParser.NETWORK:
+ case PlSqlParser.NEVER:
+ case PlSqlParser.NEW:
+ case PlSqlParser.NEW_TIME:
+ case PlSqlParser.NEXT_DAY:
+ case PlSqlParser.NEXT:
+ case PlSqlParser.NL_AJ:
+ case PlSqlParser.NLJ_BATCHING:
+ case PlSqlParser.NLJ_INDEX_FILTER:
+ case PlSqlParser.NLJ_INDEX_SCAN:
+ case PlSqlParser.NLJ_PREFETCH:
+ case PlSqlParser.NLS_CALENDAR:
+ case PlSqlParser.NLS_CHARACTERSET:
+ case PlSqlParser.NLS_CHARSET_DECL_LEN:
+ case PlSqlParser.NLS_CHARSET_ID:
+ case PlSqlParser.NLS_CHARSET_NAME:
+ case PlSqlParser.NLS_COMP:
+ case PlSqlParser.NLS_CURRENCY:
+ case PlSqlParser.NLS_DATE_FORMAT:
+ case PlSqlParser.NLS_DATE_LANGUAGE:
+ case PlSqlParser.NLS_INITCAP:
+ case PlSqlParser.NLS_ISO_CURRENCY:
+ case PlSqlParser.NL_SJ:
+ case PlSqlParser.NLS_LANG:
+ case PlSqlParser.NLS_LANGUAGE:
+ case PlSqlParser.NLS_LENGTH_SEMANTICS:
+ case PlSqlParser.NLS_LOWER:
+ case PlSqlParser.NLS_NCHAR_CONV_EXCP:
+ case PlSqlParser.NLS_NUMERIC_CHARACTERS:
+ case PlSqlParser.NLS_SORT:
+ case PlSqlParser.NLSSORT:
+ case PlSqlParser.NLS_SPECIAL_CHARS:
+ case PlSqlParser.NLS_TERRITORY:
+ case PlSqlParser.NLS_UPPER:
+ case PlSqlParser.NO_ACCESS:
+ case PlSqlParser.NO_ADAPTIVE_PLAN:
+ case PlSqlParser.NO_ANSI_REARCH:
+ case PlSqlParser.NOAPPEND:
+ case PlSqlParser.NOARCHIVELOG:
+ case PlSqlParser.NOAUDIT:
+ case PlSqlParser.NO_AUTO_REOPTIMIZE:
+ case PlSqlParser.NO_BASETABLE_MULTIMV_REWRITE:
+ case PlSqlParser.NO_BATCH_TABLE_ACCESS_BY_ROWID:
+ case PlSqlParser.NO_BIND_AWARE:
+ case PlSqlParser.NO_BUFFER:
+ case PlSqlParser.NOCACHE:
+ case PlSqlParser.NO_CARTESIAN:
+ case PlSqlParser.NO_CHECK_ACL_REWRITE:
+ case PlSqlParser.NO_CLUSTER_BY_ROWID:
+ case PlSqlParser.NO_CLUSTERING:
+ case PlSqlParser.NO_COALESCE_SQ:
+ case PlSqlParser.NO_COMMON_DATA:
+ case PlSqlParser.NO_CONNECT_BY_CB_WHR_ONLY:
+ case PlSqlParser.NO_CONNECT_BY_COMBINE_SW:
+ case PlSqlParser.NO_CONNECT_BY_COST_BASED:
+ case PlSqlParser.NO_CONNECT_BY_ELIM_DUPS:
+ case PlSqlParser.NO_CONNECT_BY_FILTERING:
+ case PlSqlParser.NOCOPY:
+ case PlSqlParser.NO_COST_XML_QUERY_REWRITE:
+ case PlSqlParser.NO_CPU_COSTING:
+ case PlSqlParser.NOCPU_COSTING:
+ case PlSqlParser.NOCYCLE:
+ case PlSqlParser.NO_DATA_SECURITY_REWRITE:
+ case PlSqlParser.NO_DECORRELATE:
+ case PlSqlParser.NODELAY:
+ case PlSqlParser.NO_DOMAIN_INDEX_FILTER:
+ case PlSqlParser.NO_DST_UPGRADE_INSERT_CONV:
+ case PlSqlParser.NO_ELIM_GROUPBY:
+ case PlSqlParser.NO_ELIMINATE_JOIN:
+ case PlSqlParser.NO_ELIMINATE_OBY:
+ case PlSqlParser.NO_ELIMINATE_OUTER_JOIN:
+ case PlSqlParser.NOENTITYESCAPING:
+ case PlSqlParser.NO_EXPAND_GSET_TO_UNION:
+ case PlSqlParser.NO_EXPAND:
+ case PlSqlParser.NO_EXPAND_TABLE:
+ case PlSqlParser.NO_FACT:
+ case PlSqlParser.NO_FACTORIZE_JOIN:
+ case PlSqlParser.NO_FILTERING:
+ case PlSqlParser.NOFORCE:
+ case PlSqlParser.NO_FULL_OUTER_JOIN_TO_OUTER:
+ case PlSqlParser.NO_GATHER_OPTIMIZER_STATISTICS:
+ case PlSqlParser.NO_GBY_PUSHDOWN:
+ case PlSqlParser.NOGUARANTEE:
+ case PlSqlParser.NO_INDEX_FFS:
+ case PlSqlParser.NO_INDEX:
+ case PlSqlParser.NO_INDEX_SS:
+ case PlSqlParser.NO_INMEMORY:
+ case PlSqlParser.NO_INMEMORY_PRUNING:
+ case PlSqlParser.NOKEEP:
+ case PlSqlParser.NO_LOAD:
+ case PlSqlParser.NOLOCAL:
+ case PlSqlParser.NOLOGGING:
+ case PlSqlParser.NOMAPPING:
+ case PlSqlParser.NOMAXVALUE:
+ case PlSqlParser.NO_MERGE:
+ case PlSqlParser.NOMINIMIZE:
+ case PlSqlParser.NOMINVALUE:
+ case PlSqlParser.NO_MODEL_PUSH_REF:
+ case PlSqlParser.NO_MONITORING:
+ case PlSqlParser.NOMONITORING:
+ case PlSqlParser.NO_MONITOR:
+ case PlSqlParser.NO_MULTIMV_REWRITE:
+ case PlSqlParser.NO_NATIVE_FULL_OUTER_JOIN:
+ case PlSqlParser.NONBLOCKING:
+ case PlSqlParser.NONEDITIONABLE:
+ case PlSqlParser.NONE:
+ case PlSqlParser.NO_NLJ_BATCHING:
+ case PlSqlParser.NO_NLJ_PREFETCH:
+ case PlSqlParser.NO:
+ case PlSqlParser.NONSCHEMA:
+ case PlSqlParser.NO_OBJECT_LINK:
+ case PlSqlParser.NOORDER:
+ case PlSqlParser.NO_ORDER_ROLLUPS:
+ case PlSqlParser.NO_OUTER_JOIN_TO_ANTI:
+ case PlSqlParser.NO_OUTER_JOIN_TO_INNER:
+ case PlSqlParser.NOOVERRIDE:
+ case PlSqlParser.NO_PARALLEL_INDEX:
+ case PlSqlParser.NOPARALLEL_INDEX:
+ case PlSqlParser.NO_PARALLEL:
+ case PlSqlParser.NOPARALLEL:
+ case PlSqlParser.NO_PARTIAL_COMMIT:
+ case PlSqlParser.NO_PARTIAL_JOIN:
+ case PlSqlParser.NO_PARTIAL_ROLLUP_PUSHDOWN:
+ case PlSqlParser.NOPARTITION:
+ case PlSqlParser.NO_PLACE_DISTINCT:
+ case PlSqlParser.NO_PLACE_GROUP_BY:
+ case PlSqlParser.NO_PQ_CONCURRENT_UNION:
+ case PlSqlParser.NO_PQ_MAP:
+ case PlSqlParser.NO_PQ_REPLICATE:
+ case PlSqlParser.NO_PQ_SKEW:
+ case PlSqlParser.NO_PRUNE_GSETS:
+ case PlSqlParser.NO_PULL_PRED:
+ case PlSqlParser.NO_PUSH_PRED:
+ case PlSqlParser.NO_PUSH_SUBQ:
+ case PlSqlParser.NO_PX_FAULT_TOLERANCE:
+ case PlSqlParser.NO_PX_JOIN_FILTER:
+ case PlSqlParser.NO_QKN_BUFF:
+ case PlSqlParser.NO_QUERY_TRANSFORMATION:
+ case PlSqlParser.NO_REF_CASCADE:
+ case PlSqlParser.NORELOCATE:
+ case PlSqlParser.NORELY:
+ case PlSqlParser.NOREPAIR:
+ case PlSqlParser.NOREPLAY:
+ case PlSqlParser.NORESETLOGS:
+ case PlSqlParser.NO_RESULT_CACHE:
+ case PlSqlParser.NOREVERSE:
+ case PlSqlParser.NO_REWRITE:
+ case PlSqlParser.NOREWRITE:
+ case PlSqlParser.NORMAL:
+ case PlSqlParser.NO_ROOT_SW_FOR_LOCAL:
+ case PlSqlParser.NOROWDEPENDENCIES:
+ case PlSqlParser.NOSCHEMACHECK:
+ case PlSqlParser.NOSEGMENT:
+ case PlSqlParser.NO_SEMIJOIN:
+ case PlSqlParser.NO_SEMI_TO_INNER:
+ case PlSqlParser.NO_SET_TO_JOIN:
+ case PlSqlParser.NOSORT:
+ case PlSqlParser.NO_SQL_TRANSLATION:
+ case PlSqlParser.NO_SQL_TUNE:
+ case PlSqlParser.NO_STAR_TRANSFORMATION:
+ case PlSqlParser.NO_STATEMENT_QUEUING:
+ case PlSqlParser.NO_STATS_GSETS:
+ case PlSqlParser.NOSTRICT:
+ case PlSqlParser.NO_SUBQUERY_PRUNING:
+ case PlSqlParser.NO_SUBSTRB_PAD:
+ case PlSqlParser.NO_SWAP_JOIN_INPUTS:
+ case PlSqlParser.NOSWITCH:
+ case PlSqlParser.NO_TABLE_LOOKUP_BY_NL:
+ case PlSqlParser.NO_TEMP_TABLE:
+ case PlSqlParser.NOTHING:
+ case PlSqlParser.NOTIFICATION:
+ case PlSqlParser.NO_TRANSFORM_DISTINCT_AGG:
+ case PlSqlParser.NO_UNNEST:
+ case PlSqlParser.NO_USE_CUBE:
+ case PlSqlParser.NO_USE_HASH_AGGREGATION:
+ case PlSqlParser.NO_USE_HASH_GBY_FOR_PUSHDOWN:
+ case PlSqlParser.NO_USE_HASH:
+ case PlSqlParser.NO_USE_INVISIBLE_INDEXES:
+ case PlSqlParser.NO_USE_MERGE:
+ case PlSqlParser.NO_USE_NL:
+ case PlSqlParser.NO_USE_VECTOR_AGGREGATION:
+ case PlSqlParser.NOVALIDATE:
+ case PlSqlParser.NO_VECTOR_TRANSFORM_DIMS:
+ case PlSqlParser.NO_VECTOR_TRANSFORM_FACT:
+ case PlSqlParser.NO_VECTOR_TRANSFORM:
+ case PlSqlParser.NO_XDB_FASTPATH_INSERT:
+ case PlSqlParser.NO_XML_DML_REWRITE:
+ case PlSqlParser.NO_XMLINDEX_REWRITE_IN_SELECT:
+ case PlSqlParser.NO_XMLINDEX_REWRITE:
+ case PlSqlParser.NO_XML_QUERY_REWRITE:
+ case PlSqlParser.NO_ZONEMAP:
+ case PlSqlParser.NTH_VALUE:
+ case PlSqlParser.NULLIF:
+ case PlSqlParser.NULLS:
+ case PlSqlParser.NUMBER:
+ case PlSqlParser.NUMERIC:
+ case PlSqlParser.NUM_INDEX_KEYS:
+ case PlSqlParser.NUMTODSINTERVAL:
+ case PlSqlParser.NUMTOYMINTERVAL:
+ case PlSqlParser.NVARCHAR2:
+ case PlSqlParser.NVL2:
+ case PlSqlParser.OBJECT2XML:
+ case PlSqlParser.OBJECT:
+ case PlSqlParser.OBJ_ID:
+ case PlSqlParser.OBJNO:
+ case PlSqlParser.OBJNO_REUSE:
+ case PlSqlParser.OCCURENCES:
+ case PlSqlParser.OFFLINE:
+ case PlSqlParser.OFF:
+ case PlSqlParser.OFFSET:
+ case PlSqlParser.OIDINDEX:
+ case PlSqlParser.OID:
+ case PlSqlParser.OLAP:
+ case PlSqlParser.OLD:
+ case PlSqlParser.OLD_PUSH_PRED:
+ case PlSqlParser.OLS:
+ case PlSqlParser.OLTP:
+ case PlSqlParser.OMIT:
+ case PlSqlParser.ONE:
+ case PlSqlParser.ONLINE:
+ case PlSqlParser.ONLY:
+ case PlSqlParser.OPAQUE:
+ case PlSqlParser.OPAQUE_TRANSFORM:
+ case PlSqlParser.OPAQUE_XCANONICAL:
+ case PlSqlParser.OPCODE:
+ case PlSqlParser.OPEN:
+ case PlSqlParser.OPERATIONS:
+ case PlSqlParser.OPERATOR:
+ case PlSqlParser.OPT_ESTIMATE:
+ case PlSqlParser.OPTIMAL:
+ case PlSqlParser.OPTIMIZE:
+ case PlSqlParser.OPTIMIZER_FEATURES_ENABLE:
+ case PlSqlParser.OPTIMIZER_GOAL:
+ case PlSqlParser.OPT_PARAM:
+ case PlSqlParser.ORA_BRANCH:
+ case PlSqlParser.ORA_CHECK_ACL:
+ case PlSqlParser.ORA_CHECK_PRIVILEGE:
+ case PlSqlParser.ORA_CLUSTERING:
+ case PlSqlParser.ORADATA:
+ case PlSqlParser.ORADEBUG:
+ case PlSqlParser.ORA_DST_AFFECTED:
+ case PlSqlParser.ORA_DST_CONVERT:
+ case PlSqlParser.ORA_DST_ERROR:
+ case PlSqlParser.ORA_GET_ACLIDS:
+ case PlSqlParser.ORA_GET_PRIVILEGES:
+ case PlSqlParser.ORA_HASH:
+ case PlSqlParser.ORA_INVOKING_USERID:
+ case PlSqlParser.ORA_INVOKING_USER:
+ case PlSqlParser.ORA_INVOKING_XS_USER_GUID:
+ case PlSqlParser.ORA_INVOKING_XS_USER:
+ case PlSqlParser.ORA_RAWCOMPARE:
+ case PlSqlParser.ORA_RAWCONCAT:
+ case PlSqlParser.ORA_ROWSCN:
+ case PlSqlParser.ORA_ROWSCN_RAW:
+ case PlSqlParser.ORA_ROWVERSION:
+ case PlSqlParser.ORA_TABVERSION:
+ case PlSqlParser.ORA_WRITE_TIME:
+ case PlSqlParser.ORDERED:
+ case PlSqlParser.ORDERED_PREDICATES:
+ case PlSqlParser.ORDINALITY:
+ case PlSqlParser.OR_EXPAND:
+ case PlSqlParser.ORGANIZATION:
+ case PlSqlParser.OR_PREDICATES:
+ case PlSqlParser.OSERROR:
+ case PlSqlParser.OTHER:
+ case PlSqlParser.OUTER_JOIN_TO_ANTI:
+ case PlSqlParser.OUTER_JOIN_TO_INNER:
+ case PlSqlParser.OUTER:
+ case PlSqlParser.OUTLINE_LEAF:
+ case PlSqlParser.OUTLINE:
+ case PlSqlParser.OUT_OF_LINE:
+ case PlSqlParser.OUT:
+ case PlSqlParser.OVERFLOW_NOMOVE:
+ case PlSqlParser.OVERFLOW:
+ case PlSqlParser.OVERLAPS:
+ case PlSqlParser.OVER:
+ case PlSqlParser.OVERRIDING:
+ case PlSqlParser.OWNER:
+ case PlSqlParser.OWNERSHIP:
+ case PlSqlParser.OWN:
+ case PlSqlParser.PACKAGE:
+ case PlSqlParser.PACKAGES:
+ case PlSqlParser.PARALLEL_ENABLE:
+ case PlSqlParser.PARALLEL_INDEX:
+ case PlSqlParser.PARALLEL:
+ case PlSqlParser.PARAMETERS:
+ case PlSqlParser.PARAM:
+ case PlSqlParser.PARENT:
+ case PlSqlParser.PARITY:
+ case PlSqlParser.PARTIAL_JOIN:
+ case PlSqlParser.PARTIALLY:
+ case PlSqlParser.PARTIAL:
+ case PlSqlParser.PARTIAL_ROLLUP_PUSHDOWN:
+ case PlSqlParser.PARTITION_HASH:
+ case PlSqlParser.PARTITION_LIST:
+ case PlSqlParser.PARTITION:
+ case PlSqlParser.PARTITION_RANGE:
+ case PlSqlParser.PARTITIONS:
+ case PlSqlParser.PARTNUMINST:
+ case PlSqlParser.PASSING:
+ case PlSqlParser.PASSWORD_GRACE_TIME:
+ case PlSqlParser.PASSWORD_LIFE_TIME:
+ case PlSqlParser.PASSWORD_LOCK_TIME:
+ case PlSqlParser.PASSWORD:
+ case PlSqlParser.PASSWORD_REUSE_MAX:
+ case PlSqlParser.PASSWORD_REUSE_TIME:
+ case PlSqlParser.PASSWORD_VERIFY_FUNCTION:
+ case PlSqlParser.PAST:
+ case PlSqlParser.PATCH:
+ case PlSqlParser.PATH:
+ case PlSqlParser.PATH_PREFIX:
+ case PlSqlParser.PATHS:
+ case PlSqlParser.PATTERN:
+ case PlSqlParser.PBL_HS_BEGIN:
+ case PlSqlParser.PBL_HS_END:
+ case PlSqlParser.PCTINCREASE:
+ case PlSqlParser.PCTTHRESHOLD:
+ case PlSqlParser.PCTUSED:
+ case PlSqlParser.PCTVERSION:
+ case PlSqlParser.PENDING:
+ case PlSqlParser.PERCENT_KEYWORD:
+ case PlSqlParser.PERCENT_RANKM:
+ case PlSqlParser.PERFORMANCE:
+ case PlSqlParser.PERIOD_KEYWORD:
+ case PlSqlParser.PERMANENT:
+ case PlSqlParser.PERMISSION:
+ case PlSqlParser.PERMUTE:
+ case PlSqlParser.PER:
+ case PlSqlParser.PFILE:
+ case PlSqlParser.PHYSICAL:
+ case PlSqlParser.PIKEY:
+ case PlSqlParser.PIPELINED:
+ case PlSqlParser.PIV_GB:
+ case PlSqlParser.PIVOT:
+ case PlSqlParser.PIV_SSF:
+ case PlSqlParser.PLACE_DISTINCT:
+ case PlSqlParser.PLACE_GROUP_BY:
+ case PlSqlParser.PLAN:
+ case PlSqlParser.PLSCOPE_SETTINGS:
+ case PlSqlParser.PLS_INTEGER:
+ case PlSqlParser.PLSQL_CCFLAGS:
+ case PlSqlParser.PLSQL_CODE_TYPE:
+ case PlSqlParser.PLSQL_DEBUG:
+ case PlSqlParser.PLSQL_OPTIMIZE_LEVEL:
+ case PlSqlParser.PLSQL_WARNINGS:
+ case PlSqlParser.PLUGGABLE:
+ case PlSqlParser.POINT:
+ case PlSqlParser.POLICY:
+ case PlSqlParser.POOL_16K:
+ case PlSqlParser.POOL_2K:
+ case PlSqlParser.POOL_32K:
+ case PlSqlParser.POOL_4K:
+ case PlSqlParser.POOL_8K:
+ case PlSqlParser.POSITIVEN:
+ case PlSqlParser.POSITIVE:
+ case PlSqlParser.POST_TRANSACTION:
+ case PlSqlParser.POWERMULTISET_BY_CARDINALITY:
+ case PlSqlParser.POWERMULTISET:
+ case PlSqlParser.POWER:
+ case PlSqlParser.PQ_CONCURRENT_UNION:
+ case PlSqlParser.PQ_DISTRIBUTE:
+ case PlSqlParser.PQ_DISTRIBUTE_WINDOW:
+ case PlSqlParser.PQ_FILTER:
+ case PlSqlParser.PQ_MAP:
+ case PlSqlParser.PQ_NOMAP:
+ case PlSqlParser.PQ_REPLICATE:
+ case PlSqlParser.PQ_SKEW:
+ case PlSqlParser.PRAGMA:
+ case PlSqlParser.PREBUILT:
+ case PlSqlParser.PRECEDES:
+ case PlSqlParser.PRECEDING:
+ case PlSqlParser.PRECISION:
+ case PlSqlParser.PRECOMPUTE_SUBQUERY:
+ case PlSqlParser.PREDICATE_REORDERS:
+ case PlSqlParser.PRELOAD:
+ case PlSqlParser.PREPARE:
+ case PlSqlParser.PRESENTNNV:
+ case PlSqlParser.PRESENT:
+ case PlSqlParser.PRESENTV:
+ case PlSqlParser.PRESERVE_OID:
+ case PlSqlParser.PRESERVE:
+ case PlSqlParser.PRETTY:
+ case PlSqlParser.PREVIOUS:
+ case PlSqlParser.PREV:
+ case PlSqlParser.PRIMARY:
+ case PlSqlParser.PRINTBLOBTOCLOB:
+ case PlSqlParser.PRIORITY:
+ case PlSqlParser.PRIVATE:
+ case PlSqlParser.PRIVATE_SGA:
+ case PlSqlParser.PRIVILEGED:
+ case PlSqlParser.PRIVILEGE:
+ case PlSqlParser.PRIVILEGES:
+ case PlSqlParser.PROCEDURAL:
+ case PlSqlParser.PROCEDURE:
+ case PlSqlParser.PROCESS:
+ case PlSqlParser.PROFILE:
+ case PlSqlParser.PROGRAM:
+ case PlSqlParser.PROJECT:
+ case PlSqlParser.PROPAGATE:
+ case PlSqlParser.PROTECTED:
+ case PlSqlParser.PROTECTION:
+ case PlSqlParser.PROXY:
+ case PlSqlParser.PRUNING:
+ case PlSqlParser.PULL_PRED:
+ case PlSqlParser.PURGE:
+ case PlSqlParser.PUSH_PRED:
+ case PlSqlParser.PUSH_SUBQ:
+ case PlSqlParser.PX_FAULT_TOLERANCE:
+ case PlSqlParser.PX_GRANULE:
+ case PlSqlParser.PX_JOIN_FILTER:
+ case PlSqlParser.QB_NAME:
+ case PlSqlParser.QUERY_BLOCK:
+ case PlSqlParser.QUERY:
+ case PlSqlParser.QUEUE_CURR:
+ case PlSqlParser.QUEUE:
+ case PlSqlParser.QUEUE_ROWP:
+ case PlSqlParser.QUIESCE:
+ case PlSqlParser.QUORUM:
+ case PlSqlParser.QUOTA:
+ case PlSqlParser.RAISE:
+ case PlSqlParser.RANDOM_LOCAL:
+ case PlSqlParser.RANDOM:
+ case PlSqlParser.RANGE:
+ case PlSqlParser.RANKM:
+ case PlSqlParser.RAPIDLY:
+ case PlSqlParser.RAW:
+ case PlSqlParser.RAWTOHEX:
+ case PlSqlParser.RAWTONHEX:
+ case PlSqlParser.RBA:
+ case PlSqlParser.RBO_OUTLINE:
+ case PlSqlParser.RDBA:
+ case PlSqlParser.READ:
+ case PlSqlParser.READS:
+ case PlSqlParser.REALM:
+ case PlSqlParser.REAL:
+ case PlSqlParser.REBALANCE:
+ case PlSqlParser.REBUILD:
+ case PlSqlParser.RECORD:
+ case PlSqlParser.RECORDS_PER_BLOCK:
+ case PlSqlParser.RECOVERABLE:
+ case PlSqlParser.RECOVER:
+ case PlSqlParser.RECOVERY:
+ case PlSqlParser.RECYCLEBIN:
+ case PlSqlParser.RECYCLE:
+ case PlSqlParser.REDACTION:
+ case PlSqlParser.REDEFINE:
+ case PlSqlParser.REDO:
+ case PlSqlParser.REDUCED:
+ case PlSqlParser.REDUNDANCY:
+ case PlSqlParser.REF_CASCADE_CURSOR:
+ case PlSqlParser.REFERENCED:
+ case PlSqlParser.REFERENCE:
+ case PlSqlParser.REFERENCES:
+ case PlSqlParser.REFERENCING:
+ case PlSqlParser.REF:
+ case PlSqlParser.REFRESH:
+ case PlSqlParser.REFTOHEX:
+ case PlSqlParser.REGEXP_COUNT:
+ case PlSqlParser.REGEXP_INSTR:
+ case PlSqlParser.REGEXP_LIKE:
+ case PlSqlParser.REGEXP_REPLACE:
+ case PlSqlParser.REGEXP_SUBSTR:
+ case PlSqlParser.REGISTER:
+ case PlSqlParser.REGR_AVGX:
+ case PlSqlParser.REGR_AVGY:
+ case PlSqlParser.REGR_COUNT:
+ case PlSqlParser.REGR_INTERCEPT:
+ case PlSqlParser.REGR_R2:
+ case PlSqlParser.REGR_SLOPE:
+ case PlSqlParser.REGR_SXX:
+ case PlSqlParser.REGR_SXY:
+ case PlSqlParser.REGR_SYY:
+ case PlSqlParser.REGULAR:
+ case PlSqlParser.REJECT:
+ case PlSqlParser.REKEY:
+ case PlSqlParser.RELATIONAL:
+ case PlSqlParser.RELOCATE:
+ case PlSqlParser.RELY:
+ case PlSqlParser.REMAINDER:
+ case PlSqlParser.REMOTE_MAPPED:
+ case PlSqlParser.REMOVE:
+ case PlSqlParser.RENAME:
+ case PlSqlParser.REPAIR:
+ case PlSqlParser.REPEAT:
+ case PlSqlParser.REPLACE:
+ case PlSqlParser.REPLICATION:
+ case PlSqlParser.REQUIRED:
+ case PlSqlParser.RESETLOGS:
+ case PlSqlParser.RESET:
+ case PlSqlParser.RESIZE:
+ case PlSqlParser.RESOLVE:
+ case PlSqlParser.RESOLVER:
+ case PlSqlParser.RESPECT:
+ case PlSqlParser.RESTART:
+ case PlSqlParser.RESTORE_AS_INTERVALS:
+ case PlSqlParser.RESTORE:
+ case PlSqlParser.RESTRICT_ALL_REF_CONS:
+ case PlSqlParser.RESTRICTED:
+ case PlSqlParser.RESTRICT_REFERENCES:
+ case PlSqlParser.RESTRICT:
+ case PlSqlParser.RESULT_CACHE:
+ case PlSqlParser.RESULT:
+ case PlSqlParser.RESUMABLE:
+ case PlSqlParser.RESUME:
+ case PlSqlParser.RETENTION:
+ case PlSqlParser.RETRY_ON_ROW_CHANGE:
+ case PlSqlParser.RETURNING:
+ case PlSqlParser.RETURN:
+ case PlSqlParser.REUSE:
+ case PlSqlParser.REVERSE:
+ case PlSqlParser.REWRITE_OR_ERROR:
+ case PlSqlParser.REWRITE:
+ case PlSqlParser.RIGHT:
+ case PlSqlParser.ROLE:
+ case PlSqlParser.ROLESET:
+ case PlSqlParser.ROLES:
+ case PlSqlParser.ROLLBACK:
+ case PlSqlParser.ROLLING:
+ case PlSqlParser.ROLLUP:
+ case PlSqlParser.ROWDEPENDENCIES:
+ case PlSqlParser.ROWID_MAPPING_TABLE:
+ case PlSqlParser.ROWID:
+ case PlSqlParser.ROWIDTOCHAR:
+ case PlSqlParser.ROWIDTONCHAR:
+ case PlSqlParser.ROW_LENGTH:
+ case PlSqlParser.ROWNUM:
+ case PlSqlParser.ROW:
+ case PlSqlParser.ROWS:
+ case PlSqlParser.RPAD:
+ case PlSqlParser.RTRIM:
+ case PlSqlParser.RULE:
+ case PlSqlParser.RULES:
+ case PlSqlParser.RUNNING:
+ case PlSqlParser.SALT:
+ case PlSqlParser.SAMPLE:
+ case PlSqlParser.SAVE_AS_INTERVALS:
+ case PlSqlParser.SAVEPOINT:
+ case PlSqlParser.SAVE:
+ case PlSqlParser.SB4:
+ case PlSqlParser.SCALE_ROWS:
+ case PlSqlParser.SCALE:
+ case PlSqlParser.SCAN_INSTANCES:
+ case PlSqlParser.SCAN:
+ case PlSqlParser.SCHEDULER:
+ case PlSqlParser.SCHEMACHECK:
+ case PlSqlParser.SCHEMA:
+ case PlSqlParser.SCN_ASCENDING:
+ case PlSqlParser.SCN:
+ case PlSqlParser.SCOPE:
+ case PlSqlParser.SCRUB:
+ case PlSqlParser.SD_ALL:
+ case PlSqlParser.SD_INHIBIT:
+ case PlSqlParser.SDO_GEOM_MBR:
+ case PlSqlParser.SD_SHOW:
+ case PlSqlParser.SEARCH:
+ case PlSqlParser.SECOND:
+ case PlSqlParser.SECRET:
+ case PlSqlParser.SECUREFILE_DBA:
+ case PlSqlParser.SECUREFILE:
+ case PlSqlParser.SECURITY:
+ case PlSqlParser.SEED:
+ case PlSqlParser.SEG_BLOCK:
+ case PlSqlParser.SEG_FILE:
+ case PlSqlParser.SEGMENT:
+ case PlSqlParser.SELECTIVITY:
+ case PlSqlParser.SELF:
+ case PlSqlParser.SEMIJOIN_DRIVER:
+ case PlSqlParser.SEMIJOIN:
+ case PlSqlParser.SEMI_TO_INNER:
+ case PlSqlParser.SEQUENCED:
+ case PlSqlParser.SEQUENCE:
+ case PlSqlParser.SEQUENTIAL:
+ case PlSqlParser.SERIALIZABLE:
+ case PlSqlParser.SERIALLY_REUSABLE:
+ case PlSqlParser.SERIAL:
+ case PlSqlParser.SERVERERROR:
+ case PlSqlParser.SERVICE_NAME_CONVERT:
+ case PlSqlParser.SERVICES:
+ case PlSqlParser.SESSION_CACHED_CURSORS:
+ case PlSqlParser.SESSION:
+ case PlSqlParser.SESSIONS_PER_USER:
+ case PlSqlParser.SESSIONTIMEZONE:
+ case PlSqlParser.SESSIONTZNAME:
+ case PlSqlParser.SET:
+ case PlSqlParser.SETS:
+ case PlSqlParser.SETTINGS:
+ case PlSqlParser.SET_TO_JOIN:
+ case PlSqlParser.SEVERE:
+ case PlSqlParser.SHARED_POOL:
+ case PlSqlParser.SHARED:
+ case PlSqlParser.SHARING:
+ case PlSqlParser.SHELFLIFE:
+ case PlSqlParser.SHOW:
+ case PlSqlParser.SHRINK:
+ case PlSqlParser.SHUTDOWN:
+ case PlSqlParser.SIBLINGS:
+ case PlSqlParser.SID:
+ case PlSqlParser.SIGNAL_COMPONENT:
+ case PlSqlParser.SIGNAL_FUNCTION:
+ case PlSqlParser.SIGN:
+ case PlSqlParser.SIGNTYPE:
+ case PlSqlParser.SIMPLE_INTEGER:
+ case PlSqlParser.SIMPLE:
+ case PlSqlParser.SINGLE:
+ case PlSqlParser.SINGLETASK:
+ case PlSqlParser.SINH:
+ case PlSqlParser.SIN:
+ case PlSqlParser.SKIP_EXT_OPTIMIZER:
+ case PlSqlParser.SKIP_:
+ case PlSqlParser.SKIP_UNQ_UNUSABLE_IDX:
+ case PlSqlParser.SKIP_UNUSABLE_INDEXES:
+ case PlSqlParser.SMALLFILE:
+ case PlSqlParser.SMALLINT:
+ case PlSqlParser.SNAPSHOT:
+ case PlSqlParser.SOME:
+ case PlSqlParser.SORT:
+ case PlSqlParser.SOUNDEX:
+ case PlSqlParser.SOURCE_FILE_DIRECTORY:
+ case PlSqlParser.SOURCE_FILE_NAME_CONVERT:
+ case PlSqlParser.SOURCE:
+ case PlSqlParser.SPACE_KEYWORD:
+ case PlSqlParser.SPECIFICATION:
+ case PlSqlParser.SPFILE:
+ case PlSqlParser.SPLIT:
+ case PlSqlParser.SPREADSHEET:
+ case PlSqlParser.SQLDATA:
+ case PlSqlParser.SQLERROR:
+ case PlSqlParser.SQLLDR:
+ case PlSqlParser.SQL:
+ case PlSqlParser.SQL_TRACE:
+ case PlSqlParser.SQL_TRANSLATION_PROFILE:
+ case PlSqlParser.SQRT:
+ case PlSqlParser.STALE:
+ case PlSqlParser.STANDALONE:
+ case PlSqlParser.STANDARD_HASH:
+ case PlSqlParser.STANDBY_MAX_DATA_DELAY:
+ case PlSqlParser.STANDBYS:
+ case PlSqlParser.STANDBY:
+ case PlSqlParser.STAR:
+ case PlSqlParser.STAR_TRANSFORMATION:
+ case PlSqlParser.STARTUP:
+ case PlSqlParser.STATEMENT_ID:
+ case PlSqlParser.STATEMENT_QUEUING:
+ case PlSqlParser.STATEMENTS:
+ case PlSqlParser.STATEMENT:
+ case PlSqlParser.STATE:
+ case PlSqlParser.STATIC:
+ case PlSqlParser.STATISTICS:
+ case PlSqlParser.STATS_BINOMIAL_TEST:
+ case PlSqlParser.STATS_CROSSTAB:
+ case PlSqlParser.STATS_F_TEST:
+ case PlSqlParser.STATS_KS_TEST:
+ case PlSqlParser.STATS_MODE:
+ case PlSqlParser.STATS_MW_TEST:
+ case PlSqlParser.STATS_ONE_WAY_ANOVA:
+ case PlSqlParser.STATS_T_TEST_INDEP:
+ case PlSqlParser.STATS_T_TEST_INDEPU:
+ case PlSqlParser.STATS_T_TEST_ONE:
+ case PlSqlParser.STATS_T_TEST_PAIRED:
+ case PlSqlParser.STATS_WSR_TEST:
+ case PlSqlParser.STDDEV_POP:
+ case PlSqlParser.STDDEV_SAMP:
+ case PlSqlParser.STOP:
+ case PlSqlParser.STORAGE:
+ case PlSqlParser.STORE:
+ case PlSqlParser.STREAMS:
+ case PlSqlParser.STREAM:
+ case PlSqlParser.STRICT:
+ case PlSqlParser.STRING:
+ case PlSqlParser.STRIPE_COLUMNS:
+ case PlSqlParser.STRIPE_WIDTH:
+ case PlSqlParser.STRIP:
+ case PlSqlParser.STRUCTURE:
+ case PlSqlParser.SUBMULTISET:
+ case PlSqlParser.SUBPARTITION_REL:
+ case PlSqlParser.SUBPARTITIONS:
+ case PlSqlParser.SUBPARTITION:
+ case PlSqlParser.SUBQUERIES:
+ case PlSqlParser.SUBQUERY_PRUNING:
+ case PlSqlParser.SUBSCRIBE:
+ case PlSqlParser.SUBSET:
+ case PlSqlParser.SUBSTITUTABLE:
+ case PlSqlParser.SUBSTR2:
+ case PlSqlParser.SUBSTR4:
+ case PlSqlParser.SUBSTRB:
+ case PlSqlParser.SUBSTRC:
+ case PlSqlParser.SUBTYPE:
+ case PlSqlParser.SUCCESSFUL:
+ case PlSqlParser.SUCCESS:
+ case PlSqlParser.SUMMARY:
+ case PlSqlParser.SUPPLEMENTAL:
+ case PlSqlParser.SUSPEND:
+ case PlSqlParser.SWAP_JOIN_INPUTS:
+ case PlSqlParser.SWITCHOVER:
+ case PlSqlParser.SWITCH:
+ case PlSqlParser.SYNCHRONOUS:
+ case PlSqlParser.SYNC:
+ case PlSqlParser.SYSASM:
+ case PlSqlParser.SYS_AUDIT:
+ case PlSqlParser.SYSAUX:
+ case PlSqlParser.SYSBACKUP:
+ case PlSqlParser.SYS_CHECKACL:
+ case PlSqlParser.SYS_CHECK_PRIVILEGE:
+ case PlSqlParser.SYS_CONNECT_BY_PATH:
+ case PlSqlParser.SYS_CONTEXT:
+ case PlSqlParser.SYSDATE:
+ case PlSqlParser.SYSDBA:
+ case PlSqlParser.SYS_DBURIGEN:
+ case PlSqlParser.SYSDG:
+ case PlSqlParser.SYS_DL_CURSOR:
+ case PlSqlParser.SYS_DM_RXFORM_CHR:
+ case PlSqlParser.SYS_DM_RXFORM_NUM:
+ case PlSqlParser.SYS_DOM_COMPARE:
+ case PlSqlParser.SYS_DST_PRIM2SEC:
+ case PlSqlParser.SYS_DST_SEC2PRIM:
+ case PlSqlParser.SYS_ET_BFILE_TO_RAW:
+ case PlSqlParser.SYS_ET_BLOB_TO_IMAGE:
+ case PlSqlParser.SYS_ET_IMAGE_TO_BLOB:
+ case PlSqlParser.SYS_ET_RAW_TO_BFILE:
+ case PlSqlParser.SYS_EXTPDTXT:
+ case PlSqlParser.SYS_EXTRACT_UTC:
+ case PlSqlParser.SYS_FBT_INSDEL:
+ case PlSqlParser.SYS_FILTER_ACLS:
+ case PlSqlParser.SYS_FNMATCHES:
+ case PlSqlParser.SYS_FNREPLACE:
+ case PlSqlParser.SYS_GET_ACLIDS:
+ case PlSqlParser.SYS_GET_COL_ACLIDS:
+ case PlSqlParser.SYS_GET_PRIVILEGES:
+ case PlSqlParser.SYS_GETTOKENID:
+ case PlSqlParser.SYS_GETXTIVAL:
+ case PlSqlParser.SYS_GUID:
+ case PlSqlParser.SYSGUID:
+ case PlSqlParser.SYSKM:
+ case PlSqlParser.SYS_MAKE_XMLNODEID:
+ case PlSqlParser.SYS_MAKEXML:
+ case PlSqlParser.SYS_MKXMLATTR:
+ case PlSqlParser.SYS_MKXTI:
+ case PlSqlParser.SYSOBJ:
+ case PlSqlParser.SYS_OP_ADT2BIN:
+ case PlSqlParser.SYS_OP_ADTCONS:
+ case PlSqlParser.SYS_OP_ALSCRVAL:
+ case PlSqlParser.SYS_OP_ATG:
+ case PlSqlParser.SYS_OP_BIN2ADT:
+ case PlSqlParser.SYS_OP_BITVEC:
+ case PlSqlParser.SYS_OP_BL2R:
+ case PlSqlParser.SYS_OP_BLOOM_FILTER_LIST:
+ case PlSqlParser.SYS_OP_BLOOM_FILTER:
+ case PlSqlParser.SYS_OP_C2C:
+ case PlSqlParser.SYS_OP_CAST:
+ case PlSqlParser.SYS_OP_CEG:
+ case PlSqlParser.SYS_OP_CL2C:
+ case PlSqlParser.SYS_OP_COMBINED_HASH:
+ case PlSqlParser.SYS_OP_COMP:
+ case PlSqlParser.SYS_OP_CONVERT:
+ case PlSqlParser.SYS_OP_COUNTCHG:
+ case PlSqlParser.SYS_OP_CSCONV:
+ case PlSqlParser.SYS_OP_CSCONVTEST:
+ case PlSqlParser.SYS_OP_CSR:
+ case PlSqlParser.SYS_OP_CSX_PATCH:
+ case PlSqlParser.SYS_OP_CYCLED_SEQ:
+ case PlSqlParser.SYS_OP_DECOMP:
+ case PlSqlParser.SYS_OP_DESCEND:
+ case PlSqlParser.SYS_OP_DISTINCT:
+ case PlSqlParser.SYS_OP_DRA:
+ case PlSqlParser.SYS_OP_DUMP:
+ case PlSqlParser.SYS_OP_DV_CHECK:
+ case PlSqlParser.SYS_OP_ENFORCE_NOT_NULL:
+ case PlSqlParser.SYSOPER:
+ case PlSqlParser.SYS_OP_EXTRACT:
+ case PlSqlParser.SYS_OP_GROUPING:
+ case PlSqlParser.SYS_OP_GUID:
+ case PlSqlParser.SYS_OP_HASH:
+ case PlSqlParser.SYS_OP_IIX:
+ case PlSqlParser.SYS_OP_ITR:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_CREATE:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_FILTER_LIST:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_FILTER:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_SUCCEEDED:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_USE:
+ case PlSqlParser.SYS_OP_LBID:
+ case PlSqlParser.SYS_OP_LOBLOC2BLOB:
+ case PlSqlParser.SYS_OP_LOBLOC2CLOB:
+ case PlSqlParser.SYS_OP_LOBLOC2ID:
+ case PlSqlParser.SYS_OP_LOBLOC2NCLOB:
+ case PlSqlParser.SYS_OP_LOBLOC2TYP:
+ case PlSqlParser.SYS_OP_LSVI:
+ case PlSqlParser.SYS_OP_LVL:
+ case PlSqlParser.SYS_OP_MAKEOID:
+ case PlSqlParser.SYS_OP_MAP_NONNULL:
+ case PlSqlParser.SYS_OP_MSR:
+ case PlSqlParser.SYS_OP_NICOMBINE:
+ case PlSqlParser.SYS_OP_NIEXTRACT:
+ case PlSqlParser.SYS_OP_NII:
+ case PlSqlParser.SYS_OP_NIX:
+ case PlSqlParser.SYS_OP_NOEXPAND:
+ case PlSqlParser.SYS_OP_NTCIMG:
+ case PlSqlParser.SYS_OP_NUMTORAW:
+ case PlSqlParser.SYS_OP_OIDVALUE:
+ case PlSqlParser.SYS_OP_OPNSIZE:
+ case PlSqlParser.SYS_OP_PAR_1:
+ case PlSqlParser.SYS_OP_PARGID_1:
+ case PlSqlParser.SYS_OP_PARGID:
+ case PlSqlParser.SYS_OP_PAR:
+ case PlSqlParser.SYS_OP_PART_ID:
+ case PlSqlParser.SYS_OP_PIVOT:
+ case PlSqlParser.SYS_OP_R2O:
+ case PlSqlParser.SYS_OP_RAWTONUM:
+ case PlSqlParser.SYS_OP_RDTM:
+ case PlSqlParser.SYS_OP_REF:
+ case PlSqlParser.SYS_OP_RMTD:
+ case PlSqlParser.SYS_OP_ROWIDTOOBJ:
+ case PlSqlParser.SYS_OP_RPB:
+ case PlSqlParser.SYS_OPTLOBPRBSC:
+ case PlSqlParser.SYS_OP_TOSETID:
+ case PlSqlParser.SYS_OP_TPR:
+ case PlSqlParser.SYS_OP_TRTB:
+ case PlSqlParser.SYS_OPTXICMP:
+ case PlSqlParser.SYS_OPTXQCASTASNQ:
+ case PlSqlParser.SYS_OP_UNDESCEND:
+ case PlSqlParser.SYS_OP_VECAND:
+ case PlSqlParser.SYS_OP_VECBIT:
+ case PlSqlParser.SYS_OP_VECOR:
+ case PlSqlParser.SYS_OP_VECXOR:
+ case PlSqlParser.SYS_OP_VERSION:
+ case PlSqlParser.SYS_OP_VREF:
+ case PlSqlParser.SYS_OP_VVD:
+ case PlSqlParser.SYS_OP_XMLCONS_FOR_CSX:
+ case PlSqlParser.SYS_OP_XPTHATG:
+ case PlSqlParser.SYS_OP_XPTHIDX:
+ case PlSqlParser.SYS_OP_XPTHOP:
+ case PlSqlParser.SYS_OP_XTXT2SQLT:
+ case PlSqlParser.SYS_OP_ZONE_ID:
+ case PlSqlParser.SYS_ORDERKEY_DEPTH:
+ case PlSqlParser.SYS_ORDERKEY_MAXCHILD:
+ case PlSqlParser.SYS_ORDERKEY_PARENT:
+ case PlSqlParser.SYS_PARALLEL_TXN:
+ case PlSqlParser.SYS_PATHID_IS_ATTR:
+ case PlSqlParser.SYS_PATHID_IS_NMSPC:
+ case PlSqlParser.SYS_PATHID_LASTNAME:
+ case PlSqlParser.SYS_PATHID_LASTNMSPC:
+ case PlSqlParser.SYS_PATH_REVERSE:
+ case PlSqlParser.SYS_PXQEXTRACT:
+ case PlSqlParser.SYS_RAW_TO_XSID:
+ case PlSqlParser.SYS_RID_ORDER:
+ case PlSqlParser.SYS_ROW_DELTA:
+ case PlSqlParser.SYS_SC_2_XMLT:
+ case PlSqlParser.SYS_SYNRCIREDO:
+ case PlSqlParser.SYSTEM_DEFINED:
+ case PlSqlParser.SYSTEM:
+ case PlSqlParser.SYSTIMESTAMP:
+ case PlSqlParser.SYS_TYPEID:
+ case PlSqlParser.SYS_UMAKEXML:
+ case PlSqlParser.SYS_XMLANALYZE:
+ case PlSqlParser.SYS_XMLCONTAINS:
+ case PlSqlParser.SYS_XMLCONV:
+ case PlSqlParser.SYS_XMLEXNSURI:
+ case PlSqlParser.SYS_XMLGEN:
+ case PlSqlParser.SYS_XMLI_LOC_ISNODE:
+ case PlSqlParser.SYS_XMLI_LOC_ISTEXT:
+ case PlSqlParser.SYS_XMLINSTR:
+ case PlSqlParser.SYS_XMLLOCATOR_GETSVAL:
+ case PlSqlParser.SYS_XMLNODEID_GETCID:
+ case PlSqlParser.SYS_XMLNODEID_GETLOCATOR:
+ case PlSqlParser.SYS_XMLNODEID_GETOKEY:
+ case PlSqlParser.SYS_XMLNODEID_GETPATHID:
+ case PlSqlParser.SYS_XMLNODEID_GETPTRID:
+ case PlSqlParser.SYS_XMLNODEID_GETRID:
+ case PlSqlParser.SYS_XMLNODEID_GETSVAL:
+ case PlSqlParser.SYS_XMLNODEID_GETTID:
+ case PlSqlParser.SYS_XMLNODEID:
+ case PlSqlParser.SYS_XMLT_2_SC:
+ case PlSqlParser.SYS_XMLTRANSLATE:
+ case PlSqlParser.SYS_XMLTYPE2SQL:
+ case PlSqlParser.SYS_XQ_ASQLCNV:
+ case PlSqlParser.SYS_XQ_ATOMCNVCHK:
+ case PlSqlParser.SYS_XQBASEURI:
+ case PlSqlParser.SYS_XQCASTABLEERRH:
+ case PlSqlParser.SYS_XQCODEP2STR:
+ case PlSqlParser.SYS_XQCODEPEQ:
+ case PlSqlParser.SYS_XQCON2SEQ:
+ case PlSqlParser.SYS_XQCONCAT:
+ case PlSqlParser.SYS_XQDELETE:
+ case PlSqlParser.SYS_XQDFLTCOLATION:
+ case PlSqlParser.SYS_XQDOC:
+ case PlSqlParser.SYS_XQDOCURI:
+ case PlSqlParser.SYS_XQDURDIV:
+ case PlSqlParser.SYS_XQED4URI:
+ case PlSqlParser.SYS_XQENDSWITH:
+ case PlSqlParser.SYS_XQERRH:
+ case PlSqlParser.SYS_XQERR:
+ case PlSqlParser.SYS_XQESHTMLURI:
+ case PlSqlParser.SYS_XQEXLOBVAL:
+ case PlSqlParser.SYS_XQEXSTWRP:
+ case PlSqlParser.SYS_XQEXTRACT:
+ case PlSqlParser.SYS_XQEXTRREF:
+ case PlSqlParser.SYS_XQEXVAL:
+ case PlSqlParser.SYS_XQFB2STR:
+ case PlSqlParser.SYS_XQFNBOOL:
+ case PlSqlParser.SYS_XQFNCMP:
+ case PlSqlParser.SYS_XQFNDATIM:
+ case PlSqlParser.SYS_XQFNLNAME:
+ case PlSqlParser.SYS_XQFNNM:
+ case PlSqlParser.SYS_XQFNNSURI:
+ case PlSqlParser.SYS_XQFNPREDTRUTH:
+ case PlSqlParser.SYS_XQFNQNM:
+ case PlSqlParser.SYS_XQFNROOT:
+ case PlSqlParser.SYS_XQFORMATNUM:
+ case PlSqlParser.SYS_XQFTCONTAIN:
+ case PlSqlParser.SYS_XQFUNCR:
+ case PlSqlParser.SYS_XQGETCONTENT:
+ case PlSqlParser.SYS_XQINDXOF:
+ case PlSqlParser.SYS_XQINSERT:
+ case PlSqlParser.SYS_XQINSPFX:
+ case PlSqlParser.SYS_XQIRI2URI:
+ case PlSqlParser.SYS_XQLANG:
+ case PlSqlParser.SYS_XQLLNMFRMQNM:
+ case PlSqlParser.SYS_XQMKNODEREF:
+ case PlSqlParser.SYS_XQNILLED:
+ case PlSqlParser.SYS_XQNODENAME:
+ case PlSqlParser.SYS_XQNORMSPACE:
+ case PlSqlParser.SYS_XQNORMUCODE:
+ case PlSqlParser.SYS_XQ_NRNG:
+ case PlSqlParser.SYS_XQNSP4PFX:
+ case PlSqlParser.SYS_XQNSPFRMQNM:
+ case PlSqlParser.SYS_XQPFXFRMQNM:
+ case PlSqlParser.SYS_XQ_PKSQL2XML:
+ case PlSqlParser.SYS_XQPOLYABS:
+ case PlSqlParser.SYS_XQPOLYADD:
+ case PlSqlParser.SYS_XQPOLYCEL:
+ case PlSqlParser.SYS_XQPOLYCSTBL:
+ case PlSqlParser.SYS_XQPOLYCST:
+ case PlSqlParser.SYS_XQPOLYDIV:
+ case PlSqlParser.SYS_XQPOLYFLR:
+ case PlSqlParser.SYS_XQPOLYMOD:
+ case PlSqlParser.SYS_XQPOLYMUL:
+ case PlSqlParser.SYS_XQPOLYRND:
+ case PlSqlParser.SYS_XQPOLYSQRT:
+ case PlSqlParser.SYS_XQPOLYSUB:
+ case PlSqlParser.SYS_XQPOLYUMUS:
+ case PlSqlParser.SYS_XQPOLYUPLS:
+ case PlSqlParser.SYS_XQPOLYVEQ:
+ case PlSqlParser.SYS_XQPOLYVGE:
+ case PlSqlParser.SYS_XQPOLYVGT:
+ case PlSqlParser.SYS_XQPOLYVLE:
+ case PlSqlParser.SYS_XQPOLYVLT:
+ case PlSqlParser.SYS_XQPOLYVNE:
+ case PlSqlParser.SYS_XQREF2VAL:
+ case PlSqlParser.SYS_XQRENAME:
+ case PlSqlParser.SYS_XQREPLACE:
+ case PlSqlParser.SYS_XQRESVURI:
+ case PlSqlParser.SYS_XQRNDHALF2EVN:
+ case PlSqlParser.SYS_XQRSLVQNM:
+ case PlSqlParser.SYS_XQRYENVPGET:
+ case PlSqlParser.SYS_XQRYVARGET:
+ case PlSqlParser.SYS_XQRYWRP:
+ case PlSqlParser.SYS_XQSEQ2CON4XC:
+ case PlSqlParser.SYS_XQSEQ2CON:
+ case PlSqlParser.SYS_XQSEQDEEPEQ:
+ case PlSqlParser.SYS_XQSEQINSB:
+ case PlSqlParser.SYS_XQSEQRM:
+ case PlSqlParser.SYS_XQSEQRVS:
+ case PlSqlParser.SYS_XQSEQSUB:
+ case PlSqlParser.SYS_XQSEQTYPMATCH:
+ case PlSqlParser.SYS_XQSTARTSWITH:
+ case PlSqlParser.SYS_XQSTATBURI:
+ case PlSqlParser.SYS_XQSTR2CODEP:
+ case PlSqlParser.SYS_XQSTRJOIN:
+ case PlSqlParser.SYS_XQSUBSTRAFT:
+ case PlSqlParser.SYS_XQSUBSTRBEF:
+ case PlSqlParser.SYS_XQTOKENIZE:
+ case PlSqlParser.SYS_XQTREATAS:
+ case PlSqlParser.SYS_XQ_UPKXML2SQL:
+ case PlSqlParser.SYS_XQXFORM:
+ case PlSqlParser.SYS_XSID_TO_RAW:
+ case PlSqlParser.SYS_ZMAP_FILTER:
+ case PlSqlParser.SYS_ZMAP_REFRESH:
+ case PlSqlParser.TABLE_LOOKUP_BY_NL:
+ case PlSqlParser.TABLESPACE_NO:
+ case PlSqlParser.TABLESPACE:
+ case PlSqlParser.TABLES:
+ case PlSqlParser.TABLE_STATS:
+ case PlSqlParser.TABLE:
+ case PlSqlParser.TABNO:
+ case PlSqlParser.TAG:
+ case PlSqlParser.TANH:
+ case PlSqlParser.TAN:
+ case PlSqlParser.TBLORIDXPARTNUM:
+ case PlSqlParser.TEMPFILE:
+ case PlSqlParser.TEMPLATE:
+ case PlSqlParser.TEMPORARY:
+ case PlSqlParser.TEMP_TABLE:
+ case PlSqlParser.TEST:
+ case PlSqlParser.TEXT:
+ case PlSqlParser.THAN:
+ case PlSqlParser.THEN:
+ case PlSqlParser.THE:
+ case PlSqlParser.THREAD:
+ case PlSqlParser.THROUGH:
+ case PlSqlParser.TIER:
+ case PlSqlParser.TIES:
+ case PlSqlParser.TIMEOUT:
+ case PlSqlParser.TIMESTAMP_LTZ_UNCONSTRAINED:
+ case PlSqlParser.TIMESTAMP:
+ case PlSqlParser.TIMESTAMP_TZ_UNCONSTRAINED:
+ case PlSqlParser.TIMESTAMP_UNCONSTRAINED:
+ case PlSqlParser.TIMES:
+ case PlSqlParser.TIME:
+ case PlSqlParser.TIMEZONE_ABBR:
+ case PlSqlParser.TIMEZONE_HOUR:
+ case PlSqlParser.TIMEZONE_MINUTE:
+ case PlSqlParser.TIMEZONE_OFFSET:
+ case PlSqlParser.TIMEZONE_REGION:
+ case PlSqlParser.TIME_ZONE:
+ case PlSqlParser.TIV_GB:
+ case PlSqlParser.TIV_SSF:
+ case PlSqlParser.TO_ACLID:
+ case PlSqlParser.TO_BINARY_DOUBLE:
+ case PlSqlParser.TO_BINARY_FLOAT:
+ case PlSqlParser.TO_BLOB:
+ case PlSqlParser.TO_CLOB:
+ case PlSqlParser.TO_DSINTERVAL:
+ case PlSqlParser.TO_LOB:
+ case PlSqlParser.TO_MULTI_BYTE:
+ case PlSqlParser.TO_NCHAR:
+ case PlSqlParser.TO_NCLOB:
+ case PlSqlParser.TO_NUMBER:
+ case PlSqlParser.TOPLEVEL:
+ case PlSqlParser.TO_SINGLE_BYTE:
+ case PlSqlParser.TO_TIMESTAMP:
+ case PlSqlParser.TO_TIMESTAMP_TZ:
+ case PlSqlParser.TO_TIME:
+ case PlSqlParser.TO_TIME_TZ:
+ case PlSqlParser.TO_YMINTERVAL:
+ case PlSqlParser.TRACE:
+ case PlSqlParser.TRACING:
+ case PlSqlParser.TRACKING:
+ case PlSqlParser.TRAILING:
+ case PlSqlParser.TRANSACTION:
+ case PlSqlParser.TRANSFORM_DISTINCT_AGG:
+ case PlSqlParser.TRANSITIONAL:
+ case PlSqlParser.TRANSITION:
+ case PlSqlParser.TRANSLATE:
+ case PlSqlParser.TRANSLATION:
+ case PlSqlParser.TREAT:
+ case PlSqlParser.TRIGGERS:
+ case PlSqlParser.TRIGGER:
+ case PlSqlParser.TRUE:
+ case PlSqlParser.TRUNCATE:
+ case PlSqlParser.TRUNC:
+ case PlSqlParser.TRUSTED:
+ case PlSqlParser.TRUST:
+ case PlSqlParser.TUNING:
+ case PlSqlParser.TX:
+ case PlSqlParser.TYPES:
+ case PlSqlParser.TYPE:
+ case PlSqlParser.TZ_OFFSET:
+ case PlSqlParser.UB2:
+ case PlSqlParser.UBA:
+ case PlSqlParser.UCS2:
+ case PlSqlParser.UID:
+ case PlSqlParser.UNARCHIVED:
+ case PlSqlParser.UNBOUNDED:
+ case PlSqlParser.UNBOUND:
+ case PlSqlParser.UNCONDITIONAL:
+ case PlSqlParser.UNDER:
+ case PlSqlParser.UNDO:
+ case PlSqlParser.UNDROP:
+ case PlSqlParser.UNIFORM:
+ case PlSqlParser.UNISTR:
+ case PlSqlParser.UNLIMITED:
+ case PlSqlParser.UNLOAD:
+ case PlSqlParser.UNLOCK:
+ case PlSqlParser.UNMATCHED:
+ case PlSqlParser.UNNEST_INNERJ_DISTINCT_VIEW:
+ case PlSqlParser.UNNEST_NOSEMIJ_NODISTINCTVIEW:
+ case PlSqlParser.UNNEST_SEMIJ_VIEW:
+ case PlSqlParser.UNNEST:
+ case PlSqlParser.UNPACKED:
+ case PlSqlParser.UNPIVOT:
+ case PlSqlParser.UNPLUG:
+ case PlSqlParser.UNPROTECTED:
+ case PlSqlParser.UNQUIESCE:
+ case PlSqlParser.UNRECOVERABLE:
+ case PlSqlParser.UNRESTRICTED:
+ case PlSqlParser.UNSUBSCRIBE:
+ case PlSqlParser.UNTIL:
+ case PlSqlParser.UNUSABLE:
+ case PlSqlParser.UNUSED:
+ case PlSqlParser.UPDATABLE:
+ case PlSqlParser.UPDATED:
+ case PlSqlParser.UPDATEXML:
+ case PlSqlParser.UPD_INDEXES:
+ case PlSqlParser.UPD_JOININDEX:
+ case PlSqlParser.UPGRADE:
+ case PlSqlParser.UPPER:
+ case PlSqlParser.UPSERT:
+ case PlSqlParser.UROWID:
+ case PlSqlParser.USABLE:
+ case PlSqlParser.USAGE:
+ case PlSqlParser.USE_ANTI:
+ case PlSqlParser.USE_CONCAT:
+ case PlSqlParser.USE_CUBE:
+ case PlSqlParser.USE_HASH_AGGREGATION:
+ case PlSqlParser.USE_HASH_GBY_FOR_PUSHDOWN:
+ case PlSqlParser.USE_HASH:
+ case PlSqlParser.USE_HIDDEN_PARTITIONS:
+ case PlSqlParser.USE_INVISIBLE_INDEXES:
+ case PlSqlParser.USE_MERGE_CARTESIAN:
+ case PlSqlParser.USE_MERGE:
+ case PlSqlParser.USE_NL:
+ case PlSqlParser.USE_NL_WITH_INDEX:
+ case PlSqlParser.USE_PRIVATE_OUTLINES:
+ case PlSqlParser.USER_DATA:
+ case PlSqlParser.USER_DEFINED:
+ case PlSqlParser.USERENV:
+ case PlSqlParser.USERGROUP:
+ case PlSqlParser.USER_RECYCLEBIN:
+ case PlSqlParser.USERS:
+ case PlSqlParser.USER_TABLESPACES:
+ case PlSqlParser.USER:
+ case PlSqlParser.USE_SEMI:
+ case PlSqlParser.USE_STORED_OUTLINES:
+ case PlSqlParser.USE_TTT_FOR_GSETS:
+ case PlSqlParser.USE:
+ case PlSqlParser.USE_VECTOR_AGGREGATION:
+ case PlSqlParser.USE_WEAK_NAME_RESL:
+ case PlSqlParser.USING_NO_EXPAND:
+ case PlSqlParser.USING:
+ case PlSqlParser.UTF16BE:
+ case PlSqlParser.UTF16LE:
+ case PlSqlParser.UTF32:
+ case PlSqlParser.UTF8:
+ case PlSqlParser.V1:
+ case PlSqlParser.V2:
+ case PlSqlParser.VALIDATE:
+ case PlSqlParser.VALIDATION:
+ case PlSqlParser.VALID_TIME_END:
+ case PlSqlParser.VALUE:
+ case PlSqlParser.VARCHAR2:
+ case PlSqlParser.VARCHAR:
+ case PlSqlParser.VARIABLE:
+ case PlSqlParser.VAR_POP:
+ case PlSqlParser.VARRAYS:
+ case PlSqlParser.VARRAY:
+ case PlSqlParser.VAR_SAMP:
+ case PlSqlParser.VARYING:
+ case PlSqlParser.VECTOR_READ_TRACE:
+ case PlSqlParser.VECTOR_READ:
+ case PlSqlParser.VECTOR_TRANSFORM_DIMS:
+ case PlSqlParser.VECTOR_TRANSFORM_FACT:
+ case PlSqlParser.VECTOR_TRANSFORM:
+ case PlSqlParser.VERIFIER:
+ case PlSqlParser.VERIFY:
+ case PlSqlParser.VERSIONING:
+ case PlSqlParser.VERSIONS_ENDSCN:
+ case PlSqlParser.VERSIONS_ENDTIME:
+ case PlSqlParser.VERSIONS_OPERATION:
+ case PlSqlParser.VERSIONS_STARTSCN:
+ case PlSqlParser.VERSIONS_STARTTIME:
+ case PlSqlParser.VERSIONS:
+ case PlSqlParser.VERSIONS_XID:
+ case PlSqlParser.VERSION:
+ case PlSqlParser.VIOLATION:
+ case PlSqlParser.VIRTUAL:
+ case PlSqlParser.VISIBILITY:
+ case PlSqlParser.VISIBLE:
+ case PlSqlParser.VOLUME:
+ case PlSqlParser.VSIZE:
+ case PlSqlParser.WAIT:
+ case PlSqlParser.WALLET:
+ case PlSqlParser.WARNING:
+ case PlSqlParser.WEEKS:
+ case PlSqlParser.WEEK:
+ case PlSqlParser.WELLFORMED:
+ case PlSqlParser.WHENEVER:
+ case PlSqlParser.WHEN:
+ case PlSqlParser.WHILE:
+ case PlSqlParser.WHITESPACE:
+ case PlSqlParser.WIDTH_BUCKET:
+ case PlSqlParser.WITHIN:
+ case PlSqlParser.WITHOUT:
+ case PlSqlParser.WITH_PLSQL:
+ case PlSqlParser.WORK:
+ case PlSqlParser.WRAPPED:
+ case PlSqlParser.WRAPPER:
+ case PlSqlParser.WRITE:
+ case PlSqlParser.XDB_FASTPATH_INSERT:
+ case PlSqlParser.X_DYN_PRUNE:
+ case PlSqlParser.XID:
+ case PlSqlParser.XML2OBJECT:
+ case PlSqlParser.XMLAGG:
+ case PlSqlParser.XMLATTRIBUTES:
+ case PlSqlParser.XMLCAST:
+ case PlSqlParser.XMLCDATA:
+ case PlSqlParser.XMLCOLATTVAL:
+ case PlSqlParser.XMLCOMMENT:
+ case PlSqlParser.XMLCONCAT:
+ case PlSqlParser.XMLDIFF:
+ case PlSqlParser.XML_DML_RWT_STMT:
+ case PlSqlParser.XMLELEMENT:
+ case PlSqlParser.XMLEXISTS2:
+ case PlSqlParser.XMLEXISTS:
+ case PlSqlParser.XMLFOREST:
+ case PlSqlParser.XMLINDEX_REWRITE_IN_SELECT:
+ case PlSqlParser.XMLINDEX_REWRITE:
+ case PlSqlParser.XMLINDEX_SEL_IDX_TBL:
+ case PlSqlParser.XMLISNODE:
+ case PlSqlParser.XMLISVALID:
+ case PlSqlParser.XMLNAMESPACES:
+ case PlSqlParser.XMLPARSE:
+ case PlSqlParser.XMLPATCH:
+ case PlSqlParser.XMLPI:
+ case PlSqlParser.XMLQUERYVAL:
+ case PlSqlParser.XMLQUERY:
+ case PlSqlParser.XMLROOT:
+ case PlSqlParser.XMLSCHEMA:
+ case PlSqlParser.XMLSERIALIZE:
+ case PlSqlParser.XMLTABLE:
+ case PlSqlParser.XMLTRANSFORMBLOB:
+ case PlSqlParser.XMLTRANSFORM:
+ case PlSqlParser.XMLTYPE:
+ case PlSqlParser.XML:
+ case PlSqlParser.XPATHTABLE:
+ case PlSqlParser.XS_SYS_CONTEXT:
+ case PlSqlParser.XS:
+ case PlSqlParser.YEARS:
+ case PlSqlParser.YEAR:
+ case PlSqlParser.YES:
+ case PlSqlParser.YMINTERVAL_UNCONSTRAINED:
+ case PlSqlParser.ZONEMAP:
+ case PlSqlParser.ZONE:
+ case PlSqlParser.PREDICTION:
+ case PlSqlParser.PREDICTION_BOUNDS:
+ case PlSqlParser.PREDICTION_COST:
+ case PlSqlParser.PREDICTION_DETAILS:
+ case PlSqlParser.PREDICTION_PROBABILITY:
+ case PlSqlParser.PREDICTION_SET:
+ case PlSqlParser.CUME_DIST:
+ case PlSqlParser.DENSE_RANK:
+ case PlSqlParser.LISTAGG:
+ case PlSqlParser.PERCENT_RANK:
+ case PlSqlParser.PERCENTILE_CONT:
+ case PlSqlParser.PERCENTILE_DISC:
+ case PlSqlParser.RANK:
+ case PlSqlParser.AVG:
+ case PlSqlParser.CORR:
+ case PlSqlParser.COVAR_:
+ case PlSqlParser.LAG:
+ case PlSqlParser.LEAD:
+ case PlSqlParser.MAX:
+ case PlSqlParser.MEDIAN:
+ case PlSqlParser.MIN:
+ case PlSqlParser.NTILE:
+ case PlSqlParser.NVL:
+ case PlSqlParser.RATIO_TO_REPORT:
+ case PlSqlParser.REGR_:
+ case PlSqlParser.ROUND:
+ case PlSqlParser.ROW_NUMBER:
+ case PlSqlParser.SUBSTR:
+ case PlSqlParser.TO_CHAR:
+ case PlSqlParser.TRIM:
+ case PlSqlParser.SUM:
+ case PlSqlParser.STDDEV:
+ case PlSqlParser.VAR_:
+ case PlSqlParser.VARIANCE:
+ case PlSqlParser.LEAST:
+ case PlSqlParser.GREATEST:
+ case PlSqlParser.TO_DATE:
+ case PlSqlParser.PERIOD:
+ case PlSqlParser.DELIMITED_ID:
+ case PlSqlParser.REGULAR_ID:
+ this.state = 4201;
+ this.grantee_name();
+ break;
+ case PlSqlParser.PUBLIC:
+ this.state = 4202;
+ this.match(PlSqlParser.PUBLIC);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 4209;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 4213;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,389,this._ctx);
+ if(la_===1) {
+ this.state = 4210;
+ this.match(PlSqlParser.WITH);
+ this.state = 4211;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.ADMIN || _la===PlSqlParser.DELEGATE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 4212;
+ this.match(PlSqlParser.OPTION);
+
+ }
+ this.state = 4218;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,390,this._ctx);
+ if(la_===1) {
+ this.state = 4215;
+ this.match(PlSqlParser.WITH);
+ this.state = 4216;
+ this.match(PlSqlParser.HIERARCHY);
+ this.state = 4217;
+ this.match(PlSqlParser.OPTION);
+
+ }
+ this.state = 4223;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.WITH) {
+ this.state = 4220;
+ this.match(PlSqlParser.WITH);
+ this.state = 4221;
+ this.match(PlSqlParser.GRANT);
+ this.state = 4222;
+ this.match(PlSqlParser.OPTION);
+ }
+
+ this.state = 4226;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.CONTAINER) {
+ this.state = 4225;
+ this.container_clause();
+ }
+
+ this.state = 4228;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Container_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_container_clause;
+ return this;
+}
+
+Container_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Container_clauseContext.prototype.constructor = Container_clauseContext;
+
+Container_clauseContext.prototype.CONTAINER = function() {
+ return this.getToken(PlSqlParser.CONTAINER, 0);
+};
+
+Container_clauseContext.prototype.EQUALS_OP = function() {
+ return this.getToken(PlSqlParser.EQUALS_OP, 0);
+};
+
+Container_clauseContext.prototype.CURRENT = function() {
+ return this.getToken(PlSqlParser.CURRENT, 0);
+};
+
+Container_clauseContext.prototype.ALL = function() {
+ return this.getToken(PlSqlParser.ALL, 0);
+};
+
+Container_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterContainer_clause(this);
+ }
+};
+
+Container_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitContainer_clause(this);
+ }
+};
+
+Container_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitContainer_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Container_clauseContext = Container_clauseContext;
+
+PlSqlParser.prototype.container_clause = function() {
+
+ var localctx = new Container_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 384, PlSqlParser.RULE_container_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4230;
+ this.match(PlSqlParser.CONTAINER);
+ this.state = 4231;
+ this.match(PlSqlParser.EQUALS_OP);
+ this.state = 4232;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.ALL || _la===PlSqlParser.CURRENT)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_directoryContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_create_directory;
+ return this;
+}
+
+Create_directoryContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_directoryContext.prototype.constructor = Create_directoryContext;
+
+Create_directoryContext.prototype.CREATE = function() {
+ return this.getToken(PlSqlParser.CREATE, 0);
+};
+
+Create_directoryContext.prototype.DIRECTORY = function() {
+ return this.getToken(PlSqlParser.DIRECTORY, 0);
+};
+
+Create_directoryContext.prototype.directory_name = function() {
+ return this.getTypedRuleContext(Directory_nameContext,0);
+};
+
+Create_directoryContext.prototype.AS = function() {
+ return this.getToken(PlSqlParser.AS, 0);
+};
+
+Create_directoryContext.prototype.directory_path = function() {
+ return this.getTypedRuleContext(Directory_pathContext,0);
+};
+
+Create_directoryContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Create_directoryContext.prototype.OR = function() {
+ return this.getToken(PlSqlParser.OR, 0);
+};
+
+Create_directoryContext.prototype.REPLACE = function() {
+ return this.getToken(PlSqlParser.REPLACE, 0);
+};
+
+Create_directoryContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterCreate_directory(this);
+ }
+};
+
+Create_directoryContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitCreate_directory(this);
+ }
+};
+
+Create_directoryContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitCreate_directory(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Create_directoryContext = Create_directoryContext;
+
+PlSqlParser.prototype.create_directory = function() {
+
+ var localctx = new Create_directoryContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 386, PlSqlParser.RULE_create_directory);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4234;
+ this.match(PlSqlParser.CREATE);
+ this.state = 4237;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.OR) {
+ this.state = 4235;
+ this.match(PlSqlParser.OR);
+ this.state = 4236;
+ this.match(PlSqlParser.REPLACE);
+ }
+
+ this.state = 4239;
+ this.match(PlSqlParser.DIRECTORY);
+ this.state = 4240;
+ this.directory_name();
+ this.state = 4241;
+ this.match(PlSqlParser.AS);
+ this.state = 4242;
+ this.directory_path();
+ this.state = 4243;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Directory_nameContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_directory_name;
+ return this;
+}
+
+Directory_nameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Directory_nameContext.prototype.constructor = Directory_nameContext;
+
+Directory_nameContext.prototype.regular_id = function() {
+ return this.getTypedRuleContext(Regular_idContext,0);
+};
+
+Directory_nameContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterDirectory_name(this);
+ }
+};
+
+Directory_nameContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitDirectory_name(this);
+ }
+};
+
+Directory_nameContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitDirectory_name(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Directory_nameContext = Directory_nameContext;
+
+PlSqlParser.prototype.directory_name = function() {
+
+ var localctx = new Directory_nameContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 388, PlSqlParser.RULE_directory_name);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4245;
+ this.regular_id();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Directory_pathContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_directory_path;
+ return this;
+}
+
+Directory_pathContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Directory_pathContext.prototype.constructor = Directory_pathContext;
+
+Directory_pathContext.prototype.CHAR_STRING = function() {
+ return this.getToken(PlSqlParser.CHAR_STRING, 0);
+};
+
+Directory_pathContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterDirectory_path(this);
+ }
+};
+
+Directory_pathContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitDirectory_path(this);
+ }
+};
+
+Directory_pathContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitDirectory_path(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Directory_pathContext = Directory_pathContext;
+
+PlSqlParser.prototype.directory_path = function() {
+
+ var localctx = new Directory_pathContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 390, PlSqlParser.RULE_directory_path);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4247;
+ this.match(PlSqlParser.CHAR_STRING);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Alter_libraryContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_alter_library;
+ return this;
+}
+
+Alter_libraryContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Alter_libraryContext.prototype.constructor = Alter_libraryContext;
+
+Alter_libraryContext.prototype.ALTER = function() {
+ return this.getToken(PlSqlParser.ALTER, 0);
+};
+
+Alter_libraryContext.prototype.LIBRARY = function() {
+ return this.getToken(PlSqlParser.LIBRARY, 0);
+};
+
+Alter_libraryContext.prototype.library_name = function() {
+ return this.getTypedRuleContext(Library_nameContext,0);
+};
+
+Alter_libraryContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Alter_libraryContext.prototype.COMPILE = function() {
+ return this.getToken(PlSqlParser.COMPILE, 0);
+};
+
+Alter_libraryContext.prototype.library_editionable = function() {
+ return this.getTypedRuleContext(Library_editionableContext,0);
+};
+
+Alter_libraryContext.prototype.library_debug = function() {
+ return this.getTypedRuleContext(Library_debugContext,0);
+};
+
+Alter_libraryContext.prototype.compiler_parameters_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Compiler_parameters_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Compiler_parameters_clauseContext,i);
+ }
+};
+
+Alter_libraryContext.prototype.REUSE = function() {
+ return this.getToken(PlSqlParser.REUSE, 0);
+};
+
+Alter_libraryContext.prototype.SETTINGS = function() {
+ return this.getToken(PlSqlParser.SETTINGS, 0);
+};
+
+Alter_libraryContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAlter_library(this);
+ }
+};
+
+Alter_libraryContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAlter_library(this);
+ }
+};
+
+Alter_libraryContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAlter_library(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Alter_libraryContext = Alter_libraryContext;
+
+PlSqlParser.prototype.alter_library = function() {
+
+ var localctx = new Alter_libraryContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 392, PlSqlParser.RULE_alter_library);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4249;
+ this.match(PlSqlParser.ALTER);
+ this.state = 4250;
+ this.match(PlSqlParser.LIBRARY);
+ this.state = 4251;
+ this.library_name();
+ this.state = 4267;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,397,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 4252;
+ this.match(PlSqlParser.COMPILE);
+ this.state = 4254;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,394,this._ctx);
+ if(la_===1) {
+ this.state = 4253;
+ this.library_debug();
+
+ }
+ this.state = 4259;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,395,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 4256;
+ this.compiler_parameters_clause();
+ }
+ this.state = 4261;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,395,this._ctx);
+ }
+
+ this.state = 4264;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.REUSE) {
+ this.state = 4262;
+ this.match(PlSqlParser.REUSE);
+ this.state = 4263;
+ this.match(PlSqlParser.SETTINGS);
+ }
+
+ break;
+
+ case 2:
+ this.state = 4266;
+ this.library_editionable();
+ break;
+
+ }
+ this.state = 4269;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Library_editionableContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_library_editionable;
+ return this;
+}
+
+Library_editionableContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Library_editionableContext.prototype.constructor = Library_editionableContext;
+
+Library_editionableContext.prototype.EDITIONABLE = function() {
+ return this.getToken(PlSqlParser.EDITIONABLE, 0);
+};
+
+Library_editionableContext.prototype.NONEDITIONABLE = function() {
+ return this.getToken(PlSqlParser.NONEDITIONABLE, 0);
+};
+
+Library_editionableContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterLibrary_editionable(this);
+ }
+};
+
+Library_editionableContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitLibrary_editionable(this);
+ }
+};
+
+Library_editionableContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitLibrary_editionable(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Library_editionableContext = Library_editionableContext;
+
+PlSqlParser.prototype.library_editionable = function() {
+
+ var localctx = new Library_editionableContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 394, PlSqlParser.RULE_library_editionable);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4271;
+ if (!( this.isVersion12())) {
+ throw new antlr4.error.FailedPredicateException(this, "this.isVersion12()");
+ }
+ this.state = 4272;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.EDITIONABLE || _la===PlSqlParser.NONEDITIONABLE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Library_debugContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_library_debug;
+ return this;
+}
+
+Library_debugContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Library_debugContext.prototype.constructor = Library_debugContext;
+
+Library_debugContext.prototype.DEBUG = function() {
+ return this.getToken(PlSqlParser.DEBUG, 0);
+};
+
+Library_debugContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterLibrary_debug(this);
+ }
+};
+
+Library_debugContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitLibrary_debug(this);
+ }
+};
+
+Library_debugContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitLibrary_debug(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Library_debugContext = Library_debugContext;
+
+PlSqlParser.prototype.library_debug = function() {
+
+ var localctx = new Library_debugContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 396, PlSqlParser.RULE_library_debug);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4274;
+ if (!( this.isVersion12())) {
+ throw new antlr4.error.FailedPredicateException(this, "this.isVersion12()");
+ }
+ this.state = 4275;
+ this.match(PlSqlParser.DEBUG);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Compiler_parameters_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_compiler_parameters_clause;
+ return this;
+}
+
+Compiler_parameters_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Compiler_parameters_clauseContext.prototype.constructor = Compiler_parameters_clauseContext;
+
+Compiler_parameters_clauseContext.prototype.parameter_name = function() {
+ return this.getTypedRuleContext(Parameter_nameContext,0);
+};
+
+Compiler_parameters_clauseContext.prototype.EQUALS_OP = function() {
+ return this.getToken(PlSqlParser.EQUALS_OP, 0);
+};
+
+Compiler_parameters_clauseContext.prototype.parameter_value = function() {
+ return this.getTypedRuleContext(Parameter_valueContext,0);
+};
+
+Compiler_parameters_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterCompiler_parameters_clause(this);
+ }
+};
+
+Compiler_parameters_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitCompiler_parameters_clause(this);
+ }
+};
+
+Compiler_parameters_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitCompiler_parameters_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Compiler_parameters_clauseContext = Compiler_parameters_clauseContext;
+
+PlSqlParser.prototype.compiler_parameters_clause = function() {
+
+ var localctx = new Compiler_parameters_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 398, PlSqlParser.RULE_compiler_parameters_clause);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4277;
+ this.parameter_name();
+ this.state = 4278;
+ this.match(PlSqlParser.EQUALS_OP);
+ this.state = 4279;
+ this.parameter_value();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Parameter_valueContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_parameter_value;
+ return this;
+}
+
+Parameter_valueContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Parameter_valueContext.prototype.constructor = Parameter_valueContext;
+
+Parameter_valueContext.prototype.regular_id = function() {
+ return this.getTypedRuleContext(Regular_idContext,0);
+};
+
+Parameter_valueContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterParameter_value(this);
+ }
+};
+
+Parameter_valueContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitParameter_value(this);
+ }
+};
+
+Parameter_valueContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitParameter_value(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Parameter_valueContext = Parameter_valueContext;
+
+PlSqlParser.prototype.parameter_value = function() {
+
+ var localctx = new Parameter_valueContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 400, PlSqlParser.RULE_parameter_value);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4281;
+ this.regular_id();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Library_nameContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_library_name;
+ return this;
+}
+
+Library_nameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Library_nameContext.prototype.constructor = Library_nameContext;
+
+Library_nameContext.prototype.regular_id = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Regular_idContext);
+ } else {
+ return this.getTypedRuleContext(Regular_idContext,i);
+ }
+};
+
+Library_nameContext.prototype.PERIOD = function() {
+ return this.getToken(PlSqlParser.PERIOD, 0);
+};
+
+Library_nameContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterLibrary_name(this);
+ }
+};
+
+Library_nameContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitLibrary_name(this);
+ }
+};
+
+Library_nameContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitLibrary_name(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Library_nameContext = Library_nameContext;
+
+PlSqlParser.prototype.library_name = function() {
+
+ var localctx = new Library_nameContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 402, PlSqlParser.RULE_library_name);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4286;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,398,this._ctx);
+ if(la_===1) {
+ this.state = 4283;
+ this.regular_id();
+ this.state = 4284;
+ this.match(PlSqlParser.PERIOD);
+
+ }
+ this.state = 4288;
+ this.regular_id();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Alter_viewContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_alter_view;
+ return this;
+}
+
+Alter_viewContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Alter_viewContext.prototype.constructor = Alter_viewContext;
+
+Alter_viewContext.prototype.ALTER = function() {
+ return this.getToken(PlSqlParser.ALTER, 0);
+};
+
+Alter_viewContext.prototype.VIEW = function() {
+ return this.getToken(PlSqlParser.VIEW, 0);
+};
+
+Alter_viewContext.prototype.tableview_name = function() {
+ return this.getTypedRuleContext(Tableview_nameContext,0);
+};
+
+Alter_viewContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Alter_viewContext.prototype.ADD = function() {
+ return this.getToken(PlSqlParser.ADD, 0);
+};
+
+Alter_viewContext.prototype.out_of_line_constraint = function() {
+ return this.getTypedRuleContext(Out_of_line_constraintContext,0);
+};
+
+Alter_viewContext.prototype.MODIFY = function() {
+ return this.getToken(PlSqlParser.MODIFY, 0);
+};
+
+Alter_viewContext.prototype.CONSTRAINT = function() {
+ return this.getToken(PlSqlParser.CONSTRAINT, 0);
+};
+
+Alter_viewContext.prototype.constraint_name = function() {
+ return this.getTypedRuleContext(Constraint_nameContext,0);
+};
+
+Alter_viewContext.prototype.DROP = function() {
+ return this.getToken(PlSqlParser.DROP, 0);
+};
+
+Alter_viewContext.prototype.COMPILE = function() {
+ return this.getToken(PlSqlParser.COMPILE, 0);
+};
+
+Alter_viewContext.prototype.READ = function() {
+ return this.getToken(PlSqlParser.READ, 0);
+};
+
+Alter_viewContext.prototype.RELY = function() {
+ return this.getToken(PlSqlParser.RELY, 0);
+};
+
+Alter_viewContext.prototype.NORELY = function() {
+ return this.getToken(PlSqlParser.NORELY, 0);
+};
+
+Alter_viewContext.prototype.ONLY = function() {
+ return this.getToken(PlSqlParser.ONLY, 0);
+};
+
+Alter_viewContext.prototype.WRITE = function() {
+ return this.getToken(PlSqlParser.WRITE, 0);
+};
+
+Alter_viewContext.prototype.PRIMARY = function() {
+ return this.getToken(PlSqlParser.PRIMARY, 0);
+};
+
+Alter_viewContext.prototype.KEY = function() {
+ return this.getToken(PlSqlParser.KEY, 0);
+};
+
+Alter_viewContext.prototype.UNIQUE = function() {
+ return this.getToken(PlSqlParser.UNIQUE, 0);
+};
+
+Alter_viewContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Alter_viewContext.prototype.column_name = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Column_nameContext);
+ } else {
+ return this.getTypedRuleContext(Column_nameContext,i);
+ }
+};
+
+Alter_viewContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Alter_viewContext.prototype.alter_view_editionable = function() {
+ return this.getTypedRuleContext(Alter_view_editionableContext,0);
+};
+
+Alter_viewContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Alter_viewContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAlter_view(this);
+ }
+};
+
+Alter_viewContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAlter_view(this);
+ }
+};
+
+Alter_viewContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAlter_view(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Alter_viewContext = Alter_viewContext;
+
+PlSqlParser.prototype.alter_view = function() {
+
+ var localctx = new Alter_viewContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 404, PlSqlParser.RULE_alter_view);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4290;
+ this.match(PlSqlParser.ALTER);
+ this.state = 4291;
+ this.match(PlSqlParser.VIEW);
+ this.state = 4292;
+ this.tableview_name();
+ this.state = 4325;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,402,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 4293;
+ this.match(PlSqlParser.ADD);
+ this.state = 4294;
+ this.out_of_line_constraint();
+ break;
+
+ case 2:
+ this.state = 4295;
+ this.match(PlSqlParser.MODIFY);
+ this.state = 4296;
+ this.match(PlSqlParser.CONSTRAINT);
+ this.state = 4297;
+ this.constraint_name();
+ this.state = 4298;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.NORELY || _la===PlSqlParser.RELY)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+
+ case 3:
+ this.state = 4300;
+ this.match(PlSqlParser.DROP);
+ this.state = 4317;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.CONSTRAINT:
+ this.state = 4301;
+ this.match(PlSqlParser.CONSTRAINT);
+ this.state = 4302;
+ this.constraint_name();
+ break;
+ case PlSqlParser.PRIMARY:
+ this.state = 4303;
+ this.match(PlSqlParser.PRIMARY);
+ this.state = 4304;
+ this.match(PlSqlParser.KEY);
+ break;
+ case PlSqlParser.UNIQUE:
+ this.state = 4305;
+ this.match(PlSqlParser.UNIQUE);
+ this.state = 4306;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 4307;
+ this.column_name();
+ this.state = 4312;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 4308;
+ this.match(PlSqlParser.COMMA);
+ this.state = 4309;
+ this.column_name();
+ this.state = 4314;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 4315;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ break;
+
+ case 4:
+ this.state = 4319;
+ this.match(PlSqlParser.COMPILE);
+ break;
+
+ case 5:
+ this.state = 4320;
+ this.match(PlSqlParser.READ);
+ this.state = 4321;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.ONLY || _la===PlSqlParser.WRITE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+
+ case 6:
+ this.state = 4323;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,401,this._ctx);
+ if(la_===1) {
+ this.state = 4322;
+ this.alter_view_editionable();
+
+ }
+ break;
+
+ }
+ this.state = 4327;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Alter_view_editionableContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_alter_view_editionable;
+ return this;
+}
+
+Alter_view_editionableContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Alter_view_editionableContext.prototype.constructor = Alter_view_editionableContext;
+
+Alter_view_editionableContext.prototype.EDITIONABLE = function() {
+ return this.getToken(PlSqlParser.EDITIONABLE, 0);
+};
+
+Alter_view_editionableContext.prototype.NONEDITIONABLE = function() {
+ return this.getToken(PlSqlParser.NONEDITIONABLE, 0);
+};
+
+Alter_view_editionableContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAlter_view_editionable(this);
+ }
+};
+
+Alter_view_editionableContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAlter_view_editionable(this);
+ }
+};
+
+Alter_view_editionableContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAlter_view_editionable(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Alter_view_editionableContext = Alter_view_editionableContext;
+
+PlSqlParser.prototype.alter_view_editionable = function() {
+
+ var localctx = new Alter_view_editionableContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 406, PlSqlParser.RULE_alter_view_editionable);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4329;
+ if (!( this.isVersion12())) {
+ throw new antlr4.error.FailedPredicateException(this, "this.isVersion12()");
+ }
+ this.state = 4330;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.EDITIONABLE || _la===PlSqlParser.NONEDITIONABLE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_viewContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_create_view;
+ return this;
+}
+
+Create_viewContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_viewContext.prototype.constructor = Create_viewContext;
+
+Create_viewContext.prototype.CREATE = function() {
+ return this.getToken(PlSqlParser.CREATE, 0);
+};
+
+Create_viewContext.prototype.VIEW = function() {
+ return this.getToken(PlSqlParser.VIEW, 0);
+};
+
+Create_viewContext.prototype.tableview_name = function() {
+ return this.getTypedRuleContext(Tableview_nameContext,0);
+};
+
+Create_viewContext.prototype.AS = function() {
+ return this.getToken(PlSqlParser.AS, 0);
+};
+
+Create_viewContext.prototype.select_only_statement = function() {
+ return this.getTypedRuleContext(Select_only_statementContext,0);
+};
+
+Create_viewContext.prototype.OR = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.OR);
+ } else {
+ return this.getToken(PlSqlParser.OR, i);
+ }
+};
+
+
+Create_viewContext.prototype.REPLACE = function() {
+ return this.getToken(PlSqlParser.REPLACE, 0);
+};
+
+Create_viewContext.prototype.FORCE = function() {
+ return this.getToken(PlSqlParser.FORCE, 0);
+};
+
+Create_viewContext.prototype.EDITIONABLE = function() {
+ return this.getToken(PlSqlParser.EDITIONABLE, 0);
+};
+
+Create_viewContext.prototype.EDITIONING = function() {
+ return this.getToken(PlSqlParser.EDITIONING, 0);
+};
+
+Create_viewContext.prototype.view_options = function() {
+ return this.getTypedRuleContext(View_optionsContext,0);
+};
+
+Create_viewContext.prototype.subquery_restriction_clause = function() {
+ return this.getTypedRuleContext(Subquery_restriction_clauseContext,0);
+};
+
+Create_viewContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterCreate_view(this);
+ }
+};
+
+Create_viewContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitCreate_view(this);
+ }
+};
+
+Create_viewContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitCreate_view(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Create_viewContext = Create_viewContext;
+
+PlSqlParser.prototype.create_view = function() {
+
+ var localctx = new Create_viewContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 408, PlSqlParser.RULE_create_view);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4332;
+ this.match(PlSqlParser.CREATE);
+ this.state = 4335;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,403,this._ctx);
+ if(la_===1) {
+ this.state = 4333;
+ this.match(PlSqlParser.OR);
+ this.state = 4334;
+ this.match(PlSqlParser.REPLACE);
+
+ }
+ this.state = 4341;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.FORCE || _la===PlSqlParser.OR) {
+ this.state = 4338;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.OR) {
+ this.state = 4337;
+ this.match(PlSqlParser.OR);
+ }
+
+ this.state = 4340;
+ this.match(PlSqlParser.FORCE);
+ }
+
+ this.state = 4344;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.EDITIONABLE) {
+ this.state = 4343;
+ this.match(PlSqlParser.EDITIONABLE);
+ }
+
+ this.state = 4347;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.EDITIONING) {
+ this.state = 4346;
+ this.match(PlSqlParser.EDITIONING);
+ }
+
+ this.state = 4349;
+ this.match(PlSqlParser.VIEW);
+ this.state = 4350;
+ this.tableview_name();
+ this.state = 4352;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.OF || _la===PlSqlParser.LEFT_PAREN) {
+ this.state = 4351;
+ this.view_options();
+ }
+
+ this.state = 4354;
+ this.match(PlSqlParser.AS);
+ this.state = 4355;
+ this.select_only_statement();
+ this.state = 4357;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,409,this._ctx);
+ if(la_===1) {
+ this.state = 4356;
+ this.subquery_restriction_clause();
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function View_optionsContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_view_options;
+ return this;
+}
+
+View_optionsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+View_optionsContext.prototype.constructor = View_optionsContext;
+
+View_optionsContext.prototype.view_alias_constraint = function() {
+ return this.getTypedRuleContext(View_alias_constraintContext,0);
+};
+
+View_optionsContext.prototype.object_view_clause = function() {
+ return this.getTypedRuleContext(Object_view_clauseContext,0);
+};
+
+View_optionsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterView_options(this);
+ }
+};
+
+View_optionsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitView_options(this);
+ }
+};
+
+View_optionsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitView_options(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.View_optionsContext = View_optionsContext;
+
+PlSqlParser.prototype.view_options = function() {
+
+ var localctx = new View_optionsContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 410, PlSqlParser.RULE_view_options);
+ try {
+ this.state = 4361;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.LEFT_PAREN:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4359;
+ this.view_alias_constraint();
+ break;
+ case PlSqlParser.OF:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 4360;
+ this.object_view_clause();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function View_alias_constraintContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_view_alias_constraint;
+ return this;
+}
+
+View_alias_constraintContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+View_alias_constraintContext.prototype.constructor = View_alias_constraintContext;
+
+View_alias_constraintContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+View_alias_constraintContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+View_alias_constraintContext.prototype.table_alias = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Table_aliasContext);
+ } else {
+ return this.getTypedRuleContext(Table_aliasContext,i);
+ }
+};
+
+View_alias_constraintContext.prototype.out_of_line_constraint = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Out_of_line_constraintContext);
+ } else {
+ return this.getTypedRuleContext(Out_of_line_constraintContext,i);
+ }
+};
+
+View_alias_constraintContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+View_alias_constraintContext.prototype.inline_constraint = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Inline_constraintContext);
+ } else {
+ return this.getTypedRuleContext(Inline_constraintContext,i);
+ }
+};
+
+View_alias_constraintContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterView_alias_constraint(this);
+ }
+};
+
+View_alias_constraintContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitView_alias_constraint(this);
+ }
+};
+
+View_alias_constraintContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitView_alias_constraint(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.View_alias_constraintContext = View_alias_constraintContext;
+
+PlSqlParser.prototype.view_alias_constraint = function() {
+
+ var localctx = new View_alias_constraintContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 412, PlSqlParser.RULE_view_alias_constraint);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4363;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 4377;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 4365;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.COMMA) {
+ this.state = 4364;
+ this.match(PlSqlParser.COMMA);
+ }
+
+ this.state = 4375;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,413,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 4367;
+ this.table_alias();
+ this.state = 4371;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,412,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 4368;
+ this.inline_constraint();
+ }
+ this.state = 4373;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,412,this._ctx);
+ }
+
+ break;
+
+ case 2:
+ this.state = 4374;
+ this.out_of_line_constraint();
+ break;
+
+ }
+ this.state = 4379;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while((((_la) & ~0x1f) == 0 && ((1 << _la) & ((1 << PlSqlParser.ABORT) | (1 << PlSqlParser.ABS) | (1 << PlSqlParser.ACCESS) | (1 << PlSqlParser.ACCESSED) | (1 << PlSqlParser.ACCOUNT) | (1 << PlSqlParser.ACL) | (1 << PlSqlParser.ACOS) | (1 << PlSqlParser.ACTION) | (1 << PlSqlParser.ACTIONS) | (1 << PlSqlParser.ACTIVATE) | (1 << PlSqlParser.ACTIVE) | (1 << PlSqlParser.ACTIVE_COMPONENT) | (1 << PlSqlParser.ACTIVE_DATA) | (1 << PlSqlParser.ACTIVE_FUNCTION) | (1 << PlSqlParser.ACTIVE_TAG) | (1 << PlSqlParser.ACTIVITY) | (1 << PlSqlParser.ADAPTIVE_PLAN) | (1 << PlSqlParser.ADD) | (1 << PlSqlParser.ADD_COLUMN) | (1 << PlSqlParser.ADD_GROUP) | (1 << PlSqlParser.ADD_MONTHS) | (1 << PlSqlParser.ADJ_DATE) | (1 << PlSqlParser.ADMIN) | (1 << PlSqlParser.ADMINISTER) | (1 << PlSqlParser.ADMINISTRATOR) | (1 << PlSqlParser.ADVANCED) | (1 << PlSqlParser.ADVISE) | (1 << PlSqlParser.ADVISOR) | (1 << PlSqlParser.AFD_DISKSTRING) | (1 << PlSqlParser.AFTER) | (1 << PlSqlParser.AGENT))) !== 0) || ((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (PlSqlParser.AGGREGATE - 32)) | (1 << (PlSqlParser.A_LETTER - 32)) | (1 << (PlSqlParser.ALIAS - 32)) | (1 << (PlSqlParser.ALLOCATE - 32)) | (1 << (PlSqlParser.ALLOW - 32)) | (1 << (PlSqlParser.ALL_ROWS - 32)) | (1 << (PlSqlParser.ALWAYS - 32)) | (1 << (PlSqlParser.ANALYZE - 32)) | (1 << (PlSqlParser.ANCILLARY - 32)) | (1 << (PlSqlParser.AND_EQUAL - 32)) | (1 << (PlSqlParser.ANOMALY - 32)) | (1 << (PlSqlParser.ANSI_REARCH - 32)) | (1 << (PlSqlParser.ANTIJOIN - 32)) | (1 << (PlSqlParser.ANYSCHEMA - 32)) | (1 << (PlSqlParser.APPEND - 32)) | (1 << (PlSqlParser.APPENDCHILDXML - 32)) | (1 << (PlSqlParser.APPEND_VALUES - 32)) | (1 << (PlSqlParser.APPLICATION - 32)) | (1 << (PlSqlParser.APPLY - 32)) | (1 << (PlSqlParser.APPROX_COUNT_DISTINCT - 32)) | (1 << (PlSqlParser.ARCHIVAL - 32)) | (1 << (PlSqlParser.ARCHIVE - 32)) | (1 << (PlSqlParser.ARCHIVED - 32)) | (1 << (PlSqlParser.ARCHIVELOG - 32)) | (1 << (PlSqlParser.ARRAY - 32)) | (1 << (PlSqlParser.ASCII - 32)))) !== 0) || ((((_la - 64)) & ~0x1f) == 0 && ((1 << (_la - 64)) & ((1 << (PlSqlParser.ASCIISTR - 64)) | (1 << (PlSqlParser.ASIN - 64)) | (1 << (PlSqlParser.ASIS - 64)) | (1 << (PlSqlParser.ASSEMBLY - 64)) | (1 << (PlSqlParser.ASSIGN - 64)) | (1 << (PlSqlParser.ASSOCIATE - 64)) | (1 << (PlSqlParser.ASYNC - 64)) | (1 << (PlSqlParser.ASYNCHRONOUS - 64)) | (1 << (PlSqlParser.ATAN2 - 64)) | (1 << (PlSqlParser.ATAN - 64)) | (1 << (PlSqlParser.AT - 64)) | (1 << (PlSqlParser.ATTRIBUTE - 64)) | (1 << (PlSqlParser.ATTRIBUTES - 64)) | (1 << (PlSqlParser.AUTHENTICATED - 64)) | (1 << (PlSqlParser.AUTHENTICATION - 64)) | (1 << (PlSqlParser.AUTHID - 64)) | (1 << (PlSqlParser.AUTHORIZATION - 64)) | (1 << (PlSqlParser.AUTOALLOCATE - 64)) | (1 << (PlSqlParser.AUTO - 64)) | (1 << (PlSqlParser.AUTOEXTEND - 64)) | (1 << (PlSqlParser.AUTO_LOGIN - 64)) | (1 << (PlSqlParser.AUTOMATIC - 64)) | (1 << (PlSqlParser.AUTONOMOUS_TRANSACTION - 64)) | (1 << (PlSqlParser.AUTO_REOPTIMIZE - 64)) | (1 << (PlSqlParser.AVAILABILITY - 64)) | (1 << (PlSqlParser.AVRO - 64)) | (1 << (PlSqlParser.BACKGROUND - 64)) | (1 << (PlSqlParser.BACKUP - 64)) | (1 << (PlSqlParser.BASIC - 64)))) !== 0) || ((((_la - 96)) & ~0x1f) == 0 && ((1 << (_la - 96)) & ((1 << (PlSqlParser.BASICFILE - 96)) | (1 << (PlSqlParser.BATCH - 96)) | (1 << (PlSqlParser.BATCHSIZE - 96)) | (1 << (PlSqlParser.BATCH_TABLE_ACCESS_BY_ROWID - 96)) | (1 << (PlSqlParser.BECOME - 96)) | (1 << (PlSqlParser.BEFORE - 96)) | (1 << (PlSqlParser.BEGIN - 96)) | (1 << (PlSqlParser.BEGINNING - 96)) | (1 << (PlSqlParser.BEGIN_OUTLINE_DATA - 96)) | (1 << (PlSqlParser.BEHALF - 96)) | (1 << (PlSqlParser.BEQUEATH - 96)) | (1 << (PlSqlParser.BFILE - 96)) | (1 << (PlSqlParser.BFILENAME - 96)) | (1 << (PlSqlParser.BIGFILE - 96)) | (1 << (PlSqlParser.BINARY - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE_INFINITY - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE_NAN - 96)) | (1 << (PlSqlParser.BINARY_FLOAT - 96)) | (1 << (PlSqlParser.BINARY_FLOAT_INFINITY - 96)) | (1 << (PlSqlParser.BINARY_FLOAT_NAN - 96)) | (1 << (PlSqlParser.BINARY_INTEGER - 96)) | (1 << (PlSqlParser.BIND_AWARE - 96)) | (1 << (PlSqlParser.BINDING - 96)) | (1 << (PlSqlParser.BIN_TO_NUM - 96)) | (1 << (PlSqlParser.BITAND - 96)) | (1 << (PlSqlParser.BITMAP_AND - 96)) | (1 << (PlSqlParser.BITMAP - 96)) | (1 << (PlSqlParser.BITMAPS - 96)) | (1 << (PlSqlParser.BITMAP_TREE - 96)) | (1 << (PlSqlParser.BITS - 96)))) !== 0) || ((((_la - 128)) & ~0x1f) == 0 && ((1 << (_la - 128)) & ((1 << (PlSqlParser.BLOB - 128)) | (1 << (PlSqlParser.BLOCK - 128)) | (1 << (PlSqlParser.BLOCK_RANGE - 128)) | (1 << (PlSqlParser.BLOCKS - 128)) | (1 << (PlSqlParser.BLOCKSIZE - 128)) | (1 << (PlSqlParser.BODY - 128)) | (1 << (PlSqlParser.BOOLEAN - 128)) | (1 << (PlSqlParser.BOTH - 128)) | (1 << (PlSqlParser.BOUND - 128)) | (1 << (PlSqlParser.BRANCH - 128)) | (1 << (PlSqlParser.BREADTH - 128)) | (1 << (PlSqlParser.BROADCAST - 128)) | (1 << (PlSqlParser.BSON - 128)) | (1 << (PlSqlParser.BUFFER - 128)) | (1 << (PlSqlParser.BUFFER_CACHE - 128)) | (1 << (PlSqlParser.BUFFER_POOL - 128)) | (1 << (PlSqlParser.BUILD - 128)) | (1 << (PlSqlParser.BULK - 128)) | (1 << (PlSqlParser.BYPASS_RECURSIVE_CHECK - 128)) | (1 << (PlSqlParser.BYPASS_UJVC - 128)) | (1 << (PlSqlParser.BYTE - 128)) | (1 << (PlSqlParser.CACHE - 128)) | (1 << (PlSqlParser.CACHE_CB - 128)) | (1 << (PlSqlParser.CACHE_INSTANCES - 128)) | (1 << (PlSqlParser.CACHE_TEMP_TABLE - 128)) | (1 << (PlSqlParser.CACHING - 128)) | (1 << (PlSqlParser.CALCULATED - 128)) | (1 << (PlSqlParser.CALLBACK - 128)) | (1 << (PlSqlParser.CALL - 128)) | (1 << (PlSqlParser.CANCEL - 128)))) !== 0) || ((((_la - 160)) & ~0x1f) == 0 && ((1 << (_la - 160)) & ((1 << (PlSqlParser.CAPACITY - 160)) | (1 << (PlSqlParser.CARDINALITY - 160)) | (1 << (PlSqlParser.CASCADE - 160)) | (1 << (PlSqlParser.CASE - 160)) | (1 << (PlSqlParser.CAST - 160)) | (1 << (PlSqlParser.CATEGORY - 160)) | (1 << (PlSqlParser.CDBDEFAULT - 160)) | (1 << (PlSqlParser.CEIL - 160)) | (1 << (PlSqlParser.CELL_FLASH_CACHE - 160)) | (1 << (PlSqlParser.CERTIFICATE - 160)) | (1 << (PlSqlParser.CFILE - 160)) | (1 << (PlSqlParser.CHAINED - 160)) | (1 << (PlSqlParser.CHANGE - 160)) | (1 << (PlSqlParser.CHANGE_DUPKEY_ERROR_INDEX - 160)) | (1 << (PlSqlParser.CHARACTER - 160)) | (1 << (PlSqlParser.CHAR - 160)) | (1 << (PlSqlParser.CHAR_CS - 160)) | (1 << (PlSqlParser.CHARTOROWID - 160)) | (1 << (PlSqlParser.CHECK_ACL_REWRITE - 160)) | (1 << (PlSqlParser.CHECK - 160)) | (1 << (PlSqlParser.CHECKPOINT - 160)) | (1 << (PlSqlParser.CHILD - 160)) | (1 << (PlSqlParser.CHOOSE - 160)) | (1 << (PlSqlParser.CHR - 160)) | (1 << (PlSqlParser.CHUNK - 160)) | (1 << (PlSqlParser.CLASS - 160)) | (1 << (PlSqlParser.CLASSIFIER - 160)) | (1 << (PlSqlParser.CLEANUP - 160)) | (1 << (PlSqlParser.CLEAR - 160)) | (1 << (PlSqlParser.C_LETTER - 160)) | (1 << (PlSqlParser.CLIENT - 160)))) !== 0) || ((((_la - 192)) & ~0x1f) == 0 && ((1 << (_la - 192)) & ((1 << (PlSqlParser.CLOB - 192)) | (1 << (PlSqlParser.CLONE - 192)) | (1 << (PlSqlParser.CLOSE_CACHED_OPEN_CURSORS - 192)) | (1 << (PlSqlParser.CLOSE - 192)) | (1 << (PlSqlParser.CLUSTER_BY_ROWID - 192)) | (1 << (PlSqlParser.CLUSTER - 192)) | (1 << (PlSqlParser.CLUSTER_DETAILS - 192)) | (1 << (PlSqlParser.CLUSTER_DISTANCE - 192)) | (1 << (PlSqlParser.CLUSTER_ID - 192)) | (1 << (PlSqlParser.CLUSTERING - 192)) | (1 << (PlSqlParser.CLUSTERING_FACTOR - 192)) | (1 << (PlSqlParser.CLUSTER_PROBABILITY - 192)) | (1 << (PlSqlParser.CLUSTER_SET - 192)) | (1 << (PlSqlParser.COALESCE - 192)) | (1 << (PlSqlParser.COALESCE_SQ - 192)) | (1 << (PlSqlParser.COARSE - 192)) | (1 << (PlSqlParser.CO_AUTH_IND - 192)) | (1 << (PlSqlParser.COLD - 192)) | (1 << (PlSqlParser.COLLECT - 192)) | (1 << (PlSqlParser.COLUMNAR - 192)) | (1 << (PlSqlParser.COLUMN_AUTH_INDICATOR - 192)) | (1 << (PlSqlParser.COLUMN - 192)) | (1 << (PlSqlParser.COLUMNS - 192)) | (1 << (PlSqlParser.COLUMN_STATS - 192)) | (1 << (PlSqlParser.COLUMN_VALUE - 192)) | (1 << (PlSqlParser.COMMENT - 192)) | (1 << (PlSqlParser.COMMIT - 192)) | (1 << (PlSqlParser.COMMITTED - 192)) | (1 << (PlSqlParser.COMMON_DATA - 192)) | (1 << (PlSqlParser.COMPACT - 192)) | (1 << (PlSqlParser.COMPATIBILITY - 192)) | (1 << (PlSqlParser.COMPILE - 192)))) !== 0) || ((((_la - 224)) & ~0x1f) == 0 && ((1 << (_la - 224)) & ((1 << (PlSqlParser.COMPLETE - 224)) | (1 << (PlSqlParser.COMPLIANCE - 224)) | (1 << (PlSqlParser.COMPONENT - 224)) | (1 << (PlSqlParser.COMPONENTS - 224)) | (1 << (PlSqlParser.COMPOSE - 224)) | (1 << (PlSqlParser.COMPOSITE - 224)) | (1 << (PlSqlParser.COMPOSITE_LIMIT - 224)) | (1 << (PlSqlParser.COMPOUND - 224)) | (1 << (PlSqlParser.COMPUTE - 224)) | (1 << (PlSqlParser.CONCAT - 224)) | (1 << (PlSqlParser.CON_DBID_TO_ID - 224)) | (1 << (PlSqlParser.CONDITIONAL - 224)) | (1 << (PlSqlParser.CONDITION - 224)) | (1 << (PlSqlParser.CONFIRM - 224)) | (1 << (PlSqlParser.CONFORMING - 224)) | (1 << (PlSqlParser.CON_GUID_TO_ID - 224)) | (1 << (PlSqlParser.CON_ID - 224)) | (1 << (PlSqlParser.CON_NAME_TO_ID - 224)) | (1 << (PlSqlParser.CONNECT_BY_CB_WHR_ONLY - 224)) | (1 << (PlSqlParser.CONNECT_BY_COMBINE_SW - 224)) | (1 << (PlSqlParser.CONNECT_BY_COST_BASED - 224)) | (1 << (PlSqlParser.CONNECT_BY_ELIM_DUPS - 224)) | (1 << (PlSqlParser.CONNECT_BY_FILTERING - 224)) | (1 << (PlSqlParser.CONNECT_BY_ISCYCLE - 224)) | (1 << (PlSqlParser.CONNECT_BY_ISLEAF - 224)) | (1 << (PlSqlParser.CONNECT_BY_ROOT - 224)) | (1 << (PlSqlParser.CONNECT_TIME - 224)) | (1 << (PlSqlParser.CONSIDER - 224)) | (1 << (PlSqlParser.CONSISTENT - 224)) | (1 << (PlSqlParser.CONSTANT - 224)))) !== 0) || ((((_la - 256)) & ~0x1f) == 0 && ((1 << (_la - 256)) & ((1 << (PlSqlParser.CONST - 256)) | (1 << (PlSqlParser.CONSTRAINT - 256)) | (1 << (PlSqlParser.CONSTRAINTS - 256)) | (1 << (PlSqlParser.CONSTRUCTOR - 256)) | (1 << (PlSqlParser.CONTAINER - 256)) | (1 << (PlSqlParser.CONTAINER_DATA - 256)) | (1 << (PlSqlParser.CONTAINERS - 256)) | (1 << (PlSqlParser.CONTENT - 256)) | (1 << (PlSqlParser.CONTENTS - 256)) | (1 << (PlSqlParser.CONTEXT - 256)) | (1 << (PlSqlParser.CONTINUE - 256)) | (1 << (PlSqlParser.CONTROLFILE - 256)) | (1 << (PlSqlParser.CON_UID_TO_ID - 256)) | (1 << (PlSqlParser.CONVERT - 256)) | (1 << (PlSqlParser.COOKIE - 256)) | (1 << (PlSqlParser.COPY - 256)) | (1 << (PlSqlParser.CORR_K - 256)) | (1 << (PlSqlParser.CORR_S - 256)) | (1 << (PlSqlParser.CORRUPTION - 256)) | (1 << (PlSqlParser.CORRUPT_XID_ALL - 256)) | (1 << (PlSqlParser.CORRUPT_XID - 256)) | (1 << (PlSqlParser.COS - 256)) | (1 << (PlSqlParser.COSH - 256)) | (1 << (PlSqlParser.COST - 256)) | (1 << (PlSqlParser.COST_XML_QUERY_REWRITE - 256)) | (1 << (PlSqlParser.COUNT - 256)) | (1 << (PlSqlParser.COVAR_POP - 256)) | (1 << (PlSqlParser.COVAR_SAMP - 256)) | (1 << (PlSqlParser.CPU_COSTING - 256)) | (1 << (PlSqlParser.CPU_PER_CALL - 256)) | (1 << (PlSqlParser.CPU_PER_SESSION - 256)) | (1 << (PlSqlParser.CRASH - 256)))) !== 0) || ((((_la - 289)) & ~0x1f) == 0 && ((1 << (_la - 289)) & ((1 << (PlSqlParser.CREATE_FILE_DEST - 289)) | (1 << (PlSqlParser.CREATE_STORED_OUTLINES - 289)) | (1 << (PlSqlParser.CREATION - 289)) | (1 << (PlSqlParser.CREDENTIAL - 289)) | (1 << (PlSqlParser.CRITICAL - 289)) | (1 << (PlSqlParser.CROSS - 289)) | (1 << (PlSqlParser.CROSSEDITION - 289)) | (1 << (PlSqlParser.CSCONVERT - 289)) | (1 << (PlSqlParser.CUBE_AJ - 289)) | (1 << (PlSqlParser.CUBE - 289)) | (1 << (PlSqlParser.CUBE_GB - 289)) | (1 << (PlSqlParser.CUBE_SJ - 289)) | (1 << (PlSqlParser.CUME_DISTM - 289)) | (1 << (PlSqlParser.CURRENT - 289)) | (1 << (PlSqlParser.CURRENT_DATE - 289)) | (1 << (PlSqlParser.CURRENT_SCHEMA - 289)) | (1 << (PlSqlParser.CURRENT_TIME - 289)) | (1 << (PlSqlParser.CURRENT_TIMESTAMP - 289)) | (1 << (PlSqlParser.CURRENT_USER - 289)) | (1 << (PlSqlParser.CURRENTV - 289)) | (1 << (PlSqlParser.CURSOR - 289)) | (1 << (PlSqlParser.CURSOR_SHARING_EXACT - 289)) | (1 << (PlSqlParser.CURSOR_SPECIFIC_SEGMENT - 289)) | (1 << (PlSqlParser.CUSTOMDATUM - 289)) | (1 << (PlSqlParser.CV - 289)) | (1 << (PlSqlParser.CYCLE - 289)) | (1 << (PlSqlParser.DANGLING - 289)) | (1 << (PlSqlParser.DATABASE - 289)) | (1 << (PlSqlParser.DATA - 289)) | (1 << (PlSqlParser.DATAFILE - 289)) | (1 << (PlSqlParser.DATAFILES - 289)))) !== 0) || ((((_la - 321)) & ~0x1f) == 0 && ((1 << (_la - 321)) & ((1 << (PlSqlParser.DATAMOVEMENT - 321)) | (1 << (PlSqlParser.DATAOBJNO - 321)) | (1 << (PlSqlParser.DATAOBJ_TO_MAT_PARTITION - 321)) | (1 << (PlSqlParser.DATAOBJ_TO_PARTITION - 321)) | (1 << (PlSqlParser.DATAPUMP - 321)) | (1 << (PlSqlParser.DATA_SECURITY_REWRITE_LIMIT - 321)) | (1 << (PlSqlParser.DATE_MODE - 321)) | (1 << (PlSqlParser.DAY - 321)) | (1 << (PlSqlParser.DAYS - 321)) | (1 << (PlSqlParser.DBA - 321)) | (1 << (PlSqlParser.DBA_RECYCLEBIN - 321)) | (1 << (PlSqlParser.DBMS_STATS - 321)) | (1 << (PlSqlParser.DB_ROLE_CHANGE - 321)) | (1 << (PlSqlParser.DBTIMEZONE - 321)) | (1 << (PlSqlParser.DB_UNIQUE_NAME - 321)) | (1 << (PlSqlParser.DB_VERSION - 321)) | (1 << (PlSqlParser.DDL - 321)) | (1 << (PlSqlParser.DEALLOCATE - 321)) | (1 << (PlSqlParser.DEBUG - 321)) | (1 << (PlSqlParser.DEBUGGER - 321)) | (1 << (PlSqlParser.DEC - 321)) | (1 << (PlSqlParser.DECIMAL - 321)) | (1 << (PlSqlParser.DECLARE - 321)) | (1 << (PlSqlParser.DECOMPOSE - 321)) | (1 << (PlSqlParser.DECORRELATE - 321)) | (1 << (PlSqlParser.DECR - 321)) | (1 << (PlSqlParser.DECREMENT - 321)) | (1 << (PlSqlParser.DECRYPT - 321)) | (1 << (PlSqlParser.DEDUPLICATE - 321)) | (1 << (PlSqlParser.DEFAULTS - 321)))) !== 0) || ((((_la - 353)) & ~0x1f) == 0 && ((1 << (_la - 353)) & ((1 << (PlSqlParser.DEFERRABLE - 353)) | (1 << (PlSqlParser.DEFERRED - 353)) | (1 << (PlSqlParser.DEFINED - 353)) | (1 << (PlSqlParser.DEFINE - 353)) | (1 << (PlSqlParser.DEFINER - 353)) | (1 << (PlSqlParser.DEGREE - 353)) | (1 << (PlSqlParser.DELAY - 353)) | (1 << (PlSqlParser.DELEGATE - 353)) | (1 << (PlSqlParser.DELETE_ALL - 353)) | (1 << (PlSqlParser.DELETE - 353)) | (1 << (PlSqlParser.DELETEXML - 353)) | (1 << (PlSqlParser.DEMAND - 353)) | (1 << (PlSqlParser.DENSE_RANKM - 353)) | (1 << (PlSqlParser.DEPENDENT - 353)) | (1 << (PlSqlParser.DEPTH - 353)) | (1 << (PlSqlParser.DEQUEUE - 353)) | (1 << (PlSqlParser.DEREF - 353)) | (1 << (PlSqlParser.DEREF_NO_REWRITE - 353)) | (1 << (PlSqlParser.DESTROY - 353)) | (1 << (PlSqlParser.DETACHED - 353)) | (1 << (PlSqlParser.DETERMINES - 353)) | (1 << (PlSqlParser.DETERMINISTIC - 353)) | (1 << (PlSqlParser.DICTIONARY - 353)) | (1 << (PlSqlParser.DIMENSION - 353)) | (1 << (PlSqlParser.DIMENSIONS - 353)) | (1 << (PlSqlParser.DIRECT_LOAD - 353)) | (1 << (PlSqlParser.DIRECTORY - 353)) | (1 << (PlSqlParser.DIRECT_PATH - 353)) | (1 << (PlSqlParser.DISABLE_ALL - 353)) | (1 << (PlSqlParser.DISABLE - 353)) | (1 << (PlSqlParser.DISABLE_PARALLEL_DML - 353)))) !== 0) || ((((_la - 385)) & ~0x1f) == 0 && ((1 << (_la - 385)) & ((1 << (PlSqlParser.DISABLE_PRESET - 385)) | (1 << (PlSqlParser.DISABLE_RPKE - 385)) | (1 << (PlSqlParser.DISALLOW - 385)) | (1 << (PlSqlParser.DISASSOCIATE - 385)) | (1 << (PlSqlParser.DISCARD - 385)) | (1 << (PlSqlParser.DISCONNECT - 385)) | (1 << (PlSqlParser.DISK - 385)) | (1 << (PlSqlParser.DISKGROUP - 385)) | (1 << (PlSqlParser.DISKS - 385)) | (1 << (PlSqlParser.DISMOUNT - 385)) | (1 << (PlSqlParser.DISTINGUISHED - 385)) | (1 << (PlSqlParser.DISTRIBUTED - 385)) | (1 << (PlSqlParser.DISTRIBUTE - 385)) | (1 << (PlSqlParser.DML - 385)) | (1 << (PlSqlParser.DML_UPDATE - 385)) | (1 << (PlSqlParser.DOCFIDELITY - 385)) | (1 << (PlSqlParser.DOCUMENT - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_FILTER - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_NO_SORT - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_SORT - 385)) | (1 << (PlSqlParser.DOUBLE - 385)) | (1 << (PlSqlParser.DOWNGRADE - 385)) | (1 << (PlSqlParser.DRIVING_SITE - 385)) | (1 << (PlSqlParser.DROP_COLUMN - 385)) | (1 << (PlSqlParser.DROP_GROUP - 385)) | (1 << (PlSqlParser.DSINTERVAL_UNCONSTRAINED - 385)) | (1 << (PlSqlParser.DST_UPGRADE_INSERT_CONV - 385)) | (1 << (PlSqlParser.DUMP - 385)))) !== 0) || ((((_la - 417)) & ~0x1f) == 0 && ((1 << (_la - 417)) & ((1 << (PlSqlParser.DUPLICATE - 417)) | (1 << (PlSqlParser.DV - 417)) | (1 << (PlSqlParser.DYNAMIC - 417)) | (1 << (PlSqlParser.DYNAMIC_SAMPLING - 417)) | (1 << (PlSqlParser.DYNAMIC_SAMPLING_EST_CDN - 417)) | (1 << (PlSqlParser.EACH - 417)) | (1 << (PlSqlParser.EDITIONABLE - 417)) | (1 << (PlSqlParser.EDITION - 417)) | (1 << (PlSqlParser.EDITIONING - 417)) | (1 << (PlSqlParser.EDITIONS - 417)) | (1 << (PlSqlParser.ELEMENT - 417)) | (1 << (PlSqlParser.ELIM_GROUPBY - 417)) | (1 << (PlSqlParser.ELIMINATE_JOIN - 417)) | (1 << (PlSqlParser.ELIMINATE_OBY - 417)) | (1 << (PlSqlParser.ELIMINATE_OUTER_JOIN - 417)) | (1 << (PlSqlParser.EM - 417)) | (1 << (PlSqlParser.EMPTY_BLOB - 417)) | (1 << (PlSqlParser.EMPTY_CLOB - 417)) | (1 << (PlSqlParser.EMPTY - 417)) | (1 << (PlSqlParser.ENABLE_ALL - 417)) | (1 << (PlSqlParser.ENABLE - 417)) | (1 << (PlSqlParser.ENABLE_PARALLEL_DML - 417)) | (1 << (PlSqlParser.ENABLE_PRESET - 417)) | (1 << (PlSqlParser.ENCODING - 417)) | (1 << (PlSqlParser.ENCRYPT - 417)) | (1 << (PlSqlParser.ENCRYPTION - 417)) | (1 << (PlSqlParser.END_OUTLINE_DATA - 417)) | (1 << (PlSqlParser.ENFORCED - 417)) | (1 << (PlSqlParser.ENFORCE - 417)))) !== 0) || ((((_la - 449)) & ~0x1f) == 0 && ((1 << (_la - 449)) & ((1 << (PlSqlParser.ENQUEUE - 449)) | (1 << (PlSqlParser.ENTERPRISE - 449)) | (1 << (PlSqlParser.ENTITYESCAPING - 449)) | (1 << (PlSqlParser.ENTRY - 449)) | (1 << (PlSqlParser.EQUIPART - 449)) | (1 << (PlSqlParser.ERR - 449)) | (1 << (PlSqlParser.ERROR_ARGUMENT - 449)) | (1 << (PlSqlParser.ERROR - 449)) | (1 << (PlSqlParser.ERROR_ON_OVERLAP_TIME - 449)) | (1 << (PlSqlParser.ERRORS - 449)) | (1 << (PlSqlParser.ESCAPE - 449)) | (1 << (PlSqlParser.ESTIMATE - 449)) | (1 << (PlSqlParser.EVAL - 449)) | (1 << (PlSqlParser.EVALNAME - 449)) | (1 << (PlSqlParser.EVALUATE - 449)) | (1 << (PlSqlParser.EVALUATION - 449)) | (1 << (PlSqlParser.EVENTS - 449)) | (1 << (PlSqlParser.EVERY - 449)) | (1 << (PlSqlParser.EXCEPT - 449)) | (1 << (PlSqlParser.EXCEPTION - 449)) | (1 << (PlSqlParser.EXCEPTION_INIT - 449)) | (1 << (PlSqlParser.EXCEPTIONS - 449)) | (1 << (PlSqlParser.EXCHANGE - 449)) | (1 << (PlSqlParser.EXCLUDE - 449)) | (1 << (PlSqlParser.EXCLUDING - 449)) | (1 << (PlSqlParser.EXECUTE - 449)) | (1 << (PlSqlParser.EXEMPT - 449)) | (1 << (PlSqlParser.EXISTING - 449)) | (1 << (PlSqlParser.EXISTS - 449)) | (1 << (PlSqlParser.EXISTSNODE - 449)) | (1 << (PlSqlParser.EXIT - 449)))) !== 0) || ((((_la - 481)) & ~0x1f) == 0 && ((1 << (_la - 481)) & ((1 << (PlSqlParser.EXPAND_GSET_TO_UNION - 481)) | (1 << (PlSqlParser.EXPAND_TABLE - 481)) | (1 << (PlSqlParser.EXP - 481)) | (1 << (PlSqlParser.EXPIRE - 481)) | (1 << (PlSqlParser.EXPLAIN - 481)) | (1 << (PlSqlParser.EXPLOSION - 481)) | (1 << (PlSqlParser.EXPORT - 481)) | (1 << (PlSqlParser.EXPR_CORR_CHECK - 481)) | (1 << (PlSqlParser.EXPRESS - 481)) | (1 << (PlSqlParser.EXTENDS - 481)) | (1 << (PlSqlParser.EXTENT - 481)) | (1 << (PlSqlParser.EXTENTS - 481)) | (1 << (PlSqlParser.EXTERNAL - 481)) | (1 << (PlSqlParser.EXTERNALLY - 481)) | (1 << (PlSqlParser.EXTRACTCLOBXML - 481)) | (1 << (PlSqlParser.EXTRACT - 481)) | (1 << (PlSqlParser.EXTRACTVALUE - 481)) | (1 << (PlSqlParser.EXTRA - 481)) | (1 << (PlSqlParser.FACILITY - 481)) | (1 << (PlSqlParser.FACT - 481)) | (1 << (PlSqlParser.FACTOR - 481)) | (1 << (PlSqlParser.FACTORIZE_JOIN - 481)) | (1 << (PlSqlParser.FAILED - 481)) | (1 << (PlSqlParser.FAILED_LOGIN_ATTEMPTS - 481)) | (1 << (PlSqlParser.FAILGROUP - 481)) | (1 << (PlSqlParser.FAILOVER - 481)) | (1 << (PlSqlParser.FAILURE - 481)) | (1 << (PlSqlParser.FALSE - 481)) | (1 << (PlSqlParser.FAMILY - 481)) | (1 << (PlSqlParser.FAR - 481)) | (1 << (PlSqlParser.FAST - 481)) | (1 << (PlSqlParser.FASTSTART - 481)))) !== 0) || ((((_la - 513)) & ~0x1f) == 0 && ((1 << (_la - 513)) & ((1 << (PlSqlParser.FBTSCAN - 513)) | (1 << (PlSqlParser.FEATURE_DETAILS - 513)) | (1 << (PlSqlParser.FEATURE_ID - 513)) | (1 << (PlSqlParser.FEATURE_SET - 513)) | (1 << (PlSqlParser.FEATURE_VALUE - 513)) | (1 << (PlSqlParser.FETCH - 513)) | (1 << (PlSqlParser.FILE - 513)) | (1 << (PlSqlParser.FILE_NAME_CONVERT - 513)) | (1 << (PlSqlParser.FILESYSTEM_LIKE_LOGGING - 513)) | (1 << (PlSqlParser.FILTER - 513)) | (1 << (PlSqlParser.FINAL - 513)) | (1 << (PlSqlParser.FINE - 513)) | (1 << (PlSqlParser.FINISH - 513)) | (1 << (PlSqlParser.FIRST - 513)) | (1 << (PlSqlParser.FIRSTM - 513)) | (1 << (PlSqlParser.FIRST_ROWS - 513)) | (1 << (PlSqlParser.FIRST_VALUE - 513)) | (1 << (PlSqlParser.FIXED_VIEW_DATA - 513)) | (1 << (PlSqlParser.FLAGGER - 513)) | (1 << (PlSqlParser.FLASHBACK - 513)) | (1 << (PlSqlParser.FLASH_CACHE - 513)) | (1 << (PlSqlParser.FLOAT - 513)) | (1 << (PlSqlParser.FLOB - 513)) | (1 << (PlSqlParser.FLOOR - 513)) | (1 << (PlSqlParser.FLUSH - 513)) | (1 << (PlSqlParser.FOLDER - 513)) | (1 << (PlSqlParser.FOLLOWING - 513)) | (1 << (PlSqlParser.FOLLOWS - 513)) | (1 << (PlSqlParser.FORALL - 513)) | (1 << (PlSqlParser.FORCE - 513)) | (1 << (PlSqlParser.FORCE_XML_QUERY_REWRITE - 513)) | (1 << (PlSqlParser.FOREIGN - 513)))) !== 0) || ((((_la - 545)) & ~0x1f) == 0 && ((1 << (_la - 545)) & ((1 << (PlSqlParser.FOREVER - 545)) | (1 << (PlSqlParser.FORMAT - 545)) | (1 << (PlSqlParser.FORWARD - 545)) | (1 << (PlSqlParser.FRAGMENT_NUMBER - 545)) | (1 << (PlSqlParser.FREELIST - 545)) | (1 << (PlSqlParser.FREELISTS - 545)) | (1 << (PlSqlParser.FREEPOOLS - 545)) | (1 << (PlSqlParser.FRESH - 545)) | (1 << (PlSqlParser.FROM_TZ - 545)) | (1 << (PlSqlParser.FULL - 545)) | (1 << (PlSqlParser.FULL_OUTER_JOIN_TO_OUTER - 545)) | (1 << (PlSqlParser.FUNCTION - 545)) | (1 << (PlSqlParser.FUNCTIONS - 545)) | (1 << (PlSqlParser.GATHER_OPTIMIZER_STATISTICS - 545)) | (1 << (PlSqlParser.GATHER_PLAN_STATISTICS - 545)) | (1 << (PlSqlParser.GBY_CONC_ROLLUP - 545)) | (1 << (PlSqlParser.GBY_PUSHDOWN - 545)) | (1 << (PlSqlParser.GENERATED - 545)) | (1 << (PlSqlParser.GET - 545)) | (1 << (PlSqlParser.GLOBAL - 545)) | (1 << (PlSqlParser.GLOBALLY - 545)) | (1 << (PlSqlParser.GLOBAL_NAME - 545)) | (1 << (PlSqlParser.GLOBAL_TOPIC_ENABLED - 545)) | (1 << (PlSqlParser.GROUP_BY - 545)) | (1 << (PlSqlParser.GROUP_ID - 545)) | (1 << (PlSqlParser.GROUPING - 545)) | (1 << (PlSqlParser.GROUPING_ID - 545)))) !== 0) || ((((_la - 577)) & ~0x1f) == 0 && ((1 << (_la - 577)) & ((1 << (PlSqlParser.GROUPS - 577)) | (1 << (PlSqlParser.GUARANTEED - 577)) | (1 << (PlSqlParser.GUARANTEE - 577)) | (1 << (PlSqlParser.GUARD - 577)) | (1 << (PlSqlParser.HASH_AJ - 577)) | (1 << (PlSqlParser.HASH - 577)) | (1 << (PlSqlParser.HASHKEYS - 577)) | (1 << (PlSqlParser.HASH_SJ - 577)) | (1 << (PlSqlParser.HEADER - 577)) | (1 << (PlSqlParser.HEAP - 577)) | (1 << (PlSqlParser.HELP - 577)) | (1 << (PlSqlParser.HEXTORAW - 577)) | (1 << (PlSqlParser.HEXTOREF - 577)) | (1 << (PlSqlParser.HIDDEN_KEYWORD - 577)) | (1 << (PlSqlParser.HIDE - 577)) | (1 << (PlSqlParser.HIERARCHY - 577)) | (1 << (PlSqlParser.HIGH - 577)) | (1 << (PlSqlParser.HINTSET_BEGIN - 577)) | (1 << (PlSqlParser.HINTSET_END - 577)) | (1 << (PlSqlParser.HOT - 577)) | (1 << (PlSqlParser.HOUR - 577)) | (1 << (PlSqlParser.HWM_BROKERED - 577)) | (1 << (PlSqlParser.HYBRID - 577)) | (1 << (PlSqlParser.IDENTIFIER - 577)) | (1 << (PlSqlParser.IDENTITY - 577)) | (1 << (PlSqlParser.IDGENERATORS - 577)) | (1 << (PlSqlParser.ID - 577)) | (1 << (PlSqlParser.IDLE_TIME - 577)) | (1 << (PlSqlParser.IF - 577)) | (1 << (PlSqlParser.IGNORE - 577)))) !== 0) || ((((_la - 609)) & ~0x1f) == 0 && ((1 << (_la - 609)) & ((1 << (PlSqlParser.IGNORE_OPTIM_EMBEDDED_HINTS - 609)) | (1 << (PlSqlParser.IGNORE_ROW_ON_DUPKEY_INDEX - 609)) | (1 << (PlSqlParser.IGNORE_WHERE_CLAUSE - 609)) | (1 << (PlSqlParser.ILM - 609)) | (1 << (PlSqlParser.IMMEDIATE - 609)) | (1 << (PlSqlParser.IMPACT - 609)) | (1 << (PlSqlParser.IMPORT - 609)) | (1 << (PlSqlParser.INACTIVE - 609)) | (1 << (PlSqlParser.INCLUDE - 609)) | (1 << (PlSqlParser.INCLUDE_VERSION - 609)) | (1 << (PlSqlParser.INCLUDING - 609)) | (1 << (PlSqlParser.INCREMENTAL - 609)) | (1 << (PlSqlParser.INCREMENT - 609)) | (1 << (PlSqlParser.INCR - 609)) | (1 << (PlSqlParser.INDENT - 609)) | (1 << (PlSqlParser.INDEX_ASC - 609)) | (1 << (PlSqlParser.INDEX_COMBINE - 609)) | (1 << (PlSqlParser.INDEX_DESC - 609)) | (1 << (PlSqlParser.INDEXED - 609)) | (1 << (PlSqlParser.INDEXES - 609)) | (1 << (PlSqlParser.INDEX_FFS - 609)) | (1 << (PlSqlParser.INDEX_FILTER - 609)) | (1 << (PlSqlParser.INDEXING - 609)) | (1 << (PlSqlParser.INDEX_JOIN - 609)) | (1 << (PlSqlParser.INDEX_ROWS - 609)) | (1 << (PlSqlParser.INDEX_RRS - 609)) | (1 << (PlSqlParser.INDEX_RS_ASC - 609)) | (1 << (PlSqlParser.INDEX_RS_DESC - 609)) | (1 << (PlSqlParser.INDEX_RS - 609)) | (1 << (PlSqlParser.INDEX_SCAN - 609)) | (1 << (PlSqlParser.INDEX_SKIP_SCAN - 609)))) !== 0) || ((((_la - 641)) & ~0x1f) == 0 && ((1 << (_la - 641)) & ((1 << (PlSqlParser.INDEX_SS_ASC - 641)) | (1 << (PlSqlParser.INDEX_SS_DESC - 641)) | (1 << (PlSqlParser.INDEX_SS - 641)) | (1 << (PlSqlParser.INDEX_STATS - 641)) | (1 << (PlSqlParser.INDEXTYPE - 641)) | (1 << (PlSqlParser.INDEXTYPES - 641)) | (1 << (PlSqlParser.INDICATOR - 641)) | (1 << (PlSqlParser.INDICES - 641)) | (1 << (PlSqlParser.INFINITE - 641)) | (1 << (PlSqlParser.INFORMATIONAL - 641)) | (1 << (PlSqlParser.INHERIT - 641)) | (1 << (PlSqlParser.INITCAP - 641)) | (1 << (PlSqlParser.INITIAL - 641)) | (1 << (PlSqlParser.INITIALIZED - 641)) | (1 << (PlSqlParser.INITIALLY - 641)) | (1 << (PlSqlParser.INITRANS - 641)) | (1 << (PlSqlParser.INLINE - 641)) | (1 << (PlSqlParser.INLINE_XMLTYPE_NT - 641)) | (1 << (PlSqlParser.INMEMORY - 641)) | (1 << (PlSqlParser.IN_MEMORY_METADATA - 641)) | (1 << (PlSqlParser.INMEMORY_PRUNING - 641)) | (1 << (PlSqlParser.INNER - 641)) | (1 << (PlSqlParser.INOUT - 641)) | (1 << (PlSqlParser.INPLACE - 641)) | (1 << (PlSqlParser.INSERTCHILDXMLAFTER - 641)) | (1 << (PlSqlParser.INSERTCHILDXMLBEFORE - 641)) | (1 << (PlSqlParser.INSERTCHILDXML - 641)) | (1 << (PlSqlParser.INSERTXMLAFTER - 641)) | (1 << (PlSqlParser.INSERTXMLBEFORE - 641)) | (1 << (PlSqlParser.INSTANCE - 641)))) !== 0) || ((((_la - 673)) & ~0x1f) == 0 && ((1 << (_la - 673)) & ((1 << (PlSqlParser.INSTANCES - 673)) | (1 << (PlSqlParser.INSTANTIABLE - 673)) | (1 << (PlSqlParser.INSTANTLY - 673)) | (1 << (PlSqlParser.INSTEAD - 673)) | (1 << (PlSqlParser.INSTR2 - 673)) | (1 << (PlSqlParser.INSTR4 - 673)) | (1 << (PlSqlParser.INSTRB - 673)) | (1 << (PlSqlParser.INSTRC - 673)) | (1 << (PlSqlParser.INSTR - 673)) | (1 << (PlSqlParser.INTEGER - 673)) | (1 << (PlSqlParser.INTERLEAVED - 673)) | (1 << (PlSqlParser.INTERMEDIATE - 673)) | (1 << (PlSqlParser.INTERNAL_CONVERT - 673)) | (1 << (PlSqlParser.INTERNAL_USE - 673)) | (1 << (PlSqlParser.INTERPRETED - 673)) | (1 << (PlSqlParser.INTERVAL - 673)) | (1 << (PlSqlParser.INT - 673)) | (1 << (PlSqlParser.INVALIDATE - 673)) | (1 << (PlSqlParser.INVISIBLE - 673)) | (1 << (PlSqlParser.IN_XQUERY - 673)) | (1 << (PlSqlParser.ISOLATION - 673)) | (1 << (PlSqlParser.ISOLATION_LEVEL - 673)) | (1 << (PlSqlParser.ITERATE - 673)) | (1 << (PlSqlParser.ITERATION_NUMBER - 673)) | (1 << (PlSqlParser.JAVA - 673)) | (1 << (PlSqlParser.JOB - 673)) | (1 << (PlSqlParser.JOIN - 673)) | (1 << (PlSqlParser.JSON_ARRAYAGG - 673)) | (1 << (PlSqlParser.JSON_ARRAY - 673)))) !== 0) || ((((_la - 705)) & ~0x1f) == 0 && ((1 << (_la - 705)) & ((1 << (PlSqlParser.JSON_EQUAL - 705)) | (1 << (PlSqlParser.JSON_EXISTS2 - 705)) | (1 << (PlSqlParser.JSON_EXISTS - 705)) | (1 << (PlSqlParser.JSONGET - 705)) | (1 << (PlSqlParser.JSON - 705)) | (1 << (PlSqlParser.JSON_OBJECTAGG - 705)) | (1 << (PlSqlParser.JSON_OBJECT - 705)) | (1 << (PlSqlParser.JSONPARSE - 705)) | (1 << (PlSqlParser.JSON_QUERY - 705)) | (1 << (PlSqlParser.JSON_SERIALIZE - 705)) | (1 << (PlSqlParser.JSON_TABLE - 705)) | (1 << (PlSqlParser.JSON_TEXTCONTAINS2 - 705)) | (1 << (PlSqlParser.JSON_TEXTCONTAINS - 705)) | (1 << (PlSqlParser.JSON_VALUE - 705)) | (1 << (PlSqlParser.KEEP_DUPLICATES - 705)) | (1 << (PlSqlParser.KEEP - 705)) | (1 << (PlSqlParser.KERBEROS - 705)) | (1 << (PlSqlParser.KEY - 705)) | (1 << (PlSqlParser.KEY_LENGTH - 705)) | (1 << (PlSqlParser.KEYSIZE - 705)) | (1 << (PlSqlParser.KEYS - 705)) | (1 << (PlSqlParser.KEYSTORE - 705)) | (1 << (PlSqlParser.KILL - 705)) | (1 << (PlSqlParser.LABEL - 705)) | (1 << (PlSqlParser.LANGUAGE - 705)) | (1 << (PlSqlParser.LAST_DAY - 705)) | (1 << (PlSqlParser.LAST - 705)) | (1 << (PlSqlParser.LAST_VALUE - 705)) | (1 << (PlSqlParser.LATERAL - 705)) | (1 << (PlSqlParser.LAX - 705)) | (1 << (PlSqlParser.LAYER - 705)) | (1 << (PlSqlParser.LDAP_REGISTRATION_ENABLED - 705)))) !== 0) || ((((_la - 737)) & ~0x1f) == 0 && ((1 << (_la - 737)) & ((1 << (PlSqlParser.LDAP_REGISTRATION - 737)) | (1 << (PlSqlParser.LDAP_REG_SYNC_INTERVAL - 737)) | (1 << (PlSqlParser.LEADING - 737)) | (1 << (PlSqlParser.LEFT - 737)) | (1 << (PlSqlParser.LENGTH2 - 737)) | (1 << (PlSqlParser.LENGTH4 - 737)) | (1 << (PlSqlParser.LENGTHB - 737)) | (1 << (PlSqlParser.LENGTHC - 737)) | (1 << (PlSqlParser.LENGTH - 737)) | (1 << (PlSqlParser.LESS - 737)) | (1 << (PlSqlParser.LEVEL - 737)) | (1 << (PlSqlParser.LEVELS - 737)) | (1 << (PlSqlParser.LIBRARY - 737)) | (1 << (PlSqlParser.LIFECYCLE - 737)) | (1 << (PlSqlParser.LIFE - 737)) | (1 << (PlSqlParser.LIFETIME - 737)) | (1 << (PlSqlParser.LIKE2 - 737)) | (1 << (PlSqlParser.LIKE4 - 737)) | (1 << (PlSqlParser.LIKEC - 737)) | (1 << (PlSqlParser.LIKE_EXPAND - 737)) | (1 << (PlSqlParser.LIMIT - 737)) | (1 << (PlSqlParser.LINEAR - 737)) | (1 << (PlSqlParser.LINK - 737)) | (1 << (PlSqlParser.LIST - 737)) | (1 << (PlSqlParser.LN - 737)) | (1 << (PlSqlParser.LNNVL - 737)) | (1 << (PlSqlParser.LOAD - 737)) | (1 << (PlSqlParser.LOB - 737)) | (1 << (PlSqlParser.LOBNVL - 737)) | (1 << (PlSqlParser.LOBS - 737)) | (1 << (PlSqlParser.LOCAL_INDEXES - 737)))) !== 0) || ((((_la - 769)) & ~0x1f) == 0 && ((1 << (_la - 769)) & ((1 << (PlSqlParser.LOCAL - 769)) | (1 << (PlSqlParser.LOCALTIME - 769)) | (1 << (PlSqlParser.LOCALTIMESTAMP - 769)) | (1 << (PlSqlParser.LOCATION - 769)) | (1 << (PlSqlParser.LOCATOR - 769)) | (1 << (PlSqlParser.LOCKED - 769)) | (1 << (PlSqlParser.LOCKING - 769)) | (1 << (PlSqlParser.LOGFILE - 769)) | (1 << (PlSqlParser.LOGFILES - 769)) | (1 << (PlSqlParser.LOGGING - 769)) | (1 << (PlSqlParser.LOGICAL - 769)) | (1 << (PlSqlParser.LOGICAL_READS_PER_CALL - 769)) | (1 << (PlSqlParser.LOGICAL_READS_PER_SESSION - 769)) | (1 << (PlSqlParser.LOG - 769)) | (1 << (PlSqlParser.LOGMINING - 769)) | (1 << (PlSqlParser.LOGOFF - 769)) | (1 << (PlSqlParser.LOGON - 769)) | (1 << (PlSqlParser.LOG_READ_ONLY_VIOLATIONS - 769)) | (1 << (PlSqlParser.LONG - 769)) | (1 << (PlSqlParser.LOOP - 769)) | (1 << (PlSqlParser.LOWER - 769)) | (1 << (PlSqlParser.LOW - 769)) | (1 << (PlSqlParser.LPAD - 769)) | (1 << (PlSqlParser.LTRIM - 769)) | (1 << (PlSqlParser.MAIN - 769)) | (1 << (PlSqlParser.MAKE_REF - 769)) | (1 << (PlSqlParser.MANAGED - 769)) | (1 << (PlSqlParser.MANAGE - 769)) | (1 << (PlSqlParser.MANAGEMENT - 769)) | (1 << (PlSqlParser.MANAGER - 769)) | (1 << (PlSqlParser.MANUAL - 769)))) !== 0) || ((((_la - 801)) & ~0x1f) == 0 && ((1 << (_la - 801)) & ((1 << (PlSqlParser.MAP - 801)) | (1 << (PlSqlParser.MAPPING - 801)) | (1 << (PlSqlParser.MASTER - 801)) | (1 << (PlSqlParser.MATCHED - 801)) | (1 << (PlSqlParser.MATCHES - 801)) | (1 << (PlSqlParser.MATCH - 801)) | (1 << (PlSqlParser.MATCH_NUMBER - 801)) | (1 << (PlSqlParser.MATCH_RECOGNIZE - 801)) | (1 << (PlSqlParser.MATERIALIZED - 801)) | (1 << (PlSqlParser.MATERIALIZE - 801)) | (1 << (PlSqlParser.MAXARCHLOGS - 801)) | (1 << (PlSqlParser.MAXDATAFILES - 801)) | (1 << (PlSqlParser.MAXEXTENTS - 801)) | (1 << (PlSqlParser.MAXIMIZE - 801)) | (1 << (PlSqlParser.MAXINSTANCES - 801)) | (1 << (PlSqlParser.MAXLOGFILES - 801)) | (1 << (PlSqlParser.MAXLOGHISTORY - 801)) | (1 << (PlSqlParser.MAXLOGMEMBERS - 801)) | (1 << (PlSqlParser.MAX_SHARED_TEMP_SIZE - 801)) | (1 << (PlSqlParser.MAXSIZE - 801)) | (1 << (PlSqlParser.MAXTRANS - 801)) | (1 << (PlSqlParser.MAXVALUE - 801)) | (1 << (PlSqlParser.MEASURE - 801)) | (1 << (PlSqlParser.MEASURES - 801)) | (1 << (PlSqlParser.MEDIUM - 801)) | (1 << (PlSqlParser.MEMBER - 801)) | (1 << (PlSqlParser.MEMCOMPRESS - 801)) | (1 << (PlSqlParser.MEMORY - 801)) | (1 << (PlSqlParser.MERGEACTIONS - 801)) | (1 << (PlSqlParser.MERGE_AJ - 801)) | (1 << (PlSqlParser.MERGE_CONST_ON - 801)) | (1 << (PlSqlParser.MERGE - 801)))) !== 0) || ((((_la - 833)) & ~0x1f) == 0 && ((1 << (_la - 833)) & ((1 << (PlSqlParser.MERGE_SJ - 833)) | (1 << (PlSqlParser.METADATA - 833)) | (1 << (PlSqlParser.METHOD - 833)) | (1 << (PlSqlParser.MIGRATE - 833)) | (1 << (PlSqlParser.MIGRATION - 833)) | (1 << (PlSqlParser.MINEXTENTS - 833)) | (1 << (PlSqlParser.MINIMIZE - 833)) | (1 << (PlSqlParser.MINIMUM - 833)) | (1 << (PlSqlParser.MINING - 833)) | (1 << (PlSqlParser.MINUS_NULL - 833)) | (1 << (PlSqlParser.MINUTE - 833)) | (1 << (PlSqlParser.MINVALUE - 833)) | (1 << (PlSqlParser.MIRRORCOLD - 833)) | (1 << (PlSqlParser.MIRRORHOT - 833)) | (1 << (PlSqlParser.MIRROR - 833)) | (1 << (PlSqlParser.MLSLABEL - 833)) | (1 << (PlSqlParser.MODEL_COMPILE_SUBQUERY - 833)) | (1 << (PlSqlParser.MODEL_DONTVERIFY_UNIQUENESS - 833)) | (1 << (PlSqlParser.MODEL_DYNAMIC_SUBQUERY - 833)) | (1 << (PlSqlParser.MODEL_MIN_ANALYSIS - 833)) | (1 << (PlSqlParser.MODEL - 833)) | (1 << (PlSqlParser.MODEL_NB - 833)) | (1 << (PlSqlParser.MODEL_NO_ANALYSIS - 833)) | (1 << (PlSqlParser.MODEL_PBY - 833)) | (1 << (PlSqlParser.MODEL_PUSH_REF - 833)) | (1 << (PlSqlParser.MODEL_SV - 833)) | (1 << (PlSqlParser.MODIFICATION - 833)) | (1 << (PlSqlParser.MODIFY_COLUMN_TYPE - 833)) | (1 << (PlSqlParser.MODIFY - 833)) | (1 << (PlSqlParser.MOD - 833)))) !== 0) || ((((_la - 865)) & ~0x1f) == 0 && ((1 << (_la - 865)) & ((1 << (PlSqlParser.MODULE - 865)) | (1 << (PlSqlParser.MONITORING - 865)) | (1 << (PlSqlParser.MONITOR - 865)) | (1 << (PlSqlParser.MONTH - 865)) | (1 << (PlSqlParser.MONTHS_BETWEEN - 865)) | (1 << (PlSqlParser.MONTHS - 865)) | (1 << (PlSqlParser.MOUNT - 865)) | (1 << (PlSqlParser.MOUNTPATH - 865)) | (1 << (PlSqlParser.MOVEMENT - 865)) | (1 << (PlSqlParser.MOVE - 865)) | (1 << (PlSqlParser.MULTIDIMENSIONAL - 865)) | (1 << (PlSqlParser.MULTISET - 865)) | (1 << (PlSqlParser.MV_MERGE - 865)) | (1 << (PlSqlParser.NAMED - 865)) | (1 << (PlSqlParser.NAME - 865)) | (1 << (PlSqlParser.NAMESPACE - 865)) | (1 << (PlSqlParser.NAN - 865)) | (1 << (PlSqlParser.NANVL - 865)) | (1 << (PlSqlParser.NATIONAL - 865)) | (1 << (PlSqlParser.NATIVE_FULL_OUTER_JOIN - 865)) | (1 << (PlSqlParser.NATIVE - 865)) | (1 << (PlSqlParser.NATURAL - 865)) | (1 << (PlSqlParser.NAV - 865)) | (1 << (PlSqlParser.NCHAR_CS - 865)) | (1 << (PlSqlParser.NCHAR - 865)) | (1 << (PlSqlParser.NCHR - 865)) | (1 << (PlSqlParser.NCLOB - 865)) | (1 << (PlSqlParser.NEEDED - 865)) | (1 << (PlSqlParser.NEG - 865)) | (1 << (PlSqlParser.NESTED - 865)) | (1 << (PlSqlParser.NESTED_TABLE_FAST_INSERT - 865)))) !== 0) || ((((_la - 897)) & ~0x1f) == 0 && ((1 << (_la - 897)) & ((1 << (PlSqlParser.NESTED_TABLE_GET_REFS - 897)) | (1 << (PlSqlParser.NESTED_TABLE_ID - 897)) | (1 << (PlSqlParser.NESTED_TABLE_SET_REFS - 897)) | (1 << (PlSqlParser.NESTED_TABLE_SET_SETID - 897)) | (1 << (PlSqlParser.NETWORK - 897)) | (1 << (PlSqlParser.NEVER - 897)) | (1 << (PlSqlParser.NEW - 897)) | (1 << (PlSqlParser.NEW_TIME - 897)) | (1 << (PlSqlParser.NEXT_DAY - 897)) | (1 << (PlSqlParser.NEXT - 897)) | (1 << (PlSqlParser.NL_AJ - 897)) | (1 << (PlSqlParser.NLJ_BATCHING - 897)) | (1 << (PlSqlParser.NLJ_INDEX_FILTER - 897)) | (1 << (PlSqlParser.NLJ_INDEX_SCAN - 897)) | (1 << (PlSqlParser.NLJ_PREFETCH - 897)) | (1 << (PlSqlParser.NLS_CALENDAR - 897)) | (1 << (PlSqlParser.NLS_CHARACTERSET - 897)) | (1 << (PlSqlParser.NLS_CHARSET_DECL_LEN - 897)) | (1 << (PlSqlParser.NLS_CHARSET_ID - 897)) | (1 << (PlSqlParser.NLS_CHARSET_NAME - 897)) | (1 << (PlSqlParser.NLS_COMP - 897)) | (1 << (PlSqlParser.NLS_CURRENCY - 897)) | (1 << (PlSqlParser.NLS_DATE_FORMAT - 897)) | (1 << (PlSqlParser.NLS_DATE_LANGUAGE - 897)) | (1 << (PlSqlParser.NLS_INITCAP - 897)) | (1 << (PlSqlParser.NLS_ISO_CURRENCY - 897)) | (1 << (PlSqlParser.NL_SJ - 897)) | (1 << (PlSqlParser.NLS_LANG - 897)) | (1 << (PlSqlParser.NLS_LANGUAGE - 897)) | (1 << (PlSqlParser.NLS_LENGTH_SEMANTICS - 897)) | (1 << (PlSqlParser.NLS_LOWER - 897)) | (1 << (PlSqlParser.NLS_NCHAR_CONV_EXCP - 897)))) !== 0) || ((((_la - 929)) & ~0x1f) == 0 && ((1 << (_la - 929)) & ((1 << (PlSqlParser.NLS_NUMERIC_CHARACTERS - 929)) | (1 << (PlSqlParser.NLS_SORT - 929)) | (1 << (PlSqlParser.NLSSORT - 929)) | (1 << (PlSqlParser.NLS_SPECIAL_CHARS - 929)) | (1 << (PlSqlParser.NLS_TERRITORY - 929)) | (1 << (PlSqlParser.NLS_UPPER - 929)) | (1 << (PlSqlParser.NO_ACCESS - 929)) | (1 << (PlSqlParser.NO_ADAPTIVE_PLAN - 929)) | (1 << (PlSqlParser.NO_ANSI_REARCH - 929)) | (1 << (PlSqlParser.NOAPPEND - 929)) | (1 << (PlSqlParser.NOARCHIVELOG - 929)) | (1 << (PlSqlParser.NOAUDIT - 929)) | (1 << (PlSqlParser.NO_AUTO_REOPTIMIZE - 929)) | (1 << (PlSqlParser.NO_BASETABLE_MULTIMV_REWRITE - 929)) | (1 << (PlSqlParser.NO_BATCH_TABLE_ACCESS_BY_ROWID - 929)) | (1 << (PlSqlParser.NO_BIND_AWARE - 929)) | (1 << (PlSqlParser.NO_BUFFER - 929)) | (1 << (PlSqlParser.NOCACHE - 929)) | (1 << (PlSqlParser.NO_CARTESIAN - 929)) | (1 << (PlSqlParser.NO_CHECK_ACL_REWRITE - 929)) | (1 << (PlSqlParser.NO_CLUSTER_BY_ROWID - 929)) | (1 << (PlSqlParser.NO_CLUSTERING - 929)) | (1 << (PlSqlParser.NO_COALESCE_SQ - 929)) | (1 << (PlSqlParser.NO_COMMON_DATA - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_CB_WHR_ONLY - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_COMBINE_SW - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_COST_BASED - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_ELIM_DUPS - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_FILTERING - 929)) | (1 << (PlSqlParser.NOCOPY - 929)) | (1 << (PlSqlParser.NO_COST_XML_QUERY_REWRITE - 929)))) !== 0) || ((((_la - 961)) & ~0x1f) == 0 && ((1 << (_la - 961)) & ((1 << (PlSqlParser.NO_CPU_COSTING - 961)) | (1 << (PlSqlParser.NOCPU_COSTING - 961)) | (1 << (PlSqlParser.NOCYCLE - 961)) | (1 << (PlSqlParser.NO_DATA_SECURITY_REWRITE - 961)) | (1 << (PlSqlParser.NO_DECORRELATE - 961)) | (1 << (PlSqlParser.NODELAY - 961)) | (1 << (PlSqlParser.NO_DOMAIN_INDEX_FILTER - 961)) | (1 << (PlSqlParser.NO_DST_UPGRADE_INSERT_CONV - 961)) | (1 << (PlSqlParser.NO_ELIM_GROUPBY - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_JOIN - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_OBY - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_OUTER_JOIN - 961)) | (1 << (PlSqlParser.NOENTITYESCAPING - 961)) | (1 << (PlSqlParser.NO_EXPAND_GSET_TO_UNION - 961)) | (1 << (PlSqlParser.NO_EXPAND - 961)) | (1 << (PlSqlParser.NO_EXPAND_TABLE - 961)) | (1 << (PlSqlParser.NO_FACT - 961)) | (1 << (PlSqlParser.NO_FACTORIZE_JOIN - 961)) | (1 << (PlSqlParser.NO_FILTERING - 961)) | (1 << (PlSqlParser.NOFORCE - 961)) | (1 << (PlSqlParser.NO_FULL_OUTER_JOIN_TO_OUTER - 961)) | (1 << (PlSqlParser.NO_GATHER_OPTIMIZER_STATISTICS - 961)) | (1 << (PlSqlParser.NO_GBY_PUSHDOWN - 961)) | (1 << (PlSqlParser.NOGUARANTEE - 961)) | (1 << (PlSqlParser.NO_INDEX_FFS - 961)) | (1 << (PlSqlParser.NO_INDEX - 961)) | (1 << (PlSqlParser.NO_INDEX_SS - 961)) | (1 << (PlSqlParser.NO_INMEMORY - 961)) | (1 << (PlSqlParser.NO_INMEMORY_PRUNING - 961)) | (1 << (PlSqlParser.NOKEEP - 961)) | (1 << (PlSqlParser.NO_LOAD - 961)) | (1 << (PlSqlParser.NOLOCAL - 961)))) !== 0) || ((((_la - 993)) & ~0x1f) == 0 && ((1 << (_la - 993)) & ((1 << (PlSqlParser.NOLOGGING - 993)) | (1 << (PlSqlParser.NOMAPPING - 993)) | (1 << (PlSqlParser.NOMAXVALUE - 993)) | (1 << (PlSqlParser.NO_MERGE - 993)) | (1 << (PlSqlParser.NOMINIMIZE - 993)) | (1 << (PlSqlParser.NOMINVALUE - 993)) | (1 << (PlSqlParser.NO_MODEL_PUSH_REF - 993)) | (1 << (PlSqlParser.NO_MONITORING - 993)) | (1 << (PlSqlParser.NOMONITORING - 993)) | (1 << (PlSqlParser.NO_MONITOR - 993)) | (1 << (PlSqlParser.NO_MULTIMV_REWRITE - 993)) | (1 << (PlSqlParser.NO_NATIVE_FULL_OUTER_JOIN - 993)) | (1 << (PlSqlParser.NONBLOCKING - 993)) | (1 << (PlSqlParser.NONEDITIONABLE - 993)) | (1 << (PlSqlParser.NONE - 993)) | (1 << (PlSqlParser.NO_NLJ_BATCHING - 993)) | (1 << (PlSqlParser.NO_NLJ_PREFETCH - 993)) | (1 << (PlSqlParser.NO - 993)) | (1 << (PlSqlParser.NONSCHEMA - 993)) | (1 << (PlSqlParser.NO_OBJECT_LINK - 993)) | (1 << (PlSqlParser.NOORDER - 993)) | (1 << (PlSqlParser.NO_ORDER_ROLLUPS - 993)) | (1 << (PlSqlParser.NO_OUTER_JOIN_TO_ANTI - 993)) | (1 << (PlSqlParser.NO_OUTER_JOIN_TO_INNER - 993)) | (1 << (PlSqlParser.NOOVERRIDE - 993)) | (1 << (PlSqlParser.NO_PARALLEL_INDEX - 993)) | (1 << (PlSqlParser.NOPARALLEL_INDEX - 993)) | (1 << (PlSqlParser.NO_PARALLEL - 993)) | (1 << (PlSqlParser.NOPARALLEL - 993)) | (1 << (PlSqlParser.NO_PARTIAL_COMMIT - 993)) | (1 << (PlSqlParser.NO_PARTIAL_JOIN - 993)) | (1 << (PlSqlParser.NO_PARTIAL_ROLLUP_PUSHDOWN - 993)))) !== 0) || ((((_la - 1025)) & ~0x1f) == 0 && ((1 << (_la - 1025)) & ((1 << (PlSqlParser.NOPARTITION - 1025)) | (1 << (PlSqlParser.NO_PLACE_DISTINCT - 1025)) | (1 << (PlSqlParser.NO_PLACE_GROUP_BY - 1025)) | (1 << (PlSqlParser.NO_PQ_CONCURRENT_UNION - 1025)) | (1 << (PlSqlParser.NO_PQ_MAP - 1025)) | (1 << (PlSqlParser.NO_PQ_REPLICATE - 1025)) | (1 << (PlSqlParser.NO_PQ_SKEW - 1025)) | (1 << (PlSqlParser.NO_PRUNE_GSETS - 1025)) | (1 << (PlSqlParser.NO_PULL_PRED - 1025)) | (1 << (PlSqlParser.NO_PUSH_PRED - 1025)) | (1 << (PlSqlParser.NO_PUSH_SUBQ - 1025)) | (1 << (PlSqlParser.NO_PX_FAULT_TOLERANCE - 1025)) | (1 << (PlSqlParser.NO_PX_JOIN_FILTER - 1025)) | (1 << (PlSqlParser.NO_QKN_BUFF - 1025)) | (1 << (PlSqlParser.NO_QUERY_TRANSFORMATION - 1025)) | (1 << (PlSqlParser.NO_REF_CASCADE - 1025)) | (1 << (PlSqlParser.NORELOCATE - 1025)) | (1 << (PlSqlParser.NORELY - 1025)) | (1 << (PlSqlParser.NOREPAIR - 1025)) | (1 << (PlSqlParser.NOREPLAY - 1025)) | (1 << (PlSqlParser.NORESETLOGS - 1025)) | (1 << (PlSqlParser.NO_RESULT_CACHE - 1025)) | (1 << (PlSqlParser.NOREVERSE - 1025)) | (1 << (PlSqlParser.NO_REWRITE - 1025)) | (1 << (PlSqlParser.NOREWRITE - 1025)) | (1 << (PlSqlParser.NORMAL - 1025)) | (1 << (PlSqlParser.NO_ROOT_SW_FOR_LOCAL - 1025)) | (1 << (PlSqlParser.NOROWDEPENDENCIES - 1025)) | (1 << (PlSqlParser.NOSCHEMACHECK - 1025)) | (1 << (PlSqlParser.NOSEGMENT - 1025)) | (1 << (PlSqlParser.NO_SEMIJOIN - 1025)) | (1 << (PlSqlParser.NO_SEMI_TO_INNER - 1025)))) !== 0) || ((((_la - 1057)) & ~0x1f) == 0 && ((1 << (_la - 1057)) & ((1 << (PlSqlParser.NO_SET_TO_JOIN - 1057)) | (1 << (PlSqlParser.NOSORT - 1057)) | (1 << (PlSqlParser.NO_SQL_TRANSLATION - 1057)) | (1 << (PlSqlParser.NO_SQL_TUNE - 1057)) | (1 << (PlSqlParser.NO_STAR_TRANSFORMATION - 1057)) | (1 << (PlSqlParser.NO_STATEMENT_QUEUING - 1057)) | (1 << (PlSqlParser.NO_STATS_GSETS - 1057)) | (1 << (PlSqlParser.NOSTRICT - 1057)) | (1 << (PlSqlParser.NO_SUBQUERY_PRUNING - 1057)) | (1 << (PlSqlParser.NO_SUBSTRB_PAD - 1057)) | (1 << (PlSqlParser.NO_SWAP_JOIN_INPUTS - 1057)) | (1 << (PlSqlParser.NOSWITCH - 1057)) | (1 << (PlSqlParser.NO_TABLE_LOOKUP_BY_NL - 1057)) | (1 << (PlSqlParser.NO_TEMP_TABLE - 1057)) | (1 << (PlSqlParser.NOTHING - 1057)) | (1 << (PlSqlParser.NOTIFICATION - 1057)) | (1 << (PlSqlParser.NO_TRANSFORM_DISTINCT_AGG - 1057)) | (1 << (PlSqlParser.NO_UNNEST - 1057)) | (1 << (PlSqlParser.NO_USE_CUBE - 1057)) | (1 << (PlSqlParser.NO_USE_HASH_AGGREGATION - 1057)) | (1 << (PlSqlParser.NO_USE_HASH_GBY_FOR_PUSHDOWN - 1057)) | (1 << (PlSqlParser.NO_USE_HASH - 1057)) | (1 << (PlSqlParser.NO_USE_INVISIBLE_INDEXES - 1057)) | (1 << (PlSqlParser.NO_USE_MERGE - 1057)) | (1 << (PlSqlParser.NO_USE_NL - 1057)) | (1 << (PlSqlParser.NO_USE_VECTOR_AGGREGATION - 1057)) | (1 << (PlSqlParser.NOVALIDATE - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM_DIMS - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM_FACT - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM - 1057)))) !== 0) || ((((_la - 1089)) & ~0x1f) == 0 && ((1 << (_la - 1089)) & ((1 << (PlSqlParser.NO_XDB_FASTPATH_INSERT - 1089)) | (1 << (PlSqlParser.NO_XML_DML_REWRITE - 1089)) | (1 << (PlSqlParser.NO_XMLINDEX_REWRITE_IN_SELECT - 1089)) | (1 << (PlSqlParser.NO_XMLINDEX_REWRITE - 1089)) | (1 << (PlSqlParser.NO_XML_QUERY_REWRITE - 1089)) | (1 << (PlSqlParser.NO_ZONEMAP - 1089)) | (1 << (PlSqlParser.NTH_VALUE - 1089)) | (1 << (PlSqlParser.NULLIF - 1089)) | (1 << (PlSqlParser.NULLS - 1089)) | (1 << (PlSqlParser.NUMBER - 1089)) | (1 << (PlSqlParser.NUMERIC - 1089)) | (1 << (PlSqlParser.NUM_INDEX_KEYS - 1089)) | (1 << (PlSqlParser.NUMTODSINTERVAL - 1089)) | (1 << (PlSqlParser.NUMTOYMINTERVAL - 1089)) | (1 << (PlSqlParser.NVARCHAR2 - 1089)) | (1 << (PlSqlParser.NVL2 - 1089)) | (1 << (PlSqlParser.OBJECT2XML - 1089)) | (1 << (PlSqlParser.OBJECT - 1089)) | (1 << (PlSqlParser.OBJ_ID - 1089)) | (1 << (PlSqlParser.OBJNO - 1089)) | (1 << (PlSqlParser.OBJNO_REUSE - 1089)) | (1 << (PlSqlParser.OCCURENCES - 1089)) | (1 << (PlSqlParser.OFFLINE - 1089)) | (1 << (PlSqlParser.OFF - 1089)) | (1 << (PlSqlParser.OFFSET - 1089)) | (1 << (PlSqlParser.OIDINDEX - 1089)) | (1 << (PlSqlParser.OID - 1089)) | (1 << (PlSqlParser.OLAP - 1089)) | (1 << (PlSqlParser.OLD - 1089)) | (1 << (PlSqlParser.OLD_PUSH_PRED - 1089)))) !== 0) || ((((_la - 1121)) & ~0x1f) == 0 && ((1 << (_la - 1121)) & ((1 << (PlSqlParser.OLS - 1121)) | (1 << (PlSqlParser.OLTP - 1121)) | (1 << (PlSqlParser.OMIT - 1121)) | (1 << (PlSqlParser.ONE - 1121)) | (1 << (PlSqlParser.ONLINE - 1121)) | (1 << (PlSqlParser.ONLY - 1121)) | (1 << (PlSqlParser.OPAQUE - 1121)) | (1 << (PlSqlParser.OPAQUE_TRANSFORM - 1121)) | (1 << (PlSqlParser.OPAQUE_XCANONICAL - 1121)) | (1 << (PlSqlParser.OPCODE - 1121)) | (1 << (PlSqlParser.OPEN - 1121)) | (1 << (PlSqlParser.OPERATIONS - 1121)) | (1 << (PlSqlParser.OPERATOR - 1121)) | (1 << (PlSqlParser.OPT_ESTIMATE - 1121)) | (1 << (PlSqlParser.OPTIMAL - 1121)) | (1 << (PlSqlParser.OPTIMIZE - 1121)) | (1 << (PlSqlParser.OPTIMIZER_FEATURES_ENABLE - 1121)) | (1 << (PlSqlParser.OPTIMIZER_GOAL - 1121)) | (1 << (PlSqlParser.OPT_PARAM - 1121)) | (1 << (PlSqlParser.ORA_BRANCH - 1121)) | (1 << (PlSqlParser.ORA_CHECK_ACL - 1121)) | (1 << (PlSqlParser.ORA_CHECK_PRIVILEGE - 1121)) | (1 << (PlSqlParser.ORA_CLUSTERING - 1121)) | (1 << (PlSqlParser.ORADATA - 1121)) | (1 << (PlSqlParser.ORADEBUG - 1121)) | (1 << (PlSqlParser.ORA_DST_AFFECTED - 1121)) | (1 << (PlSqlParser.ORA_DST_CONVERT - 1121)) | (1 << (PlSqlParser.ORA_DST_ERROR - 1121)) | (1 << (PlSqlParser.ORA_GET_ACLIDS - 1121)))) !== 0) || ((((_la - 1153)) & ~0x1f) == 0 && ((1 << (_la - 1153)) & ((1 << (PlSqlParser.ORA_GET_PRIVILEGES - 1153)) | (1 << (PlSqlParser.ORA_HASH - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_USERID - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_USER - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_XS_USER_GUID - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_XS_USER - 1153)) | (1 << (PlSqlParser.ORA_RAWCOMPARE - 1153)) | (1 << (PlSqlParser.ORA_RAWCONCAT - 1153)) | (1 << (PlSqlParser.ORA_ROWSCN - 1153)) | (1 << (PlSqlParser.ORA_ROWSCN_RAW - 1153)) | (1 << (PlSqlParser.ORA_ROWVERSION - 1153)) | (1 << (PlSqlParser.ORA_TABVERSION - 1153)) | (1 << (PlSqlParser.ORA_WRITE_TIME - 1153)) | (1 << (PlSqlParser.ORDERED - 1153)) | (1 << (PlSqlParser.ORDERED_PREDICATES - 1153)) | (1 << (PlSqlParser.ORDINALITY - 1153)) | (1 << (PlSqlParser.OR_EXPAND - 1153)) | (1 << (PlSqlParser.ORGANIZATION - 1153)) | (1 << (PlSqlParser.OR_PREDICATES - 1153)) | (1 << (PlSqlParser.OSERROR - 1153)) | (1 << (PlSqlParser.OTHER - 1153)) | (1 << (PlSqlParser.OUTER_JOIN_TO_ANTI - 1153)) | (1 << (PlSqlParser.OUTER_JOIN_TO_INNER - 1153)) | (1 << (PlSqlParser.OUTER - 1153)) | (1 << (PlSqlParser.OUTLINE_LEAF - 1153)) | (1 << (PlSqlParser.OUTLINE - 1153)) | (1 << (PlSqlParser.OUT_OF_LINE - 1153)) | (1 << (PlSqlParser.OUT - 1153)) | (1 << (PlSqlParser.OVERFLOW_NOMOVE - 1153)) | (1 << (PlSqlParser.OVERFLOW - 1153)))) !== 0) || ((((_la - 1185)) & ~0x1f) == 0 && ((1 << (_la - 1185)) & ((1 << (PlSqlParser.OVERLAPS - 1185)) | (1 << (PlSqlParser.OVER - 1185)) | (1 << (PlSqlParser.OVERRIDING - 1185)) | (1 << (PlSqlParser.OWNER - 1185)) | (1 << (PlSqlParser.OWNERSHIP - 1185)) | (1 << (PlSqlParser.OWN - 1185)) | (1 << (PlSqlParser.PACKAGE - 1185)) | (1 << (PlSqlParser.PACKAGES - 1185)) | (1 << (PlSqlParser.PARALLEL_ENABLE - 1185)) | (1 << (PlSqlParser.PARALLEL_INDEX - 1185)) | (1 << (PlSqlParser.PARALLEL - 1185)) | (1 << (PlSqlParser.PARAMETERS - 1185)) | (1 << (PlSqlParser.PARAM - 1185)) | (1 << (PlSqlParser.PARENT - 1185)) | (1 << (PlSqlParser.PARITY - 1185)) | (1 << (PlSqlParser.PARTIAL_JOIN - 1185)) | (1 << (PlSqlParser.PARTIALLY - 1185)) | (1 << (PlSqlParser.PARTIAL - 1185)) | (1 << (PlSqlParser.PARTIAL_ROLLUP_PUSHDOWN - 1185)) | (1 << (PlSqlParser.PARTITION_HASH - 1185)) | (1 << (PlSqlParser.PARTITION_LIST - 1185)) | (1 << (PlSqlParser.PARTITION - 1185)) | (1 << (PlSqlParser.PARTITION_RANGE - 1185)) | (1 << (PlSqlParser.PARTITIONS - 1185)) | (1 << (PlSqlParser.PARTNUMINST - 1185)) | (1 << (PlSqlParser.PASSING - 1185)) | (1 << (PlSqlParser.PASSWORD_GRACE_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD_LIFE_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD_LOCK_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD - 1185)) | (1 << (PlSqlParser.PASSWORD_REUSE_MAX - 1185)))) !== 0) || ((((_la - 1217)) & ~0x1f) == 0 && ((1 << (_la - 1217)) & ((1 << (PlSqlParser.PASSWORD_REUSE_TIME - 1217)) | (1 << (PlSqlParser.PASSWORD_VERIFY_FUNCTION - 1217)) | (1 << (PlSqlParser.PAST - 1217)) | (1 << (PlSqlParser.PATCH - 1217)) | (1 << (PlSqlParser.PATH - 1217)) | (1 << (PlSqlParser.PATH_PREFIX - 1217)) | (1 << (PlSqlParser.PATHS - 1217)) | (1 << (PlSqlParser.PATTERN - 1217)) | (1 << (PlSqlParser.PBL_HS_BEGIN - 1217)) | (1 << (PlSqlParser.PBL_HS_END - 1217)) | (1 << (PlSqlParser.PCTINCREASE - 1217)) | (1 << (PlSqlParser.PCTTHRESHOLD - 1217)) | (1 << (PlSqlParser.PCTUSED - 1217)) | (1 << (PlSqlParser.PCTVERSION - 1217)) | (1 << (PlSqlParser.PENDING - 1217)) | (1 << (PlSqlParser.PERCENT_KEYWORD - 1217)) | (1 << (PlSqlParser.PERCENT_RANKM - 1217)) | (1 << (PlSqlParser.PERFORMANCE - 1217)) | (1 << (PlSqlParser.PERIOD_KEYWORD - 1217)) | (1 << (PlSqlParser.PERMANENT - 1217)) | (1 << (PlSqlParser.PERMISSION - 1217)) | (1 << (PlSqlParser.PERMUTE - 1217)) | (1 << (PlSqlParser.PER - 1217)) | (1 << (PlSqlParser.PFILE - 1217)) | (1 << (PlSqlParser.PHYSICAL - 1217)))) !== 0) || ((((_la - 1249)) & ~0x1f) == 0 && ((1 << (_la - 1249)) & ((1 << (PlSqlParser.PIKEY - 1249)) | (1 << (PlSqlParser.PIPELINED - 1249)) | (1 << (PlSqlParser.PIV_GB - 1249)) | (1 << (PlSqlParser.PIVOT - 1249)) | (1 << (PlSqlParser.PIV_SSF - 1249)) | (1 << (PlSqlParser.PLACE_DISTINCT - 1249)) | (1 << (PlSqlParser.PLACE_GROUP_BY - 1249)) | (1 << (PlSqlParser.PLAN - 1249)) | (1 << (PlSqlParser.PLSCOPE_SETTINGS - 1249)) | (1 << (PlSqlParser.PLS_INTEGER - 1249)) | (1 << (PlSqlParser.PLSQL_CCFLAGS - 1249)) | (1 << (PlSqlParser.PLSQL_CODE_TYPE - 1249)) | (1 << (PlSqlParser.PLSQL_DEBUG - 1249)) | (1 << (PlSqlParser.PLSQL_OPTIMIZE_LEVEL - 1249)) | (1 << (PlSqlParser.PLSQL_WARNINGS - 1249)) | (1 << (PlSqlParser.PLUGGABLE - 1249)) | (1 << (PlSqlParser.POINT - 1249)) | (1 << (PlSqlParser.POLICY - 1249)) | (1 << (PlSqlParser.POOL_16K - 1249)) | (1 << (PlSqlParser.POOL_2K - 1249)) | (1 << (PlSqlParser.POOL_32K - 1249)) | (1 << (PlSqlParser.POOL_4K - 1249)) | (1 << (PlSqlParser.POOL_8K - 1249)) | (1 << (PlSqlParser.POSITIVEN - 1249)) | (1 << (PlSqlParser.POSITIVE - 1249)) | (1 << (PlSqlParser.POST_TRANSACTION - 1249)) | (1 << (PlSqlParser.POWERMULTISET_BY_CARDINALITY - 1249)) | (1 << (PlSqlParser.POWERMULTISET - 1249)) | (1 << (PlSqlParser.POWER - 1249)) | (1 << (PlSqlParser.PQ_CONCURRENT_UNION - 1249)) | (1 << (PlSqlParser.PQ_DISTRIBUTE - 1249)))) !== 0) || ((((_la - 1281)) & ~0x1f) == 0 && ((1 << (_la - 1281)) & ((1 << (PlSqlParser.PQ_DISTRIBUTE_WINDOW - 1281)) | (1 << (PlSqlParser.PQ_FILTER - 1281)) | (1 << (PlSqlParser.PQ_MAP - 1281)) | (1 << (PlSqlParser.PQ_NOMAP - 1281)) | (1 << (PlSqlParser.PQ_REPLICATE - 1281)) | (1 << (PlSqlParser.PQ_SKEW - 1281)) | (1 << (PlSqlParser.PRAGMA - 1281)) | (1 << (PlSqlParser.PREBUILT - 1281)) | (1 << (PlSqlParser.PRECEDES - 1281)) | (1 << (PlSqlParser.PRECEDING - 1281)) | (1 << (PlSqlParser.PRECISION - 1281)) | (1 << (PlSqlParser.PRECOMPUTE_SUBQUERY - 1281)) | (1 << (PlSqlParser.PREDICATE_REORDERS - 1281)) | (1 << (PlSqlParser.PRELOAD - 1281)) | (1 << (PlSqlParser.PREPARE - 1281)) | (1 << (PlSqlParser.PRESENTNNV - 1281)) | (1 << (PlSqlParser.PRESENT - 1281)) | (1 << (PlSqlParser.PRESENTV - 1281)) | (1 << (PlSqlParser.PRESERVE_OID - 1281)) | (1 << (PlSqlParser.PRESERVE - 1281)) | (1 << (PlSqlParser.PRETTY - 1281)) | (1 << (PlSqlParser.PREVIOUS - 1281)) | (1 << (PlSqlParser.PREV - 1281)) | (1 << (PlSqlParser.PRIMARY - 1281)) | (1 << (PlSqlParser.PRINTBLOBTOCLOB - 1281)) | (1 << (PlSqlParser.PRIORITY - 1281)) | (1 << (PlSqlParser.PRIVATE - 1281)) | (1 << (PlSqlParser.PRIVATE_SGA - 1281)) | (1 << (PlSqlParser.PRIVILEGED - 1281)) | (1 << (PlSqlParser.PRIVILEGE - 1281)) | (1 << (PlSqlParser.PRIVILEGES - 1281)))) !== 0) || ((((_la - 1313)) & ~0x1f) == 0 && ((1 << (_la - 1313)) & ((1 << (PlSqlParser.PROCEDURAL - 1313)) | (1 << (PlSqlParser.PROCEDURE - 1313)) | (1 << (PlSqlParser.PROCESS - 1313)) | (1 << (PlSqlParser.PROFILE - 1313)) | (1 << (PlSqlParser.PROGRAM - 1313)) | (1 << (PlSqlParser.PROJECT - 1313)) | (1 << (PlSqlParser.PROPAGATE - 1313)) | (1 << (PlSqlParser.PROTECTED - 1313)) | (1 << (PlSqlParser.PROTECTION - 1313)) | (1 << (PlSqlParser.PROXY - 1313)) | (1 << (PlSqlParser.PRUNING - 1313)) | (1 << (PlSqlParser.PULL_PRED - 1313)) | (1 << (PlSqlParser.PURGE - 1313)) | (1 << (PlSqlParser.PUSH_PRED - 1313)) | (1 << (PlSqlParser.PUSH_SUBQ - 1313)) | (1 << (PlSqlParser.PX_FAULT_TOLERANCE - 1313)) | (1 << (PlSqlParser.PX_GRANULE - 1313)) | (1 << (PlSqlParser.PX_JOIN_FILTER - 1313)) | (1 << (PlSqlParser.QB_NAME - 1313)) | (1 << (PlSqlParser.QUERY_BLOCK - 1313)) | (1 << (PlSqlParser.QUERY - 1313)) | (1 << (PlSqlParser.QUEUE_CURR - 1313)) | (1 << (PlSqlParser.QUEUE - 1313)) | (1 << (PlSqlParser.QUEUE_ROWP - 1313)) | (1 << (PlSqlParser.QUIESCE - 1313)) | (1 << (PlSqlParser.QUORUM - 1313)) | (1 << (PlSqlParser.QUOTA - 1313)) | (1 << (PlSqlParser.RAISE - 1313)) | (1 << (PlSqlParser.RANDOM_LOCAL - 1313)) | (1 << (PlSqlParser.RANDOM - 1313)) | (1 << (PlSqlParser.RANGE - 1313)))) !== 0) || ((((_la - 1345)) & ~0x1f) == 0 && ((1 << (_la - 1345)) & ((1 << (PlSqlParser.RANKM - 1345)) | (1 << (PlSqlParser.RAPIDLY - 1345)) | (1 << (PlSqlParser.RAW - 1345)) | (1 << (PlSqlParser.RAWTOHEX - 1345)) | (1 << (PlSqlParser.RAWTONHEX - 1345)) | (1 << (PlSqlParser.RBA - 1345)) | (1 << (PlSqlParser.RBO_OUTLINE - 1345)) | (1 << (PlSqlParser.RDBA - 1345)) | (1 << (PlSqlParser.READ - 1345)) | (1 << (PlSqlParser.READS - 1345)) | (1 << (PlSqlParser.REALM - 1345)) | (1 << (PlSqlParser.REAL - 1345)) | (1 << (PlSqlParser.REBALANCE - 1345)) | (1 << (PlSqlParser.REBUILD - 1345)) | (1 << (PlSqlParser.RECORD - 1345)) | (1 << (PlSqlParser.RECORDS_PER_BLOCK - 1345)) | (1 << (PlSqlParser.RECOVERABLE - 1345)) | (1 << (PlSqlParser.RECOVER - 1345)) | (1 << (PlSqlParser.RECOVERY - 1345)) | (1 << (PlSqlParser.RECYCLEBIN - 1345)) | (1 << (PlSqlParser.RECYCLE - 1345)) | (1 << (PlSqlParser.REDACTION - 1345)) | (1 << (PlSqlParser.REDEFINE - 1345)) | (1 << (PlSqlParser.REDO - 1345)) | (1 << (PlSqlParser.REDUCED - 1345)) | (1 << (PlSqlParser.REDUNDANCY - 1345)) | (1 << (PlSqlParser.REF_CASCADE_CURSOR - 1345)) | (1 << (PlSqlParser.REFERENCED - 1345)) | (1 << (PlSqlParser.REFERENCE - 1345)) | (1 << (PlSqlParser.REFERENCES - 1345)) | (1 << (PlSqlParser.REFERENCING - 1345)) | (1 << (PlSqlParser.REF - 1345)))) !== 0) || ((((_la - 1377)) & ~0x1f) == 0 && ((1 << (_la - 1377)) & ((1 << (PlSqlParser.REFRESH - 1377)) | (1 << (PlSqlParser.REFTOHEX - 1377)) | (1 << (PlSqlParser.REGEXP_COUNT - 1377)) | (1 << (PlSqlParser.REGEXP_INSTR - 1377)) | (1 << (PlSqlParser.REGEXP_LIKE - 1377)) | (1 << (PlSqlParser.REGEXP_REPLACE - 1377)) | (1 << (PlSqlParser.REGEXP_SUBSTR - 1377)) | (1 << (PlSqlParser.REGISTER - 1377)) | (1 << (PlSqlParser.REGR_AVGX - 1377)) | (1 << (PlSqlParser.REGR_AVGY - 1377)) | (1 << (PlSqlParser.REGR_COUNT - 1377)) | (1 << (PlSqlParser.REGR_INTERCEPT - 1377)) | (1 << (PlSqlParser.REGR_R2 - 1377)) | (1 << (PlSqlParser.REGR_SLOPE - 1377)) | (1 << (PlSqlParser.REGR_SXX - 1377)) | (1 << (PlSqlParser.REGR_SXY - 1377)) | (1 << (PlSqlParser.REGR_SYY - 1377)) | (1 << (PlSqlParser.REGULAR - 1377)) | (1 << (PlSqlParser.REJECT - 1377)) | (1 << (PlSqlParser.REKEY - 1377)) | (1 << (PlSqlParser.RELATIONAL - 1377)) | (1 << (PlSqlParser.RELOCATE - 1377)) | (1 << (PlSqlParser.RELY - 1377)) | (1 << (PlSqlParser.REMAINDER - 1377)) | (1 << (PlSqlParser.REMOTE_MAPPED - 1377)) | (1 << (PlSqlParser.REMOVE - 1377)) | (1 << (PlSqlParser.RENAME - 1377)) | (1 << (PlSqlParser.REPAIR - 1377)) | (1 << (PlSqlParser.REPEAT - 1377)) | (1 << (PlSqlParser.REPLACE - 1377)) | (1 << (PlSqlParser.REPLICATION - 1377)))) !== 0) || ((((_la - 1409)) & ~0x1f) == 0 && ((1 << (_la - 1409)) & ((1 << (PlSqlParser.REQUIRED - 1409)) | (1 << (PlSqlParser.RESETLOGS - 1409)) | (1 << (PlSqlParser.RESET - 1409)) | (1 << (PlSqlParser.RESIZE - 1409)) | (1 << (PlSqlParser.RESOLVE - 1409)) | (1 << (PlSqlParser.RESOLVER - 1409)) | (1 << (PlSqlParser.RESPECT - 1409)) | (1 << (PlSqlParser.RESTART - 1409)) | (1 << (PlSqlParser.RESTORE_AS_INTERVALS - 1409)) | (1 << (PlSqlParser.RESTORE - 1409)) | (1 << (PlSqlParser.RESTRICT_ALL_REF_CONS - 1409)) | (1 << (PlSqlParser.RESTRICTED - 1409)) | (1 << (PlSqlParser.RESTRICT_REFERENCES - 1409)) | (1 << (PlSqlParser.RESTRICT - 1409)) | (1 << (PlSqlParser.RESULT_CACHE - 1409)) | (1 << (PlSqlParser.RESULT - 1409)) | (1 << (PlSqlParser.RESUMABLE - 1409)) | (1 << (PlSqlParser.RESUME - 1409)) | (1 << (PlSqlParser.RETENTION - 1409)) | (1 << (PlSqlParser.RETRY_ON_ROW_CHANGE - 1409)) | (1 << (PlSqlParser.RETURNING - 1409)) | (1 << (PlSqlParser.RETURN - 1409)) | (1 << (PlSqlParser.REUSE - 1409)) | (1 << (PlSqlParser.REVERSE - 1409)) | (1 << (PlSqlParser.REWRITE_OR_ERROR - 1409)) | (1 << (PlSqlParser.REWRITE - 1409)) | (1 << (PlSqlParser.RIGHT - 1409)) | (1 << (PlSqlParser.ROLE - 1409)) | (1 << (PlSqlParser.ROLESET - 1409)) | (1 << (PlSqlParser.ROLES - 1409)))) !== 0) || ((((_la - 1441)) & ~0x1f) == 0 && ((1 << (_la - 1441)) & ((1 << (PlSqlParser.ROLLBACK - 1441)) | (1 << (PlSqlParser.ROLLING - 1441)) | (1 << (PlSqlParser.ROLLUP - 1441)) | (1 << (PlSqlParser.ROWDEPENDENCIES - 1441)) | (1 << (PlSqlParser.ROWID_MAPPING_TABLE - 1441)) | (1 << (PlSqlParser.ROWID - 1441)) | (1 << (PlSqlParser.ROWIDTOCHAR - 1441)) | (1 << (PlSqlParser.ROWIDTONCHAR - 1441)) | (1 << (PlSqlParser.ROW_LENGTH - 1441)) | (1 << (PlSqlParser.ROWNUM - 1441)) | (1 << (PlSqlParser.ROW - 1441)) | (1 << (PlSqlParser.ROWS - 1441)) | (1 << (PlSqlParser.RPAD - 1441)) | (1 << (PlSqlParser.RTRIM - 1441)) | (1 << (PlSqlParser.RULE - 1441)) | (1 << (PlSqlParser.RULES - 1441)) | (1 << (PlSqlParser.RUNNING - 1441)) | (1 << (PlSqlParser.SALT - 1441)) | (1 << (PlSqlParser.SAMPLE - 1441)) | (1 << (PlSqlParser.SAVE_AS_INTERVALS - 1441)) | (1 << (PlSqlParser.SAVEPOINT - 1441)) | (1 << (PlSqlParser.SAVE - 1441)) | (1 << (PlSqlParser.SB4 - 1441)) | (1 << (PlSqlParser.SCALE_ROWS - 1441)) | (1 << (PlSqlParser.SCALE - 1441)) | (1 << (PlSqlParser.SCAN_INSTANCES - 1441)) | (1 << (PlSqlParser.SCAN - 1441)) | (1 << (PlSqlParser.SCHEDULER - 1441)) | (1 << (PlSqlParser.SCHEMACHECK - 1441)) | (1 << (PlSqlParser.SCHEMA - 1441)) | (1 << (PlSqlParser.SCN_ASCENDING - 1441)) | (1 << (PlSqlParser.SCN - 1441)))) !== 0) || ((((_la - 1473)) & ~0x1f) == 0 && ((1 << (_la - 1473)) & ((1 << (PlSqlParser.SCOPE - 1473)) | (1 << (PlSqlParser.SCRUB - 1473)) | (1 << (PlSqlParser.SD_ALL - 1473)) | (1 << (PlSqlParser.SD_INHIBIT - 1473)) | (1 << (PlSqlParser.SDO_GEOM_MBR - 1473)) | (1 << (PlSqlParser.SD_SHOW - 1473)) | (1 << (PlSqlParser.SEARCH - 1473)) | (1 << (PlSqlParser.SECOND - 1473)) | (1 << (PlSqlParser.SECRET - 1473)) | (1 << (PlSqlParser.SECUREFILE_DBA - 1473)) | (1 << (PlSqlParser.SECUREFILE - 1473)) | (1 << (PlSqlParser.SECURITY - 1473)) | (1 << (PlSqlParser.SEED - 1473)) | (1 << (PlSqlParser.SEG_BLOCK - 1473)) | (1 << (PlSqlParser.SEG_FILE - 1473)) | (1 << (PlSqlParser.SEGMENT - 1473)) | (1 << (PlSqlParser.SELECTIVITY - 1473)) | (1 << (PlSqlParser.SELF - 1473)) | (1 << (PlSqlParser.SEMIJOIN_DRIVER - 1473)) | (1 << (PlSqlParser.SEMIJOIN - 1473)) | (1 << (PlSqlParser.SEMI_TO_INNER - 1473)) | (1 << (PlSqlParser.SEQUENCED - 1473)) | (1 << (PlSqlParser.SEQUENCE - 1473)) | (1 << (PlSqlParser.SEQUENTIAL - 1473)) | (1 << (PlSqlParser.SERIALIZABLE - 1473)) | (1 << (PlSqlParser.SERIALLY_REUSABLE - 1473)) | (1 << (PlSqlParser.SERIAL - 1473)) | (1 << (PlSqlParser.SERVERERROR - 1473)) | (1 << (PlSqlParser.SERVICE_NAME_CONVERT - 1473)) | (1 << (PlSqlParser.SERVICES - 1473)))) !== 0) || ((((_la - 1505)) & ~0x1f) == 0 && ((1 << (_la - 1505)) & ((1 << (PlSqlParser.SESSION_CACHED_CURSORS - 1505)) | (1 << (PlSqlParser.SESSION - 1505)) | (1 << (PlSqlParser.SESSIONS_PER_USER - 1505)) | (1 << (PlSqlParser.SESSIONTIMEZONE - 1505)) | (1 << (PlSqlParser.SESSIONTZNAME - 1505)) | (1 << (PlSqlParser.SET - 1505)) | (1 << (PlSqlParser.SETS - 1505)) | (1 << (PlSqlParser.SETTINGS - 1505)) | (1 << (PlSqlParser.SET_TO_JOIN - 1505)) | (1 << (PlSqlParser.SEVERE - 1505)) | (1 << (PlSqlParser.SHARED_POOL - 1505)) | (1 << (PlSqlParser.SHARED - 1505)) | (1 << (PlSqlParser.SHARING - 1505)) | (1 << (PlSqlParser.SHELFLIFE - 1505)) | (1 << (PlSqlParser.SHOW - 1505)) | (1 << (PlSqlParser.SHRINK - 1505)) | (1 << (PlSqlParser.SHUTDOWN - 1505)) | (1 << (PlSqlParser.SIBLINGS - 1505)) | (1 << (PlSqlParser.SID - 1505)) | (1 << (PlSqlParser.SIGNAL_COMPONENT - 1505)) | (1 << (PlSqlParser.SIGNAL_FUNCTION - 1505)) | (1 << (PlSqlParser.SIGN - 1505)) | (1 << (PlSqlParser.SIGNTYPE - 1505)) | (1 << (PlSqlParser.SIMPLE_INTEGER - 1505)) | (1 << (PlSqlParser.SIMPLE - 1505)) | (1 << (PlSqlParser.SINGLE - 1505)) | (1 << (PlSqlParser.SINGLETASK - 1505)) | (1 << (PlSqlParser.SINH - 1505)) | (1 << (PlSqlParser.SIN - 1505)) | (1 << (PlSqlParser.SKIP_EXT_OPTIMIZER - 1505)))) !== 0) || ((((_la - 1537)) & ~0x1f) == 0 && ((1 << (_la - 1537)) & ((1 << (PlSqlParser.SKIP_ - 1537)) | (1 << (PlSqlParser.SKIP_UNQ_UNUSABLE_IDX - 1537)) | (1 << (PlSqlParser.SKIP_UNUSABLE_INDEXES - 1537)) | (1 << (PlSqlParser.SMALLFILE - 1537)) | (1 << (PlSqlParser.SMALLINT - 1537)) | (1 << (PlSqlParser.SNAPSHOT - 1537)) | (1 << (PlSqlParser.SOME - 1537)) | (1 << (PlSqlParser.SORT - 1537)) | (1 << (PlSqlParser.SOUNDEX - 1537)) | (1 << (PlSqlParser.SOURCE_FILE_DIRECTORY - 1537)) | (1 << (PlSqlParser.SOURCE_FILE_NAME_CONVERT - 1537)) | (1 << (PlSqlParser.SOURCE - 1537)) | (1 << (PlSqlParser.SPACE_KEYWORD - 1537)) | (1 << (PlSqlParser.SPECIFICATION - 1537)) | (1 << (PlSqlParser.SPFILE - 1537)) | (1 << (PlSqlParser.SPLIT - 1537)) | (1 << (PlSqlParser.SPREADSHEET - 1537)) | (1 << (PlSqlParser.SQLDATA - 1537)) | (1 << (PlSqlParser.SQLERROR - 1537)) | (1 << (PlSqlParser.SQLLDR - 1537)) | (1 << (PlSqlParser.SQL - 1537)) | (1 << (PlSqlParser.SQL_TRACE - 1537)) | (1 << (PlSqlParser.SQL_TRANSLATION_PROFILE - 1537)) | (1 << (PlSqlParser.SQRT - 1537)) | (1 << (PlSqlParser.STALE - 1537)) | (1 << (PlSqlParser.STANDALONE - 1537)) | (1 << (PlSqlParser.STANDARD_HASH - 1537)) | (1 << (PlSqlParser.STANDBY_MAX_DATA_DELAY - 1537)) | (1 << (PlSqlParser.STANDBYS - 1537)) | (1 << (PlSqlParser.STANDBY - 1537)) | (1 << (PlSqlParser.STAR - 1537)) | (1 << (PlSqlParser.STAR_TRANSFORMATION - 1537)))) !== 0) || ((((_la - 1570)) & ~0x1f) == 0 && ((1 << (_la - 1570)) & ((1 << (PlSqlParser.STARTUP - 1570)) | (1 << (PlSqlParser.STATEMENT_ID - 1570)) | (1 << (PlSqlParser.STATEMENT_QUEUING - 1570)) | (1 << (PlSqlParser.STATEMENTS - 1570)) | (1 << (PlSqlParser.STATEMENT - 1570)) | (1 << (PlSqlParser.STATE - 1570)) | (1 << (PlSqlParser.STATIC - 1570)) | (1 << (PlSqlParser.STATISTICS - 1570)) | (1 << (PlSqlParser.STATS_BINOMIAL_TEST - 1570)) | (1 << (PlSqlParser.STATS_CROSSTAB - 1570)) | (1 << (PlSqlParser.STATS_F_TEST - 1570)) | (1 << (PlSqlParser.STATS_KS_TEST - 1570)) | (1 << (PlSqlParser.STATS_MODE - 1570)) | (1 << (PlSqlParser.STATS_MW_TEST - 1570)) | (1 << (PlSqlParser.STATS_ONE_WAY_ANOVA - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_INDEP - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_INDEPU - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_ONE - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_PAIRED - 1570)) | (1 << (PlSqlParser.STATS_WSR_TEST - 1570)) | (1 << (PlSqlParser.STDDEV_POP - 1570)) | (1 << (PlSqlParser.STDDEV_SAMP - 1570)) | (1 << (PlSqlParser.STOP - 1570)) | (1 << (PlSqlParser.STORAGE - 1570)) | (1 << (PlSqlParser.STORE - 1570)) | (1 << (PlSqlParser.STREAMS - 1570)) | (1 << (PlSqlParser.STREAM - 1570)) | (1 << (PlSqlParser.STRICT - 1570)) | (1 << (PlSqlParser.STRING - 1570)) | (1 << (PlSqlParser.STRIPE_COLUMNS - 1570)) | (1 << (PlSqlParser.STRIPE_WIDTH - 1570)) | (1 << (PlSqlParser.STRIP - 1570)))) !== 0) || ((((_la - 1602)) & ~0x1f) == 0 && ((1 << (_la - 1602)) & ((1 << (PlSqlParser.STRUCTURE - 1602)) | (1 << (PlSqlParser.SUBMULTISET - 1602)) | (1 << (PlSqlParser.SUBPARTITION_REL - 1602)) | (1 << (PlSqlParser.SUBPARTITIONS - 1602)) | (1 << (PlSqlParser.SUBPARTITION - 1602)) | (1 << (PlSqlParser.SUBQUERIES - 1602)) | (1 << (PlSqlParser.SUBQUERY_PRUNING - 1602)) | (1 << (PlSqlParser.SUBSCRIBE - 1602)) | (1 << (PlSqlParser.SUBSET - 1602)) | (1 << (PlSqlParser.SUBSTITUTABLE - 1602)) | (1 << (PlSqlParser.SUBSTR2 - 1602)) | (1 << (PlSqlParser.SUBSTR4 - 1602)) | (1 << (PlSqlParser.SUBSTRB - 1602)) | (1 << (PlSqlParser.SUBSTRC - 1602)) | (1 << (PlSqlParser.SUBTYPE - 1602)) | (1 << (PlSqlParser.SUCCESSFUL - 1602)) | (1 << (PlSqlParser.SUCCESS - 1602)) | (1 << (PlSqlParser.SUMMARY - 1602)) | (1 << (PlSqlParser.SUPPLEMENTAL - 1602)) | (1 << (PlSqlParser.SUSPEND - 1602)) | (1 << (PlSqlParser.SWAP_JOIN_INPUTS - 1602)) | (1 << (PlSqlParser.SWITCHOVER - 1602)) | (1 << (PlSqlParser.SWITCH - 1602)) | (1 << (PlSqlParser.SYNCHRONOUS - 1602)) | (1 << (PlSqlParser.SYNC - 1602)) | (1 << (PlSqlParser.SYSASM - 1602)) | (1 << (PlSqlParser.SYS_AUDIT - 1602)) | (1 << (PlSqlParser.SYSAUX - 1602)) | (1 << (PlSqlParser.SYSBACKUP - 1602)) | (1 << (PlSqlParser.SYS_CHECKACL - 1602)) | (1 << (PlSqlParser.SYS_CHECK_PRIVILEGE - 1602)))) !== 0) || ((((_la - 1634)) & ~0x1f) == 0 && ((1 << (_la - 1634)) & ((1 << (PlSqlParser.SYS_CONNECT_BY_PATH - 1634)) | (1 << (PlSqlParser.SYS_CONTEXT - 1634)) | (1 << (PlSqlParser.SYSDATE - 1634)) | (1 << (PlSqlParser.SYSDBA - 1634)) | (1 << (PlSqlParser.SYS_DBURIGEN - 1634)) | (1 << (PlSqlParser.SYSDG - 1634)) | (1 << (PlSqlParser.SYS_DL_CURSOR - 1634)) | (1 << (PlSqlParser.SYS_DM_RXFORM_CHR - 1634)) | (1 << (PlSqlParser.SYS_DM_RXFORM_NUM - 1634)) | (1 << (PlSqlParser.SYS_DOM_COMPARE - 1634)) | (1 << (PlSqlParser.SYS_DST_PRIM2SEC - 1634)) | (1 << (PlSqlParser.SYS_DST_SEC2PRIM - 1634)) | (1 << (PlSqlParser.SYS_ET_BFILE_TO_RAW - 1634)) | (1 << (PlSqlParser.SYS_ET_BLOB_TO_IMAGE - 1634)) | (1 << (PlSqlParser.SYS_ET_IMAGE_TO_BLOB - 1634)) | (1 << (PlSqlParser.SYS_ET_RAW_TO_BFILE - 1634)) | (1 << (PlSqlParser.SYS_EXTPDTXT - 1634)) | (1 << (PlSqlParser.SYS_EXTRACT_UTC - 1634)) | (1 << (PlSqlParser.SYS_FBT_INSDEL - 1634)) | (1 << (PlSqlParser.SYS_FILTER_ACLS - 1634)) | (1 << (PlSqlParser.SYS_FNMATCHES - 1634)) | (1 << (PlSqlParser.SYS_FNREPLACE - 1634)) | (1 << (PlSqlParser.SYS_GET_ACLIDS - 1634)) | (1 << (PlSqlParser.SYS_GET_COL_ACLIDS - 1634)) | (1 << (PlSqlParser.SYS_GET_PRIVILEGES - 1634)) | (1 << (PlSqlParser.SYS_GETTOKENID - 1634)) | (1 << (PlSqlParser.SYS_GETXTIVAL - 1634)) | (1 << (PlSqlParser.SYS_GUID - 1634)) | (1 << (PlSqlParser.SYSGUID - 1634)) | (1 << (PlSqlParser.SYSKM - 1634)) | (1 << (PlSqlParser.SYS_MAKE_XMLNODEID - 1634)) | (1 << (PlSqlParser.SYS_MAKEXML - 1634)))) !== 0) || ((((_la - 1666)) & ~0x1f) == 0 && ((1 << (_la - 1666)) & ((1 << (PlSqlParser.SYS_MKXMLATTR - 1666)) | (1 << (PlSqlParser.SYS_MKXTI - 1666)) | (1 << (PlSqlParser.SYSOBJ - 1666)) | (1 << (PlSqlParser.SYS_OP_ADT2BIN - 1666)) | (1 << (PlSqlParser.SYS_OP_ADTCONS - 1666)) | (1 << (PlSqlParser.SYS_OP_ALSCRVAL - 1666)) | (1 << (PlSqlParser.SYS_OP_ATG - 1666)) | (1 << (PlSqlParser.SYS_OP_BIN2ADT - 1666)) | (1 << (PlSqlParser.SYS_OP_BITVEC - 1666)) | (1 << (PlSqlParser.SYS_OP_BL2R - 1666)) | (1 << (PlSqlParser.SYS_OP_BLOOM_FILTER_LIST - 1666)) | (1 << (PlSqlParser.SYS_OP_BLOOM_FILTER - 1666)) | (1 << (PlSqlParser.SYS_OP_C2C - 1666)) | (1 << (PlSqlParser.SYS_OP_CAST - 1666)) | (1 << (PlSqlParser.SYS_OP_CEG - 1666)) | (1 << (PlSqlParser.SYS_OP_CL2C - 1666)) | (1 << (PlSqlParser.SYS_OP_COMBINED_HASH - 1666)) | (1 << (PlSqlParser.SYS_OP_COMP - 1666)) | (1 << (PlSqlParser.SYS_OP_CONVERT - 1666)) | (1 << (PlSqlParser.SYS_OP_COUNTCHG - 1666)) | (1 << (PlSqlParser.SYS_OP_CSCONV - 1666)) | (1 << (PlSqlParser.SYS_OP_CSCONVTEST - 1666)) | (1 << (PlSqlParser.SYS_OP_CSR - 1666)) | (1 << (PlSqlParser.SYS_OP_CSX_PATCH - 1666)) | (1 << (PlSqlParser.SYS_OP_CYCLED_SEQ - 1666)) | (1 << (PlSqlParser.SYS_OP_DECOMP - 1666)) | (1 << (PlSqlParser.SYS_OP_DESCEND - 1666)) | (1 << (PlSqlParser.SYS_OP_DISTINCT - 1666)) | (1 << (PlSqlParser.SYS_OP_DRA - 1666)) | (1 << (PlSqlParser.SYS_OP_DUMP - 1666)) | (1 << (PlSqlParser.SYS_OP_DV_CHECK - 1666)) | (1 << (PlSqlParser.SYS_OP_ENFORCE_NOT_NULL - 1666)))) !== 0) || ((((_la - 1698)) & ~0x1f) == 0 && ((1 << (_la - 1698)) & ((1 << (PlSqlParser.SYSOPER - 1698)) | (1 << (PlSqlParser.SYS_OP_EXTRACT - 1698)) | (1 << (PlSqlParser.SYS_OP_GROUPING - 1698)) | (1 << (PlSqlParser.SYS_OP_GUID - 1698)) | (1 << (PlSqlParser.SYS_OP_HASH - 1698)) | (1 << (PlSqlParser.SYS_OP_IIX - 1698)) | (1 << (PlSqlParser.SYS_OP_ITR - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_CREATE - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_FILTER_LIST - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_FILTER - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_SUCCEEDED - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_USE - 1698)) | (1 << (PlSqlParser.SYS_OP_LBID - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2BLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2CLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2ID - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2NCLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2TYP - 1698)) | (1 << (PlSqlParser.SYS_OP_LSVI - 1698)) | (1 << (PlSqlParser.SYS_OP_LVL - 1698)) | (1 << (PlSqlParser.SYS_OP_MAKEOID - 1698)) | (1 << (PlSqlParser.SYS_OP_MAP_NONNULL - 1698)) | (1 << (PlSqlParser.SYS_OP_MSR - 1698)) | (1 << (PlSqlParser.SYS_OP_NICOMBINE - 1698)) | (1 << (PlSqlParser.SYS_OP_NIEXTRACT - 1698)) | (1 << (PlSqlParser.SYS_OP_NII - 1698)) | (1 << (PlSqlParser.SYS_OP_NIX - 1698)) | (1 << (PlSqlParser.SYS_OP_NOEXPAND - 1698)) | (1 << (PlSqlParser.SYS_OP_NTCIMG - 1698)) | (1 << (PlSqlParser.SYS_OP_NUMTORAW - 1698)) | (1 << (PlSqlParser.SYS_OP_OIDVALUE - 1698)) | (1 << (PlSqlParser.SYS_OP_OPNSIZE - 1698)))) !== 0) || ((((_la - 1730)) & ~0x1f) == 0 && ((1 << (_la - 1730)) & ((1 << (PlSqlParser.SYS_OP_PAR_1 - 1730)) | (1 << (PlSqlParser.SYS_OP_PARGID_1 - 1730)) | (1 << (PlSqlParser.SYS_OP_PARGID - 1730)) | (1 << (PlSqlParser.SYS_OP_PAR - 1730)) | (1 << (PlSqlParser.SYS_OP_PART_ID - 1730)) | (1 << (PlSqlParser.SYS_OP_PIVOT - 1730)) | (1 << (PlSqlParser.SYS_OP_R2O - 1730)) | (1 << (PlSqlParser.SYS_OP_RAWTONUM - 1730)) | (1 << (PlSqlParser.SYS_OP_RDTM - 1730)) | (1 << (PlSqlParser.SYS_OP_REF - 1730)) | (1 << (PlSqlParser.SYS_OP_RMTD - 1730)) | (1 << (PlSqlParser.SYS_OP_ROWIDTOOBJ - 1730)) | (1 << (PlSqlParser.SYS_OP_RPB - 1730)) | (1 << (PlSqlParser.SYS_OPTLOBPRBSC - 1730)) | (1 << (PlSqlParser.SYS_OP_TOSETID - 1730)) | (1 << (PlSqlParser.SYS_OP_TPR - 1730)) | (1 << (PlSqlParser.SYS_OP_TRTB - 1730)) | (1 << (PlSqlParser.SYS_OPTXICMP - 1730)) | (1 << (PlSqlParser.SYS_OPTXQCASTASNQ - 1730)) | (1 << (PlSqlParser.SYS_OP_UNDESCEND - 1730)) | (1 << (PlSqlParser.SYS_OP_VECAND - 1730)) | (1 << (PlSqlParser.SYS_OP_VECBIT - 1730)) | (1 << (PlSqlParser.SYS_OP_VECOR - 1730)) | (1 << (PlSqlParser.SYS_OP_VECXOR - 1730)) | (1 << (PlSqlParser.SYS_OP_VERSION - 1730)) | (1 << (PlSqlParser.SYS_OP_VREF - 1730)) | (1 << (PlSqlParser.SYS_OP_VVD - 1730)) | (1 << (PlSqlParser.SYS_OP_XMLCONS_FOR_CSX - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHATG - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHIDX - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHOP - 1730)) | (1 << (PlSqlParser.SYS_OP_XTXT2SQLT - 1730)))) !== 0) || ((((_la - 1762)) & ~0x1f) == 0 && ((1 << (_la - 1762)) & ((1 << (PlSqlParser.SYS_OP_ZONE_ID - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_DEPTH - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_MAXCHILD - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_PARENT - 1762)) | (1 << (PlSqlParser.SYS_PARALLEL_TXN - 1762)) | (1 << (PlSqlParser.SYS_PATHID_IS_ATTR - 1762)) | (1 << (PlSqlParser.SYS_PATHID_IS_NMSPC - 1762)) | (1 << (PlSqlParser.SYS_PATHID_LASTNAME - 1762)) | (1 << (PlSqlParser.SYS_PATHID_LASTNMSPC - 1762)) | (1 << (PlSqlParser.SYS_PATH_REVERSE - 1762)) | (1 << (PlSqlParser.SYS_PXQEXTRACT - 1762)) | (1 << (PlSqlParser.SYS_RAW_TO_XSID - 1762)) | (1 << (PlSqlParser.SYS_RID_ORDER - 1762)) | (1 << (PlSqlParser.SYS_ROW_DELTA - 1762)) | (1 << (PlSqlParser.SYS_SC_2_XMLT - 1762)) | (1 << (PlSqlParser.SYS_SYNRCIREDO - 1762)) | (1 << (PlSqlParser.SYSTEM_DEFINED - 1762)) | (1 << (PlSqlParser.SYSTEM - 1762)) | (1 << (PlSqlParser.SYSTIMESTAMP - 1762)) | (1 << (PlSqlParser.SYS_TYPEID - 1762)) | (1 << (PlSqlParser.SYS_UMAKEXML - 1762)) | (1 << (PlSqlParser.SYS_XMLANALYZE - 1762)) | (1 << (PlSqlParser.SYS_XMLCONTAINS - 1762)) | (1 << (PlSqlParser.SYS_XMLCONV - 1762)) | (1 << (PlSqlParser.SYS_XMLEXNSURI - 1762)) | (1 << (PlSqlParser.SYS_XMLGEN - 1762)) | (1 << (PlSqlParser.SYS_XMLI_LOC_ISNODE - 1762)) | (1 << (PlSqlParser.SYS_XMLI_LOC_ISTEXT - 1762)) | (1 << (PlSqlParser.SYS_XMLINSTR - 1762)) | (1 << (PlSqlParser.SYS_XMLLOCATOR_GETSVAL - 1762)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETCID - 1762)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETLOCATOR - 1762)))) !== 0) || ((((_la - 1794)) & ~0x1f) == 0 && ((1 << (_la - 1794)) & ((1 << (PlSqlParser.SYS_XMLNODEID_GETOKEY - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETPATHID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETPTRID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETRID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETSVAL - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETTID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID - 1794)) | (1 << (PlSqlParser.SYS_XMLT_2_SC - 1794)) | (1 << (PlSqlParser.SYS_XMLTRANSLATE - 1794)) | (1 << (PlSqlParser.SYS_XMLTYPE2SQL - 1794)) | (1 << (PlSqlParser.SYS_XQ_ASQLCNV - 1794)) | (1 << (PlSqlParser.SYS_XQ_ATOMCNVCHK - 1794)) | (1 << (PlSqlParser.SYS_XQBASEURI - 1794)) | (1 << (PlSqlParser.SYS_XQCASTABLEERRH - 1794)) | (1 << (PlSqlParser.SYS_XQCODEP2STR - 1794)) | (1 << (PlSqlParser.SYS_XQCODEPEQ - 1794)) | (1 << (PlSqlParser.SYS_XQCON2SEQ - 1794)) | (1 << (PlSqlParser.SYS_XQCONCAT - 1794)) | (1 << (PlSqlParser.SYS_XQDELETE - 1794)) | (1 << (PlSqlParser.SYS_XQDFLTCOLATION - 1794)) | (1 << (PlSqlParser.SYS_XQDOC - 1794)) | (1 << (PlSqlParser.SYS_XQDOCURI - 1794)) | (1 << (PlSqlParser.SYS_XQDURDIV - 1794)) | (1 << (PlSqlParser.SYS_XQED4URI - 1794)) | (1 << (PlSqlParser.SYS_XQENDSWITH - 1794)) | (1 << (PlSqlParser.SYS_XQERRH - 1794)) | (1 << (PlSqlParser.SYS_XQERR - 1794)) | (1 << (PlSqlParser.SYS_XQESHTMLURI - 1794)) | (1 << (PlSqlParser.SYS_XQEXLOBVAL - 1794)) | (1 << (PlSqlParser.SYS_XQEXSTWRP - 1794)) | (1 << (PlSqlParser.SYS_XQEXTRACT - 1794)) | (1 << (PlSqlParser.SYS_XQEXTRREF - 1794)))) !== 0) || ((((_la - 1826)) & ~0x1f) == 0 && ((1 << (_la - 1826)) & ((1 << (PlSqlParser.SYS_XQEXVAL - 1826)) | (1 << (PlSqlParser.SYS_XQFB2STR - 1826)) | (1 << (PlSqlParser.SYS_XQFNBOOL - 1826)) | (1 << (PlSqlParser.SYS_XQFNCMP - 1826)) | (1 << (PlSqlParser.SYS_XQFNDATIM - 1826)) | (1 << (PlSqlParser.SYS_XQFNLNAME - 1826)) | (1 << (PlSqlParser.SYS_XQFNNM - 1826)) | (1 << (PlSqlParser.SYS_XQFNNSURI - 1826)) | (1 << (PlSqlParser.SYS_XQFNPREDTRUTH - 1826)) | (1 << (PlSqlParser.SYS_XQFNQNM - 1826)) | (1 << (PlSqlParser.SYS_XQFNROOT - 1826)) | (1 << (PlSqlParser.SYS_XQFORMATNUM - 1826)) | (1 << (PlSqlParser.SYS_XQFTCONTAIN - 1826)) | (1 << (PlSqlParser.SYS_XQFUNCR - 1826)) | (1 << (PlSqlParser.SYS_XQGETCONTENT - 1826)) | (1 << (PlSqlParser.SYS_XQINDXOF - 1826)) | (1 << (PlSqlParser.SYS_XQINSERT - 1826)) | (1 << (PlSqlParser.SYS_XQINSPFX - 1826)) | (1 << (PlSqlParser.SYS_XQIRI2URI - 1826)) | (1 << (PlSqlParser.SYS_XQLANG - 1826)) | (1 << (PlSqlParser.SYS_XQLLNMFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQMKNODEREF - 1826)) | (1 << (PlSqlParser.SYS_XQNILLED - 1826)) | (1 << (PlSqlParser.SYS_XQNODENAME - 1826)) | (1 << (PlSqlParser.SYS_XQNORMSPACE - 1826)) | (1 << (PlSqlParser.SYS_XQNORMUCODE - 1826)) | (1 << (PlSqlParser.SYS_XQ_NRNG - 1826)) | (1 << (PlSqlParser.SYS_XQNSP4PFX - 1826)) | (1 << (PlSqlParser.SYS_XQNSPFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQPFXFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQ_PKSQL2XML - 1826)) | (1 << (PlSqlParser.SYS_XQPOLYABS - 1826)))) !== 0) || ((((_la - 1858)) & ~0x1f) == 0 && ((1 << (_la - 1858)) & ((1 << (PlSqlParser.SYS_XQPOLYADD - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCEL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCSTBL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCST - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYDIV - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYFLR - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYMOD - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYMUL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYRND - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYSQRT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYSUB - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYUMUS - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYUPLS - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVEQ - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVGE - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVGT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVLE - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVLT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVNE - 1858)) | (1 << (PlSqlParser.SYS_XQREF2VAL - 1858)) | (1 << (PlSqlParser.SYS_XQRENAME - 1858)) | (1 << (PlSqlParser.SYS_XQREPLACE - 1858)) | (1 << (PlSqlParser.SYS_XQRESVURI - 1858)) | (1 << (PlSqlParser.SYS_XQRNDHALF2EVN - 1858)) | (1 << (PlSqlParser.SYS_XQRSLVQNM - 1858)) | (1 << (PlSqlParser.SYS_XQRYENVPGET - 1858)) | (1 << (PlSqlParser.SYS_XQRYVARGET - 1858)) | (1 << (PlSqlParser.SYS_XQRYWRP - 1858)) | (1 << (PlSqlParser.SYS_XQSEQ2CON4XC - 1858)) | (1 << (PlSqlParser.SYS_XQSEQ2CON - 1858)) | (1 << (PlSqlParser.SYS_XQSEQDEEPEQ - 1858)) | (1 << (PlSqlParser.SYS_XQSEQINSB - 1858)))) !== 0) || ((((_la - 1890)) & ~0x1f) == 0 && ((1 << (_la - 1890)) & ((1 << (PlSqlParser.SYS_XQSEQRM - 1890)) | (1 << (PlSqlParser.SYS_XQSEQRVS - 1890)) | (1 << (PlSqlParser.SYS_XQSEQSUB - 1890)) | (1 << (PlSqlParser.SYS_XQSEQTYPMATCH - 1890)) | (1 << (PlSqlParser.SYS_XQSTARTSWITH - 1890)) | (1 << (PlSqlParser.SYS_XQSTATBURI - 1890)) | (1 << (PlSqlParser.SYS_XQSTR2CODEP - 1890)) | (1 << (PlSqlParser.SYS_XQSTRJOIN - 1890)) | (1 << (PlSqlParser.SYS_XQSUBSTRAFT - 1890)) | (1 << (PlSqlParser.SYS_XQSUBSTRBEF - 1890)) | (1 << (PlSqlParser.SYS_XQTOKENIZE - 1890)) | (1 << (PlSqlParser.SYS_XQTREATAS - 1890)) | (1 << (PlSqlParser.SYS_XQ_UPKXML2SQL - 1890)) | (1 << (PlSqlParser.SYS_XQXFORM - 1890)) | (1 << (PlSqlParser.SYS_XSID_TO_RAW - 1890)) | (1 << (PlSqlParser.SYS_ZMAP_FILTER - 1890)) | (1 << (PlSqlParser.SYS_ZMAP_REFRESH - 1890)) | (1 << (PlSqlParser.TABLE_LOOKUP_BY_NL - 1890)) | (1 << (PlSqlParser.TABLESPACE_NO - 1890)) | (1 << (PlSqlParser.TABLESPACE - 1890)) | (1 << (PlSqlParser.TABLES - 1890)) | (1 << (PlSqlParser.TABLE_STATS - 1890)) | (1 << (PlSqlParser.TABLE - 1890)) | (1 << (PlSqlParser.TABNO - 1890)) | (1 << (PlSqlParser.TAG - 1890)) | (1 << (PlSqlParser.TANH - 1890)) | (1 << (PlSqlParser.TAN - 1890)) | (1 << (PlSqlParser.TBLORIDXPARTNUM - 1890)) | (1 << (PlSqlParser.TEMPFILE - 1890)) | (1 << (PlSqlParser.TEMPLATE - 1890)) | (1 << (PlSqlParser.TEMPORARY - 1890)) | (1 << (PlSqlParser.TEMP_TABLE - 1890)))) !== 0) || ((((_la - 1922)) & ~0x1f) == 0 && ((1 << (_la - 1922)) & ((1 << (PlSqlParser.TEST - 1922)) | (1 << (PlSqlParser.TEXT - 1922)) | (1 << (PlSqlParser.THAN - 1922)) | (1 << (PlSqlParser.THEN - 1922)) | (1 << (PlSqlParser.THE - 1922)) | (1 << (PlSqlParser.THREAD - 1922)) | (1 << (PlSqlParser.THROUGH - 1922)) | (1 << (PlSqlParser.TIER - 1922)) | (1 << (PlSqlParser.TIES - 1922)) | (1 << (PlSqlParser.TIMEOUT - 1922)) | (1 << (PlSqlParser.TIMESTAMP_LTZ_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMESTAMP - 1922)) | (1 << (PlSqlParser.TIMESTAMP_TZ_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMESTAMP_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMES - 1922)) | (1 << (PlSqlParser.TIME - 1922)) | (1 << (PlSqlParser.TIMEZONE_ABBR - 1922)) | (1 << (PlSqlParser.TIMEZONE_HOUR - 1922)) | (1 << (PlSqlParser.TIMEZONE_MINUTE - 1922)) | (1 << (PlSqlParser.TIMEZONE_OFFSET - 1922)) | (1 << (PlSqlParser.TIMEZONE_REGION - 1922)) | (1 << (PlSqlParser.TIME_ZONE - 1922)) | (1 << (PlSqlParser.TIV_GB - 1922)) | (1 << (PlSqlParser.TIV_SSF - 1922)) | (1 << (PlSqlParser.TO_ACLID - 1922)) | (1 << (PlSqlParser.TO_BINARY_DOUBLE - 1922)) | (1 << (PlSqlParser.TO_BINARY_FLOAT - 1922)) | (1 << (PlSqlParser.TO_BLOB - 1922)) | (1 << (PlSqlParser.TO_CLOB - 1922)) | (1 << (PlSqlParser.TO_DSINTERVAL - 1922)) | (1 << (PlSqlParser.TO_LOB - 1922)))) !== 0) || ((((_la - 1954)) & ~0x1f) == 0 && ((1 << (_la - 1954)) & ((1 << (PlSqlParser.TO_MULTI_BYTE - 1954)) | (1 << (PlSqlParser.TO_NCHAR - 1954)) | (1 << (PlSqlParser.TO_NCLOB - 1954)) | (1 << (PlSqlParser.TO_NUMBER - 1954)) | (1 << (PlSqlParser.TOPLEVEL - 1954)) | (1 << (PlSqlParser.TO_SINGLE_BYTE - 1954)) | (1 << (PlSqlParser.TO_TIMESTAMP - 1954)) | (1 << (PlSqlParser.TO_TIMESTAMP_TZ - 1954)) | (1 << (PlSqlParser.TO_TIME - 1954)) | (1 << (PlSqlParser.TO_TIME_TZ - 1954)) | (1 << (PlSqlParser.TO_YMINTERVAL - 1954)) | (1 << (PlSqlParser.TRACE - 1954)) | (1 << (PlSqlParser.TRACING - 1954)) | (1 << (PlSqlParser.TRACKING - 1954)) | (1 << (PlSqlParser.TRAILING - 1954)) | (1 << (PlSqlParser.TRANSACTION - 1954)) | (1 << (PlSqlParser.TRANSFORM_DISTINCT_AGG - 1954)) | (1 << (PlSqlParser.TRANSITIONAL - 1954)) | (1 << (PlSqlParser.TRANSITION - 1954)) | (1 << (PlSqlParser.TRANSLATE - 1954)) | (1 << (PlSqlParser.TRANSLATION - 1954)) | (1 << (PlSqlParser.TREAT - 1954)) | (1 << (PlSqlParser.TRIGGERS - 1954)) | (1 << (PlSqlParser.TRIGGER - 1954)) | (1 << (PlSqlParser.TRUE - 1954)) | (1 << (PlSqlParser.TRUNCATE - 1954)) | (1 << (PlSqlParser.TRUNC - 1954)) | (1 << (PlSqlParser.TRUSTED - 1954)) | (1 << (PlSqlParser.TRUST - 1954)) | (1 << (PlSqlParser.TUNING - 1954)) | (1 << (PlSqlParser.TX - 1954)))) !== 0) || ((((_la - 1986)) & ~0x1f) == 0 && ((1 << (_la - 1986)) & ((1 << (PlSqlParser.TYPES - 1986)) | (1 << (PlSqlParser.TYPE - 1986)) | (1 << (PlSqlParser.TZ_OFFSET - 1986)) | (1 << (PlSqlParser.UB2 - 1986)) | (1 << (PlSqlParser.UBA - 1986)) | (1 << (PlSqlParser.UCS2 - 1986)) | (1 << (PlSqlParser.UID - 1986)) | (1 << (PlSqlParser.UNARCHIVED - 1986)) | (1 << (PlSqlParser.UNBOUNDED - 1986)) | (1 << (PlSqlParser.UNBOUND - 1986)) | (1 << (PlSqlParser.UNCONDITIONAL - 1986)) | (1 << (PlSqlParser.UNDER - 1986)) | (1 << (PlSqlParser.UNDO - 1986)) | (1 << (PlSqlParser.UNDROP - 1986)) | (1 << (PlSqlParser.UNIFORM - 1986)) | (1 << (PlSqlParser.UNIQUE - 1986)) | (1 << (PlSqlParser.UNISTR - 1986)) | (1 << (PlSqlParser.UNLIMITED - 1986)) | (1 << (PlSqlParser.UNLOAD - 1986)) | (1 << (PlSqlParser.UNLOCK - 1986)) | (1 << (PlSqlParser.UNMATCHED - 1986)) | (1 << (PlSqlParser.UNNEST_INNERJ_DISTINCT_VIEW - 1986)) | (1 << (PlSqlParser.UNNEST_NOSEMIJ_NODISTINCTVIEW - 1986)) | (1 << (PlSqlParser.UNNEST_SEMIJ_VIEW - 1986)) | (1 << (PlSqlParser.UNNEST - 1986)) | (1 << (PlSqlParser.UNPACKED - 1986)) | (1 << (PlSqlParser.UNPIVOT - 1986)) | (1 << (PlSqlParser.UNPLUG - 1986)) | (1 << (PlSqlParser.UNPROTECTED - 1986)) | (1 << (PlSqlParser.UNQUIESCE - 1986)) | (1 << (PlSqlParser.UNRECOVERABLE - 1986)))) !== 0) || ((((_la - 2018)) & ~0x1f) == 0 && ((1 << (_la - 2018)) & ((1 << (PlSqlParser.UNRESTRICTED - 2018)) | (1 << (PlSqlParser.UNSUBSCRIBE - 2018)) | (1 << (PlSqlParser.UNTIL - 2018)) | (1 << (PlSqlParser.UNUSABLE - 2018)) | (1 << (PlSqlParser.UNUSED - 2018)) | (1 << (PlSqlParser.UPDATABLE - 2018)) | (1 << (PlSqlParser.UPDATED - 2018)) | (1 << (PlSqlParser.UPDATEXML - 2018)) | (1 << (PlSqlParser.UPD_INDEXES - 2018)) | (1 << (PlSqlParser.UPD_JOININDEX - 2018)) | (1 << (PlSqlParser.UPGRADE - 2018)) | (1 << (PlSqlParser.UPPER - 2018)) | (1 << (PlSqlParser.UPSERT - 2018)) | (1 << (PlSqlParser.UROWID - 2018)) | (1 << (PlSqlParser.USABLE - 2018)) | (1 << (PlSqlParser.USAGE - 2018)) | (1 << (PlSqlParser.USE_ANTI - 2018)) | (1 << (PlSqlParser.USE_CONCAT - 2018)) | (1 << (PlSqlParser.USE_CUBE - 2018)) | (1 << (PlSqlParser.USE_HASH_AGGREGATION - 2018)) | (1 << (PlSqlParser.USE_HASH_GBY_FOR_PUSHDOWN - 2018)) | (1 << (PlSqlParser.USE_HASH - 2018)) | (1 << (PlSqlParser.USE_HIDDEN_PARTITIONS - 2018)) | (1 << (PlSqlParser.USE_INVISIBLE_INDEXES - 2018)) | (1 << (PlSqlParser.USE_MERGE_CARTESIAN - 2018)) | (1 << (PlSqlParser.USE_MERGE - 2018)) | (1 << (PlSqlParser.USE_NL - 2018)) | (1 << (PlSqlParser.USE_NL_WITH_INDEX - 2018)) | (1 << (PlSqlParser.USE_PRIVATE_OUTLINES - 2018)) | (1 << (PlSqlParser.USER_DATA - 2018)) | (1 << (PlSqlParser.USER_DEFINED - 2018)))) !== 0) || ((((_la - 2050)) & ~0x1f) == 0 && ((1 << (_la - 2050)) & ((1 << (PlSqlParser.USERENV - 2050)) | (1 << (PlSqlParser.USERGROUP - 2050)) | (1 << (PlSqlParser.USER_RECYCLEBIN - 2050)) | (1 << (PlSqlParser.USERS - 2050)) | (1 << (PlSqlParser.USER_TABLESPACES - 2050)) | (1 << (PlSqlParser.USER - 2050)) | (1 << (PlSqlParser.USE_SEMI - 2050)) | (1 << (PlSqlParser.USE_STORED_OUTLINES - 2050)) | (1 << (PlSqlParser.USE_TTT_FOR_GSETS - 2050)) | (1 << (PlSqlParser.USE - 2050)) | (1 << (PlSqlParser.USE_VECTOR_AGGREGATION - 2050)) | (1 << (PlSqlParser.USE_WEAK_NAME_RESL - 2050)) | (1 << (PlSqlParser.USING_NO_EXPAND - 2050)) | (1 << (PlSqlParser.USING - 2050)) | (1 << (PlSqlParser.UTF16BE - 2050)) | (1 << (PlSqlParser.UTF16LE - 2050)) | (1 << (PlSqlParser.UTF32 - 2050)) | (1 << (PlSqlParser.UTF8 - 2050)) | (1 << (PlSqlParser.V1 - 2050)) | (1 << (PlSqlParser.V2 - 2050)) | (1 << (PlSqlParser.VALIDATE - 2050)) | (1 << (PlSqlParser.VALIDATION - 2050)) | (1 << (PlSqlParser.VALID_TIME_END - 2050)) | (1 << (PlSqlParser.VALUE - 2050)) | (1 << (PlSqlParser.VARCHAR2 - 2050)) | (1 << (PlSqlParser.VARCHAR - 2050)) | (1 << (PlSqlParser.VARIABLE - 2050)) | (1 << (PlSqlParser.VAR_POP - 2050)) | (1 << (PlSqlParser.VARRAYS - 2050)) | (1 << (PlSqlParser.VARRAY - 2050)) | (1 << (PlSqlParser.VAR_SAMP - 2050)))) !== 0) || ((((_la - 2082)) & ~0x1f) == 0 && ((1 << (_la - 2082)) & ((1 << (PlSqlParser.VARYING - 2082)) | (1 << (PlSqlParser.VECTOR_READ_TRACE - 2082)) | (1 << (PlSqlParser.VECTOR_READ - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM_DIMS - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM_FACT - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM - 2082)) | (1 << (PlSqlParser.VERIFIER - 2082)) | (1 << (PlSqlParser.VERIFY - 2082)) | (1 << (PlSqlParser.VERSIONING - 2082)) | (1 << (PlSqlParser.VERSIONS_ENDSCN - 2082)) | (1 << (PlSqlParser.VERSIONS_ENDTIME - 2082)) | (1 << (PlSqlParser.VERSIONS_OPERATION - 2082)) | (1 << (PlSqlParser.VERSIONS_STARTSCN - 2082)) | (1 << (PlSqlParser.VERSIONS_STARTTIME - 2082)) | (1 << (PlSqlParser.VERSIONS - 2082)) | (1 << (PlSqlParser.VERSIONS_XID - 2082)) | (1 << (PlSqlParser.VERSION - 2082)) | (1 << (PlSqlParser.VIOLATION - 2082)) | (1 << (PlSqlParser.VIRTUAL - 2082)) | (1 << (PlSqlParser.VISIBILITY - 2082)) | (1 << (PlSqlParser.VISIBLE - 2082)) | (1 << (PlSqlParser.VOLUME - 2082)) | (1 << (PlSqlParser.VSIZE - 2082)) | (1 << (PlSqlParser.WAIT - 2082)) | (1 << (PlSqlParser.WALLET - 2082)) | (1 << (PlSqlParser.WARNING - 2082)) | (1 << (PlSqlParser.WEEKS - 2082)) | (1 << (PlSqlParser.WEEK - 2082)) | (1 << (PlSqlParser.WELLFORMED - 2082)) | (1 << (PlSqlParser.WHENEVER - 2082)) | (1 << (PlSqlParser.WHEN - 2082)))) !== 0) || ((((_la - 2115)) & ~0x1f) == 0 && ((1 << (_la - 2115)) & ((1 << (PlSqlParser.WHILE - 2115)) | (1 << (PlSqlParser.WHITESPACE - 2115)) | (1 << (PlSqlParser.WIDTH_BUCKET - 2115)) | (1 << (PlSqlParser.WITHIN - 2115)) | (1 << (PlSqlParser.WITHOUT - 2115)) | (1 << (PlSqlParser.WITH_PLSQL - 2115)) | (1 << (PlSqlParser.WORK - 2115)) | (1 << (PlSqlParser.WRAPPED - 2115)) | (1 << (PlSqlParser.WRAPPER - 2115)) | (1 << (PlSqlParser.WRITE - 2115)) | (1 << (PlSqlParser.XDB_FASTPATH_INSERT - 2115)) | (1 << (PlSqlParser.X_DYN_PRUNE - 2115)) | (1 << (PlSqlParser.XID - 2115)) | (1 << (PlSqlParser.XML2OBJECT - 2115)) | (1 << (PlSqlParser.XMLAGG - 2115)) | (1 << (PlSqlParser.XMLATTRIBUTES - 2115)) | (1 << (PlSqlParser.XMLCAST - 2115)) | (1 << (PlSqlParser.XMLCDATA - 2115)) | (1 << (PlSqlParser.XMLCOLATTVAL - 2115)) | (1 << (PlSqlParser.XMLCOMMENT - 2115)) | (1 << (PlSqlParser.XMLCONCAT - 2115)) | (1 << (PlSqlParser.XMLDIFF - 2115)) | (1 << (PlSqlParser.XML_DML_RWT_STMT - 2115)) | (1 << (PlSqlParser.XMLELEMENT - 2115)) | (1 << (PlSqlParser.XMLEXISTS2 - 2115)) | (1 << (PlSqlParser.XMLEXISTS - 2115)) | (1 << (PlSqlParser.XMLFOREST - 2115)) | (1 << (PlSqlParser.XMLINDEX_REWRITE_IN_SELECT - 2115)) | (1 << (PlSqlParser.XMLINDEX_REWRITE - 2115)))) !== 0) || ((((_la - 2147)) & ~0x1f) == 0 && ((1 << (_la - 2147)) & ((1 << (PlSqlParser.XMLINDEX_SEL_IDX_TBL - 2147)) | (1 << (PlSqlParser.XMLISNODE - 2147)) | (1 << (PlSqlParser.XMLISVALID - 2147)) | (1 << (PlSqlParser.XMLNAMESPACES - 2147)) | (1 << (PlSqlParser.XMLPARSE - 2147)) | (1 << (PlSqlParser.XMLPATCH - 2147)) | (1 << (PlSqlParser.XMLPI - 2147)) | (1 << (PlSqlParser.XMLQUERYVAL - 2147)) | (1 << (PlSqlParser.XMLQUERY - 2147)) | (1 << (PlSqlParser.XMLROOT - 2147)) | (1 << (PlSqlParser.XMLSCHEMA - 2147)) | (1 << (PlSqlParser.XMLSERIALIZE - 2147)) | (1 << (PlSqlParser.XMLTABLE - 2147)) | (1 << (PlSqlParser.XMLTRANSFORMBLOB - 2147)) | (1 << (PlSqlParser.XMLTRANSFORM - 2147)) | (1 << (PlSqlParser.XMLTYPE - 2147)) | (1 << (PlSqlParser.XML - 2147)) | (1 << (PlSqlParser.XPATHTABLE - 2147)) | (1 << (PlSqlParser.XS_SYS_CONTEXT - 2147)) | (1 << (PlSqlParser.XS - 2147)) | (1 << (PlSqlParser.YEARS - 2147)) | (1 << (PlSqlParser.YEAR - 2147)) | (1 << (PlSqlParser.YES - 2147)) | (1 << (PlSqlParser.YMINTERVAL_UNCONSTRAINED - 2147)) | (1 << (PlSqlParser.ZONEMAP - 2147)) | (1 << (PlSqlParser.ZONE - 2147)) | (1 << (PlSqlParser.PREDICTION - 2147)) | (1 << (PlSqlParser.PREDICTION_BOUNDS - 2147)) | (1 << (PlSqlParser.PREDICTION_COST - 2147)) | (1 << (PlSqlParser.PREDICTION_DETAILS - 2147)) | (1 << (PlSqlParser.PREDICTION_PROBABILITY - 2147)))) !== 0) || ((((_la - 2179)) & ~0x1f) == 0 && ((1 << (_la - 2179)) & ((1 << (PlSqlParser.PREDICTION_SET - 2179)) | (1 << (PlSqlParser.CUME_DIST - 2179)) | (1 << (PlSqlParser.DENSE_RANK - 2179)) | (1 << (PlSqlParser.LISTAGG - 2179)) | (1 << (PlSqlParser.PERCENT_RANK - 2179)) | (1 << (PlSqlParser.PERCENTILE_CONT - 2179)) | (1 << (PlSqlParser.PERCENTILE_DISC - 2179)) | (1 << (PlSqlParser.RANK - 2179)) | (1 << (PlSqlParser.AVG - 2179)) | (1 << (PlSqlParser.CORR - 2179)) | (1 << (PlSqlParser.COVAR_ - 2179)) | (1 << (PlSqlParser.LAG - 2179)) | (1 << (PlSqlParser.LEAD - 2179)) | (1 << (PlSqlParser.MAX - 2179)) | (1 << (PlSqlParser.MEDIAN - 2179)) | (1 << (PlSqlParser.MIN - 2179)) | (1 << (PlSqlParser.NTILE - 2179)) | (1 << (PlSqlParser.NVL - 2179)) | (1 << (PlSqlParser.RATIO_TO_REPORT - 2179)) | (1 << (PlSqlParser.REGR_ - 2179)) | (1 << (PlSqlParser.ROUND - 2179)) | (1 << (PlSqlParser.ROW_NUMBER - 2179)) | (1 << (PlSqlParser.SUBSTR - 2179)) | (1 << (PlSqlParser.TO_CHAR - 2179)) | (1 << (PlSqlParser.TRIM - 2179)) | (1 << (PlSqlParser.SUM - 2179)) | (1 << (PlSqlParser.STDDEV - 2179)) | (1 << (PlSqlParser.VAR_ - 2179)) | (1 << (PlSqlParser.VARIANCE - 2179)) | (1 << (PlSqlParser.LEAST - 2179)) | (1 << (PlSqlParser.GREATEST - 2179)))) !== 0) || ((((_la - 2211)) & ~0x1f) == 0 && ((1 << (_la - 2211)) & ((1 << (PlSqlParser.TO_DATE - 2211)) | (1 << (PlSqlParser.NATIONAL_CHAR_STRING_LIT - 2211)) | (1 << (PlSqlParser.PERIOD - 2211)) | (1 << (PlSqlParser.CHAR_STRING - 2211)) | (1 << (PlSqlParser.DELIMITED_ID - 2211)) | (1 << (PlSqlParser.COMMA - 2211)))) !== 0) || _la===PlSqlParser.INTRODUCER || _la===PlSqlParser.REGULAR_ID);
+ this.state = 4381;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Object_view_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_object_view_clause;
+ return this;
+}
+
+Object_view_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Object_view_clauseContext.prototype.constructor = Object_view_clauseContext;
+
+Object_view_clauseContext.prototype.OF = function() {
+ return this.getToken(PlSqlParser.OF, 0);
+};
+
+Object_view_clauseContext.prototype.type_name = function() {
+ return this.getTypedRuleContext(Type_nameContext,0);
+};
+
+Object_view_clauseContext.prototype.WITH = function() {
+ return this.getToken(PlSqlParser.WITH, 0);
+};
+
+Object_view_clauseContext.prototype.OBJECT = function() {
+ return this.getToken(PlSqlParser.OBJECT, 0);
+};
+
+Object_view_clauseContext.prototype.UNDER = function() {
+ return this.getToken(PlSqlParser.UNDER, 0);
+};
+
+Object_view_clauseContext.prototype.tableview_name = function() {
+ return this.getTypedRuleContext(Tableview_nameContext,0);
+};
+
+Object_view_clauseContext.prototype.IDENTIFIER = function() {
+ return this.getToken(PlSqlParser.IDENTIFIER, 0);
+};
+
+Object_view_clauseContext.prototype.ID = function() {
+ return this.getToken(PlSqlParser.ID, 0);
+};
+
+Object_view_clauseContext.prototype.OID = function() {
+ return this.getToken(PlSqlParser.OID, 0);
+};
+
+Object_view_clauseContext.prototype.LEFT_PAREN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.LEFT_PAREN);
+ } else {
+ return this.getToken(PlSqlParser.LEFT_PAREN, i);
+ }
+};
+
+
+Object_view_clauseContext.prototype.RIGHT_PAREN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.RIGHT_PAREN);
+ } else {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, i);
+ }
+};
+
+
+Object_view_clauseContext.prototype.DEFAULT = function() {
+ return this.getToken(PlSqlParser.DEFAULT, 0);
+};
+
+Object_view_clauseContext.prototype.REGULAR_ID = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.REGULAR_ID);
+ } else {
+ return this.getToken(PlSqlParser.REGULAR_ID, i);
+ }
+};
+
+
+Object_view_clauseContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Object_view_clauseContext.prototype.out_of_line_constraint = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Out_of_line_constraintContext);
+ } else {
+ return this.getTypedRuleContext(Out_of_line_constraintContext,i);
+ }
+};
+
+Object_view_clauseContext.prototype.inline_constraint = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Inline_constraintContext);
+ } else {
+ return this.getTypedRuleContext(Inline_constraintContext,i);
+ }
+};
+
+Object_view_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterObject_view_clause(this);
+ }
+};
+
+Object_view_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitObject_view_clause(this);
+ }
+};
+
+Object_view_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitObject_view_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Object_view_clauseContext = Object_view_clauseContext;
+
+PlSqlParser.prototype.object_view_clause = function() {
+
+ var localctx = new Object_view_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 414, PlSqlParser.RULE_object_view_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4383;
+ this.match(PlSqlParser.OF);
+ this.state = 4384;
+ this.type_name();
+ this.state = 4403;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.WITH:
+ this.state = 4385;
+ this.match(PlSqlParser.WITH);
+ this.state = 4386;
+ this.match(PlSqlParser.OBJECT);
+ this.state = 4387;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.IDENTIFIER || _la===PlSqlParser.ID || _la===PlSqlParser.OID)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 4399;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.DEFAULT:
+ this.state = 4388;
+ this.match(PlSqlParser.DEFAULT);
+ break;
+ case PlSqlParser.LEFT_PAREN:
+ this.state = 4389;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 4390;
+ this.match(PlSqlParser.REGULAR_ID);
+ this.state = 4395;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 4391;
+ this.match(PlSqlParser.COMMA);
+ this.state = 4392;
+ this.match(PlSqlParser.REGULAR_ID);
+ this.state = 4397;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 4398;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ break;
+ case PlSqlParser.UNDER:
+ this.state = 4401;
+ this.match(PlSqlParser.UNDER);
+ this.state = 4402;
+ this.tableview_name();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 4422;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.LEFT_PAREN) {
+ this.state = 4405;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 4414;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 4407;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.COMMA) {
+ this.state = 4406;
+ this.match(PlSqlParser.COMMA);
+ }
+
+ this.state = 4412;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.CHECK:
+ case PlSqlParser.CONSTRAINT:
+ case PlSqlParser.FOREIGN:
+ case PlSqlParser.PRIMARY:
+ case PlSqlParser.UNIQUE:
+ this.state = 4409;
+ this.out_of_line_constraint();
+ break;
+ case PlSqlParser.REGULAR_ID:
+ this.state = 4410;
+ this.match(PlSqlParser.REGULAR_ID);
+ this.state = 4411;
+ this.inline_constraint();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 4416;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(_la===PlSqlParser.CHECK || _la===PlSqlParser.CONSTRAINT || _la===PlSqlParser.FOREIGN || _la===PlSqlParser.PRIMARY || _la===PlSqlParser.UNIQUE || _la===PlSqlParser.COMMA || _la===PlSqlParser.REGULAR_ID);
+ this.state = 4418;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ this.state = 4424;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Inline_constraintContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_inline_constraint;
+ return this;
+}
+
+Inline_constraintContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Inline_constraintContext.prototype.constructor = Inline_constraintContext;
+
+Inline_constraintContext.prototype.NULL_ = function() {
+ return this.getToken(PlSqlParser.NULL_, 0);
+};
+
+Inline_constraintContext.prototype.UNIQUE = function() {
+ return this.getToken(PlSqlParser.UNIQUE, 0);
+};
+
+Inline_constraintContext.prototype.PRIMARY = function() {
+ return this.getToken(PlSqlParser.PRIMARY, 0);
+};
+
+Inline_constraintContext.prototype.KEY = function() {
+ return this.getToken(PlSqlParser.KEY, 0);
+};
+
+Inline_constraintContext.prototype.references_clause = function() {
+ return this.getTypedRuleContext(References_clauseContext,0);
+};
+
+Inline_constraintContext.prototype.check_constraint = function() {
+ return this.getTypedRuleContext(Check_constraintContext,0);
+};
+
+Inline_constraintContext.prototype.CONSTRAINT = function() {
+ return this.getToken(PlSqlParser.CONSTRAINT, 0);
+};
+
+Inline_constraintContext.prototype.constraint_name = function() {
+ return this.getTypedRuleContext(Constraint_nameContext,0);
+};
+
+Inline_constraintContext.prototype.constraint_state = function() {
+ return this.getTypedRuleContext(Constraint_stateContext,0);
+};
+
+Inline_constraintContext.prototype.NOT = function() {
+ return this.getToken(PlSqlParser.NOT, 0);
+};
+
+Inline_constraintContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterInline_constraint(this);
+ }
+};
+
+Inline_constraintContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitInline_constraint(this);
+ }
+};
+
+Inline_constraintContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitInline_constraint(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Inline_constraintContext = Inline_constraintContext;
+
+PlSqlParser.prototype.inline_constraint = function() {
+
+ var localctx = new Inline_constraintContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 416, PlSqlParser.RULE_inline_constraint);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4427;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.CONSTRAINT) {
+ this.state = 4425;
+ this.match(PlSqlParser.CONSTRAINT);
+ this.state = 4426;
+ this.constraint_name();
+ }
+
+ this.state = 4438;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.NOT:
+ case PlSqlParser.NULL_:
+ this.state = 4430;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.NOT) {
+ this.state = 4429;
+ this.match(PlSqlParser.NOT);
+ }
+
+ this.state = 4432;
+ this.match(PlSqlParser.NULL_);
+ break;
+ case PlSqlParser.UNIQUE:
+ this.state = 4433;
+ this.match(PlSqlParser.UNIQUE);
+ break;
+ case PlSqlParser.PRIMARY:
+ this.state = 4434;
+ this.match(PlSqlParser.PRIMARY);
+ this.state = 4435;
+ this.match(PlSqlParser.KEY);
+ break;
+ case PlSqlParser.REFERENCES:
+ this.state = 4436;
+ this.references_clause();
+ break;
+ case PlSqlParser.CHECK:
+ this.state = 4437;
+ this.check_constraint();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 4441;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,425,this._ctx);
+ if(la_===1) {
+ this.state = 4440;
+ this.constraint_state();
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Inline_ref_constraintContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_inline_ref_constraint;
+ return this;
+}
+
+Inline_ref_constraintContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Inline_ref_constraintContext.prototype.constructor = Inline_ref_constraintContext;
+
+Inline_ref_constraintContext.prototype.SCOPE = function() {
+ return this.getToken(PlSqlParser.SCOPE, 0);
+};
+
+Inline_ref_constraintContext.prototype.IS = function() {
+ return this.getToken(PlSqlParser.IS, 0);
+};
+
+Inline_ref_constraintContext.prototype.tableview_name = function() {
+ return this.getTypedRuleContext(Tableview_nameContext,0);
+};
+
+Inline_ref_constraintContext.prototype.WITH = function() {
+ return this.getToken(PlSqlParser.WITH, 0);
+};
+
+Inline_ref_constraintContext.prototype.ROWID = function() {
+ return this.getToken(PlSqlParser.ROWID, 0);
+};
+
+Inline_ref_constraintContext.prototype.references_clause = function() {
+ return this.getTypedRuleContext(References_clauseContext,0);
+};
+
+Inline_ref_constraintContext.prototype.CONSTRAINT = function() {
+ return this.getToken(PlSqlParser.CONSTRAINT, 0);
+};
+
+Inline_ref_constraintContext.prototype.constraint_name = function() {
+ return this.getTypedRuleContext(Constraint_nameContext,0);
+};
+
+Inline_ref_constraintContext.prototype.constraint_state = function() {
+ return this.getTypedRuleContext(Constraint_stateContext,0);
+};
+
+Inline_ref_constraintContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterInline_ref_constraint(this);
+ }
+};
+
+Inline_ref_constraintContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitInline_ref_constraint(this);
+ }
+};
+
+Inline_ref_constraintContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitInline_ref_constraint(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Inline_ref_constraintContext = Inline_ref_constraintContext;
+
+PlSqlParser.prototype.inline_ref_constraint = function() {
+
+ var localctx = new Inline_ref_constraintContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 418, PlSqlParser.RULE_inline_ref_constraint);
+ var _la = 0; // Token type
+ try {
+ this.state = 4456;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.SCOPE:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4443;
+ this.match(PlSqlParser.SCOPE);
+ this.state = 4444;
+ this.match(PlSqlParser.IS);
+ this.state = 4445;
+ this.tableview_name();
+ break;
+ case PlSqlParser.WITH:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 4446;
+ this.match(PlSqlParser.WITH);
+ this.state = 4447;
+ this.match(PlSqlParser.ROWID);
+ break;
+ case PlSqlParser.CONSTRAINT:
+ case PlSqlParser.REFERENCES:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 4450;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.CONSTRAINT) {
+ this.state = 4448;
+ this.match(PlSqlParser.CONSTRAINT);
+ this.state = 4449;
+ this.constraint_name();
+ }
+
+ this.state = 4452;
+ this.references_clause();
+ this.state = 4454;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,427,this._ctx);
+ if(la_===1) {
+ this.state = 4453;
+ this.constraint_state();
+
+ }
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Out_of_line_ref_constraintContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_out_of_line_ref_constraint;
+ this.ref_col_or_attr = null; // Regular_idContext
+ return this;
+}
+
+Out_of_line_ref_constraintContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Out_of_line_ref_constraintContext.prototype.constructor = Out_of_line_ref_constraintContext;
+
+Out_of_line_ref_constraintContext.prototype.SCOPE = function() {
+ return this.getToken(PlSqlParser.SCOPE, 0);
+};
+
+Out_of_line_ref_constraintContext.prototype.FOR = function() {
+ return this.getToken(PlSqlParser.FOR, 0);
+};
+
+Out_of_line_ref_constraintContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Out_of_line_ref_constraintContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Out_of_line_ref_constraintContext.prototype.IS = function() {
+ return this.getToken(PlSqlParser.IS, 0);
+};
+
+Out_of_line_ref_constraintContext.prototype.tableview_name = function() {
+ return this.getTypedRuleContext(Tableview_nameContext,0);
+};
+
+Out_of_line_ref_constraintContext.prototype.regular_id = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Regular_idContext);
+ } else {
+ return this.getTypedRuleContext(Regular_idContext,i);
+ }
+};
+
+Out_of_line_ref_constraintContext.prototype.REF = function() {
+ return this.getToken(PlSqlParser.REF, 0);
+};
+
+Out_of_line_ref_constraintContext.prototype.WITH = function() {
+ return this.getToken(PlSqlParser.WITH, 0);
+};
+
+Out_of_line_ref_constraintContext.prototype.ROWID = function() {
+ return this.getToken(PlSqlParser.ROWID, 0);
+};
+
+Out_of_line_ref_constraintContext.prototype.FOREIGN = function() {
+ return this.getToken(PlSqlParser.FOREIGN, 0);
+};
+
+Out_of_line_ref_constraintContext.prototype.KEY = function() {
+ return this.getToken(PlSqlParser.KEY, 0);
+};
+
+Out_of_line_ref_constraintContext.prototype.references_clause = function() {
+ return this.getTypedRuleContext(References_clauseContext,0);
+};
+
+Out_of_line_ref_constraintContext.prototype.CONSTRAINT = function() {
+ return this.getToken(PlSqlParser.CONSTRAINT, 0);
+};
+
+Out_of_line_ref_constraintContext.prototype.constraint_name = function() {
+ return this.getTypedRuleContext(Constraint_nameContext,0);
+};
+
+Out_of_line_ref_constraintContext.prototype.constraint_state = function() {
+ return this.getTypedRuleContext(Constraint_stateContext,0);
+};
+
+Out_of_line_ref_constraintContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Out_of_line_ref_constraintContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterOut_of_line_ref_constraint(this);
+ }
+};
+
+Out_of_line_ref_constraintContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitOut_of_line_ref_constraint(this);
+ }
+};
+
+Out_of_line_ref_constraintContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitOut_of_line_ref_constraint(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Out_of_line_ref_constraintContext = Out_of_line_ref_constraintContext;
+
+PlSqlParser.prototype.out_of_line_ref_constraint = function() {
+
+ var localctx = new Out_of_line_ref_constraintContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 420, PlSqlParser.RULE_out_of_line_ref_constraint);
+ var _la = 0; // Token type
+ try {
+ this.state = 4493;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.SCOPE:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4458;
+ this.match(PlSqlParser.SCOPE);
+ this.state = 4459;
+ this.match(PlSqlParser.FOR);
+ this.state = 4460;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 4461;
+ localctx.ref_col_or_attr = this.regular_id();
+ this.state = 4462;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ this.state = 4463;
+ this.match(PlSqlParser.IS);
+ this.state = 4464;
+ this.tableview_name();
+ break;
+ case PlSqlParser.REF:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 4466;
+ this.match(PlSqlParser.REF);
+ this.state = 4467;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 4468;
+ localctx.ref_col_or_attr = this.regular_id();
+ this.state = 4469;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ this.state = 4470;
+ this.match(PlSqlParser.WITH);
+ this.state = 4471;
+ this.match(PlSqlParser.ROWID);
+ break;
+ case PlSqlParser.CONSTRAINT:
+ case PlSqlParser.FOREIGN:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 4475;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.CONSTRAINT) {
+ this.state = 4473;
+ this.match(PlSqlParser.CONSTRAINT);
+ this.state = 4474;
+ this.constraint_name();
+ }
+
+ this.state = 4477;
+ this.match(PlSqlParser.FOREIGN);
+ this.state = 4478;
+ this.match(PlSqlParser.KEY);
+ this.state = 4479;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 4484;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 4481;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.COMMA) {
+ this.state = 4480;
+ this.match(PlSqlParser.COMMA);
+ }
+
+ this.state = 4483;
+ localctx.ref_col_or_attr = this.regular_id();
+ this.state = 4486;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while((((_la) & ~0x1f) == 0 && ((1 << _la) & ((1 << PlSqlParser.ABORT) | (1 << PlSqlParser.ABS) | (1 << PlSqlParser.ACCESS) | (1 << PlSqlParser.ACCESSED) | (1 << PlSqlParser.ACCOUNT) | (1 << PlSqlParser.ACL) | (1 << PlSqlParser.ACOS) | (1 << PlSqlParser.ACTION) | (1 << PlSqlParser.ACTIONS) | (1 << PlSqlParser.ACTIVATE) | (1 << PlSqlParser.ACTIVE) | (1 << PlSqlParser.ACTIVE_COMPONENT) | (1 << PlSqlParser.ACTIVE_DATA) | (1 << PlSqlParser.ACTIVE_FUNCTION) | (1 << PlSqlParser.ACTIVE_TAG) | (1 << PlSqlParser.ACTIVITY) | (1 << PlSqlParser.ADAPTIVE_PLAN) | (1 << PlSqlParser.ADD) | (1 << PlSqlParser.ADD_COLUMN) | (1 << PlSqlParser.ADD_GROUP) | (1 << PlSqlParser.ADD_MONTHS) | (1 << PlSqlParser.ADJ_DATE) | (1 << PlSqlParser.ADMIN) | (1 << PlSqlParser.ADMINISTER) | (1 << PlSqlParser.ADMINISTRATOR) | (1 << PlSqlParser.ADVANCED) | (1 << PlSqlParser.ADVISE) | (1 << PlSqlParser.ADVISOR) | (1 << PlSqlParser.AFD_DISKSTRING) | (1 << PlSqlParser.AFTER) | (1 << PlSqlParser.AGENT))) !== 0) || ((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (PlSqlParser.AGGREGATE - 32)) | (1 << (PlSqlParser.A_LETTER - 32)) | (1 << (PlSqlParser.ALIAS - 32)) | (1 << (PlSqlParser.ALLOCATE - 32)) | (1 << (PlSqlParser.ALLOW - 32)) | (1 << (PlSqlParser.ALL_ROWS - 32)) | (1 << (PlSqlParser.ALWAYS - 32)) | (1 << (PlSqlParser.ANALYZE - 32)) | (1 << (PlSqlParser.ANCILLARY - 32)) | (1 << (PlSqlParser.AND_EQUAL - 32)) | (1 << (PlSqlParser.ANOMALY - 32)) | (1 << (PlSqlParser.ANSI_REARCH - 32)) | (1 << (PlSqlParser.ANTIJOIN - 32)) | (1 << (PlSqlParser.ANYSCHEMA - 32)) | (1 << (PlSqlParser.APPEND - 32)) | (1 << (PlSqlParser.APPENDCHILDXML - 32)) | (1 << (PlSqlParser.APPEND_VALUES - 32)) | (1 << (PlSqlParser.APPLICATION - 32)) | (1 << (PlSqlParser.APPLY - 32)) | (1 << (PlSqlParser.APPROX_COUNT_DISTINCT - 32)) | (1 << (PlSqlParser.ARCHIVAL - 32)) | (1 << (PlSqlParser.ARCHIVE - 32)) | (1 << (PlSqlParser.ARCHIVED - 32)) | (1 << (PlSqlParser.ARCHIVELOG - 32)) | (1 << (PlSqlParser.ARRAY - 32)) | (1 << (PlSqlParser.ASCII - 32)))) !== 0) || ((((_la - 64)) & ~0x1f) == 0 && ((1 << (_la - 64)) & ((1 << (PlSqlParser.ASCIISTR - 64)) | (1 << (PlSqlParser.ASIN - 64)) | (1 << (PlSqlParser.ASIS - 64)) | (1 << (PlSqlParser.ASSEMBLY - 64)) | (1 << (PlSqlParser.ASSIGN - 64)) | (1 << (PlSqlParser.ASSOCIATE - 64)) | (1 << (PlSqlParser.ASYNC - 64)) | (1 << (PlSqlParser.ASYNCHRONOUS - 64)) | (1 << (PlSqlParser.ATAN2 - 64)) | (1 << (PlSqlParser.ATAN - 64)) | (1 << (PlSqlParser.AT - 64)) | (1 << (PlSqlParser.ATTRIBUTE - 64)) | (1 << (PlSqlParser.ATTRIBUTES - 64)) | (1 << (PlSqlParser.AUTHENTICATED - 64)) | (1 << (PlSqlParser.AUTHENTICATION - 64)) | (1 << (PlSqlParser.AUTHID - 64)) | (1 << (PlSqlParser.AUTHORIZATION - 64)) | (1 << (PlSqlParser.AUTOALLOCATE - 64)) | (1 << (PlSqlParser.AUTO - 64)) | (1 << (PlSqlParser.AUTOEXTEND - 64)) | (1 << (PlSqlParser.AUTO_LOGIN - 64)) | (1 << (PlSqlParser.AUTOMATIC - 64)) | (1 << (PlSqlParser.AUTONOMOUS_TRANSACTION - 64)) | (1 << (PlSqlParser.AUTO_REOPTIMIZE - 64)) | (1 << (PlSqlParser.AVAILABILITY - 64)) | (1 << (PlSqlParser.AVRO - 64)) | (1 << (PlSqlParser.BACKGROUND - 64)) | (1 << (PlSqlParser.BACKUP - 64)) | (1 << (PlSqlParser.BASIC - 64)))) !== 0) || ((((_la - 96)) & ~0x1f) == 0 && ((1 << (_la - 96)) & ((1 << (PlSqlParser.BASICFILE - 96)) | (1 << (PlSqlParser.BATCH - 96)) | (1 << (PlSqlParser.BATCHSIZE - 96)) | (1 << (PlSqlParser.BATCH_TABLE_ACCESS_BY_ROWID - 96)) | (1 << (PlSqlParser.BECOME - 96)) | (1 << (PlSqlParser.BEFORE - 96)) | (1 << (PlSqlParser.BEGIN - 96)) | (1 << (PlSqlParser.BEGINNING - 96)) | (1 << (PlSqlParser.BEGIN_OUTLINE_DATA - 96)) | (1 << (PlSqlParser.BEHALF - 96)) | (1 << (PlSqlParser.BEQUEATH - 96)) | (1 << (PlSqlParser.BFILE - 96)) | (1 << (PlSqlParser.BFILENAME - 96)) | (1 << (PlSqlParser.BIGFILE - 96)) | (1 << (PlSqlParser.BINARY - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE_INFINITY - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE_NAN - 96)) | (1 << (PlSqlParser.BINARY_FLOAT - 96)) | (1 << (PlSqlParser.BINARY_FLOAT_INFINITY - 96)) | (1 << (PlSqlParser.BINARY_FLOAT_NAN - 96)) | (1 << (PlSqlParser.BINARY_INTEGER - 96)) | (1 << (PlSqlParser.BIND_AWARE - 96)) | (1 << (PlSqlParser.BINDING - 96)) | (1 << (PlSqlParser.BIN_TO_NUM - 96)) | (1 << (PlSqlParser.BITAND - 96)) | (1 << (PlSqlParser.BITMAP_AND - 96)) | (1 << (PlSqlParser.BITMAP - 96)) | (1 << (PlSqlParser.BITMAPS - 96)) | (1 << (PlSqlParser.BITMAP_TREE - 96)) | (1 << (PlSqlParser.BITS - 96)))) !== 0) || ((((_la - 128)) & ~0x1f) == 0 && ((1 << (_la - 128)) & ((1 << (PlSqlParser.BLOB - 128)) | (1 << (PlSqlParser.BLOCK - 128)) | (1 << (PlSqlParser.BLOCK_RANGE - 128)) | (1 << (PlSqlParser.BLOCKS - 128)) | (1 << (PlSqlParser.BLOCKSIZE - 128)) | (1 << (PlSqlParser.BODY - 128)) | (1 << (PlSqlParser.BOOLEAN - 128)) | (1 << (PlSqlParser.BOTH - 128)) | (1 << (PlSqlParser.BOUND - 128)) | (1 << (PlSqlParser.BRANCH - 128)) | (1 << (PlSqlParser.BREADTH - 128)) | (1 << (PlSqlParser.BROADCAST - 128)) | (1 << (PlSqlParser.BSON - 128)) | (1 << (PlSqlParser.BUFFER - 128)) | (1 << (PlSqlParser.BUFFER_CACHE - 128)) | (1 << (PlSqlParser.BUFFER_POOL - 128)) | (1 << (PlSqlParser.BUILD - 128)) | (1 << (PlSqlParser.BULK - 128)) | (1 << (PlSqlParser.BYPASS_RECURSIVE_CHECK - 128)) | (1 << (PlSqlParser.BYPASS_UJVC - 128)) | (1 << (PlSqlParser.BYTE - 128)) | (1 << (PlSqlParser.CACHE - 128)) | (1 << (PlSqlParser.CACHE_CB - 128)) | (1 << (PlSqlParser.CACHE_INSTANCES - 128)) | (1 << (PlSqlParser.CACHE_TEMP_TABLE - 128)) | (1 << (PlSqlParser.CACHING - 128)) | (1 << (PlSqlParser.CALCULATED - 128)) | (1 << (PlSqlParser.CALLBACK - 128)) | (1 << (PlSqlParser.CALL - 128)) | (1 << (PlSqlParser.CANCEL - 128)))) !== 0) || ((((_la - 160)) & ~0x1f) == 0 && ((1 << (_la - 160)) & ((1 << (PlSqlParser.CAPACITY - 160)) | (1 << (PlSqlParser.CARDINALITY - 160)) | (1 << (PlSqlParser.CASCADE - 160)) | (1 << (PlSqlParser.CASE - 160)) | (1 << (PlSqlParser.CAST - 160)) | (1 << (PlSqlParser.CATEGORY - 160)) | (1 << (PlSqlParser.CDBDEFAULT - 160)) | (1 << (PlSqlParser.CEIL - 160)) | (1 << (PlSqlParser.CELL_FLASH_CACHE - 160)) | (1 << (PlSqlParser.CERTIFICATE - 160)) | (1 << (PlSqlParser.CFILE - 160)) | (1 << (PlSqlParser.CHAINED - 160)) | (1 << (PlSqlParser.CHANGE - 160)) | (1 << (PlSqlParser.CHANGE_DUPKEY_ERROR_INDEX - 160)) | (1 << (PlSqlParser.CHARACTER - 160)) | (1 << (PlSqlParser.CHAR - 160)) | (1 << (PlSqlParser.CHAR_CS - 160)) | (1 << (PlSqlParser.CHARTOROWID - 160)) | (1 << (PlSqlParser.CHECK_ACL_REWRITE - 160)) | (1 << (PlSqlParser.CHECKPOINT - 160)) | (1 << (PlSqlParser.CHILD - 160)) | (1 << (PlSqlParser.CHOOSE - 160)) | (1 << (PlSqlParser.CHR - 160)) | (1 << (PlSqlParser.CHUNK - 160)) | (1 << (PlSqlParser.CLASS - 160)) | (1 << (PlSqlParser.CLASSIFIER - 160)) | (1 << (PlSqlParser.CLEANUP - 160)) | (1 << (PlSqlParser.CLEAR - 160)) | (1 << (PlSqlParser.C_LETTER - 160)) | (1 << (PlSqlParser.CLIENT - 160)))) !== 0) || ((((_la - 192)) & ~0x1f) == 0 && ((1 << (_la - 192)) & ((1 << (PlSqlParser.CLOB - 192)) | (1 << (PlSqlParser.CLONE - 192)) | (1 << (PlSqlParser.CLOSE_CACHED_OPEN_CURSORS - 192)) | (1 << (PlSqlParser.CLOSE - 192)) | (1 << (PlSqlParser.CLUSTER_BY_ROWID - 192)) | (1 << (PlSqlParser.CLUSTER - 192)) | (1 << (PlSqlParser.CLUSTER_DETAILS - 192)) | (1 << (PlSqlParser.CLUSTER_DISTANCE - 192)) | (1 << (PlSqlParser.CLUSTER_ID - 192)) | (1 << (PlSqlParser.CLUSTERING - 192)) | (1 << (PlSqlParser.CLUSTERING_FACTOR - 192)) | (1 << (PlSqlParser.CLUSTER_PROBABILITY - 192)) | (1 << (PlSqlParser.CLUSTER_SET - 192)) | (1 << (PlSqlParser.COALESCE - 192)) | (1 << (PlSqlParser.COALESCE_SQ - 192)) | (1 << (PlSqlParser.COARSE - 192)) | (1 << (PlSqlParser.CO_AUTH_IND - 192)) | (1 << (PlSqlParser.COLD - 192)) | (1 << (PlSqlParser.COLLECT - 192)) | (1 << (PlSqlParser.COLUMNAR - 192)) | (1 << (PlSqlParser.COLUMN_AUTH_INDICATOR - 192)) | (1 << (PlSqlParser.COLUMN - 192)) | (1 << (PlSqlParser.COLUMNS - 192)) | (1 << (PlSqlParser.COLUMN_STATS - 192)) | (1 << (PlSqlParser.COLUMN_VALUE - 192)) | (1 << (PlSqlParser.COMMENT - 192)) | (1 << (PlSqlParser.COMMIT - 192)) | (1 << (PlSqlParser.COMMITTED - 192)) | (1 << (PlSqlParser.COMMON_DATA - 192)) | (1 << (PlSqlParser.COMPACT - 192)) | (1 << (PlSqlParser.COMPATIBILITY - 192)) | (1 << (PlSqlParser.COMPILE - 192)))) !== 0) || ((((_la - 224)) & ~0x1f) == 0 && ((1 << (_la - 224)) & ((1 << (PlSqlParser.COMPLETE - 224)) | (1 << (PlSqlParser.COMPLIANCE - 224)) | (1 << (PlSqlParser.COMPONENT - 224)) | (1 << (PlSqlParser.COMPONENTS - 224)) | (1 << (PlSqlParser.COMPOSE - 224)) | (1 << (PlSqlParser.COMPOSITE - 224)) | (1 << (PlSqlParser.COMPOSITE_LIMIT - 224)) | (1 << (PlSqlParser.COMPOUND - 224)) | (1 << (PlSqlParser.COMPUTE - 224)) | (1 << (PlSqlParser.CONCAT - 224)) | (1 << (PlSqlParser.CON_DBID_TO_ID - 224)) | (1 << (PlSqlParser.CONDITIONAL - 224)) | (1 << (PlSqlParser.CONDITION - 224)) | (1 << (PlSqlParser.CONFIRM - 224)) | (1 << (PlSqlParser.CONFORMING - 224)) | (1 << (PlSqlParser.CON_GUID_TO_ID - 224)) | (1 << (PlSqlParser.CON_ID - 224)) | (1 << (PlSqlParser.CON_NAME_TO_ID - 224)) | (1 << (PlSqlParser.CONNECT_BY_CB_WHR_ONLY - 224)) | (1 << (PlSqlParser.CONNECT_BY_COMBINE_SW - 224)) | (1 << (PlSqlParser.CONNECT_BY_COST_BASED - 224)) | (1 << (PlSqlParser.CONNECT_BY_ELIM_DUPS - 224)) | (1 << (PlSqlParser.CONNECT_BY_FILTERING - 224)) | (1 << (PlSqlParser.CONNECT_BY_ISCYCLE - 224)) | (1 << (PlSqlParser.CONNECT_BY_ISLEAF - 224)) | (1 << (PlSqlParser.CONNECT_BY_ROOT - 224)) | (1 << (PlSqlParser.CONNECT_TIME - 224)) | (1 << (PlSqlParser.CONSIDER - 224)) | (1 << (PlSqlParser.CONSISTENT - 224)) | (1 << (PlSqlParser.CONSTANT - 224)))) !== 0) || ((((_la - 256)) & ~0x1f) == 0 && ((1 << (_la - 256)) & ((1 << (PlSqlParser.CONST - 256)) | (1 << (PlSqlParser.CONSTRAINT - 256)) | (1 << (PlSqlParser.CONSTRAINTS - 256)) | (1 << (PlSqlParser.CONSTRUCTOR - 256)) | (1 << (PlSqlParser.CONTAINER - 256)) | (1 << (PlSqlParser.CONTAINER_DATA - 256)) | (1 << (PlSqlParser.CONTAINERS - 256)) | (1 << (PlSqlParser.CONTENT - 256)) | (1 << (PlSqlParser.CONTENTS - 256)) | (1 << (PlSqlParser.CONTEXT - 256)) | (1 << (PlSqlParser.CONTINUE - 256)) | (1 << (PlSqlParser.CONTROLFILE - 256)) | (1 << (PlSqlParser.CON_UID_TO_ID - 256)) | (1 << (PlSqlParser.CONVERT - 256)) | (1 << (PlSqlParser.COOKIE - 256)) | (1 << (PlSqlParser.COPY - 256)) | (1 << (PlSqlParser.CORR_K - 256)) | (1 << (PlSqlParser.CORR_S - 256)) | (1 << (PlSqlParser.CORRUPTION - 256)) | (1 << (PlSqlParser.CORRUPT_XID_ALL - 256)) | (1 << (PlSqlParser.CORRUPT_XID - 256)) | (1 << (PlSqlParser.COS - 256)) | (1 << (PlSqlParser.COSH - 256)) | (1 << (PlSqlParser.COST - 256)) | (1 << (PlSqlParser.COST_XML_QUERY_REWRITE - 256)) | (1 << (PlSqlParser.COUNT - 256)) | (1 << (PlSqlParser.COVAR_POP - 256)) | (1 << (PlSqlParser.COVAR_SAMP - 256)) | (1 << (PlSqlParser.CPU_COSTING - 256)) | (1 << (PlSqlParser.CPU_PER_CALL - 256)) | (1 << (PlSqlParser.CPU_PER_SESSION - 256)) | (1 << (PlSqlParser.CRASH - 256)))) !== 0) || ((((_la - 289)) & ~0x1f) == 0 && ((1 << (_la - 289)) & ((1 << (PlSqlParser.CREATE_FILE_DEST - 289)) | (1 << (PlSqlParser.CREATE_STORED_OUTLINES - 289)) | (1 << (PlSqlParser.CREATION - 289)) | (1 << (PlSqlParser.CREDENTIAL - 289)) | (1 << (PlSqlParser.CRITICAL - 289)) | (1 << (PlSqlParser.CROSS - 289)) | (1 << (PlSqlParser.CROSSEDITION - 289)) | (1 << (PlSqlParser.CSCONVERT - 289)) | (1 << (PlSqlParser.CUBE_AJ - 289)) | (1 << (PlSqlParser.CUBE - 289)) | (1 << (PlSqlParser.CUBE_GB - 289)) | (1 << (PlSqlParser.CUBE_SJ - 289)) | (1 << (PlSqlParser.CUME_DISTM - 289)) | (1 << (PlSqlParser.CURRENT - 289)) | (1 << (PlSqlParser.CURRENT_DATE - 289)) | (1 << (PlSqlParser.CURRENT_SCHEMA - 289)) | (1 << (PlSqlParser.CURRENT_TIME - 289)) | (1 << (PlSqlParser.CURRENT_TIMESTAMP - 289)) | (1 << (PlSqlParser.CURRENT_USER - 289)) | (1 << (PlSqlParser.CURRENTV - 289)) | (1 << (PlSqlParser.CURSOR - 289)) | (1 << (PlSqlParser.CURSOR_SHARING_EXACT - 289)) | (1 << (PlSqlParser.CURSOR_SPECIFIC_SEGMENT - 289)) | (1 << (PlSqlParser.CUSTOMDATUM - 289)) | (1 << (PlSqlParser.CV - 289)) | (1 << (PlSqlParser.CYCLE - 289)) | (1 << (PlSqlParser.DANGLING - 289)) | (1 << (PlSqlParser.DATABASE - 289)) | (1 << (PlSqlParser.DATA - 289)) | (1 << (PlSqlParser.DATAFILE - 289)) | (1 << (PlSqlParser.DATAFILES - 289)))) !== 0) || ((((_la - 321)) & ~0x1f) == 0 && ((1 << (_la - 321)) & ((1 << (PlSqlParser.DATAMOVEMENT - 321)) | (1 << (PlSqlParser.DATAOBJNO - 321)) | (1 << (PlSqlParser.DATAOBJ_TO_MAT_PARTITION - 321)) | (1 << (PlSqlParser.DATAOBJ_TO_PARTITION - 321)) | (1 << (PlSqlParser.DATAPUMP - 321)) | (1 << (PlSqlParser.DATA_SECURITY_REWRITE_LIMIT - 321)) | (1 << (PlSqlParser.DATE_MODE - 321)) | (1 << (PlSqlParser.DAY - 321)) | (1 << (PlSqlParser.DAYS - 321)) | (1 << (PlSqlParser.DBA - 321)) | (1 << (PlSqlParser.DBA_RECYCLEBIN - 321)) | (1 << (PlSqlParser.DBMS_STATS - 321)) | (1 << (PlSqlParser.DB_ROLE_CHANGE - 321)) | (1 << (PlSqlParser.DBTIMEZONE - 321)) | (1 << (PlSqlParser.DB_UNIQUE_NAME - 321)) | (1 << (PlSqlParser.DB_VERSION - 321)) | (1 << (PlSqlParser.DDL - 321)) | (1 << (PlSqlParser.DEALLOCATE - 321)) | (1 << (PlSqlParser.DEBUG - 321)) | (1 << (PlSqlParser.DEBUGGER - 321)) | (1 << (PlSqlParser.DEC - 321)) | (1 << (PlSqlParser.DECIMAL - 321)) | (1 << (PlSqlParser.DECLARE - 321)) | (1 << (PlSqlParser.DECOMPOSE - 321)) | (1 << (PlSqlParser.DECORRELATE - 321)) | (1 << (PlSqlParser.DECR - 321)) | (1 << (PlSqlParser.DECREMENT - 321)) | (1 << (PlSqlParser.DECRYPT - 321)) | (1 << (PlSqlParser.DEDUPLICATE - 321)) | (1 << (PlSqlParser.DEFAULTS - 321)))) !== 0) || ((((_la - 353)) & ~0x1f) == 0 && ((1 << (_la - 353)) & ((1 << (PlSqlParser.DEFERRABLE - 353)) | (1 << (PlSqlParser.DEFERRED - 353)) | (1 << (PlSqlParser.DEFINED - 353)) | (1 << (PlSqlParser.DEFINE - 353)) | (1 << (PlSqlParser.DEFINER - 353)) | (1 << (PlSqlParser.DEGREE - 353)) | (1 << (PlSqlParser.DELAY - 353)) | (1 << (PlSqlParser.DELEGATE - 353)) | (1 << (PlSqlParser.DELETE_ALL - 353)) | (1 << (PlSqlParser.DELETE - 353)) | (1 << (PlSqlParser.DELETEXML - 353)) | (1 << (PlSqlParser.DEMAND - 353)) | (1 << (PlSqlParser.DENSE_RANKM - 353)) | (1 << (PlSqlParser.DEPENDENT - 353)) | (1 << (PlSqlParser.DEPTH - 353)) | (1 << (PlSqlParser.DEQUEUE - 353)) | (1 << (PlSqlParser.DEREF - 353)) | (1 << (PlSqlParser.DEREF_NO_REWRITE - 353)) | (1 << (PlSqlParser.DESTROY - 353)) | (1 << (PlSqlParser.DETACHED - 353)) | (1 << (PlSqlParser.DETERMINES - 353)) | (1 << (PlSqlParser.DETERMINISTIC - 353)) | (1 << (PlSqlParser.DICTIONARY - 353)) | (1 << (PlSqlParser.DIMENSION - 353)) | (1 << (PlSqlParser.DIMENSIONS - 353)) | (1 << (PlSqlParser.DIRECT_LOAD - 353)) | (1 << (PlSqlParser.DIRECTORY - 353)) | (1 << (PlSqlParser.DIRECT_PATH - 353)) | (1 << (PlSqlParser.DISABLE_ALL - 353)) | (1 << (PlSqlParser.DISABLE - 353)) | (1 << (PlSqlParser.DISABLE_PARALLEL_DML - 353)))) !== 0) || ((((_la - 385)) & ~0x1f) == 0 && ((1 << (_la - 385)) & ((1 << (PlSqlParser.DISABLE_PRESET - 385)) | (1 << (PlSqlParser.DISABLE_RPKE - 385)) | (1 << (PlSqlParser.DISALLOW - 385)) | (1 << (PlSqlParser.DISASSOCIATE - 385)) | (1 << (PlSqlParser.DISCARD - 385)) | (1 << (PlSqlParser.DISCONNECT - 385)) | (1 << (PlSqlParser.DISK - 385)) | (1 << (PlSqlParser.DISKGROUP - 385)) | (1 << (PlSqlParser.DISKS - 385)) | (1 << (PlSqlParser.DISMOUNT - 385)) | (1 << (PlSqlParser.DISTINGUISHED - 385)) | (1 << (PlSqlParser.DISTRIBUTED - 385)) | (1 << (PlSqlParser.DISTRIBUTE - 385)) | (1 << (PlSqlParser.DML - 385)) | (1 << (PlSqlParser.DML_UPDATE - 385)) | (1 << (PlSqlParser.DOCFIDELITY - 385)) | (1 << (PlSqlParser.DOCUMENT - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_FILTER - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_NO_SORT - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_SORT - 385)) | (1 << (PlSqlParser.DOUBLE - 385)) | (1 << (PlSqlParser.DOWNGRADE - 385)) | (1 << (PlSqlParser.DRIVING_SITE - 385)) | (1 << (PlSqlParser.DROP_COLUMN - 385)) | (1 << (PlSqlParser.DROP_GROUP - 385)) | (1 << (PlSqlParser.DSINTERVAL_UNCONSTRAINED - 385)) | (1 << (PlSqlParser.DST_UPGRADE_INSERT_CONV - 385)) | (1 << (PlSqlParser.DUMP - 385)))) !== 0) || ((((_la - 417)) & ~0x1f) == 0 && ((1 << (_la - 417)) & ((1 << (PlSqlParser.DUPLICATE - 417)) | (1 << (PlSqlParser.DV - 417)) | (1 << (PlSqlParser.DYNAMIC - 417)) | (1 << (PlSqlParser.DYNAMIC_SAMPLING - 417)) | (1 << (PlSqlParser.DYNAMIC_SAMPLING_EST_CDN - 417)) | (1 << (PlSqlParser.EACH - 417)) | (1 << (PlSqlParser.EDITIONABLE - 417)) | (1 << (PlSqlParser.EDITION - 417)) | (1 << (PlSqlParser.EDITIONING - 417)) | (1 << (PlSqlParser.EDITIONS - 417)) | (1 << (PlSqlParser.ELEMENT - 417)) | (1 << (PlSqlParser.ELIM_GROUPBY - 417)) | (1 << (PlSqlParser.ELIMINATE_JOIN - 417)) | (1 << (PlSqlParser.ELIMINATE_OBY - 417)) | (1 << (PlSqlParser.ELIMINATE_OUTER_JOIN - 417)) | (1 << (PlSqlParser.EM - 417)) | (1 << (PlSqlParser.EMPTY_BLOB - 417)) | (1 << (PlSqlParser.EMPTY_CLOB - 417)) | (1 << (PlSqlParser.EMPTY - 417)) | (1 << (PlSqlParser.ENABLE_ALL - 417)) | (1 << (PlSqlParser.ENABLE - 417)) | (1 << (PlSqlParser.ENABLE_PARALLEL_DML - 417)) | (1 << (PlSqlParser.ENABLE_PRESET - 417)) | (1 << (PlSqlParser.ENCODING - 417)) | (1 << (PlSqlParser.ENCRYPT - 417)) | (1 << (PlSqlParser.ENCRYPTION - 417)) | (1 << (PlSqlParser.END_OUTLINE_DATA - 417)) | (1 << (PlSqlParser.ENFORCED - 417)) | (1 << (PlSqlParser.ENFORCE - 417)))) !== 0) || ((((_la - 449)) & ~0x1f) == 0 && ((1 << (_la - 449)) & ((1 << (PlSqlParser.ENQUEUE - 449)) | (1 << (PlSqlParser.ENTERPRISE - 449)) | (1 << (PlSqlParser.ENTITYESCAPING - 449)) | (1 << (PlSqlParser.ENTRY - 449)) | (1 << (PlSqlParser.EQUIPART - 449)) | (1 << (PlSqlParser.ERR - 449)) | (1 << (PlSqlParser.ERROR_ARGUMENT - 449)) | (1 << (PlSqlParser.ERROR - 449)) | (1 << (PlSqlParser.ERROR_ON_OVERLAP_TIME - 449)) | (1 << (PlSqlParser.ERRORS - 449)) | (1 << (PlSqlParser.ESCAPE - 449)) | (1 << (PlSqlParser.ESTIMATE - 449)) | (1 << (PlSqlParser.EVAL - 449)) | (1 << (PlSqlParser.EVALNAME - 449)) | (1 << (PlSqlParser.EVALUATE - 449)) | (1 << (PlSqlParser.EVALUATION - 449)) | (1 << (PlSqlParser.EVENTS - 449)) | (1 << (PlSqlParser.EVERY - 449)) | (1 << (PlSqlParser.EXCEPT - 449)) | (1 << (PlSqlParser.EXCEPTION - 449)) | (1 << (PlSqlParser.EXCEPTION_INIT - 449)) | (1 << (PlSqlParser.EXCEPTIONS - 449)) | (1 << (PlSqlParser.EXCHANGE - 449)) | (1 << (PlSqlParser.EXCLUDE - 449)) | (1 << (PlSqlParser.EXCLUDING - 449)) | (1 << (PlSqlParser.EXECUTE - 449)) | (1 << (PlSqlParser.EXEMPT - 449)) | (1 << (PlSqlParser.EXISTING - 449)) | (1 << (PlSqlParser.EXISTS - 449)) | (1 << (PlSqlParser.EXISTSNODE - 449)) | (1 << (PlSqlParser.EXIT - 449)))) !== 0) || ((((_la - 481)) & ~0x1f) == 0 && ((1 << (_la - 481)) & ((1 << (PlSqlParser.EXPAND_GSET_TO_UNION - 481)) | (1 << (PlSqlParser.EXPAND_TABLE - 481)) | (1 << (PlSqlParser.EXP - 481)) | (1 << (PlSqlParser.EXPIRE - 481)) | (1 << (PlSqlParser.EXPLAIN - 481)) | (1 << (PlSqlParser.EXPLOSION - 481)) | (1 << (PlSqlParser.EXPORT - 481)) | (1 << (PlSqlParser.EXPR_CORR_CHECK - 481)) | (1 << (PlSqlParser.EXPRESS - 481)) | (1 << (PlSqlParser.EXTENDS - 481)) | (1 << (PlSqlParser.EXTENT - 481)) | (1 << (PlSqlParser.EXTENTS - 481)) | (1 << (PlSqlParser.EXTERNAL - 481)) | (1 << (PlSqlParser.EXTERNALLY - 481)) | (1 << (PlSqlParser.EXTRACTCLOBXML - 481)) | (1 << (PlSqlParser.EXTRACT - 481)) | (1 << (PlSqlParser.EXTRACTVALUE - 481)) | (1 << (PlSqlParser.EXTRA - 481)) | (1 << (PlSqlParser.FACILITY - 481)) | (1 << (PlSqlParser.FACT - 481)) | (1 << (PlSqlParser.FACTOR - 481)) | (1 << (PlSqlParser.FACTORIZE_JOIN - 481)) | (1 << (PlSqlParser.FAILED - 481)) | (1 << (PlSqlParser.FAILED_LOGIN_ATTEMPTS - 481)) | (1 << (PlSqlParser.FAILGROUP - 481)) | (1 << (PlSqlParser.FAILOVER - 481)) | (1 << (PlSqlParser.FAILURE - 481)) | (1 << (PlSqlParser.FALSE - 481)) | (1 << (PlSqlParser.FAMILY - 481)) | (1 << (PlSqlParser.FAR - 481)) | (1 << (PlSqlParser.FAST - 481)) | (1 << (PlSqlParser.FASTSTART - 481)))) !== 0) || ((((_la - 513)) & ~0x1f) == 0 && ((1 << (_la - 513)) & ((1 << (PlSqlParser.FBTSCAN - 513)) | (1 << (PlSqlParser.FEATURE_DETAILS - 513)) | (1 << (PlSqlParser.FEATURE_ID - 513)) | (1 << (PlSqlParser.FEATURE_SET - 513)) | (1 << (PlSqlParser.FEATURE_VALUE - 513)) | (1 << (PlSqlParser.FETCH - 513)) | (1 << (PlSqlParser.FILE - 513)) | (1 << (PlSqlParser.FILE_NAME_CONVERT - 513)) | (1 << (PlSqlParser.FILESYSTEM_LIKE_LOGGING - 513)) | (1 << (PlSqlParser.FILTER - 513)) | (1 << (PlSqlParser.FINAL - 513)) | (1 << (PlSqlParser.FINE - 513)) | (1 << (PlSqlParser.FINISH - 513)) | (1 << (PlSqlParser.FIRST - 513)) | (1 << (PlSqlParser.FIRSTM - 513)) | (1 << (PlSqlParser.FIRST_ROWS - 513)) | (1 << (PlSqlParser.FIRST_VALUE - 513)) | (1 << (PlSqlParser.FIXED_VIEW_DATA - 513)) | (1 << (PlSqlParser.FLAGGER - 513)) | (1 << (PlSqlParser.FLASHBACK - 513)) | (1 << (PlSqlParser.FLASH_CACHE - 513)) | (1 << (PlSqlParser.FLOAT - 513)) | (1 << (PlSqlParser.FLOB - 513)) | (1 << (PlSqlParser.FLOOR - 513)) | (1 << (PlSqlParser.FLUSH - 513)) | (1 << (PlSqlParser.FOLDER - 513)) | (1 << (PlSqlParser.FOLLOWING - 513)) | (1 << (PlSqlParser.FOLLOWS - 513)) | (1 << (PlSqlParser.FORALL - 513)) | (1 << (PlSqlParser.FORCE - 513)) | (1 << (PlSqlParser.FORCE_XML_QUERY_REWRITE - 513)) | (1 << (PlSqlParser.FOREIGN - 513)))) !== 0) || ((((_la - 545)) & ~0x1f) == 0 && ((1 << (_la - 545)) & ((1 << (PlSqlParser.FOREVER - 545)) | (1 << (PlSqlParser.FORMAT - 545)) | (1 << (PlSqlParser.FORWARD - 545)) | (1 << (PlSqlParser.FRAGMENT_NUMBER - 545)) | (1 << (PlSqlParser.FREELIST - 545)) | (1 << (PlSqlParser.FREELISTS - 545)) | (1 << (PlSqlParser.FREEPOOLS - 545)) | (1 << (PlSqlParser.FRESH - 545)) | (1 << (PlSqlParser.FROM_TZ - 545)) | (1 << (PlSqlParser.FULL - 545)) | (1 << (PlSqlParser.FULL_OUTER_JOIN_TO_OUTER - 545)) | (1 << (PlSqlParser.FUNCTION - 545)) | (1 << (PlSqlParser.FUNCTIONS - 545)) | (1 << (PlSqlParser.GATHER_OPTIMIZER_STATISTICS - 545)) | (1 << (PlSqlParser.GATHER_PLAN_STATISTICS - 545)) | (1 << (PlSqlParser.GBY_CONC_ROLLUP - 545)) | (1 << (PlSqlParser.GBY_PUSHDOWN - 545)) | (1 << (PlSqlParser.GENERATED - 545)) | (1 << (PlSqlParser.GET - 545)) | (1 << (PlSqlParser.GLOBAL - 545)) | (1 << (PlSqlParser.GLOBALLY - 545)) | (1 << (PlSqlParser.GLOBAL_NAME - 545)) | (1 << (PlSqlParser.GLOBAL_TOPIC_ENABLED - 545)) | (1 << (PlSqlParser.GROUP_BY - 545)) | (1 << (PlSqlParser.GROUP_ID - 545)) | (1 << (PlSqlParser.GROUPING - 545)) | (1 << (PlSqlParser.GROUPING_ID - 545)))) !== 0) || ((((_la - 577)) & ~0x1f) == 0 && ((1 << (_la - 577)) & ((1 << (PlSqlParser.GROUPS - 577)) | (1 << (PlSqlParser.GUARANTEED - 577)) | (1 << (PlSqlParser.GUARANTEE - 577)) | (1 << (PlSqlParser.GUARD - 577)) | (1 << (PlSqlParser.HASH_AJ - 577)) | (1 << (PlSqlParser.HASH - 577)) | (1 << (PlSqlParser.HASHKEYS - 577)) | (1 << (PlSqlParser.HASH_SJ - 577)) | (1 << (PlSqlParser.HEADER - 577)) | (1 << (PlSqlParser.HEAP - 577)) | (1 << (PlSqlParser.HELP - 577)) | (1 << (PlSqlParser.HEXTORAW - 577)) | (1 << (PlSqlParser.HEXTOREF - 577)) | (1 << (PlSqlParser.HIDDEN_KEYWORD - 577)) | (1 << (PlSqlParser.HIDE - 577)) | (1 << (PlSqlParser.HIERARCHY - 577)) | (1 << (PlSqlParser.HIGH - 577)) | (1 << (PlSqlParser.HINTSET_BEGIN - 577)) | (1 << (PlSqlParser.HINTSET_END - 577)) | (1 << (PlSqlParser.HOT - 577)) | (1 << (PlSqlParser.HOUR - 577)) | (1 << (PlSqlParser.HWM_BROKERED - 577)) | (1 << (PlSqlParser.HYBRID - 577)) | (1 << (PlSqlParser.IDENTIFIER - 577)) | (1 << (PlSqlParser.IDENTITY - 577)) | (1 << (PlSqlParser.IDGENERATORS - 577)) | (1 << (PlSqlParser.ID - 577)) | (1 << (PlSqlParser.IDLE_TIME - 577)) | (1 << (PlSqlParser.IF - 577)) | (1 << (PlSqlParser.IGNORE - 577)))) !== 0) || ((((_la - 609)) & ~0x1f) == 0 && ((1 << (_la - 609)) & ((1 << (PlSqlParser.IGNORE_OPTIM_EMBEDDED_HINTS - 609)) | (1 << (PlSqlParser.IGNORE_ROW_ON_DUPKEY_INDEX - 609)) | (1 << (PlSqlParser.IGNORE_WHERE_CLAUSE - 609)) | (1 << (PlSqlParser.ILM - 609)) | (1 << (PlSqlParser.IMMEDIATE - 609)) | (1 << (PlSqlParser.IMPACT - 609)) | (1 << (PlSqlParser.IMPORT - 609)) | (1 << (PlSqlParser.INACTIVE - 609)) | (1 << (PlSqlParser.INCLUDE - 609)) | (1 << (PlSqlParser.INCLUDE_VERSION - 609)) | (1 << (PlSqlParser.INCLUDING - 609)) | (1 << (PlSqlParser.INCREMENTAL - 609)) | (1 << (PlSqlParser.INCREMENT - 609)) | (1 << (PlSqlParser.INCR - 609)) | (1 << (PlSqlParser.INDENT - 609)) | (1 << (PlSqlParser.INDEX_ASC - 609)) | (1 << (PlSqlParser.INDEX_COMBINE - 609)) | (1 << (PlSqlParser.INDEX_DESC - 609)) | (1 << (PlSqlParser.INDEXED - 609)) | (1 << (PlSqlParser.INDEXES - 609)) | (1 << (PlSqlParser.INDEX_FFS - 609)) | (1 << (PlSqlParser.INDEX_FILTER - 609)) | (1 << (PlSqlParser.INDEXING - 609)) | (1 << (PlSqlParser.INDEX_JOIN - 609)) | (1 << (PlSqlParser.INDEX_ROWS - 609)) | (1 << (PlSqlParser.INDEX_RRS - 609)) | (1 << (PlSqlParser.INDEX_RS_ASC - 609)) | (1 << (PlSqlParser.INDEX_RS_DESC - 609)) | (1 << (PlSqlParser.INDEX_RS - 609)) | (1 << (PlSqlParser.INDEX_SCAN - 609)) | (1 << (PlSqlParser.INDEX_SKIP_SCAN - 609)))) !== 0) || ((((_la - 641)) & ~0x1f) == 0 && ((1 << (_la - 641)) & ((1 << (PlSqlParser.INDEX_SS_ASC - 641)) | (1 << (PlSqlParser.INDEX_SS_DESC - 641)) | (1 << (PlSqlParser.INDEX_SS - 641)) | (1 << (PlSqlParser.INDEX_STATS - 641)) | (1 << (PlSqlParser.INDEXTYPE - 641)) | (1 << (PlSqlParser.INDEXTYPES - 641)) | (1 << (PlSqlParser.INDICATOR - 641)) | (1 << (PlSqlParser.INDICES - 641)) | (1 << (PlSqlParser.INFINITE - 641)) | (1 << (PlSqlParser.INFORMATIONAL - 641)) | (1 << (PlSqlParser.INHERIT - 641)) | (1 << (PlSqlParser.INITCAP - 641)) | (1 << (PlSqlParser.INITIAL - 641)) | (1 << (PlSqlParser.INITIALIZED - 641)) | (1 << (PlSqlParser.INITIALLY - 641)) | (1 << (PlSqlParser.INITRANS - 641)) | (1 << (PlSqlParser.INLINE - 641)) | (1 << (PlSqlParser.INLINE_XMLTYPE_NT - 641)) | (1 << (PlSqlParser.INMEMORY - 641)) | (1 << (PlSqlParser.IN_MEMORY_METADATA - 641)) | (1 << (PlSqlParser.INMEMORY_PRUNING - 641)) | (1 << (PlSqlParser.INNER - 641)) | (1 << (PlSqlParser.INOUT - 641)) | (1 << (PlSqlParser.INPLACE - 641)) | (1 << (PlSqlParser.INSERTCHILDXMLAFTER - 641)) | (1 << (PlSqlParser.INSERTCHILDXMLBEFORE - 641)) | (1 << (PlSqlParser.INSERTCHILDXML - 641)) | (1 << (PlSqlParser.INSERTXMLAFTER - 641)) | (1 << (PlSqlParser.INSERTXMLBEFORE - 641)) | (1 << (PlSqlParser.INSTANCE - 641)))) !== 0) || ((((_la - 673)) & ~0x1f) == 0 && ((1 << (_la - 673)) & ((1 << (PlSqlParser.INSTANCES - 673)) | (1 << (PlSqlParser.INSTANTIABLE - 673)) | (1 << (PlSqlParser.INSTANTLY - 673)) | (1 << (PlSqlParser.INSTEAD - 673)) | (1 << (PlSqlParser.INSTR2 - 673)) | (1 << (PlSqlParser.INSTR4 - 673)) | (1 << (PlSqlParser.INSTRB - 673)) | (1 << (PlSqlParser.INSTRC - 673)) | (1 << (PlSqlParser.INSTR - 673)) | (1 << (PlSqlParser.INTEGER - 673)) | (1 << (PlSqlParser.INTERLEAVED - 673)) | (1 << (PlSqlParser.INTERMEDIATE - 673)) | (1 << (PlSqlParser.INTERNAL_CONVERT - 673)) | (1 << (PlSqlParser.INTERNAL_USE - 673)) | (1 << (PlSqlParser.INTERPRETED - 673)) | (1 << (PlSqlParser.INTERVAL - 673)) | (1 << (PlSqlParser.INT - 673)) | (1 << (PlSqlParser.INVALIDATE - 673)) | (1 << (PlSqlParser.INVISIBLE - 673)) | (1 << (PlSqlParser.IN_XQUERY - 673)) | (1 << (PlSqlParser.ISOLATION - 673)) | (1 << (PlSqlParser.ISOLATION_LEVEL - 673)) | (1 << (PlSqlParser.ITERATE - 673)) | (1 << (PlSqlParser.ITERATION_NUMBER - 673)) | (1 << (PlSqlParser.JAVA - 673)) | (1 << (PlSqlParser.JOB - 673)) | (1 << (PlSqlParser.JOIN - 673)) | (1 << (PlSqlParser.JSON_ARRAYAGG - 673)) | (1 << (PlSqlParser.JSON_ARRAY - 673)))) !== 0) || ((((_la - 705)) & ~0x1f) == 0 && ((1 << (_la - 705)) & ((1 << (PlSqlParser.JSON_EQUAL - 705)) | (1 << (PlSqlParser.JSON_EXISTS2 - 705)) | (1 << (PlSqlParser.JSON_EXISTS - 705)) | (1 << (PlSqlParser.JSONGET - 705)) | (1 << (PlSqlParser.JSON - 705)) | (1 << (PlSqlParser.JSON_OBJECTAGG - 705)) | (1 << (PlSqlParser.JSON_OBJECT - 705)) | (1 << (PlSqlParser.JSONPARSE - 705)) | (1 << (PlSqlParser.JSON_QUERY - 705)) | (1 << (PlSqlParser.JSON_SERIALIZE - 705)) | (1 << (PlSqlParser.JSON_TABLE - 705)) | (1 << (PlSqlParser.JSON_TEXTCONTAINS2 - 705)) | (1 << (PlSqlParser.JSON_TEXTCONTAINS - 705)) | (1 << (PlSqlParser.JSON_VALUE - 705)) | (1 << (PlSqlParser.KEEP_DUPLICATES - 705)) | (1 << (PlSqlParser.KEEP - 705)) | (1 << (PlSqlParser.KERBEROS - 705)) | (1 << (PlSqlParser.KEY - 705)) | (1 << (PlSqlParser.KEY_LENGTH - 705)) | (1 << (PlSqlParser.KEYSIZE - 705)) | (1 << (PlSqlParser.KEYS - 705)) | (1 << (PlSqlParser.KEYSTORE - 705)) | (1 << (PlSqlParser.KILL - 705)) | (1 << (PlSqlParser.LABEL - 705)) | (1 << (PlSqlParser.LANGUAGE - 705)) | (1 << (PlSqlParser.LAST_DAY - 705)) | (1 << (PlSqlParser.LAST - 705)) | (1 << (PlSqlParser.LAST_VALUE - 705)) | (1 << (PlSqlParser.LATERAL - 705)) | (1 << (PlSqlParser.LAX - 705)) | (1 << (PlSqlParser.LAYER - 705)) | (1 << (PlSqlParser.LDAP_REGISTRATION_ENABLED - 705)))) !== 0) || ((((_la - 737)) & ~0x1f) == 0 && ((1 << (_la - 737)) & ((1 << (PlSqlParser.LDAP_REGISTRATION - 737)) | (1 << (PlSqlParser.LDAP_REG_SYNC_INTERVAL - 737)) | (1 << (PlSqlParser.LEADING - 737)) | (1 << (PlSqlParser.LEFT - 737)) | (1 << (PlSqlParser.LENGTH2 - 737)) | (1 << (PlSqlParser.LENGTH4 - 737)) | (1 << (PlSqlParser.LENGTHB - 737)) | (1 << (PlSqlParser.LENGTHC - 737)) | (1 << (PlSqlParser.LENGTH - 737)) | (1 << (PlSqlParser.LESS - 737)) | (1 << (PlSqlParser.LEVEL - 737)) | (1 << (PlSqlParser.LEVELS - 737)) | (1 << (PlSqlParser.LIBRARY - 737)) | (1 << (PlSqlParser.LIFECYCLE - 737)) | (1 << (PlSqlParser.LIFE - 737)) | (1 << (PlSqlParser.LIFETIME - 737)) | (1 << (PlSqlParser.LIKE2 - 737)) | (1 << (PlSqlParser.LIKE4 - 737)) | (1 << (PlSqlParser.LIKEC - 737)) | (1 << (PlSqlParser.LIKE_EXPAND - 737)) | (1 << (PlSqlParser.LIMIT - 737)) | (1 << (PlSqlParser.LINEAR - 737)) | (1 << (PlSqlParser.LINK - 737)) | (1 << (PlSqlParser.LIST - 737)) | (1 << (PlSqlParser.LN - 737)) | (1 << (PlSqlParser.LNNVL - 737)) | (1 << (PlSqlParser.LOAD - 737)) | (1 << (PlSqlParser.LOB - 737)) | (1 << (PlSqlParser.LOBNVL - 737)) | (1 << (PlSqlParser.LOBS - 737)) | (1 << (PlSqlParser.LOCAL_INDEXES - 737)))) !== 0) || ((((_la - 769)) & ~0x1f) == 0 && ((1 << (_la - 769)) & ((1 << (PlSqlParser.LOCAL - 769)) | (1 << (PlSqlParser.LOCALTIME - 769)) | (1 << (PlSqlParser.LOCALTIMESTAMP - 769)) | (1 << (PlSqlParser.LOCATION - 769)) | (1 << (PlSqlParser.LOCATOR - 769)) | (1 << (PlSqlParser.LOCKED - 769)) | (1 << (PlSqlParser.LOCKING - 769)) | (1 << (PlSqlParser.LOGFILE - 769)) | (1 << (PlSqlParser.LOGFILES - 769)) | (1 << (PlSqlParser.LOGGING - 769)) | (1 << (PlSqlParser.LOGICAL - 769)) | (1 << (PlSqlParser.LOGICAL_READS_PER_CALL - 769)) | (1 << (PlSqlParser.LOGICAL_READS_PER_SESSION - 769)) | (1 << (PlSqlParser.LOG - 769)) | (1 << (PlSqlParser.LOGMINING - 769)) | (1 << (PlSqlParser.LOGOFF - 769)) | (1 << (PlSqlParser.LOGON - 769)) | (1 << (PlSqlParser.LOG_READ_ONLY_VIOLATIONS - 769)) | (1 << (PlSqlParser.LONG - 769)) | (1 << (PlSqlParser.LOOP - 769)) | (1 << (PlSqlParser.LOWER - 769)) | (1 << (PlSqlParser.LOW - 769)) | (1 << (PlSqlParser.LPAD - 769)) | (1 << (PlSqlParser.LTRIM - 769)) | (1 << (PlSqlParser.MAIN - 769)) | (1 << (PlSqlParser.MAKE_REF - 769)) | (1 << (PlSqlParser.MANAGED - 769)) | (1 << (PlSqlParser.MANAGE - 769)) | (1 << (PlSqlParser.MANAGEMENT - 769)) | (1 << (PlSqlParser.MANAGER - 769)) | (1 << (PlSqlParser.MANUAL - 769)))) !== 0) || ((((_la - 801)) & ~0x1f) == 0 && ((1 << (_la - 801)) & ((1 << (PlSqlParser.MAP - 801)) | (1 << (PlSqlParser.MAPPING - 801)) | (1 << (PlSqlParser.MASTER - 801)) | (1 << (PlSqlParser.MATCHED - 801)) | (1 << (PlSqlParser.MATCHES - 801)) | (1 << (PlSqlParser.MATCH - 801)) | (1 << (PlSqlParser.MATCH_NUMBER - 801)) | (1 << (PlSqlParser.MATCH_RECOGNIZE - 801)) | (1 << (PlSqlParser.MATERIALIZED - 801)) | (1 << (PlSqlParser.MATERIALIZE - 801)) | (1 << (PlSqlParser.MAXARCHLOGS - 801)) | (1 << (PlSqlParser.MAXDATAFILES - 801)) | (1 << (PlSqlParser.MAXEXTENTS - 801)) | (1 << (PlSqlParser.MAXIMIZE - 801)) | (1 << (PlSqlParser.MAXINSTANCES - 801)) | (1 << (PlSqlParser.MAXLOGFILES - 801)) | (1 << (PlSqlParser.MAXLOGHISTORY - 801)) | (1 << (PlSqlParser.MAXLOGMEMBERS - 801)) | (1 << (PlSqlParser.MAX_SHARED_TEMP_SIZE - 801)) | (1 << (PlSqlParser.MAXSIZE - 801)) | (1 << (PlSqlParser.MAXTRANS - 801)) | (1 << (PlSqlParser.MAXVALUE - 801)) | (1 << (PlSqlParser.MEASURE - 801)) | (1 << (PlSqlParser.MEASURES - 801)) | (1 << (PlSqlParser.MEDIUM - 801)) | (1 << (PlSqlParser.MEMBER - 801)) | (1 << (PlSqlParser.MEMCOMPRESS - 801)) | (1 << (PlSqlParser.MEMORY - 801)) | (1 << (PlSqlParser.MERGEACTIONS - 801)) | (1 << (PlSqlParser.MERGE_AJ - 801)) | (1 << (PlSqlParser.MERGE_CONST_ON - 801)) | (1 << (PlSqlParser.MERGE - 801)))) !== 0) || ((((_la - 833)) & ~0x1f) == 0 && ((1 << (_la - 833)) & ((1 << (PlSqlParser.MERGE_SJ - 833)) | (1 << (PlSqlParser.METADATA - 833)) | (1 << (PlSqlParser.METHOD - 833)) | (1 << (PlSqlParser.MIGRATE - 833)) | (1 << (PlSqlParser.MIGRATION - 833)) | (1 << (PlSqlParser.MINEXTENTS - 833)) | (1 << (PlSqlParser.MINIMIZE - 833)) | (1 << (PlSqlParser.MINIMUM - 833)) | (1 << (PlSqlParser.MINING - 833)) | (1 << (PlSqlParser.MINUS_NULL - 833)) | (1 << (PlSqlParser.MINUTE - 833)) | (1 << (PlSqlParser.MINVALUE - 833)) | (1 << (PlSqlParser.MIRRORCOLD - 833)) | (1 << (PlSqlParser.MIRRORHOT - 833)) | (1 << (PlSqlParser.MIRROR - 833)) | (1 << (PlSqlParser.MLSLABEL - 833)) | (1 << (PlSqlParser.MODEL_COMPILE_SUBQUERY - 833)) | (1 << (PlSqlParser.MODEL_DONTVERIFY_UNIQUENESS - 833)) | (1 << (PlSqlParser.MODEL_DYNAMIC_SUBQUERY - 833)) | (1 << (PlSqlParser.MODEL_MIN_ANALYSIS - 833)) | (1 << (PlSqlParser.MODEL - 833)) | (1 << (PlSqlParser.MODEL_NB - 833)) | (1 << (PlSqlParser.MODEL_NO_ANALYSIS - 833)) | (1 << (PlSqlParser.MODEL_PBY - 833)) | (1 << (PlSqlParser.MODEL_PUSH_REF - 833)) | (1 << (PlSqlParser.MODEL_SV - 833)) | (1 << (PlSqlParser.MODIFICATION - 833)) | (1 << (PlSqlParser.MODIFY_COLUMN_TYPE - 833)) | (1 << (PlSqlParser.MODIFY - 833)) | (1 << (PlSqlParser.MOD - 833)))) !== 0) || ((((_la - 865)) & ~0x1f) == 0 && ((1 << (_la - 865)) & ((1 << (PlSqlParser.MODULE - 865)) | (1 << (PlSqlParser.MONITORING - 865)) | (1 << (PlSqlParser.MONITOR - 865)) | (1 << (PlSqlParser.MONTH - 865)) | (1 << (PlSqlParser.MONTHS_BETWEEN - 865)) | (1 << (PlSqlParser.MONTHS - 865)) | (1 << (PlSqlParser.MOUNT - 865)) | (1 << (PlSqlParser.MOUNTPATH - 865)) | (1 << (PlSqlParser.MOVEMENT - 865)) | (1 << (PlSqlParser.MOVE - 865)) | (1 << (PlSqlParser.MULTIDIMENSIONAL - 865)) | (1 << (PlSqlParser.MULTISET - 865)) | (1 << (PlSqlParser.MV_MERGE - 865)) | (1 << (PlSqlParser.NAMED - 865)) | (1 << (PlSqlParser.NAME - 865)) | (1 << (PlSqlParser.NAMESPACE - 865)) | (1 << (PlSqlParser.NAN - 865)) | (1 << (PlSqlParser.NANVL - 865)) | (1 << (PlSqlParser.NATIONAL - 865)) | (1 << (PlSqlParser.NATIVE_FULL_OUTER_JOIN - 865)) | (1 << (PlSqlParser.NATIVE - 865)) | (1 << (PlSqlParser.NATURAL - 865)) | (1 << (PlSqlParser.NAV - 865)) | (1 << (PlSqlParser.NCHAR_CS - 865)) | (1 << (PlSqlParser.NCHAR - 865)) | (1 << (PlSqlParser.NCHR - 865)) | (1 << (PlSqlParser.NCLOB - 865)) | (1 << (PlSqlParser.NEEDED - 865)) | (1 << (PlSqlParser.NEG - 865)) | (1 << (PlSqlParser.NESTED - 865)) | (1 << (PlSqlParser.NESTED_TABLE_FAST_INSERT - 865)))) !== 0) || ((((_la - 897)) & ~0x1f) == 0 && ((1 << (_la - 897)) & ((1 << (PlSqlParser.NESTED_TABLE_GET_REFS - 897)) | (1 << (PlSqlParser.NESTED_TABLE_ID - 897)) | (1 << (PlSqlParser.NESTED_TABLE_SET_REFS - 897)) | (1 << (PlSqlParser.NESTED_TABLE_SET_SETID - 897)) | (1 << (PlSqlParser.NETWORK - 897)) | (1 << (PlSqlParser.NEVER - 897)) | (1 << (PlSqlParser.NEW - 897)) | (1 << (PlSqlParser.NEW_TIME - 897)) | (1 << (PlSqlParser.NEXT_DAY - 897)) | (1 << (PlSqlParser.NEXT - 897)) | (1 << (PlSqlParser.NL_AJ - 897)) | (1 << (PlSqlParser.NLJ_BATCHING - 897)) | (1 << (PlSqlParser.NLJ_INDEX_FILTER - 897)) | (1 << (PlSqlParser.NLJ_INDEX_SCAN - 897)) | (1 << (PlSqlParser.NLJ_PREFETCH - 897)) | (1 << (PlSqlParser.NLS_CALENDAR - 897)) | (1 << (PlSqlParser.NLS_CHARACTERSET - 897)) | (1 << (PlSqlParser.NLS_CHARSET_DECL_LEN - 897)) | (1 << (PlSqlParser.NLS_CHARSET_ID - 897)) | (1 << (PlSqlParser.NLS_CHARSET_NAME - 897)) | (1 << (PlSqlParser.NLS_COMP - 897)) | (1 << (PlSqlParser.NLS_CURRENCY - 897)) | (1 << (PlSqlParser.NLS_DATE_FORMAT - 897)) | (1 << (PlSqlParser.NLS_DATE_LANGUAGE - 897)) | (1 << (PlSqlParser.NLS_INITCAP - 897)) | (1 << (PlSqlParser.NLS_ISO_CURRENCY - 897)) | (1 << (PlSqlParser.NL_SJ - 897)) | (1 << (PlSqlParser.NLS_LANG - 897)) | (1 << (PlSqlParser.NLS_LANGUAGE - 897)) | (1 << (PlSqlParser.NLS_LENGTH_SEMANTICS - 897)) | (1 << (PlSqlParser.NLS_LOWER - 897)) | (1 << (PlSqlParser.NLS_NCHAR_CONV_EXCP - 897)))) !== 0) || ((((_la - 929)) & ~0x1f) == 0 && ((1 << (_la - 929)) & ((1 << (PlSqlParser.NLS_NUMERIC_CHARACTERS - 929)) | (1 << (PlSqlParser.NLS_SORT - 929)) | (1 << (PlSqlParser.NLSSORT - 929)) | (1 << (PlSqlParser.NLS_SPECIAL_CHARS - 929)) | (1 << (PlSqlParser.NLS_TERRITORY - 929)) | (1 << (PlSqlParser.NLS_UPPER - 929)) | (1 << (PlSqlParser.NO_ACCESS - 929)) | (1 << (PlSqlParser.NO_ADAPTIVE_PLAN - 929)) | (1 << (PlSqlParser.NO_ANSI_REARCH - 929)) | (1 << (PlSqlParser.NOAPPEND - 929)) | (1 << (PlSqlParser.NOARCHIVELOG - 929)) | (1 << (PlSqlParser.NOAUDIT - 929)) | (1 << (PlSqlParser.NO_AUTO_REOPTIMIZE - 929)) | (1 << (PlSqlParser.NO_BASETABLE_MULTIMV_REWRITE - 929)) | (1 << (PlSqlParser.NO_BATCH_TABLE_ACCESS_BY_ROWID - 929)) | (1 << (PlSqlParser.NO_BIND_AWARE - 929)) | (1 << (PlSqlParser.NO_BUFFER - 929)) | (1 << (PlSqlParser.NOCACHE - 929)) | (1 << (PlSqlParser.NO_CARTESIAN - 929)) | (1 << (PlSqlParser.NO_CHECK_ACL_REWRITE - 929)) | (1 << (PlSqlParser.NO_CLUSTER_BY_ROWID - 929)) | (1 << (PlSqlParser.NO_CLUSTERING - 929)) | (1 << (PlSqlParser.NO_COALESCE_SQ - 929)) | (1 << (PlSqlParser.NO_COMMON_DATA - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_CB_WHR_ONLY - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_COMBINE_SW - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_COST_BASED - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_ELIM_DUPS - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_FILTERING - 929)) | (1 << (PlSqlParser.NOCOPY - 929)) | (1 << (PlSqlParser.NO_COST_XML_QUERY_REWRITE - 929)))) !== 0) || ((((_la - 961)) & ~0x1f) == 0 && ((1 << (_la - 961)) & ((1 << (PlSqlParser.NO_CPU_COSTING - 961)) | (1 << (PlSqlParser.NOCPU_COSTING - 961)) | (1 << (PlSqlParser.NOCYCLE - 961)) | (1 << (PlSqlParser.NO_DATA_SECURITY_REWRITE - 961)) | (1 << (PlSqlParser.NO_DECORRELATE - 961)) | (1 << (PlSqlParser.NODELAY - 961)) | (1 << (PlSqlParser.NO_DOMAIN_INDEX_FILTER - 961)) | (1 << (PlSqlParser.NO_DST_UPGRADE_INSERT_CONV - 961)) | (1 << (PlSqlParser.NO_ELIM_GROUPBY - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_JOIN - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_OBY - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_OUTER_JOIN - 961)) | (1 << (PlSqlParser.NOENTITYESCAPING - 961)) | (1 << (PlSqlParser.NO_EXPAND_GSET_TO_UNION - 961)) | (1 << (PlSqlParser.NO_EXPAND - 961)) | (1 << (PlSqlParser.NO_EXPAND_TABLE - 961)) | (1 << (PlSqlParser.NO_FACT - 961)) | (1 << (PlSqlParser.NO_FACTORIZE_JOIN - 961)) | (1 << (PlSqlParser.NO_FILTERING - 961)) | (1 << (PlSqlParser.NOFORCE - 961)) | (1 << (PlSqlParser.NO_FULL_OUTER_JOIN_TO_OUTER - 961)) | (1 << (PlSqlParser.NO_GATHER_OPTIMIZER_STATISTICS - 961)) | (1 << (PlSqlParser.NO_GBY_PUSHDOWN - 961)) | (1 << (PlSqlParser.NOGUARANTEE - 961)) | (1 << (PlSqlParser.NO_INDEX_FFS - 961)) | (1 << (PlSqlParser.NO_INDEX - 961)) | (1 << (PlSqlParser.NO_INDEX_SS - 961)) | (1 << (PlSqlParser.NO_INMEMORY - 961)) | (1 << (PlSqlParser.NO_INMEMORY_PRUNING - 961)) | (1 << (PlSqlParser.NOKEEP - 961)) | (1 << (PlSqlParser.NO_LOAD - 961)) | (1 << (PlSqlParser.NOLOCAL - 961)))) !== 0) || ((((_la - 993)) & ~0x1f) == 0 && ((1 << (_la - 993)) & ((1 << (PlSqlParser.NOLOGGING - 993)) | (1 << (PlSqlParser.NOMAPPING - 993)) | (1 << (PlSqlParser.NOMAXVALUE - 993)) | (1 << (PlSqlParser.NO_MERGE - 993)) | (1 << (PlSqlParser.NOMINIMIZE - 993)) | (1 << (PlSqlParser.NOMINVALUE - 993)) | (1 << (PlSqlParser.NO_MODEL_PUSH_REF - 993)) | (1 << (PlSqlParser.NO_MONITORING - 993)) | (1 << (PlSqlParser.NOMONITORING - 993)) | (1 << (PlSqlParser.NO_MONITOR - 993)) | (1 << (PlSqlParser.NO_MULTIMV_REWRITE - 993)) | (1 << (PlSqlParser.NO_NATIVE_FULL_OUTER_JOIN - 993)) | (1 << (PlSqlParser.NONBLOCKING - 993)) | (1 << (PlSqlParser.NONEDITIONABLE - 993)) | (1 << (PlSqlParser.NONE - 993)) | (1 << (PlSqlParser.NO_NLJ_BATCHING - 993)) | (1 << (PlSqlParser.NO_NLJ_PREFETCH - 993)) | (1 << (PlSqlParser.NO - 993)) | (1 << (PlSqlParser.NONSCHEMA - 993)) | (1 << (PlSqlParser.NO_OBJECT_LINK - 993)) | (1 << (PlSqlParser.NOORDER - 993)) | (1 << (PlSqlParser.NO_ORDER_ROLLUPS - 993)) | (1 << (PlSqlParser.NO_OUTER_JOIN_TO_ANTI - 993)) | (1 << (PlSqlParser.NO_OUTER_JOIN_TO_INNER - 993)) | (1 << (PlSqlParser.NOOVERRIDE - 993)) | (1 << (PlSqlParser.NO_PARALLEL_INDEX - 993)) | (1 << (PlSqlParser.NOPARALLEL_INDEX - 993)) | (1 << (PlSqlParser.NO_PARALLEL - 993)) | (1 << (PlSqlParser.NOPARALLEL - 993)) | (1 << (PlSqlParser.NO_PARTIAL_COMMIT - 993)) | (1 << (PlSqlParser.NO_PARTIAL_JOIN - 993)) | (1 << (PlSqlParser.NO_PARTIAL_ROLLUP_PUSHDOWN - 993)))) !== 0) || ((((_la - 1025)) & ~0x1f) == 0 && ((1 << (_la - 1025)) & ((1 << (PlSqlParser.NOPARTITION - 1025)) | (1 << (PlSqlParser.NO_PLACE_DISTINCT - 1025)) | (1 << (PlSqlParser.NO_PLACE_GROUP_BY - 1025)) | (1 << (PlSqlParser.NO_PQ_CONCURRENT_UNION - 1025)) | (1 << (PlSqlParser.NO_PQ_MAP - 1025)) | (1 << (PlSqlParser.NO_PQ_REPLICATE - 1025)) | (1 << (PlSqlParser.NO_PQ_SKEW - 1025)) | (1 << (PlSqlParser.NO_PRUNE_GSETS - 1025)) | (1 << (PlSqlParser.NO_PULL_PRED - 1025)) | (1 << (PlSqlParser.NO_PUSH_PRED - 1025)) | (1 << (PlSqlParser.NO_PUSH_SUBQ - 1025)) | (1 << (PlSqlParser.NO_PX_FAULT_TOLERANCE - 1025)) | (1 << (PlSqlParser.NO_PX_JOIN_FILTER - 1025)) | (1 << (PlSqlParser.NO_QKN_BUFF - 1025)) | (1 << (PlSqlParser.NO_QUERY_TRANSFORMATION - 1025)) | (1 << (PlSqlParser.NO_REF_CASCADE - 1025)) | (1 << (PlSqlParser.NORELOCATE - 1025)) | (1 << (PlSqlParser.NORELY - 1025)) | (1 << (PlSqlParser.NOREPAIR - 1025)) | (1 << (PlSqlParser.NOREPLAY - 1025)) | (1 << (PlSqlParser.NORESETLOGS - 1025)) | (1 << (PlSqlParser.NO_RESULT_CACHE - 1025)) | (1 << (PlSqlParser.NOREVERSE - 1025)) | (1 << (PlSqlParser.NO_REWRITE - 1025)) | (1 << (PlSqlParser.NOREWRITE - 1025)) | (1 << (PlSqlParser.NORMAL - 1025)) | (1 << (PlSqlParser.NO_ROOT_SW_FOR_LOCAL - 1025)) | (1 << (PlSqlParser.NOROWDEPENDENCIES - 1025)) | (1 << (PlSqlParser.NOSCHEMACHECK - 1025)) | (1 << (PlSqlParser.NOSEGMENT - 1025)) | (1 << (PlSqlParser.NO_SEMIJOIN - 1025)) | (1 << (PlSqlParser.NO_SEMI_TO_INNER - 1025)))) !== 0) || ((((_la - 1057)) & ~0x1f) == 0 && ((1 << (_la - 1057)) & ((1 << (PlSqlParser.NO_SET_TO_JOIN - 1057)) | (1 << (PlSqlParser.NOSORT - 1057)) | (1 << (PlSqlParser.NO_SQL_TRANSLATION - 1057)) | (1 << (PlSqlParser.NO_SQL_TUNE - 1057)) | (1 << (PlSqlParser.NO_STAR_TRANSFORMATION - 1057)) | (1 << (PlSqlParser.NO_STATEMENT_QUEUING - 1057)) | (1 << (PlSqlParser.NO_STATS_GSETS - 1057)) | (1 << (PlSqlParser.NOSTRICT - 1057)) | (1 << (PlSqlParser.NO_SUBQUERY_PRUNING - 1057)) | (1 << (PlSqlParser.NO_SUBSTRB_PAD - 1057)) | (1 << (PlSqlParser.NO_SWAP_JOIN_INPUTS - 1057)) | (1 << (PlSqlParser.NOSWITCH - 1057)) | (1 << (PlSqlParser.NO_TABLE_LOOKUP_BY_NL - 1057)) | (1 << (PlSqlParser.NO_TEMP_TABLE - 1057)) | (1 << (PlSqlParser.NOTHING - 1057)) | (1 << (PlSqlParser.NOTIFICATION - 1057)) | (1 << (PlSqlParser.NO_TRANSFORM_DISTINCT_AGG - 1057)) | (1 << (PlSqlParser.NO_UNNEST - 1057)) | (1 << (PlSqlParser.NO_USE_CUBE - 1057)) | (1 << (PlSqlParser.NO_USE_HASH_AGGREGATION - 1057)) | (1 << (PlSqlParser.NO_USE_HASH_GBY_FOR_PUSHDOWN - 1057)) | (1 << (PlSqlParser.NO_USE_HASH - 1057)) | (1 << (PlSqlParser.NO_USE_INVISIBLE_INDEXES - 1057)) | (1 << (PlSqlParser.NO_USE_MERGE - 1057)) | (1 << (PlSqlParser.NO_USE_NL - 1057)) | (1 << (PlSqlParser.NO_USE_VECTOR_AGGREGATION - 1057)) | (1 << (PlSqlParser.NOVALIDATE - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM_DIMS - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM_FACT - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM - 1057)))) !== 0) || ((((_la - 1089)) & ~0x1f) == 0 && ((1 << (_la - 1089)) & ((1 << (PlSqlParser.NO_XDB_FASTPATH_INSERT - 1089)) | (1 << (PlSqlParser.NO_XML_DML_REWRITE - 1089)) | (1 << (PlSqlParser.NO_XMLINDEX_REWRITE_IN_SELECT - 1089)) | (1 << (PlSqlParser.NO_XMLINDEX_REWRITE - 1089)) | (1 << (PlSqlParser.NO_XML_QUERY_REWRITE - 1089)) | (1 << (PlSqlParser.NO_ZONEMAP - 1089)) | (1 << (PlSqlParser.NTH_VALUE - 1089)) | (1 << (PlSqlParser.NULLIF - 1089)) | (1 << (PlSqlParser.NULLS - 1089)) | (1 << (PlSqlParser.NUMBER - 1089)) | (1 << (PlSqlParser.NUMERIC - 1089)) | (1 << (PlSqlParser.NUM_INDEX_KEYS - 1089)) | (1 << (PlSqlParser.NUMTODSINTERVAL - 1089)) | (1 << (PlSqlParser.NUMTOYMINTERVAL - 1089)) | (1 << (PlSqlParser.NVARCHAR2 - 1089)) | (1 << (PlSqlParser.NVL2 - 1089)) | (1 << (PlSqlParser.OBJECT2XML - 1089)) | (1 << (PlSqlParser.OBJECT - 1089)) | (1 << (PlSqlParser.OBJ_ID - 1089)) | (1 << (PlSqlParser.OBJNO - 1089)) | (1 << (PlSqlParser.OBJNO_REUSE - 1089)) | (1 << (PlSqlParser.OCCURENCES - 1089)) | (1 << (PlSqlParser.OFFLINE - 1089)) | (1 << (PlSqlParser.OFF - 1089)) | (1 << (PlSqlParser.OFFSET - 1089)) | (1 << (PlSqlParser.OIDINDEX - 1089)) | (1 << (PlSqlParser.OID - 1089)) | (1 << (PlSqlParser.OLAP - 1089)) | (1 << (PlSqlParser.OLD - 1089)) | (1 << (PlSqlParser.OLD_PUSH_PRED - 1089)))) !== 0) || ((((_la - 1121)) & ~0x1f) == 0 && ((1 << (_la - 1121)) & ((1 << (PlSqlParser.OLS - 1121)) | (1 << (PlSqlParser.OLTP - 1121)) | (1 << (PlSqlParser.OMIT - 1121)) | (1 << (PlSqlParser.ONE - 1121)) | (1 << (PlSqlParser.ONLINE - 1121)) | (1 << (PlSqlParser.ONLY - 1121)) | (1 << (PlSqlParser.OPAQUE - 1121)) | (1 << (PlSqlParser.OPAQUE_TRANSFORM - 1121)) | (1 << (PlSqlParser.OPAQUE_XCANONICAL - 1121)) | (1 << (PlSqlParser.OPCODE - 1121)) | (1 << (PlSqlParser.OPEN - 1121)) | (1 << (PlSqlParser.OPERATIONS - 1121)) | (1 << (PlSqlParser.OPERATOR - 1121)) | (1 << (PlSqlParser.OPT_ESTIMATE - 1121)) | (1 << (PlSqlParser.OPTIMAL - 1121)) | (1 << (PlSqlParser.OPTIMIZE - 1121)) | (1 << (PlSqlParser.OPTIMIZER_FEATURES_ENABLE - 1121)) | (1 << (PlSqlParser.OPTIMIZER_GOAL - 1121)) | (1 << (PlSqlParser.OPT_PARAM - 1121)) | (1 << (PlSqlParser.ORA_BRANCH - 1121)) | (1 << (PlSqlParser.ORA_CHECK_ACL - 1121)) | (1 << (PlSqlParser.ORA_CHECK_PRIVILEGE - 1121)) | (1 << (PlSqlParser.ORA_CLUSTERING - 1121)) | (1 << (PlSqlParser.ORADATA - 1121)) | (1 << (PlSqlParser.ORADEBUG - 1121)) | (1 << (PlSqlParser.ORA_DST_AFFECTED - 1121)) | (1 << (PlSqlParser.ORA_DST_CONVERT - 1121)) | (1 << (PlSqlParser.ORA_DST_ERROR - 1121)) | (1 << (PlSqlParser.ORA_GET_ACLIDS - 1121)))) !== 0) || ((((_la - 1153)) & ~0x1f) == 0 && ((1 << (_la - 1153)) & ((1 << (PlSqlParser.ORA_GET_PRIVILEGES - 1153)) | (1 << (PlSqlParser.ORA_HASH - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_USERID - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_USER - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_XS_USER_GUID - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_XS_USER - 1153)) | (1 << (PlSqlParser.ORA_RAWCOMPARE - 1153)) | (1 << (PlSqlParser.ORA_RAWCONCAT - 1153)) | (1 << (PlSqlParser.ORA_ROWSCN - 1153)) | (1 << (PlSqlParser.ORA_ROWSCN_RAW - 1153)) | (1 << (PlSqlParser.ORA_ROWVERSION - 1153)) | (1 << (PlSqlParser.ORA_TABVERSION - 1153)) | (1 << (PlSqlParser.ORA_WRITE_TIME - 1153)) | (1 << (PlSqlParser.ORDERED - 1153)) | (1 << (PlSqlParser.ORDERED_PREDICATES - 1153)) | (1 << (PlSqlParser.ORDINALITY - 1153)) | (1 << (PlSqlParser.OR_EXPAND - 1153)) | (1 << (PlSqlParser.ORGANIZATION - 1153)) | (1 << (PlSqlParser.OR_PREDICATES - 1153)) | (1 << (PlSqlParser.OSERROR - 1153)) | (1 << (PlSqlParser.OTHER - 1153)) | (1 << (PlSqlParser.OUTER_JOIN_TO_ANTI - 1153)) | (1 << (PlSqlParser.OUTER_JOIN_TO_INNER - 1153)) | (1 << (PlSqlParser.OUTER - 1153)) | (1 << (PlSqlParser.OUTLINE_LEAF - 1153)) | (1 << (PlSqlParser.OUTLINE - 1153)) | (1 << (PlSqlParser.OUT_OF_LINE - 1153)) | (1 << (PlSqlParser.OUT - 1153)) | (1 << (PlSqlParser.OVERFLOW_NOMOVE - 1153)) | (1 << (PlSqlParser.OVERFLOW - 1153)))) !== 0) || ((((_la - 1185)) & ~0x1f) == 0 && ((1 << (_la - 1185)) & ((1 << (PlSqlParser.OVERLAPS - 1185)) | (1 << (PlSqlParser.OVER - 1185)) | (1 << (PlSqlParser.OVERRIDING - 1185)) | (1 << (PlSqlParser.OWNER - 1185)) | (1 << (PlSqlParser.OWNERSHIP - 1185)) | (1 << (PlSqlParser.OWN - 1185)) | (1 << (PlSqlParser.PACKAGE - 1185)) | (1 << (PlSqlParser.PACKAGES - 1185)) | (1 << (PlSqlParser.PARALLEL_ENABLE - 1185)) | (1 << (PlSqlParser.PARALLEL_INDEX - 1185)) | (1 << (PlSqlParser.PARALLEL - 1185)) | (1 << (PlSqlParser.PARAMETERS - 1185)) | (1 << (PlSqlParser.PARAM - 1185)) | (1 << (PlSqlParser.PARENT - 1185)) | (1 << (PlSqlParser.PARITY - 1185)) | (1 << (PlSqlParser.PARTIAL_JOIN - 1185)) | (1 << (PlSqlParser.PARTIALLY - 1185)) | (1 << (PlSqlParser.PARTIAL - 1185)) | (1 << (PlSqlParser.PARTIAL_ROLLUP_PUSHDOWN - 1185)) | (1 << (PlSqlParser.PARTITION_HASH - 1185)) | (1 << (PlSqlParser.PARTITION_LIST - 1185)) | (1 << (PlSqlParser.PARTITION - 1185)) | (1 << (PlSqlParser.PARTITION_RANGE - 1185)) | (1 << (PlSqlParser.PARTITIONS - 1185)) | (1 << (PlSqlParser.PARTNUMINST - 1185)) | (1 << (PlSqlParser.PASSING - 1185)) | (1 << (PlSqlParser.PASSWORD_GRACE_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD_LIFE_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD_LOCK_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD - 1185)) | (1 << (PlSqlParser.PASSWORD_REUSE_MAX - 1185)))) !== 0) || ((((_la - 1217)) & ~0x1f) == 0 && ((1 << (_la - 1217)) & ((1 << (PlSqlParser.PASSWORD_REUSE_TIME - 1217)) | (1 << (PlSqlParser.PASSWORD_VERIFY_FUNCTION - 1217)) | (1 << (PlSqlParser.PAST - 1217)) | (1 << (PlSqlParser.PATCH - 1217)) | (1 << (PlSqlParser.PATH - 1217)) | (1 << (PlSqlParser.PATH_PREFIX - 1217)) | (1 << (PlSqlParser.PATHS - 1217)) | (1 << (PlSqlParser.PATTERN - 1217)) | (1 << (PlSqlParser.PBL_HS_BEGIN - 1217)) | (1 << (PlSqlParser.PBL_HS_END - 1217)) | (1 << (PlSqlParser.PCTINCREASE - 1217)) | (1 << (PlSqlParser.PCTTHRESHOLD - 1217)) | (1 << (PlSqlParser.PCTUSED - 1217)) | (1 << (PlSqlParser.PCTVERSION - 1217)) | (1 << (PlSqlParser.PENDING - 1217)) | (1 << (PlSqlParser.PERCENT_KEYWORD - 1217)) | (1 << (PlSqlParser.PERCENT_RANKM - 1217)) | (1 << (PlSqlParser.PERFORMANCE - 1217)) | (1 << (PlSqlParser.PERIOD_KEYWORD - 1217)) | (1 << (PlSqlParser.PERMANENT - 1217)) | (1 << (PlSqlParser.PERMISSION - 1217)) | (1 << (PlSqlParser.PERMUTE - 1217)) | (1 << (PlSqlParser.PER - 1217)) | (1 << (PlSqlParser.PFILE - 1217)) | (1 << (PlSqlParser.PHYSICAL - 1217)))) !== 0) || ((((_la - 1249)) & ~0x1f) == 0 && ((1 << (_la - 1249)) & ((1 << (PlSqlParser.PIKEY - 1249)) | (1 << (PlSqlParser.PIPELINED - 1249)) | (1 << (PlSqlParser.PIV_GB - 1249)) | (1 << (PlSqlParser.PIVOT - 1249)) | (1 << (PlSqlParser.PIV_SSF - 1249)) | (1 << (PlSqlParser.PLACE_DISTINCT - 1249)) | (1 << (PlSqlParser.PLACE_GROUP_BY - 1249)) | (1 << (PlSqlParser.PLAN - 1249)) | (1 << (PlSqlParser.PLSCOPE_SETTINGS - 1249)) | (1 << (PlSqlParser.PLS_INTEGER - 1249)) | (1 << (PlSqlParser.PLSQL_CCFLAGS - 1249)) | (1 << (PlSqlParser.PLSQL_CODE_TYPE - 1249)) | (1 << (PlSqlParser.PLSQL_DEBUG - 1249)) | (1 << (PlSqlParser.PLSQL_OPTIMIZE_LEVEL - 1249)) | (1 << (PlSqlParser.PLSQL_WARNINGS - 1249)) | (1 << (PlSqlParser.PLUGGABLE - 1249)) | (1 << (PlSqlParser.POINT - 1249)) | (1 << (PlSqlParser.POLICY - 1249)) | (1 << (PlSqlParser.POOL_16K - 1249)) | (1 << (PlSqlParser.POOL_2K - 1249)) | (1 << (PlSqlParser.POOL_32K - 1249)) | (1 << (PlSqlParser.POOL_4K - 1249)) | (1 << (PlSqlParser.POOL_8K - 1249)) | (1 << (PlSqlParser.POSITIVEN - 1249)) | (1 << (PlSqlParser.POSITIVE - 1249)) | (1 << (PlSqlParser.POST_TRANSACTION - 1249)) | (1 << (PlSqlParser.POWERMULTISET_BY_CARDINALITY - 1249)) | (1 << (PlSqlParser.POWERMULTISET - 1249)) | (1 << (PlSqlParser.POWER - 1249)) | (1 << (PlSqlParser.PQ_CONCURRENT_UNION - 1249)) | (1 << (PlSqlParser.PQ_DISTRIBUTE - 1249)))) !== 0) || ((((_la - 1281)) & ~0x1f) == 0 && ((1 << (_la - 1281)) & ((1 << (PlSqlParser.PQ_DISTRIBUTE_WINDOW - 1281)) | (1 << (PlSqlParser.PQ_FILTER - 1281)) | (1 << (PlSqlParser.PQ_MAP - 1281)) | (1 << (PlSqlParser.PQ_NOMAP - 1281)) | (1 << (PlSqlParser.PQ_REPLICATE - 1281)) | (1 << (PlSqlParser.PQ_SKEW - 1281)) | (1 << (PlSqlParser.PRAGMA - 1281)) | (1 << (PlSqlParser.PREBUILT - 1281)) | (1 << (PlSqlParser.PRECEDES - 1281)) | (1 << (PlSqlParser.PRECEDING - 1281)) | (1 << (PlSqlParser.PRECISION - 1281)) | (1 << (PlSqlParser.PRECOMPUTE_SUBQUERY - 1281)) | (1 << (PlSqlParser.PREDICATE_REORDERS - 1281)) | (1 << (PlSqlParser.PRELOAD - 1281)) | (1 << (PlSqlParser.PREPARE - 1281)) | (1 << (PlSqlParser.PRESENTNNV - 1281)) | (1 << (PlSqlParser.PRESENT - 1281)) | (1 << (PlSqlParser.PRESENTV - 1281)) | (1 << (PlSqlParser.PRESERVE_OID - 1281)) | (1 << (PlSqlParser.PRESERVE - 1281)) | (1 << (PlSqlParser.PRETTY - 1281)) | (1 << (PlSqlParser.PREVIOUS - 1281)) | (1 << (PlSqlParser.PREV - 1281)) | (1 << (PlSqlParser.PRIMARY - 1281)) | (1 << (PlSqlParser.PRINTBLOBTOCLOB - 1281)) | (1 << (PlSqlParser.PRIORITY - 1281)) | (1 << (PlSqlParser.PRIVATE - 1281)) | (1 << (PlSqlParser.PRIVATE_SGA - 1281)) | (1 << (PlSqlParser.PRIVILEGED - 1281)) | (1 << (PlSqlParser.PRIVILEGE - 1281)) | (1 << (PlSqlParser.PRIVILEGES - 1281)))) !== 0) || ((((_la - 1313)) & ~0x1f) == 0 && ((1 << (_la - 1313)) & ((1 << (PlSqlParser.PROCEDURAL - 1313)) | (1 << (PlSqlParser.PROCEDURE - 1313)) | (1 << (PlSqlParser.PROCESS - 1313)) | (1 << (PlSqlParser.PROFILE - 1313)) | (1 << (PlSqlParser.PROGRAM - 1313)) | (1 << (PlSqlParser.PROJECT - 1313)) | (1 << (PlSqlParser.PROPAGATE - 1313)) | (1 << (PlSqlParser.PROTECTED - 1313)) | (1 << (PlSqlParser.PROTECTION - 1313)) | (1 << (PlSqlParser.PROXY - 1313)) | (1 << (PlSqlParser.PRUNING - 1313)) | (1 << (PlSqlParser.PULL_PRED - 1313)) | (1 << (PlSqlParser.PURGE - 1313)) | (1 << (PlSqlParser.PUSH_PRED - 1313)) | (1 << (PlSqlParser.PUSH_SUBQ - 1313)) | (1 << (PlSqlParser.PX_FAULT_TOLERANCE - 1313)) | (1 << (PlSqlParser.PX_GRANULE - 1313)) | (1 << (PlSqlParser.PX_JOIN_FILTER - 1313)) | (1 << (PlSqlParser.QB_NAME - 1313)) | (1 << (PlSqlParser.QUERY_BLOCK - 1313)) | (1 << (PlSqlParser.QUERY - 1313)) | (1 << (PlSqlParser.QUEUE_CURR - 1313)) | (1 << (PlSqlParser.QUEUE - 1313)) | (1 << (PlSqlParser.QUEUE_ROWP - 1313)) | (1 << (PlSqlParser.QUIESCE - 1313)) | (1 << (PlSqlParser.QUORUM - 1313)) | (1 << (PlSqlParser.QUOTA - 1313)) | (1 << (PlSqlParser.RAISE - 1313)) | (1 << (PlSqlParser.RANDOM_LOCAL - 1313)) | (1 << (PlSqlParser.RANDOM - 1313)) | (1 << (PlSqlParser.RANGE - 1313)))) !== 0) || ((((_la - 1345)) & ~0x1f) == 0 && ((1 << (_la - 1345)) & ((1 << (PlSqlParser.RANKM - 1345)) | (1 << (PlSqlParser.RAPIDLY - 1345)) | (1 << (PlSqlParser.RAW - 1345)) | (1 << (PlSqlParser.RAWTOHEX - 1345)) | (1 << (PlSqlParser.RAWTONHEX - 1345)) | (1 << (PlSqlParser.RBA - 1345)) | (1 << (PlSqlParser.RBO_OUTLINE - 1345)) | (1 << (PlSqlParser.RDBA - 1345)) | (1 << (PlSqlParser.READ - 1345)) | (1 << (PlSqlParser.READS - 1345)) | (1 << (PlSqlParser.REALM - 1345)) | (1 << (PlSqlParser.REAL - 1345)) | (1 << (PlSqlParser.REBALANCE - 1345)) | (1 << (PlSqlParser.REBUILD - 1345)) | (1 << (PlSqlParser.RECORD - 1345)) | (1 << (PlSqlParser.RECORDS_PER_BLOCK - 1345)) | (1 << (PlSqlParser.RECOVERABLE - 1345)) | (1 << (PlSqlParser.RECOVER - 1345)) | (1 << (PlSqlParser.RECOVERY - 1345)) | (1 << (PlSqlParser.RECYCLEBIN - 1345)) | (1 << (PlSqlParser.RECYCLE - 1345)) | (1 << (PlSqlParser.REDACTION - 1345)) | (1 << (PlSqlParser.REDEFINE - 1345)) | (1 << (PlSqlParser.REDO - 1345)) | (1 << (PlSqlParser.REDUCED - 1345)) | (1 << (PlSqlParser.REDUNDANCY - 1345)) | (1 << (PlSqlParser.REF_CASCADE_CURSOR - 1345)) | (1 << (PlSqlParser.REFERENCED - 1345)) | (1 << (PlSqlParser.REFERENCE - 1345)) | (1 << (PlSqlParser.REFERENCES - 1345)) | (1 << (PlSqlParser.REFERENCING - 1345)) | (1 << (PlSqlParser.REF - 1345)))) !== 0) || ((((_la - 1377)) & ~0x1f) == 0 && ((1 << (_la - 1377)) & ((1 << (PlSqlParser.REFRESH - 1377)) | (1 << (PlSqlParser.REFTOHEX - 1377)) | (1 << (PlSqlParser.REGEXP_COUNT - 1377)) | (1 << (PlSqlParser.REGEXP_INSTR - 1377)) | (1 << (PlSqlParser.REGEXP_LIKE - 1377)) | (1 << (PlSqlParser.REGEXP_REPLACE - 1377)) | (1 << (PlSqlParser.REGEXP_SUBSTR - 1377)) | (1 << (PlSqlParser.REGISTER - 1377)) | (1 << (PlSqlParser.REGR_AVGX - 1377)) | (1 << (PlSqlParser.REGR_AVGY - 1377)) | (1 << (PlSqlParser.REGR_COUNT - 1377)) | (1 << (PlSqlParser.REGR_INTERCEPT - 1377)) | (1 << (PlSqlParser.REGR_R2 - 1377)) | (1 << (PlSqlParser.REGR_SLOPE - 1377)) | (1 << (PlSqlParser.REGR_SXX - 1377)) | (1 << (PlSqlParser.REGR_SXY - 1377)) | (1 << (PlSqlParser.REGR_SYY - 1377)) | (1 << (PlSqlParser.REGULAR - 1377)) | (1 << (PlSqlParser.REJECT - 1377)) | (1 << (PlSqlParser.REKEY - 1377)) | (1 << (PlSqlParser.RELATIONAL - 1377)) | (1 << (PlSqlParser.RELOCATE - 1377)) | (1 << (PlSqlParser.RELY - 1377)) | (1 << (PlSqlParser.REMAINDER - 1377)) | (1 << (PlSqlParser.REMOTE_MAPPED - 1377)) | (1 << (PlSqlParser.REMOVE - 1377)) | (1 << (PlSqlParser.RENAME - 1377)) | (1 << (PlSqlParser.REPAIR - 1377)) | (1 << (PlSqlParser.REPEAT - 1377)) | (1 << (PlSqlParser.REPLACE - 1377)) | (1 << (PlSqlParser.REPLICATION - 1377)))) !== 0) || ((((_la - 1409)) & ~0x1f) == 0 && ((1 << (_la - 1409)) & ((1 << (PlSqlParser.REQUIRED - 1409)) | (1 << (PlSqlParser.RESETLOGS - 1409)) | (1 << (PlSqlParser.RESET - 1409)) | (1 << (PlSqlParser.RESIZE - 1409)) | (1 << (PlSqlParser.RESOLVE - 1409)) | (1 << (PlSqlParser.RESOLVER - 1409)) | (1 << (PlSqlParser.RESPECT - 1409)) | (1 << (PlSqlParser.RESTART - 1409)) | (1 << (PlSqlParser.RESTORE_AS_INTERVALS - 1409)) | (1 << (PlSqlParser.RESTORE - 1409)) | (1 << (PlSqlParser.RESTRICT_ALL_REF_CONS - 1409)) | (1 << (PlSqlParser.RESTRICTED - 1409)) | (1 << (PlSqlParser.RESTRICT_REFERENCES - 1409)) | (1 << (PlSqlParser.RESTRICT - 1409)) | (1 << (PlSqlParser.RESULT_CACHE - 1409)) | (1 << (PlSqlParser.RESULT - 1409)) | (1 << (PlSqlParser.RESUMABLE - 1409)) | (1 << (PlSqlParser.RESUME - 1409)) | (1 << (PlSqlParser.RETENTION - 1409)) | (1 << (PlSqlParser.RETRY_ON_ROW_CHANGE - 1409)) | (1 << (PlSqlParser.RETURNING - 1409)) | (1 << (PlSqlParser.RETURN - 1409)) | (1 << (PlSqlParser.REUSE - 1409)) | (1 << (PlSqlParser.REVERSE - 1409)) | (1 << (PlSqlParser.REWRITE_OR_ERROR - 1409)) | (1 << (PlSqlParser.REWRITE - 1409)) | (1 << (PlSqlParser.RIGHT - 1409)) | (1 << (PlSqlParser.ROLE - 1409)) | (1 << (PlSqlParser.ROLESET - 1409)) | (1 << (PlSqlParser.ROLES - 1409)))) !== 0) || ((((_la - 1441)) & ~0x1f) == 0 && ((1 << (_la - 1441)) & ((1 << (PlSqlParser.ROLLBACK - 1441)) | (1 << (PlSqlParser.ROLLING - 1441)) | (1 << (PlSqlParser.ROLLUP - 1441)) | (1 << (PlSqlParser.ROWDEPENDENCIES - 1441)) | (1 << (PlSqlParser.ROWID_MAPPING_TABLE - 1441)) | (1 << (PlSqlParser.ROWID - 1441)) | (1 << (PlSqlParser.ROWIDTOCHAR - 1441)) | (1 << (PlSqlParser.ROWIDTONCHAR - 1441)) | (1 << (PlSqlParser.ROW_LENGTH - 1441)) | (1 << (PlSqlParser.ROWNUM - 1441)) | (1 << (PlSqlParser.ROW - 1441)) | (1 << (PlSqlParser.ROWS - 1441)) | (1 << (PlSqlParser.RPAD - 1441)) | (1 << (PlSqlParser.RTRIM - 1441)) | (1 << (PlSqlParser.RULE - 1441)) | (1 << (PlSqlParser.RULES - 1441)) | (1 << (PlSqlParser.RUNNING - 1441)) | (1 << (PlSqlParser.SALT - 1441)) | (1 << (PlSqlParser.SAMPLE - 1441)) | (1 << (PlSqlParser.SAVE_AS_INTERVALS - 1441)) | (1 << (PlSqlParser.SAVEPOINT - 1441)) | (1 << (PlSqlParser.SAVE - 1441)) | (1 << (PlSqlParser.SB4 - 1441)) | (1 << (PlSqlParser.SCALE_ROWS - 1441)) | (1 << (PlSqlParser.SCALE - 1441)) | (1 << (PlSqlParser.SCAN_INSTANCES - 1441)) | (1 << (PlSqlParser.SCAN - 1441)) | (1 << (PlSqlParser.SCHEDULER - 1441)) | (1 << (PlSqlParser.SCHEMACHECK - 1441)) | (1 << (PlSqlParser.SCHEMA - 1441)) | (1 << (PlSqlParser.SCN_ASCENDING - 1441)) | (1 << (PlSqlParser.SCN - 1441)))) !== 0) || ((((_la - 1473)) & ~0x1f) == 0 && ((1 << (_la - 1473)) & ((1 << (PlSqlParser.SCOPE - 1473)) | (1 << (PlSqlParser.SCRUB - 1473)) | (1 << (PlSqlParser.SD_ALL - 1473)) | (1 << (PlSqlParser.SD_INHIBIT - 1473)) | (1 << (PlSqlParser.SDO_GEOM_MBR - 1473)) | (1 << (PlSqlParser.SD_SHOW - 1473)) | (1 << (PlSqlParser.SEARCH - 1473)) | (1 << (PlSqlParser.SECOND - 1473)) | (1 << (PlSqlParser.SECRET - 1473)) | (1 << (PlSqlParser.SECUREFILE_DBA - 1473)) | (1 << (PlSqlParser.SECUREFILE - 1473)) | (1 << (PlSqlParser.SECURITY - 1473)) | (1 << (PlSqlParser.SEED - 1473)) | (1 << (PlSqlParser.SEG_BLOCK - 1473)) | (1 << (PlSqlParser.SEG_FILE - 1473)) | (1 << (PlSqlParser.SEGMENT - 1473)) | (1 << (PlSqlParser.SELECTIVITY - 1473)) | (1 << (PlSqlParser.SELF - 1473)) | (1 << (PlSqlParser.SEMIJOIN_DRIVER - 1473)) | (1 << (PlSqlParser.SEMIJOIN - 1473)) | (1 << (PlSqlParser.SEMI_TO_INNER - 1473)) | (1 << (PlSqlParser.SEQUENCED - 1473)) | (1 << (PlSqlParser.SEQUENCE - 1473)) | (1 << (PlSqlParser.SEQUENTIAL - 1473)) | (1 << (PlSqlParser.SERIALIZABLE - 1473)) | (1 << (PlSqlParser.SERIALLY_REUSABLE - 1473)) | (1 << (PlSqlParser.SERIAL - 1473)) | (1 << (PlSqlParser.SERVERERROR - 1473)) | (1 << (PlSqlParser.SERVICE_NAME_CONVERT - 1473)) | (1 << (PlSqlParser.SERVICES - 1473)))) !== 0) || ((((_la - 1505)) & ~0x1f) == 0 && ((1 << (_la - 1505)) & ((1 << (PlSqlParser.SESSION_CACHED_CURSORS - 1505)) | (1 << (PlSqlParser.SESSION - 1505)) | (1 << (PlSqlParser.SESSIONS_PER_USER - 1505)) | (1 << (PlSqlParser.SESSIONTIMEZONE - 1505)) | (1 << (PlSqlParser.SESSIONTZNAME - 1505)) | (1 << (PlSqlParser.SET - 1505)) | (1 << (PlSqlParser.SETS - 1505)) | (1 << (PlSqlParser.SETTINGS - 1505)) | (1 << (PlSqlParser.SET_TO_JOIN - 1505)) | (1 << (PlSqlParser.SEVERE - 1505)) | (1 << (PlSqlParser.SHARED_POOL - 1505)) | (1 << (PlSqlParser.SHARED - 1505)) | (1 << (PlSqlParser.SHARING - 1505)) | (1 << (PlSqlParser.SHELFLIFE - 1505)) | (1 << (PlSqlParser.SHOW - 1505)) | (1 << (PlSqlParser.SHRINK - 1505)) | (1 << (PlSqlParser.SHUTDOWN - 1505)) | (1 << (PlSqlParser.SIBLINGS - 1505)) | (1 << (PlSqlParser.SID - 1505)) | (1 << (PlSqlParser.SIGNAL_COMPONENT - 1505)) | (1 << (PlSqlParser.SIGNAL_FUNCTION - 1505)) | (1 << (PlSqlParser.SIGN - 1505)) | (1 << (PlSqlParser.SIGNTYPE - 1505)) | (1 << (PlSqlParser.SIMPLE_INTEGER - 1505)) | (1 << (PlSqlParser.SIMPLE - 1505)) | (1 << (PlSqlParser.SINGLE - 1505)) | (1 << (PlSqlParser.SINGLETASK - 1505)) | (1 << (PlSqlParser.SINH - 1505)) | (1 << (PlSqlParser.SIN - 1505)) | (1 << (PlSqlParser.SKIP_EXT_OPTIMIZER - 1505)))) !== 0) || ((((_la - 1537)) & ~0x1f) == 0 && ((1 << (_la - 1537)) & ((1 << (PlSqlParser.SKIP_ - 1537)) | (1 << (PlSqlParser.SKIP_UNQ_UNUSABLE_IDX - 1537)) | (1 << (PlSqlParser.SKIP_UNUSABLE_INDEXES - 1537)) | (1 << (PlSqlParser.SMALLFILE - 1537)) | (1 << (PlSqlParser.SMALLINT - 1537)) | (1 << (PlSqlParser.SNAPSHOT - 1537)) | (1 << (PlSqlParser.SOME - 1537)) | (1 << (PlSqlParser.SORT - 1537)) | (1 << (PlSqlParser.SOUNDEX - 1537)) | (1 << (PlSqlParser.SOURCE_FILE_DIRECTORY - 1537)) | (1 << (PlSqlParser.SOURCE_FILE_NAME_CONVERT - 1537)) | (1 << (PlSqlParser.SOURCE - 1537)) | (1 << (PlSqlParser.SPACE_KEYWORD - 1537)) | (1 << (PlSqlParser.SPECIFICATION - 1537)) | (1 << (PlSqlParser.SPFILE - 1537)) | (1 << (PlSqlParser.SPLIT - 1537)) | (1 << (PlSqlParser.SPREADSHEET - 1537)) | (1 << (PlSqlParser.SQLDATA - 1537)) | (1 << (PlSqlParser.SQLERROR - 1537)) | (1 << (PlSqlParser.SQLLDR - 1537)) | (1 << (PlSqlParser.SQL - 1537)) | (1 << (PlSqlParser.SQL_TRACE - 1537)) | (1 << (PlSqlParser.SQL_TRANSLATION_PROFILE - 1537)) | (1 << (PlSqlParser.SQRT - 1537)) | (1 << (PlSqlParser.STALE - 1537)) | (1 << (PlSqlParser.STANDALONE - 1537)) | (1 << (PlSqlParser.STANDARD_HASH - 1537)) | (1 << (PlSqlParser.STANDBY_MAX_DATA_DELAY - 1537)) | (1 << (PlSqlParser.STANDBYS - 1537)) | (1 << (PlSqlParser.STANDBY - 1537)) | (1 << (PlSqlParser.STAR - 1537)) | (1 << (PlSqlParser.STAR_TRANSFORMATION - 1537)))) !== 0) || ((((_la - 1570)) & ~0x1f) == 0 && ((1 << (_la - 1570)) & ((1 << (PlSqlParser.STARTUP - 1570)) | (1 << (PlSqlParser.STATEMENT_ID - 1570)) | (1 << (PlSqlParser.STATEMENT_QUEUING - 1570)) | (1 << (PlSqlParser.STATEMENTS - 1570)) | (1 << (PlSqlParser.STATEMENT - 1570)) | (1 << (PlSqlParser.STATE - 1570)) | (1 << (PlSqlParser.STATIC - 1570)) | (1 << (PlSqlParser.STATISTICS - 1570)) | (1 << (PlSqlParser.STATS_BINOMIAL_TEST - 1570)) | (1 << (PlSqlParser.STATS_CROSSTAB - 1570)) | (1 << (PlSqlParser.STATS_F_TEST - 1570)) | (1 << (PlSqlParser.STATS_KS_TEST - 1570)) | (1 << (PlSqlParser.STATS_MODE - 1570)) | (1 << (PlSqlParser.STATS_MW_TEST - 1570)) | (1 << (PlSqlParser.STATS_ONE_WAY_ANOVA - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_INDEP - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_INDEPU - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_ONE - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_PAIRED - 1570)) | (1 << (PlSqlParser.STATS_WSR_TEST - 1570)) | (1 << (PlSqlParser.STDDEV_POP - 1570)) | (1 << (PlSqlParser.STDDEV_SAMP - 1570)) | (1 << (PlSqlParser.STOP - 1570)) | (1 << (PlSqlParser.STORAGE - 1570)) | (1 << (PlSqlParser.STORE - 1570)) | (1 << (PlSqlParser.STREAMS - 1570)) | (1 << (PlSqlParser.STREAM - 1570)) | (1 << (PlSqlParser.STRICT - 1570)) | (1 << (PlSqlParser.STRING - 1570)) | (1 << (PlSqlParser.STRIPE_COLUMNS - 1570)) | (1 << (PlSqlParser.STRIPE_WIDTH - 1570)) | (1 << (PlSqlParser.STRIP - 1570)))) !== 0) || ((((_la - 1602)) & ~0x1f) == 0 && ((1 << (_la - 1602)) & ((1 << (PlSqlParser.STRUCTURE - 1602)) | (1 << (PlSqlParser.SUBMULTISET - 1602)) | (1 << (PlSqlParser.SUBPARTITION_REL - 1602)) | (1 << (PlSqlParser.SUBPARTITIONS - 1602)) | (1 << (PlSqlParser.SUBPARTITION - 1602)) | (1 << (PlSqlParser.SUBQUERIES - 1602)) | (1 << (PlSqlParser.SUBQUERY_PRUNING - 1602)) | (1 << (PlSqlParser.SUBSCRIBE - 1602)) | (1 << (PlSqlParser.SUBSET - 1602)) | (1 << (PlSqlParser.SUBSTITUTABLE - 1602)) | (1 << (PlSqlParser.SUBSTR2 - 1602)) | (1 << (PlSqlParser.SUBSTR4 - 1602)) | (1 << (PlSqlParser.SUBSTRB - 1602)) | (1 << (PlSqlParser.SUBSTRC - 1602)) | (1 << (PlSqlParser.SUBTYPE - 1602)) | (1 << (PlSqlParser.SUCCESSFUL - 1602)) | (1 << (PlSqlParser.SUCCESS - 1602)) | (1 << (PlSqlParser.SUMMARY - 1602)) | (1 << (PlSqlParser.SUPPLEMENTAL - 1602)) | (1 << (PlSqlParser.SUSPEND - 1602)) | (1 << (PlSqlParser.SWAP_JOIN_INPUTS - 1602)) | (1 << (PlSqlParser.SWITCHOVER - 1602)) | (1 << (PlSqlParser.SWITCH - 1602)) | (1 << (PlSqlParser.SYNCHRONOUS - 1602)) | (1 << (PlSqlParser.SYNC - 1602)) | (1 << (PlSqlParser.SYSASM - 1602)) | (1 << (PlSqlParser.SYS_AUDIT - 1602)) | (1 << (PlSqlParser.SYSAUX - 1602)) | (1 << (PlSqlParser.SYSBACKUP - 1602)) | (1 << (PlSqlParser.SYS_CHECKACL - 1602)) | (1 << (PlSqlParser.SYS_CHECK_PRIVILEGE - 1602)))) !== 0) || ((((_la - 1634)) & ~0x1f) == 0 && ((1 << (_la - 1634)) & ((1 << (PlSqlParser.SYS_CONNECT_BY_PATH - 1634)) | (1 << (PlSqlParser.SYS_CONTEXT - 1634)) | (1 << (PlSqlParser.SYSDATE - 1634)) | (1 << (PlSqlParser.SYSDBA - 1634)) | (1 << (PlSqlParser.SYS_DBURIGEN - 1634)) | (1 << (PlSqlParser.SYSDG - 1634)) | (1 << (PlSqlParser.SYS_DL_CURSOR - 1634)) | (1 << (PlSqlParser.SYS_DM_RXFORM_CHR - 1634)) | (1 << (PlSqlParser.SYS_DM_RXFORM_NUM - 1634)) | (1 << (PlSqlParser.SYS_DOM_COMPARE - 1634)) | (1 << (PlSqlParser.SYS_DST_PRIM2SEC - 1634)) | (1 << (PlSqlParser.SYS_DST_SEC2PRIM - 1634)) | (1 << (PlSqlParser.SYS_ET_BFILE_TO_RAW - 1634)) | (1 << (PlSqlParser.SYS_ET_BLOB_TO_IMAGE - 1634)) | (1 << (PlSqlParser.SYS_ET_IMAGE_TO_BLOB - 1634)) | (1 << (PlSqlParser.SYS_ET_RAW_TO_BFILE - 1634)) | (1 << (PlSqlParser.SYS_EXTPDTXT - 1634)) | (1 << (PlSqlParser.SYS_EXTRACT_UTC - 1634)) | (1 << (PlSqlParser.SYS_FBT_INSDEL - 1634)) | (1 << (PlSqlParser.SYS_FILTER_ACLS - 1634)) | (1 << (PlSqlParser.SYS_FNMATCHES - 1634)) | (1 << (PlSqlParser.SYS_FNREPLACE - 1634)) | (1 << (PlSqlParser.SYS_GET_ACLIDS - 1634)) | (1 << (PlSqlParser.SYS_GET_COL_ACLIDS - 1634)) | (1 << (PlSqlParser.SYS_GET_PRIVILEGES - 1634)) | (1 << (PlSqlParser.SYS_GETTOKENID - 1634)) | (1 << (PlSqlParser.SYS_GETXTIVAL - 1634)) | (1 << (PlSqlParser.SYS_GUID - 1634)) | (1 << (PlSqlParser.SYSGUID - 1634)) | (1 << (PlSqlParser.SYSKM - 1634)) | (1 << (PlSqlParser.SYS_MAKE_XMLNODEID - 1634)) | (1 << (PlSqlParser.SYS_MAKEXML - 1634)))) !== 0) || ((((_la - 1666)) & ~0x1f) == 0 && ((1 << (_la - 1666)) & ((1 << (PlSqlParser.SYS_MKXMLATTR - 1666)) | (1 << (PlSqlParser.SYS_MKXTI - 1666)) | (1 << (PlSqlParser.SYSOBJ - 1666)) | (1 << (PlSqlParser.SYS_OP_ADT2BIN - 1666)) | (1 << (PlSqlParser.SYS_OP_ADTCONS - 1666)) | (1 << (PlSqlParser.SYS_OP_ALSCRVAL - 1666)) | (1 << (PlSqlParser.SYS_OP_ATG - 1666)) | (1 << (PlSqlParser.SYS_OP_BIN2ADT - 1666)) | (1 << (PlSqlParser.SYS_OP_BITVEC - 1666)) | (1 << (PlSqlParser.SYS_OP_BL2R - 1666)) | (1 << (PlSqlParser.SYS_OP_BLOOM_FILTER_LIST - 1666)) | (1 << (PlSqlParser.SYS_OP_BLOOM_FILTER - 1666)) | (1 << (PlSqlParser.SYS_OP_C2C - 1666)) | (1 << (PlSqlParser.SYS_OP_CAST - 1666)) | (1 << (PlSqlParser.SYS_OP_CEG - 1666)) | (1 << (PlSqlParser.SYS_OP_CL2C - 1666)) | (1 << (PlSqlParser.SYS_OP_COMBINED_HASH - 1666)) | (1 << (PlSqlParser.SYS_OP_COMP - 1666)) | (1 << (PlSqlParser.SYS_OP_CONVERT - 1666)) | (1 << (PlSqlParser.SYS_OP_COUNTCHG - 1666)) | (1 << (PlSqlParser.SYS_OP_CSCONV - 1666)) | (1 << (PlSqlParser.SYS_OP_CSCONVTEST - 1666)) | (1 << (PlSqlParser.SYS_OP_CSR - 1666)) | (1 << (PlSqlParser.SYS_OP_CSX_PATCH - 1666)) | (1 << (PlSqlParser.SYS_OP_CYCLED_SEQ - 1666)) | (1 << (PlSqlParser.SYS_OP_DECOMP - 1666)) | (1 << (PlSqlParser.SYS_OP_DESCEND - 1666)) | (1 << (PlSqlParser.SYS_OP_DISTINCT - 1666)) | (1 << (PlSqlParser.SYS_OP_DRA - 1666)) | (1 << (PlSqlParser.SYS_OP_DUMP - 1666)) | (1 << (PlSqlParser.SYS_OP_DV_CHECK - 1666)) | (1 << (PlSqlParser.SYS_OP_ENFORCE_NOT_NULL - 1666)))) !== 0) || ((((_la - 1698)) & ~0x1f) == 0 && ((1 << (_la - 1698)) & ((1 << (PlSqlParser.SYSOPER - 1698)) | (1 << (PlSqlParser.SYS_OP_EXTRACT - 1698)) | (1 << (PlSqlParser.SYS_OP_GROUPING - 1698)) | (1 << (PlSqlParser.SYS_OP_GUID - 1698)) | (1 << (PlSqlParser.SYS_OP_HASH - 1698)) | (1 << (PlSqlParser.SYS_OP_IIX - 1698)) | (1 << (PlSqlParser.SYS_OP_ITR - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_CREATE - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_FILTER_LIST - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_FILTER - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_SUCCEEDED - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_USE - 1698)) | (1 << (PlSqlParser.SYS_OP_LBID - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2BLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2CLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2ID - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2NCLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2TYP - 1698)) | (1 << (PlSqlParser.SYS_OP_LSVI - 1698)) | (1 << (PlSqlParser.SYS_OP_LVL - 1698)) | (1 << (PlSqlParser.SYS_OP_MAKEOID - 1698)) | (1 << (PlSqlParser.SYS_OP_MAP_NONNULL - 1698)) | (1 << (PlSqlParser.SYS_OP_MSR - 1698)) | (1 << (PlSqlParser.SYS_OP_NICOMBINE - 1698)) | (1 << (PlSqlParser.SYS_OP_NIEXTRACT - 1698)) | (1 << (PlSqlParser.SYS_OP_NII - 1698)) | (1 << (PlSqlParser.SYS_OP_NIX - 1698)) | (1 << (PlSqlParser.SYS_OP_NOEXPAND - 1698)) | (1 << (PlSqlParser.SYS_OP_NTCIMG - 1698)) | (1 << (PlSqlParser.SYS_OP_NUMTORAW - 1698)) | (1 << (PlSqlParser.SYS_OP_OIDVALUE - 1698)) | (1 << (PlSqlParser.SYS_OP_OPNSIZE - 1698)))) !== 0) || ((((_la - 1730)) & ~0x1f) == 0 && ((1 << (_la - 1730)) & ((1 << (PlSqlParser.SYS_OP_PAR_1 - 1730)) | (1 << (PlSqlParser.SYS_OP_PARGID_1 - 1730)) | (1 << (PlSqlParser.SYS_OP_PARGID - 1730)) | (1 << (PlSqlParser.SYS_OP_PAR - 1730)) | (1 << (PlSqlParser.SYS_OP_PART_ID - 1730)) | (1 << (PlSqlParser.SYS_OP_PIVOT - 1730)) | (1 << (PlSqlParser.SYS_OP_R2O - 1730)) | (1 << (PlSqlParser.SYS_OP_RAWTONUM - 1730)) | (1 << (PlSqlParser.SYS_OP_RDTM - 1730)) | (1 << (PlSqlParser.SYS_OP_REF - 1730)) | (1 << (PlSqlParser.SYS_OP_RMTD - 1730)) | (1 << (PlSqlParser.SYS_OP_ROWIDTOOBJ - 1730)) | (1 << (PlSqlParser.SYS_OP_RPB - 1730)) | (1 << (PlSqlParser.SYS_OPTLOBPRBSC - 1730)) | (1 << (PlSqlParser.SYS_OP_TOSETID - 1730)) | (1 << (PlSqlParser.SYS_OP_TPR - 1730)) | (1 << (PlSqlParser.SYS_OP_TRTB - 1730)) | (1 << (PlSqlParser.SYS_OPTXICMP - 1730)) | (1 << (PlSqlParser.SYS_OPTXQCASTASNQ - 1730)) | (1 << (PlSqlParser.SYS_OP_UNDESCEND - 1730)) | (1 << (PlSqlParser.SYS_OP_VECAND - 1730)) | (1 << (PlSqlParser.SYS_OP_VECBIT - 1730)) | (1 << (PlSqlParser.SYS_OP_VECOR - 1730)) | (1 << (PlSqlParser.SYS_OP_VECXOR - 1730)) | (1 << (PlSqlParser.SYS_OP_VERSION - 1730)) | (1 << (PlSqlParser.SYS_OP_VREF - 1730)) | (1 << (PlSqlParser.SYS_OP_VVD - 1730)) | (1 << (PlSqlParser.SYS_OP_XMLCONS_FOR_CSX - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHATG - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHIDX - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHOP - 1730)) | (1 << (PlSqlParser.SYS_OP_XTXT2SQLT - 1730)))) !== 0) || ((((_la - 1762)) & ~0x1f) == 0 && ((1 << (_la - 1762)) & ((1 << (PlSqlParser.SYS_OP_ZONE_ID - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_DEPTH - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_MAXCHILD - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_PARENT - 1762)) | (1 << (PlSqlParser.SYS_PARALLEL_TXN - 1762)) | (1 << (PlSqlParser.SYS_PATHID_IS_ATTR - 1762)) | (1 << (PlSqlParser.SYS_PATHID_IS_NMSPC - 1762)) | (1 << (PlSqlParser.SYS_PATHID_LASTNAME - 1762)) | (1 << (PlSqlParser.SYS_PATHID_LASTNMSPC - 1762)) | (1 << (PlSqlParser.SYS_PATH_REVERSE - 1762)) | (1 << (PlSqlParser.SYS_PXQEXTRACT - 1762)) | (1 << (PlSqlParser.SYS_RAW_TO_XSID - 1762)) | (1 << (PlSqlParser.SYS_RID_ORDER - 1762)) | (1 << (PlSqlParser.SYS_ROW_DELTA - 1762)) | (1 << (PlSqlParser.SYS_SC_2_XMLT - 1762)) | (1 << (PlSqlParser.SYS_SYNRCIREDO - 1762)) | (1 << (PlSqlParser.SYSTEM_DEFINED - 1762)) | (1 << (PlSqlParser.SYSTEM - 1762)) | (1 << (PlSqlParser.SYSTIMESTAMP - 1762)) | (1 << (PlSqlParser.SYS_TYPEID - 1762)) | (1 << (PlSqlParser.SYS_UMAKEXML - 1762)) | (1 << (PlSqlParser.SYS_XMLANALYZE - 1762)) | (1 << (PlSqlParser.SYS_XMLCONTAINS - 1762)) | (1 << (PlSqlParser.SYS_XMLCONV - 1762)) | (1 << (PlSqlParser.SYS_XMLEXNSURI - 1762)) | (1 << (PlSqlParser.SYS_XMLGEN - 1762)) | (1 << (PlSqlParser.SYS_XMLI_LOC_ISNODE - 1762)) | (1 << (PlSqlParser.SYS_XMLI_LOC_ISTEXT - 1762)) | (1 << (PlSqlParser.SYS_XMLINSTR - 1762)) | (1 << (PlSqlParser.SYS_XMLLOCATOR_GETSVAL - 1762)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETCID - 1762)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETLOCATOR - 1762)))) !== 0) || ((((_la - 1794)) & ~0x1f) == 0 && ((1 << (_la - 1794)) & ((1 << (PlSqlParser.SYS_XMLNODEID_GETOKEY - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETPATHID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETPTRID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETRID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETSVAL - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETTID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID - 1794)) | (1 << (PlSqlParser.SYS_XMLT_2_SC - 1794)) | (1 << (PlSqlParser.SYS_XMLTRANSLATE - 1794)) | (1 << (PlSqlParser.SYS_XMLTYPE2SQL - 1794)) | (1 << (PlSqlParser.SYS_XQ_ASQLCNV - 1794)) | (1 << (PlSqlParser.SYS_XQ_ATOMCNVCHK - 1794)) | (1 << (PlSqlParser.SYS_XQBASEURI - 1794)) | (1 << (PlSqlParser.SYS_XQCASTABLEERRH - 1794)) | (1 << (PlSqlParser.SYS_XQCODEP2STR - 1794)) | (1 << (PlSqlParser.SYS_XQCODEPEQ - 1794)) | (1 << (PlSqlParser.SYS_XQCON2SEQ - 1794)) | (1 << (PlSqlParser.SYS_XQCONCAT - 1794)) | (1 << (PlSqlParser.SYS_XQDELETE - 1794)) | (1 << (PlSqlParser.SYS_XQDFLTCOLATION - 1794)) | (1 << (PlSqlParser.SYS_XQDOC - 1794)) | (1 << (PlSqlParser.SYS_XQDOCURI - 1794)) | (1 << (PlSqlParser.SYS_XQDURDIV - 1794)) | (1 << (PlSqlParser.SYS_XQED4URI - 1794)) | (1 << (PlSqlParser.SYS_XQENDSWITH - 1794)) | (1 << (PlSqlParser.SYS_XQERRH - 1794)) | (1 << (PlSqlParser.SYS_XQERR - 1794)) | (1 << (PlSqlParser.SYS_XQESHTMLURI - 1794)) | (1 << (PlSqlParser.SYS_XQEXLOBVAL - 1794)) | (1 << (PlSqlParser.SYS_XQEXSTWRP - 1794)) | (1 << (PlSqlParser.SYS_XQEXTRACT - 1794)) | (1 << (PlSqlParser.SYS_XQEXTRREF - 1794)))) !== 0) || ((((_la - 1826)) & ~0x1f) == 0 && ((1 << (_la - 1826)) & ((1 << (PlSqlParser.SYS_XQEXVAL - 1826)) | (1 << (PlSqlParser.SYS_XQFB2STR - 1826)) | (1 << (PlSqlParser.SYS_XQFNBOOL - 1826)) | (1 << (PlSqlParser.SYS_XQFNCMP - 1826)) | (1 << (PlSqlParser.SYS_XQFNDATIM - 1826)) | (1 << (PlSqlParser.SYS_XQFNLNAME - 1826)) | (1 << (PlSqlParser.SYS_XQFNNM - 1826)) | (1 << (PlSqlParser.SYS_XQFNNSURI - 1826)) | (1 << (PlSqlParser.SYS_XQFNPREDTRUTH - 1826)) | (1 << (PlSqlParser.SYS_XQFNQNM - 1826)) | (1 << (PlSqlParser.SYS_XQFNROOT - 1826)) | (1 << (PlSqlParser.SYS_XQFORMATNUM - 1826)) | (1 << (PlSqlParser.SYS_XQFTCONTAIN - 1826)) | (1 << (PlSqlParser.SYS_XQFUNCR - 1826)) | (1 << (PlSqlParser.SYS_XQGETCONTENT - 1826)) | (1 << (PlSqlParser.SYS_XQINDXOF - 1826)) | (1 << (PlSqlParser.SYS_XQINSERT - 1826)) | (1 << (PlSqlParser.SYS_XQINSPFX - 1826)) | (1 << (PlSqlParser.SYS_XQIRI2URI - 1826)) | (1 << (PlSqlParser.SYS_XQLANG - 1826)) | (1 << (PlSqlParser.SYS_XQLLNMFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQMKNODEREF - 1826)) | (1 << (PlSqlParser.SYS_XQNILLED - 1826)) | (1 << (PlSqlParser.SYS_XQNODENAME - 1826)) | (1 << (PlSqlParser.SYS_XQNORMSPACE - 1826)) | (1 << (PlSqlParser.SYS_XQNORMUCODE - 1826)) | (1 << (PlSqlParser.SYS_XQ_NRNG - 1826)) | (1 << (PlSqlParser.SYS_XQNSP4PFX - 1826)) | (1 << (PlSqlParser.SYS_XQNSPFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQPFXFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQ_PKSQL2XML - 1826)) | (1 << (PlSqlParser.SYS_XQPOLYABS - 1826)))) !== 0) || ((((_la - 1858)) & ~0x1f) == 0 && ((1 << (_la - 1858)) & ((1 << (PlSqlParser.SYS_XQPOLYADD - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCEL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCSTBL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCST - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYDIV - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYFLR - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYMOD - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYMUL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYRND - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYSQRT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYSUB - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYUMUS - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYUPLS - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVEQ - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVGE - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVGT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVLE - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVLT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVNE - 1858)) | (1 << (PlSqlParser.SYS_XQREF2VAL - 1858)) | (1 << (PlSqlParser.SYS_XQRENAME - 1858)) | (1 << (PlSqlParser.SYS_XQREPLACE - 1858)) | (1 << (PlSqlParser.SYS_XQRESVURI - 1858)) | (1 << (PlSqlParser.SYS_XQRNDHALF2EVN - 1858)) | (1 << (PlSqlParser.SYS_XQRSLVQNM - 1858)) | (1 << (PlSqlParser.SYS_XQRYENVPGET - 1858)) | (1 << (PlSqlParser.SYS_XQRYVARGET - 1858)) | (1 << (PlSqlParser.SYS_XQRYWRP - 1858)) | (1 << (PlSqlParser.SYS_XQSEQ2CON4XC - 1858)) | (1 << (PlSqlParser.SYS_XQSEQ2CON - 1858)) | (1 << (PlSqlParser.SYS_XQSEQDEEPEQ - 1858)) | (1 << (PlSqlParser.SYS_XQSEQINSB - 1858)))) !== 0) || ((((_la - 1890)) & ~0x1f) == 0 && ((1 << (_la - 1890)) & ((1 << (PlSqlParser.SYS_XQSEQRM - 1890)) | (1 << (PlSqlParser.SYS_XQSEQRVS - 1890)) | (1 << (PlSqlParser.SYS_XQSEQSUB - 1890)) | (1 << (PlSqlParser.SYS_XQSEQTYPMATCH - 1890)) | (1 << (PlSqlParser.SYS_XQSTARTSWITH - 1890)) | (1 << (PlSqlParser.SYS_XQSTATBURI - 1890)) | (1 << (PlSqlParser.SYS_XQSTR2CODEP - 1890)) | (1 << (PlSqlParser.SYS_XQSTRJOIN - 1890)) | (1 << (PlSqlParser.SYS_XQSUBSTRAFT - 1890)) | (1 << (PlSqlParser.SYS_XQSUBSTRBEF - 1890)) | (1 << (PlSqlParser.SYS_XQTOKENIZE - 1890)) | (1 << (PlSqlParser.SYS_XQTREATAS - 1890)) | (1 << (PlSqlParser.SYS_XQ_UPKXML2SQL - 1890)) | (1 << (PlSqlParser.SYS_XQXFORM - 1890)) | (1 << (PlSqlParser.SYS_XSID_TO_RAW - 1890)) | (1 << (PlSqlParser.SYS_ZMAP_FILTER - 1890)) | (1 << (PlSqlParser.SYS_ZMAP_REFRESH - 1890)) | (1 << (PlSqlParser.TABLE_LOOKUP_BY_NL - 1890)) | (1 << (PlSqlParser.TABLESPACE_NO - 1890)) | (1 << (PlSqlParser.TABLESPACE - 1890)) | (1 << (PlSqlParser.TABLES - 1890)) | (1 << (PlSqlParser.TABLE_STATS - 1890)) | (1 << (PlSqlParser.TABLE - 1890)) | (1 << (PlSqlParser.TABNO - 1890)) | (1 << (PlSqlParser.TAG - 1890)) | (1 << (PlSqlParser.TANH - 1890)) | (1 << (PlSqlParser.TAN - 1890)) | (1 << (PlSqlParser.TBLORIDXPARTNUM - 1890)) | (1 << (PlSqlParser.TEMPFILE - 1890)) | (1 << (PlSqlParser.TEMPLATE - 1890)) | (1 << (PlSqlParser.TEMPORARY - 1890)) | (1 << (PlSqlParser.TEMP_TABLE - 1890)))) !== 0) || ((((_la - 1922)) & ~0x1f) == 0 && ((1 << (_la - 1922)) & ((1 << (PlSqlParser.TEST - 1922)) | (1 << (PlSqlParser.TEXT - 1922)) | (1 << (PlSqlParser.THAN - 1922)) | (1 << (PlSqlParser.THEN - 1922)) | (1 << (PlSqlParser.THE - 1922)) | (1 << (PlSqlParser.THREAD - 1922)) | (1 << (PlSqlParser.THROUGH - 1922)) | (1 << (PlSqlParser.TIER - 1922)) | (1 << (PlSqlParser.TIES - 1922)) | (1 << (PlSqlParser.TIMEOUT - 1922)) | (1 << (PlSqlParser.TIMESTAMP_LTZ_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMESTAMP - 1922)) | (1 << (PlSqlParser.TIMESTAMP_TZ_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMESTAMP_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMES - 1922)) | (1 << (PlSqlParser.TIME - 1922)) | (1 << (PlSqlParser.TIMEZONE_ABBR - 1922)) | (1 << (PlSqlParser.TIMEZONE_HOUR - 1922)) | (1 << (PlSqlParser.TIMEZONE_MINUTE - 1922)) | (1 << (PlSqlParser.TIMEZONE_OFFSET - 1922)) | (1 << (PlSqlParser.TIMEZONE_REGION - 1922)) | (1 << (PlSqlParser.TIME_ZONE - 1922)) | (1 << (PlSqlParser.TIV_GB - 1922)) | (1 << (PlSqlParser.TIV_SSF - 1922)) | (1 << (PlSqlParser.TO_ACLID - 1922)) | (1 << (PlSqlParser.TO_BINARY_DOUBLE - 1922)) | (1 << (PlSqlParser.TO_BINARY_FLOAT - 1922)) | (1 << (PlSqlParser.TO_BLOB - 1922)) | (1 << (PlSqlParser.TO_CLOB - 1922)) | (1 << (PlSqlParser.TO_DSINTERVAL - 1922)) | (1 << (PlSqlParser.TO_LOB - 1922)))) !== 0) || ((((_la - 1954)) & ~0x1f) == 0 && ((1 << (_la - 1954)) & ((1 << (PlSqlParser.TO_MULTI_BYTE - 1954)) | (1 << (PlSqlParser.TO_NCHAR - 1954)) | (1 << (PlSqlParser.TO_NCLOB - 1954)) | (1 << (PlSqlParser.TO_NUMBER - 1954)) | (1 << (PlSqlParser.TOPLEVEL - 1954)) | (1 << (PlSqlParser.TO_SINGLE_BYTE - 1954)) | (1 << (PlSqlParser.TO_TIMESTAMP - 1954)) | (1 << (PlSqlParser.TO_TIMESTAMP_TZ - 1954)) | (1 << (PlSqlParser.TO_TIME - 1954)) | (1 << (PlSqlParser.TO_TIME_TZ - 1954)) | (1 << (PlSqlParser.TO_YMINTERVAL - 1954)) | (1 << (PlSqlParser.TRACE - 1954)) | (1 << (PlSqlParser.TRACING - 1954)) | (1 << (PlSqlParser.TRACKING - 1954)) | (1 << (PlSqlParser.TRAILING - 1954)) | (1 << (PlSqlParser.TRANSACTION - 1954)) | (1 << (PlSqlParser.TRANSFORM_DISTINCT_AGG - 1954)) | (1 << (PlSqlParser.TRANSITIONAL - 1954)) | (1 << (PlSqlParser.TRANSITION - 1954)) | (1 << (PlSqlParser.TRANSLATE - 1954)) | (1 << (PlSqlParser.TRANSLATION - 1954)) | (1 << (PlSqlParser.TREAT - 1954)) | (1 << (PlSqlParser.TRIGGERS - 1954)) | (1 << (PlSqlParser.TRIGGER - 1954)) | (1 << (PlSqlParser.TRUE - 1954)) | (1 << (PlSqlParser.TRUNCATE - 1954)) | (1 << (PlSqlParser.TRUNC - 1954)) | (1 << (PlSqlParser.TRUSTED - 1954)) | (1 << (PlSqlParser.TRUST - 1954)) | (1 << (PlSqlParser.TUNING - 1954)) | (1 << (PlSqlParser.TX - 1954)))) !== 0) || ((((_la - 1986)) & ~0x1f) == 0 && ((1 << (_la - 1986)) & ((1 << (PlSqlParser.TYPES - 1986)) | (1 << (PlSqlParser.TYPE - 1986)) | (1 << (PlSqlParser.TZ_OFFSET - 1986)) | (1 << (PlSqlParser.UB2 - 1986)) | (1 << (PlSqlParser.UBA - 1986)) | (1 << (PlSqlParser.UCS2 - 1986)) | (1 << (PlSqlParser.UID - 1986)) | (1 << (PlSqlParser.UNARCHIVED - 1986)) | (1 << (PlSqlParser.UNBOUNDED - 1986)) | (1 << (PlSqlParser.UNBOUND - 1986)) | (1 << (PlSqlParser.UNCONDITIONAL - 1986)) | (1 << (PlSqlParser.UNDER - 1986)) | (1 << (PlSqlParser.UNDO - 1986)) | (1 << (PlSqlParser.UNDROP - 1986)) | (1 << (PlSqlParser.UNIFORM - 1986)) | (1 << (PlSqlParser.UNISTR - 1986)) | (1 << (PlSqlParser.UNLIMITED - 1986)) | (1 << (PlSqlParser.UNLOAD - 1986)) | (1 << (PlSqlParser.UNLOCK - 1986)) | (1 << (PlSqlParser.UNMATCHED - 1986)) | (1 << (PlSqlParser.UNNEST_INNERJ_DISTINCT_VIEW - 1986)) | (1 << (PlSqlParser.UNNEST_NOSEMIJ_NODISTINCTVIEW - 1986)) | (1 << (PlSqlParser.UNNEST_SEMIJ_VIEW - 1986)) | (1 << (PlSqlParser.UNNEST - 1986)) | (1 << (PlSqlParser.UNPACKED - 1986)) | (1 << (PlSqlParser.UNPIVOT - 1986)) | (1 << (PlSqlParser.UNPLUG - 1986)) | (1 << (PlSqlParser.UNPROTECTED - 1986)) | (1 << (PlSqlParser.UNQUIESCE - 1986)) | (1 << (PlSqlParser.UNRECOVERABLE - 1986)))) !== 0) || ((((_la - 2018)) & ~0x1f) == 0 && ((1 << (_la - 2018)) & ((1 << (PlSqlParser.UNRESTRICTED - 2018)) | (1 << (PlSqlParser.UNSUBSCRIBE - 2018)) | (1 << (PlSqlParser.UNTIL - 2018)) | (1 << (PlSqlParser.UNUSABLE - 2018)) | (1 << (PlSqlParser.UNUSED - 2018)) | (1 << (PlSqlParser.UPDATABLE - 2018)) | (1 << (PlSqlParser.UPDATED - 2018)) | (1 << (PlSqlParser.UPDATEXML - 2018)) | (1 << (PlSqlParser.UPD_INDEXES - 2018)) | (1 << (PlSqlParser.UPD_JOININDEX - 2018)) | (1 << (PlSqlParser.UPGRADE - 2018)) | (1 << (PlSqlParser.UPPER - 2018)) | (1 << (PlSqlParser.UPSERT - 2018)) | (1 << (PlSqlParser.UROWID - 2018)) | (1 << (PlSqlParser.USABLE - 2018)) | (1 << (PlSqlParser.USAGE - 2018)) | (1 << (PlSqlParser.USE_ANTI - 2018)) | (1 << (PlSqlParser.USE_CONCAT - 2018)) | (1 << (PlSqlParser.USE_CUBE - 2018)) | (1 << (PlSqlParser.USE_HASH_AGGREGATION - 2018)) | (1 << (PlSqlParser.USE_HASH_GBY_FOR_PUSHDOWN - 2018)) | (1 << (PlSqlParser.USE_HASH - 2018)) | (1 << (PlSqlParser.USE_HIDDEN_PARTITIONS - 2018)) | (1 << (PlSqlParser.USE_INVISIBLE_INDEXES - 2018)) | (1 << (PlSqlParser.USE_MERGE_CARTESIAN - 2018)) | (1 << (PlSqlParser.USE_MERGE - 2018)) | (1 << (PlSqlParser.USE_NL - 2018)) | (1 << (PlSqlParser.USE_NL_WITH_INDEX - 2018)) | (1 << (PlSqlParser.USE_PRIVATE_OUTLINES - 2018)) | (1 << (PlSqlParser.USER_DATA - 2018)) | (1 << (PlSqlParser.USER_DEFINED - 2018)))) !== 0) || ((((_la - 2050)) & ~0x1f) == 0 && ((1 << (_la - 2050)) & ((1 << (PlSqlParser.USERENV - 2050)) | (1 << (PlSqlParser.USERGROUP - 2050)) | (1 << (PlSqlParser.USER_RECYCLEBIN - 2050)) | (1 << (PlSqlParser.USERS - 2050)) | (1 << (PlSqlParser.USER_TABLESPACES - 2050)) | (1 << (PlSqlParser.USER - 2050)) | (1 << (PlSqlParser.USE_SEMI - 2050)) | (1 << (PlSqlParser.USE_STORED_OUTLINES - 2050)) | (1 << (PlSqlParser.USE_TTT_FOR_GSETS - 2050)) | (1 << (PlSqlParser.USE - 2050)) | (1 << (PlSqlParser.USE_VECTOR_AGGREGATION - 2050)) | (1 << (PlSqlParser.USE_WEAK_NAME_RESL - 2050)) | (1 << (PlSqlParser.USING_NO_EXPAND - 2050)) | (1 << (PlSqlParser.USING - 2050)) | (1 << (PlSqlParser.UTF16BE - 2050)) | (1 << (PlSqlParser.UTF16LE - 2050)) | (1 << (PlSqlParser.UTF32 - 2050)) | (1 << (PlSqlParser.UTF8 - 2050)) | (1 << (PlSqlParser.V1 - 2050)) | (1 << (PlSqlParser.V2 - 2050)) | (1 << (PlSqlParser.VALIDATE - 2050)) | (1 << (PlSqlParser.VALIDATION - 2050)) | (1 << (PlSqlParser.VALID_TIME_END - 2050)) | (1 << (PlSqlParser.VALUE - 2050)) | (1 << (PlSqlParser.VARCHAR2 - 2050)) | (1 << (PlSqlParser.VARCHAR - 2050)) | (1 << (PlSqlParser.VARIABLE - 2050)) | (1 << (PlSqlParser.VAR_POP - 2050)) | (1 << (PlSqlParser.VARRAYS - 2050)) | (1 << (PlSqlParser.VARRAY - 2050)) | (1 << (PlSqlParser.VAR_SAMP - 2050)))) !== 0) || ((((_la - 2082)) & ~0x1f) == 0 && ((1 << (_la - 2082)) & ((1 << (PlSqlParser.VARYING - 2082)) | (1 << (PlSqlParser.VECTOR_READ_TRACE - 2082)) | (1 << (PlSqlParser.VECTOR_READ - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM_DIMS - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM_FACT - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM - 2082)) | (1 << (PlSqlParser.VERIFIER - 2082)) | (1 << (PlSqlParser.VERIFY - 2082)) | (1 << (PlSqlParser.VERSIONING - 2082)) | (1 << (PlSqlParser.VERSIONS_ENDSCN - 2082)) | (1 << (PlSqlParser.VERSIONS_ENDTIME - 2082)) | (1 << (PlSqlParser.VERSIONS_OPERATION - 2082)) | (1 << (PlSqlParser.VERSIONS_STARTSCN - 2082)) | (1 << (PlSqlParser.VERSIONS_STARTTIME - 2082)) | (1 << (PlSqlParser.VERSIONS - 2082)) | (1 << (PlSqlParser.VERSIONS_XID - 2082)) | (1 << (PlSqlParser.VERSION - 2082)) | (1 << (PlSqlParser.VIOLATION - 2082)) | (1 << (PlSqlParser.VIRTUAL - 2082)) | (1 << (PlSqlParser.VISIBILITY - 2082)) | (1 << (PlSqlParser.VISIBLE - 2082)) | (1 << (PlSqlParser.VOLUME - 2082)) | (1 << (PlSqlParser.VSIZE - 2082)) | (1 << (PlSqlParser.WAIT - 2082)) | (1 << (PlSqlParser.WALLET - 2082)) | (1 << (PlSqlParser.WARNING - 2082)) | (1 << (PlSqlParser.WEEKS - 2082)) | (1 << (PlSqlParser.WEEK - 2082)) | (1 << (PlSqlParser.WELLFORMED - 2082)) | (1 << (PlSqlParser.WHENEVER - 2082)) | (1 << (PlSqlParser.WHEN - 2082)))) !== 0) || ((((_la - 2115)) & ~0x1f) == 0 && ((1 << (_la - 2115)) & ((1 << (PlSqlParser.WHILE - 2115)) | (1 << (PlSqlParser.WHITESPACE - 2115)) | (1 << (PlSqlParser.WIDTH_BUCKET - 2115)) | (1 << (PlSqlParser.WITHIN - 2115)) | (1 << (PlSqlParser.WITHOUT - 2115)) | (1 << (PlSqlParser.WITH_PLSQL - 2115)) | (1 << (PlSqlParser.WORK - 2115)) | (1 << (PlSqlParser.WRAPPED - 2115)) | (1 << (PlSqlParser.WRAPPER - 2115)) | (1 << (PlSqlParser.WRITE - 2115)) | (1 << (PlSqlParser.XDB_FASTPATH_INSERT - 2115)) | (1 << (PlSqlParser.X_DYN_PRUNE - 2115)) | (1 << (PlSqlParser.XID - 2115)) | (1 << (PlSqlParser.XML2OBJECT - 2115)) | (1 << (PlSqlParser.XMLAGG - 2115)) | (1 << (PlSqlParser.XMLATTRIBUTES - 2115)) | (1 << (PlSqlParser.XMLCAST - 2115)) | (1 << (PlSqlParser.XMLCDATA - 2115)) | (1 << (PlSqlParser.XMLCOLATTVAL - 2115)) | (1 << (PlSqlParser.XMLCOMMENT - 2115)) | (1 << (PlSqlParser.XMLCONCAT - 2115)) | (1 << (PlSqlParser.XMLDIFF - 2115)) | (1 << (PlSqlParser.XML_DML_RWT_STMT - 2115)) | (1 << (PlSqlParser.XMLELEMENT - 2115)) | (1 << (PlSqlParser.XMLEXISTS2 - 2115)) | (1 << (PlSqlParser.XMLEXISTS - 2115)) | (1 << (PlSqlParser.XMLFOREST - 2115)) | (1 << (PlSqlParser.XMLINDEX_REWRITE_IN_SELECT - 2115)) | (1 << (PlSqlParser.XMLINDEX_REWRITE - 2115)))) !== 0) || ((((_la - 2147)) & ~0x1f) == 0 && ((1 << (_la - 2147)) & ((1 << (PlSqlParser.XMLINDEX_SEL_IDX_TBL - 2147)) | (1 << (PlSqlParser.XMLISNODE - 2147)) | (1 << (PlSqlParser.XMLISVALID - 2147)) | (1 << (PlSqlParser.XMLNAMESPACES - 2147)) | (1 << (PlSqlParser.XMLPARSE - 2147)) | (1 << (PlSqlParser.XMLPATCH - 2147)) | (1 << (PlSqlParser.XMLPI - 2147)) | (1 << (PlSqlParser.XMLQUERYVAL - 2147)) | (1 << (PlSqlParser.XMLQUERY - 2147)) | (1 << (PlSqlParser.XMLROOT - 2147)) | (1 << (PlSqlParser.XMLSCHEMA - 2147)) | (1 << (PlSqlParser.XMLSERIALIZE - 2147)) | (1 << (PlSqlParser.XMLTABLE - 2147)) | (1 << (PlSqlParser.XMLTRANSFORMBLOB - 2147)) | (1 << (PlSqlParser.XMLTRANSFORM - 2147)) | (1 << (PlSqlParser.XMLTYPE - 2147)) | (1 << (PlSqlParser.XML - 2147)) | (1 << (PlSqlParser.XPATHTABLE - 2147)) | (1 << (PlSqlParser.XS_SYS_CONTEXT - 2147)) | (1 << (PlSqlParser.XS - 2147)) | (1 << (PlSqlParser.YEARS - 2147)) | (1 << (PlSqlParser.YEAR - 2147)) | (1 << (PlSqlParser.YES - 2147)) | (1 << (PlSqlParser.YMINTERVAL_UNCONSTRAINED - 2147)) | (1 << (PlSqlParser.ZONEMAP - 2147)) | (1 << (PlSqlParser.ZONE - 2147)) | (1 << (PlSqlParser.PREDICTION - 2147)) | (1 << (PlSqlParser.PREDICTION_BOUNDS - 2147)) | (1 << (PlSqlParser.PREDICTION_COST - 2147)) | (1 << (PlSqlParser.PREDICTION_DETAILS - 2147)) | (1 << (PlSqlParser.PREDICTION_PROBABILITY - 2147)))) !== 0) || ((((_la - 2179)) & ~0x1f) == 0 && ((1 << (_la - 2179)) & ((1 << (PlSqlParser.PREDICTION_SET - 2179)) | (1 << (PlSqlParser.CUME_DIST - 2179)) | (1 << (PlSqlParser.DENSE_RANK - 2179)) | (1 << (PlSqlParser.LISTAGG - 2179)) | (1 << (PlSqlParser.PERCENT_RANK - 2179)) | (1 << (PlSqlParser.PERCENTILE_CONT - 2179)) | (1 << (PlSqlParser.PERCENTILE_DISC - 2179)) | (1 << (PlSqlParser.RANK - 2179)) | (1 << (PlSqlParser.AVG - 2179)) | (1 << (PlSqlParser.CORR - 2179)) | (1 << (PlSqlParser.COVAR_ - 2179)) | (1 << (PlSqlParser.LAG - 2179)) | (1 << (PlSqlParser.LEAD - 2179)) | (1 << (PlSqlParser.MAX - 2179)) | (1 << (PlSqlParser.MEDIAN - 2179)) | (1 << (PlSqlParser.MIN - 2179)) | (1 << (PlSqlParser.NTILE - 2179)) | (1 << (PlSqlParser.NVL - 2179)) | (1 << (PlSqlParser.RATIO_TO_REPORT - 2179)) | (1 << (PlSqlParser.REGR_ - 2179)) | (1 << (PlSqlParser.ROUND - 2179)) | (1 << (PlSqlParser.ROW_NUMBER - 2179)) | (1 << (PlSqlParser.SUBSTR - 2179)) | (1 << (PlSqlParser.TO_CHAR - 2179)) | (1 << (PlSqlParser.TRIM - 2179)) | (1 << (PlSqlParser.SUM - 2179)) | (1 << (PlSqlParser.STDDEV - 2179)) | (1 << (PlSqlParser.VAR_ - 2179)) | (1 << (PlSqlParser.VARIANCE - 2179)) | (1 << (PlSqlParser.LEAST - 2179)) | (1 << (PlSqlParser.GREATEST - 2179)))) !== 0) || ((((_la - 2211)) & ~0x1f) == 0 && ((1 << (_la - 2211)) & ((1 << (PlSqlParser.TO_DATE - 2211)) | (1 << (PlSqlParser.PERIOD - 2211)) | (1 << (PlSqlParser.COMMA - 2211)))) !== 0) || _la===PlSqlParser.REGULAR_ID);
+ this.state = 4488;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ this.state = 4489;
+ this.references_clause();
+ this.state = 4491;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,432,this._ctx);
+ if(la_===1) {
+ this.state = 4490;
+ this.constraint_state();
+
+ }
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Out_of_line_constraintContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_out_of_line_constraint;
+ return this;
+}
+
+Out_of_line_constraintContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Out_of_line_constraintContext.prototype.constructor = Out_of_line_constraintContext;
+
+Out_of_line_constraintContext.prototype.constraint_state = function() {
+ return this.getTypedRuleContext(Constraint_stateContext,0);
+};
+
+Out_of_line_constraintContext.prototype.UNIQUE = function() {
+ return this.getToken(PlSqlParser.UNIQUE, 0);
+};
+
+Out_of_line_constraintContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Out_of_line_constraintContext.prototype.column_name = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Column_nameContext);
+ } else {
+ return this.getTypedRuleContext(Column_nameContext,i);
+ }
+};
+
+Out_of_line_constraintContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Out_of_line_constraintContext.prototype.PRIMARY = function() {
+ return this.getToken(PlSqlParser.PRIMARY, 0);
+};
+
+Out_of_line_constraintContext.prototype.KEY = function() {
+ return this.getToken(PlSqlParser.KEY, 0);
+};
+
+Out_of_line_constraintContext.prototype.foreign_key_clause = function() {
+ return this.getTypedRuleContext(Foreign_key_clauseContext,0);
+};
+
+Out_of_line_constraintContext.prototype.CHECK = function() {
+ return this.getToken(PlSqlParser.CHECK, 0);
+};
+
+Out_of_line_constraintContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+Out_of_line_constraintContext.prototype.CONSTRAINT = function() {
+ return this.getToken(PlSqlParser.CONSTRAINT, 0);
+};
+
+Out_of_line_constraintContext.prototype.constraint_name = function() {
+ return this.getTypedRuleContext(Constraint_nameContext,0);
+};
+
+Out_of_line_constraintContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Out_of_line_constraintContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterOut_of_line_constraint(this);
+ }
+};
+
+Out_of_line_constraintContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitOut_of_line_constraint(this);
+ }
+};
+
+Out_of_line_constraintContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitOut_of_line_constraint(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Out_of_line_constraintContext = Out_of_line_constraintContext;
+
+PlSqlParser.prototype.out_of_line_constraint = function() {
+
+ var localctx = new Out_of_line_constraintContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 422, PlSqlParser.RULE_out_of_line_constraint);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4497;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.CONSTRAINT) {
+ this.state = 4495;
+ this.match(PlSqlParser.CONSTRAINT);
+ this.state = 4496;
+ this.constraint_name();
+ }
+
+ this.state = 4530;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.UNIQUE:
+ this.state = 4499;
+ this.match(PlSqlParser.UNIQUE);
+ this.state = 4500;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 4501;
+ this.column_name();
+ this.state = 4506;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 4502;
+ this.match(PlSqlParser.COMMA);
+ this.state = 4503;
+ this.column_name();
+ this.state = 4508;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 4509;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ break;
+ case PlSqlParser.PRIMARY:
+ this.state = 4511;
+ this.match(PlSqlParser.PRIMARY);
+ this.state = 4512;
+ this.match(PlSqlParser.KEY);
+ this.state = 4513;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 4514;
+ this.column_name();
+ this.state = 4519;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 4515;
+ this.match(PlSqlParser.COMMA);
+ this.state = 4516;
+ this.column_name();
+ this.state = 4521;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 4522;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ break;
+ case PlSqlParser.FOREIGN:
+ this.state = 4524;
+ this.foreign_key_clause();
+ break;
+ case PlSqlParser.CHECK:
+ this.state = 4525;
+ this.match(PlSqlParser.CHECK);
+ this.state = 4526;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 4527;
+ this.expression();
+ this.state = 4528;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 4533;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,438,this._ctx);
+ if(la_===1) {
+ this.state = 4532;
+ this.constraint_state();
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Constraint_stateContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_constraint_state;
+ return this;
+}
+
+Constraint_stateContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Constraint_stateContext.prototype.constructor = Constraint_stateContext;
+
+Constraint_stateContext.prototype.DEFERRABLE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.DEFERRABLE);
+ } else {
+ return this.getToken(PlSqlParser.DEFERRABLE, i);
+ }
+};
+
+
+Constraint_stateContext.prototype.INITIALLY = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.INITIALLY);
+ } else {
+ return this.getToken(PlSqlParser.INITIALLY, i);
+ }
+};
+
+
+Constraint_stateContext.prototype.using_index_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Using_index_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Using_index_clauseContext,i);
+ }
+};
+
+Constraint_stateContext.prototype.IMMEDIATE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.IMMEDIATE);
+ } else {
+ return this.getToken(PlSqlParser.IMMEDIATE, i);
+ }
+};
+
+
+Constraint_stateContext.prototype.DEFERRED = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.DEFERRED);
+ } else {
+ return this.getToken(PlSqlParser.DEFERRED, i);
+ }
+};
+
+
+Constraint_stateContext.prototype.RELY = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.RELY);
+ } else {
+ return this.getToken(PlSqlParser.RELY, i);
+ }
+};
+
+
+Constraint_stateContext.prototype.NORELY = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.NORELY);
+ } else {
+ return this.getToken(PlSqlParser.NORELY, i);
+ }
+};
+
+
+Constraint_stateContext.prototype.ENABLE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.ENABLE);
+ } else {
+ return this.getToken(PlSqlParser.ENABLE, i);
+ }
+};
+
+
+Constraint_stateContext.prototype.DISABLE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.DISABLE);
+ } else {
+ return this.getToken(PlSqlParser.DISABLE, i);
+ }
+};
+
+
+Constraint_stateContext.prototype.VALIDATE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.VALIDATE);
+ } else {
+ return this.getToken(PlSqlParser.VALIDATE, i);
+ }
+};
+
+
+Constraint_stateContext.prototype.NOVALIDATE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.NOVALIDATE);
+ } else {
+ return this.getToken(PlSqlParser.NOVALIDATE, i);
+ }
+};
+
+
+Constraint_stateContext.prototype.NOT = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.NOT);
+ } else {
+ return this.getToken(PlSqlParser.NOT, i);
+ }
+};
+
+
+Constraint_stateContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterConstraint_state(this);
+ }
+};
+
+Constraint_stateContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitConstraint_state(this);
+ }
+};
+
+Constraint_stateContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitConstraint_state(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Constraint_stateContext = Constraint_stateContext;
+
+PlSqlParser.prototype.constraint_state = function() {
+
+ var localctx = new Constraint_stateContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 424, PlSqlParser.RULE_constraint_state);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4545;
+ this._errHandler.sync(this);
+ var _alt = 1;
+ do {
+ switch (_alt) {
+ case 1:
+ this.state = 4545;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.DEFERRABLE:
+ case PlSqlParser.NOT:
+ this.state = 4536;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.NOT) {
+ this.state = 4535;
+ this.match(PlSqlParser.NOT);
+ }
+
+ this.state = 4538;
+ this.match(PlSqlParser.DEFERRABLE);
+ break;
+ case PlSqlParser.INITIALLY:
+ this.state = 4539;
+ this.match(PlSqlParser.INITIALLY);
+ this.state = 4540;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.DEFERRED || _la===PlSqlParser.IMMEDIATE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+ case PlSqlParser.NORELY:
+ case PlSqlParser.RELY:
+ this.state = 4541;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.NORELY || _la===PlSqlParser.RELY)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+ case PlSqlParser.DISABLE:
+ case PlSqlParser.ENABLE:
+ this.state = 4542;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.DISABLE || _la===PlSqlParser.ENABLE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+ case PlSqlParser.NOVALIDATE:
+ case PlSqlParser.VALIDATE:
+ this.state = 4543;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.NOVALIDATE || _la===PlSqlParser.VALIDATE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+ case PlSqlParser.USING:
+ this.state = 4544;
+ this.using_index_clause();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 4547;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,441, this._ctx);
+ } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Alter_tablespaceContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_alter_tablespace;
+ return this;
+}
+
+Alter_tablespaceContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Alter_tablespaceContext.prototype.constructor = Alter_tablespaceContext;
+
+Alter_tablespaceContext.prototype.ALTER = function() {
+ return this.getToken(PlSqlParser.ALTER, 0);
+};
+
+Alter_tablespaceContext.prototype.TABLESPACE = function() {
+ return this.getToken(PlSqlParser.TABLESPACE, 0);
+};
+
+Alter_tablespaceContext.prototype.tablespace = function() {
+ return this.getTypedRuleContext(TablespaceContext,0);
+};
+
+Alter_tablespaceContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Alter_tablespaceContext.prototype.DEFAULT = function() {
+ return this.getToken(PlSqlParser.DEFAULT, 0);
+};
+
+Alter_tablespaceContext.prototype.MINIMUM = function() {
+ return this.getToken(PlSqlParser.MINIMUM, 0);
+};
+
+Alter_tablespaceContext.prototype.EXTENT = function() {
+ return this.getToken(PlSqlParser.EXTENT, 0);
+};
+
+Alter_tablespaceContext.prototype.size_clause = function() {
+ return this.getTypedRuleContext(Size_clauseContext,0);
+};
+
+Alter_tablespaceContext.prototype.RESIZE = function() {
+ return this.getToken(PlSqlParser.RESIZE, 0);
+};
+
+Alter_tablespaceContext.prototype.COALESCE = function() {
+ return this.getToken(PlSqlParser.COALESCE, 0);
+};
+
+Alter_tablespaceContext.prototype.SHRINK = function() {
+ return this.getToken(PlSqlParser.SHRINK, 0);
+};
+
+Alter_tablespaceContext.prototype.SPACE_KEYWORD = function() {
+ return this.getToken(PlSqlParser.SPACE_KEYWORD, 0);
+};
+
+Alter_tablespaceContext.prototype.RENAME = function() {
+ return this.getToken(PlSqlParser.RENAME, 0);
+};
+
+Alter_tablespaceContext.prototype.TO = function() {
+ return this.getToken(PlSqlParser.TO, 0);
+};
+
+Alter_tablespaceContext.prototype.new_tablespace_name = function() {
+ return this.getTypedRuleContext(New_tablespace_nameContext,0);
+};
+
+Alter_tablespaceContext.prototype.begin_or_end = function() {
+ return this.getTypedRuleContext(Begin_or_endContext,0);
+};
+
+Alter_tablespaceContext.prototype.BACKUP = function() {
+ return this.getToken(PlSqlParser.BACKUP, 0);
+};
+
+Alter_tablespaceContext.prototype.datafile_tempfile_clauses = function() {
+ return this.getTypedRuleContext(Datafile_tempfile_clausesContext,0);
+};
+
+Alter_tablespaceContext.prototype.tablespace_logging_clauses = function() {
+ return this.getTypedRuleContext(Tablespace_logging_clausesContext,0);
+};
+
+Alter_tablespaceContext.prototype.tablespace_group_clause = function() {
+ return this.getTypedRuleContext(Tablespace_group_clauseContext,0);
+};
+
+Alter_tablespaceContext.prototype.tablespace_state_clauses = function() {
+ return this.getTypedRuleContext(Tablespace_state_clausesContext,0);
+};
+
+Alter_tablespaceContext.prototype.autoextend_clause = function() {
+ return this.getTypedRuleContext(Autoextend_clauseContext,0);
+};
+
+Alter_tablespaceContext.prototype.flashback_mode_clause = function() {
+ return this.getTypedRuleContext(Flashback_mode_clauseContext,0);
+};
+
+Alter_tablespaceContext.prototype.tablespace_retention_clause = function() {
+ return this.getTypedRuleContext(Tablespace_retention_clauseContext,0);
+};
+
+Alter_tablespaceContext.prototype.table_compression = function() {
+ return this.getTypedRuleContext(Table_compressionContext,0);
+};
+
+Alter_tablespaceContext.prototype.storage_clause = function() {
+ return this.getTypedRuleContext(Storage_clauseContext,0);
+};
+
+Alter_tablespaceContext.prototype.KEEP = function() {
+ return this.getToken(PlSqlParser.KEEP, 0);
+};
+
+Alter_tablespaceContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAlter_tablespace(this);
+ }
+};
+
+Alter_tablespaceContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAlter_tablespace(this);
+ }
+};
+
+Alter_tablespaceContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAlter_tablespace(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Alter_tablespaceContext = Alter_tablespaceContext;
+
+PlSqlParser.prototype.alter_tablespace = function() {
+
+ var localctx = new Alter_tablespaceContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 426, PlSqlParser.RULE_alter_tablespace);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4549;
+ this.match(PlSqlParser.ALTER);
+ this.state = 4550;
+ this.match(PlSqlParser.TABLESPACE);
+ this.state = 4551;
+ this.tablespace();
+ this.state = 4584;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,445,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 4552;
+ this.match(PlSqlParser.DEFAULT);
+ this.state = 4554;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.COMPRESS || _la===PlSqlParser.NOCOMPRESS) {
+ this.state = 4553;
+ this.table_compression();
+ }
+
+ this.state = 4557;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.STORAGE) {
+ this.state = 4556;
+ this.storage_clause();
+ }
+
+ break;
+
+ case 2:
+ this.state = 4559;
+ this.match(PlSqlParser.MINIMUM);
+ this.state = 4560;
+ this.match(PlSqlParser.EXTENT);
+ this.state = 4561;
+ this.size_clause();
+ break;
+
+ case 3:
+ this.state = 4562;
+ this.match(PlSqlParser.RESIZE);
+ this.state = 4563;
+ this.size_clause();
+ break;
+
+ case 4:
+ this.state = 4564;
+ this.match(PlSqlParser.COALESCE);
+ break;
+
+ case 5:
+ this.state = 4565;
+ this.match(PlSqlParser.SHRINK);
+ this.state = 4566;
+ this.match(PlSqlParser.SPACE_KEYWORD);
+ this.state = 4569;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.KEEP) {
+ this.state = 4567;
+ this.match(PlSqlParser.KEEP);
+ this.state = 4568;
+ this.size_clause();
+ }
+
+ break;
+
+ case 6:
+ this.state = 4571;
+ this.match(PlSqlParser.RENAME);
+ this.state = 4572;
+ this.match(PlSqlParser.TO);
+ this.state = 4573;
+ this.new_tablespace_name();
+ break;
+
+ case 7:
+ this.state = 4574;
+ this.begin_or_end();
+ this.state = 4575;
+ this.match(PlSqlParser.BACKUP);
+ break;
+
+ case 8:
+ this.state = 4577;
+ this.datafile_tempfile_clauses();
+ break;
+
+ case 9:
+ this.state = 4578;
+ this.tablespace_logging_clauses();
+ break;
+
+ case 10:
+ this.state = 4579;
+ this.tablespace_group_clause();
+ break;
+
+ case 11:
+ this.state = 4580;
+ this.tablespace_state_clauses();
+ break;
+
+ case 12:
+ this.state = 4581;
+ this.autoextend_clause();
+ break;
+
+ case 13:
+ this.state = 4582;
+ this.flashback_mode_clause();
+ break;
+
+ case 14:
+ this.state = 4583;
+ this.tablespace_retention_clause();
+ break;
+
+ }
+ this.state = 4586;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Datafile_tempfile_clausesContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_datafile_tempfile_clauses;
+ return this;
+}
+
+Datafile_tempfile_clausesContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Datafile_tempfile_clausesContext.prototype.constructor = Datafile_tempfile_clausesContext;
+
+Datafile_tempfile_clausesContext.prototype.ADD = function() {
+ return this.getToken(PlSqlParser.ADD, 0);
+};
+
+Datafile_tempfile_clausesContext.prototype.datafile_specification = function() {
+ return this.getTypedRuleContext(Datafile_specificationContext,0);
+};
+
+Datafile_tempfile_clausesContext.prototype.tempfile_specification = function() {
+ return this.getTypedRuleContext(Tempfile_specificationContext,0);
+};
+
+Datafile_tempfile_clausesContext.prototype.DROP = function() {
+ return this.getToken(PlSqlParser.DROP, 0);
+};
+
+Datafile_tempfile_clausesContext.prototype.DATAFILE = function() {
+ return this.getToken(PlSqlParser.DATAFILE, 0);
+};
+
+Datafile_tempfile_clausesContext.prototype.TEMPFILE = function() {
+ return this.getToken(PlSqlParser.TEMPFILE, 0);
+};
+
+Datafile_tempfile_clausesContext.prototype.filename = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(FilenameContext);
+ } else {
+ return this.getTypedRuleContext(FilenameContext,i);
+ }
+};
+
+Datafile_tempfile_clausesContext.prototype.UNSIGNED_INTEGER = function() {
+ return this.getToken(PlSqlParser.UNSIGNED_INTEGER, 0);
+};
+
+Datafile_tempfile_clausesContext.prototype.KEEP = function() {
+ return this.getToken(PlSqlParser.KEEP, 0);
+};
+
+Datafile_tempfile_clausesContext.prototype.size_clause = function() {
+ return this.getTypedRuleContext(Size_clauseContext,0);
+};
+
+Datafile_tempfile_clausesContext.prototype.SHRINK = function() {
+ return this.getToken(PlSqlParser.SHRINK, 0);
+};
+
+Datafile_tempfile_clausesContext.prototype.RENAME = function() {
+ return this.getToken(PlSqlParser.RENAME, 0);
+};
+
+Datafile_tempfile_clausesContext.prototype.TO = function() {
+ return this.getToken(PlSqlParser.TO, 0);
+};
+
+Datafile_tempfile_clausesContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Datafile_tempfile_clausesContext.prototype.online_or_offline = function() {
+ return this.getTypedRuleContext(Online_or_offlineContext,0);
+};
+
+Datafile_tempfile_clausesContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterDatafile_tempfile_clauses(this);
+ }
+};
+
+Datafile_tempfile_clausesContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitDatafile_tempfile_clauses(this);
+ }
+};
+
+Datafile_tempfile_clausesContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitDatafile_tempfile_clauses(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Datafile_tempfile_clausesContext = Datafile_tempfile_clausesContext;
+
+PlSqlParser.prototype.datafile_tempfile_clauses = function() {
+
+ var localctx = new Datafile_tempfile_clausesContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 428, PlSqlParser.RULE_datafile_tempfile_clauses);
+ var _la = 0; // Token type
+ try {
+ this.state = 4634;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.ADD:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4588;
+ this.match(PlSqlParser.ADD);
+ this.state = 4591;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.DATAFILE:
+ this.state = 4589;
+ this.datafile_specification();
+ break;
+ case PlSqlParser.TEMPFILE:
+ this.state = 4590;
+ this.tempfile_specification();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ break;
+ case PlSqlParser.DROP:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 4593;
+ this.match(PlSqlParser.DROP);
+ this.state = 4594;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.DATAFILE || _la===PlSqlParser.TEMPFILE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 4597;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.CHAR_STRING:
+ this.state = 4595;
+ this.filename();
+ break;
+ case PlSqlParser.UNSIGNED_INTEGER:
+ this.state = 4596;
+ this.match(PlSqlParser.UNSIGNED_INTEGER);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 4601;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.KEEP) {
+ this.state = 4599;
+ this.match(PlSqlParser.KEEP);
+ this.state = 4600;
+ this.size_clause();
+ }
+
+ break;
+ case PlSqlParser.SHRINK:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 4603;
+ this.match(PlSqlParser.SHRINK);
+ this.state = 4604;
+ this.match(PlSqlParser.TEMPFILE);
+ this.state = 4607;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.CHAR_STRING:
+ this.state = 4605;
+ this.filename();
+ break;
+ case PlSqlParser.UNSIGNED_INTEGER:
+ this.state = 4606;
+ this.match(PlSqlParser.UNSIGNED_INTEGER);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 4611;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.KEEP) {
+ this.state = 4609;
+ this.match(PlSqlParser.KEEP);
+ this.state = 4610;
+ this.size_clause();
+ }
+
+ break;
+ case PlSqlParser.RENAME:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 4613;
+ this.match(PlSqlParser.RENAME);
+ this.state = 4614;
+ this.match(PlSqlParser.DATAFILE);
+ this.state = 4615;
+ this.filename();
+ this.state = 4620;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 4616;
+ this.match(PlSqlParser.COMMA);
+ this.state = 4617;
+ this.filename();
+ this.state = 4622;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 4623;
+ this.match(PlSqlParser.TO);
+ this.state = 4624;
+ this.filename();
+ this.state = 4629;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 4625;
+ this.match(PlSqlParser.COMMA);
+ this.state = 4626;
+ this.filename();
+ this.state = 4631;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+ case PlSqlParser.DATAFILE:
+ case PlSqlParser.TEMPFILE:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 4632;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.DATAFILE || _la===PlSqlParser.TEMPFILE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+
+ this.state = 4633;
+ this.online_or_offline();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Tablespace_logging_clausesContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_tablespace_logging_clauses;
+ return this;
+}
+
+Tablespace_logging_clausesContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Tablespace_logging_clausesContext.prototype.constructor = Tablespace_logging_clausesContext;
+
+Tablespace_logging_clausesContext.prototype.logging_clause = function() {
+ return this.getTypedRuleContext(Logging_clauseContext,0);
+};
+
+Tablespace_logging_clausesContext.prototype.FORCE = function() {
+ return this.getToken(PlSqlParser.FORCE, 0);
+};
+
+Tablespace_logging_clausesContext.prototype.LOGGING = function() {
+ return this.getToken(PlSqlParser.LOGGING, 0);
+};
+
+Tablespace_logging_clausesContext.prototype.NO = function() {
+ return this.getToken(PlSqlParser.NO, 0);
+};
+
+Tablespace_logging_clausesContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterTablespace_logging_clauses(this);
+ }
+};
+
+Tablespace_logging_clausesContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitTablespace_logging_clauses(this);
+ }
+};
+
+Tablespace_logging_clausesContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitTablespace_logging_clauses(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Tablespace_logging_clausesContext = Tablespace_logging_clausesContext;
+
+PlSqlParser.prototype.tablespace_logging_clauses = function() {
+
+ var localctx = new Tablespace_logging_clausesContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 430, PlSqlParser.RULE_tablespace_logging_clauses);
+ var _la = 0; // Token type
+ try {
+ this.state = 4642;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.FILESYSTEM_LIKE_LOGGING:
+ case PlSqlParser.LOGGING:
+ case PlSqlParser.NOLOGGING:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4636;
+ this.logging_clause();
+ break;
+ case PlSqlParser.FORCE:
+ case PlSqlParser.NO:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 4638;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.NO) {
+ this.state = 4637;
+ this.match(PlSqlParser.NO);
+ }
+
+ this.state = 4640;
+ this.match(PlSqlParser.FORCE);
+ this.state = 4641;
+ this.match(PlSqlParser.LOGGING);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Tablespace_group_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_tablespace_group_clause;
+ return this;
+}
+
+Tablespace_group_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Tablespace_group_clauseContext.prototype.constructor = Tablespace_group_clauseContext;
+
+Tablespace_group_clauseContext.prototype.TABLESPACE = function() {
+ return this.getToken(PlSqlParser.TABLESPACE, 0);
+};
+
+Tablespace_group_clauseContext.prototype.GROUP = function() {
+ return this.getToken(PlSqlParser.GROUP, 0);
+};
+
+Tablespace_group_clauseContext.prototype.tablespace_group_name = function() {
+ return this.getTypedRuleContext(Tablespace_group_nameContext,0);
+};
+
+Tablespace_group_clauseContext.prototype.CHAR_STRING = function() {
+ return this.getToken(PlSqlParser.CHAR_STRING, 0);
+};
+
+Tablespace_group_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterTablespace_group_clause(this);
+ }
+};
+
+Tablespace_group_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitTablespace_group_clause(this);
+ }
+};
+
+Tablespace_group_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitTablespace_group_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Tablespace_group_clauseContext = Tablespace_group_clauseContext;
+
+PlSqlParser.prototype.tablespace_group_clause = function() {
+
+ var localctx = new Tablespace_group_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 432, PlSqlParser.RULE_tablespace_group_clause);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4644;
+ this.match(PlSqlParser.TABLESPACE);
+ this.state = 4645;
+ this.match(PlSqlParser.GROUP);
+ this.state = 4648;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.ABORT:
+ case PlSqlParser.ABS:
+ case PlSqlParser.ACCESS:
+ case PlSqlParser.ACCESSED:
+ case PlSqlParser.ACCOUNT:
+ case PlSqlParser.ACL:
+ case PlSqlParser.ACOS:
+ case PlSqlParser.ACTION:
+ case PlSqlParser.ACTIONS:
+ case PlSqlParser.ACTIVATE:
+ case PlSqlParser.ACTIVE:
+ case PlSqlParser.ACTIVE_COMPONENT:
+ case PlSqlParser.ACTIVE_DATA:
+ case PlSqlParser.ACTIVE_FUNCTION:
+ case PlSqlParser.ACTIVE_TAG:
+ case PlSqlParser.ACTIVITY:
+ case PlSqlParser.ADAPTIVE_PLAN:
+ case PlSqlParser.ADD:
+ case PlSqlParser.ADD_COLUMN:
+ case PlSqlParser.ADD_GROUP:
+ case PlSqlParser.ADD_MONTHS:
+ case PlSqlParser.ADJ_DATE:
+ case PlSqlParser.ADMIN:
+ case PlSqlParser.ADMINISTER:
+ case PlSqlParser.ADMINISTRATOR:
+ case PlSqlParser.ADVANCED:
+ case PlSqlParser.ADVISE:
+ case PlSqlParser.ADVISOR:
+ case PlSqlParser.AFD_DISKSTRING:
+ case PlSqlParser.AFTER:
+ case PlSqlParser.AGENT:
+ case PlSqlParser.AGGREGATE:
+ case PlSqlParser.A_LETTER:
+ case PlSqlParser.ALIAS:
+ case PlSqlParser.ALLOCATE:
+ case PlSqlParser.ALLOW:
+ case PlSqlParser.ALL_ROWS:
+ case PlSqlParser.ALWAYS:
+ case PlSqlParser.ANALYZE:
+ case PlSqlParser.ANCILLARY:
+ case PlSqlParser.AND_EQUAL:
+ case PlSqlParser.ANOMALY:
+ case PlSqlParser.ANSI_REARCH:
+ case PlSqlParser.ANTIJOIN:
+ case PlSqlParser.ANYSCHEMA:
+ case PlSqlParser.APPEND:
+ case PlSqlParser.APPENDCHILDXML:
+ case PlSqlParser.APPEND_VALUES:
+ case PlSqlParser.APPLICATION:
+ case PlSqlParser.APPLY:
+ case PlSqlParser.APPROX_COUNT_DISTINCT:
+ case PlSqlParser.ARCHIVAL:
+ case PlSqlParser.ARCHIVE:
+ case PlSqlParser.ARCHIVED:
+ case PlSqlParser.ARCHIVELOG:
+ case PlSqlParser.ARRAY:
+ case PlSqlParser.ASCII:
+ case PlSqlParser.ASCIISTR:
+ case PlSqlParser.ASIN:
+ case PlSqlParser.ASIS:
+ case PlSqlParser.ASSEMBLY:
+ case PlSqlParser.ASSIGN:
+ case PlSqlParser.ASSOCIATE:
+ case PlSqlParser.ASYNC:
+ case PlSqlParser.ASYNCHRONOUS:
+ case PlSqlParser.ATAN2:
+ case PlSqlParser.ATAN:
+ case PlSqlParser.AT:
+ case PlSqlParser.ATTRIBUTE:
+ case PlSqlParser.ATTRIBUTES:
+ case PlSqlParser.AUTHENTICATED:
+ case PlSqlParser.AUTHENTICATION:
+ case PlSqlParser.AUTHID:
+ case PlSqlParser.AUTHORIZATION:
+ case PlSqlParser.AUTOALLOCATE:
+ case PlSqlParser.AUTO:
+ case PlSqlParser.AUTOEXTEND:
+ case PlSqlParser.AUTO_LOGIN:
+ case PlSqlParser.AUTOMATIC:
+ case PlSqlParser.AUTONOMOUS_TRANSACTION:
+ case PlSqlParser.AUTO_REOPTIMIZE:
+ case PlSqlParser.AVAILABILITY:
+ case PlSqlParser.AVRO:
+ case PlSqlParser.BACKGROUND:
+ case PlSqlParser.BACKUP:
+ case PlSqlParser.BASIC:
+ case PlSqlParser.BASICFILE:
+ case PlSqlParser.BATCH:
+ case PlSqlParser.BATCHSIZE:
+ case PlSqlParser.BATCH_TABLE_ACCESS_BY_ROWID:
+ case PlSqlParser.BECOME:
+ case PlSqlParser.BEFORE:
+ case PlSqlParser.BEGIN:
+ case PlSqlParser.BEGINNING:
+ case PlSqlParser.BEGIN_OUTLINE_DATA:
+ case PlSqlParser.BEHALF:
+ case PlSqlParser.BEQUEATH:
+ case PlSqlParser.BFILE:
+ case PlSqlParser.BFILENAME:
+ case PlSqlParser.BIGFILE:
+ case PlSqlParser.BINARY:
+ case PlSqlParser.BINARY_DOUBLE:
+ case PlSqlParser.BINARY_DOUBLE_INFINITY:
+ case PlSqlParser.BINARY_DOUBLE_NAN:
+ case PlSqlParser.BINARY_FLOAT:
+ case PlSqlParser.BINARY_FLOAT_INFINITY:
+ case PlSqlParser.BINARY_FLOAT_NAN:
+ case PlSqlParser.BINARY_INTEGER:
+ case PlSqlParser.BIND_AWARE:
+ case PlSqlParser.BINDING:
+ case PlSqlParser.BIN_TO_NUM:
+ case PlSqlParser.BITAND:
+ case PlSqlParser.BITMAP_AND:
+ case PlSqlParser.BITMAP:
+ case PlSqlParser.BITMAPS:
+ case PlSqlParser.BITMAP_TREE:
+ case PlSqlParser.BITS:
+ case PlSqlParser.BLOB:
+ case PlSqlParser.BLOCK:
+ case PlSqlParser.BLOCK_RANGE:
+ case PlSqlParser.BLOCKS:
+ case PlSqlParser.BLOCKSIZE:
+ case PlSqlParser.BODY:
+ case PlSqlParser.BOOLEAN:
+ case PlSqlParser.BOTH:
+ case PlSqlParser.BOUND:
+ case PlSqlParser.BRANCH:
+ case PlSqlParser.BREADTH:
+ case PlSqlParser.BROADCAST:
+ case PlSqlParser.BSON:
+ case PlSqlParser.BUFFER:
+ case PlSqlParser.BUFFER_CACHE:
+ case PlSqlParser.BUFFER_POOL:
+ case PlSqlParser.BUILD:
+ case PlSqlParser.BULK:
+ case PlSqlParser.BYPASS_RECURSIVE_CHECK:
+ case PlSqlParser.BYPASS_UJVC:
+ case PlSqlParser.BYTE:
+ case PlSqlParser.CACHE:
+ case PlSqlParser.CACHE_CB:
+ case PlSqlParser.CACHE_INSTANCES:
+ case PlSqlParser.CACHE_TEMP_TABLE:
+ case PlSqlParser.CACHING:
+ case PlSqlParser.CALCULATED:
+ case PlSqlParser.CALLBACK:
+ case PlSqlParser.CALL:
+ case PlSqlParser.CANCEL:
+ case PlSqlParser.CAPACITY:
+ case PlSqlParser.CARDINALITY:
+ case PlSqlParser.CASCADE:
+ case PlSqlParser.CASE:
+ case PlSqlParser.CAST:
+ case PlSqlParser.CATEGORY:
+ case PlSqlParser.CDBDEFAULT:
+ case PlSqlParser.CEIL:
+ case PlSqlParser.CELL_FLASH_CACHE:
+ case PlSqlParser.CERTIFICATE:
+ case PlSqlParser.CFILE:
+ case PlSqlParser.CHAINED:
+ case PlSqlParser.CHANGE:
+ case PlSqlParser.CHANGE_DUPKEY_ERROR_INDEX:
+ case PlSqlParser.CHARACTER:
+ case PlSqlParser.CHAR:
+ case PlSqlParser.CHAR_CS:
+ case PlSqlParser.CHARTOROWID:
+ case PlSqlParser.CHECK_ACL_REWRITE:
+ case PlSqlParser.CHECKPOINT:
+ case PlSqlParser.CHILD:
+ case PlSqlParser.CHOOSE:
+ case PlSqlParser.CHR:
+ case PlSqlParser.CHUNK:
+ case PlSqlParser.CLASS:
+ case PlSqlParser.CLASSIFIER:
+ case PlSqlParser.CLEANUP:
+ case PlSqlParser.CLEAR:
+ case PlSqlParser.C_LETTER:
+ case PlSqlParser.CLIENT:
+ case PlSqlParser.CLOB:
+ case PlSqlParser.CLONE:
+ case PlSqlParser.CLOSE_CACHED_OPEN_CURSORS:
+ case PlSqlParser.CLOSE:
+ case PlSqlParser.CLUSTER_BY_ROWID:
+ case PlSqlParser.CLUSTER:
+ case PlSqlParser.CLUSTER_DETAILS:
+ case PlSqlParser.CLUSTER_DISTANCE:
+ case PlSqlParser.CLUSTER_ID:
+ case PlSqlParser.CLUSTERING:
+ case PlSqlParser.CLUSTERING_FACTOR:
+ case PlSqlParser.CLUSTER_PROBABILITY:
+ case PlSqlParser.CLUSTER_SET:
+ case PlSqlParser.COALESCE:
+ case PlSqlParser.COALESCE_SQ:
+ case PlSqlParser.COARSE:
+ case PlSqlParser.CO_AUTH_IND:
+ case PlSqlParser.COLD:
+ case PlSqlParser.COLLECT:
+ case PlSqlParser.COLUMNAR:
+ case PlSqlParser.COLUMN_AUTH_INDICATOR:
+ case PlSqlParser.COLUMN:
+ case PlSqlParser.COLUMNS:
+ case PlSqlParser.COLUMN_STATS:
+ case PlSqlParser.COLUMN_VALUE:
+ case PlSqlParser.COMMENT:
+ case PlSqlParser.COMMIT:
+ case PlSqlParser.COMMITTED:
+ case PlSqlParser.COMMON_DATA:
+ case PlSqlParser.COMPACT:
+ case PlSqlParser.COMPATIBILITY:
+ case PlSqlParser.COMPILE:
+ case PlSqlParser.COMPLETE:
+ case PlSqlParser.COMPLIANCE:
+ case PlSqlParser.COMPONENT:
+ case PlSqlParser.COMPONENTS:
+ case PlSqlParser.COMPOSE:
+ case PlSqlParser.COMPOSITE:
+ case PlSqlParser.COMPOSITE_LIMIT:
+ case PlSqlParser.COMPOUND:
+ case PlSqlParser.COMPUTE:
+ case PlSqlParser.CONCAT:
+ case PlSqlParser.CON_DBID_TO_ID:
+ case PlSqlParser.CONDITIONAL:
+ case PlSqlParser.CONDITION:
+ case PlSqlParser.CONFIRM:
+ case PlSqlParser.CONFORMING:
+ case PlSqlParser.CON_GUID_TO_ID:
+ case PlSqlParser.CON_ID:
+ case PlSqlParser.CON_NAME_TO_ID:
+ case PlSqlParser.CONNECT_BY_CB_WHR_ONLY:
+ case PlSqlParser.CONNECT_BY_COMBINE_SW:
+ case PlSqlParser.CONNECT_BY_COST_BASED:
+ case PlSqlParser.CONNECT_BY_ELIM_DUPS:
+ case PlSqlParser.CONNECT_BY_FILTERING:
+ case PlSqlParser.CONNECT_BY_ISCYCLE:
+ case PlSqlParser.CONNECT_BY_ISLEAF:
+ case PlSqlParser.CONNECT_BY_ROOT:
+ case PlSqlParser.CONNECT_TIME:
+ case PlSqlParser.CONSIDER:
+ case PlSqlParser.CONSISTENT:
+ case PlSqlParser.CONSTANT:
+ case PlSqlParser.CONST:
+ case PlSqlParser.CONSTRAINT:
+ case PlSqlParser.CONSTRAINTS:
+ case PlSqlParser.CONSTRUCTOR:
+ case PlSqlParser.CONTAINER:
+ case PlSqlParser.CONTAINER_DATA:
+ case PlSqlParser.CONTAINERS:
+ case PlSqlParser.CONTENT:
+ case PlSqlParser.CONTENTS:
+ case PlSqlParser.CONTEXT:
+ case PlSqlParser.CONTINUE:
+ case PlSqlParser.CONTROLFILE:
+ case PlSqlParser.CON_UID_TO_ID:
+ case PlSqlParser.CONVERT:
+ case PlSqlParser.COOKIE:
+ case PlSqlParser.COPY:
+ case PlSqlParser.CORR_K:
+ case PlSqlParser.CORR_S:
+ case PlSqlParser.CORRUPTION:
+ case PlSqlParser.CORRUPT_XID_ALL:
+ case PlSqlParser.CORRUPT_XID:
+ case PlSqlParser.COS:
+ case PlSqlParser.COSH:
+ case PlSqlParser.COST:
+ case PlSqlParser.COST_XML_QUERY_REWRITE:
+ case PlSqlParser.COUNT:
+ case PlSqlParser.COVAR_POP:
+ case PlSqlParser.COVAR_SAMP:
+ case PlSqlParser.CPU_COSTING:
+ case PlSqlParser.CPU_PER_CALL:
+ case PlSqlParser.CPU_PER_SESSION:
+ case PlSqlParser.CRASH:
+ case PlSqlParser.CREATE_FILE_DEST:
+ case PlSqlParser.CREATE_STORED_OUTLINES:
+ case PlSqlParser.CREATION:
+ case PlSqlParser.CREDENTIAL:
+ case PlSqlParser.CRITICAL:
+ case PlSqlParser.CROSS:
+ case PlSqlParser.CROSSEDITION:
+ case PlSqlParser.CSCONVERT:
+ case PlSqlParser.CUBE_AJ:
+ case PlSqlParser.CUBE:
+ case PlSqlParser.CUBE_GB:
+ case PlSqlParser.CUBE_SJ:
+ case PlSqlParser.CUME_DISTM:
+ case PlSqlParser.CURRENT:
+ case PlSqlParser.CURRENT_DATE:
+ case PlSqlParser.CURRENT_SCHEMA:
+ case PlSqlParser.CURRENT_TIME:
+ case PlSqlParser.CURRENT_TIMESTAMP:
+ case PlSqlParser.CURRENT_USER:
+ case PlSqlParser.CURRENTV:
+ case PlSqlParser.CURSOR:
+ case PlSqlParser.CURSOR_SHARING_EXACT:
+ case PlSqlParser.CURSOR_SPECIFIC_SEGMENT:
+ case PlSqlParser.CUSTOMDATUM:
+ case PlSqlParser.CV:
+ case PlSqlParser.CYCLE:
+ case PlSqlParser.DANGLING:
+ case PlSqlParser.DATABASE:
+ case PlSqlParser.DATA:
+ case PlSqlParser.DATAFILE:
+ case PlSqlParser.DATAFILES:
+ case PlSqlParser.DATAMOVEMENT:
+ case PlSqlParser.DATAOBJNO:
+ case PlSqlParser.DATAOBJ_TO_MAT_PARTITION:
+ case PlSqlParser.DATAOBJ_TO_PARTITION:
+ case PlSqlParser.DATAPUMP:
+ case PlSqlParser.DATA_SECURITY_REWRITE_LIMIT:
+ case PlSqlParser.DATE_MODE:
+ case PlSqlParser.DAY:
+ case PlSqlParser.DAYS:
+ case PlSqlParser.DBA:
+ case PlSqlParser.DBA_RECYCLEBIN:
+ case PlSqlParser.DBMS_STATS:
+ case PlSqlParser.DB_ROLE_CHANGE:
+ case PlSqlParser.DBTIMEZONE:
+ case PlSqlParser.DB_UNIQUE_NAME:
+ case PlSqlParser.DB_VERSION:
+ case PlSqlParser.DDL:
+ case PlSqlParser.DEALLOCATE:
+ case PlSqlParser.DEBUG:
+ case PlSqlParser.DEBUGGER:
+ case PlSqlParser.DEC:
+ case PlSqlParser.DECIMAL:
+ case PlSqlParser.DECLARE:
+ case PlSqlParser.DECOMPOSE:
+ case PlSqlParser.DECORRELATE:
+ case PlSqlParser.DECR:
+ case PlSqlParser.DECREMENT:
+ case PlSqlParser.DECRYPT:
+ case PlSqlParser.DEDUPLICATE:
+ case PlSqlParser.DEFAULTS:
+ case PlSqlParser.DEFERRABLE:
+ case PlSqlParser.DEFERRED:
+ case PlSqlParser.DEFINED:
+ case PlSqlParser.DEFINE:
+ case PlSqlParser.DEFINER:
+ case PlSqlParser.DEGREE:
+ case PlSqlParser.DELAY:
+ case PlSqlParser.DELEGATE:
+ case PlSqlParser.DELETE_ALL:
+ case PlSqlParser.DELETE:
+ case PlSqlParser.DELETEXML:
+ case PlSqlParser.DEMAND:
+ case PlSqlParser.DENSE_RANKM:
+ case PlSqlParser.DEPENDENT:
+ case PlSqlParser.DEPTH:
+ case PlSqlParser.DEQUEUE:
+ case PlSqlParser.DEREF:
+ case PlSqlParser.DEREF_NO_REWRITE:
+ case PlSqlParser.DESTROY:
+ case PlSqlParser.DETACHED:
+ case PlSqlParser.DETERMINES:
+ case PlSqlParser.DETERMINISTIC:
+ case PlSqlParser.DICTIONARY:
+ case PlSqlParser.DIMENSION:
+ case PlSqlParser.DIMENSIONS:
+ case PlSqlParser.DIRECT_LOAD:
+ case PlSqlParser.DIRECTORY:
+ case PlSqlParser.DIRECT_PATH:
+ case PlSqlParser.DISABLE_ALL:
+ case PlSqlParser.DISABLE:
+ case PlSqlParser.DISABLE_PARALLEL_DML:
+ case PlSqlParser.DISABLE_PRESET:
+ case PlSqlParser.DISABLE_RPKE:
+ case PlSqlParser.DISALLOW:
+ case PlSqlParser.DISASSOCIATE:
+ case PlSqlParser.DISCARD:
+ case PlSqlParser.DISCONNECT:
+ case PlSqlParser.DISK:
+ case PlSqlParser.DISKGROUP:
+ case PlSqlParser.DISKS:
+ case PlSqlParser.DISMOUNT:
+ case PlSqlParser.DISTINGUISHED:
+ case PlSqlParser.DISTRIBUTED:
+ case PlSqlParser.DISTRIBUTE:
+ case PlSqlParser.DML:
+ case PlSqlParser.DML_UPDATE:
+ case PlSqlParser.DOCFIDELITY:
+ case PlSqlParser.DOCUMENT:
+ case PlSqlParser.DOMAIN_INDEX_FILTER:
+ case PlSqlParser.DOMAIN_INDEX_NO_SORT:
+ case PlSqlParser.DOMAIN_INDEX_SORT:
+ case PlSqlParser.DOUBLE:
+ case PlSqlParser.DOWNGRADE:
+ case PlSqlParser.DRIVING_SITE:
+ case PlSqlParser.DROP_COLUMN:
+ case PlSqlParser.DROP_GROUP:
+ case PlSqlParser.DSINTERVAL_UNCONSTRAINED:
+ case PlSqlParser.DST_UPGRADE_INSERT_CONV:
+ case PlSqlParser.DUMP:
+ case PlSqlParser.DUPLICATE:
+ case PlSqlParser.DV:
+ case PlSqlParser.DYNAMIC:
+ case PlSqlParser.DYNAMIC_SAMPLING:
+ case PlSqlParser.DYNAMIC_SAMPLING_EST_CDN:
+ case PlSqlParser.EACH:
+ case PlSqlParser.EDITIONABLE:
+ case PlSqlParser.EDITION:
+ case PlSqlParser.EDITIONING:
+ case PlSqlParser.EDITIONS:
+ case PlSqlParser.ELEMENT:
+ case PlSqlParser.ELIM_GROUPBY:
+ case PlSqlParser.ELIMINATE_JOIN:
+ case PlSqlParser.ELIMINATE_OBY:
+ case PlSqlParser.ELIMINATE_OUTER_JOIN:
+ case PlSqlParser.EM:
+ case PlSqlParser.EMPTY_BLOB:
+ case PlSqlParser.EMPTY_CLOB:
+ case PlSqlParser.EMPTY:
+ case PlSqlParser.ENABLE_ALL:
+ case PlSqlParser.ENABLE:
+ case PlSqlParser.ENABLE_PARALLEL_DML:
+ case PlSqlParser.ENABLE_PRESET:
+ case PlSqlParser.ENCODING:
+ case PlSqlParser.ENCRYPT:
+ case PlSqlParser.ENCRYPTION:
+ case PlSqlParser.END_OUTLINE_DATA:
+ case PlSqlParser.ENFORCED:
+ case PlSqlParser.ENFORCE:
+ case PlSqlParser.ENQUEUE:
+ case PlSqlParser.ENTERPRISE:
+ case PlSqlParser.ENTITYESCAPING:
+ case PlSqlParser.ENTRY:
+ case PlSqlParser.EQUIPART:
+ case PlSqlParser.ERR:
+ case PlSqlParser.ERROR_ARGUMENT:
+ case PlSqlParser.ERROR:
+ case PlSqlParser.ERROR_ON_OVERLAP_TIME:
+ case PlSqlParser.ERRORS:
+ case PlSqlParser.ESCAPE:
+ case PlSqlParser.ESTIMATE:
+ case PlSqlParser.EVAL:
+ case PlSqlParser.EVALNAME:
+ case PlSqlParser.EVALUATE:
+ case PlSqlParser.EVALUATION:
+ case PlSqlParser.EVENTS:
+ case PlSqlParser.EVERY:
+ case PlSqlParser.EXCEPT:
+ case PlSqlParser.EXCEPTION:
+ case PlSqlParser.EXCEPTION_INIT:
+ case PlSqlParser.EXCEPTIONS:
+ case PlSqlParser.EXCHANGE:
+ case PlSqlParser.EXCLUDE:
+ case PlSqlParser.EXCLUDING:
+ case PlSqlParser.EXECUTE:
+ case PlSqlParser.EXEMPT:
+ case PlSqlParser.EXISTING:
+ case PlSqlParser.EXISTS:
+ case PlSqlParser.EXISTSNODE:
+ case PlSqlParser.EXIT:
+ case PlSqlParser.EXPAND_GSET_TO_UNION:
+ case PlSqlParser.EXPAND_TABLE:
+ case PlSqlParser.EXP:
+ case PlSqlParser.EXPIRE:
+ case PlSqlParser.EXPLAIN:
+ case PlSqlParser.EXPLOSION:
+ case PlSqlParser.EXPORT:
+ case PlSqlParser.EXPR_CORR_CHECK:
+ case PlSqlParser.EXPRESS:
+ case PlSqlParser.EXTENDS:
+ case PlSqlParser.EXTENT:
+ case PlSqlParser.EXTENTS:
+ case PlSqlParser.EXTERNAL:
+ case PlSqlParser.EXTERNALLY:
+ case PlSqlParser.EXTRACTCLOBXML:
+ case PlSqlParser.EXTRACT:
+ case PlSqlParser.EXTRACTVALUE:
+ case PlSqlParser.EXTRA:
+ case PlSqlParser.FACILITY:
+ case PlSqlParser.FACT:
+ case PlSqlParser.FACTOR:
+ case PlSqlParser.FACTORIZE_JOIN:
+ case PlSqlParser.FAILED:
+ case PlSqlParser.FAILED_LOGIN_ATTEMPTS:
+ case PlSqlParser.FAILGROUP:
+ case PlSqlParser.FAILOVER:
+ case PlSqlParser.FAILURE:
+ case PlSqlParser.FALSE:
+ case PlSqlParser.FAMILY:
+ case PlSqlParser.FAR:
+ case PlSqlParser.FAST:
+ case PlSqlParser.FASTSTART:
+ case PlSqlParser.FBTSCAN:
+ case PlSqlParser.FEATURE_DETAILS:
+ case PlSqlParser.FEATURE_ID:
+ case PlSqlParser.FEATURE_SET:
+ case PlSqlParser.FEATURE_VALUE:
+ case PlSqlParser.FETCH:
+ case PlSqlParser.FILE:
+ case PlSqlParser.FILE_NAME_CONVERT:
+ case PlSqlParser.FILESYSTEM_LIKE_LOGGING:
+ case PlSqlParser.FILTER:
+ case PlSqlParser.FINAL:
+ case PlSqlParser.FINE:
+ case PlSqlParser.FINISH:
+ case PlSqlParser.FIRST:
+ case PlSqlParser.FIRSTM:
+ case PlSqlParser.FIRST_ROWS:
+ case PlSqlParser.FIRST_VALUE:
+ case PlSqlParser.FIXED_VIEW_DATA:
+ case PlSqlParser.FLAGGER:
+ case PlSqlParser.FLASHBACK:
+ case PlSqlParser.FLASH_CACHE:
+ case PlSqlParser.FLOAT:
+ case PlSqlParser.FLOB:
+ case PlSqlParser.FLOOR:
+ case PlSqlParser.FLUSH:
+ case PlSqlParser.FOLDER:
+ case PlSqlParser.FOLLOWING:
+ case PlSqlParser.FOLLOWS:
+ case PlSqlParser.FORALL:
+ case PlSqlParser.FORCE:
+ case PlSqlParser.FORCE_XML_QUERY_REWRITE:
+ case PlSqlParser.FOREIGN:
+ case PlSqlParser.FOREVER:
+ case PlSqlParser.FORMAT:
+ case PlSqlParser.FORWARD:
+ case PlSqlParser.FRAGMENT_NUMBER:
+ case PlSqlParser.FREELIST:
+ case PlSqlParser.FREELISTS:
+ case PlSqlParser.FREEPOOLS:
+ case PlSqlParser.FRESH:
+ case PlSqlParser.FROM_TZ:
+ case PlSqlParser.FULL:
+ case PlSqlParser.FULL_OUTER_JOIN_TO_OUTER:
+ case PlSqlParser.FUNCTION:
+ case PlSqlParser.FUNCTIONS:
+ case PlSqlParser.GATHER_OPTIMIZER_STATISTICS:
+ case PlSqlParser.GATHER_PLAN_STATISTICS:
+ case PlSqlParser.GBY_CONC_ROLLUP:
+ case PlSqlParser.GBY_PUSHDOWN:
+ case PlSqlParser.GENERATED:
+ case PlSqlParser.GET:
+ case PlSqlParser.GLOBAL:
+ case PlSqlParser.GLOBALLY:
+ case PlSqlParser.GLOBAL_NAME:
+ case PlSqlParser.GLOBAL_TOPIC_ENABLED:
+ case PlSqlParser.GROUP_BY:
+ case PlSqlParser.GROUP_ID:
+ case PlSqlParser.GROUPING:
+ case PlSqlParser.GROUPING_ID:
+ case PlSqlParser.GROUPS:
+ case PlSqlParser.GUARANTEED:
+ case PlSqlParser.GUARANTEE:
+ case PlSqlParser.GUARD:
+ case PlSqlParser.HASH_AJ:
+ case PlSqlParser.HASH:
+ case PlSqlParser.HASHKEYS:
+ case PlSqlParser.HASH_SJ:
+ case PlSqlParser.HEADER:
+ case PlSqlParser.HEAP:
+ case PlSqlParser.HELP:
+ case PlSqlParser.HEXTORAW:
+ case PlSqlParser.HEXTOREF:
+ case PlSqlParser.HIDDEN_KEYWORD:
+ case PlSqlParser.HIDE:
+ case PlSqlParser.HIERARCHY:
+ case PlSqlParser.HIGH:
+ case PlSqlParser.HINTSET_BEGIN:
+ case PlSqlParser.HINTSET_END:
+ case PlSqlParser.HOT:
+ case PlSqlParser.HOUR:
+ case PlSqlParser.HWM_BROKERED:
+ case PlSqlParser.HYBRID:
+ case PlSqlParser.IDENTIFIER:
+ case PlSqlParser.IDENTITY:
+ case PlSqlParser.IDGENERATORS:
+ case PlSqlParser.ID:
+ case PlSqlParser.IDLE_TIME:
+ case PlSqlParser.IF:
+ case PlSqlParser.IGNORE:
+ case PlSqlParser.IGNORE_OPTIM_EMBEDDED_HINTS:
+ case PlSqlParser.IGNORE_ROW_ON_DUPKEY_INDEX:
+ case PlSqlParser.IGNORE_WHERE_CLAUSE:
+ case PlSqlParser.ILM:
+ case PlSqlParser.IMMEDIATE:
+ case PlSqlParser.IMPACT:
+ case PlSqlParser.IMPORT:
+ case PlSqlParser.INACTIVE:
+ case PlSqlParser.INCLUDE:
+ case PlSqlParser.INCLUDE_VERSION:
+ case PlSqlParser.INCLUDING:
+ case PlSqlParser.INCREMENTAL:
+ case PlSqlParser.INCREMENT:
+ case PlSqlParser.INCR:
+ case PlSqlParser.INDENT:
+ case PlSqlParser.INDEX_ASC:
+ case PlSqlParser.INDEX_COMBINE:
+ case PlSqlParser.INDEX_DESC:
+ case PlSqlParser.INDEXED:
+ case PlSqlParser.INDEXES:
+ case PlSqlParser.INDEX_FFS:
+ case PlSqlParser.INDEX_FILTER:
+ case PlSqlParser.INDEXING:
+ case PlSqlParser.INDEX_JOIN:
+ case PlSqlParser.INDEX_ROWS:
+ case PlSqlParser.INDEX_RRS:
+ case PlSqlParser.INDEX_RS_ASC:
+ case PlSqlParser.INDEX_RS_DESC:
+ case PlSqlParser.INDEX_RS:
+ case PlSqlParser.INDEX_SCAN:
+ case PlSqlParser.INDEX_SKIP_SCAN:
+ case PlSqlParser.INDEX_SS_ASC:
+ case PlSqlParser.INDEX_SS_DESC:
+ case PlSqlParser.INDEX_SS:
+ case PlSqlParser.INDEX_STATS:
+ case PlSqlParser.INDEXTYPE:
+ case PlSqlParser.INDEXTYPES:
+ case PlSqlParser.INDICATOR:
+ case PlSqlParser.INDICES:
+ case PlSqlParser.INFINITE:
+ case PlSqlParser.INFORMATIONAL:
+ case PlSqlParser.INHERIT:
+ case PlSqlParser.INITCAP:
+ case PlSqlParser.INITIAL:
+ case PlSqlParser.INITIALIZED:
+ case PlSqlParser.INITIALLY:
+ case PlSqlParser.INITRANS:
+ case PlSqlParser.INLINE:
+ case PlSqlParser.INLINE_XMLTYPE_NT:
+ case PlSqlParser.INMEMORY:
+ case PlSqlParser.IN_MEMORY_METADATA:
+ case PlSqlParser.INMEMORY_PRUNING:
+ case PlSqlParser.INNER:
+ case PlSqlParser.INOUT:
+ case PlSqlParser.INPLACE:
+ case PlSqlParser.INSERTCHILDXMLAFTER:
+ case PlSqlParser.INSERTCHILDXMLBEFORE:
+ case PlSqlParser.INSERTCHILDXML:
+ case PlSqlParser.INSERTXMLAFTER:
+ case PlSqlParser.INSERTXMLBEFORE:
+ case PlSqlParser.INSTANCE:
+ case PlSqlParser.INSTANCES:
+ case PlSqlParser.INSTANTIABLE:
+ case PlSqlParser.INSTANTLY:
+ case PlSqlParser.INSTEAD:
+ case PlSqlParser.INSTR2:
+ case PlSqlParser.INSTR4:
+ case PlSqlParser.INSTRB:
+ case PlSqlParser.INSTRC:
+ case PlSqlParser.INSTR:
+ case PlSqlParser.INTEGER:
+ case PlSqlParser.INTERLEAVED:
+ case PlSqlParser.INTERMEDIATE:
+ case PlSqlParser.INTERNAL_CONVERT:
+ case PlSqlParser.INTERNAL_USE:
+ case PlSqlParser.INTERPRETED:
+ case PlSqlParser.INTERVAL:
+ case PlSqlParser.INT:
+ case PlSqlParser.INVALIDATE:
+ case PlSqlParser.INVISIBLE:
+ case PlSqlParser.IN_XQUERY:
+ case PlSqlParser.ISOLATION:
+ case PlSqlParser.ISOLATION_LEVEL:
+ case PlSqlParser.ITERATE:
+ case PlSqlParser.ITERATION_NUMBER:
+ case PlSqlParser.JAVA:
+ case PlSqlParser.JOB:
+ case PlSqlParser.JOIN:
+ case PlSqlParser.JSON_ARRAYAGG:
+ case PlSqlParser.JSON_ARRAY:
+ case PlSqlParser.JSON_EQUAL:
+ case PlSqlParser.JSON_EXISTS2:
+ case PlSqlParser.JSON_EXISTS:
+ case PlSqlParser.JSONGET:
+ case PlSqlParser.JSON:
+ case PlSqlParser.JSON_OBJECTAGG:
+ case PlSqlParser.JSON_OBJECT:
+ case PlSqlParser.JSONPARSE:
+ case PlSqlParser.JSON_QUERY:
+ case PlSqlParser.JSON_SERIALIZE:
+ case PlSqlParser.JSON_TABLE:
+ case PlSqlParser.JSON_TEXTCONTAINS2:
+ case PlSqlParser.JSON_TEXTCONTAINS:
+ case PlSqlParser.JSON_VALUE:
+ case PlSqlParser.KEEP_DUPLICATES:
+ case PlSqlParser.KEEP:
+ case PlSqlParser.KERBEROS:
+ case PlSqlParser.KEY:
+ case PlSqlParser.KEY_LENGTH:
+ case PlSqlParser.KEYSIZE:
+ case PlSqlParser.KEYS:
+ case PlSqlParser.KEYSTORE:
+ case PlSqlParser.KILL:
+ case PlSqlParser.LABEL:
+ case PlSqlParser.LANGUAGE:
+ case PlSqlParser.LAST_DAY:
+ case PlSqlParser.LAST:
+ case PlSqlParser.LAST_VALUE:
+ case PlSqlParser.LATERAL:
+ case PlSqlParser.LAX:
+ case PlSqlParser.LAYER:
+ case PlSqlParser.LDAP_REGISTRATION_ENABLED:
+ case PlSqlParser.LDAP_REGISTRATION:
+ case PlSqlParser.LDAP_REG_SYNC_INTERVAL:
+ case PlSqlParser.LEADING:
+ case PlSqlParser.LEFT:
+ case PlSqlParser.LENGTH2:
+ case PlSqlParser.LENGTH4:
+ case PlSqlParser.LENGTHB:
+ case PlSqlParser.LENGTHC:
+ case PlSqlParser.LENGTH:
+ case PlSqlParser.LESS:
+ case PlSqlParser.LEVEL:
+ case PlSqlParser.LEVELS:
+ case PlSqlParser.LIBRARY:
+ case PlSqlParser.LIFECYCLE:
+ case PlSqlParser.LIFE:
+ case PlSqlParser.LIFETIME:
+ case PlSqlParser.LIKE2:
+ case PlSqlParser.LIKE4:
+ case PlSqlParser.LIKEC:
+ case PlSqlParser.LIKE_EXPAND:
+ case PlSqlParser.LIMIT:
+ case PlSqlParser.LINEAR:
+ case PlSqlParser.LINK:
+ case PlSqlParser.LIST:
+ case PlSqlParser.LN:
+ case PlSqlParser.LNNVL:
+ case PlSqlParser.LOAD:
+ case PlSqlParser.LOB:
+ case PlSqlParser.LOBNVL:
+ case PlSqlParser.LOBS:
+ case PlSqlParser.LOCAL_INDEXES:
+ case PlSqlParser.LOCAL:
+ case PlSqlParser.LOCALTIME:
+ case PlSqlParser.LOCALTIMESTAMP:
+ case PlSqlParser.LOCATION:
+ case PlSqlParser.LOCATOR:
+ case PlSqlParser.LOCKED:
+ case PlSqlParser.LOCKING:
+ case PlSqlParser.LOGFILE:
+ case PlSqlParser.LOGFILES:
+ case PlSqlParser.LOGGING:
+ case PlSqlParser.LOGICAL:
+ case PlSqlParser.LOGICAL_READS_PER_CALL:
+ case PlSqlParser.LOGICAL_READS_PER_SESSION:
+ case PlSqlParser.LOG:
+ case PlSqlParser.LOGMINING:
+ case PlSqlParser.LOGOFF:
+ case PlSqlParser.LOGON:
+ case PlSqlParser.LOG_READ_ONLY_VIOLATIONS:
+ case PlSqlParser.LONG:
+ case PlSqlParser.LOOP:
+ case PlSqlParser.LOWER:
+ case PlSqlParser.LOW:
+ case PlSqlParser.LPAD:
+ case PlSqlParser.LTRIM:
+ case PlSqlParser.MAIN:
+ case PlSqlParser.MAKE_REF:
+ case PlSqlParser.MANAGED:
+ case PlSqlParser.MANAGE:
+ case PlSqlParser.MANAGEMENT:
+ case PlSqlParser.MANAGER:
+ case PlSqlParser.MANUAL:
+ case PlSqlParser.MAP:
+ case PlSqlParser.MAPPING:
+ case PlSqlParser.MASTER:
+ case PlSqlParser.MATCHED:
+ case PlSqlParser.MATCHES:
+ case PlSqlParser.MATCH:
+ case PlSqlParser.MATCH_NUMBER:
+ case PlSqlParser.MATCH_RECOGNIZE:
+ case PlSqlParser.MATERIALIZED:
+ case PlSqlParser.MATERIALIZE:
+ case PlSqlParser.MAXARCHLOGS:
+ case PlSqlParser.MAXDATAFILES:
+ case PlSqlParser.MAXEXTENTS:
+ case PlSqlParser.MAXIMIZE:
+ case PlSqlParser.MAXINSTANCES:
+ case PlSqlParser.MAXLOGFILES:
+ case PlSqlParser.MAXLOGHISTORY:
+ case PlSqlParser.MAXLOGMEMBERS:
+ case PlSqlParser.MAX_SHARED_TEMP_SIZE:
+ case PlSqlParser.MAXSIZE:
+ case PlSqlParser.MAXTRANS:
+ case PlSqlParser.MAXVALUE:
+ case PlSqlParser.MEASURE:
+ case PlSqlParser.MEASURES:
+ case PlSqlParser.MEDIUM:
+ case PlSqlParser.MEMBER:
+ case PlSqlParser.MEMCOMPRESS:
+ case PlSqlParser.MEMORY:
+ case PlSqlParser.MERGEACTIONS:
+ case PlSqlParser.MERGE_AJ:
+ case PlSqlParser.MERGE_CONST_ON:
+ case PlSqlParser.MERGE:
+ case PlSqlParser.MERGE_SJ:
+ case PlSqlParser.METADATA:
+ case PlSqlParser.METHOD:
+ case PlSqlParser.MIGRATE:
+ case PlSqlParser.MIGRATION:
+ case PlSqlParser.MINEXTENTS:
+ case PlSqlParser.MINIMIZE:
+ case PlSqlParser.MINIMUM:
+ case PlSqlParser.MINING:
+ case PlSqlParser.MINUS_NULL:
+ case PlSqlParser.MINUTE:
+ case PlSqlParser.MINVALUE:
+ case PlSqlParser.MIRRORCOLD:
+ case PlSqlParser.MIRRORHOT:
+ case PlSqlParser.MIRROR:
+ case PlSqlParser.MLSLABEL:
+ case PlSqlParser.MODEL_COMPILE_SUBQUERY:
+ case PlSqlParser.MODEL_DONTVERIFY_UNIQUENESS:
+ case PlSqlParser.MODEL_DYNAMIC_SUBQUERY:
+ case PlSqlParser.MODEL_MIN_ANALYSIS:
+ case PlSqlParser.MODEL:
+ case PlSqlParser.MODEL_NB:
+ case PlSqlParser.MODEL_NO_ANALYSIS:
+ case PlSqlParser.MODEL_PBY:
+ case PlSqlParser.MODEL_PUSH_REF:
+ case PlSqlParser.MODEL_SV:
+ case PlSqlParser.MODIFICATION:
+ case PlSqlParser.MODIFY_COLUMN_TYPE:
+ case PlSqlParser.MODIFY:
+ case PlSqlParser.MOD:
+ case PlSqlParser.MODULE:
+ case PlSqlParser.MONITORING:
+ case PlSqlParser.MONITOR:
+ case PlSqlParser.MONTH:
+ case PlSqlParser.MONTHS_BETWEEN:
+ case PlSqlParser.MONTHS:
+ case PlSqlParser.MOUNT:
+ case PlSqlParser.MOUNTPATH:
+ case PlSqlParser.MOVEMENT:
+ case PlSqlParser.MOVE:
+ case PlSqlParser.MULTIDIMENSIONAL:
+ case PlSqlParser.MULTISET:
+ case PlSqlParser.MV_MERGE:
+ case PlSqlParser.NAMED:
+ case PlSqlParser.NAME:
+ case PlSqlParser.NAMESPACE:
+ case PlSqlParser.NAN:
+ case PlSqlParser.NANVL:
+ case PlSqlParser.NATIONAL:
+ case PlSqlParser.NATIVE_FULL_OUTER_JOIN:
+ case PlSqlParser.NATIVE:
+ case PlSqlParser.NATURAL:
+ case PlSqlParser.NAV:
+ case PlSqlParser.NCHAR_CS:
+ case PlSqlParser.NCHAR:
+ case PlSqlParser.NCHR:
+ case PlSqlParser.NCLOB:
+ case PlSqlParser.NEEDED:
+ case PlSqlParser.NEG:
+ case PlSqlParser.NESTED:
+ case PlSqlParser.NESTED_TABLE_FAST_INSERT:
+ case PlSqlParser.NESTED_TABLE_GET_REFS:
+ case PlSqlParser.NESTED_TABLE_ID:
+ case PlSqlParser.NESTED_TABLE_SET_REFS:
+ case PlSqlParser.NESTED_TABLE_SET_SETID:
+ case PlSqlParser.NETWORK:
+ case PlSqlParser.NEVER:
+ case PlSqlParser.NEW:
+ case PlSqlParser.NEW_TIME:
+ case PlSqlParser.NEXT_DAY:
+ case PlSqlParser.NEXT:
+ case PlSqlParser.NL_AJ:
+ case PlSqlParser.NLJ_BATCHING:
+ case PlSqlParser.NLJ_INDEX_FILTER:
+ case PlSqlParser.NLJ_INDEX_SCAN:
+ case PlSqlParser.NLJ_PREFETCH:
+ case PlSqlParser.NLS_CALENDAR:
+ case PlSqlParser.NLS_CHARACTERSET:
+ case PlSqlParser.NLS_CHARSET_DECL_LEN:
+ case PlSqlParser.NLS_CHARSET_ID:
+ case PlSqlParser.NLS_CHARSET_NAME:
+ case PlSqlParser.NLS_COMP:
+ case PlSqlParser.NLS_CURRENCY:
+ case PlSqlParser.NLS_DATE_FORMAT:
+ case PlSqlParser.NLS_DATE_LANGUAGE:
+ case PlSqlParser.NLS_INITCAP:
+ case PlSqlParser.NLS_ISO_CURRENCY:
+ case PlSqlParser.NL_SJ:
+ case PlSqlParser.NLS_LANG:
+ case PlSqlParser.NLS_LANGUAGE:
+ case PlSqlParser.NLS_LENGTH_SEMANTICS:
+ case PlSqlParser.NLS_LOWER:
+ case PlSqlParser.NLS_NCHAR_CONV_EXCP:
+ case PlSqlParser.NLS_NUMERIC_CHARACTERS:
+ case PlSqlParser.NLS_SORT:
+ case PlSqlParser.NLSSORT:
+ case PlSqlParser.NLS_SPECIAL_CHARS:
+ case PlSqlParser.NLS_TERRITORY:
+ case PlSqlParser.NLS_UPPER:
+ case PlSqlParser.NO_ACCESS:
+ case PlSqlParser.NO_ADAPTIVE_PLAN:
+ case PlSqlParser.NO_ANSI_REARCH:
+ case PlSqlParser.NOAPPEND:
+ case PlSqlParser.NOARCHIVELOG:
+ case PlSqlParser.NOAUDIT:
+ case PlSqlParser.NO_AUTO_REOPTIMIZE:
+ case PlSqlParser.NO_BASETABLE_MULTIMV_REWRITE:
+ case PlSqlParser.NO_BATCH_TABLE_ACCESS_BY_ROWID:
+ case PlSqlParser.NO_BIND_AWARE:
+ case PlSqlParser.NO_BUFFER:
+ case PlSqlParser.NOCACHE:
+ case PlSqlParser.NO_CARTESIAN:
+ case PlSqlParser.NO_CHECK_ACL_REWRITE:
+ case PlSqlParser.NO_CLUSTER_BY_ROWID:
+ case PlSqlParser.NO_CLUSTERING:
+ case PlSqlParser.NO_COALESCE_SQ:
+ case PlSqlParser.NO_COMMON_DATA:
+ case PlSqlParser.NO_CONNECT_BY_CB_WHR_ONLY:
+ case PlSqlParser.NO_CONNECT_BY_COMBINE_SW:
+ case PlSqlParser.NO_CONNECT_BY_COST_BASED:
+ case PlSqlParser.NO_CONNECT_BY_ELIM_DUPS:
+ case PlSqlParser.NO_CONNECT_BY_FILTERING:
+ case PlSqlParser.NOCOPY:
+ case PlSqlParser.NO_COST_XML_QUERY_REWRITE:
+ case PlSqlParser.NO_CPU_COSTING:
+ case PlSqlParser.NOCPU_COSTING:
+ case PlSqlParser.NOCYCLE:
+ case PlSqlParser.NO_DATA_SECURITY_REWRITE:
+ case PlSqlParser.NO_DECORRELATE:
+ case PlSqlParser.NODELAY:
+ case PlSqlParser.NO_DOMAIN_INDEX_FILTER:
+ case PlSqlParser.NO_DST_UPGRADE_INSERT_CONV:
+ case PlSqlParser.NO_ELIM_GROUPBY:
+ case PlSqlParser.NO_ELIMINATE_JOIN:
+ case PlSqlParser.NO_ELIMINATE_OBY:
+ case PlSqlParser.NO_ELIMINATE_OUTER_JOIN:
+ case PlSqlParser.NOENTITYESCAPING:
+ case PlSqlParser.NO_EXPAND_GSET_TO_UNION:
+ case PlSqlParser.NO_EXPAND:
+ case PlSqlParser.NO_EXPAND_TABLE:
+ case PlSqlParser.NO_FACT:
+ case PlSqlParser.NO_FACTORIZE_JOIN:
+ case PlSqlParser.NO_FILTERING:
+ case PlSqlParser.NOFORCE:
+ case PlSqlParser.NO_FULL_OUTER_JOIN_TO_OUTER:
+ case PlSqlParser.NO_GATHER_OPTIMIZER_STATISTICS:
+ case PlSqlParser.NO_GBY_PUSHDOWN:
+ case PlSqlParser.NOGUARANTEE:
+ case PlSqlParser.NO_INDEX_FFS:
+ case PlSqlParser.NO_INDEX:
+ case PlSqlParser.NO_INDEX_SS:
+ case PlSqlParser.NO_INMEMORY:
+ case PlSqlParser.NO_INMEMORY_PRUNING:
+ case PlSqlParser.NOKEEP:
+ case PlSqlParser.NO_LOAD:
+ case PlSqlParser.NOLOCAL:
+ case PlSqlParser.NOLOGGING:
+ case PlSqlParser.NOMAPPING:
+ case PlSqlParser.NOMAXVALUE:
+ case PlSqlParser.NO_MERGE:
+ case PlSqlParser.NOMINIMIZE:
+ case PlSqlParser.NOMINVALUE:
+ case PlSqlParser.NO_MODEL_PUSH_REF:
+ case PlSqlParser.NO_MONITORING:
+ case PlSqlParser.NOMONITORING:
+ case PlSqlParser.NO_MONITOR:
+ case PlSqlParser.NO_MULTIMV_REWRITE:
+ case PlSqlParser.NO_NATIVE_FULL_OUTER_JOIN:
+ case PlSqlParser.NONBLOCKING:
+ case PlSqlParser.NONEDITIONABLE:
+ case PlSqlParser.NONE:
+ case PlSqlParser.NO_NLJ_BATCHING:
+ case PlSqlParser.NO_NLJ_PREFETCH:
+ case PlSqlParser.NO:
+ case PlSqlParser.NONSCHEMA:
+ case PlSqlParser.NO_OBJECT_LINK:
+ case PlSqlParser.NOORDER:
+ case PlSqlParser.NO_ORDER_ROLLUPS:
+ case PlSqlParser.NO_OUTER_JOIN_TO_ANTI:
+ case PlSqlParser.NO_OUTER_JOIN_TO_INNER:
+ case PlSqlParser.NOOVERRIDE:
+ case PlSqlParser.NO_PARALLEL_INDEX:
+ case PlSqlParser.NOPARALLEL_INDEX:
+ case PlSqlParser.NO_PARALLEL:
+ case PlSqlParser.NOPARALLEL:
+ case PlSqlParser.NO_PARTIAL_COMMIT:
+ case PlSqlParser.NO_PARTIAL_JOIN:
+ case PlSqlParser.NO_PARTIAL_ROLLUP_PUSHDOWN:
+ case PlSqlParser.NOPARTITION:
+ case PlSqlParser.NO_PLACE_DISTINCT:
+ case PlSqlParser.NO_PLACE_GROUP_BY:
+ case PlSqlParser.NO_PQ_CONCURRENT_UNION:
+ case PlSqlParser.NO_PQ_MAP:
+ case PlSqlParser.NO_PQ_REPLICATE:
+ case PlSqlParser.NO_PQ_SKEW:
+ case PlSqlParser.NO_PRUNE_GSETS:
+ case PlSqlParser.NO_PULL_PRED:
+ case PlSqlParser.NO_PUSH_PRED:
+ case PlSqlParser.NO_PUSH_SUBQ:
+ case PlSqlParser.NO_PX_FAULT_TOLERANCE:
+ case PlSqlParser.NO_PX_JOIN_FILTER:
+ case PlSqlParser.NO_QKN_BUFF:
+ case PlSqlParser.NO_QUERY_TRANSFORMATION:
+ case PlSqlParser.NO_REF_CASCADE:
+ case PlSqlParser.NORELOCATE:
+ case PlSqlParser.NORELY:
+ case PlSqlParser.NOREPAIR:
+ case PlSqlParser.NOREPLAY:
+ case PlSqlParser.NORESETLOGS:
+ case PlSqlParser.NO_RESULT_CACHE:
+ case PlSqlParser.NOREVERSE:
+ case PlSqlParser.NO_REWRITE:
+ case PlSqlParser.NOREWRITE:
+ case PlSqlParser.NORMAL:
+ case PlSqlParser.NO_ROOT_SW_FOR_LOCAL:
+ case PlSqlParser.NOROWDEPENDENCIES:
+ case PlSqlParser.NOSCHEMACHECK:
+ case PlSqlParser.NOSEGMENT:
+ case PlSqlParser.NO_SEMIJOIN:
+ case PlSqlParser.NO_SEMI_TO_INNER:
+ case PlSqlParser.NO_SET_TO_JOIN:
+ case PlSqlParser.NOSORT:
+ case PlSqlParser.NO_SQL_TRANSLATION:
+ case PlSqlParser.NO_SQL_TUNE:
+ case PlSqlParser.NO_STAR_TRANSFORMATION:
+ case PlSqlParser.NO_STATEMENT_QUEUING:
+ case PlSqlParser.NO_STATS_GSETS:
+ case PlSqlParser.NOSTRICT:
+ case PlSqlParser.NO_SUBQUERY_PRUNING:
+ case PlSqlParser.NO_SUBSTRB_PAD:
+ case PlSqlParser.NO_SWAP_JOIN_INPUTS:
+ case PlSqlParser.NOSWITCH:
+ case PlSqlParser.NO_TABLE_LOOKUP_BY_NL:
+ case PlSqlParser.NO_TEMP_TABLE:
+ case PlSqlParser.NOTHING:
+ case PlSqlParser.NOTIFICATION:
+ case PlSqlParser.NO_TRANSFORM_DISTINCT_AGG:
+ case PlSqlParser.NO_UNNEST:
+ case PlSqlParser.NO_USE_CUBE:
+ case PlSqlParser.NO_USE_HASH_AGGREGATION:
+ case PlSqlParser.NO_USE_HASH_GBY_FOR_PUSHDOWN:
+ case PlSqlParser.NO_USE_HASH:
+ case PlSqlParser.NO_USE_INVISIBLE_INDEXES:
+ case PlSqlParser.NO_USE_MERGE:
+ case PlSqlParser.NO_USE_NL:
+ case PlSqlParser.NO_USE_VECTOR_AGGREGATION:
+ case PlSqlParser.NOVALIDATE:
+ case PlSqlParser.NO_VECTOR_TRANSFORM_DIMS:
+ case PlSqlParser.NO_VECTOR_TRANSFORM_FACT:
+ case PlSqlParser.NO_VECTOR_TRANSFORM:
+ case PlSqlParser.NO_XDB_FASTPATH_INSERT:
+ case PlSqlParser.NO_XML_DML_REWRITE:
+ case PlSqlParser.NO_XMLINDEX_REWRITE_IN_SELECT:
+ case PlSqlParser.NO_XMLINDEX_REWRITE:
+ case PlSqlParser.NO_XML_QUERY_REWRITE:
+ case PlSqlParser.NO_ZONEMAP:
+ case PlSqlParser.NTH_VALUE:
+ case PlSqlParser.NULLIF:
+ case PlSqlParser.NULLS:
+ case PlSqlParser.NUMBER:
+ case PlSqlParser.NUMERIC:
+ case PlSqlParser.NUM_INDEX_KEYS:
+ case PlSqlParser.NUMTODSINTERVAL:
+ case PlSqlParser.NUMTOYMINTERVAL:
+ case PlSqlParser.NVARCHAR2:
+ case PlSqlParser.NVL2:
+ case PlSqlParser.OBJECT2XML:
+ case PlSqlParser.OBJECT:
+ case PlSqlParser.OBJ_ID:
+ case PlSqlParser.OBJNO:
+ case PlSqlParser.OBJNO_REUSE:
+ case PlSqlParser.OCCURENCES:
+ case PlSqlParser.OFFLINE:
+ case PlSqlParser.OFF:
+ case PlSqlParser.OFFSET:
+ case PlSqlParser.OIDINDEX:
+ case PlSqlParser.OID:
+ case PlSqlParser.OLAP:
+ case PlSqlParser.OLD:
+ case PlSqlParser.OLD_PUSH_PRED:
+ case PlSqlParser.OLS:
+ case PlSqlParser.OLTP:
+ case PlSqlParser.OMIT:
+ case PlSqlParser.ONE:
+ case PlSqlParser.ONLINE:
+ case PlSqlParser.ONLY:
+ case PlSqlParser.OPAQUE:
+ case PlSqlParser.OPAQUE_TRANSFORM:
+ case PlSqlParser.OPAQUE_XCANONICAL:
+ case PlSqlParser.OPCODE:
+ case PlSqlParser.OPEN:
+ case PlSqlParser.OPERATIONS:
+ case PlSqlParser.OPERATOR:
+ case PlSqlParser.OPT_ESTIMATE:
+ case PlSqlParser.OPTIMAL:
+ case PlSqlParser.OPTIMIZE:
+ case PlSqlParser.OPTIMIZER_FEATURES_ENABLE:
+ case PlSqlParser.OPTIMIZER_GOAL:
+ case PlSqlParser.OPT_PARAM:
+ case PlSqlParser.ORA_BRANCH:
+ case PlSqlParser.ORA_CHECK_ACL:
+ case PlSqlParser.ORA_CHECK_PRIVILEGE:
+ case PlSqlParser.ORA_CLUSTERING:
+ case PlSqlParser.ORADATA:
+ case PlSqlParser.ORADEBUG:
+ case PlSqlParser.ORA_DST_AFFECTED:
+ case PlSqlParser.ORA_DST_CONVERT:
+ case PlSqlParser.ORA_DST_ERROR:
+ case PlSqlParser.ORA_GET_ACLIDS:
+ case PlSqlParser.ORA_GET_PRIVILEGES:
+ case PlSqlParser.ORA_HASH:
+ case PlSqlParser.ORA_INVOKING_USERID:
+ case PlSqlParser.ORA_INVOKING_USER:
+ case PlSqlParser.ORA_INVOKING_XS_USER_GUID:
+ case PlSqlParser.ORA_INVOKING_XS_USER:
+ case PlSqlParser.ORA_RAWCOMPARE:
+ case PlSqlParser.ORA_RAWCONCAT:
+ case PlSqlParser.ORA_ROWSCN:
+ case PlSqlParser.ORA_ROWSCN_RAW:
+ case PlSqlParser.ORA_ROWVERSION:
+ case PlSqlParser.ORA_TABVERSION:
+ case PlSqlParser.ORA_WRITE_TIME:
+ case PlSqlParser.ORDERED:
+ case PlSqlParser.ORDERED_PREDICATES:
+ case PlSqlParser.ORDINALITY:
+ case PlSqlParser.OR_EXPAND:
+ case PlSqlParser.ORGANIZATION:
+ case PlSqlParser.OR_PREDICATES:
+ case PlSqlParser.OSERROR:
+ case PlSqlParser.OTHER:
+ case PlSqlParser.OUTER_JOIN_TO_ANTI:
+ case PlSqlParser.OUTER_JOIN_TO_INNER:
+ case PlSqlParser.OUTER:
+ case PlSqlParser.OUTLINE_LEAF:
+ case PlSqlParser.OUTLINE:
+ case PlSqlParser.OUT_OF_LINE:
+ case PlSqlParser.OUT:
+ case PlSqlParser.OVERFLOW_NOMOVE:
+ case PlSqlParser.OVERFLOW:
+ case PlSqlParser.OVERLAPS:
+ case PlSqlParser.OVER:
+ case PlSqlParser.OVERRIDING:
+ case PlSqlParser.OWNER:
+ case PlSqlParser.OWNERSHIP:
+ case PlSqlParser.OWN:
+ case PlSqlParser.PACKAGE:
+ case PlSqlParser.PACKAGES:
+ case PlSqlParser.PARALLEL_ENABLE:
+ case PlSqlParser.PARALLEL_INDEX:
+ case PlSqlParser.PARALLEL:
+ case PlSqlParser.PARAMETERS:
+ case PlSqlParser.PARAM:
+ case PlSqlParser.PARENT:
+ case PlSqlParser.PARITY:
+ case PlSqlParser.PARTIAL_JOIN:
+ case PlSqlParser.PARTIALLY:
+ case PlSqlParser.PARTIAL:
+ case PlSqlParser.PARTIAL_ROLLUP_PUSHDOWN:
+ case PlSqlParser.PARTITION_HASH:
+ case PlSqlParser.PARTITION_LIST:
+ case PlSqlParser.PARTITION:
+ case PlSqlParser.PARTITION_RANGE:
+ case PlSqlParser.PARTITIONS:
+ case PlSqlParser.PARTNUMINST:
+ case PlSqlParser.PASSING:
+ case PlSqlParser.PASSWORD_GRACE_TIME:
+ case PlSqlParser.PASSWORD_LIFE_TIME:
+ case PlSqlParser.PASSWORD_LOCK_TIME:
+ case PlSqlParser.PASSWORD:
+ case PlSqlParser.PASSWORD_REUSE_MAX:
+ case PlSqlParser.PASSWORD_REUSE_TIME:
+ case PlSqlParser.PASSWORD_VERIFY_FUNCTION:
+ case PlSqlParser.PAST:
+ case PlSqlParser.PATCH:
+ case PlSqlParser.PATH:
+ case PlSqlParser.PATH_PREFIX:
+ case PlSqlParser.PATHS:
+ case PlSqlParser.PATTERN:
+ case PlSqlParser.PBL_HS_BEGIN:
+ case PlSqlParser.PBL_HS_END:
+ case PlSqlParser.PCTINCREASE:
+ case PlSqlParser.PCTTHRESHOLD:
+ case PlSqlParser.PCTUSED:
+ case PlSqlParser.PCTVERSION:
+ case PlSqlParser.PENDING:
+ case PlSqlParser.PERCENT_KEYWORD:
+ case PlSqlParser.PERCENT_RANKM:
+ case PlSqlParser.PERFORMANCE:
+ case PlSqlParser.PERIOD_KEYWORD:
+ case PlSqlParser.PERMANENT:
+ case PlSqlParser.PERMISSION:
+ case PlSqlParser.PERMUTE:
+ case PlSqlParser.PER:
+ case PlSqlParser.PFILE:
+ case PlSqlParser.PHYSICAL:
+ case PlSqlParser.PIKEY:
+ case PlSqlParser.PIPELINED:
+ case PlSqlParser.PIV_GB:
+ case PlSqlParser.PIVOT:
+ case PlSqlParser.PIV_SSF:
+ case PlSqlParser.PLACE_DISTINCT:
+ case PlSqlParser.PLACE_GROUP_BY:
+ case PlSqlParser.PLAN:
+ case PlSqlParser.PLSCOPE_SETTINGS:
+ case PlSqlParser.PLS_INTEGER:
+ case PlSqlParser.PLSQL_CCFLAGS:
+ case PlSqlParser.PLSQL_CODE_TYPE:
+ case PlSqlParser.PLSQL_DEBUG:
+ case PlSqlParser.PLSQL_OPTIMIZE_LEVEL:
+ case PlSqlParser.PLSQL_WARNINGS:
+ case PlSqlParser.PLUGGABLE:
+ case PlSqlParser.POINT:
+ case PlSqlParser.POLICY:
+ case PlSqlParser.POOL_16K:
+ case PlSqlParser.POOL_2K:
+ case PlSqlParser.POOL_32K:
+ case PlSqlParser.POOL_4K:
+ case PlSqlParser.POOL_8K:
+ case PlSqlParser.POSITIVEN:
+ case PlSqlParser.POSITIVE:
+ case PlSqlParser.POST_TRANSACTION:
+ case PlSqlParser.POWERMULTISET_BY_CARDINALITY:
+ case PlSqlParser.POWERMULTISET:
+ case PlSqlParser.POWER:
+ case PlSqlParser.PQ_CONCURRENT_UNION:
+ case PlSqlParser.PQ_DISTRIBUTE:
+ case PlSqlParser.PQ_DISTRIBUTE_WINDOW:
+ case PlSqlParser.PQ_FILTER:
+ case PlSqlParser.PQ_MAP:
+ case PlSqlParser.PQ_NOMAP:
+ case PlSqlParser.PQ_REPLICATE:
+ case PlSqlParser.PQ_SKEW:
+ case PlSqlParser.PRAGMA:
+ case PlSqlParser.PREBUILT:
+ case PlSqlParser.PRECEDES:
+ case PlSqlParser.PRECEDING:
+ case PlSqlParser.PRECISION:
+ case PlSqlParser.PRECOMPUTE_SUBQUERY:
+ case PlSqlParser.PREDICATE_REORDERS:
+ case PlSqlParser.PRELOAD:
+ case PlSqlParser.PREPARE:
+ case PlSqlParser.PRESENTNNV:
+ case PlSqlParser.PRESENT:
+ case PlSqlParser.PRESENTV:
+ case PlSqlParser.PRESERVE_OID:
+ case PlSqlParser.PRESERVE:
+ case PlSqlParser.PRETTY:
+ case PlSqlParser.PREVIOUS:
+ case PlSqlParser.PREV:
+ case PlSqlParser.PRIMARY:
+ case PlSqlParser.PRINTBLOBTOCLOB:
+ case PlSqlParser.PRIORITY:
+ case PlSqlParser.PRIVATE:
+ case PlSqlParser.PRIVATE_SGA:
+ case PlSqlParser.PRIVILEGED:
+ case PlSqlParser.PRIVILEGE:
+ case PlSqlParser.PRIVILEGES:
+ case PlSqlParser.PROCEDURAL:
+ case PlSqlParser.PROCEDURE:
+ case PlSqlParser.PROCESS:
+ case PlSqlParser.PROFILE:
+ case PlSqlParser.PROGRAM:
+ case PlSqlParser.PROJECT:
+ case PlSqlParser.PROPAGATE:
+ case PlSqlParser.PROTECTED:
+ case PlSqlParser.PROTECTION:
+ case PlSqlParser.PROXY:
+ case PlSqlParser.PRUNING:
+ case PlSqlParser.PULL_PRED:
+ case PlSqlParser.PURGE:
+ case PlSqlParser.PUSH_PRED:
+ case PlSqlParser.PUSH_SUBQ:
+ case PlSqlParser.PX_FAULT_TOLERANCE:
+ case PlSqlParser.PX_GRANULE:
+ case PlSqlParser.PX_JOIN_FILTER:
+ case PlSqlParser.QB_NAME:
+ case PlSqlParser.QUERY_BLOCK:
+ case PlSqlParser.QUERY:
+ case PlSqlParser.QUEUE_CURR:
+ case PlSqlParser.QUEUE:
+ case PlSqlParser.QUEUE_ROWP:
+ case PlSqlParser.QUIESCE:
+ case PlSqlParser.QUORUM:
+ case PlSqlParser.QUOTA:
+ case PlSqlParser.RAISE:
+ case PlSqlParser.RANDOM_LOCAL:
+ case PlSqlParser.RANDOM:
+ case PlSqlParser.RANGE:
+ case PlSqlParser.RANKM:
+ case PlSqlParser.RAPIDLY:
+ case PlSqlParser.RAW:
+ case PlSqlParser.RAWTOHEX:
+ case PlSqlParser.RAWTONHEX:
+ case PlSqlParser.RBA:
+ case PlSqlParser.RBO_OUTLINE:
+ case PlSqlParser.RDBA:
+ case PlSqlParser.READ:
+ case PlSqlParser.READS:
+ case PlSqlParser.REALM:
+ case PlSqlParser.REAL:
+ case PlSqlParser.REBALANCE:
+ case PlSqlParser.REBUILD:
+ case PlSqlParser.RECORD:
+ case PlSqlParser.RECORDS_PER_BLOCK:
+ case PlSqlParser.RECOVERABLE:
+ case PlSqlParser.RECOVER:
+ case PlSqlParser.RECOVERY:
+ case PlSqlParser.RECYCLEBIN:
+ case PlSqlParser.RECYCLE:
+ case PlSqlParser.REDACTION:
+ case PlSqlParser.REDEFINE:
+ case PlSqlParser.REDO:
+ case PlSqlParser.REDUCED:
+ case PlSqlParser.REDUNDANCY:
+ case PlSqlParser.REF_CASCADE_CURSOR:
+ case PlSqlParser.REFERENCED:
+ case PlSqlParser.REFERENCE:
+ case PlSqlParser.REFERENCES:
+ case PlSqlParser.REFERENCING:
+ case PlSqlParser.REF:
+ case PlSqlParser.REFRESH:
+ case PlSqlParser.REFTOHEX:
+ case PlSqlParser.REGEXP_COUNT:
+ case PlSqlParser.REGEXP_INSTR:
+ case PlSqlParser.REGEXP_LIKE:
+ case PlSqlParser.REGEXP_REPLACE:
+ case PlSqlParser.REGEXP_SUBSTR:
+ case PlSqlParser.REGISTER:
+ case PlSqlParser.REGR_AVGX:
+ case PlSqlParser.REGR_AVGY:
+ case PlSqlParser.REGR_COUNT:
+ case PlSqlParser.REGR_INTERCEPT:
+ case PlSqlParser.REGR_R2:
+ case PlSqlParser.REGR_SLOPE:
+ case PlSqlParser.REGR_SXX:
+ case PlSqlParser.REGR_SXY:
+ case PlSqlParser.REGR_SYY:
+ case PlSqlParser.REGULAR:
+ case PlSqlParser.REJECT:
+ case PlSqlParser.REKEY:
+ case PlSqlParser.RELATIONAL:
+ case PlSqlParser.RELOCATE:
+ case PlSqlParser.RELY:
+ case PlSqlParser.REMAINDER:
+ case PlSqlParser.REMOTE_MAPPED:
+ case PlSqlParser.REMOVE:
+ case PlSqlParser.RENAME:
+ case PlSqlParser.REPAIR:
+ case PlSqlParser.REPEAT:
+ case PlSqlParser.REPLACE:
+ case PlSqlParser.REPLICATION:
+ case PlSqlParser.REQUIRED:
+ case PlSqlParser.RESETLOGS:
+ case PlSqlParser.RESET:
+ case PlSqlParser.RESIZE:
+ case PlSqlParser.RESOLVE:
+ case PlSqlParser.RESOLVER:
+ case PlSqlParser.RESPECT:
+ case PlSqlParser.RESTART:
+ case PlSqlParser.RESTORE_AS_INTERVALS:
+ case PlSqlParser.RESTORE:
+ case PlSqlParser.RESTRICT_ALL_REF_CONS:
+ case PlSqlParser.RESTRICTED:
+ case PlSqlParser.RESTRICT_REFERENCES:
+ case PlSqlParser.RESTRICT:
+ case PlSqlParser.RESULT_CACHE:
+ case PlSqlParser.RESULT:
+ case PlSqlParser.RESUMABLE:
+ case PlSqlParser.RESUME:
+ case PlSqlParser.RETENTION:
+ case PlSqlParser.RETRY_ON_ROW_CHANGE:
+ case PlSqlParser.RETURNING:
+ case PlSqlParser.RETURN:
+ case PlSqlParser.REUSE:
+ case PlSqlParser.REVERSE:
+ case PlSqlParser.REWRITE_OR_ERROR:
+ case PlSqlParser.REWRITE:
+ case PlSqlParser.RIGHT:
+ case PlSqlParser.ROLE:
+ case PlSqlParser.ROLESET:
+ case PlSqlParser.ROLES:
+ case PlSqlParser.ROLLBACK:
+ case PlSqlParser.ROLLING:
+ case PlSqlParser.ROLLUP:
+ case PlSqlParser.ROWDEPENDENCIES:
+ case PlSqlParser.ROWID_MAPPING_TABLE:
+ case PlSqlParser.ROWID:
+ case PlSqlParser.ROWIDTOCHAR:
+ case PlSqlParser.ROWIDTONCHAR:
+ case PlSqlParser.ROW_LENGTH:
+ case PlSqlParser.ROWNUM:
+ case PlSqlParser.ROW:
+ case PlSqlParser.ROWS:
+ case PlSqlParser.RPAD:
+ case PlSqlParser.RTRIM:
+ case PlSqlParser.RULE:
+ case PlSqlParser.RULES:
+ case PlSqlParser.RUNNING:
+ case PlSqlParser.SALT:
+ case PlSqlParser.SAMPLE:
+ case PlSqlParser.SAVE_AS_INTERVALS:
+ case PlSqlParser.SAVEPOINT:
+ case PlSqlParser.SAVE:
+ case PlSqlParser.SB4:
+ case PlSqlParser.SCALE_ROWS:
+ case PlSqlParser.SCALE:
+ case PlSqlParser.SCAN_INSTANCES:
+ case PlSqlParser.SCAN:
+ case PlSqlParser.SCHEDULER:
+ case PlSqlParser.SCHEMACHECK:
+ case PlSqlParser.SCHEMA:
+ case PlSqlParser.SCN_ASCENDING:
+ case PlSqlParser.SCN:
+ case PlSqlParser.SCOPE:
+ case PlSqlParser.SCRUB:
+ case PlSqlParser.SD_ALL:
+ case PlSqlParser.SD_INHIBIT:
+ case PlSqlParser.SDO_GEOM_MBR:
+ case PlSqlParser.SD_SHOW:
+ case PlSqlParser.SEARCH:
+ case PlSqlParser.SECOND:
+ case PlSqlParser.SECRET:
+ case PlSqlParser.SECUREFILE_DBA:
+ case PlSqlParser.SECUREFILE:
+ case PlSqlParser.SECURITY:
+ case PlSqlParser.SEED:
+ case PlSqlParser.SEG_BLOCK:
+ case PlSqlParser.SEG_FILE:
+ case PlSqlParser.SEGMENT:
+ case PlSqlParser.SELECTIVITY:
+ case PlSqlParser.SELF:
+ case PlSqlParser.SEMIJOIN_DRIVER:
+ case PlSqlParser.SEMIJOIN:
+ case PlSqlParser.SEMI_TO_INNER:
+ case PlSqlParser.SEQUENCED:
+ case PlSqlParser.SEQUENCE:
+ case PlSqlParser.SEQUENTIAL:
+ case PlSqlParser.SERIALIZABLE:
+ case PlSqlParser.SERIALLY_REUSABLE:
+ case PlSqlParser.SERIAL:
+ case PlSqlParser.SERVERERROR:
+ case PlSqlParser.SERVICE_NAME_CONVERT:
+ case PlSqlParser.SERVICES:
+ case PlSqlParser.SESSION_CACHED_CURSORS:
+ case PlSqlParser.SESSION:
+ case PlSqlParser.SESSIONS_PER_USER:
+ case PlSqlParser.SESSIONTIMEZONE:
+ case PlSqlParser.SESSIONTZNAME:
+ case PlSqlParser.SET:
+ case PlSqlParser.SETS:
+ case PlSqlParser.SETTINGS:
+ case PlSqlParser.SET_TO_JOIN:
+ case PlSqlParser.SEVERE:
+ case PlSqlParser.SHARED_POOL:
+ case PlSqlParser.SHARED:
+ case PlSqlParser.SHARING:
+ case PlSqlParser.SHELFLIFE:
+ case PlSqlParser.SHOW:
+ case PlSqlParser.SHRINK:
+ case PlSqlParser.SHUTDOWN:
+ case PlSqlParser.SIBLINGS:
+ case PlSqlParser.SID:
+ case PlSqlParser.SIGNAL_COMPONENT:
+ case PlSqlParser.SIGNAL_FUNCTION:
+ case PlSqlParser.SIGN:
+ case PlSqlParser.SIGNTYPE:
+ case PlSqlParser.SIMPLE_INTEGER:
+ case PlSqlParser.SIMPLE:
+ case PlSqlParser.SINGLE:
+ case PlSqlParser.SINGLETASK:
+ case PlSqlParser.SINH:
+ case PlSqlParser.SIN:
+ case PlSqlParser.SKIP_EXT_OPTIMIZER:
+ case PlSqlParser.SKIP_:
+ case PlSqlParser.SKIP_UNQ_UNUSABLE_IDX:
+ case PlSqlParser.SKIP_UNUSABLE_INDEXES:
+ case PlSqlParser.SMALLFILE:
+ case PlSqlParser.SMALLINT:
+ case PlSqlParser.SNAPSHOT:
+ case PlSqlParser.SOME:
+ case PlSqlParser.SORT:
+ case PlSqlParser.SOUNDEX:
+ case PlSqlParser.SOURCE_FILE_DIRECTORY:
+ case PlSqlParser.SOURCE_FILE_NAME_CONVERT:
+ case PlSqlParser.SOURCE:
+ case PlSqlParser.SPACE_KEYWORD:
+ case PlSqlParser.SPECIFICATION:
+ case PlSqlParser.SPFILE:
+ case PlSqlParser.SPLIT:
+ case PlSqlParser.SPREADSHEET:
+ case PlSqlParser.SQLDATA:
+ case PlSqlParser.SQLERROR:
+ case PlSqlParser.SQLLDR:
+ case PlSqlParser.SQL:
+ case PlSqlParser.SQL_TRACE:
+ case PlSqlParser.SQL_TRANSLATION_PROFILE:
+ case PlSqlParser.SQRT:
+ case PlSqlParser.STALE:
+ case PlSqlParser.STANDALONE:
+ case PlSqlParser.STANDARD_HASH:
+ case PlSqlParser.STANDBY_MAX_DATA_DELAY:
+ case PlSqlParser.STANDBYS:
+ case PlSqlParser.STANDBY:
+ case PlSqlParser.STAR:
+ case PlSqlParser.STAR_TRANSFORMATION:
+ case PlSqlParser.STARTUP:
+ case PlSqlParser.STATEMENT_ID:
+ case PlSqlParser.STATEMENT_QUEUING:
+ case PlSqlParser.STATEMENTS:
+ case PlSqlParser.STATEMENT:
+ case PlSqlParser.STATE:
+ case PlSqlParser.STATIC:
+ case PlSqlParser.STATISTICS:
+ case PlSqlParser.STATS_BINOMIAL_TEST:
+ case PlSqlParser.STATS_CROSSTAB:
+ case PlSqlParser.STATS_F_TEST:
+ case PlSqlParser.STATS_KS_TEST:
+ case PlSqlParser.STATS_MODE:
+ case PlSqlParser.STATS_MW_TEST:
+ case PlSqlParser.STATS_ONE_WAY_ANOVA:
+ case PlSqlParser.STATS_T_TEST_INDEP:
+ case PlSqlParser.STATS_T_TEST_INDEPU:
+ case PlSqlParser.STATS_T_TEST_ONE:
+ case PlSqlParser.STATS_T_TEST_PAIRED:
+ case PlSqlParser.STATS_WSR_TEST:
+ case PlSqlParser.STDDEV_POP:
+ case PlSqlParser.STDDEV_SAMP:
+ case PlSqlParser.STOP:
+ case PlSqlParser.STORAGE:
+ case PlSqlParser.STORE:
+ case PlSqlParser.STREAMS:
+ case PlSqlParser.STREAM:
+ case PlSqlParser.STRICT:
+ case PlSqlParser.STRING:
+ case PlSqlParser.STRIPE_COLUMNS:
+ case PlSqlParser.STRIPE_WIDTH:
+ case PlSqlParser.STRIP:
+ case PlSqlParser.STRUCTURE:
+ case PlSqlParser.SUBMULTISET:
+ case PlSqlParser.SUBPARTITION_REL:
+ case PlSqlParser.SUBPARTITIONS:
+ case PlSqlParser.SUBPARTITION:
+ case PlSqlParser.SUBQUERIES:
+ case PlSqlParser.SUBQUERY_PRUNING:
+ case PlSqlParser.SUBSCRIBE:
+ case PlSqlParser.SUBSET:
+ case PlSqlParser.SUBSTITUTABLE:
+ case PlSqlParser.SUBSTR2:
+ case PlSqlParser.SUBSTR4:
+ case PlSqlParser.SUBSTRB:
+ case PlSqlParser.SUBSTRC:
+ case PlSqlParser.SUBTYPE:
+ case PlSqlParser.SUCCESSFUL:
+ case PlSqlParser.SUCCESS:
+ case PlSqlParser.SUMMARY:
+ case PlSqlParser.SUPPLEMENTAL:
+ case PlSqlParser.SUSPEND:
+ case PlSqlParser.SWAP_JOIN_INPUTS:
+ case PlSqlParser.SWITCHOVER:
+ case PlSqlParser.SWITCH:
+ case PlSqlParser.SYNCHRONOUS:
+ case PlSqlParser.SYNC:
+ case PlSqlParser.SYSASM:
+ case PlSqlParser.SYS_AUDIT:
+ case PlSqlParser.SYSAUX:
+ case PlSqlParser.SYSBACKUP:
+ case PlSqlParser.SYS_CHECKACL:
+ case PlSqlParser.SYS_CHECK_PRIVILEGE:
+ case PlSqlParser.SYS_CONNECT_BY_PATH:
+ case PlSqlParser.SYS_CONTEXT:
+ case PlSqlParser.SYSDATE:
+ case PlSqlParser.SYSDBA:
+ case PlSqlParser.SYS_DBURIGEN:
+ case PlSqlParser.SYSDG:
+ case PlSqlParser.SYS_DL_CURSOR:
+ case PlSqlParser.SYS_DM_RXFORM_CHR:
+ case PlSqlParser.SYS_DM_RXFORM_NUM:
+ case PlSqlParser.SYS_DOM_COMPARE:
+ case PlSqlParser.SYS_DST_PRIM2SEC:
+ case PlSqlParser.SYS_DST_SEC2PRIM:
+ case PlSqlParser.SYS_ET_BFILE_TO_RAW:
+ case PlSqlParser.SYS_ET_BLOB_TO_IMAGE:
+ case PlSqlParser.SYS_ET_IMAGE_TO_BLOB:
+ case PlSqlParser.SYS_ET_RAW_TO_BFILE:
+ case PlSqlParser.SYS_EXTPDTXT:
+ case PlSqlParser.SYS_EXTRACT_UTC:
+ case PlSqlParser.SYS_FBT_INSDEL:
+ case PlSqlParser.SYS_FILTER_ACLS:
+ case PlSqlParser.SYS_FNMATCHES:
+ case PlSqlParser.SYS_FNREPLACE:
+ case PlSqlParser.SYS_GET_ACLIDS:
+ case PlSqlParser.SYS_GET_COL_ACLIDS:
+ case PlSqlParser.SYS_GET_PRIVILEGES:
+ case PlSqlParser.SYS_GETTOKENID:
+ case PlSqlParser.SYS_GETXTIVAL:
+ case PlSqlParser.SYS_GUID:
+ case PlSqlParser.SYSGUID:
+ case PlSqlParser.SYSKM:
+ case PlSqlParser.SYS_MAKE_XMLNODEID:
+ case PlSqlParser.SYS_MAKEXML:
+ case PlSqlParser.SYS_MKXMLATTR:
+ case PlSqlParser.SYS_MKXTI:
+ case PlSqlParser.SYSOBJ:
+ case PlSqlParser.SYS_OP_ADT2BIN:
+ case PlSqlParser.SYS_OP_ADTCONS:
+ case PlSqlParser.SYS_OP_ALSCRVAL:
+ case PlSqlParser.SYS_OP_ATG:
+ case PlSqlParser.SYS_OP_BIN2ADT:
+ case PlSqlParser.SYS_OP_BITVEC:
+ case PlSqlParser.SYS_OP_BL2R:
+ case PlSqlParser.SYS_OP_BLOOM_FILTER_LIST:
+ case PlSqlParser.SYS_OP_BLOOM_FILTER:
+ case PlSqlParser.SYS_OP_C2C:
+ case PlSqlParser.SYS_OP_CAST:
+ case PlSqlParser.SYS_OP_CEG:
+ case PlSqlParser.SYS_OP_CL2C:
+ case PlSqlParser.SYS_OP_COMBINED_HASH:
+ case PlSqlParser.SYS_OP_COMP:
+ case PlSqlParser.SYS_OP_CONVERT:
+ case PlSqlParser.SYS_OP_COUNTCHG:
+ case PlSqlParser.SYS_OP_CSCONV:
+ case PlSqlParser.SYS_OP_CSCONVTEST:
+ case PlSqlParser.SYS_OP_CSR:
+ case PlSqlParser.SYS_OP_CSX_PATCH:
+ case PlSqlParser.SYS_OP_CYCLED_SEQ:
+ case PlSqlParser.SYS_OP_DECOMP:
+ case PlSqlParser.SYS_OP_DESCEND:
+ case PlSqlParser.SYS_OP_DISTINCT:
+ case PlSqlParser.SYS_OP_DRA:
+ case PlSqlParser.SYS_OP_DUMP:
+ case PlSqlParser.SYS_OP_DV_CHECK:
+ case PlSqlParser.SYS_OP_ENFORCE_NOT_NULL:
+ case PlSqlParser.SYSOPER:
+ case PlSqlParser.SYS_OP_EXTRACT:
+ case PlSqlParser.SYS_OP_GROUPING:
+ case PlSqlParser.SYS_OP_GUID:
+ case PlSqlParser.SYS_OP_HASH:
+ case PlSqlParser.SYS_OP_IIX:
+ case PlSqlParser.SYS_OP_ITR:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_CREATE:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_FILTER_LIST:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_FILTER:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_SUCCEEDED:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_USE:
+ case PlSqlParser.SYS_OP_LBID:
+ case PlSqlParser.SYS_OP_LOBLOC2BLOB:
+ case PlSqlParser.SYS_OP_LOBLOC2CLOB:
+ case PlSqlParser.SYS_OP_LOBLOC2ID:
+ case PlSqlParser.SYS_OP_LOBLOC2NCLOB:
+ case PlSqlParser.SYS_OP_LOBLOC2TYP:
+ case PlSqlParser.SYS_OP_LSVI:
+ case PlSqlParser.SYS_OP_LVL:
+ case PlSqlParser.SYS_OP_MAKEOID:
+ case PlSqlParser.SYS_OP_MAP_NONNULL:
+ case PlSqlParser.SYS_OP_MSR:
+ case PlSqlParser.SYS_OP_NICOMBINE:
+ case PlSqlParser.SYS_OP_NIEXTRACT:
+ case PlSqlParser.SYS_OP_NII:
+ case PlSqlParser.SYS_OP_NIX:
+ case PlSqlParser.SYS_OP_NOEXPAND:
+ case PlSqlParser.SYS_OP_NTCIMG:
+ case PlSqlParser.SYS_OP_NUMTORAW:
+ case PlSqlParser.SYS_OP_OIDVALUE:
+ case PlSqlParser.SYS_OP_OPNSIZE:
+ case PlSqlParser.SYS_OP_PAR_1:
+ case PlSqlParser.SYS_OP_PARGID_1:
+ case PlSqlParser.SYS_OP_PARGID:
+ case PlSqlParser.SYS_OP_PAR:
+ case PlSqlParser.SYS_OP_PART_ID:
+ case PlSqlParser.SYS_OP_PIVOT:
+ case PlSqlParser.SYS_OP_R2O:
+ case PlSqlParser.SYS_OP_RAWTONUM:
+ case PlSqlParser.SYS_OP_RDTM:
+ case PlSqlParser.SYS_OP_REF:
+ case PlSqlParser.SYS_OP_RMTD:
+ case PlSqlParser.SYS_OP_ROWIDTOOBJ:
+ case PlSqlParser.SYS_OP_RPB:
+ case PlSqlParser.SYS_OPTLOBPRBSC:
+ case PlSqlParser.SYS_OP_TOSETID:
+ case PlSqlParser.SYS_OP_TPR:
+ case PlSqlParser.SYS_OP_TRTB:
+ case PlSqlParser.SYS_OPTXICMP:
+ case PlSqlParser.SYS_OPTXQCASTASNQ:
+ case PlSqlParser.SYS_OP_UNDESCEND:
+ case PlSqlParser.SYS_OP_VECAND:
+ case PlSqlParser.SYS_OP_VECBIT:
+ case PlSqlParser.SYS_OP_VECOR:
+ case PlSqlParser.SYS_OP_VECXOR:
+ case PlSqlParser.SYS_OP_VERSION:
+ case PlSqlParser.SYS_OP_VREF:
+ case PlSqlParser.SYS_OP_VVD:
+ case PlSqlParser.SYS_OP_XMLCONS_FOR_CSX:
+ case PlSqlParser.SYS_OP_XPTHATG:
+ case PlSqlParser.SYS_OP_XPTHIDX:
+ case PlSqlParser.SYS_OP_XPTHOP:
+ case PlSqlParser.SYS_OP_XTXT2SQLT:
+ case PlSqlParser.SYS_OP_ZONE_ID:
+ case PlSqlParser.SYS_ORDERKEY_DEPTH:
+ case PlSqlParser.SYS_ORDERKEY_MAXCHILD:
+ case PlSqlParser.SYS_ORDERKEY_PARENT:
+ case PlSqlParser.SYS_PARALLEL_TXN:
+ case PlSqlParser.SYS_PATHID_IS_ATTR:
+ case PlSqlParser.SYS_PATHID_IS_NMSPC:
+ case PlSqlParser.SYS_PATHID_LASTNAME:
+ case PlSqlParser.SYS_PATHID_LASTNMSPC:
+ case PlSqlParser.SYS_PATH_REVERSE:
+ case PlSqlParser.SYS_PXQEXTRACT:
+ case PlSqlParser.SYS_RAW_TO_XSID:
+ case PlSqlParser.SYS_RID_ORDER:
+ case PlSqlParser.SYS_ROW_DELTA:
+ case PlSqlParser.SYS_SC_2_XMLT:
+ case PlSqlParser.SYS_SYNRCIREDO:
+ case PlSqlParser.SYSTEM_DEFINED:
+ case PlSqlParser.SYSTEM:
+ case PlSqlParser.SYSTIMESTAMP:
+ case PlSqlParser.SYS_TYPEID:
+ case PlSqlParser.SYS_UMAKEXML:
+ case PlSqlParser.SYS_XMLANALYZE:
+ case PlSqlParser.SYS_XMLCONTAINS:
+ case PlSqlParser.SYS_XMLCONV:
+ case PlSqlParser.SYS_XMLEXNSURI:
+ case PlSqlParser.SYS_XMLGEN:
+ case PlSqlParser.SYS_XMLI_LOC_ISNODE:
+ case PlSqlParser.SYS_XMLI_LOC_ISTEXT:
+ case PlSqlParser.SYS_XMLINSTR:
+ case PlSqlParser.SYS_XMLLOCATOR_GETSVAL:
+ case PlSqlParser.SYS_XMLNODEID_GETCID:
+ case PlSqlParser.SYS_XMLNODEID_GETLOCATOR:
+ case PlSqlParser.SYS_XMLNODEID_GETOKEY:
+ case PlSqlParser.SYS_XMLNODEID_GETPATHID:
+ case PlSqlParser.SYS_XMLNODEID_GETPTRID:
+ case PlSqlParser.SYS_XMLNODEID_GETRID:
+ case PlSqlParser.SYS_XMLNODEID_GETSVAL:
+ case PlSqlParser.SYS_XMLNODEID_GETTID:
+ case PlSqlParser.SYS_XMLNODEID:
+ case PlSqlParser.SYS_XMLT_2_SC:
+ case PlSqlParser.SYS_XMLTRANSLATE:
+ case PlSqlParser.SYS_XMLTYPE2SQL:
+ case PlSqlParser.SYS_XQ_ASQLCNV:
+ case PlSqlParser.SYS_XQ_ATOMCNVCHK:
+ case PlSqlParser.SYS_XQBASEURI:
+ case PlSqlParser.SYS_XQCASTABLEERRH:
+ case PlSqlParser.SYS_XQCODEP2STR:
+ case PlSqlParser.SYS_XQCODEPEQ:
+ case PlSqlParser.SYS_XQCON2SEQ:
+ case PlSqlParser.SYS_XQCONCAT:
+ case PlSqlParser.SYS_XQDELETE:
+ case PlSqlParser.SYS_XQDFLTCOLATION:
+ case PlSqlParser.SYS_XQDOC:
+ case PlSqlParser.SYS_XQDOCURI:
+ case PlSqlParser.SYS_XQDURDIV:
+ case PlSqlParser.SYS_XQED4URI:
+ case PlSqlParser.SYS_XQENDSWITH:
+ case PlSqlParser.SYS_XQERRH:
+ case PlSqlParser.SYS_XQERR:
+ case PlSqlParser.SYS_XQESHTMLURI:
+ case PlSqlParser.SYS_XQEXLOBVAL:
+ case PlSqlParser.SYS_XQEXSTWRP:
+ case PlSqlParser.SYS_XQEXTRACT:
+ case PlSqlParser.SYS_XQEXTRREF:
+ case PlSqlParser.SYS_XQEXVAL:
+ case PlSqlParser.SYS_XQFB2STR:
+ case PlSqlParser.SYS_XQFNBOOL:
+ case PlSqlParser.SYS_XQFNCMP:
+ case PlSqlParser.SYS_XQFNDATIM:
+ case PlSqlParser.SYS_XQFNLNAME:
+ case PlSqlParser.SYS_XQFNNM:
+ case PlSqlParser.SYS_XQFNNSURI:
+ case PlSqlParser.SYS_XQFNPREDTRUTH:
+ case PlSqlParser.SYS_XQFNQNM:
+ case PlSqlParser.SYS_XQFNROOT:
+ case PlSqlParser.SYS_XQFORMATNUM:
+ case PlSqlParser.SYS_XQFTCONTAIN:
+ case PlSqlParser.SYS_XQFUNCR:
+ case PlSqlParser.SYS_XQGETCONTENT:
+ case PlSqlParser.SYS_XQINDXOF:
+ case PlSqlParser.SYS_XQINSERT:
+ case PlSqlParser.SYS_XQINSPFX:
+ case PlSqlParser.SYS_XQIRI2URI:
+ case PlSqlParser.SYS_XQLANG:
+ case PlSqlParser.SYS_XQLLNMFRMQNM:
+ case PlSqlParser.SYS_XQMKNODEREF:
+ case PlSqlParser.SYS_XQNILLED:
+ case PlSqlParser.SYS_XQNODENAME:
+ case PlSqlParser.SYS_XQNORMSPACE:
+ case PlSqlParser.SYS_XQNORMUCODE:
+ case PlSqlParser.SYS_XQ_NRNG:
+ case PlSqlParser.SYS_XQNSP4PFX:
+ case PlSqlParser.SYS_XQNSPFRMQNM:
+ case PlSqlParser.SYS_XQPFXFRMQNM:
+ case PlSqlParser.SYS_XQ_PKSQL2XML:
+ case PlSqlParser.SYS_XQPOLYABS:
+ case PlSqlParser.SYS_XQPOLYADD:
+ case PlSqlParser.SYS_XQPOLYCEL:
+ case PlSqlParser.SYS_XQPOLYCSTBL:
+ case PlSqlParser.SYS_XQPOLYCST:
+ case PlSqlParser.SYS_XQPOLYDIV:
+ case PlSqlParser.SYS_XQPOLYFLR:
+ case PlSqlParser.SYS_XQPOLYMOD:
+ case PlSqlParser.SYS_XQPOLYMUL:
+ case PlSqlParser.SYS_XQPOLYRND:
+ case PlSqlParser.SYS_XQPOLYSQRT:
+ case PlSqlParser.SYS_XQPOLYSUB:
+ case PlSqlParser.SYS_XQPOLYUMUS:
+ case PlSqlParser.SYS_XQPOLYUPLS:
+ case PlSqlParser.SYS_XQPOLYVEQ:
+ case PlSqlParser.SYS_XQPOLYVGE:
+ case PlSqlParser.SYS_XQPOLYVGT:
+ case PlSqlParser.SYS_XQPOLYVLE:
+ case PlSqlParser.SYS_XQPOLYVLT:
+ case PlSqlParser.SYS_XQPOLYVNE:
+ case PlSqlParser.SYS_XQREF2VAL:
+ case PlSqlParser.SYS_XQRENAME:
+ case PlSqlParser.SYS_XQREPLACE:
+ case PlSqlParser.SYS_XQRESVURI:
+ case PlSqlParser.SYS_XQRNDHALF2EVN:
+ case PlSqlParser.SYS_XQRSLVQNM:
+ case PlSqlParser.SYS_XQRYENVPGET:
+ case PlSqlParser.SYS_XQRYVARGET:
+ case PlSqlParser.SYS_XQRYWRP:
+ case PlSqlParser.SYS_XQSEQ2CON4XC:
+ case PlSqlParser.SYS_XQSEQ2CON:
+ case PlSqlParser.SYS_XQSEQDEEPEQ:
+ case PlSqlParser.SYS_XQSEQINSB:
+ case PlSqlParser.SYS_XQSEQRM:
+ case PlSqlParser.SYS_XQSEQRVS:
+ case PlSqlParser.SYS_XQSEQSUB:
+ case PlSqlParser.SYS_XQSEQTYPMATCH:
+ case PlSqlParser.SYS_XQSTARTSWITH:
+ case PlSqlParser.SYS_XQSTATBURI:
+ case PlSqlParser.SYS_XQSTR2CODEP:
+ case PlSqlParser.SYS_XQSTRJOIN:
+ case PlSqlParser.SYS_XQSUBSTRAFT:
+ case PlSqlParser.SYS_XQSUBSTRBEF:
+ case PlSqlParser.SYS_XQTOKENIZE:
+ case PlSqlParser.SYS_XQTREATAS:
+ case PlSqlParser.SYS_XQ_UPKXML2SQL:
+ case PlSqlParser.SYS_XQXFORM:
+ case PlSqlParser.SYS_XSID_TO_RAW:
+ case PlSqlParser.SYS_ZMAP_FILTER:
+ case PlSqlParser.SYS_ZMAP_REFRESH:
+ case PlSqlParser.TABLE_LOOKUP_BY_NL:
+ case PlSqlParser.TABLESPACE_NO:
+ case PlSqlParser.TABLESPACE:
+ case PlSqlParser.TABLES:
+ case PlSqlParser.TABLE_STATS:
+ case PlSqlParser.TABLE:
+ case PlSqlParser.TABNO:
+ case PlSqlParser.TAG:
+ case PlSqlParser.TANH:
+ case PlSqlParser.TAN:
+ case PlSqlParser.TBLORIDXPARTNUM:
+ case PlSqlParser.TEMPFILE:
+ case PlSqlParser.TEMPLATE:
+ case PlSqlParser.TEMPORARY:
+ case PlSqlParser.TEMP_TABLE:
+ case PlSqlParser.TEST:
+ case PlSqlParser.TEXT:
+ case PlSqlParser.THAN:
+ case PlSqlParser.THEN:
+ case PlSqlParser.THE:
+ case PlSqlParser.THREAD:
+ case PlSqlParser.THROUGH:
+ case PlSqlParser.TIER:
+ case PlSqlParser.TIES:
+ case PlSqlParser.TIMEOUT:
+ case PlSqlParser.TIMESTAMP_LTZ_UNCONSTRAINED:
+ case PlSqlParser.TIMESTAMP:
+ case PlSqlParser.TIMESTAMP_TZ_UNCONSTRAINED:
+ case PlSqlParser.TIMESTAMP_UNCONSTRAINED:
+ case PlSqlParser.TIMES:
+ case PlSqlParser.TIME:
+ case PlSqlParser.TIMEZONE_ABBR:
+ case PlSqlParser.TIMEZONE_HOUR:
+ case PlSqlParser.TIMEZONE_MINUTE:
+ case PlSqlParser.TIMEZONE_OFFSET:
+ case PlSqlParser.TIMEZONE_REGION:
+ case PlSqlParser.TIME_ZONE:
+ case PlSqlParser.TIV_GB:
+ case PlSqlParser.TIV_SSF:
+ case PlSqlParser.TO_ACLID:
+ case PlSqlParser.TO_BINARY_DOUBLE:
+ case PlSqlParser.TO_BINARY_FLOAT:
+ case PlSqlParser.TO_BLOB:
+ case PlSqlParser.TO_CLOB:
+ case PlSqlParser.TO_DSINTERVAL:
+ case PlSqlParser.TO_LOB:
+ case PlSqlParser.TO_MULTI_BYTE:
+ case PlSqlParser.TO_NCHAR:
+ case PlSqlParser.TO_NCLOB:
+ case PlSqlParser.TO_NUMBER:
+ case PlSqlParser.TOPLEVEL:
+ case PlSqlParser.TO_SINGLE_BYTE:
+ case PlSqlParser.TO_TIMESTAMP:
+ case PlSqlParser.TO_TIMESTAMP_TZ:
+ case PlSqlParser.TO_TIME:
+ case PlSqlParser.TO_TIME_TZ:
+ case PlSqlParser.TO_YMINTERVAL:
+ case PlSqlParser.TRACE:
+ case PlSqlParser.TRACING:
+ case PlSqlParser.TRACKING:
+ case PlSqlParser.TRAILING:
+ case PlSqlParser.TRANSACTION:
+ case PlSqlParser.TRANSFORM_DISTINCT_AGG:
+ case PlSqlParser.TRANSITIONAL:
+ case PlSqlParser.TRANSITION:
+ case PlSqlParser.TRANSLATE:
+ case PlSqlParser.TRANSLATION:
+ case PlSqlParser.TREAT:
+ case PlSqlParser.TRIGGERS:
+ case PlSqlParser.TRIGGER:
+ case PlSqlParser.TRUE:
+ case PlSqlParser.TRUNCATE:
+ case PlSqlParser.TRUNC:
+ case PlSqlParser.TRUSTED:
+ case PlSqlParser.TRUST:
+ case PlSqlParser.TUNING:
+ case PlSqlParser.TX:
+ case PlSqlParser.TYPES:
+ case PlSqlParser.TYPE:
+ case PlSqlParser.TZ_OFFSET:
+ case PlSqlParser.UB2:
+ case PlSqlParser.UBA:
+ case PlSqlParser.UCS2:
+ case PlSqlParser.UID:
+ case PlSqlParser.UNARCHIVED:
+ case PlSqlParser.UNBOUNDED:
+ case PlSqlParser.UNBOUND:
+ case PlSqlParser.UNCONDITIONAL:
+ case PlSqlParser.UNDER:
+ case PlSqlParser.UNDO:
+ case PlSqlParser.UNDROP:
+ case PlSqlParser.UNIFORM:
+ case PlSqlParser.UNISTR:
+ case PlSqlParser.UNLIMITED:
+ case PlSqlParser.UNLOAD:
+ case PlSqlParser.UNLOCK:
+ case PlSqlParser.UNMATCHED:
+ case PlSqlParser.UNNEST_INNERJ_DISTINCT_VIEW:
+ case PlSqlParser.UNNEST_NOSEMIJ_NODISTINCTVIEW:
+ case PlSqlParser.UNNEST_SEMIJ_VIEW:
+ case PlSqlParser.UNNEST:
+ case PlSqlParser.UNPACKED:
+ case PlSqlParser.UNPIVOT:
+ case PlSqlParser.UNPLUG:
+ case PlSqlParser.UNPROTECTED:
+ case PlSqlParser.UNQUIESCE:
+ case PlSqlParser.UNRECOVERABLE:
+ case PlSqlParser.UNRESTRICTED:
+ case PlSqlParser.UNSUBSCRIBE:
+ case PlSqlParser.UNTIL:
+ case PlSqlParser.UNUSABLE:
+ case PlSqlParser.UNUSED:
+ case PlSqlParser.UPDATABLE:
+ case PlSqlParser.UPDATED:
+ case PlSqlParser.UPDATEXML:
+ case PlSqlParser.UPD_INDEXES:
+ case PlSqlParser.UPD_JOININDEX:
+ case PlSqlParser.UPGRADE:
+ case PlSqlParser.UPPER:
+ case PlSqlParser.UPSERT:
+ case PlSqlParser.UROWID:
+ case PlSqlParser.USABLE:
+ case PlSqlParser.USAGE:
+ case PlSqlParser.USE_ANTI:
+ case PlSqlParser.USE_CONCAT:
+ case PlSqlParser.USE_CUBE:
+ case PlSqlParser.USE_HASH_AGGREGATION:
+ case PlSqlParser.USE_HASH_GBY_FOR_PUSHDOWN:
+ case PlSqlParser.USE_HASH:
+ case PlSqlParser.USE_HIDDEN_PARTITIONS:
+ case PlSqlParser.USE_INVISIBLE_INDEXES:
+ case PlSqlParser.USE_MERGE_CARTESIAN:
+ case PlSqlParser.USE_MERGE:
+ case PlSqlParser.USE_NL:
+ case PlSqlParser.USE_NL_WITH_INDEX:
+ case PlSqlParser.USE_PRIVATE_OUTLINES:
+ case PlSqlParser.USER_DATA:
+ case PlSqlParser.USER_DEFINED:
+ case PlSqlParser.USERENV:
+ case PlSqlParser.USERGROUP:
+ case PlSqlParser.USER_RECYCLEBIN:
+ case PlSqlParser.USERS:
+ case PlSqlParser.USER_TABLESPACES:
+ case PlSqlParser.USER:
+ case PlSqlParser.USE_SEMI:
+ case PlSqlParser.USE_STORED_OUTLINES:
+ case PlSqlParser.USE_TTT_FOR_GSETS:
+ case PlSqlParser.USE:
+ case PlSqlParser.USE_VECTOR_AGGREGATION:
+ case PlSqlParser.USE_WEAK_NAME_RESL:
+ case PlSqlParser.USING_NO_EXPAND:
+ case PlSqlParser.USING:
+ case PlSqlParser.UTF16BE:
+ case PlSqlParser.UTF16LE:
+ case PlSqlParser.UTF32:
+ case PlSqlParser.UTF8:
+ case PlSqlParser.V1:
+ case PlSqlParser.V2:
+ case PlSqlParser.VALIDATE:
+ case PlSqlParser.VALIDATION:
+ case PlSqlParser.VALID_TIME_END:
+ case PlSqlParser.VALUE:
+ case PlSqlParser.VARCHAR2:
+ case PlSqlParser.VARCHAR:
+ case PlSqlParser.VARIABLE:
+ case PlSqlParser.VAR_POP:
+ case PlSqlParser.VARRAYS:
+ case PlSqlParser.VARRAY:
+ case PlSqlParser.VAR_SAMP:
+ case PlSqlParser.VARYING:
+ case PlSqlParser.VECTOR_READ_TRACE:
+ case PlSqlParser.VECTOR_READ:
+ case PlSqlParser.VECTOR_TRANSFORM_DIMS:
+ case PlSqlParser.VECTOR_TRANSFORM_FACT:
+ case PlSqlParser.VECTOR_TRANSFORM:
+ case PlSqlParser.VERIFIER:
+ case PlSqlParser.VERIFY:
+ case PlSqlParser.VERSIONING:
+ case PlSqlParser.VERSIONS_ENDSCN:
+ case PlSqlParser.VERSIONS_ENDTIME:
+ case PlSqlParser.VERSIONS_OPERATION:
+ case PlSqlParser.VERSIONS_STARTSCN:
+ case PlSqlParser.VERSIONS_STARTTIME:
+ case PlSqlParser.VERSIONS:
+ case PlSqlParser.VERSIONS_XID:
+ case PlSqlParser.VERSION:
+ case PlSqlParser.VIOLATION:
+ case PlSqlParser.VIRTUAL:
+ case PlSqlParser.VISIBILITY:
+ case PlSqlParser.VISIBLE:
+ case PlSqlParser.VOLUME:
+ case PlSqlParser.VSIZE:
+ case PlSqlParser.WAIT:
+ case PlSqlParser.WALLET:
+ case PlSqlParser.WARNING:
+ case PlSqlParser.WEEKS:
+ case PlSqlParser.WEEK:
+ case PlSqlParser.WELLFORMED:
+ case PlSqlParser.WHENEVER:
+ case PlSqlParser.WHEN:
+ case PlSqlParser.WHILE:
+ case PlSqlParser.WHITESPACE:
+ case PlSqlParser.WIDTH_BUCKET:
+ case PlSqlParser.WITHIN:
+ case PlSqlParser.WITHOUT:
+ case PlSqlParser.WITH_PLSQL:
+ case PlSqlParser.WORK:
+ case PlSqlParser.WRAPPED:
+ case PlSqlParser.WRAPPER:
+ case PlSqlParser.WRITE:
+ case PlSqlParser.XDB_FASTPATH_INSERT:
+ case PlSqlParser.X_DYN_PRUNE:
+ case PlSqlParser.XID:
+ case PlSqlParser.XML2OBJECT:
+ case PlSqlParser.XMLAGG:
+ case PlSqlParser.XMLATTRIBUTES:
+ case PlSqlParser.XMLCAST:
+ case PlSqlParser.XMLCDATA:
+ case PlSqlParser.XMLCOLATTVAL:
+ case PlSqlParser.XMLCOMMENT:
+ case PlSqlParser.XMLCONCAT:
+ case PlSqlParser.XMLDIFF:
+ case PlSqlParser.XML_DML_RWT_STMT:
+ case PlSqlParser.XMLELEMENT:
+ case PlSqlParser.XMLEXISTS2:
+ case PlSqlParser.XMLEXISTS:
+ case PlSqlParser.XMLFOREST:
+ case PlSqlParser.XMLINDEX_REWRITE_IN_SELECT:
+ case PlSqlParser.XMLINDEX_REWRITE:
+ case PlSqlParser.XMLINDEX_SEL_IDX_TBL:
+ case PlSqlParser.XMLISNODE:
+ case PlSqlParser.XMLISVALID:
+ case PlSqlParser.XMLNAMESPACES:
+ case PlSqlParser.XMLPARSE:
+ case PlSqlParser.XMLPATCH:
+ case PlSqlParser.XMLPI:
+ case PlSqlParser.XMLQUERYVAL:
+ case PlSqlParser.XMLQUERY:
+ case PlSqlParser.XMLROOT:
+ case PlSqlParser.XMLSCHEMA:
+ case PlSqlParser.XMLSERIALIZE:
+ case PlSqlParser.XMLTABLE:
+ case PlSqlParser.XMLTRANSFORMBLOB:
+ case PlSqlParser.XMLTRANSFORM:
+ case PlSqlParser.XMLTYPE:
+ case PlSqlParser.XML:
+ case PlSqlParser.XPATHTABLE:
+ case PlSqlParser.XS_SYS_CONTEXT:
+ case PlSqlParser.XS:
+ case PlSqlParser.YEARS:
+ case PlSqlParser.YEAR:
+ case PlSqlParser.YES:
+ case PlSqlParser.YMINTERVAL_UNCONSTRAINED:
+ case PlSqlParser.ZONEMAP:
+ case PlSqlParser.ZONE:
+ case PlSqlParser.PREDICTION:
+ case PlSqlParser.PREDICTION_BOUNDS:
+ case PlSqlParser.PREDICTION_COST:
+ case PlSqlParser.PREDICTION_DETAILS:
+ case PlSqlParser.PREDICTION_PROBABILITY:
+ case PlSqlParser.PREDICTION_SET:
+ case PlSqlParser.CUME_DIST:
+ case PlSqlParser.DENSE_RANK:
+ case PlSqlParser.LISTAGG:
+ case PlSqlParser.PERCENT_RANK:
+ case PlSqlParser.PERCENTILE_CONT:
+ case PlSqlParser.PERCENTILE_DISC:
+ case PlSqlParser.RANK:
+ case PlSqlParser.AVG:
+ case PlSqlParser.CORR:
+ case PlSqlParser.COVAR_:
+ case PlSqlParser.LAG:
+ case PlSqlParser.LEAD:
+ case PlSqlParser.MAX:
+ case PlSqlParser.MEDIAN:
+ case PlSqlParser.MIN:
+ case PlSqlParser.NTILE:
+ case PlSqlParser.NVL:
+ case PlSqlParser.RATIO_TO_REPORT:
+ case PlSqlParser.REGR_:
+ case PlSqlParser.ROUND:
+ case PlSqlParser.ROW_NUMBER:
+ case PlSqlParser.SUBSTR:
+ case PlSqlParser.TO_CHAR:
+ case PlSqlParser.TRIM:
+ case PlSqlParser.SUM:
+ case PlSqlParser.STDDEV:
+ case PlSqlParser.VAR_:
+ case PlSqlParser.VARIANCE:
+ case PlSqlParser.LEAST:
+ case PlSqlParser.GREATEST:
+ case PlSqlParser.TO_DATE:
+ case PlSqlParser.PERIOD:
+ case PlSqlParser.REGULAR_ID:
+ this.state = 4646;
+ this.tablespace_group_name();
+ break;
+ case PlSqlParser.CHAR_STRING:
+ this.state = 4647;
+ this.match(PlSqlParser.CHAR_STRING);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Tablespace_group_nameContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_tablespace_group_name;
+ return this;
+}
+
+Tablespace_group_nameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Tablespace_group_nameContext.prototype.constructor = Tablespace_group_nameContext;
+
+Tablespace_group_nameContext.prototype.regular_id = function() {
+ return this.getTypedRuleContext(Regular_idContext,0);
+};
+
+Tablespace_group_nameContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterTablespace_group_name(this);
+ }
+};
+
+Tablespace_group_nameContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitTablespace_group_name(this);
+ }
+};
+
+Tablespace_group_nameContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitTablespace_group_name(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Tablespace_group_nameContext = Tablespace_group_nameContext;
+
+PlSqlParser.prototype.tablespace_group_name = function() {
+
+ var localctx = new Tablespace_group_nameContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 434, PlSqlParser.RULE_tablespace_group_name);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4650;
+ this.regular_id();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Tablespace_state_clausesContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_tablespace_state_clauses;
+ return this;
+}
+
+Tablespace_state_clausesContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Tablespace_state_clausesContext.prototype.constructor = Tablespace_state_clausesContext;
+
+Tablespace_state_clausesContext.prototype.ONLINE = function() {
+ return this.getToken(PlSqlParser.ONLINE, 0);
+};
+
+Tablespace_state_clausesContext.prototype.OFFLINE = function() {
+ return this.getToken(PlSqlParser.OFFLINE, 0);
+};
+
+Tablespace_state_clausesContext.prototype.NORMAL = function() {
+ return this.getToken(PlSqlParser.NORMAL, 0);
+};
+
+Tablespace_state_clausesContext.prototype.TEMPORARY = function() {
+ return this.getToken(PlSqlParser.TEMPORARY, 0);
+};
+
+Tablespace_state_clausesContext.prototype.IMMEDIATE = function() {
+ return this.getToken(PlSqlParser.IMMEDIATE, 0);
+};
+
+Tablespace_state_clausesContext.prototype.READ = function() {
+ return this.getToken(PlSqlParser.READ, 0);
+};
+
+Tablespace_state_clausesContext.prototype.ONLY = function() {
+ return this.getToken(PlSqlParser.ONLY, 0);
+};
+
+Tablespace_state_clausesContext.prototype.WRITE = function() {
+ return this.getToken(PlSqlParser.WRITE, 0);
+};
+
+Tablespace_state_clausesContext.prototype.PERMANENT = function() {
+ return this.getToken(PlSqlParser.PERMANENT, 0);
+};
+
+Tablespace_state_clausesContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterTablespace_state_clauses(this);
+ }
+};
+
+Tablespace_state_clausesContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitTablespace_state_clauses(this);
+ }
+};
+
+Tablespace_state_clausesContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitTablespace_state_clauses(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Tablespace_state_clausesContext = Tablespace_state_clausesContext;
+
+PlSqlParser.prototype.tablespace_state_clauses = function() {
+
+ var localctx = new Tablespace_state_clausesContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 436, PlSqlParser.RULE_tablespace_state_clauses);
+ var _la = 0; // Token type
+ try {
+ this.state = 4661;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.ONLINE:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4652;
+ this.match(PlSqlParser.ONLINE);
+ break;
+ case PlSqlParser.OFFLINE:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 4653;
+ this.match(PlSqlParser.OFFLINE);
+ this.state = 4655;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.IMMEDIATE || _la===PlSqlParser.NORMAL || _la===PlSqlParser.TEMPORARY) {
+ this.state = 4654;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.IMMEDIATE || _la===PlSqlParser.NORMAL || _la===PlSqlParser.TEMPORARY)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ break;
+ case PlSqlParser.READ:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 4657;
+ this.match(PlSqlParser.READ);
+ this.state = 4658;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.ONLY || _la===PlSqlParser.WRITE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+ case PlSqlParser.PERMANENT:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 4659;
+ this.match(PlSqlParser.PERMANENT);
+ break;
+ case PlSqlParser.TEMPORARY:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 4660;
+ this.match(PlSqlParser.TEMPORARY);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Flashback_mode_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_flashback_mode_clause;
+ return this;
+}
+
+Flashback_mode_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Flashback_mode_clauseContext.prototype.constructor = Flashback_mode_clauseContext;
+
+Flashback_mode_clauseContext.prototype.FLASHBACK = function() {
+ return this.getToken(PlSqlParser.FLASHBACK, 0);
+};
+
+Flashback_mode_clauseContext.prototype.ON = function() {
+ return this.getToken(PlSqlParser.ON, 0);
+};
+
+Flashback_mode_clauseContext.prototype.OFF = function() {
+ return this.getToken(PlSqlParser.OFF, 0);
+};
+
+Flashback_mode_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterFlashback_mode_clause(this);
+ }
+};
+
+Flashback_mode_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitFlashback_mode_clause(this);
+ }
+};
+
+Flashback_mode_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitFlashback_mode_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Flashback_mode_clauseContext = Flashback_mode_clauseContext;
+
+PlSqlParser.prototype.flashback_mode_clause = function() {
+
+ var localctx = new Flashback_mode_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 438, PlSqlParser.RULE_flashback_mode_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4663;
+ this.match(PlSqlParser.FLASHBACK);
+ this.state = 4664;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.OFF || _la===PlSqlParser.ON)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function New_tablespace_nameContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_new_tablespace_name;
+ return this;
+}
+
+New_tablespace_nameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+New_tablespace_nameContext.prototype.constructor = New_tablespace_nameContext;
+
+New_tablespace_nameContext.prototype.tablespace = function() {
+ return this.getTypedRuleContext(TablespaceContext,0);
+};
+
+New_tablespace_nameContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterNew_tablespace_name(this);
+ }
+};
+
+New_tablespace_nameContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitNew_tablespace_name(this);
+ }
+};
+
+New_tablespace_nameContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitNew_tablespace_name(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.New_tablespace_nameContext = New_tablespace_nameContext;
+
+PlSqlParser.prototype.new_tablespace_name = function() {
+
+ var localctx = new New_tablespace_nameContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 440, PlSqlParser.RULE_new_tablespace_name);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4666;
+ this.tablespace();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_tablespaceContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_create_tablespace;
+ return this;
+}
+
+Create_tablespaceContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_tablespaceContext.prototype.constructor = Create_tablespaceContext;
+
+Create_tablespaceContext.prototype.CREATE = function() {
+ return this.getToken(PlSqlParser.CREATE, 0);
+};
+
+Create_tablespaceContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Create_tablespaceContext.prototype.permanent_tablespace_clause = function() {
+ return this.getTypedRuleContext(Permanent_tablespace_clauseContext,0);
+};
+
+Create_tablespaceContext.prototype.temporary_tablespace_clause = function() {
+ return this.getTypedRuleContext(Temporary_tablespace_clauseContext,0);
+};
+
+Create_tablespaceContext.prototype.undo_tablespace_clause = function() {
+ return this.getTypedRuleContext(Undo_tablespace_clauseContext,0);
+};
+
+Create_tablespaceContext.prototype.BIGFILE = function() {
+ return this.getToken(PlSqlParser.BIGFILE, 0);
+};
+
+Create_tablespaceContext.prototype.SMALLFILE = function() {
+ return this.getToken(PlSqlParser.SMALLFILE, 0);
+};
+
+Create_tablespaceContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterCreate_tablespace(this);
+ }
+};
+
+Create_tablespaceContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitCreate_tablespace(this);
+ }
+};
+
+Create_tablespaceContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitCreate_tablespace(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Create_tablespaceContext = Create_tablespaceContext;
+
+PlSqlParser.prototype.create_tablespace = function() {
+
+ var localctx = new Create_tablespaceContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 442, PlSqlParser.RULE_create_tablespace);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4668;
+ this.match(PlSqlParser.CREATE);
+ this.state = 4670;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.BIGFILE || _la===PlSqlParser.SMALLFILE) {
+ this.state = 4669;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.BIGFILE || _la===PlSqlParser.SMALLFILE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 4675;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.TABLESPACE:
+ this.state = 4672;
+ this.permanent_tablespace_clause();
+ break;
+ case PlSqlParser.TEMPORARY:
+ this.state = 4673;
+ this.temporary_tablespace_clause();
+ break;
+ case PlSqlParser.UNDO:
+ this.state = 4674;
+ this.undo_tablespace_clause();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 4677;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Permanent_tablespace_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_permanent_tablespace_clause;
+ return this;
+}
+
+Permanent_tablespace_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Permanent_tablespace_clauseContext.prototype.constructor = Permanent_tablespace_clauseContext;
+
+Permanent_tablespace_clauseContext.prototype.TABLESPACE = function() {
+ return this.getToken(PlSqlParser.TABLESPACE, 0);
+};
+
+Permanent_tablespace_clauseContext.prototype.id_expression = function() {
+ return this.getTypedRuleContext(Id_expressionContext,0);
+};
+
+Permanent_tablespace_clauseContext.prototype.datafile_specification = function() {
+ return this.getTypedRuleContext(Datafile_specificationContext,0);
+};
+
+Permanent_tablespace_clauseContext.prototype.MINIMUM = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.MINIMUM);
+ } else {
+ return this.getToken(PlSqlParser.MINIMUM, i);
+ }
+};
+
+
+Permanent_tablespace_clauseContext.prototype.EXTENT = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.EXTENT);
+ } else {
+ return this.getToken(PlSqlParser.EXTENT, i);
+ }
+};
+
+
+Permanent_tablespace_clauseContext.prototype.size_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Size_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Size_clauseContext,i);
+ }
+};
+
+Permanent_tablespace_clauseContext.prototype.BLOCKSIZE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.BLOCKSIZE);
+ } else {
+ return this.getToken(PlSqlParser.BLOCKSIZE, i);
+ }
+};
+
+
+Permanent_tablespace_clauseContext.prototype.logging_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Logging_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Logging_clauseContext,i);
+ }
+};
+
+Permanent_tablespace_clauseContext.prototype.FORCE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.FORCE);
+ } else {
+ return this.getToken(PlSqlParser.FORCE, i);
+ }
+};
+
+
+Permanent_tablespace_clauseContext.prototype.LOGGING = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.LOGGING);
+ } else {
+ return this.getToken(PlSqlParser.LOGGING, i);
+ }
+};
+
+
+Permanent_tablespace_clauseContext.prototype.ENCRYPTION = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.ENCRYPTION);
+ } else {
+ return this.getToken(PlSqlParser.ENCRYPTION, i);
+ }
+};
+
+
+Permanent_tablespace_clauseContext.prototype.tablespace_encryption_spec = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Tablespace_encryption_specContext);
+ } else {
+ return this.getTypedRuleContext(Tablespace_encryption_specContext,i);
+ }
+};
+
+Permanent_tablespace_clauseContext.prototype.DEFAULT = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.DEFAULT);
+ } else {
+ return this.getToken(PlSqlParser.DEFAULT, i);
+ }
+};
+
+
+Permanent_tablespace_clauseContext.prototype.extent_management_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Extent_management_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Extent_management_clauseContext,i);
+ }
+};
+
+Permanent_tablespace_clauseContext.prototype.segment_management_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Segment_management_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Segment_management_clauseContext,i);
+ }
+};
+
+Permanent_tablespace_clauseContext.prototype.flashback_mode_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Flashback_mode_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Flashback_mode_clauseContext,i);
+ }
+};
+
+Permanent_tablespace_clauseContext.prototype.ONLINE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.ONLINE);
+ } else {
+ return this.getToken(PlSqlParser.ONLINE, i);
+ }
+};
+
+
+Permanent_tablespace_clauseContext.prototype.OFFLINE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.OFFLINE);
+ } else {
+ return this.getToken(PlSqlParser.OFFLINE, i);
+ }
+};
+
+
+Permanent_tablespace_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterPermanent_tablespace_clause(this);
+ }
+};
+
+Permanent_tablespace_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitPermanent_tablespace_clause(this);
+ }
+};
+
+Permanent_tablespace_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitPermanent_tablespace_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Permanent_tablespace_clauseContext = Permanent_tablespace_clauseContext;
+
+PlSqlParser.prototype.permanent_tablespace_clause = function() {
+
+ var localctx = new Permanent_tablespace_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 444, PlSqlParser.RULE_permanent_tablespace_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4679;
+ this.match(PlSqlParser.TABLESPACE);
+ this.state = 4680;
+ this.id_expression();
+ this.state = 4682;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.DATAFILE) {
+ this.state = 4681;
+ this.datafile_specification();
+ }
+
+ this.state = 4701;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.BLOCKSIZE || _la===PlSqlParser.DEFAULT || _la===PlSqlParser.ENCRYPTION || _la===PlSqlParser.EXTENT || _la===PlSqlParser.FILESYSTEM_LIKE_LOGGING || _la===PlSqlParser.FLASHBACK || _la===PlSqlParser.FORCE || _la===PlSqlParser.LOGGING || _la===PlSqlParser.MINIMUM || _la===PlSqlParser.NOLOGGING || _la===PlSqlParser.OFFLINE || _la===PlSqlParser.ONLINE || _la===PlSqlParser.SEGMENT) {
+ this.state = 4699;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.MINIMUM:
+ this.state = 4684;
+ this.match(PlSqlParser.MINIMUM);
+ this.state = 4685;
+ this.match(PlSqlParser.EXTENT);
+ this.state = 4686;
+ this.size_clause();
+ break;
+ case PlSqlParser.BLOCKSIZE:
+ this.state = 4687;
+ this.match(PlSqlParser.BLOCKSIZE);
+ this.state = 4688;
+ this.size_clause();
+ break;
+ case PlSqlParser.FILESYSTEM_LIKE_LOGGING:
+ case PlSqlParser.LOGGING:
+ case PlSqlParser.NOLOGGING:
+ this.state = 4689;
+ this.logging_clause();
+ break;
+ case PlSqlParser.FORCE:
+ this.state = 4690;
+ this.match(PlSqlParser.FORCE);
+ this.state = 4691;
+ this.match(PlSqlParser.LOGGING);
+ break;
+ case PlSqlParser.OFFLINE:
+ case PlSqlParser.ONLINE:
+ this.state = 4692;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.OFFLINE || _la===PlSqlParser.ONLINE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+ case PlSqlParser.ENCRYPTION:
+ this.state = 4693;
+ this.match(PlSqlParser.ENCRYPTION);
+ this.state = 4694;
+ this.tablespace_encryption_spec();
+ break;
+ case PlSqlParser.DEFAULT:
+ this.state = 4695;
+ this.match(PlSqlParser.DEFAULT);
+ break;
+ case PlSqlParser.EXTENT:
+ this.state = 4696;
+ this.extent_management_clause();
+ break;
+ case PlSqlParser.SEGMENT:
+ this.state = 4697;
+ this.segment_management_clause();
+ break;
+ case PlSqlParser.FLASHBACK:
+ this.state = 4698;
+ this.flashback_mode_clause();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 4703;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Tablespace_encryption_specContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_tablespace_encryption_spec;
+ this.encrypt_algorithm = null; // Token
+ return this;
+}
+
+Tablespace_encryption_specContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Tablespace_encryption_specContext.prototype.constructor = Tablespace_encryption_specContext;
+
+Tablespace_encryption_specContext.prototype.USING = function() {
+ return this.getToken(PlSqlParser.USING, 0);
+};
+
+Tablespace_encryption_specContext.prototype.CHAR_STRING = function() {
+ return this.getToken(PlSqlParser.CHAR_STRING, 0);
+};
+
+Tablespace_encryption_specContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterTablespace_encryption_spec(this);
+ }
+};
+
+Tablespace_encryption_specContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitTablespace_encryption_spec(this);
+ }
+};
+
+Tablespace_encryption_specContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitTablespace_encryption_spec(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Tablespace_encryption_specContext = Tablespace_encryption_specContext;
+
+PlSqlParser.prototype.tablespace_encryption_spec = function() {
+
+ var localctx = new Tablespace_encryption_specContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 446, PlSqlParser.RULE_tablespace_encryption_spec);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4704;
+ this.match(PlSqlParser.USING);
+ this.state = 4705;
+ localctx.encrypt_algorithm = this.match(PlSqlParser.CHAR_STRING);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Logging_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_logging_clause;
+ return this;
+}
+
+Logging_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Logging_clauseContext.prototype.constructor = Logging_clauseContext;
+
+Logging_clauseContext.prototype.LOGGING = function() {
+ return this.getToken(PlSqlParser.LOGGING, 0);
+};
+
+Logging_clauseContext.prototype.NOLOGGING = function() {
+ return this.getToken(PlSqlParser.NOLOGGING, 0);
+};
+
+Logging_clauseContext.prototype.FILESYSTEM_LIKE_LOGGING = function() {
+ return this.getToken(PlSqlParser.FILESYSTEM_LIKE_LOGGING, 0);
+};
+
+Logging_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterLogging_clause(this);
+ }
+};
+
+Logging_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitLogging_clause(this);
+ }
+};
+
+Logging_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitLogging_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Logging_clauseContext = Logging_clauseContext;
+
+PlSqlParser.prototype.logging_clause = function() {
+
+ var localctx = new Logging_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 448, PlSqlParser.RULE_logging_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4707;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.FILESYSTEM_LIKE_LOGGING || _la===PlSqlParser.LOGGING || _la===PlSqlParser.NOLOGGING)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Extent_management_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_extent_management_clause;
+ return this;
+}
+
+Extent_management_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Extent_management_clauseContext.prototype.constructor = Extent_management_clauseContext;
+
+Extent_management_clauseContext.prototype.EXTENT = function() {
+ return this.getToken(PlSqlParser.EXTENT, 0);
+};
+
+Extent_management_clauseContext.prototype.MANAGEMENT = function() {
+ return this.getToken(PlSqlParser.MANAGEMENT, 0);
+};
+
+Extent_management_clauseContext.prototype.LOCAL = function() {
+ return this.getToken(PlSqlParser.LOCAL, 0);
+};
+
+Extent_management_clauseContext.prototype.AUTOALLOCATE = function() {
+ return this.getToken(PlSqlParser.AUTOALLOCATE, 0);
+};
+
+Extent_management_clauseContext.prototype.UNIFORM = function() {
+ return this.getToken(PlSqlParser.UNIFORM, 0);
+};
+
+Extent_management_clauseContext.prototype.SIZE = function() {
+ return this.getToken(PlSqlParser.SIZE, 0);
+};
+
+Extent_management_clauseContext.prototype.size_clause = function() {
+ return this.getTypedRuleContext(Size_clauseContext,0);
+};
+
+Extent_management_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterExtent_management_clause(this);
+ }
+};
+
+Extent_management_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitExtent_management_clause(this);
+ }
+};
+
+Extent_management_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitExtent_management_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Extent_management_clauseContext = Extent_management_clauseContext;
+
+PlSqlParser.prototype.extent_management_clause = function() {
+
+ var localctx = new Extent_management_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 450, PlSqlParser.RULE_extent_management_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4709;
+ this.match(PlSqlParser.EXTENT);
+ this.state = 4710;
+ this.match(PlSqlParser.MANAGEMENT);
+ this.state = 4711;
+ this.match(PlSqlParser.LOCAL);
+ this.state = 4718;
+ this._errHandler.sync(this);
+ switch (this._input.LA(1)) {
+ case PlSqlParser.AUTOALLOCATE:
+ this.state = 4712;
+ this.match(PlSqlParser.AUTOALLOCATE);
+ break;
+ case PlSqlParser.UNIFORM:
+ this.state = 4713;
+ this.match(PlSqlParser.UNIFORM);
+ this.state = 4716;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.SIZE) {
+ this.state = 4714;
+ this.match(PlSqlParser.SIZE);
+ this.state = 4715;
+ this.size_clause();
+ }
+
+ break;
+ case PlSqlParser.BLOCKSIZE:
+ case PlSqlParser.DEFAULT:
+ case PlSqlParser.ENCRYPTION:
+ case PlSqlParser.EXTENT:
+ case PlSqlParser.FILESYSTEM_LIKE_LOGGING:
+ case PlSqlParser.FLASHBACK:
+ case PlSqlParser.FORCE:
+ case PlSqlParser.LOGGING:
+ case PlSqlParser.MINIMUM:
+ case PlSqlParser.NOLOGGING:
+ case PlSqlParser.OFFLINE:
+ case PlSqlParser.ONLINE:
+ case PlSqlParser.RETENTION:
+ case PlSqlParser.SEGMENT:
+ case PlSqlParser.SEMICOLON:
+ break;
+ default:
+ break;
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Segment_management_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_segment_management_clause;
+ return this;
+}
+
+Segment_management_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Segment_management_clauseContext.prototype.constructor = Segment_management_clauseContext;
+
+Segment_management_clauseContext.prototype.SEGMENT = function() {
+ return this.getToken(PlSqlParser.SEGMENT, 0);
+};
+
+Segment_management_clauseContext.prototype.SPACE_KEYWORD = function() {
+ return this.getToken(PlSqlParser.SPACE_KEYWORD, 0);
+};
+
+Segment_management_clauseContext.prototype.MANAGEMENT = function() {
+ return this.getToken(PlSqlParser.MANAGEMENT, 0);
+};
+
+Segment_management_clauseContext.prototype.AUTO = function() {
+ return this.getToken(PlSqlParser.AUTO, 0);
+};
+
+Segment_management_clauseContext.prototype.MANUAL = function() {
+ return this.getToken(PlSqlParser.MANUAL, 0);
+};
+
+Segment_management_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterSegment_management_clause(this);
+ }
+};
+
+Segment_management_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitSegment_management_clause(this);
+ }
+};
+
+Segment_management_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitSegment_management_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Segment_management_clauseContext = Segment_management_clauseContext;
+
+PlSqlParser.prototype.segment_management_clause = function() {
+
+ var localctx = new Segment_management_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 452, PlSqlParser.RULE_segment_management_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4720;
+ this.match(PlSqlParser.SEGMENT);
+ this.state = 4721;
+ this.match(PlSqlParser.SPACE_KEYWORD);
+ this.state = 4722;
+ this.match(PlSqlParser.MANAGEMENT);
+ this.state = 4723;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.AUTO || _la===PlSqlParser.MANUAL)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Temporary_tablespace_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_temporary_tablespace_clause;
+ this.tablespace_name = null; // Id_expressionContext
+ return this;
+}
+
+Temporary_tablespace_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Temporary_tablespace_clauseContext.prototype.constructor = Temporary_tablespace_clauseContext;
+
+Temporary_tablespace_clauseContext.prototype.TEMPORARY = function() {
+ return this.getToken(PlSqlParser.TEMPORARY, 0);
+};
+
+Temporary_tablespace_clauseContext.prototype.TABLESPACE = function() {
+ return this.getToken(PlSqlParser.TABLESPACE, 0);
+};
+
+Temporary_tablespace_clauseContext.prototype.id_expression = function() {
+ return this.getTypedRuleContext(Id_expressionContext,0);
+};
+
+Temporary_tablespace_clauseContext.prototype.tempfile_specification = function() {
+ return this.getTypedRuleContext(Tempfile_specificationContext,0);
+};
+
+Temporary_tablespace_clauseContext.prototype.tablespace_group_clause = function() {
+ return this.getTypedRuleContext(Tablespace_group_clauseContext,0);
+};
+
+Temporary_tablespace_clauseContext.prototype.extent_management_clause = function() {
+ return this.getTypedRuleContext(Extent_management_clauseContext,0);
+};
+
+Temporary_tablespace_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterTemporary_tablespace_clause(this);
+ }
+};
+
+Temporary_tablespace_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitTemporary_tablespace_clause(this);
+ }
+};
+
+Temporary_tablespace_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitTemporary_tablespace_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Temporary_tablespace_clauseContext = Temporary_tablespace_clauseContext;
+
+PlSqlParser.prototype.temporary_tablespace_clause = function() {
+
+ var localctx = new Temporary_tablespace_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 454, PlSqlParser.RULE_temporary_tablespace_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4725;
+ this.match(PlSqlParser.TEMPORARY);
+ this.state = 4726;
+ this.match(PlSqlParser.TABLESPACE);
+ this.state = 4727;
+ localctx.tablespace_name = this.id_expression();
+ this.state = 4729;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.TEMPFILE) {
+ this.state = 4728;
+ this.tempfile_specification();
+ }
+
+ this.state = 4732;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.TABLESPACE) {
+ this.state = 4731;
+ this.tablespace_group_clause();
+ }
+
+ this.state = 4735;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.EXTENT) {
+ this.state = 4734;
+ this.extent_management_clause();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Undo_tablespace_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_undo_tablespace_clause;
+ this.tablespace_name = null; // Id_expressionContext
+ return this;
+}
+
+Undo_tablespace_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Undo_tablespace_clauseContext.prototype.constructor = Undo_tablespace_clauseContext;
+
+Undo_tablespace_clauseContext.prototype.UNDO = function() {
+ return this.getToken(PlSqlParser.UNDO, 0);
+};
+
+Undo_tablespace_clauseContext.prototype.TABLESPACE = function() {
+ return this.getToken(PlSqlParser.TABLESPACE, 0);
+};
+
+Undo_tablespace_clauseContext.prototype.id_expression = function() {
+ return this.getTypedRuleContext(Id_expressionContext,0);
+};
+
+Undo_tablespace_clauseContext.prototype.datafile_specification = function() {
+ return this.getTypedRuleContext(Datafile_specificationContext,0);
+};
+
+Undo_tablespace_clauseContext.prototype.extent_management_clause = function() {
+ return this.getTypedRuleContext(Extent_management_clauseContext,0);
+};
+
+Undo_tablespace_clauseContext.prototype.tablespace_retention_clause = function() {
+ return this.getTypedRuleContext(Tablespace_retention_clauseContext,0);
+};
+
+Undo_tablespace_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterUndo_tablespace_clause(this);
+ }
+};
+
+Undo_tablespace_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitUndo_tablespace_clause(this);
+ }
+};
+
+Undo_tablespace_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitUndo_tablespace_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Undo_tablespace_clauseContext = Undo_tablespace_clauseContext;
+
+PlSqlParser.prototype.undo_tablespace_clause = function() {
+
+ var localctx = new Undo_tablespace_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 456, PlSqlParser.RULE_undo_tablespace_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4737;
+ this.match(PlSqlParser.UNDO);
+ this.state = 4738;
+ this.match(PlSqlParser.TABLESPACE);
+ this.state = 4739;
+ localctx.tablespace_name = this.id_expression();
+ this.state = 4741;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.DATAFILE) {
+ this.state = 4740;
+ this.datafile_specification();
+ }
+
+ this.state = 4744;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.EXTENT) {
+ this.state = 4743;
+ this.extent_management_clause();
+ }
+
+ this.state = 4747;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.RETENTION) {
+ this.state = 4746;
+ this.tablespace_retention_clause();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Tablespace_retention_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_tablespace_retention_clause;
+ return this;
+}
+
+Tablespace_retention_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Tablespace_retention_clauseContext.prototype.constructor = Tablespace_retention_clauseContext;
+
+Tablespace_retention_clauseContext.prototype.RETENTION = function() {
+ return this.getToken(PlSqlParser.RETENTION, 0);
+};
+
+Tablespace_retention_clauseContext.prototype.GUARANTEE = function() {
+ return this.getToken(PlSqlParser.GUARANTEE, 0);
+};
+
+Tablespace_retention_clauseContext.prototype.NOGUARANTEE = function() {
+ return this.getToken(PlSqlParser.NOGUARANTEE, 0);
+};
+
+Tablespace_retention_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterTablespace_retention_clause(this);
+ }
+};
+
+Tablespace_retention_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitTablespace_retention_clause(this);
+ }
+};
+
+Tablespace_retention_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitTablespace_retention_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Tablespace_retention_clauseContext = Tablespace_retention_clauseContext;
+
+PlSqlParser.prototype.tablespace_retention_clause = function() {
+
+ var localctx = new Tablespace_retention_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 458, PlSqlParser.RULE_tablespace_retention_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4749;
+ this.match(PlSqlParser.RETENTION);
+ this.state = 4750;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.GUARANTEE || _la===PlSqlParser.NOGUARANTEE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Datafile_specificationContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_datafile_specification;
+ return this;
+}
+
+Datafile_specificationContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Datafile_specificationContext.prototype.constructor = Datafile_specificationContext;
+
+Datafile_specificationContext.prototype.DATAFILE = function() {
+ return this.getToken(PlSqlParser.DATAFILE, 0);
+};
+
+Datafile_specificationContext.prototype.datafile_tempfile_spec = function() {
+ return this.getTypedRuleContext(Datafile_tempfile_specContext,0);
+};
+
+Datafile_specificationContext.prototype.COMMA = function() {
+ return this.getToken(PlSqlParser.COMMA, 0);
+};
+
+Datafile_specificationContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterDatafile_specification(this);
+ }
+};
+
+Datafile_specificationContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitDatafile_specification(this);
+ }
+};
+
+Datafile_specificationContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitDatafile_specification(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Datafile_specificationContext = Datafile_specificationContext;
+
+PlSqlParser.prototype.datafile_specification = function() {
+
+ var localctx = new Datafile_specificationContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 460, PlSqlParser.RULE_datafile_specification);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4752;
+ this.match(PlSqlParser.DATAFILE);
+
+ this.state = 4754;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.COMMA) {
+ this.state = 4753;
+ this.match(PlSqlParser.COMMA);
+ }
+
+ this.state = 4756;
+ this.datafile_tempfile_spec();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Tempfile_specificationContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_tempfile_specification;
+ return this;
+}
+
+Tempfile_specificationContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Tempfile_specificationContext.prototype.constructor = Tempfile_specificationContext;
+
+Tempfile_specificationContext.prototype.TEMPFILE = function() {
+ return this.getToken(PlSqlParser.TEMPFILE, 0);
+};
+
+Tempfile_specificationContext.prototype.datafile_tempfile_spec = function() {
+ return this.getTypedRuleContext(Datafile_tempfile_specContext,0);
+};
+
+Tempfile_specificationContext.prototype.COMMA = function() {
+ return this.getToken(PlSqlParser.COMMA, 0);
+};
+
+Tempfile_specificationContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterTempfile_specification(this);
+ }
+};
+
+Tempfile_specificationContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitTempfile_specification(this);
+ }
+};
+
+Tempfile_specificationContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitTempfile_specification(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Tempfile_specificationContext = Tempfile_specificationContext;
+
+PlSqlParser.prototype.tempfile_specification = function() {
+
+ var localctx = new Tempfile_specificationContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 462, PlSqlParser.RULE_tempfile_specification);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4758;
+ this.match(PlSqlParser.TEMPFILE);
+
+ this.state = 4760;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.COMMA) {
+ this.state = 4759;
+ this.match(PlSqlParser.COMMA);
+ }
+
+ this.state = 4762;
+ this.datafile_tempfile_spec();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Datafile_tempfile_specContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_datafile_tempfile_spec;
+ return this;
+}
+
+Datafile_tempfile_specContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Datafile_tempfile_specContext.prototype.constructor = Datafile_tempfile_specContext;
+
+Datafile_tempfile_specContext.prototype.CHAR_STRING = function() {
+ return this.getToken(PlSqlParser.CHAR_STRING, 0);
+};
+
+Datafile_tempfile_specContext.prototype.SIZE = function() {
+ return this.getToken(PlSqlParser.SIZE, 0);
+};
+
+Datafile_tempfile_specContext.prototype.size_clause = function() {
+ return this.getTypedRuleContext(Size_clauseContext,0);
+};
+
+Datafile_tempfile_specContext.prototype.REUSE = function() {
+ return this.getToken(PlSqlParser.REUSE, 0);
+};
+
+Datafile_tempfile_specContext.prototype.autoextend_clause = function() {
+ return this.getTypedRuleContext(Autoextend_clauseContext,0);
+};
+
+Datafile_tempfile_specContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterDatafile_tempfile_spec(this);
+ }
+};
+
+Datafile_tempfile_specContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitDatafile_tempfile_spec(this);
+ }
+};
+
+Datafile_tempfile_specContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitDatafile_tempfile_spec(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Datafile_tempfile_specContext = Datafile_tempfile_specContext;
+
+PlSqlParser.prototype.datafile_tempfile_spec = function() {
+
+ var localctx = new Datafile_tempfile_specContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 464, PlSqlParser.RULE_datafile_tempfile_spec);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4765;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.CHAR_STRING) {
+ this.state = 4764;
+ this.match(PlSqlParser.CHAR_STRING);
+ }
+
+ this.state = 4769;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.SIZE) {
+ this.state = 4767;
+ this.match(PlSqlParser.SIZE);
+ this.state = 4768;
+ this.size_clause();
+ }
+
+ this.state = 4772;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.REUSE) {
+ this.state = 4771;
+ this.match(PlSqlParser.REUSE);
+ }
+
+ this.state = 4775;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.AUTOEXTEND) {
+ this.state = 4774;
+ this.autoextend_clause();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Redo_log_file_specContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_redo_log_file_spec;
+ return this;
+}
+
+Redo_log_file_specContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Redo_log_file_specContext.prototype.constructor = Redo_log_file_specContext;
+
+Redo_log_file_specContext.prototype.DATAFILE = function() {
+ return this.getToken(PlSqlParser.DATAFILE, 0);
+};
+
+Redo_log_file_specContext.prototype.CHAR_STRING = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.CHAR_STRING);
+ } else {
+ return this.getToken(PlSqlParser.CHAR_STRING, i);
+ }
+};
+
+
+Redo_log_file_specContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Redo_log_file_specContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Redo_log_file_specContext.prototype.SIZE = function() {
+ return this.getToken(PlSqlParser.SIZE, 0);
+};
+
+Redo_log_file_specContext.prototype.size_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Size_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Size_clauseContext,i);
+ }
+};
+
+Redo_log_file_specContext.prototype.BLOCKSIZE = function() {
+ return this.getToken(PlSqlParser.BLOCKSIZE, 0);
+};
+
+Redo_log_file_specContext.prototype.REUSE = function() {
+ return this.getToken(PlSqlParser.REUSE, 0);
+};
+
+Redo_log_file_specContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Redo_log_file_specContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterRedo_log_file_spec(this);
+ }
+};
+
+Redo_log_file_specContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitRedo_log_file_spec(this);
+ }
+};
+
+Redo_log_file_specContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitRedo_log_file_spec(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Redo_log_file_specContext = Redo_log_file_specContext;
+
+PlSqlParser.prototype.redo_log_file_spec = function() {
+
+ var localctx = new Redo_log_file_specContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 466, PlSqlParser.RULE_redo_log_file_spec);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4789;
+ this._errHandler.sync(this);
+ switch (this._input.LA(1)) {
+ case PlSqlParser.DATAFILE:
+ this.state = 4777;
+ this.match(PlSqlParser.DATAFILE);
+ this.state = 4778;
+ this.match(PlSqlParser.CHAR_STRING);
+ break;
+ case PlSqlParser.LEFT_PAREN:
+ this.state = 4779;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 4784;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 4781;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.COMMA) {
+ this.state = 4780;
+ this.match(PlSqlParser.COMMA);
+ }
+
+ this.state = 4783;
+ this.match(PlSqlParser.CHAR_STRING);
+ this.state = 4786;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(_la===PlSqlParser.CHAR_STRING || _la===PlSqlParser.COMMA);
+ this.state = 4788;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ break;
+ case PlSqlParser.BLOCKSIZE:
+ case PlSqlParser.GROUP:
+ case PlSqlParser.REUSE:
+ case PlSqlParser.SIZE:
+ case PlSqlParser.THREAD:
+ case PlSqlParser.COMMA:
+ case PlSqlParser.SEMICOLON:
+ break;
+ default:
+ break;
+ }
+ this.state = 4793;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.SIZE) {
+ this.state = 4791;
+ this.match(PlSqlParser.SIZE);
+ this.state = 4792;
+ this.size_clause();
+ }
+
+ this.state = 4797;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.BLOCKSIZE) {
+ this.state = 4795;
+ this.match(PlSqlParser.BLOCKSIZE);
+ this.state = 4796;
+ this.size_clause();
+ }
+
+ this.state = 4800;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.REUSE) {
+ this.state = 4799;
+ this.match(PlSqlParser.REUSE);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Autoextend_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_autoextend_clause;
+ return this;
+}
+
+Autoextend_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Autoextend_clauseContext.prototype.constructor = Autoextend_clauseContext;
+
+Autoextend_clauseContext.prototype.AUTOEXTEND = function() {
+ return this.getToken(PlSqlParser.AUTOEXTEND, 0);
+};
+
+Autoextend_clauseContext.prototype.OFF = function() {
+ return this.getToken(PlSqlParser.OFF, 0);
+};
+
+Autoextend_clauseContext.prototype.ON = function() {
+ return this.getToken(PlSqlParser.ON, 0);
+};
+
+Autoextend_clauseContext.prototype.NEXT = function() {
+ return this.getToken(PlSqlParser.NEXT, 0);
+};
+
+Autoextend_clauseContext.prototype.size_clause = function() {
+ return this.getTypedRuleContext(Size_clauseContext,0);
+};
+
+Autoextend_clauseContext.prototype.maxsize_clause = function() {
+ return this.getTypedRuleContext(Maxsize_clauseContext,0);
+};
+
+Autoextend_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAutoextend_clause(this);
+ }
+};
+
+Autoextend_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAutoextend_clause(this);
+ }
+};
+
+Autoextend_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAutoextend_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Autoextend_clauseContext = Autoextend_clauseContext;
+
+PlSqlParser.prototype.autoextend_clause = function() {
+
+ var localctx = new Autoextend_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 468, PlSqlParser.RULE_autoextend_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4802;
+ this.match(PlSqlParser.AUTOEXTEND);
+ this.state = 4812;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.OFF:
+ this.state = 4803;
+ this.match(PlSqlParser.OFF);
+ break;
+ case PlSqlParser.ON:
+ this.state = 4804;
+ this.match(PlSqlParser.ON);
+ this.state = 4807;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.NEXT) {
+ this.state = 4805;
+ this.match(PlSqlParser.NEXT);
+ this.state = 4806;
+ this.size_clause();
+ }
+
+ this.state = 4810;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.MAXSIZE) {
+ this.state = 4809;
+ this.maxsize_clause();
+ }
+
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Maxsize_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_maxsize_clause;
+ return this;
+}
+
+Maxsize_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Maxsize_clauseContext.prototype.constructor = Maxsize_clauseContext;
+
+Maxsize_clauseContext.prototype.MAXSIZE = function() {
+ return this.getToken(PlSqlParser.MAXSIZE, 0);
+};
+
+Maxsize_clauseContext.prototype.UNLIMITED = function() {
+ return this.getToken(PlSqlParser.UNLIMITED, 0);
+};
+
+Maxsize_clauseContext.prototype.size_clause = function() {
+ return this.getTypedRuleContext(Size_clauseContext,0);
+};
+
+Maxsize_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterMaxsize_clause(this);
+ }
+};
+
+Maxsize_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitMaxsize_clause(this);
+ }
+};
+
+Maxsize_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitMaxsize_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Maxsize_clauseContext = Maxsize_clauseContext;
+
+PlSqlParser.prototype.maxsize_clause = function() {
+
+ var localctx = new Maxsize_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 470, PlSqlParser.RULE_maxsize_clause);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4814;
+ this.match(PlSqlParser.MAXSIZE);
+ this.state = 4817;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.UNLIMITED:
+ this.state = 4815;
+ this.match(PlSqlParser.UNLIMITED);
+ break;
+ case PlSqlParser.UNSIGNED_INTEGER:
+ this.state = 4816;
+ this.size_clause();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Build_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_build_clause;
+ return this;
+}
+
+Build_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Build_clauseContext.prototype.constructor = Build_clauseContext;
+
+Build_clauseContext.prototype.BUILD = function() {
+ return this.getToken(PlSqlParser.BUILD, 0);
+};
+
+Build_clauseContext.prototype.IMMEDIATE = function() {
+ return this.getToken(PlSqlParser.IMMEDIATE, 0);
+};
+
+Build_clauseContext.prototype.DEFERRED = function() {
+ return this.getToken(PlSqlParser.DEFERRED, 0);
+};
+
+Build_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterBuild_clause(this);
+ }
+};
+
+Build_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitBuild_clause(this);
+ }
+};
+
+Build_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitBuild_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Build_clauseContext = Build_clauseContext;
+
+PlSqlParser.prototype.build_clause = function() {
+
+ var localctx = new Build_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 472, PlSqlParser.RULE_build_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4819;
+ this.match(PlSqlParser.BUILD);
+ this.state = 4820;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.DEFERRED || _la===PlSqlParser.IMMEDIATE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Parallel_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_parallel_clause;
+ this.parallel_count = null; // Token
+ return this;
+}
+
+Parallel_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Parallel_clauseContext.prototype.constructor = Parallel_clauseContext;
+
+Parallel_clauseContext.prototype.NOPARALLEL = function() {
+ return this.getToken(PlSqlParser.NOPARALLEL, 0);
+};
+
+Parallel_clauseContext.prototype.PARALLEL = function() {
+ return this.getToken(PlSqlParser.PARALLEL, 0);
+};
+
+Parallel_clauseContext.prototype.UNSIGNED_INTEGER = function() {
+ return this.getToken(PlSqlParser.UNSIGNED_INTEGER, 0);
+};
+
+Parallel_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterParallel_clause(this);
+ }
+};
+
+Parallel_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitParallel_clause(this);
+ }
+};
+
+Parallel_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitParallel_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Parallel_clauseContext = Parallel_clauseContext;
+
+PlSqlParser.prototype.parallel_clause = function() {
+
+ var localctx = new Parallel_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 474, PlSqlParser.RULE_parallel_clause);
+ try {
+ this.state = 4827;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.NOPARALLEL:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4822;
+ this.match(PlSqlParser.NOPARALLEL);
+ break;
+ case PlSqlParser.PARALLEL:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 4823;
+ this.match(PlSqlParser.PARALLEL);
+ this.state = 4825;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,488,this._ctx);
+ if(la_===1) {
+ this.state = 4824;
+ localctx.parallel_count = this.match(PlSqlParser.UNSIGNED_INTEGER);
+
+ }
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Alter_materialized_viewContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_alter_materialized_view;
+ return this;
+}
+
+Alter_materialized_viewContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Alter_materialized_viewContext.prototype.constructor = Alter_materialized_viewContext;
+
+Alter_materialized_viewContext.prototype.ALTER = function() {
+ return this.getToken(PlSqlParser.ALTER, 0);
+};
+
+Alter_materialized_viewContext.prototype.MATERIALIZED = function() {
+ return this.getToken(PlSqlParser.MATERIALIZED, 0);
+};
+
+Alter_materialized_viewContext.prototype.VIEW = function() {
+ return this.getToken(PlSqlParser.VIEW, 0);
+};
+
+Alter_materialized_viewContext.prototype.tableview_name = function() {
+ return this.getTypedRuleContext(Tableview_nameContext,0);
+};
+
+Alter_materialized_viewContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Alter_materialized_viewContext.prototype.physical_attributes_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Physical_attributes_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Physical_attributes_clauseContext,i);
+ }
+};
+
+Alter_materialized_viewContext.prototype.modify_mv_column_clause = function() {
+ return this.getTypedRuleContext(Modify_mv_column_clauseContext,0);
+};
+
+Alter_materialized_viewContext.prototype.table_compression = function() {
+ return this.getTypedRuleContext(Table_compressionContext,0);
+};
+
+Alter_materialized_viewContext.prototype.lob_storage_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Lob_storage_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Lob_storage_clauseContext,i);
+ }
+};
+
+Alter_materialized_viewContext.prototype.modify_lob_storage_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Modify_lob_storage_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Modify_lob_storage_clauseContext,i);
+ }
+};
+
+Alter_materialized_viewContext.prototype.parallel_clause = function() {
+ return this.getTypedRuleContext(Parallel_clauseContext,0);
+};
+
+Alter_materialized_viewContext.prototype.logging_clause = function() {
+ return this.getTypedRuleContext(Logging_clauseContext,0);
+};
+
+Alter_materialized_viewContext.prototype.allocate_extent_clause = function() {
+ return this.getTypedRuleContext(Allocate_extent_clauseContext,0);
+};
+
+Alter_materialized_viewContext.prototype.deallocate_unused_clause = function() {
+ return this.getTypedRuleContext(Deallocate_unused_clauseContext,0);
+};
+
+Alter_materialized_viewContext.prototype.shrink_clause = function() {
+ return this.getTypedRuleContext(Shrink_clauseContext,0);
+};
+
+Alter_materialized_viewContext.prototype.alter_iot_clauses = function() {
+ return this.getTypedRuleContext(Alter_iot_clausesContext,0);
+};
+
+Alter_materialized_viewContext.prototype.USING = function() {
+ return this.getToken(PlSqlParser.USING, 0);
+};
+
+Alter_materialized_viewContext.prototype.INDEX = function() {
+ return this.getToken(PlSqlParser.INDEX, 0);
+};
+
+Alter_materialized_viewContext.prototype.alter_mv_option1 = function() {
+ return this.getTypedRuleContext(Alter_mv_option1Context,0);
+};
+
+Alter_materialized_viewContext.prototype.enable_or_disable = function() {
+ return this.getTypedRuleContext(Enable_or_disableContext,0);
+};
+
+Alter_materialized_viewContext.prototype.QUERY = function() {
+ return this.getToken(PlSqlParser.QUERY, 0);
+};
+
+Alter_materialized_viewContext.prototype.REWRITE = function() {
+ return this.getToken(PlSqlParser.REWRITE, 0);
+};
+
+Alter_materialized_viewContext.prototype.COMPILE = function() {
+ return this.getToken(PlSqlParser.COMPILE, 0);
+};
+
+Alter_materialized_viewContext.prototype.CONSIDER = function() {
+ return this.getToken(PlSqlParser.CONSIDER, 0);
+};
+
+Alter_materialized_viewContext.prototype.FRESH = function() {
+ return this.getToken(PlSqlParser.FRESH, 0);
+};
+
+Alter_materialized_viewContext.prototype.cache_or_nocache = function() {
+ return this.getTypedRuleContext(Cache_or_nocacheContext,0);
+};
+
+Alter_materialized_viewContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Alter_materialized_viewContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAlter_materialized_view(this);
+ }
+};
+
+Alter_materialized_viewContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAlter_materialized_view(this);
+ }
+};
+
+Alter_materialized_viewContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAlter_materialized_view(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Alter_materialized_viewContext = Alter_materialized_viewContext;
+
+PlSqlParser.prototype.alter_materialized_view = function() {
+
+ var localctx = new Alter_materialized_viewContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 476, PlSqlParser.RULE_alter_materialized_view);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4829;
+ this.match(PlSqlParser.ALTER);
+ this.state = 4830;
+ this.match(PlSqlParser.MATERIALIZED);
+ this.state = 4831;
+ this.match(PlSqlParser.VIEW);
+ this.state = 4832;
+ this.tableview_name();
+ this.state = 4858;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,492,this._ctx);
+ if(la_===1) {
+ this.state = 4833;
+ this.physical_attributes_clause();
+
+ } else if(la_===2) {
+ this.state = 4834;
+ this.modify_mv_column_clause();
+
+ } else if(la_===3) {
+ this.state = 4835;
+ this.table_compression();
+
+ } else if(la_===4) {
+ this.state = 4836;
+ this.lob_storage_clause();
+ this.state = 4841;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 4837;
+ this.match(PlSqlParser.COMMA);
+ this.state = 4838;
+ this.lob_storage_clause();
+ this.state = 4843;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+
+ } else if(la_===5) {
+ this.state = 4844;
+ this.modify_lob_storage_clause();
+ this.state = 4849;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 4845;
+ this.match(PlSqlParser.COMMA);
+ this.state = 4846;
+ this.modify_lob_storage_clause();
+ this.state = 4851;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+
+ } else if(la_===6) {
+ this.state = 4852;
+ this.parallel_clause();
+
+ } else if(la_===7) {
+ this.state = 4853;
+ this.logging_clause();
+
+ } else if(la_===8) {
+ this.state = 4854;
+ this.allocate_extent_clause();
+
+ } else if(la_===9) {
+ this.state = 4855;
+ this.deallocate_unused_clause();
+
+ } else if(la_===10) {
+ this.state = 4856;
+ this.shrink_clause();
+
+ } else if(la_===11) {
+ this.state = 4857;
+ this.cache_or_nocache();
+
+ }
+ this.state = 4861;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.ADD || _la===PlSqlParser.COALESCE || _la===PlSqlParser.COMPRESS || _la===PlSqlParser.MAPPING || _la===PlSqlParser.NOCOMPRESS || _la===PlSqlParser.NOMAPPING || _la===PlSqlParser.OVERFLOW || _la===PlSqlParser.PCTTHRESHOLD) {
+ this.state = 4860;
+ this.alter_iot_clauses();
+ }
+
+ this.state = 4866;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.USING) {
+ this.state = 4863;
+ this.match(PlSqlParser.USING);
+ this.state = 4864;
+ this.match(PlSqlParser.INDEX);
+ this.state = 4865;
+ this.physical_attributes_clause();
+ }
+
+ this.state = 4869;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.REFRESH) {
+ this.state = 4868;
+ this.alter_mv_option1();
+ }
+
+ this.state = 4878;
+ this._errHandler.sync(this);
+ switch (this._input.LA(1)) {
+ case PlSqlParser.DISABLE:
+ case PlSqlParser.ENABLE:
+ this.state = 4871;
+ this.enable_or_disable();
+ this.state = 4872;
+ this.match(PlSqlParser.QUERY);
+ this.state = 4873;
+ this.match(PlSqlParser.REWRITE);
+ break;
+ case PlSqlParser.COMPILE:
+ this.state = 4875;
+ this.match(PlSqlParser.COMPILE);
+ break;
+ case PlSqlParser.CONSIDER:
+ this.state = 4876;
+ this.match(PlSqlParser.CONSIDER);
+ this.state = 4877;
+ this.match(PlSqlParser.FRESH);
+ break;
+ case PlSqlParser.SEMICOLON:
+ break;
+ default:
+ break;
+ }
+ this.state = 4880;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Alter_mv_option1Context(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_alter_mv_option1;
+ return this;
+}
+
+Alter_mv_option1Context.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Alter_mv_option1Context.prototype.constructor = Alter_mv_option1Context;
+
+Alter_mv_option1Context.prototype.alter_mv_refresh = function() {
+ return this.getTypedRuleContext(Alter_mv_refreshContext,0);
+};
+
+Alter_mv_option1Context.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAlter_mv_option1(this);
+ }
+};
+
+Alter_mv_option1Context.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAlter_mv_option1(this);
+ }
+};
+
+Alter_mv_option1Context.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAlter_mv_option1(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Alter_mv_option1Context = Alter_mv_option1Context;
+
+PlSqlParser.prototype.alter_mv_option1 = function() {
+
+ var localctx = new Alter_mv_option1Context(this, this._ctx, this.state);
+ this.enterRule(localctx, 478, PlSqlParser.RULE_alter_mv_option1);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4882;
+ this.alter_mv_refresh();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Alter_mv_refreshContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_alter_mv_refresh;
+ return this;
+}
+
+Alter_mv_refreshContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Alter_mv_refreshContext.prototype.constructor = Alter_mv_refreshContext;
+
+Alter_mv_refreshContext.prototype.REFRESH = function() {
+ return this.getToken(PlSqlParser.REFRESH, 0);
+};
+
+Alter_mv_refreshContext.prototype.FAST = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.FAST);
+ } else {
+ return this.getToken(PlSqlParser.FAST, i);
+ }
+};
+
+
+Alter_mv_refreshContext.prototype.COMPLETE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMPLETE);
+ } else {
+ return this.getToken(PlSqlParser.COMPLETE, i);
+ }
+};
+
+
+Alter_mv_refreshContext.prototype.FORCE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.FORCE);
+ } else {
+ return this.getToken(PlSqlParser.FORCE, i);
+ }
+};
+
+
+Alter_mv_refreshContext.prototype.ON = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.ON);
+ } else {
+ return this.getToken(PlSqlParser.ON, i);
+ }
+};
+
+
+Alter_mv_refreshContext.prototype.START = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.START);
+ } else {
+ return this.getToken(PlSqlParser.START, i);
+ }
+};
+
+
+Alter_mv_refreshContext.prototype.WITH = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.WITH);
+ } else {
+ return this.getToken(PlSqlParser.WITH, i);
+ }
+};
+
+
+Alter_mv_refreshContext.prototype.expression = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ExpressionContext);
+ } else {
+ return this.getTypedRuleContext(ExpressionContext,i);
+ }
+};
+
+Alter_mv_refreshContext.prototype.NEXT = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.NEXT);
+ } else {
+ return this.getToken(PlSqlParser.NEXT, i);
+ }
+};
+
+
+Alter_mv_refreshContext.prototype.PRIMARY = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.PRIMARY);
+ } else {
+ return this.getToken(PlSqlParser.PRIMARY, i);
+ }
+};
+
+
+Alter_mv_refreshContext.prototype.KEY = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.KEY);
+ } else {
+ return this.getToken(PlSqlParser.KEY, i);
+ }
+};
+
+
+Alter_mv_refreshContext.prototype.USING = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.USING);
+ } else {
+ return this.getToken(PlSqlParser.USING, i);
+ }
+};
+
+
+Alter_mv_refreshContext.prototype.MASTER = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.MASTER);
+ } else {
+ return this.getToken(PlSqlParser.MASTER, i);
+ }
+};
+
+
+Alter_mv_refreshContext.prototype.ROLLBACK = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.ROLLBACK);
+ } else {
+ return this.getToken(PlSqlParser.ROLLBACK, i);
+ }
+};
+
+
+Alter_mv_refreshContext.prototype.SEGMENT = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.SEGMENT);
+ } else {
+ return this.getToken(PlSqlParser.SEGMENT, i);
+ }
+};
+
+
+Alter_mv_refreshContext.prototype.CONSTRAINTS = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.CONSTRAINTS);
+ } else {
+ return this.getToken(PlSqlParser.CONSTRAINTS, i);
+ }
+};
+
+
+Alter_mv_refreshContext.prototype.DEMAND = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.DEMAND);
+ } else {
+ return this.getToken(PlSqlParser.DEMAND, i);
+ }
+};
+
+
+Alter_mv_refreshContext.prototype.COMMIT = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMIT);
+ } else {
+ return this.getToken(PlSqlParser.COMMIT, i);
+ }
+};
+
+
+Alter_mv_refreshContext.prototype.ENFORCED = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.ENFORCED);
+ } else {
+ return this.getToken(PlSqlParser.ENFORCED, i);
+ }
+};
+
+
+Alter_mv_refreshContext.prototype.TRUSTED = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.TRUSTED);
+ } else {
+ return this.getToken(PlSqlParser.TRUSTED, i);
+ }
+};
+
+
+Alter_mv_refreshContext.prototype.DEFAULT = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.DEFAULT);
+ } else {
+ return this.getToken(PlSqlParser.DEFAULT, i);
+ }
+};
+
+
+Alter_mv_refreshContext.prototype.rollback_segment = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Rollback_segmentContext);
+ } else {
+ return this.getTypedRuleContext(Rollback_segmentContext,i);
+ }
+};
+
+Alter_mv_refreshContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAlter_mv_refresh(this);
+ }
+};
+
+Alter_mv_refreshContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAlter_mv_refresh(this);
+ }
+};
+
+Alter_mv_refreshContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAlter_mv_refresh(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Alter_mv_refreshContext = Alter_mv_refreshContext;
+
+PlSqlParser.prototype.alter_mv_refresh = function() {
+
+ var localctx = new Alter_mv_refreshContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 480, PlSqlParser.RULE_alter_mv_refresh);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4884;
+ this.match(PlSqlParser.REFRESH);
+ this.state = 4911;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 4911;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,499,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 4885;
+ this.match(PlSqlParser.FAST);
+ break;
+
+ case 2:
+ this.state = 4886;
+ this.match(PlSqlParser.COMPLETE);
+ break;
+
+ case 3:
+ this.state = 4887;
+ this.match(PlSqlParser.FORCE);
+ break;
+
+ case 4:
+ this.state = 4888;
+ this.match(PlSqlParser.ON);
+ this.state = 4889;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.COMMIT || _la===PlSqlParser.DEMAND)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+
+ case 5:
+ this.state = 4890;
+ this.match(PlSqlParser.START);
+ this.state = 4891;
+ this.match(PlSqlParser.WITH);
+ this.state = 4892;
+ this.expression();
+ break;
+
+ case 6:
+ this.state = 4893;
+ this.match(PlSqlParser.NEXT);
+ this.state = 4894;
+ this.expression();
+ break;
+
+ case 7:
+ this.state = 4895;
+ this.match(PlSqlParser.WITH);
+ this.state = 4896;
+ this.match(PlSqlParser.PRIMARY);
+ this.state = 4897;
+ this.match(PlSqlParser.KEY);
+ break;
+
+ case 8:
+ this.state = 4898;
+ this.match(PlSqlParser.USING);
+ this.state = 4900;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.DEFAULT) {
+ this.state = 4899;
+ this.match(PlSqlParser.DEFAULT);
+ }
+
+ this.state = 4902;
+ this.match(PlSqlParser.MASTER);
+ this.state = 4903;
+ this.match(PlSqlParser.ROLLBACK);
+ this.state = 4904;
+ this.match(PlSqlParser.SEGMENT);
+ this.state = 4906;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,498,this._ctx);
+ if(la_===1) {
+ this.state = 4905;
+ this.rollback_segment();
+
+ }
+ break;
+
+ case 9:
+ this.state = 4908;
+ this.match(PlSqlParser.USING);
+ this.state = 4909;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.ENFORCED || _la===PlSqlParser.TRUSTED)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 4910;
+ this.match(PlSqlParser.CONSTRAINTS);
+ break;
+
+ }
+ this.state = 4913;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(_la===PlSqlParser.COMPLETE || _la===PlSqlParser.FAST || _la===PlSqlParser.FORCE || _la===PlSqlParser.NEXT || _la===PlSqlParser.ON || _la===PlSqlParser.START || _la===PlSqlParser.USING || _la===PlSqlParser.WITH);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Rollback_segmentContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_rollback_segment;
+ return this;
+}
+
+Rollback_segmentContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Rollback_segmentContext.prototype.constructor = Rollback_segmentContext;
+
+Rollback_segmentContext.prototype.regular_id = function() {
+ return this.getTypedRuleContext(Regular_idContext,0);
+};
+
+Rollback_segmentContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterRollback_segment(this);
+ }
+};
+
+Rollback_segmentContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitRollback_segment(this);
+ }
+};
+
+Rollback_segmentContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitRollback_segment(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Rollback_segmentContext = Rollback_segmentContext;
+
+PlSqlParser.prototype.rollback_segment = function() {
+
+ var localctx = new Rollback_segmentContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 482, PlSqlParser.RULE_rollback_segment);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4915;
+ this.regular_id();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Modify_mv_column_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_modify_mv_column_clause;
+ return this;
+}
+
+Modify_mv_column_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Modify_mv_column_clauseContext.prototype.constructor = Modify_mv_column_clauseContext;
+
+Modify_mv_column_clauseContext.prototype.MODIFY = function() {
+ return this.getToken(PlSqlParser.MODIFY, 0);
+};
+
+Modify_mv_column_clauseContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Modify_mv_column_clauseContext.prototype.column_name = function() {
+ return this.getTypedRuleContext(Column_nameContext,0);
+};
+
+Modify_mv_column_clauseContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Modify_mv_column_clauseContext.prototype.ENCRYPT = function() {
+ return this.getToken(PlSqlParser.ENCRYPT, 0);
+};
+
+Modify_mv_column_clauseContext.prototype.encryption_spec = function() {
+ return this.getTypedRuleContext(Encryption_specContext,0);
+};
+
+Modify_mv_column_clauseContext.prototype.DECRYPT = function() {
+ return this.getToken(PlSqlParser.DECRYPT, 0);
+};
+
+Modify_mv_column_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterModify_mv_column_clause(this);
+ }
+};
+
+Modify_mv_column_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitModify_mv_column_clause(this);
+ }
+};
+
+Modify_mv_column_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitModify_mv_column_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Modify_mv_column_clauseContext = Modify_mv_column_clauseContext;
+
+PlSqlParser.prototype.modify_mv_column_clause = function() {
+
+ var localctx = new Modify_mv_column_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 484, PlSqlParser.RULE_modify_mv_column_clause);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4917;
+ this.match(PlSqlParser.MODIFY);
+ this.state = 4918;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 4919;
+ this.column_name();
+ this.state = 4923;
+ this._errHandler.sync(this);
+ switch (this._input.LA(1)) {
+ case PlSqlParser.ENCRYPT:
+ this.state = 4920;
+ this.match(PlSqlParser.ENCRYPT);
+ this.state = 4921;
+ this.encryption_spec();
+ break;
+ case PlSqlParser.DECRYPT:
+ this.state = 4922;
+ this.match(PlSqlParser.DECRYPT);
+ break;
+ case PlSqlParser.RIGHT_PAREN:
+ break;
+ default:
+ break;
+ }
+ this.state = 4925;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Alter_materialized_view_logContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_alter_materialized_view_log;
+ return this;
+}
+
+Alter_materialized_view_logContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Alter_materialized_view_logContext.prototype.constructor = Alter_materialized_view_logContext;
+
+Alter_materialized_view_logContext.prototype.ALTER = function() {
+ return this.getToken(PlSqlParser.ALTER, 0);
+};
+
+Alter_materialized_view_logContext.prototype.MATERIALIZED = function() {
+ return this.getToken(PlSqlParser.MATERIALIZED, 0);
+};
+
+Alter_materialized_view_logContext.prototype.VIEW = function() {
+ return this.getToken(PlSqlParser.VIEW, 0);
+};
+
+Alter_materialized_view_logContext.prototype.LOG = function() {
+ return this.getToken(PlSqlParser.LOG, 0);
+};
+
+Alter_materialized_view_logContext.prototype.ON = function() {
+ return this.getToken(PlSqlParser.ON, 0);
+};
+
+Alter_materialized_view_logContext.prototype.tableview_name = function() {
+ return this.getTypedRuleContext(Tableview_nameContext,0);
+};
+
+Alter_materialized_view_logContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Alter_materialized_view_logContext.prototype.FORCE = function() {
+ return this.getToken(PlSqlParser.FORCE, 0);
+};
+
+Alter_materialized_view_logContext.prototype.physical_attributes_clause = function() {
+ return this.getTypedRuleContext(Physical_attributes_clauseContext,0);
+};
+
+Alter_materialized_view_logContext.prototype.add_mv_log_column_clause = function() {
+ return this.getTypedRuleContext(Add_mv_log_column_clauseContext,0);
+};
+
+Alter_materialized_view_logContext.prototype.parallel_clause = function() {
+ return this.getTypedRuleContext(Parallel_clauseContext,0);
+};
+
+Alter_materialized_view_logContext.prototype.logging_clause = function() {
+ return this.getTypedRuleContext(Logging_clauseContext,0);
+};
+
+Alter_materialized_view_logContext.prototype.allocate_extent_clause = function() {
+ return this.getTypedRuleContext(Allocate_extent_clauseContext,0);
+};
+
+Alter_materialized_view_logContext.prototype.shrink_clause = function() {
+ return this.getTypedRuleContext(Shrink_clauseContext,0);
+};
+
+Alter_materialized_view_logContext.prototype.move_mv_log_clause = function() {
+ return this.getTypedRuleContext(Move_mv_log_clauseContext,0);
+};
+
+Alter_materialized_view_logContext.prototype.cache_or_nocache = function() {
+ return this.getTypedRuleContext(Cache_or_nocacheContext,0);
+};
+
+Alter_materialized_view_logContext.prototype.mv_log_augmentation = function() {
+ return this.getTypedRuleContext(Mv_log_augmentationContext,0);
+};
+
+Alter_materialized_view_logContext.prototype.mv_log_purge_clause = function() {
+ return this.getTypedRuleContext(Mv_log_purge_clauseContext,0);
+};
+
+Alter_materialized_view_logContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAlter_materialized_view_log(this);
+ }
+};
+
+Alter_materialized_view_logContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAlter_materialized_view_log(this);
+ }
+};
+
+Alter_materialized_view_logContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAlter_materialized_view_log(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Alter_materialized_view_logContext = Alter_materialized_view_logContext;
+
+PlSqlParser.prototype.alter_materialized_view_log = function() {
+
+ var localctx = new Alter_materialized_view_logContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 486, PlSqlParser.RULE_alter_materialized_view_log);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4927;
+ this.match(PlSqlParser.ALTER);
+ this.state = 4928;
+ this.match(PlSqlParser.MATERIALIZED);
+ this.state = 4929;
+ this.match(PlSqlParser.VIEW);
+ this.state = 4930;
+ this.match(PlSqlParser.LOG);
+ this.state = 4932;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.FORCE) {
+ this.state = 4931;
+ this.match(PlSqlParser.FORCE);
+ }
+
+ this.state = 4934;
+ this.match(PlSqlParser.ON);
+ this.state = 4935;
+ this.tableview_name();
+ this.state = 4944;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,503,this._ctx);
+ if(la_===1) {
+ this.state = 4936;
+ this.physical_attributes_clause();
+
+ } else if(la_===2) {
+ this.state = 4937;
+ this.add_mv_log_column_clause();
+
+ } else if(la_===3) {
+ this.state = 4938;
+ this.parallel_clause();
+
+ } else if(la_===4) {
+ this.state = 4939;
+ this.logging_clause();
+
+ } else if(la_===5) {
+ this.state = 4940;
+ this.allocate_extent_clause();
+
+ } else if(la_===6) {
+ this.state = 4941;
+ this.shrink_clause();
+
+ } else if(la_===7) {
+ this.state = 4942;
+ this.move_mv_log_clause();
+
+ } else if(la_===8) {
+ this.state = 4943;
+ this.cache_or_nocache();
+
+ }
+ this.state = 4947;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.ADD) {
+ this.state = 4946;
+ this.mv_log_augmentation();
+ }
+
+ this.state = 4950;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.PURGE) {
+ this.state = 4949;
+ this.mv_log_purge_clause();
+ }
+
+ this.state = 4952;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Add_mv_log_column_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_add_mv_log_column_clause;
+ return this;
+}
+
+Add_mv_log_column_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Add_mv_log_column_clauseContext.prototype.constructor = Add_mv_log_column_clauseContext;
+
+Add_mv_log_column_clauseContext.prototype.ADD = function() {
+ return this.getToken(PlSqlParser.ADD, 0);
+};
+
+Add_mv_log_column_clauseContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Add_mv_log_column_clauseContext.prototype.column_name = function() {
+ return this.getTypedRuleContext(Column_nameContext,0);
+};
+
+Add_mv_log_column_clauseContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Add_mv_log_column_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAdd_mv_log_column_clause(this);
+ }
+};
+
+Add_mv_log_column_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAdd_mv_log_column_clause(this);
+ }
+};
+
+Add_mv_log_column_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAdd_mv_log_column_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Add_mv_log_column_clauseContext = Add_mv_log_column_clauseContext;
+
+PlSqlParser.prototype.add_mv_log_column_clause = function() {
+
+ var localctx = new Add_mv_log_column_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 488, PlSqlParser.RULE_add_mv_log_column_clause);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4954;
+ this.match(PlSqlParser.ADD);
+ this.state = 4955;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 4956;
+ this.column_name();
+ this.state = 4957;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Move_mv_log_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_move_mv_log_clause;
+ return this;
+}
+
+Move_mv_log_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Move_mv_log_clauseContext.prototype.constructor = Move_mv_log_clauseContext;
+
+Move_mv_log_clauseContext.prototype.MOVE = function() {
+ return this.getToken(PlSqlParser.MOVE, 0);
+};
+
+Move_mv_log_clauseContext.prototype.segment_attributes_clause = function() {
+ return this.getTypedRuleContext(Segment_attributes_clauseContext,0);
+};
+
+Move_mv_log_clauseContext.prototype.parallel_clause = function() {
+ return this.getTypedRuleContext(Parallel_clauseContext,0);
+};
+
+Move_mv_log_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterMove_mv_log_clause(this);
+ }
+};
+
+Move_mv_log_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitMove_mv_log_clause(this);
+ }
+};
+
+Move_mv_log_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitMove_mv_log_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Move_mv_log_clauseContext = Move_mv_log_clauseContext;
+
+PlSqlParser.prototype.move_mv_log_clause = function() {
+
+ var localctx = new Move_mv_log_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 490, PlSqlParser.RULE_move_mv_log_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4959;
+ this.match(PlSqlParser.MOVE);
+ this.state = 4960;
+ this.segment_attributes_clause();
+ this.state = 4962;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.NOPARALLEL || _la===PlSqlParser.PARALLEL) {
+ this.state = 4961;
+ this.parallel_clause();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Mv_log_augmentationContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_mv_log_augmentation;
+ return this;
+}
+
+Mv_log_augmentationContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Mv_log_augmentationContext.prototype.constructor = Mv_log_augmentationContext;
+
+Mv_log_augmentationContext.prototype.ADD = function() {
+ return this.getToken(PlSqlParser.ADD, 0);
+};
+
+Mv_log_augmentationContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Mv_log_augmentationContext.prototype.column_name = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Column_nameContext);
+ } else {
+ return this.getTypedRuleContext(Column_nameContext,i);
+ }
+};
+
+Mv_log_augmentationContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Mv_log_augmentationContext.prototype.new_values_clause = function() {
+ return this.getTypedRuleContext(New_values_clauseContext,0);
+};
+
+Mv_log_augmentationContext.prototype.OBJECT = function() {
+ return this.getToken(PlSqlParser.OBJECT, 0);
+};
+
+Mv_log_augmentationContext.prototype.ID = function() {
+ return this.getToken(PlSqlParser.ID, 0);
+};
+
+Mv_log_augmentationContext.prototype.PRIMARY = function() {
+ return this.getToken(PlSqlParser.PRIMARY, 0);
+};
+
+Mv_log_augmentationContext.prototype.KEY = function() {
+ return this.getToken(PlSqlParser.KEY, 0);
+};
+
+Mv_log_augmentationContext.prototype.ROWID = function() {
+ return this.getToken(PlSqlParser.ROWID, 0);
+};
+
+Mv_log_augmentationContext.prototype.SEQUENCE = function() {
+ return this.getToken(PlSqlParser.SEQUENCE, 0);
+};
+
+Mv_log_augmentationContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Mv_log_augmentationContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterMv_log_augmentation(this);
+ }
+};
+
+Mv_log_augmentationContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitMv_log_augmentation(this);
+ }
+};
+
+Mv_log_augmentationContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitMv_log_augmentation(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Mv_log_augmentationContext = Mv_log_augmentationContext;
+
+PlSqlParser.prototype.mv_log_augmentation = function() {
+
+ var localctx = new Mv_log_augmentationContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 492, PlSqlParser.RULE_mv_log_augmentation);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 4964;
+ this.match(PlSqlParser.ADD);
+ this.state = 4997;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.OBJECT:
+ case PlSqlParser.PRIMARY:
+ case PlSqlParser.ROWID:
+ case PlSqlParser.SEQUENCE:
+ this.state = 4971;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.OBJECT:
+ this.state = 4965;
+ this.match(PlSqlParser.OBJECT);
+ this.state = 4966;
+ this.match(PlSqlParser.ID);
+ break;
+ case PlSqlParser.PRIMARY:
+ this.state = 4967;
+ this.match(PlSqlParser.PRIMARY);
+ this.state = 4968;
+ this.match(PlSqlParser.KEY);
+ break;
+ case PlSqlParser.ROWID:
+ this.state = 4969;
+ this.match(PlSqlParser.ROWID);
+ break;
+ case PlSqlParser.SEQUENCE:
+ this.state = 4970;
+ this.match(PlSqlParser.SEQUENCE);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 4984;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.LEFT_PAREN) {
+ this.state = 4973;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 4974;
+ this.column_name();
+ this.state = 4979;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 4975;
+ this.match(PlSqlParser.COMMA);
+ this.state = 4976;
+ this.column_name();
+ this.state = 4981;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 4982;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ }
+
+ break;
+ case PlSqlParser.LEFT_PAREN:
+ this.state = 4986;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 4987;
+ this.column_name();
+ this.state = 4992;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 4988;
+ this.match(PlSqlParser.COMMA);
+ this.state = 4989;
+ this.column_name();
+ this.state = 4994;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 4995;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 5000;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.EXCLUDING || _la===PlSqlParser.INCLUDING) {
+ this.state = 4999;
+ this.new_values_clause();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Datetime_exprContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_datetime_expr;
+ return this;
+}
+
+Datetime_exprContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Datetime_exprContext.prototype.constructor = Datetime_exprContext;
+
+Datetime_exprContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+Datetime_exprContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterDatetime_expr(this);
+ }
+};
+
+Datetime_exprContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitDatetime_expr(this);
+ }
+};
+
+Datetime_exprContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitDatetime_expr(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Datetime_exprContext = Datetime_exprContext;
+
+PlSqlParser.prototype.datetime_expr = function() {
+
+ var localctx = new Datetime_exprContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 494, PlSqlParser.RULE_datetime_expr);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5002;
+ this.expression();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Interval_exprContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_interval_expr;
+ return this;
+}
+
+Interval_exprContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Interval_exprContext.prototype.constructor = Interval_exprContext;
+
+Interval_exprContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+Interval_exprContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterInterval_expr(this);
+ }
+};
+
+Interval_exprContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitInterval_expr(this);
+ }
+};
+
+Interval_exprContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitInterval_expr(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Interval_exprContext = Interval_exprContext;
+
+PlSqlParser.prototype.interval_expr = function() {
+
+ var localctx = new Interval_exprContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 496, PlSqlParser.RULE_interval_expr);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5004;
+ this.expression();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Synchronous_or_asynchronousContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_synchronous_or_asynchronous;
+ return this;
+}
+
+Synchronous_or_asynchronousContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Synchronous_or_asynchronousContext.prototype.constructor = Synchronous_or_asynchronousContext;
+
+Synchronous_or_asynchronousContext.prototype.SYNCHRONOUS = function() {
+ return this.getToken(PlSqlParser.SYNCHRONOUS, 0);
+};
+
+Synchronous_or_asynchronousContext.prototype.ASYNCHRONOUS = function() {
+ return this.getToken(PlSqlParser.ASYNCHRONOUS, 0);
+};
+
+Synchronous_or_asynchronousContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterSynchronous_or_asynchronous(this);
+ }
+};
+
+Synchronous_or_asynchronousContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitSynchronous_or_asynchronous(this);
+ }
+};
+
+Synchronous_or_asynchronousContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitSynchronous_or_asynchronous(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Synchronous_or_asynchronousContext = Synchronous_or_asynchronousContext;
+
+PlSqlParser.prototype.synchronous_or_asynchronous = function() {
+
+ var localctx = new Synchronous_or_asynchronousContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 498, PlSqlParser.RULE_synchronous_or_asynchronous);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5006;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.ASYNCHRONOUS || _la===PlSqlParser.SYNCHRONOUS)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Including_or_excludingContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_including_or_excluding;
+ return this;
+}
+
+Including_or_excludingContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Including_or_excludingContext.prototype.constructor = Including_or_excludingContext;
+
+Including_or_excludingContext.prototype.INCLUDING = function() {
+ return this.getToken(PlSqlParser.INCLUDING, 0);
+};
+
+Including_or_excludingContext.prototype.EXCLUDING = function() {
+ return this.getToken(PlSqlParser.EXCLUDING, 0);
+};
+
+Including_or_excludingContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterIncluding_or_excluding(this);
+ }
+};
+
+Including_or_excludingContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitIncluding_or_excluding(this);
+ }
+};
+
+Including_or_excludingContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitIncluding_or_excluding(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Including_or_excludingContext = Including_or_excludingContext;
+
+PlSqlParser.prototype.including_or_excluding = function() {
+
+ var localctx = new Including_or_excludingContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 500, PlSqlParser.RULE_including_or_excluding);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5008;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.EXCLUDING || _la===PlSqlParser.INCLUDING)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_materialized_view_logContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_create_materialized_view_log;
+ this.tablespace_name = null; // Id_expressionContext
+ return this;
+}
+
+Create_materialized_view_logContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_materialized_view_logContext.prototype.constructor = Create_materialized_view_logContext;
+
+Create_materialized_view_logContext.prototype.CREATE = function() {
+ return this.getToken(PlSqlParser.CREATE, 0);
+};
+
+Create_materialized_view_logContext.prototype.MATERIALIZED = function() {
+ return this.getToken(PlSqlParser.MATERIALIZED, 0);
+};
+
+Create_materialized_view_logContext.prototype.VIEW = function() {
+ return this.getToken(PlSqlParser.VIEW, 0);
+};
+
+Create_materialized_view_logContext.prototype.LOG = function() {
+ return this.getToken(PlSqlParser.LOG, 0);
+};
+
+Create_materialized_view_logContext.prototype.ON = function() {
+ return this.getToken(PlSqlParser.ON, 0);
+};
+
+Create_materialized_view_logContext.prototype.tableview_name = function() {
+ return this.getTypedRuleContext(Tableview_nameContext,0);
+};
+
+Create_materialized_view_logContext.prototype.parallel_clause = function() {
+ return this.getTypedRuleContext(Parallel_clauseContext,0);
+};
+
+Create_materialized_view_logContext.prototype.WITH = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.WITH);
+ } else {
+ return this.getToken(PlSqlParser.WITH, i);
+ }
+};
+
+
+Create_materialized_view_logContext.prototype.physical_attributes_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Physical_attributes_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Physical_attributes_clauseContext,i);
+ }
+};
+
+Create_materialized_view_logContext.prototype.TABLESPACE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.TABLESPACE);
+ } else {
+ return this.getToken(PlSqlParser.TABLESPACE, i);
+ }
+};
+
+
+Create_materialized_view_logContext.prototype.logging_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Logging_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Logging_clauseContext,i);
+ }
+};
+
+Create_materialized_view_logContext.prototype.LEFT_PAREN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.LEFT_PAREN);
+ } else {
+ return this.getToken(PlSqlParser.LEFT_PAREN, i);
+ }
+};
+
+
+Create_materialized_view_logContext.prototype.RIGHT_PAREN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.RIGHT_PAREN);
+ } else {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, i);
+ }
+};
+
+
+Create_materialized_view_logContext.prototype.mv_log_purge_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Mv_log_purge_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Mv_log_purge_clauseContext,i);
+ }
+};
+
+Create_materialized_view_logContext.prototype.id_expression = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Id_expressionContext);
+ } else {
+ return this.getTypedRuleContext(Id_expressionContext,i);
+ }
+};
+
+Create_materialized_view_logContext.prototype.CACHE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.CACHE);
+ } else {
+ return this.getToken(PlSqlParser.CACHE, i);
+ }
+};
+
+
+Create_materialized_view_logContext.prototype.NOCACHE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.NOCACHE);
+ } else {
+ return this.getToken(PlSqlParser.NOCACHE, i);
+ }
+};
+
+
+Create_materialized_view_logContext.prototype.OBJECT = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.OBJECT);
+ } else {
+ return this.getToken(PlSqlParser.OBJECT, i);
+ }
+};
+
+
+Create_materialized_view_logContext.prototype.ID = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.ID);
+ } else {
+ return this.getToken(PlSqlParser.ID, i);
+ }
+};
+
+
+Create_materialized_view_logContext.prototype.PRIMARY = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.PRIMARY);
+ } else {
+ return this.getToken(PlSqlParser.PRIMARY, i);
+ }
+};
+
+
+Create_materialized_view_logContext.prototype.KEY = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.KEY);
+ } else {
+ return this.getToken(PlSqlParser.KEY, i);
+ }
+};
+
+
+Create_materialized_view_logContext.prototype.ROWID = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.ROWID);
+ } else {
+ return this.getToken(PlSqlParser.ROWID, i);
+ }
+};
+
+
+Create_materialized_view_logContext.prototype.SEQUENCE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.SEQUENCE);
+ } else {
+ return this.getToken(PlSqlParser.SEQUENCE, i);
+ }
+};
+
+
+Create_materialized_view_logContext.prototype.COMMIT = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMIT);
+ } else {
+ return this.getToken(PlSqlParser.COMMIT, i);
+ }
+};
+
+
+Create_materialized_view_logContext.prototype.SCN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.SCN);
+ } else {
+ return this.getToken(PlSqlParser.SCN, i);
+ }
+};
+
+
+Create_materialized_view_logContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Create_materialized_view_logContext.prototype.regular_id = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Regular_idContext);
+ } else {
+ return this.getTypedRuleContext(Regular_idContext,i);
+ }
+};
+
+Create_materialized_view_logContext.prototype.new_values_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(New_values_clauseContext);
+ } else {
+ return this.getTypedRuleContext(New_values_clauseContext,i);
+ }
+};
+
+Create_materialized_view_logContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterCreate_materialized_view_log(this);
+ }
+};
+
+Create_materialized_view_logContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitCreate_materialized_view_log(this);
+ }
+};
+
+Create_materialized_view_logContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitCreate_materialized_view_log(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Create_materialized_view_logContext = Create_materialized_view_logContext;
+
+PlSqlParser.prototype.create_materialized_view_log = function() {
+
+ var localctx = new Create_materialized_view_logContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 502, PlSqlParser.RULE_create_materialized_view_log);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5010;
+ this.match(PlSqlParser.CREATE);
+ this.state = 5011;
+ this.match(PlSqlParser.MATERIALIZED);
+ this.state = 5012;
+ this.match(PlSqlParser.VIEW);
+ this.state = 5013;
+ this.match(PlSqlParser.LOG);
+ this.state = 5014;
+ this.match(PlSqlParser.ON);
+ this.state = 5015;
+ this.tableview_name();
+ this.state = 5025;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,515,this._ctx);
+ if(la_===1) {
+ this.state = 5021;
+ this._errHandler.sync(this);
+ var _alt = 1;
+ do {
+ switch (_alt) {
+ case 1:
+ this.state = 5021;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.INITRANS:
+ case PlSqlParser.PCTFREE:
+ case PlSqlParser.PCTUSED:
+ case PlSqlParser.STORAGE:
+ this.state = 5016;
+ this.physical_attributes_clause();
+ break;
+ case PlSqlParser.TABLESPACE:
+ this.state = 5017;
+ this.match(PlSqlParser.TABLESPACE);
+ this.state = 5018;
+ localctx.tablespace_name = this.id_expression();
+ break;
+ case PlSqlParser.FILESYSTEM_LIKE_LOGGING:
+ case PlSqlParser.LOGGING:
+ case PlSqlParser.NOLOGGING:
+ this.state = 5019;
+ this.logging_clause();
+ break;
+ case PlSqlParser.CACHE:
+ case PlSqlParser.NOCACHE:
+ this.state = 5020;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.CACHE || _la===PlSqlParser.NOCACHE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 5023;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,514, this._ctx);
+ } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
+
+ }
+ this.state = 5028;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,516,this._ctx);
+ if(la_===1) {
+ this.state = 5027;
+ this.parallel_clause();
+
+ }
+ this.state = 5069;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,525,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 5030;
+ this.match(PlSqlParser.WITH);
+ this.state = 5046;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,519,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 5032;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.COMMA) {
+ this.state = 5031;
+ this.match(PlSqlParser.COMMA);
+ }
+
+ this.state = 5042;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.OBJECT:
+ this.state = 5034;
+ this.match(PlSqlParser.OBJECT);
+ this.state = 5035;
+ this.match(PlSqlParser.ID);
+ break;
+ case PlSqlParser.PRIMARY:
+ this.state = 5036;
+ this.match(PlSqlParser.PRIMARY);
+ this.state = 5037;
+ this.match(PlSqlParser.KEY);
+ break;
+ case PlSqlParser.ROWID:
+ this.state = 5038;
+ this.match(PlSqlParser.ROWID);
+ break;
+ case PlSqlParser.SEQUENCE:
+ this.state = 5039;
+ this.match(PlSqlParser.SEQUENCE);
+ break;
+ case PlSqlParser.COMMIT:
+ this.state = 5040;
+ this.match(PlSqlParser.COMMIT);
+ this.state = 5041;
+ this.match(PlSqlParser.SCN);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ }
+ this.state = 5048;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,519,this._ctx);
+ }
+
+ this.state = 5062;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,523,this._ctx);
+ if(la_===1) {
+ this.state = 5049;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 5054;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 5051;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.COMMA) {
+ this.state = 5050;
+ this.match(PlSqlParser.COMMA);
+ }
+
+ this.state = 5053;
+ this.regular_id();
+ this.state = 5056;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while((((_la) & ~0x1f) == 0 && ((1 << _la) & ((1 << PlSqlParser.ABORT) | (1 << PlSqlParser.ABS) | (1 << PlSqlParser.ACCESS) | (1 << PlSqlParser.ACCESSED) | (1 << PlSqlParser.ACCOUNT) | (1 << PlSqlParser.ACL) | (1 << PlSqlParser.ACOS) | (1 << PlSqlParser.ACTION) | (1 << PlSqlParser.ACTIONS) | (1 << PlSqlParser.ACTIVATE) | (1 << PlSqlParser.ACTIVE) | (1 << PlSqlParser.ACTIVE_COMPONENT) | (1 << PlSqlParser.ACTIVE_DATA) | (1 << PlSqlParser.ACTIVE_FUNCTION) | (1 << PlSqlParser.ACTIVE_TAG) | (1 << PlSqlParser.ACTIVITY) | (1 << PlSqlParser.ADAPTIVE_PLAN) | (1 << PlSqlParser.ADD) | (1 << PlSqlParser.ADD_COLUMN) | (1 << PlSqlParser.ADD_GROUP) | (1 << PlSqlParser.ADD_MONTHS) | (1 << PlSqlParser.ADJ_DATE) | (1 << PlSqlParser.ADMIN) | (1 << PlSqlParser.ADMINISTER) | (1 << PlSqlParser.ADMINISTRATOR) | (1 << PlSqlParser.ADVANCED) | (1 << PlSqlParser.ADVISE) | (1 << PlSqlParser.ADVISOR) | (1 << PlSqlParser.AFD_DISKSTRING) | (1 << PlSqlParser.AFTER) | (1 << PlSqlParser.AGENT))) !== 0) || ((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (PlSqlParser.AGGREGATE - 32)) | (1 << (PlSqlParser.A_LETTER - 32)) | (1 << (PlSqlParser.ALIAS - 32)) | (1 << (PlSqlParser.ALLOCATE - 32)) | (1 << (PlSqlParser.ALLOW - 32)) | (1 << (PlSqlParser.ALL_ROWS - 32)) | (1 << (PlSqlParser.ALWAYS - 32)) | (1 << (PlSqlParser.ANALYZE - 32)) | (1 << (PlSqlParser.ANCILLARY - 32)) | (1 << (PlSqlParser.AND_EQUAL - 32)) | (1 << (PlSqlParser.ANOMALY - 32)) | (1 << (PlSqlParser.ANSI_REARCH - 32)) | (1 << (PlSqlParser.ANTIJOIN - 32)) | (1 << (PlSqlParser.ANYSCHEMA - 32)) | (1 << (PlSqlParser.APPEND - 32)) | (1 << (PlSqlParser.APPENDCHILDXML - 32)) | (1 << (PlSqlParser.APPEND_VALUES - 32)) | (1 << (PlSqlParser.APPLICATION - 32)) | (1 << (PlSqlParser.APPLY - 32)) | (1 << (PlSqlParser.APPROX_COUNT_DISTINCT - 32)) | (1 << (PlSqlParser.ARCHIVAL - 32)) | (1 << (PlSqlParser.ARCHIVE - 32)) | (1 << (PlSqlParser.ARCHIVED - 32)) | (1 << (PlSqlParser.ARCHIVELOG - 32)) | (1 << (PlSqlParser.ARRAY - 32)) | (1 << (PlSqlParser.ASCII - 32)))) !== 0) || ((((_la - 64)) & ~0x1f) == 0 && ((1 << (_la - 64)) & ((1 << (PlSqlParser.ASCIISTR - 64)) | (1 << (PlSqlParser.ASIN - 64)) | (1 << (PlSqlParser.ASIS - 64)) | (1 << (PlSqlParser.ASSEMBLY - 64)) | (1 << (PlSqlParser.ASSIGN - 64)) | (1 << (PlSqlParser.ASSOCIATE - 64)) | (1 << (PlSqlParser.ASYNC - 64)) | (1 << (PlSqlParser.ASYNCHRONOUS - 64)) | (1 << (PlSqlParser.ATAN2 - 64)) | (1 << (PlSqlParser.ATAN - 64)) | (1 << (PlSqlParser.AT - 64)) | (1 << (PlSqlParser.ATTRIBUTE - 64)) | (1 << (PlSqlParser.ATTRIBUTES - 64)) | (1 << (PlSqlParser.AUTHENTICATED - 64)) | (1 << (PlSqlParser.AUTHENTICATION - 64)) | (1 << (PlSqlParser.AUTHID - 64)) | (1 << (PlSqlParser.AUTHORIZATION - 64)) | (1 << (PlSqlParser.AUTOALLOCATE - 64)) | (1 << (PlSqlParser.AUTO - 64)) | (1 << (PlSqlParser.AUTOEXTEND - 64)) | (1 << (PlSqlParser.AUTO_LOGIN - 64)) | (1 << (PlSqlParser.AUTOMATIC - 64)) | (1 << (PlSqlParser.AUTONOMOUS_TRANSACTION - 64)) | (1 << (PlSqlParser.AUTO_REOPTIMIZE - 64)) | (1 << (PlSqlParser.AVAILABILITY - 64)) | (1 << (PlSqlParser.AVRO - 64)) | (1 << (PlSqlParser.BACKGROUND - 64)) | (1 << (PlSqlParser.BACKUP - 64)) | (1 << (PlSqlParser.BASIC - 64)))) !== 0) || ((((_la - 96)) & ~0x1f) == 0 && ((1 << (_la - 96)) & ((1 << (PlSqlParser.BASICFILE - 96)) | (1 << (PlSqlParser.BATCH - 96)) | (1 << (PlSqlParser.BATCHSIZE - 96)) | (1 << (PlSqlParser.BATCH_TABLE_ACCESS_BY_ROWID - 96)) | (1 << (PlSqlParser.BECOME - 96)) | (1 << (PlSqlParser.BEFORE - 96)) | (1 << (PlSqlParser.BEGIN - 96)) | (1 << (PlSqlParser.BEGINNING - 96)) | (1 << (PlSqlParser.BEGIN_OUTLINE_DATA - 96)) | (1 << (PlSqlParser.BEHALF - 96)) | (1 << (PlSqlParser.BEQUEATH - 96)) | (1 << (PlSqlParser.BFILE - 96)) | (1 << (PlSqlParser.BFILENAME - 96)) | (1 << (PlSqlParser.BIGFILE - 96)) | (1 << (PlSqlParser.BINARY - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE_INFINITY - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE_NAN - 96)) | (1 << (PlSqlParser.BINARY_FLOAT - 96)) | (1 << (PlSqlParser.BINARY_FLOAT_INFINITY - 96)) | (1 << (PlSqlParser.BINARY_FLOAT_NAN - 96)) | (1 << (PlSqlParser.BINARY_INTEGER - 96)) | (1 << (PlSqlParser.BIND_AWARE - 96)) | (1 << (PlSqlParser.BINDING - 96)) | (1 << (PlSqlParser.BIN_TO_NUM - 96)) | (1 << (PlSqlParser.BITAND - 96)) | (1 << (PlSqlParser.BITMAP_AND - 96)) | (1 << (PlSqlParser.BITMAP - 96)) | (1 << (PlSqlParser.BITMAPS - 96)) | (1 << (PlSqlParser.BITMAP_TREE - 96)) | (1 << (PlSqlParser.BITS - 96)))) !== 0) || ((((_la - 128)) & ~0x1f) == 0 && ((1 << (_la - 128)) & ((1 << (PlSqlParser.BLOB - 128)) | (1 << (PlSqlParser.BLOCK - 128)) | (1 << (PlSqlParser.BLOCK_RANGE - 128)) | (1 << (PlSqlParser.BLOCKS - 128)) | (1 << (PlSqlParser.BLOCKSIZE - 128)) | (1 << (PlSqlParser.BODY - 128)) | (1 << (PlSqlParser.BOOLEAN - 128)) | (1 << (PlSqlParser.BOTH - 128)) | (1 << (PlSqlParser.BOUND - 128)) | (1 << (PlSqlParser.BRANCH - 128)) | (1 << (PlSqlParser.BREADTH - 128)) | (1 << (PlSqlParser.BROADCAST - 128)) | (1 << (PlSqlParser.BSON - 128)) | (1 << (PlSqlParser.BUFFER - 128)) | (1 << (PlSqlParser.BUFFER_CACHE - 128)) | (1 << (PlSqlParser.BUFFER_POOL - 128)) | (1 << (PlSqlParser.BUILD - 128)) | (1 << (PlSqlParser.BULK - 128)) | (1 << (PlSqlParser.BYPASS_RECURSIVE_CHECK - 128)) | (1 << (PlSqlParser.BYPASS_UJVC - 128)) | (1 << (PlSqlParser.BYTE - 128)) | (1 << (PlSqlParser.CACHE - 128)) | (1 << (PlSqlParser.CACHE_CB - 128)) | (1 << (PlSqlParser.CACHE_INSTANCES - 128)) | (1 << (PlSqlParser.CACHE_TEMP_TABLE - 128)) | (1 << (PlSqlParser.CACHING - 128)) | (1 << (PlSqlParser.CALCULATED - 128)) | (1 << (PlSqlParser.CALLBACK - 128)) | (1 << (PlSqlParser.CALL - 128)) | (1 << (PlSqlParser.CANCEL - 128)))) !== 0) || ((((_la - 160)) & ~0x1f) == 0 && ((1 << (_la - 160)) & ((1 << (PlSqlParser.CAPACITY - 160)) | (1 << (PlSqlParser.CARDINALITY - 160)) | (1 << (PlSqlParser.CASCADE - 160)) | (1 << (PlSqlParser.CASE - 160)) | (1 << (PlSqlParser.CAST - 160)) | (1 << (PlSqlParser.CATEGORY - 160)) | (1 << (PlSqlParser.CDBDEFAULT - 160)) | (1 << (PlSqlParser.CEIL - 160)) | (1 << (PlSqlParser.CELL_FLASH_CACHE - 160)) | (1 << (PlSqlParser.CERTIFICATE - 160)) | (1 << (PlSqlParser.CFILE - 160)) | (1 << (PlSqlParser.CHAINED - 160)) | (1 << (PlSqlParser.CHANGE - 160)) | (1 << (PlSqlParser.CHANGE_DUPKEY_ERROR_INDEX - 160)) | (1 << (PlSqlParser.CHARACTER - 160)) | (1 << (PlSqlParser.CHAR - 160)) | (1 << (PlSqlParser.CHAR_CS - 160)) | (1 << (PlSqlParser.CHARTOROWID - 160)) | (1 << (PlSqlParser.CHECK_ACL_REWRITE - 160)) | (1 << (PlSqlParser.CHECKPOINT - 160)) | (1 << (PlSqlParser.CHILD - 160)) | (1 << (PlSqlParser.CHOOSE - 160)) | (1 << (PlSqlParser.CHR - 160)) | (1 << (PlSqlParser.CHUNK - 160)) | (1 << (PlSqlParser.CLASS - 160)) | (1 << (PlSqlParser.CLASSIFIER - 160)) | (1 << (PlSqlParser.CLEANUP - 160)) | (1 << (PlSqlParser.CLEAR - 160)) | (1 << (PlSqlParser.C_LETTER - 160)) | (1 << (PlSqlParser.CLIENT - 160)))) !== 0) || ((((_la - 192)) & ~0x1f) == 0 && ((1 << (_la - 192)) & ((1 << (PlSqlParser.CLOB - 192)) | (1 << (PlSqlParser.CLONE - 192)) | (1 << (PlSqlParser.CLOSE_CACHED_OPEN_CURSORS - 192)) | (1 << (PlSqlParser.CLOSE - 192)) | (1 << (PlSqlParser.CLUSTER_BY_ROWID - 192)) | (1 << (PlSqlParser.CLUSTER - 192)) | (1 << (PlSqlParser.CLUSTER_DETAILS - 192)) | (1 << (PlSqlParser.CLUSTER_DISTANCE - 192)) | (1 << (PlSqlParser.CLUSTER_ID - 192)) | (1 << (PlSqlParser.CLUSTERING - 192)) | (1 << (PlSqlParser.CLUSTERING_FACTOR - 192)) | (1 << (PlSqlParser.CLUSTER_PROBABILITY - 192)) | (1 << (PlSqlParser.CLUSTER_SET - 192)) | (1 << (PlSqlParser.COALESCE - 192)) | (1 << (PlSqlParser.COALESCE_SQ - 192)) | (1 << (PlSqlParser.COARSE - 192)) | (1 << (PlSqlParser.CO_AUTH_IND - 192)) | (1 << (PlSqlParser.COLD - 192)) | (1 << (PlSqlParser.COLLECT - 192)) | (1 << (PlSqlParser.COLUMNAR - 192)) | (1 << (PlSqlParser.COLUMN_AUTH_INDICATOR - 192)) | (1 << (PlSqlParser.COLUMN - 192)) | (1 << (PlSqlParser.COLUMNS - 192)) | (1 << (PlSqlParser.COLUMN_STATS - 192)) | (1 << (PlSqlParser.COLUMN_VALUE - 192)) | (1 << (PlSqlParser.COMMENT - 192)) | (1 << (PlSqlParser.COMMIT - 192)) | (1 << (PlSqlParser.COMMITTED - 192)) | (1 << (PlSqlParser.COMMON_DATA - 192)) | (1 << (PlSqlParser.COMPACT - 192)) | (1 << (PlSqlParser.COMPATIBILITY - 192)) | (1 << (PlSqlParser.COMPILE - 192)))) !== 0) || ((((_la - 224)) & ~0x1f) == 0 && ((1 << (_la - 224)) & ((1 << (PlSqlParser.COMPLETE - 224)) | (1 << (PlSqlParser.COMPLIANCE - 224)) | (1 << (PlSqlParser.COMPONENT - 224)) | (1 << (PlSqlParser.COMPONENTS - 224)) | (1 << (PlSqlParser.COMPOSE - 224)) | (1 << (PlSqlParser.COMPOSITE - 224)) | (1 << (PlSqlParser.COMPOSITE_LIMIT - 224)) | (1 << (PlSqlParser.COMPOUND - 224)) | (1 << (PlSqlParser.COMPUTE - 224)) | (1 << (PlSqlParser.CONCAT - 224)) | (1 << (PlSqlParser.CON_DBID_TO_ID - 224)) | (1 << (PlSqlParser.CONDITIONAL - 224)) | (1 << (PlSqlParser.CONDITION - 224)) | (1 << (PlSqlParser.CONFIRM - 224)) | (1 << (PlSqlParser.CONFORMING - 224)) | (1 << (PlSqlParser.CON_GUID_TO_ID - 224)) | (1 << (PlSqlParser.CON_ID - 224)) | (1 << (PlSqlParser.CON_NAME_TO_ID - 224)) | (1 << (PlSqlParser.CONNECT_BY_CB_WHR_ONLY - 224)) | (1 << (PlSqlParser.CONNECT_BY_COMBINE_SW - 224)) | (1 << (PlSqlParser.CONNECT_BY_COST_BASED - 224)) | (1 << (PlSqlParser.CONNECT_BY_ELIM_DUPS - 224)) | (1 << (PlSqlParser.CONNECT_BY_FILTERING - 224)) | (1 << (PlSqlParser.CONNECT_BY_ISCYCLE - 224)) | (1 << (PlSqlParser.CONNECT_BY_ISLEAF - 224)) | (1 << (PlSqlParser.CONNECT_BY_ROOT - 224)) | (1 << (PlSqlParser.CONNECT_TIME - 224)) | (1 << (PlSqlParser.CONSIDER - 224)) | (1 << (PlSqlParser.CONSISTENT - 224)) | (1 << (PlSqlParser.CONSTANT - 224)))) !== 0) || ((((_la - 256)) & ~0x1f) == 0 && ((1 << (_la - 256)) & ((1 << (PlSqlParser.CONST - 256)) | (1 << (PlSqlParser.CONSTRAINT - 256)) | (1 << (PlSqlParser.CONSTRAINTS - 256)) | (1 << (PlSqlParser.CONSTRUCTOR - 256)) | (1 << (PlSqlParser.CONTAINER - 256)) | (1 << (PlSqlParser.CONTAINER_DATA - 256)) | (1 << (PlSqlParser.CONTAINERS - 256)) | (1 << (PlSqlParser.CONTENT - 256)) | (1 << (PlSqlParser.CONTENTS - 256)) | (1 << (PlSqlParser.CONTEXT - 256)) | (1 << (PlSqlParser.CONTINUE - 256)) | (1 << (PlSqlParser.CONTROLFILE - 256)) | (1 << (PlSqlParser.CON_UID_TO_ID - 256)) | (1 << (PlSqlParser.CONVERT - 256)) | (1 << (PlSqlParser.COOKIE - 256)) | (1 << (PlSqlParser.COPY - 256)) | (1 << (PlSqlParser.CORR_K - 256)) | (1 << (PlSqlParser.CORR_S - 256)) | (1 << (PlSqlParser.CORRUPTION - 256)) | (1 << (PlSqlParser.CORRUPT_XID_ALL - 256)) | (1 << (PlSqlParser.CORRUPT_XID - 256)) | (1 << (PlSqlParser.COS - 256)) | (1 << (PlSqlParser.COSH - 256)) | (1 << (PlSqlParser.COST - 256)) | (1 << (PlSqlParser.COST_XML_QUERY_REWRITE - 256)) | (1 << (PlSqlParser.COUNT - 256)) | (1 << (PlSqlParser.COVAR_POP - 256)) | (1 << (PlSqlParser.COVAR_SAMP - 256)) | (1 << (PlSqlParser.CPU_COSTING - 256)) | (1 << (PlSqlParser.CPU_PER_CALL - 256)) | (1 << (PlSqlParser.CPU_PER_SESSION - 256)) | (1 << (PlSqlParser.CRASH - 256)))) !== 0) || ((((_la - 289)) & ~0x1f) == 0 && ((1 << (_la - 289)) & ((1 << (PlSqlParser.CREATE_FILE_DEST - 289)) | (1 << (PlSqlParser.CREATE_STORED_OUTLINES - 289)) | (1 << (PlSqlParser.CREATION - 289)) | (1 << (PlSqlParser.CREDENTIAL - 289)) | (1 << (PlSqlParser.CRITICAL - 289)) | (1 << (PlSqlParser.CROSS - 289)) | (1 << (PlSqlParser.CROSSEDITION - 289)) | (1 << (PlSqlParser.CSCONVERT - 289)) | (1 << (PlSqlParser.CUBE_AJ - 289)) | (1 << (PlSqlParser.CUBE - 289)) | (1 << (PlSqlParser.CUBE_GB - 289)) | (1 << (PlSqlParser.CUBE_SJ - 289)) | (1 << (PlSqlParser.CUME_DISTM - 289)) | (1 << (PlSqlParser.CURRENT - 289)) | (1 << (PlSqlParser.CURRENT_DATE - 289)) | (1 << (PlSqlParser.CURRENT_SCHEMA - 289)) | (1 << (PlSqlParser.CURRENT_TIME - 289)) | (1 << (PlSqlParser.CURRENT_TIMESTAMP - 289)) | (1 << (PlSqlParser.CURRENT_USER - 289)) | (1 << (PlSqlParser.CURRENTV - 289)) | (1 << (PlSqlParser.CURSOR - 289)) | (1 << (PlSqlParser.CURSOR_SHARING_EXACT - 289)) | (1 << (PlSqlParser.CURSOR_SPECIFIC_SEGMENT - 289)) | (1 << (PlSqlParser.CUSTOMDATUM - 289)) | (1 << (PlSqlParser.CV - 289)) | (1 << (PlSqlParser.CYCLE - 289)) | (1 << (PlSqlParser.DANGLING - 289)) | (1 << (PlSqlParser.DATABASE - 289)) | (1 << (PlSqlParser.DATA - 289)) | (1 << (PlSqlParser.DATAFILE - 289)) | (1 << (PlSqlParser.DATAFILES - 289)))) !== 0) || ((((_la - 321)) & ~0x1f) == 0 && ((1 << (_la - 321)) & ((1 << (PlSqlParser.DATAMOVEMENT - 321)) | (1 << (PlSqlParser.DATAOBJNO - 321)) | (1 << (PlSqlParser.DATAOBJ_TO_MAT_PARTITION - 321)) | (1 << (PlSqlParser.DATAOBJ_TO_PARTITION - 321)) | (1 << (PlSqlParser.DATAPUMP - 321)) | (1 << (PlSqlParser.DATA_SECURITY_REWRITE_LIMIT - 321)) | (1 << (PlSqlParser.DATE_MODE - 321)) | (1 << (PlSqlParser.DAY - 321)) | (1 << (PlSqlParser.DAYS - 321)) | (1 << (PlSqlParser.DBA - 321)) | (1 << (PlSqlParser.DBA_RECYCLEBIN - 321)) | (1 << (PlSqlParser.DBMS_STATS - 321)) | (1 << (PlSqlParser.DB_ROLE_CHANGE - 321)) | (1 << (PlSqlParser.DBTIMEZONE - 321)) | (1 << (PlSqlParser.DB_UNIQUE_NAME - 321)) | (1 << (PlSqlParser.DB_VERSION - 321)) | (1 << (PlSqlParser.DDL - 321)) | (1 << (PlSqlParser.DEALLOCATE - 321)) | (1 << (PlSqlParser.DEBUG - 321)) | (1 << (PlSqlParser.DEBUGGER - 321)) | (1 << (PlSqlParser.DEC - 321)) | (1 << (PlSqlParser.DECIMAL - 321)) | (1 << (PlSqlParser.DECLARE - 321)) | (1 << (PlSqlParser.DECOMPOSE - 321)) | (1 << (PlSqlParser.DECORRELATE - 321)) | (1 << (PlSqlParser.DECR - 321)) | (1 << (PlSqlParser.DECREMENT - 321)) | (1 << (PlSqlParser.DECRYPT - 321)) | (1 << (PlSqlParser.DEDUPLICATE - 321)) | (1 << (PlSqlParser.DEFAULTS - 321)))) !== 0) || ((((_la - 353)) & ~0x1f) == 0 && ((1 << (_la - 353)) & ((1 << (PlSqlParser.DEFERRABLE - 353)) | (1 << (PlSqlParser.DEFERRED - 353)) | (1 << (PlSqlParser.DEFINED - 353)) | (1 << (PlSqlParser.DEFINE - 353)) | (1 << (PlSqlParser.DEFINER - 353)) | (1 << (PlSqlParser.DEGREE - 353)) | (1 << (PlSqlParser.DELAY - 353)) | (1 << (PlSqlParser.DELEGATE - 353)) | (1 << (PlSqlParser.DELETE_ALL - 353)) | (1 << (PlSqlParser.DELETE - 353)) | (1 << (PlSqlParser.DELETEXML - 353)) | (1 << (PlSqlParser.DEMAND - 353)) | (1 << (PlSqlParser.DENSE_RANKM - 353)) | (1 << (PlSqlParser.DEPENDENT - 353)) | (1 << (PlSqlParser.DEPTH - 353)) | (1 << (PlSqlParser.DEQUEUE - 353)) | (1 << (PlSqlParser.DEREF - 353)) | (1 << (PlSqlParser.DEREF_NO_REWRITE - 353)) | (1 << (PlSqlParser.DESTROY - 353)) | (1 << (PlSqlParser.DETACHED - 353)) | (1 << (PlSqlParser.DETERMINES - 353)) | (1 << (PlSqlParser.DETERMINISTIC - 353)) | (1 << (PlSqlParser.DICTIONARY - 353)) | (1 << (PlSqlParser.DIMENSION - 353)) | (1 << (PlSqlParser.DIMENSIONS - 353)) | (1 << (PlSqlParser.DIRECT_LOAD - 353)) | (1 << (PlSqlParser.DIRECTORY - 353)) | (1 << (PlSqlParser.DIRECT_PATH - 353)) | (1 << (PlSqlParser.DISABLE_ALL - 353)) | (1 << (PlSqlParser.DISABLE - 353)) | (1 << (PlSqlParser.DISABLE_PARALLEL_DML - 353)))) !== 0) || ((((_la - 385)) & ~0x1f) == 0 && ((1 << (_la - 385)) & ((1 << (PlSqlParser.DISABLE_PRESET - 385)) | (1 << (PlSqlParser.DISABLE_RPKE - 385)) | (1 << (PlSqlParser.DISALLOW - 385)) | (1 << (PlSqlParser.DISASSOCIATE - 385)) | (1 << (PlSqlParser.DISCARD - 385)) | (1 << (PlSqlParser.DISCONNECT - 385)) | (1 << (PlSqlParser.DISK - 385)) | (1 << (PlSqlParser.DISKGROUP - 385)) | (1 << (PlSqlParser.DISKS - 385)) | (1 << (PlSqlParser.DISMOUNT - 385)) | (1 << (PlSqlParser.DISTINGUISHED - 385)) | (1 << (PlSqlParser.DISTRIBUTED - 385)) | (1 << (PlSqlParser.DISTRIBUTE - 385)) | (1 << (PlSqlParser.DML - 385)) | (1 << (PlSqlParser.DML_UPDATE - 385)) | (1 << (PlSqlParser.DOCFIDELITY - 385)) | (1 << (PlSqlParser.DOCUMENT - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_FILTER - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_NO_SORT - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_SORT - 385)) | (1 << (PlSqlParser.DOUBLE - 385)) | (1 << (PlSqlParser.DOWNGRADE - 385)) | (1 << (PlSqlParser.DRIVING_SITE - 385)) | (1 << (PlSqlParser.DROP_COLUMN - 385)) | (1 << (PlSqlParser.DROP_GROUP - 385)) | (1 << (PlSqlParser.DSINTERVAL_UNCONSTRAINED - 385)) | (1 << (PlSqlParser.DST_UPGRADE_INSERT_CONV - 385)) | (1 << (PlSqlParser.DUMP - 385)))) !== 0) || ((((_la - 417)) & ~0x1f) == 0 && ((1 << (_la - 417)) & ((1 << (PlSqlParser.DUPLICATE - 417)) | (1 << (PlSqlParser.DV - 417)) | (1 << (PlSqlParser.DYNAMIC - 417)) | (1 << (PlSqlParser.DYNAMIC_SAMPLING - 417)) | (1 << (PlSqlParser.DYNAMIC_SAMPLING_EST_CDN - 417)) | (1 << (PlSqlParser.EACH - 417)) | (1 << (PlSqlParser.EDITIONABLE - 417)) | (1 << (PlSqlParser.EDITION - 417)) | (1 << (PlSqlParser.EDITIONING - 417)) | (1 << (PlSqlParser.EDITIONS - 417)) | (1 << (PlSqlParser.ELEMENT - 417)) | (1 << (PlSqlParser.ELIM_GROUPBY - 417)) | (1 << (PlSqlParser.ELIMINATE_JOIN - 417)) | (1 << (PlSqlParser.ELIMINATE_OBY - 417)) | (1 << (PlSqlParser.ELIMINATE_OUTER_JOIN - 417)) | (1 << (PlSqlParser.EM - 417)) | (1 << (PlSqlParser.EMPTY_BLOB - 417)) | (1 << (PlSqlParser.EMPTY_CLOB - 417)) | (1 << (PlSqlParser.EMPTY - 417)) | (1 << (PlSqlParser.ENABLE_ALL - 417)) | (1 << (PlSqlParser.ENABLE - 417)) | (1 << (PlSqlParser.ENABLE_PARALLEL_DML - 417)) | (1 << (PlSqlParser.ENABLE_PRESET - 417)) | (1 << (PlSqlParser.ENCODING - 417)) | (1 << (PlSqlParser.ENCRYPT - 417)) | (1 << (PlSqlParser.ENCRYPTION - 417)) | (1 << (PlSqlParser.END_OUTLINE_DATA - 417)) | (1 << (PlSqlParser.ENFORCED - 417)) | (1 << (PlSqlParser.ENFORCE - 417)))) !== 0) || ((((_la - 449)) & ~0x1f) == 0 && ((1 << (_la - 449)) & ((1 << (PlSqlParser.ENQUEUE - 449)) | (1 << (PlSqlParser.ENTERPRISE - 449)) | (1 << (PlSqlParser.ENTITYESCAPING - 449)) | (1 << (PlSqlParser.ENTRY - 449)) | (1 << (PlSqlParser.EQUIPART - 449)) | (1 << (PlSqlParser.ERR - 449)) | (1 << (PlSqlParser.ERROR_ARGUMENT - 449)) | (1 << (PlSqlParser.ERROR - 449)) | (1 << (PlSqlParser.ERROR_ON_OVERLAP_TIME - 449)) | (1 << (PlSqlParser.ERRORS - 449)) | (1 << (PlSqlParser.ESCAPE - 449)) | (1 << (PlSqlParser.ESTIMATE - 449)) | (1 << (PlSqlParser.EVAL - 449)) | (1 << (PlSqlParser.EVALNAME - 449)) | (1 << (PlSqlParser.EVALUATE - 449)) | (1 << (PlSqlParser.EVALUATION - 449)) | (1 << (PlSqlParser.EVENTS - 449)) | (1 << (PlSqlParser.EVERY - 449)) | (1 << (PlSqlParser.EXCEPT - 449)) | (1 << (PlSqlParser.EXCEPTION - 449)) | (1 << (PlSqlParser.EXCEPTION_INIT - 449)) | (1 << (PlSqlParser.EXCEPTIONS - 449)) | (1 << (PlSqlParser.EXCHANGE - 449)) | (1 << (PlSqlParser.EXCLUDE - 449)) | (1 << (PlSqlParser.EXCLUDING - 449)) | (1 << (PlSqlParser.EXECUTE - 449)) | (1 << (PlSqlParser.EXEMPT - 449)) | (1 << (PlSqlParser.EXISTING - 449)) | (1 << (PlSqlParser.EXISTS - 449)) | (1 << (PlSqlParser.EXISTSNODE - 449)) | (1 << (PlSqlParser.EXIT - 449)))) !== 0) || ((((_la - 481)) & ~0x1f) == 0 && ((1 << (_la - 481)) & ((1 << (PlSqlParser.EXPAND_GSET_TO_UNION - 481)) | (1 << (PlSqlParser.EXPAND_TABLE - 481)) | (1 << (PlSqlParser.EXP - 481)) | (1 << (PlSqlParser.EXPIRE - 481)) | (1 << (PlSqlParser.EXPLAIN - 481)) | (1 << (PlSqlParser.EXPLOSION - 481)) | (1 << (PlSqlParser.EXPORT - 481)) | (1 << (PlSqlParser.EXPR_CORR_CHECK - 481)) | (1 << (PlSqlParser.EXPRESS - 481)) | (1 << (PlSqlParser.EXTENDS - 481)) | (1 << (PlSqlParser.EXTENT - 481)) | (1 << (PlSqlParser.EXTENTS - 481)) | (1 << (PlSqlParser.EXTERNAL - 481)) | (1 << (PlSqlParser.EXTERNALLY - 481)) | (1 << (PlSqlParser.EXTRACTCLOBXML - 481)) | (1 << (PlSqlParser.EXTRACT - 481)) | (1 << (PlSqlParser.EXTRACTVALUE - 481)) | (1 << (PlSqlParser.EXTRA - 481)) | (1 << (PlSqlParser.FACILITY - 481)) | (1 << (PlSqlParser.FACT - 481)) | (1 << (PlSqlParser.FACTOR - 481)) | (1 << (PlSqlParser.FACTORIZE_JOIN - 481)) | (1 << (PlSqlParser.FAILED - 481)) | (1 << (PlSqlParser.FAILED_LOGIN_ATTEMPTS - 481)) | (1 << (PlSqlParser.FAILGROUP - 481)) | (1 << (PlSqlParser.FAILOVER - 481)) | (1 << (PlSqlParser.FAILURE - 481)) | (1 << (PlSqlParser.FALSE - 481)) | (1 << (PlSqlParser.FAMILY - 481)) | (1 << (PlSqlParser.FAR - 481)) | (1 << (PlSqlParser.FAST - 481)) | (1 << (PlSqlParser.FASTSTART - 481)))) !== 0) || ((((_la - 513)) & ~0x1f) == 0 && ((1 << (_la - 513)) & ((1 << (PlSqlParser.FBTSCAN - 513)) | (1 << (PlSqlParser.FEATURE_DETAILS - 513)) | (1 << (PlSqlParser.FEATURE_ID - 513)) | (1 << (PlSqlParser.FEATURE_SET - 513)) | (1 << (PlSqlParser.FEATURE_VALUE - 513)) | (1 << (PlSqlParser.FETCH - 513)) | (1 << (PlSqlParser.FILE - 513)) | (1 << (PlSqlParser.FILE_NAME_CONVERT - 513)) | (1 << (PlSqlParser.FILESYSTEM_LIKE_LOGGING - 513)) | (1 << (PlSqlParser.FILTER - 513)) | (1 << (PlSqlParser.FINAL - 513)) | (1 << (PlSqlParser.FINE - 513)) | (1 << (PlSqlParser.FINISH - 513)) | (1 << (PlSqlParser.FIRST - 513)) | (1 << (PlSqlParser.FIRSTM - 513)) | (1 << (PlSqlParser.FIRST_ROWS - 513)) | (1 << (PlSqlParser.FIRST_VALUE - 513)) | (1 << (PlSqlParser.FIXED_VIEW_DATA - 513)) | (1 << (PlSqlParser.FLAGGER - 513)) | (1 << (PlSqlParser.FLASHBACK - 513)) | (1 << (PlSqlParser.FLASH_CACHE - 513)) | (1 << (PlSqlParser.FLOAT - 513)) | (1 << (PlSqlParser.FLOB - 513)) | (1 << (PlSqlParser.FLOOR - 513)) | (1 << (PlSqlParser.FLUSH - 513)) | (1 << (PlSqlParser.FOLDER - 513)) | (1 << (PlSqlParser.FOLLOWING - 513)) | (1 << (PlSqlParser.FOLLOWS - 513)) | (1 << (PlSqlParser.FORALL - 513)) | (1 << (PlSqlParser.FORCE - 513)) | (1 << (PlSqlParser.FORCE_XML_QUERY_REWRITE - 513)) | (1 << (PlSqlParser.FOREIGN - 513)))) !== 0) || ((((_la - 545)) & ~0x1f) == 0 && ((1 << (_la - 545)) & ((1 << (PlSqlParser.FOREVER - 545)) | (1 << (PlSqlParser.FORMAT - 545)) | (1 << (PlSqlParser.FORWARD - 545)) | (1 << (PlSqlParser.FRAGMENT_NUMBER - 545)) | (1 << (PlSqlParser.FREELIST - 545)) | (1 << (PlSqlParser.FREELISTS - 545)) | (1 << (PlSqlParser.FREEPOOLS - 545)) | (1 << (PlSqlParser.FRESH - 545)) | (1 << (PlSqlParser.FROM_TZ - 545)) | (1 << (PlSqlParser.FULL - 545)) | (1 << (PlSqlParser.FULL_OUTER_JOIN_TO_OUTER - 545)) | (1 << (PlSqlParser.FUNCTION - 545)) | (1 << (PlSqlParser.FUNCTIONS - 545)) | (1 << (PlSqlParser.GATHER_OPTIMIZER_STATISTICS - 545)) | (1 << (PlSqlParser.GATHER_PLAN_STATISTICS - 545)) | (1 << (PlSqlParser.GBY_CONC_ROLLUP - 545)) | (1 << (PlSqlParser.GBY_PUSHDOWN - 545)) | (1 << (PlSqlParser.GENERATED - 545)) | (1 << (PlSqlParser.GET - 545)) | (1 << (PlSqlParser.GLOBAL - 545)) | (1 << (PlSqlParser.GLOBALLY - 545)) | (1 << (PlSqlParser.GLOBAL_NAME - 545)) | (1 << (PlSqlParser.GLOBAL_TOPIC_ENABLED - 545)) | (1 << (PlSqlParser.GROUP_BY - 545)) | (1 << (PlSqlParser.GROUP_ID - 545)) | (1 << (PlSqlParser.GROUPING - 545)) | (1 << (PlSqlParser.GROUPING_ID - 545)))) !== 0) || ((((_la - 577)) & ~0x1f) == 0 && ((1 << (_la - 577)) & ((1 << (PlSqlParser.GROUPS - 577)) | (1 << (PlSqlParser.GUARANTEED - 577)) | (1 << (PlSqlParser.GUARANTEE - 577)) | (1 << (PlSqlParser.GUARD - 577)) | (1 << (PlSqlParser.HASH_AJ - 577)) | (1 << (PlSqlParser.HASH - 577)) | (1 << (PlSqlParser.HASHKEYS - 577)) | (1 << (PlSqlParser.HASH_SJ - 577)) | (1 << (PlSqlParser.HEADER - 577)) | (1 << (PlSqlParser.HEAP - 577)) | (1 << (PlSqlParser.HELP - 577)) | (1 << (PlSqlParser.HEXTORAW - 577)) | (1 << (PlSqlParser.HEXTOREF - 577)) | (1 << (PlSqlParser.HIDDEN_KEYWORD - 577)) | (1 << (PlSqlParser.HIDE - 577)) | (1 << (PlSqlParser.HIERARCHY - 577)) | (1 << (PlSqlParser.HIGH - 577)) | (1 << (PlSqlParser.HINTSET_BEGIN - 577)) | (1 << (PlSqlParser.HINTSET_END - 577)) | (1 << (PlSqlParser.HOT - 577)) | (1 << (PlSqlParser.HOUR - 577)) | (1 << (PlSqlParser.HWM_BROKERED - 577)) | (1 << (PlSqlParser.HYBRID - 577)) | (1 << (PlSqlParser.IDENTIFIER - 577)) | (1 << (PlSqlParser.IDENTITY - 577)) | (1 << (PlSqlParser.IDGENERATORS - 577)) | (1 << (PlSqlParser.ID - 577)) | (1 << (PlSqlParser.IDLE_TIME - 577)) | (1 << (PlSqlParser.IF - 577)) | (1 << (PlSqlParser.IGNORE - 577)))) !== 0) || ((((_la - 609)) & ~0x1f) == 0 && ((1 << (_la - 609)) & ((1 << (PlSqlParser.IGNORE_OPTIM_EMBEDDED_HINTS - 609)) | (1 << (PlSqlParser.IGNORE_ROW_ON_DUPKEY_INDEX - 609)) | (1 << (PlSqlParser.IGNORE_WHERE_CLAUSE - 609)) | (1 << (PlSqlParser.ILM - 609)) | (1 << (PlSqlParser.IMMEDIATE - 609)) | (1 << (PlSqlParser.IMPACT - 609)) | (1 << (PlSqlParser.IMPORT - 609)) | (1 << (PlSqlParser.INACTIVE - 609)) | (1 << (PlSqlParser.INCLUDE - 609)) | (1 << (PlSqlParser.INCLUDE_VERSION - 609)) | (1 << (PlSqlParser.INCLUDING - 609)) | (1 << (PlSqlParser.INCREMENTAL - 609)) | (1 << (PlSqlParser.INCREMENT - 609)) | (1 << (PlSqlParser.INCR - 609)) | (1 << (PlSqlParser.INDENT - 609)) | (1 << (PlSqlParser.INDEX_ASC - 609)) | (1 << (PlSqlParser.INDEX_COMBINE - 609)) | (1 << (PlSqlParser.INDEX_DESC - 609)) | (1 << (PlSqlParser.INDEXED - 609)) | (1 << (PlSqlParser.INDEXES - 609)) | (1 << (PlSqlParser.INDEX_FFS - 609)) | (1 << (PlSqlParser.INDEX_FILTER - 609)) | (1 << (PlSqlParser.INDEXING - 609)) | (1 << (PlSqlParser.INDEX_JOIN - 609)) | (1 << (PlSqlParser.INDEX_ROWS - 609)) | (1 << (PlSqlParser.INDEX_RRS - 609)) | (1 << (PlSqlParser.INDEX_RS_ASC - 609)) | (1 << (PlSqlParser.INDEX_RS_DESC - 609)) | (1 << (PlSqlParser.INDEX_RS - 609)) | (1 << (PlSqlParser.INDEX_SCAN - 609)) | (1 << (PlSqlParser.INDEX_SKIP_SCAN - 609)))) !== 0) || ((((_la - 641)) & ~0x1f) == 0 && ((1 << (_la - 641)) & ((1 << (PlSqlParser.INDEX_SS_ASC - 641)) | (1 << (PlSqlParser.INDEX_SS_DESC - 641)) | (1 << (PlSqlParser.INDEX_SS - 641)) | (1 << (PlSqlParser.INDEX_STATS - 641)) | (1 << (PlSqlParser.INDEXTYPE - 641)) | (1 << (PlSqlParser.INDEXTYPES - 641)) | (1 << (PlSqlParser.INDICATOR - 641)) | (1 << (PlSqlParser.INDICES - 641)) | (1 << (PlSqlParser.INFINITE - 641)) | (1 << (PlSqlParser.INFORMATIONAL - 641)) | (1 << (PlSqlParser.INHERIT - 641)) | (1 << (PlSqlParser.INITCAP - 641)) | (1 << (PlSqlParser.INITIAL - 641)) | (1 << (PlSqlParser.INITIALIZED - 641)) | (1 << (PlSqlParser.INITIALLY - 641)) | (1 << (PlSqlParser.INITRANS - 641)) | (1 << (PlSqlParser.INLINE - 641)) | (1 << (PlSqlParser.INLINE_XMLTYPE_NT - 641)) | (1 << (PlSqlParser.INMEMORY - 641)) | (1 << (PlSqlParser.IN_MEMORY_METADATA - 641)) | (1 << (PlSqlParser.INMEMORY_PRUNING - 641)) | (1 << (PlSqlParser.INNER - 641)) | (1 << (PlSqlParser.INOUT - 641)) | (1 << (PlSqlParser.INPLACE - 641)) | (1 << (PlSqlParser.INSERTCHILDXMLAFTER - 641)) | (1 << (PlSqlParser.INSERTCHILDXMLBEFORE - 641)) | (1 << (PlSqlParser.INSERTCHILDXML - 641)) | (1 << (PlSqlParser.INSERTXMLAFTER - 641)) | (1 << (PlSqlParser.INSERTXMLBEFORE - 641)) | (1 << (PlSqlParser.INSTANCE - 641)))) !== 0) || ((((_la - 673)) & ~0x1f) == 0 && ((1 << (_la - 673)) & ((1 << (PlSqlParser.INSTANCES - 673)) | (1 << (PlSqlParser.INSTANTIABLE - 673)) | (1 << (PlSqlParser.INSTANTLY - 673)) | (1 << (PlSqlParser.INSTEAD - 673)) | (1 << (PlSqlParser.INSTR2 - 673)) | (1 << (PlSqlParser.INSTR4 - 673)) | (1 << (PlSqlParser.INSTRB - 673)) | (1 << (PlSqlParser.INSTRC - 673)) | (1 << (PlSqlParser.INSTR - 673)) | (1 << (PlSqlParser.INTEGER - 673)) | (1 << (PlSqlParser.INTERLEAVED - 673)) | (1 << (PlSqlParser.INTERMEDIATE - 673)) | (1 << (PlSqlParser.INTERNAL_CONVERT - 673)) | (1 << (PlSqlParser.INTERNAL_USE - 673)) | (1 << (PlSqlParser.INTERPRETED - 673)) | (1 << (PlSqlParser.INTERVAL - 673)) | (1 << (PlSqlParser.INT - 673)) | (1 << (PlSqlParser.INVALIDATE - 673)) | (1 << (PlSqlParser.INVISIBLE - 673)) | (1 << (PlSqlParser.IN_XQUERY - 673)) | (1 << (PlSqlParser.ISOLATION - 673)) | (1 << (PlSqlParser.ISOLATION_LEVEL - 673)) | (1 << (PlSqlParser.ITERATE - 673)) | (1 << (PlSqlParser.ITERATION_NUMBER - 673)) | (1 << (PlSqlParser.JAVA - 673)) | (1 << (PlSqlParser.JOB - 673)) | (1 << (PlSqlParser.JOIN - 673)) | (1 << (PlSqlParser.JSON_ARRAYAGG - 673)) | (1 << (PlSqlParser.JSON_ARRAY - 673)))) !== 0) || ((((_la - 705)) & ~0x1f) == 0 && ((1 << (_la - 705)) & ((1 << (PlSqlParser.JSON_EQUAL - 705)) | (1 << (PlSqlParser.JSON_EXISTS2 - 705)) | (1 << (PlSqlParser.JSON_EXISTS - 705)) | (1 << (PlSqlParser.JSONGET - 705)) | (1 << (PlSqlParser.JSON - 705)) | (1 << (PlSqlParser.JSON_OBJECTAGG - 705)) | (1 << (PlSqlParser.JSON_OBJECT - 705)) | (1 << (PlSqlParser.JSONPARSE - 705)) | (1 << (PlSqlParser.JSON_QUERY - 705)) | (1 << (PlSqlParser.JSON_SERIALIZE - 705)) | (1 << (PlSqlParser.JSON_TABLE - 705)) | (1 << (PlSqlParser.JSON_TEXTCONTAINS2 - 705)) | (1 << (PlSqlParser.JSON_TEXTCONTAINS - 705)) | (1 << (PlSqlParser.JSON_VALUE - 705)) | (1 << (PlSqlParser.KEEP_DUPLICATES - 705)) | (1 << (PlSqlParser.KEEP - 705)) | (1 << (PlSqlParser.KERBEROS - 705)) | (1 << (PlSqlParser.KEY - 705)) | (1 << (PlSqlParser.KEY_LENGTH - 705)) | (1 << (PlSqlParser.KEYSIZE - 705)) | (1 << (PlSqlParser.KEYS - 705)) | (1 << (PlSqlParser.KEYSTORE - 705)) | (1 << (PlSqlParser.KILL - 705)) | (1 << (PlSqlParser.LABEL - 705)) | (1 << (PlSqlParser.LANGUAGE - 705)) | (1 << (PlSqlParser.LAST_DAY - 705)) | (1 << (PlSqlParser.LAST - 705)) | (1 << (PlSqlParser.LAST_VALUE - 705)) | (1 << (PlSqlParser.LATERAL - 705)) | (1 << (PlSqlParser.LAX - 705)) | (1 << (PlSqlParser.LAYER - 705)) | (1 << (PlSqlParser.LDAP_REGISTRATION_ENABLED - 705)))) !== 0) || ((((_la - 737)) & ~0x1f) == 0 && ((1 << (_la - 737)) & ((1 << (PlSqlParser.LDAP_REGISTRATION - 737)) | (1 << (PlSqlParser.LDAP_REG_SYNC_INTERVAL - 737)) | (1 << (PlSqlParser.LEADING - 737)) | (1 << (PlSqlParser.LEFT - 737)) | (1 << (PlSqlParser.LENGTH2 - 737)) | (1 << (PlSqlParser.LENGTH4 - 737)) | (1 << (PlSqlParser.LENGTHB - 737)) | (1 << (PlSqlParser.LENGTHC - 737)) | (1 << (PlSqlParser.LENGTH - 737)) | (1 << (PlSqlParser.LESS - 737)) | (1 << (PlSqlParser.LEVEL - 737)) | (1 << (PlSqlParser.LEVELS - 737)) | (1 << (PlSqlParser.LIBRARY - 737)) | (1 << (PlSqlParser.LIFECYCLE - 737)) | (1 << (PlSqlParser.LIFE - 737)) | (1 << (PlSqlParser.LIFETIME - 737)) | (1 << (PlSqlParser.LIKE2 - 737)) | (1 << (PlSqlParser.LIKE4 - 737)) | (1 << (PlSqlParser.LIKEC - 737)) | (1 << (PlSqlParser.LIKE_EXPAND - 737)) | (1 << (PlSqlParser.LIMIT - 737)) | (1 << (PlSqlParser.LINEAR - 737)) | (1 << (PlSqlParser.LINK - 737)) | (1 << (PlSqlParser.LIST - 737)) | (1 << (PlSqlParser.LN - 737)) | (1 << (PlSqlParser.LNNVL - 737)) | (1 << (PlSqlParser.LOAD - 737)) | (1 << (PlSqlParser.LOB - 737)) | (1 << (PlSqlParser.LOBNVL - 737)) | (1 << (PlSqlParser.LOBS - 737)) | (1 << (PlSqlParser.LOCAL_INDEXES - 737)))) !== 0) || ((((_la - 769)) & ~0x1f) == 0 && ((1 << (_la - 769)) & ((1 << (PlSqlParser.LOCAL - 769)) | (1 << (PlSqlParser.LOCALTIME - 769)) | (1 << (PlSqlParser.LOCALTIMESTAMP - 769)) | (1 << (PlSqlParser.LOCATION - 769)) | (1 << (PlSqlParser.LOCATOR - 769)) | (1 << (PlSqlParser.LOCKED - 769)) | (1 << (PlSqlParser.LOCKING - 769)) | (1 << (PlSqlParser.LOGFILE - 769)) | (1 << (PlSqlParser.LOGFILES - 769)) | (1 << (PlSqlParser.LOGGING - 769)) | (1 << (PlSqlParser.LOGICAL - 769)) | (1 << (PlSqlParser.LOGICAL_READS_PER_CALL - 769)) | (1 << (PlSqlParser.LOGICAL_READS_PER_SESSION - 769)) | (1 << (PlSqlParser.LOG - 769)) | (1 << (PlSqlParser.LOGMINING - 769)) | (1 << (PlSqlParser.LOGOFF - 769)) | (1 << (PlSqlParser.LOGON - 769)) | (1 << (PlSqlParser.LOG_READ_ONLY_VIOLATIONS - 769)) | (1 << (PlSqlParser.LONG - 769)) | (1 << (PlSqlParser.LOOP - 769)) | (1 << (PlSqlParser.LOWER - 769)) | (1 << (PlSqlParser.LOW - 769)) | (1 << (PlSqlParser.LPAD - 769)) | (1 << (PlSqlParser.LTRIM - 769)) | (1 << (PlSqlParser.MAIN - 769)) | (1 << (PlSqlParser.MAKE_REF - 769)) | (1 << (PlSqlParser.MANAGED - 769)) | (1 << (PlSqlParser.MANAGE - 769)) | (1 << (PlSqlParser.MANAGEMENT - 769)) | (1 << (PlSqlParser.MANAGER - 769)) | (1 << (PlSqlParser.MANUAL - 769)))) !== 0) || ((((_la - 801)) & ~0x1f) == 0 && ((1 << (_la - 801)) & ((1 << (PlSqlParser.MAP - 801)) | (1 << (PlSqlParser.MAPPING - 801)) | (1 << (PlSqlParser.MASTER - 801)) | (1 << (PlSqlParser.MATCHED - 801)) | (1 << (PlSqlParser.MATCHES - 801)) | (1 << (PlSqlParser.MATCH - 801)) | (1 << (PlSqlParser.MATCH_NUMBER - 801)) | (1 << (PlSqlParser.MATCH_RECOGNIZE - 801)) | (1 << (PlSqlParser.MATERIALIZED - 801)) | (1 << (PlSqlParser.MATERIALIZE - 801)) | (1 << (PlSqlParser.MAXARCHLOGS - 801)) | (1 << (PlSqlParser.MAXDATAFILES - 801)) | (1 << (PlSqlParser.MAXEXTENTS - 801)) | (1 << (PlSqlParser.MAXIMIZE - 801)) | (1 << (PlSqlParser.MAXINSTANCES - 801)) | (1 << (PlSqlParser.MAXLOGFILES - 801)) | (1 << (PlSqlParser.MAXLOGHISTORY - 801)) | (1 << (PlSqlParser.MAXLOGMEMBERS - 801)) | (1 << (PlSqlParser.MAX_SHARED_TEMP_SIZE - 801)) | (1 << (PlSqlParser.MAXSIZE - 801)) | (1 << (PlSqlParser.MAXTRANS - 801)) | (1 << (PlSqlParser.MAXVALUE - 801)) | (1 << (PlSqlParser.MEASURE - 801)) | (1 << (PlSqlParser.MEASURES - 801)) | (1 << (PlSqlParser.MEDIUM - 801)) | (1 << (PlSqlParser.MEMBER - 801)) | (1 << (PlSqlParser.MEMCOMPRESS - 801)) | (1 << (PlSqlParser.MEMORY - 801)) | (1 << (PlSqlParser.MERGEACTIONS - 801)) | (1 << (PlSqlParser.MERGE_AJ - 801)) | (1 << (PlSqlParser.MERGE_CONST_ON - 801)) | (1 << (PlSqlParser.MERGE - 801)))) !== 0) || ((((_la - 833)) & ~0x1f) == 0 && ((1 << (_la - 833)) & ((1 << (PlSqlParser.MERGE_SJ - 833)) | (1 << (PlSqlParser.METADATA - 833)) | (1 << (PlSqlParser.METHOD - 833)) | (1 << (PlSqlParser.MIGRATE - 833)) | (1 << (PlSqlParser.MIGRATION - 833)) | (1 << (PlSqlParser.MINEXTENTS - 833)) | (1 << (PlSqlParser.MINIMIZE - 833)) | (1 << (PlSqlParser.MINIMUM - 833)) | (1 << (PlSqlParser.MINING - 833)) | (1 << (PlSqlParser.MINUS_NULL - 833)) | (1 << (PlSqlParser.MINUTE - 833)) | (1 << (PlSqlParser.MINVALUE - 833)) | (1 << (PlSqlParser.MIRRORCOLD - 833)) | (1 << (PlSqlParser.MIRRORHOT - 833)) | (1 << (PlSqlParser.MIRROR - 833)) | (1 << (PlSqlParser.MLSLABEL - 833)) | (1 << (PlSqlParser.MODEL_COMPILE_SUBQUERY - 833)) | (1 << (PlSqlParser.MODEL_DONTVERIFY_UNIQUENESS - 833)) | (1 << (PlSqlParser.MODEL_DYNAMIC_SUBQUERY - 833)) | (1 << (PlSqlParser.MODEL_MIN_ANALYSIS - 833)) | (1 << (PlSqlParser.MODEL - 833)) | (1 << (PlSqlParser.MODEL_NB - 833)) | (1 << (PlSqlParser.MODEL_NO_ANALYSIS - 833)) | (1 << (PlSqlParser.MODEL_PBY - 833)) | (1 << (PlSqlParser.MODEL_PUSH_REF - 833)) | (1 << (PlSqlParser.MODEL_SV - 833)) | (1 << (PlSqlParser.MODIFICATION - 833)) | (1 << (PlSqlParser.MODIFY_COLUMN_TYPE - 833)) | (1 << (PlSqlParser.MODIFY - 833)) | (1 << (PlSqlParser.MOD - 833)))) !== 0) || ((((_la - 865)) & ~0x1f) == 0 && ((1 << (_la - 865)) & ((1 << (PlSqlParser.MODULE - 865)) | (1 << (PlSqlParser.MONITORING - 865)) | (1 << (PlSqlParser.MONITOR - 865)) | (1 << (PlSqlParser.MONTH - 865)) | (1 << (PlSqlParser.MONTHS_BETWEEN - 865)) | (1 << (PlSqlParser.MONTHS - 865)) | (1 << (PlSqlParser.MOUNT - 865)) | (1 << (PlSqlParser.MOUNTPATH - 865)) | (1 << (PlSqlParser.MOVEMENT - 865)) | (1 << (PlSqlParser.MOVE - 865)) | (1 << (PlSqlParser.MULTIDIMENSIONAL - 865)) | (1 << (PlSqlParser.MULTISET - 865)) | (1 << (PlSqlParser.MV_MERGE - 865)) | (1 << (PlSqlParser.NAMED - 865)) | (1 << (PlSqlParser.NAME - 865)) | (1 << (PlSqlParser.NAMESPACE - 865)) | (1 << (PlSqlParser.NAN - 865)) | (1 << (PlSqlParser.NANVL - 865)) | (1 << (PlSqlParser.NATIONAL - 865)) | (1 << (PlSqlParser.NATIVE_FULL_OUTER_JOIN - 865)) | (1 << (PlSqlParser.NATIVE - 865)) | (1 << (PlSqlParser.NATURAL - 865)) | (1 << (PlSqlParser.NAV - 865)) | (1 << (PlSqlParser.NCHAR_CS - 865)) | (1 << (PlSqlParser.NCHAR - 865)) | (1 << (PlSqlParser.NCHR - 865)) | (1 << (PlSqlParser.NCLOB - 865)) | (1 << (PlSqlParser.NEEDED - 865)) | (1 << (PlSqlParser.NEG - 865)) | (1 << (PlSqlParser.NESTED - 865)) | (1 << (PlSqlParser.NESTED_TABLE_FAST_INSERT - 865)))) !== 0) || ((((_la - 897)) & ~0x1f) == 0 && ((1 << (_la - 897)) & ((1 << (PlSqlParser.NESTED_TABLE_GET_REFS - 897)) | (1 << (PlSqlParser.NESTED_TABLE_ID - 897)) | (1 << (PlSqlParser.NESTED_TABLE_SET_REFS - 897)) | (1 << (PlSqlParser.NESTED_TABLE_SET_SETID - 897)) | (1 << (PlSqlParser.NETWORK - 897)) | (1 << (PlSqlParser.NEVER - 897)) | (1 << (PlSqlParser.NEW - 897)) | (1 << (PlSqlParser.NEW_TIME - 897)) | (1 << (PlSqlParser.NEXT_DAY - 897)) | (1 << (PlSqlParser.NEXT - 897)) | (1 << (PlSqlParser.NL_AJ - 897)) | (1 << (PlSqlParser.NLJ_BATCHING - 897)) | (1 << (PlSqlParser.NLJ_INDEX_FILTER - 897)) | (1 << (PlSqlParser.NLJ_INDEX_SCAN - 897)) | (1 << (PlSqlParser.NLJ_PREFETCH - 897)) | (1 << (PlSqlParser.NLS_CALENDAR - 897)) | (1 << (PlSqlParser.NLS_CHARACTERSET - 897)) | (1 << (PlSqlParser.NLS_CHARSET_DECL_LEN - 897)) | (1 << (PlSqlParser.NLS_CHARSET_ID - 897)) | (1 << (PlSqlParser.NLS_CHARSET_NAME - 897)) | (1 << (PlSqlParser.NLS_COMP - 897)) | (1 << (PlSqlParser.NLS_CURRENCY - 897)) | (1 << (PlSqlParser.NLS_DATE_FORMAT - 897)) | (1 << (PlSqlParser.NLS_DATE_LANGUAGE - 897)) | (1 << (PlSqlParser.NLS_INITCAP - 897)) | (1 << (PlSqlParser.NLS_ISO_CURRENCY - 897)) | (1 << (PlSqlParser.NL_SJ - 897)) | (1 << (PlSqlParser.NLS_LANG - 897)) | (1 << (PlSqlParser.NLS_LANGUAGE - 897)) | (1 << (PlSqlParser.NLS_LENGTH_SEMANTICS - 897)) | (1 << (PlSqlParser.NLS_LOWER - 897)) | (1 << (PlSqlParser.NLS_NCHAR_CONV_EXCP - 897)))) !== 0) || ((((_la - 929)) & ~0x1f) == 0 && ((1 << (_la - 929)) & ((1 << (PlSqlParser.NLS_NUMERIC_CHARACTERS - 929)) | (1 << (PlSqlParser.NLS_SORT - 929)) | (1 << (PlSqlParser.NLSSORT - 929)) | (1 << (PlSqlParser.NLS_SPECIAL_CHARS - 929)) | (1 << (PlSqlParser.NLS_TERRITORY - 929)) | (1 << (PlSqlParser.NLS_UPPER - 929)) | (1 << (PlSqlParser.NO_ACCESS - 929)) | (1 << (PlSqlParser.NO_ADAPTIVE_PLAN - 929)) | (1 << (PlSqlParser.NO_ANSI_REARCH - 929)) | (1 << (PlSqlParser.NOAPPEND - 929)) | (1 << (PlSqlParser.NOARCHIVELOG - 929)) | (1 << (PlSqlParser.NOAUDIT - 929)) | (1 << (PlSqlParser.NO_AUTO_REOPTIMIZE - 929)) | (1 << (PlSqlParser.NO_BASETABLE_MULTIMV_REWRITE - 929)) | (1 << (PlSqlParser.NO_BATCH_TABLE_ACCESS_BY_ROWID - 929)) | (1 << (PlSqlParser.NO_BIND_AWARE - 929)) | (1 << (PlSqlParser.NO_BUFFER - 929)) | (1 << (PlSqlParser.NOCACHE - 929)) | (1 << (PlSqlParser.NO_CARTESIAN - 929)) | (1 << (PlSqlParser.NO_CHECK_ACL_REWRITE - 929)) | (1 << (PlSqlParser.NO_CLUSTER_BY_ROWID - 929)) | (1 << (PlSqlParser.NO_CLUSTERING - 929)) | (1 << (PlSqlParser.NO_COALESCE_SQ - 929)) | (1 << (PlSqlParser.NO_COMMON_DATA - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_CB_WHR_ONLY - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_COMBINE_SW - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_COST_BASED - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_ELIM_DUPS - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_FILTERING - 929)) | (1 << (PlSqlParser.NOCOPY - 929)) | (1 << (PlSqlParser.NO_COST_XML_QUERY_REWRITE - 929)))) !== 0) || ((((_la - 961)) & ~0x1f) == 0 && ((1 << (_la - 961)) & ((1 << (PlSqlParser.NO_CPU_COSTING - 961)) | (1 << (PlSqlParser.NOCPU_COSTING - 961)) | (1 << (PlSqlParser.NOCYCLE - 961)) | (1 << (PlSqlParser.NO_DATA_SECURITY_REWRITE - 961)) | (1 << (PlSqlParser.NO_DECORRELATE - 961)) | (1 << (PlSqlParser.NODELAY - 961)) | (1 << (PlSqlParser.NO_DOMAIN_INDEX_FILTER - 961)) | (1 << (PlSqlParser.NO_DST_UPGRADE_INSERT_CONV - 961)) | (1 << (PlSqlParser.NO_ELIM_GROUPBY - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_JOIN - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_OBY - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_OUTER_JOIN - 961)) | (1 << (PlSqlParser.NOENTITYESCAPING - 961)) | (1 << (PlSqlParser.NO_EXPAND_GSET_TO_UNION - 961)) | (1 << (PlSqlParser.NO_EXPAND - 961)) | (1 << (PlSqlParser.NO_EXPAND_TABLE - 961)) | (1 << (PlSqlParser.NO_FACT - 961)) | (1 << (PlSqlParser.NO_FACTORIZE_JOIN - 961)) | (1 << (PlSqlParser.NO_FILTERING - 961)) | (1 << (PlSqlParser.NOFORCE - 961)) | (1 << (PlSqlParser.NO_FULL_OUTER_JOIN_TO_OUTER - 961)) | (1 << (PlSqlParser.NO_GATHER_OPTIMIZER_STATISTICS - 961)) | (1 << (PlSqlParser.NO_GBY_PUSHDOWN - 961)) | (1 << (PlSqlParser.NOGUARANTEE - 961)) | (1 << (PlSqlParser.NO_INDEX_FFS - 961)) | (1 << (PlSqlParser.NO_INDEX - 961)) | (1 << (PlSqlParser.NO_INDEX_SS - 961)) | (1 << (PlSqlParser.NO_INMEMORY - 961)) | (1 << (PlSqlParser.NO_INMEMORY_PRUNING - 961)) | (1 << (PlSqlParser.NOKEEP - 961)) | (1 << (PlSqlParser.NO_LOAD - 961)) | (1 << (PlSqlParser.NOLOCAL - 961)))) !== 0) || ((((_la - 993)) & ~0x1f) == 0 && ((1 << (_la - 993)) & ((1 << (PlSqlParser.NOLOGGING - 993)) | (1 << (PlSqlParser.NOMAPPING - 993)) | (1 << (PlSqlParser.NOMAXVALUE - 993)) | (1 << (PlSqlParser.NO_MERGE - 993)) | (1 << (PlSqlParser.NOMINIMIZE - 993)) | (1 << (PlSqlParser.NOMINVALUE - 993)) | (1 << (PlSqlParser.NO_MODEL_PUSH_REF - 993)) | (1 << (PlSqlParser.NO_MONITORING - 993)) | (1 << (PlSqlParser.NOMONITORING - 993)) | (1 << (PlSqlParser.NO_MONITOR - 993)) | (1 << (PlSqlParser.NO_MULTIMV_REWRITE - 993)) | (1 << (PlSqlParser.NO_NATIVE_FULL_OUTER_JOIN - 993)) | (1 << (PlSqlParser.NONBLOCKING - 993)) | (1 << (PlSqlParser.NONEDITIONABLE - 993)) | (1 << (PlSqlParser.NONE - 993)) | (1 << (PlSqlParser.NO_NLJ_BATCHING - 993)) | (1 << (PlSqlParser.NO_NLJ_PREFETCH - 993)) | (1 << (PlSqlParser.NO - 993)) | (1 << (PlSqlParser.NONSCHEMA - 993)) | (1 << (PlSqlParser.NO_OBJECT_LINK - 993)) | (1 << (PlSqlParser.NOORDER - 993)) | (1 << (PlSqlParser.NO_ORDER_ROLLUPS - 993)) | (1 << (PlSqlParser.NO_OUTER_JOIN_TO_ANTI - 993)) | (1 << (PlSqlParser.NO_OUTER_JOIN_TO_INNER - 993)) | (1 << (PlSqlParser.NOOVERRIDE - 993)) | (1 << (PlSqlParser.NO_PARALLEL_INDEX - 993)) | (1 << (PlSqlParser.NOPARALLEL_INDEX - 993)) | (1 << (PlSqlParser.NO_PARALLEL - 993)) | (1 << (PlSqlParser.NOPARALLEL - 993)) | (1 << (PlSqlParser.NO_PARTIAL_COMMIT - 993)) | (1 << (PlSqlParser.NO_PARTIAL_JOIN - 993)) | (1 << (PlSqlParser.NO_PARTIAL_ROLLUP_PUSHDOWN - 993)))) !== 0) || ((((_la - 1025)) & ~0x1f) == 0 && ((1 << (_la - 1025)) & ((1 << (PlSqlParser.NOPARTITION - 1025)) | (1 << (PlSqlParser.NO_PLACE_DISTINCT - 1025)) | (1 << (PlSqlParser.NO_PLACE_GROUP_BY - 1025)) | (1 << (PlSqlParser.NO_PQ_CONCURRENT_UNION - 1025)) | (1 << (PlSqlParser.NO_PQ_MAP - 1025)) | (1 << (PlSqlParser.NO_PQ_REPLICATE - 1025)) | (1 << (PlSqlParser.NO_PQ_SKEW - 1025)) | (1 << (PlSqlParser.NO_PRUNE_GSETS - 1025)) | (1 << (PlSqlParser.NO_PULL_PRED - 1025)) | (1 << (PlSqlParser.NO_PUSH_PRED - 1025)) | (1 << (PlSqlParser.NO_PUSH_SUBQ - 1025)) | (1 << (PlSqlParser.NO_PX_FAULT_TOLERANCE - 1025)) | (1 << (PlSqlParser.NO_PX_JOIN_FILTER - 1025)) | (1 << (PlSqlParser.NO_QKN_BUFF - 1025)) | (1 << (PlSqlParser.NO_QUERY_TRANSFORMATION - 1025)) | (1 << (PlSqlParser.NO_REF_CASCADE - 1025)) | (1 << (PlSqlParser.NORELOCATE - 1025)) | (1 << (PlSqlParser.NORELY - 1025)) | (1 << (PlSqlParser.NOREPAIR - 1025)) | (1 << (PlSqlParser.NOREPLAY - 1025)) | (1 << (PlSqlParser.NORESETLOGS - 1025)) | (1 << (PlSqlParser.NO_RESULT_CACHE - 1025)) | (1 << (PlSqlParser.NOREVERSE - 1025)) | (1 << (PlSqlParser.NO_REWRITE - 1025)) | (1 << (PlSqlParser.NOREWRITE - 1025)) | (1 << (PlSqlParser.NORMAL - 1025)) | (1 << (PlSqlParser.NO_ROOT_SW_FOR_LOCAL - 1025)) | (1 << (PlSqlParser.NOROWDEPENDENCIES - 1025)) | (1 << (PlSqlParser.NOSCHEMACHECK - 1025)) | (1 << (PlSqlParser.NOSEGMENT - 1025)) | (1 << (PlSqlParser.NO_SEMIJOIN - 1025)) | (1 << (PlSqlParser.NO_SEMI_TO_INNER - 1025)))) !== 0) || ((((_la - 1057)) & ~0x1f) == 0 && ((1 << (_la - 1057)) & ((1 << (PlSqlParser.NO_SET_TO_JOIN - 1057)) | (1 << (PlSqlParser.NOSORT - 1057)) | (1 << (PlSqlParser.NO_SQL_TRANSLATION - 1057)) | (1 << (PlSqlParser.NO_SQL_TUNE - 1057)) | (1 << (PlSqlParser.NO_STAR_TRANSFORMATION - 1057)) | (1 << (PlSqlParser.NO_STATEMENT_QUEUING - 1057)) | (1 << (PlSqlParser.NO_STATS_GSETS - 1057)) | (1 << (PlSqlParser.NOSTRICT - 1057)) | (1 << (PlSqlParser.NO_SUBQUERY_PRUNING - 1057)) | (1 << (PlSqlParser.NO_SUBSTRB_PAD - 1057)) | (1 << (PlSqlParser.NO_SWAP_JOIN_INPUTS - 1057)) | (1 << (PlSqlParser.NOSWITCH - 1057)) | (1 << (PlSqlParser.NO_TABLE_LOOKUP_BY_NL - 1057)) | (1 << (PlSqlParser.NO_TEMP_TABLE - 1057)) | (1 << (PlSqlParser.NOTHING - 1057)) | (1 << (PlSqlParser.NOTIFICATION - 1057)) | (1 << (PlSqlParser.NO_TRANSFORM_DISTINCT_AGG - 1057)) | (1 << (PlSqlParser.NO_UNNEST - 1057)) | (1 << (PlSqlParser.NO_USE_CUBE - 1057)) | (1 << (PlSqlParser.NO_USE_HASH_AGGREGATION - 1057)) | (1 << (PlSqlParser.NO_USE_HASH_GBY_FOR_PUSHDOWN - 1057)) | (1 << (PlSqlParser.NO_USE_HASH - 1057)) | (1 << (PlSqlParser.NO_USE_INVISIBLE_INDEXES - 1057)) | (1 << (PlSqlParser.NO_USE_MERGE - 1057)) | (1 << (PlSqlParser.NO_USE_NL - 1057)) | (1 << (PlSqlParser.NO_USE_VECTOR_AGGREGATION - 1057)) | (1 << (PlSqlParser.NOVALIDATE - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM_DIMS - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM_FACT - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM - 1057)))) !== 0) || ((((_la - 1089)) & ~0x1f) == 0 && ((1 << (_la - 1089)) & ((1 << (PlSqlParser.NO_XDB_FASTPATH_INSERT - 1089)) | (1 << (PlSqlParser.NO_XML_DML_REWRITE - 1089)) | (1 << (PlSqlParser.NO_XMLINDEX_REWRITE_IN_SELECT - 1089)) | (1 << (PlSqlParser.NO_XMLINDEX_REWRITE - 1089)) | (1 << (PlSqlParser.NO_XML_QUERY_REWRITE - 1089)) | (1 << (PlSqlParser.NO_ZONEMAP - 1089)) | (1 << (PlSqlParser.NTH_VALUE - 1089)) | (1 << (PlSqlParser.NULLIF - 1089)) | (1 << (PlSqlParser.NULLS - 1089)) | (1 << (PlSqlParser.NUMBER - 1089)) | (1 << (PlSqlParser.NUMERIC - 1089)) | (1 << (PlSqlParser.NUM_INDEX_KEYS - 1089)) | (1 << (PlSqlParser.NUMTODSINTERVAL - 1089)) | (1 << (PlSqlParser.NUMTOYMINTERVAL - 1089)) | (1 << (PlSqlParser.NVARCHAR2 - 1089)) | (1 << (PlSqlParser.NVL2 - 1089)) | (1 << (PlSqlParser.OBJECT2XML - 1089)) | (1 << (PlSqlParser.OBJECT - 1089)) | (1 << (PlSqlParser.OBJ_ID - 1089)) | (1 << (PlSqlParser.OBJNO - 1089)) | (1 << (PlSqlParser.OBJNO_REUSE - 1089)) | (1 << (PlSqlParser.OCCURENCES - 1089)) | (1 << (PlSqlParser.OFFLINE - 1089)) | (1 << (PlSqlParser.OFF - 1089)) | (1 << (PlSqlParser.OFFSET - 1089)) | (1 << (PlSqlParser.OIDINDEX - 1089)) | (1 << (PlSqlParser.OID - 1089)) | (1 << (PlSqlParser.OLAP - 1089)) | (1 << (PlSqlParser.OLD - 1089)) | (1 << (PlSqlParser.OLD_PUSH_PRED - 1089)))) !== 0) || ((((_la - 1121)) & ~0x1f) == 0 && ((1 << (_la - 1121)) & ((1 << (PlSqlParser.OLS - 1121)) | (1 << (PlSqlParser.OLTP - 1121)) | (1 << (PlSqlParser.OMIT - 1121)) | (1 << (PlSqlParser.ONE - 1121)) | (1 << (PlSqlParser.ONLINE - 1121)) | (1 << (PlSqlParser.ONLY - 1121)) | (1 << (PlSqlParser.OPAQUE - 1121)) | (1 << (PlSqlParser.OPAQUE_TRANSFORM - 1121)) | (1 << (PlSqlParser.OPAQUE_XCANONICAL - 1121)) | (1 << (PlSqlParser.OPCODE - 1121)) | (1 << (PlSqlParser.OPEN - 1121)) | (1 << (PlSqlParser.OPERATIONS - 1121)) | (1 << (PlSqlParser.OPERATOR - 1121)) | (1 << (PlSqlParser.OPT_ESTIMATE - 1121)) | (1 << (PlSqlParser.OPTIMAL - 1121)) | (1 << (PlSqlParser.OPTIMIZE - 1121)) | (1 << (PlSqlParser.OPTIMIZER_FEATURES_ENABLE - 1121)) | (1 << (PlSqlParser.OPTIMIZER_GOAL - 1121)) | (1 << (PlSqlParser.OPT_PARAM - 1121)) | (1 << (PlSqlParser.ORA_BRANCH - 1121)) | (1 << (PlSqlParser.ORA_CHECK_ACL - 1121)) | (1 << (PlSqlParser.ORA_CHECK_PRIVILEGE - 1121)) | (1 << (PlSqlParser.ORA_CLUSTERING - 1121)) | (1 << (PlSqlParser.ORADATA - 1121)) | (1 << (PlSqlParser.ORADEBUG - 1121)) | (1 << (PlSqlParser.ORA_DST_AFFECTED - 1121)) | (1 << (PlSqlParser.ORA_DST_CONVERT - 1121)) | (1 << (PlSqlParser.ORA_DST_ERROR - 1121)) | (1 << (PlSqlParser.ORA_GET_ACLIDS - 1121)))) !== 0) || ((((_la - 1153)) & ~0x1f) == 0 && ((1 << (_la - 1153)) & ((1 << (PlSqlParser.ORA_GET_PRIVILEGES - 1153)) | (1 << (PlSqlParser.ORA_HASH - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_USERID - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_USER - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_XS_USER_GUID - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_XS_USER - 1153)) | (1 << (PlSqlParser.ORA_RAWCOMPARE - 1153)) | (1 << (PlSqlParser.ORA_RAWCONCAT - 1153)) | (1 << (PlSqlParser.ORA_ROWSCN - 1153)) | (1 << (PlSqlParser.ORA_ROWSCN_RAW - 1153)) | (1 << (PlSqlParser.ORA_ROWVERSION - 1153)) | (1 << (PlSqlParser.ORA_TABVERSION - 1153)) | (1 << (PlSqlParser.ORA_WRITE_TIME - 1153)) | (1 << (PlSqlParser.ORDERED - 1153)) | (1 << (PlSqlParser.ORDERED_PREDICATES - 1153)) | (1 << (PlSqlParser.ORDINALITY - 1153)) | (1 << (PlSqlParser.OR_EXPAND - 1153)) | (1 << (PlSqlParser.ORGANIZATION - 1153)) | (1 << (PlSqlParser.OR_PREDICATES - 1153)) | (1 << (PlSqlParser.OSERROR - 1153)) | (1 << (PlSqlParser.OTHER - 1153)) | (1 << (PlSqlParser.OUTER_JOIN_TO_ANTI - 1153)) | (1 << (PlSqlParser.OUTER_JOIN_TO_INNER - 1153)) | (1 << (PlSqlParser.OUTER - 1153)) | (1 << (PlSqlParser.OUTLINE_LEAF - 1153)) | (1 << (PlSqlParser.OUTLINE - 1153)) | (1 << (PlSqlParser.OUT_OF_LINE - 1153)) | (1 << (PlSqlParser.OUT - 1153)) | (1 << (PlSqlParser.OVERFLOW_NOMOVE - 1153)) | (1 << (PlSqlParser.OVERFLOW - 1153)))) !== 0) || ((((_la - 1185)) & ~0x1f) == 0 && ((1 << (_la - 1185)) & ((1 << (PlSqlParser.OVERLAPS - 1185)) | (1 << (PlSqlParser.OVER - 1185)) | (1 << (PlSqlParser.OVERRIDING - 1185)) | (1 << (PlSqlParser.OWNER - 1185)) | (1 << (PlSqlParser.OWNERSHIP - 1185)) | (1 << (PlSqlParser.OWN - 1185)) | (1 << (PlSqlParser.PACKAGE - 1185)) | (1 << (PlSqlParser.PACKAGES - 1185)) | (1 << (PlSqlParser.PARALLEL_ENABLE - 1185)) | (1 << (PlSqlParser.PARALLEL_INDEX - 1185)) | (1 << (PlSqlParser.PARALLEL - 1185)) | (1 << (PlSqlParser.PARAMETERS - 1185)) | (1 << (PlSqlParser.PARAM - 1185)) | (1 << (PlSqlParser.PARENT - 1185)) | (1 << (PlSqlParser.PARITY - 1185)) | (1 << (PlSqlParser.PARTIAL_JOIN - 1185)) | (1 << (PlSqlParser.PARTIALLY - 1185)) | (1 << (PlSqlParser.PARTIAL - 1185)) | (1 << (PlSqlParser.PARTIAL_ROLLUP_PUSHDOWN - 1185)) | (1 << (PlSqlParser.PARTITION_HASH - 1185)) | (1 << (PlSqlParser.PARTITION_LIST - 1185)) | (1 << (PlSqlParser.PARTITION - 1185)) | (1 << (PlSqlParser.PARTITION_RANGE - 1185)) | (1 << (PlSqlParser.PARTITIONS - 1185)) | (1 << (PlSqlParser.PARTNUMINST - 1185)) | (1 << (PlSqlParser.PASSING - 1185)) | (1 << (PlSqlParser.PASSWORD_GRACE_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD_LIFE_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD_LOCK_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD - 1185)) | (1 << (PlSqlParser.PASSWORD_REUSE_MAX - 1185)))) !== 0) || ((((_la - 1217)) & ~0x1f) == 0 && ((1 << (_la - 1217)) & ((1 << (PlSqlParser.PASSWORD_REUSE_TIME - 1217)) | (1 << (PlSqlParser.PASSWORD_VERIFY_FUNCTION - 1217)) | (1 << (PlSqlParser.PAST - 1217)) | (1 << (PlSqlParser.PATCH - 1217)) | (1 << (PlSqlParser.PATH - 1217)) | (1 << (PlSqlParser.PATH_PREFIX - 1217)) | (1 << (PlSqlParser.PATHS - 1217)) | (1 << (PlSqlParser.PATTERN - 1217)) | (1 << (PlSqlParser.PBL_HS_BEGIN - 1217)) | (1 << (PlSqlParser.PBL_HS_END - 1217)) | (1 << (PlSqlParser.PCTINCREASE - 1217)) | (1 << (PlSqlParser.PCTTHRESHOLD - 1217)) | (1 << (PlSqlParser.PCTUSED - 1217)) | (1 << (PlSqlParser.PCTVERSION - 1217)) | (1 << (PlSqlParser.PENDING - 1217)) | (1 << (PlSqlParser.PERCENT_KEYWORD - 1217)) | (1 << (PlSqlParser.PERCENT_RANKM - 1217)) | (1 << (PlSqlParser.PERFORMANCE - 1217)) | (1 << (PlSqlParser.PERIOD_KEYWORD - 1217)) | (1 << (PlSqlParser.PERMANENT - 1217)) | (1 << (PlSqlParser.PERMISSION - 1217)) | (1 << (PlSqlParser.PERMUTE - 1217)) | (1 << (PlSqlParser.PER - 1217)) | (1 << (PlSqlParser.PFILE - 1217)) | (1 << (PlSqlParser.PHYSICAL - 1217)))) !== 0) || ((((_la - 1249)) & ~0x1f) == 0 && ((1 << (_la - 1249)) & ((1 << (PlSqlParser.PIKEY - 1249)) | (1 << (PlSqlParser.PIPELINED - 1249)) | (1 << (PlSqlParser.PIV_GB - 1249)) | (1 << (PlSqlParser.PIVOT - 1249)) | (1 << (PlSqlParser.PIV_SSF - 1249)) | (1 << (PlSqlParser.PLACE_DISTINCT - 1249)) | (1 << (PlSqlParser.PLACE_GROUP_BY - 1249)) | (1 << (PlSqlParser.PLAN - 1249)) | (1 << (PlSqlParser.PLSCOPE_SETTINGS - 1249)) | (1 << (PlSqlParser.PLS_INTEGER - 1249)) | (1 << (PlSqlParser.PLSQL_CCFLAGS - 1249)) | (1 << (PlSqlParser.PLSQL_CODE_TYPE - 1249)) | (1 << (PlSqlParser.PLSQL_DEBUG - 1249)) | (1 << (PlSqlParser.PLSQL_OPTIMIZE_LEVEL - 1249)) | (1 << (PlSqlParser.PLSQL_WARNINGS - 1249)) | (1 << (PlSqlParser.PLUGGABLE - 1249)) | (1 << (PlSqlParser.POINT - 1249)) | (1 << (PlSqlParser.POLICY - 1249)) | (1 << (PlSqlParser.POOL_16K - 1249)) | (1 << (PlSqlParser.POOL_2K - 1249)) | (1 << (PlSqlParser.POOL_32K - 1249)) | (1 << (PlSqlParser.POOL_4K - 1249)) | (1 << (PlSqlParser.POOL_8K - 1249)) | (1 << (PlSqlParser.POSITIVEN - 1249)) | (1 << (PlSqlParser.POSITIVE - 1249)) | (1 << (PlSqlParser.POST_TRANSACTION - 1249)) | (1 << (PlSqlParser.POWERMULTISET_BY_CARDINALITY - 1249)) | (1 << (PlSqlParser.POWERMULTISET - 1249)) | (1 << (PlSqlParser.POWER - 1249)) | (1 << (PlSqlParser.PQ_CONCURRENT_UNION - 1249)) | (1 << (PlSqlParser.PQ_DISTRIBUTE - 1249)))) !== 0) || ((((_la - 1281)) & ~0x1f) == 0 && ((1 << (_la - 1281)) & ((1 << (PlSqlParser.PQ_DISTRIBUTE_WINDOW - 1281)) | (1 << (PlSqlParser.PQ_FILTER - 1281)) | (1 << (PlSqlParser.PQ_MAP - 1281)) | (1 << (PlSqlParser.PQ_NOMAP - 1281)) | (1 << (PlSqlParser.PQ_REPLICATE - 1281)) | (1 << (PlSqlParser.PQ_SKEW - 1281)) | (1 << (PlSqlParser.PRAGMA - 1281)) | (1 << (PlSqlParser.PREBUILT - 1281)) | (1 << (PlSqlParser.PRECEDES - 1281)) | (1 << (PlSqlParser.PRECEDING - 1281)) | (1 << (PlSqlParser.PRECISION - 1281)) | (1 << (PlSqlParser.PRECOMPUTE_SUBQUERY - 1281)) | (1 << (PlSqlParser.PREDICATE_REORDERS - 1281)) | (1 << (PlSqlParser.PRELOAD - 1281)) | (1 << (PlSqlParser.PREPARE - 1281)) | (1 << (PlSqlParser.PRESENTNNV - 1281)) | (1 << (PlSqlParser.PRESENT - 1281)) | (1 << (PlSqlParser.PRESENTV - 1281)) | (1 << (PlSqlParser.PRESERVE_OID - 1281)) | (1 << (PlSqlParser.PRESERVE - 1281)) | (1 << (PlSqlParser.PRETTY - 1281)) | (1 << (PlSqlParser.PREVIOUS - 1281)) | (1 << (PlSqlParser.PREV - 1281)) | (1 << (PlSqlParser.PRIMARY - 1281)) | (1 << (PlSqlParser.PRINTBLOBTOCLOB - 1281)) | (1 << (PlSqlParser.PRIORITY - 1281)) | (1 << (PlSqlParser.PRIVATE - 1281)) | (1 << (PlSqlParser.PRIVATE_SGA - 1281)) | (1 << (PlSqlParser.PRIVILEGED - 1281)) | (1 << (PlSqlParser.PRIVILEGE - 1281)) | (1 << (PlSqlParser.PRIVILEGES - 1281)))) !== 0) || ((((_la - 1313)) & ~0x1f) == 0 && ((1 << (_la - 1313)) & ((1 << (PlSqlParser.PROCEDURAL - 1313)) | (1 << (PlSqlParser.PROCEDURE - 1313)) | (1 << (PlSqlParser.PROCESS - 1313)) | (1 << (PlSqlParser.PROFILE - 1313)) | (1 << (PlSqlParser.PROGRAM - 1313)) | (1 << (PlSqlParser.PROJECT - 1313)) | (1 << (PlSqlParser.PROPAGATE - 1313)) | (1 << (PlSqlParser.PROTECTED - 1313)) | (1 << (PlSqlParser.PROTECTION - 1313)) | (1 << (PlSqlParser.PROXY - 1313)) | (1 << (PlSqlParser.PRUNING - 1313)) | (1 << (PlSqlParser.PULL_PRED - 1313)) | (1 << (PlSqlParser.PURGE - 1313)) | (1 << (PlSqlParser.PUSH_PRED - 1313)) | (1 << (PlSqlParser.PUSH_SUBQ - 1313)) | (1 << (PlSqlParser.PX_FAULT_TOLERANCE - 1313)) | (1 << (PlSqlParser.PX_GRANULE - 1313)) | (1 << (PlSqlParser.PX_JOIN_FILTER - 1313)) | (1 << (PlSqlParser.QB_NAME - 1313)) | (1 << (PlSqlParser.QUERY_BLOCK - 1313)) | (1 << (PlSqlParser.QUERY - 1313)) | (1 << (PlSqlParser.QUEUE_CURR - 1313)) | (1 << (PlSqlParser.QUEUE - 1313)) | (1 << (PlSqlParser.QUEUE_ROWP - 1313)) | (1 << (PlSqlParser.QUIESCE - 1313)) | (1 << (PlSqlParser.QUORUM - 1313)) | (1 << (PlSqlParser.QUOTA - 1313)) | (1 << (PlSqlParser.RAISE - 1313)) | (1 << (PlSqlParser.RANDOM_LOCAL - 1313)) | (1 << (PlSqlParser.RANDOM - 1313)) | (1 << (PlSqlParser.RANGE - 1313)))) !== 0) || ((((_la - 1345)) & ~0x1f) == 0 && ((1 << (_la - 1345)) & ((1 << (PlSqlParser.RANKM - 1345)) | (1 << (PlSqlParser.RAPIDLY - 1345)) | (1 << (PlSqlParser.RAW - 1345)) | (1 << (PlSqlParser.RAWTOHEX - 1345)) | (1 << (PlSqlParser.RAWTONHEX - 1345)) | (1 << (PlSqlParser.RBA - 1345)) | (1 << (PlSqlParser.RBO_OUTLINE - 1345)) | (1 << (PlSqlParser.RDBA - 1345)) | (1 << (PlSqlParser.READ - 1345)) | (1 << (PlSqlParser.READS - 1345)) | (1 << (PlSqlParser.REALM - 1345)) | (1 << (PlSqlParser.REAL - 1345)) | (1 << (PlSqlParser.REBALANCE - 1345)) | (1 << (PlSqlParser.REBUILD - 1345)) | (1 << (PlSqlParser.RECORD - 1345)) | (1 << (PlSqlParser.RECORDS_PER_BLOCK - 1345)) | (1 << (PlSqlParser.RECOVERABLE - 1345)) | (1 << (PlSqlParser.RECOVER - 1345)) | (1 << (PlSqlParser.RECOVERY - 1345)) | (1 << (PlSqlParser.RECYCLEBIN - 1345)) | (1 << (PlSqlParser.RECYCLE - 1345)) | (1 << (PlSqlParser.REDACTION - 1345)) | (1 << (PlSqlParser.REDEFINE - 1345)) | (1 << (PlSqlParser.REDO - 1345)) | (1 << (PlSqlParser.REDUCED - 1345)) | (1 << (PlSqlParser.REDUNDANCY - 1345)) | (1 << (PlSqlParser.REF_CASCADE_CURSOR - 1345)) | (1 << (PlSqlParser.REFERENCED - 1345)) | (1 << (PlSqlParser.REFERENCE - 1345)) | (1 << (PlSqlParser.REFERENCES - 1345)) | (1 << (PlSqlParser.REFERENCING - 1345)) | (1 << (PlSqlParser.REF - 1345)))) !== 0) || ((((_la - 1377)) & ~0x1f) == 0 && ((1 << (_la - 1377)) & ((1 << (PlSqlParser.REFRESH - 1377)) | (1 << (PlSqlParser.REFTOHEX - 1377)) | (1 << (PlSqlParser.REGEXP_COUNT - 1377)) | (1 << (PlSqlParser.REGEXP_INSTR - 1377)) | (1 << (PlSqlParser.REGEXP_LIKE - 1377)) | (1 << (PlSqlParser.REGEXP_REPLACE - 1377)) | (1 << (PlSqlParser.REGEXP_SUBSTR - 1377)) | (1 << (PlSqlParser.REGISTER - 1377)) | (1 << (PlSqlParser.REGR_AVGX - 1377)) | (1 << (PlSqlParser.REGR_AVGY - 1377)) | (1 << (PlSqlParser.REGR_COUNT - 1377)) | (1 << (PlSqlParser.REGR_INTERCEPT - 1377)) | (1 << (PlSqlParser.REGR_R2 - 1377)) | (1 << (PlSqlParser.REGR_SLOPE - 1377)) | (1 << (PlSqlParser.REGR_SXX - 1377)) | (1 << (PlSqlParser.REGR_SXY - 1377)) | (1 << (PlSqlParser.REGR_SYY - 1377)) | (1 << (PlSqlParser.REGULAR - 1377)) | (1 << (PlSqlParser.REJECT - 1377)) | (1 << (PlSqlParser.REKEY - 1377)) | (1 << (PlSqlParser.RELATIONAL - 1377)) | (1 << (PlSqlParser.RELOCATE - 1377)) | (1 << (PlSqlParser.RELY - 1377)) | (1 << (PlSqlParser.REMAINDER - 1377)) | (1 << (PlSqlParser.REMOTE_MAPPED - 1377)) | (1 << (PlSqlParser.REMOVE - 1377)) | (1 << (PlSqlParser.RENAME - 1377)) | (1 << (PlSqlParser.REPAIR - 1377)) | (1 << (PlSqlParser.REPEAT - 1377)) | (1 << (PlSqlParser.REPLACE - 1377)) | (1 << (PlSqlParser.REPLICATION - 1377)))) !== 0) || ((((_la - 1409)) & ~0x1f) == 0 && ((1 << (_la - 1409)) & ((1 << (PlSqlParser.REQUIRED - 1409)) | (1 << (PlSqlParser.RESETLOGS - 1409)) | (1 << (PlSqlParser.RESET - 1409)) | (1 << (PlSqlParser.RESIZE - 1409)) | (1 << (PlSqlParser.RESOLVE - 1409)) | (1 << (PlSqlParser.RESOLVER - 1409)) | (1 << (PlSqlParser.RESPECT - 1409)) | (1 << (PlSqlParser.RESTART - 1409)) | (1 << (PlSqlParser.RESTORE_AS_INTERVALS - 1409)) | (1 << (PlSqlParser.RESTORE - 1409)) | (1 << (PlSqlParser.RESTRICT_ALL_REF_CONS - 1409)) | (1 << (PlSqlParser.RESTRICTED - 1409)) | (1 << (PlSqlParser.RESTRICT_REFERENCES - 1409)) | (1 << (PlSqlParser.RESTRICT - 1409)) | (1 << (PlSqlParser.RESULT_CACHE - 1409)) | (1 << (PlSqlParser.RESULT - 1409)) | (1 << (PlSqlParser.RESUMABLE - 1409)) | (1 << (PlSqlParser.RESUME - 1409)) | (1 << (PlSqlParser.RETENTION - 1409)) | (1 << (PlSqlParser.RETRY_ON_ROW_CHANGE - 1409)) | (1 << (PlSqlParser.RETURNING - 1409)) | (1 << (PlSqlParser.RETURN - 1409)) | (1 << (PlSqlParser.REUSE - 1409)) | (1 << (PlSqlParser.REVERSE - 1409)) | (1 << (PlSqlParser.REWRITE_OR_ERROR - 1409)) | (1 << (PlSqlParser.REWRITE - 1409)) | (1 << (PlSqlParser.RIGHT - 1409)) | (1 << (PlSqlParser.ROLE - 1409)) | (1 << (PlSqlParser.ROLESET - 1409)) | (1 << (PlSqlParser.ROLES - 1409)))) !== 0) || ((((_la - 1441)) & ~0x1f) == 0 && ((1 << (_la - 1441)) & ((1 << (PlSqlParser.ROLLBACK - 1441)) | (1 << (PlSqlParser.ROLLING - 1441)) | (1 << (PlSqlParser.ROLLUP - 1441)) | (1 << (PlSqlParser.ROWDEPENDENCIES - 1441)) | (1 << (PlSqlParser.ROWID_MAPPING_TABLE - 1441)) | (1 << (PlSqlParser.ROWID - 1441)) | (1 << (PlSqlParser.ROWIDTOCHAR - 1441)) | (1 << (PlSqlParser.ROWIDTONCHAR - 1441)) | (1 << (PlSqlParser.ROW_LENGTH - 1441)) | (1 << (PlSqlParser.ROWNUM - 1441)) | (1 << (PlSqlParser.ROW - 1441)) | (1 << (PlSqlParser.ROWS - 1441)) | (1 << (PlSqlParser.RPAD - 1441)) | (1 << (PlSqlParser.RTRIM - 1441)) | (1 << (PlSqlParser.RULE - 1441)) | (1 << (PlSqlParser.RULES - 1441)) | (1 << (PlSqlParser.RUNNING - 1441)) | (1 << (PlSqlParser.SALT - 1441)) | (1 << (PlSqlParser.SAMPLE - 1441)) | (1 << (PlSqlParser.SAVE_AS_INTERVALS - 1441)) | (1 << (PlSqlParser.SAVEPOINT - 1441)) | (1 << (PlSqlParser.SAVE - 1441)) | (1 << (PlSqlParser.SB4 - 1441)) | (1 << (PlSqlParser.SCALE_ROWS - 1441)) | (1 << (PlSqlParser.SCALE - 1441)) | (1 << (PlSqlParser.SCAN_INSTANCES - 1441)) | (1 << (PlSqlParser.SCAN - 1441)) | (1 << (PlSqlParser.SCHEDULER - 1441)) | (1 << (PlSqlParser.SCHEMACHECK - 1441)) | (1 << (PlSqlParser.SCHEMA - 1441)) | (1 << (PlSqlParser.SCN_ASCENDING - 1441)) | (1 << (PlSqlParser.SCN - 1441)))) !== 0) || ((((_la - 1473)) & ~0x1f) == 0 && ((1 << (_la - 1473)) & ((1 << (PlSqlParser.SCOPE - 1473)) | (1 << (PlSqlParser.SCRUB - 1473)) | (1 << (PlSqlParser.SD_ALL - 1473)) | (1 << (PlSqlParser.SD_INHIBIT - 1473)) | (1 << (PlSqlParser.SDO_GEOM_MBR - 1473)) | (1 << (PlSqlParser.SD_SHOW - 1473)) | (1 << (PlSqlParser.SEARCH - 1473)) | (1 << (PlSqlParser.SECOND - 1473)) | (1 << (PlSqlParser.SECRET - 1473)) | (1 << (PlSqlParser.SECUREFILE_DBA - 1473)) | (1 << (PlSqlParser.SECUREFILE - 1473)) | (1 << (PlSqlParser.SECURITY - 1473)) | (1 << (PlSqlParser.SEED - 1473)) | (1 << (PlSqlParser.SEG_BLOCK - 1473)) | (1 << (PlSqlParser.SEG_FILE - 1473)) | (1 << (PlSqlParser.SEGMENT - 1473)) | (1 << (PlSqlParser.SELECTIVITY - 1473)) | (1 << (PlSqlParser.SELF - 1473)) | (1 << (PlSqlParser.SEMIJOIN_DRIVER - 1473)) | (1 << (PlSqlParser.SEMIJOIN - 1473)) | (1 << (PlSqlParser.SEMI_TO_INNER - 1473)) | (1 << (PlSqlParser.SEQUENCED - 1473)) | (1 << (PlSqlParser.SEQUENCE - 1473)) | (1 << (PlSqlParser.SEQUENTIAL - 1473)) | (1 << (PlSqlParser.SERIALIZABLE - 1473)) | (1 << (PlSqlParser.SERIALLY_REUSABLE - 1473)) | (1 << (PlSqlParser.SERIAL - 1473)) | (1 << (PlSqlParser.SERVERERROR - 1473)) | (1 << (PlSqlParser.SERVICE_NAME_CONVERT - 1473)) | (1 << (PlSqlParser.SERVICES - 1473)))) !== 0) || ((((_la - 1505)) & ~0x1f) == 0 && ((1 << (_la - 1505)) & ((1 << (PlSqlParser.SESSION_CACHED_CURSORS - 1505)) | (1 << (PlSqlParser.SESSION - 1505)) | (1 << (PlSqlParser.SESSIONS_PER_USER - 1505)) | (1 << (PlSqlParser.SESSIONTIMEZONE - 1505)) | (1 << (PlSqlParser.SESSIONTZNAME - 1505)) | (1 << (PlSqlParser.SET - 1505)) | (1 << (PlSqlParser.SETS - 1505)) | (1 << (PlSqlParser.SETTINGS - 1505)) | (1 << (PlSqlParser.SET_TO_JOIN - 1505)) | (1 << (PlSqlParser.SEVERE - 1505)) | (1 << (PlSqlParser.SHARED_POOL - 1505)) | (1 << (PlSqlParser.SHARED - 1505)) | (1 << (PlSqlParser.SHARING - 1505)) | (1 << (PlSqlParser.SHELFLIFE - 1505)) | (1 << (PlSqlParser.SHOW - 1505)) | (1 << (PlSqlParser.SHRINK - 1505)) | (1 << (PlSqlParser.SHUTDOWN - 1505)) | (1 << (PlSqlParser.SIBLINGS - 1505)) | (1 << (PlSqlParser.SID - 1505)) | (1 << (PlSqlParser.SIGNAL_COMPONENT - 1505)) | (1 << (PlSqlParser.SIGNAL_FUNCTION - 1505)) | (1 << (PlSqlParser.SIGN - 1505)) | (1 << (PlSqlParser.SIGNTYPE - 1505)) | (1 << (PlSqlParser.SIMPLE_INTEGER - 1505)) | (1 << (PlSqlParser.SIMPLE - 1505)) | (1 << (PlSqlParser.SINGLE - 1505)) | (1 << (PlSqlParser.SINGLETASK - 1505)) | (1 << (PlSqlParser.SINH - 1505)) | (1 << (PlSqlParser.SIN - 1505)) | (1 << (PlSqlParser.SKIP_EXT_OPTIMIZER - 1505)))) !== 0) || ((((_la - 1537)) & ~0x1f) == 0 && ((1 << (_la - 1537)) & ((1 << (PlSqlParser.SKIP_ - 1537)) | (1 << (PlSqlParser.SKIP_UNQ_UNUSABLE_IDX - 1537)) | (1 << (PlSqlParser.SKIP_UNUSABLE_INDEXES - 1537)) | (1 << (PlSqlParser.SMALLFILE - 1537)) | (1 << (PlSqlParser.SMALLINT - 1537)) | (1 << (PlSqlParser.SNAPSHOT - 1537)) | (1 << (PlSqlParser.SOME - 1537)) | (1 << (PlSqlParser.SORT - 1537)) | (1 << (PlSqlParser.SOUNDEX - 1537)) | (1 << (PlSqlParser.SOURCE_FILE_DIRECTORY - 1537)) | (1 << (PlSqlParser.SOURCE_FILE_NAME_CONVERT - 1537)) | (1 << (PlSqlParser.SOURCE - 1537)) | (1 << (PlSqlParser.SPACE_KEYWORD - 1537)) | (1 << (PlSqlParser.SPECIFICATION - 1537)) | (1 << (PlSqlParser.SPFILE - 1537)) | (1 << (PlSqlParser.SPLIT - 1537)) | (1 << (PlSqlParser.SPREADSHEET - 1537)) | (1 << (PlSqlParser.SQLDATA - 1537)) | (1 << (PlSqlParser.SQLERROR - 1537)) | (1 << (PlSqlParser.SQLLDR - 1537)) | (1 << (PlSqlParser.SQL - 1537)) | (1 << (PlSqlParser.SQL_TRACE - 1537)) | (1 << (PlSqlParser.SQL_TRANSLATION_PROFILE - 1537)) | (1 << (PlSqlParser.SQRT - 1537)) | (1 << (PlSqlParser.STALE - 1537)) | (1 << (PlSqlParser.STANDALONE - 1537)) | (1 << (PlSqlParser.STANDARD_HASH - 1537)) | (1 << (PlSqlParser.STANDBY_MAX_DATA_DELAY - 1537)) | (1 << (PlSqlParser.STANDBYS - 1537)) | (1 << (PlSqlParser.STANDBY - 1537)) | (1 << (PlSqlParser.STAR - 1537)) | (1 << (PlSqlParser.STAR_TRANSFORMATION - 1537)))) !== 0) || ((((_la - 1570)) & ~0x1f) == 0 && ((1 << (_la - 1570)) & ((1 << (PlSqlParser.STARTUP - 1570)) | (1 << (PlSqlParser.STATEMENT_ID - 1570)) | (1 << (PlSqlParser.STATEMENT_QUEUING - 1570)) | (1 << (PlSqlParser.STATEMENTS - 1570)) | (1 << (PlSqlParser.STATEMENT - 1570)) | (1 << (PlSqlParser.STATE - 1570)) | (1 << (PlSqlParser.STATIC - 1570)) | (1 << (PlSqlParser.STATISTICS - 1570)) | (1 << (PlSqlParser.STATS_BINOMIAL_TEST - 1570)) | (1 << (PlSqlParser.STATS_CROSSTAB - 1570)) | (1 << (PlSqlParser.STATS_F_TEST - 1570)) | (1 << (PlSqlParser.STATS_KS_TEST - 1570)) | (1 << (PlSqlParser.STATS_MODE - 1570)) | (1 << (PlSqlParser.STATS_MW_TEST - 1570)) | (1 << (PlSqlParser.STATS_ONE_WAY_ANOVA - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_INDEP - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_INDEPU - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_ONE - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_PAIRED - 1570)) | (1 << (PlSqlParser.STATS_WSR_TEST - 1570)) | (1 << (PlSqlParser.STDDEV_POP - 1570)) | (1 << (PlSqlParser.STDDEV_SAMP - 1570)) | (1 << (PlSqlParser.STOP - 1570)) | (1 << (PlSqlParser.STORAGE - 1570)) | (1 << (PlSqlParser.STORE - 1570)) | (1 << (PlSqlParser.STREAMS - 1570)) | (1 << (PlSqlParser.STREAM - 1570)) | (1 << (PlSqlParser.STRICT - 1570)) | (1 << (PlSqlParser.STRING - 1570)) | (1 << (PlSqlParser.STRIPE_COLUMNS - 1570)) | (1 << (PlSqlParser.STRIPE_WIDTH - 1570)) | (1 << (PlSqlParser.STRIP - 1570)))) !== 0) || ((((_la - 1602)) & ~0x1f) == 0 && ((1 << (_la - 1602)) & ((1 << (PlSqlParser.STRUCTURE - 1602)) | (1 << (PlSqlParser.SUBMULTISET - 1602)) | (1 << (PlSqlParser.SUBPARTITION_REL - 1602)) | (1 << (PlSqlParser.SUBPARTITIONS - 1602)) | (1 << (PlSqlParser.SUBPARTITION - 1602)) | (1 << (PlSqlParser.SUBQUERIES - 1602)) | (1 << (PlSqlParser.SUBQUERY_PRUNING - 1602)) | (1 << (PlSqlParser.SUBSCRIBE - 1602)) | (1 << (PlSqlParser.SUBSET - 1602)) | (1 << (PlSqlParser.SUBSTITUTABLE - 1602)) | (1 << (PlSqlParser.SUBSTR2 - 1602)) | (1 << (PlSqlParser.SUBSTR4 - 1602)) | (1 << (PlSqlParser.SUBSTRB - 1602)) | (1 << (PlSqlParser.SUBSTRC - 1602)) | (1 << (PlSqlParser.SUBTYPE - 1602)) | (1 << (PlSqlParser.SUCCESSFUL - 1602)) | (1 << (PlSqlParser.SUCCESS - 1602)) | (1 << (PlSqlParser.SUMMARY - 1602)) | (1 << (PlSqlParser.SUPPLEMENTAL - 1602)) | (1 << (PlSqlParser.SUSPEND - 1602)) | (1 << (PlSqlParser.SWAP_JOIN_INPUTS - 1602)) | (1 << (PlSqlParser.SWITCHOVER - 1602)) | (1 << (PlSqlParser.SWITCH - 1602)) | (1 << (PlSqlParser.SYNCHRONOUS - 1602)) | (1 << (PlSqlParser.SYNC - 1602)) | (1 << (PlSqlParser.SYSASM - 1602)) | (1 << (PlSqlParser.SYS_AUDIT - 1602)) | (1 << (PlSqlParser.SYSAUX - 1602)) | (1 << (PlSqlParser.SYSBACKUP - 1602)) | (1 << (PlSqlParser.SYS_CHECKACL - 1602)) | (1 << (PlSqlParser.SYS_CHECK_PRIVILEGE - 1602)))) !== 0) || ((((_la - 1634)) & ~0x1f) == 0 && ((1 << (_la - 1634)) & ((1 << (PlSqlParser.SYS_CONNECT_BY_PATH - 1634)) | (1 << (PlSqlParser.SYS_CONTEXT - 1634)) | (1 << (PlSqlParser.SYSDATE - 1634)) | (1 << (PlSqlParser.SYSDBA - 1634)) | (1 << (PlSqlParser.SYS_DBURIGEN - 1634)) | (1 << (PlSqlParser.SYSDG - 1634)) | (1 << (PlSqlParser.SYS_DL_CURSOR - 1634)) | (1 << (PlSqlParser.SYS_DM_RXFORM_CHR - 1634)) | (1 << (PlSqlParser.SYS_DM_RXFORM_NUM - 1634)) | (1 << (PlSqlParser.SYS_DOM_COMPARE - 1634)) | (1 << (PlSqlParser.SYS_DST_PRIM2SEC - 1634)) | (1 << (PlSqlParser.SYS_DST_SEC2PRIM - 1634)) | (1 << (PlSqlParser.SYS_ET_BFILE_TO_RAW - 1634)) | (1 << (PlSqlParser.SYS_ET_BLOB_TO_IMAGE - 1634)) | (1 << (PlSqlParser.SYS_ET_IMAGE_TO_BLOB - 1634)) | (1 << (PlSqlParser.SYS_ET_RAW_TO_BFILE - 1634)) | (1 << (PlSqlParser.SYS_EXTPDTXT - 1634)) | (1 << (PlSqlParser.SYS_EXTRACT_UTC - 1634)) | (1 << (PlSqlParser.SYS_FBT_INSDEL - 1634)) | (1 << (PlSqlParser.SYS_FILTER_ACLS - 1634)) | (1 << (PlSqlParser.SYS_FNMATCHES - 1634)) | (1 << (PlSqlParser.SYS_FNREPLACE - 1634)) | (1 << (PlSqlParser.SYS_GET_ACLIDS - 1634)) | (1 << (PlSqlParser.SYS_GET_COL_ACLIDS - 1634)) | (1 << (PlSqlParser.SYS_GET_PRIVILEGES - 1634)) | (1 << (PlSqlParser.SYS_GETTOKENID - 1634)) | (1 << (PlSqlParser.SYS_GETXTIVAL - 1634)) | (1 << (PlSqlParser.SYS_GUID - 1634)) | (1 << (PlSqlParser.SYSGUID - 1634)) | (1 << (PlSqlParser.SYSKM - 1634)) | (1 << (PlSqlParser.SYS_MAKE_XMLNODEID - 1634)) | (1 << (PlSqlParser.SYS_MAKEXML - 1634)))) !== 0) || ((((_la - 1666)) & ~0x1f) == 0 && ((1 << (_la - 1666)) & ((1 << (PlSqlParser.SYS_MKXMLATTR - 1666)) | (1 << (PlSqlParser.SYS_MKXTI - 1666)) | (1 << (PlSqlParser.SYSOBJ - 1666)) | (1 << (PlSqlParser.SYS_OP_ADT2BIN - 1666)) | (1 << (PlSqlParser.SYS_OP_ADTCONS - 1666)) | (1 << (PlSqlParser.SYS_OP_ALSCRVAL - 1666)) | (1 << (PlSqlParser.SYS_OP_ATG - 1666)) | (1 << (PlSqlParser.SYS_OP_BIN2ADT - 1666)) | (1 << (PlSqlParser.SYS_OP_BITVEC - 1666)) | (1 << (PlSqlParser.SYS_OP_BL2R - 1666)) | (1 << (PlSqlParser.SYS_OP_BLOOM_FILTER_LIST - 1666)) | (1 << (PlSqlParser.SYS_OP_BLOOM_FILTER - 1666)) | (1 << (PlSqlParser.SYS_OP_C2C - 1666)) | (1 << (PlSqlParser.SYS_OP_CAST - 1666)) | (1 << (PlSqlParser.SYS_OP_CEG - 1666)) | (1 << (PlSqlParser.SYS_OP_CL2C - 1666)) | (1 << (PlSqlParser.SYS_OP_COMBINED_HASH - 1666)) | (1 << (PlSqlParser.SYS_OP_COMP - 1666)) | (1 << (PlSqlParser.SYS_OP_CONVERT - 1666)) | (1 << (PlSqlParser.SYS_OP_COUNTCHG - 1666)) | (1 << (PlSqlParser.SYS_OP_CSCONV - 1666)) | (1 << (PlSqlParser.SYS_OP_CSCONVTEST - 1666)) | (1 << (PlSqlParser.SYS_OP_CSR - 1666)) | (1 << (PlSqlParser.SYS_OP_CSX_PATCH - 1666)) | (1 << (PlSqlParser.SYS_OP_CYCLED_SEQ - 1666)) | (1 << (PlSqlParser.SYS_OP_DECOMP - 1666)) | (1 << (PlSqlParser.SYS_OP_DESCEND - 1666)) | (1 << (PlSqlParser.SYS_OP_DISTINCT - 1666)) | (1 << (PlSqlParser.SYS_OP_DRA - 1666)) | (1 << (PlSqlParser.SYS_OP_DUMP - 1666)) | (1 << (PlSqlParser.SYS_OP_DV_CHECK - 1666)) | (1 << (PlSqlParser.SYS_OP_ENFORCE_NOT_NULL - 1666)))) !== 0) || ((((_la - 1698)) & ~0x1f) == 0 && ((1 << (_la - 1698)) & ((1 << (PlSqlParser.SYSOPER - 1698)) | (1 << (PlSqlParser.SYS_OP_EXTRACT - 1698)) | (1 << (PlSqlParser.SYS_OP_GROUPING - 1698)) | (1 << (PlSqlParser.SYS_OP_GUID - 1698)) | (1 << (PlSqlParser.SYS_OP_HASH - 1698)) | (1 << (PlSqlParser.SYS_OP_IIX - 1698)) | (1 << (PlSqlParser.SYS_OP_ITR - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_CREATE - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_FILTER_LIST - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_FILTER - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_SUCCEEDED - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_USE - 1698)) | (1 << (PlSqlParser.SYS_OP_LBID - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2BLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2CLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2ID - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2NCLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2TYP - 1698)) | (1 << (PlSqlParser.SYS_OP_LSVI - 1698)) | (1 << (PlSqlParser.SYS_OP_LVL - 1698)) | (1 << (PlSqlParser.SYS_OP_MAKEOID - 1698)) | (1 << (PlSqlParser.SYS_OP_MAP_NONNULL - 1698)) | (1 << (PlSqlParser.SYS_OP_MSR - 1698)) | (1 << (PlSqlParser.SYS_OP_NICOMBINE - 1698)) | (1 << (PlSqlParser.SYS_OP_NIEXTRACT - 1698)) | (1 << (PlSqlParser.SYS_OP_NII - 1698)) | (1 << (PlSqlParser.SYS_OP_NIX - 1698)) | (1 << (PlSqlParser.SYS_OP_NOEXPAND - 1698)) | (1 << (PlSqlParser.SYS_OP_NTCIMG - 1698)) | (1 << (PlSqlParser.SYS_OP_NUMTORAW - 1698)) | (1 << (PlSqlParser.SYS_OP_OIDVALUE - 1698)) | (1 << (PlSqlParser.SYS_OP_OPNSIZE - 1698)))) !== 0) || ((((_la - 1730)) & ~0x1f) == 0 && ((1 << (_la - 1730)) & ((1 << (PlSqlParser.SYS_OP_PAR_1 - 1730)) | (1 << (PlSqlParser.SYS_OP_PARGID_1 - 1730)) | (1 << (PlSqlParser.SYS_OP_PARGID - 1730)) | (1 << (PlSqlParser.SYS_OP_PAR - 1730)) | (1 << (PlSqlParser.SYS_OP_PART_ID - 1730)) | (1 << (PlSqlParser.SYS_OP_PIVOT - 1730)) | (1 << (PlSqlParser.SYS_OP_R2O - 1730)) | (1 << (PlSqlParser.SYS_OP_RAWTONUM - 1730)) | (1 << (PlSqlParser.SYS_OP_RDTM - 1730)) | (1 << (PlSqlParser.SYS_OP_REF - 1730)) | (1 << (PlSqlParser.SYS_OP_RMTD - 1730)) | (1 << (PlSqlParser.SYS_OP_ROWIDTOOBJ - 1730)) | (1 << (PlSqlParser.SYS_OP_RPB - 1730)) | (1 << (PlSqlParser.SYS_OPTLOBPRBSC - 1730)) | (1 << (PlSqlParser.SYS_OP_TOSETID - 1730)) | (1 << (PlSqlParser.SYS_OP_TPR - 1730)) | (1 << (PlSqlParser.SYS_OP_TRTB - 1730)) | (1 << (PlSqlParser.SYS_OPTXICMP - 1730)) | (1 << (PlSqlParser.SYS_OPTXQCASTASNQ - 1730)) | (1 << (PlSqlParser.SYS_OP_UNDESCEND - 1730)) | (1 << (PlSqlParser.SYS_OP_VECAND - 1730)) | (1 << (PlSqlParser.SYS_OP_VECBIT - 1730)) | (1 << (PlSqlParser.SYS_OP_VECOR - 1730)) | (1 << (PlSqlParser.SYS_OP_VECXOR - 1730)) | (1 << (PlSqlParser.SYS_OP_VERSION - 1730)) | (1 << (PlSqlParser.SYS_OP_VREF - 1730)) | (1 << (PlSqlParser.SYS_OP_VVD - 1730)) | (1 << (PlSqlParser.SYS_OP_XMLCONS_FOR_CSX - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHATG - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHIDX - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHOP - 1730)) | (1 << (PlSqlParser.SYS_OP_XTXT2SQLT - 1730)))) !== 0) || ((((_la - 1762)) & ~0x1f) == 0 && ((1 << (_la - 1762)) & ((1 << (PlSqlParser.SYS_OP_ZONE_ID - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_DEPTH - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_MAXCHILD - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_PARENT - 1762)) | (1 << (PlSqlParser.SYS_PARALLEL_TXN - 1762)) | (1 << (PlSqlParser.SYS_PATHID_IS_ATTR - 1762)) | (1 << (PlSqlParser.SYS_PATHID_IS_NMSPC - 1762)) | (1 << (PlSqlParser.SYS_PATHID_LASTNAME - 1762)) | (1 << (PlSqlParser.SYS_PATHID_LASTNMSPC - 1762)) | (1 << (PlSqlParser.SYS_PATH_REVERSE - 1762)) | (1 << (PlSqlParser.SYS_PXQEXTRACT - 1762)) | (1 << (PlSqlParser.SYS_RAW_TO_XSID - 1762)) | (1 << (PlSqlParser.SYS_RID_ORDER - 1762)) | (1 << (PlSqlParser.SYS_ROW_DELTA - 1762)) | (1 << (PlSqlParser.SYS_SC_2_XMLT - 1762)) | (1 << (PlSqlParser.SYS_SYNRCIREDO - 1762)) | (1 << (PlSqlParser.SYSTEM_DEFINED - 1762)) | (1 << (PlSqlParser.SYSTEM - 1762)) | (1 << (PlSqlParser.SYSTIMESTAMP - 1762)) | (1 << (PlSqlParser.SYS_TYPEID - 1762)) | (1 << (PlSqlParser.SYS_UMAKEXML - 1762)) | (1 << (PlSqlParser.SYS_XMLANALYZE - 1762)) | (1 << (PlSqlParser.SYS_XMLCONTAINS - 1762)) | (1 << (PlSqlParser.SYS_XMLCONV - 1762)) | (1 << (PlSqlParser.SYS_XMLEXNSURI - 1762)) | (1 << (PlSqlParser.SYS_XMLGEN - 1762)) | (1 << (PlSqlParser.SYS_XMLI_LOC_ISNODE - 1762)) | (1 << (PlSqlParser.SYS_XMLI_LOC_ISTEXT - 1762)) | (1 << (PlSqlParser.SYS_XMLINSTR - 1762)) | (1 << (PlSqlParser.SYS_XMLLOCATOR_GETSVAL - 1762)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETCID - 1762)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETLOCATOR - 1762)))) !== 0) || ((((_la - 1794)) & ~0x1f) == 0 && ((1 << (_la - 1794)) & ((1 << (PlSqlParser.SYS_XMLNODEID_GETOKEY - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETPATHID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETPTRID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETRID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETSVAL - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETTID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID - 1794)) | (1 << (PlSqlParser.SYS_XMLT_2_SC - 1794)) | (1 << (PlSqlParser.SYS_XMLTRANSLATE - 1794)) | (1 << (PlSqlParser.SYS_XMLTYPE2SQL - 1794)) | (1 << (PlSqlParser.SYS_XQ_ASQLCNV - 1794)) | (1 << (PlSqlParser.SYS_XQ_ATOMCNVCHK - 1794)) | (1 << (PlSqlParser.SYS_XQBASEURI - 1794)) | (1 << (PlSqlParser.SYS_XQCASTABLEERRH - 1794)) | (1 << (PlSqlParser.SYS_XQCODEP2STR - 1794)) | (1 << (PlSqlParser.SYS_XQCODEPEQ - 1794)) | (1 << (PlSqlParser.SYS_XQCON2SEQ - 1794)) | (1 << (PlSqlParser.SYS_XQCONCAT - 1794)) | (1 << (PlSqlParser.SYS_XQDELETE - 1794)) | (1 << (PlSqlParser.SYS_XQDFLTCOLATION - 1794)) | (1 << (PlSqlParser.SYS_XQDOC - 1794)) | (1 << (PlSqlParser.SYS_XQDOCURI - 1794)) | (1 << (PlSqlParser.SYS_XQDURDIV - 1794)) | (1 << (PlSqlParser.SYS_XQED4URI - 1794)) | (1 << (PlSqlParser.SYS_XQENDSWITH - 1794)) | (1 << (PlSqlParser.SYS_XQERRH - 1794)) | (1 << (PlSqlParser.SYS_XQERR - 1794)) | (1 << (PlSqlParser.SYS_XQESHTMLURI - 1794)) | (1 << (PlSqlParser.SYS_XQEXLOBVAL - 1794)) | (1 << (PlSqlParser.SYS_XQEXSTWRP - 1794)) | (1 << (PlSqlParser.SYS_XQEXTRACT - 1794)) | (1 << (PlSqlParser.SYS_XQEXTRREF - 1794)))) !== 0) || ((((_la - 1826)) & ~0x1f) == 0 && ((1 << (_la - 1826)) & ((1 << (PlSqlParser.SYS_XQEXVAL - 1826)) | (1 << (PlSqlParser.SYS_XQFB2STR - 1826)) | (1 << (PlSqlParser.SYS_XQFNBOOL - 1826)) | (1 << (PlSqlParser.SYS_XQFNCMP - 1826)) | (1 << (PlSqlParser.SYS_XQFNDATIM - 1826)) | (1 << (PlSqlParser.SYS_XQFNLNAME - 1826)) | (1 << (PlSqlParser.SYS_XQFNNM - 1826)) | (1 << (PlSqlParser.SYS_XQFNNSURI - 1826)) | (1 << (PlSqlParser.SYS_XQFNPREDTRUTH - 1826)) | (1 << (PlSqlParser.SYS_XQFNQNM - 1826)) | (1 << (PlSqlParser.SYS_XQFNROOT - 1826)) | (1 << (PlSqlParser.SYS_XQFORMATNUM - 1826)) | (1 << (PlSqlParser.SYS_XQFTCONTAIN - 1826)) | (1 << (PlSqlParser.SYS_XQFUNCR - 1826)) | (1 << (PlSqlParser.SYS_XQGETCONTENT - 1826)) | (1 << (PlSqlParser.SYS_XQINDXOF - 1826)) | (1 << (PlSqlParser.SYS_XQINSERT - 1826)) | (1 << (PlSqlParser.SYS_XQINSPFX - 1826)) | (1 << (PlSqlParser.SYS_XQIRI2URI - 1826)) | (1 << (PlSqlParser.SYS_XQLANG - 1826)) | (1 << (PlSqlParser.SYS_XQLLNMFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQMKNODEREF - 1826)) | (1 << (PlSqlParser.SYS_XQNILLED - 1826)) | (1 << (PlSqlParser.SYS_XQNODENAME - 1826)) | (1 << (PlSqlParser.SYS_XQNORMSPACE - 1826)) | (1 << (PlSqlParser.SYS_XQNORMUCODE - 1826)) | (1 << (PlSqlParser.SYS_XQ_NRNG - 1826)) | (1 << (PlSqlParser.SYS_XQNSP4PFX - 1826)) | (1 << (PlSqlParser.SYS_XQNSPFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQPFXFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQ_PKSQL2XML - 1826)) | (1 << (PlSqlParser.SYS_XQPOLYABS - 1826)))) !== 0) || ((((_la - 1858)) & ~0x1f) == 0 && ((1 << (_la - 1858)) & ((1 << (PlSqlParser.SYS_XQPOLYADD - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCEL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCSTBL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCST - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYDIV - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYFLR - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYMOD - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYMUL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYRND - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYSQRT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYSUB - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYUMUS - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYUPLS - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVEQ - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVGE - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVGT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVLE - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVLT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVNE - 1858)) | (1 << (PlSqlParser.SYS_XQREF2VAL - 1858)) | (1 << (PlSqlParser.SYS_XQRENAME - 1858)) | (1 << (PlSqlParser.SYS_XQREPLACE - 1858)) | (1 << (PlSqlParser.SYS_XQRESVURI - 1858)) | (1 << (PlSqlParser.SYS_XQRNDHALF2EVN - 1858)) | (1 << (PlSqlParser.SYS_XQRSLVQNM - 1858)) | (1 << (PlSqlParser.SYS_XQRYENVPGET - 1858)) | (1 << (PlSqlParser.SYS_XQRYVARGET - 1858)) | (1 << (PlSqlParser.SYS_XQRYWRP - 1858)) | (1 << (PlSqlParser.SYS_XQSEQ2CON4XC - 1858)) | (1 << (PlSqlParser.SYS_XQSEQ2CON - 1858)) | (1 << (PlSqlParser.SYS_XQSEQDEEPEQ - 1858)) | (1 << (PlSqlParser.SYS_XQSEQINSB - 1858)))) !== 0) || ((((_la - 1890)) & ~0x1f) == 0 && ((1 << (_la - 1890)) & ((1 << (PlSqlParser.SYS_XQSEQRM - 1890)) | (1 << (PlSqlParser.SYS_XQSEQRVS - 1890)) | (1 << (PlSqlParser.SYS_XQSEQSUB - 1890)) | (1 << (PlSqlParser.SYS_XQSEQTYPMATCH - 1890)) | (1 << (PlSqlParser.SYS_XQSTARTSWITH - 1890)) | (1 << (PlSqlParser.SYS_XQSTATBURI - 1890)) | (1 << (PlSqlParser.SYS_XQSTR2CODEP - 1890)) | (1 << (PlSqlParser.SYS_XQSTRJOIN - 1890)) | (1 << (PlSqlParser.SYS_XQSUBSTRAFT - 1890)) | (1 << (PlSqlParser.SYS_XQSUBSTRBEF - 1890)) | (1 << (PlSqlParser.SYS_XQTOKENIZE - 1890)) | (1 << (PlSqlParser.SYS_XQTREATAS - 1890)) | (1 << (PlSqlParser.SYS_XQ_UPKXML2SQL - 1890)) | (1 << (PlSqlParser.SYS_XQXFORM - 1890)) | (1 << (PlSqlParser.SYS_XSID_TO_RAW - 1890)) | (1 << (PlSqlParser.SYS_ZMAP_FILTER - 1890)) | (1 << (PlSqlParser.SYS_ZMAP_REFRESH - 1890)) | (1 << (PlSqlParser.TABLE_LOOKUP_BY_NL - 1890)) | (1 << (PlSqlParser.TABLESPACE_NO - 1890)) | (1 << (PlSqlParser.TABLESPACE - 1890)) | (1 << (PlSqlParser.TABLES - 1890)) | (1 << (PlSqlParser.TABLE_STATS - 1890)) | (1 << (PlSqlParser.TABLE - 1890)) | (1 << (PlSqlParser.TABNO - 1890)) | (1 << (PlSqlParser.TAG - 1890)) | (1 << (PlSqlParser.TANH - 1890)) | (1 << (PlSqlParser.TAN - 1890)) | (1 << (PlSqlParser.TBLORIDXPARTNUM - 1890)) | (1 << (PlSqlParser.TEMPFILE - 1890)) | (1 << (PlSqlParser.TEMPLATE - 1890)) | (1 << (PlSqlParser.TEMPORARY - 1890)) | (1 << (PlSqlParser.TEMP_TABLE - 1890)))) !== 0) || ((((_la - 1922)) & ~0x1f) == 0 && ((1 << (_la - 1922)) & ((1 << (PlSqlParser.TEST - 1922)) | (1 << (PlSqlParser.TEXT - 1922)) | (1 << (PlSqlParser.THAN - 1922)) | (1 << (PlSqlParser.THEN - 1922)) | (1 << (PlSqlParser.THE - 1922)) | (1 << (PlSqlParser.THREAD - 1922)) | (1 << (PlSqlParser.THROUGH - 1922)) | (1 << (PlSqlParser.TIER - 1922)) | (1 << (PlSqlParser.TIES - 1922)) | (1 << (PlSqlParser.TIMEOUT - 1922)) | (1 << (PlSqlParser.TIMESTAMP_LTZ_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMESTAMP - 1922)) | (1 << (PlSqlParser.TIMESTAMP_TZ_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMESTAMP_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMES - 1922)) | (1 << (PlSqlParser.TIME - 1922)) | (1 << (PlSqlParser.TIMEZONE_ABBR - 1922)) | (1 << (PlSqlParser.TIMEZONE_HOUR - 1922)) | (1 << (PlSqlParser.TIMEZONE_MINUTE - 1922)) | (1 << (PlSqlParser.TIMEZONE_OFFSET - 1922)) | (1 << (PlSqlParser.TIMEZONE_REGION - 1922)) | (1 << (PlSqlParser.TIME_ZONE - 1922)) | (1 << (PlSqlParser.TIV_GB - 1922)) | (1 << (PlSqlParser.TIV_SSF - 1922)) | (1 << (PlSqlParser.TO_ACLID - 1922)) | (1 << (PlSqlParser.TO_BINARY_DOUBLE - 1922)) | (1 << (PlSqlParser.TO_BINARY_FLOAT - 1922)) | (1 << (PlSqlParser.TO_BLOB - 1922)) | (1 << (PlSqlParser.TO_CLOB - 1922)) | (1 << (PlSqlParser.TO_DSINTERVAL - 1922)) | (1 << (PlSqlParser.TO_LOB - 1922)))) !== 0) || ((((_la - 1954)) & ~0x1f) == 0 && ((1 << (_la - 1954)) & ((1 << (PlSqlParser.TO_MULTI_BYTE - 1954)) | (1 << (PlSqlParser.TO_NCHAR - 1954)) | (1 << (PlSqlParser.TO_NCLOB - 1954)) | (1 << (PlSqlParser.TO_NUMBER - 1954)) | (1 << (PlSqlParser.TOPLEVEL - 1954)) | (1 << (PlSqlParser.TO_SINGLE_BYTE - 1954)) | (1 << (PlSqlParser.TO_TIMESTAMP - 1954)) | (1 << (PlSqlParser.TO_TIMESTAMP_TZ - 1954)) | (1 << (PlSqlParser.TO_TIME - 1954)) | (1 << (PlSqlParser.TO_TIME_TZ - 1954)) | (1 << (PlSqlParser.TO_YMINTERVAL - 1954)) | (1 << (PlSqlParser.TRACE - 1954)) | (1 << (PlSqlParser.TRACING - 1954)) | (1 << (PlSqlParser.TRACKING - 1954)) | (1 << (PlSqlParser.TRAILING - 1954)) | (1 << (PlSqlParser.TRANSACTION - 1954)) | (1 << (PlSqlParser.TRANSFORM_DISTINCT_AGG - 1954)) | (1 << (PlSqlParser.TRANSITIONAL - 1954)) | (1 << (PlSqlParser.TRANSITION - 1954)) | (1 << (PlSqlParser.TRANSLATE - 1954)) | (1 << (PlSqlParser.TRANSLATION - 1954)) | (1 << (PlSqlParser.TREAT - 1954)) | (1 << (PlSqlParser.TRIGGERS - 1954)) | (1 << (PlSqlParser.TRIGGER - 1954)) | (1 << (PlSqlParser.TRUE - 1954)) | (1 << (PlSqlParser.TRUNCATE - 1954)) | (1 << (PlSqlParser.TRUNC - 1954)) | (1 << (PlSqlParser.TRUSTED - 1954)) | (1 << (PlSqlParser.TRUST - 1954)) | (1 << (PlSqlParser.TUNING - 1954)) | (1 << (PlSqlParser.TX - 1954)))) !== 0) || ((((_la - 1986)) & ~0x1f) == 0 && ((1 << (_la - 1986)) & ((1 << (PlSqlParser.TYPES - 1986)) | (1 << (PlSqlParser.TYPE - 1986)) | (1 << (PlSqlParser.TZ_OFFSET - 1986)) | (1 << (PlSqlParser.UB2 - 1986)) | (1 << (PlSqlParser.UBA - 1986)) | (1 << (PlSqlParser.UCS2 - 1986)) | (1 << (PlSqlParser.UID - 1986)) | (1 << (PlSqlParser.UNARCHIVED - 1986)) | (1 << (PlSqlParser.UNBOUNDED - 1986)) | (1 << (PlSqlParser.UNBOUND - 1986)) | (1 << (PlSqlParser.UNCONDITIONAL - 1986)) | (1 << (PlSqlParser.UNDER - 1986)) | (1 << (PlSqlParser.UNDO - 1986)) | (1 << (PlSqlParser.UNDROP - 1986)) | (1 << (PlSqlParser.UNIFORM - 1986)) | (1 << (PlSqlParser.UNISTR - 1986)) | (1 << (PlSqlParser.UNLIMITED - 1986)) | (1 << (PlSqlParser.UNLOAD - 1986)) | (1 << (PlSqlParser.UNLOCK - 1986)) | (1 << (PlSqlParser.UNMATCHED - 1986)) | (1 << (PlSqlParser.UNNEST_INNERJ_DISTINCT_VIEW - 1986)) | (1 << (PlSqlParser.UNNEST_NOSEMIJ_NODISTINCTVIEW - 1986)) | (1 << (PlSqlParser.UNNEST_SEMIJ_VIEW - 1986)) | (1 << (PlSqlParser.UNNEST - 1986)) | (1 << (PlSqlParser.UNPACKED - 1986)) | (1 << (PlSqlParser.UNPIVOT - 1986)) | (1 << (PlSqlParser.UNPLUG - 1986)) | (1 << (PlSqlParser.UNPROTECTED - 1986)) | (1 << (PlSqlParser.UNQUIESCE - 1986)) | (1 << (PlSqlParser.UNRECOVERABLE - 1986)))) !== 0) || ((((_la - 2018)) & ~0x1f) == 0 && ((1 << (_la - 2018)) & ((1 << (PlSqlParser.UNRESTRICTED - 2018)) | (1 << (PlSqlParser.UNSUBSCRIBE - 2018)) | (1 << (PlSqlParser.UNTIL - 2018)) | (1 << (PlSqlParser.UNUSABLE - 2018)) | (1 << (PlSqlParser.UNUSED - 2018)) | (1 << (PlSqlParser.UPDATABLE - 2018)) | (1 << (PlSqlParser.UPDATED - 2018)) | (1 << (PlSqlParser.UPDATEXML - 2018)) | (1 << (PlSqlParser.UPD_INDEXES - 2018)) | (1 << (PlSqlParser.UPD_JOININDEX - 2018)) | (1 << (PlSqlParser.UPGRADE - 2018)) | (1 << (PlSqlParser.UPPER - 2018)) | (1 << (PlSqlParser.UPSERT - 2018)) | (1 << (PlSqlParser.UROWID - 2018)) | (1 << (PlSqlParser.USABLE - 2018)) | (1 << (PlSqlParser.USAGE - 2018)) | (1 << (PlSqlParser.USE_ANTI - 2018)) | (1 << (PlSqlParser.USE_CONCAT - 2018)) | (1 << (PlSqlParser.USE_CUBE - 2018)) | (1 << (PlSqlParser.USE_HASH_AGGREGATION - 2018)) | (1 << (PlSqlParser.USE_HASH_GBY_FOR_PUSHDOWN - 2018)) | (1 << (PlSqlParser.USE_HASH - 2018)) | (1 << (PlSqlParser.USE_HIDDEN_PARTITIONS - 2018)) | (1 << (PlSqlParser.USE_INVISIBLE_INDEXES - 2018)) | (1 << (PlSqlParser.USE_MERGE_CARTESIAN - 2018)) | (1 << (PlSqlParser.USE_MERGE - 2018)) | (1 << (PlSqlParser.USE_NL - 2018)) | (1 << (PlSqlParser.USE_NL_WITH_INDEX - 2018)) | (1 << (PlSqlParser.USE_PRIVATE_OUTLINES - 2018)) | (1 << (PlSqlParser.USER_DATA - 2018)) | (1 << (PlSqlParser.USER_DEFINED - 2018)))) !== 0) || ((((_la - 2050)) & ~0x1f) == 0 && ((1 << (_la - 2050)) & ((1 << (PlSqlParser.USERENV - 2050)) | (1 << (PlSqlParser.USERGROUP - 2050)) | (1 << (PlSqlParser.USER_RECYCLEBIN - 2050)) | (1 << (PlSqlParser.USERS - 2050)) | (1 << (PlSqlParser.USER_TABLESPACES - 2050)) | (1 << (PlSqlParser.USER - 2050)) | (1 << (PlSqlParser.USE_SEMI - 2050)) | (1 << (PlSqlParser.USE_STORED_OUTLINES - 2050)) | (1 << (PlSqlParser.USE_TTT_FOR_GSETS - 2050)) | (1 << (PlSqlParser.USE - 2050)) | (1 << (PlSqlParser.USE_VECTOR_AGGREGATION - 2050)) | (1 << (PlSqlParser.USE_WEAK_NAME_RESL - 2050)) | (1 << (PlSqlParser.USING_NO_EXPAND - 2050)) | (1 << (PlSqlParser.USING - 2050)) | (1 << (PlSqlParser.UTF16BE - 2050)) | (1 << (PlSqlParser.UTF16LE - 2050)) | (1 << (PlSqlParser.UTF32 - 2050)) | (1 << (PlSqlParser.UTF8 - 2050)) | (1 << (PlSqlParser.V1 - 2050)) | (1 << (PlSqlParser.V2 - 2050)) | (1 << (PlSqlParser.VALIDATE - 2050)) | (1 << (PlSqlParser.VALIDATION - 2050)) | (1 << (PlSqlParser.VALID_TIME_END - 2050)) | (1 << (PlSqlParser.VALUE - 2050)) | (1 << (PlSqlParser.VARCHAR2 - 2050)) | (1 << (PlSqlParser.VARCHAR - 2050)) | (1 << (PlSqlParser.VARIABLE - 2050)) | (1 << (PlSqlParser.VAR_POP - 2050)) | (1 << (PlSqlParser.VARRAYS - 2050)) | (1 << (PlSqlParser.VARRAY - 2050)) | (1 << (PlSqlParser.VAR_SAMP - 2050)))) !== 0) || ((((_la - 2082)) & ~0x1f) == 0 && ((1 << (_la - 2082)) & ((1 << (PlSqlParser.VARYING - 2082)) | (1 << (PlSqlParser.VECTOR_READ_TRACE - 2082)) | (1 << (PlSqlParser.VECTOR_READ - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM_DIMS - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM_FACT - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM - 2082)) | (1 << (PlSqlParser.VERIFIER - 2082)) | (1 << (PlSqlParser.VERIFY - 2082)) | (1 << (PlSqlParser.VERSIONING - 2082)) | (1 << (PlSqlParser.VERSIONS_ENDSCN - 2082)) | (1 << (PlSqlParser.VERSIONS_ENDTIME - 2082)) | (1 << (PlSqlParser.VERSIONS_OPERATION - 2082)) | (1 << (PlSqlParser.VERSIONS_STARTSCN - 2082)) | (1 << (PlSqlParser.VERSIONS_STARTTIME - 2082)) | (1 << (PlSqlParser.VERSIONS - 2082)) | (1 << (PlSqlParser.VERSIONS_XID - 2082)) | (1 << (PlSqlParser.VERSION - 2082)) | (1 << (PlSqlParser.VIOLATION - 2082)) | (1 << (PlSqlParser.VIRTUAL - 2082)) | (1 << (PlSqlParser.VISIBILITY - 2082)) | (1 << (PlSqlParser.VISIBLE - 2082)) | (1 << (PlSqlParser.VOLUME - 2082)) | (1 << (PlSqlParser.VSIZE - 2082)) | (1 << (PlSqlParser.WAIT - 2082)) | (1 << (PlSqlParser.WALLET - 2082)) | (1 << (PlSqlParser.WARNING - 2082)) | (1 << (PlSqlParser.WEEKS - 2082)) | (1 << (PlSqlParser.WEEK - 2082)) | (1 << (PlSqlParser.WELLFORMED - 2082)) | (1 << (PlSqlParser.WHENEVER - 2082)) | (1 << (PlSqlParser.WHEN - 2082)))) !== 0) || ((((_la - 2115)) & ~0x1f) == 0 && ((1 << (_la - 2115)) & ((1 << (PlSqlParser.WHILE - 2115)) | (1 << (PlSqlParser.WHITESPACE - 2115)) | (1 << (PlSqlParser.WIDTH_BUCKET - 2115)) | (1 << (PlSqlParser.WITHIN - 2115)) | (1 << (PlSqlParser.WITHOUT - 2115)) | (1 << (PlSqlParser.WITH_PLSQL - 2115)) | (1 << (PlSqlParser.WORK - 2115)) | (1 << (PlSqlParser.WRAPPED - 2115)) | (1 << (PlSqlParser.WRAPPER - 2115)) | (1 << (PlSqlParser.WRITE - 2115)) | (1 << (PlSqlParser.XDB_FASTPATH_INSERT - 2115)) | (1 << (PlSqlParser.X_DYN_PRUNE - 2115)) | (1 << (PlSqlParser.XID - 2115)) | (1 << (PlSqlParser.XML2OBJECT - 2115)) | (1 << (PlSqlParser.XMLAGG - 2115)) | (1 << (PlSqlParser.XMLATTRIBUTES - 2115)) | (1 << (PlSqlParser.XMLCAST - 2115)) | (1 << (PlSqlParser.XMLCDATA - 2115)) | (1 << (PlSqlParser.XMLCOLATTVAL - 2115)) | (1 << (PlSqlParser.XMLCOMMENT - 2115)) | (1 << (PlSqlParser.XMLCONCAT - 2115)) | (1 << (PlSqlParser.XMLDIFF - 2115)) | (1 << (PlSqlParser.XML_DML_RWT_STMT - 2115)) | (1 << (PlSqlParser.XMLELEMENT - 2115)) | (1 << (PlSqlParser.XMLEXISTS2 - 2115)) | (1 << (PlSqlParser.XMLEXISTS - 2115)) | (1 << (PlSqlParser.XMLFOREST - 2115)) | (1 << (PlSqlParser.XMLINDEX_REWRITE_IN_SELECT - 2115)) | (1 << (PlSqlParser.XMLINDEX_REWRITE - 2115)))) !== 0) || ((((_la - 2147)) & ~0x1f) == 0 && ((1 << (_la - 2147)) & ((1 << (PlSqlParser.XMLINDEX_SEL_IDX_TBL - 2147)) | (1 << (PlSqlParser.XMLISNODE - 2147)) | (1 << (PlSqlParser.XMLISVALID - 2147)) | (1 << (PlSqlParser.XMLNAMESPACES - 2147)) | (1 << (PlSqlParser.XMLPARSE - 2147)) | (1 << (PlSqlParser.XMLPATCH - 2147)) | (1 << (PlSqlParser.XMLPI - 2147)) | (1 << (PlSqlParser.XMLQUERYVAL - 2147)) | (1 << (PlSqlParser.XMLQUERY - 2147)) | (1 << (PlSqlParser.XMLROOT - 2147)) | (1 << (PlSqlParser.XMLSCHEMA - 2147)) | (1 << (PlSqlParser.XMLSERIALIZE - 2147)) | (1 << (PlSqlParser.XMLTABLE - 2147)) | (1 << (PlSqlParser.XMLTRANSFORMBLOB - 2147)) | (1 << (PlSqlParser.XMLTRANSFORM - 2147)) | (1 << (PlSqlParser.XMLTYPE - 2147)) | (1 << (PlSqlParser.XML - 2147)) | (1 << (PlSqlParser.XPATHTABLE - 2147)) | (1 << (PlSqlParser.XS_SYS_CONTEXT - 2147)) | (1 << (PlSqlParser.XS - 2147)) | (1 << (PlSqlParser.YEARS - 2147)) | (1 << (PlSqlParser.YEAR - 2147)) | (1 << (PlSqlParser.YES - 2147)) | (1 << (PlSqlParser.YMINTERVAL_UNCONSTRAINED - 2147)) | (1 << (PlSqlParser.ZONEMAP - 2147)) | (1 << (PlSqlParser.ZONE - 2147)) | (1 << (PlSqlParser.PREDICTION - 2147)) | (1 << (PlSqlParser.PREDICTION_BOUNDS - 2147)) | (1 << (PlSqlParser.PREDICTION_COST - 2147)) | (1 << (PlSqlParser.PREDICTION_DETAILS - 2147)) | (1 << (PlSqlParser.PREDICTION_PROBABILITY - 2147)))) !== 0) || ((((_la - 2179)) & ~0x1f) == 0 && ((1 << (_la - 2179)) & ((1 << (PlSqlParser.PREDICTION_SET - 2179)) | (1 << (PlSqlParser.CUME_DIST - 2179)) | (1 << (PlSqlParser.DENSE_RANK - 2179)) | (1 << (PlSqlParser.LISTAGG - 2179)) | (1 << (PlSqlParser.PERCENT_RANK - 2179)) | (1 << (PlSqlParser.PERCENTILE_CONT - 2179)) | (1 << (PlSqlParser.PERCENTILE_DISC - 2179)) | (1 << (PlSqlParser.RANK - 2179)) | (1 << (PlSqlParser.AVG - 2179)) | (1 << (PlSqlParser.CORR - 2179)) | (1 << (PlSqlParser.COVAR_ - 2179)) | (1 << (PlSqlParser.LAG - 2179)) | (1 << (PlSqlParser.LEAD - 2179)) | (1 << (PlSqlParser.MAX - 2179)) | (1 << (PlSqlParser.MEDIAN - 2179)) | (1 << (PlSqlParser.MIN - 2179)) | (1 << (PlSqlParser.NTILE - 2179)) | (1 << (PlSqlParser.NVL - 2179)) | (1 << (PlSqlParser.RATIO_TO_REPORT - 2179)) | (1 << (PlSqlParser.REGR_ - 2179)) | (1 << (PlSqlParser.ROUND - 2179)) | (1 << (PlSqlParser.ROW_NUMBER - 2179)) | (1 << (PlSqlParser.SUBSTR - 2179)) | (1 << (PlSqlParser.TO_CHAR - 2179)) | (1 << (PlSqlParser.TRIM - 2179)) | (1 << (PlSqlParser.SUM - 2179)) | (1 << (PlSqlParser.STDDEV - 2179)) | (1 << (PlSqlParser.VAR_ - 2179)) | (1 << (PlSqlParser.VARIANCE - 2179)) | (1 << (PlSqlParser.LEAST - 2179)) | (1 << (PlSqlParser.GREATEST - 2179)))) !== 0) || ((((_la - 2211)) & ~0x1f) == 0 && ((1 << (_la - 2211)) & ((1 << (PlSqlParser.TO_DATE - 2211)) | (1 << (PlSqlParser.PERIOD - 2211)) | (1 << (PlSqlParser.COMMA - 2211)))) !== 0) || _la===PlSqlParser.REGULAR_ID);
+ this.state = 5058;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ this.state = 5060;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,522,this._ctx);
+ if(la_===1) {
+ this.state = 5059;
+ this.new_values_clause();
+
+ }
+
+ }
+ this.state = 5065;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,524,this._ctx);
+ if(la_===1) {
+ this.state = 5064;
+ this.mv_log_purge_clause();
+
+ }
+ }
+ this.state = 5071;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,525,this._ctx);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function New_values_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_new_values_clause;
+ return this;
+}
+
+New_values_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+New_values_clauseContext.prototype.constructor = New_values_clauseContext;
+
+New_values_clauseContext.prototype.NEW = function() {
+ return this.getToken(PlSqlParser.NEW, 0);
+};
+
+New_values_clauseContext.prototype.VALUES = function() {
+ return this.getToken(PlSqlParser.VALUES, 0);
+};
+
+New_values_clauseContext.prototype.INCLUDING = function() {
+ return this.getToken(PlSqlParser.INCLUDING, 0);
+};
+
+New_values_clauseContext.prototype.EXCLUDING = function() {
+ return this.getToken(PlSqlParser.EXCLUDING, 0);
+};
+
+New_values_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterNew_values_clause(this);
+ }
+};
+
+New_values_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitNew_values_clause(this);
+ }
+};
+
+New_values_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitNew_values_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.New_values_clauseContext = New_values_clauseContext;
+
+PlSqlParser.prototype.new_values_clause = function() {
+
+ var localctx = new New_values_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 504, PlSqlParser.RULE_new_values_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5072;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.EXCLUDING || _la===PlSqlParser.INCLUDING)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 5073;
+ this.match(PlSqlParser.NEW);
+ this.state = 5074;
+ this.match(PlSqlParser.VALUES);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Mv_log_purge_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_mv_log_purge_clause;
+ return this;
+}
+
+Mv_log_purge_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Mv_log_purge_clauseContext.prototype.constructor = Mv_log_purge_clauseContext;
+
+Mv_log_purge_clauseContext.prototype.PURGE = function() {
+ return this.getToken(PlSqlParser.PURGE, 0);
+};
+
+Mv_log_purge_clauseContext.prototype.IMMEDIATE = function() {
+ return this.getToken(PlSqlParser.IMMEDIATE, 0);
+};
+
+Mv_log_purge_clauseContext.prototype.SYNCHRONOUS = function() {
+ return this.getToken(PlSqlParser.SYNCHRONOUS, 0);
+};
+
+Mv_log_purge_clauseContext.prototype.ASYNCHRONOUS = function() {
+ return this.getToken(PlSqlParser.ASYNCHRONOUS, 0);
+};
+
+Mv_log_purge_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterMv_log_purge_clause(this);
+ }
+};
+
+Mv_log_purge_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitMv_log_purge_clause(this);
+ }
+};
+
+Mv_log_purge_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitMv_log_purge_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Mv_log_purge_clauseContext = Mv_log_purge_clauseContext;
+
+PlSqlParser.prototype.mv_log_purge_clause = function() {
+
+ var localctx = new Mv_log_purge_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 506, PlSqlParser.RULE_mv_log_purge_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5076;
+ this.match(PlSqlParser.PURGE);
+
+ this.state = 5077;
+ this.match(PlSqlParser.IMMEDIATE);
+ this.state = 5079;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,526,this._ctx);
+ if(la_===1) {
+ this.state = 5078;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.ASYNCHRONOUS || _la===PlSqlParser.SYNCHRONOUS)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_materialized_viewContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_create_materialized_view;
+ this.mv_tablespace = null; // Id_expressionContext
+ return this;
+}
+
+Create_materialized_viewContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_materialized_viewContext.prototype.constructor = Create_materialized_viewContext;
+
+Create_materialized_viewContext.prototype.CREATE = function() {
+ return this.getToken(PlSqlParser.CREATE, 0);
+};
+
+Create_materialized_viewContext.prototype.MATERIALIZED = function() {
+ return this.getToken(PlSqlParser.MATERIALIZED, 0);
+};
+
+Create_materialized_viewContext.prototype.VIEW = function() {
+ return this.getToken(PlSqlParser.VIEW, 0);
+};
+
+Create_materialized_viewContext.prototype.tableview_name = function() {
+ return this.getTypedRuleContext(Tableview_nameContext,0);
+};
+
+Create_materialized_viewContext.prototype.AS = function() {
+ return this.getToken(PlSqlParser.AS, 0);
+};
+
+Create_materialized_viewContext.prototype.select_only_statement = function() {
+ return this.getTypedRuleContext(Select_only_statementContext,0);
+};
+
+Create_materialized_viewContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Create_materialized_viewContext.prototype.ON = function() {
+ return this.getToken(PlSqlParser.ON, 0);
+};
+
+Create_materialized_viewContext.prototype.PREBUILT = function() {
+ return this.getToken(PlSqlParser.PREBUILT, 0);
+};
+
+Create_materialized_viewContext.prototype.TABLE = function() {
+ return this.getToken(PlSqlParser.TABLE, 0);
+};
+
+Create_materialized_viewContext.prototype.OF = function() {
+ return this.getToken(PlSqlParser.OF, 0);
+};
+
+Create_materialized_viewContext.prototype.type_name = function() {
+ return this.getTypedRuleContext(Type_nameContext,0);
+};
+
+Create_materialized_viewContext.prototype.USING = function() {
+ return this.getToken(PlSqlParser.USING, 0);
+};
+
+Create_materialized_viewContext.prototype.INDEX = function() {
+ return this.getToken(PlSqlParser.INDEX, 0);
+};
+
+Create_materialized_viewContext.prototype.NO = function() {
+ return this.getToken(PlSqlParser.NO, 0);
+};
+
+Create_materialized_viewContext.prototype.create_mv_refresh = function() {
+ return this.getTypedRuleContext(Create_mv_refreshContext,0);
+};
+
+Create_materialized_viewContext.prototype.FOR = function() {
+ return this.getToken(PlSqlParser.FOR, 0);
+};
+
+Create_materialized_viewContext.prototype.UPDATE = function() {
+ return this.getToken(PlSqlParser.UPDATE, 0);
+};
+
+Create_materialized_viewContext.prototype.QUERY = function() {
+ return this.getToken(PlSqlParser.QUERY, 0);
+};
+
+Create_materialized_viewContext.prototype.REWRITE = function() {
+ return this.getToken(PlSqlParser.REWRITE, 0);
+};
+
+Create_materialized_viewContext.prototype.DISABLE = function() {
+ return this.getToken(PlSqlParser.DISABLE, 0);
+};
+
+Create_materialized_viewContext.prototype.ENABLE = function() {
+ return this.getToken(PlSqlParser.ENABLE, 0);
+};
+
+Create_materialized_viewContext.prototype.REDUCED = function() {
+ return this.getToken(PlSqlParser.REDUCED, 0);
+};
+
+Create_materialized_viewContext.prototype.PRECISION = function() {
+ return this.getToken(PlSqlParser.PRECISION, 0);
+};
+
+Create_materialized_viewContext.prototype.physical_properties = function() {
+ return this.getTypedRuleContext(Physical_propertiesContext,0);
+};
+
+Create_materialized_viewContext.prototype.parallel_clause = function() {
+ return this.getTypedRuleContext(Parallel_clauseContext,0);
+};
+
+Create_materialized_viewContext.prototype.build_clause = function() {
+ return this.getTypedRuleContext(Build_clauseContext,0);
+};
+
+Create_materialized_viewContext.prototype.WITH = function() {
+ return this.getToken(PlSqlParser.WITH, 0);
+};
+
+Create_materialized_viewContext.prototype.WITHOUT = function() {
+ return this.getToken(PlSqlParser.WITHOUT, 0);
+};
+
+Create_materialized_viewContext.prototype.CACHE = function() {
+ return this.getToken(PlSqlParser.CACHE, 0);
+};
+
+Create_materialized_viewContext.prototype.NOCACHE = function() {
+ return this.getToken(PlSqlParser.NOCACHE, 0);
+};
+
+Create_materialized_viewContext.prototype.physical_attributes_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Physical_attributes_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Physical_attributes_clauseContext,i);
+ }
+};
+
+Create_materialized_viewContext.prototype.TABLESPACE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.TABLESPACE);
+ } else {
+ return this.getToken(PlSqlParser.TABLESPACE, i);
+ }
+};
+
+
+Create_materialized_viewContext.prototype.id_expression = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Id_expressionContext);
+ } else {
+ return this.getTypedRuleContext(Id_expressionContext,i);
+ }
+};
+
+Create_materialized_viewContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterCreate_materialized_view(this);
+ }
+};
+
+Create_materialized_viewContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitCreate_materialized_view(this);
+ }
+};
+
+Create_materialized_viewContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitCreate_materialized_view(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Create_materialized_viewContext = Create_materialized_viewContext;
+
+PlSqlParser.prototype.create_materialized_view = function() {
+
+ var localctx = new Create_materialized_viewContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 508, PlSqlParser.RULE_create_materialized_view);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5081;
+ this.match(PlSqlParser.CREATE);
+ this.state = 5082;
+ this.match(PlSqlParser.MATERIALIZED);
+ this.state = 5083;
+ this.match(PlSqlParser.VIEW);
+ this.state = 5084;
+ this.tableview_name();
+ this.state = 5087;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.OF) {
+ this.state = 5085;
+ this.match(PlSqlParser.OF);
+ this.state = 5086;
+ this.type_name();
+ }
+
+ this.state = 5109;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.ON:
+ this.state = 5089;
+ this.match(PlSqlParser.ON);
+ this.state = 5090;
+ this.match(PlSqlParser.PREBUILT);
+ this.state = 5091;
+ this.match(PlSqlParser.TABLE);
+ this.state = 5095;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.WITHOUT || _la===PlSqlParser.WITH) {
+ this.state = 5092;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.WITHOUT || _la===PlSqlParser.WITH)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 5093;
+ this.match(PlSqlParser.REDUCED);
+ this.state = 5094;
+ this.match(PlSqlParser.PRECISION);
+ }
+
+ break;
+ case PlSqlParser.AS:
+ case PlSqlParser.BUILD:
+ case PlSqlParser.CACHE:
+ case PlSqlParser.DISABLE:
+ case PlSqlParser.ENABLE:
+ case PlSqlParser.FILESYSTEM_LIKE_LOGGING:
+ case PlSqlParser.FOR:
+ case PlSqlParser.INITRANS:
+ case PlSqlParser.LOGGING:
+ case PlSqlParser.NEVER:
+ case PlSqlParser.NOCACHE:
+ case PlSqlParser.NOLOGGING:
+ case PlSqlParser.NOPARALLEL:
+ case PlSqlParser.PARALLEL:
+ case PlSqlParser.PCTFREE:
+ case PlSqlParser.PCTUSED:
+ case PlSqlParser.REFRESH:
+ case PlSqlParser.SEGMENT:
+ case PlSqlParser.STORAGE:
+ case PlSqlParser.TABLESPACE:
+ case PlSqlParser.USING:
+ this.state = 5098;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.FILESYSTEM_LIKE_LOGGING || _la===PlSqlParser.INITRANS || _la===PlSqlParser.LOGGING || _la===PlSqlParser.NOLOGGING || _la===PlSqlParser.PCTFREE || _la===PlSqlParser.PCTUSED || _la===PlSqlParser.SEGMENT || _la===PlSqlParser.STORAGE || _la===PlSqlParser.TABLESPACE) {
+ this.state = 5097;
+ this.physical_properties();
+ }
+
+ this.state = 5101;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.CACHE || _la===PlSqlParser.NOCACHE) {
+ this.state = 5100;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.CACHE || _la===PlSqlParser.NOCACHE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 5104;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.NOPARALLEL || _la===PlSqlParser.PARALLEL) {
+ this.state = 5103;
+ this.parallel_clause();
+ }
+
+ this.state = 5107;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.BUILD) {
+ this.state = 5106;
+ this.build_clause();
+ }
+
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 5128;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,537,this._ctx);
+ if(la_===1) {
+ this.state = 5111;
+ this.match(PlSqlParser.USING);
+ this.state = 5112;
+ this.match(PlSqlParser.INDEX);
+ this.state = 5122;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.INITRANS || _la===PlSqlParser.PCTFREE || _la===PlSqlParser.PCTUSED || _la===PlSqlParser.STORAGE || _la===PlSqlParser.TABLESPACE) {
+ this.state = 5116;
+ this._errHandler.sync(this);
+ var _alt = 1;
+ do {
+ switch (_alt) {
+ case 1:
+ this.state = 5116;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.INITRANS:
+ case PlSqlParser.PCTFREE:
+ case PlSqlParser.PCTUSED:
+ case PlSqlParser.STORAGE:
+ this.state = 5113;
+ this.physical_attributes_clause();
+ break;
+ case PlSqlParser.TABLESPACE:
+ this.state = 5114;
+ this.match(PlSqlParser.TABLESPACE);
+ this.state = 5115;
+ localctx.mv_tablespace = this.id_expression();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 5118;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,535, this._ctx);
+ } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
+ this.state = 5124;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+
+ } else if(la_===2) {
+ this.state = 5125;
+ this.match(PlSqlParser.USING);
+ this.state = 5126;
+ this.match(PlSqlParser.NO);
+ this.state = 5127;
+ this.match(PlSqlParser.INDEX);
+
+ }
+ this.state = 5131;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.NEVER || _la===PlSqlParser.REFRESH) {
+ this.state = 5130;
+ this.create_mv_refresh();
+ }
+
+ this.state = 5135;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.FOR) {
+ this.state = 5133;
+ this.match(PlSqlParser.FOR);
+ this.state = 5134;
+ this.match(PlSqlParser.UPDATE);
+ }
+
+ this.state = 5140;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.DISABLE || _la===PlSqlParser.ENABLE) {
+ this.state = 5137;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.DISABLE || _la===PlSqlParser.ENABLE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 5138;
+ this.match(PlSqlParser.QUERY);
+ this.state = 5139;
+ this.match(PlSqlParser.REWRITE);
+ }
+
+ this.state = 5142;
+ this.match(PlSqlParser.AS);
+ this.state = 5143;
+ this.select_only_statement();
+ this.state = 5144;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_mv_refreshContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_create_mv_refresh;
+ this.rb_segment = null; // Token
+ return this;
+}
+
+Create_mv_refreshContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_mv_refreshContext.prototype.constructor = Create_mv_refreshContext;
+
+Create_mv_refreshContext.prototype.NEVER = function() {
+ return this.getToken(PlSqlParser.NEVER, 0);
+};
+
+Create_mv_refreshContext.prototype.REFRESH = function() {
+ return this.getToken(PlSqlParser.REFRESH, 0);
+};
+
+Create_mv_refreshContext.prototype.ON = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.ON);
+ } else {
+ return this.getToken(PlSqlParser.ON, i);
+ }
+};
+
+
+Create_mv_refreshContext.prototype.WITH = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.WITH);
+ } else {
+ return this.getToken(PlSqlParser.WITH, i);
+ }
+};
+
+
+Create_mv_refreshContext.prototype.USING = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.USING);
+ } else {
+ return this.getToken(PlSqlParser.USING, i);
+ }
+};
+
+
+Create_mv_refreshContext.prototype.CONSTRAINTS = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.CONSTRAINTS);
+ } else {
+ return this.getToken(PlSqlParser.CONSTRAINTS, i);
+ }
+};
+
+
+Create_mv_refreshContext.prototype.FAST = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.FAST);
+ } else {
+ return this.getToken(PlSqlParser.FAST, i);
+ }
+};
+
+
+Create_mv_refreshContext.prototype.COMPLETE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMPLETE);
+ } else {
+ return this.getToken(PlSqlParser.COMPLETE, i);
+ }
+};
+
+
+Create_mv_refreshContext.prototype.FORCE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.FORCE);
+ } else {
+ return this.getToken(PlSqlParser.FORCE, i);
+ }
+};
+
+
+Create_mv_refreshContext.prototype.DEMAND = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.DEMAND);
+ } else {
+ return this.getToken(PlSqlParser.DEMAND, i);
+ }
+};
+
+
+Create_mv_refreshContext.prototype.COMMIT = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMIT);
+ } else {
+ return this.getToken(PlSqlParser.COMMIT, i);
+ }
+};
+
+
+Create_mv_refreshContext.prototype.ENFORCED = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.ENFORCED);
+ } else {
+ return this.getToken(PlSqlParser.ENFORCED, i);
+ }
+};
+
+
+Create_mv_refreshContext.prototype.TRUSTED = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.TRUSTED);
+ } else {
+ return this.getToken(PlSqlParser.TRUSTED, i);
+ }
+};
+
+
+Create_mv_refreshContext.prototype.START = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.START);
+ } else {
+ return this.getToken(PlSqlParser.START, i);
+ }
+};
+
+
+Create_mv_refreshContext.prototype.NEXT = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.NEXT);
+ } else {
+ return this.getToken(PlSqlParser.NEXT, i);
+ }
+};
+
+
+Create_mv_refreshContext.prototype.PRIMARY = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.PRIMARY);
+ } else {
+ return this.getToken(PlSqlParser.PRIMARY, i);
+ }
+};
+
+
+Create_mv_refreshContext.prototype.KEY = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.KEY);
+ } else {
+ return this.getToken(PlSqlParser.KEY, i);
+ }
+};
+
+
+Create_mv_refreshContext.prototype.ROWID = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.ROWID);
+ } else {
+ return this.getToken(PlSqlParser.ROWID, i);
+ }
+};
+
+
+Create_mv_refreshContext.prototype.DEFAULT = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.DEFAULT);
+ } else {
+ return this.getToken(PlSqlParser.DEFAULT, i);
+ }
+};
+
+
+Create_mv_refreshContext.prototype.ROLLBACK = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.ROLLBACK);
+ } else {
+ return this.getToken(PlSqlParser.ROLLBACK, i);
+ }
+};
+
+
+Create_mv_refreshContext.prototype.SEGMENT = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.SEGMENT);
+ } else {
+ return this.getToken(PlSqlParser.SEGMENT, i);
+ }
+};
+
+
+Create_mv_refreshContext.prototype.REGULAR_ID = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.REGULAR_ID);
+ } else {
+ return this.getToken(PlSqlParser.REGULAR_ID, i);
+ }
+};
+
+
+Create_mv_refreshContext.prototype.MASTER = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.MASTER);
+ } else {
+ return this.getToken(PlSqlParser.MASTER, i);
+ }
+};
+
+
+Create_mv_refreshContext.prototype.LOCAL = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.LOCAL);
+ } else {
+ return this.getToken(PlSqlParser.LOCAL, i);
+ }
+};
+
+
+Create_mv_refreshContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterCreate_mv_refresh(this);
+ }
+};
+
+Create_mv_refreshContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitCreate_mv_refresh(this);
+ }
+};
+
+Create_mv_refreshContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitCreate_mv_refresh(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Create_mv_refreshContext = Create_mv_refreshContext;
+
+PlSqlParser.prototype.create_mv_refresh = function() {
+
+ var localctx = new Create_mv_refreshContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 510, PlSqlParser.RULE_create_mv_refresh);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5185;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.NEVER:
+ this.state = 5146;
+ this.match(PlSqlParser.NEVER);
+ this.state = 5147;
+ this.match(PlSqlParser.REFRESH);
+ break;
+ case PlSqlParser.REFRESH:
+ this.state = 5148;
+ this.match(PlSqlParser.REFRESH);
+ this.state = 5181;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 5181;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,546,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 5149;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.COMPLETE || _la===PlSqlParser.FAST || _la===PlSqlParser.FORCE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+
+ case 2:
+ this.state = 5150;
+ this.match(PlSqlParser.ON);
+ this.state = 5151;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.COMMIT || _la===PlSqlParser.DEMAND)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+
+ case 3:
+ this.state = 5155;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.START:
+ this.state = 5152;
+ this.match(PlSqlParser.START);
+ this.state = 5153;
+ this.match(PlSqlParser.WITH);
+ break;
+ case PlSqlParser.NEXT:
+ this.state = 5154;
+ this.match(PlSqlParser.NEXT);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ break;
+
+ case 4:
+ this.state = 5157;
+ this.match(PlSqlParser.WITH);
+ this.state = 5161;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.PRIMARY:
+ this.state = 5158;
+ this.match(PlSqlParser.PRIMARY);
+ this.state = 5159;
+ this.match(PlSqlParser.KEY);
+ break;
+ case PlSqlParser.ROWID:
+ this.state = 5160;
+ this.match(PlSqlParser.ROWID);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ break;
+
+ case 5:
+ this.state = 5163;
+ this.match(PlSqlParser.USING);
+ this.state = 5176;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.DEFAULT:
+ this.state = 5164;
+ this.match(PlSqlParser.DEFAULT);
+ this.state = 5166;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.LOCAL || _la===PlSqlParser.MASTER) {
+ this.state = 5165;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.LOCAL || _la===PlSqlParser.MASTER)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 5168;
+ this.match(PlSqlParser.ROLLBACK);
+ this.state = 5169;
+ this.match(PlSqlParser.SEGMENT);
+ break;
+ case PlSqlParser.LOCAL:
+ case PlSqlParser.MASTER:
+ case PlSqlParser.ROLLBACK:
+ this.state = 5171;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.LOCAL || _la===PlSqlParser.MASTER) {
+ this.state = 5170;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.LOCAL || _la===PlSqlParser.MASTER)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 5173;
+ this.match(PlSqlParser.ROLLBACK);
+ this.state = 5174;
+ this.match(PlSqlParser.SEGMENT);
+ this.state = 5175;
+ localctx.rb_segment = this.match(PlSqlParser.REGULAR_ID);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ break;
+
+ case 6:
+ this.state = 5178;
+ this.match(PlSqlParser.USING);
+ this.state = 5179;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.ENFORCED || _la===PlSqlParser.TRUSTED)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 5180;
+ this.match(PlSqlParser.CONSTRAINTS);
+ break;
+
+ }
+ this.state = 5183;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(_la===PlSqlParser.COMPLETE || _la===PlSqlParser.FAST || _la===PlSqlParser.FORCE || _la===PlSqlParser.NEXT || _la===PlSqlParser.ON || _la===PlSqlParser.START || _la===PlSqlParser.USING || _la===PlSqlParser.WITH);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_contextContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_create_context;
+ return this;
+}
+
+Create_contextContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_contextContext.prototype.constructor = Create_contextContext;
+
+Create_contextContext.prototype.CREATE = function() {
+ return this.getToken(PlSqlParser.CREATE, 0);
+};
+
+Create_contextContext.prototype.CONTEXT = function() {
+ return this.getToken(PlSqlParser.CONTEXT, 0);
+};
+
+Create_contextContext.prototype.oracle_namespace = function() {
+ return this.getTypedRuleContext(Oracle_namespaceContext,0);
+};
+
+Create_contextContext.prototype.USING = function() {
+ return this.getToken(PlSqlParser.USING, 0);
+};
+
+Create_contextContext.prototype.package_name = function() {
+ return this.getTypedRuleContext(Package_nameContext,0);
+};
+
+Create_contextContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Create_contextContext.prototype.OR = function() {
+ return this.getToken(PlSqlParser.OR, 0);
+};
+
+Create_contextContext.prototype.REPLACE = function() {
+ return this.getToken(PlSqlParser.REPLACE, 0);
+};
+
+Create_contextContext.prototype.schema_object_name = function() {
+ return this.getTypedRuleContext(Schema_object_nameContext,0);
+};
+
+Create_contextContext.prototype.PERIOD = function() {
+ return this.getToken(PlSqlParser.PERIOD, 0);
+};
+
+Create_contextContext.prototype.INITIALIZED = function() {
+ return this.getToken(PlSqlParser.INITIALIZED, 0);
+};
+
+Create_contextContext.prototype.ACCESSED = function() {
+ return this.getToken(PlSqlParser.ACCESSED, 0);
+};
+
+Create_contextContext.prototype.GLOBALLY = function() {
+ return this.getToken(PlSqlParser.GLOBALLY, 0);
+};
+
+Create_contextContext.prototype.EXTERNALLY = function() {
+ return this.getToken(PlSqlParser.EXTERNALLY, 0);
+};
+
+Create_contextContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterCreate_context(this);
+ }
+};
+
+Create_contextContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitCreate_context(this);
+ }
+};
+
+Create_contextContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitCreate_context(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Create_contextContext = Create_contextContext;
+
+PlSqlParser.prototype.create_context = function() {
+
+ var localctx = new Create_contextContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 512, PlSqlParser.RULE_create_context);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5187;
+ this.match(PlSqlParser.CREATE);
+ this.state = 5190;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.OR) {
+ this.state = 5188;
+ this.match(PlSqlParser.OR);
+ this.state = 5189;
+ this.match(PlSqlParser.REPLACE);
+ }
+
+ this.state = 5192;
+ this.match(PlSqlParser.CONTEXT);
+ this.state = 5193;
+ this.oracle_namespace();
+ this.state = 5194;
+ this.match(PlSqlParser.USING);
+ this.state = 5198;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,550,this._ctx);
+ if(la_===1) {
+ this.state = 5195;
+ this.schema_object_name();
+ this.state = 5196;
+ this.match(PlSqlParser.PERIOD);
+
+ }
+ this.state = 5200;
+ this.package_name();
+ this.state = 5205;
+ this._errHandler.sync(this);
+ switch (this._input.LA(1)) {
+ case PlSqlParser.INITIALIZED:
+ this.state = 5201;
+ this.match(PlSqlParser.INITIALIZED);
+ this.state = 5202;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.EXTERNALLY || _la===PlSqlParser.GLOBALLY)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+ case PlSqlParser.ACCESSED:
+ this.state = 5203;
+ this.match(PlSqlParser.ACCESSED);
+ this.state = 5204;
+ this.match(PlSqlParser.GLOBALLY);
+ break;
+ case PlSqlParser.SEMICOLON:
+ break;
+ default:
+ break;
+ }
+ this.state = 5207;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Oracle_namespaceContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_oracle_namespace;
+ return this;
+}
+
+Oracle_namespaceContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Oracle_namespaceContext.prototype.constructor = Oracle_namespaceContext;
+
+Oracle_namespaceContext.prototype.id_expression = function() {
+ return this.getTypedRuleContext(Id_expressionContext,0);
+};
+
+Oracle_namespaceContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterOracle_namespace(this);
+ }
+};
+
+Oracle_namespaceContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitOracle_namespace(this);
+ }
+};
+
+Oracle_namespaceContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitOracle_namespace(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Oracle_namespaceContext = Oracle_namespaceContext;
+
+PlSqlParser.prototype.oracle_namespace = function() {
+
+ var localctx = new Oracle_namespaceContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 514, PlSqlParser.RULE_oracle_namespace);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5209;
+ this.id_expression();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_clusterContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_create_cluster;
+ return this;
+}
+
+Create_clusterContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_clusterContext.prototype.constructor = Create_clusterContext;
+
+Create_clusterContext.prototype.CREATE = function() {
+ return this.getToken(PlSqlParser.CREATE, 0);
+};
+
+Create_clusterContext.prototype.CLUSTER = function() {
+ return this.getToken(PlSqlParser.CLUSTER, 0);
+};
+
+Create_clusterContext.prototype.cluster_name = function() {
+ return this.getTypedRuleContext(Cluster_nameContext,0);
+};
+
+Create_clusterContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Create_clusterContext.prototype.column_name = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Column_nameContext);
+ } else {
+ return this.getTypedRuleContext(Column_nameContext,i);
+ }
+};
+
+Create_clusterContext.prototype.datatype = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(DatatypeContext);
+ } else {
+ return this.getTypedRuleContext(DatatypeContext,i);
+ }
+};
+
+Create_clusterContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Create_clusterContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Create_clusterContext.prototype.SORT = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.SORT);
+ } else {
+ return this.getToken(PlSqlParser.SORT, i);
+ }
+};
+
+
+Create_clusterContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Create_clusterContext.prototype.physical_attributes_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Physical_attributes_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Physical_attributes_clauseContext,i);
+ }
+};
+
+Create_clusterContext.prototype.SIZE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.SIZE);
+ } else {
+ return this.getToken(PlSqlParser.SIZE, i);
+ }
+};
+
+
+Create_clusterContext.prototype.size_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Size_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Size_clauseContext,i);
+ }
+};
+
+Create_clusterContext.prototype.TABLESPACE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.TABLESPACE);
+ } else {
+ return this.getToken(PlSqlParser.TABLESPACE, i);
+ }
+};
+
+
+Create_clusterContext.prototype.tablespace = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(TablespaceContext);
+ } else {
+ return this.getTypedRuleContext(TablespaceContext,i);
+ }
+};
+
+Create_clusterContext.prototype.INDEX = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.INDEX);
+ } else {
+ return this.getToken(PlSqlParser.INDEX, i);
+ }
+};
+
+
+Create_clusterContext.prototype.HASHKEYS = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.HASHKEYS);
+ } else {
+ return this.getToken(PlSqlParser.HASHKEYS, i);
+ }
+};
+
+
+Create_clusterContext.prototype.UNSIGNED_INTEGER = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.UNSIGNED_INTEGER);
+ } else {
+ return this.getToken(PlSqlParser.UNSIGNED_INTEGER, i);
+ }
+};
+
+
+Create_clusterContext.prototype.parallel_clause = function() {
+ return this.getTypedRuleContext(Parallel_clauseContext,0);
+};
+
+Create_clusterContext.prototype.ROWDEPENDENCIES = function() {
+ return this.getToken(PlSqlParser.ROWDEPENDENCIES, 0);
+};
+
+Create_clusterContext.prototype.NOROWDEPENDENCIES = function() {
+ return this.getToken(PlSqlParser.NOROWDEPENDENCIES, 0);
+};
+
+Create_clusterContext.prototype.CACHE = function() {
+ return this.getToken(PlSqlParser.CACHE, 0);
+};
+
+Create_clusterContext.prototype.NOCACHE = function() {
+ return this.getToken(PlSqlParser.NOCACHE, 0);
+};
+
+Create_clusterContext.prototype.SINGLE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.SINGLE);
+ } else {
+ return this.getToken(PlSqlParser.SINGLE, i);
+ }
+};
+
+
+Create_clusterContext.prototype.TABLE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.TABLE);
+ } else {
+ return this.getToken(PlSqlParser.TABLE, i);
+ }
+};
+
+
+Create_clusterContext.prototype.HASH = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.HASH);
+ } else {
+ return this.getToken(PlSqlParser.HASH, i);
+ }
+};
+
+
+Create_clusterContext.prototype.IS = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.IS);
+ } else {
+ return this.getToken(PlSqlParser.IS, i);
+ }
+};
+
+
+Create_clusterContext.prototype.expression = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ExpressionContext);
+ } else {
+ return this.getTypedRuleContext(ExpressionContext,i);
+ }
+};
+
+Create_clusterContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterCreate_cluster(this);
+ }
+};
+
+Create_clusterContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitCreate_cluster(this);
+ }
+};
+
+Create_clusterContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitCreate_cluster(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Create_clusterContext = Create_clusterContext;
+
+PlSqlParser.prototype.create_cluster = function() {
+
+ var localctx = new Create_clusterContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 516, PlSqlParser.RULE_create_cluster);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5211;
+ this.match(PlSqlParser.CREATE);
+ this.state = 5212;
+ this.match(PlSqlParser.CLUSTER);
+ this.state = 5213;
+ this.cluster_name();
+ this.state = 5214;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 5215;
+ this.column_name();
+ this.state = 5216;
+ this.datatype();
+ this.state = 5218;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.SORT) {
+ this.state = 5217;
+ this.match(PlSqlParser.SORT);
+ }
+
+ this.state = 5228;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 5220;
+ this.match(PlSqlParser.COMMA);
+ this.state = 5221;
+ this.column_name();
+ this.state = 5222;
+ this.datatype();
+ this.state = 5224;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.SORT) {
+ this.state = 5223;
+ this.match(PlSqlParser.SORT);
+ }
+
+ this.state = 5230;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 5231;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ this.state = 5251;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.HASHKEYS || _la===PlSqlParser.INDEX || _la===PlSqlParser.INITRANS || _la===PlSqlParser.PCTFREE || _la===PlSqlParser.PCTUSED || _la===PlSqlParser.SINGLE || _la===PlSqlParser.SIZE || _la===PlSqlParser.STORAGE || _la===PlSqlParser.TABLESPACE) {
+ this.state = 5249;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.INITRANS:
+ case PlSqlParser.PCTFREE:
+ case PlSqlParser.PCTUSED:
+ case PlSqlParser.STORAGE:
+ this.state = 5232;
+ this.physical_attributes_clause();
+ break;
+ case PlSqlParser.SIZE:
+ this.state = 5233;
+ this.match(PlSqlParser.SIZE);
+ this.state = 5234;
+ this.size_clause();
+ break;
+ case PlSqlParser.TABLESPACE:
+ this.state = 5235;
+ this.match(PlSqlParser.TABLESPACE);
+ this.state = 5236;
+ this.tablespace();
+ break;
+ case PlSqlParser.INDEX:
+ this.state = 5237;
+ this.match(PlSqlParser.INDEX);
+ break;
+ case PlSqlParser.HASHKEYS:
+ case PlSqlParser.SINGLE:
+ this.state = 5240;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.SINGLE) {
+ this.state = 5238;
+ this.match(PlSqlParser.SINGLE);
+ this.state = 5239;
+ this.match(PlSqlParser.TABLE);
+ }
+
+ this.state = 5242;
+ this.match(PlSqlParser.HASHKEYS);
+ this.state = 5243;
+ this.match(PlSqlParser.UNSIGNED_INTEGER);
+ this.state = 5247;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.HASH) {
+ this.state = 5244;
+ this.match(PlSqlParser.HASH);
+ this.state = 5245;
+ this.match(PlSqlParser.IS);
+ this.state = 5246;
+ this.expression();
+ }
+
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 5253;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 5255;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.NOPARALLEL || _la===PlSqlParser.PARALLEL) {
+ this.state = 5254;
+ this.parallel_clause();
+ }
+
+ this.state = 5258;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.NOROWDEPENDENCIES || _la===PlSqlParser.ROWDEPENDENCIES) {
+ this.state = 5257;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.NOROWDEPENDENCIES || _la===PlSqlParser.ROWDEPENDENCIES)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 5261;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.CACHE || _la===PlSqlParser.NOCACHE) {
+ this.state = 5260;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.CACHE || _la===PlSqlParser.NOCACHE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 5263;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_tableContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_create_table;
+ return this;
+}
+
+Create_tableContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_tableContext.prototype.constructor = Create_tableContext;
+
+Create_tableContext.prototype.CREATE = function() {
+ return this.getToken(PlSqlParser.CREATE, 0);
+};
+
+Create_tableContext.prototype.TABLE = function() {
+ return this.getToken(PlSqlParser.TABLE, 0);
+};
+
+Create_tableContext.prototype.tableview_name = function() {
+ return this.getTypedRuleContext(Tableview_nameContext,0);
+};
+
+Create_tableContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Create_tableContext.prototype.relational_table = function() {
+ return this.getTypedRuleContext(Relational_tableContext,0);
+};
+
+Create_tableContext.prototype.object_table = function() {
+ return this.getTypedRuleContext(Object_tableContext,0);
+};
+
+Create_tableContext.prototype.xmltype_table = function() {
+ return this.getTypedRuleContext(Xmltype_tableContext,0);
+};
+
+Create_tableContext.prototype.GLOBAL = function() {
+ return this.getToken(PlSqlParser.GLOBAL, 0);
+};
+
+Create_tableContext.prototype.TEMPORARY = function() {
+ return this.getToken(PlSqlParser.TEMPORARY, 0);
+};
+
+Create_tableContext.prototype.AS = function() {
+ return this.getToken(PlSqlParser.AS, 0);
+};
+
+Create_tableContext.prototype.select_only_statement = function() {
+ return this.getTypedRuleContext(Select_only_statementContext,0);
+};
+
+Create_tableContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterCreate_table(this);
+ }
+};
+
+Create_tableContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitCreate_table(this);
+ }
+};
+
+Create_tableContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitCreate_table(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Create_tableContext = Create_tableContext;
+
+PlSqlParser.prototype.create_table = function() {
+
+ var localctx = new Create_tableContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 518, PlSqlParser.RULE_create_table);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5265;
+ this.match(PlSqlParser.CREATE);
+ this.state = 5268;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.GLOBAL) {
+ this.state = 5266;
+ this.match(PlSqlParser.GLOBAL);
+ this.state = 5267;
+ this.match(PlSqlParser.TEMPORARY);
+ }
+
+ this.state = 5270;
+ this.match(PlSqlParser.TABLE);
+ this.state = 5271;
+ this.tableview_name();
+ this.state = 5275;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,563,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 5272;
+ this.relational_table();
+ break;
+
+ case 2:
+ this.state = 5273;
+ this.object_table();
+ break;
+
+ case 3:
+ this.state = 5274;
+ this.xmltype_table();
+ break;
+
+ }
+ this.state = 5279;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.AS) {
+ this.state = 5277;
+ this.match(PlSqlParser.AS);
+ this.state = 5278;
+ this.select_only_statement();
+ }
+
+ this.state = 5281;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Xmltype_tableContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_xmltype_table;
+ return this;
+}
+
+Xmltype_tableContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Xmltype_tableContext.prototype.constructor = Xmltype_tableContext;
+
+Xmltype_tableContext.prototype.OF = function() {
+ return this.getToken(PlSqlParser.OF, 0);
+};
+
+Xmltype_tableContext.prototype.XMLTYPE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.XMLTYPE);
+ } else {
+ return this.getToken(PlSqlParser.XMLTYPE, i);
+ }
+};
+
+
+Xmltype_tableContext.prototype.LEFT_PAREN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.LEFT_PAREN);
+ } else {
+ return this.getToken(PlSqlParser.LEFT_PAREN, i);
+ }
+};
+
+
+Xmltype_tableContext.prototype.object_properties = function() {
+ return this.getTypedRuleContext(Object_propertiesContext,0);
+};
+
+Xmltype_tableContext.prototype.RIGHT_PAREN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.RIGHT_PAREN);
+ } else {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, i);
+ }
+};
+
+
+Xmltype_tableContext.prototype.xmltype_storage = function() {
+ return this.getTypedRuleContext(Xmltype_storageContext,0);
+};
+
+Xmltype_tableContext.prototype.xmlschema_spec = function() {
+ return this.getTypedRuleContext(Xmlschema_specContext,0);
+};
+
+Xmltype_tableContext.prototype.xmltype_virtual_columns = function() {
+ return this.getTypedRuleContext(Xmltype_virtual_columnsContext,0);
+};
+
+Xmltype_tableContext.prototype.ON = function() {
+ return this.getToken(PlSqlParser.ON, 0);
+};
+
+Xmltype_tableContext.prototype.COMMIT = function() {
+ return this.getToken(PlSqlParser.COMMIT, 0);
+};
+
+Xmltype_tableContext.prototype.ROWS = function() {
+ return this.getToken(PlSqlParser.ROWS, 0);
+};
+
+Xmltype_tableContext.prototype.oid_clause = function() {
+ return this.getTypedRuleContext(Oid_clauseContext,0);
+};
+
+Xmltype_tableContext.prototype.oid_index_clause = function() {
+ return this.getTypedRuleContext(Oid_index_clauseContext,0);
+};
+
+Xmltype_tableContext.prototype.physical_properties = function() {
+ return this.getTypedRuleContext(Physical_propertiesContext,0);
+};
+
+Xmltype_tableContext.prototype.column_properties = function() {
+ return this.getTypedRuleContext(Column_propertiesContext,0);
+};
+
+Xmltype_tableContext.prototype.table_partitioning_clauses = function() {
+ return this.getTypedRuleContext(Table_partitioning_clausesContext,0);
+};
+
+Xmltype_tableContext.prototype.RESULT_CACHE = function() {
+ return this.getToken(PlSqlParser.RESULT_CACHE, 0);
+};
+
+Xmltype_tableContext.prototype.MODE = function() {
+ return this.getToken(PlSqlParser.MODE, 0);
+};
+
+Xmltype_tableContext.prototype.parallel_clause = function() {
+ return this.getTypedRuleContext(Parallel_clauseContext,0);
+};
+
+Xmltype_tableContext.prototype.row_movement_clause = function() {
+ return this.getTypedRuleContext(Row_movement_clauseContext,0);
+};
+
+Xmltype_tableContext.prototype.flashback_archive_clause = function() {
+ return this.getTypedRuleContext(Flashback_archive_clauseContext,0);
+};
+
+Xmltype_tableContext.prototype.DELETE = function() {
+ return this.getToken(PlSqlParser.DELETE, 0);
+};
+
+Xmltype_tableContext.prototype.PRESERVE = function() {
+ return this.getToken(PlSqlParser.PRESERVE, 0);
+};
+
+Xmltype_tableContext.prototype.CACHE = function() {
+ return this.getToken(PlSqlParser.CACHE, 0);
+};
+
+Xmltype_tableContext.prototype.NOCACHE = function() {
+ return this.getToken(PlSqlParser.NOCACHE, 0);
+};
+
+Xmltype_tableContext.prototype.DEFAULT = function() {
+ return this.getToken(PlSqlParser.DEFAULT, 0);
+};
+
+Xmltype_tableContext.prototype.FORCE = function() {
+ return this.getToken(PlSqlParser.FORCE, 0);
+};
+
+Xmltype_tableContext.prototype.ROWDEPENDENCIES = function() {
+ return this.getToken(PlSqlParser.ROWDEPENDENCIES, 0);
+};
+
+Xmltype_tableContext.prototype.NOROWDEPENDENCIES = function() {
+ return this.getToken(PlSqlParser.NOROWDEPENDENCIES, 0);
+};
+
+Xmltype_tableContext.prototype.enable_disable_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Enable_disable_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Enable_disable_clauseContext,i);
+ }
+};
+
+Xmltype_tableContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterXmltype_table(this);
+ }
+};
+
+Xmltype_tableContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitXmltype_table(this);
+ }
+};
+
+Xmltype_tableContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitXmltype_table(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Xmltype_tableContext = Xmltype_tableContext;
+
+PlSqlParser.prototype.xmltype_table = function() {
+
+ var localctx = new Xmltype_tableContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 520, PlSqlParser.RULE_xmltype_table);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5283;
+ this.match(PlSqlParser.OF);
+ this.state = 5284;
+ this.match(PlSqlParser.XMLTYPE);
+ this.state = 5289;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.LEFT_PAREN) {
+ this.state = 5285;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 5286;
+ this.object_properties();
+ this.state = 5287;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ }
+
+ this.state = 5293;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,566,this._ctx);
+ if(la_===1) {
+ this.state = 5291;
+ this.match(PlSqlParser.XMLTYPE);
+ this.state = 5292;
+ this.xmltype_storage();
+
+ }
+ this.state = 5296;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.ELEMENT || _la===PlSqlParser.XMLSCHEMA) {
+ this.state = 5295;
+ this.xmlschema_spec();
+ }
+
+ this.state = 5299;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.VIRTUAL) {
+ this.state = 5298;
+ this.xmltype_virtual_columns();
+ }
+
+ this.state = 5305;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.ON) {
+ this.state = 5301;
+ this.match(PlSqlParser.ON);
+ this.state = 5302;
+ this.match(PlSqlParser.COMMIT);
+ this.state = 5303;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.DELETE || _la===PlSqlParser.PRESERVE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 5304;
+ this.match(PlSqlParser.ROWS);
+ }
+
+ this.state = 5308;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.OBJECT) {
+ this.state = 5307;
+ this.oid_clause();
+ }
+
+ this.state = 5311;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.OIDINDEX) {
+ this.state = 5310;
+ this.oid_index_clause();
+ }
+
+ this.state = 5314;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.FILESYSTEM_LIKE_LOGGING || _la===PlSqlParser.INITRANS || _la===PlSqlParser.LOGGING || _la===PlSqlParser.NOLOGGING || _la===PlSqlParser.PCTFREE || _la===PlSqlParser.PCTUSED || _la===PlSqlParser.SEGMENT || _la===PlSqlParser.STORAGE || _la===PlSqlParser.TABLESPACE) {
+ this.state = 5313;
+ this.physical_properties();
+ }
+
+ this.state = 5317;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.COLUMN || _la===PlSqlParser.LOB || _la===PlSqlParser.NESTED || _la===PlSqlParser.VARRAY || _la===PlSqlParser.XMLTYPE) {
+ this.state = 5316;
+ this.column_properties();
+ }
+
+ this.state = 5320;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.PARTITION) {
+ this.state = 5319;
+ this.table_partitioning_clauses();
+ }
+
+ this.state = 5323;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.CACHE || _la===PlSqlParser.NOCACHE) {
+ this.state = 5322;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.CACHE || _la===PlSqlParser.NOCACHE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 5330;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.RESULT_CACHE) {
+ this.state = 5325;
+ this.match(PlSqlParser.RESULT_CACHE);
+ this.state = 5326;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 5327;
+ this.match(PlSqlParser.MODE);
+ this.state = 5328;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.DEFAULT || _la===PlSqlParser.FORCE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 5329;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ }
+
+ this.state = 5333;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.NOPARALLEL || _la===PlSqlParser.PARALLEL) {
+ this.state = 5332;
+ this.parallel_clause();
+ }
+
+ this.state = 5336;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.NOROWDEPENDENCIES || _la===PlSqlParser.ROWDEPENDENCIES) {
+ this.state = 5335;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.NOROWDEPENDENCIES || _la===PlSqlParser.ROWDEPENDENCIES)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 5343;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,580,this._ctx);
+ if(la_===1) {
+ this.state = 5339;
+ this._errHandler.sync(this);
+ var _alt = 1;
+ do {
+ switch (_alt) {
+ case 1:
+ this.state = 5338;
+ this.enable_disable_clause();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 5341;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,579, this._ctx);
+ } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
+
+ }
+ this.state = 5346;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.DISABLE || _la===PlSqlParser.ENABLE || _la===PlSqlParser.ROW) {
+ this.state = 5345;
+ this.row_movement_clause();
+ }
+
+ this.state = 5349;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.FLASHBACK || _la===PlSqlParser.NO) {
+ this.state = 5348;
+ this.flashback_archive_clause();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Xmltype_virtual_columnsContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_xmltype_virtual_columns;
+ return this;
+}
+
+Xmltype_virtual_columnsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Xmltype_virtual_columnsContext.prototype.constructor = Xmltype_virtual_columnsContext;
+
+Xmltype_virtual_columnsContext.prototype.VIRTUAL = function() {
+ return this.getToken(PlSqlParser.VIRTUAL, 0);
+};
+
+Xmltype_virtual_columnsContext.prototype.COLUMNS = function() {
+ return this.getToken(PlSqlParser.COLUMNS, 0);
+};
+
+Xmltype_virtual_columnsContext.prototype.LEFT_PAREN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.LEFT_PAREN);
+ } else {
+ return this.getToken(PlSqlParser.LEFT_PAREN, i);
+ }
+};
+
+
+Xmltype_virtual_columnsContext.prototype.column_name = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Column_nameContext);
+ } else {
+ return this.getTypedRuleContext(Column_nameContext,i);
+ }
+};
+
+Xmltype_virtual_columnsContext.prototype.AS = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.AS);
+ } else {
+ return this.getToken(PlSqlParser.AS, i);
+ }
+};
+
+
+Xmltype_virtual_columnsContext.prototype.expression = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(ExpressionContext);
+ } else {
+ return this.getTypedRuleContext(ExpressionContext,i);
+ }
+};
+
+Xmltype_virtual_columnsContext.prototype.RIGHT_PAREN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.RIGHT_PAREN);
+ } else {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, i);
+ }
+};
+
+
+Xmltype_virtual_columnsContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Xmltype_virtual_columnsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterXmltype_virtual_columns(this);
+ }
+};
+
+Xmltype_virtual_columnsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitXmltype_virtual_columns(this);
+ }
+};
+
+Xmltype_virtual_columnsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitXmltype_virtual_columns(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Xmltype_virtual_columnsContext = Xmltype_virtual_columnsContext;
+
+PlSqlParser.prototype.xmltype_virtual_columns = function() {
+
+ var localctx = new Xmltype_virtual_columnsContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 522, PlSqlParser.RULE_xmltype_virtual_columns);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5351;
+ this.match(PlSqlParser.VIRTUAL);
+ this.state = 5352;
+ this.match(PlSqlParser.COLUMNS);
+ this.state = 5353;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 5354;
+ this.column_name();
+ this.state = 5355;
+ this.match(PlSqlParser.AS);
+ this.state = 5356;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 5357;
+ this.expression();
+ this.state = 5358;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ this.state = 5368;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 5359;
+ this.match(PlSqlParser.COMMA);
+ this.state = 5360;
+ this.column_name();
+ this.state = 5361;
+ this.match(PlSqlParser.AS);
+ this.state = 5362;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 5363;
+ this.expression();
+ this.state = 5364;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ this.state = 5370;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 5371;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Xmltype_column_propertiesContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_xmltype_column_properties;
+ return this;
+}
+
+Xmltype_column_propertiesContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Xmltype_column_propertiesContext.prototype.constructor = Xmltype_column_propertiesContext;
+
+Xmltype_column_propertiesContext.prototype.XMLTYPE = function() {
+ return this.getToken(PlSqlParser.XMLTYPE, 0);
+};
+
+Xmltype_column_propertiesContext.prototype.column_name = function() {
+ return this.getTypedRuleContext(Column_nameContext,0);
+};
+
+Xmltype_column_propertiesContext.prototype.COLUMN = function() {
+ return this.getToken(PlSqlParser.COLUMN, 0);
+};
+
+Xmltype_column_propertiesContext.prototype.xmltype_storage = function() {
+ return this.getTypedRuleContext(Xmltype_storageContext,0);
+};
+
+Xmltype_column_propertiesContext.prototype.xmlschema_spec = function() {
+ return this.getTypedRuleContext(Xmlschema_specContext,0);
+};
+
+Xmltype_column_propertiesContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterXmltype_column_properties(this);
+ }
+};
+
+Xmltype_column_propertiesContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitXmltype_column_properties(this);
+ }
+};
+
+Xmltype_column_propertiesContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitXmltype_column_properties(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Xmltype_column_propertiesContext = Xmltype_column_propertiesContext;
+
+PlSqlParser.prototype.xmltype_column_properties = function() {
+
+ var localctx = new Xmltype_column_propertiesContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 524, PlSqlParser.RULE_xmltype_column_properties);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5373;
+ this.match(PlSqlParser.XMLTYPE);
+ this.state = 5375;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,584,this._ctx);
+ if(la_===1) {
+ this.state = 5374;
+ this.match(PlSqlParser.COLUMN);
+
+ }
+ this.state = 5377;
+ this.column_name();
+ this.state = 5379;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.STORE) {
+ this.state = 5378;
+ this.xmltype_storage();
+ }
+
+ this.state = 5382;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.ELEMENT || _la===PlSqlParser.XMLSCHEMA) {
+ this.state = 5381;
+ this.xmlschema_spec();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Xmltype_storageContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_xmltype_storage;
+ return this;
+}
+
+Xmltype_storageContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Xmltype_storageContext.prototype.constructor = Xmltype_storageContext;
+
+Xmltype_storageContext.prototype.STORE = function() {
+ return this.getToken(PlSqlParser.STORE, 0);
+};
+
+Xmltype_storageContext.prototype.AS = function() {
+ return this.getToken(PlSqlParser.AS, 0);
+};
+
+Xmltype_storageContext.prototype.OBJECT = function() {
+ return this.getToken(PlSqlParser.OBJECT, 0);
+};
+
+Xmltype_storageContext.prototype.RELATIONAL = function() {
+ return this.getToken(PlSqlParser.RELATIONAL, 0);
+};
+
+Xmltype_storageContext.prototype.CLOB = function() {
+ return this.getToken(PlSqlParser.CLOB, 0);
+};
+
+Xmltype_storageContext.prototype.BINARY = function() {
+ return this.getToken(PlSqlParser.BINARY, 0);
+};
+
+Xmltype_storageContext.prototype.XML = function() {
+ return this.getToken(PlSqlParser.XML, 0);
+};
+
+Xmltype_storageContext.prototype.lob_segname = function() {
+ return this.getTypedRuleContext(Lob_segnameContext,0);
+};
+
+Xmltype_storageContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Xmltype_storageContext.prototype.lob_parameters = function() {
+ return this.getTypedRuleContext(Lob_parametersContext,0);
+};
+
+Xmltype_storageContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Xmltype_storageContext.prototype.SECUREFILE = function() {
+ return this.getToken(PlSqlParser.SECUREFILE, 0);
+};
+
+Xmltype_storageContext.prototype.BASICFILE = function() {
+ return this.getToken(PlSqlParser.BASICFILE, 0);
+};
+
+Xmltype_storageContext.prototype.VARRAYS = function() {
+ return this.getToken(PlSqlParser.VARRAYS, 0);
+};
+
+Xmltype_storageContext.prototype.LOBS = function() {
+ return this.getToken(PlSqlParser.LOBS, 0);
+};
+
+Xmltype_storageContext.prototype.TABLES = function() {
+ return this.getToken(PlSqlParser.TABLES, 0);
+};
+
+Xmltype_storageContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterXmltype_storage(this);
+ }
+};
+
+Xmltype_storageContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitXmltype_storage(this);
+ }
+};
+
+Xmltype_storageContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitXmltype_storage(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Xmltype_storageContext = Xmltype_storageContext;
+
+PlSqlParser.prototype.xmltype_storage = function() {
+
+ var localctx = new Xmltype_storageContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 526, PlSqlParser.RULE_xmltype_storage);
+ var _la = 0; // Token type
+ try {
+ this.state = 5415;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,592,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5384;
+ this.match(PlSqlParser.STORE);
+ this.state = 5385;
+ this.match(PlSqlParser.AS);
+ this.state = 5409;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.OBJECT:
+ this.state = 5386;
+ this.match(PlSqlParser.OBJECT);
+ this.state = 5387;
+ this.match(PlSqlParser.RELATIONAL);
+ break;
+ case PlSqlParser.BASICFILE:
+ case PlSqlParser.BINARY:
+ case PlSqlParser.CLOB:
+ case PlSqlParser.SECUREFILE:
+ this.state = 5389;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.BASICFILE || _la===PlSqlParser.SECUREFILE) {
+ this.state = 5388;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.BASICFILE || _la===PlSqlParser.SECUREFILE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 5394;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.CLOB:
+ this.state = 5391;
+ this.match(PlSqlParser.CLOB);
+ break;
+ case PlSqlParser.BINARY:
+ this.state = 5392;
+ this.match(PlSqlParser.BINARY);
+ this.state = 5393;
+ this.match(PlSqlParser.XML);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 5407;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,590,this._ctx);
+ if(la_===1) {
+ this.state = 5396;
+ this.lob_segname();
+ this.state = 5401;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,589,this._ctx);
+ if(la_===1) {
+ this.state = 5397;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 5398;
+ this.lob_parameters();
+ this.state = 5399;
+ this.match(PlSqlParser.RIGHT_PAREN);
+
+ }
+
+ } else if(la_===2) {
+ this.state = 5403;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 5404;
+ this.lob_parameters();
+ this.state = 5405;
+ this.match(PlSqlParser.RIGHT_PAREN);
+
+ }
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 5411;
+ this.match(PlSqlParser.STORE);
+ this.state = 5412;
+ this.match(PlSqlParser.VARRAYS);
+ this.state = 5413;
+ this.match(PlSqlParser.AS);
+ this.state = 5414;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.LOBS || _la===PlSqlParser.TABLES)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Xmlschema_specContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_xmlschema_spec;
+ return this;
+}
+
+Xmlschema_specContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Xmlschema_specContext.prototype.constructor = Xmlschema_specContext;
+
+Xmlschema_specContext.prototype.ELEMENT = function() {
+ return this.getToken(PlSqlParser.ELEMENT, 0);
+};
+
+Xmlschema_specContext.prototype.DELIMITED_ID = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.DELIMITED_ID);
+ } else {
+ return this.getToken(PlSqlParser.DELIMITED_ID, i);
+ }
+};
+
+
+Xmlschema_specContext.prototype.XMLSCHEMA = function() {
+ return this.getToken(PlSqlParser.XMLSCHEMA, 0);
+};
+
+Xmlschema_specContext.prototype.allow_or_disallow = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Allow_or_disallowContext);
+ } else {
+ return this.getTypedRuleContext(Allow_or_disallowContext,i);
+ }
+};
+
+Xmlschema_specContext.prototype.NONSCHEMA = function() {
+ return this.getToken(PlSqlParser.NONSCHEMA, 0);
+};
+
+Xmlschema_specContext.prototype.ANYSCHEMA = function() {
+ return this.getToken(PlSqlParser.ANYSCHEMA, 0);
+};
+
+Xmlschema_specContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterXmlschema_spec(this);
+ }
+};
+
+Xmlschema_specContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitXmlschema_spec(this);
+ }
+};
+
+Xmlschema_specContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitXmlschema_spec(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Xmlschema_specContext = Xmlschema_specContext;
+
+PlSqlParser.prototype.xmlschema_spec = function() {
+
+ var localctx = new Xmlschema_specContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 528, PlSqlParser.RULE_xmlschema_spec);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5419;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.XMLSCHEMA) {
+ this.state = 5417;
+ this.match(PlSqlParser.XMLSCHEMA);
+ this.state = 5418;
+ this.match(PlSqlParser.DELIMITED_ID);
+ }
+
+ this.state = 5421;
+ this.match(PlSqlParser.ELEMENT);
+ this.state = 5422;
+ this.match(PlSqlParser.DELIMITED_ID);
+ this.state = 5426;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,594,this._ctx);
+ if(la_===1) {
+ this.state = 5423;
+ this.allow_or_disallow();
+ this.state = 5424;
+ this.match(PlSqlParser.NONSCHEMA);
+
+ }
+ this.state = 5431;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.ALLOW || _la===PlSqlParser.DISALLOW) {
+ this.state = 5428;
+ this.allow_or_disallow();
+ this.state = 5429;
+ this.match(PlSqlParser.ANYSCHEMA);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Object_tableContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_object_table;
+ return this;
+}
+
+Object_tableContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Object_tableContext.prototype.constructor = Object_tableContext;
+
+Object_tableContext.prototype.OF = function() {
+ return this.getToken(PlSqlParser.OF, 0);
+};
+
+Object_tableContext.prototype.type_name = function() {
+ return this.getTypedRuleContext(Type_nameContext,0);
+};
+
+Object_tableContext.prototype.object_table_substitution = function() {
+ return this.getTypedRuleContext(Object_table_substitutionContext,0);
+};
+
+Object_tableContext.prototype.LEFT_PAREN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.LEFT_PAREN);
+ } else {
+ return this.getToken(PlSqlParser.LEFT_PAREN, i);
+ }
+};
+
+
+Object_tableContext.prototype.object_properties = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Object_propertiesContext);
+ } else {
+ return this.getTypedRuleContext(Object_propertiesContext,i);
+ }
+};
+
+Object_tableContext.prototype.RIGHT_PAREN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.RIGHT_PAREN);
+ } else {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, i);
+ }
+};
+
+
+Object_tableContext.prototype.ON = function() {
+ return this.getToken(PlSqlParser.ON, 0);
+};
+
+Object_tableContext.prototype.COMMIT = function() {
+ return this.getToken(PlSqlParser.COMMIT, 0);
+};
+
+Object_tableContext.prototype.ROWS = function() {
+ return this.getToken(PlSqlParser.ROWS, 0);
+};
+
+Object_tableContext.prototype.oid_clause = function() {
+ return this.getTypedRuleContext(Oid_clauseContext,0);
+};
+
+Object_tableContext.prototype.oid_index_clause = function() {
+ return this.getTypedRuleContext(Oid_index_clauseContext,0);
+};
+
+Object_tableContext.prototype.physical_properties = function() {
+ return this.getTypedRuleContext(Physical_propertiesContext,0);
+};
+
+Object_tableContext.prototype.column_properties = function() {
+ return this.getTypedRuleContext(Column_propertiesContext,0);
+};
+
+Object_tableContext.prototype.table_partitioning_clauses = function() {
+ return this.getTypedRuleContext(Table_partitioning_clausesContext,0);
+};
+
+Object_tableContext.prototype.RESULT_CACHE = function() {
+ return this.getToken(PlSqlParser.RESULT_CACHE, 0);
+};
+
+Object_tableContext.prototype.MODE = function() {
+ return this.getToken(PlSqlParser.MODE, 0);
+};
+
+Object_tableContext.prototype.parallel_clause = function() {
+ return this.getTypedRuleContext(Parallel_clauseContext,0);
+};
+
+Object_tableContext.prototype.row_movement_clause = function() {
+ return this.getTypedRuleContext(Row_movement_clauseContext,0);
+};
+
+Object_tableContext.prototype.flashback_archive_clause = function() {
+ return this.getTypedRuleContext(Flashback_archive_clauseContext,0);
+};
+
+Object_tableContext.prototype.DELETE = function() {
+ return this.getToken(PlSqlParser.DELETE, 0);
+};
+
+Object_tableContext.prototype.PRESERVE = function() {
+ return this.getToken(PlSqlParser.PRESERVE, 0);
+};
+
+Object_tableContext.prototype.CACHE = function() {
+ return this.getToken(PlSqlParser.CACHE, 0);
+};
+
+Object_tableContext.prototype.NOCACHE = function() {
+ return this.getToken(PlSqlParser.NOCACHE, 0);
+};
+
+Object_tableContext.prototype.DEFAULT = function() {
+ return this.getToken(PlSqlParser.DEFAULT, 0);
+};
+
+Object_tableContext.prototype.FORCE = function() {
+ return this.getToken(PlSqlParser.FORCE, 0);
+};
+
+Object_tableContext.prototype.ROWDEPENDENCIES = function() {
+ return this.getToken(PlSqlParser.ROWDEPENDENCIES, 0);
+};
+
+Object_tableContext.prototype.NOROWDEPENDENCIES = function() {
+ return this.getToken(PlSqlParser.NOROWDEPENDENCIES, 0);
+};
+
+Object_tableContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Object_tableContext.prototype.enable_disable_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Enable_disable_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Enable_disable_clauseContext,i);
+ }
+};
+
+Object_tableContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterObject_table(this);
+ }
+};
+
+Object_tableContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitObject_table(this);
+ }
+};
+
+Object_tableContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitObject_table(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Object_tableContext = Object_tableContext;
+
+PlSqlParser.prototype.object_table = function() {
+
+ var localctx = new Object_tableContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 530, PlSqlParser.RULE_object_table);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5433;
+ this.match(PlSqlParser.OF);
+ this.state = 5434;
+ this.type_name();
+ this.state = 5436;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.NOT || _la===PlSqlParser.SUBSTITUTABLE) {
+ this.state = 5435;
+ this.object_table_substitution();
+ }
+
+ this.state = 5449;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.LEFT_PAREN) {
+ this.state = 5438;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 5439;
+ this.object_properties();
+ this.state = 5444;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 5440;
+ this.match(PlSqlParser.COMMA);
+ this.state = 5441;
+ this.object_properties();
+ this.state = 5446;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 5447;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ }
+
+ this.state = 5455;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.ON) {
+ this.state = 5451;
+ this.match(PlSqlParser.ON);
+ this.state = 5452;
+ this.match(PlSqlParser.COMMIT);
+ this.state = 5453;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.DELETE || _la===PlSqlParser.PRESERVE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 5454;
+ this.match(PlSqlParser.ROWS);
+ }
+
+ this.state = 5458;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.OBJECT) {
+ this.state = 5457;
+ this.oid_clause();
+ }
+
+ this.state = 5461;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.OIDINDEX) {
+ this.state = 5460;
+ this.oid_index_clause();
+ }
+
+ this.state = 5464;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.FILESYSTEM_LIKE_LOGGING || _la===PlSqlParser.INITRANS || _la===PlSqlParser.LOGGING || _la===PlSqlParser.NOLOGGING || _la===PlSqlParser.PCTFREE || _la===PlSqlParser.PCTUSED || _la===PlSqlParser.SEGMENT || _la===PlSqlParser.STORAGE || _la===PlSqlParser.TABLESPACE) {
+ this.state = 5463;
+ this.physical_properties();
+ }
+
+ this.state = 5467;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.COLUMN || _la===PlSqlParser.LOB || _la===PlSqlParser.NESTED || _la===PlSqlParser.VARRAY || _la===PlSqlParser.XMLTYPE) {
+ this.state = 5466;
+ this.column_properties();
+ }
+
+ this.state = 5470;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.PARTITION) {
+ this.state = 5469;
+ this.table_partitioning_clauses();
+ }
+
+ this.state = 5473;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.CACHE || _la===PlSqlParser.NOCACHE) {
+ this.state = 5472;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.CACHE || _la===PlSqlParser.NOCACHE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 5480;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.RESULT_CACHE) {
+ this.state = 5475;
+ this.match(PlSqlParser.RESULT_CACHE);
+ this.state = 5476;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 5477;
+ this.match(PlSqlParser.MODE);
+ this.state = 5478;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.DEFAULT || _la===PlSqlParser.FORCE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 5479;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ }
+
+ this.state = 5483;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.NOPARALLEL || _la===PlSqlParser.PARALLEL) {
+ this.state = 5482;
+ this.parallel_clause();
+ }
+
+ this.state = 5486;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.NOROWDEPENDENCIES || _la===PlSqlParser.ROWDEPENDENCIES) {
+ this.state = 5485;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.NOROWDEPENDENCIES || _la===PlSqlParser.ROWDEPENDENCIES)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 5493;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,610,this._ctx);
+ if(la_===1) {
+ this.state = 5489;
+ this._errHandler.sync(this);
+ var _alt = 1;
+ do {
+ switch (_alt) {
+ case 1:
+ this.state = 5488;
+ this.enable_disable_clause();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 5491;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,609, this._ctx);
+ } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
+
+ }
+ this.state = 5496;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.DISABLE || _la===PlSqlParser.ENABLE || _la===PlSqlParser.ROW) {
+ this.state = 5495;
+ this.row_movement_clause();
+ }
+
+ this.state = 5499;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.FLASHBACK || _la===PlSqlParser.NO) {
+ this.state = 5498;
+ this.flashback_archive_clause();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Oid_index_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_oid_index_clause;
+ return this;
+}
+
+Oid_index_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Oid_index_clauseContext.prototype.constructor = Oid_index_clauseContext;
+
+Oid_index_clauseContext.prototype.OIDINDEX = function() {
+ return this.getToken(PlSqlParser.OIDINDEX, 0);
+};
+
+Oid_index_clauseContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Oid_index_clauseContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Oid_index_clauseContext.prototype.index_name = function() {
+ return this.getTypedRuleContext(Index_nameContext,0);
+};
+
+Oid_index_clauseContext.prototype.physical_attributes_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Physical_attributes_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Physical_attributes_clauseContext,i);
+ }
+};
+
+Oid_index_clauseContext.prototype.TABLESPACE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.TABLESPACE);
+ } else {
+ return this.getToken(PlSqlParser.TABLESPACE, i);
+ }
+};
+
+
+Oid_index_clauseContext.prototype.tablespace = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(TablespaceContext);
+ } else {
+ return this.getTypedRuleContext(TablespaceContext,i);
+ }
+};
+
+Oid_index_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterOid_index_clause(this);
+ }
+};
+
+Oid_index_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitOid_index_clause(this);
+ }
+};
+
+Oid_index_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitOid_index_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Oid_index_clauseContext = Oid_index_clauseContext;
+
+PlSqlParser.prototype.oid_index_clause = function() {
+
+ var localctx = new Oid_index_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 532, PlSqlParser.RULE_oid_index_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5501;
+ this.match(PlSqlParser.OIDINDEX);
+ this.state = 5503;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if((((_la) & ~0x1f) == 0 && ((1 << _la) & ((1 << PlSqlParser.ABORT) | (1 << PlSqlParser.ABS) | (1 << PlSqlParser.ACCESS) | (1 << PlSqlParser.ACCESSED) | (1 << PlSqlParser.ACCOUNT) | (1 << PlSqlParser.ACL) | (1 << PlSqlParser.ACOS) | (1 << PlSqlParser.ACTION) | (1 << PlSqlParser.ACTIONS) | (1 << PlSqlParser.ACTIVATE) | (1 << PlSqlParser.ACTIVE) | (1 << PlSqlParser.ACTIVE_COMPONENT) | (1 << PlSqlParser.ACTIVE_DATA) | (1 << PlSqlParser.ACTIVE_FUNCTION) | (1 << PlSqlParser.ACTIVE_TAG) | (1 << PlSqlParser.ACTIVITY) | (1 << PlSqlParser.ADAPTIVE_PLAN) | (1 << PlSqlParser.ADD) | (1 << PlSqlParser.ADD_COLUMN) | (1 << PlSqlParser.ADD_GROUP) | (1 << PlSqlParser.ADD_MONTHS) | (1 << PlSqlParser.ADJ_DATE) | (1 << PlSqlParser.ADMIN) | (1 << PlSqlParser.ADMINISTER) | (1 << PlSqlParser.ADMINISTRATOR) | (1 << PlSqlParser.ADVANCED) | (1 << PlSqlParser.ADVISE) | (1 << PlSqlParser.ADVISOR) | (1 << PlSqlParser.AFD_DISKSTRING) | (1 << PlSqlParser.AFTER) | (1 << PlSqlParser.AGENT))) !== 0) || ((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (PlSqlParser.AGGREGATE - 32)) | (1 << (PlSqlParser.A_LETTER - 32)) | (1 << (PlSqlParser.ALIAS - 32)) | (1 << (PlSqlParser.ALLOCATE - 32)) | (1 << (PlSqlParser.ALLOW - 32)) | (1 << (PlSqlParser.ALL_ROWS - 32)) | (1 << (PlSqlParser.ALWAYS - 32)) | (1 << (PlSqlParser.ANALYZE - 32)) | (1 << (PlSqlParser.ANCILLARY - 32)) | (1 << (PlSqlParser.AND_EQUAL - 32)) | (1 << (PlSqlParser.ANOMALY - 32)) | (1 << (PlSqlParser.ANSI_REARCH - 32)) | (1 << (PlSqlParser.ANTIJOIN - 32)) | (1 << (PlSqlParser.ANYSCHEMA - 32)) | (1 << (PlSqlParser.APPEND - 32)) | (1 << (PlSqlParser.APPENDCHILDXML - 32)) | (1 << (PlSqlParser.APPEND_VALUES - 32)) | (1 << (PlSqlParser.APPLICATION - 32)) | (1 << (PlSqlParser.APPLY - 32)) | (1 << (PlSqlParser.APPROX_COUNT_DISTINCT - 32)) | (1 << (PlSqlParser.ARCHIVAL - 32)) | (1 << (PlSqlParser.ARCHIVE - 32)) | (1 << (PlSqlParser.ARCHIVED - 32)) | (1 << (PlSqlParser.ARCHIVELOG - 32)) | (1 << (PlSqlParser.ARRAY - 32)) | (1 << (PlSqlParser.ASCII - 32)))) !== 0) || ((((_la - 64)) & ~0x1f) == 0 && ((1 << (_la - 64)) & ((1 << (PlSqlParser.ASCIISTR - 64)) | (1 << (PlSqlParser.ASIN - 64)) | (1 << (PlSqlParser.ASIS - 64)) | (1 << (PlSqlParser.ASSEMBLY - 64)) | (1 << (PlSqlParser.ASSIGN - 64)) | (1 << (PlSqlParser.ASSOCIATE - 64)) | (1 << (PlSqlParser.ASYNC - 64)) | (1 << (PlSqlParser.ASYNCHRONOUS - 64)) | (1 << (PlSqlParser.ATAN2 - 64)) | (1 << (PlSqlParser.ATAN - 64)) | (1 << (PlSqlParser.AT - 64)) | (1 << (PlSqlParser.ATTRIBUTE - 64)) | (1 << (PlSqlParser.ATTRIBUTES - 64)) | (1 << (PlSqlParser.AUTHENTICATED - 64)) | (1 << (PlSqlParser.AUTHENTICATION - 64)) | (1 << (PlSqlParser.AUTHID - 64)) | (1 << (PlSqlParser.AUTHORIZATION - 64)) | (1 << (PlSqlParser.AUTOALLOCATE - 64)) | (1 << (PlSqlParser.AUTO - 64)) | (1 << (PlSqlParser.AUTOEXTEND - 64)) | (1 << (PlSqlParser.AUTO_LOGIN - 64)) | (1 << (PlSqlParser.AUTOMATIC - 64)) | (1 << (PlSqlParser.AUTONOMOUS_TRANSACTION - 64)) | (1 << (PlSqlParser.AUTO_REOPTIMIZE - 64)) | (1 << (PlSqlParser.AVAILABILITY - 64)) | (1 << (PlSqlParser.AVRO - 64)) | (1 << (PlSqlParser.BACKGROUND - 64)) | (1 << (PlSqlParser.BACKUP - 64)) | (1 << (PlSqlParser.BASIC - 64)))) !== 0) || ((((_la - 96)) & ~0x1f) == 0 && ((1 << (_la - 96)) & ((1 << (PlSqlParser.BASICFILE - 96)) | (1 << (PlSqlParser.BATCH - 96)) | (1 << (PlSqlParser.BATCHSIZE - 96)) | (1 << (PlSqlParser.BATCH_TABLE_ACCESS_BY_ROWID - 96)) | (1 << (PlSqlParser.BECOME - 96)) | (1 << (PlSqlParser.BEFORE - 96)) | (1 << (PlSqlParser.BEGIN - 96)) | (1 << (PlSqlParser.BEGINNING - 96)) | (1 << (PlSqlParser.BEGIN_OUTLINE_DATA - 96)) | (1 << (PlSqlParser.BEHALF - 96)) | (1 << (PlSqlParser.BEQUEATH - 96)) | (1 << (PlSqlParser.BFILE - 96)) | (1 << (PlSqlParser.BFILENAME - 96)) | (1 << (PlSqlParser.BIGFILE - 96)) | (1 << (PlSqlParser.BINARY - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE_INFINITY - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE_NAN - 96)) | (1 << (PlSqlParser.BINARY_FLOAT - 96)) | (1 << (PlSqlParser.BINARY_FLOAT_INFINITY - 96)) | (1 << (PlSqlParser.BINARY_FLOAT_NAN - 96)) | (1 << (PlSqlParser.BINARY_INTEGER - 96)) | (1 << (PlSqlParser.BIND_AWARE - 96)) | (1 << (PlSqlParser.BINDING - 96)) | (1 << (PlSqlParser.BIN_TO_NUM - 96)) | (1 << (PlSqlParser.BITAND - 96)) | (1 << (PlSqlParser.BITMAP_AND - 96)) | (1 << (PlSqlParser.BITMAP - 96)) | (1 << (PlSqlParser.BITMAPS - 96)) | (1 << (PlSqlParser.BITMAP_TREE - 96)) | (1 << (PlSqlParser.BITS - 96)))) !== 0) || ((((_la - 128)) & ~0x1f) == 0 && ((1 << (_la - 128)) & ((1 << (PlSqlParser.BLOB - 128)) | (1 << (PlSqlParser.BLOCK - 128)) | (1 << (PlSqlParser.BLOCK_RANGE - 128)) | (1 << (PlSqlParser.BLOCKS - 128)) | (1 << (PlSqlParser.BLOCKSIZE - 128)) | (1 << (PlSqlParser.BODY - 128)) | (1 << (PlSqlParser.BOOLEAN - 128)) | (1 << (PlSqlParser.BOTH - 128)) | (1 << (PlSqlParser.BOUND - 128)) | (1 << (PlSqlParser.BRANCH - 128)) | (1 << (PlSqlParser.BREADTH - 128)) | (1 << (PlSqlParser.BROADCAST - 128)) | (1 << (PlSqlParser.BSON - 128)) | (1 << (PlSqlParser.BUFFER - 128)) | (1 << (PlSqlParser.BUFFER_CACHE - 128)) | (1 << (PlSqlParser.BUFFER_POOL - 128)) | (1 << (PlSqlParser.BUILD - 128)) | (1 << (PlSqlParser.BULK - 128)) | (1 << (PlSqlParser.BYPASS_RECURSIVE_CHECK - 128)) | (1 << (PlSqlParser.BYPASS_UJVC - 128)) | (1 << (PlSqlParser.BYTE - 128)) | (1 << (PlSqlParser.CACHE - 128)) | (1 << (PlSqlParser.CACHE_CB - 128)) | (1 << (PlSqlParser.CACHE_INSTANCES - 128)) | (1 << (PlSqlParser.CACHE_TEMP_TABLE - 128)) | (1 << (PlSqlParser.CACHING - 128)) | (1 << (PlSqlParser.CALCULATED - 128)) | (1 << (PlSqlParser.CALLBACK - 128)) | (1 << (PlSqlParser.CALL - 128)) | (1 << (PlSqlParser.CANCEL - 128)))) !== 0) || ((((_la - 160)) & ~0x1f) == 0 && ((1 << (_la - 160)) & ((1 << (PlSqlParser.CAPACITY - 160)) | (1 << (PlSqlParser.CARDINALITY - 160)) | (1 << (PlSqlParser.CASCADE - 160)) | (1 << (PlSqlParser.CASE - 160)) | (1 << (PlSqlParser.CAST - 160)) | (1 << (PlSqlParser.CATEGORY - 160)) | (1 << (PlSqlParser.CDBDEFAULT - 160)) | (1 << (PlSqlParser.CEIL - 160)) | (1 << (PlSqlParser.CELL_FLASH_CACHE - 160)) | (1 << (PlSqlParser.CERTIFICATE - 160)) | (1 << (PlSqlParser.CFILE - 160)) | (1 << (PlSqlParser.CHAINED - 160)) | (1 << (PlSqlParser.CHANGE - 160)) | (1 << (PlSqlParser.CHANGE_DUPKEY_ERROR_INDEX - 160)) | (1 << (PlSqlParser.CHARACTER - 160)) | (1 << (PlSqlParser.CHAR - 160)) | (1 << (PlSqlParser.CHAR_CS - 160)) | (1 << (PlSqlParser.CHARTOROWID - 160)) | (1 << (PlSqlParser.CHECK_ACL_REWRITE - 160)) | (1 << (PlSqlParser.CHECKPOINT - 160)) | (1 << (PlSqlParser.CHILD - 160)) | (1 << (PlSqlParser.CHOOSE - 160)) | (1 << (PlSqlParser.CHR - 160)) | (1 << (PlSqlParser.CHUNK - 160)) | (1 << (PlSqlParser.CLASS - 160)) | (1 << (PlSqlParser.CLASSIFIER - 160)) | (1 << (PlSqlParser.CLEANUP - 160)) | (1 << (PlSqlParser.CLEAR - 160)) | (1 << (PlSqlParser.C_LETTER - 160)) | (1 << (PlSqlParser.CLIENT - 160)))) !== 0) || ((((_la - 192)) & ~0x1f) == 0 && ((1 << (_la - 192)) & ((1 << (PlSqlParser.CLOB - 192)) | (1 << (PlSqlParser.CLONE - 192)) | (1 << (PlSqlParser.CLOSE_CACHED_OPEN_CURSORS - 192)) | (1 << (PlSqlParser.CLOSE - 192)) | (1 << (PlSqlParser.CLUSTER_BY_ROWID - 192)) | (1 << (PlSqlParser.CLUSTER - 192)) | (1 << (PlSqlParser.CLUSTER_DETAILS - 192)) | (1 << (PlSqlParser.CLUSTER_DISTANCE - 192)) | (1 << (PlSqlParser.CLUSTER_ID - 192)) | (1 << (PlSqlParser.CLUSTERING - 192)) | (1 << (PlSqlParser.CLUSTERING_FACTOR - 192)) | (1 << (PlSqlParser.CLUSTER_PROBABILITY - 192)) | (1 << (PlSqlParser.CLUSTER_SET - 192)) | (1 << (PlSqlParser.COALESCE - 192)) | (1 << (PlSqlParser.COALESCE_SQ - 192)) | (1 << (PlSqlParser.COARSE - 192)) | (1 << (PlSqlParser.CO_AUTH_IND - 192)) | (1 << (PlSqlParser.COLD - 192)) | (1 << (PlSqlParser.COLLECT - 192)) | (1 << (PlSqlParser.COLUMNAR - 192)) | (1 << (PlSqlParser.COLUMN_AUTH_INDICATOR - 192)) | (1 << (PlSqlParser.COLUMN - 192)) | (1 << (PlSqlParser.COLUMNS - 192)) | (1 << (PlSqlParser.COLUMN_STATS - 192)) | (1 << (PlSqlParser.COLUMN_VALUE - 192)) | (1 << (PlSqlParser.COMMENT - 192)) | (1 << (PlSqlParser.COMMIT - 192)) | (1 << (PlSqlParser.COMMITTED - 192)) | (1 << (PlSqlParser.COMMON_DATA - 192)) | (1 << (PlSqlParser.COMPACT - 192)) | (1 << (PlSqlParser.COMPATIBILITY - 192)) | (1 << (PlSqlParser.COMPILE - 192)))) !== 0) || ((((_la - 224)) & ~0x1f) == 0 && ((1 << (_la - 224)) & ((1 << (PlSqlParser.COMPLETE - 224)) | (1 << (PlSqlParser.COMPLIANCE - 224)) | (1 << (PlSqlParser.COMPONENT - 224)) | (1 << (PlSqlParser.COMPONENTS - 224)) | (1 << (PlSqlParser.COMPOSE - 224)) | (1 << (PlSqlParser.COMPOSITE - 224)) | (1 << (PlSqlParser.COMPOSITE_LIMIT - 224)) | (1 << (PlSqlParser.COMPOUND - 224)) | (1 << (PlSqlParser.COMPUTE - 224)) | (1 << (PlSqlParser.CONCAT - 224)) | (1 << (PlSqlParser.CON_DBID_TO_ID - 224)) | (1 << (PlSqlParser.CONDITIONAL - 224)) | (1 << (PlSqlParser.CONDITION - 224)) | (1 << (PlSqlParser.CONFIRM - 224)) | (1 << (PlSqlParser.CONFORMING - 224)) | (1 << (PlSqlParser.CON_GUID_TO_ID - 224)) | (1 << (PlSqlParser.CON_ID - 224)) | (1 << (PlSqlParser.CON_NAME_TO_ID - 224)) | (1 << (PlSqlParser.CONNECT_BY_CB_WHR_ONLY - 224)) | (1 << (PlSqlParser.CONNECT_BY_COMBINE_SW - 224)) | (1 << (PlSqlParser.CONNECT_BY_COST_BASED - 224)) | (1 << (PlSqlParser.CONNECT_BY_ELIM_DUPS - 224)) | (1 << (PlSqlParser.CONNECT_BY_FILTERING - 224)) | (1 << (PlSqlParser.CONNECT_BY_ISCYCLE - 224)) | (1 << (PlSqlParser.CONNECT_BY_ISLEAF - 224)) | (1 << (PlSqlParser.CONNECT_BY_ROOT - 224)) | (1 << (PlSqlParser.CONNECT_TIME - 224)) | (1 << (PlSqlParser.CONSIDER - 224)) | (1 << (PlSqlParser.CONSISTENT - 224)) | (1 << (PlSqlParser.CONSTANT - 224)))) !== 0) || ((((_la - 256)) & ~0x1f) == 0 && ((1 << (_la - 256)) & ((1 << (PlSqlParser.CONST - 256)) | (1 << (PlSqlParser.CONSTRAINT - 256)) | (1 << (PlSqlParser.CONSTRAINTS - 256)) | (1 << (PlSqlParser.CONSTRUCTOR - 256)) | (1 << (PlSqlParser.CONTAINER - 256)) | (1 << (PlSqlParser.CONTAINER_DATA - 256)) | (1 << (PlSqlParser.CONTAINERS - 256)) | (1 << (PlSqlParser.CONTENT - 256)) | (1 << (PlSqlParser.CONTENTS - 256)) | (1 << (PlSqlParser.CONTEXT - 256)) | (1 << (PlSqlParser.CONTINUE - 256)) | (1 << (PlSqlParser.CONTROLFILE - 256)) | (1 << (PlSqlParser.CON_UID_TO_ID - 256)) | (1 << (PlSqlParser.CONVERT - 256)) | (1 << (PlSqlParser.COOKIE - 256)) | (1 << (PlSqlParser.COPY - 256)) | (1 << (PlSqlParser.CORR_K - 256)) | (1 << (PlSqlParser.CORR_S - 256)) | (1 << (PlSqlParser.CORRUPTION - 256)) | (1 << (PlSqlParser.CORRUPT_XID_ALL - 256)) | (1 << (PlSqlParser.CORRUPT_XID - 256)) | (1 << (PlSqlParser.COS - 256)) | (1 << (PlSqlParser.COSH - 256)) | (1 << (PlSqlParser.COST - 256)) | (1 << (PlSqlParser.COST_XML_QUERY_REWRITE - 256)) | (1 << (PlSqlParser.COUNT - 256)) | (1 << (PlSqlParser.COVAR_POP - 256)) | (1 << (PlSqlParser.COVAR_SAMP - 256)) | (1 << (PlSqlParser.CPU_COSTING - 256)) | (1 << (PlSqlParser.CPU_PER_CALL - 256)) | (1 << (PlSqlParser.CPU_PER_SESSION - 256)) | (1 << (PlSqlParser.CRASH - 256)))) !== 0) || ((((_la - 289)) & ~0x1f) == 0 && ((1 << (_la - 289)) & ((1 << (PlSqlParser.CREATE_FILE_DEST - 289)) | (1 << (PlSqlParser.CREATE_STORED_OUTLINES - 289)) | (1 << (PlSqlParser.CREATION - 289)) | (1 << (PlSqlParser.CREDENTIAL - 289)) | (1 << (PlSqlParser.CRITICAL - 289)) | (1 << (PlSqlParser.CROSS - 289)) | (1 << (PlSqlParser.CROSSEDITION - 289)) | (1 << (PlSqlParser.CSCONVERT - 289)) | (1 << (PlSqlParser.CUBE_AJ - 289)) | (1 << (PlSqlParser.CUBE - 289)) | (1 << (PlSqlParser.CUBE_GB - 289)) | (1 << (PlSqlParser.CUBE_SJ - 289)) | (1 << (PlSqlParser.CUME_DISTM - 289)) | (1 << (PlSqlParser.CURRENT - 289)) | (1 << (PlSqlParser.CURRENT_DATE - 289)) | (1 << (PlSqlParser.CURRENT_SCHEMA - 289)) | (1 << (PlSqlParser.CURRENT_TIME - 289)) | (1 << (PlSqlParser.CURRENT_TIMESTAMP - 289)) | (1 << (PlSqlParser.CURRENT_USER - 289)) | (1 << (PlSqlParser.CURRENTV - 289)) | (1 << (PlSqlParser.CURSOR - 289)) | (1 << (PlSqlParser.CURSOR_SHARING_EXACT - 289)) | (1 << (PlSqlParser.CURSOR_SPECIFIC_SEGMENT - 289)) | (1 << (PlSqlParser.CUSTOMDATUM - 289)) | (1 << (PlSqlParser.CV - 289)) | (1 << (PlSqlParser.CYCLE - 289)) | (1 << (PlSqlParser.DANGLING - 289)) | (1 << (PlSqlParser.DATABASE - 289)) | (1 << (PlSqlParser.DATA - 289)) | (1 << (PlSqlParser.DATAFILE - 289)) | (1 << (PlSqlParser.DATAFILES - 289)))) !== 0) || ((((_la - 321)) & ~0x1f) == 0 && ((1 << (_la - 321)) & ((1 << (PlSqlParser.DATAMOVEMENT - 321)) | (1 << (PlSqlParser.DATAOBJNO - 321)) | (1 << (PlSqlParser.DATAOBJ_TO_MAT_PARTITION - 321)) | (1 << (PlSqlParser.DATAOBJ_TO_PARTITION - 321)) | (1 << (PlSqlParser.DATAPUMP - 321)) | (1 << (PlSqlParser.DATA_SECURITY_REWRITE_LIMIT - 321)) | (1 << (PlSqlParser.DATE_MODE - 321)) | (1 << (PlSqlParser.DAY - 321)) | (1 << (PlSqlParser.DAYS - 321)) | (1 << (PlSqlParser.DBA - 321)) | (1 << (PlSqlParser.DBA_RECYCLEBIN - 321)) | (1 << (PlSqlParser.DBMS_STATS - 321)) | (1 << (PlSqlParser.DB_ROLE_CHANGE - 321)) | (1 << (PlSqlParser.DBTIMEZONE - 321)) | (1 << (PlSqlParser.DB_UNIQUE_NAME - 321)) | (1 << (PlSqlParser.DB_VERSION - 321)) | (1 << (PlSqlParser.DDL - 321)) | (1 << (PlSqlParser.DEALLOCATE - 321)) | (1 << (PlSqlParser.DEBUG - 321)) | (1 << (PlSqlParser.DEBUGGER - 321)) | (1 << (PlSqlParser.DEC - 321)) | (1 << (PlSqlParser.DECIMAL - 321)) | (1 << (PlSqlParser.DECLARE - 321)) | (1 << (PlSqlParser.DECOMPOSE - 321)) | (1 << (PlSqlParser.DECORRELATE - 321)) | (1 << (PlSqlParser.DECR - 321)) | (1 << (PlSqlParser.DECREMENT - 321)) | (1 << (PlSqlParser.DECRYPT - 321)) | (1 << (PlSqlParser.DEDUPLICATE - 321)) | (1 << (PlSqlParser.DEFAULTS - 321)))) !== 0) || ((((_la - 353)) & ~0x1f) == 0 && ((1 << (_la - 353)) & ((1 << (PlSqlParser.DEFERRABLE - 353)) | (1 << (PlSqlParser.DEFERRED - 353)) | (1 << (PlSqlParser.DEFINED - 353)) | (1 << (PlSqlParser.DEFINE - 353)) | (1 << (PlSqlParser.DEFINER - 353)) | (1 << (PlSqlParser.DEGREE - 353)) | (1 << (PlSqlParser.DELAY - 353)) | (1 << (PlSqlParser.DELEGATE - 353)) | (1 << (PlSqlParser.DELETE_ALL - 353)) | (1 << (PlSqlParser.DELETE - 353)) | (1 << (PlSqlParser.DELETEXML - 353)) | (1 << (PlSqlParser.DEMAND - 353)) | (1 << (PlSqlParser.DENSE_RANKM - 353)) | (1 << (PlSqlParser.DEPENDENT - 353)) | (1 << (PlSqlParser.DEPTH - 353)) | (1 << (PlSqlParser.DEQUEUE - 353)) | (1 << (PlSqlParser.DEREF - 353)) | (1 << (PlSqlParser.DEREF_NO_REWRITE - 353)) | (1 << (PlSqlParser.DESTROY - 353)) | (1 << (PlSqlParser.DETACHED - 353)) | (1 << (PlSqlParser.DETERMINES - 353)) | (1 << (PlSqlParser.DETERMINISTIC - 353)) | (1 << (PlSqlParser.DICTIONARY - 353)) | (1 << (PlSqlParser.DIMENSION - 353)) | (1 << (PlSqlParser.DIMENSIONS - 353)) | (1 << (PlSqlParser.DIRECT_LOAD - 353)) | (1 << (PlSqlParser.DIRECTORY - 353)) | (1 << (PlSqlParser.DIRECT_PATH - 353)) | (1 << (PlSqlParser.DISABLE_ALL - 353)) | (1 << (PlSqlParser.DISABLE - 353)) | (1 << (PlSqlParser.DISABLE_PARALLEL_DML - 353)))) !== 0) || ((((_la - 385)) & ~0x1f) == 0 && ((1 << (_la - 385)) & ((1 << (PlSqlParser.DISABLE_PRESET - 385)) | (1 << (PlSqlParser.DISABLE_RPKE - 385)) | (1 << (PlSqlParser.DISALLOW - 385)) | (1 << (PlSqlParser.DISASSOCIATE - 385)) | (1 << (PlSqlParser.DISCARD - 385)) | (1 << (PlSqlParser.DISCONNECT - 385)) | (1 << (PlSqlParser.DISK - 385)) | (1 << (PlSqlParser.DISKGROUP - 385)) | (1 << (PlSqlParser.DISKS - 385)) | (1 << (PlSqlParser.DISMOUNT - 385)) | (1 << (PlSqlParser.DISTINGUISHED - 385)) | (1 << (PlSqlParser.DISTRIBUTED - 385)) | (1 << (PlSqlParser.DISTRIBUTE - 385)) | (1 << (PlSqlParser.DML - 385)) | (1 << (PlSqlParser.DML_UPDATE - 385)) | (1 << (PlSqlParser.DOCFIDELITY - 385)) | (1 << (PlSqlParser.DOCUMENT - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_FILTER - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_NO_SORT - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_SORT - 385)) | (1 << (PlSqlParser.DOUBLE - 385)) | (1 << (PlSqlParser.DOWNGRADE - 385)) | (1 << (PlSqlParser.DRIVING_SITE - 385)) | (1 << (PlSqlParser.DROP_COLUMN - 385)) | (1 << (PlSqlParser.DROP_GROUP - 385)) | (1 << (PlSqlParser.DSINTERVAL_UNCONSTRAINED - 385)) | (1 << (PlSqlParser.DST_UPGRADE_INSERT_CONV - 385)) | (1 << (PlSqlParser.DUMP - 385)))) !== 0) || ((((_la - 417)) & ~0x1f) == 0 && ((1 << (_la - 417)) & ((1 << (PlSqlParser.DUPLICATE - 417)) | (1 << (PlSqlParser.DV - 417)) | (1 << (PlSqlParser.DYNAMIC - 417)) | (1 << (PlSqlParser.DYNAMIC_SAMPLING - 417)) | (1 << (PlSqlParser.DYNAMIC_SAMPLING_EST_CDN - 417)) | (1 << (PlSqlParser.EACH - 417)) | (1 << (PlSqlParser.EDITIONABLE - 417)) | (1 << (PlSqlParser.EDITION - 417)) | (1 << (PlSqlParser.EDITIONING - 417)) | (1 << (PlSqlParser.EDITIONS - 417)) | (1 << (PlSqlParser.ELEMENT - 417)) | (1 << (PlSqlParser.ELIM_GROUPBY - 417)) | (1 << (PlSqlParser.ELIMINATE_JOIN - 417)) | (1 << (PlSqlParser.ELIMINATE_OBY - 417)) | (1 << (PlSqlParser.ELIMINATE_OUTER_JOIN - 417)) | (1 << (PlSqlParser.EM - 417)) | (1 << (PlSqlParser.EMPTY_BLOB - 417)) | (1 << (PlSqlParser.EMPTY_CLOB - 417)) | (1 << (PlSqlParser.EMPTY - 417)) | (1 << (PlSqlParser.ENABLE_ALL - 417)) | (1 << (PlSqlParser.ENABLE - 417)) | (1 << (PlSqlParser.ENABLE_PARALLEL_DML - 417)) | (1 << (PlSqlParser.ENABLE_PRESET - 417)) | (1 << (PlSqlParser.ENCODING - 417)) | (1 << (PlSqlParser.ENCRYPT - 417)) | (1 << (PlSqlParser.ENCRYPTION - 417)) | (1 << (PlSqlParser.END_OUTLINE_DATA - 417)) | (1 << (PlSqlParser.ENFORCED - 417)) | (1 << (PlSqlParser.ENFORCE - 417)))) !== 0) || ((((_la - 449)) & ~0x1f) == 0 && ((1 << (_la - 449)) & ((1 << (PlSqlParser.ENQUEUE - 449)) | (1 << (PlSqlParser.ENTERPRISE - 449)) | (1 << (PlSqlParser.ENTITYESCAPING - 449)) | (1 << (PlSqlParser.ENTRY - 449)) | (1 << (PlSqlParser.EQUIPART - 449)) | (1 << (PlSqlParser.ERR - 449)) | (1 << (PlSqlParser.ERROR_ARGUMENT - 449)) | (1 << (PlSqlParser.ERROR - 449)) | (1 << (PlSqlParser.ERROR_ON_OVERLAP_TIME - 449)) | (1 << (PlSqlParser.ERRORS - 449)) | (1 << (PlSqlParser.ESCAPE - 449)) | (1 << (PlSqlParser.ESTIMATE - 449)) | (1 << (PlSqlParser.EVAL - 449)) | (1 << (PlSqlParser.EVALNAME - 449)) | (1 << (PlSqlParser.EVALUATE - 449)) | (1 << (PlSqlParser.EVALUATION - 449)) | (1 << (PlSqlParser.EVENTS - 449)) | (1 << (PlSqlParser.EVERY - 449)) | (1 << (PlSqlParser.EXCEPT - 449)) | (1 << (PlSqlParser.EXCEPTION - 449)) | (1 << (PlSqlParser.EXCEPTION_INIT - 449)) | (1 << (PlSqlParser.EXCEPTIONS - 449)) | (1 << (PlSqlParser.EXCHANGE - 449)) | (1 << (PlSqlParser.EXCLUDE - 449)) | (1 << (PlSqlParser.EXCLUDING - 449)) | (1 << (PlSqlParser.EXECUTE - 449)) | (1 << (PlSqlParser.EXEMPT - 449)) | (1 << (PlSqlParser.EXISTING - 449)) | (1 << (PlSqlParser.EXISTS - 449)) | (1 << (PlSqlParser.EXISTSNODE - 449)) | (1 << (PlSqlParser.EXIT - 449)))) !== 0) || ((((_la - 481)) & ~0x1f) == 0 && ((1 << (_la - 481)) & ((1 << (PlSqlParser.EXPAND_GSET_TO_UNION - 481)) | (1 << (PlSqlParser.EXPAND_TABLE - 481)) | (1 << (PlSqlParser.EXP - 481)) | (1 << (PlSqlParser.EXPIRE - 481)) | (1 << (PlSqlParser.EXPLAIN - 481)) | (1 << (PlSqlParser.EXPLOSION - 481)) | (1 << (PlSqlParser.EXPORT - 481)) | (1 << (PlSqlParser.EXPR_CORR_CHECK - 481)) | (1 << (PlSqlParser.EXPRESS - 481)) | (1 << (PlSqlParser.EXTENDS - 481)) | (1 << (PlSqlParser.EXTENT - 481)) | (1 << (PlSqlParser.EXTENTS - 481)) | (1 << (PlSqlParser.EXTERNAL - 481)) | (1 << (PlSqlParser.EXTERNALLY - 481)) | (1 << (PlSqlParser.EXTRACTCLOBXML - 481)) | (1 << (PlSqlParser.EXTRACT - 481)) | (1 << (PlSqlParser.EXTRACTVALUE - 481)) | (1 << (PlSqlParser.EXTRA - 481)) | (1 << (PlSqlParser.FACILITY - 481)) | (1 << (PlSqlParser.FACT - 481)) | (1 << (PlSqlParser.FACTOR - 481)) | (1 << (PlSqlParser.FACTORIZE_JOIN - 481)) | (1 << (PlSqlParser.FAILED - 481)) | (1 << (PlSqlParser.FAILED_LOGIN_ATTEMPTS - 481)) | (1 << (PlSqlParser.FAILGROUP - 481)) | (1 << (PlSqlParser.FAILOVER - 481)) | (1 << (PlSqlParser.FAILURE - 481)) | (1 << (PlSqlParser.FALSE - 481)) | (1 << (PlSqlParser.FAMILY - 481)) | (1 << (PlSqlParser.FAR - 481)) | (1 << (PlSqlParser.FAST - 481)) | (1 << (PlSqlParser.FASTSTART - 481)))) !== 0) || ((((_la - 513)) & ~0x1f) == 0 && ((1 << (_la - 513)) & ((1 << (PlSqlParser.FBTSCAN - 513)) | (1 << (PlSqlParser.FEATURE_DETAILS - 513)) | (1 << (PlSqlParser.FEATURE_ID - 513)) | (1 << (PlSqlParser.FEATURE_SET - 513)) | (1 << (PlSqlParser.FEATURE_VALUE - 513)) | (1 << (PlSqlParser.FETCH - 513)) | (1 << (PlSqlParser.FILE - 513)) | (1 << (PlSqlParser.FILE_NAME_CONVERT - 513)) | (1 << (PlSqlParser.FILESYSTEM_LIKE_LOGGING - 513)) | (1 << (PlSqlParser.FILTER - 513)) | (1 << (PlSqlParser.FINAL - 513)) | (1 << (PlSqlParser.FINE - 513)) | (1 << (PlSqlParser.FINISH - 513)) | (1 << (PlSqlParser.FIRST - 513)) | (1 << (PlSqlParser.FIRSTM - 513)) | (1 << (PlSqlParser.FIRST_ROWS - 513)) | (1 << (PlSqlParser.FIRST_VALUE - 513)) | (1 << (PlSqlParser.FIXED_VIEW_DATA - 513)) | (1 << (PlSqlParser.FLAGGER - 513)) | (1 << (PlSqlParser.FLASHBACK - 513)) | (1 << (PlSqlParser.FLASH_CACHE - 513)) | (1 << (PlSqlParser.FLOAT - 513)) | (1 << (PlSqlParser.FLOB - 513)) | (1 << (PlSqlParser.FLOOR - 513)) | (1 << (PlSqlParser.FLUSH - 513)) | (1 << (PlSqlParser.FOLDER - 513)) | (1 << (PlSqlParser.FOLLOWING - 513)) | (1 << (PlSqlParser.FOLLOWS - 513)) | (1 << (PlSqlParser.FORALL - 513)) | (1 << (PlSqlParser.FORCE - 513)) | (1 << (PlSqlParser.FORCE_XML_QUERY_REWRITE - 513)) | (1 << (PlSqlParser.FOREIGN - 513)))) !== 0) || ((((_la - 545)) & ~0x1f) == 0 && ((1 << (_la - 545)) & ((1 << (PlSqlParser.FOREVER - 545)) | (1 << (PlSqlParser.FORMAT - 545)) | (1 << (PlSqlParser.FORWARD - 545)) | (1 << (PlSqlParser.FRAGMENT_NUMBER - 545)) | (1 << (PlSqlParser.FREELIST - 545)) | (1 << (PlSqlParser.FREELISTS - 545)) | (1 << (PlSqlParser.FREEPOOLS - 545)) | (1 << (PlSqlParser.FRESH - 545)) | (1 << (PlSqlParser.FROM_TZ - 545)) | (1 << (PlSqlParser.FULL - 545)) | (1 << (PlSqlParser.FULL_OUTER_JOIN_TO_OUTER - 545)) | (1 << (PlSqlParser.FUNCTION - 545)) | (1 << (PlSqlParser.FUNCTIONS - 545)) | (1 << (PlSqlParser.GATHER_OPTIMIZER_STATISTICS - 545)) | (1 << (PlSqlParser.GATHER_PLAN_STATISTICS - 545)) | (1 << (PlSqlParser.GBY_CONC_ROLLUP - 545)) | (1 << (PlSqlParser.GBY_PUSHDOWN - 545)) | (1 << (PlSqlParser.GENERATED - 545)) | (1 << (PlSqlParser.GET - 545)) | (1 << (PlSqlParser.GLOBAL - 545)) | (1 << (PlSqlParser.GLOBALLY - 545)) | (1 << (PlSqlParser.GLOBAL_NAME - 545)) | (1 << (PlSqlParser.GLOBAL_TOPIC_ENABLED - 545)) | (1 << (PlSqlParser.GROUP_BY - 545)) | (1 << (PlSqlParser.GROUP_ID - 545)) | (1 << (PlSqlParser.GROUPING - 545)) | (1 << (PlSqlParser.GROUPING_ID - 545)))) !== 0) || ((((_la - 577)) & ~0x1f) == 0 && ((1 << (_la - 577)) & ((1 << (PlSqlParser.GROUPS - 577)) | (1 << (PlSqlParser.GUARANTEED - 577)) | (1 << (PlSqlParser.GUARANTEE - 577)) | (1 << (PlSqlParser.GUARD - 577)) | (1 << (PlSqlParser.HASH_AJ - 577)) | (1 << (PlSqlParser.HASH - 577)) | (1 << (PlSqlParser.HASHKEYS - 577)) | (1 << (PlSqlParser.HASH_SJ - 577)) | (1 << (PlSqlParser.HEADER - 577)) | (1 << (PlSqlParser.HEAP - 577)) | (1 << (PlSqlParser.HELP - 577)) | (1 << (PlSqlParser.HEXTORAW - 577)) | (1 << (PlSqlParser.HEXTOREF - 577)) | (1 << (PlSqlParser.HIDDEN_KEYWORD - 577)) | (1 << (PlSqlParser.HIDE - 577)) | (1 << (PlSqlParser.HIERARCHY - 577)) | (1 << (PlSqlParser.HIGH - 577)) | (1 << (PlSqlParser.HINTSET_BEGIN - 577)) | (1 << (PlSqlParser.HINTSET_END - 577)) | (1 << (PlSqlParser.HOT - 577)) | (1 << (PlSqlParser.HOUR - 577)) | (1 << (PlSqlParser.HWM_BROKERED - 577)) | (1 << (PlSqlParser.HYBRID - 577)) | (1 << (PlSqlParser.IDENTIFIER - 577)) | (1 << (PlSqlParser.IDENTITY - 577)) | (1 << (PlSqlParser.IDGENERATORS - 577)) | (1 << (PlSqlParser.ID - 577)) | (1 << (PlSqlParser.IDLE_TIME - 577)) | (1 << (PlSqlParser.IF - 577)) | (1 << (PlSqlParser.IGNORE - 577)))) !== 0) || ((((_la - 609)) & ~0x1f) == 0 && ((1 << (_la - 609)) & ((1 << (PlSqlParser.IGNORE_OPTIM_EMBEDDED_HINTS - 609)) | (1 << (PlSqlParser.IGNORE_ROW_ON_DUPKEY_INDEX - 609)) | (1 << (PlSqlParser.IGNORE_WHERE_CLAUSE - 609)) | (1 << (PlSqlParser.ILM - 609)) | (1 << (PlSqlParser.IMMEDIATE - 609)) | (1 << (PlSqlParser.IMPACT - 609)) | (1 << (PlSqlParser.IMPORT - 609)) | (1 << (PlSqlParser.INACTIVE - 609)) | (1 << (PlSqlParser.INCLUDE - 609)) | (1 << (PlSqlParser.INCLUDE_VERSION - 609)) | (1 << (PlSqlParser.INCLUDING - 609)) | (1 << (PlSqlParser.INCREMENTAL - 609)) | (1 << (PlSqlParser.INCREMENT - 609)) | (1 << (PlSqlParser.INCR - 609)) | (1 << (PlSqlParser.INDENT - 609)) | (1 << (PlSqlParser.INDEX_ASC - 609)) | (1 << (PlSqlParser.INDEX_COMBINE - 609)) | (1 << (PlSqlParser.INDEX_DESC - 609)) | (1 << (PlSqlParser.INDEXED - 609)) | (1 << (PlSqlParser.INDEXES - 609)) | (1 << (PlSqlParser.INDEX_FFS - 609)) | (1 << (PlSqlParser.INDEX_FILTER - 609)) | (1 << (PlSqlParser.INDEXING - 609)) | (1 << (PlSqlParser.INDEX_JOIN - 609)) | (1 << (PlSqlParser.INDEX_ROWS - 609)) | (1 << (PlSqlParser.INDEX_RRS - 609)) | (1 << (PlSqlParser.INDEX_RS_ASC - 609)) | (1 << (PlSqlParser.INDEX_RS_DESC - 609)) | (1 << (PlSqlParser.INDEX_RS - 609)) | (1 << (PlSqlParser.INDEX_SCAN - 609)) | (1 << (PlSqlParser.INDEX_SKIP_SCAN - 609)))) !== 0) || ((((_la - 641)) & ~0x1f) == 0 && ((1 << (_la - 641)) & ((1 << (PlSqlParser.INDEX_SS_ASC - 641)) | (1 << (PlSqlParser.INDEX_SS_DESC - 641)) | (1 << (PlSqlParser.INDEX_SS - 641)) | (1 << (PlSqlParser.INDEX_STATS - 641)) | (1 << (PlSqlParser.INDEXTYPE - 641)) | (1 << (PlSqlParser.INDEXTYPES - 641)) | (1 << (PlSqlParser.INDICATOR - 641)) | (1 << (PlSqlParser.INDICES - 641)) | (1 << (PlSqlParser.INFINITE - 641)) | (1 << (PlSqlParser.INFORMATIONAL - 641)) | (1 << (PlSqlParser.INHERIT - 641)) | (1 << (PlSqlParser.INITCAP - 641)) | (1 << (PlSqlParser.INITIAL - 641)) | (1 << (PlSqlParser.INITIALIZED - 641)) | (1 << (PlSqlParser.INITIALLY - 641)) | (1 << (PlSqlParser.INITRANS - 641)) | (1 << (PlSqlParser.INLINE - 641)) | (1 << (PlSqlParser.INLINE_XMLTYPE_NT - 641)) | (1 << (PlSqlParser.INMEMORY - 641)) | (1 << (PlSqlParser.IN_MEMORY_METADATA - 641)) | (1 << (PlSqlParser.INMEMORY_PRUNING - 641)) | (1 << (PlSqlParser.INNER - 641)) | (1 << (PlSqlParser.INOUT - 641)) | (1 << (PlSqlParser.INPLACE - 641)) | (1 << (PlSqlParser.INSERTCHILDXMLAFTER - 641)) | (1 << (PlSqlParser.INSERTCHILDXMLBEFORE - 641)) | (1 << (PlSqlParser.INSERTCHILDXML - 641)) | (1 << (PlSqlParser.INSERTXMLAFTER - 641)) | (1 << (PlSqlParser.INSERTXMLBEFORE - 641)) | (1 << (PlSqlParser.INSTANCE - 641)))) !== 0) || ((((_la - 673)) & ~0x1f) == 0 && ((1 << (_la - 673)) & ((1 << (PlSqlParser.INSTANCES - 673)) | (1 << (PlSqlParser.INSTANTIABLE - 673)) | (1 << (PlSqlParser.INSTANTLY - 673)) | (1 << (PlSqlParser.INSTEAD - 673)) | (1 << (PlSqlParser.INSTR2 - 673)) | (1 << (PlSqlParser.INSTR4 - 673)) | (1 << (PlSqlParser.INSTRB - 673)) | (1 << (PlSqlParser.INSTRC - 673)) | (1 << (PlSqlParser.INSTR - 673)) | (1 << (PlSqlParser.INTEGER - 673)) | (1 << (PlSqlParser.INTERLEAVED - 673)) | (1 << (PlSqlParser.INTERMEDIATE - 673)) | (1 << (PlSqlParser.INTERNAL_CONVERT - 673)) | (1 << (PlSqlParser.INTERNAL_USE - 673)) | (1 << (PlSqlParser.INTERPRETED - 673)) | (1 << (PlSqlParser.INTERVAL - 673)) | (1 << (PlSqlParser.INT - 673)) | (1 << (PlSqlParser.INVALIDATE - 673)) | (1 << (PlSqlParser.INVISIBLE - 673)) | (1 << (PlSqlParser.IN_XQUERY - 673)) | (1 << (PlSqlParser.ISOLATION - 673)) | (1 << (PlSqlParser.ISOLATION_LEVEL - 673)) | (1 << (PlSqlParser.ITERATE - 673)) | (1 << (PlSqlParser.ITERATION_NUMBER - 673)) | (1 << (PlSqlParser.JAVA - 673)) | (1 << (PlSqlParser.JOB - 673)) | (1 << (PlSqlParser.JOIN - 673)) | (1 << (PlSqlParser.JSON_ARRAYAGG - 673)) | (1 << (PlSqlParser.JSON_ARRAY - 673)))) !== 0) || ((((_la - 705)) & ~0x1f) == 0 && ((1 << (_la - 705)) & ((1 << (PlSqlParser.JSON_EQUAL - 705)) | (1 << (PlSqlParser.JSON_EXISTS2 - 705)) | (1 << (PlSqlParser.JSON_EXISTS - 705)) | (1 << (PlSqlParser.JSONGET - 705)) | (1 << (PlSqlParser.JSON - 705)) | (1 << (PlSqlParser.JSON_OBJECTAGG - 705)) | (1 << (PlSqlParser.JSON_OBJECT - 705)) | (1 << (PlSqlParser.JSONPARSE - 705)) | (1 << (PlSqlParser.JSON_QUERY - 705)) | (1 << (PlSqlParser.JSON_SERIALIZE - 705)) | (1 << (PlSqlParser.JSON_TABLE - 705)) | (1 << (PlSqlParser.JSON_TEXTCONTAINS2 - 705)) | (1 << (PlSqlParser.JSON_TEXTCONTAINS - 705)) | (1 << (PlSqlParser.JSON_VALUE - 705)) | (1 << (PlSqlParser.KEEP_DUPLICATES - 705)) | (1 << (PlSqlParser.KEEP - 705)) | (1 << (PlSqlParser.KERBEROS - 705)) | (1 << (PlSqlParser.KEY - 705)) | (1 << (PlSqlParser.KEY_LENGTH - 705)) | (1 << (PlSqlParser.KEYSIZE - 705)) | (1 << (PlSqlParser.KEYS - 705)) | (1 << (PlSqlParser.KEYSTORE - 705)) | (1 << (PlSqlParser.KILL - 705)) | (1 << (PlSqlParser.LABEL - 705)) | (1 << (PlSqlParser.LANGUAGE - 705)) | (1 << (PlSqlParser.LAST_DAY - 705)) | (1 << (PlSqlParser.LAST - 705)) | (1 << (PlSqlParser.LAST_VALUE - 705)) | (1 << (PlSqlParser.LATERAL - 705)) | (1 << (PlSqlParser.LAX - 705)) | (1 << (PlSqlParser.LAYER - 705)) | (1 << (PlSqlParser.LDAP_REGISTRATION_ENABLED - 705)))) !== 0) || ((((_la - 737)) & ~0x1f) == 0 && ((1 << (_la - 737)) & ((1 << (PlSqlParser.LDAP_REGISTRATION - 737)) | (1 << (PlSqlParser.LDAP_REG_SYNC_INTERVAL - 737)) | (1 << (PlSqlParser.LEADING - 737)) | (1 << (PlSqlParser.LEFT - 737)) | (1 << (PlSqlParser.LENGTH2 - 737)) | (1 << (PlSqlParser.LENGTH4 - 737)) | (1 << (PlSqlParser.LENGTHB - 737)) | (1 << (PlSqlParser.LENGTHC - 737)) | (1 << (PlSqlParser.LENGTH - 737)) | (1 << (PlSqlParser.LESS - 737)) | (1 << (PlSqlParser.LEVEL - 737)) | (1 << (PlSqlParser.LEVELS - 737)) | (1 << (PlSqlParser.LIBRARY - 737)) | (1 << (PlSqlParser.LIFECYCLE - 737)) | (1 << (PlSqlParser.LIFE - 737)) | (1 << (PlSqlParser.LIFETIME - 737)) | (1 << (PlSqlParser.LIKE2 - 737)) | (1 << (PlSqlParser.LIKE4 - 737)) | (1 << (PlSqlParser.LIKEC - 737)) | (1 << (PlSqlParser.LIKE_EXPAND - 737)) | (1 << (PlSqlParser.LIMIT - 737)) | (1 << (PlSqlParser.LINEAR - 737)) | (1 << (PlSqlParser.LINK - 737)) | (1 << (PlSqlParser.LIST - 737)) | (1 << (PlSqlParser.LN - 737)) | (1 << (PlSqlParser.LNNVL - 737)) | (1 << (PlSqlParser.LOAD - 737)) | (1 << (PlSqlParser.LOB - 737)) | (1 << (PlSqlParser.LOBNVL - 737)) | (1 << (PlSqlParser.LOBS - 737)) | (1 << (PlSqlParser.LOCAL_INDEXES - 737)))) !== 0) || ((((_la - 769)) & ~0x1f) == 0 && ((1 << (_la - 769)) & ((1 << (PlSqlParser.LOCAL - 769)) | (1 << (PlSqlParser.LOCALTIME - 769)) | (1 << (PlSqlParser.LOCALTIMESTAMP - 769)) | (1 << (PlSqlParser.LOCATION - 769)) | (1 << (PlSqlParser.LOCATOR - 769)) | (1 << (PlSqlParser.LOCKED - 769)) | (1 << (PlSqlParser.LOCKING - 769)) | (1 << (PlSqlParser.LOGFILE - 769)) | (1 << (PlSqlParser.LOGFILES - 769)) | (1 << (PlSqlParser.LOGGING - 769)) | (1 << (PlSqlParser.LOGICAL - 769)) | (1 << (PlSqlParser.LOGICAL_READS_PER_CALL - 769)) | (1 << (PlSqlParser.LOGICAL_READS_PER_SESSION - 769)) | (1 << (PlSqlParser.LOG - 769)) | (1 << (PlSqlParser.LOGMINING - 769)) | (1 << (PlSqlParser.LOGOFF - 769)) | (1 << (PlSqlParser.LOGON - 769)) | (1 << (PlSqlParser.LOG_READ_ONLY_VIOLATIONS - 769)) | (1 << (PlSqlParser.LONG - 769)) | (1 << (PlSqlParser.LOOP - 769)) | (1 << (PlSqlParser.LOWER - 769)) | (1 << (PlSqlParser.LOW - 769)) | (1 << (PlSqlParser.LPAD - 769)) | (1 << (PlSqlParser.LTRIM - 769)) | (1 << (PlSqlParser.MAIN - 769)) | (1 << (PlSqlParser.MAKE_REF - 769)) | (1 << (PlSqlParser.MANAGED - 769)) | (1 << (PlSqlParser.MANAGE - 769)) | (1 << (PlSqlParser.MANAGEMENT - 769)) | (1 << (PlSqlParser.MANAGER - 769)) | (1 << (PlSqlParser.MANUAL - 769)))) !== 0) || ((((_la - 801)) & ~0x1f) == 0 && ((1 << (_la - 801)) & ((1 << (PlSqlParser.MAP - 801)) | (1 << (PlSqlParser.MAPPING - 801)) | (1 << (PlSqlParser.MASTER - 801)) | (1 << (PlSqlParser.MATCHED - 801)) | (1 << (PlSqlParser.MATCHES - 801)) | (1 << (PlSqlParser.MATCH - 801)) | (1 << (PlSqlParser.MATCH_NUMBER - 801)) | (1 << (PlSqlParser.MATCH_RECOGNIZE - 801)) | (1 << (PlSqlParser.MATERIALIZED - 801)) | (1 << (PlSqlParser.MATERIALIZE - 801)) | (1 << (PlSqlParser.MAXARCHLOGS - 801)) | (1 << (PlSqlParser.MAXDATAFILES - 801)) | (1 << (PlSqlParser.MAXEXTENTS - 801)) | (1 << (PlSqlParser.MAXIMIZE - 801)) | (1 << (PlSqlParser.MAXINSTANCES - 801)) | (1 << (PlSqlParser.MAXLOGFILES - 801)) | (1 << (PlSqlParser.MAXLOGHISTORY - 801)) | (1 << (PlSqlParser.MAXLOGMEMBERS - 801)) | (1 << (PlSqlParser.MAX_SHARED_TEMP_SIZE - 801)) | (1 << (PlSqlParser.MAXSIZE - 801)) | (1 << (PlSqlParser.MAXTRANS - 801)) | (1 << (PlSqlParser.MAXVALUE - 801)) | (1 << (PlSqlParser.MEASURE - 801)) | (1 << (PlSqlParser.MEASURES - 801)) | (1 << (PlSqlParser.MEDIUM - 801)) | (1 << (PlSqlParser.MEMBER - 801)) | (1 << (PlSqlParser.MEMCOMPRESS - 801)) | (1 << (PlSqlParser.MEMORY - 801)) | (1 << (PlSqlParser.MERGEACTIONS - 801)) | (1 << (PlSqlParser.MERGE_AJ - 801)) | (1 << (PlSqlParser.MERGE_CONST_ON - 801)) | (1 << (PlSqlParser.MERGE - 801)))) !== 0) || ((((_la - 833)) & ~0x1f) == 0 && ((1 << (_la - 833)) & ((1 << (PlSqlParser.MERGE_SJ - 833)) | (1 << (PlSqlParser.METADATA - 833)) | (1 << (PlSqlParser.METHOD - 833)) | (1 << (PlSqlParser.MIGRATE - 833)) | (1 << (PlSqlParser.MIGRATION - 833)) | (1 << (PlSqlParser.MINEXTENTS - 833)) | (1 << (PlSqlParser.MINIMIZE - 833)) | (1 << (PlSqlParser.MINIMUM - 833)) | (1 << (PlSqlParser.MINING - 833)) | (1 << (PlSqlParser.MINUS_NULL - 833)) | (1 << (PlSqlParser.MINUTE - 833)) | (1 << (PlSqlParser.MINVALUE - 833)) | (1 << (PlSqlParser.MIRRORCOLD - 833)) | (1 << (PlSqlParser.MIRRORHOT - 833)) | (1 << (PlSqlParser.MIRROR - 833)) | (1 << (PlSqlParser.MLSLABEL - 833)) | (1 << (PlSqlParser.MODEL_COMPILE_SUBQUERY - 833)) | (1 << (PlSqlParser.MODEL_DONTVERIFY_UNIQUENESS - 833)) | (1 << (PlSqlParser.MODEL_DYNAMIC_SUBQUERY - 833)) | (1 << (PlSqlParser.MODEL_MIN_ANALYSIS - 833)) | (1 << (PlSqlParser.MODEL - 833)) | (1 << (PlSqlParser.MODEL_NB - 833)) | (1 << (PlSqlParser.MODEL_NO_ANALYSIS - 833)) | (1 << (PlSqlParser.MODEL_PBY - 833)) | (1 << (PlSqlParser.MODEL_PUSH_REF - 833)) | (1 << (PlSqlParser.MODEL_SV - 833)) | (1 << (PlSqlParser.MODIFICATION - 833)) | (1 << (PlSqlParser.MODIFY_COLUMN_TYPE - 833)) | (1 << (PlSqlParser.MODIFY - 833)) | (1 << (PlSqlParser.MOD - 833)))) !== 0) || ((((_la - 865)) & ~0x1f) == 0 && ((1 << (_la - 865)) & ((1 << (PlSqlParser.MODULE - 865)) | (1 << (PlSqlParser.MONITORING - 865)) | (1 << (PlSqlParser.MONITOR - 865)) | (1 << (PlSqlParser.MONTH - 865)) | (1 << (PlSqlParser.MONTHS_BETWEEN - 865)) | (1 << (PlSqlParser.MONTHS - 865)) | (1 << (PlSqlParser.MOUNT - 865)) | (1 << (PlSqlParser.MOUNTPATH - 865)) | (1 << (PlSqlParser.MOVEMENT - 865)) | (1 << (PlSqlParser.MOVE - 865)) | (1 << (PlSqlParser.MULTIDIMENSIONAL - 865)) | (1 << (PlSqlParser.MULTISET - 865)) | (1 << (PlSqlParser.MV_MERGE - 865)) | (1 << (PlSqlParser.NAMED - 865)) | (1 << (PlSqlParser.NAME - 865)) | (1 << (PlSqlParser.NAMESPACE - 865)) | (1 << (PlSqlParser.NAN - 865)) | (1 << (PlSqlParser.NANVL - 865)) | (1 << (PlSqlParser.NATIONAL - 865)) | (1 << (PlSqlParser.NATIVE_FULL_OUTER_JOIN - 865)) | (1 << (PlSqlParser.NATIVE - 865)) | (1 << (PlSqlParser.NATURAL - 865)) | (1 << (PlSqlParser.NAV - 865)) | (1 << (PlSqlParser.NCHAR_CS - 865)) | (1 << (PlSqlParser.NCHAR - 865)) | (1 << (PlSqlParser.NCHR - 865)) | (1 << (PlSqlParser.NCLOB - 865)) | (1 << (PlSqlParser.NEEDED - 865)) | (1 << (PlSqlParser.NEG - 865)) | (1 << (PlSqlParser.NESTED - 865)) | (1 << (PlSqlParser.NESTED_TABLE_FAST_INSERT - 865)))) !== 0) || ((((_la - 897)) & ~0x1f) == 0 && ((1 << (_la - 897)) & ((1 << (PlSqlParser.NESTED_TABLE_GET_REFS - 897)) | (1 << (PlSqlParser.NESTED_TABLE_ID - 897)) | (1 << (PlSqlParser.NESTED_TABLE_SET_REFS - 897)) | (1 << (PlSqlParser.NESTED_TABLE_SET_SETID - 897)) | (1 << (PlSqlParser.NETWORK - 897)) | (1 << (PlSqlParser.NEVER - 897)) | (1 << (PlSqlParser.NEW - 897)) | (1 << (PlSqlParser.NEW_TIME - 897)) | (1 << (PlSqlParser.NEXT_DAY - 897)) | (1 << (PlSqlParser.NEXT - 897)) | (1 << (PlSqlParser.NL_AJ - 897)) | (1 << (PlSqlParser.NLJ_BATCHING - 897)) | (1 << (PlSqlParser.NLJ_INDEX_FILTER - 897)) | (1 << (PlSqlParser.NLJ_INDEX_SCAN - 897)) | (1 << (PlSqlParser.NLJ_PREFETCH - 897)) | (1 << (PlSqlParser.NLS_CALENDAR - 897)) | (1 << (PlSqlParser.NLS_CHARACTERSET - 897)) | (1 << (PlSqlParser.NLS_CHARSET_DECL_LEN - 897)) | (1 << (PlSqlParser.NLS_CHARSET_ID - 897)) | (1 << (PlSqlParser.NLS_CHARSET_NAME - 897)) | (1 << (PlSqlParser.NLS_COMP - 897)) | (1 << (PlSqlParser.NLS_CURRENCY - 897)) | (1 << (PlSqlParser.NLS_DATE_FORMAT - 897)) | (1 << (PlSqlParser.NLS_DATE_LANGUAGE - 897)) | (1 << (PlSqlParser.NLS_INITCAP - 897)) | (1 << (PlSqlParser.NLS_ISO_CURRENCY - 897)) | (1 << (PlSqlParser.NL_SJ - 897)) | (1 << (PlSqlParser.NLS_LANG - 897)) | (1 << (PlSqlParser.NLS_LANGUAGE - 897)) | (1 << (PlSqlParser.NLS_LENGTH_SEMANTICS - 897)) | (1 << (PlSqlParser.NLS_LOWER - 897)) | (1 << (PlSqlParser.NLS_NCHAR_CONV_EXCP - 897)))) !== 0) || ((((_la - 929)) & ~0x1f) == 0 && ((1 << (_la - 929)) & ((1 << (PlSqlParser.NLS_NUMERIC_CHARACTERS - 929)) | (1 << (PlSqlParser.NLS_SORT - 929)) | (1 << (PlSqlParser.NLSSORT - 929)) | (1 << (PlSqlParser.NLS_SPECIAL_CHARS - 929)) | (1 << (PlSqlParser.NLS_TERRITORY - 929)) | (1 << (PlSqlParser.NLS_UPPER - 929)) | (1 << (PlSqlParser.NO_ACCESS - 929)) | (1 << (PlSqlParser.NO_ADAPTIVE_PLAN - 929)) | (1 << (PlSqlParser.NO_ANSI_REARCH - 929)) | (1 << (PlSqlParser.NOAPPEND - 929)) | (1 << (PlSqlParser.NOARCHIVELOG - 929)) | (1 << (PlSqlParser.NOAUDIT - 929)) | (1 << (PlSqlParser.NO_AUTO_REOPTIMIZE - 929)) | (1 << (PlSqlParser.NO_BASETABLE_MULTIMV_REWRITE - 929)) | (1 << (PlSqlParser.NO_BATCH_TABLE_ACCESS_BY_ROWID - 929)) | (1 << (PlSqlParser.NO_BIND_AWARE - 929)) | (1 << (PlSqlParser.NO_BUFFER - 929)) | (1 << (PlSqlParser.NOCACHE - 929)) | (1 << (PlSqlParser.NO_CARTESIAN - 929)) | (1 << (PlSqlParser.NO_CHECK_ACL_REWRITE - 929)) | (1 << (PlSqlParser.NO_CLUSTER_BY_ROWID - 929)) | (1 << (PlSqlParser.NO_CLUSTERING - 929)) | (1 << (PlSqlParser.NO_COALESCE_SQ - 929)) | (1 << (PlSqlParser.NO_COMMON_DATA - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_CB_WHR_ONLY - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_COMBINE_SW - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_COST_BASED - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_ELIM_DUPS - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_FILTERING - 929)) | (1 << (PlSqlParser.NOCOPY - 929)) | (1 << (PlSqlParser.NO_COST_XML_QUERY_REWRITE - 929)))) !== 0) || ((((_la - 961)) & ~0x1f) == 0 && ((1 << (_la - 961)) & ((1 << (PlSqlParser.NO_CPU_COSTING - 961)) | (1 << (PlSqlParser.NOCPU_COSTING - 961)) | (1 << (PlSqlParser.NOCYCLE - 961)) | (1 << (PlSqlParser.NO_DATA_SECURITY_REWRITE - 961)) | (1 << (PlSqlParser.NO_DECORRELATE - 961)) | (1 << (PlSqlParser.NODELAY - 961)) | (1 << (PlSqlParser.NO_DOMAIN_INDEX_FILTER - 961)) | (1 << (PlSqlParser.NO_DST_UPGRADE_INSERT_CONV - 961)) | (1 << (PlSqlParser.NO_ELIM_GROUPBY - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_JOIN - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_OBY - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_OUTER_JOIN - 961)) | (1 << (PlSqlParser.NOENTITYESCAPING - 961)) | (1 << (PlSqlParser.NO_EXPAND_GSET_TO_UNION - 961)) | (1 << (PlSqlParser.NO_EXPAND - 961)) | (1 << (PlSqlParser.NO_EXPAND_TABLE - 961)) | (1 << (PlSqlParser.NO_FACT - 961)) | (1 << (PlSqlParser.NO_FACTORIZE_JOIN - 961)) | (1 << (PlSqlParser.NO_FILTERING - 961)) | (1 << (PlSqlParser.NOFORCE - 961)) | (1 << (PlSqlParser.NO_FULL_OUTER_JOIN_TO_OUTER - 961)) | (1 << (PlSqlParser.NO_GATHER_OPTIMIZER_STATISTICS - 961)) | (1 << (PlSqlParser.NO_GBY_PUSHDOWN - 961)) | (1 << (PlSqlParser.NOGUARANTEE - 961)) | (1 << (PlSqlParser.NO_INDEX_FFS - 961)) | (1 << (PlSqlParser.NO_INDEX - 961)) | (1 << (PlSqlParser.NO_INDEX_SS - 961)) | (1 << (PlSqlParser.NO_INMEMORY - 961)) | (1 << (PlSqlParser.NO_INMEMORY_PRUNING - 961)) | (1 << (PlSqlParser.NOKEEP - 961)) | (1 << (PlSqlParser.NO_LOAD - 961)) | (1 << (PlSqlParser.NOLOCAL - 961)))) !== 0) || ((((_la - 993)) & ~0x1f) == 0 && ((1 << (_la - 993)) & ((1 << (PlSqlParser.NOLOGGING - 993)) | (1 << (PlSqlParser.NOMAPPING - 993)) | (1 << (PlSqlParser.NOMAXVALUE - 993)) | (1 << (PlSqlParser.NO_MERGE - 993)) | (1 << (PlSqlParser.NOMINIMIZE - 993)) | (1 << (PlSqlParser.NOMINVALUE - 993)) | (1 << (PlSqlParser.NO_MODEL_PUSH_REF - 993)) | (1 << (PlSqlParser.NO_MONITORING - 993)) | (1 << (PlSqlParser.NOMONITORING - 993)) | (1 << (PlSqlParser.NO_MONITOR - 993)) | (1 << (PlSqlParser.NO_MULTIMV_REWRITE - 993)) | (1 << (PlSqlParser.NO_NATIVE_FULL_OUTER_JOIN - 993)) | (1 << (PlSqlParser.NONBLOCKING - 993)) | (1 << (PlSqlParser.NONEDITIONABLE - 993)) | (1 << (PlSqlParser.NONE - 993)) | (1 << (PlSqlParser.NO_NLJ_BATCHING - 993)) | (1 << (PlSqlParser.NO_NLJ_PREFETCH - 993)) | (1 << (PlSqlParser.NO - 993)) | (1 << (PlSqlParser.NONSCHEMA - 993)) | (1 << (PlSqlParser.NO_OBJECT_LINK - 993)) | (1 << (PlSqlParser.NOORDER - 993)) | (1 << (PlSqlParser.NO_ORDER_ROLLUPS - 993)) | (1 << (PlSqlParser.NO_OUTER_JOIN_TO_ANTI - 993)) | (1 << (PlSqlParser.NO_OUTER_JOIN_TO_INNER - 993)) | (1 << (PlSqlParser.NOOVERRIDE - 993)) | (1 << (PlSqlParser.NO_PARALLEL_INDEX - 993)) | (1 << (PlSqlParser.NOPARALLEL_INDEX - 993)) | (1 << (PlSqlParser.NO_PARALLEL - 993)) | (1 << (PlSqlParser.NOPARALLEL - 993)) | (1 << (PlSqlParser.NO_PARTIAL_COMMIT - 993)) | (1 << (PlSqlParser.NO_PARTIAL_JOIN - 993)) | (1 << (PlSqlParser.NO_PARTIAL_ROLLUP_PUSHDOWN - 993)))) !== 0) || ((((_la - 1025)) & ~0x1f) == 0 && ((1 << (_la - 1025)) & ((1 << (PlSqlParser.NOPARTITION - 1025)) | (1 << (PlSqlParser.NO_PLACE_DISTINCT - 1025)) | (1 << (PlSqlParser.NO_PLACE_GROUP_BY - 1025)) | (1 << (PlSqlParser.NO_PQ_CONCURRENT_UNION - 1025)) | (1 << (PlSqlParser.NO_PQ_MAP - 1025)) | (1 << (PlSqlParser.NO_PQ_REPLICATE - 1025)) | (1 << (PlSqlParser.NO_PQ_SKEW - 1025)) | (1 << (PlSqlParser.NO_PRUNE_GSETS - 1025)) | (1 << (PlSqlParser.NO_PULL_PRED - 1025)) | (1 << (PlSqlParser.NO_PUSH_PRED - 1025)) | (1 << (PlSqlParser.NO_PUSH_SUBQ - 1025)) | (1 << (PlSqlParser.NO_PX_FAULT_TOLERANCE - 1025)) | (1 << (PlSqlParser.NO_PX_JOIN_FILTER - 1025)) | (1 << (PlSqlParser.NO_QKN_BUFF - 1025)) | (1 << (PlSqlParser.NO_QUERY_TRANSFORMATION - 1025)) | (1 << (PlSqlParser.NO_REF_CASCADE - 1025)) | (1 << (PlSqlParser.NORELOCATE - 1025)) | (1 << (PlSqlParser.NORELY - 1025)) | (1 << (PlSqlParser.NOREPAIR - 1025)) | (1 << (PlSqlParser.NOREPLAY - 1025)) | (1 << (PlSqlParser.NORESETLOGS - 1025)) | (1 << (PlSqlParser.NO_RESULT_CACHE - 1025)) | (1 << (PlSqlParser.NOREVERSE - 1025)) | (1 << (PlSqlParser.NO_REWRITE - 1025)) | (1 << (PlSqlParser.NOREWRITE - 1025)) | (1 << (PlSqlParser.NORMAL - 1025)) | (1 << (PlSqlParser.NO_ROOT_SW_FOR_LOCAL - 1025)) | (1 << (PlSqlParser.NOROWDEPENDENCIES - 1025)) | (1 << (PlSqlParser.NOSCHEMACHECK - 1025)) | (1 << (PlSqlParser.NOSEGMENT - 1025)) | (1 << (PlSqlParser.NO_SEMIJOIN - 1025)) | (1 << (PlSqlParser.NO_SEMI_TO_INNER - 1025)))) !== 0) || ((((_la - 1057)) & ~0x1f) == 0 && ((1 << (_la - 1057)) & ((1 << (PlSqlParser.NO_SET_TO_JOIN - 1057)) | (1 << (PlSqlParser.NOSORT - 1057)) | (1 << (PlSqlParser.NO_SQL_TRANSLATION - 1057)) | (1 << (PlSqlParser.NO_SQL_TUNE - 1057)) | (1 << (PlSqlParser.NO_STAR_TRANSFORMATION - 1057)) | (1 << (PlSqlParser.NO_STATEMENT_QUEUING - 1057)) | (1 << (PlSqlParser.NO_STATS_GSETS - 1057)) | (1 << (PlSqlParser.NOSTRICT - 1057)) | (1 << (PlSqlParser.NO_SUBQUERY_PRUNING - 1057)) | (1 << (PlSqlParser.NO_SUBSTRB_PAD - 1057)) | (1 << (PlSqlParser.NO_SWAP_JOIN_INPUTS - 1057)) | (1 << (PlSqlParser.NOSWITCH - 1057)) | (1 << (PlSqlParser.NO_TABLE_LOOKUP_BY_NL - 1057)) | (1 << (PlSqlParser.NO_TEMP_TABLE - 1057)) | (1 << (PlSqlParser.NOTHING - 1057)) | (1 << (PlSqlParser.NOTIFICATION - 1057)) | (1 << (PlSqlParser.NO_TRANSFORM_DISTINCT_AGG - 1057)) | (1 << (PlSqlParser.NO_UNNEST - 1057)) | (1 << (PlSqlParser.NO_USE_CUBE - 1057)) | (1 << (PlSqlParser.NO_USE_HASH_AGGREGATION - 1057)) | (1 << (PlSqlParser.NO_USE_HASH_GBY_FOR_PUSHDOWN - 1057)) | (1 << (PlSqlParser.NO_USE_HASH - 1057)) | (1 << (PlSqlParser.NO_USE_INVISIBLE_INDEXES - 1057)) | (1 << (PlSqlParser.NO_USE_MERGE - 1057)) | (1 << (PlSqlParser.NO_USE_NL - 1057)) | (1 << (PlSqlParser.NO_USE_VECTOR_AGGREGATION - 1057)) | (1 << (PlSqlParser.NOVALIDATE - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM_DIMS - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM_FACT - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM - 1057)))) !== 0) || ((((_la - 1089)) & ~0x1f) == 0 && ((1 << (_la - 1089)) & ((1 << (PlSqlParser.NO_XDB_FASTPATH_INSERT - 1089)) | (1 << (PlSqlParser.NO_XML_DML_REWRITE - 1089)) | (1 << (PlSqlParser.NO_XMLINDEX_REWRITE_IN_SELECT - 1089)) | (1 << (PlSqlParser.NO_XMLINDEX_REWRITE - 1089)) | (1 << (PlSqlParser.NO_XML_QUERY_REWRITE - 1089)) | (1 << (PlSqlParser.NO_ZONEMAP - 1089)) | (1 << (PlSqlParser.NTH_VALUE - 1089)) | (1 << (PlSqlParser.NULLIF - 1089)) | (1 << (PlSqlParser.NULLS - 1089)) | (1 << (PlSqlParser.NUMBER - 1089)) | (1 << (PlSqlParser.NUMERIC - 1089)) | (1 << (PlSqlParser.NUM_INDEX_KEYS - 1089)) | (1 << (PlSqlParser.NUMTODSINTERVAL - 1089)) | (1 << (PlSqlParser.NUMTOYMINTERVAL - 1089)) | (1 << (PlSqlParser.NVARCHAR2 - 1089)) | (1 << (PlSqlParser.NVL2 - 1089)) | (1 << (PlSqlParser.OBJECT2XML - 1089)) | (1 << (PlSqlParser.OBJECT - 1089)) | (1 << (PlSqlParser.OBJ_ID - 1089)) | (1 << (PlSqlParser.OBJNO - 1089)) | (1 << (PlSqlParser.OBJNO_REUSE - 1089)) | (1 << (PlSqlParser.OCCURENCES - 1089)) | (1 << (PlSqlParser.OFFLINE - 1089)) | (1 << (PlSqlParser.OFF - 1089)) | (1 << (PlSqlParser.OFFSET - 1089)) | (1 << (PlSqlParser.OIDINDEX - 1089)) | (1 << (PlSqlParser.OID - 1089)) | (1 << (PlSqlParser.OLAP - 1089)) | (1 << (PlSqlParser.OLD - 1089)) | (1 << (PlSqlParser.OLD_PUSH_PRED - 1089)))) !== 0) || ((((_la - 1121)) & ~0x1f) == 0 && ((1 << (_la - 1121)) & ((1 << (PlSqlParser.OLS - 1121)) | (1 << (PlSqlParser.OLTP - 1121)) | (1 << (PlSqlParser.OMIT - 1121)) | (1 << (PlSqlParser.ONE - 1121)) | (1 << (PlSqlParser.ONLINE - 1121)) | (1 << (PlSqlParser.ONLY - 1121)) | (1 << (PlSqlParser.OPAQUE - 1121)) | (1 << (PlSqlParser.OPAQUE_TRANSFORM - 1121)) | (1 << (PlSqlParser.OPAQUE_XCANONICAL - 1121)) | (1 << (PlSqlParser.OPCODE - 1121)) | (1 << (PlSqlParser.OPEN - 1121)) | (1 << (PlSqlParser.OPERATIONS - 1121)) | (1 << (PlSqlParser.OPERATOR - 1121)) | (1 << (PlSqlParser.OPT_ESTIMATE - 1121)) | (1 << (PlSqlParser.OPTIMAL - 1121)) | (1 << (PlSqlParser.OPTIMIZE - 1121)) | (1 << (PlSqlParser.OPTIMIZER_FEATURES_ENABLE - 1121)) | (1 << (PlSqlParser.OPTIMIZER_GOAL - 1121)) | (1 << (PlSqlParser.OPT_PARAM - 1121)) | (1 << (PlSqlParser.ORA_BRANCH - 1121)) | (1 << (PlSqlParser.ORA_CHECK_ACL - 1121)) | (1 << (PlSqlParser.ORA_CHECK_PRIVILEGE - 1121)) | (1 << (PlSqlParser.ORA_CLUSTERING - 1121)) | (1 << (PlSqlParser.ORADATA - 1121)) | (1 << (PlSqlParser.ORADEBUG - 1121)) | (1 << (PlSqlParser.ORA_DST_AFFECTED - 1121)) | (1 << (PlSqlParser.ORA_DST_CONVERT - 1121)) | (1 << (PlSqlParser.ORA_DST_ERROR - 1121)) | (1 << (PlSqlParser.ORA_GET_ACLIDS - 1121)))) !== 0) || ((((_la - 1153)) & ~0x1f) == 0 && ((1 << (_la - 1153)) & ((1 << (PlSqlParser.ORA_GET_PRIVILEGES - 1153)) | (1 << (PlSqlParser.ORA_HASH - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_USERID - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_USER - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_XS_USER_GUID - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_XS_USER - 1153)) | (1 << (PlSqlParser.ORA_RAWCOMPARE - 1153)) | (1 << (PlSqlParser.ORA_RAWCONCAT - 1153)) | (1 << (PlSqlParser.ORA_ROWSCN - 1153)) | (1 << (PlSqlParser.ORA_ROWSCN_RAW - 1153)) | (1 << (PlSqlParser.ORA_ROWVERSION - 1153)) | (1 << (PlSqlParser.ORA_TABVERSION - 1153)) | (1 << (PlSqlParser.ORA_WRITE_TIME - 1153)) | (1 << (PlSqlParser.ORDERED - 1153)) | (1 << (PlSqlParser.ORDERED_PREDICATES - 1153)) | (1 << (PlSqlParser.ORDINALITY - 1153)) | (1 << (PlSqlParser.OR_EXPAND - 1153)) | (1 << (PlSqlParser.ORGANIZATION - 1153)) | (1 << (PlSqlParser.OR_PREDICATES - 1153)) | (1 << (PlSqlParser.OSERROR - 1153)) | (1 << (PlSqlParser.OTHER - 1153)) | (1 << (PlSqlParser.OUTER_JOIN_TO_ANTI - 1153)) | (1 << (PlSqlParser.OUTER_JOIN_TO_INNER - 1153)) | (1 << (PlSqlParser.OUTER - 1153)) | (1 << (PlSqlParser.OUTLINE_LEAF - 1153)) | (1 << (PlSqlParser.OUTLINE - 1153)) | (1 << (PlSqlParser.OUT_OF_LINE - 1153)) | (1 << (PlSqlParser.OUT - 1153)) | (1 << (PlSqlParser.OVERFLOW_NOMOVE - 1153)) | (1 << (PlSqlParser.OVERFLOW - 1153)))) !== 0) || ((((_la - 1185)) & ~0x1f) == 0 && ((1 << (_la - 1185)) & ((1 << (PlSqlParser.OVERLAPS - 1185)) | (1 << (PlSqlParser.OVER - 1185)) | (1 << (PlSqlParser.OVERRIDING - 1185)) | (1 << (PlSqlParser.OWNER - 1185)) | (1 << (PlSqlParser.OWNERSHIP - 1185)) | (1 << (PlSqlParser.OWN - 1185)) | (1 << (PlSqlParser.PACKAGE - 1185)) | (1 << (PlSqlParser.PACKAGES - 1185)) | (1 << (PlSqlParser.PARALLEL_ENABLE - 1185)) | (1 << (PlSqlParser.PARALLEL_INDEX - 1185)) | (1 << (PlSqlParser.PARALLEL - 1185)) | (1 << (PlSqlParser.PARAMETERS - 1185)) | (1 << (PlSqlParser.PARAM - 1185)) | (1 << (PlSqlParser.PARENT - 1185)) | (1 << (PlSqlParser.PARITY - 1185)) | (1 << (PlSqlParser.PARTIAL_JOIN - 1185)) | (1 << (PlSqlParser.PARTIALLY - 1185)) | (1 << (PlSqlParser.PARTIAL - 1185)) | (1 << (PlSqlParser.PARTIAL_ROLLUP_PUSHDOWN - 1185)) | (1 << (PlSqlParser.PARTITION_HASH - 1185)) | (1 << (PlSqlParser.PARTITION_LIST - 1185)) | (1 << (PlSqlParser.PARTITION - 1185)) | (1 << (PlSqlParser.PARTITION_RANGE - 1185)) | (1 << (PlSqlParser.PARTITIONS - 1185)) | (1 << (PlSqlParser.PARTNUMINST - 1185)) | (1 << (PlSqlParser.PASSING - 1185)) | (1 << (PlSqlParser.PASSWORD_GRACE_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD_LIFE_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD_LOCK_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD - 1185)) | (1 << (PlSqlParser.PASSWORD_REUSE_MAX - 1185)))) !== 0) || ((((_la - 1217)) & ~0x1f) == 0 && ((1 << (_la - 1217)) & ((1 << (PlSqlParser.PASSWORD_REUSE_TIME - 1217)) | (1 << (PlSqlParser.PASSWORD_VERIFY_FUNCTION - 1217)) | (1 << (PlSqlParser.PAST - 1217)) | (1 << (PlSqlParser.PATCH - 1217)) | (1 << (PlSqlParser.PATH - 1217)) | (1 << (PlSqlParser.PATH_PREFIX - 1217)) | (1 << (PlSqlParser.PATHS - 1217)) | (1 << (PlSqlParser.PATTERN - 1217)) | (1 << (PlSqlParser.PBL_HS_BEGIN - 1217)) | (1 << (PlSqlParser.PBL_HS_END - 1217)) | (1 << (PlSqlParser.PCTINCREASE - 1217)) | (1 << (PlSqlParser.PCTTHRESHOLD - 1217)) | (1 << (PlSqlParser.PCTUSED - 1217)) | (1 << (PlSqlParser.PCTVERSION - 1217)) | (1 << (PlSqlParser.PENDING - 1217)) | (1 << (PlSqlParser.PERCENT_KEYWORD - 1217)) | (1 << (PlSqlParser.PERCENT_RANKM - 1217)) | (1 << (PlSqlParser.PERFORMANCE - 1217)) | (1 << (PlSqlParser.PERIOD_KEYWORD - 1217)) | (1 << (PlSqlParser.PERMANENT - 1217)) | (1 << (PlSqlParser.PERMISSION - 1217)) | (1 << (PlSqlParser.PERMUTE - 1217)) | (1 << (PlSqlParser.PER - 1217)) | (1 << (PlSqlParser.PFILE - 1217)) | (1 << (PlSqlParser.PHYSICAL - 1217)))) !== 0) || ((((_la - 1249)) & ~0x1f) == 0 && ((1 << (_la - 1249)) & ((1 << (PlSqlParser.PIKEY - 1249)) | (1 << (PlSqlParser.PIPELINED - 1249)) | (1 << (PlSqlParser.PIV_GB - 1249)) | (1 << (PlSqlParser.PIVOT - 1249)) | (1 << (PlSqlParser.PIV_SSF - 1249)) | (1 << (PlSqlParser.PLACE_DISTINCT - 1249)) | (1 << (PlSqlParser.PLACE_GROUP_BY - 1249)) | (1 << (PlSqlParser.PLAN - 1249)) | (1 << (PlSqlParser.PLSCOPE_SETTINGS - 1249)) | (1 << (PlSqlParser.PLS_INTEGER - 1249)) | (1 << (PlSqlParser.PLSQL_CCFLAGS - 1249)) | (1 << (PlSqlParser.PLSQL_CODE_TYPE - 1249)) | (1 << (PlSqlParser.PLSQL_DEBUG - 1249)) | (1 << (PlSqlParser.PLSQL_OPTIMIZE_LEVEL - 1249)) | (1 << (PlSqlParser.PLSQL_WARNINGS - 1249)) | (1 << (PlSqlParser.PLUGGABLE - 1249)) | (1 << (PlSqlParser.POINT - 1249)) | (1 << (PlSqlParser.POLICY - 1249)) | (1 << (PlSqlParser.POOL_16K - 1249)) | (1 << (PlSqlParser.POOL_2K - 1249)) | (1 << (PlSqlParser.POOL_32K - 1249)) | (1 << (PlSqlParser.POOL_4K - 1249)) | (1 << (PlSqlParser.POOL_8K - 1249)) | (1 << (PlSqlParser.POSITIVEN - 1249)) | (1 << (PlSqlParser.POSITIVE - 1249)) | (1 << (PlSqlParser.POST_TRANSACTION - 1249)) | (1 << (PlSqlParser.POWERMULTISET_BY_CARDINALITY - 1249)) | (1 << (PlSqlParser.POWERMULTISET - 1249)) | (1 << (PlSqlParser.POWER - 1249)) | (1 << (PlSqlParser.PQ_CONCURRENT_UNION - 1249)) | (1 << (PlSqlParser.PQ_DISTRIBUTE - 1249)))) !== 0) || ((((_la - 1281)) & ~0x1f) == 0 && ((1 << (_la - 1281)) & ((1 << (PlSqlParser.PQ_DISTRIBUTE_WINDOW - 1281)) | (1 << (PlSqlParser.PQ_FILTER - 1281)) | (1 << (PlSqlParser.PQ_MAP - 1281)) | (1 << (PlSqlParser.PQ_NOMAP - 1281)) | (1 << (PlSqlParser.PQ_REPLICATE - 1281)) | (1 << (PlSqlParser.PQ_SKEW - 1281)) | (1 << (PlSqlParser.PRAGMA - 1281)) | (1 << (PlSqlParser.PREBUILT - 1281)) | (1 << (PlSqlParser.PRECEDES - 1281)) | (1 << (PlSqlParser.PRECEDING - 1281)) | (1 << (PlSqlParser.PRECISION - 1281)) | (1 << (PlSqlParser.PRECOMPUTE_SUBQUERY - 1281)) | (1 << (PlSqlParser.PREDICATE_REORDERS - 1281)) | (1 << (PlSqlParser.PRELOAD - 1281)) | (1 << (PlSqlParser.PREPARE - 1281)) | (1 << (PlSqlParser.PRESENTNNV - 1281)) | (1 << (PlSqlParser.PRESENT - 1281)) | (1 << (PlSqlParser.PRESENTV - 1281)) | (1 << (PlSqlParser.PRESERVE_OID - 1281)) | (1 << (PlSqlParser.PRESERVE - 1281)) | (1 << (PlSqlParser.PRETTY - 1281)) | (1 << (PlSqlParser.PREVIOUS - 1281)) | (1 << (PlSqlParser.PREV - 1281)) | (1 << (PlSqlParser.PRIMARY - 1281)) | (1 << (PlSqlParser.PRINTBLOBTOCLOB - 1281)) | (1 << (PlSqlParser.PRIORITY - 1281)) | (1 << (PlSqlParser.PRIVATE - 1281)) | (1 << (PlSqlParser.PRIVATE_SGA - 1281)) | (1 << (PlSqlParser.PRIVILEGED - 1281)) | (1 << (PlSqlParser.PRIVILEGE - 1281)) | (1 << (PlSqlParser.PRIVILEGES - 1281)))) !== 0) || ((((_la - 1313)) & ~0x1f) == 0 && ((1 << (_la - 1313)) & ((1 << (PlSqlParser.PROCEDURAL - 1313)) | (1 << (PlSqlParser.PROCEDURE - 1313)) | (1 << (PlSqlParser.PROCESS - 1313)) | (1 << (PlSqlParser.PROFILE - 1313)) | (1 << (PlSqlParser.PROGRAM - 1313)) | (1 << (PlSqlParser.PROJECT - 1313)) | (1 << (PlSqlParser.PROPAGATE - 1313)) | (1 << (PlSqlParser.PROTECTED - 1313)) | (1 << (PlSqlParser.PROTECTION - 1313)) | (1 << (PlSqlParser.PROXY - 1313)) | (1 << (PlSqlParser.PRUNING - 1313)) | (1 << (PlSqlParser.PULL_PRED - 1313)) | (1 << (PlSqlParser.PURGE - 1313)) | (1 << (PlSqlParser.PUSH_PRED - 1313)) | (1 << (PlSqlParser.PUSH_SUBQ - 1313)) | (1 << (PlSqlParser.PX_FAULT_TOLERANCE - 1313)) | (1 << (PlSqlParser.PX_GRANULE - 1313)) | (1 << (PlSqlParser.PX_JOIN_FILTER - 1313)) | (1 << (PlSqlParser.QB_NAME - 1313)) | (1 << (PlSqlParser.QUERY_BLOCK - 1313)) | (1 << (PlSqlParser.QUERY - 1313)) | (1 << (PlSqlParser.QUEUE_CURR - 1313)) | (1 << (PlSqlParser.QUEUE - 1313)) | (1 << (PlSqlParser.QUEUE_ROWP - 1313)) | (1 << (PlSqlParser.QUIESCE - 1313)) | (1 << (PlSqlParser.QUORUM - 1313)) | (1 << (PlSqlParser.QUOTA - 1313)) | (1 << (PlSqlParser.RAISE - 1313)) | (1 << (PlSqlParser.RANDOM_LOCAL - 1313)) | (1 << (PlSqlParser.RANDOM - 1313)) | (1 << (PlSqlParser.RANGE - 1313)))) !== 0) || ((((_la - 1345)) & ~0x1f) == 0 && ((1 << (_la - 1345)) & ((1 << (PlSqlParser.RANKM - 1345)) | (1 << (PlSqlParser.RAPIDLY - 1345)) | (1 << (PlSqlParser.RAW - 1345)) | (1 << (PlSqlParser.RAWTOHEX - 1345)) | (1 << (PlSqlParser.RAWTONHEX - 1345)) | (1 << (PlSqlParser.RBA - 1345)) | (1 << (PlSqlParser.RBO_OUTLINE - 1345)) | (1 << (PlSqlParser.RDBA - 1345)) | (1 << (PlSqlParser.READ - 1345)) | (1 << (PlSqlParser.READS - 1345)) | (1 << (PlSqlParser.REALM - 1345)) | (1 << (PlSqlParser.REAL - 1345)) | (1 << (PlSqlParser.REBALANCE - 1345)) | (1 << (PlSqlParser.REBUILD - 1345)) | (1 << (PlSqlParser.RECORD - 1345)) | (1 << (PlSqlParser.RECORDS_PER_BLOCK - 1345)) | (1 << (PlSqlParser.RECOVERABLE - 1345)) | (1 << (PlSqlParser.RECOVER - 1345)) | (1 << (PlSqlParser.RECOVERY - 1345)) | (1 << (PlSqlParser.RECYCLEBIN - 1345)) | (1 << (PlSqlParser.RECYCLE - 1345)) | (1 << (PlSqlParser.REDACTION - 1345)) | (1 << (PlSqlParser.REDEFINE - 1345)) | (1 << (PlSqlParser.REDO - 1345)) | (1 << (PlSqlParser.REDUCED - 1345)) | (1 << (PlSqlParser.REDUNDANCY - 1345)) | (1 << (PlSqlParser.REF_CASCADE_CURSOR - 1345)) | (1 << (PlSqlParser.REFERENCED - 1345)) | (1 << (PlSqlParser.REFERENCE - 1345)) | (1 << (PlSqlParser.REFERENCES - 1345)) | (1 << (PlSqlParser.REFERENCING - 1345)) | (1 << (PlSqlParser.REF - 1345)))) !== 0) || ((((_la - 1377)) & ~0x1f) == 0 && ((1 << (_la - 1377)) & ((1 << (PlSqlParser.REFRESH - 1377)) | (1 << (PlSqlParser.REFTOHEX - 1377)) | (1 << (PlSqlParser.REGEXP_COUNT - 1377)) | (1 << (PlSqlParser.REGEXP_INSTR - 1377)) | (1 << (PlSqlParser.REGEXP_LIKE - 1377)) | (1 << (PlSqlParser.REGEXP_REPLACE - 1377)) | (1 << (PlSqlParser.REGEXP_SUBSTR - 1377)) | (1 << (PlSqlParser.REGISTER - 1377)) | (1 << (PlSqlParser.REGR_AVGX - 1377)) | (1 << (PlSqlParser.REGR_AVGY - 1377)) | (1 << (PlSqlParser.REGR_COUNT - 1377)) | (1 << (PlSqlParser.REGR_INTERCEPT - 1377)) | (1 << (PlSqlParser.REGR_R2 - 1377)) | (1 << (PlSqlParser.REGR_SLOPE - 1377)) | (1 << (PlSqlParser.REGR_SXX - 1377)) | (1 << (PlSqlParser.REGR_SXY - 1377)) | (1 << (PlSqlParser.REGR_SYY - 1377)) | (1 << (PlSqlParser.REGULAR - 1377)) | (1 << (PlSqlParser.REJECT - 1377)) | (1 << (PlSqlParser.REKEY - 1377)) | (1 << (PlSqlParser.RELATIONAL - 1377)) | (1 << (PlSqlParser.RELOCATE - 1377)) | (1 << (PlSqlParser.RELY - 1377)) | (1 << (PlSqlParser.REMAINDER - 1377)) | (1 << (PlSqlParser.REMOTE_MAPPED - 1377)) | (1 << (PlSqlParser.REMOVE - 1377)) | (1 << (PlSqlParser.RENAME - 1377)) | (1 << (PlSqlParser.REPAIR - 1377)) | (1 << (PlSqlParser.REPEAT - 1377)) | (1 << (PlSqlParser.REPLACE - 1377)) | (1 << (PlSqlParser.REPLICATION - 1377)))) !== 0) || ((((_la - 1409)) & ~0x1f) == 0 && ((1 << (_la - 1409)) & ((1 << (PlSqlParser.REQUIRED - 1409)) | (1 << (PlSqlParser.RESETLOGS - 1409)) | (1 << (PlSqlParser.RESET - 1409)) | (1 << (PlSqlParser.RESIZE - 1409)) | (1 << (PlSqlParser.RESOLVE - 1409)) | (1 << (PlSqlParser.RESOLVER - 1409)) | (1 << (PlSqlParser.RESPECT - 1409)) | (1 << (PlSqlParser.RESTART - 1409)) | (1 << (PlSqlParser.RESTORE_AS_INTERVALS - 1409)) | (1 << (PlSqlParser.RESTORE - 1409)) | (1 << (PlSqlParser.RESTRICT_ALL_REF_CONS - 1409)) | (1 << (PlSqlParser.RESTRICTED - 1409)) | (1 << (PlSqlParser.RESTRICT_REFERENCES - 1409)) | (1 << (PlSqlParser.RESTRICT - 1409)) | (1 << (PlSqlParser.RESULT_CACHE - 1409)) | (1 << (PlSqlParser.RESULT - 1409)) | (1 << (PlSqlParser.RESUMABLE - 1409)) | (1 << (PlSqlParser.RESUME - 1409)) | (1 << (PlSqlParser.RETENTION - 1409)) | (1 << (PlSqlParser.RETRY_ON_ROW_CHANGE - 1409)) | (1 << (PlSqlParser.RETURNING - 1409)) | (1 << (PlSqlParser.RETURN - 1409)) | (1 << (PlSqlParser.REUSE - 1409)) | (1 << (PlSqlParser.REVERSE - 1409)) | (1 << (PlSqlParser.REWRITE_OR_ERROR - 1409)) | (1 << (PlSqlParser.REWRITE - 1409)) | (1 << (PlSqlParser.RIGHT - 1409)) | (1 << (PlSqlParser.ROLE - 1409)) | (1 << (PlSqlParser.ROLESET - 1409)) | (1 << (PlSqlParser.ROLES - 1409)))) !== 0) || ((((_la - 1441)) & ~0x1f) == 0 && ((1 << (_la - 1441)) & ((1 << (PlSqlParser.ROLLBACK - 1441)) | (1 << (PlSqlParser.ROLLING - 1441)) | (1 << (PlSqlParser.ROLLUP - 1441)) | (1 << (PlSqlParser.ROWDEPENDENCIES - 1441)) | (1 << (PlSqlParser.ROWID_MAPPING_TABLE - 1441)) | (1 << (PlSqlParser.ROWID - 1441)) | (1 << (PlSqlParser.ROWIDTOCHAR - 1441)) | (1 << (PlSqlParser.ROWIDTONCHAR - 1441)) | (1 << (PlSqlParser.ROW_LENGTH - 1441)) | (1 << (PlSqlParser.ROWNUM - 1441)) | (1 << (PlSqlParser.ROW - 1441)) | (1 << (PlSqlParser.ROWS - 1441)) | (1 << (PlSqlParser.RPAD - 1441)) | (1 << (PlSqlParser.RTRIM - 1441)) | (1 << (PlSqlParser.RULE - 1441)) | (1 << (PlSqlParser.RULES - 1441)) | (1 << (PlSqlParser.RUNNING - 1441)) | (1 << (PlSqlParser.SALT - 1441)) | (1 << (PlSqlParser.SAMPLE - 1441)) | (1 << (PlSqlParser.SAVE_AS_INTERVALS - 1441)) | (1 << (PlSqlParser.SAVEPOINT - 1441)) | (1 << (PlSqlParser.SAVE - 1441)) | (1 << (PlSqlParser.SB4 - 1441)) | (1 << (PlSqlParser.SCALE_ROWS - 1441)) | (1 << (PlSqlParser.SCALE - 1441)) | (1 << (PlSqlParser.SCAN_INSTANCES - 1441)) | (1 << (PlSqlParser.SCAN - 1441)) | (1 << (PlSqlParser.SCHEDULER - 1441)) | (1 << (PlSqlParser.SCHEMACHECK - 1441)) | (1 << (PlSqlParser.SCHEMA - 1441)) | (1 << (PlSqlParser.SCN_ASCENDING - 1441)) | (1 << (PlSqlParser.SCN - 1441)))) !== 0) || ((((_la - 1473)) & ~0x1f) == 0 && ((1 << (_la - 1473)) & ((1 << (PlSqlParser.SCOPE - 1473)) | (1 << (PlSqlParser.SCRUB - 1473)) | (1 << (PlSqlParser.SD_ALL - 1473)) | (1 << (PlSqlParser.SD_INHIBIT - 1473)) | (1 << (PlSqlParser.SDO_GEOM_MBR - 1473)) | (1 << (PlSqlParser.SD_SHOW - 1473)) | (1 << (PlSqlParser.SEARCH - 1473)) | (1 << (PlSqlParser.SECOND - 1473)) | (1 << (PlSqlParser.SECRET - 1473)) | (1 << (PlSqlParser.SECUREFILE_DBA - 1473)) | (1 << (PlSqlParser.SECUREFILE - 1473)) | (1 << (PlSqlParser.SECURITY - 1473)) | (1 << (PlSqlParser.SEED - 1473)) | (1 << (PlSqlParser.SEG_BLOCK - 1473)) | (1 << (PlSqlParser.SEG_FILE - 1473)) | (1 << (PlSqlParser.SEGMENT - 1473)) | (1 << (PlSqlParser.SELECTIVITY - 1473)) | (1 << (PlSqlParser.SELF - 1473)) | (1 << (PlSqlParser.SEMIJOIN_DRIVER - 1473)) | (1 << (PlSqlParser.SEMIJOIN - 1473)) | (1 << (PlSqlParser.SEMI_TO_INNER - 1473)) | (1 << (PlSqlParser.SEQUENCED - 1473)) | (1 << (PlSqlParser.SEQUENCE - 1473)) | (1 << (PlSqlParser.SEQUENTIAL - 1473)) | (1 << (PlSqlParser.SERIALIZABLE - 1473)) | (1 << (PlSqlParser.SERIALLY_REUSABLE - 1473)) | (1 << (PlSqlParser.SERIAL - 1473)) | (1 << (PlSqlParser.SERVERERROR - 1473)) | (1 << (PlSqlParser.SERVICE_NAME_CONVERT - 1473)) | (1 << (PlSqlParser.SERVICES - 1473)))) !== 0) || ((((_la - 1505)) & ~0x1f) == 0 && ((1 << (_la - 1505)) & ((1 << (PlSqlParser.SESSION_CACHED_CURSORS - 1505)) | (1 << (PlSqlParser.SESSION - 1505)) | (1 << (PlSqlParser.SESSIONS_PER_USER - 1505)) | (1 << (PlSqlParser.SESSIONTIMEZONE - 1505)) | (1 << (PlSqlParser.SESSIONTZNAME - 1505)) | (1 << (PlSqlParser.SET - 1505)) | (1 << (PlSqlParser.SETS - 1505)) | (1 << (PlSqlParser.SETTINGS - 1505)) | (1 << (PlSqlParser.SET_TO_JOIN - 1505)) | (1 << (PlSqlParser.SEVERE - 1505)) | (1 << (PlSqlParser.SHARED_POOL - 1505)) | (1 << (PlSqlParser.SHARED - 1505)) | (1 << (PlSqlParser.SHARING - 1505)) | (1 << (PlSqlParser.SHELFLIFE - 1505)) | (1 << (PlSqlParser.SHOW - 1505)) | (1 << (PlSqlParser.SHRINK - 1505)) | (1 << (PlSqlParser.SHUTDOWN - 1505)) | (1 << (PlSqlParser.SIBLINGS - 1505)) | (1 << (PlSqlParser.SID - 1505)) | (1 << (PlSqlParser.SIGNAL_COMPONENT - 1505)) | (1 << (PlSqlParser.SIGNAL_FUNCTION - 1505)) | (1 << (PlSqlParser.SIGN - 1505)) | (1 << (PlSqlParser.SIGNTYPE - 1505)) | (1 << (PlSqlParser.SIMPLE_INTEGER - 1505)) | (1 << (PlSqlParser.SIMPLE - 1505)) | (1 << (PlSqlParser.SINGLE - 1505)) | (1 << (PlSqlParser.SINGLETASK - 1505)) | (1 << (PlSqlParser.SINH - 1505)) | (1 << (PlSqlParser.SIN - 1505)) | (1 << (PlSqlParser.SKIP_EXT_OPTIMIZER - 1505)))) !== 0) || ((((_la - 1537)) & ~0x1f) == 0 && ((1 << (_la - 1537)) & ((1 << (PlSqlParser.SKIP_ - 1537)) | (1 << (PlSqlParser.SKIP_UNQ_UNUSABLE_IDX - 1537)) | (1 << (PlSqlParser.SKIP_UNUSABLE_INDEXES - 1537)) | (1 << (PlSqlParser.SMALLFILE - 1537)) | (1 << (PlSqlParser.SMALLINT - 1537)) | (1 << (PlSqlParser.SNAPSHOT - 1537)) | (1 << (PlSqlParser.SOME - 1537)) | (1 << (PlSqlParser.SORT - 1537)) | (1 << (PlSqlParser.SOUNDEX - 1537)) | (1 << (PlSqlParser.SOURCE_FILE_DIRECTORY - 1537)) | (1 << (PlSqlParser.SOURCE_FILE_NAME_CONVERT - 1537)) | (1 << (PlSqlParser.SOURCE - 1537)) | (1 << (PlSqlParser.SPACE_KEYWORD - 1537)) | (1 << (PlSqlParser.SPECIFICATION - 1537)) | (1 << (PlSqlParser.SPFILE - 1537)) | (1 << (PlSqlParser.SPLIT - 1537)) | (1 << (PlSqlParser.SPREADSHEET - 1537)) | (1 << (PlSqlParser.SQLDATA - 1537)) | (1 << (PlSqlParser.SQLERROR - 1537)) | (1 << (PlSqlParser.SQLLDR - 1537)) | (1 << (PlSqlParser.SQL - 1537)) | (1 << (PlSqlParser.SQL_TRACE - 1537)) | (1 << (PlSqlParser.SQL_TRANSLATION_PROFILE - 1537)) | (1 << (PlSqlParser.SQRT - 1537)) | (1 << (PlSqlParser.STALE - 1537)) | (1 << (PlSqlParser.STANDALONE - 1537)) | (1 << (PlSqlParser.STANDARD_HASH - 1537)) | (1 << (PlSqlParser.STANDBY_MAX_DATA_DELAY - 1537)) | (1 << (PlSqlParser.STANDBYS - 1537)) | (1 << (PlSqlParser.STANDBY - 1537)) | (1 << (PlSqlParser.STAR - 1537)) | (1 << (PlSqlParser.STAR_TRANSFORMATION - 1537)))) !== 0) || ((((_la - 1570)) & ~0x1f) == 0 && ((1 << (_la - 1570)) & ((1 << (PlSqlParser.STARTUP - 1570)) | (1 << (PlSqlParser.STATEMENT_ID - 1570)) | (1 << (PlSqlParser.STATEMENT_QUEUING - 1570)) | (1 << (PlSqlParser.STATEMENTS - 1570)) | (1 << (PlSqlParser.STATEMENT - 1570)) | (1 << (PlSqlParser.STATE - 1570)) | (1 << (PlSqlParser.STATIC - 1570)) | (1 << (PlSqlParser.STATISTICS - 1570)) | (1 << (PlSqlParser.STATS_BINOMIAL_TEST - 1570)) | (1 << (PlSqlParser.STATS_CROSSTAB - 1570)) | (1 << (PlSqlParser.STATS_F_TEST - 1570)) | (1 << (PlSqlParser.STATS_KS_TEST - 1570)) | (1 << (PlSqlParser.STATS_MODE - 1570)) | (1 << (PlSqlParser.STATS_MW_TEST - 1570)) | (1 << (PlSqlParser.STATS_ONE_WAY_ANOVA - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_INDEP - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_INDEPU - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_ONE - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_PAIRED - 1570)) | (1 << (PlSqlParser.STATS_WSR_TEST - 1570)) | (1 << (PlSqlParser.STDDEV_POP - 1570)) | (1 << (PlSqlParser.STDDEV_SAMP - 1570)) | (1 << (PlSqlParser.STOP - 1570)) | (1 << (PlSqlParser.STORAGE - 1570)) | (1 << (PlSqlParser.STORE - 1570)) | (1 << (PlSqlParser.STREAMS - 1570)) | (1 << (PlSqlParser.STREAM - 1570)) | (1 << (PlSqlParser.STRICT - 1570)) | (1 << (PlSqlParser.STRING - 1570)) | (1 << (PlSqlParser.STRIPE_COLUMNS - 1570)) | (1 << (PlSqlParser.STRIPE_WIDTH - 1570)) | (1 << (PlSqlParser.STRIP - 1570)))) !== 0) || ((((_la - 1602)) & ~0x1f) == 0 && ((1 << (_la - 1602)) & ((1 << (PlSqlParser.STRUCTURE - 1602)) | (1 << (PlSqlParser.SUBMULTISET - 1602)) | (1 << (PlSqlParser.SUBPARTITION_REL - 1602)) | (1 << (PlSqlParser.SUBPARTITIONS - 1602)) | (1 << (PlSqlParser.SUBPARTITION - 1602)) | (1 << (PlSqlParser.SUBQUERIES - 1602)) | (1 << (PlSqlParser.SUBQUERY_PRUNING - 1602)) | (1 << (PlSqlParser.SUBSCRIBE - 1602)) | (1 << (PlSqlParser.SUBSET - 1602)) | (1 << (PlSqlParser.SUBSTITUTABLE - 1602)) | (1 << (PlSqlParser.SUBSTR2 - 1602)) | (1 << (PlSqlParser.SUBSTR4 - 1602)) | (1 << (PlSqlParser.SUBSTRB - 1602)) | (1 << (PlSqlParser.SUBSTRC - 1602)) | (1 << (PlSqlParser.SUBTYPE - 1602)) | (1 << (PlSqlParser.SUCCESSFUL - 1602)) | (1 << (PlSqlParser.SUCCESS - 1602)) | (1 << (PlSqlParser.SUMMARY - 1602)) | (1 << (PlSqlParser.SUPPLEMENTAL - 1602)) | (1 << (PlSqlParser.SUSPEND - 1602)) | (1 << (PlSqlParser.SWAP_JOIN_INPUTS - 1602)) | (1 << (PlSqlParser.SWITCHOVER - 1602)) | (1 << (PlSqlParser.SWITCH - 1602)) | (1 << (PlSqlParser.SYNCHRONOUS - 1602)) | (1 << (PlSqlParser.SYNC - 1602)) | (1 << (PlSqlParser.SYSASM - 1602)) | (1 << (PlSqlParser.SYS_AUDIT - 1602)) | (1 << (PlSqlParser.SYSAUX - 1602)) | (1 << (PlSqlParser.SYSBACKUP - 1602)) | (1 << (PlSqlParser.SYS_CHECKACL - 1602)) | (1 << (PlSqlParser.SYS_CHECK_PRIVILEGE - 1602)))) !== 0) || ((((_la - 1634)) & ~0x1f) == 0 && ((1 << (_la - 1634)) & ((1 << (PlSqlParser.SYS_CONNECT_BY_PATH - 1634)) | (1 << (PlSqlParser.SYS_CONTEXT - 1634)) | (1 << (PlSqlParser.SYSDATE - 1634)) | (1 << (PlSqlParser.SYSDBA - 1634)) | (1 << (PlSqlParser.SYS_DBURIGEN - 1634)) | (1 << (PlSqlParser.SYSDG - 1634)) | (1 << (PlSqlParser.SYS_DL_CURSOR - 1634)) | (1 << (PlSqlParser.SYS_DM_RXFORM_CHR - 1634)) | (1 << (PlSqlParser.SYS_DM_RXFORM_NUM - 1634)) | (1 << (PlSqlParser.SYS_DOM_COMPARE - 1634)) | (1 << (PlSqlParser.SYS_DST_PRIM2SEC - 1634)) | (1 << (PlSqlParser.SYS_DST_SEC2PRIM - 1634)) | (1 << (PlSqlParser.SYS_ET_BFILE_TO_RAW - 1634)) | (1 << (PlSqlParser.SYS_ET_BLOB_TO_IMAGE - 1634)) | (1 << (PlSqlParser.SYS_ET_IMAGE_TO_BLOB - 1634)) | (1 << (PlSqlParser.SYS_ET_RAW_TO_BFILE - 1634)) | (1 << (PlSqlParser.SYS_EXTPDTXT - 1634)) | (1 << (PlSqlParser.SYS_EXTRACT_UTC - 1634)) | (1 << (PlSqlParser.SYS_FBT_INSDEL - 1634)) | (1 << (PlSqlParser.SYS_FILTER_ACLS - 1634)) | (1 << (PlSqlParser.SYS_FNMATCHES - 1634)) | (1 << (PlSqlParser.SYS_FNREPLACE - 1634)) | (1 << (PlSqlParser.SYS_GET_ACLIDS - 1634)) | (1 << (PlSqlParser.SYS_GET_COL_ACLIDS - 1634)) | (1 << (PlSqlParser.SYS_GET_PRIVILEGES - 1634)) | (1 << (PlSqlParser.SYS_GETTOKENID - 1634)) | (1 << (PlSqlParser.SYS_GETXTIVAL - 1634)) | (1 << (PlSqlParser.SYS_GUID - 1634)) | (1 << (PlSqlParser.SYSGUID - 1634)) | (1 << (PlSqlParser.SYSKM - 1634)) | (1 << (PlSqlParser.SYS_MAKE_XMLNODEID - 1634)) | (1 << (PlSqlParser.SYS_MAKEXML - 1634)))) !== 0) || ((((_la - 1666)) & ~0x1f) == 0 && ((1 << (_la - 1666)) & ((1 << (PlSqlParser.SYS_MKXMLATTR - 1666)) | (1 << (PlSqlParser.SYS_MKXTI - 1666)) | (1 << (PlSqlParser.SYSOBJ - 1666)) | (1 << (PlSqlParser.SYS_OP_ADT2BIN - 1666)) | (1 << (PlSqlParser.SYS_OP_ADTCONS - 1666)) | (1 << (PlSqlParser.SYS_OP_ALSCRVAL - 1666)) | (1 << (PlSqlParser.SYS_OP_ATG - 1666)) | (1 << (PlSqlParser.SYS_OP_BIN2ADT - 1666)) | (1 << (PlSqlParser.SYS_OP_BITVEC - 1666)) | (1 << (PlSqlParser.SYS_OP_BL2R - 1666)) | (1 << (PlSqlParser.SYS_OP_BLOOM_FILTER_LIST - 1666)) | (1 << (PlSqlParser.SYS_OP_BLOOM_FILTER - 1666)) | (1 << (PlSqlParser.SYS_OP_C2C - 1666)) | (1 << (PlSqlParser.SYS_OP_CAST - 1666)) | (1 << (PlSqlParser.SYS_OP_CEG - 1666)) | (1 << (PlSqlParser.SYS_OP_CL2C - 1666)) | (1 << (PlSqlParser.SYS_OP_COMBINED_HASH - 1666)) | (1 << (PlSqlParser.SYS_OP_COMP - 1666)) | (1 << (PlSqlParser.SYS_OP_CONVERT - 1666)) | (1 << (PlSqlParser.SYS_OP_COUNTCHG - 1666)) | (1 << (PlSqlParser.SYS_OP_CSCONV - 1666)) | (1 << (PlSqlParser.SYS_OP_CSCONVTEST - 1666)) | (1 << (PlSqlParser.SYS_OP_CSR - 1666)) | (1 << (PlSqlParser.SYS_OP_CSX_PATCH - 1666)) | (1 << (PlSqlParser.SYS_OP_CYCLED_SEQ - 1666)) | (1 << (PlSqlParser.SYS_OP_DECOMP - 1666)) | (1 << (PlSqlParser.SYS_OP_DESCEND - 1666)) | (1 << (PlSqlParser.SYS_OP_DISTINCT - 1666)) | (1 << (PlSqlParser.SYS_OP_DRA - 1666)) | (1 << (PlSqlParser.SYS_OP_DUMP - 1666)) | (1 << (PlSqlParser.SYS_OP_DV_CHECK - 1666)) | (1 << (PlSqlParser.SYS_OP_ENFORCE_NOT_NULL - 1666)))) !== 0) || ((((_la - 1698)) & ~0x1f) == 0 && ((1 << (_la - 1698)) & ((1 << (PlSqlParser.SYSOPER - 1698)) | (1 << (PlSqlParser.SYS_OP_EXTRACT - 1698)) | (1 << (PlSqlParser.SYS_OP_GROUPING - 1698)) | (1 << (PlSqlParser.SYS_OP_GUID - 1698)) | (1 << (PlSqlParser.SYS_OP_HASH - 1698)) | (1 << (PlSqlParser.SYS_OP_IIX - 1698)) | (1 << (PlSqlParser.SYS_OP_ITR - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_CREATE - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_FILTER_LIST - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_FILTER - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_SUCCEEDED - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_USE - 1698)) | (1 << (PlSqlParser.SYS_OP_LBID - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2BLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2CLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2ID - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2NCLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2TYP - 1698)) | (1 << (PlSqlParser.SYS_OP_LSVI - 1698)) | (1 << (PlSqlParser.SYS_OP_LVL - 1698)) | (1 << (PlSqlParser.SYS_OP_MAKEOID - 1698)) | (1 << (PlSqlParser.SYS_OP_MAP_NONNULL - 1698)) | (1 << (PlSqlParser.SYS_OP_MSR - 1698)) | (1 << (PlSqlParser.SYS_OP_NICOMBINE - 1698)) | (1 << (PlSqlParser.SYS_OP_NIEXTRACT - 1698)) | (1 << (PlSqlParser.SYS_OP_NII - 1698)) | (1 << (PlSqlParser.SYS_OP_NIX - 1698)) | (1 << (PlSqlParser.SYS_OP_NOEXPAND - 1698)) | (1 << (PlSqlParser.SYS_OP_NTCIMG - 1698)) | (1 << (PlSqlParser.SYS_OP_NUMTORAW - 1698)) | (1 << (PlSqlParser.SYS_OP_OIDVALUE - 1698)) | (1 << (PlSqlParser.SYS_OP_OPNSIZE - 1698)))) !== 0) || ((((_la - 1730)) & ~0x1f) == 0 && ((1 << (_la - 1730)) & ((1 << (PlSqlParser.SYS_OP_PAR_1 - 1730)) | (1 << (PlSqlParser.SYS_OP_PARGID_1 - 1730)) | (1 << (PlSqlParser.SYS_OP_PARGID - 1730)) | (1 << (PlSqlParser.SYS_OP_PAR - 1730)) | (1 << (PlSqlParser.SYS_OP_PART_ID - 1730)) | (1 << (PlSqlParser.SYS_OP_PIVOT - 1730)) | (1 << (PlSqlParser.SYS_OP_R2O - 1730)) | (1 << (PlSqlParser.SYS_OP_RAWTONUM - 1730)) | (1 << (PlSqlParser.SYS_OP_RDTM - 1730)) | (1 << (PlSqlParser.SYS_OP_REF - 1730)) | (1 << (PlSqlParser.SYS_OP_RMTD - 1730)) | (1 << (PlSqlParser.SYS_OP_ROWIDTOOBJ - 1730)) | (1 << (PlSqlParser.SYS_OP_RPB - 1730)) | (1 << (PlSqlParser.SYS_OPTLOBPRBSC - 1730)) | (1 << (PlSqlParser.SYS_OP_TOSETID - 1730)) | (1 << (PlSqlParser.SYS_OP_TPR - 1730)) | (1 << (PlSqlParser.SYS_OP_TRTB - 1730)) | (1 << (PlSqlParser.SYS_OPTXICMP - 1730)) | (1 << (PlSqlParser.SYS_OPTXQCASTASNQ - 1730)) | (1 << (PlSqlParser.SYS_OP_UNDESCEND - 1730)) | (1 << (PlSqlParser.SYS_OP_VECAND - 1730)) | (1 << (PlSqlParser.SYS_OP_VECBIT - 1730)) | (1 << (PlSqlParser.SYS_OP_VECOR - 1730)) | (1 << (PlSqlParser.SYS_OP_VECXOR - 1730)) | (1 << (PlSqlParser.SYS_OP_VERSION - 1730)) | (1 << (PlSqlParser.SYS_OP_VREF - 1730)) | (1 << (PlSqlParser.SYS_OP_VVD - 1730)) | (1 << (PlSqlParser.SYS_OP_XMLCONS_FOR_CSX - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHATG - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHIDX - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHOP - 1730)) | (1 << (PlSqlParser.SYS_OP_XTXT2SQLT - 1730)))) !== 0) || ((((_la - 1762)) & ~0x1f) == 0 && ((1 << (_la - 1762)) & ((1 << (PlSqlParser.SYS_OP_ZONE_ID - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_DEPTH - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_MAXCHILD - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_PARENT - 1762)) | (1 << (PlSqlParser.SYS_PARALLEL_TXN - 1762)) | (1 << (PlSqlParser.SYS_PATHID_IS_ATTR - 1762)) | (1 << (PlSqlParser.SYS_PATHID_IS_NMSPC - 1762)) | (1 << (PlSqlParser.SYS_PATHID_LASTNAME - 1762)) | (1 << (PlSqlParser.SYS_PATHID_LASTNMSPC - 1762)) | (1 << (PlSqlParser.SYS_PATH_REVERSE - 1762)) | (1 << (PlSqlParser.SYS_PXQEXTRACT - 1762)) | (1 << (PlSqlParser.SYS_RAW_TO_XSID - 1762)) | (1 << (PlSqlParser.SYS_RID_ORDER - 1762)) | (1 << (PlSqlParser.SYS_ROW_DELTA - 1762)) | (1 << (PlSqlParser.SYS_SC_2_XMLT - 1762)) | (1 << (PlSqlParser.SYS_SYNRCIREDO - 1762)) | (1 << (PlSqlParser.SYSTEM_DEFINED - 1762)) | (1 << (PlSqlParser.SYSTEM - 1762)) | (1 << (PlSqlParser.SYSTIMESTAMP - 1762)) | (1 << (PlSqlParser.SYS_TYPEID - 1762)) | (1 << (PlSqlParser.SYS_UMAKEXML - 1762)) | (1 << (PlSqlParser.SYS_XMLANALYZE - 1762)) | (1 << (PlSqlParser.SYS_XMLCONTAINS - 1762)) | (1 << (PlSqlParser.SYS_XMLCONV - 1762)) | (1 << (PlSqlParser.SYS_XMLEXNSURI - 1762)) | (1 << (PlSqlParser.SYS_XMLGEN - 1762)) | (1 << (PlSqlParser.SYS_XMLI_LOC_ISNODE - 1762)) | (1 << (PlSqlParser.SYS_XMLI_LOC_ISTEXT - 1762)) | (1 << (PlSqlParser.SYS_XMLINSTR - 1762)) | (1 << (PlSqlParser.SYS_XMLLOCATOR_GETSVAL - 1762)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETCID - 1762)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETLOCATOR - 1762)))) !== 0) || ((((_la - 1794)) & ~0x1f) == 0 && ((1 << (_la - 1794)) & ((1 << (PlSqlParser.SYS_XMLNODEID_GETOKEY - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETPATHID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETPTRID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETRID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETSVAL - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETTID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID - 1794)) | (1 << (PlSqlParser.SYS_XMLT_2_SC - 1794)) | (1 << (PlSqlParser.SYS_XMLTRANSLATE - 1794)) | (1 << (PlSqlParser.SYS_XMLTYPE2SQL - 1794)) | (1 << (PlSqlParser.SYS_XQ_ASQLCNV - 1794)) | (1 << (PlSqlParser.SYS_XQ_ATOMCNVCHK - 1794)) | (1 << (PlSqlParser.SYS_XQBASEURI - 1794)) | (1 << (PlSqlParser.SYS_XQCASTABLEERRH - 1794)) | (1 << (PlSqlParser.SYS_XQCODEP2STR - 1794)) | (1 << (PlSqlParser.SYS_XQCODEPEQ - 1794)) | (1 << (PlSqlParser.SYS_XQCON2SEQ - 1794)) | (1 << (PlSqlParser.SYS_XQCONCAT - 1794)) | (1 << (PlSqlParser.SYS_XQDELETE - 1794)) | (1 << (PlSqlParser.SYS_XQDFLTCOLATION - 1794)) | (1 << (PlSqlParser.SYS_XQDOC - 1794)) | (1 << (PlSqlParser.SYS_XQDOCURI - 1794)) | (1 << (PlSqlParser.SYS_XQDURDIV - 1794)) | (1 << (PlSqlParser.SYS_XQED4URI - 1794)) | (1 << (PlSqlParser.SYS_XQENDSWITH - 1794)) | (1 << (PlSqlParser.SYS_XQERRH - 1794)) | (1 << (PlSqlParser.SYS_XQERR - 1794)) | (1 << (PlSqlParser.SYS_XQESHTMLURI - 1794)) | (1 << (PlSqlParser.SYS_XQEXLOBVAL - 1794)) | (1 << (PlSqlParser.SYS_XQEXSTWRP - 1794)) | (1 << (PlSqlParser.SYS_XQEXTRACT - 1794)) | (1 << (PlSqlParser.SYS_XQEXTRREF - 1794)))) !== 0) || ((((_la - 1826)) & ~0x1f) == 0 && ((1 << (_la - 1826)) & ((1 << (PlSqlParser.SYS_XQEXVAL - 1826)) | (1 << (PlSqlParser.SYS_XQFB2STR - 1826)) | (1 << (PlSqlParser.SYS_XQFNBOOL - 1826)) | (1 << (PlSqlParser.SYS_XQFNCMP - 1826)) | (1 << (PlSqlParser.SYS_XQFNDATIM - 1826)) | (1 << (PlSqlParser.SYS_XQFNLNAME - 1826)) | (1 << (PlSqlParser.SYS_XQFNNM - 1826)) | (1 << (PlSqlParser.SYS_XQFNNSURI - 1826)) | (1 << (PlSqlParser.SYS_XQFNPREDTRUTH - 1826)) | (1 << (PlSqlParser.SYS_XQFNQNM - 1826)) | (1 << (PlSqlParser.SYS_XQFNROOT - 1826)) | (1 << (PlSqlParser.SYS_XQFORMATNUM - 1826)) | (1 << (PlSqlParser.SYS_XQFTCONTAIN - 1826)) | (1 << (PlSqlParser.SYS_XQFUNCR - 1826)) | (1 << (PlSqlParser.SYS_XQGETCONTENT - 1826)) | (1 << (PlSqlParser.SYS_XQINDXOF - 1826)) | (1 << (PlSqlParser.SYS_XQINSERT - 1826)) | (1 << (PlSqlParser.SYS_XQINSPFX - 1826)) | (1 << (PlSqlParser.SYS_XQIRI2URI - 1826)) | (1 << (PlSqlParser.SYS_XQLANG - 1826)) | (1 << (PlSqlParser.SYS_XQLLNMFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQMKNODEREF - 1826)) | (1 << (PlSqlParser.SYS_XQNILLED - 1826)) | (1 << (PlSqlParser.SYS_XQNODENAME - 1826)) | (1 << (PlSqlParser.SYS_XQNORMSPACE - 1826)) | (1 << (PlSqlParser.SYS_XQNORMUCODE - 1826)) | (1 << (PlSqlParser.SYS_XQ_NRNG - 1826)) | (1 << (PlSqlParser.SYS_XQNSP4PFX - 1826)) | (1 << (PlSqlParser.SYS_XQNSPFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQPFXFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQ_PKSQL2XML - 1826)) | (1 << (PlSqlParser.SYS_XQPOLYABS - 1826)))) !== 0) || ((((_la - 1858)) & ~0x1f) == 0 && ((1 << (_la - 1858)) & ((1 << (PlSqlParser.SYS_XQPOLYADD - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCEL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCSTBL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCST - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYDIV - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYFLR - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYMOD - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYMUL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYRND - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYSQRT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYSUB - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYUMUS - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYUPLS - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVEQ - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVGE - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVGT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVLE - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVLT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVNE - 1858)) | (1 << (PlSqlParser.SYS_XQREF2VAL - 1858)) | (1 << (PlSqlParser.SYS_XQRENAME - 1858)) | (1 << (PlSqlParser.SYS_XQREPLACE - 1858)) | (1 << (PlSqlParser.SYS_XQRESVURI - 1858)) | (1 << (PlSqlParser.SYS_XQRNDHALF2EVN - 1858)) | (1 << (PlSqlParser.SYS_XQRSLVQNM - 1858)) | (1 << (PlSqlParser.SYS_XQRYENVPGET - 1858)) | (1 << (PlSqlParser.SYS_XQRYVARGET - 1858)) | (1 << (PlSqlParser.SYS_XQRYWRP - 1858)) | (1 << (PlSqlParser.SYS_XQSEQ2CON4XC - 1858)) | (1 << (PlSqlParser.SYS_XQSEQ2CON - 1858)) | (1 << (PlSqlParser.SYS_XQSEQDEEPEQ - 1858)) | (1 << (PlSqlParser.SYS_XQSEQINSB - 1858)))) !== 0) || ((((_la - 1890)) & ~0x1f) == 0 && ((1 << (_la - 1890)) & ((1 << (PlSqlParser.SYS_XQSEQRM - 1890)) | (1 << (PlSqlParser.SYS_XQSEQRVS - 1890)) | (1 << (PlSqlParser.SYS_XQSEQSUB - 1890)) | (1 << (PlSqlParser.SYS_XQSEQTYPMATCH - 1890)) | (1 << (PlSqlParser.SYS_XQSTARTSWITH - 1890)) | (1 << (PlSqlParser.SYS_XQSTATBURI - 1890)) | (1 << (PlSqlParser.SYS_XQSTR2CODEP - 1890)) | (1 << (PlSqlParser.SYS_XQSTRJOIN - 1890)) | (1 << (PlSqlParser.SYS_XQSUBSTRAFT - 1890)) | (1 << (PlSqlParser.SYS_XQSUBSTRBEF - 1890)) | (1 << (PlSqlParser.SYS_XQTOKENIZE - 1890)) | (1 << (PlSqlParser.SYS_XQTREATAS - 1890)) | (1 << (PlSqlParser.SYS_XQ_UPKXML2SQL - 1890)) | (1 << (PlSqlParser.SYS_XQXFORM - 1890)) | (1 << (PlSqlParser.SYS_XSID_TO_RAW - 1890)) | (1 << (PlSqlParser.SYS_ZMAP_FILTER - 1890)) | (1 << (PlSqlParser.SYS_ZMAP_REFRESH - 1890)) | (1 << (PlSqlParser.TABLE_LOOKUP_BY_NL - 1890)) | (1 << (PlSqlParser.TABLESPACE_NO - 1890)) | (1 << (PlSqlParser.TABLESPACE - 1890)) | (1 << (PlSqlParser.TABLES - 1890)) | (1 << (PlSqlParser.TABLE_STATS - 1890)) | (1 << (PlSqlParser.TABLE - 1890)) | (1 << (PlSqlParser.TABNO - 1890)) | (1 << (PlSqlParser.TAG - 1890)) | (1 << (PlSqlParser.TANH - 1890)) | (1 << (PlSqlParser.TAN - 1890)) | (1 << (PlSqlParser.TBLORIDXPARTNUM - 1890)) | (1 << (PlSqlParser.TEMPFILE - 1890)) | (1 << (PlSqlParser.TEMPLATE - 1890)) | (1 << (PlSqlParser.TEMPORARY - 1890)) | (1 << (PlSqlParser.TEMP_TABLE - 1890)))) !== 0) || ((((_la - 1922)) & ~0x1f) == 0 && ((1 << (_la - 1922)) & ((1 << (PlSqlParser.TEST - 1922)) | (1 << (PlSqlParser.TEXT - 1922)) | (1 << (PlSqlParser.THAN - 1922)) | (1 << (PlSqlParser.THEN - 1922)) | (1 << (PlSqlParser.THE - 1922)) | (1 << (PlSqlParser.THREAD - 1922)) | (1 << (PlSqlParser.THROUGH - 1922)) | (1 << (PlSqlParser.TIER - 1922)) | (1 << (PlSqlParser.TIES - 1922)) | (1 << (PlSqlParser.TIMEOUT - 1922)) | (1 << (PlSqlParser.TIMESTAMP_LTZ_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMESTAMP - 1922)) | (1 << (PlSqlParser.TIMESTAMP_TZ_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMESTAMP_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMES - 1922)) | (1 << (PlSqlParser.TIME - 1922)) | (1 << (PlSqlParser.TIMEZONE_ABBR - 1922)) | (1 << (PlSqlParser.TIMEZONE_HOUR - 1922)) | (1 << (PlSqlParser.TIMEZONE_MINUTE - 1922)) | (1 << (PlSqlParser.TIMEZONE_OFFSET - 1922)) | (1 << (PlSqlParser.TIMEZONE_REGION - 1922)) | (1 << (PlSqlParser.TIME_ZONE - 1922)) | (1 << (PlSqlParser.TIV_GB - 1922)) | (1 << (PlSqlParser.TIV_SSF - 1922)) | (1 << (PlSqlParser.TO_ACLID - 1922)) | (1 << (PlSqlParser.TO_BINARY_DOUBLE - 1922)) | (1 << (PlSqlParser.TO_BINARY_FLOAT - 1922)) | (1 << (PlSqlParser.TO_BLOB - 1922)) | (1 << (PlSqlParser.TO_CLOB - 1922)) | (1 << (PlSqlParser.TO_DSINTERVAL - 1922)) | (1 << (PlSqlParser.TO_LOB - 1922)))) !== 0) || ((((_la - 1954)) & ~0x1f) == 0 && ((1 << (_la - 1954)) & ((1 << (PlSqlParser.TO_MULTI_BYTE - 1954)) | (1 << (PlSqlParser.TO_NCHAR - 1954)) | (1 << (PlSqlParser.TO_NCLOB - 1954)) | (1 << (PlSqlParser.TO_NUMBER - 1954)) | (1 << (PlSqlParser.TOPLEVEL - 1954)) | (1 << (PlSqlParser.TO_SINGLE_BYTE - 1954)) | (1 << (PlSqlParser.TO_TIMESTAMP - 1954)) | (1 << (PlSqlParser.TO_TIMESTAMP_TZ - 1954)) | (1 << (PlSqlParser.TO_TIME - 1954)) | (1 << (PlSqlParser.TO_TIME_TZ - 1954)) | (1 << (PlSqlParser.TO_YMINTERVAL - 1954)) | (1 << (PlSqlParser.TRACE - 1954)) | (1 << (PlSqlParser.TRACING - 1954)) | (1 << (PlSqlParser.TRACKING - 1954)) | (1 << (PlSqlParser.TRAILING - 1954)) | (1 << (PlSqlParser.TRANSACTION - 1954)) | (1 << (PlSqlParser.TRANSFORM_DISTINCT_AGG - 1954)) | (1 << (PlSqlParser.TRANSITIONAL - 1954)) | (1 << (PlSqlParser.TRANSITION - 1954)) | (1 << (PlSqlParser.TRANSLATE - 1954)) | (1 << (PlSqlParser.TRANSLATION - 1954)) | (1 << (PlSqlParser.TREAT - 1954)) | (1 << (PlSqlParser.TRIGGERS - 1954)) | (1 << (PlSqlParser.TRIGGER - 1954)) | (1 << (PlSqlParser.TRUE - 1954)) | (1 << (PlSqlParser.TRUNCATE - 1954)) | (1 << (PlSqlParser.TRUNC - 1954)) | (1 << (PlSqlParser.TRUSTED - 1954)) | (1 << (PlSqlParser.TRUST - 1954)) | (1 << (PlSqlParser.TUNING - 1954)) | (1 << (PlSqlParser.TX - 1954)))) !== 0) || ((((_la - 1986)) & ~0x1f) == 0 && ((1 << (_la - 1986)) & ((1 << (PlSqlParser.TYPES - 1986)) | (1 << (PlSqlParser.TYPE - 1986)) | (1 << (PlSqlParser.TZ_OFFSET - 1986)) | (1 << (PlSqlParser.UB2 - 1986)) | (1 << (PlSqlParser.UBA - 1986)) | (1 << (PlSqlParser.UCS2 - 1986)) | (1 << (PlSqlParser.UID - 1986)) | (1 << (PlSqlParser.UNARCHIVED - 1986)) | (1 << (PlSqlParser.UNBOUNDED - 1986)) | (1 << (PlSqlParser.UNBOUND - 1986)) | (1 << (PlSqlParser.UNCONDITIONAL - 1986)) | (1 << (PlSqlParser.UNDER - 1986)) | (1 << (PlSqlParser.UNDO - 1986)) | (1 << (PlSqlParser.UNDROP - 1986)) | (1 << (PlSqlParser.UNIFORM - 1986)) | (1 << (PlSqlParser.UNISTR - 1986)) | (1 << (PlSqlParser.UNLIMITED - 1986)) | (1 << (PlSqlParser.UNLOAD - 1986)) | (1 << (PlSqlParser.UNLOCK - 1986)) | (1 << (PlSqlParser.UNMATCHED - 1986)) | (1 << (PlSqlParser.UNNEST_INNERJ_DISTINCT_VIEW - 1986)) | (1 << (PlSqlParser.UNNEST_NOSEMIJ_NODISTINCTVIEW - 1986)) | (1 << (PlSqlParser.UNNEST_SEMIJ_VIEW - 1986)) | (1 << (PlSqlParser.UNNEST - 1986)) | (1 << (PlSqlParser.UNPACKED - 1986)) | (1 << (PlSqlParser.UNPIVOT - 1986)) | (1 << (PlSqlParser.UNPLUG - 1986)) | (1 << (PlSqlParser.UNPROTECTED - 1986)) | (1 << (PlSqlParser.UNQUIESCE - 1986)) | (1 << (PlSqlParser.UNRECOVERABLE - 1986)))) !== 0) || ((((_la - 2018)) & ~0x1f) == 0 && ((1 << (_la - 2018)) & ((1 << (PlSqlParser.UNRESTRICTED - 2018)) | (1 << (PlSqlParser.UNSUBSCRIBE - 2018)) | (1 << (PlSqlParser.UNTIL - 2018)) | (1 << (PlSqlParser.UNUSABLE - 2018)) | (1 << (PlSqlParser.UNUSED - 2018)) | (1 << (PlSqlParser.UPDATABLE - 2018)) | (1 << (PlSqlParser.UPDATED - 2018)) | (1 << (PlSqlParser.UPDATEXML - 2018)) | (1 << (PlSqlParser.UPD_INDEXES - 2018)) | (1 << (PlSqlParser.UPD_JOININDEX - 2018)) | (1 << (PlSqlParser.UPGRADE - 2018)) | (1 << (PlSqlParser.UPPER - 2018)) | (1 << (PlSqlParser.UPSERT - 2018)) | (1 << (PlSqlParser.UROWID - 2018)) | (1 << (PlSqlParser.USABLE - 2018)) | (1 << (PlSqlParser.USAGE - 2018)) | (1 << (PlSqlParser.USE_ANTI - 2018)) | (1 << (PlSqlParser.USE_CONCAT - 2018)) | (1 << (PlSqlParser.USE_CUBE - 2018)) | (1 << (PlSqlParser.USE_HASH_AGGREGATION - 2018)) | (1 << (PlSqlParser.USE_HASH_GBY_FOR_PUSHDOWN - 2018)) | (1 << (PlSqlParser.USE_HASH - 2018)) | (1 << (PlSqlParser.USE_HIDDEN_PARTITIONS - 2018)) | (1 << (PlSqlParser.USE_INVISIBLE_INDEXES - 2018)) | (1 << (PlSqlParser.USE_MERGE_CARTESIAN - 2018)) | (1 << (PlSqlParser.USE_MERGE - 2018)) | (1 << (PlSqlParser.USE_NL - 2018)) | (1 << (PlSqlParser.USE_NL_WITH_INDEX - 2018)) | (1 << (PlSqlParser.USE_PRIVATE_OUTLINES - 2018)) | (1 << (PlSqlParser.USER_DATA - 2018)) | (1 << (PlSqlParser.USER_DEFINED - 2018)))) !== 0) || ((((_la - 2050)) & ~0x1f) == 0 && ((1 << (_la - 2050)) & ((1 << (PlSqlParser.USERENV - 2050)) | (1 << (PlSqlParser.USERGROUP - 2050)) | (1 << (PlSqlParser.USER_RECYCLEBIN - 2050)) | (1 << (PlSqlParser.USERS - 2050)) | (1 << (PlSqlParser.USER_TABLESPACES - 2050)) | (1 << (PlSqlParser.USER - 2050)) | (1 << (PlSqlParser.USE_SEMI - 2050)) | (1 << (PlSqlParser.USE_STORED_OUTLINES - 2050)) | (1 << (PlSqlParser.USE_TTT_FOR_GSETS - 2050)) | (1 << (PlSqlParser.USE - 2050)) | (1 << (PlSqlParser.USE_VECTOR_AGGREGATION - 2050)) | (1 << (PlSqlParser.USE_WEAK_NAME_RESL - 2050)) | (1 << (PlSqlParser.USING_NO_EXPAND - 2050)) | (1 << (PlSqlParser.USING - 2050)) | (1 << (PlSqlParser.UTF16BE - 2050)) | (1 << (PlSqlParser.UTF16LE - 2050)) | (1 << (PlSqlParser.UTF32 - 2050)) | (1 << (PlSqlParser.UTF8 - 2050)) | (1 << (PlSqlParser.V1 - 2050)) | (1 << (PlSqlParser.V2 - 2050)) | (1 << (PlSqlParser.VALIDATE - 2050)) | (1 << (PlSqlParser.VALIDATION - 2050)) | (1 << (PlSqlParser.VALID_TIME_END - 2050)) | (1 << (PlSqlParser.VALUE - 2050)) | (1 << (PlSqlParser.VARCHAR2 - 2050)) | (1 << (PlSqlParser.VARCHAR - 2050)) | (1 << (PlSqlParser.VARIABLE - 2050)) | (1 << (PlSqlParser.VAR_POP - 2050)) | (1 << (PlSqlParser.VARRAYS - 2050)) | (1 << (PlSqlParser.VARRAY - 2050)) | (1 << (PlSqlParser.VAR_SAMP - 2050)))) !== 0) || ((((_la - 2082)) & ~0x1f) == 0 && ((1 << (_la - 2082)) & ((1 << (PlSqlParser.VARYING - 2082)) | (1 << (PlSqlParser.VECTOR_READ_TRACE - 2082)) | (1 << (PlSqlParser.VECTOR_READ - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM_DIMS - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM_FACT - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM - 2082)) | (1 << (PlSqlParser.VERIFIER - 2082)) | (1 << (PlSqlParser.VERIFY - 2082)) | (1 << (PlSqlParser.VERSIONING - 2082)) | (1 << (PlSqlParser.VERSIONS_ENDSCN - 2082)) | (1 << (PlSqlParser.VERSIONS_ENDTIME - 2082)) | (1 << (PlSqlParser.VERSIONS_OPERATION - 2082)) | (1 << (PlSqlParser.VERSIONS_STARTSCN - 2082)) | (1 << (PlSqlParser.VERSIONS_STARTTIME - 2082)) | (1 << (PlSqlParser.VERSIONS - 2082)) | (1 << (PlSqlParser.VERSIONS_XID - 2082)) | (1 << (PlSqlParser.VERSION - 2082)) | (1 << (PlSqlParser.VIOLATION - 2082)) | (1 << (PlSqlParser.VIRTUAL - 2082)) | (1 << (PlSqlParser.VISIBILITY - 2082)) | (1 << (PlSqlParser.VISIBLE - 2082)) | (1 << (PlSqlParser.VOLUME - 2082)) | (1 << (PlSqlParser.VSIZE - 2082)) | (1 << (PlSqlParser.WAIT - 2082)) | (1 << (PlSqlParser.WALLET - 2082)) | (1 << (PlSqlParser.WARNING - 2082)) | (1 << (PlSqlParser.WEEKS - 2082)) | (1 << (PlSqlParser.WEEK - 2082)) | (1 << (PlSqlParser.WELLFORMED - 2082)) | (1 << (PlSqlParser.WHENEVER - 2082)) | (1 << (PlSqlParser.WHEN - 2082)))) !== 0) || ((((_la - 2115)) & ~0x1f) == 0 && ((1 << (_la - 2115)) & ((1 << (PlSqlParser.WHILE - 2115)) | (1 << (PlSqlParser.WHITESPACE - 2115)) | (1 << (PlSqlParser.WIDTH_BUCKET - 2115)) | (1 << (PlSqlParser.WITHIN - 2115)) | (1 << (PlSqlParser.WITHOUT - 2115)) | (1 << (PlSqlParser.WITH_PLSQL - 2115)) | (1 << (PlSqlParser.WORK - 2115)) | (1 << (PlSqlParser.WRAPPED - 2115)) | (1 << (PlSqlParser.WRAPPER - 2115)) | (1 << (PlSqlParser.WRITE - 2115)) | (1 << (PlSqlParser.XDB_FASTPATH_INSERT - 2115)) | (1 << (PlSqlParser.X_DYN_PRUNE - 2115)) | (1 << (PlSqlParser.XID - 2115)) | (1 << (PlSqlParser.XML2OBJECT - 2115)) | (1 << (PlSqlParser.XMLAGG - 2115)) | (1 << (PlSqlParser.XMLATTRIBUTES - 2115)) | (1 << (PlSqlParser.XMLCAST - 2115)) | (1 << (PlSqlParser.XMLCDATA - 2115)) | (1 << (PlSqlParser.XMLCOLATTVAL - 2115)) | (1 << (PlSqlParser.XMLCOMMENT - 2115)) | (1 << (PlSqlParser.XMLCONCAT - 2115)) | (1 << (PlSqlParser.XMLDIFF - 2115)) | (1 << (PlSqlParser.XML_DML_RWT_STMT - 2115)) | (1 << (PlSqlParser.XMLELEMENT - 2115)) | (1 << (PlSqlParser.XMLEXISTS2 - 2115)) | (1 << (PlSqlParser.XMLEXISTS - 2115)) | (1 << (PlSqlParser.XMLFOREST - 2115)) | (1 << (PlSqlParser.XMLINDEX_REWRITE_IN_SELECT - 2115)) | (1 << (PlSqlParser.XMLINDEX_REWRITE - 2115)))) !== 0) || ((((_la - 2147)) & ~0x1f) == 0 && ((1 << (_la - 2147)) & ((1 << (PlSqlParser.XMLINDEX_SEL_IDX_TBL - 2147)) | (1 << (PlSqlParser.XMLISNODE - 2147)) | (1 << (PlSqlParser.XMLISVALID - 2147)) | (1 << (PlSqlParser.XMLNAMESPACES - 2147)) | (1 << (PlSqlParser.XMLPARSE - 2147)) | (1 << (PlSqlParser.XMLPATCH - 2147)) | (1 << (PlSqlParser.XMLPI - 2147)) | (1 << (PlSqlParser.XMLQUERYVAL - 2147)) | (1 << (PlSqlParser.XMLQUERY - 2147)) | (1 << (PlSqlParser.XMLROOT - 2147)) | (1 << (PlSqlParser.XMLSCHEMA - 2147)) | (1 << (PlSqlParser.XMLSERIALIZE - 2147)) | (1 << (PlSqlParser.XMLTABLE - 2147)) | (1 << (PlSqlParser.XMLTRANSFORMBLOB - 2147)) | (1 << (PlSqlParser.XMLTRANSFORM - 2147)) | (1 << (PlSqlParser.XMLTYPE - 2147)) | (1 << (PlSqlParser.XML - 2147)) | (1 << (PlSqlParser.XPATHTABLE - 2147)) | (1 << (PlSqlParser.XS_SYS_CONTEXT - 2147)) | (1 << (PlSqlParser.XS - 2147)) | (1 << (PlSqlParser.YEARS - 2147)) | (1 << (PlSqlParser.YEAR - 2147)) | (1 << (PlSqlParser.YES - 2147)) | (1 << (PlSqlParser.YMINTERVAL_UNCONSTRAINED - 2147)) | (1 << (PlSqlParser.ZONEMAP - 2147)) | (1 << (PlSqlParser.ZONE - 2147)) | (1 << (PlSqlParser.PREDICTION - 2147)) | (1 << (PlSqlParser.PREDICTION_BOUNDS - 2147)) | (1 << (PlSqlParser.PREDICTION_COST - 2147)) | (1 << (PlSqlParser.PREDICTION_DETAILS - 2147)) | (1 << (PlSqlParser.PREDICTION_PROBABILITY - 2147)))) !== 0) || ((((_la - 2179)) & ~0x1f) == 0 && ((1 << (_la - 2179)) & ((1 << (PlSqlParser.PREDICTION_SET - 2179)) | (1 << (PlSqlParser.CUME_DIST - 2179)) | (1 << (PlSqlParser.DENSE_RANK - 2179)) | (1 << (PlSqlParser.LISTAGG - 2179)) | (1 << (PlSqlParser.PERCENT_RANK - 2179)) | (1 << (PlSqlParser.PERCENTILE_CONT - 2179)) | (1 << (PlSqlParser.PERCENTILE_DISC - 2179)) | (1 << (PlSqlParser.RANK - 2179)) | (1 << (PlSqlParser.AVG - 2179)) | (1 << (PlSqlParser.CORR - 2179)) | (1 << (PlSqlParser.COVAR_ - 2179)) | (1 << (PlSqlParser.LAG - 2179)) | (1 << (PlSqlParser.LEAD - 2179)) | (1 << (PlSqlParser.MAX - 2179)) | (1 << (PlSqlParser.MEDIAN - 2179)) | (1 << (PlSqlParser.MIN - 2179)) | (1 << (PlSqlParser.NTILE - 2179)) | (1 << (PlSqlParser.NVL - 2179)) | (1 << (PlSqlParser.RATIO_TO_REPORT - 2179)) | (1 << (PlSqlParser.REGR_ - 2179)) | (1 << (PlSqlParser.ROUND - 2179)) | (1 << (PlSqlParser.ROW_NUMBER - 2179)) | (1 << (PlSqlParser.SUBSTR - 2179)) | (1 << (PlSqlParser.TO_CHAR - 2179)) | (1 << (PlSqlParser.TRIM - 2179)) | (1 << (PlSqlParser.SUM - 2179)) | (1 << (PlSqlParser.STDDEV - 2179)) | (1 << (PlSqlParser.VAR_ - 2179)) | (1 << (PlSqlParser.VARIANCE - 2179)) | (1 << (PlSqlParser.LEAST - 2179)) | (1 << (PlSqlParser.GREATEST - 2179)))) !== 0) || ((((_la - 2211)) & ~0x1f) == 0 && ((1 << (_la - 2211)) & ((1 << (PlSqlParser.TO_DATE - 2211)) | (1 << (PlSqlParser.PERIOD - 2211)) | (1 << (PlSqlParser.DELIMITED_ID - 2211)))) !== 0) || _la===PlSqlParser.INTRODUCER || _la===PlSqlParser.REGULAR_ID) {
+ this.state = 5502;
+ this.index_name();
+ }
+
+ this.state = 5505;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 5509;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 5509;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.INITRANS:
+ case PlSqlParser.PCTFREE:
+ case PlSqlParser.PCTUSED:
+ case PlSqlParser.STORAGE:
+ this.state = 5506;
+ this.physical_attributes_clause();
+ break;
+ case PlSqlParser.TABLESPACE:
+ this.state = 5507;
+ this.match(PlSqlParser.TABLESPACE);
+ this.state = 5508;
+ this.tablespace();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 5511;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(_la===PlSqlParser.INITRANS || _la===PlSqlParser.PCTFREE || _la===PlSqlParser.PCTUSED || _la===PlSqlParser.STORAGE || _la===PlSqlParser.TABLESPACE);
+ this.state = 5513;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Oid_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_oid_clause;
+ return this;
+}
+
+Oid_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Oid_clauseContext.prototype.constructor = Oid_clauseContext;
+
+Oid_clauseContext.prototype.OBJECT = function() {
+ return this.getToken(PlSqlParser.OBJECT, 0);
+};
+
+Oid_clauseContext.prototype.IDENTIFIER = function() {
+ return this.getToken(PlSqlParser.IDENTIFIER, 0);
+};
+
+Oid_clauseContext.prototype.IS = function() {
+ return this.getToken(PlSqlParser.IS, 0);
+};
+
+Oid_clauseContext.prototype.SYSTEM = function() {
+ return this.getToken(PlSqlParser.SYSTEM, 0);
+};
+
+Oid_clauseContext.prototype.GENERATED = function() {
+ return this.getToken(PlSqlParser.GENERATED, 0);
+};
+
+Oid_clauseContext.prototype.PRIMARY = function() {
+ return this.getToken(PlSqlParser.PRIMARY, 0);
+};
+
+Oid_clauseContext.prototype.KEY = function() {
+ return this.getToken(PlSqlParser.KEY, 0);
+};
+
+Oid_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterOid_clause(this);
+ }
+};
+
+Oid_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitOid_clause(this);
+ }
+};
+
+Oid_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitOid_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Oid_clauseContext = Oid_clauseContext;
+
+PlSqlParser.prototype.oid_clause = function() {
+
+ var localctx = new Oid_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 534, PlSqlParser.RULE_oid_clause);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5515;
+ this.match(PlSqlParser.OBJECT);
+ this.state = 5516;
+ this.match(PlSqlParser.IDENTIFIER);
+ this.state = 5517;
+ this.match(PlSqlParser.IS);
+ this.state = 5522;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.SYSTEM:
+ this.state = 5518;
+ this.match(PlSqlParser.SYSTEM);
+ this.state = 5519;
+ this.match(PlSqlParser.GENERATED);
+ break;
+ case PlSqlParser.PRIMARY:
+ this.state = 5520;
+ this.match(PlSqlParser.PRIMARY);
+ this.state = 5521;
+ this.match(PlSqlParser.KEY);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Object_propertiesContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_object_properties;
+ return this;
+}
+
+Object_propertiesContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Object_propertiesContext.prototype.constructor = Object_propertiesContext;
+
+Object_propertiesContext.prototype.column_name = function() {
+ return this.getTypedRuleContext(Column_nameContext,0);
+};
+
+Object_propertiesContext.prototype.attribute_name = function() {
+ return this.getTypedRuleContext(Attribute_nameContext,0);
+};
+
+Object_propertiesContext.prototype.DEFAULT = function() {
+ return this.getToken(PlSqlParser.DEFAULT, 0);
+};
+
+Object_propertiesContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+Object_propertiesContext.prototype.inline_constraint = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Inline_constraintContext);
+ } else {
+ return this.getTypedRuleContext(Inline_constraintContext,i);
+ }
+};
+
+Object_propertiesContext.prototype.inline_ref_constraint = function() {
+ return this.getTypedRuleContext(Inline_ref_constraintContext,0);
+};
+
+Object_propertiesContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Object_propertiesContext.prototype.out_of_line_constraint = function() {
+ return this.getTypedRuleContext(Out_of_line_constraintContext,0);
+};
+
+Object_propertiesContext.prototype.out_of_line_ref_constraint = function() {
+ return this.getTypedRuleContext(Out_of_line_ref_constraintContext,0);
+};
+
+Object_propertiesContext.prototype.supplemental_logging_props = function() {
+ return this.getTypedRuleContext(Supplemental_logging_propsContext,0);
+};
+
+Object_propertiesContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterObject_properties(this);
+ }
+};
+
+Object_propertiesContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitObject_properties(this);
+ }
+};
+
+Object_propertiesContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitObject_properties(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Object_propertiesContext = Object_propertiesContext;
+
+PlSqlParser.prototype.object_properties = function() {
+
+ var localctx = new Object_propertiesContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 536, PlSqlParser.RULE_object_properties);
+ var _la = 0; // Token type
+ try {
+ this.state = 5546;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,621,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5526;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,617,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 5524;
+ this.column_name();
+ break;
+
+ case 2:
+ this.state = 5525;
+ this.attribute_name();
+ break;
+
+ }
+ this.state = 5530;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.DEFAULT) {
+ this.state = 5528;
+ this.match(PlSqlParser.DEFAULT);
+ this.state = 5529;
+ this.expression();
+ }
+
+ this.state = 5541;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,620,this._ctx);
+ if(la_===1) {
+ this.state = 5532;
+ this.inline_constraint();
+ this.state = 5537;
+ this._errHandler.sync(this);
+ var _alt = this._interp.adaptivePredict(this._input,619,this._ctx)
+ while(_alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER) {
+ if(_alt===1) {
+ this.state = 5533;
+ this.match(PlSqlParser.COMMA);
+ this.state = 5534;
+ this.inline_constraint();
+ }
+ this.state = 5539;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,619,this._ctx);
+ }
+
+
+ } else if(la_===2) {
+ this.state = 5540;
+ this.inline_ref_constraint();
+
+ }
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 5543;
+ this.out_of_line_constraint();
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 5544;
+ this.out_of_line_ref_constraint();
+ break;
+
+ case 4:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 5545;
+ this.supplemental_logging_props();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Object_table_substitutionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_object_table_substitution;
+ return this;
+}
+
+Object_table_substitutionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Object_table_substitutionContext.prototype.constructor = Object_table_substitutionContext;
+
+Object_table_substitutionContext.prototype.SUBSTITUTABLE = function() {
+ return this.getToken(PlSqlParser.SUBSTITUTABLE, 0);
+};
+
+Object_table_substitutionContext.prototype.AT = function() {
+ return this.getToken(PlSqlParser.AT, 0);
+};
+
+Object_table_substitutionContext.prototype.ALL = function() {
+ return this.getToken(PlSqlParser.ALL, 0);
+};
+
+Object_table_substitutionContext.prototype.LEVELS = function() {
+ return this.getToken(PlSqlParser.LEVELS, 0);
+};
+
+Object_table_substitutionContext.prototype.NOT = function() {
+ return this.getToken(PlSqlParser.NOT, 0);
+};
+
+Object_table_substitutionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterObject_table_substitution(this);
+ }
+};
+
+Object_table_substitutionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitObject_table_substitution(this);
+ }
+};
+
+Object_table_substitutionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitObject_table_substitution(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Object_table_substitutionContext = Object_table_substitutionContext;
+
+PlSqlParser.prototype.object_table_substitution = function() {
+
+ var localctx = new Object_table_substitutionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 538, PlSqlParser.RULE_object_table_substitution);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5549;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.NOT) {
+ this.state = 5548;
+ this.match(PlSqlParser.NOT);
+ }
+
+ this.state = 5551;
+ this.match(PlSqlParser.SUBSTITUTABLE);
+ this.state = 5552;
+ this.match(PlSqlParser.AT);
+ this.state = 5553;
+ this.match(PlSqlParser.ALL);
+ this.state = 5554;
+ this.match(PlSqlParser.LEVELS);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Relational_tableContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_relational_table;
+ return this;
+}
+
+Relational_tableContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Relational_tableContext.prototype.constructor = Relational_tableContext;
+
+Relational_tableContext.prototype.LEFT_PAREN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.LEFT_PAREN);
+ } else {
+ return this.getToken(PlSqlParser.LEFT_PAREN, i);
+ }
+};
+
+
+Relational_tableContext.prototype.relational_property = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Relational_propertyContext);
+ } else {
+ return this.getTypedRuleContext(Relational_propertyContext,i);
+ }
+};
+
+Relational_tableContext.prototype.RIGHT_PAREN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.RIGHT_PAREN);
+ } else {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, i);
+ }
+};
+
+
+Relational_tableContext.prototype.ON = function() {
+ return this.getToken(PlSqlParser.ON, 0);
+};
+
+Relational_tableContext.prototype.COMMIT = function() {
+ return this.getToken(PlSqlParser.COMMIT, 0);
+};
+
+Relational_tableContext.prototype.ROWS = function() {
+ return this.getToken(PlSqlParser.ROWS, 0);
+};
+
+Relational_tableContext.prototype.physical_properties = function() {
+ return this.getTypedRuleContext(Physical_propertiesContext,0);
+};
+
+Relational_tableContext.prototype.column_properties = function() {
+ return this.getTypedRuleContext(Column_propertiesContext,0);
+};
+
+Relational_tableContext.prototype.table_partitioning_clauses = function() {
+ return this.getTypedRuleContext(Table_partitioning_clausesContext,0);
+};
+
+Relational_tableContext.prototype.RESULT_CACHE = function() {
+ return this.getToken(PlSqlParser.RESULT_CACHE, 0);
+};
+
+Relational_tableContext.prototype.MODE = function() {
+ return this.getToken(PlSqlParser.MODE, 0);
+};
+
+Relational_tableContext.prototype.parallel_clause = function() {
+ return this.getTypedRuleContext(Parallel_clauseContext,0);
+};
+
+Relational_tableContext.prototype.row_movement_clause = function() {
+ return this.getTypedRuleContext(Row_movement_clauseContext,0);
+};
+
+Relational_tableContext.prototype.flashback_archive_clause = function() {
+ return this.getTypedRuleContext(Flashback_archive_clauseContext,0);
+};
+
+Relational_tableContext.prototype.DELETE = function() {
+ return this.getToken(PlSqlParser.DELETE, 0);
+};
+
+Relational_tableContext.prototype.PRESERVE = function() {
+ return this.getToken(PlSqlParser.PRESERVE, 0);
+};
+
+Relational_tableContext.prototype.CACHE = function() {
+ return this.getToken(PlSqlParser.CACHE, 0);
+};
+
+Relational_tableContext.prototype.NOCACHE = function() {
+ return this.getToken(PlSqlParser.NOCACHE, 0);
+};
+
+Relational_tableContext.prototype.DEFAULT = function() {
+ return this.getToken(PlSqlParser.DEFAULT, 0);
+};
+
+Relational_tableContext.prototype.FORCE = function() {
+ return this.getToken(PlSqlParser.FORCE, 0);
+};
+
+Relational_tableContext.prototype.ROWDEPENDENCIES = function() {
+ return this.getToken(PlSqlParser.ROWDEPENDENCIES, 0);
+};
+
+Relational_tableContext.prototype.NOROWDEPENDENCIES = function() {
+ return this.getToken(PlSqlParser.NOROWDEPENDENCIES, 0);
+};
+
+Relational_tableContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Relational_tableContext.prototype.enable_disable_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Enable_disable_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Enable_disable_clauseContext,i);
+ }
+};
+
+Relational_tableContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterRelational_table(this);
+ }
+};
+
+Relational_tableContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitRelational_table(this);
+ }
+};
+
+Relational_tableContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitRelational_table(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Relational_tableContext = Relational_tableContext;
+
+PlSqlParser.prototype.relational_table = function() {
+
+ var localctx = new Relational_tableContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 540, PlSqlParser.RULE_relational_table);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5567;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.LEFT_PAREN) {
+ this.state = 5556;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 5557;
+ this.relational_property();
+ this.state = 5562;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 5558;
+ this.match(PlSqlParser.COMMA);
+ this.state = 5559;
+ this.relational_property();
+ this.state = 5564;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 5565;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ }
+
+ this.state = 5573;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.ON) {
+ this.state = 5569;
+ this.match(PlSqlParser.ON);
+ this.state = 5570;
+ this.match(PlSqlParser.COMMIT);
+ this.state = 5571;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.DELETE || _la===PlSqlParser.PRESERVE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 5572;
+ this.match(PlSqlParser.ROWS);
+ }
+
+ this.state = 5576;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.FILESYSTEM_LIKE_LOGGING || _la===PlSqlParser.INITRANS || _la===PlSqlParser.LOGGING || _la===PlSqlParser.NOLOGGING || _la===PlSqlParser.PCTFREE || _la===PlSqlParser.PCTUSED || _la===PlSqlParser.SEGMENT || _la===PlSqlParser.STORAGE || _la===PlSqlParser.TABLESPACE) {
+ this.state = 5575;
+ this.physical_properties();
+ }
+
+ this.state = 5579;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.COLUMN || _la===PlSqlParser.LOB || _la===PlSqlParser.NESTED || _la===PlSqlParser.VARRAY || _la===PlSqlParser.XMLTYPE) {
+ this.state = 5578;
+ this.column_properties();
+ }
+
+ this.state = 5582;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.PARTITION) {
+ this.state = 5581;
+ this.table_partitioning_clauses();
+ }
+
+ this.state = 5585;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.CACHE || _la===PlSqlParser.NOCACHE) {
+ this.state = 5584;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.CACHE || _la===PlSqlParser.NOCACHE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 5592;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.RESULT_CACHE) {
+ this.state = 5587;
+ this.match(PlSqlParser.RESULT_CACHE);
+ this.state = 5588;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 5589;
+ this.match(PlSqlParser.MODE);
+ this.state = 5590;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.DEFAULT || _la===PlSqlParser.FORCE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 5591;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ }
+
+ this.state = 5595;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.NOPARALLEL || _la===PlSqlParser.PARALLEL) {
+ this.state = 5594;
+ this.parallel_clause();
+ }
+
+ this.state = 5598;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.NOROWDEPENDENCIES || _la===PlSqlParser.ROWDEPENDENCIES) {
+ this.state = 5597;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.NOROWDEPENDENCIES || _la===PlSqlParser.ROWDEPENDENCIES)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 5605;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,634,this._ctx);
+ if(la_===1) {
+ this.state = 5601;
+ this._errHandler.sync(this);
+ var _alt = 1;
+ do {
+ switch (_alt) {
+ case 1:
+ this.state = 5600;
+ this.enable_disable_clause();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 5603;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,633, this._ctx);
+ } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
+
+ }
+ this.state = 5608;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.DISABLE || _la===PlSqlParser.ENABLE || _la===PlSqlParser.ROW) {
+ this.state = 5607;
+ this.row_movement_clause();
+ }
+
+ this.state = 5611;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.FLASHBACK || _la===PlSqlParser.NO) {
+ this.state = 5610;
+ this.flashback_archive_clause();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Relational_propertyContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_relational_property;
+ return this;
+}
+
+Relational_propertyContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Relational_propertyContext.prototype.constructor = Relational_propertyContext;
+
+Relational_propertyContext.prototype.column_definition = function() {
+ return this.getTypedRuleContext(Column_definitionContext,0);
+};
+
+Relational_propertyContext.prototype.virtual_column_definition = function() {
+ return this.getTypedRuleContext(Virtual_column_definitionContext,0);
+};
+
+Relational_propertyContext.prototype.out_of_line_constraint = function() {
+ return this.getTypedRuleContext(Out_of_line_constraintContext,0);
+};
+
+Relational_propertyContext.prototype.out_of_line_ref_constraint = function() {
+ return this.getTypedRuleContext(Out_of_line_ref_constraintContext,0);
+};
+
+Relational_propertyContext.prototype.supplemental_logging_props = function() {
+ return this.getTypedRuleContext(Supplemental_logging_propsContext,0);
+};
+
+Relational_propertyContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterRelational_property(this);
+ }
+};
+
+Relational_propertyContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitRelational_property(this);
+ }
+};
+
+Relational_propertyContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitRelational_property(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Relational_propertyContext = Relational_propertyContext;
+
+PlSqlParser.prototype.relational_property = function() {
+
+ var localctx = new Relational_propertyContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 542, PlSqlParser.RULE_relational_property);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5618;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,637,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 5613;
+ this.column_definition();
+ break;
+
+ case 2:
+ this.state = 5614;
+ this.virtual_column_definition();
+ break;
+
+ case 3:
+ this.state = 5615;
+ this.out_of_line_constraint();
+ break;
+
+ case 4:
+ this.state = 5616;
+ this.out_of_line_ref_constraint();
+ break;
+
+ case 5:
+ this.state = 5617;
+ this.supplemental_logging_props();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Table_partitioning_clausesContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_table_partitioning_clauses;
+ return this;
+}
+
+Table_partitioning_clausesContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Table_partitioning_clausesContext.prototype.constructor = Table_partitioning_clausesContext;
+
+Table_partitioning_clausesContext.prototype.range_partitions = function() {
+ return this.getTypedRuleContext(Range_partitionsContext,0);
+};
+
+Table_partitioning_clausesContext.prototype.list_partitions = function() {
+ return this.getTypedRuleContext(List_partitionsContext,0);
+};
+
+Table_partitioning_clausesContext.prototype.hash_partitions = function() {
+ return this.getTypedRuleContext(Hash_partitionsContext,0);
+};
+
+Table_partitioning_clausesContext.prototype.composite_range_partitions = function() {
+ return this.getTypedRuleContext(Composite_range_partitionsContext,0);
+};
+
+Table_partitioning_clausesContext.prototype.composite_list_partitions = function() {
+ return this.getTypedRuleContext(Composite_list_partitionsContext,0);
+};
+
+Table_partitioning_clausesContext.prototype.composite_hash_partitions = function() {
+ return this.getTypedRuleContext(Composite_hash_partitionsContext,0);
+};
+
+Table_partitioning_clausesContext.prototype.reference_partitioning = function() {
+ return this.getTypedRuleContext(Reference_partitioningContext,0);
+};
+
+Table_partitioning_clausesContext.prototype.system_partitioning = function() {
+ return this.getTypedRuleContext(System_partitioningContext,0);
+};
+
+Table_partitioning_clausesContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterTable_partitioning_clauses(this);
+ }
+};
+
+Table_partitioning_clausesContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitTable_partitioning_clauses(this);
+ }
+};
+
+Table_partitioning_clausesContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitTable_partitioning_clauses(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Table_partitioning_clausesContext = Table_partitioning_clausesContext;
+
+PlSqlParser.prototype.table_partitioning_clauses = function() {
+
+ var localctx = new Table_partitioning_clausesContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 544, PlSqlParser.RULE_table_partitioning_clauses);
+ try {
+ this.state = 5628;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,638,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5620;
+ this.range_partitions();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 5621;
+ this.list_partitions();
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 5622;
+ this.hash_partitions();
+ break;
+
+ case 4:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 5623;
+ this.composite_range_partitions();
+ break;
+
+ case 5:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 5624;
+ this.composite_list_partitions();
+ break;
+
+ case 6:
+ this.enterOuterAlt(localctx, 6);
+ this.state = 5625;
+ this.composite_hash_partitions();
+ break;
+
+ case 7:
+ this.enterOuterAlt(localctx, 7);
+ this.state = 5626;
+ this.reference_partitioning();
+ break;
+
+ case 8:
+ this.enterOuterAlt(localctx, 8);
+ this.state = 5627;
+ this.system_partitioning();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Range_partitionsContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_range_partitions;
+ return this;
+}
+
+Range_partitionsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Range_partitionsContext.prototype.constructor = Range_partitionsContext;
+
+Range_partitionsContext.prototype.PARTITION = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.PARTITION);
+ } else {
+ return this.getToken(PlSqlParser.PARTITION, i);
+ }
+};
+
+
+Range_partitionsContext.prototype.BY = function() {
+ return this.getToken(PlSqlParser.BY, 0);
+};
+
+Range_partitionsContext.prototype.RANGE = function() {
+ return this.getToken(PlSqlParser.RANGE, 0);
+};
+
+Range_partitionsContext.prototype.LEFT_PAREN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.LEFT_PAREN);
+ } else {
+ return this.getToken(PlSqlParser.LEFT_PAREN, i);
+ }
+};
+
+
+Range_partitionsContext.prototype.column_name = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Column_nameContext);
+ } else {
+ return this.getTypedRuleContext(Column_nameContext,i);
+ }
+};
+
+Range_partitionsContext.prototype.RIGHT_PAREN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.RIGHT_PAREN);
+ } else {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, i);
+ }
+};
+
+
+Range_partitionsContext.prototype.range_values_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Range_values_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Range_values_clauseContext,i);
+ }
+};
+
+Range_partitionsContext.prototype.table_partition_description = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Table_partition_descriptionContext);
+ } else {
+ return this.getTypedRuleContext(Table_partition_descriptionContext,i);
+ }
+};
+
+Range_partitionsContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Range_partitionsContext.prototype.INTERVAL = function() {
+ return this.getToken(PlSqlParser.INTERVAL, 0);
+};
+
+Range_partitionsContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+Range_partitionsContext.prototype.partition_name = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Partition_nameContext);
+ } else {
+ return this.getTypedRuleContext(Partition_nameContext,i);
+ }
+};
+
+Range_partitionsContext.prototype.STORE = function() {
+ return this.getToken(PlSqlParser.STORE, 0);
+};
+
+Range_partitionsContext.prototype.IN = function() {
+ return this.getToken(PlSqlParser.IN, 0);
+};
+
+Range_partitionsContext.prototype.tablespace = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(TablespaceContext);
+ } else {
+ return this.getTypedRuleContext(TablespaceContext,i);
+ }
+};
+
+Range_partitionsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterRange_partitions(this);
+ }
+};
+
+Range_partitionsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitRange_partitions(this);
+ }
+};
+
+Range_partitionsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitRange_partitions(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Range_partitionsContext = Range_partitionsContext;
+
+PlSqlParser.prototype.range_partitions = function() {
+
+ var localctx = new Range_partitionsContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 546, PlSqlParser.RULE_range_partitions);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5630;
+ this.match(PlSqlParser.PARTITION);
+ this.state = 5631;
+ this.match(PlSqlParser.BY);
+ this.state = 5632;
+ this.match(PlSqlParser.RANGE);
+ this.state = 5633;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 5634;
+ this.column_name();
+ this.state = 5639;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 5635;
+ this.match(PlSqlParser.COMMA);
+ this.state = 5636;
+ this.column_name();
+ this.state = 5641;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 5642;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ this.state = 5662;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.INTERVAL) {
+ this.state = 5643;
+ this.match(PlSqlParser.INTERVAL);
+ this.state = 5644;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 5645;
+ this.expression();
+ this.state = 5646;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ this.state = 5660;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.STORE) {
+ this.state = 5647;
+ this.match(PlSqlParser.STORE);
+ this.state = 5648;
+ this.match(PlSqlParser.IN);
+ this.state = 5649;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 5650;
+ this.tablespace();
+ this.state = 5655;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 5651;
+ this.match(PlSqlParser.COMMA);
+ this.state = 5652;
+ this.tablespace();
+ this.state = 5657;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 5658;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ }
+
+ }
+
+ this.state = 5664;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 5665;
+ this.match(PlSqlParser.PARTITION);
+ this.state = 5667;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if((((_la) & ~0x1f) == 0 && ((1 << _la) & ((1 << PlSqlParser.ABORT) | (1 << PlSqlParser.ABS) | (1 << PlSqlParser.ACCESS) | (1 << PlSqlParser.ACCESSED) | (1 << PlSqlParser.ACCOUNT) | (1 << PlSqlParser.ACL) | (1 << PlSqlParser.ACOS) | (1 << PlSqlParser.ACTION) | (1 << PlSqlParser.ACTIONS) | (1 << PlSqlParser.ACTIVATE) | (1 << PlSqlParser.ACTIVE) | (1 << PlSqlParser.ACTIVE_COMPONENT) | (1 << PlSqlParser.ACTIVE_DATA) | (1 << PlSqlParser.ACTIVE_FUNCTION) | (1 << PlSqlParser.ACTIVE_TAG) | (1 << PlSqlParser.ACTIVITY) | (1 << PlSqlParser.ADAPTIVE_PLAN) | (1 << PlSqlParser.ADD) | (1 << PlSqlParser.ADD_COLUMN) | (1 << PlSqlParser.ADD_GROUP) | (1 << PlSqlParser.ADD_MONTHS) | (1 << PlSqlParser.ADJ_DATE) | (1 << PlSqlParser.ADMIN) | (1 << PlSqlParser.ADMINISTER) | (1 << PlSqlParser.ADMINISTRATOR) | (1 << PlSqlParser.ADVANCED) | (1 << PlSqlParser.ADVISE) | (1 << PlSqlParser.ADVISOR) | (1 << PlSqlParser.AFD_DISKSTRING) | (1 << PlSqlParser.AFTER) | (1 << PlSqlParser.AGENT))) !== 0) || ((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (PlSqlParser.AGGREGATE - 32)) | (1 << (PlSqlParser.A_LETTER - 32)) | (1 << (PlSqlParser.ALIAS - 32)) | (1 << (PlSqlParser.ALLOCATE - 32)) | (1 << (PlSqlParser.ALLOW - 32)) | (1 << (PlSqlParser.ALL_ROWS - 32)) | (1 << (PlSqlParser.ALWAYS - 32)) | (1 << (PlSqlParser.ANALYZE - 32)) | (1 << (PlSqlParser.ANCILLARY - 32)) | (1 << (PlSqlParser.AND_EQUAL - 32)) | (1 << (PlSqlParser.ANOMALY - 32)) | (1 << (PlSqlParser.ANSI_REARCH - 32)) | (1 << (PlSqlParser.ANTIJOIN - 32)) | (1 << (PlSqlParser.ANYSCHEMA - 32)) | (1 << (PlSqlParser.APPEND - 32)) | (1 << (PlSqlParser.APPENDCHILDXML - 32)) | (1 << (PlSqlParser.APPEND_VALUES - 32)) | (1 << (PlSqlParser.APPLICATION - 32)) | (1 << (PlSqlParser.APPLY - 32)) | (1 << (PlSqlParser.APPROX_COUNT_DISTINCT - 32)) | (1 << (PlSqlParser.ARCHIVAL - 32)) | (1 << (PlSqlParser.ARCHIVE - 32)) | (1 << (PlSqlParser.ARCHIVED - 32)) | (1 << (PlSqlParser.ARCHIVELOG - 32)) | (1 << (PlSqlParser.ARRAY - 32)) | (1 << (PlSqlParser.ASCII - 32)))) !== 0) || ((((_la - 64)) & ~0x1f) == 0 && ((1 << (_la - 64)) & ((1 << (PlSqlParser.ASCIISTR - 64)) | (1 << (PlSqlParser.ASIN - 64)) | (1 << (PlSqlParser.ASIS - 64)) | (1 << (PlSqlParser.ASSEMBLY - 64)) | (1 << (PlSqlParser.ASSIGN - 64)) | (1 << (PlSqlParser.ASSOCIATE - 64)) | (1 << (PlSqlParser.ASYNC - 64)) | (1 << (PlSqlParser.ASYNCHRONOUS - 64)) | (1 << (PlSqlParser.ATAN2 - 64)) | (1 << (PlSqlParser.ATAN - 64)) | (1 << (PlSqlParser.AT - 64)) | (1 << (PlSqlParser.ATTRIBUTE - 64)) | (1 << (PlSqlParser.ATTRIBUTES - 64)) | (1 << (PlSqlParser.AUTHENTICATED - 64)) | (1 << (PlSqlParser.AUTHENTICATION - 64)) | (1 << (PlSqlParser.AUTHID - 64)) | (1 << (PlSqlParser.AUTHORIZATION - 64)) | (1 << (PlSqlParser.AUTOALLOCATE - 64)) | (1 << (PlSqlParser.AUTO - 64)) | (1 << (PlSqlParser.AUTOEXTEND - 64)) | (1 << (PlSqlParser.AUTO_LOGIN - 64)) | (1 << (PlSqlParser.AUTOMATIC - 64)) | (1 << (PlSqlParser.AUTONOMOUS_TRANSACTION - 64)) | (1 << (PlSqlParser.AUTO_REOPTIMIZE - 64)) | (1 << (PlSqlParser.AVAILABILITY - 64)) | (1 << (PlSqlParser.AVRO - 64)) | (1 << (PlSqlParser.BACKGROUND - 64)) | (1 << (PlSqlParser.BACKUP - 64)) | (1 << (PlSqlParser.BASIC - 64)))) !== 0) || ((((_la - 96)) & ~0x1f) == 0 && ((1 << (_la - 96)) & ((1 << (PlSqlParser.BASICFILE - 96)) | (1 << (PlSqlParser.BATCH - 96)) | (1 << (PlSqlParser.BATCHSIZE - 96)) | (1 << (PlSqlParser.BATCH_TABLE_ACCESS_BY_ROWID - 96)) | (1 << (PlSqlParser.BECOME - 96)) | (1 << (PlSqlParser.BEFORE - 96)) | (1 << (PlSqlParser.BEGIN - 96)) | (1 << (PlSqlParser.BEGINNING - 96)) | (1 << (PlSqlParser.BEGIN_OUTLINE_DATA - 96)) | (1 << (PlSqlParser.BEHALF - 96)) | (1 << (PlSqlParser.BEQUEATH - 96)) | (1 << (PlSqlParser.BFILE - 96)) | (1 << (PlSqlParser.BFILENAME - 96)) | (1 << (PlSqlParser.BIGFILE - 96)) | (1 << (PlSqlParser.BINARY - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE_INFINITY - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE_NAN - 96)) | (1 << (PlSqlParser.BINARY_FLOAT - 96)) | (1 << (PlSqlParser.BINARY_FLOAT_INFINITY - 96)) | (1 << (PlSqlParser.BINARY_FLOAT_NAN - 96)) | (1 << (PlSqlParser.BINARY_INTEGER - 96)) | (1 << (PlSqlParser.BIND_AWARE - 96)) | (1 << (PlSqlParser.BINDING - 96)) | (1 << (PlSqlParser.BIN_TO_NUM - 96)) | (1 << (PlSqlParser.BITAND - 96)) | (1 << (PlSqlParser.BITMAP_AND - 96)) | (1 << (PlSqlParser.BITMAP - 96)) | (1 << (PlSqlParser.BITMAPS - 96)) | (1 << (PlSqlParser.BITMAP_TREE - 96)) | (1 << (PlSqlParser.BITS - 96)))) !== 0) || ((((_la - 128)) & ~0x1f) == 0 && ((1 << (_la - 128)) & ((1 << (PlSqlParser.BLOB - 128)) | (1 << (PlSqlParser.BLOCK - 128)) | (1 << (PlSqlParser.BLOCK_RANGE - 128)) | (1 << (PlSqlParser.BLOCKS - 128)) | (1 << (PlSqlParser.BLOCKSIZE - 128)) | (1 << (PlSqlParser.BODY - 128)) | (1 << (PlSqlParser.BOOLEAN - 128)) | (1 << (PlSqlParser.BOTH - 128)) | (1 << (PlSqlParser.BOUND - 128)) | (1 << (PlSqlParser.BRANCH - 128)) | (1 << (PlSqlParser.BREADTH - 128)) | (1 << (PlSqlParser.BROADCAST - 128)) | (1 << (PlSqlParser.BSON - 128)) | (1 << (PlSqlParser.BUFFER - 128)) | (1 << (PlSqlParser.BUFFER_CACHE - 128)) | (1 << (PlSqlParser.BUFFER_POOL - 128)) | (1 << (PlSqlParser.BUILD - 128)) | (1 << (PlSqlParser.BULK - 128)) | (1 << (PlSqlParser.BYPASS_RECURSIVE_CHECK - 128)) | (1 << (PlSqlParser.BYPASS_UJVC - 128)) | (1 << (PlSqlParser.BYTE - 128)) | (1 << (PlSqlParser.CACHE - 128)) | (1 << (PlSqlParser.CACHE_CB - 128)) | (1 << (PlSqlParser.CACHE_INSTANCES - 128)) | (1 << (PlSqlParser.CACHE_TEMP_TABLE - 128)) | (1 << (PlSqlParser.CACHING - 128)) | (1 << (PlSqlParser.CALCULATED - 128)) | (1 << (PlSqlParser.CALLBACK - 128)) | (1 << (PlSqlParser.CALL - 128)) | (1 << (PlSqlParser.CANCEL - 128)))) !== 0) || ((((_la - 160)) & ~0x1f) == 0 && ((1 << (_la - 160)) & ((1 << (PlSqlParser.CAPACITY - 160)) | (1 << (PlSqlParser.CARDINALITY - 160)) | (1 << (PlSqlParser.CASCADE - 160)) | (1 << (PlSqlParser.CASE - 160)) | (1 << (PlSqlParser.CAST - 160)) | (1 << (PlSqlParser.CATEGORY - 160)) | (1 << (PlSqlParser.CDBDEFAULT - 160)) | (1 << (PlSqlParser.CEIL - 160)) | (1 << (PlSqlParser.CELL_FLASH_CACHE - 160)) | (1 << (PlSqlParser.CERTIFICATE - 160)) | (1 << (PlSqlParser.CFILE - 160)) | (1 << (PlSqlParser.CHAINED - 160)) | (1 << (PlSqlParser.CHANGE - 160)) | (1 << (PlSqlParser.CHANGE_DUPKEY_ERROR_INDEX - 160)) | (1 << (PlSqlParser.CHARACTER - 160)) | (1 << (PlSqlParser.CHAR - 160)) | (1 << (PlSqlParser.CHAR_CS - 160)) | (1 << (PlSqlParser.CHARTOROWID - 160)) | (1 << (PlSqlParser.CHECK_ACL_REWRITE - 160)) | (1 << (PlSqlParser.CHECKPOINT - 160)) | (1 << (PlSqlParser.CHILD - 160)) | (1 << (PlSqlParser.CHOOSE - 160)) | (1 << (PlSqlParser.CHR - 160)) | (1 << (PlSqlParser.CHUNK - 160)) | (1 << (PlSqlParser.CLASS - 160)) | (1 << (PlSqlParser.CLASSIFIER - 160)) | (1 << (PlSqlParser.CLEANUP - 160)) | (1 << (PlSqlParser.CLEAR - 160)) | (1 << (PlSqlParser.C_LETTER - 160)) | (1 << (PlSqlParser.CLIENT - 160)))) !== 0) || ((((_la - 192)) & ~0x1f) == 0 && ((1 << (_la - 192)) & ((1 << (PlSqlParser.CLOB - 192)) | (1 << (PlSqlParser.CLONE - 192)) | (1 << (PlSqlParser.CLOSE_CACHED_OPEN_CURSORS - 192)) | (1 << (PlSqlParser.CLOSE - 192)) | (1 << (PlSqlParser.CLUSTER_BY_ROWID - 192)) | (1 << (PlSqlParser.CLUSTER - 192)) | (1 << (PlSqlParser.CLUSTER_DETAILS - 192)) | (1 << (PlSqlParser.CLUSTER_DISTANCE - 192)) | (1 << (PlSqlParser.CLUSTER_ID - 192)) | (1 << (PlSqlParser.CLUSTERING - 192)) | (1 << (PlSqlParser.CLUSTERING_FACTOR - 192)) | (1 << (PlSqlParser.CLUSTER_PROBABILITY - 192)) | (1 << (PlSqlParser.CLUSTER_SET - 192)) | (1 << (PlSqlParser.COALESCE - 192)) | (1 << (PlSqlParser.COALESCE_SQ - 192)) | (1 << (PlSqlParser.COARSE - 192)) | (1 << (PlSqlParser.CO_AUTH_IND - 192)) | (1 << (PlSqlParser.COLD - 192)) | (1 << (PlSqlParser.COLLECT - 192)) | (1 << (PlSqlParser.COLUMNAR - 192)) | (1 << (PlSqlParser.COLUMN_AUTH_INDICATOR - 192)) | (1 << (PlSqlParser.COLUMN - 192)) | (1 << (PlSqlParser.COLUMNS - 192)) | (1 << (PlSqlParser.COLUMN_STATS - 192)) | (1 << (PlSqlParser.COLUMN_VALUE - 192)) | (1 << (PlSqlParser.COMMENT - 192)) | (1 << (PlSqlParser.COMMIT - 192)) | (1 << (PlSqlParser.COMMITTED - 192)) | (1 << (PlSqlParser.COMMON_DATA - 192)) | (1 << (PlSqlParser.COMPACT - 192)) | (1 << (PlSqlParser.COMPATIBILITY - 192)) | (1 << (PlSqlParser.COMPILE - 192)))) !== 0) || ((((_la - 224)) & ~0x1f) == 0 && ((1 << (_la - 224)) & ((1 << (PlSqlParser.COMPLETE - 224)) | (1 << (PlSqlParser.COMPLIANCE - 224)) | (1 << (PlSqlParser.COMPONENT - 224)) | (1 << (PlSqlParser.COMPONENTS - 224)) | (1 << (PlSqlParser.COMPOSE - 224)) | (1 << (PlSqlParser.COMPOSITE - 224)) | (1 << (PlSqlParser.COMPOSITE_LIMIT - 224)) | (1 << (PlSqlParser.COMPOUND - 224)) | (1 << (PlSqlParser.COMPUTE - 224)) | (1 << (PlSqlParser.CONCAT - 224)) | (1 << (PlSqlParser.CON_DBID_TO_ID - 224)) | (1 << (PlSqlParser.CONDITIONAL - 224)) | (1 << (PlSqlParser.CONDITION - 224)) | (1 << (PlSqlParser.CONFIRM - 224)) | (1 << (PlSqlParser.CONFORMING - 224)) | (1 << (PlSqlParser.CON_GUID_TO_ID - 224)) | (1 << (PlSqlParser.CON_ID - 224)) | (1 << (PlSqlParser.CON_NAME_TO_ID - 224)) | (1 << (PlSqlParser.CONNECT_BY_CB_WHR_ONLY - 224)) | (1 << (PlSqlParser.CONNECT_BY_COMBINE_SW - 224)) | (1 << (PlSqlParser.CONNECT_BY_COST_BASED - 224)) | (1 << (PlSqlParser.CONNECT_BY_ELIM_DUPS - 224)) | (1 << (PlSqlParser.CONNECT_BY_FILTERING - 224)) | (1 << (PlSqlParser.CONNECT_BY_ISCYCLE - 224)) | (1 << (PlSqlParser.CONNECT_BY_ISLEAF - 224)) | (1 << (PlSqlParser.CONNECT_BY_ROOT - 224)) | (1 << (PlSqlParser.CONNECT_TIME - 224)) | (1 << (PlSqlParser.CONSIDER - 224)) | (1 << (PlSqlParser.CONSISTENT - 224)) | (1 << (PlSqlParser.CONSTANT - 224)))) !== 0) || ((((_la - 256)) & ~0x1f) == 0 && ((1 << (_la - 256)) & ((1 << (PlSqlParser.CONST - 256)) | (1 << (PlSqlParser.CONSTRAINT - 256)) | (1 << (PlSqlParser.CONSTRAINTS - 256)) | (1 << (PlSqlParser.CONSTRUCTOR - 256)) | (1 << (PlSqlParser.CONTAINER - 256)) | (1 << (PlSqlParser.CONTAINER_DATA - 256)) | (1 << (PlSqlParser.CONTAINERS - 256)) | (1 << (PlSqlParser.CONTENT - 256)) | (1 << (PlSqlParser.CONTENTS - 256)) | (1 << (PlSqlParser.CONTEXT - 256)) | (1 << (PlSqlParser.CONTINUE - 256)) | (1 << (PlSqlParser.CONTROLFILE - 256)) | (1 << (PlSqlParser.CON_UID_TO_ID - 256)) | (1 << (PlSqlParser.CONVERT - 256)) | (1 << (PlSqlParser.COOKIE - 256)) | (1 << (PlSqlParser.COPY - 256)) | (1 << (PlSqlParser.CORR_K - 256)) | (1 << (PlSqlParser.CORR_S - 256)) | (1 << (PlSqlParser.CORRUPTION - 256)) | (1 << (PlSqlParser.CORRUPT_XID_ALL - 256)) | (1 << (PlSqlParser.CORRUPT_XID - 256)) | (1 << (PlSqlParser.COS - 256)) | (1 << (PlSqlParser.COSH - 256)) | (1 << (PlSqlParser.COST - 256)) | (1 << (PlSqlParser.COST_XML_QUERY_REWRITE - 256)) | (1 << (PlSqlParser.COUNT - 256)) | (1 << (PlSqlParser.COVAR_POP - 256)) | (1 << (PlSqlParser.COVAR_SAMP - 256)) | (1 << (PlSqlParser.CPU_COSTING - 256)) | (1 << (PlSqlParser.CPU_PER_CALL - 256)) | (1 << (PlSqlParser.CPU_PER_SESSION - 256)) | (1 << (PlSqlParser.CRASH - 256)))) !== 0) || ((((_la - 289)) & ~0x1f) == 0 && ((1 << (_la - 289)) & ((1 << (PlSqlParser.CREATE_FILE_DEST - 289)) | (1 << (PlSqlParser.CREATE_STORED_OUTLINES - 289)) | (1 << (PlSqlParser.CREATION - 289)) | (1 << (PlSqlParser.CREDENTIAL - 289)) | (1 << (PlSqlParser.CRITICAL - 289)) | (1 << (PlSqlParser.CROSS - 289)) | (1 << (PlSqlParser.CROSSEDITION - 289)) | (1 << (PlSqlParser.CSCONVERT - 289)) | (1 << (PlSqlParser.CUBE_AJ - 289)) | (1 << (PlSqlParser.CUBE - 289)) | (1 << (PlSqlParser.CUBE_GB - 289)) | (1 << (PlSqlParser.CUBE_SJ - 289)) | (1 << (PlSqlParser.CUME_DISTM - 289)) | (1 << (PlSqlParser.CURRENT - 289)) | (1 << (PlSqlParser.CURRENT_DATE - 289)) | (1 << (PlSqlParser.CURRENT_SCHEMA - 289)) | (1 << (PlSqlParser.CURRENT_TIME - 289)) | (1 << (PlSqlParser.CURRENT_TIMESTAMP - 289)) | (1 << (PlSqlParser.CURRENT_USER - 289)) | (1 << (PlSqlParser.CURRENTV - 289)) | (1 << (PlSqlParser.CURSOR - 289)) | (1 << (PlSqlParser.CURSOR_SHARING_EXACT - 289)) | (1 << (PlSqlParser.CURSOR_SPECIFIC_SEGMENT - 289)) | (1 << (PlSqlParser.CUSTOMDATUM - 289)) | (1 << (PlSqlParser.CV - 289)) | (1 << (PlSqlParser.CYCLE - 289)) | (1 << (PlSqlParser.DANGLING - 289)) | (1 << (PlSqlParser.DATABASE - 289)) | (1 << (PlSqlParser.DATA - 289)) | (1 << (PlSqlParser.DATAFILE - 289)) | (1 << (PlSqlParser.DATAFILES - 289)))) !== 0) || ((((_la - 321)) & ~0x1f) == 0 && ((1 << (_la - 321)) & ((1 << (PlSqlParser.DATAMOVEMENT - 321)) | (1 << (PlSqlParser.DATAOBJNO - 321)) | (1 << (PlSqlParser.DATAOBJ_TO_MAT_PARTITION - 321)) | (1 << (PlSqlParser.DATAOBJ_TO_PARTITION - 321)) | (1 << (PlSqlParser.DATAPUMP - 321)) | (1 << (PlSqlParser.DATA_SECURITY_REWRITE_LIMIT - 321)) | (1 << (PlSqlParser.DATE_MODE - 321)) | (1 << (PlSqlParser.DAY - 321)) | (1 << (PlSqlParser.DAYS - 321)) | (1 << (PlSqlParser.DBA - 321)) | (1 << (PlSqlParser.DBA_RECYCLEBIN - 321)) | (1 << (PlSqlParser.DBMS_STATS - 321)) | (1 << (PlSqlParser.DB_ROLE_CHANGE - 321)) | (1 << (PlSqlParser.DBTIMEZONE - 321)) | (1 << (PlSqlParser.DB_UNIQUE_NAME - 321)) | (1 << (PlSqlParser.DB_VERSION - 321)) | (1 << (PlSqlParser.DDL - 321)) | (1 << (PlSqlParser.DEALLOCATE - 321)) | (1 << (PlSqlParser.DEBUG - 321)) | (1 << (PlSqlParser.DEBUGGER - 321)) | (1 << (PlSqlParser.DEC - 321)) | (1 << (PlSqlParser.DECIMAL - 321)) | (1 << (PlSqlParser.DECLARE - 321)) | (1 << (PlSqlParser.DECOMPOSE - 321)) | (1 << (PlSqlParser.DECORRELATE - 321)) | (1 << (PlSqlParser.DECR - 321)) | (1 << (PlSqlParser.DECREMENT - 321)) | (1 << (PlSqlParser.DECRYPT - 321)) | (1 << (PlSqlParser.DEDUPLICATE - 321)) | (1 << (PlSqlParser.DEFAULTS - 321)))) !== 0) || ((((_la - 353)) & ~0x1f) == 0 && ((1 << (_la - 353)) & ((1 << (PlSqlParser.DEFERRABLE - 353)) | (1 << (PlSqlParser.DEFERRED - 353)) | (1 << (PlSqlParser.DEFINED - 353)) | (1 << (PlSqlParser.DEFINE - 353)) | (1 << (PlSqlParser.DEFINER - 353)) | (1 << (PlSqlParser.DEGREE - 353)) | (1 << (PlSqlParser.DELAY - 353)) | (1 << (PlSqlParser.DELEGATE - 353)) | (1 << (PlSqlParser.DELETE_ALL - 353)) | (1 << (PlSqlParser.DELETE - 353)) | (1 << (PlSqlParser.DELETEXML - 353)) | (1 << (PlSqlParser.DEMAND - 353)) | (1 << (PlSqlParser.DENSE_RANKM - 353)) | (1 << (PlSqlParser.DEPENDENT - 353)) | (1 << (PlSqlParser.DEPTH - 353)) | (1 << (PlSqlParser.DEQUEUE - 353)) | (1 << (PlSqlParser.DEREF - 353)) | (1 << (PlSqlParser.DEREF_NO_REWRITE - 353)) | (1 << (PlSqlParser.DESTROY - 353)) | (1 << (PlSqlParser.DETACHED - 353)) | (1 << (PlSqlParser.DETERMINES - 353)) | (1 << (PlSqlParser.DETERMINISTIC - 353)) | (1 << (PlSqlParser.DICTIONARY - 353)) | (1 << (PlSqlParser.DIMENSION - 353)) | (1 << (PlSqlParser.DIMENSIONS - 353)) | (1 << (PlSqlParser.DIRECT_LOAD - 353)) | (1 << (PlSqlParser.DIRECTORY - 353)) | (1 << (PlSqlParser.DIRECT_PATH - 353)) | (1 << (PlSqlParser.DISABLE_ALL - 353)) | (1 << (PlSqlParser.DISABLE - 353)) | (1 << (PlSqlParser.DISABLE_PARALLEL_DML - 353)))) !== 0) || ((((_la - 385)) & ~0x1f) == 0 && ((1 << (_la - 385)) & ((1 << (PlSqlParser.DISABLE_PRESET - 385)) | (1 << (PlSqlParser.DISABLE_RPKE - 385)) | (1 << (PlSqlParser.DISALLOW - 385)) | (1 << (PlSqlParser.DISASSOCIATE - 385)) | (1 << (PlSqlParser.DISCARD - 385)) | (1 << (PlSqlParser.DISCONNECT - 385)) | (1 << (PlSqlParser.DISK - 385)) | (1 << (PlSqlParser.DISKGROUP - 385)) | (1 << (PlSqlParser.DISKS - 385)) | (1 << (PlSqlParser.DISMOUNT - 385)) | (1 << (PlSqlParser.DISTINGUISHED - 385)) | (1 << (PlSqlParser.DISTRIBUTED - 385)) | (1 << (PlSqlParser.DISTRIBUTE - 385)) | (1 << (PlSqlParser.DML - 385)) | (1 << (PlSqlParser.DML_UPDATE - 385)) | (1 << (PlSqlParser.DOCFIDELITY - 385)) | (1 << (PlSqlParser.DOCUMENT - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_FILTER - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_NO_SORT - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_SORT - 385)) | (1 << (PlSqlParser.DOUBLE - 385)) | (1 << (PlSqlParser.DOWNGRADE - 385)) | (1 << (PlSqlParser.DRIVING_SITE - 385)) | (1 << (PlSqlParser.DROP_COLUMN - 385)) | (1 << (PlSqlParser.DROP_GROUP - 385)) | (1 << (PlSqlParser.DSINTERVAL_UNCONSTRAINED - 385)) | (1 << (PlSqlParser.DST_UPGRADE_INSERT_CONV - 385)) | (1 << (PlSqlParser.DUMP - 385)))) !== 0) || ((((_la - 417)) & ~0x1f) == 0 && ((1 << (_la - 417)) & ((1 << (PlSqlParser.DUPLICATE - 417)) | (1 << (PlSqlParser.DV - 417)) | (1 << (PlSqlParser.DYNAMIC - 417)) | (1 << (PlSqlParser.DYNAMIC_SAMPLING - 417)) | (1 << (PlSqlParser.DYNAMIC_SAMPLING_EST_CDN - 417)) | (1 << (PlSqlParser.EACH - 417)) | (1 << (PlSqlParser.EDITIONABLE - 417)) | (1 << (PlSqlParser.EDITION - 417)) | (1 << (PlSqlParser.EDITIONING - 417)) | (1 << (PlSqlParser.EDITIONS - 417)) | (1 << (PlSqlParser.ELEMENT - 417)) | (1 << (PlSqlParser.ELIM_GROUPBY - 417)) | (1 << (PlSqlParser.ELIMINATE_JOIN - 417)) | (1 << (PlSqlParser.ELIMINATE_OBY - 417)) | (1 << (PlSqlParser.ELIMINATE_OUTER_JOIN - 417)) | (1 << (PlSqlParser.EM - 417)) | (1 << (PlSqlParser.EMPTY_BLOB - 417)) | (1 << (PlSqlParser.EMPTY_CLOB - 417)) | (1 << (PlSqlParser.EMPTY - 417)) | (1 << (PlSqlParser.ENABLE_ALL - 417)) | (1 << (PlSqlParser.ENABLE - 417)) | (1 << (PlSqlParser.ENABLE_PARALLEL_DML - 417)) | (1 << (PlSqlParser.ENABLE_PRESET - 417)) | (1 << (PlSqlParser.ENCODING - 417)) | (1 << (PlSqlParser.ENCRYPT - 417)) | (1 << (PlSqlParser.ENCRYPTION - 417)) | (1 << (PlSqlParser.END_OUTLINE_DATA - 417)) | (1 << (PlSqlParser.ENFORCED - 417)) | (1 << (PlSqlParser.ENFORCE - 417)))) !== 0) || ((((_la - 449)) & ~0x1f) == 0 && ((1 << (_la - 449)) & ((1 << (PlSqlParser.ENQUEUE - 449)) | (1 << (PlSqlParser.ENTERPRISE - 449)) | (1 << (PlSqlParser.ENTITYESCAPING - 449)) | (1 << (PlSqlParser.ENTRY - 449)) | (1 << (PlSqlParser.EQUIPART - 449)) | (1 << (PlSqlParser.ERR - 449)) | (1 << (PlSqlParser.ERROR_ARGUMENT - 449)) | (1 << (PlSqlParser.ERROR - 449)) | (1 << (PlSqlParser.ERROR_ON_OVERLAP_TIME - 449)) | (1 << (PlSqlParser.ERRORS - 449)) | (1 << (PlSqlParser.ESCAPE - 449)) | (1 << (PlSqlParser.ESTIMATE - 449)) | (1 << (PlSqlParser.EVAL - 449)) | (1 << (PlSqlParser.EVALNAME - 449)) | (1 << (PlSqlParser.EVALUATE - 449)) | (1 << (PlSqlParser.EVALUATION - 449)) | (1 << (PlSqlParser.EVENTS - 449)) | (1 << (PlSqlParser.EVERY - 449)) | (1 << (PlSqlParser.EXCEPT - 449)) | (1 << (PlSqlParser.EXCEPTION - 449)) | (1 << (PlSqlParser.EXCEPTION_INIT - 449)) | (1 << (PlSqlParser.EXCEPTIONS - 449)) | (1 << (PlSqlParser.EXCHANGE - 449)) | (1 << (PlSqlParser.EXCLUDE - 449)) | (1 << (PlSqlParser.EXCLUDING - 449)) | (1 << (PlSqlParser.EXECUTE - 449)) | (1 << (PlSqlParser.EXEMPT - 449)) | (1 << (PlSqlParser.EXISTING - 449)) | (1 << (PlSqlParser.EXISTS - 449)) | (1 << (PlSqlParser.EXISTSNODE - 449)) | (1 << (PlSqlParser.EXIT - 449)))) !== 0) || ((((_la - 481)) & ~0x1f) == 0 && ((1 << (_la - 481)) & ((1 << (PlSqlParser.EXPAND_GSET_TO_UNION - 481)) | (1 << (PlSqlParser.EXPAND_TABLE - 481)) | (1 << (PlSqlParser.EXP - 481)) | (1 << (PlSqlParser.EXPIRE - 481)) | (1 << (PlSqlParser.EXPLAIN - 481)) | (1 << (PlSqlParser.EXPLOSION - 481)) | (1 << (PlSqlParser.EXPORT - 481)) | (1 << (PlSqlParser.EXPR_CORR_CHECK - 481)) | (1 << (PlSqlParser.EXPRESS - 481)) | (1 << (PlSqlParser.EXTENDS - 481)) | (1 << (PlSqlParser.EXTENT - 481)) | (1 << (PlSqlParser.EXTENTS - 481)) | (1 << (PlSqlParser.EXTERNAL - 481)) | (1 << (PlSqlParser.EXTERNALLY - 481)) | (1 << (PlSqlParser.EXTRACTCLOBXML - 481)) | (1 << (PlSqlParser.EXTRACT - 481)) | (1 << (PlSqlParser.EXTRACTVALUE - 481)) | (1 << (PlSqlParser.EXTRA - 481)) | (1 << (PlSqlParser.FACILITY - 481)) | (1 << (PlSqlParser.FACT - 481)) | (1 << (PlSqlParser.FACTOR - 481)) | (1 << (PlSqlParser.FACTORIZE_JOIN - 481)) | (1 << (PlSqlParser.FAILED - 481)) | (1 << (PlSqlParser.FAILED_LOGIN_ATTEMPTS - 481)) | (1 << (PlSqlParser.FAILGROUP - 481)) | (1 << (PlSqlParser.FAILOVER - 481)) | (1 << (PlSqlParser.FAILURE - 481)) | (1 << (PlSqlParser.FALSE - 481)) | (1 << (PlSqlParser.FAMILY - 481)) | (1 << (PlSqlParser.FAR - 481)) | (1 << (PlSqlParser.FAST - 481)) | (1 << (PlSqlParser.FASTSTART - 481)))) !== 0) || ((((_la - 513)) & ~0x1f) == 0 && ((1 << (_la - 513)) & ((1 << (PlSqlParser.FBTSCAN - 513)) | (1 << (PlSqlParser.FEATURE_DETAILS - 513)) | (1 << (PlSqlParser.FEATURE_ID - 513)) | (1 << (PlSqlParser.FEATURE_SET - 513)) | (1 << (PlSqlParser.FEATURE_VALUE - 513)) | (1 << (PlSqlParser.FETCH - 513)) | (1 << (PlSqlParser.FILE - 513)) | (1 << (PlSqlParser.FILE_NAME_CONVERT - 513)) | (1 << (PlSqlParser.FILESYSTEM_LIKE_LOGGING - 513)) | (1 << (PlSqlParser.FILTER - 513)) | (1 << (PlSqlParser.FINAL - 513)) | (1 << (PlSqlParser.FINE - 513)) | (1 << (PlSqlParser.FINISH - 513)) | (1 << (PlSqlParser.FIRST - 513)) | (1 << (PlSqlParser.FIRSTM - 513)) | (1 << (PlSqlParser.FIRST_ROWS - 513)) | (1 << (PlSqlParser.FIRST_VALUE - 513)) | (1 << (PlSqlParser.FIXED_VIEW_DATA - 513)) | (1 << (PlSqlParser.FLAGGER - 513)) | (1 << (PlSqlParser.FLASHBACK - 513)) | (1 << (PlSqlParser.FLASH_CACHE - 513)) | (1 << (PlSqlParser.FLOAT - 513)) | (1 << (PlSqlParser.FLOB - 513)) | (1 << (PlSqlParser.FLOOR - 513)) | (1 << (PlSqlParser.FLUSH - 513)) | (1 << (PlSqlParser.FOLDER - 513)) | (1 << (PlSqlParser.FOLLOWING - 513)) | (1 << (PlSqlParser.FOLLOWS - 513)) | (1 << (PlSqlParser.FORALL - 513)) | (1 << (PlSqlParser.FORCE - 513)) | (1 << (PlSqlParser.FORCE_XML_QUERY_REWRITE - 513)) | (1 << (PlSqlParser.FOREIGN - 513)))) !== 0) || ((((_la - 545)) & ~0x1f) == 0 && ((1 << (_la - 545)) & ((1 << (PlSqlParser.FOREVER - 545)) | (1 << (PlSqlParser.FORMAT - 545)) | (1 << (PlSqlParser.FORWARD - 545)) | (1 << (PlSqlParser.FRAGMENT_NUMBER - 545)) | (1 << (PlSqlParser.FREELIST - 545)) | (1 << (PlSqlParser.FREELISTS - 545)) | (1 << (PlSqlParser.FREEPOOLS - 545)) | (1 << (PlSqlParser.FRESH - 545)) | (1 << (PlSqlParser.FROM_TZ - 545)) | (1 << (PlSqlParser.FULL - 545)) | (1 << (PlSqlParser.FULL_OUTER_JOIN_TO_OUTER - 545)) | (1 << (PlSqlParser.FUNCTION - 545)) | (1 << (PlSqlParser.FUNCTIONS - 545)) | (1 << (PlSqlParser.GATHER_OPTIMIZER_STATISTICS - 545)) | (1 << (PlSqlParser.GATHER_PLAN_STATISTICS - 545)) | (1 << (PlSqlParser.GBY_CONC_ROLLUP - 545)) | (1 << (PlSqlParser.GBY_PUSHDOWN - 545)) | (1 << (PlSqlParser.GENERATED - 545)) | (1 << (PlSqlParser.GET - 545)) | (1 << (PlSqlParser.GLOBAL - 545)) | (1 << (PlSqlParser.GLOBALLY - 545)) | (1 << (PlSqlParser.GLOBAL_NAME - 545)) | (1 << (PlSqlParser.GLOBAL_TOPIC_ENABLED - 545)) | (1 << (PlSqlParser.GROUP_BY - 545)) | (1 << (PlSqlParser.GROUP_ID - 545)) | (1 << (PlSqlParser.GROUPING - 545)) | (1 << (PlSqlParser.GROUPING_ID - 545)))) !== 0) || ((((_la - 577)) & ~0x1f) == 0 && ((1 << (_la - 577)) & ((1 << (PlSqlParser.GROUPS - 577)) | (1 << (PlSqlParser.GUARANTEED - 577)) | (1 << (PlSqlParser.GUARANTEE - 577)) | (1 << (PlSqlParser.GUARD - 577)) | (1 << (PlSqlParser.HASH_AJ - 577)) | (1 << (PlSqlParser.HASH - 577)) | (1 << (PlSqlParser.HASHKEYS - 577)) | (1 << (PlSqlParser.HASH_SJ - 577)) | (1 << (PlSqlParser.HEADER - 577)) | (1 << (PlSqlParser.HEAP - 577)) | (1 << (PlSqlParser.HELP - 577)) | (1 << (PlSqlParser.HEXTORAW - 577)) | (1 << (PlSqlParser.HEXTOREF - 577)) | (1 << (PlSqlParser.HIDDEN_KEYWORD - 577)) | (1 << (PlSqlParser.HIDE - 577)) | (1 << (PlSqlParser.HIERARCHY - 577)) | (1 << (PlSqlParser.HIGH - 577)) | (1 << (PlSqlParser.HINTSET_BEGIN - 577)) | (1 << (PlSqlParser.HINTSET_END - 577)) | (1 << (PlSqlParser.HOT - 577)) | (1 << (PlSqlParser.HOUR - 577)) | (1 << (PlSqlParser.HWM_BROKERED - 577)) | (1 << (PlSqlParser.HYBRID - 577)) | (1 << (PlSqlParser.IDENTIFIER - 577)) | (1 << (PlSqlParser.IDENTITY - 577)) | (1 << (PlSqlParser.IDGENERATORS - 577)) | (1 << (PlSqlParser.ID - 577)) | (1 << (PlSqlParser.IDLE_TIME - 577)) | (1 << (PlSqlParser.IF - 577)) | (1 << (PlSqlParser.IGNORE - 577)))) !== 0) || ((((_la - 609)) & ~0x1f) == 0 && ((1 << (_la - 609)) & ((1 << (PlSqlParser.IGNORE_OPTIM_EMBEDDED_HINTS - 609)) | (1 << (PlSqlParser.IGNORE_ROW_ON_DUPKEY_INDEX - 609)) | (1 << (PlSqlParser.IGNORE_WHERE_CLAUSE - 609)) | (1 << (PlSqlParser.ILM - 609)) | (1 << (PlSqlParser.IMMEDIATE - 609)) | (1 << (PlSqlParser.IMPACT - 609)) | (1 << (PlSqlParser.IMPORT - 609)) | (1 << (PlSqlParser.INACTIVE - 609)) | (1 << (PlSqlParser.INCLUDE - 609)) | (1 << (PlSqlParser.INCLUDE_VERSION - 609)) | (1 << (PlSqlParser.INCLUDING - 609)) | (1 << (PlSqlParser.INCREMENTAL - 609)) | (1 << (PlSqlParser.INCREMENT - 609)) | (1 << (PlSqlParser.INCR - 609)) | (1 << (PlSqlParser.INDENT - 609)) | (1 << (PlSqlParser.INDEX_ASC - 609)) | (1 << (PlSqlParser.INDEX_COMBINE - 609)) | (1 << (PlSqlParser.INDEX_DESC - 609)) | (1 << (PlSqlParser.INDEXED - 609)) | (1 << (PlSqlParser.INDEXES - 609)) | (1 << (PlSqlParser.INDEX_FFS - 609)) | (1 << (PlSqlParser.INDEX_FILTER - 609)) | (1 << (PlSqlParser.INDEXING - 609)) | (1 << (PlSqlParser.INDEX_JOIN - 609)) | (1 << (PlSqlParser.INDEX_ROWS - 609)) | (1 << (PlSqlParser.INDEX_RRS - 609)) | (1 << (PlSqlParser.INDEX_RS_ASC - 609)) | (1 << (PlSqlParser.INDEX_RS_DESC - 609)) | (1 << (PlSqlParser.INDEX_RS - 609)) | (1 << (PlSqlParser.INDEX_SCAN - 609)) | (1 << (PlSqlParser.INDEX_SKIP_SCAN - 609)))) !== 0) || ((((_la - 641)) & ~0x1f) == 0 && ((1 << (_la - 641)) & ((1 << (PlSqlParser.INDEX_SS_ASC - 641)) | (1 << (PlSqlParser.INDEX_SS_DESC - 641)) | (1 << (PlSqlParser.INDEX_SS - 641)) | (1 << (PlSqlParser.INDEX_STATS - 641)) | (1 << (PlSqlParser.INDEXTYPE - 641)) | (1 << (PlSqlParser.INDEXTYPES - 641)) | (1 << (PlSqlParser.INDICATOR - 641)) | (1 << (PlSqlParser.INDICES - 641)) | (1 << (PlSqlParser.INFINITE - 641)) | (1 << (PlSqlParser.INFORMATIONAL - 641)) | (1 << (PlSqlParser.INHERIT - 641)) | (1 << (PlSqlParser.INITCAP - 641)) | (1 << (PlSqlParser.INITIAL - 641)) | (1 << (PlSqlParser.INITIALIZED - 641)) | (1 << (PlSqlParser.INITIALLY - 641)) | (1 << (PlSqlParser.INITRANS - 641)) | (1 << (PlSqlParser.INLINE - 641)) | (1 << (PlSqlParser.INLINE_XMLTYPE_NT - 641)) | (1 << (PlSqlParser.INMEMORY - 641)) | (1 << (PlSqlParser.IN_MEMORY_METADATA - 641)) | (1 << (PlSqlParser.INMEMORY_PRUNING - 641)) | (1 << (PlSqlParser.INNER - 641)) | (1 << (PlSqlParser.INOUT - 641)) | (1 << (PlSqlParser.INPLACE - 641)) | (1 << (PlSqlParser.INSERTCHILDXMLAFTER - 641)) | (1 << (PlSqlParser.INSERTCHILDXMLBEFORE - 641)) | (1 << (PlSqlParser.INSERTCHILDXML - 641)) | (1 << (PlSqlParser.INSERTXMLAFTER - 641)) | (1 << (PlSqlParser.INSERTXMLBEFORE - 641)) | (1 << (PlSqlParser.INSTANCE - 641)))) !== 0) || ((((_la - 673)) & ~0x1f) == 0 && ((1 << (_la - 673)) & ((1 << (PlSqlParser.INSTANCES - 673)) | (1 << (PlSqlParser.INSTANTIABLE - 673)) | (1 << (PlSqlParser.INSTANTLY - 673)) | (1 << (PlSqlParser.INSTEAD - 673)) | (1 << (PlSqlParser.INSTR2 - 673)) | (1 << (PlSqlParser.INSTR4 - 673)) | (1 << (PlSqlParser.INSTRB - 673)) | (1 << (PlSqlParser.INSTRC - 673)) | (1 << (PlSqlParser.INSTR - 673)) | (1 << (PlSqlParser.INTEGER - 673)) | (1 << (PlSqlParser.INTERLEAVED - 673)) | (1 << (PlSqlParser.INTERMEDIATE - 673)) | (1 << (PlSqlParser.INTERNAL_CONVERT - 673)) | (1 << (PlSqlParser.INTERNAL_USE - 673)) | (1 << (PlSqlParser.INTERPRETED - 673)) | (1 << (PlSqlParser.INTERVAL - 673)) | (1 << (PlSqlParser.INT - 673)) | (1 << (PlSqlParser.INVALIDATE - 673)) | (1 << (PlSqlParser.INVISIBLE - 673)) | (1 << (PlSqlParser.IN_XQUERY - 673)) | (1 << (PlSqlParser.ISOLATION - 673)) | (1 << (PlSqlParser.ISOLATION_LEVEL - 673)) | (1 << (PlSqlParser.ITERATE - 673)) | (1 << (PlSqlParser.ITERATION_NUMBER - 673)) | (1 << (PlSqlParser.JAVA - 673)) | (1 << (PlSqlParser.JOB - 673)) | (1 << (PlSqlParser.JOIN - 673)) | (1 << (PlSqlParser.JSON_ARRAYAGG - 673)) | (1 << (PlSqlParser.JSON_ARRAY - 673)))) !== 0) || ((((_la - 705)) & ~0x1f) == 0 && ((1 << (_la - 705)) & ((1 << (PlSqlParser.JSON_EQUAL - 705)) | (1 << (PlSqlParser.JSON_EXISTS2 - 705)) | (1 << (PlSqlParser.JSON_EXISTS - 705)) | (1 << (PlSqlParser.JSONGET - 705)) | (1 << (PlSqlParser.JSON - 705)) | (1 << (PlSqlParser.JSON_OBJECTAGG - 705)) | (1 << (PlSqlParser.JSON_OBJECT - 705)) | (1 << (PlSqlParser.JSONPARSE - 705)) | (1 << (PlSqlParser.JSON_QUERY - 705)) | (1 << (PlSqlParser.JSON_SERIALIZE - 705)) | (1 << (PlSqlParser.JSON_TABLE - 705)) | (1 << (PlSqlParser.JSON_TEXTCONTAINS2 - 705)) | (1 << (PlSqlParser.JSON_TEXTCONTAINS - 705)) | (1 << (PlSqlParser.JSON_VALUE - 705)) | (1 << (PlSqlParser.KEEP_DUPLICATES - 705)) | (1 << (PlSqlParser.KEEP - 705)) | (1 << (PlSqlParser.KERBEROS - 705)) | (1 << (PlSqlParser.KEY - 705)) | (1 << (PlSqlParser.KEY_LENGTH - 705)) | (1 << (PlSqlParser.KEYSIZE - 705)) | (1 << (PlSqlParser.KEYS - 705)) | (1 << (PlSqlParser.KEYSTORE - 705)) | (1 << (PlSqlParser.KILL - 705)) | (1 << (PlSqlParser.LABEL - 705)) | (1 << (PlSqlParser.LANGUAGE - 705)) | (1 << (PlSqlParser.LAST_DAY - 705)) | (1 << (PlSqlParser.LAST - 705)) | (1 << (PlSqlParser.LAST_VALUE - 705)) | (1 << (PlSqlParser.LATERAL - 705)) | (1 << (PlSqlParser.LAX - 705)) | (1 << (PlSqlParser.LAYER - 705)) | (1 << (PlSqlParser.LDAP_REGISTRATION_ENABLED - 705)))) !== 0) || ((((_la - 737)) & ~0x1f) == 0 && ((1 << (_la - 737)) & ((1 << (PlSqlParser.LDAP_REGISTRATION - 737)) | (1 << (PlSqlParser.LDAP_REG_SYNC_INTERVAL - 737)) | (1 << (PlSqlParser.LEADING - 737)) | (1 << (PlSqlParser.LEFT - 737)) | (1 << (PlSqlParser.LENGTH2 - 737)) | (1 << (PlSqlParser.LENGTH4 - 737)) | (1 << (PlSqlParser.LENGTHB - 737)) | (1 << (PlSqlParser.LENGTHC - 737)) | (1 << (PlSqlParser.LENGTH - 737)) | (1 << (PlSqlParser.LESS - 737)) | (1 << (PlSqlParser.LEVEL - 737)) | (1 << (PlSqlParser.LEVELS - 737)) | (1 << (PlSqlParser.LIBRARY - 737)) | (1 << (PlSqlParser.LIFECYCLE - 737)) | (1 << (PlSqlParser.LIFE - 737)) | (1 << (PlSqlParser.LIFETIME - 737)) | (1 << (PlSqlParser.LIKE2 - 737)) | (1 << (PlSqlParser.LIKE4 - 737)) | (1 << (PlSqlParser.LIKEC - 737)) | (1 << (PlSqlParser.LIKE_EXPAND - 737)) | (1 << (PlSqlParser.LIMIT - 737)) | (1 << (PlSqlParser.LINEAR - 737)) | (1 << (PlSqlParser.LINK - 737)) | (1 << (PlSqlParser.LIST - 737)) | (1 << (PlSqlParser.LN - 737)) | (1 << (PlSqlParser.LNNVL - 737)) | (1 << (PlSqlParser.LOAD - 737)) | (1 << (PlSqlParser.LOB - 737)) | (1 << (PlSqlParser.LOBNVL - 737)) | (1 << (PlSqlParser.LOBS - 737)) | (1 << (PlSqlParser.LOCAL_INDEXES - 737)))) !== 0) || ((((_la - 769)) & ~0x1f) == 0 && ((1 << (_la - 769)) & ((1 << (PlSqlParser.LOCAL - 769)) | (1 << (PlSqlParser.LOCALTIME - 769)) | (1 << (PlSqlParser.LOCALTIMESTAMP - 769)) | (1 << (PlSqlParser.LOCATION - 769)) | (1 << (PlSqlParser.LOCATOR - 769)) | (1 << (PlSqlParser.LOCKED - 769)) | (1 << (PlSqlParser.LOCKING - 769)) | (1 << (PlSqlParser.LOGFILE - 769)) | (1 << (PlSqlParser.LOGFILES - 769)) | (1 << (PlSqlParser.LOGGING - 769)) | (1 << (PlSqlParser.LOGICAL - 769)) | (1 << (PlSqlParser.LOGICAL_READS_PER_CALL - 769)) | (1 << (PlSqlParser.LOGICAL_READS_PER_SESSION - 769)) | (1 << (PlSqlParser.LOG - 769)) | (1 << (PlSqlParser.LOGMINING - 769)) | (1 << (PlSqlParser.LOGOFF - 769)) | (1 << (PlSqlParser.LOGON - 769)) | (1 << (PlSqlParser.LOG_READ_ONLY_VIOLATIONS - 769)) | (1 << (PlSqlParser.LONG - 769)) | (1 << (PlSqlParser.LOOP - 769)) | (1 << (PlSqlParser.LOWER - 769)) | (1 << (PlSqlParser.LOW - 769)) | (1 << (PlSqlParser.LPAD - 769)) | (1 << (PlSqlParser.LTRIM - 769)) | (1 << (PlSqlParser.MAIN - 769)) | (1 << (PlSqlParser.MAKE_REF - 769)) | (1 << (PlSqlParser.MANAGED - 769)) | (1 << (PlSqlParser.MANAGE - 769)) | (1 << (PlSqlParser.MANAGEMENT - 769)) | (1 << (PlSqlParser.MANAGER - 769)) | (1 << (PlSqlParser.MANUAL - 769)))) !== 0) || ((((_la - 801)) & ~0x1f) == 0 && ((1 << (_la - 801)) & ((1 << (PlSqlParser.MAP - 801)) | (1 << (PlSqlParser.MAPPING - 801)) | (1 << (PlSqlParser.MASTER - 801)) | (1 << (PlSqlParser.MATCHED - 801)) | (1 << (PlSqlParser.MATCHES - 801)) | (1 << (PlSqlParser.MATCH - 801)) | (1 << (PlSqlParser.MATCH_NUMBER - 801)) | (1 << (PlSqlParser.MATCH_RECOGNIZE - 801)) | (1 << (PlSqlParser.MATERIALIZED - 801)) | (1 << (PlSqlParser.MATERIALIZE - 801)) | (1 << (PlSqlParser.MAXARCHLOGS - 801)) | (1 << (PlSqlParser.MAXDATAFILES - 801)) | (1 << (PlSqlParser.MAXEXTENTS - 801)) | (1 << (PlSqlParser.MAXIMIZE - 801)) | (1 << (PlSqlParser.MAXINSTANCES - 801)) | (1 << (PlSqlParser.MAXLOGFILES - 801)) | (1 << (PlSqlParser.MAXLOGHISTORY - 801)) | (1 << (PlSqlParser.MAXLOGMEMBERS - 801)) | (1 << (PlSqlParser.MAX_SHARED_TEMP_SIZE - 801)) | (1 << (PlSqlParser.MAXSIZE - 801)) | (1 << (PlSqlParser.MAXTRANS - 801)) | (1 << (PlSqlParser.MAXVALUE - 801)) | (1 << (PlSqlParser.MEASURE - 801)) | (1 << (PlSqlParser.MEASURES - 801)) | (1 << (PlSqlParser.MEDIUM - 801)) | (1 << (PlSqlParser.MEMBER - 801)) | (1 << (PlSqlParser.MEMCOMPRESS - 801)) | (1 << (PlSqlParser.MEMORY - 801)) | (1 << (PlSqlParser.MERGEACTIONS - 801)) | (1 << (PlSqlParser.MERGE_AJ - 801)) | (1 << (PlSqlParser.MERGE_CONST_ON - 801)) | (1 << (PlSqlParser.MERGE - 801)))) !== 0) || ((((_la - 833)) & ~0x1f) == 0 && ((1 << (_la - 833)) & ((1 << (PlSqlParser.MERGE_SJ - 833)) | (1 << (PlSqlParser.METADATA - 833)) | (1 << (PlSqlParser.METHOD - 833)) | (1 << (PlSqlParser.MIGRATE - 833)) | (1 << (PlSqlParser.MIGRATION - 833)) | (1 << (PlSqlParser.MINEXTENTS - 833)) | (1 << (PlSqlParser.MINIMIZE - 833)) | (1 << (PlSqlParser.MINIMUM - 833)) | (1 << (PlSqlParser.MINING - 833)) | (1 << (PlSqlParser.MINUS_NULL - 833)) | (1 << (PlSqlParser.MINUTE - 833)) | (1 << (PlSqlParser.MINVALUE - 833)) | (1 << (PlSqlParser.MIRRORCOLD - 833)) | (1 << (PlSqlParser.MIRRORHOT - 833)) | (1 << (PlSqlParser.MIRROR - 833)) | (1 << (PlSqlParser.MLSLABEL - 833)) | (1 << (PlSqlParser.MODEL_COMPILE_SUBQUERY - 833)) | (1 << (PlSqlParser.MODEL_DONTVERIFY_UNIQUENESS - 833)) | (1 << (PlSqlParser.MODEL_DYNAMIC_SUBQUERY - 833)) | (1 << (PlSqlParser.MODEL_MIN_ANALYSIS - 833)) | (1 << (PlSqlParser.MODEL - 833)) | (1 << (PlSqlParser.MODEL_NB - 833)) | (1 << (PlSqlParser.MODEL_NO_ANALYSIS - 833)) | (1 << (PlSqlParser.MODEL_PBY - 833)) | (1 << (PlSqlParser.MODEL_PUSH_REF - 833)) | (1 << (PlSqlParser.MODEL_SV - 833)) | (1 << (PlSqlParser.MODIFICATION - 833)) | (1 << (PlSqlParser.MODIFY_COLUMN_TYPE - 833)) | (1 << (PlSqlParser.MODIFY - 833)) | (1 << (PlSqlParser.MOD - 833)))) !== 0) || ((((_la - 865)) & ~0x1f) == 0 && ((1 << (_la - 865)) & ((1 << (PlSqlParser.MODULE - 865)) | (1 << (PlSqlParser.MONITORING - 865)) | (1 << (PlSqlParser.MONITOR - 865)) | (1 << (PlSqlParser.MONTH - 865)) | (1 << (PlSqlParser.MONTHS_BETWEEN - 865)) | (1 << (PlSqlParser.MONTHS - 865)) | (1 << (PlSqlParser.MOUNT - 865)) | (1 << (PlSqlParser.MOUNTPATH - 865)) | (1 << (PlSqlParser.MOVEMENT - 865)) | (1 << (PlSqlParser.MOVE - 865)) | (1 << (PlSqlParser.MULTIDIMENSIONAL - 865)) | (1 << (PlSqlParser.MULTISET - 865)) | (1 << (PlSqlParser.MV_MERGE - 865)) | (1 << (PlSqlParser.NAMED - 865)) | (1 << (PlSqlParser.NAME - 865)) | (1 << (PlSqlParser.NAMESPACE - 865)) | (1 << (PlSqlParser.NAN - 865)) | (1 << (PlSqlParser.NANVL - 865)) | (1 << (PlSqlParser.NATIONAL - 865)) | (1 << (PlSqlParser.NATIVE_FULL_OUTER_JOIN - 865)) | (1 << (PlSqlParser.NATIVE - 865)) | (1 << (PlSqlParser.NATURAL - 865)) | (1 << (PlSqlParser.NAV - 865)) | (1 << (PlSqlParser.NCHAR_CS - 865)) | (1 << (PlSqlParser.NCHAR - 865)) | (1 << (PlSqlParser.NCHR - 865)) | (1 << (PlSqlParser.NCLOB - 865)) | (1 << (PlSqlParser.NEEDED - 865)) | (1 << (PlSqlParser.NEG - 865)) | (1 << (PlSqlParser.NESTED - 865)) | (1 << (PlSqlParser.NESTED_TABLE_FAST_INSERT - 865)))) !== 0) || ((((_la - 897)) & ~0x1f) == 0 && ((1 << (_la - 897)) & ((1 << (PlSqlParser.NESTED_TABLE_GET_REFS - 897)) | (1 << (PlSqlParser.NESTED_TABLE_ID - 897)) | (1 << (PlSqlParser.NESTED_TABLE_SET_REFS - 897)) | (1 << (PlSqlParser.NESTED_TABLE_SET_SETID - 897)) | (1 << (PlSqlParser.NETWORK - 897)) | (1 << (PlSqlParser.NEVER - 897)) | (1 << (PlSqlParser.NEW - 897)) | (1 << (PlSqlParser.NEW_TIME - 897)) | (1 << (PlSqlParser.NEXT_DAY - 897)) | (1 << (PlSqlParser.NEXT - 897)) | (1 << (PlSqlParser.NL_AJ - 897)) | (1 << (PlSqlParser.NLJ_BATCHING - 897)) | (1 << (PlSqlParser.NLJ_INDEX_FILTER - 897)) | (1 << (PlSqlParser.NLJ_INDEX_SCAN - 897)) | (1 << (PlSqlParser.NLJ_PREFETCH - 897)) | (1 << (PlSqlParser.NLS_CALENDAR - 897)) | (1 << (PlSqlParser.NLS_CHARACTERSET - 897)) | (1 << (PlSqlParser.NLS_CHARSET_DECL_LEN - 897)) | (1 << (PlSqlParser.NLS_CHARSET_ID - 897)) | (1 << (PlSqlParser.NLS_CHARSET_NAME - 897)) | (1 << (PlSqlParser.NLS_COMP - 897)) | (1 << (PlSqlParser.NLS_CURRENCY - 897)) | (1 << (PlSqlParser.NLS_DATE_FORMAT - 897)) | (1 << (PlSqlParser.NLS_DATE_LANGUAGE - 897)) | (1 << (PlSqlParser.NLS_INITCAP - 897)) | (1 << (PlSqlParser.NLS_ISO_CURRENCY - 897)) | (1 << (PlSqlParser.NL_SJ - 897)) | (1 << (PlSqlParser.NLS_LANG - 897)) | (1 << (PlSqlParser.NLS_LANGUAGE - 897)) | (1 << (PlSqlParser.NLS_LENGTH_SEMANTICS - 897)) | (1 << (PlSqlParser.NLS_LOWER - 897)) | (1 << (PlSqlParser.NLS_NCHAR_CONV_EXCP - 897)))) !== 0) || ((((_la - 929)) & ~0x1f) == 0 && ((1 << (_la - 929)) & ((1 << (PlSqlParser.NLS_NUMERIC_CHARACTERS - 929)) | (1 << (PlSqlParser.NLS_SORT - 929)) | (1 << (PlSqlParser.NLSSORT - 929)) | (1 << (PlSqlParser.NLS_SPECIAL_CHARS - 929)) | (1 << (PlSqlParser.NLS_TERRITORY - 929)) | (1 << (PlSqlParser.NLS_UPPER - 929)) | (1 << (PlSqlParser.NO_ACCESS - 929)) | (1 << (PlSqlParser.NO_ADAPTIVE_PLAN - 929)) | (1 << (PlSqlParser.NO_ANSI_REARCH - 929)) | (1 << (PlSqlParser.NOAPPEND - 929)) | (1 << (PlSqlParser.NOARCHIVELOG - 929)) | (1 << (PlSqlParser.NOAUDIT - 929)) | (1 << (PlSqlParser.NO_AUTO_REOPTIMIZE - 929)) | (1 << (PlSqlParser.NO_BASETABLE_MULTIMV_REWRITE - 929)) | (1 << (PlSqlParser.NO_BATCH_TABLE_ACCESS_BY_ROWID - 929)) | (1 << (PlSqlParser.NO_BIND_AWARE - 929)) | (1 << (PlSqlParser.NO_BUFFER - 929)) | (1 << (PlSqlParser.NOCACHE - 929)) | (1 << (PlSqlParser.NO_CARTESIAN - 929)) | (1 << (PlSqlParser.NO_CHECK_ACL_REWRITE - 929)) | (1 << (PlSqlParser.NO_CLUSTER_BY_ROWID - 929)) | (1 << (PlSqlParser.NO_CLUSTERING - 929)) | (1 << (PlSqlParser.NO_COALESCE_SQ - 929)) | (1 << (PlSqlParser.NO_COMMON_DATA - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_CB_WHR_ONLY - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_COMBINE_SW - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_COST_BASED - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_ELIM_DUPS - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_FILTERING - 929)) | (1 << (PlSqlParser.NOCOPY - 929)) | (1 << (PlSqlParser.NO_COST_XML_QUERY_REWRITE - 929)))) !== 0) || ((((_la - 961)) & ~0x1f) == 0 && ((1 << (_la - 961)) & ((1 << (PlSqlParser.NO_CPU_COSTING - 961)) | (1 << (PlSqlParser.NOCPU_COSTING - 961)) | (1 << (PlSqlParser.NOCYCLE - 961)) | (1 << (PlSqlParser.NO_DATA_SECURITY_REWRITE - 961)) | (1 << (PlSqlParser.NO_DECORRELATE - 961)) | (1 << (PlSqlParser.NODELAY - 961)) | (1 << (PlSqlParser.NO_DOMAIN_INDEX_FILTER - 961)) | (1 << (PlSqlParser.NO_DST_UPGRADE_INSERT_CONV - 961)) | (1 << (PlSqlParser.NO_ELIM_GROUPBY - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_JOIN - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_OBY - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_OUTER_JOIN - 961)) | (1 << (PlSqlParser.NOENTITYESCAPING - 961)) | (1 << (PlSqlParser.NO_EXPAND_GSET_TO_UNION - 961)) | (1 << (PlSqlParser.NO_EXPAND - 961)) | (1 << (PlSqlParser.NO_EXPAND_TABLE - 961)) | (1 << (PlSqlParser.NO_FACT - 961)) | (1 << (PlSqlParser.NO_FACTORIZE_JOIN - 961)) | (1 << (PlSqlParser.NO_FILTERING - 961)) | (1 << (PlSqlParser.NOFORCE - 961)) | (1 << (PlSqlParser.NO_FULL_OUTER_JOIN_TO_OUTER - 961)) | (1 << (PlSqlParser.NO_GATHER_OPTIMIZER_STATISTICS - 961)) | (1 << (PlSqlParser.NO_GBY_PUSHDOWN - 961)) | (1 << (PlSqlParser.NOGUARANTEE - 961)) | (1 << (PlSqlParser.NO_INDEX_FFS - 961)) | (1 << (PlSqlParser.NO_INDEX - 961)) | (1 << (PlSqlParser.NO_INDEX_SS - 961)) | (1 << (PlSqlParser.NO_INMEMORY - 961)) | (1 << (PlSqlParser.NO_INMEMORY_PRUNING - 961)) | (1 << (PlSqlParser.NOKEEP - 961)) | (1 << (PlSqlParser.NO_LOAD - 961)) | (1 << (PlSqlParser.NOLOCAL - 961)))) !== 0) || ((((_la - 993)) & ~0x1f) == 0 && ((1 << (_la - 993)) & ((1 << (PlSqlParser.NOLOGGING - 993)) | (1 << (PlSqlParser.NOMAPPING - 993)) | (1 << (PlSqlParser.NOMAXVALUE - 993)) | (1 << (PlSqlParser.NO_MERGE - 993)) | (1 << (PlSqlParser.NOMINIMIZE - 993)) | (1 << (PlSqlParser.NOMINVALUE - 993)) | (1 << (PlSqlParser.NO_MODEL_PUSH_REF - 993)) | (1 << (PlSqlParser.NO_MONITORING - 993)) | (1 << (PlSqlParser.NOMONITORING - 993)) | (1 << (PlSqlParser.NO_MONITOR - 993)) | (1 << (PlSqlParser.NO_MULTIMV_REWRITE - 993)) | (1 << (PlSqlParser.NO_NATIVE_FULL_OUTER_JOIN - 993)) | (1 << (PlSqlParser.NONBLOCKING - 993)) | (1 << (PlSqlParser.NONEDITIONABLE - 993)) | (1 << (PlSqlParser.NONE - 993)) | (1 << (PlSqlParser.NO_NLJ_BATCHING - 993)) | (1 << (PlSqlParser.NO_NLJ_PREFETCH - 993)) | (1 << (PlSqlParser.NO - 993)) | (1 << (PlSqlParser.NONSCHEMA - 993)) | (1 << (PlSqlParser.NO_OBJECT_LINK - 993)) | (1 << (PlSqlParser.NOORDER - 993)) | (1 << (PlSqlParser.NO_ORDER_ROLLUPS - 993)) | (1 << (PlSqlParser.NO_OUTER_JOIN_TO_ANTI - 993)) | (1 << (PlSqlParser.NO_OUTER_JOIN_TO_INNER - 993)) | (1 << (PlSqlParser.NOOVERRIDE - 993)) | (1 << (PlSqlParser.NO_PARALLEL_INDEX - 993)) | (1 << (PlSqlParser.NOPARALLEL_INDEX - 993)) | (1 << (PlSqlParser.NO_PARALLEL - 993)) | (1 << (PlSqlParser.NOPARALLEL - 993)) | (1 << (PlSqlParser.NO_PARTIAL_COMMIT - 993)) | (1 << (PlSqlParser.NO_PARTIAL_JOIN - 993)) | (1 << (PlSqlParser.NO_PARTIAL_ROLLUP_PUSHDOWN - 993)))) !== 0) || ((((_la - 1025)) & ~0x1f) == 0 && ((1 << (_la - 1025)) & ((1 << (PlSqlParser.NOPARTITION - 1025)) | (1 << (PlSqlParser.NO_PLACE_DISTINCT - 1025)) | (1 << (PlSqlParser.NO_PLACE_GROUP_BY - 1025)) | (1 << (PlSqlParser.NO_PQ_CONCURRENT_UNION - 1025)) | (1 << (PlSqlParser.NO_PQ_MAP - 1025)) | (1 << (PlSqlParser.NO_PQ_REPLICATE - 1025)) | (1 << (PlSqlParser.NO_PQ_SKEW - 1025)) | (1 << (PlSqlParser.NO_PRUNE_GSETS - 1025)) | (1 << (PlSqlParser.NO_PULL_PRED - 1025)) | (1 << (PlSqlParser.NO_PUSH_PRED - 1025)) | (1 << (PlSqlParser.NO_PUSH_SUBQ - 1025)) | (1 << (PlSqlParser.NO_PX_FAULT_TOLERANCE - 1025)) | (1 << (PlSqlParser.NO_PX_JOIN_FILTER - 1025)) | (1 << (PlSqlParser.NO_QKN_BUFF - 1025)) | (1 << (PlSqlParser.NO_QUERY_TRANSFORMATION - 1025)) | (1 << (PlSqlParser.NO_REF_CASCADE - 1025)) | (1 << (PlSqlParser.NORELOCATE - 1025)) | (1 << (PlSqlParser.NORELY - 1025)) | (1 << (PlSqlParser.NOREPAIR - 1025)) | (1 << (PlSqlParser.NOREPLAY - 1025)) | (1 << (PlSqlParser.NORESETLOGS - 1025)) | (1 << (PlSqlParser.NO_RESULT_CACHE - 1025)) | (1 << (PlSqlParser.NOREVERSE - 1025)) | (1 << (PlSqlParser.NO_REWRITE - 1025)) | (1 << (PlSqlParser.NOREWRITE - 1025)) | (1 << (PlSqlParser.NORMAL - 1025)) | (1 << (PlSqlParser.NO_ROOT_SW_FOR_LOCAL - 1025)) | (1 << (PlSqlParser.NOROWDEPENDENCIES - 1025)) | (1 << (PlSqlParser.NOSCHEMACHECK - 1025)) | (1 << (PlSqlParser.NOSEGMENT - 1025)) | (1 << (PlSqlParser.NO_SEMIJOIN - 1025)) | (1 << (PlSqlParser.NO_SEMI_TO_INNER - 1025)))) !== 0) || ((((_la - 1057)) & ~0x1f) == 0 && ((1 << (_la - 1057)) & ((1 << (PlSqlParser.NO_SET_TO_JOIN - 1057)) | (1 << (PlSqlParser.NOSORT - 1057)) | (1 << (PlSqlParser.NO_SQL_TRANSLATION - 1057)) | (1 << (PlSqlParser.NO_SQL_TUNE - 1057)) | (1 << (PlSqlParser.NO_STAR_TRANSFORMATION - 1057)) | (1 << (PlSqlParser.NO_STATEMENT_QUEUING - 1057)) | (1 << (PlSqlParser.NO_STATS_GSETS - 1057)) | (1 << (PlSqlParser.NOSTRICT - 1057)) | (1 << (PlSqlParser.NO_SUBQUERY_PRUNING - 1057)) | (1 << (PlSqlParser.NO_SUBSTRB_PAD - 1057)) | (1 << (PlSqlParser.NO_SWAP_JOIN_INPUTS - 1057)) | (1 << (PlSqlParser.NOSWITCH - 1057)) | (1 << (PlSqlParser.NO_TABLE_LOOKUP_BY_NL - 1057)) | (1 << (PlSqlParser.NO_TEMP_TABLE - 1057)) | (1 << (PlSqlParser.NOTHING - 1057)) | (1 << (PlSqlParser.NOTIFICATION - 1057)) | (1 << (PlSqlParser.NO_TRANSFORM_DISTINCT_AGG - 1057)) | (1 << (PlSqlParser.NO_UNNEST - 1057)) | (1 << (PlSqlParser.NO_USE_CUBE - 1057)) | (1 << (PlSqlParser.NO_USE_HASH_AGGREGATION - 1057)) | (1 << (PlSqlParser.NO_USE_HASH_GBY_FOR_PUSHDOWN - 1057)) | (1 << (PlSqlParser.NO_USE_HASH - 1057)) | (1 << (PlSqlParser.NO_USE_INVISIBLE_INDEXES - 1057)) | (1 << (PlSqlParser.NO_USE_MERGE - 1057)) | (1 << (PlSqlParser.NO_USE_NL - 1057)) | (1 << (PlSqlParser.NO_USE_VECTOR_AGGREGATION - 1057)) | (1 << (PlSqlParser.NOVALIDATE - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM_DIMS - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM_FACT - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM - 1057)))) !== 0) || ((((_la - 1089)) & ~0x1f) == 0 && ((1 << (_la - 1089)) & ((1 << (PlSqlParser.NO_XDB_FASTPATH_INSERT - 1089)) | (1 << (PlSqlParser.NO_XML_DML_REWRITE - 1089)) | (1 << (PlSqlParser.NO_XMLINDEX_REWRITE_IN_SELECT - 1089)) | (1 << (PlSqlParser.NO_XMLINDEX_REWRITE - 1089)) | (1 << (PlSqlParser.NO_XML_QUERY_REWRITE - 1089)) | (1 << (PlSqlParser.NO_ZONEMAP - 1089)) | (1 << (PlSqlParser.NTH_VALUE - 1089)) | (1 << (PlSqlParser.NULLIF - 1089)) | (1 << (PlSqlParser.NULLS - 1089)) | (1 << (PlSqlParser.NUMBER - 1089)) | (1 << (PlSqlParser.NUMERIC - 1089)) | (1 << (PlSqlParser.NUM_INDEX_KEYS - 1089)) | (1 << (PlSqlParser.NUMTODSINTERVAL - 1089)) | (1 << (PlSqlParser.NUMTOYMINTERVAL - 1089)) | (1 << (PlSqlParser.NVARCHAR2 - 1089)) | (1 << (PlSqlParser.NVL2 - 1089)) | (1 << (PlSqlParser.OBJECT2XML - 1089)) | (1 << (PlSqlParser.OBJECT - 1089)) | (1 << (PlSqlParser.OBJ_ID - 1089)) | (1 << (PlSqlParser.OBJNO - 1089)) | (1 << (PlSqlParser.OBJNO_REUSE - 1089)) | (1 << (PlSqlParser.OCCURENCES - 1089)) | (1 << (PlSqlParser.OFFLINE - 1089)) | (1 << (PlSqlParser.OFF - 1089)) | (1 << (PlSqlParser.OFFSET - 1089)) | (1 << (PlSqlParser.OIDINDEX - 1089)) | (1 << (PlSqlParser.OID - 1089)) | (1 << (PlSqlParser.OLAP - 1089)) | (1 << (PlSqlParser.OLD - 1089)) | (1 << (PlSqlParser.OLD_PUSH_PRED - 1089)))) !== 0) || ((((_la - 1121)) & ~0x1f) == 0 && ((1 << (_la - 1121)) & ((1 << (PlSqlParser.OLS - 1121)) | (1 << (PlSqlParser.OLTP - 1121)) | (1 << (PlSqlParser.OMIT - 1121)) | (1 << (PlSqlParser.ONE - 1121)) | (1 << (PlSqlParser.ONLINE - 1121)) | (1 << (PlSqlParser.ONLY - 1121)) | (1 << (PlSqlParser.OPAQUE - 1121)) | (1 << (PlSqlParser.OPAQUE_TRANSFORM - 1121)) | (1 << (PlSqlParser.OPAQUE_XCANONICAL - 1121)) | (1 << (PlSqlParser.OPCODE - 1121)) | (1 << (PlSqlParser.OPEN - 1121)) | (1 << (PlSqlParser.OPERATIONS - 1121)) | (1 << (PlSqlParser.OPERATOR - 1121)) | (1 << (PlSqlParser.OPT_ESTIMATE - 1121)) | (1 << (PlSqlParser.OPTIMAL - 1121)) | (1 << (PlSqlParser.OPTIMIZE - 1121)) | (1 << (PlSqlParser.OPTIMIZER_FEATURES_ENABLE - 1121)) | (1 << (PlSqlParser.OPTIMIZER_GOAL - 1121)) | (1 << (PlSqlParser.OPT_PARAM - 1121)) | (1 << (PlSqlParser.ORA_BRANCH - 1121)) | (1 << (PlSqlParser.ORA_CHECK_ACL - 1121)) | (1 << (PlSqlParser.ORA_CHECK_PRIVILEGE - 1121)) | (1 << (PlSqlParser.ORA_CLUSTERING - 1121)) | (1 << (PlSqlParser.ORADATA - 1121)) | (1 << (PlSqlParser.ORADEBUG - 1121)) | (1 << (PlSqlParser.ORA_DST_AFFECTED - 1121)) | (1 << (PlSqlParser.ORA_DST_CONVERT - 1121)) | (1 << (PlSqlParser.ORA_DST_ERROR - 1121)) | (1 << (PlSqlParser.ORA_GET_ACLIDS - 1121)))) !== 0) || ((((_la - 1153)) & ~0x1f) == 0 && ((1 << (_la - 1153)) & ((1 << (PlSqlParser.ORA_GET_PRIVILEGES - 1153)) | (1 << (PlSqlParser.ORA_HASH - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_USERID - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_USER - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_XS_USER_GUID - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_XS_USER - 1153)) | (1 << (PlSqlParser.ORA_RAWCOMPARE - 1153)) | (1 << (PlSqlParser.ORA_RAWCONCAT - 1153)) | (1 << (PlSqlParser.ORA_ROWSCN - 1153)) | (1 << (PlSqlParser.ORA_ROWSCN_RAW - 1153)) | (1 << (PlSqlParser.ORA_ROWVERSION - 1153)) | (1 << (PlSqlParser.ORA_TABVERSION - 1153)) | (1 << (PlSqlParser.ORA_WRITE_TIME - 1153)) | (1 << (PlSqlParser.ORDERED - 1153)) | (1 << (PlSqlParser.ORDERED_PREDICATES - 1153)) | (1 << (PlSqlParser.ORDINALITY - 1153)) | (1 << (PlSqlParser.OR_EXPAND - 1153)) | (1 << (PlSqlParser.ORGANIZATION - 1153)) | (1 << (PlSqlParser.OR_PREDICATES - 1153)) | (1 << (PlSqlParser.OSERROR - 1153)) | (1 << (PlSqlParser.OTHER - 1153)) | (1 << (PlSqlParser.OUTER_JOIN_TO_ANTI - 1153)) | (1 << (PlSqlParser.OUTER_JOIN_TO_INNER - 1153)) | (1 << (PlSqlParser.OUTER - 1153)) | (1 << (PlSqlParser.OUTLINE_LEAF - 1153)) | (1 << (PlSqlParser.OUTLINE - 1153)) | (1 << (PlSqlParser.OUT_OF_LINE - 1153)) | (1 << (PlSqlParser.OUT - 1153)) | (1 << (PlSqlParser.OVERFLOW_NOMOVE - 1153)) | (1 << (PlSqlParser.OVERFLOW - 1153)))) !== 0) || ((((_la - 1185)) & ~0x1f) == 0 && ((1 << (_la - 1185)) & ((1 << (PlSqlParser.OVERLAPS - 1185)) | (1 << (PlSqlParser.OVER - 1185)) | (1 << (PlSqlParser.OVERRIDING - 1185)) | (1 << (PlSqlParser.OWNER - 1185)) | (1 << (PlSqlParser.OWNERSHIP - 1185)) | (1 << (PlSqlParser.OWN - 1185)) | (1 << (PlSqlParser.PACKAGE - 1185)) | (1 << (PlSqlParser.PACKAGES - 1185)) | (1 << (PlSqlParser.PARALLEL_ENABLE - 1185)) | (1 << (PlSqlParser.PARALLEL_INDEX - 1185)) | (1 << (PlSqlParser.PARALLEL - 1185)) | (1 << (PlSqlParser.PARAMETERS - 1185)) | (1 << (PlSqlParser.PARAM - 1185)) | (1 << (PlSqlParser.PARENT - 1185)) | (1 << (PlSqlParser.PARITY - 1185)) | (1 << (PlSqlParser.PARTIAL_JOIN - 1185)) | (1 << (PlSqlParser.PARTIALLY - 1185)) | (1 << (PlSqlParser.PARTIAL - 1185)) | (1 << (PlSqlParser.PARTIAL_ROLLUP_PUSHDOWN - 1185)) | (1 << (PlSqlParser.PARTITION_HASH - 1185)) | (1 << (PlSqlParser.PARTITION_LIST - 1185)) | (1 << (PlSqlParser.PARTITION - 1185)) | (1 << (PlSqlParser.PARTITION_RANGE - 1185)) | (1 << (PlSqlParser.PARTITIONS - 1185)) | (1 << (PlSqlParser.PARTNUMINST - 1185)) | (1 << (PlSqlParser.PASSING - 1185)) | (1 << (PlSqlParser.PASSWORD_GRACE_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD_LIFE_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD_LOCK_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD - 1185)) | (1 << (PlSqlParser.PASSWORD_REUSE_MAX - 1185)))) !== 0) || ((((_la - 1217)) & ~0x1f) == 0 && ((1 << (_la - 1217)) & ((1 << (PlSqlParser.PASSWORD_REUSE_TIME - 1217)) | (1 << (PlSqlParser.PASSWORD_VERIFY_FUNCTION - 1217)) | (1 << (PlSqlParser.PAST - 1217)) | (1 << (PlSqlParser.PATCH - 1217)) | (1 << (PlSqlParser.PATH - 1217)) | (1 << (PlSqlParser.PATH_PREFIX - 1217)) | (1 << (PlSqlParser.PATHS - 1217)) | (1 << (PlSqlParser.PATTERN - 1217)) | (1 << (PlSqlParser.PBL_HS_BEGIN - 1217)) | (1 << (PlSqlParser.PBL_HS_END - 1217)) | (1 << (PlSqlParser.PCTINCREASE - 1217)) | (1 << (PlSqlParser.PCTTHRESHOLD - 1217)) | (1 << (PlSqlParser.PCTUSED - 1217)) | (1 << (PlSqlParser.PCTVERSION - 1217)) | (1 << (PlSqlParser.PENDING - 1217)) | (1 << (PlSqlParser.PERCENT_KEYWORD - 1217)) | (1 << (PlSqlParser.PERCENT_RANKM - 1217)) | (1 << (PlSqlParser.PERFORMANCE - 1217)) | (1 << (PlSqlParser.PERIOD_KEYWORD - 1217)) | (1 << (PlSqlParser.PERMANENT - 1217)) | (1 << (PlSqlParser.PERMISSION - 1217)) | (1 << (PlSqlParser.PERMUTE - 1217)) | (1 << (PlSqlParser.PER - 1217)) | (1 << (PlSqlParser.PFILE - 1217)) | (1 << (PlSqlParser.PHYSICAL - 1217)))) !== 0) || ((((_la - 1249)) & ~0x1f) == 0 && ((1 << (_la - 1249)) & ((1 << (PlSqlParser.PIKEY - 1249)) | (1 << (PlSqlParser.PIPELINED - 1249)) | (1 << (PlSqlParser.PIV_GB - 1249)) | (1 << (PlSqlParser.PIVOT - 1249)) | (1 << (PlSqlParser.PIV_SSF - 1249)) | (1 << (PlSqlParser.PLACE_DISTINCT - 1249)) | (1 << (PlSqlParser.PLACE_GROUP_BY - 1249)) | (1 << (PlSqlParser.PLAN - 1249)) | (1 << (PlSqlParser.PLSCOPE_SETTINGS - 1249)) | (1 << (PlSqlParser.PLS_INTEGER - 1249)) | (1 << (PlSqlParser.PLSQL_CCFLAGS - 1249)) | (1 << (PlSqlParser.PLSQL_CODE_TYPE - 1249)) | (1 << (PlSqlParser.PLSQL_DEBUG - 1249)) | (1 << (PlSqlParser.PLSQL_OPTIMIZE_LEVEL - 1249)) | (1 << (PlSqlParser.PLSQL_WARNINGS - 1249)) | (1 << (PlSqlParser.PLUGGABLE - 1249)) | (1 << (PlSqlParser.POINT - 1249)) | (1 << (PlSqlParser.POLICY - 1249)) | (1 << (PlSqlParser.POOL_16K - 1249)) | (1 << (PlSqlParser.POOL_2K - 1249)) | (1 << (PlSqlParser.POOL_32K - 1249)) | (1 << (PlSqlParser.POOL_4K - 1249)) | (1 << (PlSqlParser.POOL_8K - 1249)) | (1 << (PlSqlParser.POSITIVEN - 1249)) | (1 << (PlSqlParser.POSITIVE - 1249)) | (1 << (PlSqlParser.POST_TRANSACTION - 1249)) | (1 << (PlSqlParser.POWERMULTISET_BY_CARDINALITY - 1249)) | (1 << (PlSqlParser.POWERMULTISET - 1249)) | (1 << (PlSqlParser.POWER - 1249)) | (1 << (PlSqlParser.PQ_CONCURRENT_UNION - 1249)) | (1 << (PlSqlParser.PQ_DISTRIBUTE - 1249)))) !== 0) || ((((_la - 1281)) & ~0x1f) == 0 && ((1 << (_la - 1281)) & ((1 << (PlSqlParser.PQ_DISTRIBUTE_WINDOW - 1281)) | (1 << (PlSqlParser.PQ_FILTER - 1281)) | (1 << (PlSqlParser.PQ_MAP - 1281)) | (1 << (PlSqlParser.PQ_NOMAP - 1281)) | (1 << (PlSqlParser.PQ_REPLICATE - 1281)) | (1 << (PlSqlParser.PQ_SKEW - 1281)) | (1 << (PlSqlParser.PRAGMA - 1281)) | (1 << (PlSqlParser.PREBUILT - 1281)) | (1 << (PlSqlParser.PRECEDES - 1281)) | (1 << (PlSqlParser.PRECEDING - 1281)) | (1 << (PlSqlParser.PRECISION - 1281)) | (1 << (PlSqlParser.PRECOMPUTE_SUBQUERY - 1281)) | (1 << (PlSqlParser.PREDICATE_REORDERS - 1281)) | (1 << (PlSqlParser.PRELOAD - 1281)) | (1 << (PlSqlParser.PREPARE - 1281)) | (1 << (PlSqlParser.PRESENTNNV - 1281)) | (1 << (PlSqlParser.PRESENT - 1281)) | (1 << (PlSqlParser.PRESENTV - 1281)) | (1 << (PlSqlParser.PRESERVE_OID - 1281)) | (1 << (PlSqlParser.PRESERVE - 1281)) | (1 << (PlSqlParser.PRETTY - 1281)) | (1 << (PlSqlParser.PREVIOUS - 1281)) | (1 << (PlSqlParser.PREV - 1281)) | (1 << (PlSqlParser.PRIMARY - 1281)) | (1 << (PlSqlParser.PRINTBLOBTOCLOB - 1281)) | (1 << (PlSqlParser.PRIORITY - 1281)) | (1 << (PlSqlParser.PRIVATE - 1281)) | (1 << (PlSqlParser.PRIVATE_SGA - 1281)) | (1 << (PlSqlParser.PRIVILEGED - 1281)) | (1 << (PlSqlParser.PRIVILEGE - 1281)) | (1 << (PlSqlParser.PRIVILEGES - 1281)))) !== 0) || ((((_la - 1313)) & ~0x1f) == 0 && ((1 << (_la - 1313)) & ((1 << (PlSqlParser.PROCEDURAL - 1313)) | (1 << (PlSqlParser.PROCEDURE - 1313)) | (1 << (PlSqlParser.PROCESS - 1313)) | (1 << (PlSqlParser.PROFILE - 1313)) | (1 << (PlSqlParser.PROGRAM - 1313)) | (1 << (PlSqlParser.PROJECT - 1313)) | (1 << (PlSqlParser.PROPAGATE - 1313)) | (1 << (PlSqlParser.PROTECTED - 1313)) | (1 << (PlSqlParser.PROTECTION - 1313)) | (1 << (PlSqlParser.PROXY - 1313)) | (1 << (PlSqlParser.PRUNING - 1313)) | (1 << (PlSqlParser.PULL_PRED - 1313)) | (1 << (PlSqlParser.PURGE - 1313)) | (1 << (PlSqlParser.PUSH_PRED - 1313)) | (1 << (PlSqlParser.PUSH_SUBQ - 1313)) | (1 << (PlSqlParser.PX_FAULT_TOLERANCE - 1313)) | (1 << (PlSqlParser.PX_GRANULE - 1313)) | (1 << (PlSqlParser.PX_JOIN_FILTER - 1313)) | (1 << (PlSqlParser.QB_NAME - 1313)) | (1 << (PlSqlParser.QUERY_BLOCK - 1313)) | (1 << (PlSqlParser.QUERY - 1313)) | (1 << (PlSqlParser.QUEUE_CURR - 1313)) | (1 << (PlSqlParser.QUEUE - 1313)) | (1 << (PlSqlParser.QUEUE_ROWP - 1313)) | (1 << (PlSqlParser.QUIESCE - 1313)) | (1 << (PlSqlParser.QUORUM - 1313)) | (1 << (PlSqlParser.QUOTA - 1313)) | (1 << (PlSqlParser.RAISE - 1313)) | (1 << (PlSqlParser.RANDOM_LOCAL - 1313)) | (1 << (PlSqlParser.RANDOM - 1313)) | (1 << (PlSqlParser.RANGE - 1313)))) !== 0) || ((((_la - 1345)) & ~0x1f) == 0 && ((1 << (_la - 1345)) & ((1 << (PlSqlParser.RANKM - 1345)) | (1 << (PlSqlParser.RAPIDLY - 1345)) | (1 << (PlSqlParser.RAW - 1345)) | (1 << (PlSqlParser.RAWTOHEX - 1345)) | (1 << (PlSqlParser.RAWTONHEX - 1345)) | (1 << (PlSqlParser.RBA - 1345)) | (1 << (PlSqlParser.RBO_OUTLINE - 1345)) | (1 << (PlSqlParser.RDBA - 1345)) | (1 << (PlSqlParser.READ - 1345)) | (1 << (PlSqlParser.READS - 1345)) | (1 << (PlSqlParser.REALM - 1345)) | (1 << (PlSqlParser.REAL - 1345)) | (1 << (PlSqlParser.REBALANCE - 1345)) | (1 << (PlSqlParser.REBUILD - 1345)) | (1 << (PlSqlParser.RECORD - 1345)) | (1 << (PlSqlParser.RECORDS_PER_BLOCK - 1345)) | (1 << (PlSqlParser.RECOVERABLE - 1345)) | (1 << (PlSqlParser.RECOVER - 1345)) | (1 << (PlSqlParser.RECOVERY - 1345)) | (1 << (PlSqlParser.RECYCLEBIN - 1345)) | (1 << (PlSqlParser.RECYCLE - 1345)) | (1 << (PlSqlParser.REDACTION - 1345)) | (1 << (PlSqlParser.REDEFINE - 1345)) | (1 << (PlSqlParser.REDO - 1345)) | (1 << (PlSqlParser.REDUCED - 1345)) | (1 << (PlSqlParser.REDUNDANCY - 1345)) | (1 << (PlSqlParser.REF_CASCADE_CURSOR - 1345)) | (1 << (PlSqlParser.REFERENCED - 1345)) | (1 << (PlSqlParser.REFERENCE - 1345)) | (1 << (PlSqlParser.REFERENCES - 1345)) | (1 << (PlSqlParser.REFERENCING - 1345)) | (1 << (PlSqlParser.REF - 1345)))) !== 0) || ((((_la - 1377)) & ~0x1f) == 0 && ((1 << (_la - 1377)) & ((1 << (PlSqlParser.REFRESH - 1377)) | (1 << (PlSqlParser.REFTOHEX - 1377)) | (1 << (PlSqlParser.REGEXP_COUNT - 1377)) | (1 << (PlSqlParser.REGEXP_INSTR - 1377)) | (1 << (PlSqlParser.REGEXP_LIKE - 1377)) | (1 << (PlSqlParser.REGEXP_REPLACE - 1377)) | (1 << (PlSqlParser.REGEXP_SUBSTR - 1377)) | (1 << (PlSqlParser.REGISTER - 1377)) | (1 << (PlSqlParser.REGR_AVGX - 1377)) | (1 << (PlSqlParser.REGR_AVGY - 1377)) | (1 << (PlSqlParser.REGR_COUNT - 1377)) | (1 << (PlSqlParser.REGR_INTERCEPT - 1377)) | (1 << (PlSqlParser.REGR_R2 - 1377)) | (1 << (PlSqlParser.REGR_SLOPE - 1377)) | (1 << (PlSqlParser.REGR_SXX - 1377)) | (1 << (PlSqlParser.REGR_SXY - 1377)) | (1 << (PlSqlParser.REGR_SYY - 1377)) | (1 << (PlSqlParser.REGULAR - 1377)) | (1 << (PlSqlParser.REJECT - 1377)) | (1 << (PlSqlParser.REKEY - 1377)) | (1 << (PlSqlParser.RELATIONAL - 1377)) | (1 << (PlSqlParser.RELOCATE - 1377)) | (1 << (PlSqlParser.RELY - 1377)) | (1 << (PlSqlParser.REMAINDER - 1377)) | (1 << (PlSqlParser.REMOTE_MAPPED - 1377)) | (1 << (PlSqlParser.REMOVE - 1377)) | (1 << (PlSqlParser.RENAME - 1377)) | (1 << (PlSqlParser.REPAIR - 1377)) | (1 << (PlSqlParser.REPEAT - 1377)) | (1 << (PlSqlParser.REPLACE - 1377)) | (1 << (PlSqlParser.REPLICATION - 1377)))) !== 0) || ((((_la - 1409)) & ~0x1f) == 0 && ((1 << (_la - 1409)) & ((1 << (PlSqlParser.REQUIRED - 1409)) | (1 << (PlSqlParser.RESETLOGS - 1409)) | (1 << (PlSqlParser.RESET - 1409)) | (1 << (PlSqlParser.RESIZE - 1409)) | (1 << (PlSqlParser.RESOLVE - 1409)) | (1 << (PlSqlParser.RESOLVER - 1409)) | (1 << (PlSqlParser.RESPECT - 1409)) | (1 << (PlSqlParser.RESTART - 1409)) | (1 << (PlSqlParser.RESTORE_AS_INTERVALS - 1409)) | (1 << (PlSqlParser.RESTORE - 1409)) | (1 << (PlSqlParser.RESTRICT_ALL_REF_CONS - 1409)) | (1 << (PlSqlParser.RESTRICTED - 1409)) | (1 << (PlSqlParser.RESTRICT_REFERENCES - 1409)) | (1 << (PlSqlParser.RESTRICT - 1409)) | (1 << (PlSqlParser.RESULT_CACHE - 1409)) | (1 << (PlSqlParser.RESULT - 1409)) | (1 << (PlSqlParser.RESUMABLE - 1409)) | (1 << (PlSqlParser.RESUME - 1409)) | (1 << (PlSqlParser.RETENTION - 1409)) | (1 << (PlSqlParser.RETRY_ON_ROW_CHANGE - 1409)) | (1 << (PlSqlParser.RETURNING - 1409)) | (1 << (PlSqlParser.RETURN - 1409)) | (1 << (PlSqlParser.REUSE - 1409)) | (1 << (PlSqlParser.REVERSE - 1409)) | (1 << (PlSqlParser.REWRITE_OR_ERROR - 1409)) | (1 << (PlSqlParser.REWRITE - 1409)) | (1 << (PlSqlParser.RIGHT - 1409)) | (1 << (PlSqlParser.ROLE - 1409)) | (1 << (PlSqlParser.ROLESET - 1409)) | (1 << (PlSqlParser.ROLES - 1409)))) !== 0) || ((((_la - 1441)) & ~0x1f) == 0 && ((1 << (_la - 1441)) & ((1 << (PlSqlParser.ROLLBACK - 1441)) | (1 << (PlSqlParser.ROLLING - 1441)) | (1 << (PlSqlParser.ROLLUP - 1441)) | (1 << (PlSqlParser.ROWDEPENDENCIES - 1441)) | (1 << (PlSqlParser.ROWID_MAPPING_TABLE - 1441)) | (1 << (PlSqlParser.ROWID - 1441)) | (1 << (PlSqlParser.ROWIDTOCHAR - 1441)) | (1 << (PlSqlParser.ROWIDTONCHAR - 1441)) | (1 << (PlSqlParser.ROW_LENGTH - 1441)) | (1 << (PlSqlParser.ROWNUM - 1441)) | (1 << (PlSqlParser.ROW - 1441)) | (1 << (PlSqlParser.ROWS - 1441)) | (1 << (PlSqlParser.RPAD - 1441)) | (1 << (PlSqlParser.RTRIM - 1441)) | (1 << (PlSqlParser.RULE - 1441)) | (1 << (PlSqlParser.RULES - 1441)) | (1 << (PlSqlParser.RUNNING - 1441)) | (1 << (PlSqlParser.SALT - 1441)) | (1 << (PlSqlParser.SAMPLE - 1441)) | (1 << (PlSqlParser.SAVE_AS_INTERVALS - 1441)) | (1 << (PlSqlParser.SAVEPOINT - 1441)) | (1 << (PlSqlParser.SAVE - 1441)) | (1 << (PlSqlParser.SB4 - 1441)) | (1 << (PlSqlParser.SCALE_ROWS - 1441)) | (1 << (PlSqlParser.SCALE - 1441)) | (1 << (PlSqlParser.SCAN_INSTANCES - 1441)) | (1 << (PlSqlParser.SCAN - 1441)) | (1 << (PlSqlParser.SCHEDULER - 1441)) | (1 << (PlSqlParser.SCHEMACHECK - 1441)) | (1 << (PlSqlParser.SCHEMA - 1441)) | (1 << (PlSqlParser.SCN_ASCENDING - 1441)) | (1 << (PlSqlParser.SCN - 1441)))) !== 0) || ((((_la - 1473)) & ~0x1f) == 0 && ((1 << (_la - 1473)) & ((1 << (PlSqlParser.SCOPE - 1473)) | (1 << (PlSqlParser.SCRUB - 1473)) | (1 << (PlSqlParser.SD_ALL - 1473)) | (1 << (PlSqlParser.SD_INHIBIT - 1473)) | (1 << (PlSqlParser.SDO_GEOM_MBR - 1473)) | (1 << (PlSqlParser.SD_SHOW - 1473)) | (1 << (PlSqlParser.SEARCH - 1473)) | (1 << (PlSqlParser.SECOND - 1473)) | (1 << (PlSqlParser.SECRET - 1473)) | (1 << (PlSqlParser.SECUREFILE_DBA - 1473)) | (1 << (PlSqlParser.SECUREFILE - 1473)) | (1 << (PlSqlParser.SECURITY - 1473)) | (1 << (PlSqlParser.SEED - 1473)) | (1 << (PlSqlParser.SEG_BLOCK - 1473)) | (1 << (PlSqlParser.SEG_FILE - 1473)) | (1 << (PlSqlParser.SEGMENT - 1473)) | (1 << (PlSqlParser.SELECTIVITY - 1473)) | (1 << (PlSqlParser.SELF - 1473)) | (1 << (PlSqlParser.SEMIJOIN_DRIVER - 1473)) | (1 << (PlSqlParser.SEMIJOIN - 1473)) | (1 << (PlSqlParser.SEMI_TO_INNER - 1473)) | (1 << (PlSqlParser.SEQUENCED - 1473)) | (1 << (PlSqlParser.SEQUENCE - 1473)) | (1 << (PlSqlParser.SEQUENTIAL - 1473)) | (1 << (PlSqlParser.SERIALIZABLE - 1473)) | (1 << (PlSqlParser.SERIALLY_REUSABLE - 1473)) | (1 << (PlSqlParser.SERIAL - 1473)) | (1 << (PlSqlParser.SERVERERROR - 1473)) | (1 << (PlSqlParser.SERVICE_NAME_CONVERT - 1473)) | (1 << (PlSqlParser.SERVICES - 1473)))) !== 0) || ((((_la - 1505)) & ~0x1f) == 0 && ((1 << (_la - 1505)) & ((1 << (PlSqlParser.SESSION_CACHED_CURSORS - 1505)) | (1 << (PlSqlParser.SESSION - 1505)) | (1 << (PlSqlParser.SESSIONS_PER_USER - 1505)) | (1 << (PlSqlParser.SESSIONTIMEZONE - 1505)) | (1 << (PlSqlParser.SESSIONTZNAME - 1505)) | (1 << (PlSqlParser.SET - 1505)) | (1 << (PlSqlParser.SETS - 1505)) | (1 << (PlSqlParser.SETTINGS - 1505)) | (1 << (PlSqlParser.SET_TO_JOIN - 1505)) | (1 << (PlSqlParser.SEVERE - 1505)) | (1 << (PlSqlParser.SHARED_POOL - 1505)) | (1 << (PlSqlParser.SHARED - 1505)) | (1 << (PlSqlParser.SHARING - 1505)) | (1 << (PlSqlParser.SHELFLIFE - 1505)) | (1 << (PlSqlParser.SHOW - 1505)) | (1 << (PlSqlParser.SHRINK - 1505)) | (1 << (PlSqlParser.SHUTDOWN - 1505)) | (1 << (PlSqlParser.SIBLINGS - 1505)) | (1 << (PlSqlParser.SID - 1505)) | (1 << (PlSqlParser.SIGNAL_COMPONENT - 1505)) | (1 << (PlSqlParser.SIGNAL_FUNCTION - 1505)) | (1 << (PlSqlParser.SIGN - 1505)) | (1 << (PlSqlParser.SIGNTYPE - 1505)) | (1 << (PlSqlParser.SIMPLE_INTEGER - 1505)) | (1 << (PlSqlParser.SIMPLE - 1505)) | (1 << (PlSqlParser.SINGLE - 1505)) | (1 << (PlSqlParser.SINGLETASK - 1505)) | (1 << (PlSqlParser.SINH - 1505)) | (1 << (PlSqlParser.SIN - 1505)) | (1 << (PlSqlParser.SKIP_EXT_OPTIMIZER - 1505)))) !== 0) || ((((_la - 1537)) & ~0x1f) == 0 && ((1 << (_la - 1537)) & ((1 << (PlSqlParser.SKIP_ - 1537)) | (1 << (PlSqlParser.SKIP_UNQ_UNUSABLE_IDX - 1537)) | (1 << (PlSqlParser.SKIP_UNUSABLE_INDEXES - 1537)) | (1 << (PlSqlParser.SMALLFILE - 1537)) | (1 << (PlSqlParser.SMALLINT - 1537)) | (1 << (PlSqlParser.SNAPSHOT - 1537)) | (1 << (PlSqlParser.SOME - 1537)) | (1 << (PlSqlParser.SORT - 1537)) | (1 << (PlSqlParser.SOUNDEX - 1537)) | (1 << (PlSqlParser.SOURCE_FILE_DIRECTORY - 1537)) | (1 << (PlSqlParser.SOURCE_FILE_NAME_CONVERT - 1537)) | (1 << (PlSqlParser.SOURCE - 1537)) | (1 << (PlSqlParser.SPACE_KEYWORD - 1537)) | (1 << (PlSqlParser.SPECIFICATION - 1537)) | (1 << (PlSqlParser.SPFILE - 1537)) | (1 << (PlSqlParser.SPLIT - 1537)) | (1 << (PlSqlParser.SPREADSHEET - 1537)) | (1 << (PlSqlParser.SQLDATA - 1537)) | (1 << (PlSqlParser.SQLERROR - 1537)) | (1 << (PlSqlParser.SQLLDR - 1537)) | (1 << (PlSqlParser.SQL - 1537)) | (1 << (PlSqlParser.SQL_TRACE - 1537)) | (1 << (PlSqlParser.SQL_TRANSLATION_PROFILE - 1537)) | (1 << (PlSqlParser.SQRT - 1537)) | (1 << (PlSqlParser.STALE - 1537)) | (1 << (PlSqlParser.STANDALONE - 1537)) | (1 << (PlSqlParser.STANDARD_HASH - 1537)) | (1 << (PlSqlParser.STANDBY_MAX_DATA_DELAY - 1537)) | (1 << (PlSqlParser.STANDBYS - 1537)) | (1 << (PlSqlParser.STANDBY - 1537)) | (1 << (PlSqlParser.STAR - 1537)) | (1 << (PlSqlParser.STAR_TRANSFORMATION - 1537)))) !== 0) || ((((_la - 1570)) & ~0x1f) == 0 && ((1 << (_la - 1570)) & ((1 << (PlSqlParser.STARTUP - 1570)) | (1 << (PlSqlParser.STATEMENT_ID - 1570)) | (1 << (PlSqlParser.STATEMENT_QUEUING - 1570)) | (1 << (PlSqlParser.STATEMENTS - 1570)) | (1 << (PlSqlParser.STATEMENT - 1570)) | (1 << (PlSqlParser.STATE - 1570)) | (1 << (PlSqlParser.STATIC - 1570)) | (1 << (PlSqlParser.STATISTICS - 1570)) | (1 << (PlSqlParser.STATS_BINOMIAL_TEST - 1570)) | (1 << (PlSqlParser.STATS_CROSSTAB - 1570)) | (1 << (PlSqlParser.STATS_F_TEST - 1570)) | (1 << (PlSqlParser.STATS_KS_TEST - 1570)) | (1 << (PlSqlParser.STATS_MODE - 1570)) | (1 << (PlSqlParser.STATS_MW_TEST - 1570)) | (1 << (PlSqlParser.STATS_ONE_WAY_ANOVA - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_INDEP - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_INDEPU - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_ONE - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_PAIRED - 1570)) | (1 << (PlSqlParser.STATS_WSR_TEST - 1570)) | (1 << (PlSqlParser.STDDEV_POP - 1570)) | (1 << (PlSqlParser.STDDEV_SAMP - 1570)) | (1 << (PlSqlParser.STOP - 1570)) | (1 << (PlSqlParser.STORAGE - 1570)) | (1 << (PlSqlParser.STORE - 1570)) | (1 << (PlSqlParser.STREAMS - 1570)) | (1 << (PlSqlParser.STREAM - 1570)) | (1 << (PlSqlParser.STRICT - 1570)) | (1 << (PlSqlParser.STRING - 1570)) | (1 << (PlSqlParser.STRIPE_COLUMNS - 1570)) | (1 << (PlSqlParser.STRIPE_WIDTH - 1570)) | (1 << (PlSqlParser.STRIP - 1570)))) !== 0) || ((((_la - 1602)) & ~0x1f) == 0 && ((1 << (_la - 1602)) & ((1 << (PlSqlParser.STRUCTURE - 1602)) | (1 << (PlSqlParser.SUBMULTISET - 1602)) | (1 << (PlSqlParser.SUBPARTITION_REL - 1602)) | (1 << (PlSqlParser.SUBPARTITIONS - 1602)) | (1 << (PlSqlParser.SUBPARTITION - 1602)) | (1 << (PlSqlParser.SUBQUERIES - 1602)) | (1 << (PlSqlParser.SUBQUERY_PRUNING - 1602)) | (1 << (PlSqlParser.SUBSCRIBE - 1602)) | (1 << (PlSqlParser.SUBSET - 1602)) | (1 << (PlSqlParser.SUBSTITUTABLE - 1602)) | (1 << (PlSqlParser.SUBSTR2 - 1602)) | (1 << (PlSqlParser.SUBSTR4 - 1602)) | (1 << (PlSqlParser.SUBSTRB - 1602)) | (1 << (PlSqlParser.SUBSTRC - 1602)) | (1 << (PlSqlParser.SUBTYPE - 1602)) | (1 << (PlSqlParser.SUCCESSFUL - 1602)) | (1 << (PlSqlParser.SUCCESS - 1602)) | (1 << (PlSqlParser.SUMMARY - 1602)) | (1 << (PlSqlParser.SUPPLEMENTAL - 1602)) | (1 << (PlSqlParser.SUSPEND - 1602)) | (1 << (PlSqlParser.SWAP_JOIN_INPUTS - 1602)) | (1 << (PlSqlParser.SWITCHOVER - 1602)) | (1 << (PlSqlParser.SWITCH - 1602)) | (1 << (PlSqlParser.SYNCHRONOUS - 1602)) | (1 << (PlSqlParser.SYNC - 1602)) | (1 << (PlSqlParser.SYSASM - 1602)) | (1 << (PlSqlParser.SYS_AUDIT - 1602)) | (1 << (PlSqlParser.SYSAUX - 1602)) | (1 << (PlSqlParser.SYSBACKUP - 1602)) | (1 << (PlSqlParser.SYS_CHECKACL - 1602)) | (1 << (PlSqlParser.SYS_CHECK_PRIVILEGE - 1602)))) !== 0) || ((((_la - 1634)) & ~0x1f) == 0 && ((1 << (_la - 1634)) & ((1 << (PlSqlParser.SYS_CONNECT_BY_PATH - 1634)) | (1 << (PlSqlParser.SYS_CONTEXT - 1634)) | (1 << (PlSqlParser.SYSDATE - 1634)) | (1 << (PlSqlParser.SYSDBA - 1634)) | (1 << (PlSqlParser.SYS_DBURIGEN - 1634)) | (1 << (PlSqlParser.SYSDG - 1634)) | (1 << (PlSqlParser.SYS_DL_CURSOR - 1634)) | (1 << (PlSqlParser.SYS_DM_RXFORM_CHR - 1634)) | (1 << (PlSqlParser.SYS_DM_RXFORM_NUM - 1634)) | (1 << (PlSqlParser.SYS_DOM_COMPARE - 1634)) | (1 << (PlSqlParser.SYS_DST_PRIM2SEC - 1634)) | (1 << (PlSqlParser.SYS_DST_SEC2PRIM - 1634)) | (1 << (PlSqlParser.SYS_ET_BFILE_TO_RAW - 1634)) | (1 << (PlSqlParser.SYS_ET_BLOB_TO_IMAGE - 1634)) | (1 << (PlSqlParser.SYS_ET_IMAGE_TO_BLOB - 1634)) | (1 << (PlSqlParser.SYS_ET_RAW_TO_BFILE - 1634)) | (1 << (PlSqlParser.SYS_EXTPDTXT - 1634)) | (1 << (PlSqlParser.SYS_EXTRACT_UTC - 1634)) | (1 << (PlSqlParser.SYS_FBT_INSDEL - 1634)) | (1 << (PlSqlParser.SYS_FILTER_ACLS - 1634)) | (1 << (PlSqlParser.SYS_FNMATCHES - 1634)) | (1 << (PlSqlParser.SYS_FNREPLACE - 1634)) | (1 << (PlSqlParser.SYS_GET_ACLIDS - 1634)) | (1 << (PlSqlParser.SYS_GET_COL_ACLIDS - 1634)) | (1 << (PlSqlParser.SYS_GET_PRIVILEGES - 1634)) | (1 << (PlSqlParser.SYS_GETTOKENID - 1634)) | (1 << (PlSqlParser.SYS_GETXTIVAL - 1634)) | (1 << (PlSqlParser.SYS_GUID - 1634)) | (1 << (PlSqlParser.SYSGUID - 1634)) | (1 << (PlSqlParser.SYSKM - 1634)) | (1 << (PlSqlParser.SYS_MAKE_XMLNODEID - 1634)) | (1 << (PlSqlParser.SYS_MAKEXML - 1634)))) !== 0) || ((((_la - 1666)) & ~0x1f) == 0 && ((1 << (_la - 1666)) & ((1 << (PlSqlParser.SYS_MKXMLATTR - 1666)) | (1 << (PlSqlParser.SYS_MKXTI - 1666)) | (1 << (PlSqlParser.SYSOBJ - 1666)) | (1 << (PlSqlParser.SYS_OP_ADT2BIN - 1666)) | (1 << (PlSqlParser.SYS_OP_ADTCONS - 1666)) | (1 << (PlSqlParser.SYS_OP_ALSCRVAL - 1666)) | (1 << (PlSqlParser.SYS_OP_ATG - 1666)) | (1 << (PlSqlParser.SYS_OP_BIN2ADT - 1666)) | (1 << (PlSqlParser.SYS_OP_BITVEC - 1666)) | (1 << (PlSqlParser.SYS_OP_BL2R - 1666)) | (1 << (PlSqlParser.SYS_OP_BLOOM_FILTER_LIST - 1666)) | (1 << (PlSqlParser.SYS_OP_BLOOM_FILTER - 1666)) | (1 << (PlSqlParser.SYS_OP_C2C - 1666)) | (1 << (PlSqlParser.SYS_OP_CAST - 1666)) | (1 << (PlSqlParser.SYS_OP_CEG - 1666)) | (1 << (PlSqlParser.SYS_OP_CL2C - 1666)) | (1 << (PlSqlParser.SYS_OP_COMBINED_HASH - 1666)) | (1 << (PlSqlParser.SYS_OP_COMP - 1666)) | (1 << (PlSqlParser.SYS_OP_CONVERT - 1666)) | (1 << (PlSqlParser.SYS_OP_COUNTCHG - 1666)) | (1 << (PlSqlParser.SYS_OP_CSCONV - 1666)) | (1 << (PlSqlParser.SYS_OP_CSCONVTEST - 1666)) | (1 << (PlSqlParser.SYS_OP_CSR - 1666)) | (1 << (PlSqlParser.SYS_OP_CSX_PATCH - 1666)) | (1 << (PlSqlParser.SYS_OP_CYCLED_SEQ - 1666)) | (1 << (PlSqlParser.SYS_OP_DECOMP - 1666)) | (1 << (PlSqlParser.SYS_OP_DESCEND - 1666)) | (1 << (PlSqlParser.SYS_OP_DISTINCT - 1666)) | (1 << (PlSqlParser.SYS_OP_DRA - 1666)) | (1 << (PlSqlParser.SYS_OP_DUMP - 1666)) | (1 << (PlSqlParser.SYS_OP_DV_CHECK - 1666)) | (1 << (PlSqlParser.SYS_OP_ENFORCE_NOT_NULL - 1666)))) !== 0) || ((((_la - 1698)) & ~0x1f) == 0 && ((1 << (_la - 1698)) & ((1 << (PlSqlParser.SYSOPER - 1698)) | (1 << (PlSqlParser.SYS_OP_EXTRACT - 1698)) | (1 << (PlSqlParser.SYS_OP_GROUPING - 1698)) | (1 << (PlSqlParser.SYS_OP_GUID - 1698)) | (1 << (PlSqlParser.SYS_OP_HASH - 1698)) | (1 << (PlSqlParser.SYS_OP_IIX - 1698)) | (1 << (PlSqlParser.SYS_OP_ITR - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_CREATE - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_FILTER_LIST - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_FILTER - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_SUCCEEDED - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_USE - 1698)) | (1 << (PlSqlParser.SYS_OP_LBID - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2BLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2CLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2ID - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2NCLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2TYP - 1698)) | (1 << (PlSqlParser.SYS_OP_LSVI - 1698)) | (1 << (PlSqlParser.SYS_OP_LVL - 1698)) | (1 << (PlSqlParser.SYS_OP_MAKEOID - 1698)) | (1 << (PlSqlParser.SYS_OP_MAP_NONNULL - 1698)) | (1 << (PlSqlParser.SYS_OP_MSR - 1698)) | (1 << (PlSqlParser.SYS_OP_NICOMBINE - 1698)) | (1 << (PlSqlParser.SYS_OP_NIEXTRACT - 1698)) | (1 << (PlSqlParser.SYS_OP_NII - 1698)) | (1 << (PlSqlParser.SYS_OP_NIX - 1698)) | (1 << (PlSqlParser.SYS_OP_NOEXPAND - 1698)) | (1 << (PlSqlParser.SYS_OP_NTCIMG - 1698)) | (1 << (PlSqlParser.SYS_OP_NUMTORAW - 1698)) | (1 << (PlSqlParser.SYS_OP_OIDVALUE - 1698)) | (1 << (PlSqlParser.SYS_OP_OPNSIZE - 1698)))) !== 0) || ((((_la - 1730)) & ~0x1f) == 0 && ((1 << (_la - 1730)) & ((1 << (PlSqlParser.SYS_OP_PAR_1 - 1730)) | (1 << (PlSqlParser.SYS_OP_PARGID_1 - 1730)) | (1 << (PlSqlParser.SYS_OP_PARGID - 1730)) | (1 << (PlSqlParser.SYS_OP_PAR - 1730)) | (1 << (PlSqlParser.SYS_OP_PART_ID - 1730)) | (1 << (PlSqlParser.SYS_OP_PIVOT - 1730)) | (1 << (PlSqlParser.SYS_OP_R2O - 1730)) | (1 << (PlSqlParser.SYS_OP_RAWTONUM - 1730)) | (1 << (PlSqlParser.SYS_OP_RDTM - 1730)) | (1 << (PlSqlParser.SYS_OP_REF - 1730)) | (1 << (PlSqlParser.SYS_OP_RMTD - 1730)) | (1 << (PlSqlParser.SYS_OP_ROWIDTOOBJ - 1730)) | (1 << (PlSqlParser.SYS_OP_RPB - 1730)) | (1 << (PlSqlParser.SYS_OPTLOBPRBSC - 1730)) | (1 << (PlSqlParser.SYS_OP_TOSETID - 1730)) | (1 << (PlSqlParser.SYS_OP_TPR - 1730)) | (1 << (PlSqlParser.SYS_OP_TRTB - 1730)) | (1 << (PlSqlParser.SYS_OPTXICMP - 1730)) | (1 << (PlSqlParser.SYS_OPTXQCASTASNQ - 1730)) | (1 << (PlSqlParser.SYS_OP_UNDESCEND - 1730)) | (1 << (PlSqlParser.SYS_OP_VECAND - 1730)) | (1 << (PlSqlParser.SYS_OP_VECBIT - 1730)) | (1 << (PlSqlParser.SYS_OP_VECOR - 1730)) | (1 << (PlSqlParser.SYS_OP_VECXOR - 1730)) | (1 << (PlSqlParser.SYS_OP_VERSION - 1730)) | (1 << (PlSqlParser.SYS_OP_VREF - 1730)) | (1 << (PlSqlParser.SYS_OP_VVD - 1730)) | (1 << (PlSqlParser.SYS_OP_XMLCONS_FOR_CSX - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHATG - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHIDX - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHOP - 1730)) | (1 << (PlSqlParser.SYS_OP_XTXT2SQLT - 1730)))) !== 0) || ((((_la - 1762)) & ~0x1f) == 0 && ((1 << (_la - 1762)) & ((1 << (PlSqlParser.SYS_OP_ZONE_ID - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_DEPTH - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_MAXCHILD - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_PARENT - 1762)) | (1 << (PlSqlParser.SYS_PARALLEL_TXN - 1762)) | (1 << (PlSqlParser.SYS_PATHID_IS_ATTR - 1762)) | (1 << (PlSqlParser.SYS_PATHID_IS_NMSPC - 1762)) | (1 << (PlSqlParser.SYS_PATHID_LASTNAME - 1762)) | (1 << (PlSqlParser.SYS_PATHID_LASTNMSPC - 1762)) | (1 << (PlSqlParser.SYS_PATH_REVERSE - 1762)) | (1 << (PlSqlParser.SYS_PXQEXTRACT - 1762)) | (1 << (PlSqlParser.SYS_RAW_TO_XSID - 1762)) | (1 << (PlSqlParser.SYS_RID_ORDER - 1762)) | (1 << (PlSqlParser.SYS_ROW_DELTA - 1762)) | (1 << (PlSqlParser.SYS_SC_2_XMLT - 1762)) | (1 << (PlSqlParser.SYS_SYNRCIREDO - 1762)) | (1 << (PlSqlParser.SYSTEM_DEFINED - 1762)) | (1 << (PlSqlParser.SYSTEM - 1762)) | (1 << (PlSqlParser.SYSTIMESTAMP - 1762)) | (1 << (PlSqlParser.SYS_TYPEID - 1762)) | (1 << (PlSqlParser.SYS_UMAKEXML - 1762)) | (1 << (PlSqlParser.SYS_XMLANALYZE - 1762)) | (1 << (PlSqlParser.SYS_XMLCONTAINS - 1762)) | (1 << (PlSqlParser.SYS_XMLCONV - 1762)) | (1 << (PlSqlParser.SYS_XMLEXNSURI - 1762)) | (1 << (PlSqlParser.SYS_XMLGEN - 1762)) | (1 << (PlSqlParser.SYS_XMLI_LOC_ISNODE - 1762)) | (1 << (PlSqlParser.SYS_XMLI_LOC_ISTEXT - 1762)) | (1 << (PlSqlParser.SYS_XMLINSTR - 1762)) | (1 << (PlSqlParser.SYS_XMLLOCATOR_GETSVAL - 1762)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETCID - 1762)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETLOCATOR - 1762)))) !== 0) || ((((_la - 1794)) & ~0x1f) == 0 && ((1 << (_la - 1794)) & ((1 << (PlSqlParser.SYS_XMLNODEID_GETOKEY - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETPATHID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETPTRID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETRID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETSVAL - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETTID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID - 1794)) | (1 << (PlSqlParser.SYS_XMLT_2_SC - 1794)) | (1 << (PlSqlParser.SYS_XMLTRANSLATE - 1794)) | (1 << (PlSqlParser.SYS_XMLTYPE2SQL - 1794)) | (1 << (PlSqlParser.SYS_XQ_ASQLCNV - 1794)) | (1 << (PlSqlParser.SYS_XQ_ATOMCNVCHK - 1794)) | (1 << (PlSqlParser.SYS_XQBASEURI - 1794)) | (1 << (PlSqlParser.SYS_XQCASTABLEERRH - 1794)) | (1 << (PlSqlParser.SYS_XQCODEP2STR - 1794)) | (1 << (PlSqlParser.SYS_XQCODEPEQ - 1794)) | (1 << (PlSqlParser.SYS_XQCON2SEQ - 1794)) | (1 << (PlSqlParser.SYS_XQCONCAT - 1794)) | (1 << (PlSqlParser.SYS_XQDELETE - 1794)) | (1 << (PlSqlParser.SYS_XQDFLTCOLATION - 1794)) | (1 << (PlSqlParser.SYS_XQDOC - 1794)) | (1 << (PlSqlParser.SYS_XQDOCURI - 1794)) | (1 << (PlSqlParser.SYS_XQDURDIV - 1794)) | (1 << (PlSqlParser.SYS_XQED4URI - 1794)) | (1 << (PlSqlParser.SYS_XQENDSWITH - 1794)) | (1 << (PlSqlParser.SYS_XQERRH - 1794)) | (1 << (PlSqlParser.SYS_XQERR - 1794)) | (1 << (PlSqlParser.SYS_XQESHTMLURI - 1794)) | (1 << (PlSqlParser.SYS_XQEXLOBVAL - 1794)) | (1 << (PlSqlParser.SYS_XQEXSTWRP - 1794)) | (1 << (PlSqlParser.SYS_XQEXTRACT - 1794)) | (1 << (PlSqlParser.SYS_XQEXTRREF - 1794)))) !== 0) || ((((_la - 1826)) & ~0x1f) == 0 && ((1 << (_la - 1826)) & ((1 << (PlSqlParser.SYS_XQEXVAL - 1826)) | (1 << (PlSqlParser.SYS_XQFB2STR - 1826)) | (1 << (PlSqlParser.SYS_XQFNBOOL - 1826)) | (1 << (PlSqlParser.SYS_XQFNCMP - 1826)) | (1 << (PlSqlParser.SYS_XQFNDATIM - 1826)) | (1 << (PlSqlParser.SYS_XQFNLNAME - 1826)) | (1 << (PlSqlParser.SYS_XQFNNM - 1826)) | (1 << (PlSqlParser.SYS_XQFNNSURI - 1826)) | (1 << (PlSqlParser.SYS_XQFNPREDTRUTH - 1826)) | (1 << (PlSqlParser.SYS_XQFNQNM - 1826)) | (1 << (PlSqlParser.SYS_XQFNROOT - 1826)) | (1 << (PlSqlParser.SYS_XQFORMATNUM - 1826)) | (1 << (PlSqlParser.SYS_XQFTCONTAIN - 1826)) | (1 << (PlSqlParser.SYS_XQFUNCR - 1826)) | (1 << (PlSqlParser.SYS_XQGETCONTENT - 1826)) | (1 << (PlSqlParser.SYS_XQINDXOF - 1826)) | (1 << (PlSqlParser.SYS_XQINSERT - 1826)) | (1 << (PlSqlParser.SYS_XQINSPFX - 1826)) | (1 << (PlSqlParser.SYS_XQIRI2URI - 1826)) | (1 << (PlSqlParser.SYS_XQLANG - 1826)) | (1 << (PlSqlParser.SYS_XQLLNMFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQMKNODEREF - 1826)) | (1 << (PlSqlParser.SYS_XQNILLED - 1826)) | (1 << (PlSqlParser.SYS_XQNODENAME - 1826)) | (1 << (PlSqlParser.SYS_XQNORMSPACE - 1826)) | (1 << (PlSqlParser.SYS_XQNORMUCODE - 1826)) | (1 << (PlSqlParser.SYS_XQ_NRNG - 1826)) | (1 << (PlSqlParser.SYS_XQNSP4PFX - 1826)) | (1 << (PlSqlParser.SYS_XQNSPFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQPFXFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQ_PKSQL2XML - 1826)) | (1 << (PlSqlParser.SYS_XQPOLYABS - 1826)))) !== 0) || ((((_la - 1858)) & ~0x1f) == 0 && ((1 << (_la - 1858)) & ((1 << (PlSqlParser.SYS_XQPOLYADD - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCEL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCSTBL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCST - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYDIV - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYFLR - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYMOD - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYMUL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYRND - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYSQRT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYSUB - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYUMUS - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYUPLS - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVEQ - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVGE - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVGT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVLE - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVLT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVNE - 1858)) | (1 << (PlSqlParser.SYS_XQREF2VAL - 1858)) | (1 << (PlSqlParser.SYS_XQRENAME - 1858)) | (1 << (PlSqlParser.SYS_XQREPLACE - 1858)) | (1 << (PlSqlParser.SYS_XQRESVURI - 1858)) | (1 << (PlSqlParser.SYS_XQRNDHALF2EVN - 1858)) | (1 << (PlSqlParser.SYS_XQRSLVQNM - 1858)) | (1 << (PlSqlParser.SYS_XQRYENVPGET - 1858)) | (1 << (PlSqlParser.SYS_XQRYVARGET - 1858)) | (1 << (PlSqlParser.SYS_XQRYWRP - 1858)) | (1 << (PlSqlParser.SYS_XQSEQ2CON4XC - 1858)) | (1 << (PlSqlParser.SYS_XQSEQ2CON - 1858)) | (1 << (PlSqlParser.SYS_XQSEQDEEPEQ - 1858)) | (1 << (PlSqlParser.SYS_XQSEQINSB - 1858)))) !== 0) || ((((_la - 1890)) & ~0x1f) == 0 && ((1 << (_la - 1890)) & ((1 << (PlSqlParser.SYS_XQSEQRM - 1890)) | (1 << (PlSqlParser.SYS_XQSEQRVS - 1890)) | (1 << (PlSqlParser.SYS_XQSEQSUB - 1890)) | (1 << (PlSqlParser.SYS_XQSEQTYPMATCH - 1890)) | (1 << (PlSqlParser.SYS_XQSTARTSWITH - 1890)) | (1 << (PlSqlParser.SYS_XQSTATBURI - 1890)) | (1 << (PlSqlParser.SYS_XQSTR2CODEP - 1890)) | (1 << (PlSqlParser.SYS_XQSTRJOIN - 1890)) | (1 << (PlSqlParser.SYS_XQSUBSTRAFT - 1890)) | (1 << (PlSqlParser.SYS_XQSUBSTRBEF - 1890)) | (1 << (PlSqlParser.SYS_XQTOKENIZE - 1890)) | (1 << (PlSqlParser.SYS_XQTREATAS - 1890)) | (1 << (PlSqlParser.SYS_XQ_UPKXML2SQL - 1890)) | (1 << (PlSqlParser.SYS_XQXFORM - 1890)) | (1 << (PlSqlParser.SYS_XSID_TO_RAW - 1890)) | (1 << (PlSqlParser.SYS_ZMAP_FILTER - 1890)) | (1 << (PlSqlParser.SYS_ZMAP_REFRESH - 1890)) | (1 << (PlSqlParser.TABLE_LOOKUP_BY_NL - 1890)) | (1 << (PlSqlParser.TABLESPACE_NO - 1890)) | (1 << (PlSqlParser.TABLESPACE - 1890)) | (1 << (PlSqlParser.TABLES - 1890)) | (1 << (PlSqlParser.TABLE_STATS - 1890)) | (1 << (PlSqlParser.TABLE - 1890)) | (1 << (PlSqlParser.TABNO - 1890)) | (1 << (PlSqlParser.TAG - 1890)) | (1 << (PlSqlParser.TANH - 1890)) | (1 << (PlSqlParser.TAN - 1890)) | (1 << (PlSqlParser.TBLORIDXPARTNUM - 1890)) | (1 << (PlSqlParser.TEMPFILE - 1890)) | (1 << (PlSqlParser.TEMPLATE - 1890)) | (1 << (PlSqlParser.TEMPORARY - 1890)) | (1 << (PlSqlParser.TEMP_TABLE - 1890)))) !== 0) || ((((_la - 1922)) & ~0x1f) == 0 && ((1 << (_la - 1922)) & ((1 << (PlSqlParser.TEST - 1922)) | (1 << (PlSqlParser.TEXT - 1922)) | (1 << (PlSqlParser.THAN - 1922)) | (1 << (PlSqlParser.THEN - 1922)) | (1 << (PlSqlParser.THE - 1922)) | (1 << (PlSqlParser.THREAD - 1922)) | (1 << (PlSqlParser.THROUGH - 1922)) | (1 << (PlSqlParser.TIER - 1922)) | (1 << (PlSqlParser.TIES - 1922)) | (1 << (PlSqlParser.TIMEOUT - 1922)) | (1 << (PlSqlParser.TIMESTAMP_LTZ_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMESTAMP - 1922)) | (1 << (PlSqlParser.TIMESTAMP_TZ_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMESTAMP_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMES - 1922)) | (1 << (PlSqlParser.TIME - 1922)) | (1 << (PlSqlParser.TIMEZONE_ABBR - 1922)) | (1 << (PlSqlParser.TIMEZONE_HOUR - 1922)) | (1 << (PlSqlParser.TIMEZONE_MINUTE - 1922)) | (1 << (PlSqlParser.TIMEZONE_OFFSET - 1922)) | (1 << (PlSqlParser.TIMEZONE_REGION - 1922)) | (1 << (PlSqlParser.TIME_ZONE - 1922)) | (1 << (PlSqlParser.TIV_GB - 1922)) | (1 << (PlSqlParser.TIV_SSF - 1922)) | (1 << (PlSqlParser.TO_ACLID - 1922)) | (1 << (PlSqlParser.TO_BINARY_DOUBLE - 1922)) | (1 << (PlSqlParser.TO_BINARY_FLOAT - 1922)) | (1 << (PlSqlParser.TO_BLOB - 1922)) | (1 << (PlSqlParser.TO_CLOB - 1922)) | (1 << (PlSqlParser.TO_DSINTERVAL - 1922)) | (1 << (PlSqlParser.TO_LOB - 1922)))) !== 0) || ((((_la - 1954)) & ~0x1f) == 0 && ((1 << (_la - 1954)) & ((1 << (PlSqlParser.TO_MULTI_BYTE - 1954)) | (1 << (PlSqlParser.TO_NCHAR - 1954)) | (1 << (PlSqlParser.TO_NCLOB - 1954)) | (1 << (PlSqlParser.TO_NUMBER - 1954)) | (1 << (PlSqlParser.TOPLEVEL - 1954)) | (1 << (PlSqlParser.TO_SINGLE_BYTE - 1954)) | (1 << (PlSqlParser.TO_TIMESTAMP - 1954)) | (1 << (PlSqlParser.TO_TIMESTAMP_TZ - 1954)) | (1 << (PlSqlParser.TO_TIME - 1954)) | (1 << (PlSqlParser.TO_TIME_TZ - 1954)) | (1 << (PlSqlParser.TO_YMINTERVAL - 1954)) | (1 << (PlSqlParser.TRACE - 1954)) | (1 << (PlSqlParser.TRACING - 1954)) | (1 << (PlSqlParser.TRACKING - 1954)) | (1 << (PlSqlParser.TRAILING - 1954)) | (1 << (PlSqlParser.TRANSACTION - 1954)) | (1 << (PlSqlParser.TRANSFORM_DISTINCT_AGG - 1954)) | (1 << (PlSqlParser.TRANSITIONAL - 1954)) | (1 << (PlSqlParser.TRANSITION - 1954)) | (1 << (PlSqlParser.TRANSLATE - 1954)) | (1 << (PlSqlParser.TRANSLATION - 1954)) | (1 << (PlSqlParser.TREAT - 1954)) | (1 << (PlSqlParser.TRIGGERS - 1954)) | (1 << (PlSqlParser.TRIGGER - 1954)) | (1 << (PlSqlParser.TRUE - 1954)) | (1 << (PlSqlParser.TRUNCATE - 1954)) | (1 << (PlSqlParser.TRUNC - 1954)) | (1 << (PlSqlParser.TRUSTED - 1954)) | (1 << (PlSqlParser.TRUST - 1954)) | (1 << (PlSqlParser.TUNING - 1954)) | (1 << (PlSqlParser.TX - 1954)))) !== 0) || ((((_la - 1986)) & ~0x1f) == 0 && ((1 << (_la - 1986)) & ((1 << (PlSqlParser.TYPES - 1986)) | (1 << (PlSqlParser.TYPE - 1986)) | (1 << (PlSqlParser.TZ_OFFSET - 1986)) | (1 << (PlSqlParser.UB2 - 1986)) | (1 << (PlSqlParser.UBA - 1986)) | (1 << (PlSqlParser.UCS2 - 1986)) | (1 << (PlSqlParser.UID - 1986)) | (1 << (PlSqlParser.UNARCHIVED - 1986)) | (1 << (PlSqlParser.UNBOUNDED - 1986)) | (1 << (PlSqlParser.UNBOUND - 1986)) | (1 << (PlSqlParser.UNCONDITIONAL - 1986)) | (1 << (PlSqlParser.UNDER - 1986)) | (1 << (PlSqlParser.UNDO - 1986)) | (1 << (PlSqlParser.UNDROP - 1986)) | (1 << (PlSqlParser.UNIFORM - 1986)) | (1 << (PlSqlParser.UNISTR - 1986)) | (1 << (PlSqlParser.UNLIMITED - 1986)) | (1 << (PlSqlParser.UNLOAD - 1986)) | (1 << (PlSqlParser.UNLOCK - 1986)) | (1 << (PlSqlParser.UNMATCHED - 1986)) | (1 << (PlSqlParser.UNNEST_INNERJ_DISTINCT_VIEW - 1986)) | (1 << (PlSqlParser.UNNEST_NOSEMIJ_NODISTINCTVIEW - 1986)) | (1 << (PlSqlParser.UNNEST_SEMIJ_VIEW - 1986)) | (1 << (PlSqlParser.UNNEST - 1986)) | (1 << (PlSqlParser.UNPACKED - 1986)) | (1 << (PlSqlParser.UNPIVOT - 1986)) | (1 << (PlSqlParser.UNPLUG - 1986)) | (1 << (PlSqlParser.UNPROTECTED - 1986)) | (1 << (PlSqlParser.UNQUIESCE - 1986)) | (1 << (PlSqlParser.UNRECOVERABLE - 1986)))) !== 0) || ((((_la - 2018)) & ~0x1f) == 0 && ((1 << (_la - 2018)) & ((1 << (PlSqlParser.UNRESTRICTED - 2018)) | (1 << (PlSqlParser.UNSUBSCRIBE - 2018)) | (1 << (PlSqlParser.UNTIL - 2018)) | (1 << (PlSqlParser.UNUSABLE - 2018)) | (1 << (PlSqlParser.UNUSED - 2018)) | (1 << (PlSqlParser.UPDATABLE - 2018)) | (1 << (PlSqlParser.UPDATED - 2018)) | (1 << (PlSqlParser.UPDATEXML - 2018)) | (1 << (PlSqlParser.UPD_INDEXES - 2018)) | (1 << (PlSqlParser.UPD_JOININDEX - 2018)) | (1 << (PlSqlParser.UPGRADE - 2018)) | (1 << (PlSqlParser.UPPER - 2018)) | (1 << (PlSqlParser.UPSERT - 2018)) | (1 << (PlSqlParser.UROWID - 2018)) | (1 << (PlSqlParser.USABLE - 2018)) | (1 << (PlSqlParser.USAGE - 2018)) | (1 << (PlSqlParser.USE_ANTI - 2018)) | (1 << (PlSqlParser.USE_CONCAT - 2018)) | (1 << (PlSqlParser.USE_CUBE - 2018)) | (1 << (PlSqlParser.USE_HASH_AGGREGATION - 2018)) | (1 << (PlSqlParser.USE_HASH_GBY_FOR_PUSHDOWN - 2018)) | (1 << (PlSqlParser.USE_HASH - 2018)) | (1 << (PlSqlParser.USE_HIDDEN_PARTITIONS - 2018)) | (1 << (PlSqlParser.USE_INVISIBLE_INDEXES - 2018)) | (1 << (PlSqlParser.USE_MERGE_CARTESIAN - 2018)) | (1 << (PlSqlParser.USE_MERGE - 2018)) | (1 << (PlSqlParser.USE_NL - 2018)) | (1 << (PlSqlParser.USE_NL_WITH_INDEX - 2018)) | (1 << (PlSqlParser.USE_PRIVATE_OUTLINES - 2018)) | (1 << (PlSqlParser.USER_DATA - 2018)) | (1 << (PlSqlParser.USER_DEFINED - 2018)))) !== 0) || ((((_la - 2050)) & ~0x1f) == 0 && ((1 << (_la - 2050)) & ((1 << (PlSqlParser.USERENV - 2050)) | (1 << (PlSqlParser.USERGROUP - 2050)) | (1 << (PlSqlParser.USER_RECYCLEBIN - 2050)) | (1 << (PlSqlParser.USERS - 2050)) | (1 << (PlSqlParser.USER_TABLESPACES - 2050)) | (1 << (PlSqlParser.USER - 2050)) | (1 << (PlSqlParser.USE_SEMI - 2050)) | (1 << (PlSqlParser.USE_STORED_OUTLINES - 2050)) | (1 << (PlSqlParser.USE_TTT_FOR_GSETS - 2050)) | (1 << (PlSqlParser.USE - 2050)) | (1 << (PlSqlParser.USE_VECTOR_AGGREGATION - 2050)) | (1 << (PlSqlParser.USE_WEAK_NAME_RESL - 2050)) | (1 << (PlSqlParser.USING_NO_EXPAND - 2050)) | (1 << (PlSqlParser.USING - 2050)) | (1 << (PlSqlParser.UTF16BE - 2050)) | (1 << (PlSqlParser.UTF16LE - 2050)) | (1 << (PlSqlParser.UTF32 - 2050)) | (1 << (PlSqlParser.UTF8 - 2050)) | (1 << (PlSqlParser.V1 - 2050)) | (1 << (PlSqlParser.V2 - 2050)) | (1 << (PlSqlParser.VALIDATE - 2050)) | (1 << (PlSqlParser.VALIDATION - 2050)) | (1 << (PlSqlParser.VALID_TIME_END - 2050)) | (1 << (PlSqlParser.VALUE - 2050)) | (1 << (PlSqlParser.VARCHAR2 - 2050)) | (1 << (PlSqlParser.VARCHAR - 2050)) | (1 << (PlSqlParser.VARIABLE - 2050)) | (1 << (PlSqlParser.VAR_POP - 2050)) | (1 << (PlSqlParser.VARRAYS - 2050)) | (1 << (PlSqlParser.VARRAY - 2050)) | (1 << (PlSqlParser.VAR_SAMP - 2050)))) !== 0) || ((((_la - 2082)) & ~0x1f) == 0 && ((1 << (_la - 2082)) & ((1 << (PlSqlParser.VARYING - 2082)) | (1 << (PlSqlParser.VECTOR_READ_TRACE - 2082)) | (1 << (PlSqlParser.VECTOR_READ - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM_DIMS - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM_FACT - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM - 2082)) | (1 << (PlSqlParser.VERIFIER - 2082)) | (1 << (PlSqlParser.VERIFY - 2082)) | (1 << (PlSqlParser.VERSIONING - 2082)) | (1 << (PlSqlParser.VERSIONS_ENDSCN - 2082)) | (1 << (PlSqlParser.VERSIONS_ENDTIME - 2082)) | (1 << (PlSqlParser.VERSIONS_OPERATION - 2082)) | (1 << (PlSqlParser.VERSIONS_STARTSCN - 2082)) | (1 << (PlSqlParser.VERSIONS_STARTTIME - 2082)) | (1 << (PlSqlParser.VERSIONS - 2082)) | (1 << (PlSqlParser.VERSIONS_XID - 2082)) | (1 << (PlSqlParser.VERSION - 2082)) | (1 << (PlSqlParser.VIOLATION - 2082)) | (1 << (PlSqlParser.VIRTUAL - 2082)) | (1 << (PlSqlParser.VISIBILITY - 2082)) | (1 << (PlSqlParser.VISIBLE - 2082)) | (1 << (PlSqlParser.VOLUME - 2082)) | (1 << (PlSqlParser.VSIZE - 2082)) | (1 << (PlSqlParser.WAIT - 2082)) | (1 << (PlSqlParser.WALLET - 2082)) | (1 << (PlSqlParser.WARNING - 2082)) | (1 << (PlSqlParser.WEEKS - 2082)) | (1 << (PlSqlParser.WEEK - 2082)) | (1 << (PlSqlParser.WELLFORMED - 2082)) | (1 << (PlSqlParser.WHENEVER - 2082)) | (1 << (PlSqlParser.WHEN - 2082)))) !== 0) || ((((_la - 2115)) & ~0x1f) == 0 && ((1 << (_la - 2115)) & ((1 << (PlSqlParser.WHILE - 2115)) | (1 << (PlSqlParser.WHITESPACE - 2115)) | (1 << (PlSqlParser.WIDTH_BUCKET - 2115)) | (1 << (PlSqlParser.WITHIN - 2115)) | (1 << (PlSqlParser.WITHOUT - 2115)) | (1 << (PlSqlParser.WITH_PLSQL - 2115)) | (1 << (PlSqlParser.WORK - 2115)) | (1 << (PlSqlParser.WRAPPED - 2115)) | (1 << (PlSqlParser.WRAPPER - 2115)) | (1 << (PlSqlParser.WRITE - 2115)) | (1 << (PlSqlParser.XDB_FASTPATH_INSERT - 2115)) | (1 << (PlSqlParser.X_DYN_PRUNE - 2115)) | (1 << (PlSqlParser.XID - 2115)) | (1 << (PlSqlParser.XML2OBJECT - 2115)) | (1 << (PlSqlParser.XMLAGG - 2115)) | (1 << (PlSqlParser.XMLATTRIBUTES - 2115)) | (1 << (PlSqlParser.XMLCAST - 2115)) | (1 << (PlSqlParser.XMLCDATA - 2115)) | (1 << (PlSqlParser.XMLCOLATTVAL - 2115)) | (1 << (PlSqlParser.XMLCOMMENT - 2115)) | (1 << (PlSqlParser.XMLCONCAT - 2115)) | (1 << (PlSqlParser.XMLDIFF - 2115)) | (1 << (PlSqlParser.XML_DML_RWT_STMT - 2115)) | (1 << (PlSqlParser.XMLELEMENT - 2115)) | (1 << (PlSqlParser.XMLEXISTS2 - 2115)) | (1 << (PlSqlParser.XMLEXISTS - 2115)) | (1 << (PlSqlParser.XMLFOREST - 2115)) | (1 << (PlSqlParser.XMLINDEX_REWRITE_IN_SELECT - 2115)) | (1 << (PlSqlParser.XMLINDEX_REWRITE - 2115)))) !== 0) || ((((_la - 2147)) & ~0x1f) == 0 && ((1 << (_la - 2147)) & ((1 << (PlSqlParser.XMLINDEX_SEL_IDX_TBL - 2147)) | (1 << (PlSqlParser.XMLISNODE - 2147)) | (1 << (PlSqlParser.XMLISVALID - 2147)) | (1 << (PlSqlParser.XMLNAMESPACES - 2147)) | (1 << (PlSqlParser.XMLPARSE - 2147)) | (1 << (PlSqlParser.XMLPATCH - 2147)) | (1 << (PlSqlParser.XMLPI - 2147)) | (1 << (PlSqlParser.XMLQUERYVAL - 2147)) | (1 << (PlSqlParser.XMLQUERY - 2147)) | (1 << (PlSqlParser.XMLROOT - 2147)) | (1 << (PlSqlParser.XMLSCHEMA - 2147)) | (1 << (PlSqlParser.XMLSERIALIZE - 2147)) | (1 << (PlSqlParser.XMLTABLE - 2147)) | (1 << (PlSqlParser.XMLTRANSFORMBLOB - 2147)) | (1 << (PlSqlParser.XMLTRANSFORM - 2147)) | (1 << (PlSqlParser.XMLTYPE - 2147)) | (1 << (PlSqlParser.XML - 2147)) | (1 << (PlSqlParser.XPATHTABLE - 2147)) | (1 << (PlSqlParser.XS_SYS_CONTEXT - 2147)) | (1 << (PlSqlParser.XS - 2147)) | (1 << (PlSqlParser.YEARS - 2147)) | (1 << (PlSqlParser.YEAR - 2147)) | (1 << (PlSqlParser.YES - 2147)) | (1 << (PlSqlParser.YMINTERVAL_UNCONSTRAINED - 2147)) | (1 << (PlSqlParser.ZONEMAP - 2147)) | (1 << (PlSqlParser.ZONE - 2147)) | (1 << (PlSqlParser.PREDICTION - 2147)) | (1 << (PlSqlParser.PREDICTION_BOUNDS - 2147)) | (1 << (PlSqlParser.PREDICTION_COST - 2147)) | (1 << (PlSqlParser.PREDICTION_DETAILS - 2147)) | (1 << (PlSqlParser.PREDICTION_PROBABILITY - 2147)))) !== 0) || ((((_la - 2179)) & ~0x1f) == 0 && ((1 << (_la - 2179)) & ((1 << (PlSqlParser.PREDICTION_SET - 2179)) | (1 << (PlSqlParser.CUME_DIST - 2179)) | (1 << (PlSqlParser.DENSE_RANK - 2179)) | (1 << (PlSqlParser.LISTAGG - 2179)) | (1 << (PlSqlParser.PERCENT_RANK - 2179)) | (1 << (PlSqlParser.PERCENTILE_CONT - 2179)) | (1 << (PlSqlParser.PERCENTILE_DISC - 2179)) | (1 << (PlSqlParser.RANK - 2179)) | (1 << (PlSqlParser.AVG - 2179)) | (1 << (PlSqlParser.CORR - 2179)) | (1 << (PlSqlParser.COVAR_ - 2179)) | (1 << (PlSqlParser.LAG - 2179)) | (1 << (PlSqlParser.LEAD - 2179)) | (1 << (PlSqlParser.MAX - 2179)) | (1 << (PlSqlParser.MEDIAN - 2179)) | (1 << (PlSqlParser.MIN - 2179)) | (1 << (PlSqlParser.NTILE - 2179)) | (1 << (PlSqlParser.NVL - 2179)) | (1 << (PlSqlParser.RATIO_TO_REPORT - 2179)) | (1 << (PlSqlParser.REGR_ - 2179)) | (1 << (PlSqlParser.ROUND - 2179)) | (1 << (PlSqlParser.ROW_NUMBER - 2179)) | (1 << (PlSqlParser.SUBSTR - 2179)) | (1 << (PlSqlParser.TO_CHAR - 2179)) | (1 << (PlSqlParser.TRIM - 2179)) | (1 << (PlSqlParser.SUM - 2179)) | (1 << (PlSqlParser.STDDEV - 2179)) | (1 << (PlSqlParser.VAR_ - 2179)) | (1 << (PlSqlParser.VARIANCE - 2179)) | (1 << (PlSqlParser.LEAST - 2179)) | (1 << (PlSqlParser.GREATEST - 2179)))) !== 0) || _la===PlSqlParser.TO_DATE || _la===PlSqlParser.PERIOD || _la===PlSqlParser.REGULAR_ID) {
+ this.state = 5666;
+ this.partition_name();
+ }
+
+ this.state = 5669;
+ this.range_values_clause();
+ this.state = 5670;
+ this.table_partition_description();
+ this.state = 5681;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 5671;
+ this.match(PlSqlParser.COMMA);
+ this.state = 5672;
+ this.match(PlSqlParser.PARTITION);
+ this.state = 5674;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if((((_la) & ~0x1f) == 0 && ((1 << _la) & ((1 << PlSqlParser.ABORT) | (1 << PlSqlParser.ABS) | (1 << PlSqlParser.ACCESS) | (1 << PlSqlParser.ACCESSED) | (1 << PlSqlParser.ACCOUNT) | (1 << PlSqlParser.ACL) | (1 << PlSqlParser.ACOS) | (1 << PlSqlParser.ACTION) | (1 << PlSqlParser.ACTIONS) | (1 << PlSqlParser.ACTIVATE) | (1 << PlSqlParser.ACTIVE) | (1 << PlSqlParser.ACTIVE_COMPONENT) | (1 << PlSqlParser.ACTIVE_DATA) | (1 << PlSqlParser.ACTIVE_FUNCTION) | (1 << PlSqlParser.ACTIVE_TAG) | (1 << PlSqlParser.ACTIVITY) | (1 << PlSqlParser.ADAPTIVE_PLAN) | (1 << PlSqlParser.ADD) | (1 << PlSqlParser.ADD_COLUMN) | (1 << PlSqlParser.ADD_GROUP) | (1 << PlSqlParser.ADD_MONTHS) | (1 << PlSqlParser.ADJ_DATE) | (1 << PlSqlParser.ADMIN) | (1 << PlSqlParser.ADMINISTER) | (1 << PlSqlParser.ADMINISTRATOR) | (1 << PlSqlParser.ADVANCED) | (1 << PlSqlParser.ADVISE) | (1 << PlSqlParser.ADVISOR) | (1 << PlSqlParser.AFD_DISKSTRING) | (1 << PlSqlParser.AFTER) | (1 << PlSqlParser.AGENT))) !== 0) || ((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (PlSqlParser.AGGREGATE - 32)) | (1 << (PlSqlParser.A_LETTER - 32)) | (1 << (PlSqlParser.ALIAS - 32)) | (1 << (PlSqlParser.ALLOCATE - 32)) | (1 << (PlSqlParser.ALLOW - 32)) | (1 << (PlSqlParser.ALL_ROWS - 32)) | (1 << (PlSqlParser.ALWAYS - 32)) | (1 << (PlSqlParser.ANALYZE - 32)) | (1 << (PlSqlParser.ANCILLARY - 32)) | (1 << (PlSqlParser.AND_EQUAL - 32)) | (1 << (PlSqlParser.ANOMALY - 32)) | (1 << (PlSqlParser.ANSI_REARCH - 32)) | (1 << (PlSqlParser.ANTIJOIN - 32)) | (1 << (PlSqlParser.ANYSCHEMA - 32)) | (1 << (PlSqlParser.APPEND - 32)) | (1 << (PlSqlParser.APPENDCHILDXML - 32)) | (1 << (PlSqlParser.APPEND_VALUES - 32)) | (1 << (PlSqlParser.APPLICATION - 32)) | (1 << (PlSqlParser.APPLY - 32)) | (1 << (PlSqlParser.APPROX_COUNT_DISTINCT - 32)) | (1 << (PlSqlParser.ARCHIVAL - 32)) | (1 << (PlSqlParser.ARCHIVE - 32)) | (1 << (PlSqlParser.ARCHIVED - 32)) | (1 << (PlSqlParser.ARCHIVELOG - 32)) | (1 << (PlSqlParser.ARRAY - 32)) | (1 << (PlSqlParser.ASCII - 32)))) !== 0) || ((((_la - 64)) & ~0x1f) == 0 && ((1 << (_la - 64)) & ((1 << (PlSqlParser.ASCIISTR - 64)) | (1 << (PlSqlParser.ASIN - 64)) | (1 << (PlSqlParser.ASIS - 64)) | (1 << (PlSqlParser.ASSEMBLY - 64)) | (1 << (PlSqlParser.ASSIGN - 64)) | (1 << (PlSqlParser.ASSOCIATE - 64)) | (1 << (PlSqlParser.ASYNC - 64)) | (1 << (PlSqlParser.ASYNCHRONOUS - 64)) | (1 << (PlSqlParser.ATAN2 - 64)) | (1 << (PlSqlParser.ATAN - 64)) | (1 << (PlSqlParser.AT - 64)) | (1 << (PlSqlParser.ATTRIBUTE - 64)) | (1 << (PlSqlParser.ATTRIBUTES - 64)) | (1 << (PlSqlParser.AUTHENTICATED - 64)) | (1 << (PlSqlParser.AUTHENTICATION - 64)) | (1 << (PlSqlParser.AUTHID - 64)) | (1 << (PlSqlParser.AUTHORIZATION - 64)) | (1 << (PlSqlParser.AUTOALLOCATE - 64)) | (1 << (PlSqlParser.AUTO - 64)) | (1 << (PlSqlParser.AUTOEXTEND - 64)) | (1 << (PlSqlParser.AUTO_LOGIN - 64)) | (1 << (PlSqlParser.AUTOMATIC - 64)) | (1 << (PlSqlParser.AUTONOMOUS_TRANSACTION - 64)) | (1 << (PlSqlParser.AUTO_REOPTIMIZE - 64)) | (1 << (PlSqlParser.AVAILABILITY - 64)) | (1 << (PlSqlParser.AVRO - 64)) | (1 << (PlSqlParser.BACKGROUND - 64)) | (1 << (PlSqlParser.BACKUP - 64)) | (1 << (PlSqlParser.BASIC - 64)))) !== 0) || ((((_la - 96)) & ~0x1f) == 0 && ((1 << (_la - 96)) & ((1 << (PlSqlParser.BASICFILE - 96)) | (1 << (PlSqlParser.BATCH - 96)) | (1 << (PlSqlParser.BATCHSIZE - 96)) | (1 << (PlSqlParser.BATCH_TABLE_ACCESS_BY_ROWID - 96)) | (1 << (PlSqlParser.BECOME - 96)) | (1 << (PlSqlParser.BEFORE - 96)) | (1 << (PlSqlParser.BEGIN - 96)) | (1 << (PlSqlParser.BEGINNING - 96)) | (1 << (PlSqlParser.BEGIN_OUTLINE_DATA - 96)) | (1 << (PlSqlParser.BEHALF - 96)) | (1 << (PlSqlParser.BEQUEATH - 96)) | (1 << (PlSqlParser.BFILE - 96)) | (1 << (PlSqlParser.BFILENAME - 96)) | (1 << (PlSqlParser.BIGFILE - 96)) | (1 << (PlSqlParser.BINARY - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE_INFINITY - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE_NAN - 96)) | (1 << (PlSqlParser.BINARY_FLOAT - 96)) | (1 << (PlSqlParser.BINARY_FLOAT_INFINITY - 96)) | (1 << (PlSqlParser.BINARY_FLOAT_NAN - 96)) | (1 << (PlSqlParser.BINARY_INTEGER - 96)) | (1 << (PlSqlParser.BIND_AWARE - 96)) | (1 << (PlSqlParser.BINDING - 96)) | (1 << (PlSqlParser.BIN_TO_NUM - 96)) | (1 << (PlSqlParser.BITAND - 96)) | (1 << (PlSqlParser.BITMAP_AND - 96)) | (1 << (PlSqlParser.BITMAP - 96)) | (1 << (PlSqlParser.BITMAPS - 96)) | (1 << (PlSqlParser.BITMAP_TREE - 96)) | (1 << (PlSqlParser.BITS - 96)))) !== 0) || ((((_la - 128)) & ~0x1f) == 0 && ((1 << (_la - 128)) & ((1 << (PlSqlParser.BLOB - 128)) | (1 << (PlSqlParser.BLOCK - 128)) | (1 << (PlSqlParser.BLOCK_RANGE - 128)) | (1 << (PlSqlParser.BLOCKS - 128)) | (1 << (PlSqlParser.BLOCKSIZE - 128)) | (1 << (PlSqlParser.BODY - 128)) | (1 << (PlSqlParser.BOOLEAN - 128)) | (1 << (PlSqlParser.BOTH - 128)) | (1 << (PlSqlParser.BOUND - 128)) | (1 << (PlSqlParser.BRANCH - 128)) | (1 << (PlSqlParser.BREADTH - 128)) | (1 << (PlSqlParser.BROADCAST - 128)) | (1 << (PlSqlParser.BSON - 128)) | (1 << (PlSqlParser.BUFFER - 128)) | (1 << (PlSqlParser.BUFFER_CACHE - 128)) | (1 << (PlSqlParser.BUFFER_POOL - 128)) | (1 << (PlSqlParser.BUILD - 128)) | (1 << (PlSqlParser.BULK - 128)) | (1 << (PlSqlParser.BYPASS_RECURSIVE_CHECK - 128)) | (1 << (PlSqlParser.BYPASS_UJVC - 128)) | (1 << (PlSqlParser.BYTE - 128)) | (1 << (PlSqlParser.CACHE - 128)) | (1 << (PlSqlParser.CACHE_CB - 128)) | (1 << (PlSqlParser.CACHE_INSTANCES - 128)) | (1 << (PlSqlParser.CACHE_TEMP_TABLE - 128)) | (1 << (PlSqlParser.CACHING - 128)) | (1 << (PlSqlParser.CALCULATED - 128)) | (1 << (PlSqlParser.CALLBACK - 128)) | (1 << (PlSqlParser.CALL - 128)) | (1 << (PlSqlParser.CANCEL - 128)))) !== 0) || ((((_la - 160)) & ~0x1f) == 0 && ((1 << (_la - 160)) & ((1 << (PlSqlParser.CAPACITY - 160)) | (1 << (PlSqlParser.CARDINALITY - 160)) | (1 << (PlSqlParser.CASCADE - 160)) | (1 << (PlSqlParser.CASE - 160)) | (1 << (PlSqlParser.CAST - 160)) | (1 << (PlSqlParser.CATEGORY - 160)) | (1 << (PlSqlParser.CDBDEFAULT - 160)) | (1 << (PlSqlParser.CEIL - 160)) | (1 << (PlSqlParser.CELL_FLASH_CACHE - 160)) | (1 << (PlSqlParser.CERTIFICATE - 160)) | (1 << (PlSqlParser.CFILE - 160)) | (1 << (PlSqlParser.CHAINED - 160)) | (1 << (PlSqlParser.CHANGE - 160)) | (1 << (PlSqlParser.CHANGE_DUPKEY_ERROR_INDEX - 160)) | (1 << (PlSqlParser.CHARACTER - 160)) | (1 << (PlSqlParser.CHAR - 160)) | (1 << (PlSqlParser.CHAR_CS - 160)) | (1 << (PlSqlParser.CHARTOROWID - 160)) | (1 << (PlSqlParser.CHECK_ACL_REWRITE - 160)) | (1 << (PlSqlParser.CHECKPOINT - 160)) | (1 << (PlSqlParser.CHILD - 160)) | (1 << (PlSqlParser.CHOOSE - 160)) | (1 << (PlSqlParser.CHR - 160)) | (1 << (PlSqlParser.CHUNK - 160)) | (1 << (PlSqlParser.CLASS - 160)) | (1 << (PlSqlParser.CLASSIFIER - 160)) | (1 << (PlSqlParser.CLEANUP - 160)) | (1 << (PlSqlParser.CLEAR - 160)) | (1 << (PlSqlParser.C_LETTER - 160)) | (1 << (PlSqlParser.CLIENT - 160)))) !== 0) || ((((_la - 192)) & ~0x1f) == 0 && ((1 << (_la - 192)) & ((1 << (PlSqlParser.CLOB - 192)) | (1 << (PlSqlParser.CLONE - 192)) | (1 << (PlSqlParser.CLOSE_CACHED_OPEN_CURSORS - 192)) | (1 << (PlSqlParser.CLOSE - 192)) | (1 << (PlSqlParser.CLUSTER_BY_ROWID - 192)) | (1 << (PlSqlParser.CLUSTER - 192)) | (1 << (PlSqlParser.CLUSTER_DETAILS - 192)) | (1 << (PlSqlParser.CLUSTER_DISTANCE - 192)) | (1 << (PlSqlParser.CLUSTER_ID - 192)) | (1 << (PlSqlParser.CLUSTERING - 192)) | (1 << (PlSqlParser.CLUSTERING_FACTOR - 192)) | (1 << (PlSqlParser.CLUSTER_PROBABILITY - 192)) | (1 << (PlSqlParser.CLUSTER_SET - 192)) | (1 << (PlSqlParser.COALESCE - 192)) | (1 << (PlSqlParser.COALESCE_SQ - 192)) | (1 << (PlSqlParser.COARSE - 192)) | (1 << (PlSqlParser.CO_AUTH_IND - 192)) | (1 << (PlSqlParser.COLD - 192)) | (1 << (PlSqlParser.COLLECT - 192)) | (1 << (PlSqlParser.COLUMNAR - 192)) | (1 << (PlSqlParser.COLUMN_AUTH_INDICATOR - 192)) | (1 << (PlSqlParser.COLUMN - 192)) | (1 << (PlSqlParser.COLUMNS - 192)) | (1 << (PlSqlParser.COLUMN_STATS - 192)) | (1 << (PlSqlParser.COLUMN_VALUE - 192)) | (1 << (PlSqlParser.COMMENT - 192)) | (1 << (PlSqlParser.COMMIT - 192)) | (1 << (PlSqlParser.COMMITTED - 192)) | (1 << (PlSqlParser.COMMON_DATA - 192)) | (1 << (PlSqlParser.COMPACT - 192)) | (1 << (PlSqlParser.COMPATIBILITY - 192)) | (1 << (PlSqlParser.COMPILE - 192)))) !== 0) || ((((_la - 224)) & ~0x1f) == 0 && ((1 << (_la - 224)) & ((1 << (PlSqlParser.COMPLETE - 224)) | (1 << (PlSqlParser.COMPLIANCE - 224)) | (1 << (PlSqlParser.COMPONENT - 224)) | (1 << (PlSqlParser.COMPONENTS - 224)) | (1 << (PlSqlParser.COMPOSE - 224)) | (1 << (PlSqlParser.COMPOSITE - 224)) | (1 << (PlSqlParser.COMPOSITE_LIMIT - 224)) | (1 << (PlSqlParser.COMPOUND - 224)) | (1 << (PlSqlParser.COMPUTE - 224)) | (1 << (PlSqlParser.CONCAT - 224)) | (1 << (PlSqlParser.CON_DBID_TO_ID - 224)) | (1 << (PlSqlParser.CONDITIONAL - 224)) | (1 << (PlSqlParser.CONDITION - 224)) | (1 << (PlSqlParser.CONFIRM - 224)) | (1 << (PlSqlParser.CONFORMING - 224)) | (1 << (PlSqlParser.CON_GUID_TO_ID - 224)) | (1 << (PlSqlParser.CON_ID - 224)) | (1 << (PlSqlParser.CON_NAME_TO_ID - 224)) | (1 << (PlSqlParser.CONNECT_BY_CB_WHR_ONLY - 224)) | (1 << (PlSqlParser.CONNECT_BY_COMBINE_SW - 224)) | (1 << (PlSqlParser.CONNECT_BY_COST_BASED - 224)) | (1 << (PlSqlParser.CONNECT_BY_ELIM_DUPS - 224)) | (1 << (PlSqlParser.CONNECT_BY_FILTERING - 224)) | (1 << (PlSqlParser.CONNECT_BY_ISCYCLE - 224)) | (1 << (PlSqlParser.CONNECT_BY_ISLEAF - 224)) | (1 << (PlSqlParser.CONNECT_BY_ROOT - 224)) | (1 << (PlSqlParser.CONNECT_TIME - 224)) | (1 << (PlSqlParser.CONSIDER - 224)) | (1 << (PlSqlParser.CONSISTENT - 224)) | (1 << (PlSqlParser.CONSTANT - 224)))) !== 0) || ((((_la - 256)) & ~0x1f) == 0 && ((1 << (_la - 256)) & ((1 << (PlSqlParser.CONST - 256)) | (1 << (PlSqlParser.CONSTRAINT - 256)) | (1 << (PlSqlParser.CONSTRAINTS - 256)) | (1 << (PlSqlParser.CONSTRUCTOR - 256)) | (1 << (PlSqlParser.CONTAINER - 256)) | (1 << (PlSqlParser.CONTAINER_DATA - 256)) | (1 << (PlSqlParser.CONTAINERS - 256)) | (1 << (PlSqlParser.CONTENT - 256)) | (1 << (PlSqlParser.CONTENTS - 256)) | (1 << (PlSqlParser.CONTEXT - 256)) | (1 << (PlSqlParser.CONTINUE - 256)) | (1 << (PlSqlParser.CONTROLFILE - 256)) | (1 << (PlSqlParser.CON_UID_TO_ID - 256)) | (1 << (PlSqlParser.CONVERT - 256)) | (1 << (PlSqlParser.COOKIE - 256)) | (1 << (PlSqlParser.COPY - 256)) | (1 << (PlSqlParser.CORR_K - 256)) | (1 << (PlSqlParser.CORR_S - 256)) | (1 << (PlSqlParser.CORRUPTION - 256)) | (1 << (PlSqlParser.CORRUPT_XID_ALL - 256)) | (1 << (PlSqlParser.CORRUPT_XID - 256)) | (1 << (PlSqlParser.COS - 256)) | (1 << (PlSqlParser.COSH - 256)) | (1 << (PlSqlParser.COST - 256)) | (1 << (PlSqlParser.COST_XML_QUERY_REWRITE - 256)) | (1 << (PlSqlParser.COUNT - 256)) | (1 << (PlSqlParser.COVAR_POP - 256)) | (1 << (PlSqlParser.COVAR_SAMP - 256)) | (1 << (PlSqlParser.CPU_COSTING - 256)) | (1 << (PlSqlParser.CPU_PER_CALL - 256)) | (1 << (PlSqlParser.CPU_PER_SESSION - 256)) | (1 << (PlSqlParser.CRASH - 256)))) !== 0) || ((((_la - 289)) & ~0x1f) == 0 && ((1 << (_la - 289)) & ((1 << (PlSqlParser.CREATE_FILE_DEST - 289)) | (1 << (PlSqlParser.CREATE_STORED_OUTLINES - 289)) | (1 << (PlSqlParser.CREATION - 289)) | (1 << (PlSqlParser.CREDENTIAL - 289)) | (1 << (PlSqlParser.CRITICAL - 289)) | (1 << (PlSqlParser.CROSS - 289)) | (1 << (PlSqlParser.CROSSEDITION - 289)) | (1 << (PlSqlParser.CSCONVERT - 289)) | (1 << (PlSqlParser.CUBE_AJ - 289)) | (1 << (PlSqlParser.CUBE - 289)) | (1 << (PlSqlParser.CUBE_GB - 289)) | (1 << (PlSqlParser.CUBE_SJ - 289)) | (1 << (PlSqlParser.CUME_DISTM - 289)) | (1 << (PlSqlParser.CURRENT - 289)) | (1 << (PlSqlParser.CURRENT_DATE - 289)) | (1 << (PlSqlParser.CURRENT_SCHEMA - 289)) | (1 << (PlSqlParser.CURRENT_TIME - 289)) | (1 << (PlSqlParser.CURRENT_TIMESTAMP - 289)) | (1 << (PlSqlParser.CURRENT_USER - 289)) | (1 << (PlSqlParser.CURRENTV - 289)) | (1 << (PlSqlParser.CURSOR - 289)) | (1 << (PlSqlParser.CURSOR_SHARING_EXACT - 289)) | (1 << (PlSqlParser.CURSOR_SPECIFIC_SEGMENT - 289)) | (1 << (PlSqlParser.CUSTOMDATUM - 289)) | (1 << (PlSqlParser.CV - 289)) | (1 << (PlSqlParser.CYCLE - 289)) | (1 << (PlSqlParser.DANGLING - 289)) | (1 << (PlSqlParser.DATABASE - 289)) | (1 << (PlSqlParser.DATA - 289)) | (1 << (PlSqlParser.DATAFILE - 289)) | (1 << (PlSqlParser.DATAFILES - 289)))) !== 0) || ((((_la - 321)) & ~0x1f) == 0 && ((1 << (_la - 321)) & ((1 << (PlSqlParser.DATAMOVEMENT - 321)) | (1 << (PlSqlParser.DATAOBJNO - 321)) | (1 << (PlSqlParser.DATAOBJ_TO_MAT_PARTITION - 321)) | (1 << (PlSqlParser.DATAOBJ_TO_PARTITION - 321)) | (1 << (PlSqlParser.DATAPUMP - 321)) | (1 << (PlSqlParser.DATA_SECURITY_REWRITE_LIMIT - 321)) | (1 << (PlSqlParser.DATE_MODE - 321)) | (1 << (PlSqlParser.DAY - 321)) | (1 << (PlSqlParser.DAYS - 321)) | (1 << (PlSqlParser.DBA - 321)) | (1 << (PlSqlParser.DBA_RECYCLEBIN - 321)) | (1 << (PlSqlParser.DBMS_STATS - 321)) | (1 << (PlSqlParser.DB_ROLE_CHANGE - 321)) | (1 << (PlSqlParser.DBTIMEZONE - 321)) | (1 << (PlSqlParser.DB_UNIQUE_NAME - 321)) | (1 << (PlSqlParser.DB_VERSION - 321)) | (1 << (PlSqlParser.DDL - 321)) | (1 << (PlSqlParser.DEALLOCATE - 321)) | (1 << (PlSqlParser.DEBUG - 321)) | (1 << (PlSqlParser.DEBUGGER - 321)) | (1 << (PlSqlParser.DEC - 321)) | (1 << (PlSqlParser.DECIMAL - 321)) | (1 << (PlSqlParser.DECLARE - 321)) | (1 << (PlSqlParser.DECOMPOSE - 321)) | (1 << (PlSqlParser.DECORRELATE - 321)) | (1 << (PlSqlParser.DECR - 321)) | (1 << (PlSqlParser.DECREMENT - 321)) | (1 << (PlSqlParser.DECRYPT - 321)) | (1 << (PlSqlParser.DEDUPLICATE - 321)) | (1 << (PlSqlParser.DEFAULTS - 321)))) !== 0) || ((((_la - 353)) & ~0x1f) == 0 && ((1 << (_la - 353)) & ((1 << (PlSqlParser.DEFERRABLE - 353)) | (1 << (PlSqlParser.DEFERRED - 353)) | (1 << (PlSqlParser.DEFINED - 353)) | (1 << (PlSqlParser.DEFINE - 353)) | (1 << (PlSqlParser.DEFINER - 353)) | (1 << (PlSqlParser.DEGREE - 353)) | (1 << (PlSqlParser.DELAY - 353)) | (1 << (PlSqlParser.DELEGATE - 353)) | (1 << (PlSqlParser.DELETE_ALL - 353)) | (1 << (PlSqlParser.DELETE - 353)) | (1 << (PlSqlParser.DELETEXML - 353)) | (1 << (PlSqlParser.DEMAND - 353)) | (1 << (PlSqlParser.DENSE_RANKM - 353)) | (1 << (PlSqlParser.DEPENDENT - 353)) | (1 << (PlSqlParser.DEPTH - 353)) | (1 << (PlSqlParser.DEQUEUE - 353)) | (1 << (PlSqlParser.DEREF - 353)) | (1 << (PlSqlParser.DEREF_NO_REWRITE - 353)) | (1 << (PlSqlParser.DESTROY - 353)) | (1 << (PlSqlParser.DETACHED - 353)) | (1 << (PlSqlParser.DETERMINES - 353)) | (1 << (PlSqlParser.DETERMINISTIC - 353)) | (1 << (PlSqlParser.DICTIONARY - 353)) | (1 << (PlSqlParser.DIMENSION - 353)) | (1 << (PlSqlParser.DIMENSIONS - 353)) | (1 << (PlSqlParser.DIRECT_LOAD - 353)) | (1 << (PlSqlParser.DIRECTORY - 353)) | (1 << (PlSqlParser.DIRECT_PATH - 353)) | (1 << (PlSqlParser.DISABLE_ALL - 353)) | (1 << (PlSqlParser.DISABLE - 353)) | (1 << (PlSqlParser.DISABLE_PARALLEL_DML - 353)))) !== 0) || ((((_la - 385)) & ~0x1f) == 0 && ((1 << (_la - 385)) & ((1 << (PlSqlParser.DISABLE_PRESET - 385)) | (1 << (PlSqlParser.DISABLE_RPKE - 385)) | (1 << (PlSqlParser.DISALLOW - 385)) | (1 << (PlSqlParser.DISASSOCIATE - 385)) | (1 << (PlSqlParser.DISCARD - 385)) | (1 << (PlSqlParser.DISCONNECT - 385)) | (1 << (PlSqlParser.DISK - 385)) | (1 << (PlSqlParser.DISKGROUP - 385)) | (1 << (PlSqlParser.DISKS - 385)) | (1 << (PlSqlParser.DISMOUNT - 385)) | (1 << (PlSqlParser.DISTINGUISHED - 385)) | (1 << (PlSqlParser.DISTRIBUTED - 385)) | (1 << (PlSqlParser.DISTRIBUTE - 385)) | (1 << (PlSqlParser.DML - 385)) | (1 << (PlSqlParser.DML_UPDATE - 385)) | (1 << (PlSqlParser.DOCFIDELITY - 385)) | (1 << (PlSqlParser.DOCUMENT - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_FILTER - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_NO_SORT - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_SORT - 385)) | (1 << (PlSqlParser.DOUBLE - 385)) | (1 << (PlSqlParser.DOWNGRADE - 385)) | (1 << (PlSqlParser.DRIVING_SITE - 385)) | (1 << (PlSqlParser.DROP_COLUMN - 385)) | (1 << (PlSqlParser.DROP_GROUP - 385)) | (1 << (PlSqlParser.DSINTERVAL_UNCONSTRAINED - 385)) | (1 << (PlSqlParser.DST_UPGRADE_INSERT_CONV - 385)) | (1 << (PlSqlParser.DUMP - 385)))) !== 0) || ((((_la - 417)) & ~0x1f) == 0 && ((1 << (_la - 417)) & ((1 << (PlSqlParser.DUPLICATE - 417)) | (1 << (PlSqlParser.DV - 417)) | (1 << (PlSqlParser.DYNAMIC - 417)) | (1 << (PlSqlParser.DYNAMIC_SAMPLING - 417)) | (1 << (PlSqlParser.DYNAMIC_SAMPLING_EST_CDN - 417)) | (1 << (PlSqlParser.EACH - 417)) | (1 << (PlSqlParser.EDITIONABLE - 417)) | (1 << (PlSqlParser.EDITION - 417)) | (1 << (PlSqlParser.EDITIONING - 417)) | (1 << (PlSqlParser.EDITIONS - 417)) | (1 << (PlSqlParser.ELEMENT - 417)) | (1 << (PlSqlParser.ELIM_GROUPBY - 417)) | (1 << (PlSqlParser.ELIMINATE_JOIN - 417)) | (1 << (PlSqlParser.ELIMINATE_OBY - 417)) | (1 << (PlSqlParser.ELIMINATE_OUTER_JOIN - 417)) | (1 << (PlSqlParser.EM - 417)) | (1 << (PlSqlParser.EMPTY_BLOB - 417)) | (1 << (PlSqlParser.EMPTY_CLOB - 417)) | (1 << (PlSqlParser.EMPTY - 417)) | (1 << (PlSqlParser.ENABLE_ALL - 417)) | (1 << (PlSqlParser.ENABLE - 417)) | (1 << (PlSqlParser.ENABLE_PARALLEL_DML - 417)) | (1 << (PlSqlParser.ENABLE_PRESET - 417)) | (1 << (PlSqlParser.ENCODING - 417)) | (1 << (PlSqlParser.ENCRYPT - 417)) | (1 << (PlSqlParser.ENCRYPTION - 417)) | (1 << (PlSqlParser.END_OUTLINE_DATA - 417)) | (1 << (PlSqlParser.ENFORCED - 417)) | (1 << (PlSqlParser.ENFORCE - 417)))) !== 0) || ((((_la - 449)) & ~0x1f) == 0 && ((1 << (_la - 449)) & ((1 << (PlSqlParser.ENQUEUE - 449)) | (1 << (PlSqlParser.ENTERPRISE - 449)) | (1 << (PlSqlParser.ENTITYESCAPING - 449)) | (1 << (PlSqlParser.ENTRY - 449)) | (1 << (PlSqlParser.EQUIPART - 449)) | (1 << (PlSqlParser.ERR - 449)) | (1 << (PlSqlParser.ERROR_ARGUMENT - 449)) | (1 << (PlSqlParser.ERROR - 449)) | (1 << (PlSqlParser.ERROR_ON_OVERLAP_TIME - 449)) | (1 << (PlSqlParser.ERRORS - 449)) | (1 << (PlSqlParser.ESCAPE - 449)) | (1 << (PlSqlParser.ESTIMATE - 449)) | (1 << (PlSqlParser.EVAL - 449)) | (1 << (PlSqlParser.EVALNAME - 449)) | (1 << (PlSqlParser.EVALUATE - 449)) | (1 << (PlSqlParser.EVALUATION - 449)) | (1 << (PlSqlParser.EVENTS - 449)) | (1 << (PlSqlParser.EVERY - 449)) | (1 << (PlSqlParser.EXCEPT - 449)) | (1 << (PlSqlParser.EXCEPTION - 449)) | (1 << (PlSqlParser.EXCEPTION_INIT - 449)) | (1 << (PlSqlParser.EXCEPTIONS - 449)) | (1 << (PlSqlParser.EXCHANGE - 449)) | (1 << (PlSqlParser.EXCLUDE - 449)) | (1 << (PlSqlParser.EXCLUDING - 449)) | (1 << (PlSqlParser.EXECUTE - 449)) | (1 << (PlSqlParser.EXEMPT - 449)) | (1 << (PlSqlParser.EXISTING - 449)) | (1 << (PlSqlParser.EXISTS - 449)) | (1 << (PlSqlParser.EXISTSNODE - 449)) | (1 << (PlSqlParser.EXIT - 449)))) !== 0) || ((((_la - 481)) & ~0x1f) == 0 && ((1 << (_la - 481)) & ((1 << (PlSqlParser.EXPAND_GSET_TO_UNION - 481)) | (1 << (PlSqlParser.EXPAND_TABLE - 481)) | (1 << (PlSqlParser.EXP - 481)) | (1 << (PlSqlParser.EXPIRE - 481)) | (1 << (PlSqlParser.EXPLAIN - 481)) | (1 << (PlSqlParser.EXPLOSION - 481)) | (1 << (PlSqlParser.EXPORT - 481)) | (1 << (PlSqlParser.EXPR_CORR_CHECK - 481)) | (1 << (PlSqlParser.EXPRESS - 481)) | (1 << (PlSqlParser.EXTENDS - 481)) | (1 << (PlSqlParser.EXTENT - 481)) | (1 << (PlSqlParser.EXTENTS - 481)) | (1 << (PlSqlParser.EXTERNAL - 481)) | (1 << (PlSqlParser.EXTERNALLY - 481)) | (1 << (PlSqlParser.EXTRACTCLOBXML - 481)) | (1 << (PlSqlParser.EXTRACT - 481)) | (1 << (PlSqlParser.EXTRACTVALUE - 481)) | (1 << (PlSqlParser.EXTRA - 481)) | (1 << (PlSqlParser.FACILITY - 481)) | (1 << (PlSqlParser.FACT - 481)) | (1 << (PlSqlParser.FACTOR - 481)) | (1 << (PlSqlParser.FACTORIZE_JOIN - 481)) | (1 << (PlSqlParser.FAILED - 481)) | (1 << (PlSqlParser.FAILED_LOGIN_ATTEMPTS - 481)) | (1 << (PlSqlParser.FAILGROUP - 481)) | (1 << (PlSqlParser.FAILOVER - 481)) | (1 << (PlSqlParser.FAILURE - 481)) | (1 << (PlSqlParser.FALSE - 481)) | (1 << (PlSqlParser.FAMILY - 481)) | (1 << (PlSqlParser.FAR - 481)) | (1 << (PlSqlParser.FAST - 481)) | (1 << (PlSqlParser.FASTSTART - 481)))) !== 0) || ((((_la - 513)) & ~0x1f) == 0 && ((1 << (_la - 513)) & ((1 << (PlSqlParser.FBTSCAN - 513)) | (1 << (PlSqlParser.FEATURE_DETAILS - 513)) | (1 << (PlSqlParser.FEATURE_ID - 513)) | (1 << (PlSqlParser.FEATURE_SET - 513)) | (1 << (PlSqlParser.FEATURE_VALUE - 513)) | (1 << (PlSqlParser.FETCH - 513)) | (1 << (PlSqlParser.FILE - 513)) | (1 << (PlSqlParser.FILE_NAME_CONVERT - 513)) | (1 << (PlSqlParser.FILESYSTEM_LIKE_LOGGING - 513)) | (1 << (PlSqlParser.FILTER - 513)) | (1 << (PlSqlParser.FINAL - 513)) | (1 << (PlSqlParser.FINE - 513)) | (1 << (PlSqlParser.FINISH - 513)) | (1 << (PlSqlParser.FIRST - 513)) | (1 << (PlSqlParser.FIRSTM - 513)) | (1 << (PlSqlParser.FIRST_ROWS - 513)) | (1 << (PlSqlParser.FIRST_VALUE - 513)) | (1 << (PlSqlParser.FIXED_VIEW_DATA - 513)) | (1 << (PlSqlParser.FLAGGER - 513)) | (1 << (PlSqlParser.FLASHBACK - 513)) | (1 << (PlSqlParser.FLASH_CACHE - 513)) | (1 << (PlSqlParser.FLOAT - 513)) | (1 << (PlSqlParser.FLOB - 513)) | (1 << (PlSqlParser.FLOOR - 513)) | (1 << (PlSqlParser.FLUSH - 513)) | (1 << (PlSqlParser.FOLDER - 513)) | (1 << (PlSqlParser.FOLLOWING - 513)) | (1 << (PlSqlParser.FOLLOWS - 513)) | (1 << (PlSqlParser.FORALL - 513)) | (1 << (PlSqlParser.FORCE - 513)) | (1 << (PlSqlParser.FORCE_XML_QUERY_REWRITE - 513)) | (1 << (PlSqlParser.FOREIGN - 513)))) !== 0) || ((((_la - 545)) & ~0x1f) == 0 && ((1 << (_la - 545)) & ((1 << (PlSqlParser.FOREVER - 545)) | (1 << (PlSqlParser.FORMAT - 545)) | (1 << (PlSqlParser.FORWARD - 545)) | (1 << (PlSqlParser.FRAGMENT_NUMBER - 545)) | (1 << (PlSqlParser.FREELIST - 545)) | (1 << (PlSqlParser.FREELISTS - 545)) | (1 << (PlSqlParser.FREEPOOLS - 545)) | (1 << (PlSqlParser.FRESH - 545)) | (1 << (PlSqlParser.FROM_TZ - 545)) | (1 << (PlSqlParser.FULL - 545)) | (1 << (PlSqlParser.FULL_OUTER_JOIN_TO_OUTER - 545)) | (1 << (PlSqlParser.FUNCTION - 545)) | (1 << (PlSqlParser.FUNCTIONS - 545)) | (1 << (PlSqlParser.GATHER_OPTIMIZER_STATISTICS - 545)) | (1 << (PlSqlParser.GATHER_PLAN_STATISTICS - 545)) | (1 << (PlSqlParser.GBY_CONC_ROLLUP - 545)) | (1 << (PlSqlParser.GBY_PUSHDOWN - 545)) | (1 << (PlSqlParser.GENERATED - 545)) | (1 << (PlSqlParser.GET - 545)) | (1 << (PlSqlParser.GLOBAL - 545)) | (1 << (PlSqlParser.GLOBALLY - 545)) | (1 << (PlSqlParser.GLOBAL_NAME - 545)) | (1 << (PlSqlParser.GLOBAL_TOPIC_ENABLED - 545)) | (1 << (PlSqlParser.GROUP_BY - 545)) | (1 << (PlSqlParser.GROUP_ID - 545)) | (1 << (PlSqlParser.GROUPING - 545)) | (1 << (PlSqlParser.GROUPING_ID - 545)))) !== 0) || ((((_la - 577)) & ~0x1f) == 0 && ((1 << (_la - 577)) & ((1 << (PlSqlParser.GROUPS - 577)) | (1 << (PlSqlParser.GUARANTEED - 577)) | (1 << (PlSqlParser.GUARANTEE - 577)) | (1 << (PlSqlParser.GUARD - 577)) | (1 << (PlSqlParser.HASH_AJ - 577)) | (1 << (PlSqlParser.HASH - 577)) | (1 << (PlSqlParser.HASHKEYS - 577)) | (1 << (PlSqlParser.HASH_SJ - 577)) | (1 << (PlSqlParser.HEADER - 577)) | (1 << (PlSqlParser.HEAP - 577)) | (1 << (PlSqlParser.HELP - 577)) | (1 << (PlSqlParser.HEXTORAW - 577)) | (1 << (PlSqlParser.HEXTOREF - 577)) | (1 << (PlSqlParser.HIDDEN_KEYWORD - 577)) | (1 << (PlSqlParser.HIDE - 577)) | (1 << (PlSqlParser.HIERARCHY - 577)) | (1 << (PlSqlParser.HIGH - 577)) | (1 << (PlSqlParser.HINTSET_BEGIN - 577)) | (1 << (PlSqlParser.HINTSET_END - 577)) | (1 << (PlSqlParser.HOT - 577)) | (1 << (PlSqlParser.HOUR - 577)) | (1 << (PlSqlParser.HWM_BROKERED - 577)) | (1 << (PlSqlParser.HYBRID - 577)) | (1 << (PlSqlParser.IDENTIFIER - 577)) | (1 << (PlSqlParser.IDENTITY - 577)) | (1 << (PlSqlParser.IDGENERATORS - 577)) | (1 << (PlSqlParser.ID - 577)) | (1 << (PlSqlParser.IDLE_TIME - 577)) | (1 << (PlSqlParser.IF - 577)) | (1 << (PlSqlParser.IGNORE - 577)))) !== 0) || ((((_la - 609)) & ~0x1f) == 0 && ((1 << (_la - 609)) & ((1 << (PlSqlParser.IGNORE_OPTIM_EMBEDDED_HINTS - 609)) | (1 << (PlSqlParser.IGNORE_ROW_ON_DUPKEY_INDEX - 609)) | (1 << (PlSqlParser.IGNORE_WHERE_CLAUSE - 609)) | (1 << (PlSqlParser.ILM - 609)) | (1 << (PlSqlParser.IMMEDIATE - 609)) | (1 << (PlSqlParser.IMPACT - 609)) | (1 << (PlSqlParser.IMPORT - 609)) | (1 << (PlSqlParser.INACTIVE - 609)) | (1 << (PlSqlParser.INCLUDE - 609)) | (1 << (PlSqlParser.INCLUDE_VERSION - 609)) | (1 << (PlSqlParser.INCLUDING - 609)) | (1 << (PlSqlParser.INCREMENTAL - 609)) | (1 << (PlSqlParser.INCREMENT - 609)) | (1 << (PlSqlParser.INCR - 609)) | (1 << (PlSqlParser.INDENT - 609)) | (1 << (PlSqlParser.INDEX_ASC - 609)) | (1 << (PlSqlParser.INDEX_COMBINE - 609)) | (1 << (PlSqlParser.INDEX_DESC - 609)) | (1 << (PlSqlParser.INDEXED - 609)) | (1 << (PlSqlParser.INDEXES - 609)) | (1 << (PlSqlParser.INDEX_FFS - 609)) | (1 << (PlSqlParser.INDEX_FILTER - 609)) | (1 << (PlSqlParser.INDEXING - 609)) | (1 << (PlSqlParser.INDEX_JOIN - 609)) | (1 << (PlSqlParser.INDEX_ROWS - 609)) | (1 << (PlSqlParser.INDEX_RRS - 609)) | (1 << (PlSqlParser.INDEX_RS_ASC - 609)) | (1 << (PlSqlParser.INDEX_RS_DESC - 609)) | (1 << (PlSqlParser.INDEX_RS - 609)) | (1 << (PlSqlParser.INDEX_SCAN - 609)) | (1 << (PlSqlParser.INDEX_SKIP_SCAN - 609)))) !== 0) || ((((_la - 641)) & ~0x1f) == 0 && ((1 << (_la - 641)) & ((1 << (PlSqlParser.INDEX_SS_ASC - 641)) | (1 << (PlSqlParser.INDEX_SS_DESC - 641)) | (1 << (PlSqlParser.INDEX_SS - 641)) | (1 << (PlSqlParser.INDEX_STATS - 641)) | (1 << (PlSqlParser.INDEXTYPE - 641)) | (1 << (PlSqlParser.INDEXTYPES - 641)) | (1 << (PlSqlParser.INDICATOR - 641)) | (1 << (PlSqlParser.INDICES - 641)) | (1 << (PlSqlParser.INFINITE - 641)) | (1 << (PlSqlParser.INFORMATIONAL - 641)) | (1 << (PlSqlParser.INHERIT - 641)) | (1 << (PlSqlParser.INITCAP - 641)) | (1 << (PlSqlParser.INITIAL - 641)) | (1 << (PlSqlParser.INITIALIZED - 641)) | (1 << (PlSqlParser.INITIALLY - 641)) | (1 << (PlSqlParser.INITRANS - 641)) | (1 << (PlSqlParser.INLINE - 641)) | (1 << (PlSqlParser.INLINE_XMLTYPE_NT - 641)) | (1 << (PlSqlParser.INMEMORY - 641)) | (1 << (PlSqlParser.IN_MEMORY_METADATA - 641)) | (1 << (PlSqlParser.INMEMORY_PRUNING - 641)) | (1 << (PlSqlParser.INNER - 641)) | (1 << (PlSqlParser.INOUT - 641)) | (1 << (PlSqlParser.INPLACE - 641)) | (1 << (PlSqlParser.INSERTCHILDXMLAFTER - 641)) | (1 << (PlSqlParser.INSERTCHILDXMLBEFORE - 641)) | (1 << (PlSqlParser.INSERTCHILDXML - 641)) | (1 << (PlSqlParser.INSERTXMLAFTER - 641)) | (1 << (PlSqlParser.INSERTXMLBEFORE - 641)) | (1 << (PlSqlParser.INSTANCE - 641)))) !== 0) || ((((_la - 673)) & ~0x1f) == 0 && ((1 << (_la - 673)) & ((1 << (PlSqlParser.INSTANCES - 673)) | (1 << (PlSqlParser.INSTANTIABLE - 673)) | (1 << (PlSqlParser.INSTANTLY - 673)) | (1 << (PlSqlParser.INSTEAD - 673)) | (1 << (PlSqlParser.INSTR2 - 673)) | (1 << (PlSqlParser.INSTR4 - 673)) | (1 << (PlSqlParser.INSTRB - 673)) | (1 << (PlSqlParser.INSTRC - 673)) | (1 << (PlSqlParser.INSTR - 673)) | (1 << (PlSqlParser.INTEGER - 673)) | (1 << (PlSqlParser.INTERLEAVED - 673)) | (1 << (PlSqlParser.INTERMEDIATE - 673)) | (1 << (PlSqlParser.INTERNAL_CONVERT - 673)) | (1 << (PlSqlParser.INTERNAL_USE - 673)) | (1 << (PlSqlParser.INTERPRETED - 673)) | (1 << (PlSqlParser.INTERVAL - 673)) | (1 << (PlSqlParser.INT - 673)) | (1 << (PlSqlParser.INVALIDATE - 673)) | (1 << (PlSqlParser.INVISIBLE - 673)) | (1 << (PlSqlParser.IN_XQUERY - 673)) | (1 << (PlSqlParser.ISOLATION - 673)) | (1 << (PlSqlParser.ISOLATION_LEVEL - 673)) | (1 << (PlSqlParser.ITERATE - 673)) | (1 << (PlSqlParser.ITERATION_NUMBER - 673)) | (1 << (PlSqlParser.JAVA - 673)) | (1 << (PlSqlParser.JOB - 673)) | (1 << (PlSqlParser.JOIN - 673)) | (1 << (PlSqlParser.JSON_ARRAYAGG - 673)) | (1 << (PlSqlParser.JSON_ARRAY - 673)))) !== 0) || ((((_la - 705)) & ~0x1f) == 0 && ((1 << (_la - 705)) & ((1 << (PlSqlParser.JSON_EQUAL - 705)) | (1 << (PlSqlParser.JSON_EXISTS2 - 705)) | (1 << (PlSqlParser.JSON_EXISTS - 705)) | (1 << (PlSqlParser.JSONGET - 705)) | (1 << (PlSqlParser.JSON - 705)) | (1 << (PlSqlParser.JSON_OBJECTAGG - 705)) | (1 << (PlSqlParser.JSON_OBJECT - 705)) | (1 << (PlSqlParser.JSONPARSE - 705)) | (1 << (PlSqlParser.JSON_QUERY - 705)) | (1 << (PlSqlParser.JSON_SERIALIZE - 705)) | (1 << (PlSqlParser.JSON_TABLE - 705)) | (1 << (PlSqlParser.JSON_TEXTCONTAINS2 - 705)) | (1 << (PlSqlParser.JSON_TEXTCONTAINS - 705)) | (1 << (PlSqlParser.JSON_VALUE - 705)) | (1 << (PlSqlParser.KEEP_DUPLICATES - 705)) | (1 << (PlSqlParser.KEEP - 705)) | (1 << (PlSqlParser.KERBEROS - 705)) | (1 << (PlSqlParser.KEY - 705)) | (1 << (PlSqlParser.KEY_LENGTH - 705)) | (1 << (PlSqlParser.KEYSIZE - 705)) | (1 << (PlSqlParser.KEYS - 705)) | (1 << (PlSqlParser.KEYSTORE - 705)) | (1 << (PlSqlParser.KILL - 705)) | (1 << (PlSqlParser.LABEL - 705)) | (1 << (PlSqlParser.LANGUAGE - 705)) | (1 << (PlSqlParser.LAST_DAY - 705)) | (1 << (PlSqlParser.LAST - 705)) | (1 << (PlSqlParser.LAST_VALUE - 705)) | (1 << (PlSqlParser.LATERAL - 705)) | (1 << (PlSqlParser.LAX - 705)) | (1 << (PlSqlParser.LAYER - 705)) | (1 << (PlSqlParser.LDAP_REGISTRATION_ENABLED - 705)))) !== 0) || ((((_la - 737)) & ~0x1f) == 0 && ((1 << (_la - 737)) & ((1 << (PlSqlParser.LDAP_REGISTRATION - 737)) | (1 << (PlSqlParser.LDAP_REG_SYNC_INTERVAL - 737)) | (1 << (PlSqlParser.LEADING - 737)) | (1 << (PlSqlParser.LEFT - 737)) | (1 << (PlSqlParser.LENGTH2 - 737)) | (1 << (PlSqlParser.LENGTH4 - 737)) | (1 << (PlSqlParser.LENGTHB - 737)) | (1 << (PlSqlParser.LENGTHC - 737)) | (1 << (PlSqlParser.LENGTH - 737)) | (1 << (PlSqlParser.LESS - 737)) | (1 << (PlSqlParser.LEVEL - 737)) | (1 << (PlSqlParser.LEVELS - 737)) | (1 << (PlSqlParser.LIBRARY - 737)) | (1 << (PlSqlParser.LIFECYCLE - 737)) | (1 << (PlSqlParser.LIFE - 737)) | (1 << (PlSqlParser.LIFETIME - 737)) | (1 << (PlSqlParser.LIKE2 - 737)) | (1 << (PlSqlParser.LIKE4 - 737)) | (1 << (PlSqlParser.LIKEC - 737)) | (1 << (PlSqlParser.LIKE_EXPAND - 737)) | (1 << (PlSqlParser.LIMIT - 737)) | (1 << (PlSqlParser.LINEAR - 737)) | (1 << (PlSqlParser.LINK - 737)) | (1 << (PlSqlParser.LIST - 737)) | (1 << (PlSqlParser.LN - 737)) | (1 << (PlSqlParser.LNNVL - 737)) | (1 << (PlSqlParser.LOAD - 737)) | (1 << (PlSqlParser.LOB - 737)) | (1 << (PlSqlParser.LOBNVL - 737)) | (1 << (PlSqlParser.LOBS - 737)) | (1 << (PlSqlParser.LOCAL_INDEXES - 737)))) !== 0) || ((((_la - 769)) & ~0x1f) == 0 && ((1 << (_la - 769)) & ((1 << (PlSqlParser.LOCAL - 769)) | (1 << (PlSqlParser.LOCALTIME - 769)) | (1 << (PlSqlParser.LOCALTIMESTAMP - 769)) | (1 << (PlSqlParser.LOCATION - 769)) | (1 << (PlSqlParser.LOCATOR - 769)) | (1 << (PlSqlParser.LOCKED - 769)) | (1 << (PlSqlParser.LOCKING - 769)) | (1 << (PlSqlParser.LOGFILE - 769)) | (1 << (PlSqlParser.LOGFILES - 769)) | (1 << (PlSqlParser.LOGGING - 769)) | (1 << (PlSqlParser.LOGICAL - 769)) | (1 << (PlSqlParser.LOGICAL_READS_PER_CALL - 769)) | (1 << (PlSqlParser.LOGICAL_READS_PER_SESSION - 769)) | (1 << (PlSqlParser.LOG - 769)) | (1 << (PlSqlParser.LOGMINING - 769)) | (1 << (PlSqlParser.LOGOFF - 769)) | (1 << (PlSqlParser.LOGON - 769)) | (1 << (PlSqlParser.LOG_READ_ONLY_VIOLATIONS - 769)) | (1 << (PlSqlParser.LONG - 769)) | (1 << (PlSqlParser.LOOP - 769)) | (1 << (PlSqlParser.LOWER - 769)) | (1 << (PlSqlParser.LOW - 769)) | (1 << (PlSqlParser.LPAD - 769)) | (1 << (PlSqlParser.LTRIM - 769)) | (1 << (PlSqlParser.MAIN - 769)) | (1 << (PlSqlParser.MAKE_REF - 769)) | (1 << (PlSqlParser.MANAGED - 769)) | (1 << (PlSqlParser.MANAGE - 769)) | (1 << (PlSqlParser.MANAGEMENT - 769)) | (1 << (PlSqlParser.MANAGER - 769)) | (1 << (PlSqlParser.MANUAL - 769)))) !== 0) || ((((_la - 801)) & ~0x1f) == 0 && ((1 << (_la - 801)) & ((1 << (PlSqlParser.MAP - 801)) | (1 << (PlSqlParser.MAPPING - 801)) | (1 << (PlSqlParser.MASTER - 801)) | (1 << (PlSqlParser.MATCHED - 801)) | (1 << (PlSqlParser.MATCHES - 801)) | (1 << (PlSqlParser.MATCH - 801)) | (1 << (PlSqlParser.MATCH_NUMBER - 801)) | (1 << (PlSqlParser.MATCH_RECOGNIZE - 801)) | (1 << (PlSqlParser.MATERIALIZED - 801)) | (1 << (PlSqlParser.MATERIALIZE - 801)) | (1 << (PlSqlParser.MAXARCHLOGS - 801)) | (1 << (PlSqlParser.MAXDATAFILES - 801)) | (1 << (PlSqlParser.MAXEXTENTS - 801)) | (1 << (PlSqlParser.MAXIMIZE - 801)) | (1 << (PlSqlParser.MAXINSTANCES - 801)) | (1 << (PlSqlParser.MAXLOGFILES - 801)) | (1 << (PlSqlParser.MAXLOGHISTORY - 801)) | (1 << (PlSqlParser.MAXLOGMEMBERS - 801)) | (1 << (PlSqlParser.MAX_SHARED_TEMP_SIZE - 801)) | (1 << (PlSqlParser.MAXSIZE - 801)) | (1 << (PlSqlParser.MAXTRANS - 801)) | (1 << (PlSqlParser.MAXVALUE - 801)) | (1 << (PlSqlParser.MEASURE - 801)) | (1 << (PlSqlParser.MEASURES - 801)) | (1 << (PlSqlParser.MEDIUM - 801)) | (1 << (PlSqlParser.MEMBER - 801)) | (1 << (PlSqlParser.MEMCOMPRESS - 801)) | (1 << (PlSqlParser.MEMORY - 801)) | (1 << (PlSqlParser.MERGEACTIONS - 801)) | (1 << (PlSqlParser.MERGE_AJ - 801)) | (1 << (PlSqlParser.MERGE_CONST_ON - 801)) | (1 << (PlSqlParser.MERGE - 801)))) !== 0) || ((((_la - 833)) & ~0x1f) == 0 && ((1 << (_la - 833)) & ((1 << (PlSqlParser.MERGE_SJ - 833)) | (1 << (PlSqlParser.METADATA - 833)) | (1 << (PlSqlParser.METHOD - 833)) | (1 << (PlSqlParser.MIGRATE - 833)) | (1 << (PlSqlParser.MIGRATION - 833)) | (1 << (PlSqlParser.MINEXTENTS - 833)) | (1 << (PlSqlParser.MINIMIZE - 833)) | (1 << (PlSqlParser.MINIMUM - 833)) | (1 << (PlSqlParser.MINING - 833)) | (1 << (PlSqlParser.MINUS_NULL - 833)) | (1 << (PlSqlParser.MINUTE - 833)) | (1 << (PlSqlParser.MINVALUE - 833)) | (1 << (PlSqlParser.MIRRORCOLD - 833)) | (1 << (PlSqlParser.MIRRORHOT - 833)) | (1 << (PlSqlParser.MIRROR - 833)) | (1 << (PlSqlParser.MLSLABEL - 833)) | (1 << (PlSqlParser.MODEL_COMPILE_SUBQUERY - 833)) | (1 << (PlSqlParser.MODEL_DONTVERIFY_UNIQUENESS - 833)) | (1 << (PlSqlParser.MODEL_DYNAMIC_SUBQUERY - 833)) | (1 << (PlSqlParser.MODEL_MIN_ANALYSIS - 833)) | (1 << (PlSqlParser.MODEL - 833)) | (1 << (PlSqlParser.MODEL_NB - 833)) | (1 << (PlSqlParser.MODEL_NO_ANALYSIS - 833)) | (1 << (PlSqlParser.MODEL_PBY - 833)) | (1 << (PlSqlParser.MODEL_PUSH_REF - 833)) | (1 << (PlSqlParser.MODEL_SV - 833)) | (1 << (PlSqlParser.MODIFICATION - 833)) | (1 << (PlSqlParser.MODIFY_COLUMN_TYPE - 833)) | (1 << (PlSqlParser.MODIFY - 833)) | (1 << (PlSqlParser.MOD - 833)))) !== 0) || ((((_la - 865)) & ~0x1f) == 0 && ((1 << (_la - 865)) & ((1 << (PlSqlParser.MODULE - 865)) | (1 << (PlSqlParser.MONITORING - 865)) | (1 << (PlSqlParser.MONITOR - 865)) | (1 << (PlSqlParser.MONTH - 865)) | (1 << (PlSqlParser.MONTHS_BETWEEN - 865)) | (1 << (PlSqlParser.MONTHS - 865)) | (1 << (PlSqlParser.MOUNT - 865)) | (1 << (PlSqlParser.MOUNTPATH - 865)) | (1 << (PlSqlParser.MOVEMENT - 865)) | (1 << (PlSqlParser.MOVE - 865)) | (1 << (PlSqlParser.MULTIDIMENSIONAL - 865)) | (1 << (PlSqlParser.MULTISET - 865)) | (1 << (PlSqlParser.MV_MERGE - 865)) | (1 << (PlSqlParser.NAMED - 865)) | (1 << (PlSqlParser.NAME - 865)) | (1 << (PlSqlParser.NAMESPACE - 865)) | (1 << (PlSqlParser.NAN - 865)) | (1 << (PlSqlParser.NANVL - 865)) | (1 << (PlSqlParser.NATIONAL - 865)) | (1 << (PlSqlParser.NATIVE_FULL_OUTER_JOIN - 865)) | (1 << (PlSqlParser.NATIVE - 865)) | (1 << (PlSqlParser.NATURAL - 865)) | (1 << (PlSqlParser.NAV - 865)) | (1 << (PlSqlParser.NCHAR_CS - 865)) | (1 << (PlSqlParser.NCHAR - 865)) | (1 << (PlSqlParser.NCHR - 865)) | (1 << (PlSqlParser.NCLOB - 865)) | (1 << (PlSqlParser.NEEDED - 865)) | (1 << (PlSqlParser.NEG - 865)) | (1 << (PlSqlParser.NESTED - 865)) | (1 << (PlSqlParser.NESTED_TABLE_FAST_INSERT - 865)))) !== 0) || ((((_la - 897)) & ~0x1f) == 0 && ((1 << (_la - 897)) & ((1 << (PlSqlParser.NESTED_TABLE_GET_REFS - 897)) | (1 << (PlSqlParser.NESTED_TABLE_ID - 897)) | (1 << (PlSqlParser.NESTED_TABLE_SET_REFS - 897)) | (1 << (PlSqlParser.NESTED_TABLE_SET_SETID - 897)) | (1 << (PlSqlParser.NETWORK - 897)) | (1 << (PlSqlParser.NEVER - 897)) | (1 << (PlSqlParser.NEW - 897)) | (1 << (PlSqlParser.NEW_TIME - 897)) | (1 << (PlSqlParser.NEXT_DAY - 897)) | (1 << (PlSqlParser.NEXT - 897)) | (1 << (PlSqlParser.NL_AJ - 897)) | (1 << (PlSqlParser.NLJ_BATCHING - 897)) | (1 << (PlSqlParser.NLJ_INDEX_FILTER - 897)) | (1 << (PlSqlParser.NLJ_INDEX_SCAN - 897)) | (1 << (PlSqlParser.NLJ_PREFETCH - 897)) | (1 << (PlSqlParser.NLS_CALENDAR - 897)) | (1 << (PlSqlParser.NLS_CHARACTERSET - 897)) | (1 << (PlSqlParser.NLS_CHARSET_DECL_LEN - 897)) | (1 << (PlSqlParser.NLS_CHARSET_ID - 897)) | (1 << (PlSqlParser.NLS_CHARSET_NAME - 897)) | (1 << (PlSqlParser.NLS_COMP - 897)) | (1 << (PlSqlParser.NLS_CURRENCY - 897)) | (1 << (PlSqlParser.NLS_DATE_FORMAT - 897)) | (1 << (PlSqlParser.NLS_DATE_LANGUAGE - 897)) | (1 << (PlSqlParser.NLS_INITCAP - 897)) | (1 << (PlSqlParser.NLS_ISO_CURRENCY - 897)) | (1 << (PlSqlParser.NL_SJ - 897)) | (1 << (PlSqlParser.NLS_LANG - 897)) | (1 << (PlSqlParser.NLS_LANGUAGE - 897)) | (1 << (PlSqlParser.NLS_LENGTH_SEMANTICS - 897)) | (1 << (PlSqlParser.NLS_LOWER - 897)) | (1 << (PlSqlParser.NLS_NCHAR_CONV_EXCP - 897)))) !== 0) || ((((_la - 929)) & ~0x1f) == 0 && ((1 << (_la - 929)) & ((1 << (PlSqlParser.NLS_NUMERIC_CHARACTERS - 929)) | (1 << (PlSqlParser.NLS_SORT - 929)) | (1 << (PlSqlParser.NLSSORT - 929)) | (1 << (PlSqlParser.NLS_SPECIAL_CHARS - 929)) | (1 << (PlSqlParser.NLS_TERRITORY - 929)) | (1 << (PlSqlParser.NLS_UPPER - 929)) | (1 << (PlSqlParser.NO_ACCESS - 929)) | (1 << (PlSqlParser.NO_ADAPTIVE_PLAN - 929)) | (1 << (PlSqlParser.NO_ANSI_REARCH - 929)) | (1 << (PlSqlParser.NOAPPEND - 929)) | (1 << (PlSqlParser.NOARCHIVELOG - 929)) | (1 << (PlSqlParser.NOAUDIT - 929)) | (1 << (PlSqlParser.NO_AUTO_REOPTIMIZE - 929)) | (1 << (PlSqlParser.NO_BASETABLE_MULTIMV_REWRITE - 929)) | (1 << (PlSqlParser.NO_BATCH_TABLE_ACCESS_BY_ROWID - 929)) | (1 << (PlSqlParser.NO_BIND_AWARE - 929)) | (1 << (PlSqlParser.NO_BUFFER - 929)) | (1 << (PlSqlParser.NOCACHE - 929)) | (1 << (PlSqlParser.NO_CARTESIAN - 929)) | (1 << (PlSqlParser.NO_CHECK_ACL_REWRITE - 929)) | (1 << (PlSqlParser.NO_CLUSTER_BY_ROWID - 929)) | (1 << (PlSqlParser.NO_CLUSTERING - 929)) | (1 << (PlSqlParser.NO_COALESCE_SQ - 929)) | (1 << (PlSqlParser.NO_COMMON_DATA - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_CB_WHR_ONLY - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_COMBINE_SW - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_COST_BASED - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_ELIM_DUPS - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_FILTERING - 929)) | (1 << (PlSqlParser.NOCOPY - 929)) | (1 << (PlSqlParser.NO_COST_XML_QUERY_REWRITE - 929)))) !== 0) || ((((_la - 961)) & ~0x1f) == 0 && ((1 << (_la - 961)) & ((1 << (PlSqlParser.NO_CPU_COSTING - 961)) | (1 << (PlSqlParser.NOCPU_COSTING - 961)) | (1 << (PlSqlParser.NOCYCLE - 961)) | (1 << (PlSqlParser.NO_DATA_SECURITY_REWRITE - 961)) | (1 << (PlSqlParser.NO_DECORRELATE - 961)) | (1 << (PlSqlParser.NODELAY - 961)) | (1 << (PlSqlParser.NO_DOMAIN_INDEX_FILTER - 961)) | (1 << (PlSqlParser.NO_DST_UPGRADE_INSERT_CONV - 961)) | (1 << (PlSqlParser.NO_ELIM_GROUPBY - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_JOIN - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_OBY - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_OUTER_JOIN - 961)) | (1 << (PlSqlParser.NOENTITYESCAPING - 961)) | (1 << (PlSqlParser.NO_EXPAND_GSET_TO_UNION - 961)) | (1 << (PlSqlParser.NO_EXPAND - 961)) | (1 << (PlSqlParser.NO_EXPAND_TABLE - 961)) | (1 << (PlSqlParser.NO_FACT - 961)) | (1 << (PlSqlParser.NO_FACTORIZE_JOIN - 961)) | (1 << (PlSqlParser.NO_FILTERING - 961)) | (1 << (PlSqlParser.NOFORCE - 961)) | (1 << (PlSqlParser.NO_FULL_OUTER_JOIN_TO_OUTER - 961)) | (1 << (PlSqlParser.NO_GATHER_OPTIMIZER_STATISTICS - 961)) | (1 << (PlSqlParser.NO_GBY_PUSHDOWN - 961)) | (1 << (PlSqlParser.NOGUARANTEE - 961)) | (1 << (PlSqlParser.NO_INDEX_FFS - 961)) | (1 << (PlSqlParser.NO_INDEX - 961)) | (1 << (PlSqlParser.NO_INDEX_SS - 961)) | (1 << (PlSqlParser.NO_INMEMORY - 961)) | (1 << (PlSqlParser.NO_INMEMORY_PRUNING - 961)) | (1 << (PlSqlParser.NOKEEP - 961)) | (1 << (PlSqlParser.NO_LOAD - 961)) | (1 << (PlSqlParser.NOLOCAL - 961)))) !== 0) || ((((_la - 993)) & ~0x1f) == 0 && ((1 << (_la - 993)) & ((1 << (PlSqlParser.NOLOGGING - 993)) | (1 << (PlSqlParser.NOMAPPING - 993)) | (1 << (PlSqlParser.NOMAXVALUE - 993)) | (1 << (PlSqlParser.NO_MERGE - 993)) | (1 << (PlSqlParser.NOMINIMIZE - 993)) | (1 << (PlSqlParser.NOMINVALUE - 993)) | (1 << (PlSqlParser.NO_MODEL_PUSH_REF - 993)) | (1 << (PlSqlParser.NO_MONITORING - 993)) | (1 << (PlSqlParser.NOMONITORING - 993)) | (1 << (PlSqlParser.NO_MONITOR - 993)) | (1 << (PlSqlParser.NO_MULTIMV_REWRITE - 993)) | (1 << (PlSqlParser.NO_NATIVE_FULL_OUTER_JOIN - 993)) | (1 << (PlSqlParser.NONBLOCKING - 993)) | (1 << (PlSqlParser.NONEDITIONABLE - 993)) | (1 << (PlSqlParser.NONE - 993)) | (1 << (PlSqlParser.NO_NLJ_BATCHING - 993)) | (1 << (PlSqlParser.NO_NLJ_PREFETCH - 993)) | (1 << (PlSqlParser.NO - 993)) | (1 << (PlSqlParser.NONSCHEMA - 993)) | (1 << (PlSqlParser.NO_OBJECT_LINK - 993)) | (1 << (PlSqlParser.NOORDER - 993)) | (1 << (PlSqlParser.NO_ORDER_ROLLUPS - 993)) | (1 << (PlSqlParser.NO_OUTER_JOIN_TO_ANTI - 993)) | (1 << (PlSqlParser.NO_OUTER_JOIN_TO_INNER - 993)) | (1 << (PlSqlParser.NOOVERRIDE - 993)) | (1 << (PlSqlParser.NO_PARALLEL_INDEX - 993)) | (1 << (PlSqlParser.NOPARALLEL_INDEX - 993)) | (1 << (PlSqlParser.NO_PARALLEL - 993)) | (1 << (PlSqlParser.NOPARALLEL - 993)) | (1 << (PlSqlParser.NO_PARTIAL_COMMIT - 993)) | (1 << (PlSqlParser.NO_PARTIAL_JOIN - 993)) | (1 << (PlSqlParser.NO_PARTIAL_ROLLUP_PUSHDOWN - 993)))) !== 0) || ((((_la - 1025)) & ~0x1f) == 0 && ((1 << (_la - 1025)) & ((1 << (PlSqlParser.NOPARTITION - 1025)) | (1 << (PlSqlParser.NO_PLACE_DISTINCT - 1025)) | (1 << (PlSqlParser.NO_PLACE_GROUP_BY - 1025)) | (1 << (PlSqlParser.NO_PQ_CONCURRENT_UNION - 1025)) | (1 << (PlSqlParser.NO_PQ_MAP - 1025)) | (1 << (PlSqlParser.NO_PQ_REPLICATE - 1025)) | (1 << (PlSqlParser.NO_PQ_SKEW - 1025)) | (1 << (PlSqlParser.NO_PRUNE_GSETS - 1025)) | (1 << (PlSqlParser.NO_PULL_PRED - 1025)) | (1 << (PlSqlParser.NO_PUSH_PRED - 1025)) | (1 << (PlSqlParser.NO_PUSH_SUBQ - 1025)) | (1 << (PlSqlParser.NO_PX_FAULT_TOLERANCE - 1025)) | (1 << (PlSqlParser.NO_PX_JOIN_FILTER - 1025)) | (1 << (PlSqlParser.NO_QKN_BUFF - 1025)) | (1 << (PlSqlParser.NO_QUERY_TRANSFORMATION - 1025)) | (1 << (PlSqlParser.NO_REF_CASCADE - 1025)) | (1 << (PlSqlParser.NORELOCATE - 1025)) | (1 << (PlSqlParser.NORELY - 1025)) | (1 << (PlSqlParser.NOREPAIR - 1025)) | (1 << (PlSqlParser.NOREPLAY - 1025)) | (1 << (PlSqlParser.NORESETLOGS - 1025)) | (1 << (PlSqlParser.NO_RESULT_CACHE - 1025)) | (1 << (PlSqlParser.NOREVERSE - 1025)) | (1 << (PlSqlParser.NO_REWRITE - 1025)) | (1 << (PlSqlParser.NOREWRITE - 1025)) | (1 << (PlSqlParser.NORMAL - 1025)) | (1 << (PlSqlParser.NO_ROOT_SW_FOR_LOCAL - 1025)) | (1 << (PlSqlParser.NOROWDEPENDENCIES - 1025)) | (1 << (PlSqlParser.NOSCHEMACHECK - 1025)) | (1 << (PlSqlParser.NOSEGMENT - 1025)) | (1 << (PlSqlParser.NO_SEMIJOIN - 1025)) | (1 << (PlSqlParser.NO_SEMI_TO_INNER - 1025)))) !== 0) || ((((_la - 1057)) & ~0x1f) == 0 && ((1 << (_la - 1057)) & ((1 << (PlSqlParser.NO_SET_TO_JOIN - 1057)) | (1 << (PlSqlParser.NOSORT - 1057)) | (1 << (PlSqlParser.NO_SQL_TRANSLATION - 1057)) | (1 << (PlSqlParser.NO_SQL_TUNE - 1057)) | (1 << (PlSqlParser.NO_STAR_TRANSFORMATION - 1057)) | (1 << (PlSqlParser.NO_STATEMENT_QUEUING - 1057)) | (1 << (PlSqlParser.NO_STATS_GSETS - 1057)) | (1 << (PlSqlParser.NOSTRICT - 1057)) | (1 << (PlSqlParser.NO_SUBQUERY_PRUNING - 1057)) | (1 << (PlSqlParser.NO_SUBSTRB_PAD - 1057)) | (1 << (PlSqlParser.NO_SWAP_JOIN_INPUTS - 1057)) | (1 << (PlSqlParser.NOSWITCH - 1057)) | (1 << (PlSqlParser.NO_TABLE_LOOKUP_BY_NL - 1057)) | (1 << (PlSqlParser.NO_TEMP_TABLE - 1057)) | (1 << (PlSqlParser.NOTHING - 1057)) | (1 << (PlSqlParser.NOTIFICATION - 1057)) | (1 << (PlSqlParser.NO_TRANSFORM_DISTINCT_AGG - 1057)) | (1 << (PlSqlParser.NO_UNNEST - 1057)) | (1 << (PlSqlParser.NO_USE_CUBE - 1057)) | (1 << (PlSqlParser.NO_USE_HASH_AGGREGATION - 1057)) | (1 << (PlSqlParser.NO_USE_HASH_GBY_FOR_PUSHDOWN - 1057)) | (1 << (PlSqlParser.NO_USE_HASH - 1057)) | (1 << (PlSqlParser.NO_USE_INVISIBLE_INDEXES - 1057)) | (1 << (PlSqlParser.NO_USE_MERGE - 1057)) | (1 << (PlSqlParser.NO_USE_NL - 1057)) | (1 << (PlSqlParser.NO_USE_VECTOR_AGGREGATION - 1057)) | (1 << (PlSqlParser.NOVALIDATE - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM_DIMS - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM_FACT - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM - 1057)))) !== 0) || ((((_la - 1089)) & ~0x1f) == 0 && ((1 << (_la - 1089)) & ((1 << (PlSqlParser.NO_XDB_FASTPATH_INSERT - 1089)) | (1 << (PlSqlParser.NO_XML_DML_REWRITE - 1089)) | (1 << (PlSqlParser.NO_XMLINDEX_REWRITE_IN_SELECT - 1089)) | (1 << (PlSqlParser.NO_XMLINDEX_REWRITE - 1089)) | (1 << (PlSqlParser.NO_XML_QUERY_REWRITE - 1089)) | (1 << (PlSqlParser.NO_ZONEMAP - 1089)) | (1 << (PlSqlParser.NTH_VALUE - 1089)) | (1 << (PlSqlParser.NULLIF - 1089)) | (1 << (PlSqlParser.NULLS - 1089)) | (1 << (PlSqlParser.NUMBER - 1089)) | (1 << (PlSqlParser.NUMERIC - 1089)) | (1 << (PlSqlParser.NUM_INDEX_KEYS - 1089)) | (1 << (PlSqlParser.NUMTODSINTERVAL - 1089)) | (1 << (PlSqlParser.NUMTOYMINTERVAL - 1089)) | (1 << (PlSqlParser.NVARCHAR2 - 1089)) | (1 << (PlSqlParser.NVL2 - 1089)) | (1 << (PlSqlParser.OBJECT2XML - 1089)) | (1 << (PlSqlParser.OBJECT - 1089)) | (1 << (PlSqlParser.OBJ_ID - 1089)) | (1 << (PlSqlParser.OBJNO - 1089)) | (1 << (PlSqlParser.OBJNO_REUSE - 1089)) | (1 << (PlSqlParser.OCCURENCES - 1089)) | (1 << (PlSqlParser.OFFLINE - 1089)) | (1 << (PlSqlParser.OFF - 1089)) | (1 << (PlSqlParser.OFFSET - 1089)) | (1 << (PlSqlParser.OIDINDEX - 1089)) | (1 << (PlSqlParser.OID - 1089)) | (1 << (PlSqlParser.OLAP - 1089)) | (1 << (PlSqlParser.OLD - 1089)) | (1 << (PlSqlParser.OLD_PUSH_PRED - 1089)))) !== 0) || ((((_la - 1121)) & ~0x1f) == 0 && ((1 << (_la - 1121)) & ((1 << (PlSqlParser.OLS - 1121)) | (1 << (PlSqlParser.OLTP - 1121)) | (1 << (PlSqlParser.OMIT - 1121)) | (1 << (PlSqlParser.ONE - 1121)) | (1 << (PlSqlParser.ONLINE - 1121)) | (1 << (PlSqlParser.ONLY - 1121)) | (1 << (PlSqlParser.OPAQUE - 1121)) | (1 << (PlSqlParser.OPAQUE_TRANSFORM - 1121)) | (1 << (PlSqlParser.OPAQUE_XCANONICAL - 1121)) | (1 << (PlSqlParser.OPCODE - 1121)) | (1 << (PlSqlParser.OPEN - 1121)) | (1 << (PlSqlParser.OPERATIONS - 1121)) | (1 << (PlSqlParser.OPERATOR - 1121)) | (1 << (PlSqlParser.OPT_ESTIMATE - 1121)) | (1 << (PlSqlParser.OPTIMAL - 1121)) | (1 << (PlSqlParser.OPTIMIZE - 1121)) | (1 << (PlSqlParser.OPTIMIZER_FEATURES_ENABLE - 1121)) | (1 << (PlSqlParser.OPTIMIZER_GOAL - 1121)) | (1 << (PlSqlParser.OPT_PARAM - 1121)) | (1 << (PlSqlParser.ORA_BRANCH - 1121)) | (1 << (PlSqlParser.ORA_CHECK_ACL - 1121)) | (1 << (PlSqlParser.ORA_CHECK_PRIVILEGE - 1121)) | (1 << (PlSqlParser.ORA_CLUSTERING - 1121)) | (1 << (PlSqlParser.ORADATA - 1121)) | (1 << (PlSqlParser.ORADEBUG - 1121)) | (1 << (PlSqlParser.ORA_DST_AFFECTED - 1121)) | (1 << (PlSqlParser.ORA_DST_CONVERT - 1121)) | (1 << (PlSqlParser.ORA_DST_ERROR - 1121)) | (1 << (PlSqlParser.ORA_GET_ACLIDS - 1121)))) !== 0) || ((((_la - 1153)) & ~0x1f) == 0 && ((1 << (_la - 1153)) & ((1 << (PlSqlParser.ORA_GET_PRIVILEGES - 1153)) | (1 << (PlSqlParser.ORA_HASH - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_USERID - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_USER - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_XS_USER_GUID - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_XS_USER - 1153)) | (1 << (PlSqlParser.ORA_RAWCOMPARE - 1153)) | (1 << (PlSqlParser.ORA_RAWCONCAT - 1153)) | (1 << (PlSqlParser.ORA_ROWSCN - 1153)) | (1 << (PlSqlParser.ORA_ROWSCN_RAW - 1153)) | (1 << (PlSqlParser.ORA_ROWVERSION - 1153)) | (1 << (PlSqlParser.ORA_TABVERSION - 1153)) | (1 << (PlSqlParser.ORA_WRITE_TIME - 1153)) | (1 << (PlSqlParser.ORDERED - 1153)) | (1 << (PlSqlParser.ORDERED_PREDICATES - 1153)) | (1 << (PlSqlParser.ORDINALITY - 1153)) | (1 << (PlSqlParser.OR_EXPAND - 1153)) | (1 << (PlSqlParser.ORGANIZATION - 1153)) | (1 << (PlSqlParser.OR_PREDICATES - 1153)) | (1 << (PlSqlParser.OSERROR - 1153)) | (1 << (PlSqlParser.OTHER - 1153)) | (1 << (PlSqlParser.OUTER_JOIN_TO_ANTI - 1153)) | (1 << (PlSqlParser.OUTER_JOIN_TO_INNER - 1153)) | (1 << (PlSqlParser.OUTER - 1153)) | (1 << (PlSqlParser.OUTLINE_LEAF - 1153)) | (1 << (PlSqlParser.OUTLINE - 1153)) | (1 << (PlSqlParser.OUT_OF_LINE - 1153)) | (1 << (PlSqlParser.OUT - 1153)) | (1 << (PlSqlParser.OVERFLOW_NOMOVE - 1153)) | (1 << (PlSqlParser.OVERFLOW - 1153)))) !== 0) || ((((_la - 1185)) & ~0x1f) == 0 && ((1 << (_la - 1185)) & ((1 << (PlSqlParser.OVERLAPS - 1185)) | (1 << (PlSqlParser.OVER - 1185)) | (1 << (PlSqlParser.OVERRIDING - 1185)) | (1 << (PlSqlParser.OWNER - 1185)) | (1 << (PlSqlParser.OWNERSHIP - 1185)) | (1 << (PlSqlParser.OWN - 1185)) | (1 << (PlSqlParser.PACKAGE - 1185)) | (1 << (PlSqlParser.PACKAGES - 1185)) | (1 << (PlSqlParser.PARALLEL_ENABLE - 1185)) | (1 << (PlSqlParser.PARALLEL_INDEX - 1185)) | (1 << (PlSqlParser.PARALLEL - 1185)) | (1 << (PlSqlParser.PARAMETERS - 1185)) | (1 << (PlSqlParser.PARAM - 1185)) | (1 << (PlSqlParser.PARENT - 1185)) | (1 << (PlSqlParser.PARITY - 1185)) | (1 << (PlSqlParser.PARTIAL_JOIN - 1185)) | (1 << (PlSqlParser.PARTIALLY - 1185)) | (1 << (PlSqlParser.PARTIAL - 1185)) | (1 << (PlSqlParser.PARTIAL_ROLLUP_PUSHDOWN - 1185)) | (1 << (PlSqlParser.PARTITION_HASH - 1185)) | (1 << (PlSqlParser.PARTITION_LIST - 1185)) | (1 << (PlSqlParser.PARTITION - 1185)) | (1 << (PlSqlParser.PARTITION_RANGE - 1185)) | (1 << (PlSqlParser.PARTITIONS - 1185)) | (1 << (PlSqlParser.PARTNUMINST - 1185)) | (1 << (PlSqlParser.PASSING - 1185)) | (1 << (PlSqlParser.PASSWORD_GRACE_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD_LIFE_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD_LOCK_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD - 1185)) | (1 << (PlSqlParser.PASSWORD_REUSE_MAX - 1185)))) !== 0) || ((((_la - 1217)) & ~0x1f) == 0 && ((1 << (_la - 1217)) & ((1 << (PlSqlParser.PASSWORD_REUSE_TIME - 1217)) | (1 << (PlSqlParser.PASSWORD_VERIFY_FUNCTION - 1217)) | (1 << (PlSqlParser.PAST - 1217)) | (1 << (PlSqlParser.PATCH - 1217)) | (1 << (PlSqlParser.PATH - 1217)) | (1 << (PlSqlParser.PATH_PREFIX - 1217)) | (1 << (PlSqlParser.PATHS - 1217)) | (1 << (PlSqlParser.PATTERN - 1217)) | (1 << (PlSqlParser.PBL_HS_BEGIN - 1217)) | (1 << (PlSqlParser.PBL_HS_END - 1217)) | (1 << (PlSqlParser.PCTINCREASE - 1217)) | (1 << (PlSqlParser.PCTTHRESHOLD - 1217)) | (1 << (PlSqlParser.PCTUSED - 1217)) | (1 << (PlSqlParser.PCTVERSION - 1217)) | (1 << (PlSqlParser.PENDING - 1217)) | (1 << (PlSqlParser.PERCENT_KEYWORD - 1217)) | (1 << (PlSqlParser.PERCENT_RANKM - 1217)) | (1 << (PlSqlParser.PERFORMANCE - 1217)) | (1 << (PlSqlParser.PERIOD_KEYWORD - 1217)) | (1 << (PlSqlParser.PERMANENT - 1217)) | (1 << (PlSqlParser.PERMISSION - 1217)) | (1 << (PlSqlParser.PERMUTE - 1217)) | (1 << (PlSqlParser.PER - 1217)) | (1 << (PlSqlParser.PFILE - 1217)) | (1 << (PlSqlParser.PHYSICAL - 1217)))) !== 0) || ((((_la - 1249)) & ~0x1f) == 0 && ((1 << (_la - 1249)) & ((1 << (PlSqlParser.PIKEY - 1249)) | (1 << (PlSqlParser.PIPELINED - 1249)) | (1 << (PlSqlParser.PIV_GB - 1249)) | (1 << (PlSqlParser.PIVOT - 1249)) | (1 << (PlSqlParser.PIV_SSF - 1249)) | (1 << (PlSqlParser.PLACE_DISTINCT - 1249)) | (1 << (PlSqlParser.PLACE_GROUP_BY - 1249)) | (1 << (PlSqlParser.PLAN - 1249)) | (1 << (PlSqlParser.PLSCOPE_SETTINGS - 1249)) | (1 << (PlSqlParser.PLS_INTEGER - 1249)) | (1 << (PlSqlParser.PLSQL_CCFLAGS - 1249)) | (1 << (PlSqlParser.PLSQL_CODE_TYPE - 1249)) | (1 << (PlSqlParser.PLSQL_DEBUG - 1249)) | (1 << (PlSqlParser.PLSQL_OPTIMIZE_LEVEL - 1249)) | (1 << (PlSqlParser.PLSQL_WARNINGS - 1249)) | (1 << (PlSqlParser.PLUGGABLE - 1249)) | (1 << (PlSqlParser.POINT - 1249)) | (1 << (PlSqlParser.POLICY - 1249)) | (1 << (PlSqlParser.POOL_16K - 1249)) | (1 << (PlSqlParser.POOL_2K - 1249)) | (1 << (PlSqlParser.POOL_32K - 1249)) | (1 << (PlSqlParser.POOL_4K - 1249)) | (1 << (PlSqlParser.POOL_8K - 1249)) | (1 << (PlSqlParser.POSITIVEN - 1249)) | (1 << (PlSqlParser.POSITIVE - 1249)) | (1 << (PlSqlParser.POST_TRANSACTION - 1249)) | (1 << (PlSqlParser.POWERMULTISET_BY_CARDINALITY - 1249)) | (1 << (PlSqlParser.POWERMULTISET - 1249)) | (1 << (PlSqlParser.POWER - 1249)) | (1 << (PlSqlParser.PQ_CONCURRENT_UNION - 1249)) | (1 << (PlSqlParser.PQ_DISTRIBUTE - 1249)))) !== 0) || ((((_la - 1281)) & ~0x1f) == 0 && ((1 << (_la - 1281)) & ((1 << (PlSqlParser.PQ_DISTRIBUTE_WINDOW - 1281)) | (1 << (PlSqlParser.PQ_FILTER - 1281)) | (1 << (PlSqlParser.PQ_MAP - 1281)) | (1 << (PlSqlParser.PQ_NOMAP - 1281)) | (1 << (PlSqlParser.PQ_REPLICATE - 1281)) | (1 << (PlSqlParser.PQ_SKEW - 1281)) | (1 << (PlSqlParser.PRAGMA - 1281)) | (1 << (PlSqlParser.PREBUILT - 1281)) | (1 << (PlSqlParser.PRECEDES - 1281)) | (1 << (PlSqlParser.PRECEDING - 1281)) | (1 << (PlSqlParser.PRECISION - 1281)) | (1 << (PlSqlParser.PRECOMPUTE_SUBQUERY - 1281)) | (1 << (PlSqlParser.PREDICATE_REORDERS - 1281)) | (1 << (PlSqlParser.PRELOAD - 1281)) | (1 << (PlSqlParser.PREPARE - 1281)) | (1 << (PlSqlParser.PRESENTNNV - 1281)) | (1 << (PlSqlParser.PRESENT - 1281)) | (1 << (PlSqlParser.PRESENTV - 1281)) | (1 << (PlSqlParser.PRESERVE_OID - 1281)) | (1 << (PlSqlParser.PRESERVE - 1281)) | (1 << (PlSqlParser.PRETTY - 1281)) | (1 << (PlSqlParser.PREVIOUS - 1281)) | (1 << (PlSqlParser.PREV - 1281)) | (1 << (PlSqlParser.PRIMARY - 1281)) | (1 << (PlSqlParser.PRINTBLOBTOCLOB - 1281)) | (1 << (PlSqlParser.PRIORITY - 1281)) | (1 << (PlSqlParser.PRIVATE - 1281)) | (1 << (PlSqlParser.PRIVATE_SGA - 1281)) | (1 << (PlSqlParser.PRIVILEGED - 1281)) | (1 << (PlSqlParser.PRIVILEGE - 1281)) | (1 << (PlSqlParser.PRIVILEGES - 1281)))) !== 0) || ((((_la - 1313)) & ~0x1f) == 0 && ((1 << (_la - 1313)) & ((1 << (PlSqlParser.PROCEDURAL - 1313)) | (1 << (PlSqlParser.PROCEDURE - 1313)) | (1 << (PlSqlParser.PROCESS - 1313)) | (1 << (PlSqlParser.PROFILE - 1313)) | (1 << (PlSqlParser.PROGRAM - 1313)) | (1 << (PlSqlParser.PROJECT - 1313)) | (1 << (PlSqlParser.PROPAGATE - 1313)) | (1 << (PlSqlParser.PROTECTED - 1313)) | (1 << (PlSqlParser.PROTECTION - 1313)) | (1 << (PlSqlParser.PROXY - 1313)) | (1 << (PlSqlParser.PRUNING - 1313)) | (1 << (PlSqlParser.PULL_PRED - 1313)) | (1 << (PlSqlParser.PURGE - 1313)) | (1 << (PlSqlParser.PUSH_PRED - 1313)) | (1 << (PlSqlParser.PUSH_SUBQ - 1313)) | (1 << (PlSqlParser.PX_FAULT_TOLERANCE - 1313)) | (1 << (PlSqlParser.PX_GRANULE - 1313)) | (1 << (PlSqlParser.PX_JOIN_FILTER - 1313)) | (1 << (PlSqlParser.QB_NAME - 1313)) | (1 << (PlSqlParser.QUERY_BLOCK - 1313)) | (1 << (PlSqlParser.QUERY - 1313)) | (1 << (PlSqlParser.QUEUE_CURR - 1313)) | (1 << (PlSqlParser.QUEUE - 1313)) | (1 << (PlSqlParser.QUEUE_ROWP - 1313)) | (1 << (PlSqlParser.QUIESCE - 1313)) | (1 << (PlSqlParser.QUORUM - 1313)) | (1 << (PlSqlParser.QUOTA - 1313)) | (1 << (PlSqlParser.RAISE - 1313)) | (1 << (PlSqlParser.RANDOM_LOCAL - 1313)) | (1 << (PlSqlParser.RANDOM - 1313)) | (1 << (PlSqlParser.RANGE - 1313)))) !== 0) || ((((_la - 1345)) & ~0x1f) == 0 && ((1 << (_la - 1345)) & ((1 << (PlSqlParser.RANKM - 1345)) | (1 << (PlSqlParser.RAPIDLY - 1345)) | (1 << (PlSqlParser.RAW - 1345)) | (1 << (PlSqlParser.RAWTOHEX - 1345)) | (1 << (PlSqlParser.RAWTONHEX - 1345)) | (1 << (PlSqlParser.RBA - 1345)) | (1 << (PlSqlParser.RBO_OUTLINE - 1345)) | (1 << (PlSqlParser.RDBA - 1345)) | (1 << (PlSqlParser.READ - 1345)) | (1 << (PlSqlParser.READS - 1345)) | (1 << (PlSqlParser.REALM - 1345)) | (1 << (PlSqlParser.REAL - 1345)) | (1 << (PlSqlParser.REBALANCE - 1345)) | (1 << (PlSqlParser.REBUILD - 1345)) | (1 << (PlSqlParser.RECORD - 1345)) | (1 << (PlSqlParser.RECORDS_PER_BLOCK - 1345)) | (1 << (PlSqlParser.RECOVERABLE - 1345)) | (1 << (PlSqlParser.RECOVER - 1345)) | (1 << (PlSqlParser.RECOVERY - 1345)) | (1 << (PlSqlParser.RECYCLEBIN - 1345)) | (1 << (PlSqlParser.RECYCLE - 1345)) | (1 << (PlSqlParser.REDACTION - 1345)) | (1 << (PlSqlParser.REDEFINE - 1345)) | (1 << (PlSqlParser.REDO - 1345)) | (1 << (PlSqlParser.REDUCED - 1345)) | (1 << (PlSqlParser.REDUNDANCY - 1345)) | (1 << (PlSqlParser.REF_CASCADE_CURSOR - 1345)) | (1 << (PlSqlParser.REFERENCED - 1345)) | (1 << (PlSqlParser.REFERENCE - 1345)) | (1 << (PlSqlParser.REFERENCES - 1345)) | (1 << (PlSqlParser.REFERENCING - 1345)) | (1 << (PlSqlParser.REF - 1345)))) !== 0) || ((((_la - 1377)) & ~0x1f) == 0 && ((1 << (_la - 1377)) & ((1 << (PlSqlParser.REFRESH - 1377)) | (1 << (PlSqlParser.REFTOHEX - 1377)) | (1 << (PlSqlParser.REGEXP_COUNT - 1377)) | (1 << (PlSqlParser.REGEXP_INSTR - 1377)) | (1 << (PlSqlParser.REGEXP_LIKE - 1377)) | (1 << (PlSqlParser.REGEXP_REPLACE - 1377)) | (1 << (PlSqlParser.REGEXP_SUBSTR - 1377)) | (1 << (PlSqlParser.REGISTER - 1377)) | (1 << (PlSqlParser.REGR_AVGX - 1377)) | (1 << (PlSqlParser.REGR_AVGY - 1377)) | (1 << (PlSqlParser.REGR_COUNT - 1377)) | (1 << (PlSqlParser.REGR_INTERCEPT - 1377)) | (1 << (PlSqlParser.REGR_R2 - 1377)) | (1 << (PlSqlParser.REGR_SLOPE - 1377)) | (1 << (PlSqlParser.REGR_SXX - 1377)) | (1 << (PlSqlParser.REGR_SXY - 1377)) | (1 << (PlSqlParser.REGR_SYY - 1377)) | (1 << (PlSqlParser.REGULAR - 1377)) | (1 << (PlSqlParser.REJECT - 1377)) | (1 << (PlSqlParser.REKEY - 1377)) | (1 << (PlSqlParser.RELATIONAL - 1377)) | (1 << (PlSqlParser.RELOCATE - 1377)) | (1 << (PlSqlParser.RELY - 1377)) | (1 << (PlSqlParser.REMAINDER - 1377)) | (1 << (PlSqlParser.REMOTE_MAPPED - 1377)) | (1 << (PlSqlParser.REMOVE - 1377)) | (1 << (PlSqlParser.RENAME - 1377)) | (1 << (PlSqlParser.REPAIR - 1377)) | (1 << (PlSqlParser.REPEAT - 1377)) | (1 << (PlSqlParser.REPLACE - 1377)) | (1 << (PlSqlParser.REPLICATION - 1377)))) !== 0) || ((((_la - 1409)) & ~0x1f) == 0 && ((1 << (_la - 1409)) & ((1 << (PlSqlParser.REQUIRED - 1409)) | (1 << (PlSqlParser.RESETLOGS - 1409)) | (1 << (PlSqlParser.RESET - 1409)) | (1 << (PlSqlParser.RESIZE - 1409)) | (1 << (PlSqlParser.RESOLVE - 1409)) | (1 << (PlSqlParser.RESOLVER - 1409)) | (1 << (PlSqlParser.RESPECT - 1409)) | (1 << (PlSqlParser.RESTART - 1409)) | (1 << (PlSqlParser.RESTORE_AS_INTERVALS - 1409)) | (1 << (PlSqlParser.RESTORE - 1409)) | (1 << (PlSqlParser.RESTRICT_ALL_REF_CONS - 1409)) | (1 << (PlSqlParser.RESTRICTED - 1409)) | (1 << (PlSqlParser.RESTRICT_REFERENCES - 1409)) | (1 << (PlSqlParser.RESTRICT - 1409)) | (1 << (PlSqlParser.RESULT_CACHE - 1409)) | (1 << (PlSqlParser.RESULT - 1409)) | (1 << (PlSqlParser.RESUMABLE - 1409)) | (1 << (PlSqlParser.RESUME - 1409)) | (1 << (PlSqlParser.RETENTION - 1409)) | (1 << (PlSqlParser.RETRY_ON_ROW_CHANGE - 1409)) | (1 << (PlSqlParser.RETURNING - 1409)) | (1 << (PlSqlParser.RETURN - 1409)) | (1 << (PlSqlParser.REUSE - 1409)) | (1 << (PlSqlParser.REVERSE - 1409)) | (1 << (PlSqlParser.REWRITE_OR_ERROR - 1409)) | (1 << (PlSqlParser.REWRITE - 1409)) | (1 << (PlSqlParser.RIGHT - 1409)) | (1 << (PlSqlParser.ROLE - 1409)) | (1 << (PlSqlParser.ROLESET - 1409)) | (1 << (PlSqlParser.ROLES - 1409)))) !== 0) || ((((_la - 1441)) & ~0x1f) == 0 && ((1 << (_la - 1441)) & ((1 << (PlSqlParser.ROLLBACK - 1441)) | (1 << (PlSqlParser.ROLLING - 1441)) | (1 << (PlSqlParser.ROLLUP - 1441)) | (1 << (PlSqlParser.ROWDEPENDENCIES - 1441)) | (1 << (PlSqlParser.ROWID_MAPPING_TABLE - 1441)) | (1 << (PlSqlParser.ROWID - 1441)) | (1 << (PlSqlParser.ROWIDTOCHAR - 1441)) | (1 << (PlSqlParser.ROWIDTONCHAR - 1441)) | (1 << (PlSqlParser.ROW_LENGTH - 1441)) | (1 << (PlSqlParser.ROWNUM - 1441)) | (1 << (PlSqlParser.ROW - 1441)) | (1 << (PlSqlParser.ROWS - 1441)) | (1 << (PlSqlParser.RPAD - 1441)) | (1 << (PlSqlParser.RTRIM - 1441)) | (1 << (PlSqlParser.RULE - 1441)) | (1 << (PlSqlParser.RULES - 1441)) | (1 << (PlSqlParser.RUNNING - 1441)) | (1 << (PlSqlParser.SALT - 1441)) | (1 << (PlSqlParser.SAMPLE - 1441)) | (1 << (PlSqlParser.SAVE_AS_INTERVALS - 1441)) | (1 << (PlSqlParser.SAVEPOINT - 1441)) | (1 << (PlSqlParser.SAVE - 1441)) | (1 << (PlSqlParser.SB4 - 1441)) | (1 << (PlSqlParser.SCALE_ROWS - 1441)) | (1 << (PlSqlParser.SCALE - 1441)) | (1 << (PlSqlParser.SCAN_INSTANCES - 1441)) | (1 << (PlSqlParser.SCAN - 1441)) | (1 << (PlSqlParser.SCHEDULER - 1441)) | (1 << (PlSqlParser.SCHEMACHECK - 1441)) | (1 << (PlSqlParser.SCHEMA - 1441)) | (1 << (PlSqlParser.SCN_ASCENDING - 1441)) | (1 << (PlSqlParser.SCN - 1441)))) !== 0) || ((((_la - 1473)) & ~0x1f) == 0 && ((1 << (_la - 1473)) & ((1 << (PlSqlParser.SCOPE - 1473)) | (1 << (PlSqlParser.SCRUB - 1473)) | (1 << (PlSqlParser.SD_ALL - 1473)) | (1 << (PlSqlParser.SD_INHIBIT - 1473)) | (1 << (PlSqlParser.SDO_GEOM_MBR - 1473)) | (1 << (PlSqlParser.SD_SHOW - 1473)) | (1 << (PlSqlParser.SEARCH - 1473)) | (1 << (PlSqlParser.SECOND - 1473)) | (1 << (PlSqlParser.SECRET - 1473)) | (1 << (PlSqlParser.SECUREFILE_DBA - 1473)) | (1 << (PlSqlParser.SECUREFILE - 1473)) | (1 << (PlSqlParser.SECURITY - 1473)) | (1 << (PlSqlParser.SEED - 1473)) | (1 << (PlSqlParser.SEG_BLOCK - 1473)) | (1 << (PlSqlParser.SEG_FILE - 1473)) | (1 << (PlSqlParser.SEGMENT - 1473)) | (1 << (PlSqlParser.SELECTIVITY - 1473)) | (1 << (PlSqlParser.SELF - 1473)) | (1 << (PlSqlParser.SEMIJOIN_DRIVER - 1473)) | (1 << (PlSqlParser.SEMIJOIN - 1473)) | (1 << (PlSqlParser.SEMI_TO_INNER - 1473)) | (1 << (PlSqlParser.SEQUENCED - 1473)) | (1 << (PlSqlParser.SEQUENCE - 1473)) | (1 << (PlSqlParser.SEQUENTIAL - 1473)) | (1 << (PlSqlParser.SERIALIZABLE - 1473)) | (1 << (PlSqlParser.SERIALLY_REUSABLE - 1473)) | (1 << (PlSqlParser.SERIAL - 1473)) | (1 << (PlSqlParser.SERVERERROR - 1473)) | (1 << (PlSqlParser.SERVICE_NAME_CONVERT - 1473)) | (1 << (PlSqlParser.SERVICES - 1473)))) !== 0) || ((((_la - 1505)) & ~0x1f) == 0 && ((1 << (_la - 1505)) & ((1 << (PlSqlParser.SESSION_CACHED_CURSORS - 1505)) | (1 << (PlSqlParser.SESSION - 1505)) | (1 << (PlSqlParser.SESSIONS_PER_USER - 1505)) | (1 << (PlSqlParser.SESSIONTIMEZONE - 1505)) | (1 << (PlSqlParser.SESSIONTZNAME - 1505)) | (1 << (PlSqlParser.SET - 1505)) | (1 << (PlSqlParser.SETS - 1505)) | (1 << (PlSqlParser.SETTINGS - 1505)) | (1 << (PlSqlParser.SET_TO_JOIN - 1505)) | (1 << (PlSqlParser.SEVERE - 1505)) | (1 << (PlSqlParser.SHARED_POOL - 1505)) | (1 << (PlSqlParser.SHARED - 1505)) | (1 << (PlSqlParser.SHARING - 1505)) | (1 << (PlSqlParser.SHELFLIFE - 1505)) | (1 << (PlSqlParser.SHOW - 1505)) | (1 << (PlSqlParser.SHRINK - 1505)) | (1 << (PlSqlParser.SHUTDOWN - 1505)) | (1 << (PlSqlParser.SIBLINGS - 1505)) | (1 << (PlSqlParser.SID - 1505)) | (1 << (PlSqlParser.SIGNAL_COMPONENT - 1505)) | (1 << (PlSqlParser.SIGNAL_FUNCTION - 1505)) | (1 << (PlSqlParser.SIGN - 1505)) | (1 << (PlSqlParser.SIGNTYPE - 1505)) | (1 << (PlSqlParser.SIMPLE_INTEGER - 1505)) | (1 << (PlSqlParser.SIMPLE - 1505)) | (1 << (PlSqlParser.SINGLE - 1505)) | (1 << (PlSqlParser.SINGLETASK - 1505)) | (1 << (PlSqlParser.SINH - 1505)) | (1 << (PlSqlParser.SIN - 1505)) | (1 << (PlSqlParser.SKIP_EXT_OPTIMIZER - 1505)))) !== 0) || ((((_la - 1537)) & ~0x1f) == 0 && ((1 << (_la - 1537)) & ((1 << (PlSqlParser.SKIP_ - 1537)) | (1 << (PlSqlParser.SKIP_UNQ_UNUSABLE_IDX - 1537)) | (1 << (PlSqlParser.SKIP_UNUSABLE_INDEXES - 1537)) | (1 << (PlSqlParser.SMALLFILE - 1537)) | (1 << (PlSqlParser.SMALLINT - 1537)) | (1 << (PlSqlParser.SNAPSHOT - 1537)) | (1 << (PlSqlParser.SOME - 1537)) | (1 << (PlSqlParser.SORT - 1537)) | (1 << (PlSqlParser.SOUNDEX - 1537)) | (1 << (PlSqlParser.SOURCE_FILE_DIRECTORY - 1537)) | (1 << (PlSqlParser.SOURCE_FILE_NAME_CONVERT - 1537)) | (1 << (PlSqlParser.SOURCE - 1537)) | (1 << (PlSqlParser.SPACE_KEYWORD - 1537)) | (1 << (PlSqlParser.SPECIFICATION - 1537)) | (1 << (PlSqlParser.SPFILE - 1537)) | (1 << (PlSqlParser.SPLIT - 1537)) | (1 << (PlSqlParser.SPREADSHEET - 1537)) | (1 << (PlSqlParser.SQLDATA - 1537)) | (1 << (PlSqlParser.SQLERROR - 1537)) | (1 << (PlSqlParser.SQLLDR - 1537)) | (1 << (PlSqlParser.SQL - 1537)) | (1 << (PlSqlParser.SQL_TRACE - 1537)) | (1 << (PlSqlParser.SQL_TRANSLATION_PROFILE - 1537)) | (1 << (PlSqlParser.SQRT - 1537)) | (1 << (PlSqlParser.STALE - 1537)) | (1 << (PlSqlParser.STANDALONE - 1537)) | (1 << (PlSqlParser.STANDARD_HASH - 1537)) | (1 << (PlSqlParser.STANDBY_MAX_DATA_DELAY - 1537)) | (1 << (PlSqlParser.STANDBYS - 1537)) | (1 << (PlSqlParser.STANDBY - 1537)) | (1 << (PlSqlParser.STAR - 1537)) | (1 << (PlSqlParser.STAR_TRANSFORMATION - 1537)))) !== 0) || ((((_la - 1570)) & ~0x1f) == 0 && ((1 << (_la - 1570)) & ((1 << (PlSqlParser.STARTUP - 1570)) | (1 << (PlSqlParser.STATEMENT_ID - 1570)) | (1 << (PlSqlParser.STATEMENT_QUEUING - 1570)) | (1 << (PlSqlParser.STATEMENTS - 1570)) | (1 << (PlSqlParser.STATEMENT - 1570)) | (1 << (PlSqlParser.STATE - 1570)) | (1 << (PlSqlParser.STATIC - 1570)) | (1 << (PlSqlParser.STATISTICS - 1570)) | (1 << (PlSqlParser.STATS_BINOMIAL_TEST - 1570)) | (1 << (PlSqlParser.STATS_CROSSTAB - 1570)) | (1 << (PlSqlParser.STATS_F_TEST - 1570)) | (1 << (PlSqlParser.STATS_KS_TEST - 1570)) | (1 << (PlSqlParser.STATS_MODE - 1570)) | (1 << (PlSqlParser.STATS_MW_TEST - 1570)) | (1 << (PlSqlParser.STATS_ONE_WAY_ANOVA - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_INDEP - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_INDEPU - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_ONE - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_PAIRED - 1570)) | (1 << (PlSqlParser.STATS_WSR_TEST - 1570)) | (1 << (PlSqlParser.STDDEV_POP - 1570)) | (1 << (PlSqlParser.STDDEV_SAMP - 1570)) | (1 << (PlSqlParser.STOP - 1570)) | (1 << (PlSqlParser.STORAGE - 1570)) | (1 << (PlSqlParser.STORE - 1570)) | (1 << (PlSqlParser.STREAMS - 1570)) | (1 << (PlSqlParser.STREAM - 1570)) | (1 << (PlSqlParser.STRICT - 1570)) | (1 << (PlSqlParser.STRING - 1570)) | (1 << (PlSqlParser.STRIPE_COLUMNS - 1570)) | (1 << (PlSqlParser.STRIPE_WIDTH - 1570)) | (1 << (PlSqlParser.STRIP - 1570)))) !== 0) || ((((_la - 1602)) & ~0x1f) == 0 && ((1 << (_la - 1602)) & ((1 << (PlSqlParser.STRUCTURE - 1602)) | (1 << (PlSqlParser.SUBMULTISET - 1602)) | (1 << (PlSqlParser.SUBPARTITION_REL - 1602)) | (1 << (PlSqlParser.SUBPARTITIONS - 1602)) | (1 << (PlSqlParser.SUBPARTITION - 1602)) | (1 << (PlSqlParser.SUBQUERIES - 1602)) | (1 << (PlSqlParser.SUBQUERY_PRUNING - 1602)) | (1 << (PlSqlParser.SUBSCRIBE - 1602)) | (1 << (PlSqlParser.SUBSET - 1602)) | (1 << (PlSqlParser.SUBSTITUTABLE - 1602)) | (1 << (PlSqlParser.SUBSTR2 - 1602)) | (1 << (PlSqlParser.SUBSTR4 - 1602)) | (1 << (PlSqlParser.SUBSTRB - 1602)) | (1 << (PlSqlParser.SUBSTRC - 1602)) | (1 << (PlSqlParser.SUBTYPE - 1602)) | (1 << (PlSqlParser.SUCCESSFUL - 1602)) | (1 << (PlSqlParser.SUCCESS - 1602)) | (1 << (PlSqlParser.SUMMARY - 1602)) | (1 << (PlSqlParser.SUPPLEMENTAL - 1602)) | (1 << (PlSqlParser.SUSPEND - 1602)) | (1 << (PlSqlParser.SWAP_JOIN_INPUTS - 1602)) | (1 << (PlSqlParser.SWITCHOVER - 1602)) | (1 << (PlSqlParser.SWITCH - 1602)) | (1 << (PlSqlParser.SYNCHRONOUS - 1602)) | (1 << (PlSqlParser.SYNC - 1602)) | (1 << (PlSqlParser.SYSASM - 1602)) | (1 << (PlSqlParser.SYS_AUDIT - 1602)) | (1 << (PlSqlParser.SYSAUX - 1602)) | (1 << (PlSqlParser.SYSBACKUP - 1602)) | (1 << (PlSqlParser.SYS_CHECKACL - 1602)) | (1 << (PlSqlParser.SYS_CHECK_PRIVILEGE - 1602)))) !== 0) || ((((_la - 1634)) & ~0x1f) == 0 && ((1 << (_la - 1634)) & ((1 << (PlSqlParser.SYS_CONNECT_BY_PATH - 1634)) | (1 << (PlSqlParser.SYS_CONTEXT - 1634)) | (1 << (PlSqlParser.SYSDATE - 1634)) | (1 << (PlSqlParser.SYSDBA - 1634)) | (1 << (PlSqlParser.SYS_DBURIGEN - 1634)) | (1 << (PlSqlParser.SYSDG - 1634)) | (1 << (PlSqlParser.SYS_DL_CURSOR - 1634)) | (1 << (PlSqlParser.SYS_DM_RXFORM_CHR - 1634)) | (1 << (PlSqlParser.SYS_DM_RXFORM_NUM - 1634)) | (1 << (PlSqlParser.SYS_DOM_COMPARE - 1634)) | (1 << (PlSqlParser.SYS_DST_PRIM2SEC - 1634)) | (1 << (PlSqlParser.SYS_DST_SEC2PRIM - 1634)) | (1 << (PlSqlParser.SYS_ET_BFILE_TO_RAW - 1634)) | (1 << (PlSqlParser.SYS_ET_BLOB_TO_IMAGE - 1634)) | (1 << (PlSqlParser.SYS_ET_IMAGE_TO_BLOB - 1634)) | (1 << (PlSqlParser.SYS_ET_RAW_TO_BFILE - 1634)) | (1 << (PlSqlParser.SYS_EXTPDTXT - 1634)) | (1 << (PlSqlParser.SYS_EXTRACT_UTC - 1634)) | (1 << (PlSqlParser.SYS_FBT_INSDEL - 1634)) | (1 << (PlSqlParser.SYS_FILTER_ACLS - 1634)) | (1 << (PlSqlParser.SYS_FNMATCHES - 1634)) | (1 << (PlSqlParser.SYS_FNREPLACE - 1634)) | (1 << (PlSqlParser.SYS_GET_ACLIDS - 1634)) | (1 << (PlSqlParser.SYS_GET_COL_ACLIDS - 1634)) | (1 << (PlSqlParser.SYS_GET_PRIVILEGES - 1634)) | (1 << (PlSqlParser.SYS_GETTOKENID - 1634)) | (1 << (PlSqlParser.SYS_GETXTIVAL - 1634)) | (1 << (PlSqlParser.SYS_GUID - 1634)) | (1 << (PlSqlParser.SYSGUID - 1634)) | (1 << (PlSqlParser.SYSKM - 1634)) | (1 << (PlSqlParser.SYS_MAKE_XMLNODEID - 1634)) | (1 << (PlSqlParser.SYS_MAKEXML - 1634)))) !== 0) || ((((_la - 1666)) & ~0x1f) == 0 && ((1 << (_la - 1666)) & ((1 << (PlSqlParser.SYS_MKXMLATTR - 1666)) | (1 << (PlSqlParser.SYS_MKXTI - 1666)) | (1 << (PlSqlParser.SYSOBJ - 1666)) | (1 << (PlSqlParser.SYS_OP_ADT2BIN - 1666)) | (1 << (PlSqlParser.SYS_OP_ADTCONS - 1666)) | (1 << (PlSqlParser.SYS_OP_ALSCRVAL - 1666)) | (1 << (PlSqlParser.SYS_OP_ATG - 1666)) | (1 << (PlSqlParser.SYS_OP_BIN2ADT - 1666)) | (1 << (PlSqlParser.SYS_OP_BITVEC - 1666)) | (1 << (PlSqlParser.SYS_OP_BL2R - 1666)) | (1 << (PlSqlParser.SYS_OP_BLOOM_FILTER_LIST - 1666)) | (1 << (PlSqlParser.SYS_OP_BLOOM_FILTER - 1666)) | (1 << (PlSqlParser.SYS_OP_C2C - 1666)) | (1 << (PlSqlParser.SYS_OP_CAST - 1666)) | (1 << (PlSqlParser.SYS_OP_CEG - 1666)) | (1 << (PlSqlParser.SYS_OP_CL2C - 1666)) | (1 << (PlSqlParser.SYS_OP_COMBINED_HASH - 1666)) | (1 << (PlSqlParser.SYS_OP_COMP - 1666)) | (1 << (PlSqlParser.SYS_OP_CONVERT - 1666)) | (1 << (PlSqlParser.SYS_OP_COUNTCHG - 1666)) | (1 << (PlSqlParser.SYS_OP_CSCONV - 1666)) | (1 << (PlSqlParser.SYS_OP_CSCONVTEST - 1666)) | (1 << (PlSqlParser.SYS_OP_CSR - 1666)) | (1 << (PlSqlParser.SYS_OP_CSX_PATCH - 1666)) | (1 << (PlSqlParser.SYS_OP_CYCLED_SEQ - 1666)) | (1 << (PlSqlParser.SYS_OP_DECOMP - 1666)) | (1 << (PlSqlParser.SYS_OP_DESCEND - 1666)) | (1 << (PlSqlParser.SYS_OP_DISTINCT - 1666)) | (1 << (PlSqlParser.SYS_OP_DRA - 1666)) | (1 << (PlSqlParser.SYS_OP_DUMP - 1666)) | (1 << (PlSqlParser.SYS_OP_DV_CHECK - 1666)) | (1 << (PlSqlParser.SYS_OP_ENFORCE_NOT_NULL - 1666)))) !== 0) || ((((_la - 1698)) & ~0x1f) == 0 && ((1 << (_la - 1698)) & ((1 << (PlSqlParser.SYSOPER - 1698)) | (1 << (PlSqlParser.SYS_OP_EXTRACT - 1698)) | (1 << (PlSqlParser.SYS_OP_GROUPING - 1698)) | (1 << (PlSqlParser.SYS_OP_GUID - 1698)) | (1 << (PlSqlParser.SYS_OP_HASH - 1698)) | (1 << (PlSqlParser.SYS_OP_IIX - 1698)) | (1 << (PlSqlParser.SYS_OP_ITR - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_CREATE - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_FILTER_LIST - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_FILTER - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_SUCCEEDED - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_USE - 1698)) | (1 << (PlSqlParser.SYS_OP_LBID - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2BLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2CLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2ID - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2NCLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2TYP - 1698)) | (1 << (PlSqlParser.SYS_OP_LSVI - 1698)) | (1 << (PlSqlParser.SYS_OP_LVL - 1698)) | (1 << (PlSqlParser.SYS_OP_MAKEOID - 1698)) | (1 << (PlSqlParser.SYS_OP_MAP_NONNULL - 1698)) | (1 << (PlSqlParser.SYS_OP_MSR - 1698)) | (1 << (PlSqlParser.SYS_OP_NICOMBINE - 1698)) | (1 << (PlSqlParser.SYS_OP_NIEXTRACT - 1698)) | (1 << (PlSqlParser.SYS_OP_NII - 1698)) | (1 << (PlSqlParser.SYS_OP_NIX - 1698)) | (1 << (PlSqlParser.SYS_OP_NOEXPAND - 1698)) | (1 << (PlSqlParser.SYS_OP_NTCIMG - 1698)) | (1 << (PlSqlParser.SYS_OP_NUMTORAW - 1698)) | (1 << (PlSqlParser.SYS_OP_OIDVALUE - 1698)) | (1 << (PlSqlParser.SYS_OP_OPNSIZE - 1698)))) !== 0) || ((((_la - 1730)) & ~0x1f) == 0 && ((1 << (_la - 1730)) & ((1 << (PlSqlParser.SYS_OP_PAR_1 - 1730)) | (1 << (PlSqlParser.SYS_OP_PARGID_1 - 1730)) | (1 << (PlSqlParser.SYS_OP_PARGID - 1730)) | (1 << (PlSqlParser.SYS_OP_PAR - 1730)) | (1 << (PlSqlParser.SYS_OP_PART_ID - 1730)) | (1 << (PlSqlParser.SYS_OP_PIVOT - 1730)) | (1 << (PlSqlParser.SYS_OP_R2O - 1730)) | (1 << (PlSqlParser.SYS_OP_RAWTONUM - 1730)) | (1 << (PlSqlParser.SYS_OP_RDTM - 1730)) | (1 << (PlSqlParser.SYS_OP_REF - 1730)) | (1 << (PlSqlParser.SYS_OP_RMTD - 1730)) | (1 << (PlSqlParser.SYS_OP_ROWIDTOOBJ - 1730)) | (1 << (PlSqlParser.SYS_OP_RPB - 1730)) | (1 << (PlSqlParser.SYS_OPTLOBPRBSC - 1730)) | (1 << (PlSqlParser.SYS_OP_TOSETID - 1730)) | (1 << (PlSqlParser.SYS_OP_TPR - 1730)) | (1 << (PlSqlParser.SYS_OP_TRTB - 1730)) | (1 << (PlSqlParser.SYS_OPTXICMP - 1730)) | (1 << (PlSqlParser.SYS_OPTXQCASTASNQ - 1730)) | (1 << (PlSqlParser.SYS_OP_UNDESCEND - 1730)) | (1 << (PlSqlParser.SYS_OP_VECAND - 1730)) | (1 << (PlSqlParser.SYS_OP_VECBIT - 1730)) | (1 << (PlSqlParser.SYS_OP_VECOR - 1730)) | (1 << (PlSqlParser.SYS_OP_VECXOR - 1730)) | (1 << (PlSqlParser.SYS_OP_VERSION - 1730)) | (1 << (PlSqlParser.SYS_OP_VREF - 1730)) | (1 << (PlSqlParser.SYS_OP_VVD - 1730)) | (1 << (PlSqlParser.SYS_OP_XMLCONS_FOR_CSX - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHATG - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHIDX - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHOP - 1730)) | (1 << (PlSqlParser.SYS_OP_XTXT2SQLT - 1730)))) !== 0) || ((((_la - 1762)) & ~0x1f) == 0 && ((1 << (_la - 1762)) & ((1 << (PlSqlParser.SYS_OP_ZONE_ID - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_DEPTH - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_MAXCHILD - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_PARENT - 1762)) | (1 << (PlSqlParser.SYS_PARALLEL_TXN - 1762)) | (1 << (PlSqlParser.SYS_PATHID_IS_ATTR - 1762)) | (1 << (PlSqlParser.SYS_PATHID_IS_NMSPC - 1762)) | (1 << (PlSqlParser.SYS_PATHID_LASTNAME - 1762)) | (1 << (PlSqlParser.SYS_PATHID_LASTNMSPC - 1762)) | (1 << (PlSqlParser.SYS_PATH_REVERSE - 1762)) | (1 << (PlSqlParser.SYS_PXQEXTRACT - 1762)) | (1 << (PlSqlParser.SYS_RAW_TO_XSID - 1762)) | (1 << (PlSqlParser.SYS_RID_ORDER - 1762)) | (1 << (PlSqlParser.SYS_ROW_DELTA - 1762)) | (1 << (PlSqlParser.SYS_SC_2_XMLT - 1762)) | (1 << (PlSqlParser.SYS_SYNRCIREDO - 1762)) | (1 << (PlSqlParser.SYSTEM_DEFINED - 1762)) | (1 << (PlSqlParser.SYSTEM - 1762)) | (1 << (PlSqlParser.SYSTIMESTAMP - 1762)) | (1 << (PlSqlParser.SYS_TYPEID - 1762)) | (1 << (PlSqlParser.SYS_UMAKEXML - 1762)) | (1 << (PlSqlParser.SYS_XMLANALYZE - 1762)) | (1 << (PlSqlParser.SYS_XMLCONTAINS - 1762)) | (1 << (PlSqlParser.SYS_XMLCONV - 1762)) | (1 << (PlSqlParser.SYS_XMLEXNSURI - 1762)) | (1 << (PlSqlParser.SYS_XMLGEN - 1762)) | (1 << (PlSqlParser.SYS_XMLI_LOC_ISNODE - 1762)) | (1 << (PlSqlParser.SYS_XMLI_LOC_ISTEXT - 1762)) | (1 << (PlSqlParser.SYS_XMLINSTR - 1762)) | (1 << (PlSqlParser.SYS_XMLLOCATOR_GETSVAL - 1762)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETCID - 1762)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETLOCATOR - 1762)))) !== 0) || ((((_la - 1794)) & ~0x1f) == 0 && ((1 << (_la - 1794)) & ((1 << (PlSqlParser.SYS_XMLNODEID_GETOKEY - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETPATHID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETPTRID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETRID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETSVAL - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETTID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID - 1794)) | (1 << (PlSqlParser.SYS_XMLT_2_SC - 1794)) | (1 << (PlSqlParser.SYS_XMLTRANSLATE - 1794)) | (1 << (PlSqlParser.SYS_XMLTYPE2SQL - 1794)) | (1 << (PlSqlParser.SYS_XQ_ASQLCNV - 1794)) | (1 << (PlSqlParser.SYS_XQ_ATOMCNVCHK - 1794)) | (1 << (PlSqlParser.SYS_XQBASEURI - 1794)) | (1 << (PlSqlParser.SYS_XQCASTABLEERRH - 1794)) | (1 << (PlSqlParser.SYS_XQCODEP2STR - 1794)) | (1 << (PlSqlParser.SYS_XQCODEPEQ - 1794)) | (1 << (PlSqlParser.SYS_XQCON2SEQ - 1794)) | (1 << (PlSqlParser.SYS_XQCONCAT - 1794)) | (1 << (PlSqlParser.SYS_XQDELETE - 1794)) | (1 << (PlSqlParser.SYS_XQDFLTCOLATION - 1794)) | (1 << (PlSqlParser.SYS_XQDOC - 1794)) | (1 << (PlSqlParser.SYS_XQDOCURI - 1794)) | (1 << (PlSqlParser.SYS_XQDURDIV - 1794)) | (1 << (PlSqlParser.SYS_XQED4URI - 1794)) | (1 << (PlSqlParser.SYS_XQENDSWITH - 1794)) | (1 << (PlSqlParser.SYS_XQERRH - 1794)) | (1 << (PlSqlParser.SYS_XQERR - 1794)) | (1 << (PlSqlParser.SYS_XQESHTMLURI - 1794)) | (1 << (PlSqlParser.SYS_XQEXLOBVAL - 1794)) | (1 << (PlSqlParser.SYS_XQEXSTWRP - 1794)) | (1 << (PlSqlParser.SYS_XQEXTRACT - 1794)) | (1 << (PlSqlParser.SYS_XQEXTRREF - 1794)))) !== 0) || ((((_la - 1826)) & ~0x1f) == 0 && ((1 << (_la - 1826)) & ((1 << (PlSqlParser.SYS_XQEXVAL - 1826)) | (1 << (PlSqlParser.SYS_XQFB2STR - 1826)) | (1 << (PlSqlParser.SYS_XQFNBOOL - 1826)) | (1 << (PlSqlParser.SYS_XQFNCMP - 1826)) | (1 << (PlSqlParser.SYS_XQFNDATIM - 1826)) | (1 << (PlSqlParser.SYS_XQFNLNAME - 1826)) | (1 << (PlSqlParser.SYS_XQFNNM - 1826)) | (1 << (PlSqlParser.SYS_XQFNNSURI - 1826)) | (1 << (PlSqlParser.SYS_XQFNPREDTRUTH - 1826)) | (1 << (PlSqlParser.SYS_XQFNQNM - 1826)) | (1 << (PlSqlParser.SYS_XQFNROOT - 1826)) | (1 << (PlSqlParser.SYS_XQFORMATNUM - 1826)) | (1 << (PlSqlParser.SYS_XQFTCONTAIN - 1826)) | (1 << (PlSqlParser.SYS_XQFUNCR - 1826)) | (1 << (PlSqlParser.SYS_XQGETCONTENT - 1826)) | (1 << (PlSqlParser.SYS_XQINDXOF - 1826)) | (1 << (PlSqlParser.SYS_XQINSERT - 1826)) | (1 << (PlSqlParser.SYS_XQINSPFX - 1826)) | (1 << (PlSqlParser.SYS_XQIRI2URI - 1826)) | (1 << (PlSqlParser.SYS_XQLANG - 1826)) | (1 << (PlSqlParser.SYS_XQLLNMFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQMKNODEREF - 1826)) | (1 << (PlSqlParser.SYS_XQNILLED - 1826)) | (1 << (PlSqlParser.SYS_XQNODENAME - 1826)) | (1 << (PlSqlParser.SYS_XQNORMSPACE - 1826)) | (1 << (PlSqlParser.SYS_XQNORMUCODE - 1826)) | (1 << (PlSqlParser.SYS_XQ_NRNG - 1826)) | (1 << (PlSqlParser.SYS_XQNSP4PFX - 1826)) | (1 << (PlSqlParser.SYS_XQNSPFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQPFXFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQ_PKSQL2XML - 1826)) | (1 << (PlSqlParser.SYS_XQPOLYABS - 1826)))) !== 0) || ((((_la - 1858)) & ~0x1f) == 0 && ((1 << (_la - 1858)) & ((1 << (PlSqlParser.SYS_XQPOLYADD - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCEL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCSTBL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCST - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYDIV - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYFLR - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYMOD - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYMUL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYRND - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYSQRT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYSUB - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYUMUS - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYUPLS - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVEQ - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVGE - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVGT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVLE - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVLT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVNE - 1858)) | (1 << (PlSqlParser.SYS_XQREF2VAL - 1858)) | (1 << (PlSqlParser.SYS_XQRENAME - 1858)) | (1 << (PlSqlParser.SYS_XQREPLACE - 1858)) | (1 << (PlSqlParser.SYS_XQRESVURI - 1858)) | (1 << (PlSqlParser.SYS_XQRNDHALF2EVN - 1858)) | (1 << (PlSqlParser.SYS_XQRSLVQNM - 1858)) | (1 << (PlSqlParser.SYS_XQRYENVPGET - 1858)) | (1 << (PlSqlParser.SYS_XQRYVARGET - 1858)) | (1 << (PlSqlParser.SYS_XQRYWRP - 1858)) | (1 << (PlSqlParser.SYS_XQSEQ2CON4XC - 1858)) | (1 << (PlSqlParser.SYS_XQSEQ2CON - 1858)) | (1 << (PlSqlParser.SYS_XQSEQDEEPEQ - 1858)) | (1 << (PlSqlParser.SYS_XQSEQINSB - 1858)))) !== 0) || ((((_la - 1890)) & ~0x1f) == 0 && ((1 << (_la - 1890)) & ((1 << (PlSqlParser.SYS_XQSEQRM - 1890)) | (1 << (PlSqlParser.SYS_XQSEQRVS - 1890)) | (1 << (PlSqlParser.SYS_XQSEQSUB - 1890)) | (1 << (PlSqlParser.SYS_XQSEQTYPMATCH - 1890)) | (1 << (PlSqlParser.SYS_XQSTARTSWITH - 1890)) | (1 << (PlSqlParser.SYS_XQSTATBURI - 1890)) | (1 << (PlSqlParser.SYS_XQSTR2CODEP - 1890)) | (1 << (PlSqlParser.SYS_XQSTRJOIN - 1890)) | (1 << (PlSqlParser.SYS_XQSUBSTRAFT - 1890)) | (1 << (PlSqlParser.SYS_XQSUBSTRBEF - 1890)) | (1 << (PlSqlParser.SYS_XQTOKENIZE - 1890)) | (1 << (PlSqlParser.SYS_XQTREATAS - 1890)) | (1 << (PlSqlParser.SYS_XQ_UPKXML2SQL - 1890)) | (1 << (PlSqlParser.SYS_XQXFORM - 1890)) | (1 << (PlSqlParser.SYS_XSID_TO_RAW - 1890)) | (1 << (PlSqlParser.SYS_ZMAP_FILTER - 1890)) | (1 << (PlSqlParser.SYS_ZMAP_REFRESH - 1890)) | (1 << (PlSqlParser.TABLE_LOOKUP_BY_NL - 1890)) | (1 << (PlSqlParser.TABLESPACE_NO - 1890)) | (1 << (PlSqlParser.TABLESPACE - 1890)) | (1 << (PlSqlParser.TABLES - 1890)) | (1 << (PlSqlParser.TABLE_STATS - 1890)) | (1 << (PlSqlParser.TABLE - 1890)) | (1 << (PlSqlParser.TABNO - 1890)) | (1 << (PlSqlParser.TAG - 1890)) | (1 << (PlSqlParser.TANH - 1890)) | (1 << (PlSqlParser.TAN - 1890)) | (1 << (PlSqlParser.TBLORIDXPARTNUM - 1890)) | (1 << (PlSqlParser.TEMPFILE - 1890)) | (1 << (PlSqlParser.TEMPLATE - 1890)) | (1 << (PlSqlParser.TEMPORARY - 1890)) | (1 << (PlSqlParser.TEMP_TABLE - 1890)))) !== 0) || ((((_la - 1922)) & ~0x1f) == 0 && ((1 << (_la - 1922)) & ((1 << (PlSqlParser.TEST - 1922)) | (1 << (PlSqlParser.TEXT - 1922)) | (1 << (PlSqlParser.THAN - 1922)) | (1 << (PlSqlParser.THEN - 1922)) | (1 << (PlSqlParser.THE - 1922)) | (1 << (PlSqlParser.THREAD - 1922)) | (1 << (PlSqlParser.THROUGH - 1922)) | (1 << (PlSqlParser.TIER - 1922)) | (1 << (PlSqlParser.TIES - 1922)) | (1 << (PlSqlParser.TIMEOUT - 1922)) | (1 << (PlSqlParser.TIMESTAMP_LTZ_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMESTAMP - 1922)) | (1 << (PlSqlParser.TIMESTAMP_TZ_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMESTAMP_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMES - 1922)) | (1 << (PlSqlParser.TIME - 1922)) | (1 << (PlSqlParser.TIMEZONE_ABBR - 1922)) | (1 << (PlSqlParser.TIMEZONE_HOUR - 1922)) | (1 << (PlSqlParser.TIMEZONE_MINUTE - 1922)) | (1 << (PlSqlParser.TIMEZONE_OFFSET - 1922)) | (1 << (PlSqlParser.TIMEZONE_REGION - 1922)) | (1 << (PlSqlParser.TIME_ZONE - 1922)) | (1 << (PlSqlParser.TIV_GB - 1922)) | (1 << (PlSqlParser.TIV_SSF - 1922)) | (1 << (PlSqlParser.TO_ACLID - 1922)) | (1 << (PlSqlParser.TO_BINARY_DOUBLE - 1922)) | (1 << (PlSqlParser.TO_BINARY_FLOAT - 1922)) | (1 << (PlSqlParser.TO_BLOB - 1922)) | (1 << (PlSqlParser.TO_CLOB - 1922)) | (1 << (PlSqlParser.TO_DSINTERVAL - 1922)) | (1 << (PlSqlParser.TO_LOB - 1922)))) !== 0) || ((((_la - 1954)) & ~0x1f) == 0 && ((1 << (_la - 1954)) & ((1 << (PlSqlParser.TO_MULTI_BYTE - 1954)) | (1 << (PlSqlParser.TO_NCHAR - 1954)) | (1 << (PlSqlParser.TO_NCLOB - 1954)) | (1 << (PlSqlParser.TO_NUMBER - 1954)) | (1 << (PlSqlParser.TOPLEVEL - 1954)) | (1 << (PlSqlParser.TO_SINGLE_BYTE - 1954)) | (1 << (PlSqlParser.TO_TIMESTAMP - 1954)) | (1 << (PlSqlParser.TO_TIMESTAMP_TZ - 1954)) | (1 << (PlSqlParser.TO_TIME - 1954)) | (1 << (PlSqlParser.TO_TIME_TZ - 1954)) | (1 << (PlSqlParser.TO_YMINTERVAL - 1954)) | (1 << (PlSqlParser.TRACE - 1954)) | (1 << (PlSqlParser.TRACING - 1954)) | (1 << (PlSqlParser.TRACKING - 1954)) | (1 << (PlSqlParser.TRAILING - 1954)) | (1 << (PlSqlParser.TRANSACTION - 1954)) | (1 << (PlSqlParser.TRANSFORM_DISTINCT_AGG - 1954)) | (1 << (PlSqlParser.TRANSITIONAL - 1954)) | (1 << (PlSqlParser.TRANSITION - 1954)) | (1 << (PlSqlParser.TRANSLATE - 1954)) | (1 << (PlSqlParser.TRANSLATION - 1954)) | (1 << (PlSqlParser.TREAT - 1954)) | (1 << (PlSqlParser.TRIGGERS - 1954)) | (1 << (PlSqlParser.TRIGGER - 1954)) | (1 << (PlSqlParser.TRUE - 1954)) | (1 << (PlSqlParser.TRUNCATE - 1954)) | (1 << (PlSqlParser.TRUNC - 1954)) | (1 << (PlSqlParser.TRUSTED - 1954)) | (1 << (PlSqlParser.TRUST - 1954)) | (1 << (PlSqlParser.TUNING - 1954)) | (1 << (PlSqlParser.TX - 1954)))) !== 0) || ((((_la - 1986)) & ~0x1f) == 0 && ((1 << (_la - 1986)) & ((1 << (PlSqlParser.TYPES - 1986)) | (1 << (PlSqlParser.TYPE - 1986)) | (1 << (PlSqlParser.TZ_OFFSET - 1986)) | (1 << (PlSqlParser.UB2 - 1986)) | (1 << (PlSqlParser.UBA - 1986)) | (1 << (PlSqlParser.UCS2 - 1986)) | (1 << (PlSqlParser.UID - 1986)) | (1 << (PlSqlParser.UNARCHIVED - 1986)) | (1 << (PlSqlParser.UNBOUNDED - 1986)) | (1 << (PlSqlParser.UNBOUND - 1986)) | (1 << (PlSqlParser.UNCONDITIONAL - 1986)) | (1 << (PlSqlParser.UNDER - 1986)) | (1 << (PlSqlParser.UNDO - 1986)) | (1 << (PlSqlParser.UNDROP - 1986)) | (1 << (PlSqlParser.UNIFORM - 1986)) | (1 << (PlSqlParser.UNISTR - 1986)) | (1 << (PlSqlParser.UNLIMITED - 1986)) | (1 << (PlSqlParser.UNLOAD - 1986)) | (1 << (PlSqlParser.UNLOCK - 1986)) | (1 << (PlSqlParser.UNMATCHED - 1986)) | (1 << (PlSqlParser.UNNEST_INNERJ_DISTINCT_VIEW - 1986)) | (1 << (PlSqlParser.UNNEST_NOSEMIJ_NODISTINCTVIEW - 1986)) | (1 << (PlSqlParser.UNNEST_SEMIJ_VIEW - 1986)) | (1 << (PlSqlParser.UNNEST - 1986)) | (1 << (PlSqlParser.UNPACKED - 1986)) | (1 << (PlSqlParser.UNPIVOT - 1986)) | (1 << (PlSqlParser.UNPLUG - 1986)) | (1 << (PlSqlParser.UNPROTECTED - 1986)) | (1 << (PlSqlParser.UNQUIESCE - 1986)) | (1 << (PlSqlParser.UNRECOVERABLE - 1986)))) !== 0) || ((((_la - 2018)) & ~0x1f) == 0 && ((1 << (_la - 2018)) & ((1 << (PlSqlParser.UNRESTRICTED - 2018)) | (1 << (PlSqlParser.UNSUBSCRIBE - 2018)) | (1 << (PlSqlParser.UNTIL - 2018)) | (1 << (PlSqlParser.UNUSABLE - 2018)) | (1 << (PlSqlParser.UNUSED - 2018)) | (1 << (PlSqlParser.UPDATABLE - 2018)) | (1 << (PlSqlParser.UPDATED - 2018)) | (1 << (PlSqlParser.UPDATEXML - 2018)) | (1 << (PlSqlParser.UPD_INDEXES - 2018)) | (1 << (PlSqlParser.UPD_JOININDEX - 2018)) | (1 << (PlSqlParser.UPGRADE - 2018)) | (1 << (PlSqlParser.UPPER - 2018)) | (1 << (PlSqlParser.UPSERT - 2018)) | (1 << (PlSqlParser.UROWID - 2018)) | (1 << (PlSqlParser.USABLE - 2018)) | (1 << (PlSqlParser.USAGE - 2018)) | (1 << (PlSqlParser.USE_ANTI - 2018)) | (1 << (PlSqlParser.USE_CONCAT - 2018)) | (1 << (PlSqlParser.USE_CUBE - 2018)) | (1 << (PlSqlParser.USE_HASH_AGGREGATION - 2018)) | (1 << (PlSqlParser.USE_HASH_GBY_FOR_PUSHDOWN - 2018)) | (1 << (PlSqlParser.USE_HASH - 2018)) | (1 << (PlSqlParser.USE_HIDDEN_PARTITIONS - 2018)) | (1 << (PlSqlParser.USE_INVISIBLE_INDEXES - 2018)) | (1 << (PlSqlParser.USE_MERGE_CARTESIAN - 2018)) | (1 << (PlSqlParser.USE_MERGE - 2018)) | (1 << (PlSqlParser.USE_NL - 2018)) | (1 << (PlSqlParser.USE_NL_WITH_INDEX - 2018)) | (1 << (PlSqlParser.USE_PRIVATE_OUTLINES - 2018)) | (1 << (PlSqlParser.USER_DATA - 2018)) | (1 << (PlSqlParser.USER_DEFINED - 2018)))) !== 0) || ((((_la - 2050)) & ~0x1f) == 0 && ((1 << (_la - 2050)) & ((1 << (PlSqlParser.USERENV - 2050)) | (1 << (PlSqlParser.USERGROUP - 2050)) | (1 << (PlSqlParser.USER_RECYCLEBIN - 2050)) | (1 << (PlSqlParser.USERS - 2050)) | (1 << (PlSqlParser.USER_TABLESPACES - 2050)) | (1 << (PlSqlParser.USER - 2050)) | (1 << (PlSqlParser.USE_SEMI - 2050)) | (1 << (PlSqlParser.USE_STORED_OUTLINES - 2050)) | (1 << (PlSqlParser.USE_TTT_FOR_GSETS - 2050)) | (1 << (PlSqlParser.USE - 2050)) | (1 << (PlSqlParser.USE_VECTOR_AGGREGATION - 2050)) | (1 << (PlSqlParser.USE_WEAK_NAME_RESL - 2050)) | (1 << (PlSqlParser.USING_NO_EXPAND - 2050)) | (1 << (PlSqlParser.USING - 2050)) | (1 << (PlSqlParser.UTF16BE - 2050)) | (1 << (PlSqlParser.UTF16LE - 2050)) | (1 << (PlSqlParser.UTF32 - 2050)) | (1 << (PlSqlParser.UTF8 - 2050)) | (1 << (PlSqlParser.V1 - 2050)) | (1 << (PlSqlParser.V2 - 2050)) | (1 << (PlSqlParser.VALIDATE - 2050)) | (1 << (PlSqlParser.VALIDATION - 2050)) | (1 << (PlSqlParser.VALID_TIME_END - 2050)) | (1 << (PlSqlParser.VALUE - 2050)) | (1 << (PlSqlParser.VARCHAR2 - 2050)) | (1 << (PlSqlParser.VARCHAR - 2050)) | (1 << (PlSqlParser.VARIABLE - 2050)) | (1 << (PlSqlParser.VAR_POP - 2050)) | (1 << (PlSqlParser.VARRAYS - 2050)) | (1 << (PlSqlParser.VARRAY - 2050)) | (1 << (PlSqlParser.VAR_SAMP - 2050)))) !== 0) || ((((_la - 2082)) & ~0x1f) == 0 && ((1 << (_la - 2082)) & ((1 << (PlSqlParser.VARYING - 2082)) | (1 << (PlSqlParser.VECTOR_READ_TRACE - 2082)) | (1 << (PlSqlParser.VECTOR_READ - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM_DIMS - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM_FACT - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM - 2082)) | (1 << (PlSqlParser.VERIFIER - 2082)) | (1 << (PlSqlParser.VERIFY - 2082)) | (1 << (PlSqlParser.VERSIONING - 2082)) | (1 << (PlSqlParser.VERSIONS_ENDSCN - 2082)) | (1 << (PlSqlParser.VERSIONS_ENDTIME - 2082)) | (1 << (PlSqlParser.VERSIONS_OPERATION - 2082)) | (1 << (PlSqlParser.VERSIONS_STARTSCN - 2082)) | (1 << (PlSqlParser.VERSIONS_STARTTIME - 2082)) | (1 << (PlSqlParser.VERSIONS - 2082)) | (1 << (PlSqlParser.VERSIONS_XID - 2082)) | (1 << (PlSqlParser.VERSION - 2082)) | (1 << (PlSqlParser.VIOLATION - 2082)) | (1 << (PlSqlParser.VIRTUAL - 2082)) | (1 << (PlSqlParser.VISIBILITY - 2082)) | (1 << (PlSqlParser.VISIBLE - 2082)) | (1 << (PlSqlParser.VOLUME - 2082)) | (1 << (PlSqlParser.VSIZE - 2082)) | (1 << (PlSqlParser.WAIT - 2082)) | (1 << (PlSqlParser.WALLET - 2082)) | (1 << (PlSqlParser.WARNING - 2082)) | (1 << (PlSqlParser.WEEKS - 2082)) | (1 << (PlSqlParser.WEEK - 2082)) | (1 << (PlSqlParser.WELLFORMED - 2082)) | (1 << (PlSqlParser.WHENEVER - 2082)) | (1 << (PlSqlParser.WHEN - 2082)))) !== 0) || ((((_la - 2115)) & ~0x1f) == 0 && ((1 << (_la - 2115)) & ((1 << (PlSqlParser.WHILE - 2115)) | (1 << (PlSqlParser.WHITESPACE - 2115)) | (1 << (PlSqlParser.WIDTH_BUCKET - 2115)) | (1 << (PlSqlParser.WITHIN - 2115)) | (1 << (PlSqlParser.WITHOUT - 2115)) | (1 << (PlSqlParser.WITH_PLSQL - 2115)) | (1 << (PlSqlParser.WORK - 2115)) | (1 << (PlSqlParser.WRAPPED - 2115)) | (1 << (PlSqlParser.WRAPPER - 2115)) | (1 << (PlSqlParser.WRITE - 2115)) | (1 << (PlSqlParser.XDB_FASTPATH_INSERT - 2115)) | (1 << (PlSqlParser.X_DYN_PRUNE - 2115)) | (1 << (PlSqlParser.XID - 2115)) | (1 << (PlSqlParser.XML2OBJECT - 2115)) | (1 << (PlSqlParser.XMLAGG - 2115)) | (1 << (PlSqlParser.XMLATTRIBUTES - 2115)) | (1 << (PlSqlParser.XMLCAST - 2115)) | (1 << (PlSqlParser.XMLCDATA - 2115)) | (1 << (PlSqlParser.XMLCOLATTVAL - 2115)) | (1 << (PlSqlParser.XMLCOMMENT - 2115)) | (1 << (PlSqlParser.XMLCONCAT - 2115)) | (1 << (PlSqlParser.XMLDIFF - 2115)) | (1 << (PlSqlParser.XML_DML_RWT_STMT - 2115)) | (1 << (PlSqlParser.XMLELEMENT - 2115)) | (1 << (PlSqlParser.XMLEXISTS2 - 2115)) | (1 << (PlSqlParser.XMLEXISTS - 2115)) | (1 << (PlSqlParser.XMLFOREST - 2115)) | (1 << (PlSqlParser.XMLINDEX_REWRITE_IN_SELECT - 2115)) | (1 << (PlSqlParser.XMLINDEX_REWRITE - 2115)))) !== 0) || ((((_la - 2147)) & ~0x1f) == 0 && ((1 << (_la - 2147)) & ((1 << (PlSqlParser.XMLINDEX_SEL_IDX_TBL - 2147)) | (1 << (PlSqlParser.XMLISNODE - 2147)) | (1 << (PlSqlParser.XMLISVALID - 2147)) | (1 << (PlSqlParser.XMLNAMESPACES - 2147)) | (1 << (PlSqlParser.XMLPARSE - 2147)) | (1 << (PlSqlParser.XMLPATCH - 2147)) | (1 << (PlSqlParser.XMLPI - 2147)) | (1 << (PlSqlParser.XMLQUERYVAL - 2147)) | (1 << (PlSqlParser.XMLQUERY - 2147)) | (1 << (PlSqlParser.XMLROOT - 2147)) | (1 << (PlSqlParser.XMLSCHEMA - 2147)) | (1 << (PlSqlParser.XMLSERIALIZE - 2147)) | (1 << (PlSqlParser.XMLTABLE - 2147)) | (1 << (PlSqlParser.XMLTRANSFORMBLOB - 2147)) | (1 << (PlSqlParser.XMLTRANSFORM - 2147)) | (1 << (PlSqlParser.XMLTYPE - 2147)) | (1 << (PlSqlParser.XML - 2147)) | (1 << (PlSqlParser.XPATHTABLE - 2147)) | (1 << (PlSqlParser.XS_SYS_CONTEXT - 2147)) | (1 << (PlSqlParser.XS - 2147)) | (1 << (PlSqlParser.YEARS - 2147)) | (1 << (PlSqlParser.YEAR - 2147)) | (1 << (PlSqlParser.YES - 2147)) | (1 << (PlSqlParser.YMINTERVAL_UNCONSTRAINED - 2147)) | (1 << (PlSqlParser.ZONEMAP - 2147)) | (1 << (PlSqlParser.ZONE - 2147)) | (1 << (PlSqlParser.PREDICTION - 2147)) | (1 << (PlSqlParser.PREDICTION_BOUNDS - 2147)) | (1 << (PlSqlParser.PREDICTION_COST - 2147)) | (1 << (PlSqlParser.PREDICTION_DETAILS - 2147)) | (1 << (PlSqlParser.PREDICTION_PROBABILITY - 2147)))) !== 0) || ((((_la - 2179)) & ~0x1f) == 0 && ((1 << (_la - 2179)) & ((1 << (PlSqlParser.PREDICTION_SET - 2179)) | (1 << (PlSqlParser.CUME_DIST - 2179)) | (1 << (PlSqlParser.DENSE_RANK - 2179)) | (1 << (PlSqlParser.LISTAGG - 2179)) | (1 << (PlSqlParser.PERCENT_RANK - 2179)) | (1 << (PlSqlParser.PERCENTILE_CONT - 2179)) | (1 << (PlSqlParser.PERCENTILE_DISC - 2179)) | (1 << (PlSqlParser.RANK - 2179)) | (1 << (PlSqlParser.AVG - 2179)) | (1 << (PlSqlParser.CORR - 2179)) | (1 << (PlSqlParser.COVAR_ - 2179)) | (1 << (PlSqlParser.LAG - 2179)) | (1 << (PlSqlParser.LEAD - 2179)) | (1 << (PlSqlParser.MAX - 2179)) | (1 << (PlSqlParser.MEDIAN - 2179)) | (1 << (PlSqlParser.MIN - 2179)) | (1 << (PlSqlParser.NTILE - 2179)) | (1 << (PlSqlParser.NVL - 2179)) | (1 << (PlSqlParser.RATIO_TO_REPORT - 2179)) | (1 << (PlSqlParser.REGR_ - 2179)) | (1 << (PlSqlParser.ROUND - 2179)) | (1 << (PlSqlParser.ROW_NUMBER - 2179)) | (1 << (PlSqlParser.SUBSTR - 2179)) | (1 << (PlSqlParser.TO_CHAR - 2179)) | (1 << (PlSqlParser.TRIM - 2179)) | (1 << (PlSqlParser.SUM - 2179)) | (1 << (PlSqlParser.STDDEV - 2179)) | (1 << (PlSqlParser.VAR_ - 2179)) | (1 << (PlSqlParser.VARIANCE - 2179)) | (1 << (PlSqlParser.LEAST - 2179)) | (1 << (PlSqlParser.GREATEST - 2179)))) !== 0) || _la===PlSqlParser.TO_DATE || _la===PlSqlParser.PERIOD || _la===PlSqlParser.REGULAR_ID) {
+ this.state = 5673;
+ this.partition_name();
+ }
+
+ this.state = 5676;
+ this.range_values_clause();
+ this.state = 5677;
+ this.table_partition_description();
+ this.state = 5683;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 5684;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function List_partitionsContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_list_partitions;
+ return this;
+}
+
+List_partitionsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+List_partitionsContext.prototype.constructor = List_partitionsContext;
+
+List_partitionsContext.prototype.PARTITION = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.PARTITION);
+ } else {
+ return this.getToken(PlSqlParser.PARTITION, i);
+ }
+};
+
+
+List_partitionsContext.prototype.BY = function() {
+ return this.getToken(PlSqlParser.BY, 0);
+};
+
+List_partitionsContext.prototype.LIST = function() {
+ return this.getToken(PlSqlParser.LIST, 0);
+};
+
+List_partitionsContext.prototype.LEFT_PAREN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.LEFT_PAREN);
+ } else {
+ return this.getToken(PlSqlParser.LEFT_PAREN, i);
+ }
+};
+
+
+List_partitionsContext.prototype.column_name = function() {
+ return this.getTypedRuleContext(Column_nameContext,0);
+};
+
+List_partitionsContext.prototype.RIGHT_PAREN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.RIGHT_PAREN);
+ } else {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, i);
+ }
+};
+
+
+List_partitionsContext.prototype.list_values_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(List_values_clauseContext);
+ } else {
+ return this.getTypedRuleContext(List_values_clauseContext,i);
+ }
+};
+
+List_partitionsContext.prototype.table_partition_description = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Table_partition_descriptionContext);
+ } else {
+ return this.getTypedRuleContext(Table_partition_descriptionContext,i);
+ }
+};
+
+List_partitionsContext.prototype.partition_name = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Partition_nameContext);
+ } else {
+ return this.getTypedRuleContext(Partition_nameContext,i);
+ }
+};
+
+List_partitionsContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+List_partitionsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterList_partitions(this);
+ }
+};
+
+List_partitionsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitList_partitions(this);
+ }
+};
+
+List_partitionsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitList_partitions(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.List_partitionsContext = List_partitionsContext;
+
+PlSqlParser.prototype.list_partitions = function() {
+
+ var localctx = new List_partitionsContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 548, PlSqlParser.RULE_list_partitions);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5686;
+ this.match(PlSqlParser.PARTITION);
+ this.state = 5687;
+ this.match(PlSqlParser.BY);
+ this.state = 5688;
+ this.match(PlSqlParser.LIST);
+ this.state = 5689;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 5690;
+ this.column_name();
+ this.state = 5691;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ this.state = 5692;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 5693;
+ this.match(PlSqlParser.PARTITION);
+ this.state = 5695;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if((((_la) & ~0x1f) == 0 && ((1 << _la) & ((1 << PlSqlParser.ABORT) | (1 << PlSqlParser.ABS) | (1 << PlSqlParser.ACCESS) | (1 << PlSqlParser.ACCESSED) | (1 << PlSqlParser.ACCOUNT) | (1 << PlSqlParser.ACL) | (1 << PlSqlParser.ACOS) | (1 << PlSqlParser.ACTION) | (1 << PlSqlParser.ACTIONS) | (1 << PlSqlParser.ACTIVATE) | (1 << PlSqlParser.ACTIVE) | (1 << PlSqlParser.ACTIVE_COMPONENT) | (1 << PlSqlParser.ACTIVE_DATA) | (1 << PlSqlParser.ACTIVE_FUNCTION) | (1 << PlSqlParser.ACTIVE_TAG) | (1 << PlSqlParser.ACTIVITY) | (1 << PlSqlParser.ADAPTIVE_PLAN) | (1 << PlSqlParser.ADD) | (1 << PlSqlParser.ADD_COLUMN) | (1 << PlSqlParser.ADD_GROUP) | (1 << PlSqlParser.ADD_MONTHS) | (1 << PlSqlParser.ADJ_DATE) | (1 << PlSqlParser.ADMIN) | (1 << PlSqlParser.ADMINISTER) | (1 << PlSqlParser.ADMINISTRATOR) | (1 << PlSqlParser.ADVANCED) | (1 << PlSqlParser.ADVISE) | (1 << PlSqlParser.ADVISOR) | (1 << PlSqlParser.AFD_DISKSTRING) | (1 << PlSqlParser.AFTER) | (1 << PlSqlParser.AGENT))) !== 0) || ((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (PlSqlParser.AGGREGATE - 32)) | (1 << (PlSqlParser.A_LETTER - 32)) | (1 << (PlSqlParser.ALIAS - 32)) | (1 << (PlSqlParser.ALLOCATE - 32)) | (1 << (PlSqlParser.ALLOW - 32)) | (1 << (PlSqlParser.ALL_ROWS - 32)) | (1 << (PlSqlParser.ALWAYS - 32)) | (1 << (PlSqlParser.ANALYZE - 32)) | (1 << (PlSqlParser.ANCILLARY - 32)) | (1 << (PlSqlParser.AND_EQUAL - 32)) | (1 << (PlSqlParser.ANOMALY - 32)) | (1 << (PlSqlParser.ANSI_REARCH - 32)) | (1 << (PlSqlParser.ANTIJOIN - 32)) | (1 << (PlSqlParser.ANYSCHEMA - 32)) | (1 << (PlSqlParser.APPEND - 32)) | (1 << (PlSqlParser.APPENDCHILDXML - 32)) | (1 << (PlSqlParser.APPEND_VALUES - 32)) | (1 << (PlSqlParser.APPLICATION - 32)) | (1 << (PlSqlParser.APPLY - 32)) | (1 << (PlSqlParser.APPROX_COUNT_DISTINCT - 32)) | (1 << (PlSqlParser.ARCHIVAL - 32)) | (1 << (PlSqlParser.ARCHIVE - 32)) | (1 << (PlSqlParser.ARCHIVED - 32)) | (1 << (PlSqlParser.ARCHIVELOG - 32)) | (1 << (PlSqlParser.ARRAY - 32)) | (1 << (PlSqlParser.ASCII - 32)))) !== 0) || ((((_la - 64)) & ~0x1f) == 0 && ((1 << (_la - 64)) & ((1 << (PlSqlParser.ASCIISTR - 64)) | (1 << (PlSqlParser.ASIN - 64)) | (1 << (PlSqlParser.ASIS - 64)) | (1 << (PlSqlParser.ASSEMBLY - 64)) | (1 << (PlSqlParser.ASSIGN - 64)) | (1 << (PlSqlParser.ASSOCIATE - 64)) | (1 << (PlSqlParser.ASYNC - 64)) | (1 << (PlSqlParser.ASYNCHRONOUS - 64)) | (1 << (PlSqlParser.ATAN2 - 64)) | (1 << (PlSqlParser.ATAN - 64)) | (1 << (PlSqlParser.AT - 64)) | (1 << (PlSqlParser.ATTRIBUTE - 64)) | (1 << (PlSqlParser.ATTRIBUTES - 64)) | (1 << (PlSqlParser.AUTHENTICATED - 64)) | (1 << (PlSqlParser.AUTHENTICATION - 64)) | (1 << (PlSqlParser.AUTHID - 64)) | (1 << (PlSqlParser.AUTHORIZATION - 64)) | (1 << (PlSqlParser.AUTOALLOCATE - 64)) | (1 << (PlSqlParser.AUTO - 64)) | (1 << (PlSqlParser.AUTOEXTEND - 64)) | (1 << (PlSqlParser.AUTO_LOGIN - 64)) | (1 << (PlSqlParser.AUTOMATIC - 64)) | (1 << (PlSqlParser.AUTONOMOUS_TRANSACTION - 64)) | (1 << (PlSqlParser.AUTO_REOPTIMIZE - 64)) | (1 << (PlSqlParser.AVAILABILITY - 64)) | (1 << (PlSqlParser.AVRO - 64)) | (1 << (PlSqlParser.BACKGROUND - 64)) | (1 << (PlSqlParser.BACKUP - 64)) | (1 << (PlSqlParser.BASIC - 64)))) !== 0) || ((((_la - 96)) & ~0x1f) == 0 && ((1 << (_la - 96)) & ((1 << (PlSqlParser.BASICFILE - 96)) | (1 << (PlSqlParser.BATCH - 96)) | (1 << (PlSqlParser.BATCHSIZE - 96)) | (1 << (PlSqlParser.BATCH_TABLE_ACCESS_BY_ROWID - 96)) | (1 << (PlSqlParser.BECOME - 96)) | (1 << (PlSqlParser.BEFORE - 96)) | (1 << (PlSqlParser.BEGIN - 96)) | (1 << (PlSqlParser.BEGINNING - 96)) | (1 << (PlSqlParser.BEGIN_OUTLINE_DATA - 96)) | (1 << (PlSqlParser.BEHALF - 96)) | (1 << (PlSqlParser.BEQUEATH - 96)) | (1 << (PlSqlParser.BFILE - 96)) | (1 << (PlSqlParser.BFILENAME - 96)) | (1 << (PlSqlParser.BIGFILE - 96)) | (1 << (PlSqlParser.BINARY - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE_INFINITY - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE_NAN - 96)) | (1 << (PlSqlParser.BINARY_FLOAT - 96)) | (1 << (PlSqlParser.BINARY_FLOAT_INFINITY - 96)) | (1 << (PlSqlParser.BINARY_FLOAT_NAN - 96)) | (1 << (PlSqlParser.BINARY_INTEGER - 96)) | (1 << (PlSqlParser.BIND_AWARE - 96)) | (1 << (PlSqlParser.BINDING - 96)) | (1 << (PlSqlParser.BIN_TO_NUM - 96)) | (1 << (PlSqlParser.BITAND - 96)) | (1 << (PlSqlParser.BITMAP_AND - 96)) | (1 << (PlSqlParser.BITMAP - 96)) | (1 << (PlSqlParser.BITMAPS - 96)) | (1 << (PlSqlParser.BITMAP_TREE - 96)) | (1 << (PlSqlParser.BITS - 96)))) !== 0) || ((((_la - 128)) & ~0x1f) == 0 && ((1 << (_la - 128)) & ((1 << (PlSqlParser.BLOB - 128)) | (1 << (PlSqlParser.BLOCK - 128)) | (1 << (PlSqlParser.BLOCK_RANGE - 128)) | (1 << (PlSqlParser.BLOCKS - 128)) | (1 << (PlSqlParser.BLOCKSIZE - 128)) | (1 << (PlSqlParser.BODY - 128)) | (1 << (PlSqlParser.BOOLEAN - 128)) | (1 << (PlSqlParser.BOTH - 128)) | (1 << (PlSqlParser.BOUND - 128)) | (1 << (PlSqlParser.BRANCH - 128)) | (1 << (PlSqlParser.BREADTH - 128)) | (1 << (PlSqlParser.BROADCAST - 128)) | (1 << (PlSqlParser.BSON - 128)) | (1 << (PlSqlParser.BUFFER - 128)) | (1 << (PlSqlParser.BUFFER_CACHE - 128)) | (1 << (PlSqlParser.BUFFER_POOL - 128)) | (1 << (PlSqlParser.BUILD - 128)) | (1 << (PlSqlParser.BULK - 128)) | (1 << (PlSqlParser.BYPASS_RECURSIVE_CHECK - 128)) | (1 << (PlSqlParser.BYPASS_UJVC - 128)) | (1 << (PlSqlParser.BYTE - 128)) | (1 << (PlSqlParser.CACHE - 128)) | (1 << (PlSqlParser.CACHE_CB - 128)) | (1 << (PlSqlParser.CACHE_INSTANCES - 128)) | (1 << (PlSqlParser.CACHE_TEMP_TABLE - 128)) | (1 << (PlSqlParser.CACHING - 128)) | (1 << (PlSqlParser.CALCULATED - 128)) | (1 << (PlSqlParser.CALLBACK - 128)) | (1 << (PlSqlParser.CALL - 128)) | (1 << (PlSqlParser.CANCEL - 128)))) !== 0) || ((((_la - 160)) & ~0x1f) == 0 && ((1 << (_la - 160)) & ((1 << (PlSqlParser.CAPACITY - 160)) | (1 << (PlSqlParser.CARDINALITY - 160)) | (1 << (PlSqlParser.CASCADE - 160)) | (1 << (PlSqlParser.CASE - 160)) | (1 << (PlSqlParser.CAST - 160)) | (1 << (PlSqlParser.CATEGORY - 160)) | (1 << (PlSqlParser.CDBDEFAULT - 160)) | (1 << (PlSqlParser.CEIL - 160)) | (1 << (PlSqlParser.CELL_FLASH_CACHE - 160)) | (1 << (PlSqlParser.CERTIFICATE - 160)) | (1 << (PlSqlParser.CFILE - 160)) | (1 << (PlSqlParser.CHAINED - 160)) | (1 << (PlSqlParser.CHANGE - 160)) | (1 << (PlSqlParser.CHANGE_DUPKEY_ERROR_INDEX - 160)) | (1 << (PlSqlParser.CHARACTER - 160)) | (1 << (PlSqlParser.CHAR - 160)) | (1 << (PlSqlParser.CHAR_CS - 160)) | (1 << (PlSqlParser.CHARTOROWID - 160)) | (1 << (PlSqlParser.CHECK_ACL_REWRITE - 160)) | (1 << (PlSqlParser.CHECKPOINT - 160)) | (1 << (PlSqlParser.CHILD - 160)) | (1 << (PlSqlParser.CHOOSE - 160)) | (1 << (PlSqlParser.CHR - 160)) | (1 << (PlSqlParser.CHUNK - 160)) | (1 << (PlSqlParser.CLASS - 160)) | (1 << (PlSqlParser.CLASSIFIER - 160)) | (1 << (PlSqlParser.CLEANUP - 160)) | (1 << (PlSqlParser.CLEAR - 160)) | (1 << (PlSqlParser.C_LETTER - 160)) | (1 << (PlSqlParser.CLIENT - 160)))) !== 0) || ((((_la - 192)) & ~0x1f) == 0 && ((1 << (_la - 192)) & ((1 << (PlSqlParser.CLOB - 192)) | (1 << (PlSqlParser.CLONE - 192)) | (1 << (PlSqlParser.CLOSE_CACHED_OPEN_CURSORS - 192)) | (1 << (PlSqlParser.CLOSE - 192)) | (1 << (PlSqlParser.CLUSTER_BY_ROWID - 192)) | (1 << (PlSqlParser.CLUSTER - 192)) | (1 << (PlSqlParser.CLUSTER_DETAILS - 192)) | (1 << (PlSqlParser.CLUSTER_DISTANCE - 192)) | (1 << (PlSqlParser.CLUSTER_ID - 192)) | (1 << (PlSqlParser.CLUSTERING - 192)) | (1 << (PlSqlParser.CLUSTERING_FACTOR - 192)) | (1 << (PlSqlParser.CLUSTER_PROBABILITY - 192)) | (1 << (PlSqlParser.CLUSTER_SET - 192)) | (1 << (PlSqlParser.COALESCE - 192)) | (1 << (PlSqlParser.COALESCE_SQ - 192)) | (1 << (PlSqlParser.COARSE - 192)) | (1 << (PlSqlParser.CO_AUTH_IND - 192)) | (1 << (PlSqlParser.COLD - 192)) | (1 << (PlSqlParser.COLLECT - 192)) | (1 << (PlSqlParser.COLUMNAR - 192)) | (1 << (PlSqlParser.COLUMN_AUTH_INDICATOR - 192)) | (1 << (PlSqlParser.COLUMN - 192)) | (1 << (PlSqlParser.COLUMNS - 192)) | (1 << (PlSqlParser.COLUMN_STATS - 192)) | (1 << (PlSqlParser.COLUMN_VALUE - 192)) | (1 << (PlSqlParser.COMMENT - 192)) | (1 << (PlSqlParser.COMMIT - 192)) | (1 << (PlSqlParser.COMMITTED - 192)) | (1 << (PlSqlParser.COMMON_DATA - 192)) | (1 << (PlSqlParser.COMPACT - 192)) | (1 << (PlSqlParser.COMPATIBILITY - 192)) | (1 << (PlSqlParser.COMPILE - 192)))) !== 0) || ((((_la - 224)) & ~0x1f) == 0 && ((1 << (_la - 224)) & ((1 << (PlSqlParser.COMPLETE - 224)) | (1 << (PlSqlParser.COMPLIANCE - 224)) | (1 << (PlSqlParser.COMPONENT - 224)) | (1 << (PlSqlParser.COMPONENTS - 224)) | (1 << (PlSqlParser.COMPOSE - 224)) | (1 << (PlSqlParser.COMPOSITE - 224)) | (1 << (PlSqlParser.COMPOSITE_LIMIT - 224)) | (1 << (PlSqlParser.COMPOUND - 224)) | (1 << (PlSqlParser.COMPUTE - 224)) | (1 << (PlSqlParser.CONCAT - 224)) | (1 << (PlSqlParser.CON_DBID_TO_ID - 224)) | (1 << (PlSqlParser.CONDITIONAL - 224)) | (1 << (PlSqlParser.CONDITION - 224)) | (1 << (PlSqlParser.CONFIRM - 224)) | (1 << (PlSqlParser.CONFORMING - 224)) | (1 << (PlSqlParser.CON_GUID_TO_ID - 224)) | (1 << (PlSqlParser.CON_ID - 224)) | (1 << (PlSqlParser.CON_NAME_TO_ID - 224)) | (1 << (PlSqlParser.CONNECT_BY_CB_WHR_ONLY - 224)) | (1 << (PlSqlParser.CONNECT_BY_COMBINE_SW - 224)) | (1 << (PlSqlParser.CONNECT_BY_COST_BASED - 224)) | (1 << (PlSqlParser.CONNECT_BY_ELIM_DUPS - 224)) | (1 << (PlSqlParser.CONNECT_BY_FILTERING - 224)) | (1 << (PlSqlParser.CONNECT_BY_ISCYCLE - 224)) | (1 << (PlSqlParser.CONNECT_BY_ISLEAF - 224)) | (1 << (PlSqlParser.CONNECT_BY_ROOT - 224)) | (1 << (PlSqlParser.CONNECT_TIME - 224)) | (1 << (PlSqlParser.CONSIDER - 224)) | (1 << (PlSqlParser.CONSISTENT - 224)) | (1 << (PlSqlParser.CONSTANT - 224)))) !== 0) || ((((_la - 256)) & ~0x1f) == 0 && ((1 << (_la - 256)) & ((1 << (PlSqlParser.CONST - 256)) | (1 << (PlSqlParser.CONSTRAINT - 256)) | (1 << (PlSqlParser.CONSTRAINTS - 256)) | (1 << (PlSqlParser.CONSTRUCTOR - 256)) | (1 << (PlSqlParser.CONTAINER - 256)) | (1 << (PlSqlParser.CONTAINER_DATA - 256)) | (1 << (PlSqlParser.CONTAINERS - 256)) | (1 << (PlSqlParser.CONTENT - 256)) | (1 << (PlSqlParser.CONTENTS - 256)) | (1 << (PlSqlParser.CONTEXT - 256)) | (1 << (PlSqlParser.CONTINUE - 256)) | (1 << (PlSqlParser.CONTROLFILE - 256)) | (1 << (PlSqlParser.CON_UID_TO_ID - 256)) | (1 << (PlSqlParser.CONVERT - 256)) | (1 << (PlSqlParser.COOKIE - 256)) | (1 << (PlSqlParser.COPY - 256)) | (1 << (PlSqlParser.CORR_K - 256)) | (1 << (PlSqlParser.CORR_S - 256)) | (1 << (PlSqlParser.CORRUPTION - 256)) | (1 << (PlSqlParser.CORRUPT_XID_ALL - 256)) | (1 << (PlSqlParser.CORRUPT_XID - 256)) | (1 << (PlSqlParser.COS - 256)) | (1 << (PlSqlParser.COSH - 256)) | (1 << (PlSqlParser.COST - 256)) | (1 << (PlSqlParser.COST_XML_QUERY_REWRITE - 256)) | (1 << (PlSqlParser.COUNT - 256)) | (1 << (PlSqlParser.COVAR_POP - 256)) | (1 << (PlSqlParser.COVAR_SAMP - 256)) | (1 << (PlSqlParser.CPU_COSTING - 256)) | (1 << (PlSqlParser.CPU_PER_CALL - 256)) | (1 << (PlSqlParser.CPU_PER_SESSION - 256)) | (1 << (PlSqlParser.CRASH - 256)))) !== 0) || ((((_la - 289)) & ~0x1f) == 0 && ((1 << (_la - 289)) & ((1 << (PlSqlParser.CREATE_FILE_DEST - 289)) | (1 << (PlSqlParser.CREATE_STORED_OUTLINES - 289)) | (1 << (PlSqlParser.CREATION - 289)) | (1 << (PlSqlParser.CREDENTIAL - 289)) | (1 << (PlSqlParser.CRITICAL - 289)) | (1 << (PlSqlParser.CROSS - 289)) | (1 << (PlSqlParser.CROSSEDITION - 289)) | (1 << (PlSqlParser.CSCONVERT - 289)) | (1 << (PlSqlParser.CUBE_AJ - 289)) | (1 << (PlSqlParser.CUBE - 289)) | (1 << (PlSqlParser.CUBE_GB - 289)) | (1 << (PlSqlParser.CUBE_SJ - 289)) | (1 << (PlSqlParser.CUME_DISTM - 289)) | (1 << (PlSqlParser.CURRENT - 289)) | (1 << (PlSqlParser.CURRENT_DATE - 289)) | (1 << (PlSqlParser.CURRENT_SCHEMA - 289)) | (1 << (PlSqlParser.CURRENT_TIME - 289)) | (1 << (PlSqlParser.CURRENT_TIMESTAMP - 289)) | (1 << (PlSqlParser.CURRENT_USER - 289)) | (1 << (PlSqlParser.CURRENTV - 289)) | (1 << (PlSqlParser.CURSOR - 289)) | (1 << (PlSqlParser.CURSOR_SHARING_EXACT - 289)) | (1 << (PlSqlParser.CURSOR_SPECIFIC_SEGMENT - 289)) | (1 << (PlSqlParser.CUSTOMDATUM - 289)) | (1 << (PlSqlParser.CV - 289)) | (1 << (PlSqlParser.CYCLE - 289)) | (1 << (PlSqlParser.DANGLING - 289)) | (1 << (PlSqlParser.DATABASE - 289)) | (1 << (PlSqlParser.DATA - 289)) | (1 << (PlSqlParser.DATAFILE - 289)) | (1 << (PlSqlParser.DATAFILES - 289)))) !== 0) || ((((_la - 321)) & ~0x1f) == 0 && ((1 << (_la - 321)) & ((1 << (PlSqlParser.DATAMOVEMENT - 321)) | (1 << (PlSqlParser.DATAOBJNO - 321)) | (1 << (PlSqlParser.DATAOBJ_TO_MAT_PARTITION - 321)) | (1 << (PlSqlParser.DATAOBJ_TO_PARTITION - 321)) | (1 << (PlSqlParser.DATAPUMP - 321)) | (1 << (PlSqlParser.DATA_SECURITY_REWRITE_LIMIT - 321)) | (1 << (PlSqlParser.DATE_MODE - 321)) | (1 << (PlSqlParser.DAY - 321)) | (1 << (PlSqlParser.DAYS - 321)) | (1 << (PlSqlParser.DBA - 321)) | (1 << (PlSqlParser.DBA_RECYCLEBIN - 321)) | (1 << (PlSqlParser.DBMS_STATS - 321)) | (1 << (PlSqlParser.DB_ROLE_CHANGE - 321)) | (1 << (PlSqlParser.DBTIMEZONE - 321)) | (1 << (PlSqlParser.DB_UNIQUE_NAME - 321)) | (1 << (PlSqlParser.DB_VERSION - 321)) | (1 << (PlSqlParser.DDL - 321)) | (1 << (PlSqlParser.DEALLOCATE - 321)) | (1 << (PlSqlParser.DEBUG - 321)) | (1 << (PlSqlParser.DEBUGGER - 321)) | (1 << (PlSqlParser.DEC - 321)) | (1 << (PlSqlParser.DECIMAL - 321)) | (1 << (PlSqlParser.DECLARE - 321)) | (1 << (PlSqlParser.DECOMPOSE - 321)) | (1 << (PlSqlParser.DECORRELATE - 321)) | (1 << (PlSqlParser.DECR - 321)) | (1 << (PlSqlParser.DECREMENT - 321)) | (1 << (PlSqlParser.DECRYPT - 321)) | (1 << (PlSqlParser.DEDUPLICATE - 321)) | (1 << (PlSqlParser.DEFAULTS - 321)))) !== 0) || ((((_la - 353)) & ~0x1f) == 0 && ((1 << (_la - 353)) & ((1 << (PlSqlParser.DEFERRABLE - 353)) | (1 << (PlSqlParser.DEFERRED - 353)) | (1 << (PlSqlParser.DEFINED - 353)) | (1 << (PlSqlParser.DEFINE - 353)) | (1 << (PlSqlParser.DEFINER - 353)) | (1 << (PlSqlParser.DEGREE - 353)) | (1 << (PlSqlParser.DELAY - 353)) | (1 << (PlSqlParser.DELEGATE - 353)) | (1 << (PlSqlParser.DELETE_ALL - 353)) | (1 << (PlSqlParser.DELETE - 353)) | (1 << (PlSqlParser.DELETEXML - 353)) | (1 << (PlSqlParser.DEMAND - 353)) | (1 << (PlSqlParser.DENSE_RANKM - 353)) | (1 << (PlSqlParser.DEPENDENT - 353)) | (1 << (PlSqlParser.DEPTH - 353)) | (1 << (PlSqlParser.DEQUEUE - 353)) | (1 << (PlSqlParser.DEREF - 353)) | (1 << (PlSqlParser.DEREF_NO_REWRITE - 353)) | (1 << (PlSqlParser.DESTROY - 353)) | (1 << (PlSqlParser.DETACHED - 353)) | (1 << (PlSqlParser.DETERMINES - 353)) | (1 << (PlSqlParser.DETERMINISTIC - 353)) | (1 << (PlSqlParser.DICTIONARY - 353)) | (1 << (PlSqlParser.DIMENSION - 353)) | (1 << (PlSqlParser.DIMENSIONS - 353)) | (1 << (PlSqlParser.DIRECT_LOAD - 353)) | (1 << (PlSqlParser.DIRECTORY - 353)) | (1 << (PlSqlParser.DIRECT_PATH - 353)) | (1 << (PlSqlParser.DISABLE_ALL - 353)) | (1 << (PlSqlParser.DISABLE - 353)) | (1 << (PlSqlParser.DISABLE_PARALLEL_DML - 353)))) !== 0) || ((((_la - 385)) & ~0x1f) == 0 && ((1 << (_la - 385)) & ((1 << (PlSqlParser.DISABLE_PRESET - 385)) | (1 << (PlSqlParser.DISABLE_RPKE - 385)) | (1 << (PlSqlParser.DISALLOW - 385)) | (1 << (PlSqlParser.DISASSOCIATE - 385)) | (1 << (PlSqlParser.DISCARD - 385)) | (1 << (PlSqlParser.DISCONNECT - 385)) | (1 << (PlSqlParser.DISK - 385)) | (1 << (PlSqlParser.DISKGROUP - 385)) | (1 << (PlSqlParser.DISKS - 385)) | (1 << (PlSqlParser.DISMOUNT - 385)) | (1 << (PlSqlParser.DISTINGUISHED - 385)) | (1 << (PlSqlParser.DISTRIBUTED - 385)) | (1 << (PlSqlParser.DISTRIBUTE - 385)) | (1 << (PlSqlParser.DML - 385)) | (1 << (PlSqlParser.DML_UPDATE - 385)) | (1 << (PlSqlParser.DOCFIDELITY - 385)) | (1 << (PlSqlParser.DOCUMENT - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_FILTER - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_NO_SORT - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_SORT - 385)) | (1 << (PlSqlParser.DOUBLE - 385)) | (1 << (PlSqlParser.DOWNGRADE - 385)) | (1 << (PlSqlParser.DRIVING_SITE - 385)) | (1 << (PlSqlParser.DROP_COLUMN - 385)) | (1 << (PlSqlParser.DROP_GROUP - 385)) | (1 << (PlSqlParser.DSINTERVAL_UNCONSTRAINED - 385)) | (1 << (PlSqlParser.DST_UPGRADE_INSERT_CONV - 385)) | (1 << (PlSqlParser.DUMP - 385)))) !== 0) || ((((_la - 417)) & ~0x1f) == 0 && ((1 << (_la - 417)) & ((1 << (PlSqlParser.DUPLICATE - 417)) | (1 << (PlSqlParser.DV - 417)) | (1 << (PlSqlParser.DYNAMIC - 417)) | (1 << (PlSqlParser.DYNAMIC_SAMPLING - 417)) | (1 << (PlSqlParser.DYNAMIC_SAMPLING_EST_CDN - 417)) | (1 << (PlSqlParser.EACH - 417)) | (1 << (PlSqlParser.EDITIONABLE - 417)) | (1 << (PlSqlParser.EDITION - 417)) | (1 << (PlSqlParser.EDITIONING - 417)) | (1 << (PlSqlParser.EDITIONS - 417)) | (1 << (PlSqlParser.ELEMENT - 417)) | (1 << (PlSqlParser.ELIM_GROUPBY - 417)) | (1 << (PlSqlParser.ELIMINATE_JOIN - 417)) | (1 << (PlSqlParser.ELIMINATE_OBY - 417)) | (1 << (PlSqlParser.ELIMINATE_OUTER_JOIN - 417)) | (1 << (PlSqlParser.EM - 417)) | (1 << (PlSqlParser.EMPTY_BLOB - 417)) | (1 << (PlSqlParser.EMPTY_CLOB - 417)) | (1 << (PlSqlParser.EMPTY - 417)) | (1 << (PlSqlParser.ENABLE_ALL - 417)) | (1 << (PlSqlParser.ENABLE - 417)) | (1 << (PlSqlParser.ENABLE_PARALLEL_DML - 417)) | (1 << (PlSqlParser.ENABLE_PRESET - 417)) | (1 << (PlSqlParser.ENCODING - 417)) | (1 << (PlSqlParser.ENCRYPT - 417)) | (1 << (PlSqlParser.ENCRYPTION - 417)) | (1 << (PlSqlParser.END_OUTLINE_DATA - 417)) | (1 << (PlSqlParser.ENFORCED - 417)) | (1 << (PlSqlParser.ENFORCE - 417)))) !== 0) || ((((_la - 449)) & ~0x1f) == 0 && ((1 << (_la - 449)) & ((1 << (PlSqlParser.ENQUEUE - 449)) | (1 << (PlSqlParser.ENTERPRISE - 449)) | (1 << (PlSqlParser.ENTITYESCAPING - 449)) | (1 << (PlSqlParser.ENTRY - 449)) | (1 << (PlSqlParser.EQUIPART - 449)) | (1 << (PlSqlParser.ERR - 449)) | (1 << (PlSqlParser.ERROR_ARGUMENT - 449)) | (1 << (PlSqlParser.ERROR - 449)) | (1 << (PlSqlParser.ERROR_ON_OVERLAP_TIME - 449)) | (1 << (PlSqlParser.ERRORS - 449)) | (1 << (PlSqlParser.ESCAPE - 449)) | (1 << (PlSqlParser.ESTIMATE - 449)) | (1 << (PlSqlParser.EVAL - 449)) | (1 << (PlSqlParser.EVALNAME - 449)) | (1 << (PlSqlParser.EVALUATE - 449)) | (1 << (PlSqlParser.EVALUATION - 449)) | (1 << (PlSqlParser.EVENTS - 449)) | (1 << (PlSqlParser.EVERY - 449)) | (1 << (PlSqlParser.EXCEPT - 449)) | (1 << (PlSqlParser.EXCEPTION - 449)) | (1 << (PlSqlParser.EXCEPTION_INIT - 449)) | (1 << (PlSqlParser.EXCEPTIONS - 449)) | (1 << (PlSqlParser.EXCHANGE - 449)) | (1 << (PlSqlParser.EXCLUDE - 449)) | (1 << (PlSqlParser.EXCLUDING - 449)) | (1 << (PlSqlParser.EXECUTE - 449)) | (1 << (PlSqlParser.EXEMPT - 449)) | (1 << (PlSqlParser.EXISTING - 449)) | (1 << (PlSqlParser.EXISTS - 449)) | (1 << (PlSqlParser.EXISTSNODE - 449)) | (1 << (PlSqlParser.EXIT - 449)))) !== 0) || ((((_la - 481)) & ~0x1f) == 0 && ((1 << (_la - 481)) & ((1 << (PlSqlParser.EXPAND_GSET_TO_UNION - 481)) | (1 << (PlSqlParser.EXPAND_TABLE - 481)) | (1 << (PlSqlParser.EXP - 481)) | (1 << (PlSqlParser.EXPIRE - 481)) | (1 << (PlSqlParser.EXPLAIN - 481)) | (1 << (PlSqlParser.EXPLOSION - 481)) | (1 << (PlSqlParser.EXPORT - 481)) | (1 << (PlSqlParser.EXPR_CORR_CHECK - 481)) | (1 << (PlSqlParser.EXPRESS - 481)) | (1 << (PlSqlParser.EXTENDS - 481)) | (1 << (PlSqlParser.EXTENT - 481)) | (1 << (PlSqlParser.EXTENTS - 481)) | (1 << (PlSqlParser.EXTERNAL - 481)) | (1 << (PlSqlParser.EXTERNALLY - 481)) | (1 << (PlSqlParser.EXTRACTCLOBXML - 481)) | (1 << (PlSqlParser.EXTRACT - 481)) | (1 << (PlSqlParser.EXTRACTVALUE - 481)) | (1 << (PlSqlParser.EXTRA - 481)) | (1 << (PlSqlParser.FACILITY - 481)) | (1 << (PlSqlParser.FACT - 481)) | (1 << (PlSqlParser.FACTOR - 481)) | (1 << (PlSqlParser.FACTORIZE_JOIN - 481)) | (1 << (PlSqlParser.FAILED - 481)) | (1 << (PlSqlParser.FAILED_LOGIN_ATTEMPTS - 481)) | (1 << (PlSqlParser.FAILGROUP - 481)) | (1 << (PlSqlParser.FAILOVER - 481)) | (1 << (PlSqlParser.FAILURE - 481)) | (1 << (PlSqlParser.FALSE - 481)) | (1 << (PlSqlParser.FAMILY - 481)) | (1 << (PlSqlParser.FAR - 481)) | (1 << (PlSqlParser.FAST - 481)) | (1 << (PlSqlParser.FASTSTART - 481)))) !== 0) || ((((_la - 513)) & ~0x1f) == 0 && ((1 << (_la - 513)) & ((1 << (PlSqlParser.FBTSCAN - 513)) | (1 << (PlSqlParser.FEATURE_DETAILS - 513)) | (1 << (PlSqlParser.FEATURE_ID - 513)) | (1 << (PlSqlParser.FEATURE_SET - 513)) | (1 << (PlSqlParser.FEATURE_VALUE - 513)) | (1 << (PlSqlParser.FETCH - 513)) | (1 << (PlSqlParser.FILE - 513)) | (1 << (PlSqlParser.FILE_NAME_CONVERT - 513)) | (1 << (PlSqlParser.FILESYSTEM_LIKE_LOGGING - 513)) | (1 << (PlSqlParser.FILTER - 513)) | (1 << (PlSqlParser.FINAL - 513)) | (1 << (PlSqlParser.FINE - 513)) | (1 << (PlSqlParser.FINISH - 513)) | (1 << (PlSqlParser.FIRST - 513)) | (1 << (PlSqlParser.FIRSTM - 513)) | (1 << (PlSqlParser.FIRST_ROWS - 513)) | (1 << (PlSqlParser.FIRST_VALUE - 513)) | (1 << (PlSqlParser.FIXED_VIEW_DATA - 513)) | (1 << (PlSqlParser.FLAGGER - 513)) | (1 << (PlSqlParser.FLASHBACK - 513)) | (1 << (PlSqlParser.FLASH_CACHE - 513)) | (1 << (PlSqlParser.FLOAT - 513)) | (1 << (PlSqlParser.FLOB - 513)) | (1 << (PlSqlParser.FLOOR - 513)) | (1 << (PlSqlParser.FLUSH - 513)) | (1 << (PlSqlParser.FOLDER - 513)) | (1 << (PlSqlParser.FOLLOWING - 513)) | (1 << (PlSqlParser.FOLLOWS - 513)) | (1 << (PlSqlParser.FORALL - 513)) | (1 << (PlSqlParser.FORCE - 513)) | (1 << (PlSqlParser.FORCE_XML_QUERY_REWRITE - 513)) | (1 << (PlSqlParser.FOREIGN - 513)))) !== 0) || ((((_la - 545)) & ~0x1f) == 0 && ((1 << (_la - 545)) & ((1 << (PlSqlParser.FOREVER - 545)) | (1 << (PlSqlParser.FORMAT - 545)) | (1 << (PlSqlParser.FORWARD - 545)) | (1 << (PlSqlParser.FRAGMENT_NUMBER - 545)) | (1 << (PlSqlParser.FREELIST - 545)) | (1 << (PlSqlParser.FREELISTS - 545)) | (1 << (PlSqlParser.FREEPOOLS - 545)) | (1 << (PlSqlParser.FRESH - 545)) | (1 << (PlSqlParser.FROM_TZ - 545)) | (1 << (PlSqlParser.FULL - 545)) | (1 << (PlSqlParser.FULL_OUTER_JOIN_TO_OUTER - 545)) | (1 << (PlSqlParser.FUNCTION - 545)) | (1 << (PlSqlParser.FUNCTIONS - 545)) | (1 << (PlSqlParser.GATHER_OPTIMIZER_STATISTICS - 545)) | (1 << (PlSqlParser.GATHER_PLAN_STATISTICS - 545)) | (1 << (PlSqlParser.GBY_CONC_ROLLUP - 545)) | (1 << (PlSqlParser.GBY_PUSHDOWN - 545)) | (1 << (PlSqlParser.GENERATED - 545)) | (1 << (PlSqlParser.GET - 545)) | (1 << (PlSqlParser.GLOBAL - 545)) | (1 << (PlSqlParser.GLOBALLY - 545)) | (1 << (PlSqlParser.GLOBAL_NAME - 545)) | (1 << (PlSqlParser.GLOBAL_TOPIC_ENABLED - 545)) | (1 << (PlSqlParser.GROUP_BY - 545)) | (1 << (PlSqlParser.GROUP_ID - 545)) | (1 << (PlSqlParser.GROUPING - 545)) | (1 << (PlSqlParser.GROUPING_ID - 545)))) !== 0) || ((((_la - 577)) & ~0x1f) == 0 && ((1 << (_la - 577)) & ((1 << (PlSqlParser.GROUPS - 577)) | (1 << (PlSqlParser.GUARANTEED - 577)) | (1 << (PlSqlParser.GUARANTEE - 577)) | (1 << (PlSqlParser.GUARD - 577)) | (1 << (PlSqlParser.HASH_AJ - 577)) | (1 << (PlSqlParser.HASH - 577)) | (1 << (PlSqlParser.HASHKEYS - 577)) | (1 << (PlSqlParser.HASH_SJ - 577)) | (1 << (PlSqlParser.HEADER - 577)) | (1 << (PlSqlParser.HEAP - 577)) | (1 << (PlSqlParser.HELP - 577)) | (1 << (PlSqlParser.HEXTORAW - 577)) | (1 << (PlSqlParser.HEXTOREF - 577)) | (1 << (PlSqlParser.HIDDEN_KEYWORD - 577)) | (1 << (PlSqlParser.HIDE - 577)) | (1 << (PlSqlParser.HIERARCHY - 577)) | (1 << (PlSqlParser.HIGH - 577)) | (1 << (PlSqlParser.HINTSET_BEGIN - 577)) | (1 << (PlSqlParser.HINTSET_END - 577)) | (1 << (PlSqlParser.HOT - 577)) | (1 << (PlSqlParser.HOUR - 577)) | (1 << (PlSqlParser.HWM_BROKERED - 577)) | (1 << (PlSqlParser.HYBRID - 577)) | (1 << (PlSqlParser.IDENTIFIER - 577)) | (1 << (PlSqlParser.IDENTITY - 577)) | (1 << (PlSqlParser.IDGENERATORS - 577)) | (1 << (PlSqlParser.ID - 577)) | (1 << (PlSqlParser.IDLE_TIME - 577)) | (1 << (PlSqlParser.IF - 577)) | (1 << (PlSqlParser.IGNORE - 577)))) !== 0) || ((((_la - 609)) & ~0x1f) == 0 && ((1 << (_la - 609)) & ((1 << (PlSqlParser.IGNORE_OPTIM_EMBEDDED_HINTS - 609)) | (1 << (PlSqlParser.IGNORE_ROW_ON_DUPKEY_INDEX - 609)) | (1 << (PlSqlParser.IGNORE_WHERE_CLAUSE - 609)) | (1 << (PlSqlParser.ILM - 609)) | (1 << (PlSqlParser.IMMEDIATE - 609)) | (1 << (PlSqlParser.IMPACT - 609)) | (1 << (PlSqlParser.IMPORT - 609)) | (1 << (PlSqlParser.INACTIVE - 609)) | (1 << (PlSqlParser.INCLUDE - 609)) | (1 << (PlSqlParser.INCLUDE_VERSION - 609)) | (1 << (PlSqlParser.INCLUDING - 609)) | (1 << (PlSqlParser.INCREMENTAL - 609)) | (1 << (PlSqlParser.INCREMENT - 609)) | (1 << (PlSqlParser.INCR - 609)) | (1 << (PlSqlParser.INDENT - 609)) | (1 << (PlSqlParser.INDEX_ASC - 609)) | (1 << (PlSqlParser.INDEX_COMBINE - 609)) | (1 << (PlSqlParser.INDEX_DESC - 609)) | (1 << (PlSqlParser.INDEXED - 609)) | (1 << (PlSqlParser.INDEXES - 609)) | (1 << (PlSqlParser.INDEX_FFS - 609)) | (1 << (PlSqlParser.INDEX_FILTER - 609)) | (1 << (PlSqlParser.INDEXING - 609)) | (1 << (PlSqlParser.INDEX_JOIN - 609)) | (1 << (PlSqlParser.INDEX_ROWS - 609)) | (1 << (PlSqlParser.INDEX_RRS - 609)) | (1 << (PlSqlParser.INDEX_RS_ASC - 609)) | (1 << (PlSqlParser.INDEX_RS_DESC - 609)) | (1 << (PlSqlParser.INDEX_RS - 609)) | (1 << (PlSqlParser.INDEX_SCAN - 609)) | (1 << (PlSqlParser.INDEX_SKIP_SCAN - 609)))) !== 0) || ((((_la - 641)) & ~0x1f) == 0 && ((1 << (_la - 641)) & ((1 << (PlSqlParser.INDEX_SS_ASC - 641)) | (1 << (PlSqlParser.INDEX_SS_DESC - 641)) | (1 << (PlSqlParser.INDEX_SS - 641)) | (1 << (PlSqlParser.INDEX_STATS - 641)) | (1 << (PlSqlParser.INDEXTYPE - 641)) | (1 << (PlSqlParser.INDEXTYPES - 641)) | (1 << (PlSqlParser.INDICATOR - 641)) | (1 << (PlSqlParser.INDICES - 641)) | (1 << (PlSqlParser.INFINITE - 641)) | (1 << (PlSqlParser.INFORMATIONAL - 641)) | (1 << (PlSqlParser.INHERIT - 641)) | (1 << (PlSqlParser.INITCAP - 641)) | (1 << (PlSqlParser.INITIAL - 641)) | (1 << (PlSqlParser.INITIALIZED - 641)) | (1 << (PlSqlParser.INITIALLY - 641)) | (1 << (PlSqlParser.INITRANS - 641)) | (1 << (PlSqlParser.INLINE - 641)) | (1 << (PlSqlParser.INLINE_XMLTYPE_NT - 641)) | (1 << (PlSqlParser.INMEMORY - 641)) | (1 << (PlSqlParser.IN_MEMORY_METADATA - 641)) | (1 << (PlSqlParser.INMEMORY_PRUNING - 641)) | (1 << (PlSqlParser.INNER - 641)) | (1 << (PlSqlParser.INOUT - 641)) | (1 << (PlSqlParser.INPLACE - 641)) | (1 << (PlSqlParser.INSERTCHILDXMLAFTER - 641)) | (1 << (PlSqlParser.INSERTCHILDXMLBEFORE - 641)) | (1 << (PlSqlParser.INSERTCHILDXML - 641)) | (1 << (PlSqlParser.INSERTXMLAFTER - 641)) | (1 << (PlSqlParser.INSERTXMLBEFORE - 641)) | (1 << (PlSqlParser.INSTANCE - 641)))) !== 0) || ((((_la - 673)) & ~0x1f) == 0 && ((1 << (_la - 673)) & ((1 << (PlSqlParser.INSTANCES - 673)) | (1 << (PlSqlParser.INSTANTIABLE - 673)) | (1 << (PlSqlParser.INSTANTLY - 673)) | (1 << (PlSqlParser.INSTEAD - 673)) | (1 << (PlSqlParser.INSTR2 - 673)) | (1 << (PlSqlParser.INSTR4 - 673)) | (1 << (PlSqlParser.INSTRB - 673)) | (1 << (PlSqlParser.INSTRC - 673)) | (1 << (PlSqlParser.INSTR - 673)) | (1 << (PlSqlParser.INTEGER - 673)) | (1 << (PlSqlParser.INTERLEAVED - 673)) | (1 << (PlSqlParser.INTERMEDIATE - 673)) | (1 << (PlSqlParser.INTERNAL_CONVERT - 673)) | (1 << (PlSqlParser.INTERNAL_USE - 673)) | (1 << (PlSqlParser.INTERPRETED - 673)) | (1 << (PlSqlParser.INTERVAL - 673)) | (1 << (PlSqlParser.INT - 673)) | (1 << (PlSqlParser.INVALIDATE - 673)) | (1 << (PlSqlParser.INVISIBLE - 673)) | (1 << (PlSqlParser.IN_XQUERY - 673)) | (1 << (PlSqlParser.ISOLATION - 673)) | (1 << (PlSqlParser.ISOLATION_LEVEL - 673)) | (1 << (PlSqlParser.ITERATE - 673)) | (1 << (PlSqlParser.ITERATION_NUMBER - 673)) | (1 << (PlSqlParser.JAVA - 673)) | (1 << (PlSqlParser.JOB - 673)) | (1 << (PlSqlParser.JOIN - 673)) | (1 << (PlSqlParser.JSON_ARRAYAGG - 673)) | (1 << (PlSqlParser.JSON_ARRAY - 673)))) !== 0) || ((((_la - 705)) & ~0x1f) == 0 && ((1 << (_la - 705)) & ((1 << (PlSqlParser.JSON_EQUAL - 705)) | (1 << (PlSqlParser.JSON_EXISTS2 - 705)) | (1 << (PlSqlParser.JSON_EXISTS - 705)) | (1 << (PlSqlParser.JSONGET - 705)) | (1 << (PlSqlParser.JSON - 705)) | (1 << (PlSqlParser.JSON_OBJECTAGG - 705)) | (1 << (PlSqlParser.JSON_OBJECT - 705)) | (1 << (PlSqlParser.JSONPARSE - 705)) | (1 << (PlSqlParser.JSON_QUERY - 705)) | (1 << (PlSqlParser.JSON_SERIALIZE - 705)) | (1 << (PlSqlParser.JSON_TABLE - 705)) | (1 << (PlSqlParser.JSON_TEXTCONTAINS2 - 705)) | (1 << (PlSqlParser.JSON_TEXTCONTAINS - 705)) | (1 << (PlSqlParser.JSON_VALUE - 705)) | (1 << (PlSqlParser.KEEP_DUPLICATES - 705)) | (1 << (PlSqlParser.KEEP - 705)) | (1 << (PlSqlParser.KERBEROS - 705)) | (1 << (PlSqlParser.KEY - 705)) | (1 << (PlSqlParser.KEY_LENGTH - 705)) | (1 << (PlSqlParser.KEYSIZE - 705)) | (1 << (PlSqlParser.KEYS - 705)) | (1 << (PlSqlParser.KEYSTORE - 705)) | (1 << (PlSqlParser.KILL - 705)) | (1 << (PlSqlParser.LABEL - 705)) | (1 << (PlSqlParser.LANGUAGE - 705)) | (1 << (PlSqlParser.LAST_DAY - 705)) | (1 << (PlSqlParser.LAST - 705)) | (1 << (PlSqlParser.LAST_VALUE - 705)) | (1 << (PlSqlParser.LATERAL - 705)) | (1 << (PlSqlParser.LAX - 705)) | (1 << (PlSqlParser.LAYER - 705)) | (1 << (PlSqlParser.LDAP_REGISTRATION_ENABLED - 705)))) !== 0) || ((((_la - 737)) & ~0x1f) == 0 && ((1 << (_la - 737)) & ((1 << (PlSqlParser.LDAP_REGISTRATION - 737)) | (1 << (PlSqlParser.LDAP_REG_SYNC_INTERVAL - 737)) | (1 << (PlSqlParser.LEADING - 737)) | (1 << (PlSqlParser.LEFT - 737)) | (1 << (PlSqlParser.LENGTH2 - 737)) | (1 << (PlSqlParser.LENGTH4 - 737)) | (1 << (PlSqlParser.LENGTHB - 737)) | (1 << (PlSqlParser.LENGTHC - 737)) | (1 << (PlSqlParser.LENGTH - 737)) | (1 << (PlSqlParser.LESS - 737)) | (1 << (PlSqlParser.LEVEL - 737)) | (1 << (PlSqlParser.LEVELS - 737)) | (1 << (PlSqlParser.LIBRARY - 737)) | (1 << (PlSqlParser.LIFECYCLE - 737)) | (1 << (PlSqlParser.LIFE - 737)) | (1 << (PlSqlParser.LIFETIME - 737)) | (1 << (PlSqlParser.LIKE2 - 737)) | (1 << (PlSqlParser.LIKE4 - 737)) | (1 << (PlSqlParser.LIKEC - 737)) | (1 << (PlSqlParser.LIKE_EXPAND - 737)) | (1 << (PlSqlParser.LIMIT - 737)) | (1 << (PlSqlParser.LINEAR - 737)) | (1 << (PlSqlParser.LINK - 737)) | (1 << (PlSqlParser.LIST - 737)) | (1 << (PlSqlParser.LN - 737)) | (1 << (PlSqlParser.LNNVL - 737)) | (1 << (PlSqlParser.LOAD - 737)) | (1 << (PlSqlParser.LOB - 737)) | (1 << (PlSqlParser.LOBNVL - 737)) | (1 << (PlSqlParser.LOBS - 737)) | (1 << (PlSqlParser.LOCAL_INDEXES - 737)))) !== 0) || ((((_la - 769)) & ~0x1f) == 0 && ((1 << (_la - 769)) & ((1 << (PlSqlParser.LOCAL - 769)) | (1 << (PlSqlParser.LOCALTIME - 769)) | (1 << (PlSqlParser.LOCALTIMESTAMP - 769)) | (1 << (PlSqlParser.LOCATION - 769)) | (1 << (PlSqlParser.LOCATOR - 769)) | (1 << (PlSqlParser.LOCKED - 769)) | (1 << (PlSqlParser.LOCKING - 769)) | (1 << (PlSqlParser.LOGFILE - 769)) | (1 << (PlSqlParser.LOGFILES - 769)) | (1 << (PlSqlParser.LOGGING - 769)) | (1 << (PlSqlParser.LOGICAL - 769)) | (1 << (PlSqlParser.LOGICAL_READS_PER_CALL - 769)) | (1 << (PlSqlParser.LOGICAL_READS_PER_SESSION - 769)) | (1 << (PlSqlParser.LOG - 769)) | (1 << (PlSqlParser.LOGMINING - 769)) | (1 << (PlSqlParser.LOGOFF - 769)) | (1 << (PlSqlParser.LOGON - 769)) | (1 << (PlSqlParser.LOG_READ_ONLY_VIOLATIONS - 769)) | (1 << (PlSqlParser.LONG - 769)) | (1 << (PlSqlParser.LOOP - 769)) | (1 << (PlSqlParser.LOWER - 769)) | (1 << (PlSqlParser.LOW - 769)) | (1 << (PlSqlParser.LPAD - 769)) | (1 << (PlSqlParser.LTRIM - 769)) | (1 << (PlSqlParser.MAIN - 769)) | (1 << (PlSqlParser.MAKE_REF - 769)) | (1 << (PlSqlParser.MANAGED - 769)) | (1 << (PlSqlParser.MANAGE - 769)) | (1 << (PlSqlParser.MANAGEMENT - 769)) | (1 << (PlSqlParser.MANAGER - 769)) | (1 << (PlSqlParser.MANUAL - 769)))) !== 0) || ((((_la - 801)) & ~0x1f) == 0 && ((1 << (_la - 801)) & ((1 << (PlSqlParser.MAP - 801)) | (1 << (PlSqlParser.MAPPING - 801)) | (1 << (PlSqlParser.MASTER - 801)) | (1 << (PlSqlParser.MATCHED - 801)) | (1 << (PlSqlParser.MATCHES - 801)) | (1 << (PlSqlParser.MATCH - 801)) | (1 << (PlSqlParser.MATCH_NUMBER - 801)) | (1 << (PlSqlParser.MATCH_RECOGNIZE - 801)) | (1 << (PlSqlParser.MATERIALIZED - 801)) | (1 << (PlSqlParser.MATERIALIZE - 801)) | (1 << (PlSqlParser.MAXARCHLOGS - 801)) | (1 << (PlSqlParser.MAXDATAFILES - 801)) | (1 << (PlSqlParser.MAXEXTENTS - 801)) | (1 << (PlSqlParser.MAXIMIZE - 801)) | (1 << (PlSqlParser.MAXINSTANCES - 801)) | (1 << (PlSqlParser.MAXLOGFILES - 801)) | (1 << (PlSqlParser.MAXLOGHISTORY - 801)) | (1 << (PlSqlParser.MAXLOGMEMBERS - 801)) | (1 << (PlSqlParser.MAX_SHARED_TEMP_SIZE - 801)) | (1 << (PlSqlParser.MAXSIZE - 801)) | (1 << (PlSqlParser.MAXTRANS - 801)) | (1 << (PlSqlParser.MAXVALUE - 801)) | (1 << (PlSqlParser.MEASURE - 801)) | (1 << (PlSqlParser.MEASURES - 801)) | (1 << (PlSqlParser.MEDIUM - 801)) | (1 << (PlSqlParser.MEMBER - 801)) | (1 << (PlSqlParser.MEMCOMPRESS - 801)) | (1 << (PlSqlParser.MEMORY - 801)) | (1 << (PlSqlParser.MERGEACTIONS - 801)) | (1 << (PlSqlParser.MERGE_AJ - 801)) | (1 << (PlSqlParser.MERGE_CONST_ON - 801)) | (1 << (PlSqlParser.MERGE - 801)))) !== 0) || ((((_la - 833)) & ~0x1f) == 0 && ((1 << (_la - 833)) & ((1 << (PlSqlParser.MERGE_SJ - 833)) | (1 << (PlSqlParser.METADATA - 833)) | (1 << (PlSqlParser.METHOD - 833)) | (1 << (PlSqlParser.MIGRATE - 833)) | (1 << (PlSqlParser.MIGRATION - 833)) | (1 << (PlSqlParser.MINEXTENTS - 833)) | (1 << (PlSqlParser.MINIMIZE - 833)) | (1 << (PlSqlParser.MINIMUM - 833)) | (1 << (PlSqlParser.MINING - 833)) | (1 << (PlSqlParser.MINUS_NULL - 833)) | (1 << (PlSqlParser.MINUTE - 833)) | (1 << (PlSqlParser.MINVALUE - 833)) | (1 << (PlSqlParser.MIRRORCOLD - 833)) | (1 << (PlSqlParser.MIRRORHOT - 833)) | (1 << (PlSqlParser.MIRROR - 833)) | (1 << (PlSqlParser.MLSLABEL - 833)) | (1 << (PlSqlParser.MODEL_COMPILE_SUBQUERY - 833)) | (1 << (PlSqlParser.MODEL_DONTVERIFY_UNIQUENESS - 833)) | (1 << (PlSqlParser.MODEL_DYNAMIC_SUBQUERY - 833)) | (1 << (PlSqlParser.MODEL_MIN_ANALYSIS - 833)) | (1 << (PlSqlParser.MODEL - 833)) | (1 << (PlSqlParser.MODEL_NB - 833)) | (1 << (PlSqlParser.MODEL_NO_ANALYSIS - 833)) | (1 << (PlSqlParser.MODEL_PBY - 833)) | (1 << (PlSqlParser.MODEL_PUSH_REF - 833)) | (1 << (PlSqlParser.MODEL_SV - 833)) | (1 << (PlSqlParser.MODIFICATION - 833)) | (1 << (PlSqlParser.MODIFY_COLUMN_TYPE - 833)) | (1 << (PlSqlParser.MODIFY - 833)) | (1 << (PlSqlParser.MOD - 833)))) !== 0) || ((((_la - 865)) & ~0x1f) == 0 && ((1 << (_la - 865)) & ((1 << (PlSqlParser.MODULE - 865)) | (1 << (PlSqlParser.MONITORING - 865)) | (1 << (PlSqlParser.MONITOR - 865)) | (1 << (PlSqlParser.MONTH - 865)) | (1 << (PlSqlParser.MONTHS_BETWEEN - 865)) | (1 << (PlSqlParser.MONTHS - 865)) | (1 << (PlSqlParser.MOUNT - 865)) | (1 << (PlSqlParser.MOUNTPATH - 865)) | (1 << (PlSqlParser.MOVEMENT - 865)) | (1 << (PlSqlParser.MOVE - 865)) | (1 << (PlSqlParser.MULTIDIMENSIONAL - 865)) | (1 << (PlSqlParser.MULTISET - 865)) | (1 << (PlSqlParser.MV_MERGE - 865)) | (1 << (PlSqlParser.NAMED - 865)) | (1 << (PlSqlParser.NAME - 865)) | (1 << (PlSqlParser.NAMESPACE - 865)) | (1 << (PlSqlParser.NAN - 865)) | (1 << (PlSqlParser.NANVL - 865)) | (1 << (PlSqlParser.NATIONAL - 865)) | (1 << (PlSqlParser.NATIVE_FULL_OUTER_JOIN - 865)) | (1 << (PlSqlParser.NATIVE - 865)) | (1 << (PlSqlParser.NATURAL - 865)) | (1 << (PlSqlParser.NAV - 865)) | (1 << (PlSqlParser.NCHAR_CS - 865)) | (1 << (PlSqlParser.NCHAR - 865)) | (1 << (PlSqlParser.NCHR - 865)) | (1 << (PlSqlParser.NCLOB - 865)) | (1 << (PlSqlParser.NEEDED - 865)) | (1 << (PlSqlParser.NEG - 865)) | (1 << (PlSqlParser.NESTED - 865)) | (1 << (PlSqlParser.NESTED_TABLE_FAST_INSERT - 865)))) !== 0) || ((((_la - 897)) & ~0x1f) == 0 && ((1 << (_la - 897)) & ((1 << (PlSqlParser.NESTED_TABLE_GET_REFS - 897)) | (1 << (PlSqlParser.NESTED_TABLE_ID - 897)) | (1 << (PlSqlParser.NESTED_TABLE_SET_REFS - 897)) | (1 << (PlSqlParser.NESTED_TABLE_SET_SETID - 897)) | (1 << (PlSqlParser.NETWORK - 897)) | (1 << (PlSqlParser.NEVER - 897)) | (1 << (PlSqlParser.NEW - 897)) | (1 << (PlSqlParser.NEW_TIME - 897)) | (1 << (PlSqlParser.NEXT_DAY - 897)) | (1 << (PlSqlParser.NEXT - 897)) | (1 << (PlSqlParser.NL_AJ - 897)) | (1 << (PlSqlParser.NLJ_BATCHING - 897)) | (1 << (PlSqlParser.NLJ_INDEX_FILTER - 897)) | (1 << (PlSqlParser.NLJ_INDEX_SCAN - 897)) | (1 << (PlSqlParser.NLJ_PREFETCH - 897)) | (1 << (PlSqlParser.NLS_CALENDAR - 897)) | (1 << (PlSqlParser.NLS_CHARACTERSET - 897)) | (1 << (PlSqlParser.NLS_CHARSET_DECL_LEN - 897)) | (1 << (PlSqlParser.NLS_CHARSET_ID - 897)) | (1 << (PlSqlParser.NLS_CHARSET_NAME - 897)) | (1 << (PlSqlParser.NLS_COMP - 897)) | (1 << (PlSqlParser.NLS_CURRENCY - 897)) | (1 << (PlSqlParser.NLS_DATE_FORMAT - 897)) | (1 << (PlSqlParser.NLS_DATE_LANGUAGE - 897)) | (1 << (PlSqlParser.NLS_INITCAP - 897)) | (1 << (PlSqlParser.NLS_ISO_CURRENCY - 897)) | (1 << (PlSqlParser.NL_SJ - 897)) | (1 << (PlSqlParser.NLS_LANG - 897)) | (1 << (PlSqlParser.NLS_LANGUAGE - 897)) | (1 << (PlSqlParser.NLS_LENGTH_SEMANTICS - 897)) | (1 << (PlSqlParser.NLS_LOWER - 897)) | (1 << (PlSqlParser.NLS_NCHAR_CONV_EXCP - 897)))) !== 0) || ((((_la - 929)) & ~0x1f) == 0 && ((1 << (_la - 929)) & ((1 << (PlSqlParser.NLS_NUMERIC_CHARACTERS - 929)) | (1 << (PlSqlParser.NLS_SORT - 929)) | (1 << (PlSqlParser.NLSSORT - 929)) | (1 << (PlSqlParser.NLS_SPECIAL_CHARS - 929)) | (1 << (PlSqlParser.NLS_TERRITORY - 929)) | (1 << (PlSqlParser.NLS_UPPER - 929)) | (1 << (PlSqlParser.NO_ACCESS - 929)) | (1 << (PlSqlParser.NO_ADAPTIVE_PLAN - 929)) | (1 << (PlSqlParser.NO_ANSI_REARCH - 929)) | (1 << (PlSqlParser.NOAPPEND - 929)) | (1 << (PlSqlParser.NOARCHIVELOG - 929)) | (1 << (PlSqlParser.NOAUDIT - 929)) | (1 << (PlSqlParser.NO_AUTO_REOPTIMIZE - 929)) | (1 << (PlSqlParser.NO_BASETABLE_MULTIMV_REWRITE - 929)) | (1 << (PlSqlParser.NO_BATCH_TABLE_ACCESS_BY_ROWID - 929)) | (1 << (PlSqlParser.NO_BIND_AWARE - 929)) | (1 << (PlSqlParser.NO_BUFFER - 929)) | (1 << (PlSqlParser.NOCACHE - 929)) | (1 << (PlSqlParser.NO_CARTESIAN - 929)) | (1 << (PlSqlParser.NO_CHECK_ACL_REWRITE - 929)) | (1 << (PlSqlParser.NO_CLUSTER_BY_ROWID - 929)) | (1 << (PlSqlParser.NO_CLUSTERING - 929)) | (1 << (PlSqlParser.NO_COALESCE_SQ - 929)) | (1 << (PlSqlParser.NO_COMMON_DATA - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_CB_WHR_ONLY - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_COMBINE_SW - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_COST_BASED - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_ELIM_DUPS - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_FILTERING - 929)) | (1 << (PlSqlParser.NOCOPY - 929)) | (1 << (PlSqlParser.NO_COST_XML_QUERY_REWRITE - 929)))) !== 0) || ((((_la - 961)) & ~0x1f) == 0 && ((1 << (_la - 961)) & ((1 << (PlSqlParser.NO_CPU_COSTING - 961)) | (1 << (PlSqlParser.NOCPU_COSTING - 961)) | (1 << (PlSqlParser.NOCYCLE - 961)) | (1 << (PlSqlParser.NO_DATA_SECURITY_REWRITE - 961)) | (1 << (PlSqlParser.NO_DECORRELATE - 961)) | (1 << (PlSqlParser.NODELAY - 961)) | (1 << (PlSqlParser.NO_DOMAIN_INDEX_FILTER - 961)) | (1 << (PlSqlParser.NO_DST_UPGRADE_INSERT_CONV - 961)) | (1 << (PlSqlParser.NO_ELIM_GROUPBY - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_JOIN - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_OBY - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_OUTER_JOIN - 961)) | (1 << (PlSqlParser.NOENTITYESCAPING - 961)) | (1 << (PlSqlParser.NO_EXPAND_GSET_TO_UNION - 961)) | (1 << (PlSqlParser.NO_EXPAND - 961)) | (1 << (PlSqlParser.NO_EXPAND_TABLE - 961)) | (1 << (PlSqlParser.NO_FACT - 961)) | (1 << (PlSqlParser.NO_FACTORIZE_JOIN - 961)) | (1 << (PlSqlParser.NO_FILTERING - 961)) | (1 << (PlSqlParser.NOFORCE - 961)) | (1 << (PlSqlParser.NO_FULL_OUTER_JOIN_TO_OUTER - 961)) | (1 << (PlSqlParser.NO_GATHER_OPTIMIZER_STATISTICS - 961)) | (1 << (PlSqlParser.NO_GBY_PUSHDOWN - 961)) | (1 << (PlSqlParser.NOGUARANTEE - 961)) | (1 << (PlSqlParser.NO_INDEX_FFS - 961)) | (1 << (PlSqlParser.NO_INDEX - 961)) | (1 << (PlSqlParser.NO_INDEX_SS - 961)) | (1 << (PlSqlParser.NO_INMEMORY - 961)) | (1 << (PlSqlParser.NO_INMEMORY_PRUNING - 961)) | (1 << (PlSqlParser.NOKEEP - 961)) | (1 << (PlSqlParser.NO_LOAD - 961)) | (1 << (PlSqlParser.NOLOCAL - 961)))) !== 0) || ((((_la - 993)) & ~0x1f) == 0 && ((1 << (_la - 993)) & ((1 << (PlSqlParser.NOLOGGING - 993)) | (1 << (PlSqlParser.NOMAPPING - 993)) | (1 << (PlSqlParser.NOMAXVALUE - 993)) | (1 << (PlSqlParser.NO_MERGE - 993)) | (1 << (PlSqlParser.NOMINIMIZE - 993)) | (1 << (PlSqlParser.NOMINVALUE - 993)) | (1 << (PlSqlParser.NO_MODEL_PUSH_REF - 993)) | (1 << (PlSqlParser.NO_MONITORING - 993)) | (1 << (PlSqlParser.NOMONITORING - 993)) | (1 << (PlSqlParser.NO_MONITOR - 993)) | (1 << (PlSqlParser.NO_MULTIMV_REWRITE - 993)) | (1 << (PlSqlParser.NO_NATIVE_FULL_OUTER_JOIN - 993)) | (1 << (PlSqlParser.NONBLOCKING - 993)) | (1 << (PlSqlParser.NONEDITIONABLE - 993)) | (1 << (PlSqlParser.NONE - 993)) | (1 << (PlSqlParser.NO_NLJ_BATCHING - 993)) | (1 << (PlSqlParser.NO_NLJ_PREFETCH - 993)) | (1 << (PlSqlParser.NO - 993)) | (1 << (PlSqlParser.NONSCHEMA - 993)) | (1 << (PlSqlParser.NO_OBJECT_LINK - 993)) | (1 << (PlSqlParser.NOORDER - 993)) | (1 << (PlSqlParser.NO_ORDER_ROLLUPS - 993)) | (1 << (PlSqlParser.NO_OUTER_JOIN_TO_ANTI - 993)) | (1 << (PlSqlParser.NO_OUTER_JOIN_TO_INNER - 993)) | (1 << (PlSqlParser.NOOVERRIDE - 993)) | (1 << (PlSqlParser.NO_PARALLEL_INDEX - 993)) | (1 << (PlSqlParser.NOPARALLEL_INDEX - 993)) | (1 << (PlSqlParser.NO_PARALLEL - 993)) | (1 << (PlSqlParser.NOPARALLEL - 993)) | (1 << (PlSqlParser.NO_PARTIAL_COMMIT - 993)) | (1 << (PlSqlParser.NO_PARTIAL_JOIN - 993)) | (1 << (PlSqlParser.NO_PARTIAL_ROLLUP_PUSHDOWN - 993)))) !== 0) || ((((_la - 1025)) & ~0x1f) == 0 && ((1 << (_la - 1025)) & ((1 << (PlSqlParser.NOPARTITION - 1025)) | (1 << (PlSqlParser.NO_PLACE_DISTINCT - 1025)) | (1 << (PlSqlParser.NO_PLACE_GROUP_BY - 1025)) | (1 << (PlSqlParser.NO_PQ_CONCURRENT_UNION - 1025)) | (1 << (PlSqlParser.NO_PQ_MAP - 1025)) | (1 << (PlSqlParser.NO_PQ_REPLICATE - 1025)) | (1 << (PlSqlParser.NO_PQ_SKEW - 1025)) | (1 << (PlSqlParser.NO_PRUNE_GSETS - 1025)) | (1 << (PlSqlParser.NO_PULL_PRED - 1025)) | (1 << (PlSqlParser.NO_PUSH_PRED - 1025)) | (1 << (PlSqlParser.NO_PUSH_SUBQ - 1025)) | (1 << (PlSqlParser.NO_PX_FAULT_TOLERANCE - 1025)) | (1 << (PlSqlParser.NO_PX_JOIN_FILTER - 1025)) | (1 << (PlSqlParser.NO_QKN_BUFF - 1025)) | (1 << (PlSqlParser.NO_QUERY_TRANSFORMATION - 1025)) | (1 << (PlSqlParser.NO_REF_CASCADE - 1025)) | (1 << (PlSqlParser.NORELOCATE - 1025)) | (1 << (PlSqlParser.NORELY - 1025)) | (1 << (PlSqlParser.NOREPAIR - 1025)) | (1 << (PlSqlParser.NOREPLAY - 1025)) | (1 << (PlSqlParser.NORESETLOGS - 1025)) | (1 << (PlSqlParser.NO_RESULT_CACHE - 1025)) | (1 << (PlSqlParser.NOREVERSE - 1025)) | (1 << (PlSqlParser.NO_REWRITE - 1025)) | (1 << (PlSqlParser.NOREWRITE - 1025)) | (1 << (PlSqlParser.NORMAL - 1025)) | (1 << (PlSqlParser.NO_ROOT_SW_FOR_LOCAL - 1025)) | (1 << (PlSqlParser.NOROWDEPENDENCIES - 1025)) | (1 << (PlSqlParser.NOSCHEMACHECK - 1025)) | (1 << (PlSqlParser.NOSEGMENT - 1025)) | (1 << (PlSqlParser.NO_SEMIJOIN - 1025)) | (1 << (PlSqlParser.NO_SEMI_TO_INNER - 1025)))) !== 0) || ((((_la - 1057)) & ~0x1f) == 0 && ((1 << (_la - 1057)) & ((1 << (PlSqlParser.NO_SET_TO_JOIN - 1057)) | (1 << (PlSqlParser.NOSORT - 1057)) | (1 << (PlSqlParser.NO_SQL_TRANSLATION - 1057)) | (1 << (PlSqlParser.NO_SQL_TUNE - 1057)) | (1 << (PlSqlParser.NO_STAR_TRANSFORMATION - 1057)) | (1 << (PlSqlParser.NO_STATEMENT_QUEUING - 1057)) | (1 << (PlSqlParser.NO_STATS_GSETS - 1057)) | (1 << (PlSqlParser.NOSTRICT - 1057)) | (1 << (PlSqlParser.NO_SUBQUERY_PRUNING - 1057)) | (1 << (PlSqlParser.NO_SUBSTRB_PAD - 1057)) | (1 << (PlSqlParser.NO_SWAP_JOIN_INPUTS - 1057)) | (1 << (PlSqlParser.NOSWITCH - 1057)) | (1 << (PlSqlParser.NO_TABLE_LOOKUP_BY_NL - 1057)) | (1 << (PlSqlParser.NO_TEMP_TABLE - 1057)) | (1 << (PlSqlParser.NOTHING - 1057)) | (1 << (PlSqlParser.NOTIFICATION - 1057)) | (1 << (PlSqlParser.NO_TRANSFORM_DISTINCT_AGG - 1057)) | (1 << (PlSqlParser.NO_UNNEST - 1057)) | (1 << (PlSqlParser.NO_USE_CUBE - 1057)) | (1 << (PlSqlParser.NO_USE_HASH_AGGREGATION - 1057)) | (1 << (PlSqlParser.NO_USE_HASH_GBY_FOR_PUSHDOWN - 1057)) | (1 << (PlSqlParser.NO_USE_HASH - 1057)) | (1 << (PlSqlParser.NO_USE_INVISIBLE_INDEXES - 1057)) | (1 << (PlSqlParser.NO_USE_MERGE - 1057)) | (1 << (PlSqlParser.NO_USE_NL - 1057)) | (1 << (PlSqlParser.NO_USE_VECTOR_AGGREGATION - 1057)) | (1 << (PlSqlParser.NOVALIDATE - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM_DIMS - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM_FACT - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM - 1057)))) !== 0) || ((((_la - 1089)) & ~0x1f) == 0 && ((1 << (_la - 1089)) & ((1 << (PlSqlParser.NO_XDB_FASTPATH_INSERT - 1089)) | (1 << (PlSqlParser.NO_XML_DML_REWRITE - 1089)) | (1 << (PlSqlParser.NO_XMLINDEX_REWRITE_IN_SELECT - 1089)) | (1 << (PlSqlParser.NO_XMLINDEX_REWRITE - 1089)) | (1 << (PlSqlParser.NO_XML_QUERY_REWRITE - 1089)) | (1 << (PlSqlParser.NO_ZONEMAP - 1089)) | (1 << (PlSqlParser.NTH_VALUE - 1089)) | (1 << (PlSqlParser.NULLIF - 1089)) | (1 << (PlSqlParser.NULLS - 1089)) | (1 << (PlSqlParser.NUMBER - 1089)) | (1 << (PlSqlParser.NUMERIC - 1089)) | (1 << (PlSqlParser.NUM_INDEX_KEYS - 1089)) | (1 << (PlSqlParser.NUMTODSINTERVAL - 1089)) | (1 << (PlSqlParser.NUMTOYMINTERVAL - 1089)) | (1 << (PlSqlParser.NVARCHAR2 - 1089)) | (1 << (PlSqlParser.NVL2 - 1089)) | (1 << (PlSqlParser.OBJECT2XML - 1089)) | (1 << (PlSqlParser.OBJECT - 1089)) | (1 << (PlSqlParser.OBJ_ID - 1089)) | (1 << (PlSqlParser.OBJNO - 1089)) | (1 << (PlSqlParser.OBJNO_REUSE - 1089)) | (1 << (PlSqlParser.OCCURENCES - 1089)) | (1 << (PlSqlParser.OFFLINE - 1089)) | (1 << (PlSqlParser.OFF - 1089)) | (1 << (PlSqlParser.OFFSET - 1089)) | (1 << (PlSqlParser.OIDINDEX - 1089)) | (1 << (PlSqlParser.OID - 1089)) | (1 << (PlSqlParser.OLAP - 1089)) | (1 << (PlSqlParser.OLD - 1089)) | (1 << (PlSqlParser.OLD_PUSH_PRED - 1089)))) !== 0) || ((((_la - 1121)) & ~0x1f) == 0 && ((1 << (_la - 1121)) & ((1 << (PlSqlParser.OLS - 1121)) | (1 << (PlSqlParser.OLTP - 1121)) | (1 << (PlSqlParser.OMIT - 1121)) | (1 << (PlSqlParser.ONE - 1121)) | (1 << (PlSqlParser.ONLINE - 1121)) | (1 << (PlSqlParser.ONLY - 1121)) | (1 << (PlSqlParser.OPAQUE - 1121)) | (1 << (PlSqlParser.OPAQUE_TRANSFORM - 1121)) | (1 << (PlSqlParser.OPAQUE_XCANONICAL - 1121)) | (1 << (PlSqlParser.OPCODE - 1121)) | (1 << (PlSqlParser.OPEN - 1121)) | (1 << (PlSqlParser.OPERATIONS - 1121)) | (1 << (PlSqlParser.OPERATOR - 1121)) | (1 << (PlSqlParser.OPT_ESTIMATE - 1121)) | (1 << (PlSqlParser.OPTIMAL - 1121)) | (1 << (PlSqlParser.OPTIMIZE - 1121)) | (1 << (PlSqlParser.OPTIMIZER_FEATURES_ENABLE - 1121)) | (1 << (PlSqlParser.OPTIMIZER_GOAL - 1121)) | (1 << (PlSqlParser.OPT_PARAM - 1121)) | (1 << (PlSqlParser.ORA_BRANCH - 1121)) | (1 << (PlSqlParser.ORA_CHECK_ACL - 1121)) | (1 << (PlSqlParser.ORA_CHECK_PRIVILEGE - 1121)) | (1 << (PlSqlParser.ORA_CLUSTERING - 1121)) | (1 << (PlSqlParser.ORADATA - 1121)) | (1 << (PlSqlParser.ORADEBUG - 1121)) | (1 << (PlSqlParser.ORA_DST_AFFECTED - 1121)) | (1 << (PlSqlParser.ORA_DST_CONVERT - 1121)) | (1 << (PlSqlParser.ORA_DST_ERROR - 1121)) | (1 << (PlSqlParser.ORA_GET_ACLIDS - 1121)))) !== 0) || ((((_la - 1153)) & ~0x1f) == 0 && ((1 << (_la - 1153)) & ((1 << (PlSqlParser.ORA_GET_PRIVILEGES - 1153)) | (1 << (PlSqlParser.ORA_HASH - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_USERID - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_USER - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_XS_USER_GUID - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_XS_USER - 1153)) | (1 << (PlSqlParser.ORA_RAWCOMPARE - 1153)) | (1 << (PlSqlParser.ORA_RAWCONCAT - 1153)) | (1 << (PlSqlParser.ORA_ROWSCN - 1153)) | (1 << (PlSqlParser.ORA_ROWSCN_RAW - 1153)) | (1 << (PlSqlParser.ORA_ROWVERSION - 1153)) | (1 << (PlSqlParser.ORA_TABVERSION - 1153)) | (1 << (PlSqlParser.ORA_WRITE_TIME - 1153)) | (1 << (PlSqlParser.ORDERED - 1153)) | (1 << (PlSqlParser.ORDERED_PREDICATES - 1153)) | (1 << (PlSqlParser.ORDINALITY - 1153)) | (1 << (PlSqlParser.OR_EXPAND - 1153)) | (1 << (PlSqlParser.ORGANIZATION - 1153)) | (1 << (PlSqlParser.OR_PREDICATES - 1153)) | (1 << (PlSqlParser.OSERROR - 1153)) | (1 << (PlSqlParser.OTHER - 1153)) | (1 << (PlSqlParser.OUTER_JOIN_TO_ANTI - 1153)) | (1 << (PlSqlParser.OUTER_JOIN_TO_INNER - 1153)) | (1 << (PlSqlParser.OUTER - 1153)) | (1 << (PlSqlParser.OUTLINE_LEAF - 1153)) | (1 << (PlSqlParser.OUTLINE - 1153)) | (1 << (PlSqlParser.OUT_OF_LINE - 1153)) | (1 << (PlSqlParser.OUT - 1153)) | (1 << (PlSqlParser.OVERFLOW_NOMOVE - 1153)) | (1 << (PlSqlParser.OVERFLOW - 1153)))) !== 0) || ((((_la - 1185)) & ~0x1f) == 0 && ((1 << (_la - 1185)) & ((1 << (PlSqlParser.OVERLAPS - 1185)) | (1 << (PlSqlParser.OVER - 1185)) | (1 << (PlSqlParser.OVERRIDING - 1185)) | (1 << (PlSqlParser.OWNER - 1185)) | (1 << (PlSqlParser.OWNERSHIP - 1185)) | (1 << (PlSqlParser.OWN - 1185)) | (1 << (PlSqlParser.PACKAGE - 1185)) | (1 << (PlSqlParser.PACKAGES - 1185)) | (1 << (PlSqlParser.PARALLEL_ENABLE - 1185)) | (1 << (PlSqlParser.PARALLEL_INDEX - 1185)) | (1 << (PlSqlParser.PARALLEL - 1185)) | (1 << (PlSqlParser.PARAMETERS - 1185)) | (1 << (PlSqlParser.PARAM - 1185)) | (1 << (PlSqlParser.PARENT - 1185)) | (1 << (PlSqlParser.PARITY - 1185)) | (1 << (PlSqlParser.PARTIAL_JOIN - 1185)) | (1 << (PlSqlParser.PARTIALLY - 1185)) | (1 << (PlSqlParser.PARTIAL - 1185)) | (1 << (PlSqlParser.PARTIAL_ROLLUP_PUSHDOWN - 1185)) | (1 << (PlSqlParser.PARTITION_HASH - 1185)) | (1 << (PlSqlParser.PARTITION_LIST - 1185)) | (1 << (PlSqlParser.PARTITION - 1185)) | (1 << (PlSqlParser.PARTITION_RANGE - 1185)) | (1 << (PlSqlParser.PARTITIONS - 1185)) | (1 << (PlSqlParser.PARTNUMINST - 1185)) | (1 << (PlSqlParser.PASSING - 1185)) | (1 << (PlSqlParser.PASSWORD_GRACE_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD_LIFE_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD_LOCK_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD - 1185)) | (1 << (PlSqlParser.PASSWORD_REUSE_MAX - 1185)))) !== 0) || ((((_la - 1217)) & ~0x1f) == 0 && ((1 << (_la - 1217)) & ((1 << (PlSqlParser.PASSWORD_REUSE_TIME - 1217)) | (1 << (PlSqlParser.PASSWORD_VERIFY_FUNCTION - 1217)) | (1 << (PlSqlParser.PAST - 1217)) | (1 << (PlSqlParser.PATCH - 1217)) | (1 << (PlSqlParser.PATH - 1217)) | (1 << (PlSqlParser.PATH_PREFIX - 1217)) | (1 << (PlSqlParser.PATHS - 1217)) | (1 << (PlSqlParser.PATTERN - 1217)) | (1 << (PlSqlParser.PBL_HS_BEGIN - 1217)) | (1 << (PlSqlParser.PBL_HS_END - 1217)) | (1 << (PlSqlParser.PCTINCREASE - 1217)) | (1 << (PlSqlParser.PCTTHRESHOLD - 1217)) | (1 << (PlSqlParser.PCTUSED - 1217)) | (1 << (PlSqlParser.PCTVERSION - 1217)) | (1 << (PlSqlParser.PENDING - 1217)) | (1 << (PlSqlParser.PERCENT_KEYWORD - 1217)) | (1 << (PlSqlParser.PERCENT_RANKM - 1217)) | (1 << (PlSqlParser.PERFORMANCE - 1217)) | (1 << (PlSqlParser.PERIOD_KEYWORD - 1217)) | (1 << (PlSqlParser.PERMANENT - 1217)) | (1 << (PlSqlParser.PERMISSION - 1217)) | (1 << (PlSqlParser.PERMUTE - 1217)) | (1 << (PlSqlParser.PER - 1217)) | (1 << (PlSqlParser.PFILE - 1217)) | (1 << (PlSqlParser.PHYSICAL - 1217)))) !== 0) || ((((_la - 1249)) & ~0x1f) == 0 && ((1 << (_la - 1249)) & ((1 << (PlSqlParser.PIKEY - 1249)) | (1 << (PlSqlParser.PIPELINED - 1249)) | (1 << (PlSqlParser.PIV_GB - 1249)) | (1 << (PlSqlParser.PIVOT - 1249)) | (1 << (PlSqlParser.PIV_SSF - 1249)) | (1 << (PlSqlParser.PLACE_DISTINCT - 1249)) | (1 << (PlSqlParser.PLACE_GROUP_BY - 1249)) | (1 << (PlSqlParser.PLAN - 1249)) | (1 << (PlSqlParser.PLSCOPE_SETTINGS - 1249)) | (1 << (PlSqlParser.PLS_INTEGER - 1249)) | (1 << (PlSqlParser.PLSQL_CCFLAGS - 1249)) | (1 << (PlSqlParser.PLSQL_CODE_TYPE - 1249)) | (1 << (PlSqlParser.PLSQL_DEBUG - 1249)) | (1 << (PlSqlParser.PLSQL_OPTIMIZE_LEVEL - 1249)) | (1 << (PlSqlParser.PLSQL_WARNINGS - 1249)) | (1 << (PlSqlParser.PLUGGABLE - 1249)) | (1 << (PlSqlParser.POINT - 1249)) | (1 << (PlSqlParser.POLICY - 1249)) | (1 << (PlSqlParser.POOL_16K - 1249)) | (1 << (PlSqlParser.POOL_2K - 1249)) | (1 << (PlSqlParser.POOL_32K - 1249)) | (1 << (PlSqlParser.POOL_4K - 1249)) | (1 << (PlSqlParser.POOL_8K - 1249)) | (1 << (PlSqlParser.POSITIVEN - 1249)) | (1 << (PlSqlParser.POSITIVE - 1249)) | (1 << (PlSqlParser.POST_TRANSACTION - 1249)) | (1 << (PlSqlParser.POWERMULTISET_BY_CARDINALITY - 1249)) | (1 << (PlSqlParser.POWERMULTISET - 1249)) | (1 << (PlSqlParser.POWER - 1249)) | (1 << (PlSqlParser.PQ_CONCURRENT_UNION - 1249)) | (1 << (PlSqlParser.PQ_DISTRIBUTE - 1249)))) !== 0) || ((((_la - 1281)) & ~0x1f) == 0 && ((1 << (_la - 1281)) & ((1 << (PlSqlParser.PQ_DISTRIBUTE_WINDOW - 1281)) | (1 << (PlSqlParser.PQ_FILTER - 1281)) | (1 << (PlSqlParser.PQ_MAP - 1281)) | (1 << (PlSqlParser.PQ_NOMAP - 1281)) | (1 << (PlSqlParser.PQ_REPLICATE - 1281)) | (1 << (PlSqlParser.PQ_SKEW - 1281)) | (1 << (PlSqlParser.PRAGMA - 1281)) | (1 << (PlSqlParser.PREBUILT - 1281)) | (1 << (PlSqlParser.PRECEDES - 1281)) | (1 << (PlSqlParser.PRECEDING - 1281)) | (1 << (PlSqlParser.PRECISION - 1281)) | (1 << (PlSqlParser.PRECOMPUTE_SUBQUERY - 1281)) | (1 << (PlSqlParser.PREDICATE_REORDERS - 1281)) | (1 << (PlSqlParser.PRELOAD - 1281)) | (1 << (PlSqlParser.PREPARE - 1281)) | (1 << (PlSqlParser.PRESENTNNV - 1281)) | (1 << (PlSqlParser.PRESENT - 1281)) | (1 << (PlSqlParser.PRESENTV - 1281)) | (1 << (PlSqlParser.PRESERVE_OID - 1281)) | (1 << (PlSqlParser.PRESERVE - 1281)) | (1 << (PlSqlParser.PRETTY - 1281)) | (1 << (PlSqlParser.PREVIOUS - 1281)) | (1 << (PlSqlParser.PREV - 1281)) | (1 << (PlSqlParser.PRIMARY - 1281)) | (1 << (PlSqlParser.PRINTBLOBTOCLOB - 1281)) | (1 << (PlSqlParser.PRIORITY - 1281)) | (1 << (PlSqlParser.PRIVATE - 1281)) | (1 << (PlSqlParser.PRIVATE_SGA - 1281)) | (1 << (PlSqlParser.PRIVILEGED - 1281)) | (1 << (PlSqlParser.PRIVILEGE - 1281)) | (1 << (PlSqlParser.PRIVILEGES - 1281)))) !== 0) || ((((_la - 1313)) & ~0x1f) == 0 && ((1 << (_la - 1313)) & ((1 << (PlSqlParser.PROCEDURAL - 1313)) | (1 << (PlSqlParser.PROCEDURE - 1313)) | (1 << (PlSqlParser.PROCESS - 1313)) | (1 << (PlSqlParser.PROFILE - 1313)) | (1 << (PlSqlParser.PROGRAM - 1313)) | (1 << (PlSqlParser.PROJECT - 1313)) | (1 << (PlSqlParser.PROPAGATE - 1313)) | (1 << (PlSqlParser.PROTECTED - 1313)) | (1 << (PlSqlParser.PROTECTION - 1313)) | (1 << (PlSqlParser.PROXY - 1313)) | (1 << (PlSqlParser.PRUNING - 1313)) | (1 << (PlSqlParser.PULL_PRED - 1313)) | (1 << (PlSqlParser.PURGE - 1313)) | (1 << (PlSqlParser.PUSH_PRED - 1313)) | (1 << (PlSqlParser.PUSH_SUBQ - 1313)) | (1 << (PlSqlParser.PX_FAULT_TOLERANCE - 1313)) | (1 << (PlSqlParser.PX_GRANULE - 1313)) | (1 << (PlSqlParser.PX_JOIN_FILTER - 1313)) | (1 << (PlSqlParser.QB_NAME - 1313)) | (1 << (PlSqlParser.QUERY_BLOCK - 1313)) | (1 << (PlSqlParser.QUERY - 1313)) | (1 << (PlSqlParser.QUEUE_CURR - 1313)) | (1 << (PlSqlParser.QUEUE - 1313)) | (1 << (PlSqlParser.QUEUE_ROWP - 1313)) | (1 << (PlSqlParser.QUIESCE - 1313)) | (1 << (PlSqlParser.QUORUM - 1313)) | (1 << (PlSqlParser.QUOTA - 1313)) | (1 << (PlSqlParser.RAISE - 1313)) | (1 << (PlSqlParser.RANDOM_LOCAL - 1313)) | (1 << (PlSqlParser.RANDOM - 1313)) | (1 << (PlSqlParser.RANGE - 1313)))) !== 0) || ((((_la - 1345)) & ~0x1f) == 0 && ((1 << (_la - 1345)) & ((1 << (PlSqlParser.RANKM - 1345)) | (1 << (PlSqlParser.RAPIDLY - 1345)) | (1 << (PlSqlParser.RAW - 1345)) | (1 << (PlSqlParser.RAWTOHEX - 1345)) | (1 << (PlSqlParser.RAWTONHEX - 1345)) | (1 << (PlSqlParser.RBA - 1345)) | (1 << (PlSqlParser.RBO_OUTLINE - 1345)) | (1 << (PlSqlParser.RDBA - 1345)) | (1 << (PlSqlParser.READ - 1345)) | (1 << (PlSqlParser.READS - 1345)) | (1 << (PlSqlParser.REALM - 1345)) | (1 << (PlSqlParser.REAL - 1345)) | (1 << (PlSqlParser.REBALANCE - 1345)) | (1 << (PlSqlParser.REBUILD - 1345)) | (1 << (PlSqlParser.RECORD - 1345)) | (1 << (PlSqlParser.RECORDS_PER_BLOCK - 1345)) | (1 << (PlSqlParser.RECOVERABLE - 1345)) | (1 << (PlSqlParser.RECOVER - 1345)) | (1 << (PlSqlParser.RECOVERY - 1345)) | (1 << (PlSqlParser.RECYCLEBIN - 1345)) | (1 << (PlSqlParser.RECYCLE - 1345)) | (1 << (PlSqlParser.REDACTION - 1345)) | (1 << (PlSqlParser.REDEFINE - 1345)) | (1 << (PlSqlParser.REDO - 1345)) | (1 << (PlSqlParser.REDUCED - 1345)) | (1 << (PlSqlParser.REDUNDANCY - 1345)) | (1 << (PlSqlParser.REF_CASCADE_CURSOR - 1345)) | (1 << (PlSqlParser.REFERENCED - 1345)) | (1 << (PlSqlParser.REFERENCE - 1345)) | (1 << (PlSqlParser.REFERENCES - 1345)) | (1 << (PlSqlParser.REFERENCING - 1345)) | (1 << (PlSqlParser.REF - 1345)))) !== 0) || ((((_la - 1377)) & ~0x1f) == 0 && ((1 << (_la - 1377)) & ((1 << (PlSqlParser.REFRESH - 1377)) | (1 << (PlSqlParser.REFTOHEX - 1377)) | (1 << (PlSqlParser.REGEXP_COUNT - 1377)) | (1 << (PlSqlParser.REGEXP_INSTR - 1377)) | (1 << (PlSqlParser.REGEXP_LIKE - 1377)) | (1 << (PlSqlParser.REGEXP_REPLACE - 1377)) | (1 << (PlSqlParser.REGEXP_SUBSTR - 1377)) | (1 << (PlSqlParser.REGISTER - 1377)) | (1 << (PlSqlParser.REGR_AVGX - 1377)) | (1 << (PlSqlParser.REGR_AVGY - 1377)) | (1 << (PlSqlParser.REGR_COUNT - 1377)) | (1 << (PlSqlParser.REGR_INTERCEPT - 1377)) | (1 << (PlSqlParser.REGR_R2 - 1377)) | (1 << (PlSqlParser.REGR_SLOPE - 1377)) | (1 << (PlSqlParser.REGR_SXX - 1377)) | (1 << (PlSqlParser.REGR_SXY - 1377)) | (1 << (PlSqlParser.REGR_SYY - 1377)) | (1 << (PlSqlParser.REGULAR - 1377)) | (1 << (PlSqlParser.REJECT - 1377)) | (1 << (PlSqlParser.REKEY - 1377)) | (1 << (PlSqlParser.RELATIONAL - 1377)) | (1 << (PlSqlParser.RELOCATE - 1377)) | (1 << (PlSqlParser.RELY - 1377)) | (1 << (PlSqlParser.REMAINDER - 1377)) | (1 << (PlSqlParser.REMOTE_MAPPED - 1377)) | (1 << (PlSqlParser.REMOVE - 1377)) | (1 << (PlSqlParser.RENAME - 1377)) | (1 << (PlSqlParser.REPAIR - 1377)) | (1 << (PlSqlParser.REPEAT - 1377)) | (1 << (PlSqlParser.REPLACE - 1377)) | (1 << (PlSqlParser.REPLICATION - 1377)))) !== 0) || ((((_la - 1409)) & ~0x1f) == 0 && ((1 << (_la - 1409)) & ((1 << (PlSqlParser.REQUIRED - 1409)) | (1 << (PlSqlParser.RESETLOGS - 1409)) | (1 << (PlSqlParser.RESET - 1409)) | (1 << (PlSqlParser.RESIZE - 1409)) | (1 << (PlSqlParser.RESOLVE - 1409)) | (1 << (PlSqlParser.RESOLVER - 1409)) | (1 << (PlSqlParser.RESPECT - 1409)) | (1 << (PlSqlParser.RESTART - 1409)) | (1 << (PlSqlParser.RESTORE_AS_INTERVALS - 1409)) | (1 << (PlSqlParser.RESTORE - 1409)) | (1 << (PlSqlParser.RESTRICT_ALL_REF_CONS - 1409)) | (1 << (PlSqlParser.RESTRICTED - 1409)) | (1 << (PlSqlParser.RESTRICT_REFERENCES - 1409)) | (1 << (PlSqlParser.RESTRICT - 1409)) | (1 << (PlSqlParser.RESULT_CACHE - 1409)) | (1 << (PlSqlParser.RESULT - 1409)) | (1 << (PlSqlParser.RESUMABLE - 1409)) | (1 << (PlSqlParser.RESUME - 1409)) | (1 << (PlSqlParser.RETENTION - 1409)) | (1 << (PlSqlParser.RETRY_ON_ROW_CHANGE - 1409)) | (1 << (PlSqlParser.RETURNING - 1409)) | (1 << (PlSqlParser.RETURN - 1409)) | (1 << (PlSqlParser.REUSE - 1409)) | (1 << (PlSqlParser.REVERSE - 1409)) | (1 << (PlSqlParser.REWRITE_OR_ERROR - 1409)) | (1 << (PlSqlParser.REWRITE - 1409)) | (1 << (PlSqlParser.RIGHT - 1409)) | (1 << (PlSqlParser.ROLE - 1409)) | (1 << (PlSqlParser.ROLESET - 1409)) | (1 << (PlSqlParser.ROLES - 1409)))) !== 0) || ((((_la - 1441)) & ~0x1f) == 0 && ((1 << (_la - 1441)) & ((1 << (PlSqlParser.ROLLBACK - 1441)) | (1 << (PlSqlParser.ROLLING - 1441)) | (1 << (PlSqlParser.ROLLUP - 1441)) | (1 << (PlSqlParser.ROWDEPENDENCIES - 1441)) | (1 << (PlSqlParser.ROWID_MAPPING_TABLE - 1441)) | (1 << (PlSqlParser.ROWID - 1441)) | (1 << (PlSqlParser.ROWIDTOCHAR - 1441)) | (1 << (PlSqlParser.ROWIDTONCHAR - 1441)) | (1 << (PlSqlParser.ROW_LENGTH - 1441)) | (1 << (PlSqlParser.ROWNUM - 1441)) | (1 << (PlSqlParser.ROW - 1441)) | (1 << (PlSqlParser.ROWS - 1441)) | (1 << (PlSqlParser.RPAD - 1441)) | (1 << (PlSqlParser.RTRIM - 1441)) | (1 << (PlSqlParser.RULE - 1441)) | (1 << (PlSqlParser.RULES - 1441)) | (1 << (PlSqlParser.RUNNING - 1441)) | (1 << (PlSqlParser.SALT - 1441)) | (1 << (PlSqlParser.SAMPLE - 1441)) | (1 << (PlSqlParser.SAVE_AS_INTERVALS - 1441)) | (1 << (PlSqlParser.SAVEPOINT - 1441)) | (1 << (PlSqlParser.SAVE - 1441)) | (1 << (PlSqlParser.SB4 - 1441)) | (1 << (PlSqlParser.SCALE_ROWS - 1441)) | (1 << (PlSqlParser.SCALE - 1441)) | (1 << (PlSqlParser.SCAN_INSTANCES - 1441)) | (1 << (PlSqlParser.SCAN - 1441)) | (1 << (PlSqlParser.SCHEDULER - 1441)) | (1 << (PlSqlParser.SCHEMACHECK - 1441)) | (1 << (PlSqlParser.SCHEMA - 1441)) | (1 << (PlSqlParser.SCN_ASCENDING - 1441)) | (1 << (PlSqlParser.SCN - 1441)))) !== 0) || ((((_la - 1473)) & ~0x1f) == 0 && ((1 << (_la - 1473)) & ((1 << (PlSqlParser.SCOPE - 1473)) | (1 << (PlSqlParser.SCRUB - 1473)) | (1 << (PlSqlParser.SD_ALL - 1473)) | (1 << (PlSqlParser.SD_INHIBIT - 1473)) | (1 << (PlSqlParser.SDO_GEOM_MBR - 1473)) | (1 << (PlSqlParser.SD_SHOW - 1473)) | (1 << (PlSqlParser.SEARCH - 1473)) | (1 << (PlSqlParser.SECOND - 1473)) | (1 << (PlSqlParser.SECRET - 1473)) | (1 << (PlSqlParser.SECUREFILE_DBA - 1473)) | (1 << (PlSqlParser.SECUREFILE - 1473)) | (1 << (PlSqlParser.SECURITY - 1473)) | (1 << (PlSqlParser.SEED - 1473)) | (1 << (PlSqlParser.SEG_BLOCK - 1473)) | (1 << (PlSqlParser.SEG_FILE - 1473)) | (1 << (PlSqlParser.SEGMENT - 1473)) | (1 << (PlSqlParser.SELECTIVITY - 1473)) | (1 << (PlSqlParser.SELF - 1473)) | (1 << (PlSqlParser.SEMIJOIN_DRIVER - 1473)) | (1 << (PlSqlParser.SEMIJOIN - 1473)) | (1 << (PlSqlParser.SEMI_TO_INNER - 1473)) | (1 << (PlSqlParser.SEQUENCED - 1473)) | (1 << (PlSqlParser.SEQUENCE - 1473)) | (1 << (PlSqlParser.SEQUENTIAL - 1473)) | (1 << (PlSqlParser.SERIALIZABLE - 1473)) | (1 << (PlSqlParser.SERIALLY_REUSABLE - 1473)) | (1 << (PlSqlParser.SERIAL - 1473)) | (1 << (PlSqlParser.SERVERERROR - 1473)) | (1 << (PlSqlParser.SERVICE_NAME_CONVERT - 1473)) | (1 << (PlSqlParser.SERVICES - 1473)))) !== 0) || ((((_la - 1505)) & ~0x1f) == 0 && ((1 << (_la - 1505)) & ((1 << (PlSqlParser.SESSION_CACHED_CURSORS - 1505)) | (1 << (PlSqlParser.SESSION - 1505)) | (1 << (PlSqlParser.SESSIONS_PER_USER - 1505)) | (1 << (PlSqlParser.SESSIONTIMEZONE - 1505)) | (1 << (PlSqlParser.SESSIONTZNAME - 1505)) | (1 << (PlSqlParser.SET - 1505)) | (1 << (PlSqlParser.SETS - 1505)) | (1 << (PlSqlParser.SETTINGS - 1505)) | (1 << (PlSqlParser.SET_TO_JOIN - 1505)) | (1 << (PlSqlParser.SEVERE - 1505)) | (1 << (PlSqlParser.SHARED_POOL - 1505)) | (1 << (PlSqlParser.SHARED - 1505)) | (1 << (PlSqlParser.SHARING - 1505)) | (1 << (PlSqlParser.SHELFLIFE - 1505)) | (1 << (PlSqlParser.SHOW - 1505)) | (1 << (PlSqlParser.SHRINK - 1505)) | (1 << (PlSqlParser.SHUTDOWN - 1505)) | (1 << (PlSqlParser.SIBLINGS - 1505)) | (1 << (PlSqlParser.SID - 1505)) | (1 << (PlSqlParser.SIGNAL_COMPONENT - 1505)) | (1 << (PlSqlParser.SIGNAL_FUNCTION - 1505)) | (1 << (PlSqlParser.SIGN - 1505)) | (1 << (PlSqlParser.SIGNTYPE - 1505)) | (1 << (PlSqlParser.SIMPLE_INTEGER - 1505)) | (1 << (PlSqlParser.SIMPLE - 1505)) | (1 << (PlSqlParser.SINGLE - 1505)) | (1 << (PlSqlParser.SINGLETASK - 1505)) | (1 << (PlSqlParser.SINH - 1505)) | (1 << (PlSqlParser.SIN - 1505)) | (1 << (PlSqlParser.SKIP_EXT_OPTIMIZER - 1505)))) !== 0) || ((((_la - 1537)) & ~0x1f) == 0 && ((1 << (_la - 1537)) & ((1 << (PlSqlParser.SKIP_ - 1537)) | (1 << (PlSqlParser.SKIP_UNQ_UNUSABLE_IDX - 1537)) | (1 << (PlSqlParser.SKIP_UNUSABLE_INDEXES - 1537)) | (1 << (PlSqlParser.SMALLFILE - 1537)) | (1 << (PlSqlParser.SMALLINT - 1537)) | (1 << (PlSqlParser.SNAPSHOT - 1537)) | (1 << (PlSqlParser.SOME - 1537)) | (1 << (PlSqlParser.SORT - 1537)) | (1 << (PlSqlParser.SOUNDEX - 1537)) | (1 << (PlSqlParser.SOURCE_FILE_DIRECTORY - 1537)) | (1 << (PlSqlParser.SOURCE_FILE_NAME_CONVERT - 1537)) | (1 << (PlSqlParser.SOURCE - 1537)) | (1 << (PlSqlParser.SPACE_KEYWORD - 1537)) | (1 << (PlSqlParser.SPECIFICATION - 1537)) | (1 << (PlSqlParser.SPFILE - 1537)) | (1 << (PlSqlParser.SPLIT - 1537)) | (1 << (PlSqlParser.SPREADSHEET - 1537)) | (1 << (PlSqlParser.SQLDATA - 1537)) | (1 << (PlSqlParser.SQLERROR - 1537)) | (1 << (PlSqlParser.SQLLDR - 1537)) | (1 << (PlSqlParser.SQL - 1537)) | (1 << (PlSqlParser.SQL_TRACE - 1537)) | (1 << (PlSqlParser.SQL_TRANSLATION_PROFILE - 1537)) | (1 << (PlSqlParser.SQRT - 1537)) | (1 << (PlSqlParser.STALE - 1537)) | (1 << (PlSqlParser.STANDALONE - 1537)) | (1 << (PlSqlParser.STANDARD_HASH - 1537)) | (1 << (PlSqlParser.STANDBY_MAX_DATA_DELAY - 1537)) | (1 << (PlSqlParser.STANDBYS - 1537)) | (1 << (PlSqlParser.STANDBY - 1537)) | (1 << (PlSqlParser.STAR - 1537)) | (1 << (PlSqlParser.STAR_TRANSFORMATION - 1537)))) !== 0) || ((((_la - 1570)) & ~0x1f) == 0 && ((1 << (_la - 1570)) & ((1 << (PlSqlParser.STARTUP - 1570)) | (1 << (PlSqlParser.STATEMENT_ID - 1570)) | (1 << (PlSqlParser.STATEMENT_QUEUING - 1570)) | (1 << (PlSqlParser.STATEMENTS - 1570)) | (1 << (PlSqlParser.STATEMENT - 1570)) | (1 << (PlSqlParser.STATE - 1570)) | (1 << (PlSqlParser.STATIC - 1570)) | (1 << (PlSqlParser.STATISTICS - 1570)) | (1 << (PlSqlParser.STATS_BINOMIAL_TEST - 1570)) | (1 << (PlSqlParser.STATS_CROSSTAB - 1570)) | (1 << (PlSqlParser.STATS_F_TEST - 1570)) | (1 << (PlSqlParser.STATS_KS_TEST - 1570)) | (1 << (PlSqlParser.STATS_MODE - 1570)) | (1 << (PlSqlParser.STATS_MW_TEST - 1570)) | (1 << (PlSqlParser.STATS_ONE_WAY_ANOVA - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_INDEP - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_INDEPU - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_ONE - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_PAIRED - 1570)) | (1 << (PlSqlParser.STATS_WSR_TEST - 1570)) | (1 << (PlSqlParser.STDDEV_POP - 1570)) | (1 << (PlSqlParser.STDDEV_SAMP - 1570)) | (1 << (PlSqlParser.STOP - 1570)) | (1 << (PlSqlParser.STORAGE - 1570)) | (1 << (PlSqlParser.STORE - 1570)) | (1 << (PlSqlParser.STREAMS - 1570)) | (1 << (PlSqlParser.STREAM - 1570)) | (1 << (PlSqlParser.STRICT - 1570)) | (1 << (PlSqlParser.STRING - 1570)) | (1 << (PlSqlParser.STRIPE_COLUMNS - 1570)) | (1 << (PlSqlParser.STRIPE_WIDTH - 1570)) | (1 << (PlSqlParser.STRIP - 1570)))) !== 0) || ((((_la - 1602)) & ~0x1f) == 0 && ((1 << (_la - 1602)) & ((1 << (PlSqlParser.STRUCTURE - 1602)) | (1 << (PlSqlParser.SUBMULTISET - 1602)) | (1 << (PlSqlParser.SUBPARTITION_REL - 1602)) | (1 << (PlSqlParser.SUBPARTITIONS - 1602)) | (1 << (PlSqlParser.SUBPARTITION - 1602)) | (1 << (PlSqlParser.SUBQUERIES - 1602)) | (1 << (PlSqlParser.SUBQUERY_PRUNING - 1602)) | (1 << (PlSqlParser.SUBSCRIBE - 1602)) | (1 << (PlSqlParser.SUBSET - 1602)) | (1 << (PlSqlParser.SUBSTITUTABLE - 1602)) | (1 << (PlSqlParser.SUBSTR2 - 1602)) | (1 << (PlSqlParser.SUBSTR4 - 1602)) | (1 << (PlSqlParser.SUBSTRB - 1602)) | (1 << (PlSqlParser.SUBSTRC - 1602)) | (1 << (PlSqlParser.SUBTYPE - 1602)) | (1 << (PlSqlParser.SUCCESSFUL - 1602)) | (1 << (PlSqlParser.SUCCESS - 1602)) | (1 << (PlSqlParser.SUMMARY - 1602)) | (1 << (PlSqlParser.SUPPLEMENTAL - 1602)) | (1 << (PlSqlParser.SUSPEND - 1602)) | (1 << (PlSqlParser.SWAP_JOIN_INPUTS - 1602)) | (1 << (PlSqlParser.SWITCHOVER - 1602)) | (1 << (PlSqlParser.SWITCH - 1602)) | (1 << (PlSqlParser.SYNCHRONOUS - 1602)) | (1 << (PlSqlParser.SYNC - 1602)) | (1 << (PlSqlParser.SYSASM - 1602)) | (1 << (PlSqlParser.SYS_AUDIT - 1602)) | (1 << (PlSqlParser.SYSAUX - 1602)) | (1 << (PlSqlParser.SYSBACKUP - 1602)) | (1 << (PlSqlParser.SYS_CHECKACL - 1602)) | (1 << (PlSqlParser.SYS_CHECK_PRIVILEGE - 1602)))) !== 0) || ((((_la - 1634)) & ~0x1f) == 0 && ((1 << (_la - 1634)) & ((1 << (PlSqlParser.SYS_CONNECT_BY_PATH - 1634)) | (1 << (PlSqlParser.SYS_CONTEXT - 1634)) | (1 << (PlSqlParser.SYSDATE - 1634)) | (1 << (PlSqlParser.SYSDBA - 1634)) | (1 << (PlSqlParser.SYS_DBURIGEN - 1634)) | (1 << (PlSqlParser.SYSDG - 1634)) | (1 << (PlSqlParser.SYS_DL_CURSOR - 1634)) | (1 << (PlSqlParser.SYS_DM_RXFORM_CHR - 1634)) | (1 << (PlSqlParser.SYS_DM_RXFORM_NUM - 1634)) | (1 << (PlSqlParser.SYS_DOM_COMPARE - 1634)) | (1 << (PlSqlParser.SYS_DST_PRIM2SEC - 1634)) | (1 << (PlSqlParser.SYS_DST_SEC2PRIM - 1634)) | (1 << (PlSqlParser.SYS_ET_BFILE_TO_RAW - 1634)) | (1 << (PlSqlParser.SYS_ET_BLOB_TO_IMAGE - 1634)) | (1 << (PlSqlParser.SYS_ET_IMAGE_TO_BLOB - 1634)) | (1 << (PlSqlParser.SYS_ET_RAW_TO_BFILE - 1634)) | (1 << (PlSqlParser.SYS_EXTPDTXT - 1634)) | (1 << (PlSqlParser.SYS_EXTRACT_UTC - 1634)) | (1 << (PlSqlParser.SYS_FBT_INSDEL - 1634)) | (1 << (PlSqlParser.SYS_FILTER_ACLS - 1634)) | (1 << (PlSqlParser.SYS_FNMATCHES - 1634)) | (1 << (PlSqlParser.SYS_FNREPLACE - 1634)) | (1 << (PlSqlParser.SYS_GET_ACLIDS - 1634)) | (1 << (PlSqlParser.SYS_GET_COL_ACLIDS - 1634)) | (1 << (PlSqlParser.SYS_GET_PRIVILEGES - 1634)) | (1 << (PlSqlParser.SYS_GETTOKENID - 1634)) | (1 << (PlSqlParser.SYS_GETXTIVAL - 1634)) | (1 << (PlSqlParser.SYS_GUID - 1634)) | (1 << (PlSqlParser.SYSGUID - 1634)) | (1 << (PlSqlParser.SYSKM - 1634)) | (1 << (PlSqlParser.SYS_MAKE_XMLNODEID - 1634)) | (1 << (PlSqlParser.SYS_MAKEXML - 1634)))) !== 0) || ((((_la - 1666)) & ~0x1f) == 0 && ((1 << (_la - 1666)) & ((1 << (PlSqlParser.SYS_MKXMLATTR - 1666)) | (1 << (PlSqlParser.SYS_MKXTI - 1666)) | (1 << (PlSqlParser.SYSOBJ - 1666)) | (1 << (PlSqlParser.SYS_OP_ADT2BIN - 1666)) | (1 << (PlSqlParser.SYS_OP_ADTCONS - 1666)) | (1 << (PlSqlParser.SYS_OP_ALSCRVAL - 1666)) | (1 << (PlSqlParser.SYS_OP_ATG - 1666)) | (1 << (PlSqlParser.SYS_OP_BIN2ADT - 1666)) | (1 << (PlSqlParser.SYS_OP_BITVEC - 1666)) | (1 << (PlSqlParser.SYS_OP_BL2R - 1666)) | (1 << (PlSqlParser.SYS_OP_BLOOM_FILTER_LIST - 1666)) | (1 << (PlSqlParser.SYS_OP_BLOOM_FILTER - 1666)) | (1 << (PlSqlParser.SYS_OP_C2C - 1666)) | (1 << (PlSqlParser.SYS_OP_CAST - 1666)) | (1 << (PlSqlParser.SYS_OP_CEG - 1666)) | (1 << (PlSqlParser.SYS_OP_CL2C - 1666)) | (1 << (PlSqlParser.SYS_OP_COMBINED_HASH - 1666)) | (1 << (PlSqlParser.SYS_OP_COMP - 1666)) | (1 << (PlSqlParser.SYS_OP_CONVERT - 1666)) | (1 << (PlSqlParser.SYS_OP_COUNTCHG - 1666)) | (1 << (PlSqlParser.SYS_OP_CSCONV - 1666)) | (1 << (PlSqlParser.SYS_OP_CSCONVTEST - 1666)) | (1 << (PlSqlParser.SYS_OP_CSR - 1666)) | (1 << (PlSqlParser.SYS_OP_CSX_PATCH - 1666)) | (1 << (PlSqlParser.SYS_OP_CYCLED_SEQ - 1666)) | (1 << (PlSqlParser.SYS_OP_DECOMP - 1666)) | (1 << (PlSqlParser.SYS_OP_DESCEND - 1666)) | (1 << (PlSqlParser.SYS_OP_DISTINCT - 1666)) | (1 << (PlSqlParser.SYS_OP_DRA - 1666)) | (1 << (PlSqlParser.SYS_OP_DUMP - 1666)) | (1 << (PlSqlParser.SYS_OP_DV_CHECK - 1666)) | (1 << (PlSqlParser.SYS_OP_ENFORCE_NOT_NULL - 1666)))) !== 0) || ((((_la - 1698)) & ~0x1f) == 0 && ((1 << (_la - 1698)) & ((1 << (PlSqlParser.SYSOPER - 1698)) | (1 << (PlSqlParser.SYS_OP_EXTRACT - 1698)) | (1 << (PlSqlParser.SYS_OP_GROUPING - 1698)) | (1 << (PlSqlParser.SYS_OP_GUID - 1698)) | (1 << (PlSqlParser.SYS_OP_HASH - 1698)) | (1 << (PlSqlParser.SYS_OP_IIX - 1698)) | (1 << (PlSqlParser.SYS_OP_ITR - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_CREATE - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_FILTER_LIST - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_FILTER - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_SUCCEEDED - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_USE - 1698)) | (1 << (PlSqlParser.SYS_OP_LBID - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2BLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2CLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2ID - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2NCLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2TYP - 1698)) | (1 << (PlSqlParser.SYS_OP_LSVI - 1698)) | (1 << (PlSqlParser.SYS_OP_LVL - 1698)) | (1 << (PlSqlParser.SYS_OP_MAKEOID - 1698)) | (1 << (PlSqlParser.SYS_OP_MAP_NONNULL - 1698)) | (1 << (PlSqlParser.SYS_OP_MSR - 1698)) | (1 << (PlSqlParser.SYS_OP_NICOMBINE - 1698)) | (1 << (PlSqlParser.SYS_OP_NIEXTRACT - 1698)) | (1 << (PlSqlParser.SYS_OP_NII - 1698)) | (1 << (PlSqlParser.SYS_OP_NIX - 1698)) | (1 << (PlSqlParser.SYS_OP_NOEXPAND - 1698)) | (1 << (PlSqlParser.SYS_OP_NTCIMG - 1698)) | (1 << (PlSqlParser.SYS_OP_NUMTORAW - 1698)) | (1 << (PlSqlParser.SYS_OP_OIDVALUE - 1698)) | (1 << (PlSqlParser.SYS_OP_OPNSIZE - 1698)))) !== 0) || ((((_la - 1730)) & ~0x1f) == 0 && ((1 << (_la - 1730)) & ((1 << (PlSqlParser.SYS_OP_PAR_1 - 1730)) | (1 << (PlSqlParser.SYS_OP_PARGID_1 - 1730)) | (1 << (PlSqlParser.SYS_OP_PARGID - 1730)) | (1 << (PlSqlParser.SYS_OP_PAR - 1730)) | (1 << (PlSqlParser.SYS_OP_PART_ID - 1730)) | (1 << (PlSqlParser.SYS_OP_PIVOT - 1730)) | (1 << (PlSqlParser.SYS_OP_R2O - 1730)) | (1 << (PlSqlParser.SYS_OP_RAWTONUM - 1730)) | (1 << (PlSqlParser.SYS_OP_RDTM - 1730)) | (1 << (PlSqlParser.SYS_OP_REF - 1730)) | (1 << (PlSqlParser.SYS_OP_RMTD - 1730)) | (1 << (PlSqlParser.SYS_OP_ROWIDTOOBJ - 1730)) | (1 << (PlSqlParser.SYS_OP_RPB - 1730)) | (1 << (PlSqlParser.SYS_OPTLOBPRBSC - 1730)) | (1 << (PlSqlParser.SYS_OP_TOSETID - 1730)) | (1 << (PlSqlParser.SYS_OP_TPR - 1730)) | (1 << (PlSqlParser.SYS_OP_TRTB - 1730)) | (1 << (PlSqlParser.SYS_OPTXICMP - 1730)) | (1 << (PlSqlParser.SYS_OPTXQCASTASNQ - 1730)) | (1 << (PlSqlParser.SYS_OP_UNDESCEND - 1730)) | (1 << (PlSqlParser.SYS_OP_VECAND - 1730)) | (1 << (PlSqlParser.SYS_OP_VECBIT - 1730)) | (1 << (PlSqlParser.SYS_OP_VECOR - 1730)) | (1 << (PlSqlParser.SYS_OP_VECXOR - 1730)) | (1 << (PlSqlParser.SYS_OP_VERSION - 1730)) | (1 << (PlSqlParser.SYS_OP_VREF - 1730)) | (1 << (PlSqlParser.SYS_OP_VVD - 1730)) | (1 << (PlSqlParser.SYS_OP_XMLCONS_FOR_CSX - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHATG - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHIDX - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHOP - 1730)) | (1 << (PlSqlParser.SYS_OP_XTXT2SQLT - 1730)))) !== 0) || ((((_la - 1762)) & ~0x1f) == 0 && ((1 << (_la - 1762)) & ((1 << (PlSqlParser.SYS_OP_ZONE_ID - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_DEPTH - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_MAXCHILD - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_PARENT - 1762)) | (1 << (PlSqlParser.SYS_PARALLEL_TXN - 1762)) | (1 << (PlSqlParser.SYS_PATHID_IS_ATTR - 1762)) | (1 << (PlSqlParser.SYS_PATHID_IS_NMSPC - 1762)) | (1 << (PlSqlParser.SYS_PATHID_LASTNAME - 1762)) | (1 << (PlSqlParser.SYS_PATHID_LASTNMSPC - 1762)) | (1 << (PlSqlParser.SYS_PATH_REVERSE - 1762)) | (1 << (PlSqlParser.SYS_PXQEXTRACT - 1762)) | (1 << (PlSqlParser.SYS_RAW_TO_XSID - 1762)) | (1 << (PlSqlParser.SYS_RID_ORDER - 1762)) | (1 << (PlSqlParser.SYS_ROW_DELTA - 1762)) | (1 << (PlSqlParser.SYS_SC_2_XMLT - 1762)) | (1 << (PlSqlParser.SYS_SYNRCIREDO - 1762)) | (1 << (PlSqlParser.SYSTEM_DEFINED - 1762)) | (1 << (PlSqlParser.SYSTEM - 1762)) | (1 << (PlSqlParser.SYSTIMESTAMP - 1762)) | (1 << (PlSqlParser.SYS_TYPEID - 1762)) | (1 << (PlSqlParser.SYS_UMAKEXML - 1762)) | (1 << (PlSqlParser.SYS_XMLANALYZE - 1762)) | (1 << (PlSqlParser.SYS_XMLCONTAINS - 1762)) | (1 << (PlSqlParser.SYS_XMLCONV - 1762)) | (1 << (PlSqlParser.SYS_XMLEXNSURI - 1762)) | (1 << (PlSqlParser.SYS_XMLGEN - 1762)) | (1 << (PlSqlParser.SYS_XMLI_LOC_ISNODE - 1762)) | (1 << (PlSqlParser.SYS_XMLI_LOC_ISTEXT - 1762)) | (1 << (PlSqlParser.SYS_XMLINSTR - 1762)) | (1 << (PlSqlParser.SYS_XMLLOCATOR_GETSVAL - 1762)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETCID - 1762)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETLOCATOR - 1762)))) !== 0) || ((((_la - 1794)) & ~0x1f) == 0 && ((1 << (_la - 1794)) & ((1 << (PlSqlParser.SYS_XMLNODEID_GETOKEY - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETPATHID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETPTRID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETRID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETSVAL - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETTID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID - 1794)) | (1 << (PlSqlParser.SYS_XMLT_2_SC - 1794)) | (1 << (PlSqlParser.SYS_XMLTRANSLATE - 1794)) | (1 << (PlSqlParser.SYS_XMLTYPE2SQL - 1794)) | (1 << (PlSqlParser.SYS_XQ_ASQLCNV - 1794)) | (1 << (PlSqlParser.SYS_XQ_ATOMCNVCHK - 1794)) | (1 << (PlSqlParser.SYS_XQBASEURI - 1794)) | (1 << (PlSqlParser.SYS_XQCASTABLEERRH - 1794)) | (1 << (PlSqlParser.SYS_XQCODEP2STR - 1794)) | (1 << (PlSqlParser.SYS_XQCODEPEQ - 1794)) | (1 << (PlSqlParser.SYS_XQCON2SEQ - 1794)) | (1 << (PlSqlParser.SYS_XQCONCAT - 1794)) | (1 << (PlSqlParser.SYS_XQDELETE - 1794)) | (1 << (PlSqlParser.SYS_XQDFLTCOLATION - 1794)) | (1 << (PlSqlParser.SYS_XQDOC - 1794)) | (1 << (PlSqlParser.SYS_XQDOCURI - 1794)) | (1 << (PlSqlParser.SYS_XQDURDIV - 1794)) | (1 << (PlSqlParser.SYS_XQED4URI - 1794)) | (1 << (PlSqlParser.SYS_XQENDSWITH - 1794)) | (1 << (PlSqlParser.SYS_XQERRH - 1794)) | (1 << (PlSqlParser.SYS_XQERR - 1794)) | (1 << (PlSqlParser.SYS_XQESHTMLURI - 1794)) | (1 << (PlSqlParser.SYS_XQEXLOBVAL - 1794)) | (1 << (PlSqlParser.SYS_XQEXSTWRP - 1794)) | (1 << (PlSqlParser.SYS_XQEXTRACT - 1794)) | (1 << (PlSqlParser.SYS_XQEXTRREF - 1794)))) !== 0) || ((((_la - 1826)) & ~0x1f) == 0 && ((1 << (_la - 1826)) & ((1 << (PlSqlParser.SYS_XQEXVAL - 1826)) | (1 << (PlSqlParser.SYS_XQFB2STR - 1826)) | (1 << (PlSqlParser.SYS_XQFNBOOL - 1826)) | (1 << (PlSqlParser.SYS_XQFNCMP - 1826)) | (1 << (PlSqlParser.SYS_XQFNDATIM - 1826)) | (1 << (PlSqlParser.SYS_XQFNLNAME - 1826)) | (1 << (PlSqlParser.SYS_XQFNNM - 1826)) | (1 << (PlSqlParser.SYS_XQFNNSURI - 1826)) | (1 << (PlSqlParser.SYS_XQFNPREDTRUTH - 1826)) | (1 << (PlSqlParser.SYS_XQFNQNM - 1826)) | (1 << (PlSqlParser.SYS_XQFNROOT - 1826)) | (1 << (PlSqlParser.SYS_XQFORMATNUM - 1826)) | (1 << (PlSqlParser.SYS_XQFTCONTAIN - 1826)) | (1 << (PlSqlParser.SYS_XQFUNCR - 1826)) | (1 << (PlSqlParser.SYS_XQGETCONTENT - 1826)) | (1 << (PlSqlParser.SYS_XQINDXOF - 1826)) | (1 << (PlSqlParser.SYS_XQINSERT - 1826)) | (1 << (PlSqlParser.SYS_XQINSPFX - 1826)) | (1 << (PlSqlParser.SYS_XQIRI2URI - 1826)) | (1 << (PlSqlParser.SYS_XQLANG - 1826)) | (1 << (PlSqlParser.SYS_XQLLNMFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQMKNODEREF - 1826)) | (1 << (PlSqlParser.SYS_XQNILLED - 1826)) | (1 << (PlSqlParser.SYS_XQNODENAME - 1826)) | (1 << (PlSqlParser.SYS_XQNORMSPACE - 1826)) | (1 << (PlSqlParser.SYS_XQNORMUCODE - 1826)) | (1 << (PlSqlParser.SYS_XQ_NRNG - 1826)) | (1 << (PlSqlParser.SYS_XQNSP4PFX - 1826)) | (1 << (PlSqlParser.SYS_XQNSPFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQPFXFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQ_PKSQL2XML - 1826)) | (1 << (PlSqlParser.SYS_XQPOLYABS - 1826)))) !== 0) || ((((_la - 1858)) & ~0x1f) == 0 && ((1 << (_la - 1858)) & ((1 << (PlSqlParser.SYS_XQPOLYADD - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCEL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCSTBL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCST - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYDIV - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYFLR - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYMOD - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYMUL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYRND - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYSQRT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYSUB - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYUMUS - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYUPLS - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVEQ - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVGE - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVGT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVLE - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVLT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVNE - 1858)) | (1 << (PlSqlParser.SYS_XQREF2VAL - 1858)) | (1 << (PlSqlParser.SYS_XQRENAME - 1858)) | (1 << (PlSqlParser.SYS_XQREPLACE - 1858)) | (1 << (PlSqlParser.SYS_XQRESVURI - 1858)) | (1 << (PlSqlParser.SYS_XQRNDHALF2EVN - 1858)) | (1 << (PlSqlParser.SYS_XQRSLVQNM - 1858)) | (1 << (PlSqlParser.SYS_XQRYENVPGET - 1858)) | (1 << (PlSqlParser.SYS_XQRYVARGET - 1858)) | (1 << (PlSqlParser.SYS_XQRYWRP - 1858)) | (1 << (PlSqlParser.SYS_XQSEQ2CON4XC - 1858)) | (1 << (PlSqlParser.SYS_XQSEQ2CON - 1858)) | (1 << (PlSqlParser.SYS_XQSEQDEEPEQ - 1858)) | (1 << (PlSqlParser.SYS_XQSEQINSB - 1858)))) !== 0) || ((((_la - 1890)) & ~0x1f) == 0 && ((1 << (_la - 1890)) & ((1 << (PlSqlParser.SYS_XQSEQRM - 1890)) | (1 << (PlSqlParser.SYS_XQSEQRVS - 1890)) | (1 << (PlSqlParser.SYS_XQSEQSUB - 1890)) | (1 << (PlSqlParser.SYS_XQSEQTYPMATCH - 1890)) | (1 << (PlSqlParser.SYS_XQSTARTSWITH - 1890)) | (1 << (PlSqlParser.SYS_XQSTATBURI - 1890)) | (1 << (PlSqlParser.SYS_XQSTR2CODEP - 1890)) | (1 << (PlSqlParser.SYS_XQSTRJOIN - 1890)) | (1 << (PlSqlParser.SYS_XQSUBSTRAFT - 1890)) | (1 << (PlSqlParser.SYS_XQSUBSTRBEF - 1890)) | (1 << (PlSqlParser.SYS_XQTOKENIZE - 1890)) | (1 << (PlSqlParser.SYS_XQTREATAS - 1890)) | (1 << (PlSqlParser.SYS_XQ_UPKXML2SQL - 1890)) | (1 << (PlSqlParser.SYS_XQXFORM - 1890)) | (1 << (PlSqlParser.SYS_XSID_TO_RAW - 1890)) | (1 << (PlSqlParser.SYS_ZMAP_FILTER - 1890)) | (1 << (PlSqlParser.SYS_ZMAP_REFRESH - 1890)) | (1 << (PlSqlParser.TABLE_LOOKUP_BY_NL - 1890)) | (1 << (PlSqlParser.TABLESPACE_NO - 1890)) | (1 << (PlSqlParser.TABLESPACE - 1890)) | (1 << (PlSqlParser.TABLES - 1890)) | (1 << (PlSqlParser.TABLE_STATS - 1890)) | (1 << (PlSqlParser.TABLE - 1890)) | (1 << (PlSqlParser.TABNO - 1890)) | (1 << (PlSqlParser.TAG - 1890)) | (1 << (PlSqlParser.TANH - 1890)) | (1 << (PlSqlParser.TAN - 1890)) | (1 << (PlSqlParser.TBLORIDXPARTNUM - 1890)) | (1 << (PlSqlParser.TEMPFILE - 1890)) | (1 << (PlSqlParser.TEMPLATE - 1890)) | (1 << (PlSqlParser.TEMPORARY - 1890)) | (1 << (PlSqlParser.TEMP_TABLE - 1890)))) !== 0) || ((((_la - 1922)) & ~0x1f) == 0 && ((1 << (_la - 1922)) & ((1 << (PlSqlParser.TEST - 1922)) | (1 << (PlSqlParser.TEXT - 1922)) | (1 << (PlSqlParser.THAN - 1922)) | (1 << (PlSqlParser.THEN - 1922)) | (1 << (PlSqlParser.THE - 1922)) | (1 << (PlSqlParser.THREAD - 1922)) | (1 << (PlSqlParser.THROUGH - 1922)) | (1 << (PlSqlParser.TIER - 1922)) | (1 << (PlSqlParser.TIES - 1922)) | (1 << (PlSqlParser.TIMEOUT - 1922)) | (1 << (PlSqlParser.TIMESTAMP_LTZ_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMESTAMP - 1922)) | (1 << (PlSqlParser.TIMESTAMP_TZ_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMESTAMP_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMES - 1922)) | (1 << (PlSqlParser.TIME - 1922)) | (1 << (PlSqlParser.TIMEZONE_ABBR - 1922)) | (1 << (PlSqlParser.TIMEZONE_HOUR - 1922)) | (1 << (PlSqlParser.TIMEZONE_MINUTE - 1922)) | (1 << (PlSqlParser.TIMEZONE_OFFSET - 1922)) | (1 << (PlSqlParser.TIMEZONE_REGION - 1922)) | (1 << (PlSqlParser.TIME_ZONE - 1922)) | (1 << (PlSqlParser.TIV_GB - 1922)) | (1 << (PlSqlParser.TIV_SSF - 1922)) | (1 << (PlSqlParser.TO_ACLID - 1922)) | (1 << (PlSqlParser.TO_BINARY_DOUBLE - 1922)) | (1 << (PlSqlParser.TO_BINARY_FLOAT - 1922)) | (1 << (PlSqlParser.TO_BLOB - 1922)) | (1 << (PlSqlParser.TO_CLOB - 1922)) | (1 << (PlSqlParser.TO_DSINTERVAL - 1922)) | (1 << (PlSqlParser.TO_LOB - 1922)))) !== 0) || ((((_la - 1954)) & ~0x1f) == 0 && ((1 << (_la - 1954)) & ((1 << (PlSqlParser.TO_MULTI_BYTE - 1954)) | (1 << (PlSqlParser.TO_NCHAR - 1954)) | (1 << (PlSqlParser.TO_NCLOB - 1954)) | (1 << (PlSqlParser.TO_NUMBER - 1954)) | (1 << (PlSqlParser.TOPLEVEL - 1954)) | (1 << (PlSqlParser.TO_SINGLE_BYTE - 1954)) | (1 << (PlSqlParser.TO_TIMESTAMP - 1954)) | (1 << (PlSqlParser.TO_TIMESTAMP_TZ - 1954)) | (1 << (PlSqlParser.TO_TIME - 1954)) | (1 << (PlSqlParser.TO_TIME_TZ - 1954)) | (1 << (PlSqlParser.TO_YMINTERVAL - 1954)) | (1 << (PlSqlParser.TRACE - 1954)) | (1 << (PlSqlParser.TRACING - 1954)) | (1 << (PlSqlParser.TRACKING - 1954)) | (1 << (PlSqlParser.TRAILING - 1954)) | (1 << (PlSqlParser.TRANSACTION - 1954)) | (1 << (PlSqlParser.TRANSFORM_DISTINCT_AGG - 1954)) | (1 << (PlSqlParser.TRANSITIONAL - 1954)) | (1 << (PlSqlParser.TRANSITION - 1954)) | (1 << (PlSqlParser.TRANSLATE - 1954)) | (1 << (PlSqlParser.TRANSLATION - 1954)) | (1 << (PlSqlParser.TREAT - 1954)) | (1 << (PlSqlParser.TRIGGERS - 1954)) | (1 << (PlSqlParser.TRIGGER - 1954)) | (1 << (PlSqlParser.TRUE - 1954)) | (1 << (PlSqlParser.TRUNCATE - 1954)) | (1 << (PlSqlParser.TRUNC - 1954)) | (1 << (PlSqlParser.TRUSTED - 1954)) | (1 << (PlSqlParser.TRUST - 1954)) | (1 << (PlSqlParser.TUNING - 1954)) | (1 << (PlSqlParser.TX - 1954)))) !== 0) || ((((_la - 1986)) & ~0x1f) == 0 && ((1 << (_la - 1986)) & ((1 << (PlSqlParser.TYPES - 1986)) | (1 << (PlSqlParser.TYPE - 1986)) | (1 << (PlSqlParser.TZ_OFFSET - 1986)) | (1 << (PlSqlParser.UB2 - 1986)) | (1 << (PlSqlParser.UBA - 1986)) | (1 << (PlSqlParser.UCS2 - 1986)) | (1 << (PlSqlParser.UID - 1986)) | (1 << (PlSqlParser.UNARCHIVED - 1986)) | (1 << (PlSqlParser.UNBOUNDED - 1986)) | (1 << (PlSqlParser.UNBOUND - 1986)) | (1 << (PlSqlParser.UNCONDITIONAL - 1986)) | (1 << (PlSqlParser.UNDER - 1986)) | (1 << (PlSqlParser.UNDO - 1986)) | (1 << (PlSqlParser.UNDROP - 1986)) | (1 << (PlSqlParser.UNIFORM - 1986)) | (1 << (PlSqlParser.UNISTR - 1986)) | (1 << (PlSqlParser.UNLIMITED - 1986)) | (1 << (PlSqlParser.UNLOAD - 1986)) | (1 << (PlSqlParser.UNLOCK - 1986)) | (1 << (PlSqlParser.UNMATCHED - 1986)) | (1 << (PlSqlParser.UNNEST_INNERJ_DISTINCT_VIEW - 1986)) | (1 << (PlSqlParser.UNNEST_NOSEMIJ_NODISTINCTVIEW - 1986)) | (1 << (PlSqlParser.UNNEST_SEMIJ_VIEW - 1986)) | (1 << (PlSqlParser.UNNEST - 1986)) | (1 << (PlSqlParser.UNPACKED - 1986)) | (1 << (PlSqlParser.UNPIVOT - 1986)) | (1 << (PlSqlParser.UNPLUG - 1986)) | (1 << (PlSqlParser.UNPROTECTED - 1986)) | (1 << (PlSqlParser.UNQUIESCE - 1986)) | (1 << (PlSqlParser.UNRECOVERABLE - 1986)))) !== 0) || ((((_la - 2018)) & ~0x1f) == 0 && ((1 << (_la - 2018)) & ((1 << (PlSqlParser.UNRESTRICTED - 2018)) | (1 << (PlSqlParser.UNSUBSCRIBE - 2018)) | (1 << (PlSqlParser.UNTIL - 2018)) | (1 << (PlSqlParser.UNUSABLE - 2018)) | (1 << (PlSqlParser.UNUSED - 2018)) | (1 << (PlSqlParser.UPDATABLE - 2018)) | (1 << (PlSqlParser.UPDATED - 2018)) | (1 << (PlSqlParser.UPDATEXML - 2018)) | (1 << (PlSqlParser.UPD_INDEXES - 2018)) | (1 << (PlSqlParser.UPD_JOININDEX - 2018)) | (1 << (PlSqlParser.UPGRADE - 2018)) | (1 << (PlSqlParser.UPPER - 2018)) | (1 << (PlSqlParser.UPSERT - 2018)) | (1 << (PlSqlParser.UROWID - 2018)) | (1 << (PlSqlParser.USABLE - 2018)) | (1 << (PlSqlParser.USAGE - 2018)) | (1 << (PlSqlParser.USE_ANTI - 2018)) | (1 << (PlSqlParser.USE_CONCAT - 2018)) | (1 << (PlSqlParser.USE_CUBE - 2018)) | (1 << (PlSqlParser.USE_HASH_AGGREGATION - 2018)) | (1 << (PlSqlParser.USE_HASH_GBY_FOR_PUSHDOWN - 2018)) | (1 << (PlSqlParser.USE_HASH - 2018)) | (1 << (PlSqlParser.USE_HIDDEN_PARTITIONS - 2018)) | (1 << (PlSqlParser.USE_INVISIBLE_INDEXES - 2018)) | (1 << (PlSqlParser.USE_MERGE_CARTESIAN - 2018)) | (1 << (PlSqlParser.USE_MERGE - 2018)) | (1 << (PlSqlParser.USE_NL - 2018)) | (1 << (PlSqlParser.USE_NL_WITH_INDEX - 2018)) | (1 << (PlSqlParser.USE_PRIVATE_OUTLINES - 2018)) | (1 << (PlSqlParser.USER_DATA - 2018)) | (1 << (PlSqlParser.USER_DEFINED - 2018)))) !== 0) || ((((_la - 2050)) & ~0x1f) == 0 && ((1 << (_la - 2050)) & ((1 << (PlSqlParser.USERENV - 2050)) | (1 << (PlSqlParser.USERGROUP - 2050)) | (1 << (PlSqlParser.USER_RECYCLEBIN - 2050)) | (1 << (PlSqlParser.USERS - 2050)) | (1 << (PlSqlParser.USER_TABLESPACES - 2050)) | (1 << (PlSqlParser.USER - 2050)) | (1 << (PlSqlParser.USE_SEMI - 2050)) | (1 << (PlSqlParser.USE_STORED_OUTLINES - 2050)) | (1 << (PlSqlParser.USE_TTT_FOR_GSETS - 2050)) | (1 << (PlSqlParser.USE - 2050)) | (1 << (PlSqlParser.USE_VECTOR_AGGREGATION - 2050)) | (1 << (PlSqlParser.USE_WEAK_NAME_RESL - 2050)) | (1 << (PlSqlParser.USING_NO_EXPAND - 2050)) | (1 << (PlSqlParser.USING - 2050)) | (1 << (PlSqlParser.UTF16BE - 2050)) | (1 << (PlSqlParser.UTF16LE - 2050)) | (1 << (PlSqlParser.UTF32 - 2050)) | (1 << (PlSqlParser.UTF8 - 2050)) | (1 << (PlSqlParser.V1 - 2050)) | (1 << (PlSqlParser.V2 - 2050)) | (1 << (PlSqlParser.VALIDATE - 2050)) | (1 << (PlSqlParser.VALIDATION - 2050)) | (1 << (PlSqlParser.VALID_TIME_END - 2050)) | (1 << (PlSqlParser.VALUE - 2050)) | (1 << (PlSqlParser.VARCHAR2 - 2050)) | (1 << (PlSqlParser.VARCHAR - 2050)) | (1 << (PlSqlParser.VARIABLE - 2050)) | (1 << (PlSqlParser.VAR_POP - 2050)) | (1 << (PlSqlParser.VARRAYS - 2050)) | (1 << (PlSqlParser.VARRAY - 2050)) | (1 << (PlSqlParser.VAR_SAMP - 2050)))) !== 0) || ((((_la - 2082)) & ~0x1f) == 0 && ((1 << (_la - 2082)) & ((1 << (PlSqlParser.VARYING - 2082)) | (1 << (PlSqlParser.VECTOR_READ_TRACE - 2082)) | (1 << (PlSqlParser.VECTOR_READ - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM_DIMS - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM_FACT - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM - 2082)) | (1 << (PlSqlParser.VERIFIER - 2082)) | (1 << (PlSqlParser.VERIFY - 2082)) | (1 << (PlSqlParser.VERSIONING - 2082)) | (1 << (PlSqlParser.VERSIONS_ENDSCN - 2082)) | (1 << (PlSqlParser.VERSIONS_ENDTIME - 2082)) | (1 << (PlSqlParser.VERSIONS_OPERATION - 2082)) | (1 << (PlSqlParser.VERSIONS_STARTSCN - 2082)) | (1 << (PlSqlParser.VERSIONS_STARTTIME - 2082)) | (1 << (PlSqlParser.VERSIONS - 2082)) | (1 << (PlSqlParser.VERSIONS_XID - 2082)) | (1 << (PlSqlParser.VERSION - 2082)) | (1 << (PlSqlParser.VIOLATION - 2082)) | (1 << (PlSqlParser.VIRTUAL - 2082)) | (1 << (PlSqlParser.VISIBILITY - 2082)) | (1 << (PlSqlParser.VISIBLE - 2082)) | (1 << (PlSqlParser.VOLUME - 2082)) | (1 << (PlSqlParser.VSIZE - 2082)) | (1 << (PlSqlParser.WAIT - 2082)) | (1 << (PlSqlParser.WALLET - 2082)) | (1 << (PlSqlParser.WARNING - 2082)) | (1 << (PlSqlParser.WEEKS - 2082)) | (1 << (PlSqlParser.WEEK - 2082)) | (1 << (PlSqlParser.WELLFORMED - 2082)) | (1 << (PlSqlParser.WHENEVER - 2082)) | (1 << (PlSqlParser.WHEN - 2082)))) !== 0) || ((((_la - 2115)) & ~0x1f) == 0 && ((1 << (_la - 2115)) & ((1 << (PlSqlParser.WHILE - 2115)) | (1 << (PlSqlParser.WHITESPACE - 2115)) | (1 << (PlSqlParser.WIDTH_BUCKET - 2115)) | (1 << (PlSqlParser.WITHIN - 2115)) | (1 << (PlSqlParser.WITHOUT - 2115)) | (1 << (PlSqlParser.WITH_PLSQL - 2115)) | (1 << (PlSqlParser.WORK - 2115)) | (1 << (PlSqlParser.WRAPPED - 2115)) | (1 << (PlSqlParser.WRAPPER - 2115)) | (1 << (PlSqlParser.WRITE - 2115)) | (1 << (PlSqlParser.XDB_FASTPATH_INSERT - 2115)) | (1 << (PlSqlParser.X_DYN_PRUNE - 2115)) | (1 << (PlSqlParser.XID - 2115)) | (1 << (PlSqlParser.XML2OBJECT - 2115)) | (1 << (PlSqlParser.XMLAGG - 2115)) | (1 << (PlSqlParser.XMLATTRIBUTES - 2115)) | (1 << (PlSqlParser.XMLCAST - 2115)) | (1 << (PlSqlParser.XMLCDATA - 2115)) | (1 << (PlSqlParser.XMLCOLATTVAL - 2115)) | (1 << (PlSqlParser.XMLCOMMENT - 2115)) | (1 << (PlSqlParser.XMLCONCAT - 2115)) | (1 << (PlSqlParser.XMLDIFF - 2115)) | (1 << (PlSqlParser.XML_DML_RWT_STMT - 2115)) | (1 << (PlSqlParser.XMLELEMENT - 2115)) | (1 << (PlSqlParser.XMLEXISTS2 - 2115)) | (1 << (PlSqlParser.XMLEXISTS - 2115)) | (1 << (PlSqlParser.XMLFOREST - 2115)) | (1 << (PlSqlParser.XMLINDEX_REWRITE_IN_SELECT - 2115)) | (1 << (PlSqlParser.XMLINDEX_REWRITE - 2115)))) !== 0) || ((((_la - 2147)) & ~0x1f) == 0 && ((1 << (_la - 2147)) & ((1 << (PlSqlParser.XMLINDEX_SEL_IDX_TBL - 2147)) | (1 << (PlSqlParser.XMLISNODE - 2147)) | (1 << (PlSqlParser.XMLISVALID - 2147)) | (1 << (PlSqlParser.XMLNAMESPACES - 2147)) | (1 << (PlSqlParser.XMLPARSE - 2147)) | (1 << (PlSqlParser.XMLPATCH - 2147)) | (1 << (PlSqlParser.XMLPI - 2147)) | (1 << (PlSqlParser.XMLQUERYVAL - 2147)) | (1 << (PlSqlParser.XMLQUERY - 2147)) | (1 << (PlSqlParser.XMLROOT - 2147)) | (1 << (PlSqlParser.XMLSCHEMA - 2147)) | (1 << (PlSqlParser.XMLSERIALIZE - 2147)) | (1 << (PlSqlParser.XMLTABLE - 2147)) | (1 << (PlSqlParser.XMLTRANSFORMBLOB - 2147)) | (1 << (PlSqlParser.XMLTRANSFORM - 2147)) | (1 << (PlSqlParser.XMLTYPE - 2147)) | (1 << (PlSqlParser.XML - 2147)) | (1 << (PlSqlParser.XPATHTABLE - 2147)) | (1 << (PlSqlParser.XS_SYS_CONTEXT - 2147)) | (1 << (PlSqlParser.XS - 2147)) | (1 << (PlSqlParser.YEARS - 2147)) | (1 << (PlSqlParser.YEAR - 2147)) | (1 << (PlSqlParser.YES - 2147)) | (1 << (PlSqlParser.YMINTERVAL_UNCONSTRAINED - 2147)) | (1 << (PlSqlParser.ZONEMAP - 2147)) | (1 << (PlSqlParser.ZONE - 2147)) | (1 << (PlSqlParser.PREDICTION - 2147)) | (1 << (PlSqlParser.PREDICTION_BOUNDS - 2147)) | (1 << (PlSqlParser.PREDICTION_COST - 2147)) | (1 << (PlSqlParser.PREDICTION_DETAILS - 2147)) | (1 << (PlSqlParser.PREDICTION_PROBABILITY - 2147)))) !== 0) || ((((_la - 2179)) & ~0x1f) == 0 && ((1 << (_la - 2179)) & ((1 << (PlSqlParser.PREDICTION_SET - 2179)) | (1 << (PlSqlParser.CUME_DIST - 2179)) | (1 << (PlSqlParser.DENSE_RANK - 2179)) | (1 << (PlSqlParser.LISTAGG - 2179)) | (1 << (PlSqlParser.PERCENT_RANK - 2179)) | (1 << (PlSqlParser.PERCENTILE_CONT - 2179)) | (1 << (PlSqlParser.PERCENTILE_DISC - 2179)) | (1 << (PlSqlParser.RANK - 2179)) | (1 << (PlSqlParser.AVG - 2179)) | (1 << (PlSqlParser.CORR - 2179)) | (1 << (PlSqlParser.COVAR_ - 2179)) | (1 << (PlSqlParser.LAG - 2179)) | (1 << (PlSqlParser.LEAD - 2179)) | (1 << (PlSqlParser.MAX - 2179)) | (1 << (PlSqlParser.MEDIAN - 2179)) | (1 << (PlSqlParser.MIN - 2179)) | (1 << (PlSqlParser.NTILE - 2179)) | (1 << (PlSqlParser.NVL - 2179)) | (1 << (PlSqlParser.RATIO_TO_REPORT - 2179)) | (1 << (PlSqlParser.REGR_ - 2179)) | (1 << (PlSqlParser.ROUND - 2179)) | (1 << (PlSqlParser.ROW_NUMBER - 2179)) | (1 << (PlSqlParser.SUBSTR - 2179)) | (1 << (PlSqlParser.TO_CHAR - 2179)) | (1 << (PlSqlParser.TRIM - 2179)) | (1 << (PlSqlParser.SUM - 2179)) | (1 << (PlSqlParser.STDDEV - 2179)) | (1 << (PlSqlParser.VAR_ - 2179)) | (1 << (PlSqlParser.VARIANCE - 2179)) | (1 << (PlSqlParser.LEAST - 2179)) | (1 << (PlSqlParser.GREATEST - 2179)))) !== 0) || _la===PlSqlParser.TO_DATE || _la===PlSqlParser.PERIOD || _la===PlSqlParser.REGULAR_ID) {
+ this.state = 5694;
+ this.partition_name();
+ }
+
+ this.state = 5697;
+ this.list_values_clause();
+ this.state = 5698;
+ this.table_partition_description();
+ this.state = 5709;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 5699;
+ this.match(PlSqlParser.COMMA);
+ this.state = 5700;
+ this.match(PlSqlParser.PARTITION);
+ this.state = 5702;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if((((_la) & ~0x1f) == 0 && ((1 << _la) & ((1 << PlSqlParser.ABORT) | (1 << PlSqlParser.ABS) | (1 << PlSqlParser.ACCESS) | (1 << PlSqlParser.ACCESSED) | (1 << PlSqlParser.ACCOUNT) | (1 << PlSqlParser.ACL) | (1 << PlSqlParser.ACOS) | (1 << PlSqlParser.ACTION) | (1 << PlSqlParser.ACTIONS) | (1 << PlSqlParser.ACTIVATE) | (1 << PlSqlParser.ACTIVE) | (1 << PlSqlParser.ACTIVE_COMPONENT) | (1 << PlSqlParser.ACTIVE_DATA) | (1 << PlSqlParser.ACTIVE_FUNCTION) | (1 << PlSqlParser.ACTIVE_TAG) | (1 << PlSqlParser.ACTIVITY) | (1 << PlSqlParser.ADAPTIVE_PLAN) | (1 << PlSqlParser.ADD) | (1 << PlSqlParser.ADD_COLUMN) | (1 << PlSqlParser.ADD_GROUP) | (1 << PlSqlParser.ADD_MONTHS) | (1 << PlSqlParser.ADJ_DATE) | (1 << PlSqlParser.ADMIN) | (1 << PlSqlParser.ADMINISTER) | (1 << PlSqlParser.ADMINISTRATOR) | (1 << PlSqlParser.ADVANCED) | (1 << PlSqlParser.ADVISE) | (1 << PlSqlParser.ADVISOR) | (1 << PlSqlParser.AFD_DISKSTRING) | (1 << PlSqlParser.AFTER) | (1 << PlSqlParser.AGENT))) !== 0) || ((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (PlSqlParser.AGGREGATE - 32)) | (1 << (PlSqlParser.A_LETTER - 32)) | (1 << (PlSqlParser.ALIAS - 32)) | (1 << (PlSqlParser.ALLOCATE - 32)) | (1 << (PlSqlParser.ALLOW - 32)) | (1 << (PlSqlParser.ALL_ROWS - 32)) | (1 << (PlSqlParser.ALWAYS - 32)) | (1 << (PlSqlParser.ANALYZE - 32)) | (1 << (PlSqlParser.ANCILLARY - 32)) | (1 << (PlSqlParser.AND_EQUAL - 32)) | (1 << (PlSqlParser.ANOMALY - 32)) | (1 << (PlSqlParser.ANSI_REARCH - 32)) | (1 << (PlSqlParser.ANTIJOIN - 32)) | (1 << (PlSqlParser.ANYSCHEMA - 32)) | (1 << (PlSqlParser.APPEND - 32)) | (1 << (PlSqlParser.APPENDCHILDXML - 32)) | (1 << (PlSqlParser.APPEND_VALUES - 32)) | (1 << (PlSqlParser.APPLICATION - 32)) | (1 << (PlSqlParser.APPLY - 32)) | (1 << (PlSqlParser.APPROX_COUNT_DISTINCT - 32)) | (1 << (PlSqlParser.ARCHIVAL - 32)) | (1 << (PlSqlParser.ARCHIVE - 32)) | (1 << (PlSqlParser.ARCHIVED - 32)) | (1 << (PlSqlParser.ARCHIVELOG - 32)) | (1 << (PlSqlParser.ARRAY - 32)) | (1 << (PlSqlParser.ASCII - 32)))) !== 0) || ((((_la - 64)) & ~0x1f) == 0 && ((1 << (_la - 64)) & ((1 << (PlSqlParser.ASCIISTR - 64)) | (1 << (PlSqlParser.ASIN - 64)) | (1 << (PlSqlParser.ASIS - 64)) | (1 << (PlSqlParser.ASSEMBLY - 64)) | (1 << (PlSqlParser.ASSIGN - 64)) | (1 << (PlSqlParser.ASSOCIATE - 64)) | (1 << (PlSqlParser.ASYNC - 64)) | (1 << (PlSqlParser.ASYNCHRONOUS - 64)) | (1 << (PlSqlParser.ATAN2 - 64)) | (1 << (PlSqlParser.ATAN - 64)) | (1 << (PlSqlParser.AT - 64)) | (1 << (PlSqlParser.ATTRIBUTE - 64)) | (1 << (PlSqlParser.ATTRIBUTES - 64)) | (1 << (PlSqlParser.AUTHENTICATED - 64)) | (1 << (PlSqlParser.AUTHENTICATION - 64)) | (1 << (PlSqlParser.AUTHID - 64)) | (1 << (PlSqlParser.AUTHORIZATION - 64)) | (1 << (PlSqlParser.AUTOALLOCATE - 64)) | (1 << (PlSqlParser.AUTO - 64)) | (1 << (PlSqlParser.AUTOEXTEND - 64)) | (1 << (PlSqlParser.AUTO_LOGIN - 64)) | (1 << (PlSqlParser.AUTOMATIC - 64)) | (1 << (PlSqlParser.AUTONOMOUS_TRANSACTION - 64)) | (1 << (PlSqlParser.AUTO_REOPTIMIZE - 64)) | (1 << (PlSqlParser.AVAILABILITY - 64)) | (1 << (PlSqlParser.AVRO - 64)) | (1 << (PlSqlParser.BACKGROUND - 64)) | (1 << (PlSqlParser.BACKUP - 64)) | (1 << (PlSqlParser.BASIC - 64)))) !== 0) || ((((_la - 96)) & ~0x1f) == 0 && ((1 << (_la - 96)) & ((1 << (PlSqlParser.BASICFILE - 96)) | (1 << (PlSqlParser.BATCH - 96)) | (1 << (PlSqlParser.BATCHSIZE - 96)) | (1 << (PlSqlParser.BATCH_TABLE_ACCESS_BY_ROWID - 96)) | (1 << (PlSqlParser.BECOME - 96)) | (1 << (PlSqlParser.BEFORE - 96)) | (1 << (PlSqlParser.BEGIN - 96)) | (1 << (PlSqlParser.BEGINNING - 96)) | (1 << (PlSqlParser.BEGIN_OUTLINE_DATA - 96)) | (1 << (PlSqlParser.BEHALF - 96)) | (1 << (PlSqlParser.BEQUEATH - 96)) | (1 << (PlSqlParser.BFILE - 96)) | (1 << (PlSqlParser.BFILENAME - 96)) | (1 << (PlSqlParser.BIGFILE - 96)) | (1 << (PlSqlParser.BINARY - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE_INFINITY - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE_NAN - 96)) | (1 << (PlSqlParser.BINARY_FLOAT - 96)) | (1 << (PlSqlParser.BINARY_FLOAT_INFINITY - 96)) | (1 << (PlSqlParser.BINARY_FLOAT_NAN - 96)) | (1 << (PlSqlParser.BINARY_INTEGER - 96)) | (1 << (PlSqlParser.BIND_AWARE - 96)) | (1 << (PlSqlParser.BINDING - 96)) | (1 << (PlSqlParser.BIN_TO_NUM - 96)) | (1 << (PlSqlParser.BITAND - 96)) | (1 << (PlSqlParser.BITMAP_AND - 96)) | (1 << (PlSqlParser.BITMAP - 96)) | (1 << (PlSqlParser.BITMAPS - 96)) | (1 << (PlSqlParser.BITMAP_TREE - 96)) | (1 << (PlSqlParser.BITS - 96)))) !== 0) || ((((_la - 128)) & ~0x1f) == 0 && ((1 << (_la - 128)) & ((1 << (PlSqlParser.BLOB - 128)) | (1 << (PlSqlParser.BLOCK - 128)) | (1 << (PlSqlParser.BLOCK_RANGE - 128)) | (1 << (PlSqlParser.BLOCKS - 128)) | (1 << (PlSqlParser.BLOCKSIZE - 128)) | (1 << (PlSqlParser.BODY - 128)) | (1 << (PlSqlParser.BOOLEAN - 128)) | (1 << (PlSqlParser.BOTH - 128)) | (1 << (PlSqlParser.BOUND - 128)) | (1 << (PlSqlParser.BRANCH - 128)) | (1 << (PlSqlParser.BREADTH - 128)) | (1 << (PlSqlParser.BROADCAST - 128)) | (1 << (PlSqlParser.BSON - 128)) | (1 << (PlSqlParser.BUFFER - 128)) | (1 << (PlSqlParser.BUFFER_CACHE - 128)) | (1 << (PlSqlParser.BUFFER_POOL - 128)) | (1 << (PlSqlParser.BUILD - 128)) | (1 << (PlSqlParser.BULK - 128)) | (1 << (PlSqlParser.BYPASS_RECURSIVE_CHECK - 128)) | (1 << (PlSqlParser.BYPASS_UJVC - 128)) | (1 << (PlSqlParser.BYTE - 128)) | (1 << (PlSqlParser.CACHE - 128)) | (1 << (PlSqlParser.CACHE_CB - 128)) | (1 << (PlSqlParser.CACHE_INSTANCES - 128)) | (1 << (PlSqlParser.CACHE_TEMP_TABLE - 128)) | (1 << (PlSqlParser.CACHING - 128)) | (1 << (PlSqlParser.CALCULATED - 128)) | (1 << (PlSqlParser.CALLBACK - 128)) | (1 << (PlSqlParser.CALL - 128)) | (1 << (PlSqlParser.CANCEL - 128)))) !== 0) || ((((_la - 160)) & ~0x1f) == 0 && ((1 << (_la - 160)) & ((1 << (PlSqlParser.CAPACITY - 160)) | (1 << (PlSqlParser.CARDINALITY - 160)) | (1 << (PlSqlParser.CASCADE - 160)) | (1 << (PlSqlParser.CASE - 160)) | (1 << (PlSqlParser.CAST - 160)) | (1 << (PlSqlParser.CATEGORY - 160)) | (1 << (PlSqlParser.CDBDEFAULT - 160)) | (1 << (PlSqlParser.CEIL - 160)) | (1 << (PlSqlParser.CELL_FLASH_CACHE - 160)) | (1 << (PlSqlParser.CERTIFICATE - 160)) | (1 << (PlSqlParser.CFILE - 160)) | (1 << (PlSqlParser.CHAINED - 160)) | (1 << (PlSqlParser.CHANGE - 160)) | (1 << (PlSqlParser.CHANGE_DUPKEY_ERROR_INDEX - 160)) | (1 << (PlSqlParser.CHARACTER - 160)) | (1 << (PlSqlParser.CHAR - 160)) | (1 << (PlSqlParser.CHAR_CS - 160)) | (1 << (PlSqlParser.CHARTOROWID - 160)) | (1 << (PlSqlParser.CHECK_ACL_REWRITE - 160)) | (1 << (PlSqlParser.CHECKPOINT - 160)) | (1 << (PlSqlParser.CHILD - 160)) | (1 << (PlSqlParser.CHOOSE - 160)) | (1 << (PlSqlParser.CHR - 160)) | (1 << (PlSqlParser.CHUNK - 160)) | (1 << (PlSqlParser.CLASS - 160)) | (1 << (PlSqlParser.CLASSIFIER - 160)) | (1 << (PlSqlParser.CLEANUP - 160)) | (1 << (PlSqlParser.CLEAR - 160)) | (1 << (PlSqlParser.C_LETTER - 160)) | (1 << (PlSqlParser.CLIENT - 160)))) !== 0) || ((((_la - 192)) & ~0x1f) == 0 && ((1 << (_la - 192)) & ((1 << (PlSqlParser.CLOB - 192)) | (1 << (PlSqlParser.CLONE - 192)) | (1 << (PlSqlParser.CLOSE_CACHED_OPEN_CURSORS - 192)) | (1 << (PlSqlParser.CLOSE - 192)) | (1 << (PlSqlParser.CLUSTER_BY_ROWID - 192)) | (1 << (PlSqlParser.CLUSTER - 192)) | (1 << (PlSqlParser.CLUSTER_DETAILS - 192)) | (1 << (PlSqlParser.CLUSTER_DISTANCE - 192)) | (1 << (PlSqlParser.CLUSTER_ID - 192)) | (1 << (PlSqlParser.CLUSTERING - 192)) | (1 << (PlSqlParser.CLUSTERING_FACTOR - 192)) | (1 << (PlSqlParser.CLUSTER_PROBABILITY - 192)) | (1 << (PlSqlParser.CLUSTER_SET - 192)) | (1 << (PlSqlParser.COALESCE - 192)) | (1 << (PlSqlParser.COALESCE_SQ - 192)) | (1 << (PlSqlParser.COARSE - 192)) | (1 << (PlSqlParser.CO_AUTH_IND - 192)) | (1 << (PlSqlParser.COLD - 192)) | (1 << (PlSqlParser.COLLECT - 192)) | (1 << (PlSqlParser.COLUMNAR - 192)) | (1 << (PlSqlParser.COLUMN_AUTH_INDICATOR - 192)) | (1 << (PlSqlParser.COLUMN - 192)) | (1 << (PlSqlParser.COLUMNS - 192)) | (1 << (PlSqlParser.COLUMN_STATS - 192)) | (1 << (PlSqlParser.COLUMN_VALUE - 192)) | (1 << (PlSqlParser.COMMENT - 192)) | (1 << (PlSqlParser.COMMIT - 192)) | (1 << (PlSqlParser.COMMITTED - 192)) | (1 << (PlSqlParser.COMMON_DATA - 192)) | (1 << (PlSqlParser.COMPACT - 192)) | (1 << (PlSqlParser.COMPATIBILITY - 192)) | (1 << (PlSqlParser.COMPILE - 192)))) !== 0) || ((((_la - 224)) & ~0x1f) == 0 && ((1 << (_la - 224)) & ((1 << (PlSqlParser.COMPLETE - 224)) | (1 << (PlSqlParser.COMPLIANCE - 224)) | (1 << (PlSqlParser.COMPONENT - 224)) | (1 << (PlSqlParser.COMPONENTS - 224)) | (1 << (PlSqlParser.COMPOSE - 224)) | (1 << (PlSqlParser.COMPOSITE - 224)) | (1 << (PlSqlParser.COMPOSITE_LIMIT - 224)) | (1 << (PlSqlParser.COMPOUND - 224)) | (1 << (PlSqlParser.COMPUTE - 224)) | (1 << (PlSqlParser.CONCAT - 224)) | (1 << (PlSqlParser.CON_DBID_TO_ID - 224)) | (1 << (PlSqlParser.CONDITIONAL - 224)) | (1 << (PlSqlParser.CONDITION - 224)) | (1 << (PlSqlParser.CONFIRM - 224)) | (1 << (PlSqlParser.CONFORMING - 224)) | (1 << (PlSqlParser.CON_GUID_TO_ID - 224)) | (1 << (PlSqlParser.CON_ID - 224)) | (1 << (PlSqlParser.CON_NAME_TO_ID - 224)) | (1 << (PlSqlParser.CONNECT_BY_CB_WHR_ONLY - 224)) | (1 << (PlSqlParser.CONNECT_BY_COMBINE_SW - 224)) | (1 << (PlSqlParser.CONNECT_BY_COST_BASED - 224)) | (1 << (PlSqlParser.CONNECT_BY_ELIM_DUPS - 224)) | (1 << (PlSqlParser.CONNECT_BY_FILTERING - 224)) | (1 << (PlSqlParser.CONNECT_BY_ISCYCLE - 224)) | (1 << (PlSqlParser.CONNECT_BY_ISLEAF - 224)) | (1 << (PlSqlParser.CONNECT_BY_ROOT - 224)) | (1 << (PlSqlParser.CONNECT_TIME - 224)) | (1 << (PlSqlParser.CONSIDER - 224)) | (1 << (PlSqlParser.CONSISTENT - 224)) | (1 << (PlSqlParser.CONSTANT - 224)))) !== 0) || ((((_la - 256)) & ~0x1f) == 0 && ((1 << (_la - 256)) & ((1 << (PlSqlParser.CONST - 256)) | (1 << (PlSqlParser.CONSTRAINT - 256)) | (1 << (PlSqlParser.CONSTRAINTS - 256)) | (1 << (PlSqlParser.CONSTRUCTOR - 256)) | (1 << (PlSqlParser.CONTAINER - 256)) | (1 << (PlSqlParser.CONTAINER_DATA - 256)) | (1 << (PlSqlParser.CONTAINERS - 256)) | (1 << (PlSqlParser.CONTENT - 256)) | (1 << (PlSqlParser.CONTENTS - 256)) | (1 << (PlSqlParser.CONTEXT - 256)) | (1 << (PlSqlParser.CONTINUE - 256)) | (1 << (PlSqlParser.CONTROLFILE - 256)) | (1 << (PlSqlParser.CON_UID_TO_ID - 256)) | (1 << (PlSqlParser.CONVERT - 256)) | (1 << (PlSqlParser.COOKIE - 256)) | (1 << (PlSqlParser.COPY - 256)) | (1 << (PlSqlParser.CORR_K - 256)) | (1 << (PlSqlParser.CORR_S - 256)) | (1 << (PlSqlParser.CORRUPTION - 256)) | (1 << (PlSqlParser.CORRUPT_XID_ALL - 256)) | (1 << (PlSqlParser.CORRUPT_XID - 256)) | (1 << (PlSqlParser.COS - 256)) | (1 << (PlSqlParser.COSH - 256)) | (1 << (PlSqlParser.COST - 256)) | (1 << (PlSqlParser.COST_XML_QUERY_REWRITE - 256)) | (1 << (PlSqlParser.COUNT - 256)) | (1 << (PlSqlParser.COVAR_POP - 256)) | (1 << (PlSqlParser.COVAR_SAMP - 256)) | (1 << (PlSqlParser.CPU_COSTING - 256)) | (1 << (PlSqlParser.CPU_PER_CALL - 256)) | (1 << (PlSqlParser.CPU_PER_SESSION - 256)) | (1 << (PlSqlParser.CRASH - 256)))) !== 0) || ((((_la - 289)) & ~0x1f) == 0 && ((1 << (_la - 289)) & ((1 << (PlSqlParser.CREATE_FILE_DEST - 289)) | (1 << (PlSqlParser.CREATE_STORED_OUTLINES - 289)) | (1 << (PlSqlParser.CREATION - 289)) | (1 << (PlSqlParser.CREDENTIAL - 289)) | (1 << (PlSqlParser.CRITICAL - 289)) | (1 << (PlSqlParser.CROSS - 289)) | (1 << (PlSqlParser.CROSSEDITION - 289)) | (1 << (PlSqlParser.CSCONVERT - 289)) | (1 << (PlSqlParser.CUBE_AJ - 289)) | (1 << (PlSqlParser.CUBE - 289)) | (1 << (PlSqlParser.CUBE_GB - 289)) | (1 << (PlSqlParser.CUBE_SJ - 289)) | (1 << (PlSqlParser.CUME_DISTM - 289)) | (1 << (PlSqlParser.CURRENT - 289)) | (1 << (PlSqlParser.CURRENT_DATE - 289)) | (1 << (PlSqlParser.CURRENT_SCHEMA - 289)) | (1 << (PlSqlParser.CURRENT_TIME - 289)) | (1 << (PlSqlParser.CURRENT_TIMESTAMP - 289)) | (1 << (PlSqlParser.CURRENT_USER - 289)) | (1 << (PlSqlParser.CURRENTV - 289)) | (1 << (PlSqlParser.CURSOR - 289)) | (1 << (PlSqlParser.CURSOR_SHARING_EXACT - 289)) | (1 << (PlSqlParser.CURSOR_SPECIFIC_SEGMENT - 289)) | (1 << (PlSqlParser.CUSTOMDATUM - 289)) | (1 << (PlSqlParser.CV - 289)) | (1 << (PlSqlParser.CYCLE - 289)) | (1 << (PlSqlParser.DANGLING - 289)) | (1 << (PlSqlParser.DATABASE - 289)) | (1 << (PlSqlParser.DATA - 289)) | (1 << (PlSqlParser.DATAFILE - 289)) | (1 << (PlSqlParser.DATAFILES - 289)))) !== 0) || ((((_la - 321)) & ~0x1f) == 0 && ((1 << (_la - 321)) & ((1 << (PlSqlParser.DATAMOVEMENT - 321)) | (1 << (PlSqlParser.DATAOBJNO - 321)) | (1 << (PlSqlParser.DATAOBJ_TO_MAT_PARTITION - 321)) | (1 << (PlSqlParser.DATAOBJ_TO_PARTITION - 321)) | (1 << (PlSqlParser.DATAPUMP - 321)) | (1 << (PlSqlParser.DATA_SECURITY_REWRITE_LIMIT - 321)) | (1 << (PlSqlParser.DATE_MODE - 321)) | (1 << (PlSqlParser.DAY - 321)) | (1 << (PlSqlParser.DAYS - 321)) | (1 << (PlSqlParser.DBA - 321)) | (1 << (PlSqlParser.DBA_RECYCLEBIN - 321)) | (1 << (PlSqlParser.DBMS_STATS - 321)) | (1 << (PlSqlParser.DB_ROLE_CHANGE - 321)) | (1 << (PlSqlParser.DBTIMEZONE - 321)) | (1 << (PlSqlParser.DB_UNIQUE_NAME - 321)) | (1 << (PlSqlParser.DB_VERSION - 321)) | (1 << (PlSqlParser.DDL - 321)) | (1 << (PlSqlParser.DEALLOCATE - 321)) | (1 << (PlSqlParser.DEBUG - 321)) | (1 << (PlSqlParser.DEBUGGER - 321)) | (1 << (PlSqlParser.DEC - 321)) | (1 << (PlSqlParser.DECIMAL - 321)) | (1 << (PlSqlParser.DECLARE - 321)) | (1 << (PlSqlParser.DECOMPOSE - 321)) | (1 << (PlSqlParser.DECORRELATE - 321)) | (1 << (PlSqlParser.DECR - 321)) | (1 << (PlSqlParser.DECREMENT - 321)) | (1 << (PlSqlParser.DECRYPT - 321)) | (1 << (PlSqlParser.DEDUPLICATE - 321)) | (1 << (PlSqlParser.DEFAULTS - 321)))) !== 0) || ((((_la - 353)) & ~0x1f) == 0 && ((1 << (_la - 353)) & ((1 << (PlSqlParser.DEFERRABLE - 353)) | (1 << (PlSqlParser.DEFERRED - 353)) | (1 << (PlSqlParser.DEFINED - 353)) | (1 << (PlSqlParser.DEFINE - 353)) | (1 << (PlSqlParser.DEFINER - 353)) | (1 << (PlSqlParser.DEGREE - 353)) | (1 << (PlSqlParser.DELAY - 353)) | (1 << (PlSqlParser.DELEGATE - 353)) | (1 << (PlSqlParser.DELETE_ALL - 353)) | (1 << (PlSqlParser.DELETE - 353)) | (1 << (PlSqlParser.DELETEXML - 353)) | (1 << (PlSqlParser.DEMAND - 353)) | (1 << (PlSqlParser.DENSE_RANKM - 353)) | (1 << (PlSqlParser.DEPENDENT - 353)) | (1 << (PlSqlParser.DEPTH - 353)) | (1 << (PlSqlParser.DEQUEUE - 353)) | (1 << (PlSqlParser.DEREF - 353)) | (1 << (PlSqlParser.DEREF_NO_REWRITE - 353)) | (1 << (PlSqlParser.DESTROY - 353)) | (1 << (PlSqlParser.DETACHED - 353)) | (1 << (PlSqlParser.DETERMINES - 353)) | (1 << (PlSqlParser.DETERMINISTIC - 353)) | (1 << (PlSqlParser.DICTIONARY - 353)) | (1 << (PlSqlParser.DIMENSION - 353)) | (1 << (PlSqlParser.DIMENSIONS - 353)) | (1 << (PlSqlParser.DIRECT_LOAD - 353)) | (1 << (PlSqlParser.DIRECTORY - 353)) | (1 << (PlSqlParser.DIRECT_PATH - 353)) | (1 << (PlSqlParser.DISABLE_ALL - 353)) | (1 << (PlSqlParser.DISABLE - 353)) | (1 << (PlSqlParser.DISABLE_PARALLEL_DML - 353)))) !== 0) || ((((_la - 385)) & ~0x1f) == 0 && ((1 << (_la - 385)) & ((1 << (PlSqlParser.DISABLE_PRESET - 385)) | (1 << (PlSqlParser.DISABLE_RPKE - 385)) | (1 << (PlSqlParser.DISALLOW - 385)) | (1 << (PlSqlParser.DISASSOCIATE - 385)) | (1 << (PlSqlParser.DISCARD - 385)) | (1 << (PlSqlParser.DISCONNECT - 385)) | (1 << (PlSqlParser.DISK - 385)) | (1 << (PlSqlParser.DISKGROUP - 385)) | (1 << (PlSqlParser.DISKS - 385)) | (1 << (PlSqlParser.DISMOUNT - 385)) | (1 << (PlSqlParser.DISTINGUISHED - 385)) | (1 << (PlSqlParser.DISTRIBUTED - 385)) | (1 << (PlSqlParser.DISTRIBUTE - 385)) | (1 << (PlSqlParser.DML - 385)) | (1 << (PlSqlParser.DML_UPDATE - 385)) | (1 << (PlSqlParser.DOCFIDELITY - 385)) | (1 << (PlSqlParser.DOCUMENT - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_FILTER - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_NO_SORT - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_SORT - 385)) | (1 << (PlSqlParser.DOUBLE - 385)) | (1 << (PlSqlParser.DOWNGRADE - 385)) | (1 << (PlSqlParser.DRIVING_SITE - 385)) | (1 << (PlSqlParser.DROP_COLUMN - 385)) | (1 << (PlSqlParser.DROP_GROUP - 385)) | (1 << (PlSqlParser.DSINTERVAL_UNCONSTRAINED - 385)) | (1 << (PlSqlParser.DST_UPGRADE_INSERT_CONV - 385)) | (1 << (PlSqlParser.DUMP - 385)))) !== 0) || ((((_la - 417)) & ~0x1f) == 0 && ((1 << (_la - 417)) & ((1 << (PlSqlParser.DUPLICATE - 417)) | (1 << (PlSqlParser.DV - 417)) | (1 << (PlSqlParser.DYNAMIC - 417)) | (1 << (PlSqlParser.DYNAMIC_SAMPLING - 417)) | (1 << (PlSqlParser.DYNAMIC_SAMPLING_EST_CDN - 417)) | (1 << (PlSqlParser.EACH - 417)) | (1 << (PlSqlParser.EDITIONABLE - 417)) | (1 << (PlSqlParser.EDITION - 417)) | (1 << (PlSqlParser.EDITIONING - 417)) | (1 << (PlSqlParser.EDITIONS - 417)) | (1 << (PlSqlParser.ELEMENT - 417)) | (1 << (PlSqlParser.ELIM_GROUPBY - 417)) | (1 << (PlSqlParser.ELIMINATE_JOIN - 417)) | (1 << (PlSqlParser.ELIMINATE_OBY - 417)) | (1 << (PlSqlParser.ELIMINATE_OUTER_JOIN - 417)) | (1 << (PlSqlParser.EM - 417)) | (1 << (PlSqlParser.EMPTY_BLOB - 417)) | (1 << (PlSqlParser.EMPTY_CLOB - 417)) | (1 << (PlSqlParser.EMPTY - 417)) | (1 << (PlSqlParser.ENABLE_ALL - 417)) | (1 << (PlSqlParser.ENABLE - 417)) | (1 << (PlSqlParser.ENABLE_PARALLEL_DML - 417)) | (1 << (PlSqlParser.ENABLE_PRESET - 417)) | (1 << (PlSqlParser.ENCODING - 417)) | (1 << (PlSqlParser.ENCRYPT - 417)) | (1 << (PlSqlParser.ENCRYPTION - 417)) | (1 << (PlSqlParser.END_OUTLINE_DATA - 417)) | (1 << (PlSqlParser.ENFORCED - 417)) | (1 << (PlSqlParser.ENFORCE - 417)))) !== 0) || ((((_la - 449)) & ~0x1f) == 0 && ((1 << (_la - 449)) & ((1 << (PlSqlParser.ENQUEUE - 449)) | (1 << (PlSqlParser.ENTERPRISE - 449)) | (1 << (PlSqlParser.ENTITYESCAPING - 449)) | (1 << (PlSqlParser.ENTRY - 449)) | (1 << (PlSqlParser.EQUIPART - 449)) | (1 << (PlSqlParser.ERR - 449)) | (1 << (PlSqlParser.ERROR_ARGUMENT - 449)) | (1 << (PlSqlParser.ERROR - 449)) | (1 << (PlSqlParser.ERROR_ON_OVERLAP_TIME - 449)) | (1 << (PlSqlParser.ERRORS - 449)) | (1 << (PlSqlParser.ESCAPE - 449)) | (1 << (PlSqlParser.ESTIMATE - 449)) | (1 << (PlSqlParser.EVAL - 449)) | (1 << (PlSqlParser.EVALNAME - 449)) | (1 << (PlSqlParser.EVALUATE - 449)) | (1 << (PlSqlParser.EVALUATION - 449)) | (1 << (PlSqlParser.EVENTS - 449)) | (1 << (PlSqlParser.EVERY - 449)) | (1 << (PlSqlParser.EXCEPT - 449)) | (1 << (PlSqlParser.EXCEPTION - 449)) | (1 << (PlSqlParser.EXCEPTION_INIT - 449)) | (1 << (PlSqlParser.EXCEPTIONS - 449)) | (1 << (PlSqlParser.EXCHANGE - 449)) | (1 << (PlSqlParser.EXCLUDE - 449)) | (1 << (PlSqlParser.EXCLUDING - 449)) | (1 << (PlSqlParser.EXECUTE - 449)) | (1 << (PlSqlParser.EXEMPT - 449)) | (1 << (PlSqlParser.EXISTING - 449)) | (1 << (PlSqlParser.EXISTS - 449)) | (1 << (PlSqlParser.EXISTSNODE - 449)) | (1 << (PlSqlParser.EXIT - 449)))) !== 0) || ((((_la - 481)) & ~0x1f) == 0 && ((1 << (_la - 481)) & ((1 << (PlSqlParser.EXPAND_GSET_TO_UNION - 481)) | (1 << (PlSqlParser.EXPAND_TABLE - 481)) | (1 << (PlSqlParser.EXP - 481)) | (1 << (PlSqlParser.EXPIRE - 481)) | (1 << (PlSqlParser.EXPLAIN - 481)) | (1 << (PlSqlParser.EXPLOSION - 481)) | (1 << (PlSqlParser.EXPORT - 481)) | (1 << (PlSqlParser.EXPR_CORR_CHECK - 481)) | (1 << (PlSqlParser.EXPRESS - 481)) | (1 << (PlSqlParser.EXTENDS - 481)) | (1 << (PlSqlParser.EXTENT - 481)) | (1 << (PlSqlParser.EXTENTS - 481)) | (1 << (PlSqlParser.EXTERNAL - 481)) | (1 << (PlSqlParser.EXTERNALLY - 481)) | (1 << (PlSqlParser.EXTRACTCLOBXML - 481)) | (1 << (PlSqlParser.EXTRACT - 481)) | (1 << (PlSqlParser.EXTRACTVALUE - 481)) | (1 << (PlSqlParser.EXTRA - 481)) | (1 << (PlSqlParser.FACILITY - 481)) | (1 << (PlSqlParser.FACT - 481)) | (1 << (PlSqlParser.FACTOR - 481)) | (1 << (PlSqlParser.FACTORIZE_JOIN - 481)) | (1 << (PlSqlParser.FAILED - 481)) | (1 << (PlSqlParser.FAILED_LOGIN_ATTEMPTS - 481)) | (1 << (PlSqlParser.FAILGROUP - 481)) | (1 << (PlSqlParser.FAILOVER - 481)) | (1 << (PlSqlParser.FAILURE - 481)) | (1 << (PlSqlParser.FALSE - 481)) | (1 << (PlSqlParser.FAMILY - 481)) | (1 << (PlSqlParser.FAR - 481)) | (1 << (PlSqlParser.FAST - 481)) | (1 << (PlSqlParser.FASTSTART - 481)))) !== 0) || ((((_la - 513)) & ~0x1f) == 0 && ((1 << (_la - 513)) & ((1 << (PlSqlParser.FBTSCAN - 513)) | (1 << (PlSqlParser.FEATURE_DETAILS - 513)) | (1 << (PlSqlParser.FEATURE_ID - 513)) | (1 << (PlSqlParser.FEATURE_SET - 513)) | (1 << (PlSqlParser.FEATURE_VALUE - 513)) | (1 << (PlSqlParser.FETCH - 513)) | (1 << (PlSqlParser.FILE - 513)) | (1 << (PlSqlParser.FILE_NAME_CONVERT - 513)) | (1 << (PlSqlParser.FILESYSTEM_LIKE_LOGGING - 513)) | (1 << (PlSqlParser.FILTER - 513)) | (1 << (PlSqlParser.FINAL - 513)) | (1 << (PlSqlParser.FINE - 513)) | (1 << (PlSqlParser.FINISH - 513)) | (1 << (PlSqlParser.FIRST - 513)) | (1 << (PlSqlParser.FIRSTM - 513)) | (1 << (PlSqlParser.FIRST_ROWS - 513)) | (1 << (PlSqlParser.FIRST_VALUE - 513)) | (1 << (PlSqlParser.FIXED_VIEW_DATA - 513)) | (1 << (PlSqlParser.FLAGGER - 513)) | (1 << (PlSqlParser.FLASHBACK - 513)) | (1 << (PlSqlParser.FLASH_CACHE - 513)) | (1 << (PlSqlParser.FLOAT - 513)) | (1 << (PlSqlParser.FLOB - 513)) | (1 << (PlSqlParser.FLOOR - 513)) | (1 << (PlSqlParser.FLUSH - 513)) | (1 << (PlSqlParser.FOLDER - 513)) | (1 << (PlSqlParser.FOLLOWING - 513)) | (1 << (PlSqlParser.FOLLOWS - 513)) | (1 << (PlSqlParser.FORALL - 513)) | (1 << (PlSqlParser.FORCE - 513)) | (1 << (PlSqlParser.FORCE_XML_QUERY_REWRITE - 513)) | (1 << (PlSqlParser.FOREIGN - 513)))) !== 0) || ((((_la - 545)) & ~0x1f) == 0 && ((1 << (_la - 545)) & ((1 << (PlSqlParser.FOREVER - 545)) | (1 << (PlSqlParser.FORMAT - 545)) | (1 << (PlSqlParser.FORWARD - 545)) | (1 << (PlSqlParser.FRAGMENT_NUMBER - 545)) | (1 << (PlSqlParser.FREELIST - 545)) | (1 << (PlSqlParser.FREELISTS - 545)) | (1 << (PlSqlParser.FREEPOOLS - 545)) | (1 << (PlSqlParser.FRESH - 545)) | (1 << (PlSqlParser.FROM_TZ - 545)) | (1 << (PlSqlParser.FULL - 545)) | (1 << (PlSqlParser.FULL_OUTER_JOIN_TO_OUTER - 545)) | (1 << (PlSqlParser.FUNCTION - 545)) | (1 << (PlSqlParser.FUNCTIONS - 545)) | (1 << (PlSqlParser.GATHER_OPTIMIZER_STATISTICS - 545)) | (1 << (PlSqlParser.GATHER_PLAN_STATISTICS - 545)) | (1 << (PlSqlParser.GBY_CONC_ROLLUP - 545)) | (1 << (PlSqlParser.GBY_PUSHDOWN - 545)) | (1 << (PlSqlParser.GENERATED - 545)) | (1 << (PlSqlParser.GET - 545)) | (1 << (PlSqlParser.GLOBAL - 545)) | (1 << (PlSqlParser.GLOBALLY - 545)) | (1 << (PlSqlParser.GLOBAL_NAME - 545)) | (1 << (PlSqlParser.GLOBAL_TOPIC_ENABLED - 545)) | (1 << (PlSqlParser.GROUP_BY - 545)) | (1 << (PlSqlParser.GROUP_ID - 545)) | (1 << (PlSqlParser.GROUPING - 545)) | (1 << (PlSqlParser.GROUPING_ID - 545)))) !== 0) || ((((_la - 577)) & ~0x1f) == 0 && ((1 << (_la - 577)) & ((1 << (PlSqlParser.GROUPS - 577)) | (1 << (PlSqlParser.GUARANTEED - 577)) | (1 << (PlSqlParser.GUARANTEE - 577)) | (1 << (PlSqlParser.GUARD - 577)) | (1 << (PlSqlParser.HASH_AJ - 577)) | (1 << (PlSqlParser.HASH - 577)) | (1 << (PlSqlParser.HASHKEYS - 577)) | (1 << (PlSqlParser.HASH_SJ - 577)) | (1 << (PlSqlParser.HEADER - 577)) | (1 << (PlSqlParser.HEAP - 577)) | (1 << (PlSqlParser.HELP - 577)) | (1 << (PlSqlParser.HEXTORAW - 577)) | (1 << (PlSqlParser.HEXTOREF - 577)) | (1 << (PlSqlParser.HIDDEN_KEYWORD - 577)) | (1 << (PlSqlParser.HIDE - 577)) | (1 << (PlSqlParser.HIERARCHY - 577)) | (1 << (PlSqlParser.HIGH - 577)) | (1 << (PlSqlParser.HINTSET_BEGIN - 577)) | (1 << (PlSqlParser.HINTSET_END - 577)) | (1 << (PlSqlParser.HOT - 577)) | (1 << (PlSqlParser.HOUR - 577)) | (1 << (PlSqlParser.HWM_BROKERED - 577)) | (1 << (PlSqlParser.HYBRID - 577)) | (1 << (PlSqlParser.IDENTIFIER - 577)) | (1 << (PlSqlParser.IDENTITY - 577)) | (1 << (PlSqlParser.IDGENERATORS - 577)) | (1 << (PlSqlParser.ID - 577)) | (1 << (PlSqlParser.IDLE_TIME - 577)) | (1 << (PlSqlParser.IF - 577)) | (1 << (PlSqlParser.IGNORE - 577)))) !== 0) || ((((_la - 609)) & ~0x1f) == 0 && ((1 << (_la - 609)) & ((1 << (PlSqlParser.IGNORE_OPTIM_EMBEDDED_HINTS - 609)) | (1 << (PlSqlParser.IGNORE_ROW_ON_DUPKEY_INDEX - 609)) | (1 << (PlSqlParser.IGNORE_WHERE_CLAUSE - 609)) | (1 << (PlSqlParser.ILM - 609)) | (1 << (PlSqlParser.IMMEDIATE - 609)) | (1 << (PlSqlParser.IMPACT - 609)) | (1 << (PlSqlParser.IMPORT - 609)) | (1 << (PlSqlParser.INACTIVE - 609)) | (1 << (PlSqlParser.INCLUDE - 609)) | (1 << (PlSqlParser.INCLUDE_VERSION - 609)) | (1 << (PlSqlParser.INCLUDING - 609)) | (1 << (PlSqlParser.INCREMENTAL - 609)) | (1 << (PlSqlParser.INCREMENT - 609)) | (1 << (PlSqlParser.INCR - 609)) | (1 << (PlSqlParser.INDENT - 609)) | (1 << (PlSqlParser.INDEX_ASC - 609)) | (1 << (PlSqlParser.INDEX_COMBINE - 609)) | (1 << (PlSqlParser.INDEX_DESC - 609)) | (1 << (PlSqlParser.INDEXED - 609)) | (1 << (PlSqlParser.INDEXES - 609)) | (1 << (PlSqlParser.INDEX_FFS - 609)) | (1 << (PlSqlParser.INDEX_FILTER - 609)) | (1 << (PlSqlParser.INDEXING - 609)) | (1 << (PlSqlParser.INDEX_JOIN - 609)) | (1 << (PlSqlParser.INDEX_ROWS - 609)) | (1 << (PlSqlParser.INDEX_RRS - 609)) | (1 << (PlSqlParser.INDEX_RS_ASC - 609)) | (1 << (PlSqlParser.INDEX_RS_DESC - 609)) | (1 << (PlSqlParser.INDEX_RS - 609)) | (1 << (PlSqlParser.INDEX_SCAN - 609)) | (1 << (PlSqlParser.INDEX_SKIP_SCAN - 609)))) !== 0) || ((((_la - 641)) & ~0x1f) == 0 && ((1 << (_la - 641)) & ((1 << (PlSqlParser.INDEX_SS_ASC - 641)) | (1 << (PlSqlParser.INDEX_SS_DESC - 641)) | (1 << (PlSqlParser.INDEX_SS - 641)) | (1 << (PlSqlParser.INDEX_STATS - 641)) | (1 << (PlSqlParser.INDEXTYPE - 641)) | (1 << (PlSqlParser.INDEXTYPES - 641)) | (1 << (PlSqlParser.INDICATOR - 641)) | (1 << (PlSqlParser.INDICES - 641)) | (1 << (PlSqlParser.INFINITE - 641)) | (1 << (PlSqlParser.INFORMATIONAL - 641)) | (1 << (PlSqlParser.INHERIT - 641)) | (1 << (PlSqlParser.INITCAP - 641)) | (1 << (PlSqlParser.INITIAL - 641)) | (1 << (PlSqlParser.INITIALIZED - 641)) | (1 << (PlSqlParser.INITIALLY - 641)) | (1 << (PlSqlParser.INITRANS - 641)) | (1 << (PlSqlParser.INLINE - 641)) | (1 << (PlSqlParser.INLINE_XMLTYPE_NT - 641)) | (1 << (PlSqlParser.INMEMORY - 641)) | (1 << (PlSqlParser.IN_MEMORY_METADATA - 641)) | (1 << (PlSqlParser.INMEMORY_PRUNING - 641)) | (1 << (PlSqlParser.INNER - 641)) | (1 << (PlSqlParser.INOUT - 641)) | (1 << (PlSqlParser.INPLACE - 641)) | (1 << (PlSqlParser.INSERTCHILDXMLAFTER - 641)) | (1 << (PlSqlParser.INSERTCHILDXMLBEFORE - 641)) | (1 << (PlSqlParser.INSERTCHILDXML - 641)) | (1 << (PlSqlParser.INSERTXMLAFTER - 641)) | (1 << (PlSqlParser.INSERTXMLBEFORE - 641)) | (1 << (PlSqlParser.INSTANCE - 641)))) !== 0) || ((((_la - 673)) & ~0x1f) == 0 && ((1 << (_la - 673)) & ((1 << (PlSqlParser.INSTANCES - 673)) | (1 << (PlSqlParser.INSTANTIABLE - 673)) | (1 << (PlSqlParser.INSTANTLY - 673)) | (1 << (PlSqlParser.INSTEAD - 673)) | (1 << (PlSqlParser.INSTR2 - 673)) | (1 << (PlSqlParser.INSTR4 - 673)) | (1 << (PlSqlParser.INSTRB - 673)) | (1 << (PlSqlParser.INSTRC - 673)) | (1 << (PlSqlParser.INSTR - 673)) | (1 << (PlSqlParser.INTEGER - 673)) | (1 << (PlSqlParser.INTERLEAVED - 673)) | (1 << (PlSqlParser.INTERMEDIATE - 673)) | (1 << (PlSqlParser.INTERNAL_CONVERT - 673)) | (1 << (PlSqlParser.INTERNAL_USE - 673)) | (1 << (PlSqlParser.INTERPRETED - 673)) | (1 << (PlSqlParser.INTERVAL - 673)) | (1 << (PlSqlParser.INT - 673)) | (1 << (PlSqlParser.INVALIDATE - 673)) | (1 << (PlSqlParser.INVISIBLE - 673)) | (1 << (PlSqlParser.IN_XQUERY - 673)) | (1 << (PlSqlParser.ISOLATION - 673)) | (1 << (PlSqlParser.ISOLATION_LEVEL - 673)) | (1 << (PlSqlParser.ITERATE - 673)) | (1 << (PlSqlParser.ITERATION_NUMBER - 673)) | (1 << (PlSqlParser.JAVA - 673)) | (1 << (PlSqlParser.JOB - 673)) | (1 << (PlSqlParser.JOIN - 673)) | (1 << (PlSqlParser.JSON_ARRAYAGG - 673)) | (1 << (PlSqlParser.JSON_ARRAY - 673)))) !== 0) || ((((_la - 705)) & ~0x1f) == 0 && ((1 << (_la - 705)) & ((1 << (PlSqlParser.JSON_EQUAL - 705)) | (1 << (PlSqlParser.JSON_EXISTS2 - 705)) | (1 << (PlSqlParser.JSON_EXISTS - 705)) | (1 << (PlSqlParser.JSONGET - 705)) | (1 << (PlSqlParser.JSON - 705)) | (1 << (PlSqlParser.JSON_OBJECTAGG - 705)) | (1 << (PlSqlParser.JSON_OBJECT - 705)) | (1 << (PlSqlParser.JSONPARSE - 705)) | (1 << (PlSqlParser.JSON_QUERY - 705)) | (1 << (PlSqlParser.JSON_SERIALIZE - 705)) | (1 << (PlSqlParser.JSON_TABLE - 705)) | (1 << (PlSqlParser.JSON_TEXTCONTAINS2 - 705)) | (1 << (PlSqlParser.JSON_TEXTCONTAINS - 705)) | (1 << (PlSqlParser.JSON_VALUE - 705)) | (1 << (PlSqlParser.KEEP_DUPLICATES - 705)) | (1 << (PlSqlParser.KEEP - 705)) | (1 << (PlSqlParser.KERBEROS - 705)) | (1 << (PlSqlParser.KEY - 705)) | (1 << (PlSqlParser.KEY_LENGTH - 705)) | (1 << (PlSqlParser.KEYSIZE - 705)) | (1 << (PlSqlParser.KEYS - 705)) | (1 << (PlSqlParser.KEYSTORE - 705)) | (1 << (PlSqlParser.KILL - 705)) | (1 << (PlSqlParser.LABEL - 705)) | (1 << (PlSqlParser.LANGUAGE - 705)) | (1 << (PlSqlParser.LAST_DAY - 705)) | (1 << (PlSqlParser.LAST - 705)) | (1 << (PlSqlParser.LAST_VALUE - 705)) | (1 << (PlSqlParser.LATERAL - 705)) | (1 << (PlSqlParser.LAX - 705)) | (1 << (PlSqlParser.LAYER - 705)) | (1 << (PlSqlParser.LDAP_REGISTRATION_ENABLED - 705)))) !== 0) || ((((_la - 737)) & ~0x1f) == 0 && ((1 << (_la - 737)) & ((1 << (PlSqlParser.LDAP_REGISTRATION - 737)) | (1 << (PlSqlParser.LDAP_REG_SYNC_INTERVAL - 737)) | (1 << (PlSqlParser.LEADING - 737)) | (1 << (PlSqlParser.LEFT - 737)) | (1 << (PlSqlParser.LENGTH2 - 737)) | (1 << (PlSqlParser.LENGTH4 - 737)) | (1 << (PlSqlParser.LENGTHB - 737)) | (1 << (PlSqlParser.LENGTHC - 737)) | (1 << (PlSqlParser.LENGTH - 737)) | (1 << (PlSqlParser.LESS - 737)) | (1 << (PlSqlParser.LEVEL - 737)) | (1 << (PlSqlParser.LEVELS - 737)) | (1 << (PlSqlParser.LIBRARY - 737)) | (1 << (PlSqlParser.LIFECYCLE - 737)) | (1 << (PlSqlParser.LIFE - 737)) | (1 << (PlSqlParser.LIFETIME - 737)) | (1 << (PlSqlParser.LIKE2 - 737)) | (1 << (PlSqlParser.LIKE4 - 737)) | (1 << (PlSqlParser.LIKEC - 737)) | (1 << (PlSqlParser.LIKE_EXPAND - 737)) | (1 << (PlSqlParser.LIMIT - 737)) | (1 << (PlSqlParser.LINEAR - 737)) | (1 << (PlSqlParser.LINK - 737)) | (1 << (PlSqlParser.LIST - 737)) | (1 << (PlSqlParser.LN - 737)) | (1 << (PlSqlParser.LNNVL - 737)) | (1 << (PlSqlParser.LOAD - 737)) | (1 << (PlSqlParser.LOB - 737)) | (1 << (PlSqlParser.LOBNVL - 737)) | (1 << (PlSqlParser.LOBS - 737)) | (1 << (PlSqlParser.LOCAL_INDEXES - 737)))) !== 0) || ((((_la - 769)) & ~0x1f) == 0 && ((1 << (_la - 769)) & ((1 << (PlSqlParser.LOCAL - 769)) | (1 << (PlSqlParser.LOCALTIME - 769)) | (1 << (PlSqlParser.LOCALTIMESTAMP - 769)) | (1 << (PlSqlParser.LOCATION - 769)) | (1 << (PlSqlParser.LOCATOR - 769)) | (1 << (PlSqlParser.LOCKED - 769)) | (1 << (PlSqlParser.LOCKING - 769)) | (1 << (PlSqlParser.LOGFILE - 769)) | (1 << (PlSqlParser.LOGFILES - 769)) | (1 << (PlSqlParser.LOGGING - 769)) | (1 << (PlSqlParser.LOGICAL - 769)) | (1 << (PlSqlParser.LOGICAL_READS_PER_CALL - 769)) | (1 << (PlSqlParser.LOGICAL_READS_PER_SESSION - 769)) | (1 << (PlSqlParser.LOG - 769)) | (1 << (PlSqlParser.LOGMINING - 769)) | (1 << (PlSqlParser.LOGOFF - 769)) | (1 << (PlSqlParser.LOGON - 769)) | (1 << (PlSqlParser.LOG_READ_ONLY_VIOLATIONS - 769)) | (1 << (PlSqlParser.LONG - 769)) | (1 << (PlSqlParser.LOOP - 769)) | (1 << (PlSqlParser.LOWER - 769)) | (1 << (PlSqlParser.LOW - 769)) | (1 << (PlSqlParser.LPAD - 769)) | (1 << (PlSqlParser.LTRIM - 769)) | (1 << (PlSqlParser.MAIN - 769)) | (1 << (PlSqlParser.MAKE_REF - 769)) | (1 << (PlSqlParser.MANAGED - 769)) | (1 << (PlSqlParser.MANAGE - 769)) | (1 << (PlSqlParser.MANAGEMENT - 769)) | (1 << (PlSqlParser.MANAGER - 769)) | (1 << (PlSqlParser.MANUAL - 769)))) !== 0) || ((((_la - 801)) & ~0x1f) == 0 && ((1 << (_la - 801)) & ((1 << (PlSqlParser.MAP - 801)) | (1 << (PlSqlParser.MAPPING - 801)) | (1 << (PlSqlParser.MASTER - 801)) | (1 << (PlSqlParser.MATCHED - 801)) | (1 << (PlSqlParser.MATCHES - 801)) | (1 << (PlSqlParser.MATCH - 801)) | (1 << (PlSqlParser.MATCH_NUMBER - 801)) | (1 << (PlSqlParser.MATCH_RECOGNIZE - 801)) | (1 << (PlSqlParser.MATERIALIZED - 801)) | (1 << (PlSqlParser.MATERIALIZE - 801)) | (1 << (PlSqlParser.MAXARCHLOGS - 801)) | (1 << (PlSqlParser.MAXDATAFILES - 801)) | (1 << (PlSqlParser.MAXEXTENTS - 801)) | (1 << (PlSqlParser.MAXIMIZE - 801)) | (1 << (PlSqlParser.MAXINSTANCES - 801)) | (1 << (PlSqlParser.MAXLOGFILES - 801)) | (1 << (PlSqlParser.MAXLOGHISTORY - 801)) | (1 << (PlSqlParser.MAXLOGMEMBERS - 801)) | (1 << (PlSqlParser.MAX_SHARED_TEMP_SIZE - 801)) | (1 << (PlSqlParser.MAXSIZE - 801)) | (1 << (PlSqlParser.MAXTRANS - 801)) | (1 << (PlSqlParser.MAXVALUE - 801)) | (1 << (PlSqlParser.MEASURE - 801)) | (1 << (PlSqlParser.MEASURES - 801)) | (1 << (PlSqlParser.MEDIUM - 801)) | (1 << (PlSqlParser.MEMBER - 801)) | (1 << (PlSqlParser.MEMCOMPRESS - 801)) | (1 << (PlSqlParser.MEMORY - 801)) | (1 << (PlSqlParser.MERGEACTIONS - 801)) | (1 << (PlSqlParser.MERGE_AJ - 801)) | (1 << (PlSqlParser.MERGE_CONST_ON - 801)) | (1 << (PlSqlParser.MERGE - 801)))) !== 0) || ((((_la - 833)) & ~0x1f) == 0 && ((1 << (_la - 833)) & ((1 << (PlSqlParser.MERGE_SJ - 833)) | (1 << (PlSqlParser.METADATA - 833)) | (1 << (PlSqlParser.METHOD - 833)) | (1 << (PlSqlParser.MIGRATE - 833)) | (1 << (PlSqlParser.MIGRATION - 833)) | (1 << (PlSqlParser.MINEXTENTS - 833)) | (1 << (PlSqlParser.MINIMIZE - 833)) | (1 << (PlSqlParser.MINIMUM - 833)) | (1 << (PlSqlParser.MINING - 833)) | (1 << (PlSqlParser.MINUS_NULL - 833)) | (1 << (PlSqlParser.MINUTE - 833)) | (1 << (PlSqlParser.MINVALUE - 833)) | (1 << (PlSqlParser.MIRRORCOLD - 833)) | (1 << (PlSqlParser.MIRRORHOT - 833)) | (1 << (PlSqlParser.MIRROR - 833)) | (1 << (PlSqlParser.MLSLABEL - 833)) | (1 << (PlSqlParser.MODEL_COMPILE_SUBQUERY - 833)) | (1 << (PlSqlParser.MODEL_DONTVERIFY_UNIQUENESS - 833)) | (1 << (PlSqlParser.MODEL_DYNAMIC_SUBQUERY - 833)) | (1 << (PlSqlParser.MODEL_MIN_ANALYSIS - 833)) | (1 << (PlSqlParser.MODEL - 833)) | (1 << (PlSqlParser.MODEL_NB - 833)) | (1 << (PlSqlParser.MODEL_NO_ANALYSIS - 833)) | (1 << (PlSqlParser.MODEL_PBY - 833)) | (1 << (PlSqlParser.MODEL_PUSH_REF - 833)) | (1 << (PlSqlParser.MODEL_SV - 833)) | (1 << (PlSqlParser.MODIFICATION - 833)) | (1 << (PlSqlParser.MODIFY_COLUMN_TYPE - 833)) | (1 << (PlSqlParser.MODIFY - 833)) | (1 << (PlSqlParser.MOD - 833)))) !== 0) || ((((_la - 865)) & ~0x1f) == 0 && ((1 << (_la - 865)) & ((1 << (PlSqlParser.MODULE - 865)) | (1 << (PlSqlParser.MONITORING - 865)) | (1 << (PlSqlParser.MONITOR - 865)) | (1 << (PlSqlParser.MONTH - 865)) | (1 << (PlSqlParser.MONTHS_BETWEEN - 865)) | (1 << (PlSqlParser.MONTHS - 865)) | (1 << (PlSqlParser.MOUNT - 865)) | (1 << (PlSqlParser.MOUNTPATH - 865)) | (1 << (PlSqlParser.MOVEMENT - 865)) | (1 << (PlSqlParser.MOVE - 865)) | (1 << (PlSqlParser.MULTIDIMENSIONAL - 865)) | (1 << (PlSqlParser.MULTISET - 865)) | (1 << (PlSqlParser.MV_MERGE - 865)) | (1 << (PlSqlParser.NAMED - 865)) | (1 << (PlSqlParser.NAME - 865)) | (1 << (PlSqlParser.NAMESPACE - 865)) | (1 << (PlSqlParser.NAN - 865)) | (1 << (PlSqlParser.NANVL - 865)) | (1 << (PlSqlParser.NATIONAL - 865)) | (1 << (PlSqlParser.NATIVE_FULL_OUTER_JOIN - 865)) | (1 << (PlSqlParser.NATIVE - 865)) | (1 << (PlSqlParser.NATURAL - 865)) | (1 << (PlSqlParser.NAV - 865)) | (1 << (PlSqlParser.NCHAR_CS - 865)) | (1 << (PlSqlParser.NCHAR - 865)) | (1 << (PlSqlParser.NCHR - 865)) | (1 << (PlSqlParser.NCLOB - 865)) | (1 << (PlSqlParser.NEEDED - 865)) | (1 << (PlSqlParser.NEG - 865)) | (1 << (PlSqlParser.NESTED - 865)) | (1 << (PlSqlParser.NESTED_TABLE_FAST_INSERT - 865)))) !== 0) || ((((_la - 897)) & ~0x1f) == 0 && ((1 << (_la - 897)) & ((1 << (PlSqlParser.NESTED_TABLE_GET_REFS - 897)) | (1 << (PlSqlParser.NESTED_TABLE_ID - 897)) | (1 << (PlSqlParser.NESTED_TABLE_SET_REFS - 897)) | (1 << (PlSqlParser.NESTED_TABLE_SET_SETID - 897)) | (1 << (PlSqlParser.NETWORK - 897)) | (1 << (PlSqlParser.NEVER - 897)) | (1 << (PlSqlParser.NEW - 897)) | (1 << (PlSqlParser.NEW_TIME - 897)) | (1 << (PlSqlParser.NEXT_DAY - 897)) | (1 << (PlSqlParser.NEXT - 897)) | (1 << (PlSqlParser.NL_AJ - 897)) | (1 << (PlSqlParser.NLJ_BATCHING - 897)) | (1 << (PlSqlParser.NLJ_INDEX_FILTER - 897)) | (1 << (PlSqlParser.NLJ_INDEX_SCAN - 897)) | (1 << (PlSqlParser.NLJ_PREFETCH - 897)) | (1 << (PlSqlParser.NLS_CALENDAR - 897)) | (1 << (PlSqlParser.NLS_CHARACTERSET - 897)) | (1 << (PlSqlParser.NLS_CHARSET_DECL_LEN - 897)) | (1 << (PlSqlParser.NLS_CHARSET_ID - 897)) | (1 << (PlSqlParser.NLS_CHARSET_NAME - 897)) | (1 << (PlSqlParser.NLS_COMP - 897)) | (1 << (PlSqlParser.NLS_CURRENCY - 897)) | (1 << (PlSqlParser.NLS_DATE_FORMAT - 897)) | (1 << (PlSqlParser.NLS_DATE_LANGUAGE - 897)) | (1 << (PlSqlParser.NLS_INITCAP - 897)) | (1 << (PlSqlParser.NLS_ISO_CURRENCY - 897)) | (1 << (PlSqlParser.NL_SJ - 897)) | (1 << (PlSqlParser.NLS_LANG - 897)) | (1 << (PlSqlParser.NLS_LANGUAGE - 897)) | (1 << (PlSqlParser.NLS_LENGTH_SEMANTICS - 897)) | (1 << (PlSqlParser.NLS_LOWER - 897)) | (1 << (PlSqlParser.NLS_NCHAR_CONV_EXCP - 897)))) !== 0) || ((((_la - 929)) & ~0x1f) == 0 && ((1 << (_la - 929)) & ((1 << (PlSqlParser.NLS_NUMERIC_CHARACTERS - 929)) | (1 << (PlSqlParser.NLS_SORT - 929)) | (1 << (PlSqlParser.NLSSORT - 929)) | (1 << (PlSqlParser.NLS_SPECIAL_CHARS - 929)) | (1 << (PlSqlParser.NLS_TERRITORY - 929)) | (1 << (PlSqlParser.NLS_UPPER - 929)) | (1 << (PlSqlParser.NO_ACCESS - 929)) | (1 << (PlSqlParser.NO_ADAPTIVE_PLAN - 929)) | (1 << (PlSqlParser.NO_ANSI_REARCH - 929)) | (1 << (PlSqlParser.NOAPPEND - 929)) | (1 << (PlSqlParser.NOARCHIVELOG - 929)) | (1 << (PlSqlParser.NOAUDIT - 929)) | (1 << (PlSqlParser.NO_AUTO_REOPTIMIZE - 929)) | (1 << (PlSqlParser.NO_BASETABLE_MULTIMV_REWRITE - 929)) | (1 << (PlSqlParser.NO_BATCH_TABLE_ACCESS_BY_ROWID - 929)) | (1 << (PlSqlParser.NO_BIND_AWARE - 929)) | (1 << (PlSqlParser.NO_BUFFER - 929)) | (1 << (PlSqlParser.NOCACHE - 929)) | (1 << (PlSqlParser.NO_CARTESIAN - 929)) | (1 << (PlSqlParser.NO_CHECK_ACL_REWRITE - 929)) | (1 << (PlSqlParser.NO_CLUSTER_BY_ROWID - 929)) | (1 << (PlSqlParser.NO_CLUSTERING - 929)) | (1 << (PlSqlParser.NO_COALESCE_SQ - 929)) | (1 << (PlSqlParser.NO_COMMON_DATA - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_CB_WHR_ONLY - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_COMBINE_SW - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_COST_BASED - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_ELIM_DUPS - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_FILTERING - 929)) | (1 << (PlSqlParser.NOCOPY - 929)) | (1 << (PlSqlParser.NO_COST_XML_QUERY_REWRITE - 929)))) !== 0) || ((((_la - 961)) & ~0x1f) == 0 && ((1 << (_la - 961)) & ((1 << (PlSqlParser.NO_CPU_COSTING - 961)) | (1 << (PlSqlParser.NOCPU_COSTING - 961)) | (1 << (PlSqlParser.NOCYCLE - 961)) | (1 << (PlSqlParser.NO_DATA_SECURITY_REWRITE - 961)) | (1 << (PlSqlParser.NO_DECORRELATE - 961)) | (1 << (PlSqlParser.NODELAY - 961)) | (1 << (PlSqlParser.NO_DOMAIN_INDEX_FILTER - 961)) | (1 << (PlSqlParser.NO_DST_UPGRADE_INSERT_CONV - 961)) | (1 << (PlSqlParser.NO_ELIM_GROUPBY - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_JOIN - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_OBY - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_OUTER_JOIN - 961)) | (1 << (PlSqlParser.NOENTITYESCAPING - 961)) | (1 << (PlSqlParser.NO_EXPAND_GSET_TO_UNION - 961)) | (1 << (PlSqlParser.NO_EXPAND - 961)) | (1 << (PlSqlParser.NO_EXPAND_TABLE - 961)) | (1 << (PlSqlParser.NO_FACT - 961)) | (1 << (PlSqlParser.NO_FACTORIZE_JOIN - 961)) | (1 << (PlSqlParser.NO_FILTERING - 961)) | (1 << (PlSqlParser.NOFORCE - 961)) | (1 << (PlSqlParser.NO_FULL_OUTER_JOIN_TO_OUTER - 961)) | (1 << (PlSqlParser.NO_GATHER_OPTIMIZER_STATISTICS - 961)) | (1 << (PlSqlParser.NO_GBY_PUSHDOWN - 961)) | (1 << (PlSqlParser.NOGUARANTEE - 961)) | (1 << (PlSqlParser.NO_INDEX_FFS - 961)) | (1 << (PlSqlParser.NO_INDEX - 961)) | (1 << (PlSqlParser.NO_INDEX_SS - 961)) | (1 << (PlSqlParser.NO_INMEMORY - 961)) | (1 << (PlSqlParser.NO_INMEMORY_PRUNING - 961)) | (1 << (PlSqlParser.NOKEEP - 961)) | (1 << (PlSqlParser.NO_LOAD - 961)) | (1 << (PlSqlParser.NOLOCAL - 961)))) !== 0) || ((((_la - 993)) & ~0x1f) == 0 && ((1 << (_la - 993)) & ((1 << (PlSqlParser.NOLOGGING - 993)) | (1 << (PlSqlParser.NOMAPPING - 993)) | (1 << (PlSqlParser.NOMAXVALUE - 993)) | (1 << (PlSqlParser.NO_MERGE - 993)) | (1 << (PlSqlParser.NOMINIMIZE - 993)) | (1 << (PlSqlParser.NOMINVALUE - 993)) | (1 << (PlSqlParser.NO_MODEL_PUSH_REF - 993)) | (1 << (PlSqlParser.NO_MONITORING - 993)) | (1 << (PlSqlParser.NOMONITORING - 993)) | (1 << (PlSqlParser.NO_MONITOR - 993)) | (1 << (PlSqlParser.NO_MULTIMV_REWRITE - 993)) | (1 << (PlSqlParser.NO_NATIVE_FULL_OUTER_JOIN - 993)) | (1 << (PlSqlParser.NONBLOCKING - 993)) | (1 << (PlSqlParser.NONEDITIONABLE - 993)) | (1 << (PlSqlParser.NONE - 993)) | (1 << (PlSqlParser.NO_NLJ_BATCHING - 993)) | (1 << (PlSqlParser.NO_NLJ_PREFETCH - 993)) | (1 << (PlSqlParser.NO - 993)) | (1 << (PlSqlParser.NONSCHEMA - 993)) | (1 << (PlSqlParser.NO_OBJECT_LINK - 993)) | (1 << (PlSqlParser.NOORDER - 993)) | (1 << (PlSqlParser.NO_ORDER_ROLLUPS - 993)) | (1 << (PlSqlParser.NO_OUTER_JOIN_TO_ANTI - 993)) | (1 << (PlSqlParser.NO_OUTER_JOIN_TO_INNER - 993)) | (1 << (PlSqlParser.NOOVERRIDE - 993)) | (1 << (PlSqlParser.NO_PARALLEL_INDEX - 993)) | (1 << (PlSqlParser.NOPARALLEL_INDEX - 993)) | (1 << (PlSqlParser.NO_PARALLEL - 993)) | (1 << (PlSqlParser.NOPARALLEL - 993)) | (1 << (PlSqlParser.NO_PARTIAL_COMMIT - 993)) | (1 << (PlSqlParser.NO_PARTIAL_JOIN - 993)) | (1 << (PlSqlParser.NO_PARTIAL_ROLLUP_PUSHDOWN - 993)))) !== 0) || ((((_la - 1025)) & ~0x1f) == 0 && ((1 << (_la - 1025)) & ((1 << (PlSqlParser.NOPARTITION - 1025)) | (1 << (PlSqlParser.NO_PLACE_DISTINCT - 1025)) | (1 << (PlSqlParser.NO_PLACE_GROUP_BY - 1025)) | (1 << (PlSqlParser.NO_PQ_CONCURRENT_UNION - 1025)) | (1 << (PlSqlParser.NO_PQ_MAP - 1025)) | (1 << (PlSqlParser.NO_PQ_REPLICATE - 1025)) | (1 << (PlSqlParser.NO_PQ_SKEW - 1025)) | (1 << (PlSqlParser.NO_PRUNE_GSETS - 1025)) | (1 << (PlSqlParser.NO_PULL_PRED - 1025)) | (1 << (PlSqlParser.NO_PUSH_PRED - 1025)) | (1 << (PlSqlParser.NO_PUSH_SUBQ - 1025)) | (1 << (PlSqlParser.NO_PX_FAULT_TOLERANCE - 1025)) | (1 << (PlSqlParser.NO_PX_JOIN_FILTER - 1025)) | (1 << (PlSqlParser.NO_QKN_BUFF - 1025)) | (1 << (PlSqlParser.NO_QUERY_TRANSFORMATION - 1025)) | (1 << (PlSqlParser.NO_REF_CASCADE - 1025)) | (1 << (PlSqlParser.NORELOCATE - 1025)) | (1 << (PlSqlParser.NORELY - 1025)) | (1 << (PlSqlParser.NOREPAIR - 1025)) | (1 << (PlSqlParser.NOREPLAY - 1025)) | (1 << (PlSqlParser.NORESETLOGS - 1025)) | (1 << (PlSqlParser.NO_RESULT_CACHE - 1025)) | (1 << (PlSqlParser.NOREVERSE - 1025)) | (1 << (PlSqlParser.NO_REWRITE - 1025)) | (1 << (PlSqlParser.NOREWRITE - 1025)) | (1 << (PlSqlParser.NORMAL - 1025)) | (1 << (PlSqlParser.NO_ROOT_SW_FOR_LOCAL - 1025)) | (1 << (PlSqlParser.NOROWDEPENDENCIES - 1025)) | (1 << (PlSqlParser.NOSCHEMACHECK - 1025)) | (1 << (PlSqlParser.NOSEGMENT - 1025)) | (1 << (PlSqlParser.NO_SEMIJOIN - 1025)) | (1 << (PlSqlParser.NO_SEMI_TO_INNER - 1025)))) !== 0) || ((((_la - 1057)) & ~0x1f) == 0 && ((1 << (_la - 1057)) & ((1 << (PlSqlParser.NO_SET_TO_JOIN - 1057)) | (1 << (PlSqlParser.NOSORT - 1057)) | (1 << (PlSqlParser.NO_SQL_TRANSLATION - 1057)) | (1 << (PlSqlParser.NO_SQL_TUNE - 1057)) | (1 << (PlSqlParser.NO_STAR_TRANSFORMATION - 1057)) | (1 << (PlSqlParser.NO_STATEMENT_QUEUING - 1057)) | (1 << (PlSqlParser.NO_STATS_GSETS - 1057)) | (1 << (PlSqlParser.NOSTRICT - 1057)) | (1 << (PlSqlParser.NO_SUBQUERY_PRUNING - 1057)) | (1 << (PlSqlParser.NO_SUBSTRB_PAD - 1057)) | (1 << (PlSqlParser.NO_SWAP_JOIN_INPUTS - 1057)) | (1 << (PlSqlParser.NOSWITCH - 1057)) | (1 << (PlSqlParser.NO_TABLE_LOOKUP_BY_NL - 1057)) | (1 << (PlSqlParser.NO_TEMP_TABLE - 1057)) | (1 << (PlSqlParser.NOTHING - 1057)) | (1 << (PlSqlParser.NOTIFICATION - 1057)) | (1 << (PlSqlParser.NO_TRANSFORM_DISTINCT_AGG - 1057)) | (1 << (PlSqlParser.NO_UNNEST - 1057)) | (1 << (PlSqlParser.NO_USE_CUBE - 1057)) | (1 << (PlSqlParser.NO_USE_HASH_AGGREGATION - 1057)) | (1 << (PlSqlParser.NO_USE_HASH_GBY_FOR_PUSHDOWN - 1057)) | (1 << (PlSqlParser.NO_USE_HASH - 1057)) | (1 << (PlSqlParser.NO_USE_INVISIBLE_INDEXES - 1057)) | (1 << (PlSqlParser.NO_USE_MERGE - 1057)) | (1 << (PlSqlParser.NO_USE_NL - 1057)) | (1 << (PlSqlParser.NO_USE_VECTOR_AGGREGATION - 1057)) | (1 << (PlSqlParser.NOVALIDATE - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM_DIMS - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM_FACT - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM - 1057)))) !== 0) || ((((_la - 1089)) & ~0x1f) == 0 && ((1 << (_la - 1089)) & ((1 << (PlSqlParser.NO_XDB_FASTPATH_INSERT - 1089)) | (1 << (PlSqlParser.NO_XML_DML_REWRITE - 1089)) | (1 << (PlSqlParser.NO_XMLINDEX_REWRITE_IN_SELECT - 1089)) | (1 << (PlSqlParser.NO_XMLINDEX_REWRITE - 1089)) | (1 << (PlSqlParser.NO_XML_QUERY_REWRITE - 1089)) | (1 << (PlSqlParser.NO_ZONEMAP - 1089)) | (1 << (PlSqlParser.NTH_VALUE - 1089)) | (1 << (PlSqlParser.NULLIF - 1089)) | (1 << (PlSqlParser.NULLS - 1089)) | (1 << (PlSqlParser.NUMBER - 1089)) | (1 << (PlSqlParser.NUMERIC - 1089)) | (1 << (PlSqlParser.NUM_INDEX_KEYS - 1089)) | (1 << (PlSqlParser.NUMTODSINTERVAL - 1089)) | (1 << (PlSqlParser.NUMTOYMINTERVAL - 1089)) | (1 << (PlSqlParser.NVARCHAR2 - 1089)) | (1 << (PlSqlParser.NVL2 - 1089)) | (1 << (PlSqlParser.OBJECT2XML - 1089)) | (1 << (PlSqlParser.OBJECT - 1089)) | (1 << (PlSqlParser.OBJ_ID - 1089)) | (1 << (PlSqlParser.OBJNO - 1089)) | (1 << (PlSqlParser.OBJNO_REUSE - 1089)) | (1 << (PlSqlParser.OCCURENCES - 1089)) | (1 << (PlSqlParser.OFFLINE - 1089)) | (1 << (PlSqlParser.OFF - 1089)) | (1 << (PlSqlParser.OFFSET - 1089)) | (1 << (PlSqlParser.OIDINDEX - 1089)) | (1 << (PlSqlParser.OID - 1089)) | (1 << (PlSqlParser.OLAP - 1089)) | (1 << (PlSqlParser.OLD - 1089)) | (1 << (PlSqlParser.OLD_PUSH_PRED - 1089)))) !== 0) || ((((_la - 1121)) & ~0x1f) == 0 && ((1 << (_la - 1121)) & ((1 << (PlSqlParser.OLS - 1121)) | (1 << (PlSqlParser.OLTP - 1121)) | (1 << (PlSqlParser.OMIT - 1121)) | (1 << (PlSqlParser.ONE - 1121)) | (1 << (PlSqlParser.ONLINE - 1121)) | (1 << (PlSqlParser.ONLY - 1121)) | (1 << (PlSqlParser.OPAQUE - 1121)) | (1 << (PlSqlParser.OPAQUE_TRANSFORM - 1121)) | (1 << (PlSqlParser.OPAQUE_XCANONICAL - 1121)) | (1 << (PlSqlParser.OPCODE - 1121)) | (1 << (PlSqlParser.OPEN - 1121)) | (1 << (PlSqlParser.OPERATIONS - 1121)) | (1 << (PlSqlParser.OPERATOR - 1121)) | (1 << (PlSqlParser.OPT_ESTIMATE - 1121)) | (1 << (PlSqlParser.OPTIMAL - 1121)) | (1 << (PlSqlParser.OPTIMIZE - 1121)) | (1 << (PlSqlParser.OPTIMIZER_FEATURES_ENABLE - 1121)) | (1 << (PlSqlParser.OPTIMIZER_GOAL - 1121)) | (1 << (PlSqlParser.OPT_PARAM - 1121)) | (1 << (PlSqlParser.ORA_BRANCH - 1121)) | (1 << (PlSqlParser.ORA_CHECK_ACL - 1121)) | (1 << (PlSqlParser.ORA_CHECK_PRIVILEGE - 1121)) | (1 << (PlSqlParser.ORA_CLUSTERING - 1121)) | (1 << (PlSqlParser.ORADATA - 1121)) | (1 << (PlSqlParser.ORADEBUG - 1121)) | (1 << (PlSqlParser.ORA_DST_AFFECTED - 1121)) | (1 << (PlSqlParser.ORA_DST_CONVERT - 1121)) | (1 << (PlSqlParser.ORA_DST_ERROR - 1121)) | (1 << (PlSqlParser.ORA_GET_ACLIDS - 1121)))) !== 0) || ((((_la - 1153)) & ~0x1f) == 0 && ((1 << (_la - 1153)) & ((1 << (PlSqlParser.ORA_GET_PRIVILEGES - 1153)) | (1 << (PlSqlParser.ORA_HASH - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_USERID - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_USER - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_XS_USER_GUID - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_XS_USER - 1153)) | (1 << (PlSqlParser.ORA_RAWCOMPARE - 1153)) | (1 << (PlSqlParser.ORA_RAWCONCAT - 1153)) | (1 << (PlSqlParser.ORA_ROWSCN - 1153)) | (1 << (PlSqlParser.ORA_ROWSCN_RAW - 1153)) | (1 << (PlSqlParser.ORA_ROWVERSION - 1153)) | (1 << (PlSqlParser.ORA_TABVERSION - 1153)) | (1 << (PlSqlParser.ORA_WRITE_TIME - 1153)) | (1 << (PlSqlParser.ORDERED - 1153)) | (1 << (PlSqlParser.ORDERED_PREDICATES - 1153)) | (1 << (PlSqlParser.ORDINALITY - 1153)) | (1 << (PlSqlParser.OR_EXPAND - 1153)) | (1 << (PlSqlParser.ORGANIZATION - 1153)) | (1 << (PlSqlParser.OR_PREDICATES - 1153)) | (1 << (PlSqlParser.OSERROR - 1153)) | (1 << (PlSqlParser.OTHER - 1153)) | (1 << (PlSqlParser.OUTER_JOIN_TO_ANTI - 1153)) | (1 << (PlSqlParser.OUTER_JOIN_TO_INNER - 1153)) | (1 << (PlSqlParser.OUTER - 1153)) | (1 << (PlSqlParser.OUTLINE_LEAF - 1153)) | (1 << (PlSqlParser.OUTLINE - 1153)) | (1 << (PlSqlParser.OUT_OF_LINE - 1153)) | (1 << (PlSqlParser.OUT - 1153)) | (1 << (PlSqlParser.OVERFLOW_NOMOVE - 1153)) | (1 << (PlSqlParser.OVERFLOW - 1153)))) !== 0) || ((((_la - 1185)) & ~0x1f) == 0 && ((1 << (_la - 1185)) & ((1 << (PlSqlParser.OVERLAPS - 1185)) | (1 << (PlSqlParser.OVER - 1185)) | (1 << (PlSqlParser.OVERRIDING - 1185)) | (1 << (PlSqlParser.OWNER - 1185)) | (1 << (PlSqlParser.OWNERSHIP - 1185)) | (1 << (PlSqlParser.OWN - 1185)) | (1 << (PlSqlParser.PACKAGE - 1185)) | (1 << (PlSqlParser.PACKAGES - 1185)) | (1 << (PlSqlParser.PARALLEL_ENABLE - 1185)) | (1 << (PlSqlParser.PARALLEL_INDEX - 1185)) | (1 << (PlSqlParser.PARALLEL - 1185)) | (1 << (PlSqlParser.PARAMETERS - 1185)) | (1 << (PlSqlParser.PARAM - 1185)) | (1 << (PlSqlParser.PARENT - 1185)) | (1 << (PlSqlParser.PARITY - 1185)) | (1 << (PlSqlParser.PARTIAL_JOIN - 1185)) | (1 << (PlSqlParser.PARTIALLY - 1185)) | (1 << (PlSqlParser.PARTIAL - 1185)) | (1 << (PlSqlParser.PARTIAL_ROLLUP_PUSHDOWN - 1185)) | (1 << (PlSqlParser.PARTITION_HASH - 1185)) | (1 << (PlSqlParser.PARTITION_LIST - 1185)) | (1 << (PlSqlParser.PARTITION - 1185)) | (1 << (PlSqlParser.PARTITION_RANGE - 1185)) | (1 << (PlSqlParser.PARTITIONS - 1185)) | (1 << (PlSqlParser.PARTNUMINST - 1185)) | (1 << (PlSqlParser.PASSING - 1185)) | (1 << (PlSqlParser.PASSWORD_GRACE_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD_LIFE_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD_LOCK_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD - 1185)) | (1 << (PlSqlParser.PASSWORD_REUSE_MAX - 1185)))) !== 0) || ((((_la - 1217)) & ~0x1f) == 0 && ((1 << (_la - 1217)) & ((1 << (PlSqlParser.PASSWORD_REUSE_TIME - 1217)) | (1 << (PlSqlParser.PASSWORD_VERIFY_FUNCTION - 1217)) | (1 << (PlSqlParser.PAST - 1217)) | (1 << (PlSqlParser.PATCH - 1217)) | (1 << (PlSqlParser.PATH - 1217)) | (1 << (PlSqlParser.PATH_PREFIX - 1217)) | (1 << (PlSqlParser.PATHS - 1217)) | (1 << (PlSqlParser.PATTERN - 1217)) | (1 << (PlSqlParser.PBL_HS_BEGIN - 1217)) | (1 << (PlSqlParser.PBL_HS_END - 1217)) | (1 << (PlSqlParser.PCTINCREASE - 1217)) | (1 << (PlSqlParser.PCTTHRESHOLD - 1217)) | (1 << (PlSqlParser.PCTUSED - 1217)) | (1 << (PlSqlParser.PCTVERSION - 1217)) | (1 << (PlSqlParser.PENDING - 1217)) | (1 << (PlSqlParser.PERCENT_KEYWORD - 1217)) | (1 << (PlSqlParser.PERCENT_RANKM - 1217)) | (1 << (PlSqlParser.PERFORMANCE - 1217)) | (1 << (PlSqlParser.PERIOD_KEYWORD - 1217)) | (1 << (PlSqlParser.PERMANENT - 1217)) | (1 << (PlSqlParser.PERMISSION - 1217)) | (1 << (PlSqlParser.PERMUTE - 1217)) | (1 << (PlSqlParser.PER - 1217)) | (1 << (PlSqlParser.PFILE - 1217)) | (1 << (PlSqlParser.PHYSICAL - 1217)))) !== 0) || ((((_la - 1249)) & ~0x1f) == 0 && ((1 << (_la - 1249)) & ((1 << (PlSqlParser.PIKEY - 1249)) | (1 << (PlSqlParser.PIPELINED - 1249)) | (1 << (PlSqlParser.PIV_GB - 1249)) | (1 << (PlSqlParser.PIVOT - 1249)) | (1 << (PlSqlParser.PIV_SSF - 1249)) | (1 << (PlSqlParser.PLACE_DISTINCT - 1249)) | (1 << (PlSqlParser.PLACE_GROUP_BY - 1249)) | (1 << (PlSqlParser.PLAN - 1249)) | (1 << (PlSqlParser.PLSCOPE_SETTINGS - 1249)) | (1 << (PlSqlParser.PLS_INTEGER - 1249)) | (1 << (PlSqlParser.PLSQL_CCFLAGS - 1249)) | (1 << (PlSqlParser.PLSQL_CODE_TYPE - 1249)) | (1 << (PlSqlParser.PLSQL_DEBUG - 1249)) | (1 << (PlSqlParser.PLSQL_OPTIMIZE_LEVEL - 1249)) | (1 << (PlSqlParser.PLSQL_WARNINGS - 1249)) | (1 << (PlSqlParser.PLUGGABLE - 1249)) | (1 << (PlSqlParser.POINT - 1249)) | (1 << (PlSqlParser.POLICY - 1249)) | (1 << (PlSqlParser.POOL_16K - 1249)) | (1 << (PlSqlParser.POOL_2K - 1249)) | (1 << (PlSqlParser.POOL_32K - 1249)) | (1 << (PlSqlParser.POOL_4K - 1249)) | (1 << (PlSqlParser.POOL_8K - 1249)) | (1 << (PlSqlParser.POSITIVEN - 1249)) | (1 << (PlSqlParser.POSITIVE - 1249)) | (1 << (PlSqlParser.POST_TRANSACTION - 1249)) | (1 << (PlSqlParser.POWERMULTISET_BY_CARDINALITY - 1249)) | (1 << (PlSqlParser.POWERMULTISET - 1249)) | (1 << (PlSqlParser.POWER - 1249)) | (1 << (PlSqlParser.PQ_CONCURRENT_UNION - 1249)) | (1 << (PlSqlParser.PQ_DISTRIBUTE - 1249)))) !== 0) || ((((_la - 1281)) & ~0x1f) == 0 && ((1 << (_la - 1281)) & ((1 << (PlSqlParser.PQ_DISTRIBUTE_WINDOW - 1281)) | (1 << (PlSqlParser.PQ_FILTER - 1281)) | (1 << (PlSqlParser.PQ_MAP - 1281)) | (1 << (PlSqlParser.PQ_NOMAP - 1281)) | (1 << (PlSqlParser.PQ_REPLICATE - 1281)) | (1 << (PlSqlParser.PQ_SKEW - 1281)) | (1 << (PlSqlParser.PRAGMA - 1281)) | (1 << (PlSqlParser.PREBUILT - 1281)) | (1 << (PlSqlParser.PRECEDES - 1281)) | (1 << (PlSqlParser.PRECEDING - 1281)) | (1 << (PlSqlParser.PRECISION - 1281)) | (1 << (PlSqlParser.PRECOMPUTE_SUBQUERY - 1281)) | (1 << (PlSqlParser.PREDICATE_REORDERS - 1281)) | (1 << (PlSqlParser.PRELOAD - 1281)) | (1 << (PlSqlParser.PREPARE - 1281)) | (1 << (PlSqlParser.PRESENTNNV - 1281)) | (1 << (PlSqlParser.PRESENT - 1281)) | (1 << (PlSqlParser.PRESENTV - 1281)) | (1 << (PlSqlParser.PRESERVE_OID - 1281)) | (1 << (PlSqlParser.PRESERVE - 1281)) | (1 << (PlSqlParser.PRETTY - 1281)) | (1 << (PlSqlParser.PREVIOUS - 1281)) | (1 << (PlSqlParser.PREV - 1281)) | (1 << (PlSqlParser.PRIMARY - 1281)) | (1 << (PlSqlParser.PRINTBLOBTOCLOB - 1281)) | (1 << (PlSqlParser.PRIORITY - 1281)) | (1 << (PlSqlParser.PRIVATE - 1281)) | (1 << (PlSqlParser.PRIVATE_SGA - 1281)) | (1 << (PlSqlParser.PRIVILEGED - 1281)) | (1 << (PlSqlParser.PRIVILEGE - 1281)) | (1 << (PlSqlParser.PRIVILEGES - 1281)))) !== 0) || ((((_la - 1313)) & ~0x1f) == 0 && ((1 << (_la - 1313)) & ((1 << (PlSqlParser.PROCEDURAL - 1313)) | (1 << (PlSqlParser.PROCEDURE - 1313)) | (1 << (PlSqlParser.PROCESS - 1313)) | (1 << (PlSqlParser.PROFILE - 1313)) | (1 << (PlSqlParser.PROGRAM - 1313)) | (1 << (PlSqlParser.PROJECT - 1313)) | (1 << (PlSqlParser.PROPAGATE - 1313)) | (1 << (PlSqlParser.PROTECTED - 1313)) | (1 << (PlSqlParser.PROTECTION - 1313)) | (1 << (PlSqlParser.PROXY - 1313)) | (1 << (PlSqlParser.PRUNING - 1313)) | (1 << (PlSqlParser.PULL_PRED - 1313)) | (1 << (PlSqlParser.PURGE - 1313)) | (1 << (PlSqlParser.PUSH_PRED - 1313)) | (1 << (PlSqlParser.PUSH_SUBQ - 1313)) | (1 << (PlSqlParser.PX_FAULT_TOLERANCE - 1313)) | (1 << (PlSqlParser.PX_GRANULE - 1313)) | (1 << (PlSqlParser.PX_JOIN_FILTER - 1313)) | (1 << (PlSqlParser.QB_NAME - 1313)) | (1 << (PlSqlParser.QUERY_BLOCK - 1313)) | (1 << (PlSqlParser.QUERY - 1313)) | (1 << (PlSqlParser.QUEUE_CURR - 1313)) | (1 << (PlSqlParser.QUEUE - 1313)) | (1 << (PlSqlParser.QUEUE_ROWP - 1313)) | (1 << (PlSqlParser.QUIESCE - 1313)) | (1 << (PlSqlParser.QUORUM - 1313)) | (1 << (PlSqlParser.QUOTA - 1313)) | (1 << (PlSqlParser.RAISE - 1313)) | (1 << (PlSqlParser.RANDOM_LOCAL - 1313)) | (1 << (PlSqlParser.RANDOM - 1313)) | (1 << (PlSqlParser.RANGE - 1313)))) !== 0) || ((((_la - 1345)) & ~0x1f) == 0 && ((1 << (_la - 1345)) & ((1 << (PlSqlParser.RANKM - 1345)) | (1 << (PlSqlParser.RAPIDLY - 1345)) | (1 << (PlSqlParser.RAW - 1345)) | (1 << (PlSqlParser.RAWTOHEX - 1345)) | (1 << (PlSqlParser.RAWTONHEX - 1345)) | (1 << (PlSqlParser.RBA - 1345)) | (1 << (PlSqlParser.RBO_OUTLINE - 1345)) | (1 << (PlSqlParser.RDBA - 1345)) | (1 << (PlSqlParser.READ - 1345)) | (1 << (PlSqlParser.READS - 1345)) | (1 << (PlSqlParser.REALM - 1345)) | (1 << (PlSqlParser.REAL - 1345)) | (1 << (PlSqlParser.REBALANCE - 1345)) | (1 << (PlSqlParser.REBUILD - 1345)) | (1 << (PlSqlParser.RECORD - 1345)) | (1 << (PlSqlParser.RECORDS_PER_BLOCK - 1345)) | (1 << (PlSqlParser.RECOVERABLE - 1345)) | (1 << (PlSqlParser.RECOVER - 1345)) | (1 << (PlSqlParser.RECOVERY - 1345)) | (1 << (PlSqlParser.RECYCLEBIN - 1345)) | (1 << (PlSqlParser.RECYCLE - 1345)) | (1 << (PlSqlParser.REDACTION - 1345)) | (1 << (PlSqlParser.REDEFINE - 1345)) | (1 << (PlSqlParser.REDO - 1345)) | (1 << (PlSqlParser.REDUCED - 1345)) | (1 << (PlSqlParser.REDUNDANCY - 1345)) | (1 << (PlSqlParser.REF_CASCADE_CURSOR - 1345)) | (1 << (PlSqlParser.REFERENCED - 1345)) | (1 << (PlSqlParser.REFERENCE - 1345)) | (1 << (PlSqlParser.REFERENCES - 1345)) | (1 << (PlSqlParser.REFERENCING - 1345)) | (1 << (PlSqlParser.REF - 1345)))) !== 0) || ((((_la - 1377)) & ~0x1f) == 0 && ((1 << (_la - 1377)) & ((1 << (PlSqlParser.REFRESH - 1377)) | (1 << (PlSqlParser.REFTOHEX - 1377)) | (1 << (PlSqlParser.REGEXP_COUNT - 1377)) | (1 << (PlSqlParser.REGEXP_INSTR - 1377)) | (1 << (PlSqlParser.REGEXP_LIKE - 1377)) | (1 << (PlSqlParser.REGEXP_REPLACE - 1377)) | (1 << (PlSqlParser.REGEXP_SUBSTR - 1377)) | (1 << (PlSqlParser.REGISTER - 1377)) | (1 << (PlSqlParser.REGR_AVGX - 1377)) | (1 << (PlSqlParser.REGR_AVGY - 1377)) | (1 << (PlSqlParser.REGR_COUNT - 1377)) | (1 << (PlSqlParser.REGR_INTERCEPT - 1377)) | (1 << (PlSqlParser.REGR_R2 - 1377)) | (1 << (PlSqlParser.REGR_SLOPE - 1377)) | (1 << (PlSqlParser.REGR_SXX - 1377)) | (1 << (PlSqlParser.REGR_SXY - 1377)) | (1 << (PlSqlParser.REGR_SYY - 1377)) | (1 << (PlSqlParser.REGULAR - 1377)) | (1 << (PlSqlParser.REJECT - 1377)) | (1 << (PlSqlParser.REKEY - 1377)) | (1 << (PlSqlParser.RELATIONAL - 1377)) | (1 << (PlSqlParser.RELOCATE - 1377)) | (1 << (PlSqlParser.RELY - 1377)) | (1 << (PlSqlParser.REMAINDER - 1377)) | (1 << (PlSqlParser.REMOTE_MAPPED - 1377)) | (1 << (PlSqlParser.REMOVE - 1377)) | (1 << (PlSqlParser.RENAME - 1377)) | (1 << (PlSqlParser.REPAIR - 1377)) | (1 << (PlSqlParser.REPEAT - 1377)) | (1 << (PlSqlParser.REPLACE - 1377)) | (1 << (PlSqlParser.REPLICATION - 1377)))) !== 0) || ((((_la - 1409)) & ~0x1f) == 0 && ((1 << (_la - 1409)) & ((1 << (PlSqlParser.REQUIRED - 1409)) | (1 << (PlSqlParser.RESETLOGS - 1409)) | (1 << (PlSqlParser.RESET - 1409)) | (1 << (PlSqlParser.RESIZE - 1409)) | (1 << (PlSqlParser.RESOLVE - 1409)) | (1 << (PlSqlParser.RESOLVER - 1409)) | (1 << (PlSqlParser.RESPECT - 1409)) | (1 << (PlSqlParser.RESTART - 1409)) | (1 << (PlSqlParser.RESTORE_AS_INTERVALS - 1409)) | (1 << (PlSqlParser.RESTORE - 1409)) | (1 << (PlSqlParser.RESTRICT_ALL_REF_CONS - 1409)) | (1 << (PlSqlParser.RESTRICTED - 1409)) | (1 << (PlSqlParser.RESTRICT_REFERENCES - 1409)) | (1 << (PlSqlParser.RESTRICT - 1409)) | (1 << (PlSqlParser.RESULT_CACHE - 1409)) | (1 << (PlSqlParser.RESULT - 1409)) | (1 << (PlSqlParser.RESUMABLE - 1409)) | (1 << (PlSqlParser.RESUME - 1409)) | (1 << (PlSqlParser.RETENTION - 1409)) | (1 << (PlSqlParser.RETRY_ON_ROW_CHANGE - 1409)) | (1 << (PlSqlParser.RETURNING - 1409)) | (1 << (PlSqlParser.RETURN - 1409)) | (1 << (PlSqlParser.REUSE - 1409)) | (1 << (PlSqlParser.REVERSE - 1409)) | (1 << (PlSqlParser.REWRITE_OR_ERROR - 1409)) | (1 << (PlSqlParser.REWRITE - 1409)) | (1 << (PlSqlParser.RIGHT - 1409)) | (1 << (PlSqlParser.ROLE - 1409)) | (1 << (PlSqlParser.ROLESET - 1409)) | (1 << (PlSqlParser.ROLES - 1409)))) !== 0) || ((((_la - 1441)) & ~0x1f) == 0 && ((1 << (_la - 1441)) & ((1 << (PlSqlParser.ROLLBACK - 1441)) | (1 << (PlSqlParser.ROLLING - 1441)) | (1 << (PlSqlParser.ROLLUP - 1441)) | (1 << (PlSqlParser.ROWDEPENDENCIES - 1441)) | (1 << (PlSqlParser.ROWID_MAPPING_TABLE - 1441)) | (1 << (PlSqlParser.ROWID - 1441)) | (1 << (PlSqlParser.ROWIDTOCHAR - 1441)) | (1 << (PlSqlParser.ROWIDTONCHAR - 1441)) | (1 << (PlSqlParser.ROW_LENGTH - 1441)) | (1 << (PlSqlParser.ROWNUM - 1441)) | (1 << (PlSqlParser.ROW - 1441)) | (1 << (PlSqlParser.ROWS - 1441)) | (1 << (PlSqlParser.RPAD - 1441)) | (1 << (PlSqlParser.RTRIM - 1441)) | (1 << (PlSqlParser.RULE - 1441)) | (1 << (PlSqlParser.RULES - 1441)) | (1 << (PlSqlParser.RUNNING - 1441)) | (1 << (PlSqlParser.SALT - 1441)) | (1 << (PlSqlParser.SAMPLE - 1441)) | (1 << (PlSqlParser.SAVE_AS_INTERVALS - 1441)) | (1 << (PlSqlParser.SAVEPOINT - 1441)) | (1 << (PlSqlParser.SAVE - 1441)) | (1 << (PlSqlParser.SB4 - 1441)) | (1 << (PlSqlParser.SCALE_ROWS - 1441)) | (1 << (PlSqlParser.SCALE - 1441)) | (1 << (PlSqlParser.SCAN_INSTANCES - 1441)) | (1 << (PlSqlParser.SCAN - 1441)) | (1 << (PlSqlParser.SCHEDULER - 1441)) | (1 << (PlSqlParser.SCHEMACHECK - 1441)) | (1 << (PlSqlParser.SCHEMA - 1441)) | (1 << (PlSqlParser.SCN_ASCENDING - 1441)) | (1 << (PlSqlParser.SCN - 1441)))) !== 0) || ((((_la - 1473)) & ~0x1f) == 0 && ((1 << (_la - 1473)) & ((1 << (PlSqlParser.SCOPE - 1473)) | (1 << (PlSqlParser.SCRUB - 1473)) | (1 << (PlSqlParser.SD_ALL - 1473)) | (1 << (PlSqlParser.SD_INHIBIT - 1473)) | (1 << (PlSqlParser.SDO_GEOM_MBR - 1473)) | (1 << (PlSqlParser.SD_SHOW - 1473)) | (1 << (PlSqlParser.SEARCH - 1473)) | (1 << (PlSqlParser.SECOND - 1473)) | (1 << (PlSqlParser.SECRET - 1473)) | (1 << (PlSqlParser.SECUREFILE_DBA - 1473)) | (1 << (PlSqlParser.SECUREFILE - 1473)) | (1 << (PlSqlParser.SECURITY - 1473)) | (1 << (PlSqlParser.SEED - 1473)) | (1 << (PlSqlParser.SEG_BLOCK - 1473)) | (1 << (PlSqlParser.SEG_FILE - 1473)) | (1 << (PlSqlParser.SEGMENT - 1473)) | (1 << (PlSqlParser.SELECTIVITY - 1473)) | (1 << (PlSqlParser.SELF - 1473)) | (1 << (PlSqlParser.SEMIJOIN_DRIVER - 1473)) | (1 << (PlSqlParser.SEMIJOIN - 1473)) | (1 << (PlSqlParser.SEMI_TO_INNER - 1473)) | (1 << (PlSqlParser.SEQUENCED - 1473)) | (1 << (PlSqlParser.SEQUENCE - 1473)) | (1 << (PlSqlParser.SEQUENTIAL - 1473)) | (1 << (PlSqlParser.SERIALIZABLE - 1473)) | (1 << (PlSqlParser.SERIALLY_REUSABLE - 1473)) | (1 << (PlSqlParser.SERIAL - 1473)) | (1 << (PlSqlParser.SERVERERROR - 1473)) | (1 << (PlSqlParser.SERVICE_NAME_CONVERT - 1473)) | (1 << (PlSqlParser.SERVICES - 1473)))) !== 0) || ((((_la - 1505)) & ~0x1f) == 0 && ((1 << (_la - 1505)) & ((1 << (PlSqlParser.SESSION_CACHED_CURSORS - 1505)) | (1 << (PlSqlParser.SESSION - 1505)) | (1 << (PlSqlParser.SESSIONS_PER_USER - 1505)) | (1 << (PlSqlParser.SESSIONTIMEZONE - 1505)) | (1 << (PlSqlParser.SESSIONTZNAME - 1505)) | (1 << (PlSqlParser.SET - 1505)) | (1 << (PlSqlParser.SETS - 1505)) | (1 << (PlSqlParser.SETTINGS - 1505)) | (1 << (PlSqlParser.SET_TO_JOIN - 1505)) | (1 << (PlSqlParser.SEVERE - 1505)) | (1 << (PlSqlParser.SHARED_POOL - 1505)) | (1 << (PlSqlParser.SHARED - 1505)) | (1 << (PlSqlParser.SHARING - 1505)) | (1 << (PlSqlParser.SHELFLIFE - 1505)) | (1 << (PlSqlParser.SHOW - 1505)) | (1 << (PlSqlParser.SHRINK - 1505)) | (1 << (PlSqlParser.SHUTDOWN - 1505)) | (1 << (PlSqlParser.SIBLINGS - 1505)) | (1 << (PlSqlParser.SID - 1505)) | (1 << (PlSqlParser.SIGNAL_COMPONENT - 1505)) | (1 << (PlSqlParser.SIGNAL_FUNCTION - 1505)) | (1 << (PlSqlParser.SIGN - 1505)) | (1 << (PlSqlParser.SIGNTYPE - 1505)) | (1 << (PlSqlParser.SIMPLE_INTEGER - 1505)) | (1 << (PlSqlParser.SIMPLE - 1505)) | (1 << (PlSqlParser.SINGLE - 1505)) | (1 << (PlSqlParser.SINGLETASK - 1505)) | (1 << (PlSqlParser.SINH - 1505)) | (1 << (PlSqlParser.SIN - 1505)) | (1 << (PlSqlParser.SKIP_EXT_OPTIMIZER - 1505)))) !== 0) || ((((_la - 1537)) & ~0x1f) == 0 && ((1 << (_la - 1537)) & ((1 << (PlSqlParser.SKIP_ - 1537)) | (1 << (PlSqlParser.SKIP_UNQ_UNUSABLE_IDX - 1537)) | (1 << (PlSqlParser.SKIP_UNUSABLE_INDEXES - 1537)) | (1 << (PlSqlParser.SMALLFILE - 1537)) | (1 << (PlSqlParser.SMALLINT - 1537)) | (1 << (PlSqlParser.SNAPSHOT - 1537)) | (1 << (PlSqlParser.SOME - 1537)) | (1 << (PlSqlParser.SORT - 1537)) | (1 << (PlSqlParser.SOUNDEX - 1537)) | (1 << (PlSqlParser.SOURCE_FILE_DIRECTORY - 1537)) | (1 << (PlSqlParser.SOURCE_FILE_NAME_CONVERT - 1537)) | (1 << (PlSqlParser.SOURCE - 1537)) | (1 << (PlSqlParser.SPACE_KEYWORD - 1537)) | (1 << (PlSqlParser.SPECIFICATION - 1537)) | (1 << (PlSqlParser.SPFILE - 1537)) | (1 << (PlSqlParser.SPLIT - 1537)) | (1 << (PlSqlParser.SPREADSHEET - 1537)) | (1 << (PlSqlParser.SQLDATA - 1537)) | (1 << (PlSqlParser.SQLERROR - 1537)) | (1 << (PlSqlParser.SQLLDR - 1537)) | (1 << (PlSqlParser.SQL - 1537)) | (1 << (PlSqlParser.SQL_TRACE - 1537)) | (1 << (PlSqlParser.SQL_TRANSLATION_PROFILE - 1537)) | (1 << (PlSqlParser.SQRT - 1537)) | (1 << (PlSqlParser.STALE - 1537)) | (1 << (PlSqlParser.STANDALONE - 1537)) | (1 << (PlSqlParser.STANDARD_HASH - 1537)) | (1 << (PlSqlParser.STANDBY_MAX_DATA_DELAY - 1537)) | (1 << (PlSqlParser.STANDBYS - 1537)) | (1 << (PlSqlParser.STANDBY - 1537)) | (1 << (PlSqlParser.STAR - 1537)) | (1 << (PlSqlParser.STAR_TRANSFORMATION - 1537)))) !== 0) || ((((_la - 1570)) & ~0x1f) == 0 && ((1 << (_la - 1570)) & ((1 << (PlSqlParser.STARTUP - 1570)) | (1 << (PlSqlParser.STATEMENT_ID - 1570)) | (1 << (PlSqlParser.STATEMENT_QUEUING - 1570)) | (1 << (PlSqlParser.STATEMENTS - 1570)) | (1 << (PlSqlParser.STATEMENT - 1570)) | (1 << (PlSqlParser.STATE - 1570)) | (1 << (PlSqlParser.STATIC - 1570)) | (1 << (PlSqlParser.STATISTICS - 1570)) | (1 << (PlSqlParser.STATS_BINOMIAL_TEST - 1570)) | (1 << (PlSqlParser.STATS_CROSSTAB - 1570)) | (1 << (PlSqlParser.STATS_F_TEST - 1570)) | (1 << (PlSqlParser.STATS_KS_TEST - 1570)) | (1 << (PlSqlParser.STATS_MODE - 1570)) | (1 << (PlSqlParser.STATS_MW_TEST - 1570)) | (1 << (PlSqlParser.STATS_ONE_WAY_ANOVA - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_INDEP - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_INDEPU - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_ONE - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_PAIRED - 1570)) | (1 << (PlSqlParser.STATS_WSR_TEST - 1570)) | (1 << (PlSqlParser.STDDEV_POP - 1570)) | (1 << (PlSqlParser.STDDEV_SAMP - 1570)) | (1 << (PlSqlParser.STOP - 1570)) | (1 << (PlSqlParser.STORAGE - 1570)) | (1 << (PlSqlParser.STORE - 1570)) | (1 << (PlSqlParser.STREAMS - 1570)) | (1 << (PlSqlParser.STREAM - 1570)) | (1 << (PlSqlParser.STRICT - 1570)) | (1 << (PlSqlParser.STRING - 1570)) | (1 << (PlSqlParser.STRIPE_COLUMNS - 1570)) | (1 << (PlSqlParser.STRIPE_WIDTH - 1570)) | (1 << (PlSqlParser.STRIP - 1570)))) !== 0) || ((((_la - 1602)) & ~0x1f) == 0 && ((1 << (_la - 1602)) & ((1 << (PlSqlParser.STRUCTURE - 1602)) | (1 << (PlSqlParser.SUBMULTISET - 1602)) | (1 << (PlSqlParser.SUBPARTITION_REL - 1602)) | (1 << (PlSqlParser.SUBPARTITIONS - 1602)) | (1 << (PlSqlParser.SUBPARTITION - 1602)) | (1 << (PlSqlParser.SUBQUERIES - 1602)) | (1 << (PlSqlParser.SUBQUERY_PRUNING - 1602)) | (1 << (PlSqlParser.SUBSCRIBE - 1602)) | (1 << (PlSqlParser.SUBSET - 1602)) | (1 << (PlSqlParser.SUBSTITUTABLE - 1602)) | (1 << (PlSqlParser.SUBSTR2 - 1602)) | (1 << (PlSqlParser.SUBSTR4 - 1602)) | (1 << (PlSqlParser.SUBSTRB - 1602)) | (1 << (PlSqlParser.SUBSTRC - 1602)) | (1 << (PlSqlParser.SUBTYPE - 1602)) | (1 << (PlSqlParser.SUCCESSFUL - 1602)) | (1 << (PlSqlParser.SUCCESS - 1602)) | (1 << (PlSqlParser.SUMMARY - 1602)) | (1 << (PlSqlParser.SUPPLEMENTAL - 1602)) | (1 << (PlSqlParser.SUSPEND - 1602)) | (1 << (PlSqlParser.SWAP_JOIN_INPUTS - 1602)) | (1 << (PlSqlParser.SWITCHOVER - 1602)) | (1 << (PlSqlParser.SWITCH - 1602)) | (1 << (PlSqlParser.SYNCHRONOUS - 1602)) | (1 << (PlSqlParser.SYNC - 1602)) | (1 << (PlSqlParser.SYSASM - 1602)) | (1 << (PlSqlParser.SYS_AUDIT - 1602)) | (1 << (PlSqlParser.SYSAUX - 1602)) | (1 << (PlSqlParser.SYSBACKUP - 1602)) | (1 << (PlSqlParser.SYS_CHECKACL - 1602)) | (1 << (PlSqlParser.SYS_CHECK_PRIVILEGE - 1602)))) !== 0) || ((((_la - 1634)) & ~0x1f) == 0 && ((1 << (_la - 1634)) & ((1 << (PlSqlParser.SYS_CONNECT_BY_PATH - 1634)) | (1 << (PlSqlParser.SYS_CONTEXT - 1634)) | (1 << (PlSqlParser.SYSDATE - 1634)) | (1 << (PlSqlParser.SYSDBA - 1634)) | (1 << (PlSqlParser.SYS_DBURIGEN - 1634)) | (1 << (PlSqlParser.SYSDG - 1634)) | (1 << (PlSqlParser.SYS_DL_CURSOR - 1634)) | (1 << (PlSqlParser.SYS_DM_RXFORM_CHR - 1634)) | (1 << (PlSqlParser.SYS_DM_RXFORM_NUM - 1634)) | (1 << (PlSqlParser.SYS_DOM_COMPARE - 1634)) | (1 << (PlSqlParser.SYS_DST_PRIM2SEC - 1634)) | (1 << (PlSqlParser.SYS_DST_SEC2PRIM - 1634)) | (1 << (PlSqlParser.SYS_ET_BFILE_TO_RAW - 1634)) | (1 << (PlSqlParser.SYS_ET_BLOB_TO_IMAGE - 1634)) | (1 << (PlSqlParser.SYS_ET_IMAGE_TO_BLOB - 1634)) | (1 << (PlSqlParser.SYS_ET_RAW_TO_BFILE - 1634)) | (1 << (PlSqlParser.SYS_EXTPDTXT - 1634)) | (1 << (PlSqlParser.SYS_EXTRACT_UTC - 1634)) | (1 << (PlSqlParser.SYS_FBT_INSDEL - 1634)) | (1 << (PlSqlParser.SYS_FILTER_ACLS - 1634)) | (1 << (PlSqlParser.SYS_FNMATCHES - 1634)) | (1 << (PlSqlParser.SYS_FNREPLACE - 1634)) | (1 << (PlSqlParser.SYS_GET_ACLIDS - 1634)) | (1 << (PlSqlParser.SYS_GET_COL_ACLIDS - 1634)) | (1 << (PlSqlParser.SYS_GET_PRIVILEGES - 1634)) | (1 << (PlSqlParser.SYS_GETTOKENID - 1634)) | (1 << (PlSqlParser.SYS_GETXTIVAL - 1634)) | (1 << (PlSqlParser.SYS_GUID - 1634)) | (1 << (PlSqlParser.SYSGUID - 1634)) | (1 << (PlSqlParser.SYSKM - 1634)) | (1 << (PlSqlParser.SYS_MAKE_XMLNODEID - 1634)) | (1 << (PlSqlParser.SYS_MAKEXML - 1634)))) !== 0) || ((((_la - 1666)) & ~0x1f) == 0 && ((1 << (_la - 1666)) & ((1 << (PlSqlParser.SYS_MKXMLATTR - 1666)) | (1 << (PlSqlParser.SYS_MKXTI - 1666)) | (1 << (PlSqlParser.SYSOBJ - 1666)) | (1 << (PlSqlParser.SYS_OP_ADT2BIN - 1666)) | (1 << (PlSqlParser.SYS_OP_ADTCONS - 1666)) | (1 << (PlSqlParser.SYS_OP_ALSCRVAL - 1666)) | (1 << (PlSqlParser.SYS_OP_ATG - 1666)) | (1 << (PlSqlParser.SYS_OP_BIN2ADT - 1666)) | (1 << (PlSqlParser.SYS_OP_BITVEC - 1666)) | (1 << (PlSqlParser.SYS_OP_BL2R - 1666)) | (1 << (PlSqlParser.SYS_OP_BLOOM_FILTER_LIST - 1666)) | (1 << (PlSqlParser.SYS_OP_BLOOM_FILTER - 1666)) | (1 << (PlSqlParser.SYS_OP_C2C - 1666)) | (1 << (PlSqlParser.SYS_OP_CAST - 1666)) | (1 << (PlSqlParser.SYS_OP_CEG - 1666)) | (1 << (PlSqlParser.SYS_OP_CL2C - 1666)) | (1 << (PlSqlParser.SYS_OP_COMBINED_HASH - 1666)) | (1 << (PlSqlParser.SYS_OP_COMP - 1666)) | (1 << (PlSqlParser.SYS_OP_CONVERT - 1666)) | (1 << (PlSqlParser.SYS_OP_COUNTCHG - 1666)) | (1 << (PlSqlParser.SYS_OP_CSCONV - 1666)) | (1 << (PlSqlParser.SYS_OP_CSCONVTEST - 1666)) | (1 << (PlSqlParser.SYS_OP_CSR - 1666)) | (1 << (PlSqlParser.SYS_OP_CSX_PATCH - 1666)) | (1 << (PlSqlParser.SYS_OP_CYCLED_SEQ - 1666)) | (1 << (PlSqlParser.SYS_OP_DECOMP - 1666)) | (1 << (PlSqlParser.SYS_OP_DESCEND - 1666)) | (1 << (PlSqlParser.SYS_OP_DISTINCT - 1666)) | (1 << (PlSqlParser.SYS_OP_DRA - 1666)) | (1 << (PlSqlParser.SYS_OP_DUMP - 1666)) | (1 << (PlSqlParser.SYS_OP_DV_CHECK - 1666)) | (1 << (PlSqlParser.SYS_OP_ENFORCE_NOT_NULL - 1666)))) !== 0) || ((((_la - 1698)) & ~0x1f) == 0 && ((1 << (_la - 1698)) & ((1 << (PlSqlParser.SYSOPER - 1698)) | (1 << (PlSqlParser.SYS_OP_EXTRACT - 1698)) | (1 << (PlSqlParser.SYS_OP_GROUPING - 1698)) | (1 << (PlSqlParser.SYS_OP_GUID - 1698)) | (1 << (PlSqlParser.SYS_OP_HASH - 1698)) | (1 << (PlSqlParser.SYS_OP_IIX - 1698)) | (1 << (PlSqlParser.SYS_OP_ITR - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_CREATE - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_FILTER_LIST - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_FILTER - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_SUCCEEDED - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_USE - 1698)) | (1 << (PlSqlParser.SYS_OP_LBID - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2BLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2CLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2ID - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2NCLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2TYP - 1698)) | (1 << (PlSqlParser.SYS_OP_LSVI - 1698)) | (1 << (PlSqlParser.SYS_OP_LVL - 1698)) | (1 << (PlSqlParser.SYS_OP_MAKEOID - 1698)) | (1 << (PlSqlParser.SYS_OP_MAP_NONNULL - 1698)) | (1 << (PlSqlParser.SYS_OP_MSR - 1698)) | (1 << (PlSqlParser.SYS_OP_NICOMBINE - 1698)) | (1 << (PlSqlParser.SYS_OP_NIEXTRACT - 1698)) | (1 << (PlSqlParser.SYS_OP_NII - 1698)) | (1 << (PlSqlParser.SYS_OP_NIX - 1698)) | (1 << (PlSqlParser.SYS_OP_NOEXPAND - 1698)) | (1 << (PlSqlParser.SYS_OP_NTCIMG - 1698)) | (1 << (PlSqlParser.SYS_OP_NUMTORAW - 1698)) | (1 << (PlSqlParser.SYS_OP_OIDVALUE - 1698)) | (1 << (PlSqlParser.SYS_OP_OPNSIZE - 1698)))) !== 0) || ((((_la - 1730)) & ~0x1f) == 0 && ((1 << (_la - 1730)) & ((1 << (PlSqlParser.SYS_OP_PAR_1 - 1730)) | (1 << (PlSqlParser.SYS_OP_PARGID_1 - 1730)) | (1 << (PlSqlParser.SYS_OP_PARGID - 1730)) | (1 << (PlSqlParser.SYS_OP_PAR - 1730)) | (1 << (PlSqlParser.SYS_OP_PART_ID - 1730)) | (1 << (PlSqlParser.SYS_OP_PIVOT - 1730)) | (1 << (PlSqlParser.SYS_OP_R2O - 1730)) | (1 << (PlSqlParser.SYS_OP_RAWTONUM - 1730)) | (1 << (PlSqlParser.SYS_OP_RDTM - 1730)) | (1 << (PlSqlParser.SYS_OP_REF - 1730)) | (1 << (PlSqlParser.SYS_OP_RMTD - 1730)) | (1 << (PlSqlParser.SYS_OP_ROWIDTOOBJ - 1730)) | (1 << (PlSqlParser.SYS_OP_RPB - 1730)) | (1 << (PlSqlParser.SYS_OPTLOBPRBSC - 1730)) | (1 << (PlSqlParser.SYS_OP_TOSETID - 1730)) | (1 << (PlSqlParser.SYS_OP_TPR - 1730)) | (1 << (PlSqlParser.SYS_OP_TRTB - 1730)) | (1 << (PlSqlParser.SYS_OPTXICMP - 1730)) | (1 << (PlSqlParser.SYS_OPTXQCASTASNQ - 1730)) | (1 << (PlSqlParser.SYS_OP_UNDESCEND - 1730)) | (1 << (PlSqlParser.SYS_OP_VECAND - 1730)) | (1 << (PlSqlParser.SYS_OP_VECBIT - 1730)) | (1 << (PlSqlParser.SYS_OP_VECOR - 1730)) | (1 << (PlSqlParser.SYS_OP_VECXOR - 1730)) | (1 << (PlSqlParser.SYS_OP_VERSION - 1730)) | (1 << (PlSqlParser.SYS_OP_VREF - 1730)) | (1 << (PlSqlParser.SYS_OP_VVD - 1730)) | (1 << (PlSqlParser.SYS_OP_XMLCONS_FOR_CSX - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHATG - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHIDX - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHOP - 1730)) | (1 << (PlSqlParser.SYS_OP_XTXT2SQLT - 1730)))) !== 0) || ((((_la - 1762)) & ~0x1f) == 0 && ((1 << (_la - 1762)) & ((1 << (PlSqlParser.SYS_OP_ZONE_ID - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_DEPTH - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_MAXCHILD - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_PARENT - 1762)) | (1 << (PlSqlParser.SYS_PARALLEL_TXN - 1762)) | (1 << (PlSqlParser.SYS_PATHID_IS_ATTR - 1762)) | (1 << (PlSqlParser.SYS_PATHID_IS_NMSPC - 1762)) | (1 << (PlSqlParser.SYS_PATHID_LASTNAME - 1762)) | (1 << (PlSqlParser.SYS_PATHID_LASTNMSPC - 1762)) | (1 << (PlSqlParser.SYS_PATH_REVERSE - 1762)) | (1 << (PlSqlParser.SYS_PXQEXTRACT - 1762)) | (1 << (PlSqlParser.SYS_RAW_TO_XSID - 1762)) | (1 << (PlSqlParser.SYS_RID_ORDER - 1762)) | (1 << (PlSqlParser.SYS_ROW_DELTA - 1762)) | (1 << (PlSqlParser.SYS_SC_2_XMLT - 1762)) | (1 << (PlSqlParser.SYS_SYNRCIREDO - 1762)) | (1 << (PlSqlParser.SYSTEM_DEFINED - 1762)) | (1 << (PlSqlParser.SYSTEM - 1762)) | (1 << (PlSqlParser.SYSTIMESTAMP - 1762)) | (1 << (PlSqlParser.SYS_TYPEID - 1762)) | (1 << (PlSqlParser.SYS_UMAKEXML - 1762)) | (1 << (PlSqlParser.SYS_XMLANALYZE - 1762)) | (1 << (PlSqlParser.SYS_XMLCONTAINS - 1762)) | (1 << (PlSqlParser.SYS_XMLCONV - 1762)) | (1 << (PlSqlParser.SYS_XMLEXNSURI - 1762)) | (1 << (PlSqlParser.SYS_XMLGEN - 1762)) | (1 << (PlSqlParser.SYS_XMLI_LOC_ISNODE - 1762)) | (1 << (PlSqlParser.SYS_XMLI_LOC_ISTEXT - 1762)) | (1 << (PlSqlParser.SYS_XMLINSTR - 1762)) | (1 << (PlSqlParser.SYS_XMLLOCATOR_GETSVAL - 1762)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETCID - 1762)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETLOCATOR - 1762)))) !== 0) || ((((_la - 1794)) & ~0x1f) == 0 && ((1 << (_la - 1794)) & ((1 << (PlSqlParser.SYS_XMLNODEID_GETOKEY - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETPATHID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETPTRID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETRID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETSVAL - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETTID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID - 1794)) | (1 << (PlSqlParser.SYS_XMLT_2_SC - 1794)) | (1 << (PlSqlParser.SYS_XMLTRANSLATE - 1794)) | (1 << (PlSqlParser.SYS_XMLTYPE2SQL - 1794)) | (1 << (PlSqlParser.SYS_XQ_ASQLCNV - 1794)) | (1 << (PlSqlParser.SYS_XQ_ATOMCNVCHK - 1794)) | (1 << (PlSqlParser.SYS_XQBASEURI - 1794)) | (1 << (PlSqlParser.SYS_XQCASTABLEERRH - 1794)) | (1 << (PlSqlParser.SYS_XQCODEP2STR - 1794)) | (1 << (PlSqlParser.SYS_XQCODEPEQ - 1794)) | (1 << (PlSqlParser.SYS_XQCON2SEQ - 1794)) | (1 << (PlSqlParser.SYS_XQCONCAT - 1794)) | (1 << (PlSqlParser.SYS_XQDELETE - 1794)) | (1 << (PlSqlParser.SYS_XQDFLTCOLATION - 1794)) | (1 << (PlSqlParser.SYS_XQDOC - 1794)) | (1 << (PlSqlParser.SYS_XQDOCURI - 1794)) | (1 << (PlSqlParser.SYS_XQDURDIV - 1794)) | (1 << (PlSqlParser.SYS_XQED4URI - 1794)) | (1 << (PlSqlParser.SYS_XQENDSWITH - 1794)) | (1 << (PlSqlParser.SYS_XQERRH - 1794)) | (1 << (PlSqlParser.SYS_XQERR - 1794)) | (1 << (PlSqlParser.SYS_XQESHTMLURI - 1794)) | (1 << (PlSqlParser.SYS_XQEXLOBVAL - 1794)) | (1 << (PlSqlParser.SYS_XQEXSTWRP - 1794)) | (1 << (PlSqlParser.SYS_XQEXTRACT - 1794)) | (1 << (PlSqlParser.SYS_XQEXTRREF - 1794)))) !== 0) || ((((_la - 1826)) & ~0x1f) == 0 && ((1 << (_la - 1826)) & ((1 << (PlSqlParser.SYS_XQEXVAL - 1826)) | (1 << (PlSqlParser.SYS_XQFB2STR - 1826)) | (1 << (PlSqlParser.SYS_XQFNBOOL - 1826)) | (1 << (PlSqlParser.SYS_XQFNCMP - 1826)) | (1 << (PlSqlParser.SYS_XQFNDATIM - 1826)) | (1 << (PlSqlParser.SYS_XQFNLNAME - 1826)) | (1 << (PlSqlParser.SYS_XQFNNM - 1826)) | (1 << (PlSqlParser.SYS_XQFNNSURI - 1826)) | (1 << (PlSqlParser.SYS_XQFNPREDTRUTH - 1826)) | (1 << (PlSqlParser.SYS_XQFNQNM - 1826)) | (1 << (PlSqlParser.SYS_XQFNROOT - 1826)) | (1 << (PlSqlParser.SYS_XQFORMATNUM - 1826)) | (1 << (PlSqlParser.SYS_XQFTCONTAIN - 1826)) | (1 << (PlSqlParser.SYS_XQFUNCR - 1826)) | (1 << (PlSqlParser.SYS_XQGETCONTENT - 1826)) | (1 << (PlSqlParser.SYS_XQINDXOF - 1826)) | (1 << (PlSqlParser.SYS_XQINSERT - 1826)) | (1 << (PlSqlParser.SYS_XQINSPFX - 1826)) | (1 << (PlSqlParser.SYS_XQIRI2URI - 1826)) | (1 << (PlSqlParser.SYS_XQLANG - 1826)) | (1 << (PlSqlParser.SYS_XQLLNMFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQMKNODEREF - 1826)) | (1 << (PlSqlParser.SYS_XQNILLED - 1826)) | (1 << (PlSqlParser.SYS_XQNODENAME - 1826)) | (1 << (PlSqlParser.SYS_XQNORMSPACE - 1826)) | (1 << (PlSqlParser.SYS_XQNORMUCODE - 1826)) | (1 << (PlSqlParser.SYS_XQ_NRNG - 1826)) | (1 << (PlSqlParser.SYS_XQNSP4PFX - 1826)) | (1 << (PlSqlParser.SYS_XQNSPFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQPFXFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQ_PKSQL2XML - 1826)) | (1 << (PlSqlParser.SYS_XQPOLYABS - 1826)))) !== 0) || ((((_la - 1858)) & ~0x1f) == 0 && ((1 << (_la - 1858)) & ((1 << (PlSqlParser.SYS_XQPOLYADD - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCEL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCSTBL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCST - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYDIV - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYFLR - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYMOD - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYMUL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYRND - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYSQRT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYSUB - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYUMUS - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYUPLS - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVEQ - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVGE - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVGT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVLE - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVLT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVNE - 1858)) | (1 << (PlSqlParser.SYS_XQREF2VAL - 1858)) | (1 << (PlSqlParser.SYS_XQRENAME - 1858)) | (1 << (PlSqlParser.SYS_XQREPLACE - 1858)) | (1 << (PlSqlParser.SYS_XQRESVURI - 1858)) | (1 << (PlSqlParser.SYS_XQRNDHALF2EVN - 1858)) | (1 << (PlSqlParser.SYS_XQRSLVQNM - 1858)) | (1 << (PlSqlParser.SYS_XQRYENVPGET - 1858)) | (1 << (PlSqlParser.SYS_XQRYVARGET - 1858)) | (1 << (PlSqlParser.SYS_XQRYWRP - 1858)) | (1 << (PlSqlParser.SYS_XQSEQ2CON4XC - 1858)) | (1 << (PlSqlParser.SYS_XQSEQ2CON - 1858)) | (1 << (PlSqlParser.SYS_XQSEQDEEPEQ - 1858)) | (1 << (PlSqlParser.SYS_XQSEQINSB - 1858)))) !== 0) || ((((_la - 1890)) & ~0x1f) == 0 && ((1 << (_la - 1890)) & ((1 << (PlSqlParser.SYS_XQSEQRM - 1890)) | (1 << (PlSqlParser.SYS_XQSEQRVS - 1890)) | (1 << (PlSqlParser.SYS_XQSEQSUB - 1890)) | (1 << (PlSqlParser.SYS_XQSEQTYPMATCH - 1890)) | (1 << (PlSqlParser.SYS_XQSTARTSWITH - 1890)) | (1 << (PlSqlParser.SYS_XQSTATBURI - 1890)) | (1 << (PlSqlParser.SYS_XQSTR2CODEP - 1890)) | (1 << (PlSqlParser.SYS_XQSTRJOIN - 1890)) | (1 << (PlSqlParser.SYS_XQSUBSTRAFT - 1890)) | (1 << (PlSqlParser.SYS_XQSUBSTRBEF - 1890)) | (1 << (PlSqlParser.SYS_XQTOKENIZE - 1890)) | (1 << (PlSqlParser.SYS_XQTREATAS - 1890)) | (1 << (PlSqlParser.SYS_XQ_UPKXML2SQL - 1890)) | (1 << (PlSqlParser.SYS_XQXFORM - 1890)) | (1 << (PlSqlParser.SYS_XSID_TO_RAW - 1890)) | (1 << (PlSqlParser.SYS_ZMAP_FILTER - 1890)) | (1 << (PlSqlParser.SYS_ZMAP_REFRESH - 1890)) | (1 << (PlSqlParser.TABLE_LOOKUP_BY_NL - 1890)) | (1 << (PlSqlParser.TABLESPACE_NO - 1890)) | (1 << (PlSqlParser.TABLESPACE - 1890)) | (1 << (PlSqlParser.TABLES - 1890)) | (1 << (PlSqlParser.TABLE_STATS - 1890)) | (1 << (PlSqlParser.TABLE - 1890)) | (1 << (PlSqlParser.TABNO - 1890)) | (1 << (PlSqlParser.TAG - 1890)) | (1 << (PlSqlParser.TANH - 1890)) | (1 << (PlSqlParser.TAN - 1890)) | (1 << (PlSqlParser.TBLORIDXPARTNUM - 1890)) | (1 << (PlSqlParser.TEMPFILE - 1890)) | (1 << (PlSqlParser.TEMPLATE - 1890)) | (1 << (PlSqlParser.TEMPORARY - 1890)) | (1 << (PlSqlParser.TEMP_TABLE - 1890)))) !== 0) || ((((_la - 1922)) & ~0x1f) == 0 && ((1 << (_la - 1922)) & ((1 << (PlSqlParser.TEST - 1922)) | (1 << (PlSqlParser.TEXT - 1922)) | (1 << (PlSqlParser.THAN - 1922)) | (1 << (PlSqlParser.THEN - 1922)) | (1 << (PlSqlParser.THE - 1922)) | (1 << (PlSqlParser.THREAD - 1922)) | (1 << (PlSqlParser.THROUGH - 1922)) | (1 << (PlSqlParser.TIER - 1922)) | (1 << (PlSqlParser.TIES - 1922)) | (1 << (PlSqlParser.TIMEOUT - 1922)) | (1 << (PlSqlParser.TIMESTAMP_LTZ_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMESTAMP - 1922)) | (1 << (PlSqlParser.TIMESTAMP_TZ_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMESTAMP_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMES - 1922)) | (1 << (PlSqlParser.TIME - 1922)) | (1 << (PlSqlParser.TIMEZONE_ABBR - 1922)) | (1 << (PlSqlParser.TIMEZONE_HOUR - 1922)) | (1 << (PlSqlParser.TIMEZONE_MINUTE - 1922)) | (1 << (PlSqlParser.TIMEZONE_OFFSET - 1922)) | (1 << (PlSqlParser.TIMEZONE_REGION - 1922)) | (1 << (PlSqlParser.TIME_ZONE - 1922)) | (1 << (PlSqlParser.TIV_GB - 1922)) | (1 << (PlSqlParser.TIV_SSF - 1922)) | (1 << (PlSqlParser.TO_ACLID - 1922)) | (1 << (PlSqlParser.TO_BINARY_DOUBLE - 1922)) | (1 << (PlSqlParser.TO_BINARY_FLOAT - 1922)) | (1 << (PlSqlParser.TO_BLOB - 1922)) | (1 << (PlSqlParser.TO_CLOB - 1922)) | (1 << (PlSqlParser.TO_DSINTERVAL - 1922)) | (1 << (PlSqlParser.TO_LOB - 1922)))) !== 0) || ((((_la - 1954)) & ~0x1f) == 0 && ((1 << (_la - 1954)) & ((1 << (PlSqlParser.TO_MULTI_BYTE - 1954)) | (1 << (PlSqlParser.TO_NCHAR - 1954)) | (1 << (PlSqlParser.TO_NCLOB - 1954)) | (1 << (PlSqlParser.TO_NUMBER - 1954)) | (1 << (PlSqlParser.TOPLEVEL - 1954)) | (1 << (PlSqlParser.TO_SINGLE_BYTE - 1954)) | (1 << (PlSqlParser.TO_TIMESTAMP - 1954)) | (1 << (PlSqlParser.TO_TIMESTAMP_TZ - 1954)) | (1 << (PlSqlParser.TO_TIME - 1954)) | (1 << (PlSqlParser.TO_TIME_TZ - 1954)) | (1 << (PlSqlParser.TO_YMINTERVAL - 1954)) | (1 << (PlSqlParser.TRACE - 1954)) | (1 << (PlSqlParser.TRACING - 1954)) | (1 << (PlSqlParser.TRACKING - 1954)) | (1 << (PlSqlParser.TRAILING - 1954)) | (1 << (PlSqlParser.TRANSACTION - 1954)) | (1 << (PlSqlParser.TRANSFORM_DISTINCT_AGG - 1954)) | (1 << (PlSqlParser.TRANSITIONAL - 1954)) | (1 << (PlSqlParser.TRANSITION - 1954)) | (1 << (PlSqlParser.TRANSLATE - 1954)) | (1 << (PlSqlParser.TRANSLATION - 1954)) | (1 << (PlSqlParser.TREAT - 1954)) | (1 << (PlSqlParser.TRIGGERS - 1954)) | (1 << (PlSqlParser.TRIGGER - 1954)) | (1 << (PlSqlParser.TRUE - 1954)) | (1 << (PlSqlParser.TRUNCATE - 1954)) | (1 << (PlSqlParser.TRUNC - 1954)) | (1 << (PlSqlParser.TRUSTED - 1954)) | (1 << (PlSqlParser.TRUST - 1954)) | (1 << (PlSqlParser.TUNING - 1954)) | (1 << (PlSqlParser.TX - 1954)))) !== 0) || ((((_la - 1986)) & ~0x1f) == 0 && ((1 << (_la - 1986)) & ((1 << (PlSqlParser.TYPES - 1986)) | (1 << (PlSqlParser.TYPE - 1986)) | (1 << (PlSqlParser.TZ_OFFSET - 1986)) | (1 << (PlSqlParser.UB2 - 1986)) | (1 << (PlSqlParser.UBA - 1986)) | (1 << (PlSqlParser.UCS2 - 1986)) | (1 << (PlSqlParser.UID - 1986)) | (1 << (PlSqlParser.UNARCHIVED - 1986)) | (1 << (PlSqlParser.UNBOUNDED - 1986)) | (1 << (PlSqlParser.UNBOUND - 1986)) | (1 << (PlSqlParser.UNCONDITIONAL - 1986)) | (1 << (PlSqlParser.UNDER - 1986)) | (1 << (PlSqlParser.UNDO - 1986)) | (1 << (PlSqlParser.UNDROP - 1986)) | (1 << (PlSqlParser.UNIFORM - 1986)) | (1 << (PlSqlParser.UNISTR - 1986)) | (1 << (PlSqlParser.UNLIMITED - 1986)) | (1 << (PlSqlParser.UNLOAD - 1986)) | (1 << (PlSqlParser.UNLOCK - 1986)) | (1 << (PlSqlParser.UNMATCHED - 1986)) | (1 << (PlSqlParser.UNNEST_INNERJ_DISTINCT_VIEW - 1986)) | (1 << (PlSqlParser.UNNEST_NOSEMIJ_NODISTINCTVIEW - 1986)) | (1 << (PlSqlParser.UNNEST_SEMIJ_VIEW - 1986)) | (1 << (PlSqlParser.UNNEST - 1986)) | (1 << (PlSqlParser.UNPACKED - 1986)) | (1 << (PlSqlParser.UNPIVOT - 1986)) | (1 << (PlSqlParser.UNPLUG - 1986)) | (1 << (PlSqlParser.UNPROTECTED - 1986)) | (1 << (PlSqlParser.UNQUIESCE - 1986)) | (1 << (PlSqlParser.UNRECOVERABLE - 1986)))) !== 0) || ((((_la - 2018)) & ~0x1f) == 0 && ((1 << (_la - 2018)) & ((1 << (PlSqlParser.UNRESTRICTED - 2018)) | (1 << (PlSqlParser.UNSUBSCRIBE - 2018)) | (1 << (PlSqlParser.UNTIL - 2018)) | (1 << (PlSqlParser.UNUSABLE - 2018)) | (1 << (PlSqlParser.UNUSED - 2018)) | (1 << (PlSqlParser.UPDATABLE - 2018)) | (1 << (PlSqlParser.UPDATED - 2018)) | (1 << (PlSqlParser.UPDATEXML - 2018)) | (1 << (PlSqlParser.UPD_INDEXES - 2018)) | (1 << (PlSqlParser.UPD_JOININDEX - 2018)) | (1 << (PlSqlParser.UPGRADE - 2018)) | (1 << (PlSqlParser.UPPER - 2018)) | (1 << (PlSqlParser.UPSERT - 2018)) | (1 << (PlSqlParser.UROWID - 2018)) | (1 << (PlSqlParser.USABLE - 2018)) | (1 << (PlSqlParser.USAGE - 2018)) | (1 << (PlSqlParser.USE_ANTI - 2018)) | (1 << (PlSqlParser.USE_CONCAT - 2018)) | (1 << (PlSqlParser.USE_CUBE - 2018)) | (1 << (PlSqlParser.USE_HASH_AGGREGATION - 2018)) | (1 << (PlSqlParser.USE_HASH_GBY_FOR_PUSHDOWN - 2018)) | (1 << (PlSqlParser.USE_HASH - 2018)) | (1 << (PlSqlParser.USE_HIDDEN_PARTITIONS - 2018)) | (1 << (PlSqlParser.USE_INVISIBLE_INDEXES - 2018)) | (1 << (PlSqlParser.USE_MERGE_CARTESIAN - 2018)) | (1 << (PlSqlParser.USE_MERGE - 2018)) | (1 << (PlSqlParser.USE_NL - 2018)) | (1 << (PlSqlParser.USE_NL_WITH_INDEX - 2018)) | (1 << (PlSqlParser.USE_PRIVATE_OUTLINES - 2018)) | (1 << (PlSqlParser.USER_DATA - 2018)) | (1 << (PlSqlParser.USER_DEFINED - 2018)))) !== 0) || ((((_la - 2050)) & ~0x1f) == 0 && ((1 << (_la - 2050)) & ((1 << (PlSqlParser.USERENV - 2050)) | (1 << (PlSqlParser.USERGROUP - 2050)) | (1 << (PlSqlParser.USER_RECYCLEBIN - 2050)) | (1 << (PlSqlParser.USERS - 2050)) | (1 << (PlSqlParser.USER_TABLESPACES - 2050)) | (1 << (PlSqlParser.USER - 2050)) | (1 << (PlSqlParser.USE_SEMI - 2050)) | (1 << (PlSqlParser.USE_STORED_OUTLINES - 2050)) | (1 << (PlSqlParser.USE_TTT_FOR_GSETS - 2050)) | (1 << (PlSqlParser.USE - 2050)) | (1 << (PlSqlParser.USE_VECTOR_AGGREGATION - 2050)) | (1 << (PlSqlParser.USE_WEAK_NAME_RESL - 2050)) | (1 << (PlSqlParser.USING_NO_EXPAND - 2050)) | (1 << (PlSqlParser.USING - 2050)) | (1 << (PlSqlParser.UTF16BE - 2050)) | (1 << (PlSqlParser.UTF16LE - 2050)) | (1 << (PlSqlParser.UTF32 - 2050)) | (1 << (PlSqlParser.UTF8 - 2050)) | (1 << (PlSqlParser.V1 - 2050)) | (1 << (PlSqlParser.V2 - 2050)) | (1 << (PlSqlParser.VALIDATE - 2050)) | (1 << (PlSqlParser.VALIDATION - 2050)) | (1 << (PlSqlParser.VALID_TIME_END - 2050)) | (1 << (PlSqlParser.VALUE - 2050)) | (1 << (PlSqlParser.VARCHAR2 - 2050)) | (1 << (PlSqlParser.VARCHAR - 2050)) | (1 << (PlSqlParser.VARIABLE - 2050)) | (1 << (PlSqlParser.VAR_POP - 2050)) | (1 << (PlSqlParser.VARRAYS - 2050)) | (1 << (PlSqlParser.VARRAY - 2050)) | (1 << (PlSqlParser.VAR_SAMP - 2050)))) !== 0) || ((((_la - 2082)) & ~0x1f) == 0 && ((1 << (_la - 2082)) & ((1 << (PlSqlParser.VARYING - 2082)) | (1 << (PlSqlParser.VECTOR_READ_TRACE - 2082)) | (1 << (PlSqlParser.VECTOR_READ - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM_DIMS - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM_FACT - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM - 2082)) | (1 << (PlSqlParser.VERIFIER - 2082)) | (1 << (PlSqlParser.VERIFY - 2082)) | (1 << (PlSqlParser.VERSIONING - 2082)) | (1 << (PlSqlParser.VERSIONS_ENDSCN - 2082)) | (1 << (PlSqlParser.VERSIONS_ENDTIME - 2082)) | (1 << (PlSqlParser.VERSIONS_OPERATION - 2082)) | (1 << (PlSqlParser.VERSIONS_STARTSCN - 2082)) | (1 << (PlSqlParser.VERSIONS_STARTTIME - 2082)) | (1 << (PlSqlParser.VERSIONS - 2082)) | (1 << (PlSqlParser.VERSIONS_XID - 2082)) | (1 << (PlSqlParser.VERSION - 2082)) | (1 << (PlSqlParser.VIOLATION - 2082)) | (1 << (PlSqlParser.VIRTUAL - 2082)) | (1 << (PlSqlParser.VISIBILITY - 2082)) | (1 << (PlSqlParser.VISIBLE - 2082)) | (1 << (PlSqlParser.VOLUME - 2082)) | (1 << (PlSqlParser.VSIZE - 2082)) | (1 << (PlSqlParser.WAIT - 2082)) | (1 << (PlSqlParser.WALLET - 2082)) | (1 << (PlSqlParser.WARNING - 2082)) | (1 << (PlSqlParser.WEEKS - 2082)) | (1 << (PlSqlParser.WEEK - 2082)) | (1 << (PlSqlParser.WELLFORMED - 2082)) | (1 << (PlSqlParser.WHENEVER - 2082)) | (1 << (PlSqlParser.WHEN - 2082)))) !== 0) || ((((_la - 2115)) & ~0x1f) == 0 && ((1 << (_la - 2115)) & ((1 << (PlSqlParser.WHILE - 2115)) | (1 << (PlSqlParser.WHITESPACE - 2115)) | (1 << (PlSqlParser.WIDTH_BUCKET - 2115)) | (1 << (PlSqlParser.WITHIN - 2115)) | (1 << (PlSqlParser.WITHOUT - 2115)) | (1 << (PlSqlParser.WITH_PLSQL - 2115)) | (1 << (PlSqlParser.WORK - 2115)) | (1 << (PlSqlParser.WRAPPED - 2115)) | (1 << (PlSqlParser.WRAPPER - 2115)) | (1 << (PlSqlParser.WRITE - 2115)) | (1 << (PlSqlParser.XDB_FASTPATH_INSERT - 2115)) | (1 << (PlSqlParser.X_DYN_PRUNE - 2115)) | (1 << (PlSqlParser.XID - 2115)) | (1 << (PlSqlParser.XML2OBJECT - 2115)) | (1 << (PlSqlParser.XMLAGG - 2115)) | (1 << (PlSqlParser.XMLATTRIBUTES - 2115)) | (1 << (PlSqlParser.XMLCAST - 2115)) | (1 << (PlSqlParser.XMLCDATA - 2115)) | (1 << (PlSqlParser.XMLCOLATTVAL - 2115)) | (1 << (PlSqlParser.XMLCOMMENT - 2115)) | (1 << (PlSqlParser.XMLCONCAT - 2115)) | (1 << (PlSqlParser.XMLDIFF - 2115)) | (1 << (PlSqlParser.XML_DML_RWT_STMT - 2115)) | (1 << (PlSqlParser.XMLELEMENT - 2115)) | (1 << (PlSqlParser.XMLEXISTS2 - 2115)) | (1 << (PlSqlParser.XMLEXISTS - 2115)) | (1 << (PlSqlParser.XMLFOREST - 2115)) | (1 << (PlSqlParser.XMLINDEX_REWRITE_IN_SELECT - 2115)) | (1 << (PlSqlParser.XMLINDEX_REWRITE - 2115)))) !== 0) || ((((_la - 2147)) & ~0x1f) == 0 && ((1 << (_la - 2147)) & ((1 << (PlSqlParser.XMLINDEX_SEL_IDX_TBL - 2147)) | (1 << (PlSqlParser.XMLISNODE - 2147)) | (1 << (PlSqlParser.XMLISVALID - 2147)) | (1 << (PlSqlParser.XMLNAMESPACES - 2147)) | (1 << (PlSqlParser.XMLPARSE - 2147)) | (1 << (PlSqlParser.XMLPATCH - 2147)) | (1 << (PlSqlParser.XMLPI - 2147)) | (1 << (PlSqlParser.XMLQUERYVAL - 2147)) | (1 << (PlSqlParser.XMLQUERY - 2147)) | (1 << (PlSqlParser.XMLROOT - 2147)) | (1 << (PlSqlParser.XMLSCHEMA - 2147)) | (1 << (PlSqlParser.XMLSERIALIZE - 2147)) | (1 << (PlSqlParser.XMLTABLE - 2147)) | (1 << (PlSqlParser.XMLTRANSFORMBLOB - 2147)) | (1 << (PlSqlParser.XMLTRANSFORM - 2147)) | (1 << (PlSqlParser.XMLTYPE - 2147)) | (1 << (PlSqlParser.XML - 2147)) | (1 << (PlSqlParser.XPATHTABLE - 2147)) | (1 << (PlSqlParser.XS_SYS_CONTEXT - 2147)) | (1 << (PlSqlParser.XS - 2147)) | (1 << (PlSqlParser.YEARS - 2147)) | (1 << (PlSqlParser.YEAR - 2147)) | (1 << (PlSqlParser.YES - 2147)) | (1 << (PlSqlParser.YMINTERVAL_UNCONSTRAINED - 2147)) | (1 << (PlSqlParser.ZONEMAP - 2147)) | (1 << (PlSqlParser.ZONE - 2147)) | (1 << (PlSqlParser.PREDICTION - 2147)) | (1 << (PlSqlParser.PREDICTION_BOUNDS - 2147)) | (1 << (PlSqlParser.PREDICTION_COST - 2147)) | (1 << (PlSqlParser.PREDICTION_DETAILS - 2147)) | (1 << (PlSqlParser.PREDICTION_PROBABILITY - 2147)))) !== 0) || ((((_la - 2179)) & ~0x1f) == 0 && ((1 << (_la - 2179)) & ((1 << (PlSqlParser.PREDICTION_SET - 2179)) | (1 << (PlSqlParser.CUME_DIST - 2179)) | (1 << (PlSqlParser.DENSE_RANK - 2179)) | (1 << (PlSqlParser.LISTAGG - 2179)) | (1 << (PlSqlParser.PERCENT_RANK - 2179)) | (1 << (PlSqlParser.PERCENTILE_CONT - 2179)) | (1 << (PlSqlParser.PERCENTILE_DISC - 2179)) | (1 << (PlSqlParser.RANK - 2179)) | (1 << (PlSqlParser.AVG - 2179)) | (1 << (PlSqlParser.CORR - 2179)) | (1 << (PlSqlParser.COVAR_ - 2179)) | (1 << (PlSqlParser.LAG - 2179)) | (1 << (PlSqlParser.LEAD - 2179)) | (1 << (PlSqlParser.MAX - 2179)) | (1 << (PlSqlParser.MEDIAN - 2179)) | (1 << (PlSqlParser.MIN - 2179)) | (1 << (PlSqlParser.NTILE - 2179)) | (1 << (PlSqlParser.NVL - 2179)) | (1 << (PlSqlParser.RATIO_TO_REPORT - 2179)) | (1 << (PlSqlParser.REGR_ - 2179)) | (1 << (PlSqlParser.ROUND - 2179)) | (1 << (PlSqlParser.ROW_NUMBER - 2179)) | (1 << (PlSqlParser.SUBSTR - 2179)) | (1 << (PlSqlParser.TO_CHAR - 2179)) | (1 << (PlSqlParser.TRIM - 2179)) | (1 << (PlSqlParser.SUM - 2179)) | (1 << (PlSqlParser.STDDEV - 2179)) | (1 << (PlSqlParser.VAR_ - 2179)) | (1 << (PlSqlParser.VARIANCE - 2179)) | (1 << (PlSqlParser.LEAST - 2179)) | (1 << (PlSqlParser.GREATEST - 2179)))) !== 0) || _la===PlSqlParser.TO_DATE || _la===PlSqlParser.PERIOD || _la===PlSqlParser.REGULAR_ID) {
+ this.state = 5701;
+ this.partition_name();
+ }
+
+ this.state = 5704;
+ this.list_values_clause();
+ this.state = 5705;
+ this.table_partition_description();
+ this.state = 5711;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 5712;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Hash_partitionsContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_hash_partitions;
+ return this;
+}
+
+Hash_partitionsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Hash_partitionsContext.prototype.constructor = Hash_partitionsContext;
+
+Hash_partitionsContext.prototype.PARTITION = function() {
+ return this.getToken(PlSqlParser.PARTITION, 0);
+};
+
+Hash_partitionsContext.prototype.BY = function() {
+ return this.getToken(PlSqlParser.BY, 0);
+};
+
+Hash_partitionsContext.prototype.HASH = function() {
+ return this.getToken(PlSqlParser.HASH, 0);
+};
+
+Hash_partitionsContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Hash_partitionsContext.prototype.column_name = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Column_nameContext);
+ } else {
+ return this.getTypedRuleContext(Column_nameContext,i);
+ }
+};
+
+Hash_partitionsContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Hash_partitionsContext.prototype.individual_hash_partitions = function() {
+ return this.getTypedRuleContext(Individual_hash_partitionsContext,0);
+};
+
+Hash_partitionsContext.prototype.hash_partitions_by_quantity = function() {
+ return this.getTypedRuleContext(Hash_partitions_by_quantityContext,0);
+};
+
+Hash_partitionsContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Hash_partitionsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterHash_partitions(this);
+ }
+};
+
+Hash_partitionsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitHash_partitions(this);
+ }
+};
+
+Hash_partitionsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitHash_partitions(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Hash_partitionsContext = Hash_partitionsContext;
+
+PlSqlParser.prototype.hash_partitions = function() {
+
+ var localctx = new Hash_partitionsContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 550, PlSqlParser.RULE_hash_partitions);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5714;
+ this.match(PlSqlParser.PARTITION);
+ this.state = 5715;
+ this.match(PlSqlParser.BY);
+ this.state = 5716;
+ this.match(PlSqlParser.HASH);
+ this.state = 5717;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 5718;
+ this.column_name();
+ this.state = 5723;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 5719;
+ this.match(PlSqlParser.COMMA);
+ this.state = 5720;
+ this.column_name();
+ this.state = 5725;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 5726;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ this.state = 5729;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.LEFT_PAREN:
+ this.state = 5727;
+ this.individual_hash_partitions();
+ break;
+ case PlSqlParser.PARTITIONS:
+ this.state = 5728;
+ this.hash_partitions_by_quantity();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Individual_hash_partitionsContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_individual_hash_partitions;
+ return this;
+}
+
+Individual_hash_partitionsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Individual_hash_partitionsContext.prototype.constructor = Individual_hash_partitionsContext;
+
+Individual_hash_partitionsContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Individual_hash_partitionsContext.prototype.PARTITION = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.PARTITION);
+ } else {
+ return this.getToken(PlSqlParser.PARTITION, i);
+ }
+};
+
+
+Individual_hash_partitionsContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Individual_hash_partitionsContext.prototype.partition_name = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Partition_nameContext);
+ } else {
+ return this.getTypedRuleContext(Partition_nameContext,i);
+ }
+};
+
+Individual_hash_partitionsContext.prototype.partitioning_storage_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Partitioning_storage_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Partitioning_storage_clauseContext,i);
+ }
+};
+
+Individual_hash_partitionsContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Individual_hash_partitionsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterIndividual_hash_partitions(this);
+ }
+};
+
+Individual_hash_partitionsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitIndividual_hash_partitions(this);
+ }
+};
+
+Individual_hash_partitionsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitIndividual_hash_partitions(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Individual_hash_partitionsContext = Individual_hash_partitionsContext;
+
+PlSqlParser.prototype.individual_hash_partitions = function() {
+
+ var localctx = new Individual_hash_partitionsContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 552, PlSqlParser.RULE_individual_hash_partitions);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5731;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 5732;
+ this.match(PlSqlParser.PARTITION);
+ this.state = 5734;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,651,this._ctx);
+ if(la_===1) {
+ this.state = 5733;
+ this.partition_name();
+
+ }
+ this.state = 5737;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.COMPRESS || _la===PlSqlParser.LOB || _la===PlSqlParser.NOCOMPRESS || _la===PlSqlParser.OVERFLOW || _la===PlSqlParser.TABLESPACE || _la===PlSqlParser.VARRAY) {
+ this.state = 5736;
+ this.partitioning_storage_clause();
+ }
+
+ this.state = 5749;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 5739;
+ this.match(PlSqlParser.COMMA);
+ this.state = 5740;
+ this.match(PlSqlParser.PARTITION);
+ this.state = 5742;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,653,this._ctx);
+ if(la_===1) {
+ this.state = 5741;
+ this.partition_name();
+
+ }
+ this.state = 5745;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.COMPRESS || _la===PlSqlParser.LOB || _la===PlSqlParser.NOCOMPRESS || _la===PlSqlParser.OVERFLOW || _la===PlSqlParser.TABLESPACE || _la===PlSqlParser.VARRAY) {
+ this.state = 5744;
+ this.partitioning_storage_clause();
+ }
+
+ this.state = 5751;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 5752;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Hash_partitions_by_quantityContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_hash_partitions_by_quantity;
+ return this;
+}
+
+Hash_partitions_by_quantityContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Hash_partitions_by_quantityContext.prototype.constructor = Hash_partitions_by_quantityContext;
+
+Hash_partitions_by_quantityContext.prototype.PARTITIONS = function() {
+ return this.getToken(PlSqlParser.PARTITIONS, 0);
+};
+
+Hash_partitions_by_quantityContext.prototype.hash_partition_quantity = function() {
+ return this.getTypedRuleContext(Hash_partition_quantityContext,0);
+};
+
+Hash_partitions_by_quantityContext.prototype.STORE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.STORE);
+ } else {
+ return this.getToken(PlSqlParser.STORE, i);
+ }
+};
+
+
+Hash_partitions_by_quantityContext.prototype.IN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.IN);
+ } else {
+ return this.getToken(PlSqlParser.IN, i);
+ }
+};
+
+
+Hash_partitions_by_quantityContext.prototype.LEFT_PAREN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.LEFT_PAREN);
+ } else {
+ return this.getToken(PlSqlParser.LEFT_PAREN, i);
+ }
+};
+
+
+Hash_partitions_by_quantityContext.prototype.tablespace = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(TablespaceContext);
+ } else {
+ return this.getTypedRuleContext(TablespaceContext,i);
+ }
+};
+
+Hash_partitions_by_quantityContext.prototype.RIGHT_PAREN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.RIGHT_PAREN);
+ } else {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, i);
+ }
+};
+
+
+Hash_partitions_by_quantityContext.prototype.table_compression = function() {
+ return this.getTypedRuleContext(Table_compressionContext,0);
+};
+
+Hash_partitions_by_quantityContext.prototype.key_compression = function() {
+ return this.getTypedRuleContext(Key_compressionContext,0);
+};
+
+Hash_partitions_by_quantityContext.prototype.OVERFLOW = function() {
+ return this.getToken(PlSqlParser.OVERFLOW, 0);
+};
+
+Hash_partitions_by_quantityContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Hash_partitions_by_quantityContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterHash_partitions_by_quantity(this);
+ }
+};
+
+Hash_partitions_by_quantityContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitHash_partitions_by_quantity(this);
+ }
+};
+
+Hash_partitions_by_quantityContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitHash_partitions_by_quantity(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Hash_partitions_by_quantityContext = Hash_partitions_by_quantityContext;
+
+PlSqlParser.prototype.hash_partitions_by_quantity = function() {
+
+ var localctx = new Hash_partitions_by_quantityContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 554, PlSqlParser.RULE_hash_partitions_by_quantity);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5754;
+ this.match(PlSqlParser.PARTITIONS);
+ this.state = 5755;
+ this.hash_partition_quantity();
+ this.state = 5769;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.STORE) {
+ this.state = 5756;
+ this.match(PlSqlParser.STORE);
+ this.state = 5757;
+ this.match(PlSqlParser.IN);
+ this.state = 5758;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 5759;
+ this.tablespace();
+ this.state = 5764;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 5760;
+ this.match(PlSqlParser.COMMA);
+ this.state = 5761;
+ this.tablespace();
+ this.state = 5766;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 5767;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ }
+
+ this.state = 5773;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,658,this._ctx);
+ if(la_===1) {
+ this.state = 5771;
+ this.table_compression();
+
+ } else if(la_===2) {
+ this.state = 5772;
+ this.key_compression();
+
+ }
+ this.state = 5789;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.OVERFLOW) {
+ this.state = 5775;
+ this.match(PlSqlParser.OVERFLOW);
+ this.state = 5776;
+ this.match(PlSqlParser.STORE);
+ this.state = 5777;
+ this.match(PlSqlParser.IN);
+ this.state = 5778;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 5779;
+ this.tablespace();
+ this.state = 5784;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 5780;
+ this.match(PlSqlParser.COMMA);
+ this.state = 5781;
+ this.tablespace();
+ this.state = 5786;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 5787;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Hash_partition_quantityContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_hash_partition_quantity;
+ return this;
+}
+
+Hash_partition_quantityContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Hash_partition_quantityContext.prototype.constructor = Hash_partition_quantityContext;
+
+Hash_partition_quantityContext.prototype.UNSIGNED_INTEGER = function() {
+ return this.getToken(PlSqlParser.UNSIGNED_INTEGER, 0);
+};
+
+Hash_partition_quantityContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterHash_partition_quantity(this);
+ }
+};
+
+Hash_partition_quantityContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitHash_partition_quantity(this);
+ }
+};
+
+Hash_partition_quantityContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitHash_partition_quantity(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Hash_partition_quantityContext = Hash_partition_quantityContext;
+
+PlSqlParser.prototype.hash_partition_quantity = function() {
+
+ var localctx = new Hash_partition_quantityContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 556, PlSqlParser.RULE_hash_partition_quantity);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5791;
+ this.match(PlSqlParser.UNSIGNED_INTEGER);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Composite_range_partitionsContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_composite_range_partitions;
+ return this;
+}
+
+Composite_range_partitionsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Composite_range_partitionsContext.prototype.constructor = Composite_range_partitionsContext;
+
+Composite_range_partitionsContext.prototype.PARTITION = function() {
+ return this.getToken(PlSqlParser.PARTITION, 0);
+};
+
+Composite_range_partitionsContext.prototype.BY = function() {
+ return this.getToken(PlSqlParser.BY, 0);
+};
+
+Composite_range_partitionsContext.prototype.RANGE = function() {
+ return this.getToken(PlSqlParser.RANGE, 0);
+};
+
+Composite_range_partitionsContext.prototype.LEFT_PAREN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.LEFT_PAREN);
+ } else {
+ return this.getToken(PlSqlParser.LEFT_PAREN, i);
+ }
+};
+
+
+Composite_range_partitionsContext.prototype.column_name = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Column_nameContext);
+ } else {
+ return this.getTypedRuleContext(Column_nameContext,i);
+ }
+};
+
+Composite_range_partitionsContext.prototype.RIGHT_PAREN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.RIGHT_PAREN);
+ } else {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, i);
+ }
+};
+
+
+Composite_range_partitionsContext.prototype.range_partition_desc = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Range_partition_descContext);
+ } else {
+ return this.getTypedRuleContext(Range_partition_descContext,i);
+ }
+};
+
+Composite_range_partitionsContext.prototype.subpartition_by_range = function() {
+ return this.getTypedRuleContext(Subpartition_by_rangeContext,0);
+};
+
+Composite_range_partitionsContext.prototype.subpartition_by_list = function() {
+ return this.getTypedRuleContext(Subpartition_by_listContext,0);
+};
+
+Composite_range_partitionsContext.prototype.subpartition_by_hash = function() {
+ return this.getTypedRuleContext(Subpartition_by_hashContext,0);
+};
+
+Composite_range_partitionsContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Composite_range_partitionsContext.prototype.INTERVAL = function() {
+ return this.getToken(PlSqlParser.INTERVAL, 0);
+};
+
+Composite_range_partitionsContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+Composite_range_partitionsContext.prototype.STORE = function() {
+ return this.getToken(PlSqlParser.STORE, 0);
+};
+
+Composite_range_partitionsContext.prototype.IN = function() {
+ return this.getToken(PlSqlParser.IN, 0);
+};
+
+Composite_range_partitionsContext.prototype.tablespace = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(TablespaceContext);
+ } else {
+ return this.getTypedRuleContext(TablespaceContext,i);
+ }
+};
+
+Composite_range_partitionsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterComposite_range_partitions(this);
+ }
+};
+
+Composite_range_partitionsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitComposite_range_partitions(this);
+ }
+};
+
+Composite_range_partitionsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitComposite_range_partitions(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Composite_range_partitionsContext = Composite_range_partitionsContext;
+
+PlSqlParser.prototype.composite_range_partitions = function() {
+
+ var localctx = new Composite_range_partitionsContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 558, PlSqlParser.RULE_composite_range_partitions);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5793;
+ this.match(PlSqlParser.PARTITION);
+ this.state = 5794;
+ this.match(PlSqlParser.BY);
+ this.state = 5795;
+ this.match(PlSqlParser.RANGE);
+ this.state = 5796;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 5797;
+ this.column_name();
+ this.state = 5802;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 5798;
+ this.match(PlSqlParser.COMMA);
+ this.state = 5799;
+ this.column_name();
+ this.state = 5804;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 5805;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ this.state = 5825;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.INTERVAL) {
+ this.state = 5806;
+ this.match(PlSqlParser.INTERVAL);
+ this.state = 5807;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 5808;
+ this.expression();
+ this.state = 5809;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ this.state = 5823;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.STORE) {
+ this.state = 5810;
+ this.match(PlSqlParser.STORE);
+ this.state = 5811;
+ this.match(PlSqlParser.IN);
+ this.state = 5812;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 5813;
+ this.tablespace();
+ this.state = 5818;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 5814;
+ this.match(PlSqlParser.COMMA);
+ this.state = 5815;
+ this.tablespace();
+ this.state = 5820;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 5821;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ }
+
+ }
+
+ this.state = 5830;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,665,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 5827;
+ this.subpartition_by_range();
+ break;
+
+ case 2:
+ this.state = 5828;
+ this.subpartition_by_list();
+ break;
+
+ case 3:
+ this.state = 5829;
+ this.subpartition_by_hash();
+ break;
+
+ }
+ this.state = 5832;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 5833;
+ this.range_partition_desc();
+ this.state = 5838;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 5834;
+ this.match(PlSqlParser.COMMA);
+ this.state = 5835;
+ this.range_partition_desc();
+ this.state = 5840;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 5841;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Composite_list_partitionsContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_composite_list_partitions;
+ return this;
+}
+
+Composite_list_partitionsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Composite_list_partitionsContext.prototype.constructor = Composite_list_partitionsContext;
+
+Composite_list_partitionsContext.prototype.PARTITION = function() {
+ return this.getToken(PlSqlParser.PARTITION, 0);
+};
+
+Composite_list_partitionsContext.prototype.BY = function() {
+ return this.getToken(PlSqlParser.BY, 0);
+};
+
+Composite_list_partitionsContext.prototype.LIST = function() {
+ return this.getToken(PlSqlParser.LIST, 0);
+};
+
+Composite_list_partitionsContext.prototype.LEFT_PAREN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.LEFT_PAREN);
+ } else {
+ return this.getToken(PlSqlParser.LEFT_PAREN, i);
+ }
+};
+
+
+Composite_list_partitionsContext.prototype.column_name = function() {
+ return this.getTypedRuleContext(Column_nameContext,0);
+};
+
+Composite_list_partitionsContext.prototype.RIGHT_PAREN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.RIGHT_PAREN);
+ } else {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, i);
+ }
+};
+
+
+Composite_list_partitionsContext.prototype.list_partition_desc = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(List_partition_descContext);
+ } else {
+ return this.getTypedRuleContext(List_partition_descContext,i);
+ }
+};
+
+Composite_list_partitionsContext.prototype.subpartition_by_range = function() {
+ return this.getTypedRuleContext(Subpartition_by_rangeContext,0);
+};
+
+Composite_list_partitionsContext.prototype.subpartition_by_list = function() {
+ return this.getTypedRuleContext(Subpartition_by_listContext,0);
+};
+
+Composite_list_partitionsContext.prototype.subpartition_by_hash = function() {
+ return this.getTypedRuleContext(Subpartition_by_hashContext,0);
+};
+
+Composite_list_partitionsContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Composite_list_partitionsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterComposite_list_partitions(this);
+ }
+};
+
+Composite_list_partitionsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitComposite_list_partitions(this);
+ }
+};
+
+Composite_list_partitionsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitComposite_list_partitions(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Composite_list_partitionsContext = Composite_list_partitionsContext;
+
+PlSqlParser.prototype.composite_list_partitions = function() {
+
+ var localctx = new Composite_list_partitionsContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 560, PlSqlParser.RULE_composite_list_partitions);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5843;
+ this.match(PlSqlParser.PARTITION);
+ this.state = 5844;
+ this.match(PlSqlParser.BY);
+ this.state = 5845;
+ this.match(PlSqlParser.LIST);
+ this.state = 5846;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 5847;
+ this.column_name();
+ this.state = 5848;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ this.state = 5852;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,667,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 5849;
+ this.subpartition_by_range();
+ break;
+
+ case 2:
+ this.state = 5850;
+ this.subpartition_by_list();
+ break;
+
+ case 3:
+ this.state = 5851;
+ this.subpartition_by_hash();
+ break;
+
+ }
+ this.state = 5854;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 5855;
+ this.list_partition_desc();
+ this.state = 5860;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 5856;
+ this.match(PlSqlParser.COMMA);
+ this.state = 5857;
+ this.list_partition_desc();
+ this.state = 5862;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 5863;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Composite_hash_partitionsContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_composite_hash_partitions;
+ return this;
+}
+
+Composite_hash_partitionsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Composite_hash_partitionsContext.prototype.constructor = Composite_hash_partitionsContext;
+
+Composite_hash_partitionsContext.prototype.PARTITION = function() {
+ return this.getToken(PlSqlParser.PARTITION, 0);
+};
+
+Composite_hash_partitionsContext.prototype.BY = function() {
+ return this.getToken(PlSqlParser.BY, 0);
+};
+
+Composite_hash_partitionsContext.prototype.HASH = function() {
+ return this.getToken(PlSqlParser.HASH, 0);
+};
+
+Composite_hash_partitionsContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Composite_hash_partitionsContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Composite_hash_partitionsContext.prototype.subpartition_by_range = function() {
+ return this.getTypedRuleContext(Subpartition_by_rangeContext,0);
+};
+
+Composite_hash_partitionsContext.prototype.subpartition_by_list = function() {
+ return this.getTypedRuleContext(Subpartition_by_listContext,0);
+};
+
+Composite_hash_partitionsContext.prototype.subpartition_by_hash = function() {
+ return this.getTypedRuleContext(Subpartition_by_hashContext,0);
+};
+
+Composite_hash_partitionsContext.prototype.individual_hash_partitions = function() {
+ return this.getTypedRuleContext(Individual_hash_partitionsContext,0);
+};
+
+Composite_hash_partitionsContext.prototype.hash_partitions_by_quantity = function() {
+ return this.getTypedRuleContext(Hash_partitions_by_quantityContext,0);
+};
+
+Composite_hash_partitionsContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Composite_hash_partitionsContext.prototype.column_name = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Column_nameContext);
+ } else {
+ return this.getTypedRuleContext(Column_nameContext,i);
+ }
+};
+
+Composite_hash_partitionsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterComposite_hash_partitions(this);
+ }
+};
+
+Composite_hash_partitionsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitComposite_hash_partitions(this);
+ }
+};
+
+Composite_hash_partitionsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitComposite_hash_partitions(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Composite_hash_partitionsContext = Composite_hash_partitionsContext;
+
+PlSqlParser.prototype.composite_hash_partitions = function() {
+
+ var localctx = new Composite_hash_partitionsContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 562, PlSqlParser.RULE_composite_hash_partitions);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5865;
+ this.match(PlSqlParser.PARTITION);
+ this.state = 5866;
+ this.match(PlSqlParser.BY);
+ this.state = 5867;
+ this.match(PlSqlParser.HASH);
+ this.state = 5868;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 5871;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 5869;
+ this.match(PlSqlParser.COMMA);
+ this.state = 5870;
+ this.column_name();
+ this.state = 5873;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(_la===PlSqlParser.COMMA);
+ this.state = 5875;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ this.state = 5879;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,670,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 5876;
+ this.subpartition_by_range();
+ break;
+
+ case 2:
+ this.state = 5877;
+ this.subpartition_by_list();
+ break;
+
+ case 3:
+ this.state = 5878;
+ this.subpartition_by_hash();
+ break;
+
+ }
+ this.state = 5883;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.LEFT_PAREN:
+ this.state = 5881;
+ this.individual_hash_partitions();
+ break;
+ case PlSqlParser.PARTITIONS:
+ this.state = 5882;
+ this.hash_partitions_by_quantity();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Reference_partitioningContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_reference_partitioning;
+ return this;
+}
+
+Reference_partitioningContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Reference_partitioningContext.prototype.constructor = Reference_partitioningContext;
+
+Reference_partitioningContext.prototype.PARTITION = function() {
+ return this.getToken(PlSqlParser.PARTITION, 0);
+};
+
+Reference_partitioningContext.prototype.BY = function() {
+ return this.getToken(PlSqlParser.BY, 0);
+};
+
+Reference_partitioningContext.prototype.REFERENCE = function() {
+ return this.getToken(PlSqlParser.REFERENCE, 0);
+};
+
+Reference_partitioningContext.prototype.LEFT_PAREN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.LEFT_PAREN);
+ } else {
+ return this.getToken(PlSqlParser.LEFT_PAREN, i);
+ }
+};
+
+
+Reference_partitioningContext.prototype.regular_id = function() {
+ return this.getTypedRuleContext(Regular_idContext,0);
+};
+
+Reference_partitioningContext.prototype.RIGHT_PAREN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.RIGHT_PAREN);
+ } else {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, i);
+ }
+};
+
+
+Reference_partitioningContext.prototype.reference_partition_desc = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Reference_partition_descContext);
+ } else {
+ return this.getTypedRuleContext(Reference_partition_descContext,i);
+ }
+};
+
+Reference_partitioningContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Reference_partitioningContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterReference_partitioning(this);
+ }
+};
+
+Reference_partitioningContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitReference_partitioning(this);
+ }
+};
+
+Reference_partitioningContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitReference_partitioning(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Reference_partitioningContext = Reference_partitioningContext;
+
+PlSqlParser.prototype.reference_partitioning = function() {
+
+ var localctx = new Reference_partitioningContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 564, PlSqlParser.RULE_reference_partitioning);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5885;
+ this.match(PlSqlParser.PARTITION);
+ this.state = 5886;
+ this.match(PlSqlParser.BY);
+ this.state = 5887;
+ this.match(PlSqlParser.REFERENCE);
+ this.state = 5888;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 5889;
+ this.regular_id();
+ this.state = 5890;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ this.state = 5902;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.LEFT_PAREN) {
+ this.state = 5891;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 5892;
+ this.reference_partition_desc();
+ this.state = 5897;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 5893;
+ this.match(PlSqlParser.COMMA);
+ this.state = 5894;
+ this.reference_partition_desc();
+ this.state = 5899;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 5900;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Reference_partition_descContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_reference_partition_desc;
+ return this;
+}
+
+Reference_partition_descContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Reference_partition_descContext.prototype.constructor = Reference_partition_descContext;
+
+Reference_partition_descContext.prototype.PARTITION = function() {
+ return this.getToken(PlSqlParser.PARTITION, 0);
+};
+
+Reference_partition_descContext.prototype.table_partition_description = function() {
+ return this.getTypedRuleContext(Table_partition_descriptionContext,0);
+};
+
+Reference_partition_descContext.prototype.partition_name = function() {
+ return this.getTypedRuleContext(Partition_nameContext,0);
+};
+
+Reference_partition_descContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterReference_partition_desc(this);
+ }
+};
+
+Reference_partition_descContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitReference_partition_desc(this);
+ }
+};
+
+Reference_partition_descContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitReference_partition_desc(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Reference_partition_descContext = Reference_partition_descContext;
+
+PlSqlParser.prototype.reference_partition_desc = function() {
+
+ var localctx = new Reference_partition_descContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 566, PlSqlParser.RULE_reference_partition_desc);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5904;
+ this.match(PlSqlParser.PARTITION);
+ this.state = 5906;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,674,this._ctx);
+ if(la_===1) {
+ this.state = 5905;
+ this.partition_name();
+
+ }
+ this.state = 5908;
+ this.table_partition_description();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function System_partitioningContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_system_partitioning;
+ return this;
+}
+
+System_partitioningContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+System_partitioningContext.prototype.constructor = System_partitioningContext;
+
+System_partitioningContext.prototype.PARTITION = function() {
+ return this.getToken(PlSqlParser.PARTITION, 0);
+};
+
+System_partitioningContext.prototype.BY = function() {
+ return this.getToken(PlSqlParser.BY, 0);
+};
+
+System_partitioningContext.prototype.SYSTEM = function() {
+ return this.getToken(PlSqlParser.SYSTEM, 0);
+};
+
+System_partitioningContext.prototype.PARTITIONS = function() {
+ return this.getToken(PlSqlParser.PARTITIONS, 0);
+};
+
+System_partitioningContext.prototype.UNSIGNED_INTEGER = function() {
+ return this.getToken(PlSqlParser.UNSIGNED_INTEGER, 0);
+};
+
+System_partitioningContext.prototype.reference_partition_desc = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Reference_partition_descContext);
+ } else {
+ return this.getTypedRuleContext(Reference_partition_descContext,i);
+ }
+};
+
+System_partitioningContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+System_partitioningContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterSystem_partitioning(this);
+ }
+};
+
+System_partitioningContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitSystem_partitioning(this);
+ }
+};
+
+System_partitioningContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitSystem_partitioning(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.System_partitioningContext = System_partitioningContext;
+
+PlSqlParser.prototype.system_partitioning = function() {
+
+ var localctx = new System_partitioningContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 568, PlSqlParser.RULE_system_partitioning);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5910;
+ this.match(PlSqlParser.PARTITION);
+ this.state = 5911;
+ this.match(PlSqlParser.BY);
+ this.state = 5912;
+ this.match(PlSqlParser.SYSTEM);
+ this.state = 5923;
+ this._errHandler.sync(this);
+ switch (this._input.LA(1)) {
+ case PlSqlParser.PARTITIONS:
+ this.state = 5913;
+ this.match(PlSqlParser.PARTITIONS);
+ this.state = 5914;
+ this.match(PlSqlParser.UNSIGNED_INTEGER);
+ break;
+ case PlSqlParser.PARTITION:
+ this.state = 5915;
+ this.reference_partition_desc();
+ this.state = 5920;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 5916;
+ this.match(PlSqlParser.COMMA);
+ this.state = 5917;
+ this.reference_partition_desc();
+ this.state = 5922;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+ case PlSqlParser.AS:
+ case PlSqlParser.CACHE:
+ case PlSqlParser.DISABLE:
+ case PlSqlParser.ENABLE:
+ case PlSqlParser.FLASHBACK:
+ case PlSqlParser.NOCACHE:
+ case PlSqlParser.NO:
+ case PlSqlParser.NOPARALLEL:
+ case PlSqlParser.NOROWDEPENDENCIES:
+ case PlSqlParser.PARALLEL:
+ case PlSqlParser.RESULT_CACHE:
+ case PlSqlParser.ROWDEPENDENCIES:
+ case PlSqlParser.ROW:
+ case PlSqlParser.SEMICOLON:
+ break;
+ default:
+ break;
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Range_partition_descContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_range_partition_desc;
+ return this;
+}
+
+Range_partition_descContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Range_partition_descContext.prototype.constructor = Range_partition_descContext;
+
+Range_partition_descContext.prototype.PARTITION = function() {
+ return this.getToken(PlSqlParser.PARTITION, 0);
+};
+
+Range_partition_descContext.prototype.range_values_clause = function() {
+ return this.getTypedRuleContext(Range_values_clauseContext,0);
+};
+
+Range_partition_descContext.prototype.table_partition_description = function() {
+ return this.getTypedRuleContext(Table_partition_descriptionContext,0);
+};
+
+Range_partition_descContext.prototype.partition_name = function() {
+ return this.getTypedRuleContext(Partition_nameContext,0);
+};
+
+Range_partition_descContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Range_partition_descContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Range_partition_descContext.prototype.hash_subparts_by_quantity = function() {
+ return this.getTypedRuleContext(Hash_subparts_by_quantityContext,0);
+};
+
+Range_partition_descContext.prototype.range_subpartition_desc = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Range_subpartition_descContext);
+ } else {
+ return this.getTypedRuleContext(Range_subpartition_descContext,i);
+ }
+};
+
+Range_partition_descContext.prototype.list_subpartition_desc = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(List_subpartition_descContext);
+ } else {
+ return this.getTypedRuleContext(List_subpartition_descContext,i);
+ }
+};
+
+Range_partition_descContext.prototype.individual_hash_subparts = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Individual_hash_subpartsContext);
+ } else {
+ return this.getTypedRuleContext(Individual_hash_subpartsContext,i);
+ }
+};
+
+Range_partition_descContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Range_partition_descContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterRange_partition_desc(this);
+ }
+};
+
+Range_partition_descContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitRange_partition_desc(this);
+ }
+};
+
+Range_partition_descContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitRange_partition_desc(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Range_partition_descContext = Range_partition_descContext;
+
+PlSqlParser.prototype.range_partition_desc = function() {
+
+ var localctx = new Range_partition_descContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 570, PlSqlParser.RULE_range_partition_desc);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5925;
+ this.match(PlSqlParser.PARTITION);
+ this.state = 5927;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if((((_la) & ~0x1f) == 0 && ((1 << _la) & ((1 << PlSqlParser.ABORT) | (1 << PlSqlParser.ABS) | (1 << PlSqlParser.ACCESS) | (1 << PlSqlParser.ACCESSED) | (1 << PlSqlParser.ACCOUNT) | (1 << PlSqlParser.ACL) | (1 << PlSqlParser.ACOS) | (1 << PlSqlParser.ACTION) | (1 << PlSqlParser.ACTIONS) | (1 << PlSqlParser.ACTIVATE) | (1 << PlSqlParser.ACTIVE) | (1 << PlSqlParser.ACTIVE_COMPONENT) | (1 << PlSqlParser.ACTIVE_DATA) | (1 << PlSqlParser.ACTIVE_FUNCTION) | (1 << PlSqlParser.ACTIVE_TAG) | (1 << PlSqlParser.ACTIVITY) | (1 << PlSqlParser.ADAPTIVE_PLAN) | (1 << PlSqlParser.ADD) | (1 << PlSqlParser.ADD_COLUMN) | (1 << PlSqlParser.ADD_GROUP) | (1 << PlSqlParser.ADD_MONTHS) | (1 << PlSqlParser.ADJ_DATE) | (1 << PlSqlParser.ADMIN) | (1 << PlSqlParser.ADMINISTER) | (1 << PlSqlParser.ADMINISTRATOR) | (1 << PlSqlParser.ADVANCED) | (1 << PlSqlParser.ADVISE) | (1 << PlSqlParser.ADVISOR) | (1 << PlSqlParser.AFD_DISKSTRING) | (1 << PlSqlParser.AFTER) | (1 << PlSqlParser.AGENT))) !== 0) || ((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (PlSqlParser.AGGREGATE - 32)) | (1 << (PlSqlParser.A_LETTER - 32)) | (1 << (PlSqlParser.ALIAS - 32)) | (1 << (PlSqlParser.ALLOCATE - 32)) | (1 << (PlSqlParser.ALLOW - 32)) | (1 << (PlSqlParser.ALL_ROWS - 32)) | (1 << (PlSqlParser.ALWAYS - 32)) | (1 << (PlSqlParser.ANALYZE - 32)) | (1 << (PlSqlParser.ANCILLARY - 32)) | (1 << (PlSqlParser.AND_EQUAL - 32)) | (1 << (PlSqlParser.ANOMALY - 32)) | (1 << (PlSqlParser.ANSI_REARCH - 32)) | (1 << (PlSqlParser.ANTIJOIN - 32)) | (1 << (PlSqlParser.ANYSCHEMA - 32)) | (1 << (PlSqlParser.APPEND - 32)) | (1 << (PlSqlParser.APPENDCHILDXML - 32)) | (1 << (PlSqlParser.APPEND_VALUES - 32)) | (1 << (PlSqlParser.APPLICATION - 32)) | (1 << (PlSqlParser.APPLY - 32)) | (1 << (PlSqlParser.APPROX_COUNT_DISTINCT - 32)) | (1 << (PlSqlParser.ARCHIVAL - 32)) | (1 << (PlSqlParser.ARCHIVE - 32)) | (1 << (PlSqlParser.ARCHIVED - 32)) | (1 << (PlSqlParser.ARCHIVELOG - 32)) | (1 << (PlSqlParser.ARRAY - 32)) | (1 << (PlSqlParser.ASCII - 32)))) !== 0) || ((((_la - 64)) & ~0x1f) == 0 && ((1 << (_la - 64)) & ((1 << (PlSqlParser.ASCIISTR - 64)) | (1 << (PlSqlParser.ASIN - 64)) | (1 << (PlSqlParser.ASIS - 64)) | (1 << (PlSqlParser.ASSEMBLY - 64)) | (1 << (PlSqlParser.ASSIGN - 64)) | (1 << (PlSqlParser.ASSOCIATE - 64)) | (1 << (PlSqlParser.ASYNC - 64)) | (1 << (PlSqlParser.ASYNCHRONOUS - 64)) | (1 << (PlSqlParser.ATAN2 - 64)) | (1 << (PlSqlParser.ATAN - 64)) | (1 << (PlSqlParser.AT - 64)) | (1 << (PlSqlParser.ATTRIBUTE - 64)) | (1 << (PlSqlParser.ATTRIBUTES - 64)) | (1 << (PlSqlParser.AUTHENTICATED - 64)) | (1 << (PlSqlParser.AUTHENTICATION - 64)) | (1 << (PlSqlParser.AUTHID - 64)) | (1 << (PlSqlParser.AUTHORIZATION - 64)) | (1 << (PlSqlParser.AUTOALLOCATE - 64)) | (1 << (PlSqlParser.AUTO - 64)) | (1 << (PlSqlParser.AUTOEXTEND - 64)) | (1 << (PlSqlParser.AUTO_LOGIN - 64)) | (1 << (PlSqlParser.AUTOMATIC - 64)) | (1 << (PlSqlParser.AUTONOMOUS_TRANSACTION - 64)) | (1 << (PlSqlParser.AUTO_REOPTIMIZE - 64)) | (1 << (PlSqlParser.AVAILABILITY - 64)) | (1 << (PlSqlParser.AVRO - 64)) | (1 << (PlSqlParser.BACKGROUND - 64)) | (1 << (PlSqlParser.BACKUP - 64)) | (1 << (PlSqlParser.BASIC - 64)))) !== 0) || ((((_la - 96)) & ~0x1f) == 0 && ((1 << (_la - 96)) & ((1 << (PlSqlParser.BASICFILE - 96)) | (1 << (PlSqlParser.BATCH - 96)) | (1 << (PlSqlParser.BATCHSIZE - 96)) | (1 << (PlSqlParser.BATCH_TABLE_ACCESS_BY_ROWID - 96)) | (1 << (PlSqlParser.BECOME - 96)) | (1 << (PlSqlParser.BEFORE - 96)) | (1 << (PlSqlParser.BEGIN - 96)) | (1 << (PlSqlParser.BEGINNING - 96)) | (1 << (PlSqlParser.BEGIN_OUTLINE_DATA - 96)) | (1 << (PlSqlParser.BEHALF - 96)) | (1 << (PlSqlParser.BEQUEATH - 96)) | (1 << (PlSqlParser.BFILE - 96)) | (1 << (PlSqlParser.BFILENAME - 96)) | (1 << (PlSqlParser.BIGFILE - 96)) | (1 << (PlSqlParser.BINARY - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE_INFINITY - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE_NAN - 96)) | (1 << (PlSqlParser.BINARY_FLOAT - 96)) | (1 << (PlSqlParser.BINARY_FLOAT_INFINITY - 96)) | (1 << (PlSqlParser.BINARY_FLOAT_NAN - 96)) | (1 << (PlSqlParser.BINARY_INTEGER - 96)) | (1 << (PlSqlParser.BIND_AWARE - 96)) | (1 << (PlSqlParser.BINDING - 96)) | (1 << (PlSqlParser.BIN_TO_NUM - 96)) | (1 << (PlSqlParser.BITAND - 96)) | (1 << (PlSqlParser.BITMAP_AND - 96)) | (1 << (PlSqlParser.BITMAP - 96)) | (1 << (PlSqlParser.BITMAPS - 96)) | (1 << (PlSqlParser.BITMAP_TREE - 96)) | (1 << (PlSqlParser.BITS - 96)))) !== 0) || ((((_la - 128)) & ~0x1f) == 0 && ((1 << (_la - 128)) & ((1 << (PlSqlParser.BLOB - 128)) | (1 << (PlSqlParser.BLOCK - 128)) | (1 << (PlSqlParser.BLOCK_RANGE - 128)) | (1 << (PlSqlParser.BLOCKS - 128)) | (1 << (PlSqlParser.BLOCKSIZE - 128)) | (1 << (PlSqlParser.BODY - 128)) | (1 << (PlSqlParser.BOOLEAN - 128)) | (1 << (PlSqlParser.BOTH - 128)) | (1 << (PlSqlParser.BOUND - 128)) | (1 << (PlSqlParser.BRANCH - 128)) | (1 << (PlSqlParser.BREADTH - 128)) | (1 << (PlSqlParser.BROADCAST - 128)) | (1 << (PlSqlParser.BSON - 128)) | (1 << (PlSqlParser.BUFFER - 128)) | (1 << (PlSqlParser.BUFFER_CACHE - 128)) | (1 << (PlSqlParser.BUFFER_POOL - 128)) | (1 << (PlSqlParser.BUILD - 128)) | (1 << (PlSqlParser.BULK - 128)) | (1 << (PlSqlParser.BYPASS_RECURSIVE_CHECK - 128)) | (1 << (PlSqlParser.BYPASS_UJVC - 128)) | (1 << (PlSqlParser.BYTE - 128)) | (1 << (PlSqlParser.CACHE - 128)) | (1 << (PlSqlParser.CACHE_CB - 128)) | (1 << (PlSqlParser.CACHE_INSTANCES - 128)) | (1 << (PlSqlParser.CACHE_TEMP_TABLE - 128)) | (1 << (PlSqlParser.CACHING - 128)) | (1 << (PlSqlParser.CALCULATED - 128)) | (1 << (PlSqlParser.CALLBACK - 128)) | (1 << (PlSqlParser.CALL - 128)) | (1 << (PlSqlParser.CANCEL - 128)))) !== 0) || ((((_la - 160)) & ~0x1f) == 0 && ((1 << (_la - 160)) & ((1 << (PlSqlParser.CAPACITY - 160)) | (1 << (PlSqlParser.CARDINALITY - 160)) | (1 << (PlSqlParser.CASCADE - 160)) | (1 << (PlSqlParser.CASE - 160)) | (1 << (PlSqlParser.CAST - 160)) | (1 << (PlSqlParser.CATEGORY - 160)) | (1 << (PlSqlParser.CDBDEFAULT - 160)) | (1 << (PlSqlParser.CEIL - 160)) | (1 << (PlSqlParser.CELL_FLASH_CACHE - 160)) | (1 << (PlSqlParser.CERTIFICATE - 160)) | (1 << (PlSqlParser.CFILE - 160)) | (1 << (PlSqlParser.CHAINED - 160)) | (1 << (PlSqlParser.CHANGE - 160)) | (1 << (PlSqlParser.CHANGE_DUPKEY_ERROR_INDEX - 160)) | (1 << (PlSqlParser.CHARACTER - 160)) | (1 << (PlSqlParser.CHAR - 160)) | (1 << (PlSqlParser.CHAR_CS - 160)) | (1 << (PlSqlParser.CHARTOROWID - 160)) | (1 << (PlSqlParser.CHECK_ACL_REWRITE - 160)) | (1 << (PlSqlParser.CHECKPOINT - 160)) | (1 << (PlSqlParser.CHILD - 160)) | (1 << (PlSqlParser.CHOOSE - 160)) | (1 << (PlSqlParser.CHR - 160)) | (1 << (PlSqlParser.CHUNK - 160)) | (1 << (PlSqlParser.CLASS - 160)) | (1 << (PlSqlParser.CLASSIFIER - 160)) | (1 << (PlSqlParser.CLEANUP - 160)) | (1 << (PlSqlParser.CLEAR - 160)) | (1 << (PlSqlParser.C_LETTER - 160)) | (1 << (PlSqlParser.CLIENT - 160)))) !== 0) || ((((_la - 192)) & ~0x1f) == 0 && ((1 << (_la - 192)) & ((1 << (PlSqlParser.CLOB - 192)) | (1 << (PlSqlParser.CLONE - 192)) | (1 << (PlSqlParser.CLOSE_CACHED_OPEN_CURSORS - 192)) | (1 << (PlSqlParser.CLOSE - 192)) | (1 << (PlSqlParser.CLUSTER_BY_ROWID - 192)) | (1 << (PlSqlParser.CLUSTER - 192)) | (1 << (PlSqlParser.CLUSTER_DETAILS - 192)) | (1 << (PlSqlParser.CLUSTER_DISTANCE - 192)) | (1 << (PlSqlParser.CLUSTER_ID - 192)) | (1 << (PlSqlParser.CLUSTERING - 192)) | (1 << (PlSqlParser.CLUSTERING_FACTOR - 192)) | (1 << (PlSqlParser.CLUSTER_PROBABILITY - 192)) | (1 << (PlSqlParser.CLUSTER_SET - 192)) | (1 << (PlSqlParser.COALESCE - 192)) | (1 << (PlSqlParser.COALESCE_SQ - 192)) | (1 << (PlSqlParser.COARSE - 192)) | (1 << (PlSqlParser.CO_AUTH_IND - 192)) | (1 << (PlSqlParser.COLD - 192)) | (1 << (PlSqlParser.COLLECT - 192)) | (1 << (PlSqlParser.COLUMNAR - 192)) | (1 << (PlSqlParser.COLUMN_AUTH_INDICATOR - 192)) | (1 << (PlSqlParser.COLUMN - 192)) | (1 << (PlSqlParser.COLUMNS - 192)) | (1 << (PlSqlParser.COLUMN_STATS - 192)) | (1 << (PlSqlParser.COLUMN_VALUE - 192)) | (1 << (PlSqlParser.COMMENT - 192)) | (1 << (PlSqlParser.COMMIT - 192)) | (1 << (PlSqlParser.COMMITTED - 192)) | (1 << (PlSqlParser.COMMON_DATA - 192)) | (1 << (PlSqlParser.COMPACT - 192)) | (1 << (PlSqlParser.COMPATIBILITY - 192)) | (1 << (PlSqlParser.COMPILE - 192)))) !== 0) || ((((_la - 224)) & ~0x1f) == 0 && ((1 << (_la - 224)) & ((1 << (PlSqlParser.COMPLETE - 224)) | (1 << (PlSqlParser.COMPLIANCE - 224)) | (1 << (PlSqlParser.COMPONENT - 224)) | (1 << (PlSqlParser.COMPONENTS - 224)) | (1 << (PlSqlParser.COMPOSE - 224)) | (1 << (PlSqlParser.COMPOSITE - 224)) | (1 << (PlSqlParser.COMPOSITE_LIMIT - 224)) | (1 << (PlSqlParser.COMPOUND - 224)) | (1 << (PlSqlParser.COMPUTE - 224)) | (1 << (PlSqlParser.CONCAT - 224)) | (1 << (PlSqlParser.CON_DBID_TO_ID - 224)) | (1 << (PlSqlParser.CONDITIONAL - 224)) | (1 << (PlSqlParser.CONDITION - 224)) | (1 << (PlSqlParser.CONFIRM - 224)) | (1 << (PlSqlParser.CONFORMING - 224)) | (1 << (PlSqlParser.CON_GUID_TO_ID - 224)) | (1 << (PlSqlParser.CON_ID - 224)) | (1 << (PlSqlParser.CON_NAME_TO_ID - 224)) | (1 << (PlSqlParser.CONNECT_BY_CB_WHR_ONLY - 224)) | (1 << (PlSqlParser.CONNECT_BY_COMBINE_SW - 224)) | (1 << (PlSqlParser.CONNECT_BY_COST_BASED - 224)) | (1 << (PlSqlParser.CONNECT_BY_ELIM_DUPS - 224)) | (1 << (PlSqlParser.CONNECT_BY_FILTERING - 224)) | (1 << (PlSqlParser.CONNECT_BY_ISCYCLE - 224)) | (1 << (PlSqlParser.CONNECT_BY_ISLEAF - 224)) | (1 << (PlSqlParser.CONNECT_BY_ROOT - 224)) | (1 << (PlSqlParser.CONNECT_TIME - 224)) | (1 << (PlSqlParser.CONSIDER - 224)) | (1 << (PlSqlParser.CONSISTENT - 224)) | (1 << (PlSqlParser.CONSTANT - 224)))) !== 0) || ((((_la - 256)) & ~0x1f) == 0 && ((1 << (_la - 256)) & ((1 << (PlSqlParser.CONST - 256)) | (1 << (PlSqlParser.CONSTRAINT - 256)) | (1 << (PlSqlParser.CONSTRAINTS - 256)) | (1 << (PlSqlParser.CONSTRUCTOR - 256)) | (1 << (PlSqlParser.CONTAINER - 256)) | (1 << (PlSqlParser.CONTAINER_DATA - 256)) | (1 << (PlSqlParser.CONTAINERS - 256)) | (1 << (PlSqlParser.CONTENT - 256)) | (1 << (PlSqlParser.CONTENTS - 256)) | (1 << (PlSqlParser.CONTEXT - 256)) | (1 << (PlSqlParser.CONTINUE - 256)) | (1 << (PlSqlParser.CONTROLFILE - 256)) | (1 << (PlSqlParser.CON_UID_TO_ID - 256)) | (1 << (PlSqlParser.CONVERT - 256)) | (1 << (PlSqlParser.COOKIE - 256)) | (1 << (PlSqlParser.COPY - 256)) | (1 << (PlSqlParser.CORR_K - 256)) | (1 << (PlSqlParser.CORR_S - 256)) | (1 << (PlSqlParser.CORRUPTION - 256)) | (1 << (PlSqlParser.CORRUPT_XID_ALL - 256)) | (1 << (PlSqlParser.CORRUPT_XID - 256)) | (1 << (PlSqlParser.COS - 256)) | (1 << (PlSqlParser.COSH - 256)) | (1 << (PlSqlParser.COST - 256)) | (1 << (PlSqlParser.COST_XML_QUERY_REWRITE - 256)) | (1 << (PlSqlParser.COUNT - 256)) | (1 << (PlSqlParser.COVAR_POP - 256)) | (1 << (PlSqlParser.COVAR_SAMP - 256)) | (1 << (PlSqlParser.CPU_COSTING - 256)) | (1 << (PlSqlParser.CPU_PER_CALL - 256)) | (1 << (PlSqlParser.CPU_PER_SESSION - 256)) | (1 << (PlSqlParser.CRASH - 256)))) !== 0) || ((((_la - 289)) & ~0x1f) == 0 && ((1 << (_la - 289)) & ((1 << (PlSqlParser.CREATE_FILE_DEST - 289)) | (1 << (PlSqlParser.CREATE_STORED_OUTLINES - 289)) | (1 << (PlSqlParser.CREATION - 289)) | (1 << (PlSqlParser.CREDENTIAL - 289)) | (1 << (PlSqlParser.CRITICAL - 289)) | (1 << (PlSqlParser.CROSS - 289)) | (1 << (PlSqlParser.CROSSEDITION - 289)) | (1 << (PlSqlParser.CSCONVERT - 289)) | (1 << (PlSqlParser.CUBE_AJ - 289)) | (1 << (PlSqlParser.CUBE - 289)) | (1 << (PlSqlParser.CUBE_GB - 289)) | (1 << (PlSqlParser.CUBE_SJ - 289)) | (1 << (PlSqlParser.CUME_DISTM - 289)) | (1 << (PlSqlParser.CURRENT - 289)) | (1 << (PlSqlParser.CURRENT_DATE - 289)) | (1 << (PlSqlParser.CURRENT_SCHEMA - 289)) | (1 << (PlSqlParser.CURRENT_TIME - 289)) | (1 << (PlSqlParser.CURRENT_TIMESTAMP - 289)) | (1 << (PlSqlParser.CURRENT_USER - 289)) | (1 << (PlSqlParser.CURRENTV - 289)) | (1 << (PlSqlParser.CURSOR - 289)) | (1 << (PlSqlParser.CURSOR_SHARING_EXACT - 289)) | (1 << (PlSqlParser.CURSOR_SPECIFIC_SEGMENT - 289)) | (1 << (PlSqlParser.CUSTOMDATUM - 289)) | (1 << (PlSqlParser.CV - 289)) | (1 << (PlSqlParser.CYCLE - 289)) | (1 << (PlSqlParser.DANGLING - 289)) | (1 << (PlSqlParser.DATABASE - 289)) | (1 << (PlSqlParser.DATA - 289)) | (1 << (PlSqlParser.DATAFILE - 289)) | (1 << (PlSqlParser.DATAFILES - 289)))) !== 0) || ((((_la - 321)) & ~0x1f) == 0 && ((1 << (_la - 321)) & ((1 << (PlSqlParser.DATAMOVEMENT - 321)) | (1 << (PlSqlParser.DATAOBJNO - 321)) | (1 << (PlSqlParser.DATAOBJ_TO_MAT_PARTITION - 321)) | (1 << (PlSqlParser.DATAOBJ_TO_PARTITION - 321)) | (1 << (PlSqlParser.DATAPUMP - 321)) | (1 << (PlSqlParser.DATA_SECURITY_REWRITE_LIMIT - 321)) | (1 << (PlSqlParser.DATE_MODE - 321)) | (1 << (PlSqlParser.DAY - 321)) | (1 << (PlSqlParser.DAYS - 321)) | (1 << (PlSqlParser.DBA - 321)) | (1 << (PlSqlParser.DBA_RECYCLEBIN - 321)) | (1 << (PlSqlParser.DBMS_STATS - 321)) | (1 << (PlSqlParser.DB_ROLE_CHANGE - 321)) | (1 << (PlSqlParser.DBTIMEZONE - 321)) | (1 << (PlSqlParser.DB_UNIQUE_NAME - 321)) | (1 << (PlSqlParser.DB_VERSION - 321)) | (1 << (PlSqlParser.DDL - 321)) | (1 << (PlSqlParser.DEALLOCATE - 321)) | (1 << (PlSqlParser.DEBUG - 321)) | (1 << (PlSqlParser.DEBUGGER - 321)) | (1 << (PlSqlParser.DEC - 321)) | (1 << (PlSqlParser.DECIMAL - 321)) | (1 << (PlSqlParser.DECLARE - 321)) | (1 << (PlSqlParser.DECOMPOSE - 321)) | (1 << (PlSqlParser.DECORRELATE - 321)) | (1 << (PlSqlParser.DECR - 321)) | (1 << (PlSqlParser.DECREMENT - 321)) | (1 << (PlSqlParser.DECRYPT - 321)) | (1 << (PlSqlParser.DEDUPLICATE - 321)) | (1 << (PlSqlParser.DEFAULTS - 321)))) !== 0) || ((((_la - 353)) & ~0x1f) == 0 && ((1 << (_la - 353)) & ((1 << (PlSqlParser.DEFERRABLE - 353)) | (1 << (PlSqlParser.DEFERRED - 353)) | (1 << (PlSqlParser.DEFINED - 353)) | (1 << (PlSqlParser.DEFINE - 353)) | (1 << (PlSqlParser.DEFINER - 353)) | (1 << (PlSqlParser.DEGREE - 353)) | (1 << (PlSqlParser.DELAY - 353)) | (1 << (PlSqlParser.DELEGATE - 353)) | (1 << (PlSqlParser.DELETE_ALL - 353)) | (1 << (PlSqlParser.DELETE - 353)) | (1 << (PlSqlParser.DELETEXML - 353)) | (1 << (PlSqlParser.DEMAND - 353)) | (1 << (PlSqlParser.DENSE_RANKM - 353)) | (1 << (PlSqlParser.DEPENDENT - 353)) | (1 << (PlSqlParser.DEPTH - 353)) | (1 << (PlSqlParser.DEQUEUE - 353)) | (1 << (PlSqlParser.DEREF - 353)) | (1 << (PlSqlParser.DEREF_NO_REWRITE - 353)) | (1 << (PlSqlParser.DESTROY - 353)) | (1 << (PlSqlParser.DETACHED - 353)) | (1 << (PlSqlParser.DETERMINES - 353)) | (1 << (PlSqlParser.DETERMINISTIC - 353)) | (1 << (PlSqlParser.DICTIONARY - 353)) | (1 << (PlSqlParser.DIMENSION - 353)) | (1 << (PlSqlParser.DIMENSIONS - 353)) | (1 << (PlSqlParser.DIRECT_LOAD - 353)) | (1 << (PlSqlParser.DIRECTORY - 353)) | (1 << (PlSqlParser.DIRECT_PATH - 353)) | (1 << (PlSqlParser.DISABLE_ALL - 353)) | (1 << (PlSqlParser.DISABLE - 353)) | (1 << (PlSqlParser.DISABLE_PARALLEL_DML - 353)))) !== 0) || ((((_la - 385)) & ~0x1f) == 0 && ((1 << (_la - 385)) & ((1 << (PlSqlParser.DISABLE_PRESET - 385)) | (1 << (PlSqlParser.DISABLE_RPKE - 385)) | (1 << (PlSqlParser.DISALLOW - 385)) | (1 << (PlSqlParser.DISASSOCIATE - 385)) | (1 << (PlSqlParser.DISCARD - 385)) | (1 << (PlSqlParser.DISCONNECT - 385)) | (1 << (PlSqlParser.DISK - 385)) | (1 << (PlSqlParser.DISKGROUP - 385)) | (1 << (PlSqlParser.DISKS - 385)) | (1 << (PlSqlParser.DISMOUNT - 385)) | (1 << (PlSqlParser.DISTINGUISHED - 385)) | (1 << (PlSqlParser.DISTRIBUTED - 385)) | (1 << (PlSqlParser.DISTRIBUTE - 385)) | (1 << (PlSqlParser.DML - 385)) | (1 << (PlSqlParser.DML_UPDATE - 385)) | (1 << (PlSqlParser.DOCFIDELITY - 385)) | (1 << (PlSqlParser.DOCUMENT - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_FILTER - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_NO_SORT - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_SORT - 385)) | (1 << (PlSqlParser.DOUBLE - 385)) | (1 << (PlSqlParser.DOWNGRADE - 385)) | (1 << (PlSqlParser.DRIVING_SITE - 385)) | (1 << (PlSqlParser.DROP_COLUMN - 385)) | (1 << (PlSqlParser.DROP_GROUP - 385)) | (1 << (PlSqlParser.DSINTERVAL_UNCONSTRAINED - 385)) | (1 << (PlSqlParser.DST_UPGRADE_INSERT_CONV - 385)) | (1 << (PlSqlParser.DUMP - 385)))) !== 0) || ((((_la - 417)) & ~0x1f) == 0 && ((1 << (_la - 417)) & ((1 << (PlSqlParser.DUPLICATE - 417)) | (1 << (PlSqlParser.DV - 417)) | (1 << (PlSqlParser.DYNAMIC - 417)) | (1 << (PlSqlParser.DYNAMIC_SAMPLING - 417)) | (1 << (PlSqlParser.DYNAMIC_SAMPLING_EST_CDN - 417)) | (1 << (PlSqlParser.EACH - 417)) | (1 << (PlSqlParser.EDITIONABLE - 417)) | (1 << (PlSqlParser.EDITION - 417)) | (1 << (PlSqlParser.EDITIONING - 417)) | (1 << (PlSqlParser.EDITIONS - 417)) | (1 << (PlSqlParser.ELEMENT - 417)) | (1 << (PlSqlParser.ELIM_GROUPBY - 417)) | (1 << (PlSqlParser.ELIMINATE_JOIN - 417)) | (1 << (PlSqlParser.ELIMINATE_OBY - 417)) | (1 << (PlSqlParser.ELIMINATE_OUTER_JOIN - 417)) | (1 << (PlSqlParser.EM - 417)) | (1 << (PlSqlParser.EMPTY_BLOB - 417)) | (1 << (PlSqlParser.EMPTY_CLOB - 417)) | (1 << (PlSqlParser.EMPTY - 417)) | (1 << (PlSqlParser.ENABLE_ALL - 417)) | (1 << (PlSqlParser.ENABLE - 417)) | (1 << (PlSqlParser.ENABLE_PARALLEL_DML - 417)) | (1 << (PlSqlParser.ENABLE_PRESET - 417)) | (1 << (PlSqlParser.ENCODING - 417)) | (1 << (PlSqlParser.ENCRYPT - 417)) | (1 << (PlSqlParser.ENCRYPTION - 417)) | (1 << (PlSqlParser.END_OUTLINE_DATA - 417)) | (1 << (PlSqlParser.ENFORCED - 417)) | (1 << (PlSqlParser.ENFORCE - 417)))) !== 0) || ((((_la - 449)) & ~0x1f) == 0 && ((1 << (_la - 449)) & ((1 << (PlSqlParser.ENQUEUE - 449)) | (1 << (PlSqlParser.ENTERPRISE - 449)) | (1 << (PlSqlParser.ENTITYESCAPING - 449)) | (1 << (PlSqlParser.ENTRY - 449)) | (1 << (PlSqlParser.EQUIPART - 449)) | (1 << (PlSqlParser.ERR - 449)) | (1 << (PlSqlParser.ERROR_ARGUMENT - 449)) | (1 << (PlSqlParser.ERROR - 449)) | (1 << (PlSqlParser.ERROR_ON_OVERLAP_TIME - 449)) | (1 << (PlSqlParser.ERRORS - 449)) | (1 << (PlSqlParser.ESCAPE - 449)) | (1 << (PlSqlParser.ESTIMATE - 449)) | (1 << (PlSqlParser.EVAL - 449)) | (1 << (PlSqlParser.EVALNAME - 449)) | (1 << (PlSqlParser.EVALUATE - 449)) | (1 << (PlSqlParser.EVALUATION - 449)) | (1 << (PlSqlParser.EVENTS - 449)) | (1 << (PlSqlParser.EVERY - 449)) | (1 << (PlSqlParser.EXCEPT - 449)) | (1 << (PlSqlParser.EXCEPTION - 449)) | (1 << (PlSqlParser.EXCEPTION_INIT - 449)) | (1 << (PlSqlParser.EXCEPTIONS - 449)) | (1 << (PlSqlParser.EXCHANGE - 449)) | (1 << (PlSqlParser.EXCLUDE - 449)) | (1 << (PlSqlParser.EXCLUDING - 449)) | (1 << (PlSqlParser.EXECUTE - 449)) | (1 << (PlSqlParser.EXEMPT - 449)) | (1 << (PlSqlParser.EXISTING - 449)) | (1 << (PlSqlParser.EXISTS - 449)) | (1 << (PlSqlParser.EXISTSNODE - 449)) | (1 << (PlSqlParser.EXIT - 449)))) !== 0) || ((((_la - 481)) & ~0x1f) == 0 && ((1 << (_la - 481)) & ((1 << (PlSqlParser.EXPAND_GSET_TO_UNION - 481)) | (1 << (PlSqlParser.EXPAND_TABLE - 481)) | (1 << (PlSqlParser.EXP - 481)) | (1 << (PlSqlParser.EXPIRE - 481)) | (1 << (PlSqlParser.EXPLAIN - 481)) | (1 << (PlSqlParser.EXPLOSION - 481)) | (1 << (PlSqlParser.EXPORT - 481)) | (1 << (PlSqlParser.EXPR_CORR_CHECK - 481)) | (1 << (PlSqlParser.EXPRESS - 481)) | (1 << (PlSqlParser.EXTENDS - 481)) | (1 << (PlSqlParser.EXTENT - 481)) | (1 << (PlSqlParser.EXTENTS - 481)) | (1 << (PlSqlParser.EXTERNAL - 481)) | (1 << (PlSqlParser.EXTERNALLY - 481)) | (1 << (PlSqlParser.EXTRACTCLOBXML - 481)) | (1 << (PlSqlParser.EXTRACT - 481)) | (1 << (PlSqlParser.EXTRACTVALUE - 481)) | (1 << (PlSqlParser.EXTRA - 481)) | (1 << (PlSqlParser.FACILITY - 481)) | (1 << (PlSqlParser.FACT - 481)) | (1 << (PlSqlParser.FACTOR - 481)) | (1 << (PlSqlParser.FACTORIZE_JOIN - 481)) | (1 << (PlSqlParser.FAILED - 481)) | (1 << (PlSqlParser.FAILED_LOGIN_ATTEMPTS - 481)) | (1 << (PlSqlParser.FAILGROUP - 481)) | (1 << (PlSqlParser.FAILOVER - 481)) | (1 << (PlSqlParser.FAILURE - 481)) | (1 << (PlSqlParser.FALSE - 481)) | (1 << (PlSqlParser.FAMILY - 481)) | (1 << (PlSqlParser.FAR - 481)) | (1 << (PlSqlParser.FAST - 481)) | (1 << (PlSqlParser.FASTSTART - 481)))) !== 0) || ((((_la - 513)) & ~0x1f) == 0 && ((1 << (_la - 513)) & ((1 << (PlSqlParser.FBTSCAN - 513)) | (1 << (PlSqlParser.FEATURE_DETAILS - 513)) | (1 << (PlSqlParser.FEATURE_ID - 513)) | (1 << (PlSqlParser.FEATURE_SET - 513)) | (1 << (PlSqlParser.FEATURE_VALUE - 513)) | (1 << (PlSqlParser.FETCH - 513)) | (1 << (PlSqlParser.FILE - 513)) | (1 << (PlSqlParser.FILE_NAME_CONVERT - 513)) | (1 << (PlSqlParser.FILESYSTEM_LIKE_LOGGING - 513)) | (1 << (PlSqlParser.FILTER - 513)) | (1 << (PlSqlParser.FINAL - 513)) | (1 << (PlSqlParser.FINE - 513)) | (1 << (PlSqlParser.FINISH - 513)) | (1 << (PlSqlParser.FIRST - 513)) | (1 << (PlSqlParser.FIRSTM - 513)) | (1 << (PlSqlParser.FIRST_ROWS - 513)) | (1 << (PlSqlParser.FIRST_VALUE - 513)) | (1 << (PlSqlParser.FIXED_VIEW_DATA - 513)) | (1 << (PlSqlParser.FLAGGER - 513)) | (1 << (PlSqlParser.FLASHBACK - 513)) | (1 << (PlSqlParser.FLASH_CACHE - 513)) | (1 << (PlSqlParser.FLOAT - 513)) | (1 << (PlSqlParser.FLOB - 513)) | (1 << (PlSqlParser.FLOOR - 513)) | (1 << (PlSqlParser.FLUSH - 513)) | (1 << (PlSqlParser.FOLDER - 513)) | (1 << (PlSqlParser.FOLLOWING - 513)) | (1 << (PlSqlParser.FOLLOWS - 513)) | (1 << (PlSqlParser.FORALL - 513)) | (1 << (PlSqlParser.FORCE - 513)) | (1 << (PlSqlParser.FORCE_XML_QUERY_REWRITE - 513)) | (1 << (PlSqlParser.FOREIGN - 513)))) !== 0) || ((((_la - 545)) & ~0x1f) == 0 && ((1 << (_la - 545)) & ((1 << (PlSqlParser.FOREVER - 545)) | (1 << (PlSqlParser.FORMAT - 545)) | (1 << (PlSqlParser.FORWARD - 545)) | (1 << (PlSqlParser.FRAGMENT_NUMBER - 545)) | (1 << (PlSqlParser.FREELIST - 545)) | (1 << (PlSqlParser.FREELISTS - 545)) | (1 << (PlSqlParser.FREEPOOLS - 545)) | (1 << (PlSqlParser.FRESH - 545)) | (1 << (PlSqlParser.FROM_TZ - 545)) | (1 << (PlSqlParser.FULL - 545)) | (1 << (PlSqlParser.FULL_OUTER_JOIN_TO_OUTER - 545)) | (1 << (PlSqlParser.FUNCTION - 545)) | (1 << (PlSqlParser.FUNCTIONS - 545)) | (1 << (PlSqlParser.GATHER_OPTIMIZER_STATISTICS - 545)) | (1 << (PlSqlParser.GATHER_PLAN_STATISTICS - 545)) | (1 << (PlSqlParser.GBY_CONC_ROLLUP - 545)) | (1 << (PlSqlParser.GBY_PUSHDOWN - 545)) | (1 << (PlSqlParser.GENERATED - 545)) | (1 << (PlSqlParser.GET - 545)) | (1 << (PlSqlParser.GLOBAL - 545)) | (1 << (PlSqlParser.GLOBALLY - 545)) | (1 << (PlSqlParser.GLOBAL_NAME - 545)) | (1 << (PlSqlParser.GLOBAL_TOPIC_ENABLED - 545)) | (1 << (PlSqlParser.GROUP_BY - 545)) | (1 << (PlSqlParser.GROUP_ID - 545)) | (1 << (PlSqlParser.GROUPING - 545)) | (1 << (PlSqlParser.GROUPING_ID - 545)))) !== 0) || ((((_la - 577)) & ~0x1f) == 0 && ((1 << (_la - 577)) & ((1 << (PlSqlParser.GROUPS - 577)) | (1 << (PlSqlParser.GUARANTEED - 577)) | (1 << (PlSqlParser.GUARANTEE - 577)) | (1 << (PlSqlParser.GUARD - 577)) | (1 << (PlSqlParser.HASH_AJ - 577)) | (1 << (PlSqlParser.HASH - 577)) | (1 << (PlSqlParser.HASHKEYS - 577)) | (1 << (PlSqlParser.HASH_SJ - 577)) | (1 << (PlSqlParser.HEADER - 577)) | (1 << (PlSqlParser.HEAP - 577)) | (1 << (PlSqlParser.HELP - 577)) | (1 << (PlSqlParser.HEXTORAW - 577)) | (1 << (PlSqlParser.HEXTOREF - 577)) | (1 << (PlSqlParser.HIDDEN_KEYWORD - 577)) | (1 << (PlSqlParser.HIDE - 577)) | (1 << (PlSqlParser.HIERARCHY - 577)) | (1 << (PlSqlParser.HIGH - 577)) | (1 << (PlSqlParser.HINTSET_BEGIN - 577)) | (1 << (PlSqlParser.HINTSET_END - 577)) | (1 << (PlSqlParser.HOT - 577)) | (1 << (PlSqlParser.HOUR - 577)) | (1 << (PlSqlParser.HWM_BROKERED - 577)) | (1 << (PlSqlParser.HYBRID - 577)) | (1 << (PlSqlParser.IDENTIFIER - 577)) | (1 << (PlSqlParser.IDENTITY - 577)) | (1 << (PlSqlParser.IDGENERATORS - 577)) | (1 << (PlSqlParser.ID - 577)) | (1 << (PlSqlParser.IDLE_TIME - 577)) | (1 << (PlSqlParser.IF - 577)) | (1 << (PlSqlParser.IGNORE - 577)))) !== 0) || ((((_la - 609)) & ~0x1f) == 0 && ((1 << (_la - 609)) & ((1 << (PlSqlParser.IGNORE_OPTIM_EMBEDDED_HINTS - 609)) | (1 << (PlSqlParser.IGNORE_ROW_ON_DUPKEY_INDEX - 609)) | (1 << (PlSqlParser.IGNORE_WHERE_CLAUSE - 609)) | (1 << (PlSqlParser.ILM - 609)) | (1 << (PlSqlParser.IMMEDIATE - 609)) | (1 << (PlSqlParser.IMPACT - 609)) | (1 << (PlSqlParser.IMPORT - 609)) | (1 << (PlSqlParser.INACTIVE - 609)) | (1 << (PlSqlParser.INCLUDE - 609)) | (1 << (PlSqlParser.INCLUDE_VERSION - 609)) | (1 << (PlSqlParser.INCLUDING - 609)) | (1 << (PlSqlParser.INCREMENTAL - 609)) | (1 << (PlSqlParser.INCREMENT - 609)) | (1 << (PlSqlParser.INCR - 609)) | (1 << (PlSqlParser.INDENT - 609)) | (1 << (PlSqlParser.INDEX_ASC - 609)) | (1 << (PlSqlParser.INDEX_COMBINE - 609)) | (1 << (PlSqlParser.INDEX_DESC - 609)) | (1 << (PlSqlParser.INDEXED - 609)) | (1 << (PlSqlParser.INDEXES - 609)) | (1 << (PlSqlParser.INDEX_FFS - 609)) | (1 << (PlSqlParser.INDEX_FILTER - 609)) | (1 << (PlSqlParser.INDEXING - 609)) | (1 << (PlSqlParser.INDEX_JOIN - 609)) | (1 << (PlSqlParser.INDEX_ROWS - 609)) | (1 << (PlSqlParser.INDEX_RRS - 609)) | (1 << (PlSqlParser.INDEX_RS_ASC - 609)) | (1 << (PlSqlParser.INDEX_RS_DESC - 609)) | (1 << (PlSqlParser.INDEX_RS - 609)) | (1 << (PlSqlParser.INDEX_SCAN - 609)) | (1 << (PlSqlParser.INDEX_SKIP_SCAN - 609)))) !== 0) || ((((_la - 641)) & ~0x1f) == 0 && ((1 << (_la - 641)) & ((1 << (PlSqlParser.INDEX_SS_ASC - 641)) | (1 << (PlSqlParser.INDEX_SS_DESC - 641)) | (1 << (PlSqlParser.INDEX_SS - 641)) | (1 << (PlSqlParser.INDEX_STATS - 641)) | (1 << (PlSqlParser.INDEXTYPE - 641)) | (1 << (PlSqlParser.INDEXTYPES - 641)) | (1 << (PlSqlParser.INDICATOR - 641)) | (1 << (PlSqlParser.INDICES - 641)) | (1 << (PlSqlParser.INFINITE - 641)) | (1 << (PlSqlParser.INFORMATIONAL - 641)) | (1 << (PlSqlParser.INHERIT - 641)) | (1 << (PlSqlParser.INITCAP - 641)) | (1 << (PlSqlParser.INITIAL - 641)) | (1 << (PlSqlParser.INITIALIZED - 641)) | (1 << (PlSqlParser.INITIALLY - 641)) | (1 << (PlSqlParser.INITRANS - 641)) | (1 << (PlSqlParser.INLINE - 641)) | (1 << (PlSqlParser.INLINE_XMLTYPE_NT - 641)) | (1 << (PlSqlParser.INMEMORY - 641)) | (1 << (PlSqlParser.IN_MEMORY_METADATA - 641)) | (1 << (PlSqlParser.INMEMORY_PRUNING - 641)) | (1 << (PlSqlParser.INNER - 641)) | (1 << (PlSqlParser.INOUT - 641)) | (1 << (PlSqlParser.INPLACE - 641)) | (1 << (PlSqlParser.INSERTCHILDXMLAFTER - 641)) | (1 << (PlSqlParser.INSERTCHILDXMLBEFORE - 641)) | (1 << (PlSqlParser.INSERTCHILDXML - 641)) | (1 << (PlSqlParser.INSERTXMLAFTER - 641)) | (1 << (PlSqlParser.INSERTXMLBEFORE - 641)) | (1 << (PlSqlParser.INSTANCE - 641)))) !== 0) || ((((_la - 673)) & ~0x1f) == 0 && ((1 << (_la - 673)) & ((1 << (PlSqlParser.INSTANCES - 673)) | (1 << (PlSqlParser.INSTANTIABLE - 673)) | (1 << (PlSqlParser.INSTANTLY - 673)) | (1 << (PlSqlParser.INSTEAD - 673)) | (1 << (PlSqlParser.INSTR2 - 673)) | (1 << (PlSqlParser.INSTR4 - 673)) | (1 << (PlSqlParser.INSTRB - 673)) | (1 << (PlSqlParser.INSTRC - 673)) | (1 << (PlSqlParser.INSTR - 673)) | (1 << (PlSqlParser.INTEGER - 673)) | (1 << (PlSqlParser.INTERLEAVED - 673)) | (1 << (PlSqlParser.INTERMEDIATE - 673)) | (1 << (PlSqlParser.INTERNAL_CONVERT - 673)) | (1 << (PlSqlParser.INTERNAL_USE - 673)) | (1 << (PlSqlParser.INTERPRETED - 673)) | (1 << (PlSqlParser.INTERVAL - 673)) | (1 << (PlSqlParser.INT - 673)) | (1 << (PlSqlParser.INVALIDATE - 673)) | (1 << (PlSqlParser.INVISIBLE - 673)) | (1 << (PlSqlParser.IN_XQUERY - 673)) | (1 << (PlSqlParser.ISOLATION - 673)) | (1 << (PlSqlParser.ISOLATION_LEVEL - 673)) | (1 << (PlSqlParser.ITERATE - 673)) | (1 << (PlSqlParser.ITERATION_NUMBER - 673)) | (1 << (PlSqlParser.JAVA - 673)) | (1 << (PlSqlParser.JOB - 673)) | (1 << (PlSqlParser.JOIN - 673)) | (1 << (PlSqlParser.JSON_ARRAYAGG - 673)) | (1 << (PlSqlParser.JSON_ARRAY - 673)))) !== 0) || ((((_la - 705)) & ~0x1f) == 0 && ((1 << (_la - 705)) & ((1 << (PlSqlParser.JSON_EQUAL - 705)) | (1 << (PlSqlParser.JSON_EXISTS2 - 705)) | (1 << (PlSqlParser.JSON_EXISTS - 705)) | (1 << (PlSqlParser.JSONGET - 705)) | (1 << (PlSqlParser.JSON - 705)) | (1 << (PlSqlParser.JSON_OBJECTAGG - 705)) | (1 << (PlSqlParser.JSON_OBJECT - 705)) | (1 << (PlSqlParser.JSONPARSE - 705)) | (1 << (PlSqlParser.JSON_QUERY - 705)) | (1 << (PlSqlParser.JSON_SERIALIZE - 705)) | (1 << (PlSqlParser.JSON_TABLE - 705)) | (1 << (PlSqlParser.JSON_TEXTCONTAINS2 - 705)) | (1 << (PlSqlParser.JSON_TEXTCONTAINS - 705)) | (1 << (PlSqlParser.JSON_VALUE - 705)) | (1 << (PlSqlParser.KEEP_DUPLICATES - 705)) | (1 << (PlSqlParser.KEEP - 705)) | (1 << (PlSqlParser.KERBEROS - 705)) | (1 << (PlSqlParser.KEY - 705)) | (1 << (PlSqlParser.KEY_LENGTH - 705)) | (1 << (PlSqlParser.KEYSIZE - 705)) | (1 << (PlSqlParser.KEYS - 705)) | (1 << (PlSqlParser.KEYSTORE - 705)) | (1 << (PlSqlParser.KILL - 705)) | (1 << (PlSqlParser.LABEL - 705)) | (1 << (PlSqlParser.LANGUAGE - 705)) | (1 << (PlSqlParser.LAST_DAY - 705)) | (1 << (PlSqlParser.LAST - 705)) | (1 << (PlSqlParser.LAST_VALUE - 705)) | (1 << (PlSqlParser.LATERAL - 705)) | (1 << (PlSqlParser.LAX - 705)) | (1 << (PlSqlParser.LAYER - 705)) | (1 << (PlSqlParser.LDAP_REGISTRATION_ENABLED - 705)))) !== 0) || ((((_la - 737)) & ~0x1f) == 0 && ((1 << (_la - 737)) & ((1 << (PlSqlParser.LDAP_REGISTRATION - 737)) | (1 << (PlSqlParser.LDAP_REG_SYNC_INTERVAL - 737)) | (1 << (PlSqlParser.LEADING - 737)) | (1 << (PlSqlParser.LEFT - 737)) | (1 << (PlSqlParser.LENGTH2 - 737)) | (1 << (PlSqlParser.LENGTH4 - 737)) | (1 << (PlSqlParser.LENGTHB - 737)) | (1 << (PlSqlParser.LENGTHC - 737)) | (1 << (PlSqlParser.LENGTH - 737)) | (1 << (PlSqlParser.LESS - 737)) | (1 << (PlSqlParser.LEVEL - 737)) | (1 << (PlSqlParser.LEVELS - 737)) | (1 << (PlSqlParser.LIBRARY - 737)) | (1 << (PlSqlParser.LIFECYCLE - 737)) | (1 << (PlSqlParser.LIFE - 737)) | (1 << (PlSqlParser.LIFETIME - 737)) | (1 << (PlSqlParser.LIKE2 - 737)) | (1 << (PlSqlParser.LIKE4 - 737)) | (1 << (PlSqlParser.LIKEC - 737)) | (1 << (PlSqlParser.LIKE_EXPAND - 737)) | (1 << (PlSqlParser.LIMIT - 737)) | (1 << (PlSqlParser.LINEAR - 737)) | (1 << (PlSqlParser.LINK - 737)) | (1 << (PlSqlParser.LIST - 737)) | (1 << (PlSqlParser.LN - 737)) | (1 << (PlSqlParser.LNNVL - 737)) | (1 << (PlSqlParser.LOAD - 737)) | (1 << (PlSqlParser.LOB - 737)) | (1 << (PlSqlParser.LOBNVL - 737)) | (1 << (PlSqlParser.LOBS - 737)) | (1 << (PlSqlParser.LOCAL_INDEXES - 737)))) !== 0) || ((((_la - 769)) & ~0x1f) == 0 && ((1 << (_la - 769)) & ((1 << (PlSqlParser.LOCAL - 769)) | (1 << (PlSqlParser.LOCALTIME - 769)) | (1 << (PlSqlParser.LOCALTIMESTAMP - 769)) | (1 << (PlSqlParser.LOCATION - 769)) | (1 << (PlSqlParser.LOCATOR - 769)) | (1 << (PlSqlParser.LOCKED - 769)) | (1 << (PlSqlParser.LOCKING - 769)) | (1 << (PlSqlParser.LOGFILE - 769)) | (1 << (PlSqlParser.LOGFILES - 769)) | (1 << (PlSqlParser.LOGGING - 769)) | (1 << (PlSqlParser.LOGICAL - 769)) | (1 << (PlSqlParser.LOGICAL_READS_PER_CALL - 769)) | (1 << (PlSqlParser.LOGICAL_READS_PER_SESSION - 769)) | (1 << (PlSqlParser.LOG - 769)) | (1 << (PlSqlParser.LOGMINING - 769)) | (1 << (PlSqlParser.LOGOFF - 769)) | (1 << (PlSqlParser.LOGON - 769)) | (1 << (PlSqlParser.LOG_READ_ONLY_VIOLATIONS - 769)) | (1 << (PlSqlParser.LONG - 769)) | (1 << (PlSqlParser.LOOP - 769)) | (1 << (PlSqlParser.LOWER - 769)) | (1 << (PlSqlParser.LOW - 769)) | (1 << (PlSqlParser.LPAD - 769)) | (1 << (PlSqlParser.LTRIM - 769)) | (1 << (PlSqlParser.MAIN - 769)) | (1 << (PlSqlParser.MAKE_REF - 769)) | (1 << (PlSqlParser.MANAGED - 769)) | (1 << (PlSqlParser.MANAGE - 769)) | (1 << (PlSqlParser.MANAGEMENT - 769)) | (1 << (PlSqlParser.MANAGER - 769)) | (1 << (PlSqlParser.MANUAL - 769)))) !== 0) || ((((_la - 801)) & ~0x1f) == 0 && ((1 << (_la - 801)) & ((1 << (PlSqlParser.MAP - 801)) | (1 << (PlSqlParser.MAPPING - 801)) | (1 << (PlSqlParser.MASTER - 801)) | (1 << (PlSqlParser.MATCHED - 801)) | (1 << (PlSqlParser.MATCHES - 801)) | (1 << (PlSqlParser.MATCH - 801)) | (1 << (PlSqlParser.MATCH_NUMBER - 801)) | (1 << (PlSqlParser.MATCH_RECOGNIZE - 801)) | (1 << (PlSqlParser.MATERIALIZED - 801)) | (1 << (PlSqlParser.MATERIALIZE - 801)) | (1 << (PlSqlParser.MAXARCHLOGS - 801)) | (1 << (PlSqlParser.MAXDATAFILES - 801)) | (1 << (PlSqlParser.MAXEXTENTS - 801)) | (1 << (PlSqlParser.MAXIMIZE - 801)) | (1 << (PlSqlParser.MAXINSTANCES - 801)) | (1 << (PlSqlParser.MAXLOGFILES - 801)) | (1 << (PlSqlParser.MAXLOGHISTORY - 801)) | (1 << (PlSqlParser.MAXLOGMEMBERS - 801)) | (1 << (PlSqlParser.MAX_SHARED_TEMP_SIZE - 801)) | (1 << (PlSqlParser.MAXSIZE - 801)) | (1 << (PlSqlParser.MAXTRANS - 801)) | (1 << (PlSqlParser.MAXVALUE - 801)) | (1 << (PlSqlParser.MEASURE - 801)) | (1 << (PlSqlParser.MEASURES - 801)) | (1 << (PlSqlParser.MEDIUM - 801)) | (1 << (PlSqlParser.MEMBER - 801)) | (1 << (PlSqlParser.MEMCOMPRESS - 801)) | (1 << (PlSqlParser.MEMORY - 801)) | (1 << (PlSqlParser.MERGEACTIONS - 801)) | (1 << (PlSqlParser.MERGE_AJ - 801)) | (1 << (PlSqlParser.MERGE_CONST_ON - 801)) | (1 << (PlSqlParser.MERGE - 801)))) !== 0) || ((((_la - 833)) & ~0x1f) == 0 && ((1 << (_la - 833)) & ((1 << (PlSqlParser.MERGE_SJ - 833)) | (1 << (PlSqlParser.METADATA - 833)) | (1 << (PlSqlParser.METHOD - 833)) | (1 << (PlSqlParser.MIGRATE - 833)) | (1 << (PlSqlParser.MIGRATION - 833)) | (1 << (PlSqlParser.MINEXTENTS - 833)) | (1 << (PlSqlParser.MINIMIZE - 833)) | (1 << (PlSqlParser.MINIMUM - 833)) | (1 << (PlSqlParser.MINING - 833)) | (1 << (PlSqlParser.MINUS_NULL - 833)) | (1 << (PlSqlParser.MINUTE - 833)) | (1 << (PlSqlParser.MINVALUE - 833)) | (1 << (PlSqlParser.MIRRORCOLD - 833)) | (1 << (PlSqlParser.MIRRORHOT - 833)) | (1 << (PlSqlParser.MIRROR - 833)) | (1 << (PlSqlParser.MLSLABEL - 833)) | (1 << (PlSqlParser.MODEL_COMPILE_SUBQUERY - 833)) | (1 << (PlSqlParser.MODEL_DONTVERIFY_UNIQUENESS - 833)) | (1 << (PlSqlParser.MODEL_DYNAMIC_SUBQUERY - 833)) | (1 << (PlSqlParser.MODEL_MIN_ANALYSIS - 833)) | (1 << (PlSqlParser.MODEL - 833)) | (1 << (PlSqlParser.MODEL_NB - 833)) | (1 << (PlSqlParser.MODEL_NO_ANALYSIS - 833)) | (1 << (PlSqlParser.MODEL_PBY - 833)) | (1 << (PlSqlParser.MODEL_PUSH_REF - 833)) | (1 << (PlSqlParser.MODEL_SV - 833)) | (1 << (PlSqlParser.MODIFICATION - 833)) | (1 << (PlSqlParser.MODIFY_COLUMN_TYPE - 833)) | (1 << (PlSqlParser.MODIFY - 833)) | (1 << (PlSqlParser.MOD - 833)))) !== 0) || ((((_la - 865)) & ~0x1f) == 0 && ((1 << (_la - 865)) & ((1 << (PlSqlParser.MODULE - 865)) | (1 << (PlSqlParser.MONITORING - 865)) | (1 << (PlSqlParser.MONITOR - 865)) | (1 << (PlSqlParser.MONTH - 865)) | (1 << (PlSqlParser.MONTHS_BETWEEN - 865)) | (1 << (PlSqlParser.MONTHS - 865)) | (1 << (PlSqlParser.MOUNT - 865)) | (1 << (PlSqlParser.MOUNTPATH - 865)) | (1 << (PlSqlParser.MOVEMENT - 865)) | (1 << (PlSqlParser.MOVE - 865)) | (1 << (PlSqlParser.MULTIDIMENSIONAL - 865)) | (1 << (PlSqlParser.MULTISET - 865)) | (1 << (PlSqlParser.MV_MERGE - 865)) | (1 << (PlSqlParser.NAMED - 865)) | (1 << (PlSqlParser.NAME - 865)) | (1 << (PlSqlParser.NAMESPACE - 865)) | (1 << (PlSqlParser.NAN - 865)) | (1 << (PlSqlParser.NANVL - 865)) | (1 << (PlSqlParser.NATIONAL - 865)) | (1 << (PlSqlParser.NATIVE_FULL_OUTER_JOIN - 865)) | (1 << (PlSqlParser.NATIVE - 865)) | (1 << (PlSqlParser.NATURAL - 865)) | (1 << (PlSqlParser.NAV - 865)) | (1 << (PlSqlParser.NCHAR_CS - 865)) | (1 << (PlSqlParser.NCHAR - 865)) | (1 << (PlSqlParser.NCHR - 865)) | (1 << (PlSqlParser.NCLOB - 865)) | (1 << (PlSqlParser.NEEDED - 865)) | (1 << (PlSqlParser.NEG - 865)) | (1 << (PlSqlParser.NESTED - 865)) | (1 << (PlSqlParser.NESTED_TABLE_FAST_INSERT - 865)))) !== 0) || ((((_la - 897)) & ~0x1f) == 0 && ((1 << (_la - 897)) & ((1 << (PlSqlParser.NESTED_TABLE_GET_REFS - 897)) | (1 << (PlSqlParser.NESTED_TABLE_ID - 897)) | (1 << (PlSqlParser.NESTED_TABLE_SET_REFS - 897)) | (1 << (PlSqlParser.NESTED_TABLE_SET_SETID - 897)) | (1 << (PlSqlParser.NETWORK - 897)) | (1 << (PlSqlParser.NEVER - 897)) | (1 << (PlSqlParser.NEW - 897)) | (1 << (PlSqlParser.NEW_TIME - 897)) | (1 << (PlSqlParser.NEXT_DAY - 897)) | (1 << (PlSqlParser.NEXT - 897)) | (1 << (PlSqlParser.NL_AJ - 897)) | (1 << (PlSqlParser.NLJ_BATCHING - 897)) | (1 << (PlSqlParser.NLJ_INDEX_FILTER - 897)) | (1 << (PlSqlParser.NLJ_INDEX_SCAN - 897)) | (1 << (PlSqlParser.NLJ_PREFETCH - 897)) | (1 << (PlSqlParser.NLS_CALENDAR - 897)) | (1 << (PlSqlParser.NLS_CHARACTERSET - 897)) | (1 << (PlSqlParser.NLS_CHARSET_DECL_LEN - 897)) | (1 << (PlSqlParser.NLS_CHARSET_ID - 897)) | (1 << (PlSqlParser.NLS_CHARSET_NAME - 897)) | (1 << (PlSqlParser.NLS_COMP - 897)) | (1 << (PlSqlParser.NLS_CURRENCY - 897)) | (1 << (PlSqlParser.NLS_DATE_FORMAT - 897)) | (1 << (PlSqlParser.NLS_DATE_LANGUAGE - 897)) | (1 << (PlSqlParser.NLS_INITCAP - 897)) | (1 << (PlSqlParser.NLS_ISO_CURRENCY - 897)) | (1 << (PlSqlParser.NL_SJ - 897)) | (1 << (PlSqlParser.NLS_LANG - 897)) | (1 << (PlSqlParser.NLS_LANGUAGE - 897)) | (1 << (PlSqlParser.NLS_LENGTH_SEMANTICS - 897)) | (1 << (PlSqlParser.NLS_LOWER - 897)) | (1 << (PlSqlParser.NLS_NCHAR_CONV_EXCP - 897)))) !== 0) || ((((_la - 929)) & ~0x1f) == 0 && ((1 << (_la - 929)) & ((1 << (PlSqlParser.NLS_NUMERIC_CHARACTERS - 929)) | (1 << (PlSqlParser.NLS_SORT - 929)) | (1 << (PlSqlParser.NLSSORT - 929)) | (1 << (PlSqlParser.NLS_SPECIAL_CHARS - 929)) | (1 << (PlSqlParser.NLS_TERRITORY - 929)) | (1 << (PlSqlParser.NLS_UPPER - 929)) | (1 << (PlSqlParser.NO_ACCESS - 929)) | (1 << (PlSqlParser.NO_ADAPTIVE_PLAN - 929)) | (1 << (PlSqlParser.NO_ANSI_REARCH - 929)) | (1 << (PlSqlParser.NOAPPEND - 929)) | (1 << (PlSqlParser.NOARCHIVELOG - 929)) | (1 << (PlSqlParser.NOAUDIT - 929)) | (1 << (PlSqlParser.NO_AUTO_REOPTIMIZE - 929)) | (1 << (PlSqlParser.NO_BASETABLE_MULTIMV_REWRITE - 929)) | (1 << (PlSqlParser.NO_BATCH_TABLE_ACCESS_BY_ROWID - 929)) | (1 << (PlSqlParser.NO_BIND_AWARE - 929)) | (1 << (PlSqlParser.NO_BUFFER - 929)) | (1 << (PlSqlParser.NOCACHE - 929)) | (1 << (PlSqlParser.NO_CARTESIAN - 929)) | (1 << (PlSqlParser.NO_CHECK_ACL_REWRITE - 929)) | (1 << (PlSqlParser.NO_CLUSTER_BY_ROWID - 929)) | (1 << (PlSqlParser.NO_CLUSTERING - 929)) | (1 << (PlSqlParser.NO_COALESCE_SQ - 929)) | (1 << (PlSqlParser.NO_COMMON_DATA - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_CB_WHR_ONLY - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_COMBINE_SW - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_COST_BASED - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_ELIM_DUPS - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_FILTERING - 929)) | (1 << (PlSqlParser.NOCOPY - 929)) | (1 << (PlSqlParser.NO_COST_XML_QUERY_REWRITE - 929)))) !== 0) || ((((_la - 961)) & ~0x1f) == 0 && ((1 << (_la - 961)) & ((1 << (PlSqlParser.NO_CPU_COSTING - 961)) | (1 << (PlSqlParser.NOCPU_COSTING - 961)) | (1 << (PlSqlParser.NOCYCLE - 961)) | (1 << (PlSqlParser.NO_DATA_SECURITY_REWRITE - 961)) | (1 << (PlSqlParser.NO_DECORRELATE - 961)) | (1 << (PlSqlParser.NODELAY - 961)) | (1 << (PlSqlParser.NO_DOMAIN_INDEX_FILTER - 961)) | (1 << (PlSqlParser.NO_DST_UPGRADE_INSERT_CONV - 961)) | (1 << (PlSqlParser.NO_ELIM_GROUPBY - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_JOIN - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_OBY - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_OUTER_JOIN - 961)) | (1 << (PlSqlParser.NOENTITYESCAPING - 961)) | (1 << (PlSqlParser.NO_EXPAND_GSET_TO_UNION - 961)) | (1 << (PlSqlParser.NO_EXPAND - 961)) | (1 << (PlSqlParser.NO_EXPAND_TABLE - 961)) | (1 << (PlSqlParser.NO_FACT - 961)) | (1 << (PlSqlParser.NO_FACTORIZE_JOIN - 961)) | (1 << (PlSqlParser.NO_FILTERING - 961)) | (1 << (PlSqlParser.NOFORCE - 961)) | (1 << (PlSqlParser.NO_FULL_OUTER_JOIN_TO_OUTER - 961)) | (1 << (PlSqlParser.NO_GATHER_OPTIMIZER_STATISTICS - 961)) | (1 << (PlSqlParser.NO_GBY_PUSHDOWN - 961)) | (1 << (PlSqlParser.NOGUARANTEE - 961)) | (1 << (PlSqlParser.NO_INDEX_FFS - 961)) | (1 << (PlSqlParser.NO_INDEX - 961)) | (1 << (PlSqlParser.NO_INDEX_SS - 961)) | (1 << (PlSqlParser.NO_INMEMORY - 961)) | (1 << (PlSqlParser.NO_INMEMORY_PRUNING - 961)) | (1 << (PlSqlParser.NOKEEP - 961)) | (1 << (PlSqlParser.NO_LOAD - 961)) | (1 << (PlSqlParser.NOLOCAL - 961)))) !== 0) || ((((_la - 993)) & ~0x1f) == 0 && ((1 << (_la - 993)) & ((1 << (PlSqlParser.NOLOGGING - 993)) | (1 << (PlSqlParser.NOMAPPING - 993)) | (1 << (PlSqlParser.NOMAXVALUE - 993)) | (1 << (PlSqlParser.NO_MERGE - 993)) | (1 << (PlSqlParser.NOMINIMIZE - 993)) | (1 << (PlSqlParser.NOMINVALUE - 993)) | (1 << (PlSqlParser.NO_MODEL_PUSH_REF - 993)) | (1 << (PlSqlParser.NO_MONITORING - 993)) | (1 << (PlSqlParser.NOMONITORING - 993)) | (1 << (PlSqlParser.NO_MONITOR - 993)) | (1 << (PlSqlParser.NO_MULTIMV_REWRITE - 993)) | (1 << (PlSqlParser.NO_NATIVE_FULL_OUTER_JOIN - 993)) | (1 << (PlSqlParser.NONBLOCKING - 993)) | (1 << (PlSqlParser.NONEDITIONABLE - 993)) | (1 << (PlSqlParser.NONE - 993)) | (1 << (PlSqlParser.NO_NLJ_BATCHING - 993)) | (1 << (PlSqlParser.NO_NLJ_PREFETCH - 993)) | (1 << (PlSqlParser.NO - 993)) | (1 << (PlSqlParser.NONSCHEMA - 993)) | (1 << (PlSqlParser.NO_OBJECT_LINK - 993)) | (1 << (PlSqlParser.NOORDER - 993)) | (1 << (PlSqlParser.NO_ORDER_ROLLUPS - 993)) | (1 << (PlSqlParser.NO_OUTER_JOIN_TO_ANTI - 993)) | (1 << (PlSqlParser.NO_OUTER_JOIN_TO_INNER - 993)) | (1 << (PlSqlParser.NOOVERRIDE - 993)) | (1 << (PlSqlParser.NO_PARALLEL_INDEX - 993)) | (1 << (PlSqlParser.NOPARALLEL_INDEX - 993)) | (1 << (PlSqlParser.NO_PARALLEL - 993)) | (1 << (PlSqlParser.NOPARALLEL - 993)) | (1 << (PlSqlParser.NO_PARTIAL_COMMIT - 993)) | (1 << (PlSqlParser.NO_PARTIAL_JOIN - 993)) | (1 << (PlSqlParser.NO_PARTIAL_ROLLUP_PUSHDOWN - 993)))) !== 0) || ((((_la - 1025)) & ~0x1f) == 0 && ((1 << (_la - 1025)) & ((1 << (PlSqlParser.NOPARTITION - 1025)) | (1 << (PlSqlParser.NO_PLACE_DISTINCT - 1025)) | (1 << (PlSqlParser.NO_PLACE_GROUP_BY - 1025)) | (1 << (PlSqlParser.NO_PQ_CONCURRENT_UNION - 1025)) | (1 << (PlSqlParser.NO_PQ_MAP - 1025)) | (1 << (PlSqlParser.NO_PQ_REPLICATE - 1025)) | (1 << (PlSqlParser.NO_PQ_SKEW - 1025)) | (1 << (PlSqlParser.NO_PRUNE_GSETS - 1025)) | (1 << (PlSqlParser.NO_PULL_PRED - 1025)) | (1 << (PlSqlParser.NO_PUSH_PRED - 1025)) | (1 << (PlSqlParser.NO_PUSH_SUBQ - 1025)) | (1 << (PlSqlParser.NO_PX_FAULT_TOLERANCE - 1025)) | (1 << (PlSqlParser.NO_PX_JOIN_FILTER - 1025)) | (1 << (PlSqlParser.NO_QKN_BUFF - 1025)) | (1 << (PlSqlParser.NO_QUERY_TRANSFORMATION - 1025)) | (1 << (PlSqlParser.NO_REF_CASCADE - 1025)) | (1 << (PlSqlParser.NORELOCATE - 1025)) | (1 << (PlSqlParser.NORELY - 1025)) | (1 << (PlSqlParser.NOREPAIR - 1025)) | (1 << (PlSqlParser.NOREPLAY - 1025)) | (1 << (PlSqlParser.NORESETLOGS - 1025)) | (1 << (PlSqlParser.NO_RESULT_CACHE - 1025)) | (1 << (PlSqlParser.NOREVERSE - 1025)) | (1 << (PlSqlParser.NO_REWRITE - 1025)) | (1 << (PlSqlParser.NOREWRITE - 1025)) | (1 << (PlSqlParser.NORMAL - 1025)) | (1 << (PlSqlParser.NO_ROOT_SW_FOR_LOCAL - 1025)) | (1 << (PlSqlParser.NOROWDEPENDENCIES - 1025)) | (1 << (PlSqlParser.NOSCHEMACHECK - 1025)) | (1 << (PlSqlParser.NOSEGMENT - 1025)) | (1 << (PlSqlParser.NO_SEMIJOIN - 1025)) | (1 << (PlSqlParser.NO_SEMI_TO_INNER - 1025)))) !== 0) || ((((_la - 1057)) & ~0x1f) == 0 && ((1 << (_la - 1057)) & ((1 << (PlSqlParser.NO_SET_TO_JOIN - 1057)) | (1 << (PlSqlParser.NOSORT - 1057)) | (1 << (PlSqlParser.NO_SQL_TRANSLATION - 1057)) | (1 << (PlSqlParser.NO_SQL_TUNE - 1057)) | (1 << (PlSqlParser.NO_STAR_TRANSFORMATION - 1057)) | (1 << (PlSqlParser.NO_STATEMENT_QUEUING - 1057)) | (1 << (PlSqlParser.NO_STATS_GSETS - 1057)) | (1 << (PlSqlParser.NOSTRICT - 1057)) | (1 << (PlSqlParser.NO_SUBQUERY_PRUNING - 1057)) | (1 << (PlSqlParser.NO_SUBSTRB_PAD - 1057)) | (1 << (PlSqlParser.NO_SWAP_JOIN_INPUTS - 1057)) | (1 << (PlSqlParser.NOSWITCH - 1057)) | (1 << (PlSqlParser.NO_TABLE_LOOKUP_BY_NL - 1057)) | (1 << (PlSqlParser.NO_TEMP_TABLE - 1057)) | (1 << (PlSqlParser.NOTHING - 1057)) | (1 << (PlSqlParser.NOTIFICATION - 1057)) | (1 << (PlSqlParser.NO_TRANSFORM_DISTINCT_AGG - 1057)) | (1 << (PlSqlParser.NO_UNNEST - 1057)) | (1 << (PlSqlParser.NO_USE_CUBE - 1057)) | (1 << (PlSqlParser.NO_USE_HASH_AGGREGATION - 1057)) | (1 << (PlSqlParser.NO_USE_HASH_GBY_FOR_PUSHDOWN - 1057)) | (1 << (PlSqlParser.NO_USE_HASH - 1057)) | (1 << (PlSqlParser.NO_USE_INVISIBLE_INDEXES - 1057)) | (1 << (PlSqlParser.NO_USE_MERGE - 1057)) | (1 << (PlSqlParser.NO_USE_NL - 1057)) | (1 << (PlSqlParser.NO_USE_VECTOR_AGGREGATION - 1057)) | (1 << (PlSqlParser.NOVALIDATE - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM_DIMS - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM_FACT - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM - 1057)))) !== 0) || ((((_la - 1089)) & ~0x1f) == 0 && ((1 << (_la - 1089)) & ((1 << (PlSqlParser.NO_XDB_FASTPATH_INSERT - 1089)) | (1 << (PlSqlParser.NO_XML_DML_REWRITE - 1089)) | (1 << (PlSqlParser.NO_XMLINDEX_REWRITE_IN_SELECT - 1089)) | (1 << (PlSqlParser.NO_XMLINDEX_REWRITE - 1089)) | (1 << (PlSqlParser.NO_XML_QUERY_REWRITE - 1089)) | (1 << (PlSqlParser.NO_ZONEMAP - 1089)) | (1 << (PlSqlParser.NTH_VALUE - 1089)) | (1 << (PlSqlParser.NULLIF - 1089)) | (1 << (PlSqlParser.NULLS - 1089)) | (1 << (PlSqlParser.NUMBER - 1089)) | (1 << (PlSqlParser.NUMERIC - 1089)) | (1 << (PlSqlParser.NUM_INDEX_KEYS - 1089)) | (1 << (PlSqlParser.NUMTODSINTERVAL - 1089)) | (1 << (PlSqlParser.NUMTOYMINTERVAL - 1089)) | (1 << (PlSqlParser.NVARCHAR2 - 1089)) | (1 << (PlSqlParser.NVL2 - 1089)) | (1 << (PlSqlParser.OBJECT2XML - 1089)) | (1 << (PlSqlParser.OBJECT - 1089)) | (1 << (PlSqlParser.OBJ_ID - 1089)) | (1 << (PlSqlParser.OBJNO - 1089)) | (1 << (PlSqlParser.OBJNO_REUSE - 1089)) | (1 << (PlSqlParser.OCCURENCES - 1089)) | (1 << (PlSqlParser.OFFLINE - 1089)) | (1 << (PlSqlParser.OFF - 1089)) | (1 << (PlSqlParser.OFFSET - 1089)) | (1 << (PlSqlParser.OIDINDEX - 1089)) | (1 << (PlSqlParser.OID - 1089)) | (1 << (PlSqlParser.OLAP - 1089)) | (1 << (PlSqlParser.OLD - 1089)) | (1 << (PlSqlParser.OLD_PUSH_PRED - 1089)))) !== 0) || ((((_la - 1121)) & ~0x1f) == 0 && ((1 << (_la - 1121)) & ((1 << (PlSqlParser.OLS - 1121)) | (1 << (PlSqlParser.OLTP - 1121)) | (1 << (PlSqlParser.OMIT - 1121)) | (1 << (PlSqlParser.ONE - 1121)) | (1 << (PlSqlParser.ONLINE - 1121)) | (1 << (PlSqlParser.ONLY - 1121)) | (1 << (PlSqlParser.OPAQUE - 1121)) | (1 << (PlSqlParser.OPAQUE_TRANSFORM - 1121)) | (1 << (PlSqlParser.OPAQUE_XCANONICAL - 1121)) | (1 << (PlSqlParser.OPCODE - 1121)) | (1 << (PlSqlParser.OPEN - 1121)) | (1 << (PlSqlParser.OPERATIONS - 1121)) | (1 << (PlSqlParser.OPERATOR - 1121)) | (1 << (PlSqlParser.OPT_ESTIMATE - 1121)) | (1 << (PlSqlParser.OPTIMAL - 1121)) | (1 << (PlSqlParser.OPTIMIZE - 1121)) | (1 << (PlSqlParser.OPTIMIZER_FEATURES_ENABLE - 1121)) | (1 << (PlSqlParser.OPTIMIZER_GOAL - 1121)) | (1 << (PlSqlParser.OPT_PARAM - 1121)) | (1 << (PlSqlParser.ORA_BRANCH - 1121)) | (1 << (PlSqlParser.ORA_CHECK_ACL - 1121)) | (1 << (PlSqlParser.ORA_CHECK_PRIVILEGE - 1121)) | (1 << (PlSqlParser.ORA_CLUSTERING - 1121)) | (1 << (PlSqlParser.ORADATA - 1121)) | (1 << (PlSqlParser.ORADEBUG - 1121)) | (1 << (PlSqlParser.ORA_DST_AFFECTED - 1121)) | (1 << (PlSqlParser.ORA_DST_CONVERT - 1121)) | (1 << (PlSqlParser.ORA_DST_ERROR - 1121)) | (1 << (PlSqlParser.ORA_GET_ACLIDS - 1121)))) !== 0) || ((((_la - 1153)) & ~0x1f) == 0 && ((1 << (_la - 1153)) & ((1 << (PlSqlParser.ORA_GET_PRIVILEGES - 1153)) | (1 << (PlSqlParser.ORA_HASH - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_USERID - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_USER - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_XS_USER_GUID - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_XS_USER - 1153)) | (1 << (PlSqlParser.ORA_RAWCOMPARE - 1153)) | (1 << (PlSqlParser.ORA_RAWCONCAT - 1153)) | (1 << (PlSqlParser.ORA_ROWSCN - 1153)) | (1 << (PlSqlParser.ORA_ROWSCN_RAW - 1153)) | (1 << (PlSqlParser.ORA_ROWVERSION - 1153)) | (1 << (PlSqlParser.ORA_TABVERSION - 1153)) | (1 << (PlSqlParser.ORA_WRITE_TIME - 1153)) | (1 << (PlSqlParser.ORDERED - 1153)) | (1 << (PlSqlParser.ORDERED_PREDICATES - 1153)) | (1 << (PlSqlParser.ORDINALITY - 1153)) | (1 << (PlSqlParser.OR_EXPAND - 1153)) | (1 << (PlSqlParser.ORGANIZATION - 1153)) | (1 << (PlSqlParser.OR_PREDICATES - 1153)) | (1 << (PlSqlParser.OSERROR - 1153)) | (1 << (PlSqlParser.OTHER - 1153)) | (1 << (PlSqlParser.OUTER_JOIN_TO_ANTI - 1153)) | (1 << (PlSqlParser.OUTER_JOIN_TO_INNER - 1153)) | (1 << (PlSqlParser.OUTER - 1153)) | (1 << (PlSqlParser.OUTLINE_LEAF - 1153)) | (1 << (PlSqlParser.OUTLINE - 1153)) | (1 << (PlSqlParser.OUT_OF_LINE - 1153)) | (1 << (PlSqlParser.OUT - 1153)) | (1 << (PlSqlParser.OVERFLOW_NOMOVE - 1153)) | (1 << (PlSqlParser.OVERFLOW - 1153)))) !== 0) || ((((_la - 1185)) & ~0x1f) == 0 && ((1 << (_la - 1185)) & ((1 << (PlSqlParser.OVERLAPS - 1185)) | (1 << (PlSqlParser.OVER - 1185)) | (1 << (PlSqlParser.OVERRIDING - 1185)) | (1 << (PlSqlParser.OWNER - 1185)) | (1 << (PlSqlParser.OWNERSHIP - 1185)) | (1 << (PlSqlParser.OWN - 1185)) | (1 << (PlSqlParser.PACKAGE - 1185)) | (1 << (PlSqlParser.PACKAGES - 1185)) | (1 << (PlSqlParser.PARALLEL_ENABLE - 1185)) | (1 << (PlSqlParser.PARALLEL_INDEX - 1185)) | (1 << (PlSqlParser.PARALLEL - 1185)) | (1 << (PlSqlParser.PARAMETERS - 1185)) | (1 << (PlSqlParser.PARAM - 1185)) | (1 << (PlSqlParser.PARENT - 1185)) | (1 << (PlSqlParser.PARITY - 1185)) | (1 << (PlSqlParser.PARTIAL_JOIN - 1185)) | (1 << (PlSqlParser.PARTIALLY - 1185)) | (1 << (PlSqlParser.PARTIAL - 1185)) | (1 << (PlSqlParser.PARTIAL_ROLLUP_PUSHDOWN - 1185)) | (1 << (PlSqlParser.PARTITION_HASH - 1185)) | (1 << (PlSqlParser.PARTITION_LIST - 1185)) | (1 << (PlSqlParser.PARTITION - 1185)) | (1 << (PlSqlParser.PARTITION_RANGE - 1185)) | (1 << (PlSqlParser.PARTITIONS - 1185)) | (1 << (PlSqlParser.PARTNUMINST - 1185)) | (1 << (PlSqlParser.PASSING - 1185)) | (1 << (PlSqlParser.PASSWORD_GRACE_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD_LIFE_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD_LOCK_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD - 1185)) | (1 << (PlSqlParser.PASSWORD_REUSE_MAX - 1185)))) !== 0) || ((((_la - 1217)) & ~0x1f) == 0 && ((1 << (_la - 1217)) & ((1 << (PlSqlParser.PASSWORD_REUSE_TIME - 1217)) | (1 << (PlSqlParser.PASSWORD_VERIFY_FUNCTION - 1217)) | (1 << (PlSqlParser.PAST - 1217)) | (1 << (PlSqlParser.PATCH - 1217)) | (1 << (PlSqlParser.PATH - 1217)) | (1 << (PlSqlParser.PATH_PREFIX - 1217)) | (1 << (PlSqlParser.PATHS - 1217)) | (1 << (PlSqlParser.PATTERN - 1217)) | (1 << (PlSqlParser.PBL_HS_BEGIN - 1217)) | (1 << (PlSqlParser.PBL_HS_END - 1217)) | (1 << (PlSqlParser.PCTINCREASE - 1217)) | (1 << (PlSqlParser.PCTTHRESHOLD - 1217)) | (1 << (PlSqlParser.PCTUSED - 1217)) | (1 << (PlSqlParser.PCTVERSION - 1217)) | (1 << (PlSqlParser.PENDING - 1217)) | (1 << (PlSqlParser.PERCENT_KEYWORD - 1217)) | (1 << (PlSqlParser.PERCENT_RANKM - 1217)) | (1 << (PlSqlParser.PERFORMANCE - 1217)) | (1 << (PlSqlParser.PERIOD_KEYWORD - 1217)) | (1 << (PlSqlParser.PERMANENT - 1217)) | (1 << (PlSqlParser.PERMISSION - 1217)) | (1 << (PlSqlParser.PERMUTE - 1217)) | (1 << (PlSqlParser.PER - 1217)) | (1 << (PlSqlParser.PFILE - 1217)) | (1 << (PlSqlParser.PHYSICAL - 1217)))) !== 0) || ((((_la - 1249)) & ~0x1f) == 0 && ((1 << (_la - 1249)) & ((1 << (PlSqlParser.PIKEY - 1249)) | (1 << (PlSqlParser.PIPELINED - 1249)) | (1 << (PlSqlParser.PIV_GB - 1249)) | (1 << (PlSqlParser.PIVOT - 1249)) | (1 << (PlSqlParser.PIV_SSF - 1249)) | (1 << (PlSqlParser.PLACE_DISTINCT - 1249)) | (1 << (PlSqlParser.PLACE_GROUP_BY - 1249)) | (1 << (PlSqlParser.PLAN - 1249)) | (1 << (PlSqlParser.PLSCOPE_SETTINGS - 1249)) | (1 << (PlSqlParser.PLS_INTEGER - 1249)) | (1 << (PlSqlParser.PLSQL_CCFLAGS - 1249)) | (1 << (PlSqlParser.PLSQL_CODE_TYPE - 1249)) | (1 << (PlSqlParser.PLSQL_DEBUG - 1249)) | (1 << (PlSqlParser.PLSQL_OPTIMIZE_LEVEL - 1249)) | (1 << (PlSqlParser.PLSQL_WARNINGS - 1249)) | (1 << (PlSqlParser.PLUGGABLE - 1249)) | (1 << (PlSqlParser.POINT - 1249)) | (1 << (PlSqlParser.POLICY - 1249)) | (1 << (PlSqlParser.POOL_16K - 1249)) | (1 << (PlSqlParser.POOL_2K - 1249)) | (1 << (PlSqlParser.POOL_32K - 1249)) | (1 << (PlSqlParser.POOL_4K - 1249)) | (1 << (PlSqlParser.POOL_8K - 1249)) | (1 << (PlSqlParser.POSITIVEN - 1249)) | (1 << (PlSqlParser.POSITIVE - 1249)) | (1 << (PlSqlParser.POST_TRANSACTION - 1249)) | (1 << (PlSqlParser.POWERMULTISET_BY_CARDINALITY - 1249)) | (1 << (PlSqlParser.POWERMULTISET - 1249)) | (1 << (PlSqlParser.POWER - 1249)) | (1 << (PlSqlParser.PQ_CONCURRENT_UNION - 1249)) | (1 << (PlSqlParser.PQ_DISTRIBUTE - 1249)))) !== 0) || ((((_la - 1281)) & ~0x1f) == 0 && ((1 << (_la - 1281)) & ((1 << (PlSqlParser.PQ_DISTRIBUTE_WINDOW - 1281)) | (1 << (PlSqlParser.PQ_FILTER - 1281)) | (1 << (PlSqlParser.PQ_MAP - 1281)) | (1 << (PlSqlParser.PQ_NOMAP - 1281)) | (1 << (PlSqlParser.PQ_REPLICATE - 1281)) | (1 << (PlSqlParser.PQ_SKEW - 1281)) | (1 << (PlSqlParser.PRAGMA - 1281)) | (1 << (PlSqlParser.PREBUILT - 1281)) | (1 << (PlSqlParser.PRECEDES - 1281)) | (1 << (PlSqlParser.PRECEDING - 1281)) | (1 << (PlSqlParser.PRECISION - 1281)) | (1 << (PlSqlParser.PRECOMPUTE_SUBQUERY - 1281)) | (1 << (PlSqlParser.PREDICATE_REORDERS - 1281)) | (1 << (PlSqlParser.PRELOAD - 1281)) | (1 << (PlSqlParser.PREPARE - 1281)) | (1 << (PlSqlParser.PRESENTNNV - 1281)) | (1 << (PlSqlParser.PRESENT - 1281)) | (1 << (PlSqlParser.PRESENTV - 1281)) | (1 << (PlSqlParser.PRESERVE_OID - 1281)) | (1 << (PlSqlParser.PRESERVE - 1281)) | (1 << (PlSqlParser.PRETTY - 1281)) | (1 << (PlSqlParser.PREVIOUS - 1281)) | (1 << (PlSqlParser.PREV - 1281)) | (1 << (PlSqlParser.PRIMARY - 1281)) | (1 << (PlSqlParser.PRINTBLOBTOCLOB - 1281)) | (1 << (PlSqlParser.PRIORITY - 1281)) | (1 << (PlSqlParser.PRIVATE - 1281)) | (1 << (PlSqlParser.PRIVATE_SGA - 1281)) | (1 << (PlSqlParser.PRIVILEGED - 1281)) | (1 << (PlSqlParser.PRIVILEGE - 1281)) | (1 << (PlSqlParser.PRIVILEGES - 1281)))) !== 0) || ((((_la - 1313)) & ~0x1f) == 0 && ((1 << (_la - 1313)) & ((1 << (PlSqlParser.PROCEDURAL - 1313)) | (1 << (PlSqlParser.PROCEDURE - 1313)) | (1 << (PlSqlParser.PROCESS - 1313)) | (1 << (PlSqlParser.PROFILE - 1313)) | (1 << (PlSqlParser.PROGRAM - 1313)) | (1 << (PlSqlParser.PROJECT - 1313)) | (1 << (PlSqlParser.PROPAGATE - 1313)) | (1 << (PlSqlParser.PROTECTED - 1313)) | (1 << (PlSqlParser.PROTECTION - 1313)) | (1 << (PlSqlParser.PROXY - 1313)) | (1 << (PlSqlParser.PRUNING - 1313)) | (1 << (PlSqlParser.PULL_PRED - 1313)) | (1 << (PlSqlParser.PURGE - 1313)) | (1 << (PlSqlParser.PUSH_PRED - 1313)) | (1 << (PlSqlParser.PUSH_SUBQ - 1313)) | (1 << (PlSqlParser.PX_FAULT_TOLERANCE - 1313)) | (1 << (PlSqlParser.PX_GRANULE - 1313)) | (1 << (PlSqlParser.PX_JOIN_FILTER - 1313)) | (1 << (PlSqlParser.QB_NAME - 1313)) | (1 << (PlSqlParser.QUERY_BLOCK - 1313)) | (1 << (PlSqlParser.QUERY - 1313)) | (1 << (PlSqlParser.QUEUE_CURR - 1313)) | (1 << (PlSqlParser.QUEUE - 1313)) | (1 << (PlSqlParser.QUEUE_ROWP - 1313)) | (1 << (PlSqlParser.QUIESCE - 1313)) | (1 << (PlSqlParser.QUORUM - 1313)) | (1 << (PlSqlParser.QUOTA - 1313)) | (1 << (PlSqlParser.RAISE - 1313)) | (1 << (PlSqlParser.RANDOM_LOCAL - 1313)) | (1 << (PlSqlParser.RANDOM - 1313)) | (1 << (PlSqlParser.RANGE - 1313)))) !== 0) || ((((_la - 1345)) & ~0x1f) == 0 && ((1 << (_la - 1345)) & ((1 << (PlSqlParser.RANKM - 1345)) | (1 << (PlSqlParser.RAPIDLY - 1345)) | (1 << (PlSqlParser.RAW - 1345)) | (1 << (PlSqlParser.RAWTOHEX - 1345)) | (1 << (PlSqlParser.RAWTONHEX - 1345)) | (1 << (PlSqlParser.RBA - 1345)) | (1 << (PlSqlParser.RBO_OUTLINE - 1345)) | (1 << (PlSqlParser.RDBA - 1345)) | (1 << (PlSqlParser.READ - 1345)) | (1 << (PlSqlParser.READS - 1345)) | (1 << (PlSqlParser.REALM - 1345)) | (1 << (PlSqlParser.REAL - 1345)) | (1 << (PlSqlParser.REBALANCE - 1345)) | (1 << (PlSqlParser.REBUILD - 1345)) | (1 << (PlSqlParser.RECORD - 1345)) | (1 << (PlSqlParser.RECORDS_PER_BLOCK - 1345)) | (1 << (PlSqlParser.RECOVERABLE - 1345)) | (1 << (PlSqlParser.RECOVER - 1345)) | (1 << (PlSqlParser.RECOVERY - 1345)) | (1 << (PlSqlParser.RECYCLEBIN - 1345)) | (1 << (PlSqlParser.RECYCLE - 1345)) | (1 << (PlSqlParser.REDACTION - 1345)) | (1 << (PlSqlParser.REDEFINE - 1345)) | (1 << (PlSqlParser.REDO - 1345)) | (1 << (PlSqlParser.REDUCED - 1345)) | (1 << (PlSqlParser.REDUNDANCY - 1345)) | (1 << (PlSqlParser.REF_CASCADE_CURSOR - 1345)) | (1 << (PlSqlParser.REFERENCED - 1345)) | (1 << (PlSqlParser.REFERENCE - 1345)) | (1 << (PlSqlParser.REFERENCES - 1345)) | (1 << (PlSqlParser.REFERENCING - 1345)) | (1 << (PlSqlParser.REF - 1345)))) !== 0) || ((((_la - 1377)) & ~0x1f) == 0 && ((1 << (_la - 1377)) & ((1 << (PlSqlParser.REFRESH - 1377)) | (1 << (PlSqlParser.REFTOHEX - 1377)) | (1 << (PlSqlParser.REGEXP_COUNT - 1377)) | (1 << (PlSqlParser.REGEXP_INSTR - 1377)) | (1 << (PlSqlParser.REGEXP_LIKE - 1377)) | (1 << (PlSqlParser.REGEXP_REPLACE - 1377)) | (1 << (PlSqlParser.REGEXP_SUBSTR - 1377)) | (1 << (PlSqlParser.REGISTER - 1377)) | (1 << (PlSqlParser.REGR_AVGX - 1377)) | (1 << (PlSqlParser.REGR_AVGY - 1377)) | (1 << (PlSqlParser.REGR_COUNT - 1377)) | (1 << (PlSqlParser.REGR_INTERCEPT - 1377)) | (1 << (PlSqlParser.REGR_R2 - 1377)) | (1 << (PlSqlParser.REGR_SLOPE - 1377)) | (1 << (PlSqlParser.REGR_SXX - 1377)) | (1 << (PlSqlParser.REGR_SXY - 1377)) | (1 << (PlSqlParser.REGR_SYY - 1377)) | (1 << (PlSqlParser.REGULAR - 1377)) | (1 << (PlSqlParser.REJECT - 1377)) | (1 << (PlSqlParser.REKEY - 1377)) | (1 << (PlSqlParser.RELATIONAL - 1377)) | (1 << (PlSqlParser.RELOCATE - 1377)) | (1 << (PlSqlParser.RELY - 1377)) | (1 << (PlSqlParser.REMAINDER - 1377)) | (1 << (PlSqlParser.REMOTE_MAPPED - 1377)) | (1 << (PlSqlParser.REMOVE - 1377)) | (1 << (PlSqlParser.RENAME - 1377)) | (1 << (PlSqlParser.REPAIR - 1377)) | (1 << (PlSqlParser.REPEAT - 1377)) | (1 << (PlSqlParser.REPLACE - 1377)) | (1 << (PlSqlParser.REPLICATION - 1377)))) !== 0) || ((((_la - 1409)) & ~0x1f) == 0 && ((1 << (_la - 1409)) & ((1 << (PlSqlParser.REQUIRED - 1409)) | (1 << (PlSqlParser.RESETLOGS - 1409)) | (1 << (PlSqlParser.RESET - 1409)) | (1 << (PlSqlParser.RESIZE - 1409)) | (1 << (PlSqlParser.RESOLVE - 1409)) | (1 << (PlSqlParser.RESOLVER - 1409)) | (1 << (PlSqlParser.RESPECT - 1409)) | (1 << (PlSqlParser.RESTART - 1409)) | (1 << (PlSqlParser.RESTORE_AS_INTERVALS - 1409)) | (1 << (PlSqlParser.RESTORE - 1409)) | (1 << (PlSqlParser.RESTRICT_ALL_REF_CONS - 1409)) | (1 << (PlSqlParser.RESTRICTED - 1409)) | (1 << (PlSqlParser.RESTRICT_REFERENCES - 1409)) | (1 << (PlSqlParser.RESTRICT - 1409)) | (1 << (PlSqlParser.RESULT_CACHE - 1409)) | (1 << (PlSqlParser.RESULT - 1409)) | (1 << (PlSqlParser.RESUMABLE - 1409)) | (1 << (PlSqlParser.RESUME - 1409)) | (1 << (PlSqlParser.RETENTION - 1409)) | (1 << (PlSqlParser.RETRY_ON_ROW_CHANGE - 1409)) | (1 << (PlSqlParser.RETURNING - 1409)) | (1 << (PlSqlParser.RETURN - 1409)) | (1 << (PlSqlParser.REUSE - 1409)) | (1 << (PlSqlParser.REVERSE - 1409)) | (1 << (PlSqlParser.REWRITE_OR_ERROR - 1409)) | (1 << (PlSqlParser.REWRITE - 1409)) | (1 << (PlSqlParser.RIGHT - 1409)) | (1 << (PlSqlParser.ROLE - 1409)) | (1 << (PlSqlParser.ROLESET - 1409)) | (1 << (PlSqlParser.ROLES - 1409)))) !== 0) || ((((_la - 1441)) & ~0x1f) == 0 && ((1 << (_la - 1441)) & ((1 << (PlSqlParser.ROLLBACK - 1441)) | (1 << (PlSqlParser.ROLLING - 1441)) | (1 << (PlSqlParser.ROLLUP - 1441)) | (1 << (PlSqlParser.ROWDEPENDENCIES - 1441)) | (1 << (PlSqlParser.ROWID_MAPPING_TABLE - 1441)) | (1 << (PlSqlParser.ROWID - 1441)) | (1 << (PlSqlParser.ROWIDTOCHAR - 1441)) | (1 << (PlSqlParser.ROWIDTONCHAR - 1441)) | (1 << (PlSqlParser.ROW_LENGTH - 1441)) | (1 << (PlSqlParser.ROWNUM - 1441)) | (1 << (PlSqlParser.ROW - 1441)) | (1 << (PlSqlParser.ROWS - 1441)) | (1 << (PlSqlParser.RPAD - 1441)) | (1 << (PlSqlParser.RTRIM - 1441)) | (1 << (PlSqlParser.RULE - 1441)) | (1 << (PlSqlParser.RULES - 1441)) | (1 << (PlSqlParser.RUNNING - 1441)) | (1 << (PlSqlParser.SALT - 1441)) | (1 << (PlSqlParser.SAMPLE - 1441)) | (1 << (PlSqlParser.SAVE_AS_INTERVALS - 1441)) | (1 << (PlSqlParser.SAVEPOINT - 1441)) | (1 << (PlSqlParser.SAVE - 1441)) | (1 << (PlSqlParser.SB4 - 1441)) | (1 << (PlSqlParser.SCALE_ROWS - 1441)) | (1 << (PlSqlParser.SCALE - 1441)) | (1 << (PlSqlParser.SCAN_INSTANCES - 1441)) | (1 << (PlSqlParser.SCAN - 1441)) | (1 << (PlSqlParser.SCHEDULER - 1441)) | (1 << (PlSqlParser.SCHEMACHECK - 1441)) | (1 << (PlSqlParser.SCHEMA - 1441)) | (1 << (PlSqlParser.SCN_ASCENDING - 1441)) | (1 << (PlSqlParser.SCN - 1441)))) !== 0) || ((((_la - 1473)) & ~0x1f) == 0 && ((1 << (_la - 1473)) & ((1 << (PlSqlParser.SCOPE - 1473)) | (1 << (PlSqlParser.SCRUB - 1473)) | (1 << (PlSqlParser.SD_ALL - 1473)) | (1 << (PlSqlParser.SD_INHIBIT - 1473)) | (1 << (PlSqlParser.SDO_GEOM_MBR - 1473)) | (1 << (PlSqlParser.SD_SHOW - 1473)) | (1 << (PlSqlParser.SEARCH - 1473)) | (1 << (PlSqlParser.SECOND - 1473)) | (1 << (PlSqlParser.SECRET - 1473)) | (1 << (PlSqlParser.SECUREFILE_DBA - 1473)) | (1 << (PlSqlParser.SECUREFILE - 1473)) | (1 << (PlSqlParser.SECURITY - 1473)) | (1 << (PlSqlParser.SEED - 1473)) | (1 << (PlSqlParser.SEG_BLOCK - 1473)) | (1 << (PlSqlParser.SEG_FILE - 1473)) | (1 << (PlSqlParser.SEGMENT - 1473)) | (1 << (PlSqlParser.SELECTIVITY - 1473)) | (1 << (PlSqlParser.SELF - 1473)) | (1 << (PlSqlParser.SEMIJOIN_DRIVER - 1473)) | (1 << (PlSqlParser.SEMIJOIN - 1473)) | (1 << (PlSqlParser.SEMI_TO_INNER - 1473)) | (1 << (PlSqlParser.SEQUENCED - 1473)) | (1 << (PlSqlParser.SEQUENCE - 1473)) | (1 << (PlSqlParser.SEQUENTIAL - 1473)) | (1 << (PlSqlParser.SERIALIZABLE - 1473)) | (1 << (PlSqlParser.SERIALLY_REUSABLE - 1473)) | (1 << (PlSqlParser.SERIAL - 1473)) | (1 << (PlSqlParser.SERVERERROR - 1473)) | (1 << (PlSqlParser.SERVICE_NAME_CONVERT - 1473)) | (1 << (PlSqlParser.SERVICES - 1473)))) !== 0) || ((((_la - 1505)) & ~0x1f) == 0 && ((1 << (_la - 1505)) & ((1 << (PlSqlParser.SESSION_CACHED_CURSORS - 1505)) | (1 << (PlSqlParser.SESSION - 1505)) | (1 << (PlSqlParser.SESSIONS_PER_USER - 1505)) | (1 << (PlSqlParser.SESSIONTIMEZONE - 1505)) | (1 << (PlSqlParser.SESSIONTZNAME - 1505)) | (1 << (PlSqlParser.SET - 1505)) | (1 << (PlSqlParser.SETS - 1505)) | (1 << (PlSqlParser.SETTINGS - 1505)) | (1 << (PlSqlParser.SET_TO_JOIN - 1505)) | (1 << (PlSqlParser.SEVERE - 1505)) | (1 << (PlSqlParser.SHARED_POOL - 1505)) | (1 << (PlSqlParser.SHARED - 1505)) | (1 << (PlSqlParser.SHARING - 1505)) | (1 << (PlSqlParser.SHELFLIFE - 1505)) | (1 << (PlSqlParser.SHOW - 1505)) | (1 << (PlSqlParser.SHRINK - 1505)) | (1 << (PlSqlParser.SHUTDOWN - 1505)) | (1 << (PlSqlParser.SIBLINGS - 1505)) | (1 << (PlSqlParser.SID - 1505)) | (1 << (PlSqlParser.SIGNAL_COMPONENT - 1505)) | (1 << (PlSqlParser.SIGNAL_FUNCTION - 1505)) | (1 << (PlSqlParser.SIGN - 1505)) | (1 << (PlSqlParser.SIGNTYPE - 1505)) | (1 << (PlSqlParser.SIMPLE_INTEGER - 1505)) | (1 << (PlSqlParser.SIMPLE - 1505)) | (1 << (PlSqlParser.SINGLE - 1505)) | (1 << (PlSqlParser.SINGLETASK - 1505)) | (1 << (PlSqlParser.SINH - 1505)) | (1 << (PlSqlParser.SIN - 1505)) | (1 << (PlSqlParser.SKIP_EXT_OPTIMIZER - 1505)))) !== 0) || ((((_la - 1537)) & ~0x1f) == 0 && ((1 << (_la - 1537)) & ((1 << (PlSqlParser.SKIP_ - 1537)) | (1 << (PlSqlParser.SKIP_UNQ_UNUSABLE_IDX - 1537)) | (1 << (PlSqlParser.SKIP_UNUSABLE_INDEXES - 1537)) | (1 << (PlSqlParser.SMALLFILE - 1537)) | (1 << (PlSqlParser.SMALLINT - 1537)) | (1 << (PlSqlParser.SNAPSHOT - 1537)) | (1 << (PlSqlParser.SOME - 1537)) | (1 << (PlSqlParser.SORT - 1537)) | (1 << (PlSqlParser.SOUNDEX - 1537)) | (1 << (PlSqlParser.SOURCE_FILE_DIRECTORY - 1537)) | (1 << (PlSqlParser.SOURCE_FILE_NAME_CONVERT - 1537)) | (1 << (PlSqlParser.SOURCE - 1537)) | (1 << (PlSqlParser.SPACE_KEYWORD - 1537)) | (1 << (PlSqlParser.SPECIFICATION - 1537)) | (1 << (PlSqlParser.SPFILE - 1537)) | (1 << (PlSqlParser.SPLIT - 1537)) | (1 << (PlSqlParser.SPREADSHEET - 1537)) | (1 << (PlSqlParser.SQLDATA - 1537)) | (1 << (PlSqlParser.SQLERROR - 1537)) | (1 << (PlSqlParser.SQLLDR - 1537)) | (1 << (PlSqlParser.SQL - 1537)) | (1 << (PlSqlParser.SQL_TRACE - 1537)) | (1 << (PlSqlParser.SQL_TRANSLATION_PROFILE - 1537)) | (1 << (PlSqlParser.SQRT - 1537)) | (1 << (PlSqlParser.STALE - 1537)) | (1 << (PlSqlParser.STANDALONE - 1537)) | (1 << (PlSqlParser.STANDARD_HASH - 1537)) | (1 << (PlSqlParser.STANDBY_MAX_DATA_DELAY - 1537)) | (1 << (PlSqlParser.STANDBYS - 1537)) | (1 << (PlSqlParser.STANDBY - 1537)) | (1 << (PlSqlParser.STAR - 1537)) | (1 << (PlSqlParser.STAR_TRANSFORMATION - 1537)))) !== 0) || ((((_la - 1570)) & ~0x1f) == 0 && ((1 << (_la - 1570)) & ((1 << (PlSqlParser.STARTUP - 1570)) | (1 << (PlSqlParser.STATEMENT_ID - 1570)) | (1 << (PlSqlParser.STATEMENT_QUEUING - 1570)) | (1 << (PlSqlParser.STATEMENTS - 1570)) | (1 << (PlSqlParser.STATEMENT - 1570)) | (1 << (PlSqlParser.STATE - 1570)) | (1 << (PlSqlParser.STATIC - 1570)) | (1 << (PlSqlParser.STATISTICS - 1570)) | (1 << (PlSqlParser.STATS_BINOMIAL_TEST - 1570)) | (1 << (PlSqlParser.STATS_CROSSTAB - 1570)) | (1 << (PlSqlParser.STATS_F_TEST - 1570)) | (1 << (PlSqlParser.STATS_KS_TEST - 1570)) | (1 << (PlSqlParser.STATS_MODE - 1570)) | (1 << (PlSqlParser.STATS_MW_TEST - 1570)) | (1 << (PlSqlParser.STATS_ONE_WAY_ANOVA - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_INDEP - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_INDEPU - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_ONE - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_PAIRED - 1570)) | (1 << (PlSqlParser.STATS_WSR_TEST - 1570)) | (1 << (PlSqlParser.STDDEV_POP - 1570)) | (1 << (PlSqlParser.STDDEV_SAMP - 1570)) | (1 << (PlSqlParser.STOP - 1570)) | (1 << (PlSqlParser.STORAGE - 1570)) | (1 << (PlSqlParser.STORE - 1570)) | (1 << (PlSqlParser.STREAMS - 1570)) | (1 << (PlSqlParser.STREAM - 1570)) | (1 << (PlSqlParser.STRICT - 1570)) | (1 << (PlSqlParser.STRING - 1570)) | (1 << (PlSqlParser.STRIPE_COLUMNS - 1570)) | (1 << (PlSqlParser.STRIPE_WIDTH - 1570)) | (1 << (PlSqlParser.STRIP - 1570)))) !== 0) || ((((_la - 1602)) & ~0x1f) == 0 && ((1 << (_la - 1602)) & ((1 << (PlSqlParser.STRUCTURE - 1602)) | (1 << (PlSqlParser.SUBMULTISET - 1602)) | (1 << (PlSqlParser.SUBPARTITION_REL - 1602)) | (1 << (PlSqlParser.SUBPARTITIONS - 1602)) | (1 << (PlSqlParser.SUBPARTITION - 1602)) | (1 << (PlSqlParser.SUBQUERIES - 1602)) | (1 << (PlSqlParser.SUBQUERY_PRUNING - 1602)) | (1 << (PlSqlParser.SUBSCRIBE - 1602)) | (1 << (PlSqlParser.SUBSET - 1602)) | (1 << (PlSqlParser.SUBSTITUTABLE - 1602)) | (1 << (PlSqlParser.SUBSTR2 - 1602)) | (1 << (PlSqlParser.SUBSTR4 - 1602)) | (1 << (PlSqlParser.SUBSTRB - 1602)) | (1 << (PlSqlParser.SUBSTRC - 1602)) | (1 << (PlSqlParser.SUBTYPE - 1602)) | (1 << (PlSqlParser.SUCCESSFUL - 1602)) | (1 << (PlSqlParser.SUCCESS - 1602)) | (1 << (PlSqlParser.SUMMARY - 1602)) | (1 << (PlSqlParser.SUPPLEMENTAL - 1602)) | (1 << (PlSqlParser.SUSPEND - 1602)) | (1 << (PlSqlParser.SWAP_JOIN_INPUTS - 1602)) | (1 << (PlSqlParser.SWITCHOVER - 1602)) | (1 << (PlSqlParser.SWITCH - 1602)) | (1 << (PlSqlParser.SYNCHRONOUS - 1602)) | (1 << (PlSqlParser.SYNC - 1602)) | (1 << (PlSqlParser.SYSASM - 1602)) | (1 << (PlSqlParser.SYS_AUDIT - 1602)) | (1 << (PlSqlParser.SYSAUX - 1602)) | (1 << (PlSqlParser.SYSBACKUP - 1602)) | (1 << (PlSqlParser.SYS_CHECKACL - 1602)) | (1 << (PlSqlParser.SYS_CHECK_PRIVILEGE - 1602)))) !== 0) || ((((_la - 1634)) & ~0x1f) == 0 && ((1 << (_la - 1634)) & ((1 << (PlSqlParser.SYS_CONNECT_BY_PATH - 1634)) | (1 << (PlSqlParser.SYS_CONTEXT - 1634)) | (1 << (PlSqlParser.SYSDATE - 1634)) | (1 << (PlSqlParser.SYSDBA - 1634)) | (1 << (PlSqlParser.SYS_DBURIGEN - 1634)) | (1 << (PlSqlParser.SYSDG - 1634)) | (1 << (PlSqlParser.SYS_DL_CURSOR - 1634)) | (1 << (PlSqlParser.SYS_DM_RXFORM_CHR - 1634)) | (1 << (PlSqlParser.SYS_DM_RXFORM_NUM - 1634)) | (1 << (PlSqlParser.SYS_DOM_COMPARE - 1634)) | (1 << (PlSqlParser.SYS_DST_PRIM2SEC - 1634)) | (1 << (PlSqlParser.SYS_DST_SEC2PRIM - 1634)) | (1 << (PlSqlParser.SYS_ET_BFILE_TO_RAW - 1634)) | (1 << (PlSqlParser.SYS_ET_BLOB_TO_IMAGE - 1634)) | (1 << (PlSqlParser.SYS_ET_IMAGE_TO_BLOB - 1634)) | (1 << (PlSqlParser.SYS_ET_RAW_TO_BFILE - 1634)) | (1 << (PlSqlParser.SYS_EXTPDTXT - 1634)) | (1 << (PlSqlParser.SYS_EXTRACT_UTC - 1634)) | (1 << (PlSqlParser.SYS_FBT_INSDEL - 1634)) | (1 << (PlSqlParser.SYS_FILTER_ACLS - 1634)) | (1 << (PlSqlParser.SYS_FNMATCHES - 1634)) | (1 << (PlSqlParser.SYS_FNREPLACE - 1634)) | (1 << (PlSqlParser.SYS_GET_ACLIDS - 1634)) | (1 << (PlSqlParser.SYS_GET_COL_ACLIDS - 1634)) | (1 << (PlSqlParser.SYS_GET_PRIVILEGES - 1634)) | (1 << (PlSqlParser.SYS_GETTOKENID - 1634)) | (1 << (PlSqlParser.SYS_GETXTIVAL - 1634)) | (1 << (PlSqlParser.SYS_GUID - 1634)) | (1 << (PlSqlParser.SYSGUID - 1634)) | (1 << (PlSqlParser.SYSKM - 1634)) | (1 << (PlSqlParser.SYS_MAKE_XMLNODEID - 1634)) | (1 << (PlSqlParser.SYS_MAKEXML - 1634)))) !== 0) || ((((_la - 1666)) & ~0x1f) == 0 && ((1 << (_la - 1666)) & ((1 << (PlSqlParser.SYS_MKXMLATTR - 1666)) | (1 << (PlSqlParser.SYS_MKXTI - 1666)) | (1 << (PlSqlParser.SYSOBJ - 1666)) | (1 << (PlSqlParser.SYS_OP_ADT2BIN - 1666)) | (1 << (PlSqlParser.SYS_OP_ADTCONS - 1666)) | (1 << (PlSqlParser.SYS_OP_ALSCRVAL - 1666)) | (1 << (PlSqlParser.SYS_OP_ATG - 1666)) | (1 << (PlSqlParser.SYS_OP_BIN2ADT - 1666)) | (1 << (PlSqlParser.SYS_OP_BITVEC - 1666)) | (1 << (PlSqlParser.SYS_OP_BL2R - 1666)) | (1 << (PlSqlParser.SYS_OP_BLOOM_FILTER_LIST - 1666)) | (1 << (PlSqlParser.SYS_OP_BLOOM_FILTER - 1666)) | (1 << (PlSqlParser.SYS_OP_C2C - 1666)) | (1 << (PlSqlParser.SYS_OP_CAST - 1666)) | (1 << (PlSqlParser.SYS_OP_CEG - 1666)) | (1 << (PlSqlParser.SYS_OP_CL2C - 1666)) | (1 << (PlSqlParser.SYS_OP_COMBINED_HASH - 1666)) | (1 << (PlSqlParser.SYS_OP_COMP - 1666)) | (1 << (PlSqlParser.SYS_OP_CONVERT - 1666)) | (1 << (PlSqlParser.SYS_OP_COUNTCHG - 1666)) | (1 << (PlSqlParser.SYS_OP_CSCONV - 1666)) | (1 << (PlSqlParser.SYS_OP_CSCONVTEST - 1666)) | (1 << (PlSqlParser.SYS_OP_CSR - 1666)) | (1 << (PlSqlParser.SYS_OP_CSX_PATCH - 1666)) | (1 << (PlSqlParser.SYS_OP_CYCLED_SEQ - 1666)) | (1 << (PlSqlParser.SYS_OP_DECOMP - 1666)) | (1 << (PlSqlParser.SYS_OP_DESCEND - 1666)) | (1 << (PlSqlParser.SYS_OP_DISTINCT - 1666)) | (1 << (PlSqlParser.SYS_OP_DRA - 1666)) | (1 << (PlSqlParser.SYS_OP_DUMP - 1666)) | (1 << (PlSqlParser.SYS_OP_DV_CHECK - 1666)) | (1 << (PlSqlParser.SYS_OP_ENFORCE_NOT_NULL - 1666)))) !== 0) || ((((_la - 1698)) & ~0x1f) == 0 && ((1 << (_la - 1698)) & ((1 << (PlSqlParser.SYSOPER - 1698)) | (1 << (PlSqlParser.SYS_OP_EXTRACT - 1698)) | (1 << (PlSqlParser.SYS_OP_GROUPING - 1698)) | (1 << (PlSqlParser.SYS_OP_GUID - 1698)) | (1 << (PlSqlParser.SYS_OP_HASH - 1698)) | (1 << (PlSqlParser.SYS_OP_IIX - 1698)) | (1 << (PlSqlParser.SYS_OP_ITR - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_CREATE - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_FILTER_LIST - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_FILTER - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_SUCCEEDED - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_USE - 1698)) | (1 << (PlSqlParser.SYS_OP_LBID - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2BLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2CLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2ID - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2NCLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2TYP - 1698)) | (1 << (PlSqlParser.SYS_OP_LSVI - 1698)) | (1 << (PlSqlParser.SYS_OP_LVL - 1698)) | (1 << (PlSqlParser.SYS_OP_MAKEOID - 1698)) | (1 << (PlSqlParser.SYS_OP_MAP_NONNULL - 1698)) | (1 << (PlSqlParser.SYS_OP_MSR - 1698)) | (1 << (PlSqlParser.SYS_OP_NICOMBINE - 1698)) | (1 << (PlSqlParser.SYS_OP_NIEXTRACT - 1698)) | (1 << (PlSqlParser.SYS_OP_NII - 1698)) | (1 << (PlSqlParser.SYS_OP_NIX - 1698)) | (1 << (PlSqlParser.SYS_OP_NOEXPAND - 1698)) | (1 << (PlSqlParser.SYS_OP_NTCIMG - 1698)) | (1 << (PlSqlParser.SYS_OP_NUMTORAW - 1698)) | (1 << (PlSqlParser.SYS_OP_OIDVALUE - 1698)) | (1 << (PlSqlParser.SYS_OP_OPNSIZE - 1698)))) !== 0) || ((((_la - 1730)) & ~0x1f) == 0 && ((1 << (_la - 1730)) & ((1 << (PlSqlParser.SYS_OP_PAR_1 - 1730)) | (1 << (PlSqlParser.SYS_OP_PARGID_1 - 1730)) | (1 << (PlSqlParser.SYS_OP_PARGID - 1730)) | (1 << (PlSqlParser.SYS_OP_PAR - 1730)) | (1 << (PlSqlParser.SYS_OP_PART_ID - 1730)) | (1 << (PlSqlParser.SYS_OP_PIVOT - 1730)) | (1 << (PlSqlParser.SYS_OP_R2O - 1730)) | (1 << (PlSqlParser.SYS_OP_RAWTONUM - 1730)) | (1 << (PlSqlParser.SYS_OP_RDTM - 1730)) | (1 << (PlSqlParser.SYS_OP_REF - 1730)) | (1 << (PlSqlParser.SYS_OP_RMTD - 1730)) | (1 << (PlSqlParser.SYS_OP_ROWIDTOOBJ - 1730)) | (1 << (PlSqlParser.SYS_OP_RPB - 1730)) | (1 << (PlSqlParser.SYS_OPTLOBPRBSC - 1730)) | (1 << (PlSqlParser.SYS_OP_TOSETID - 1730)) | (1 << (PlSqlParser.SYS_OP_TPR - 1730)) | (1 << (PlSqlParser.SYS_OP_TRTB - 1730)) | (1 << (PlSqlParser.SYS_OPTXICMP - 1730)) | (1 << (PlSqlParser.SYS_OPTXQCASTASNQ - 1730)) | (1 << (PlSqlParser.SYS_OP_UNDESCEND - 1730)) | (1 << (PlSqlParser.SYS_OP_VECAND - 1730)) | (1 << (PlSqlParser.SYS_OP_VECBIT - 1730)) | (1 << (PlSqlParser.SYS_OP_VECOR - 1730)) | (1 << (PlSqlParser.SYS_OP_VECXOR - 1730)) | (1 << (PlSqlParser.SYS_OP_VERSION - 1730)) | (1 << (PlSqlParser.SYS_OP_VREF - 1730)) | (1 << (PlSqlParser.SYS_OP_VVD - 1730)) | (1 << (PlSqlParser.SYS_OP_XMLCONS_FOR_CSX - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHATG - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHIDX - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHOP - 1730)) | (1 << (PlSqlParser.SYS_OP_XTXT2SQLT - 1730)))) !== 0) || ((((_la - 1762)) & ~0x1f) == 0 && ((1 << (_la - 1762)) & ((1 << (PlSqlParser.SYS_OP_ZONE_ID - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_DEPTH - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_MAXCHILD - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_PARENT - 1762)) | (1 << (PlSqlParser.SYS_PARALLEL_TXN - 1762)) | (1 << (PlSqlParser.SYS_PATHID_IS_ATTR - 1762)) | (1 << (PlSqlParser.SYS_PATHID_IS_NMSPC - 1762)) | (1 << (PlSqlParser.SYS_PATHID_LASTNAME - 1762)) | (1 << (PlSqlParser.SYS_PATHID_LASTNMSPC - 1762)) | (1 << (PlSqlParser.SYS_PATH_REVERSE - 1762)) | (1 << (PlSqlParser.SYS_PXQEXTRACT - 1762)) | (1 << (PlSqlParser.SYS_RAW_TO_XSID - 1762)) | (1 << (PlSqlParser.SYS_RID_ORDER - 1762)) | (1 << (PlSqlParser.SYS_ROW_DELTA - 1762)) | (1 << (PlSqlParser.SYS_SC_2_XMLT - 1762)) | (1 << (PlSqlParser.SYS_SYNRCIREDO - 1762)) | (1 << (PlSqlParser.SYSTEM_DEFINED - 1762)) | (1 << (PlSqlParser.SYSTEM - 1762)) | (1 << (PlSqlParser.SYSTIMESTAMP - 1762)) | (1 << (PlSqlParser.SYS_TYPEID - 1762)) | (1 << (PlSqlParser.SYS_UMAKEXML - 1762)) | (1 << (PlSqlParser.SYS_XMLANALYZE - 1762)) | (1 << (PlSqlParser.SYS_XMLCONTAINS - 1762)) | (1 << (PlSqlParser.SYS_XMLCONV - 1762)) | (1 << (PlSqlParser.SYS_XMLEXNSURI - 1762)) | (1 << (PlSqlParser.SYS_XMLGEN - 1762)) | (1 << (PlSqlParser.SYS_XMLI_LOC_ISNODE - 1762)) | (1 << (PlSqlParser.SYS_XMLI_LOC_ISTEXT - 1762)) | (1 << (PlSqlParser.SYS_XMLINSTR - 1762)) | (1 << (PlSqlParser.SYS_XMLLOCATOR_GETSVAL - 1762)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETCID - 1762)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETLOCATOR - 1762)))) !== 0) || ((((_la - 1794)) & ~0x1f) == 0 && ((1 << (_la - 1794)) & ((1 << (PlSqlParser.SYS_XMLNODEID_GETOKEY - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETPATHID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETPTRID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETRID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETSVAL - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETTID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID - 1794)) | (1 << (PlSqlParser.SYS_XMLT_2_SC - 1794)) | (1 << (PlSqlParser.SYS_XMLTRANSLATE - 1794)) | (1 << (PlSqlParser.SYS_XMLTYPE2SQL - 1794)) | (1 << (PlSqlParser.SYS_XQ_ASQLCNV - 1794)) | (1 << (PlSqlParser.SYS_XQ_ATOMCNVCHK - 1794)) | (1 << (PlSqlParser.SYS_XQBASEURI - 1794)) | (1 << (PlSqlParser.SYS_XQCASTABLEERRH - 1794)) | (1 << (PlSqlParser.SYS_XQCODEP2STR - 1794)) | (1 << (PlSqlParser.SYS_XQCODEPEQ - 1794)) | (1 << (PlSqlParser.SYS_XQCON2SEQ - 1794)) | (1 << (PlSqlParser.SYS_XQCONCAT - 1794)) | (1 << (PlSqlParser.SYS_XQDELETE - 1794)) | (1 << (PlSqlParser.SYS_XQDFLTCOLATION - 1794)) | (1 << (PlSqlParser.SYS_XQDOC - 1794)) | (1 << (PlSqlParser.SYS_XQDOCURI - 1794)) | (1 << (PlSqlParser.SYS_XQDURDIV - 1794)) | (1 << (PlSqlParser.SYS_XQED4URI - 1794)) | (1 << (PlSqlParser.SYS_XQENDSWITH - 1794)) | (1 << (PlSqlParser.SYS_XQERRH - 1794)) | (1 << (PlSqlParser.SYS_XQERR - 1794)) | (1 << (PlSqlParser.SYS_XQESHTMLURI - 1794)) | (1 << (PlSqlParser.SYS_XQEXLOBVAL - 1794)) | (1 << (PlSqlParser.SYS_XQEXSTWRP - 1794)) | (1 << (PlSqlParser.SYS_XQEXTRACT - 1794)) | (1 << (PlSqlParser.SYS_XQEXTRREF - 1794)))) !== 0) || ((((_la - 1826)) & ~0x1f) == 0 && ((1 << (_la - 1826)) & ((1 << (PlSqlParser.SYS_XQEXVAL - 1826)) | (1 << (PlSqlParser.SYS_XQFB2STR - 1826)) | (1 << (PlSqlParser.SYS_XQFNBOOL - 1826)) | (1 << (PlSqlParser.SYS_XQFNCMP - 1826)) | (1 << (PlSqlParser.SYS_XQFNDATIM - 1826)) | (1 << (PlSqlParser.SYS_XQFNLNAME - 1826)) | (1 << (PlSqlParser.SYS_XQFNNM - 1826)) | (1 << (PlSqlParser.SYS_XQFNNSURI - 1826)) | (1 << (PlSqlParser.SYS_XQFNPREDTRUTH - 1826)) | (1 << (PlSqlParser.SYS_XQFNQNM - 1826)) | (1 << (PlSqlParser.SYS_XQFNROOT - 1826)) | (1 << (PlSqlParser.SYS_XQFORMATNUM - 1826)) | (1 << (PlSqlParser.SYS_XQFTCONTAIN - 1826)) | (1 << (PlSqlParser.SYS_XQFUNCR - 1826)) | (1 << (PlSqlParser.SYS_XQGETCONTENT - 1826)) | (1 << (PlSqlParser.SYS_XQINDXOF - 1826)) | (1 << (PlSqlParser.SYS_XQINSERT - 1826)) | (1 << (PlSqlParser.SYS_XQINSPFX - 1826)) | (1 << (PlSqlParser.SYS_XQIRI2URI - 1826)) | (1 << (PlSqlParser.SYS_XQLANG - 1826)) | (1 << (PlSqlParser.SYS_XQLLNMFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQMKNODEREF - 1826)) | (1 << (PlSqlParser.SYS_XQNILLED - 1826)) | (1 << (PlSqlParser.SYS_XQNODENAME - 1826)) | (1 << (PlSqlParser.SYS_XQNORMSPACE - 1826)) | (1 << (PlSqlParser.SYS_XQNORMUCODE - 1826)) | (1 << (PlSqlParser.SYS_XQ_NRNG - 1826)) | (1 << (PlSqlParser.SYS_XQNSP4PFX - 1826)) | (1 << (PlSqlParser.SYS_XQNSPFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQPFXFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQ_PKSQL2XML - 1826)) | (1 << (PlSqlParser.SYS_XQPOLYABS - 1826)))) !== 0) || ((((_la - 1858)) & ~0x1f) == 0 && ((1 << (_la - 1858)) & ((1 << (PlSqlParser.SYS_XQPOLYADD - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCEL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCSTBL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCST - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYDIV - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYFLR - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYMOD - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYMUL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYRND - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYSQRT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYSUB - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYUMUS - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYUPLS - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVEQ - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVGE - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVGT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVLE - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVLT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVNE - 1858)) | (1 << (PlSqlParser.SYS_XQREF2VAL - 1858)) | (1 << (PlSqlParser.SYS_XQRENAME - 1858)) | (1 << (PlSqlParser.SYS_XQREPLACE - 1858)) | (1 << (PlSqlParser.SYS_XQRESVURI - 1858)) | (1 << (PlSqlParser.SYS_XQRNDHALF2EVN - 1858)) | (1 << (PlSqlParser.SYS_XQRSLVQNM - 1858)) | (1 << (PlSqlParser.SYS_XQRYENVPGET - 1858)) | (1 << (PlSqlParser.SYS_XQRYVARGET - 1858)) | (1 << (PlSqlParser.SYS_XQRYWRP - 1858)) | (1 << (PlSqlParser.SYS_XQSEQ2CON4XC - 1858)) | (1 << (PlSqlParser.SYS_XQSEQ2CON - 1858)) | (1 << (PlSqlParser.SYS_XQSEQDEEPEQ - 1858)) | (1 << (PlSqlParser.SYS_XQSEQINSB - 1858)))) !== 0) || ((((_la - 1890)) & ~0x1f) == 0 && ((1 << (_la - 1890)) & ((1 << (PlSqlParser.SYS_XQSEQRM - 1890)) | (1 << (PlSqlParser.SYS_XQSEQRVS - 1890)) | (1 << (PlSqlParser.SYS_XQSEQSUB - 1890)) | (1 << (PlSqlParser.SYS_XQSEQTYPMATCH - 1890)) | (1 << (PlSqlParser.SYS_XQSTARTSWITH - 1890)) | (1 << (PlSqlParser.SYS_XQSTATBURI - 1890)) | (1 << (PlSqlParser.SYS_XQSTR2CODEP - 1890)) | (1 << (PlSqlParser.SYS_XQSTRJOIN - 1890)) | (1 << (PlSqlParser.SYS_XQSUBSTRAFT - 1890)) | (1 << (PlSqlParser.SYS_XQSUBSTRBEF - 1890)) | (1 << (PlSqlParser.SYS_XQTOKENIZE - 1890)) | (1 << (PlSqlParser.SYS_XQTREATAS - 1890)) | (1 << (PlSqlParser.SYS_XQ_UPKXML2SQL - 1890)) | (1 << (PlSqlParser.SYS_XQXFORM - 1890)) | (1 << (PlSqlParser.SYS_XSID_TO_RAW - 1890)) | (1 << (PlSqlParser.SYS_ZMAP_FILTER - 1890)) | (1 << (PlSqlParser.SYS_ZMAP_REFRESH - 1890)) | (1 << (PlSqlParser.TABLE_LOOKUP_BY_NL - 1890)) | (1 << (PlSqlParser.TABLESPACE_NO - 1890)) | (1 << (PlSqlParser.TABLESPACE - 1890)) | (1 << (PlSqlParser.TABLES - 1890)) | (1 << (PlSqlParser.TABLE_STATS - 1890)) | (1 << (PlSqlParser.TABLE - 1890)) | (1 << (PlSqlParser.TABNO - 1890)) | (1 << (PlSqlParser.TAG - 1890)) | (1 << (PlSqlParser.TANH - 1890)) | (1 << (PlSqlParser.TAN - 1890)) | (1 << (PlSqlParser.TBLORIDXPARTNUM - 1890)) | (1 << (PlSqlParser.TEMPFILE - 1890)) | (1 << (PlSqlParser.TEMPLATE - 1890)) | (1 << (PlSqlParser.TEMPORARY - 1890)) | (1 << (PlSqlParser.TEMP_TABLE - 1890)))) !== 0) || ((((_la - 1922)) & ~0x1f) == 0 && ((1 << (_la - 1922)) & ((1 << (PlSqlParser.TEST - 1922)) | (1 << (PlSqlParser.TEXT - 1922)) | (1 << (PlSqlParser.THAN - 1922)) | (1 << (PlSqlParser.THEN - 1922)) | (1 << (PlSqlParser.THE - 1922)) | (1 << (PlSqlParser.THREAD - 1922)) | (1 << (PlSqlParser.THROUGH - 1922)) | (1 << (PlSqlParser.TIER - 1922)) | (1 << (PlSqlParser.TIES - 1922)) | (1 << (PlSqlParser.TIMEOUT - 1922)) | (1 << (PlSqlParser.TIMESTAMP_LTZ_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMESTAMP - 1922)) | (1 << (PlSqlParser.TIMESTAMP_TZ_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMESTAMP_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMES - 1922)) | (1 << (PlSqlParser.TIME - 1922)) | (1 << (PlSqlParser.TIMEZONE_ABBR - 1922)) | (1 << (PlSqlParser.TIMEZONE_HOUR - 1922)) | (1 << (PlSqlParser.TIMEZONE_MINUTE - 1922)) | (1 << (PlSqlParser.TIMEZONE_OFFSET - 1922)) | (1 << (PlSqlParser.TIMEZONE_REGION - 1922)) | (1 << (PlSqlParser.TIME_ZONE - 1922)) | (1 << (PlSqlParser.TIV_GB - 1922)) | (1 << (PlSqlParser.TIV_SSF - 1922)) | (1 << (PlSqlParser.TO_ACLID - 1922)) | (1 << (PlSqlParser.TO_BINARY_DOUBLE - 1922)) | (1 << (PlSqlParser.TO_BINARY_FLOAT - 1922)) | (1 << (PlSqlParser.TO_BLOB - 1922)) | (1 << (PlSqlParser.TO_CLOB - 1922)) | (1 << (PlSqlParser.TO_DSINTERVAL - 1922)) | (1 << (PlSqlParser.TO_LOB - 1922)))) !== 0) || ((((_la - 1954)) & ~0x1f) == 0 && ((1 << (_la - 1954)) & ((1 << (PlSqlParser.TO_MULTI_BYTE - 1954)) | (1 << (PlSqlParser.TO_NCHAR - 1954)) | (1 << (PlSqlParser.TO_NCLOB - 1954)) | (1 << (PlSqlParser.TO_NUMBER - 1954)) | (1 << (PlSqlParser.TOPLEVEL - 1954)) | (1 << (PlSqlParser.TO_SINGLE_BYTE - 1954)) | (1 << (PlSqlParser.TO_TIMESTAMP - 1954)) | (1 << (PlSqlParser.TO_TIMESTAMP_TZ - 1954)) | (1 << (PlSqlParser.TO_TIME - 1954)) | (1 << (PlSqlParser.TO_TIME_TZ - 1954)) | (1 << (PlSqlParser.TO_YMINTERVAL - 1954)) | (1 << (PlSqlParser.TRACE - 1954)) | (1 << (PlSqlParser.TRACING - 1954)) | (1 << (PlSqlParser.TRACKING - 1954)) | (1 << (PlSqlParser.TRAILING - 1954)) | (1 << (PlSqlParser.TRANSACTION - 1954)) | (1 << (PlSqlParser.TRANSFORM_DISTINCT_AGG - 1954)) | (1 << (PlSqlParser.TRANSITIONAL - 1954)) | (1 << (PlSqlParser.TRANSITION - 1954)) | (1 << (PlSqlParser.TRANSLATE - 1954)) | (1 << (PlSqlParser.TRANSLATION - 1954)) | (1 << (PlSqlParser.TREAT - 1954)) | (1 << (PlSqlParser.TRIGGERS - 1954)) | (1 << (PlSqlParser.TRIGGER - 1954)) | (1 << (PlSqlParser.TRUE - 1954)) | (1 << (PlSqlParser.TRUNCATE - 1954)) | (1 << (PlSqlParser.TRUNC - 1954)) | (1 << (PlSqlParser.TRUSTED - 1954)) | (1 << (PlSqlParser.TRUST - 1954)) | (1 << (PlSqlParser.TUNING - 1954)) | (1 << (PlSqlParser.TX - 1954)))) !== 0) || ((((_la - 1986)) & ~0x1f) == 0 && ((1 << (_la - 1986)) & ((1 << (PlSqlParser.TYPES - 1986)) | (1 << (PlSqlParser.TYPE - 1986)) | (1 << (PlSqlParser.TZ_OFFSET - 1986)) | (1 << (PlSqlParser.UB2 - 1986)) | (1 << (PlSqlParser.UBA - 1986)) | (1 << (PlSqlParser.UCS2 - 1986)) | (1 << (PlSqlParser.UID - 1986)) | (1 << (PlSqlParser.UNARCHIVED - 1986)) | (1 << (PlSqlParser.UNBOUNDED - 1986)) | (1 << (PlSqlParser.UNBOUND - 1986)) | (1 << (PlSqlParser.UNCONDITIONAL - 1986)) | (1 << (PlSqlParser.UNDER - 1986)) | (1 << (PlSqlParser.UNDO - 1986)) | (1 << (PlSqlParser.UNDROP - 1986)) | (1 << (PlSqlParser.UNIFORM - 1986)) | (1 << (PlSqlParser.UNISTR - 1986)) | (1 << (PlSqlParser.UNLIMITED - 1986)) | (1 << (PlSqlParser.UNLOAD - 1986)) | (1 << (PlSqlParser.UNLOCK - 1986)) | (1 << (PlSqlParser.UNMATCHED - 1986)) | (1 << (PlSqlParser.UNNEST_INNERJ_DISTINCT_VIEW - 1986)) | (1 << (PlSqlParser.UNNEST_NOSEMIJ_NODISTINCTVIEW - 1986)) | (1 << (PlSqlParser.UNNEST_SEMIJ_VIEW - 1986)) | (1 << (PlSqlParser.UNNEST - 1986)) | (1 << (PlSqlParser.UNPACKED - 1986)) | (1 << (PlSqlParser.UNPIVOT - 1986)) | (1 << (PlSqlParser.UNPLUG - 1986)) | (1 << (PlSqlParser.UNPROTECTED - 1986)) | (1 << (PlSqlParser.UNQUIESCE - 1986)) | (1 << (PlSqlParser.UNRECOVERABLE - 1986)))) !== 0) || ((((_la - 2018)) & ~0x1f) == 0 && ((1 << (_la - 2018)) & ((1 << (PlSqlParser.UNRESTRICTED - 2018)) | (1 << (PlSqlParser.UNSUBSCRIBE - 2018)) | (1 << (PlSqlParser.UNTIL - 2018)) | (1 << (PlSqlParser.UNUSABLE - 2018)) | (1 << (PlSqlParser.UNUSED - 2018)) | (1 << (PlSqlParser.UPDATABLE - 2018)) | (1 << (PlSqlParser.UPDATED - 2018)) | (1 << (PlSqlParser.UPDATEXML - 2018)) | (1 << (PlSqlParser.UPD_INDEXES - 2018)) | (1 << (PlSqlParser.UPD_JOININDEX - 2018)) | (1 << (PlSqlParser.UPGRADE - 2018)) | (1 << (PlSqlParser.UPPER - 2018)) | (1 << (PlSqlParser.UPSERT - 2018)) | (1 << (PlSqlParser.UROWID - 2018)) | (1 << (PlSqlParser.USABLE - 2018)) | (1 << (PlSqlParser.USAGE - 2018)) | (1 << (PlSqlParser.USE_ANTI - 2018)) | (1 << (PlSqlParser.USE_CONCAT - 2018)) | (1 << (PlSqlParser.USE_CUBE - 2018)) | (1 << (PlSqlParser.USE_HASH_AGGREGATION - 2018)) | (1 << (PlSqlParser.USE_HASH_GBY_FOR_PUSHDOWN - 2018)) | (1 << (PlSqlParser.USE_HASH - 2018)) | (1 << (PlSqlParser.USE_HIDDEN_PARTITIONS - 2018)) | (1 << (PlSqlParser.USE_INVISIBLE_INDEXES - 2018)) | (1 << (PlSqlParser.USE_MERGE_CARTESIAN - 2018)) | (1 << (PlSqlParser.USE_MERGE - 2018)) | (1 << (PlSqlParser.USE_NL - 2018)) | (1 << (PlSqlParser.USE_NL_WITH_INDEX - 2018)) | (1 << (PlSqlParser.USE_PRIVATE_OUTLINES - 2018)) | (1 << (PlSqlParser.USER_DATA - 2018)) | (1 << (PlSqlParser.USER_DEFINED - 2018)))) !== 0) || ((((_la - 2050)) & ~0x1f) == 0 && ((1 << (_la - 2050)) & ((1 << (PlSqlParser.USERENV - 2050)) | (1 << (PlSqlParser.USERGROUP - 2050)) | (1 << (PlSqlParser.USER_RECYCLEBIN - 2050)) | (1 << (PlSqlParser.USERS - 2050)) | (1 << (PlSqlParser.USER_TABLESPACES - 2050)) | (1 << (PlSqlParser.USER - 2050)) | (1 << (PlSqlParser.USE_SEMI - 2050)) | (1 << (PlSqlParser.USE_STORED_OUTLINES - 2050)) | (1 << (PlSqlParser.USE_TTT_FOR_GSETS - 2050)) | (1 << (PlSqlParser.USE - 2050)) | (1 << (PlSqlParser.USE_VECTOR_AGGREGATION - 2050)) | (1 << (PlSqlParser.USE_WEAK_NAME_RESL - 2050)) | (1 << (PlSqlParser.USING_NO_EXPAND - 2050)) | (1 << (PlSqlParser.USING - 2050)) | (1 << (PlSqlParser.UTF16BE - 2050)) | (1 << (PlSqlParser.UTF16LE - 2050)) | (1 << (PlSqlParser.UTF32 - 2050)) | (1 << (PlSqlParser.UTF8 - 2050)) | (1 << (PlSqlParser.V1 - 2050)) | (1 << (PlSqlParser.V2 - 2050)) | (1 << (PlSqlParser.VALIDATE - 2050)) | (1 << (PlSqlParser.VALIDATION - 2050)) | (1 << (PlSqlParser.VALID_TIME_END - 2050)) | (1 << (PlSqlParser.VALUE - 2050)) | (1 << (PlSqlParser.VARCHAR2 - 2050)) | (1 << (PlSqlParser.VARCHAR - 2050)) | (1 << (PlSqlParser.VARIABLE - 2050)) | (1 << (PlSqlParser.VAR_POP - 2050)) | (1 << (PlSqlParser.VARRAYS - 2050)) | (1 << (PlSqlParser.VARRAY - 2050)) | (1 << (PlSqlParser.VAR_SAMP - 2050)))) !== 0) || ((((_la - 2082)) & ~0x1f) == 0 && ((1 << (_la - 2082)) & ((1 << (PlSqlParser.VARYING - 2082)) | (1 << (PlSqlParser.VECTOR_READ_TRACE - 2082)) | (1 << (PlSqlParser.VECTOR_READ - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM_DIMS - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM_FACT - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM - 2082)) | (1 << (PlSqlParser.VERIFIER - 2082)) | (1 << (PlSqlParser.VERIFY - 2082)) | (1 << (PlSqlParser.VERSIONING - 2082)) | (1 << (PlSqlParser.VERSIONS_ENDSCN - 2082)) | (1 << (PlSqlParser.VERSIONS_ENDTIME - 2082)) | (1 << (PlSqlParser.VERSIONS_OPERATION - 2082)) | (1 << (PlSqlParser.VERSIONS_STARTSCN - 2082)) | (1 << (PlSqlParser.VERSIONS_STARTTIME - 2082)) | (1 << (PlSqlParser.VERSIONS - 2082)) | (1 << (PlSqlParser.VERSIONS_XID - 2082)) | (1 << (PlSqlParser.VERSION - 2082)) | (1 << (PlSqlParser.VIOLATION - 2082)) | (1 << (PlSqlParser.VIRTUAL - 2082)) | (1 << (PlSqlParser.VISIBILITY - 2082)) | (1 << (PlSqlParser.VISIBLE - 2082)) | (1 << (PlSqlParser.VOLUME - 2082)) | (1 << (PlSqlParser.VSIZE - 2082)) | (1 << (PlSqlParser.WAIT - 2082)) | (1 << (PlSqlParser.WALLET - 2082)) | (1 << (PlSqlParser.WARNING - 2082)) | (1 << (PlSqlParser.WEEKS - 2082)) | (1 << (PlSqlParser.WEEK - 2082)) | (1 << (PlSqlParser.WELLFORMED - 2082)) | (1 << (PlSqlParser.WHENEVER - 2082)) | (1 << (PlSqlParser.WHEN - 2082)))) !== 0) || ((((_la - 2115)) & ~0x1f) == 0 && ((1 << (_la - 2115)) & ((1 << (PlSqlParser.WHILE - 2115)) | (1 << (PlSqlParser.WHITESPACE - 2115)) | (1 << (PlSqlParser.WIDTH_BUCKET - 2115)) | (1 << (PlSqlParser.WITHIN - 2115)) | (1 << (PlSqlParser.WITHOUT - 2115)) | (1 << (PlSqlParser.WITH_PLSQL - 2115)) | (1 << (PlSqlParser.WORK - 2115)) | (1 << (PlSqlParser.WRAPPED - 2115)) | (1 << (PlSqlParser.WRAPPER - 2115)) | (1 << (PlSqlParser.WRITE - 2115)) | (1 << (PlSqlParser.XDB_FASTPATH_INSERT - 2115)) | (1 << (PlSqlParser.X_DYN_PRUNE - 2115)) | (1 << (PlSqlParser.XID - 2115)) | (1 << (PlSqlParser.XML2OBJECT - 2115)) | (1 << (PlSqlParser.XMLAGG - 2115)) | (1 << (PlSqlParser.XMLATTRIBUTES - 2115)) | (1 << (PlSqlParser.XMLCAST - 2115)) | (1 << (PlSqlParser.XMLCDATA - 2115)) | (1 << (PlSqlParser.XMLCOLATTVAL - 2115)) | (1 << (PlSqlParser.XMLCOMMENT - 2115)) | (1 << (PlSqlParser.XMLCONCAT - 2115)) | (1 << (PlSqlParser.XMLDIFF - 2115)) | (1 << (PlSqlParser.XML_DML_RWT_STMT - 2115)) | (1 << (PlSqlParser.XMLELEMENT - 2115)) | (1 << (PlSqlParser.XMLEXISTS2 - 2115)) | (1 << (PlSqlParser.XMLEXISTS - 2115)) | (1 << (PlSqlParser.XMLFOREST - 2115)) | (1 << (PlSqlParser.XMLINDEX_REWRITE_IN_SELECT - 2115)) | (1 << (PlSqlParser.XMLINDEX_REWRITE - 2115)))) !== 0) || ((((_la - 2147)) & ~0x1f) == 0 && ((1 << (_la - 2147)) & ((1 << (PlSqlParser.XMLINDEX_SEL_IDX_TBL - 2147)) | (1 << (PlSqlParser.XMLISNODE - 2147)) | (1 << (PlSqlParser.XMLISVALID - 2147)) | (1 << (PlSqlParser.XMLNAMESPACES - 2147)) | (1 << (PlSqlParser.XMLPARSE - 2147)) | (1 << (PlSqlParser.XMLPATCH - 2147)) | (1 << (PlSqlParser.XMLPI - 2147)) | (1 << (PlSqlParser.XMLQUERYVAL - 2147)) | (1 << (PlSqlParser.XMLQUERY - 2147)) | (1 << (PlSqlParser.XMLROOT - 2147)) | (1 << (PlSqlParser.XMLSCHEMA - 2147)) | (1 << (PlSqlParser.XMLSERIALIZE - 2147)) | (1 << (PlSqlParser.XMLTABLE - 2147)) | (1 << (PlSqlParser.XMLTRANSFORMBLOB - 2147)) | (1 << (PlSqlParser.XMLTRANSFORM - 2147)) | (1 << (PlSqlParser.XMLTYPE - 2147)) | (1 << (PlSqlParser.XML - 2147)) | (1 << (PlSqlParser.XPATHTABLE - 2147)) | (1 << (PlSqlParser.XS_SYS_CONTEXT - 2147)) | (1 << (PlSqlParser.XS - 2147)) | (1 << (PlSqlParser.YEARS - 2147)) | (1 << (PlSqlParser.YEAR - 2147)) | (1 << (PlSqlParser.YES - 2147)) | (1 << (PlSqlParser.YMINTERVAL_UNCONSTRAINED - 2147)) | (1 << (PlSqlParser.ZONEMAP - 2147)) | (1 << (PlSqlParser.ZONE - 2147)) | (1 << (PlSqlParser.PREDICTION - 2147)) | (1 << (PlSqlParser.PREDICTION_BOUNDS - 2147)) | (1 << (PlSqlParser.PREDICTION_COST - 2147)) | (1 << (PlSqlParser.PREDICTION_DETAILS - 2147)) | (1 << (PlSqlParser.PREDICTION_PROBABILITY - 2147)))) !== 0) || ((((_la - 2179)) & ~0x1f) == 0 && ((1 << (_la - 2179)) & ((1 << (PlSqlParser.PREDICTION_SET - 2179)) | (1 << (PlSqlParser.CUME_DIST - 2179)) | (1 << (PlSqlParser.DENSE_RANK - 2179)) | (1 << (PlSqlParser.LISTAGG - 2179)) | (1 << (PlSqlParser.PERCENT_RANK - 2179)) | (1 << (PlSqlParser.PERCENTILE_CONT - 2179)) | (1 << (PlSqlParser.PERCENTILE_DISC - 2179)) | (1 << (PlSqlParser.RANK - 2179)) | (1 << (PlSqlParser.AVG - 2179)) | (1 << (PlSqlParser.CORR - 2179)) | (1 << (PlSqlParser.COVAR_ - 2179)) | (1 << (PlSqlParser.LAG - 2179)) | (1 << (PlSqlParser.LEAD - 2179)) | (1 << (PlSqlParser.MAX - 2179)) | (1 << (PlSqlParser.MEDIAN - 2179)) | (1 << (PlSqlParser.MIN - 2179)) | (1 << (PlSqlParser.NTILE - 2179)) | (1 << (PlSqlParser.NVL - 2179)) | (1 << (PlSqlParser.RATIO_TO_REPORT - 2179)) | (1 << (PlSqlParser.REGR_ - 2179)) | (1 << (PlSqlParser.ROUND - 2179)) | (1 << (PlSqlParser.ROW_NUMBER - 2179)) | (1 << (PlSqlParser.SUBSTR - 2179)) | (1 << (PlSqlParser.TO_CHAR - 2179)) | (1 << (PlSqlParser.TRIM - 2179)) | (1 << (PlSqlParser.SUM - 2179)) | (1 << (PlSqlParser.STDDEV - 2179)) | (1 << (PlSqlParser.VAR_ - 2179)) | (1 << (PlSqlParser.VARIANCE - 2179)) | (1 << (PlSqlParser.LEAST - 2179)) | (1 << (PlSqlParser.GREATEST - 2179)))) !== 0) || _la===PlSqlParser.TO_DATE || _la===PlSqlParser.PERIOD || _la===PlSqlParser.REGULAR_ID) {
+ this.state = 5926;
+ this.partition_name();
+ }
+
+ this.state = 5929;
+ this.range_values_clause();
+ this.state = 5930;
+ this.table_partition_description();
+ this.state = 5963;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.SUBPARTITIONS || _la===PlSqlParser.LEFT_PAREN) {
+ this.state = 5961;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.LEFT_PAREN:
+ this.state = 5931;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 5956;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,681,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 5932;
+ this.range_subpartition_desc();
+ this.state = 5937;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 5933;
+ this.match(PlSqlParser.COMMA);
+ this.state = 5934;
+ this.range_subpartition_desc();
+ this.state = 5939;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+
+ case 2:
+ this.state = 5940;
+ this.list_subpartition_desc();
+ this.state = 5945;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 5941;
+ this.match(PlSqlParser.COMMA);
+ this.state = 5942;
+ this.list_subpartition_desc();
+ this.state = 5947;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+
+ case 3:
+ this.state = 5948;
+ this.individual_hash_subparts();
+ this.state = 5953;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 5949;
+ this.match(PlSqlParser.COMMA);
+ this.state = 5950;
+ this.individual_hash_subparts();
+ this.state = 5955;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+
+ }
+ this.state = 5958;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ break;
+ case PlSqlParser.SUBPARTITIONS:
+ this.state = 5960;
+ this.hash_subparts_by_quantity();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function List_partition_descContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_list_partition_desc;
+ return this;
+}
+
+List_partition_descContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+List_partition_descContext.prototype.constructor = List_partition_descContext;
+
+List_partition_descContext.prototype.PARTITION = function() {
+ return this.getToken(PlSqlParser.PARTITION, 0);
+};
+
+List_partition_descContext.prototype.list_values_clause = function() {
+ return this.getTypedRuleContext(List_values_clauseContext,0);
+};
+
+List_partition_descContext.prototype.table_partition_description = function() {
+ return this.getTypedRuleContext(Table_partition_descriptionContext,0);
+};
+
+List_partition_descContext.prototype.partition_name = function() {
+ return this.getTypedRuleContext(Partition_nameContext,0);
+};
+
+List_partition_descContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+List_partition_descContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+List_partition_descContext.prototype.hash_subparts_by_quantity = function() {
+ return this.getTypedRuleContext(Hash_subparts_by_quantityContext,0);
+};
+
+List_partition_descContext.prototype.range_subpartition_desc = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Range_subpartition_descContext);
+ } else {
+ return this.getTypedRuleContext(Range_subpartition_descContext,i);
+ }
+};
+
+List_partition_descContext.prototype.list_subpartition_desc = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(List_subpartition_descContext);
+ } else {
+ return this.getTypedRuleContext(List_subpartition_descContext,i);
+ }
+};
+
+List_partition_descContext.prototype.individual_hash_subparts = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Individual_hash_subpartsContext);
+ } else {
+ return this.getTypedRuleContext(Individual_hash_subpartsContext,i);
+ }
+};
+
+List_partition_descContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+List_partition_descContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterList_partition_desc(this);
+ }
+};
+
+List_partition_descContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitList_partition_desc(this);
+ }
+};
+
+List_partition_descContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitList_partition_desc(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.List_partition_descContext = List_partition_descContext;
+
+PlSqlParser.prototype.list_partition_desc = function() {
+
+ var localctx = new List_partition_descContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 572, PlSqlParser.RULE_list_partition_desc);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 5965;
+ this.match(PlSqlParser.PARTITION);
+ this.state = 5967;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if((((_la) & ~0x1f) == 0 && ((1 << _la) & ((1 << PlSqlParser.ABORT) | (1 << PlSqlParser.ABS) | (1 << PlSqlParser.ACCESS) | (1 << PlSqlParser.ACCESSED) | (1 << PlSqlParser.ACCOUNT) | (1 << PlSqlParser.ACL) | (1 << PlSqlParser.ACOS) | (1 << PlSqlParser.ACTION) | (1 << PlSqlParser.ACTIONS) | (1 << PlSqlParser.ACTIVATE) | (1 << PlSqlParser.ACTIVE) | (1 << PlSqlParser.ACTIVE_COMPONENT) | (1 << PlSqlParser.ACTIVE_DATA) | (1 << PlSqlParser.ACTIVE_FUNCTION) | (1 << PlSqlParser.ACTIVE_TAG) | (1 << PlSqlParser.ACTIVITY) | (1 << PlSqlParser.ADAPTIVE_PLAN) | (1 << PlSqlParser.ADD) | (1 << PlSqlParser.ADD_COLUMN) | (1 << PlSqlParser.ADD_GROUP) | (1 << PlSqlParser.ADD_MONTHS) | (1 << PlSqlParser.ADJ_DATE) | (1 << PlSqlParser.ADMIN) | (1 << PlSqlParser.ADMINISTER) | (1 << PlSqlParser.ADMINISTRATOR) | (1 << PlSqlParser.ADVANCED) | (1 << PlSqlParser.ADVISE) | (1 << PlSqlParser.ADVISOR) | (1 << PlSqlParser.AFD_DISKSTRING) | (1 << PlSqlParser.AFTER) | (1 << PlSqlParser.AGENT))) !== 0) || ((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (PlSqlParser.AGGREGATE - 32)) | (1 << (PlSqlParser.A_LETTER - 32)) | (1 << (PlSqlParser.ALIAS - 32)) | (1 << (PlSqlParser.ALLOCATE - 32)) | (1 << (PlSqlParser.ALLOW - 32)) | (1 << (PlSqlParser.ALL_ROWS - 32)) | (1 << (PlSqlParser.ALWAYS - 32)) | (1 << (PlSqlParser.ANALYZE - 32)) | (1 << (PlSqlParser.ANCILLARY - 32)) | (1 << (PlSqlParser.AND_EQUAL - 32)) | (1 << (PlSqlParser.ANOMALY - 32)) | (1 << (PlSqlParser.ANSI_REARCH - 32)) | (1 << (PlSqlParser.ANTIJOIN - 32)) | (1 << (PlSqlParser.ANYSCHEMA - 32)) | (1 << (PlSqlParser.APPEND - 32)) | (1 << (PlSqlParser.APPENDCHILDXML - 32)) | (1 << (PlSqlParser.APPEND_VALUES - 32)) | (1 << (PlSqlParser.APPLICATION - 32)) | (1 << (PlSqlParser.APPLY - 32)) | (1 << (PlSqlParser.APPROX_COUNT_DISTINCT - 32)) | (1 << (PlSqlParser.ARCHIVAL - 32)) | (1 << (PlSqlParser.ARCHIVE - 32)) | (1 << (PlSqlParser.ARCHIVED - 32)) | (1 << (PlSqlParser.ARCHIVELOG - 32)) | (1 << (PlSqlParser.ARRAY - 32)) | (1 << (PlSqlParser.ASCII - 32)))) !== 0) || ((((_la - 64)) & ~0x1f) == 0 && ((1 << (_la - 64)) & ((1 << (PlSqlParser.ASCIISTR - 64)) | (1 << (PlSqlParser.ASIN - 64)) | (1 << (PlSqlParser.ASIS - 64)) | (1 << (PlSqlParser.ASSEMBLY - 64)) | (1 << (PlSqlParser.ASSIGN - 64)) | (1 << (PlSqlParser.ASSOCIATE - 64)) | (1 << (PlSqlParser.ASYNC - 64)) | (1 << (PlSqlParser.ASYNCHRONOUS - 64)) | (1 << (PlSqlParser.ATAN2 - 64)) | (1 << (PlSqlParser.ATAN - 64)) | (1 << (PlSqlParser.AT - 64)) | (1 << (PlSqlParser.ATTRIBUTE - 64)) | (1 << (PlSqlParser.ATTRIBUTES - 64)) | (1 << (PlSqlParser.AUTHENTICATED - 64)) | (1 << (PlSqlParser.AUTHENTICATION - 64)) | (1 << (PlSqlParser.AUTHID - 64)) | (1 << (PlSqlParser.AUTHORIZATION - 64)) | (1 << (PlSqlParser.AUTOALLOCATE - 64)) | (1 << (PlSqlParser.AUTO - 64)) | (1 << (PlSqlParser.AUTOEXTEND - 64)) | (1 << (PlSqlParser.AUTO_LOGIN - 64)) | (1 << (PlSqlParser.AUTOMATIC - 64)) | (1 << (PlSqlParser.AUTONOMOUS_TRANSACTION - 64)) | (1 << (PlSqlParser.AUTO_REOPTIMIZE - 64)) | (1 << (PlSqlParser.AVAILABILITY - 64)) | (1 << (PlSqlParser.AVRO - 64)) | (1 << (PlSqlParser.BACKGROUND - 64)) | (1 << (PlSqlParser.BACKUP - 64)) | (1 << (PlSqlParser.BASIC - 64)))) !== 0) || ((((_la - 96)) & ~0x1f) == 0 && ((1 << (_la - 96)) & ((1 << (PlSqlParser.BASICFILE - 96)) | (1 << (PlSqlParser.BATCH - 96)) | (1 << (PlSqlParser.BATCHSIZE - 96)) | (1 << (PlSqlParser.BATCH_TABLE_ACCESS_BY_ROWID - 96)) | (1 << (PlSqlParser.BECOME - 96)) | (1 << (PlSqlParser.BEFORE - 96)) | (1 << (PlSqlParser.BEGIN - 96)) | (1 << (PlSqlParser.BEGINNING - 96)) | (1 << (PlSqlParser.BEGIN_OUTLINE_DATA - 96)) | (1 << (PlSqlParser.BEHALF - 96)) | (1 << (PlSqlParser.BEQUEATH - 96)) | (1 << (PlSqlParser.BFILE - 96)) | (1 << (PlSqlParser.BFILENAME - 96)) | (1 << (PlSqlParser.BIGFILE - 96)) | (1 << (PlSqlParser.BINARY - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE_INFINITY - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE_NAN - 96)) | (1 << (PlSqlParser.BINARY_FLOAT - 96)) | (1 << (PlSqlParser.BINARY_FLOAT_INFINITY - 96)) | (1 << (PlSqlParser.BINARY_FLOAT_NAN - 96)) | (1 << (PlSqlParser.BINARY_INTEGER - 96)) | (1 << (PlSqlParser.BIND_AWARE - 96)) | (1 << (PlSqlParser.BINDING - 96)) | (1 << (PlSqlParser.BIN_TO_NUM - 96)) | (1 << (PlSqlParser.BITAND - 96)) | (1 << (PlSqlParser.BITMAP_AND - 96)) | (1 << (PlSqlParser.BITMAP - 96)) | (1 << (PlSqlParser.BITMAPS - 96)) | (1 << (PlSqlParser.BITMAP_TREE - 96)) | (1 << (PlSqlParser.BITS - 96)))) !== 0) || ((((_la - 128)) & ~0x1f) == 0 && ((1 << (_la - 128)) & ((1 << (PlSqlParser.BLOB - 128)) | (1 << (PlSqlParser.BLOCK - 128)) | (1 << (PlSqlParser.BLOCK_RANGE - 128)) | (1 << (PlSqlParser.BLOCKS - 128)) | (1 << (PlSqlParser.BLOCKSIZE - 128)) | (1 << (PlSqlParser.BODY - 128)) | (1 << (PlSqlParser.BOOLEAN - 128)) | (1 << (PlSqlParser.BOTH - 128)) | (1 << (PlSqlParser.BOUND - 128)) | (1 << (PlSqlParser.BRANCH - 128)) | (1 << (PlSqlParser.BREADTH - 128)) | (1 << (PlSqlParser.BROADCAST - 128)) | (1 << (PlSqlParser.BSON - 128)) | (1 << (PlSqlParser.BUFFER - 128)) | (1 << (PlSqlParser.BUFFER_CACHE - 128)) | (1 << (PlSqlParser.BUFFER_POOL - 128)) | (1 << (PlSqlParser.BUILD - 128)) | (1 << (PlSqlParser.BULK - 128)) | (1 << (PlSqlParser.BYPASS_RECURSIVE_CHECK - 128)) | (1 << (PlSqlParser.BYPASS_UJVC - 128)) | (1 << (PlSqlParser.BYTE - 128)) | (1 << (PlSqlParser.CACHE - 128)) | (1 << (PlSqlParser.CACHE_CB - 128)) | (1 << (PlSqlParser.CACHE_INSTANCES - 128)) | (1 << (PlSqlParser.CACHE_TEMP_TABLE - 128)) | (1 << (PlSqlParser.CACHING - 128)) | (1 << (PlSqlParser.CALCULATED - 128)) | (1 << (PlSqlParser.CALLBACK - 128)) | (1 << (PlSqlParser.CALL - 128)) | (1 << (PlSqlParser.CANCEL - 128)))) !== 0) || ((((_la - 160)) & ~0x1f) == 0 && ((1 << (_la - 160)) & ((1 << (PlSqlParser.CAPACITY - 160)) | (1 << (PlSqlParser.CARDINALITY - 160)) | (1 << (PlSqlParser.CASCADE - 160)) | (1 << (PlSqlParser.CASE - 160)) | (1 << (PlSqlParser.CAST - 160)) | (1 << (PlSqlParser.CATEGORY - 160)) | (1 << (PlSqlParser.CDBDEFAULT - 160)) | (1 << (PlSqlParser.CEIL - 160)) | (1 << (PlSqlParser.CELL_FLASH_CACHE - 160)) | (1 << (PlSqlParser.CERTIFICATE - 160)) | (1 << (PlSqlParser.CFILE - 160)) | (1 << (PlSqlParser.CHAINED - 160)) | (1 << (PlSqlParser.CHANGE - 160)) | (1 << (PlSqlParser.CHANGE_DUPKEY_ERROR_INDEX - 160)) | (1 << (PlSqlParser.CHARACTER - 160)) | (1 << (PlSqlParser.CHAR - 160)) | (1 << (PlSqlParser.CHAR_CS - 160)) | (1 << (PlSqlParser.CHARTOROWID - 160)) | (1 << (PlSqlParser.CHECK_ACL_REWRITE - 160)) | (1 << (PlSqlParser.CHECKPOINT - 160)) | (1 << (PlSqlParser.CHILD - 160)) | (1 << (PlSqlParser.CHOOSE - 160)) | (1 << (PlSqlParser.CHR - 160)) | (1 << (PlSqlParser.CHUNK - 160)) | (1 << (PlSqlParser.CLASS - 160)) | (1 << (PlSqlParser.CLASSIFIER - 160)) | (1 << (PlSqlParser.CLEANUP - 160)) | (1 << (PlSqlParser.CLEAR - 160)) | (1 << (PlSqlParser.C_LETTER - 160)) | (1 << (PlSqlParser.CLIENT - 160)))) !== 0) || ((((_la - 192)) & ~0x1f) == 0 && ((1 << (_la - 192)) & ((1 << (PlSqlParser.CLOB - 192)) | (1 << (PlSqlParser.CLONE - 192)) | (1 << (PlSqlParser.CLOSE_CACHED_OPEN_CURSORS - 192)) | (1 << (PlSqlParser.CLOSE - 192)) | (1 << (PlSqlParser.CLUSTER_BY_ROWID - 192)) | (1 << (PlSqlParser.CLUSTER - 192)) | (1 << (PlSqlParser.CLUSTER_DETAILS - 192)) | (1 << (PlSqlParser.CLUSTER_DISTANCE - 192)) | (1 << (PlSqlParser.CLUSTER_ID - 192)) | (1 << (PlSqlParser.CLUSTERING - 192)) | (1 << (PlSqlParser.CLUSTERING_FACTOR - 192)) | (1 << (PlSqlParser.CLUSTER_PROBABILITY - 192)) | (1 << (PlSqlParser.CLUSTER_SET - 192)) | (1 << (PlSqlParser.COALESCE - 192)) | (1 << (PlSqlParser.COALESCE_SQ - 192)) | (1 << (PlSqlParser.COARSE - 192)) | (1 << (PlSqlParser.CO_AUTH_IND - 192)) | (1 << (PlSqlParser.COLD - 192)) | (1 << (PlSqlParser.COLLECT - 192)) | (1 << (PlSqlParser.COLUMNAR - 192)) | (1 << (PlSqlParser.COLUMN_AUTH_INDICATOR - 192)) | (1 << (PlSqlParser.COLUMN - 192)) | (1 << (PlSqlParser.COLUMNS - 192)) | (1 << (PlSqlParser.COLUMN_STATS - 192)) | (1 << (PlSqlParser.COLUMN_VALUE - 192)) | (1 << (PlSqlParser.COMMENT - 192)) | (1 << (PlSqlParser.COMMIT - 192)) | (1 << (PlSqlParser.COMMITTED - 192)) | (1 << (PlSqlParser.COMMON_DATA - 192)) | (1 << (PlSqlParser.COMPACT - 192)) | (1 << (PlSqlParser.COMPATIBILITY - 192)) | (1 << (PlSqlParser.COMPILE - 192)))) !== 0) || ((((_la - 224)) & ~0x1f) == 0 && ((1 << (_la - 224)) & ((1 << (PlSqlParser.COMPLETE - 224)) | (1 << (PlSqlParser.COMPLIANCE - 224)) | (1 << (PlSqlParser.COMPONENT - 224)) | (1 << (PlSqlParser.COMPONENTS - 224)) | (1 << (PlSqlParser.COMPOSE - 224)) | (1 << (PlSqlParser.COMPOSITE - 224)) | (1 << (PlSqlParser.COMPOSITE_LIMIT - 224)) | (1 << (PlSqlParser.COMPOUND - 224)) | (1 << (PlSqlParser.COMPUTE - 224)) | (1 << (PlSqlParser.CONCAT - 224)) | (1 << (PlSqlParser.CON_DBID_TO_ID - 224)) | (1 << (PlSqlParser.CONDITIONAL - 224)) | (1 << (PlSqlParser.CONDITION - 224)) | (1 << (PlSqlParser.CONFIRM - 224)) | (1 << (PlSqlParser.CONFORMING - 224)) | (1 << (PlSqlParser.CON_GUID_TO_ID - 224)) | (1 << (PlSqlParser.CON_ID - 224)) | (1 << (PlSqlParser.CON_NAME_TO_ID - 224)) | (1 << (PlSqlParser.CONNECT_BY_CB_WHR_ONLY - 224)) | (1 << (PlSqlParser.CONNECT_BY_COMBINE_SW - 224)) | (1 << (PlSqlParser.CONNECT_BY_COST_BASED - 224)) | (1 << (PlSqlParser.CONNECT_BY_ELIM_DUPS - 224)) | (1 << (PlSqlParser.CONNECT_BY_FILTERING - 224)) | (1 << (PlSqlParser.CONNECT_BY_ISCYCLE - 224)) | (1 << (PlSqlParser.CONNECT_BY_ISLEAF - 224)) | (1 << (PlSqlParser.CONNECT_BY_ROOT - 224)) | (1 << (PlSqlParser.CONNECT_TIME - 224)) | (1 << (PlSqlParser.CONSIDER - 224)) | (1 << (PlSqlParser.CONSISTENT - 224)) | (1 << (PlSqlParser.CONSTANT - 224)))) !== 0) || ((((_la - 256)) & ~0x1f) == 0 && ((1 << (_la - 256)) & ((1 << (PlSqlParser.CONST - 256)) | (1 << (PlSqlParser.CONSTRAINT - 256)) | (1 << (PlSqlParser.CONSTRAINTS - 256)) | (1 << (PlSqlParser.CONSTRUCTOR - 256)) | (1 << (PlSqlParser.CONTAINER - 256)) | (1 << (PlSqlParser.CONTAINER_DATA - 256)) | (1 << (PlSqlParser.CONTAINERS - 256)) | (1 << (PlSqlParser.CONTENT - 256)) | (1 << (PlSqlParser.CONTENTS - 256)) | (1 << (PlSqlParser.CONTEXT - 256)) | (1 << (PlSqlParser.CONTINUE - 256)) | (1 << (PlSqlParser.CONTROLFILE - 256)) | (1 << (PlSqlParser.CON_UID_TO_ID - 256)) | (1 << (PlSqlParser.CONVERT - 256)) | (1 << (PlSqlParser.COOKIE - 256)) | (1 << (PlSqlParser.COPY - 256)) | (1 << (PlSqlParser.CORR_K - 256)) | (1 << (PlSqlParser.CORR_S - 256)) | (1 << (PlSqlParser.CORRUPTION - 256)) | (1 << (PlSqlParser.CORRUPT_XID_ALL - 256)) | (1 << (PlSqlParser.CORRUPT_XID - 256)) | (1 << (PlSqlParser.COS - 256)) | (1 << (PlSqlParser.COSH - 256)) | (1 << (PlSqlParser.COST - 256)) | (1 << (PlSqlParser.COST_XML_QUERY_REWRITE - 256)) | (1 << (PlSqlParser.COUNT - 256)) | (1 << (PlSqlParser.COVAR_POP - 256)) | (1 << (PlSqlParser.COVAR_SAMP - 256)) | (1 << (PlSqlParser.CPU_COSTING - 256)) | (1 << (PlSqlParser.CPU_PER_CALL - 256)) | (1 << (PlSqlParser.CPU_PER_SESSION - 256)) | (1 << (PlSqlParser.CRASH - 256)))) !== 0) || ((((_la - 289)) & ~0x1f) == 0 && ((1 << (_la - 289)) & ((1 << (PlSqlParser.CREATE_FILE_DEST - 289)) | (1 << (PlSqlParser.CREATE_STORED_OUTLINES - 289)) | (1 << (PlSqlParser.CREATION - 289)) | (1 << (PlSqlParser.CREDENTIAL - 289)) | (1 << (PlSqlParser.CRITICAL - 289)) | (1 << (PlSqlParser.CROSS - 289)) | (1 << (PlSqlParser.CROSSEDITION - 289)) | (1 << (PlSqlParser.CSCONVERT - 289)) | (1 << (PlSqlParser.CUBE_AJ - 289)) | (1 << (PlSqlParser.CUBE - 289)) | (1 << (PlSqlParser.CUBE_GB - 289)) | (1 << (PlSqlParser.CUBE_SJ - 289)) | (1 << (PlSqlParser.CUME_DISTM - 289)) | (1 << (PlSqlParser.CURRENT - 289)) | (1 << (PlSqlParser.CURRENT_DATE - 289)) | (1 << (PlSqlParser.CURRENT_SCHEMA - 289)) | (1 << (PlSqlParser.CURRENT_TIME - 289)) | (1 << (PlSqlParser.CURRENT_TIMESTAMP - 289)) | (1 << (PlSqlParser.CURRENT_USER - 289)) | (1 << (PlSqlParser.CURRENTV - 289)) | (1 << (PlSqlParser.CURSOR - 289)) | (1 << (PlSqlParser.CURSOR_SHARING_EXACT - 289)) | (1 << (PlSqlParser.CURSOR_SPECIFIC_SEGMENT - 289)) | (1 << (PlSqlParser.CUSTOMDATUM - 289)) | (1 << (PlSqlParser.CV - 289)) | (1 << (PlSqlParser.CYCLE - 289)) | (1 << (PlSqlParser.DANGLING - 289)) | (1 << (PlSqlParser.DATABASE - 289)) | (1 << (PlSqlParser.DATA - 289)) | (1 << (PlSqlParser.DATAFILE - 289)) | (1 << (PlSqlParser.DATAFILES - 289)))) !== 0) || ((((_la - 321)) & ~0x1f) == 0 && ((1 << (_la - 321)) & ((1 << (PlSqlParser.DATAMOVEMENT - 321)) | (1 << (PlSqlParser.DATAOBJNO - 321)) | (1 << (PlSqlParser.DATAOBJ_TO_MAT_PARTITION - 321)) | (1 << (PlSqlParser.DATAOBJ_TO_PARTITION - 321)) | (1 << (PlSqlParser.DATAPUMP - 321)) | (1 << (PlSqlParser.DATA_SECURITY_REWRITE_LIMIT - 321)) | (1 << (PlSqlParser.DATE_MODE - 321)) | (1 << (PlSqlParser.DAY - 321)) | (1 << (PlSqlParser.DAYS - 321)) | (1 << (PlSqlParser.DBA - 321)) | (1 << (PlSqlParser.DBA_RECYCLEBIN - 321)) | (1 << (PlSqlParser.DBMS_STATS - 321)) | (1 << (PlSqlParser.DB_ROLE_CHANGE - 321)) | (1 << (PlSqlParser.DBTIMEZONE - 321)) | (1 << (PlSqlParser.DB_UNIQUE_NAME - 321)) | (1 << (PlSqlParser.DB_VERSION - 321)) | (1 << (PlSqlParser.DDL - 321)) | (1 << (PlSqlParser.DEALLOCATE - 321)) | (1 << (PlSqlParser.DEBUG - 321)) | (1 << (PlSqlParser.DEBUGGER - 321)) | (1 << (PlSqlParser.DEC - 321)) | (1 << (PlSqlParser.DECIMAL - 321)) | (1 << (PlSqlParser.DECLARE - 321)) | (1 << (PlSqlParser.DECOMPOSE - 321)) | (1 << (PlSqlParser.DECORRELATE - 321)) | (1 << (PlSqlParser.DECR - 321)) | (1 << (PlSqlParser.DECREMENT - 321)) | (1 << (PlSqlParser.DECRYPT - 321)) | (1 << (PlSqlParser.DEDUPLICATE - 321)) | (1 << (PlSqlParser.DEFAULTS - 321)))) !== 0) || ((((_la - 353)) & ~0x1f) == 0 && ((1 << (_la - 353)) & ((1 << (PlSqlParser.DEFERRABLE - 353)) | (1 << (PlSqlParser.DEFERRED - 353)) | (1 << (PlSqlParser.DEFINED - 353)) | (1 << (PlSqlParser.DEFINE - 353)) | (1 << (PlSqlParser.DEFINER - 353)) | (1 << (PlSqlParser.DEGREE - 353)) | (1 << (PlSqlParser.DELAY - 353)) | (1 << (PlSqlParser.DELEGATE - 353)) | (1 << (PlSqlParser.DELETE_ALL - 353)) | (1 << (PlSqlParser.DELETE - 353)) | (1 << (PlSqlParser.DELETEXML - 353)) | (1 << (PlSqlParser.DEMAND - 353)) | (1 << (PlSqlParser.DENSE_RANKM - 353)) | (1 << (PlSqlParser.DEPENDENT - 353)) | (1 << (PlSqlParser.DEPTH - 353)) | (1 << (PlSqlParser.DEQUEUE - 353)) | (1 << (PlSqlParser.DEREF - 353)) | (1 << (PlSqlParser.DEREF_NO_REWRITE - 353)) | (1 << (PlSqlParser.DESTROY - 353)) | (1 << (PlSqlParser.DETACHED - 353)) | (1 << (PlSqlParser.DETERMINES - 353)) | (1 << (PlSqlParser.DETERMINISTIC - 353)) | (1 << (PlSqlParser.DICTIONARY - 353)) | (1 << (PlSqlParser.DIMENSION - 353)) | (1 << (PlSqlParser.DIMENSIONS - 353)) | (1 << (PlSqlParser.DIRECT_LOAD - 353)) | (1 << (PlSqlParser.DIRECTORY - 353)) | (1 << (PlSqlParser.DIRECT_PATH - 353)) | (1 << (PlSqlParser.DISABLE_ALL - 353)) | (1 << (PlSqlParser.DISABLE - 353)) | (1 << (PlSqlParser.DISABLE_PARALLEL_DML - 353)))) !== 0) || ((((_la - 385)) & ~0x1f) == 0 && ((1 << (_la - 385)) & ((1 << (PlSqlParser.DISABLE_PRESET - 385)) | (1 << (PlSqlParser.DISABLE_RPKE - 385)) | (1 << (PlSqlParser.DISALLOW - 385)) | (1 << (PlSqlParser.DISASSOCIATE - 385)) | (1 << (PlSqlParser.DISCARD - 385)) | (1 << (PlSqlParser.DISCONNECT - 385)) | (1 << (PlSqlParser.DISK - 385)) | (1 << (PlSqlParser.DISKGROUP - 385)) | (1 << (PlSqlParser.DISKS - 385)) | (1 << (PlSqlParser.DISMOUNT - 385)) | (1 << (PlSqlParser.DISTINGUISHED - 385)) | (1 << (PlSqlParser.DISTRIBUTED - 385)) | (1 << (PlSqlParser.DISTRIBUTE - 385)) | (1 << (PlSqlParser.DML - 385)) | (1 << (PlSqlParser.DML_UPDATE - 385)) | (1 << (PlSqlParser.DOCFIDELITY - 385)) | (1 << (PlSqlParser.DOCUMENT - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_FILTER - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_NO_SORT - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_SORT - 385)) | (1 << (PlSqlParser.DOUBLE - 385)) | (1 << (PlSqlParser.DOWNGRADE - 385)) | (1 << (PlSqlParser.DRIVING_SITE - 385)) | (1 << (PlSqlParser.DROP_COLUMN - 385)) | (1 << (PlSqlParser.DROP_GROUP - 385)) | (1 << (PlSqlParser.DSINTERVAL_UNCONSTRAINED - 385)) | (1 << (PlSqlParser.DST_UPGRADE_INSERT_CONV - 385)) | (1 << (PlSqlParser.DUMP - 385)))) !== 0) || ((((_la - 417)) & ~0x1f) == 0 && ((1 << (_la - 417)) & ((1 << (PlSqlParser.DUPLICATE - 417)) | (1 << (PlSqlParser.DV - 417)) | (1 << (PlSqlParser.DYNAMIC - 417)) | (1 << (PlSqlParser.DYNAMIC_SAMPLING - 417)) | (1 << (PlSqlParser.DYNAMIC_SAMPLING_EST_CDN - 417)) | (1 << (PlSqlParser.EACH - 417)) | (1 << (PlSqlParser.EDITIONABLE - 417)) | (1 << (PlSqlParser.EDITION - 417)) | (1 << (PlSqlParser.EDITIONING - 417)) | (1 << (PlSqlParser.EDITIONS - 417)) | (1 << (PlSqlParser.ELEMENT - 417)) | (1 << (PlSqlParser.ELIM_GROUPBY - 417)) | (1 << (PlSqlParser.ELIMINATE_JOIN - 417)) | (1 << (PlSqlParser.ELIMINATE_OBY - 417)) | (1 << (PlSqlParser.ELIMINATE_OUTER_JOIN - 417)) | (1 << (PlSqlParser.EM - 417)) | (1 << (PlSqlParser.EMPTY_BLOB - 417)) | (1 << (PlSqlParser.EMPTY_CLOB - 417)) | (1 << (PlSqlParser.EMPTY - 417)) | (1 << (PlSqlParser.ENABLE_ALL - 417)) | (1 << (PlSqlParser.ENABLE - 417)) | (1 << (PlSqlParser.ENABLE_PARALLEL_DML - 417)) | (1 << (PlSqlParser.ENABLE_PRESET - 417)) | (1 << (PlSqlParser.ENCODING - 417)) | (1 << (PlSqlParser.ENCRYPT - 417)) | (1 << (PlSqlParser.ENCRYPTION - 417)) | (1 << (PlSqlParser.END_OUTLINE_DATA - 417)) | (1 << (PlSqlParser.ENFORCED - 417)) | (1 << (PlSqlParser.ENFORCE - 417)))) !== 0) || ((((_la - 449)) & ~0x1f) == 0 && ((1 << (_la - 449)) & ((1 << (PlSqlParser.ENQUEUE - 449)) | (1 << (PlSqlParser.ENTERPRISE - 449)) | (1 << (PlSqlParser.ENTITYESCAPING - 449)) | (1 << (PlSqlParser.ENTRY - 449)) | (1 << (PlSqlParser.EQUIPART - 449)) | (1 << (PlSqlParser.ERR - 449)) | (1 << (PlSqlParser.ERROR_ARGUMENT - 449)) | (1 << (PlSqlParser.ERROR - 449)) | (1 << (PlSqlParser.ERROR_ON_OVERLAP_TIME - 449)) | (1 << (PlSqlParser.ERRORS - 449)) | (1 << (PlSqlParser.ESCAPE - 449)) | (1 << (PlSqlParser.ESTIMATE - 449)) | (1 << (PlSqlParser.EVAL - 449)) | (1 << (PlSqlParser.EVALNAME - 449)) | (1 << (PlSqlParser.EVALUATE - 449)) | (1 << (PlSqlParser.EVALUATION - 449)) | (1 << (PlSqlParser.EVENTS - 449)) | (1 << (PlSqlParser.EVERY - 449)) | (1 << (PlSqlParser.EXCEPT - 449)) | (1 << (PlSqlParser.EXCEPTION - 449)) | (1 << (PlSqlParser.EXCEPTION_INIT - 449)) | (1 << (PlSqlParser.EXCEPTIONS - 449)) | (1 << (PlSqlParser.EXCHANGE - 449)) | (1 << (PlSqlParser.EXCLUDE - 449)) | (1 << (PlSqlParser.EXCLUDING - 449)) | (1 << (PlSqlParser.EXECUTE - 449)) | (1 << (PlSqlParser.EXEMPT - 449)) | (1 << (PlSqlParser.EXISTING - 449)) | (1 << (PlSqlParser.EXISTS - 449)) | (1 << (PlSqlParser.EXISTSNODE - 449)) | (1 << (PlSqlParser.EXIT - 449)))) !== 0) || ((((_la - 481)) & ~0x1f) == 0 && ((1 << (_la - 481)) & ((1 << (PlSqlParser.EXPAND_GSET_TO_UNION - 481)) | (1 << (PlSqlParser.EXPAND_TABLE - 481)) | (1 << (PlSqlParser.EXP - 481)) | (1 << (PlSqlParser.EXPIRE - 481)) | (1 << (PlSqlParser.EXPLAIN - 481)) | (1 << (PlSqlParser.EXPLOSION - 481)) | (1 << (PlSqlParser.EXPORT - 481)) | (1 << (PlSqlParser.EXPR_CORR_CHECK - 481)) | (1 << (PlSqlParser.EXPRESS - 481)) | (1 << (PlSqlParser.EXTENDS - 481)) | (1 << (PlSqlParser.EXTENT - 481)) | (1 << (PlSqlParser.EXTENTS - 481)) | (1 << (PlSqlParser.EXTERNAL - 481)) | (1 << (PlSqlParser.EXTERNALLY - 481)) | (1 << (PlSqlParser.EXTRACTCLOBXML - 481)) | (1 << (PlSqlParser.EXTRACT - 481)) | (1 << (PlSqlParser.EXTRACTVALUE - 481)) | (1 << (PlSqlParser.EXTRA - 481)) | (1 << (PlSqlParser.FACILITY - 481)) | (1 << (PlSqlParser.FACT - 481)) | (1 << (PlSqlParser.FACTOR - 481)) | (1 << (PlSqlParser.FACTORIZE_JOIN - 481)) | (1 << (PlSqlParser.FAILED - 481)) | (1 << (PlSqlParser.FAILED_LOGIN_ATTEMPTS - 481)) | (1 << (PlSqlParser.FAILGROUP - 481)) | (1 << (PlSqlParser.FAILOVER - 481)) | (1 << (PlSqlParser.FAILURE - 481)) | (1 << (PlSqlParser.FALSE - 481)) | (1 << (PlSqlParser.FAMILY - 481)) | (1 << (PlSqlParser.FAR - 481)) | (1 << (PlSqlParser.FAST - 481)) | (1 << (PlSqlParser.FASTSTART - 481)))) !== 0) || ((((_la - 513)) & ~0x1f) == 0 && ((1 << (_la - 513)) & ((1 << (PlSqlParser.FBTSCAN - 513)) | (1 << (PlSqlParser.FEATURE_DETAILS - 513)) | (1 << (PlSqlParser.FEATURE_ID - 513)) | (1 << (PlSqlParser.FEATURE_SET - 513)) | (1 << (PlSqlParser.FEATURE_VALUE - 513)) | (1 << (PlSqlParser.FETCH - 513)) | (1 << (PlSqlParser.FILE - 513)) | (1 << (PlSqlParser.FILE_NAME_CONVERT - 513)) | (1 << (PlSqlParser.FILESYSTEM_LIKE_LOGGING - 513)) | (1 << (PlSqlParser.FILTER - 513)) | (1 << (PlSqlParser.FINAL - 513)) | (1 << (PlSqlParser.FINE - 513)) | (1 << (PlSqlParser.FINISH - 513)) | (1 << (PlSqlParser.FIRST - 513)) | (1 << (PlSqlParser.FIRSTM - 513)) | (1 << (PlSqlParser.FIRST_ROWS - 513)) | (1 << (PlSqlParser.FIRST_VALUE - 513)) | (1 << (PlSqlParser.FIXED_VIEW_DATA - 513)) | (1 << (PlSqlParser.FLAGGER - 513)) | (1 << (PlSqlParser.FLASHBACK - 513)) | (1 << (PlSqlParser.FLASH_CACHE - 513)) | (1 << (PlSqlParser.FLOAT - 513)) | (1 << (PlSqlParser.FLOB - 513)) | (1 << (PlSqlParser.FLOOR - 513)) | (1 << (PlSqlParser.FLUSH - 513)) | (1 << (PlSqlParser.FOLDER - 513)) | (1 << (PlSqlParser.FOLLOWING - 513)) | (1 << (PlSqlParser.FOLLOWS - 513)) | (1 << (PlSqlParser.FORALL - 513)) | (1 << (PlSqlParser.FORCE - 513)) | (1 << (PlSqlParser.FORCE_XML_QUERY_REWRITE - 513)) | (1 << (PlSqlParser.FOREIGN - 513)))) !== 0) || ((((_la - 545)) & ~0x1f) == 0 && ((1 << (_la - 545)) & ((1 << (PlSqlParser.FOREVER - 545)) | (1 << (PlSqlParser.FORMAT - 545)) | (1 << (PlSqlParser.FORWARD - 545)) | (1 << (PlSqlParser.FRAGMENT_NUMBER - 545)) | (1 << (PlSqlParser.FREELIST - 545)) | (1 << (PlSqlParser.FREELISTS - 545)) | (1 << (PlSqlParser.FREEPOOLS - 545)) | (1 << (PlSqlParser.FRESH - 545)) | (1 << (PlSqlParser.FROM_TZ - 545)) | (1 << (PlSqlParser.FULL - 545)) | (1 << (PlSqlParser.FULL_OUTER_JOIN_TO_OUTER - 545)) | (1 << (PlSqlParser.FUNCTION - 545)) | (1 << (PlSqlParser.FUNCTIONS - 545)) | (1 << (PlSqlParser.GATHER_OPTIMIZER_STATISTICS - 545)) | (1 << (PlSqlParser.GATHER_PLAN_STATISTICS - 545)) | (1 << (PlSqlParser.GBY_CONC_ROLLUP - 545)) | (1 << (PlSqlParser.GBY_PUSHDOWN - 545)) | (1 << (PlSqlParser.GENERATED - 545)) | (1 << (PlSqlParser.GET - 545)) | (1 << (PlSqlParser.GLOBAL - 545)) | (1 << (PlSqlParser.GLOBALLY - 545)) | (1 << (PlSqlParser.GLOBAL_NAME - 545)) | (1 << (PlSqlParser.GLOBAL_TOPIC_ENABLED - 545)) | (1 << (PlSqlParser.GROUP_BY - 545)) | (1 << (PlSqlParser.GROUP_ID - 545)) | (1 << (PlSqlParser.GROUPING - 545)) | (1 << (PlSqlParser.GROUPING_ID - 545)))) !== 0) || ((((_la - 577)) & ~0x1f) == 0 && ((1 << (_la - 577)) & ((1 << (PlSqlParser.GROUPS - 577)) | (1 << (PlSqlParser.GUARANTEED - 577)) | (1 << (PlSqlParser.GUARANTEE - 577)) | (1 << (PlSqlParser.GUARD - 577)) | (1 << (PlSqlParser.HASH_AJ - 577)) | (1 << (PlSqlParser.HASH - 577)) | (1 << (PlSqlParser.HASHKEYS - 577)) | (1 << (PlSqlParser.HASH_SJ - 577)) | (1 << (PlSqlParser.HEADER - 577)) | (1 << (PlSqlParser.HEAP - 577)) | (1 << (PlSqlParser.HELP - 577)) | (1 << (PlSqlParser.HEXTORAW - 577)) | (1 << (PlSqlParser.HEXTOREF - 577)) | (1 << (PlSqlParser.HIDDEN_KEYWORD - 577)) | (1 << (PlSqlParser.HIDE - 577)) | (1 << (PlSqlParser.HIERARCHY - 577)) | (1 << (PlSqlParser.HIGH - 577)) | (1 << (PlSqlParser.HINTSET_BEGIN - 577)) | (1 << (PlSqlParser.HINTSET_END - 577)) | (1 << (PlSqlParser.HOT - 577)) | (1 << (PlSqlParser.HOUR - 577)) | (1 << (PlSqlParser.HWM_BROKERED - 577)) | (1 << (PlSqlParser.HYBRID - 577)) | (1 << (PlSqlParser.IDENTIFIER - 577)) | (1 << (PlSqlParser.IDENTITY - 577)) | (1 << (PlSqlParser.IDGENERATORS - 577)) | (1 << (PlSqlParser.ID - 577)) | (1 << (PlSqlParser.IDLE_TIME - 577)) | (1 << (PlSqlParser.IF - 577)) | (1 << (PlSqlParser.IGNORE - 577)))) !== 0) || ((((_la - 609)) & ~0x1f) == 0 && ((1 << (_la - 609)) & ((1 << (PlSqlParser.IGNORE_OPTIM_EMBEDDED_HINTS - 609)) | (1 << (PlSqlParser.IGNORE_ROW_ON_DUPKEY_INDEX - 609)) | (1 << (PlSqlParser.IGNORE_WHERE_CLAUSE - 609)) | (1 << (PlSqlParser.ILM - 609)) | (1 << (PlSqlParser.IMMEDIATE - 609)) | (1 << (PlSqlParser.IMPACT - 609)) | (1 << (PlSqlParser.IMPORT - 609)) | (1 << (PlSqlParser.INACTIVE - 609)) | (1 << (PlSqlParser.INCLUDE - 609)) | (1 << (PlSqlParser.INCLUDE_VERSION - 609)) | (1 << (PlSqlParser.INCLUDING - 609)) | (1 << (PlSqlParser.INCREMENTAL - 609)) | (1 << (PlSqlParser.INCREMENT - 609)) | (1 << (PlSqlParser.INCR - 609)) | (1 << (PlSqlParser.INDENT - 609)) | (1 << (PlSqlParser.INDEX_ASC - 609)) | (1 << (PlSqlParser.INDEX_COMBINE - 609)) | (1 << (PlSqlParser.INDEX_DESC - 609)) | (1 << (PlSqlParser.INDEXED - 609)) | (1 << (PlSqlParser.INDEXES - 609)) | (1 << (PlSqlParser.INDEX_FFS - 609)) | (1 << (PlSqlParser.INDEX_FILTER - 609)) | (1 << (PlSqlParser.INDEXING - 609)) | (1 << (PlSqlParser.INDEX_JOIN - 609)) | (1 << (PlSqlParser.INDEX_ROWS - 609)) | (1 << (PlSqlParser.INDEX_RRS - 609)) | (1 << (PlSqlParser.INDEX_RS_ASC - 609)) | (1 << (PlSqlParser.INDEX_RS_DESC - 609)) | (1 << (PlSqlParser.INDEX_RS - 609)) | (1 << (PlSqlParser.INDEX_SCAN - 609)) | (1 << (PlSqlParser.INDEX_SKIP_SCAN - 609)))) !== 0) || ((((_la - 641)) & ~0x1f) == 0 && ((1 << (_la - 641)) & ((1 << (PlSqlParser.INDEX_SS_ASC - 641)) | (1 << (PlSqlParser.INDEX_SS_DESC - 641)) | (1 << (PlSqlParser.INDEX_SS - 641)) | (1 << (PlSqlParser.INDEX_STATS - 641)) | (1 << (PlSqlParser.INDEXTYPE - 641)) | (1 << (PlSqlParser.INDEXTYPES - 641)) | (1 << (PlSqlParser.INDICATOR - 641)) | (1 << (PlSqlParser.INDICES - 641)) | (1 << (PlSqlParser.INFINITE - 641)) | (1 << (PlSqlParser.INFORMATIONAL - 641)) | (1 << (PlSqlParser.INHERIT - 641)) | (1 << (PlSqlParser.INITCAP - 641)) | (1 << (PlSqlParser.INITIAL - 641)) | (1 << (PlSqlParser.INITIALIZED - 641)) | (1 << (PlSqlParser.INITIALLY - 641)) | (1 << (PlSqlParser.INITRANS - 641)) | (1 << (PlSqlParser.INLINE - 641)) | (1 << (PlSqlParser.INLINE_XMLTYPE_NT - 641)) | (1 << (PlSqlParser.INMEMORY - 641)) | (1 << (PlSqlParser.IN_MEMORY_METADATA - 641)) | (1 << (PlSqlParser.INMEMORY_PRUNING - 641)) | (1 << (PlSqlParser.INNER - 641)) | (1 << (PlSqlParser.INOUT - 641)) | (1 << (PlSqlParser.INPLACE - 641)) | (1 << (PlSqlParser.INSERTCHILDXMLAFTER - 641)) | (1 << (PlSqlParser.INSERTCHILDXMLBEFORE - 641)) | (1 << (PlSqlParser.INSERTCHILDXML - 641)) | (1 << (PlSqlParser.INSERTXMLAFTER - 641)) | (1 << (PlSqlParser.INSERTXMLBEFORE - 641)) | (1 << (PlSqlParser.INSTANCE - 641)))) !== 0) || ((((_la - 673)) & ~0x1f) == 0 && ((1 << (_la - 673)) & ((1 << (PlSqlParser.INSTANCES - 673)) | (1 << (PlSqlParser.INSTANTIABLE - 673)) | (1 << (PlSqlParser.INSTANTLY - 673)) | (1 << (PlSqlParser.INSTEAD - 673)) | (1 << (PlSqlParser.INSTR2 - 673)) | (1 << (PlSqlParser.INSTR4 - 673)) | (1 << (PlSqlParser.INSTRB - 673)) | (1 << (PlSqlParser.INSTRC - 673)) | (1 << (PlSqlParser.INSTR - 673)) | (1 << (PlSqlParser.INTEGER - 673)) | (1 << (PlSqlParser.INTERLEAVED - 673)) | (1 << (PlSqlParser.INTERMEDIATE - 673)) | (1 << (PlSqlParser.INTERNAL_CONVERT - 673)) | (1 << (PlSqlParser.INTERNAL_USE - 673)) | (1 << (PlSqlParser.INTERPRETED - 673)) | (1 << (PlSqlParser.INTERVAL - 673)) | (1 << (PlSqlParser.INT - 673)) | (1 << (PlSqlParser.INVALIDATE - 673)) | (1 << (PlSqlParser.INVISIBLE - 673)) | (1 << (PlSqlParser.IN_XQUERY - 673)) | (1 << (PlSqlParser.ISOLATION - 673)) | (1 << (PlSqlParser.ISOLATION_LEVEL - 673)) | (1 << (PlSqlParser.ITERATE - 673)) | (1 << (PlSqlParser.ITERATION_NUMBER - 673)) | (1 << (PlSqlParser.JAVA - 673)) | (1 << (PlSqlParser.JOB - 673)) | (1 << (PlSqlParser.JOIN - 673)) | (1 << (PlSqlParser.JSON_ARRAYAGG - 673)) | (1 << (PlSqlParser.JSON_ARRAY - 673)))) !== 0) || ((((_la - 705)) & ~0x1f) == 0 && ((1 << (_la - 705)) & ((1 << (PlSqlParser.JSON_EQUAL - 705)) | (1 << (PlSqlParser.JSON_EXISTS2 - 705)) | (1 << (PlSqlParser.JSON_EXISTS - 705)) | (1 << (PlSqlParser.JSONGET - 705)) | (1 << (PlSqlParser.JSON - 705)) | (1 << (PlSqlParser.JSON_OBJECTAGG - 705)) | (1 << (PlSqlParser.JSON_OBJECT - 705)) | (1 << (PlSqlParser.JSONPARSE - 705)) | (1 << (PlSqlParser.JSON_QUERY - 705)) | (1 << (PlSqlParser.JSON_SERIALIZE - 705)) | (1 << (PlSqlParser.JSON_TABLE - 705)) | (1 << (PlSqlParser.JSON_TEXTCONTAINS2 - 705)) | (1 << (PlSqlParser.JSON_TEXTCONTAINS - 705)) | (1 << (PlSqlParser.JSON_VALUE - 705)) | (1 << (PlSqlParser.KEEP_DUPLICATES - 705)) | (1 << (PlSqlParser.KEEP - 705)) | (1 << (PlSqlParser.KERBEROS - 705)) | (1 << (PlSqlParser.KEY - 705)) | (1 << (PlSqlParser.KEY_LENGTH - 705)) | (1 << (PlSqlParser.KEYSIZE - 705)) | (1 << (PlSqlParser.KEYS - 705)) | (1 << (PlSqlParser.KEYSTORE - 705)) | (1 << (PlSqlParser.KILL - 705)) | (1 << (PlSqlParser.LABEL - 705)) | (1 << (PlSqlParser.LANGUAGE - 705)) | (1 << (PlSqlParser.LAST_DAY - 705)) | (1 << (PlSqlParser.LAST - 705)) | (1 << (PlSqlParser.LAST_VALUE - 705)) | (1 << (PlSqlParser.LATERAL - 705)) | (1 << (PlSqlParser.LAX - 705)) | (1 << (PlSqlParser.LAYER - 705)) | (1 << (PlSqlParser.LDAP_REGISTRATION_ENABLED - 705)))) !== 0) || ((((_la - 737)) & ~0x1f) == 0 && ((1 << (_la - 737)) & ((1 << (PlSqlParser.LDAP_REGISTRATION - 737)) | (1 << (PlSqlParser.LDAP_REG_SYNC_INTERVAL - 737)) | (1 << (PlSqlParser.LEADING - 737)) | (1 << (PlSqlParser.LEFT - 737)) | (1 << (PlSqlParser.LENGTH2 - 737)) | (1 << (PlSqlParser.LENGTH4 - 737)) | (1 << (PlSqlParser.LENGTHB - 737)) | (1 << (PlSqlParser.LENGTHC - 737)) | (1 << (PlSqlParser.LENGTH - 737)) | (1 << (PlSqlParser.LESS - 737)) | (1 << (PlSqlParser.LEVEL - 737)) | (1 << (PlSqlParser.LEVELS - 737)) | (1 << (PlSqlParser.LIBRARY - 737)) | (1 << (PlSqlParser.LIFECYCLE - 737)) | (1 << (PlSqlParser.LIFE - 737)) | (1 << (PlSqlParser.LIFETIME - 737)) | (1 << (PlSqlParser.LIKE2 - 737)) | (1 << (PlSqlParser.LIKE4 - 737)) | (1 << (PlSqlParser.LIKEC - 737)) | (1 << (PlSqlParser.LIKE_EXPAND - 737)) | (1 << (PlSqlParser.LIMIT - 737)) | (1 << (PlSqlParser.LINEAR - 737)) | (1 << (PlSqlParser.LINK - 737)) | (1 << (PlSqlParser.LIST - 737)) | (1 << (PlSqlParser.LN - 737)) | (1 << (PlSqlParser.LNNVL - 737)) | (1 << (PlSqlParser.LOAD - 737)) | (1 << (PlSqlParser.LOB - 737)) | (1 << (PlSqlParser.LOBNVL - 737)) | (1 << (PlSqlParser.LOBS - 737)) | (1 << (PlSqlParser.LOCAL_INDEXES - 737)))) !== 0) || ((((_la - 769)) & ~0x1f) == 0 && ((1 << (_la - 769)) & ((1 << (PlSqlParser.LOCAL - 769)) | (1 << (PlSqlParser.LOCALTIME - 769)) | (1 << (PlSqlParser.LOCALTIMESTAMP - 769)) | (1 << (PlSqlParser.LOCATION - 769)) | (1 << (PlSqlParser.LOCATOR - 769)) | (1 << (PlSqlParser.LOCKED - 769)) | (1 << (PlSqlParser.LOCKING - 769)) | (1 << (PlSqlParser.LOGFILE - 769)) | (1 << (PlSqlParser.LOGFILES - 769)) | (1 << (PlSqlParser.LOGGING - 769)) | (1 << (PlSqlParser.LOGICAL - 769)) | (1 << (PlSqlParser.LOGICAL_READS_PER_CALL - 769)) | (1 << (PlSqlParser.LOGICAL_READS_PER_SESSION - 769)) | (1 << (PlSqlParser.LOG - 769)) | (1 << (PlSqlParser.LOGMINING - 769)) | (1 << (PlSqlParser.LOGOFF - 769)) | (1 << (PlSqlParser.LOGON - 769)) | (1 << (PlSqlParser.LOG_READ_ONLY_VIOLATIONS - 769)) | (1 << (PlSqlParser.LONG - 769)) | (1 << (PlSqlParser.LOOP - 769)) | (1 << (PlSqlParser.LOWER - 769)) | (1 << (PlSqlParser.LOW - 769)) | (1 << (PlSqlParser.LPAD - 769)) | (1 << (PlSqlParser.LTRIM - 769)) | (1 << (PlSqlParser.MAIN - 769)) | (1 << (PlSqlParser.MAKE_REF - 769)) | (1 << (PlSqlParser.MANAGED - 769)) | (1 << (PlSqlParser.MANAGE - 769)) | (1 << (PlSqlParser.MANAGEMENT - 769)) | (1 << (PlSqlParser.MANAGER - 769)) | (1 << (PlSqlParser.MANUAL - 769)))) !== 0) || ((((_la - 801)) & ~0x1f) == 0 && ((1 << (_la - 801)) & ((1 << (PlSqlParser.MAP - 801)) | (1 << (PlSqlParser.MAPPING - 801)) | (1 << (PlSqlParser.MASTER - 801)) | (1 << (PlSqlParser.MATCHED - 801)) | (1 << (PlSqlParser.MATCHES - 801)) | (1 << (PlSqlParser.MATCH - 801)) | (1 << (PlSqlParser.MATCH_NUMBER - 801)) | (1 << (PlSqlParser.MATCH_RECOGNIZE - 801)) | (1 << (PlSqlParser.MATERIALIZED - 801)) | (1 << (PlSqlParser.MATERIALIZE - 801)) | (1 << (PlSqlParser.MAXARCHLOGS - 801)) | (1 << (PlSqlParser.MAXDATAFILES - 801)) | (1 << (PlSqlParser.MAXEXTENTS - 801)) | (1 << (PlSqlParser.MAXIMIZE - 801)) | (1 << (PlSqlParser.MAXINSTANCES - 801)) | (1 << (PlSqlParser.MAXLOGFILES - 801)) | (1 << (PlSqlParser.MAXLOGHISTORY - 801)) | (1 << (PlSqlParser.MAXLOGMEMBERS - 801)) | (1 << (PlSqlParser.MAX_SHARED_TEMP_SIZE - 801)) | (1 << (PlSqlParser.MAXSIZE - 801)) | (1 << (PlSqlParser.MAXTRANS - 801)) | (1 << (PlSqlParser.MAXVALUE - 801)) | (1 << (PlSqlParser.MEASURE - 801)) | (1 << (PlSqlParser.MEASURES - 801)) | (1 << (PlSqlParser.MEDIUM - 801)) | (1 << (PlSqlParser.MEMBER - 801)) | (1 << (PlSqlParser.MEMCOMPRESS - 801)) | (1 << (PlSqlParser.MEMORY - 801)) | (1 << (PlSqlParser.MERGEACTIONS - 801)) | (1 << (PlSqlParser.MERGE_AJ - 801)) | (1 << (PlSqlParser.MERGE_CONST_ON - 801)) | (1 << (PlSqlParser.MERGE - 801)))) !== 0) || ((((_la - 833)) & ~0x1f) == 0 && ((1 << (_la - 833)) & ((1 << (PlSqlParser.MERGE_SJ - 833)) | (1 << (PlSqlParser.METADATA - 833)) | (1 << (PlSqlParser.METHOD - 833)) | (1 << (PlSqlParser.MIGRATE - 833)) | (1 << (PlSqlParser.MIGRATION - 833)) | (1 << (PlSqlParser.MINEXTENTS - 833)) | (1 << (PlSqlParser.MINIMIZE - 833)) | (1 << (PlSqlParser.MINIMUM - 833)) | (1 << (PlSqlParser.MINING - 833)) | (1 << (PlSqlParser.MINUS_NULL - 833)) | (1 << (PlSqlParser.MINUTE - 833)) | (1 << (PlSqlParser.MINVALUE - 833)) | (1 << (PlSqlParser.MIRRORCOLD - 833)) | (1 << (PlSqlParser.MIRRORHOT - 833)) | (1 << (PlSqlParser.MIRROR - 833)) | (1 << (PlSqlParser.MLSLABEL - 833)) | (1 << (PlSqlParser.MODEL_COMPILE_SUBQUERY - 833)) | (1 << (PlSqlParser.MODEL_DONTVERIFY_UNIQUENESS - 833)) | (1 << (PlSqlParser.MODEL_DYNAMIC_SUBQUERY - 833)) | (1 << (PlSqlParser.MODEL_MIN_ANALYSIS - 833)) | (1 << (PlSqlParser.MODEL - 833)) | (1 << (PlSqlParser.MODEL_NB - 833)) | (1 << (PlSqlParser.MODEL_NO_ANALYSIS - 833)) | (1 << (PlSqlParser.MODEL_PBY - 833)) | (1 << (PlSqlParser.MODEL_PUSH_REF - 833)) | (1 << (PlSqlParser.MODEL_SV - 833)) | (1 << (PlSqlParser.MODIFICATION - 833)) | (1 << (PlSqlParser.MODIFY_COLUMN_TYPE - 833)) | (1 << (PlSqlParser.MODIFY - 833)) | (1 << (PlSqlParser.MOD - 833)))) !== 0) || ((((_la - 865)) & ~0x1f) == 0 && ((1 << (_la - 865)) & ((1 << (PlSqlParser.MODULE - 865)) | (1 << (PlSqlParser.MONITORING - 865)) | (1 << (PlSqlParser.MONITOR - 865)) | (1 << (PlSqlParser.MONTH - 865)) | (1 << (PlSqlParser.MONTHS_BETWEEN - 865)) | (1 << (PlSqlParser.MONTHS - 865)) | (1 << (PlSqlParser.MOUNT - 865)) | (1 << (PlSqlParser.MOUNTPATH - 865)) | (1 << (PlSqlParser.MOVEMENT - 865)) | (1 << (PlSqlParser.MOVE - 865)) | (1 << (PlSqlParser.MULTIDIMENSIONAL - 865)) | (1 << (PlSqlParser.MULTISET - 865)) | (1 << (PlSqlParser.MV_MERGE - 865)) | (1 << (PlSqlParser.NAMED - 865)) | (1 << (PlSqlParser.NAME - 865)) | (1 << (PlSqlParser.NAMESPACE - 865)) | (1 << (PlSqlParser.NAN - 865)) | (1 << (PlSqlParser.NANVL - 865)) | (1 << (PlSqlParser.NATIONAL - 865)) | (1 << (PlSqlParser.NATIVE_FULL_OUTER_JOIN - 865)) | (1 << (PlSqlParser.NATIVE - 865)) | (1 << (PlSqlParser.NATURAL - 865)) | (1 << (PlSqlParser.NAV - 865)) | (1 << (PlSqlParser.NCHAR_CS - 865)) | (1 << (PlSqlParser.NCHAR - 865)) | (1 << (PlSqlParser.NCHR - 865)) | (1 << (PlSqlParser.NCLOB - 865)) | (1 << (PlSqlParser.NEEDED - 865)) | (1 << (PlSqlParser.NEG - 865)) | (1 << (PlSqlParser.NESTED - 865)) | (1 << (PlSqlParser.NESTED_TABLE_FAST_INSERT - 865)))) !== 0) || ((((_la - 897)) & ~0x1f) == 0 && ((1 << (_la - 897)) & ((1 << (PlSqlParser.NESTED_TABLE_GET_REFS - 897)) | (1 << (PlSqlParser.NESTED_TABLE_ID - 897)) | (1 << (PlSqlParser.NESTED_TABLE_SET_REFS - 897)) | (1 << (PlSqlParser.NESTED_TABLE_SET_SETID - 897)) | (1 << (PlSqlParser.NETWORK - 897)) | (1 << (PlSqlParser.NEVER - 897)) | (1 << (PlSqlParser.NEW - 897)) | (1 << (PlSqlParser.NEW_TIME - 897)) | (1 << (PlSqlParser.NEXT_DAY - 897)) | (1 << (PlSqlParser.NEXT - 897)) | (1 << (PlSqlParser.NL_AJ - 897)) | (1 << (PlSqlParser.NLJ_BATCHING - 897)) | (1 << (PlSqlParser.NLJ_INDEX_FILTER - 897)) | (1 << (PlSqlParser.NLJ_INDEX_SCAN - 897)) | (1 << (PlSqlParser.NLJ_PREFETCH - 897)) | (1 << (PlSqlParser.NLS_CALENDAR - 897)) | (1 << (PlSqlParser.NLS_CHARACTERSET - 897)) | (1 << (PlSqlParser.NLS_CHARSET_DECL_LEN - 897)) | (1 << (PlSqlParser.NLS_CHARSET_ID - 897)) | (1 << (PlSqlParser.NLS_CHARSET_NAME - 897)) | (1 << (PlSqlParser.NLS_COMP - 897)) | (1 << (PlSqlParser.NLS_CURRENCY - 897)) | (1 << (PlSqlParser.NLS_DATE_FORMAT - 897)) | (1 << (PlSqlParser.NLS_DATE_LANGUAGE - 897)) | (1 << (PlSqlParser.NLS_INITCAP - 897)) | (1 << (PlSqlParser.NLS_ISO_CURRENCY - 897)) | (1 << (PlSqlParser.NL_SJ - 897)) | (1 << (PlSqlParser.NLS_LANG - 897)) | (1 << (PlSqlParser.NLS_LANGUAGE - 897)) | (1 << (PlSqlParser.NLS_LENGTH_SEMANTICS - 897)) | (1 << (PlSqlParser.NLS_LOWER - 897)) | (1 << (PlSqlParser.NLS_NCHAR_CONV_EXCP - 897)))) !== 0) || ((((_la - 929)) & ~0x1f) == 0 && ((1 << (_la - 929)) & ((1 << (PlSqlParser.NLS_NUMERIC_CHARACTERS - 929)) | (1 << (PlSqlParser.NLS_SORT - 929)) | (1 << (PlSqlParser.NLSSORT - 929)) | (1 << (PlSqlParser.NLS_SPECIAL_CHARS - 929)) | (1 << (PlSqlParser.NLS_TERRITORY - 929)) | (1 << (PlSqlParser.NLS_UPPER - 929)) | (1 << (PlSqlParser.NO_ACCESS - 929)) | (1 << (PlSqlParser.NO_ADAPTIVE_PLAN - 929)) | (1 << (PlSqlParser.NO_ANSI_REARCH - 929)) | (1 << (PlSqlParser.NOAPPEND - 929)) | (1 << (PlSqlParser.NOARCHIVELOG - 929)) | (1 << (PlSqlParser.NOAUDIT - 929)) | (1 << (PlSqlParser.NO_AUTO_REOPTIMIZE - 929)) | (1 << (PlSqlParser.NO_BASETABLE_MULTIMV_REWRITE - 929)) | (1 << (PlSqlParser.NO_BATCH_TABLE_ACCESS_BY_ROWID - 929)) | (1 << (PlSqlParser.NO_BIND_AWARE - 929)) | (1 << (PlSqlParser.NO_BUFFER - 929)) | (1 << (PlSqlParser.NOCACHE - 929)) | (1 << (PlSqlParser.NO_CARTESIAN - 929)) | (1 << (PlSqlParser.NO_CHECK_ACL_REWRITE - 929)) | (1 << (PlSqlParser.NO_CLUSTER_BY_ROWID - 929)) | (1 << (PlSqlParser.NO_CLUSTERING - 929)) | (1 << (PlSqlParser.NO_COALESCE_SQ - 929)) | (1 << (PlSqlParser.NO_COMMON_DATA - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_CB_WHR_ONLY - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_COMBINE_SW - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_COST_BASED - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_ELIM_DUPS - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_FILTERING - 929)) | (1 << (PlSqlParser.NOCOPY - 929)) | (1 << (PlSqlParser.NO_COST_XML_QUERY_REWRITE - 929)))) !== 0) || ((((_la - 961)) & ~0x1f) == 0 && ((1 << (_la - 961)) & ((1 << (PlSqlParser.NO_CPU_COSTING - 961)) | (1 << (PlSqlParser.NOCPU_COSTING - 961)) | (1 << (PlSqlParser.NOCYCLE - 961)) | (1 << (PlSqlParser.NO_DATA_SECURITY_REWRITE - 961)) | (1 << (PlSqlParser.NO_DECORRELATE - 961)) | (1 << (PlSqlParser.NODELAY - 961)) | (1 << (PlSqlParser.NO_DOMAIN_INDEX_FILTER - 961)) | (1 << (PlSqlParser.NO_DST_UPGRADE_INSERT_CONV - 961)) | (1 << (PlSqlParser.NO_ELIM_GROUPBY - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_JOIN - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_OBY - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_OUTER_JOIN - 961)) | (1 << (PlSqlParser.NOENTITYESCAPING - 961)) | (1 << (PlSqlParser.NO_EXPAND_GSET_TO_UNION - 961)) | (1 << (PlSqlParser.NO_EXPAND - 961)) | (1 << (PlSqlParser.NO_EXPAND_TABLE - 961)) | (1 << (PlSqlParser.NO_FACT - 961)) | (1 << (PlSqlParser.NO_FACTORIZE_JOIN - 961)) | (1 << (PlSqlParser.NO_FILTERING - 961)) | (1 << (PlSqlParser.NOFORCE - 961)) | (1 << (PlSqlParser.NO_FULL_OUTER_JOIN_TO_OUTER - 961)) | (1 << (PlSqlParser.NO_GATHER_OPTIMIZER_STATISTICS - 961)) | (1 << (PlSqlParser.NO_GBY_PUSHDOWN - 961)) | (1 << (PlSqlParser.NOGUARANTEE - 961)) | (1 << (PlSqlParser.NO_INDEX_FFS - 961)) | (1 << (PlSqlParser.NO_INDEX - 961)) | (1 << (PlSqlParser.NO_INDEX_SS - 961)) | (1 << (PlSqlParser.NO_INMEMORY - 961)) | (1 << (PlSqlParser.NO_INMEMORY_PRUNING - 961)) | (1 << (PlSqlParser.NOKEEP - 961)) | (1 << (PlSqlParser.NO_LOAD - 961)) | (1 << (PlSqlParser.NOLOCAL - 961)))) !== 0) || ((((_la - 993)) & ~0x1f) == 0 && ((1 << (_la - 993)) & ((1 << (PlSqlParser.NOLOGGING - 993)) | (1 << (PlSqlParser.NOMAPPING - 993)) | (1 << (PlSqlParser.NOMAXVALUE - 993)) | (1 << (PlSqlParser.NO_MERGE - 993)) | (1 << (PlSqlParser.NOMINIMIZE - 993)) | (1 << (PlSqlParser.NOMINVALUE - 993)) | (1 << (PlSqlParser.NO_MODEL_PUSH_REF - 993)) | (1 << (PlSqlParser.NO_MONITORING - 993)) | (1 << (PlSqlParser.NOMONITORING - 993)) | (1 << (PlSqlParser.NO_MONITOR - 993)) | (1 << (PlSqlParser.NO_MULTIMV_REWRITE - 993)) | (1 << (PlSqlParser.NO_NATIVE_FULL_OUTER_JOIN - 993)) | (1 << (PlSqlParser.NONBLOCKING - 993)) | (1 << (PlSqlParser.NONEDITIONABLE - 993)) | (1 << (PlSqlParser.NONE - 993)) | (1 << (PlSqlParser.NO_NLJ_BATCHING - 993)) | (1 << (PlSqlParser.NO_NLJ_PREFETCH - 993)) | (1 << (PlSqlParser.NO - 993)) | (1 << (PlSqlParser.NONSCHEMA - 993)) | (1 << (PlSqlParser.NO_OBJECT_LINK - 993)) | (1 << (PlSqlParser.NOORDER - 993)) | (1 << (PlSqlParser.NO_ORDER_ROLLUPS - 993)) | (1 << (PlSqlParser.NO_OUTER_JOIN_TO_ANTI - 993)) | (1 << (PlSqlParser.NO_OUTER_JOIN_TO_INNER - 993)) | (1 << (PlSqlParser.NOOVERRIDE - 993)) | (1 << (PlSqlParser.NO_PARALLEL_INDEX - 993)) | (1 << (PlSqlParser.NOPARALLEL_INDEX - 993)) | (1 << (PlSqlParser.NO_PARALLEL - 993)) | (1 << (PlSqlParser.NOPARALLEL - 993)) | (1 << (PlSqlParser.NO_PARTIAL_COMMIT - 993)) | (1 << (PlSqlParser.NO_PARTIAL_JOIN - 993)) | (1 << (PlSqlParser.NO_PARTIAL_ROLLUP_PUSHDOWN - 993)))) !== 0) || ((((_la - 1025)) & ~0x1f) == 0 && ((1 << (_la - 1025)) & ((1 << (PlSqlParser.NOPARTITION - 1025)) | (1 << (PlSqlParser.NO_PLACE_DISTINCT - 1025)) | (1 << (PlSqlParser.NO_PLACE_GROUP_BY - 1025)) | (1 << (PlSqlParser.NO_PQ_CONCURRENT_UNION - 1025)) | (1 << (PlSqlParser.NO_PQ_MAP - 1025)) | (1 << (PlSqlParser.NO_PQ_REPLICATE - 1025)) | (1 << (PlSqlParser.NO_PQ_SKEW - 1025)) | (1 << (PlSqlParser.NO_PRUNE_GSETS - 1025)) | (1 << (PlSqlParser.NO_PULL_PRED - 1025)) | (1 << (PlSqlParser.NO_PUSH_PRED - 1025)) | (1 << (PlSqlParser.NO_PUSH_SUBQ - 1025)) | (1 << (PlSqlParser.NO_PX_FAULT_TOLERANCE - 1025)) | (1 << (PlSqlParser.NO_PX_JOIN_FILTER - 1025)) | (1 << (PlSqlParser.NO_QKN_BUFF - 1025)) | (1 << (PlSqlParser.NO_QUERY_TRANSFORMATION - 1025)) | (1 << (PlSqlParser.NO_REF_CASCADE - 1025)) | (1 << (PlSqlParser.NORELOCATE - 1025)) | (1 << (PlSqlParser.NORELY - 1025)) | (1 << (PlSqlParser.NOREPAIR - 1025)) | (1 << (PlSqlParser.NOREPLAY - 1025)) | (1 << (PlSqlParser.NORESETLOGS - 1025)) | (1 << (PlSqlParser.NO_RESULT_CACHE - 1025)) | (1 << (PlSqlParser.NOREVERSE - 1025)) | (1 << (PlSqlParser.NO_REWRITE - 1025)) | (1 << (PlSqlParser.NOREWRITE - 1025)) | (1 << (PlSqlParser.NORMAL - 1025)) | (1 << (PlSqlParser.NO_ROOT_SW_FOR_LOCAL - 1025)) | (1 << (PlSqlParser.NOROWDEPENDENCIES - 1025)) | (1 << (PlSqlParser.NOSCHEMACHECK - 1025)) | (1 << (PlSqlParser.NOSEGMENT - 1025)) | (1 << (PlSqlParser.NO_SEMIJOIN - 1025)) | (1 << (PlSqlParser.NO_SEMI_TO_INNER - 1025)))) !== 0) || ((((_la - 1057)) & ~0x1f) == 0 && ((1 << (_la - 1057)) & ((1 << (PlSqlParser.NO_SET_TO_JOIN - 1057)) | (1 << (PlSqlParser.NOSORT - 1057)) | (1 << (PlSqlParser.NO_SQL_TRANSLATION - 1057)) | (1 << (PlSqlParser.NO_SQL_TUNE - 1057)) | (1 << (PlSqlParser.NO_STAR_TRANSFORMATION - 1057)) | (1 << (PlSqlParser.NO_STATEMENT_QUEUING - 1057)) | (1 << (PlSqlParser.NO_STATS_GSETS - 1057)) | (1 << (PlSqlParser.NOSTRICT - 1057)) | (1 << (PlSqlParser.NO_SUBQUERY_PRUNING - 1057)) | (1 << (PlSqlParser.NO_SUBSTRB_PAD - 1057)) | (1 << (PlSqlParser.NO_SWAP_JOIN_INPUTS - 1057)) | (1 << (PlSqlParser.NOSWITCH - 1057)) | (1 << (PlSqlParser.NO_TABLE_LOOKUP_BY_NL - 1057)) | (1 << (PlSqlParser.NO_TEMP_TABLE - 1057)) | (1 << (PlSqlParser.NOTHING - 1057)) | (1 << (PlSqlParser.NOTIFICATION - 1057)) | (1 << (PlSqlParser.NO_TRANSFORM_DISTINCT_AGG - 1057)) | (1 << (PlSqlParser.NO_UNNEST - 1057)) | (1 << (PlSqlParser.NO_USE_CUBE - 1057)) | (1 << (PlSqlParser.NO_USE_HASH_AGGREGATION - 1057)) | (1 << (PlSqlParser.NO_USE_HASH_GBY_FOR_PUSHDOWN - 1057)) | (1 << (PlSqlParser.NO_USE_HASH - 1057)) | (1 << (PlSqlParser.NO_USE_INVISIBLE_INDEXES - 1057)) | (1 << (PlSqlParser.NO_USE_MERGE - 1057)) | (1 << (PlSqlParser.NO_USE_NL - 1057)) | (1 << (PlSqlParser.NO_USE_VECTOR_AGGREGATION - 1057)) | (1 << (PlSqlParser.NOVALIDATE - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM_DIMS - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM_FACT - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM - 1057)))) !== 0) || ((((_la - 1089)) & ~0x1f) == 0 && ((1 << (_la - 1089)) & ((1 << (PlSqlParser.NO_XDB_FASTPATH_INSERT - 1089)) | (1 << (PlSqlParser.NO_XML_DML_REWRITE - 1089)) | (1 << (PlSqlParser.NO_XMLINDEX_REWRITE_IN_SELECT - 1089)) | (1 << (PlSqlParser.NO_XMLINDEX_REWRITE - 1089)) | (1 << (PlSqlParser.NO_XML_QUERY_REWRITE - 1089)) | (1 << (PlSqlParser.NO_ZONEMAP - 1089)) | (1 << (PlSqlParser.NTH_VALUE - 1089)) | (1 << (PlSqlParser.NULLIF - 1089)) | (1 << (PlSqlParser.NULLS - 1089)) | (1 << (PlSqlParser.NUMBER - 1089)) | (1 << (PlSqlParser.NUMERIC - 1089)) | (1 << (PlSqlParser.NUM_INDEX_KEYS - 1089)) | (1 << (PlSqlParser.NUMTODSINTERVAL - 1089)) | (1 << (PlSqlParser.NUMTOYMINTERVAL - 1089)) | (1 << (PlSqlParser.NVARCHAR2 - 1089)) | (1 << (PlSqlParser.NVL2 - 1089)) | (1 << (PlSqlParser.OBJECT2XML - 1089)) | (1 << (PlSqlParser.OBJECT - 1089)) | (1 << (PlSqlParser.OBJ_ID - 1089)) | (1 << (PlSqlParser.OBJNO - 1089)) | (1 << (PlSqlParser.OBJNO_REUSE - 1089)) | (1 << (PlSqlParser.OCCURENCES - 1089)) | (1 << (PlSqlParser.OFFLINE - 1089)) | (1 << (PlSqlParser.OFF - 1089)) | (1 << (PlSqlParser.OFFSET - 1089)) | (1 << (PlSqlParser.OIDINDEX - 1089)) | (1 << (PlSqlParser.OID - 1089)) | (1 << (PlSqlParser.OLAP - 1089)) | (1 << (PlSqlParser.OLD - 1089)) | (1 << (PlSqlParser.OLD_PUSH_PRED - 1089)))) !== 0) || ((((_la - 1121)) & ~0x1f) == 0 && ((1 << (_la - 1121)) & ((1 << (PlSqlParser.OLS - 1121)) | (1 << (PlSqlParser.OLTP - 1121)) | (1 << (PlSqlParser.OMIT - 1121)) | (1 << (PlSqlParser.ONE - 1121)) | (1 << (PlSqlParser.ONLINE - 1121)) | (1 << (PlSqlParser.ONLY - 1121)) | (1 << (PlSqlParser.OPAQUE - 1121)) | (1 << (PlSqlParser.OPAQUE_TRANSFORM - 1121)) | (1 << (PlSqlParser.OPAQUE_XCANONICAL - 1121)) | (1 << (PlSqlParser.OPCODE - 1121)) | (1 << (PlSqlParser.OPEN - 1121)) | (1 << (PlSqlParser.OPERATIONS - 1121)) | (1 << (PlSqlParser.OPERATOR - 1121)) | (1 << (PlSqlParser.OPT_ESTIMATE - 1121)) | (1 << (PlSqlParser.OPTIMAL - 1121)) | (1 << (PlSqlParser.OPTIMIZE - 1121)) | (1 << (PlSqlParser.OPTIMIZER_FEATURES_ENABLE - 1121)) | (1 << (PlSqlParser.OPTIMIZER_GOAL - 1121)) | (1 << (PlSqlParser.OPT_PARAM - 1121)) | (1 << (PlSqlParser.ORA_BRANCH - 1121)) | (1 << (PlSqlParser.ORA_CHECK_ACL - 1121)) | (1 << (PlSqlParser.ORA_CHECK_PRIVILEGE - 1121)) | (1 << (PlSqlParser.ORA_CLUSTERING - 1121)) | (1 << (PlSqlParser.ORADATA - 1121)) | (1 << (PlSqlParser.ORADEBUG - 1121)) | (1 << (PlSqlParser.ORA_DST_AFFECTED - 1121)) | (1 << (PlSqlParser.ORA_DST_CONVERT - 1121)) | (1 << (PlSqlParser.ORA_DST_ERROR - 1121)) | (1 << (PlSqlParser.ORA_GET_ACLIDS - 1121)))) !== 0) || ((((_la - 1153)) & ~0x1f) == 0 && ((1 << (_la - 1153)) & ((1 << (PlSqlParser.ORA_GET_PRIVILEGES - 1153)) | (1 << (PlSqlParser.ORA_HASH - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_USERID - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_USER - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_XS_USER_GUID - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_XS_USER - 1153)) | (1 << (PlSqlParser.ORA_RAWCOMPARE - 1153)) | (1 << (PlSqlParser.ORA_RAWCONCAT - 1153)) | (1 << (PlSqlParser.ORA_ROWSCN - 1153)) | (1 << (PlSqlParser.ORA_ROWSCN_RAW - 1153)) | (1 << (PlSqlParser.ORA_ROWVERSION - 1153)) | (1 << (PlSqlParser.ORA_TABVERSION - 1153)) | (1 << (PlSqlParser.ORA_WRITE_TIME - 1153)) | (1 << (PlSqlParser.ORDERED - 1153)) | (1 << (PlSqlParser.ORDERED_PREDICATES - 1153)) | (1 << (PlSqlParser.ORDINALITY - 1153)) | (1 << (PlSqlParser.OR_EXPAND - 1153)) | (1 << (PlSqlParser.ORGANIZATION - 1153)) | (1 << (PlSqlParser.OR_PREDICATES - 1153)) | (1 << (PlSqlParser.OSERROR - 1153)) | (1 << (PlSqlParser.OTHER - 1153)) | (1 << (PlSqlParser.OUTER_JOIN_TO_ANTI - 1153)) | (1 << (PlSqlParser.OUTER_JOIN_TO_INNER - 1153)) | (1 << (PlSqlParser.OUTER - 1153)) | (1 << (PlSqlParser.OUTLINE_LEAF - 1153)) | (1 << (PlSqlParser.OUTLINE - 1153)) | (1 << (PlSqlParser.OUT_OF_LINE - 1153)) | (1 << (PlSqlParser.OUT - 1153)) | (1 << (PlSqlParser.OVERFLOW_NOMOVE - 1153)) | (1 << (PlSqlParser.OVERFLOW - 1153)))) !== 0) || ((((_la - 1185)) & ~0x1f) == 0 && ((1 << (_la - 1185)) & ((1 << (PlSqlParser.OVERLAPS - 1185)) | (1 << (PlSqlParser.OVER - 1185)) | (1 << (PlSqlParser.OVERRIDING - 1185)) | (1 << (PlSqlParser.OWNER - 1185)) | (1 << (PlSqlParser.OWNERSHIP - 1185)) | (1 << (PlSqlParser.OWN - 1185)) | (1 << (PlSqlParser.PACKAGE - 1185)) | (1 << (PlSqlParser.PACKAGES - 1185)) | (1 << (PlSqlParser.PARALLEL_ENABLE - 1185)) | (1 << (PlSqlParser.PARALLEL_INDEX - 1185)) | (1 << (PlSqlParser.PARALLEL - 1185)) | (1 << (PlSqlParser.PARAMETERS - 1185)) | (1 << (PlSqlParser.PARAM - 1185)) | (1 << (PlSqlParser.PARENT - 1185)) | (1 << (PlSqlParser.PARITY - 1185)) | (1 << (PlSqlParser.PARTIAL_JOIN - 1185)) | (1 << (PlSqlParser.PARTIALLY - 1185)) | (1 << (PlSqlParser.PARTIAL - 1185)) | (1 << (PlSqlParser.PARTIAL_ROLLUP_PUSHDOWN - 1185)) | (1 << (PlSqlParser.PARTITION_HASH - 1185)) | (1 << (PlSqlParser.PARTITION_LIST - 1185)) | (1 << (PlSqlParser.PARTITION - 1185)) | (1 << (PlSqlParser.PARTITION_RANGE - 1185)) | (1 << (PlSqlParser.PARTITIONS - 1185)) | (1 << (PlSqlParser.PARTNUMINST - 1185)) | (1 << (PlSqlParser.PASSING - 1185)) | (1 << (PlSqlParser.PASSWORD_GRACE_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD_LIFE_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD_LOCK_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD - 1185)) | (1 << (PlSqlParser.PASSWORD_REUSE_MAX - 1185)))) !== 0) || ((((_la - 1217)) & ~0x1f) == 0 && ((1 << (_la - 1217)) & ((1 << (PlSqlParser.PASSWORD_REUSE_TIME - 1217)) | (1 << (PlSqlParser.PASSWORD_VERIFY_FUNCTION - 1217)) | (1 << (PlSqlParser.PAST - 1217)) | (1 << (PlSqlParser.PATCH - 1217)) | (1 << (PlSqlParser.PATH - 1217)) | (1 << (PlSqlParser.PATH_PREFIX - 1217)) | (1 << (PlSqlParser.PATHS - 1217)) | (1 << (PlSqlParser.PATTERN - 1217)) | (1 << (PlSqlParser.PBL_HS_BEGIN - 1217)) | (1 << (PlSqlParser.PBL_HS_END - 1217)) | (1 << (PlSqlParser.PCTINCREASE - 1217)) | (1 << (PlSqlParser.PCTTHRESHOLD - 1217)) | (1 << (PlSqlParser.PCTUSED - 1217)) | (1 << (PlSqlParser.PCTVERSION - 1217)) | (1 << (PlSqlParser.PENDING - 1217)) | (1 << (PlSqlParser.PERCENT_KEYWORD - 1217)) | (1 << (PlSqlParser.PERCENT_RANKM - 1217)) | (1 << (PlSqlParser.PERFORMANCE - 1217)) | (1 << (PlSqlParser.PERIOD_KEYWORD - 1217)) | (1 << (PlSqlParser.PERMANENT - 1217)) | (1 << (PlSqlParser.PERMISSION - 1217)) | (1 << (PlSqlParser.PERMUTE - 1217)) | (1 << (PlSqlParser.PER - 1217)) | (1 << (PlSqlParser.PFILE - 1217)) | (1 << (PlSqlParser.PHYSICAL - 1217)))) !== 0) || ((((_la - 1249)) & ~0x1f) == 0 && ((1 << (_la - 1249)) & ((1 << (PlSqlParser.PIKEY - 1249)) | (1 << (PlSqlParser.PIPELINED - 1249)) | (1 << (PlSqlParser.PIV_GB - 1249)) | (1 << (PlSqlParser.PIVOT - 1249)) | (1 << (PlSqlParser.PIV_SSF - 1249)) | (1 << (PlSqlParser.PLACE_DISTINCT - 1249)) | (1 << (PlSqlParser.PLACE_GROUP_BY - 1249)) | (1 << (PlSqlParser.PLAN - 1249)) | (1 << (PlSqlParser.PLSCOPE_SETTINGS - 1249)) | (1 << (PlSqlParser.PLS_INTEGER - 1249)) | (1 << (PlSqlParser.PLSQL_CCFLAGS - 1249)) | (1 << (PlSqlParser.PLSQL_CODE_TYPE - 1249)) | (1 << (PlSqlParser.PLSQL_DEBUG - 1249)) | (1 << (PlSqlParser.PLSQL_OPTIMIZE_LEVEL - 1249)) | (1 << (PlSqlParser.PLSQL_WARNINGS - 1249)) | (1 << (PlSqlParser.PLUGGABLE - 1249)) | (1 << (PlSqlParser.POINT - 1249)) | (1 << (PlSqlParser.POLICY - 1249)) | (1 << (PlSqlParser.POOL_16K - 1249)) | (1 << (PlSqlParser.POOL_2K - 1249)) | (1 << (PlSqlParser.POOL_32K - 1249)) | (1 << (PlSqlParser.POOL_4K - 1249)) | (1 << (PlSqlParser.POOL_8K - 1249)) | (1 << (PlSqlParser.POSITIVEN - 1249)) | (1 << (PlSqlParser.POSITIVE - 1249)) | (1 << (PlSqlParser.POST_TRANSACTION - 1249)) | (1 << (PlSqlParser.POWERMULTISET_BY_CARDINALITY - 1249)) | (1 << (PlSqlParser.POWERMULTISET - 1249)) | (1 << (PlSqlParser.POWER - 1249)) | (1 << (PlSqlParser.PQ_CONCURRENT_UNION - 1249)) | (1 << (PlSqlParser.PQ_DISTRIBUTE - 1249)))) !== 0) || ((((_la - 1281)) & ~0x1f) == 0 && ((1 << (_la - 1281)) & ((1 << (PlSqlParser.PQ_DISTRIBUTE_WINDOW - 1281)) | (1 << (PlSqlParser.PQ_FILTER - 1281)) | (1 << (PlSqlParser.PQ_MAP - 1281)) | (1 << (PlSqlParser.PQ_NOMAP - 1281)) | (1 << (PlSqlParser.PQ_REPLICATE - 1281)) | (1 << (PlSqlParser.PQ_SKEW - 1281)) | (1 << (PlSqlParser.PRAGMA - 1281)) | (1 << (PlSqlParser.PREBUILT - 1281)) | (1 << (PlSqlParser.PRECEDES - 1281)) | (1 << (PlSqlParser.PRECEDING - 1281)) | (1 << (PlSqlParser.PRECISION - 1281)) | (1 << (PlSqlParser.PRECOMPUTE_SUBQUERY - 1281)) | (1 << (PlSqlParser.PREDICATE_REORDERS - 1281)) | (1 << (PlSqlParser.PRELOAD - 1281)) | (1 << (PlSqlParser.PREPARE - 1281)) | (1 << (PlSqlParser.PRESENTNNV - 1281)) | (1 << (PlSqlParser.PRESENT - 1281)) | (1 << (PlSqlParser.PRESENTV - 1281)) | (1 << (PlSqlParser.PRESERVE_OID - 1281)) | (1 << (PlSqlParser.PRESERVE - 1281)) | (1 << (PlSqlParser.PRETTY - 1281)) | (1 << (PlSqlParser.PREVIOUS - 1281)) | (1 << (PlSqlParser.PREV - 1281)) | (1 << (PlSqlParser.PRIMARY - 1281)) | (1 << (PlSqlParser.PRINTBLOBTOCLOB - 1281)) | (1 << (PlSqlParser.PRIORITY - 1281)) | (1 << (PlSqlParser.PRIVATE - 1281)) | (1 << (PlSqlParser.PRIVATE_SGA - 1281)) | (1 << (PlSqlParser.PRIVILEGED - 1281)) | (1 << (PlSqlParser.PRIVILEGE - 1281)) | (1 << (PlSqlParser.PRIVILEGES - 1281)))) !== 0) || ((((_la - 1313)) & ~0x1f) == 0 && ((1 << (_la - 1313)) & ((1 << (PlSqlParser.PROCEDURAL - 1313)) | (1 << (PlSqlParser.PROCEDURE - 1313)) | (1 << (PlSqlParser.PROCESS - 1313)) | (1 << (PlSqlParser.PROFILE - 1313)) | (1 << (PlSqlParser.PROGRAM - 1313)) | (1 << (PlSqlParser.PROJECT - 1313)) | (1 << (PlSqlParser.PROPAGATE - 1313)) | (1 << (PlSqlParser.PROTECTED - 1313)) | (1 << (PlSqlParser.PROTECTION - 1313)) | (1 << (PlSqlParser.PROXY - 1313)) | (1 << (PlSqlParser.PRUNING - 1313)) | (1 << (PlSqlParser.PULL_PRED - 1313)) | (1 << (PlSqlParser.PURGE - 1313)) | (1 << (PlSqlParser.PUSH_PRED - 1313)) | (1 << (PlSqlParser.PUSH_SUBQ - 1313)) | (1 << (PlSqlParser.PX_FAULT_TOLERANCE - 1313)) | (1 << (PlSqlParser.PX_GRANULE - 1313)) | (1 << (PlSqlParser.PX_JOIN_FILTER - 1313)) | (1 << (PlSqlParser.QB_NAME - 1313)) | (1 << (PlSqlParser.QUERY_BLOCK - 1313)) | (1 << (PlSqlParser.QUERY - 1313)) | (1 << (PlSqlParser.QUEUE_CURR - 1313)) | (1 << (PlSqlParser.QUEUE - 1313)) | (1 << (PlSqlParser.QUEUE_ROWP - 1313)) | (1 << (PlSqlParser.QUIESCE - 1313)) | (1 << (PlSqlParser.QUORUM - 1313)) | (1 << (PlSqlParser.QUOTA - 1313)) | (1 << (PlSqlParser.RAISE - 1313)) | (1 << (PlSqlParser.RANDOM_LOCAL - 1313)) | (1 << (PlSqlParser.RANDOM - 1313)) | (1 << (PlSqlParser.RANGE - 1313)))) !== 0) || ((((_la - 1345)) & ~0x1f) == 0 && ((1 << (_la - 1345)) & ((1 << (PlSqlParser.RANKM - 1345)) | (1 << (PlSqlParser.RAPIDLY - 1345)) | (1 << (PlSqlParser.RAW - 1345)) | (1 << (PlSqlParser.RAWTOHEX - 1345)) | (1 << (PlSqlParser.RAWTONHEX - 1345)) | (1 << (PlSqlParser.RBA - 1345)) | (1 << (PlSqlParser.RBO_OUTLINE - 1345)) | (1 << (PlSqlParser.RDBA - 1345)) | (1 << (PlSqlParser.READ - 1345)) | (1 << (PlSqlParser.READS - 1345)) | (1 << (PlSqlParser.REALM - 1345)) | (1 << (PlSqlParser.REAL - 1345)) | (1 << (PlSqlParser.REBALANCE - 1345)) | (1 << (PlSqlParser.REBUILD - 1345)) | (1 << (PlSqlParser.RECORD - 1345)) | (1 << (PlSqlParser.RECORDS_PER_BLOCK - 1345)) | (1 << (PlSqlParser.RECOVERABLE - 1345)) | (1 << (PlSqlParser.RECOVER - 1345)) | (1 << (PlSqlParser.RECOVERY - 1345)) | (1 << (PlSqlParser.RECYCLEBIN - 1345)) | (1 << (PlSqlParser.RECYCLE - 1345)) | (1 << (PlSqlParser.REDACTION - 1345)) | (1 << (PlSqlParser.REDEFINE - 1345)) | (1 << (PlSqlParser.REDO - 1345)) | (1 << (PlSqlParser.REDUCED - 1345)) | (1 << (PlSqlParser.REDUNDANCY - 1345)) | (1 << (PlSqlParser.REF_CASCADE_CURSOR - 1345)) | (1 << (PlSqlParser.REFERENCED - 1345)) | (1 << (PlSqlParser.REFERENCE - 1345)) | (1 << (PlSqlParser.REFERENCES - 1345)) | (1 << (PlSqlParser.REFERENCING - 1345)) | (1 << (PlSqlParser.REF - 1345)))) !== 0) || ((((_la - 1377)) & ~0x1f) == 0 && ((1 << (_la - 1377)) & ((1 << (PlSqlParser.REFRESH - 1377)) | (1 << (PlSqlParser.REFTOHEX - 1377)) | (1 << (PlSqlParser.REGEXP_COUNT - 1377)) | (1 << (PlSqlParser.REGEXP_INSTR - 1377)) | (1 << (PlSqlParser.REGEXP_LIKE - 1377)) | (1 << (PlSqlParser.REGEXP_REPLACE - 1377)) | (1 << (PlSqlParser.REGEXP_SUBSTR - 1377)) | (1 << (PlSqlParser.REGISTER - 1377)) | (1 << (PlSqlParser.REGR_AVGX - 1377)) | (1 << (PlSqlParser.REGR_AVGY - 1377)) | (1 << (PlSqlParser.REGR_COUNT - 1377)) | (1 << (PlSqlParser.REGR_INTERCEPT - 1377)) | (1 << (PlSqlParser.REGR_R2 - 1377)) | (1 << (PlSqlParser.REGR_SLOPE - 1377)) | (1 << (PlSqlParser.REGR_SXX - 1377)) | (1 << (PlSqlParser.REGR_SXY - 1377)) | (1 << (PlSqlParser.REGR_SYY - 1377)) | (1 << (PlSqlParser.REGULAR - 1377)) | (1 << (PlSqlParser.REJECT - 1377)) | (1 << (PlSqlParser.REKEY - 1377)) | (1 << (PlSqlParser.RELATIONAL - 1377)) | (1 << (PlSqlParser.RELOCATE - 1377)) | (1 << (PlSqlParser.RELY - 1377)) | (1 << (PlSqlParser.REMAINDER - 1377)) | (1 << (PlSqlParser.REMOTE_MAPPED - 1377)) | (1 << (PlSqlParser.REMOVE - 1377)) | (1 << (PlSqlParser.RENAME - 1377)) | (1 << (PlSqlParser.REPAIR - 1377)) | (1 << (PlSqlParser.REPEAT - 1377)) | (1 << (PlSqlParser.REPLACE - 1377)) | (1 << (PlSqlParser.REPLICATION - 1377)))) !== 0) || ((((_la - 1409)) & ~0x1f) == 0 && ((1 << (_la - 1409)) & ((1 << (PlSqlParser.REQUIRED - 1409)) | (1 << (PlSqlParser.RESETLOGS - 1409)) | (1 << (PlSqlParser.RESET - 1409)) | (1 << (PlSqlParser.RESIZE - 1409)) | (1 << (PlSqlParser.RESOLVE - 1409)) | (1 << (PlSqlParser.RESOLVER - 1409)) | (1 << (PlSqlParser.RESPECT - 1409)) | (1 << (PlSqlParser.RESTART - 1409)) | (1 << (PlSqlParser.RESTORE_AS_INTERVALS - 1409)) | (1 << (PlSqlParser.RESTORE - 1409)) | (1 << (PlSqlParser.RESTRICT_ALL_REF_CONS - 1409)) | (1 << (PlSqlParser.RESTRICTED - 1409)) | (1 << (PlSqlParser.RESTRICT_REFERENCES - 1409)) | (1 << (PlSqlParser.RESTRICT - 1409)) | (1 << (PlSqlParser.RESULT_CACHE - 1409)) | (1 << (PlSqlParser.RESULT - 1409)) | (1 << (PlSqlParser.RESUMABLE - 1409)) | (1 << (PlSqlParser.RESUME - 1409)) | (1 << (PlSqlParser.RETENTION - 1409)) | (1 << (PlSqlParser.RETRY_ON_ROW_CHANGE - 1409)) | (1 << (PlSqlParser.RETURNING - 1409)) | (1 << (PlSqlParser.RETURN - 1409)) | (1 << (PlSqlParser.REUSE - 1409)) | (1 << (PlSqlParser.REVERSE - 1409)) | (1 << (PlSqlParser.REWRITE_OR_ERROR - 1409)) | (1 << (PlSqlParser.REWRITE - 1409)) | (1 << (PlSqlParser.RIGHT - 1409)) | (1 << (PlSqlParser.ROLE - 1409)) | (1 << (PlSqlParser.ROLESET - 1409)) | (1 << (PlSqlParser.ROLES - 1409)))) !== 0) || ((((_la - 1441)) & ~0x1f) == 0 && ((1 << (_la - 1441)) & ((1 << (PlSqlParser.ROLLBACK - 1441)) | (1 << (PlSqlParser.ROLLING - 1441)) | (1 << (PlSqlParser.ROLLUP - 1441)) | (1 << (PlSqlParser.ROWDEPENDENCIES - 1441)) | (1 << (PlSqlParser.ROWID_MAPPING_TABLE - 1441)) | (1 << (PlSqlParser.ROWID - 1441)) | (1 << (PlSqlParser.ROWIDTOCHAR - 1441)) | (1 << (PlSqlParser.ROWIDTONCHAR - 1441)) | (1 << (PlSqlParser.ROW_LENGTH - 1441)) | (1 << (PlSqlParser.ROWNUM - 1441)) | (1 << (PlSqlParser.ROW - 1441)) | (1 << (PlSqlParser.ROWS - 1441)) | (1 << (PlSqlParser.RPAD - 1441)) | (1 << (PlSqlParser.RTRIM - 1441)) | (1 << (PlSqlParser.RULE - 1441)) | (1 << (PlSqlParser.RULES - 1441)) | (1 << (PlSqlParser.RUNNING - 1441)) | (1 << (PlSqlParser.SALT - 1441)) | (1 << (PlSqlParser.SAMPLE - 1441)) | (1 << (PlSqlParser.SAVE_AS_INTERVALS - 1441)) | (1 << (PlSqlParser.SAVEPOINT - 1441)) | (1 << (PlSqlParser.SAVE - 1441)) | (1 << (PlSqlParser.SB4 - 1441)) | (1 << (PlSqlParser.SCALE_ROWS - 1441)) | (1 << (PlSqlParser.SCALE - 1441)) | (1 << (PlSqlParser.SCAN_INSTANCES - 1441)) | (1 << (PlSqlParser.SCAN - 1441)) | (1 << (PlSqlParser.SCHEDULER - 1441)) | (1 << (PlSqlParser.SCHEMACHECK - 1441)) | (1 << (PlSqlParser.SCHEMA - 1441)) | (1 << (PlSqlParser.SCN_ASCENDING - 1441)) | (1 << (PlSqlParser.SCN - 1441)))) !== 0) || ((((_la - 1473)) & ~0x1f) == 0 && ((1 << (_la - 1473)) & ((1 << (PlSqlParser.SCOPE - 1473)) | (1 << (PlSqlParser.SCRUB - 1473)) | (1 << (PlSqlParser.SD_ALL - 1473)) | (1 << (PlSqlParser.SD_INHIBIT - 1473)) | (1 << (PlSqlParser.SDO_GEOM_MBR - 1473)) | (1 << (PlSqlParser.SD_SHOW - 1473)) | (1 << (PlSqlParser.SEARCH - 1473)) | (1 << (PlSqlParser.SECOND - 1473)) | (1 << (PlSqlParser.SECRET - 1473)) | (1 << (PlSqlParser.SECUREFILE_DBA - 1473)) | (1 << (PlSqlParser.SECUREFILE - 1473)) | (1 << (PlSqlParser.SECURITY - 1473)) | (1 << (PlSqlParser.SEED - 1473)) | (1 << (PlSqlParser.SEG_BLOCK - 1473)) | (1 << (PlSqlParser.SEG_FILE - 1473)) | (1 << (PlSqlParser.SEGMENT - 1473)) | (1 << (PlSqlParser.SELECTIVITY - 1473)) | (1 << (PlSqlParser.SELF - 1473)) | (1 << (PlSqlParser.SEMIJOIN_DRIVER - 1473)) | (1 << (PlSqlParser.SEMIJOIN - 1473)) | (1 << (PlSqlParser.SEMI_TO_INNER - 1473)) | (1 << (PlSqlParser.SEQUENCED - 1473)) | (1 << (PlSqlParser.SEQUENCE - 1473)) | (1 << (PlSqlParser.SEQUENTIAL - 1473)) | (1 << (PlSqlParser.SERIALIZABLE - 1473)) | (1 << (PlSqlParser.SERIALLY_REUSABLE - 1473)) | (1 << (PlSqlParser.SERIAL - 1473)) | (1 << (PlSqlParser.SERVERERROR - 1473)) | (1 << (PlSqlParser.SERVICE_NAME_CONVERT - 1473)) | (1 << (PlSqlParser.SERVICES - 1473)))) !== 0) || ((((_la - 1505)) & ~0x1f) == 0 && ((1 << (_la - 1505)) & ((1 << (PlSqlParser.SESSION_CACHED_CURSORS - 1505)) | (1 << (PlSqlParser.SESSION - 1505)) | (1 << (PlSqlParser.SESSIONS_PER_USER - 1505)) | (1 << (PlSqlParser.SESSIONTIMEZONE - 1505)) | (1 << (PlSqlParser.SESSIONTZNAME - 1505)) | (1 << (PlSqlParser.SET - 1505)) | (1 << (PlSqlParser.SETS - 1505)) | (1 << (PlSqlParser.SETTINGS - 1505)) | (1 << (PlSqlParser.SET_TO_JOIN - 1505)) | (1 << (PlSqlParser.SEVERE - 1505)) | (1 << (PlSqlParser.SHARED_POOL - 1505)) | (1 << (PlSqlParser.SHARED - 1505)) | (1 << (PlSqlParser.SHARING - 1505)) | (1 << (PlSqlParser.SHELFLIFE - 1505)) | (1 << (PlSqlParser.SHOW - 1505)) | (1 << (PlSqlParser.SHRINK - 1505)) | (1 << (PlSqlParser.SHUTDOWN - 1505)) | (1 << (PlSqlParser.SIBLINGS - 1505)) | (1 << (PlSqlParser.SID - 1505)) | (1 << (PlSqlParser.SIGNAL_COMPONENT - 1505)) | (1 << (PlSqlParser.SIGNAL_FUNCTION - 1505)) | (1 << (PlSqlParser.SIGN - 1505)) | (1 << (PlSqlParser.SIGNTYPE - 1505)) | (1 << (PlSqlParser.SIMPLE_INTEGER - 1505)) | (1 << (PlSqlParser.SIMPLE - 1505)) | (1 << (PlSqlParser.SINGLE - 1505)) | (1 << (PlSqlParser.SINGLETASK - 1505)) | (1 << (PlSqlParser.SINH - 1505)) | (1 << (PlSqlParser.SIN - 1505)) | (1 << (PlSqlParser.SKIP_EXT_OPTIMIZER - 1505)))) !== 0) || ((((_la - 1537)) & ~0x1f) == 0 && ((1 << (_la - 1537)) & ((1 << (PlSqlParser.SKIP_ - 1537)) | (1 << (PlSqlParser.SKIP_UNQ_UNUSABLE_IDX - 1537)) | (1 << (PlSqlParser.SKIP_UNUSABLE_INDEXES - 1537)) | (1 << (PlSqlParser.SMALLFILE - 1537)) | (1 << (PlSqlParser.SMALLINT - 1537)) | (1 << (PlSqlParser.SNAPSHOT - 1537)) | (1 << (PlSqlParser.SOME - 1537)) | (1 << (PlSqlParser.SORT - 1537)) | (1 << (PlSqlParser.SOUNDEX - 1537)) | (1 << (PlSqlParser.SOURCE_FILE_DIRECTORY - 1537)) | (1 << (PlSqlParser.SOURCE_FILE_NAME_CONVERT - 1537)) | (1 << (PlSqlParser.SOURCE - 1537)) | (1 << (PlSqlParser.SPACE_KEYWORD - 1537)) | (1 << (PlSqlParser.SPECIFICATION - 1537)) | (1 << (PlSqlParser.SPFILE - 1537)) | (1 << (PlSqlParser.SPLIT - 1537)) | (1 << (PlSqlParser.SPREADSHEET - 1537)) | (1 << (PlSqlParser.SQLDATA - 1537)) | (1 << (PlSqlParser.SQLERROR - 1537)) | (1 << (PlSqlParser.SQLLDR - 1537)) | (1 << (PlSqlParser.SQL - 1537)) | (1 << (PlSqlParser.SQL_TRACE - 1537)) | (1 << (PlSqlParser.SQL_TRANSLATION_PROFILE - 1537)) | (1 << (PlSqlParser.SQRT - 1537)) | (1 << (PlSqlParser.STALE - 1537)) | (1 << (PlSqlParser.STANDALONE - 1537)) | (1 << (PlSqlParser.STANDARD_HASH - 1537)) | (1 << (PlSqlParser.STANDBY_MAX_DATA_DELAY - 1537)) | (1 << (PlSqlParser.STANDBYS - 1537)) | (1 << (PlSqlParser.STANDBY - 1537)) | (1 << (PlSqlParser.STAR - 1537)) | (1 << (PlSqlParser.STAR_TRANSFORMATION - 1537)))) !== 0) || ((((_la - 1570)) & ~0x1f) == 0 && ((1 << (_la - 1570)) & ((1 << (PlSqlParser.STARTUP - 1570)) | (1 << (PlSqlParser.STATEMENT_ID - 1570)) | (1 << (PlSqlParser.STATEMENT_QUEUING - 1570)) | (1 << (PlSqlParser.STATEMENTS - 1570)) | (1 << (PlSqlParser.STATEMENT - 1570)) | (1 << (PlSqlParser.STATE - 1570)) | (1 << (PlSqlParser.STATIC - 1570)) | (1 << (PlSqlParser.STATISTICS - 1570)) | (1 << (PlSqlParser.STATS_BINOMIAL_TEST - 1570)) | (1 << (PlSqlParser.STATS_CROSSTAB - 1570)) | (1 << (PlSqlParser.STATS_F_TEST - 1570)) | (1 << (PlSqlParser.STATS_KS_TEST - 1570)) | (1 << (PlSqlParser.STATS_MODE - 1570)) | (1 << (PlSqlParser.STATS_MW_TEST - 1570)) | (1 << (PlSqlParser.STATS_ONE_WAY_ANOVA - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_INDEP - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_INDEPU - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_ONE - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_PAIRED - 1570)) | (1 << (PlSqlParser.STATS_WSR_TEST - 1570)) | (1 << (PlSqlParser.STDDEV_POP - 1570)) | (1 << (PlSqlParser.STDDEV_SAMP - 1570)) | (1 << (PlSqlParser.STOP - 1570)) | (1 << (PlSqlParser.STORAGE - 1570)) | (1 << (PlSqlParser.STORE - 1570)) | (1 << (PlSqlParser.STREAMS - 1570)) | (1 << (PlSqlParser.STREAM - 1570)) | (1 << (PlSqlParser.STRICT - 1570)) | (1 << (PlSqlParser.STRING - 1570)) | (1 << (PlSqlParser.STRIPE_COLUMNS - 1570)) | (1 << (PlSqlParser.STRIPE_WIDTH - 1570)) | (1 << (PlSqlParser.STRIP - 1570)))) !== 0) || ((((_la - 1602)) & ~0x1f) == 0 && ((1 << (_la - 1602)) & ((1 << (PlSqlParser.STRUCTURE - 1602)) | (1 << (PlSqlParser.SUBMULTISET - 1602)) | (1 << (PlSqlParser.SUBPARTITION_REL - 1602)) | (1 << (PlSqlParser.SUBPARTITIONS - 1602)) | (1 << (PlSqlParser.SUBPARTITION - 1602)) | (1 << (PlSqlParser.SUBQUERIES - 1602)) | (1 << (PlSqlParser.SUBQUERY_PRUNING - 1602)) | (1 << (PlSqlParser.SUBSCRIBE - 1602)) | (1 << (PlSqlParser.SUBSET - 1602)) | (1 << (PlSqlParser.SUBSTITUTABLE - 1602)) | (1 << (PlSqlParser.SUBSTR2 - 1602)) | (1 << (PlSqlParser.SUBSTR4 - 1602)) | (1 << (PlSqlParser.SUBSTRB - 1602)) | (1 << (PlSqlParser.SUBSTRC - 1602)) | (1 << (PlSqlParser.SUBTYPE - 1602)) | (1 << (PlSqlParser.SUCCESSFUL - 1602)) | (1 << (PlSqlParser.SUCCESS - 1602)) | (1 << (PlSqlParser.SUMMARY - 1602)) | (1 << (PlSqlParser.SUPPLEMENTAL - 1602)) | (1 << (PlSqlParser.SUSPEND - 1602)) | (1 << (PlSqlParser.SWAP_JOIN_INPUTS - 1602)) | (1 << (PlSqlParser.SWITCHOVER - 1602)) | (1 << (PlSqlParser.SWITCH - 1602)) | (1 << (PlSqlParser.SYNCHRONOUS - 1602)) | (1 << (PlSqlParser.SYNC - 1602)) | (1 << (PlSqlParser.SYSASM - 1602)) | (1 << (PlSqlParser.SYS_AUDIT - 1602)) | (1 << (PlSqlParser.SYSAUX - 1602)) | (1 << (PlSqlParser.SYSBACKUP - 1602)) | (1 << (PlSqlParser.SYS_CHECKACL - 1602)) | (1 << (PlSqlParser.SYS_CHECK_PRIVILEGE - 1602)))) !== 0) || ((((_la - 1634)) & ~0x1f) == 0 && ((1 << (_la - 1634)) & ((1 << (PlSqlParser.SYS_CONNECT_BY_PATH - 1634)) | (1 << (PlSqlParser.SYS_CONTEXT - 1634)) | (1 << (PlSqlParser.SYSDATE - 1634)) | (1 << (PlSqlParser.SYSDBA - 1634)) | (1 << (PlSqlParser.SYS_DBURIGEN - 1634)) | (1 << (PlSqlParser.SYSDG - 1634)) | (1 << (PlSqlParser.SYS_DL_CURSOR - 1634)) | (1 << (PlSqlParser.SYS_DM_RXFORM_CHR - 1634)) | (1 << (PlSqlParser.SYS_DM_RXFORM_NUM - 1634)) | (1 << (PlSqlParser.SYS_DOM_COMPARE - 1634)) | (1 << (PlSqlParser.SYS_DST_PRIM2SEC - 1634)) | (1 << (PlSqlParser.SYS_DST_SEC2PRIM - 1634)) | (1 << (PlSqlParser.SYS_ET_BFILE_TO_RAW - 1634)) | (1 << (PlSqlParser.SYS_ET_BLOB_TO_IMAGE - 1634)) | (1 << (PlSqlParser.SYS_ET_IMAGE_TO_BLOB - 1634)) | (1 << (PlSqlParser.SYS_ET_RAW_TO_BFILE - 1634)) | (1 << (PlSqlParser.SYS_EXTPDTXT - 1634)) | (1 << (PlSqlParser.SYS_EXTRACT_UTC - 1634)) | (1 << (PlSqlParser.SYS_FBT_INSDEL - 1634)) | (1 << (PlSqlParser.SYS_FILTER_ACLS - 1634)) | (1 << (PlSqlParser.SYS_FNMATCHES - 1634)) | (1 << (PlSqlParser.SYS_FNREPLACE - 1634)) | (1 << (PlSqlParser.SYS_GET_ACLIDS - 1634)) | (1 << (PlSqlParser.SYS_GET_COL_ACLIDS - 1634)) | (1 << (PlSqlParser.SYS_GET_PRIVILEGES - 1634)) | (1 << (PlSqlParser.SYS_GETTOKENID - 1634)) | (1 << (PlSqlParser.SYS_GETXTIVAL - 1634)) | (1 << (PlSqlParser.SYS_GUID - 1634)) | (1 << (PlSqlParser.SYSGUID - 1634)) | (1 << (PlSqlParser.SYSKM - 1634)) | (1 << (PlSqlParser.SYS_MAKE_XMLNODEID - 1634)) | (1 << (PlSqlParser.SYS_MAKEXML - 1634)))) !== 0) || ((((_la - 1666)) & ~0x1f) == 0 && ((1 << (_la - 1666)) & ((1 << (PlSqlParser.SYS_MKXMLATTR - 1666)) | (1 << (PlSqlParser.SYS_MKXTI - 1666)) | (1 << (PlSqlParser.SYSOBJ - 1666)) | (1 << (PlSqlParser.SYS_OP_ADT2BIN - 1666)) | (1 << (PlSqlParser.SYS_OP_ADTCONS - 1666)) | (1 << (PlSqlParser.SYS_OP_ALSCRVAL - 1666)) | (1 << (PlSqlParser.SYS_OP_ATG - 1666)) | (1 << (PlSqlParser.SYS_OP_BIN2ADT - 1666)) | (1 << (PlSqlParser.SYS_OP_BITVEC - 1666)) | (1 << (PlSqlParser.SYS_OP_BL2R - 1666)) | (1 << (PlSqlParser.SYS_OP_BLOOM_FILTER_LIST - 1666)) | (1 << (PlSqlParser.SYS_OP_BLOOM_FILTER - 1666)) | (1 << (PlSqlParser.SYS_OP_C2C - 1666)) | (1 << (PlSqlParser.SYS_OP_CAST - 1666)) | (1 << (PlSqlParser.SYS_OP_CEG - 1666)) | (1 << (PlSqlParser.SYS_OP_CL2C - 1666)) | (1 << (PlSqlParser.SYS_OP_COMBINED_HASH - 1666)) | (1 << (PlSqlParser.SYS_OP_COMP - 1666)) | (1 << (PlSqlParser.SYS_OP_CONVERT - 1666)) | (1 << (PlSqlParser.SYS_OP_COUNTCHG - 1666)) | (1 << (PlSqlParser.SYS_OP_CSCONV - 1666)) | (1 << (PlSqlParser.SYS_OP_CSCONVTEST - 1666)) | (1 << (PlSqlParser.SYS_OP_CSR - 1666)) | (1 << (PlSqlParser.SYS_OP_CSX_PATCH - 1666)) | (1 << (PlSqlParser.SYS_OP_CYCLED_SEQ - 1666)) | (1 << (PlSqlParser.SYS_OP_DECOMP - 1666)) | (1 << (PlSqlParser.SYS_OP_DESCEND - 1666)) | (1 << (PlSqlParser.SYS_OP_DISTINCT - 1666)) | (1 << (PlSqlParser.SYS_OP_DRA - 1666)) | (1 << (PlSqlParser.SYS_OP_DUMP - 1666)) | (1 << (PlSqlParser.SYS_OP_DV_CHECK - 1666)) | (1 << (PlSqlParser.SYS_OP_ENFORCE_NOT_NULL - 1666)))) !== 0) || ((((_la - 1698)) & ~0x1f) == 0 && ((1 << (_la - 1698)) & ((1 << (PlSqlParser.SYSOPER - 1698)) | (1 << (PlSqlParser.SYS_OP_EXTRACT - 1698)) | (1 << (PlSqlParser.SYS_OP_GROUPING - 1698)) | (1 << (PlSqlParser.SYS_OP_GUID - 1698)) | (1 << (PlSqlParser.SYS_OP_HASH - 1698)) | (1 << (PlSqlParser.SYS_OP_IIX - 1698)) | (1 << (PlSqlParser.SYS_OP_ITR - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_CREATE - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_FILTER_LIST - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_FILTER - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_SUCCEEDED - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_USE - 1698)) | (1 << (PlSqlParser.SYS_OP_LBID - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2BLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2CLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2ID - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2NCLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2TYP - 1698)) | (1 << (PlSqlParser.SYS_OP_LSVI - 1698)) | (1 << (PlSqlParser.SYS_OP_LVL - 1698)) | (1 << (PlSqlParser.SYS_OP_MAKEOID - 1698)) | (1 << (PlSqlParser.SYS_OP_MAP_NONNULL - 1698)) | (1 << (PlSqlParser.SYS_OP_MSR - 1698)) | (1 << (PlSqlParser.SYS_OP_NICOMBINE - 1698)) | (1 << (PlSqlParser.SYS_OP_NIEXTRACT - 1698)) | (1 << (PlSqlParser.SYS_OP_NII - 1698)) | (1 << (PlSqlParser.SYS_OP_NIX - 1698)) | (1 << (PlSqlParser.SYS_OP_NOEXPAND - 1698)) | (1 << (PlSqlParser.SYS_OP_NTCIMG - 1698)) | (1 << (PlSqlParser.SYS_OP_NUMTORAW - 1698)) | (1 << (PlSqlParser.SYS_OP_OIDVALUE - 1698)) | (1 << (PlSqlParser.SYS_OP_OPNSIZE - 1698)))) !== 0) || ((((_la - 1730)) & ~0x1f) == 0 && ((1 << (_la - 1730)) & ((1 << (PlSqlParser.SYS_OP_PAR_1 - 1730)) | (1 << (PlSqlParser.SYS_OP_PARGID_1 - 1730)) | (1 << (PlSqlParser.SYS_OP_PARGID - 1730)) | (1 << (PlSqlParser.SYS_OP_PAR - 1730)) | (1 << (PlSqlParser.SYS_OP_PART_ID - 1730)) | (1 << (PlSqlParser.SYS_OP_PIVOT - 1730)) | (1 << (PlSqlParser.SYS_OP_R2O - 1730)) | (1 << (PlSqlParser.SYS_OP_RAWTONUM - 1730)) | (1 << (PlSqlParser.SYS_OP_RDTM - 1730)) | (1 << (PlSqlParser.SYS_OP_REF - 1730)) | (1 << (PlSqlParser.SYS_OP_RMTD - 1730)) | (1 << (PlSqlParser.SYS_OP_ROWIDTOOBJ - 1730)) | (1 << (PlSqlParser.SYS_OP_RPB - 1730)) | (1 << (PlSqlParser.SYS_OPTLOBPRBSC - 1730)) | (1 << (PlSqlParser.SYS_OP_TOSETID - 1730)) | (1 << (PlSqlParser.SYS_OP_TPR - 1730)) | (1 << (PlSqlParser.SYS_OP_TRTB - 1730)) | (1 << (PlSqlParser.SYS_OPTXICMP - 1730)) | (1 << (PlSqlParser.SYS_OPTXQCASTASNQ - 1730)) | (1 << (PlSqlParser.SYS_OP_UNDESCEND - 1730)) | (1 << (PlSqlParser.SYS_OP_VECAND - 1730)) | (1 << (PlSqlParser.SYS_OP_VECBIT - 1730)) | (1 << (PlSqlParser.SYS_OP_VECOR - 1730)) | (1 << (PlSqlParser.SYS_OP_VECXOR - 1730)) | (1 << (PlSqlParser.SYS_OP_VERSION - 1730)) | (1 << (PlSqlParser.SYS_OP_VREF - 1730)) | (1 << (PlSqlParser.SYS_OP_VVD - 1730)) | (1 << (PlSqlParser.SYS_OP_XMLCONS_FOR_CSX - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHATG - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHIDX - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHOP - 1730)) | (1 << (PlSqlParser.SYS_OP_XTXT2SQLT - 1730)))) !== 0) || ((((_la - 1762)) & ~0x1f) == 0 && ((1 << (_la - 1762)) & ((1 << (PlSqlParser.SYS_OP_ZONE_ID - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_DEPTH - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_MAXCHILD - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_PARENT - 1762)) | (1 << (PlSqlParser.SYS_PARALLEL_TXN - 1762)) | (1 << (PlSqlParser.SYS_PATHID_IS_ATTR - 1762)) | (1 << (PlSqlParser.SYS_PATHID_IS_NMSPC - 1762)) | (1 << (PlSqlParser.SYS_PATHID_LASTNAME - 1762)) | (1 << (PlSqlParser.SYS_PATHID_LASTNMSPC - 1762)) | (1 << (PlSqlParser.SYS_PATH_REVERSE - 1762)) | (1 << (PlSqlParser.SYS_PXQEXTRACT - 1762)) | (1 << (PlSqlParser.SYS_RAW_TO_XSID - 1762)) | (1 << (PlSqlParser.SYS_RID_ORDER - 1762)) | (1 << (PlSqlParser.SYS_ROW_DELTA - 1762)) | (1 << (PlSqlParser.SYS_SC_2_XMLT - 1762)) | (1 << (PlSqlParser.SYS_SYNRCIREDO - 1762)) | (1 << (PlSqlParser.SYSTEM_DEFINED - 1762)) | (1 << (PlSqlParser.SYSTEM - 1762)) | (1 << (PlSqlParser.SYSTIMESTAMP - 1762)) | (1 << (PlSqlParser.SYS_TYPEID - 1762)) | (1 << (PlSqlParser.SYS_UMAKEXML - 1762)) | (1 << (PlSqlParser.SYS_XMLANALYZE - 1762)) | (1 << (PlSqlParser.SYS_XMLCONTAINS - 1762)) | (1 << (PlSqlParser.SYS_XMLCONV - 1762)) | (1 << (PlSqlParser.SYS_XMLEXNSURI - 1762)) | (1 << (PlSqlParser.SYS_XMLGEN - 1762)) | (1 << (PlSqlParser.SYS_XMLI_LOC_ISNODE - 1762)) | (1 << (PlSqlParser.SYS_XMLI_LOC_ISTEXT - 1762)) | (1 << (PlSqlParser.SYS_XMLINSTR - 1762)) | (1 << (PlSqlParser.SYS_XMLLOCATOR_GETSVAL - 1762)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETCID - 1762)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETLOCATOR - 1762)))) !== 0) || ((((_la - 1794)) & ~0x1f) == 0 && ((1 << (_la - 1794)) & ((1 << (PlSqlParser.SYS_XMLNODEID_GETOKEY - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETPATHID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETPTRID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETRID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETSVAL - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETTID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID - 1794)) | (1 << (PlSqlParser.SYS_XMLT_2_SC - 1794)) | (1 << (PlSqlParser.SYS_XMLTRANSLATE - 1794)) | (1 << (PlSqlParser.SYS_XMLTYPE2SQL - 1794)) | (1 << (PlSqlParser.SYS_XQ_ASQLCNV - 1794)) | (1 << (PlSqlParser.SYS_XQ_ATOMCNVCHK - 1794)) | (1 << (PlSqlParser.SYS_XQBASEURI - 1794)) | (1 << (PlSqlParser.SYS_XQCASTABLEERRH - 1794)) | (1 << (PlSqlParser.SYS_XQCODEP2STR - 1794)) | (1 << (PlSqlParser.SYS_XQCODEPEQ - 1794)) | (1 << (PlSqlParser.SYS_XQCON2SEQ - 1794)) | (1 << (PlSqlParser.SYS_XQCONCAT - 1794)) | (1 << (PlSqlParser.SYS_XQDELETE - 1794)) | (1 << (PlSqlParser.SYS_XQDFLTCOLATION - 1794)) | (1 << (PlSqlParser.SYS_XQDOC - 1794)) | (1 << (PlSqlParser.SYS_XQDOCURI - 1794)) | (1 << (PlSqlParser.SYS_XQDURDIV - 1794)) | (1 << (PlSqlParser.SYS_XQED4URI - 1794)) | (1 << (PlSqlParser.SYS_XQENDSWITH - 1794)) | (1 << (PlSqlParser.SYS_XQERRH - 1794)) | (1 << (PlSqlParser.SYS_XQERR - 1794)) | (1 << (PlSqlParser.SYS_XQESHTMLURI - 1794)) | (1 << (PlSqlParser.SYS_XQEXLOBVAL - 1794)) | (1 << (PlSqlParser.SYS_XQEXSTWRP - 1794)) | (1 << (PlSqlParser.SYS_XQEXTRACT - 1794)) | (1 << (PlSqlParser.SYS_XQEXTRREF - 1794)))) !== 0) || ((((_la - 1826)) & ~0x1f) == 0 && ((1 << (_la - 1826)) & ((1 << (PlSqlParser.SYS_XQEXVAL - 1826)) | (1 << (PlSqlParser.SYS_XQFB2STR - 1826)) | (1 << (PlSqlParser.SYS_XQFNBOOL - 1826)) | (1 << (PlSqlParser.SYS_XQFNCMP - 1826)) | (1 << (PlSqlParser.SYS_XQFNDATIM - 1826)) | (1 << (PlSqlParser.SYS_XQFNLNAME - 1826)) | (1 << (PlSqlParser.SYS_XQFNNM - 1826)) | (1 << (PlSqlParser.SYS_XQFNNSURI - 1826)) | (1 << (PlSqlParser.SYS_XQFNPREDTRUTH - 1826)) | (1 << (PlSqlParser.SYS_XQFNQNM - 1826)) | (1 << (PlSqlParser.SYS_XQFNROOT - 1826)) | (1 << (PlSqlParser.SYS_XQFORMATNUM - 1826)) | (1 << (PlSqlParser.SYS_XQFTCONTAIN - 1826)) | (1 << (PlSqlParser.SYS_XQFUNCR - 1826)) | (1 << (PlSqlParser.SYS_XQGETCONTENT - 1826)) | (1 << (PlSqlParser.SYS_XQINDXOF - 1826)) | (1 << (PlSqlParser.SYS_XQINSERT - 1826)) | (1 << (PlSqlParser.SYS_XQINSPFX - 1826)) | (1 << (PlSqlParser.SYS_XQIRI2URI - 1826)) | (1 << (PlSqlParser.SYS_XQLANG - 1826)) | (1 << (PlSqlParser.SYS_XQLLNMFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQMKNODEREF - 1826)) | (1 << (PlSqlParser.SYS_XQNILLED - 1826)) | (1 << (PlSqlParser.SYS_XQNODENAME - 1826)) | (1 << (PlSqlParser.SYS_XQNORMSPACE - 1826)) | (1 << (PlSqlParser.SYS_XQNORMUCODE - 1826)) | (1 << (PlSqlParser.SYS_XQ_NRNG - 1826)) | (1 << (PlSqlParser.SYS_XQNSP4PFX - 1826)) | (1 << (PlSqlParser.SYS_XQNSPFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQPFXFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQ_PKSQL2XML - 1826)) | (1 << (PlSqlParser.SYS_XQPOLYABS - 1826)))) !== 0) || ((((_la - 1858)) & ~0x1f) == 0 && ((1 << (_la - 1858)) & ((1 << (PlSqlParser.SYS_XQPOLYADD - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCEL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCSTBL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCST - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYDIV - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYFLR - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYMOD - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYMUL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYRND - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYSQRT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYSUB - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYUMUS - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYUPLS - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVEQ - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVGE - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVGT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVLE - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVLT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVNE - 1858)) | (1 << (PlSqlParser.SYS_XQREF2VAL - 1858)) | (1 << (PlSqlParser.SYS_XQRENAME - 1858)) | (1 << (PlSqlParser.SYS_XQREPLACE - 1858)) | (1 << (PlSqlParser.SYS_XQRESVURI - 1858)) | (1 << (PlSqlParser.SYS_XQRNDHALF2EVN - 1858)) | (1 << (PlSqlParser.SYS_XQRSLVQNM - 1858)) | (1 << (PlSqlParser.SYS_XQRYENVPGET - 1858)) | (1 << (PlSqlParser.SYS_XQRYVARGET - 1858)) | (1 << (PlSqlParser.SYS_XQRYWRP - 1858)) | (1 << (PlSqlParser.SYS_XQSEQ2CON4XC - 1858)) | (1 << (PlSqlParser.SYS_XQSEQ2CON - 1858)) | (1 << (PlSqlParser.SYS_XQSEQDEEPEQ - 1858)) | (1 << (PlSqlParser.SYS_XQSEQINSB - 1858)))) !== 0) || ((((_la - 1890)) & ~0x1f) == 0 && ((1 << (_la - 1890)) & ((1 << (PlSqlParser.SYS_XQSEQRM - 1890)) | (1 << (PlSqlParser.SYS_XQSEQRVS - 1890)) | (1 << (PlSqlParser.SYS_XQSEQSUB - 1890)) | (1 << (PlSqlParser.SYS_XQSEQTYPMATCH - 1890)) | (1 << (PlSqlParser.SYS_XQSTARTSWITH - 1890)) | (1 << (PlSqlParser.SYS_XQSTATBURI - 1890)) | (1 << (PlSqlParser.SYS_XQSTR2CODEP - 1890)) | (1 << (PlSqlParser.SYS_XQSTRJOIN - 1890)) | (1 << (PlSqlParser.SYS_XQSUBSTRAFT - 1890)) | (1 << (PlSqlParser.SYS_XQSUBSTRBEF - 1890)) | (1 << (PlSqlParser.SYS_XQTOKENIZE - 1890)) | (1 << (PlSqlParser.SYS_XQTREATAS - 1890)) | (1 << (PlSqlParser.SYS_XQ_UPKXML2SQL - 1890)) | (1 << (PlSqlParser.SYS_XQXFORM - 1890)) | (1 << (PlSqlParser.SYS_XSID_TO_RAW - 1890)) | (1 << (PlSqlParser.SYS_ZMAP_FILTER - 1890)) | (1 << (PlSqlParser.SYS_ZMAP_REFRESH - 1890)) | (1 << (PlSqlParser.TABLE_LOOKUP_BY_NL - 1890)) | (1 << (PlSqlParser.TABLESPACE_NO - 1890)) | (1 << (PlSqlParser.TABLESPACE - 1890)) | (1 << (PlSqlParser.TABLES - 1890)) | (1 << (PlSqlParser.TABLE_STATS - 1890)) | (1 << (PlSqlParser.TABLE - 1890)) | (1 << (PlSqlParser.TABNO - 1890)) | (1 << (PlSqlParser.TAG - 1890)) | (1 << (PlSqlParser.TANH - 1890)) | (1 << (PlSqlParser.TAN - 1890)) | (1 << (PlSqlParser.TBLORIDXPARTNUM - 1890)) | (1 << (PlSqlParser.TEMPFILE - 1890)) | (1 << (PlSqlParser.TEMPLATE - 1890)) | (1 << (PlSqlParser.TEMPORARY - 1890)) | (1 << (PlSqlParser.TEMP_TABLE - 1890)))) !== 0) || ((((_la - 1922)) & ~0x1f) == 0 && ((1 << (_la - 1922)) & ((1 << (PlSqlParser.TEST - 1922)) | (1 << (PlSqlParser.TEXT - 1922)) | (1 << (PlSqlParser.THAN - 1922)) | (1 << (PlSqlParser.THEN - 1922)) | (1 << (PlSqlParser.THE - 1922)) | (1 << (PlSqlParser.THREAD - 1922)) | (1 << (PlSqlParser.THROUGH - 1922)) | (1 << (PlSqlParser.TIER - 1922)) | (1 << (PlSqlParser.TIES - 1922)) | (1 << (PlSqlParser.TIMEOUT - 1922)) | (1 << (PlSqlParser.TIMESTAMP_LTZ_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMESTAMP - 1922)) | (1 << (PlSqlParser.TIMESTAMP_TZ_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMESTAMP_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMES - 1922)) | (1 << (PlSqlParser.TIME - 1922)) | (1 << (PlSqlParser.TIMEZONE_ABBR - 1922)) | (1 << (PlSqlParser.TIMEZONE_HOUR - 1922)) | (1 << (PlSqlParser.TIMEZONE_MINUTE - 1922)) | (1 << (PlSqlParser.TIMEZONE_OFFSET - 1922)) | (1 << (PlSqlParser.TIMEZONE_REGION - 1922)) | (1 << (PlSqlParser.TIME_ZONE - 1922)) | (1 << (PlSqlParser.TIV_GB - 1922)) | (1 << (PlSqlParser.TIV_SSF - 1922)) | (1 << (PlSqlParser.TO_ACLID - 1922)) | (1 << (PlSqlParser.TO_BINARY_DOUBLE - 1922)) | (1 << (PlSqlParser.TO_BINARY_FLOAT - 1922)) | (1 << (PlSqlParser.TO_BLOB - 1922)) | (1 << (PlSqlParser.TO_CLOB - 1922)) | (1 << (PlSqlParser.TO_DSINTERVAL - 1922)) | (1 << (PlSqlParser.TO_LOB - 1922)))) !== 0) || ((((_la - 1954)) & ~0x1f) == 0 && ((1 << (_la - 1954)) & ((1 << (PlSqlParser.TO_MULTI_BYTE - 1954)) | (1 << (PlSqlParser.TO_NCHAR - 1954)) | (1 << (PlSqlParser.TO_NCLOB - 1954)) | (1 << (PlSqlParser.TO_NUMBER - 1954)) | (1 << (PlSqlParser.TOPLEVEL - 1954)) | (1 << (PlSqlParser.TO_SINGLE_BYTE - 1954)) | (1 << (PlSqlParser.TO_TIMESTAMP - 1954)) | (1 << (PlSqlParser.TO_TIMESTAMP_TZ - 1954)) | (1 << (PlSqlParser.TO_TIME - 1954)) | (1 << (PlSqlParser.TO_TIME_TZ - 1954)) | (1 << (PlSqlParser.TO_YMINTERVAL - 1954)) | (1 << (PlSqlParser.TRACE - 1954)) | (1 << (PlSqlParser.TRACING - 1954)) | (1 << (PlSqlParser.TRACKING - 1954)) | (1 << (PlSqlParser.TRAILING - 1954)) | (1 << (PlSqlParser.TRANSACTION - 1954)) | (1 << (PlSqlParser.TRANSFORM_DISTINCT_AGG - 1954)) | (1 << (PlSqlParser.TRANSITIONAL - 1954)) | (1 << (PlSqlParser.TRANSITION - 1954)) | (1 << (PlSqlParser.TRANSLATE - 1954)) | (1 << (PlSqlParser.TRANSLATION - 1954)) | (1 << (PlSqlParser.TREAT - 1954)) | (1 << (PlSqlParser.TRIGGERS - 1954)) | (1 << (PlSqlParser.TRIGGER - 1954)) | (1 << (PlSqlParser.TRUE - 1954)) | (1 << (PlSqlParser.TRUNCATE - 1954)) | (1 << (PlSqlParser.TRUNC - 1954)) | (1 << (PlSqlParser.TRUSTED - 1954)) | (1 << (PlSqlParser.TRUST - 1954)) | (1 << (PlSqlParser.TUNING - 1954)) | (1 << (PlSqlParser.TX - 1954)))) !== 0) || ((((_la - 1986)) & ~0x1f) == 0 && ((1 << (_la - 1986)) & ((1 << (PlSqlParser.TYPES - 1986)) | (1 << (PlSqlParser.TYPE - 1986)) | (1 << (PlSqlParser.TZ_OFFSET - 1986)) | (1 << (PlSqlParser.UB2 - 1986)) | (1 << (PlSqlParser.UBA - 1986)) | (1 << (PlSqlParser.UCS2 - 1986)) | (1 << (PlSqlParser.UID - 1986)) | (1 << (PlSqlParser.UNARCHIVED - 1986)) | (1 << (PlSqlParser.UNBOUNDED - 1986)) | (1 << (PlSqlParser.UNBOUND - 1986)) | (1 << (PlSqlParser.UNCONDITIONAL - 1986)) | (1 << (PlSqlParser.UNDER - 1986)) | (1 << (PlSqlParser.UNDO - 1986)) | (1 << (PlSqlParser.UNDROP - 1986)) | (1 << (PlSqlParser.UNIFORM - 1986)) | (1 << (PlSqlParser.UNISTR - 1986)) | (1 << (PlSqlParser.UNLIMITED - 1986)) | (1 << (PlSqlParser.UNLOAD - 1986)) | (1 << (PlSqlParser.UNLOCK - 1986)) | (1 << (PlSqlParser.UNMATCHED - 1986)) | (1 << (PlSqlParser.UNNEST_INNERJ_DISTINCT_VIEW - 1986)) | (1 << (PlSqlParser.UNNEST_NOSEMIJ_NODISTINCTVIEW - 1986)) | (1 << (PlSqlParser.UNNEST_SEMIJ_VIEW - 1986)) | (1 << (PlSqlParser.UNNEST - 1986)) | (1 << (PlSqlParser.UNPACKED - 1986)) | (1 << (PlSqlParser.UNPIVOT - 1986)) | (1 << (PlSqlParser.UNPLUG - 1986)) | (1 << (PlSqlParser.UNPROTECTED - 1986)) | (1 << (PlSqlParser.UNQUIESCE - 1986)) | (1 << (PlSqlParser.UNRECOVERABLE - 1986)))) !== 0) || ((((_la - 2018)) & ~0x1f) == 0 && ((1 << (_la - 2018)) & ((1 << (PlSqlParser.UNRESTRICTED - 2018)) | (1 << (PlSqlParser.UNSUBSCRIBE - 2018)) | (1 << (PlSqlParser.UNTIL - 2018)) | (1 << (PlSqlParser.UNUSABLE - 2018)) | (1 << (PlSqlParser.UNUSED - 2018)) | (1 << (PlSqlParser.UPDATABLE - 2018)) | (1 << (PlSqlParser.UPDATED - 2018)) | (1 << (PlSqlParser.UPDATEXML - 2018)) | (1 << (PlSqlParser.UPD_INDEXES - 2018)) | (1 << (PlSqlParser.UPD_JOININDEX - 2018)) | (1 << (PlSqlParser.UPGRADE - 2018)) | (1 << (PlSqlParser.UPPER - 2018)) | (1 << (PlSqlParser.UPSERT - 2018)) | (1 << (PlSqlParser.UROWID - 2018)) | (1 << (PlSqlParser.USABLE - 2018)) | (1 << (PlSqlParser.USAGE - 2018)) | (1 << (PlSqlParser.USE_ANTI - 2018)) | (1 << (PlSqlParser.USE_CONCAT - 2018)) | (1 << (PlSqlParser.USE_CUBE - 2018)) | (1 << (PlSqlParser.USE_HASH_AGGREGATION - 2018)) | (1 << (PlSqlParser.USE_HASH_GBY_FOR_PUSHDOWN - 2018)) | (1 << (PlSqlParser.USE_HASH - 2018)) | (1 << (PlSqlParser.USE_HIDDEN_PARTITIONS - 2018)) | (1 << (PlSqlParser.USE_INVISIBLE_INDEXES - 2018)) | (1 << (PlSqlParser.USE_MERGE_CARTESIAN - 2018)) | (1 << (PlSqlParser.USE_MERGE - 2018)) | (1 << (PlSqlParser.USE_NL - 2018)) | (1 << (PlSqlParser.USE_NL_WITH_INDEX - 2018)) | (1 << (PlSqlParser.USE_PRIVATE_OUTLINES - 2018)) | (1 << (PlSqlParser.USER_DATA - 2018)) | (1 << (PlSqlParser.USER_DEFINED - 2018)))) !== 0) || ((((_la - 2050)) & ~0x1f) == 0 && ((1 << (_la - 2050)) & ((1 << (PlSqlParser.USERENV - 2050)) | (1 << (PlSqlParser.USERGROUP - 2050)) | (1 << (PlSqlParser.USER_RECYCLEBIN - 2050)) | (1 << (PlSqlParser.USERS - 2050)) | (1 << (PlSqlParser.USER_TABLESPACES - 2050)) | (1 << (PlSqlParser.USER - 2050)) | (1 << (PlSqlParser.USE_SEMI - 2050)) | (1 << (PlSqlParser.USE_STORED_OUTLINES - 2050)) | (1 << (PlSqlParser.USE_TTT_FOR_GSETS - 2050)) | (1 << (PlSqlParser.USE - 2050)) | (1 << (PlSqlParser.USE_VECTOR_AGGREGATION - 2050)) | (1 << (PlSqlParser.USE_WEAK_NAME_RESL - 2050)) | (1 << (PlSqlParser.USING_NO_EXPAND - 2050)) | (1 << (PlSqlParser.USING - 2050)) | (1 << (PlSqlParser.UTF16BE - 2050)) | (1 << (PlSqlParser.UTF16LE - 2050)) | (1 << (PlSqlParser.UTF32 - 2050)) | (1 << (PlSqlParser.UTF8 - 2050)) | (1 << (PlSqlParser.V1 - 2050)) | (1 << (PlSqlParser.V2 - 2050)) | (1 << (PlSqlParser.VALIDATE - 2050)) | (1 << (PlSqlParser.VALIDATION - 2050)) | (1 << (PlSqlParser.VALID_TIME_END - 2050)) | (1 << (PlSqlParser.VALUE - 2050)) | (1 << (PlSqlParser.VARCHAR2 - 2050)) | (1 << (PlSqlParser.VARCHAR - 2050)) | (1 << (PlSqlParser.VARIABLE - 2050)) | (1 << (PlSqlParser.VAR_POP - 2050)) | (1 << (PlSqlParser.VARRAYS - 2050)) | (1 << (PlSqlParser.VARRAY - 2050)) | (1 << (PlSqlParser.VAR_SAMP - 2050)))) !== 0) || ((((_la - 2082)) & ~0x1f) == 0 && ((1 << (_la - 2082)) & ((1 << (PlSqlParser.VARYING - 2082)) | (1 << (PlSqlParser.VECTOR_READ_TRACE - 2082)) | (1 << (PlSqlParser.VECTOR_READ - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM_DIMS - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM_FACT - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM - 2082)) | (1 << (PlSqlParser.VERIFIER - 2082)) | (1 << (PlSqlParser.VERIFY - 2082)) | (1 << (PlSqlParser.VERSIONING - 2082)) | (1 << (PlSqlParser.VERSIONS_ENDSCN - 2082)) | (1 << (PlSqlParser.VERSIONS_ENDTIME - 2082)) | (1 << (PlSqlParser.VERSIONS_OPERATION - 2082)) | (1 << (PlSqlParser.VERSIONS_STARTSCN - 2082)) | (1 << (PlSqlParser.VERSIONS_STARTTIME - 2082)) | (1 << (PlSqlParser.VERSIONS - 2082)) | (1 << (PlSqlParser.VERSIONS_XID - 2082)) | (1 << (PlSqlParser.VERSION - 2082)) | (1 << (PlSqlParser.VIOLATION - 2082)) | (1 << (PlSqlParser.VIRTUAL - 2082)) | (1 << (PlSqlParser.VISIBILITY - 2082)) | (1 << (PlSqlParser.VISIBLE - 2082)) | (1 << (PlSqlParser.VOLUME - 2082)) | (1 << (PlSqlParser.VSIZE - 2082)) | (1 << (PlSqlParser.WAIT - 2082)) | (1 << (PlSqlParser.WALLET - 2082)) | (1 << (PlSqlParser.WARNING - 2082)) | (1 << (PlSqlParser.WEEKS - 2082)) | (1 << (PlSqlParser.WEEK - 2082)) | (1 << (PlSqlParser.WELLFORMED - 2082)) | (1 << (PlSqlParser.WHENEVER - 2082)) | (1 << (PlSqlParser.WHEN - 2082)))) !== 0) || ((((_la - 2115)) & ~0x1f) == 0 && ((1 << (_la - 2115)) & ((1 << (PlSqlParser.WHILE - 2115)) | (1 << (PlSqlParser.WHITESPACE - 2115)) | (1 << (PlSqlParser.WIDTH_BUCKET - 2115)) | (1 << (PlSqlParser.WITHIN - 2115)) | (1 << (PlSqlParser.WITHOUT - 2115)) | (1 << (PlSqlParser.WITH_PLSQL - 2115)) | (1 << (PlSqlParser.WORK - 2115)) | (1 << (PlSqlParser.WRAPPED - 2115)) | (1 << (PlSqlParser.WRAPPER - 2115)) | (1 << (PlSqlParser.WRITE - 2115)) | (1 << (PlSqlParser.XDB_FASTPATH_INSERT - 2115)) | (1 << (PlSqlParser.X_DYN_PRUNE - 2115)) | (1 << (PlSqlParser.XID - 2115)) | (1 << (PlSqlParser.XML2OBJECT - 2115)) | (1 << (PlSqlParser.XMLAGG - 2115)) | (1 << (PlSqlParser.XMLATTRIBUTES - 2115)) | (1 << (PlSqlParser.XMLCAST - 2115)) | (1 << (PlSqlParser.XMLCDATA - 2115)) | (1 << (PlSqlParser.XMLCOLATTVAL - 2115)) | (1 << (PlSqlParser.XMLCOMMENT - 2115)) | (1 << (PlSqlParser.XMLCONCAT - 2115)) | (1 << (PlSqlParser.XMLDIFF - 2115)) | (1 << (PlSqlParser.XML_DML_RWT_STMT - 2115)) | (1 << (PlSqlParser.XMLELEMENT - 2115)) | (1 << (PlSqlParser.XMLEXISTS2 - 2115)) | (1 << (PlSqlParser.XMLEXISTS - 2115)) | (1 << (PlSqlParser.XMLFOREST - 2115)) | (1 << (PlSqlParser.XMLINDEX_REWRITE_IN_SELECT - 2115)) | (1 << (PlSqlParser.XMLINDEX_REWRITE - 2115)))) !== 0) || ((((_la - 2147)) & ~0x1f) == 0 && ((1 << (_la - 2147)) & ((1 << (PlSqlParser.XMLINDEX_SEL_IDX_TBL - 2147)) | (1 << (PlSqlParser.XMLISNODE - 2147)) | (1 << (PlSqlParser.XMLISVALID - 2147)) | (1 << (PlSqlParser.XMLNAMESPACES - 2147)) | (1 << (PlSqlParser.XMLPARSE - 2147)) | (1 << (PlSqlParser.XMLPATCH - 2147)) | (1 << (PlSqlParser.XMLPI - 2147)) | (1 << (PlSqlParser.XMLQUERYVAL - 2147)) | (1 << (PlSqlParser.XMLQUERY - 2147)) | (1 << (PlSqlParser.XMLROOT - 2147)) | (1 << (PlSqlParser.XMLSCHEMA - 2147)) | (1 << (PlSqlParser.XMLSERIALIZE - 2147)) | (1 << (PlSqlParser.XMLTABLE - 2147)) | (1 << (PlSqlParser.XMLTRANSFORMBLOB - 2147)) | (1 << (PlSqlParser.XMLTRANSFORM - 2147)) | (1 << (PlSqlParser.XMLTYPE - 2147)) | (1 << (PlSqlParser.XML - 2147)) | (1 << (PlSqlParser.XPATHTABLE - 2147)) | (1 << (PlSqlParser.XS_SYS_CONTEXT - 2147)) | (1 << (PlSqlParser.XS - 2147)) | (1 << (PlSqlParser.YEARS - 2147)) | (1 << (PlSqlParser.YEAR - 2147)) | (1 << (PlSqlParser.YES - 2147)) | (1 << (PlSqlParser.YMINTERVAL_UNCONSTRAINED - 2147)) | (1 << (PlSqlParser.ZONEMAP - 2147)) | (1 << (PlSqlParser.ZONE - 2147)) | (1 << (PlSqlParser.PREDICTION - 2147)) | (1 << (PlSqlParser.PREDICTION_BOUNDS - 2147)) | (1 << (PlSqlParser.PREDICTION_COST - 2147)) | (1 << (PlSqlParser.PREDICTION_DETAILS - 2147)) | (1 << (PlSqlParser.PREDICTION_PROBABILITY - 2147)))) !== 0) || ((((_la - 2179)) & ~0x1f) == 0 && ((1 << (_la - 2179)) & ((1 << (PlSqlParser.PREDICTION_SET - 2179)) | (1 << (PlSqlParser.CUME_DIST - 2179)) | (1 << (PlSqlParser.DENSE_RANK - 2179)) | (1 << (PlSqlParser.LISTAGG - 2179)) | (1 << (PlSqlParser.PERCENT_RANK - 2179)) | (1 << (PlSqlParser.PERCENTILE_CONT - 2179)) | (1 << (PlSqlParser.PERCENTILE_DISC - 2179)) | (1 << (PlSqlParser.RANK - 2179)) | (1 << (PlSqlParser.AVG - 2179)) | (1 << (PlSqlParser.CORR - 2179)) | (1 << (PlSqlParser.COVAR_ - 2179)) | (1 << (PlSqlParser.LAG - 2179)) | (1 << (PlSqlParser.LEAD - 2179)) | (1 << (PlSqlParser.MAX - 2179)) | (1 << (PlSqlParser.MEDIAN - 2179)) | (1 << (PlSqlParser.MIN - 2179)) | (1 << (PlSqlParser.NTILE - 2179)) | (1 << (PlSqlParser.NVL - 2179)) | (1 << (PlSqlParser.RATIO_TO_REPORT - 2179)) | (1 << (PlSqlParser.REGR_ - 2179)) | (1 << (PlSqlParser.ROUND - 2179)) | (1 << (PlSqlParser.ROW_NUMBER - 2179)) | (1 << (PlSqlParser.SUBSTR - 2179)) | (1 << (PlSqlParser.TO_CHAR - 2179)) | (1 << (PlSqlParser.TRIM - 2179)) | (1 << (PlSqlParser.SUM - 2179)) | (1 << (PlSqlParser.STDDEV - 2179)) | (1 << (PlSqlParser.VAR_ - 2179)) | (1 << (PlSqlParser.VARIANCE - 2179)) | (1 << (PlSqlParser.LEAST - 2179)) | (1 << (PlSqlParser.GREATEST - 2179)))) !== 0) || _la===PlSqlParser.TO_DATE || _la===PlSqlParser.PERIOD || _la===PlSqlParser.REGULAR_ID) {
+ this.state = 5966;
+ this.partition_name();
+ }
+
+ this.state = 5969;
+ this.list_values_clause();
+ this.state = 5970;
+ this.table_partition_description();
+ this.state = 6003;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.SUBPARTITIONS || _la===PlSqlParser.LEFT_PAREN) {
+ this.state = 6001;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.LEFT_PAREN:
+ this.state = 5971;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 5996;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,688,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 5972;
+ this.range_subpartition_desc();
+ this.state = 5977;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 5973;
+ this.match(PlSqlParser.COMMA);
+ this.state = 5974;
+ this.range_subpartition_desc();
+ this.state = 5979;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+
+ case 2:
+ this.state = 5980;
+ this.list_subpartition_desc();
+ this.state = 5985;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 5981;
+ this.match(PlSqlParser.COMMA);
+ this.state = 5982;
+ this.list_subpartition_desc();
+ this.state = 5987;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+
+ case 3:
+ this.state = 5988;
+ this.individual_hash_subparts();
+ this.state = 5993;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 5989;
+ this.match(PlSqlParser.COMMA);
+ this.state = 5990;
+ this.individual_hash_subparts();
+ this.state = 5995;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+
+ }
+ this.state = 5998;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ break;
+ case PlSqlParser.SUBPARTITIONS:
+ this.state = 6000;
+ this.hash_subparts_by_quantity();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Subpartition_templateContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_subpartition_template;
+ return this;
+}
+
+Subpartition_templateContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Subpartition_templateContext.prototype.constructor = Subpartition_templateContext;
+
+Subpartition_templateContext.prototype.SUBPARTITION = function() {
+ return this.getToken(PlSqlParser.SUBPARTITION, 0);
+};
+
+Subpartition_templateContext.prototype.TEMPLATE = function() {
+ return this.getToken(PlSqlParser.TEMPLATE, 0);
+};
+
+Subpartition_templateContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Subpartition_templateContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Subpartition_templateContext.prototype.hash_subpartition_quantity = function() {
+ return this.getTypedRuleContext(Hash_subpartition_quantityContext,0);
+};
+
+Subpartition_templateContext.prototype.range_subpartition_desc = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Range_subpartition_descContext);
+ } else {
+ return this.getTypedRuleContext(Range_subpartition_descContext,i);
+ }
+};
+
+Subpartition_templateContext.prototype.list_subpartition_desc = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(List_subpartition_descContext);
+ } else {
+ return this.getTypedRuleContext(List_subpartition_descContext,i);
+ }
+};
+
+Subpartition_templateContext.prototype.individual_hash_subparts = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Individual_hash_subpartsContext);
+ } else {
+ return this.getTypedRuleContext(Individual_hash_subpartsContext,i);
+ }
+};
+
+Subpartition_templateContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Subpartition_templateContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterSubpartition_template(this);
+ }
+};
+
+Subpartition_templateContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitSubpartition_template(this);
+ }
+};
+
+Subpartition_templateContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitSubpartition_template(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Subpartition_templateContext = Subpartition_templateContext;
+
+PlSqlParser.prototype.subpartition_template = function() {
+
+ var localctx = new Subpartition_templateContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 574, PlSqlParser.RULE_subpartition_template);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6005;
+ this.match(PlSqlParser.SUBPARTITION);
+ this.state = 6006;
+ this.match(PlSqlParser.TEMPLATE);
+
+ this.state = 6037;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.LEFT_PAREN:
+ this.state = 6007;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 6032;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,694,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 6008;
+ this.range_subpartition_desc();
+ this.state = 6013;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 6009;
+ this.match(PlSqlParser.COMMA);
+ this.state = 6010;
+ this.range_subpartition_desc();
+ this.state = 6015;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+
+ case 2:
+ this.state = 6016;
+ this.list_subpartition_desc();
+ this.state = 6021;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 6017;
+ this.match(PlSqlParser.COMMA);
+ this.state = 6018;
+ this.list_subpartition_desc();
+ this.state = 6023;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+
+ case 3:
+ this.state = 6024;
+ this.individual_hash_subparts();
+ this.state = 6029;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 6025;
+ this.match(PlSqlParser.COMMA);
+ this.state = 6026;
+ this.individual_hash_subparts();
+ this.state = 6031;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+
+ }
+ this.state = 6034;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ break;
+ case PlSqlParser.UNSIGNED_INTEGER:
+ this.state = 6036;
+ this.hash_subpartition_quantity();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Hash_subpartition_quantityContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_hash_subpartition_quantity;
+ return this;
+}
+
+Hash_subpartition_quantityContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Hash_subpartition_quantityContext.prototype.constructor = Hash_subpartition_quantityContext;
+
+Hash_subpartition_quantityContext.prototype.UNSIGNED_INTEGER = function() {
+ return this.getToken(PlSqlParser.UNSIGNED_INTEGER, 0);
+};
+
+Hash_subpartition_quantityContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterHash_subpartition_quantity(this);
+ }
+};
+
+Hash_subpartition_quantityContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitHash_subpartition_quantity(this);
+ }
+};
+
+Hash_subpartition_quantityContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitHash_subpartition_quantity(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Hash_subpartition_quantityContext = Hash_subpartition_quantityContext;
+
+PlSqlParser.prototype.hash_subpartition_quantity = function() {
+
+ var localctx = new Hash_subpartition_quantityContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 576, PlSqlParser.RULE_hash_subpartition_quantity);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6039;
+ this.match(PlSqlParser.UNSIGNED_INTEGER);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Subpartition_by_rangeContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_subpartition_by_range;
+ return this;
+}
+
+Subpartition_by_rangeContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Subpartition_by_rangeContext.prototype.constructor = Subpartition_by_rangeContext;
+
+Subpartition_by_rangeContext.prototype.SUBPARTITION = function() {
+ return this.getToken(PlSqlParser.SUBPARTITION, 0);
+};
+
+Subpartition_by_rangeContext.prototype.BY = function() {
+ return this.getToken(PlSqlParser.BY, 0);
+};
+
+Subpartition_by_rangeContext.prototype.RANGE = function() {
+ return this.getToken(PlSqlParser.RANGE, 0);
+};
+
+Subpartition_by_rangeContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Subpartition_by_rangeContext.prototype.column_name = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Column_nameContext);
+ } else {
+ return this.getTypedRuleContext(Column_nameContext,i);
+ }
+};
+
+Subpartition_by_rangeContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Subpartition_by_rangeContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Subpartition_by_rangeContext.prototype.subpartition_template = function() {
+ return this.getTypedRuleContext(Subpartition_templateContext,0);
+};
+
+Subpartition_by_rangeContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterSubpartition_by_range(this);
+ }
+};
+
+Subpartition_by_rangeContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitSubpartition_by_range(this);
+ }
+};
+
+Subpartition_by_rangeContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitSubpartition_by_range(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Subpartition_by_rangeContext = Subpartition_by_rangeContext;
+
+PlSqlParser.prototype.subpartition_by_range = function() {
+
+ var localctx = new Subpartition_by_rangeContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 578, PlSqlParser.RULE_subpartition_by_range);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6041;
+ this.match(PlSqlParser.SUBPARTITION);
+ this.state = 6042;
+ this.match(PlSqlParser.BY);
+ this.state = 6043;
+ this.match(PlSqlParser.RANGE);
+ this.state = 6044;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 6045;
+ this.column_name();
+ this.state = 6050;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 6046;
+ this.match(PlSqlParser.COMMA);
+ this.state = 6047;
+ this.column_name();
+ this.state = 6052;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 6053;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ this.state = 6055;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.SUBPARTITION) {
+ this.state = 6054;
+ this.subpartition_template();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Subpartition_by_listContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_subpartition_by_list;
+ return this;
+}
+
+Subpartition_by_listContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Subpartition_by_listContext.prototype.constructor = Subpartition_by_listContext;
+
+Subpartition_by_listContext.prototype.SUBPARTITION = function() {
+ return this.getToken(PlSqlParser.SUBPARTITION, 0);
+};
+
+Subpartition_by_listContext.prototype.BY = function() {
+ return this.getToken(PlSqlParser.BY, 0);
+};
+
+Subpartition_by_listContext.prototype.LIST = function() {
+ return this.getToken(PlSqlParser.LIST, 0);
+};
+
+Subpartition_by_listContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Subpartition_by_listContext.prototype.column_name = function() {
+ return this.getTypedRuleContext(Column_nameContext,0);
+};
+
+Subpartition_by_listContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Subpartition_by_listContext.prototype.subpartition_template = function() {
+ return this.getTypedRuleContext(Subpartition_templateContext,0);
+};
+
+Subpartition_by_listContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterSubpartition_by_list(this);
+ }
+};
+
+Subpartition_by_listContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitSubpartition_by_list(this);
+ }
+};
+
+Subpartition_by_listContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitSubpartition_by_list(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Subpartition_by_listContext = Subpartition_by_listContext;
+
+PlSqlParser.prototype.subpartition_by_list = function() {
+
+ var localctx = new Subpartition_by_listContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 580, PlSqlParser.RULE_subpartition_by_list);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6057;
+ this.match(PlSqlParser.SUBPARTITION);
+ this.state = 6058;
+ this.match(PlSqlParser.BY);
+ this.state = 6059;
+ this.match(PlSqlParser.LIST);
+ this.state = 6060;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 6061;
+ this.column_name();
+ this.state = 6062;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ this.state = 6064;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.SUBPARTITION) {
+ this.state = 6063;
+ this.subpartition_template();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Subpartition_by_hashContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_subpartition_by_hash;
+ return this;
+}
+
+Subpartition_by_hashContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Subpartition_by_hashContext.prototype.constructor = Subpartition_by_hashContext;
+
+Subpartition_by_hashContext.prototype.SUBPARTITION = function() {
+ return this.getToken(PlSqlParser.SUBPARTITION, 0);
+};
+
+Subpartition_by_hashContext.prototype.BY = function() {
+ return this.getToken(PlSqlParser.BY, 0);
+};
+
+Subpartition_by_hashContext.prototype.HASH = function() {
+ return this.getToken(PlSqlParser.HASH, 0);
+};
+
+Subpartition_by_hashContext.prototype.LEFT_PAREN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.LEFT_PAREN);
+ } else {
+ return this.getToken(PlSqlParser.LEFT_PAREN, i);
+ }
+};
+
+
+Subpartition_by_hashContext.prototype.column_name = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Column_nameContext);
+ } else {
+ return this.getTypedRuleContext(Column_nameContext,i);
+ }
+};
+
+Subpartition_by_hashContext.prototype.RIGHT_PAREN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.RIGHT_PAREN);
+ } else {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, i);
+ }
+};
+
+
+Subpartition_by_hashContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Subpartition_by_hashContext.prototype.SUBPARTITIONS = function() {
+ return this.getToken(PlSqlParser.SUBPARTITIONS, 0);
+};
+
+Subpartition_by_hashContext.prototype.UNSIGNED_INTEGER = function() {
+ return this.getToken(PlSqlParser.UNSIGNED_INTEGER, 0);
+};
+
+Subpartition_by_hashContext.prototype.subpartition_template = function() {
+ return this.getTypedRuleContext(Subpartition_templateContext,0);
+};
+
+Subpartition_by_hashContext.prototype.STORE = function() {
+ return this.getToken(PlSqlParser.STORE, 0);
+};
+
+Subpartition_by_hashContext.prototype.IN = function() {
+ return this.getToken(PlSqlParser.IN, 0);
+};
+
+Subpartition_by_hashContext.prototype.tablespace = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(TablespaceContext);
+ } else {
+ return this.getTypedRuleContext(TablespaceContext,i);
+ }
+};
+
+Subpartition_by_hashContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterSubpartition_by_hash(this);
+ }
+};
+
+Subpartition_by_hashContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitSubpartition_by_hash(this);
+ }
+};
+
+Subpartition_by_hashContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitSubpartition_by_hash(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Subpartition_by_hashContext = Subpartition_by_hashContext;
+
+PlSqlParser.prototype.subpartition_by_hash = function() {
+
+ var localctx = new Subpartition_by_hashContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 582, PlSqlParser.RULE_subpartition_by_hash);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6066;
+ this.match(PlSqlParser.SUBPARTITION);
+ this.state = 6067;
+ this.match(PlSqlParser.BY);
+ this.state = 6068;
+ this.match(PlSqlParser.HASH);
+ this.state = 6069;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 6070;
+ this.column_name();
+ this.state = 6075;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 6071;
+ this.match(PlSqlParser.COMMA);
+ this.state = 6072;
+ this.column_name();
+ this.state = 6077;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 6078;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ this.state = 6097;
+ this._errHandler.sync(this);
+ switch (this._input.LA(1)) {
+ case PlSqlParser.SUBPARTITIONS:
+ this.state = 6079;
+ this.match(PlSqlParser.SUBPARTITIONS);
+ this.state = 6080;
+ this.match(PlSqlParser.UNSIGNED_INTEGER);
+ this.state = 6094;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.STORE) {
+ this.state = 6081;
+ this.match(PlSqlParser.STORE);
+ this.state = 6082;
+ this.match(PlSqlParser.IN);
+ this.state = 6083;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 6084;
+ this.tablespace();
+ this.state = 6089;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 6085;
+ this.match(PlSqlParser.COMMA);
+ this.state = 6086;
+ this.tablespace();
+ this.state = 6091;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 6092;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ }
+
+ break;
+ case PlSqlParser.SUBPARTITION:
+ this.state = 6096;
+ this.subpartition_template();
+ break;
+ case PlSqlParser.PARTITIONS:
+ case PlSqlParser.LEFT_PAREN:
+ break;
+ default:
+ break;
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Subpartition_nameContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_subpartition_name;
+ return this;
+}
+
+Subpartition_nameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Subpartition_nameContext.prototype.constructor = Subpartition_nameContext;
+
+Subpartition_nameContext.prototype.partition_name = function() {
+ return this.getTypedRuleContext(Partition_nameContext,0);
+};
+
+Subpartition_nameContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterSubpartition_name(this);
+ }
+};
+
+Subpartition_nameContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitSubpartition_name(this);
+ }
+};
+
+Subpartition_nameContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitSubpartition_name(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Subpartition_nameContext = Subpartition_nameContext;
+
+PlSqlParser.prototype.subpartition_name = function() {
+
+ var localctx = new Subpartition_nameContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 584, PlSqlParser.RULE_subpartition_name);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6099;
+ this.partition_name();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Range_subpartition_descContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_range_subpartition_desc;
+ return this;
+}
+
+Range_subpartition_descContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Range_subpartition_descContext.prototype.constructor = Range_subpartition_descContext;
+
+Range_subpartition_descContext.prototype.SUBPARTITION = function() {
+ return this.getToken(PlSqlParser.SUBPARTITION, 0);
+};
+
+Range_subpartition_descContext.prototype.range_values_clause = function() {
+ return this.getTypedRuleContext(Range_values_clauseContext,0);
+};
+
+Range_subpartition_descContext.prototype.subpartition_name = function() {
+ return this.getTypedRuleContext(Subpartition_nameContext,0);
+};
+
+Range_subpartition_descContext.prototype.partitioning_storage_clause = function() {
+ return this.getTypedRuleContext(Partitioning_storage_clauseContext,0);
+};
+
+Range_subpartition_descContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterRange_subpartition_desc(this);
+ }
+};
+
+Range_subpartition_descContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitRange_subpartition_desc(this);
+ }
+};
+
+Range_subpartition_descContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitRange_subpartition_desc(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Range_subpartition_descContext = Range_subpartition_descContext;
+
+PlSqlParser.prototype.range_subpartition_desc = function() {
+
+ var localctx = new Range_subpartition_descContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 586, PlSqlParser.RULE_range_subpartition_desc);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6101;
+ this.match(PlSqlParser.SUBPARTITION);
+ this.state = 6103;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if((((_la) & ~0x1f) == 0 && ((1 << _la) & ((1 << PlSqlParser.ABORT) | (1 << PlSqlParser.ABS) | (1 << PlSqlParser.ACCESS) | (1 << PlSqlParser.ACCESSED) | (1 << PlSqlParser.ACCOUNT) | (1 << PlSqlParser.ACL) | (1 << PlSqlParser.ACOS) | (1 << PlSqlParser.ACTION) | (1 << PlSqlParser.ACTIONS) | (1 << PlSqlParser.ACTIVATE) | (1 << PlSqlParser.ACTIVE) | (1 << PlSqlParser.ACTIVE_COMPONENT) | (1 << PlSqlParser.ACTIVE_DATA) | (1 << PlSqlParser.ACTIVE_FUNCTION) | (1 << PlSqlParser.ACTIVE_TAG) | (1 << PlSqlParser.ACTIVITY) | (1 << PlSqlParser.ADAPTIVE_PLAN) | (1 << PlSqlParser.ADD) | (1 << PlSqlParser.ADD_COLUMN) | (1 << PlSqlParser.ADD_GROUP) | (1 << PlSqlParser.ADD_MONTHS) | (1 << PlSqlParser.ADJ_DATE) | (1 << PlSqlParser.ADMIN) | (1 << PlSqlParser.ADMINISTER) | (1 << PlSqlParser.ADMINISTRATOR) | (1 << PlSqlParser.ADVANCED) | (1 << PlSqlParser.ADVISE) | (1 << PlSqlParser.ADVISOR) | (1 << PlSqlParser.AFD_DISKSTRING) | (1 << PlSqlParser.AFTER) | (1 << PlSqlParser.AGENT))) !== 0) || ((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (PlSqlParser.AGGREGATE - 32)) | (1 << (PlSqlParser.A_LETTER - 32)) | (1 << (PlSqlParser.ALIAS - 32)) | (1 << (PlSqlParser.ALLOCATE - 32)) | (1 << (PlSqlParser.ALLOW - 32)) | (1 << (PlSqlParser.ALL_ROWS - 32)) | (1 << (PlSqlParser.ALWAYS - 32)) | (1 << (PlSqlParser.ANALYZE - 32)) | (1 << (PlSqlParser.ANCILLARY - 32)) | (1 << (PlSqlParser.AND_EQUAL - 32)) | (1 << (PlSqlParser.ANOMALY - 32)) | (1 << (PlSqlParser.ANSI_REARCH - 32)) | (1 << (PlSqlParser.ANTIJOIN - 32)) | (1 << (PlSqlParser.ANYSCHEMA - 32)) | (1 << (PlSqlParser.APPEND - 32)) | (1 << (PlSqlParser.APPENDCHILDXML - 32)) | (1 << (PlSqlParser.APPEND_VALUES - 32)) | (1 << (PlSqlParser.APPLICATION - 32)) | (1 << (PlSqlParser.APPLY - 32)) | (1 << (PlSqlParser.APPROX_COUNT_DISTINCT - 32)) | (1 << (PlSqlParser.ARCHIVAL - 32)) | (1 << (PlSqlParser.ARCHIVE - 32)) | (1 << (PlSqlParser.ARCHIVED - 32)) | (1 << (PlSqlParser.ARCHIVELOG - 32)) | (1 << (PlSqlParser.ARRAY - 32)) | (1 << (PlSqlParser.ASCII - 32)))) !== 0) || ((((_la - 64)) & ~0x1f) == 0 && ((1 << (_la - 64)) & ((1 << (PlSqlParser.ASCIISTR - 64)) | (1 << (PlSqlParser.ASIN - 64)) | (1 << (PlSqlParser.ASIS - 64)) | (1 << (PlSqlParser.ASSEMBLY - 64)) | (1 << (PlSqlParser.ASSIGN - 64)) | (1 << (PlSqlParser.ASSOCIATE - 64)) | (1 << (PlSqlParser.ASYNC - 64)) | (1 << (PlSqlParser.ASYNCHRONOUS - 64)) | (1 << (PlSqlParser.ATAN2 - 64)) | (1 << (PlSqlParser.ATAN - 64)) | (1 << (PlSqlParser.AT - 64)) | (1 << (PlSqlParser.ATTRIBUTE - 64)) | (1 << (PlSqlParser.ATTRIBUTES - 64)) | (1 << (PlSqlParser.AUTHENTICATED - 64)) | (1 << (PlSqlParser.AUTHENTICATION - 64)) | (1 << (PlSqlParser.AUTHID - 64)) | (1 << (PlSqlParser.AUTHORIZATION - 64)) | (1 << (PlSqlParser.AUTOALLOCATE - 64)) | (1 << (PlSqlParser.AUTO - 64)) | (1 << (PlSqlParser.AUTOEXTEND - 64)) | (1 << (PlSqlParser.AUTO_LOGIN - 64)) | (1 << (PlSqlParser.AUTOMATIC - 64)) | (1 << (PlSqlParser.AUTONOMOUS_TRANSACTION - 64)) | (1 << (PlSqlParser.AUTO_REOPTIMIZE - 64)) | (1 << (PlSqlParser.AVAILABILITY - 64)) | (1 << (PlSqlParser.AVRO - 64)) | (1 << (PlSqlParser.BACKGROUND - 64)) | (1 << (PlSqlParser.BACKUP - 64)) | (1 << (PlSqlParser.BASIC - 64)))) !== 0) || ((((_la - 96)) & ~0x1f) == 0 && ((1 << (_la - 96)) & ((1 << (PlSqlParser.BASICFILE - 96)) | (1 << (PlSqlParser.BATCH - 96)) | (1 << (PlSqlParser.BATCHSIZE - 96)) | (1 << (PlSqlParser.BATCH_TABLE_ACCESS_BY_ROWID - 96)) | (1 << (PlSqlParser.BECOME - 96)) | (1 << (PlSqlParser.BEFORE - 96)) | (1 << (PlSqlParser.BEGIN - 96)) | (1 << (PlSqlParser.BEGINNING - 96)) | (1 << (PlSqlParser.BEGIN_OUTLINE_DATA - 96)) | (1 << (PlSqlParser.BEHALF - 96)) | (1 << (PlSqlParser.BEQUEATH - 96)) | (1 << (PlSqlParser.BFILE - 96)) | (1 << (PlSqlParser.BFILENAME - 96)) | (1 << (PlSqlParser.BIGFILE - 96)) | (1 << (PlSqlParser.BINARY - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE_INFINITY - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE_NAN - 96)) | (1 << (PlSqlParser.BINARY_FLOAT - 96)) | (1 << (PlSqlParser.BINARY_FLOAT_INFINITY - 96)) | (1 << (PlSqlParser.BINARY_FLOAT_NAN - 96)) | (1 << (PlSqlParser.BINARY_INTEGER - 96)) | (1 << (PlSqlParser.BIND_AWARE - 96)) | (1 << (PlSqlParser.BINDING - 96)) | (1 << (PlSqlParser.BIN_TO_NUM - 96)) | (1 << (PlSqlParser.BITAND - 96)) | (1 << (PlSqlParser.BITMAP_AND - 96)) | (1 << (PlSqlParser.BITMAP - 96)) | (1 << (PlSqlParser.BITMAPS - 96)) | (1 << (PlSqlParser.BITMAP_TREE - 96)) | (1 << (PlSqlParser.BITS - 96)))) !== 0) || ((((_la - 128)) & ~0x1f) == 0 && ((1 << (_la - 128)) & ((1 << (PlSqlParser.BLOB - 128)) | (1 << (PlSqlParser.BLOCK - 128)) | (1 << (PlSqlParser.BLOCK_RANGE - 128)) | (1 << (PlSqlParser.BLOCKS - 128)) | (1 << (PlSqlParser.BLOCKSIZE - 128)) | (1 << (PlSqlParser.BODY - 128)) | (1 << (PlSqlParser.BOOLEAN - 128)) | (1 << (PlSqlParser.BOTH - 128)) | (1 << (PlSqlParser.BOUND - 128)) | (1 << (PlSqlParser.BRANCH - 128)) | (1 << (PlSqlParser.BREADTH - 128)) | (1 << (PlSqlParser.BROADCAST - 128)) | (1 << (PlSqlParser.BSON - 128)) | (1 << (PlSqlParser.BUFFER - 128)) | (1 << (PlSqlParser.BUFFER_CACHE - 128)) | (1 << (PlSqlParser.BUFFER_POOL - 128)) | (1 << (PlSqlParser.BUILD - 128)) | (1 << (PlSqlParser.BULK - 128)) | (1 << (PlSqlParser.BYPASS_RECURSIVE_CHECK - 128)) | (1 << (PlSqlParser.BYPASS_UJVC - 128)) | (1 << (PlSqlParser.BYTE - 128)) | (1 << (PlSqlParser.CACHE - 128)) | (1 << (PlSqlParser.CACHE_CB - 128)) | (1 << (PlSqlParser.CACHE_INSTANCES - 128)) | (1 << (PlSqlParser.CACHE_TEMP_TABLE - 128)) | (1 << (PlSqlParser.CACHING - 128)) | (1 << (PlSqlParser.CALCULATED - 128)) | (1 << (PlSqlParser.CALLBACK - 128)) | (1 << (PlSqlParser.CALL - 128)) | (1 << (PlSqlParser.CANCEL - 128)))) !== 0) || ((((_la - 160)) & ~0x1f) == 0 && ((1 << (_la - 160)) & ((1 << (PlSqlParser.CAPACITY - 160)) | (1 << (PlSqlParser.CARDINALITY - 160)) | (1 << (PlSqlParser.CASCADE - 160)) | (1 << (PlSqlParser.CASE - 160)) | (1 << (PlSqlParser.CAST - 160)) | (1 << (PlSqlParser.CATEGORY - 160)) | (1 << (PlSqlParser.CDBDEFAULT - 160)) | (1 << (PlSqlParser.CEIL - 160)) | (1 << (PlSqlParser.CELL_FLASH_CACHE - 160)) | (1 << (PlSqlParser.CERTIFICATE - 160)) | (1 << (PlSqlParser.CFILE - 160)) | (1 << (PlSqlParser.CHAINED - 160)) | (1 << (PlSqlParser.CHANGE - 160)) | (1 << (PlSqlParser.CHANGE_DUPKEY_ERROR_INDEX - 160)) | (1 << (PlSqlParser.CHARACTER - 160)) | (1 << (PlSqlParser.CHAR - 160)) | (1 << (PlSqlParser.CHAR_CS - 160)) | (1 << (PlSqlParser.CHARTOROWID - 160)) | (1 << (PlSqlParser.CHECK_ACL_REWRITE - 160)) | (1 << (PlSqlParser.CHECKPOINT - 160)) | (1 << (PlSqlParser.CHILD - 160)) | (1 << (PlSqlParser.CHOOSE - 160)) | (1 << (PlSqlParser.CHR - 160)) | (1 << (PlSqlParser.CHUNK - 160)) | (1 << (PlSqlParser.CLASS - 160)) | (1 << (PlSqlParser.CLASSIFIER - 160)) | (1 << (PlSqlParser.CLEANUP - 160)) | (1 << (PlSqlParser.CLEAR - 160)) | (1 << (PlSqlParser.C_LETTER - 160)) | (1 << (PlSqlParser.CLIENT - 160)))) !== 0) || ((((_la - 192)) & ~0x1f) == 0 && ((1 << (_la - 192)) & ((1 << (PlSqlParser.CLOB - 192)) | (1 << (PlSqlParser.CLONE - 192)) | (1 << (PlSqlParser.CLOSE_CACHED_OPEN_CURSORS - 192)) | (1 << (PlSqlParser.CLOSE - 192)) | (1 << (PlSqlParser.CLUSTER_BY_ROWID - 192)) | (1 << (PlSqlParser.CLUSTER - 192)) | (1 << (PlSqlParser.CLUSTER_DETAILS - 192)) | (1 << (PlSqlParser.CLUSTER_DISTANCE - 192)) | (1 << (PlSqlParser.CLUSTER_ID - 192)) | (1 << (PlSqlParser.CLUSTERING - 192)) | (1 << (PlSqlParser.CLUSTERING_FACTOR - 192)) | (1 << (PlSqlParser.CLUSTER_PROBABILITY - 192)) | (1 << (PlSqlParser.CLUSTER_SET - 192)) | (1 << (PlSqlParser.COALESCE - 192)) | (1 << (PlSqlParser.COALESCE_SQ - 192)) | (1 << (PlSqlParser.COARSE - 192)) | (1 << (PlSqlParser.CO_AUTH_IND - 192)) | (1 << (PlSqlParser.COLD - 192)) | (1 << (PlSqlParser.COLLECT - 192)) | (1 << (PlSqlParser.COLUMNAR - 192)) | (1 << (PlSqlParser.COLUMN_AUTH_INDICATOR - 192)) | (1 << (PlSqlParser.COLUMN - 192)) | (1 << (PlSqlParser.COLUMNS - 192)) | (1 << (PlSqlParser.COLUMN_STATS - 192)) | (1 << (PlSqlParser.COLUMN_VALUE - 192)) | (1 << (PlSqlParser.COMMENT - 192)) | (1 << (PlSqlParser.COMMIT - 192)) | (1 << (PlSqlParser.COMMITTED - 192)) | (1 << (PlSqlParser.COMMON_DATA - 192)) | (1 << (PlSqlParser.COMPACT - 192)) | (1 << (PlSqlParser.COMPATIBILITY - 192)) | (1 << (PlSqlParser.COMPILE - 192)))) !== 0) || ((((_la - 224)) & ~0x1f) == 0 && ((1 << (_la - 224)) & ((1 << (PlSqlParser.COMPLETE - 224)) | (1 << (PlSqlParser.COMPLIANCE - 224)) | (1 << (PlSqlParser.COMPONENT - 224)) | (1 << (PlSqlParser.COMPONENTS - 224)) | (1 << (PlSqlParser.COMPOSE - 224)) | (1 << (PlSqlParser.COMPOSITE - 224)) | (1 << (PlSqlParser.COMPOSITE_LIMIT - 224)) | (1 << (PlSqlParser.COMPOUND - 224)) | (1 << (PlSqlParser.COMPUTE - 224)) | (1 << (PlSqlParser.CONCAT - 224)) | (1 << (PlSqlParser.CON_DBID_TO_ID - 224)) | (1 << (PlSqlParser.CONDITIONAL - 224)) | (1 << (PlSqlParser.CONDITION - 224)) | (1 << (PlSqlParser.CONFIRM - 224)) | (1 << (PlSqlParser.CONFORMING - 224)) | (1 << (PlSqlParser.CON_GUID_TO_ID - 224)) | (1 << (PlSqlParser.CON_ID - 224)) | (1 << (PlSqlParser.CON_NAME_TO_ID - 224)) | (1 << (PlSqlParser.CONNECT_BY_CB_WHR_ONLY - 224)) | (1 << (PlSqlParser.CONNECT_BY_COMBINE_SW - 224)) | (1 << (PlSqlParser.CONNECT_BY_COST_BASED - 224)) | (1 << (PlSqlParser.CONNECT_BY_ELIM_DUPS - 224)) | (1 << (PlSqlParser.CONNECT_BY_FILTERING - 224)) | (1 << (PlSqlParser.CONNECT_BY_ISCYCLE - 224)) | (1 << (PlSqlParser.CONNECT_BY_ISLEAF - 224)) | (1 << (PlSqlParser.CONNECT_BY_ROOT - 224)) | (1 << (PlSqlParser.CONNECT_TIME - 224)) | (1 << (PlSqlParser.CONSIDER - 224)) | (1 << (PlSqlParser.CONSISTENT - 224)) | (1 << (PlSqlParser.CONSTANT - 224)))) !== 0) || ((((_la - 256)) & ~0x1f) == 0 && ((1 << (_la - 256)) & ((1 << (PlSqlParser.CONST - 256)) | (1 << (PlSqlParser.CONSTRAINT - 256)) | (1 << (PlSqlParser.CONSTRAINTS - 256)) | (1 << (PlSqlParser.CONSTRUCTOR - 256)) | (1 << (PlSqlParser.CONTAINER - 256)) | (1 << (PlSqlParser.CONTAINER_DATA - 256)) | (1 << (PlSqlParser.CONTAINERS - 256)) | (1 << (PlSqlParser.CONTENT - 256)) | (1 << (PlSqlParser.CONTENTS - 256)) | (1 << (PlSqlParser.CONTEXT - 256)) | (1 << (PlSqlParser.CONTINUE - 256)) | (1 << (PlSqlParser.CONTROLFILE - 256)) | (1 << (PlSqlParser.CON_UID_TO_ID - 256)) | (1 << (PlSqlParser.CONVERT - 256)) | (1 << (PlSqlParser.COOKIE - 256)) | (1 << (PlSqlParser.COPY - 256)) | (1 << (PlSqlParser.CORR_K - 256)) | (1 << (PlSqlParser.CORR_S - 256)) | (1 << (PlSqlParser.CORRUPTION - 256)) | (1 << (PlSqlParser.CORRUPT_XID_ALL - 256)) | (1 << (PlSqlParser.CORRUPT_XID - 256)) | (1 << (PlSqlParser.COS - 256)) | (1 << (PlSqlParser.COSH - 256)) | (1 << (PlSqlParser.COST - 256)) | (1 << (PlSqlParser.COST_XML_QUERY_REWRITE - 256)) | (1 << (PlSqlParser.COUNT - 256)) | (1 << (PlSqlParser.COVAR_POP - 256)) | (1 << (PlSqlParser.COVAR_SAMP - 256)) | (1 << (PlSqlParser.CPU_COSTING - 256)) | (1 << (PlSqlParser.CPU_PER_CALL - 256)) | (1 << (PlSqlParser.CPU_PER_SESSION - 256)) | (1 << (PlSqlParser.CRASH - 256)))) !== 0) || ((((_la - 289)) & ~0x1f) == 0 && ((1 << (_la - 289)) & ((1 << (PlSqlParser.CREATE_FILE_DEST - 289)) | (1 << (PlSqlParser.CREATE_STORED_OUTLINES - 289)) | (1 << (PlSqlParser.CREATION - 289)) | (1 << (PlSqlParser.CREDENTIAL - 289)) | (1 << (PlSqlParser.CRITICAL - 289)) | (1 << (PlSqlParser.CROSS - 289)) | (1 << (PlSqlParser.CROSSEDITION - 289)) | (1 << (PlSqlParser.CSCONVERT - 289)) | (1 << (PlSqlParser.CUBE_AJ - 289)) | (1 << (PlSqlParser.CUBE - 289)) | (1 << (PlSqlParser.CUBE_GB - 289)) | (1 << (PlSqlParser.CUBE_SJ - 289)) | (1 << (PlSqlParser.CUME_DISTM - 289)) | (1 << (PlSqlParser.CURRENT - 289)) | (1 << (PlSqlParser.CURRENT_DATE - 289)) | (1 << (PlSqlParser.CURRENT_SCHEMA - 289)) | (1 << (PlSqlParser.CURRENT_TIME - 289)) | (1 << (PlSqlParser.CURRENT_TIMESTAMP - 289)) | (1 << (PlSqlParser.CURRENT_USER - 289)) | (1 << (PlSqlParser.CURRENTV - 289)) | (1 << (PlSqlParser.CURSOR - 289)) | (1 << (PlSqlParser.CURSOR_SHARING_EXACT - 289)) | (1 << (PlSqlParser.CURSOR_SPECIFIC_SEGMENT - 289)) | (1 << (PlSqlParser.CUSTOMDATUM - 289)) | (1 << (PlSqlParser.CV - 289)) | (1 << (PlSqlParser.CYCLE - 289)) | (1 << (PlSqlParser.DANGLING - 289)) | (1 << (PlSqlParser.DATABASE - 289)) | (1 << (PlSqlParser.DATA - 289)) | (1 << (PlSqlParser.DATAFILE - 289)) | (1 << (PlSqlParser.DATAFILES - 289)))) !== 0) || ((((_la - 321)) & ~0x1f) == 0 && ((1 << (_la - 321)) & ((1 << (PlSqlParser.DATAMOVEMENT - 321)) | (1 << (PlSqlParser.DATAOBJNO - 321)) | (1 << (PlSqlParser.DATAOBJ_TO_MAT_PARTITION - 321)) | (1 << (PlSqlParser.DATAOBJ_TO_PARTITION - 321)) | (1 << (PlSqlParser.DATAPUMP - 321)) | (1 << (PlSqlParser.DATA_SECURITY_REWRITE_LIMIT - 321)) | (1 << (PlSqlParser.DATE_MODE - 321)) | (1 << (PlSqlParser.DAY - 321)) | (1 << (PlSqlParser.DAYS - 321)) | (1 << (PlSqlParser.DBA - 321)) | (1 << (PlSqlParser.DBA_RECYCLEBIN - 321)) | (1 << (PlSqlParser.DBMS_STATS - 321)) | (1 << (PlSqlParser.DB_ROLE_CHANGE - 321)) | (1 << (PlSqlParser.DBTIMEZONE - 321)) | (1 << (PlSqlParser.DB_UNIQUE_NAME - 321)) | (1 << (PlSqlParser.DB_VERSION - 321)) | (1 << (PlSqlParser.DDL - 321)) | (1 << (PlSqlParser.DEALLOCATE - 321)) | (1 << (PlSqlParser.DEBUG - 321)) | (1 << (PlSqlParser.DEBUGGER - 321)) | (1 << (PlSqlParser.DEC - 321)) | (1 << (PlSqlParser.DECIMAL - 321)) | (1 << (PlSqlParser.DECLARE - 321)) | (1 << (PlSqlParser.DECOMPOSE - 321)) | (1 << (PlSqlParser.DECORRELATE - 321)) | (1 << (PlSqlParser.DECR - 321)) | (1 << (PlSqlParser.DECREMENT - 321)) | (1 << (PlSqlParser.DECRYPT - 321)) | (1 << (PlSqlParser.DEDUPLICATE - 321)) | (1 << (PlSqlParser.DEFAULTS - 321)))) !== 0) || ((((_la - 353)) & ~0x1f) == 0 && ((1 << (_la - 353)) & ((1 << (PlSqlParser.DEFERRABLE - 353)) | (1 << (PlSqlParser.DEFERRED - 353)) | (1 << (PlSqlParser.DEFINED - 353)) | (1 << (PlSqlParser.DEFINE - 353)) | (1 << (PlSqlParser.DEFINER - 353)) | (1 << (PlSqlParser.DEGREE - 353)) | (1 << (PlSqlParser.DELAY - 353)) | (1 << (PlSqlParser.DELEGATE - 353)) | (1 << (PlSqlParser.DELETE_ALL - 353)) | (1 << (PlSqlParser.DELETE - 353)) | (1 << (PlSqlParser.DELETEXML - 353)) | (1 << (PlSqlParser.DEMAND - 353)) | (1 << (PlSqlParser.DENSE_RANKM - 353)) | (1 << (PlSqlParser.DEPENDENT - 353)) | (1 << (PlSqlParser.DEPTH - 353)) | (1 << (PlSqlParser.DEQUEUE - 353)) | (1 << (PlSqlParser.DEREF - 353)) | (1 << (PlSqlParser.DEREF_NO_REWRITE - 353)) | (1 << (PlSqlParser.DESTROY - 353)) | (1 << (PlSqlParser.DETACHED - 353)) | (1 << (PlSqlParser.DETERMINES - 353)) | (1 << (PlSqlParser.DETERMINISTIC - 353)) | (1 << (PlSqlParser.DICTIONARY - 353)) | (1 << (PlSqlParser.DIMENSION - 353)) | (1 << (PlSqlParser.DIMENSIONS - 353)) | (1 << (PlSqlParser.DIRECT_LOAD - 353)) | (1 << (PlSqlParser.DIRECTORY - 353)) | (1 << (PlSqlParser.DIRECT_PATH - 353)) | (1 << (PlSqlParser.DISABLE_ALL - 353)) | (1 << (PlSqlParser.DISABLE - 353)) | (1 << (PlSqlParser.DISABLE_PARALLEL_DML - 353)))) !== 0) || ((((_la - 385)) & ~0x1f) == 0 && ((1 << (_la - 385)) & ((1 << (PlSqlParser.DISABLE_PRESET - 385)) | (1 << (PlSqlParser.DISABLE_RPKE - 385)) | (1 << (PlSqlParser.DISALLOW - 385)) | (1 << (PlSqlParser.DISASSOCIATE - 385)) | (1 << (PlSqlParser.DISCARD - 385)) | (1 << (PlSqlParser.DISCONNECT - 385)) | (1 << (PlSqlParser.DISK - 385)) | (1 << (PlSqlParser.DISKGROUP - 385)) | (1 << (PlSqlParser.DISKS - 385)) | (1 << (PlSqlParser.DISMOUNT - 385)) | (1 << (PlSqlParser.DISTINGUISHED - 385)) | (1 << (PlSqlParser.DISTRIBUTED - 385)) | (1 << (PlSqlParser.DISTRIBUTE - 385)) | (1 << (PlSqlParser.DML - 385)) | (1 << (PlSqlParser.DML_UPDATE - 385)) | (1 << (PlSqlParser.DOCFIDELITY - 385)) | (1 << (PlSqlParser.DOCUMENT - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_FILTER - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_NO_SORT - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_SORT - 385)) | (1 << (PlSqlParser.DOUBLE - 385)) | (1 << (PlSqlParser.DOWNGRADE - 385)) | (1 << (PlSqlParser.DRIVING_SITE - 385)) | (1 << (PlSqlParser.DROP_COLUMN - 385)) | (1 << (PlSqlParser.DROP_GROUP - 385)) | (1 << (PlSqlParser.DSINTERVAL_UNCONSTRAINED - 385)) | (1 << (PlSqlParser.DST_UPGRADE_INSERT_CONV - 385)) | (1 << (PlSqlParser.DUMP - 385)))) !== 0) || ((((_la - 417)) & ~0x1f) == 0 && ((1 << (_la - 417)) & ((1 << (PlSqlParser.DUPLICATE - 417)) | (1 << (PlSqlParser.DV - 417)) | (1 << (PlSqlParser.DYNAMIC - 417)) | (1 << (PlSqlParser.DYNAMIC_SAMPLING - 417)) | (1 << (PlSqlParser.DYNAMIC_SAMPLING_EST_CDN - 417)) | (1 << (PlSqlParser.EACH - 417)) | (1 << (PlSqlParser.EDITIONABLE - 417)) | (1 << (PlSqlParser.EDITION - 417)) | (1 << (PlSqlParser.EDITIONING - 417)) | (1 << (PlSqlParser.EDITIONS - 417)) | (1 << (PlSqlParser.ELEMENT - 417)) | (1 << (PlSqlParser.ELIM_GROUPBY - 417)) | (1 << (PlSqlParser.ELIMINATE_JOIN - 417)) | (1 << (PlSqlParser.ELIMINATE_OBY - 417)) | (1 << (PlSqlParser.ELIMINATE_OUTER_JOIN - 417)) | (1 << (PlSqlParser.EM - 417)) | (1 << (PlSqlParser.EMPTY_BLOB - 417)) | (1 << (PlSqlParser.EMPTY_CLOB - 417)) | (1 << (PlSqlParser.EMPTY - 417)) | (1 << (PlSqlParser.ENABLE_ALL - 417)) | (1 << (PlSqlParser.ENABLE - 417)) | (1 << (PlSqlParser.ENABLE_PARALLEL_DML - 417)) | (1 << (PlSqlParser.ENABLE_PRESET - 417)) | (1 << (PlSqlParser.ENCODING - 417)) | (1 << (PlSqlParser.ENCRYPT - 417)) | (1 << (PlSqlParser.ENCRYPTION - 417)) | (1 << (PlSqlParser.END_OUTLINE_DATA - 417)) | (1 << (PlSqlParser.ENFORCED - 417)) | (1 << (PlSqlParser.ENFORCE - 417)))) !== 0) || ((((_la - 449)) & ~0x1f) == 0 && ((1 << (_la - 449)) & ((1 << (PlSqlParser.ENQUEUE - 449)) | (1 << (PlSqlParser.ENTERPRISE - 449)) | (1 << (PlSqlParser.ENTITYESCAPING - 449)) | (1 << (PlSqlParser.ENTRY - 449)) | (1 << (PlSqlParser.EQUIPART - 449)) | (1 << (PlSqlParser.ERR - 449)) | (1 << (PlSqlParser.ERROR_ARGUMENT - 449)) | (1 << (PlSqlParser.ERROR - 449)) | (1 << (PlSqlParser.ERROR_ON_OVERLAP_TIME - 449)) | (1 << (PlSqlParser.ERRORS - 449)) | (1 << (PlSqlParser.ESCAPE - 449)) | (1 << (PlSqlParser.ESTIMATE - 449)) | (1 << (PlSqlParser.EVAL - 449)) | (1 << (PlSqlParser.EVALNAME - 449)) | (1 << (PlSqlParser.EVALUATE - 449)) | (1 << (PlSqlParser.EVALUATION - 449)) | (1 << (PlSqlParser.EVENTS - 449)) | (1 << (PlSqlParser.EVERY - 449)) | (1 << (PlSqlParser.EXCEPT - 449)) | (1 << (PlSqlParser.EXCEPTION - 449)) | (1 << (PlSqlParser.EXCEPTION_INIT - 449)) | (1 << (PlSqlParser.EXCEPTIONS - 449)) | (1 << (PlSqlParser.EXCHANGE - 449)) | (1 << (PlSqlParser.EXCLUDE - 449)) | (1 << (PlSqlParser.EXCLUDING - 449)) | (1 << (PlSqlParser.EXECUTE - 449)) | (1 << (PlSqlParser.EXEMPT - 449)) | (1 << (PlSqlParser.EXISTING - 449)) | (1 << (PlSqlParser.EXISTS - 449)) | (1 << (PlSqlParser.EXISTSNODE - 449)) | (1 << (PlSqlParser.EXIT - 449)))) !== 0) || ((((_la - 481)) & ~0x1f) == 0 && ((1 << (_la - 481)) & ((1 << (PlSqlParser.EXPAND_GSET_TO_UNION - 481)) | (1 << (PlSqlParser.EXPAND_TABLE - 481)) | (1 << (PlSqlParser.EXP - 481)) | (1 << (PlSqlParser.EXPIRE - 481)) | (1 << (PlSqlParser.EXPLAIN - 481)) | (1 << (PlSqlParser.EXPLOSION - 481)) | (1 << (PlSqlParser.EXPORT - 481)) | (1 << (PlSqlParser.EXPR_CORR_CHECK - 481)) | (1 << (PlSqlParser.EXPRESS - 481)) | (1 << (PlSqlParser.EXTENDS - 481)) | (1 << (PlSqlParser.EXTENT - 481)) | (1 << (PlSqlParser.EXTENTS - 481)) | (1 << (PlSqlParser.EXTERNAL - 481)) | (1 << (PlSqlParser.EXTERNALLY - 481)) | (1 << (PlSqlParser.EXTRACTCLOBXML - 481)) | (1 << (PlSqlParser.EXTRACT - 481)) | (1 << (PlSqlParser.EXTRACTVALUE - 481)) | (1 << (PlSqlParser.EXTRA - 481)) | (1 << (PlSqlParser.FACILITY - 481)) | (1 << (PlSqlParser.FACT - 481)) | (1 << (PlSqlParser.FACTOR - 481)) | (1 << (PlSqlParser.FACTORIZE_JOIN - 481)) | (1 << (PlSqlParser.FAILED - 481)) | (1 << (PlSqlParser.FAILED_LOGIN_ATTEMPTS - 481)) | (1 << (PlSqlParser.FAILGROUP - 481)) | (1 << (PlSqlParser.FAILOVER - 481)) | (1 << (PlSqlParser.FAILURE - 481)) | (1 << (PlSqlParser.FALSE - 481)) | (1 << (PlSqlParser.FAMILY - 481)) | (1 << (PlSqlParser.FAR - 481)) | (1 << (PlSqlParser.FAST - 481)) | (1 << (PlSqlParser.FASTSTART - 481)))) !== 0) || ((((_la - 513)) & ~0x1f) == 0 && ((1 << (_la - 513)) & ((1 << (PlSqlParser.FBTSCAN - 513)) | (1 << (PlSqlParser.FEATURE_DETAILS - 513)) | (1 << (PlSqlParser.FEATURE_ID - 513)) | (1 << (PlSqlParser.FEATURE_SET - 513)) | (1 << (PlSqlParser.FEATURE_VALUE - 513)) | (1 << (PlSqlParser.FETCH - 513)) | (1 << (PlSqlParser.FILE - 513)) | (1 << (PlSqlParser.FILE_NAME_CONVERT - 513)) | (1 << (PlSqlParser.FILESYSTEM_LIKE_LOGGING - 513)) | (1 << (PlSqlParser.FILTER - 513)) | (1 << (PlSqlParser.FINAL - 513)) | (1 << (PlSqlParser.FINE - 513)) | (1 << (PlSqlParser.FINISH - 513)) | (1 << (PlSqlParser.FIRST - 513)) | (1 << (PlSqlParser.FIRSTM - 513)) | (1 << (PlSqlParser.FIRST_ROWS - 513)) | (1 << (PlSqlParser.FIRST_VALUE - 513)) | (1 << (PlSqlParser.FIXED_VIEW_DATA - 513)) | (1 << (PlSqlParser.FLAGGER - 513)) | (1 << (PlSqlParser.FLASHBACK - 513)) | (1 << (PlSqlParser.FLASH_CACHE - 513)) | (1 << (PlSqlParser.FLOAT - 513)) | (1 << (PlSqlParser.FLOB - 513)) | (1 << (PlSqlParser.FLOOR - 513)) | (1 << (PlSqlParser.FLUSH - 513)) | (1 << (PlSqlParser.FOLDER - 513)) | (1 << (PlSqlParser.FOLLOWING - 513)) | (1 << (PlSqlParser.FOLLOWS - 513)) | (1 << (PlSqlParser.FORALL - 513)) | (1 << (PlSqlParser.FORCE - 513)) | (1 << (PlSqlParser.FORCE_XML_QUERY_REWRITE - 513)) | (1 << (PlSqlParser.FOREIGN - 513)))) !== 0) || ((((_la - 545)) & ~0x1f) == 0 && ((1 << (_la - 545)) & ((1 << (PlSqlParser.FOREVER - 545)) | (1 << (PlSqlParser.FORMAT - 545)) | (1 << (PlSqlParser.FORWARD - 545)) | (1 << (PlSqlParser.FRAGMENT_NUMBER - 545)) | (1 << (PlSqlParser.FREELIST - 545)) | (1 << (PlSqlParser.FREELISTS - 545)) | (1 << (PlSqlParser.FREEPOOLS - 545)) | (1 << (PlSqlParser.FRESH - 545)) | (1 << (PlSqlParser.FROM_TZ - 545)) | (1 << (PlSqlParser.FULL - 545)) | (1 << (PlSqlParser.FULL_OUTER_JOIN_TO_OUTER - 545)) | (1 << (PlSqlParser.FUNCTION - 545)) | (1 << (PlSqlParser.FUNCTIONS - 545)) | (1 << (PlSqlParser.GATHER_OPTIMIZER_STATISTICS - 545)) | (1 << (PlSqlParser.GATHER_PLAN_STATISTICS - 545)) | (1 << (PlSqlParser.GBY_CONC_ROLLUP - 545)) | (1 << (PlSqlParser.GBY_PUSHDOWN - 545)) | (1 << (PlSqlParser.GENERATED - 545)) | (1 << (PlSqlParser.GET - 545)) | (1 << (PlSqlParser.GLOBAL - 545)) | (1 << (PlSqlParser.GLOBALLY - 545)) | (1 << (PlSqlParser.GLOBAL_NAME - 545)) | (1 << (PlSqlParser.GLOBAL_TOPIC_ENABLED - 545)) | (1 << (PlSqlParser.GROUP_BY - 545)) | (1 << (PlSqlParser.GROUP_ID - 545)) | (1 << (PlSqlParser.GROUPING - 545)) | (1 << (PlSqlParser.GROUPING_ID - 545)))) !== 0) || ((((_la - 577)) & ~0x1f) == 0 && ((1 << (_la - 577)) & ((1 << (PlSqlParser.GROUPS - 577)) | (1 << (PlSqlParser.GUARANTEED - 577)) | (1 << (PlSqlParser.GUARANTEE - 577)) | (1 << (PlSqlParser.GUARD - 577)) | (1 << (PlSqlParser.HASH_AJ - 577)) | (1 << (PlSqlParser.HASH - 577)) | (1 << (PlSqlParser.HASHKEYS - 577)) | (1 << (PlSqlParser.HASH_SJ - 577)) | (1 << (PlSqlParser.HEADER - 577)) | (1 << (PlSqlParser.HEAP - 577)) | (1 << (PlSqlParser.HELP - 577)) | (1 << (PlSqlParser.HEXTORAW - 577)) | (1 << (PlSqlParser.HEXTOREF - 577)) | (1 << (PlSqlParser.HIDDEN_KEYWORD - 577)) | (1 << (PlSqlParser.HIDE - 577)) | (1 << (PlSqlParser.HIERARCHY - 577)) | (1 << (PlSqlParser.HIGH - 577)) | (1 << (PlSqlParser.HINTSET_BEGIN - 577)) | (1 << (PlSqlParser.HINTSET_END - 577)) | (1 << (PlSqlParser.HOT - 577)) | (1 << (PlSqlParser.HOUR - 577)) | (1 << (PlSqlParser.HWM_BROKERED - 577)) | (1 << (PlSqlParser.HYBRID - 577)) | (1 << (PlSqlParser.IDENTIFIER - 577)) | (1 << (PlSqlParser.IDENTITY - 577)) | (1 << (PlSqlParser.IDGENERATORS - 577)) | (1 << (PlSqlParser.ID - 577)) | (1 << (PlSqlParser.IDLE_TIME - 577)) | (1 << (PlSqlParser.IF - 577)) | (1 << (PlSqlParser.IGNORE - 577)))) !== 0) || ((((_la - 609)) & ~0x1f) == 0 && ((1 << (_la - 609)) & ((1 << (PlSqlParser.IGNORE_OPTIM_EMBEDDED_HINTS - 609)) | (1 << (PlSqlParser.IGNORE_ROW_ON_DUPKEY_INDEX - 609)) | (1 << (PlSqlParser.IGNORE_WHERE_CLAUSE - 609)) | (1 << (PlSqlParser.ILM - 609)) | (1 << (PlSqlParser.IMMEDIATE - 609)) | (1 << (PlSqlParser.IMPACT - 609)) | (1 << (PlSqlParser.IMPORT - 609)) | (1 << (PlSqlParser.INACTIVE - 609)) | (1 << (PlSqlParser.INCLUDE - 609)) | (1 << (PlSqlParser.INCLUDE_VERSION - 609)) | (1 << (PlSqlParser.INCLUDING - 609)) | (1 << (PlSqlParser.INCREMENTAL - 609)) | (1 << (PlSqlParser.INCREMENT - 609)) | (1 << (PlSqlParser.INCR - 609)) | (1 << (PlSqlParser.INDENT - 609)) | (1 << (PlSqlParser.INDEX_ASC - 609)) | (1 << (PlSqlParser.INDEX_COMBINE - 609)) | (1 << (PlSqlParser.INDEX_DESC - 609)) | (1 << (PlSqlParser.INDEXED - 609)) | (1 << (PlSqlParser.INDEXES - 609)) | (1 << (PlSqlParser.INDEX_FFS - 609)) | (1 << (PlSqlParser.INDEX_FILTER - 609)) | (1 << (PlSqlParser.INDEXING - 609)) | (1 << (PlSqlParser.INDEX_JOIN - 609)) | (1 << (PlSqlParser.INDEX_ROWS - 609)) | (1 << (PlSqlParser.INDEX_RRS - 609)) | (1 << (PlSqlParser.INDEX_RS_ASC - 609)) | (1 << (PlSqlParser.INDEX_RS_DESC - 609)) | (1 << (PlSqlParser.INDEX_RS - 609)) | (1 << (PlSqlParser.INDEX_SCAN - 609)) | (1 << (PlSqlParser.INDEX_SKIP_SCAN - 609)))) !== 0) || ((((_la - 641)) & ~0x1f) == 0 && ((1 << (_la - 641)) & ((1 << (PlSqlParser.INDEX_SS_ASC - 641)) | (1 << (PlSqlParser.INDEX_SS_DESC - 641)) | (1 << (PlSqlParser.INDEX_SS - 641)) | (1 << (PlSqlParser.INDEX_STATS - 641)) | (1 << (PlSqlParser.INDEXTYPE - 641)) | (1 << (PlSqlParser.INDEXTYPES - 641)) | (1 << (PlSqlParser.INDICATOR - 641)) | (1 << (PlSqlParser.INDICES - 641)) | (1 << (PlSqlParser.INFINITE - 641)) | (1 << (PlSqlParser.INFORMATIONAL - 641)) | (1 << (PlSqlParser.INHERIT - 641)) | (1 << (PlSqlParser.INITCAP - 641)) | (1 << (PlSqlParser.INITIAL - 641)) | (1 << (PlSqlParser.INITIALIZED - 641)) | (1 << (PlSqlParser.INITIALLY - 641)) | (1 << (PlSqlParser.INITRANS - 641)) | (1 << (PlSqlParser.INLINE - 641)) | (1 << (PlSqlParser.INLINE_XMLTYPE_NT - 641)) | (1 << (PlSqlParser.INMEMORY - 641)) | (1 << (PlSqlParser.IN_MEMORY_METADATA - 641)) | (1 << (PlSqlParser.INMEMORY_PRUNING - 641)) | (1 << (PlSqlParser.INNER - 641)) | (1 << (PlSqlParser.INOUT - 641)) | (1 << (PlSqlParser.INPLACE - 641)) | (1 << (PlSqlParser.INSERTCHILDXMLAFTER - 641)) | (1 << (PlSqlParser.INSERTCHILDXMLBEFORE - 641)) | (1 << (PlSqlParser.INSERTCHILDXML - 641)) | (1 << (PlSqlParser.INSERTXMLAFTER - 641)) | (1 << (PlSqlParser.INSERTXMLBEFORE - 641)) | (1 << (PlSqlParser.INSTANCE - 641)))) !== 0) || ((((_la - 673)) & ~0x1f) == 0 && ((1 << (_la - 673)) & ((1 << (PlSqlParser.INSTANCES - 673)) | (1 << (PlSqlParser.INSTANTIABLE - 673)) | (1 << (PlSqlParser.INSTANTLY - 673)) | (1 << (PlSqlParser.INSTEAD - 673)) | (1 << (PlSqlParser.INSTR2 - 673)) | (1 << (PlSqlParser.INSTR4 - 673)) | (1 << (PlSqlParser.INSTRB - 673)) | (1 << (PlSqlParser.INSTRC - 673)) | (1 << (PlSqlParser.INSTR - 673)) | (1 << (PlSqlParser.INTEGER - 673)) | (1 << (PlSqlParser.INTERLEAVED - 673)) | (1 << (PlSqlParser.INTERMEDIATE - 673)) | (1 << (PlSqlParser.INTERNAL_CONVERT - 673)) | (1 << (PlSqlParser.INTERNAL_USE - 673)) | (1 << (PlSqlParser.INTERPRETED - 673)) | (1 << (PlSqlParser.INTERVAL - 673)) | (1 << (PlSqlParser.INT - 673)) | (1 << (PlSqlParser.INVALIDATE - 673)) | (1 << (PlSqlParser.INVISIBLE - 673)) | (1 << (PlSqlParser.IN_XQUERY - 673)) | (1 << (PlSqlParser.ISOLATION - 673)) | (1 << (PlSqlParser.ISOLATION_LEVEL - 673)) | (1 << (PlSqlParser.ITERATE - 673)) | (1 << (PlSqlParser.ITERATION_NUMBER - 673)) | (1 << (PlSqlParser.JAVA - 673)) | (1 << (PlSqlParser.JOB - 673)) | (1 << (PlSqlParser.JOIN - 673)) | (1 << (PlSqlParser.JSON_ARRAYAGG - 673)) | (1 << (PlSqlParser.JSON_ARRAY - 673)))) !== 0) || ((((_la - 705)) & ~0x1f) == 0 && ((1 << (_la - 705)) & ((1 << (PlSqlParser.JSON_EQUAL - 705)) | (1 << (PlSqlParser.JSON_EXISTS2 - 705)) | (1 << (PlSqlParser.JSON_EXISTS - 705)) | (1 << (PlSqlParser.JSONGET - 705)) | (1 << (PlSqlParser.JSON - 705)) | (1 << (PlSqlParser.JSON_OBJECTAGG - 705)) | (1 << (PlSqlParser.JSON_OBJECT - 705)) | (1 << (PlSqlParser.JSONPARSE - 705)) | (1 << (PlSqlParser.JSON_QUERY - 705)) | (1 << (PlSqlParser.JSON_SERIALIZE - 705)) | (1 << (PlSqlParser.JSON_TABLE - 705)) | (1 << (PlSqlParser.JSON_TEXTCONTAINS2 - 705)) | (1 << (PlSqlParser.JSON_TEXTCONTAINS - 705)) | (1 << (PlSqlParser.JSON_VALUE - 705)) | (1 << (PlSqlParser.KEEP_DUPLICATES - 705)) | (1 << (PlSqlParser.KEEP - 705)) | (1 << (PlSqlParser.KERBEROS - 705)) | (1 << (PlSqlParser.KEY - 705)) | (1 << (PlSqlParser.KEY_LENGTH - 705)) | (1 << (PlSqlParser.KEYSIZE - 705)) | (1 << (PlSqlParser.KEYS - 705)) | (1 << (PlSqlParser.KEYSTORE - 705)) | (1 << (PlSqlParser.KILL - 705)) | (1 << (PlSqlParser.LABEL - 705)) | (1 << (PlSqlParser.LANGUAGE - 705)) | (1 << (PlSqlParser.LAST_DAY - 705)) | (1 << (PlSqlParser.LAST - 705)) | (1 << (PlSqlParser.LAST_VALUE - 705)) | (1 << (PlSqlParser.LATERAL - 705)) | (1 << (PlSqlParser.LAX - 705)) | (1 << (PlSqlParser.LAYER - 705)) | (1 << (PlSqlParser.LDAP_REGISTRATION_ENABLED - 705)))) !== 0) || ((((_la - 737)) & ~0x1f) == 0 && ((1 << (_la - 737)) & ((1 << (PlSqlParser.LDAP_REGISTRATION - 737)) | (1 << (PlSqlParser.LDAP_REG_SYNC_INTERVAL - 737)) | (1 << (PlSqlParser.LEADING - 737)) | (1 << (PlSqlParser.LEFT - 737)) | (1 << (PlSqlParser.LENGTH2 - 737)) | (1 << (PlSqlParser.LENGTH4 - 737)) | (1 << (PlSqlParser.LENGTHB - 737)) | (1 << (PlSqlParser.LENGTHC - 737)) | (1 << (PlSqlParser.LENGTH - 737)) | (1 << (PlSqlParser.LESS - 737)) | (1 << (PlSqlParser.LEVEL - 737)) | (1 << (PlSqlParser.LEVELS - 737)) | (1 << (PlSqlParser.LIBRARY - 737)) | (1 << (PlSqlParser.LIFECYCLE - 737)) | (1 << (PlSqlParser.LIFE - 737)) | (1 << (PlSqlParser.LIFETIME - 737)) | (1 << (PlSqlParser.LIKE2 - 737)) | (1 << (PlSqlParser.LIKE4 - 737)) | (1 << (PlSqlParser.LIKEC - 737)) | (1 << (PlSqlParser.LIKE_EXPAND - 737)) | (1 << (PlSqlParser.LIMIT - 737)) | (1 << (PlSqlParser.LINEAR - 737)) | (1 << (PlSqlParser.LINK - 737)) | (1 << (PlSqlParser.LIST - 737)) | (1 << (PlSqlParser.LN - 737)) | (1 << (PlSqlParser.LNNVL - 737)) | (1 << (PlSqlParser.LOAD - 737)) | (1 << (PlSqlParser.LOB - 737)) | (1 << (PlSqlParser.LOBNVL - 737)) | (1 << (PlSqlParser.LOBS - 737)) | (1 << (PlSqlParser.LOCAL_INDEXES - 737)))) !== 0) || ((((_la - 769)) & ~0x1f) == 0 && ((1 << (_la - 769)) & ((1 << (PlSqlParser.LOCAL - 769)) | (1 << (PlSqlParser.LOCALTIME - 769)) | (1 << (PlSqlParser.LOCALTIMESTAMP - 769)) | (1 << (PlSqlParser.LOCATION - 769)) | (1 << (PlSqlParser.LOCATOR - 769)) | (1 << (PlSqlParser.LOCKED - 769)) | (1 << (PlSqlParser.LOCKING - 769)) | (1 << (PlSqlParser.LOGFILE - 769)) | (1 << (PlSqlParser.LOGFILES - 769)) | (1 << (PlSqlParser.LOGGING - 769)) | (1 << (PlSqlParser.LOGICAL - 769)) | (1 << (PlSqlParser.LOGICAL_READS_PER_CALL - 769)) | (1 << (PlSqlParser.LOGICAL_READS_PER_SESSION - 769)) | (1 << (PlSqlParser.LOG - 769)) | (1 << (PlSqlParser.LOGMINING - 769)) | (1 << (PlSqlParser.LOGOFF - 769)) | (1 << (PlSqlParser.LOGON - 769)) | (1 << (PlSqlParser.LOG_READ_ONLY_VIOLATIONS - 769)) | (1 << (PlSqlParser.LONG - 769)) | (1 << (PlSqlParser.LOOP - 769)) | (1 << (PlSqlParser.LOWER - 769)) | (1 << (PlSqlParser.LOW - 769)) | (1 << (PlSqlParser.LPAD - 769)) | (1 << (PlSqlParser.LTRIM - 769)) | (1 << (PlSqlParser.MAIN - 769)) | (1 << (PlSqlParser.MAKE_REF - 769)) | (1 << (PlSqlParser.MANAGED - 769)) | (1 << (PlSqlParser.MANAGE - 769)) | (1 << (PlSqlParser.MANAGEMENT - 769)) | (1 << (PlSqlParser.MANAGER - 769)) | (1 << (PlSqlParser.MANUAL - 769)))) !== 0) || ((((_la - 801)) & ~0x1f) == 0 && ((1 << (_la - 801)) & ((1 << (PlSqlParser.MAP - 801)) | (1 << (PlSqlParser.MAPPING - 801)) | (1 << (PlSqlParser.MASTER - 801)) | (1 << (PlSqlParser.MATCHED - 801)) | (1 << (PlSqlParser.MATCHES - 801)) | (1 << (PlSqlParser.MATCH - 801)) | (1 << (PlSqlParser.MATCH_NUMBER - 801)) | (1 << (PlSqlParser.MATCH_RECOGNIZE - 801)) | (1 << (PlSqlParser.MATERIALIZED - 801)) | (1 << (PlSqlParser.MATERIALIZE - 801)) | (1 << (PlSqlParser.MAXARCHLOGS - 801)) | (1 << (PlSqlParser.MAXDATAFILES - 801)) | (1 << (PlSqlParser.MAXEXTENTS - 801)) | (1 << (PlSqlParser.MAXIMIZE - 801)) | (1 << (PlSqlParser.MAXINSTANCES - 801)) | (1 << (PlSqlParser.MAXLOGFILES - 801)) | (1 << (PlSqlParser.MAXLOGHISTORY - 801)) | (1 << (PlSqlParser.MAXLOGMEMBERS - 801)) | (1 << (PlSqlParser.MAX_SHARED_TEMP_SIZE - 801)) | (1 << (PlSqlParser.MAXSIZE - 801)) | (1 << (PlSqlParser.MAXTRANS - 801)) | (1 << (PlSqlParser.MAXVALUE - 801)) | (1 << (PlSqlParser.MEASURE - 801)) | (1 << (PlSqlParser.MEASURES - 801)) | (1 << (PlSqlParser.MEDIUM - 801)) | (1 << (PlSqlParser.MEMBER - 801)) | (1 << (PlSqlParser.MEMCOMPRESS - 801)) | (1 << (PlSqlParser.MEMORY - 801)) | (1 << (PlSqlParser.MERGEACTIONS - 801)) | (1 << (PlSqlParser.MERGE_AJ - 801)) | (1 << (PlSqlParser.MERGE_CONST_ON - 801)) | (1 << (PlSqlParser.MERGE - 801)))) !== 0) || ((((_la - 833)) & ~0x1f) == 0 && ((1 << (_la - 833)) & ((1 << (PlSqlParser.MERGE_SJ - 833)) | (1 << (PlSqlParser.METADATA - 833)) | (1 << (PlSqlParser.METHOD - 833)) | (1 << (PlSqlParser.MIGRATE - 833)) | (1 << (PlSqlParser.MIGRATION - 833)) | (1 << (PlSqlParser.MINEXTENTS - 833)) | (1 << (PlSqlParser.MINIMIZE - 833)) | (1 << (PlSqlParser.MINIMUM - 833)) | (1 << (PlSqlParser.MINING - 833)) | (1 << (PlSqlParser.MINUS_NULL - 833)) | (1 << (PlSqlParser.MINUTE - 833)) | (1 << (PlSqlParser.MINVALUE - 833)) | (1 << (PlSqlParser.MIRRORCOLD - 833)) | (1 << (PlSqlParser.MIRRORHOT - 833)) | (1 << (PlSqlParser.MIRROR - 833)) | (1 << (PlSqlParser.MLSLABEL - 833)) | (1 << (PlSqlParser.MODEL_COMPILE_SUBQUERY - 833)) | (1 << (PlSqlParser.MODEL_DONTVERIFY_UNIQUENESS - 833)) | (1 << (PlSqlParser.MODEL_DYNAMIC_SUBQUERY - 833)) | (1 << (PlSqlParser.MODEL_MIN_ANALYSIS - 833)) | (1 << (PlSqlParser.MODEL - 833)) | (1 << (PlSqlParser.MODEL_NB - 833)) | (1 << (PlSqlParser.MODEL_NO_ANALYSIS - 833)) | (1 << (PlSqlParser.MODEL_PBY - 833)) | (1 << (PlSqlParser.MODEL_PUSH_REF - 833)) | (1 << (PlSqlParser.MODEL_SV - 833)) | (1 << (PlSqlParser.MODIFICATION - 833)) | (1 << (PlSqlParser.MODIFY_COLUMN_TYPE - 833)) | (1 << (PlSqlParser.MODIFY - 833)) | (1 << (PlSqlParser.MOD - 833)))) !== 0) || ((((_la - 865)) & ~0x1f) == 0 && ((1 << (_la - 865)) & ((1 << (PlSqlParser.MODULE - 865)) | (1 << (PlSqlParser.MONITORING - 865)) | (1 << (PlSqlParser.MONITOR - 865)) | (1 << (PlSqlParser.MONTH - 865)) | (1 << (PlSqlParser.MONTHS_BETWEEN - 865)) | (1 << (PlSqlParser.MONTHS - 865)) | (1 << (PlSqlParser.MOUNT - 865)) | (1 << (PlSqlParser.MOUNTPATH - 865)) | (1 << (PlSqlParser.MOVEMENT - 865)) | (1 << (PlSqlParser.MOVE - 865)) | (1 << (PlSqlParser.MULTIDIMENSIONAL - 865)) | (1 << (PlSqlParser.MULTISET - 865)) | (1 << (PlSqlParser.MV_MERGE - 865)) | (1 << (PlSqlParser.NAMED - 865)) | (1 << (PlSqlParser.NAME - 865)) | (1 << (PlSqlParser.NAMESPACE - 865)) | (1 << (PlSqlParser.NAN - 865)) | (1 << (PlSqlParser.NANVL - 865)) | (1 << (PlSqlParser.NATIONAL - 865)) | (1 << (PlSqlParser.NATIVE_FULL_OUTER_JOIN - 865)) | (1 << (PlSqlParser.NATIVE - 865)) | (1 << (PlSqlParser.NATURAL - 865)) | (1 << (PlSqlParser.NAV - 865)) | (1 << (PlSqlParser.NCHAR_CS - 865)) | (1 << (PlSqlParser.NCHAR - 865)) | (1 << (PlSqlParser.NCHR - 865)) | (1 << (PlSqlParser.NCLOB - 865)) | (1 << (PlSqlParser.NEEDED - 865)) | (1 << (PlSqlParser.NEG - 865)) | (1 << (PlSqlParser.NESTED - 865)) | (1 << (PlSqlParser.NESTED_TABLE_FAST_INSERT - 865)))) !== 0) || ((((_la - 897)) & ~0x1f) == 0 && ((1 << (_la - 897)) & ((1 << (PlSqlParser.NESTED_TABLE_GET_REFS - 897)) | (1 << (PlSqlParser.NESTED_TABLE_ID - 897)) | (1 << (PlSqlParser.NESTED_TABLE_SET_REFS - 897)) | (1 << (PlSqlParser.NESTED_TABLE_SET_SETID - 897)) | (1 << (PlSqlParser.NETWORK - 897)) | (1 << (PlSqlParser.NEVER - 897)) | (1 << (PlSqlParser.NEW - 897)) | (1 << (PlSqlParser.NEW_TIME - 897)) | (1 << (PlSqlParser.NEXT_DAY - 897)) | (1 << (PlSqlParser.NEXT - 897)) | (1 << (PlSqlParser.NL_AJ - 897)) | (1 << (PlSqlParser.NLJ_BATCHING - 897)) | (1 << (PlSqlParser.NLJ_INDEX_FILTER - 897)) | (1 << (PlSqlParser.NLJ_INDEX_SCAN - 897)) | (1 << (PlSqlParser.NLJ_PREFETCH - 897)) | (1 << (PlSqlParser.NLS_CALENDAR - 897)) | (1 << (PlSqlParser.NLS_CHARACTERSET - 897)) | (1 << (PlSqlParser.NLS_CHARSET_DECL_LEN - 897)) | (1 << (PlSqlParser.NLS_CHARSET_ID - 897)) | (1 << (PlSqlParser.NLS_CHARSET_NAME - 897)) | (1 << (PlSqlParser.NLS_COMP - 897)) | (1 << (PlSqlParser.NLS_CURRENCY - 897)) | (1 << (PlSqlParser.NLS_DATE_FORMAT - 897)) | (1 << (PlSqlParser.NLS_DATE_LANGUAGE - 897)) | (1 << (PlSqlParser.NLS_INITCAP - 897)) | (1 << (PlSqlParser.NLS_ISO_CURRENCY - 897)) | (1 << (PlSqlParser.NL_SJ - 897)) | (1 << (PlSqlParser.NLS_LANG - 897)) | (1 << (PlSqlParser.NLS_LANGUAGE - 897)) | (1 << (PlSqlParser.NLS_LENGTH_SEMANTICS - 897)) | (1 << (PlSqlParser.NLS_LOWER - 897)) | (1 << (PlSqlParser.NLS_NCHAR_CONV_EXCP - 897)))) !== 0) || ((((_la - 929)) & ~0x1f) == 0 && ((1 << (_la - 929)) & ((1 << (PlSqlParser.NLS_NUMERIC_CHARACTERS - 929)) | (1 << (PlSqlParser.NLS_SORT - 929)) | (1 << (PlSqlParser.NLSSORT - 929)) | (1 << (PlSqlParser.NLS_SPECIAL_CHARS - 929)) | (1 << (PlSqlParser.NLS_TERRITORY - 929)) | (1 << (PlSqlParser.NLS_UPPER - 929)) | (1 << (PlSqlParser.NO_ACCESS - 929)) | (1 << (PlSqlParser.NO_ADAPTIVE_PLAN - 929)) | (1 << (PlSqlParser.NO_ANSI_REARCH - 929)) | (1 << (PlSqlParser.NOAPPEND - 929)) | (1 << (PlSqlParser.NOARCHIVELOG - 929)) | (1 << (PlSqlParser.NOAUDIT - 929)) | (1 << (PlSqlParser.NO_AUTO_REOPTIMIZE - 929)) | (1 << (PlSqlParser.NO_BASETABLE_MULTIMV_REWRITE - 929)) | (1 << (PlSqlParser.NO_BATCH_TABLE_ACCESS_BY_ROWID - 929)) | (1 << (PlSqlParser.NO_BIND_AWARE - 929)) | (1 << (PlSqlParser.NO_BUFFER - 929)) | (1 << (PlSqlParser.NOCACHE - 929)) | (1 << (PlSqlParser.NO_CARTESIAN - 929)) | (1 << (PlSqlParser.NO_CHECK_ACL_REWRITE - 929)) | (1 << (PlSqlParser.NO_CLUSTER_BY_ROWID - 929)) | (1 << (PlSqlParser.NO_CLUSTERING - 929)) | (1 << (PlSqlParser.NO_COALESCE_SQ - 929)) | (1 << (PlSqlParser.NO_COMMON_DATA - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_CB_WHR_ONLY - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_COMBINE_SW - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_COST_BASED - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_ELIM_DUPS - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_FILTERING - 929)) | (1 << (PlSqlParser.NOCOPY - 929)) | (1 << (PlSqlParser.NO_COST_XML_QUERY_REWRITE - 929)))) !== 0) || ((((_la - 961)) & ~0x1f) == 0 && ((1 << (_la - 961)) & ((1 << (PlSqlParser.NO_CPU_COSTING - 961)) | (1 << (PlSqlParser.NOCPU_COSTING - 961)) | (1 << (PlSqlParser.NOCYCLE - 961)) | (1 << (PlSqlParser.NO_DATA_SECURITY_REWRITE - 961)) | (1 << (PlSqlParser.NO_DECORRELATE - 961)) | (1 << (PlSqlParser.NODELAY - 961)) | (1 << (PlSqlParser.NO_DOMAIN_INDEX_FILTER - 961)) | (1 << (PlSqlParser.NO_DST_UPGRADE_INSERT_CONV - 961)) | (1 << (PlSqlParser.NO_ELIM_GROUPBY - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_JOIN - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_OBY - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_OUTER_JOIN - 961)) | (1 << (PlSqlParser.NOENTITYESCAPING - 961)) | (1 << (PlSqlParser.NO_EXPAND_GSET_TO_UNION - 961)) | (1 << (PlSqlParser.NO_EXPAND - 961)) | (1 << (PlSqlParser.NO_EXPAND_TABLE - 961)) | (1 << (PlSqlParser.NO_FACT - 961)) | (1 << (PlSqlParser.NO_FACTORIZE_JOIN - 961)) | (1 << (PlSqlParser.NO_FILTERING - 961)) | (1 << (PlSqlParser.NOFORCE - 961)) | (1 << (PlSqlParser.NO_FULL_OUTER_JOIN_TO_OUTER - 961)) | (1 << (PlSqlParser.NO_GATHER_OPTIMIZER_STATISTICS - 961)) | (1 << (PlSqlParser.NO_GBY_PUSHDOWN - 961)) | (1 << (PlSqlParser.NOGUARANTEE - 961)) | (1 << (PlSqlParser.NO_INDEX_FFS - 961)) | (1 << (PlSqlParser.NO_INDEX - 961)) | (1 << (PlSqlParser.NO_INDEX_SS - 961)) | (1 << (PlSqlParser.NO_INMEMORY - 961)) | (1 << (PlSqlParser.NO_INMEMORY_PRUNING - 961)) | (1 << (PlSqlParser.NOKEEP - 961)) | (1 << (PlSqlParser.NO_LOAD - 961)) | (1 << (PlSqlParser.NOLOCAL - 961)))) !== 0) || ((((_la - 993)) & ~0x1f) == 0 && ((1 << (_la - 993)) & ((1 << (PlSqlParser.NOLOGGING - 993)) | (1 << (PlSqlParser.NOMAPPING - 993)) | (1 << (PlSqlParser.NOMAXVALUE - 993)) | (1 << (PlSqlParser.NO_MERGE - 993)) | (1 << (PlSqlParser.NOMINIMIZE - 993)) | (1 << (PlSqlParser.NOMINVALUE - 993)) | (1 << (PlSqlParser.NO_MODEL_PUSH_REF - 993)) | (1 << (PlSqlParser.NO_MONITORING - 993)) | (1 << (PlSqlParser.NOMONITORING - 993)) | (1 << (PlSqlParser.NO_MONITOR - 993)) | (1 << (PlSqlParser.NO_MULTIMV_REWRITE - 993)) | (1 << (PlSqlParser.NO_NATIVE_FULL_OUTER_JOIN - 993)) | (1 << (PlSqlParser.NONBLOCKING - 993)) | (1 << (PlSqlParser.NONEDITIONABLE - 993)) | (1 << (PlSqlParser.NONE - 993)) | (1 << (PlSqlParser.NO_NLJ_BATCHING - 993)) | (1 << (PlSqlParser.NO_NLJ_PREFETCH - 993)) | (1 << (PlSqlParser.NO - 993)) | (1 << (PlSqlParser.NONSCHEMA - 993)) | (1 << (PlSqlParser.NO_OBJECT_LINK - 993)) | (1 << (PlSqlParser.NOORDER - 993)) | (1 << (PlSqlParser.NO_ORDER_ROLLUPS - 993)) | (1 << (PlSqlParser.NO_OUTER_JOIN_TO_ANTI - 993)) | (1 << (PlSqlParser.NO_OUTER_JOIN_TO_INNER - 993)) | (1 << (PlSqlParser.NOOVERRIDE - 993)) | (1 << (PlSqlParser.NO_PARALLEL_INDEX - 993)) | (1 << (PlSqlParser.NOPARALLEL_INDEX - 993)) | (1 << (PlSqlParser.NO_PARALLEL - 993)) | (1 << (PlSqlParser.NOPARALLEL - 993)) | (1 << (PlSqlParser.NO_PARTIAL_COMMIT - 993)) | (1 << (PlSqlParser.NO_PARTIAL_JOIN - 993)) | (1 << (PlSqlParser.NO_PARTIAL_ROLLUP_PUSHDOWN - 993)))) !== 0) || ((((_la - 1025)) & ~0x1f) == 0 && ((1 << (_la - 1025)) & ((1 << (PlSqlParser.NOPARTITION - 1025)) | (1 << (PlSqlParser.NO_PLACE_DISTINCT - 1025)) | (1 << (PlSqlParser.NO_PLACE_GROUP_BY - 1025)) | (1 << (PlSqlParser.NO_PQ_CONCURRENT_UNION - 1025)) | (1 << (PlSqlParser.NO_PQ_MAP - 1025)) | (1 << (PlSqlParser.NO_PQ_REPLICATE - 1025)) | (1 << (PlSqlParser.NO_PQ_SKEW - 1025)) | (1 << (PlSqlParser.NO_PRUNE_GSETS - 1025)) | (1 << (PlSqlParser.NO_PULL_PRED - 1025)) | (1 << (PlSqlParser.NO_PUSH_PRED - 1025)) | (1 << (PlSqlParser.NO_PUSH_SUBQ - 1025)) | (1 << (PlSqlParser.NO_PX_FAULT_TOLERANCE - 1025)) | (1 << (PlSqlParser.NO_PX_JOIN_FILTER - 1025)) | (1 << (PlSqlParser.NO_QKN_BUFF - 1025)) | (1 << (PlSqlParser.NO_QUERY_TRANSFORMATION - 1025)) | (1 << (PlSqlParser.NO_REF_CASCADE - 1025)) | (1 << (PlSqlParser.NORELOCATE - 1025)) | (1 << (PlSqlParser.NORELY - 1025)) | (1 << (PlSqlParser.NOREPAIR - 1025)) | (1 << (PlSqlParser.NOREPLAY - 1025)) | (1 << (PlSqlParser.NORESETLOGS - 1025)) | (1 << (PlSqlParser.NO_RESULT_CACHE - 1025)) | (1 << (PlSqlParser.NOREVERSE - 1025)) | (1 << (PlSqlParser.NO_REWRITE - 1025)) | (1 << (PlSqlParser.NOREWRITE - 1025)) | (1 << (PlSqlParser.NORMAL - 1025)) | (1 << (PlSqlParser.NO_ROOT_SW_FOR_LOCAL - 1025)) | (1 << (PlSqlParser.NOROWDEPENDENCIES - 1025)) | (1 << (PlSqlParser.NOSCHEMACHECK - 1025)) | (1 << (PlSqlParser.NOSEGMENT - 1025)) | (1 << (PlSqlParser.NO_SEMIJOIN - 1025)) | (1 << (PlSqlParser.NO_SEMI_TO_INNER - 1025)))) !== 0) || ((((_la - 1057)) & ~0x1f) == 0 && ((1 << (_la - 1057)) & ((1 << (PlSqlParser.NO_SET_TO_JOIN - 1057)) | (1 << (PlSqlParser.NOSORT - 1057)) | (1 << (PlSqlParser.NO_SQL_TRANSLATION - 1057)) | (1 << (PlSqlParser.NO_SQL_TUNE - 1057)) | (1 << (PlSqlParser.NO_STAR_TRANSFORMATION - 1057)) | (1 << (PlSqlParser.NO_STATEMENT_QUEUING - 1057)) | (1 << (PlSqlParser.NO_STATS_GSETS - 1057)) | (1 << (PlSqlParser.NOSTRICT - 1057)) | (1 << (PlSqlParser.NO_SUBQUERY_PRUNING - 1057)) | (1 << (PlSqlParser.NO_SUBSTRB_PAD - 1057)) | (1 << (PlSqlParser.NO_SWAP_JOIN_INPUTS - 1057)) | (1 << (PlSqlParser.NOSWITCH - 1057)) | (1 << (PlSqlParser.NO_TABLE_LOOKUP_BY_NL - 1057)) | (1 << (PlSqlParser.NO_TEMP_TABLE - 1057)) | (1 << (PlSqlParser.NOTHING - 1057)) | (1 << (PlSqlParser.NOTIFICATION - 1057)) | (1 << (PlSqlParser.NO_TRANSFORM_DISTINCT_AGG - 1057)) | (1 << (PlSqlParser.NO_UNNEST - 1057)) | (1 << (PlSqlParser.NO_USE_CUBE - 1057)) | (1 << (PlSqlParser.NO_USE_HASH_AGGREGATION - 1057)) | (1 << (PlSqlParser.NO_USE_HASH_GBY_FOR_PUSHDOWN - 1057)) | (1 << (PlSqlParser.NO_USE_HASH - 1057)) | (1 << (PlSqlParser.NO_USE_INVISIBLE_INDEXES - 1057)) | (1 << (PlSqlParser.NO_USE_MERGE - 1057)) | (1 << (PlSqlParser.NO_USE_NL - 1057)) | (1 << (PlSqlParser.NO_USE_VECTOR_AGGREGATION - 1057)) | (1 << (PlSqlParser.NOVALIDATE - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM_DIMS - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM_FACT - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM - 1057)))) !== 0) || ((((_la - 1089)) & ~0x1f) == 0 && ((1 << (_la - 1089)) & ((1 << (PlSqlParser.NO_XDB_FASTPATH_INSERT - 1089)) | (1 << (PlSqlParser.NO_XML_DML_REWRITE - 1089)) | (1 << (PlSqlParser.NO_XMLINDEX_REWRITE_IN_SELECT - 1089)) | (1 << (PlSqlParser.NO_XMLINDEX_REWRITE - 1089)) | (1 << (PlSqlParser.NO_XML_QUERY_REWRITE - 1089)) | (1 << (PlSqlParser.NO_ZONEMAP - 1089)) | (1 << (PlSqlParser.NTH_VALUE - 1089)) | (1 << (PlSqlParser.NULLIF - 1089)) | (1 << (PlSqlParser.NULLS - 1089)) | (1 << (PlSqlParser.NUMBER - 1089)) | (1 << (PlSqlParser.NUMERIC - 1089)) | (1 << (PlSqlParser.NUM_INDEX_KEYS - 1089)) | (1 << (PlSqlParser.NUMTODSINTERVAL - 1089)) | (1 << (PlSqlParser.NUMTOYMINTERVAL - 1089)) | (1 << (PlSqlParser.NVARCHAR2 - 1089)) | (1 << (PlSqlParser.NVL2 - 1089)) | (1 << (PlSqlParser.OBJECT2XML - 1089)) | (1 << (PlSqlParser.OBJECT - 1089)) | (1 << (PlSqlParser.OBJ_ID - 1089)) | (1 << (PlSqlParser.OBJNO - 1089)) | (1 << (PlSqlParser.OBJNO_REUSE - 1089)) | (1 << (PlSqlParser.OCCURENCES - 1089)) | (1 << (PlSqlParser.OFFLINE - 1089)) | (1 << (PlSqlParser.OFF - 1089)) | (1 << (PlSqlParser.OFFSET - 1089)) | (1 << (PlSqlParser.OIDINDEX - 1089)) | (1 << (PlSqlParser.OID - 1089)) | (1 << (PlSqlParser.OLAP - 1089)) | (1 << (PlSqlParser.OLD - 1089)) | (1 << (PlSqlParser.OLD_PUSH_PRED - 1089)))) !== 0) || ((((_la - 1121)) & ~0x1f) == 0 && ((1 << (_la - 1121)) & ((1 << (PlSqlParser.OLS - 1121)) | (1 << (PlSqlParser.OLTP - 1121)) | (1 << (PlSqlParser.OMIT - 1121)) | (1 << (PlSqlParser.ONE - 1121)) | (1 << (PlSqlParser.ONLINE - 1121)) | (1 << (PlSqlParser.ONLY - 1121)) | (1 << (PlSqlParser.OPAQUE - 1121)) | (1 << (PlSqlParser.OPAQUE_TRANSFORM - 1121)) | (1 << (PlSqlParser.OPAQUE_XCANONICAL - 1121)) | (1 << (PlSqlParser.OPCODE - 1121)) | (1 << (PlSqlParser.OPEN - 1121)) | (1 << (PlSqlParser.OPERATIONS - 1121)) | (1 << (PlSqlParser.OPERATOR - 1121)) | (1 << (PlSqlParser.OPT_ESTIMATE - 1121)) | (1 << (PlSqlParser.OPTIMAL - 1121)) | (1 << (PlSqlParser.OPTIMIZE - 1121)) | (1 << (PlSqlParser.OPTIMIZER_FEATURES_ENABLE - 1121)) | (1 << (PlSqlParser.OPTIMIZER_GOAL - 1121)) | (1 << (PlSqlParser.OPT_PARAM - 1121)) | (1 << (PlSqlParser.ORA_BRANCH - 1121)) | (1 << (PlSqlParser.ORA_CHECK_ACL - 1121)) | (1 << (PlSqlParser.ORA_CHECK_PRIVILEGE - 1121)) | (1 << (PlSqlParser.ORA_CLUSTERING - 1121)) | (1 << (PlSqlParser.ORADATA - 1121)) | (1 << (PlSqlParser.ORADEBUG - 1121)) | (1 << (PlSqlParser.ORA_DST_AFFECTED - 1121)) | (1 << (PlSqlParser.ORA_DST_CONVERT - 1121)) | (1 << (PlSqlParser.ORA_DST_ERROR - 1121)) | (1 << (PlSqlParser.ORA_GET_ACLIDS - 1121)))) !== 0) || ((((_la - 1153)) & ~0x1f) == 0 && ((1 << (_la - 1153)) & ((1 << (PlSqlParser.ORA_GET_PRIVILEGES - 1153)) | (1 << (PlSqlParser.ORA_HASH - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_USERID - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_USER - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_XS_USER_GUID - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_XS_USER - 1153)) | (1 << (PlSqlParser.ORA_RAWCOMPARE - 1153)) | (1 << (PlSqlParser.ORA_RAWCONCAT - 1153)) | (1 << (PlSqlParser.ORA_ROWSCN - 1153)) | (1 << (PlSqlParser.ORA_ROWSCN_RAW - 1153)) | (1 << (PlSqlParser.ORA_ROWVERSION - 1153)) | (1 << (PlSqlParser.ORA_TABVERSION - 1153)) | (1 << (PlSqlParser.ORA_WRITE_TIME - 1153)) | (1 << (PlSqlParser.ORDERED - 1153)) | (1 << (PlSqlParser.ORDERED_PREDICATES - 1153)) | (1 << (PlSqlParser.ORDINALITY - 1153)) | (1 << (PlSqlParser.OR_EXPAND - 1153)) | (1 << (PlSqlParser.ORGANIZATION - 1153)) | (1 << (PlSqlParser.OR_PREDICATES - 1153)) | (1 << (PlSqlParser.OSERROR - 1153)) | (1 << (PlSqlParser.OTHER - 1153)) | (1 << (PlSqlParser.OUTER_JOIN_TO_ANTI - 1153)) | (1 << (PlSqlParser.OUTER_JOIN_TO_INNER - 1153)) | (1 << (PlSqlParser.OUTER - 1153)) | (1 << (PlSqlParser.OUTLINE_LEAF - 1153)) | (1 << (PlSqlParser.OUTLINE - 1153)) | (1 << (PlSqlParser.OUT_OF_LINE - 1153)) | (1 << (PlSqlParser.OUT - 1153)) | (1 << (PlSqlParser.OVERFLOW_NOMOVE - 1153)) | (1 << (PlSqlParser.OVERFLOW - 1153)))) !== 0) || ((((_la - 1185)) & ~0x1f) == 0 && ((1 << (_la - 1185)) & ((1 << (PlSqlParser.OVERLAPS - 1185)) | (1 << (PlSqlParser.OVER - 1185)) | (1 << (PlSqlParser.OVERRIDING - 1185)) | (1 << (PlSqlParser.OWNER - 1185)) | (1 << (PlSqlParser.OWNERSHIP - 1185)) | (1 << (PlSqlParser.OWN - 1185)) | (1 << (PlSqlParser.PACKAGE - 1185)) | (1 << (PlSqlParser.PACKAGES - 1185)) | (1 << (PlSqlParser.PARALLEL_ENABLE - 1185)) | (1 << (PlSqlParser.PARALLEL_INDEX - 1185)) | (1 << (PlSqlParser.PARALLEL - 1185)) | (1 << (PlSqlParser.PARAMETERS - 1185)) | (1 << (PlSqlParser.PARAM - 1185)) | (1 << (PlSqlParser.PARENT - 1185)) | (1 << (PlSqlParser.PARITY - 1185)) | (1 << (PlSqlParser.PARTIAL_JOIN - 1185)) | (1 << (PlSqlParser.PARTIALLY - 1185)) | (1 << (PlSqlParser.PARTIAL - 1185)) | (1 << (PlSqlParser.PARTIAL_ROLLUP_PUSHDOWN - 1185)) | (1 << (PlSqlParser.PARTITION_HASH - 1185)) | (1 << (PlSqlParser.PARTITION_LIST - 1185)) | (1 << (PlSqlParser.PARTITION - 1185)) | (1 << (PlSqlParser.PARTITION_RANGE - 1185)) | (1 << (PlSqlParser.PARTITIONS - 1185)) | (1 << (PlSqlParser.PARTNUMINST - 1185)) | (1 << (PlSqlParser.PASSING - 1185)) | (1 << (PlSqlParser.PASSWORD_GRACE_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD_LIFE_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD_LOCK_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD - 1185)) | (1 << (PlSqlParser.PASSWORD_REUSE_MAX - 1185)))) !== 0) || ((((_la - 1217)) & ~0x1f) == 0 && ((1 << (_la - 1217)) & ((1 << (PlSqlParser.PASSWORD_REUSE_TIME - 1217)) | (1 << (PlSqlParser.PASSWORD_VERIFY_FUNCTION - 1217)) | (1 << (PlSqlParser.PAST - 1217)) | (1 << (PlSqlParser.PATCH - 1217)) | (1 << (PlSqlParser.PATH - 1217)) | (1 << (PlSqlParser.PATH_PREFIX - 1217)) | (1 << (PlSqlParser.PATHS - 1217)) | (1 << (PlSqlParser.PATTERN - 1217)) | (1 << (PlSqlParser.PBL_HS_BEGIN - 1217)) | (1 << (PlSqlParser.PBL_HS_END - 1217)) | (1 << (PlSqlParser.PCTINCREASE - 1217)) | (1 << (PlSqlParser.PCTTHRESHOLD - 1217)) | (1 << (PlSqlParser.PCTUSED - 1217)) | (1 << (PlSqlParser.PCTVERSION - 1217)) | (1 << (PlSqlParser.PENDING - 1217)) | (1 << (PlSqlParser.PERCENT_KEYWORD - 1217)) | (1 << (PlSqlParser.PERCENT_RANKM - 1217)) | (1 << (PlSqlParser.PERFORMANCE - 1217)) | (1 << (PlSqlParser.PERIOD_KEYWORD - 1217)) | (1 << (PlSqlParser.PERMANENT - 1217)) | (1 << (PlSqlParser.PERMISSION - 1217)) | (1 << (PlSqlParser.PERMUTE - 1217)) | (1 << (PlSqlParser.PER - 1217)) | (1 << (PlSqlParser.PFILE - 1217)) | (1 << (PlSqlParser.PHYSICAL - 1217)))) !== 0) || ((((_la - 1249)) & ~0x1f) == 0 && ((1 << (_la - 1249)) & ((1 << (PlSqlParser.PIKEY - 1249)) | (1 << (PlSqlParser.PIPELINED - 1249)) | (1 << (PlSqlParser.PIV_GB - 1249)) | (1 << (PlSqlParser.PIVOT - 1249)) | (1 << (PlSqlParser.PIV_SSF - 1249)) | (1 << (PlSqlParser.PLACE_DISTINCT - 1249)) | (1 << (PlSqlParser.PLACE_GROUP_BY - 1249)) | (1 << (PlSqlParser.PLAN - 1249)) | (1 << (PlSqlParser.PLSCOPE_SETTINGS - 1249)) | (1 << (PlSqlParser.PLS_INTEGER - 1249)) | (1 << (PlSqlParser.PLSQL_CCFLAGS - 1249)) | (1 << (PlSqlParser.PLSQL_CODE_TYPE - 1249)) | (1 << (PlSqlParser.PLSQL_DEBUG - 1249)) | (1 << (PlSqlParser.PLSQL_OPTIMIZE_LEVEL - 1249)) | (1 << (PlSqlParser.PLSQL_WARNINGS - 1249)) | (1 << (PlSqlParser.PLUGGABLE - 1249)) | (1 << (PlSqlParser.POINT - 1249)) | (1 << (PlSqlParser.POLICY - 1249)) | (1 << (PlSqlParser.POOL_16K - 1249)) | (1 << (PlSqlParser.POOL_2K - 1249)) | (1 << (PlSqlParser.POOL_32K - 1249)) | (1 << (PlSqlParser.POOL_4K - 1249)) | (1 << (PlSqlParser.POOL_8K - 1249)) | (1 << (PlSqlParser.POSITIVEN - 1249)) | (1 << (PlSqlParser.POSITIVE - 1249)) | (1 << (PlSqlParser.POST_TRANSACTION - 1249)) | (1 << (PlSqlParser.POWERMULTISET_BY_CARDINALITY - 1249)) | (1 << (PlSqlParser.POWERMULTISET - 1249)) | (1 << (PlSqlParser.POWER - 1249)) | (1 << (PlSqlParser.PQ_CONCURRENT_UNION - 1249)) | (1 << (PlSqlParser.PQ_DISTRIBUTE - 1249)))) !== 0) || ((((_la - 1281)) & ~0x1f) == 0 && ((1 << (_la - 1281)) & ((1 << (PlSqlParser.PQ_DISTRIBUTE_WINDOW - 1281)) | (1 << (PlSqlParser.PQ_FILTER - 1281)) | (1 << (PlSqlParser.PQ_MAP - 1281)) | (1 << (PlSqlParser.PQ_NOMAP - 1281)) | (1 << (PlSqlParser.PQ_REPLICATE - 1281)) | (1 << (PlSqlParser.PQ_SKEW - 1281)) | (1 << (PlSqlParser.PRAGMA - 1281)) | (1 << (PlSqlParser.PREBUILT - 1281)) | (1 << (PlSqlParser.PRECEDES - 1281)) | (1 << (PlSqlParser.PRECEDING - 1281)) | (1 << (PlSqlParser.PRECISION - 1281)) | (1 << (PlSqlParser.PRECOMPUTE_SUBQUERY - 1281)) | (1 << (PlSqlParser.PREDICATE_REORDERS - 1281)) | (1 << (PlSqlParser.PRELOAD - 1281)) | (1 << (PlSqlParser.PREPARE - 1281)) | (1 << (PlSqlParser.PRESENTNNV - 1281)) | (1 << (PlSqlParser.PRESENT - 1281)) | (1 << (PlSqlParser.PRESENTV - 1281)) | (1 << (PlSqlParser.PRESERVE_OID - 1281)) | (1 << (PlSqlParser.PRESERVE - 1281)) | (1 << (PlSqlParser.PRETTY - 1281)) | (1 << (PlSqlParser.PREVIOUS - 1281)) | (1 << (PlSqlParser.PREV - 1281)) | (1 << (PlSqlParser.PRIMARY - 1281)) | (1 << (PlSqlParser.PRINTBLOBTOCLOB - 1281)) | (1 << (PlSqlParser.PRIORITY - 1281)) | (1 << (PlSqlParser.PRIVATE - 1281)) | (1 << (PlSqlParser.PRIVATE_SGA - 1281)) | (1 << (PlSqlParser.PRIVILEGED - 1281)) | (1 << (PlSqlParser.PRIVILEGE - 1281)) | (1 << (PlSqlParser.PRIVILEGES - 1281)))) !== 0) || ((((_la - 1313)) & ~0x1f) == 0 && ((1 << (_la - 1313)) & ((1 << (PlSqlParser.PROCEDURAL - 1313)) | (1 << (PlSqlParser.PROCEDURE - 1313)) | (1 << (PlSqlParser.PROCESS - 1313)) | (1 << (PlSqlParser.PROFILE - 1313)) | (1 << (PlSqlParser.PROGRAM - 1313)) | (1 << (PlSqlParser.PROJECT - 1313)) | (1 << (PlSqlParser.PROPAGATE - 1313)) | (1 << (PlSqlParser.PROTECTED - 1313)) | (1 << (PlSqlParser.PROTECTION - 1313)) | (1 << (PlSqlParser.PROXY - 1313)) | (1 << (PlSqlParser.PRUNING - 1313)) | (1 << (PlSqlParser.PULL_PRED - 1313)) | (1 << (PlSqlParser.PURGE - 1313)) | (1 << (PlSqlParser.PUSH_PRED - 1313)) | (1 << (PlSqlParser.PUSH_SUBQ - 1313)) | (1 << (PlSqlParser.PX_FAULT_TOLERANCE - 1313)) | (1 << (PlSqlParser.PX_GRANULE - 1313)) | (1 << (PlSqlParser.PX_JOIN_FILTER - 1313)) | (1 << (PlSqlParser.QB_NAME - 1313)) | (1 << (PlSqlParser.QUERY_BLOCK - 1313)) | (1 << (PlSqlParser.QUERY - 1313)) | (1 << (PlSqlParser.QUEUE_CURR - 1313)) | (1 << (PlSqlParser.QUEUE - 1313)) | (1 << (PlSqlParser.QUEUE_ROWP - 1313)) | (1 << (PlSqlParser.QUIESCE - 1313)) | (1 << (PlSqlParser.QUORUM - 1313)) | (1 << (PlSqlParser.QUOTA - 1313)) | (1 << (PlSqlParser.RAISE - 1313)) | (1 << (PlSqlParser.RANDOM_LOCAL - 1313)) | (1 << (PlSqlParser.RANDOM - 1313)) | (1 << (PlSqlParser.RANGE - 1313)))) !== 0) || ((((_la - 1345)) & ~0x1f) == 0 && ((1 << (_la - 1345)) & ((1 << (PlSqlParser.RANKM - 1345)) | (1 << (PlSqlParser.RAPIDLY - 1345)) | (1 << (PlSqlParser.RAW - 1345)) | (1 << (PlSqlParser.RAWTOHEX - 1345)) | (1 << (PlSqlParser.RAWTONHEX - 1345)) | (1 << (PlSqlParser.RBA - 1345)) | (1 << (PlSqlParser.RBO_OUTLINE - 1345)) | (1 << (PlSqlParser.RDBA - 1345)) | (1 << (PlSqlParser.READ - 1345)) | (1 << (PlSqlParser.READS - 1345)) | (1 << (PlSqlParser.REALM - 1345)) | (1 << (PlSqlParser.REAL - 1345)) | (1 << (PlSqlParser.REBALANCE - 1345)) | (1 << (PlSqlParser.REBUILD - 1345)) | (1 << (PlSqlParser.RECORD - 1345)) | (1 << (PlSqlParser.RECORDS_PER_BLOCK - 1345)) | (1 << (PlSqlParser.RECOVERABLE - 1345)) | (1 << (PlSqlParser.RECOVER - 1345)) | (1 << (PlSqlParser.RECOVERY - 1345)) | (1 << (PlSqlParser.RECYCLEBIN - 1345)) | (1 << (PlSqlParser.RECYCLE - 1345)) | (1 << (PlSqlParser.REDACTION - 1345)) | (1 << (PlSqlParser.REDEFINE - 1345)) | (1 << (PlSqlParser.REDO - 1345)) | (1 << (PlSqlParser.REDUCED - 1345)) | (1 << (PlSqlParser.REDUNDANCY - 1345)) | (1 << (PlSqlParser.REF_CASCADE_CURSOR - 1345)) | (1 << (PlSqlParser.REFERENCED - 1345)) | (1 << (PlSqlParser.REFERENCE - 1345)) | (1 << (PlSqlParser.REFERENCES - 1345)) | (1 << (PlSqlParser.REFERENCING - 1345)) | (1 << (PlSqlParser.REF - 1345)))) !== 0) || ((((_la - 1377)) & ~0x1f) == 0 && ((1 << (_la - 1377)) & ((1 << (PlSqlParser.REFRESH - 1377)) | (1 << (PlSqlParser.REFTOHEX - 1377)) | (1 << (PlSqlParser.REGEXP_COUNT - 1377)) | (1 << (PlSqlParser.REGEXP_INSTR - 1377)) | (1 << (PlSqlParser.REGEXP_LIKE - 1377)) | (1 << (PlSqlParser.REGEXP_REPLACE - 1377)) | (1 << (PlSqlParser.REGEXP_SUBSTR - 1377)) | (1 << (PlSqlParser.REGISTER - 1377)) | (1 << (PlSqlParser.REGR_AVGX - 1377)) | (1 << (PlSqlParser.REGR_AVGY - 1377)) | (1 << (PlSqlParser.REGR_COUNT - 1377)) | (1 << (PlSqlParser.REGR_INTERCEPT - 1377)) | (1 << (PlSqlParser.REGR_R2 - 1377)) | (1 << (PlSqlParser.REGR_SLOPE - 1377)) | (1 << (PlSqlParser.REGR_SXX - 1377)) | (1 << (PlSqlParser.REGR_SXY - 1377)) | (1 << (PlSqlParser.REGR_SYY - 1377)) | (1 << (PlSqlParser.REGULAR - 1377)) | (1 << (PlSqlParser.REJECT - 1377)) | (1 << (PlSqlParser.REKEY - 1377)) | (1 << (PlSqlParser.RELATIONAL - 1377)) | (1 << (PlSqlParser.RELOCATE - 1377)) | (1 << (PlSqlParser.RELY - 1377)) | (1 << (PlSqlParser.REMAINDER - 1377)) | (1 << (PlSqlParser.REMOTE_MAPPED - 1377)) | (1 << (PlSqlParser.REMOVE - 1377)) | (1 << (PlSqlParser.RENAME - 1377)) | (1 << (PlSqlParser.REPAIR - 1377)) | (1 << (PlSqlParser.REPEAT - 1377)) | (1 << (PlSqlParser.REPLACE - 1377)) | (1 << (PlSqlParser.REPLICATION - 1377)))) !== 0) || ((((_la - 1409)) & ~0x1f) == 0 && ((1 << (_la - 1409)) & ((1 << (PlSqlParser.REQUIRED - 1409)) | (1 << (PlSqlParser.RESETLOGS - 1409)) | (1 << (PlSqlParser.RESET - 1409)) | (1 << (PlSqlParser.RESIZE - 1409)) | (1 << (PlSqlParser.RESOLVE - 1409)) | (1 << (PlSqlParser.RESOLVER - 1409)) | (1 << (PlSqlParser.RESPECT - 1409)) | (1 << (PlSqlParser.RESTART - 1409)) | (1 << (PlSqlParser.RESTORE_AS_INTERVALS - 1409)) | (1 << (PlSqlParser.RESTORE - 1409)) | (1 << (PlSqlParser.RESTRICT_ALL_REF_CONS - 1409)) | (1 << (PlSqlParser.RESTRICTED - 1409)) | (1 << (PlSqlParser.RESTRICT_REFERENCES - 1409)) | (1 << (PlSqlParser.RESTRICT - 1409)) | (1 << (PlSqlParser.RESULT_CACHE - 1409)) | (1 << (PlSqlParser.RESULT - 1409)) | (1 << (PlSqlParser.RESUMABLE - 1409)) | (1 << (PlSqlParser.RESUME - 1409)) | (1 << (PlSqlParser.RETENTION - 1409)) | (1 << (PlSqlParser.RETRY_ON_ROW_CHANGE - 1409)) | (1 << (PlSqlParser.RETURNING - 1409)) | (1 << (PlSqlParser.RETURN - 1409)) | (1 << (PlSqlParser.REUSE - 1409)) | (1 << (PlSqlParser.REVERSE - 1409)) | (1 << (PlSqlParser.REWRITE_OR_ERROR - 1409)) | (1 << (PlSqlParser.REWRITE - 1409)) | (1 << (PlSqlParser.RIGHT - 1409)) | (1 << (PlSqlParser.ROLE - 1409)) | (1 << (PlSqlParser.ROLESET - 1409)) | (1 << (PlSqlParser.ROLES - 1409)))) !== 0) || ((((_la - 1441)) & ~0x1f) == 0 && ((1 << (_la - 1441)) & ((1 << (PlSqlParser.ROLLBACK - 1441)) | (1 << (PlSqlParser.ROLLING - 1441)) | (1 << (PlSqlParser.ROLLUP - 1441)) | (1 << (PlSqlParser.ROWDEPENDENCIES - 1441)) | (1 << (PlSqlParser.ROWID_MAPPING_TABLE - 1441)) | (1 << (PlSqlParser.ROWID - 1441)) | (1 << (PlSqlParser.ROWIDTOCHAR - 1441)) | (1 << (PlSqlParser.ROWIDTONCHAR - 1441)) | (1 << (PlSqlParser.ROW_LENGTH - 1441)) | (1 << (PlSqlParser.ROWNUM - 1441)) | (1 << (PlSqlParser.ROW - 1441)) | (1 << (PlSqlParser.ROWS - 1441)) | (1 << (PlSqlParser.RPAD - 1441)) | (1 << (PlSqlParser.RTRIM - 1441)) | (1 << (PlSqlParser.RULE - 1441)) | (1 << (PlSqlParser.RULES - 1441)) | (1 << (PlSqlParser.RUNNING - 1441)) | (1 << (PlSqlParser.SALT - 1441)) | (1 << (PlSqlParser.SAMPLE - 1441)) | (1 << (PlSqlParser.SAVE_AS_INTERVALS - 1441)) | (1 << (PlSqlParser.SAVEPOINT - 1441)) | (1 << (PlSqlParser.SAVE - 1441)) | (1 << (PlSqlParser.SB4 - 1441)) | (1 << (PlSqlParser.SCALE_ROWS - 1441)) | (1 << (PlSqlParser.SCALE - 1441)) | (1 << (PlSqlParser.SCAN_INSTANCES - 1441)) | (1 << (PlSqlParser.SCAN - 1441)) | (1 << (PlSqlParser.SCHEDULER - 1441)) | (1 << (PlSqlParser.SCHEMACHECK - 1441)) | (1 << (PlSqlParser.SCHEMA - 1441)) | (1 << (PlSqlParser.SCN_ASCENDING - 1441)) | (1 << (PlSqlParser.SCN - 1441)))) !== 0) || ((((_la - 1473)) & ~0x1f) == 0 && ((1 << (_la - 1473)) & ((1 << (PlSqlParser.SCOPE - 1473)) | (1 << (PlSqlParser.SCRUB - 1473)) | (1 << (PlSqlParser.SD_ALL - 1473)) | (1 << (PlSqlParser.SD_INHIBIT - 1473)) | (1 << (PlSqlParser.SDO_GEOM_MBR - 1473)) | (1 << (PlSqlParser.SD_SHOW - 1473)) | (1 << (PlSqlParser.SEARCH - 1473)) | (1 << (PlSqlParser.SECOND - 1473)) | (1 << (PlSqlParser.SECRET - 1473)) | (1 << (PlSqlParser.SECUREFILE_DBA - 1473)) | (1 << (PlSqlParser.SECUREFILE - 1473)) | (1 << (PlSqlParser.SECURITY - 1473)) | (1 << (PlSqlParser.SEED - 1473)) | (1 << (PlSqlParser.SEG_BLOCK - 1473)) | (1 << (PlSqlParser.SEG_FILE - 1473)) | (1 << (PlSqlParser.SEGMENT - 1473)) | (1 << (PlSqlParser.SELECTIVITY - 1473)) | (1 << (PlSqlParser.SELF - 1473)) | (1 << (PlSqlParser.SEMIJOIN_DRIVER - 1473)) | (1 << (PlSqlParser.SEMIJOIN - 1473)) | (1 << (PlSqlParser.SEMI_TO_INNER - 1473)) | (1 << (PlSqlParser.SEQUENCED - 1473)) | (1 << (PlSqlParser.SEQUENCE - 1473)) | (1 << (PlSqlParser.SEQUENTIAL - 1473)) | (1 << (PlSqlParser.SERIALIZABLE - 1473)) | (1 << (PlSqlParser.SERIALLY_REUSABLE - 1473)) | (1 << (PlSqlParser.SERIAL - 1473)) | (1 << (PlSqlParser.SERVERERROR - 1473)) | (1 << (PlSqlParser.SERVICE_NAME_CONVERT - 1473)) | (1 << (PlSqlParser.SERVICES - 1473)))) !== 0) || ((((_la - 1505)) & ~0x1f) == 0 && ((1 << (_la - 1505)) & ((1 << (PlSqlParser.SESSION_CACHED_CURSORS - 1505)) | (1 << (PlSqlParser.SESSION - 1505)) | (1 << (PlSqlParser.SESSIONS_PER_USER - 1505)) | (1 << (PlSqlParser.SESSIONTIMEZONE - 1505)) | (1 << (PlSqlParser.SESSIONTZNAME - 1505)) | (1 << (PlSqlParser.SET - 1505)) | (1 << (PlSqlParser.SETS - 1505)) | (1 << (PlSqlParser.SETTINGS - 1505)) | (1 << (PlSqlParser.SET_TO_JOIN - 1505)) | (1 << (PlSqlParser.SEVERE - 1505)) | (1 << (PlSqlParser.SHARED_POOL - 1505)) | (1 << (PlSqlParser.SHARED - 1505)) | (1 << (PlSqlParser.SHARING - 1505)) | (1 << (PlSqlParser.SHELFLIFE - 1505)) | (1 << (PlSqlParser.SHOW - 1505)) | (1 << (PlSqlParser.SHRINK - 1505)) | (1 << (PlSqlParser.SHUTDOWN - 1505)) | (1 << (PlSqlParser.SIBLINGS - 1505)) | (1 << (PlSqlParser.SID - 1505)) | (1 << (PlSqlParser.SIGNAL_COMPONENT - 1505)) | (1 << (PlSqlParser.SIGNAL_FUNCTION - 1505)) | (1 << (PlSqlParser.SIGN - 1505)) | (1 << (PlSqlParser.SIGNTYPE - 1505)) | (1 << (PlSqlParser.SIMPLE_INTEGER - 1505)) | (1 << (PlSqlParser.SIMPLE - 1505)) | (1 << (PlSqlParser.SINGLE - 1505)) | (1 << (PlSqlParser.SINGLETASK - 1505)) | (1 << (PlSqlParser.SINH - 1505)) | (1 << (PlSqlParser.SIN - 1505)) | (1 << (PlSqlParser.SKIP_EXT_OPTIMIZER - 1505)))) !== 0) || ((((_la - 1537)) & ~0x1f) == 0 && ((1 << (_la - 1537)) & ((1 << (PlSqlParser.SKIP_ - 1537)) | (1 << (PlSqlParser.SKIP_UNQ_UNUSABLE_IDX - 1537)) | (1 << (PlSqlParser.SKIP_UNUSABLE_INDEXES - 1537)) | (1 << (PlSqlParser.SMALLFILE - 1537)) | (1 << (PlSqlParser.SMALLINT - 1537)) | (1 << (PlSqlParser.SNAPSHOT - 1537)) | (1 << (PlSqlParser.SOME - 1537)) | (1 << (PlSqlParser.SORT - 1537)) | (1 << (PlSqlParser.SOUNDEX - 1537)) | (1 << (PlSqlParser.SOURCE_FILE_DIRECTORY - 1537)) | (1 << (PlSqlParser.SOURCE_FILE_NAME_CONVERT - 1537)) | (1 << (PlSqlParser.SOURCE - 1537)) | (1 << (PlSqlParser.SPACE_KEYWORD - 1537)) | (1 << (PlSqlParser.SPECIFICATION - 1537)) | (1 << (PlSqlParser.SPFILE - 1537)) | (1 << (PlSqlParser.SPLIT - 1537)) | (1 << (PlSqlParser.SPREADSHEET - 1537)) | (1 << (PlSqlParser.SQLDATA - 1537)) | (1 << (PlSqlParser.SQLERROR - 1537)) | (1 << (PlSqlParser.SQLLDR - 1537)) | (1 << (PlSqlParser.SQL - 1537)) | (1 << (PlSqlParser.SQL_TRACE - 1537)) | (1 << (PlSqlParser.SQL_TRANSLATION_PROFILE - 1537)) | (1 << (PlSqlParser.SQRT - 1537)) | (1 << (PlSqlParser.STALE - 1537)) | (1 << (PlSqlParser.STANDALONE - 1537)) | (1 << (PlSqlParser.STANDARD_HASH - 1537)) | (1 << (PlSqlParser.STANDBY_MAX_DATA_DELAY - 1537)) | (1 << (PlSqlParser.STANDBYS - 1537)) | (1 << (PlSqlParser.STANDBY - 1537)) | (1 << (PlSqlParser.STAR - 1537)) | (1 << (PlSqlParser.STAR_TRANSFORMATION - 1537)))) !== 0) || ((((_la - 1570)) & ~0x1f) == 0 && ((1 << (_la - 1570)) & ((1 << (PlSqlParser.STARTUP - 1570)) | (1 << (PlSqlParser.STATEMENT_ID - 1570)) | (1 << (PlSqlParser.STATEMENT_QUEUING - 1570)) | (1 << (PlSqlParser.STATEMENTS - 1570)) | (1 << (PlSqlParser.STATEMENT - 1570)) | (1 << (PlSqlParser.STATE - 1570)) | (1 << (PlSqlParser.STATIC - 1570)) | (1 << (PlSqlParser.STATISTICS - 1570)) | (1 << (PlSqlParser.STATS_BINOMIAL_TEST - 1570)) | (1 << (PlSqlParser.STATS_CROSSTAB - 1570)) | (1 << (PlSqlParser.STATS_F_TEST - 1570)) | (1 << (PlSqlParser.STATS_KS_TEST - 1570)) | (1 << (PlSqlParser.STATS_MODE - 1570)) | (1 << (PlSqlParser.STATS_MW_TEST - 1570)) | (1 << (PlSqlParser.STATS_ONE_WAY_ANOVA - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_INDEP - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_INDEPU - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_ONE - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_PAIRED - 1570)) | (1 << (PlSqlParser.STATS_WSR_TEST - 1570)) | (1 << (PlSqlParser.STDDEV_POP - 1570)) | (1 << (PlSqlParser.STDDEV_SAMP - 1570)) | (1 << (PlSqlParser.STOP - 1570)) | (1 << (PlSqlParser.STORAGE - 1570)) | (1 << (PlSqlParser.STORE - 1570)) | (1 << (PlSqlParser.STREAMS - 1570)) | (1 << (PlSqlParser.STREAM - 1570)) | (1 << (PlSqlParser.STRICT - 1570)) | (1 << (PlSqlParser.STRING - 1570)) | (1 << (PlSqlParser.STRIPE_COLUMNS - 1570)) | (1 << (PlSqlParser.STRIPE_WIDTH - 1570)) | (1 << (PlSqlParser.STRIP - 1570)))) !== 0) || ((((_la - 1602)) & ~0x1f) == 0 && ((1 << (_la - 1602)) & ((1 << (PlSqlParser.STRUCTURE - 1602)) | (1 << (PlSqlParser.SUBMULTISET - 1602)) | (1 << (PlSqlParser.SUBPARTITION_REL - 1602)) | (1 << (PlSqlParser.SUBPARTITIONS - 1602)) | (1 << (PlSqlParser.SUBPARTITION - 1602)) | (1 << (PlSqlParser.SUBQUERIES - 1602)) | (1 << (PlSqlParser.SUBQUERY_PRUNING - 1602)) | (1 << (PlSqlParser.SUBSCRIBE - 1602)) | (1 << (PlSqlParser.SUBSET - 1602)) | (1 << (PlSqlParser.SUBSTITUTABLE - 1602)) | (1 << (PlSqlParser.SUBSTR2 - 1602)) | (1 << (PlSqlParser.SUBSTR4 - 1602)) | (1 << (PlSqlParser.SUBSTRB - 1602)) | (1 << (PlSqlParser.SUBSTRC - 1602)) | (1 << (PlSqlParser.SUBTYPE - 1602)) | (1 << (PlSqlParser.SUCCESSFUL - 1602)) | (1 << (PlSqlParser.SUCCESS - 1602)) | (1 << (PlSqlParser.SUMMARY - 1602)) | (1 << (PlSqlParser.SUPPLEMENTAL - 1602)) | (1 << (PlSqlParser.SUSPEND - 1602)) | (1 << (PlSqlParser.SWAP_JOIN_INPUTS - 1602)) | (1 << (PlSqlParser.SWITCHOVER - 1602)) | (1 << (PlSqlParser.SWITCH - 1602)) | (1 << (PlSqlParser.SYNCHRONOUS - 1602)) | (1 << (PlSqlParser.SYNC - 1602)) | (1 << (PlSqlParser.SYSASM - 1602)) | (1 << (PlSqlParser.SYS_AUDIT - 1602)) | (1 << (PlSqlParser.SYSAUX - 1602)) | (1 << (PlSqlParser.SYSBACKUP - 1602)) | (1 << (PlSqlParser.SYS_CHECKACL - 1602)) | (1 << (PlSqlParser.SYS_CHECK_PRIVILEGE - 1602)))) !== 0) || ((((_la - 1634)) & ~0x1f) == 0 && ((1 << (_la - 1634)) & ((1 << (PlSqlParser.SYS_CONNECT_BY_PATH - 1634)) | (1 << (PlSqlParser.SYS_CONTEXT - 1634)) | (1 << (PlSqlParser.SYSDATE - 1634)) | (1 << (PlSqlParser.SYSDBA - 1634)) | (1 << (PlSqlParser.SYS_DBURIGEN - 1634)) | (1 << (PlSqlParser.SYSDG - 1634)) | (1 << (PlSqlParser.SYS_DL_CURSOR - 1634)) | (1 << (PlSqlParser.SYS_DM_RXFORM_CHR - 1634)) | (1 << (PlSqlParser.SYS_DM_RXFORM_NUM - 1634)) | (1 << (PlSqlParser.SYS_DOM_COMPARE - 1634)) | (1 << (PlSqlParser.SYS_DST_PRIM2SEC - 1634)) | (1 << (PlSqlParser.SYS_DST_SEC2PRIM - 1634)) | (1 << (PlSqlParser.SYS_ET_BFILE_TO_RAW - 1634)) | (1 << (PlSqlParser.SYS_ET_BLOB_TO_IMAGE - 1634)) | (1 << (PlSqlParser.SYS_ET_IMAGE_TO_BLOB - 1634)) | (1 << (PlSqlParser.SYS_ET_RAW_TO_BFILE - 1634)) | (1 << (PlSqlParser.SYS_EXTPDTXT - 1634)) | (1 << (PlSqlParser.SYS_EXTRACT_UTC - 1634)) | (1 << (PlSqlParser.SYS_FBT_INSDEL - 1634)) | (1 << (PlSqlParser.SYS_FILTER_ACLS - 1634)) | (1 << (PlSqlParser.SYS_FNMATCHES - 1634)) | (1 << (PlSqlParser.SYS_FNREPLACE - 1634)) | (1 << (PlSqlParser.SYS_GET_ACLIDS - 1634)) | (1 << (PlSqlParser.SYS_GET_COL_ACLIDS - 1634)) | (1 << (PlSqlParser.SYS_GET_PRIVILEGES - 1634)) | (1 << (PlSqlParser.SYS_GETTOKENID - 1634)) | (1 << (PlSqlParser.SYS_GETXTIVAL - 1634)) | (1 << (PlSqlParser.SYS_GUID - 1634)) | (1 << (PlSqlParser.SYSGUID - 1634)) | (1 << (PlSqlParser.SYSKM - 1634)) | (1 << (PlSqlParser.SYS_MAKE_XMLNODEID - 1634)) | (1 << (PlSqlParser.SYS_MAKEXML - 1634)))) !== 0) || ((((_la - 1666)) & ~0x1f) == 0 && ((1 << (_la - 1666)) & ((1 << (PlSqlParser.SYS_MKXMLATTR - 1666)) | (1 << (PlSqlParser.SYS_MKXTI - 1666)) | (1 << (PlSqlParser.SYSOBJ - 1666)) | (1 << (PlSqlParser.SYS_OP_ADT2BIN - 1666)) | (1 << (PlSqlParser.SYS_OP_ADTCONS - 1666)) | (1 << (PlSqlParser.SYS_OP_ALSCRVAL - 1666)) | (1 << (PlSqlParser.SYS_OP_ATG - 1666)) | (1 << (PlSqlParser.SYS_OP_BIN2ADT - 1666)) | (1 << (PlSqlParser.SYS_OP_BITVEC - 1666)) | (1 << (PlSqlParser.SYS_OP_BL2R - 1666)) | (1 << (PlSqlParser.SYS_OP_BLOOM_FILTER_LIST - 1666)) | (1 << (PlSqlParser.SYS_OP_BLOOM_FILTER - 1666)) | (1 << (PlSqlParser.SYS_OP_C2C - 1666)) | (1 << (PlSqlParser.SYS_OP_CAST - 1666)) | (1 << (PlSqlParser.SYS_OP_CEG - 1666)) | (1 << (PlSqlParser.SYS_OP_CL2C - 1666)) | (1 << (PlSqlParser.SYS_OP_COMBINED_HASH - 1666)) | (1 << (PlSqlParser.SYS_OP_COMP - 1666)) | (1 << (PlSqlParser.SYS_OP_CONVERT - 1666)) | (1 << (PlSqlParser.SYS_OP_COUNTCHG - 1666)) | (1 << (PlSqlParser.SYS_OP_CSCONV - 1666)) | (1 << (PlSqlParser.SYS_OP_CSCONVTEST - 1666)) | (1 << (PlSqlParser.SYS_OP_CSR - 1666)) | (1 << (PlSqlParser.SYS_OP_CSX_PATCH - 1666)) | (1 << (PlSqlParser.SYS_OP_CYCLED_SEQ - 1666)) | (1 << (PlSqlParser.SYS_OP_DECOMP - 1666)) | (1 << (PlSqlParser.SYS_OP_DESCEND - 1666)) | (1 << (PlSqlParser.SYS_OP_DISTINCT - 1666)) | (1 << (PlSqlParser.SYS_OP_DRA - 1666)) | (1 << (PlSqlParser.SYS_OP_DUMP - 1666)) | (1 << (PlSqlParser.SYS_OP_DV_CHECK - 1666)) | (1 << (PlSqlParser.SYS_OP_ENFORCE_NOT_NULL - 1666)))) !== 0) || ((((_la - 1698)) & ~0x1f) == 0 && ((1 << (_la - 1698)) & ((1 << (PlSqlParser.SYSOPER - 1698)) | (1 << (PlSqlParser.SYS_OP_EXTRACT - 1698)) | (1 << (PlSqlParser.SYS_OP_GROUPING - 1698)) | (1 << (PlSqlParser.SYS_OP_GUID - 1698)) | (1 << (PlSqlParser.SYS_OP_HASH - 1698)) | (1 << (PlSqlParser.SYS_OP_IIX - 1698)) | (1 << (PlSqlParser.SYS_OP_ITR - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_CREATE - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_FILTER_LIST - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_FILTER - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_SUCCEEDED - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_USE - 1698)) | (1 << (PlSqlParser.SYS_OP_LBID - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2BLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2CLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2ID - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2NCLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2TYP - 1698)) | (1 << (PlSqlParser.SYS_OP_LSVI - 1698)) | (1 << (PlSqlParser.SYS_OP_LVL - 1698)) | (1 << (PlSqlParser.SYS_OP_MAKEOID - 1698)) | (1 << (PlSqlParser.SYS_OP_MAP_NONNULL - 1698)) | (1 << (PlSqlParser.SYS_OP_MSR - 1698)) | (1 << (PlSqlParser.SYS_OP_NICOMBINE - 1698)) | (1 << (PlSqlParser.SYS_OP_NIEXTRACT - 1698)) | (1 << (PlSqlParser.SYS_OP_NII - 1698)) | (1 << (PlSqlParser.SYS_OP_NIX - 1698)) | (1 << (PlSqlParser.SYS_OP_NOEXPAND - 1698)) | (1 << (PlSqlParser.SYS_OP_NTCIMG - 1698)) | (1 << (PlSqlParser.SYS_OP_NUMTORAW - 1698)) | (1 << (PlSqlParser.SYS_OP_OIDVALUE - 1698)) | (1 << (PlSqlParser.SYS_OP_OPNSIZE - 1698)))) !== 0) || ((((_la - 1730)) & ~0x1f) == 0 && ((1 << (_la - 1730)) & ((1 << (PlSqlParser.SYS_OP_PAR_1 - 1730)) | (1 << (PlSqlParser.SYS_OP_PARGID_1 - 1730)) | (1 << (PlSqlParser.SYS_OP_PARGID - 1730)) | (1 << (PlSqlParser.SYS_OP_PAR - 1730)) | (1 << (PlSqlParser.SYS_OP_PART_ID - 1730)) | (1 << (PlSqlParser.SYS_OP_PIVOT - 1730)) | (1 << (PlSqlParser.SYS_OP_R2O - 1730)) | (1 << (PlSqlParser.SYS_OP_RAWTONUM - 1730)) | (1 << (PlSqlParser.SYS_OP_RDTM - 1730)) | (1 << (PlSqlParser.SYS_OP_REF - 1730)) | (1 << (PlSqlParser.SYS_OP_RMTD - 1730)) | (1 << (PlSqlParser.SYS_OP_ROWIDTOOBJ - 1730)) | (1 << (PlSqlParser.SYS_OP_RPB - 1730)) | (1 << (PlSqlParser.SYS_OPTLOBPRBSC - 1730)) | (1 << (PlSqlParser.SYS_OP_TOSETID - 1730)) | (1 << (PlSqlParser.SYS_OP_TPR - 1730)) | (1 << (PlSqlParser.SYS_OP_TRTB - 1730)) | (1 << (PlSqlParser.SYS_OPTXICMP - 1730)) | (1 << (PlSqlParser.SYS_OPTXQCASTASNQ - 1730)) | (1 << (PlSqlParser.SYS_OP_UNDESCEND - 1730)) | (1 << (PlSqlParser.SYS_OP_VECAND - 1730)) | (1 << (PlSqlParser.SYS_OP_VECBIT - 1730)) | (1 << (PlSqlParser.SYS_OP_VECOR - 1730)) | (1 << (PlSqlParser.SYS_OP_VECXOR - 1730)) | (1 << (PlSqlParser.SYS_OP_VERSION - 1730)) | (1 << (PlSqlParser.SYS_OP_VREF - 1730)) | (1 << (PlSqlParser.SYS_OP_VVD - 1730)) | (1 << (PlSqlParser.SYS_OP_XMLCONS_FOR_CSX - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHATG - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHIDX - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHOP - 1730)) | (1 << (PlSqlParser.SYS_OP_XTXT2SQLT - 1730)))) !== 0) || ((((_la - 1762)) & ~0x1f) == 0 && ((1 << (_la - 1762)) & ((1 << (PlSqlParser.SYS_OP_ZONE_ID - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_DEPTH - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_MAXCHILD - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_PARENT - 1762)) | (1 << (PlSqlParser.SYS_PARALLEL_TXN - 1762)) | (1 << (PlSqlParser.SYS_PATHID_IS_ATTR - 1762)) | (1 << (PlSqlParser.SYS_PATHID_IS_NMSPC - 1762)) | (1 << (PlSqlParser.SYS_PATHID_LASTNAME - 1762)) | (1 << (PlSqlParser.SYS_PATHID_LASTNMSPC - 1762)) | (1 << (PlSqlParser.SYS_PATH_REVERSE - 1762)) | (1 << (PlSqlParser.SYS_PXQEXTRACT - 1762)) | (1 << (PlSqlParser.SYS_RAW_TO_XSID - 1762)) | (1 << (PlSqlParser.SYS_RID_ORDER - 1762)) | (1 << (PlSqlParser.SYS_ROW_DELTA - 1762)) | (1 << (PlSqlParser.SYS_SC_2_XMLT - 1762)) | (1 << (PlSqlParser.SYS_SYNRCIREDO - 1762)) | (1 << (PlSqlParser.SYSTEM_DEFINED - 1762)) | (1 << (PlSqlParser.SYSTEM - 1762)) | (1 << (PlSqlParser.SYSTIMESTAMP - 1762)) | (1 << (PlSqlParser.SYS_TYPEID - 1762)) | (1 << (PlSqlParser.SYS_UMAKEXML - 1762)) | (1 << (PlSqlParser.SYS_XMLANALYZE - 1762)) | (1 << (PlSqlParser.SYS_XMLCONTAINS - 1762)) | (1 << (PlSqlParser.SYS_XMLCONV - 1762)) | (1 << (PlSqlParser.SYS_XMLEXNSURI - 1762)) | (1 << (PlSqlParser.SYS_XMLGEN - 1762)) | (1 << (PlSqlParser.SYS_XMLI_LOC_ISNODE - 1762)) | (1 << (PlSqlParser.SYS_XMLI_LOC_ISTEXT - 1762)) | (1 << (PlSqlParser.SYS_XMLINSTR - 1762)) | (1 << (PlSqlParser.SYS_XMLLOCATOR_GETSVAL - 1762)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETCID - 1762)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETLOCATOR - 1762)))) !== 0) || ((((_la - 1794)) & ~0x1f) == 0 && ((1 << (_la - 1794)) & ((1 << (PlSqlParser.SYS_XMLNODEID_GETOKEY - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETPATHID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETPTRID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETRID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETSVAL - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETTID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID - 1794)) | (1 << (PlSqlParser.SYS_XMLT_2_SC - 1794)) | (1 << (PlSqlParser.SYS_XMLTRANSLATE - 1794)) | (1 << (PlSqlParser.SYS_XMLTYPE2SQL - 1794)) | (1 << (PlSqlParser.SYS_XQ_ASQLCNV - 1794)) | (1 << (PlSqlParser.SYS_XQ_ATOMCNVCHK - 1794)) | (1 << (PlSqlParser.SYS_XQBASEURI - 1794)) | (1 << (PlSqlParser.SYS_XQCASTABLEERRH - 1794)) | (1 << (PlSqlParser.SYS_XQCODEP2STR - 1794)) | (1 << (PlSqlParser.SYS_XQCODEPEQ - 1794)) | (1 << (PlSqlParser.SYS_XQCON2SEQ - 1794)) | (1 << (PlSqlParser.SYS_XQCONCAT - 1794)) | (1 << (PlSqlParser.SYS_XQDELETE - 1794)) | (1 << (PlSqlParser.SYS_XQDFLTCOLATION - 1794)) | (1 << (PlSqlParser.SYS_XQDOC - 1794)) | (1 << (PlSqlParser.SYS_XQDOCURI - 1794)) | (1 << (PlSqlParser.SYS_XQDURDIV - 1794)) | (1 << (PlSqlParser.SYS_XQED4URI - 1794)) | (1 << (PlSqlParser.SYS_XQENDSWITH - 1794)) | (1 << (PlSqlParser.SYS_XQERRH - 1794)) | (1 << (PlSqlParser.SYS_XQERR - 1794)) | (1 << (PlSqlParser.SYS_XQESHTMLURI - 1794)) | (1 << (PlSqlParser.SYS_XQEXLOBVAL - 1794)) | (1 << (PlSqlParser.SYS_XQEXSTWRP - 1794)) | (1 << (PlSqlParser.SYS_XQEXTRACT - 1794)) | (1 << (PlSqlParser.SYS_XQEXTRREF - 1794)))) !== 0) || ((((_la - 1826)) & ~0x1f) == 0 && ((1 << (_la - 1826)) & ((1 << (PlSqlParser.SYS_XQEXVAL - 1826)) | (1 << (PlSqlParser.SYS_XQFB2STR - 1826)) | (1 << (PlSqlParser.SYS_XQFNBOOL - 1826)) | (1 << (PlSqlParser.SYS_XQFNCMP - 1826)) | (1 << (PlSqlParser.SYS_XQFNDATIM - 1826)) | (1 << (PlSqlParser.SYS_XQFNLNAME - 1826)) | (1 << (PlSqlParser.SYS_XQFNNM - 1826)) | (1 << (PlSqlParser.SYS_XQFNNSURI - 1826)) | (1 << (PlSqlParser.SYS_XQFNPREDTRUTH - 1826)) | (1 << (PlSqlParser.SYS_XQFNQNM - 1826)) | (1 << (PlSqlParser.SYS_XQFNROOT - 1826)) | (1 << (PlSqlParser.SYS_XQFORMATNUM - 1826)) | (1 << (PlSqlParser.SYS_XQFTCONTAIN - 1826)) | (1 << (PlSqlParser.SYS_XQFUNCR - 1826)) | (1 << (PlSqlParser.SYS_XQGETCONTENT - 1826)) | (1 << (PlSqlParser.SYS_XQINDXOF - 1826)) | (1 << (PlSqlParser.SYS_XQINSERT - 1826)) | (1 << (PlSqlParser.SYS_XQINSPFX - 1826)) | (1 << (PlSqlParser.SYS_XQIRI2URI - 1826)) | (1 << (PlSqlParser.SYS_XQLANG - 1826)) | (1 << (PlSqlParser.SYS_XQLLNMFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQMKNODEREF - 1826)) | (1 << (PlSqlParser.SYS_XQNILLED - 1826)) | (1 << (PlSqlParser.SYS_XQNODENAME - 1826)) | (1 << (PlSqlParser.SYS_XQNORMSPACE - 1826)) | (1 << (PlSqlParser.SYS_XQNORMUCODE - 1826)) | (1 << (PlSqlParser.SYS_XQ_NRNG - 1826)) | (1 << (PlSqlParser.SYS_XQNSP4PFX - 1826)) | (1 << (PlSqlParser.SYS_XQNSPFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQPFXFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQ_PKSQL2XML - 1826)) | (1 << (PlSqlParser.SYS_XQPOLYABS - 1826)))) !== 0) || ((((_la - 1858)) & ~0x1f) == 0 && ((1 << (_la - 1858)) & ((1 << (PlSqlParser.SYS_XQPOLYADD - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCEL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCSTBL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCST - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYDIV - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYFLR - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYMOD - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYMUL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYRND - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYSQRT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYSUB - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYUMUS - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYUPLS - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVEQ - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVGE - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVGT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVLE - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVLT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVNE - 1858)) | (1 << (PlSqlParser.SYS_XQREF2VAL - 1858)) | (1 << (PlSqlParser.SYS_XQRENAME - 1858)) | (1 << (PlSqlParser.SYS_XQREPLACE - 1858)) | (1 << (PlSqlParser.SYS_XQRESVURI - 1858)) | (1 << (PlSqlParser.SYS_XQRNDHALF2EVN - 1858)) | (1 << (PlSqlParser.SYS_XQRSLVQNM - 1858)) | (1 << (PlSqlParser.SYS_XQRYENVPGET - 1858)) | (1 << (PlSqlParser.SYS_XQRYVARGET - 1858)) | (1 << (PlSqlParser.SYS_XQRYWRP - 1858)) | (1 << (PlSqlParser.SYS_XQSEQ2CON4XC - 1858)) | (1 << (PlSqlParser.SYS_XQSEQ2CON - 1858)) | (1 << (PlSqlParser.SYS_XQSEQDEEPEQ - 1858)) | (1 << (PlSqlParser.SYS_XQSEQINSB - 1858)))) !== 0) || ((((_la - 1890)) & ~0x1f) == 0 && ((1 << (_la - 1890)) & ((1 << (PlSqlParser.SYS_XQSEQRM - 1890)) | (1 << (PlSqlParser.SYS_XQSEQRVS - 1890)) | (1 << (PlSqlParser.SYS_XQSEQSUB - 1890)) | (1 << (PlSqlParser.SYS_XQSEQTYPMATCH - 1890)) | (1 << (PlSqlParser.SYS_XQSTARTSWITH - 1890)) | (1 << (PlSqlParser.SYS_XQSTATBURI - 1890)) | (1 << (PlSqlParser.SYS_XQSTR2CODEP - 1890)) | (1 << (PlSqlParser.SYS_XQSTRJOIN - 1890)) | (1 << (PlSqlParser.SYS_XQSUBSTRAFT - 1890)) | (1 << (PlSqlParser.SYS_XQSUBSTRBEF - 1890)) | (1 << (PlSqlParser.SYS_XQTOKENIZE - 1890)) | (1 << (PlSqlParser.SYS_XQTREATAS - 1890)) | (1 << (PlSqlParser.SYS_XQ_UPKXML2SQL - 1890)) | (1 << (PlSqlParser.SYS_XQXFORM - 1890)) | (1 << (PlSqlParser.SYS_XSID_TO_RAW - 1890)) | (1 << (PlSqlParser.SYS_ZMAP_FILTER - 1890)) | (1 << (PlSqlParser.SYS_ZMAP_REFRESH - 1890)) | (1 << (PlSqlParser.TABLE_LOOKUP_BY_NL - 1890)) | (1 << (PlSqlParser.TABLESPACE_NO - 1890)) | (1 << (PlSqlParser.TABLESPACE - 1890)) | (1 << (PlSqlParser.TABLES - 1890)) | (1 << (PlSqlParser.TABLE_STATS - 1890)) | (1 << (PlSqlParser.TABLE - 1890)) | (1 << (PlSqlParser.TABNO - 1890)) | (1 << (PlSqlParser.TAG - 1890)) | (1 << (PlSqlParser.TANH - 1890)) | (1 << (PlSqlParser.TAN - 1890)) | (1 << (PlSqlParser.TBLORIDXPARTNUM - 1890)) | (1 << (PlSqlParser.TEMPFILE - 1890)) | (1 << (PlSqlParser.TEMPLATE - 1890)) | (1 << (PlSqlParser.TEMPORARY - 1890)) | (1 << (PlSqlParser.TEMP_TABLE - 1890)))) !== 0) || ((((_la - 1922)) & ~0x1f) == 0 && ((1 << (_la - 1922)) & ((1 << (PlSqlParser.TEST - 1922)) | (1 << (PlSqlParser.TEXT - 1922)) | (1 << (PlSqlParser.THAN - 1922)) | (1 << (PlSqlParser.THEN - 1922)) | (1 << (PlSqlParser.THE - 1922)) | (1 << (PlSqlParser.THREAD - 1922)) | (1 << (PlSqlParser.THROUGH - 1922)) | (1 << (PlSqlParser.TIER - 1922)) | (1 << (PlSqlParser.TIES - 1922)) | (1 << (PlSqlParser.TIMEOUT - 1922)) | (1 << (PlSqlParser.TIMESTAMP_LTZ_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMESTAMP - 1922)) | (1 << (PlSqlParser.TIMESTAMP_TZ_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMESTAMP_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMES - 1922)) | (1 << (PlSqlParser.TIME - 1922)) | (1 << (PlSqlParser.TIMEZONE_ABBR - 1922)) | (1 << (PlSqlParser.TIMEZONE_HOUR - 1922)) | (1 << (PlSqlParser.TIMEZONE_MINUTE - 1922)) | (1 << (PlSqlParser.TIMEZONE_OFFSET - 1922)) | (1 << (PlSqlParser.TIMEZONE_REGION - 1922)) | (1 << (PlSqlParser.TIME_ZONE - 1922)) | (1 << (PlSqlParser.TIV_GB - 1922)) | (1 << (PlSqlParser.TIV_SSF - 1922)) | (1 << (PlSqlParser.TO_ACLID - 1922)) | (1 << (PlSqlParser.TO_BINARY_DOUBLE - 1922)) | (1 << (PlSqlParser.TO_BINARY_FLOAT - 1922)) | (1 << (PlSqlParser.TO_BLOB - 1922)) | (1 << (PlSqlParser.TO_CLOB - 1922)) | (1 << (PlSqlParser.TO_DSINTERVAL - 1922)) | (1 << (PlSqlParser.TO_LOB - 1922)))) !== 0) || ((((_la - 1954)) & ~0x1f) == 0 && ((1 << (_la - 1954)) & ((1 << (PlSqlParser.TO_MULTI_BYTE - 1954)) | (1 << (PlSqlParser.TO_NCHAR - 1954)) | (1 << (PlSqlParser.TO_NCLOB - 1954)) | (1 << (PlSqlParser.TO_NUMBER - 1954)) | (1 << (PlSqlParser.TOPLEVEL - 1954)) | (1 << (PlSqlParser.TO_SINGLE_BYTE - 1954)) | (1 << (PlSqlParser.TO_TIMESTAMP - 1954)) | (1 << (PlSqlParser.TO_TIMESTAMP_TZ - 1954)) | (1 << (PlSqlParser.TO_TIME - 1954)) | (1 << (PlSqlParser.TO_TIME_TZ - 1954)) | (1 << (PlSqlParser.TO_YMINTERVAL - 1954)) | (1 << (PlSqlParser.TRACE - 1954)) | (1 << (PlSqlParser.TRACING - 1954)) | (1 << (PlSqlParser.TRACKING - 1954)) | (1 << (PlSqlParser.TRAILING - 1954)) | (1 << (PlSqlParser.TRANSACTION - 1954)) | (1 << (PlSqlParser.TRANSFORM_DISTINCT_AGG - 1954)) | (1 << (PlSqlParser.TRANSITIONAL - 1954)) | (1 << (PlSqlParser.TRANSITION - 1954)) | (1 << (PlSqlParser.TRANSLATE - 1954)) | (1 << (PlSqlParser.TRANSLATION - 1954)) | (1 << (PlSqlParser.TREAT - 1954)) | (1 << (PlSqlParser.TRIGGERS - 1954)) | (1 << (PlSqlParser.TRIGGER - 1954)) | (1 << (PlSqlParser.TRUE - 1954)) | (1 << (PlSqlParser.TRUNCATE - 1954)) | (1 << (PlSqlParser.TRUNC - 1954)) | (1 << (PlSqlParser.TRUSTED - 1954)) | (1 << (PlSqlParser.TRUST - 1954)) | (1 << (PlSqlParser.TUNING - 1954)) | (1 << (PlSqlParser.TX - 1954)))) !== 0) || ((((_la - 1986)) & ~0x1f) == 0 && ((1 << (_la - 1986)) & ((1 << (PlSqlParser.TYPES - 1986)) | (1 << (PlSqlParser.TYPE - 1986)) | (1 << (PlSqlParser.TZ_OFFSET - 1986)) | (1 << (PlSqlParser.UB2 - 1986)) | (1 << (PlSqlParser.UBA - 1986)) | (1 << (PlSqlParser.UCS2 - 1986)) | (1 << (PlSqlParser.UID - 1986)) | (1 << (PlSqlParser.UNARCHIVED - 1986)) | (1 << (PlSqlParser.UNBOUNDED - 1986)) | (1 << (PlSqlParser.UNBOUND - 1986)) | (1 << (PlSqlParser.UNCONDITIONAL - 1986)) | (1 << (PlSqlParser.UNDER - 1986)) | (1 << (PlSqlParser.UNDO - 1986)) | (1 << (PlSqlParser.UNDROP - 1986)) | (1 << (PlSqlParser.UNIFORM - 1986)) | (1 << (PlSqlParser.UNISTR - 1986)) | (1 << (PlSqlParser.UNLIMITED - 1986)) | (1 << (PlSqlParser.UNLOAD - 1986)) | (1 << (PlSqlParser.UNLOCK - 1986)) | (1 << (PlSqlParser.UNMATCHED - 1986)) | (1 << (PlSqlParser.UNNEST_INNERJ_DISTINCT_VIEW - 1986)) | (1 << (PlSqlParser.UNNEST_NOSEMIJ_NODISTINCTVIEW - 1986)) | (1 << (PlSqlParser.UNNEST_SEMIJ_VIEW - 1986)) | (1 << (PlSqlParser.UNNEST - 1986)) | (1 << (PlSqlParser.UNPACKED - 1986)) | (1 << (PlSqlParser.UNPIVOT - 1986)) | (1 << (PlSqlParser.UNPLUG - 1986)) | (1 << (PlSqlParser.UNPROTECTED - 1986)) | (1 << (PlSqlParser.UNQUIESCE - 1986)) | (1 << (PlSqlParser.UNRECOVERABLE - 1986)))) !== 0) || ((((_la - 2018)) & ~0x1f) == 0 && ((1 << (_la - 2018)) & ((1 << (PlSqlParser.UNRESTRICTED - 2018)) | (1 << (PlSqlParser.UNSUBSCRIBE - 2018)) | (1 << (PlSqlParser.UNTIL - 2018)) | (1 << (PlSqlParser.UNUSABLE - 2018)) | (1 << (PlSqlParser.UNUSED - 2018)) | (1 << (PlSqlParser.UPDATABLE - 2018)) | (1 << (PlSqlParser.UPDATED - 2018)) | (1 << (PlSqlParser.UPDATEXML - 2018)) | (1 << (PlSqlParser.UPD_INDEXES - 2018)) | (1 << (PlSqlParser.UPD_JOININDEX - 2018)) | (1 << (PlSqlParser.UPGRADE - 2018)) | (1 << (PlSqlParser.UPPER - 2018)) | (1 << (PlSqlParser.UPSERT - 2018)) | (1 << (PlSqlParser.UROWID - 2018)) | (1 << (PlSqlParser.USABLE - 2018)) | (1 << (PlSqlParser.USAGE - 2018)) | (1 << (PlSqlParser.USE_ANTI - 2018)) | (1 << (PlSqlParser.USE_CONCAT - 2018)) | (1 << (PlSqlParser.USE_CUBE - 2018)) | (1 << (PlSqlParser.USE_HASH_AGGREGATION - 2018)) | (1 << (PlSqlParser.USE_HASH_GBY_FOR_PUSHDOWN - 2018)) | (1 << (PlSqlParser.USE_HASH - 2018)) | (1 << (PlSqlParser.USE_HIDDEN_PARTITIONS - 2018)) | (1 << (PlSqlParser.USE_INVISIBLE_INDEXES - 2018)) | (1 << (PlSqlParser.USE_MERGE_CARTESIAN - 2018)) | (1 << (PlSqlParser.USE_MERGE - 2018)) | (1 << (PlSqlParser.USE_NL - 2018)) | (1 << (PlSqlParser.USE_NL_WITH_INDEX - 2018)) | (1 << (PlSqlParser.USE_PRIVATE_OUTLINES - 2018)) | (1 << (PlSqlParser.USER_DATA - 2018)) | (1 << (PlSqlParser.USER_DEFINED - 2018)))) !== 0) || ((((_la - 2050)) & ~0x1f) == 0 && ((1 << (_la - 2050)) & ((1 << (PlSqlParser.USERENV - 2050)) | (1 << (PlSqlParser.USERGROUP - 2050)) | (1 << (PlSqlParser.USER_RECYCLEBIN - 2050)) | (1 << (PlSqlParser.USERS - 2050)) | (1 << (PlSqlParser.USER_TABLESPACES - 2050)) | (1 << (PlSqlParser.USER - 2050)) | (1 << (PlSqlParser.USE_SEMI - 2050)) | (1 << (PlSqlParser.USE_STORED_OUTLINES - 2050)) | (1 << (PlSqlParser.USE_TTT_FOR_GSETS - 2050)) | (1 << (PlSqlParser.USE - 2050)) | (1 << (PlSqlParser.USE_VECTOR_AGGREGATION - 2050)) | (1 << (PlSqlParser.USE_WEAK_NAME_RESL - 2050)) | (1 << (PlSqlParser.USING_NO_EXPAND - 2050)) | (1 << (PlSqlParser.USING - 2050)) | (1 << (PlSqlParser.UTF16BE - 2050)) | (1 << (PlSqlParser.UTF16LE - 2050)) | (1 << (PlSqlParser.UTF32 - 2050)) | (1 << (PlSqlParser.UTF8 - 2050)) | (1 << (PlSqlParser.V1 - 2050)) | (1 << (PlSqlParser.V2 - 2050)) | (1 << (PlSqlParser.VALIDATE - 2050)) | (1 << (PlSqlParser.VALIDATION - 2050)) | (1 << (PlSqlParser.VALID_TIME_END - 2050)) | (1 << (PlSqlParser.VALUE - 2050)) | (1 << (PlSqlParser.VARCHAR2 - 2050)) | (1 << (PlSqlParser.VARCHAR - 2050)) | (1 << (PlSqlParser.VARIABLE - 2050)) | (1 << (PlSqlParser.VAR_POP - 2050)) | (1 << (PlSqlParser.VARRAYS - 2050)) | (1 << (PlSqlParser.VARRAY - 2050)) | (1 << (PlSqlParser.VAR_SAMP - 2050)))) !== 0) || ((((_la - 2082)) & ~0x1f) == 0 && ((1 << (_la - 2082)) & ((1 << (PlSqlParser.VARYING - 2082)) | (1 << (PlSqlParser.VECTOR_READ_TRACE - 2082)) | (1 << (PlSqlParser.VECTOR_READ - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM_DIMS - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM_FACT - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM - 2082)) | (1 << (PlSqlParser.VERIFIER - 2082)) | (1 << (PlSqlParser.VERIFY - 2082)) | (1 << (PlSqlParser.VERSIONING - 2082)) | (1 << (PlSqlParser.VERSIONS_ENDSCN - 2082)) | (1 << (PlSqlParser.VERSIONS_ENDTIME - 2082)) | (1 << (PlSqlParser.VERSIONS_OPERATION - 2082)) | (1 << (PlSqlParser.VERSIONS_STARTSCN - 2082)) | (1 << (PlSqlParser.VERSIONS_STARTTIME - 2082)) | (1 << (PlSqlParser.VERSIONS - 2082)) | (1 << (PlSqlParser.VERSIONS_XID - 2082)) | (1 << (PlSqlParser.VERSION - 2082)) | (1 << (PlSqlParser.VIOLATION - 2082)) | (1 << (PlSqlParser.VIRTUAL - 2082)) | (1 << (PlSqlParser.VISIBILITY - 2082)) | (1 << (PlSqlParser.VISIBLE - 2082)) | (1 << (PlSqlParser.VOLUME - 2082)) | (1 << (PlSqlParser.VSIZE - 2082)) | (1 << (PlSqlParser.WAIT - 2082)) | (1 << (PlSqlParser.WALLET - 2082)) | (1 << (PlSqlParser.WARNING - 2082)) | (1 << (PlSqlParser.WEEKS - 2082)) | (1 << (PlSqlParser.WEEK - 2082)) | (1 << (PlSqlParser.WELLFORMED - 2082)) | (1 << (PlSqlParser.WHENEVER - 2082)) | (1 << (PlSqlParser.WHEN - 2082)))) !== 0) || ((((_la - 2115)) & ~0x1f) == 0 && ((1 << (_la - 2115)) & ((1 << (PlSqlParser.WHILE - 2115)) | (1 << (PlSqlParser.WHITESPACE - 2115)) | (1 << (PlSqlParser.WIDTH_BUCKET - 2115)) | (1 << (PlSqlParser.WITHIN - 2115)) | (1 << (PlSqlParser.WITHOUT - 2115)) | (1 << (PlSqlParser.WITH_PLSQL - 2115)) | (1 << (PlSqlParser.WORK - 2115)) | (1 << (PlSqlParser.WRAPPED - 2115)) | (1 << (PlSqlParser.WRAPPER - 2115)) | (1 << (PlSqlParser.WRITE - 2115)) | (1 << (PlSqlParser.XDB_FASTPATH_INSERT - 2115)) | (1 << (PlSqlParser.X_DYN_PRUNE - 2115)) | (1 << (PlSqlParser.XID - 2115)) | (1 << (PlSqlParser.XML2OBJECT - 2115)) | (1 << (PlSqlParser.XMLAGG - 2115)) | (1 << (PlSqlParser.XMLATTRIBUTES - 2115)) | (1 << (PlSqlParser.XMLCAST - 2115)) | (1 << (PlSqlParser.XMLCDATA - 2115)) | (1 << (PlSqlParser.XMLCOLATTVAL - 2115)) | (1 << (PlSqlParser.XMLCOMMENT - 2115)) | (1 << (PlSqlParser.XMLCONCAT - 2115)) | (1 << (PlSqlParser.XMLDIFF - 2115)) | (1 << (PlSqlParser.XML_DML_RWT_STMT - 2115)) | (1 << (PlSqlParser.XMLELEMENT - 2115)) | (1 << (PlSqlParser.XMLEXISTS2 - 2115)) | (1 << (PlSqlParser.XMLEXISTS - 2115)) | (1 << (PlSqlParser.XMLFOREST - 2115)) | (1 << (PlSqlParser.XMLINDEX_REWRITE_IN_SELECT - 2115)) | (1 << (PlSqlParser.XMLINDEX_REWRITE - 2115)))) !== 0) || ((((_la - 2147)) & ~0x1f) == 0 && ((1 << (_la - 2147)) & ((1 << (PlSqlParser.XMLINDEX_SEL_IDX_TBL - 2147)) | (1 << (PlSqlParser.XMLISNODE - 2147)) | (1 << (PlSqlParser.XMLISVALID - 2147)) | (1 << (PlSqlParser.XMLNAMESPACES - 2147)) | (1 << (PlSqlParser.XMLPARSE - 2147)) | (1 << (PlSqlParser.XMLPATCH - 2147)) | (1 << (PlSqlParser.XMLPI - 2147)) | (1 << (PlSqlParser.XMLQUERYVAL - 2147)) | (1 << (PlSqlParser.XMLQUERY - 2147)) | (1 << (PlSqlParser.XMLROOT - 2147)) | (1 << (PlSqlParser.XMLSCHEMA - 2147)) | (1 << (PlSqlParser.XMLSERIALIZE - 2147)) | (1 << (PlSqlParser.XMLTABLE - 2147)) | (1 << (PlSqlParser.XMLTRANSFORMBLOB - 2147)) | (1 << (PlSqlParser.XMLTRANSFORM - 2147)) | (1 << (PlSqlParser.XMLTYPE - 2147)) | (1 << (PlSqlParser.XML - 2147)) | (1 << (PlSqlParser.XPATHTABLE - 2147)) | (1 << (PlSqlParser.XS_SYS_CONTEXT - 2147)) | (1 << (PlSqlParser.XS - 2147)) | (1 << (PlSqlParser.YEARS - 2147)) | (1 << (PlSqlParser.YEAR - 2147)) | (1 << (PlSqlParser.YES - 2147)) | (1 << (PlSqlParser.YMINTERVAL_UNCONSTRAINED - 2147)) | (1 << (PlSqlParser.ZONEMAP - 2147)) | (1 << (PlSqlParser.ZONE - 2147)) | (1 << (PlSqlParser.PREDICTION - 2147)) | (1 << (PlSqlParser.PREDICTION_BOUNDS - 2147)) | (1 << (PlSqlParser.PREDICTION_COST - 2147)) | (1 << (PlSqlParser.PREDICTION_DETAILS - 2147)) | (1 << (PlSqlParser.PREDICTION_PROBABILITY - 2147)))) !== 0) || ((((_la - 2179)) & ~0x1f) == 0 && ((1 << (_la - 2179)) & ((1 << (PlSqlParser.PREDICTION_SET - 2179)) | (1 << (PlSqlParser.CUME_DIST - 2179)) | (1 << (PlSqlParser.DENSE_RANK - 2179)) | (1 << (PlSqlParser.LISTAGG - 2179)) | (1 << (PlSqlParser.PERCENT_RANK - 2179)) | (1 << (PlSqlParser.PERCENTILE_CONT - 2179)) | (1 << (PlSqlParser.PERCENTILE_DISC - 2179)) | (1 << (PlSqlParser.RANK - 2179)) | (1 << (PlSqlParser.AVG - 2179)) | (1 << (PlSqlParser.CORR - 2179)) | (1 << (PlSqlParser.COVAR_ - 2179)) | (1 << (PlSqlParser.LAG - 2179)) | (1 << (PlSqlParser.LEAD - 2179)) | (1 << (PlSqlParser.MAX - 2179)) | (1 << (PlSqlParser.MEDIAN - 2179)) | (1 << (PlSqlParser.MIN - 2179)) | (1 << (PlSqlParser.NTILE - 2179)) | (1 << (PlSqlParser.NVL - 2179)) | (1 << (PlSqlParser.RATIO_TO_REPORT - 2179)) | (1 << (PlSqlParser.REGR_ - 2179)) | (1 << (PlSqlParser.ROUND - 2179)) | (1 << (PlSqlParser.ROW_NUMBER - 2179)) | (1 << (PlSqlParser.SUBSTR - 2179)) | (1 << (PlSqlParser.TO_CHAR - 2179)) | (1 << (PlSqlParser.TRIM - 2179)) | (1 << (PlSqlParser.SUM - 2179)) | (1 << (PlSqlParser.STDDEV - 2179)) | (1 << (PlSqlParser.VAR_ - 2179)) | (1 << (PlSqlParser.VARIANCE - 2179)) | (1 << (PlSqlParser.LEAST - 2179)) | (1 << (PlSqlParser.GREATEST - 2179)))) !== 0) || _la===PlSqlParser.TO_DATE || _la===PlSqlParser.PERIOD || _la===PlSqlParser.REGULAR_ID) {
+ this.state = 6102;
+ this.subpartition_name();
+ }
+
+ this.state = 6105;
+ this.range_values_clause();
+ this.state = 6107;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.COMPRESS || _la===PlSqlParser.LOB || _la===PlSqlParser.NOCOMPRESS || _la===PlSqlParser.OVERFLOW || _la===PlSqlParser.TABLESPACE || _la===PlSqlParser.VARRAY) {
+ this.state = 6106;
+ this.partitioning_storage_clause();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function List_subpartition_descContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_list_subpartition_desc;
+ return this;
+}
+
+List_subpartition_descContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+List_subpartition_descContext.prototype.constructor = List_subpartition_descContext;
+
+List_subpartition_descContext.prototype.SUBPARTITION = function() {
+ return this.getToken(PlSqlParser.SUBPARTITION, 0);
+};
+
+List_subpartition_descContext.prototype.list_values_clause = function() {
+ return this.getTypedRuleContext(List_values_clauseContext,0);
+};
+
+List_subpartition_descContext.prototype.subpartition_name = function() {
+ return this.getTypedRuleContext(Subpartition_nameContext,0);
+};
+
+List_subpartition_descContext.prototype.partitioning_storage_clause = function() {
+ return this.getTypedRuleContext(Partitioning_storage_clauseContext,0);
+};
+
+List_subpartition_descContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterList_subpartition_desc(this);
+ }
+};
+
+List_subpartition_descContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitList_subpartition_desc(this);
+ }
+};
+
+List_subpartition_descContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitList_subpartition_desc(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.List_subpartition_descContext = List_subpartition_descContext;
+
+PlSqlParser.prototype.list_subpartition_desc = function() {
+
+ var localctx = new List_subpartition_descContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 588, PlSqlParser.RULE_list_subpartition_desc);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6109;
+ this.match(PlSqlParser.SUBPARTITION);
+ this.state = 6111;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if((((_la) & ~0x1f) == 0 && ((1 << _la) & ((1 << PlSqlParser.ABORT) | (1 << PlSqlParser.ABS) | (1 << PlSqlParser.ACCESS) | (1 << PlSqlParser.ACCESSED) | (1 << PlSqlParser.ACCOUNT) | (1 << PlSqlParser.ACL) | (1 << PlSqlParser.ACOS) | (1 << PlSqlParser.ACTION) | (1 << PlSqlParser.ACTIONS) | (1 << PlSqlParser.ACTIVATE) | (1 << PlSqlParser.ACTIVE) | (1 << PlSqlParser.ACTIVE_COMPONENT) | (1 << PlSqlParser.ACTIVE_DATA) | (1 << PlSqlParser.ACTIVE_FUNCTION) | (1 << PlSqlParser.ACTIVE_TAG) | (1 << PlSqlParser.ACTIVITY) | (1 << PlSqlParser.ADAPTIVE_PLAN) | (1 << PlSqlParser.ADD) | (1 << PlSqlParser.ADD_COLUMN) | (1 << PlSqlParser.ADD_GROUP) | (1 << PlSqlParser.ADD_MONTHS) | (1 << PlSqlParser.ADJ_DATE) | (1 << PlSqlParser.ADMIN) | (1 << PlSqlParser.ADMINISTER) | (1 << PlSqlParser.ADMINISTRATOR) | (1 << PlSqlParser.ADVANCED) | (1 << PlSqlParser.ADVISE) | (1 << PlSqlParser.ADVISOR) | (1 << PlSqlParser.AFD_DISKSTRING) | (1 << PlSqlParser.AFTER) | (1 << PlSqlParser.AGENT))) !== 0) || ((((_la - 32)) & ~0x1f) == 0 && ((1 << (_la - 32)) & ((1 << (PlSqlParser.AGGREGATE - 32)) | (1 << (PlSqlParser.A_LETTER - 32)) | (1 << (PlSqlParser.ALIAS - 32)) | (1 << (PlSqlParser.ALLOCATE - 32)) | (1 << (PlSqlParser.ALLOW - 32)) | (1 << (PlSqlParser.ALL_ROWS - 32)) | (1 << (PlSqlParser.ALWAYS - 32)) | (1 << (PlSqlParser.ANALYZE - 32)) | (1 << (PlSqlParser.ANCILLARY - 32)) | (1 << (PlSqlParser.AND_EQUAL - 32)) | (1 << (PlSqlParser.ANOMALY - 32)) | (1 << (PlSqlParser.ANSI_REARCH - 32)) | (1 << (PlSqlParser.ANTIJOIN - 32)) | (1 << (PlSqlParser.ANYSCHEMA - 32)) | (1 << (PlSqlParser.APPEND - 32)) | (1 << (PlSqlParser.APPENDCHILDXML - 32)) | (1 << (PlSqlParser.APPEND_VALUES - 32)) | (1 << (PlSqlParser.APPLICATION - 32)) | (1 << (PlSqlParser.APPLY - 32)) | (1 << (PlSqlParser.APPROX_COUNT_DISTINCT - 32)) | (1 << (PlSqlParser.ARCHIVAL - 32)) | (1 << (PlSqlParser.ARCHIVE - 32)) | (1 << (PlSqlParser.ARCHIVED - 32)) | (1 << (PlSqlParser.ARCHIVELOG - 32)) | (1 << (PlSqlParser.ARRAY - 32)) | (1 << (PlSqlParser.ASCII - 32)))) !== 0) || ((((_la - 64)) & ~0x1f) == 0 && ((1 << (_la - 64)) & ((1 << (PlSqlParser.ASCIISTR - 64)) | (1 << (PlSqlParser.ASIN - 64)) | (1 << (PlSqlParser.ASIS - 64)) | (1 << (PlSqlParser.ASSEMBLY - 64)) | (1 << (PlSqlParser.ASSIGN - 64)) | (1 << (PlSqlParser.ASSOCIATE - 64)) | (1 << (PlSqlParser.ASYNC - 64)) | (1 << (PlSqlParser.ASYNCHRONOUS - 64)) | (1 << (PlSqlParser.ATAN2 - 64)) | (1 << (PlSqlParser.ATAN - 64)) | (1 << (PlSqlParser.AT - 64)) | (1 << (PlSqlParser.ATTRIBUTE - 64)) | (1 << (PlSqlParser.ATTRIBUTES - 64)) | (1 << (PlSqlParser.AUTHENTICATED - 64)) | (1 << (PlSqlParser.AUTHENTICATION - 64)) | (1 << (PlSqlParser.AUTHID - 64)) | (1 << (PlSqlParser.AUTHORIZATION - 64)) | (1 << (PlSqlParser.AUTOALLOCATE - 64)) | (1 << (PlSqlParser.AUTO - 64)) | (1 << (PlSqlParser.AUTOEXTEND - 64)) | (1 << (PlSqlParser.AUTO_LOGIN - 64)) | (1 << (PlSqlParser.AUTOMATIC - 64)) | (1 << (PlSqlParser.AUTONOMOUS_TRANSACTION - 64)) | (1 << (PlSqlParser.AUTO_REOPTIMIZE - 64)) | (1 << (PlSqlParser.AVAILABILITY - 64)) | (1 << (PlSqlParser.AVRO - 64)) | (1 << (PlSqlParser.BACKGROUND - 64)) | (1 << (PlSqlParser.BACKUP - 64)) | (1 << (PlSqlParser.BASIC - 64)))) !== 0) || ((((_la - 96)) & ~0x1f) == 0 && ((1 << (_la - 96)) & ((1 << (PlSqlParser.BASICFILE - 96)) | (1 << (PlSqlParser.BATCH - 96)) | (1 << (PlSqlParser.BATCHSIZE - 96)) | (1 << (PlSqlParser.BATCH_TABLE_ACCESS_BY_ROWID - 96)) | (1 << (PlSqlParser.BECOME - 96)) | (1 << (PlSqlParser.BEFORE - 96)) | (1 << (PlSqlParser.BEGIN - 96)) | (1 << (PlSqlParser.BEGINNING - 96)) | (1 << (PlSqlParser.BEGIN_OUTLINE_DATA - 96)) | (1 << (PlSqlParser.BEHALF - 96)) | (1 << (PlSqlParser.BEQUEATH - 96)) | (1 << (PlSqlParser.BFILE - 96)) | (1 << (PlSqlParser.BFILENAME - 96)) | (1 << (PlSqlParser.BIGFILE - 96)) | (1 << (PlSqlParser.BINARY - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE_INFINITY - 96)) | (1 << (PlSqlParser.BINARY_DOUBLE_NAN - 96)) | (1 << (PlSqlParser.BINARY_FLOAT - 96)) | (1 << (PlSqlParser.BINARY_FLOAT_INFINITY - 96)) | (1 << (PlSqlParser.BINARY_FLOAT_NAN - 96)) | (1 << (PlSqlParser.BINARY_INTEGER - 96)) | (1 << (PlSqlParser.BIND_AWARE - 96)) | (1 << (PlSqlParser.BINDING - 96)) | (1 << (PlSqlParser.BIN_TO_NUM - 96)) | (1 << (PlSqlParser.BITAND - 96)) | (1 << (PlSqlParser.BITMAP_AND - 96)) | (1 << (PlSqlParser.BITMAP - 96)) | (1 << (PlSqlParser.BITMAPS - 96)) | (1 << (PlSqlParser.BITMAP_TREE - 96)) | (1 << (PlSqlParser.BITS - 96)))) !== 0) || ((((_la - 128)) & ~0x1f) == 0 && ((1 << (_la - 128)) & ((1 << (PlSqlParser.BLOB - 128)) | (1 << (PlSqlParser.BLOCK - 128)) | (1 << (PlSqlParser.BLOCK_RANGE - 128)) | (1 << (PlSqlParser.BLOCKS - 128)) | (1 << (PlSqlParser.BLOCKSIZE - 128)) | (1 << (PlSqlParser.BODY - 128)) | (1 << (PlSqlParser.BOOLEAN - 128)) | (1 << (PlSqlParser.BOTH - 128)) | (1 << (PlSqlParser.BOUND - 128)) | (1 << (PlSqlParser.BRANCH - 128)) | (1 << (PlSqlParser.BREADTH - 128)) | (1 << (PlSqlParser.BROADCAST - 128)) | (1 << (PlSqlParser.BSON - 128)) | (1 << (PlSqlParser.BUFFER - 128)) | (1 << (PlSqlParser.BUFFER_CACHE - 128)) | (1 << (PlSqlParser.BUFFER_POOL - 128)) | (1 << (PlSqlParser.BUILD - 128)) | (1 << (PlSqlParser.BULK - 128)) | (1 << (PlSqlParser.BYPASS_RECURSIVE_CHECK - 128)) | (1 << (PlSqlParser.BYPASS_UJVC - 128)) | (1 << (PlSqlParser.BYTE - 128)) | (1 << (PlSqlParser.CACHE - 128)) | (1 << (PlSqlParser.CACHE_CB - 128)) | (1 << (PlSqlParser.CACHE_INSTANCES - 128)) | (1 << (PlSqlParser.CACHE_TEMP_TABLE - 128)) | (1 << (PlSqlParser.CACHING - 128)) | (1 << (PlSqlParser.CALCULATED - 128)) | (1 << (PlSqlParser.CALLBACK - 128)) | (1 << (PlSqlParser.CALL - 128)) | (1 << (PlSqlParser.CANCEL - 128)))) !== 0) || ((((_la - 160)) & ~0x1f) == 0 && ((1 << (_la - 160)) & ((1 << (PlSqlParser.CAPACITY - 160)) | (1 << (PlSqlParser.CARDINALITY - 160)) | (1 << (PlSqlParser.CASCADE - 160)) | (1 << (PlSqlParser.CASE - 160)) | (1 << (PlSqlParser.CAST - 160)) | (1 << (PlSqlParser.CATEGORY - 160)) | (1 << (PlSqlParser.CDBDEFAULT - 160)) | (1 << (PlSqlParser.CEIL - 160)) | (1 << (PlSqlParser.CELL_FLASH_CACHE - 160)) | (1 << (PlSqlParser.CERTIFICATE - 160)) | (1 << (PlSqlParser.CFILE - 160)) | (1 << (PlSqlParser.CHAINED - 160)) | (1 << (PlSqlParser.CHANGE - 160)) | (1 << (PlSqlParser.CHANGE_DUPKEY_ERROR_INDEX - 160)) | (1 << (PlSqlParser.CHARACTER - 160)) | (1 << (PlSqlParser.CHAR - 160)) | (1 << (PlSqlParser.CHAR_CS - 160)) | (1 << (PlSqlParser.CHARTOROWID - 160)) | (1 << (PlSqlParser.CHECK_ACL_REWRITE - 160)) | (1 << (PlSqlParser.CHECKPOINT - 160)) | (1 << (PlSqlParser.CHILD - 160)) | (1 << (PlSqlParser.CHOOSE - 160)) | (1 << (PlSqlParser.CHR - 160)) | (1 << (PlSqlParser.CHUNK - 160)) | (1 << (PlSqlParser.CLASS - 160)) | (1 << (PlSqlParser.CLASSIFIER - 160)) | (1 << (PlSqlParser.CLEANUP - 160)) | (1 << (PlSqlParser.CLEAR - 160)) | (1 << (PlSqlParser.C_LETTER - 160)) | (1 << (PlSqlParser.CLIENT - 160)))) !== 0) || ((((_la - 192)) & ~0x1f) == 0 && ((1 << (_la - 192)) & ((1 << (PlSqlParser.CLOB - 192)) | (1 << (PlSqlParser.CLONE - 192)) | (1 << (PlSqlParser.CLOSE_CACHED_OPEN_CURSORS - 192)) | (1 << (PlSqlParser.CLOSE - 192)) | (1 << (PlSqlParser.CLUSTER_BY_ROWID - 192)) | (1 << (PlSqlParser.CLUSTER - 192)) | (1 << (PlSqlParser.CLUSTER_DETAILS - 192)) | (1 << (PlSqlParser.CLUSTER_DISTANCE - 192)) | (1 << (PlSqlParser.CLUSTER_ID - 192)) | (1 << (PlSqlParser.CLUSTERING - 192)) | (1 << (PlSqlParser.CLUSTERING_FACTOR - 192)) | (1 << (PlSqlParser.CLUSTER_PROBABILITY - 192)) | (1 << (PlSqlParser.CLUSTER_SET - 192)) | (1 << (PlSqlParser.COALESCE - 192)) | (1 << (PlSqlParser.COALESCE_SQ - 192)) | (1 << (PlSqlParser.COARSE - 192)) | (1 << (PlSqlParser.CO_AUTH_IND - 192)) | (1 << (PlSqlParser.COLD - 192)) | (1 << (PlSqlParser.COLLECT - 192)) | (1 << (PlSqlParser.COLUMNAR - 192)) | (1 << (PlSqlParser.COLUMN_AUTH_INDICATOR - 192)) | (1 << (PlSqlParser.COLUMN - 192)) | (1 << (PlSqlParser.COLUMNS - 192)) | (1 << (PlSqlParser.COLUMN_STATS - 192)) | (1 << (PlSqlParser.COLUMN_VALUE - 192)) | (1 << (PlSqlParser.COMMENT - 192)) | (1 << (PlSqlParser.COMMIT - 192)) | (1 << (PlSqlParser.COMMITTED - 192)) | (1 << (PlSqlParser.COMMON_DATA - 192)) | (1 << (PlSqlParser.COMPACT - 192)) | (1 << (PlSqlParser.COMPATIBILITY - 192)) | (1 << (PlSqlParser.COMPILE - 192)))) !== 0) || ((((_la - 224)) & ~0x1f) == 0 && ((1 << (_la - 224)) & ((1 << (PlSqlParser.COMPLETE - 224)) | (1 << (PlSqlParser.COMPLIANCE - 224)) | (1 << (PlSqlParser.COMPONENT - 224)) | (1 << (PlSqlParser.COMPONENTS - 224)) | (1 << (PlSqlParser.COMPOSE - 224)) | (1 << (PlSqlParser.COMPOSITE - 224)) | (1 << (PlSqlParser.COMPOSITE_LIMIT - 224)) | (1 << (PlSqlParser.COMPOUND - 224)) | (1 << (PlSqlParser.COMPUTE - 224)) | (1 << (PlSqlParser.CONCAT - 224)) | (1 << (PlSqlParser.CON_DBID_TO_ID - 224)) | (1 << (PlSqlParser.CONDITIONAL - 224)) | (1 << (PlSqlParser.CONDITION - 224)) | (1 << (PlSqlParser.CONFIRM - 224)) | (1 << (PlSqlParser.CONFORMING - 224)) | (1 << (PlSqlParser.CON_GUID_TO_ID - 224)) | (1 << (PlSqlParser.CON_ID - 224)) | (1 << (PlSqlParser.CON_NAME_TO_ID - 224)) | (1 << (PlSqlParser.CONNECT_BY_CB_WHR_ONLY - 224)) | (1 << (PlSqlParser.CONNECT_BY_COMBINE_SW - 224)) | (1 << (PlSqlParser.CONNECT_BY_COST_BASED - 224)) | (1 << (PlSqlParser.CONNECT_BY_ELIM_DUPS - 224)) | (1 << (PlSqlParser.CONNECT_BY_FILTERING - 224)) | (1 << (PlSqlParser.CONNECT_BY_ISCYCLE - 224)) | (1 << (PlSqlParser.CONNECT_BY_ISLEAF - 224)) | (1 << (PlSqlParser.CONNECT_BY_ROOT - 224)) | (1 << (PlSqlParser.CONNECT_TIME - 224)) | (1 << (PlSqlParser.CONSIDER - 224)) | (1 << (PlSqlParser.CONSISTENT - 224)) | (1 << (PlSqlParser.CONSTANT - 224)))) !== 0) || ((((_la - 256)) & ~0x1f) == 0 && ((1 << (_la - 256)) & ((1 << (PlSqlParser.CONST - 256)) | (1 << (PlSqlParser.CONSTRAINT - 256)) | (1 << (PlSqlParser.CONSTRAINTS - 256)) | (1 << (PlSqlParser.CONSTRUCTOR - 256)) | (1 << (PlSqlParser.CONTAINER - 256)) | (1 << (PlSqlParser.CONTAINER_DATA - 256)) | (1 << (PlSqlParser.CONTAINERS - 256)) | (1 << (PlSqlParser.CONTENT - 256)) | (1 << (PlSqlParser.CONTENTS - 256)) | (1 << (PlSqlParser.CONTEXT - 256)) | (1 << (PlSqlParser.CONTINUE - 256)) | (1 << (PlSqlParser.CONTROLFILE - 256)) | (1 << (PlSqlParser.CON_UID_TO_ID - 256)) | (1 << (PlSqlParser.CONVERT - 256)) | (1 << (PlSqlParser.COOKIE - 256)) | (1 << (PlSqlParser.COPY - 256)) | (1 << (PlSqlParser.CORR_K - 256)) | (1 << (PlSqlParser.CORR_S - 256)) | (1 << (PlSqlParser.CORRUPTION - 256)) | (1 << (PlSqlParser.CORRUPT_XID_ALL - 256)) | (1 << (PlSqlParser.CORRUPT_XID - 256)) | (1 << (PlSqlParser.COS - 256)) | (1 << (PlSqlParser.COSH - 256)) | (1 << (PlSqlParser.COST - 256)) | (1 << (PlSqlParser.COST_XML_QUERY_REWRITE - 256)) | (1 << (PlSqlParser.COUNT - 256)) | (1 << (PlSqlParser.COVAR_POP - 256)) | (1 << (PlSqlParser.COVAR_SAMP - 256)) | (1 << (PlSqlParser.CPU_COSTING - 256)) | (1 << (PlSqlParser.CPU_PER_CALL - 256)) | (1 << (PlSqlParser.CPU_PER_SESSION - 256)) | (1 << (PlSqlParser.CRASH - 256)))) !== 0) || ((((_la - 289)) & ~0x1f) == 0 && ((1 << (_la - 289)) & ((1 << (PlSqlParser.CREATE_FILE_DEST - 289)) | (1 << (PlSqlParser.CREATE_STORED_OUTLINES - 289)) | (1 << (PlSqlParser.CREATION - 289)) | (1 << (PlSqlParser.CREDENTIAL - 289)) | (1 << (PlSqlParser.CRITICAL - 289)) | (1 << (PlSqlParser.CROSS - 289)) | (1 << (PlSqlParser.CROSSEDITION - 289)) | (1 << (PlSqlParser.CSCONVERT - 289)) | (1 << (PlSqlParser.CUBE_AJ - 289)) | (1 << (PlSqlParser.CUBE - 289)) | (1 << (PlSqlParser.CUBE_GB - 289)) | (1 << (PlSqlParser.CUBE_SJ - 289)) | (1 << (PlSqlParser.CUME_DISTM - 289)) | (1 << (PlSqlParser.CURRENT - 289)) | (1 << (PlSqlParser.CURRENT_DATE - 289)) | (1 << (PlSqlParser.CURRENT_SCHEMA - 289)) | (1 << (PlSqlParser.CURRENT_TIME - 289)) | (1 << (PlSqlParser.CURRENT_TIMESTAMP - 289)) | (1 << (PlSqlParser.CURRENT_USER - 289)) | (1 << (PlSqlParser.CURRENTV - 289)) | (1 << (PlSqlParser.CURSOR - 289)) | (1 << (PlSqlParser.CURSOR_SHARING_EXACT - 289)) | (1 << (PlSqlParser.CURSOR_SPECIFIC_SEGMENT - 289)) | (1 << (PlSqlParser.CUSTOMDATUM - 289)) | (1 << (PlSqlParser.CV - 289)) | (1 << (PlSqlParser.CYCLE - 289)) | (1 << (PlSqlParser.DANGLING - 289)) | (1 << (PlSqlParser.DATABASE - 289)) | (1 << (PlSqlParser.DATA - 289)) | (1 << (PlSqlParser.DATAFILE - 289)) | (1 << (PlSqlParser.DATAFILES - 289)))) !== 0) || ((((_la - 321)) & ~0x1f) == 0 && ((1 << (_la - 321)) & ((1 << (PlSqlParser.DATAMOVEMENT - 321)) | (1 << (PlSqlParser.DATAOBJNO - 321)) | (1 << (PlSqlParser.DATAOBJ_TO_MAT_PARTITION - 321)) | (1 << (PlSqlParser.DATAOBJ_TO_PARTITION - 321)) | (1 << (PlSqlParser.DATAPUMP - 321)) | (1 << (PlSqlParser.DATA_SECURITY_REWRITE_LIMIT - 321)) | (1 << (PlSqlParser.DATE_MODE - 321)) | (1 << (PlSqlParser.DAY - 321)) | (1 << (PlSqlParser.DAYS - 321)) | (1 << (PlSqlParser.DBA - 321)) | (1 << (PlSqlParser.DBA_RECYCLEBIN - 321)) | (1 << (PlSqlParser.DBMS_STATS - 321)) | (1 << (PlSqlParser.DB_ROLE_CHANGE - 321)) | (1 << (PlSqlParser.DBTIMEZONE - 321)) | (1 << (PlSqlParser.DB_UNIQUE_NAME - 321)) | (1 << (PlSqlParser.DB_VERSION - 321)) | (1 << (PlSqlParser.DDL - 321)) | (1 << (PlSqlParser.DEALLOCATE - 321)) | (1 << (PlSqlParser.DEBUG - 321)) | (1 << (PlSqlParser.DEBUGGER - 321)) | (1 << (PlSqlParser.DEC - 321)) | (1 << (PlSqlParser.DECIMAL - 321)) | (1 << (PlSqlParser.DECLARE - 321)) | (1 << (PlSqlParser.DECOMPOSE - 321)) | (1 << (PlSqlParser.DECORRELATE - 321)) | (1 << (PlSqlParser.DECR - 321)) | (1 << (PlSqlParser.DECREMENT - 321)) | (1 << (PlSqlParser.DECRYPT - 321)) | (1 << (PlSqlParser.DEDUPLICATE - 321)) | (1 << (PlSqlParser.DEFAULTS - 321)))) !== 0) || ((((_la - 353)) & ~0x1f) == 0 && ((1 << (_la - 353)) & ((1 << (PlSqlParser.DEFERRABLE - 353)) | (1 << (PlSqlParser.DEFERRED - 353)) | (1 << (PlSqlParser.DEFINED - 353)) | (1 << (PlSqlParser.DEFINE - 353)) | (1 << (PlSqlParser.DEFINER - 353)) | (1 << (PlSqlParser.DEGREE - 353)) | (1 << (PlSqlParser.DELAY - 353)) | (1 << (PlSqlParser.DELEGATE - 353)) | (1 << (PlSqlParser.DELETE_ALL - 353)) | (1 << (PlSqlParser.DELETE - 353)) | (1 << (PlSqlParser.DELETEXML - 353)) | (1 << (PlSqlParser.DEMAND - 353)) | (1 << (PlSqlParser.DENSE_RANKM - 353)) | (1 << (PlSqlParser.DEPENDENT - 353)) | (1 << (PlSqlParser.DEPTH - 353)) | (1 << (PlSqlParser.DEQUEUE - 353)) | (1 << (PlSqlParser.DEREF - 353)) | (1 << (PlSqlParser.DEREF_NO_REWRITE - 353)) | (1 << (PlSqlParser.DESTROY - 353)) | (1 << (PlSqlParser.DETACHED - 353)) | (1 << (PlSqlParser.DETERMINES - 353)) | (1 << (PlSqlParser.DETERMINISTIC - 353)) | (1 << (PlSqlParser.DICTIONARY - 353)) | (1 << (PlSqlParser.DIMENSION - 353)) | (1 << (PlSqlParser.DIMENSIONS - 353)) | (1 << (PlSqlParser.DIRECT_LOAD - 353)) | (1 << (PlSqlParser.DIRECTORY - 353)) | (1 << (PlSqlParser.DIRECT_PATH - 353)) | (1 << (PlSqlParser.DISABLE_ALL - 353)) | (1 << (PlSqlParser.DISABLE - 353)) | (1 << (PlSqlParser.DISABLE_PARALLEL_DML - 353)))) !== 0) || ((((_la - 385)) & ~0x1f) == 0 && ((1 << (_la - 385)) & ((1 << (PlSqlParser.DISABLE_PRESET - 385)) | (1 << (PlSqlParser.DISABLE_RPKE - 385)) | (1 << (PlSqlParser.DISALLOW - 385)) | (1 << (PlSqlParser.DISASSOCIATE - 385)) | (1 << (PlSqlParser.DISCARD - 385)) | (1 << (PlSqlParser.DISCONNECT - 385)) | (1 << (PlSqlParser.DISK - 385)) | (1 << (PlSqlParser.DISKGROUP - 385)) | (1 << (PlSqlParser.DISKS - 385)) | (1 << (PlSqlParser.DISMOUNT - 385)) | (1 << (PlSqlParser.DISTINGUISHED - 385)) | (1 << (PlSqlParser.DISTRIBUTED - 385)) | (1 << (PlSqlParser.DISTRIBUTE - 385)) | (1 << (PlSqlParser.DML - 385)) | (1 << (PlSqlParser.DML_UPDATE - 385)) | (1 << (PlSqlParser.DOCFIDELITY - 385)) | (1 << (PlSqlParser.DOCUMENT - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_FILTER - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_NO_SORT - 385)) | (1 << (PlSqlParser.DOMAIN_INDEX_SORT - 385)) | (1 << (PlSqlParser.DOUBLE - 385)) | (1 << (PlSqlParser.DOWNGRADE - 385)) | (1 << (PlSqlParser.DRIVING_SITE - 385)) | (1 << (PlSqlParser.DROP_COLUMN - 385)) | (1 << (PlSqlParser.DROP_GROUP - 385)) | (1 << (PlSqlParser.DSINTERVAL_UNCONSTRAINED - 385)) | (1 << (PlSqlParser.DST_UPGRADE_INSERT_CONV - 385)) | (1 << (PlSqlParser.DUMP - 385)))) !== 0) || ((((_la - 417)) & ~0x1f) == 0 && ((1 << (_la - 417)) & ((1 << (PlSqlParser.DUPLICATE - 417)) | (1 << (PlSqlParser.DV - 417)) | (1 << (PlSqlParser.DYNAMIC - 417)) | (1 << (PlSqlParser.DYNAMIC_SAMPLING - 417)) | (1 << (PlSqlParser.DYNAMIC_SAMPLING_EST_CDN - 417)) | (1 << (PlSqlParser.EACH - 417)) | (1 << (PlSqlParser.EDITIONABLE - 417)) | (1 << (PlSqlParser.EDITION - 417)) | (1 << (PlSqlParser.EDITIONING - 417)) | (1 << (PlSqlParser.EDITIONS - 417)) | (1 << (PlSqlParser.ELEMENT - 417)) | (1 << (PlSqlParser.ELIM_GROUPBY - 417)) | (1 << (PlSqlParser.ELIMINATE_JOIN - 417)) | (1 << (PlSqlParser.ELIMINATE_OBY - 417)) | (1 << (PlSqlParser.ELIMINATE_OUTER_JOIN - 417)) | (1 << (PlSqlParser.EM - 417)) | (1 << (PlSqlParser.EMPTY_BLOB - 417)) | (1 << (PlSqlParser.EMPTY_CLOB - 417)) | (1 << (PlSqlParser.EMPTY - 417)) | (1 << (PlSqlParser.ENABLE_ALL - 417)) | (1 << (PlSqlParser.ENABLE - 417)) | (1 << (PlSqlParser.ENABLE_PARALLEL_DML - 417)) | (1 << (PlSqlParser.ENABLE_PRESET - 417)) | (1 << (PlSqlParser.ENCODING - 417)) | (1 << (PlSqlParser.ENCRYPT - 417)) | (1 << (PlSqlParser.ENCRYPTION - 417)) | (1 << (PlSqlParser.END_OUTLINE_DATA - 417)) | (1 << (PlSqlParser.ENFORCED - 417)) | (1 << (PlSqlParser.ENFORCE - 417)))) !== 0) || ((((_la - 449)) & ~0x1f) == 0 && ((1 << (_la - 449)) & ((1 << (PlSqlParser.ENQUEUE - 449)) | (1 << (PlSqlParser.ENTERPRISE - 449)) | (1 << (PlSqlParser.ENTITYESCAPING - 449)) | (1 << (PlSqlParser.ENTRY - 449)) | (1 << (PlSqlParser.EQUIPART - 449)) | (1 << (PlSqlParser.ERR - 449)) | (1 << (PlSqlParser.ERROR_ARGUMENT - 449)) | (1 << (PlSqlParser.ERROR - 449)) | (1 << (PlSqlParser.ERROR_ON_OVERLAP_TIME - 449)) | (1 << (PlSqlParser.ERRORS - 449)) | (1 << (PlSqlParser.ESCAPE - 449)) | (1 << (PlSqlParser.ESTIMATE - 449)) | (1 << (PlSqlParser.EVAL - 449)) | (1 << (PlSqlParser.EVALNAME - 449)) | (1 << (PlSqlParser.EVALUATE - 449)) | (1 << (PlSqlParser.EVALUATION - 449)) | (1 << (PlSqlParser.EVENTS - 449)) | (1 << (PlSqlParser.EVERY - 449)) | (1 << (PlSqlParser.EXCEPT - 449)) | (1 << (PlSqlParser.EXCEPTION - 449)) | (1 << (PlSqlParser.EXCEPTION_INIT - 449)) | (1 << (PlSqlParser.EXCEPTIONS - 449)) | (1 << (PlSqlParser.EXCHANGE - 449)) | (1 << (PlSqlParser.EXCLUDE - 449)) | (1 << (PlSqlParser.EXCLUDING - 449)) | (1 << (PlSqlParser.EXECUTE - 449)) | (1 << (PlSqlParser.EXEMPT - 449)) | (1 << (PlSqlParser.EXISTING - 449)) | (1 << (PlSqlParser.EXISTS - 449)) | (1 << (PlSqlParser.EXISTSNODE - 449)) | (1 << (PlSqlParser.EXIT - 449)))) !== 0) || ((((_la - 481)) & ~0x1f) == 0 && ((1 << (_la - 481)) & ((1 << (PlSqlParser.EXPAND_GSET_TO_UNION - 481)) | (1 << (PlSqlParser.EXPAND_TABLE - 481)) | (1 << (PlSqlParser.EXP - 481)) | (1 << (PlSqlParser.EXPIRE - 481)) | (1 << (PlSqlParser.EXPLAIN - 481)) | (1 << (PlSqlParser.EXPLOSION - 481)) | (1 << (PlSqlParser.EXPORT - 481)) | (1 << (PlSqlParser.EXPR_CORR_CHECK - 481)) | (1 << (PlSqlParser.EXPRESS - 481)) | (1 << (PlSqlParser.EXTENDS - 481)) | (1 << (PlSqlParser.EXTENT - 481)) | (1 << (PlSqlParser.EXTENTS - 481)) | (1 << (PlSqlParser.EXTERNAL - 481)) | (1 << (PlSqlParser.EXTERNALLY - 481)) | (1 << (PlSqlParser.EXTRACTCLOBXML - 481)) | (1 << (PlSqlParser.EXTRACT - 481)) | (1 << (PlSqlParser.EXTRACTVALUE - 481)) | (1 << (PlSqlParser.EXTRA - 481)) | (1 << (PlSqlParser.FACILITY - 481)) | (1 << (PlSqlParser.FACT - 481)) | (1 << (PlSqlParser.FACTOR - 481)) | (1 << (PlSqlParser.FACTORIZE_JOIN - 481)) | (1 << (PlSqlParser.FAILED - 481)) | (1 << (PlSqlParser.FAILED_LOGIN_ATTEMPTS - 481)) | (1 << (PlSqlParser.FAILGROUP - 481)) | (1 << (PlSqlParser.FAILOVER - 481)) | (1 << (PlSqlParser.FAILURE - 481)) | (1 << (PlSqlParser.FALSE - 481)) | (1 << (PlSqlParser.FAMILY - 481)) | (1 << (PlSqlParser.FAR - 481)) | (1 << (PlSqlParser.FAST - 481)) | (1 << (PlSqlParser.FASTSTART - 481)))) !== 0) || ((((_la - 513)) & ~0x1f) == 0 && ((1 << (_la - 513)) & ((1 << (PlSqlParser.FBTSCAN - 513)) | (1 << (PlSqlParser.FEATURE_DETAILS - 513)) | (1 << (PlSqlParser.FEATURE_ID - 513)) | (1 << (PlSqlParser.FEATURE_SET - 513)) | (1 << (PlSqlParser.FEATURE_VALUE - 513)) | (1 << (PlSqlParser.FETCH - 513)) | (1 << (PlSqlParser.FILE - 513)) | (1 << (PlSqlParser.FILE_NAME_CONVERT - 513)) | (1 << (PlSqlParser.FILESYSTEM_LIKE_LOGGING - 513)) | (1 << (PlSqlParser.FILTER - 513)) | (1 << (PlSqlParser.FINAL - 513)) | (1 << (PlSqlParser.FINE - 513)) | (1 << (PlSqlParser.FINISH - 513)) | (1 << (PlSqlParser.FIRST - 513)) | (1 << (PlSqlParser.FIRSTM - 513)) | (1 << (PlSqlParser.FIRST_ROWS - 513)) | (1 << (PlSqlParser.FIRST_VALUE - 513)) | (1 << (PlSqlParser.FIXED_VIEW_DATA - 513)) | (1 << (PlSqlParser.FLAGGER - 513)) | (1 << (PlSqlParser.FLASHBACK - 513)) | (1 << (PlSqlParser.FLASH_CACHE - 513)) | (1 << (PlSqlParser.FLOAT - 513)) | (1 << (PlSqlParser.FLOB - 513)) | (1 << (PlSqlParser.FLOOR - 513)) | (1 << (PlSqlParser.FLUSH - 513)) | (1 << (PlSqlParser.FOLDER - 513)) | (1 << (PlSqlParser.FOLLOWING - 513)) | (1 << (PlSqlParser.FOLLOWS - 513)) | (1 << (PlSqlParser.FORALL - 513)) | (1 << (PlSqlParser.FORCE - 513)) | (1 << (PlSqlParser.FORCE_XML_QUERY_REWRITE - 513)) | (1 << (PlSqlParser.FOREIGN - 513)))) !== 0) || ((((_la - 545)) & ~0x1f) == 0 && ((1 << (_la - 545)) & ((1 << (PlSqlParser.FOREVER - 545)) | (1 << (PlSqlParser.FORMAT - 545)) | (1 << (PlSqlParser.FORWARD - 545)) | (1 << (PlSqlParser.FRAGMENT_NUMBER - 545)) | (1 << (PlSqlParser.FREELIST - 545)) | (1 << (PlSqlParser.FREELISTS - 545)) | (1 << (PlSqlParser.FREEPOOLS - 545)) | (1 << (PlSqlParser.FRESH - 545)) | (1 << (PlSqlParser.FROM_TZ - 545)) | (1 << (PlSqlParser.FULL - 545)) | (1 << (PlSqlParser.FULL_OUTER_JOIN_TO_OUTER - 545)) | (1 << (PlSqlParser.FUNCTION - 545)) | (1 << (PlSqlParser.FUNCTIONS - 545)) | (1 << (PlSqlParser.GATHER_OPTIMIZER_STATISTICS - 545)) | (1 << (PlSqlParser.GATHER_PLAN_STATISTICS - 545)) | (1 << (PlSqlParser.GBY_CONC_ROLLUP - 545)) | (1 << (PlSqlParser.GBY_PUSHDOWN - 545)) | (1 << (PlSqlParser.GENERATED - 545)) | (1 << (PlSqlParser.GET - 545)) | (1 << (PlSqlParser.GLOBAL - 545)) | (1 << (PlSqlParser.GLOBALLY - 545)) | (1 << (PlSqlParser.GLOBAL_NAME - 545)) | (1 << (PlSqlParser.GLOBAL_TOPIC_ENABLED - 545)) | (1 << (PlSqlParser.GROUP_BY - 545)) | (1 << (PlSqlParser.GROUP_ID - 545)) | (1 << (PlSqlParser.GROUPING - 545)) | (1 << (PlSqlParser.GROUPING_ID - 545)))) !== 0) || ((((_la - 577)) & ~0x1f) == 0 && ((1 << (_la - 577)) & ((1 << (PlSqlParser.GROUPS - 577)) | (1 << (PlSqlParser.GUARANTEED - 577)) | (1 << (PlSqlParser.GUARANTEE - 577)) | (1 << (PlSqlParser.GUARD - 577)) | (1 << (PlSqlParser.HASH_AJ - 577)) | (1 << (PlSqlParser.HASH - 577)) | (1 << (PlSqlParser.HASHKEYS - 577)) | (1 << (PlSqlParser.HASH_SJ - 577)) | (1 << (PlSqlParser.HEADER - 577)) | (1 << (PlSqlParser.HEAP - 577)) | (1 << (PlSqlParser.HELP - 577)) | (1 << (PlSqlParser.HEXTORAW - 577)) | (1 << (PlSqlParser.HEXTOREF - 577)) | (1 << (PlSqlParser.HIDDEN_KEYWORD - 577)) | (1 << (PlSqlParser.HIDE - 577)) | (1 << (PlSqlParser.HIERARCHY - 577)) | (1 << (PlSqlParser.HIGH - 577)) | (1 << (PlSqlParser.HINTSET_BEGIN - 577)) | (1 << (PlSqlParser.HINTSET_END - 577)) | (1 << (PlSqlParser.HOT - 577)) | (1 << (PlSqlParser.HOUR - 577)) | (1 << (PlSqlParser.HWM_BROKERED - 577)) | (1 << (PlSqlParser.HYBRID - 577)) | (1 << (PlSqlParser.IDENTIFIER - 577)) | (1 << (PlSqlParser.IDENTITY - 577)) | (1 << (PlSqlParser.IDGENERATORS - 577)) | (1 << (PlSqlParser.ID - 577)) | (1 << (PlSqlParser.IDLE_TIME - 577)) | (1 << (PlSqlParser.IF - 577)) | (1 << (PlSqlParser.IGNORE - 577)))) !== 0) || ((((_la - 609)) & ~0x1f) == 0 && ((1 << (_la - 609)) & ((1 << (PlSqlParser.IGNORE_OPTIM_EMBEDDED_HINTS - 609)) | (1 << (PlSqlParser.IGNORE_ROW_ON_DUPKEY_INDEX - 609)) | (1 << (PlSqlParser.IGNORE_WHERE_CLAUSE - 609)) | (1 << (PlSqlParser.ILM - 609)) | (1 << (PlSqlParser.IMMEDIATE - 609)) | (1 << (PlSqlParser.IMPACT - 609)) | (1 << (PlSqlParser.IMPORT - 609)) | (1 << (PlSqlParser.INACTIVE - 609)) | (1 << (PlSqlParser.INCLUDE - 609)) | (1 << (PlSqlParser.INCLUDE_VERSION - 609)) | (1 << (PlSqlParser.INCLUDING - 609)) | (1 << (PlSqlParser.INCREMENTAL - 609)) | (1 << (PlSqlParser.INCREMENT - 609)) | (1 << (PlSqlParser.INCR - 609)) | (1 << (PlSqlParser.INDENT - 609)) | (1 << (PlSqlParser.INDEX_ASC - 609)) | (1 << (PlSqlParser.INDEX_COMBINE - 609)) | (1 << (PlSqlParser.INDEX_DESC - 609)) | (1 << (PlSqlParser.INDEXED - 609)) | (1 << (PlSqlParser.INDEXES - 609)) | (1 << (PlSqlParser.INDEX_FFS - 609)) | (1 << (PlSqlParser.INDEX_FILTER - 609)) | (1 << (PlSqlParser.INDEXING - 609)) | (1 << (PlSqlParser.INDEX_JOIN - 609)) | (1 << (PlSqlParser.INDEX_ROWS - 609)) | (1 << (PlSqlParser.INDEX_RRS - 609)) | (1 << (PlSqlParser.INDEX_RS_ASC - 609)) | (1 << (PlSqlParser.INDEX_RS_DESC - 609)) | (1 << (PlSqlParser.INDEX_RS - 609)) | (1 << (PlSqlParser.INDEX_SCAN - 609)) | (1 << (PlSqlParser.INDEX_SKIP_SCAN - 609)))) !== 0) || ((((_la - 641)) & ~0x1f) == 0 && ((1 << (_la - 641)) & ((1 << (PlSqlParser.INDEX_SS_ASC - 641)) | (1 << (PlSqlParser.INDEX_SS_DESC - 641)) | (1 << (PlSqlParser.INDEX_SS - 641)) | (1 << (PlSqlParser.INDEX_STATS - 641)) | (1 << (PlSqlParser.INDEXTYPE - 641)) | (1 << (PlSqlParser.INDEXTYPES - 641)) | (1 << (PlSqlParser.INDICATOR - 641)) | (1 << (PlSqlParser.INDICES - 641)) | (1 << (PlSqlParser.INFINITE - 641)) | (1 << (PlSqlParser.INFORMATIONAL - 641)) | (1 << (PlSqlParser.INHERIT - 641)) | (1 << (PlSqlParser.INITCAP - 641)) | (1 << (PlSqlParser.INITIAL - 641)) | (1 << (PlSqlParser.INITIALIZED - 641)) | (1 << (PlSqlParser.INITIALLY - 641)) | (1 << (PlSqlParser.INITRANS - 641)) | (1 << (PlSqlParser.INLINE - 641)) | (1 << (PlSqlParser.INLINE_XMLTYPE_NT - 641)) | (1 << (PlSqlParser.INMEMORY - 641)) | (1 << (PlSqlParser.IN_MEMORY_METADATA - 641)) | (1 << (PlSqlParser.INMEMORY_PRUNING - 641)) | (1 << (PlSqlParser.INNER - 641)) | (1 << (PlSqlParser.INOUT - 641)) | (1 << (PlSqlParser.INPLACE - 641)) | (1 << (PlSqlParser.INSERTCHILDXMLAFTER - 641)) | (1 << (PlSqlParser.INSERTCHILDXMLBEFORE - 641)) | (1 << (PlSqlParser.INSERTCHILDXML - 641)) | (1 << (PlSqlParser.INSERTXMLAFTER - 641)) | (1 << (PlSqlParser.INSERTXMLBEFORE - 641)) | (1 << (PlSqlParser.INSTANCE - 641)))) !== 0) || ((((_la - 673)) & ~0x1f) == 0 && ((1 << (_la - 673)) & ((1 << (PlSqlParser.INSTANCES - 673)) | (1 << (PlSqlParser.INSTANTIABLE - 673)) | (1 << (PlSqlParser.INSTANTLY - 673)) | (1 << (PlSqlParser.INSTEAD - 673)) | (1 << (PlSqlParser.INSTR2 - 673)) | (1 << (PlSqlParser.INSTR4 - 673)) | (1 << (PlSqlParser.INSTRB - 673)) | (1 << (PlSqlParser.INSTRC - 673)) | (1 << (PlSqlParser.INSTR - 673)) | (1 << (PlSqlParser.INTEGER - 673)) | (1 << (PlSqlParser.INTERLEAVED - 673)) | (1 << (PlSqlParser.INTERMEDIATE - 673)) | (1 << (PlSqlParser.INTERNAL_CONVERT - 673)) | (1 << (PlSqlParser.INTERNAL_USE - 673)) | (1 << (PlSqlParser.INTERPRETED - 673)) | (1 << (PlSqlParser.INTERVAL - 673)) | (1 << (PlSqlParser.INT - 673)) | (1 << (PlSqlParser.INVALIDATE - 673)) | (1 << (PlSqlParser.INVISIBLE - 673)) | (1 << (PlSqlParser.IN_XQUERY - 673)) | (1 << (PlSqlParser.ISOLATION - 673)) | (1 << (PlSqlParser.ISOLATION_LEVEL - 673)) | (1 << (PlSqlParser.ITERATE - 673)) | (1 << (PlSqlParser.ITERATION_NUMBER - 673)) | (1 << (PlSqlParser.JAVA - 673)) | (1 << (PlSqlParser.JOB - 673)) | (1 << (PlSqlParser.JOIN - 673)) | (1 << (PlSqlParser.JSON_ARRAYAGG - 673)) | (1 << (PlSqlParser.JSON_ARRAY - 673)))) !== 0) || ((((_la - 705)) & ~0x1f) == 0 && ((1 << (_la - 705)) & ((1 << (PlSqlParser.JSON_EQUAL - 705)) | (1 << (PlSqlParser.JSON_EXISTS2 - 705)) | (1 << (PlSqlParser.JSON_EXISTS - 705)) | (1 << (PlSqlParser.JSONGET - 705)) | (1 << (PlSqlParser.JSON - 705)) | (1 << (PlSqlParser.JSON_OBJECTAGG - 705)) | (1 << (PlSqlParser.JSON_OBJECT - 705)) | (1 << (PlSqlParser.JSONPARSE - 705)) | (1 << (PlSqlParser.JSON_QUERY - 705)) | (1 << (PlSqlParser.JSON_SERIALIZE - 705)) | (1 << (PlSqlParser.JSON_TABLE - 705)) | (1 << (PlSqlParser.JSON_TEXTCONTAINS2 - 705)) | (1 << (PlSqlParser.JSON_TEXTCONTAINS - 705)) | (1 << (PlSqlParser.JSON_VALUE - 705)) | (1 << (PlSqlParser.KEEP_DUPLICATES - 705)) | (1 << (PlSqlParser.KEEP - 705)) | (1 << (PlSqlParser.KERBEROS - 705)) | (1 << (PlSqlParser.KEY - 705)) | (1 << (PlSqlParser.KEY_LENGTH - 705)) | (1 << (PlSqlParser.KEYSIZE - 705)) | (1 << (PlSqlParser.KEYS - 705)) | (1 << (PlSqlParser.KEYSTORE - 705)) | (1 << (PlSqlParser.KILL - 705)) | (1 << (PlSqlParser.LABEL - 705)) | (1 << (PlSqlParser.LANGUAGE - 705)) | (1 << (PlSqlParser.LAST_DAY - 705)) | (1 << (PlSqlParser.LAST - 705)) | (1 << (PlSqlParser.LAST_VALUE - 705)) | (1 << (PlSqlParser.LATERAL - 705)) | (1 << (PlSqlParser.LAX - 705)) | (1 << (PlSqlParser.LAYER - 705)) | (1 << (PlSqlParser.LDAP_REGISTRATION_ENABLED - 705)))) !== 0) || ((((_la - 737)) & ~0x1f) == 0 && ((1 << (_la - 737)) & ((1 << (PlSqlParser.LDAP_REGISTRATION - 737)) | (1 << (PlSqlParser.LDAP_REG_SYNC_INTERVAL - 737)) | (1 << (PlSqlParser.LEADING - 737)) | (1 << (PlSqlParser.LEFT - 737)) | (1 << (PlSqlParser.LENGTH2 - 737)) | (1 << (PlSqlParser.LENGTH4 - 737)) | (1 << (PlSqlParser.LENGTHB - 737)) | (1 << (PlSqlParser.LENGTHC - 737)) | (1 << (PlSqlParser.LENGTH - 737)) | (1 << (PlSqlParser.LESS - 737)) | (1 << (PlSqlParser.LEVEL - 737)) | (1 << (PlSqlParser.LEVELS - 737)) | (1 << (PlSqlParser.LIBRARY - 737)) | (1 << (PlSqlParser.LIFECYCLE - 737)) | (1 << (PlSqlParser.LIFE - 737)) | (1 << (PlSqlParser.LIFETIME - 737)) | (1 << (PlSqlParser.LIKE2 - 737)) | (1 << (PlSqlParser.LIKE4 - 737)) | (1 << (PlSqlParser.LIKEC - 737)) | (1 << (PlSqlParser.LIKE_EXPAND - 737)) | (1 << (PlSqlParser.LIMIT - 737)) | (1 << (PlSqlParser.LINEAR - 737)) | (1 << (PlSqlParser.LINK - 737)) | (1 << (PlSqlParser.LIST - 737)) | (1 << (PlSqlParser.LN - 737)) | (1 << (PlSqlParser.LNNVL - 737)) | (1 << (PlSqlParser.LOAD - 737)) | (1 << (PlSqlParser.LOB - 737)) | (1 << (PlSqlParser.LOBNVL - 737)) | (1 << (PlSqlParser.LOBS - 737)) | (1 << (PlSqlParser.LOCAL_INDEXES - 737)))) !== 0) || ((((_la - 769)) & ~0x1f) == 0 && ((1 << (_la - 769)) & ((1 << (PlSqlParser.LOCAL - 769)) | (1 << (PlSqlParser.LOCALTIME - 769)) | (1 << (PlSqlParser.LOCALTIMESTAMP - 769)) | (1 << (PlSqlParser.LOCATION - 769)) | (1 << (PlSqlParser.LOCATOR - 769)) | (1 << (PlSqlParser.LOCKED - 769)) | (1 << (PlSqlParser.LOCKING - 769)) | (1 << (PlSqlParser.LOGFILE - 769)) | (1 << (PlSqlParser.LOGFILES - 769)) | (1 << (PlSqlParser.LOGGING - 769)) | (1 << (PlSqlParser.LOGICAL - 769)) | (1 << (PlSqlParser.LOGICAL_READS_PER_CALL - 769)) | (1 << (PlSqlParser.LOGICAL_READS_PER_SESSION - 769)) | (1 << (PlSqlParser.LOG - 769)) | (1 << (PlSqlParser.LOGMINING - 769)) | (1 << (PlSqlParser.LOGOFF - 769)) | (1 << (PlSqlParser.LOGON - 769)) | (1 << (PlSqlParser.LOG_READ_ONLY_VIOLATIONS - 769)) | (1 << (PlSqlParser.LONG - 769)) | (1 << (PlSqlParser.LOOP - 769)) | (1 << (PlSqlParser.LOWER - 769)) | (1 << (PlSqlParser.LOW - 769)) | (1 << (PlSqlParser.LPAD - 769)) | (1 << (PlSqlParser.LTRIM - 769)) | (1 << (PlSqlParser.MAIN - 769)) | (1 << (PlSqlParser.MAKE_REF - 769)) | (1 << (PlSqlParser.MANAGED - 769)) | (1 << (PlSqlParser.MANAGE - 769)) | (1 << (PlSqlParser.MANAGEMENT - 769)) | (1 << (PlSqlParser.MANAGER - 769)) | (1 << (PlSqlParser.MANUAL - 769)))) !== 0) || ((((_la - 801)) & ~0x1f) == 0 && ((1 << (_la - 801)) & ((1 << (PlSqlParser.MAP - 801)) | (1 << (PlSqlParser.MAPPING - 801)) | (1 << (PlSqlParser.MASTER - 801)) | (1 << (PlSqlParser.MATCHED - 801)) | (1 << (PlSqlParser.MATCHES - 801)) | (1 << (PlSqlParser.MATCH - 801)) | (1 << (PlSqlParser.MATCH_NUMBER - 801)) | (1 << (PlSqlParser.MATCH_RECOGNIZE - 801)) | (1 << (PlSqlParser.MATERIALIZED - 801)) | (1 << (PlSqlParser.MATERIALIZE - 801)) | (1 << (PlSqlParser.MAXARCHLOGS - 801)) | (1 << (PlSqlParser.MAXDATAFILES - 801)) | (1 << (PlSqlParser.MAXEXTENTS - 801)) | (1 << (PlSqlParser.MAXIMIZE - 801)) | (1 << (PlSqlParser.MAXINSTANCES - 801)) | (1 << (PlSqlParser.MAXLOGFILES - 801)) | (1 << (PlSqlParser.MAXLOGHISTORY - 801)) | (1 << (PlSqlParser.MAXLOGMEMBERS - 801)) | (1 << (PlSqlParser.MAX_SHARED_TEMP_SIZE - 801)) | (1 << (PlSqlParser.MAXSIZE - 801)) | (1 << (PlSqlParser.MAXTRANS - 801)) | (1 << (PlSqlParser.MAXVALUE - 801)) | (1 << (PlSqlParser.MEASURE - 801)) | (1 << (PlSqlParser.MEASURES - 801)) | (1 << (PlSqlParser.MEDIUM - 801)) | (1 << (PlSqlParser.MEMBER - 801)) | (1 << (PlSqlParser.MEMCOMPRESS - 801)) | (1 << (PlSqlParser.MEMORY - 801)) | (1 << (PlSqlParser.MERGEACTIONS - 801)) | (1 << (PlSqlParser.MERGE_AJ - 801)) | (1 << (PlSqlParser.MERGE_CONST_ON - 801)) | (1 << (PlSqlParser.MERGE - 801)))) !== 0) || ((((_la - 833)) & ~0x1f) == 0 && ((1 << (_la - 833)) & ((1 << (PlSqlParser.MERGE_SJ - 833)) | (1 << (PlSqlParser.METADATA - 833)) | (1 << (PlSqlParser.METHOD - 833)) | (1 << (PlSqlParser.MIGRATE - 833)) | (1 << (PlSqlParser.MIGRATION - 833)) | (1 << (PlSqlParser.MINEXTENTS - 833)) | (1 << (PlSqlParser.MINIMIZE - 833)) | (1 << (PlSqlParser.MINIMUM - 833)) | (1 << (PlSqlParser.MINING - 833)) | (1 << (PlSqlParser.MINUS_NULL - 833)) | (1 << (PlSqlParser.MINUTE - 833)) | (1 << (PlSqlParser.MINVALUE - 833)) | (1 << (PlSqlParser.MIRRORCOLD - 833)) | (1 << (PlSqlParser.MIRRORHOT - 833)) | (1 << (PlSqlParser.MIRROR - 833)) | (1 << (PlSqlParser.MLSLABEL - 833)) | (1 << (PlSqlParser.MODEL_COMPILE_SUBQUERY - 833)) | (1 << (PlSqlParser.MODEL_DONTVERIFY_UNIQUENESS - 833)) | (1 << (PlSqlParser.MODEL_DYNAMIC_SUBQUERY - 833)) | (1 << (PlSqlParser.MODEL_MIN_ANALYSIS - 833)) | (1 << (PlSqlParser.MODEL - 833)) | (1 << (PlSqlParser.MODEL_NB - 833)) | (1 << (PlSqlParser.MODEL_NO_ANALYSIS - 833)) | (1 << (PlSqlParser.MODEL_PBY - 833)) | (1 << (PlSqlParser.MODEL_PUSH_REF - 833)) | (1 << (PlSqlParser.MODEL_SV - 833)) | (1 << (PlSqlParser.MODIFICATION - 833)) | (1 << (PlSqlParser.MODIFY_COLUMN_TYPE - 833)) | (1 << (PlSqlParser.MODIFY - 833)) | (1 << (PlSqlParser.MOD - 833)))) !== 0) || ((((_la - 865)) & ~0x1f) == 0 && ((1 << (_la - 865)) & ((1 << (PlSqlParser.MODULE - 865)) | (1 << (PlSqlParser.MONITORING - 865)) | (1 << (PlSqlParser.MONITOR - 865)) | (1 << (PlSqlParser.MONTH - 865)) | (1 << (PlSqlParser.MONTHS_BETWEEN - 865)) | (1 << (PlSqlParser.MONTHS - 865)) | (1 << (PlSqlParser.MOUNT - 865)) | (1 << (PlSqlParser.MOUNTPATH - 865)) | (1 << (PlSqlParser.MOVEMENT - 865)) | (1 << (PlSqlParser.MOVE - 865)) | (1 << (PlSqlParser.MULTIDIMENSIONAL - 865)) | (1 << (PlSqlParser.MULTISET - 865)) | (1 << (PlSqlParser.MV_MERGE - 865)) | (1 << (PlSqlParser.NAMED - 865)) | (1 << (PlSqlParser.NAME - 865)) | (1 << (PlSqlParser.NAMESPACE - 865)) | (1 << (PlSqlParser.NAN - 865)) | (1 << (PlSqlParser.NANVL - 865)) | (1 << (PlSqlParser.NATIONAL - 865)) | (1 << (PlSqlParser.NATIVE_FULL_OUTER_JOIN - 865)) | (1 << (PlSqlParser.NATIVE - 865)) | (1 << (PlSqlParser.NATURAL - 865)) | (1 << (PlSqlParser.NAV - 865)) | (1 << (PlSqlParser.NCHAR_CS - 865)) | (1 << (PlSqlParser.NCHAR - 865)) | (1 << (PlSqlParser.NCHR - 865)) | (1 << (PlSqlParser.NCLOB - 865)) | (1 << (PlSqlParser.NEEDED - 865)) | (1 << (PlSqlParser.NEG - 865)) | (1 << (PlSqlParser.NESTED - 865)) | (1 << (PlSqlParser.NESTED_TABLE_FAST_INSERT - 865)))) !== 0) || ((((_la - 897)) & ~0x1f) == 0 && ((1 << (_la - 897)) & ((1 << (PlSqlParser.NESTED_TABLE_GET_REFS - 897)) | (1 << (PlSqlParser.NESTED_TABLE_ID - 897)) | (1 << (PlSqlParser.NESTED_TABLE_SET_REFS - 897)) | (1 << (PlSqlParser.NESTED_TABLE_SET_SETID - 897)) | (1 << (PlSqlParser.NETWORK - 897)) | (1 << (PlSqlParser.NEVER - 897)) | (1 << (PlSqlParser.NEW - 897)) | (1 << (PlSqlParser.NEW_TIME - 897)) | (1 << (PlSqlParser.NEXT_DAY - 897)) | (1 << (PlSqlParser.NEXT - 897)) | (1 << (PlSqlParser.NL_AJ - 897)) | (1 << (PlSqlParser.NLJ_BATCHING - 897)) | (1 << (PlSqlParser.NLJ_INDEX_FILTER - 897)) | (1 << (PlSqlParser.NLJ_INDEX_SCAN - 897)) | (1 << (PlSqlParser.NLJ_PREFETCH - 897)) | (1 << (PlSqlParser.NLS_CALENDAR - 897)) | (1 << (PlSqlParser.NLS_CHARACTERSET - 897)) | (1 << (PlSqlParser.NLS_CHARSET_DECL_LEN - 897)) | (1 << (PlSqlParser.NLS_CHARSET_ID - 897)) | (1 << (PlSqlParser.NLS_CHARSET_NAME - 897)) | (1 << (PlSqlParser.NLS_COMP - 897)) | (1 << (PlSqlParser.NLS_CURRENCY - 897)) | (1 << (PlSqlParser.NLS_DATE_FORMAT - 897)) | (1 << (PlSqlParser.NLS_DATE_LANGUAGE - 897)) | (1 << (PlSqlParser.NLS_INITCAP - 897)) | (1 << (PlSqlParser.NLS_ISO_CURRENCY - 897)) | (1 << (PlSqlParser.NL_SJ - 897)) | (1 << (PlSqlParser.NLS_LANG - 897)) | (1 << (PlSqlParser.NLS_LANGUAGE - 897)) | (1 << (PlSqlParser.NLS_LENGTH_SEMANTICS - 897)) | (1 << (PlSqlParser.NLS_LOWER - 897)) | (1 << (PlSqlParser.NLS_NCHAR_CONV_EXCP - 897)))) !== 0) || ((((_la - 929)) & ~0x1f) == 0 && ((1 << (_la - 929)) & ((1 << (PlSqlParser.NLS_NUMERIC_CHARACTERS - 929)) | (1 << (PlSqlParser.NLS_SORT - 929)) | (1 << (PlSqlParser.NLSSORT - 929)) | (1 << (PlSqlParser.NLS_SPECIAL_CHARS - 929)) | (1 << (PlSqlParser.NLS_TERRITORY - 929)) | (1 << (PlSqlParser.NLS_UPPER - 929)) | (1 << (PlSqlParser.NO_ACCESS - 929)) | (1 << (PlSqlParser.NO_ADAPTIVE_PLAN - 929)) | (1 << (PlSqlParser.NO_ANSI_REARCH - 929)) | (1 << (PlSqlParser.NOAPPEND - 929)) | (1 << (PlSqlParser.NOARCHIVELOG - 929)) | (1 << (PlSqlParser.NOAUDIT - 929)) | (1 << (PlSqlParser.NO_AUTO_REOPTIMIZE - 929)) | (1 << (PlSqlParser.NO_BASETABLE_MULTIMV_REWRITE - 929)) | (1 << (PlSqlParser.NO_BATCH_TABLE_ACCESS_BY_ROWID - 929)) | (1 << (PlSqlParser.NO_BIND_AWARE - 929)) | (1 << (PlSqlParser.NO_BUFFER - 929)) | (1 << (PlSqlParser.NOCACHE - 929)) | (1 << (PlSqlParser.NO_CARTESIAN - 929)) | (1 << (PlSqlParser.NO_CHECK_ACL_REWRITE - 929)) | (1 << (PlSqlParser.NO_CLUSTER_BY_ROWID - 929)) | (1 << (PlSqlParser.NO_CLUSTERING - 929)) | (1 << (PlSqlParser.NO_COALESCE_SQ - 929)) | (1 << (PlSqlParser.NO_COMMON_DATA - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_CB_WHR_ONLY - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_COMBINE_SW - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_COST_BASED - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_ELIM_DUPS - 929)) | (1 << (PlSqlParser.NO_CONNECT_BY_FILTERING - 929)) | (1 << (PlSqlParser.NOCOPY - 929)) | (1 << (PlSqlParser.NO_COST_XML_QUERY_REWRITE - 929)))) !== 0) || ((((_la - 961)) & ~0x1f) == 0 && ((1 << (_la - 961)) & ((1 << (PlSqlParser.NO_CPU_COSTING - 961)) | (1 << (PlSqlParser.NOCPU_COSTING - 961)) | (1 << (PlSqlParser.NOCYCLE - 961)) | (1 << (PlSqlParser.NO_DATA_SECURITY_REWRITE - 961)) | (1 << (PlSqlParser.NO_DECORRELATE - 961)) | (1 << (PlSqlParser.NODELAY - 961)) | (1 << (PlSqlParser.NO_DOMAIN_INDEX_FILTER - 961)) | (1 << (PlSqlParser.NO_DST_UPGRADE_INSERT_CONV - 961)) | (1 << (PlSqlParser.NO_ELIM_GROUPBY - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_JOIN - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_OBY - 961)) | (1 << (PlSqlParser.NO_ELIMINATE_OUTER_JOIN - 961)) | (1 << (PlSqlParser.NOENTITYESCAPING - 961)) | (1 << (PlSqlParser.NO_EXPAND_GSET_TO_UNION - 961)) | (1 << (PlSqlParser.NO_EXPAND - 961)) | (1 << (PlSqlParser.NO_EXPAND_TABLE - 961)) | (1 << (PlSqlParser.NO_FACT - 961)) | (1 << (PlSqlParser.NO_FACTORIZE_JOIN - 961)) | (1 << (PlSqlParser.NO_FILTERING - 961)) | (1 << (PlSqlParser.NOFORCE - 961)) | (1 << (PlSqlParser.NO_FULL_OUTER_JOIN_TO_OUTER - 961)) | (1 << (PlSqlParser.NO_GATHER_OPTIMIZER_STATISTICS - 961)) | (1 << (PlSqlParser.NO_GBY_PUSHDOWN - 961)) | (1 << (PlSqlParser.NOGUARANTEE - 961)) | (1 << (PlSqlParser.NO_INDEX_FFS - 961)) | (1 << (PlSqlParser.NO_INDEX - 961)) | (1 << (PlSqlParser.NO_INDEX_SS - 961)) | (1 << (PlSqlParser.NO_INMEMORY - 961)) | (1 << (PlSqlParser.NO_INMEMORY_PRUNING - 961)) | (1 << (PlSqlParser.NOKEEP - 961)) | (1 << (PlSqlParser.NO_LOAD - 961)) | (1 << (PlSqlParser.NOLOCAL - 961)))) !== 0) || ((((_la - 993)) & ~0x1f) == 0 && ((1 << (_la - 993)) & ((1 << (PlSqlParser.NOLOGGING - 993)) | (1 << (PlSqlParser.NOMAPPING - 993)) | (1 << (PlSqlParser.NOMAXVALUE - 993)) | (1 << (PlSqlParser.NO_MERGE - 993)) | (1 << (PlSqlParser.NOMINIMIZE - 993)) | (1 << (PlSqlParser.NOMINVALUE - 993)) | (1 << (PlSqlParser.NO_MODEL_PUSH_REF - 993)) | (1 << (PlSqlParser.NO_MONITORING - 993)) | (1 << (PlSqlParser.NOMONITORING - 993)) | (1 << (PlSqlParser.NO_MONITOR - 993)) | (1 << (PlSqlParser.NO_MULTIMV_REWRITE - 993)) | (1 << (PlSqlParser.NO_NATIVE_FULL_OUTER_JOIN - 993)) | (1 << (PlSqlParser.NONBLOCKING - 993)) | (1 << (PlSqlParser.NONEDITIONABLE - 993)) | (1 << (PlSqlParser.NONE - 993)) | (1 << (PlSqlParser.NO_NLJ_BATCHING - 993)) | (1 << (PlSqlParser.NO_NLJ_PREFETCH - 993)) | (1 << (PlSqlParser.NO - 993)) | (1 << (PlSqlParser.NONSCHEMA - 993)) | (1 << (PlSqlParser.NO_OBJECT_LINK - 993)) | (1 << (PlSqlParser.NOORDER - 993)) | (1 << (PlSqlParser.NO_ORDER_ROLLUPS - 993)) | (1 << (PlSqlParser.NO_OUTER_JOIN_TO_ANTI - 993)) | (1 << (PlSqlParser.NO_OUTER_JOIN_TO_INNER - 993)) | (1 << (PlSqlParser.NOOVERRIDE - 993)) | (1 << (PlSqlParser.NO_PARALLEL_INDEX - 993)) | (1 << (PlSqlParser.NOPARALLEL_INDEX - 993)) | (1 << (PlSqlParser.NO_PARALLEL - 993)) | (1 << (PlSqlParser.NOPARALLEL - 993)) | (1 << (PlSqlParser.NO_PARTIAL_COMMIT - 993)) | (1 << (PlSqlParser.NO_PARTIAL_JOIN - 993)) | (1 << (PlSqlParser.NO_PARTIAL_ROLLUP_PUSHDOWN - 993)))) !== 0) || ((((_la - 1025)) & ~0x1f) == 0 && ((1 << (_la - 1025)) & ((1 << (PlSqlParser.NOPARTITION - 1025)) | (1 << (PlSqlParser.NO_PLACE_DISTINCT - 1025)) | (1 << (PlSqlParser.NO_PLACE_GROUP_BY - 1025)) | (1 << (PlSqlParser.NO_PQ_CONCURRENT_UNION - 1025)) | (1 << (PlSqlParser.NO_PQ_MAP - 1025)) | (1 << (PlSqlParser.NO_PQ_REPLICATE - 1025)) | (1 << (PlSqlParser.NO_PQ_SKEW - 1025)) | (1 << (PlSqlParser.NO_PRUNE_GSETS - 1025)) | (1 << (PlSqlParser.NO_PULL_PRED - 1025)) | (1 << (PlSqlParser.NO_PUSH_PRED - 1025)) | (1 << (PlSqlParser.NO_PUSH_SUBQ - 1025)) | (1 << (PlSqlParser.NO_PX_FAULT_TOLERANCE - 1025)) | (1 << (PlSqlParser.NO_PX_JOIN_FILTER - 1025)) | (1 << (PlSqlParser.NO_QKN_BUFF - 1025)) | (1 << (PlSqlParser.NO_QUERY_TRANSFORMATION - 1025)) | (1 << (PlSqlParser.NO_REF_CASCADE - 1025)) | (1 << (PlSqlParser.NORELOCATE - 1025)) | (1 << (PlSqlParser.NORELY - 1025)) | (1 << (PlSqlParser.NOREPAIR - 1025)) | (1 << (PlSqlParser.NOREPLAY - 1025)) | (1 << (PlSqlParser.NORESETLOGS - 1025)) | (1 << (PlSqlParser.NO_RESULT_CACHE - 1025)) | (1 << (PlSqlParser.NOREVERSE - 1025)) | (1 << (PlSqlParser.NO_REWRITE - 1025)) | (1 << (PlSqlParser.NOREWRITE - 1025)) | (1 << (PlSqlParser.NORMAL - 1025)) | (1 << (PlSqlParser.NO_ROOT_SW_FOR_LOCAL - 1025)) | (1 << (PlSqlParser.NOROWDEPENDENCIES - 1025)) | (1 << (PlSqlParser.NOSCHEMACHECK - 1025)) | (1 << (PlSqlParser.NOSEGMENT - 1025)) | (1 << (PlSqlParser.NO_SEMIJOIN - 1025)) | (1 << (PlSqlParser.NO_SEMI_TO_INNER - 1025)))) !== 0) || ((((_la - 1057)) & ~0x1f) == 0 && ((1 << (_la - 1057)) & ((1 << (PlSqlParser.NO_SET_TO_JOIN - 1057)) | (1 << (PlSqlParser.NOSORT - 1057)) | (1 << (PlSqlParser.NO_SQL_TRANSLATION - 1057)) | (1 << (PlSqlParser.NO_SQL_TUNE - 1057)) | (1 << (PlSqlParser.NO_STAR_TRANSFORMATION - 1057)) | (1 << (PlSqlParser.NO_STATEMENT_QUEUING - 1057)) | (1 << (PlSqlParser.NO_STATS_GSETS - 1057)) | (1 << (PlSqlParser.NOSTRICT - 1057)) | (1 << (PlSqlParser.NO_SUBQUERY_PRUNING - 1057)) | (1 << (PlSqlParser.NO_SUBSTRB_PAD - 1057)) | (1 << (PlSqlParser.NO_SWAP_JOIN_INPUTS - 1057)) | (1 << (PlSqlParser.NOSWITCH - 1057)) | (1 << (PlSqlParser.NO_TABLE_LOOKUP_BY_NL - 1057)) | (1 << (PlSqlParser.NO_TEMP_TABLE - 1057)) | (1 << (PlSqlParser.NOTHING - 1057)) | (1 << (PlSqlParser.NOTIFICATION - 1057)) | (1 << (PlSqlParser.NO_TRANSFORM_DISTINCT_AGG - 1057)) | (1 << (PlSqlParser.NO_UNNEST - 1057)) | (1 << (PlSqlParser.NO_USE_CUBE - 1057)) | (1 << (PlSqlParser.NO_USE_HASH_AGGREGATION - 1057)) | (1 << (PlSqlParser.NO_USE_HASH_GBY_FOR_PUSHDOWN - 1057)) | (1 << (PlSqlParser.NO_USE_HASH - 1057)) | (1 << (PlSqlParser.NO_USE_INVISIBLE_INDEXES - 1057)) | (1 << (PlSqlParser.NO_USE_MERGE - 1057)) | (1 << (PlSqlParser.NO_USE_NL - 1057)) | (1 << (PlSqlParser.NO_USE_VECTOR_AGGREGATION - 1057)) | (1 << (PlSqlParser.NOVALIDATE - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM_DIMS - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM_FACT - 1057)) | (1 << (PlSqlParser.NO_VECTOR_TRANSFORM - 1057)))) !== 0) || ((((_la - 1089)) & ~0x1f) == 0 && ((1 << (_la - 1089)) & ((1 << (PlSqlParser.NO_XDB_FASTPATH_INSERT - 1089)) | (1 << (PlSqlParser.NO_XML_DML_REWRITE - 1089)) | (1 << (PlSqlParser.NO_XMLINDEX_REWRITE_IN_SELECT - 1089)) | (1 << (PlSqlParser.NO_XMLINDEX_REWRITE - 1089)) | (1 << (PlSqlParser.NO_XML_QUERY_REWRITE - 1089)) | (1 << (PlSqlParser.NO_ZONEMAP - 1089)) | (1 << (PlSqlParser.NTH_VALUE - 1089)) | (1 << (PlSqlParser.NULLIF - 1089)) | (1 << (PlSqlParser.NULLS - 1089)) | (1 << (PlSqlParser.NUMBER - 1089)) | (1 << (PlSqlParser.NUMERIC - 1089)) | (1 << (PlSqlParser.NUM_INDEX_KEYS - 1089)) | (1 << (PlSqlParser.NUMTODSINTERVAL - 1089)) | (1 << (PlSqlParser.NUMTOYMINTERVAL - 1089)) | (1 << (PlSqlParser.NVARCHAR2 - 1089)) | (1 << (PlSqlParser.NVL2 - 1089)) | (1 << (PlSqlParser.OBJECT2XML - 1089)) | (1 << (PlSqlParser.OBJECT - 1089)) | (1 << (PlSqlParser.OBJ_ID - 1089)) | (1 << (PlSqlParser.OBJNO - 1089)) | (1 << (PlSqlParser.OBJNO_REUSE - 1089)) | (1 << (PlSqlParser.OCCURENCES - 1089)) | (1 << (PlSqlParser.OFFLINE - 1089)) | (1 << (PlSqlParser.OFF - 1089)) | (1 << (PlSqlParser.OFFSET - 1089)) | (1 << (PlSqlParser.OIDINDEX - 1089)) | (1 << (PlSqlParser.OID - 1089)) | (1 << (PlSqlParser.OLAP - 1089)) | (1 << (PlSqlParser.OLD - 1089)) | (1 << (PlSqlParser.OLD_PUSH_PRED - 1089)))) !== 0) || ((((_la - 1121)) & ~0x1f) == 0 && ((1 << (_la - 1121)) & ((1 << (PlSqlParser.OLS - 1121)) | (1 << (PlSqlParser.OLTP - 1121)) | (1 << (PlSqlParser.OMIT - 1121)) | (1 << (PlSqlParser.ONE - 1121)) | (1 << (PlSqlParser.ONLINE - 1121)) | (1 << (PlSqlParser.ONLY - 1121)) | (1 << (PlSqlParser.OPAQUE - 1121)) | (1 << (PlSqlParser.OPAQUE_TRANSFORM - 1121)) | (1 << (PlSqlParser.OPAQUE_XCANONICAL - 1121)) | (1 << (PlSqlParser.OPCODE - 1121)) | (1 << (PlSqlParser.OPEN - 1121)) | (1 << (PlSqlParser.OPERATIONS - 1121)) | (1 << (PlSqlParser.OPERATOR - 1121)) | (1 << (PlSqlParser.OPT_ESTIMATE - 1121)) | (1 << (PlSqlParser.OPTIMAL - 1121)) | (1 << (PlSqlParser.OPTIMIZE - 1121)) | (1 << (PlSqlParser.OPTIMIZER_FEATURES_ENABLE - 1121)) | (1 << (PlSqlParser.OPTIMIZER_GOAL - 1121)) | (1 << (PlSqlParser.OPT_PARAM - 1121)) | (1 << (PlSqlParser.ORA_BRANCH - 1121)) | (1 << (PlSqlParser.ORA_CHECK_ACL - 1121)) | (1 << (PlSqlParser.ORA_CHECK_PRIVILEGE - 1121)) | (1 << (PlSqlParser.ORA_CLUSTERING - 1121)) | (1 << (PlSqlParser.ORADATA - 1121)) | (1 << (PlSqlParser.ORADEBUG - 1121)) | (1 << (PlSqlParser.ORA_DST_AFFECTED - 1121)) | (1 << (PlSqlParser.ORA_DST_CONVERT - 1121)) | (1 << (PlSqlParser.ORA_DST_ERROR - 1121)) | (1 << (PlSqlParser.ORA_GET_ACLIDS - 1121)))) !== 0) || ((((_la - 1153)) & ~0x1f) == 0 && ((1 << (_la - 1153)) & ((1 << (PlSqlParser.ORA_GET_PRIVILEGES - 1153)) | (1 << (PlSqlParser.ORA_HASH - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_USERID - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_USER - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_XS_USER_GUID - 1153)) | (1 << (PlSqlParser.ORA_INVOKING_XS_USER - 1153)) | (1 << (PlSqlParser.ORA_RAWCOMPARE - 1153)) | (1 << (PlSqlParser.ORA_RAWCONCAT - 1153)) | (1 << (PlSqlParser.ORA_ROWSCN - 1153)) | (1 << (PlSqlParser.ORA_ROWSCN_RAW - 1153)) | (1 << (PlSqlParser.ORA_ROWVERSION - 1153)) | (1 << (PlSqlParser.ORA_TABVERSION - 1153)) | (1 << (PlSqlParser.ORA_WRITE_TIME - 1153)) | (1 << (PlSqlParser.ORDERED - 1153)) | (1 << (PlSqlParser.ORDERED_PREDICATES - 1153)) | (1 << (PlSqlParser.ORDINALITY - 1153)) | (1 << (PlSqlParser.OR_EXPAND - 1153)) | (1 << (PlSqlParser.ORGANIZATION - 1153)) | (1 << (PlSqlParser.OR_PREDICATES - 1153)) | (1 << (PlSqlParser.OSERROR - 1153)) | (1 << (PlSqlParser.OTHER - 1153)) | (1 << (PlSqlParser.OUTER_JOIN_TO_ANTI - 1153)) | (1 << (PlSqlParser.OUTER_JOIN_TO_INNER - 1153)) | (1 << (PlSqlParser.OUTER - 1153)) | (1 << (PlSqlParser.OUTLINE_LEAF - 1153)) | (1 << (PlSqlParser.OUTLINE - 1153)) | (1 << (PlSqlParser.OUT_OF_LINE - 1153)) | (1 << (PlSqlParser.OUT - 1153)) | (1 << (PlSqlParser.OVERFLOW_NOMOVE - 1153)) | (1 << (PlSqlParser.OVERFLOW - 1153)))) !== 0) || ((((_la - 1185)) & ~0x1f) == 0 && ((1 << (_la - 1185)) & ((1 << (PlSqlParser.OVERLAPS - 1185)) | (1 << (PlSqlParser.OVER - 1185)) | (1 << (PlSqlParser.OVERRIDING - 1185)) | (1 << (PlSqlParser.OWNER - 1185)) | (1 << (PlSqlParser.OWNERSHIP - 1185)) | (1 << (PlSqlParser.OWN - 1185)) | (1 << (PlSqlParser.PACKAGE - 1185)) | (1 << (PlSqlParser.PACKAGES - 1185)) | (1 << (PlSqlParser.PARALLEL_ENABLE - 1185)) | (1 << (PlSqlParser.PARALLEL_INDEX - 1185)) | (1 << (PlSqlParser.PARALLEL - 1185)) | (1 << (PlSqlParser.PARAMETERS - 1185)) | (1 << (PlSqlParser.PARAM - 1185)) | (1 << (PlSqlParser.PARENT - 1185)) | (1 << (PlSqlParser.PARITY - 1185)) | (1 << (PlSqlParser.PARTIAL_JOIN - 1185)) | (1 << (PlSqlParser.PARTIALLY - 1185)) | (1 << (PlSqlParser.PARTIAL - 1185)) | (1 << (PlSqlParser.PARTIAL_ROLLUP_PUSHDOWN - 1185)) | (1 << (PlSqlParser.PARTITION_HASH - 1185)) | (1 << (PlSqlParser.PARTITION_LIST - 1185)) | (1 << (PlSqlParser.PARTITION - 1185)) | (1 << (PlSqlParser.PARTITION_RANGE - 1185)) | (1 << (PlSqlParser.PARTITIONS - 1185)) | (1 << (PlSqlParser.PARTNUMINST - 1185)) | (1 << (PlSqlParser.PASSING - 1185)) | (1 << (PlSqlParser.PASSWORD_GRACE_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD_LIFE_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD_LOCK_TIME - 1185)) | (1 << (PlSqlParser.PASSWORD - 1185)) | (1 << (PlSqlParser.PASSWORD_REUSE_MAX - 1185)))) !== 0) || ((((_la - 1217)) & ~0x1f) == 0 && ((1 << (_la - 1217)) & ((1 << (PlSqlParser.PASSWORD_REUSE_TIME - 1217)) | (1 << (PlSqlParser.PASSWORD_VERIFY_FUNCTION - 1217)) | (1 << (PlSqlParser.PAST - 1217)) | (1 << (PlSqlParser.PATCH - 1217)) | (1 << (PlSqlParser.PATH - 1217)) | (1 << (PlSqlParser.PATH_PREFIX - 1217)) | (1 << (PlSqlParser.PATHS - 1217)) | (1 << (PlSqlParser.PATTERN - 1217)) | (1 << (PlSqlParser.PBL_HS_BEGIN - 1217)) | (1 << (PlSqlParser.PBL_HS_END - 1217)) | (1 << (PlSqlParser.PCTINCREASE - 1217)) | (1 << (PlSqlParser.PCTTHRESHOLD - 1217)) | (1 << (PlSqlParser.PCTUSED - 1217)) | (1 << (PlSqlParser.PCTVERSION - 1217)) | (1 << (PlSqlParser.PENDING - 1217)) | (1 << (PlSqlParser.PERCENT_KEYWORD - 1217)) | (1 << (PlSqlParser.PERCENT_RANKM - 1217)) | (1 << (PlSqlParser.PERFORMANCE - 1217)) | (1 << (PlSqlParser.PERIOD_KEYWORD - 1217)) | (1 << (PlSqlParser.PERMANENT - 1217)) | (1 << (PlSqlParser.PERMISSION - 1217)) | (1 << (PlSqlParser.PERMUTE - 1217)) | (1 << (PlSqlParser.PER - 1217)) | (1 << (PlSqlParser.PFILE - 1217)) | (1 << (PlSqlParser.PHYSICAL - 1217)))) !== 0) || ((((_la - 1249)) & ~0x1f) == 0 && ((1 << (_la - 1249)) & ((1 << (PlSqlParser.PIKEY - 1249)) | (1 << (PlSqlParser.PIPELINED - 1249)) | (1 << (PlSqlParser.PIV_GB - 1249)) | (1 << (PlSqlParser.PIVOT - 1249)) | (1 << (PlSqlParser.PIV_SSF - 1249)) | (1 << (PlSqlParser.PLACE_DISTINCT - 1249)) | (1 << (PlSqlParser.PLACE_GROUP_BY - 1249)) | (1 << (PlSqlParser.PLAN - 1249)) | (1 << (PlSqlParser.PLSCOPE_SETTINGS - 1249)) | (1 << (PlSqlParser.PLS_INTEGER - 1249)) | (1 << (PlSqlParser.PLSQL_CCFLAGS - 1249)) | (1 << (PlSqlParser.PLSQL_CODE_TYPE - 1249)) | (1 << (PlSqlParser.PLSQL_DEBUG - 1249)) | (1 << (PlSqlParser.PLSQL_OPTIMIZE_LEVEL - 1249)) | (1 << (PlSqlParser.PLSQL_WARNINGS - 1249)) | (1 << (PlSqlParser.PLUGGABLE - 1249)) | (1 << (PlSqlParser.POINT - 1249)) | (1 << (PlSqlParser.POLICY - 1249)) | (1 << (PlSqlParser.POOL_16K - 1249)) | (1 << (PlSqlParser.POOL_2K - 1249)) | (1 << (PlSqlParser.POOL_32K - 1249)) | (1 << (PlSqlParser.POOL_4K - 1249)) | (1 << (PlSqlParser.POOL_8K - 1249)) | (1 << (PlSqlParser.POSITIVEN - 1249)) | (1 << (PlSqlParser.POSITIVE - 1249)) | (1 << (PlSqlParser.POST_TRANSACTION - 1249)) | (1 << (PlSqlParser.POWERMULTISET_BY_CARDINALITY - 1249)) | (1 << (PlSqlParser.POWERMULTISET - 1249)) | (1 << (PlSqlParser.POWER - 1249)) | (1 << (PlSqlParser.PQ_CONCURRENT_UNION - 1249)) | (1 << (PlSqlParser.PQ_DISTRIBUTE - 1249)))) !== 0) || ((((_la - 1281)) & ~0x1f) == 0 && ((1 << (_la - 1281)) & ((1 << (PlSqlParser.PQ_DISTRIBUTE_WINDOW - 1281)) | (1 << (PlSqlParser.PQ_FILTER - 1281)) | (1 << (PlSqlParser.PQ_MAP - 1281)) | (1 << (PlSqlParser.PQ_NOMAP - 1281)) | (1 << (PlSqlParser.PQ_REPLICATE - 1281)) | (1 << (PlSqlParser.PQ_SKEW - 1281)) | (1 << (PlSqlParser.PRAGMA - 1281)) | (1 << (PlSqlParser.PREBUILT - 1281)) | (1 << (PlSqlParser.PRECEDES - 1281)) | (1 << (PlSqlParser.PRECEDING - 1281)) | (1 << (PlSqlParser.PRECISION - 1281)) | (1 << (PlSqlParser.PRECOMPUTE_SUBQUERY - 1281)) | (1 << (PlSqlParser.PREDICATE_REORDERS - 1281)) | (1 << (PlSqlParser.PRELOAD - 1281)) | (1 << (PlSqlParser.PREPARE - 1281)) | (1 << (PlSqlParser.PRESENTNNV - 1281)) | (1 << (PlSqlParser.PRESENT - 1281)) | (1 << (PlSqlParser.PRESENTV - 1281)) | (1 << (PlSqlParser.PRESERVE_OID - 1281)) | (1 << (PlSqlParser.PRESERVE - 1281)) | (1 << (PlSqlParser.PRETTY - 1281)) | (1 << (PlSqlParser.PREVIOUS - 1281)) | (1 << (PlSqlParser.PREV - 1281)) | (1 << (PlSqlParser.PRIMARY - 1281)) | (1 << (PlSqlParser.PRINTBLOBTOCLOB - 1281)) | (1 << (PlSqlParser.PRIORITY - 1281)) | (1 << (PlSqlParser.PRIVATE - 1281)) | (1 << (PlSqlParser.PRIVATE_SGA - 1281)) | (1 << (PlSqlParser.PRIVILEGED - 1281)) | (1 << (PlSqlParser.PRIVILEGE - 1281)) | (1 << (PlSqlParser.PRIVILEGES - 1281)))) !== 0) || ((((_la - 1313)) & ~0x1f) == 0 && ((1 << (_la - 1313)) & ((1 << (PlSqlParser.PROCEDURAL - 1313)) | (1 << (PlSqlParser.PROCEDURE - 1313)) | (1 << (PlSqlParser.PROCESS - 1313)) | (1 << (PlSqlParser.PROFILE - 1313)) | (1 << (PlSqlParser.PROGRAM - 1313)) | (1 << (PlSqlParser.PROJECT - 1313)) | (1 << (PlSqlParser.PROPAGATE - 1313)) | (1 << (PlSqlParser.PROTECTED - 1313)) | (1 << (PlSqlParser.PROTECTION - 1313)) | (1 << (PlSqlParser.PROXY - 1313)) | (1 << (PlSqlParser.PRUNING - 1313)) | (1 << (PlSqlParser.PULL_PRED - 1313)) | (1 << (PlSqlParser.PURGE - 1313)) | (1 << (PlSqlParser.PUSH_PRED - 1313)) | (1 << (PlSqlParser.PUSH_SUBQ - 1313)) | (1 << (PlSqlParser.PX_FAULT_TOLERANCE - 1313)) | (1 << (PlSqlParser.PX_GRANULE - 1313)) | (1 << (PlSqlParser.PX_JOIN_FILTER - 1313)) | (1 << (PlSqlParser.QB_NAME - 1313)) | (1 << (PlSqlParser.QUERY_BLOCK - 1313)) | (1 << (PlSqlParser.QUERY - 1313)) | (1 << (PlSqlParser.QUEUE_CURR - 1313)) | (1 << (PlSqlParser.QUEUE - 1313)) | (1 << (PlSqlParser.QUEUE_ROWP - 1313)) | (1 << (PlSqlParser.QUIESCE - 1313)) | (1 << (PlSqlParser.QUORUM - 1313)) | (1 << (PlSqlParser.QUOTA - 1313)) | (1 << (PlSqlParser.RAISE - 1313)) | (1 << (PlSqlParser.RANDOM_LOCAL - 1313)) | (1 << (PlSqlParser.RANDOM - 1313)) | (1 << (PlSqlParser.RANGE - 1313)))) !== 0) || ((((_la - 1345)) & ~0x1f) == 0 && ((1 << (_la - 1345)) & ((1 << (PlSqlParser.RANKM - 1345)) | (1 << (PlSqlParser.RAPIDLY - 1345)) | (1 << (PlSqlParser.RAW - 1345)) | (1 << (PlSqlParser.RAWTOHEX - 1345)) | (1 << (PlSqlParser.RAWTONHEX - 1345)) | (1 << (PlSqlParser.RBA - 1345)) | (1 << (PlSqlParser.RBO_OUTLINE - 1345)) | (1 << (PlSqlParser.RDBA - 1345)) | (1 << (PlSqlParser.READ - 1345)) | (1 << (PlSqlParser.READS - 1345)) | (1 << (PlSqlParser.REALM - 1345)) | (1 << (PlSqlParser.REAL - 1345)) | (1 << (PlSqlParser.REBALANCE - 1345)) | (1 << (PlSqlParser.REBUILD - 1345)) | (1 << (PlSqlParser.RECORD - 1345)) | (1 << (PlSqlParser.RECORDS_PER_BLOCK - 1345)) | (1 << (PlSqlParser.RECOVERABLE - 1345)) | (1 << (PlSqlParser.RECOVER - 1345)) | (1 << (PlSqlParser.RECOVERY - 1345)) | (1 << (PlSqlParser.RECYCLEBIN - 1345)) | (1 << (PlSqlParser.RECYCLE - 1345)) | (1 << (PlSqlParser.REDACTION - 1345)) | (1 << (PlSqlParser.REDEFINE - 1345)) | (1 << (PlSqlParser.REDO - 1345)) | (1 << (PlSqlParser.REDUCED - 1345)) | (1 << (PlSqlParser.REDUNDANCY - 1345)) | (1 << (PlSqlParser.REF_CASCADE_CURSOR - 1345)) | (1 << (PlSqlParser.REFERENCED - 1345)) | (1 << (PlSqlParser.REFERENCE - 1345)) | (1 << (PlSqlParser.REFERENCES - 1345)) | (1 << (PlSqlParser.REFERENCING - 1345)) | (1 << (PlSqlParser.REF - 1345)))) !== 0) || ((((_la - 1377)) & ~0x1f) == 0 && ((1 << (_la - 1377)) & ((1 << (PlSqlParser.REFRESH - 1377)) | (1 << (PlSqlParser.REFTOHEX - 1377)) | (1 << (PlSqlParser.REGEXP_COUNT - 1377)) | (1 << (PlSqlParser.REGEXP_INSTR - 1377)) | (1 << (PlSqlParser.REGEXP_LIKE - 1377)) | (1 << (PlSqlParser.REGEXP_REPLACE - 1377)) | (1 << (PlSqlParser.REGEXP_SUBSTR - 1377)) | (1 << (PlSqlParser.REGISTER - 1377)) | (1 << (PlSqlParser.REGR_AVGX - 1377)) | (1 << (PlSqlParser.REGR_AVGY - 1377)) | (1 << (PlSqlParser.REGR_COUNT - 1377)) | (1 << (PlSqlParser.REGR_INTERCEPT - 1377)) | (1 << (PlSqlParser.REGR_R2 - 1377)) | (1 << (PlSqlParser.REGR_SLOPE - 1377)) | (1 << (PlSqlParser.REGR_SXX - 1377)) | (1 << (PlSqlParser.REGR_SXY - 1377)) | (1 << (PlSqlParser.REGR_SYY - 1377)) | (1 << (PlSqlParser.REGULAR - 1377)) | (1 << (PlSqlParser.REJECT - 1377)) | (1 << (PlSqlParser.REKEY - 1377)) | (1 << (PlSqlParser.RELATIONAL - 1377)) | (1 << (PlSqlParser.RELOCATE - 1377)) | (1 << (PlSqlParser.RELY - 1377)) | (1 << (PlSqlParser.REMAINDER - 1377)) | (1 << (PlSqlParser.REMOTE_MAPPED - 1377)) | (1 << (PlSqlParser.REMOVE - 1377)) | (1 << (PlSqlParser.RENAME - 1377)) | (1 << (PlSqlParser.REPAIR - 1377)) | (1 << (PlSqlParser.REPEAT - 1377)) | (1 << (PlSqlParser.REPLACE - 1377)) | (1 << (PlSqlParser.REPLICATION - 1377)))) !== 0) || ((((_la - 1409)) & ~0x1f) == 0 && ((1 << (_la - 1409)) & ((1 << (PlSqlParser.REQUIRED - 1409)) | (1 << (PlSqlParser.RESETLOGS - 1409)) | (1 << (PlSqlParser.RESET - 1409)) | (1 << (PlSqlParser.RESIZE - 1409)) | (1 << (PlSqlParser.RESOLVE - 1409)) | (1 << (PlSqlParser.RESOLVER - 1409)) | (1 << (PlSqlParser.RESPECT - 1409)) | (1 << (PlSqlParser.RESTART - 1409)) | (1 << (PlSqlParser.RESTORE_AS_INTERVALS - 1409)) | (1 << (PlSqlParser.RESTORE - 1409)) | (1 << (PlSqlParser.RESTRICT_ALL_REF_CONS - 1409)) | (1 << (PlSqlParser.RESTRICTED - 1409)) | (1 << (PlSqlParser.RESTRICT_REFERENCES - 1409)) | (1 << (PlSqlParser.RESTRICT - 1409)) | (1 << (PlSqlParser.RESULT_CACHE - 1409)) | (1 << (PlSqlParser.RESULT - 1409)) | (1 << (PlSqlParser.RESUMABLE - 1409)) | (1 << (PlSqlParser.RESUME - 1409)) | (1 << (PlSqlParser.RETENTION - 1409)) | (1 << (PlSqlParser.RETRY_ON_ROW_CHANGE - 1409)) | (1 << (PlSqlParser.RETURNING - 1409)) | (1 << (PlSqlParser.RETURN - 1409)) | (1 << (PlSqlParser.REUSE - 1409)) | (1 << (PlSqlParser.REVERSE - 1409)) | (1 << (PlSqlParser.REWRITE_OR_ERROR - 1409)) | (1 << (PlSqlParser.REWRITE - 1409)) | (1 << (PlSqlParser.RIGHT - 1409)) | (1 << (PlSqlParser.ROLE - 1409)) | (1 << (PlSqlParser.ROLESET - 1409)) | (1 << (PlSqlParser.ROLES - 1409)))) !== 0) || ((((_la - 1441)) & ~0x1f) == 0 && ((1 << (_la - 1441)) & ((1 << (PlSqlParser.ROLLBACK - 1441)) | (1 << (PlSqlParser.ROLLING - 1441)) | (1 << (PlSqlParser.ROLLUP - 1441)) | (1 << (PlSqlParser.ROWDEPENDENCIES - 1441)) | (1 << (PlSqlParser.ROWID_MAPPING_TABLE - 1441)) | (1 << (PlSqlParser.ROWID - 1441)) | (1 << (PlSqlParser.ROWIDTOCHAR - 1441)) | (1 << (PlSqlParser.ROWIDTONCHAR - 1441)) | (1 << (PlSqlParser.ROW_LENGTH - 1441)) | (1 << (PlSqlParser.ROWNUM - 1441)) | (1 << (PlSqlParser.ROW - 1441)) | (1 << (PlSqlParser.ROWS - 1441)) | (1 << (PlSqlParser.RPAD - 1441)) | (1 << (PlSqlParser.RTRIM - 1441)) | (1 << (PlSqlParser.RULE - 1441)) | (1 << (PlSqlParser.RULES - 1441)) | (1 << (PlSqlParser.RUNNING - 1441)) | (1 << (PlSqlParser.SALT - 1441)) | (1 << (PlSqlParser.SAMPLE - 1441)) | (1 << (PlSqlParser.SAVE_AS_INTERVALS - 1441)) | (1 << (PlSqlParser.SAVEPOINT - 1441)) | (1 << (PlSqlParser.SAVE - 1441)) | (1 << (PlSqlParser.SB4 - 1441)) | (1 << (PlSqlParser.SCALE_ROWS - 1441)) | (1 << (PlSqlParser.SCALE - 1441)) | (1 << (PlSqlParser.SCAN_INSTANCES - 1441)) | (1 << (PlSqlParser.SCAN - 1441)) | (1 << (PlSqlParser.SCHEDULER - 1441)) | (1 << (PlSqlParser.SCHEMACHECK - 1441)) | (1 << (PlSqlParser.SCHEMA - 1441)) | (1 << (PlSqlParser.SCN_ASCENDING - 1441)) | (1 << (PlSqlParser.SCN - 1441)))) !== 0) || ((((_la - 1473)) & ~0x1f) == 0 && ((1 << (_la - 1473)) & ((1 << (PlSqlParser.SCOPE - 1473)) | (1 << (PlSqlParser.SCRUB - 1473)) | (1 << (PlSqlParser.SD_ALL - 1473)) | (1 << (PlSqlParser.SD_INHIBIT - 1473)) | (1 << (PlSqlParser.SDO_GEOM_MBR - 1473)) | (1 << (PlSqlParser.SD_SHOW - 1473)) | (1 << (PlSqlParser.SEARCH - 1473)) | (1 << (PlSqlParser.SECOND - 1473)) | (1 << (PlSqlParser.SECRET - 1473)) | (1 << (PlSqlParser.SECUREFILE_DBA - 1473)) | (1 << (PlSqlParser.SECUREFILE - 1473)) | (1 << (PlSqlParser.SECURITY - 1473)) | (1 << (PlSqlParser.SEED - 1473)) | (1 << (PlSqlParser.SEG_BLOCK - 1473)) | (1 << (PlSqlParser.SEG_FILE - 1473)) | (1 << (PlSqlParser.SEGMENT - 1473)) | (1 << (PlSqlParser.SELECTIVITY - 1473)) | (1 << (PlSqlParser.SELF - 1473)) | (1 << (PlSqlParser.SEMIJOIN_DRIVER - 1473)) | (1 << (PlSqlParser.SEMIJOIN - 1473)) | (1 << (PlSqlParser.SEMI_TO_INNER - 1473)) | (1 << (PlSqlParser.SEQUENCED - 1473)) | (1 << (PlSqlParser.SEQUENCE - 1473)) | (1 << (PlSqlParser.SEQUENTIAL - 1473)) | (1 << (PlSqlParser.SERIALIZABLE - 1473)) | (1 << (PlSqlParser.SERIALLY_REUSABLE - 1473)) | (1 << (PlSqlParser.SERIAL - 1473)) | (1 << (PlSqlParser.SERVERERROR - 1473)) | (1 << (PlSqlParser.SERVICE_NAME_CONVERT - 1473)) | (1 << (PlSqlParser.SERVICES - 1473)))) !== 0) || ((((_la - 1505)) & ~0x1f) == 0 && ((1 << (_la - 1505)) & ((1 << (PlSqlParser.SESSION_CACHED_CURSORS - 1505)) | (1 << (PlSqlParser.SESSION - 1505)) | (1 << (PlSqlParser.SESSIONS_PER_USER - 1505)) | (1 << (PlSqlParser.SESSIONTIMEZONE - 1505)) | (1 << (PlSqlParser.SESSIONTZNAME - 1505)) | (1 << (PlSqlParser.SET - 1505)) | (1 << (PlSqlParser.SETS - 1505)) | (1 << (PlSqlParser.SETTINGS - 1505)) | (1 << (PlSqlParser.SET_TO_JOIN - 1505)) | (1 << (PlSqlParser.SEVERE - 1505)) | (1 << (PlSqlParser.SHARED_POOL - 1505)) | (1 << (PlSqlParser.SHARED - 1505)) | (1 << (PlSqlParser.SHARING - 1505)) | (1 << (PlSqlParser.SHELFLIFE - 1505)) | (1 << (PlSqlParser.SHOW - 1505)) | (1 << (PlSqlParser.SHRINK - 1505)) | (1 << (PlSqlParser.SHUTDOWN - 1505)) | (1 << (PlSqlParser.SIBLINGS - 1505)) | (1 << (PlSqlParser.SID - 1505)) | (1 << (PlSqlParser.SIGNAL_COMPONENT - 1505)) | (1 << (PlSqlParser.SIGNAL_FUNCTION - 1505)) | (1 << (PlSqlParser.SIGN - 1505)) | (1 << (PlSqlParser.SIGNTYPE - 1505)) | (1 << (PlSqlParser.SIMPLE_INTEGER - 1505)) | (1 << (PlSqlParser.SIMPLE - 1505)) | (1 << (PlSqlParser.SINGLE - 1505)) | (1 << (PlSqlParser.SINGLETASK - 1505)) | (1 << (PlSqlParser.SINH - 1505)) | (1 << (PlSqlParser.SIN - 1505)) | (1 << (PlSqlParser.SKIP_EXT_OPTIMIZER - 1505)))) !== 0) || ((((_la - 1537)) & ~0x1f) == 0 && ((1 << (_la - 1537)) & ((1 << (PlSqlParser.SKIP_ - 1537)) | (1 << (PlSqlParser.SKIP_UNQ_UNUSABLE_IDX - 1537)) | (1 << (PlSqlParser.SKIP_UNUSABLE_INDEXES - 1537)) | (1 << (PlSqlParser.SMALLFILE - 1537)) | (1 << (PlSqlParser.SMALLINT - 1537)) | (1 << (PlSqlParser.SNAPSHOT - 1537)) | (1 << (PlSqlParser.SOME - 1537)) | (1 << (PlSqlParser.SORT - 1537)) | (1 << (PlSqlParser.SOUNDEX - 1537)) | (1 << (PlSqlParser.SOURCE_FILE_DIRECTORY - 1537)) | (1 << (PlSqlParser.SOURCE_FILE_NAME_CONVERT - 1537)) | (1 << (PlSqlParser.SOURCE - 1537)) | (1 << (PlSqlParser.SPACE_KEYWORD - 1537)) | (1 << (PlSqlParser.SPECIFICATION - 1537)) | (1 << (PlSqlParser.SPFILE - 1537)) | (1 << (PlSqlParser.SPLIT - 1537)) | (1 << (PlSqlParser.SPREADSHEET - 1537)) | (1 << (PlSqlParser.SQLDATA - 1537)) | (1 << (PlSqlParser.SQLERROR - 1537)) | (1 << (PlSqlParser.SQLLDR - 1537)) | (1 << (PlSqlParser.SQL - 1537)) | (1 << (PlSqlParser.SQL_TRACE - 1537)) | (1 << (PlSqlParser.SQL_TRANSLATION_PROFILE - 1537)) | (1 << (PlSqlParser.SQRT - 1537)) | (1 << (PlSqlParser.STALE - 1537)) | (1 << (PlSqlParser.STANDALONE - 1537)) | (1 << (PlSqlParser.STANDARD_HASH - 1537)) | (1 << (PlSqlParser.STANDBY_MAX_DATA_DELAY - 1537)) | (1 << (PlSqlParser.STANDBYS - 1537)) | (1 << (PlSqlParser.STANDBY - 1537)) | (1 << (PlSqlParser.STAR - 1537)) | (1 << (PlSqlParser.STAR_TRANSFORMATION - 1537)))) !== 0) || ((((_la - 1570)) & ~0x1f) == 0 && ((1 << (_la - 1570)) & ((1 << (PlSqlParser.STARTUP - 1570)) | (1 << (PlSqlParser.STATEMENT_ID - 1570)) | (1 << (PlSqlParser.STATEMENT_QUEUING - 1570)) | (1 << (PlSqlParser.STATEMENTS - 1570)) | (1 << (PlSqlParser.STATEMENT - 1570)) | (1 << (PlSqlParser.STATE - 1570)) | (1 << (PlSqlParser.STATIC - 1570)) | (1 << (PlSqlParser.STATISTICS - 1570)) | (1 << (PlSqlParser.STATS_BINOMIAL_TEST - 1570)) | (1 << (PlSqlParser.STATS_CROSSTAB - 1570)) | (1 << (PlSqlParser.STATS_F_TEST - 1570)) | (1 << (PlSqlParser.STATS_KS_TEST - 1570)) | (1 << (PlSqlParser.STATS_MODE - 1570)) | (1 << (PlSqlParser.STATS_MW_TEST - 1570)) | (1 << (PlSqlParser.STATS_ONE_WAY_ANOVA - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_INDEP - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_INDEPU - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_ONE - 1570)) | (1 << (PlSqlParser.STATS_T_TEST_PAIRED - 1570)) | (1 << (PlSqlParser.STATS_WSR_TEST - 1570)) | (1 << (PlSqlParser.STDDEV_POP - 1570)) | (1 << (PlSqlParser.STDDEV_SAMP - 1570)) | (1 << (PlSqlParser.STOP - 1570)) | (1 << (PlSqlParser.STORAGE - 1570)) | (1 << (PlSqlParser.STORE - 1570)) | (1 << (PlSqlParser.STREAMS - 1570)) | (1 << (PlSqlParser.STREAM - 1570)) | (1 << (PlSqlParser.STRICT - 1570)) | (1 << (PlSqlParser.STRING - 1570)) | (1 << (PlSqlParser.STRIPE_COLUMNS - 1570)) | (1 << (PlSqlParser.STRIPE_WIDTH - 1570)) | (1 << (PlSqlParser.STRIP - 1570)))) !== 0) || ((((_la - 1602)) & ~0x1f) == 0 && ((1 << (_la - 1602)) & ((1 << (PlSqlParser.STRUCTURE - 1602)) | (1 << (PlSqlParser.SUBMULTISET - 1602)) | (1 << (PlSqlParser.SUBPARTITION_REL - 1602)) | (1 << (PlSqlParser.SUBPARTITIONS - 1602)) | (1 << (PlSqlParser.SUBPARTITION - 1602)) | (1 << (PlSqlParser.SUBQUERIES - 1602)) | (1 << (PlSqlParser.SUBQUERY_PRUNING - 1602)) | (1 << (PlSqlParser.SUBSCRIBE - 1602)) | (1 << (PlSqlParser.SUBSET - 1602)) | (1 << (PlSqlParser.SUBSTITUTABLE - 1602)) | (1 << (PlSqlParser.SUBSTR2 - 1602)) | (1 << (PlSqlParser.SUBSTR4 - 1602)) | (1 << (PlSqlParser.SUBSTRB - 1602)) | (1 << (PlSqlParser.SUBSTRC - 1602)) | (1 << (PlSqlParser.SUBTYPE - 1602)) | (1 << (PlSqlParser.SUCCESSFUL - 1602)) | (1 << (PlSqlParser.SUCCESS - 1602)) | (1 << (PlSqlParser.SUMMARY - 1602)) | (1 << (PlSqlParser.SUPPLEMENTAL - 1602)) | (1 << (PlSqlParser.SUSPEND - 1602)) | (1 << (PlSqlParser.SWAP_JOIN_INPUTS - 1602)) | (1 << (PlSqlParser.SWITCHOVER - 1602)) | (1 << (PlSqlParser.SWITCH - 1602)) | (1 << (PlSqlParser.SYNCHRONOUS - 1602)) | (1 << (PlSqlParser.SYNC - 1602)) | (1 << (PlSqlParser.SYSASM - 1602)) | (1 << (PlSqlParser.SYS_AUDIT - 1602)) | (1 << (PlSqlParser.SYSAUX - 1602)) | (1 << (PlSqlParser.SYSBACKUP - 1602)) | (1 << (PlSqlParser.SYS_CHECKACL - 1602)) | (1 << (PlSqlParser.SYS_CHECK_PRIVILEGE - 1602)))) !== 0) || ((((_la - 1634)) & ~0x1f) == 0 && ((1 << (_la - 1634)) & ((1 << (PlSqlParser.SYS_CONNECT_BY_PATH - 1634)) | (1 << (PlSqlParser.SYS_CONTEXT - 1634)) | (1 << (PlSqlParser.SYSDATE - 1634)) | (1 << (PlSqlParser.SYSDBA - 1634)) | (1 << (PlSqlParser.SYS_DBURIGEN - 1634)) | (1 << (PlSqlParser.SYSDG - 1634)) | (1 << (PlSqlParser.SYS_DL_CURSOR - 1634)) | (1 << (PlSqlParser.SYS_DM_RXFORM_CHR - 1634)) | (1 << (PlSqlParser.SYS_DM_RXFORM_NUM - 1634)) | (1 << (PlSqlParser.SYS_DOM_COMPARE - 1634)) | (1 << (PlSqlParser.SYS_DST_PRIM2SEC - 1634)) | (1 << (PlSqlParser.SYS_DST_SEC2PRIM - 1634)) | (1 << (PlSqlParser.SYS_ET_BFILE_TO_RAW - 1634)) | (1 << (PlSqlParser.SYS_ET_BLOB_TO_IMAGE - 1634)) | (1 << (PlSqlParser.SYS_ET_IMAGE_TO_BLOB - 1634)) | (1 << (PlSqlParser.SYS_ET_RAW_TO_BFILE - 1634)) | (1 << (PlSqlParser.SYS_EXTPDTXT - 1634)) | (1 << (PlSqlParser.SYS_EXTRACT_UTC - 1634)) | (1 << (PlSqlParser.SYS_FBT_INSDEL - 1634)) | (1 << (PlSqlParser.SYS_FILTER_ACLS - 1634)) | (1 << (PlSqlParser.SYS_FNMATCHES - 1634)) | (1 << (PlSqlParser.SYS_FNREPLACE - 1634)) | (1 << (PlSqlParser.SYS_GET_ACLIDS - 1634)) | (1 << (PlSqlParser.SYS_GET_COL_ACLIDS - 1634)) | (1 << (PlSqlParser.SYS_GET_PRIVILEGES - 1634)) | (1 << (PlSqlParser.SYS_GETTOKENID - 1634)) | (1 << (PlSqlParser.SYS_GETXTIVAL - 1634)) | (1 << (PlSqlParser.SYS_GUID - 1634)) | (1 << (PlSqlParser.SYSGUID - 1634)) | (1 << (PlSqlParser.SYSKM - 1634)) | (1 << (PlSqlParser.SYS_MAKE_XMLNODEID - 1634)) | (1 << (PlSqlParser.SYS_MAKEXML - 1634)))) !== 0) || ((((_la - 1666)) & ~0x1f) == 0 && ((1 << (_la - 1666)) & ((1 << (PlSqlParser.SYS_MKXMLATTR - 1666)) | (1 << (PlSqlParser.SYS_MKXTI - 1666)) | (1 << (PlSqlParser.SYSOBJ - 1666)) | (1 << (PlSqlParser.SYS_OP_ADT2BIN - 1666)) | (1 << (PlSqlParser.SYS_OP_ADTCONS - 1666)) | (1 << (PlSqlParser.SYS_OP_ALSCRVAL - 1666)) | (1 << (PlSqlParser.SYS_OP_ATG - 1666)) | (1 << (PlSqlParser.SYS_OP_BIN2ADT - 1666)) | (1 << (PlSqlParser.SYS_OP_BITVEC - 1666)) | (1 << (PlSqlParser.SYS_OP_BL2R - 1666)) | (1 << (PlSqlParser.SYS_OP_BLOOM_FILTER_LIST - 1666)) | (1 << (PlSqlParser.SYS_OP_BLOOM_FILTER - 1666)) | (1 << (PlSqlParser.SYS_OP_C2C - 1666)) | (1 << (PlSqlParser.SYS_OP_CAST - 1666)) | (1 << (PlSqlParser.SYS_OP_CEG - 1666)) | (1 << (PlSqlParser.SYS_OP_CL2C - 1666)) | (1 << (PlSqlParser.SYS_OP_COMBINED_HASH - 1666)) | (1 << (PlSqlParser.SYS_OP_COMP - 1666)) | (1 << (PlSqlParser.SYS_OP_CONVERT - 1666)) | (1 << (PlSqlParser.SYS_OP_COUNTCHG - 1666)) | (1 << (PlSqlParser.SYS_OP_CSCONV - 1666)) | (1 << (PlSqlParser.SYS_OP_CSCONVTEST - 1666)) | (1 << (PlSqlParser.SYS_OP_CSR - 1666)) | (1 << (PlSqlParser.SYS_OP_CSX_PATCH - 1666)) | (1 << (PlSqlParser.SYS_OP_CYCLED_SEQ - 1666)) | (1 << (PlSqlParser.SYS_OP_DECOMP - 1666)) | (1 << (PlSqlParser.SYS_OP_DESCEND - 1666)) | (1 << (PlSqlParser.SYS_OP_DISTINCT - 1666)) | (1 << (PlSqlParser.SYS_OP_DRA - 1666)) | (1 << (PlSqlParser.SYS_OP_DUMP - 1666)) | (1 << (PlSqlParser.SYS_OP_DV_CHECK - 1666)) | (1 << (PlSqlParser.SYS_OP_ENFORCE_NOT_NULL - 1666)))) !== 0) || ((((_la - 1698)) & ~0x1f) == 0 && ((1 << (_la - 1698)) & ((1 << (PlSqlParser.SYSOPER - 1698)) | (1 << (PlSqlParser.SYS_OP_EXTRACT - 1698)) | (1 << (PlSqlParser.SYS_OP_GROUPING - 1698)) | (1 << (PlSqlParser.SYS_OP_GUID - 1698)) | (1 << (PlSqlParser.SYS_OP_HASH - 1698)) | (1 << (PlSqlParser.SYS_OP_IIX - 1698)) | (1 << (PlSqlParser.SYS_OP_ITR - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_CREATE - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_FILTER_LIST - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_FILTER - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_SUCCEEDED - 1698)) | (1 << (PlSqlParser.SYS_OP_KEY_VECTOR_USE - 1698)) | (1 << (PlSqlParser.SYS_OP_LBID - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2BLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2CLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2ID - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2NCLOB - 1698)) | (1 << (PlSqlParser.SYS_OP_LOBLOC2TYP - 1698)) | (1 << (PlSqlParser.SYS_OP_LSVI - 1698)) | (1 << (PlSqlParser.SYS_OP_LVL - 1698)) | (1 << (PlSqlParser.SYS_OP_MAKEOID - 1698)) | (1 << (PlSqlParser.SYS_OP_MAP_NONNULL - 1698)) | (1 << (PlSqlParser.SYS_OP_MSR - 1698)) | (1 << (PlSqlParser.SYS_OP_NICOMBINE - 1698)) | (1 << (PlSqlParser.SYS_OP_NIEXTRACT - 1698)) | (1 << (PlSqlParser.SYS_OP_NII - 1698)) | (1 << (PlSqlParser.SYS_OP_NIX - 1698)) | (1 << (PlSqlParser.SYS_OP_NOEXPAND - 1698)) | (1 << (PlSqlParser.SYS_OP_NTCIMG - 1698)) | (1 << (PlSqlParser.SYS_OP_NUMTORAW - 1698)) | (1 << (PlSqlParser.SYS_OP_OIDVALUE - 1698)) | (1 << (PlSqlParser.SYS_OP_OPNSIZE - 1698)))) !== 0) || ((((_la - 1730)) & ~0x1f) == 0 && ((1 << (_la - 1730)) & ((1 << (PlSqlParser.SYS_OP_PAR_1 - 1730)) | (1 << (PlSqlParser.SYS_OP_PARGID_1 - 1730)) | (1 << (PlSqlParser.SYS_OP_PARGID - 1730)) | (1 << (PlSqlParser.SYS_OP_PAR - 1730)) | (1 << (PlSqlParser.SYS_OP_PART_ID - 1730)) | (1 << (PlSqlParser.SYS_OP_PIVOT - 1730)) | (1 << (PlSqlParser.SYS_OP_R2O - 1730)) | (1 << (PlSqlParser.SYS_OP_RAWTONUM - 1730)) | (1 << (PlSqlParser.SYS_OP_RDTM - 1730)) | (1 << (PlSqlParser.SYS_OP_REF - 1730)) | (1 << (PlSqlParser.SYS_OP_RMTD - 1730)) | (1 << (PlSqlParser.SYS_OP_ROWIDTOOBJ - 1730)) | (1 << (PlSqlParser.SYS_OP_RPB - 1730)) | (1 << (PlSqlParser.SYS_OPTLOBPRBSC - 1730)) | (1 << (PlSqlParser.SYS_OP_TOSETID - 1730)) | (1 << (PlSqlParser.SYS_OP_TPR - 1730)) | (1 << (PlSqlParser.SYS_OP_TRTB - 1730)) | (1 << (PlSqlParser.SYS_OPTXICMP - 1730)) | (1 << (PlSqlParser.SYS_OPTXQCASTASNQ - 1730)) | (1 << (PlSqlParser.SYS_OP_UNDESCEND - 1730)) | (1 << (PlSqlParser.SYS_OP_VECAND - 1730)) | (1 << (PlSqlParser.SYS_OP_VECBIT - 1730)) | (1 << (PlSqlParser.SYS_OP_VECOR - 1730)) | (1 << (PlSqlParser.SYS_OP_VECXOR - 1730)) | (1 << (PlSqlParser.SYS_OP_VERSION - 1730)) | (1 << (PlSqlParser.SYS_OP_VREF - 1730)) | (1 << (PlSqlParser.SYS_OP_VVD - 1730)) | (1 << (PlSqlParser.SYS_OP_XMLCONS_FOR_CSX - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHATG - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHIDX - 1730)) | (1 << (PlSqlParser.SYS_OP_XPTHOP - 1730)) | (1 << (PlSqlParser.SYS_OP_XTXT2SQLT - 1730)))) !== 0) || ((((_la - 1762)) & ~0x1f) == 0 && ((1 << (_la - 1762)) & ((1 << (PlSqlParser.SYS_OP_ZONE_ID - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_DEPTH - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_MAXCHILD - 1762)) | (1 << (PlSqlParser.SYS_ORDERKEY_PARENT - 1762)) | (1 << (PlSqlParser.SYS_PARALLEL_TXN - 1762)) | (1 << (PlSqlParser.SYS_PATHID_IS_ATTR - 1762)) | (1 << (PlSqlParser.SYS_PATHID_IS_NMSPC - 1762)) | (1 << (PlSqlParser.SYS_PATHID_LASTNAME - 1762)) | (1 << (PlSqlParser.SYS_PATHID_LASTNMSPC - 1762)) | (1 << (PlSqlParser.SYS_PATH_REVERSE - 1762)) | (1 << (PlSqlParser.SYS_PXQEXTRACT - 1762)) | (1 << (PlSqlParser.SYS_RAW_TO_XSID - 1762)) | (1 << (PlSqlParser.SYS_RID_ORDER - 1762)) | (1 << (PlSqlParser.SYS_ROW_DELTA - 1762)) | (1 << (PlSqlParser.SYS_SC_2_XMLT - 1762)) | (1 << (PlSqlParser.SYS_SYNRCIREDO - 1762)) | (1 << (PlSqlParser.SYSTEM_DEFINED - 1762)) | (1 << (PlSqlParser.SYSTEM - 1762)) | (1 << (PlSqlParser.SYSTIMESTAMP - 1762)) | (1 << (PlSqlParser.SYS_TYPEID - 1762)) | (1 << (PlSqlParser.SYS_UMAKEXML - 1762)) | (1 << (PlSqlParser.SYS_XMLANALYZE - 1762)) | (1 << (PlSqlParser.SYS_XMLCONTAINS - 1762)) | (1 << (PlSqlParser.SYS_XMLCONV - 1762)) | (1 << (PlSqlParser.SYS_XMLEXNSURI - 1762)) | (1 << (PlSqlParser.SYS_XMLGEN - 1762)) | (1 << (PlSqlParser.SYS_XMLI_LOC_ISNODE - 1762)) | (1 << (PlSqlParser.SYS_XMLI_LOC_ISTEXT - 1762)) | (1 << (PlSqlParser.SYS_XMLINSTR - 1762)) | (1 << (PlSqlParser.SYS_XMLLOCATOR_GETSVAL - 1762)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETCID - 1762)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETLOCATOR - 1762)))) !== 0) || ((((_la - 1794)) & ~0x1f) == 0 && ((1 << (_la - 1794)) & ((1 << (PlSqlParser.SYS_XMLNODEID_GETOKEY - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETPATHID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETPTRID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETRID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETSVAL - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID_GETTID - 1794)) | (1 << (PlSqlParser.SYS_XMLNODEID - 1794)) | (1 << (PlSqlParser.SYS_XMLT_2_SC - 1794)) | (1 << (PlSqlParser.SYS_XMLTRANSLATE - 1794)) | (1 << (PlSqlParser.SYS_XMLTYPE2SQL - 1794)) | (1 << (PlSqlParser.SYS_XQ_ASQLCNV - 1794)) | (1 << (PlSqlParser.SYS_XQ_ATOMCNVCHK - 1794)) | (1 << (PlSqlParser.SYS_XQBASEURI - 1794)) | (1 << (PlSqlParser.SYS_XQCASTABLEERRH - 1794)) | (1 << (PlSqlParser.SYS_XQCODEP2STR - 1794)) | (1 << (PlSqlParser.SYS_XQCODEPEQ - 1794)) | (1 << (PlSqlParser.SYS_XQCON2SEQ - 1794)) | (1 << (PlSqlParser.SYS_XQCONCAT - 1794)) | (1 << (PlSqlParser.SYS_XQDELETE - 1794)) | (1 << (PlSqlParser.SYS_XQDFLTCOLATION - 1794)) | (1 << (PlSqlParser.SYS_XQDOC - 1794)) | (1 << (PlSqlParser.SYS_XQDOCURI - 1794)) | (1 << (PlSqlParser.SYS_XQDURDIV - 1794)) | (1 << (PlSqlParser.SYS_XQED4URI - 1794)) | (1 << (PlSqlParser.SYS_XQENDSWITH - 1794)) | (1 << (PlSqlParser.SYS_XQERRH - 1794)) | (1 << (PlSqlParser.SYS_XQERR - 1794)) | (1 << (PlSqlParser.SYS_XQESHTMLURI - 1794)) | (1 << (PlSqlParser.SYS_XQEXLOBVAL - 1794)) | (1 << (PlSqlParser.SYS_XQEXSTWRP - 1794)) | (1 << (PlSqlParser.SYS_XQEXTRACT - 1794)) | (1 << (PlSqlParser.SYS_XQEXTRREF - 1794)))) !== 0) || ((((_la - 1826)) & ~0x1f) == 0 && ((1 << (_la - 1826)) & ((1 << (PlSqlParser.SYS_XQEXVAL - 1826)) | (1 << (PlSqlParser.SYS_XQFB2STR - 1826)) | (1 << (PlSqlParser.SYS_XQFNBOOL - 1826)) | (1 << (PlSqlParser.SYS_XQFNCMP - 1826)) | (1 << (PlSqlParser.SYS_XQFNDATIM - 1826)) | (1 << (PlSqlParser.SYS_XQFNLNAME - 1826)) | (1 << (PlSqlParser.SYS_XQFNNM - 1826)) | (1 << (PlSqlParser.SYS_XQFNNSURI - 1826)) | (1 << (PlSqlParser.SYS_XQFNPREDTRUTH - 1826)) | (1 << (PlSqlParser.SYS_XQFNQNM - 1826)) | (1 << (PlSqlParser.SYS_XQFNROOT - 1826)) | (1 << (PlSqlParser.SYS_XQFORMATNUM - 1826)) | (1 << (PlSqlParser.SYS_XQFTCONTAIN - 1826)) | (1 << (PlSqlParser.SYS_XQFUNCR - 1826)) | (1 << (PlSqlParser.SYS_XQGETCONTENT - 1826)) | (1 << (PlSqlParser.SYS_XQINDXOF - 1826)) | (1 << (PlSqlParser.SYS_XQINSERT - 1826)) | (1 << (PlSqlParser.SYS_XQINSPFX - 1826)) | (1 << (PlSqlParser.SYS_XQIRI2URI - 1826)) | (1 << (PlSqlParser.SYS_XQLANG - 1826)) | (1 << (PlSqlParser.SYS_XQLLNMFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQMKNODEREF - 1826)) | (1 << (PlSqlParser.SYS_XQNILLED - 1826)) | (1 << (PlSqlParser.SYS_XQNODENAME - 1826)) | (1 << (PlSqlParser.SYS_XQNORMSPACE - 1826)) | (1 << (PlSqlParser.SYS_XQNORMUCODE - 1826)) | (1 << (PlSqlParser.SYS_XQ_NRNG - 1826)) | (1 << (PlSqlParser.SYS_XQNSP4PFX - 1826)) | (1 << (PlSqlParser.SYS_XQNSPFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQPFXFRMQNM - 1826)) | (1 << (PlSqlParser.SYS_XQ_PKSQL2XML - 1826)) | (1 << (PlSqlParser.SYS_XQPOLYABS - 1826)))) !== 0) || ((((_la - 1858)) & ~0x1f) == 0 && ((1 << (_la - 1858)) & ((1 << (PlSqlParser.SYS_XQPOLYADD - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCEL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCSTBL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYCST - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYDIV - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYFLR - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYMOD - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYMUL - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYRND - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYSQRT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYSUB - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYUMUS - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYUPLS - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVEQ - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVGE - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVGT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVLE - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVLT - 1858)) | (1 << (PlSqlParser.SYS_XQPOLYVNE - 1858)) | (1 << (PlSqlParser.SYS_XQREF2VAL - 1858)) | (1 << (PlSqlParser.SYS_XQRENAME - 1858)) | (1 << (PlSqlParser.SYS_XQREPLACE - 1858)) | (1 << (PlSqlParser.SYS_XQRESVURI - 1858)) | (1 << (PlSqlParser.SYS_XQRNDHALF2EVN - 1858)) | (1 << (PlSqlParser.SYS_XQRSLVQNM - 1858)) | (1 << (PlSqlParser.SYS_XQRYENVPGET - 1858)) | (1 << (PlSqlParser.SYS_XQRYVARGET - 1858)) | (1 << (PlSqlParser.SYS_XQRYWRP - 1858)) | (1 << (PlSqlParser.SYS_XQSEQ2CON4XC - 1858)) | (1 << (PlSqlParser.SYS_XQSEQ2CON - 1858)) | (1 << (PlSqlParser.SYS_XQSEQDEEPEQ - 1858)) | (1 << (PlSqlParser.SYS_XQSEQINSB - 1858)))) !== 0) || ((((_la - 1890)) & ~0x1f) == 0 && ((1 << (_la - 1890)) & ((1 << (PlSqlParser.SYS_XQSEQRM - 1890)) | (1 << (PlSqlParser.SYS_XQSEQRVS - 1890)) | (1 << (PlSqlParser.SYS_XQSEQSUB - 1890)) | (1 << (PlSqlParser.SYS_XQSEQTYPMATCH - 1890)) | (1 << (PlSqlParser.SYS_XQSTARTSWITH - 1890)) | (1 << (PlSqlParser.SYS_XQSTATBURI - 1890)) | (1 << (PlSqlParser.SYS_XQSTR2CODEP - 1890)) | (1 << (PlSqlParser.SYS_XQSTRJOIN - 1890)) | (1 << (PlSqlParser.SYS_XQSUBSTRAFT - 1890)) | (1 << (PlSqlParser.SYS_XQSUBSTRBEF - 1890)) | (1 << (PlSqlParser.SYS_XQTOKENIZE - 1890)) | (1 << (PlSqlParser.SYS_XQTREATAS - 1890)) | (1 << (PlSqlParser.SYS_XQ_UPKXML2SQL - 1890)) | (1 << (PlSqlParser.SYS_XQXFORM - 1890)) | (1 << (PlSqlParser.SYS_XSID_TO_RAW - 1890)) | (1 << (PlSqlParser.SYS_ZMAP_FILTER - 1890)) | (1 << (PlSqlParser.SYS_ZMAP_REFRESH - 1890)) | (1 << (PlSqlParser.TABLE_LOOKUP_BY_NL - 1890)) | (1 << (PlSqlParser.TABLESPACE_NO - 1890)) | (1 << (PlSqlParser.TABLESPACE - 1890)) | (1 << (PlSqlParser.TABLES - 1890)) | (1 << (PlSqlParser.TABLE_STATS - 1890)) | (1 << (PlSqlParser.TABLE - 1890)) | (1 << (PlSqlParser.TABNO - 1890)) | (1 << (PlSqlParser.TAG - 1890)) | (1 << (PlSqlParser.TANH - 1890)) | (1 << (PlSqlParser.TAN - 1890)) | (1 << (PlSqlParser.TBLORIDXPARTNUM - 1890)) | (1 << (PlSqlParser.TEMPFILE - 1890)) | (1 << (PlSqlParser.TEMPLATE - 1890)) | (1 << (PlSqlParser.TEMPORARY - 1890)) | (1 << (PlSqlParser.TEMP_TABLE - 1890)))) !== 0) || ((((_la - 1922)) & ~0x1f) == 0 && ((1 << (_la - 1922)) & ((1 << (PlSqlParser.TEST - 1922)) | (1 << (PlSqlParser.TEXT - 1922)) | (1 << (PlSqlParser.THAN - 1922)) | (1 << (PlSqlParser.THEN - 1922)) | (1 << (PlSqlParser.THE - 1922)) | (1 << (PlSqlParser.THREAD - 1922)) | (1 << (PlSqlParser.THROUGH - 1922)) | (1 << (PlSqlParser.TIER - 1922)) | (1 << (PlSqlParser.TIES - 1922)) | (1 << (PlSqlParser.TIMEOUT - 1922)) | (1 << (PlSqlParser.TIMESTAMP_LTZ_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMESTAMP - 1922)) | (1 << (PlSqlParser.TIMESTAMP_TZ_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMESTAMP_UNCONSTRAINED - 1922)) | (1 << (PlSqlParser.TIMES - 1922)) | (1 << (PlSqlParser.TIME - 1922)) | (1 << (PlSqlParser.TIMEZONE_ABBR - 1922)) | (1 << (PlSqlParser.TIMEZONE_HOUR - 1922)) | (1 << (PlSqlParser.TIMEZONE_MINUTE - 1922)) | (1 << (PlSqlParser.TIMEZONE_OFFSET - 1922)) | (1 << (PlSqlParser.TIMEZONE_REGION - 1922)) | (1 << (PlSqlParser.TIME_ZONE - 1922)) | (1 << (PlSqlParser.TIV_GB - 1922)) | (1 << (PlSqlParser.TIV_SSF - 1922)) | (1 << (PlSqlParser.TO_ACLID - 1922)) | (1 << (PlSqlParser.TO_BINARY_DOUBLE - 1922)) | (1 << (PlSqlParser.TO_BINARY_FLOAT - 1922)) | (1 << (PlSqlParser.TO_BLOB - 1922)) | (1 << (PlSqlParser.TO_CLOB - 1922)) | (1 << (PlSqlParser.TO_DSINTERVAL - 1922)) | (1 << (PlSqlParser.TO_LOB - 1922)))) !== 0) || ((((_la - 1954)) & ~0x1f) == 0 && ((1 << (_la - 1954)) & ((1 << (PlSqlParser.TO_MULTI_BYTE - 1954)) | (1 << (PlSqlParser.TO_NCHAR - 1954)) | (1 << (PlSqlParser.TO_NCLOB - 1954)) | (1 << (PlSqlParser.TO_NUMBER - 1954)) | (1 << (PlSqlParser.TOPLEVEL - 1954)) | (1 << (PlSqlParser.TO_SINGLE_BYTE - 1954)) | (1 << (PlSqlParser.TO_TIMESTAMP - 1954)) | (1 << (PlSqlParser.TO_TIMESTAMP_TZ - 1954)) | (1 << (PlSqlParser.TO_TIME - 1954)) | (1 << (PlSqlParser.TO_TIME_TZ - 1954)) | (1 << (PlSqlParser.TO_YMINTERVAL - 1954)) | (1 << (PlSqlParser.TRACE - 1954)) | (1 << (PlSqlParser.TRACING - 1954)) | (1 << (PlSqlParser.TRACKING - 1954)) | (1 << (PlSqlParser.TRAILING - 1954)) | (1 << (PlSqlParser.TRANSACTION - 1954)) | (1 << (PlSqlParser.TRANSFORM_DISTINCT_AGG - 1954)) | (1 << (PlSqlParser.TRANSITIONAL - 1954)) | (1 << (PlSqlParser.TRANSITION - 1954)) | (1 << (PlSqlParser.TRANSLATE - 1954)) | (1 << (PlSqlParser.TRANSLATION - 1954)) | (1 << (PlSqlParser.TREAT - 1954)) | (1 << (PlSqlParser.TRIGGERS - 1954)) | (1 << (PlSqlParser.TRIGGER - 1954)) | (1 << (PlSqlParser.TRUE - 1954)) | (1 << (PlSqlParser.TRUNCATE - 1954)) | (1 << (PlSqlParser.TRUNC - 1954)) | (1 << (PlSqlParser.TRUSTED - 1954)) | (1 << (PlSqlParser.TRUST - 1954)) | (1 << (PlSqlParser.TUNING - 1954)) | (1 << (PlSqlParser.TX - 1954)))) !== 0) || ((((_la - 1986)) & ~0x1f) == 0 && ((1 << (_la - 1986)) & ((1 << (PlSqlParser.TYPES - 1986)) | (1 << (PlSqlParser.TYPE - 1986)) | (1 << (PlSqlParser.TZ_OFFSET - 1986)) | (1 << (PlSqlParser.UB2 - 1986)) | (1 << (PlSqlParser.UBA - 1986)) | (1 << (PlSqlParser.UCS2 - 1986)) | (1 << (PlSqlParser.UID - 1986)) | (1 << (PlSqlParser.UNARCHIVED - 1986)) | (1 << (PlSqlParser.UNBOUNDED - 1986)) | (1 << (PlSqlParser.UNBOUND - 1986)) | (1 << (PlSqlParser.UNCONDITIONAL - 1986)) | (1 << (PlSqlParser.UNDER - 1986)) | (1 << (PlSqlParser.UNDO - 1986)) | (1 << (PlSqlParser.UNDROP - 1986)) | (1 << (PlSqlParser.UNIFORM - 1986)) | (1 << (PlSqlParser.UNISTR - 1986)) | (1 << (PlSqlParser.UNLIMITED - 1986)) | (1 << (PlSqlParser.UNLOAD - 1986)) | (1 << (PlSqlParser.UNLOCK - 1986)) | (1 << (PlSqlParser.UNMATCHED - 1986)) | (1 << (PlSqlParser.UNNEST_INNERJ_DISTINCT_VIEW - 1986)) | (1 << (PlSqlParser.UNNEST_NOSEMIJ_NODISTINCTVIEW - 1986)) | (1 << (PlSqlParser.UNNEST_SEMIJ_VIEW - 1986)) | (1 << (PlSqlParser.UNNEST - 1986)) | (1 << (PlSqlParser.UNPACKED - 1986)) | (1 << (PlSqlParser.UNPIVOT - 1986)) | (1 << (PlSqlParser.UNPLUG - 1986)) | (1 << (PlSqlParser.UNPROTECTED - 1986)) | (1 << (PlSqlParser.UNQUIESCE - 1986)) | (1 << (PlSqlParser.UNRECOVERABLE - 1986)))) !== 0) || ((((_la - 2018)) & ~0x1f) == 0 && ((1 << (_la - 2018)) & ((1 << (PlSqlParser.UNRESTRICTED - 2018)) | (1 << (PlSqlParser.UNSUBSCRIBE - 2018)) | (1 << (PlSqlParser.UNTIL - 2018)) | (1 << (PlSqlParser.UNUSABLE - 2018)) | (1 << (PlSqlParser.UNUSED - 2018)) | (1 << (PlSqlParser.UPDATABLE - 2018)) | (1 << (PlSqlParser.UPDATED - 2018)) | (1 << (PlSqlParser.UPDATEXML - 2018)) | (1 << (PlSqlParser.UPD_INDEXES - 2018)) | (1 << (PlSqlParser.UPD_JOININDEX - 2018)) | (1 << (PlSqlParser.UPGRADE - 2018)) | (1 << (PlSqlParser.UPPER - 2018)) | (1 << (PlSqlParser.UPSERT - 2018)) | (1 << (PlSqlParser.UROWID - 2018)) | (1 << (PlSqlParser.USABLE - 2018)) | (1 << (PlSqlParser.USAGE - 2018)) | (1 << (PlSqlParser.USE_ANTI - 2018)) | (1 << (PlSqlParser.USE_CONCAT - 2018)) | (1 << (PlSqlParser.USE_CUBE - 2018)) | (1 << (PlSqlParser.USE_HASH_AGGREGATION - 2018)) | (1 << (PlSqlParser.USE_HASH_GBY_FOR_PUSHDOWN - 2018)) | (1 << (PlSqlParser.USE_HASH - 2018)) | (1 << (PlSqlParser.USE_HIDDEN_PARTITIONS - 2018)) | (1 << (PlSqlParser.USE_INVISIBLE_INDEXES - 2018)) | (1 << (PlSqlParser.USE_MERGE_CARTESIAN - 2018)) | (1 << (PlSqlParser.USE_MERGE - 2018)) | (1 << (PlSqlParser.USE_NL - 2018)) | (1 << (PlSqlParser.USE_NL_WITH_INDEX - 2018)) | (1 << (PlSqlParser.USE_PRIVATE_OUTLINES - 2018)) | (1 << (PlSqlParser.USER_DATA - 2018)) | (1 << (PlSqlParser.USER_DEFINED - 2018)))) !== 0) || ((((_la - 2050)) & ~0x1f) == 0 && ((1 << (_la - 2050)) & ((1 << (PlSqlParser.USERENV - 2050)) | (1 << (PlSqlParser.USERGROUP - 2050)) | (1 << (PlSqlParser.USER_RECYCLEBIN - 2050)) | (1 << (PlSqlParser.USERS - 2050)) | (1 << (PlSqlParser.USER_TABLESPACES - 2050)) | (1 << (PlSqlParser.USER - 2050)) | (1 << (PlSqlParser.USE_SEMI - 2050)) | (1 << (PlSqlParser.USE_STORED_OUTLINES - 2050)) | (1 << (PlSqlParser.USE_TTT_FOR_GSETS - 2050)) | (1 << (PlSqlParser.USE - 2050)) | (1 << (PlSqlParser.USE_VECTOR_AGGREGATION - 2050)) | (1 << (PlSqlParser.USE_WEAK_NAME_RESL - 2050)) | (1 << (PlSqlParser.USING_NO_EXPAND - 2050)) | (1 << (PlSqlParser.USING - 2050)) | (1 << (PlSqlParser.UTF16BE - 2050)) | (1 << (PlSqlParser.UTF16LE - 2050)) | (1 << (PlSqlParser.UTF32 - 2050)) | (1 << (PlSqlParser.UTF8 - 2050)) | (1 << (PlSqlParser.V1 - 2050)) | (1 << (PlSqlParser.V2 - 2050)) | (1 << (PlSqlParser.VALIDATE - 2050)) | (1 << (PlSqlParser.VALIDATION - 2050)) | (1 << (PlSqlParser.VALID_TIME_END - 2050)) | (1 << (PlSqlParser.VALUE - 2050)) | (1 << (PlSqlParser.VARCHAR2 - 2050)) | (1 << (PlSqlParser.VARCHAR - 2050)) | (1 << (PlSqlParser.VARIABLE - 2050)) | (1 << (PlSqlParser.VAR_POP - 2050)) | (1 << (PlSqlParser.VARRAYS - 2050)) | (1 << (PlSqlParser.VARRAY - 2050)) | (1 << (PlSqlParser.VAR_SAMP - 2050)))) !== 0) || ((((_la - 2082)) & ~0x1f) == 0 && ((1 << (_la - 2082)) & ((1 << (PlSqlParser.VARYING - 2082)) | (1 << (PlSqlParser.VECTOR_READ_TRACE - 2082)) | (1 << (PlSqlParser.VECTOR_READ - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM_DIMS - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM_FACT - 2082)) | (1 << (PlSqlParser.VECTOR_TRANSFORM - 2082)) | (1 << (PlSqlParser.VERIFIER - 2082)) | (1 << (PlSqlParser.VERIFY - 2082)) | (1 << (PlSqlParser.VERSIONING - 2082)) | (1 << (PlSqlParser.VERSIONS_ENDSCN - 2082)) | (1 << (PlSqlParser.VERSIONS_ENDTIME - 2082)) | (1 << (PlSqlParser.VERSIONS_OPERATION - 2082)) | (1 << (PlSqlParser.VERSIONS_STARTSCN - 2082)) | (1 << (PlSqlParser.VERSIONS_STARTTIME - 2082)) | (1 << (PlSqlParser.VERSIONS - 2082)) | (1 << (PlSqlParser.VERSIONS_XID - 2082)) | (1 << (PlSqlParser.VERSION - 2082)) | (1 << (PlSqlParser.VIOLATION - 2082)) | (1 << (PlSqlParser.VIRTUAL - 2082)) | (1 << (PlSqlParser.VISIBILITY - 2082)) | (1 << (PlSqlParser.VISIBLE - 2082)) | (1 << (PlSqlParser.VOLUME - 2082)) | (1 << (PlSqlParser.VSIZE - 2082)) | (1 << (PlSqlParser.WAIT - 2082)) | (1 << (PlSqlParser.WALLET - 2082)) | (1 << (PlSqlParser.WARNING - 2082)) | (1 << (PlSqlParser.WEEKS - 2082)) | (1 << (PlSqlParser.WEEK - 2082)) | (1 << (PlSqlParser.WELLFORMED - 2082)) | (1 << (PlSqlParser.WHENEVER - 2082)) | (1 << (PlSqlParser.WHEN - 2082)))) !== 0) || ((((_la - 2115)) & ~0x1f) == 0 && ((1 << (_la - 2115)) & ((1 << (PlSqlParser.WHILE - 2115)) | (1 << (PlSqlParser.WHITESPACE - 2115)) | (1 << (PlSqlParser.WIDTH_BUCKET - 2115)) | (1 << (PlSqlParser.WITHIN - 2115)) | (1 << (PlSqlParser.WITHOUT - 2115)) | (1 << (PlSqlParser.WITH_PLSQL - 2115)) | (1 << (PlSqlParser.WORK - 2115)) | (1 << (PlSqlParser.WRAPPED - 2115)) | (1 << (PlSqlParser.WRAPPER - 2115)) | (1 << (PlSqlParser.WRITE - 2115)) | (1 << (PlSqlParser.XDB_FASTPATH_INSERT - 2115)) | (1 << (PlSqlParser.X_DYN_PRUNE - 2115)) | (1 << (PlSqlParser.XID - 2115)) | (1 << (PlSqlParser.XML2OBJECT - 2115)) | (1 << (PlSqlParser.XMLAGG - 2115)) | (1 << (PlSqlParser.XMLATTRIBUTES - 2115)) | (1 << (PlSqlParser.XMLCAST - 2115)) | (1 << (PlSqlParser.XMLCDATA - 2115)) | (1 << (PlSqlParser.XMLCOLATTVAL - 2115)) | (1 << (PlSqlParser.XMLCOMMENT - 2115)) | (1 << (PlSqlParser.XMLCONCAT - 2115)) | (1 << (PlSqlParser.XMLDIFF - 2115)) | (1 << (PlSqlParser.XML_DML_RWT_STMT - 2115)) | (1 << (PlSqlParser.XMLELEMENT - 2115)) | (1 << (PlSqlParser.XMLEXISTS2 - 2115)) | (1 << (PlSqlParser.XMLEXISTS - 2115)) | (1 << (PlSqlParser.XMLFOREST - 2115)) | (1 << (PlSqlParser.XMLINDEX_REWRITE_IN_SELECT - 2115)) | (1 << (PlSqlParser.XMLINDEX_REWRITE - 2115)))) !== 0) || ((((_la - 2147)) & ~0x1f) == 0 && ((1 << (_la - 2147)) & ((1 << (PlSqlParser.XMLINDEX_SEL_IDX_TBL - 2147)) | (1 << (PlSqlParser.XMLISNODE - 2147)) | (1 << (PlSqlParser.XMLISVALID - 2147)) | (1 << (PlSqlParser.XMLNAMESPACES - 2147)) | (1 << (PlSqlParser.XMLPARSE - 2147)) | (1 << (PlSqlParser.XMLPATCH - 2147)) | (1 << (PlSqlParser.XMLPI - 2147)) | (1 << (PlSqlParser.XMLQUERYVAL - 2147)) | (1 << (PlSqlParser.XMLQUERY - 2147)) | (1 << (PlSqlParser.XMLROOT - 2147)) | (1 << (PlSqlParser.XMLSCHEMA - 2147)) | (1 << (PlSqlParser.XMLSERIALIZE - 2147)) | (1 << (PlSqlParser.XMLTABLE - 2147)) | (1 << (PlSqlParser.XMLTRANSFORMBLOB - 2147)) | (1 << (PlSqlParser.XMLTRANSFORM - 2147)) | (1 << (PlSqlParser.XMLTYPE - 2147)) | (1 << (PlSqlParser.XML - 2147)) | (1 << (PlSqlParser.XPATHTABLE - 2147)) | (1 << (PlSqlParser.XS_SYS_CONTEXT - 2147)) | (1 << (PlSqlParser.XS - 2147)) | (1 << (PlSqlParser.YEARS - 2147)) | (1 << (PlSqlParser.YEAR - 2147)) | (1 << (PlSqlParser.YES - 2147)) | (1 << (PlSqlParser.YMINTERVAL_UNCONSTRAINED - 2147)) | (1 << (PlSqlParser.ZONEMAP - 2147)) | (1 << (PlSqlParser.ZONE - 2147)) | (1 << (PlSqlParser.PREDICTION - 2147)) | (1 << (PlSqlParser.PREDICTION_BOUNDS - 2147)) | (1 << (PlSqlParser.PREDICTION_COST - 2147)) | (1 << (PlSqlParser.PREDICTION_DETAILS - 2147)) | (1 << (PlSqlParser.PREDICTION_PROBABILITY - 2147)))) !== 0) || ((((_la - 2179)) & ~0x1f) == 0 && ((1 << (_la - 2179)) & ((1 << (PlSqlParser.PREDICTION_SET - 2179)) | (1 << (PlSqlParser.CUME_DIST - 2179)) | (1 << (PlSqlParser.DENSE_RANK - 2179)) | (1 << (PlSqlParser.LISTAGG - 2179)) | (1 << (PlSqlParser.PERCENT_RANK - 2179)) | (1 << (PlSqlParser.PERCENTILE_CONT - 2179)) | (1 << (PlSqlParser.PERCENTILE_DISC - 2179)) | (1 << (PlSqlParser.RANK - 2179)) | (1 << (PlSqlParser.AVG - 2179)) | (1 << (PlSqlParser.CORR - 2179)) | (1 << (PlSqlParser.COVAR_ - 2179)) | (1 << (PlSqlParser.LAG - 2179)) | (1 << (PlSqlParser.LEAD - 2179)) | (1 << (PlSqlParser.MAX - 2179)) | (1 << (PlSqlParser.MEDIAN - 2179)) | (1 << (PlSqlParser.MIN - 2179)) | (1 << (PlSqlParser.NTILE - 2179)) | (1 << (PlSqlParser.NVL - 2179)) | (1 << (PlSqlParser.RATIO_TO_REPORT - 2179)) | (1 << (PlSqlParser.REGR_ - 2179)) | (1 << (PlSqlParser.ROUND - 2179)) | (1 << (PlSqlParser.ROW_NUMBER - 2179)) | (1 << (PlSqlParser.SUBSTR - 2179)) | (1 << (PlSqlParser.TO_CHAR - 2179)) | (1 << (PlSqlParser.TRIM - 2179)) | (1 << (PlSqlParser.SUM - 2179)) | (1 << (PlSqlParser.STDDEV - 2179)) | (1 << (PlSqlParser.VAR_ - 2179)) | (1 << (PlSqlParser.VARIANCE - 2179)) | (1 << (PlSqlParser.LEAST - 2179)) | (1 << (PlSqlParser.GREATEST - 2179)))) !== 0) || _la===PlSqlParser.TO_DATE || _la===PlSqlParser.PERIOD || _la===PlSqlParser.REGULAR_ID) {
+ this.state = 6110;
+ this.subpartition_name();
+ }
+
+ this.state = 6113;
+ this.list_values_clause();
+ this.state = 6115;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.COMPRESS || _la===PlSqlParser.LOB || _la===PlSqlParser.NOCOMPRESS || _la===PlSqlParser.OVERFLOW || _la===PlSqlParser.TABLESPACE || _la===PlSqlParser.VARRAY) {
+ this.state = 6114;
+ this.partitioning_storage_clause();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Individual_hash_subpartsContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_individual_hash_subparts;
+ return this;
+}
+
+Individual_hash_subpartsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Individual_hash_subpartsContext.prototype.constructor = Individual_hash_subpartsContext;
+
+Individual_hash_subpartsContext.prototype.SUBPARTITION = function() {
+ return this.getToken(PlSqlParser.SUBPARTITION, 0);
+};
+
+Individual_hash_subpartsContext.prototype.subpartition_name = function() {
+ return this.getTypedRuleContext(Subpartition_nameContext,0);
+};
+
+Individual_hash_subpartsContext.prototype.partitioning_storage_clause = function() {
+ return this.getTypedRuleContext(Partitioning_storage_clauseContext,0);
+};
+
+Individual_hash_subpartsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterIndividual_hash_subparts(this);
+ }
+};
+
+Individual_hash_subpartsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitIndividual_hash_subparts(this);
+ }
+};
+
+Individual_hash_subpartsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitIndividual_hash_subparts(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Individual_hash_subpartsContext = Individual_hash_subpartsContext;
+
+PlSqlParser.prototype.individual_hash_subparts = function() {
+
+ var localctx = new Individual_hash_subpartsContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 590, PlSqlParser.RULE_individual_hash_subparts);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6117;
+ this.match(PlSqlParser.SUBPARTITION);
+ this.state = 6119;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,707,this._ctx);
+ if(la_===1) {
+ this.state = 6118;
+ this.subpartition_name();
+
+ }
+ this.state = 6122;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.COMPRESS || _la===PlSqlParser.LOB || _la===PlSqlParser.NOCOMPRESS || _la===PlSqlParser.OVERFLOW || _la===PlSqlParser.TABLESPACE || _la===PlSqlParser.VARRAY) {
+ this.state = 6121;
+ this.partitioning_storage_clause();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Hash_subparts_by_quantityContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_hash_subparts_by_quantity;
+ return this;
+}
+
+Hash_subparts_by_quantityContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Hash_subparts_by_quantityContext.prototype.constructor = Hash_subparts_by_quantityContext;
+
+Hash_subparts_by_quantityContext.prototype.SUBPARTITIONS = function() {
+ return this.getToken(PlSqlParser.SUBPARTITIONS, 0);
+};
+
+Hash_subparts_by_quantityContext.prototype.UNSIGNED_INTEGER = function() {
+ return this.getToken(PlSqlParser.UNSIGNED_INTEGER, 0);
+};
+
+Hash_subparts_by_quantityContext.prototype.STORE = function() {
+ return this.getToken(PlSqlParser.STORE, 0);
+};
+
+Hash_subparts_by_quantityContext.prototype.IN = function() {
+ return this.getToken(PlSqlParser.IN, 0);
+};
+
+Hash_subparts_by_quantityContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Hash_subparts_by_quantityContext.prototype.tablespace = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(TablespaceContext);
+ } else {
+ return this.getTypedRuleContext(TablespaceContext,i);
+ }
+};
+
+Hash_subparts_by_quantityContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Hash_subparts_by_quantityContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Hash_subparts_by_quantityContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterHash_subparts_by_quantity(this);
+ }
+};
+
+Hash_subparts_by_quantityContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitHash_subparts_by_quantity(this);
+ }
+};
+
+Hash_subparts_by_quantityContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitHash_subparts_by_quantity(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Hash_subparts_by_quantityContext = Hash_subparts_by_quantityContext;
+
+PlSqlParser.prototype.hash_subparts_by_quantity = function() {
+
+ var localctx = new Hash_subparts_by_quantityContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 592, PlSqlParser.RULE_hash_subparts_by_quantity);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6124;
+ this.match(PlSqlParser.SUBPARTITIONS);
+ this.state = 6125;
+ this.match(PlSqlParser.UNSIGNED_INTEGER);
+ this.state = 6139;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.STORE) {
+ this.state = 6126;
+ this.match(PlSqlParser.STORE);
+ this.state = 6127;
+ this.match(PlSqlParser.IN);
+ this.state = 6128;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 6129;
+ this.tablespace();
+ this.state = 6134;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 6130;
+ this.match(PlSqlParser.COMMA);
+ this.state = 6131;
+ this.tablespace();
+ this.state = 6136;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 6137;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Range_values_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_range_values_clause;
+ return this;
+}
+
+Range_values_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Range_values_clauseContext.prototype.constructor = Range_values_clauseContext;
+
+Range_values_clauseContext.prototype.VALUES = function() {
+ return this.getToken(PlSqlParser.VALUES, 0);
+};
+
+Range_values_clauseContext.prototype.LESS = function() {
+ return this.getToken(PlSqlParser.LESS, 0);
+};
+
+Range_values_clauseContext.prototype.THAN = function() {
+ return this.getToken(PlSqlParser.THAN, 0);
+};
+
+Range_values_clauseContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Range_values_clauseContext.prototype.literal = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(LiteralContext);
+ } else {
+ return this.getTypedRuleContext(LiteralContext,i);
+ }
+};
+
+Range_values_clauseContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Range_values_clauseContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Range_values_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterRange_values_clause(this);
+ }
+};
+
+Range_values_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitRange_values_clause(this);
+ }
+};
+
+Range_values_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitRange_values_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Range_values_clauseContext = Range_values_clauseContext;
+
+PlSqlParser.prototype.range_values_clause = function() {
+
+ var localctx = new Range_values_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 594, PlSqlParser.RULE_range_values_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6141;
+ this.match(PlSqlParser.VALUES);
+ this.state = 6142;
+ this.match(PlSqlParser.LESS);
+ this.state = 6143;
+ this.match(PlSqlParser.THAN);
+ this.state = 6144;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 6145;
+ this.literal();
+ this.state = 6150;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 6146;
+ this.match(PlSqlParser.COMMA);
+ this.state = 6147;
+ this.literal();
+ this.state = 6152;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 6153;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function List_values_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_list_values_clause;
+ return this;
+}
+
+List_values_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+List_values_clauseContext.prototype.constructor = List_values_clauseContext;
+
+List_values_clauseContext.prototype.VALUES = function() {
+ return this.getToken(PlSqlParser.VALUES, 0);
+};
+
+List_values_clauseContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+List_values_clauseContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+List_values_clauseContext.prototype.literal = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(LiteralContext);
+ } else {
+ return this.getTypedRuleContext(LiteralContext,i);
+ }
+};
+
+List_values_clauseContext.prototype.DEFAULT = function() {
+ return this.getToken(PlSqlParser.DEFAULT, 0);
+};
+
+List_values_clauseContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+List_values_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterList_values_clause(this);
+ }
+};
+
+List_values_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitList_values_clause(this);
+ }
+};
+
+List_values_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitList_values_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.List_values_clauseContext = List_values_clauseContext;
+
+PlSqlParser.prototype.list_values_clause = function() {
+
+ var localctx = new List_values_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 596, PlSqlParser.RULE_list_values_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6155;
+ this.match(PlSqlParser.VALUES);
+ this.state = 6156;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 6166;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.CHR:
+ case PlSqlParser.MAXVALUE:
+ case PlSqlParser.DECODE:
+ case PlSqlParser.NVL:
+ case PlSqlParser.SUBSTR:
+ case PlSqlParser.TO_CHAR:
+ case PlSqlParser.TRIM:
+ case PlSqlParser.TO_DATE:
+ case PlSqlParser.UNSIGNED_INTEGER:
+ case PlSqlParser.APPROXIMATE_NUM_LIT:
+ case PlSqlParser.CHAR_STRING:
+ this.state = 6157;
+ this.literal();
+ this.state = 6162;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 6158;
+ this.match(PlSqlParser.COMMA);
+ this.state = 6159;
+ this.literal();
+ this.state = 6164;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+ case PlSqlParser.DEFAULT:
+ this.state = 6165;
+ this.match(PlSqlParser.DEFAULT);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 6168;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Table_partition_descriptionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_table_partition_description;
+ return this;
+}
+
+Table_partition_descriptionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Table_partition_descriptionContext.prototype.constructor = Table_partition_descriptionContext;
+
+Table_partition_descriptionContext.prototype.deferred_segment_creation = function() {
+ return this.getTypedRuleContext(Deferred_segment_creationContext,0);
+};
+
+Table_partition_descriptionContext.prototype.segment_attributes_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Segment_attributes_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Segment_attributes_clauseContext,i);
+ }
+};
+
+Table_partition_descriptionContext.prototype.table_compression = function() {
+ return this.getTypedRuleContext(Table_compressionContext,0);
+};
+
+Table_partition_descriptionContext.prototype.key_compression = function() {
+ return this.getTypedRuleContext(Key_compressionContext,0);
+};
+
+Table_partition_descriptionContext.prototype.OVERFLOW = function() {
+ return this.getToken(PlSqlParser.OVERFLOW, 0);
+};
+
+Table_partition_descriptionContext.prototype.lob_storage_clause = function() {
+ return this.getTypedRuleContext(Lob_storage_clauseContext,0);
+};
+
+Table_partition_descriptionContext.prototype.varray_col_properties = function() {
+ return this.getTypedRuleContext(Varray_col_propertiesContext,0);
+};
+
+Table_partition_descriptionContext.prototype.nested_table_col_properties = function() {
+ return this.getTypedRuleContext(Nested_table_col_propertiesContext,0);
+};
+
+Table_partition_descriptionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterTable_partition_description(this);
+ }
+};
+
+Table_partition_descriptionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitTable_partition_description(this);
+ }
+};
+
+Table_partition_descriptionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitTable_partition_description(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Table_partition_descriptionContext = Table_partition_descriptionContext;
+
+PlSqlParser.prototype.table_partition_description = function() {
+
+ var localctx = new Table_partition_descriptionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 598, PlSqlParser.RULE_table_partition_description);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6171;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.SEGMENT) {
+ this.state = 6170;
+ this.deferred_segment_creation();
+ }
+
+ this.state = 6174;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.FILESYSTEM_LIKE_LOGGING || _la===PlSqlParser.INITRANS || _la===PlSqlParser.LOGGING || _la===PlSqlParser.NOLOGGING || _la===PlSqlParser.PCTFREE || _la===PlSqlParser.PCTUSED || _la===PlSqlParser.STORAGE || _la===PlSqlParser.TABLESPACE) {
+ this.state = 6173;
+ this.segment_attributes_clause();
+ }
+
+ this.state = 6178;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,716,this._ctx);
+ if(la_===1) {
+ this.state = 6176;
+ this.table_compression();
+
+ } else if(la_===2) {
+ this.state = 6177;
+ this.key_compression();
+
+ }
+ this.state = 6184;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.OVERFLOW) {
+ this.state = 6180;
+ this.match(PlSqlParser.OVERFLOW);
+ this.state = 6182;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.FILESYSTEM_LIKE_LOGGING || _la===PlSqlParser.INITRANS || _la===PlSqlParser.LOGGING || _la===PlSqlParser.NOLOGGING || _la===PlSqlParser.PCTFREE || _la===PlSqlParser.PCTUSED || _la===PlSqlParser.STORAGE || _la===PlSqlParser.TABLESPACE) {
+ this.state = 6181;
+ this.segment_attributes_clause();
+ }
+
+ }
+
+ this.state = 6189;
+ this._errHandler.sync(this);
+ switch (this._input.LA(1)) {
+ case PlSqlParser.LOB:
+ this.state = 6186;
+ this.lob_storage_clause();
+ break;
+ case PlSqlParser.VARRAY:
+ this.state = 6187;
+ this.varray_col_properties();
+ break;
+ case PlSqlParser.NESTED:
+ this.state = 6188;
+ this.nested_table_col_properties();
+ break;
+ case PlSqlParser.AS:
+ case PlSqlParser.CACHE:
+ case PlSqlParser.DISABLE:
+ case PlSqlParser.ENABLE:
+ case PlSqlParser.FLASHBACK:
+ case PlSqlParser.NOCACHE:
+ case PlSqlParser.NO:
+ case PlSqlParser.NOPARALLEL:
+ case PlSqlParser.NOROWDEPENDENCIES:
+ case PlSqlParser.PARALLEL:
+ case PlSqlParser.RESULT_CACHE:
+ case PlSqlParser.ROWDEPENDENCIES:
+ case PlSqlParser.ROW:
+ case PlSqlParser.SUBPARTITIONS:
+ case PlSqlParser.LEFT_PAREN:
+ case PlSqlParser.RIGHT_PAREN:
+ case PlSqlParser.COMMA:
+ case PlSqlParser.SEMICOLON:
+ break;
+ default:
+ break;
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Partitioning_storage_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_partitioning_storage_clause;
+ return this;
+}
+
+Partitioning_storage_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Partitioning_storage_clauseContext.prototype.constructor = Partitioning_storage_clauseContext;
+
+Partitioning_storage_clauseContext.prototype.TABLESPACE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.TABLESPACE);
+ } else {
+ return this.getToken(PlSqlParser.TABLESPACE, i);
+ }
+};
+
+
+Partitioning_storage_clauseContext.prototype.tablespace = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(TablespaceContext);
+ } else {
+ return this.getTypedRuleContext(TablespaceContext,i);
+ }
+};
+
+Partitioning_storage_clauseContext.prototype.OVERFLOW = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.OVERFLOW);
+ } else {
+ return this.getToken(PlSqlParser.OVERFLOW, i);
+ }
+};
+
+
+Partitioning_storage_clauseContext.prototype.table_compression = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Table_compressionContext);
+ } else {
+ return this.getTypedRuleContext(Table_compressionContext,i);
+ }
+};
+
+Partitioning_storage_clauseContext.prototype.key_compression = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Key_compressionContext);
+ } else {
+ return this.getTypedRuleContext(Key_compressionContext,i);
+ }
+};
+
+Partitioning_storage_clauseContext.prototype.lob_partitioning_storage = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Lob_partitioning_storageContext);
+ } else {
+ return this.getTypedRuleContext(Lob_partitioning_storageContext,i);
+ }
+};
+
+Partitioning_storage_clauseContext.prototype.VARRAY = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.VARRAY);
+ } else {
+ return this.getToken(PlSqlParser.VARRAY, i);
+ }
+};
+
+
+Partitioning_storage_clauseContext.prototype.varray_item = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Varray_itemContext);
+ } else {
+ return this.getTypedRuleContext(Varray_itemContext,i);
+ }
+};
+
+Partitioning_storage_clauseContext.prototype.STORE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.STORE);
+ } else {
+ return this.getToken(PlSqlParser.STORE, i);
+ }
+};
+
+
+Partitioning_storage_clauseContext.prototype.AS = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.AS);
+ } else {
+ return this.getToken(PlSqlParser.AS, i);
+ }
+};
+
+
+Partitioning_storage_clauseContext.prototype.LOB = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.LOB);
+ } else {
+ return this.getToken(PlSqlParser.LOB, i);
+ }
+};
+
+
+Partitioning_storage_clauseContext.prototype.lob_segname = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Lob_segnameContext);
+ } else {
+ return this.getTypedRuleContext(Lob_segnameContext,i);
+ }
+};
+
+Partitioning_storage_clauseContext.prototype.BASICFILE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.BASICFILE);
+ } else {
+ return this.getToken(PlSqlParser.BASICFILE, i);
+ }
+};
+
+
+Partitioning_storage_clauseContext.prototype.SECUREFILE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.SECUREFILE);
+ } else {
+ return this.getToken(PlSqlParser.SECUREFILE, i);
+ }
+};
+
+
+Partitioning_storage_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterPartitioning_storage_clause(this);
+ }
+};
+
+Partitioning_storage_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitPartitioning_storage_clause(this);
+ }
+};
+
+Partitioning_storage_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitPartitioning_storage_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Partitioning_storage_clauseContext = Partitioning_storage_clauseContext;
+
+PlSqlParser.prototype.partitioning_storage_clause = function() {
+
+ var localctx = new Partitioning_storage_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 600, PlSqlParser.RULE_partitioning_storage_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6211;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 6211;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,722,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 6191;
+ this.match(PlSqlParser.TABLESPACE);
+ this.state = 6192;
+ this.tablespace();
+ break;
+
+ case 2:
+ this.state = 6193;
+ this.match(PlSqlParser.OVERFLOW);
+ this.state = 6196;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,720,this._ctx);
+ if(la_===1) {
+ this.state = 6194;
+ this.match(PlSqlParser.TABLESPACE);
+ this.state = 6195;
+ this.tablespace();
+
+ }
+ break;
+
+ case 3:
+ this.state = 6198;
+ this.table_compression();
+ break;
+
+ case 4:
+ this.state = 6199;
+ this.key_compression();
+ break;
+
+ case 5:
+ this.state = 6200;
+ this.lob_partitioning_storage();
+ break;
+
+ case 6:
+ this.state = 6201;
+ this.match(PlSqlParser.VARRAY);
+ this.state = 6202;
+ this.varray_item();
+ this.state = 6203;
+ this.match(PlSqlParser.STORE);
+ this.state = 6204;
+ this.match(PlSqlParser.AS);
+ this.state = 6206;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.BASICFILE || _la===PlSqlParser.SECUREFILE) {
+ this.state = 6205;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.BASICFILE || _la===PlSqlParser.SECUREFILE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 6208;
+ this.match(PlSqlParser.LOB);
+ this.state = 6209;
+ this.lob_segname();
+ break;
+
+ }
+ this.state = 6213;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(_la===PlSqlParser.COMPRESS || _la===PlSqlParser.LOB || _la===PlSqlParser.NOCOMPRESS || _la===PlSqlParser.OVERFLOW || _la===PlSqlParser.TABLESPACE || _la===PlSqlParser.VARRAY);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Lob_partitioning_storageContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_lob_partitioning_storage;
+ return this;
+}
+
+Lob_partitioning_storageContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Lob_partitioning_storageContext.prototype.constructor = Lob_partitioning_storageContext;
+
+Lob_partitioning_storageContext.prototype.LOB = function() {
+ return this.getToken(PlSqlParser.LOB, 0);
+};
+
+Lob_partitioning_storageContext.prototype.LEFT_PAREN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.LEFT_PAREN);
+ } else {
+ return this.getToken(PlSqlParser.LEFT_PAREN, i);
+ }
+};
+
+
+Lob_partitioning_storageContext.prototype.lob_item = function() {
+ return this.getTypedRuleContext(Lob_itemContext,0);
+};
+
+Lob_partitioning_storageContext.prototype.RIGHT_PAREN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.RIGHT_PAREN);
+ } else {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, i);
+ }
+};
+
+
+Lob_partitioning_storageContext.prototype.STORE = function() {
+ return this.getToken(PlSqlParser.STORE, 0);
+};
+
+Lob_partitioning_storageContext.prototype.AS = function() {
+ return this.getToken(PlSqlParser.AS, 0);
+};
+
+Lob_partitioning_storageContext.prototype.lob_segname = function() {
+ return this.getTypedRuleContext(Lob_segnameContext,0);
+};
+
+Lob_partitioning_storageContext.prototype.TABLESPACE = function() {
+ return this.getToken(PlSqlParser.TABLESPACE, 0);
+};
+
+Lob_partitioning_storageContext.prototype.tablespace = function() {
+ return this.getTypedRuleContext(TablespaceContext,0);
+};
+
+Lob_partitioning_storageContext.prototype.BASICFILE = function() {
+ return this.getToken(PlSqlParser.BASICFILE, 0);
+};
+
+Lob_partitioning_storageContext.prototype.SECUREFILE = function() {
+ return this.getToken(PlSqlParser.SECUREFILE, 0);
+};
+
+Lob_partitioning_storageContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterLob_partitioning_storage(this);
+ }
+};
+
+Lob_partitioning_storageContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitLob_partitioning_storage(this);
+ }
+};
+
+Lob_partitioning_storageContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitLob_partitioning_storage(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Lob_partitioning_storageContext = Lob_partitioning_storageContext;
+
+PlSqlParser.prototype.lob_partitioning_storage = function() {
+
+ var localctx = new Lob_partitioning_storageContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 602, PlSqlParser.RULE_lob_partitioning_storage);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6215;
+ this.match(PlSqlParser.LOB);
+ this.state = 6216;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 6217;
+ this.lob_item();
+ this.state = 6218;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ this.state = 6219;
+ this.match(PlSqlParser.STORE);
+ this.state = 6220;
+ this.match(PlSqlParser.AS);
+ this.state = 6222;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,724,this._ctx);
+ if(la_===1) {
+ this.state = 6221;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.BASICFILE || _la===PlSqlParser.SECUREFILE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+
+ }
+ this.state = 6237;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.ABORT:
+ case PlSqlParser.ABS:
+ case PlSqlParser.ACCESS:
+ case PlSqlParser.ACCESSED:
+ case PlSqlParser.ACCOUNT:
+ case PlSqlParser.ACL:
+ case PlSqlParser.ACOS:
+ case PlSqlParser.ACTION:
+ case PlSqlParser.ACTIONS:
+ case PlSqlParser.ACTIVATE:
+ case PlSqlParser.ACTIVE:
+ case PlSqlParser.ACTIVE_COMPONENT:
+ case PlSqlParser.ACTIVE_DATA:
+ case PlSqlParser.ACTIVE_FUNCTION:
+ case PlSqlParser.ACTIVE_TAG:
+ case PlSqlParser.ACTIVITY:
+ case PlSqlParser.ADAPTIVE_PLAN:
+ case PlSqlParser.ADD:
+ case PlSqlParser.ADD_COLUMN:
+ case PlSqlParser.ADD_GROUP:
+ case PlSqlParser.ADD_MONTHS:
+ case PlSqlParser.ADJ_DATE:
+ case PlSqlParser.ADMIN:
+ case PlSqlParser.ADMINISTER:
+ case PlSqlParser.ADMINISTRATOR:
+ case PlSqlParser.ADVANCED:
+ case PlSqlParser.ADVISE:
+ case PlSqlParser.ADVISOR:
+ case PlSqlParser.AFD_DISKSTRING:
+ case PlSqlParser.AFTER:
+ case PlSqlParser.AGENT:
+ case PlSqlParser.AGGREGATE:
+ case PlSqlParser.A_LETTER:
+ case PlSqlParser.ALIAS:
+ case PlSqlParser.ALLOCATE:
+ case PlSqlParser.ALLOW:
+ case PlSqlParser.ALL_ROWS:
+ case PlSqlParser.ALWAYS:
+ case PlSqlParser.ANALYZE:
+ case PlSqlParser.ANCILLARY:
+ case PlSqlParser.AND_EQUAL:
+ case PlSqlParser.ANOMALY:
+ case PlSqlParser.ANSI_REARCH:
+ case PlSqlParser.ANTIJOIN:
+ case PlSqlParser.ANYSCHEMA:
+ case PlSqlParser.APPEND:
+ case PlSqlParser.APPENDCHILDXML:
+ case PlSqlParser.APPEND_VALUES:
+ case PlSqlParser.APPLICATION:
+ case PlSqlParser.APPLY:
+ case PlSqlParser.APPROX_COUNT_DISTINCT:
+ case PlSqlParser.ARCHIVAL:
+ case PlSqlParser.ARCHIVE:
+ case PlSqlParser.ARCHIVED:
+ case PlSqlParser.ARCHIVELOG:
+ case PlSqlParser.ARRAY:
+ case PlSqlParser.ASCII:
+ case PlSqlParser.ASCIISTR:
+ case PlSqlParser.ASIN:
+ case PlSqlParser.ASIS:
+ case PlSqlParser.ASSEMBLY:
+ case PlSqlParser.ASSIGN:
+ case PlSqlParser.ASSOCIATE:
+ case PlSqlParser.ASYNC:
+ case PlSqlParser.ASYNCHRONOUS:
+ case PlSqlParser.ATAN2:
+ case PlSqlParser.ATAN:
+ case PlSqlParser.AT:
+ case PlSqlParser.ATTRIBUTE:
+ case PlSqlParser.ATTRIBUTES:
+ case PlSqlParser.AUTHENTICATED:
+ case PlSqlParser.AUTHENTICATION:
+ case PlSqlParser.AUTHID:
+ case PlSqlParser.AUTHORIZATION:
+ case PlSqlParser.AUTOALLOCATE:
+ case PlSqlParser.AUTO:
+ case PlSqlParser.AUTOEXTEND:
+ case PlSqlParser.AUTO_LOGIN:
+ case PlSqlParser.AUTOMATIC:
+ case PlSqlParser.AUTONOMOUS_TRANSACTION:
+ case PlSqlParser.AUTO_REOPTIMIZE:
+ case PlSqlParser.AVAILABILITY:
+ case PlSqlParser.AVRO:
+ case PlSqlParser.BACKGROUND:
+ case PlSqlParser.BACKUP:
+ case PlSqlParser.BASIC:
+ case PlSqlParser.BASICFILE:
+ case PlSqlParser.BATCH:
+ case PlSqlParser.BATCHSIZE:
+ case PlSqlParser.BATCH_TABLE_ACCESS_BY_ROWID:
+ case PlSqlParser.BECOME:
+ case PlSqlParser.BEFORE:
+ case PlSqlParser.BEGIN:
+ case PlSqlParser.BEGINNING:
+ case PlSqlParser.BEGIN_OUTLINE_DATA:
+ case PlSqlParser.BEHALF:
+ case PlSqlParser.BEQUEATH:
+ case PlSqlParser.BFILE:
+ case PlSqlParser.BFILENAME:
+ case PlSqlParser.BIGFILE:
+ case PlSqlParser.BINARY:
+ case PlSqlParser.BINARY_DOUBLE:
+ case PlSqlParser.BINARY_DOUBLE_INFINITY:
+ case PlSqlParser.BINARY_DOUBLE_NAN:
+ case PlSqlParser.BINARY_FLOAT:
+ case PlSqlParser.BINARY_FLOAT_INFINITY:
+ case PlSqlParser.BINARY_FLOAT_NAN:
+ case PlSqlParser.BINARY_INTEGER:
+ case PlSqlParser.BIND_AWARE:
+ case PlSqlParser.BINDING:
+ case PlSqlParser.BIN_TO_NUM:
+ case PlSqlParser.BITAND:
+ case PlSqlParser.BITMAP_AND:
+ case PlSqlParser.BITMAP:
+ case PlSqlParser.BITMAPS:
+ case PlSqlParser.BITMAP_TREE:
+ case PlSqlParser.BITS:
+ case PlSqlParser.BLOB:
+ case PlSqlParser.BLOCK:
+ case PlSqlParser.BLOCK_RANGE:
+ case PlSqlParser.BLOCKS:
+ case PlSqlParser.BLOCKSIZE:
+ case PlSqlParser.BODY:
+ case PlSqlParser.BOOLEAN:
+ case PlSqlParser.BOTH:
+ case PlSqlParser.BOUND:
+ case PlSqlParser.BRANCH:
+ case PlSqlParser.BREADTH:
+ case PlSqlParser.BROADCAST:
+ case PlSqlParser.BSON:
+ case PlSqlParser.BUFFER:
+ case PlSqlParser.BUFFER_CACHE:
+ case PlSqlParser.BUFFER_POOL:
+ case PlSqlParser.BUILD:
+ case PlSqlParser.BULK:
+ case PlSqlParser.BYPASS_RECURSIVE_CHECK:
+ case PlSqlParser.BYPASS_UJVC:
+ case PlSqlParser.BYTE:
+ case PlSqlParser.CACHE:
+ case PlSqlParser.CACHE_CB:
+ case PlSqlParser.CACHE_INSTANCES:
+ case PlSqlParser.CACHE_TEMP_TABLE:
+ case PlSqlParser.CACHING:
+ case PlSqlParser.CALCULATED:
+ case PlSqlParser.CALLBACK:
+ case PlSqlParser.CALL:
+ case PlSqlParser.CANCEL:
+ case PlSqlParser.CAPACITY:
+ case PlSqlParser.CARDINALITY:
+ case PlSqlParser.CASCADE:
+ case PlSqlParser.CASE:
+ case PlSqlParser.CAST:
+ case PlSqlParser.CATEGORY:
+ case PlSqlParser.CDBDEFAULT:
+ case PlSqlParser.CEIL:
+ case PlSqlParser.CELL_FLASH_CACHE:
+ case PlSqlParser.CERTIFICATE:
+ case PlSqlParser.CFILE:
+ case PlSqlParser.CHAINED:
+ case PlSqlParser.CHANGE:
+ case PlSqlParser.CHANGE_DUPKEY_ERROR_INDEX:
+ case PlSqlParser.CHARACTER:
+ case PlSqlParser.CHAR:
+ case PlSqlParser.CHAR_CS:
+ case PlSqlParser.CHARTOROWID:
+ case PlSqlParser.CHECK_ACL_REWRITE:
+ case PlSqlParser.CHECKPOINT:
+ case PlSqlParser.CHILD:
+ case PlSqlParser.CHOOSE:
+ case PlSqlParser.CHR:
+ case PlSqlParser.CHUNK:
+ case PlSqlParser.CLASS:
+ case PlSqlParser.CLASSIFIER:
+ case PlSqlParser.CLEANUP:
+ case PlSqlParser.CLEAR:
+ case PlSqlParser.C_LETTER:
+ case PlSqlParser.CLIENT:
+ case PlSqlParser.CLOB:
+ case PlSqlParser.CLONE:
+ case PlSqlParser.CLOSE_CACHED_OPEN_CURSORS:
+ case PlSqlParser.CLOSE:
+ case PlSqlParser.CLUSTER_BY_ROWID:
+ case PlSqlParser.CLUSTER:
+ case PlSqlParser.CLUSTER_DETAILS:
+ case PlSqlParser.CLUSTER_DISTANCE:
+ case PlSqlParser.CLUSTER_ID:
+ case PlSqlParser.CLUSTERING:
+ case PlSqlParser.CLUSTERING_FACTOR:
+ case PlSqlParser.CLUSTER_PROBABILITY:
+ case PlSqlParser.CLUSTER_SET:
+ case PlSqlParser.COALESCE:
+ case PlSqlParser.COALESCE_SQ:
+ case PlSqlParser.COARSE:
+ case PlSqlParser.CO_AUTH_IND:
+ case PlSqlParser.COLD:
+ case PlSqlParser.COLLECT:
+ case PlSqlParser.COLUMNAR:
+ case PlSqlParser.COLUMN_AUTH_INDICATOR:
+ case PlSqlParser.COLUMN:
+ case PlSqlParser.COLUMNS:
+ case PlSqlParser.COLUMN_STATS:
+ case PlSqlParser.COLUMN_VALUE:
+ case PlSqlParser.COMMENT:
+ case PlSqlParser.COMMIT:
+ case PlSqlParser.COMMITTED:
+ case PlSqlParser.COMMON_DATA:
+ case PlSqlParser.COMPACT:
+ case PlSqlParser.COMPATIBILITY:
+ case PlSqlParser.COMPILE:
+ case PlSqlParser.COMPLETE:
+ case PlSqlParser.COMPLIANCE:
+ case PlSqlParser.COMPONENT:
+ case PlSqlParser.COMPONENTS:
+ case PlSqlParser.COMPOSE:
+ case PlSqlParser.COMPOSITE:
+ case PlSqlParser.COMPOSITE_LIMIT:
+ case PlSqlParser.COMPOUND:
+ case PlSqlParser.COMPUTE:
+ case PlSqlParser.CONCAT:
+ case PlSqlParser.CON_DBID_TO_ID:
+ case PlSqlParser.CONDITIONAL:
+ case PlSqlParser.CONDITION:
+ case PlSqlParser.CONFIRM:
+ case PlSqlParser.CONFORMING:
+ case PlSqlParser.CON_GUID_TO_ID:
+ case PlSqlParser.CON_ID:
+ case PlSqlParser.CON_NAME_TO_ID:
+ case PlSqlParser.CONNECT_BY_CB_WHR_ONLY:
+ case PlSqlParser.CONNECT_BY_COMBINE_SW:
+ case PlSqlParser.CONNECT_BY_COST_BASED:
+ case PlSqlParser.CONNECT_BY_ELIM_DUPS:
+ case PlSqlParser.CONNECT_BY_FILTERING:
+ case PlSqlParser.CONNECT_BY_ISCYCLE:
+ case PlSqlParser.CONNECT_BY_ISLEAF:
+ case PlSqlParser.CONNECT_BY_ROOT:
+ case PlSqlParser.CONNECT_TIME:
+ case PlSqlParser.CONSIDER:
+ case PlSqlParser.CONSISTENT:
+ case PlSqlParser.CONSTANT:
+ case PlSqlParser.CONST:
+ case PlSqlParser.CONSTRAINT:
+ case PlSqlParser.CONSTRAINTS:
+ case PlSqlParser.CONSTRUCTOR:
+ case PlSqlParser.CONTAINER:
+ case PlSqlParser.CONTAINER_DATA:
+ case PlSqlParser.CONTAINERS:
+ case PlSqlParser.CONTENT:
+ case PlSqlParser.CONTENTS:
+ case PlSqlParser.CONTEXT:
+ case PlSqlParser.CONTINUE:
+ case PlSqlParser.CONTROLFILE:
+ case PlSqlParser.CON_UID_TO_ID:
+ case PlSqlParser.CONVERT:
+ case PlSqlParser.COOKIE:
+ case PlSqlParser.COPY:
+ case PlSqlParser.CORR_K:
+ case PlSqlParser.CORR_S:
+ case PlSqlParser.CORRUPTION:
+ case PlSqlParser.CORRUPT_XID_ALL:
+ case PlSqlParser.CORRUPT_XID:
+ case PlSqlParser.COS:
+ case PlSqlParser.COSH:
+ case PlSqlParser.COST:
+ case PlSqlParser.COST_XML_QUERY_REWRITE:
+ case PlSqlParser.COUNT:
+ case PlSqlParser.COVAR_POP:
+ case PlSqlParser.COVAR_SAMP:
+ case PlSqlParser.CPU_COSTING:
+ case PlSqlParser.CPU_PER_CALL:
+ case PlSqlParser.CPU_PER_SESSION:
+ case PlSqlParser.CRASH:
+ case PlSqlParser.CREATE_FILE_DEST:
+ case PlSqlParser.CREATE_STORED_OUTLINES:
+ case PlSqlParser.CREATION:
+ case PlSqlParser.CREDENTIAL:
+ case PlSqlParser.CRITICAL:
+ case PlSqlParser.CROSS:
+ case PlSqlParser.CROSSEDITION:
+ case PlSqlParser.CSCONVERT:
+ case PlSqlParser.CUBE_AJ:
+ case PlSqlParser.CUBE:
+ case PlSqlParser.CUBE_GB:
+ case PlSqlParser.CUBE_SJ:
+ case PlSqlParser.CUME_DISTM:
+ case PlSqlParser.CURRENT:
+ case PlSqlParser.CURRENT_DATE:
+ case PlSqlParser.CURRENT_SCHEMA:
+ case PlSqlParser.CURRENT_TIME:
+ case PlSqlParser.CURRENT_TIMESTAMP:
+ case PlSqlParser.CURRENT_USER:
+ case PlSqlParser.CURRENTV:
+ case PlSqlParser.CURSOR:
+ case PlSqlParser.CURSOR_SHARING_EXACT:
+ case PlSqlParser.CURSOR_SPECIFIC_SEGMENT:
+ case PlSqlParser.CUSTOMDATUM:
+ case PlSqlParser.CV:
+ case PlSqlParser.CYCLE:
+ case PlSqlParser.DANGLING:
+ case PlSqlParser.DATABASE:
+ case PlSqlParser.DATA:
+ case PlSqlParser.DATAFILE:
+ case PlSqlParser.DATAFILES:
+ case PlSqlParser.DATAMOVEMENT:
+ case PlSqlParser.DATAOBJNO:
+ case PlSqlParser.DATAOBJ_TO_MAT_PARTITION:
+ case PlSqlParser.DATAOBJ_TO_PARTITION:
+ case PlSqlParser.DATAPUMP:
+ case PlSqlParser.DATA_SECURITY_REWRITE_LIMIT:
+ case PlSqlParser.DATE_MODE:
+ case PlSqlParser.DAY:
+ case PlSqlParser.DAYS:
+ case PlSqlParser.DBA:
+ case PlSqlParser.DBA_RECYCLEBIN:
+ case PlSqlParser.DBMS_STATS:
+ case PlSqlParser.DB_ROLE_CHANGE:
+ case PlSqlParser.DBTIMEZONE:
+ case PlSqlParser.DB_UNIQUE_NAME:
+ case PlSqlParser.DB_VERSION:
+ case PlSqlParser.DDL:
+ case PlSqlParser.DEALLOCATE:
+ case PlSqlParser.DEBUG:
+ case PlSqlParser.DEBUGGER:
+ case PlSqlParser.DEC:
+ case PlSqlParser.DECIMAL:
+ case PlSqlParser.DECLARE:
+ case PlSqlParser.DECOMPOSE:
+ case PlSqlParser.DECORRELATE:
+ case PlSqlParser.DECR:
+ case PlSqlParser.DECREMENT:
+ case PlSqlParser.DECRYPT:
+ case PlSqlParser.DEDUPLICATE:
+ case PlSqlParser.DEFAULTS:
+ case PlSqlParser.DEFERRABLE:
+ case PlSqlParser.DEFERRED:
+ case PlSqlParser.DEFINED:
+ case PlSqlParser.DEFINE:
+ case PlSqlParser.DEFINER:
+ case PlSqlParser.DEGREE:
+ case PlSqlParser.DELAY:
+ case PlSqlParser.DELEGATE:
+ case PlSqlParser.DELETE_ALL:
+ case PlSqlParser.DELETE:
+ case PlSqlParser.DELETEXML:
+ case PlSqlParser.DEMAND:
+ case PlSqlParser.DENSE_RANKM:
+ case PlSqlParser.DEPENDENT:
+ case PlSqlParser.DEPTH:
+ case PlSqlParser.DEQUEUE:
+ case PlSqlParser.DEREF:
+ case PlSqlParser.DEREF_NO_REWRITE:
+ case PlSqlParser.DESTROY:
+ case PlSqlParser.DETACHED:
+ case PlSqlParser.DETERMINES:
+ case PlSqlParser.DETERMINISTIC:
+ case PlSqlParser.DICTIONARY:
+ case PlSqlParser.DIMENSION:
+ case PlSqlParser.DIMENSIONS:
+ case PlSqlParser.DIRECT_LOAD:
+ case PlSqlParser.DIRECTORY:
+ case PlSqlParser.DIRECT_PATH:
+ case PlSqlParser.DISABLE_ALL:
+ case PlSqlParser.DISABLE:
+ case PlSqlParser.DISABLE_PARALLEL_DML:
+ case PlSqlParser.DISABLE_PRESET:
+ case PlSqlParser.DISABLE_RPKE:
+ case PlSqlParser.DISALLOW:
+ case PlSqlParser.DISASSOCIATE:
+ case PlSqlParser.DISCARD:
+ case PlSqlParser.DISCONNECT:
+ case PlSqlParser.DISK:
+ case PlSqlParser.DISKGROUP:
+ case PlSqlParser.DISKS:
+ case PlSqlParser.DISMOUNT:
+ case PlSqlParser.DISTINGUISHED:
+ case PlSqlParser.DISTRIBUTED:
+ case PlSqlParser.DISTRIBUTE:
+ case PlSqlParser.DML:
+ case PlSqlParser.DML_UPDATE:
+ case PlSqlParser.DOCFIDELITY:
+ case PlSqlParser.DOCUMENT:
+ case PlSqlParser.DOMAIN_INDEX_FILTER:
+ case PlSqlParser.DOMAIN_INDEX_NO_SORT:
+ case PlSqlParser.DOMAIN_INDEX_SORT:
+ case PlSqlParser.DOUBLE:
+ case PlSqlParser.DOWNGRADE:
+ case PlSqlParser.DRIVING_SITE:
+ case PlSqlParser.DROP_COLUMN:
+ case PlSqlParser.DROP_GROUP:
+ case PlSqlParser.DSINTERVAL_UNCONSTRAINED:
+ case PlSqlParser.DST_UPGRADE_INSERT_CONV:
+ case PlSqlParser.DUMP:
+ case PlSqlParser.DUPLICATE:
+ case PlSqlParser.DV:
+ case PlSqlParser.DYNAMIC:
+ case PlSqlParser.DYNAMIC_SAMPLING:
+ case PlSqlParser.DYNAMIC_SAMPLING_EST_CDN:
+ case PlSqlParser.EACH:
+ case PlSqlParser.EDITIONABLE:
+ case PlSqlParser.EDITION:
+ case PlSqlParser.EDITIONING:
+ case PlSqlParser.EDITIONS:
+ case PlSqlParser.ELEMENT:
+ case PlSqlParser.ELIM_GROUPBY:
+ case PlSqlParser.ELIMINATE_JOIN:
+ case PlSqlParser.ELIMINATE_OBY:
+ case PlSqlParser.ELIMINATE_OUTER_JOIN:
+ case PlSqlParser.EM:
+ case PlSqlParser.EMPTY_BLOB:
+ case PlSqlParser.EMPTY_CLOB:
+ case PlSqlParser.EMPTY:
+ case PlSqlParser.ENABLE_ALL:
+ case PlSqlParser.ENABLE:
+ case PlSqlParser.ENABLE_PARALLEL_DML:
+ case PlSqlParser.ENABLE_PRESET:
+ case PlSqlParser.ENCODING:
+ case PlSqlParser.ENCRYPT:
+ case PlSqlParser.ENCRYPTION:
+ case PlSqlParser.END_OUTLINE_DATA:
+ case PlSqlParser.ENFORCED:
+ case PlSqlParser.ENFORCE:
+ case PlSqlParser.ENQUEUE:
+ case PlSqlParser.ENTERPRISE:
+ case PlSqlParser.ENTITYESCAPING:
+ case PlSqlParser.ENTRY:
+ case PlSqlParser.EQUIPART:
+ case PlSqlParser.ERR:
+ case PlSqlParser.ERROR_ARGUMENT:
+ case PlSqlParser.ERROR:
+ case PlSqlParser.ERROR_ON_OVERLAP_TIME:
+ case PlSqlParser.ERRORS:
+ case PlSqlParser.ESCAPE:
+ case PlSqlParser.ESTIMATE:
+ case PlSqlParser.EVAL:
+ case PlSqlParser.EVALNAME:
+ case PlSqlParser.EVALUATE:
+ case PlSqlParser.EVALUATION:
+ case PlSqlParser.EVENTS:
+ case PlSqlParser.EVERY:
+ case PlSqlParser.EXCEPT:
+ case PlSqlParser.EXCEPTION:
+ case PlSqlParser.EXCEPTION_INIT:
+ case PlSqlParser.EXCEPTIONS:
+ case PlSqlParser.EXCHANGE:
+ case PlSqlParser.EXCLUDE:
+ case PlSqlParser.EXCLUDING:
+ case PlSqlParser.EXECUTE:
+ case PlSqlParser.EXEMPT:
+ case PlSqlParser.EXISTING:
+ case PlSqlParser.EXISTS:
+ case PlSqlParser.EXISTSNODE:
+ case PlSqlParser.EXIT:
+ case PlSqlParser.EXPAND_GSET_TO_UNION:
+ case PlSqlParser.EXPAND_TABLE:
+ case PlSqlParser.EXP:
+ case PlSqlParser.EXPIRE:
+ case PlSqlParser.EXPLAIN:
+ case PlSqlParser.EXPLOSION:
+ case PlSqlParser.EXPORT:
+ case PlSqlParser.EXPR_CORR_CHECK:
+ case PlSqlParser.EXPRESS:
+ case PlSqlParser.EXTENDS:
+ case PlSqlParser.EXTENT:
+ case PlSqlParser.EXTENTS:
+ case PlSqlParser.EXTERNAL:
+ case PlSqlParser.EXTERNALLY:
+ case PlSqlParser.EXTRACTCLOBXML:
+ case PlSqlParser.EXTRACT:
+ case PlSqlParser.EXTRACTVALUE:
+ case PlSqlParser.EXTRA:
+ case PlSqlParser.FACILITY:
+ case PlSqlParser.FACT:
+ case PlSqlParser.FACTOR:
+ case PlSqlParser.FACTORIZE_JOIN:
+ case PlSqlParser.FAILED:
+ case PlSqlParser.FAILED_LOGIN_ATTEMPTS:
+ case PlSqlParser.FAILGROUP:
+ case PlSqlParser.FAILOVER:
+ case PlSqlParser.FAILURE:
+ case PlSqlParser.FALSE:
+ case PlSqlParser.FAMILY:
+ case PlSqlParser.FAR:
+ case PlSqlParser.FAST:
+ case PlSqlParser.FASTSTART:
+ case PlSqlParser.FBTSCAN:
+ case PlSqlParser.FEATURE_DETAILS:
+ case PlSqlParser.FEATURE_ID:
+ case PlSqlParser.FEATURE_SET:
+ case PlSqlParser.FEATURE_VALUE:
+ case PlSqlParser.FETCH:
+ case PlSqlParser.FILE:
+ case PlSqlParser.FILE_NAME_CONVERT:
+ case PlSqlParser.FILESYSTEM_LIKE_LOGGING:
+ case PlSqlParser.FILTER:
+ case PlSqlParser.FINAL:
+ case PlSqlParser.FINE:
+ case PlSqlParser.FINISH:
+ case PlSqlParser.FIRST:
+ case PlSqlParser.FIRSTM:
+ case PlSqlParser.FIRST_ROWS:
+ case PlSqlParser.FIRST_VALUE:
+ case PlSqlParser.FIXED_VIEW_DATA:
+ case PlSqlParser.FLAGGER:
+ case PlSqlParser.FLASHBACK:
+ case PlSqlParser.FLASH_CACHE:
+ case PlSqlParser.FLOAT:
+ case PlSqlParser.FLOB:
+ case PlSqlParser.FLOOR:
+ case PlSqlParser.FLUSH:
+ case PlSqlParser.FOLDER:
+ case PlSqlParser.FOLLOWING:
+ case PlSqlParser.FOLLOWS:
+ case PlSqlParser.FORALL:
+ case PlSqlParser.FORCE:
+ case PlSqlParser.FORCE_XML_QUERY_REWRITE:
+ case PlSqlParser.FOREIGN:
+ case PlSqlParser.FOREVER:
+ case PlSqlParser.FORMAT:
+ case PlSqlParser.FORWARD:
+ case PlSqlParser.FRAGMENT_NUMBER:
+ case PlSqlParser.FREELIST:
+ case PlSqlParser.FREELISTS:
+ case PlSqlParser.FREEPOOLS:
+ case PlSqlParser.FRESH:
+ case PlSqlParser.FROM_TZ:
+ case PlSqlParser.FULL:
+ case PlSqlParser.FULL_OUTER_JOIN_TO_OUTER:
+ case PlSqlParser.FUNCTION:
+ case PlSqlParser.FUNCTIONS:
+ case PlSqlParser.GATHER_OPTIMIZER_STATISTICS:
+ case PlSqlParser.GATHER_PLAN_STATISTICS:
+ case PlSqlParser.GBY_CONC_ROLLUP:
+ case PlSqlParser.GBY_PUSHDOWN:
+ case PlSqlParser.GENERATED:
+ case PlSqlParser.GET:
+ case PlSqlParser.GLOBAL:
+ case PlSqlParser.GLOBALLY:
+ case PlSqlParser.GLOBAL_NAME:
+ case PlSqlParser.GLOBAL_TOPIC_ENABLED:
+ case PlSqlParser.GROUP_BY:
+ case PlSqlParser.GROUP_ID:
+ case PlSqlParser.GROUPING:
+ case PlSqlParser.GROUPING_ID:
+ case PlSqlParser.GROUPS:
+ case PlSqlParser.GUARANTEED:
+ case PlSqlParser.GUARANTEE:
+ case PlSqlParser.GUARD:
+ case PlSqlParser.HASH_AJ:
+ case PlSqlParser.HASH:
+ case PlSqlParser.HASHKEYS:
+ case PlSqlParser.HASH_SJ:
+ case PlSqlParser.HEADER:
+ case PlSqlParser.HEAP:
+ case PlSqlParser.HELP:
+ case PlSqlParser.HEXTORAW:
+ case PlSqlParser.HEXTOREF:
+ case PlSqlParser.HIDDEN_KEYWORD:
+ case PlSqlParser.HIDE:
+ case PlSqlParser.HIERARCHY:
+ case PlSqlParser.HIGH:
+ case PlSqlParser.HINTSET_BEGIN:
+ case PlSqlParser.HINTSET_END:
+ case PlSqlParser.HOT:
+ case PlSqlParser.HOUR:
+ case PlSqlParser.HWM_BROKERED:
+ case PlSqlParser.HYBRID:
+ case PlSqlParser.IDENTIFIER:
+ case PlSqlParser.IDENTITY:
+ case PlSqlParser.IDGENERATORS:
+ case PlSqlParser.ID:
+ case PlSqlParser.IDLE_TIME:
+ case PlSqlParser.IF:
+ case PlSqlParser.IGNORE:
+ case PlSqlParser.IGNORE_OPTIM_EMBEDDED_HINTS:
+ case PlSqlParser.IGNORE_ROW_ON_DUPKEY_INDEX:
+ case PlSqlParser.IGNORE_WHERE_CLAUSE:
+ case PlSqlParser.ILM:
+ case PlSqlParser.IMMEDIATE:
+ case PlSqlParser.IMPACT:
+ case PlSqlParser.IMPORT:
+ case PlSqlParser.INACTIVE:
+ case PlSqlParser.INCLUDE:
+ case PlSqlParser.INCLUDE_VERSION:
+ case PlSqlParser.INCLUDING:
+ case PlSqlParser.INCREMENTAL:
+ case PlSqlParser.INCREMENT:
+ case PlSqlParser.INCR:
+ case PlSqlParser.INDENT:
+ case PlSqlParser.INDEX_ASC:
+ case PlSqlParser.INDEX_COMBINE:
+ case PlSqlParser.INDEX_DESC:
+ case PlSqlParser.INDEXED:
+ case PlSqlParser.INDEXES:
+ case PlSqlParser.INDEX_FFS:
+ case PlSqlParser.INDEX_FILTER:
+ case PlSqlParser.INDEXING:
+ case PlSqlParser.INDEX_JOIN:
+ case PlSqlParser.INDEX_ROWS:
+ case PlSqlParser.INDEX_RRS:
+ case PlSqlParser.INDEX_RS_ASC:
+ case PlSqlParser.INDEX_RS_DESC:
+ case PlSqlParser.INDEX_RS:
+ case PlSqlParser.INDEX_SCAN:
+ case PlSqlParser.INDEX_SKIP_SCAN:
+ case PlSqlParser.INDEX_SS_ASC:
+ case PlSqlParser.INDEX_SS_DESC:
+ case PlSqlParser.INDEX_SS:
+ case PlSqlParser.INDEX_STATS:
+ case PlSqlParser.INDEXTYPE:
+ case PlSqlParser.INDEXTYPES:
+ case PlSqlParser.INDICATOR:
+ case PlSqlParser.INDICES:
+ case PlSqlParser.INFINITE:
+ case PlSqlParser.INFORMATIONAL:
+ case PlSqlParser.INHERIT:
+ case PlSqlParser.INITCAP:
+ case PlSqlParser.INITIAL:
+ case PlSqlParser.INITIALIZED:
+ case PlSqlParser.INITIALLY:
+ case PlSqlParser.INITRANS:
+ case PlSqlParser.INLINE:
+ case PlSqlParser.INLINE_XMLTYPE_NT:
+ case PlSqlParser.INMEMORY:
+ case PlSqlParser.IN_MEMORY_METADATA:
+ case PlSqlParser.INMEMORY_PRUNING:
+ case PlSqlParser.INNER:
+ case PlSqlParser.INOUT:
+ case PlSqlParser.INPLACE:
+ case PlSqlParser.INSERTCHILDXMLAFTER:
+ case PlSqlParser.INSERTCHILDXMLBEFORE:
+ case PlSqlParser.INSERTCHILDXML:
+ case PlSqlParser.INSERTXMLAFTER:
+ case PlSqlParser.INSERTXMLBEFORE:
+ case PlSqlParser.INSTANCE:
+ case PlSqlParser.INSTANCES:
+ case PlSqlParser.INSTANTIABLE:
+ case PlSqlParser.INSTANTLY:
+ case PlSqlParser.INSTEAD:
+ case PlSqlParser.INSTR2:
+ case PlSqlParser.INSTR4:
+ case PlSqlParser.INSTRB:
+ case PlSqlParser.INSTRC:
+ case PlSqlParser.INSTR:
+ case PlSqlParser.INTEGER:
+ case PlSqlParser.INTERLEAVED:
+ case PlSqlParser.INTERMEDIATE:
+ case PlSqlParser.INTERNAL_CONVERT:
+ case PlSqlParser.INTERNAL_USE:
+ case PlSqlParser.INTERPRETED:
+ case PlSqlParser.INTERVAL:
+ case PlSqlParser.INT:
+ case PlSqlParser.INVALIDATE:
+ case PlSqlParser.INVISIBLE:
+ case PlSqlParser.IN_XQUERY:
+ case PlSqlParser.ISOLATION:
+ case PlSqlParser.ISOLATION_LEVEL:
+ case PlSqlParser.ITERATE:
+ case PlSqlParser.ITERATION_NUMBER:
+ case PlSqlParser.JAVA:
+ case PlSqlParser.JOB:
+ case PlSqlParser.JOIN:
+ case PlSqlParser.JSON_ARRAYAGG:
+ case PlSqlParser.JSON_ARRAY:
+ case PlSqlParser.JSON_EQUAL:
+ case PlSqlParser.JSON_EXISTS2:
+ case PlSqlParser.JSON_EXISTS:
+ case PlSqlParser.JSONGET:
+ case PlSqlParser.JSON:
+ case PlSqlParser.JSON_OBJECTAGG:
+ case PlSqlParser.JSON_OBJECT:
+ case PlSqlParser.JSONPARSE:
+ case PlSqlParser.JSON_QUERY:
+ case PlSqlParser.JSON_SERIALIZE:
+ case PlSqlParser.JSON_TABLE:
+ case PlSqlParser.JSON_TEXTCONTAINS2:
+ case PlSqlParser.JSON_TEXTCONTAINS:
+ case PlSqlParser.JSON_VALUE:
+ case PlSqlParser.KEEP_DUPLICATES:
+ case PlSqlParser.KEEP:
+ case PlSqlParser.KERBEROS:
+ case PlSqlParser.KEY:
+ case PlSqlParser.KEY_LENGTH:
+ case PlSqlParser.KEYSIZE:
+ case PlSqlParser.KEYS:
+ case PlSqlParser.KEYSTORE:
+ case PlSqlParser.KILL:
+ case PlSqlParser.LABEL:
+ case PlSqlParser.LANGUAGE:
+ case PlSqlParser.LAST_DAY:
+ case PlSqlParser.LAST:
+ case PlSqlParser.LAST_VALUE:
+ case PlSqlParser.LATERAL:
+ case PlSqlParser.LAX:
+ case PlSqlParser.LAYER:
+ case PlSqlParser.LDAP_REGISTRATION_ENABLED:
+ case PlSqlParser.LDAP_REGISTRATION:
+ case PlSqlParser.LDAP_REG_SYNC_INTERVAL:
+ case PlSqlParser.LEADING:
+ case PlSqlParser.LEFT:
+ case PlSqlParser.LENGTH2:
+ case PlSqlParser.LENGTH4:
+ case PlSqlParser.LENGTHB:
+ case PlSqlParser.LENGTHC:
+ case PlSqlParser.LENGTH:
+ case PlSqlParser.LESS:
+ case PlSqlParser.LEVEL:
+ case PlSqlParser.LEVELS:
+ case PlSqlParser.LIBRARY:
+ case PlSqlParser.LIFECYCLE:
+ case PlSqlParser.LIFE:
+ case PlSqlParser.LIFETIME:
+ case PlSqlParser.LIKE2:
+ case PlSqlParser.LIKE4:
+ case PlSqlParser.LIKEC:
+ case PlSqlParser.LIKE_EXPAND:
+ case PlSqlParser.LIMIT:
+ case PlSqlParser.LINEAR:
+ case PlSqlParser.LINK:
+ case PlSqlParser.LIST:
+ case PlSqlParser.LN:
+ case PlSqlParser.LNNVL:
+ case PlSqlParser.LOAD:
+ case PlSqlParser.LOB:
+ case PlSqlParser.LOBNVL:
+ case PlSqlParser.LOBS:
+ case PlSqlParser.LOCAL_INDEXES:
+ case PlSqlParser.LOCAL:
+ case PlSqlParser.LOCALTIME:
+ case PlSqlParser.LOCALTIMESTAMP:
+ case PlSqlParser.LOCATION:
+ case PlSqlParser.LOCATOR:
+ case PlSqlParser.LOCKED:
+ case PlSqlParser.LOCKING:
+ case PlSqlParser.LOGFILE:
+ case PlSqlParser.LOGFILES:
+ case PlSqlParser.LOGGING:
+ case PlSqlParser.LOGICAL:
+ case PlSqlParser.LOGICAL_READS_PER_CALL:
+ case PlSqlParser.LOGICAL_READS_PER_SESSION:
+ case PlSqlParser.LOG:
+ case PlSqlParser.LOGMINING:
+ case PlSqlParser.LOGOFF:
+ case PlSqlParser.LOGON:
+ case PlSqlParser.LOG_READ_ONLY_VIOLATIONS:
+ case PlSqlParser.LONG:
+ case PlSqlParser.LOOP:
+ case PlSqlParser.LOWER:
+ case PlSqlParser.LOW:
+ case PlSqlParser.LPAD:
+ case PlSqlParser.LTRIM:
+ case PlSqlParser.MAIN:
+ case PlSqlParser.MAKE_REF:
+ case PlSqlParser.MANAGED:
+ case PlSqlParser.MANAGE:
+ case PlSqlParser.MANAGEMENT:
+ case PlSqlParser.MANAGER:
+ case PlSqlParser.MANUAL:
+ case PlSqlParser.MAP:
+ case PlSqlParser.MAPPING:
+ case PlSqlParser.MASTER:
+ case PlSqlParser.MATCHED:
+ case PlSqlParser.MATCHES:
+ case PlSqlParser.MATCH:
+ case PlSqlParser.MATCH_NUMBER:
+ case PlSqlParser.MATCH_RECOGNIZE:
+ case PlSqlParser.MATERIALIZED:
+ case PlSqlParser.MATERIALIZE:
+ case PlSqlParser.MAXARCHLOGS:
+ case PlSqlParser.MAXDATAFILES:
+ case PlSqlParser.MAXEXTENTS:
+ case PlSqlParser.MAXIMIZE:
+ case PlSqlParser.MAXINSTANCES:
+ case PlSqlParser.MAXLOGFILES:
+ case PlSqlParser.MAXLOGHISTORY:
+ case PlSqlParser.MAXLOGMEMBERS:
+ case PlSqlParser.MAX_SHARED_TEMP_SIZE:
+ case PlSqlParser.MAXSIZE:
+ case PlSqlParser.MAXTRANS:
+ case PlSqlParser.MAXVALUE:
+ case PlSqlParser.MEASURE:
+ case PlSqlParser.MEASURES:
+ case PlSqlParser.MEDIUM:
+ case PlSqlParser.MEMBER:
+ case PlSqlParser.MEMCOMPRESS:
+ case PlSqlParser.MEMORY:
+ case PlSqlParser.MERGEACTIONS:
+ case PlSqlParser.MERGE_AJ:
+ case PlSqlParser.MERGE_CONST_ON:
+ case PlSqlParser.MERGE:
+ case PlSqlParser.MERGE_SJ:
+ case PlSqlParser.METADATA:
+ case PlSqlParser.METHOD:
+ case PlSqlParser.MIGRATE:
+ case PlSqlParser.MIGRATION:
+ case PlSqlParser.MINEXTENTS:
+ case PlSqlParser.MINIMIZE:
+ case PlSqlParser.MINIMUM:
+ case PlSqlParser.MINING:
+ case PlSqlParser.MINUS_NULL:
+ case PlSqlParser.MINUTE:
+ case PlSqlParser.MINVALUE:
+ case PlSqlParser.MIRRORCOLD:
+ case PlSqlParser.MIRRORHOT:
+ case PlSqlParser.MIRROR:
+ case PlSqlParser.MLSLABEL:
+ case PlSqlParser.MODEL_COMPILE_SUBQUERY:
+ case PlSqlParser.MODEL_DONTVERIFY_UNIQUENESS:
+ case PlSqlParser.MODEL_DYNAMIC_SUBQUERY:
+ case PlSqlParser.MODEL_MIN_ANALYSIS:
+ case PlSqlParser.MODEL:
+ case PlSqlParser.MODEL_NB:
+ case PlSqlParser.MODEL_NO_ANALYSIS:
+ case PlSqlParser.MODEL_PBY:
+ case PlSqlParser.MODEL_PUSH_REF:
+ case PlSqlParser.MODEL_SV:
+ case PlSqlParser.MODIFICATION:
+ case PlSqlParser.MODIFY_COLUMN_TYPE:
+ case PlSqlParser.MODIFY:
+ case PlSqlParser.MOD:
+ case PlSqlParser.MODULE:
+ case PlSqlParser.MONITORING:
+ case PlSqlParser.MONITOR:
+ case PlSqlParser.MONTH:
+ case PlSqlParser.MONTHS_BETWEEN:
+ case PlSqlParser.MONTHS:
+ case PlSqlParser.MOUNT:
+ case PlSqlParser.MOUNTPATH:
+ case PlSqlParser.MOVEMENT:
+ case PlSqlParser.MOVE:
+ case PlSqlParser.MULTIDIMENSIONAL:
+ case PlSqlParser.MULTISET:
+ case PlSqlParser.MV_MERGE:
+ case PlSqlParser.NAMED:
+ case PlSqlParser.NAME:
+ case PlSqlParser.NAMESPACE:
+ case PlSqlParser.NAN:
+ case PlSqlParser.NANVL:
+ case PlSqlParser.NATIONAL:
+ case PlSqlParser.NATIVE_FULL_OUTER_JOIN:
+ case PlSqlParser.NATIVE:
+ case PlSqlParser.NATURAL:
+ case PlSqlParser.NAV:
+ case PlSqlParser.NCHAR_CS:
+ case PlSqlParser.NCHAR:
+ case PlSqlParser.NCHR:
+ case PlSqlParser.NCLOB:
+ case PlSqlParser.NEEDED:
+ case PlSqlParser.NEG:
+ case PlSqlParser.NESTED:
+ case PlSqlParser.NESTED_TABLE_FAST_INSERT:
+ case PlSqlParser.NESTED_TABLE_GET_REFS:
+ case PlSqlParser.NESTED_TABLE_ID:
+ case PlSqlParser.NESTED_TABLE_SET_REFS:
+ case PlSqlParser.NESTED_TABLE_SET_SETID:
+ case PlSqlParser.NETWORK:
+ case PlSqlParser.NEVER:
+ case PlSqlParser.NEW:
+ case PlSqlParser.NEW_TIME:
+ case PlSqlParser.NEXT_DAY:
+ case PlSqlParser.NEXT:
+ case PlSqlParser.NL_AJ:
+ case PlSqlParser.NLJ_BATCHING:
+ case PlSqlParser.NLJ_INDEX_FILTER:
+ case PlSqlParser.NLJ_INDEX_SCAN:
+ case PlSqlParser.NLJ_PREFETCH:
+ case PlSqlParser.NLS_CALENDAR:
+ case PlSqlParser.NLS_CHARACTERSET:
+ case PlSqlParser.NLS_CHARSET_DECL_LEN:
+ case PlSqlParser.NLS_CHARSET_ID:
+ case PlSqlParser.NLS_CHARSET_NAME:
+ case PlSqlParser.NLS_COMP:
+ case PlSqlParser.NLS_CURRENCY:
+ case PlSqlParser.NLS_DATE_FORMAT:
+ case PlSqlParser.NLS_DATE_LANGUAGE:
+ case PlSqlParser.NLS_INITCAP:
+ case PlSqlParser.NLS_ISO_CURRENCY:
+ case PlSqlParser.NL_SJ:
+ case PlSqlParser.NLS_LANG:
+ case PlSqlParser.NLS_LANGUAGE:
+ case PlSqlParser.NLS_LENGTH_SEMANTICS:
+ case PlSqlParser.NLS_LOWER:
+ case PlSqlParser.NLS_NCHAR_CONV_EXCP:
+ case PlSqlParser.NLS_NUMERIC_CHARACTERS:
+ case PlSqlParser.NLS_SORT:
+ case PlSqlParser.NLSSORT:
+ case PlSqlParser.NLS_SPECIAL_CHARS:
+ case PlSqlParser.NLS_TERRITORY:
+ case PlSqlParser.NLS_UPPER:
+ case PlSqlParser.NO_ACCESS:
+ case PlSqlParser.NO_ADAPTIVE_PLAN:
+ case PlSqlParser.NO_ANSI_REARCH:
+ case PlSqlParser.NOAPPEND:
+ case PlSqlParser.NOARCHIVELOG:
+ case PlSqlParser.NOAUDIT:
+ case PlSqlParser.NO_AUTO_REOPTIMIZE:
+ case PlSqlParser.NO_BASETABLE_MULTIMV_REWRITE:
+ case PlSqlParser.NO_BATCH_TABLE_ACCESS_BY_ROWID:
+ case PlSqlParser.NO_BIND_AWARE:
+ case PlSqlParser.NO_BUFFER:
+ case PlSqlParser.NOCACHE:
+ case PlSqlParser.NO_CARTESIAN:
+ case PlSqlParser.NO_CHECK_ACL_REWRITE:
+ case PlSqlParser.NO_CLUSTER_BY_ROWID:
+ case PlSqlParser.NO_CLUSTERING:
+ case PlSqlParser.NO_COALESCE_SQ:
+ case PlSqlParser.NO_COMMON_DATA:
+ case PlSqlParser.NO_CONNECT_BY_CB_WHR_ONLY:
+ case PlSqlParser.NO_CONNECT_BY_COMBINE_SW:
+ case PlSqlParser.NO_CONNECT_BY_COST_BASED:
+ case PlSqlParser.NO_CONNECT_BY_ELIM_DUPS:
+ case PlSqlParser.NO_CONNECT_BY_FILTERING:
+ case PlSqlParser.NOCOPY:
+ case PlSqlParser.NO_COST_XML_QUERY_REWRITE:
+ case PlSqlParser.NO_CPU_COSTING:
+ case PlSqlParser.NOCPU_COSTING:
+ case PlSqlParser.NOCYCLE:
+ case PlSqlParser.NO_DATA_SECURITY_REWRITE:
+ case PlSqlParser.NO_DECORRELATE:
+ case PlSqlParser.NODELAY:
+ case PlSqlParser.NO_DOMAIN_INDEX_FILTER:
+ case PlSqlParser.NO_DST_UPGRADE_INSERT_CONV:
+ case PlSqlParser.NO_ELIM_GROUPBY:
+ case PlSqlParser.NO_ELIMINATE_JOIN:
+ case PlSqlParser.NO_ELIMINATE_OBY:
+ case PlSqlParser.NO_ELIMINATE_OUTER_JOIN:
+ case PlSqlParser.NOENTITYESCAPING:
+ case PlSqlParser.NO_EXPAND_GSET_TO_UNION:
+ case PlSqlParser.NO_EXPAND:
+ case PlSqlParser.NO_EXPAND_TABLE:
+ case PlSqlParser.NO_FACT:
+ case PlSqlParser.NO_FACTORIZE_JOIN:
+ case PlSqlParser.NO_FILTERING:
+ case PlSqlParser.NOFORCE:
+ case PlSqlParser.NO_FULL_OUTER_JOIN_TO_OUTER:
+ case PlSqlParser.NO_GATHER_OPTIMIZER_STATISTICS:
+ case PlSqlParser.NO_GBY_PUSHDOWN:
+ case PlSqlParser.NOGUARANTEE:
+ case PlSqlParser.NO_INDEX_FFS:
+ case PlSqlParser.NO_INDEX:
+ case PlSqlParser.NO_INDEX_SS:
+ case PlSqlParser.NO_INMEMORY:
+ case PlSqlParser.NO_INMEMORY_PRUNING:
+ case PlSqlParser.NOKEEP:
+ case PlSqlParser.NO_LOAD:
+ case PlSqlParser.NOLOCAL:
+ case PlSqlParser.NOLOGGING:
+ case PlSqlParser.NOMAPPING:
+ case PlSqlParser.NOMAXVALUE:
+ case PlSqlParser.NO_MERGE:
+ case PlSqlParser.NOMINIMIZE:
+ case PlSqlParser.NOMINVALUE:
+ case PlSqlParser.NO_MODEL_PUSH_REF:
+ case PlSqlParser.NO_MONITORING:
+ case PlSqlParser.NOMONITORING:
+ case PlSqlParser.NO_MONITOR:
+ case PlSqlParser.NO_MULTIMV_REWRITE:
+ case PlSqlParser.NO_NATIVE_FULL_OUTER_JOIN:
+ case PlSqlParser.NONBLOCKING:
+ case PlSqlParser.NONEDITIONABLE:
+ case PlSqlParser.NONE:
+ case PlSqlParser.NO_NLJ_BATCHING:
+ case PlSqlParser.NO_NLJ_PREFETCH:
+ case PlSqlParser.NO:
+ case PlSqlParser.NONSCHEMA:
+ case PlSqlParser.NO_OBJECT_LINK:
+ case PlSqlParser.NOORDER:
+ case PlSqlParser.NO_ORDER_ROLLUPS:
+ case PlSqlParser.NO_OUTER_JOIN_TO_ANTI:
+ case PlSqlParser.NO_OUTER_JOIN_TO_INNER:
+ case PlSqlParser.NOOVERRIDE:
+ case PlSqlParser.NO_PARALLEL_INDEX:
+ case PlSqlParser.NOPARALLEL_INDEX:
+ case PlSqlParser.NO_PARALLEL:
+ case PlSqlParser.NOPARALLEL:
+ case PlSqlParser.NO_PARTIAL_COMMIT:
+ case PlSqlParser.NO_PARTIAL_JOIN:
+ case PlSqlParser.NO_PARTIAL_ROLLUP_PUSHDOWN:
+ case PlSqlParser.NOPARTITION:
+ case PlSqlParser.NO_PLACE_DISTINCT:
+ case PlSqlParser.NO_PLACE_GROUP_BY:
+ case PlSqlParser.NO_PQ_CONCURRENT_UNION:
+ case PlSqlParser.NO_PQ_MAP:
+ case PlSqlParser.NO_PQ_REPLICATE:
+ case PlSqlParser.NO_PQ_SKEW:
+ case PlSqlParser.NO_PRUNE_GSETS:
+ case PlSqlParser.NO_PULL_PRED:
+ case PlSqlParser.NO_PUSH_PRED:
+ case PlSqlParser.NO_PUSH_SUBQ:
+ case PlSqlParser.NO_PX_FAULT_TOLERANCE:
+ case PlSqlParser.NO_PX_JOIN_FILTER:
+ case PlSqlParser.NO_QKN_BUFF:
+ case PlSqlParser.NO_QUERY_TRANSFORMATION:
+ case PlSqlParser.NO_REF_CASCADE:
+ case PlSqlParser.NORELOCATE:
+ case PlSqlParser.NORELY:
+ case PlSqlParser.NOREPAIR:
+ case PlSqlParser.NOREPLAY:
+ case PlSqlParser.NORESETLOGS:
+ case PlSqlParser.NO_RESULT_CACHE:
+ case PlSqlParser.NOREVERSE:
+ case PlSqlParser.NO_REWRITE:
+ case PlSqlParser.NOREWRITE:
+ case PlSqlParser.NORMAL:
+ case PlSqlParser.NO_ROOT_SW_FOR_LOCAL:
+ case PlSqlParser.NOROWDEPENDENCIES:
+ case PlSqlParser.NOSCHEMACHECK:
+ case PlSqlParser.NOSEGMENT:
+ case PlSqlParser.NO_SEMIJOIN:
+ case PlSqlParser.NO_SEMI_TO_INNER:
+ case PlSqlParser.NO_SET_TO_JOIN:
+ case PlSqlParser.NOSORT:
+ case PlSqlParser.NO_SQL_TRANSLATION:
+ case PlSqlParser.NO_SQL_TUNE:
+ case PlSqlParser.NO_STAR_TRANSFORMATION:
+ case PlSqlParser.NO_STATEMENT_QUEUING:
+ case PlSqlParser.NO_STATS_GSETS:
+ case PlSqlParser.NOSTRICT:
+ case PlSqlParser.NO_SUBQUERY_PRUNING:
+ case PlSqlParser.NO_SUBSTRB_PAD:
+ case PlSqlParser.NO_SWAP_JOIN_INPUTS:
+ case PlSqlParser.NOSWITCH:
+ case PlSqlParser.NO_TABLE_LOOKUP_BY_NL:
+ case PlSqlParser.NO_TEMP_TABLE:
+ case PlSqlParser.NOTHING:
+ case PlSqlParser.NOTIFICATION:
+ case PlSqlParser.NO_TRANSFORM_DISTINCT_AGG:
+ case PlSqlParser.NO_UNNEST:
+ case PlSqlParser.NO_USE_CUBE:
+ case PlSqlParser.NO_USE_HASH_AGGREGATION:
+ case PlSqlParser.NO_USE_HASH_GBY_FOR_PUSHDOWN:
+ case PlSqlParser.NO_USE_HASH:
+ case PlSqlParser.NO_USE_INVISIBLE_INDEXES:
+ case PlSqlParser.NO_USE_MERGE:
+ case PlSqlParser.NO_USE_NL:
+ case PlSqlParser.NO_USE_VECTOR_AGGREGATION:
+ case PlSqlParser.NOVALIDATE:
+ case PlSqlParser.NO_VECTOR_TRANSFORM_DIMS:
+ case PlSqlParser.NO_VECTOR_TRANSFORM_FACT:
+ case PlSqlParser.NO_VECTOR_TRANSFORM:
+ case PlSqlParser.NO_XDB_FASTPATH_INSERT:
+ case PlSqlParser.NO_XML_DML_REWRITE:
+ case PlSqlParser.NO_XMLINDEX_REWRITE_IN_SELECT:
+ case PlSqlParser.NO_XMLINDEX_REWRITE:
+ case PlSqlParser.NO_XML_QUERY_REWRITE:
+ case PlSqlParser.NO_ZONEMAP:
+ case PlSqlParser.NTH_VALUE:
+ case PlSqlParser.NULLIF:
+ case PlSqlParser.NULLS:
+ case PlSqlParser.NUMBER:
+ case PlSqlParser.NUMERIC:
+ case PlSqlParser.NUM_INDEX_KEYS:
+ case PlSqlParser.NUMTODSINTERVAL:
+ case PlSqlParser.NUMTOYMINTERVAL:
+ case PlSqlParser.NVARCHAR2:
+ case PlSqlParser.NVL2:
+ case PlSqlParser.OBJECT2XML:
+ case PlSqlParser.OBJECT:
+ case PlSqlParser.OBJ_ID:
+ case PlSqlParser.OBJNO:
+ case PlSqlParser.OBJNO_REUSE:
+ case PlSqlParser.OCCURENCES:
+ case PlSqlParser.OFFLINE:
+ case PlSqlParser.OFF:
+ case PlSqlParser.OFFSET:
+ case PlSqlParser.OIDINDEX:
+ case PlSqlParser.OID:
+ case PlSqlParser.OLAP:
+ case PlSqlParser.OLD:
+ case PlSqlParser.OLD_PUSH_PRED:
+ case PlSqlParser.OLS:
+ case PlSqlParser.OLTP:
+ case PlSqlParser.OMIT:
+ case PlSqlParser.ONE:
+ case PlSqlParser.ONLINE:
+ case PlSqlParser.ONLY:
+ case PlSqlParser.OPAQUE:
+ case PlSqlParser.OPAQUE_TRANSFORM:
+ case PlSqlParser.OPAQUE_XCANONICAL:
+ case PlSqlParser.OPCODE:
+ case PlSqlParser.OPEN:
+ case PlSqlParser.OPERATIONS:
+ case PlSqlParser.OPERATOR:
+ case PlSqlParser.OPT_ESTIMATE:
+ case PlSqlParser.OPTIMAL:
+ case PlSqlParser.OPTIMIZE:
+ case PlSqlParser.OPTIMIZER_FEATURES_ENABLE:
+ case PlSqlParser.OPTIMIZER_GOAL:
+ case PlSqlParser.OPT_PARAM:
+ case PlSqlParser.ORA_BRANCH:
+ case PlSqlParser.ORA_CHECK_ACL:
+ case PlSqlParser.ORA_CHECK_PRIVILEGE:
+ case PlSqlParser.ORA_CLUSTERING:
+ case PlSqlParser.ORADATA:
+ case PlSqlParser.ORADEBUG:
+ case PlSqlParser.ORA_DST_AFFECTED:
+ case PlSqlParser.ORA_DST_CONVERT:
+ case PlSqlParser.ORA_DST_ERROR:
+ case PlSqlParser.ORA_GET_ACLIDS:
+ case PlSqlParser.ORA_GET_PRIVILEGES:
+ case PlSqlParser.ORA_HASH:
+ case PlSqlParser.ORA_INVOKING_USERID:
+ case PlSqlParser.ORA_INVOKING_USER:
+ case PlSqlParser.ORA_INVOKING_XS_USER_GUID:
+ case PlSqlParser.ORA_INVOKING_XS_USER:
+ case PlSqlParser.ORA_RAWCOMPARE:
+ case PlSqlParser.ORA_RAWCONCAT:
+ case PlSqlParser.ORA_ROWSCN:
+ case PlSqlParser.ORA_ROWSCN_RAW:
+ case PlSqlParser.ORA_ROWVERSION:
+ case PlSqlParser.ORA_TABVERSION:
+ case PlSqlParser.ORA_WRITE_TIME:
+ case PlSqlParser.ORDERED:
+ case PlSqlParser.ORDERED_PREDICATES:
+ case PlSqlParser.ORDINALITY:
+ case PlSqlParser.OR_EXPAND:
+ case PlSqlParser.ORGANIZATION:
+ case PlSqlParser.OR_PREDICATES:
+ case PlSqlParser.OSERROR:
+ case PlSqlParser.OTHER:
+ case PlSqlParser.OUTER_JOIN_TO_ANTI:
+ case PlSqlParser.OUTER_JOIN_TO_INNER:
+ case PlSqlParser.OUTER:
+ case PlSqlParser.OUTLINE_LEAF:
+ case PlSqlParser.OUTLINE:
+ case PlSqlParser.OUT_OF_LINE:
+ case PlSqlParser.OUT:
+ case PlSqlParser.OVERFLOW_NOMOVE:
+ case PlSqlParser.OVERFLOW:
+ case PlSqlParser.OVERLAPS:
+ case PlSqlParser.OVER:
+ case PlSqlParser.OVERRIDING:
+ case PlSqlParser.OWNER:
+ case PlSqlParser.OWNERSHIP:
+ case PlSqlParser.OWN:
+ case PlSqlParser.PACKAGE:
+ case PlSqlParser.PACKAGES:
+ case PlSqlParser.PARALLEL_ENABLE:
+ case PlSqlParser.PARALLEL_INDEX:
+ case PlSqlParser.PARALLEL:
+ case PlSqlParser.PARAMETERS:
+ case PlSqlParser.PARAM:
+ case PlSqlParser.PARENT:
+ case PlSqlParser.PARITY:
+ case PlSqlParser.PARTIAL_JOIN:
+ case PlSqlParser.PARTIALLY:
+ case PlSqlParser.PARTIAL:
+ case PlSqlParser.PARTIAL_ROLLUP_PUSHDOWN:
+ case PlSqlParser.PARTITION_HASH:
+ case PlSqlParser.PARTITION_LIST:
+ case PlSqlParser.PARTITION:
+ case PlSqlParser.PARTITION_RANGE:
+ case PlSqlParser.PARTITIONS:
+ case PlSqlParser.PARTNUMINST:
+ case PlSqlParser.PASSING:
+ case PlSqlParser.PASSWORD_GRACE_TIME:
+ case PlSqlParser.PASSWORD_LIFE_TIME:
+ case PlSqlParser.PASSWORD_LOCK_TIME:
+ case PlSqlParser.PASSWORD:
+ case PlSqlParser.PASSWORD_REUSE_MAX:
+ case PlSqlParser.PASSWORD_REUSE_TIME:
+ case PlSqlParser.PASSWORD_VERIFY_FUNCTION:
+ case PlSqlParser.PAST:
+ case PlSqlParser.PATCH:
+ case PlSqlParser.PATH:
+ case PlSqlParser.PATH_PREFIX:
+ case PlSqlParser.PATHS:
+ case PlSqlParser.PATTERN:
+ case PlSqlParser.PBL_HS_BEGIN:
+ case PlSqlParser.PBL_HS_END:
+ case PlSqlParser.PCTINCREASE:
+ case PlSqlParser.PCTTHRESHOLD:
+ case PlSqlParser.PCTUSED:
+ case PlSqlParser.PCTVERSION:
+ case PlSqlParser.PENDING:
+ case PlSqlParser.PERCENT_KEYWORD:
+ case PlSqlParser.PERCENT_RANKM:
+ case PlSqlParser.PERFORMANCE:
+ case PlSqlParser.PERIOD_KEYWORD:
+ case PlSqlParser.PERMANENT:
+ case PlSqlParser.PERMISSION:
+ case PlSqlParser.PERMUTE:
+ case PlSqlParser.PER:
+ case PlSqlParser.PFILE:
+ case PlSqlParser.PHYSICAL:
+ case PlSqlParser.PIKEY:
+ case PlSqlParser.PIPELINED:
+ case PlSqlParser.PIV_GB:
+ case PlSqlParser.PIVOT:
+ case PlSqlParser.PIV_SSF:
+ case PlSqlParser.PLACE_DISTINCT:
+ case PlSqlParser.PLACE_GROUP_BY:
+ case PlSqlParser.PLAN:
+ case PlSqlParser.PLSCOPE_SETTINGS:
+ case PlSqlParser.PLS_INTEGER:
+ case PlSqlParser.PLSQL_CCFLAGS:
+ case PlSqlParser.PLSQL_CODE_TYPE:
+ case PlSqlParser.PLSQL_DEBUG:
+ case PlSqlParser.PLSQL_OPTIMIZE_LEVEL:
+ case PlSqlParser.PLSQL_WARNINGS:
+ case PlSqlParser.PLUGGABLE:
+ case PlSqlParser.POINT:
+ case PlSqlParser.POLICY:
+ case PlSqlParser.POOL_16K:
+ case PlSqlParser.POOL_2K:
+ case PlSqlParser.POOL_32K:
+ case PlSqlParser.POOL_4K:
+ case PlSqlParser.POOL_8K:
+ case PlSqlParser.POSITIVEN:
+ case PlSqlParser.POSITIVE:
+ case PlSqlParser.POST_TRANSACTION:
+ case PlSqlParser.POWERMULTISET_BY_CARDINALITY:
+ case PlSqlParser.POWERMULTISET:
+ case PlSqlParser.POWER:
+ case PlSqlParser.PQ_CONCURRENT_UNION:
+ case PlSqlParser.PQ_DISTRIBUTE:
+ case PlSqlParser.PQ_DISTRIBUTE_WINDOW:
+ case PlSqlParser.PQ_FILTER:
+ case PlSqlParser.PQ_MAP:
+ case PlSqlParser.PQ_NOMAP:
+ case PlSqlParser.PQ_REPLICATE:
+ case PlSqlParser.PQ_SKEW:
+ case PlSqlParser.PRAGMA:
+ case PlSqlParser.PREBUILT:
+ case PlSqlParser.PRECEDES:
+ case PlSqlParser.PRECEDING:
+ case PlSqlParser.PRECISION:
+ case PlSqlParser.PRECOMPUTE_SUBQUERY:
+ case PlSqlParser.PREDICATE_REORDERS:
+ case PlSqlParser.PRELOAD:
+ case PlSqlParser.PREPARE:
+ case PlSqlParser.PRESENTNNV:
+ case PlSqlParser.PRESENT:
+ case PlSqlParser.PRESENTV:
+ case PlSqlParser.PRESERVE_OID:
+ case PlSqlParser.PRESERVE:
+ case PlSqlParser.PRETTY:
+ case PlSqlParser.PREVIOUS:
+ case PlSqlParser.PREV:
+ case PlSqlParser.PRIMARY:
+ case PlSqlParser.PRINTBLOBTOCLOB:
+ case PlSqlParser.PRIORITY:
+ case PlSqlParser.PRIVATE:
+ case PlSqlParser.PRIVATE_SGA:
+ case PlSqlParser.PRIVILEGED:
+ case PlSqlParser.PRIVILEGE:
+ case PlSqlParser.PRIVILEGES:
+ case PlSqlParser.PROCEDURAL:
+ case PlSqlParser.PROCEDURE:
+ case PlSqlParser.PROCESS:
+ case PlSqlParser.PROFILE:
+ case PlSqlParser.PROGRAM:
+ case PlSqlParser.PROJECT:
+ case PlSqlParser.PROPAGATE:
+ case PlSqlParser.PROTECTED:
+ case PlSqlParser.PROTECTION:
+ case PlSqlParser.PROXY:
+ case PlSqlParser.PRUNING:
+ case PlSqlParser.PULL_PRED:
+ case PlSqlParser.PURGE:
+ case PlSqlParser.PUSH_PRED:
+ case PlSqlParser.PUSH_SUBQ:
+ case PlSqlParser.PX_FAULT_TOLERANCE:
+ case PlSqlParser.PX_GRANULE:
+ case PlSqlParser.PX_JOIN_FILTER:
+ case PlSqlParser.QB_NAME:
+ case PlSqlParser.QUERY_BLOCK:
+ case PlSqlParser.QUERY:
+ case PlSqlParser.QUEUE_CURR:
+ case PlSqlParser.QUEUE:
+ case PlSqlParser.QUEUE_ROWP:
+ case PlSqlParser.QUIESCE:
+ case PlSqlParser.QUORUM:
+ case PlSqlParser.QUOTA:
+ case PlSqlParser.RAISE:
+ case PlSqlParser.RANDOM_LOCAL:
+ case PlSqlParser.RANDOM:
+ case PlSqlParser.RANGE:
+ case PlSqlParser.RANKM:
+ case PlSqlParser.RAPIDLY:
+ case PlSqlParser.RAW:
+ case PlSqlParser.RAWTOHEX:
+ case PlSqlParser.RAWTONHEX:
+ case PlSqlParser.RBA:
+ case PlSqlParser.RBO_OUTLINE:
+ case PlSqlParser.RDBA:
+ case PlSqlParser.READ:
+ case PlSqlParser.READS:
+ case PlSqlParser.REALM:
+ case PlSqlParser.REAL:
+ case PlSqlParser.REBALANCE:
+ case PlSqlParser.REBUILD:
+ case PlSqlParser.RECORD:
+ case PlSqlParser.RECORDS_PER_BLOCK:
+ case PlSqlParser.RECOVERABLE:
+ case PlSqlParser.RECOVER:
+ case PlSqlParser.RECOVERY:
+ case PlSqlParser.RECYCLEBIN:
+ case PlSqlParser.RECYCLE:
+ case PlSqlParser.REDACTION:
+ case PlSqlParser.REDEFINE:
+ case PlSqlParser.REDO:
+ case PlSqlParser.REDUCED:
+ case PlSqlParser.REDUNDANCY:
+ case PlSqlParser.REF_CASCADE_CURSOR:
+ case PlSqlParser.REFERENCED:
+ case PlSqlParser.REFERENCE:
+ case PlSqlParser.REFERENCES:
+ case PlSqlParser.REFERENCING:
+ case PlSqlParser.REF:
+ case PlSqlParser.REFRESH:
+ case PlSqlParser.REFTOHEX:
+ case PlSqlParser.REGEXP_COUNT:
+ case PlSqlParser.REGEXP_INSTR:
+ case PlSqlParser.REGEXP_LIKE:
+ case PlSqlParser.REGEXP_REPLACE:
+ case PlSqlParser.REGEXP_SUBSTR:
+ case PlSqlParser.REGISTER:
+ case PlSqlParser.REGR_AVGX:
+ case PlSqlParser.REGR_AVGY:
+ case PlSqlParser.REGR_COUNT:
+ case PlSqlParser.REGR_INTERCEPT:
+ case PlSqlParser.REGR_R2:
+ case PlSqlParser.REGR_SLOPE:
+ case PlSqlParser.REGR_SXX:
+ case PlSqlParser.REGR_SXY:
+ case PlSqlParser.REGR_SYY:
+ case PlSqlParser.REGULAR:
+ case PlSqlParser.REJECT:
+ case PlSqlParser.REKEY:
+ case PlSqlParser.RELATIONAL:
+ case PlSqlParser.RELOCATE:
+ case PlSqlParser.RELY:
+ case PlSqlParser.REMAINDER:
+ case PlSqlParser.REMOTE_MAPPED:
+ case PlSqlParser.REMOVE:
+ case PlSqlParser.RENAME:
+ case PlSqlParser.REPAIR:
+ case PlSqlParser.REPEAT:
+ case PlSqlParser.REPLACE:
+ case PlSqlParser.REPLICATION:
+ case PlSqlParser.REQUIRED:
+ case PlSqlParser.RESETLOGS:
+ case PlSqlParser.RESET:
+ case PlSqlParser.RESIZE:
+ case PlSqlParser.RESOLVE:
+ case PlSqlParser.RESOLVER:
+ case PlSqlParser.RESPECT:
+ case PlSqlParser.RESTART:
+ case PlSqlParser.RESTORE_AS_INTERVALS:
+ case PlSqlParser.RESTORE:
+ case PlSqlParser.RESTRICT_ALL_REF_CONS:
+ case PlSqlParser.RESTRICTED:
+ case PlSqlParser.RESTRICT_REFERENCES:
+ case PlSqlParser.RESTRICT:
+ case PlSqlParser.RESULT_CACHE:
+ case PlSqlParser.RESULT:
+ case PlSqlParser.RESUMABLE:
+ case PlSqlParser.RESUME:
+ case PlSqlParser.RETENTION:
+ case PlSqlParser.RETRY_ON_ROW_CHANGE:
+ case PlSqlParser.RETURNING:
+ case PlSqlParser.RETURN:
+ case PlSqlParser.REUSE:
+ case PlSqlParser.REVERSE:
+ case PlSqlParser.REWRITE_OR_ERROR:
+ case PlSqlParser.REWRITE:
+ case PlSqlParser.RIGHT:
+ case PlSqlParser.ROLE:
+ case PlSqlParser.ROLESET:
+ case PlSqlParser.ROLES:
+ case PlSqlParser.ROLLBACK:
+ case PlSqlParser.ROLLING:
+ case PlSqlParser.ROLLUP:
+ case PlSqlParser.ROWDEPENDENCIES:
+ case PlSqlParser.ROWID_MAPPING_TABLE:
+ case PlSqlParser.ROWID:
+ case PlSqlParser.ROWIDTOCHAR:
+ case PlSqlParser.ROWIDTONCHAR:
+ case PlSqlParser.ROW_LENGTH:
+ case PlSqlParser.ROWNUM:
+ case PlSqlParser.ROW:
+ case PlSqlParser.ROWS:
+ case PlSqlParser.RPAD:
+ case PlSqlParser.RTRIM:
+ case PlSqlParser.RULE:
+ case PlSqlParser.RULES:
+ case PlSqlParser.RUNNING:
+ case PlSqlParser.SALT:
+ case PlSqlParser.SAMPLE:
+ case PlSqlParser.SAVE_AS_INTERVALS:
+ case PlSqlParser.SAVEPOINT:
+ case PlSqlParser.SAVE:
+ case PlSqlParser.SB4:
+ case PlSqlParser.SCALE_ROWS:
+ case PlSqlParser.SCALE:
+ case PlSqlParser.SCAN_INSTANCES:
+ case PlSqlParser.SCAN:
+ case PlSqlParser.SCHEDULER:
+ case PlSqlParser.SCHEMACHECK:
+ case PlSqlParser.SCHEMA:
+ case PlSqlParser.SCN_ASCENDING:
+ case PlSqlParser.SCN:
+ case PlSqlParser.SCOPE:
+ case PlSqlParser.SCRUB:
+ case PlSqlParser.SD_ALL:
+ case PlSqlParser.SD_INHIBIT:
+ case PlSqlParser.SDO_GEOM_MBR:
+ case PlSqlParser.SD_SHOW:
+ case PlSqlParser.SEARCH:
+ case PlSqlParser.SECOND:
+ case PlSqlParser.SECRET:
+ case PlSqlParser.SECUREFILE_DBA:
+ case PlSqlParser.SECUREFILE:
+ case PlSqlParser.SECURITY:
+ case PlSqlParser.SEED:
+ case PlSqlParser.SEG_BLOCK:
+ case PlSqlParser.SEG_FILE:
+ case PlSqlParser.SEGMENT:
+ case PlSqlParser.SELECTIVITY:
+ case PlSqlParser.SELF:
+ case PlSqlParser.SEMIJOIN_DRIVER:
+ case PlSqlParser.SEMIJOIN:
+ case PlSqlParser.SEMI_TO_INNER:
+ case PlSqlParser.SEQUENCED:
+ case PlSqlParser.SEQUENCE:
+ case PlSqlParser.SEQUENTIAL:
+ case PlSqlParser.SERIALIZABLE:
+ case PlSqlParser.SERIALLY_REUSABLE:
+ case PlSqlParser.SERIAL:
+ case PlSqlParser.SERVERERROR:
+ case PlSqlParser.SERVICE_NAME_CONVERT:
+ case PlSqlParser.SERVICES:
+ case PlSqlParser.SESSION_CACHED_CURSORS:
+ case PlSqlParser.SESSION:
+ case PlSqlParser.SESSIONS_PER_USER:
+ case PlSqlParser.SESSIONTIMEZONE:
+ case PlSqlParser.SESSIONTZNAME:
+ case PlSqlParser.SET:
+ case PlSqlParser.SETS:
+ case PlSqlParser.SETTINGS:
+ case PlSqlParser.SET_TO_JOIN:
+ case PlSqlParser.SEVERE:
+ case PlSqlParser.SHARED_POOL:
+ case PlSqlParser.SHARED:
+ case PlSqlParser.SHARING:
+ case PlSqlParser.SHELFLIFE:
+ case PlSqlParser.SHOW:
+ case PlSqlParser.SHRINK:
+ case PlSqlParser.SHUTDOWN:
+ case PlSqlParser.SIBLINGS:
+ case PlSqlParser.SID:
+ case PlSqlParser.SIGNAL_COMPONENT:
+ case PlSqlParser.SIGNAL_FUNCTION:
+ case PlSqlParser.SIGN:
+ case PlSqlParser.SIGNTYPE:
+ case PlSqlParser.SIMPLE_INTEGER:
+ case PlSqlParser.SIMPLE:
+ case PlSqlParser.SINGLE:
+ case PlSqlParser.SINGLETASK:
+ case PlSqlParser.SINH:
+ case PlSqlParser.SIN:
+ case PlSqlParser.SKIP_EXT_OPTIMIZER:
+ case PlSqlParser.SKIP_:
+ case PlSqlParser.SKIP_UNQ_UNUSABLE_IDX:
+ case PlSqlParser.SKIP_UNUSABLE_INDEXES:
+ case PlSqlParser.SMALLFILE:
+ case PlSqlParser.SMALLINT:
+ case PlSqlParser.SNAPSHOT:
+ case PlSqlParser.SOME:
+ case PlSqlParser.SORT:
+ case PlSqlParser.SOUNDEX:
+ case PlSqlParser.SOURCE_FILE_DIRECTORY:
+ case PlSqlParser.SOURCE_FILE_NAME_CONVERT:
+ case PlSqlParser.SOURCE:
+ case PlSqlParser.SPACE_KEYWORD:
+ case PlSqlParser.SPECIFICATION:
+ case PlSqlParser.SPFILE:
+ case PlSqlParser.SPLIT:
+ case PlSqlParser.SPREADSHEET:
+ case PlSqlParser.SQLDATA:
+ case PlSqlParser.SQLERROR:
+ case PlSqlParser.SQLLDR:
+ case PlSqlParser.SQL:
+ case PlSqlParser.SQL_TRACE:
+ case PlSqlParser.SQL_TRANSLATION_PROFILE:
+ case PlSqlParser.SQRT:
+ case PlSqlParser.STALE:
+ case PlSqlParser.STANDALONE:
+ case PlSqlParser.STANDARD_HASH:
+ case PlSqlParser.STANDBY_MAX_DATA_DELAY:
+ case PlSqlParser.STANDBYS:
+ case PlSqlParser.STANDBY:
+ case PlSqlParser.STAR:
+ case PlSqlParser.STAR_TRANSFORMATION:
+ case PlSqlParser.STARTUP:
+ case PlSqlParser.STATEMENT_ID:
+ case PlSqlParser.STATEMENT_QUEUING:
+ case PlSqlParser.STATEMENTS:
+ case PlSqlParser.STATEMENT:
+ case PlSqlParser.STATE:
+ case PlSqlParser.STATIC:
+ case PlSqlParser.STATISTICS:
+ case PlSqlParser.STATS_BINOMIAL_TEST:
+ case PlSqlParser.STATS_CROSSTAB:
+ case PlSqlParser.STATS_F_TEST:
+ case PlSqlParser.STATS_KS_TEST:
+ case PlSqlParser.STATS_MODE:
+ case PlSqlParser.STATS_MW_TEST:
+ case PlSqlParser.STATS_ONE_WAY_ANOVA:
+ case PlSqlParser.STATS_T_TEST_INDEP:
+ case PlSqlParser.STATS_T_TEST_INDEPU:
+ case PlSqlParser.STATS_T_TEST_ONE:
+ case PlSqlParser.STATS_T_TEST_PAIRED:
+ case PlSqlParser.STATS_WSR_TEST:
+ case PlSqlParser.STDDEV_POP:
+ case PlSqlParser.STDDEV_SAMP:
+ case PlSqlParser.STOP:
+ case PlSqlParser.STORAGE:
+ case PlSqlParser.STORE:
+ case PlSqlParser.STREAMS:
+ case PlSqlParser.STREAM:
+ case PlSqlParser.STRICT:
+ case PlSqlParser.STRING:
+ case PlSqlParser.STRIPE_COLUMNS:
+ case PlSqlParser.STRIPE_WIDTH:
+ case PlSqlParser.STRIP:
+ case PlSqlParser.STRUCTURE:
+ case PlSqlParser.SUBMULTISET:
+ case PlSqlParser.SUBPARTITION_REL:
+ case PlSqlParser.SUBPARTITIONS:
+ case PlSqlParser.SUBPARTITION:
+ case PlSqlParser.SUBQUERIES:
+ case PlSqlParser.SUBQUERY_PRUNING:
+ case PlSqlParser.SUBSCRIBE:
+ case PlSqlParser.SUBSET:
+ case PlSqlParser.SUBSTITUTABLE:
+ case PlSqlParser.SUBSTR2:
+ case PlSqlParser.SUBSTR4:
+ case PlSqlParser.SUBSTRB:
+ case PlSqlParser.SUBSTRC:
+ case PlSqlParser.SUBTYPE:
+ case PlSqlParser.SUCCESSFUL:
+ case PlSqlParser.SUCCESS:
+ case PlSqlParser.SUMMARY:
+ case PlSqlParser.SUPPLEMENTAL:
+ case PlSqlParser.SUSPEND:
+ case PlSqlParser.SWAP_JOIN_INPUTS:
+ case PlSqlParser.SWITCHOVER:
+ case PlSqlParser.SWITCH:
+ case PlSqlParser.SYNCHRONOUS:
+ case PlSqlParser.SYNC:
+ case PlSqlParser.SYSASM:
+ case PlSqlParser.SYS_AUDIT:
+ case PlSqlParser.SYSAUX:
+ case PlSqlParser.SYSBACKUP:
+ case PlSqlParser.SYS_CHECKACL:
+ case PlSqlParser.SYS_CHECK_PRIVILEGE:
+ case PlSqlParser.SYS_CONNECT_BY_PATH:
+ case PlSqlParser.SYS_CONTEXT:
+ case PlSqlParser.SYSDATE:
+ case PlSqlParser.SYSDBA:
+ case PlSqlParser.SYS_DBURIGEN:
+ case PlSqlParser.SYSDG:
+ case PlSqlParser.SYS_DL_CURSOR:
+ case PlSqlParser.SYS_DM_RXFORM_CHR:
+ case PlSqlParser.SYS_DM_RXFORM_NUM:
+ case PlSqlParser.SYS_DOM_COMPARE:
+ case PlSqlParser.SYS_DST_PRIM2SEC:
+ case PlSqlParser.SYS_DST_SEC2PRIM:
+ case PlSqlParser.SYS_ET_BFILE_TO_RAW:
+ case PlSqlParser.SYS_ET_BLOB_TO_IMAGE:
+ case PlSqlParser.SYS_ET_IMAGE_TO_BLOB:
+ case PlSqlParser.SYS_ET_RAW_TO_BFILE:
+ case PlSqlParser.SYS_EXTPDTXT:
+ case PlSqlParser.SYS_EXTRACT_UTC:
+ case PlSqlParser.SYS_FBT_INSDEL:
+ case PlSqlParser.SYS_FILTER_ACLS:
+ case PlSqlParser.SYS_FNMATCHES:
+ case PlSqlParser.SYS_FNREPLACE:
+ case PlSqlParser.SYS_GET_ACLIDS:
+ case PlSqlParser.SYS_GET_COL_ACLIDS:
+ case PlSqlParser.SYS_GET_PRIVILEGES:
+ case PlSqlParser.SYS_GETTOKENID:
+ case PlSqlParser.SYS_GETXTIVAL:
+ case PlSqlParser.SYS_GUID:
+ case PlSqlParser.SYSGUID:
+ case PlSqlParser.SYSKM:
+ case PlSqlParser.SYS_MAKE_XMLNODEID:
+ case PlSqlParser.SYS_MAKEXML:
+ case PlSqlParser.SYS_MKXMLATTR:
+ case PlSqlParser.SYS_MKXTI:
+ case PlSqlParser.SYSOBJ:
+ case PlSqlParser.SYS_OP_ADT2BIN:
+ case PlSqlParser.SYS_OP_ADTCONS:
+ case PlSqlParser.SYS_OP_ALSCRVAL:
+ case PlSqlParser.SYS_OP_ATG:
+ case PlSqlParser.SYS_OP_BIN2ADT:
+ case PlSqlParser.SYS_OP_BITVEC:
+ case PlSqlParser.SYS_OP_BL2R:
+ case PlSqlParser.SYS_OP_BLOOM_FILTER_LIST:
+ case PlSqlParser.SYS_OP_BLOOM_FILTER:
+ case PlSqlParser.SYS_OP_C2C:
+ case PlSqlParser.SYS_OP_CAST:
+ case PlSqlParser.SYS_OP_CEG:
+ case PlSqlParser.SYS_OP_CL2C:
+ case PlSqlParser.SYS_OP_COMBINED_HASH:
+ case PlSqlParser.SYS_OP_COMP:
+ case PlSqlParser.SYS_OP_CONVERT:
+ case PlSqlParser.SYS_OP_COUNTCHG:
+ case PlSqlParser.SYS_OP_CSCONV:
+ case PlSqlParser.SYS_OP_CSCONVTEST:
+ case PlSqlParser.SYS_OP_CSR:
+ case PlSqlParser.SYS_OP_CSX_PATCH:
+ case PlSqlParser.SYS_OP_CYCLED_SEQ:
+ case PlSqlParser.SYS_OP_DECOMP:
+ case PlSqlParser.SYS_OP_DESCEND:
+ case PlSqlParser.SYS_OP_DISTINCT:
+ case PlSqlParser.SYS_OP_DRA:
+ case PlSqlParser.SYS_OP_DUMP:
+ case PlSqlParser.SYS_OP_DV_CHECK:
+ case PlSqlParser.SYS_OP_ENFORCE_NOT_NULL:
+ case PlSqlParser.SYSOPER:
+ case PlSqlParser.SYS_OP_EXTRACT:
+ case PlSqlParser.SYS_OP_GROUPING:
+ case PlSqlParser.SYS_OP_GUID:
+ case PlSqlParser.SYS_OP_HASH:
+ case PlSqlParser.SYS_OP_IIX:
+ case PlSqlParser.SYS_OP_ITR:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_CREATE:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_FILTER_LIST:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_FILTER:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_SUCCEEDED:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_USE:
+ case PlSqlParser.SYS_OP_LBID:
+ case PlSqlParser.SYS_OP_LOBLOC2BLOB:
+ case PlSqlParser.SYS_OP_LOBLOC2CLOB:
+ case PlSqlParser.SYS_OP_LOBLOC2ID:
+ case PlSqlParser.SYS_OP_LOBLOC2NCLOB:
+ case PlSqlParser.SYS_OP_LOBLOC2TYP:
+ case PlSqlParser.SYS_OP_LSVI:
+ case PlSqlParser.SYS_OP_LVL:
+ case PlSqlParser.SYS_OP_MAKEOID:
+ case PlSqlParser.SYS_OP_MAP_NONNULL:
+ case PlSqlParser.SYS_OP_MSR:
+ case PlSqlParser.SYS_OP_NICOMBINE:
+ case PlSqlParser.SYS_OP_NIEXTRACT:
+ case PlSqlParser.SYS_OP_NII:
+ case PlSqlParser.SYS_OP_NIX:
+ case PlSqlParser.SYS_OP_NOEXPAND:
+ case PlSqlParser.SYS_OP_NTCIMG:
+ case PlSqlParser.SYS_OP_NUMTORAW:
+ case PlSqlParser.SYS_OP_OIDVALUE:
+ case PlSqlParser.SYS_OP_OPNSIZE:
+ case PlSqlParser.SYS_OP_PAR_1:
+ case PlSqlParser.SYS_OP_PARGID_1:
+ case PlSqlParser.SYS_OP_PARGID:
+ case PlSqlParser.SYS_OP_PAR:
+ case PlSqlParser.SYS_OP_PART_ID:
+ case PlSqlParser.SYS_OP_PIVOT:
+ case PlSqlParser.SYS_OP_R2O:
+ case PlSqlParser.SYS_OP_RAWTONUM:
+ case PlSqlParser.SYS_OP_RDTM:
+ case PlSqlParser.SYS_OP_REF:
+ case PlSqlParser.SYS_OP_RMTD:
+ case PlSqlParser.SYS_OP_ROWIDTOOBJ:
+ case PlSqlParser.SYS_OP_RPB:
+ case PlSqlParser.SYS_OPTLOBPRBSC:
+ case PlSqlParser.SYS_OP_TOSETID:
+ case PlSqlParser.SYS_OP_TPR:
+ case PlSqlParser.SYS_OP_TRTB:
+ case PlSqlParser.SYS_OPTXICMP:
+ case PlSqlParser.SYS_OPTXQCASTASNQ:
+ case PlSqlParser.SYS_OP_UNDESCEND:
+ case PlSqlParser.SYS_OP_VECAND:
+ case PlSqlParser.SYS_OP_VECBIT:
+ case PlSqlParser.SYS_OP_VECOR:
+ case PlSqlParser.SYS_OP_VECXOR:
+ case PlSqlParser.SYS_OP_VERSION:
+ case PlSqlParser.SYS_OP_VREF:
+ case PlSqlParser.SYS_OP_VVD:
+ case PlSqlParser.SYS_OP_XMLCONS_FOR_CSX:
+ case PlSqlParser.SYS_OP_XPTHATG:
+ case PlSqlParser.SYS_OP_XPTHIDX:
+ case PlSqlParser.SYS_OP_XPTHOP:
+ case PlSqlParser.SYS_OP_XTXT2SQLT:
+ case PlSqlParser.SYS_OP_ZONE_ID:
+ case PlSqlParser.SYS_ORDERKEY_DEPTH:
+ case PlSqlParser.SYS_ORDERKEY_MAXCHILD:
+ case PlSqlParser.SYS_ORDERKEY_PARENT:
+ case PlSqlParser.SYS_PARALLEL_TXN:
+ case PlSqlParser.SYS_PATHID_IS_ATTR:
+ case PlSqlParser.SYS_PATHID_IS_NMSPC:
+ case PlSqlParser.SYS_PATHID_LASTNAME:
+ case PlSqlParser.SYS_PATHID_LASTNMSPC:
+ case PlSqlParser.SYS_PATH_REVERSE:
+ case PlSqlParser.SYS_PXQEXTRACT:
+ case PlSqlParser.SYS_RAW_TO_XSID:
+ case PlSqlParser.SYS_RID_ORDER:
+ case PlSqlParser.SYS_ROW_DELTA:
+ case PlSqlParser.SYS_SC_2_XMLT:
+ case PlSqlParser.SYS_SYNRCIREDO:
+ case PlSqlParser.SYSTEM_DEFINED:
+ case PlSqlParser.SYSTEM:
+ case PlSqlParser.SYSTIMESTAMP:
+ case PlSqlParser.SYS_TYPEID:
+ case PlSqlParser.SYS_UMAKEXML:
+ case PlSqlParser.SYS_XMLANALYZE:
+ case PlSqlParser.SYS_XMLCONTAINS:
+ case PlSqlParser.SYS_XMLCONV:
+ case PlSqlParser.SYS_XMLEXNSURI:
+ case PlSqlParser.SYS_XMLGEN:
+ case PlSqlParser.SYS_XMLI_LOC_ISNODE:
+ case PlSqlParser.SYS_XMLI_LOC_ISTEXT:
+ case PlSqlParser.SYS_XMLINSTR:
+ case PlSqlParser.SYS_XMLLOCATOR_GETSVAL:
+ case PlSqlParser.SYS_XMLNODEID_GETCID:
+ case PlSqlParser.SYS_XMLNODEID_GETLOCATOR:
+ case PlSqlParser.SYS_XMLNODEID_GETOKEY:
+ case PlSqlParser.SYS_XMLNODEID_GETPATHID:
+ case PlSqlParser.SYS_XMLNODEID_GETPTRID:
+ case PlSqlParser.SYS_XMLNODEID_GETRID:
+ case PlSqlParser.SYS_XMLNODEID_GETSVAL:
+ case PlSqlParser.SYS_XMLNODEID_GETTID:
+ case PlSqlParser.SYS_XMLNODEID:
+ case PlSqlParser.SYS_XMLT_2_SC:
+ case PlSqlParser.SYS_XMLTRANSLATE:
+ case PlSqlParser.SYS_XMLTYPE2SQL:
+ case PlSqlParser.SYS_XQ_ASQLCNV:
+ case PlSqlParser.SYS_XQ_ATOMCNVCHK:
+ case PlSqlParser.SYS_XQBASEURI:
+ case PlSqlParser.SYS_XQCASTABLEERRH:
+ case PlSqlParser.SYS_XQCODEP2STR:
+ case PlSqlParser.SYS_XQCODEPEQ:
+ case PlSqlParser.SYS_XQCON2SEQ:
+ case PlSqlParser.SYS_XQCONCAT:
+ case PlSqlParser.SYS_XQDELETE:
+ case PlSqlParser.SYS_XQDFLTCOLATION:
+ case PlSqlParser.SYS_XQDOC:
+ case PlSqlParser.SYS_XQDOCURI:
+ case PlSqlParser.SYS_XQDURDIV:
+ case PlSqlParser.SYS_XQED4URI:
+ case PlSqlParser.SYS_XQENDSWITH:
+ case PlSqlParser.SYS_XQERRH:
+ case PlSqlParser.SYS_XQERR:
+ case PlSqlParser.SYS_XQESHTMLURI:
+ case PlSqlParser.SYS_XQEXLOBVAL:
+ case PlSqlParser.SYS_XQEXSTWRP:
+ case PlSqlParser.SYS_XQEXTRACT:
+ case PlSqlParser.SYS_XQEXTRREF:
+ case PlSqlParser.SYS_XQEXVAL:
+ case PlSqlParser.SYS_XQFB2STR:
+ case PlSqlParser.SYS_XQFNBOOL:
+ case PlSqlParser.SYS_XQFNCMP:
+ case PlSqlParser.SYS_XQFNDATIM:
+ case PlSqlParser.SYS_XQFNLNAME:
+ case PlSqlParser.SYS_XQFNNM:
+ case PlSqlParser.SYS_XQFNNSURI:
+ case PlSqlParser.SYS_XQFNPREDTRUTH:
+ case PlSqlParser.SYS_XQFNQNM:
+ case PlSqlParser.SYS_XQFNROOT:
+ case PlSqlParser.SYS_XQFORMATNUM:
+ case PlSqlParser.SYS_XQFTCONTAIN:
+ case PlSqlParser.SYS_XQFUNCR:
+ case PlSqlParser.SYS_XQGETCONTENT:
+ case PlSqlParser.SYS_XQINDXOF:
+ case PlSqlParser.SYS_XQINSERT:
+ case PlSqlParser.SYS_XQINSPFX:
+ case PlSqlParser.SYS_XQIRI2URI:
+ case PlSqlParser.SYS_XQLANG:
+ case PlSqlParser.SYS_XQLLNMFRMQNM:
+ case PlSqlParser.SYS_XQMKNODEREF:
+ case PlSqlParser.SYS_XQNILLED:
+ case PlSqlParser.SYS_XQNODENAME:
+ case PlSqlParser.SYS_XQNORMSPACE:
+ case PlSqlParser.SYS_XQNORMUCODE:
+ case PlSqlParser.SYS_XQ_NRNG:
+ case PlSqlParser.SYS_XQNSP4PFX:
+ case PlSqlParser.SYS_XQNSPFRMQNM:
+ case PlSqlParser.SYS_XQPFXFRMQNM:
+ case PlSqlParser.SYS_XQ_PKSQL2XML:
+ case PlSqlParser.SYS_XQPOLYABS:
+ case PlSqlParser.SYS_XQPOLYADD:
+ case PlSqlParser.SYS_XQPOLYCEL:
+ case PlSqlParser.SYS_XQPOLYCSTBL:
+ case PlSqlParser.SYS_XQPOLYCST:
+ case PlSqlParser.SYS_XQPOLYDIV:
+ case PlSqlParser.SYS_XQPOLYFLR:
+ case PlSqlParser.SYS_XQPOLYMOD:
+ case PlSqlParser.SYS_XQPOLYMUL:
+ case PlSqlParser.SYS_XQPOLYRND:
+ case PlSqlParser.SYS_XQPOLYSQRT:
+ case PlSqlParser.SYS_XQPOLYSUB:
+ case PlSqlParser.SYS_XQPOLYUMUS:
+ case PlSqlParser.SYS_XQPOLYUPLS:
+ case PlSqlParser.SYS_XQPOLYVEQ:
+ case PlSqlParser.SYS_XQPOLYVGE:
+ case PlSqlParser.SYS_XQPOLYVGT:
+ case PlSqlParser.SYS_XQPOLYVLE:
+ case PlSqlParser.SYS_XQPOLYVLT:
+ case PlSqlParser.SYS_XQPOLYVNE:
+ case PlSqlParser.SYS_XQREF2VAL:
+ case PlSqlParser.SYS_XQRENAME:
+ case PlSqlParser.SYS_XQREPLACE:
+ case PlSqlParser.SYS_XQRESVURI:
+ case PlSqlParser.SYS_XQRNDHALF2EVN:
+ case PlSqlParser.SYS_XQRSLVQNM:
+ case PlSqlParser.SYS_XQRYENVPGET:
+ case PlSqlParser.SYS_XQRYVARGET:
+ case PlSqlParser.SYS_XQRYWRP:
+ case PlSqlParser.SYS_XQSEQ2CON4XC:
+ case PlSqlParser.SYS_XQSEQ2CON:
+ case PlSqlParser.SYS_XQSEQDEEPEQ:
+ case PlSqlParser.SYS_XQSEQINSB:
+ case PlSqlParser.SYS_XQSEQRM:
+ case PlSqlParser.SYS_XQSEQRVS:
+ case PlSqlParser.SYS_XQSEQSUB:
+ case PlSqlParser.SYS_XQSEQTYPMATCH:
+ case PlSqlParser.SYS_XQSTARTSWITH:
+ case PlSqlParser.SYS_XQSTATBURI:
+ case PlSqlParser.SYS_XQSTR2CODEP:
+ case PlSqlParser.SYS_XQSTRJOIN:
+ case PlSqlParser.SYS_XQSUBSTRAFT:
+ case PlSqlParser.SYS_XQSUBSTRBEF:
+ case PlSqlParser.SYS_XQTOKENIZE:
+ case PlSqlParser.SYS_XQTREATAS:
+ case PlSqlParser.SYS_XQ_UPKXML2SQL:
+ case PlSqlParser.SYS_XQXFORM:
+ case PlSqlParser.SYS_XSID_TO_RAW:
+ case PlSqlParser.SYS_ZMAP_FILTER:
+ case PlSqlParser.SYS_ZMAP_REFRESH:
+ case PlSqlParser.TABLE_LOOKUP_BY_NL:
+ case PlSqlParser.TABLESPACE_NO:
+ case PlSqlParser.TABLESPACE:
+ case PlSqlParser.TABLES:
+ case PlSqlParser.TABLE_STATS:
+ case PlSqlParser.TABLE:
+ case PlSqlParser.TABNO:
+ case PlSqlParser.TAG:
+ case PlSqlParser.TANH:
+ case PlSqlParser.TAN:
+ case PlSqlParser.TBLORIDXPARTNUM:
+ case PlSqlParser.TEMPFILE:
+ case PlSqlParser.TEMPLATE:
+ case PlSqlParser.TEMPORARY:
+ case PlSqlParser.TEMP_TABLE:
+ case PlSqlParser.TEST:
+ case PlSqlParser.TEXT:
+ case PlSqlParser.THAN:
+ case PlSqlParser.THEN:
+ case PlSqlParser.THE:
+ case PlSqlParser.THREAD:
+ case PlSqlParser.THROUGH:
+ case PlSqlParser.TIER:
+ case PlSqlParser.TIES:
+ case PlSqlParser.TIMEOUT:
+ case PlSqlParser.TIMESTAMP_LTZ_UNCONSTRAINED:
+ case PlSqlParser.TIMESTAMP:
+ case PlSqlParser.TIMESTAMP_TZ_UNCONSTRAINED:
+ case PlSqlParser.TIMESTAMP_UNCONSTRAINED:
+ case PlSqlParser.TIMES:
+ case PlSqlParser.TIME:
+ case PlSqlParser.TIMEZONE_ABBR:
+ case PlSqlParser.TIMEZONE_HOUR:
+ case PlSqlParser.TIMEZONE_MINUTE:
+ case PlSqlParser.TIMEZONE_OFFSET:
+ case PlSqlParser.TIMEZONE_REGION:
+ case PlSqlParser.TIME_ZONE:
+ case PlSqlParser.TIV_GB:
+ case PlSqlParser.TIV_SSF:
+ case PlSqlParser.TO_ACLID:
+ case PlSqlParser.TO_BINARY_DOUBLE:
+ case PlSqlParser.TO_BINARY_FLOAT:
+ case PlSqlParser.TO_BLOB:
+ case PlSqlParser.TO_CLOB:
+ case PlSqlParser.TO_DSINTERVAL:
+ case PlSqlParser.TO_LOB:
+ case PlSqlParser.TO_MULTI_BYTE:
+ case PlSqlParser.TO_NCHAR:
+ case PlSqlParser.TO_NCLOB:
+ case PlSqlParser.TO_NUMBER:
+ case PlSqlParser.TOPLEVEL:
+ case PlSqlParser.TO_SINGLE_BYTE:
+ case PlSqlParser.TO_TIMESTAMP:
+ case PlSqlParser.TO_TIMESTAMP_TZ:
+ case PlSqlParser.TO_TIME:
+ case PlSqlParser.TO_TIME_TZ:
+ case PlSqlParser.TO_YMINTERVAL:
+ case PlSqlParser.TRACE:
+ case PlSqlParser.TRACING:
+ case PlSqlParser.TRACKING:
+ case PlSqlParser.TRAILING:
+ case PlSqlParser.TRANSACTION:
+ case PlSqlParser.TRANSFORM_DISTINCT_AGG:
+ case PlSqlParser.TRANSITIONAL:
+ case PlSqlParser.TRANSITION:
+ case PlSqlParser.TRANSLATE:
+ case PlSqlParser.TRANSLATION:
+ case PlSqlParser.TREAT:
+ case PlSqlParser.TRIGGERS:
+ case PlSqlParser.TRIGGER:
+ case PlSqlParser.TRUE:
+ case PlSqlParser.TRUNCATE:
+ case PlSqlParser.TRUNC:
+ case PlSqlParser.TRUSTED:
+ case PlSqlParser.TRUST:
+ case PlSqlParser.TUNING:
+ case PlSqlParser.TX:
+ case PlSqlParser.TYPES:
+ case PlSqlParser.TYPE:
+ case PlSqlParser.TZ_OFFSET:
+ case PlSqlParser.UB2:
+ case PlSqlParser.UBA:
+ case PlSqlParser.UCS2:
+ case PlSqlParser.UID:
+ case PlSqlParser.UNARCHIVED:
+ case PlSqlParser.UNBOUNDED:
+ case PlSqlParser.UNBOUND:
+ case PlSqlParser.UNCONDITIONAL:
+ case PlSqlParser.UNDER:
+ case PlSqlParser.UNDO:
+ case PlSqlParser.UNDROP:
+ case PlSqlParser.UNIFORM:
+ case PlSqlParser.UNISTR:
+ case PlSqlParser.UNLIMITED:
+ case PlSqlParser.UNLOAD:
+ case PlSqlParser.UNLOCK:
+ case PlSqlParser.UNMATCHED:
+ case PlSqlParser.UNNEST_INNERJ_DISTINCT_VIEW:
+ case PlSqlParser.UNNEST_NOSEMIJ_NODISTINCTVIEW:
+ case PlSqlParser.UNNEST_SEMIJ_VIEW:
+ case PlSqlParser.UNNEST:
+ case PlSqlParser.UNPACKED:
+ case PlSqlParser.UNPIVOT:
+ case PlSqlParser.UNPLUG:
+ case PlSqlParser.UNPROTECTED:
+ case PlSqlParser.UNQUIESCE:
+ case PlSqlParser.UNRECOVERABLE:
+ case PlSqlParser.UNRESTRICTED:
+ case PlSqlParser.UNSUBSCRIBE:
+ case PlSqlParser.UNTIL:
+ case PlSqlParser.UNUSABLE:
+ case PlSqlParser.UNUSED:
+ case PlSqlParser.UPDATABLE:
+ case PlSqlParser.UPDATED:
+ case PlSqlParser.UPDATEXML:
+ case PlSqlParser.UPD_INDEXES:
+ case PlSqlParser.UPD_JOININDEX:
+ case PlSqlParser.UPGRADE:
+ case PlSqlParser.UPPER:
+ case PlSqlParser.UPSERT:
+ case PlSqlParser.UROWID:
+ case PlSqlParser.USABLE:
+ case PlSqlParser.USAGE:
+ case PlSqlParser.USE_ANTI:
+ case PlSqlParser.USE_CONCAT:
+ case PlSqlParser.USE_CUBE:
+ case PlSqlParser.USE_HASH_AGGREGATION:
+ case PlSqlParser.USE_HASH_GBY_FOR_PUSHDOWN:
+ case PlSqlParser.USE_HASH:
+ case PlSqlParser.USE_HIDDEN_PARTITIONS:
+ case PlSqlParser.USE_INVISIBLE_INDEXES:
+ case PlSqlParser.USE_MERGE_CARTESIAN:
+ case PlSqlParser.USE_MERGE:
+ case PlSqlParser.USE_NL:
+ case PlSqlParser.USE_NL_WITH_INDEX:
+ case PlSqlParser.USE_PRIVATE_OUTLINES:
+ case PlSqlParser.USER_DATA:
+ case PlSqlParser.USER_DEFINED:
+ case PlSqlParser.USERENV:
+ case PlSqlParser.USERGROUP:
+ case PlSqlParser.USER_RECYCLEBIN:
+ case PlSqlParser.USERS:
+ case PlSqlParser.USER_TABLESPACES:
+ case PlSqlParser.USER:
+ case PlSqlParser.USE_SEMI:
+ case PlSqlParser.USE_STORED_OUTLINES:
+ case PlSqlParser.USE_TTT_FOR_GSETS:
+ case PlSqlParser.USE:
+ case PlSqlParser.USE_VECTOR_AGGREGATION:
+ case PlSqlParser.USE_WEAK_NAME_RESL:
+ case PlSqlParser.USING_NO_EXPAND:
+ case PlSqlParser.USING:
+ case PlSqlParser.UTF16BE:
+ case PlSqlParser.UTF16LE:
+ case PlSqlParser.UTF32:
+ case PlSqlParser.UTF8:
+ case PlSqlParser.V1:
+ case PlSqlParser.V2:
+ case PlSqlParser.VALIDATE:
+ case PlSqlParser.VALIDATION:
+ case PlSqlParser.VALID_TIME_END:
+ case PlSqlParser.VALUE:
+ case PlSqlParser.VARCHAR2:
+ case PlSqlParser.VARCHAR:
+ case PlSqlParser.VARIABLE:
+ case PlSqlParser.VAR_POP:
+ case PlSqlParser.VARRAYS:
+ case PlSqlParser.VARRAY:
+ case PlSqlParser.VAR_SAMP:
+ case PlSqlParser.VARYING:
+ case PlSqlParser.VECTOR_READ_TRACE:
+ case PlSqlParser.VECTOR_READ:
+ case PlSqlParser.VECTOR_TRANSFORM_DIMS:
+ case PlSqlParser.VECTOR_TRANSFORM_FACT:
+ case PlSqlParser.VECTOR_TRANSFORM:
+ case PlSqlParser.VERIFIER:
+ case PlSqlParser.VERIFY:
+ case PlSqlParser.VERSIONING:
+ case PlSqlParser.VERSIONS_ENDSCN:
+ case PlSqlParser.VERSIONS_ENDTIME:
+ case PlSqlParser.VERSIONS_OPERATION:
+ case PlSqlParser.VERSIONS_STARTSCN:
+ case PlSqlParser.VERSIONS_STARTTIME:
+ case PlSqlParser.VERSIONS:
+ case PlSqlParser.VERSIONS_XID:
+ case PlSqlParser.VERSION:
+ case PlSqlParser.VIOLATION:
+ case PlSqlParser.VIRTUAL:
+ case PlSqlParser.VISIBILITY:
+ case PlSqlParser.VISIBLE:
+ case PlSqlParser.VOLUME:
+ case PlSqlParser.VSIZE:
+ case PlSqlParser.WAIT:
+ case PlSqlParser.WALLET:
+ case PlSqlParser.WARNING:
+ case PlSqlParser.WEEKS:
+ case PlSqlParser.WEEK:
+ case PlSqlParser.WELLFORMED:
+ case PlSqlParser.WHENEVER:
+ case PlSqlParser.WHEN:
+ case PlSqlParser.WHILE:
+ case PlSqlParser.WHITESPACE:
+ case PlSqlParser.WIDTH_BUCKET:
+ case PlSqlParser.WITHIN:
+ case PlSqlParser.WITHOUT:
+ case PlSqlParser.WITH_PLSQL:
+ case PlSqlParser.WORK:
+ case PlSqlParser.WRAPPED:
+ case PlSqlParser.WRAPPER:
+ case PlSqlParser.WRITE:
+ case PlSqlParser.XDB_FASTPATH_INSERT:
+ case PlSqlParser.X_DYN_PRUNE:
+ case PlSqlParser.XID:
+ case PlSqlParser.XML2OBJECT:
+ case PlSqlParser.XMLAGG:
+ case PlSqlParser.XMLATTRIBUTES:
+ case PlSqlParser.XMLCAST:
+ case PlSqlParser.XMLCDATA:
+ case PlSqlParser.XMLCOLATTVAL:
+ case PlSqlParser.XMLCOMMENT:
+ case PlSqlParser.XMLCONCAT:
+ case PlSqlParser.XMLDIFF:
+ case PlSqlParser.XML_DML_RWT_STMT:
+ case PlSqlParser.XMLELEMENT:
+ case PlSqlParser.XMLEXISTS2:
+ case PlSqlParser.XMLEXISTS:
+ case PlSqlParser.XMLFOREST:
+ case PlSqlParser.XMLINDEX_REWRITE_IN_SELECT:
+ case PlSqlParser.XMLINDEX_REWRITE:
+ case PlSqlParser.XMLINDEX_SEL_IDX_TBL:
+ case PlSqlParser.XMLISNODE:
+ case PlSqlParser.XMLISVALID:
+ case PlSqlParser.XMLNAMESPACES:
+ case PlSqlParser.XMLPARSE:
+ case PlSqlParser.XMLPATCH:
+ case PlSqlParser.XMLPI:
+ case PlSqlParser.XMLQUERYVAL:
+ case PlSqlParser.XMLQUERY:
+ case PlSqlParser.XMLROOT:
+ case PlSqlParser.XMLSCHEMA:
+ case PlSqlParser.XMLSERIALIZE:
+ case PlSqlParser.XMLTABLE:
+ case PlSqlParser.XMLTRANSFORMBLOB:
+ case PlSqlParser.XMLTRANSFORM:
+ case PlSqlParser.XMLTYPE:
+ case PlSqlParser.XML:
+ case PlSqlParser.XPATHTABLE:
+ case PlSqlParser.XS_SYS_CONTEXT:
+ case PlSqlParser.XS:
+ case PlSqlParser.YEARS:
+ case PlSqlParser.YEAR:
+ case PlSqlParser.YES:
+ case PlSqlParser.YMINTERVAL_UNCONSTRAINED:
+ case PlSqlParser.ZONEMAP:
+ case PlSqlParser.ZONE:
+ case PlSqlParser.PREDICTION:
+ case PlSqlParser.PREDICTION_BOUNDS:
+ case PlSqlParser.PREDICTION_COST:
+ case PlSqlParser.PREDICTION_DETAILS:
+ case PlSqlParser.PREDICTION_PROBABILITY:
+ case PlSqlParser.PREDICTION_SET:
+ case PlSqlParser.CUME_DIST:
+ case PlSqlParser.DENSE_RANK:
+ case PlSqlParser.LISTAGG:
+ case PlSqlParser.PERCENT_RANK:
+ case PlSqlParser.PERCENTILE_CONT:
+ case PlSqlParser.PERCENTILE_DISC:
+ case PlSqlParser.RANK:
+ case PlSqlParser.AVG:
+ case PlSqlParser.CORR:
+ case PlSqlParser.COVAR_:
+ case PlSqlParser.LAG:
+ case PlSqlParser.LEAD:
+ case PlSqlParser.MAX:
+ case PlSqlParser.MEDIAN:
+ case PlSqlParser.MIN:
+ case PlSqlParser.NTILE:
+ case PlSqlParser.NVL:
+ case PlSqlParser.RATIO_TO_REPORT:
+ case PlSqlParser.REGR_:
+ case PlSqlParser.ROUND:
+ case PlSqlParser.ROW_NUMBER:
+ case PlSqlParser.SUBSTR:
+ case PlSqlParser.TO_CHAR:
+ case PlSqlParser.TRIM:
+ case PlSqlParser.SUM:
+ case PlSqlParser.STDDEV:
+ case PlSqlParser.VAR_:
+ case PlSqlParser.VARIANCE:
+ case PlSqlParser.LEAST:
+ case PlSqlParser.GREATEST:
+ case PlSqlParser.TO_DATE:
+ case PlSqlParser.PERIOD:
+ case PlSqlParser.REGULAR_ID:
+ this.state = 6224;
+ this.lob_segname();
+ this.state = 6230;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.LEFT_PAREN) {
+ this.state = 6225;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 6226;
+ this.match(PlSqlParser.TABLESPACE);
+ this.state = 6227;
+ this.tablespace();
+ this.state = 6228;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ }
+
+ break;
+ case PlSqlParser.LEFT_PAREN:
+ this.state = 6232;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 6233;
+ this.match(PlSqlParser.TABLESPACE);
+ this.state = 6234;
+ this.tablespace();
+ this.state = 6235;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Datatype_null_enableContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_datatype_null_enable;
+ return this;
+}
+
+Datatype_null_enableContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Datatype_null_enableContext.prototype.constructor = Datatype_null_enableContext;
+
+Datatype_null_enableContext.prototype.column_name = function() {
+ return this.getTypedRuleContext(Column_nameContext,0);
+};
+
+Datatype_null_enableContext.prototype.datatype = function() {
+ return this.getTypedRuleContext(DatatypeContext,0);
+};
+
+Datatype_null_enableContext.prototype.SORT = function() {
+ return this.getToken(PlSqlParser.SORT, 0);
+};
+
+Datatype_null_enableContext.prototype.DEFAULT = function() {
+ return this.getToken(PlSqlParser.DEFAULT, 0);
+};
+
+Datatype_null_enableContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+Datatype_null_enableContext.prototype.ENCRYPT = function() {
+ return this.getToken(PlSqlParser.ENCRYPT, 0);
+};
+
+Datatype_null_enableContext.prototype.NOT = function() {
+ return this.getToken(PlSqlParser.NOT, 0);
+};
+
+Datatype_null_enableContext.prototype.NULL_ = function() {
+ return this.getToken(PlSqlParser.NULL_, 0);
+};
+
+Datatype_null_enableContext.prototype.ENABLE = function() {
+ return this.getToken(PlSqlParser.ENABLE, 0);
+};
+
+Datatype_null_enableContext.prototype.DISABLE = function() {
+ return this.getToken(PlSqlParser.DISABLE, 0);
+};
+
+Datatype_null_enableContext.prototype.USING = function() {
+ return this.getToken(PlSqlParser.USING, 0);
+};
+
+Datatype_null_enableContext.prototype.CHAR_STRING = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.CHAR_STRING);
+ } else {
+ return this.getToken(PlSqlParser.CHAR_STRING, i);
+ }
+};
+
+
+Datatype_null_enableContext.prototype.IDENTIFIED = function() {
+ return this.getToken(PlSqlParser.IDENTIFIED, 0);
+};
+
+Datatype_null_enableContext.prototype.BY = function() {
+ return this.getToken(PlSqlParser.BY, 0);
+};
+
+Datatype_null_enableContext.prototype.REGULAR_ID = function() {
+ return this.getToken(PlSqlParser.REGULAR_ID, 0);
+};
+
+Datatype_null_enableContext.prototype.SALT = function() {
+ return this.getToken(PlSqlParser.SALT, 0);
+};
+
+Datatype_null_enableContext.prototype.NO = function() {
+ return this.getToken(PlSqlParser.NO, 0);
+};
+
+Datatype_null_enableContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterDatatype_null_enable(this);
+ }
+};
+
+Datatype_null_enableContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitDatatype_null_enable(this);
+ }
+};
+
+Datatype_null_enableContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitDatatype_null_enable(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Datatype_null_enableContext = Datatype_null_enableContext;
+
+PlSqlParser.prototype.datatype_null_enable = function() {
+
+ var localctx = new Datatype_null_enableContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 604, PlSqlParser.RULE_datatype_null_enable);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6239;
+ this.column_name();
+ this.state = 6240;
+ this.datatype();
+ this.state = 6242;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.SORT) {
+ this.state = 6241;
+ this.match(PlSqlParser.SORT);
+ }
+
+ this.state = 6246;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.DEFAULT) {
+ this.state = 6244;
+ this.match(PlSqlParser.DEFAULT);
+ this.state = 6245;
+ this.expression();
+ }
+
+ this.state = 6267;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.ENCRYPT) {
+ this.state = 6248;
+ this.match(PlSqlParser.ENCRYPT);
+ this.state = 6251;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.USING) {
+ this.state = 6249;
+ this.match(PlSqlParser.USING);
+ this.state = 6250;
+ this.match(PlSqlParser.CHAR_STRING);
+ }
+
+ this.state = 6256;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.IDENTIFIED) {
+ this.state = 6253;
+ this.match(PlSqlParser.IDENTIFIED);
+ this.state = 6254;
+ this.match(PlSqlParser.BY);
+ this.state = 6255;
+ this.match(PlSqlParser.REGULAR_ID);
+ }
+
+ this.state = 6259;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.CHAR_STRING) {
+ this.state = 6258;
+ this.match(PlSqlParser.CHAR_STRING);
+ }
+
+ this.state = 6265;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.NO || _la===PlSqlParser.SALT) {
+ this.state = 6262;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.NO) {
+ this.state = 6261;
+ this.match(PlSqlParser.NO);
+ }
+
+ this.state = 6264;
+ this.match(PlSqlParser.SALT);
+ }
+
+ }
+
+ this.state = 6271;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.NOT) {
+ this.state = 6269;
+ this.match(PlSqlParser.NOT);
+ this.state = 6270;
+ this.match(PlSqlParser.NULL_);
+ }
+
+ this.state = 6274;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.DISABLE || _la===PlSqlParser.ENABLE) {
+ this.state = 6273;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.DISABLE || _la===PlSqlParser.ENABLE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Size_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_size_clause;
+ return this;
+}
+
+Size_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Size_clauseContext.prototype.constructor = Size_clauseContext;
+
+Size_clauseContext.prototype.UNSIGNED_INTEGER = function() {
+ return this.getToken(PlSqlParser.UNSIGNED_INTEGER, 0);
+};
+
+Size_clauseContext.prototype.REGULAR_ID = function() {
+ return this.getToken(PlSqlParser.REGULAR_ID, 0);
+};
+
+Size_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterSize_clause(this);
+ }
+};
+
+Size_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitSize_clause(this);
+ }
+};
+
+Size_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitSize_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Size_clauseContext = Size_clauseContext;
+
+PlSqlParser.prototype.size_clause = function() {
+
+ var localctx = new Size_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 606, PlSqlParser.RULE_size_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6276;
+ this.match(PlSqlParser.UNSIGNED_INTEGER);
+ this.state = 6278;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.REGULAR_ID) {
+ this.state = 6277;
+ this.match(PlSqlParser.REGULAR_ID);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Table_compressionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_table_compression;
+ return this;
+}
+
+Table_compressionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Table_compressionContext.prototype.constructor = Table_compressionContext;
+
+Table_compressionContext.prototype.COMPRESS = function() {
+ return this.getToken(PlSqlParser.COMPRESS, 0);
+};
+
+Table_compressionContext.prototype.BASIC = function() {
+ return this.getToken(PlSqlParser.BASIC, 0);
+};
+
+Table_compressionContext.prototype.FOR = function() {
+ return this.getToken(PlSqlParser.FOR, 0);
+};
+
+Table_compressionContext.prototype.OLTP = function() {
+ return this.getToken(PlSqlParser.OLTP, 0);
+};
+
+Table_compressionContext.prototype.QUERY = function() {
+ return this.getToken(PlSqlParser.QUERY, 0);
+};
+
+Table_compressionContext.prototype.ARCHIVE = function() {
+ return this.getToken(PlSqlParser.ARCHIVE, 0);
+};
+
+Table_compressionContext.prototype.LOW = function() {
+ return this.getToken(PlSqlParser.LOW, 0);
+};
+
+Table_compressionContext.prototype.HIGH = function() {
+ return this.getToken(PlSqlParser.HIGH, 0);
+};
+
+Table_compressionContext.prototype.NOCOMPRESS = function() {
+ return this.getToken(PlSqlParser.NOCOMPRESS, 0);
+};
+
+Table_compressionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterTable_compression(this);
+ }
+};
+
+Table_compressionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitTable_compression(this);
+ }
+};
+
+Table_compressionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitTable_compression(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Table_compressionContext = Table_compressionContext;
+
+PlSqlParser.prototype.table_compression = function() {
+
+ var localctx = new Table_compressionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 608, PlSqlParser.RULE_table_compression);
+ var _la = 0; // Token type
+ try {
+ this.state = 6293;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.COMPRESS:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6280;
+ this.match(PlSqlParser.COMPRESS);
+ this.state = 6290;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,740,this._ctx);
+ if(la_===1) {
+ this.state = 6281;
+ this.match(PlSqlParser.BASIC);
+
+ } else if(la_===2) {
+ this.state = 6282;
+ this.match(PlSqlParser.FOR);
+ this.state = 6288;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.OLTP:
+ this.state = 6283;
+ this.match(PlSqlParser.OLTP);
+ break;
+ case PlSqlParser.ARCHIVE:
+ case PlSqlParser.QUERY:
+ this.state = 6284;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.ARCHIVE || _la===PlSqlParser.QUERY)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 6286;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.HIGH || _la===PlSqlParser.LOW) {
+ this.state = 6285;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.HIGH || _la===PlSqlParser.LOW)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+
+ }
+ break;
+ case PlSqlParser.NOCOMPRESS:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 6292;
+ this.match(PlSqlParser.NOCOMPRESS);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Physical_attributes_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_physical_attributes_clause;
+ this.pctfree = null; // Token
+ this.pctused = null; // Token
+ this.inittrans = null; // Token
+ return this;
+}
+
+Physical_attributes_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Physical_attributes_clauseContext.prototype.constructor = Physical_attributes_clauseContext;
+
+Physical_attributes_clauseContext.prototype.PCTFREE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.PCTFREE);
+ } else {
+ return this.getToken(PlSqlParser.PCTFREE, i);
+ }
+};
+
+
+Physical_attributes_clauseContext.prototype.PCTUSED = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.PCTUSED);
+ } else {
+ return this.getToken(PlSqlParser.PCTUSED, i);
+ }
+};
+
+
+Physical_attributes_clauseContext.prototype.INITRANS = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.INITRANS);
+ } else {
+ return this.getToken(PlSqlParser.INITRANS, i);
+ }
+};
+
+
+Physical_attributes_clauseContext.prototype.storage_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Storage_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Storage_clauseContext,i);
+ }
+};
+
+Physical_attributes_clauseContext.prototype.UNSIGNED_INTEGER = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.UNSIGNED_INTEGER);
+ } else {
+ return this.getToken(PlSqlParser.UNSIGNED_INTEGER, i);
+ }
+};
+
+
+Physical_attributes_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterPhysical_attributes_clause(this);
+ }
+};
+
+Physical_attributes_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitPhysical_attributes_clause(this);
+ }
+};
+
+Physical_attributes_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitPhysical_attributes_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Physical_attributes_clauseContext = Physical_attributes_clauseContext;
+
+PlSqlParser.prototype.physical_attributes_clause = function() {
+
+ var localctx = new Physical_attributes_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 610, PlSqlParser.RULE_physical_attributes_clause);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6302;
+ this._errHandler.sync(this);
+ var _alt = 1;
+ do {
+ switch (_alt) {
+ case 1:
+ this.state = 6302;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.PCTFREE:
+ this.state = 6295;
+ this.match(PlSqlParser.PCTFREE);
+ this.state = 6296;
+ localctx.pctfree = this.match(PlSqlParser.UNSIGNED_INTEGER);
+ break;
+ case PlSqlParser.PCTUSED:
+ this.state = 6297;
+ this.match(PlSqlParser.PCTUSED);
+ this.state = 6298;
+ localctx.pctused = this.match(PlSqlParser.UNSIGNED_INTEGER);
+ break;
+ case PlSqlParser.INITRANS:
+ this.state = 6299;
+ this.match(PlSqlParser.INITRANS);
+ this.state = 6300;
+ localctx.inittrans = this.match(PlSqlParser.UNSIGNED_INTEGER);
+ break;
+ case PlSqlParser.STORAGE:
+ this.state = 6301;
+ this.storage_clause();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 6304;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,743, this._ctx);
+ } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Storage_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_storage_clause;
+ this.initial_size = null; // Size_clauseContext
+ this.next_size = null; // Size_clauseContext
+ this.minextents = null; // Token
+ this.pctincrease = null; // Token
+ this.freelists = null; // Token
+ this.freelist_groups = null; // Token
+ return this;
+}
+
+Storage_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Storage_clauseContext.prototype.constructor = Storage_clauseContext;
+
+Storage_clauseContext.prototype.STORAGE = function() {
+ return this.getToken(PlSqlParser.STORAGE, 0);
+};
+
+Storage_clauseContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Storage_clauseContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Storage_clauseContext.prototype.INITIAL = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.INITIAL);
+ } else {
+ return this.getToken(PlSqlParser.INITIAL, i);
+ }
+};
+
+
+Storage_clauseContext.prototype.NEXT = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.NEXT);
+ } else {
+ return this.getToken(PlSqlParser.NEXT, i);
+ }
+};
+
+
+Storage_clauseContext.prototype.MINEXTENTS = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.MINEXTENTS);
+ } else {
+ return this.getToken(PlSqlParser.MINEXTENTS, i);
+ }
+};
+
+
+Storage_clauseContext.prototype.MAXEXTENTS = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.MAXEXTENTS);
+ } else {
+ return this.getToken(PlSqlParser.MAXEXTENTS, i);
+ }
+};
+
+
+Storage_clauseContext.prototype.PCTINCREASE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.PCTINCREASE);
+ } else {
+ return this.getToken(PlSqlParser.PCTINCREASE, i);
+ }
+};
+
+
+Storage_clauseContext.prototype.FREELISTS = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.FREELISTS);
+ } else {
+ return this.getToken(PlSqlParser.FREELISTS, i);
+ }
+};
+
+
+Storage_clauseContext.prototype.FREELIST = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.FREELIST);
+ } else {
+ return this.getToken(PlSqlParser.FREELIST, i);
+ }
+};
+
+
+Storage_clauseContext.prototype.GROUPS = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.GROUPS);
+ } else {
+ return this.getToken(PlSqlParser.GROUPS, i);
+ }
+};
+
+
+Storage_clauseContext.prototype.OPTIMAL = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.OPTIMAL);
+ } else {
+ return this.getToken(PlSqlParser.OPTIMAL, i);
+ }
+};
+
+
+Storage_clauseContext.prototype.BUFFER_POOL = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.BUFFER_POOL);
+ } else {
+ return this.getToken(PlSqlParser.BUFFER_POOL, i);
+ }
+};
+
+
+Storage_clauseContext.prototype.FLASH_CACHE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.FLASH_CACHE);
+ } else {
+ return this.getToken(PlSqlParser.FLASH_CACHE, i);
+ }
+};
+
+
+Storage_clauseContext.prototype.ENCRYPT = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.ENCRYPT);
+ } else {
+ return this.getToken(PlSqlParser.ENCRYPT, i);
+ }
+};
+
+
+Storage_clauseContext.prototype.size_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Size_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Size_clauseContext,i);
+ }
+};
+
+Storage_clauseContext.prototype.UNSIGNED_INTEGER = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.UNSIGNED_INTEGER);
+ } else {
+ return this.getToken(PlSqlParser.UNSIGNED_INTEGER, i);
+ }
+};
+
+
+Storage_clauseContext.prototype.KEEP = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.KEEP);
+ } else {
+ return this.getToken(PlSqlParser.KEEP, i);
+ }
+};
+
+
+Storage_clauseContext.prototype.RECYCLE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.RECYCLE);
+ } else {
+ return this.getToken(PlSqlParser.RECYCLE, i);
+ }
+};
+
+
+Storage_clauseContext.prototype.DEFAULT = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.DEFAULT);
+ } else {
+ return this.getToken(PlSqlParser.DEFAULT, i);
+ }
+};
+
+
+Storage_clauseContext.prototype.NONE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.NONE);
+ } else {
+ return this.getToken(PlSqlParser.NONE, i);
+ }
+};
+
+
+Storage_clauseContext.prototype.UNLIMITED = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.UNLIMITED);
+ } else {
+ return this.getToken(PlSqlParser.UNLIMITED, i);
+ }
+};
+
+
+Storage_clauseContext.prototype.NULL_ = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.NULL_);
+ } else {
+ return this.getToken(PlSqlParser.NULL_, i);
+ }
+};
+
+
+Storage_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterStorage_clause(this);
+ }
+};
+
+Storage_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitStorage_clause(this);
+ }
+};
+
+Storage_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitStorage_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Storage_clauseContext = Storage_clauseContext;
+
+PlSqlParser.prototype.storage_clause = function() {
+
+ var localctx = new Storage_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 612, PlSqlParser.RULE_storage_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6306;
+ this.match(PlSqlParser.STORAGE);
+ this.state = 6307;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 6333;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 6333;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.INITIAL:
+ this.state = 6308;
+ this.match(PlSqlParser.INITIAL);
+ this.state = 6309;
+ localctx.initial_size = this.size_clause();
+ break;
+ case PlSqlParser.NEXT:
+ this.state = 6310;
+ this.match(PlSqlParser.NEXT);
+ this.state = 6311;
+ localctx.next_size = this.size_clause();
+ break;
+ case PlSqlParser.MINEXTENTS:
+ this.state = 6312;
+ this.match(PlSqlParser.MINEXTENTS);
+ this.state = 6313;
+ localctx.minextents = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.UNLIMITED || _la===PlSqlParser.UNSIGNED_INTEGER)) {
+ localctx.minextents = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+ case PlSqlParser.MAXEXTENTS:
+ this.state = 6314;
+ this.match(PlSqlParser.MAXEXTENTS);
+ this.state = 6315;
+ localctx.minextents = this._input.LT(1);
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.UNLIMITED || _la===PlSqlParser.UNSIGNED_INTEGER)) {
+ localctx.minextents = this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+ case PlSqlParser.PCTINCREASE:
+ this.state = 6316;
+ this.match(PlSqlParser.PCTINCREASE);
+ this.state = 6317;
+ localctx.pctincrease = this.match(PlSqlParser.UNSIGNED_INTEGER);
+ break;
+ case PlSqlParser.FREELISTS:
+ this.state = 6318;
+ this.match(PlSqlParser.FREELISTS);
+ this.state = 6319;
+ localctx.freelists = this.match(PlSqlParser.UNSIGNED_INTEGER);
+ break;
+ case PlSqlParser.FREELIST:
+ this.state = 6320;
+ this.match(PlSqlParser.FREELIST);
+ this.state = 6321;
+ this.match(PlSqlParser.GROUPS);
+ this.state = 6322;
+ localctx.freelist_groups = this.match(PlSqlParser.UNSIGNED_INTEGER);
+ break;
+ case PlSqlParser.OPTIMAL:
+ this.state = 6323;
+ this.match(PlSqlParser.OPTIMAL);
+ this.state = 6326;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.UNSIGNED_INTEGER:
+ this.state = 6324;
+ this.size_clause();
+ break;
+ case PlSqlParser.NULL_:
+ this.state = 6325;
+ this.match(PlSqlParser.NULL_);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ break;
+ case PlSqlParser.BUFFER_POOL:
+ this.state = 6328;
+ this.match(PlSqlParser.BUFFER_POOL);
+ this.state = 6329;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.DEFAULT || _la===PlSqlParser.KEEP || _la===PlSqlParser.RECYCLE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+ case PlSqlParser.FLASH_CACHE:
+ this.state = 6330;
+ this.match(PlSqlParser.FLASH_CACHE);
+ this.state = 6331;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.DEFAULT || _la===PlSqlParser.KEEP || _la===PlSqlParser.NONE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+ case PlSqlParser.ENCRYPT:
+ this.state = 6332;
+ this.match(PlSqlParser.ENCRYPT);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 6335;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(_la===PlSqlParser.BUFFER_POOL || _la===PlSqlParser.ENCRYPT || ((((_la - 533)) & ~0x1f) == 0 && ((1 << (_la - 533)) & ((1 << (PlSqlParser.FLASH_CACHE - 533)) | (1 << (PlSqlParser.FREELIST - 533)) | (1 << (PlSqlParser.FREELISTS - 533)))) !== 0) || _la===PlSqlParser.INITIAL || _la===PlSqlParser.MAXEXTENTS || _la===PlSqlParser.MINEXTENTS || _la===PlSqlParser.NEXT || _la===PlSqlParser.OPTIMAL || _la===PlSqlParser.PCTINCREASE);
+ this.state = 6337;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Deferred_segment_creationContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_deferred_segment_creation;
+ return this;
+}
+
+Deferred_segment_creationContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Deferred_segment_creationContext.prototype.constructor = Deferred_segment_creationContext;
+
+Deferred_segment_creationContext.prototype.SEGMENT = function() {
+ return this.getToken(PlSqlParser.SEGMENT, 0);
+};
+
+Deferred_segment_creationContext.prototype.CREATION = function() {
+ return this.getToken(PlSqlParser.CREATION, 0);
+};
+
+Deferred_segment_creationContext.prototype.IMMEDIATE = function() {
+ return this.getToken(PlSqlParser.IMMEDIATE, 0);
+};
+
+Deferred_segment_creationContext.prototype.DEFERRED = function() {
+ return this.getToken(PlSqlParser.DEFERRED, 0);
+};
+
+Deferred_segment_creationContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterDeferred_segment_creation(this);
+ }
+};
+
+Deferred_segment_creationContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitDeferred_segment_creation(this);
+ }
+};
+
+Deferred_segment_creationContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitDeferred_segment_creation(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Deferred_segment_creationContext = Deferred_segment_creationContext;
+
+PlSqlParser.prototype.deferred_segment_creation = function() {
+
+ var localctx = new Deferred_segment_creationContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 614, PlSqlParser.RULE_deferred_segment_creation);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6339;
+ this.match(PlSqlParser.SEGMENT);
+ this.state = 6340;
+ this.match(PlSqlParser.CREATION);
+ this.state = 6341;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.DEFERRED || _la===PlSqlParser.IMMEDIATE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Segment_attributes_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_segment_attributes_clause;
+ this.tablespace_name = null; // Id_expressionContext
+ return this;
+}
+
+Segment_attributes_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Segment_attributes_clauseContext.prototype.constructor = Segment_attributes_clauseContext;
+
+Segment_attributes_clauseContext.prototype.physical_attributes_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Physical_attributes_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Physical_attributes_clauseContext,i);
+ }
+};
+
+Segment_attributes_clauseContext.prototype.TABLESPACE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.TABLESPACE);
+ } else {
+ return this.getToken(PlSqlParser.TABLESPACE, i);
+ }
+};
+
+
+Segment_attributes_clauseContext.prototype.logging_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Logging_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Logging_clauseContext,i);
+ }
+};
+
+Segment_attributes_clauseContext.prototype.id_expression = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Id_expressionContext);
+ } else {
+ return this.getTypedRuleContext(Id_expressionContext,i);
+ }
+};
+
+Segment_attributes_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterSegment_attributes_clause(this);
+ }
+};
+
+Segment_attributes_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitSegment_attributes_clause(this);
+ }
+};
+
+Segment_attributes_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitSegment_attributes_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Segment_attributes_clauseContext = Segment_attributes_clauseContext;
+
+PlSqlParser.prototype.segment_attributes_clause = function() {
+
+ var localctx = new Segment_attributes_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 616, PlSqlParser.RULE_segment_attributes_clause);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6347;
+ this._errHandler.sync(this);
+ var _alt = 1;
+ do {
+ switch (_alt) {
+ case 1:
+ this.state = 6347;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.INITRANS:
+ case PlSqlParser.PCTFREE:
+ case PlSqlParser.PCTUSED:
+ case PlSqlParser.STORAGE:
+ this.state = 6343;
+ this.physical_attributes_clause();
+ break;
+ case PlSqlParser.TABLESPACE:
+ this.state = 6344;
+ this.match(PlSqlParser.TABLESPACE);
+ this.state = 6345;
+ localctx.tablespace_name = this.id_expression();
+ break;
+ case PlSqlParser.FILESYSTEM_LIKE_LOGGING:
+ case PlSqlParser.LOGGING:
+ case PlSqlParser.NOLOGGING:
+ this.state = 6346;
+ this.logging_clause();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 6349;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,748, this._ctx);
+ } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Physical_propertiesContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_physical_properties;
+ return this;
+}
+
+Physical_propertiesContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Physical_propertiesContext.prototype.constructor = Physical_propertiesContext;
+
+Physical_propertiesContext.prototype.segment_attributes_clause = function() {
+ return this.getTypedRuleContext(Segment_attributes_clauseContext,0);
+};
+
+Physical_propertiesContext.prototype.deferred_segment_creation = function() {
+ return this.getTypedRuleContext(Deferred_segment_creationContext,0);
+};
+
+Physical_propertiesContext.prototype.table_compression = function() {
+ return this.getTypedRuleContext(Table_compressionContext,0);
+};
+
+Physical_propertiesContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterPhysical_properties(this);
+ }
+};
+
+Physical_propertiesContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitPhysical_properties(this);
+ }
+};
+
+Physical_propertiesContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitPhysical_properties(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Physical_propertiesContext = Physical_propertiesContext;
+
+PlSqlParser.prototype.physical_properties = function() {
+
+ var localctx = new Physical_propertiesContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 618, PlSqlParser.RULE_physical_properties);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6352;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.SEGMENT) {
+ this.state = 6351;
+ this.deferred_segment_creation();
+ }
+
+ this.state = 6354;
+ this.segment_attributes_clause();
+ this.state = 6356;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.COMPRESS || _la===PlSqlParser.NOCOMPRESS) {
+ this.state = 6355;
+ this.table_compression();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Row_movement_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_row_movement_clause;
+ return this;
+}
+
+Row_movement_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Row_movement_clauseContext.prototype.constructor = Row_movement_clauseContext;
+
+Row_movement_clauseContext.prototype.ROW = function() {
+ return this.getToken(PlSqlParser.ROW, 0);
+};
+
+Row_movement_clauseContext.prototype.MOVEMENT = function() {
+ return this.getToken(PlSqlParser.MOVEMENT, 0);
+};
+
+Row_movement_clauseContext.prototype.ENABLE = function() {
+ return this.getToken(PlSqlParser.ENABLE, 0);
+};
+
+Row_movement_clauseContext.prototype.DISABLE = function() {
+ return this.getToken(PlSqlParser.DISABLE, 0);
+};
+
+Row_movement_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterRow_movement_clause(this);
+ }
+};
+
+Row_movement_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitRow_movement_clause(this);
+ }
+};
+
+Row_movement_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitRow_movement_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Row_movement_clauseContext = Row_movement_clauseContext;
+
+PlSqlParser.prototype.row_movement_clause = function() {
+
+ var localctx = new Row_movement_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 620, PlSqlParser.RULE_row_movement_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6359;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.DISABLE || _la===PlSqlParser.ENABLE) {
+ this.state = 6358;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.DISABLE || _la===PlSqlParser.ENABLE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 6361;
+ this.match(PlSqlParser.ROW);
+ this.state = 6362;
+ this.match(PlSqlParser.MOVEMENT);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Flashback_archive_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_flashback_archive_clause;
+ this.flashback_archive = null; // Token
+ return this;
+}
+
+Flashback_archive_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Flashback_archive_clauseContext.prototype.constructor = Flashback_archive_clauseContext;
+
+Flashback_archive_clauseContext.prototype.FLASHBACK = function() {
+ return this.getToken(PlSqlParser.FLASHBACK, 0);
+};
+
+Flashback_archive_clauseContext.prototype.ARCHIVE = function() {
+ return this.getToken(PlSqlParser.ARCHIVE, 0);
+};
+
+Flashback_archive_clauseContext.prototype.REGULAR_ID = function() {
+ return this.getToken(PlSqlParser.REGULAR_ID, 0);
+};
+
+Flashback_archive_clauseContext.prototype.NO = function() {
+ return this.getToken(PlSqlParser.NO, 0);
+};
+
+Flashback_archive_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterFlashback_archive_clause(this);
+ }
+};
+
+Flashback_archive_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitFlashback_archive_clause(this);
+ }
+};
+
+Flashback_archive_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitFlashback_archive_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Flashback_archive_clauseContext = Flashback_archive_clauseContext;
+
+PlSqlParser.prototype.flashback_archive_clause = function() {
+
+ var localctx = new Flashback_archive_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 622, PlSqlParser.RULE_flashback_archive_clause);
+ try {
+ this.state = 6370;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.FLASHBACK:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6364;
+ this.match(PlSqlParser.FLASHBACK);
+ this.state = 6365;
+ this.match(PlSqlParser.ARCHIVE);
+ this.state = 6366;
+ localctx.flashback_archive = this.match(PlSqlParser.REGULAR_ID);
+ break;
+ case PlSqlParser.NO:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 6367;
+ this.match(PlSqlParser.NO);
+ this.state = 6368;
+ this.match(PlSqlParser.FLASHBACK);
+ this.state = 6369;
+ this.match(PlSqlParser.ARCHIVE);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Log_grpContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_log_grp;
+ return this;
+}
+
+Log_grpContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Log_grpContext.prototype.constructor = Log_grpContext;
+
+Log_grpContext.prototype.UNSIGNED_INTEGER = function() {
+ return this.getToken(PlSqlParser.UNSIGNED_INTEGER, 0);
+};
+
+Log_grpContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterLog_grp(this);
+ }
+};
+
+Log_grpContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitLog_grp(this);
+ }
+};
+
+Log_grpContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitLog_grp(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Log_grpContext = Log_grpContext;
+
+PlSqlParser.prototype.log_grp = function() {
+
+ var localctx = new Log_grpContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 624, PlSqlParser.RULE_log_grp);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6372;
+ this.match(PlSqlParser.UNSIGNED_INTEGER);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Supplemental_table_loggingContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_supplemental_table_logging;
+ return this;
+}
+
+Supplemental_table_loggingContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Supplemental_table_loggingContext.prototype.constructor = Supplemental_table_loggingContext;
+
+Supplemental_table_loggingContext.prototype.ADD = function() {
+ return this.getToken(PlSqlParser.ADD, 0);
+};
+
+Supplemental_table_loggingContext.prototype.SUPPLEMENTAL = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.SUPPLEMENTAL);
+ } else {
+ return this.getToken(PlSqlParser.SUPPLEMENTAL, i);
+ }
+};
+
+
+Supplemental_table_loggingContext.prototype.LOG = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.LOG);
+ } else {
+ return this.getToken(PlSqlParser.LOG, i);
+ }
+};
+
+
+Supplemental_table_loggingContext.prototype.supplemental_log_grp_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Supplemental_log_grp_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Supplemental_log_grp_clauseContext,i);
+ }
+};
+
+Supplemental_table_loggingContext.prototype.supplemental_id_key_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Supplemental_id_key_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Supplemental_id_key_clauseContext,i);
+ }
+};
+
+Supplemental_table_loggingContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Supplemental_table_loggingContext.prototype.DROP = function() {
+ return this.getToken(PlSqlParser.DROP, 0);
+};
+
+Supplemental_table_loggingContext.prototype.GROUP = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.GROUP);
+ } else {
+ return this.getToken(PlSqlParser.GROUP, i);
+ }
+};
+
+
+Supplemental_table_loggingContext.prototype.log_grp = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Log_grpContext);
+ } else {
+ return this.getTypedRuleContext(Log_grpContext,i);
+ }
+};
+
+Supplemental_table_loggingContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterSupplemental_table_logging(this);
+ }
+};
+
+Supplemental_table_loggingContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitSupplemental_table_logging(this);
+ }
+};
+
+Supplemental_table_loggingContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitSupplemental_table_logging(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Supplemental_table_loggingContext = Supplemental_table_loggingContext;
+
+PlSqlParser.prototype.supplemental_table_logging = function() {
+
+ var localctx = new Supplemental_table_loggingContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 626, PlSqlParser.RULE_supplemental_table_logging);
+ var _la = 0; // Token type
+ try {
+ this.state = 6414;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.ADD:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6374;
+ this.match(PlSqlParser.ADD);
+ this.state = 6375;
+ this.match(PlSqlParser.SUPPLEMENTAL);
+ this.state = 6376;
+ this.match(PlSqlParser.LOG);
+ this.state = 6379;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.GROUP:
+ this.state = 6377;
+ this.supplemental_log_grp_clause();
+ break;
+ case PlSqlParser.DATA:
+ this.state = 6378;
+ this.supplemental_id_key_clause();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 6390;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 6381;
+ this.match(PlSqlParser.COMMA);
+ this.state = 6382;
+ this.match(PlSqlParser.SUPPLEMENTAL);
+ this.state = 6383;
+ this.match(PlSqlParser.LOG);
+ this.state = 6386;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.GROUP:
+ this.state = 6384;
+ this.supplemental_log_grp_clause();
+ break;
+ case PlSqlParser.DATA:
+ this.state = 6385;
+ this.supplemental_id_key_clause();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 6392;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+ case PlSqlParser.DROP:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 6393;
+ this.match(PlSqlParser.DROP);
+ this.state = 6394;
+ this.match(PlSqlParser.SUPPLEMENTAL);
+ this.state = 6395;
+ this.match(PlSqlParser.LOG);
+ this.state = 6399;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.DATA:
+ this.state = 6396;
+ this.supplemental_id_key_clause();
+ break;
+ case PlSqlParser.GROUP:
+ this.state = 6397;
+ this.match(PlSqlParser.GROUP);
+ this.state = 6398;
+ this.log_grp();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 6411;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 6401;
+ this.match(PlSqlParser.COMMA);
+ this.state = 6402;
+ this.match(PlSqlParser.SUPPLEMENTAL);
+ this.state = 6403;
+ this.match(PlSqlParser.LOG);
+ this.state = 6407;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.DATA:
+ this.state = 6404;
+ this.supplemental_id_key_clause();
+ break;
+ case PlSqlParser.GROUP:
+ this.state = 6405;
+ this.match(PlSqlParser.GROUP);
+ this.state = 6406;
+ this.log_grp();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 6413;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Supplemental_log_grp_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_supplemental_log_grp_clause;
+ return this;
+}
+
+Supplemental_log_grp_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Supplemental_log_grp_clauseContext.prototype.constructor = Supplemental_log_grp_clauseContext;
+
+Supplemental_log_grp_clauseContext.prototype.GROUP = function() {
+ return this.getToken(PlSqlParser.GROUP, 0);
+};
+
+Supplemental_log_grp_clauseContext.prototype.log_grp = function() {
+ return this.getTypedRuleContext(Log_grpContext,0);
+};
+
+Supplemental_log_grp_clauseContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Supplemental_log_grp_clauseContext.prototype.regular_id = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Regular_idContext);
+ } else {
+ return this.getTypedRuleContext(Regular_idContext,i);
+ }
+};
+
+Supplemental_log_grp_clauseContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Supplemental_log_grp_clauseContext.prototype.NO = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.NO);
+ } else {
+ return this.getToken(PlSqlParser.NO, i);
+ }
+};
+
+
+Supplemental_log_grp_clauseContext.prototype.LOG = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.LOG);
+ } else {
+ return this.getToken(PlSqlParser.LOG, i);
+ }
+};
+
+
+Supplemental_log_grp_clauseContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Supplemental_log_grp_clauseContext.prototype.ALWAYS = function() {
+ return this.getToken(PlSqlParser.ALWAYS, 0);
+};
+
+Supplemental_log_grp_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterSupplemental_log_grp_clause(this);
+ }
+};
+
+Supplemental_log_grp_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitSupplemental_log_grp_clause(this);
+ }
+};
+
+Supplemental_log_grp_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitSupplemental_log_grp_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Supplemental_log_grp_clauseContext = Supplemental_log_grp_clauseContext;
+
+PlSqlParser.prototype.supplemental_log_grp_clause = function() {
+
+ var localctx = new Supplemental_log_grp_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 628, PlSqlParser.RULE_supplemental_log_grp_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6416;
+ this.match(PlSqlParser.GROUP);
+ this.state = 6417;
+ this.log_grp();
+ this.state = 6418;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 6419;
+ this.regular_id();
+ this.state = 6422;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.NO) {
+ this.state = 6420;
+ this.match(PlSqlParser.NO);
+ this.state = 6421;
+ this.match(PlSqlParser.LOG);
+ }
+
+ this.state = 6432;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 6424;
+ this.match(PlSqlParser.COMMA);
+ this.state = 6425;
+ this.regular_id();
+ this.state = 6428;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.NO) {
+ this.state = 6426;
+ this.match(PlSqlParser.NO);
+ this.state = 6427;
+ this.match(PlSqlParser.LOG);
+ }
+
+ this.state = 6434;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 6435;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ this.state = 6437;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.ALWAYS) {
+ this.state = 6436;
+ this.match(PlSqlParser.ALWAYS);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Supplemental_id_key_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_supplemental_id_key_clause;
+ return this;
+}
+
+Supplemental_id_key_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Supplemental_id_key_clauseContext.prototype.constructor = Supplemental_id_key_clauseContext;
+
+Supplemental_id_key_clauseContext.prototype.DATA = function() {
+ return this.getToken(PlSqlParser.DATA, 0);
+};
+
+Supplemental_id_key_clauseContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Supplemental_id_key_clauseContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Supplemental_id_key_clauseContext.prototype.COLUMNS = function() {
+ return this.getToken(PlSqlParser.COLUMNS, 0);
+};
+
+Supplemental_id_key_clauseContext.prototype.ALL = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.ALL);
+ } else {
+ return this.getToken(PlSqlParser.ALL, i);
+ }
+};
+
+
+Supplemental_id_key_clauseContext.prototype.PRIMARY = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.PRIMARY);
+ } else {
+ return this.getToken(PlSqlParser.PRIMARY, i);
+ }
+};
+
+
+Supplemental_id_key_clauseContext.prototype.KEY = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.KEY);
+ } else {
+ return this.getToken(PlSqlParser.KEY, i);
+ }
+};
+
+
+Supplemental_id_key_clauseContext.prototype.UNIQUE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.UNIQUE);
+ } else {
+ return this.getToken(PlSqlParser.UNIQUE, i);
+ }
+};
+
+
+Supplemental_id_key_clauseContext.prototype.FOREIGN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.FOREIGN);
+ } else {
+ return this.getToken(PlSqlParser.FOREIGN, i);
+ }
+};
+
+
+Supplemental_id_key_clauseContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Supplemental_id_key_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterSupplemental_id_key_clause(this);
+ }
+};
+
+Supplemental_id_key_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitSupplemental_id_key_clause(this);
+ }
+};
+
+Supplemental_id_key_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitSupplemental_id_key_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Supplemental_id_key_clauseContext = Supplemental_id_key_clauseContext;
+
+PlSqlParser.prototype.supplemental_id_key_clause = function() {
+
+ var localctx = new Supplemental_id_key_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 630, PlSqlParser.RULE_supplemental_id_key_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6439;
+ this.match(PlSqlParser.DATA);
+ this.state = 6440;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 6452;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 6442;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.COMMA) {
+ this.state = 6441;
+ this.match(PlSqlParser.COMMA);
+ }
+
+ this.state = 6450;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.ALL:
+ this.state = 6444;
+ this.match(PlSqlParser.ALL);
+ break;
+ case PlSqlParser.PRIMARY:
+ this.state = 6445;
+ this.match(PlSqlParser.PRIMARY);
+ this.state = 6446;
+ this.match(PlSqlParser.KEY);
+ break;
+ case PlSqlParser.UNIQUE:
+ this.state = 6447;
+ this.match(PlSqlParser.UNIQUE);
+ break;
+ case PlSqlParser.FOREIGN:
+ this.state = 6448;
+ this.match(PlSqlParser.FOREIGN);
+ this.state = 6449;
+ this.match(PlSqlParser.KEY);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 6454;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(_la===PlSqlParser.ALL || _la===PlSqlParser.FOREIGN || _la===PlSqlParser.PRIMARY || _la===PlSqlParser.UNIQUE || _la===PlSqlParser.COMMA);
+ this.state = 6456;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ this.state = 6457;
+ this.match(PlSqlParser.COLUMNS);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Allocate_extent_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_allocate_extent_clause;
+ this.datafile = null; // Token
+ this.inst_num = null; // Token
+ return this;
+}
+
+Allocate_extent_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Allocate_extent_clauseContext.prototype.constructor = Allocate_extent_clauseContext;
+
+Allocate_extent_clauseContext.prototype.ALLOCATE = function() {
+ return this.getToken(PlSqlParser.ALLOCATE, 0);
+};
+
+Allocate_extent_clauseContext.prototype.EXTENT = function() {
+ return this.getToken(PlSqlParser.EXTENT, 0);
+};
+
+Allocate_extent_clauseContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Allocate_extent_clauseContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Allocate_extent_clauseContext.prototype.SIZE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.SIZE);
+ } else {
+ return this.getToken(PlSqlParser.SIZE, i);
+ }
+};
+
+
+Allocate_extent_clauseContext.prototype.size_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Size_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Size_clauseContext,i);
+ }
+};
+
+Allocate_extent_clauseContext.prototype.DATAFILE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.DATAFILE);
+ } else {
+ return this.getToken(PlSqlParser.DATAFILE, i);
+ }
+};
+
+
+Allocate_extent_clauseContext.prototype.INSTANCE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.INSTANCE);
+ } else {
+ return this.getToken(PlSqlParser.INSTANCE, i);
+ }
+};
+
+
+Allocate_extent_clauseContext.prototype.CHAR_STRING = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.CHAR_STRING);
+ } else {
+ return this.getToken(PlSqlParser.CHAR_STRING, i);
+ }
+};
+
+
+Allocate_extent_clauseContext.prototype.UNSIGNED_INTEGER = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.UNSIGNED_INTEGER);
+ } else {
+ return this.getToken(PlSqlParser.UNSIGNED_INTEGER, i);
+ }
+};
+
+
+Allocate_extent_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAllocate_extent_clause(this);
+ }
+};
+
+Allocate_extent_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAllocate_extent_clause(this);
+ }
+};
+
+Allocate_extent_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAllocate_extent_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Allocate_extent_clauseContext = Allocate_extent_clauseContext;
+
+PlSqlParser.prototype.allocate_extent_clause = function() {
+
+ var localctx = new Allocate_extent_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 632, PlSqlParser.RULE_allocate_extent_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6459;
+ this.match(PlSqlParser.ALLOCATE);
+ this.state = 6460;
+ this.match(PlSqlParser.EXTENT);
+ this.state = 6473;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.LEFT_PAREN) {
+ this.state = 6461;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 6468;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 6468;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.SIZE:
+ this.state = 6462;
+ this.match(PlSqlParser.SIZE);
+ this.state = 6463;
+ this.size_clause();
+ break;
+ case PlSqlParser.DATAFILE:
+ this.state = 6464;
+ this.match(PlSqlParser.DATAFILE);
+ this.state = 6465;
+ localctx.datafile = this.match(PlSqlParser.CHAR_STRING);
+ break;
+ case PlSqlParser.INSTANCE:
+ this.state = 6466;
+ this.match(PlSqlParser.INSTANCE);
+ this.state = 6467;
+ localctx.inst_num = this.match(PlSqlParser.UNSIGNED_INTEGER);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 6470;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(_la===PlSqlParser.DATAFILE || _la===PlSqlParser.INSTANCE || _la===PlSqlParser.SIZE);
+ this.state = 6472;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Deallocate_unused_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_deallocate_unused_clause;
+ return this;
+}
+
+Deallocate_unused_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Deallocate_unused_clauseContext.prototype.constructor = Deallocate_unused_clauseContext;
+
+Deallocate_unused_clauseContext.prototype.DEALLOCATE = function() {
+ return this.getToken(PlSqlParser.DEALLOCATE, 0);
+};
+
+Deallocate_unused_clauseContext.prototype.UNUSED = function() {
+ return this.getToken(PlSqlParser.UNUSED, 0);
+};
+
+Deallocate_unused_clauseContext.prototype.KEEP = function() {
+ return this.getToken(PlSqlParser.KEEP, 0);
+};
+
+Deallocate_unused_clauseContext.prototype.size_clause = function() {
+ return this.getTypedRuleContext(Size_clauseContext,0);
+};
+
+Deallocate_unused_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterDeallocate_unused_clause(this);
+ }
+};
+
+Deallocate_unused_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitDeallocate_unused_clause(this);
+ }
+};
+
+Deallocate_unused_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitDeallocate_unused_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Deallocate_unused_clauseContext = Deallocate_unused_clauseContext;
+
+PlSqlParser.prototype.deallocate_unused_clause = function() {
+
+ var localctx = new Deallocate_unused_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 634, PlSqlParser.RULE_deallocate_unused_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6475;
+ this.match(PlSqlParser.DEALLOCATE);
+ this.state = 6476;
+ this.match(PlSqlParser.UNUSED);
+ this.state = 6479;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.KEEP) {
+ this.state = 6477;
+ this.match(PlSqlParser.KEEP);
+ this.state = 6478;
+ this.size_clause();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Shrink_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_shrink_clause;
+ return this;
+}
+
+Shrink_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Shrink_clauseContext.prototype.constructor = Shrink_clauseContext;
+
+Shrink_clauseContext.prototype.SHRINK = function() {
+ return this.getToken(PlSqlParser.SHRINK, 0);
+};
+
+Shrink_clauseContext.prototype.SPACE_KEYWORD = function() {
+ return this.getToken(PlSqlParser.SPACE_KEYWORD, 0);
+};
+
+Shrink_clauseContext.prototype.COMPACT = function() {
+ return this.getToken(PlSqlParser.COMPACT, 0);
+};
+
+Shrink_clauseContext.prototype.CASCADE = function() {
+ return this.getToken(PlSqlParser.CASCADE, 0);
+};
+
+Shrink_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterShrink_clause(this);
+ }
+};
+
+Shrink_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitShrink_clause(this);
+ }
+};
+
+Shrink_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitShrink_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Shrink_clauseContext = Shrink_clauseContext;
+
+PlSqlParser.prototype.shrink_clause = function() {
+
+ var localctx = new Shrink_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 636, PlSqlParser.RULE_shrink_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6481;
+ this.match(PlSqlParser.SHRINK);
+ this.state = 6482;
+ this.match(PlSqlParser.SPACE_KEYWORD);
+ this.state = 6484;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.COMPACT) {
+ this.state = 6483;
+ this.match(PlSqlParser.COMPACT);
+ }
+
+ this.state = 6487;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.CASCADE) {
+ this.state = 6486;
+ this.match(PlSqlParser.CASCADE);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Records_per_block_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_records_per_block_clause;
+ return this;
+}
+
+Records_per_block_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Records_per_block_clauseContext.prototype.constructor = Records_per_block_clauseContext;
+
+Records_per_block_clauseContext.prototype.RECORDS_PER_BLOCK = function() {
+ return this.getToken(PlSqlParser.RECORDS_PER_BLOCK, 0);
+};
+
+Records_per_block_clauseContext.prototype.MINIMIZE = function() {
+ return this.getToken(PlSqlParser.MINIMIZE, 0);
+};
+
+Records_per_block_clauseContext.prototype.NOMINIMIZE = function() {
+ return this.getToken(PlSqlParser.NOMINIMIZE, 0);
+};
+
+Records_per_block_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterRecords_per_block_clause(this);
+ }
+};
+
+Records_per_block_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitRecords_per_block_clause(this);
+ }
+};
+
+Records_per_block_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitRecords_per_block_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Records_per_block_clauseContext = Records_per_block_clauseContext;
+
+PlSqlParser.prototype.records_per_block_clause = function() {
+
+ var localctx = new Records_per_block_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 638, PlSqlParser.RULE_records_per_block_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6490;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.MINIMIZE || _la===PlSqlParser.NOMINIMIZE) {
+ this.state = 6489;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.MINIMIZE || _la===PlSqlParser.NOMINIMIZE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 6492;
+ this.match(PlSqlParser.RECORDS_PER_BLOCK);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Upgrade_table_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_upgrade_table_clause;
+ return this;
+}
+
+Upgrade_table_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Upgrade_table_clauseContext.prototype.constructor = Upgrade_table_clauseContext;
+
+Upgrade_table_clauseContext.prototype.UPGRADE = function() {
+ return this.getToken(PlSqlParser.UPGRADE, 0);
+};
+
+Upgrade_table_clauseContext.prototype.column_properties = function() {
+ return this.getTypedRuleContext(Column_propertiesContext,0);
+};
+
+Upgrade_table_clauseContext.prototype.INCLUDING = function() {
+ return this.getToken(PlSqlParser.INCLUDING, 0);
+};
+
+Upgrade_table_clauseContext.prototype.DATA = function() {
+ return this.getToken(PlSqlParser.DATA, 0);
+};
+
+Upgrade_table_clauseContext.prototype.NOT = function() {
+ return this.getToken(PlSqlParser.NOT, 0);
+};
+
+Upgrade_table_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterUpgrade_table_clause(this);
+ }
+};
+
+Upgrade_table_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitUpgrade_table_clause(this);
+ }
+};
+
+Upgrade_table_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitUpgrade_table_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Upgrade_table_clauseContext = Upgrade_table_clauseContext;
+
+PlSqlParser.prototype.upgrade_table_clause = function() {
+
+ var localctx = new Upgrade_table_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 640, PlSqlParser.RULE_upgrade_table_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6494;
+ this.match(PlSqlParser.UPGRADE);
+
+ this.state = 6496;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.NOT) {
+ this.state = 6495;
+ this.match(PlSqlParser.NOT);
+ }
+
+ this.state = 6498;
+ this.match(PlSqlParser.INCLUDING);
+ this.state = 6499;
+ this.match(PlSqlParser.DATA);
+ this.state = 6501;
+ this.column_properties();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Drop_tableContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_drop_table;
+ return this;
+}
+
+Drop_tableContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Drop_tableContext.prototype.constructor = Drop_tableContext;
+
+Drop_tableContext.prototype.DROP = function() {
+ return this.getToken(PlSqlParser.DROP, 0);
+};
+
+Drop_tableContext.prototype.TABLE = function() {
+ return this.getToken(PlSqlParser.TABLE, 0);
+};
+
+Drop_tableContext.prototype.tableview_name = function() {
+ return this.getTypedRuleContext(Tableview_nameContext,0);
+};
+
+Drop_tableContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Drop_tableContext.prototype.PURGE = function() {
+ return this.getToken(PlSqlParser.PURGE, 0);
+};
+
+Drop_tableContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterDrop_table(this);
+ }
+};
+
+Drop_tableContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitDrop_table(this);
+ }
+};
+
+Drop_tableContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitDrop_table(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Drop_tableContext = Drop_tableContext;
+
+PlSqlParser.prototype.drop_table = function() {
+
+ var localctx = new Drop_tableContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 642, PlSqlParser.RULE_drop_table);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6503;
+ this.match(PlSqlParser.DROP);
+ this.state = 6504;
+ this.match(PlSqlParser.TABLE);
+ this.state = 6505;
+ this.tableview_name();
+ this.state = 6507;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.PURGE) {
+ this.state = 6506;
+ this.match(PlSqlParser.PURGE);
+ }
+
+ this.state = 6509;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Drop_viewContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_drop_view;
+ return this;
+}
+
+Drop_viewContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Drop_viewContext.prototype.constructor = Drop_viewContext;
+
+Drop_viewContext.prototype.DROP = function() {
+ return this.getToken(PlSqlParser.DROP, 0);
+};
+
+Drop_viewContext.prototype.VIEW = function() {
+ return this.getToken(PlSqlParser.VIEW, 0);
+};
+
+Drop_viewContext.prototype.tableview_name = function() {
+ return this.getTypedRuleContext(Tableview_nameContext,0);
+};
+
+Drop_viewContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Drop_viewContext.prototype.CASCADE = function() {
+ return this.getToken(PlSqlParser.CASCADE, 0);
+};
+
+Drop_viewContext.prototype.CONSTRAINT = function() {
+ return this.getToken(PlSqlParser.CONSTRAINT, 0);
+};
+
+Drop_viewContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterDrop_view(this);
+ }
+};
+
+Drop_viewContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitDrop_view(this);
+ }
+};
+
+Drop_viewContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitDrop_view(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Drop_viewContext = Drop_viewContext;
+
+PlSqlParser.prototype.drop_view = function() {
+
+ var localctx = new Drop_viewContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 644, PlSqlParser.RULE_drop_view);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6511;
+ this.match(PlSqlParser.DROP);
+ this.state = 6512;
+ this.match(PlSqlParser.VIEW);
+ this.state = 6513;
+ this.tableview_name();
+ this.state = 6516;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.CASCADE) {
+ this.state = 6514;
+ this.match(PlSqlParser.CASCADE);
+ this.state = 6515;
+ this.match(PlSqlParser.CONSTRAINT);
+ }
+
+ this.state = 6518;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Comment_on_columnContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_comment_on_column;
+ return this;
+}
+
+Comment_on_columnContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Comment_on_columnContext.prototype.constructor = Comment_on_columnContext;
+
+Comment_on_columnContext.prototype.COMMENT = function() {
+ return this.getToken(PlSqlParser.COMMENT, 0);
+};
+
+Comment_on_columnContext.prototype.ON = function() {
+ return this.getToken(PlSqlParser.ON, 0);
+};
+
+Comment_on_columnContext.prototype.COLUMN = function() {
+ return this.getToken(PlSqlParser.COLUMN, 0);
+};
+
+Comment_on_columnContext.prototype.column_name = function() {
+ return this.getTypedRuleContext(Column_nameContext,0);
+};
+
+Comment_on_columnContext.prototype.IS = function() {
+ return this.getToken(PlSqlParser.IS, 0);
+};
+
+Comment_on_columnContext.prototype.quoted_string = function() {
+ return this.getTypedRuleContext(Quoted_stringContext,0);
+};
+
+Comment_on_columnContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterComment_on_column(this);
+ }
+};
+
+Comment_on_columnContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitComment_on_column(this);
+ }
+};
+
+Comment_on_columnContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitComment_on_column(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Comment_on_columnContext = Comment_on_columnContext;
+
+PlSqlParser.prototype.comment_on_column = function() {
+
+ var localctx = new Comment_on_columnContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 646, PlSqlParser.RULE_comment_on_column);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6520;
+ this.match(PlSqlParser.COMMENT);
+ this.state = 6521;
+ this.match(PlSqlParser.ON);
+ this.state = 6522;
+ this.match(PlSqlParser.COLUMN);
+ this.state = 6523;
+ this.column_name();
+ this.state = 6524;
+ this.match(PlSqlParser.IS);
+ this.state = 6525;
+ this.quoted_string();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Enable_or_disableContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_enable_or_disable;
+ return this;
+}
+
+Enable_or_disableContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Enable_or_disableContext.prototype.constructor = Enable_or_disableContext;
+
+Enable_or_disableContext.prototype.ENABLE = function() {
+ return this.getToken(PlSqlParser.ENABLE, 0);
+};
+
+Enable_or_disableContext.prototype.DISABLE = function() {
+ return this.getToken(PlSqlParser.DISABLE, 0);
+};
+
+Enable_or_disableContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterEnable_or_disable(this);
+ }
+};
+
+Enable_or_disableContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitEnable_or_disable(this);
+ }
+};
+
+Enable_or_disableContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitEnable_or_disable(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Enable_or_disableContext = Enable_or_disableContext;
+
+PlSqlParser.prototype.enable_or_disable = function() {
+
+ var localctx = new Enable_or_disableContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 648, PlSqlParser.RULE_enable_or_disable);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6527;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.DISABLE || _la===PlSqlParser.ENABLE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Allow_or_disallowContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_allow_or_disallow;
+ return this;
+}
+
+Allow_or_disallowContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Allow_or_disallowContext.prototype.constructor = Allow_or_disallowContext;
+
+Allow_or_disallowContext.prototype.ALLOW = function() {
+ return this.getToken(PlSqlParser.ALLOW, 0);
+};
+
+Allow_or_disallowContext.prototype.DISALLOW = function() {
+ return this.getToken(PlSqlParser.DISALLOW, 0);
+};
+
+Allow_or_disallowContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAllow_or_disallow(this);
+ }
+};
+
+Allow_or_disallowContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAllow_or_disallow(this);
+ }
+};
+
+Allow_or_disallowContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAllow_or_disallow(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Allow_or_disallowContext = Allow_or_disallowContext;
+
+PlSqlParser.prototype.allow_or_disallow = function() {
+
+ var localctx = new Allow_or_disallowContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 650, PlSqlParser.RULE_allow_or_disallow);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6529;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.ALLOW || _la===PlSqlParser.DISALLOW)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_synonymContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_create_synonym;
+ return this;
+}
+
+Create_synonymContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_synonymContext.prototype.constructor = Create_synonymContext;
+
+Create_synonymContext.prototype.CREATE = function() {
+ return this.getToken(PlSqlParser.CREATE, 0);
+};
+
+Create_synonymContext.prototype.PUBLIC = function() {
+ return this.getToken(PlSqlParser.PUBLIC, 0);
+};
+
+Create_synonymContext.prototype.SYNONYM = function() {
+ return this.getToken(PlSqlParser.SYNONYM, 0);
+};
+
+Create_synonymContext.prototype.synonym_name = function() {
+ return this.getTypedRuleContext(Synonym_nameContext,0);
+};
+
+Create_synonymContext.prototype.FOR = function() {
+ return this.getToken(PlSqlParser.FOR, 0);
+};
+
+Create_synonymContext.prototype.schema_object_name = function() {
+ return this.getTypedRuleContext(Schema_object_nameContext,0);
+};
+
+Create_synonymContext.prototype.OR = function() {
+ return this.getToken(PlSqlParser.OR, 0);
+};
+
+Create_synonymContext.prototype.REPLACE = function() {
+ return this.getToken(PlSqlParser.REPLACE, 0);
+};
+
+Create_synonymContext.prototype.schema_name = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Schema_nameContext);
+ } else {
+ return this.getTypedRuleContext(Schema_nameContext,i);
+ }
+};
+
+Create_synonymContext.prototype.PERIOD = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.PERIOD);
+ } else {
+ return this.getToken(PlSqlParser.PERIOD, i);
+ }
+};
+
+
+Create_synonymContext.prototype.AT_SIGN = function() {
+ return this.getToken(PlSqlParser.AT_SIGN, 0);
+};
+
+Create_synonymContext.prototype.link_name = function() {
+ return this.getTypedRuleContext(Link_nameContext,0);
+};
+
+Create_synonymContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterCreate_synonym(this);
+ }
+};
+
+Create_synonymContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitCreate_synonym(this);
+ }
+};
+
+Create_synonymContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitCreate_synonym(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Create_synonymContext = Create_synonymContext;
+
+PlSqlParser.prototype.create_synonym = function() {
+
+ var localctx = new Create_synonymContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 652, PlSqlParser.RULE_create_synonym);
+ var _la = 0; // Token type
+ try {
+ this.state = 6573;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,784,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6531;
+ this.match(PlSqlParser.CREATE);
+ this.state = 6534;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.OR) {
+ this.state = 6532;
+ this.match(PlSqlParser.OR);
+ this.state = 6533;
+ this.match(PlSqlParser.REPLACE);
+ }
+
+ this.state = 6536;
+ this.match(PlSqlParser.PUBLIC);
+ this.state = 6537;
+ this.match(PlSqlParser.SYNONYM);
+ this.state = 6538;
+ this.synonym_name();
+ this.state = 6539;
+ this.match(PlSqlParser.FOR);
+ this.state = 6543;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,778,this._ctx);
+ if(la_===1) {
+ this.state = 6540;
+ this.schema_name();
+ this.state = 6541;
+ this.match(PlSqlParser.PERIOD);
+
+ }
+ this.state = 6545;
+ this.schema_object_name();
+ this.state = 6548;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,779,this._ctx);
+ if(la_===1) {
+ this.state = 6546;
+ this.match(PlSqlParser.AT_SIGN);
+ this.state = 6547;
+ this.link_name();
+
+ }
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 6550;
+ this.match(PlSqlParser.CREATE);
+ this.state = 6553;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.OR) {
+ this.state = 6551;
+ this.match(PlSqlParser.OR);
+ this.state = 6552;
+ this.match(PlSqlParser.REPLACE);
+ }
+
+ this.state = 6555;
+ this.match(PlSqlParser.SYNONYM);
+ this.state = 6559;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,781,this._ctx);
+ if(la_===1) {
+ this.state = 6556;
+ this.schema_name();
+ this.state = 6557;
+ this.match(PlSqlParser.PERIOD);
+
+ }
+ this.state = 6561;
+ this.synonym_name();
+ this.state = 6562;
+ this.match(PlSqlParser.FOR);
+ this.state = 6566;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,782,this._ctx);
+ if(la_===1) {
+ this.state = 6563;
+ this.schema_name();
+ this.state = 6564;
+ this.match(PlSqlParser.PERIOD);
+
+ }
+ this.state = 6568;
+ this.schema_object_name();
+ this.state = 6571;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,783,this._ctx);
+ if(la_===1) {
+ this.state = 6569;
+ this.match(PlSqlParser.AT_SIGN);
+ this.state = 6570;
+ this.link_name();
+
+ }
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Comment_on_tableContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_comment_on_table;
+ return this;
+}
+
+Comment_on_tableContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Comment_on_tableContext.prototype.constructor = Comment_on_tableContext;
+
+Comment_on_tableContext.prototype.COMMENT = function() {
+ return this.getToken(PlSqlParser.COMMENT, 0);
+};
+
+Comment_on_tableContext.prototype.ON = function() {
+ return this.getToken(PlSqlParser.ON, 0);
+};
+
+Comment_on_tableContext.prototype.TABLE = function() {
+ return this.getToken(PlSqlParser.TABLE, 0);
+};
+
+Comment_on_tableContext.prototype.tableview_name = function() {
+ return this.getTypedRuleContext(Tableview_nameContext,0);
+};
+
+Comment_on_tableContext.prototype.IS = function() {
+ return this.getToken(PlSqlParser.IS, 0);
+};
+
+Comment_on_tableContext.prototype.quoted_string = function() {
+ return this.getTypedRuleContext(Quoted_stringContext,0);
+};
+
+Comment_on_tableContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterComment_on_table(this);
+ }
+};
+
+Comment_on_tableContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitComment_on_table(this);
+ }
+};
+
+Comment_on_tableContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitComment_on_table(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Comment_on_tableContext = Comment_on_tableContext;
+
+PlSqlParser.prototype.comment_on_table = function() {
+
+ var localctx = new Comment_on_tableContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 654, PlSqlParser.RULE_comment_on_table);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6575;
+ this.match(PlSqlParser.COMMENT);
+ this.state = 6576;
+ this.match(PlSqlParser.ON);
+ this.state = 6577;
+ this.match(PlSqlParser.TABLE);
+ this.state = 6578;
+ this.tableview_name();
+ this.state = 6579;
+ this.match(PlSqlParser.IS);
+ this.state = 6580;
+ this.quoted_string();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Alter_clusterContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_alter_cluster;
+ return this;
+}
+
+Alter_clusterContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Alter_clusterContext.prototype.constructor = Alter_clusterContext;
+
+Alter_clusterContext.prototype.ALTER = function() {
+ return this.getToken(PlSqlParser.ALTER, 0);
+};
+
+Alter_clusterContext.prototype.CLUSTER = function() {
+ return this.getToken(PlSqlParser.CLUSTER, 0);
+};
+
+Alter_clusterContext.prototype.cluster_name = function() {
+ return this.getTypedRuleContext(Cluster_nameContext,0);
+};
+
+Alter_clusterContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Alter_clusterContext.prototype.physical_attributes_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Physical_attributes_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Physical_attributes_clauseContext,i);
+ }
+};
+
+Alter_clusterContext.prototype.SIZE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.SIZE);
+ } else {
+ return this.getToken(PlSqlParser.SIZE, i);
+ }
+};
+
+
+Alter_clusterContext.prototype.size_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Size_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Size_clauseContext,i);
+ }
+};
+
+Alter_clusterContext.prototype.allocate_extent_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Allocate_extent_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Allocate_extent_clauseContext,i);
+ }
+};
+
+Alter_clusterContext.prototype.deallocate_unused_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Deallocate_unused_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Deallocate_unused_clauseContext,i);
+ }
+};
+
+Alter_clusterContext.prototype.cache_or_nocache = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Cache_or_nocacheContext);
+ } else {
+ return this.getTypedRuleContext(Cache_or_nocacheContext,i);
+ }
+};
+
+Alter_clusterContext.prototype.parallel_clause = function() {
+ return this.getTypedRuleContext(Parallel_clauseContext,0);
+};
+
+Alter_clusterContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAlter_cluster(this);
+ }
+};
+
+Alter_clusterContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAlter_cluster(this);
+ }
+};
+
+Alter_clusterContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAlter_cluster(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Alter_clusterContext = Alter_clusterContext;
+
+PlSqlParser.prototype.alter_cluster = function() {
+
+ var localctx = new Alter_clusterContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 656, PlSqlParser.RULE_alter_cluster);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6582;
+ this.match(PlSqlParser.ALTER);
+ this.state = 6583;
+ this.match(PlSqlParser.CLUSTER);
+ this.state = 6584;
+ this.cluster_name();
+ this.state = 6591;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 6591;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.INITRANS:
+ case PlSqlParser.PCTFREE:
+ case PlSqlParser.PCTUSED:
+ case PlSqlParser.STORAGE:
+ this.state = 6585;
+ this.physical_attributes_clause();
+ break;
+ case PlSqlParser.SIZE:
+ this.state = 6586;
+ this.match(PlSqlParser.SIZE);
+ this.state = 6587;
+ this.size_clause();
+ break;
+ case PlSqlParser.ALLOCATE:
+ this.state = 6588;
+ this.allocate_extent_clause();
+ break;
+ case PlSqlParser.DEALLOCATE:
+ this.state = 6589;
+ this.deallocate_unused_clause();
+ break;
+ case PlSqlParser.CACHE:
+ case PlSqlParser.NOCACHE:
+ this.state = 6590;
+ this.cache_or_nocache();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 6593;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(_la===PlSqlParser.ALLOCATE || _la===PlSqlParser.CACHE || _la===PlSqlParser.DEALLOCATE || _la===PlSqlParser.INITRANS || _la===PlSqlParser.NOCACHE || _la===PlSqlParser.PCTFREE || _la===PlSqlParser.PCTUSED || _la===PlSqlParser.SIZE || _la===PlSqlParser.STORAGE);
+ this.state = 6596;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.NOPARALLEL || _la===PlSqlParser.PARALLEL) {
+ this.state = 6595;
+ this.parallel_clause();
+ }
+
+ this.state = 6598;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Cache_or_nocacheContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_cache_or_nocache;
+ return this;
+}
+
+Cache_or_nocacheContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Cache_or_nocacheContext.prototype.constructor = Cache_or_nocacheContext;
+
+Cache_or_nocacheContext.prototype.CACHE = function() {
+ return this.getToken(PlSqlParser.CACHE, 0);
+};
+
+Cache_or_nocacheContext.prototype.NOCACHE = function() {
+ return this.getToken(PlSqlParser.NOCACHE, 0);
+};
+
+Cache_or_nocacheContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterCache_or_nocache(this);
+ }
+};
+
+Cache_or_nocacheContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitCache_or_nocache(this);
+ }
+};
+
+Cache_or_nocacheContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitCache_or_nocache(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Cache_or_nocacheContext = Cache_or_nocacheContext;
+
+PlSqlParser.prototype.cache_or_nocache = function() {
+
+ var localctx = new Cache_or_nocacheContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 658, PlSqlParser.RULE_cache_or_nocache);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6600;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.CACHE || _la===PlSqlParser.NOCACHE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Database_nameContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_database_name;
+ return this;
+}
+
+Database_nameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Database_nameContext.prototype.constructor = Database_nameContext;
+
+Database_nameContext.prototype.regular_id = function() {
+ return this.getTypedRuleContext(Regular_idContext,0);
+};
+
+Database_nameContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterDatabase_name(this);
+ }
+};
+
+Database_nameContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitDatabase_name(this);
+ }
+};
+
+Database_nameContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitDatabase_name(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Database_nameContext = Database_nameContext;
+
+PlSqlParser.prototype.database_name = function() {
+
+ var localctx = new Database_nameContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 660, PlSqlParser.RULE_database_name);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6602;
+ this.regular_id();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Alter_databaseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_alter_database;
+ return this;
+}
+
+Alter_databaseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Alter_databaseContext.prototype.constructor = Alter_databaseContext;
+
+Alter_databaseContext.prototype.ALTER = function() {
+ return this.getToken(PlSqlParser.ALTER, 0);
+};
+
+Alter_databaseContext.prototype.DATABASE = function() {
+ return this.getToken(PlSqlParser.DATABASE, 0);
+};
+
+Alter_databaseContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Alter_databaseContext.prototype.startup_clauses = function() {
+ return this.getTypedRuleContext(Startup_clausesContext,0);
+};
+
+Alter_databaseContext.prototype.recovery_clauses = function() {
+ return this.getTypedRuleContext(Recovery_clausesContext,0);
+};
+
+Alter_databaseContext.prototype.database_file_clauses = function() {
+ return this.getTypedRuleContext(Database_file_clausesContext,0);
+};
+
+Alter_databaseContext.prototype.logfile_clauses = function() {
+ return this.getTypedRuleContext(Logfile_clausesContext,0);
+};
+
+Alter_databaseContext.prototype.controlfile_clauses = function() {
+ return this.getTypedRuleContext(Controlfile_clausesContext,0);
+};
+
+Alter_databaseContext.prototype.standby_database_clauses = function() {
+ return this.getTypedRuleContext(Standby_database_clausesContext,0);
+};
+
+Alter_databaseContext.prototype.default_settings_clause = function() {
+ return this.getTypedRuleContext(Default_settings_clauseContext,0);
+};
+
+Alter_databaseContext.prototype.instance_clauses = function() {
+ return this.getTypedRuleContext(Instance_clausesContext,0);
+};
+
+Alter_databaseContext.prototype.security_clause = function() {
+ return this.getTypedRuleContext(Security_clauseContext,0);
+};
+
+Alter_databaseContext.prototype.database_name = function() {
+ return this.getTypedRuleContext(Database_nameContext,0);
+};
+
+Alter_databaseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAlter_database(this);
+ }
+};
+
+Alter_databaseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAlter_database(this);
+ }
+};
+
+Alter_databaseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAlter_database(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Alter_databaseContext = Alter_databaseContext;
+
+PlSqlParser.prototype.alter_database = function() {
+
+ var localctx = new Alter_databaseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 662, PlSqlParser.RULE_alter_database);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6604;
+ this.match(PlSqlParser.ALTER);
+ this.state = 6605;
+ this.match(PlSqlParser.DATABASE);
+ this.state = 6607;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,788,this._ctx);
+ if(la_===1) {
+ this.state = 6606;
+ this.database_name();
+
+ }
+ this.state = 6618;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,789,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 6609;
+ this.startup_clauses();
+ break;
+
+ case 2:
+ this.state = 6610;
+ this.recovery_clauses();
+ break;
+
+ case 3:
+ this.state = 6611;
+ this.database_file_clauses();
+ break;
+
+ case 4:
+ this.state = 6612;
+ this.logfile_clauses();
+ break;
+
+ case 5:
+ this.state = 6613;
+ this.controlfile_clauses();
+ break;
+
+ case 6:
+ this.state = 6614;
+ this.standby_database_clauses();
+ break;
+
+ case 7:
+ this.state = 6615;
+ this.default_settings_clause();
+ break;
+
+ case 8:
+ this.state = 6616;
+ this.instance_clauses();
+ break;
+
+ case 9:
+ this.state = 6617;
+ this.security_clause();
+ break;
+
+ }
+ this.state = 6620;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Startup_clausesContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_startup_clauses;
+ return this;
+}
+
+Startup_clausesContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Startup_clausesContext.prototype.constructor = Startup_clausesContext;
+
+Startup_clausesContext.prototype.MOUNT = function() {
+ return this.getToken(PlSqlParser.MOUNT, 0);
+};
+
+Startup_clausesContext.prototype.DATABASE = function() {
+ return this.getToken(PlSqlParser.DATABASE, 0);
+};
+
+Startup_clausesContext.prototype.STANDBY = function() {
+ return this.getToken(PlSqlParser.STANDBY, 0);
+};
+
+Startup_clausesContext.prototype.CLONE = function() {
+ return this.getToken(PlSqlParser.CLONE, 0);
+};
+
+Startup_clausesContext.prototype.OPEN = function() {
+ return this.getToken(PlSqlParser.OPEN, 0);
+};
+
+Startup_clausesContext.prototype.READ = function() {
+ return this.getToken(PlSqlParser.READ, 0);
+};
+
+Startup_clausesContext.prototype.WRITE = function() {
+ return this.getToken(PlSqlParser.WRITE, 0);
+};
+
+Startup_clausesContext.prototype.resetlogs_or_noresetlogs = function() {
+ return this.getTypedRuleContext(Resetlogs_or_noresetlogsContext,0);
+};
+
+Startup_clausesContext.prototype.upgrade_or_downgrade = function() {
+ return this.getTypedRuleContext(Upgrade_or_downgradeContext,0);
+};
+
+Startup_clausesContext.prototype.ONLY = function() {
+ return this.getToken(PlSqlParser.ONLY, 0);
+};
+
+Startup_clausesContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterStartup_clauses(this);
+ }
+};
+
+Startup_clausesContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitStartup_clauses(this);
+ }
+};
+
+Startup_clausesContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitStartup_clauses(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Startup_clausesContext = Startup_clausesContext;
+
+PlSqlParser.prototype.startup_clauses = function() {
+
+ var localctx = new Startup_clausesContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 664, PlSqlParser.RULE_startup_clauses);
+ var _la = 0; // Token type
+ try {
+ this.state = 6641;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,794,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6622;
+ this.match(PlSqlParser.MOUNT);
+ this.state = 6625;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.CLONE || _la===PlSqlParser.STANDBY) {
+ this.state = 6623;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.CLONE || _la===PlSqlParser.STANDBY)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 6624;
+ this.match(PlSqlParser.DATABASE);
+ }
+
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 6627;
+ this.match(PlSqlParser.OPEN);
+ this.state = 6630;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.READ) {
+ this.state = 6628;
+ this.match(PlSqlParser.READ);
+ this.state = 6629;
+ this.match(PlSqlParser.WRITE);
+ }
+
+ this.state = 6633;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.NORESETLOGS || _la===PlSqlParser.RESETLOGS) {
+ this.state = 6632;
+ this.resetlogs_or_noresetlogs();
+ }
+
+ this.state = 6636;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.DOWNGRADE || _la===PlSqlParser.UPGRADE) {
+ this.state = 6635;
+ this.upgrade_or_downgrade();
+ }
+
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 6638;
+ this.match(PlSqlParser.OPEN);
+ this.state = 6639;
+ this.match(PlSqlParser.READ);
+ this.state = 6640;
+ this.match(PlSqlParser.ONLY);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Resetlogs_or_noresetlogsContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_resetlogs_or_noresetlogs;
+ return this;
+}
+
+Resetlogs_or_noresetlogsContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Resetlogs_or_noresetlogsContext.prototype.constructor = Resetlogs_or_noresetlogsContext;
+
+Resetlogs_or_noresetlogsContext.prototype.RESETLOGS = function() {
+ return this.getToken(PlSqlParser.RESETLOGS, 0);
+};
+
+Resetlogs_or_noresetlogsContext.prototype.NORESETLOGS = function() {
+ return this.getToken(PlSqlParser.NORESETLOGS, 0);
+};
+
+Resetlogs_or_noresetlogsContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterResetlogs_or_noresetlogs(this);
+ }
+};
+
+Resetlogs_or_noresetlogsContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitResetlogs_or_noresetlogs(this);
+ }
+};
+
+Resetlogs_or_noresetlogsContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitResetlogs_or_noresetlogs(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Resetlogs_or_noresetlogsContext = Resetlogs_or_noresetlogsContext;
+
+PlSqlParser.prototype.resetlogs_or_noresetlogs = function() {
+
+ var localctx = new Resetlogs_or_noresetlogsContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 666, PlSqlParser.RULE_resetlogs_or_noresetlogs);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6643;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.NORESETLOGS || _la===PlSqlParser.RESETLOGS)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Upgrade_or_downgradeContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_upgrade_or_downgrade;
+ return this;
+}
+
+Upgrade_or_downgradeContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Upgrade_or_downgradeContext.prototype.constructor = Upgrade_or_downgradeContext;
+
+Upgrade_or_downgradeContext.prototype.UPGRADE = function() {
+ return this.getToken(PlSqlParser.UPGRADE, 0);
+};
+
+Upgrade_or_downgradeContext.prototype.DOWNGRADE = function() {
+ return this.getToken(PlSqlParser.DOWNGRADE, 0);
+};
+
+Upgrade_or_downgradeContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterUpgrade_or_downgrade(this);
+ }
+};
+
+Upgrade_or_downgradeContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitUpgrade_or_downgrade(this);
+ }
+};
+
+Upgrade_or_downgradeContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitUpgrade_or_downgrade(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Upgrade_or_downgradeContext = Upgrade_or_downgradeContext;
+
+PlSqlParser.prototype.upgrade_or_downgrade = function() {
+
+ var localctx = new Upgrade_or_downgradeContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 668, PlSqlParser.RULE_upgrade_or_downgrade);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6645;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.DOWNGRADE || _la===PlSqlParser.UPGRADE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Recovery_clausesContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_recovery_clauses;
+ return this;
+}
+
+Recovery_clausesContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Recovery_clausesContext.prototype.constructor = Recovery_clausesContext;
+
+Recovery_clausesContext.prototype.general_recovery = function() {
+ return this.getTypedRuleContext(General_recoveryContext,0);
+};
+
+Recovery_clausesContext.prototype.managed_standby_recovery = function() {
+ return this.getTypedRuleContext(Managed_standby_recoveryContext,0);
+};
+
+Recovery_clausesContext.prototype.begin_or_end = function() {
+ return this.getTypedRuleContext(Begin_or_endContext,0);
+};
+
+Recovery_clausesContext.prototype.BACKUP = function() {
+ return this.getToken(PlSqlParser.BACKUP, 0);
+};
+
+Recovery_clausesContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterRecovery_clauses(this);
+ }
+};
+
+Recovery_clausesContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitRecovery_clauses(this);
+ }
+};
+
+Recovery_clausesContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitRecovery_clauses(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Recovery_clausesContext = Recovery_clausesContext;
+
+PlSqlParser.prototype.recovery_clauses = function() {
+
+ var localctx = new Recovery_clausesContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 670, PlSqlParser.RULE_recovery_clauses);
+ try {
+ this.state = 6652;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,795,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6647;
+ this.general_recovery();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 6648;
+ this.managed_standby_recovery();
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 6649;
+ this.begin_or_end();
+ this.state = 6650;
+ this.match(PlSqlParser.BACKUP);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Begin_or_endContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_begin_or_end;
+ return this;
+}
+
+Begin_or_endContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Begin_or_endContext.prototype.constructor = Begin_or_endContext;
+
+Begin_or_endContext.prototype.BEGIN = function() {
+ return this.getToken(PlSqlParser.BEGIN, 0);
+};
+
+Begin_or_endContext.prototype.END = function() {
+ return this.getToken(PlSqlParser.END, 0);
+};
+
+Begin_or_endContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterBegin_or_end(this);
+ }
+};
+
+Begin_or_endContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitBegin_or_end(this);
+ }
+};
+
+Begin_or_endContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitBegin_or_end(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Begin_or_endContext = Begin_or_endContext;
+
+PlSqlParser.prototype.begin_or_end = function() {
+
+ var localctx = new Begin_or_endContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 672, PlSqlParser.RULE_begin_or_end);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6654;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.BEGIN || _la===PlSqlParser.END)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function General_recoveryContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_general_recovery;
+ return this;
+}
+
+General_recoveryContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+General_recoveryContext.prototype.constructor = General_recoveryContext;
+
+General_recoveryContext.prototype.RECOVER = function() {
+ return this.getToken(PlSqlParser.RECOVER, 0);
+};
+
+General_recoveryContext.prototype.CONTINUE = function() {
+ return this.getToken(PlSqlParser.CONTINUE, 0);
+};
+
+General_recoveryContext.prototype.CANCEL = function() {
+ return this.getToken(PlSqlParser.CANCEL, 0);
+};
+
+General_recoveryContext.prototype.AUTOMATIC = function() {
+ return this.getToken(PlSqlParser.AUTOMATIC, 0);
+};
+
+General_recoveryContext.prototype.FROM = function() {
+ return this.getToken(PlSqlParser.FROM, 0);
+};
+
+General_recoveryContext.prototype.CHAR_STRING = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.CHAR_STRING);
+ } else {
+ return this.getToken(PlSqlParser.CHAR_STRING, i);
+ }
+};
+
+
+General_recoveryContext.prototype.full_database_recovery = function() {
+ return this.getTypedRuleContext(Full_database_recoveryContext,0);
+};
+
+General_recoveryContext.prototype.partial_database_recovery = function() {
+ return this.getTypedRuleContext(Partial_database_recoveryContext,0);
+};
+
+General_recoveryContext.prototype.LOGFILE = function() {
+ return this.getToken(PlSqlParser.LOGFILE, 0);
+};
+
+General_recoveryContext.prototype.DEFAULT = function() {
+ return this.getToken(PlSqlParser.DEFAULT, 0);
+};
+
+General_recoveryContext.prototype.TEST = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.TEST);
+ } else {
+ return this.getToken(PlSqlParser.TEST, i);
+ }
+};
+
+
+General_recoveryContext.prototype.ALLOW = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.ALLOW);
+ } else {
+ return this.getToken(PlSqlParser.ALLOW, i);
+ }
+};
+
+
+General_recoveryContext.prototype.UNSIGNED_INTEGER = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.UNSIGNED_INTEGER);
+ } else {
+ return this.getToken(PlSqlParser.UNSIGNED_INTEGER, i);
+ }
+};
+
+
+General_recoveryContext.prototype.CORRUPTION = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.CORRUPTION);
+ } else {
+ return this.getToken(PlSqlParser.CORRUPTION, i);
+ }
+};
+
+
+General_recoveryContext.prototype.parallel_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Parallel_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Parallel_clauseContext,i);
+ }
+};
+
+General_recoveryContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterGeneral_recovery(this);
+ }
+};
+
+General_recoveryContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitGeneral_recovery(this);
+ }
+};
+
+General_recoveryContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitGeneral_recovery(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.General_recoveryContext = General_recoveryContext;
+
+PlSqlParser.prototype.general_recovery = function() {
+
+ var localctx = new General_recoveryContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 674, PlSqlParser.RULE_general_recovery);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6656;
+ this.match(PlSqlParser.RECOVER);
+ this.state = 6658;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,796,this._ctx);
+ if(la_===1) {
+ this.state = 6657;
+ this.match(PlSqlParser.AUTOMATIC);
+
+ }
+ this.state = 6662;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,797,this._ctx);
+ if(la_===1) {
+ this.state = 6660;
+ this.match(PlSqlParser.FROM);
+ this.state = 6661;
+ this.match(PlSqlParser.CHAR_STRING);
+
+ }
+ this.state = 6686;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,803,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 6668;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,798,this._ctx);
+ if(la_===1) {
+ this.state = 6664;
+ this.full_database_recovery();
+
+ } else if(la_===2) {
+ this.state = 6665;
+ this.partial_database_recovery();
+
+ } else if(la_===3) {
+ this.state = 6666;
+ this.match(PlSqlParser.LOGFILE);
+ this.state = 6667;
+ this.match(PlSqlParser.CHAR_STRING);
+
+ }
+ this.state = 6679;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.ALLOW || _la===PlSqlParser.NOPARALLEL || _la===PlSqlParser.PARALLEL || _la===PlSqlParser.TEST) {
+ this.state = 6675;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 6675;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.TEST:
+ this.state = 6670;
+ this.match(PlSqlParser.TEST);
+ break;
+ case PlSqlParser.ALLOW:
+ this.state = 6671;
+ this.match(PlSqlParser.ALLOW);
+ this.state = 6672;
+ this.match(PlSqlParser.UNSIGNED_INTEGER);
+ this.state = 6673;
+ this.match(PlSqlParser.CORRUPTION);
+ break;
+ case PlSqlParser.NOPARALLEL:
+ case PlSqlParser.PARALLEL:
+ this.state = 6674;
+ this.parallel_clause();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 6677;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(_la===PlSqlParser.ALLOW || _la===PlSqlParser.NOPARALLEL || _la===PlSqlParser.PARALLEL || _la===PlSqlParser.TEST);
+ }
+
+ break;
+
+ case 2:
+ this.state = 6681;
+ this.match(PlSqlParser.CONTINUE);
+ this.state = 6683;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.DEFAULT) {
+ this.state = 6682;
+ this.match(PlSqlParser.DEFAULT);
+ }
+
+ break;
+
+ case 3:
+ this.state = 6685;
+ this.match(PlSqlParser.CANCEL);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Full_database_recoveryContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_full_database_recovery;
+ return this;
+}
+
+Full_database_recoveryContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Full_database_recoveryContext.prototype.constructor = Full_database_recoveryContext;
+
+Full_database_recoveryContext.prototype.DATABASE = function() {
+ return this.getToken(PlSqlParser.DATABASE, 0);
+};
+
+Full_database_recoveryContext.prototype.STANDBY = function() {
+ return this.getToken(PlSqlParser.STANDBY, 0);
+};
+
+Full_database_recoveryContext.prototype.UNTIL = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.UNTIL);
+ } else {
+ return this.getToken(PlSqlParser.UNTIL, i);
+ }
+};
+
+
+Full_database_recoveryContext.prototype.USING = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.USING);
+ } else {
+ return this.getToken(PlSqlParser.USING, i);
+ }
+};
+
+
+Full_database_recoveryContext.prototype.BACKUP = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.BACKUP);
+ } else {
+ return this.getToken(PlSqlParser.BACKUP, i);
+ }
+};
+
+
+Full_database_recoveryContext.prototype.CONTROLFILE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.CONTROLFILE);
+ } else {
+ return this.getToken(PlSqlParser.CONTROLFILE, i);
+ }
+};
+
+
+Full_database_recoveryContext.prototype.CANCEL = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.CANCEL);
+ } else {
+ return this.getToken(PlSqlParser.CANCEL, i);
+ }
+};
+
+
+Full_database_recoveryContext.prototype.TIME = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.TIME);
+ } else {
+ return this.getToken(PlSqlParser.TIME, i);
+ }
+};
+
+
+Full_database_recoveryContext.prototype.CHAR_STRING = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.CHAR_STRING);
+ } else {
+ return this.getToken(PlSqlParser.CHAR_STRING, i);
+ }
+};
+
+
+Full_database_recoveryContext.prototype.CHANGE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.CHANGE);
+ } else {
+ return this.getToken(PlSqlParser.CHANGE, i);
+ }
+};
+
+
+Full_database_recoveryContext.prototype.UNSIGNED_INTEGER = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.UNSIGNED_INTEGER);
+ } else {
+ return this.getToken(PlSqlParser.UNSIGNED_INTEGER, i);
+ }
+};
+
+
+Full_database_recoveryContext.prototype.CONSISTENT = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.CONSISTENT);
+ } else {
+ return this.getToken(PlSqlParser.CONSISTENT, i);
+ }
+};
+
+
+Full_database_recoveryContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterFull_database_recovery(this);
+ }
+};
+
+Full_database_recoveryContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitFull_database_recovery(this);
+ }
+};
+
+Full_database_recoveryContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitFull_database_recovery(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Full_database_recoveryContext = Full_database_recoveryContext;
+
+PlSqlParser.prototype.full_database_recovery = function() {
+
+ var localctx = new Full_database_recoveryContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 676, PlSqlParser.RULE_full_database_recovery);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6689;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.STANDBY) {
+ this.state = 6688;
+ this.match(PlSqlParser.STANDBY);
+ }
+
+ this.state = 6691;
+ this.match(PlSqlParser.DATABASE);
+ this.state = 6708;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.UNTIL || _la===PlSqlParser.USING) {
+ this.state = 6704;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 6704;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.UNTIL:
+ this.state = 6692;
+ this.match(PlSqlParser.UNTIL);
+ this.state = 6699;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.CANCEL:
+ this.state = 6693;
+ this.match(PlSqlParser.CANCEL);
+ break;
+ case PlSqlParser.TIME:
+ this.state = 6694;
+ this.match(PlSqlParser.TIME);
+ this.state = 6695;
+ this.match(PlSqlParser.CHAR_STRING);
+ break;
+ case PlSqlParser.CHANGE:
+ this.state = 6696;
+ this.match(PlSqlParser.CHANGE);
+ this.state = 6697;
+ this.match(PlSqlParser.UNSIGNED_INTEGER);
+ break;
+ case PlSqlParser.CONSISTENT:
+ this.state = 6698;
+ this.match(PlSqlParser.CONSISTENT);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ break;
+ case PlSqlParser.USING:
+ this.state = 6701;
+ this.match(PlSqlParser.USING);
+ this.state = 6702;
+ this.match(PlSqlParser.BACKUP);
+ this.state = 6703;
+ this.match(PlSqlParser.CONTROLFILE);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 6706;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(_la===PlSqlParser.UNTIL || _la===PlSqlParser.USING);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Partial_database_recoveryContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_partial_database_recovery;
+ return this;
+}
+
+Partial_database_recoveryContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Partial_database_recoveryContext.prototype.constructor = Partial_database_recoveryContext;
+
+Partial_database_recoveryContext.prototype.TABLESPACE = function() {
+ return this.getToken(PlSqlParser.TABLESPACE, 0);
+};
+
+Partial_database_recoveryContext.prototype.tablespace = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(TablespaceContext);
+ } else {
+ return this.getTypedRuleContext(TablespaceContext,i);
+ }
+};
+
+Partial_database_recoveryContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Partial_database_recoveryContext.prototype.DATAFILE = function() {
+ return this.getToken(PlSqlParser.DATAFILE, 0);
+};
+
+Partial_database_recoveryContext.prototype.CHAR_STRING = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.CHAR_STRING);
+ } else {
+ return this.getToken(PlSqlParser.CHAR_STRING, i);
+ }
+};
+
+
+Partial_database_recoveryContext.prototype.filenumber = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(FilenumberContext);
+ } else {
+ return this.getTypedRuleContext(FilenumberContext,i);
+ }
+};
+
+Partial_database_recoveryContext.prototype.partial_database_recovery_10g = function() {
+ return this.getTypedRuleContext(Partial_database_recovery_10gContext,0);
+};
+
+Partial_database_recoveryContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterPartial_database_recovery(this);
+ }
+};
+
+Partial_database_recoveryContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitPartial_database_recovery(this);
+ }
+};
+
+Partial_database_recoveryContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitPartial_database_recovery(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Partial_database_recoveryContext = Partial_database_recoveryContext;
+
+PlSqlParser.prototype.partial_database_recovery = function() {
+
+ var localctx = new Partial_database_recoveryContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 678, PlSqlParser.RULE_partial_database_recovery);
+ var _la = 0; // Token type
+ try {
+ this.state = 6731;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,812,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6710;
+ this.match(PlSqlParser.TABLESPACE);
+ this.state = 6711;
+ this.tablespace();
+ this.state = 6716;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 6712;
+ this.match(PlSqlParser.COMMA);
+ this.state = 6713;
+ this.tablespace();
+ this.state = 6718;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 6719;
+ this.match(PlSqlParser.DATAFILE);
+ this.state = 6720;
+ this.match(PlSqlParser.CHAR_STRING);
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 6721;
+ this.filenumber();
+ this.state = 6727;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.UNSIGNED_INTEGER || _la===PlSqlParser.COMMA) {
+ this.state = 6725;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.COMMA:
+ this.state = 6722;
+ this.match(PlSqlParser.COMMA);
+ this.state = 6723;
+ this.match(PlSqlParser.CHAR_STRING);
+ break;
+ case PlSqlParser.UNSIGNED_INTEGER:
+ this.state = 6724;
+ this.filenumber();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 6729;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+
+ case 4:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 6730;
+ this.partial_database_recovery_10g();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Partial_database_recovery_10gContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_partial_database_recovery_10g;
+ return this;
+}
+
+Partial_database_recovery_10gContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Partial_database_recovery_10gContext.prototype.constructor = Partial_database_recovery_10gContext;
+
+Partial_database_recovery_10gContext.prototype.STANDBY = function() {
+ return this.getToken(PlSqlParser.STANDBY, 0);
+};
+
+Partial_database_recovery_10gContext.prototype.UNTIL = function() {
+ return this.getToken(PlSqlParser.UNTIL, 0);
+};
+
+Partial_database_recovery_10gContext.prototype.CONTROLFILE = function() {
+ return this.getToken(PlSqlParser.CONTROLFILE, 0);
+};
+
+Partial_database_recovery_10gContext.prototype.TABLESPACE = function() {
+ return this.getToken(PlSqlParser.TABLESPACE, 0);
+};
+
+Partial_database_recovery_10gContext.prototype.tablespace = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(TablespaceContext);
+ } else {
+ return this.getTypedRuleContext(TablespaceContext,i);
+ }
+};
+
+Partial_database_recovery_10gContext.prototype.DATAFILE = function() {
+ return this.getToken(PlSqlParser.DATAFILE, 0);
+};
+
+Partial_database_recovery_10gContext.prototype.CHAR_STRING = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.CHAR_STRING);
+ } else {
+ return this.getToken(PlSqlParser.CHAR_STRING, i);
+ }
+};
+
+
+Partial_database_recovery_10gContext.prototype.filenumber = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(FilenumberContext);
+ } else {
+ return this.getTypedRuleContext(FilenumberContext,i);
+ }
+};
+
+Partial_database_recovery_10gContext.prototype.CONSISTENT = function() {
+ return this.getToken(PlSqlParser.CONSISTENT, 0);
+};
+
+Partial_database_recovery_10gContext.prototype.WITH = function() {
+ return this.getToken(PlSqlParser.WITH, 0);
+};
+
+Partial_database_recovery_10gContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Partial_database_recovery_10gContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterPartial_database_recovery_10g(this);
+ }
+};
+
+Partial_database_recovery_10gContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitPartial_database_recovery_10g(this);
+ }
+};
+
+Partial_database_recovery_10gContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitPartial_database_recovery_10g(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Partial_database_recovery_10gContext = Partial_database_recovery_10gContext;
+
+PlSqlParser.prototype.partial_database_recovery_10g = function() {
+
+ var localctx = new Partial_database_recovery_10gContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 680, PlSqlParser.RULE_partial_database_recovery_10g);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6733;
+ if (!( isVersion10())) {
+ throw new antlr4.error.FailedPredicateException(this, "isVersion10()");
+ }
+ this.state = 6734;
+ this.match(PlSqlParser.STANDBY);
+ this.state = 6755;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.TABLESPACE:
+ this.state = 6735;
+ this.match(PlSqlParser.TABLESPACE);
+ this.state = 6736;
+ this.tablespace();
+ this.state = 6741;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 6737;
+ this.match(PlSqlParser.COMMA);
+ this.state = 6738;
+ this.tablespace();
+ this.state = 6743;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+ case PlSqlParser.DATAFILE:
+ this.state = 6744;
+ this.match(PlSqlParser.DATAFILE);
+ this.state = 6745;
+ this.match(PlSqlParser.CHAR_STRING);
+ break;
+ case PlSqlParser.UNSIGNED_INTEGER:
+ this.state = 6746;
+ this.filenumber();
+ this.state = 6752;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.UNSIGNED_INTEGER || _la===PlSqlParser.COMMA) {
+ this.state = 6750;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.COMMA:
+ this.state = 6747;
+ this.match(PlSqlParser.COMMA);
+ this.state = 6748;
+ this.match(PlSqlParser.CHAR_STRING);
+ break;
+ case PlSqlParser.UNSIGNED_INTEGER:
+ this.state = 6749;
+ this.filenumber();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 6754;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 6757;
+ this.match(PlSqlParser.UNTIL);
+ this.state = 6760;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.CONSISTENT) {
+ this.state = 6758;
+ this.match(PlSqlParser.CONSISTENT);
+ this.state = 6759;
+ this.match(PlSqlParser.WITH);
+ }
+
+ this.state = 6762;
+ this.match(PlSqlParser.CONTROLFILE);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Managed_standby_recoveryContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_managed_standby_recovery;
+ return this;
+}
+
+Managed_standby_recoveryContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Managed_standby_recoveryContext.prototype.constructor = Managed_standby_recoveryContext;
+
+Managed_standby_recoveryContext.prototype.RECOVER = function() {
+ return this.getToken(PlSqlParser.RECOVER, 0);
+};
+
+Managed_standby_recoveryContext.prototype.MANAGED = function() {
+ return this.getToken(PlSqlParser.MANAGED, 0);
+};
+
+Managed_standby_recoveryContext.prototype.STANDBY = function() {
+ return this.getToken(PlSqlParser.STANDBY, 0);
+};
+
+Managed_standby_recoveryContext.prototype.DATABASE = function() {
+ return this.getToken(PlSqlParser.DATABASE, 0);
+};
+
+Managed_standby_recoveryContext.prototype.TO = function() {
+ return this.getToken(PlSqlParser.TO, 0);
+};
+
+Managed_standby_recoveryContext.prototype.LOGICAL = function() {
+ return this.getToken(PlSqlParser.LOGICAL, 0);
+};
+
+Managed_standby_recoveryContext.prototype.db_name = function() {
+ return this.getTypedRuleContext(Db_nameContext,0);
+};
+
+Managed_standby_recoveryContext.prototype.KEEP = function() {
+ return this.getToken(PlSqlParser.KEEP, 0);
+};
+
+Managed_standby_recoveryContext.prototype.IDENTITY = function() {
+ return this.getToken(PlSqlParser.IDENTITY, 0);
+};
+
+Managed_standby_recoveryContext.prototype.FINISH = function() {
+ return this.getToken(PlSqlParser.FINISH, 0);
+};
+
+Managed_standby_recoveryContext.prototype.CANCEL = function() {
+ return this.getToken(PlSqlParser.CANCEL, 0);
+};
+
+Managed_standby_recoveryContext.prototype.USING = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.USING);
+ } else {
+ return this.getToken(PlSqlParser.USING, i);
+ }
+};
+
+
+Managed_standby_recoveryContext.prototype.CURRENT = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.CURRENT);
+ } else {
+ return this.getToken(PlSqlParser.CURRENT, i);
+ }
+};
+
+
+Managed_standby_recoveryContext.prototype.LOGFILE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.LOGFILE);
+ } else {
+ return this.getToken(PlSqlParser.LOGFILE, i);
+ }
+};
+
+
+Managed_standby_recoveryContext.prototype.DISCONNECT = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.DISCONNECT);
+ } else {
+ return this.getToken(PlSqlParser.DISCONNECT, i);
+ }
+};
+
+
+Managed_standby_recoveryContext.prototype.NODELAY = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.NODELAY);
+ } else {
+ return this.getToken(PlSqlParser.NODELAY, i);
+ }
+};
+
+
+Managed_standby_recoveryContext.prototype.UNTIL = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.UNTIL);
+ } else {
+ return this.getToken(PlSqlParser.UNTIL, i);
+ }
+};
+
+
+Managed_standby_recoveryContext.prototype.CHANGE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.CHANGE);
+ } else {
+ return this.getToken(PlSqlParser.CHANGE, i);
+ }
+};
+
+
+Managed_standby_recoveryContext.prototype.UNSIGNED_INTEGER = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.UNSIGNED_INTEGER);
+ } else {
+ return this.getToken(PlSqlParser.UNSIGNED_INTEGER, i);
+ }
+};
+
+
+Managed_standby_recoveryContext.prototype.CONSISTENT = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.CONSISTENT);
+ } else {
+ return this.getToken(PlSqlParser.CONSISTENT, i);
+ }
+};
+
+
+Managed_standby_recoveryContext.prototype.parallel_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Parallel_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Parallel_clauseContext,i);
+ }
+};
+
+Managed_standby_recoveryContext.prototype.FROM = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.FROM);
+ } else {
+ return this.getToken(PlSqlParser.FROM, i);
+ }
+};
+
+
+Managed_standby_recoveryContext.prototype.SESSION = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.SESSION);
+ } else {
+ return this.getToken(PlSqlParser.SESSION, i);
+ }
+};
+
+
+Managed_standby_recoveryContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterManaged_standby_recovery(this);
+ }
+};
+
+Managed_standby_recoveryContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitManaged_standby_recovery(this);
+ }
+};
+
+Managed_standby_recoveryContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitManaged_standby_recovery(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Managed_standby_recoveryContext = Managed_standby_recoveryContext;
+
+PlSqlParser.prototype.managed_standby_recovery = function() {
+
+ var localctx = new Managed_standby_recoveryContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 682, PlSqlParser.RULE_managed_standby_recovery);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6764;
+ this.match(PlSqlParser.RECOVER);
+ this.state = 6799;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.MANAGED:
+ this.state = 6765;
+ this.match(PlSqlParser.MANAGED);
+ this.state = 6766;
+ this.match(PlSqlParser.STANDBY);
+ this.state = 6767;
+ this.match(PlSqlParser.DATABASE);
+ this.state = 6789;
+ this._errHandler.sync(this);
+ switch (this._input.LA(1)) {
+ case PlSqlParser.DISCONNECT:
+ case PlSqlParser.NODELAY:
+ case PlSqlParser.NOPARALLEL:
+ case PlSqlParser.PARALLEL:
+ case PlSqlParser.UNTIL:
+ case PlSqlParser.USING:
+ this.state = 6783;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 6783;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,819,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 6768;
+ this.match(PlSqlParser.USING);
+ this.state = 6769;
+ this.match(PlSqlParser.CURRENT);
+ this.state = 6770;
+ this.match(PlSqlParser.LOGFILE);
+ break;
+
+ case 2:
+ this.state = 6771;
+ this.match(PlSqlParser.DISCONNECT);
+ this.state = 6774;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.FROM) {
+ this.state = 6772;
+ this.match(PlSqlParser.FROM);
+ this.state = 6773;
+ this.match(PlSqlParser.SESSION);
+ }
+
+ break;
+
+ case 3:
+ this.state = 6776;
+ this.match(PlSqlParser.NODELAY);
+ break;
+
+ case 4:
+ this.state = 6777;
+ this.match(PlSqlParser.UNTIL);
+ this.state = 6778;
+ this.match(PlSqlParser.CHANGE);
+ this.state = 6779;
+ this.match(PlSqlParser.UNSIGNED_INTEGER);
+ break;
+
+ case 5:
+ this.state = 6780;
+ this.match(PlSqlParser.UNTIL);
+ this.state = 6781;
+ this.match(PlSqlParser.CONSISTENT);
+ break;
+
+ case 6:
+ this.state = 6782;
+ this.parallel_clause();
+ break;
+
+ }
+ this.state = 6785;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(_la===PlSqlParser.DISCONNECT || _la===PlSqlParser.NODELAY || _la===PlSqlParser.NOPARALLEL || _la===PlSqlParser.PARALLEL || _la===PlSqlParser.UNTIL || _la===PlSqlParser.USING);
+ break;
+ case PlSqlParser.FINISH:
+ this.state = 6787;
+ this.match(PlSqlParser.FINISH);
+ break;
+ case PlSqlParser.CANCEL:
+ this.state = 6788;
+ this.match(PlSqlParser.CANCEL);
+ break;
+ case PlSqlParser.SEMICOLON:
+ break;
+ default:
+ break;
+ }
+ break;
+ case PlSqlParser.TO:
+ this.state = 6791;
+ this.match(PlSqlParser.TO);
+ this.state = 6792;
+ this.match(PlSqlParser.LOGICAL);
+ this.state = 6793;
+ this.match(PlSqlParser.STANDBY);
+ this.state = 6797;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,822,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 6794;
+ this.db_name();
+ break;
+
+ case 2:
+ this.state = 6795;
+ this.match(PlSqlParser.KEEP);
+ this.state = 6796;
+ this.match(PlSqlParser.IDENTITY);
+ break;
+
+ }
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Db_nameContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_db_name;
+ return this;
+}
+
+Db_nameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Db_nameContext.prototype.constructor = Db_nameContext;
+
+Db_nameContext.prototype.regular_id = function() {
+ return this.getTypedRuleContext(Regular_idContext,0);
+};
+
+Db_nameContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterDb_name(this);
+ }
+};
+
+Db_nameContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitDb_name(this);
+ }
+};
+
+Db_nameContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitDb_name(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Db_nameContext = Db_nameContext;
+
+PlSqlParser.prototype.db_name = function() {
+
+ var localctx = new Db_nameContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 684, PlSqlParser.RULE_db_name);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6801;
+ this.regular_id();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Database_file_clausesContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_database_file_clauses;
+ return this;
+}
+
+Database_file_clausesContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Database_file_clausesContext.prototype.constructor = Database_file_clausesContext;
+
+Database_file_clausesContext.prototype.RENAME = function() {
+ return this.getToken(PlSqlParser.RENAME, 0);
+};
+
+Database_file_clausesContext.prototype.FILE = function() {
+ return this.getToken(PlSqlParser.FILE, 0);
+};
+
+Database_file_clausesContext.prototype.filename = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(FilenameContext);
+ } else {
+ return this.getTypedRuleContext(FilenameContext,i);
+ }
+};
+
+Database_file_clausesContext.prototype.TO = function() {
+ return this.getToken(PlSqlParser.TO, 0);
+};
+
+Database_file_clausesContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Database_file_clausesContext.prototype.create_datafile_clause = function() {
+ return this.getTypedRuleContext(Create_datafile_clauseContext,0);
+};
+
+Database_file_clausesContext.prototype.alter_datafile_clause = function() {
+ return this.getTypedRuleContext(Alter_datafile_clauseContext,0);
+};
+
+Database_file_clausesContext.prototype.alter_tempfile_clause = function() {
+ return this.getTypedRuleContext(Alter_tempfile_clauseContext,0);
+};
+
+Database_file_clausesContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterDatabase_file_clauses(this);
+ }
+};
+
+Database_file_clausesContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitDatabase_file_clauses(this);
+ }
+};
+
+Database_file_clausesContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitDatabase_file_clauses(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Database_file_clausesContext = Database_file_clausesContext;
+
+PlSqlParser.prototype.database_file_clauses = function() {
+
+ var localctx = new Database_file_clausesContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 686, PlSqlParser.RULE_database_file_clauses);
+ var _la = 0; // Token type
+ try {
+ this.state = 6819;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.RENAME:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6803;
+ this.match(PlSqlParser.RENAME);
+ this.state = 6804;
+ this.match(PlSqlParser.FILE);
+ this.state = 6805;
+ this.filename();
+ this.state = 6810;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 6806;
+ this.match(PlSqlParser.COMMA);
+ this.state = 6807;
+ this.filename();
+ this.state = 6812;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 6813;
+ this.match(PlSqlParser.TO);
+ this.state = 6814;
+ this.filename();
+ break;
+ case PlSqlParser.CREATE:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 6816;
+ this.create_datafile_clause();
+ break;
+ case PlSqlParser.DATAFILE:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 6817;
+ this.alter_datafile_clause();
+ break;
+ case PlSqlParser.TEMPFILE:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 6818;
+ this.alter_tempfile_clause();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Create_datafile_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_create_datafile_clause;
+ return this;
+}
+
+Create_datafile_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Create_datafile_clauseContext.prototype.constructor = Create_datafile_clauseContext;
+
+Create_datafile_clauseContext.prototype.CREATE = function() {
+ return this.getToken(PlSqlParser.CREATE, 0);
+};
+
+Create_datafile_clauseContext.prototype.DATAFILE = function() {
+ return this.getToken(PlSqlParser.DATAFILE, 0);
+};
+
+Create_datafile_clauseContext.prototype.filename = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(FilenameContext);
+ } else {
+ return this.getTypedRuleContext(FilenameContext,i);
+ }
+};
+
+Create_datafile_clauseContext.prototype.filenumber = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(FilenumberContext);
+ } else {
+ return this.getTypedRuleContext(FilenumberContext,i);
+ }
+};
+
+Create_datafile_clauseContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Create_datafile_clauseContext.prototype.AS = function() {
+ return this.getToken(PlSqlParser.AS, 0);
+};
+
+Create_datafile_clauseContext.prototype.NEW = function() {
+ return this.getToken(PlSqlParser.NEW, 0);
+};
+
+Create_datafile_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterCreate_datafile_clause(this);
+ }
+};
+
+Create_datafile_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitCreate_datafile_clause(this);
+ }
+};
+
+Create_datafile_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitCreate_datafile_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Create_datafile_clauseContext = Create_datafile_clauseContext;
+
+PlSqlParser.prototype.create_datafile_clause = function() {
+
+ var localctx = new Create_datafile_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 688, PlSqlParser.RULE_create_datafile_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6821;
+ this.match(PlSqlParser.CREATE);
+ this.state = 6822;
+ this.match(PlSqlParser.DATAFILE);
+ this.state = 6825;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.CHAR_STRING:
+ this.state = 6823;
+ this.filename();
+ break;
+ case PlSqlParser.UNSIGNED_INTEGER:
+ this.state = 6824;
+ this.filenumber();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 6834;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 6827;
+ this.match(PlSqlParser.COMMA);
+ this.state = 6830;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.CHAR_STRING:
+ this.state = 6828;
+ this.filename();
+ break;
+ case PlSqlParser.UNSIGNED_INTEGER:
+ this.state = 6829;
+ this.filenumber();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 6836;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 6839;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.AS) {
+ this.state = 6837;
+ this.match(PlSqlParser.AS);
+
+ this.state = 6838;
+ this.match(PlSqlParser.NEW);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Alter_datafile_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_alter_datafile_clause;
+ return this;
+}
+
+Alter_datafile_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Alter_datafile_clauseContext.prototype.constructor = Alter_datafile_clauseContext;
+
+Alter_datafile_clauseContext.prototype.DATAFILE = function() {
+ return this.getToken(PlSqlParser.DATAFILE, 0);
+};
+
+Alter_datafile_clauseContext.prototype.filename = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(FilenameContext);
+ } else {
+ return this.getTypedRuleContext(FilenameContext,i);
+ }
+};
+
+Alter_datafile_clauseContext.prototype.filenumber = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(FilenumberContext);
+ } else {
+ return this.getTypedRuleContext(FilenumberContext,i);
+ }
+};
+
+Alter_datafile_clauseContext.prototype.ONLINE = function() {
+ return this.getToken(PlSqlParser.ONLINE, 0);
+};
+
+Alter_datafile_clauseContext.prototype.OFFLINE = function() {
+ return this.getToken(PlSqlParser.OFFLINE, 0);
+};
+
+Alter_datafile_clauseContext.prototype.RESIZE = function() {
+ return this.getToken(PlSqlParser.RESIZE, 0);
+};
+
+Alter_datafile_clauseContext.prototype.size_clause = function() {
+ return this.getTypedRuleContext(Size_clauseContext,0);
+};
+
+Alter_datafile_clauseContext.prototype.autoextend_clause = function() {
+ return this.getTypedRuleContext(Autoextend_clauseContext,0);
+};
+
+Alter_datafile_clauseContext.prototype.END = function() {
+ return this.getToken(PlSqlParser.END, 0);
+};
+
+Alter_datafile_clauseContext.prototype.BACKUP = function() {
+ return this.getToken(PlSqlParser.BACKUP, 0);
+};
+
+Alter_datafile_clauseContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Alter_datafile_clauseContext.prototype.FOR = function() {
+ return this.getToken(PlSqlParser.FOR, 0);
+};
+
+Alter_datafile_clauseContext.prototype.DROP = function() {
+ return this.getToken(PlSqlParser.DROP, 0);
+};
+
+Alter_datafile_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAlter_datafile_clause(this);
+ }
+};
+
+Alter_datafile_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAlter_datafile_clause(this);
+ }
+};
+
+Alter_datafile_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAlter_datafile_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Alter_datafile_clauseContext = Alter_datafile_clauseContext;
+
+PlSqlParser.prototype.alter_datafile_clause = function() {
+
+ var localctx = new Alter_datafile_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 690, PlSqlParser.RULE_alter_datafile_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6841;
+ this.match(PlSqlParser.DATAFILE);
+ this.state = 6844;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.CHAR_STRING:
+ this.state = 6842;
+ this.filename();
+ break;
+ case PlSqlParser.UNSIGNED_INTEGER:
+ this.state = 6843;
+ this.filenumber();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 6853;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 6846;
+ this.match(PlSqlParser.COMMA);
+ this.state = 6849;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.CHAR_STRING:
+ this.state = 6847;
+ this.filename();
+ break;
+ case PlSqlParser.UNSIGNED_INTEGER:
+ this.state = 6848;
+ this.filenumber();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 6855;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 6867;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.ONLINE:
+ this.state = 6856;
+ this.match(PlSqlParser.ONLINE);
+ break;
+ case PlSqlParser.OFFLINE:
+ this.state = 6857;
+ this.match(PlSqlParser.OFFLINE);
+ this.state = 6860;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.FOR) {
+ this.state = 6858;
+ this.match(PlSqlParser.FOR);
+ this.state = 6859;
+ this.match(PlSqlParser.DROP);
+ }
+
+ break;
+ case PlSqlParser.RESIZE:
+ this.state = 6862;
+ this.match(PlSqlParser.RESIZE);
+ this.state = 6863;
+ this.size_clause();
+ break;
+ case PlSqlParser.AUTOEXTEND:
+ this.state = 6864;
+ this.autoextend_clause();
+ break;
+ case PlSqlParser.END:
+ this.state = 6865;
+ this.match(PlSqlParser.END);
+ this.state = 6866;
+ this.match(PlSqlParser.BACKUP);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Alter_tempfile_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_alter_tempfile_clause;
+ return this;
+}
+
+Alter_tempfile_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Alter_tempfile_clauseContext.prototype.constructor = Alter_tempfile_clauseContext;
+
+Alter_tempfile_clauseContext.prototype.TEMPFILE = function() {
+ return this.getToken(PlSqlParser.TEMPFILE, 0);
+};
+
+Alter_tempfile_clauseContext.prototype.filename = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(FilenameContext);
+ } else {
+ return this.getTypedRuleContext(FilenameContext,i);
+ }
+};
+
+Alter_tempfile_clauseContext.prototype.filenumber = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(FilenumberContext);
+ } else {
+ return this.getTypedRuleContext(FilenumberContext,i);
+ }
+};
+
+Alter_tempfile_clauseContext.prototype.RESIZE = function() {
+ return this.getToken(PlSqlParser.RESIZE, 0);
+};
+
+Alter_tempfile_clauseContext.prototype.size_clause = function() {
+ return this.getTypedRuleContext(Size_clauseContext,0);
+};
+
+Alter_tempfile_clauseContext.prototype.autoextend_clause = function() {
+ return this.getTypedRuleContext(Autoextend_clauseContext,0);
+};
+
+Alter_tempfile_clauseContext.prototype.DROP = function() {
+ return this.getToken(PlSqlParser.DROP, 0);
+};
+
+Alter_tempfile_clauseContext.prototype.ONLINE = function() {
+ return this.getToken(PlSqlParser.ONLINE, 0);
+};
+
+Alter_tempfile_clauseContext.prototype.OFFLINE = function() {
+ return this.getToken(PlSqlParser.OFFLINE, 0);
+};
+
+Alter_tempfile_clauseContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Alter_tempfile_clauseContext.prototype.INCLUDING = function() {
+ return this.getToken(PlSqlParser.INCLUDING, 0);
+};
+
+Alter_tempfile_clauseContext.prototype.DATAFILES = function() {
+ return this.getToken(PlSqlParser.DATAFILES, 0);
+};
+
+Alter_tempfile_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAlter_tempfile_clause(this);
+ }
+};
+
+Alter_tempfile_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAlter_tempfile_clause(this);
+ }
+};
+
+Alter_tempfile_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAlter_tempfile_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Alter_tempfile_clauseContext = Alter_tempfile_clauseContext;
+
+PlSqlParser.prototype.alter_tempfile_clause = function() {
+
+ var localctx = new Alter_tempfile_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 692, PlSqlParser.RULE_alter_tempfile_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6869;
+ this.match(PlSqlParser.TEMPFILE);
+ this.state = 6872;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.CHAR_STRING:
+ this.state = 6870;
+ this.filename();
+ break;
+ case PlSqlParser.UNSIGNED_INTEGER:
+ this.state = 6871;
+ this.filenumber();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 6881;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 6874;
+ this.match(PlSqlParser.COMMA);
+ this.state = 6877;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.CHAR_STRING:
+ this.state = 6875;
+ this.filename();
+ break;
+ case PlSqlParser.UNSIGNED_INTEGER:
+ this.state = 6876;
+ this.filenumber();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 6883;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 6892;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.RESIZE:
+ this.state = 6884;
+ this.match(PlSqlParser.RESIZE);
+ this.state = 6885;
+ this.size_clause();
+ break;
+ case PlSqlParser.AUTOEXTEND:
+ this.state = 6886;
+ this.autoextend_clause();
+ break;
+ case PlSqlParser.DROP:
+ this.state = 6887;
+ this.match(PlSqlParser.DROP);
+
+ this.state = 6888;
+ this.match(PlSqlParser.INCLUDING);
+ this.state = 6889;
+ this.match(PlSqlParser.DATAFILES);
+ break;
+ case PlSqlParser.ONLINE:
+ this.state = 6890;
+ this.match(PlSqlParser.ONLINE);
+ break;
+ case PlSqlParser.OFFLINE:
+ this.state = 6891;
+ this.match(PlSqlParser.OFFLINE);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Logfile_clausesContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_logfile_clauses;
+ return this;
+}
+
+Logfile_clausesContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Logfile_clausesContext.prototype.constructor = Logfile_clausesContext;
+
+Logfile_clausesContext.prototype.ARCHIVELOG = function() {
+ return this.getToken(PlSqlParser.ARCHIVELOG, 0);
+};
+
+Logfile_clausesContext.prototype.NOARCHIVELOG = function() {
+ return this.getToken(PlSqlParser.NOARCHIVELOG, 0);
+};
+
+Logfile_clausesContext.prototype.MANUAL = function() {
+ return this.getToken(PlSqlParser.MANUAL, 0);
+};
+
+Logfile_clausesContext.prototype.FORCE = function() {
+ return this.getToken(PlSqlParser.FORCE, 0);
+};
+
+Logfile_clausesContext.prototype.LOGGING = function() {
+ return this.getToken(PlSqlParser.LOGGING, 0);
+};
+
+Logfile_clausesContext.prototype.NO = function() {
+ return this.getToken(PlSqlParser.NO, 0);
+};
+
+Logfile_clausesContext.prototype.RENAME = function() {
+ return this.getToken(PlSqlParser.RENAME, 0);
+};
+
+Logfile_clausesContext.prototype.FILE = function() {
+ return this.getToken(PlSqlParser.FILE, 0);
+};
+
+Logfile_clausesContext.prototype.filename = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(FilenameContext);
+ } else {
+ return this.getTypedRuleContext(FilenameContext,i);
+ }
+};
+
+Logfile_clausesContext.prototype.TO = function() {
+ return this.getToken(PlSqlParser.TO, 0);
+};
+
+Logfile_clausesContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Logfile_clausesContext.prototype.CLEAR = function() {
+ return this.getToken(PlSqlParser.CLEAR, 0);
+};
+
+Logfile_clausesContext.prototype.LOGFILE = function() {
+ return this.getToken(PlSqlParser.LOGFILE, 0);
+};
+
+Logfile_clausesContext.prototype.logfile_descriptor = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Logfile_descriptorContext);
+ } else {
+ return this.getTypedRuleContext(Logfile_descriptorContext,i);
+ }
+};
+
+Logfile_clausesContext.prototype.UNARCHIVED = function() {
+ return this.getToken(PlSqlParser.UNARCHIVED, 0);
+};
+
+Logfile_clausesContext.prototype.UNRECOVERABLE = function() {
+ return this.getToken(PlSqlParser.UNRECOVERABLE, 0);
+};
+
+Logfile_clausesContext.prototype.DATAFILE = function() {
+ return this.getToken(PlSqlParser.DATAFILE, 0);
+};
+
+Logfile_clausesContext.prototype.add_logfile_clauses = function() {
+ return this.getTypedRuleContext(Add_logfile_clausesContext,0);
+};
+
+Logfile_clausesContext.prototype.drop_logfile_clauses = function() {
+ return this.getTypedRuleContext(Drop_logfile_clausesContext,0);
+};
+
+Logfile_clausesContext.prototype.switch_logfile_clause = function() {
+ return this.getTypedRuleContext(Switch_logfile_clauseContext,0);
+};
+
+Logfile_clausesContext.prototype.supplemental_db_logging = function() {
+ return this.getTypedRuleContext(Supplemental_db_loggingContext,0);
+};
+
+Logfile_clausesContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterLogfile_clauses(this);
+ }
+};
+
+Logfile_clausesContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitLogfile_clauses(this);
+ }
+};
+
+Logfile_clausesContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitLogfile_clauses(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Logfile_clausesContext = Logfile_clausesContext;
+
+PlSqlParser.prototype.logfile_clauses = function() {
+
+ var localctx = new Logfile_clausesContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 694, PlSqlParser.RULE_logfile_clauses);
+ var _la = 0; // Token type
+ try {
+ this.state = 6940;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,846,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6899;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.ARCHIVELOG:
+ this.state = 6894;
+ this.match(PlSqlParser.ARCHIVELOG);
+ this.state = 6896;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.MANUAL) {
+ this.state = 6895;
+ this.match(PlSqlParser.MANUAL);
+ }
+
+ break;
+ case PlSqlParser.NOARCHIVELOG:
+ this.state = 6898;
+ this.match(PlSqlParser.NOARCHIVELOG);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 6902;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.NO) {
+ this.state = 6901;
+ this.match(PlSqlParser.NO);
+ }
+
+ this.state = 6904;
+ this.match(PlSqlParser.FORCE);
+ this.state = 6905;
+ this.match(PlSqlParser.LOGGING);
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 6906;
+ this.match(PlSqlParser.RENAME);
+ this.state = 6907;
+ this.match(PlSqlParser.FILE);
+ this.state = 6908;
+ this.filename();
+ this.state = 6913;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 6909;
+ this.match(PlSqlParser.COMMA);
+ this.state = 6910;
+ this.filename();
+ this.state = 6915;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 6916;
+ this.match(PlSqlParser.TO);
+ this.state = 6917;
+ this.filename();
+ break;
+
+ case 4:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 6919;
+ this.match(PlSqlParser.CLEAR);
+ this.state = 6921;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.UNARCHIVED) {
+ this.state = 6920;
+ this.match(PlSqlParser.UNARCHIVED);
+ }
+
+ this.state = 6923;
+ this.match(PlSqlParser.LOGFILE);
+ this.state = 6924;
+ this.logfile_descriptor();
+ this.state = 6929;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 6925;
+ this.match(PlSqlParser.COMMA);
+ this.state = 6926;
+ this.logfile_descriptor();
+ this.state = 6931;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 6934;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.UNRECOVERABLE) {
+ this.state = 6932;
+ this.match(PlSqlParser.UNRECOVERABLE);
+ this.state = 6933;
+ this.match(PlSqlParser.DATAFILE);
+ }
+
+ break;
+
+ case 5:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 6936;
+ this.add_logfile_clauses();
+ break;
+
+ case 6:
+ this.enterOuterAlt(localctx, 6);
+ this.state = 6937;
+ this.drop_logfile_clauses();
+ break;
+
+ case 7:
+ this.enterOuterAlt(localctx, 7);
+ this.state = 6938;
+ this.switch_logfile_clause();
+ break;
+
+ case 8:
+ this.enterOuterAlt(localctx, 8);
+ this.state = 6939;
+ this.supplemental_db_logging();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Add_logfile_clausesContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_add_logfile_clauses;
+ return this;
+}
+
+Add_logfile_clausesContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Add_logfile_clausesContext.prototype.constructor = Add_logfile_clausesContext;
+
+Add_logfile_clausesContext.prototype.ADD = function() {
+ return this.getToken(PlSqlParser.ADD, 0);
+};
+
+Add_logfile_clausesContext.prototype.LOGFILE = function() {
+ return this.getToken(PlSqlParser.LOGFILE, 0);
+};
+
+Add_logfile_clausesContext.prototype.MEMBER = function() {
+ return this.getToken(PlSqlParser.MEMBER, 0);
+};
+
+Add_logfile_clausesContext.prototype.filename = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(FilenameContext);
+ } else {
+ return this.getTypedRuleContext(FilenameContext,i);
+ }
+};
+
+Add_logfile_clausesContext.prototype.TO = function() {
+ return this.getToken(PlSqlParser.TO, 0);
+};
+
+Add_logfile_clausesContext.prototype.logfile_descriptor = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Logfile_descriptorContext);
+ } else {
+ return this.getTypedRuleContext(Logfile_descriptorContext,i);
+ }
+};
+
+Add_logfile_clausesContext.prototype.STANDBY = function() {
+ return this.getToken(PlSqlParser.STANDBY, 0);
+};
+
+Add_logfile_clausesContext.prototype.log_file_group = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Log_file_groupContext);
+ } else {
+ return this.getTypedRuleContext(Log_file_groupContext,i);
+ }
+};
+
+Add_logfile_clausesContext.prototype.redo_log_file_spec = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Redo_log_file_specContext);
+ } else {
+ return this.getTypedRuleContext(Redo_log_file_specContext,i);
+ }
+};
+
+Add_logfile_clausesContext.prototype.REUSE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.REUSE);
+ } else {
+ return this.getToken(PlSqlParser.REUSE, i);
+ }
+};
+
+
+Add_logfile_clausesContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Add_logfile_clausesContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAdd_logfile_clauses(this);
+ }
+};
+
+Add_logfile_clausesContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAdd_logfile_clauses(this);
+ }
+};
+
+Add_logfile_clausesContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAdd_logfile_clauses(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Add_logfile_clausesContext = Add_logfile_clausesContext;
+
+PlSqlParser.prototype.add_logfile_clauses = function() {
+
+ var localctx = new Add_logfile_clausesContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 696, PlSqlParser.RULE_add_logfile_clauses);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6942;
+ this.match(PlSqlParser.ADD);
+ this.state = 6944;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.STANDBY) {
+ this.state = 6943;
+ this.match(PlSqlParser.STANDBY);
+ }
+
+ this.state = 6946;
+ this.match(PlSqlParser.LOGFILE);
+ this.state = 6978;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.GROUP:
+ case PlSqlParser.THREAD:
+ case PlSqlParser.COMMA:
+ this.state = 6950;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 6947;
+ this.log_file_group();
+ this.state = 6948;
+ this.redo_log_file_spec();
+ this.state = 6952;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(_la===PlSqlParser.GROUP || _la===PlSqlParser.THREAD || _la===PlSqlParser.COMMA);
+ break;
+ case PlSqlParser.MEMBER:
+ this.state = 6954;
+ this.match(PlSqlParser.MEMBER);
+ this.state = 6955;
+ this.filename();
+ this.state = 6957;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.REUSE) {
+ this.state = 6956;
+ this.match(PlSqlParser.REUSE);
+ }
+
+ this.state = 6966;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 6959;
+ this.match(PlSqlParser.COMMA);
+ this.state = 6960;
+ this.filename();
+ this.state = 6962;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.REUSE) {
+ this.state = 6961;
+ this.match(PlSqlParser.REUSE);
+ }
+
+ this.state = 6968;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 6969;
+ this.match(PlSqlParser.TO);
+ this.state = 6970;
+ this.logfile_descriptor();
+ this.state = 6975;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 6971;
+ this.match(PlSqlParser.COMMA);
+ this.state = 6972;
+ this.logfile_descriptor();
+ this.state = 6977;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Log_file_groupContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_log_file_group;
+ return this;
+}
+
+Log_file_groupContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Log_file_groupContext.prototype.constructor = Log_file_groupContext;
+
+Log_file_groupContext.prototype.GROUP = function() {
+ return this.getToken(PlSqlParser.GROUP, 0);
+};
+
+Log_file_groupContext.prototype.UNSIGNED_INTEGER = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.UNSIGNED_INTEGER);
+ } else {
+ return this.getToken(PlSqlParser.UNSIGNED_INTEGER, i);
+ }
+};
+
+
+Log_file_groupContext.prototype.COMMA = function() {
+ return this.getToken(PlSqlParser.COMMA, 0);
+};
+
+Log_file_groupContext.prototype.THREAD = function() {
+ return this.getToken(PlSqlParser.THREAD, 0);
+};
+
+Log_file_groupContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterLog_file_group(this);
+ }
+};
+
+Log_file_groupContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitLog_file_group(this);
+ }
+};
+
+Log_file_groupContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitLog_file_group(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Log_file_groupContext = Log_file_groupContext;
+
+PlSqlParser.prototype.log_file_group = function() {
+
+ var localctx = new Log_file_groupContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 698, PlSqlParser.RULE_log_file_group);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6981;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.COMMA) {
+ this.state = 6980;
+ this.match(PlSqlParser.COMMA);
+ }
+
+ this.state = 6985;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.THREAD) {
+ this.state = 6983;
+ this.match(PlSqlParser.THREAD);
+ this.state = 6984;
+ this.match(PlSqlParser.UNSIGNED_INTEGER);
+ }
+
+ this.state = 6987;
+ this.match(PlSqlParser.GROUP);
+ this.state = 6988;
+ this.match(PlSqlParser.UNSIGNED_INTEGER);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Drop_logfile_clausesContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_drop_logfile_clauses;
+ return this;
+}
+
+Drop_logfile_clausesContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Drop_logfile_clausesContext.prototype.constructor = Drop_logfile_clausesContext;
+
+Drop_logfile_clausesContext.prototype.DROP = function() {
+ return this.getToken(PlSqlParser.DROP, 0);
+};
+
+Drop_logfile_clausesContext.prototype.LOGFILE = function() {
+ return this.getToken(PlSqlParser.LOGFILE, 0);
+};
+
+Drop_logfile_clausesContext.prototype.logfile_descriptor = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Logfile_descriptorContext);
+ } else {
+ return this.getTypedRuleContext(Logfile_descriptorContext,i);
+ }
+};
+
+Drop_logfile_clausesContext.prototype.MEMBER = function() {
+ return this.getToken(PlSqlParser.MEMBER, 0);
+};
+
+Drop_logfile_clausesContext.prototype.filename = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(FilenameContext);
+ } else {
+ return this.getTypedRuleContext(FilenameContext,i);
+ }
+};
+
+Drop_logfile_clausesContext.prototype.STANDBY = function() {
+ return this.getToken(PlSqlParser.STANDBY, 0);
+};
+
+Drop_logfile_clausesContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Drop_logfile_clausesContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterDrop_logfile_clauses(this);
+ }
+};
+
+Drop_logfile_clausesContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitDrop_logfile_clauses(this);
+ }
+};
+
+Drop_logfile_clausesContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitDrop_logfile_clauses(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Drop_logfile_clausesContext = Drop_logfile_clausesContext;
+
+PlSqlParser.prototype.drop_logfile_clauses = function() {
+
+ var localctx = new Drop_logfile_clausesContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 700, PlSqlParser.RULE_drop_logfile_clauses);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 6990;
+ this.match(PlSqlParser.DROP);
+ this.state = 6992;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.STANDBY) {
+ this.state = 6991;
+ this.match(PlSqlParser.STANDBY);
+ }
+
+ this.state = 6994;
+ this.match(PlSqlParser.LOGFILE);
+ this.state = 7012;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.GROUP:
+ case PlSqlParser.CHAR_STRING:
+ case PlSqlParser.LEFT_PAREN:
+ this.state = 6995;
+ this.logfile_descriptor();
+ this.state = 7000;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 6996;
+ this.match(PlSqlParser.COMMA);
+ this.state = 6997;
+ this.logfile_descriptor();
+ this.state = 7002;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+ case PlSqlParser.MEMBER:
+ this.state = 7003;
+ this.match(PlSqlParser.MEMBER);
+ this.state = 7004;
+ this.filename();
+ this.state = 7009;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 7005;
+ this.match(PlSqlParser.COMMA);
+ this.state = 7006;
+ this.filename();
+ this.state = 7011;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Switch_logfile_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_switch_logfile_clause;
+ return this;
+}
+
+Switch_logfile_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Switch_logfile_clauseContext.prototype.constructor = Switch_logfile_clauseContext;
+
+Switch_logfile_clauseContext.prototype.SWITCH = function() {
+ return this.getToken(PlSqlParser.SWITCH, 0);
+};
+
+Switch_logfile_clauseContext.prototype.ALL = function() {
+ return this.getToken(PlSqlParser.ALL, 0);
+};
+
+Switch_logfile_clauseContext.prototype.LOGFILES = function() {
+ return this.getToken(PlSqlParser.LOGFILES, 0);
+};
+
+Switch_logfile_clauseContext.prototype.TO = function() {
+ return this.getToken(PlSqlParser.TO, 0);
+};
+
+Switch_logfile_clauseContext.prototype.BLOCKSIZE = function() {
+ return this.getToken(PlSqlParser.BLOCKSIZE, 0);
+};
+
+Switch_logfile_clauseContext.prototype.UNSIGNED_INTEGER = function() {
+ return this.getToken(PlSqlParser.UNSIGNED_INTEGER, 0);
+};
+
+Switch_logfile_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterSwitch_logfile_clause(this);
+ }
+};
+
+Switch_logfile_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitSwitch_logfile_clause(this);
+ }
+};
+
+Switch_logfile_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitSwitch_logfile_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Switch_logfile_clauseContext = Switch_logfile_clauseContext;
+
+PlSqlParser.prototype.switch_logfile_clause = function() {
+
+ var localctx = new Switch_logfile_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 702, PlSqlParser.RULE_switch_logfile_clause);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7014;
+ this.match(PlSqlParser.SWITCH);
+ this.state = 7015;
+ this.match(PlSqlParser.ALL);
+ this.state = 7016;
+ this.match(PlSqlParser.LOGFILES);
+ this.state = 7017;
+ this.match(PlSqlParser.TO);
+ this.state = 7018;
+ this.match(PlSqlParser.BLOCKSIZE);
+ this.state = 7019;
+ this.match(PlSqlParser.UNSIGNED_INTEGER);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Supplemental_db_loggingContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_supplemental_db_logging;
+ return this;
+}
+
+Supplemental_db_loggingContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Supplemental_db_loggingContext.prototype.constructor = Supplemental_db_loggingContext;
+
+Supplemental_db_loggingContext.prototype.add_or_drop = function() {
+ return this.getTypedRuleContext(Add_or_dropContext,0);
+};
+
+Supplemental_db_loggingContext.prototype.SUPPLEMENTAL = function() {
+ return this.getToken(PlSqlParser.SUPPLEMENTAL, 0);
+};
+
+Supplemental_db_loggingContext.prototype.LOG = function() {
+ return this.getToken(PlSqlParser.LOG, 0);
+};
+
+Supplemental_db_loggingContext.prototype.DATA = function() {
+ return this.getToken(PlSqlParser.DATA, 0);
+};
+
+Supplemental_db_loggingContext.prototype.supplemental_id_key_clause = function() {
+ return this.getTypedRuleContext(Supplemental_id_key_clauseContext,0);
+};
+
+Supplemental_db_loggingContext.prototype.supplemental_plsql_clause = function() {
+ return this.getTypedRuleContext(Supplemental_plsql_clauseContext,0);
+};
+
+Supplemental_db_loggingContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterSupplemental_db_logging(this);
+ }
+};
+
+Supplemental_db_loggingContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitSupplemental_db_logging(this);
+ }
+};
+
+Supplemental_db_loggingContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitSupplemental_db_logging(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Supplemental_db_loggingContext = Supplemental_db_loggingContext;
+
+PlSqlParser.prototype.supplemental_db_logging = function() {
+
+ var localctx = new Supplemental_db_loggingContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 704, PlSqlParser.RULE_supplemental_db_logging);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7021;
+ this.add_or_drop();
+ this.state = 7022;
+ this.match(PlSqlParser.SUPPLEMENTAL);
+ this.state = 7023;
+ this.match(PlSqlParser.LOG);
+ this.state = 7027;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,860,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 7024;
+ this.match(PlSqlParser.DATA);
+ break;
+
+ case 2:
+ this.state = 7025;
+ this.supplemental_id_key_clause();
+ break;
+
+ case 3:
+ this.state = 7026;
+ this.supplemental_plsql_clause();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Add_or_dropContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_add_or_drop;
+ return this;
+}
+
+Add_or_dropContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Add_or_dropContext.prototype.constructor = Add_or_dropContext;
+
+Add_or_dropContext.prototype.ADD = function() {
+ return this.getToken(PlSqlParser.ADD, 0);
+};
+
+Add_or_dropContext.prototype.DROP = function() {
+ return this.getToken(PlSqlParser.DROP, 0);
+};
+
+Add_or_dropContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAdd_or_drop(this);
+ }
+};
+
+Add_or_dropContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAdd_or_drop(this);
+ }
+};
+
+Add_or_dropContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAdd_or_drop(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Add_or_dropContext = Add_or_dropContext;
+
+PlSqlParser.prototype.add_or_drop = function() {
+
+ var localctx = new Add_or_dropContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 706, PlSqlParser.RULE_add_or_drop);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7029;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.ADD || _la===PlSqlParser.DROP)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Supplemental_plsql_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_supplemental_plsql_clause;
+ return this;
+}
+
+Supplemental_plsql_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Supplemental_plsql_clauseContext.prototype.constructor = Supplemental_plsql_clauseContext;
+
+Supplemental_plsql_clauseContext.prototype.DATA = function() {
+ return this.getToken(PlSqlParser.DATA, 0);
+};
+
+Supplemental_plsql_clauseContext.prototype.FOR = function() {
+ return this.getToken(PlSqlParser.FOR, 0);
+};
+
+Supplemental_plsql_clauseContext.prototype.PROCEDURAL = function() {
+ return this.getToken(PlSqlParser.PROCEDURAL, 0);
+};
+
+Supplemental_plsql_clauseContext.prototype.REPLICATION = function() {
+ return this.getToken(PlSqlParser.REPLICATION, 0);
+};
+
+Supplemental_plsql_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterSupplemental_plsql_clause(this);
+ }
+};
+
+Supplemental_plsql_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitSupplemental_plsql_clause(this);
+ }
+};
+
+Supplemental_plsql_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitSupplemental_plsql_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Supplemental_plsql_clauseContext = Supplemental_plsql_clauseContext;
+
+PlSqlParser.prototype.supplemental_plsql_clause = function() {
+
+ var localctx = new Supplemental_plsql_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 708, PlSqlParser.RULE_supplemental_plsql_clause);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7031;
+ this.match(PlSqlParser.DATA);
+ this.state = 7032;
+ this.match(PlSqlParser.FOR);
+ this.state = 7033;
+ this.match(PlSqlParser.PROCEDURAL);
+ this.state = 7034;
+ this.match(PlSqlParser.REPLICATION);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Logfile_descriptorContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_logfile_descriptor;
+ return this;
+}
+
+Logfile_descriptorContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Logfile_descriptorContext.prototype.constructor = Logfile_descriptorContext;
+
+Logfile_descriptorContext.prototype.GROUP = function() {
+ return this.getToken(PlSqlParser.GROUP, 0);
+};
+
+Logfile_descriptorContext.prototype.UNSIGNED_INTEGER = function() {
+ return this.getToken(PlSqlParser.UNSIGNED_INTEGER, 0);
+};
+
+Logfile_descriptorContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Logfile_descriptorContext.prototype.filename = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(FilenameContext);
+ } else {
+ return this.getTypedRuleContext(FilenameContext,i);
+ }
+};
+
+Logfile_descriptorContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Logfile_descriptorContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Logfile_descriptorContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterLogfile_descriptor(this);
+ }
+};
+
+Logfile_descriptorContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitLogfile_descriptor(this);
+ }
+};
+
+Logfile_descriptorContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitLogfile_descriptor(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Logfile_descriptorContext = Logfile_descriptorContext;
+
+PlSqlParser.prototype.logfile_descriptor = function() {
+
+ var localctx = new Logfile_descriptorContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 710, PlSqlParser.RULE_logfile_descriptor);
+ var _la = 0; // Token type
+ try {
+ this.state = 7050;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.GROUP:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7036;
+ this.match(PlSqlParser.GROUP);
+ this.state = 7037;
+ this.match(PlSqlParser.UNSIGNED_INTEGER);
+ break;
+ case PlSqlParser.LEFT_PAREN:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 7038;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 7039;
+ this.filename();
+ this.state = 7044;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 7040;
+ this.match(PlSqlParser.COMMA);
+ this.state = 7041;
+ this.filename();
+ this.state = 7046;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 7047;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ break;
+ case PlSqlParser.CHAR_STRING:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 7049;
+ this.filename();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Controlfile_clausesContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_controlfile_clauses;
+ return this;
+}
+
+Controlfile_clausesContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Controlfile_clausesContext.prototype.constructor = Controlfile_clausesContext;
+
+Controlfile_clausesContext.prototype.CREATE = function() {
+ return this.getToken(PlSqlParser.CREATE, 0);
+};
+
+Controlfile_clausesContext.prototype.STANDBY = function() {
+ return this.getToken(PlSqlParser.STANDBY, 0);
+};
+
+Controlfile_clausesContext.prototype.CONTROLFILE = function() {
+ return this.getToken(PlSqlParser.CONTROLFILE, 0);
+};
+
+Controlfile_clausesContext.prototype.AS = function() {
+ return this.getToken(PlSqlParser.AS, 0);
+};
+
+Controlfile_clausesContext.prototype.filename = function() {
+ return this.getTypedRuleContext(FilenameContext,0);
+};
+
+Controlfile_clausesContext.prototype.REUSE = function() {
+ return this.getToken(PlSqlParser.REUSE, 0);
+};
+
+Controlfile_clausesContext.prototype.LOGICAL = function() {
+ return this.getToken(PlSqlParser.LOGICAL, 0);
+};
+
+Controlfile_clausesContext.prototype.PHYSICAL = function() {
+ return this.getToken(PlSqlParser.PHYSICAL, 0);
+};
+
+Controlfile_clausesContext.prototype.BACKUP = function() {
+ return this.getToken(PlSqlParser.BACKUP, 0);
+};
+
+Controlfile_clausesContext.prototype.TO = function() {
+ return this.getToken(PlSqlParser.TO, 0);
+};
+
+Controlfile_clausesContext.prototype.trace_file_clause = function() {
+ return this.getTypedRuleContext(Trace_file_clauseContext,0);
+};
+
+Controlfile_clausesContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterControlfile_clauses(this);
+ }
+};
+
+Controlfile_clausesContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitControlfile_clauses(this);
+ }
+};
+
+Controlfile_clausesContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitControlfile_clauses(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Controlfile_clausesContext = Controlfile_clausesContext;
+
+PlSqlParser.prototype.controlfile_clauses = function() {
+
+ var localctx = new Controlfile_clausesContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 712, PlSqlParser.RULE_controlfile_clauses);
+ var _la = 0; // Token type
+ try {
+ this.state = 7073;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.CREATE:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7052;
+ this.match(PlSqlParser.CREATE);
+ this.state = 7054;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.LOGICAL || _la===PlSqlParser.PHYSICAL) {
+ this.state = 7053;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.LOGICAL || _la===PlSqlParser.PHYSICAL)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 7056;
+ this.match(PlSqlParser.STANDBY);
+ this.state = 7057;
+ this.match(PlSqlParser.CONTROLFILE);
+ this.state = 7058;
+ this.match(PlSqlParser.AS);
+ this.state = 7059;
+ this.filename();
+ this.state = 7061;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.REUSE) {
+ this.state = 7060;
+ this.match(PlSqlParser.REUSE);
+ }
+
+ break;
+ case PlSqlParser.BACKUP:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 7063;
+ this.match(PlSqlParser.BACKUP);
+ this.state = 7064;
+ this.match(PlSqlParser.CONTROLFILE);
+ this.state = 7065;
+ this.match(PlSqlParser.TO);
+ this.state = 7071;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.CHAR_STRING:
+ this.state = 7066;
+ this.filename();
+ this.state = 7068;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.REUSE) {
+ this.state = 7067;
+ this.match(PlSqlParser.REUSE);
+ }
+
+ break;
+ case PlSqlParser.TRACE:
+ this.state = 7070;
+ this.trace_file_clause();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Trace_file_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_trace_file_clause;
+ return this;
+}
+
+Trace_file_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Trace_file_clauseContext.prototype.constructor = Trace_file_clauseContext;
+
+Trace_file_clauseContext.prototype.TRACE = function() {
+ return this.getToken(PlSqlParser.TRACE, 0);
+};
+
+Trace_file_clauseContext.prototype.AS = function() {
+ return this.getToken(PlSqlParser.AS, 0);
+};
+
+Trace_file_clauseContext.prototype.filename = function() {
+ return this.getTypedRuleContext(FilenameContext,0);
+};
+
+Trace_file_clauseContext.prototype.RESETLOGS = function() {
+ return this.getToken(PlSqlParser.RESETLOGS, 0);
+};
+
+Trace_file_clauseContext.prototype.NORESETLOGS = function() {
+ return this.getToken(PlSqlParser.NORESETLOGS, 0);
+};
+
+Trace_file_clauseContext.prototype.REUSE = function() {
+ return this.getToken(PlSqlParser.REUSE, 0);
+};
+
+Trace_file_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterTrace_file_clause(this);
+ }
+};
+
+Trace_file_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitTrace_file_clause(this);
+ }
+};
+
+Trace_file_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitTrace_file_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Trace_file_clauseContext = Trace_file_clauseContext;
+
+PlSqlParser.prototype.trace_file_clause = function() {
+
+ var localctx = new Trace_file_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 714, PlSqlParser.RULE_trace_file_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7075;
+ this.match(PlSqlParser.TRACE);
+ this.state = 7081;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.AS) {
+ this.state = 7076;
+ this.match(PlSqlParser.AS);
+ this.state = 7077;
+ this.filename();
+ this.state = 7079;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.REUSE) {
+ this.state = 7078;
+ this.match(PlSqlParser.REUSE);
+ }
+
+ }
+
+ this.state = 7084;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.NORESETLOGS || _la===PlSqlParser.RESETLOGS) {
+ this.state = 7083;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.NORESETLOGS || _la===PlSqlParser.RESETLOGS)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Standby_database_clausesContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_standby_database_clauses;
+ return this;
+}
+
+Standby_database_clausesContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Standby_database_clausesContext.prototype.constructor = Standby_database_clausesContext;
+
+Standby_database_clausesContext.prototype.activate_standby_db_clause = function() {
+ return this.getTypedRuleContext(Activate_standby_db_clauseContext,0);
+};
+
+Standby_database_clausesContext.prototype.maximize_standby_db_clause = function() {
+ return this.getTypedRuleContext(Maximize_standby_db_clauseContext,0);
+};
+
+Standby_database_clausesContext.prototype.register_logfile_clause = function() {
+ return this.getTypedRuleContext(Register_logfile_clauseContext,0);
+};
+
+Standby_database_clausesContext.prototype.commit_switchover_clause = function() {
+ return this.getTypedRuleContext(Commit_switchover_clauseContext,0);
+};
+
+Standby_database_clausesContext.prototype.start_standby_clause = function() {
+ return this.getTypedRuleContext(Start_standby_clauseContext,0);
+};
+
+Standby_database_clausesContext.prototype.stop_standby_clause = function() {
+ return this.getTypedRuleContext(Stop_standby_clauseContext,0);
+};
+
+Standby_database_clausesContext.prototype.convert_database_clause = function() {
+ return this.getTypedRuleContext(Convert_database_clauseContext,0);
+};
+
+Standby_database_clausesContext.prototype.parallel_clause = function() {
+ return this.getTypedRuleContext(Parallel_clauseContext,0);
+};
+
+Standby_database_clausesContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterStandby_database_clauses(this);
+ }
+};
+
+Standby_database_clausesContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitStandby_database_clauses(this);
+ }
+};
+
+Standby_database_clausesContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitStandby_database_clauses(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Standby_database_clausesContext = Standby_database_clausesContext;
+
+PlSqlParser.prototype.standby_database_clauses = function() {
+
+ var localctx = new Standby_database_clausesContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 716, PlSqlParser.RULE_standby_database_clauses);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7093;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.ACTIVATE:
+ this.state = 7086;
+ this.activate_standby_db_clause();
+ break;
+ case PlSqlParser.SET:
+ this.state = 7087;
+ this.maximize_standby_db_clause();
+ break;
+ case PlSqlParser.REGISTER:
+ this.state = 7088;
+ this.register_logfile_clause();
+ break;
+ case PlSqlParser.COMMIT:
+ case PlSqlParser.PREPARE:
+ this.state = 7089;
+ this.commit_switchover_clause();
+ break;
+ case PlSqlParser.START:
+ this.state = 7090;
+ this.start_standby_clause();
+ break;
+ case PlSqlParser.ABORT:
+ case PlSqlParser.STOP:
+ this.state = 7091;
+ this.stop_standby_clause();
+ break;
+ case PlSqlParser.CONVERT:
+ this.state = 7092;
+ this.convert_database_clause();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 7096;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.NOPARALLEL || _la===PlSqlParser.PARALLEL) {
+ this.state = 7095;
+ this.parallel_clause();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Activate_standby_db_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_activate_standby_db_clause;
+ return this;
+}
+
+Activate_standby_db_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Activate_standby_db_clauseContext.prototype.constructor = Activate_standby_db_clauseContext;
+
+Activate_standby_db_clauseContext.prototype.ACTIVATE = function() {
+ return this.getToken(PlSqlParser.ACTIVATE, 0);
+};
+
+Activate_standby_db_clauseContext.prototype.STANDBY = function() {
+ return this.getToken(PlSqlParser.STANDBY, 0);
+};
+
+Activate_standby_db_clauseContext.prototype.DATABASE = function() {
+ return this.getToken(PlSqlParser.DATABASE, 0);
+};
+
+Activate_standby_db_clauseContext.prototype.FINISH = function() {
+ return this.getToken(PlSqlParser.FINISH, 0);
+};
+
+Activate_standby_db_clauseContext.prototype.APPLY = function() {
+ return this.getToken(PlSqlParser.APPLY, 0);
+};
+
+Activate_standby_db_clauseContext.prototype.PHYSICAL = function() {
+ return this.getToken(PlSqlParser.PHYSICAL, 0);
+};
+
+Activate_standby_db_clauseContext.prototype.LOGICAL = function() {
+ return this.getToken(PlSqlParser.LOGICAL, 0);
+};
+
+Activate_standby_db_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterActivate_standby_db_clause(this);
+ }
+};
+
+Activate_standby_db_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitActivate_standby_db_clause(this);
+ }
+};
+
+Activate_standby_db_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitActivate_standby_db_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Activate_standby_db_clauseContext = Activate_standby_db_clauseContext;
+
+PlSqlParser.prototype.activate_standby_db_clause = function() {
+
+ var localctx = new Activate_standby_db_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 718, PlSqlParser.RULE_activate_standby_db_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7098;
+ this.match(PlSqlParser.ACTIVATE);
+ this.state = 7100;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.LOGICAL || _la===PlSqlParser.PHYSICAL) {
+ this.state = 7099;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.LOGICAL || _la===PlSqlParser.PHYSICAL)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 7102;
+ this.match(PlSqlParser.STANDBY);
+ this.state = 7103;
+ this.match(PlSqlParser.DATABASE);
+ this.state = 7106;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.FINISH) {
+ this.state = 7104;
+ this.match(PlSqlParser.FINISH);
+ this.state = 7105;
+ this.match(PlSqlParser.APPLY);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Maximize_standby_db_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_maximize_standby_db_clause;
+ return this;
+}
+
+Maximize_standby_db_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Maximize_standby_db_clauseContext.prototype.constructor = Maximize_standby_db_clauseContext;
+
+Maximize_standby_db_clauseContext.prototype.SET = function() {
+ return this.getToken(PlSqlParser.SET, 0);
+};
+
+Maximize_standby_db_clauseContext.prototype.STANDBY = function() {
+ return this.getToken(PlSqlParser.STANDBY, 0);
+};
+
+Maximize_standby_db_clauseContext.prototype.DATABASE = function() {
+ return this.getToken(PlSqlParser.DATABASE, 0);
+};
+
+Maximize_standby_db_clauseContext.prototype.TO = function() {
+ return this.getToken(PlSqlParser.TO, 0);
+};
+
+Maximize_standby_db_clauseContext.prototype.MAXIMIZE = function() {
+ return this.getToken(PlSqlParser.MAXIMIZE, 0);
+};
+
+Maximize_standby_db_clauseContext.prototype.PROTECTION = function() {
+ return this.getToken(PlSqlParser.PROTECTION, 0);
+};
+
+Maximize_standby_db_clauseContext.prototype.AVAILABILITY = function() {
+ return this.getToken(PlSqlParser.AVAILABILITY, 0);
+};
+
+Maximize_standby_db_clauseContext.prototype.PERFORMANCE = function() {
+ return this.getToken(PlSqlParser.PERFORMANCE, 0);
+};
+
+Maximize_standby_db_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterMaximize_standby_db_clause(this);
+ }
+};
+
+Maximize_standby_db_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitMaximize_standby_db_clause(this);
+ }
+};
+
+Maximize_standby_db_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitMaximize_standby_db_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Maximize_standby_db_clauseContext = Maximize_standby_db_clauseContext;
+
+PlSqlParser.prototype.maximize_standby_db_clause = function() {
+
+ var localctx = new Maximize_standby_db_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 720, PlSqlParser.RULE_maximize_standby_db_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7108;
+ this.match(PlSqlParser.SET);
+ this.state = 7109;
+ this.match(PlSqlParser.STANDBY);
+ this.state = 7110;
+ this.match(PlSqlParser.DATABASE);
+ this.state = 7111;
+ this.match(PlSqlParser.TO);
+ this.state = 7112;
+ this.match(PlSqlParser.MAXIMIZE);
+ this.state = 7113;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.AVAILABILITY || _la===PlSqlParser.PERFORMANCE || _la===PlSqlParser.PROTECTION)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Register_logfile_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_register_logfile_clause;
+ return this;
+}
+
+Register_logfile_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Register_logfile_clauseContext.prototype.constructor = Register_logfile_clauseContext;
+
+Register_logfile_clauseContext.prototype.REGISTER = function() {
+ return this.getToken(PlSqlParser.REGISTER, 0);
+};
+
+Register_logfile_clauseContext.prototype.LOGFILE = function() {
+ return this.getToken(PlSqlParser.LOGFILE, 0);
+};
+
+Register_logfile_clauseContext.prototype.PHYSICAL = function() {
+ return this.getToken(PlSqlParser.PHYSICAL, 0);
+};
+
+Register_logfile_clauseContext.prototype.LOGICAL = function() {
+ return this.getToken(PlSqlParser.LOGICAL, 0);
+};
+
+Register_logfile_clauseContext.prototype.OR = function() {
+ return this.getToken(PlSqlParser.OR, 0);
+};
+
+Register_logfile_clauseContext.prototype.REPLACE = function() {
+ return this.getToken(PlSqlParser.REPLACE, 0);
+};
+
+Register_logfile_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterRegister_logfile_clause(this);
+ }
+};
+
+Register_logfile_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitRegister_logfile_clause(this);
+ }
+};
+
+Register_logfile_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitRegister_logfile_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Register_logfile_clauseContext = Register_logfile_clauseContext;
+
+PlSqlParser.prototype.register_logfile_clause = function() {
+
+ var localctx = new Register_logfile_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 722, PlSqlParser.RULE_register_logfile_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7115;
+ this.match(PlSqlParser.REGISTER);
+ this.state = 7118;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.OR) {
+ this.state = 7116;
+ this.match(PlSqlParser.OR);
+ this.state = 7117;
+ this.match(PlSqlParser.REPLACE);
+ }
+
+ this.state = 7120;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.LOGICAL || _la===PlSqlParser.PHYSICAL)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 7121;
+ this.match(PlSqlParser.LOGFILE);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Commit_switchover_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_commit_switchover_clause;
+ return this;
+}
+
+Commit_switchover_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Commit_switchover_clauseContext.prototype.constructor = Commit_switchover_clauseContext;
+
+Commit_switchover_clauseContext.prototype.TO = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.TO);
+ } else {
+ return this.getToken(PlSqlParser.TO, i);
+ }
+};
+
+
+Commit_switchover_clauseContext.prototype.SWITCHOVER = function() {
+ return this.getToken(PlSqlParser.SWITCHOVER, 0);
+};
+
+Commit_switchover_clauseContext.prototype.PREPARE = function() {
+ return this.getToken(PlSqlParser.PREPARE, 0);
+};
+
+Commit_switchover_clauseContext.prototype.COMMIT = function() {
+ return this.getToken(PlSqlParser.COMMIT, 0);
+};
+
+Commit_switchover_clauseContext.prototype.CANCEL = function() {
+ return this.getToken(PlSqlParser.CANCEL, 0);
+};
+
+Commit_switchover_clauseContext.prototype.LOGICAL = function() {
+ return this.getToken(PlSqlParser.LOGICAL, 0);
+};
+
+Commit_switchover_clauseContext.prototype.STANDBY = function() {
+ return this.getToken(PlSqlParser.STANDBY, 0);
+};
+
+Commit_switchover_clauseContext.prototype.PRIMARY = function() {
+ return this.getToken(PlSqlParser.PRIMARY, 0);
+};
+
+Commit_switchover_clauseContext.prototype.SESSION = function() {
+ return this.getToken(PlSqlParser.SESSION, 0);
+};
+
+Commit_switchover_clauseContext.prototype.SHUTDOWN = function() {
+ return this.getToken(PlSqlParser.SHUTDOWN, 0);
+};
+
+Commit_switchover_clauseContext.prototype.WAIT = function() {
+ return this.getToken(PlSqlParser.WAIT, 0);
+};
+
+Commit_switchover_clauseContext.prototype.NOWAIT = function() {
+ return this.getToken(PlSqlParser.NOWAIT, 0);
+};
+
+Commit_switchover_clauseContext.prototype.PHYSICAL = function() {
+ return this.getToken(PlSqlParser.PHYSICAL, 0);
+};
+
+Commit_switchover_clauseContext.prototype.WITH = function() {
+ return this.getToken(PlSqlParser.WITH, 0);
+};
+
+Commit_switchover_clauseContext.prototype.WITHOUT = function() {
+ return this.getToken(PlSqlParser.WITHOUT, 0);
+};
+
+Commit_switchover_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterCommit_switchover_clause(this);
+ }
+};
+
+Commit_switchover_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitCommit_switchover_clause(this);
+ }
+};
+
+Commit_switchover_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitCommit_switchover_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Commit_switchover_clauseContext = Commit_switchover_clauseContext;
+
+PlSqlParser.prototype.commit_switchover_clause = function() {
+
+ var localctx = new Commit_switchover_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 724, PlSqlParser.RULE_commit_switchover_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7123;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.COMMIT || _la===PlSqlParser.PREPARE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 7124;
+ this.match(PlSqlParser.TO);
+ this.state = 7125;
+ this.match(PlSqlParser.SWITCHOVER);
+ this.state = 7154;
+ this._errHandler.sync(this);
+ switch (this._input.LA(1)) {
+ case PlSqlParser.LOGICAL:
+ case PlSqlParser.TO:
+ this.state = 7151;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.TO:
+ this.state = 7126;
+ this.match(PlSqlParser.TO);
+ this.state = 7147;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,881,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 7135;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,878,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 7128;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.LOGICAL || _la===PlSqlParser.PHYSICAL) {
+ this.state = 7127;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.LOGICAL || _la===PlSqlParser.PHYSICAL)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 7130;
+ this.match(PlSqlParser.PRIMARY);
+ break;
+
+ case 2:
+ this.state = 7132;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.PHYSICAL) {
+ this.state = 7131;
+ this.match(PlSqlParser.PHYSICAL);
+ }
+
+ this.state = 7134;
+ this.match(PlSqlParser.STANDBY);
+ break;
+
+ }
+ this.state = 7143;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.SESSION || _la===PlSqlParser.WITHOUT || _la===PlSqlParser.WITH) {
+ this.state = 7138;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.WITHOUT || _la===PlSqlParser.WITH) {
+ this.state = 7137;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.WITHOUT || _la===PlSqlParser.WITH)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 7140;
+ this.match(PlSqlParser.SESSION);
+ this.state = 7141;
+ this.match(PlSqlParser.SHUTDOWN);
+ this.state = 7142;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.NOWAIT || _la===PlSqlParser.WAIT)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ break;
+
+ case 2:
+ this.state = 7145;
+ this.match(PlSqlParser.LOGICAL);
+ this.state = 7146;
+ this.match(PlSqlParser.STANDBY);
+ break;
+
+ }
+ break;
+ case PlSqlParser.LOGICAL:
+ this.state = 7149;
+ this.match(PlSqlParser.LOGICAL);
+ this.state = 7150;
+ this.match(PlSqlParser.STANDBY);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ break;
+ case PlSqlParser.CANCEL:
+ this.state = 7153;
+ this.match(PlSqlParser.CANCEL);
+ break;
+ case PlSqlParser.NOPARALLEL:
+ case PlSqlParser.PARALLEL:
+ case PlSqlParser.SEMICOLON:
+ break;
+ default:
+ break;
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Start_standby_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_start_standby_clause;
+ this.scn_value = null; // Token
+ return this;
+}
+
+Start_standby_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Start_standby_clauseContext.prototype.constructor = Start_standby_clauseContext;
+
+Start_standby_clauseContext.prototype.START = function() {
+ return this.getToken(PlSqlParser.START, 0);
+};
+
+Start_standby_clauseContext.prototype.LOGICAL = function() {
+ return this.getToken(PlSqlParser.LOGICAL, 0);
+};
+
+Start_standby_clauseContext.prototype.STANDBY = function() {
+ return this.getToken(PlSqlParser.STANDBY, 0);
+};
+
+Start_standby_clauseContext.prototype.APPLY = function() {
+ return this.getToken(PlSqlParser.APPLY, 0);
+};
+
+Start_standby_clauseContext.prototype.IMMEDIATE = function() {
+ return this.getToken(PlSqlParser.IMMEDIATE, 0);
+};
+
+Start_standby_clauseContext.prototype.NODELAY = function() {
+ return this.getToken(PlSqlParser.NODELAY, 0);
+};
+
+Start_standby_clauseContext.prototype.NEW = function() {
+ return this.getToken(PlSqlParser.NEW, 0);
+};
+
+Start_standby_clauseContext.prototype.PRIMARY = function() {
+ return this.getToken(PlSqlParser.PRIMARY, 0);
+};
+
+Start_standby_clauseContext.prototype.regular_id = function() {
+ return this.getTypedRuleContext(Regular_idContext,0);
+};
+
+Start_standby_clauseContext.prototype.INITIAL = function() {
+ return this.getToken(PlSqlParser.INITIAL, 0);
+};
+
+Start_standby_clauseContext.prototype.SKIP_ = function() {
+ return this.getToken(PlSqlParser.SKIP_, 0);
+};
+
+Start_standby_clauseContext.prototype.FAILED = function() {
+ return this.getToken(PlSqlParser.FAILED, 0);
+};
+
+Start_standby_clauseContext.prototype.TRANSACTION = function() {
+ return this.getToken(PlSqlParser.TRANSACTION, 0);
+};
+
+Start_standby_clauseContext.prototype.FINISH = function() {
+ return this.getToken(PlSqlParser.FINISH, 0);
+};
+
+Start_standby_clauseContext.prototype.UNSIGNED_INTEGER = function() {
+ return this.getToken(PlSqlParser.UNSIGNED_INTEGER, 0);
+};
+
+Start_standby_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterStart_standby_clause(this);
+ }
+};
+
+Start_standby_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitStart_standby_clause(this);
+ }
+};
+
+Start_standby_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitStart_standby_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Start_standby_clauseContext = Start_standby_clauseContext;
+
+PlSqlParser.prototype.start_standby_clause = function() {
+
+ var localctx = new Start_standby_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 726, PlSqlParser.RULE_start_standby_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7156;
+ this.match(PlSqlParser.START);
+ this.state = 7157;
+ this.match(PlSqlParser.LOGICAL);
+ this.state = 7158;
+ this.match(PlSqlParser.STANDBY);
+ this.state = 7159;
+ this.match(PlSqlParser.APPLY);
+ this.state = 7161;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.IMMEDIATE) {
+ this.state = 7160;
+ this.match(PlSqlParser.IMMEDIATE);
+ }
+
+ this.state = 7164;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.NODELAY) {
+ this.state = 7163;
+ this.match(PlSqlParser.NODELAY);
+ }
+
+ this.state = 7177;
+ this._errHandler.sync(this);
+ switch (this._input.LA(1)) {
+ case PlSqlParser.NEW:
+ this.state = 7166;
+ this.match(PlSqlParser.NEW);
+ this.state = 7167;
+ this.match(PlSqlParser.PRIMARY);
+ this.state = 7168;
+ this.regular_id();
+ break;
+ case PlSqlParser.INITIAL:
+ this.state = 7169;
+ this.match(PlSqlParser.INITIAL);
+ this.state = 7171;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.UNSIGNED_INTEGER) {
+ this.state = 7170;
+ localctx.scn_value = this.match(PlSqlParser.UNSIGNED_INTEGER);
+ }
+
+ break;
+ case PlSqlParser.SKIP_:
+ this.state = 7173;
+ this.match(PlSqlParser.SKIP_);
+ this.state = 7174;
+ this.match(PlSqlParser.FAILED);
+ this.state = 7175;
+ this.match(PlSqlParser.TRANSACTION);
+ break;
+ case PlSqlParser.FINISH:
+ this.state = 7176;
+ this.match(PlSqlParser.FINISH);
+ break;
+ case PlSqlParser.NOPARALLEL:
+ case PlSqlParser.PARALLEL:
+ case PlSqlParser.SEMICOLON:
+ break;
+ default:
+ break;
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Stop_standby_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_stop_standby_clause;
+ return this;
+}
+
+Stop_standby_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Stop_standby_clauseContext.prototype.constructor = Stop_standby_clauseContext;
+
+Stop_standby_clauseContext.prototype.LOGICAL = function() {
+ return this.getToken(PlSqlParser.LOGICAL, 0);
+};
+
+Stop_standby_clauseContext.prototype.STANDBY = function() {
+ return this.getToken(PlSqlParser.STANDBY, 0);
+};
+
+Stop_standby_clauseContext.prototype.APPLY = function() {
+ return this.getToken(PlSqlParser.APPLY, 0);
+};
+
+Stop_standby_clauseContext.prototype.STOP = function() {
+ return this.getToken(PlSqlParser.STOP, 0);
+};
+
+Stop_standby_clauseContext.prototype.ABORT = function() {
+ return this.getToken(PlSqlParser.ABORT, 0);
+};
+
+Stop_standby_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterStop_standby_clause(this);
+ }
+};
+
+Stop_standby_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitStop_standby_clause(this);
+ }
+};
+
+Stop_standby_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitStop_standby_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Stop_standby_clauseContext = Stop_standby_clauseContext;
+
+PlSqlParser.prototype.stop_standby_clause = function() {
+
+ var localctx = new Stop_standby_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 728, PlSqlParser.RULE_stop_standby_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7179;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.ABORT || _la===PlSqlParser.STOP)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 7180;
+ this.match(PlSqlParser.LOGICAL);
+ this.state = 7181;
+ this.match(PlSqlParser.STANDBY);
+ this.state = 7182;
+ this.match(PlSqlParser.APPLY);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Convert_database_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_convert_database_clause;
+ return this;
+}
+
+Convert_database_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Convert_database_clauseContext.prototype.constructor = Convert_database_clauseContext;
+
+Convert_database_clauseContext.prototype.CONVERT = function() {
+ return this.getToken(PlSqlParser.CONVERT, 0);
+};
+
+Convert_database_clauseContext.prototype.TO = function() {
+ return this.getToken(PlSqlParser.TO, 0);
+};
+
+Convert_database_clauseContext.prototype.STANDBY = function() {
+ return this.getToken(PlSqlParser.STANDBY, 0);
+};
+
+Convert_database_clauseContext.prototype.PHYSICAL = function() {
+ return this.getToken(PlSqlParser.PHYSICAL, 0);
+};
+
+Convert_database_clauseContext.prototype.SNAPSHOT = function() {
+ return this.getToken(PlSqlParser.SNAPSHOT, 0);
+};
+
+Convert_database_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterConvert_database_clause(this);
+ }
+};
+
+Convert_database_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitConvert_database_clause(this);
+ }
+};
+
+Convert_database_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitConvert_database_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Convert_database_clauseContext = Convert_database_clauseContext;
+
+PlSqlParser.prototype.convert_database_clause = function() {
+
+ var localctx = new Convert_database_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 730, PlSqlParser.RULE_convert_database_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7184;
+ this.match(PlSqlParser.CONVERT);
+ this.state = 7185;
+ this.match(PlSqlParser.TO);
+ this.state = 7186;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.PHYSICAL || _la===PlSqlParser.SNAPSHOT)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 7187;
+ this.match(PlSqlParser.STANDBY);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Default_settings_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_default_settings_clause;
+ return this;
+}
+
+Default_settings_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Default_settings_clauseContext.prototype.constructor = Default_settings_clauseContext;
+
+Default_settings_clauseContext.prototype.DEFAULT = function() {
+ return this.getToken(PlSqlParser.DEFAULT, 0);
+};
+
+Default_settings_clauseContext.prototype.EDITION = function() {
+ return this.getToken(PlSqlParser.EDITION, 0);
+};
+
+Default_settings_clauseContext.prototype.EQUALS_OP = function() {
+ return this.getToken(PlSqlParser.EQUALS_OP, 0);
+};
+
+Default_settings_clauseContext.prototype.edition_name = function() {
+ return this.getTypedRuleContext(Edition_nameContext,0);
+};
+
+Default_settings_clauseContext.prototype.SET = function() {
+ return this.getToken(PlSqlParser.SET, 0);
+};
+
+Default_settings_clauseContext.prototype.TABLESPACE = function() {
+ return this.getToken(PlSqlParser.TABLESPACE, 0);
+};
+
+Default_settings_clauseContext.prototype.BIGFILE = function() {
+ return this.getToken(PlSqlParser.BIGFILE, 0);
+};
+
+Default_settings_clauseContext.prototype.SMALLFILE = function() {
+ return this.getToken(PlSqlParser.SMALLFILE, 0);
+};
+
+Default_settings_clauseContext.prototype.tablespace = function() {
+ return this.getTypedRuleContext(TablespaceContext,0);
+};
+
+Default_settings_clauseContext.prototype.TEMPORARY = function() {
+ return this.getToken(PlSqlParser.TEMPORARY, 0);
+};
+
+Default_settings_clauseContext.prototype.tablespace_group_name = function() {
+ return this.getTypedRuleContext(Tablespace_group_nameContext,0);
+};
+
+Default_settings_clauseContext.prototype.RENAME = function() {
+ return this.getToken(PlSqlParser.RENAME, 0);
+};
+
+Default_settings_clauseContext.prototype.GLOBAL_NAME = function() {
+ return this.getToken(PlSqlParser.GLOBAL_NAME, 0);
+};
+
+Default_settings_clauseContext.prototype.TO = function() {
+ return this.getToken(PlSqlParser.TO, 0);
+};
+
+Default_settings_clauseContext.prototype.database = function() {
+ return this.getTypedRuleContext(DatabaseContext,0);
+};
+
+Default_settings_clauseContext.prototype.PERIOD = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.PERIOD);
+ } else {
+ return this.getToken(PlSqlParser.PERIOD, i);
+ }
+};
+
+
+Default_settings_clauseContext.prototype.domain = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(DomainContext);
+ } else {
+ return this.getTypedRuleContext(DomainContext,i);
+ }
+};
+
+Default_settings_clauseContext.prototype.ENABLE = function() {
+ return this.getToken(PlSqlParser.ENABLE, 0);
+};
+
+Default_settings_clauseContext.prototype.BLOCK = function() {
+ return this.getToken(PlSqlParser.BLOCK, 0);
+};
+
+Default_settings_clauseContext.prototype.CHANGE = function() {
+ return this.getToken(PlSqlParser.CHANGE, 0);
+};
+
+Default_settings_clauseContext.prototype.TRACKING = function() {
+ return this.getToken(PlSqlParser.TRACKING, 0);
+};
+
+Default_settings_clauseContext.prototype.USING = function() {
+ return this.getToken(PlSqlParser.USING, 0);
+};
+
+Default_settings_clauseContext.prototype.FILE = function() {
+ return this.getToken(PlSqlParser.FILE, 0);
+};
+
+Default_settings_clauseContext.prototype.filename = function() {
+ return this.getTypedRuleContext(FilenameContext,0);
+};
+
+Default_settings_clauseContext.prototype.REUSE = function() {
+ return this.getToken(PlSqlParser.REUSE, 0);
+};
+
+Default_settings_clauseContext.prototype.DISABLE = function() {
+ return this.getToken(PlSqlParser.DISABLE, 0);
+};
+
+Default_settings_clauseContext.prototype.flashback_mode_clause = function() {
+ return this.getTypedRuleContext(Flashback_mode_clauseContext,0);
+};
+
+Default_settings_clauseContext.prototype.set_time_zone_clause = function() {
+ return this.getTypedRuleContext(Set_time_zone_clauseContext,0);
+};
+
+Default_settings_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterDefault_settings_clause(this);
+ }
+};
+
+Default_settings_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitDefault_settings_clause(this);
+ }
+};
+
+Default_settings_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitDefault_settings_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Default_settings_clauseContext = Default_settings_clauseContext;
+
+PlSqlParser.prototype.default_settings_clause = function() {
+
+ var localctx = new Default_settings_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 732, PlSqlParser.RULE_default_settings_clause);
+ var _la = 0; // Token type
+ try {
+ this.state = 7235;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,892,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7189;
+ this.match(PlSqlParser.DEFAULT);
+ this.state = 7190;
+ this.match(PlSqlParser.EDITION);
+ this.state = 7191;
+ this.match(PlSqlParser.EQUALS_OP);
+ this.state = 7192;
+ this.edition_name();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 7193;
+ this.match(PlSqlParser.SET);
+ this.state = 7194;
+ this.match(PlSqlParser.DEFAULT);
+ this.state = 7195;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.BIGFILE || _la===PlSqlParser.SMALLFILE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 7196;
+ this.match(PlSqlParser.TABLESPACE);
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 7197;
+ this.match(PlSqlParser.DEFAULT);
+ this.state = 7198;
+ this.match(PlSqlParser.TABLESPACE);
+ this.state = 7199;
+ this.tablespace();
+ break;
+
+ case 4:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 7200;
+ this.match(PlSqlParser.DEFAULT);
+ this.state = 7201;
+ this.match(PlSqlParser.TEMPORARY);
+ this.state = 7202;
+ this.match(PlSqlParser.TABLESPACE);
+ this.state = 7205;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,888,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 7203;
+ this.tablespace();
+ break;
+
+ case 2:
+ this.state = 7204;
+ this.tablespace_group_name();
+ break;
+
+ }
+ break;
+
+ case 5:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 7207;
+ this.match(PlSqlParser.RENAME);
+ this.state = 7208;
+ this.match(PlSqlParser.GLOBAL_NAME);
+ this.state = 7209;
+ this.match(PlSqlParser.TO);
+ this.state = 7210;
+ this.database();
+ this.state = 7213;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 7211;
+ this.match(PlSqlParser.PERIOD);
+ this.state = 7212;
+ this.domain();
+ this.state = 7215;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(_la===PlSqlParser.PERIOD);
+ break;
+
+ case 6:
+ this.enterOuterAlt(localctx, 6);
+ this.state = 7217;
+ this.match(PlSqlParser.ENABLE);
+ this.state = 7218;
+ this.match(PlSqlParser.BLOCK);
+ this.state = 7219;
+ this.match(PlSqlParser.CHANGE);
+ this.state = 7220;
+ this.match(PlSqlParser.TRACKING);
+ this.state = 7227;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.USING) {
+ this.state = 7221;
+ this.match(PlSqlParser.USING);
+ this.state = 7222;
+ this.match(PlSqlParser.FILE);
+ this.state = 7223;
+ this.filename();
+ this.state = 7225;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.REUSE) {
+ this.state = 7224;
+ this.match(PlSqlParser.REUSE);
+ }
+
+ }
+
+ break;
+
+ case 7:
+ this.enterOuterAlt(localctx, 7);
+ this.state = 7229;
+ this.match(PlSqlParser.DISABLE);
+ this.state = 7230;
+ this.match(PlSqlParser.BLOCK);
+ this.state = 7231;
+ this.match(PlSqlParser.CHANGE);
+ this.state = 7232;
+ this.match(PlSqlParser.TRACKING);
+ break;
+
+ case 8:
+ this.enterOuterAlt(localctx, 8);
+ this.state = 7233;
+ this.flashback_mode_clause();
+ break;
+
+ case 9:
+ this.enterOuterAlt(localctx, 9);
+ this.state = 7234;
+ this.set_time_zone_clause();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Set_time_zone_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_set_time_zone_clause;
+ return this;
+}
+
+Set_time_zone_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Set_time_zone_clauseContext.prototype.constructor = Set_time_zone_clauseContext;
+
+Set_time_zone_clauseContext.prototype.SET = function() {
+ return this.getToken(PlSqlParser.SET, 0);
+};
+
+Set_time_zone_clauseContext.prototype.TIMEZONE = function() {
+ return this.getToken(PlSqlParser.TIMEZONE, 0);
+};
+
+Set_time_zone_clauseContext.prototype.EQUALS_OP = function() {
+ return this.getToken(PlSqlParser.EQUALS_OP, 0);
+};
+
+Set_time_zone_clauseContext.prototype.CHAR_STRING = function() {
+ return this.getToken(PlSqlParser.CHAR_STRING, 0);
+};
+
+Set_time_zone_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterSet_time_zone_clause(this);
+ }
+};
+
+Set_time_zone_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitSet_time_zone_clause(this);
+ }
+};
+
+Set_time_zone_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitSet_time_zone_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Set_time_zone_clauseContext = Set_time_zone_clauseContext;
+
+PlSqlParser.prototype.set_time_zone_clause = function() {
+
+ var localctx = new Set_time_zone_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 734, PlSqlParser.RULE_set_time_zone_clause);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7237;
+ this.match(PlSqlParser.SET);
+ this.state = 7238;
+ this.match(PlSqlParser.TIMEZONE);
+ this.state = 7239;
+ this.match(PlSqlParser.EQUALS_OP);
+ this.state = 7240;
+ this.match(PlSqlParser.CHAR_STRING);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Instance_clausesContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_instance_clauses;
+ return this;
+}
+
+Instance_clausesContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Instance_clausesContext.prototype.constructor = Instance_clausesContext;
+
+Instance_clausesContext.prototype.enable_or_disable = function() {
+ return this.getTypedRuleContext(Enable_or_disableContext,0);
+};
+
+Instance_clausesContext.prototype.INSTANCE = function() {
+ return this.getToken(PlSqlParser.INSTANCE, 0);
+};
+
+Instance_clausesContext.prototype.CHAR_STRING = function() {
+ return this.getToken(PlSqlParser.CHAR_STRING, 0);
+};
+
+Instance_clausesContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterInstance_clauses(this);
+ }
+};
+
+Instance_clausesContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitInstance_clauses(this);
+ }
+};
+
+Instance_clausesContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitInstance_clauses(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Instance_clausesContext = Instance_clausesContext;
+
+PlSqlParser.prototype.instance_clauses = function() {
+
+ var localctx = new Instance_clausesContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 736, PlSqlParser.RULE_instance_clauses);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7242;
+ this.enable_or_disable();
+ this.state = 7243;
+ this.match(PlSqlParser.INSTANCE);
+ this.state = 7244;
+ this.match(PlSqlParser.CHAR_STRING);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Security_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_security_clause;
+ return this;
+}
+
+Security_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Security_clauseContext.prototype.constructor = Security_clauseContext;
+
+Security_clauseContext.prototype.GUARD = function() {
+ return this.getToken(PlSqlParser.GUARD, 0);
+};
+
+Security_clauseContext.prototype.ALL = function() {
+ return this.getToken(PlSqlParser.ALL, 0);
+};
+
+Security_clauseContext.prototype.STANDBY = function() {
+ return this.getToken(PlSqlParser.STANDBY, 0);
+};
+
+Security_clauseContext.prototype.NONE = function() {
+ return this.getToken(PlSqlParser.NONE, 0);
+};
+
+Security_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterSecurity_clause(this);
+ }
+};
+
+Security_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitSecurity_clause(this);
+ }
+};
+
+Security_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitSecurity_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Security_clauseContext = Security_clauseContext;
+
+PlSqlParser.prototype.security_clause = function() {
+
+ var localctx = new Security_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 738, PlSqlParser.RULE_security_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7246;
+ this.match(PlSqlParser.GUARD);
+ this.state = 7247;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.ALL || _la===PlSqlParser.NONE || _la===PlSqlParser.STANDBY)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function DomainContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_domain;
+ return this;
+}
+
+DomainContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+DomainContext.prototype.constructor = DomainContext;
+
+DomainContext.prototype.regular_id = function() {
+ return this.getTypedRuleContext(Regular_idContext,0);
+};
+
+DomainContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterDomain(this);
+ }
+};
+
+DomainContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitDomain(this);
+ }
+};
+
+DomainContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitDomain(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.DomainContext = DomainContext;
+
+PlSqlParser.prototype.domain = function() {
+
+ var localctx = new DomainContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 740, PlSqlParser.RULE_domain);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7249;
+ this.regular_id();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function DatabaseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_database;
+ return this;
+}
+
+DatabaseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+DatabaseContext.prototype.constructor = DatabaseContext;
+
+DatabaseContext.prototype.regular_id = function() {
+ return this.getTypedRuleContext(Regular_idContext,0);
+};
+
+DatabaseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterDatabase(this);
+ }
+};
+
+DatabaseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitDatabase(this);
+ }
+};
+
+DatabaseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitDatabase(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.DatabaseContext = DatabaseContext;
+
+PlSqlParser.prototype.database = function() {
+
+ var localctx = new DatabaseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 742, PlSqlParser.RULE_database);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7251;
+ this.regular_id();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Edition_nameContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_edition_name;
+ return this;
+}
+
+Edition_nameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Edition_nameContext.prototype.constructor = Edition_nameContext;
+
+Edition_nameContext.prototype.regular_id = function() {
+ return this.getTypedRuleContext(Regular_idContext,0);
+};
+
+Edition_nameContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterEdition_name(this);
+ }
+};
+
+Edition_nameContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitEdition_name(this);
+ }
+};
+
+Edition_nameContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitEdition_name(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Edition_nameContext = Edition_nameContext;
+
+PlSqlParser.prototype.edition_name = function() {
+
+ var localctx = new Edition_nameContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 744, PlSqlParser.RULE_edition_name);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7253;
+ this.regular_id();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function FilenumberContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_filenumber;
+ return this;
+}
+
+FilenumberContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+FilenumberContext.prototype.constructor = FilenumberContext;
+
+FilenumberContext.prototype.UNSIGNED_INTEGER = function() {
+ return this.getToken(PlSqlParser.UNSIGNED_INTEGER, 0);
+};
+
+FilenumberContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterFilenumber(this);
+ }
+};
+
+FilenumberContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitFilenumber(this);
+ }
+};
+
+FilenumberContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitFilenumber(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.FilenumberContext = FilenumberContext;
+
+PlSqlParser.prototype.filenumber = function() {
+
+ var localctx = new FilenumberContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 746, PlSqlParser.RULE_filenumber);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7255;
+ this.match(PlSqlParser.UNSIGNED_INTEGER);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function FilenameContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_filename;
+ return this;
+}
+
+FilenameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+FilenameContext.prototype.constructor = FilenameContext;
+
+FilenameContext.prototype.CHAR_STRING = function() {
+ return this.getToken(PlSqlParser.CHAR_STRING, 0);
+};
+
+FilenameContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterFilename(this);
+ }
+};
+
+FilenameContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitFilename(this);
+ }
+};
+
+FilenameContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitFilename(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.FilenameContext = FilenameContext;
+
+PlSqlParser.prototype.filename = function() {
+
+ var localctx = new FilenameContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 748, PlSqlParser.RULE_filename);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7257;
+ this.match(PlSqlParser.CHAR_STRING);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Alter_tableContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_alter_table;
+ return this;
+}
+
+Alter_tableContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Alter_tableContext.prototype.constructor = Alter_tableContext;
+
+Alter_tableContext.prototype.ALTER = function() {
+ return this.getToken(PlSqlParser.ALTER, 0);
+};
+
+Alter_tableContext.prototype.TABLE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.TABLE);
+ } else {
+ return this.getToken(PlSqlParser.TABLE, i);
+ }
+};
+
+
+Alter_tableContext.prototype.tableview_name = function() {
+ return this.getTypedRuleContext(Tableview_nameContext,0);
+};
+
+Alter_tableContext.prototype.SEMICOLON = function() {
+ return this.getToken(PlSqlParser.SEMICOLON, 0);
+};
+
+Alter_tableContext.prototype.alter_table_properties = function() {
+ return this.getTypedRuleContext(Alter_table_propertiesContext,0);
+};
+
+Alter_tableContext.prototype.constraint_clauses = function() {
+ return this.getTypedRuleContext(Constraint_clausesContext,0);
+};
+
+Alter_tableContext.prototype.column_clauses = function() {
+ return this.getTypedRuleContext(Column_clausesContext,0);
+};
+
+Alter_tableContext.prototype.move_table_clause = function() {
+ return this.getTypedRuleContext(Move_table_clauseContext,0);
+};
+
+Alter_tableContext.prototype.enable_disable_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Enable_disable_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Enable_disable_clauseContext,i);
+ }
+};
+
+Alter_tableContext.prototype.enable_or_disable = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Enable_or_disableContext);
+ } else {
+ return this.getTypedRuleContext(Enable_or_disableContext,i);
+ }
+};
+
+Alter_tableContext.prototype.LOCK = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.LOCK);
+ } else {
+ return this.getToken(PlSqlParser.LOCK, i);
+ }
+};
+
+
+Alter_tableContext.prototype.ALL = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.ALL);
+ } else {
+ return this.getToken(PlSqlParser.ALL, i);
+ }
+};
+
+
+Alter_tableContext.prototype.TRIGGERS = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.TRIGGERS);
+ } else {
+ return this.getToken(PlSqlParser.TRIGGERS, i);
+ }
+};
+
+
+Alter_tableContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAlter_table(this);
+ }
+};
+
+Alter_tableContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAlter_table(this);
+ }
+};
+
+Alter_tableContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAlter_table(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Alter_tableContext = Alter_tableContext;
+
+PlSqlParser.prototype.alter_table = function() {
+
+ var localctx = new Alter_tableContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 750, PlSqlParser.RULE_alter_table);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7259;
+ this.match(PlSqlParser.ALTER);
+ this.state = 7260;
+ this.match(PlSqlParser.TABLE);
+ this.state = 7261;
+ this.tableview_name();
+ this.state = 7267;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,893,this._ctx);
+ switch(la_) {
+ case 1:
+ break;
+
+ case 2:
+ this.state = 7263;
+ this.alter_table_properties();
+ break;
+
+ case 3:
+ this.state = 7264;
+ this.constraint_clauses();
+ break;
+
+ case 4:
+ this.state = 7265;
+ this.column_clauses();
+ break;
+
+ case 5:
+ this.state = 7266;
+ this.move_table_clause();
+ break;
+
+ }
+ this.state = 7281;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.DISABLE || _la===PlSqlParser.ENABLE) {
+ this.state = 7277;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 7277;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,895,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 7269;
+ this.enable_disable_clause();
+ break;
+
+ case 2:
+ this.state = 7270;
+ this.enable_or_disable();
+ this.state = 7275;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.TABLE:
+ this.state = 7271;
+ this.match(PlSqlParser.TABLE);
+ this.state = 7272;
+ this.match(PlSqlParser.LOCK);
+ break;
+ case PlSqlParser.ALL:
+ this.state = 7273;
+ this.match(PlSqlParser.ALL);
+ this.state = 7274;
+ this.match(PlSqlParser.TRIGGERS);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ break;
+
+ }
+ this.state = 7279;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(_la===PlSqlParser.DISABLE || _la===PlSqlParser.ENABLE);
+ }
+
+ this.state = 7283;
+ this.match(PlSqlParser.SEMICOLON);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Alter_table_propertiesContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_alter_table_properties;
+ return this;
+}
+
+Alter_table_propertiesContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Alter_table_propertiesContext.prototype.constructor = Alter_table_propertiesContext;
+
+Alter_table_propertiesContext.prototype.alter_table_properties_1 = function() {
+ return this.getTypedRuleContext(Alter_table_properties_1Context,0);
+};
+
+Alter_table_propertiesContext.prototype.RENAME = function() {
+ return this.getToken(PlSqlParser.RENAME, 0);
+};
+
+Alter_table_propertiesContext.prototype.TO = function() {
+ return this.getToken(PlSqlParser.TO, 0);
+};
+
+Alter_table_propertiesContext.prototype.tableview_name = function() {
+ return this.getTypedRuleContext(Tableview_nameContext,0);
+};
+
+Alter_table_propertiesContext.prototype.shrink_clause = function() {
+ return this.getTypedRuleContext(Shrink_clauseContext,0);
+};
+
+Alter_table_propertiesContext.prototype.READ = function() {
+ return this.getToken(PlSqlParser.READ, 0);
+};
+
+Alter_table_propertiesContext.prototype.ONLY = function() {
+ return this.getToken(PlSqlParser.ONLY, 0);
+};
+
+Alter_table_propertiesContext.prototype.WRITE = function() {
+ return this.getToken(PlSqlParser.WRITE, 0);
+};
+
+Alter_table_propertiesContext.prototype.REKEY = function() {
+ return this.getToken(PlSqlParser.REKEY, 0);
+};
+
+Alter_table_propertiesContext.prototype.CHAR_STRING = function() {
+ return this.getToken(PlSqlParser.CHAR_STRING, 0);
+};
+
+Alter_table_propertiesContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAlter_table_properties(this);
+ }
+};
+
+Alter_table_propertiesContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAlter_table_properties(this);
+ }
+};
+
+Alter_table_propertiesContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAlter_table_properties(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Alter_table_propertiesContext = Alter_table_propertiesContext;
+
+PlSqlParser.prototype.alter_table_properties = function() {
+
+ var localctx = new Alter_table_propertiesContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 752, PlSqlParser.RULE_alter_table_properties);
+ try {
+ this.state = 7296;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,898,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7285;
+ this.alter_table_properties_1();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 7286;
+ this.match(PlSqlParser.RENAME);
+ this.state = 7287;
+ this.match(PlSqlParser.TO);
+ this.state = 7288;
+ this.tableview_name();
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 7289;
+ this.shrink_clause();
+ break;
+
+ case 4:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 7290;
+ this.match(PlSqlParser.READ);
+ this.state = 7291;
+ this.match(PlSqlParser.ONLY);
+ break;
+
+ case 5:
+ this.enterOuterAlt(localctx, 5);
+ this.state = 7292;
+ this.match(PlSqlParser.READ);
+ this.state = 7293;
+ this.match(PlSqlParser.WRITE);
+ break;
+
+ case 6:
+ this.enterOuterAlt(localctx, 6);
+ this.state = 7294;
+ this.match(PlSqlParser.REKEY);
+ this.state = 7295;
+ this.match(PlSqlParser.CHAR_STRING);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Alter_table_properties_1Context(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_alter_table_properties_1;
+ return this;
+}
+
+Alter_table_properties_1Context.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Alter_table_properties_1Context.prototype.constructor = Alter_table_properties_1Context;
+
+Alter_table_properties_1Context.prototype.physical_attributes_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Physical_attributes_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Physical_attributes_clauseContext,i);
+ }
+};
+
+Alter_table_properties_1Context.prototype.logging_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Logging_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Logging_clauseContext,i);
+ }
+};
+
+Alter_table_properties_1Context.prototype.table_compression = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Table_compressionContext);
+ } else {
+ return this.getTypedRuleContext(Table_compressionContext,i);
+ }
+};
+
+Alter_table_properties_1Context.prototype.supplemental_table_logging = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Supplemental_table_loggingContext);
+ } else {
+ return this.getTypedRuleContext(Supplemental_table_loggingContext,i);
+ }
+};
+
+Alter_table_properties_1Context.prototype.allocate_extent_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Allocate_extent_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Allocate_extent_clauseContext,i);
+ }
+};
+
+Alter_table_properties_1Context.prototype.deallocate_unused_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Deallocate_unused_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Deallocate_unused_clauseContext,i);
+ }
+};
+
+Alter_table_properties_1Context.prototype.RESULT_CACHE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.RESULT_CACHE);
+ } else {
+ return this.getToken(PlSqlParser.RESULT_CACHE, i);
+ }
+};
+
+
+Alter_table_properties_1Context.prototype.LEFT_PAREN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.LEFT_PAREN);
+ } else {
+ return this.getToken(PlSqlParser.LEFT_PAREN, i);
+ }
+};
+
+
+Alter_table_properties_1Context.prototype.MODE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.MODE);
+ } else {
+ return this.getToken(PlSqlParser.MODE, i);
+ }
+};
+
+
+Alter_table_properties_1Context.prototype.RIGHT_PAREN = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.RIGHT_PAREN);
+ } else {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, i);
+ }
+};
+
+
+Alter_table_properties_1Context.prototype.upgrade_table_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Upgrade_table_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Upgrade_table_clauseContext,i);
+ }
+};
+
+Alter_table_properties_1Context.prototype.records_per_block_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Records_per_block_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Records_per_block_clauseContext,i);
+ }
+};
+
+Alter_table_properties_1Context.prototype.parallel_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Parallel_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Parallel_clauseContext,i);
+ }
+};
+
+Alter_table_properties_1Context.prototype.row_movement_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Row_movement_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Row_movement_clauseContext,i);
+ }
+};
+
+Alter_table_properties_1Context.prototype.flashback_archive_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Flashback_archive_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Flashback_archive_clauseContext,i);
+ }
+};
+
+Alter_table_properties_1Context.prototype.alter_iot_clauses = function() {
+ return this.getTypedRuleContext(Alter_iot_clausesContext,0);
+};
+
+Alter_table_properties_1Context.prototype.CACHE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.CACHE);
+ } else {
+ return this.getToken(PlSqlParser.CACHE, i);
+ }
+};
+
+
+Alter_table_properties_1Context.prototype.NOCACHE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.NOCACHE);
+ } else {
+ return this.getToken(PlSqlParser.NOCACHE, i);
+ }
+};
+
+
+Alter_table_properties_1Context.prototype.DEFAULT = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.DEFAULT);
+ } else {
+ return this.getToken(PlSqlParser.DEFAULT, i);
+ }
+};
+
+
+Alter_table_properties_1Context.prototype.FORCE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.FORCE);
+ } else {
+ return this.getToken(PlSqlParser.FORCE, i);
+ }
+};
+
+
+Alter_table_properties_1Context.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAlter_table_properties_1(this);
+ }
+};
+
+Alter_table_properties_1Context.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAlter_table_properties_1(this);
+ }
+};
+
+Alter_table_properties_1Context.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAlter_table_properties_1(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Alter_table_properties_1Context = Alter_table_properties_1Context;
+
+PlSqlParser.prototype.alter_table_properties_1 = function() {
+
+ var localctx = new Alter_table_properties_1Context(this, this._ctx, this.state);
+ this.enterRule(localctx, 754, PlSqlParser.RULE_alter_table_properties_1);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7315;
+ this._errHandler.sync(this);
+ var _alt = 1;
+ do {
+ switch (_alt) {
+ case 1:
+ this.state = 7315;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.INITRANS:
+ case PlSqlParser.PCTFREE:
+ case PlSqlParser.PCTUSED:
+ case PlSqlParser.STORAGE:
+ this.state = 7298;
+ this.physical_attributes_clause();
+ break;
+ case PlSqlParser.FILESYSTEM_LIKE_LOGGING:
+ case PlSqlParser.LOGGING:
+ case PlSqlParser.NOLOGGING:
+ this.state = 7299;
+ this.logging_clause();
+ break;
+ case PlSqlParser.COMPRESS:
+ case PlSqlParser.NOCOMPRESS:
+ this.state = 7300;
+ this.table_compression();
+ break;
+ case PlSqlParser.ADD:
+ case PlSqlParser.DROP:
+ this.state = 7301;
+ this.supplemental_table_logging();
+ break;
+ case PlSqlParser.ALLOCATE:
+ this.state = 7302;
+ this.allocate_extent_clause();
+ break;
+ case PlSqlParser.DEALLOCATE:
+ this.state = 7303;
+ this.deallocate_unused_clause();
+ break;
+ case PlSqlParser.CACHE:
+ case PlSqlParser.NOCACHE:
+ this.state = 7304;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.CACHE || _la===PlSqlParser.NOCACHE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ break;
+ case PlSqlParser.RESULT_CACHE:
+ this.state = 7305;
+ this.match(PlSqlParser.RESULT_CACHE);
+ this.state = 7306;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 7307;
+ this.match(PlSqlParser.MODE);
+ this.state = 7308;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.DEFAULT || _la===PlSqlParser.FORCE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 7309;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ break;
+ case PlSqlParser.UPGRADE:
+ this.state = 7310;
+ this.upgrade_table_clause();
+ break;
+ case PlSqlParser.MINIMIZE:
+ case PlSqlParser.NOMINIMIZE:
+ case PlSqlParser.RECORDS_PER_BLOCK:
+ this.state = 7311;
+ this.records_per_block_clause();
+ break;
+ case PlSqlParser.NOPARALLEL:
+ case PlSqlParser.PARALLEL:
+ this.state = 7312;
+ this.parallel_clause();
+ break;
+ case PlSqlParser.DISABLE:
+ case PlSqlParser.ENABLE:
+ case PlSqlParser.ROW:
+ this.state = 7313;
+ this.row_movement_clause();
+ break;
+ case PlSqlParser.FLASHBACK:
+ case PlSqlParser.NO:
+ this.state = 7314;
+ this.flashback_archive_clause();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 7317;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,900, this._ctx);
+ } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
+ this.state = 7320;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.ADD || _la===PlSqlParser.COALESCE || _la===PlSqlParser.COMPRESS || _la===PlSqlParser.MAPPING || _la===PlSqlParser.NOCOMPRESS || _la===PlSqlParser.NOMAPPING || _la===PlSqlParser.OVERFLOW || _la===PlSqlParser.PCTTHRESHOLD) {
+ this.state = 7319;
+ this.alter_iot_clauses();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Alter_iot_clausesContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_alter_iot_clauses;
+ return this;
+}
+
+Alter_iot_clausesContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Alter_iot_clausesContext.prototype.constructor = Alter_iot_clausesContext;
+
+Alter_iot_clausesContext.prototype.index_org_table_clause = function() {
+ return this.getTypedRuleContext(Index_org_table_clauseContext,0);
+};
+
+Alter_iot_clausesContext.prototype.alter_overflow_clause = function() {
+ return this.getTypedRuleContext(Alter_overflow_clauseContext,0);
+};
+
+Alter_iot_clausesContext.prototype.alter_mapping_table_clause = function() {
+ return this.getTypedRuleContext(Alter_mapping_table_clauseContext,0);
+};
+
+Alter_iot_clausesContext.prototype.COALESCE = function() {
+ return this.getToken(PlSqlParser.COALESCE, 0);
+};
+
+Alter_iot_clausesContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAlter_iot_clauses(this);
+ }
+};
+
+Alter_iot_clausesContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAlter_iot_clauses(this);
+ }
+};
+
+Alter_iot_clausesContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAlter_iot_clauses(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Alter_iot_clausesContext = Alter_iot_clausesContext;
+
+PlSqlParser.prototype.alter_iot_clauses = function() {
+
+ var localctx = new Alter_iot_clausesContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 756, PlSqlParser.RULE_alter_iot_clauses);
+ try {
+ this.state = 7326;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,902,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7322;
+ this.index_org_table_clause();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 7323;
+ this.alter_overflow_clause();
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 7324;
+ this.alter_mapping_table_clause();
+ break;
+
+ case 4:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 7325;
+ this.match(PlSqlParser.COALESCE);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Alter_mapping_table_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_alter_mapping_table_clause;
+ return this;
+}
+
+Alter_mapping_table_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Alter_mapping_table_clauseContext.prototype.constructor = Alter_mapping_table_clauseContext;
+
+Alter_mapping_table_clauseContext.prototype.MAPPING = function() {
+ return this.getToken(PlSqlParser.MAPPING, 0);
+};
+
+Alter_mapping_table_clauseContext.prototype.TABLE = function() {
+ return this.getToken(PlSqlParser.TABLE, 0);
+};
+
+Alter_mapping_table_clauseContext.prototype.allocate_extent_clause = function() {
+ return this.getTypedRuleContext(Allocate_extent_clauseContext,0);
+};
+
+Alter_mapping_table_clauseContext.prototype.deallocate_unused_clause = function() {
+ return this.getTypedRuleContext(Deallocate_unused_clauseContext,0);
+};
+
+Alter_mapping_table_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAlter_mapping_table_clause(this);
+ }
+};
+
+Alter_mapping_table_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAlter_mapping_table_clause(this);
+ }
+};
+
+Alter_mapping_table_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAlter_mapping_table_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Alter_mapping_table_clauseContext = Alter_mapping_table_clauseContext;
+
+PlSqlParser.prototype.alter_mapping_table_clause = function() {
+
+ var localctx = new Alter_mapping_table_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 758, PlSqlParser.RULE_alter_mapping_table_clause);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7328;
+ this.match(PlSqlParser.MAPPING);
+ this.state = 7329;
+ this.match(PlSqlParser.TABLE);
+ this.state = 7332;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.ALLOCATE:
+ this.state = 7330;
+ this.allocate_extent_clause();
+ break;
+ case PlSqlParser.DEALLOCATE:
+ this.state = 7331;
+ this.deallocate_unused_clause();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Alter_overflow_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_alter_overflow_clause;
+ return this;
+}
+
+Alter_overflow_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Alter_overflow_clauseContext.prototype.constructor = Alter_overflow_clauseContext;
+
+Alter_overflow_clauseContext.prototype.add_overflow_clause = function() {
+ return this.getTypedRuleContext(Add_overflow_clauseContext,0);
+};
+
+Alter_overflow_clauseContext.prototype.OVERFLOW = function() {
+ return this.getToken(PlSqlParser.OVERFLOW, 0);
+};
+
+Alter_overflow_clauseContext.prototype.segment_attributes_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Segment_attributes_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Segment_attributes_clauseContext,i);
+ }
+};
+
+Alter_overflow_clauseContext.prototype.allocate_extent_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Allocate_extent_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Allocate_extent_clauseContext,i);
+ }
+};
+
+Alter_overflow_clauseContext.prototype.shrink_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Shrink_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Shrink_clauseContext,i);
+ }
+};
+
+Alter_overflow_clauseContext.prototype.deallocate_unused_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Deallocate_unused_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Deallocate_unused_clauseContext,i);
+ }
+};
+
+Alter_overflow_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAlter_overflow_clause(this);
+ }
+};
+
+Alter_overflow_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAlter_overflow_clause(this);
+ }
+};
+
+Alter_overflow_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAlter_overflow_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Alter_overflow_clauseContext = Alter_overflow_clauseContext;
+
+PlSqlParser.prototype.alter_overflow_clause = function() {
+
+ var localctx = new Alter_overflow_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 760, PlSqlParser.RULE_alter_overflow_clause);
+ var _la = 0; // Token type
+ try {
+ this.state = 7344;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.ADD:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7334;
+ this.add_overflow_clause();
+ break;
+ case PlSqlParser.OVERFLOW:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 7335;
+ this.match(PlSqlParser.OVERFLOW);
+ this.state = 7340;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 7340;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.FILESYSTEM_LIKE_LOGGING:
+ case PlSqlParser.INITRANS:
+ case PlSqlParser.LOGGING:
+ case PlSqlParser.NOLOGGING:
+ case PlSqlParser.PCTFREE:
+ case PlSqlParser.PCTUSED:
+ case PlSqlParser.STORAGE:
+ case PlSqlParser.TABLESPACE:
+ this.state = 7336;
+ this.segment_attributes_clause();
+ break;
+ case PlSqlParser.ALLOCATE:
+ this.state = 7337;
+ this.allocate_extent_clause();
+ break;
+ case PlSqlParser.SHRINK:
+ this.state = 7338;
+ this.shrink_clause();
+ break;
+ case PlSqlParser.DEALLOCATE:
+ this.state = 7339;
+ this.deallocate_unused_clause();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 7342;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(_la===PlSqlParser.ALLOCATE || _la===PlSqlParser.DEALLOCATE || _la===PlSqlParser.FILESYSTEM_LIKE_LOGGING || _la===PlSqlParser.INITRANS || _la===PlSqlParser.LOGGING || _la===PlSqlParser.NOLOGGING || _la===PlSqlParser.PCTFREE || _la===PlSqlParser.PCTUSED || _la===PlSqlParser.SHRINK || _la===PlSqlParser.STORAGE || _la===PlSqlParser.TABLESPACE);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Add_overflow_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_add_overflow_clause;
+ return this;
+}
+
+Add_overflow_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Add_overflow_clauseContext.prototype.constructor = Add_overflow_clauseContext;
+
+Add_overflow_clauseContext.prototype.ADD = function() {
+ return this.getToken(PlSqlParser.ADD, 0);
+};
+
+Add_overflow_clauseContext.prototype.OVERFLOW = function() {
+ return this.getToken(PlSqlParser.OVERFLOW, 0);
+};
+
+Add_overflow_clauseContext.prototype.segment_attributes_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Segment_attributes_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Segment_attributes_clauseContext,i);
+ }
+};
+
+Add_overflow_clauseContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Add_overflow_clauseContext.prototype.PARTITION = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.PARTITION);
+ } else {
+ return this.getToken(PlSqlParser.PARTITION, i);
+ }
+};
+
+
+Add_overflow_clauseContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Add_overflow_clauseContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Add_overflow_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAdd_overflow_clause(this);
+ }
+};
+
+Add_overflow_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAdd_overflow_clause(this);
+ }
+};
+
+Add_overflow_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAdd_overflow_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Add_overflow_clauseContext = Add_overflow_clauseContext;
+
+PlSqlParser.prototype.add_overflow_clause = function() {
+
+ var localctx = new Add_overflow_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 762, PlSqlParser.RULE_add_overflow_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7346;
+ this.match(PlSqlParser.ADD);
+ this.state = 7347;
+ this.match(PlSqlParser.OVERFLOW);
+ this.state = 7349;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.FILESYSTEM_LIKE_LOGGING || _la===PlSqlParser.INITRANS || _la===PlSqlParser.LOGGING || _la===PlSqlParser.NOLOGGING || _la===PlSqlParser.PCTFREE || _la===PlSqlParser.PCTUSED || _la===PlSqlParser.STORAGE || _la===PlSqlParser.TABLESPACE) {
+ this.state = 7348;
+ this.segment_attributes_clause();
+ }
+
+ this.state = 7367;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.LEFT_PAREN) {
+ this.state = 7351;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 7352;
+ this.match(PlSqlParser.PARTITION);
+ this.state = 7354;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.FILESYSTEM_LIKE_LOGGING || _la===PlSqlParser.INITRANS || _la===PlSqlParser.LOGGING || _la===PlSqlParser.NOLOGGING || _la===PlSqlParser.PCTFREE || _la===PlSqlParser.PCTUSED || _la===PlSqlParser.STORAGE || _la===PlSqlParser.TABLESPACE) {
+ this.state = 7353;
+ this.segment_attributes_clause();
+ }
+
+ this.state = 7363;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 7356;
+ this.match(PlSqlParser.COMMA);
+ this.state = 7357;
+ this.match(PlSqlParser.PARTITION);
+ this.state = 7359;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.FILESYSTEM_LIKE_LOGGING || _la===PlSqlParser.INITRANS || _la===PlSqlParser.LOGGING || _la===PlSqlParser.NOLOGGING || _la===PlSqlParser.PCTFREE || _la===PlSqlParser.PCTUSED || _la===PlSqlParser.STORAGE || _la===PlSqlParser.TABLESPACE) {
+ this.state = 7358;
+ this.segment_attributes_clause();
+ }
+
+ this.state = 7365;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 7366;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Enable_disable_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_enable_disable_clause;
+ return this;
+}
+
+Enable_disable_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Enable_disable_clauseContext.prototype.constructor = Enable_disable_clauseContext;
+
+Enable_disable_clauseContext.prototype.ENABLE = function() {
+ return this.getToken(PlSqlParser.ENABLE, 0);
+};
+
+Enable_disable_clauseContext.prototype.DISABLE = function() {
+ return this.getToken(PlSqlParser.DISABLE, 0);
+};
+
+Enable_disable_clauseContext.prototype.UNIQUE = function() {
+ return this.getToken(PlSqlParser.UNIQUE, 0);
+};
+
+Enable_disable_clauseContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Enable_disable_clauseContext.prototype.column_name = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Column_nameContext);
+ } else {
+ return this.getTypedRuleContext(Column_nameContext,i);
+ }
+};
+
+Enable_disable_clauseContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Enable_disable_clauseContext.prototype.PRIMARY = function() {
+ return this.getToken(PlSqlParser.PRIMARY, 0);
+};
+
+Enable_disable_clauseContext.prototype.KEY = function() {
+ return this.getToken(PlSqlParser.KEY, 0);
+};
+
+Enable_disable_clauseContext.prototype.CONSTRAINT = function() {
+ return this.getToken(PlSqlParser.CONSTRAINT, 0);
+};
+
+Enable_disable_clauseContext.prototype.constraint_name = function() {
+ return this.getTypedRuleContext(Constraint_nameContext,0);
+};
+
+Enable_disable_clauseContext.prototype.using_index_clause = function() {
+ return this.getTypedRuleContext(Using_index_clauseContext,0);
+};
+
+Enable_disable_clauseContext.prototype.exceptions_clause = function() {
+ return this.getTypedRuleContext(Exceptions_clauseContext,0);
+};
+
+Enable_disable_clauseContext.prototype.CASCADE = function() {
+ return this.getToken(PlSqlParser.CASCADE, 0);
+};
+
+Enable_disable_clauseContext.prototype.INDEX = function() {
+ return this.getToken(PlSqlParser.INDEX, 0);
+};
+
+Enable_disable_clauseContext.prototype.VALIDATE = function() {
+ return this.getToken(PlSqlParser.VALIDATE, 0);
+};
+
+Enable_disable_clauseContext.prototype.NOVALIDATE = function() {
+ return this.getToken(PlSqlParser.NOVALIDATE, 0);
+};
+
+Enable_disable_clauseContext.prototype.KEEP = function() {
+ return this.getToken(PlSqlParser.KEEP, 0);
+};
+
+Enable_disable_clauseContext.prototype.DROP = function() {
+ return this.getToken(PlSqlParser.DROP, 0);
+};
+
+Enable_disable_clauseContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Enable_disable_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterEnable_disable_clause(this);
+ }
+};
+
+Enable_disable_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitEnable_disable_clause(this);
+ }
+};
+
+Enable_disable_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitEnable_disable_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Enable_disable_clauseContext = Enable_disable_clauseContext;
+
+PlSqlParser.prototype.enable_disable_clause = function() {
+
+ var localctx = new Enable_disable_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 764, PlSqlParser.RULE_enable_disable_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7369;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.DISABLE || _la===PlSqlParser.ENABLE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 7371;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.NOVALIDATE || _la===PlSqlParser.VALIDATE) {
+ this.state = 7370;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.NOVALIDATE || _la===PlSqlParser.VALIDATE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ }
+
+ this.state = 7389;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.UNIQUE:
+ this.state = 7373;
+ this.match(PlSqlParser.UNIQUE);
+ this.state = 7374;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 7375;
+ this.column_name();
+ this.state = 7380;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 7376;
+ this.match(PlSqlParser.COMMA);
+ this.state = 7377;
+ this.column_name();
+ this.state = 7382;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 7383;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ break;
+ case PlSqlParser.PRIMARY:
+ this.state = 7385;
+ this.match(PlSqlParser.PRIMARY);
+ this.state = 7386;
+ this.match(PlSqlParser.KEY);
+ break;
+ case PlSqlParser.CONSTRAINT:
+ this.state = 7387;
+ this.match(PlSqlParser.CONSTRAINT);
+ this.state = 7388;
+ this.constraint_name();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 7392;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.USING) {
+ this.state = 7391;
+ this.using_index_clause();
+ }
+
+ this.state = 7395;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.EXCEPTIONS) {
+ this.state = 7394;
+ this.exceptions_clause();
+ }
+
+ this.state = 7398;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.CASCADE) {
+ this.state = 7397;
+ this.match(PlSqlParser.CASCADE);
+ }
+
+ this.state = 7402;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.DROP || _la===PlSqlParser.KEEP) {
+ this.state = 7400;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.DROP || _la===PlSqlParser.KEEP)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ this.state = 7401;
+ this.match(PlSqlParser.INDEX);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Using_index_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_using_index_clause;
+ return this;
+}
+
+Using_index_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Using_index_clauseContext.prototype.constructor = Using_index_clauseContext;
+
+Using_index_clauseContext.prototype.USING = function() {
+ return this.getToken(PlSqlParser.USING, 0);
+};
+
+Using_index_clauseContext.prototype.INDEX = function() {
+ return this.getToken(PlSqlParser.INDEX, 0);
+};
+
+Using_index_clauseContext.prototype.index_name = function() {
+ return this.getTypedRuleContext(Index_nameContext,0);
+};
+
+Using_index_clauseContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Using_index_clauseContext.prototype.create_index = function() {
+ return this.getTypedRuleContext(Create_indexContext,0);
+};
+
+Using_index_clauseContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Using_index_clauseContext.prototype.index_attributes = function() {
+ return this.getTypedRuleContext(Index_attributesContext,0);
+};
+
+Using_index_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterUsing_index_clause(this);
+ }
+};
+
+Using_index_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitUsing_index_clause(this);
+ }
+};
+
+Using_index_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitUsing_index_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Using_index_clauseContext = Using_index_clauseContext;
+
+PlSqlParser.prototype.using_index_clause = function() {
+
+ var localctx = new Using_index_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 766, PlSqlParser.RULE_using_index_clause);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7404;
+ this.match(PlSqlParser.USING);
+ this.state = 7405;
+ this.match(PlSqlParser.INDEX);
+ this.state = 7412;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,919,this._ctx);
+ if(la_===1) {
+ this.state = 7406;
+ this.index_name();
+
+ } else if(la_===2) {
+ this.state = 7407;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 7408;
+ this.create_index();
+ this.state = 7409;
+ this.match(PlSqlParser.RIGHT_PAREN);
+
+ } else if(la_===3) {
+ this.state = 7411;
+ this.index_attributes();
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Index_attributesContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_index_attributes;
+ return this;
+}
+
+Index_attributesContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Index_attributesContext.prototype.constructor = Index_attributesContext;
+
+Index_attributesContext.prototype.physical_attributes_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Physical_attributes_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Physical_attributes_clauseContext,i);
+ }
+};
+
+Index_attributesContext.prototype.logging_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Logging_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Logging_clauseContext,i);
+ }
+};
+
+Index_attributesContext.prototype.TABLESPACE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.TABLESPACE);
+ } else {
+ return this.getToken(PlSqlParser.TABLESPACE, i);
+ }
+};
+
+
+Index_attributesContext.prototype.key_compression = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Key_compressionContext);
+ } else {
+ return this.getTypedRuleContext(Key_compressionContext,i);
+ }
+};
+
+Index_attributesContext.prototype.sort_or_nosort = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Sort_or_nosortContext);
+ } else {
+ return this.getTypedRuleContext(Sort_or_nosortContext,i);
+ }
+};
+
+Index_attributesContext.prototype.REVERSE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.REVERSE);
+ } else {
+ return this.getToken(PlSqlParser.REVERSE, i);
+ }
+};
+
+
+Index_attributesContext.prototype.visible_or_invisible = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Visible_or_invisibleContext);
+ } else {
+ return this.getTypedRuleContext(Visible_or_invisibleContext,i);
+ }
+};
+
+Index_attributesContext.prototype.parallel_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Parallel_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Parallel_clauseContext,i);
+ }
+};
+
+Index_attributesContext.prototype.tablespace = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(TablespaceContext);
+ } else {
+ return this.getTypedRuleContext(TablespaceContext,i);
+ }
+};
+
+Index_attributesContext.prototype.DEFAULT = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.DEFAULT);
+ } else {
+ return this.getToken(PlSqlParser.DEFAULT, i);
+ }
+};
+
+
+Index_attributesContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterIndex_attributes(this);
+ }
+};
+
+Index_attributesContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitIndex_attributes(this);
+ }
+};
+
+Index_attributesContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitIndex_attributes(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Index_attributesContext = Index_attributesContext;
+
+PlSqlParser.prototype.index_attributes = function() {
+
+ var localctx = new Index_attributesContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 768, PlSqlParser.RULE_index_attributes);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7426;
+ this._errHandler.sync(this);
+ var _alt = 1;
+ do {
+ switch (_alt) {
+ case 1:
+ this.state = 7426;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.INITRANS:
+ case PlSqlParser.PCTFREE:
+ case PlSqlParser.PCTUSED:
+ case PlSqlParser.STORAGE:
+ this.state = 7414;
+ this.physical_attributes_clause();
+ break;
+ case PlSqlParser.FILESYSTEM_LIKE_LOGGING:
+ case PlSqlParser.LOGGING:
+ case PlSqlParser.NOLOGGING:
+ this.state = 7415;
+ this.logging_clause();
+ break;
+ case PlSqlParser.TABLESPACE:
+ this.state = 7416;
+ this.match(PlSqlParser.TABLESPACE);
+ this.state = 7419;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.ABORT:
+ case PlSqlParser.ABS:
+ case PlSqlParser.ACCESS:
+ case PlSqlParser.ACCESSED:
+ case PlSqlParser.ACCOUNT:
+ case PlSqlParser.ACL:
+ case PlSqlParser.ACOS:
+ case PlSqlParser.ACTION:
+ case PlSqlParser.ACTIONS:
+ case PlSqlParser.ACTIVATE:
+ case PlSqlParser.ACTIVE:
+ case PlSqlParser.ACTIVE_COMPONENT:
+ case PlSqlParser.ACTIVE_DATA:
+ case PlSqlParser.ACTIVE_FUNCTION:
+ case PlSqlParser.ACTIVE_TAG:
+ case PlSqlParser.ACTIVITY:
+ case PlSqlParser.ADAPTIVE_PLAN:
+ case PlSqlParser.ADD:
+ case PlSqlParser.ADD_COLUMN:
+ case PlSqlParser.ADD_GROUP:
+ case PlSqlParser.ADD_MONTHS:
+ case PlSqlParser.ADJ_DATE:
+ case PlSqlParser.ADMIN:
+ case PlSqlParser.ADMINISTER:
+ case PlSqlParser.ADMINISTRATOR:
+ case PlSqlParser.ADVANCED:
+ case PlSqlParser.ADVISE:
+ case PlSqlParser.ADVISOR:
+ case PlSqlParser.AFD_DISKSTRING:
+ case PlSqlParser.AFTER:
+ case PlSqlParser.AGENT:
+ case PlSqlParser.AGGREGATE:
+ case PlSqlParser.A_LETTER:
+ case PlSqlParser.ALIAS:
+ case PlSqlParser.ALLOCATE:
+ case PlSqlParser.ALLOW:
+ case PlSqlParser.ALL_ROWS:
+ case PlSqlParser.ALWAYS:
+ case PlSqlParser.ANALYZE:
+ case PlSqlParser.ANCILLARY:
+ case PlSqlParser.AND_EQUAL:
+ case PlSqlParser.ANOMALY:
+ case PlSqlParser.ANSI_REARCH:
+ case PlSqlParser.ANTIJOIN:
+ case PlSqlParser.ANYSCHEMA:
+ case PlSqlParser.APPEND:
+ case PlSqlParser.APPENDCHILDXML:
+ case PlSqlParser.APPEND_VALUES:
+ case PlSqlParser.APPLICATION:
+ case PlSqlParser.APPLY:
+ case PlSqlParser.APPROX_COUNT_DISTINCT:
+ case PlSqlParser.ARCHIVAL:
+ case PlSqlParser.ARCHIVE:
+ case PlSqlParser.ARCHIVED:
+ case PlSqlParser.ARCHIVELOG:
+ case PlSqlParser.ARRAY:
+ case PlSqlParser.ASCII:
+ case PlSqlParser.ASCIISTR:
+ case PlSqlParser.ASIN:
+ case PlSqlParser.ASIS:
+ case PlSqlParser.ASSEMBLY:
+ case PlSqlParser.ASSIGN:
+ case PlSqlParser.ASSOCIATE:
+ case PlSqlParser.ASYNC:
+ case PlSqlParser.ASYNCHRONOUS:
+ case PlSqlParser.ATAN2:
+ case PlSqlParser.ATAN:
+ case PlSqlParser.AT:
+ case PlSqlParser.ATTRIBUTE:
+ case PlSqlParser.ATTRIBUTES:
+ case PlSqlParser.AUTHENTICATED:
+ case PlSqlParser.AUTHENTICATION:
+ case PlSqlParser.AUTHID:
+ case PlSqlParser.AUTHORIZATION:
+ case PlSqlParser.AUTOALLOCATE:
+ case PlSqlParser.AUTO:
+ case PlSqlParser.AUTOEXTEND:
+ case PlSqlParser.AUTO_LOGIN:
+ case PlSqlParser.AUTOMATIC:
+ case PlSqlParser.AUTONOMOUS_TRANSACTION:
+ case PlSqlParser.AUTO_REOPTIMIZE:
+ case PlSqlParser.AVAILABILITY:
+ case PlSqlParser.AVRO:
+ case PlSqlParser.BACKGROUND:
+ case PlSqlParser.BACKUP:
+ case PlSqlParser.BASIC:
+ case PlSqlParser.BASICFILE:
+ case PlSqlParser.BATCH:
+ case PlSqlParser.BATCHSIZE:
+ case PlSqlParser.BATCH_TABLE_ACCESS_BY_ROWID:
+ case PlSqlParser.BECOME:
+ case PlSqlParser.BEFORE:
+ case PlSqlParser.BEGIN:
+ case PlSqlParser.BEGINNING:
+ case PlSqlParser.BEGIN_OUTLINE_DATA:
+ case PlSqlParser.BEHALF:
+ case PlSqlParser.BEQUEATH:
+ case PlSqlParser.BFILE:
+ case PlSqlParser.BFILENAME:
+ case PlSqlParser.BIGFILE:
+ case PlSqlParser.BINARY:
+ case PlSqlParser.BINARY_DOUBLE:
+ case PlSqlParser.BINARY_DOUBLE_INFINITY:
+ case PlSqlParser.BINARY_DOUBLE_NAN:
+ case PlSqlParser.BINARY_FLOAT:
+ case PlSqlParser.BINARY_FLOAT_INFINITY:
+ case PlSqlParser.BINARY_FLOAT_NAN:
+ case PlSqlParser.BINARY_INTEGER:
+ case PlSqlParser.BIND_AWARE:
+ case PlSqlParser.BINDING:
+ case PlSqlParser.BIN_TO_NUM:
+ case PlSqlParser.BITAND:
+ case PlSqlParser.BITMAP_AND:
+ case PlSqlParser.BITMAP:
+ case PlSqlParser.BITMAPS:
+ case PlSqlParser.BITMAP_TREE:
+ case PlSqlParser.BITS:
+ case PlSqlParser.BLOB:
+ case PlSqlParser.BLOCK:
+ case PlSqlParser.BLOCK_RANGE:
+ case PlSqlParser.BLOCKS:
+ case PlSqlParser.BLOCKSIZE:
+ case PlSqlParser.BODY:
+ case PlSqlParser.BOOLEAN:
+ case PlSqlParser.BOTH:
+ case PlSqlParser.BOUND:
+ case PlSqlParser.BRANCH:
+ case PlSqlParser.BREADTH:
+ case PlSqlParser.BROADCAST:
+ case PlSqlParser.BSON:
+ case PlSqlParser.BUFFER:
+ case PlSqlParser.BUFFER_CACHE:
+ case PlSqlParser.BUFFER_POOL:
+ case PlSqlParser.BUILD:
+ case PlSqlParser.BULK:
+ case PlSqlParser.BYPASS_RECURSIVE_CHECK:
+ case PlSqlParser.BYPASS_UJVC:
+ case PlSqlParser.BYTE:
+ case PlSqlParser.CACHE:
+ case PlSqlParser.CACHE_CB:
+ case PlSqlParser.CACHE_INSTANCES:
+ case PlSqlParser.CACHE_TEMP_TABLE:
+ case PlSqlParser.CACHING:
+ case PlSqlParser.CALCULATED:
+ case PlSqlParser.CALLBACK:
+ case PlSqlParser.CALL:
+ case PlSqlParser.CANCEL:
+ case PlSqlParser.CAPACITY:
+ case PlSqlParser.CARDINALITY:
+ case PlSqlParser.CASCADE:
+ case PlSqlParser.CASE:
+ case PlSqlParser.CAST:
+ case PlSqlParser.CATEGORY:
+ case PlSqlParser.CDBDEFAULT:
+ case PlSqlParser.CEIL:
+ case PlSqlParser.CELL_FLASH_CACHE:
+ case PlSqlParser.CERTIFICATE:
+ case PlSqlParser.CFILE:
+ case PlSqlParser.CHAINED:
+ case PlSqlParser.CHANGE:
+ case PlSqlParser.CHANGE_DUPKEY_ERROR_INDEX:
+ case PlSqlParser.CHARACTER:
+ case PlSqlParser.CHAR:
+ case PlSqlParser.CHAR_CS:
+ case PlSqlParser.CHARTOROWID:
+ case PlSqlParser.CHECK_ACL_REWRITE:
+ case PlSqlParser.CHECKPOINT:
+ case PlSqlParser.CHILD:
+ case PlSqlParser.CHOOSE:
+ case PlSqlParser.CHR:
+ case PlSqlParser.CHUNK:
+ case PlSqlParser.CLASS:
+ case PlSqlParser.CLASSIFIER:
+ case PlSqlParser.CLEANUP:
+ case PlSqlParser.CLEAR:
+ case PlSqlParser.C_LETTER:
+ case PlSqlParser.CLIENT:
+ case PlSqlParser.CLOB:
+ case PlSqlParser.CLONE:
+ case PlSqlParser.CLOSE_CACHED_OPEN_CURSORS:
+ case PlSqlParser.CLOSE:
+ case PlSqlParser.CLUSTER_BY_ROWID:
+ case PlSqlParser.CLUSTER:
+ case PlSqlParser.CLUSTER_DETAILS:
+ case PlSqlParser.CLUSTER_DISTANCE:
+ case PlSqlParser.CLUSTER_ID:
+ case PlSqlParser.CLUSTERING:
+ case PlSqlParser.CLUSTERING_FACTOR:
+ case PlSqlParser.CLUSTER_PROBABILITY:
+ case PlSqlParser.CLUSTER_SET:
+ case PlSqlParser.COALESCE:
+ case PlSqlParser.COALESCE_SQ:
+ case PlSqlParser.COARSE:
+ case PlSqlParser.CO_AUTH_IND:
+ case PlSqlParser.COLD:
+ case PlSqlParser.COLLECT:
+ case PlSqlParser.COLUMNAR:
+ case PlSqlParser.COLUMN_AUTH_INDICATOR:
+ case PlSqlParser.COLUMN:
+ case PlSqlParser.COLUMNS:
+ case PlSqlParser.COLUMN_STATS:
+ case PlSqlParser.COLUMN_VALUE:
+ case PlSqlParser.COMMENT:
+ case PlSqlParser.COMMIT:
+ case PlSqlParser.COMMITTED:
+ case PlSqlParser.COMMON_DATA:
+ case PlSqlParser.COMPACT:
+ case PlSqlParser.COMPATIBILITY:
+ case PlSqlParser.COMPILE:
+ case PlSqlParser.COMPLETE:
+ case PlSqlParser.COMPLIANCE:
+ case PlSqlParser.COMPONENT:
+ case PlSqlParser.COMPONENTS:
+ case PlSqlParser.COMPOSE:
+ case PlSqlParser.COMPOSITE:
+ case PlSqlParser.COMPOSITE_LIMIT:
+ case PlSqlParser.COMPOUND:
+ case PlSqlParser.COMPUTE:
+ case PlSqlParser.CONCAT:
+ case PlSqlParser.CON_DBID_TO_ID:
+ case PlSqlParser.CONDITIONAL:
+ case PlSqlParser.CONDITION:
+ case PlSqlParser.CONFIRM:
+ case PlSqlParser.CONFORMING:
+ case PlSqlParser.CON_GUID_TO_ID:
+ case PlSqlParser.CON_ID:
+ case PlSqlParser.CON_NAME_TO_ID:
+ case PlSqlParser.CONNECT_BY_CB_WHR_ONLY:
+ case PlSqlParser.CONNECT_BY_COMBINE_SW:
+ case PlSqlParser.CONNECT_BY_COST_BASED:
+ case PlSqlParser.CONNECT_BY_ELIM_DUPS:
+ case PlSqlParser.CONNECT_BY_FILTERING:
+ case PlSqlParser.CONNECT_BY_ISCYCLE:
+ case PlSqlParser.CONNECT_BY_ISLEAF:
+ case PlSqlParser.CONNECT_BY_ROOT:
+ case PlSqlParser.CONNECT_TIME:
+ case PlSqlParser.CONSIDER:
+ case PlSqlParser.CONSISTENT:
+ case PlSqlParser.CONSTANT:
+ case PlSqlParser.CONST:
+ case PlSqlParser.CONSTRAINT:
+ case PlSqlParser.CONSTRAINTS:
+ case PlSqlParser.CONSTRUCTOR:
+ case PlSqlParser.CONTAINER:
+ case PlSqlParser.CONTAINER_DATA:
+ case PlSqlParser.CONTAINERS:
+ case PlSqlParser.CONTENT:
+ case PlSqlParser.CONTENTS:
+ case PlSqlParser.CONTEXT:
+ case PlSqlParser.CONTINUE:
+ case PlSqlParser.CONTROLFILE:
+ case PlSqlParser.CON_UID_TO_ID:
+ case PlSqlParser.CONVERT:
+ case PlSqlParser.COOKIE:
+ case PlSqlParser.COPY:
+ case PlSqlParser.CORR_K:
+ case PlSqlParser.CORR_S:
+ case PlSqlParser.CORRUPTION:
+ case PlSqlParser.CORRUPT_XID_ALL:
+ case PlSqlParser.CORRUPT_XID:
+ case PlSqlParser.COS:
+ case PlSqlParser.COSH:
+ case PlSqlParser.COST:
+ case PlSqlParser.COST_XML_QUERY_REWRITE:
+ case PlSqlParser.COUNT:
+ case PlSqlParser.COVAR_POP:
+ case PlSqlParser.COVAR_SAMP:
+ case PlSqlParser.CPU_COSTING:
+ case PlSqlParser.CPU_PER_CALL:
+ case PlSqlParser.CPU_PER_SESSION:
+ case PlSqlParser.CRASH:
+ case PlSqlParser.CREATE_FILE_DEST:
+ case PlSqlParser.CREATE_STORED_OUTLINES:
+ case PlSqlParser.CREATION:
+ case PlSqlParser.CREDENTIAL:
+ case PlSqlParser.CRITICAL:
+ case PlSqlParser.CROSS:
+ case PlSqlParser.CROSSEDITION:
+ case PlSqlParser.CSCONVERT:
+ case PlSqlParser.CUBE_AJ:
+ case PlSqlParser.CUBE:
+ case PlSqlParser.CUBE_GB:
+ case PlSqlParser.CUBE_SJ:
+ case PlSqlParser.CUME_DISTM:
+ case PlSqlParser.CURRENT:
+ case PlSqlParser.CURRENT_DATE:
+ case PlSqlParser.CURRENT_SCHEMA:
+ case PlSqlParser.CURRENT_TIME:
+ case PlSqlParser.CURRENT_TIMESTAMP:
+ case PlSqlParser.CURRENT_USER:
+ case PlSqlParser.CURRENTV:
+ case PlSqlParser.CURSOR:
+ case PlSqlParser.CURSOR_SHARING_EXACT:
+ case PlSqlParser.CURSOR_SPECIFIC_SEGMENT:
+ case PlSqlParser.CUSTOMDATUM:
+ case PlSqlParser.CV:
+ case PlSqlParser.CYCLE:
+ case PlSqlParser.DANGLING:
+ case PlSqlParser.DATABASE:
+ case PlSqlParser.DATA:
+ case PlSqlParser.DATAFILE:
+ case PlSqlParser.DATAFILES:
+ case PlSqlParser.DATAMOVEMENT:
+ case PlSqlParser.DATAOBJNO:
+ case PlSqlParser.DATAOBJ_TO_MAT_PARTITION:
+ case PlSqlParser.DATAOBJ_TO_PARTITION:
+ case PlSqlParser.DATAPUMP:
+ case PlSqlParser.DATA_SECURITY_REWRITE_LIMIT:
+ case PlSqlParser.DATE_MODE:
+ case PlSqlParser.DAY:
+ case PlSqlParser.DAYS:
+ case PlSqlParser.DBA:
+ case PlSqlParser.DBA_RECYCLEBIN:
+ case PlSqlParser.DBMS_STATS:
+ case PlSqlParser.DB_ROLE_CHANGE:
+ case PlSqlParser.DBTIMEZONE:
+ case PlSqlParser.DB_UNIQUE_NAME:
+ case PlSqlParser.DB_VERSION:
+ case PlSqlParser.DDL:
+ case PlSqlParser.DEALLOCATE:
+ case PlSqlParser.DEBUG:
+ case PlSqlParser.DEBUGGER:
+ case PlSqlParser.DEC:
+ case PlSqlParser.DECIMAL:
+ case PlSqlParser.DECLARE:
+ case PlSqlParser.DECOMPOSE:
+ case PlSqlParser.DECORRELATE:
+ case PlSqlParser.DECR:
+ case PlSqlParser.DECREMENT:
+ case PlSqlParser.DECRYPT:
+ case PlSqlParser.DEDUPLICATE:
+ case PlSqlParser.DEFAULTS:
+ case PlSqlParser.DEFERRABLE:
+ case PlSqlParser.DEFERRED:
+ case PlSqlParser.DEFINED:
+ case PlSqlParser.DEFINE:
+ case PlSqlParser.DEFINER:
+ case PlSqlParser.DEGREE:
+ case PlSqlParser.DELAY:
+ case PlSqlParser.DELEGATE:
+ case PlSqlParser.DELETE_ALL:
+ case PlSqlParser.DELETE:
+ case PlSqlParser.DELETEXML:
+ case PlSqlParser.DEMAND:
+ case PlSqlParser.DENSE_RANKM:
+ case PlSqlParser.DEPENDENT:
+ case PlSqlParser.DEPTH:
+ case PlSqlParser.DEQUEUE:
+ case PlSqlParser.DEREF:
+ case PlSqlParser.DEREF_NO_REWRITE:
+ case PlSqlParser.DESTROY:
+ case PlSqlParser.DETACHED:
+ case PlSqlParser.DETERMINES:
+ case PlSqlParser.DETERMINISTIC:
+ case PlSqlParser.DICTIONARY:
+ case PlSqlParser.DIMENSION:
+ case PlSqlParser.DIMENSIONS:
+ case PlSqlParser.DIRECT_LOAD:
+ case PlSqlParser.DIRECTORY:
+ case PlSqlParser.DIRECT_PATH:
+ case PlSqlParser.DISABLE_ALL:
+ case PlSqlParser.DISABLE:
+ case PlSqlParser.DISABLE_PARALLEL_DML:
+ case PlSqlParser.DISABLE_PRESET:
+ case PlSqlParser.DISABLE_RPKE:
+ case PlSqlParser.DISALLOW:
+ case PlSqlParser.DISASSOCIATE:
+ case PlSqlParser.DISCARD:
+ case PlSqlParser.DISCONNECT:
+ case PlSqlParser.DISK:
+ case PlSqlParser.DISKGROUP:
+ case PlSqlParser.DISKS:
+ case PlSqlParser.DISMOUNT:
+ case PlSqlParser.DISTINGUISHED:
+ case PlSqlParser.DISTRIBUTED:
+ case PlSqlParser.DISTRIBUTE:
+ case PlSqlParser.DML:
+ case PlSqlParser.DML_UPDATE:
+ case PlSqlParser.DOCFIDELITY:
+ case PlSqlParser.DOCUMENT:
+ case PlSqlParser.DOMAIN_INDEX_FILTER:
+ case PlSqlParser.DOMAIN_INDEX_NO_SORT:
+ case PlSqlParser.DOMAIN_INDEX_SORT:
+ case PlSqlParser.DOUBLE:
+ case PlSqlParser.DOWNGRADE:
+ case PlSqlParser.DRIVING_SITE:
+ case PlSqlParser.DROP_COLUMN:
+ case PlSqlParser.DROP_GROUP:
+ case PlSqlParser.DSINTERVAL_UNCONSTRAINED:
+ case PlSqlParser.DST_UPGRADE_INSERT_CONV:
+ case PlSqlParser.DUMP:
+ case PlSqlParser.DUPLICATE:
+ case PlSqlParser.DV:
+ case PlSqlParser.DYNAMIC:
+ case PlSqlParser.DYNAMIC_SAMPLING:
+ case PlSqlParser.DYNAMIC_SAMPLING_EST_CDN:
+ case PlSqlParser.EACH:
+ case PlSqlParser.EDITIONABLE:
+ case PlSqlParser.EDITION:
+ case PlSqlParser.EDITIONING:
+ case PlSqlParser.EDITIONS:
+ case PlSqlParser.ELEMENT:
+ case PlSqlParser.ELIM_GROUPBY:
+ case PlSqlParser.ELIMINATE_JOIN:
+ case PlSqlParser.ELIMINATE_OBY:
+ case PlSqlParser.ELIMINATE_OUTER_JOIN:
+ case PlSqlParser.EM:
+ case PlSqlParser.EMPTY_BLOB:
+ case PlSqlParser.EMPTY_CLOB:
+ case PlSqlParser.EMPTY:
+ case PlSqlParser.ENABLE_ALL:
+ case PlSqlParser.ENABLE:
+ case PlSqlParser.ENABLE_PARALLEL_DML:
+ case PlSqlParser.ENABLE_PRESET:
+ case PlSqlParser.ENCODING:
+ case PlSqlParser.ENCRYPT:
+ case PlSqlParser.ENCRYPTION:
+ case PlSqlParser.END_OUTLINE_DATA:
+ case PlSqlParser.ENFORCED:
+ case PlSqlParser.ENFORCE:
+ case PlSqlParser.ENQUEUE:
+ case PlSqlParser.ENTERPRISE:
+ case PlSqlParser.ENTITYESCAPING:
+ case PlSqlParser.ENTRY:
+ case PlSqlParser.EQUIPART:
+ case PlSqlParser.ERR:
+ case PlSqlParser.ERROR_ARGUMENT:
+ case PlSqlParser.ERROR:
+ case PlSqlParser.ERROR_ON_OVERLAP_TIME:
+ case PlSqlParser.ERRORS:
+ case PlSqlParser.ESCAPE:
+ case PlSqlParser.ESTIMATE:
+ case PlSqlParser.EVAL:
+ case PlSqlParser.EVALNAME:
+ case PlSqlParser.EVALUATE:
+ case PlSqlParser.EVALUATION:
+ case PlSqlParser.EVENTS:
+ case PlSqlParser.EVERY:
+ case PlSqlParser.EXCEPT:
+ case PlSqlParser.EXCEPTION:
+ case PlSqlParser.EXCEPTION_INIT:
+ case PlSqlParser.EXCEPTIONS:
+ case PlSqlParser.EXCHANGE:
+ case PlSqlParser.EXCLUDE:
+ case PlSqlParser.EXCLUDING:
+ case PlSqlParser.EXECUTE:
+ case PlSqlParser.EXEMPT:
+ case PlSqlParser.EXISTING:
+ case PlSqlParser.EXISTS:
+ case PlSqlParser.EXISTSNODE:
+ case PlSqlParser.EXIT:
+ case PlSqlParser.EXPAND_GSET_TO_UNION:
+ case PlSqlParser.EXPAND_TABLE:
+ case PlSqlParser.EXP:
+ case PlSqlParser.EXPIRE:
+ case PlSqlParser.EXPLAIN:
+ case PlSqlParser.EXPLOSION:
+ case PlSqlParser.EXPORT:
+ case PlSqlParser.EXPR_CORR_CHECK:
+ case PlSqlParser.EXPRESS:
+ case PlSqlParser.EXTENDS:
+ case PlSqlParser.EXTENT:
+ case PlSqlParser.EXTENTS:
+ case PlSqlParser.EXTERNAL:
+ case PlSqlParser.EXTERNALLY:
+ case PlSqlParser.EXTRACTCLOBXML:
+ case PlSqlParser.EXTRACT:
+ case PlSqlParser.EXTRACTVALUE:
+ case PlSqlParser.EXTRA:
+ case PlSqlParser.FACILITY:
+ case PlSqlParser.FACT:
+ case PlSqlParser.FACTOR:
+ case PlSqlParser.FACTORIZE_JOIN:
+ case PlSqlParser.FAILED:
+ case PlSqlParser.FAILED_LOGIN_ATTEMPTS:
+ case PlSqlParser.FAILGROUP:
+ case PlSqlParser.FAILOVER:
+ case PlSqlParser.FAILURE:
+ case PlSqlParser.FALSE:
+ case PlSqlParser.FAMILY:
+ case PlSqlParser.FAR:
+ case PlSqlParser.FAST:
+ case PlSqlParser.FASTSTART:
+ case PlSqlParser.FBTSCAN:
+ case PlSqlParser.FEATURE_DETAILS:
+ case PlSqlParser.FEATURE_ID:
+ case PlSqlParser.FEATURE_SET:
+ case PlSqlParser.FEATURE_VALUE:
+ case PlSqlParser.FETCH:
+ case PlSqlParser.FILE:
+ case PlSqlParser.FILE_NAME_CONVERT:
+ case PlSqlParser.FILESYSTEM_LIKE_LOGGING:
+ case PlSqlParser.FILTER:
+ case PlSqlParser.FINAL:
+ case PlSqlParser.FINE:
+ case PlSqlParser.FINISH:
+ case PlSqlParser.FIRST:
+ case PlSqlParser.FIRSTM:
+ case PlSqlParser.FIRST_ROWS:
+ case PlSqlParser.FIRST_VALUE:
+ case PlSqlParser.FIXED_VIEW_DATA:
+ case PlSqlParser.FLAGGER:
+ case PlSqlParser.FLASHBACK:
+ case PlSqlParser.FLASH_CACHE:
+ case PlSqlParser.FLOAT:
+ case PlSqlParser.FLOB:
+ case PlSqlParser.FLOOR:
+ case PlSqlParser.FLUSH:
+ case PlSqlParser.FOLDER:
+ case PlSqlParser.FOLLOWING:
+ case PlSqlParser.FOLLOWS:
+ case PlSqlParser.FORALL:
+ case PlSqlParser.FORCE:
+ case PlSqlParser.FORCE_XML_QUERY_REWRITE:
+ case PlSqlParser.FOREIGN:
+ case PlSqlParser.FOREVER:
+ case PlSqlParser.FORMAT:
+ case PlSqlParser.FORWARD:
+ case PlSqlParser.FRAGMENT_NUMBER:
+ case PlSqlParser.FREELIST:
+ case PlSqlParser.FREELISTS:
+ case PlSqlParser.FREEPOOLS:
+ case PlSqlParser.FRESH:
+ case PlSqlParser.FROM_TZ:
+ case PlSqlParser.FULL:
+ case PlSqlParser.FULL_OUTER_JOIN_TO_OUTER:
+ case PlSqlParser.FUNCTION:
+ case PlSqlParser.FUNCTIONS:
+ case PlSqlParser.GATHER_OPTIMIZER_STATISTICS:
+ case PlSqlParser.GATHER_PLAN_STATISTICS:
+ case PlSqlParser.GBY_CONC_ROLLUP:
+ case PlSqlParser.GBY_PUSHDOWN:
+ case PlSqlParser.GENERATED:
+ case PlSqlParser.GET:
+ case PlSqlParser.GLOBAL:
+ case PlSqlParser.GLOBALLY:
+ case PlSqlParser.GLOBAL_NAME:
+ case PlSqlParser.GLOBAL_TOPIC_ENABLED:
+ case PlSqlParser.GROUP_BY:
+ case PlSqlParser.GROUP_ID:
+ case PlSqlParser.GROUPING:
+ case PlSqlParser.GROUPING_ID:
+ case PlSqlParser.GROUPS:
+ case PlSqlParser.GUARANTEED:
+ case PlSqlParser.GUARANTEE:
+ case PlSqlParser.GUARD:
+ case PlSqlParser.HASH_AJ:
+ case PlSqlParser.HASH:
+ case PlSqlParser.HASHKEYS:
+ case PlSqlParser.HASH_SJ:
+ case PlSqlParser.HEADER:
+ case PlSqlParser.HEAP:
+ case PlSqlParser.HELP:
+ case PlSqlParser.HEXTORAW:
+ case PlSqlParser.HEXTOREF:
+ case PlSqlParser.HIDDEN_KEYWORD:
+ case PlSqlParser.HIDE:
+ case PlSqlParser.HIERARCHY:
+ case PlSqlParser.HIGH:
+ case PlSqlParser.HINTSET_BEGIN:
+ case PlSqlParser.HINTSET_END:
+ case PlSqlParser.HOT:
+ case PlSqlParser.HOUR:
+ case PlSqlParser.HWM_BROKERED:
+ case PlSqlParser.HYBRID:
+ case PlSqlParser.IDENTIFIER:
+ case PlSqlParser.IDENTITY:
+ case PlSqlParser.IDGENERATORS:
+ case PlSqlParser.ID:
+ case PlSqlParser.IDLE_TIME:
+ case PlSqlParser.IF:
+ case PlSqlParser.IGNORE:
+ case PlSqlParser.IGNORE_OPTIM_EMBEDDED_HINTS:
+ case PlSqlParser.IGNORE_ROW_ON_DUPKEY_INDEX:
+ case PlSqlParser.IGNORE_WHERE_CLAUSE:
+ case PlSqlParser.ILM:
+ case PlSqlParser.IMMEDIATE:
+ case PlSqlParser.IMPACT:
+ case PlSqlParser.IMPORT:
+ case PlSqlParser.INACTIVE:
+ case PlSqlParser.INCLUDE:
+ case PlSqlParser.INCLUDE_VERSION:
+ case PlSqlParser.INCLUDING:
+ case PlSqlParser.INCREMENTAL:
+ case PlSqlParser.INCREMENT:
+ case PlSqlParser.INCR:
+ case PlSqlParser.INDENT:
+ case PlSqlParser.INDEX_ASC:
+ case PlSqlParser.INDEX_COMBINE:
+ case PlSqlParser.INDEX_DESC:
+ case PlSqlParser.INDEXED:
+ case PlSqlParser.INDEXES:
+ case PlSqlParser.INDEX_FFS:
+ case PlSqlParser.INDEX_FILTER:
+ case PlSqlParser.INDEXING:
+ case PlSqlParser.INDEX_JOIN:
+ case PlSqlParser.INDEX_ROWS:
+ case PlSqlParser.INDEX_RRS:
+ case PlSqlParser.INDEX_RS_ASC:
+ case PlSqlParser.INDEX_RS_DESC:
+ case PlSqlParser.INDEX_RS:
+ case PlSqlParser.INDEX_SCAN:
+ case PlSqlParser.INDEX_SKIP_SCAN:
+ case PlSqlParser.INDEX_SS_ASC:
+ case PlSqlParser.INDEX_SS_DESC:
+ case PlSqlParser.INDEX_SS:
+ case PlSqlParser.INDEX_STATS:
+ case PlSqlParser.INDEXTYPE:
+ case PlSqlParser.INDEXTYPES:
+ case PlSqlParser.INDICATOR:
+ case PlSqlParser.INDICES:
+ case PlSqlParser.INFINITE:
+ case PlSqlParser.INFORMATIONAL:
+ case PlSqlParser.INHERIT:
+ case PlSqlParser.INITCAP:
+ case PlSqlParser.INITIAL:
+ case PlSqlParser.INITIALIZED:
+ case PlSqlParser.INITIALLY:
+ case PlSqlParser.INITRANS:
+ case PlSqlParser.INLINE:
+ case PlSqlParser.INLINE_XMLTYPE_NT:
+ case PlSqlParser.INMEMORY:
+ case PlSqlParser.IN_MEMORY_METADATA:
+ case PlSqlParser.INMEMORY_PRUNING:
+ case PlSqlParser.INNER:
+ case PlSqlParser.INOUT:
+ case PlSqlParser.INPLACE:
+ case PlSqlParser.INSERTCHILDXMLAFTER:
+ case PlSqlParser.INSERTCHILDXMLBEFORE:
+ case PlSqlParser.INSERTCHILDXML:
+ case PlSqlParser.INSERTXMLAFTER:
+ case PlSqlParser.INSERTXMLBEFORE:
+ case PlSqlParser.INSTANCE:
+ case PlSqlParser.INSTANCES:
+ case PlSqlParser.INSTANTIABLE:
+ case PlSqlParser.INSTANTLY:
+ case PlSqlParser.INSTEAD:
+ case PlSqlParser.INSTR2:
+ case PlSqlParser.INSTR4:
+ case PlSqlParser.INSTRB:
+ case PlSqlParser.INSTRC:
+ case PlSqlParser.INSTR:
+ case PlSqlParser.INTEGER:
+ case PlSqlParser.INTERLEAVED:
+ case PlSqlParser.INTERMEDIATE:
+ case PlSqlParser.INTERNAL_CONVERT:
+ case PlSqlParser.INTERNAL_USE:
+ case PlSqlParser.INTERPRETED:
+ case PlSqlParser.INTERVAL:
+ case PlSqlParser.INT:
+ case PlSqlParser.INVALIDATE:
+ case PlSqlParser.INVISIBLE:
+ case PlSqlParser.IN_XQUERY:
+ case PlSqlParser.ISOLATION:
+ case PlSqlParser.ISOLATION_LEVEL:
+ case PlSqlParser.ITERATE:
+ case PlSqlParser.ITERATION_NUMBER:
+ case PlSqlParser.JAVA:
+ case PlSqlParser.JOB:
+ case PlSqlParser.JOIN:
+ case PlSqlParser.JSON_ARRAYAGG:
+ case PlSqlParser.JSON_ARRAY:
+ case PlSqlParser.JSON_EQUAL:
+ case PlSqlParser.JSON_EXISTS2:
+ case PlSqlParser.JSON_EXISTS:
+ case PlSqlParser.JSONGET:
+ case PlSqlParser.JSON:
+ case PlSqlParser.JSON_OBJECTAGG:
+ case PlSqlParser.JSON_OBJECT:
+ case PlSqlParser.JSONPARSE:
+ case PlSqlParser.JSON_QUERY:
+ case PlSqlParser.JSON_SERIALIZE:
+ case PlSqlParser.JSON_TABLE:
+ case PlSqlParser.JSON_TEXTCONTAINS2:
+ case PlSqlParser.JSON_TEXTCONTAINS:
+ case PlSqlParser.JSON_VALUE:
+ case PlSqlParser.KEEP_DUPLICATES:
+ case PlSqlParser.KEEP:
+ case PlSqlParser.KERBEROS:
+ case PlSqlParser.KEY:
+ case PlSqlParser.KEY_LENGTH:
+ case PlSqlParser.KEYSIZE:
+ case PlSqlParser.KEYS:
+ case PlSqlParser.KEYSTORE:
+ case PlSqlParser.KILL:
+ case PlSqlParser.LABEL:
+ case PlSqlParser.LANGUAGE:
+ case PlSqlParser.LAST_DAY:
+ case PlSqlParser.LAST:
+ case PlSqlParser.LAST_VALUE:
+ case PlSqlParser.LATERAL:
+ case PlSqlParser.LAX:
+ case PlSqlParser.LAYER:
+ case PlSqlParser.LDAP_REGISTRATION_ENABLED:
+ case PlSqlParser.LDAP_REGISTRATION:
+ case PlSqlParser.LDAP_REG_SYNC_INTERVAL:
+ case PlSqlParser.LEADING:
+ case PlSqlParser.LEFT:
+ case PlSqlParser.LENGTH2:
+ case PlSqlParser.LENGTH4:
+ case PlSqlParser.LENGTHB:
+ case PlSqlParser.LENGTHC:
+ case PlSqlParser.LENGTH:
+ case PlSqlParser.LESS:
+ case PlSqlParser.LEVEL:
+ case PlSqlParser.LEVELS:
+ case PlSqlParser.LIBRARY:
+ case PlSqlParser.LIFECYCLE:
+ case PlSqlParser.LIFE:
+ case PlSqlParser.LIFETIME:
+ case PlSqlParser.LIKE2:
+ case PlSqlParser.LIKE4:
+ case PlSqlParser.LIKEC:
+ case PlSqlParser.LIKE_EXPAND:
+ case PlSqlParser.LIMIT:
+ case PlSqlParser.LINEAR:
+ case PlSqlParser.LINK:
+ case PlSqlParser.LIST:
+ case PlSqlParser.LN:
+ case PlSqlParser.LNNVL:
+ case PlSqlParser.LOAD:
+ case PlSqlParser.LOB:
+ case PlSqlParser.LOBNVL:
+ case PlSqlParser.LOBS:
+ case PlSqlParser.LOCAL_INDEXES:
+ case PlSqlParser.LOCAL:
+ case PlSqlParser.LOCALTIME:
+ case PlSqlParser.LOCALTIMESTAMP:
+ case PlSqlParser.LOCATION:
+ case PlSqlParser.LOCATOR:
+ case PlSqlParser.LOCKED:
+ case PlSqlParser.LOCKING:
+ case PlSqlParser.LOGFILE:
+ case PlSqlParser.LOGFILES:
+ case PlSqlParser.LOGGING:
+ case PlSqlParser.LOGICAL:
+ case PlSqlParser.LOGICAL_READS_PER_CALL:
+ case PlSqlParser.LOGICAL_READS_PER_SESSION:
+ case PlSqlParser.LOG:
+ case PlSqlParser.LOGMINING:
+ case PlSqlParser.LOGOFF:
+ case PlSqlParser.LOGON:
+ case PlSqlParser.LOG_READ_ONLY_VIOLATIONS:
+ case PlSqlParser.LONG:
+ case PlSqlParser.LOOP:
+ case PlSqlParser.LOWER:
+ case PlSqlParser.LOW:
+ case PlSqlParser.LPAD:
+ case PlSqlParser.LTRIM:
+ case PlSqlParser.MAIN:
+ case PlSqlParser.MAKE_REF:
+ case PlSqlParser.MANAGED:
+ case PlSqlParser.MANAGE:
+ case PlSqlParser.MANAGEMENT:
+ case PlSqlParser.MANAGER:
+ case PlSqlParser.MANUAL:
+ case PlSqlParser.MAP:
+ case PlSqlParser.MAPPING:
+ case PlSqlParser.MASTER:
+ case PlSqlParser.MATCHED:
+ case PlSqlParser.MATCHES:
+ case PlSqlParser.MATCH:
+ case PlSqlParser.MATCH_NUMBER:
+ case PlSqlParser.MATCH_RECOGNIZE:
+ case PlSqlParser.MATERIALIZED:
+ case PlSqlParser.MATERIALIZE:
+ case PlSqlParser.MAXARCHLOGS:
+ case PlSqlParser.MAXDATAFILES:
+ case PlSqlParser.MAXEXTENTS:
+ case PlSqlParser.MAXIMIZE:
+ case PlSqlParser.MAXINSTANCES:
+ case PlSqlParser.MAXLOGFILES:
+ case PlSqlParser.MAXLOGHISTORY:
+ case PlSqlParser.MAXLOGMEMBERS:
+ case PlSqlParser.MAX_SHARED_TEMP_SIZE:
+ case PlSqlParser.MAXSIZE:
+ case PlSqlParser.MAXTRANS:
+ case PlSqlParser.MAXVALUE:
+ case PlSqlParser.MEASURE:
+ case PlSqlParser.MEASURES:
+ case PlSqlParser.MEDIUM:
+ case PlSqlParser.MEMBER:
+ case PlSqlParser.MEMCOMPRESS:
+ case PlSqlParser.MEMORY:
+ case PlSqlParser.MERGEACTIONS:
+ case PlSqlParser.MERGE_AJ:
+ case PlSqlParser.MERGE_CONST_ON:
+ case PlSqlParser.MERGE:
+ case PlSqlParser.MERGE_SJ:
+ case PlSqlParser.METADATA:
+ case PlSqlParser.METHOD:
+ case PlSqlParser.MIGRATE:
+ case PlSqlParser.MIGRATION:
+ case PlSqlParser.MINEXTENTS:
+ case PlSqlParser.MINIMIZE:
+ case PlSqlParser.MINIMUM:
+ case PlSqlParser.MINING:
+ case PlSqlParser.MINUS_NULL:
+ case PlSqlParser.MINUTE:
+ case PlSqlParser.MINVALUE:
+ case PlSqlParser.MIRRORCOLD:
+ case PlSqlParser.MIRRORHOT:
+ case PlSqlParser.MIRROR:
+ case PlSqlParser.MLSLABEL:
+ case PlSqlParser.MODEL_COMPILE_SUBQUERY:
+ case PlSqlParser.MODEL_DONTVERIFY_UNIQUENESS:
+ case PlSqlParser.MODEL_DYNAMIC_SUBQUERY:
+ case PlSqlParser.MODEL_MIN_ANALYSIS:
+ case PlSqlParser.MODEL:
+ case PlSqlParser.MODEL_NB:
+ case PlSqlParser.MODEL_NO_ANALYSIS:
+ case PlSqlParser.MODEL_PBY:
+ case PlSqlParser.MODEL_PUSH_REF:
+ case PlSqlParser.MODEL_SV:
+ case PlSqlParser.MODIFICATION:
+ case PlSqlParser.MODIFY_COLUMN_TYPE:
+ case PlSqlParser.MODIFY:
+ case PlSqlParser.MOD:
+ case PlSqlParser.MODULE:
+ case PlSqlParser.MONITORING:
+ case PlSqlParser.MONITOR:
+ case PlSqlParser.MONTH:
+ case PlSqlParser.MONTHS_BETWEEN:
+ case PlSqlParser.MONTHS:
+ case PlSqlParser.MOUNT:
+ case PlSqlParser.MOUNTPATH:
+ case PlSqlParser.MOVEMENT:
+ case PlSqlParser.MOVE:
+ case PlSqlParser.MULTIDIMENSIONAL:
+ case PlSqlParser.MULTISET:
+ case PlSqlParser.MV_MERGE:
+ case PlSqlParser.NAMED:
+ case PlSqlParser.NAME:
+ case PlSqlParser.NAMESPACE:
+ case PlSqlParser.NAN:
+ case PlSqlParser.NANVL:
+ case PlSqlParser.NATIONAL:
+ case PlSqlParser.NATIVE_FULL_OUTER_JOIN:
+ case PlSqlParser.NATIVE:
+ case PlSqlParser.NATURAL:
+ case PlSqlParser.NAV:
+ case PlSqlParser.NCHAR_CS:
+ case PlSqlParser.NCHAR:
+ case PlSqlParser.NCHR:
+ case PlSqlParser.NCLOB:
+ case PlSqlParser.NEEDED:
+ case PlSqlParser.NEG:
+ case PlSqlParser.NESTED:
+ case PlSqlParser.NESTED_TABLE_FAST_INSERT:
+ case PlSqlParser.NESTED_TABLE_GET_REFS:
+ case PlSqlParser.NESTED_TABLE_ID:
+ case PlSqlParser.NESTED_TABLE_SET_REFS:
+ case PlSqlParser.NESTED_TABLE_SET_SETID:
+ case PlSqlParser.NETWORK:
+ case PlSqlParser.NEVER:
+ case PlSqlParser.NEW:
+ case PlSqlParser.NEW_TIME:
+ case PlSqlParser.NEXT_DAY:
+ case PlSqlParser.NEXT:
+ case PlSqlParser.NL_AJ:
+ case PlSqlParser.NLJ_BATCHING:
+ case PlSqlParser.NLJ_INDEX_FILTER:
+ case PlSqlParser.NLJ_INDEX_SCAN:
+ case PlSqlParser.NLJ_PREFETCH:
+ case PlSqlParser.NLS_CALENDAR:
+ case PlSqlParser.NLS_CHARACTERSET:
+ case PlSqlParser.NLS_CHARSET_DECL_LEN:
+ case PlSqlParser.NLS_CHARSET_ID:
+ case PlSqlParser.NLS_CHARSET_NAME:
+ case PlSqlParser.NLS_COMP:
+ case PlSqlParser.NLS_CURRENCY:
+ case PlSqlParser.NLS_DATE_FORMAT:
+ case PlSqlParser.NLS_DATE_LANGUAGE:
+ case PlSqlParser.NLS_INITCAP:
+ case PlSqlParser.NLS_ISO_CURRENCY:
+ case PlSqlParser.NL_SJ:
+ case PlSqlParser.NLS_LANG:
+ case PlSqlParser.NLS_LANGUAGE:
+ case PlSqlParser.NLS_LENGTH_SEMANTICS:
+ case PlSqlParser.NLS_LOWER:
+ case PlSqlParser.NLS_NCHAR_CONV_EXCP:
+ case PlSqlParser.NLS_NUMERIC_CHARACTERS:
+ case PlSqlParser.NLS_SORT:
+ case PlSqlParser.NLSSORT:
+ case PlSqlParser.NLS_SPECIAL_CHARS:
+ case PlSqlParser.NLS_TERRITORY:
+ case PlSqlParser.NLS_UPPER:
+ case PlSqlParser.NO_ACCESS:
+ case PlSqlParser.NO_ADAPTIVE_PLAN:
+ case PlSqlParser.NO_ANSI_REARCH:
+ case PlSqlParser.NOAPPEND:
+ case PlSqlParser.NOARCHIVELOG:
+ case PlSqlParser.NOAUDIT:
+ case PlSqlParser.NO_AUTO_REOPTIMIZE:
+ case PlSqlParser.NO_BASETABLE_MULTIMV_REWRITE:
+ case PlSqlParser.NO_BATCH_TABLE_ACCESS_BY_ROWID:
+ case PlSqlParser.NO_BIND_AWARE:
+ case PlSqlParser.NO_BUFFER:
+ case PlSqlParser.NOCACHE:
+ case PlSqlParser.NO_CARTESIAN:
+ case PlSqlParser.NO_CHECK_ACL_REWRITE:
+ case PlSqlParser.NO_CLUSTER_BY_ROWID:
+ case PlSqlParser.NO_CLUSTERING:
+ case PlSqlParser.NO_COALESCE_SQ:
+ case PlSqlParser.NO_COMMON_DATA:
+ case PlSqlParser.NO_CONNECT_BY_CB_WHR_ONLY:
+ case PlSqlParser.NO_CONNECT_BY_COMBINE_SW:
+ case PlSqlParser.NO_CONNECT_BY_COST_BASED:
+ case PlSqlParser.NO_CONNECT_BY_ELIM_DUPS:
+ case PlSqlParser.NO_CONNECT_BY_FILTERING:
+ case PlSqlParser.NOCOPY:
+ case PlSqlParser.NO_COST_XML_QUERY_REWRITE:
+ case PlSqlParser.NO_CPU_COSTING:
+ case PlSqlParser.NOCPU_COSTING:
+ case PlSqlParser.NOCYCLE:
+ case PlSqlParser.NO_DATA_SECURITY_REWRITE:
+ case PlSqlParser.NO_DECORRELATE:
+ case PlSqlParser.NODELAY:
+ case PlSqlParser.NO_DOMAIN_INDEX_FILTER:
+ case PlSqlParser.NO_DST_UPGRADE_INSERT_CONV:
+ case PlSqlParser.NO_ELIM_GROUPBY:
+ case PlSqlParser.NO_ELIMINATE_JOIN:
+ case PlSqlParser.NO_ELIMINATE_OBY:
+ case PlSqlParser.NO_ELIMINATE_OUTER_JOIN:
+ case PlSqlParser.NOENTITYESCAPING:
+ case PlSqlParser.NO_EXPAND_GSET_TO_UNION:
+ case PlSqlParser.NO_EXPAND:
+ case PlSqlParser.NO_EXPAND_TABLE:
+ case PlSqlParser.NO_FACT:
+ case PlSqlParser.NO_FACTORIZE_JOIN:
+ case PlSqlParser.NO_FILTERING:
+ case PlSqlParser.NOFORCE:
+ case PlSqlParser.NO_FULL_OUTER_JOIN_TO_OUTER:
+ case PlSqlParser.NO_GATHER_OPTIMIZER_STATISTICS:
+ case PlSqlParser.NO_GBY_PUSHDOWN:
+ case PlSqlParser.NOGUARANTEE:
+ case PlSqlParser.NO_INDEX_FFS:
+ case PlSqlParser.NO_INDEX:
+ case PlSqlParser.NO_INDEX_SS:
+ case PlSqlParser.NO_INMEMORY:
+ case PlSqlParser.NO_INMEMORY_PRUNING:
+ case PlSqlParser.NOKEEP:
+ case PlSqlParser.NO_LOAD:
+ case PlSqlParser.NOLOCAL:
+ case PlSqlParser.NOLOGGING:
+ case PlSqlParser.NOMAPPING:
+ case PlSqlParser.NOMAXVALUE:
+ case PlSqlParser.NO_MERGE:
+ case PlSqlParser.NOMINIMIZE:
+ case PlSqlParser.NOMINVALUE:
+ case PlSqlParser.NO_MODEL_PUSH_REF:
+ case PlSqlParser.NO_MONITORING:
+ case PlSqlParser.NOMONITORING:
+ case PlSqlParser.NO_MONITOR:
+ case PlSqlParser.NO_MULTIMV_REWRITE:
+ case PlSqlParser.NO_NATIVE_FULL_OUTER_JOIN:
+ case PlSqlParser.NONBLOCKING:
+ case PlSqlParser.NONEDITIONABLE:
+ case PlSqlParser.NONE:
+ case PlSqlParser.NO_NLJ_BATCHING:
+ case PlSqlParser.NO_NLJ_PREFETCH:
+ case PlSqlParser.NO:
+ case PlSqlParser.NONSCHEMA:
+ case PlSqlParser.NO_OBJECT_LINK:
+ case PlSqlParser.NOORDER:
+ case PlSqlParser.NO_ORDER_ROLLUPS:
+ case PlSqlParser.NO_OUTER_JOIN_TO_ANTI:
+ case PlSqlParser.NO_OUTER_JOIN_TO_INNER:
+ case PlSqlParser.NOOVERRIDE:
+ case PlSqlParser.NO_PARALLEL_INDEX:
+ case PlSqlParser.NOPARALLEL_INDEX:
+ case PlSqlParser.NO_PARALLEL:
+ case PlSqlParser.NOPARALLEL:
+ case PlSqlParser.NO_PARTIAL_COMMIT:
+ case PlSqlParser.NO_PARTIAL_JOIN:
+ case PlSqlParser.NO_PARTIAL_ROLLUP_PUSHDOWN:
+ case PlSqlParser.NOPARTITION:
+ case PlSqlParser.NO_PLACE_DISTINCT:
+ case PlSqlParser.NO_PLACE_GROUP_BY:
+ case PlSqlParser.NO_PQ_CONCURRENT_UNION:
+ case PlSqlParser.NO_PQ_MAP:
+ case PlSqlParser.NO_PQ_REPLICATE:
+ case PlSqlParser.NO_PQ_SKEW:
+ case PlSqlParser.NO_PRUNE_GSETS:
+ case PlSqlParser.NO_PULL_PRED:
+ case PlSqlParser.NO_PUSH_PRED:
+ case PlSqlParser.NO_PUSH_SUBQ:
+ case PlSqlParser.NO_PX_FAULT_TOLERANCE:
+ case PlSqlParser.NO_PX_JOIN_FILTER:
+ case PlSqlParser.NO_QKN_BUFF:
+ case PlSqlParser.NO_QUERY_TRANSFORMATION:
+ case PlSqlParser.NO_REF_CASCADE:
+ case PlSqlParser.NORELOCATE:
+ case PlSqlParser.NORELY:
+ case PlSqlParser.NOREPAIR:
+ case PlSqlParser.NOREPLAY:
+ case PlSqlParser.NORESETLOGS:
+ case PlSqlParser.NO_RESULT_CACHE:
+ case PlSqlParser.NOREVERSE:
+ case PlSqlParser.NO_REWRITE:
+ case PlSqlParser.NOREWRITE:
+ case PlSqlParser.NORMAL:
+ case PlSqlParser.NO_ROOT_SW_FOR_LOCAL:
+ case PlSqlParser.NOROWDEPENDENCIES:
+ case PlSqlParser.NOSCHEMACHECK:
+ case PlSqlParser.NOSEGMENT:
+ case PlSqlParser.NO_SEMIJOIN:
+ case PlSqlParser.NO_SEMI_TO_INNER:
+ case PlSqlParser.NO_SET_TO_JOIN:
+ case PlSqlParser.NOSORT:
+ case PlSqlParser.NO_SQL_TRANSLATION:
+ case PlSqlParser.NO_SQL_TUNE:
+ case PlSqlParser.NO_STAR_TRANSFORMATION:
+ case PlSqlParser.NO_STATEMENT_QUEUING:
+ case PlSqlParser.NO_STATS_GSETS:
+ case PlSqlParser.NOSTRICT:
+ case PlSqlParser.NO_SUBQUERY_PRUNING:
+ case PlSqlParser.NO_SUBSTRB_PAD:
+ case PlSqlParser.NO_SWAP_JOIN_INPUTS:
+ case PlSqlParser.NOSWITCH:
+ case PlSqlParser.NO_TABLE_LOOKUP_BY_NL:
+ case PlSqlParser.NO_TEMP_TABLE:
+ case PlSqlParser.NOTHING:
+ case PlSqlParser.NOTIFICATION:
+ case PlSqlParser.NO_TRANSFORM_DISTINCT_AGG:
+ case PlSqlParser.NO_UNNEST:
+ case PlSqlParser.NO_USE_CUBE:
+ case PlSqlParser.NO_USE_HASH_AGGREGATION:
+ case PlSqlParser.NO_USE_HASH_GBY_FOR_PUSHDOWN:
+ case PlSqlParser.NO_USE_HASH:
+ case PlSqlParser.NO_USE_INVISIBLE_INDEXES:
+ case PlSqlParser.NO_USE_MERGE:
+ case PlSqlParser.NO_USE_NL:
+ case PlSqlParser.NO_USE_VECTOR_AGGREGATION:
+ case PlSqlParser.NOVALIDATE:
+ case PlSqlParser.NO_VECTOR_TRANSFORM_DIMS:
+ case PlSqlParser.NO_VECTOR_TRANSFORM_FACT:
+ case PlSqlParser.NO_VECTOR_TRANSFORM:
+ case PlSqlParser.NO_XDB_FASTPATH_INSERT:
+ case PlSqlParser.NO_XML_DML_REWRITE:
+ case PlSqlParser.NO_XMLINDEX_REWRITE_IN_SELECT:
+ case PlSqlParser.NO_XMLINDEX_REWRITE:
+ case PlSqlParser.NO_XML_QUERY_REWRITE:
+ case PlSqlParser.NO_ZONEMAP:
+ case PlSqlParser.NTH_VALUE:
+ case PlSqlParser.NULLIF:
+ case PlSqlParser.NULLS:
+ case PlSqlParser.NUMBER:
+ case PlSqlParser.NUMERIC:
+ case PlSqlParser.NUM_INDEX_KEYS:
+ case PlSqlParser.NUMTODSINTERVAL:
+ case PlSqlParser.NUMTOYMINTERVAL:
+ case PlSqlParser.NVARCHAR2:
+ case PlSqlParser.NVL2:
+ case PlSqlParser.OBJECT2XML:
+ case PlSqlParser.OBJECT:
+ case PlSqlParser.OBJ_ID:
+ case PlSqlParser.OBJNO:
+ case PlSqlParser.OBJNO_REUSE:
+ case PlSqlParser.OCCURENCES:
+ case PlSqlParser.OFFLINE:
+ case PlSqlParser.OFF:
+ case PlSqlParser.OFFSET:
+ case PlSqlParser.OIDINDEX:
+ case PlSqlParser.OID:
+ case PlSqlParser.OLAP:
+ case PlSqlParser.OLD:
+ case PlSqlParser.OLD_PUSH_PRED:
+ case PlSqlParser.OLS:
+ case PlSqlParser.OLTP:
+ case PlSqlParser.OMIT:
+ case PlSqlParser.ONE:
+ case PlSqlParser.ONLINE:
+ case PlSqlParser.ONLY:
+ case PlSqlParser.OPAQUE:
+ case PlSqlParser.OPAQUE_TRANSFORM:
+ case PlSqlParser.OPAQUE_XCANONICAL:
+ case PlSqlParser.OPCODE:
+ case PlSqlParser.OPEN:
+ case PlSqlParser.OPERATIONS:
+ case PlSqlParser.OPERATOR:
+ case PlSqlParser.OPT_ESTIMATE:
+ case PlSqlParser.OPTIMAL:
+ case PlSqlParser.OPTIMIZE:
+ case PlSqlParser.OPTIMIZER_FEATURES_ENABLE:
+ case PlSqlParser.OPTIMIZER_GOAL:
+ case PlSqlParser.OPT_PARAM:
+ case PlSqlParser.ORA_BRANCH:
+ case PlSqlParser.ORA_CHECK_ACL:
+ case PlSqlParser.ORA_CHECK_PRIVILEGE:
+ case PlSqlParser.ORA_CLUSTERING:
+ case PlSqlParser.ORADATA:
+ case PlSqlParser.ORADEBUG:
+ case PlSqlParser.ORA_DST_AFFECTED:
+ case PlSqlParser.ORA_DST_CONVERT:
+ case PlSqlParser.ORA_DST_ERROR:
+ case PlSqlParser.ORA_GET_ACLIDS:
+ case PlSqlParser.ORA_GET_PRIVILEGES:
+ case PlSqlParser.ORA_HASH:
+ case PlSqlParser.ORA_INVOKING_USERID:
+ case PlSqlParser.ORA_INVOKING_USER:
+ case PlSqlParser.ORA_INVOKING_XS_USER_GUID:
+ case PlSqlParser.ORA_INVOKING_XS_USER:
+ case PlSqlParser.ORA_RAWCOMPARE:
+ case PlSqlParser.ORA_RAWCONCAT:
+ case PlSqlParser.ORA_ROWSCN:
+ case PlSqlParser.ORA_ROWSCN_RAW:
+ case PlSqlParser.ORA_ROWVERSION:
+ case PlSqlParser.ORA_TABVERSION:
+ case PlSqlParser.ORA_WRITE_TIME:
+ case PlSqlParser.ORDERED:
+ case PlSqlParser.ORDERED_PREDICATES:
+ case PlSqlParser.ORDINALITY:
+ case PlSqlParser.OR_EXPAND:
+ case PlSqlParser.ORGANIZATION:
+ case PlSqlParser.OR_PREDICATES:
+ case PlSqlParser.OSERROR:
+ case PlSqlParser.OTHER:
+ case PlSqlParser.OUTER_JOIN_TO_ANTI:
+ case PlSqlParser.OUTER_JOIN_TO_INNER:
+ case PlSqlParser.OUTER:
+ case PlSqlParser.OUTLINE_LEAF:
+ case PlSqlParser.OUTLINE:
+ case PlSqlParser.OUT_OF_LINE:
+ case PlSqlParser.OUT:
+ case PlSqlParser.OVERFLOW_NOMOVE:
+ case PlSqlParser.OVERFLOW:
+ case PlSqlParser.OVERLAPS:
+ case PlSqlParser.OVER:
+ case PlSqlParser.OVERRIDING:
+ case PlSqlParser.OWNER:
+ case PlSqlParser.OWNERSHIP:
+ case PlSqlParser.OWN:
+ case PlSqlParser.PACKAGE:
+ case PlSqlParser.PACKAGES:
+ case PlSqlParser.PARALLEL_ENABLE:
+ case PlSqlParser.PARALLEL_INDEX:
+ case PlSqlParser.PARALLEL:
+ case PlSqlParser.PARAMETERS:
+ case PlSqlParser.PARAM:
+ case PlSqlParser.PARENT:
+ case PlSqlParser.PARITY:
+ case PlSqlParser.PARTIAL_JOIN:
+ case PlSqlParser.PARTIALLY:
+ case PlSqlParser.PARTIAL:
+ case PlSqlParser.PARTIAL_ROLLUP_PUSHDOWN:
+ case PlSqlParser.PARTITION_HASH:
+ case PlSqlParser.PARTITION_LIST:
+ case PlSqlParser.PARTITION:
+ case PlSqlParser.PARTITION_RANGE:
+ case PlSqlParser.PARTITIONS:
+ case PlSqlParser.PARTNUMINST:
+ case PlSqlParser.PASSING:
+ case PlSqlParser.PASSWORD_GRACE_TIME:
+ case PlSqlParser.PASSWORD_LIFE_TIME:
+ case PlSqlParser.PASSWORD_LOCK_TIME:
+ case PlSqlParser.PASSWORD:
+ case PlSqlParser.PASSWORD_REUSE_MAX:
+ case PlSqlParser.PASSWORD_REUSE_TIME:
+ case PlSqlParser.PASSWORD_VERIFY_FUNCTION:
+ case PlSqlParser.PAST:
+ case PlSqlParser.PATCH:
+ case PlSqlParser.PATH:
+ case PlSqlParser.PATH_PREFIX:
+ case PlSqlParser.PATHS:
+ case PlSqlParser.PATTERN:
+ case PlSqlParser.PBL_HS_BEGIN:
+ case PlSqlParser.PBL_HS_END:
+ case PlSqlParser.PCTINCREASE:
+ case PlSqlParser.PCTTHRESHOLD:
+ case PlSqlParser.PCTUSED:
+ case PlSqlParser.PCTVERSION:
+ case PlSqlParser.PENDING:
+ case PlSqlParser.PERCENT_KEYWORD:
+ case PlSqlParser.PERCENT_RANKM:
+ case PlSqlParser.PERFORMANCE:
+ case PlSqlParser.PERIOD_KEYWORD:
+ case PlSqlParser.PERMANENT:
+ case PlSqlParser.PERMISSION:
+ case PlSqlParser.PERMUTE:
+ case PlSqlParser.PER:
+ case PlSqlParser.PFILE:
+ case PlSqlParser.PHYSICAL:
+ case PlSqlParser.PIKEY:
+ case PlSqlParser.PIPELINED:
+ case PlSqlParser.PIV_GB:
+ case PlSqlParser.PIVOT:
+ case PlSqlParser.PIV_SSF:
+ case PlSqlParser.PLACE_DISTINCT:
+ case PlSqlParser.PLACE_GROUP_BY:
+ case PlSqlParser.PLAN:
+ case PlSqlParser.PLSCOPE_SETTINGS:
+ case PlSqlParser.PLS_INTEGER:
+ case PlSqlParser.PLSQL_CCFLAGS:
+ case PlSqlParser.PLSQL_CODE_TYPE:
+ case PlSqlParser.PLSQL_DEBUG:
+ case PlSqlParser.PLSQL_OPTIMIZE_LEVEL:
+ case PlSqlParser.PLSQL_WARNINGS:
+ case PlSqlParser.PLUGGABLE:
+ case PlSqlParser.POINT:
+ case PlSqlParser.POLICY:
+ case PlSqlParser.POOL_16K:
+ case PlSqlParser.POOL_2K:
+ case PlSqlParser.POOL_32K:
+ case PlSqlParser.POOL_4K:
+ case PlSqlParser.POOL_8K:
+ case PlSqlParser.POSITIVEN:
+ case PlSqlParser.POSITIVE:
+ case PlSqlParser.POST_TRANSACTION:
+ case PlSqlParser.POWERMULTISET_BY_CARDINALITY:
+ case PlSqlParser.POWERMULTISET:
+ case PlSqlParser.POWER:
+ case PlSqlParser.PQ_CONCURRENT_UNION:
+ case PlSqlParser.PQ_DISTRIBUTE:
+ case PlSqlParser.PQ_DISTRIBUTE_WINDOW:
+ case PlSqlParser.PQ_FILTER:
+ case PlSqlParser.PQ_MAP:
+ case PlSqlParser.PQ_NOMAP:
+ case PlSqlParser.PQ_REPLICATE:
+ case PlSqlParser.PQ_SKEW:
+ case PlSqlParser.PRAGMA:
+ case PlSqlParser.PREBUILT:
+ case PlSqlParser.PRECEDES:
+ case PlSqlParser.PRECEDING:
+ case PlSqlParser.PRECISION:
+ case PlSqlParser.PRECOMPUTE_SUBQUERY:
+ case PlSqlParser.PREDICATE_REORDERS:
+ case PlSqlParser.PRELOAD:
+ case PlSqlParser.PREPARE:
+ case PlSqlParser.PRESENTNNV:
+ case PlSqlParser.PRESENT:
+ case PlSqlParser.PRESENTV:
+ case PlSqlParser.PRESERVE_OID:
+ case PlSqlParser.PRESERVE:
+ case PlSqlParser.PRETTY:
+ case PlSqlParser.PREVIOUS:
+ case PlSqlParser.PREV:
+ case PlSqlParser.PRIMARY:
+ case PlSqlParser.PRINTBLOBTOCLOB:
+ case PlSqlParser.PRIORITY:
+ case PlSqlParser.PRIVATE:
+ case PlSqlParser.PRIVATE_SGA:
+ case PlSqlParser.PRIVILEGED:
+ case PlSqlParser.PRIVILEGE:
+ case PlSqlParser.PRIVILEGES:
+ case PlSqlParser.PROCEDURAL:
+ case PlSqlParser.PROCEDURE:
+ case PlSqlParser.PROCESS:
+ case PlSqlParser.PROFILE:
+ case PlSqlParser.PROGRAM:
+ case PlSqlParser.PROJECT:
+ case PlSqlParser.PROPAGATE:
+ case PlSqlParser.PROTECTED:
+ case PlSqlParser.PROTECTION:
+ case PlSqlParser.PROXY:
+ case PlSqlParser.PRUNING:
+ case PlSqlParser.PULL_PRED:
+ case PlSqlParser.PURGE:
+ case PlSqlParser.PUSH_PRED:
+ case PlSqlParser.PUSH_SUBQ:
+ case PlSqlParser.PX_FAULT_TOLERANCE:
+ case PlSqlParser.PX_GRANULE:
+ case PlSqlParser.PX_JOIN_FILTER:
+ case PlSqlParser.QB_NAME:
+ case PlSqlParser.QUERY_BLOCK:
+ case PlSqlParser.QUERY:
+ case PlSqlParser.QUEUE_CURR:
+ case PlSqlParser.QUEUE:
+ case PlSqlParser.QUEUE_ROWP:
+ case PlSqlParser.QUIESCE:
+ case PlSqlParser.QUORUM:
+ case PlSqlParser.QUOTA:
+ case PlSqlParser.RAISE:
+ case PlSqlParser.RANDOM_LOCAL:
+ case PlSqlParser.RANDOM:
+ case PlSqlParser.RANGE:
+ case PlSqlParser.RANKM:
+ case PlSqlParser.RAPIDLY:
+ case PlSqlParser.RAW:
+ case PlSqlParser.RAWTOHEX:
+ case PlSqlParser.RAWTONHEX:
+ case PlSqlParser.RBA:
+ case PlSqlParser.RBO_OUTLINE:
+ case PlSqlParser.RDBA:
+ case PlSqlParser.READ:
+ case PlSqlParser.READS:
+ case PlSqlParser.REALM:
+ case PlSqlParser.REAL:
+ case PlSqlParser.REBALANCE:
+ case PlSqlParser.REBUILD:
+ case PlSqlParser.RECORD:
+ case PlSqlParser.RECORDS_PER_BLOCK:
+ case PlSqlParser.RECOVERABLE:
+ case PlSqlParser.RECOVER:
+ case PlSqlParser.RECOVERY:
+ case PlSqlParser.RECYCLEBIN:
+ case PlSqlParser.RECYCLE:
+ case PlSqlParser.REDACTION:
+ case PlSqlParser.REDEFINE:
+ case PlSqlParser.REDO:
+ case PlSqlParser.REDUCED:
+ case PlSqlParser.REDUNDANCY:
+ case PlSqlParser.REF_CASCADE_CURSOR:
+ case PlSqlParser.REFERENCED:
+ case PlSqlParser.REFERENCE:
+ case PlSqlParser.REFERENCES:
+ case PlSqlParser.REFERENCING:
+ case PlSqlParser.REF:
+ case PlSqlParser.REFRESH:
+ case PlSqlParser.REFTOHEX:
+ case PlSqlParser.REGEXP_COUNT:
+ case PlSqlParser.REGEXP_INSTR:
+ case PlSqlParser.REGEXP_LIKE:
+ case PlSqlParser.REGEXP_REPLACE:
+ case PlSqlParser.REGEXP_SUBSTR:
+ case PlSqlParser.REGISTER:
+ case PlSqlParser.REGR_AVGX:
+ case PlSqlParser.REGR_AVGY:
+ case PlSqlParser.REGR_COUNT:
+ case PlSqlParser.REGR_INTERCEPT:
+ case PlSqlParser.REGR_R2:
+ case PlSqlParser.REGR_SLOPE:
+ case PlSqlParser.REGR_SXX:
+ case PlSqlParser.REGR_SXY:
+ case PlSqlParser.REGR_SYY:
+ case PlSqlParser.REGULAR:
+ case PlSqlParser.REJECT:
+ case PlSqlParser.REKEY:
+ case PlSqlParser.RELATIONAL:
+ case PlSqlParser.RELOCATE:
+ case PlSqlParser.RELY:
+ case PlSqlParser.REMAINDER:
+ case PlSqlParser.REMOTE_MAPPED:
+ case PlSqlParser.REMOVE:
+ case PlSqlParser.RENAME:
+ case PlSqlParser.REPAIR:
+ case PlSqlParser.REPEAT:
+ case PlSqlParser.REPLACE:
+ case PlSqlParser.REPLICATION:
+ case PlSqlParser.REQUIRED:
+ case PlSqlParser.RESETLOGS:
+ case PlSqlParser.RESET:
+ case PlSqlParser.RESIZE:
+ case PlSqlParser.RESOLVE:
+ case PlSqlParser.RESOLVER:
+ case PlSqlParser.RESPECT:
+ case PlSqlParser.RESTART:
+ case PlSqlParser.RESTORE_AS_INTERVALS:
+ case PlSqlParser.RESTORE:
+ case PlSqlParser.RESTRICT_ALL_REF_CONS:
+ case PlSqlParser.RESTRICTED:
+ case PlSqlParser.RESTRICT_REFERENCES:
+ case PlSqlParser.RESTRICT:
+ case PlSqlParser.RESULT_CACHE:
+ case PlSqlParser.RESULT:
+ case PlSqlParser.RESUMABLE:
+ case PlSqlParser.RESUME:
+ case PlSqlParser.RETENTION:
+ case PlSqlParser.RETRY_ON_ROW_CHANGE:
+ case PlSqlParser.RETURNING:
+ case PlSqlParser.RETURN:
+ case PlSqlParser.REUSE:
+ case PlSqlParser.REVERSE:
+ case PlSqlParser.REWRITE_OR_ERROR:
+ case PlSqlParser.REWRITE:
+ case PlSqlParser.RIGHT:
+ case PlSqlParser.ROLE:
+ case PlSqlParser.ROLESET:
+ case PlSqlParser.ROLES:
+ case PlSqlParser.ROLLBACK:
+ case PlSqlParser.ROLLING:
+ case PlSqlParser.ROLLUP:
+ case PlSqlParser.ROWDEPENDENCIES:
+ case PlSqlParser.ROWID_MAPPING_TABLE:
+ case PlSqlParser.ROWID:
+ case PlSqlParser.ROWIDTOCHAR:
+ case PlSqlParser.ROWIDTONCHAR:
+ case PlSqlParser.ROW_LENGTH:
+ case PlSqlParser.ROWNUM:
+ case PlSqlParser.ROW:
+ case PlSqlParser.ROWS:
+ case PlSqlParser.RPAD:
+ case PlSqlParser.RTRIM:
+ case PlSqlParser.RULE:
+ case PlSqlParser.RULES:
+ case PlSqlParser.RUNNING:
+ case PlSqlParser.SALT:
+ case PlSqlParser.SAMPLE:
+ case PlSqlParser.SAVE_AS_INTERVALS:
+ case PlSqlParser.SAVEPOINT:
+ case PlSqlParser.SAVE:
+ case PlSqlParser.SB4:
+ case PlSqlParser.SCALE_ROWS:
+ case PlSqlParser.SCALE:
+ case PlSqlParser.SCAN_INSTANCES:
+ case PlSqlParser.SCAN:
+ case PlSqlParser.SCHEDULER:
+ case PlSqlParser.SCHEMACHECK:
+ case PlSqlParser.SCHEMA:
+ case PlSqlParser.SCN_ASCENDING:
+ case PlSqlParser.SCN:
+ case PlSqlParser.SCOPE:
+ case PlSqlParser.SCRUB:
+ case PlSqlParser.SD_ALL:
+ case PlSqlParser.SD_INHIBIT:
+ case PlSqlParser.SDO_GEOM_MBR:
+ case PlSqlParser.SD_SHOW:
+ case PlSqlParser.SEARCH:
+ case PlSqlParser.SECOND:
+ case PlSqlParser.SECRET:
+ case PlSqlParser.SECUREFILE_DBA:
+ case PlSqlParser.SECUREFILE:
+ case PlSqlParser.SECURITY:
+ case PlSqlParser.SEED:
+ case PlSqlParser.SEG_BLOCK:
+ case PlSqlParser.SEG_FILE:
+ case PlSqlParser.SEGMENT:
+ case PlSqlParser.SELECTIVITY:
+ case PlSqlParser.SELF:
+ case PlSqlParser.SEMIJOIN_DRIVER:
+ case PlSqlParser.SEMIJOIN:
+ case PlSqlParser.SEMI_TO_INNER:
+ case PlSqlParser.SEQUENCED:
+ case PlSqlParser.SEQUENCE:
+ case PlSqlParser.SEQUENTIAL:
+ case PlSqlParser.SERIALIZABLE:
+ case PlSqlParser.SERIALLY_REUSABLE:
+ case PlSqlParser.SERIAL:
+ case PlSqlParser.SERVERERROR:
+ case PlSqlParser.SERVICE_NAME_CONVERT:
+ case PlSqlParser.SERVICES:
+ case PlSqlParser.SESSION_CACHED_CURSORS:
+ case PlSqlParser.SESSION:
+ case PlSqlParser.SESSIONS_PER_USER:
+ case PlSqlParser.SESSIONTIMEZONE:
+ case PlSqlParser.SESSIONTZNAME:
+ case PlSqlParser.SET:
+ case PlSqlParser.SETS:
+ case PlSqlParser.SETTINGS:
+ case PlSqlParser.SET_TO_JOIN:
+ case PlSqlParser.SEVERE:
+ case PlSqlParser.SHARED_POOL:
+ case PlSqlParser.SHARED:
+ case PlSqlParser.SHARING:
+ case PlSqlParser.SHELFLIFE:
+ case PlSqlParser.SHOW:
+ case PlSqlParser.SHRINK:
+ case PlSqlParser.SHUTDOWN:
+ case PlSqlParser.SIBLINGS:
+ case PlSqlParser.SID:
+ case PlSqlParser.SIGNAL_COMPONENT:
+ case PlSqlParser.SIGNAL_FUNCTION:
+ case PlSqlParser.SIGN:
+ case PlSqlParser.SIGNTYPE:
+ case PlSqlParser.SIMPLE_INTEGER:
+ case PlSqlParser.SIMPLE:
+ case PlSqlParser.SINGLE:
+ case PlSqlParser.SINGLETASK:
+ case PlSqlParser.SINH:
+ case PlSqlParser.SIN:
+ case PlSqlParser.SKIP_EXT_OPTIMIZER:
+ case PlSqlParser.SKIP_:
+ case PlSqlParser.SKIP_UNQ_UNUSABLE_IDX:
+ case PlSqlParser.SKIP_UNUSABLE_INDEXES:
+ case PlSqlParser.SMALLFILE:
+ case PlSqlParser.SMALLINT:
+ case PlSqlParser.SNAPSHOT:
+ case PlSqlParser.SOME:
+ case PlSqlParser.SORT:
+ case PlSqlParser.SOUNDEX:
+ case PlSqlParser.SOURCE_FILE_DIRECTORY:
+ case PlSqlParser.SOURCE_FILE_NAME_CONVERT:
+ case PlSqlParser.SOURCE:
+ case PlSqlParser.SPACE_KEYWORD:
+ case PlSqlParser.SPECIFICATION:
+ case PlSqlParser.SPFILE:
+ case PlSqlParser.SPLIT:
+ case PlSqlParser.SPREADSHEET:
+ case PlSqlParser.SQLDATA:
+ case PlSqlParser.SQLERROR:
+ case PlSqlParser.SQLLDR:
+ case PlSqlParser.SQL:
+ case PlSqlParser.SQL_TRACE:
+ case PlSqlParser.SQL_TRANSLATION_PROFILE:
+ case PlSqlParser.SQRT:
+ case PlSqlParser.STALE:
+ case PlSqlParser.STANDALONE:
+ case PlSqlParser.STANDARD_HASH:
+ case PlSqlParser.STANDBY_MAX_DATA_DELAY:
+ case PlSqlParser.STANDBYS:
+ case PlSqlParser.STANDBY:
+ case PlSqlParser.STAR:
+ case PlSqlParser.STAR_TRANSFORMATION:
+ case PlSqlParser.STARTUP:
+ case PlSqlParser.STATEMENT_ID:
+ case PlSqlParser.STATEMENT_QUEUING:
+ case PlSqlParser.STATEMENTS:
+ case PlSqlParser.STATEMENT:
+ case PlSqlParser.STATE:
+ case PlSqlParser.STATIC:
+ case PlSqlParser.STATISTICS:
+ case PlSqlParser.STATS_BINOMIAL_TEST:
+ case PlSqlParser.STATS_CROSSTAB:
+ case PlSqlParser.STATS_F_TEST:
+ case PlSqlParser.STATS_KS_TEST:
+ case PlSqlParser.STATS_MODE:
+ case PlSqlParser.STATS_MW_TEST:
+ case PlSqlParser.STATS_ONE_WAY_ANOVA:
+ case PlSqlParser.STATS_T_TEST_INDEP:
+ case PlSqlParser.STATS_T_TEST_INDEPU:
+ case PlSqlParser.STATS_T_TEST_ONE:
+ case PlSqlParser.STATS_T_TEST_PAIRED:
+ case PlSqlParser.STATS_WSR_TEST:
+ case PlSqlParser.STDDEV_POP:
+ case PlSqlParser.STDDEV_SAMP:
+ case PlSqlParser.STOP:
+ case PlSqlParser.STORAGE:
+ case PlSqlParser.STORE:
+ case PlSqlParser.STREAMS:
+ case PlSqlParser.STREAM:
+ case PlSqlParser.STRICT:
+ case PlSqlParser.STRING:
+ case PlSqlParser.STRIPE_COLUMNS:
+ case PlSqlParser.STRIPE_WIDTH:
+ case PlSqlParser.STRIP:
+ case PlSqlParser.STRUCTURE:
+ case PlSqlParser.SUBMULTISET:
+ case PlSqlParser.SUBPARTITION_REL:
+ case PlSqlParser.SUBPARTITIONS:
+ case PlSqlParser.SUBPARTITION:
+ case PlSqlParser.SUBQUERIES:
+ case PlSqlParser.SUBQUERY_PRUNING:
+ case PlSqlParser.SUBSCRIBE:
+ case PlSqlParser.SUBSET:
+ case PlSqlParser.SUBSTITUTABLE:
+ case PlSqlParser.SUBSTR2:
+ case PlSqlParser.SUBSTR4:
+ case PlSqlParser.SUBSTRB:
+ case PlSqlParser.SUBSTRC:
+ case PlSqlParser.SUBTYPE:
+ case PlSqlParser.SUCCESSFUL:
+ case PlSqlParser.SUCCESS:
+ case PlSqlParser.SUMMARY:
+ case PlSqlParser.SUPPLEMENTAL:
+ case PlSqlParser.SUSPEND:
+ case PlSqlParser.SWAP_JOIN_INPUTS:
+ case PlSqlParser.SWITCHOVER:
+ case PlSqlParser.SWITCH:
+ case PlSqlParser.SYNCHRONOUS:
+ case PlSqlParser.SYNC:
+ case PlSqlParser.SYSASM:
+ case PlSqlParser.SYS_AUDIT:
+ case PlSqlParser.SYSAUX:
+ case PlSqlParser.SYSBACKUP:
+ case PlSqlParser.SYS_CHECKACL:
+ case PlSqlParser.SYS_CHECK_PRIVILEGE:
+ case PlSqlParser.SYS_CONNECT_BY_PATH:
+ case PlSqlParser.SYS_CONTEXT:
+ case PlSqlParser.SYSDATE:
+ case PlSqlParser.SYSDBA:
+ case PlSqlParser.SYS_DBURIGEN:
+ case PlSqlParser.SYSDG:
+ case PlSqlParser.SYS_DL_CURSOR:
+ case PlSqlParser.SYS_DM_RXFORM_CHR:
+ case PlSqlParser.SYS_DM_RXFORM_NUM:
+ case PlSqlParser.SYS_DOM_COMPARE:
+ case PlSqlParser.SYS_DST_PRIM2SEC:
+ case PlSqlParser.SYS_DST_SEC2PRIM:
+ case PlSqlParser.SYS_ET_BFILE_TO_RAW:
+ case PlSqlParser.SYS_ET_BLOB_TO_IMAGE:
+ case PlSqlParser.SYS_ET_IMAGE_TO_BLOB:
+ case PlSqlParser.SYS_ET_RAW_TO_BFILE:
+ case PlSqlParser.SYS_EXTPDTXT:
+ case PlSqlParser.SYS_EXTRACT_UTC:
+ case PlSqlParser.SYS_FBT_INSDEL:
+ case PlSqlParser.SYS_FILTER_ACLS:
+ case PlSqlParser.SYS_FNMATCHES:
+ case PlSqlParser.SYS_FNREPLACE:
+ case PlSqlParser.SYS_GET_ACLIDS:
+ case PlSqlParser.SYS_GET_COL_ACLIDS:
+ case PlSqlParser.SYS_GET_PRIVILEGES:
+ case PlSqlParser.SYS_GETTOKENID:
+ case PlSqlParser.SYS_GETXTIVAL:
+ case PlSqlParser.SYS_GUID:
+ case PlSqlParser.SYSGUID:
+ case PlSqlParser.SYSKM:
+ case PlSqlParser.SYS_MAKE_XMLNODEID:
+ case PlSqlParser.SYS_MAKEXML:
+ case PlSqlParser.SYS_MKXMLATTR:
+ case PlSqlParser.SYS_MKXTI:
+ case PlSqlParser.SYSOBJ:
+ case PlSqlParser.SYS_OP_ADT2BIN:
+ case PlSqlParser.SYS_OP_ADTCONS:
+ case PlSqlParser.SYS_OP_ALSCRVAL:
+ case PlSqlParser.SYS_OP_ATG:
+ case PlSqlParser.SYS_OP_BIN2ADT:
+ case PlSqlParser.SYS_OP_BITVEC:
+ case PlSqlParser.SYS_OP_BL2R:
+ case PlSqlParser.SYS_OP_BLOOM_FILTER_LIST:
+ case PlSqlParser.SYS_OP_BLOOM_FILTER:
+ case PlSqlParser.SYS_OP_C2C:
+ case PlSqlParser.SYS_OP_CAST:
+ case PlSqlParser.SYS_OP_CEG:
+ case PlSqlParser.SYS_OP_CL2C:
+ case PlSqlParser.SYS_OP_COMBINED_HASH:
+ case PlSqlParser.SYS_OP_COMP:
+ case PlSqlParser.SYS_OP_CONVERT:
+ case PlSqlParser.SYS_OP_COUNTCHG:
+ case PlSqlParser.SYS_OP_CSCONV:
+ case PlSqlParser.SYS_OP_CSCONVTEST:
+ case PlSqlParser.SYS_OP_CSR:
+ case PlSqlParser.SYS_OP_CSX_PATCH:
+ case PlSqlParser.SYS_OP_CYCLED_SEQ:
+ case PlSqlParser.SYS_OP_DECOMP:
+ case PlSqlParser.SYS_OP_DESCEND:
+ case PlSqlParser.SYS_OP_DISTINCT:
+ case PlSqlParser.SYS_OP_DRA:
+ case PlSqlParser.SYS_OP_DUMP:
+ case PlSqlParser.SYS_OP_DV_CHECK:
+ case PlSqlParser.SYS_OP_ENFORCE_NOT_NULL:
+ case PlSqlParser.SYSOPER:
+ case PlSqlParser.SYS_OP_EXTRACT:
+ case PlSqlParser.SYS_OP_GROUPING:
+ case PlSqlParser.SYS_OP_GUID:
+ case PlSqlParser.SYS_OP_HASH:
+ case PlSqlParser.SYS_OP_IIX:
+ case PlSqlParser.SYS_OP_ITR:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_CREATE:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_FILTER_LIST:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_FILTER:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_SUCCEEDED:
+ case PlSqlParser.SYS_OP_KEY_VECTOR_USE:
+ case PlSqlParser.SYS_OP_LBID:
+ case PlSqlParser.SYS_OP_LOBLOC2BLOB:
+ case PlSqlParser.SYS_OP_LOBLOC2CLOB:
+ case PlSqlParser.SYS_OP_LOBLOC2ID:
+ case PlSqlParser.SYS_OP_LOBLOC2NCLOB:
+ case PlSqlParser.SYS_OP_LOBLOC2TYP:
+ case PlSqlParser.SYS_OP_LSVI:
+ case PlSqlParser.SYS_OP_LVL:
+ case PlSqlParser.SYS_OP_MAKEOID:
+ case PlSqlParser.SYS_OP_MAP_NONNULL:
+ case PlSqlParser.SYS_OP_MSR:
+ case PlSqlParser.SYS_OP_NICOMBINE:
+ case PlSqlParser.SYS_OP_NIEXTRACT:
+ case PlSqlParser.SYS_OP_NII:
+ case PlSqlParser.SYS_OP_NIX:
+ case PlSqlParser.SYS_OP_NOEXPAND:
+ case PlSqlParser.SYS_OP_NTCIMG:
+ case PlSqlParser.SYS_OP_NUMTORAW:
+ case PlSqlParser.SYS_OP_OIDVALUE:
+ case PlSqlParser.SYS_OP_OPNSIZE:
+ case PlSqlParser.SYS_OP_PAR_1:
+ case PlSqlParser.SYS_OP_PARGID_1:
+ case PlSqlParser.SYS_OP_PARGID:
+ case PlSqlParser.SYS_OP_PAR:
+ case PlSqlParser.SYS_OP_PART_ID:
+ case PlSqlParser.SYS_OP_PIVOT:
+ case PlSqlParser.SYS_OP_R2O:
+ case PlSqlParser.SYS_OP_RAWTONUM:
+ case PlSqlParser.SYS_OP_RDTM:
+ case PlSqlParser.SYS_OP_REF:
+ case PlSqlParser.SYS_OP_RMTD:
+ case PlSqlParser.SYS_OP_ROWIDTOOBJ:
+ case PlSqlParser.SYS_OP_RPB:
+ case PlSqlParser.SYS_OPTLOBPRBSC:
+ case PlSqlParser.SYS_OP_TOSETID:
+ case PlSqlParser.SYS_OP_TPR:
+ case PlSqlParser.SYS_OP_TRTB:
+ case PlSqlParser.SYS_OPTXICMP:
+ case PlSqlParser.SYS_OPTXQCASTASNQ:
+ case PlSqlParser.SYS_OP_UNDESCEND:
+ case PlSqlParser.SYS_OP_VECAND:
+ case PlSqlParser.SYS_OP_VECBIT:
+ case PlSqlParser.SYS_OP_VECOR:
+ case PlSqlParser.SYS_OP_VECXOR:
+ case PlSqlParser.SYS_OP_VERSION:
+ case PlSqlParser.SYS_OP_VREF:
+ case PlSqlParser.SYS_OP_VVD:
+ case PlSqlParser.SYS_OP_XMLCONS_FOR_CSX:
+ case PlSqlParser.SYS_OP_XPTHATG:
+ case PlSqlParser.SYS_OP_XPTHIDX:
+ case PlSqlParser.SYS_OP_XPTHOP:
+ case PlSqlParser.SYS_OP_XTXT2SQLT:
+ case PlSqlParser.SYS_OP_ZONE_ID:
+ case PlSqlParser.SYS_ORDERKEY_DEPTH:
+ case PlSqlParser.SYS_ORDERKEY_MAXCHILD:
+ case PlSqlParser.SYS_ORDERKEY_PARENT:
+ case PlSqlParser.SYS_PARALLEL_TXN:
+ case PlSqlParser.SYS_PATHID_IS_ATTR:
+ case PlSqlParser.SYS_PATHID_IS_NMSPC:
+ case PlSqlParser.SYS_PATHID_LASTNAME:
+ case PlSqlParser.SYS_PATHID_LASTNMSPC:
+ case PlSqlParser.SYS_PATH_REVERSE:
+ case PlSqlParser.SYS_PXQEXTRACT:
+ case PlSqlParser.SYS_RAW_TO_XSID:
+ case PlSqlParser.SYS_RID_ORDER:
+ case PlSqlParser.SYS_ROW_DELTA:
+ case PlSqlParser.SYS_SC_2_XMLT:
+ case PlSqlParser.SYS_SYNRCIREDO:
+ case PlSqlParser.SYSTEM_DEFINED:
+ case PlSqlParser.SYSTEM:
+ case PlSqlParser.SYSTIMESTAMP:
+ case PlSqlParser.SYS_TYPEID:
+ case PlSqlParser.SYS_UMAKEXML:
+ case PlSqlParser.SYS_XMLANALYZE:
+ case PlSqlParser.SYS_XMLCONTAINS:
+ case PlSqlParser.SYS_XMLCONV:
+ case PlSqlParser.SYS_XMLEXNSURI:
+ case PlSqlParser.SYS_XMLGEN:
+ case PlSqlParser.SYS_XMLI_LOC_ISNODE:
+ case PlSqlParser.SYS_XMLI_LOC_ISTEXT:
+ case PlSqlParser.SYS_XMLINSTR:
+ case PlSqlParser.SYS_XMLLOCATOR_GETSVAL:
+ case PlSqlParser.SYS_XMLNODEID_GETCID:
+ case PlSqlParser.SYS_XMLNODEID_GETLOCATOR:
+ case PlSqlParser.SYS_XMLNODEID_GETOKEY:
+ case PlSqlParser.SYS_XMLNODEID_GETPATHID:
+ case PlSqlParser.SYS_XMLNODEID_GETPTRID:
+ case PlSqlParser.SYS_XMLNODEID_GETRID:
+ case PlSqlParser.SYS_XMLNODEID_GETSVAL:
+ case PlSqlParser.SYS_XMLNODEID_GETTID:
+ case PlSqlParser.SYS_XMLNODEID:
+ case PlSqlParser.SYS_XMLT_2_SC:
+ case PlSqlParser.SYS_XMLTRANSLATE:
+ case PlSqlParser.SYS_XMLTYPE2SQL:
+ case PlSqlParser.SYS_XQ_ASQLCNV:
+ case PlSqlParser.SYS_XQ_ATOMCNVCHK:
+ case PlSqlParser.SYS_XQBASEURI:
+ case PlSqlParser.SYS_XQCASTABLEERRH:
+ case PlSqlParser.SYS_XQCODEP2STR:
+ case PlSqlParser.SYS_XQCODEPEQ:
+ case PlSqlParser.SYS_XQCON2SEQ:
+ case PlSqlParser.SYS_XQCONCAT:
+ case PlSqlParser.SYS_XQDELETE:
+ case PlSqlParser.SYS_XQDFLTCOLATION:
+ case PlSqlParser.SYS_XQDOC:
+ case PlSqlParser.SYS_XQDOCURI:
+ case PlSqlParser.SYS_XQDURDIV:
+ case PlSqlParser.SYS_XQED4URI:
+ case PlSqlParser.SYS_XQENDSWITH:
+ case PlSqlParser.SYS_XQERRH:
+ case PlSqlParser.SYS_XQERR:
+ case PlSqlParser.SYS_XQESHTMLURI:
+ case PlSqlParser.SYS_XQEXLOBVAL:
+ case PlSqlParser.SYS_XQEXSTWRP:
+ case PlSqlParser.SYS_XQEXTRACT:
+ case PlSqlParser.SYS_XQEXTRREF:
+ case PlSqlParser.SYS_XQEXVAL:
+ case PlSqlParser.SYS_XQFB2STR:
+ case PlSqlParser.SYS_XQFNBOOL:
+ case PlSqlParser.SYS_XQFNCMP:
+ case PlSqlParser.SYS_XQFNDATIM:
+ case PlSqlParser.SYS_XQFNLNAME:
+ case PlSqlParser.SYS_XQFNNM:
+ case PlSqlParser.SYS_XQFNNSURI:
+ case PlSqlParser.SYS_XQFNPREDTRUTH:
+ case PlSqlParser.SYS_XQFNQNM:
+ case PlSqlParser.SYS_XQFNROOT:
+ case PlSqlParser.SYS_XQFORMATNUM:
+ case PlSqlParser.SYS_XQFTCONTAIN:
+ case PlSqlParser.SYS_XQFUNCR:
+ case PlSqlParser.SYS_XQGETCONTENT:
+ case PlSqlParser.SYS_XQINDXOF:
+ case PlSqlParser.SYS_XQINSERT:
+ case PlSqlParser.SYS_XQINSPFX:
+ case PlSqlParser.SYS_XQIRI2URI:
+ case PlSqlParser.SYS_XQLANG:
+ case PlSqlParser.SYS_XQLLNMFRMQNM:
+ case PlSqlParser.SYS_XQMKNODEREF:
+ case PlSqlParser.SYS_XQNILLED:
+ case PlSqlParser.SYS_XQNODENAME:
+ case PlSqlParser.SYS_XQNORMSPACE:
+ case PlSqlParser.SYS_XQNORMUCODE:
+ case PlSqlParser.SYS_XQ_NRNG:
+ case PlSqlParser.SYS_XQNSP4PFX:
+ case PlSqlParser.SYS_XQNSPFRMQNM:
+ case PlSqlParser.SYS_XQPFXFRMQNM:
+ case PlSqlParser.SYS_XQ_PKSQL2XML:
+ case PlSqlParser.SYS_XQPOLYABS:
+ case PlSqlParser.SYS_XQPOLYADD:
+ case PlSqlParser.SYS_XQPOLYCEL:
+ case PlSqlParser.SYS_XQPOLYCSTBL:
+ case PlSqlParser.SYS_XQPOLYCST:
+ case PlSqlParser.SYS_XQPOLYDIV:
+ case PlSqlParser.SYS_XQPOLYFLR:
+ case PlSqlParser.SYS_XQPOLYMOD:
+ case PlSqlParser.SYS_XQPOLYMUL:
+ case PlSqlParser.SYS_XQPOLYRND:
+ case PlSqlParser.SYS_XQPOLYSQRT:
+ case PlSqlParser.SYS_XQPOLYSUB:
+ case PlSqlParser.SYS_XQPOLYUMUS:
+ case PlSqlParser.SYS_XQPOLYUPLS:
+ case PlSqlParser.SYS_XQPOLYVEQ:
+ case PlSqlParser.SYS_XQPOLYVGE:
+ case PlSqlParser.SYS_XQPOLYVGT:
+ case PlSqlParser.SYS_XQPOLYVLE:
+ case PlSqlParser.SYS_XQPOLYVLT:
+ case PlSqlParser.SYS_XQPOLYVNE:
+ case PlSqlParser.SYS_XQREF2VAL:
+ case PlSqlParser.SYS_XQRENAME:
+ case PlSqlParser.SYS_XQREPLACE:
+ case PlSqlParser.SYS_XQRESVURI:
+ case PlSqlParser.SYS_XQRNDHALF2EVN:
+ case PlSqlParser.SYS_XQRSLVQNM:
+ case PlSqlParser.SYS_XQRYENVPGET:
+ case PlSqlParser.SYS_XQRYVARGET:
+ case PlSqlParser.SYS_XQRYWRP:
+ case PlSqlParser.SYS_XQSEQ2CON4XC:
+ case PlSqlParser.SYS_XQSEQ2CON:
+ case PlSqlParser.SYS_XQSEQDEEPEQ:
+ case PlSqlParser.SYS_XQSEQINSB:
+ case PlSqlParser.SYS_XQSEQRM:
+ case PlSqlParser.SYS_XQSEQRVS:
+ case PlSqlParser.SYS_XQSEQSUB:
+ case PlSqlParser.SYS_XQSEQTYPMATCH:
+ case PlSqlParser.SYS_XQSTARTSWITH:
+ case PlSqlParser.SYS_XQSTATBURI:
+ case PlSqlParser.SYS_XQSTR2CODEP:
+ case PlSqlParser.SYS_XQSTRJOIN:
+ case PlSqlParser.SYS_XQSUBSTRAFT:
+ case PlSqlParser.SYS_XQSUBSTRBEF:
+ case PlSqlParser.SYS_XQTOKENIZE:
+ case PlSqlParser.SYS_XQTREATAS:
+ case PlSqlParser.SYS_XQ_UPKXML2SQL:
+ case PlSqlParser.SYS_XQXFORM:
+ case PlSqlParser.SYS_XSID_TO_RAW:
+ case PlSqlParser.SYS_ZMAP_FILTER:
+ case PlSqlParser.SYS_ZMAP_REFRESH:
+ case PlSqlParser.TABLE_LOOKUP_BY_NL:
+ case PlSqlParser.TABLESPACE_NO:
+ case PlSqlParser.TABLESPACE:
+ case PlSqlParser.TABLES:
+ case PlSqlParser.TABLE_STATS:
+ case PlSqlParser.TABLE:
+ case PlSqlParser.TABNO:
+ case PlSqlParser.TAG:
+ case PlSqlParser.TANH:
+ case PlSqlParser.TAN:
+ case PlSqlParser.TBLORIDXPARTNUM:
+ case PlSqlParser.TEMPFILE:
+ case PlSqlParser.TEMPLATE:
+ case PlSqlParser.TEMPORARY:
+ case PlSqlParser.TEMP_TABLE:
+ case PlSqlParser.TEST:
+ case PlSqlParser.TEXT:
+ case PlSqlParser.THAN:
+ case PlSqlParser.THEN:
+ case PlSqlParser.THE:
+ case PlSqlParser.THREAD:
+ case PlSqlParser.THROUGH:
+ case PlSqlParser.TIER:
+ case PlSqlParser.TIES:
+ case PlSqlParser.TIMEOUT:
+ case PlSqlParser.TIMESTAMP_LTZ_UNCONSTRAINED:
+ case PlSqlParser.TIMESTAMP:
+ case PlSqlParser.TIMESTAMP_TZ_UNCONSTRAINED:
+ case PlSqlParser.TIMESTAMP_UNCONSTRAINED:
+ case PlSqlParser.TIMES:
+ case PlSqlParser.TIME:
+ case PlSqlParser.TIMEZONE_ABBR:
+ case PlSqlParser.TIMEZONE_HOUR:
+ case PlSqlParser.TIMEZONE_MINUTE:
+ case PlSqlParser.TIMEZONE_OFFSET:
+ case PlSqlParser.TIMEZONE_REGION:
+ case PlSqlParser.TIME_ZONE:
+ case PlSqlParser.TIV_GB:
+ case PlSqlParser.TIV_SSF:
+ case PlSqlParser.TO_ACLID:
+ case PlSqlParser.TO_BINARY_DOUBLE:
+ case PlSqlParser.TO_BINARY_FLOAT:
+ case PlSqlParser.TO_BLOB:
+ case PlSqlParser.TO_CLOB:
+ case PlSqlParser.TO_DSINTERVAL:
+ case PlSqlParser.TO_LOB:
+ case PlSqlParser.TO_MULTI_BYTE:
+ case PlSqlParser.TO_NCHAR:
+ case PlSqlParser.TO_NCLOB:
+ case PlSqlParser.TO_NUMBER:
+ case PlSqlParser.TOPLEVEL:
+ case PlSqlParser.TO_SINGLE_BYTE:
+ case PlSqlParser.TO_TIMESTAMP:
+ case PlSqlParser.TO_TIMESTAMP_TZ:
+ case PlSqlParser.TO_TIME:
+ case PlSqlParser.TO_TIME_TZ:
+ case PlSqlParser.TO_YMINTERVAL:
+ case PlSqlParser.TRACE:
+ case PlSqlParser.TRACING:
+ case PlSqlParser.TRACKING:
+ case PlSqlParser.TRAILING:
+ case PlSqlParser.TRANSACTION:
+ case PlSqlParser.TRANSFORM_DISTINCT_AGG:
+ case PlSqlParser.TRANSITIONAL:
+ case PlSqlParser.TRANSITION:
+ case PlSqlParser.TRANSLATE:
+ case PlSqlParser.TRANSLATION:
+ case PlSqlParser.TREAT:
+ case PlSqlParser.TRIGGERS:
+ case PlSqlParser.TRIGGER:
+ case PlSqlParser.TRUE:
+ case PlSqlParser.TRUNCATE:
+ case PlSqlParser.TRUNC:
+ case PlSqlParser.TRUSTED:
+ case PlSqlParser.TRUST:
+ case PlSqlParser.TUNING:
+ case PlSqlParser.TX:
+ case PlSqlParser.TYPES:
+ case PlSqlParser.TYPE:
+ case PlSqlParser.TZ_OFFSET:
+ case PlSqlParser.UB2:
+ case PlSqlParser.UBA:
+ case PlSqlParser.UCS2:
+ case PlSqlParser.UID:
+ case PlSqlParser.UNARCHIVED:
+ case PlSqlParser.UNBOUNDED:
+ case PlSqlParser.UNBOUND:
+ case PlSqlParser.UNCONDITIONAL:
+ case PlSqlParser.UNDER:
+ case PlSqlParser.UNDO:
+ case PlSqlParser.UNDROP:
+ case PlSqlParser.UNIFORM:
+ case PlSqlParser.UNISTR:
+ case PlSqlParser.UNLIMITED:
+ case PlSqlParser.UNLOAD:
+ case PlSqlParser.UNLOCK:
+ case PlSqlParser.UNMATCHED:
+ case PlSqlParser.UNNEST_INNERJ_DISTINCT_VIEW:
+ case PlSqlParser.UNNEST_NOSEMIJ_NODISTINCTVIEW:
+ case PlSqlParser.UNNEST_SEMIJ_VIEW:
+ case PlSqlParser.UNNEST:
+ case PlSqlParser.UNPACKED:
+ case PlSqlParser.UNPIVOT:
+ case PlSqlParser.UNPLUG:
+ case PlSqlParser.UNPROTECTED:
+ case PlSqlParser.UNQUIESCE:
+ case PlSqlParser.UNRECOVERABLE:
+ case PlSqlParser.UNRESTRICTED:
+ case PlSqlParser.UNSUBSCRIBE:
+ case PlSqlParser.UNTIL:
+ case PlSqlParser.UNUSABLE:
+ case PlSqlParser.UNUSED:
+ case PlSqlParser.UPDATABLE:
+ case PlSqlParser.UPDATED:
+ case PlSqlParser.UPDATEXML:
+ case PlSqlParser.UPD_INDEXES:
+ case PlSqlParser.UPD_JOININDEX:
+ case PlSqlParser.UPGRADE:
+ case PlSqlParser.UPPER:
+ case PlSqlParser.UPSERT:
+ case PlSqlParser.UROWID:
+ case PlSqlParser.USABLE:
+ case PlSqlParser.USAGE:
+ case PlSqlParser.USE_ANTI:
+ case PlSqlParser.USE_CONCAT:
+ case PlSqlParser.USE_CUBE:
+ case PlSqlParser.USE_HASH_AGGREGATION:
+ case PlSqlParser.USE_HASH_GBY_FOR_PUSHDOWN:
+ case PlSqlParser.USE_HASH:
+ case PlSqlParser.USE_HIDDEN_PARTITIONS:
+ case PlSqlParser.USE_INVISIBLE_INDEXES:
+ case PlSqlParser.USE_MERGE_CARTESIAN:
+ case PlSqlParser.USE_MERGE:
+ case PlSqlParser.USE_NL:
+ case PlSqlParser.USE_NL_WITH_INDEX:
+ case PlSqlParser.USE_PRIVATE_OUTLINES:
+ case PlSqlParser.USER_DATA:
+ case PlSqlParser.USER_DEFINED:
+ case PlSqlParser.USERENV:
+ case PlSqlParser.USERGROUP:
+ case PlSqlParser.USER_RECYCLEBIN:
+ case PlSqlParser.USERS:
+ case PlSqlParser.USER_TABLESPACES:
+ case PlSqlParser.USER:
+ case PlSqlParser.USE_SEMI:
+ case PlSqlParser.USE_STORED_OUTLINES:
+ case PlSqlParser.USE_TTT_FOR_GSETS:
+ case PlSqlParser.USE:
+ case PlSqlParser.USE_VECTOR_AGGREGATION:
+ case PlSqlParser.USE_WEAK_NAME_RESL:
+ case PlSqlParser.USING_NO_EXPAND:
+ case PlSqlParser.USING:
+ case PlSqlParser.UTF16BE:
+ case PlSqlParser.UTF16LE:
+ case PlSqlParser.UTF32:
+ case PlSqlParser.UTF8:
+ case PlSqlParser.V1:
+ case PlSqlParser.V2:
+ case PlSqlParser.VALIDATE:
+ case PlSqlParser.VALIDATION:
+ case PlSqlParser.VALID_TIME_END:
+ case PlSqlParser.VALUE:
+ case PlSqlParser.VARCHAR2:
+ case PlSqlParser.VARCHAR:
+ case PlSqlParser.VARIABLE:
+ case PlSqlParser.VAR_POP:
+ case PlSqlParser.VARRAYS:
+ case PlSqlParser.VARRAY:
+ case PlSqlParser.VAR_SAMP:
+ case PlSqlParser.VARYING:
+ case PlSqlParser.VECTOR_READ_TRACE:
+ case PlSqlParser.VECTOR_READ:
+ case PlSqlParser.VECTOR_TRANSFORM_DIMS:
+ case PlSqlParser.VECTOR_TRANSFORM_FACT:
+ case PlSqlParser.VECTOR_TRANSFORM:
+ case PlSqlParser.VERIFIER:
+ case PlSqlParser.VERIFY:
+ case PlSqlParser.VERSIONING:
+ case PlSqlParser.VERSIONS_ENDSCN:
+ case PlSqlParser.VERSIONS_ENDTIME:
+ case PlSqlParser.VERSIONS_OPERATION:
+ case PlSqlParser.VERSIONS_STARTSCN:
+ case PlSqlParser.VERSIONS_STARTTIME:
+ case PlSqlParser.VERSIONS:
+ case PlSqlParser.VERSIONS_XID:
+ case PlSqlParser.VERSION:
+ case PlSqlParser.VIOLATION:
+ case PlSqlParser.VIRTUAL:
+ case PlSqlParser.VISIBILITY:
+ case PlSqlParser.VISIBLE:
+ case PlSqlParser.VOLUME:
+ case PlSqlParser.VSIZE:
+ case PlSqlParser.WAIT:
+ case PlSqlParser.WALLET:
+ case PlSqlParser.WARNING:
+ case PlSqlParser.WEEKS:
+ case PlSqlParser.WEEK:
+ case PlSqlParser.WELLFORMED:
+ case PlSqlParser.WHENEVER:
+ case PlSqlParser.WHEN:
+ case PlSqlParser.WHILE:
+ case PlSqlParser.WHITESPACE:
+ case PlSqlParser.WIDTH_BUCKET:
+ case PlSqlParser.WITHIN:
+ case PlSqlParser.WITHOUT:
+ case PlSqlParser.WITH_PLSQL:
+ case PlSqlParser.WORK:
+ case PlSqlParser.WRAPPED:
+ case PlSqlParser.WRAPPER:
+ case PlSqlParser.WRITE:
+ case PlSqlParser.XDB_FASTPATH_INSERT:
+ case PlSqlParser.X_DYN_PRUNE:
+ case PlSqlParser.XID:
+ case PlSqlParser.XML2OBJECT:
+ case PlSqlParser.XMLAGG:
+ case PlSqlParser.XMLATTRIBUTES:
+ case PlSqlParser.XMLCAST:
+ case PlSqlParser.XMLCDATA:
+ case PlSqlParser.XMLCOLATTVAL:
+ case PlSqlParser.XMLCOMMENT:
+ case PlSqlParser.XMLCONCAT:
+ case PlSqlParser.XMLDIFF:
+ case PlSqlParser.XML_DML_RWT_STMT:
+ case PlSqlParser.XMLELEMENT:
+ case PlSqlParser.XMLEXISTS2:
+ case PlSqlParser.XMLEXISTS:
+ case PlSqlParser.XMLFOREST:
+ case PlSqlParser.XMLINDEX_REWRITE_IN_SELECT:
+ case PlSqlParser.XMLINDEX_REWRITE:
+ case PlSqlParser.XMLINDEX_SEL_IDX_TBL:
+ case PlSqlParser.XMLISNODE:
+ case PlSqlParser.XMLISVALID:
+ case PlSqlParser.XMLNAMESPACES:
+ case PlSqlParser.XMLPARSE:
+ case PlSqlParser.XMLPATCH:
+ case PlSqlParser.XMLPI:
+ case PlSqlParser.XMLQUERYVAL:
+ case PlSqlParser.XMLQUERY:
+ case PlSqlParser.XMLROOT:
+ case PlSqlParser.XMLSCHEMA:
+ case PlSqlParser.XMLSERIALIZE:
+ case PlSqlParser.XMLTABLE:
+ case PlSqlParser.XMLTRANSFORMBLOB:
+ case PlSqlParser.XMLTRANSFORM:
+ case PlSqlParser.XMLTYPE:
+ case PlSqlParser.XML:
+ case PlSqlParser.XPATHTABLE:
+ case PlSqlParser.XS_SYS_CONTEXT:
+ case PlSqlParser.XS:
+ case PlSqlParser.YEARS:
+ case PlSqlParser.YEAR:
+ case PlSqlParser.YES:
+ case PlSqlParser.YMINTERVAL_UNCONSTRAINED:
+ case PlSqlParser.ZONEMAP:
+ case PlSqlParser.ZONE:
+ case PlSqlParser.PREDICTION:
+ case PlSqlParser.PREDICTION_BOUNDS:
+ case PlSqlParser.PREDICTION_COST:
+ case PlSqlParser.PREDICTION_DETAILS:
+ case PlSqlParser.PREDICTION_PROBABILITY:
+ case PlSqlParser.PREDICTION_SET:
+ case PlSqlParser.CUME_DIST:
+ case PlSqlParser.DENSE_RANK:
+ case PlSqlParser.LISTAGG:
+ case PlSqlParser.PERCENT_RANK:
+ case PlSqlParser.PERCENTILE_CONT:
+ case PlSqlParser.PERCENTILE_DISC:
+ case PlSqlParser.RANK:
+ case PlSqlParser.AVG:
+ case PlSqlParser.CORR:
+ case PlSqlParser.COVAR_:
+ case PlSqlParser.LAG:
+ case PlSqlParser.LEAD:
+ case PlSqlParser.MAX:
+ case PlSqlParser.MEDIAN:
+ case PlSqlParser.MIN:
+ case PlSqlParser.NTILE:
+ case PlSqlParser.NVL:
+ case PlSqlParser.RATIO_TO_REPORT:
+ case PlSqlParser.REGR_:
+ case PlSqlParser.ROUND:
+ case PlSqlParser.ROW_NUMBER:
+ case PlSqlParser.SUBSTR:
+ case PlSqlParser.TO_CHAR:
+ case PlSqlParser.TRIM:
+ case PlSqlParser.SUM:
+ case PlSqlParser.STDDEV:
+ case PlSqlParser.VAR_:
+ case PlSqlParser.VARIANCE:
+ case PlSqlParser.LEAST:
+ case PlSqlParser.GREATEST:
+ case PlSqlParser.TO_DATE:
+ case PlSqlParser.PERIOD:
+ case PlSqlParser.REGULAR_ID:
+ this.state = 7417;
+ this.tablespace();
+ break;
+ case PlSqlParser.DEFAULT:
+ this.state = 7418;
+ this.match(PlSqlParser.DEFAULT);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ break;
+ case PlSqlParser.COMPRESS:
+ case PlSqlParser.NOCOMPRESS:
+ this.state = 7421;
+ this.key_compression();
+ break;
+ case PlSqlParser.NOSORT:
+ case PlSqlParser.SORT:
+ this.state = 7422;
+ this.sort_or_nosort();
+ break;
+ case PlSqlParser.REVERSE:
+ this.state = 7423;
+ this.match(PlSqlParser.REVERSE);
+ break;
+ case PlSqlParser.INVISIBLE:
+ case PlSqlParser.VISIBLE:
+ this.state = 7424;
+ this.visible_or_invisible();
+ break;
+ case PlSqlParser.NOPARALLEL:
+ case PlSqlParser.PARALLEL:
+ this.state = 7425;
+ this.parallel_clause();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 7428;
+ this._errHandler.sync(this);
+ _alt = this._interp.adaptivePredict(this._input,922, this._ctx);
+ } while ( _alt!=2 && _alt!=antlr4.atn.ATN.INVALID_ALT_NUMBER );
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Sort_or_nosortContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_sort_or_nosort;
+ return this;
+}
+
+Sort_or_nosortContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Sort_or_nosortContext.prototype.constructor = Sort_or_nosortContext;
+
+Sort_or_nosortContext.prototype.SORT = function() {
+ return this.getToken(PlSqlParser.SORT, 0);
+};
+
+Sort_or_nosortContext.prototype.NOSORT = function() {
+ return this.getToken(PlSqlParser.NOSORT, 0);
+};
+
+Sort_or_nosortContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterSort_or_nosort(this);
+ }
+};
+
+Sort_or_nosortContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitSort_or_nosort(this);
+ }
+};
+
+Sort_or_nosortContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitSort_or_nosort(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Sort_or_nosortContext = Sort_or_nosortContext;
+
+PlSqlParser.prototype.sort_or_nosort = function() {
+
+ var localctx = new Sort_or_nosortContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 770, PlSqlParser.RULE_sort_or_nosort);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7430;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.NOSORT || _la===PlSqlParser.SORT)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Exceptions_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_exceptions_clause;
+ return this;
+}
+
+Exceptions_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Exceptions_clauseContext.prototype.constructor = Exceptions_clauseContext;
+
+Exceptions_clauseContext.prototype.EXCEPTIONS = function() {
+ return this.getToken(PlSqlParser.EXCEPTIONS, 0);
+};
+
+Exceptions_clauseContext.prototype.INTO = function() {
+ return this.getToken(PlSqlParser.INTO, 0);
+};
+
+Exceptions_clauseContext.prototype.tableview_name = function() {
+ return this.getTypedRuleContext(Tableview_nameContext,0);
+};
+
+Exceptions_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterExceptions_clause(this);
+ }
+};
+
+Exceptions_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitExceptions_clause(this);
+ }
+};
+
+Exceptions_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitExceptions_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Exceptions_clauseContext = Exceptions_clauseContext;
+
+PlSqlParser.prototype.exceptions_clause = function() {
+
+ var localctx = new Exceptions_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 772, PlSqlParser.RULE_exceptions_clause);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7432;
+ this.match(PlSqlParser.EXCEPTIONS);
+ this.state = 7433;
+ this.match(PlSqlParser.INTO);
+ this.state = 7434;
+ this.tableview_name();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Move_table_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_move_table_clause;
+ return this;
+}
+
+Move_table_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Move_table_clauseContext.prototype.constructor = Move_table_clauseContext;
+
+Move_table_clauseContext.prototype.MOVE = function() {
+ return this.getToken(PlSqlParser.MOVE, 0);
+};
+
+Move_table_clauseContext.prototype.ONLINE = function() {
+ return this.getToken(PlSqlParser.ONLINE, 0);
+};
+
+Move_table_clauseContext.prototype.segment_attributes_clause = function() {
+ return this.getTypedRuleContext(Segment_attributes_clauseContext,0);
+};
+
+Move_table_clauseContext.prototype.table_compression = function() {
+ return this.getTypedRuleContext(Table_compressionContext,0);
+};
+
+Move_table_clauseContext.prototype.index_org_table_clause = function() {
+ return this.getTypedRuleContext(Index_org_table_clauseContext,0);
+};
+
+Move_table_clauseContext.prototype.parallel_clause = function() {
+ return this.getTypedRuleContext(Parallel_clauseContext,0);
+};
+
+Move_table_clauseContext.prototype.lob_storage_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Lob_storage_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Lob_storage_clauseContext,i);
+ }
+};
+
+Move_table_clauseContext.prototype.varray_col_properties = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Varray_col_propertiesContext);
+ } else {
+ return this.getTypedRuleContext(Varray_col_propertiesContext,i);
+ }
+};
+
+Move_table_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterMove_table_clause(this);
+ }
+};
+
+Move_table_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitMove_table_clause(this);
+ }
+};
+
+Move_table_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitMove_table_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Move_table_clauseContext = Move_table_clauseContext;
+
+PlSqlParser.prototype.move_table_clause = function() {
+
+ var localctx = new Move_table_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 774, PlSqlParser.RULE_move_table_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7436;
+ this.match(PlSqlParser.MOVE);
+ this.state = 7438;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.ONLINE) {
+ this.state = 7437;
+ this.match(PlSqlParser.ONLINE);
+ }
+
+ this.state = 7441;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.FILESYSTEM_LIKE_LOGGING || _la===PlSqlParser.INITRANS || _la===PlSqlParser.LOGGING || _la===PlSqlParser.NOLOGGING || _la===PlSqlParser.PCTFREE || _la===PlSqlParser.PCTUSED || _la===PlSqlParser.STORAGE || _la===PlSqlParser.TABLESPACE) {
+ this.state = 7440;
+ this.segment_attributes_clause();
+ }
+
+ this.state = 7444;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,925,this._ctx);
+ if(la_===1) {
+ this.state = 7443;
+ this.table_compression();
+
+ }
+ this.state = 7447;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.COMPRESS || _la===PlSqlParser.MAPPING || _la===PlSqlParser.NOCOMPRESS || _la===PlSqlParser.NOMAPPING || _la===PlSqlParser.PCTTHRESHOLD) {
+ this.state = 7446;
+ this.index_org_table_clause();
+ }
+
+ this.state = 7455;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.LOB || _la===PlSqlParser.VARRAY) {
+ this.state = 7451;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 7451;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.LOB:
+ this.state = 7449;
+ this.lob_storage_clause();
+ break;
+ case PlSqlParser.VARRAY:
+ this.state = 7450;
+ this.varray_col_properties();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 7453;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(_la===PlSqlParser.LOB || _la===PlSqlParser.VARRAY);
+ }
+
+ this.state = 7458;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.NOPARALLEL || _la===PlSqlParser.PARALLEL) {
+ this.state = 7457;
+ this.parallel_clause();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Index_org_table_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_index_org_table_clause;
+ return this;
+}
+
+Index_org_table_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Index_org_table_clauseContext.prototype.constructor = Index_org_table_clauseContext;
+
+Index_org_table_clauseContext.prototype.mapping_table_clause = function() {
+ return this.getTypedRuleContext(Mapping_table_clauseContext,0);
+};
+
+Index_org_table_clauseContext.prototype.PCTTHRESHOLD = function() {
+ return this.getToken(PlSqlParser.PCTTHRESHOLD, 0);
+};
+
+Index_org_table_clauseContext.prototype.UNSIGNED_INTEGER = function() {
+ return this.getToken(PlSqlParser.UNSIGNED_INTEGER, 0);
+};
+
+Index_org_table_clauseContext.prototype.key_compression = function() {
+ return this.getTypedRuleContext(Key_compressionContext,0);
+};
+
+Index_org_table_clauseContext.prototype.index_org_overflow_clause = function() {
+ return this.getTypedRuleContext(Index_org_overflow_clauseContext,0);
+};
+
+Index_org_table_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterIndex_org_table_clause(this);
+ }
+};
+
+Index_org_table_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitIndex_org_table_clause(this);
+ }
+};
+
+Index_org_table_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitIndex_org_table_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Index_org_table_clauseContext = Index_org_table_clauseContext;
+
+PlSqlParser.prototype.index_org_table_clause = function() {
+
+ var localctx = new Index_org_table_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 776, PlSqlParser.RULE_index_org_table_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7464;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.MAPPING:
+ case PlSqlParser.NOMAPPING:
+ this.state = 7460;
+ this.mapping_table_clause();
+ break;
+ case PlSqlParser.PCTTHRESHOLD:
+ this.state = 7461;
+ this.match(PlSqlParser.PCTTHRESHOLD);
+ this.state = 7462;
+ this.match(PlSqlParser.UNSIGNED_INTEGER);
+ break;
+ case PlSqlParser.COMPRESS:
+ case PlSqlParser.NOCOMPRESS:
+ this.state = 7463;
+ this.key_compression();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 7467;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.INCLUDING || _la===PlSqlParser.OVERFLOW) {
+ this.state = 7466;
+ this.index_org_overflow_clause();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Mapping_table_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_mapping_table_clause;
+ return this;
+}
+
+Mapping_table_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Mapping_table_clauseContext.prototype.constructor = Mapping_table_clauseContext;
+
+Mapping_table_clauseContext.prototype.MAPPING = function() {
+ return this.getToken(PlSqlParser.MAPPING, 0);
+};
+
+Mapping_table_clauseContext.prototype.TABLE = function() {
+ return this.getToken(PlSqlParser.TABLE, 0);
+};
+
+Mapping_table_clauseContext.prototype.NOMAPPING = function() {
+ return this.getToken(PlSqlParser.NOMAPPING, 0);
+};
+
+Mapping_table_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterMapping_table_clause(this);
+ }
+};
+
+Mapping_table_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitMapping_table_clause(this);
+ }
+};
+
+Mapping_table_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitMapping_table_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Mapping_table_clauseContext = Mapping_table_clauseContext;
+
+PlSqlParser.prototype.mapping_table_clause = function() {
+
+ var localctx = new Mapping_table_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 778, PlSqlParser.RULE_mapping_table_clause);
+ try {
+ this.state = 7472;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.MAPPING:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7469;
+ this.match(PlSqlParser.MAPPING);
+ this.state = 7470;
+ this.match(PlSqlParser.TABLE);
+ break;
+ case PlSqlParser.NOMAPPING:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 7471;
+ this.match(PlSqlParser.NOMAPPING);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Key_compressionContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_key_compression;
+ return this;
+}
+
+Key_compressionContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Key_compressionContext.prototype.constructor = Key_compressionContext;
+
+Key_compressionContext.prototype.NOCOMPRESS = function() {
+ return this.getToken(PlSqlParser.NOCOMPRESS, 0);
+};
+
+Key_compressionContext.prototype.COMPRESS = function() {
+ return this.getToken(PlSqlParser.COMPRESS, 0);
+};
+
+Key_compressionContext.prototype.UNSIGNED_INTEGER = function() {
+ return this.getToken(PlSqlParser.UNSIGNED_INTEGER, 0);
+};
+
+Key_compressionContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterKey_compression(this);
+ }
+};
+
+Key_compressionContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitKey_compression(this);
+ }
+};
+
+Key_compressionContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitKey_compression(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Key_compressionContext = Key_compressionContext;
+
+PlSqlParser.prototype.key_compression = function() {
+
+ var localctx = new Key_compressionContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 780, PlSqlParser.RULE_key_compression);
+ try {
+ this.state = 7477;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.NOCOMPRESS:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7474;
+ this.match(PlSqlParser.NOCOMPRESS);
+ break;
+ case PlSqlParser.COMPRESS:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 7475;
+ this.match(PlSqlParser.COMPRESS);
+ this.state = 7476;
+ this.match(PlSqlParser.UNSIGNED_INTEGER);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Index_org_overflow_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_index_org_overflow_clause;
+ return this;
+}
+
+Index_org_overflow_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Index_org_overflow_clauseContext.prototype.constructor = Index_org_overflow_clauseContext;
+
+Index_org_overflow_clauseContext.prototype.OVERFLOW = function() {
+ return this.getToken(PlSqlParser.OVERFLOW, 0);
+};
+
+Index_org_overflow_clauseContext.prototype.INCLUDING = function() {
+ return this.getToken(PlSqlParser.INCLUDING, 0);
+};
+
+Index_org_overflow_clauseContext.prototype.column_name = function() {
+ return this.getTypedRuleContext(Column_nameContext,0);
+};
+
+Index_org_overflow_clauseContext.prototype.segment_attributes_clause = function() {
+ return this.getTypedRuleContext(Segment_attributes_clauseContext,0);
+};
+
+Index_org_overflow_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterIndex_org_overflow_clause(this);
+ }
+};
+
+Index_org_overflow_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitIndex_org_overflow_clause(this);
+ }
+};
+
+Index_org_overflow_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitIndex_org_overflow_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Index_org_overflow_clauseContext = Index_org_overflow_clauseContext;
+
+PlSqlParser.prototype.index_org_overflow_clause = function() {
+
+ var localctx = new Index_org_overflow_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 782, PlSqlParser.RULE_index_org_overflow_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7481;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.INCLUDING) {
+ this.state = 7479;
+ this.match(PlSqlParser.INCLUDING);
+ this.state = 7480;
+ this.column_name();
+ }
+
+ this.state = 7483;
+ this.match(PlSqlParser.OVERFLOW);
+ this.state = 7485;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.FILESYSTEM_LIKE_LOGGING || _la===PlSqlParser.INITRANS || _la===PlSqlParser.LOGGING || _la===PlSqlParser.NOLOGGING || _la===PlSqlParser.PCTFREE || _la===PlSqlParser.PCTUSED || _la===PlSqlParser.STORAGE || _la===PlSqlParser.TABLESPACE) {
+ this.state = 7484;
+ this.segment_attributes_clause();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Column_clausesContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_column_clauses;
+ return this;
+}
+
+Column_clausesContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Column_clausesContext.prototype.constructor = Column_clausesContext;
+
+Column_clausesContext.prototype.add_modify_drop_column_clauses = function() {
+ return this.getTypedRuleContext(Add_modify_drop_column_clausesContext,0);
+};
+
+Column_clausesContext.prototype.rename_column_clause = function() {
+ return this.getTypedRuleContext(Rename_column_clauseContext,0);
+};
+
+Column_clausesContext.prototype.modify_collection_retrieval = function() {
+ return this.getTypedRuleContext(Modify_collection_retrievalContext,0);
+};
+
+Column_clausesContext.prototype.modify_lob_storage_clause = function() {
+ return this.getTypedRuleContext(Modify_lob_storage_clauseContext,0);
+};
+
+Column_clausesContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterColumn_clauses(this);
+ }
+};
+
+Column_clausesContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitColumn_clauses(this);
+ }
+};
+
+Column_clausesContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitColumn_clauses(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Column_clausesContext = Column_clausesContext;
+
+PlSqlParser.prototype.column_clauses = function() {
+
+ var localctx = new Column_clausesContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 784, PlSqlParser.RULE_column_clauses);
+ try {
+ this.state = 7491;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,937,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7487;
+ this.add_modify_drop_column_clauses();
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 7488;
+ this.rename_column_clause();
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 7489;
+ this.modify_collection_retrieval();
+ break;
+
+ case 4:
+ this.enterOuterAlt(localctx, 4);
+ this.state = 7490;
+ this.modify_lob_storage_clause();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Modify_collection_retrievalContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_modify_collection_retrieval;
+ return this;
+}
+
+Modify_collection_retrievalContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Modify_collection_retrievalContext.prototype.constructor = Modify_collection_retrievalContext;
+
+Modify_collection_retrievalContext.prototype.MODIFY = function() {
+ return this.getToken(PlSqlParser.MODIFY, 0);
+};
+
+Modify_collection_retrievalContext.prototype.NESTED = function() {
+ return this.getToken(PlSqlParser.NESTED, 0);
+};
+
+Modify_collection_retrievalContext.prototype.TABLE = function() {
+ return this.getToken(PlSqlParser.TABLE, 0);
+};
+
+Modify_collection_retrievalContext.prototype.collection_item = function() {
+ return this.getTypedRuleContext(Collection_itemContext,0);
+};
+
+Modify_collection_retrievalContext.prototype.RETURN = function() {
+ return this.getToken(PlSqlParser.RETURN, 0);
+};
+
+Modify_collection_retrievalContext.prototype.AS = function() {
+ return this.getToken(PlSqlParser.AS, 0);
+};
+
+Modify_collection_retrievalContext.prototype.LOCATOR = function() {
+ return this.getToken(PlSqlParser.LOCATOR, 0);
+};
+
+Modify_collection_retrievalContext.prototype.VALUE = function() {
+ return this.getToken(PlSqlParser.VALUE, 0);
+};
+
+Modify_collection_retrievalContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterModify_collection_retrieval(this);
+ }
+};
+
+Modify_collection_retrievalContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitModify_collection_retrieval(this);
+ }
+};
+
+Modify_collection_retrievalContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitModify_collection_retrieval(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Modify_collection_retrievalContext = Modify_collection_retrievalContext;
+
+PlSqlParser.prototype.modify_collection_retrieval = function() {
+
+ var localctx = new Modify_collection_retrievalContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 786, PlSqlParser.RULE_modify_collection_retrieval);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7493;
+ this.match(PlSqlParser.MODIFY);
+ this.state = 7494;
+ this.match(PlSqlParser.NESTED);
+ this.state = 7495;
+ this.match(PlSqlParser.TABLE);
+ this.state = 7496;
+ this.collection_item();
+ this.state = 7497;
+ this.match(PlSqlParser.RETURN);
+ this.state = 7498;
+ this.match(PlSqlParser.AS);
+ this.state = 7499;
+ _la = this._input.LA(1);
+ if(!(_la===PlSqlParser.LOCATOR || _la===PlSqlParser.VALUE)) {
+ this._errHandler.recoverInline(this);
+ }
+ else {
+ this._errHandler.reportMatch(this);
+ this.consume();
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Collection_itemContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_collection_item;
+ return this;
+}
+
+Collection_itemContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Collection_itemContext.prototype.constructor = Collection_itemContext;
+
+Collection_itemContext.prototype.tableview_name = function() {
+ return this.getTypedRuleContext(Tableview_nameContext,0);
+};
+
+Collection_itemContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterCollection_item(this);
+ }
+};
+
+Collection_itemContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitCollection_item(this);
+ }
+};
+
+Collection_itemContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitCollection_item(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Collection_itemContext = Collection_itemContext;
+
+PlSqlParser.prototype.collection_item = function() {
+
+ var localctx = new Collection_itemContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 788, PlSqlParser.RULE_collection_item);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7501;
+ this.tableview_name();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Rename_column_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_rename_column_clause;
+ return this;
+}
+
+Rename_column_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Rename_column_clauseContext.prototype.constructor = Rename_column_clauseContext;
+
+Rename_column_clauseContext.prototype.RENAME = function() {
+ return this.getToken(PlSqlParser.RENAME, 0);
+};
+
+Rename_column_clauseContext.prototype.COLUMN = function() {
+ return this.getToken(PlSqlParser.COLUMN, 0);
+};
+
+Rename_column_clauseContext.prototype.old_column_name = function() {
+ return this.getTypedRuleContext(Old_column_nameContext,0);
+};
+
+Rename_column_clauseContext.prototype.TO = function() {
+ return this.getToken(PlSqlParser.TO, 0);
+};
+
+Rename_column_clauseContext.prototype.new_column_name = function() {
+ return this.getTypedRuleContext(New_column_nameContext,0);
+};
+
+Rename_column_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterRename_column_clause(this);
+ }
+};
+
+Rename_column_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitRename_column_clause(this);
+ }
+};
+
+Rename_column_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitRename_column_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Rename_column_clauseContext = Rename_column_clauseContext;
+
+PlSqlParser.prototype.rename_column_clause = function() {
+
+ var localctx = new Rename_column_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 790, PlSqlParser.RULE_rename_column_clause);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7503;
+ this.match(PlSqlParser.RENAME);
+ this.state = 7504;
+ this.match(PlSqlParser.COLUMN);
+ this.state = 7505;
+ this.old_column_name();
+ this.state = 7506;
+ this.match(PlSqlParser.TO);
+ this.state = 7507;
+ this.new_column_name();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Old_column_nameContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_old_column_name;
+ return this;
+}
+
+Old_column_nameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Old_column_nameContext.prototype.constructor = Old_column_nameContext;
+
+Old_column_nameContext.prototype.column_name = function() {
+ return this.getTypedRuleContext(Column_nameContext,0);
+};
+
+Old_column_nameContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterOld_column_name(this);
+ }
+};
+
+Old_column_nameContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitOld_column_name(this);
+ }
+};
+
+Old_column_nameContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitOld_column_name(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Old_column_nameContext = Old_column_nameContext;
+
+PlSqlParser.prototype.old_column_name = function() {
+
+ var localctx = new Old_column_nameContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 792, PlSqlParser.RULE_old_column_name);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7509;
+ this.column_name();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function New_column_nameContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_new_column_name;
+ return this;
+}
+
+New_column_nameContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+New_column_nameContext.prototype.constructor = New_column_nameContext;
+
+New_column_nameContext.prototype.column_name = function() {
+ return this.getTypedRuleContext(Column_nameContext,0);
+};
+
+New_column_nameContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterNew_column_name(this);
+ }
+};
+
+New_column_nameContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitNew_column_name(this);
+ }
+};
+
+New_column_nameContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitNew_column_name(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.New_column_nameContext = New_column_nameContext;
+
+PlSqlParser.prototype.new_column_name = function() {
+
+ var localctx = new New_column_nameContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 794, PlSqlParser.RULE_new_column_name);
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7511;
+ this.column_name();
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Add_modify_drop_column_clausesContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_add_modify_drop_column_clauses;
+ return this;
+}
+
+Add_modify_drop_column_clausesContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Add_modify_drop_column_clausesContext.prototype.constructor = Add_modify_drop_column_clausesContext;
+
+Add_modify_drop_column_clausesContext.prototype.add_column_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Add_column_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Add_column_clauseContext,i);
+ }
+};
+
+Add_modify_drop_column_clausesContext.prototype.modify_column_clauses = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Modify_column_clausesContext);
+ } else {
+ return this.getTypedRuleContext(Modify_column_clausesContext,i);
+ }
+};
+
+Add_modify_drop_column_clausesContext.prototype.drop_column_clause = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Drop_column_clauseContext);
+ } else {
+ return this.getTypedRuleContext(Drop_column_clauseContext,i);
+ }
+};
+
+Add_modify_drop_column_clausesContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAdd_modify_drop_column_clauses(this);
+ }
+};
+
+Add_modify_drop_column_clausesContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAdd_modify_drop_column_clauses(this);
+ }
+};
+
+Add_modify_drop_column_clausesContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAdd_modify_drop_column_clauses(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Add_modify_drop_column_clausesContext = Add_modify_drop_column_clausesContext;
+
+PlSqlParser.prototype.add_modify_drop_column_clauses = function() {
+
+ var localctx = new Add_modify_drop_column_clausesContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 796, PlSqlParser.RULE_add_modify_drop_column_clauses);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7516;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ do {
+ this.state = 7516;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.ADD:
+ this.state = 7513;
+ this.add_column_clause();
+ break;
+ case PlSqlParser.MODIFY:
+ this.state = 7514;
+ this.modify_column_clauses();
+ break;
+ case PlSqlParser.DROP:
+ case PlSqlParser.SET:
+ this.state = 7515;
+ this.drop_column_clause();
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 7518;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ } while(_la===PlSqlParser.ADD || _la===PlSqlParser.DROP || _la===PlSqlParser.MODIFY || _la===PlSqlParser.SET);
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Drop_column_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_drop_column_clause;
+ return this;
+}
+
+Drop_column_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Drop_column_clauseContext.prototype.constructor = Drop_column_clauseContext;
+
+Drop_column_clauseContext.prototype.SET = function() {
+ return this.getToken(PlSqlParser.SET, 0);
+};
+
+Drop_column_clauseContext.prototype.UNUSED = function() {
+ return this.getToken(PlSqlParser.UNUSED, 0);
+};
+
+Drop_column_clauseContext.prototype.COLUMN = function() {
+ return this.getToken(PlSqlParser.COLUMN, 0);
+};
+
+Drop_column_clauseContext.prototype.column_name = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Column_nameContext);
+ } else {
+ return this.getTypedRuleContext(Column_nameContext,i);
+ }
+};
+
+Drop_column_clauseContext.prototype.CASCADE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.CASCADE);
+ } else {
+ return this.getToken(PlSqlParser.CASCADE, i);
+ }
+};
+
+
+Drop_column_clauseContext.prototype.CONSTRAINTS = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.CONSTRAINTS);
+ } else {
+ return this.getToken(PlSqlParser.CONSTRAINTS, i);
+ }
+};
+
+
+Drop_column_clauseContext.prototype.INVALIDATE = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.INVALIDATE);
+ } else {
+ return this.getToken(PlSqlParser.INVALIDATE, i);
+ }
+};
+
+
+Drop_column_clauseContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Drop_column_clauseContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Drop_column_clauseContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Drop_column_clauseContext.prototype.DROP = function() {
+ return this.getToken(PlSqlParser.DROP, 0);
+};
+
+Drop_column_clauseContext.prototype.CHECKPOINT = function() {
+ return this.getToken(PlSqlParser.CHECKPOINT, 0);
+};
+
+Drop_column_clauseContext.prototype.UNSIGNED_INTEGER = function() {
+ return this.getToken(PlSqlParser.UNSIGNED_INTEGER, 0);
+};
+
+Drop_column_clauseContext.prototype.COLUMNS = function() {
+ return this.getToken(PlSqlParser.COLUMNS, 0);
+};
+
+Drop_column_clauseContext.prototype.CONTINUE = function() {
+ return this.getToken(PlSqlParser.CONTINUE, 0);
+};
+
+Drop_column_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterDrop_column_clause(this);
+ }
+};
+
+Drop_column_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitDrop_column_clause(this);
+ }
+};
+
+Drop_column_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitDrop_column_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Drop_column_clauseContext = Drop_column_clauseContext;
+
+PlSqlParser.prototype.drop_column_clause = function() {
+
+ var localctx = new Drop_column_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 798, PlSqlParser.RULE_drop_column_clause);
+ var _la = 0; // Token type
+ try {
+ this.state = 7582;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,950,this._ctx);
+ switch(la_) {
+ case 1:
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7520;
+ this.match(PlSqlParser.SET);
+ this.state = 7521;
+ this.match(PlSqlParser.UNUSED);
+ this.state = 7535;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.COLUMN:
+ this.state = 7522;
+ this.match(PlSqlParser.COLUMN);
+ this.state = 7523;
+ this.column_name();
+ break;
+ case PlSqlParser.LEFT_PAREN:
+ this.state = 7524;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 7525;
+ this.column_name();
+ this.state = 7530;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 7526;
+ this.match(PlSqlParser.COMMA);
+ this.state = 7527;
+ this.column_name();
+ this.state = 7532;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 7533;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 7542;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.CASCADE || _la===PlSqlParser.INVALIDATE) {
+ this.state = 7540;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.CASCADE:
+ this.state = 7537;
+ this.match(PlSqlParser.CASCADE);
+ this.state = 7538;
+ this.match(PlSqlParser.CONSTRAINTS);
+ break;
+ case PlSqlParser.INVALIDATE:
+ this.state = 7539;
+ this.match(PlSqlParser.INVALIDATE);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 7544;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ break;
+
+ case 2:
+ this.enterOuterAlt(localctx, 2);
+ this.state = 7545;
+ this.match(PlSqlParser.DROP);
+ this.state = 7559;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.COLUMN:
+ this.state = 7546;
+ this.match(PlSqlParser.COLUMN);
+ this.state = 7547;
+ this.column_name();
+ break;
+ case PlSqlParser.LEFT_PAREN:
+ this.state = 7548;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 7549;
+ this.column_name();
+ this.state = 7554;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 7550;
+ this.match(PlSqlParser.COMMA);
+ this.state = 7551;
+ this.column_name();
+ this.state = 7556;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 7557;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 7566;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.CASCADE || _la===PlSqlParser.INVALIDATE) {
+ this.state = 7564;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.CASCADE:
+ this.state = 7561;
+ this.match(PlSqlParser.CASCADE);
+ this.state = 7562;
+ this.match(PlSqlParser.CONSTRAINTS);
+ break;
+ case PlSqlParser.INVALIDATE:
+ this.state = 7563;
+ this.match(PlSqlParser.INVALIDATE);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+ this.state = 7568;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 7571;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.CHECKPOINT) {
+ this.state = 7569;
+ this.match(PlSqlParser.CHECKPOINT);
+ this.state = 7570;
+ this.match(PlSqlParser.UNSIGNED_INTEGER);
+ }
+
+ break;
+
+ case 3:
+ this.enterOuterAlt(localctx, 3);
+ this.state = 7573;
+ this.match(PlSqlParser.DROP);
+ this.state = 7578;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.UNUSED:
+ this.state = 7574;
+ this.match(PlSqlParser.UNUSED);
+ this.state = 7575;
+ this.match(PlSqlParser.COLUMNS);
+ break;
+ case PlSqlParser.COLUMNS:
+ this.state = 7576;
+ this.match(PlSqlParser.COLUMNS);
+ this.state = 7577;
+ this.match(PlSqlParser.CONTINUE);
+ break;
+ default:
+ throw new antlr4.error.NoViableAltException(this);
+ }
+
+ this.state = 7580;
+ this.match(PlSqlParser.CHECKPOINT);
+ this.state = 7581;
+ this.match(PlSqlParser.UNSIGNED_INTEGER);
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Modify_column_clausesContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_modify_column_clauses;
+ return this;
+}
+
+Modify_column_clausesContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Modify_column_clausesContext.prototype.constructor = Modify_column_clausesContext;
+
+Modify_column_clausesContext.prototype.MODIFY = function() {
+ return this.getToken(PlSqlParser.MODIFY, 0);
+};
+
+Modify_column_clausesContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Modify_column_clausesContext.prototype.modify_col_properties = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Modify_col_propertiesContext);
+ } else {
+ return this.getTypedRuleContext(Modify_col_propertiesContext,i);
+ }
+};
+
+Modify_column_clausesContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Modify_column_clausesContext.prototype.modify_col_substitutable = function() {
+ return this.getTypedRuleContext(Modify_col_substitutableContext,0);
+};
+
+Modify_column_clausesContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Modify_column_clausesContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterModify_column_clauses(this);
+ }
+};
+
+Modify_column_clausesContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitModify_column_clauses(this);
+ }
+};
+
+Modify_column_clausesContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitModify_column_clauses(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Modify_column_clausesContext = Modify_column_clausesContext;
+
+PlSqlParser.prototype.modify_column_clauses = function() {
+
+ var localctx = new Modify_column_clausesContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 800, PlSqlParser.RULE_modify_column_clauses);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7584;
+ this.match(PlSqlParser.MODIFY);
+ this.state = 7598;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,952,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 7585;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 7586;
+ this.modify_col_properties();
+ this.state = 7591;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 7587;
+ this.match(PlSqlParser.COMMA);
+ this.state = 7588;
+ this.modify_col_properties();
+ this.state = 7593;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 7594;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ break;
+
+ case 2:
+ this.state = 7596;
+ this.modify_col_properties();
+ break;
+
+ case 3:
+ this.state = 7597;
+ this.modify_col_substitutable();
+ break;
+
+ }
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Modify_col_propertiesContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_modify_col_properties;
+ return this;
+}
+
+Modify_col_propertiesContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Modify_col_propertiesContext.prototype.constructor = Modify_col_propertiesContext;
+
+Modify_col_propertiesContext.prototype.column_name = function() {
+ return this.getTypedRuleContext(Column_nameContext,0);
+};
+
+Modify_col_propertiesContext.prototype.datatype = function() {
+ return this.getTypedRuleContext(DatatypeContext,0);
+};
+
+Modify_col_propertiesContext.prototype.DEFAULT = function() {
+ return this.getToken(PlSqlParser.DEFAULT, 0);
+};
+
+Modify_col_propertiesContext.prototype.expression = function() {
+ return this.getTypedRuleContext(ExpressionContext,0);
+};
+
+Modify_col_propertiesContext.prototype.ENCRYPT = function() {
+ return this.getToken(PlSqlParser.ENCRYPT, 0);
+};
+
+Modify_col_propertiesContext.prototype.encryption_spec = function() {
+ return this.getTypedRuleContext(Encryption_specContext,0);
+};
+
+Modify_col_propertiesContext.prototype.DECRYPT = function() {
+ return this.getToken(PlSqlParser.DECRYPT, 0);
+};
+
+Modify_col_propertiesContext.prototype.inline_constraint = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Inline_constraintContext);
+ } else {
+ return this.getTypedRuleContext(Inline_constraintContext,i);
+ }
+};
+
+Modify_col_propertiesContext.prototype.lob_storage_clause = function() {
+ return this.getTypedRuleContext(Lob_storage_clauseContext,0);
+};
+
+Modify_col_propertiesContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterModify_col_properties(this);
+ }
+};
+
+Modify_col_propertiesContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitModify_col_properties(this);
+ }
+};
+
+Modify_col_propertiesContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitModify_col_properties(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Modify_col_propertiesContext = Modify_col_propertiesContext;
+
+PlSqlParser.prototype.modify_col_properties = function() {
+
+ var localctx = new Modify_col_propertiesContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 802, PlSqlParser.RULE_modify_col_properties);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7600;
+ this.column_name();
+ this.state = 7602;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(((((_la - 108)) & ~0x1f) == 0 && ((1 << (_la - 108)) & ((1 << (PlSqlParser.BFILE - 108)) | (1 << (PlSqlParser.BINARY_DOUBLE - 108)) | (1 << (PlSqlParser.BINARY_FLOAT - 108)) | (1 << (PlSqlParser.BINARY_INTEGER - 108)) | (1 << (PlSqlParser.BLOB - 108)) | (1 << (PlSqlParser.BOOLEAN - 108)))) !== 0) || ((((_la - 175)) & ~0x1f) == 0 && ((1 << (_la - 175)) & ((1 << (PlSqlParser.CHARACTER - 175)) | (1 << (PlSqlParser.CHAR - 175)) | (1 << (PlSqlParser.CLOB - 175)))) !== 0) || ((((_la - 327)) & ~0x1f) == 0 && ((1 << (_la - 327)) & ((1 << (PlSqlParser.DATE - 327)) | (1 << (PlSqlParser.DAY - 327)) | (1 << (PlSqlParser.DEC - 327)) | (1 << (PlSqlParser.DECIMAL - 327)))) !== 0) || _la===PlSqlParser.DOUBLE || _la===PlSqlParser.DSINTERVAL_UNCONSTRAINED || _la===PlSqlParser.FLOAT || _la===PlSqlParser.HOUR || ((((_la - 682)) & ~0x1f) == 0 && ((1 << (_la - 682)) & ((1 << (PlSqlParser.INTEGER - 682)) | (1 << (PlSqlParser.INTERVAL - 682)) | (1 << (PlSqlParser.INT - 682)))) !== 0) || _la===PlSqlParser.LONG || ((((_la - 844)) & ~0x1f) == 0 && ((1 << (_la - 844)) & ((1 << (PlSqlParser.MINUTE - 844)) | (1 << (PlSqlParser.MLSLABEL - 844)) | (1 << (PlSqlParser.MONTH - 844)))) !== 0) || ((((_la - 886)) & ~0x1f) == 0 && ((1 << (_la - 886)) & ((1 << (PlSqlParser.NATURAL - 886)) | (1 << (PlSqlParser.NATURALN - 886)) | (1 << (PlSqlParser.NCHAR - 886)) | (1 << (PlSqlParser.NCLOB - 886)))) !== 0) || ((((_la - 1099)) & ~0x1f) == 0 && ((1 << (_la - 1099)) & ((1 << (PlSqlParser.NUMBER - 1099)) | (1 << (PlSqlParser.NUMERIC - 1099)) | (1 << (PlSqlParser.NVARCHAR2 - 1099)))) !== 0) || ((((_la - 1259)) & ~0x1f) == 0 && ((1 << (_la - 1259)) & ((1 << (PlSqlParser.PLS_INTEGER - 1259)) | (1 << (PlSqlParser.POSITIVEN - 1259)) | (1 << (PlSqlParser.POSITIVE - 1259)))) !== 0) || _la===PlSqlParser.RAW || _la===PlSqlParser.REAL || _la===PlSqlParser.ROWID || _la===PlSqlParser.SECOND || ((((_la - 1528)) & ~0x1f) == 0 && ((1 << (_la - 1528)) & ((1 << (PlSqlParser.SIGNTYPE - 1528)) | (1 << (PlSqlParser.SIMPLE_INTEGER - 1528)) | (1 << (PlSqlParser.SMALLINT - 1528)))) !== 0) || _la===PlSqlParser.STRING || ((((_la - 1932)) & ~0x1f) == 0 && ((1 << (_la - 1932)) & ((1 << (PlSqlParser.TIMESTAMP_LTZ_UNCONSTRAINED - 1932)) | (1 << (PlSqlParser.TIMESTAMP - 1932)) | (1 << (PlSqlParser.TIMESTAMP_TZ_UNCONSTRAINED - 1932)) | (1 << (PlSqlParser.TIMESTAMP_UNCONSTRAINED - 1932)) | (1 << (PlSqlParser.TIMEZONE_ABBR - 1932)) | (1 << (PlSqlParser.TIMEZONE_HOUR - 1932)) | (1 << (PlSqlParser.TIMEZONE_MINUTE - 1932)) | (1 << (PlSqlParser.TIMEZONE_REGION - 1932)))) !== 0) || _la===PlSqlParser.UROWID || _la===PlSqlParser.VARCHAR2 || _la===PlSqlParser.VARCHAR || _la===PlSqlParser.YEAR || _la===PlSqlParser.YMINTERVAL_UNCONSTRAINED) {
+ this.state = 7601;
+ this.datatype();
+ }
+
+ this.state = 7606;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.DEFAULT) {
+ this.state = 7604;
+ this.match(PlSqlParser.DEFAULT);
+ this.state = 7605;
+ this.expression();
+ }
+
+ this.state = 7611;
+ this._errHandler.sync(this);
+ switch (this._input.LA(1)) {
+ case PlSqlParser.ENCRYPT:
+ this.state = 7608;
+ this.match(PlSqlParser.ENCRYPT);
+ this.state = 7609;
+ this.encryption_spec();
+ break;
+ case PlSqlParser.DECRYPT:
+ this.state = 7610;
+ this.match(PlSqlParser.DECRYPT);
+ break;
+ case PlSqlParser.ADD:
+ case PlSqlParser.CHECK:
+ case PlSqlParser.CONSTRAINT:
+ case PlSqlParser.DISABLE:
+ case PlSqlParser.DROP:
+ case PlSqlParser.ENABLE:
+ case PlSqlParser.LOB:
+ case PlSqlParser.MODIFY:
+ case PlSqlParser.NOT:
+ case PlSqlParser.NULL_:
+ case PlSqlParser.PRIMARY:
+ case PlSqlParser.REFERENCES:
+ case PlSqlParser.SET:
+ case PlSqlParser.UNIQUE:
+ case PlSqlParser.RIGHT_PAREN:
+ case PlSqlParser.COMMA:
+ case PlSqlParser.SEMICOLON:
+ break;
+ default:
+ break;
+ }
+ this.state = 7616;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.CHECK || _la===PlSqlParser.CONSTRAINT || _la===PlSqlParser.NOT || _la===PlSqlParser.NULL_ || _la===PlSqlParser.PRIMARY || _la===PlSqlParser.REFERENCES || _la===PlSqlParser.UNIQUE) {
+ this.state = 7613;
+ this.inline_constraint();
+ this.state = 7618;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 7620;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.LOB) {
+ this.state = 7619;
+ this.lob_storage_clause();
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Modify_col_substitutableContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_modify_col_substitutable;
+ return this;
+}
+
+Modify_col_substitutableContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Modify_col_substitutableContext.prototype.constructor = Modify_col_substitutableContext;
+
+Modify_col_substitutableContext.prototype.COLUMN = function() {
+ return this.getToken(PlSqlParser.COLUMN, 0);
+};
+
+Modify_col_substitutableContext.prototype.column_name = function() {
+ return this.getTypedRuleContext(Column_nameContext,0);
+};
+
+Modify_col_substitutableContext.prototype.SUBSTITUTABLE = function() {
+ return this.getToken(PlSqlParser.SUBSTITUTABLE, 0);
+};
+
+Modify_col_substitutableContext.prototype.AT = function() {
+ return this.getToken(PlSqlParser.AT, 0);
+};
+
+Modify_col_substitutableContext.prototype.ALL = function() {
+ return this.getToken(PlSqlParser.ALL, 0);
+};
+
+Modify_col_substitutableContext.prototype.LEVELS = function() {
+ return this.getToken(PlSqlParser.LEVELS, 0);
+};
+
+Modify_col_substitutableContext.prototype.NOT = function() {
+ return this.getToken(PlSqlParser.NOT, 0);
+};
+
+Modify_col_substitutableContext.prototype.FORCE = function() {
+ return this.getToken(PlSqlParser.FORCE, 0);
+};
+
+Modify_col_substitutableContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterModify_col_substitutable(this);
+ }
+};
+
+Modify_col_substitutableContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitModify_col_substitutable(this);
+ }
+};
+
+Modify_col_substitutableContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitModify_col_substitutable(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Modify_col_substitutableContext = Modify_col_substitutableContext;
+
+PlSqlParser.prototype.modify_col_substitutable = function() {
+
+ var localctx = new Modify_col_substitutableContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 804, PlSqlParser.RULE_modify_col_substitutable);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7622;
+ this.match(PlSqlParser.COLUMN);
+ this.state = 7623;
+ this.column_name();
+ this.state = 7625;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.NOT) {
+ this.state = 7624;
+ this.match(PlSqlParser.NOT);
+ }
+
+ this.state = 7627;
+ this.match(PlSqlParser.SUBSTITUTABLE);
+ this.state = 7628;
+ this.match(PlSqlParser.AT);
+ this.state = 7629;
+ this.match(PlSqlParser.ALL);
+ this.state = 7630;
+ this.match(PlSqlParser.LEVELS);
+ this.state = 7632;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ if(_la===PlSqlParser.FORCE) {
+ this.state = 7631;
+ this.match(PlSqlParser.FORCE);
+ }
+
+ } catch (re) {
+ if(re instanceof antlr4.error.RecognitionException) {
+ localctx.exception = re;
+ this._errHandler.reportError(this, re);
+ this._errHandler.recover(this, re);
+ } else {
+ throw re;
+ }
+ } finally {
+ this.exitRule();
+ }
+ return localctx;
+};
+
+
+function Add_column_clauseContext(parser, parent, invokingState) {
+ if(parent===undefined) {
+ parent = null;
+ }
+ if(invokingState===undefined || invokingState===null) {
+ invokingState = -1;
+ }
+ antlr4.ParserRuleContext.call(this, parent, invokingState);
+ this.parser = parser;
+ this.ruleIndex = PlSqlParser.RULE_add_column_clause;
+ return this;
+}
+
+Add_column_clauseContext.prototype = Object.create(antlr4.ParserRuleContext.prototype);
+Add_column_clauseContext.prototype.constructor = Add_column_clauseContext;
+
+Add_column_clauseContext.prototype.ADD = function() {
+ return this.getToken(PlSqlParser.ADD, 0);
+};
+
+Add_column_clauseContext.prototype.LEFT_PAREN = function() {
+ return this.getToken(PlSqlParser.LEFT_PAREN, 0);
+};
+
+Add_column_clauseContext.prototype.RIGHT_PAREN = function() {
+ return this.getToken(PlSqlParser.RIGHT_PAREN, 0);
+};
+
+Add_column_clauseContext.prototype.column_properties = function() {
+ return this.getTypedRuleContext(Column_propertiesContext,0);
+};
+
+Add_column_clauseContext.prototype.column_definition = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Column_definitionContext);
+ } else {
+ return this.getTypedRuleContext(Column_definitionContext,i);
+ }
+};
+
+Add_column_clauseContext.prototype.virtual_column_definition = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTypedRuleContexts(Virtual_column_definitionContext);
+ } else {
+ return this.getTypedRuleContext(Virtual_column_definitionContext,i);
+ }
+};
+
+Add_column_clauseContext.prototype.COMMA = function(i) {
+ if(i===undefined) {
+ i = null;
+ }
+ if(i===null) {
+ return this.getTokens(PlSqlParser.COMMA);
+ } else {
+ return this.getToken(PlSqlParser.COMMA, i);
+ }
+};
+
+
+Add_column_clauseContext.prototype.enterRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.enterAdd_column_clause(this);
+ }
+};
+
+Add_column_clauseContext.prototype.exitRule = function(listener) {
+ if(listener instanceof PlSqlParserListener ) {
+ listener.exitAdd_column_clause(this);
+ }
+};
+
+Add_column_clauseContext.prototype.accept = function(visitor) {
+ if ( visitor instanceof PlSqlParserVisitor ) {
+ return visitor.visitAdd_column_clause(this);
+ } else {
+ return visitor.visitChildren(this);
+ }
+};
+
+
+
+
+PlSqlParser.Add_column_clauseContext = Add_column_clauseContext;
+
+PlSqlParser.prototype.add_column_clause = function() {
+
+ var localctx = new Add_column_clauseContext(this, this._ctx, this.state);
+ this.enterRule(localctx, 806, PlSqlParser.RULE_add_column_clause);
+ var _la = 0; // Token type
+ try {
+ this.enterOuterAlt(localctx, 1);
+ this.state = 7634;
+ this.match(PlSqlParser.ADD);
+ this.state = 7656;
+ this._errHandler.sync(this);
+ switch(this._input.LA(1)) {
+ case PlSqlParser.LEFT_PAREN:
+ this.state = 7635;
+ this.match(PlSqlParser.LEFT_PAREN);
+ this.state = 7638;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,960,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 7636;
+ this.column_definition();
+ break;
+
+ case 2:
+ this.state = 7637;
+ this.virtual_column_definition();
+ break;
+
+ }
+ this.state = 7647;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ while(_la===PlSqlParser.COMMA) {
+ this.state = 7640;
+ this.match(PlSqlParser.COMMA);
+ this.state = 7643;
+ this._errHandler.sync(this);
+ var la_ = this._interp.adaptivePredict(this._input,961,this._ctx);
+ switch(la_) {
+ case 1:
+ this.state = 7641;
+ this.column_definition();
+ break;
+
+ case 2:
+ this.state = 7642;
+ this.virtual_column_definition();
+ break;
+
+ }
+ this.state = 7649;
+ this._errHandler.sync(this);
+ _la = this._input.LA(1);
+ }
+ this.state = 7650;
+ this.match(PlSqlParser.RIGHT_PAREN);
+ break;
+ case PlSqlParser.ABORT:
+ case PlSqlParser.ABS:
+ case PlSqlParser.ACCESS:
+ case PlSqlParser.ACCESSED:
+ case PlSqlParser.ACCOUNT:
+ case PlSqlParser.ACL:
+ case PlSqlParser.ACOS:
+ case PlSqlParser.ACTION:
+ case PlSqlParser.ACTIONS:
+ case PlSqlParser.ACTIVATE:
+ case PlSqlParser.ACTIVE:
+ case PlSqlParser.ACTIVE_COMPONENT:
+ case PlSqlParser.ACTIVE_DATA:
+ case PlSqlParser.ACTIVE_FUNCTION:
+ case PlSqlParser.ACTIVE_TAG:
+ case PlSqlParser.ACTIVITY:
+ case PlSqlParser.ADAPTIVE_PLAN:
+ case PlSqlParser.ADD:
+ case PlSqlParser.ADD_COLUMN:
+ case PlSqlParser.ADD_GROUP:
+ case PlSqlParser.ADD_MONTHS:
+ case PlSqlParser.ADJ_DATE:
+ case PlSqlParser.ADMIN:
+ case PlSqlParser.ADMINISTER:
+ case PlSqlParser.ADMINISTRATOR:
+ case PlSqlParser.ADVANCED:
+ case PlSqlParser.ADVISE:
+ case PlSqlParser.ADVISOR:
+ case PlSqlParser.AFD_DISKSTRING:
+ case PlSqlParser.AFTER:
+ case PlSqlParser.AGENT:
+ case PlSqlParser.AGGREGATE:
+ case PlSqlParser.A_LETTER:
+ case PlSqlParser.ALIAS:
+ case PlSqlParser.ALLOCATE:
+ case PlSqlParser.ALLOW:
+ case PlSqlParser.ALL_ROWS:
+ case PlSqlParser.ALWAYS:
+ case PlSqlParser.ANALYZE:
+ case PlSqlParser.ANCILLARY:
+ case PlSqlParser.AND_EQUAL:
+ case PlSqlParser.ANOMALY:
+ case PlSqlParser.ANSI_REARCH:
+ case PlSqlParser.ANTIJOIN:
+ case PlSqlParser.ANYSCHEMA:
+ case PlSqlParser.APPEND:
+ case PlSqlParser.APPENDCHILDXML:
+ case PlSqlParser.APPEND_VALUES:
+ case PlSqlParser.APPLICATION:
+ case PlSqlParser.APPLY:
+ case PlSqlParser.APPROX_COUNT_DISTINCT:
+ case PlSqlParser.ARCHIVAL:
+ case PlSqlParser.ARCHIVE:
+ case PlSqlParser.ARCHIVED:
+ case PlSqlParser.ARCHIVELOG:
+ case PlSqlParser.ARRAY:
+ case PlSqlParser.ASCII:
+ case PlSqlParser.ASCIISTR:
+ case PlSqlParser.ASIN:
+ case PlSqlParser.ASIS:
+ case PlSqlParser.ASSEMBLY:
+ case PlSqlParser.ASSIGN:
+ case PlSqlParser.ASSOCIATE:
+ case PlSqlParser.ASYNC:
+ case PlSqlParser.ASYNCHRONOUS:
+ case PlSqlParser.ATAN2:
+ case PlSqlParser.ATAN:
+ case PlSqlParser.AT:
+ case PlSqlParser.ATTRIBUTE:
+ case PlSqlParser.ATTRIBUTES:
+ case PlSqlParser.AUTHENTICATED:
+ case PlSqlParser.AUTHENTICATION:
+ case PlSqlParser.AUTHID:
+ case PlSqlParser.AUTHORIZATION:
+ case PlSqlParser.AUTOALLOCATE:
+ case PlSqlParser.AUTO:
+ case PlSqlParser.AUTOEXTEND:
+ case PlSqlParser.AUTO_LOGIN:
+ case PlSqlParser.AUTOMATIC:
+ case PlSqlParser.AUTONOMOUS_TRANSACTION:
+ case PlSqlParser.AUTO_REOPTIMIZE:
+ case PlSqlParser.AVAILABILITY:
+ case PlSqlParser.AVRO:
+ case PlSqlParser.BACKGROUND:
+ case PlSqlParser.BACKUP:
+ case PlSqlParser.BASIC:
+ case PlSqlParser.BASICFILE:
+ case PlSqlParser.BATCH:
+ case PlSqlParser.BATCHSIZE:
+ case PlSqlParser.BATCH_TABLE_ACCESS_BY_ROWID:
+ case PlSqlParser.BECOME:
+ case PlSqlParser.BEFORE:
+ case PlSqlParser.BEGIN:
+ case PlSqlParser.BEGINNING:
+ case PlSqlParser.BEGIN_OUTLINE_DATA:
+ case PlSqlParser.BEHALF:
+ case PlSqlParser.BEQUEATH:
+ case PlSqlParser.BFILE:
+ case PlSqlParser.BFILENAME:
+ case PlSqlParser.BIGFILE:
+ case PlSqlParser.BINARY:
+ case PlSqlParser.BINARY_DOUBLE:
+ case PlSqlParser.BINARY_DOUBLE_INFINITY:
+ case PlSqlParser.BINARY_DOUBLE_NAN:
+ case PlSqlParser.BINARY_FLOAT:
+ case PlSqlParser.BINARY_FLOAT_INFINITY:
+ case PlSqlParser.BINARY_FLOAT_NAN:
+ case PlSqlParser.BINARY_INTEGER:
+ case PlSqlParser.BIND_AWARE:
+ case PlSqlParser.BINDING:
+ case PlSqlParser.BIN_TO_NUM:
+ case PlSqlParser.BITAND:
+ case PlSqlParser.BITMAP_AND:
+ case PlSqlParser.BITMAP:
+ case PlSqlParser.BITMAPS:
+ case PlSqlParser.BITMAP_TREE:
+ case PlSqlParser.BITS:
+ case PlSqlParser.BLOB:
+ case PlSqlParser.BLOCK:
+ case PlSqlParser.BLOCK_RANGE:
+ case PlSqlParser.BLOCKS:
+ case PlSqlParser.BLOCKSIZE:
+ case PlSqlParser.BODY:
+ case PlSqlParser.BOOLEAN:
+ case PlSqlParser.BOTH:
+ case PlSqlParser.BOUND:
+ case PlSqlParser.BRANCH:
+ case PlSqlParser.BREADTH:
+ case PlSqlParser.BROADCAST:
+ case PlSqlParser.BSON:
+ case PlSqlParser.BUFFER:
+ case PlSqlParser.BUFFER_CACHE:
+ case PlSqlParser.BUFFER_POOL:
+ case PlSqlParser.BUILD:
+ case PlSqlParser.BULK:
+ case PlSqlParser.BYPASS_RECURSIVE_CHECK:
+ case PlSqlParser.BYPASS_UJVC:
+ case PlSqlParser.BYTE:
+ case PlSqlParser.CACHE:
+ case PlSqlParser.CACHE_CB:
+ case PlSqlParser.CACHE_INSTANCES:
+ case PlSqlParser.CACHE_TEMP_TABLE:
+ case PlSqlParser.CACHING:
+ case PlSqlParser.CALCULATED:
+ case PlSqlParser.CALLBACK:
+ case PlSqlParser.CALL:
+ case PlSqlParser.CANCEL:
+ case PlSqlParser.CAPACITY:
+ case PlSqlParser.CARDINALITY:
+ case PlSqlParser.CASCADE:
+ case PlSqlParser.CASE:
+ case PlSqlParser.CAST:
+ case PlSqlParser.CATEGORY:
+ case PlSqlParser.CDBDEFAULT:
+ case PlSqlParser.CEIL:
+ case PlSqlParser.CELL_FLASH_CACHE:
+ case PlSqlParser.CERTIFICATE:
+ case PlSqlParser.CFILE:
+ case PlSqlParser.CHAINED:
+ case PlSqlParser.CHANGE:
+ case PlSqlParser.CHANGE_DUPKEY_ERROR_INDEX:
+ case PlSqlParser.CHARACTER:
+ case PlSqlParser.CHAR:
+ case PlSqlParser.CHAR_CS:
+ case PlSqlParser.CHARTOROWID:
+ case PlSqlParser.CHECK_ACL_REWRITE:
+ case PlSqlParser.CHECKPOINT:
+ case PlSqlParser.CHILD:
+ case PlSqlParser.CHOOSE:
+ case PlSqlParser.CHR:
+ case PlSqlParser.CHUNK:
+ case PlSqlParser.CLASS:
+ case PlSqlParser.CLASSIFIER:
+ case PlSqlParser.CLEANUP:
+ case PlSqlParser.CLEAR:
+ case PlSqlParser.C_LETTER:
+ case PlSqlParser.CLIENT:
+ case PlSqlParser.CLOB:
+ case PlSqlParser.CLONE:
+ case PlSqlParser.CLOSE_CACHED_OPEN_CURSORS:
+ case PlSqlParser.CLOSE:
+ case PlSqlParser.CLUSTER_BY_ROWID:
+ case PlSqlParser.CLUSTER:
+ case PlSqlParser.CLUSTER_DETAILS:
+ case PlSqlParser.CLUSTER_DISTANCE:
+ case PlSqlParser.CLUSTER_ID:
+ case PlSqlParser.CLUSTERING:
+ case PlSqlParser.CLUSTERING_FACTOR:
+ case PlSqlParser.CLUSTER_PROBABILITY:
+ case PlSqlParser.CLUSTER_SET:
+ case PlSqlParser.COALESCE:
+ case PlSqlParser.COALESCE_SQ:
+ case PlSqlParser.COARSE:
+ case PlSqlParser.CO_AUTH_IND:
+ case PlSqlParser.COLD:
+ case PlSqlParser.COLLECT:
+ case PlSqlParser.COLUMNAR:
+ case PlSqlParser.COLUMN_AUTH_INDICATOR:
+ case PlSqlParser.COLUMN:
+ case PlSqlParser.COLUMNS:
+ case PlSqlParser.COLUMN_STATS:
+ case PlSqlParser.COLUMN_VALUE:
+ case PlSqlParser.COMMENT:
+ case PlSqlParser.COMMIT:
+ case PlSqlParser.COMMITTED:
+ case PlSqlParser.COMMON_DATA:
+ case PlSqlParser.COMPACT:
+ case PlSqlParser.COMPATIBILITY:
+ case PlSqlParser.COMPILE:
+ case PlSqlParser.COMPLETE:
+ case PlSqlParser.COMPLIANCE:
+ case PlSqlParser.COMPONENT:
+ case PlSqlParser.COMPONENTS:
+ case PlSqlParser.COMPOSE:
+ case PlSqlParser.COMPOSITE:
+ case PlSqlParser.COMPOSITE_LIMIT:
+ case PlSqlParser.COMPOUND:
+ case PlSqlParser.COMPUTE:
+ case PlSqlParser.CONCAT:
+ case PlSqlParser.CON_DBID_TO_ID:
+ case PlSqlParser.CONDITIONAL:
+ case PlSqlParser.CONDITION:
+ case PlSqlParser.CONFIRM:
+ case PlSqlParser.CONFORMING:
+ case PlSqlParser.CON_GUID_TO_ID:
+ case PlSqlParser.CON_ID:
+ case PlSqlParser.CON_NAME_TO_ID:
+ case PlSqlParser.CONNECT_BY_CB_WHR_ONLY:
+ case PlSqlParser.CONNECT_BY_COMBINE_SW:
+ case PlSqlParser.CONNECT_BY_COST_BASED:
+ case PlSqlParser.CONNECT_BY_ELIM_DUPS:
+ case PlSqlParser.CONNECT_BY_FILTERING:
+ case PlSqlParser.CONNECT_BY_ISCYCLE:
+ case PlSqlParser.CONNECT_BY_ISLEAF:
+ case PlSqlParser.CONNECT_BY_ROOT:
+ case PlSqlParser.CONNECT_TIME:
+ case PlSqlParser.CONSIDER:
+ case PlSqlParser.CONSISTENT:
+ case PlSqlParser.CONSTANT:
+ case PlSqlParser.CONST:
+ case PlSqlParser.CONSTRAINT:
+ case PlSqlParser.CONSTRAINTS:
+ case PlSqlParser.CONSTRUCTOR:
+ case PlSqlParser.CONTAINER:
+ case PlSqlParser.CONTAINER_DATA:
+ case PlSqlParser.CONTAINERS:
+ case PlSqlParser.CONTENT:
+ case PlSqlParser.CONTENTS:
+ case PlSqlParser.CONTEXT:
+ case PlSqlParser.CONTINUE:
+ case PlSqlParser.CONTROLFILE:
+ case PlSqlParser.CON_UID_TO_ID:
+ case PlSqlParser.CONVERT:
+ case PlSqlParser.COOKIE:
+ case PlSqlParser.COPY:
+ case PlSqlParser.CORR_K:
+ case PlSqlParser.CORR_S:
+ case PlSqlParser.CORRUPTION:
+ case PlSqlParser.CORRUPT_XID_ALL:
+ case PlSqlParser.CORRUPT_XID:
+ case PlSqlParser.COS:
+ case PlSqlParser.COSH:
+ case PlSqlParser.COST:
+ case PlSqlParser.COST_XML_QUERY_REWRITE:
+ case PlSqlParser.COUNT:
+ case PlSqlParser.COVAR_POP:
+ case PlSqlParser.COVAR_SAMP:
+ case PlSqlParser.CPU_COSTING:
+ case PlSqlParser.CPU_PER_CALL:
+ case PlSqlParser.CPU_PER_SESSION:
+ case PlSqlParser.CRASH:
+ case PlSqlParser.CREATE_FILE_DEST:
+ case PlSqlParser.CREATE_STORED_OUTLINES:
+ case PlSqlParser.CREATION:
+ case PlSqlParser.CREDENTIAL:
+ case PlSqlParser.CRITICAL:
+ case PlSqlParser.CROSS:
+ case PlSqlParser.CROSSEDITION:
+ case PlSqlParser.CSCONVERT:
+ case PlSqlParser.CUBE_AJ:
+ case PlSqlParser.CUBE:
+ case PlSqlParser.CUBE_GB:
+ case PlSqlParser.CUBE_SJ:
+ case PlSqlParser.CUME_DISTM:
+ case PlSqlParser.CURRENT:
+ case PlSqlParser.CURRENT_DATE:
+ case PlSqlParser.CURRENT_SCHEMA:
+ case PlSqlParser.CURRENT_TIME:
+ case PlSqlParser.CURRENT_TIMESTAMP:
+ case PlSqlParser.CURRENT_USER:
+ case PlSqlParser.CURRENTV:
+ case PlSqlParser.CURSOR:
+ case PlSqlParser.CURSOR_SHARING_EXACT:
+ case PlSqlParser.CURSOR_SPECIFIC_SEGMENT:
+ case PlSqlParser.CUSTOMDATUM:
+ case PlSqlParser.CV:
+ case PlSqlParser.CYCLE:
+ case PlSqlParser.DANGLING:
+ case PlSqlParser.DATABASE:
+ case PlSqlParser.DATA:
+ case PlSqlParser.DATAFILE:
+ case PlSqlParser.DATAFILES:
+ case PlSqlParser.DATAMOVEMENT:
+ case PlSqlParser.DATAOBJNO:
+ case PlSqlParser.DATAOBJ_TO_MAT_PARTITION:
+ case PlSqlParser.DATAOBJ_TO_PARTITION:
+ case PlSqlParser.DATAPUMP:
+ case PlSqlParser.DATA_SECURITY_REWRITE_LIMIT:
+ case PlSqlParser.DATE_MODE:
+ case PlSqlParser.DAY:
+ case PlSqlParser.DAYS:
+ case PlSqlParser.DBA:
+ case PlSqlParser.DBA_RECYCLEBIN:
+ case PlSqlParser.DBMS_STATS:
+ case PlSqlParser.DB_ROLE_CHANGE:
+ case PlSqlParser.DBTIMEZONE:
+ case PlSqlParser.DB_UNIQUE_NAME:
+ case PlSqlParser.DB_VERSION:
+ case PlSqlParser.DDL:
+ case PlSqlParser.DEALLOCATE:
+ case PlSqlParser.DEBUG:
+ case PlSqlParser.DEBUGGER:
+ case PlSqlParser.DEC:
+ case PlSqlParser.DECIMAL:
+ case PlSqlParser.DECLARE:
+ case PlSqlParser.DECOMPOSE:
+ case PlSqlParser.DECORRELATE:
+ case PlSqlParser.DECR:
+ case PlSqlParser.DECREMENT:
+ case PlSqlParser.DECRYPT:
+ case PlSqlParser.DEDUPLICATE:
+ case PlSqlParser.DEFAULTS:
+ case PlSqlParser.DEFERRABLE:
+ case PlSqlParser.DEFERRED:
+ case PlSqlParser.DEFINED:
+ case PlSqlParser.DEFINE:
+ case PlSqlParser.DEFINER:
+ case PlSqlParser.DEGREE:
+ case PlSqlParser.DELAY:
+ case PlSqlParser.DELEGATE:
+ case PlSqlParser.DELETE_ALL:
+ case PlSqlParser.DELETE:
+ case PlSqlParser.DELETEXML:
+ case PlSqlParser.DEMAND:
+ case PlSqlParser.DENSE_RANKM:
+ case PlSqlParser.DEPENDENT:
+ case PlSqlParser.DEPTH:
+ case PlSqlParser.DEQUEUE:
+ case PlSqlParser.DEREF:
+ case PlSqlParser.DEREF_NO_REWRITE:
+ case PlSqlParser.DESTROY:
+ case PlSqlParser.DETACHED:
+ case PlSqlParser.DETERMINES:
+ case PlSqlParser.DETERMINISTIC:
+ case PlSqlParser.DICTIONARY:
+ case PlSqlParser.DIMENSION:
+ case PlSqlParser.DIMENSIONS:
+ case PlSqlParser.DIRECT_LOAD:
+ case PlSqlParser.DIRECTORY:
+ case PlSqlParser.DIRECT_PATH:
+ case PlSqlParser.DISABLE_ALL:
+ case PlSqlParser.DISABLE:
+ case PlSqlParser.DISABLE_PARALLEL_DML:
+ case PlSqlParser.DISABLE_PRESET:
+ case PlSqlParser.DISABLE_RPKE:
+ case PlSqlParser.DISALLOW:
+ case PlSqlParser.DISASSOCIATE:
+ case PlSqlParser.DISCARD:
+ case PlSqlParser.DISCONNECT:
+ case PlSqlParser.DISK:
+ case PlSqlParser.DISKGROUP:
+ case PlSqlParser.DISKS:
+ case PlSqlParser.DISMOUNT:
+ case PlSqlParser.DISTINGUISHED:
+ case PlSqlParser.DISTRIBUTED:
+ case PlSqlParser.DISTRIBUTE:
+ case PlSqlParser.DML:
+ case PlSqlParser.DML_UPDATE:
+ case PlSqlParser.DOCFIDELITY:
+ case PlSqlParser.DOCUMENT:
+ case PlSqlParser.DOMAIN_INDEX_FILTER:
+ case PlSqlParser.DOMAIN_INDEX_NO_SORT:
+ case PlSqlParser.DOMAIN_INDEX_SORT:
+ case PlSqlParser.DOUBLE:
+ case PlSqlParser.DOWNGRADE:
+ case PlSqlParser.DRIVING_SITE:
+ case PlSqlParser.DROP_COLUMN:
+ case PlSqlParser.DROP_GROUP:
+ case PlSqlParser.DSINTERVAL_UNCONSTRAINED:
+ case PlSqlParser.DST_UPGRADE_INSERT_CONV:
+ case PlSqlParser.DUMP:
+ case PlSqlParser.DUPLICATE:
+ case PlSqlParser.DV:
+ case PlSqlParser.DYNAMIC:
+ case PlSqlParser.DYNAMIC_SAMPLING:
+ case PlSqlParser.DYNAMIC_SAMPLING_EST_CDN:
+ case PlSqlParser.EACH:
+ case PlSqlParser.EDITIONABLE:
+ case PlSqlParser.EDITION:
+ case PlSqlParser.EDITIONING:
+ case PlSqlParser.EDITIONS:
+ case PlSqlParser.ELEMENT:
+ case PlSqlParser.ELIM_GROUPBY:
+ case PlSqlParser.ELIMINATE_JOIN:
+ case PlSqlParser.ELIMINATE_OBY:
+ case PlSqlParser.ELIMINATE_OUTER_JOIN:
+ case PlSqlParser.EM:
+ case PlSqlParser.EMPTY_BLOB:
+ case PlSqlParser.EMPTY_CLOB:
+ case PlSqlParser.EMPTY:
+ case PlSqlParser.ENABLE_ALL:
+ case PlSqlParser.ENABLE:
+ case PlSqlParser.ENABLE_PARALLEL_DML:
+ case PlSqlParser.ENABLE_PRESET:
+ case PlSqlParser.ENCODING:
+ case PlSqlParser.ENCRYPT:
+ case PlSqlParser.ENCRYPTION:
+ case PlSqlParser.END_OUTLINE_DATA:
+ case PlSqlParser.ENFORCED:
+ case PlSqlParser.ENFORCE:
+ case PlSqlParser.ENQUEUE:
+ case PlSqlParser.ENTERPRISE:
+ case PlSqlParser.ENTITYESCAPING:
+ case PlSqlParser.ENTRY:
+ case PlSqlParser.EQUIPART:
+ case PlSqlParser.ERR:
+ case PlSqlParser.ERROR_ARGUMENT:
+ case PlSqlParser.ERROR:
+ case PlSqlParser.ERROR_ON_OVERLAP_TIME:
+ case PlSqlParser.ERRORS:
+ case PlSqlParser.ESCAPE:
+ case PlSqlParser.ESTIMATE:
+ case PlSqlParser.EVAL:
+ case PlSqlParser.EVALNAME:
+ case PlSqlParser.EVALUATE:
+ case PlSqlParser.EVALUATION:
+ case PlSqlParser.EVENTS:
+ case PlSqlParser.EVERY:
+ case PlSqlParser.EXCEPT:
+ case PlSqlParser.EXCEPTION:
+ case PlSqlParser.EXCEPTION_INIT:
+ case PlSqlParser.EXCEPTIONS:
+ case PlSqlParser.EXCHANGE:
+ case PlSqlParser.EXCLUDE:
+ case PlSqlParser.EXCLUDING:
+ case PlSqlParser.EXECUTE:
+ case PlSqlParser.EXEMPT:
+ case PlSqlParser.EXISTING:
+ case PlSqlParser.EXISTS:
+ case PlSqlParser.EXISTSNODE:
+ case PlSqlParser.EXIT:
+ case PlSqlParser.EXPAND_GSET_TO_UNION:
+ case PlSqlParser.EXPAND_TABLE:
+ case PlSqlParser.EXP:
+ case PlSqlParser.EXPIRE:
+ case PlSqlParser.EXPLAIN:
+ case PlSqlParser.EXPLOSION:
+ case PlSqlParser.EXPORT:
+ case PlSqlParser.EXPR_CORR_CHECK:
+ case PlSqlParser.EXPRESS:
+ case PlSqlParser.EXTENDS:
+ case PlSqlParser.EXTENT:
+ case PlSqlParser.EXTENTS:
+ case PlSqlParser.EXTERNAL:
+ case PlSqlParser.EXTERNALLY:
+ case PlSqlParser.EXTRACTCLOBXML:
+ case PlSqlParser.EXTRACT:
+ case PlSqlParser.EXTRACTVALUE:
+ case PlSqlParser.EXTRA:
+ case PlSqlParser.FACILITY:
+ case PlSqlParser.FACT:
+ case PlSqlParser.FACTOR:
+ case PlSqlParser.FACTORIZE_JOIN:
+ case PlSqlParser.FAILED:
+ case PlSqlParser.FAILED_LOGIN_ATTEMPTS:
+ case PlSqlParser.FAILGROUP:
+ case PlSqlParser.FAILOVER:
+ case PlSqlParser.FAILURE:
+ case PlSqlParser.FALSE:
+ case PlSqlParser.FAMILY:
+ case PlSqlParser.FAR:
+ case PlSqlParser.FAST:
+ case PlSqlParser.FASTSTART:
+ case PlSqlParser.FBTSCAN:
+ case PlSqlParser.FEATURE_DETAILS:
+ case PlSqlParser.FEATURE_ID:
+ case PlSqlParser.FEATURE_SET:
+ case PlSqlParser.FEATURE_VALUE:
+ case PlSqlParser.FETCH:
+ case PlSqlParser.FILE:
+ case PlSqlParser.FILE_NAME_CONVERT:
+ case PlSqlParser.FILESYSTEM_LIKE_LOGGING:
+ case PlSqlParser.FILTER:
+ case PlSqlParser.FINAL:
+ case PlSqlParser.FINE:
+ case PlSqlParser.FINISH:
+ case PlSqlParser.FIRST:
+ case PlSqlParser.FIRSTM:
+ case PlSqlParser.FIRST_ROWS:
+ case PlSqlParser.FIRST_VALUE:
+ case PlSqlParser.FIXED_VIEW_DATA:
+ case PlSqlParser.FLAGGER:
+ case PlSqlParser.FLASHBACK:
+ case PlSqlParser.FLASH_CACHE:
+ case PlSqlParser.FLOAT:
+ case PlSqlParser.FLOB:
+ case PlSqlParser.FLOOR:
+ case PlSqlParser.FLUSH:
+ case PlSqlParser.FOLDER:
+ case PlSqlParser.FOLLOWING:
+ case PlSqlParser.FOLLOWS:
+ case PlSqlParser.FORALL:
+ case PlSqlParser.FORCE:
+ case PlSqlParser.FORCE_XML_QUERY_REWRITE:
+ case PlSqlParser.FOREIGN:
+ case PlSqlParser.FOREVER:
+ case PlSqlParser.FORMAT:
+ case PlSqlParser.FORWARD:
+ case PlSqlParser.FRAGMENT_NUMBER:
+ case PlSqlParser.FREELIST:
+ case PlSqlParser.FREELISTS:
+ case PlSqlParser.FREEPOOLS:
+ case PlSqlParser.FRESH:
+ case PlSqlParser.FROM_TZ:
+ case PlSqlParser.FULL:
+ case PlSqlParser.FULL_OUTER_JOIN_TO_OUTER:
+ case PlSqlParser.FUNCTION:
+ case PlSqlParser.FUNCTIONS:
+ case PlSqlParser.GATHER_OPTIMIZER_STATISTICS:
+ case PlSqlParser.GATHER_PLAN_STATISTICS:
+ case PlSqlParser.GBY_CONC_ROLLUP:
+ case PlSqlParser.GBY_PUSHDOWN:
+ case PlSqlParser.GENERATED:
+ case PlSqlParser.GET:
+ case PlSqlParser.GLOBAL:
+ case PlSqlParser.GLOBALLY:
+ case PlSqlParser.GLOBAL_NAME:
+ case PlSqlParser.GLOBAL_TOPIC_ENABLED:
+ case PlSqlParser.GROUP_BY:
+ case PlSqlParser.GROUP_ID:
+ case PlSqlParser.GROUPING:
+ case PlSqlParser.GROUPING_ID:
+ case PlSqlParser.GROUPS:
+ case PlSqlParser.GUARANTEED:
+ case PlSqlParser.GUARANTEE:
+ case PlSqlParser.GUARD:
+ case PlSqlParser.HASH_AJ:
+ case PlSqlParser.HASH:
+ case PlSqlParser.HASHKEYS:
+ case PlSqlParser.HASH_SJ:
+ case PlSqlParser.HEADER:
+ case PlSqlParser.HEAP:
+ case PlSqlParser.HELP:
+ case PlSqlParser.HEXTORAW:
+ case PlSqlParser.HEXTOREF:
+ case PlSqlParser.HIDDEN_KEYWORD:
+ case PlSqlParser.HIDE:
+ case PlSqlParser.HIERARCHY:
+ case PlSqlParser.HIGH:
+ case PlSqlParser.HINTSET_BEGIN:
+ case PlSqlParser.HINTSET_END:
+ case PlSqlParser.HOT:
+ case PlSqlParser.HOUR:
+ case PlSqlParser.HWM_BROKERED:
+ case PlSqlParser.HYBRID:
+ case PlSqlParser.IDENTIFIER:
+ case PlSqlParser.IDENTITY:
+ case PlSqlParser.IDGENERATORS:
+ case PlSqlParser.ID:
+ case PlSqlParser.IDLE_TIME:
+ case PlSqlParser.IF:
+ case PlSqlParser.IGNORE:
+ case PlSqlParser.IGNORE_OPTIM_EMBEDDED_HINTS:
+ case PlSqlParser.IGNORE_ROW_ON_DUPKEY_INDEX:
+ case PlSqlParser.IGNORE_WHERE_CLAUSE:
+ case PlSqlParser.ILM:
+ case PlSqlParser.IMMEDIATE:
+ case PlSqlParser.IMPACT:
+ case PlSqlParser.IMPORT:
+ case PlSqlParser.INACTIVE:
+ case PlSqlParser.INCLUDE:
+ case PlSqlParser.INCLUDE_VERSION:
+ case PlSqlParser.INCLUDING:
+ case PlSqlParser.INCREMENTAL:
+ case PlSqlParser.INCREMENT:
+ case PlSqlParser.INCR:
+ case PlSqlParser.INDENT:
+ case PlSqlParser.INDEX_ASC:
+ case PlSqlParser.INDEX_COMBINE:
+ case PlSqlParser.INDEX_DESC:
+ case PlSqlParser.INDEXED:
+ case PlSqlParser.INDEXES:
+ case PlSqlParser.INDEX_FFS:
+ case PlSqlParser.INDEX_FILTER:
+ case PlSqlParser.INDEXING:
+ case PlSqlParser.INDEX_JOIN:
+ case PlSqlParser.INDEX_ROWS:
+ case PlSqlParser.INDEX_RRS:
+ case PlSqlParser.INDEX_RS_ASC:
+ case PlSqlParser.INDEX_RS_DESC:
+ case PlSqlParser.INDEX_RS:
+ case PlSqlParser.INDEX_SCAN:
+ case PlSqlParser.INDEX_SKIP_SCAN:
+ case PlSqlParser.INDEX_SS_ASC:
+ case PlSqlParser.INDEX_SS_DESC:
+ case PlSqlParser.INDEX_SS:
+ case PlSqlParser.INDEX_STATS:
+ case PlSqlParser.INDEXTYPE:
+ case PlSqlParser.INDEXTYPES:
+ case PlSqlParser.INDICATOR:
+ case PlSqlParser.INDICES:
+ case PlSqlParser.INFINITE:
+ case PlSqlParser.INFORMATIONAL:
+ case PlSqlParser.INHERIT:
+ case PlSqlParser.INITCAP:
+ case PlSqlParser.INITIAL:
+ case PlSqlParser.INITIALIZED:
+ case PlSqlParser.INITIALLY:
+ case PlSqlParser.INITRANS:
+ case PlSqlParser.INLINE:
+ case PlSqlParser.INLINE_XMLTYPE_NT:
+ case PlSqlParser.INMEMORY:
+ case PlSqlParser.IN_MEMORY_METADATA:
+ case PlSqlParser.INMEMORY_PRUNING:
+ case PlSqlParser.INNER:
+ case PlSqlParser.INOUT:
+ case PlSqlParser.INPLACE:
+ case PlSqlParser.INSERTCHILDXMLAFTER:
+ case PlSqlParser.INSERTCHILDXMLBEFORE:
+ case PlSqlParser.INSERTCHILDXML:
+ case PlSqlParser.INSERTXMLAFTER:
+ case PlSqlParser.INSERTXMLBEFORE:
+ case PlSqlParser.INSTANCE:
+ case PlSqlParser.INSTANCES:
+ case PlSqlParser.INSTANTIABLE:
+ case PlSqlParser.INSTANTLY:
+ case PlSqlParser.INSTEAD:
+ case PlSqlParser.INSTR2:
+ case PlSqlParser.INSTR4:
+ case PlSqlParser.INSTRB:
+ case PlSqlParser.INSTRC:
+ case PlSqlParser.INSTR:
+ case PlSqlParser.INTEGER:
+ case PlSqlParser.INTERLEAVED:
+ case PlSqlParser.INTERMEDIATE:
+ case PlSqlParser.INTERNAL_CONVERT:
+ case PlSqlParser.INTERNAL_USE:
+ case PlSqlParser.INTERPRETED:
+ case PlSqlParser.INTERVAL:
+ case PlSqlParser.INT:
+ case PlSqlParser.INVALIDATE:
+ case PlSqlParser.INVISIBLE:
+ case PlSqlParser.IN_XQUERY:
+ case PlSqlParser.ISOLATION:
+ case PlSqlParser.ISOLATION_LEVEL:
+ case PlSqlParser.ITERATE:
+ case PlSqlParser.ITERATION_NUMBER:
+ case PlSqlParser.JAVA:
+ case PlSqlParser.JOB:
+ case PlSqlParser.JOIN:
+ case PlSqlParser.JSON_ARRAYAGG:
+ case PlSqlParser.JSON_ARRAY:
+ case PlSqlParser.JSON_EQUAL:
+ case PlSqlParser.JSON_EXISTS2:
+ case PlSqlParser.JSON_EXISTS:
+ case PlSqlParser.JSONGET:
+ case PlSqlParser.JSON:
+ case PlSqlParser.JSON_OBJECTAGG:
+ case PlSqlParser.JSON_OBJECT:
+ case PlSqlParser.JSONPARSE:
+ case PlSqlParser.JSON_QUERY:
+ case PlSqlParser.JSON_SERIALIZE:
+ case PlSqlParser.JSON_TABLE:
+ case PlSqlParser.JSON_TEXTCONTAINS2:
+ case PlSqlParser.JSON_TEXTCONTAINS:
+ case PlSqlParser.JSON_VALUE:
+ case PlSqlParser.KEEP_DUPLICATES:
+ case PlSqlParser.KEEP:
+ case PlSqlParser.KERBEROS:
+ case PlSqlParser.KEY:
+ case PlSqlParser.KEY_LENGTH:
+ case PlSqlParser.KEYSIZE:
+ case PlSqlParser.KEYS:
+ case PlSqlParser.KEYSTORE:
+ case PlSqlParser.KILL:
+ case PlSqlParser.LABEL:
+ case PlSqlParser.LANGUAGE:
+ case PlSqlParser.LAST_DAY:
+ case PlSqlParser.LAST:
+ case PlSqlParser.LAST_VALUE:
+ case PlSqlParser.LATERAL:
+ case PlSqlParser.LAX:
+ case PlSqlParser.LAYER:
+ case PlSqlParser.LDAP_REGISTRATION_ENABLED:
+ case PlSqlParser.LDAP_REGISTRATION:
+ case PlSqlParser.LDAP_REG_SYNC_INTERVAL:
+ case PlSqlParser.LEADING:
+ case PlSqlParser.LEFT:
+ case PlSqlParser.LENGTH2:
+ case PlSqlParser.LENGTH4:
+ case PlSqlParser.LENGTHB:
+ case PlSqlParser.LENGTHC:
+ case PlSqlParser.LENGTH:
+ case PlSqlParser.LESS:
+ case PlSqlParser.LEVEL:
+ case PlSqlParser.LEVELS:
+ case PlSqlParser.LIBRARY:
+ case PlSqlParser.LIFECYCLE:
+ case PlSqlParser.LIFE:
+ case PlSqlParser.LIFETIME:
+ case PlSqlParser.LIKE2:
+ case PlSqlParser.LIKE4:
+ case PlSqlParser.LIKEC:
+ case PlSqlParser.LIKE_EXPAND:
+ case PlSqlParser.LIMIT:
+ case PlSqlParser.LINEAR:
+ case PlSqlParser.LINK:
+ case PlSqlParser.LIST:
+ case PlSqlParser.LN:
+ case PlSqlParser.LNNVL:
+ case PlSqlParser.LOAD:
+ case PlSqlParser.LOB:
+ case PlSqlParser.LOBNVL:
+ case PlSqlParser.LOBS:
+ case PlSqlParser.LOCAL_INDEXES:
+ case PlSqlParser.LOCAL:
+ case PlSqlParser.LOCALTIME:
+ case PlSqlParser.LOCALTIMESTAMP:
+ case PlSqlParser.LOCATION:
+ case PlSqlParser.LOCATOR:
+ case PlSqlParser.LOCKED:
+ case PlSqlParser.LOCKING:
+ case PlSqlParser.LOGFILE:
+ case PlSqlParser.LOGFILES:
+ case PlSqlParser.LOGGING:
+ case PlSqlParser.LOGICAL:
+ case PlSqlParser.LOGICAL_READS_PER_CALL:
+ case PlSqlParser.LOGICAL_READS_PER_SESSION:
+ case PlSqlParser.LOG:
+ case PlSqlParser.LOGMINING:
+ case PlSqlParser.LOGOFF:
+ case PlSqlParser.LOGON:
+ case PlSqlParser.LOG_READ_ONLY_VIOLATIONS:
+ case PlSqlParser.LONG:
+ case PlSqlParser.LOOP:
+ case PlSqlParser.LOWER:
+ case PlSqlParser.LOW:
+ case PlSqlParser.LPAD:
+ case PlSqlParser.LTRIM:
+ case PlSqlParser.MAIN:
+ case PlSqlParser.MAKE_REF:
+ case PlSqlParser.MANAGED:
+ case PlSqlParser.MANAGE:
+ case PlSqlParser.MANAGEMENT:
+ case PlSqlParser.MANAGER:
+ case PlSqlParser.MANUAL:
+ case PlSqlParser.MAP:
+ case PlSqlParser.MAPPING:
+ case PlSqlParser.MASTER:
+ case PlSqlParser.MATCHED:
+ case PlSqlParser.MATCHES:
+ case PlSqlParser.MATCH:
+ case PlSqlParser.MATCH_NUMBER:
+ case PlSqlParser.MATCH_RECOGNIZE:
+ case PlSqlParser.MATERIALIZED:
+ case PlSqlParser.MATERIALIZE:
+ case PlSqlParser.MAXARCHLOGS:
+ case PlSqlParser.MAXDATAFILES:
+ case PlSqlParser.MAXEXTENTS:
+ case PlSqlParser.MAXIMIZE:
+ case PlSqlParser.MAXINSTANCES:
+ case PlSqlParser.MAXLOGFILES:
+ case PlSqlParser.MAXLOGHISTORY:
+ case PlSqlParser.MAXLOGMEMBERS:
+ case PlSqlParser.MAX_SHARED_TEMP_SIZE:
+ case PlSqlParser.MAXSIZE:
+ case PlSqlParser.MAXTRANS:
+ case PlSqlParser.MAXVALUE:
+ case PlSqlParser.MEASURE:
+ case PlSqlParser.MEASURES:
+ case PlSqlParser.MEDIUM:
+ case PlSqlParser.MEMBER:
+ case PlSqlParser.MEMCOMPRESS:
+ case PlSqlParser.MEMORY:
+ case PlSqlParser.MERGEACTIONS:
+ case PlSqlParser.MERGE_AJ:
+ case PlSqlParser.MERGE_CONST_ON:
+ case PlSqlParser.MERGE:
+ case PlSqlParser.MERGE_SJ:
+ case PlSqlParser.METADATA:
+ case PlSqlParser.METHOD:
+ case PlSqlParser.MIGRATE:
+ case PlSqlParser.MIGRATION:
+ case PlSqlParser.MINEXTENTS:
+ case PlSqlParser.MINIMIZE:
+ case PlSqlParser.MINIMUM:
+ case PlSqlParser.MINING:
+ case PlSqlParser.MINUS_NULL:
+ case PlSqlParser.MINUTE:
+ case PlSqlParser.MINVALUE:
+ case PlSqlParser.MIRRORCOLD:
+ case PlSqlParser.MIRRORHOT:
+ case PlSqlParser.MIRROR:
+ case PlSqlParser.MLSLABEL:
+ case PlSqlParser.MODEL_COMPILE_SUBQUERY:
+ case PlSqlParser.MODEL_DONTVERIFY_UNIQUENESS:
+ case PlSqlParser.MODEL_DYNAMIC_SUBQUERY:
+ case PlSqlParser.MODEL_MIN_ANALYSIS:
+ case PlSqlParser.MODEL:
+ case PlSqlParser.MODEL_NB:
+ case PlSqlParser.MODEL_NO_ANALYSIS:
+ case PlSqlParser.MODEL_PBY:
+ case PlSqlParser.MODEL_PUSH_REF:
+ case PlSqlParser.MODEL_SV:
+ case PlSqlParser.MODIFICATION:
+ case PlSqlParser.MODIFY_COLUMN_TYPE:
+ case PlSqlParser.MODIFY:
+ case PlSqlParser.MOD:
+ case PlSqlParser.MODULE:
+ case PlSqlParser.MONITORING:
+ case PlSqlParser.MONITOR:
+ case PlSqlParser.MONTH:
+ case PlSqlParser.MONTHS_BETWEEN:
+ case PlSqlParser.MONTHS:
+ case PlSqlParser.MOUNT:
+ case PlSqlParser.MOUNTPATH:
+ case PlSqlParser.MOVEMENT:
+ case PlSqlParser.MOVE:
+ case PlSqlParser.MULTIDIMENSIONAL:
+ case PlSqlParser.MULTISET:
+ case PlSqlParser.MV_MERGE:
+ case PlSqlParser.NAMED:
+ case PlSqlParser.NAME:
+ case PlSqlParser.NAMESPACE:
+ case PlSqlParser.NAN:
+ case PlSqlParser.NANVL:
+ case PlSqlParser.NATIONAL:
+ case PlSqlParser.NATIVE_FULL_OUTER_JOIN:
+ case PlSqlParser.NATIVE:
+ case PlSqlParser.NATURAL:
+ case PlSqlParser.NAV:
+ case PlSqlParser.NCHAR_CS:
+ case PlSqlParser.NCHAR:
+ case PlSqlParser.NCHR:
+ case PlSqlParser.NCLOB:
+ case PlSqlParser.NEEDED:
+ case PlSqlParser.NEG:
+ case PlSqlParser.NESTED:
+ case PlSqlParser.NESTED_TABLE_FAST_INSERT:
+ case PlSqlParser.NESTED_TABLE_GET_REFS:
+ case PlSqlParser.NESTED_TABLE_ID:
+ case PlSqlParser.NESTED_TABLE_SET_REFS:
+ case PlSqlParser.NESTED_TABLE_SET_SETID:
+ case PlSqlParser.NETWORK:
+ case PlSqlParser.NEVER:
+ case PlSqlParser.NEW:
+ case PlSqlParser.NEW_TIME:
+ case PlSqlParser.NEXT_DAY:
+ case PlSqlParser.NEXT:
+ case PlSqlParser.NL_AJ:
+ case PlSqlParser.NLJ_BATCHING:
+ case PlSqlParser.NLJ_INDEX_FILTER:
+ case PlSqlParser.NLJ_INDEX_SCAN:
+ case PlSqlParser.NLJ_PREFETCH:
+ case PlSqlParser.NLS_CALENDAR:
+ case PlSqlParser.NLS_CHARACTERSET:
+ case PlSqlParser.NLS_CHARSET_DECL_LEN:
+ case PlSqlParser.NLS_CHARSET_ID:
+ case PlSqlParser.NLS_CHARSET_NAME:
+ case PlSqlParser.NLS_COMP:
+ case PlSqlParser.NLS_CURRENCY:
+ case PlSqlParser.NLS_DATE_FORMAT:
+ case PlSqlParser.NLS_DATE_LANGUAGE:
+ case PlSqlParser.NLS_INITCAP:
+ case PlSqlParser.NLS_ISO_CURRENCY:
+ case PlSqlParser.NL_SJ:
+ case PlSqlParser.NLS_LANG:
+ case PlSqlParser.NLS_LANGUAGE:
+ case PlSqlParser.NLS_LENGTH_SEMANTICS:
+ case PlSqlParser.NLS_LOWER:
+ case PlSqlParser.NLS_NCHAR_CONV_EXCP:
+ case PlSqlParser.NLS_NUMERIC_CHARACTERS:
+ case PlSqlParser.NLS_SORT:
+ case PlSqlParser.NLSSORT:
+ case PlSqlParser.NLS_SPECIAL_CHARS:
+ case PlSqlParser.NLS_TERRITORY:
+ case PlSqlParser.NLS_UPPER:
+ case PlSqlParser.NO_ACCESS:
+ case PlSqlParser.NO_ADAPTIVE_PLAN:
+ case PlSqlParser.NO_ANSI_REARCH:
+ case PlSqlParser.NOAPPEND:
+ case PlSqlParser.NOARCHIVELOG:
+ case PlSqlParser.NOAUDIT:
+ case PlSqlParser.NO_AUTO_REOPTIMIZE:
+ case PlSqlParser.NO_BASETABLE_MULTIMV_REWRITE:
+ case PlSqlParser.NO_BATCH_TABLE_ACCESS_BY_ROWID:
+ case PlSqlParser.NO_BIND_AWARE:
+ case PlSqlParser.NO_BUFFER:
+ case PlSqlParser.NOCACHE:
+ case PlSqlParser.NO_CARTESIAN:
+ case PlSqlParser.NO_CHECK_ACL_REWRITE:
+ case PlSqlParser.NO_CLUSTER_BY_ROWID:
+ case Pl
\ No newline at end of file
diff --git a/src/lib/plsql/PlSqlParser.tokens b/src/lib/plsql/PlSqlParser.tokens
new file mode 100644
index 0000000..57e71c2
--- /dev/null
+++ b/src/lib/plsql/PlSqlParser.tokens
@@ -0,0 +1,4484 @@
+ABORT=1
+ABS=2
+ACCESS=3
+ACCESSED=4
+ACCOUNT=5
+ACL=6
+ACOS=7
+ACTION=8
+ACTIONS=9
+ACTIVATE=10
+ACTIVE=11
+ACTIVE_COMPONENT=12
+ACTIVE_DATA=13
+ACTIVE_FUNCTION=14
+ACTIVE_TAG=15
+ACTIVITY=16
+ADAPTIVE_PLAN=17
+ADD=18
+ADD_COLUMN=19
+ADD_GROUP=20
+ADD_MONTHS=21
+ADJ_DATE=22
+ADMIN=23
+ADMINISTER=24
+ADMINISTRATOR=25
+ADVANCED=26
+ADVISE=27
+ADVISOR=28
+AFD_DISKSTRING=29
+AFTER=30
+AGENT=31
+AGGREGATE=32
+A_LETTER=33
+ALIAS=34
+ALL=35
+ALLOCATE=36
+ALLOW=37
+ALL_ROWS=38
+ALTER=39
+ALWAYS=40
+ANALYZE=41
+ANCILLARY=42
+AND=43
+AND_EQUAL=44
+ANOMALY=45
+ANSI_REARCH=46
+ANTIJOIN=47
+ANY=48
+ANYSCHEMA=49
+APPEND=50
+APPENDCHILDXML=51
+APPEND_VALUES=52
+APPLICATION=53
+APPLY=54
+APPROX_COUNT_DISTINCT=55
+ARCHIVAL=56
+ARCHIVE=57
+ARCHIVED=58
+ARCHIVELOG=59
+ARRAY=60
+AS=61
+ASC=62
+ASCII=63
+ASCIISTR=64
+ASIN=65
+ASIS=66
+ASSEMBLY=67
+ASSIGN=68
+ASSOCIATE=69
+ASYNC=70
+ASYNCHRONOUS=71
+ATAN2=72
+ATAN=73
+AT=74
+ATTRIBUTE=75
+ATTRIBUTES=76
+AUDIT=77
+AUTHENTICATED=78
+AUTHENTICATION=79
+AUTHID=80
+AUTHORIZATION=81
+AUTOALLOCATE=82
+AUTO=83
+AUTOBACKUP=84
+AUTOEXTEND=85
+AUTO_LOGIN=86
+AUTOMATIC=87
+AUTONOMOUS_TRANSACTION=88
+AUTO_REOPTIMIZE=89
+AVAILABILITY=90
+AVRO=91
+BACKGROUND=92
+BACKUP=93
+BACKUPSET=94
+BASIC=95
+BASICFILE=96
+BATCH=97
+BATCHSIZE=98
+BATCH_TABLE_ACCESS_BY_ROWID=99
+BECOME=100
+BEFORE=101
+BEGIN=102
+BEGINNING=103
+BEGIN_OUTLINE_DATA=104
+BEHALF=105
+BEQUEATH=106
+BETWEEN=107
+BFILE=108
+BFILENAME=109
+BIGFILE=110
+BINARY=111
+BINARY_DOUBLE=112
+BINARY_DOUBLE_INFINITY=113
+BINARY_DOUBLE_NAN=114
+BINARY_FLOAT=115
+BINARY_FLOAT_INFINITY=116
+BINARY_FLOAT_NAN=117
+BINARY_INTEGER=118
+BIND_AWARE=119
+BINDING=120
+BIN_TO_NUM=121
+BITAND=122
+BITMAP_AND=123
+BITMAP=124
+BITMAPS=125
+BITMAP_TREE=126
+BITS=127
+BLOB=128
+BLOCK=129
+BLOCK_RANGE=130
+BLOCKS=131
+BLOCKSIZE=132
+BODY=133
+BOOLEAN=134
+BOTH=135
+BOUND=136
+BRANCH=137
+BREADTH=138
+BROADCAST=139
+BSON=140
+BUFFER=141
+BUFFER_CACHE=142
+BUFFER_POOL=143
+BUILD=144
+BULK=145
+BY=146
+BYPASS_RECURSIVE_CHECK=147
+BYPASS_UJVC=148
+BYTE=149
+CACHE=150
+CACHE_CB=151
+CACHE_INSTANCES=152
+CACHE_TEMP_TABLE=153
+CACHING=154
+CALCULATED=155
+CALLBACK=156
+CALL=157
+CANCEL=158
+CANONICAL=159
+CAPACITY=160
+CARDINALITY=161
+CASCADE=162
+CASE=163
+CAST=164
+CATEGORY=165
+CDBDEFAULT=166
+CEIL=167
+CELL_FLASH_CACHE=168
+CERTIFICATE=169
+CFILE=170
+CHAINED=171
+CHANGE=172
+CHANGETRACKING=173
+CHANGE_DUPKEY_ERROR_INDEX=174
+CHARACTER=175
+CHAR=176
+CHAR_CS=177
+CHARTOROWID=178
+CHECK_ACL_REWRITE=179
+CHECK=180
+CHECKPOINT=181
+CHILD=182
+CHOOSE=183
+CHR=184
+CHUNK=185
+CLASS=186
+CLASSIFIER=187
+CLEANUP=188
+CLEAR=189
+C_LETTER=190
+CLIENT=191
+CLOB=192
+CLONE=193
+CLOSE_CACHED_OPEN_CURSORS=194
+CLOSE=195
+CLUSTER_BY_ROWID=196
+CLUSTER=197
+CLUSTER_DETAILS=198
+CLUSTER_DISTANCE=199
+CLUSTER_ID=200
+CLUSTERING=201
+CLUSTERING_FACTOR=202
+CLUSTER_PROBABILITY=203
+CLUSTER_SET=204
+COALESCE=205
+COALESCE_SQ=206
+COARSE=207
+CO_AUTH_IND=208
+COLD=209
+COLLECT=210
+COLUMNAR=211
+COLUMN_AUTH_INDICATOR=212
+COLUMN=213
+COLUMNS=214
+COLUMN_STATS=215
+COLUMN_VALUE=216
+COMMENT=217
+COMMIT=218
+COMMITTED=219
+COMMON_DATA=220
+COMPACT=221
+COMPATIBILITY=222
+COMPILE=223
+COMPLETE=224
+COMPLIANCE=225
+COMPONENT=226
+COMPONENTS=227
+COMPOSE=228
+COMPOSITE=229
+COMPOSITE_LIMIT=230
+COMPOUND=231
+COMPRESS=232
+COMPUTE=233
+CONCAT=234
+CON_DBID_TO_ID=235
+CONDITIONAL=236
+CONDITION=237
+CONFIRM=238
+CONFORMING=239
+CON_GUID_TO_ID=240
+CON_ID=241
+CON_NAME_TO_ID=242
+CONNECT_BY_CB_WHR_ONLY=243
+CONNECT_BY_COMBINE_SW=244
+CONNECT_BY_COST_BASED=245
+CONNECT_BY_ELIM_DUPS=246
+CONNECT_BY_FILTERING=247
+CONNECT_BY_ISCYCLE=248
+CONNECT_BY_ISLEAF=249
+CONNECT_BY_ROOT=250
+CONNECT=251
+CONNECT_TIME=252
+CONSIDER=253
+CONSISTENT=254
+CONSTANT=255
+CONST=256
+CONSTRAINT=257
+CONSTRAINTS=258
+CONSTRUCTOR=259
+CONTAINER=260
+CONTAINER_DATA=261
+CONTAINERS=262
+CONTENT=263
+CONTENTS=264
+CONTEXT=265
+CONTINUE=266
+CONTROLFILE=267
+CON_UID_TO_ID=268
+CONVERT=269
+COOKIE=270
+COPY=271
+CORR_K=272
+CORR_S=273
+CORRUPTION=274
+CORRUPT_XID_ALL=275
+CORRUPT_XID=276
+COS=277
+COSH=278
+COST=279
+COST_XML_QUERY_REWRITE=280
+COUNT=281
+COVAR_POP=282
+COVAR_SAMP=283
+CPU_COSTING=284
+CPU_PER_CALL=285
+CPU_PER_SESSION=286
+CRASH=287
+CREATE=288
+CREATE_FILE_DEST=289
+CREATE_STORED_OUTLINES=290
+CREATION=291
+CREDENTIAL=292
+CRITICAL=293
+CROSS=294
+CROSSEDITION=295
+CSCONVERT=296
+CUBE_AJ=297
+CUBE=298
+CUBE_GB=299
+CUBE_SJ=300
+CUME_DISTM=301
+CURRENT=302
+CURRENT_DATE=303
+CURRENT_SCHEMA=304
+CURRENT_TIME=305
+CURRENT_TIMESTAMP=306
+CURRENT_USER=307
+CURRENTV=308
+CURSOR=309
+CURSOR_SHARING_EXACT=310
+CURSOR_SPECIFIC_SEGMENT=311
+CUSTOMDATUM=312
+CV=313
+CYCLE=314
+DANGLING=315
+DATABASE=316
+DATA=317
+DATAFILE=318
+DATAFILES=319
+DATAGUARDCONFIG=320
+DATAMOVEMENT=321
+DATAOBJNO=322
+DATAOBJ_TO_MAT_PARTITION=323
+DATAOBJ_TO_PARTITION=324
+DATAPUMP=325
+DATA_SECURITY_REWRITE_LIMIT=326
+DATE=327
+DATE_MODE=328
+DAY=329
+DAYS=330
+DBA=331
+DBA_RECYCLEBIN=332
+DBMS_STATS=333
+DB_ROLE_CHANGE=334
+DBTIMEZONE=335
+DB_UNIQUE_NAME=336
+DB_VERSION=337
+DDL=338
+DEALLOCATE=339
+DEBUG=340
+DEBUGGER=341
+DEC=342
+DECIMAL=343
+DECLARE=344
+DECOMPOSE=345
+DECORRELATE=346
+DECR=347
+DECREMENT=348
+DECRYPT=349
+DEDUPLICATE=350
+DEFAULT=351
+DEFAULTS=352
+DEFERRABLE=353
+DEFERRED=354
+DEFINED=355
+DEFINE=356
+DEFINER=357
+DEGREE=358
+DELAY=359
+DELEGATE=360
+DELETE_ALL=361
+DELETE=362
+DELETEXML=363
+DEMAND=364
+DENSE_RANKM=365
+DEPENDENT=366
+DEPTH=367
+DEQUEUE=368
+DEREF=369
+DEREF_NO_REWRITE=370
+DESC=371
+DESTROY=372
+DETACHED=373
+DETERMINES=374
+DETERMINISTIC=375
+DICTIONARY=376
+DIMENSION=377
+DIMENSIONS=378
+DIRECT_LOAD=379
+DIRECTORY=380
+DIRECT_PATH=381
+DISABLE_ALL=382
+DISABLE=383
+DISABLE_PARALLEL_DML=384
+DISABLE_PRESET=385
+DISABLE_RPKE=386
+DISALLOW=387
+DISASSOCIATE=388
+DISCARD=389
+DISCONNECT=390
+DISK=391
+DISKGROUP=392
+DISKGROUP_PLUS=393
+DISKS=394
+DISMOUNT=395
+DISTINCT=396
+DISTINGUISHED=397
+DISTRIBUTED=398
+DISTRIBUTE=399
+DML=400
+DML_UPDATE=401
+DOCFIDELITY=402
+DOCUMENT=403
+DOMAIN_INDEX_FILTER=404
+DOMAIN_INDEX_NO_SORT=405
+DOMAIN_INDEX_SORT=406
+DOUBLE=407
+DOWNGRADE=408
+DRIVING_SITE=409
+DROP_COLUMN=410
+DROP=411
+DROP_GROUP=412
+DSINTERVAL_UNCONSTRAINED=413
+DST_UPGRADE_INSERT_CONV=414
+DUMP=415
+DUMPSET=416
+DUPLICATE=417
+DV=418
+DYNAMIC=419
+DYNAMIC_SAMPLING=420
+DYNAMIC_SAMPLING_EST_CDN=421
+EACH=422
+EDITIONABLE=423
+EDITION=424
+EDITIONING=425
+EDITIONS=426
+ELEMENT=427
+ELIM_GROUPBY=428
+ELIMINATE_JOIN=429
+ELIMINATE_OBY=430
+ELIMINATE_OUTER_JOIN=431
+ELSE=432
+ELSIF=433
+EM=434
+EMPTY_BLOB=435
+EMPTY_CLOB=436
+EMPTY=437
+ENABLE_ALL=438
+ENABLE=439
+ENABLE_PARALLEL_DML=440
+ENABLE_PRESET=441
+ENCODING=442
+ENCRYPT=443
+ENCRYPTION=444
+END=445
+END_OUTLINE_DATA=446
+ENFORCED=447
+ENFORCE=448
+ENQUEUE=449
+ENTERPRISE=450
+ENTITYESCAPING=451
+ENTRY=452
+EQUIPART=453
+ERR=454
+ERROR_ARGUMENT=455
+ERROR=456
+ERROR_ON_OVERLAP_TIME=457
+ERRORS=458
+ESCAPE=459
+ESTIMATE=460
+EVAL=461
+EVALNAME=462
+EVALUATE=463
+EVALUATION=464
+EVENTS=465
+EVERY=466
+EXCEPT=467
+EXCEPTION=468
+EXCEPTION_INIT=469
+EXCEPTIONS=470
+EXCHANGE=471
+EXCLUDE=472
+EXCLUDING=473
+EXCLUSIVE=474
+EXECUTE=475
+EXEMPT=476
+EXISTING=477
+EXISTS=478
+EXISTSNODE=479
+EXIT=480
+EXPAND_GSET_TO_UNION=481
+EXPAND_TABLE=482
+EXP=483
+EXPIRE=484
+EXPLAIN=485
+EXPLOSION=486
+EXPORT=487
+EXPR_CORR_CHECK=488
+EXPRESS=489
+EXTENDS=490
+EXTENT=491
+EXTENTS=492
+EXTERNAL=493
+EXTERNALLY=494
+EXTRACTCLOBXML=495
+EXTRACT=496
+EXTRACTVALUE=497
+EXTRA=498
+FACILITY=499
+FACT=500
+FACTOR=501
+FACTORIZE_JOIN=502
+FAILED=503
+FAILED_LOGIN_ATTEMPTS=504
+FAILGROUP=505
+FAILOVER=506
+FAILURE=507
+FALSE=508
+FAMILY=509
+FAR=510
+FAST=511
+FASTSTART=512
+FBTSCAN=513
+FEATURE_DETAILS=514
+FEATURE_ID=515
+FEATURE_SET=516
+FEATURE_VALUE=517
+FETCH=518
+FILE=519
+FILE_NAME_CONVERT=520
+FILESYSTEM_LIKE_LOGGING=521
+FILTER=522
+FINAL=523
+FINE=524
+FINISH=525
+FIRST=526
+FIRSTM=527
+FIRST_ROWS=528
+FIRST_VALUE=529
+FIXED_VIEW_DATA=530
+FLAGGER=531
+FLASHBACK=532
+FLASH_CACHE=533
+FLOAT=534
+FLOB=535
+FLOOR=536
+FLUSH=537
+FOLDER=538
+FOLLOWING=539
+FOLLOWS=540
+FORALL=541
+FORCE=542
+FORCE_XML_QUERY_REWRITE=543
+FOREIGN=544
+FOREVER=545
+FOR=546
+FORMAT=547
+FORWARD=548
+FRAGMENT_NUMBER=549
+FREELIST=550
+FREELISTS=551
+FREEPOOLS=552
+FRESH=553
+FROM=554
+FROM_TZ=555
+FULL=556
+FULL_OUTER_JOIN_TO_OUTER=557
+FUNCTION=558
+FUNCTIONS=559
+GATHER_OPTIMIZER_STATISTICS=560
+GATHER_PLAN_STATISTICS=561
+GBY_CONC_ROLLUP=562
+GBY_PUSHDOWN=563
+GENERATED=564
+GET=565
+GLOBAL=566
+GLOBALLY=567
+GLOBAL_NAME=568
+GLOBAL_TOPIC_ENABLED=569
+GOTO=570
+GRANT=571
+GROUP_BY=572
+GROUP=573
+GROUP_ID=574
+GROUPING=575
+GROUPING_ID=576
+GROUPS=577
+GUARANTEED=578
+GUARANTEE=579
+GUARD=580
+HASH_AJ=581
+HASH=582
+HASHKEYS=583
+HASH_SJ=584
+HAVING=585
+HEADER=586
+HEAP=587
+HELP=588
+HEXTORAW=589
+HEXTOREF=590
+HIDDEN_KEYWORD=591
+HIDE=592
+HIERARCHY=593
+HIGH=594
+HINTSET_BEGIN=595
+HINTSET_END=596
+HOT=597
+HOUR=598
+HWM_BROKERED=599
+HYBRID=600
+IDENTIFIED=601
+IDENTIFIER=602
+IDENTITY=603
+IDGENERATORS=604
+ID=605
+IDLE_TIME=606
+IF=607
+IGNORE=608
+IGNORE_OPTIM_EMBEDDED_HINTS=609
+IGNORE_ROW_ON_DUPKEY_INDEX=610
+IGNORE_WHERE_CLAUSE=611
+ILM=612
+IMMEDIATE=613
+IMPACT=614
+IMPORT=615
+INACTIVE=616
+INCLUDE=617
+INCLUDE_VERSION=618
+INCLUDING=619
+INCREMENTAL=620
+INCREMENT=621
+INCR=622
+INDENT=623
+INDEX_ASC=624
+INDEX_COMBINE=625
+INDEX_DESC=626
+INDEXED=627
+INDEXES=628
+INDEX_FFS=629
+INDEX_FILTER=630
+INDEX=631
+INDEXING=632
+INDEX_JOIN=633
+INDEX_ROWS=634
+INDEX_RRS=635
+INDEX_RS_ASC=636
+INDEX_RS_DESC=637
+INDEX_RS=638
+INDEX_SCAN=639
+INDEX_SKIP_SCAN=640
+INDEX_SS_ASC=641
+INDEX_SS_DESC=642
+INDEX_SS=643
+INDEX_STATS=644
+INDEXTYPE=645
+INDEXTYPES=646
+INDICATOR=647
+INDICES=648
+INFINITE=649
+INFORMATIONAL=650
+INHERIT=651
+IN=652
+INITCAP=653
+INITIAL=654
+INITIALIZED=655
+INITIALLY=656
+INITRANS=657
+INLINE=658
+INLINE_XMLTYPE_NT=659
+INMEMORY=660
+IN_MEMORY_METADATA=661
+INMEMORY_PRUNING=662
+INNER=663
+INOUT=664
+INPLACE=665
+INSERTCHILDXMLAFTER=666
+INSERTCHILDXMLBEFORE=667
+INSERTCHILDXML=668
+INSERT=669
+INSERTXMLAFTER=670
+INSERTXMLBEFORE=671
+INSTANCE=672
+INSTANCES=673
+INSTANTIABLE=674
+INSTANTLY=675
+INSTEAD=676
+INSTR2=677
+INSTR4=678
+INSTRB=679
+INSTRC=680
+INSTR=681
+INTEGER=682
+INTERLEAVED=683
+INTERMEDIATE=684
+INTERNAL_CONVERT=685
+INTERNAL_USE=686
+INTERPRETED=687
+INTERSECT=688
+INTERVAL=689
+INT=690
+INTO=691
+INVALIDATE=692
+INVISIBLE=693
+IN_XQUERY=694
+IS=695
+ISOLATION=696
+ISOLATION_LEVEL=697
+ITERATE=698
+ITERATION_NUMBER=699
+JAVA=700
+JOB=701
+JOIN=702
+JSON_ARRAYAGG=703
+JSON_ARRAY=704
+JSON_EQUAL=705
+JSON_EXISTS2=706
+JSON_EXISTS=707
+JSONGET=708
+JSON=709
+JSON_OBJECTAGG=710
+JSON_OBJECT=711
+JSONPARSE=712
+JSON_QUERY=713
+JSON_SERIALIZE=714
+JSON_TABLE=715
+JSON_TEXTCONTAINS2=716
+JSON_TEXTCONTAINS=717
+JSON_VALUE=718
+KEEP_DUPLICATES=719
+KEEP=720
+KERBEROS=721
+KEY=722
+KEY_LENGTH=723
+KEYSIZE=724
+KEYS=725
+KEYSTORE=726
+KILL=727
+LABEL=728
+LANGUAGE=729
+LAST_DAY=730
+LAST=731
+LAST_VALUE=732
+LATERAL=733
+LAX=734
+LAYER=735
+LDAP_REGISTRATION_ENABLED=736
+LDAP_REGISTRATION=737
+LDAP_REG_SYNC_INTERVAL=738
+LEADING=739
+LEFT=740
+LENGTH2=741
+LENGTH4=742
+LENGTHB=743
+LENGTHC=744
+LENGTH=745
+LESS=746
+LEVEL=747
+LEVELS=748
+LIBRARY=749
+LIFECYCLE=750
+LIFE=751
+LIFETIME=752
+LIKE2=753
+LIKE4=754
+LIKEC=755
+LIKE_EXPAND=756
+LIKE=757
+LIMIT=758
+LINEAR=759
+LINK=760
+LIST=761
+LN=762
+LNNVL=763
+LOAD=764
+LOB=765
+LOBNVL=766
+LOBS=767
+LOCAL_INDEXES=768
+LOCAL=769
+LOCALTIME=770
+LOCALTIMESTAMP=771
+LOCATION=772
+LOCATOR=773
+LOCKED=774
+LOCKING=775
+LOCK=776
+LOGFILE=777
+LOGFILES=778
+LOGGING=779
+LOGICAL=780
+LOGICAL_READS_PER_CALL=781
+LOGICAL_READS_PER_SESSION=782
+LOG=783
+LOGMINING=784
+LOGOFF=785
+LOGON=786
+LOG_READ_ONLY_VIOLATIONS=787
+LONG=788
+LOOP=789
+LOWER=790
+LOW=791
+LPAD=792
+LTRIM=793
+MAIN=794
+MAKE_REF=795
+MANAGED=796
+MANAGE=797
+MANAGEMENT=798
+MANAGER=799
+MANUAL=800
+MAP=801
+MAPPING=802
+MASTER=803
+MATCHED=804
+MATCHES=805
+MATCH=806
+MATCH_NUMBER=807
+MATCH_RECOGNIZE=808
+MATERIALIZED=809
+MATERIALIZE=810
+MAXARCHLOGS=811
+MAXDATAFILES=812
+MAXEXTENTS=813
+MAXIMIZE=814
+MAXINSTANCES=815
+MAXLOGFILES=816
+MAXLOGHISTORY=817
+MAXLOGMEMBERS=818
+MAX_SHARED_TEMP_SIZE=819
+MAXSIZE=820
+MAXTRANS=821
+MAXVALUE=822
+MEASURE=823
+MEASURES=824
+MEDIUM=825
+MEMBER=826
+MEMCOMPRESS=827
+MEMORY=828
+MERGEACTIONS=829
+MERGE_AJ=830
+MERGE_CONST_ON=831
+MERGE=832
+MERGE_SJ=833
+METADATA=834
+METHOD=835
+MIGRATE=836
+MIGRATION=837
+MINEXTENTS=838
+MINIMIZE=839
+MINIMUM=840
+MINING=841
+MINUS=842
+MINUS_NULL=843
+MINUTE=844
+MINVALUE=845
+MIRRORCOLD=846
+MIRRORHOT=847
+MIRROR=848
+MLSLABEL=849
+MODEL_COMPILE_SUBQUERY=850
+MODEL_DONTVERIFY_UNIQUENESS=851
+MODEL_DYNAMIC_SUBQUERY=852
+MODEL_MIN_ANALYSIS=853
+MODEL=854
+MODEL_NB=855
+MODEL_NO_ANALYSIS=856
+MODEL_PBY=857
+MODEL_PUSH_REF=858
+MODEL_SV=859
+MODE=860
+MODIFICATION=861
+MODIFY_COLUMN_TYPE=862
+MODIFY=863
+MOD=864
+MODULE=865
+MONITORING=866
+MONITOR=867
+MONTH=868
+MONTHS_BETWEEN=869
+MONTHS=870
+MOUNT=871
+MOUNTPATH=872
+MOVEMENT=873
+MOVE=874
+MULTIDIMENSIONAL=875
+MULTISET=876
+MV_MERGE=877
+NAMED=878
+NAME=879
+NAMESPACE=880
+NAN=881
+NANVL=882
+NATIONAL=883
+NATIVE_FULL_OUTER_JOIN=884
+NATIVE=885
+NATURAL=886
+NATURALN=887
+NAV=888
+NCHAR_CS=889
+NCHAR=890
+NCHR=891
+NCLOB=892
+NEEDED=893
+NEG=894
+NESTED=895
+NESTED_TABLE_FAST_INSERT=896
+NESTED_TABLE_GET_REFS=897
+NESTED_TABLE_ID=898
+NESTED_TABLE_SET_REFS=899
+NESTED_TABLE_SET_SETID=900
+NETWORK=901
+NEVER=902
+NEW=903
+NEW_TIME=904
+NEXT_DAY=905
+NEXT=906
+NL_AJ=907
+NLJ_BATCHING=908
+NLJ_INDEX_FILTER=909
+NLJ_INDEX_SCAN=910
+NLJ_PREFETCH=911
+NLS_CALENDAR=912
+NLS_CHARACTERSET=913
+NLS_CHARSET_DECL_LEN=914
+NLS_CHARSET_ID=915
+NLS_CHARSET_NAME=916
+NLS_COMP=917
+NLS_CURRENCY=918
+NLS_DATE_FORMAT=919
+NLS_DATE_LANGUAGE=920
+NLS_INITCAP=921
+NLS_ISO_CURRENCY=922
+NL_SJ=923
+NLS_LANG=924
+NLS_LANGUAGE=925
+NLS_LENGTH_SEMANTICS=926
+NLS_LOWER=927
+NLS_NCHAR_CONV_EXCP=928
+NLS_NUMERIC_CHARACTERS=929
+NLS_SORT=930
+NLSSORT=931
+NLS_SPECIAL_CHARS=932
+NLS_TERRITORY=933
+NLS_UPPER=934
+NO_ACCESS=935
+NO_ADAPTIVE_PLAN=936
+NO_ANSI_REARCH=937
+NOAPPEND=938
+NOARCHIVELOG=939
+NOAUDIT=940
+NO_AUTO_REOPTIMIZE=941
+NO_BASETABLE_MULTIMV_REWRITE=942
+NO_BATCH_TABLE_ACCESS_BY_ROWID=943
+NO_BIND_AWARE=944
+NO_BUFFER=945
+NOCACHE=946
+NO_CARTESIAN=947
+NO_CHECK_ACL_REWRITE=948
+NO_CLUSTER_BY_ROWID=949
+NO_CLUSTERING=950
+NO_COALESCE_SQ=951
+NO_COMMON_DATA=952
+NOCOMPRESS=953
+NO_CONNECT_BY_CB_WHR_ONLY=954
+NO_CONNECT_BY_COMBINE_SW=955
+NO_CONNECT_BY_COST_BASED=956
+NO_CONNECT_BY_ELIM_DUPS=957
+NO_CONNECT_BY_FILTERING=958
+NOCOPY=959
+NO_COST_XML_QUERY_REWRITE=960
+NO_CPU_COSTING=961
+NOCPU_COSTING=962
+NOCYCLE=963
+NO_DATA_SECURITY_REWRITE=964
+NO_DECORRELATE=965
+NODELAY=966
+NO_DOMAIN_INDEX_FILTER=967
+NO_DST_UPGRADE_INSERT_CONV=968
+NO_ELIM_GROUPBY=969
+NO_ELIMINATE_JOIN=970
+NO_ELIMINATE_OBY=971
+NO_ELIMINATE_OUTER_JOIN=972
+NOENTITYESCAPING=973
+NO_EXPAND_GSET_TO_UNION=974
+NO_EXPAND=975
+NO_EXPAND_TABLE=976
+NO_FACT=977
+NO_FACTORIZE_JOIN=978
+NO_FILTERING=979
+NOFORCE=980
+NO_FULL_OUTER_JOIN_TO_OUTER=981
+NO_GATHER_OPTIMIZER_STATISTICS=982
+NO_GBY_PUSHDOWN=983
+NOGUARANTEE=984
+NO_INDEX_FFS=985
+NO_INDEX=986
+NO_INDEX_SS=987
+NO_INMEMORY=988
+NO_INMEMORY_PRUNING=989
+NOKEEP=990
+NO_LOAD=991
+NOLOCAL=992
+NOLOGGING=993
+NOMAPPING=994
+NOMAXVALUE=995
+NO_MERGE=996
+NOMINIMIZE=997
+NOMINVALUE=998
+NO_MODEL_PUSH_REF=999
+NO_MONITORING=1000
+NOMONITORING=1001
+NO_MONITOR=1002
+NO_MULTIMV_REWRITE=1003
+NO_NATIVE_FULL_OUTER_JOIN=1004
+NONBLOCKING=1005
+NONEDITIONABLE=1006
+NONE=1007
+NO_NLJ_BATCHING=1008
+NO_NLJ_PREFETCH=1009
+NO=1010
+NONSCHEMA=1011
+NO_OBJECT_LINK=1012
+NOORDER=1013
+NO_ORDER_ROLLUPS=1014
+NO_OUTER_JOIN_TO_ANTI=1015
+NO_OUTER_JOIN_TO_INNER=1016
+NOOVERRIDE=1017
+NO_PARALLEL_INDEX=1018
+NOPARALLEL_INDEX=1019
+NO_PARALLEL=1020
+NOPARALLEL=1021
+NO_PARTIAL_COMMIT=1022
+NO_PARTIAL_JOIN=1023
+NO_PARTIAL_ROLLUP_PUSHDOWN=1024
+NOPARTITION=1025
+NO_PLACE_DISTINCT=1026
+NO_PLACE_GROUP_BY=1027
+NO_PQ_CONCURRENT_UNION=1028
+NO_PQ_MAP=1029
+NO_PQ_REPLICATE=1030
+NO_PQ_SKEW=1031
+NO_PRUNE_GSETS=1032
+NO_PULL_PRED=1033
+NO_PUSH_PRED=1034
+NO_PUSH_SUBQ=1035
+NO_PX_FAULT_TOLERANCE=1036
+NO_PX_JOIN_FILTER=1037
+NO_QKN_BUFF=1038
+NO_QUERY_TRANSFORMATION=1039
+NO_REF_CASCADE=1040
+NORELOCATE=1041
+NORELY=1042
+NOREPAIR=1043
+NOREPLAY=1044
+NORESETLOGS=1045
+NO_RESULT_CACHE=1046
+NOREVERSE=1047
+NO_REWRITE=1048
+NOREWRITE=1049
+NORMAL=1050
+NO_ROOT_SW_FOR_LOCAL=1051
+NOROWDEPENDENCIES=1052
+NOSCHEMACHECK=1053
+NOSEGMENT=1054
+NO_SEMIJOIN=1055
+NO_SEMI_TO_INNER=1056
+NO_SET_TO_JOIN=1057
+NOSORT=1058
+NO_SQL_TRANSLATION=1059
+NO_SQL_TUNE=1060
+NO_STAR_TRANSFORMATION=1061
+NO_STATEMENT_QUEUING=1062
+NO_STATS_GSETS=1063
+NOSTRICT=1064
+NO_SUBQUERY_PRUNING=1065
+NO_SUBSTRB_PAD=1066
+NO_SWAP_JOIN_INPUTS=1067
+NOSWITCH=1068
+NO_TABLE_LOOKUP_BY_NL=1069
+NO_TEMP_TABLE=1070
+NOTHING=1071
+NOTIFICATION=1072
+NOT=1073
+NO_TRANSFORM_DISTINCT_AGG=1074
+NO_UNNEST=1075
+NO_USE_CUBE=1076
+NO_USE_HASH_AGGREGATION=1077
+NO_USE_HASH_GBY_FOR_PUSHDOWN=1078
+NO_USE_HASH=1079
+NO_USE_INVISIBLE_INDEXES=1080
+NO_USE_MERGE=1081
+NO_USE_NL=1082
+NO_USE_VECTOR_AGGREGATION=1083
+NOVALIDATE=1084
+NO_VECTOR_TRANSFORM_DIMS=1085
+NO_VECTOR_TRANSFORM_FACT=1086
+NO_VECTOR_TRANSFORM=1087
+NOWAIT=1088
+NO_XDB_FASTPATH_INSERT=1089
+NO_XML_DML_REWRITE=1090
+NO_XMLINDEX_REWRITE_IN_SELECT=1091
+NO_XMLINDEX_REWRITE=1092
+NO_XML_QUERY_REWRITE=1093
+NO_ZONEMAP=1094
+NTH_VALUE=1095
+NULLIF=1096
+NULL_=1097
+NULLS=1098
+NUMBER=1099
+NUMERIC=1100
+NUM_INDEX_KEYS=1101
+NUMTODSINTERVAL=1102
+NUMTOYMINTERVAL=1103
+NVARCHAR2=1104
+NVL2=1105
+OBJECT2XML=1106
+OBJECT=1107
+OBJ_ID=1108
+OBJNO=1109
+OBJNO_REUSE=1110
+OCCURENCES=1111
+OFFLINE=1112
+OFF=1113
+OFFSET=1114
+OF=1115
+OIDINDEX=1116
+OID=1117
+OLAP=1118
+OLD=1119
+OLD_PUSH_PRED=1120
+OLS=1121
+OLTP=1122
+OMIT=1123
+ONE=1124
+ONLINE=1125
+ONLINELOG=1126
+ONLY=1127
+ON=1128
+OPAQUE=1129
+OPAQUE_TRANSFORM=1130
+OPAQUE_XCANONICAL=1131
+OPCODE=1132
+OPEN=1133
+OPERATIONS=1134
+OPERATOR=1135
+OPT_ESTIMATE=1136
+OPTIMAL=1137
+OPTIMIZE=1138
+OPTIMIZER_FEATURES_ENABLE=1139
+OPTIMIZER_GOAL=1140
+OPTION=1141
+OPT_PARAM=1142
+ORA_BRANCH=1143
+ORA_CHECK_ACL=1144
+ORA_CHECK_PRIVILEGE=1145
+ORA_CLUSTERING=1146
+ORADATA=1147
+ORADEBUG=1148
+ORA_DST_AFFECTED=1149
+ORA_DST_CONVERT=1150
+ORA_DST_ERROR=1151
+ORA_GET_ACLIDS=1152
+ORA_GET_PRIVILEGES=1153
+ORA_HASH=1154
+ORA_INVOKING_USERID=1155
+ORA_INVOKING_USER=1156
+ORA_INVOKING_XS_USER_GUID=1157
+ORA_INVOKING_XS_USER=1158
+ORA_RAWCOMPARE=1159
+ORA_RAWCONCAT=1160
+ORA_ROWSCN=1161
+ORA_ROWSCN_RAW=1162
+ORA_ROWVERSION=1163
+ORA_TABVERSION=1164
+ORA_WRITE_TIME=1165
+ORDERED=1166
+ORDERED_PREDICATES=1167
+ORDER=1168
+ORDINALITY=1169
+OR_EXPAND=1170
+ORGANIZATION=1171
+OR=1172
+OR_PREDICATES=1173
+OSERROR=1174
+OTHER=1175
+OUTER_JOIN_TO_ANTI=1176
+OUTER_JOIN_TO_INNER=1177
+OUTER=1178
+OUTLINE_LEAF=1179
+OUTLINE=1180
+OUT_OF_LINE=1181
+OUT=1182
+OVERFLOW_NOMOVE=1183
+OVERFLOW=1184
+OVERLAPS=1185
+OVER=1186
+OVERRIDING=1187
+OWNER=1188
+OWNERSHIP=1189
+OWN=1190
+PACKAGE=1191
+PACKAGES=1192
+PARALLEL_ENABLE=1193
+PARALLEL_INDEX=1194
+PARALLEL=1195
+PARAMETERFILE=1196
+PARAMETERS=1197
+PARAM=1198
+PARENT=1199
+PARITY=1200
+PARTIAL_JOIN=1201
+PARTIALLY=1202
+PARTIAL=1203
+PARTIAL_ROLLUP_PUSHDOWN=1204
+PARTITION_HASH=1205
+PARTITION_LIST=1206
+PARTITION=1207
+PARTITION_RANGE=1208
+PARTITIONS=1209
+PARTNUMINST=1210
+PASSING=1211
+PASSWORD_GRACE_TIME=1212
+PASSWORD_LIFE_TIME=1213
+PASSWORD_LOCK_TIME=1214
+PASSWORD=1215
+PASSWORD_REUSE_MAX=1216
+PASSWORD_REUSE_TIME=1217
+PASSWORD_VERIFY_FUNCTION=1218
+PAST=1219
+PATCH=1220
+PATH=1221
+PATH_PREFIX=1222
+PATHS=1223
+PATTERN=1224
+PBL_HS_BEGIN=1225
+PBL_HS_END=1226
+PCTFREE=1227
+PCTINCREASE=1228
+PCTTHRESHOLD=1229
+PCTUSED=1230
+PCTVERSION=1231
+PENDING=1232
+PERCENT_FOUND=1233
+PERCENT_ISOPEN=1234
+PERCENT_NOTFOUND=1235
+PERCENT_KEYWORD=1236
+PERCENT_RANKM=1237
+PERCENT_ROWCOUNT=1238
+PERCENT_ROWTYPE=1239
+PERCENT_TYPE=1240
+PERFORMANCE=1241
+PERIOD_KEYWORD=1242
+PERMANENT=1243
+PERMISSION=1244
+PERMUTE=1245
+PER=1246
+PFILE=1247
+PHYSICAL=1248
+PIKEY=1249
+PIPELINED=1250
+PIPE=1251
+PIV_GB=1252
+PIVOT=1253
+PIV_SSF=1254
+PLACE_DISTINCT=1255
+PLACE_GROUP_BY=1256
+PLAN=1257
+PLSCOPE_SETTINGS=1258
+PLS_INTEGER=1259
+PLSQL_CCFLAGS=1260
+PLSQL_CODE_TYPE=1261
+PLSQL_DEBUG=1262
+PLSQL_OPTIMIZE_LEVEL=1263
+PLSQL_WARNINGS=1264
+PLUGGABLE=1265
+POINT=1266
+POLICY=1267
+POOL_16K=1268
+POOL_2K=1269
+POOL_32K=1270
+POOL_4K=1271
+POOL_8K=1272
+POSITIVEN=1273
+POSITIVE=1274
+POST_TRANSACTION=1275
+POWERMULTISET_BY_CARDINALITY=1276
+POWERMULTISET=1277
+POWER=1278
+PQ_CONCURRENT_UNION=1279
+PQ_DISTRIBUTE=1280
+PQ_DISTRIBUTE_WINDOW=1281
+PQ_FILTER=1282
+PQ_MAP=1283
+PQ_NOMAP=1284
+PQ_REPLICATE=1285
+PQ_SKEW=1286
+PRAGMA=1287
+PREBUILT=1288
+PRECEDES=1289
+PRECEDING=1290
+PRECISION=1291
+PRECOMPUTE_SUBQUERY=1292
+PREDICATE_REORDERS=1293
+PRELOAD=1294
+PREPARE=1295
+PRESENTNNV=1296
+PRESENT=1297
+PRESENTV=1298
+PRESERVE_OID=1299
+PRESERVE=1300
+PRETTY=1301
+PREVIOUS=1302
+PREV=1303
+PRIMARY=1304
+PRINTBLOBTOCLOB=1305
+PRIORITY=1306
+PRIOR=1307
+PRIVATE=1308
+PRIVATE_SGA=1309
+PRIVILEGED=1310
+PRIVILEGE=1311
+PRIVILEGES=1312
+PROCEDURAL=1313
+PROCEDURE=1314
+PROCESS=1315
+PROFILE=1316
+PROGRAM=1317
+PROJECT=1318
+PROPAGATE=1319
+PROTECTED=1320
+PROTECTION=1321
+PROXY=1322
+PRUNING=1323
+PUBLIC=1324
+PULL_PRED=1325
+PURGE=1326
+PUSH_PRED=1327
+PUSH_SUBQ=1328
+PX_FAULT_TOLERANCE=1329
+PX_GRANULE=1330
+PX_JOIN_FILTER=1331
+QB_NAME=1332
+QUERY_BLOCK=1333
+QUERY=1334
+QUEUE_CURR=1335
+QUEUE=1336
+QUEUE_ROWP=1337
+QUIESCE=1338
+QUORUM=1339
+QUOTA=1340
+RAISE=1341
+RANDOM_LOCAL=1342
+RANDOM=1343
+RANGE=1344
+RANKM=1345
+RAPIDLY=1346
+RAW=1347
+RAWTOHEX=1348
+RAWTONHEX=1349
+RBA=1350
+RBO_OUTLINE=1351
+RDBA=1352
+READ=1353
+READS=1354
+REALM=1355
+REAL=1356
+REBALANCE=1357
+REBUILD=1358
+RECORD=1359
+RECORDS_PER_BLOCK=1360
+RECOVERABLE=1361
+RECOVER=1362
+RECOVERY=1363
+RECYCLEBIN=1364
+RECYCLE=1365
+REDACTION=1366
+REDEFINE=1367
+REDO=1368
+REDUCED=1369
+REDUNDANCY=1370
+REF_CASCADE_CURSOR=1371
+REFERENCED=1372
+REFERENCE=1373
+REFERENCES=1374
+REFERENCING=1375
+REF=1376
+REFRESH=1377
+REFTOHEX=1378
+REGEXP_COUNT=1379
+REGEXP_INSTR=1380
+REGEXP_LIKE=1381
+REGEXP_REPLACE=1382
+REGEXP_SUBSTR=1383
+REGISTER=1384
+REGR_AVGX=1385
+REGR_AVGY=1386
+REGR_COUNT=1387
+REGR_INTERCEPT=1388
+REGR_R2=1389
+REGR_SLOPE=1390
+REGR_SXX=1391
+REGR_SXY=1392
+REGR_SYY=1393
+REGULAR=1394
+REJECT=1395
+REKEY=1396
+RELATIONAL=1397
+RELIES_ON=1398
+RELOCATE=1399
+RELY=1400
+REMAINDER=1401
+REMOTE_MAPPED=1402
+REMOVE=1403
+RENAME=1404
+REPAIR=1405
+REPEAT=1406
+REPLACE=1407
+REPLICATION=1408
+REQUIRED=1409
+RESETLOGS=1410
+RESET=1411
+RESIZE=1412
+RESOLVE=1413
+RESOLVER=1414
+RESOURCE=1415
+RESPECT=1416
+RESTART=1417
+RESTORE_AS_INTERVALS=1418
+RESTORE=1419
+RESTRICT_ALL_REF_CONS=1420
+RESTRICTED=1421
+RESTRICT_REFERENCES=1422
+RESTRICT=1423
+RESULT_CACHE=1424
+RESULT=1425
+RESUMABLE=1426
+RESUME=1427
+RETENTION=1428
+RETRY_ON_ROW_CHANGE=1429
+RETURNING=1430
+RETURN=1431
+REUSE=1432
+REVERSE=1433
+REVOKE=1434
+REWRITE_OR_ERROR=1435
+REWRITE=1436
+RIGHT=1437
+ROLE=1438
+ROLESET=1439
+ROLES=1440
+ROLLBACK=1441
+ROLLING=1442
+ROLLUP=1443
+ROWDEPENDENCIES=1444
+ROWID_MAPPING_TABLE=1445
+ROWID=1446
+ROWIDTOCHAR=1447
+ROWIDTONCHAR=1448
+ROW_LENGTH=1449
+ROWNUM=1450
+ROW=1451
+ROWS=1452
+RPAD=1453
+RTRIM=1454
+RULE=1455
+RULES=1456
+RUNNING=1457
+SALT=1458
+SAMPLE=1459
+SAVE_AS_INTERVALS=1460
+SAVEPOINT=1461
+SAVE=1462
+SB4=1463
+SCALE_ROWS=1464
+SCALE=1465
+SCAN_INSTANCES=1466
+SCAN=1467
+SCHEDULER=1468
+SCHEMACHECK=1469
+SCHEMA=1470
+SCN_ASCENDING=1471
+SCN=1472
+SCOPE=1473
+SCRUB=1474
+SD_ALL=1475
+SD_INHIBIT=1476
+SDO_GEOM_MBR=1477
+SD_SHOW=1478
+SEARCH=1479
+SECOND=1480
+SECRET=1481
+SECUREFILE_DBA=1482
+SECUREFILE=1483
+SECURITY=1484
+SEED=1485
+SEG_BLOCK=1486
+SEG_FILE=1487
+SEGMENT=1488
+SELECTIVITY=1489
+SELECT=1490
+SELF=1491
+SEMIJOIN_DRIVER=1492
+SEMIJOIN=1493
+SEMI_TO_INNER=1494
+SEQUENCED=1495
+SEQUENCE=1496
+SEQUENTIAL=1497
+SEQ=1498
+SERIALIZABLE=1499
+SERIALLY_REUSABLE=1500
+SERIAL=1501
+SERVERERROR=1502
+SERVICE_NAME_CONVERT=1503
+SERVICES=1504
+SESSION_CACHED_CURSORS=1505
+SESSION=1506
+SESSIONS_PER_USER=1507
+SESSIONTIMEZONE=1508
+SESSIONTZNAME=1509
+SET=1510
+SETS=1511
+SETTINGS=1512
+SET_TO_JOIN=1513
+SEVERE=1514
+SHARED_POOL=1515
+SHARED=1516
+SHARE=1517
+SHARING=1518
+SHELFLIFE=1519
+SHOW=1520
+SHRINK=1521
+SHUTDOWN=1522
+SIBLINGS=1523
+SID=1524
+SIGNAL_COMPONENT=1525
+SIGNAL_FUNCTION=1526
+SIGN=1527
+SIGNTYPE=1528
+SIMPLE_INTEGER=1529
+SIMPLE=1530
+SINGLE=1531
+SINGLETASK=1532
+SINH=1533
+SIN=1534
+SIZE=1535
+SKIP_EXT_OPTIMIZER=1536
+SKIP_=1537
+SKIP_UNQ_UNUSABLE_IDX=1538
+SKIP_UNUSABLE_INDEXES=1539
+SMALLFILE=1540
+SMALLINT=1541
+SNAPSHOT=1542
+SOME=1543
+SORT=1544
+SOUNDEX=1545
+SOURCE_FILE_DIRECTORY=1546
+SOURCE_FILE_NAME_CONVERT=1547
+SOURCE=1548
+SPACE_KEYWORD=1549
+SPECIFICATION=1550
+SPFILE=1551
+SPLIT=1552
+SPREADSHEET=1553
+SQLDATA=1554
+SQLERROR=1555
+SQLLDR=1556
+SQL=1557
+SQL_TRACE=1558
+SQL_TRANSLATION_PROFILE=1559
+SQRT=1560
+STALE=1561
+STANDALONE=1562
+STANDARD_HASH=1563
+STANDBY_MAX_DATA_DELAY=1564
+STANDBYS=1565
+STANDBY=1566
+STAR=1567
+STAR_TRANSFORMATION=1568
+START=1569
+STARTUP=1570
+STATEMENT_ID=1571
+STATEMENT_QUEUING=1572
+STATEMENTS=1573
+STATEMENT=1574
+STATE=1575
+STATIC=1576
+STATISTICS=1577
+STATS_BINOMIAL_TEST=1578
+STATS_CROSSTAB=1579
+STATS_F_TEST=1580
+STATS_KS_TEST=1581
+STATS_MODE=1582
+STATS_MW_TEST=1583
+STATS_ONE_WAY_ANOVA=1584
+STATS_T_TEST_INDEP=1585
+STATS_T_TEST_INDEPU=1586
+STATS_T_TEST_ONE=1587
+STATS_T_TEST_PAIRED=1588
+STATS_WSR_TEST=1589
+STDDEV_POP=1590
+STDDEV_SAMP=1591
+STOP=1592
+STORAGE=1593
+STORE=1594
+STREAMS=1595
+STREAM=1596
+STRICT=1597
+STRING=1598
+STRIPE_COLUMNS=1599
+STRIPE_WIDTH=1600
+STRIP=1601
+STRUCTURE=1602
+SUBMULTISET=1603
+SUBPARTITION_REL=1604
+SUBPARTITIONS=1605
+SUBPARTITION=1606
+SUBQUERIES=1607
+SUBQUERY_PRUNING=1608
+SUBSCRIBE=1609
+SUBSET=1610
+SUBSTITUTABLE=1611
+SUBSTR2=1612
+SUBSTR4=1613
+SUBSTRB=1614
+SUBSTRC=1615
+SUBTYPE=1616
+SUCCESSFUL=1617
+SUCCESS=1618
+SUMMARY=1619
+SUPPLEMENTAL=1620
+SUSPEND=1621
+SWAP_JOIN_INPUTS=1622
+SWITCHOVER=1623
+SWITCH=1624
+SYNCHRONOUS=1625
+SYNC=1626
+SYNONYM=1627
+SYSASM=1628
+SYS_AUDIT=1629
+SYSAUX=1630
+SYSBACKUP=1631
+SYS_CHECKACL=1632
+SYS_CHECK_PRIVILEGE=1633
+SYS_CONNECT_BY_PATH=1634
+SYS_CONTEXT=1635
+SYSDATE=1636
+SYSDBA=1637
+SYS_DBURIGEN=1638
+SYSDG=1639
+SYS_DL_CURSOR=1640
+SYS_DM_RXFORM_CHR=1641
+SYS_DM_RXFORM_NUM=1642
+SYS_DOM_COMPARE=1643
+SYS_DST_PRIM2SEC=1644
+SYS_DST_SEC2PRIM=1645
+SYS_ET_BFILE_TO_RAW=1646
+SYS_ET_BLOB_TO_IMAGE=1647
+SYS_ET_IMAGE_TO_BLOB=1648
+SYS_ET_RAW_TO_BFILE=1649
+SYS_EXTPDTXT=1650
+SYS_EXTRACT_UTC=1651
+SYS_FBT_INSDEL=1652
+SYS_FILTER_ACLS=1653
+SYS_FNMATCHES=1654
+SYS_FNREPLACE=1655
+SYS_GET_ACLIDS=1656
+SYS_GET_COL_ACLIDS=1657
+SYS_GET_PRIVILEGES=1658
+SYS_GETTOKENID=1659
+SYS_GETXTIVAL=1660
+SYS_GUID=1661
+SYSGUID=1662
+SYSKM=1663
+SYS_MAKE_XMLNODEID=1664
+SYS_MAKEXML=1665
+SYS_MKXMLATTR=1666
+SYS_MKXTI=1667
+SYSOBJ=1668
+SYS_OP_ADT2BIN=1669
+SYS_OP_ADTCONS=1670
+SYS_OP_ALSCRVAL=1671
+SYS_OP_ATG=1672
+SYS_OP_BIN2ADT=1673
+SYS_OP_BITVEC=1674
+SYS_OP_BL2R=1675
+SYS_OP_BLOOM_FILTER_LIST=1676
+SYS_OP_BLOOM_FILTER=1677
+SYS_OP_C2C=1678
+SYS_OP_CAST=1679
+SYS_OP_CEG=1680
+SYS_OP_CL2C=1681
+SYS_OP_COMBINED_HASH=1682
+SYS_OP_COMP=1683
+SYS_OP_CONVERT=1684
+SYS_OP_COUNTCHG=1685
+SYS_OP_CSCONV=1686
+SYS_OP_CSCONVTEST=1687
+SYS_OP_CSR=1688
+SYS_OP_CSX_PATCH=1689
+SYS_OP_CYCLED_SEQ=1690
+SYS_OP_DECOMP=1691
+SYS_OP_DESCEND=1692
+SYS_OP_DISTINCT=1693
+SYS_OP_DRA=1694
+SYS_OP_DUMP=1695
+SYS_OP_DV_CHECK=1696
+SYS_OP_ENFORCE_NOT_NULL=1697
+SYSOPER=1698
+SYS_OP_EXTRACT=1699
+SYS_OP_GROUPING=1700
+SYS_OP_GUID=1701
+SYS_OP_HASH=1702
+SYS_OP_IIX=1703
+SYS_OP_ITR=1704
+SYS_OP_KEY_VECTOR_CREATE=1705
+SYS_OP_KEY_VECTOR_FILTER_LIST=1706
+SYS_OP_KEY_VECTOR_FILTER=1707
+SYS_OP_KEY_VECTOR_SUCCEEDED=1708
+SYS_OP_KEY_VECTOR_USE=1709
+SYS_OP_LBID=1710
+SYS_OP_LOBLOC2BLOB=1711
+SYS_OP_LOBLOC2CLOB=1712
+SYS_OP_LOBLOC2ID=1713
+SYS_OP_LOBLOC2NCLOB=1714
+SYS_OP_LOBLOC2TYP=1715
+SYS_OP_LSVI=1716
+SYS_OP_LVL=1717
+SYS_OP_MAKEOID=1718
+SYS_OP_MAP_NONNULL=1719
+SYS_OP_MSR=1720
+SYS_OP_NICOMBINE=1721
+SYS_OP_NIEXTRACT=1722
+SYS_OP_NII=1723
+SYS_OP_NIX=1724
+SYS_OP_NOEXPAND=1725
+SYS_OP_NTCIMG=1726
+SYS_OP_NUMTORAW=1727
+SYS_OP_OIDVALUE=1728
+SYS_OP_OPNSIZE=1729
+SYS_OP_PAR_1=1730
+SYS_OP_PARGID_1=1731
+SYS_OP_PARGID=1732
+SYS_OP_PAR=1733
+SYS_OP_PART_ID=1734
+SYS_OP_PIVOT=1735
+SYS_OP_R2O=1736
+SYS_OP_RAWTONUM=1737
+SYS_OP_RDTM=1738
+SYS_OP_REF=1739
+SYS_OP_RMTD=1740
+SYS_OP_ROWIDTOOBJ=1741
+SYS_OP_RPB=1742
+SYS_OPTLOBPRBSC=1743
+SYS_OP_TOSETID=1744
+SYS_OP_TPR=1745
+SYS_OP_TRTB=1746
+SYS_OPTXICMP=1747
+SYS_OPTXQCASTASNQ=1748
+SYS_OP_UNDESCEND=1749
+SYS_OP_VECAND=1750
+SYS_OP_VECBIT=1751
+SYS_OP_VECOR=1752
+SYS_OP_VECXOR=1753
+SYS_OP_VERSION=1754
+SYS_OP_VREF=1755
+SYS_OP_VVD=1756
+SYS_OP_XMLCONS_FOR_CSX=1757
+SYS_OP_XPTHATG=1758
+SYS_OP_XPTHIDX=1759
+SYS_OP_XPTHOP=1760
+SYS_OP_XTXT2SQLT=1761
+SYS_OP_ZONE_ID=1762
+SYS_ORDERKEY_DEPTH=1763
+SYS_ORDERKEY_MAXCHILD=1764
+SYS_ORDERKEY_PARENT=1765
+SYS_PARALLEL_TXN=1766
+SYS_PATHID_IS_ATTR=1767
+SYS_PATHID_IS_NMSPC=1768
+SYS_PATHID_LASTNAME=1769
+SYS_PATHID_LASTNMSPC=1770
+SYS_PATH_REVERSE=1771
+SYS_PXQEXTRACT=1772
+SYS_RAW_TO_XSID=1773
+SYS_RID_ORDER=1774
+SYS_ROW_DELTA=1775
+SYS_SC_2_XMLT=1776
+SYS_SYNRCIREDO=1777
+SYSTEM_DEFINED=1778
+SYSTEM=1779
+SYSTIMESTAMP=1780
+SYS_TYPEID=1781
+SYS_UMAKEXML=1782
+SYS_XMLANALYZE=1783
+SYS_XMLCONTAINS=1784
+SYS_XMLCONV=1785
+SYS_XMLEXNSURI=1786
+SYS_XMLGEN=1787
+SYS_XMLI_LOC_ISNODE=1788
+SYS_XMLI_LOC_ISTEXT=1789
+SYS_XMLINSTR=1790
+SYS_XMLLOCATOR_GETSVAL=1791
+SYS_XMLNODEID_GETCID=1792
+SYS_XMLNODEID_GETLOCATOR=1793
+SYS_XMLNODEID_GETOKEY=1794
+SYS_XMLNODEID_GETPATHID=1795
+SYS_XMLNODEID_GETPTRID=1796
+SYS_XMLNODEID_GETRID=1797
+SYS_XMLNODEID_GETSVAL=1798
+SYS_XMLNODEID_GETTID=1799
+SYS_XMLNODEID=1800
+SYS_XMLT_2_SC=1801
+SYS_XMLTRANSLATE=1802
+SYS_XMLTYPE2SQL=1803
+SYS_XQ_ASQLCNV=1804
+SYS_XQ_ATOMCNVCHK=1805
+SYS_XQBASEURI=1806
+SYS_XQCASTABLEERRH=1807
+SYS_XQCODEP2STR=1808
+SYS_XQCODEPEQ=1809
+SYS_XQCON2SEQ=1810
+SYS_XQCONCAT=1811
+SYS_XQDELETE=1812
+SYS_XQDFLTCOLATION=1813
+SYS_XQDOC=1814
+SYS_XQDOCURI=1815
+SYS_XQDURDIV=1816
+SYS_XQED4URI=1817
+SYS_XQENDSWITH=1818
+SYS_XQERRH=1819
+SYS_XQERR=1820
+SYS_XQESHTMLURI=1821
+SYS_XQEXLOBVAL=1822
+SYS_XQEXSTWRP=1823
+SYS_XQEXTRACT=1824
+SYS_XQEXTRREF=1825
+SYS_XQEXVAL=1826
+SYS_XQFB2STR=1827
+SYS_XQFNBOOL=1828
+SYS_XQFNCMP=1829
+SYS_XQFNDATIM=1830
+SYS_XQFNLNAME=1831
+SYS_XQFNNM=1832
+SYS_XQFNNSURI=1833
+SYS_XQFNPREDTRUTH=1834
+SYS_XQFNQNM=1835
+SYS_XQFNROOT=1836
+SYS_XQFORMATNUM=1837
+SYS_XQFTCONTAIN=1838
+SYS_XQFUNCR=1839
+SYS_XQGETCONTENT=1840
+SYS_XQINDXOF=1841
+SYS_XQINSERT=1842
+SYS_XQINSPFX=1843
+SYS_XQIRI2URI=1844
+SYS_XQLANG=1845
+SYS_XQLLNMFRMQNM=1846
+SYS_XQMKNODEREF=1847
+SYS_XQNILLED=1848
+SYS_XQNODENAME=1849
+SYS_XQNORMSPACE=1850
+SYS_XQNORMUCODE=1851
+SYS_XQ_NRNG=1852
+SYS_XQNSP4PFX=1853
+SYS_XQNSPFRMQNM=1854
+SYS_XQPFXFRMQNM=1855
+SYS_XQ_PKSQL2XML=1856
+SYS_XQPOLYABS=1857
+SYS_XQPOLYADD=1858
+SYS_XQPOLYCEL=1859
+SYS_XQPOLYCSTBL=1860
+SYS_XQPOLYCST=1861
+SYS_XQPOLYDIV=1862
+SYS_XQPOLYFLR=1863
+SYS_XQPOLYMOD=1864
+SYS_XQPOLYMUL=1865
+SYS_XQPOLYRND=1866
+SYS_XQPOLYSQRT=1867
+SYS_XQPOLYSUB=1868
+SYS_XQPOLYUMUS=1869
+SYS_XQPOLYUPLS=1870
+SYS_XQPOLYVEQ=1871
+SYS_XQPOLYVGE=1872
+SYS_XQPOLYVGT=1873
+SYS_XQPOLYVLE=1874
+SYS_XQPOLYVLT=1875
+SYS_XQPOLYVNE=1876
+SYS_XQREF2VAL=1877
+SYS_XQRENAME=1878
+SYS_XQREPLACE=1879
+SYS_XQRESVURI=1880
+SYS_XQRNDHALF2EVN=1881
+SYS_XQRSLVQNM=1882
+SYS_XQRYENVPGET=1883
+SYS_XQRYVARGET=1884
+SYS_XQRYWRP=1885
+SYS_XQSEQ2CON4XC=1886
+SYS_XQSEQ2CON=1887
+SYS_XQSEQDEEPEQ=1888
+SYS_XQSEQINSB=1889
+SYS_XQSEQRM=1890
+SYS_XQSEQRVS=1891
+SYS_XQSEQSUB=1892
+SYS_XQSEQTYPMATCH=1893
+SYS_XQSTARTSWITH=1894
+SYS_XQSTATBURI=1895
+SYS_XQSTR2CODEP=1896
+SYS_XQSTRJOIN=1897
+SYS_XQSUBSTRAFT=1898
+SYS_XQSUBSTRBEF=1899
+SYS_XQTOKENIZE=1900
+SYS_XQTREATAS=1901
+SYS_XQ_UPKXML2SQL=1902
+SYS_XQXFORM=1903
+SYS_XSID_TO_RAW=1904
+SYS_ZMAP_FILTER=1905
+SYS_ZMAP_REFRESH=1906
+TABLE_LOOKUP_BY_NL=1907
+TABLESPACE_NO=1908
+TABLESPACE=1909
+TABLES=1910
+TABLE_STATS=1911
+TABLE=1912
+TABNO=1913
+TAG=1914
+TANH=1915
+TAN=1916
+TBLORIDXPARTNUM=1917
+TEMPFILE=1918
+TEMPLATE=1919
+TEMPORARY=1920
+TEMP_TABLE=1921
+TEST=1922
+TEXT=1923
+THAN=1924
+THEN=1925
+THE=1926
+THREAD=1927
+THROUGH=1928
+TIER=1929
+TIES=1930
+TIMEOUT=1931
+TIMESTAMP_LTZ_UNCONSTRAINED=1932
+TIMESTAMP=1933
+TIMESTAMP_TZ_UNCONSTRAINED=1934
+TIMESTAMP_UNCONSTRAINED=1935
+TIMES=1936
+TIME=1937
+TIMEZONE=1938
+TIMEZONE_ABBR=1939
+TIMEZONE_HOUR=1940
+TIMEZONE_MINUTE=1941
+TIMEZONE_OFFSET=1942
+TIMEZONE_REGION=1943
+TIME_ZONE=1944
+TIV_GB=1945
+TIV_SSF=1946
+TO_ACLID=1947
+TO_BINARY_DOUBLE=1948
+TO_BINARY_FLOAT=1949
+TO_BLOB=1950
+TO_CLOB=1951
+TO_DSINTERVAL=1952
+TO_LOB=1953
+TO_MULTI_BYTE=1954
+TO_NCHAR=1955
+TO_NCLOB=1956
+TO_NUMBER=1957
+TOPLEVEL=1958
+TO_SINGLE_BYTE=1959
+TO_TIMESTAMP=1960
+TO_TIMESTAMP_TZ=1961
+TO_TIME=1962
+TO_TIME_TZ=1963
+TO=1964
+TO_YMINTERVAL=1965
+TRACE=1966
+TRACING=1967
+TRACKING=1968
+TRAILING=1969
+TRANSACTION=1970
+TRANSFORM_DISTINCT_AGG=1971
+TRANSITIONAL=1972
+TRANSITION=1973
+TRANSLATE=1974
+TRANSLATION=1975
+TREAT=1976
+TRIGGERS=1977
+TRIGGER=1978
+TRUE=1979
+TRUNCATE=1980
+TRUNC=1981
+TRUSTED=1982
+TRUST=1983
+TUNING=1984
+TX=1985
+TYPES=1986
+TYPE=1987
+TZ_OFFSET=1988
+UB2=1989
+UBA=1990
+UCS2=1991
+UID=1992
+UNARCHIVED=1993
+UNBOUNDED=1994
+UNBOUND=1995
+UNCONDITIONAL=1996
+UNDER=1997
+UNDO=1998
+UNDROP=1999
+UNIFORM=2000
+UNION=2001
+UNIQUE=2002
+UNISTR=2003
+UNLIMITED=2004
+UNLOAD=2005
+UNLOCK=2006
+UNMATCHED=2007
+UNNEST_INNERJ_DISTINCT_VIEW=2008
+UNNEST_NOSEMIJ_NODISTINCTVIEW=2009
+UNNEST_SEMIJ_VIEW=2010
+UNNEST=2011
+UNPACKED=2012
+UNPIVOT=2013
+UNPLUG=2014
+UNPROTECTED=2015
+UNQUIESCE=2016
+UNRECOVERABLE=2017
+UNRESTRICTED=2018
+UNSUBSCRIBE=2019
+UNTIL=2020
+UNUSABLE=2021
+UNUSED=2022
+UPDATABLE=2023
+UPDATED=2024
+UPDATE=2025
+UPDATEXML=2026
+UPD_INDEXES=2027
+UPD_JOININDEX=2028
+UPGRADE=2029
+UPPER=2030
+UPSERT=2031
+UROWID=2032
+USABLE=2033
+USAGE=2034
+USE_ANTI=2035
+USE_CONCAT=2036
+USE_CUBE=2037
+USE_HASH_AGGREGATION=2038
+USE_HASH_GBY_FOR_PUSHDOWN=2039
+USE_HASH=2040
+USE_HIDDEN_PARTITIONS=2041
+USE_INVISIBLE_INDEXES=2042
+USE_MERGE_CARTESIAN=2043
+USE_MERGE=2044
+USE_NL=2045
+USE_NL_WITH_INDEX=2046
+USE_PRIVATE_OUTLINES=2047
+USER_DATA=2048
+USER_DEFINED=2049
+USERENV=2050
+USERGROUP=2051
+USER_RECYCLEBIN=2052
+USERS=2053
+USER_TABLESPACES=2054
+USER=2055
+USE_SEMI=2056
+USE_STORED_OUTLINES=2057
+USE_TTT_FOR_GSETS=2058
+USE=2059
+USE_VECTOR_AGGREGATION=2060
+USE_WEAK_NAME_RESL=2061
+USING_NO_EXPAND=2062
+USING=2063
+UTF16BE=2064
+UTF16LE=2065
+UTF32=2066
+UTF8=2067
+V1=2068
+V2=2069
+VALIDATE=2070
+VALIDATION=2071
+VALID_TIME_END=2072
+VALUES=2073
+VALUE=2074
+VARCHAR2=2075
+VARCHAR=2076
+VARIABLE=2077
+VAR_POP=2078
+VARRAYS=2079
+VARRAY=2080
+VAR_SAMP=2081
+VARYING=2082
+VECTOR_READ_TRACE=2083
+VECTOR_READ=2084
+VECTOR_TRANSFORM_DIMS=2085
+VECTOR_TRANSFORM_FACT=2086
+VECTOR_TRANSFORM=2087
+VERIFIER=2088
+VERIFY=2089
+VERSIONING=2090
+VERSIONS_ENDSCN=2091
+VERSIONS_ENDTIME=2092
+VERSIONS_OPERATION=2093
+VERSIONS_STARTSCN=2094
+VERSIONS_STARTTIME=2095
+VERSIONS=2096
+VERSIONS_XID=2097
+VERSION=2098
+VIEW=2099
+VIOLATION=2100
+VIRTUAL=2101
+VISIBILITY=2102
+VISIBLE=2103
+VOLUME=2104
+VSIZE=2105
+WAIT=2106
+WALLET=2107
+WARNING=2108
+WEEKS=2109
+WEEK=2110
+WELLFORMED=2111
+WHENEVER=2112
+WHEN=2113
+WHERE=2114
+WHILE=2115
+WHITESPACE=2116
+WIDTH_BUCKET=2117
+WITHIN=2118
+WITHOUT=2119
+WITH_PLSQL=2120
+WITH=2121
+WORK=2122
+WRAPPED=2123
+WRAPPER=2124
+WRITE=2125
+XDB_FASTPATH_INSERT=2126
+XDB=2127
+X_DYN_PRUNE=2128
+XID=2129
+XML2OBJECT=2130
+XMLAGG=2131
+XMLATTRIBUTES=2132
+XMLCAST=2133
+XMLCDATA=2134
+XMLCOLATTVAL=2135
+XMLCOMMENT=2136
+XMLCONCAT=2137
+XMLDIFF=2138
+XML_DML_RWT_STMT=2139
+XMLELEMENT=2140
+XMLEXISTS2=2141
+XMLEXISTS=2142
+XMLFOREST=2143
+XMLINDEX=2144
+XMLINDEX_REWRITE_IN_SELECT=2145
+XMLINDEX_REWRITE=2146
+XMLINDEX_SEL_IDX_TBL=2147
+XMLISNODE=2148
+XMLISVALID=2149
+XMLNAMESPACES=2150
+XMLPARSE=2151
+XMLPATCH=2152
+XMLPI=2153
+XMLQUERYVAL=2154
+XMLQUERY=2155
+XMLROOT=2156
+XMLSCHEMA=2157
+XMLSERIALIZE=2158
+XMLTABLE=2159
+XMLTRANSFORMBLOB=2160
+XMLTRANSFORM=2161
+XMLTYPE=2162
+XML=2163
+XPATHTABLE=2164
+XS_SYS_CONTEXT=2165
+XS=2166
+XTRANSPORT=2167
+YEARS=2168
+YEAR=2169
+YES=2170
+YMINTERVAL_UNCONSTRAINED=2171
+ZONEMAP=2172
+ZONE=2173
+PREDICTION=2174
+PREDICTION_BOUNDS=2175
+PREDICTION_COST=2176
+PREDICTION_DETAILS=2177
+PREDICTION_PROBABILITY=2178
+PREDICTION_SET=2179
+CUME_DIST=2180
+DENSE_RANK=2181
+LISTAGG=2182
+PERCENT_RANK=2183
+PERCENTILE_CONT=2184
+PERCENTILE_DISC=2185
+RANK=2186
+AVG=2187
+CORR=2188
+COVAR_=2189
+DECODE=2190
+LAG=2191
+LEAD=2192
+MAX=2193
+MEDIAN=2194
+MIN=2195
+NTILE=2196
+NVL=2197
+RATIO_TO_REPORT=2198
+REGR_=2199
+ROUND=2200
+ROW_NUMBER=2201
+SUBSTR=2202
+TO_CHAR=2203
+TRIM=2204
+SUM=2205
+STDDEV=2206
+VAR_=2207
+VARIANCE=2208
+LEAST=2209
+GREATEST=2210
+TO_DATE=2211
+NATIONAL_CHAR_STRING_LIT=2212
+BIT_STRING_LIT=2213
+HEX_STRING_LIT=2214
+DOUBLE_PERIOD=2215
+PERIOD=2216
+UNSIGNED_INTEGER=2217
+APPROXIMATE_NUM_LIT=2218
+CHAR_STRING=2219
+DELIMITED_ID=2220
+PERCENT=2221
+AMPERSAND=2222
+LEFT_PAREN=2223
+RIGHT_PAREN=2224
+DOUBLE_ASTERISK=2225
+ASTERISK=2226
+PLUS_SIGN=2227
+MINUS_SIGN=2228
+COMMA=2229
+SOLIDUS=2230
+AT_SIGN=2231
+ASSIGN_OP=2232
+BINDVAR=2233
+NOT_EQUAL_OP=2234
+CARRET_OPERATOR_PART=2235
+TILDE_OPERATOR_PART=2236
+EXCLAMATION_OPERATOR_PART=2237
+GREATER_THAN_OP=2238
+LESS_THAN_OP=2239
+COLON=2240
+SEMICOLON=2241
+BAR=2242
+EQUALS_OP=2243
+LEFT_BRACKET=2244
+RIGHT_BRACKET=2245
+INTRODUCER=2246
+SINGLE_LINE_COMMENT=2247
+MULTI_LINE_COMMENT=2248
+REMARK_COMMENT=2249
+PROMPT_MESSAGE=2250
+START_CMD=2251
+REGULAR_ID=2252
+SPACES=2253
+'ABORT'=1
+'ABS'=2
+'ACCESS'=3
+'ACCESSED'=4
+'ACCOUNT'=5
+'ACL'=6
+'ACOS'=7
+'ACTION'=8
+'ACTIONS'=9
+'ACTIVATE'=10
+'ACTIVE'=11
+'ACTIVE_COMPONENT'=12
+'ACTIVE_DATA'=13
+'ACTIVE_FUNCTION'=14
+'ACTIVE_TAG'=15
+'ACTIVITY'=16
+'ADAPTIVE_PLAN'=17
+'ADD'=18
+'ADD_COLUMN'=19
+'ADD_GROUP'=20
+'ADD_MONTHS'=21
+'ADJ_DATE'=22
+'ADMIN'=23
+'ADMINISTER'=24
+'ADMINISTRATOR'=25
+'ADVANCED'=26
+'ADVISE'=27
+'ADVISOR'=28
+'AFD_DISKSTRING'=29
+'AFTER'=30
+'AGENT'=31
+'AGGREGATE'=32
+'A'=33
+'ALIAS'=34
+'ALL'=35
+'ALLOCATE'=36
+'ALLOW'=37
+'ALL_ROWS'=38
+'ALTER'=39
+'ALWAYS'=40
+'ANALYZE'=41
+'ANCILLARY'=42
+'AND'=43
+'AND_EQUAL'=44
+'ANOMALY'=45
+'ANSI_REARCH'=46
+'ANTIJOIN'=47
+'ANY'=48
+'ANYSCHEMA'=49
+'APPEND'=50
+'APPENDCHILDXML'=51
+'APPEND_VALUES'=52
+'APPLICATION'=53
+'APPLY'=54
+'APPROX_COUNT_DISTINCT'=55
+'ARCHIVAL'=56
+'ARCHIVE'=57
+'ARCHIVED'=58
+'ARCHIVELOG'=59
+'ARRAY'=60
+'AS'=61
+'ASC'=62
+'ASCII'=63
+'ASCIISTR'=64
+'ASIN'=65
+'ASIS'=66
+'ASSEMBLY'=67
+'ASSIGN'=68
+'ASSOCIATE'=69
+'ASYNC'=70
+'ASYNCHRONOUS'=71
+'ATAN2'=72
+'ATAN'=73
+'AT'=74
+'ATTRIBUTE'=75
+'ATTRIBUTES'=76
+'AUDIT'=77
+'AUTHENTICATED'=78
+'AUTHENTICATION'=79
+'AUTHID'=80
+'AUTHORIZATION'=81
+'AUTOALLOCATE'=82
+'AUTO'=83
+'AUTOBACKUP'=84
+'AUTOEXTEND'=85
+'AUTO_LOGIN'=86
+'AUTOMATIC'=87
+'AUTONOMOUS_TRANSACTION'=88
+'AUTO_REOPTIMIZE'=89
+'AVAILABILITY'=90
+'AVRO'=91
+'BACKGROUND'=92
+'BACKUP'=93
+'BACKUPSET'=94
+'BASIC'=95
+'BASICFILE'=96
+'BATCH'=97
+'BATCHSIZE'=98
+'BATCH_TABLE_ACCESS_BY_ROWID'=99
+'BECOME'=100
+'BEFORE'=101
+'BEGIN'=102
+'BEGINNING'=103
+'BEGIN_OUTLINE_DATA'=104
+'BEHALF'=105
+'BEQUEATH'=106
+'BETWEEN'=107
+'BFILE'=108
+'BFILENAME'=109
+'BIGFILE'=110
+'BINARY'=111
+'BINARY_DOUBLE'=112
+'BINARY_DOUBLE_INFINITY'=113
+'BINARY_DOUBLE_NAN'=114
+'BINARY_FLOAT'=115
+'BINARY_FLOAT_INFINITY'=116
+'BINARY_FLOAT_NAN'=117
+'BINARY_INTEGER'=118
+'BIND_AWARE'=119
+'BINDING'=120
+'BIN_TO_NUM'=121
+'BITAND'=122
+'BITMAP_AND'=123
+'BITMAP'=124
+'BITMAPS'=125
+'BITMAP_TREE'=126
+'BITS'=127
+'BLOB'=128
+'BLOCK'=129
+'BLOCK_RANGE'=130
+'BLOCKS'=131
+'BLOCKSIZE'=132
+'BODY'=133
+'BOOLEAN'=134
+'BOTH'=135
+'BOUND'=136
+'BRANCH'=137
+'BREADTH'=138
+'BROADCAST'=139
+'BSON'=140
+'BUFFER'=141
+'BUFFER_CACHE'=142
+'BUFFER_POOL'=143
+'BUILD'=144
+'BULK'=145
+'BY'=146
+'BYPASS_RECURSIVE_CHECK'=147
+'BYPASS_UJVC'=148
+'BYTE'=149
+'CACHE'=150
+'CACHE_CB'=151
+'CACHE_INSTANCES'=152
+'CACHE_TEMP_TABLE'=153
+'CACHING'=154
+'CALCULATED'=155
+'CALLBACK'=156
+'CALL'=157
+'CANCEL'=158
+'CANONICAL'=159
+'CAPACITY'=160
+'CARDINALITY'=161
+'CASCADE'=162
+'CASE'=163
+'CAST'=164
+'CATEGORY'=165
+'CDB$DEFAULT'=166
+'CEIL'=167
+'CELL_FLASH_CACHE'=168
+'CERTIFICATE'=169
+'CFILE'=170
+'CHAINED'=171
+'CHANGE'=172
+'CHANGETRACKING'=173
+'CHANGE_DUPKEY_ERROR_INDEX'=174
+'CHARACTER'=175
+'CHAR'=176
+'CHAR_CS'=177
+'CHARTOROWID'=178
+'CHECK_ACL_REWRITE'=179
+'CHECK'=180
+'CHECKPOINT'=181
+'CHILD'=182
+'CHOOSE'=183
+'CHR'=184
+'CHUNK'=185
+'CLASS'=186
+'CLASSIFIER'=187
+'CLEANUP'=188
+'CLEAR'=189
+'C'=190
+'CLIENT'=191
+'CLOB'=192
+'CLONE'=193
+'CLOSE_CACHED_OPEN_CURSORS'=194
+'CLOSE'=195
+'CLUSTER_BY_ROWID'=196
+'CLUSTER'=197
+'CLUSTER_DETAILS'=198
+'CLUSTER_DISTANCE'=199
+'CLUSTER_ID'=200
+'CLUSTERING'=201
+'CLUSTERING_FACTOR'=202
+'CLUSTER_PROBABILITY'=203
+'CLUSTER_SET'=204
+'COALESCE'=205
+'COALESCE_SQ'=206
+'COARSE'=207
+'CO_AUTH_IND'=208
+'COLD'=209
+'COLLECT'=210
+'COLUMNAR'=211
+'COLUMN_AUTH_INDICATOR'=212
+'COLUMN'=213
+'COLUMNS'=214
+'COLUMN_STATS'=215
+'COLUMN_VALUE'=216
+'COMMENT'=217
+'COMMIT'=218
+'COMMITTED'=219
+'COMMON_DATA'=220
+'COMPACT'=221
+'COMPATIBILITY'=222
+'COMPILE'=223
+'COMPLETE'=224
+'COMPLIANCE'=225
+'COMPONENT'=226
+'COMPONENTS'=227
+'COMPOSE'=228
+'COMPOSITE'=229
+'COMPOSITE_LIMIT'=230
+'COMPOUND'=231
+'COMPRESS'=232
+'COMPUTE'=233
+'CONCAT'=234
+'CON_DBID_TO_ID'=235
+'CONDITIONAL'=236
+'CONDITION'=237
+'CONFIRM'=238
+'CONFORMING'=239
+'CON_GUID_TO_ID'=240
+'CON_ID'=241
+'CON_NAME_TO_ID'=242
+'CONNECT_BY_CB_WHR_ONLY'=243
+'CONNECT_BY_COMBINE_SW'=244
+'CONNECT_BY_COST_BASED'=245
+'CONNECT_BY_ELIM_DUPS'=246
+'CONNECT_BY_FILTERING'=247
+'CONNECT_BY_ISCYCLE'=248
+'CONNECT_BY_ISLEAF'=249
+'CONNECT_BY_ROOT'=250
+'CONNECT'=251
+'CONNECT_TIME'=252
+'CONSIDER'=253
+'CONSISTENT'=254
+'CONSTANT'=255
+'CONST'=256
+'CONSTRAINT'=257
+'CONSTRAINTS'=258
+'CONSTRUCTOR'=259
+'CONTAINER'=260
+'CONTAINER_DATA'=261
+'CONTAINERS'=262
+'CONTENT'=263
+'CONTENTS'=264
+'CONTEXT'=265
+'CONTINUE'=266
+'CONTROLFILE'=267
+'CON_UID_TO_ID'=268
+'CONVERT'=269
+'COOKIE'=270
+'COPY'=271
+'CORR_K'=272
+'CORR_S'=273
+'CORRUPTION'=274
+'CORRUPT_XID_ALL'=275
+'CORRUPT_XID'=276
+'COS'=277
+'COSH'=278
+'COST'=279
+'COST_XML_QUERY_REWRITE'=280
+'COUNT'=281
+'COVAR_POP'=282
+'COVAR_SAMP'=283
+'CPU_COSTING'=284
+'CPU_PER_CALL'=285
+'CPU_PER_SESSION'=286
+'CRASH'=287
+'CREATE'=288
+'CREATE_FILE_DEST'=289
+'CREATE_STORED_OUTLINES'=290
+'CREATION'=291
+'CREDENTIAL'=292
+'CRITICAL'=293
+'CROSS'=294
+'CROSSEDITION'=295
+'CSCONVERT'=296
+'CUBE_AJ'=297
+'CUBE'=298
+'CUBE_GB'=299
+'CUBE_SJ'=300
+'CUME_DISTM'=301
+'CURRENT'=302
+'CURRENT_DATE'=303
+'CURRENT_SCHEMA'=304
+'CURRENT_TIME'=305
+'CURRENT_TIMESTAMP'=306
+'CURRENT_USER'=307
+'CURRENTV'=308
+'CURSOR'=309
+'CURSOR_SHARING_EXACT'=310
+'CURSOR_SPECIFIC_SEGMENT'=311
+'CUSTOMDATUM'=312
+'CV'=313
+'CYCLE'=314
+'DANGLING'=315
+'DATABASE'=316
+'DATA'=317
+'DATAFILE'=318
+'DATAFILES'=319
+'DATAGUARDCONFIG'=320
+'DATAMOVEMENT'=321
+'DATAOBJNO'=322
+'DATAOBJ_TO_MAT_PARTITION'=323
+'DATAOBJ_TO_PARTITION'=324
+'DATAPUMP'=325
+'DATA_SECURITY_REWRITE_LIMIT'=326
+'DATE'=327
+'DATE_MODE'=328
+'DAY'=329
+'DAYS'=330
+'DBA'=331
+'DBA_RECYCLEBIN'=332
+'DBMS_STATS'=333
+'DB_ROLE_CHANGE'=334
+'DBTIMEZONE'=335
+'DB_UNIQUE_NAME'=336
+'DB_VERSION'=337
+'DDL'=338
+'DEALLOCATE'=339
+'DEBUG'=340
+'DEBUGGER'=341
+'DEC'=342
+'DECIMAL'=343
+'DECLARE'=344
+'DECOMPOSE'=345
+'DECORRELATE'=346
+'DECR'=347
+'DECREMENT'=348
+'DECRYPT'=349
+'DEDUPLICATE'=350
+'DEFAULT'=351
+'DEFAULTS'=352
+'DEFERRABLE'=353
+'DEFERRED'=354
+'DEFINED'=355
+'DEFINE'=356
+'DEFINER'=357
+'DEGREE'=358
+'DELAY'=359
+'DELEGATE'=360
+'DELETE_ALL'=361
+'DELETE'=362
+'DELETEXML'=363
+'DEMAND'=364
+'DENSE_RANKM'=365
+'DEPENDENT'=366
+'DEPTH'=367
+'DEQUEUE'=368
+'DEREF'=369
+'DEREF_NO_REWRITE'=370
+'DESC'=371
+'DESTROY'=372
+'DETACHED'=373
+'DETERMINES'=374
+'DETERMINISTIC'=375
+'DICTIONARY'=376
+'DIMENSION'=377
+'DIMENSIONS'=378
+'DIRECT_LOAD'=379
+'DIRECTORY'=380
+'DIRECT_PATH'=381
+'DISABLE_ALL'=382
+'DISABLE'=383
+'DISABLE_PARALLEL_DML'=384
+'DISABLE_PRESET'=385
+'DISABLE_RPKE'=386
+'DISALLOW'=387
+'DISASSOCIATE'=388
+'DISCARD'=389
+'DISCONNECT'=390
+'DISK'=391
+'DISKGROUP'=392
+'\'+ DISKGROUP'=393
+'DISKS'=394
+'DISMOUNT'=395
+'DISTINCT'=396
+'DISTINGUISHED'=397
+'DISTRIBUTED'=398
+'DISTRIBUTE'=399
+'DML'=400
+'DML_UPDATE'=401
+'DOCFIDELITY'=402
+'DOCUMENT'=403
+'DOMAIN_INDEX_FILTER'=404
+'DOMAIN_INDEX_NO_SORT'=405
+'DOMAIN_INDEX_SORT'=406
+'DOUBLE'=407
+'DOWNGRADE'=408
+'DRIVING_SITE'=409
+'DROP_COLUMN'=410
+'DROP'=411
+'DROP_GROUP'=412
+'DSINTERVAL_UNCONSTRAINED'=413
+'DST_UPGRADE_INSERT_CONV'=414
+'DUMP'=415
+'DUMPSET'=416
+'DUPLICATE'=417
+'DV'=418
+'DYNAMIC'=419
+'DYNAMIC_SAMPLING'=420
+'DYNAMIC_SAMPLING_EST_CDN'=421
+'EACH'=422
+'EDITIONABLE'=423
+'EDITION'=424
+'EDITIONING'=425
+'EDITIONS'=426
+'ELEMENT'=427
+'ELIM_GROUPBY'=428
+'ELIMINATE_JOIN'=429
+'ELIMINATE_OBY'=430
+'ELIMINATE_OUTER_JOIN'=431
+'ELSE'=432
+'ELSIF'=433
+'EM'=434
+'EMPTY_BLOB'=435
+'EMPTY_CLOB'=436
+'EMPTY'=437
+'ENABLE_ALL'=438
+'ENABLE'=439
+'ENABLE_PARALLEL_DML'=440
+'ENABLE_PRESET'=441
+'ENCODING'=442
+'ENCRYPT'=443
+'ENCRYPTION'=444
+'END'=445
+'END_OUTLINE_DATA'=446
+'ENFORCED'=447
+'ENFORCE'=448
+'ENQUEUE'=449
+'ENTERPRISE'=450
+'ENTITYESCAPING'=451
+'ENTRY'=452
+'EQUIPART'=453
+'ERR'=454
+'ERROR_ARGUMENT'=455
+'ERROR'=456
+'ERROR_ON_OVERLAP_TIME'=457
+'ERRORS'=458
+'ESCAPE'=459
+'ESTIMATE'=460
+'EVAL'=461
+'EVALNAME'=462
+'EVALUATE'=463
+'EVALUATION'=464
+'EVENTS'=465
+'EVERY'=466
+'EXCEPT'=467
+'EXCEPTION'=468
+'EXCEPTION_INIT'=469
+'EXCEPTIONS'=470
+'EXCHANGE'=471
+'EXCLUDE'=472
+'EXCLUDING'=473
+'EXCLUSIVE'=474
+'EXECUTE'=475
+'EXEMPT'=476
+'EXISTING'=477
+'EXISTS'=478
+'EXISTSNODE'=479
+'EXIT'=480
+'EXPAND_GSET_TO_UNION'=481
+'EXPAND_TABLE'=482
+'EXP'=483
+'EXPIRE'=484
+'EXPLAIN'=485
+'EXPLOSION'=486
+'EXPORT'=487
+'EXPR_CORR_CHECK'=488
+'EXPRESS'=489
+'EXTENDS'=490
+'EXTENT'=491
+'EXTENTS'=492
+'EXTERNAL'=493
+'EXTERNALLY'=494
+'EXTRACTCLOBXML'=495
+'EXTRACT'=496
+'EXTRACTVALUE'=497
+'EXTRA'=498
+'FACILITY'=499
+'FACT'=500
+'FACTOR'=501
+'FACTORIZE_JOIN'=502
+'FAILED'=503
+'FAILED_LOGIN_ATTEMPTS'=504
+'FAILGROUP'=505
+'FAILOVER'=506
+'FAILURE'=507
+'FALSE'=508
+'FAMILY'=509
+'FAR'=510
+'FAST'=511
+'FASTSTART'=512
+'FBTSCAN'=513
+'FEATURE_DETAILS'=514
+'FEATURE_ID'=515
+'FEATURE_SET'=516
+'FEATURE_VALUE'=517
+'FETCH'=518
+'FILE'=519
+'FILE_NAME_CONVERT'=520
+'FILESYSTEM_LIKE_LOGGING'=521
+'FILTER'=522
+'FINAL'=523
+'FINE'=524
+'FINISH'=525
+'FIRST'=526
+'FIRSTM'=527
+'FIRST_ROWS'=528
+'FIRST_VALUE'=529
+'FIXED_VIEW_DATA'=530
+'FLAGGER'=531
+'FLASHBACK'=532
+'FLASH_CACHE'=533
+'FLOAT'=534
+'FLOB'=535
+'FLOOR'=536
+'FLUSH'=537
+'FOLDER'=538
+'FOLLOWING'=539
+'FOLLOWS'=540
+'FORALL'=541
+'FORCE'=542
+'FORCE_XML_QUERY_REWRITE'=543
+'FOREIGN'=544
+'FOREVER'=545
+'FOR'=546
+'FORMAT'=547
+'FORWARD'=548
+'FRAGMENT_NUMBER'=549
+'FREELIST'=550
+'FREELISTS'=551
+'FREEPOOLS'=552
+'FRESH'=553
+'FROM'=554
+'FROM_TZ'=555
+'FULL'=556
+'FULL_OUTER_JOIN_TO_OUTER'=557
+'FUNCTION'=558
+'FUNCTIONS'=559
+'GATHER_OPTIMIZER_STATISTICS'=560
+'GATHER_PLAN_STATISTICS'=561
+'GBY_CONC_ROLLUP'=562
+'GBY_PUSHDOWN'=563
+'GENERATED'=564
+'GET'=565
+'GLOBAL'=566
+'GLOBALLY'=567
+'GLOBAL_NAME'=568
+'GLOBAL_TOPIC_ENABLED'=569
+'GOTO'=570
+'GRANT'=571
+'GROUP_BY'=572
+'GROUP'=573
+'GROUP_ID'=574
+'GROUPING'=575
+'GROUPING_ID'=576
+'GROUPS'=577
+'GUARANTEED'=578
+'GUARANTEE'=579
+'GUARD'=580
+'HASH_AJ'=581
+'HASH'=582
+'HASHKEYS'=583
+'HASH_SJ'=584
+'HAVING'=585
+'HEADER'=586
+'HEAP'=587
+'HELP'=588
+'HEXTORAW'=589
+'HEXTOREF'=590
+'HIDDEN'=591
+'HIDE'=592
+'HIERARCHY'=593
+'HIGH'=594
+'HINTSET_BEGIN'=595
+'HINTSET_END'=596
+'HOT'=597
+'HOUR'=598
+'HWM_BROKERED'=599
+'HYBRID'=600
+'IDENTIFIED'=601
+'IDENTIFIER'=602
+'IDENTITY'=603
+'IDGENERATORS'=604
+'ID'=605
+'IDLE_TIME'=606
+'IF'=607
+'IGNORE'=608
+'IGNORE_OPTIM_EMBEDDED_HINTS'=609
+'IGNORE_ROW_ON_DUPKEY_INDEX'=610
+'IGNORE_WHERE_CLAUSE'=611
+'ILM'=612
+'IMMEDIATE'=613
+'IMPACT'=614
+'IMPORT'=615
+'INACTIVE'=616
+'INCLUDE'=617
+'INCLUDE_VERSION'=618
+'INCLUDING'=619
+'INCREMENTAL'=620
+'INCREMENT'=621
+'INCR'=622
+'INDENT'=623
+'INDEX_ASC'=624
+'INDEX_COMBINE'=625
+'INDEX_DESC'=626
+'INDEXED'=627
+'INDEXES'=628
+'INDEX_FFS'=629
+'INDEX_FILTER'=630
+'INDEX'=631
+'INDEXING'=632
+'INDEX_JOIN'=633
+'INDEX_ROWS'=634
+'INDEX_RRS'=635
+'INDEX_RS_ASC'=636
+'INDEX_RS_DESC'=637
+'INDEX_RS'=638
+'INDEX_SCAN'=639
+'INDEX_SKIP_SCAN'=640
+'INDEX_SS_ASC'=641
+'INDEX_SS_DESC'=642
+'INDEX_SS'=643
+'INDEX_STATS'=644
+'INDEXTYPE'=645
+'INDEXTYPES'=646
+'INDICATOR'=647
+'INDICES'=648
+'INFINITE'=649
+'INFORMATIONAL'=650
+'INHERIT'=651
+'IN'=652
+'INITCAP'=653
+'INITIAL'=654
+'INITIALIZED'=655
+'INITIALLY'=656
+'INITRANS'=657
+'INLINE'=658
+'INLINE_XMLTYPE_NT'=659
+'INMEMORY'=660
+'IN_MEMORY_METADATA'=661
+'INMEMORY_PRUNING'=662
+'INNER'=663
+'INOUT'=664
+'INPLACE'=665
+'INSERTCHILDXMLAFTER'=666
+'INSERTCHILDXMLBEFORE'=667
+'INSERTCHILDXML'=668
+'INSERT'=669
+'INSERTXMLAFTER'=670
+'INSERTXMLBEFORE'=671
+'INSTANCE'=672
+'INSTANCES'=673
+'INSTANTIABLE'=674
+'INSTANTLY'=675
+'INSTEAD'=676
+'INSTR2'=677
+'INSTR4'=678
+'INSTRB'=679
+'INSTRC'=680
+'INSTR'=681
+'INTEGER'=682
+'INTERLEAVED'=683
+'INTERMEDIATE'=684
+'INTERNAL_CONVERT'=685
+'INTERNAL_USE'=686
+'INTERPRETED'=687
+'INTERSECT'=688
+'INTERVAL'=689
+'INT'=690
+'INTO'=691
+'INVALIDATE'=692
+'INVISIBLE'=693
+'IN_XQUERY'=694
+'IS'=695
+'ISOLATION'=696
+'ISOLATION_LEVEL'=697
+'ITERATE'=698
+'ITERATION_NUMBER'=699
+'JAVA'=700
+'JOB'=701
+'JOIN'=702
+'JSON_ARRAYAGG'=703
+'JSON_ARRAY'=704
+'JSON_EQUAL'=705
+'JSON_EXISTS2'=706
+'JSON_EXISTS'=707
+'JSONGET'=708
+'JSON'=709
+'JSON_OBJECTAGG'=710
+'JSON_OBJECT'=711
+'JSONPARSE'=712
+'JSON_QUERY'=713
+'JSON_SERIALIZE'=714
+'JSON_TABLE'=715
+'JSON_TEXTCONTAINS2'=716
+'JSON_TEXTCONTAINS'=717
+'JSON_VALUE'=718
+'KEEP_DUPLICATES'=719
+'KEEP'=720
+'KERBEROS'=721
+'KEY'=722
+'KEY_LENGTH'=723
+'KEYSIZE'=724
+'KEYS'=725
+'KEYSTORE'=726
+'KILL'=727
+'LABEL'=728
+'LANGUAGE'=729
+'LAST_DAY'=730
+'LAST'=731
+'LAST_VALUE'=732
+'LATERAL'=733
+'LAX'=734
+'LAYER'=735
+'LDAP_REGISTRATION_ENABLED'=736
+'LDAP_REGISTRATION'=737
+'LDAP_REG_SYNC_INTERVAL'=738
+'LEADING'=739
+'LEFT'=740
+'LENGTH2'=741
+'LENGTH4'=742
+'LENGTHB'=743
+'LENGTHC'=744
+'LENGTH'=745
+'LESS'=746
+'LEVEL'=747
+'LEVELS'=748
+'LIBRARY'=749
+'LIFECYCLE'=750
+'LIFE'=751
+'LIFETIME'=752
+'LIKE2'=753
+'LIKE4'=754
+'LIKEC'=755
+'LIKE_EXPAND'=756
+'LIKE'=757
+'LIMIT'=758
+'LINEAR'=759
+'LINK'=760
+'LIST'=761
+'LN'=762
+'LNNVL'=763
+'LOAD'=764
+'LOB'=765
+'LOBNVL'=766
+'LOBS'=767
+'LOCAL_INDEXES'=768
+'LOCAL'=769
+'LOCALTIME'=770
+'LOCALTIMESTAMP'=771
+'LOCATION'=772
+'LOCATOR'=773
+'LOCKED'=774
+'LOCKING'=775
+'LOCK'=776
+'LOGFILE'=777
+'LOGFILES'=778
+'LOGGING'=779
+'LOGICAL'=780
+'LOGICAL_READS_PER_CALL'=781
+'LOGICAL_READS_PER_SESSION'=782
+'LOG'=783
+'LOGMINING'=784
+'LOGOFF'=785
+'LOGON'=786
+'LOG_READ_ONLY_VIOLATIONS'=787
+'LONG'=788
+'LOOP'=789
+'LOWER'=790
+'LOW'=791
+'LPAD'=792
+'LTRIM'=793
+'MAIN'=794
+'MAKE_REF'=795
+'MANAGED'=796
+'MANAGE'=797
+'MANAGEMENT'=798
+'MANAGER'=799
+'MANUAL'=800
+'MAP'=801
+'MAPPING'=802
+'MASTER'=803
+'MATCHED'=804
+'MATCHES'=805
+'MATCH'=806
+'MATCH_NUMBER'=807
+'MATCH_RECOGNIZE'=808
+'MATERIALIZED'=809
+'MATERIALIZE'=810
+'MAXARCHLOGS'=811
+'MAXDATAFILES'=812
+'MAXEXTENTS'=813
+'MAXIMIZE'=814
+'MAXINSTANCES'=815
+'MAXLOGFILES'=816
+'MAXLOGHISTORY'=817
+'MAXLOGMEMBERS'=818
+'MAX_SHARED_TEMP_SIZE'=819
+'MAXSIZE'=820
+'MAXTRANS'=821
+'MAXVALUE'=822
+'MEASURE'=823
+'MEASURES'=824
+'MEDIUM'=825
+'MEMBER'=826
+'MEMCOMPRESS'=827
+'MEMORY'=828
+'MERGE$ACTIONS'=829
+'MERGE_AJ'=830
+'MERGE_CONST_ON'=831
+'MERGE'=832
+'MERGE_SJ'=833
+'METADATA'=834
+'METHOD'=835
+'MIGRATE'=836
+'MIGRATION'=837
+'MINEXTENTS'=838
+'MINIMIZE'=839
+'MINIMUM'=840
+'MINING'=841
+'MINUS'=842
+'MINUS_NULL'=843
+'MINUTE'=844
+'MINVALUE'=845
+'MIRRORCOLD'=846
+'MIRRORHOT'=847
+'MIRROR'=848
+'MLSLABEL'=849
+'MODEL_COMPILE_SUBQUERY'=850
+'MODEL_DONTVERIFY_UNIQUENESS'=851
+'MODEL_DYNAMIC_SUBQUERY'=852
+'MODEL_MIN_ANALYSIS'=853
+'MODEL'=854
+'MODEL_NB'=855
+'MODEL_NO_ANALYSIS'=856
+'MODEL_PBY'=857
+'MODEL_PUSH_REF'=858
+'MODEL_SV'=859
+'MODE'=860
+'MODIFICATION'=861
+'MODIFY_COLUMN_TYPE'=862
+'MODIFY'=863
+'MOD'=864
+'MODULE'=865
+'MONITORING'=866
+'MONITOR'=867
+'MONTH'=868
+'MONTHS_BETWEEN'=869
+'MONTHS'=870
+'MOUNT'=871
+'MOUNTPATH'=872
+'MOVEMENT'=873
+'MOVE'=874
+'MULTIDIMENSIONAL'=875
+'MULTISET'=876
+'MV_MERGE'=877
+'NAMED'=878
+'NAME'=879
+'NAMESPACE'=880
+'NAN'=881
+'NANVL'=882
+'NATIONAL'=883
+'NATIVE_FULL_OUTER_JOIN'=884
+'NATIVE'=885
+'NATURAL'=886
+'NATURALN'=887
+'NAV'=888
+'NCHAR_CS'=889
+'NCHAR'=890
+'NCHR'=891
+'NCLOB'=892
+'NEEDED'=893
+'NEG'=894
+'NESTED'=895
+'NESTED_TABLE_FAST_INSERT'=896
+'NESTED_TABLE_GET_REFS'=897
+'NESTED_TABLE_ID'=898
+'NESTED_TABLE_SET_REFS'=899
+'NESTED_TABLE_SET_SETID'=900
+'NETWORK'=901
+'NEVER'=902
+'NEW'=903
+'NEW_TIME'=904
+'NEXT_DAY'=905
+'NEXT'=906
+'NL_AJ'=907
+'NLJ_BATCHING'=908
+'NLJ_INDEX_FILTER'=909
+'NLJ_INDEX_SCAN'=910
+'NLJ_PREFETCH'=911
+'NLS_CALENDAR'=912
+'NLS_CHARACTERSET'=913
+'NLS_CHARSET_DECL_LEN'=914
+'NLS_CHARSET_ID'=915
+'NLS_CHARSET_NAME'=916
+'NLS_COMP'=917
+'NLS_CURRENCY'=918
+'NLS_DATE_FORMAT'=919
+'NLS_DATE_LANGUAGE'=920
+'NLS_INITCAP'=921
+'NLS_ISO_CURRENCY'=922
+'NL_SJ'=923
+'NLS_LANG'=924
+'NLS_LANGUAGE'=925
+'NLS_LENGTH_SEMANTICS'=926
+'NLS_LOWER'=927
+'NLS_NCHAR_CONV_EXCP'=928
+'NLS_NUMERIC_CHARACTERS'=929
+'NLS_SORT'=930
+'NLSSORT'=931
+'NLS_SPECIAL_CHARS'=932
+'NLS_TERRITORY'=933
+'NLS_UPPER'=934
+'NO_ACCESS'=935
+'NO_ADAPTIVE_PLAN'=936
+'NO_ANSI_REARCH'=937
+'NOAPPEND'=938
+'NOARCHIVELOG'=939
+'NOAUDIT'=940
+'NO_AUTO_REOPTIMIZE'=941
+'NO_BASETABLE_MULTIMV_REWRITE'=942
+'NO_BATCH_TABLE_ACCESS_BY_ROWID'=943
+'NO_BIND_AWARE'=944
+'NO_BUFFER'=945
+'NOCACHE'=946
+'NO_CARTESIAN'=947
+'NO_CHECK_ACL_REWRITE'=948
+'NO_CLUSTER_BY_ROWID'=949
+'NO_CLUSTERING'=950
+'NO_COALESCE_SQ'=951
+'NO_COMMON_DATA'=952
+'NOCOMPRESS'=953
+'NO_CONNECT_BY_CB_WHR_ONLY'=954
+'NO_CONNECT_BY_COMBINE_SW'=955
+'NO_CONNECT_BY_COST_BASED'=956
+'NO_CONNECT_BY_ELIM_DUPS'=957
+'NO_CONNECT_BY_FILTERING'=958
+'NOCOPY'=959
+'NO_COST_XML_QUERY_REWRITE'=960
+'NO_CPU_COSTING'=961
+'NOCPU_COSTING'=962
+'NOCYCLE'=963
+'NO_DATA_SECURITY_REWRITE'=964
+'NO_DECORRELATE'=965
+'NODELAY'=966
+'NO_DOMAIN_INDEX_FILTER'=967
+'NO_DST_UPGRADE_INSERT_CONV'=968
+'NO_ELIM_GROUPBY'=969
+'NO_ELIMINATE_JOIN'=970
+'NO_ELIMINATE_OBY'=971
+'NO_ELIMINATE_OUTER_JOIN'=972
+'NOENTITYESCAPING'=973
+'NO_EXPAND_GSET_TO_UNION'=974
+'NO_EXPAND'=975
+'NO_EXPAND_TABLE'=976
+'NO_FACT'=977
+'NO_FACTORIZE_JOIN'=978
+'NO_FILTERING'=979
+'NOFORCE'=980
+'NO_FULL_OUTER_JOIN_TO_OUTER'=981
+'NO_GATHER_OPTIMIZER_STATISTICS'=982
+'NO_GBY_PUSHDOWN'=983
+'NOGUARANTEE'=984
+'NO_INDEX_FFS'=985
+'NO_INDEX'=986
+'NO_INDEX_SS'=987
+'NO_INMEMORY'=988
+'NO_INMEMORY_PRUNING'=989
+'NOKEEP'=990
+'NO_LOAD'=991
+'NOLOCAL'=992
+'NOLOGGING'=993
+'NOMAPPING'=994
+'NOMAXVALUE'=995
+'NO_MERGE'=996
+'NOMINIMIZE'=997
+'NOMINVALUE'=998
+'NO_MODEL_PUSH_REF'=999
+'NO_MONITORING'=1000
+'NOMONITORING'=1001
+'NO_MONITOR'=1002
+'NO_MULTIMV_REWRITE'=1003
+'NO_NATIVE_FULL_OUTER_JOIN'=1004
+'NONBLOCKING'=1005
+'NONEDITIONABLE'=1006
+'NONE'=1007
+'NO_NLJ_BATCHING'=1008
+'NO_NLJ_PREFETCH'=1009
+'NO'=1010
+'NONSCHEMA'=1011
+'NO_OBJECT_LINK'=1012
+'NOORDER'=1013
+'NO_ORDER_ROLLUPS'=1014
+'NO_OUTER_JOIN_TO_ANTI'=1015
+'NO_OUTER_JOIN_TO_INNER'=1016
+'NOOVERRIDE'=1017
+'NO_PARALLEL_INDEX'=1018
+'NOPARALLEL_INDEX'=1019
+'NO_PARALLEL'=1020
+'NOPARALLEL'=1021
+'NO_PARTIAL_COMMIT'=1022
+'NO_PARTIAL_JOIN'=1023
+'NO_PARTIAL_ROLLUP_PUSHDOWN'=1024
+'NOPARTITION'=1025
+'NO_PLACE_DISTINCT'=1026
+'NO_PLACE_GROUP_BY'=1027
+'NO_PQ_CONCURRENT_UNION'=1028
+'NO_PQ_MAP'=1029
+'NO_PQ_REPLICATE'=1030
+'NO_PQ_SKEW'=1031
+'NO_PRUNE_GSETS'=1032
+'NO_PULL_PRED'=1033
+'NO_PUSH_PRED'=1034
+'NO_PUSH_SUBQ'=1035
+'NO_PX_FAULT_TOLERANCE'=1036
+'NO_PX_JOIN_FILTER'=1037
+'NO_QKN_BUFF'=1038
+'NO_QUERY_TRANSFORMATION'=1039
+'NO_REF_CASCADE'=1040
+'NORELOCATE'=1041
+'NORELY'=1042
+'NOREPAIR'=1043
+'NOREPLAY'=1044
+'NORESETLOGS'=1045
+'NO_RESULT_CACHE'=1046
+'NOREVERSE'=1047
+'NO_REWRITE'=1048
+'NOREWRITE'=1049
+'NORMAL'=1050
+'NO_ROOT_SW_FOR_LOCAL'=1051
+'NOROWDEPENDENCIES'=1052
+'NOSCHEMACHECK'=1053
+'NOSEGMENT'=1054
+'NO_SEMIJOIN'=1055
+'NO_SEMI_TO_INNER'=1056
+'NO_SET_TO_JOIN'=1057
+'NOSORT'=1058
+'NO_SQL_TRANSLATION'=1059
+'NO_SQL_TUNE'=1060
+'NO_STAR_TRANSFORMATION'=1061
+'NO_STATEMENT_QUEUING'=1062
+'NO_STATS_GSETS'=1063
+'NOSTRICT'=1064
+'NO_SUBQUERY_PRUNING'=1065
+'NO_SUBSTRB_PAD'=1066
+'NO_SWAP_JOIN_INPUTS'=1067
+'NOSWITCH'=1068
+'NO_TABLE_LOOKUP_BY_NL'=1069
+'NO_TEMP_TABLE'=1070
+'NOTHING'=1071
+'NOTIFICATION'=1072
+'NOT'=1073
+'NO_TRANSFORM_DISTINCT_AGG'=1074
+'NO_UNNEST'=1075
+'NO_USE_CUBE'=1076
+'NO_USE_HASH_AGGREGATION'=1077
+'NO_USE_HASH_GBY_FOR_PUSHDOWN'=1078
+'NO_USE_HASH'=1079
+'NO_USE_INVISIBLE_INDEXES'=1080
+'NO_USE_MERGE'=1081
+'NO_USE_NL'=1082
+'NO_USE_VECTOR_AGGREGATION'=1083
+'NOVALIDATE'=1084
+'NO_VECTOR_TRANSFORM_DIMS'=1085
+'NO_VECTOR_TRANSFORM_FACT'=1086
+'NO_VECTOR_TRANSFORM'=1087
+'NOWAIT'=1088
+'NO_XDB_FASTPATH_INSERT'=1089
+'NO_XML_DML_REWRITE'=1090
+'NO_XMLINDEX_REWRITE_IN_SELECT'=1091
+'NO_XMLINDEX_REWRITE'=1092
+'NO_XML_QUERY_REWRITE'=1093
+'NO_ZONEMAP'=1094
+'NTH_VALUE'=1095
+'NULLIF'=1096
+'NULL'=1097
+'NULLS'=1098
+'NUMBER'=1099
+'NUMERIC'=1100
+'NUM_INDEX_KEYS'=1101
+'NUMTODSINTERVAL'=1102
+'NUMTOYMINTERVAL'=1103
+'NVARCHAR2'=1104
+'NVL2'=1105
+'OBJECT2XML'=1106
+'OBJECT'=1107
+'OBJ_ID'=1108
+'OBJNO'=1109
+'OBJNO_REUSE'=1110
+'OCCURENCES'=1111
+'OFFLINE'=1112
+'OFF'=1113
+'OFFSET'=1114
+'OF'=1115
+'OIDINDEX'=1116
+'OID'=1117
+'OLAP'=1118
+'OLD'=1119
+'OLD_PUSH_PRED'=1120
+'OLS'=1121
+'OLTP'=1122
+'OMIT'=1123
+'ONE'=1124
+'ONLINE'=1125
+'ONLINELOG'=1126
+'ONLY'=1127
+'ON'=1128
+'OPAQUE'=1129
+'OPAQUE_TRANSFORM'=1130
+'OPAQUE_XCANONICAL'=1131
+'OPCODE'=1132
+'OPEN'=1133
+'OPERATIONS'=1134
+'OPERATOR'=1135
+'OPT_ESTIMATE'=1136
+'OPTIMAL'=1137
+'OPTIMIZE'=1138
+'OPTIMIZER_FEATURES_ENABLE'=1139
+'OPTIMIZER_GOAL'=1140
+'OPTION'=1141
+'OPT_PARAM'=1142
+'ORA_BRANCH'=1143
+'ORA_CHECK_ACL'=1144
+'ORA_CHECK_PRIVILEGE'=1145
+'ORA_CLUSTERING'=1146
+'ORADATA'=1147
+'ORADEBUG'=1148
+'ORA_DST_AFFECTED'=1149
+'ORA_DST_CONVERT'=1150
+'ORA_DST_ERROR'=1151
+'ORA_GET_ACLIDS'=1152
+'ORA_GET_PRIVILEGES'=1153
+'ORA_HASH'=1154
+'ORA_INVOKING_USERID'=1155
+'ORA_INVOKING_USER'=1156
+'ORA_INVOKING_XS_USER_GUID'=1157
+'ORA_INVOKING_XS_USER'=1158
+'ORA_RAWCOMPARE'=1159
+'ORA_RAWCONCAT'=1160
+'ORA_ROWSCN'=1161
+'ORA_ROWSCN_RAW'=1162
+'ORA_ROWVERSION'=1163
+'ORA_TABVERSION'=1164
+'ORA_WRITE_TIME'=1165
+'ORDERED'=1166
+'ORDERED_PREDICATES'=1167
+'ORDER'=1168
+'ORDINALITY'=1169
+'OR_EXPAND'=1170
+'ORGANIZATION'=1171
+'OR'=1172
+'OR_PREDICATES'=1173
+'OSERROR'=1174
+'OTHER'=1175
+'OUTER_JOIN_TO_ANTI'=1176
+'OUTER_JOIN_TO_INNER'=1177
+'OUTER'=1178
+'OUTLINE_LEAF'=1179
+'OUTLINE'=1180
+'OUT_OF_LINE'=1181
+'OUT'=1182
+'OVERFLOW_NOMOVE'=1183
+'OVERFLOW'=1184
+'OVERLAPS'=1185
+'OVER'=1186
+'OVERRIDING'=1187
+'OWNER'=1188
+'OWNERSHIP'=1189
+'OWN'=1190
+'PACKAGE'=1191
+'PACKAGES'=1192
+'PARALLEL_ENABLE'=1193
+'PARALLEL_INDEX'=1194
+'PARALLEL'=1195
+'PARAMETERFILE'=1196
+'PARAMETERS'=1197
+'PARAM'=1198
+'PARENT'=1199
+'PARITY'=1200
+'PARTIAL_JOIN'=1201
+'PARTIALLY'=1202
+'PARTIAL'=1203
+'PARTIAL_ROLLUP_PUSHDOWN'=1204
+'PARTITION_HASH'=1205
+'PARTITION_LIST'=1206
+'PARTITION'=1207
+'PARTITION_RANGE'=1208
+'PARTITIONS'=1209
+'PART$NUM$INST'=1210
+'PASSING'=1211
+'PASSWORD_GRACE_TIME'=1212
+'PASSWORD_LIFE_TIME'=1213
+'PASSWORD_LOCK_TIME'=1214
+'PASSWORD'=1215
+'PASSWORD_REUSE_MAX'=1216
+'PASSWORD_REUSE_TIME'=1217
+'PASSWORD_VERIFY_FUNCTION'=1218
+'PAST'=1219
+'PATCH'=1220
+'PATH'=1221
+'PATH_PREFIX'=1222
+'PATHS'=1223
+'PATTERN'=1224
+'PBL_HS_BEGIN'=1225
+'PBL_HS_END'=1226
+'PCTFREE'=1227
+'PCTINCREASE'=1228
+'PCTTHRESHOLD'=1229
+'PCTUSED'=1230
+'PCTVERSION'=1231
+'PENDING'=1232
+'PERCENT'=1236
+'PERCENT_RANKM'=1237
+'PERFORMANCE'=1241
+'PERIOD'=1242
+'PERMANENT'=1243
+'PERMISSION'=1244
+'PERMUTE'=1245
+'PER'=1246
+'PFILE'=1247
+'PHYSICAL'=1248
+'PIKEY'=1249
+'PIPELINED'=1250
+'PIPE'=1251
+'PIV_GB'=1252
+'PIVOT'=1253
+'PIV_SSF'=1254
+'PLACE_DISTINCT'=1255
+'PLACE_GROUP_BY'=1256
+'PLAN'=1257
+'PLSCOPE_SETTINGS'=1258
+'PLS_INTEGER'=1259
+'PLSQL_CCFLAGS'=1260
+'PLSQL_CODE_TYPE'=1261
+'PLSQL_DEBUG'=1262
+'PLSQL_OPTIMIZE_LEVEL'=1263
+'PLSQL_WARNINGS'=1264
+'PLUGGABLE'=1265
+'POINT'=1266
+'POLICY'=1267
+'POOL_16K'=1268
+'POOL_2K'=1269
+'POOL_32K'=1270
+'POOL_4K'=1271
+'POOL_8K'=1272
+'POSITIVEN'=1273
+'POSITIVE'=1274
+'POST_TRANSACTION'=1275
+'POWERMULTISET_BY_CARDINALITY'=1276
+'POWERMULTISET'=1277
+'POWER'=1278
+'PQ_CONCURRENT_UNION'=1279
+'PQ_DISTRIBUTE'=1280
+'PQ_DISTRIBUTE_WINDOW'=1281
+'PQ_FILTER'=1282
+'PQ_MAP'=1283
+'PQ_NOMAP'=1284
+'PQ_REPLICATE'=1285
+'PQ_SKEW'=1286
+'PRAGMA'=1287
+'PREBUILT'=1288
+'PRECEDES'=1289
+'PRECEDING'=1290
+'PRECISION'=1291
+'PRECOMPUTE_SUBQUERY'=1292
+'PREDICATE_REORDERS'=1293
+'PRELOAD'=1294
+'PREPARE'=1295
+'PRESENTNNV'=1296
+'PRESENT'=1297
+'PRESENTV'=1298
+'PRESERVE_OID'=1299
+'PRESERVE'=1300
+'PRETTY'=1301
+'PREVIOUS'=1302
+'PREV'=1303
+'PRIMARY'=1304
+'PRINTBLOBTOCLOB'=1305
+'PRIORITY'=1306
+'PRIOR'=1307
+'PRIVATE'=1308
+'PRIVATE_SGA'=1309
+'PRIVILEGED'=1310
+'PRIVILEGE'=1311
+'PRIVILEGES'=1312
+'PROCEDURAL'=1313
+'PROCEDURE'=1314
+'PROCESS'=1315
+'PROFILE'=1316
+'PROGRAM'=1317
+'PROJECT'=1318
+'PROPAGATE'=1319
+'PROTECTED'=1320
+'PROTECTION'=1321
+'PROXY'=1322
+'PRUNING'=1323
+'PUBLIC'=1324
+'PULL_PRED'=1325
+'PURGE'=1326
+'PUSH_PRED'=1327
+'PUSH_SUBQ'=1328
+'PX_FAULT_TOLERANCE'=1329
+'PX_GRANULE'=1330
+'PX_JOIN_FILTER'=1331
+'QB_NAME'=1332
+'QUERY_BLOCK'=1333
+'QUERY'=1334
+'QUEUE_CURR'=1335
+'QUEUE'=1336
+'QUEUE_ROWP'=1337
+'QUIESCE'=1338
+'QUORUM'=1339
+'QUOTA'=1340
+'RAISE'=1341
+'RANDOM_LOCAL'=1342
+'RANDOM'=1343
+'RANGE'=1344
+'RANKM'=1345
+'RAPIDLY'=1346
+'RAW'=1347
+'RAWTOHEX'=1348
+'RAWTONHEX'=1349
+'RBA'=1350
+'RBO_OUTLINE'=1351
+'RDBA'=1352
+'READ'=1353
+'READS'=1354
+'REALM'=1355
+'REAL'=1356
+'REBALANCE'=1357
+'REBUILD'=1358
+'RECORD'=1359
+'RECORDS_PER_BLOCK'=1360
+'RECOVERABLE'=1361
+'RECOVER'=1362
+'RECOVERY'=1363
+'RECYCLEBIN'=1364
+'RECYCLE'=1365
+'REDACTION'=1366
+'REDEFINE'=1367
+'REDO'=1368
+'REDUCED'=1369
+'REDUNDANCY'=1370
+'REF_CASCADE_CURSOR'=1371
+'REFERENCED'=1372
+'REFERENCE'=1373
+'REFERENCES'=1374
+'REFERENCING'=1375
+'REF'=1376
+'REFRESH'=1377
+'REFTOHEX'=1378
+'REGEXP_COUNT'=1379
+'REGEXP_INSTR'=1380
+'REGEXP_LIKE'=1381
+'REGEXP_REPLACE'=1382
+'REGEXP_SUBSTR'=1383
+'REGISTER'=1384
+'REGR_AVGX'=1385
+'REGR_AVGY'=1386
+'REGR_COUNT'=1387
+'REGR_INTERCEPT'=1388
+'REGR_R2'=1389
+'REGR_SLOPE'=1390
+'REGR_SXX'=1391
+'REGR_SXY'=1392
+'REGR_SYY'=1393
+'REGULAR'=1394
+'REJECT'=1395
+'REKEY'=1396
+'RELATIONAL'=1397
+'RELIES_ON'=1398
+'RELOCATE'=1399
+'RELY'=1400
+'REMAINDER'=1401
+'REMOTE_MAPPED'=1402
+'REMOVE'=1403
+'RENAME'=1404
+'REPAIR'=1405
+'REPEAT'=1406
+'REPLACE'=1407
+'REPLICATION'=1408
+'REQUIRED'=1409
+'RESETLOGS'=1410
+'RESET'=1411
+'RESIZE'=1412
+'RESOLVE'=1413
+'RESOLVER'=1414
+'RESOURCE'=1415
+'RESPECT'=1416
+'RESTART'=1417
+'RESTORE_AS_INTERVALS'=1418
+'RESTORE'=1419
+'RESTRICT_ALL_REF_CONS'=1420
+'RESTRICTED'=1421
+'RESTRICT_REFERENCES'=1422
+'RESTRICT'=1423
+'RESULT_CACHE'=1424
+'RESULT'=1425
+'RESUMABLE'=1426
+'RESUME'=1427
+'RETENTION'=1428
+'RETRY_ON_ROW_CHANGE'=1429
+'RETURNING'=1430
+'RETURN'=1431
+'REUSE'=1432
+'REVERSE'=1433
+'REVOKE'=1434
+'REWRITE_OR_ERROR'=1435
+'REWRITE'=1436
+'RIGHT'=1437
+'ROLE'=1438
+'ROLESET'=1439
+'ROLES'=1440
+'ROLLBACK'=1441
+'ROLLING'=1442
+'ROLLUP'=1443
+'ROWDEPENDENCIES'=1444
+'ROWID_MAPPING_TABLE'=1445
+'ROWID'=1446
+'ROWIDTOCHAR'=1447
+'ROWIDTONCHAR'=1448
+'ROW_LENGTH'=1449
+'ROWNUM'=1450
+'ROW'=1451
+'ROWS'=1452
+'RPAD'=1453
+'RTRIM'=1454
+'RULE'=1455
+'RULES'=1456
+'RUNNING'=1457
+'SALT'=1458
+'SAMPLE'=1459
+'SAVE_AS_INTERVALS'=1460
+'SAVEPOINT'=1461
+'SAVE'=1462
+'SB4'=1463
+'SCALE_ROWS'=1464
+'SCALE'=1465
+'SCAN_INSTANCES'=1466
+'SCAN'=1467
+'SCHEDULER'=1468
+'SCHEMACHECK'=1469
+'SCHEMA'=1470
+'SCN_ASCENDING'=1471
+'SCN'=1472
+'SCOPE'=1473
+'SCRUB'=1474
+'SD_ALL'=1475
+'SD_INHIBIT'=1476
+'SDO_GEOM_MBR'=1477
+'SD_SHOW'=1478
+'SEARCH'=1479
+'SECOND'=1480
+'SECRET'=1481
+'SECUREFILE_DBA'=1482
+'SECUREFILE'=1483
+'SECURITY'=1484
+'SEED'=1485
+'SEG_BLOCK'=1486
+'SEG_FILE'=1487
+'SEGMENT'=1488
+'SELECTIVITY'=1489
+'SELECT'=1490
+'SELF'=1491
+'SEMIJOIN_DRIVER'=1492
+'SEMIJOIN'=1493
+'SEMI_TO_INNER'=1494
+'SEQUENCED'=1495
+'SEQUENCE'=1496
+'SEQUENTIAL'=1497
+'SEQ'=1498
+'SERIALIZABLE'=1499
+'SERIALLY_REUSABLE'=1500
+'SERIAL'=1501
+'SERVERERROR'=1502
+'SERVICE_NAME_CONVERT'=1503
+'SERVICES'=1504
+'SESSION_CACHED_CURSORS'=1505
+'SESSION'=1506
+'SESSIONS_PER_USER'=1507
+'SESSIONTIMEZONE'=1508
+'SESSIONTZNAME'=1509
+'SET'=1510
+'SETS'=1511
+'SETTINGS'=1512
+'SET_TO_JOIN'=1513
+'SEVERE'=1514
+'SHARED_POOL'=1515
+'SHARED'=1516
+'SHARE'=1517
+'SHARING'=1518
+'SHELFLIFE'=1519
+'SHOW'=1520
+'SHRINK'=1521
+'SHUTDOWN'=1522
+'SIBLINGS'=1523
+'SID'=1524
+'SIGNAL_COMPONENT'=1525
+'SIGNAL_FUNCTION'=1526
+'SIGN'=1527
+'SIGNTYPE'=1528
+'SIMPLE_INTEGER'=1529
+'SIMPLE'=1530
+'SINGLE'=1531
+'SINGLETASK'=1532
+'SINH'=1533
+'SIN'=1534
+'SIZE'=1535
+'SKIP_EXT_OPTIMIZER'=1536
+'SKIP'=1537
+'SKIP_UNQ_UNUSABLE_IDX'=1538
+'SKIP_UNUSABLE_INDEXES'=1539
+'SMALLFILE'=1540
+'SMALLINT'=1541
+'SNAPSHOT'=1542
+'SOME'=1543
+'SORT'=1544
+'SOUNDEX'=1545
+'SOURCE_FILE_DIRECTORY'=1546
+'SOURCE_FILE_NAME_CONVERT'=1547
+'SOURCE'=1548
+'SPACE'=1549
+'SPECIFICATION'=1550
+'SPFILE'=1551
+'SPLIT'=1552
+'SPREADSHEET'=1553
+'SQLDATA'=1554
+'SQLERROR'=1555
+'SQLLDR'=1556
+'SQL'=1557
+'SQL_TRACE'=1558
+'SQL_TRANSLATION_PROFILE'=1559
+'SQRT'=1560
+'STALE'=1561
+'STANDALONE'=1562
+'STANDARD_HASH'=1563
+'STANDBY_MAX_DATA_DELAY'=1564
+'STANDBYS'=1565
+'STANDBY'=1566
+'STAR'=1567
+'STAR_TRANSFORMATION'=1568
+'START'=1569
+'STARTUP'=1570
+'STATEMENT_ID'=1571
+'STATEMENT_QUEUING'=1572
+'STATEMENTS'=1573
+'STATEMENT'=1574
+'STATE'=1575
+'STATIC'=1576
+'STATISTICS'=1577
+'STATS_BINOMIAL_TEST'=1578
+'STATS_CROSSTAB'=1579
+'STATS_F_TEST'=1580
+'STATS_KS_TEST'=1581
+'STATS_MODE'=1582
+'STATS_MW_TEST'=1583
+'STATS_ONE_WAY_ANOVA'=1584
+'STATS_T_TEST_INDEP'=1585
+'STATS_T_TEST_INDEPU'=1586
+'STATS_T_TEST_ONE'=1587
+'STATS_T_TEST_PAIRED'=1588
+'STATS_WSR_TEST'=1589
+'STDDEV_POP'=1590
+'STDDEV_SAMP'=1591
+'STOP'=1592
+'STORAGE'=1593
+'STORE'=1594
+'STREAMS'=1595
+'STREAM'=1596
+'STRICT'=1597
+'STRING'=1598
+'STRIPE_COLUMNS'=1599
+'STRIPE_WIDTH'=1600
+'STRIP'=1601
+'STRUCTURE'=1602
+'SUBMULTISET'=1603
+'SUBPARTITION_REL'=1604
+'SUBPARTITIONS'=1605
+'SUBPARTITION'=1606
+'SUBQUERIES'=1607
+'SUBQUERY_PRUNING'=1608
+'SUBSCRIBE'=1609
+'SUBSET'=1610
+'SUBSTITUTABLE'=1611
+'SUBSTR2'=1612
+'SUBSTR4'=1613
+'SUBSTRB'=1614
+'SUBSTRC'=1615
+'SUBTYPE'=1616
+'SUCCESSFUL'=1617
+'SUCCESS'=1618
+'SUMMARY'=1619
+'SUPPLEMENTAL'=1620
+'SUSPEND'=1621
+'SWAP_JOIN_INPUTS'=1622
+'SWITCHOVER'=1623
+'SWITCH'=1624
+'SYNCHRONOUS'=1625
+'SYNC'=1626
+'SYNONYM'=1627
+'SYSASM'=1628
+'SYS_AUDIT'=1629
+'SYSAUX'=1630
+'SYSBACKUP'=1631
+'SYS_CHECKACL'=1632
+'SYS_CHECK_PRIVILEGE'=1633
+'SYS_CONNECT_BY_PATH'=1634
+'SYS_CONTEXT'=1635
+'SYSDATE'=1636
+'SYSDBA'=1637
+'SYS_DBURIGEN'=1638
+'SYSDG'=1639
+'SYS_DL_CURSOR'=1640
+'SYS_DM_RXFORM_CHR'=1641
+'SYS_DM_RXFORM_NUM'=1642
+'SYS_DOM_COMPARE'=1643
+'SYS_DST_PRIM2SEC'=1644
+'SYS_DST_SEC2PRIM'=1645
+'SYS_ET_BFILE_TO_RAW'=1646
+'SYS_ET_BLOB_TO_IMAGE'=1647
+'SYS_ET_IMAGE_TO_BLOB'=1648
+'SYS_ET_RAW_TO_BFILE'=1649
+'SYS_EXTPDTXT'=1650
+'SYS_EXTRACT_UTC'=1651
+'SYS_FBT_INSDEL'=1652
+'SYS_FILTER_ACLS'=1653
+'SYS_FNMATCHES'=1654
+'SYS_FNREPLACE'=1655
+'SYS_GET_ACLIDS'=1656
+'SYS_GET_COL_ACLIDS'=1657
+'SYS_GET_PRIVILEGES'=1658
+'SYS_GETTOKENID'=1659
+'SYS_GETXTIVAL'=1660
+'SYS_GUID'=1661
+'SYSGUID'=1662
+'SYSKM'=1663
+'SYS_MAKE_XMLNODEID'=1664
+'SYS_MAKEXML'=1665
+'SYS_MKXMLATTR'=1666
+'SYS_MKXTI'=1667
+'SYSOBJ'=1668
+'SYS_OP_ADT2BIN'=1669
+'SYS_OP_ADTCONS'=1670
+'SYS_OP_ALSCRVAL'=1671
+'SYS_OP_ATG'=1672
+'SYS_OP_BIN2ADT'=1673
+'SYS_OP_BITVEC'=1674
+'SYS_OP_BL2R'=1675
+'SYS_OP_BLOOM_FILTER_LIST'=1676
+'SYS_OP_BLOOM_FILTER'=1677
+'SYS_OP_C2C'=1678
+'SYS_OP_CAST'=1679
+'SYS_OP_CEG'=1680
+'SYS_OP_CL2C'=1681
+'SYS_OP_COMBINED_HASH'=1682
+'SYS_OP_COMP'=1683
+'SYS_OP_CONVERT'=1684
+'SYS_OP_COUNTCHG'=1685
+'SYS_OP_CSCONV'=1686
+'SYS_OP_CSCONVTEST'=1687
+'SYS_OP_CSR'=1688
+'SYS_OP_CSX_PATCH'=1689
+'SYS_OP_CYCLED_SEQ'=1690
+'SYS_OP_DECOMP'=1691
+'SYS_OP_DESCEND'=1692
+'SYS_OP_DISTINCT'=1693
+'SYS_OP_DRA'=1694
+'SYS_OP_DUMP'=1695
+'SYS_OP_DV_CHECK'=1696
+'SYS_OP_ENFORCE_NOT_NULL$'=1697
+'SYSOPER'=1698
+'SYS_OP_EXTRACT'=1699
+'SYS_OP_GROUPING'=1700
+'SYS_OP_GUID'=1701
+'SYS_OP_HASH'=1702
+'SYS_OP_IIX'=1703
+'SYS_OP_ITR'=1704
+'SYS_OP_KEY_VECTOR_CREATE'=1705
+'SYS_OP_KEY_VECTOR_FILTER_LIST'=1706
+'SYS_OP_KEY_VECTOR_FILTER'=1707
+'SYS_OP_KEY_VECTOR_SUCCEEDED'=1708
+'SYS_OP_KEY_VECTOR_USE'=1709
+'SYS_OP_LBID'=1710
+'SYS_OP_LOBLOC2BLOB'=1711
+'SYS_OP_LOBLOC2CLOB'=1712
+'SYS_OP_LOBLOC2ID'=1713
+'SYS_OP_LOBLOC2NCLOB'=1714
+'SYS_OP_LOBLOC2TYP'=1715
+'SYS_OP_LSVI'=1716
+'SYS_OP_LVL'=1717
+'SYS_OP_MAKEOID'=1718
+'SYS_OP_MAP_NONNULL'=1719
+'SYS_OP_MSR'=1720
+'SYS_OP_NICOMBINE'=1721
+'SYS_OP_NIEXTRACT'=1722
+'SYS_OP_NII'=1723
+'SYS_OP_NIX'=1724
+'SYS_OP_NOEXPAND'=1725
+'SYS_OP_NTCIMG$'=1726
+'SYS_OP_NUMTORAW'=1727
+'SYS_OP_OIDVALUE'=1728
+'SYS_OP_OPNSIZE'=1729
+'SYS_OP_PAR_1'=1730
+'SYS_OP_PARGID_1'=1731
+'SYS_OP_PARGID'=1732
+'SYS_OP_PAR'=1733
+'SYS_OP_PART_ID'=1734
+'SYS_OP_PIVOT'=1735
+'SYS_OP_R2O'=1736
+'SYS_OP_RAWTONUM'=1737
+'SYS_OP_RDTM'=1738
+'SYS_OP_REF'=1739
+'SYS_OP_RMTD'=1740
+'SYS_OP_ROWIDTOOBJ'=1741
+'SYS_OP_RPB'=1742
+'SYS_OPTLOBPRBSC'=1743
+'SYS_OP_TOSETID'=1744
+'SYS_OP_TPR'=1745
+'SYS_OP_TRTB'=1746
+'SYS_OPTXICMP'=1747
+'SYS_OPTXQCASTASNQ'=1748
+'SYS_OP_UNDESCEND'=1749
+'SYS_OP_VECAND'=1750
+'SYS_OP_VECBIT'=1751
+'SYS_OP_VECOR'=1752
+'SYS_OP_VECXOR'=1753
+'SYS_OP_VERSION'=1754
+'SYS_OP_VREF'=1755
+'SYS_OP_VVD'=1756
+'SYS_OP_XMLCONS_FOR_CSX'=1757
+'SYS_OP_XPTHATG'=1758
+'SYS_OP_XPTHIDX'=1759
+'SYS_OP_XPTHOP'=1760
+'SYS_OP_XTXT2SQLT'=1761
+'SYS_OP_ZONE_ID'=1762
+'SYS_ORDERKEY_DEPTH'=1763
+'SYS_ORDERKEY_MAXCHILD'=1764
+'SYS_ORDERKEY_PARENT'=1765
+'SYS_PARALLEL_TXN'=1766
+'SYS_PATHID_IS_ATTR'=1767
+'SYS_PATHID_IS_NMSPC'=1768
+'SYS_PATHID_LASTNAME'=1769
+'SYS_PATHID_LASTNMSPC'=1770
+'SYS_PATH_REVERSE'=1771
+'SYS_PXQEXTRACT'=1772
+'SYS_RAW_TO_XSID'=1773
+'SYS_RID_ORDER'=1774
+'SYS_ROW_DELTA'=1775
+'SYS_SC_2_XMLT'=1776
+'SYS_SYNRCIREDO'=1777
+'SYSTEM_DEFINED'=1778
+'SYSTEM'=1779
+'SYSTIMESTAMP'=1780
+'SYS_TYPEID'=1781
+'SYS_UMAKEXML'=1782
+'SYS_XMLANALYZE'=1783
+'SYS_XMLCONTAINS'=1784
+'SYS_XMLCONV'=1785
+'SYS_XMLEXNSURI'=1786
+'SYS_XMLGEN'=1787
+'SYS_XMLI_LOC_ISNODE'=1788
+'SYS_XMLI_LOC_ISTEXT'=1789
+'SYS_XMLINSTR'=1790
+'SYS_XMLLOCATOR_GETSVAL'=1791
+'SYS_XMLNODEID_GETCID'=1792
+'SYS_XMLNODEID_GETLOCATOR'=1793
+'SYS_XMLNODEID_GETOKEY'=1794
+'SYS_XMLNODEID_GETPATHID'=1795
+'SYS_XMLNODEID_GETPTRID'=1796
+'SYS_XMLNODEID_GETRID'=1797
+'SYS_XMLNODEID_GETSVAL'=1798
+'SYS_XMLNODEID_GETTID'=1799
+'SYS_XMLNODEID'=1800
+'SYS_XMLT_2_SC'=1801
+'SYS_XMLTRANSLATE'=1802
+'SYS_XMLTYPE2SQL'=1803
+'SYS_XQ_ASQLCNV'=1804
+'SYS_XQ_ATOMCNVCHK'=1805
+'SYS_XQBASEURI'=1806
+'SYS_XQCASTABLEERRH'=1807
+'SYS_XQCODEP2STR'=1808
+'SYS_XQCODEPEQ'=1809
+'SYS_XQCON2SEQ'=1810
+'SYS_XQCONCAT'=1811
+'SYS_XQDELETE'=1812
+'SYS_XQDFLTCOLATION'=1813
+'SYS_XQDOC'=1814
+'SYS_XQDOCURI'=1815
+'SYS_XQDURDIV'=1816
+'SYS_XQED4URI'=1817
+'SYS_XQENDSWITH'=1818
+'SYS_XQERRH'=1819
+'SYS_XQERR'=1820
+'SYS_XQESHTMLURI'=1821
+'SYS_XQEXLOBVAL'=1822
+'SYS_XQEXSTWRP'=1823
+'SYS_XQEXTRACT'=1824
+'SYS_XQEXTRREF'=1825
+'SYS_XQEXVAL'=1826
+'SYS_XQFB2STR'=1827
+'SYS_XQFNBOOL'=1828
+'SYS_XQFNCMP'=1829
+'SYS_XQFNDATIM'=1830
+'SYS_XQFNLNAME'=1831
+'SYS_XQFNNM'=1832
+'SYS_XQFNNSURI'=1833
+'SYS_XQFNPREDTRUTH'=1834
+'SYS_XQFNQNM'=1835
+'SYS_XQFNROOT'=1836
+'SYS_XQFORMATNUM'=1837
+'SYS_XQFTCONTAIN'=1838
+'SYS_XQFUNCR'=1839
+'SYS_XQGETCONTENT'=1840
+'SYS_XQINDXOF'=1841
+'SYS_XQINSERT'=1842
+'SYS_XQINSPFX'=1843
+'SYS_XQIRI2URI'=1844
+'SYS_XQLANG'=1845
+'SYS_XQLLNMFRMQNM'=1846
+'SYS_XQMKNODEREF'=1847
+'SYS_XQNILLED'=1848
+'SYS_XQNODENAME'=1849
+'SYS_XQNORMSPACE'=1850
+'SYS_XQNORMUCODE'=1851
+'SYS_XQ_NRNG'=1852
+'SYS_XQNSP4PFX'=1853
+'SYS_XQNSPFRMQNM'=1854
+'SYS_XQPFXFRMQNM'=1855
+'SYS_XQ_PKSQL2XML'=1856
+'SYS_XQPOLYABS'=1857
+'SYS_XQPOLYADD'=1858
+'SYS_XQPOLYCEL'=1859
+'SYS_XQPOLYCSTBL'=1860
+'SYS_XQPOLYCST'=1861
+'SYS_XQPOLYDIV'=1862
+'SYS_XQPOLYFLR'=1863
+'SYS_XQPOLYMOD'=1864
+'SYS_XQPOLYMUL'=1865
+'SYS_XQPOLYRND'=1866
+'SYS_XQPOLYSQRT'=1867
+'SYS_XQPOLYSUB'=1868
+'SYS_XQPOLYUMUS'=1869
+'SYS_XQPOLYUPLS'=1870
+'SYS_XQPOLYVEQ'=1871
+'SYS_XQPOLYVGE'=1872
+'SYS_XQPOLYVGT'=1873
+'SYS_XQPOLYVLE'=1874
+'SYS_XQPOLYVLT'=1875
+'SYS_XQPOLYVNE'=1876
+'SYS_XQREF2VAL'=1877
+'SYS_XQRENAME'=1878
+'SYS_XQREPLACE'=1879
+'SYS_XQRESVURI'=1880
+'SYS_XQRNDHALF2EVN'=1881
+'SYS_XQRSLVQNM'=1882
+'SYS_XQRYENVPGET'=1883
+'SYS_XQRYVARGET'=1884
+'SYS_XQRYWRP'=1885
+'SYS_XQSEQ2CON4XC'=1886
+'SYS_XQSEQ2CON'=1887
+'SYS_XQSEQDEEPEQ'=1888
+'SYS_XQSEQINSB'=1889
+'SYS_XQSEQRM'=1890
+'SYS_XQSEQRVS'=1891
+'SYS_XQSEQSUB'=1892
+'SYS_XQSEQTYPMATCH'=1893
+'SYS_XQSTARTSWITH'=1894
+'SYS_XQSTATBURI'=1895
+'SYS_XQSTR2CODEP'=1896
+'SYS_XQSTRJOIN'=1897
+'SYS_XQSUBSTRAFT'=1898
+'SYS_XQSUBSTRBEF'=1899
+'SYS_XQTOKENIZE'=1900
+'SYS_XQTREATAS'=1901
+'SYS_XQ_UPKXML2SQL'=1902
+'SYS_XQXFORM'=1903
+'SYS_XSID_TO_RAW'=1904
+'SYS_ZMAP_FILTER'=1905
+'SYS_ZMAP_REFRESH'=1906
+'TABLE_LOOKUP_BY_NL'=1907
+'TABLESPACE_NO'=1908
+'TABLESPACE'=1909
+'TABLES'=1910
+'TABLE_STATS'=1911
+'TABLE'=1912
+'TABNO'=1913
+'TAG'=1914
+'TANH'=1915
+'TAN'=1916
+'TBL$OR$IDX$PART$NUM'=1917
+'TEMPFILE'=1918
+'TEMPLATE'=1919
+'TEMPORARY'=1920
+'TEMP_TABLE'=1921
+'TEST'=1922
+'TEXT'=1923
+'THAN'=1924
+'THEN'=1925
+'THE'=1926
+'THREAD'=1927
+'THROUGH'=1928
+'TIER'=1929
+'TIES'=1930
+'TIMEOUT'=1931
+'TIMESTAMP_LTZ_UNCONSTRAINED'=1932
+'TIMESTAMP'=1933
+'TIMESTAMP_TZ_UNCONSTRAINED'=1934
+'TIMESTAMP_UNCONSTRAINED'=1935
+'TIMES'=1936
+'TIME'=1937
+'TIMEZONE'=1938
+'TIMEZONE_ABBR'=1939
+'TIMEZONE_HOUR'=1940
+'TIMEZONE_MINUTE'=1941
+'TIMEZONE_OFFSET'=1942
+'TIMEZONE_REGION'=1943
+'TIME_ZONE'=1944
+'TIV_GB'=1945
+'TIV_SSF'=1946
+'TO_ACLID'=1947
+'TO_BINARY_DOUBLE'=1948
+'TO_BINARY_FLOAT'=1949
+'TO_BLOB'=1950
+'TO_CLOB'=1951
+'TO_DSINTERVAL'=1952
+'TO_LOB'=1953
+'TO_MULTI_BYTE'=1954
+'TO_NCHAR'=1955
+'TO_NCLOB'=1956
+'TO_NUMBER'=1957
+'TOPLEVEL'=1958
+'TO_SINGLE_BYTE'=1959
+'TO_TIMESTAMP'=1960
+'TO_TIMESTAMP_TZ'=1961
+'TO_TIME'=1962
+'TO_TIME_TZ'=1963
+'TO'=1964
+'TO_YMINTERVAL'=1965
+'TRACE'=1966
+'TRACING'=1967
+'TRACKING'=1968
+'TRAILING'=1969
+'TRANSACTION'=1970
+'TRANSFORM_DISTINCT_AGG'=1971
+'TRANSITIONAL'=1972
+'TRANSITION'=1973
+'TRANSLATE'=1974
+'TRANSLATION'=1975
+'TREAT'=1976
+'TRIGGERS'=1977
+'TRIGGER'=1978
+'TRUE'=1979
+'TRUNCATE'=1980
+'TRUNC'=1981
+'TRUSTED'=1982
+'TRUST'=1983
+'TUNING'=1984
+'TX'=1985
+'TYPES'=1986
+'TYPE'=1987
+'TZ_OFFSET'=1988
+'UB2'=1989
+'UBA'=1990
+'UCS2'=1991
+'UID'=1992
+'UNARCHIVED'=1993
+'UNBOUNDED'=1994
+'UNBOUND'=1995
+'UNCONDITIONAL'=1996
+'UNDER'=1997
+'UNDO'=1998
+'UNDROP'=1999
+'UNIFORM'=2000
+'UNION'=2001
+'UNIQUE'=2002
+'UNISTR'=2003
+'UNLIMITED'=2004
+'UNLOAD'=2005
+'UNLOCK'=2006
+'UNMATCHED'=2007
+'UNNEST_INNERJ_DISTINCT_VIEW'=2008
+'UNNEST_NOSEMIJ_NODISTINCTVIEW'=2009
+'UNNEST_SEMIJ_VIEW'=2010
+'UNNEST'=2011
+'UNPACKED'=2012
+'UNPIVOT'=2013
+'UNPLUG'=2014
+'UNPROTECTED'=2015
+'UNQUIESCE'=2016
+'UNRECOVERABLE'=2017
+'UNRESTRICTED'=2018
+'UNSUBSCRIBE'=2019
+'UNTIL'=2020
+'UNUSABLE'=2021
+'UNUSED'=2022
+'UPDATABLE'=2023
+'UPDATED'=2024
+'UPDATE'=2025
+'UPDATEXML'=2026
+'UPD_INDEXES'=2027
+'UPD_JOININDEX'=2028
+'UPGRADE'=2029
+'UPPER'=2030
+'UPSERT'=2031
+'UROWID'=2032
+'USABLE'=2033
+'USAGE'=2034
+'USE_ANTI'=2035
+'USE_CONCAT'=2036
+'USE_CUBE'=2037
+'USE_HASH_AGGREGATION'=2038
+'USE_HASH_GBY_FOR_PUSHDOWN'=2039
+'USE_HASH'=2040
+'USE_HIDDEN_PARTITIONS'=2041
+'USE_INVISIBLE_INDEXES'=2042
+'USE_MERGE_CARTESIAN'=2043
+'USE_MERGE'=2044
+'USE_NL'=2045
+'USE_NL_WITH_INDEX'=2046
+'USE_PRIVATE_OUTLINES'=2047
+'USER_DATA'=2048
+'USER_DEFINED'=2049
+'USERENV'=2050
+'USERGROUP'=2051
+'USER_RECYCLEBIN'=2052
+'USERS'=2053
+'USER_TABLESPACES'=2054
+'USER'=2055
+'USE_SEMI'=2056
+'USE_STORED_OUTLINES'=2057
+'USE_TTT_FOR_GSETS'=2058
+'USE'=2059
+'USE_VECTOR_AGGREGATION'=2060
+'USE_WEAK_NAME_RESL'=2061
+'USING_NO_EXPAND'=2062
+'USING'=2063
+'UTF16BE'=2064
+'UTF16LE'=2065
+'UTF32'=2066
+'UTF8'=2067
+'V1'=2068
+'V2'=2069
+'VALIDATE'=2070
+'VALIDATION'=2071
+'VALID_TIME_END'=2072
+'VALUES'=2073
+'VALUE'=2074
+'VARCHAR2'=2075
+'VARCHAR'=2076
+'VARIABLE'=2077
+'VAR_POP'=2078
+'VARRAYS'=2079
+'VARRAY'=2080
+'VAR_SAMP'=2081
+'VARYING'=2082
+'VECTOR_READ_TRACE'=2083
+'VECTOR_READ'=2084
+'VECTOR_TRANSFORM_DIMS'=2085
+'VECTOR_TRANSFORM_FACT'=2086
+'VECTOR_TRANSFORM'=2087
+'VERIFIER'=2088
+'VERIFY'=2089
+'VERSIONING'=2090
+'VERSIONS_ENDSCN'=2091
+'VERSIONS_ENDTIME'=2092
+'VERSIONS_OPERATION'=2093
+'VERSIONS_STARTSCN'=2094
+'VERSIONS_STARTTIME'=2095
+'VERSIONS'=2096
+'VERSIONS_XID'=2097
+'VERSION'=2098
+'VIEW'=2099
+'VIOLATION'=2100
+'VIRTUAL'=2101
+'VISIBILITY'=2102
+'VISIBLE'=2103
+'VOLUME'=2104
+'VSIZE'=2105
+'WAIT'=2106
+'WALLET'=2107
+'WARNING'=2108
+'WEEKS'=2109
+'WEEK'=2110
+'WELLFORMED'=2111
+'WHENEVER'=2112
+'WHEN'=2113
+'WHERE'=2114
+'WHILE'=2115
+'WHITESPACE'=2116
+'WIDTH_BUCKET'=2117
+'WITHIN'=2118
+'WITHOUT'=2119
+'WITH_PLSQL'=2120
+'WITH'=2121
+'WORK'=2122
+'WRAPPED'=2123
+'WRAPPER'=2124
+'WRITE'=2125
+'XDB_FASTPATH_INSERT'=2126
+'XDB'=2127
+'X_DYN_PRUNE'=2128
+'XID'=2129
+'XML2OBJECT'=2130
+'XMLAGG'=2131
+'XMLATTRIBUTES'=2132
+'XMLCAST'=2133
+'XMLCDATA'=2134
+'XMLCOLATTVAL'=2135
+'XMLCOMMENT'=2136
+'XMLCONCAT'=2137
+'XMLDIFF'=2138
+'XML_DML_RWT_STMT'=2139
+'XMLELEMENT'=2140
+'XMLEXISTS2'=2141
+'XMLEXISTS'=2142
+'XMLFOREST'=2143
+'XMLINDEX'=2144
+'XMLINDEX_REWRITE_IN_SELECT'=2145
+'XMLINDEX_REWRITE'=2146
+'XMLINDEX_SEL_IDX_TBL'=2147
+'XMLISNODE'=2148
+'XMLISVALID'=2149
+'XMLNAMESPACES'=2150
+'XMLPARSE'=2151
+'XMLPATCH'=2152
+'XMLPI'=2153
+'XMLQUERYVAL'=2154
+'XMLQUERY'=2155
+'XMLROOT'=2156
+'XMLSCHEMA'=2157
+'XMLSERIALIZE'=2158
+'XMLTABLE'=2159
+'XMLTRANSFORMBLOB'=2160
+'XMLTRANSFORM'=2161
+'XMLTYPE'=2162
+'XML'=2163
+'XPATHTABLE'=2164
+'XS_SYS_CONTEXT'=2165
+'XS'=2166
+'XTRANSPORT'=2167
+'YEARS'=2168
+'YEAR'=2169
+'YES'=2170
+'YMINTERVAL_UNCONSTRAINED'=2171
+'ZONEMAP'=2172
+'ZONE'=2173
+'PREDICTION'=2174
+'PREDICTION_BOUNDS'=2175
+'PREDICTION_COST'=2176
+'PREDICTION_DETAILS'=2177
+'PREDICTION_PROBABILITY'=2178
+'PREDICTION_SET'=2179
+'CUME_DIST'=2180
+'DENSE_RANK'=2181
+'LISTAGG'=2182
+'PERCENT_RANK'=2183
+'PERCENTILE_CONT'=2184
+'PERCENTILE_DISC'=2185
+'RANK'=2186
+'AVG'=2187
+'CORR'=2188
+'COVAR_'=2189
+'DECODE'=2190
+'LAG'=2191
+'LEAD'=2192
+'MAX'=2193
+'MEDIAN'=2194
+'MIN'=2195
+'NTILE'=2196
+'NVL'=2197
+'RATIO_TO_REPORT'=2198
+'REGR_'=2199
+'ROUND'=2200
+'ROW_NUMBER'=2201
+'SUBSTR'=2202
+'TO_CHAR'=2203
+'TRIM'=2204
+'SUM'=2205
+'STDDEV'=2206
+'VAR_'=2207
+'VARIANCE'=2208
+'LEAST'=2209
+'GREATEST'=2210
+'TO_DATE'=2211
+'..'=2215
+'.'=2216
+'%'=2221
+'&'=2222
+'('=2223
+')'=2224
+'**'=2225
+'*'=2226
+'+'=2227
+'-'=2228
+','=2229
+'/'=2230
+'@'=2231
+':='=2232
+'^'=2235
+'~'=2236
+'!'=2237
+'>'=2238
+'<'=2239
+':'=2240
+';'=2241
+'|'=2242
+'='=2243
+'['=2244
+']'=2245
+'_'=2246
diff --git a/src/lib/plsql/PlSqlParserListener.js b/src/lib/plsql/PlSqlParserListener.js
new file mode 100644
index 0000000..a5790e6
--- /dev/null
+++ b/src/lib/plsql/PlSqlParserListener.js
@@ -0,0 +1,6792 @@
+// Generated from /Users/ziv/Workspace/dt-sql-parser/src/grammar/plsql/PlSqlParser.g4 by ANTLR 4.8
+// jshint ignore: start
+var antlr4 = require('antlr4/index');
+
+// This class defines a complete listener for a parse tree produced by PlSqlParser.
+function PlSqlParserListener() {
+ antlr4.tree.ParseTreeListener.call(this);
+ return this;
+}
+
+PlSqlParserListener.prototype = Object.create(antlr4.tree.ParseTreeListener.prototype);
+PlSqlParserListener.prototype.constructor = PlSqlParserListener;
+
+// Enter a parse tree produced by PlSqlParser#program.
+PlSqlParserListener.prototype.enterProgram = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#program.
+PlSqlParserListener.prototype.exitProgram = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#sql_script.
+PlSqlParserListener.prototype.enterSql_script = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#sql_script.
+PlSqlParserListener.prototype.exitSql_script = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#unit_statement.
+PlSqlParserListener.prototype.enterUnit_statement = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#unit_statement.
+PlSqlParserListener.prototype.exitUnit_statement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#drop_function.
+PlSqlParserListener.prototype.enterDrop_function = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#drop_function.
+PlSqlParserListener.prototype.exitDrop_function = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#alter_function.
+PlSqlParserListener.prototype.enterAlter_function = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#alter_function.
+PlSqlParserListener.prototype.exitAlter_function = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#create_function_body.
+PlSqlParserListener.prototype.enterCreate_function_body = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#create_function_body.
+PlSqlParserListener.prototype.exitCreate_function_body = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#parallel_enable_clause.
+PlSqlParserListener.prototype.enterParallel_enable_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#parallel_enable_clause.
+PlSqlParserListener.prototype.exitParallel_enable_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#partition_by_clause.
+PlSqlParserListener.prototype.enterPartition_by_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#partition_by_clause.
+PlSqlParserListener.prototype.exitPartition_by_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#result_cache_clause.
+PlSqlParserListener.prototype.enterResult_cache_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#result_cache_clause.
+PlSqlParserListener.prototype.exitResult_cache_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#relies_on_part.
+PlSqlParserListener.prototype.enterRelies_on_part = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#relies_on_part.
+PlSqlParserListener.prototype.exitRelies_on_part = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#streaming_clause.
+PlSqlParserListener.prototype.enterStreaming_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#streaming_clause.
+PlSqlParserListener.prototype.exitStreaming_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#drop_package.
+PlSqlParserListener.prototype.enterDrop_package = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#drop_package.
+PlSqlParserListener.prototype.exitDrop_package = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#alter_package.
+PlSqlParserListener.prototype.enterAlter_package = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#alter_package.
+PlSqlParserListener.prototype.exitAlter_package = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#create_package.
+PlSqlParserListener.prototype.enterCreate_package = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#create_package.
+PlSqlParserListener.prototype.exitCreate_package = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#create_package_body.
+PlSqlParserListener.prototype.enterCreate_package_body = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#create_package_body.
+PlSqlParserListener.prototype.exitCreate_package_body = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#package_obj_spec.
+PlSqlParserListener.prototype.enterPackage_obj_spec = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#package_obj_spec.
+PlSqlParserListener.prototype.exitPackage_obj_spec = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#procedure_spec.
+PlSqlParserListener.prototype.enterProcedure_spec = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#procedure_spec.
+PlSqlParserListener.prototype.exitProcedure_spec = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#function_spec.
+PlSqlParserListener.prototype.enterFunction_spec = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#function_spec.
+PlSqlParserListener.prototype.exitFunction_spec = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#package_obj_body.
+PlSqlParserListener.prototype.enterPackage_obj_body = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#package_obj_body.
+PlSqlParserListener.prototype.exitPackage_obj_body = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#drop_procedure.
+PlSqlParserListener.prototype.enterDrop_procedure = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#drop_procedure.
+PlSqlParserListener.prototype.exitDrop_procedure = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#alter_procedure.
+PlSqlParserListener.prototype.enterAlter_procedure = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#alter_procedure.
+PlSqlParserListener.prototype.exitAlter_procedure = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#function_body.
+PlSqlParserListener.prototype.enterFunction_body = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#function_body.
+PlSqlParserListener.prototype.exitFunction_body = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#procedure_body.
+PlSqlParserListener.prototype.enterProcedure_body = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#procedure_body.
+PlSqlParserListener.prototype.exitProcedure_body = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#create_procedure_body.
+PlSqlParserListener.prototype.enterCreate_procedure_body = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#create_procedure_body.
+PlSqlParserListener.prototype.exitCreate_procedure_body = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#drop_trigger.
+PlSqlParserListener.prototype.enterDrop_trigger = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#drop_trigger.
+PlSqlParserListener.prototype.exitDrop_trigger = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#alter_trigger.
+PlSqlParserListener.prototype.enterAlter_trigger = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#alter_trigger.
+PlSqlParserListener.prototype.exitAlter_trigger = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#create_trigger.
+PlSqlParserListener.prototype.enterCreate_trigger = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#create_trigger.
+PlSqlParserListener.prototype.exitCreate_trigger = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#trigger_follows_clause.
+PlSqlParserListener.prototype.enterTrigger_follows_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#trigger_follows_clause.
+PlSqlParserListener.prototype.exitTrigger_follows_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#trigger_when_clause.
+PlSqlParserListener.prototype.enterTrigger_when_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#trigger_when_clause.
+PlSqlParserListener.prototype.exitTrigger_when_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#simple_dml_trigger.
+PlSqlParserListener.prototype.enterSimple_dml_trigger = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#simple_dml_trigger.
+PlSqlParserListener.prototype.exitSimple_dml_trigger = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#for_each_row.
+PlSqlParserListener.prototype.enterFor_each_row = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#for_each_row.
+PlSqlParserListener.prototype.exitFor_each_row = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#compound_dml_trigger.
+PlSqlParserListener.prototype.enterCompound_dml_trigger = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#compound_dml_trigger.
+PlSqlParserListener.prototype.exitCompound_dml_trigger = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#non_dml_trigger.
+PlSqlParserListener.prototype.enterNon_dml_trigger = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#non_dml_trigger.
+PlSqlParserListener.prototype.exitNon_dml_trigger = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#trigger_body.
+PlSqlParserListener.prototype.enterTrigger_body = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#trigger_body.
+PlSqlParserListener.prototype.exitTrigger_body = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#routine_clause.
+PlSqlParserListener.prototype.enterRoutine_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#routine_clause.
+PlSqlParserListener.prototype.exitRoutine_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#compound_trigger_block.
+PlSqlParserListener.prototype.enterCompound_trigger_block = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#compound_trigger_block.
+PlSqlParserListener.prototype.exitCompound_trigger_block = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#timing_point_section.
+PlSqlParserListener.prototype.enterTiming_point_section = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#timing_point_section.
+PlSqlParserListener.prototype.exitTiming_point_section = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#non_dml_event.
+PlSqlParserListener.prototype.enterNon_dml_event = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#non_dml_event.
+PlSqlParserListener.prototype.exitNon_dml_event = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#dml_event_clause.
+PlSqlParserListener.prototype.enterDml_event_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#dml_event_clause.
+PlSqlParserListener.prototype.exitDml_event_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#dml_event_element.
+PlSqlParserListener.prototype.enterDml_event_element = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#dml_event_element.
+PlSqlParserListener.prototype.exitDml_event_element = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#dml_event_nested_clause.
+PlSqlParserListener.prototype.enterDml_event_nested_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#dml_event_nested_clause.
+PlSqlParserListener.prototype.exitDml_event_nested_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#referencing_clause.
+PlSqlParserListener.prototype.enterReferencing_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#referencing_clause.
+PlSqlParserListener.prototype.exitReferencing_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#referencing_element.
+PlSqlParserListener.prototype.enterReferencing_element = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#referencing_element.
+PlSqlParserListener.prototype.exitReferencing_element = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#drop_type.
+PlSqlParserListener.prototype.enterDrop_type = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#drop_type.
+PlSqlParserListener.prototype.exitDrop_type = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#alter_type.
+PlSqlParserListener.prototype.enterAlter_type = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#alter_type.
+PlSqlParserListener.prototype.exitAlter_type = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#compile_type_clause.
+PlSqlParserListener.prototype.enterCompile_type_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#compile_type_clause.
+PlSqlParserListener.prototype.exitCompile_type_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#replace_type_clause.
+PlSqlParserListener.prototype.enterReplace_type_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#replace_type_clause.
+PlSqlParserListener.prototype.exitReplace_type_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#alter_method_spec.
+PlSqlParserListener.prototype.enterAlter_method_spec = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#alter_method_spec.
+PlSqlParserListener.prototype.exitAlter_method_spec = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#alter_method_element.
+PlSqlParserListener.prototype.enterAlter_method_element = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#alter_method_element.
+PlSqlParserListener.prototype.exitAlter_method_element = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#alter_attribute_definition.
+PlSqlParserListener.prototype.enterAlter_attribute_definition = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#alter_attribute_definition.
+PlSqlParserListener.prototype.exitAlter_attribute_definition = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#attribute_definition.
+PlSqlParserListener.prototype.enterAttribute_definition = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#attribute_definition.
+PlSqlParserListener.prototype.exitAttribute_definition = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#alter_collection_clauses.
+PlSqlParserListener.prototype.enterAlter_collection_clauses = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#alter_collection_clauses.
+PlSqlParserListener.prototype.exitAlter_collection_clauses = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#dependent_handling_clause.
+PlSqlParserListener.prototype.enterDependent_handling_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#dependent_handling_clause.
+PlSqlParserListener.prototype.exitDependent_handling_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#dependent_exceptions_part.
+PlSqlParserListener.prototype.enterDependent_exceptions_part = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#dependent_exceptions_part.
+PlSqlParserListener.prototype.exitDependent_exceptions_part = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#create_type.
+PlSqlParserListener.prototype.enterCreate_type = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#create_type.
+PlSqlParserListener.prototype.exitCreate_type = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#type_definition.
+PlSqlParserListener.prototype.enterType_definition = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#type_definition.
+PlSqlParserListener.prototype.exitType_definition = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#object_type_def.
+PlSqlParserListener.prototype.enterObject_type_def = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#object_type_def.
+PlSqlParserListener.prototype.exitObject_type_def = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#object_as_part.
+PlSqlParserListener.prototype.enterObject_as_part = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#object_as_part.
+PlSqlParserListener.prototype.exitObject_as_part = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#object_under_part.
+PlSqlParserListener.prototype.enterObject_under_part = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#object_under_part.
+PlSqlParserListener.prototype.exitObject_under_part = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#nested_table_type_def.
+PlSqlParserListener.prototype.enterNested_table_type_def = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#nested_table_type_def.
+PlSqlParserListener.prototype.exitNested_table_type_def = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#sqlj_object_type.
+PlSqlParserListener.prototype.enterSqlj_object_type = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#sqlj_object_type.
+PlSqlParserListener.prototype.exitSqlj_object_type = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#type_body.
+PlSqlParserListener.prototype.enterType_body = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#type_body.
+PlSqlParserListener.prototype.exitType_body = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#type_body_elements.
+PlSqlParserListener.prototype.enterType_body_elements = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#type_body_elements.
+PlSqlParserListener.prototype.exitType_body_elements = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#map_order_func_declaration.
+PlSqlParserListener.prototype.enterMap_order_func_declaration = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#map_order_func_declaration.
+PlSqlParserListener.prototype.exitMap_order_func_declaration = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#subprog_decl_in_type.
+PlSqlParserListener.prototype.enterSubprog_decl_in_type = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#subprog_decl_in_type.
+PlSqlParserListener.prototype.exitSubprog_decl_in_type = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#proc_decl_in_type.
+PlSqlParserListener.prototype.enterProc_decl_in_type = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#proc_decl_in_type.
+PlSqlParserListener.prototype.exitProc_decl_in_type = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#func_decl_in_type.
+PlSqlParserListener.prototype.enterFunc_decl_in_type = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#func_decl_in_type.
+PlSqlParserListener.prototype.exitFunc_decl_in_type = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#constructor_declaration.
+PlSqlParserListener.prototype.enterConstructor_declaration = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#constructor_declaration.
+PlSqlParserListener.prototype.exitConstructor_declaration = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#modifier_clause.
+PlSqlParserListener.prototype.enterModifier_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#modifier_clause.
+PlSqlParserListener.prototype.exitModifier_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#object_member_spec.
+PlSqlParserListener.prototype.enterObject_member_spec = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#object_member_spec.
+PlSqlParserListener.prototype.exitObject_member_spec = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#sqlj_object_type_attr.
+PlSqlParserListener.prototype.enterSqlj_object_type_attr = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#sqlj_object_type_attr.
+PlSqlParserListener.prototype.exitSqlj_object_type_attr = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#element_spec.
+PlSqlParserListener.prototype.enterElement_spec = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#element_spec.
+PlSqlParserListener.prototype.exitElement_spec = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#element_spec_options.
+PlSqlParserListener.prototype.enterElement_spec_options = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#element_spec_options.
+PlSqlParserListener.prototype.exitElement_spec_options = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#subprogram_spec.
+PlSqlParserListener.prototype.enterSubprogram_spec = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#subprogram_spec.
+PlSqlParserListener.prototype.exitSubprogram_spec = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#overriding_subprogram_spec.
+PlSqlParserListener.prototype.enterOverriding_subprogram_spec = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#overriding_subprogram_spec.
+PlSqlParserListener.prototype.exitOverriding_subprogram_spec = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#overriding_function_spec.
+PlSqlParserListener.prototype.enterOverriding_function_spec = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#overriding_function_spec.
+PlSqlParserListener.prototype.exitOverriding_function_spec = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#type_procedure_spec.
+PlSqlParserListener.prototype.enterType_procedure_spec = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#type_procedure_spec.
+PlSqlParserListener.prototype.exitType_procedure_spec = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#type_function_spec.
+PlSqlParserListener.prototype.enterType_function_spec = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#type_function_spec.
+PlSqlParserListener.prototype.exitType_function_spec = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#constructor_spec.
+PlSqlParserListener.prototype.enterConstructor_spec = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#constructor_spec.
+PlSqlParserListener.prototype.exitConstructor_spec = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#map_order_function_spec.
+PlSqlParserListener.prototype.enterMap_order_function_spec = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#map_order_function_spec.
+PlSqlParserListener.prototype.exitMap_order_function_spec = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#pragma_clause.
+PlSqlParserListener.prototype.enterPragma_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#pragma_clause.
+PlSqlParserListener.prototype.exitPragma_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#pragma_elements.
+PlSqlParserListener.prototype.enterPragma_elements = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#pragma_elements.
+PlSqlParserListener.prototype.exitPragma_elements = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#type_elements_parameter.
+PlSqlParserListener.prototype.enterType_elements_parameter = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#type_elements_parameter.
+PlSqlParserListener.prototype.exitType_elements_parameter = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#drop_sequence.
+PlSqlParserListener.prototype.enterDrop_sequence = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#drop_sequence.
+PlSqlParserListener.prototype.exitDrop_sequence = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#alter_sequence.
+PlSqlParserListener.prototype.enterAlter_sequence = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#alter_sequence.
+PlSqlParserListener.prototype.exitAlter_sequence = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#alter_session.
+PlSqlParserListener.prototype.enterAlter_session = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#alter_session.
+PlSqlParserListener.prototype.exitAlter_session = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#alter_session_set_clause.
+PlSqlParserListener.prototype.enterAlter_session_set_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#alter_session_set_clause.
+PlSqlParserListener.prototype.exitAlter_session_set_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#create_sequence.
+PlSqlParserListener.prototype.enterCreate_sequence = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#create_sequence.
+PlSqlParserListener.prototype.exitCreate_sequence = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#sequence_spec.
+PlSqlParserListener.prototype.enterSequence_spec = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#sequence_spec.
+PlSqlParserListener.prototype.exitSequence_spec = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#sequence_start_clause.
+PlSqlParserListener.prototype.enterSequence_start_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#sequence_start_clause.
+PlSqlParserListener.prototype.exitSequence_start_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#create_index.
+PlSqlParserListener.prototype.enterCreate_index = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#create_index.
+PlSqlParserListener.prototype.exitCreate_index = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#cluster_index_clause.
+PlSqlParserListener.prototype.enterCluster_index_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#cluster_index_clause.
+PlSqlParserListener.prototype.exitCluster_index_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#cluster_name.
+PlSqlParserListener.prototype.enterCluster_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#cluster_name.
+PlSqlParserListener.prototype.exitCluster_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#table_index_clause.
+PlSqlParserListener.prototype.enterTable_index_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#table_index_clause.
+PlSqlParserListener.prototype.exitTable_index_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#bitmap_join_index_clause.
+PlSqlParserListener.prototype.enterBitmap_join_index_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#bitmap_join_index_clause.
+PlSqlParserListener.prototype.exitBitmap_join_index_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#index_expr.
+PlSqlParserListener.prototype.enterIndex_expr = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#index_expr.
+PlSqlParserListener.prototype.exitIndex_expr = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#index_properties.
+PlSqlParserListener.prototype.enterIndex_properties = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#index_properties.
+PlSqlParserListener.prototype.exitIndex_properties = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#domain_index_clause.
+PlSqlParserListener.prototype.enterDomain_index_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#domain_index_clause.
+PlSqlParserListener.prototype.exitDomain_index_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#local_domain_index_clause.
+PlSqlParserListener.prototype.enterLocal_domain_index_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#local_domain_index_clause.
+PlSqlParserListener.prototype.exitLocal_domain_index_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#xmlindex_clause.
+PlSqlParserListener.prototype.enterXmlindex_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#xmlindex_clause.
+PlSqlParserListener.prototype.exitXmlindex_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#local_xmlindex_clause.
+PlSqlParserListener.prototype.enterLocal_xmlindex_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#local_xmlindex_clause.
+PlSqlParserListener.prototype.exitLocal_xmlindex_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#global_partitioned_index.
+PlSqlParserListener.prototype.enterGlobal_partitioned_index = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#global_partitioned_index.
+PlSqlParserListener.prototype.exitGlobal_partitioned_index = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#index_partitioning_clause.
+PlSqlParserListener.prototype.enterIndex_partitioning_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#index_partitioning_clause.
+PlSqlParserListener.prototype.exitIndex_partitioning_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#local_partitioned_index.
+PlSqlParserListener.prototype.enterLocal_partitioned_index = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#local_partitioned_index.
+PlSqlParserListener.prototype.exitLocal_partitioned_index = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#on_range_partitioned_table.
+PlSqlParserListener.prototype.enterOn_range_partitioned_table = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#on_range_partitioned_table.
+PlSqlParserListener.prototype.exitOn_range_partitioned_table = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#on_list_partitioned_table.
+PlSqlParserListener.prototype.enterOn_list_partitioned_table = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#on_list_partitioned_table.
+PlSqlParserListener.prototype.exitOn_list_partitioned_table = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#partitioned_table.
+PlSqlParserListener.prototype.enterPartitioned_table = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#partitioned_table.
+PlSqlParserListener.prototype.exitPartitioned_table = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#on_hash_partitioned_table.
+PlSqlParserListener.prototype.enterOn_hash_partitioned_table = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#on_hash_partitioned_table.
+PlSqlParserListener.prototype.exitOn_hash_partitioned_table = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#on_hash_partitioned_clause.
+PlSqlParserListener.prototype.enterOn_hash_partitioned_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#on_hash_partitioned_clause.
+PlSqlParserListener.prototype.exitOn_hash_partitioned_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#on_comp_partitioned_table.
+PlSqlParserListener.prototype.enterOn_comp_partitioned_table = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#on_comp_partitioned_table.
+PlSqlParserListener.prototype.exitOn_comp_partitioned_table = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#on_comp_partitioned_clause.
+PlSqlParserListener.prototype.enterOn_comp_partitioned_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#on_comp_partitioned_clause.
+PlSqlParserListener.prototype.exitOn_comp_partitioned_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#index_subpartition_clause.
+PlSqlParserListener.prototype.enterIndex_subpartition_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#index_subpartition_clause.
+PlSqlParserListener.prototype.exitIndex_subpartition_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#index_subpartition_subclause.
+PlSqlParserListener.prototype.enterIndex_subpartition_subclause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#index_subpartition_subclause.
+PlSqlParserListener.prototype.exitIndex_subpartition_subclause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#odci_parameters.
+PlSqlParserListener.prototype.enterOdci_parameters = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#odci_parameters.
+PlSqlParserListener.prototype.exitOdci_parameters = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#indextype.
+PlSqlParserListener.prototype.enterIndextype = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#indextype.
+PlSqlParserListener.prototype.exitIndextype = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#alter_index.
+PlSqlParserListener.prototype.enterAlter_index = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#alter_index.
+PlSqlParserListener.prototype.exitAlter_index = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#alter_index_ops_set1.
+PlSqlParserListener.prototype.enterAlter_index_ops_set1 = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#alter_index_ops_set1.
+PlSqlParserListener.prototype.exitAlter_index_ops_set1 = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#alter_index_ops_set2.
+PlSqlParserListener.prototype.enterAlter_index_ops_set2 = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#alter_index_ops_set2.
+PlSqlParserListener.prototype.exitAlter_index_ops_set2 = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#visible_or_invisible.
+PlSqlParserListener.prototype.enterVisible_or_invisible = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#visible_or_invisible.
+PlSqlParserListener.prototype.exitVisible_or_invisible = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#monitoring_nomonitoring.
+PlSqlParserListener.prototype.enterMonitoring_nomonitoring = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#monitoring_nomonitoring.
+PlSqlParserListener.prototype.exitMonitoring_nomonitoring = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#rebuild_clause.
+PlSqlParserListener.prototype.enterRebuild_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#rebuild_clause.
+PlSqlParserListener.prototype.exitRebuild_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#alter_index_partitioning.
+PlSqlParserListener.prototype.enterAlter_index_partitioning = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#alter_index_partitioning.
+PlSqlParserListener.prototype.exitAlter_index_partitioning = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#modify_index_default_attrs.
+PlSqlParserListener.prototype.enterModify_index_default_attrs = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#modify_index_default_attrs.
+PlSqlParserListener.prototype.exitModify_index_default_attrs = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#add_hash_index_partition.
+PlSqlParserListener.prototype.enterAdd_hash_index_partition = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#add_hash_index_partition.
+PlSqlParserListener.prototype.exitAdd_hash_index_partition = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#coalesce_index_partition.
+PlSqlParserListener.prototype.enterCoalesce_index_partition = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#coalesce_index_partition.
+PlSqlParserListener.prototype.exitCoalesce_index_partition = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#modify_index_partition.
+PlSqlParserListener.prototype.enterModify_index_partition = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#modify_index_partition.
+PlSqlParserListener.prototype.exitModify_index_partition = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#modify_index_partitions_ops.
+PlSqlParserListener.prototype.enterModify_index_partitions_ops = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#modify_index_partitions_ops.
+PlSqlParserListener.prototype.exitModify_index_partitions_ops = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#rename_index_partition.
+PlSqlParserListener.prototype.enterRename_index_partition = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#rename_index_partition.
+PlSqlParserListener.prototype.exitRename_index_partition = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#drop_index_partition.
+PlSqlParserListener.prototype.enterDrop_index_partition = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#drop_index_partition.
+PlSqlParserListener.prototype.exitDrop_index_partition = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#split_index_partition.
+PlSqlParserListener.prototype.enterSplit_index_partition = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#split_index_partition.
+PlSqlParserListener.prototype.exitSplit_index_partition = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#index_partition_description.
+PlSqlParserListener.prototype.enterIndex_partition_description = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#index_partition_description.
+PlSqlParserListener.prototype.exitIndex_partition_description = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#modify_index_subpartition.
+PlSqlParserListener.prototype.enterModify_index_subpartition = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#modify_index_subpartition.
+PlSqlParserListener.prototype.exitModify_index_subpartition = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#partition_name_old.
+PlSqlParserListener.prototype.enterPartition_name_old = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#partition_name_old.
+PlSqlParserListener.prototype.exitPartition_name_old = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#new_partition_name.
+PlSqlParserListener.prototype.enterNew_partition_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#new_partition_name.
+PlSqlParserListener.prototype.exitNew_partition_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#new_index_name.
+PlSqlParserListener.prototype.enterNew_index_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#new_index_name.
+PlSqlParserListener.prototype.exitNew_index_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#create_user.
+PlSqlParserListener.prototype.enterCreate_user = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#create_user.
+PlSqlParserListener.prototype.exitCreate_user = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#alter_user.
+PlSqlParserListener.prototype.enterAlter_user = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#alter_user.
+PlSqlParserListener.prototype.exitAlter_user = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#alter_identified_by.
+PlSqlParserListener.prototype.enterAlter_identified_by = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#alter_identified_by.
+PlSqlParserListener.prototype.exitAlter_identified_by = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#identified_by.
+PlSqlParserListener.prototype.enterIdentified_by = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#identified_by.
+PlSqlParserListener.prototype.exitIdentified_by = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#identified_other_clause.
+PlSqlParserListener.prototype.enterIdentified_other_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#identified_other_clause.
+PlSqlParserListener.prototype.exitIdentified_other_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#user_tablespace_clause.
+PlSqlParserListener.prototype.enterUser_tablespace_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#user_tablespace_clause.
+PlSqlParserListener.prototype.exitUser_tablespace_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#quota_clause.
+PlSqlParserListener.prototype.enterQuota_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#quota_clause.
+PlSqlParserListener.prototype.exitQuota_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#profile_clause.
+PlSqlParserListener.prototype.enterProfile_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#profile_clause.
+PlSqlParserListener.prototype.exitProfile_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#role_clause.
+PlSqlParserListener.prototype.enterRole_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#role_clause.
+PlSqlParserListener.prototype.exitRole_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#user_default_role_clause.
+PlSqlParserListener.prototype.enterUser_default_role_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#user_default_role_clause.
+PlSqlParserListener.prototype.exitUser_default_role_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#password_expire_clause.
+PlSqlParserListener.prototype.enterPassword_expire_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#password_expire_clause.
+PlSqlParserListener.prototype.exitPassword_expire_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#user_lock_clause.
+PlSqlParserListener.prototype.enterUser_lock_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#user_lock_clause.
+PlSqlParserListener.prototype.exitUser_lock_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#user_editions_clause.
+PlSqlParserListener.prototype.enterUser_editions_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#user_editions_clause.
+PlSqlParserListener.prototype.exitUser_editions_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#alter_user_editions_clause.
+PlSqlParserListener.prototype.enterAlter_user_editions_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#alter_user_editions_clause.
+PlSqlParserListener.prototype.exitAlter_user_editions_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#proxy_clause.
+PlSqlParserListener.prototype.enterProxy_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#proxy_clause.
+PlSqlParserListener.prototype.exitProxy_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#container_names.
+PlSqlParserListener.prototype.enterContainer_names = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#container_names.
+PlSqlParserListener.prototype.exitContainer_names = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#set_container_data.
+PlSqlParserListener.prototype.enterSet_container_data = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#set_container_data.
+PlSqlParserListener.prototype.exitSet_container_data = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#add_rem_container_data.
+PlSqlParserListener.prototype.enterAdd_rem_container_data = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#add_rem_container_data.
+PlSqlParserListener.prototype.exitAdd_rem_container_data = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#container_data_clause.
+PlSqlParserListener.prototype.enterContainer_data_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#container_data_clause.
+PlSqlParserListener.prototype.exitContainer_data_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#analyze.
+PlSqlParserListener.prototype.enterAnalyze = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#analyze.
+PlSqlParserListener.prototype.exitAnalyze = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#partition_extention_clause.
+PlSqlParserListener.prototype.enterPartition_extention_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#partition_extention_clause.
+PlSqlParserListener.prototype.exitPartition_extention_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#validation_clauses.
+PlSqlParserListener.prototype.enterValidation_clauses = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#validation_clauses.
+PlSqlParserListener.prototype.exitValidation_clauses = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#online_or_offline.
+PlSqlParserListener.prototype.enterOnline_or_offline = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#online_or_offline.
+PlSqlParserListener.prototype.exitOnline_or_offline = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#into_clause1.
+PlSqlParserListener.prototype.enterInto_clause1 = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#into_clause1.
+PlSqlParserListener.prototype.exitInto_clause1 = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#partition_key_value.
+PlSqlParserListener.prototype.enterPartition_key_value = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#partition_key_value.
+PlSqlParserListener.prototype.exitPartition_key_value = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#subpartition_key_value.
+PlSqlParserListener.prototype.enterSubpartition_key_value = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#subpartition_key_value.
+PlSqlParserListener.prototype.exitSubpartition_key_value = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#associate_statistics.
+PlSqlParserListener.prototype.enterAssociate_statistics = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#associate_statistics.
+PlSqlParserListener.prototype.exitAssociate_statistics = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#column_association.
+PlSqlParserListener.prototype.enterColumn_association = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#column_association.
+PlSqlParserListener.prototype.exitColumn_association = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#function_association.
+PlSqlParserListener.prototype.enterFunction_association = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#function_association.
+PlSqlParserListener.prototype.exitFunction_association = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#indextype_name.
+PlSqlParserListener.prototype.enterIndextype_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#indextype_name.
+PlSqlParserListener.prototype.exitIndextype_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#using_statistics_type.
+PlSqlParserListener.prototype.enterUsing_statistics_type = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#using_statistics_type.
+PlSqlParserListener.prototype.exitUsing_statistics_type = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#statistics_type_name.
+PlSqlParserListener.prototype.enterStatistics_type_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#statistics_type_name.
+PlSqlParserListener.prototype.exitStatistics_type_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#default_cost_clause.
+PlSqlParserListener.prototype.enterDefault_cost_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#default_cost_clause.
+PlSqlParserListener.prototype.exitDefault_cost_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#cpu_cost.
+PlSqlParserListener.prototype.enterCpu_cost = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#cpu_cost.
+PlSqlParserListener.prototype.exitCpu_cost = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#io_cost.
+PlSqlParserListener.prototype.enterIo_cost = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#io_cost.
+PlSqlParserListener.prototype.exitIo_cost = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#network_cost.
+PlSqlParserListener.prototype.enterNetwork_cost = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#network_cost.
+PlSqlParserListener.prototype.exitNetwork_cost = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#default_selectivity_clause.
+PlSqlParserListener.prototype.enterDefault_selectivity_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#default_selectivity_clause.
+PlSqlParserListener.prototype.exitDefault_selectivity_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#default_selectivity.
+PlSqlParserListener.prototype.enterDefault_selectivity = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#default_selectivity.
+PlSqlParserListener.prototype.exitDefault_selectivity = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#storage_table_clause.
+PlSqlParserListener.prototype.enterStorage_table_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#storage_table_clause.
+PlSqlParserListener.prototype.exitStorage_table_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#unified_auditing.
+PlSqlParserListener.prototype.enterUnified_auditing = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#unified_auditing.
+PlSqlParserListener.prototype.exitUnified_auditing = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#policy_name.
+PlSqlParserListener.prototype.enterPolicy_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#policy_name.
+PlSqlParserListener.prototype.exitPolicy_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#audit_traditional.
+PlSqlParserListener.prototype.enterAudit_traditional = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#audit_traditional.
+PlSqlParserListener.prototype.exitAudit_traditional = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#audit_direct_path.
+PlSqlParserListener.prototype.enterAudit_direct_path = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#audit_direct_path.
+PlSqlParserListener.prototype.exitAudit_direct_path = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#audit_container_clause.
+PlSqlParserListener.prototype.enterAudit_container_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#audit_container_clause.
+PlSqlParserListener.prototype.exitAudit_container_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#audit_operation_clause.
+PlSqlParserListener.prototype.enterAudit_operation_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#audit_operation_clause.
+PlSqlParserListener.prototype.exitAudit_operation_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#auditing_by_clause.
+PlSqlParserListener.prototype.enterAuditing_by_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#auditing_by_clause.
+PlSqlParserListener.prototype.exitAuditing_by_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#audit_user.
+PlSqlParserListener.prototype.enterAudit_user = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#audit_user.
+PlSqlParserListener.prototype.exitAudit_user = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#audit_schema_object_clause.
+PlSqlParserListener.prototype.enterAudit_schema_object_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#audit_schema_object_clause.
+PlSqlParserListener.prototype.exitAudit_schema_object_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#sql_operation.
+PlSqlParserListener.prototype.enterSql_operation = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#sql_operation.
+PlSqlParserListener.prototype.exitSql_operation = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#auditing_on_clause.
+PlSqlParserListener.prototype.enterAuditing_on_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#auditing_on_clause.
+PlSqlParserListener.prototype.exitAuditing_on_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#model_name.
+PlSqlParserListener.prototype.enterModel_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#model_name.
+PlSqlParserListener.prototype.exitModel_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#object_name.
+PlSqlParserListener.prototype.enterObject_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#object_name.
+PlSqlParserListener.prototype.exitObject_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#profile_name.
+PlSqlParserListener.prototype.enterProfile_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#profile_name.
+PlSqlParserListener.prototype.exitProfile_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#sql_statement_shortcut.
+PlSqlParserListener.prototype.enterSql_statement_shortcut = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#sql_statement_shortcut.
+PlSqlParserListener.prototype.exitSql_statement_shortcut = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#drop_index.
+PlSqlParserListener.prototype.enterDrop_index = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#drop_index.
+PlSqlParserListener.prototype.exitDrop_index = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#rename_object.
+PlSqlParserListener.prototype.enterRename_object = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#rename_object.
+PlSqlParserListener.prototype.exitRename_object = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#grant_statement.
+PlSqlParserListener.prototype.enterGrant_statement = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#grant_statement.
+PlSqlParserListener.prototype.exitGrant_statement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#container_clause.
+PlSqlParserListener.prototype.enterContainer_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#container_clause.
+PlSqlParserListener.prototype.exitContainer_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#create_directory.
+PlSqlParserListener.prototype.enterCreate_directory = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#create_directory.
+PlSqlParserListener.prototype.exitCreate_directory = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#directory_name.
+PlSqlParserListener.prototype.enterDirectory_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#directory_name.
+PlSqlParserListener.prototype.exitDirectory_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#directory_path.
+PlSqlParserListener.prototype.enterDirectory_path = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#directory_path.
+PlSqlParserListener.prototype.exitDirectory_path = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#alter_library.
+PlSqlParserListener.prototype.enterAlter_library = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#alter_library.
+PlSqlParserListener.prototype.exitAlter_library = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#library_editionable.
+PlSqlParserListener.prototype.enterLibrary_editionable = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#library_editionable.
+PlSqlParserListener.prototype.exitLibrary_editionable = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#library_debug.
+PlSqlParserListener.prototype.enterLibrary_debug = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#library_debug.
+PlSqlParserListener.prototype.exitLibrary_debug = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#compiler_parameters_clause.
+PlSqlParserListener.prototype.enterCompiler_parameters_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#compiler_parameters_clause.
+PlSqlParserListener.prototype.exitCompiler_parameters_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#parameter_value.
+PlSqlParserListener.prototype.enterParameter_value = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#parameter_value.
+PlSqlParserListener.prototype.exitParameter_value = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#library_name.
+PlSqlParserListener.prototype.enterLibrary_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#library_name.
+PlSqlParserListener.prototype.exitLibrary_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#alter_view.
+PlSqlParserListener.prototype.enterAlter_view = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#alter_view.
+PlSqlParserListener.prototype.exitAlter_view = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#alter_view_editionable.
+PlSqlParserListener.prototype.enterAlter_view_editionable = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#alter_view_editionable.
+PlSqlParserListener.prototype.exitAlter_view_editionable = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#create_view.
+PlSqlParserListener.prototype.enterCreate_view = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#create_view.
+PlSqlParserListener.prototype.exitCreate_view = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#view_options.
+PlSqlParserListener.prototype.enterView_options = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#view_options.
+PlSqlParserListener.prototype.exitView_options = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#view_alias_constraint.
+PlSqlParserListener.prototype.enterView_alias_constraint = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#view_alias_constraint.
+PlSqlParserListener.prototype.exitView_alias_constraint = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#object_view_clause.
+PlSqlParserListener.prototype.enterObject_view_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#object_view_clause.
+PlSqlParserListener.prototype.exitObject_view_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#inline_constraint.
+PlSqlParserListener.prototype.enterInline_constraint = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#inline_constraint.
+PlSqlParserListener.prototype.exitInline_constraint = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#inline_ref_constraint.
+PlSqlParserListener.prototype.enterInline_ref_constraint = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#inline_ref_constraint.
+PlSqlParserListener.prototype.exitInline_ref_constraint = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#out_of_line_ref_constraint.
+PlSqlParserListener.prototype.enterOut_of_line_ref_constraint = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#out_of_line_ref_constraint.
+PlSqlParserListener.prototype.exitOut_of_line_ref_constraint = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#out_of_line_constraint.
+PlSqlParserListener.prototype.enterOut_of_line_constraint = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#out_of_line_constraint.
+PlSqlParserListener.prototype.exitOut_of_line_constraint = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#constraint_state.
+PlSqlParserListener.prototype.enterConstraint_state = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#constraint_state.
+PlSqlParserListener.prototype.exitConstraint_state = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#alter_tablespace.
+PlSqlParserListener.prototype.enterAlter_tablespace = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#alter_tablespace.
+PlSqlParserListener.prototype.exitAlter_tablespace = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#datafile_tempfile_clauses.
+PlSqlParserListener.prototype.enterDatafile_tempfile_clauses = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#datafile_tempfile_clauses.
+PlSqlParserListener.prototype.exitDatafile_tempfile_clauses = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#tablespace_logging_clauses.
+PlSqlParserListener.prototype.enterTablespace_logging_clauses = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#tablespace_logging_clauses.
+PlSqlParserListener.prototype.exitTablespace_logging_clauses = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#tablespace_group_clause.
+PlSqlParserListener.prototype.enterTablespace_group_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#tablespace_group_clause.
+PlSqlParserListener.prototype.exitTablespace_group_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#tablespace_group_name.
+PlSqlParserListener.prototype.enterTablespace_group_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#tablespace_group_name.
+PlSqlParserListener.prototype.exitTablespace_group_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#tablespace_state_clauses.
+PlSqlParserListener.prototype.enterTablespace_state_clauses = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#tablespace_state_clauses.
+PlSqlParserListener.prototype.exitTablespace_state_clauses = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#flashback_mode_clause.
+PlSqlParserListener.prototype.enterFlashback_mode_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#flashback_mode_clause.
+PlSqlParserListener.prototype.exitFlashback_mode_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#new_tablespace_name.
+PlSqlParserListener.prototype.enterNew_tablespace_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#new_tablespace_name.
+PlSqlParserListener.prototype.exitNew_tablespace_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#create_tablespace.
+PlSqlParserListener.prototype.enterCreate_tablespace = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#create_tablespace.
+PlSqlParserListener.prototype.exitCreate_tablespace = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#permanent_tablespace_clause.
+PlSqlParserListener.prototype.enterPermanent_tablespace_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#permanent_tablespace_clause.
+PlSqlParserListener.prototype.exitPermanent_tablespace_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#tablespace_encryption_spec.
+PlSqlParserListener.prototype.enterTablespace_encryption_spec = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#tablespace_encryption_spec.
+PlSqlParserListener.prototype.exitTablespace_encryption_spec = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#logging_clause.
+PlSqlParserListener.prototype.enterLogging_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#logging_clause.
+PlSqlParserListener.prototype.exitLogging_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#extent_management_clause.
+PlSqlParserListener.prototype.enterExtent_management_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#extent_management_clause.
+PlSqlParserListener.prototype.exitExtent_management_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#segment_management_clause.
+PlSqlParserListener.prototype.enterSegment_management_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#segment_management_clause.
+PlSqlParserListener.prototype.exitSegment_management_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#temporary_tablespace_clause.
+PlSqlParserListener.prototype.enterTemporary_tablespace_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#temporary_tablespace_clause.
+PlSqlParserListener.prototype.exitTemporary_tablespace_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#undo_tablespace_clause.
+PlSqlParserListener.prototype.enterUndo_tablespace_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#undo_tablespace_clause.
+PlSqlParserListener.prototype.exitUndo_tablespace_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#tablespace_retention_clause.
+PlSqlParserListener.prototype.enterTablespace_retention_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#tablespace_retention_clause.
+PlSqlParserListener.prototype.exitTablespace_retention_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#datafile_specification.
+PlSqlParserListener.prototype.enterDatafile_specification = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#datafile_specification.
+PlSqlParserListener.prototype.exitDatafile_specification = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#tempfile_specification.
+PlSqlParserListener.prototype.enterTempfile_specification = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#tempfile_specification.
+PlSqlParserListener.prototype.exitTempfile_specification = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#datafile_tempfile_spec.
+PlSqlParserListener.prototype.enterDatafile_tempfile_spec = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#datafile_tempfile_spec.
+PlSqlParserListener.prototype.exitDatafile_tempfile_spec = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#redo_log_file_spec.
+PlSqlParserListener.prototype.enterRedo_log_file_spec = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#redo_log_file_spec.
+PlSqlParserListener.prototype.exitRedo_log_file_spec = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#autoextend_clause.
+PlSqlParserListener.prototype.enterAutoextend_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#autoextend_clause.
+PlSqlParserListener.prototype.exitAutoextend_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#maxsize_clause.
+PlSqlParserListener.prototype.enterMaxsize_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#maxsize_clause.
+PlSqlParserListener.prototype.exitMaxsize_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#build_clause.
+PlSqlParserListener.prototype.enterBuild_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#build_clause.
+PlSqlParserListener.prototype.exitBuild_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#parallel_clause.
+PlSqlParserListener.prototype.enterParallel_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#parallel_clause.
+PlSqlParserListener.prototype.exitParallel_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#alter_materialized_view.
+PlSqlParserListener.prototype.enterAlter_materialized_view = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#alter_materialized_view.
+PlSqlParserListener.prototype.exitAlter_materialized_view = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#alter_mv_option1.
+PlSqlParserListener.prototype.enterAlter_mv_option1 = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#alter_mv_option1.
+PlSqlParserListener.prototype.exitAlter_mv_option1 = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#alter_mv_refresh.
+PlSqlParserListener.prototype.enterAlter_mv_refresh = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#alter_mv_refresh.
+PlSqlParserListener.prototype.exitAlter_mv_refresh = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#rollback_segment.
+PlSqlParserListener.prototype.enterRollback_segment = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#rollback_segment.
+PlSqlParserListener.prototype.exitRollback_segment = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#modify_mv_column_clause.
+PlSqlParserListener.prototype.enterModify_mv_column_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#modify_mv_column_clause.
+PlSqlParserListener.prototype.exitModify_mv_column_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#alter_materialized_view_log.
+PlSqlParserListener.prototype.enterAlter_materialized_view_log = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#alter_materialized_view_log.
+PlSqlParserListener.prototype.exitAlter_materialized_view_log = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#add_mv_log_column_clause.
+PlSqlParserListener.prototype.enterAdd_mv_log_column_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#add_mv_log_column_clause.
+PlSqlParserListener.prototype.exitAdd_mv_log_column_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#move_mv_log_clause.
+PlSqlParserListener.prototype.enterMove_mv_log_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#move_mv_log_clause.
+PlSqlParserListener.prototype.exitMove_mv_log_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#mv_log_augmentation.
+PlSqlParserListener.prototype.enterMv_log_augmentation = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#mv_log_augmentation.
+PlSqlParserListener.prototype.exitMv_log_augmentation = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#datetime_expr.
+PlSqlParserListener.prototype.enterDatetime_expr = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#datetime_expr.
+PlSqlParserListener.prototype.exitDatetime_expr = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#interval_expr.
+PlSqlParserListener.prototype.enterInterval_expr = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#interval_expr.
+PlSqlParserListener.prototype.exitInterval_expr = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#synchronous_or_asynchronous.
+PlSqlParserListener.prototype.enterSynchronous_or_asynchronous = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#synchronous_or_asynchronous.
+PlSqlParserListener.prototype.exitSynchronous_or_asynchronous = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#including_or_excluding.
+PlSqlParserListener.prototype.enterIncluding_or_excluding = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#including_or_excluding.
+PlSqlParserListener.prototype.exitIncluding_or_excluding = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#create_materialized_view_log.
+PlSqlParserListener.prototype.enterCreate_materialized_view_log = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#create_materialized_view_log.
+PlSqlParserListener.prototype.exitCreate_materialized_view_log = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#new_values_clause.
+PlSqlParserListener.prototype.enterNew_values_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#new_values_clause.
+PlSqlParserListener.prototype.exitNew_values_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#mv_log_purge_clause.
+PlSqlParserListener.prototype.enterMv_log_purge_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#mv_log_purge_clause.
+PlSqlParserListener.prototype.exitMv_log_purge_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#create_materialized_view.
+PlSqlParserListener.prototype.enterCreate_materialized_view = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#create_materialized_view.
+PlSqlParserListener.prototype.exitCreate_materialized_view = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#create_mv_refresh.
+PlSqlParserListener.prototype.enterCreate_mv_refresh = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#create_mv_refresh.
+PlSqlParserListener.prototype.exitCreate_mv_refresh = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#create_context.
+PlSqlParserListener.prototype.enterCreate_context = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#create_context.
+PlSqlParserListener.prototype.exitCreate_context = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#oracle_namespace.
+PlSqlParserListener.prototype.enterOracle_namespace = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#oracle_namespace.
+PlSqlParserListener.prototype.exitOracle_namespace = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#create_cluster.
+PlSqlParserListener.prototype.enterCreate_cluster = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#create_cluster.
+PlSqlParserListener.prototype.exitCreate_cluster = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#create_table.
+PlSqlParserListener.prototype.enterCreate_table = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#create_table.
+PlSqlParserListener.prototype.exitCreate_table = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#xmltype_table.
+PlSqlParserListener.prototype.enterXmltype_table = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#xmltype_table.
+PlSqlParserListener.prototype.exitXmltype_table = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#xmltype_virtual_columns.
+PlSqlParserListener.prototype.enterXmltype_virtual_columns = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#xmltype_virtual_columns.
+PlSqlParserListener.prototype.exitXmltype_virtual_columns = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#xmltype_column_properties.
+PlSqlParserListener.prototype.enterXmltype_column_properties = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#xmltype_column_properties.
+PlSqlParserListener.prototype.exitXmltype_column_properties = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#xmltype_storage.
+PlSqlParserListener.prototype.enterXmltype_storage = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#xmltype_storage.
+PlSqlParserListener.prototype.exitXmltype_storage = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#xmlschema_spec.
+PlSqlParserListener.prototype.enterXmlschema_spec = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#xmlschema_spec.
+PlSqlParserListener.prototype.exitXmlschema_spec = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#object_table.
+PlSqlParserListener.prototype.enterObject_table = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#object_table.
+PlSqlParserListener.prototype.exitObject_table = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#oid_index_clause.
+PlSqlParserListener.prototype.enterOid_index_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#oid_index_clause.
+PlSqlParserListener.prototype.exitOid_index_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#oid_clause.
+PlSqlParserListener.prototype.enterOid_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#oid_clause.
+PlSqlParserListener.prototype.exitOid_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#object_properties.
+PlSqlParserListener.prototype.enterObject_properties = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#object_properties.
+PlSqlParserListener.prototype.exitObject_properties = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#object_table_substitution.
+PlSqlParserListener.prototype.enterObject_table_substitution = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#object_table_substitution.
+PlSqlParserListener.prototype.exitObject_table_substitution = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#relational_table.
+PlSqlParserListener.prototype.enterRelational_table = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#relational_table.
+PlSqlParserListener.prototype.exitRelational_table = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#relational_property.
+PlSqlParserListener.prototype.enterRelational_property = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#relational_property.
+PlSqlParserListener.prototype.exitRelational_property = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#table_partitioning_clauses.
+PlSqlParserListener.prototype.enterTable_partitioning_clauses = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#table_partitioning_clauses.
+PlSqlParserListener.prototype.exitTable_partitioning_clauses = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#range_partitions.
+PlSqlParserListener.prototype.enterRange_partitions = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#range_partitions.
+PlSqlParserListener.prototype.exitRange_partitions = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#list_partitions.
+PlSqlParserListener.prototype.enterList_partitions = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#list_partitions.
+PlSqlParserListener.prototype.exitList_partitions = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#hash_partitions.
+PlSqlParserListener.prototype.enterHash_partitions = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#hash_partitions.
+PlSqlParserListener.prototype.exitHash_partitions = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#individual_hash_partitions.
+PlSqlParserListener.prototype.enterIndividual_hash_partitions = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#individual_hash_partitions.
+PlSqlParserListener.prototype.exitIndividual_hash_partitions = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#hash_partitions_by_quantity.
+PlSqlParserListener.prototype.enterHash_partitions_by_quantity = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#hash_partitions_by_quantity.
+PlSqlParserListener.prototype.exitHash_partitions_by_quantity = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#hash_partition_quantity.
+PlSqlParserListener.prototype.enterHash_partition_quantity = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#hash_partition_quantity.
+PlSqlParserListener.prototype.exitHash_partition_quantity = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#composite_range_partitions.
+PlSqlParserListener.prototype.enterComposite_range_partitions = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#composite_range_partitions.
+PlSqlParserListener.prototype.exitComposite_range_partitions = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#composite_list_partitions.
+PlSqlParserListener.prototype.enterComposite_list_partitions = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#composite_list_partitions.
+PlSqlParserListener.prototype.exitComposite_list_partitions = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#composite_hash_partitions.
+PlSqlParserListener.prototype.enterComposite_hash_partitions = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#composite_hash_partitions.
+PlSqlParserListener.prototype.exitComposite_hash_partitions = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#reference_partitioning.
+PlSqlParserListener.prototype.enterReference_partitioning = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#reference_partitioning.
+PlSqlParserListener.prototype.exitReference_partitioning = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#reference_partition_desc.
+PlSqlParserListener.prototype.enterReference_partition_desc = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#reference_partition_desc.
+PlSqlParserListener.prototype.exitReference_partition_desc = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#system_partitioning.
+PlSqlParserListener.prototype.enterSystem_partitioning = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#system_partitioning.
+PlSqlParserListener.prototype.exitSystem_partitioning = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#range_partition_desc.
+PlSqlParserListener.prototype.enterRange_partition_desc = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#range_partition_desc.
+PlSqlParserListener.prototype.exitRange_partition_desc = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#list_partition_desc.
+PlSqlParserListener.prototype.enterList_partition_desc = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#list_partition_desc.
+PlSqlParserListener.prototype.exitList_partition_desc = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#subpartition_template.
+PlSqlParserListener.prototype.enterSubpartition_template = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#subpartition_template.
+PlSqlParserListener.prototype.exitSubpartition_template = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#hash_subpartition_quantity.
+PlSqlParserListener.prototype.enterHash_subpartition_quantity = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#hash_subpartition_quantity.
+PlSqlParserListener.prototype.exitHash_subpartition_quantity = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#subpartition_by_range.
+PlSqlParserListener.prototype.enterSubpartition_by_range = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#subpartition_by_range.
+PlSqlParserListener.prototype.exitSubpartition_by_range = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#subpartition_by_list.
+PlSqlParserListener.prototype.enterSubpartition_by_list = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#subpartition_by_list.
+PlSqlParserListener.prototype.exitSubpartition_by_list = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#subpartition_by_hash.
+PlSqlParserListener.prototype.enterSubpartition_by_hash = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#subpartition_by_hash.
+PlSqlParserListener.prototype.exitSubpartition_by_hash = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#subpartition_name.
+PlSqlParserListener.prototype.enterSubpartition_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#subpartition_name.
+PlSqlParserListener.prototype.exitSubpartition_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#range_subpartition_desc.
+PlSqlParserListener.prototype.enterRange_subpartition_desc = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#range_subpartition_desc.
+PlSqlParserListener.prototype.exitRange_subpartition_desc = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#list_subpartition_desc.
+PlSqlParserListener.prototype.enterList_subpartition_desc = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#list_subpartition_desc.
+PlSqlParserListener.prototype.exitList_subpartition_desc = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#individual_hash_subparts.
+PlSqlParserListener.prototype.enterIndividual_hash_subparts = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#individual_hash_subparts.
+PlSqlParserListener.prototype.exitIndividual_hash_subparts = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#hash_subparts_by_quantity.
+PlSqlParserListener.prototype.enterHash_subparts_by_quantity = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#hash_subparts_by_quantity.
+PlSqlParserListener.prototype.exitHash_subparts_by_quantity = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#range_values_clause.
+PlSqlParserListener.prototype.enterRange_values_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#range_values_clause.
+PlSqlParserListener.prototype.exitRange_values_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#list_values_clause.
+PlSqlParserListener.prototype.enterList_values_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#list_values_clause.
+PlSqlParserListener.prototype.exitList_values_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#table_partition_description.
+PlSqlParserListener.prototype.enterTable_partition_description = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#table_partition_description.
+PlSqlParserListener.prototype.exitTable_partition_description = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#partitioning_storage_clause.
+PlSqlParserListener.prototype.enterPartitioning_storage_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#partitioning_storage_clause.
+PlSqlParserListener.prototype.exitPartitioning_storage_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#lob_partitioning_storage.
+PlSqlParserListener.prototype.enterLob_partitioning_storage = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#lob_partitioning_storage.
+PlSqlParserListener.prototype.exitLob_partitioning_storage = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#datatype_null_enable.
+PlSqlParserListener.prototype.enterDatatype_null_enable = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#datatype_null_enable.
+PlSqlParserListener.prototype.exitDatatype_null_enable = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#size_clause.
+PlSqlParserListener.prototype.enterSize_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#size_clause.
+PlSqlParserListener.prototype.exitSize_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#table_compression.
+PlSqlParserListener.prototype.enterTable_compression = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#table_compression.
+PlSqlParserListener.prototype.exitTable_compression = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#physical_attributes_clause.
+PlSqlParserListener.prototype.enterPhysical_attributes_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#physical_attributes_clause.
+PlSqlParserListener.prototype.exitPhysical_attributes_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#storage_clause.
+PlSqlParserListener.prototype.enterStorage_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#storage_clause.
+PlSqlParserListener.prototype.exitStorage_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#deferred_segment_creation.
+PlSqlParserListener.prototype.enterDeferred_segment_creation = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#deferred_segment_creation.
+PlSqlParserListener.prototype.exitDeferred_segment_creation = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#segment_attributes_clause.
+PlSqlParserListener.prototype.enterSegment_attributes_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#segment_attributes_clause.
+PlSqlParserListener.prototype.exitSegment_attributes_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#physical_properties.
+PlSqlParserListener.prototype.enterPhysical_properties = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#physical_properties.
+PlSqlParserListener.prototype.exitPhysical_properties = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#row_movement_clause.
+PlSqlParserListener.prototype.enterRow_movement_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#row_movement_clause.
+PlSqlParserListener.prototype.exitRow_movement_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#flashback_archive_clause.
+PlSqlParserListener.prototype.enterFlashback_archive_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#flashback_archive_clause.
+PlSqlParserListener.prototype.exitFlashback_archive_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#log_grp.
+PlSqlParserListener.prototype.enterLog_grp = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#log_grp.
+PlSqlParserListener.prototype.exitLog_grp = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#supplemental_table_logging.
+PlSqlParserListener.prototype.enterSupplemental_table_logging = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#supplemental_table_logging.
+PlSqlParserListener.prototype.exitSupplemental_table_logging = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#supplemental_log_grp_clause.
+PlSqlParserListener.prototype.enterSupplemental_log_grp_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#supplemental_log_grp_clause.
+PlSqlParserListener.prototype.exitSupplemental_log_grp_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#supplemental_id_key_clause.
+PlSqlParserListener.prototype.enterSupplemental_id_key_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#supplemental_id_key_clause.
+PlSqlParserListener.prototype.exitSupplemental_id_key_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#allocate_extent_clause.
+PlSqlParserListener.prototype.enterAllocate_extent_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#allocate_extent_clause.
+PlSqlParserListener.prototype.exitAllocate_extent_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#deallocate_unused_clause.
+PlSqlParserListener.prototype.enterDeallocate_unused_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#deallocate_unused_clause.
+PlSqlParserListener.prototype.exitDeallocate_unused_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#shrink_clause.
+PlSqlParserListener.prototype.enterShrink_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#shrink_clause.
+PlSqlParserListener.prototype.exitShrink_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#records_per_block_clause.
+PlSqlParserListener.prototype.enterRecords_per_block_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#records_per_block_clause.
+PlSqlParserListener.prototype.exitRecords_per_block_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#upgrade_table_clause.
+PlSqlParserListener.prototype.enterUpgrade_table_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#upgrade_table_clause.
+PlSqlParserListener.prototype.exitUpgrade_table_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#drop_table.
+PlSqlParserListener.prototype.enterDrop_table = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#drop_table.
+PlSqlParserListener.prototype.exitDrop_table = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#drop_view.
+PlSqlParserListener.prototype.enterDrop_view = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#drop_view.
+PlSqlParserListener.prototype.exitDrop_view = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#comment_on_column.
+PlSqlParserListener.prototype.enterComment_on_column = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#comment_on_column.
+PlSqlParserListener.prototype.exitComment_on_column = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#enable_or_disable.
+PlSqlParserListener.prototype.enterEnable_or_disable = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#enable_or_disable.
+PlSqlParserListener.prototype.exitEnable_or_disable = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#allow_or_disallow.
+PlSqlParserListener.prototype.enterAllow_or_disallow = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#allow_or_disallow.
+PlSqlParserListener.prototype.exitAllow_or_disallow = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#create_synonym.
+PlSqlParserListener.prototype.enterCreate_synonym = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#create_synonym.
+PlSqlParserListener.prototype.exitCreate_synonym = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#comment_on_table.
+PlSqlParserListener.prototype.enterComment_on_table = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#comment_on_table.
+PlSqlParserListener.prototype.exitComment_on_table = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#alter_cluster.
+PlSqlParserListener.prototype.enterAlter_cluster = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#alter_cluster.
+PlSqlParserListener.prototype.exitAlter_cluster = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#cache_or_nocache.
+PlSqlParserListener.prototype.enterCache_or_nocache = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#cache_or_nocache.
+PlSqlParserListener.prototype.exitCache_or_nocache = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#database_name.
+PlSqlParserListener.prototype.enterDatabase_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#database_name.
+PlSqlParserListener.prototype.exitDatabase_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#alter_database.
+PlSqlParserListener.prototype.enterAlter_database = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#alter_database.
+PlSqlParserListener.prototype.exitAlter_database = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#startup_clauses.
+PlSqlParserListener.prototype.enterStartup_clauses = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#startup_clauses.
+PlSqlParserListener.prototype.exitStartup_clauses = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#resetlogs_or_noresetlogs.
+PlSqlParserListener.prototype.enterResetlogs_or_noresetlogs = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#resetlogs_or_noresetlogs.
+PlSqlParserListener.prototype.exitResetlogs_or_noresetlogs = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#upgrade_or_downgrade.
+PlSqlParserListener.prototype.enterUpgrade_or_downgrade = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#upgrade_or_downgrade.
+PlSqlParserListener.prototype.exitUpgrade_or_downgrade = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#recovery_clauses.
+PlSqlParserListener.prototype.enterRecovery_clauses = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#recovery_clauses.
+PlSqlParserListener.prototype.exitRecovery_clauses = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#begin_or_end.
+PlSqlParserListener.prototype.enterBegin_or_end = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#begin_or_end.
+PlSqlParserListener.prototype.exitBegin_or_end = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#general_recovery.
+PlSqlParserListener.prototype.enterGeneral_recovery = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#general_recovery.
+PlSqlParserListener.prototype.exitGeneral_recovery = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#full_database_recovery.
+PlSqlParserListener.prototype.enterFull_database_recovery = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#full_database_recovery.
+PlSqlParserListener.prototype.exitFull_database_recovery = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#partial_database_recovery.
+PlSqlParserListener.prototype.enterPartial_database_recovery = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#partial_database_recovery.
+PlSqlParserListener.prototype.exitPartial_database_recovery = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#partial_database_recovery_10g.
+PlSqlParserListener.prototype.enterPartial_database_recovery_10g = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#partial_database_recovery_10g.
+PlSqlParserListener.prototype.exitPartial_database_recovery_10g = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#managed_standby_recovery.
+PlSqlParserListener.prototype.enterManaged_standby_recovery = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#managed_standby_recovery.
+PlSqlParserListener.prototype.exitManaged_standby_recovery = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#db_name.
+PlSqlParserListener.prototype.enterDb_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#db_name.
+PlSqlParserListener.prototype.exitDb_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#database_file_clauses.
+PlSqlParserListener.prototype.enterDatabase_file_clauses = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#database_file_clauses.
+PlSqlParserListener.prototype.exitDatabase_file_clauses = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#create_datafile_clause.
+PlSqlParserListener.prototype.enterCreate_datafile_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#create_datafile_clause.
+PlSqlParserListener.prototype.exitCreate_datafile_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#alter_datafile_clause.
+PlSqlParserListener.prototype.enterAlter_datafile_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#alter_datafile_clause.
+PlSqlParserListener.prototype.exitAlter_datafile_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#alter_tempfile_clause.
+PlSqlParserListener.prototype.enterAlter_tempfile_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#alter_tempfile_clause.
+PlSqlParserListener.prototype.exitAlter_tempfile_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#logfile_clauses.
+PlSqlParserListener.prototype.enterLogfile_clauses = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#logfile_clauses.
+PlSqlParserListener.prototype.exitLogfile_clauses = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#add_logfile_clauses.
+PlSqlParserListener.prototype.enterAdd_logfile_clauses = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#add_logfile_clauses.
+PlSqlParserListener.prototype.exitAdd_logfile_clauses = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#log_file_group.
+PlSqlParserListener.prototype.enterLog_file_group = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#log_file_group.
+PlSqlParserListener.prototype.exitLog_file_group = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#drop_logfile_clauses.
+PlSqlParserListener.prototype.enterDrop_logfile_clauses = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#drop_logfile_clauses.
+PlSqlParserListener.prototype.exitDrop_logfile_clauses = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#switch_logfile_clause.
+PlSqlParserListener.prototype.enterSwitch_logfile_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#switch_logfile_clause.
+PlSqlParserListener.prototype.exitSwitch_logfile_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#supplemental_db_logging.
+PlSqlParserListener.prototype.enterSupplemental_db_logging = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#supplemental_db_logging.
+PlSqlParserListener.prototype.exitSupplemental_db_logging = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#add_or_drop.
+PlSqlParserListener.prototype.enterAdd_or_drop = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#add_or_drop.
+PlSqlParserListener.prototype.exitAdd_or_drop = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#supplemental_plsql_clause.
+PlSqlParserListener.prototype.enterSupplemental_plsql_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#supplemental_plsql_clause.
+PlSqlParserListener.prototype.exitSupplemental_plsql_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#logfile_descriptor.
+PlSqlParserListener.prototype.enterLogfile_descriptor = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#logfile_descriptor.
+PlSqlParserListener.prototype.exitLogfile_descriptor = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#controlfile_clauses.
+PlSqlParserListener.prototype.enterControlfile_clauses = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#controlfile_clauses.
+PlSqlParserListener.prototype.exitControlfile_clauses = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#trace_file_clause.
+PlSqlParserListener.prototype.enterTrace_file_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#trace_file_clause.
+PlSqlParserListener.prototype.exitTrace_file_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#standby_database_clauses.
+PlSqlParserListener.prototype.enterStandby_database_clauses = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#standby_database_clauses.
+PlSqlParserListener.prototype.exitStandby_database_clauses = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#activate_standby_db_clause.
+PlSqlParserListener.prototype.enterActivate_standby_db_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#activate_standby_db_clause.
+PlSqlParserListener.prototype.exitActivate_standby_db_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#maximize_standby_db_clause.
+PlSqlParserListener.prototype.enterMaximize_standby_db_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#maximize_standby_db_clause.
+PlSqlParserListener.prototype.exitMaximize_standby_db_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#register_logfile_clause.
+PlSqlParserListener.prototype.enterRegister_logfile_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#register_logfile_clause.
+PlSqlParserListener.prototype.exitRegister_logfile_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#commit_switchover_clause.
+PlSqlParserListener.prototype.enterCommit_switchover_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#commit_switchover_clause.
+PlSqlParserListener.prototype.exitCommit_switchover_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#start_standby_clause.
+PlSqlParserListener.prototype.enterStart_standby_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#start_standby_clause.
+PlSqlParserListener.prototype.exitStart_standby_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#stop_standby_clause.
+PlSqlParserListener.prototype.enterStop_standby_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#stop_standby_clause.
+PlSqlParserListener.prototype.exitStop_standby_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#convert_database_clause.
+PlSqlParserListener.prototype.enterConvert_database_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#convert_database_clause.
+PlSqlParserListener.prototype.exitConvert_database_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#default_settings_clause.
+PlSqlParserListener.prototype.enterDefault_settings_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#default_settings_clause.
+PlSqlParserListener.prototype.exitDefault_settings_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#set_time_zone_clause.
+PlSqlParserListener.prototype.enterSet_time_zone_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#set_time_zone_clause.
+PlSqlParserListener.prototype.exitSet_time_zone_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#instance_clauses.
+PlSqlParserListener.prototype.enterInstance_clauses = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#instance_clauses.
+PlSqlParserListener.prototype.exitInstance_clauses = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#security_clause.
+PlSqlParserListener.prototype.enterSecurity_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#security_clause.
+PlSqlParserListener.prototype.exitSecurity_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#domain.
+PlSqlParserListener.prototype.enterDomain = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#domain.
+PlSqlParserListener.prototype.exitDomain = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#database.
+PlSqlParserListener.prototype.enterDatabase = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#database.
+PlSqlParserListener.prototype.exitDatabase = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#edition_name.
+PlSqlParserListener.prototype.enterEdition_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#edition_name.
+PlSqlParserListener.prototype.exitEdition_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#filenumber.
+PlSqlParserListener.prototype.enterFilenumber = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#filenumber.
+PlSqlParserListener.prototype.exitFilenumber = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#filename.
+PlSqlParserListener.prototype.enterFilename = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#filename.
+PlSqlParserListener.prototype.exitFilename = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#alter_table.
+PlSqlParserListener.prototype.enterAlter_table = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#alter_table.
+PlSqlParserListener.prototype.exitAlter_table = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#alter_table_properties.
+PlSqlParserListener.prototype.enterAlter_table_properties = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#alter_table_properties.
+PlSqlParserListener.prototype.exitAlter_table_properties = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#alter_table_properties_1.
+PlSqlParserListener.prototype.enterAlter_table_properties_1 = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#alter_table_properties_1.
+PlSqlParserListener.prototype.exitAlter_table_properties_1 = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#alter_iot_clauses.
+PlSqlParserListener.prototype.enterAlter_iot_clauses = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#alter_iot_clauses.
+PlSqlParserListener.prototype.exitAlter_iot_clauses = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#alter_mapping_table_clause.
+PlSqlParserListener.prototype.enterAlter_mapping_table_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#alter_mapping_table_clause.
+PlSqlParserListener.prototype.exitAlter_mapping_table_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#alter_overflow_clause.
+PlSqlParserListener.prototype.enterAlter_overflow_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#alter_overflow_clause.
+PlSqlParserListener.prototype.exitAlter_overflow_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#add_overflow_clause.
+PlSqlParserListener.prototype.enterAdd_overflow_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#add_overflow_clause.
+PlSqlParserListener.prototype.exitAdd_overflow_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#enable_disable_clause.
+PlSqlParserListener.prototype.enterEnable_disable_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#enable_disable_clause.
+PlSqlParserListener.prototype.exitEnable_disable_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#using_index_clause.
+PlSqlParserListener.prototype.enterUsing_index_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#using_index_clause.
+PlSqlParserListener.prototype.exitUsing_index_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#index_attributes.
+PlSqlParserListener.prototype.enterIndex_attributes = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#index_attributes.
+PlSqlParserListener.prototype.exitIndex_attributes = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#sort_or_nosort.
+PlSqlParserListener.prototype.enterSort_or_nosort = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#sort_or_nosort.
+PlSqlParserListener.prototype.exitSort_or_nosort = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#exceptions_clause.
+PlSqlParserListener.prototype.enterExceptions_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#exceptions_clause.
+PlSqlParserListener.prototype.exitExceptions_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#move_table_clause.
+PlSqlParserListener.prototype.enterMove_table_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#move_table_clause.
+PlSqlParserListener.prototype.exitMove_table_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#index_org_table_clause.
+PlSqlParserListener.prototype.enterIndex_org_table_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#index_org_table_clause.
+PlSqlParserListener.prototype.exitIndex_org_table_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#mapping_table_clause.
+PlSqlParserListener.prototype.enterMapping_table_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#mapping_table_clause.
+PlSqlParserListener.prototype.exitMapping_table_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#key_compression.
+PlSqlParserListener.prototype.enterKey_compression = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#key_compression.
+PlSqlParserListener.prototype.exitKey_compression = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#index_org_overflow_clause.
+PlSqlParserListener.prototype.enterIndex_org_overflow_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#index_org_overflow_clause.
+PlSqlParserListener.prototype.exitIndex_org_overflow_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#column_clauses.
+PlSqlParserListener.prototype.enterColumn_clauses = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#column_clauses.
+PlSqlParserListener.prototype.exitColumn_clauses = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#modify_collection_retrieval.
+PlSqlParserListener.prototype.enterModify_collection_retrieval = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#modify_collection_retrieval.
+PlSqlParserListener.prototype.exitModify_collection_retrieval = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#collection_item.
+PlSqlParserListener.prototype.enterCollection_item = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#collection_item.
+PlSqlParserListener.prototype.exitCollection_item = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#rename_column_clause.
+PlSqlParserListener.prototype.enterRename_column_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#rename_column_clause.
+PlSqlParserListener.prototype.exitRename_column_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#old_column_name.
+PlSqlParserListener.prototype.enterOld_column_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#old_column_name.
+PlSqlParserListener.prototype.exitOld_column_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#new_column_name.
+PlSqlParserListener.prototype.enterNew_column_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#new_column_name.
+PlSqlParserListener.prototype.exitNew_column_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#add_modify_drop_column_clauses.
+PlSqlParserListener.prototype.enterAdd_modify_drop_column_clauses = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#add_modify_drop_column_clauses.
+PlSqlParserListener.prototype.exitAdd_modify_drop_column_clauses = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#drop_column_clause.
+PlSqlParserListener.prototype.enterDrop_column_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#drop_column_clause.
+PlSqlParserListener.prototype.exitDrop_column_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#modify_column_clauses.
+PlSqlParserListener.prototype.enterModify_column_clauses = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#modify_column_clauses.
+PlSqlParserListener.prototype.exitModify_column_clauses = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#modify_col_properties.
+PlSqlParserListener.prototype.enterModify_col_properties = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#modify_col_properties.
+PlSqlParserListener.prototype.exitModify_col_properties = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#modify_col_substitutable.
+PlSqlParserListener.prototype.enterModify_col_substitutable = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#modify_col_substitutable.
+PlSqlParserListener.prototype.exitModify_col_substitutable = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#add_column_clause.
+PlSqlParserListener.prototype.enterAdd_column_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#add_column_clause.
+PlSqlParserListener.prototype.exitAdd_column_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#alter_varray_col_properties.
+PlSqlParserListener.prototype.enterAlter_varray_col_properties = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#alter_varray_col_properties.
+PlSqlParserListener.prototype.exitAlter_varray_col_properties = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#varray_col_properties.
+PlSqlParserListener.prototype.enterVarray_col_properties = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#varray_col_properties.
+PlSqlParserListener.prototype.exitVarray_col_properties = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#varray_storage_clause.
+PlSqlParserListener.prototype.enterVarray_storage_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#varray_storage_clause.
+PlSqlParserListener.prototype.exitVarray_storage_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#lob_segname.
+PlSqlParserListener.prototype.enterLob_segname = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#lob_segname.
+PlSqlParserListener.prototype.exitLob_segname = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#lob_item.
+PlSqlParserListener.prototype.enterLob_item = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#lob_item.
+PlSqlParserListener.prototype.exitLob_item = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#lob_storage_parameters.
+PlSqlParserListener.prototype.enterLob_storage_parameters = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#lob_storage_parameters.
+PlSqlParserListener.prototype.exitLob_storage_parameters = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#lob_storage_clause.
+PlSqlParserListener.prototype.enterLob_storage_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#lob_storage_clause.
+PlSqlParserListener.prototype.exitLob_storage_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#modify_lob_storage_clause.
+PlSqlParserListener.prototype.enterModify_lob_storage_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#modify_lob_storage_clause.
+PlSqlParserListener.prototype.exitModify_lob_storage_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#modify_lob_parameters.
+PlSqlParserListener.prototype.enterModify_lob_parameters = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#modify_lob_parameters.
+PlSqlParserListener.prototype.exitModify_lob_parameters = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#lob_parameters.
+PlSqlParserListener.prototype.enterLob_parameters = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#lob_parameters.
+PlSqlParserListener.prototype.exitLob_parameters = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#lob_deduplicate_clause.
+PlSqlParserListener.prototype.enterLob_deduplicate_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#lob_deduplicate_clause.
+PlSqlParserListener.prototype.exitLob_deduplicate_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#lob_compression_clause.
+PlSqlParserListener.prototype.enterLob_compression_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#lob_compression_clause.
+PlSqlParserListener.prototype.exitLob_compression_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#lob_retention_clause.
+PlSqlParserListener.prototype.enterLob_retention_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#lob_retention_clause.
+PlSqlParserListener.prototype.exitLob_retention_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#encryption_spec.
+PlSqlParserListener.prototype.enterEncryption_spec = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#encryption_spec.
+PlSqlParserListener.prototype.exitEncryption_spec = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#tablespace.
+PlSqlParserListener.prototype.enterTablespace = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#tablespace.
+PlSqlParserListener.prototype.exitTablespace = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#varray_item.
+PlSqlParserListener.prototype.enterVarray_item = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#varray_item.
+PlSqlParserListener.prototype.exitVarray_item = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#column_properties.
+PlSqlParserListener.prototype.enterColumn_properties = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#column_properties.
+PlSqlParserListener.prototype.exitColumn_properties = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#period_definition.
+PlSqlParserListener.prototype.enterPeriod_definition = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#period_definition.
+PlSqlParserListener.prototype.exitPeriod_definition = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#start_time_column.
+PlSqlParserListener.prototype.enterStart_time_column = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#start_time_column.
+PlSqlParserListener.prototype.exitStart_time_column = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#end_time_column.
+PlSqlParserListener.prototype.enterEnd_time_column = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#end_time_column.
+PlSqlParserListener.prototype.exitEnd_time_column = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#column_definition.
+PlSqlParserListener.prototype.enterColumn_definition = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#column_definition.
+PlSqlParserListener.prototype.exitColumn_definition = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#virtual_column_definition.
+PlSqlParserListener.prototype.enterVirtual_column_definition = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#virtual_column_definition.
+PlSqlParserListener.prototype.exitVirtual_column_definition = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#autogenerated_sequence_definition.
+PlSqlParserListener.prototype.enterAutogenerated_sequence_definition = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#autogenerated_sequence_definition.
+PlSqlParserListener.prototype.exitAutogenerated_sequence_definition = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#out_of_line_part_storage.
+PlSqlParserListener.prototype.enterOut_of_line_part_storage = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#out_of_line_part_storage.
+PlSqlParserListener.prototype.exitOut_of_line_part_storage = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#nested_table_col_properties.
+PlSqlParserListener.prototype.enterNested_table_col_properties = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#nested_table_col_properties.
+PlSqlParserListener.prototype.exitNested_table_col_properties = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#nested_item.
+PlSqlParserListener.prototype.enterNested_item = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#nested_item.
+PlSqlParserListener.prototype.exitNested_item = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#substitutable_column_clause.
+PlSqlParserListener.prototype.enterSubstitutable_column_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#substitutable_column_clause.
+PlSqlParserListener.prototype.exitSubstitutable_column_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#partition_name.
+PlSqlParserListener.prototype.enterPartition_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#partition_name.
+PlSqlParserListener.prototype.exitPartition_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#supplemental_logging_props.
+PlSqlParserListener.prototype.enterSupplemental_logging_props = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#supplemental_logging_props.
+PlSqlParserListener.prototype.exitSupplemental_logging_props = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#column_or_attribute.
+PlSqlParserListener.prototype.enterColumn_or_attribute = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#column_or_attribute.
+PlSqlParserListener.prototype.exitColumn_or_attribute = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#object_type_col_properties.
+PlSqlParserListener.prototype.enterObject_type_col_properties = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#object_type_col_properties.
+PlSqlParserListener.prototype.exitObject_type_col_properties = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#constraint_clauses.
+PlSqlParserListener.prototype.enterConstraint_clauses = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#constraint_clauses.
+PlSqlParserListener.prototype.exitConstraint_clauses = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#old_constraint_name.
+PlSqlParserListener.prototype.enterOld_constraint_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#old_constraint_name.
+PlSqlParserListener.prototype.exitOld_constraint_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#new_constraint_name.
+PlSqlParserListener.prototype.enterNew_constraint_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#new_constraint_name.
+PlSqlParserListener.prototype.exitNew_constraint_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#drop_constraint_clause.
+PlSqlParserListener.prototype.enterDrop_constraint_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#drop_constraint_clause.
+PlSqlParserListener.prototype.exitDrop_constraint_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#drop_primary_key_or_unique_or_generic_clause.
+PlSqlParserListener.prototype.enterDrop_primary_key_or_unique_or_generic_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#drop_primary_key_or_unique_or_generic_clause.
+PlSqlParserListener.prototype.exitDrop_primary_key_or_unique_or_generic_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#add_constraint.
+PlSqlParserListener.prototype.enterAdd_constraint = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#add_constraint.
+PlSqlParserListener.prototype.exitAdd_constraint = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#add_constraint_clause.
+PlSqlParserListener.prototype.enterAdd_constraint_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#add_constraint_clause.
+PlSqlParserListener.prototype.exitAdd_constraint_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#check_constraint.
+PlSqlParserListener.prototype.enterCheck_constraint = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#check_constraint.
+PlSqlParserListener.prototype.exitCheck_constraint = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#drop_constraint.
+PlSqlParserListener.prototype.enterDrop_constraint = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#drop_constraint.
+PlSqlParserListener.prototype.exitDrop_constraint = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#enable_constraint.
+PlSqlParserListener.prototype.enterEnable_constraint = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#enable_constraint.
+PlSqlParserListener.prototype.exitEnable_constraint = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#disable_constraint.
+PlSqlParserListener.prototype.enterDisable_constraint = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#disable_constraint.
+PlSqlParserListener.prototype.exitDisable_constraint = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#foreign_key_clause.
+PlSqlParserListener.prototype.enterForeign_key_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#foreign_key_clause.
+PlSqlParserListener.prototype.exitForeign_key_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#references_clause.
+PlSqlParserListener.prototype.enterReferences_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#references_clause.
+PlSqlParserListener.prototype.exitReferences_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#on_delete_clause.
+PlSqlParserListener.prototype.enterOn_delete_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#on_delete_clause.
+PlSqlParserListener.prototype.exitOn_delete_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#unique_key_clause.
+PlSqlParserListener.prototype.enterUnique_key_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#unique_key_clause.
+PlSqlParserListener.prototype.exitUnique_key_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#primary_key_clause.
+PlSqlParserListener.prototype.enterPrimary_key_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#primary_key_clause.
+PlSqlParserListener.prototype.exitPrimary_key_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#anonymous_block.
+PlSqlParserListener.prototype.enterAnonymous_block = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#anonymous_block.
+PlSqlParserListener.prototype.exitAnonymous_block = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#invoker_rights_clause.
+PlSqlParserListener.prototype.enterInvoker_rights_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#invoker_rights_clause.
+PlSqlParserListener.prototype.exitInvoker_rights_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#call_spec.
+PlSqlParserListener.prototype.enterCall_spec = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#call_spec.
+PlSqlParserListener.prototype.exitCall_spec = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#java_spec.
+PlSqlParserListener.prototype.enterJava_spec = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#java_spec.
+PlSqlParserListener.prototype.exitJava_spec = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#c_spec.
+PlSqlParserListener.prototype.enterC_spec = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#c_spec.
+PlSqlParserListener.prototype.exitC_spec = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#c_agent_in_clause.
+PlSqlParserListener.prototype.enterC_agent_in_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#c_agent_in_clause.
+PlSqlParserListener.prototype.exitC_agent_in_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#c_parameters_clause.
+PlSqlParserListener.prototype.enterC_parameters_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#c_parameters_clause.
+PlSqlParserListener.prototype.exitC_parameters_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#parameter.
+PlSqlParserListener.prototype.enterParameter = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#parameter.
+PlSqlParserListener.prototype.exitParameter = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#default_value_part.
+PlSqlParserListener.prototype.enterDefault_value_part = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#default_value_part.
+PlSqlParserListener.prototype.exitDefault_value_part = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#seq_of_declare_specs.
+PlSqlParserListener.prototype.enterSeq_of_declare_specs = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#seq_of_declare_specs.
+PlSqlParserListener.prototype.exitSeq_of_declare_specs = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#declare_spec.
+PlSqlParserListener.prototype.enterDeclare_spec = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#declare_spec.
+PlSqlParserListener.prototype.exitDeclare_spec = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#variable_declaration.
+PlSqlParserListener.prototype.enterVariable_declaration = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#variable_declaration.
+PlSqlParserListener.prototype.exitVariable_declaration = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#subtype_declaration.
+PlSqlParserListener.prototype.enterSubtype_declaration = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#subtype_declaration.
+PlSqlParserListener.prototype.exitSubtype_declaration = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#cursor_declaration.
+PlSqlParserListener.prototype.enterCursor_declaration = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#cursor_declaration.
+PlSqlParserListener.prototype.exitCursor_declaration = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#parameter_spec.
+PlSqlParserListener.prototype.enterParameter_spec = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#parameter_spec.
+PlSqlParserListener.prototype.exitParameter_spec = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#exception_declaration.
+PlSqlParserListener.prototype.enterException_declaration = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#exception_declaration.
+PlSqlParserListener.prototype.exitException_declaration = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#pragma_declaration.
+PlSqlParserListener.prototype.enterPragma_declaration = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#pragma_declaration.
+PlSqlParserListener.prototype.exitPragma_declaration = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#record_type_def.
+PlSqlParserListener.prototype.enterRecord_type_def = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#record_type_def.
+PlSqlParserListener.prototype.exitRecord_type_def = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#field_spec.
+PlSqlParserListener.prototype.enterField_spec = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#field_spec.
+PlSqlParserListener.prototype.exitField_spec = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#ref_cursor_type_def.
+PlSqlParserListener.prototype.enterRef_cursor_type_def = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#ref_cursor_type_def.
+PlSqlParserListener.prototype.exitRef_cursor_type_def = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#type_declaration.
+PlSqlParserListener.prototype.enterType_declaration = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#type_declaration.
+PlSqlParserListener.prototype.exitType_declaration = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#table_type_def.
+PlSqlParserListener.prototype.enterTable_type_def = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#table_type_def.
+PlSqlParserListener.prototype.exitTable_type_def = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#table_indexed_by_part.
+PlSqlParserListener.prototype.enterTable_indexed_by_part = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#table_indexed_by_part.
+PlSqlParserListener.prototype.exitTable_indexed_by_part = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#varray_type_def.
+PlSqlParserListener.prototype.enterVarray_type_def = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#varray_type_def.
+PlSqlParserListener.prototype.exitVarray_type_def = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#seq_of_statements.
+PlSqlParserListener.prototype.enterSeq_of_statements = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#seq_of_statements.
+PlSqlParserListener.prototype.exitSeq_of_statements = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#label_declaration.
+PlSqlParserListener.prototype.enterLabel_declaration = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#label_declaration.
+PlSqlParserListener.prototype.exitLabel_declaration = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#statement.
+PlSqlParserListener.prototype.enterStatement = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#statement.
+PlSqlParserListener.prototype.exitStatement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#swallow_to_semi.
+PlSqlParserListener.prototype.enterSwallow_to_semi = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#swallow_to_semi.
+PlSqlParserListener.prototype.exitSwallow_to_semi = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#assignment_statement.
+PlSqlParserListener.prototype.enterAssignment_statement = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#assignment_statement.
+PlSqlParserListener.prototype.exitAssignment_statement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#continue_statement.
+PlSqlParserListener.prototype.enterContinue_statement = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#continue_statement.
+PlSqlParserListener.prototype.exitContinue_statement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#exit_statement.
+PlSqlParserListener.prototype.enterExit_statement = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#exit_statement.
+PlSqlParserListener.prototype.exitExit_statement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#goto_statement.
+PlSqlParserListener.prototype.enterGoto_statement = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#goto_statement.
+PlSqlParserListener.prototype.exitGoto_statement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#if_statement.
+PlSqlParserListener.prototype.enterIf_statement = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#if_statement.
+PlSqlParserListener.prototype.exitIf_statement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#elsif_part.
+PlSqlParserListener.prototype.enterElsif_part = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#elsif_part.
+PlSqlParserListener.prototype.exitElsif_part = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#else_part.
+PlSqlParserListener.prototype.enterElse_part = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#else_part.
+PlSqlParserListener.prototype.exitElse_part = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#loop_statement.
+PlSqlParserListener.prototype.enterLoop_statement = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#loop_statement.
+PlSqlParserListener.prototype.exitLoop_statement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#cursor_loop_param.
+PlSqlParserListener.prototype.enterCursor_loop_param = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#cursor_loop_param.
+PlSqlParserListener.prototype.exitCursor_loop_param = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#forall_statement.
+PlSqlParserListener.prototype.enterForall_statement = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#forall_statement.
+PlSqlParserListener.prototype.exitForall_statement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#bounds_clause.
+PlSqlParserListener.prototype.enterBounds_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#bounds_clause.
+PlSqlParserListener.prototype.exitBounds_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#between_bound.
+PlSqlParserListener.prototype.enterBetween_bound = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#between_bound.
+PlSqlParserListener.prototype.exitBetween_bound = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#lower_bound.
+PlSqlParserListener.prototype.enterLower_bound = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#lower_bound.
+PlSqlParserListener.prototype.exitLower_bound = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#upper_bound.
+PlSqlParserListener.prototype.enterUpper_bound = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#upper_bound.
+PlSqlParserListener.prototype.exitUpper_bound = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#null_statement.
+PlSqlParserListener.prototype.enterNull_statement = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#null_statement.
+PlSqlParserListener.prototype.exitNull_statement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#raise_statement.
+PlSqlParserListener.prototype.enterRaise_statement = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#raise_statement.
+PlSqlParserListener.prototype.exitRaise_statement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#return_statement.
+PlSqlParserListener.prototype.enterReturn_statement = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#return_statement.
+PlSqlParserListener.prototype.exitReturn_statement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#function_call.
+PlSqlParserListener.prototype.enterFunction_call = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#function_call.
+PlSqlParserListener.prototype.exitFunction_call = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#procedure_call.
+PlSqlParserListener.prototype.enterProcedure_call = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#procedure_call.
+PlSqlParserListener.prototype.exitProcedure_call = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#pipe_row_statement.
+PlSqlParserListener.prototype.enterPipe_row_statement = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#pipe_row_statement.
+PlSqlParserListener.prototype.exitPipe_row_statement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#body.
+PlSqlParserListener.prototype.enterBody = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#body.
+PlSqlParserListener.prototype.exitBody = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#exception_handler.
+PlSqlParserListener.prototype.enterException_handler = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#exception_handler.
+PlSqlParserListener.prototype.exitException_handler = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#trigger_block.
+PlSqlParserListener.prototype.enterTrigger_block = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#trigger_block.
+PlSqlParserListener.prototype.exitTrigger_block = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#block.
+PlSqlParserListener.prototype.enterBlock = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#block.
+PlSqlParserListener.prototype.exitBlock = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#sql_statement.
+PlSqlParserListener.prototype.enterSql_statement = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#sql_statement.
+PlSqlParserListener.prototype.exitSql_statement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#execute_immediate.
+PlSqlParserListener.prototype.enterExecute_immediate = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#execute_immediate.
+PlSqlParserListener.prototype.exitExecute_immediate = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#dynamic_returning_clause.
+PlSqlParserListener.prototype.enterDynamic_returning_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#dynamic_returning_clause.
+PlSqlParserListener.prototype.exitDynamic_returning_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#data_manipulation_language_statements.
+PlSqlParserListener.prototype.enterData_manipulation_language_statements = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#data_manipulation_language_statements.
+PlSqlParserListener.prototype.exitData_manipulation_language_statements = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#cursor_manipulation_statements.
+PlSqlParserListener.prototype.enterCursor_manipulation_statements = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#cursor_manipulation_statements.
+PlSqlParserListener.prototype.exitCursor_manipulation_statements = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#close_statement.
+PlSqlParserListener.prototype.enterClose_statement = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#close_statement.
+PlSqlParserListener.prototype.exitClose_statement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#open_statement.
+PlSqlParserListener.prototype.enterOpen_statement = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#open_statement.
+PlSqlParserListener.prototype.exitOpen_statement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#fetch_statement.
+PlSqlParserListener.prototype.enterFetch_statement = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#fetch_statement.
+PlSqlParserListener.prototype.exitFetch_statement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#open_for_statement.
+PlSqlParserListener.prototype.enterOpen_for_statement = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#open_for_statement.
+PlSqlParserListener.prototype.exitOpen_for_statement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#transaction_control_statements.
+PlSqlParserListener.prototype.enterTransaction_control_statements = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#transaction_control_statements.
+PlSqlParserListener.prototype.exitTransaction_control_statements = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#set_transaction_command.
+PlSqlParserListener.prototype.enterSet_transaction_command = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#set_transaction_command.
+PlSqlParserListener.prototype.exitSet_transaction_command = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#set_constraint_command.
+PlSqlParserListener.prototype.enterSet_constraint_command = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#set_constraint_command.
+PlSqlParserListener.prototype.exitSet_constraint_command = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#commit_statement.
+PlSqlParserListener.prototype.enterCommit_statement = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#commit_statement.
+PlSqlParserListener.prototype.exitCommit_statement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#write_clause.
+PlSqlParserListener.prototype.enterWrite_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#write_clause.
+PlSqlParserListener.prototype.exitWrite_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#rollback_statement.
+PlSqlParserListener.prototype.enterRollback_statement = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#rollback_statement.
+PlSqlParserListener.prototype.exitRollback_statement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#savepoint_statement.
+PlSqlParserListener.prototype.enterSavepoint_statement = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#savepoint_statement.
+PlSqlParserListener.prototype.exitSavepoint_statement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#explain_statement.
+PlSqlParserListener.prototype.enterExplain_statement = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#explain_statement.
+PlSqlParserListener.prototype.exitExplain_statement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#select_only_statement.
+PlSqlParserListener.prototype.enterSelect_only_statement = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#select_only_statement.
+PlSqlParserListener.prototype.exitSelect_only_statement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#select_statement.
+PlSqlParserListener.prototype.enterSelect_statement = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#select_statement.
+PlSqlParserListener.prototype.exitSelect_statement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#subquery_factoring_clause.
+PlSqlParserListener.prototype.enterSubquery_factoring_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#subquery_factoring_clause.
+PlSqlParserListener.prototype.exitSubquery_factoring_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#factoring_element.
+PlSqlParserListener.prototype.enterFactoring_element = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#factoring_element.
+PlSqlParserListener.prototype.exitFactoring_element = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#search_clause.
+PlSqlParserListener.prototype.enterSearch_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#search_clause.
+PlSqlParserListener.prototype.exitSearch_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#cycle_clause.
+PlSqlParserListener.prototype.enterCycle_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#cycle_clause.
+PlSqlParserListener.prototype.exitCycle_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#subquery.
+PlSqlParserListener.prototype.enterSubquery = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#subquery.
+PlSqlParserListener.prototype.exitSubquery = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#subquery_basic_elements.
+PlSqlParserListener.prototype.enterSubquery_basic_elements = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#subquery_basic_elements.
+PlSqlParserListener.prototype.exitSubquery_basic_elements = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#subquery_operation_part.
+PlSqlParserListener.prototype.enterSubquery_operation_part = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#subquery_operation_part.
+PlSqlParserListener.prototype.exitSubquery_operation_part = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#query_block.
+PlSqlParserListener.prototype.enterQuery_block = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#query_block.
+PlSqlParserListener.prototype.exitQuery_block = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#selected_list.
+PlSqlParserListener.prototype.enterSelected_list = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#selected_list.
+PlSqlParserListener.prototype.exitSelected_list = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#from_clause.
+PlSqlParserListener.prototype.enterFrom_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#from_clause.
+PlSqlParserListener.prototype.exitFrom_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#select_list_elements.
+PlSqlParserListener.prototype.enterSelect_list_elements = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#select_list_elements.
+PlSqlParserListener.prototype.exitSelect_list_elements = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#table_ref_list.
+PlSqlParserListener.prototype.enterTable_ref_list = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#table_ref_list.
+PlSqlParserListener.prototype.exitTable_ref_list = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#table_ref.
+PlSqlParserListener.prototype.enterTable_ref = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#table_ref.
+PlSqlParserListener.prototype.exitTable_ref = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#table_ref_aux.
+PlSqlParserListener.prototype.enterTable_ref_aux = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#table_ref_aux.
+PlSqlParserListener.prototype.exitTable_ref_aux = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#table_ref_aux_internal_one.
+PlSqlParserListener.prototype.enterTable_ref_aux_internal_one = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#table_ref_aux_internal_one.
+PlSqlParserListener.prototype.exitTable_ref_aux_internal_one = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#table_ref_aux_internal_two.
+PlSqlParserListener.prototype.enterTable_ref_aux_internal_two = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#table_ref_aux_internal_two.
+PlSqlParserListener.prototype.exitTable_ref_aux_internal_two = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#table_ref_aux_internal_three.
+PlSqlParserListener.prototype.enterTable_ref_aux_internal_three = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#table_ref_aux_internal_three.
+PlSqlParserListener.prototype.exitTable_ref_aux_internal_three = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#join_clause.
+PlSqlParserListener.prototype.enterJoin_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#join_clause.
+PlSqlParserListener.prototype.exitJoin_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#join_on_part.
+PlSqlParserListener.prototype.enterJoin_on_part = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#join_on_part.
+PlSqlParserListener.prototype.exitJoin_on_part = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#join_using_part.
+PlSqlParserListener.prototype.enterJoin_using_part = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#join_using_part.
+PlSqlParserListener.prototype.exitJoin_using_part = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#outer_join_type.
+PlSqlParserListener.prototype.enterOuter_join_type = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#outer_join_type.
+PlSqlParserListener.prototype.exitOuter_join_type = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#query_partition_clause.
+PlSqlParserListener.prototype.enterQuery_partition_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#query_partition_clause.
+PlSqlParserListener.prototype.exitQuery_partition_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#flashback_query_clause.
+PlSqlParserListener.prototype.enterFlashback_query_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#flashback_query_clause.
+PlSqlParserListener.prototype.exitFlashback_query_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#pivot_clause.
+PlSqlParserListener.prototype.enterPivot_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#pivot_clause.
+PlSqlParserListener.prototype.exitPivot_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#pivot_element.
+PlSqlParserListener.prototype.enterPivot_element = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#pivot_element.
+PlSqlParserListener.prototype.exitPivot_element = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#pivot_for_clause.
+PlSqlParserListener.prototype.enterPivot_for_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#pivot_for_clause.
+PlSqlParserListener.prototype.exitPivot_for_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#pivot_in_clause.
+PlSqlParserListener.prototype.enterPivot_in_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#pivot_in_clause.
+PlSqlParserListener.prototype.exitPivot_in_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#pivot_in_clause_element.
+PlSqlParserListener.prototype.enterPivot_in_clause_element = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#pivot_in_clause_element.
+PlSqlParserListener.prototype.exitPivot_in_clause_element = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#pivot_in_clause_elements.
+PlSqlParserListener.prototype.enterPivot_in_clause_elements = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#pivot_in_clause_elements.
+PlSqlParserListener.prototype.exitPivot_in_clause_elements = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#unpivot_clause.
+PlSqlParserListener.prototype.enterUnpivot_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#unpivot_clause.
+PlSqlParserListener.prototype.exitUnpivot_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#unpivot_in_clause.
+PlSqlParserListener.prototype.enterUnpivot_in_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#unpivot_in_clause.
+PlSqlParserListener.prototype.exitUnpivot_in_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#unpivot_in_elements.
+PlSqlParserListener.prototype.enterUnpivot_in_elements = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#unpivot_in_elements.
+PlSqlParserListener.prototype.exitUnpivot_in_elements = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#hierarchical_query_clause.
+PlSqlParserListener.prototype.enterHierarchical_query_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#hierarchical_query_clause.
+PlSqlParserListener.prototype.exitHierarchical_query_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#start_part.
+PlSqlParserListener.prototype.enterStart_part = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#start_part.
+PlSqlParserListener.prototype.exitStart_part = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#group_by_clause.
+PlSqlParserListener.prototype.enterGroup_by_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#group_by_clause.
+PlSqlParserListener.prototype.exitGroup_by_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#group_by_elements.
+PlSqlParserListener.prototype.enterGroup_by_elements = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#group_by_elements.
+PlSqlParserListener.prototype.exitGroup_by_elements = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#rollup_cube_clause.
+PlSqlParserListener.prototype.enterRollup_cube_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#rollup_cube_clause.
+PlSqlParserListener.prototype.exitRollup_cube_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#grouping_sets_clause.
+PlSqlParserListener.prototype.enterGrouping_sets_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#grouping_sets_clause.
+PlSqlParserListener.prototype.exitGrouping_sets_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#grouping_sets_elements.
+PlSqlParserListener.prototype.enterGrouping_sets_elements = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#grouping_sets_elements.
+PlSqlParserListener.prototype.exitGrouping_sets_elements = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#having_clause.
+PlSqlParserListener.prototype.enterHaving_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#having_clause.
+PlSqlParserListener.prototype.exitHaving_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#model_clause.
+PlSqlParserListener.prototype.enterModel_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#model_clause.
+PlSqlParserListener.prototype.exitModel_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#cell_reference_options.
+PlSqlParserListener.prototype.enterCell_reference_options = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#cell_reference_options.
+PlSqlParserListener.prototype.exitCell_reference_options = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#return_rows_clause.
+PlSqlParserListener.prototype.enterReturn_rows_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#return_rows_clause.
+PlSqlParserListener.prototype.exitReturn_rows_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#reference_model.
+PlSqlParserListener.prototype.enterReference_model = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#reference_model.
+PlSqlParserListener.prototype.exitReference_model = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#main_model.
+PlSqlParserListener.prototype.enterMain_model = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#main_model.
+PlSqlParserListener.prototype.exitMain_model = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#model_column_clauses.
+PlSqlParserListener.prototype.enterModel_column_clauses = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#model_column_clauses.
+PlSqlParserListener.prototype.exitModel_column_clauses = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#model_column_partition_part.
+PlSqlParserListener.prototype.enterModel_column_partition_part = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#model_column_partition_part.
+PlSqlParserListener.prototype.exitModel_column_partition_part = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#model_column_list.
+PlSqlParserListener.prototype.enterModel_column_list = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#model_column_list.
+PlSqlParserListener.prototype.exitModel_column_list = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#model_column.
+PlSqlParserListener.prototype.enterModel_column = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#model_column.
+PlSqlParserListener.prototype.exitModel_column = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#model_rules_clause.
+PlSqlParserListener.prototype.enterModel_rules_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#model_rules_clause.
+PlSqlParserListener.prototype.exitModel_rules_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#model_rules_part.
+PlSqlParserListener.prototype.enterModel_rules_part = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#model_rules_part.
+PlSqlParserListener.prototype.exitModel_rules_part = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#model_rules_element.
+PlSqlParserListener.prototype.enterModel_rules_element = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#model_rules_element.
+PlSqlParserListener.prototype.exitModel_rules_element = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#cell_assignment.
+PlSqlParserListener.prototype.enterCell_assignment = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#cell_assignment.
+PlSqlParserListener.prototype.exitCell_assignment = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#model_iterate_clause.
+PlSqlParserListener.prototype.enterModel_iterate_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#model_iterate_clause.
+PlSqlParserListener.prototype.exitModel_iterate_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#until_part.
+PlSqlParserListener.prototype.enterUntil_part = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#until_part.
+PlSqlParserListener.prototype.exitUntil_part = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#order_by_clause.
+PlSqlParserListener.prototype.enterOrder_by_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#order_by_clause.
+PlSqlParserListener.prototype.exitOrder_by_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#order_by_elements.
+PlSqlParserListener.prototype.enterOrder_by_elements = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#order_by_elements.
+PlSqlParserListener.prototype.exitOrder_by_elements = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#offset_clause.
+PlSqlParserListener.prototype.enterOffset_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#offset_clause.
+PlSqlParserListener.prototype.exitOffset_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#fetch_clause.
+PlSqlParserListener.prototype.enterFetch_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#fetch_clause.
+PlSqlParserListener.prototype.exitFetch_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#for_update_clause.
+PlSqlParserListener.prototype.enterFor_update_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#for_update_clause.
+PlSqlParserListener.prototype.exitFor_update_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#for_update_of_part.
+PlSqlParserListener.prototype.enterFor_update_of_part = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#for_update_of_part.
+PlSqlParserListener.prototype.exitFor_update_of_part = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#for_update_options.
+PlSqlParserListener.prototype.enterFor_update_options = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#for_update_options.
+PlSqlParserListener.prototype.exitFor_update_options = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#update_statement.
+PlSqlParserListener.prototype.enterUpdate_statement = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#update_statement.
+PlSqlParserListener.prototype.exitUpdate_statement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#update_set_clause.
+PlSqlParserListener.prototype.enterUpdate_set_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#update_set_clause.
+PlSqlParserListener.prototype.exitUpdate_set_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#column_based_update_set_clause.
+PlSqlParserListener.prototype.enterColumn_based_update_set_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#column_based_update_set_clause.
+PlSqlParserListener.prototype.exitColumn_based_update_set_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#delete_statement.
+PlSqlParserListener.prototype.enterDelete_statement = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#delete_statement.
+PlSqlParserListener.prototype.exitDelete_statement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#insert_statement.
+PlSqlParserListener.prototype.enterInsert_statement = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#insert_statement.
+PlSqlParserListener.prototype.exitInsert_statement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#single_table_insert.
+PlSqlParserListener.prototype.enterSingle_table_insert = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#single_table_insert.
+PlSqlParserListener.prototype.exitSingle_table_insert = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#multi_table_insert.
+PlSqlParserListener.prototype.enterMulti_table_insert = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#multi_table_insert.
+PlSqlParserListener.prototype.exitMulti_table_insert = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#multi_table_element.
+PlSqlParserListener.prototype.enterMulti_table_element = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#multi_table_element.
+PlSqlParserListener.prototype.exitMulti_table_element = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#conditional_insert_clause.
+PlSqlParserListener.prototype.enterConditional_insert_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#conditional_insert_clause.
+PlSqlParserListener.prototype.exitConditional_insert_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#conditional_insert_when_part.
+PlSqlParserListener.prototype.enterConditional_insert_when_part = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#conditional_insert_when_part.
+PlSqlParserListener.prototype.exitConditional_insert_when_part = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#conditional_insert_else_part.
+PlSqlParserListener.prototype.enterConditional_insert_else_part = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#conditional_insert_else_part.
+PlSqlParserListener.prototype.exitConditional_insert_else_part = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#insert_into_clause.
+PlSqlParserListener.prototype.enterInsert_into_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#insert_into_clause.
+PlSqlParserListener.prototype.exitInsert_into_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#values_clause.
+PlSqlParserListener.prototype.enterValues_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#values_clause.
+PlSqlParserListener.prototype.exitValues_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#merge_statement.
+PlSqlParserListener.prototype.enterMerge_statement = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#merge_statement.
+PlSqlParserListener.prototype.exitMerge_statement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#merge_update_clause.
+PlSqlParserListener.prototype.enterMerge_update_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#merge_update_clause.
+PlSqlParserListener.prototype.exitMerge_update_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#merge_element.
+PlSqlParserListener.prototype.enterMerge_element = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#merge_element.
+PlSqlParserListener.prototype.exitMerge_element = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#merge_update_delete_part.
+PlSqlParserListener.prototype.enterMerge_update_delete_part = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#merge_update_delete_part.
+PlSqlParserListener.prototype.exitMerge_update_delete_part = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#merge_insert_clause.
+PlSqlParserListener.prototype.enterMerge_insert_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#merge_insert_clause.
+PlSqlParserListener.prototype.exitMerge_insert_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#selected_tableview.
+PlSqlParserListener.prototype.enterSelected_tableview = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#selected_tableview.
+PlSqlParserListener.prototype.exitSelected_tableview = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#lock_table_statement.
+PlSqlParserListener.prototype.enterLock_table_statement = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#lock_table_statement.
+PlSqlParserListener.prototype.exitLock_table_statement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#wait_nowait_part.
+PlSqlParserListener.prototype.enterWait_nowait_part = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#wait_nowait_part.
+PlSqlParserListener.prototype.exitWait_nowait_part = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#lock_table_element.
+PlSqlParserListener.prototype.enterLock_table_element = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#lock_table_element.
+PlSqlParserListener.prototype.exitLock_table_element = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#lock_mode.
+PlSqlParserListener.prototype.enterLock_mode = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#lock_mode.
+PlSqlParserListener.prototype.exitLock_mode = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#general_table_ref.
+PlSqlParserListener.prototype.enterGeneral_table_ref = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#general_table_ref.
+PlSqlParserListener.prototype.exitGeneral_table_ref = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#static_returning_clause.
+PlSqlParserListener.prototype.enterStatic_returning_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#static_returning_clause.
+PlSqlParserListener.prototype.exitStatic_returning_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#error_logging_clause.
+PlSqlParserListener.prototype.enterError_logging_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#error_logging_clause.
+PlSqlParserListener.prototype.exitError_logging_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#error_logging_into_part.
+PlSqlParserListener.prototype.enterError_logging_into_part = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#error_logging_into_part.
+PlSqlParserListener.prototype.exitError_logging_into_part = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#error_logging_reject_part.
+PlSqlParserListener.prototype.enterError_logging_reject_part = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#error_logging_reject_part.
+PlSqlParserListener.prototype.exitError_logging_reject_part = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#dml_table_expression_clause.
+PlSqlParserListener.prototype.enterDml_table_expression_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#dml_table_expression_clause.
+PlSqlParserListener.prototype.exitDml_table_expression_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#table_collection_expression.
+PlSqlParserListener.prototype.enterTable_collection_expression = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#table_collection_expression.
+PlSqlParserListener.prototype.exitTable_collection_expression = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#subquery_restriction_clause.
+PlSqlParserListener.prototype.enterSubquery_restriction_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#subquery_restriction_clause.
+PlSqlParserListener.prototype.exitSubquery_restriction_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#sample_clause.
+PlSqlParserListener.prototype.enterSample_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#sample_clause.
+PlSqlParserListener.prototype.exitSample_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#seed_part.
+PlSqlParserListener.prototype.enterSeed_part = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#seed_part.
+PlSqlParserListener.prototype.exitSeed_part = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#condition.
+PlSqlParserListener.prototype.enterCondition = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#condition.
+PlSqlParserListener.prototype.exitCondition = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#expressions.
+PlSqlParserListener.prototype.enterExpressions = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#expressions.
+PlSqlParserListener.prototype.exitExpressions = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#expression.
+PlSqlParserListener.prototype.enterExpression = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#expression.
+PlSqlParserListener.prototype.exitExpression = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#cursor_expression.
+PlSqlParserListener.prototype.enterCursor_expression = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#cursor_expression.
+PlSqlParserListener.prototype.exitCursor_expression = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#logical_expression.
+PlSqlParserListener.prototype.enterLogical_expression = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#logical_expression.
+PlSqlParserListener.prototype.exitLogical_expression = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#unary_logical_expression.
+PlSqlParserListener.prototype.enterUnary_logical_expression = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#unary_logical_expression.
+PlSqlParserListener.prototype.exitUnary_logical_expression = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#logical_operation.
+PlSqlParserListener.prototype.enterLogical_operation = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#logical_operation.
+PlSqlParserListener.prototype.exitLogical_operation = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#multiset_expression.
+PlSqlParserListener.prototype.enterMultiset_expression = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#multiset_expression.
+PlSqlParserListener.prototype.exitMultiset_expression = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#relational_expression.
+PlSqlParserListener.prototype.enterRelational_expression = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#relational_expression.
+PlSqlParserListener.prototype.exitRelational_expression = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#compound_expression.
+PlSqlParserListener.prototype.enterCompound_expression = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#compound_expression.
+PlSqlParserListener.prototype.exitCompound_expression = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#relational_operator.
+PlSqlParserListener.prototype.enterRelational_operator = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#relational_operator.
+PlSqlParserListener.prototype.exitRelational_operator = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#in_elements.
+PlSqlParserListener.prototype.enterIn_elements = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#in_elements.
+PlSqlParserListener.prototype.exitIn_elements = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#between_elements.
+PlSqlParserListener.prototype.enterBetween_elements = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#between_elements.
+PlSqlParserListener.prototype.exitBetween_elements = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#concatenation.
+PlSqlParserListener.prototype.enterConcatenation = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#concatenation.
+PlSqlParserListener.prototype.exitConcatenation = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#interval_expression.
+PlSqlParserListener.prototype.enterInterval_expression = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#interval_expression.
+PlSqlParserListener.prototype.exitInterval_expression = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#model_expression.
+PlSqlParserListener.prototype.enterModel_expression = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#model_expression.
+PlSqlParserListener.prototype.exitModel_expression = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#model_expression_element.
+PlSqlParserListener.prototype.enterModel_expression_element = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#model_expression_element.
+PlSqlParserListener.prototype.exitModel_expression_element = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#single_column_for_loop.
+PlSqlParserListener.prototype.enterSingle_column_for_loop = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#single_column_for_loop.
+PlSqlParserListener.prototype.exitSingle_column_for_loop = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#multi_column_for_loop.
+PlSqlParserListener.prototype.enterMulti_column_for_loop = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#multi_column_for_loop.
+PlSqlParserListener.prototype.exitMulti_column_for_loop = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#unary_expression.
+PlSqlParserListener.prototype.enterUnary_expression = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#unary_expression.
+PlSqlParserListener.prototype.exitUnary_expression = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#case_statement.
+PlSqlParserListener.prototype.enterCase_statement = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#case_statement.
+PlSqlParserListener.prototype.exitCase_statement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#simple_case_statement.
+PlSqlParserListener.prototype.enterSimple_case_statement = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#simple_case_statement.
+PlSqlParserListener.prototype.exitSimple_case_statement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#simple_case_when_part.
+PlSqlParserListener.prototype.enterSimple_case_when_part = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#simple_case_when_part.
+PlSqlParserListener.prototype.exitSimple_case_when_part = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#searched_case_statement.
+PlSqlParserListener.prototype.enterSearched_case_statement = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#searched_case_statement.
+PlSqlParserListener.prototype.exitSearched_case_statement = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#searched_case_when_part.
+PlSqlParserListener.prototype.enterSearched_case_when_part = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#searched_case_when_part.
+PlSqlParserListener.prototype.exitSearched_case_when_part = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#case_else_part.
+PlSqlParserListener.prototype.enterCase_else_part = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#case_else_part.
+PlSqlParserListener.prototype.exitCase_else_part = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#atom.
+PlSqlParserListener.prototype.enterAtom = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#atom.
+PlSqlParserListener.prototype.exitAtom = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#quantified_expression.
+PlSqlParserListener.prototype.enterQuantified_expression = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#quantified_expression.
+PlSqlParserListener.prototype.exitQuantified_expression = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#string_function.
+PlSqlParserListener.prototype.enterString_function = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#string_function.
+PlSqlParserListener.prototype.exitString_function = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#standard_function.
+PlSqlParserListener.prototype.enterStandard_function = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#standard_function.
+PlSqlParserListener.prototype.exitStandard_function = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#literal.
+PlSqlParserListener.prototype.enterLiteral = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#literal.
+PlSqlParserListener.prototype.exitLiteral = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#numeric_function_wrapper.
+PlSqlParserListener.prototype.enterNumeric_function_wrapper = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#numeric_function_wrapper.
+PlSqlParserListener.prototype.exitNumeric_function_wrapper = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#numeric_function.
+PlSqlParserListener.prototype.enterNumeric_function = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#numeric_function.
+PlSqlParserListener.prototype.exitNumeric_function = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#other_function.
+PlSqlParserListener.prototype.enterOther_function = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#other_function.
+PlSqlParserListener.prototype.exitOther_function = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#over_clause_keyword.
+PlSqlParserListener.prototype.enterOver_clause_keyword = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#over_clause_keyword.
+PlSqlParserListener.prototype.exitOver_clause_keyword = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#within_or_over_clause_keyword.
+PlSqlParserListener.prototype.enterWithin_or_over_clause_keyword = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#within_or_over_clause_keyword.
+PlSqlParserListener.prototype.exitWithin_or_over_clause_keyword = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#standard_prediction_function_keyword.
+PlSqlParserListener.prototype.enterStandard_prediction_function_keyword = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#standard_prediction_function_keyword.
+PlSqlParserListener.prototype.exitStandard_prediction_function_keyword = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#over_clause.
+PlSqlParserListener.prototype.enterOver_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#over_clause.
+PlSqlParserListener.prototype.exitOver_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#windowing_clause.
+PlSqlParserListener.prototype.enterWindowing_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#windowing_clause.
+PlSqlParserListener.prototype.exitWindowing_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#windowing_type.
+PlSqlParserListener.prototype.enterWindowing_type = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#windowing_type.
+PlSqlParserListener.prototype.exitWindowing_type = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#windowing_elements.
+PlSqlParserListener.prototype.enterWindowing_elements = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#windowing_elements.
+PlSqlParserListener.prototype.exitWindowing_elements = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#using_clause.
+PlSqlParserListener.prototype.enterUsing_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#using_clause.
+PlSqlParserListener.prototype.exitUsing_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#using_element.
+PlSqlParserListener.prototype.enterUsing_element = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#using_element.
+PlSqlParserListener.prototype.exitUsing_element = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#collect_order_by_part.
+PlSqlParserListener.prototype.enterCollect_order_by_part = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#collect_order_by_part.
+PlSqlParserListener.prototype.exitCollect_order_by_part = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#within_or_over_part.
+PlSqlParserListener.prototype.enterWithin_or_over_part = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#within_or_over_part.
+PlSqlParserListener.prototype.exitWithin_or_over_part = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#cost_matrix_clause.
+PlSqlParserListener.prototype.enterCost_matrix_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#cost_matrix_clause.
+PlSqlParserListener.prototype.exitCost_matrix_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#xml_passing_clause.
+PlSqlParserListener.prototype.enterXml_passing_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#xml_passing_clause.
+PlSqlParserListener.prototype.exitXml_passing_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#xml_attributes_clause.
+PlSqlParserListener.prototype.enterXml_attributes_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#xml_attributes_clause.
+PlSqlParserListener.prototype.exitXml_attributes_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#xml_namespaces_clause.
+PlSqlParserListener.prototype.enterXml_namespaces_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#xml_namespaces_clause.
+PlSqlParserListener.prototype.exitXml_namespaces_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#xml_table_column.
+PlSqlParserListener.prototype.enterXml_table_column = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#xml_table_column.
+PlSqlParserListener.prototype.exitXml_table_column = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#xml_general_default_part.
+PlSqlParserListener.prototype.enterXml_general_default_part = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#xml_general_default_part.
+PlSqlParserListener.prototype.exitXml_general_default_part = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#xml_multiuse_expression_element.
+PlSqlParserListener.prototype.enterXml_multiuse_expression_element = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#xml_multiuse_expression_element.
+PlSqlParserListener.prototype.exitXml_multiuse_expression_element = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#xmlroot_param_version_part.
+PlSqlParserListener.prototype.enterXmlroot_param_version_part = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#xmlroot_param_version_part.
+PlSqlParserListener.prototype.exitXmlroot_param_version_part = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#xmlroot_param_standalone_part.
+PlSqlParserListener.prototype.enterXmlroot_param_standalone_part = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#xmlroot_param_standalone_part.
+PlSqlParserListener.prototype.exitXmlroot_param_standalone_part = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#xmlserialize_param_enconding_part.
+PlSqlParserListener.prototype.enterXmlserialize_param_enconding_part = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#xmlserialize_param_enconding_part.
+PlSqlParserListener.prototype.exitXmlserialize_param_enconding_part = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#xmlserialize_param_version_part.
+PlSqlParserListener.prototype.enterXmlserialize_param_version_part = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#xmlserialize_param_version_part.
+PlSqlParserListener.prototype.exitXmlserialize_param_version_part = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#xmlserialize_param_ident_part.
+PlSqlParserListener.prototype.enterXmlserialize_param_ident_part = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#xmlserialize_param_ident_part.
+PlSqlParserListener.prototype.exitXmlserialize_param_ident_part = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#sql_plus_command.
+PlSqlParserListener.prototype.enterSql_plus_command = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#sql_plus_command.
+PlSqlParserListener.prototype.exitSql_plus_command = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#whenever_command.
+PlSqlParserListener.prototype.enterWhenever_command = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#whenever_command.
+PlSqlParserListener.prototype.exitWhenever_command = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#set_command.
+PlSqlParserListener.prototype.enterSet_command = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#set_command.
+PlSqlParserListener.prototype.exitSet_command = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#partition_extension_clause.
+PlSqlParserListener.prototype.enterPartition_extension_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#partition_extension_clause.
+PlSqlParserListener.prototype.exitPartition_extension_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#column_alias.
+PlSqlParserListener.prototype.enterColumn_alias = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#column_alias.
+PlSqlParserListener.prototype.exitColumn_alias = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#table_alias.
+PlSqlParserListener.prototype.enterTable_alias = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#table_alias.
+PlSqlParserListener.prototype.exitTable_alias = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#where_clause.
+PlSqlParserListener.prototype.enterWhere_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#where_clause.
+PlSqlParserListener.prototype.exitWhere_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#into_clause.
+PlSqlParserListener.prototype.enterInto_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#into_clause.
+PlSqlParserListener.prototype.exitInto_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#xml_column_name.
+PlSqlParserListener.prototype.enterXml_column_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#xml_column_name.
+PlSqlParserListener.prototype.exitXml_column_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#cost_class_name.
+PlSqlParserListener.prototype.enterCost_class_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#cost_class_name.
+PlSqlParserListener.prototype.exitCost_class_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#attribute_name.
+PlSqlParserListener.prototype.enterAttribute_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#attribute_name.
+PlSqlParserListener.prototype.exitAttribute_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#savepoint_name.
+PlSqlParserListener.prototype.enterSavepoint_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#savepoint_name.
+PlSqlParserListener.prototype.exitSavepoint_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#rollback_segment_name.
+PlSqlParserListener.prototype.enterRollback_segment_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#rollback_segment_name.
+PlSqlParserListener.prototype.exitRollback_segment_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#table_var_name.
+PlSqlParserListener.prototype.enterTable_var_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#table_var_name.
+PlSqlParserListener.prototype.exitTable_var_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#schema_name.
+PlSqlParserListener.prototype.enterSchema_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#schema_name.
+PlSqlParserListener.prototype.exitSchema_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#routine_name.
+PlSqlParserListener.prototype.enterRoutine_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#routine_name.
+PlSqlParserListener.prototype.exitRoutine_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#package_name.
+PlSqlParserListener.prototype.enterPackage_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#package_name.
+PlSqlParserListener.prototype.exitPackage_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#implementation_type_name.
+PlSqlParserListener.prototype.enterImplementation_type_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#implementation_type_name.
+PlSqlParserListener.prototype.exitImplementation_type_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#parameter_name.
+PlSqlParserListener.prototype.enterParameter_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#parameter_name.
+PlSqlParserListener.prototype.exitParameter_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#reference_model_name.
+PlSqlParserListener.prototype.enterReference_model_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#reference_model_name.
+PlSqlParserListener.prototype.exitReference_model_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#main_model_name.
+PlSqlParserListener.prototype.enterMain_model_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#main_model_name.
+PlSqlParserListener.prototype.exitMain_model_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#container_tableview_name.
+PlSqlParserListener.prototype.enterContainer_tableview_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#container_tableview_name.
+PlSqlParserListener.prototype.exitContainer_tableview_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#aggregate_function_name.
+PlSqlParserListener.prototype.enterAggregate_function_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#aggregate_function_name.
+PlSqlParserListener.prototype.exitAggregate_function_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#query_name.
+PlSqlParserListener.prototype.enterQuery_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#query_name.
+PlSqlParserListener.prototype.exitQuery_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#grantee_name.
+PlSqlParserListener.prototype.enterGrantee_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#grantee_name.
+PlSqlParserListener.prototype.exitGrantee_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#role_name.
+PlSqlParserListener.prototype.enterRole_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#role_name.
+PlSqlParserListener.prototype.exitRole_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#constraint_name.
+PlSqlParserListener.prototype.enterConstraint_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#constraint_name.
+PlSqlParserListener.prototype.exitConstraint_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#label_name.
+PlSqlParserListener.prototype.enterLabel_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#label_name.
+PlSqlParserListener.prototype.exitLabel_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#type_name.
+PlSqlParserListener.prototype.enterType_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#type_name.
+PlSqlParserListener.prototype.exitType_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#sequence_name.
+PlSqlParserListener.prototype.enterSequence_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#sequence_name.
+PlSqlParserListener.prototype.exitSequence_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#exception_name.
+PlSqlParserListener.prototype.enterException_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#exception_name.
+PlSqlParserListener.prototype.exitException_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#function_name.
+PlSqlParserListener.prototype.enterFunction_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#function_name.
+PlSqlParserListener.prototype.exitFunction_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#procedure_name.
+PlSqlParserListener.prototype.enterProcedure_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#procedure_name.
+PlSqlParserListener.prototype.exitProcedure_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#trigger_name.
+PlSqlParserListener.prototype.enterTrigger_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#trigger_name.
+PlSqlParserListener.prototype.exitTrigger_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#variable_name.
+PlSqlParserListener.prototype.enterVariable_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#variable_name.
+PlSqlParserListener.prototype.exitVariable_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#index_name.
+PlSqlParserListener.prototype.enterIndex_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#index_name.
+PlSqlParserListener.prototype.exitIndex_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#cursor_name.
+PlSqlParserListener.prototype.enterCursor_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#cursor_name.
+PlSqlParserListener.prototype.exitCursor_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#record_name.
+PlSqlParserListener.prototype.enterRecord_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#record_name.
+PlSqlParserListener.prototype.exitRecord_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#collection_name.
+PlSqlParserListener.prototype.enterCollection_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#collection_name.
+PlSqlParserListener.prototype.exitCollection_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#link_name.
+PlSqlParserListener.prototype.enterLink_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#link_name.
+PlSqlParserListener.prototype.exitLink_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#column_name.
+PlSqlParserListener.prototype.enterColumn_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#column_name.
+PlSqlParserListener.prototype.exitColumn_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#tableview_name.
+PlSqlParserListener.prototype.enterTableview_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#tableview_name.
+PlSqlParserListener.prototype.exitTableview_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#xmltable.
+PlSqlParserListener.prototype.enterXmltable = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#xmltable.
+PlSqlParserListener.prototype.exitXmltable = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#char_set_name.
+PlSqlParserListener.prototype.enterChar_set_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#char_set_name.
+PlSqlParserListener.prototype.exitChar_set_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#synonym_name.
+PlSqlParserListener.prototype.enterSynonym_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#synonym_name.
+PlSqlParserListener.prototype.exitSynonym_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#schema_object_name.
+PlSqlParserListener.prototype.enterSchema_object_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#schema_object_name.
+PlSqlParserListener.prototype.exitSchema_object_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#dir_object_name.
+PlSqlParserListener.prototype.enterDir_object_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#dir_object_name.
+PlSqlParserListener.prototype.exitDir_object_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#user_object_name.
+PlSqlParserListener.prototype.enterUser_object_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#user_object_name.
+PlSqlParserListener.prototype.exitUser_object_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#grant_object_name.
+PlSqlParserListener.prototype.enterGrant_object_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#grant_object_name.
+PlSqlParserListener.prototype.exitGrant_object_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#column_list.
+PlSqlParserListener.prototype.enterColumn_list = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#column_list.
+PlSqlParserListener.prototype.exitColumn_list = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#paren_column_list.
+PlSqlParserListener.prototype.enterParen_column_list = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#paren_column_list.
+PlSqlParserListener.prototype.exitParen_column_list = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#keep_clause.
+PlSqlParserListener.prototype.enterKeep_clause = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#keep_clause.
+PlSqlParserListener.prototype.exitKeep_clause = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#function_argument.
+PlSqlParserListener.prototype.enterFunction_argument = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#function_argument.
+PlSqlParserListener.prototype.exitFunction_argument = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#function_argument_analytic.
+PlSqlParserListener.prototype.enterFunction_argument_analytic = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#function_argument_analytic.
+PlSqlParserListener.prototype.exitFunction_argument_analytic = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#function_argument_modeling.
+PlSqlParserListener.prototype.enterFunction_argument_modeling = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#function_argument_modeling.
+PlSqlParserListener.prototype.exitFunction_argument_modeling = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#respect_or_ignore_nulls.
+PlSqlParserListener.prototype.enterRespect_or_ignore_nulls = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#respect_or_ignore_nulls.
+PlSqlParserListener.prototype.exitRespect_or_ignore_nulls = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#argument.
+PlSqlParserListener.prototype.enterArgument = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#argument.
+PlSqlParserListener.prototype.exitArgument = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#type_spec.
+PlSqlParserListener.prototype.enterType_spec = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#type_spec.
+PlSqlParserListener.prototype.exitType_spec = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#datatype.
+PlSqlParserListener.prototype.enterDatatype = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#datatype.
+PlSqlParserListener.prototype.exitDatatype = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#precision_part.
+PlSqlParserListener.prototype.enterPrecision_part = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#precision_part.
+PlSqlParserListener.prototype.exitPrecision_part = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#native_datatype_element.
+PlSqlParserListener.prototype.enterNative_datatype_element = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#native_datatype_element.
+PlSqlParserListener.prototype.exitNative_datatype_element = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#bind_variable.
+PlSqlParserListener.prototype.enterBind_variable = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#bind_variable.
+PlSqlParserListener.prototype.exitBind_variable = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#general_element.
+PlSqlParserListener.prototype.enterGeneral_element = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#general_element.
+PlSqlParserListener.prototype.exitGeneral_element = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#general_element_part.
+PlSqlParserListener.prototype.enterGeneral_element_part = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#general_element_part.
+PlSqlParserListener.prototype.exitGeneral_element_part = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#table_element.
+PlSqlParserListener.prototype.enterTable_element = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#table_element.
+PlSqlParserListener.prototype.exitTable_element = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#object_privilege.
+PlSqlParserListener.prototype.enterObject_privilege = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#object_privilege.
+PlSqlParserListener.prototype.exitObject_privilege = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#system_privilege.
+PlSqlParserListener.prototype.enterSystem_privilege = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#system_privilege.
+PlSqlParserListener.prototype.exitSystem_privilege = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#constant.
+PlSqlParserListener.prototype.enterConstant = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#constant.
+PlSqlParserListener.prototype.exitConstant = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#numeric.
+PlSqlParserListener.prototype.enterNumeric = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#numeric.
+PlSqlParserListener.prototype.exitNumeric = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#numeric_negative.
+PlSqlParserListener.prototype.enterNumeric_negative = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#numeric_negative.
+PlSqlParserListener.prototype.exitNumeric_negative = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#quoted_string.
+PlSqlParserListener.prototype.enterQuoted_string = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#quoted_string.
+PlSqlParserListener.prototype.exitQuoted_string = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#identifier.
+PlSqlParserListener.prototype.enterIdentifier = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#identifier.
+PlSqlParserListener.prototype.exitIdentifier = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#id_expression.
+PlSqlParserListener.prototype.enterId_expression = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#id_expression.
+PlSqlParserListener.prototype.exitId_expression = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#outer_join_sign.
+PlSqlParserListener.prototype.enterOuter_join_sign = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#outer_join_sign.
+PlSqlParserListener.prototype.exitOuter_join_sign = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#regular_id.
+PlSqlParserListener.prototype.enterRegular_id = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#regular_id.
+PlSqlParserListener.prototype.exitRegular_id = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#non_reserved_keywords_in_12c.
+PlSqlParserListener.prototype.enterNon_reserved_keywords_in_12c = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#non_reserved_keywords_in_12c.
+PlSqlParserListener.prototype.exitNon_reserved_keywords_in_12c = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#non_reserved_keywords_pre12c.
+PlSqlParserListener.prototype.enterNon_reserved_keywords_pre12c = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#non_reserved_keywords_pre12c.
+PlSqlParserListener.prototype.exitNon_reserved_keywords_pre12c = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#string_function_name.
+PlSqlParserListener.prototype.enterString_function_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#string_function_name.
+PlSqlParserListener.prototype.exitString_function_name = function(ctx) {
+};
+
+
+// Enter a parse tree produced by PlSqlParser#numeric_function_name.
+PlSqlParserListener.prototype.enterNumeric_function_name = function(ctx) {
+};
+
+// Exit a parse tree produced by PlSqlParser#numeric_function_name.
+PlSqlParserListener.prototype.exitNumeric_function_name = function(ctx) {
+};
+
+
+
+exports.PlSqlParserListener = PlSqlParserListener;
\ No newline at end of file
diff --git a/src/lib/plsql/PlSqlParserVisitor.js b/src/lib/plsql/PlSqlParserVisitor.js
new file mode 100644
index 0000000..eb089b8
--- /dev/null
+++ b/src/lib/plsql/PlSqlParserVisitor.js
@@ -0,0 +1,4534 @@
+// Generated from /Users/ziv/Workspace/dt-sql-parser/src/grammar/plsql/PlSqlParser.g4 by ANTLR 4.8
+// jshint ignore: start
+var antlr4 = require('antlr4/index');
+
+// This class defines a complete generic visitor for a parse tree produced by PlSqlParser.
+
+function PlSqlParserVisitor() {
+ antlr4.tree.ParseTreeVisitor.call(this);
+ return this;
+}
+
+PlSqlParserVisitor.prototype = Object.create(antlr4.tree.ParseTreeVisitor.prototype);
+PlSqlParserVisitor.prototype.constructor = PlSqlParserVisitor;
+
+// Visit a parse tree produced by PlSqlParser#program.
+PlSqlParserVisitor.prototype.visitProgram = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#sql_script.
+PlSqlParserVisitor.prototype.visitSql_script = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#unit_statement.
+PlSqlParserVisitor.prototype.visitUnit_statement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#drop_function.
+PlSqlParserVisitor.prototype.visitDrop_function = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#alter_function.
+PlSqlParserVisitor.prototype.visitAlter_function = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#create_function_body.
+PlSqlParserVisitor.prototype.visitCreate_function_body = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#parallel_enable_clause.
+PlSqlParserVisitor.prototype.visitParallel_enable_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#partition_by_clause.
+PlSqlParserVisitor.prototype.visitPartition_by_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#result_cache_clause.
+PlSqlParserVisitor.prototype.visitResult_cache_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#relies_on_part.
+PlSqlParserVisitor.prototype.visitRelies_on_part = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#streaming_clause.
+PlSqlParserVisitor.prototype.visitStreaming_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#drop_package.
+PlSqlParserVisitor.prototype.visitDrop_package = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#alter_package.
+PlSqlParserVisitor.prototype.visitAlter_package = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#create_package.
+PlSqlParserVisitor.prototype.visitCreate_package = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#create_package_body.
+PlSqlParserVisitor.prototype.visitCreate_package_body = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#package_obj_spec.
+PlSqlParserVisitor.prototype.visitPackage_obj_spec = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#procedure_spec.
+PlSqlParserVisitor.prototype.visitProcedure_spec = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#function_spec.
+PlSqlParserVisitor.prototype.visitFunction_spec = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#package_obj_body.
+PlSqlParserVisitor.prototype.visitPackage_obj_body = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#drop_procedure.
+PlSqlParserVisitor.prototype.visitDrop_procedure = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#alter_procedure.
+PlSqlParserVisitor.prototype.visitAlter_procedure = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#function_body.
+PlSqlParserVisitor.prototype.visitFunction_body = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#procedure_body.
+PlSqlParserVisitor.prototype.visitProcedure_body = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#create_procedure_body.
+PlSqlParserVisitor.prototype.visitCreate_procedure_body = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#drop_trigger.
+PlSqlParserVisitor.prototype.visitDrop_trigger = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#alter_trigger.
+PlSqlParserVisitor.prototype.visitAlter_trigger = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#create_trigger.
+PlSqlParserVisitor.prototype.visitCreate_trigger = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#trigger_follows_clause.
+PlSqlParserVisitor.prototype.visitTrigger_follows_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#trigger_when_clause.
+PlSqlParserVisitor.prototype.visitTrigger_when_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#simple_dml_trigger.
+PlSqlParserVisitor.prototype.visitSimple_dml_trigger = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#for_each_row.
+PlSqlParserVisitor.prototype.visitFor_each_row = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#compound_dml_trigger.
+PlSqlParserVisitor.prototype.visitCompound_dml_trigger = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#non_dml_trigger.
+PlSqlParserVisitor.prototype.visitNon_dml_trigger = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#trigger_body.
+PlSqlParserVisitor.prototype.visitTrigger_body = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#routine_clause.
+PlSqlParserVisitor.prototype.visitRoutine_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#compound_trigger_block.
+PlSqlParserVisitor.prototype.visitCompound_trigger_block = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#timing_point_section.
+PlSqlParserVisitor.prototype.visitTiming_point_section = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#non_dml_event.
+PlSqlParserVisitor.prototype.visitNon_dml_event = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#dml_event_clause.
+PlSqlParserVisitor.prototype.visitDml_event_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#dml_event_element.
+PlSqlParserVisitor.prototype.visitDml_event_element = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#dml_event_nested_clause.
+PlSqlParserVisitor.prototype.visitDml_event_nested_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#referencing_clause.
+PlSqlParserVisitor.prototype.visitReferencing_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#referencing_element.
+PlSqlParserVisitor.prototype.visitReferencing_element = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#drop_type.
+PlSqlParserVisitor.prototype.visitDrop_type = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#alter_type.
+PlSqlParserVisitor.prototype.visitAlter_type = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#compile_type_clause.
+PlSqlParserVisitor.prototype.visitCompile_type_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#replace_type_clause.
+PlSqlParserVisitor.prototype.visitReplace_type_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#alter_method_spec.
+PlSqlParserVisitor.prototype.visitAlter_method_spec = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#alter_method_element.
+PlSqlParserVisitor.prototype.visitAlter_method_element = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#alter_attribute_definition.
+PlSqlParserVisitor.prototype.visitAlter_attribute_definition = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#attribute_definition.
+PlSqlParserVisitor.prototype.visitAttribute_definition = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#alter_collection_clauses.
+PlSqlParserVisitor.prototype.visitAlter_collection_clauses = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#dependent_handling_clause.
+PlSqlParserVisitor.prototype.visitDependent_handling_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#dependent_exceptions_part.
+PlSqlParserVisitor.prototype.visitDependent_exceptions_part = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#create_type.
+PlSqlParserVisitor.prototype.visitCreate_type = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#type_definition.
+PlSqlParserVisitor.prototype.visitType_definition = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#object_type_def.
+PlSqlParserVisitor.prototype.visitObject_type_def = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#object_as_part.
+PlSqlParserVisitor.prototype.visitObject_as_part = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#object_under_part.
+PlSqlParserVisitor.prototype.visitObject_under_part = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#nested_table_type_def.
+PlSqlParserVisitor.prototype.visitNested_table_type_def = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#sqlj_object_type.
+PlSqlParserVisitor.prototype.visitSqlj_object_type = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#type_body.
+PlSqlParserVisitor.prototype.visitType_body = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#type_body_elements.
+PlSqlParserVisitor.prototype.visitType_body_elements = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#map_order_func_declaration.
+PlSqlParserVisitor.prototype.visitMap_order_func_declaration = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#subprog_decl_in_type.
+PlSqlParserVisitor.prototype.visitSubprog_decl_in_type = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#proc_decl_in_type.
+PlSqlParserVisitor.prototype.visitProc_decl_in_type = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#func_decl_in_type.
+PlSqlParserVisitor.prototype.visitFunc_decl_in_type = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#constructor_declaration.
+PlSqlParserVisitor.prototype.visitConstructor_declaration = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#modifier_clause.
+PlSqlParserVisitor.prototype.visitModifier_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#object_member_spec.
+PlSqlParserVisitor.prototype.visitObject_member_spec = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#sqlj_object_type_attr.
+PlSqlParserVisitor.prototype.visitSqlj_object_type_attr = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#element_spec.
+PlSqlParserVisitor.prototype.visitElement_spec = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#element_spec_options.
+PlSqlParserVisitor.prototype.visitElement_spec_options = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#subprogram_spec.
+PlSqlParserVisitor.prototype.visitSubprogram_spec = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#overriding_subprogram_spec.
+PlSqlParserVisitor.prototype.visitOverriding_subprogram_spec = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#overriding_function_spec.
+PlSqlParserVisitor.prototype.visitOverriding_function_spec = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#type_procedure_spec.
+PlSqlParserVisitor.prototype.visitType_procedure_spec = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#type_function_spec.
+PlSqlParserVisitor.prototype.visitType_function_spec = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#constructor_spec.
+PlSqlParserVisitor.prototype.visitConstructor_spec = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#map_order_function_spec.
+PlSqlParserVisitor.prototype.visitMap_order_function_spec = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#pragma_clause.
+PlSqlParserVisitor.prototype.visitPragma_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#pragma_elements.
+PlSqlParserVisitor.prototype.visitPragma_elements = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#type_elements_parameter.
+PlSqlParserVisitor.prototype.visitType_elements_parameter = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#drop_sequence.
+PlSqlParserVisitor.prototype.visitDrop_sequence = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#alter_sequence.
+PlSqlParserVisitor.prototype.visitAlter_sequence = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#alter_session.
+PlSqlParserVisitor.prototype.visitAlter_session = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#alter_session_set_clause.
+PlSqlParserVisitor.prototype.visitAlter_session_set_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#create_sequence.
+PlSqlParserVisitor.prototype.visitCreate_sequence = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#sequence_spec.
+PlSqlParserVisitor.prototype.visitSequence_spec = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#sequence_start_clause.
+PlSqlParserVisitor.prototype.visitSequence_start_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#create_index.
+PlSqlParserVisitor.prototype.visitCreate_index = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#cluster_index_clause.
+PlSqlParserVisitor.prototype.visitCluster_index_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#cluster_name.
+PlSqlParserVisitor.prototype.visitCluster_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#table_index_clause.
+PlSqlParserVisitor.prototype.visitTable_index_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#bitmap_join_index_clause.
+PlSqlParserVisitor.prototype.visitBitmap_join_index_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#index_expr.
+PlSqlParserVisitor.prototype.visitIndex_expr = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#index_properties.
+PlSqlParserVisitor.prototype.visitIndex_properties = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#domain_index_clause.
+PlSqlParserVisitor.prototype.visitDomain_index_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#local_domain_index_clause.
+PlSqlParserVisitor.prototype.visitLocal_domain_index_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#xmlindex_clause.
+PlSqlParserVisitor.prototype.visitXmlindex_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#local_xmlindex_clause.
+PlSqlParserVisitor.prototype.visitLocal_xmlindex_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#global_partitioned_index.
+PlSqlParserVisitor.prototype.visitGlobal_partitioned_index = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#index_partitioning_clause.
+PlSqlParserVisitor.prototype.visitIndex_partitioning_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#local_partitioned_index.
+PlSqlParserVisitor.prototype.visitLocal_partitioned_index = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#on_range_partitioned_table.
+PlSqlParserVisitor.prototype.visitOn_range_partitioned_table = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#on_list_partitioned_table.
+PlSqlParserVisitor.prototype.visitOn_list_partitioned_table = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#partitioned_table.
+PlSqlParserVisitor.prototype.visitPartitioned_table = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#on_hash_partitioned_table.
+PlSqlParserVisitor.prototype.visitOn_hash_partitioned_table = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#on_hash_partitioned_clause.
+PlSqlParserVisitor.prototype.visitOn_hash_partitioned_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#on_comp_partitioned_table.
+PlSqlParserVisitor.prototype.visitOn_comp_partitioned_table = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#on_comp_partitioned_clause.
+PlSqlParserVisitor.prototype.visitOn_comp_partitioned_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#index_subpartition_clause.
+PlSqlParserVisitor.prototype.visitIndex_subpartition_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#index_subpartition_subclause.
+PlSqlParserVisitor.prototype.visitIndex_subpartition_subclause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#odci_parameters.
+PlSqlParserVisitor.prototype.visitOdci_parameters = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#indextype.
+PlSqlParserVisitor.prototype.visitIndextype = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#alter_index.
+PlSqlParserVisitor.prototype.visitAlter_index = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#alter_index_ops_set1.
+PlSqlParserVisitor.prototype.visitAlter_index_ops_set1 = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#alter_index_ops_set2.
+PlSqlParserVisitor.prototype.visitAlter_index_ops_set2 = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#visible_or_invisible.
+PlSqlParserVisitor.prototype.visitVisible_or_invisible = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#monitoring_nomonitoring.
+PlSqlParserVisitor.prototype.visitMonitoring_nomonitoring = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#rebuild_clause.
+PlSqlParserVisitor.prototype.visitRebuild_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#alter_index_partitioning.
+PlSqlParserVisitor.prototype.visitAlter_index_partitioning = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#modify_index_default_attrs.
+PlSqlParserVisitor.prototype.visitModify_index_default_attrs = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#add_hash_index_partition.
+PlSqlParserVisitor.prototype.visitAdd_hash_index_partition = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#coalesce_index_partition.
+PlSqlParserVisitor.prototype.visitCoalesce_index_partition = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#modify_index_partition.
+PlSqlParserVisitor.prototype.visitModify_index_partition = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#modify_index_partitions_ops.
+PlSqlParserVisitor.prototype.visitModify_index_partitions_ops = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#rename_index_partition.
+PlSqlParserVisitor.prototype.visitRename_index_partition = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#drop_index_partition.
+PlSqlParserVisitor.prototype.visitDrop_index_partition = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#split_index_partition.
+PlSqlParserVisitor.prototype.visitSplit_index_partition = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#index_partition_description.
+PlSqlParserVisitor.prototype.visitIndex_partition_description = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#modify_index_subpartition.
+PlSqlParserVisitor.prototype.visitModify_index_subpartition = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#partition_name_old.
+PlSqlParserVisitor.prototype.visitPartition_name_old = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#new_partition_name.
+PlSqlParserVisitor.prototype.visitNew_partition_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#new_index_name.
+PlSqlParserVisitor.prototype.visitNew_index_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#create_user.
+PlSqlParserVisitor.prototype.visitCreate_user = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#alter_user.
+PlSqlParserVisitor.prototype.visitAlter_user = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#alter_identified_by.
+PlSqlParserVisitor.prototype.visitAlter_identified_by = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#identified_by.
+PlSqlParserVisitor.prototype.visitIdentified_by = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#identified_other_clause.
+PlSqlParserVisitor.prototype.visitIdentified_other_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#user_tablespace_clause.
+PlSqlParserVisitor.prototype.visitUser_tablespace_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#quota_clause.
+PlSqlParserVisitor.prototype.visitQuota_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#profile_clause.
+PlSqlParserVisitor.prototype.visitProfile_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#role_clause.
+PlSqlParserVisitor.prototype.visitRole_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#user_default_role_clause.
+PlSqlParserVisitor.prototype.visitUser_default_role_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#password_expire_clause.
+PlSqlParserVisitor.prototype.visitPassword_expire_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#user_lock_clause.
+PlSqlParserVisitor.prototype.visitUser_lock_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#user_editions_clause.
+PlSqlParserVisitor.prototype.visitUser_editions_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#alter_user_editions_clause.
+PlSqlParserVisitor.prototype.visitAlter_user_editions_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#proxy_clause.
+PlSqlParserVisitor.prototype.visitProxy_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#container_names.
+PlSqlParserVisitor.prototype.visitContainer_names = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#set_container_data.
+PlSqlParserVisitor.prototype.visitSet_container_data = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#add_rem_container_data.
+PlSqlParserVisitor.prototype.visitAdd_rem_container_data = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#container_data_clause.
+PlSqlParserVisitor.prototype.visitContainer_data_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#analyze.
+PlSqlParserVisitor.prototype.visitAnalyze = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#partition_extention_clause.
+PlSqlParserVisitor.prototype.visitPartition_extention_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#validation_clauses.
+PlSqlParserVisitor.prototype.visitValidation_clauses = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#online_or_offline.
+PlSqlParserVisitor.prototype.visitOnline_or_offline = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#into_clause1.
+PlSqlParserVisitor.prototype.visitInto_clause1 = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#partition_key_value.
+PlSqlParserVisitor.prototype.visitPartition_key_value = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#subpartition_key_value.
+PlSqlParserVisitor.prototype.visitSubpartition_key_value = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#associate_statistics.
+PlSqlParserVisitor.prototype.visitAssociate_statistics = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#column_association.
+PlSqlParserVisitor.prototype.visitColumn_association = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#function_association.
+PlSqlParserVisitor.prototype.visitFunction_association = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#indextype_name.
+PlSqlParserVisitor.prototype.visitIndextype_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#using_statistics_type.
+PlSqlParserVisitor.prototype.visitUsing_statistics_type = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#statistics_type_name.
+PlSqlParserVisitor.prototype.visitStatistics_type_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#default_cost_clause.
+PlSqlParserVisitor.prototype.visitDefault_cost_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#cpu_cost.
+PlSqlParserVisitor.prototype.visitCpu_cost = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#io_cost.
+PlSqlParserVisitor.prototype.visitIo_cost = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#network_cost.
+PlSqlParserVisitor.prototype.visitNetwork_cost = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#default_selectivity_clause.
+PlSqlParserVisitor.prototype.visitDefault_selectivity_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#default_selectivity.
+PlSqlParserVisitor.prototype.visitDefault_selectivity = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#storage_table_clause.
+PlSqlParserVisitor.prototype.visitStorage_table_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#unified_auditing.
+PlSqlParserVisitor.prototype.visitUnified_auditing = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#policy_name.
+PlSqlParserVisitor.prototype.visitPolicy_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#audit_traditional.
+PlSqlParserVisitor.prototype.visitAudit_traditional = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#audit_direct_path.
+PlSqlParserVisitor.prototype.visitAudit_direct_path = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#audit_container_clause.
+PlSqlParserVisitor.prototype.visitAudit_container_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#audit_operation_clause.
+PlSqlParserVisitor.prototype.visitAudit_operation_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#auditing_by_clause.
+PlSqlParserVisitor.prototype.visitAuditing_by_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#audit_user.
+PlSqlParserVisitor.prototype.visitAudit_user = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#audit_schema_object_clause.
+PlSqlParserVisitor.prototype.visitAudit_schema_object_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#sql_operation.
+PlSqlParserVisitor.prototype.visitSql_operation = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#auditing_on_clause.
+PlSqlParserVisitor.prototype.visitAuditing_on_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#model_name.
+PlSqlParserVisitor.prototype.visitModel_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#object_name.
+PlSqlParserVisitor.prototype.visitObject_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#profile_name.
+PlSqlParserVisitor.prototype.visitProfile_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#sql_statement_shortcut.
+PlSqlParserVisitor.prototype.visitSql_statement_shortcut = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#drop_index.
+PlSqlParserVisitor.prototype.visitDrop_index = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#rename_object.
+PlSqlParserVisitor.prototype.visitRename_object = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#grant_statement.
+PlSqlParserVisitor.prototype.visitGrant_statement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#container_clause.
+PlSqlParserVisitor.prototype.visitContainer_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#create_directory.
+PlSqlParserVisitor.prototype.visitCreate_directory = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#directory_name.
+PlSqlParserVisitor.prototype.visitDirectory_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#directory_path.
+PlSqlParserVisitor.prototype.visitDirectory_path = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#alter_library.
+PlSqlParserVisitor.prototype.visitAlter_library = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#library_editionable.
+PlSqlParserVisitor.prototype.visitLibrary_editionable = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#library_debug.
+PlSqlParserVisitor.prototype.visitLibrary_debug = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#compiler_parameters_clause.
+PlSqlParserVisitor.prototype.visitCompiler_parameters_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#parameter_value.
+PlSqlParserVisitor.prototype.visitParameter_value = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#library_name.
+PlSqlParserVisitor.prototype.visitLibrary_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#alter_view.
+PlSqlParserVisitor.prototype.visitAlter_view = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#alter_view_editionable.
+PlSqlParserVisitor.prototype.visitAlter_view_editionable = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#create_view.
+PlSqlParserVisitor.prototype.visitCreate_view = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#view_options.
+PlSqlParserVisitor.prototype.visitView_options = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#view_alias_constraint.
+PlSqlParserVisitor.prototype.visitView_alias_constraint = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#object_view_clause.
+PlSqlParserVisitor.prototype.visitObject_view_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#inline_constraint.
+PlSqlParserVisitor.prototype.visitInline_constraint = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#inline_ref_constraint.
+PlSqlParserVisitor.prototype.visitInline_ref_constraint = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#out_of_line_ref_constraint.
+PlSqlParserVisitor.prototype.visitOut_of_line_ref_constraint = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#out_of_line_constraint.
+PlSqlParserVisitor.prototype.visitOut_of_line_constraint = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#constraint_state.
+PlSqlParserVisitor.prototype.visitConstraint_state = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#alter_tablespace.
+PlSqlParserVisitor.prototype.visitAlter_tablespace = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#datafile_tempfile_clauses.
+PlSqlParserVisitor.prototype.visitDatafile_tempfile_clauses = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#tablespace_logging_clauses.
+PlSqlParserVisitor.prototype.visitTablespace_logging_clauses = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#tablespace_group_clause.
+PlSqlParserVisitor.prototype.visitTablespace_group_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#tablespace_group_name.
+PlSqlParserVisitor.prototype.visitTablespace_group_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#tablespace_state_clauses.
+PlSqlParserVisitor.prototype.visitTablespace_state_clauses = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#flashback_mode_clause.
+PlSqlParserVisitor.prototype.visitFlashback_mode_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#new_tablespace_name.
+PlSqlParserVisitor.prototype.visitNew_tablespace_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#create_tablespace.
+PlSqlParserVisitor.prototype.visitCreate_tablespace = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#permanent_tablespace_clause.
+PlSqlParserVisitor.prototype.visitPermanent_tablespace_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#tablespace_encryption_spec.
+PlSqlParserVisitor.prototype.visitTablespace_encryption_spec = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#logging_clause.
+PlSqlParserVisitor.prototype.visitLogging_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#extent_management_clause.
+PlSqlParserVisitor.prototype.visitExtent_management_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#segment_management_clause.
+PlSqlParserVisitor.prototype.visitSegment_management_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#temporary_tablespace_clause.
+PlSqlParserVisitor.prototype.visitTemporary_tablespace_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#undo_tablespace_clause.
+PlSqlParserVisitor.prototype.visitUndo_tablespace_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#tablespace_retention_clause.
+PlSqlParserVisitor.prototype.visitTablespace_retention_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#datafile_specification.
+PlSqlParserVisitor.prototype.visitDatafile_specification = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#tempfile_specification.
+PlSqlParserVisitor.prototype.visitTempfile_specification = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#datafile_tempfile_spec.
+PlSqlParserVisitor.prototype.visitDatafile_tempfile_spec = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#redo_log_file_spec.
+PlSqlParserVisitor.prototype.visitRedo_log_file_spec = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#autoextend_clause.
+PlSqlParserVisitor.prototype.visitAutoextend_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#maxsize_clause.
+PlSqlParserVisitor.prototype.visitMaxsize_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#build_clause.
+PlSqlParserVisitor.prototype.visitBuild_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#parallel_clause.
+PlSqlParserVisitor.prototype.visitParallel_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#alter_materialized_view.
+PlSqlParserVisitor.prototype.visitAlter_materialized_view = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#alter_mv_option1.
+PlSqlParserVisitor.prototype.visitAlter_mv_option1 = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#alter_mv_refresh.
+PlSqlParserVisitor.prototype.visitAlter_mv_refresh = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#rollback_segment.
+PlSqlParserVisitor.prototype.visitRollback_segment = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#modify_mv_column_clause.
+PlSqlParserVisitor.prototype.visitModify_mv_column_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#alter_materialized_view_log.
+PlSqlParserVisitor.prototype.visitAlter_materialized_view_log = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#add_mv_log_column_clause.
+PlSqlParserVisitor.prototype.visitAdd_mv_log_column_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#move_mv_log_clause.
+PlSqlParserVisitor.prototype.visitMove_mv_log_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#mv_log_augmentation.
+PlSqlParserVisitor.prototype.visitMv_log_augmentation = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#datetime_expr.
+PlSqlParserVisitor.prototype.visitDatetime_expr = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#interval_expr.
+PlSqlParserVisitor.prototype.visitInterval_expr = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#synchronous_or_asynchronous.
+PlSqlParserVisitor.prototype.visitSynchronous_or_asynchronous = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#including_or_excluding.
+PlSqlParserVisitor.prototype.visitIncluding_or_excluding = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#create_materialized_view_log.
+PlSqlParserVisitor.prototype.visitCreate_materialized_view_log = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#new_values_clause.
+PlSqlParserVisitor.prototype.visitNew_values_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#mv_log_purge_clause.
+PlSqlParserVisitor.prototype.visitMv_log_purge_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#create_materialized_view.
+PlSqlParserVisitor.prototype.visitCreate_materialized_view = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#create_mv_refresh.
+PlSqlParserVisitor.prototype.visitCreate_mv_refresh = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#create_context.
+PlSqlParserVisitor.prototype.visitCreate_context = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#oracle_namespace.
+PlSqlParserVisitor.prototype.visitOracle_namespace = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#create_cluster.
+PlSqlParserVisitor.prototype.visitCreate_cluster = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#create_table.
+PlSqlParserVisitor.prototype.visitCreate_table = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#xmltype_table.
+PlSqlParserVisitor.prototype.visitXmltype_table = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#xmltype_virtual_columns.
+PlSqlParserVisitor.prototype.visitXmltype_virtual_columns = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#xmltype_column_properties.
+PlSqlParserVisitor.prototype.visitXmltype_column_properties = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#xmltype_storage.
+PlSqlParserVisitor.prototype.visitXmltype_storage = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#xmlschema_spec.
+PlSqlParserVisitor.prototype.visitXmlschema_spec = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#object_table.
+PlSqlParserVisitor.prototype.visitObject_table = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#oid_index_clause.
+PlSqlParserVisitor.prototype.visitOid_index_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#oid_clause.
+PlSqlParserVisitor.prototype.visitOid_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#object_properties.
+PlSqlParserVisitor.prototype.visitObject_properties = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#object_table_substitution.
+PlSqlParserVisitor.prototype.visitObject_table_substitution = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#relational_table.
+PlSqlParserVisitor.prototype.visitRelational_table = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#relational_property.
+PlSqlParserVisitor.prototype.visitRelational_property = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#table_partitioning_clauses.
+PlSqlParserVisitor.prototype.visitTable_partitioning_clauses = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#range_partitions.
+PlSqlParserVisitor.prototype.visitRange_partitions = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#list_partitions.
+PlSqlParserVisitor.prototype.visitList_partitions = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#hash_partitions.
+PlSqlParserVisitor.prototype.visitHash_partitions = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#individual_hash_partitions.
+PlSqlParserVisitor.prototype.visitIndividual_hash_partitions = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#hash_partitions_by_quantity.
+PlSqlParserVisitor.prototype.visitHash_partitions_by_quantity = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#hash_partition_quantity.
+PlSqlParserVisitor.prototype.visitHash_partition_quantity = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#composite_range_partitions.
+PlSqlParserVisitor.prototype.visitComposite_range_partitions = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#composite_list_partitions.
+PlSqlParserVisitor.prototype.visitComposite_list_partitions = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#composite_hash_partitions.
+PlSqlParserVisitor.prototype.visitComposite_hash_partitions = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#reference_partitioning.
+PlSqlParserVisitor.prototype.visitReference_partitioning = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#reference_partition_desc.
+PlSqlParserVisitor.prototype.visitReference_partition_desc = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#system_partitioning.
+PlSqlParserVisitor.prototype.visitSystem_partitioning = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#range_partition_desc.
+PlSqlParserVisitor.prototype.visitRange_partition_desc = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#list_partition_desc.
+PlSqlParserVisitor.prototype.visitList_partition_desc = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#subpartition_template.
+PlSqlParserVisitor.prototype.visitSubpartition_template = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#hash_subpartition_quantity.
+PlSqlParserVisitor.prototype.visitHash_subpartition_quantity = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#subpartition_by_range.
+PlSqlParserVisitor.prototype.visitSubpartition_by_range = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#subpartition_by_list.
+PlSqlParserVisitor.prototype.visitSubpartition_by_list = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#subpartition_by_hash.
+PlSqlParserVisitor.prototype.visitSubpartition_by_hash = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#subpartition_name.
+PlSqlParserVisitor.prototype.visitSubpartition_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#range_subpartition_desc.
+PlSqlParserVisitor.prototype.visitRange_subpartition_desc = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#list_subpartition_desc.
+PlSqlParserVisitor.prototype.visitList_subpartition_desc = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#individual_hash_subparts.
+PlSqlParserVisitor.prototype.visitIndividual_hash_subparts = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#hash_subparts_by_quantity.
+PlSqlParserVisitor.prototype.visitHash_subparts_by_quantity = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#range_values_clause.
+PlSqlParserVisitor.prototype.visitRange_values_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#list_values_clause.
+PlSqlParserVisitor.prototype.visitList_values_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#table_partition_description.
+PlSqlParserVisitor.prototype.visitTable_partition_description = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#partitioning_storage_clause.
+PlSqlParserVisitor.prototype.visitPartitioning_storage_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#lob_partitioning_storage.
+PlSqlParserVisitor.prototype.visitLob_partitioning_storage = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#datatype_null_enable.
+PlSqlParserVisitor.prototype.visitDatatype_null_enable = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#size_clause.
+PlSqlParserVisitor.prototype.visitSize_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#table_compression.
+PlSqlParserVisitor.prototype.visitTable_compression = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#physical_attributes_clause.
+PlSqlParserVisitor.prototype.visitPhysical_attributes_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#storage_clause.
+PlSqlParserVisitor.prototype.visitStorage_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#deferred_segment_creation.
+PlSqlParserVisitor.prototype.visitDeferred_segment_creation = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#segment_attributes_clause.
+PlSqlParserVisitor.prototype.visitSegment_attributes_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#physical_properties.
+PlSqlParserVisitor.prototype.visitPhysical_properties = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#row_movement_clause.
+PlSqlParserVisitor.prototype.visitRow_movement_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#flashback_archive_clause.
+PlSqlParserVisitor.prototype.visitFlashback_archive_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#log_grp.
+PlSqlParserVisitor.prototype.visitLog_grp = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#supplemental_table_logging.
+PlSqlParserVisitor.prototype.visitSupplemental_table_logging = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#supplemental_log_grp_clause.
+PlSqlParserVisitor.prototype.visitSupplemental_log_grp_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#supplemental_id_key_clause.
+PlSqlParserVisitor.prototype.visitSupplemental_id_key_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#allocate_extent_clause.
+PlSqlParserVisitor.prototype.visitAllocate_extent_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#deallocate_unused_clause.
+PlSqlParserVisitor.prototype.visitDeallocate_unused_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#shrink_clause.
+PlSqlParserVisitor.prototype.visitShrink_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#records_per_block_clause.
+PlSqlParserVisitor.prototype.visitRecords_per_block_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#upgrade_table_clause.
+PlSqlParserVisitor.prototype.visitUpgrade_table_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#drop_table.
+PlSqlParserVisitor.prototype.visitDrop_table = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#drop_view.
+PlSqlParserVisitor.prototype.visitDrop_view = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#comment_on_column.
+PlSqlParserVisitor.prototype.visitComment_on_column = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#enable_or_disable.
+PlSqlParserVisitor.prototype.visitEnable_or_disable = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#allow_or_disallow.
+PlSqlParserVisitor.prototype.visitAllow_or_disallow = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#create_synonym.
+PlSqlParserVisitor.prototype.visitCreate_synonym = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#comment_on_table.
+PlSqlParserVisitor.prototype.visitComment_on_table = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#alter_cluster.
+PlSqlParserVisitor.prototype.visitAlter_cluster = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#cache_or_nocache.
+PlSqlParserVisitor.prototype.visitCache_or_nocache = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#database_name.
+PlSqlParserVisitor.prototype.visitDatabase_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#alter_database.
+PlSqlParserVisitor.prototype.visitAlter_database = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#startup_clauses.
+PlSqlParserVisitor.prototype.visitStartup_clauses = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#resetlogs_or_noresetlogs.
+PlSqlParserVisitor.prototype.visitResetlogs_or_noresetlogs = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#upgrade_or_downgrade.
+PlSqlParserVisitor.prototype.visitUpgrade_or_downgrade = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#recovery_clauses.
+PlSqlParserVisitor.prototype.visitRecovery_clauses = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#begin_or_end.
+PlSqlParserVisitor.prototype.visitBegin_or_end = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#general_recovery.
+PlSqlParserVisitor.prototype.visitGeneral_recovery = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#full_database_recovery.
+PlSqlParserVisitor.prototype.visitFull_database_recovery = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#partial_database_recovery.
+PlSqlParserVisitor.prototype.visitPartial_database_recovery = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#partial_database_recovery_10g.
+PlSqlParserVisitor.prototype.visitPartial_database_recovery_10g = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#managed_standby_recovery.
+PlSqlParserVisitor.prototype.visitManaged_standby_recovery = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#db_name.
+PlSqlParserVisitor.prototype.visitDb_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#database_file_clauses.
+PlSqlParserVisitor.prototype.visitDatabase_file_clauses = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#create_datafile_clause.
+PlSqlParserVisitor.prototype.visitCreate_datafile_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#alter_datafile_clause.
+PlSqlParserVisitor.prototype.visitAlter_datafile_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#alter_tempfile_clause.
+PlSqlParserVisitor.prototype.visitAlter_tempfile_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#logfile_clauses.
+PlSqlParserVisitor.prototype.visitLogfile_clauses = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#add_logfile_clauses.
+PlSqlParserVisitor.prototype.visitAdd_logfile_clauses = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#log_file_group.
+PlSqlParserVisitor.prototype.visitLog_file_group = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#drop_logfile_clauses.
+PlSqlParserVisitor.prototype.visitDrop_logfile_clauses = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#switch_logfile_clause.
+PlSqlParserVisitor.prototype.visitSwitch_logfile_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#supplemental_db_logging.
+PlSqlParserVisitor.prototype.visitSupplemental_db_logging = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#add_or_drop.
+PlSqlParserVisitor.prototype.visitAdd_or_drop = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#supplemental_plsql_clause.
+PlSqlParserVisitor.prototype.visitSupplemental_plsql_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#logfile_descriptor.
+PlSqlParserVisitor.prototype.visitLogfile_descriptor = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#controlfile_clauses.
+PlSqlParserVisitor.prototype.visitControlfile_clauses = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#trace_file_clause.
+PlSqlParserVisitor.prototype.visitTrace_file_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#standby_database_clauses.
+PlSqlParserVisitor.prototype.visitStandby_database_clauses = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#activate_standby_db_clause.
+PlSqlParserVisitor.prototype.visitActivate_standby_db_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#maximize_standby_db_clause.
+PlSqlParserVisitor.prototype.visitMaximize_standby_db_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#register_logfile_clause.
+PlSqlParserVisitor.prototype.visitRegister_logfile_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#commit_switchover_clause.
+PlSqlParserVisitor.prototype.visitCommit_switchover_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#start_standby_clause.
+PlSqlParserVisitor.prototype.visitStart_standby_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#stop_standby_clause.
+PlSqlParserVisitor.prototype.visitStop_standby_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#convert_database_clause.
+PlSqlParserVisitor.prototype.visitConvert_database_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#default_settings_clause.
+PlSqlParserVisitor.prototype.visitDefault_settings_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#set_time_zone_clause.
+PlSqlParserVisitor.prototype.visitSet_time_zone_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#instance_clauses.
+PlSqlParserVisitor.prototype.visitInstance_clauses = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#security_clause.
+PlSqlParserVisitor.prototype.visitSecurity_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#domain.
+PlSqlParserVisitor.prototype.visitDomain = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#database.
+PlSqlParserVisitor.prototype.visitDatabase = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#edition_name.
+PlSqlParserVisitor.prototype.visitEdition_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#filenumber.
+PlSqlParserVisitor.prototype.visitFilenumber = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#filename.
+PlSqlParserVisitor.prototype.visitFilename = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#alter_table.
+PlSqlParserVisitor.prototype.visitAlter_table = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#alter_table_properties.
+PlSqlParserVisitor.prototype.visitAlter_table_properties = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#alter_table_properties_1.
+PlSqlParserVisitor.prototype.visitAlter_table_properties_1 = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#alter_iot_clauses.
+PlSqlParserVisitor.prototype.visitAlter_iot_clauses = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#alter_mapping_table_clause.
+PlSqlParserVisitor.prototype.visitAlter_mapping_table_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#alter_overflow_clause.
+PlSqlParserVisitor.prototype.visitAlter_overflow_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#add_overflow_clause.
+PlSqlParserVisitor.prototype.visitAdd_overflow_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#enable_disable_clause.
+PlSqlParserVisitor.prototype.visitEnable_disable_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#using_index_clause.
+PlSqlParserVisitor.prototype.visitUsing_index_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#index_attributes.
+PlSqlParserVisitor.prototype.visitIndex_attributes = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#sort_or_nosort.
+PlSqlParserVisitor.prototype.visitSort_or_nosort = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#exceptions_clause.
+PlSqlParserVisitor.prototype.visitExceptions_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#move_table_clause.
+PlSqlParserVisitor.prototype.visitMove_table_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#index_org_table_clause.
+PlSqlParserVisitor.prototype.visitIndex_org_table_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#mapping_table_clause.
+PlSqlParserVisitor.prototype.visitMapping_table_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#key_compression.
+PlSqlParserVisitor.prototype.visitKey_compression = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#index_org_overflow_clause.
+PlSqlParserVisitor.prototype.visitIndex_org_overflow_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#column_clauses.
+PlSqlParserVisitor.prototype.visitColumn_clauses = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#modify_collection_retrieval.
+PlSqlParserVisitor.prototype.visitModify_collection_retrieval = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#collection_item.
+PlSqlParserVisitor.prototype.visitCollection_item = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#rename_column_clause.
+PlSqlParserVisitor.prototype.visitRename_column_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#old_column_name.
+PlSqlParserVisitor.prototype.visitOld_column_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#new_column_name.
+PlSqlParserVisitor.prototype.visitNew_column_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#add_modify_drop_column_clauses.
+PlSqlParserVisitor.prototype.visitAdd_modify_drop_column_clauses = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#drop_column_clause.
+PlSqlParserVisitor.prototype.visitDrop_column_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#modify_column_clauses.
+PlSqlParserVisitor.prototype.visitModify_column_clauses = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#modify_col_properties.
+PlSqlParserVisitor.prototype.visitModify_col_properties = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#modify_col_substitutable.
+PlSqlParserVisitor.prototype.visitModify_col_substitutable = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#add_column_clause.
+PlSqlParserVisitor.prototype.visitAdd_column_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#alter_varray_col_properties.
+PlSqlParserVisitor.prototype.visitAlter_varray_col_properties = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#varray_col_properties.
+PlSqlParserVisitor.prototype.visitVarray_col_properties = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#varray_storage_clause.
+PlSqlParserVisitor.prototype.visitVarray_storage_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#lob_segname.
+PlSqlParserVisitor.prototype.visitLob_segname = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#lob_item.
+PlSqlParserVisitor.prototype.visitLob_item = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#lob_storage_parameters.
+PlSqlParserVisitor.prototype.visitLob_storage_parameters = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#lob_storage_clause.
+PlSqlParserVisitor.prototype.visitLob_storage_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#modify_lob_storage_clause.
+PlSqlParserVisitor.prototype.visitModify_lob_storage_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#modify_lob_parameters.
+PlSqlParserVisitor.prototype.visitModify_lob_parameters = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#lob_parameters.
+PlSqlParserVisitor.prototype.visitLob_parameters = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#lob_deduplicate_clause.
+PlSqlParserVisitor.prototype.visitLob_deduplicate_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#lob_compression_clause.
+PlSqlParserVisitor.prototype.visitLob_compression_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#lob_retention_clause.
+PlSqlParserVisitor.prototype.visitLob_retention_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#encryption_spec.
+PlSqlParserVisitor.prototype.visitEncryption_spec = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#tablespace.
+PlSqlParserVisitor.prototype.visitTablespace = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#varray_item.
+PlSqlParserVisitor.prototype.visitVarray_item = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#column_properties.
+PlSqlParserVisitor.prototype.visitColumn_properties = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#period_definition.
+PlSqlParserVisitor.prototype.visitPeriod_definition = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#start_time_column.
+PlSqlParserVisitor.prototype.visitStart_time_column = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#end_time_column.
+PlSqlParserVisitor.prototype.visitEnd_time_column = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#column_definition.
+PlSqlParserVisitor.prototype.visitColumn_definition = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#virtual_column_definition.
+PlSqlParserVisitor.prototype.visitVirtual_column_definition = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#autogenerated_sequence_definition.
+PlSqlParserVisitor.prototype.visitAutogenerated_sequence_definition = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#out_of_line_part_storage.
+PlSqlParserVisitor.prototype.visitOut_of_line_part_storage = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#nested_table_col_properties.
+PlSqlParserVisitor.prototype.visitNested_table_col_properties = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#nested_item.
+PlSqlParserVisitor.prototype.visitNested_item = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#substitutable_column_clause.
+PlSqlParserVisitor.prototype.visitSubstitutable_column_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#partition_name.
+PlSqlParserVisitor.prototype.visitPartition_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#supplemental_logging_props.
+PlSqlParserVisitor.prototype.visitSupplemental_logging_props = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#column_or_attribute.
+PlSqlParserVisitor.prototype.visitColumn_or_attribute = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#object_type_col_properties.
+PlSqlParserVisitor.prototype.visitObject_type_col_properties = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#constraint_clauses.
+PlSqlParserVisitor.prototype.visitConstraint_clauses = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#old_constraint_name.
+PlSqlParserVisitor.prototype.visitOld_constraint_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#new_constraint_name.
+PlSqlParserVisitor.prototype.visitNew_constraint_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#drop_constraint_clause.
+PlSqlParserVisitor.prototype.visitDrop_constraint_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#drop_primary_key_or_unique_or_generic_clause.
+PlSqlParserVisitor.prototype.visitDrop_primary_key_or_unique_or_generic_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#add_constraint.
+PlSqlParserVisitor.prototype.visitAdd_constraint = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#add_constraint_clause.
+PlSqlParserVisitor.prototype.visitAdd_constraint_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#check_constraint.
+PlSqlParserVisitor.prototype.visitCheck_constraint = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#drop_constraint.
+PlSqlParserVisitor.prototype.visitDrop_constraint = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#enable_constraint.
+PlSqlParserVisitor.prototype.visitEnable_constraint = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#disable_constraint.
+PlSqlParserVisitor.prototype.visitDisable_constraint = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#foreign_key_clause.
+PlSqlParserVisitor.prototype.visitForeign_key_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#references_clause.
+PlSqlParserVisitor.prototype.visitReferences_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#on_delete_clause.
+PlSqlParserVisitor.prototype.visitOn_delete_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#unique_key_clause.
+PlSqlParserVisitor.prototype.visitUnique_key_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#primary_key_clause.
+PlSqlParserVisitor.prototype.visitPrimary_key_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#anonymous_block.
+PlSqlParserVisitor.prototype.visitAnonymous_block = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#invoker_rights_clause.
+PlSqlParserVisitor.prototype.visitInvoker_rights_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#call_spec.
+PlSqlParserVisitor.prototype.visitCall_spec = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#java_spec.
+PlSqlParserVisitor.prototype.visitJava_spec = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#c_spec.
+PlSqlParserVisitor.prototype.visitC_spec = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#c_agent_in_clause.
+PlSqlParserVisitor.prototype.visitC_agent_in_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#c_parameters_clause.
+PlSqlParserVisitor.prototype.visitC_parameters_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#parameter.
+PlSqlParserVisitor.prototype.visitParameter = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#default_value_part.
+PlSqlParserVisitor.prototype.visitDefault_value_part = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#seq_of_declare_specs.
+PlSqlParserVisitor.prototype.visitSeq_of_declare_specs = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#declare_spec.
+PlSqlParserVisitor.prototype.visitDeclare_spec = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#variable_declaration.
+PlSqlParserVisitor.prototype.visitVariable_declaration = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#subtype_declaration.
+PlSqlParserVisitor.prototype.visitSubtype_declaration = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#cursor_declaration.
+PlSqlParserVisitor.prototype.visitCursor_declaration = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#parameter_spec.
+PlSqlParserVisitor.prototype.visitParameter_spec = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#exception_declaration.
+PlSqlParserVisitor.prototype.visitException_declaration = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#pragma_declaration.
+PlSqlParserVisitor.prototype.visitPragma_declaration = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#record_type_def.
+PlSqlParserVisitor.prototype.visitRecord_type_def = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#field_spec.
+PlSqlParserVisitor.prototype.visitField_spec = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#ref_cursor_type_def.
+PlSqlParserVisitor.prototype.visitRef_cursor_type_def = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#type_declaration.
+PlSqlParserVisitor.prototype.visitType_declaration = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#table_type_def.
+PlSqlParserVisitor.prototype.visitTable_type_def = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#table_indexed_by_part.
+PlSqlParserVisitor.prototype.visitTable_indexed_by_part = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#varray_type_def.
+PlSqlParserVisitor.prototype.visitVarray_type_def = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#seq_of_statements.
+PlSqlParserVisitor.prototype.visitSeq_of_statements = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#label_declaration.
+PlSqlParserVisitor.prototype.visitLabel_declaration = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#statement.
+PlSqlParserVisitor.prototype.visitStatement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#swallow_to_semi.
+PlSqlParserVisitor.prototype.visitSwallow_to_semi = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#assignment_statement.
+PlSqlParserVisitor.prototype.visitAssignment_statement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#continue_statement.
+PlSqlParserVisitor.prototype.visitContinue_statement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#exit_statement.
+PlSqlParserVisitor.prototype.visitExit_statement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#goto_statement.
+PlSqlParserVisitor.prototype.visitGoto_statement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#if_statement.
+PlSqlParserVisitor.prototype.visitIf_statement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#elsif_part.
+PlSqlParserVisitor.prototype.visitElsif_part = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#else_part.
+PlSqlParserVisitor.prototype.visitElse_part = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#loop_statement.
+PlSqlParserVisitor.prototype.visitLoop_statement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#cursor_loop_param.
+PlSqlParserVisitor.prototype.visitCursor_loop_param = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#forall_statement.
+PlSqlParserVisitor.prototype.visitForall_statement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#bounds_clause.
+PlSqlParserVisitor.prototype.visitBounds_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#between_bound.
+PlSqlParserVisitor.prototype.visitBetween_bound = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#lower_bound.
+PlSqlParserVisitor.prototype.visitLower_bound = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#upper_bound.
+PlSqlParserVisitor.prototype.visitUpper_bound = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#null_statement.
+PlSqlParserVisitor.prototype.visitNull_statement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#raise_statement.
+PlSqlParserVisitor.prototype.visitRaise_statement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#return_statement.
+PlSqlParserVisitor.prototype.visitReturn_statement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#function_call.
+PlSqlParserVisitor.prototype.visitFunction_call = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#procedure_call.
+PlSqlParserVisitor.prototype.visitProcedure_call = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#pipe_row_statement.
+PlSqlParserVisitor.prototype.visitPipe_row_statement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#body.
+PlSqlParserVisitor.prototype.visitBody = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#exception_handler.
+PlSqlParserVisitor.prototype.visitException_handler = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#trigger_block.
+PlSqlParserVisitor.prototype.visitTrigger_block = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#block.
+PlSqlParserVisitor.prototype.visitBlock = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#sql_statement.
+PlSqlParserVisitor.prototype.visitSql_statement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#execute_immediate.
+PlSqlParserVisitor.prototype.visitExecute_immediate = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#dynamic_returning_clause.
+PlSqlParserVisitor.prototype.visitDynamic_returning_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#data_manipulation_language_statements.
+PlSqlParserVisitor.prototype.visitData_manipulation_language_statements = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#cursor_manipulation_statements.
+PlSqlParserVisitor.prototype.visitCursor_manipulation_statements = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#close_statement.
+PlSqlParserVisitor.prototype.visitClose_statement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#open_statement.
+PlSqlParserVisitor.prototype.visitOpen_statement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#fetch_statement.
+PlSqlParserVisitor.prototype.visitFetch_statement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#open_for_statement.
+PlSqlParserVisitor.prototype.visitOpen_for_statement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#transaction_control_statements.
+PlSqlParserVisitor.prototype.visitTransaction_control_statements = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#set_transaction_command.
+PlSqlParserVisitor.prototype.visitSet_transaction_command = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#set_constraint_command.
+PlSqlParserVisitor.prototype.visitSet_constraint_command = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#commit_statement.
+PlSqlParserVisitor.prototype.visitCommit_statement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#write_clause.
+PlSqlParserVisitor.prototype.visitWrite_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#rollback_statement.
+PlSqlParserVisitor.prototype.visitRollback_statement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#savepoint_statement.
+PlSqlParserVisitor.prototype.visitSavepoint_statement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#explain_statement.
+PlSqlParserVisitor.prototype.visitExplain_statement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#select_only_statement.
+PlSqlParserVisitor.prototype.visitSelect_only_statement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#select_statement.
+PlSqlParserVisitor.prototype.visitSelect_statement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#subquery_factoring_clause.
+PlSqlParserVisitor.prototype.visitSubquery_factoring_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#factoring_element.
+PlSqlParserVisitor.prototype.visitFactoring_element = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#search_clause.
+PlSqlParserVisitor.prototype.visitSearch_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#cycle_clause.
+PlSqlParserVisitor.prototype.visitCycle_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#subquery.
+PlSqlParserVisitor.prototype.visitSubquery = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#subquery_basic_elements.
+PlSqlParserVisitor.prototype.visitSubquery_basic_elements = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#subquery_operation_part.
+PlSqlParserVisitor.prototype.visitSubquery_operation_part = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#query_block.
+PlSqlParserVisitor.prototype.visitQuery_block = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#selected_list.
+PlSqlParserVisitor.prototype.visitSelected_list = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#from_clause.
+PlSqlParserVisitor.prototype.visitFrom_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#select_list_elements.
+PlSqlParserVisitor.prototype.visitSelect_list_elements = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#table_ref_list.
+PlSqlParserVisitor.prototype.visitTable_ref_list = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#table_ref.
+PlSqlParserVisitor.prototype.visitTable_ref = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#table_ref_aux.
+PlSqlParserVisitor.prototype.visitTable_ref_aux = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#table_ref_aux_internal_one.
+PlSqlParserVisitor.prototype.visitTable_ref_aux_internal_one = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#table_ref_aux_internal_two.
+PlSqlParserVisitor.prototype.visitTable_ref_aux_internal_two = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#table_ref_aux_internal_three.
+PlSqlParserVisitor.prototype.visitTable_ref_aux_internal_three = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#join_clause.
+PlSqlParserVisitor.prototype.visitJoin_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#join_on_part.
+PlSqlParserVisitor.prototype.visitJoin_on_part = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#join_using_part.
+PlSqlParserVisitor.prototype.visitJoin_using_part = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#outer_join_type.
+PlSqlParserVisitor.prototype.visitOuter_join_type = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#query_partition_clause.
+PlSqlParserVisitor.prototype.visitQuery_partition_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#flashback_query_clause.
+PlSqlParserVisitor.prototype.visitFlashback_query_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#pivot_clause.
+PlSqlParserVisitor.prototype.visitPivot_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#pivot_element.
+PlSqlParserVisitor.prototype.visitPivot_element = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#pivot_for_clause.
+PlSqlParserVisitor.prototype.visitPivot_for_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#pivot_in_clause.
+PlSqlParserVisitor.prototype.visitPivot_in_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#pivot_in_clause_element.
+PlSqlParserVisitor.prototype.visitPivot_in_clause_element = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#pivot_in_clause_elements.
+PlSqlParserVisitor.prototype.visitPivot_in_clause_elements = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#unpivot_clause.
+PlSqlParserVisitor.prototype.visitUnpivot_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#unpivot_in_clause.
+PlSqlParserVisitor.prototype.visitUnpivot_in_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#unpivot_in_elements.
+PlSqlParserVisitor.prototype.visitUnpivot_in_elements = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#hierarchical_query_clause.
+PlSqlParserVisitor.prototype.visitHierarchical_query_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#start_part.
+PlSqlParserVisitor.prototype.visitStart_part = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#group_by_clause.
+PlSqlParserVisitor.prototype.visitGroup_by_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#group_by_elements.
+PlSqlParserVisitor.prototype.visitGroup_by_elements = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#rollup_cube_clause.
+PlSqlParserVisitor.prototype.visitRollup_cube_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#grouping_sets_clause.
+PlSqlParserVisitor.prototype.visitGrouping_sets_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#grouping_sets_elements.
+PlSqlParserVisitor.prototype.visitGrouping_sets_elements = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#having_clause.
+PlSqlParserVisitor.prototype.visitHaving_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#model_clause.
+PlSqlParserVisitor.prototype.visitModel_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#cell_reference_options.
+PlSqlParserVisitor.prototype.visitCell_reference_options = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#return_rows_clause.
+PlSqlParserVisitor.prototype.visitReturn_rows_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#reference_model.
+PlSqlParserVisitor.prototype.visitReference_model = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#main_model.
+PlSqlParserVisitor.prototype.visitMain_model = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#model_column_clauses.
+PlSqlParserVisitor.prototype.visitModel_column_clauses = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#model_column_partition_part.
+PlSqlParserVisitor.prototype.visitModel_column_partition_part = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#model_column_list.
+PlSqlParserVisitor.prototype.visitModel_column_list = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#model_column.
+PlSqlParserVisitor.prototype.visitModel_column = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#model_rules_clause.
+PlSqlParserVisitor.prototype.visitModel_rules_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#model_rules_part.
+PlSqlParserVisitor.prototype.visitModel_rules_part = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#model_rules_element.
+PlSqlParserVisitor.prototype.visitModel_rules_element = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#cell_assignment.
+PlSqlParserVisitor.prototype.visitCell_assignment = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#model_iterate_clause.
+PlSqlParserVisitor.prototype.visitModel_iterate_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#until_part.
+PlSqlParserVisitor.prototype.visitUntil_part = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#order_by_clause.
+PlSqlParserVisitor.prototype.visitOrder_by_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#order_by_elements.
+PlSqlParserVisitor.prototype.visitOrder_by_elements = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#offset_clause.
+PlSqlParserVisitor.prototype.visitOffset_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#fetch_clause.
+PlSqlParserVisitor.prototype.visitFetch_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#for_update_clause.
+PlSqlParserVisitor.prototype.visitFor_update_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#for_update_of_part.
+PlSqlParserVisitor.prototype.visitFor_update_of_part = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#for_update_options.
+PlSqlParserVisitor.prototype.visitFor_update_options = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#update_statement.
+PlSqlParserVisitor.prototype.visitUpdate_statement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#update_set_clause.
+PlSqlParserVisitor.prototype.visitUpdate_set_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#column_based_update_set_clause.
+PlSqlParserVisitor.prototype.visitColumn_based_update_set_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#delete_statement.
+PlSqlParserVisitor.prototype.visitDelete_statement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#insert_statement.
+PlSqlParserVisitor.prototype.visitInsert_statement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#single_table_insert.
+PlSqlParserVisitor.prototype.visitSingle_table_insert = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#multi_table_insert.
+PlSqlParserVisitor.prototype.visitMulti_table_insert = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#multi_table_element.
+PlSqlParserVisitor.prototype.visitMulti_table_element = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#conditional_insert_clause.
+PlSqlParserVisitor.prototype.visitConditional_insert_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#conditional_insert_when_part.
+PlSqlParserVisitor.prototype.visitConditional_insert_when_part = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#conditional_insert_else_part.
+PlSqlParserVisitor.prototype.visitConditional_insert_else_part = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#insert_into_clause.
+PlSqlParserVisitor.prototype.visitInsert_into_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#values_clause.
+PlSqlParserVisitor.prototype.visitValues_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#merge_statement.
+PlSqlParserVisitor.prototype.visitMerge_statement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#merge_update_clause.
+PlSqlParserVisitor.prototype.visitMerge_update_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#merge_element.
+PlSqlParserVisitor.prototype.visitMerge_element = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#merge_update_delete_part.
+PlSqlParserVisitor.prototype.visitMerge_update_delete_part = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#merge_insert_clause.
+PlSqlParserVisitor.prototype.visitMerge_insert_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#selected_tableview.
+PlSqlParserVisitor.prototype.visitSelected_tableview = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#lock_table_statement.
+PlSqlParserVisitor.prototype.visitLock_table_statement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#wait_nowait_part.
+PlSqlParserVisitor.prototype.visitWait_nowait_part = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#lock_table_element.
+PlSqlParserVisitor.prototype.visitLock_table_element = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#lock_mode.
+PlSqlParserVisitor.prototype.visitLock_mode = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#general_table_ref.
+PlSqlParserVisitor.prototype.visitGeneral_table_ref = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#static_returning_clause.
+PlSqlParserVisitor.prototype.visitStatic_returning_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#error_logging_clause.
+PlSqlParserVisitor.prototype.visitError_logging_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#error_logging_into_part.
+PlSqlParserVisitor.prototype.visitError_logging_into_part = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#error_logging_reject_part.
+PlSqlParserVisitor.prototype.visitError_logging_reject_part = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#dml_table_expression_clause.
+PlSqlParserVisitor.prototype.visitDml_table_expression_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#table_collection_expression.
+PlSqlParserVisitor.prototype.visitTable_collection_expression = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#subquery_restriction_clause.
+PlSqlParserVisitor.prototype.visitSubquery_restriction_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#sample_clause.
+PlSqlParserVisitor.prototype.visitSample_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#seed_part.
+PlSqlParserVisitor.prototype.visitSeed_part = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#condition.
+PlSqlParserVisitor.prototype.visitCondition = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#expressions.
+PlSqlParserVisitor.prototype.visitExpressions = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#expression.
+PlSqlParserVisitor.prototype.visitExpression = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#cursor_expression.
+PlSqlParserVisitor.prototype.visitCursor_expression = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#logical_expression.
+PlSqlParserVisitor.prototype.visitLogical_expression = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#unary_logical_expression.
+PlSqlParserVisitor.prototype.visitUnary_logical_expression = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#logical_operation.
+PlSqlParserVisitor.prototype.visitLogical_operation = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#multiset_expression.
+PlSqlParserVisitor.prototype.visitMultiset_expression = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#relational_expression.
+PlSqlParserVisitor.prototype.visitRelational_expression = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#compound_expression.
+PlSqlParserVisitor.prototype.visitCompound_expression = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#relational_operator.
+PlSqlParserVisitor.prototype.visitRelational_operator = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#in_elements.
+PlSqlParserVisitor.prototype.visitIn_elements = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#between_elements.
+PlSqlParserVisitor.prototype.visitBetween_elements = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#concatenation.
+PlSqlParserVisitor.prototype.visitConcatenation = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#interval_expression.
+PlSqlParserVisitor.prototype.visitInterval_expression = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#model_expression.
+PlSqlParserVisitor.prototype.visitModel_expression = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#model_expression_element.
+PlSqlParserVisitor.prototype.visitModel_expression_element = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#single_column_for_loop.
+PlSqlParserVisitor.prototype.visitSingle_column_for_loop = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#multi_column_for_loop.
+PlSqlParserVisitor.prototype.visitMulti_column_for_loop = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#unary_expression.
+PlSqlParserVisitor.prototype.visitUnary_expression = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#case_statement.
+PlSqlParserVisitor.prototype.visitCase_statement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#simple_case_statement.
+PlSqlParserVisitor.prototype.visitSimple_case_statement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#simple_case_when_part.
+PlSqlParserVisitor.prototype.visitSimple_case_when_part = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#searched_case_statement.
+PlSqlParserVisitor.prototype.visitSearched_case_statement = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#searched_case_when_part.
+PlSqlParserVisitor.prototype.visitSearched_case_when_part = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#case_else_part.
+PlSqlParserVisitor.prototype.visitCase_else_part = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#atom.
+PlSqlParserVisitor.prototype.visitAtom = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#quantified_expression.
+PlSqlParserVisitor.prototype.visitQuantified_expression = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#string_function.
+PlSqlParserVisitor.prototype.visitString_function = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#standard_function.
+PlSqlParserVisitor.prototype.visitStandard_function = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#literal.
+PlSqlParserVisitor.prototype.visitLiteral = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#numeric_function_wrapper.
+PlSqlParserVisitor.prototype.visitNumeric_function_wrapper = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#numeric_function.
+PlSqlParserVisitor.prototype.visitNumeric_function = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#other_function.
+PlSqlParserVisitor.prototype.visitOther_function = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#over_clause_keyword.
+PlSqlParserVisitor.prototype.visitOver_clause_keyword = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#within_or_over_clause_keyword.
+PlSqlParserVisitor.prototype.visitWithin_or_over_clause_keyword = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#standard_prediction_function_keyword.
+PlSqlParserVisitor.prototype.visitStandard_prediction_function_keyword = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#over_clause.
+PlSqlParserVisitor.prototype.visitOver_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#windowing_clause.
+PlSqlParserVisitor.prototype.visitWindowing_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#windowing_type.
+PlSqlParserVisitor.prototype.visitWindowing_type = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#windowing_elements.
+PlSqlParserVisitor.prototype.visitWindowing_elements = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#using_clause.
+PlSqlParserVisitor.prototype.visitUsing_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#using_element.
+PlSqlParserVisitor.prototype.visitUsing_element = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#collect_order_by_part.
+PlSqlParserVisitor.prototype.visitCollect_order_by_part = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#within_or_over_part.
+PlSqlParserVisitor.prototype.visitWithin_or_over_part = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#cost_matrix_clause.
+PlSqlParserVisitor.prototype.visitCost_matrix_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#xml_passing_clause.
+PlSqlParserVisitor.prototype.visitXml_passing_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#xml_attributes_clause.
+PlSqlParserVisitor.prototype.visitXml_attributes_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#xml_namespaces_clause.
+PlSqlParserVisitor.prototype.visitXml_namespaces_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#xml_table_column.
+PlSqlParserVisitor.prototype.visitXml_table_column = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#xml_general_default_part.
+PlSqlParserVisitor.prototype.visitXml_general_default_part = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#xml_multiuse_expression_element.
+PlSqlParserVisitor.prototype.visitXml_multiuse_expression_element = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#xmlroot_param_version_part.
+PlSqlParserVisitor.prototype.visitXmlroot_param_version_part = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#xmlroot_param_standalone_part.
+PlSqlParserVisitor.prototype.visitXmlroot_param_standalone_part = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#xmlserialize_param_enconding_part.
+PlSqlParserVisitor.prototype.visitXmlserialize_param_enconding_part = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#xmlserialize_param_version_part.
+PlSqlParserVisitor.prototype.visitXmlserialize_param_version_part = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#xmlserialize_param_ident_part.
+PlSqlParserVisitor.prototype.visitXmlserialize_param_ident_part = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#sql_plus_command.
+PlSqlParserVisitor.prototype.visitSql_plus_command = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#whenever_command.
+PlSqlParserVisitor.prototype.visitWhenever_command = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#set_command.
+PlSqlParserVisitor.prototype.visitSet_command = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#partition_extension_clause.
+PlSqlParserVisitor.prototype.visitPartition_extension_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#column_alias.
+PlSqlParserVisitor.prototype.visitColumn_alias = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#table_alias.
+PlSqlParserVisitor.prototype.visitTable_alias = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#where_clause.
+PlSqlParserVisitor.prototype.visitWhere_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#into_clause.
+PlSqlParserVisitor.prototype.visitInto_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#xml_column_name.
+PlSqlParserVisitor.prototype.visitXml_column_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#cost_class_name.
+PlSqlParserVisitor.prototype.visitCost_class_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#attribute_name.
+PlSqlParserVisitor.prototype.visitAttribute_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#savepoint_name.
+PlSqlParserVisitor.prototype.visitSavepoint_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#rollback_segment_name.
+PlSqlParserVisitor.prototype.visitRollback_segment_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#table_var_name.
+PlSqlParserVisitor.prototype.visitTable_var_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#schema_name.
+PlSqlParserVisitor.prototype.visitSchema_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#routine_name.
+PlSqlParserVisitor.prototype.visitRoutine_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#package_name.
+PlSqlParserVisitor.prototype.visitPackage_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#implementation_type_name.
+PlSqlParserVisitor.prototype.visitImplementation_type_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#parameter_name.
+PlSqlParserVisitor.prototype.visitParameter_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#reference_model_name.
+PlSqlParserVisitor.prototype.visitReference_model_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#main_model_name.
+PlSqlParserVisitor.prototype.visitMain_model_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#container_tableview_name.
+PlSqlParserVisitor.prototype.visitContainer_tableview_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#aggregate_function_name.
+PlSqlParserVisitor.prototype.visitAggregate_function_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#query_name.
+PlSqlParserVisitor.prototype.visitQuery_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#grantee_name.
+PlSqlParserVisitor.prototype.visitGrantee_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#role_name.
+PlSqlParserVisitor.prototype.visitRole_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#constraint_name.
+PlSqlParserVisitor.prototype.visitConstraint_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#label_name.
+PlSqlParserVisitor.prototype.visitLabel_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#type_name.
+PlSqlParserVisitor.prototype.visitType_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#sequence_name.
+PlSqlParserVisitor.prototype.visitSequence_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#exception_name.
+PlSqlParserVisitor.prototype.visitException_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#function_name.
+PlSqlParserVisitor.prototype.visitFunction_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#procedure_name.
+PlSqlParserVisitor.prototype.visitProcedure_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#trigger_name.
+PlSqlParserVisitor.prototype.visitTrigger_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#variable_name.
+PlSqlParserVisitor.prototype.visitVariable_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#index_name.
+PlSqlParserVisitor.prototype.visitIndex_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#cursor_name.
+PlSqlParserVisitor.prototype.visitCursor_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#record_name.
+PlSqlParserVisitor.prototype.visitRecord_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#collection_name.
+PlSqlParserVisitor.prototype.visitCollection_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#link_name.
+PlSqlParserVisitor.prototype.visitLink_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#column_name.
+PlSqlParserVisitor.prototype.visitColumn_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#tableview_name.
+PlSqlParserVisitor.prototype.visitTableview_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#xmltable.
+PlSqlParserVisitor.prototype.visitXmltable = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#char_set_name.
+PlSqlParserVisitor.prototype.visitChar_set_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#synonym_name.
+PlSqlParserVisitor.prototype.visitSynonym_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#schema_object_name.
+PlSqlParserVisitor.prototype.visitSchema_object_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#dir_object_name.
+PlSqlParserVisitor.prototype.visitDir_object_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#user_object_name.
+PlSqlParserVisitor.prototype.visitUser_object_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#grant_object_name.
+PlSqlParserVisitor.prototype.visitGrant_object_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#column_list.
+PlSqlParserVisitor.prototype.visitColumn_list = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#paren_column_list.
+PlSqlParserVisitor.prototype.visitParen_column_list = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#keep_clause.
+PlSqlParserVisitor.prototype.visitKeep_clause = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#function_argument.
+PlSqlParserVisitor.prototype.visitFunction_argument = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#function_argument_analytic.
+PlSqlParserVisitor.prototype.visitFunction_argument_analytic = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#function_argument_modeling.
+PlSqlParserVisitor.prototype.visitFunction_argument_modeling = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#respect_or_ignore_nulls.
+PlSqlParserVisitor.prototype.visitRespect_or_ignore_nulls = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#argument.
+PlSqlParserVisitor.prototype.visitArgument = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#type_spec.
+PlSqlParserVisitor.prototype.visitType_spec = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#datatype.
+PlSqlParserVisitor.prototype.visitDatatype = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#precision_part.
+PlSqlParserVisitor.prototype.visitPrecision_part = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#native_datatype_element.
+PlSqlParserVisitor.prototype.visitNative_datatype_element = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#bind_variable.
+PlSqlParserVisitor.prototype.visitBind_variable = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#general_element.
+PlSqlParserVisitor.prototype.visitGeneral_element = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#general_element_part.
+PlSqlParserVisitor.prototype.visitGeneral_element_part = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#table_element.
+PlSqlParserVisitor.prototype.visitTable_element = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#object_privilege.
+PlSqlParserVisitor.prototype.visitObject_privilege = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#system_privilege.
+PlSqlParserVisitor.prototype.visitSystem_privilege = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#constant.
+PlSqlParserVisitor.prototype.visitConstant = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#numeric.
+PlSqlParserVisitor.prototype.visitNumeric = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#numeric_negative.
+PlSqlParserVisitor.prototype.visitNumeric_negative = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#quoted_string.
+PlSqlParserVisitor.prototype.visitQuoted_string = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#identifier.
+PlSqlParserVisitor.prototype.visitIdentifier = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#id_expression.
+PlSqlParserVisitor.prototype.visitId_expression = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#outer_join_sign.
+PlSqlParserVisitor.prototype.visitOuter_join_sign = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#regular_id.
+PlSqlParserVisitor.prototype.visitRegular_id = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#non_reserved_keywords_in_12c.
+PlSqlParserVisitor.prototype.visitNon_reserved_keywords_in_12c = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#non_reserved_keywords_pre12c.
+PlSqlParserVisitor.prototype.visitNon_reserved_keywords_pre12c = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#string_function_name.
+PlSqlParserVisitor.prototype.visitString_function_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+// Visit a parse tree produced by PlSqlParser#numeric_function_name.
+PlSqlParserVisitor.prototype.visitNumeric_function_name = function(ctx) {
+ return this.visitChildren(ctx);
+};
+
+
+
+exports.PlSqlParserVisitor = PlSqlParserVisitor;
\ No newline at end of file
diff --git a/src/parser/common/BasicParser.ts b/src/parser/common/BasicParser.ts
new file mode 100644
index 0000000..3165a37
--- /dev/null
+++ b/src/parser/common/BasicParser.ts
@@ -0,0 +1,111 @@
+import { Token, Lexer } from 'antlr4';
+import { ParseTreeWalker } from 'antlr4/tree';
+
+import ParserErrorListener, {
+ ParserError,
+ ErrorHandler,
+ ParserErrorCollector,
+} from './parserErrorListener';
+
+/**
+ * Custom Parser class, subclass needs extends it.
+ */
+export default abstract class BasicParser {
+ private _parser;
+
+ public parse(
+ input: string,
+ errorListener?: ErrorHandler,
+ ) {
+ const parser = this.createParser(input);
+ this._parser = parser;
+
+ parser.removeErrorListeners();
+ parser.addErrorListener(new ParserErrorListener(errorListener));
+
+ const parserTree = parser.program();
+
+ return parserTree;
+ }
+
+ public validate(input: string): ParserError[] {
+ const lexerError = []; const syntaxErrors = [];
+
+ const parser = this.createParser(input);
+ this._parser = parser;
+
+ parser.removeErrorListeners();
+ parser.addErrorListener(new ParserErrorCollector(syntaxErrors));
+
+ parser.program();
+
+ return lexerError.concat(syntaxErrors);
+ }
+
+ /**
+ * Create antrl4 Lexer object
+ * @param input source string
+ */
+ public abstract createLexer(input: string): Lexer;
+
+ /**
+ * Create Parser by lexer
+ * @param lexer Lexer
+ */
+ public abstract createParserFromLexer(lexer: Lexer);
+
+ /**
+ * Visit parser tree
+ * @param parserTree
+ */
+ // public abstract visit(visitor: any, parserTree: any);
+
+ /**
+ * The source string
+ * @param input string
+ */
+ public getAllTokens(input: string): Token[] {
+ return this.createLexer(input).getAllTokens();
+ };
+
+ /**
+ * Get Parser instance by input string
+ * @param input
+ */
+ public createParser(input: string) {
+ const lexer = this.createLexer(input);
+ const parser: any = this.createParserFromLexer(lexer);
+ parser.buildParseTrees = true;
+ this._parser = parser;
+
+ return parser;
+ }
+
+ /**
+ * It convert tree to string, it's convenient to use in unit test.
+ * @param string input
+ */
+ public parserTreeToString(input: string): string {
+ const parser = this.createParser(input);
+ this._parser = parser;
+
+ const tree = parser.statement();
+ return tree.toStringTree(parser.ruleNames);
+ }
+
+ /**
+ * Get List-like style tree string
+ * @param parserTree
+ */
+ public toString(parserTree: any): string {
+ return parserTree.toStringTree(this._parser.ruleNames);
+ }
+
+ /**
+ * @param listener Listener instance extends ParserListener
+ * @param parserTree parser Tree
+ */
+ public listen(listener: any, parserTree: any) {
+ ParseTreeWalker.DEFAULT.walk(listener, parserTree);
+ }
+}
diff --git a/src/parser/common/parserErrorListener.ts b/src/parser/common/parserErrorListener.ts
new file mode 100644
index 0000000..e868898
--- /dev/null
+++ b/src/parser/common/parserErrorListener.ts
@@ -0,0 +1,84 @@
+import { Token, Recognizer } from 'antlr4';
+import { ErrorListener } from 'antlr4/error';
+
+export interface ParserError {
+ startLine: number;
+ endLine: number;
+ startCol: number;
+ endCol: number;
+ message: string;
+}
+
+export interface SyntaxError {
+ recognizer: Recognizer;
+ offendingSymbol: Token;
+ line: number;
+ charPositionInLine: number;
+ msg: string;
+ e: any;
+}
+
+export type ErrorHandler = (err: ParserError, errOption: SyntaxError) => void;
+
+export class ParserErrorCollector extends ErrorListener {
+ private _errors: ParserError[];
+
+ constructor(error: ParserError[]) {
+ super();
+ this._errors = error;
+ }
+
+ syntaxError(
+ recognizer: Recognizer, offendingSymbol: Token, line: number,
+ charPositionInLine: number, msg: string, e: any,
+ ) {
+ let endCol = charPositionInLine + 1;
+ if (offendingSymbol &&offendingSymbol.text !== null) {
+ endCol = charPositionInLine + offendingSymbol.text.length;
+ }
+ this._errors.push({
+ startLine: line,
+ endLine: line,
+ startCol: charPositionInLine,
+ endCol: endCol,
+ message: msg,
+ });
+ }
+}
+
+
+export default class ParserErrorListener extends ErrorListener {
+ private _errorHandler;
+
+ constructor(errorListener: ErrorHandler) {
+ super();
+ this._errorHandler = errorListener;
+ }
+
+ syntaxError(
+ recognizer: Recognizer, offendingSymbol: Token, line: number,
+ charPositionInLine: number, msg: string, e: any,
+ ) {
+ let endCol = charPositionInLine + 1;
+ if (offendingSymbol &&offendingSymbol.text !== null) {
+ endCol = charPositionInLine + offendingSymbol.text.length;
+ }
+ if (this._errorHandler) {
+ this._errorHandler({
+ startLine: line,
+ endLine: line,
+ startCol: charPositionInLine,
+ endCol: endCol,
+ message: msg,
+ }, {
+ e,
+ line,
+ msg,
+ recognizer,
+ offendingSymbol,
+ charPositionInLine,
+ });
+ }
+ }
+}
+
diff --git a/src/parser/generic.ts b/src/parser/generic.ts
new file mode 100644
index 0000000..615569c
--- /dev/null
+++ b/src/parser/generic.ts
@@ -0,0 +1,20 @@
+import { InputStream, CommonTokenStream, Lexer } from 'antlr4';
+import { SqlLexer } from '../lib/generic/SqlLexer';
+import { SqlParser } from '../lib/generic/SqlParser';
+export * from '../lib/generic/SqlParserVisitor';
+export * from '../lib/generic/SqlParserListener';
+
+import BasicParser from './common/BasicParser';
+
+export default class GenericSQL extends BasicParser {
+ public createLexer(input: string): Lexer {
+ const chars = new InputStream(input.toUpperCase()); // Some Lexer only support uppercase token, So you need transform
+ const lexer = new SqlLexer(chars) as Lexer;
+ return lexer;
+ }
+ public createParserFromLexer(lexer: Lexer) {
+ const tokenStream = new CommonTokenStream(lexer);
+ return new SqlParser(tokenStream);
+ }
+}
+
diff --git a/src/parser/hive.ts b/src/parser/hive.ts
new file mode 100644
index 0000000..a404aef
--- /dev/null
+++ b/src/parser/hive.ts
@@ -0,0 +1,20 @@
+import { InputStream, CommonTokenStream, Lexer } from 'antlr4';
+import { HiveSqlLexer } from '../lib/hive/HiveSqlLexer';
+import { HiveSqlParser } from '../lib/hive/HiveSqlParser';
+export * from '../lib/hive/HiveSqlListener';
+export * from '../lib/hive/HiveSqlVisitor';
+
+import BasicParser from './common/BasicParser';
+
+export default class HiveSQL extends BasicParser {
+ public createLexer(input: string): Lexer {
+ const chars = new InputStream(input);
+ const lexer = new HiveSqlLexer(chars) as Lexer;
+ return lexer;
+ }
+ public createParserFromLexer(lexer: Lexer) {
+ const tokenStream = new CommonTokenStream(lexer);
+ return new HiveSqlParser(tokenStream);
+ }
+}
+
diff --git a/src/parser/index.ts b/src/parser/index.ts
new file mode 100644
index 0000000..ff3b192
--- /dev/null
+++ b/src/parser/index.ts
@@ -0,0 +1,3 @@
+export * from './generic';
+export * from './plsql';
+export * from './hive';
diff --git a/src/parser/plsql.ts b/src/parser/plsql.ts
new file mode 100644
index 0000000..4450a07
--- /dev/null
+++ b/src/parser/plsql.ts
@@ -0,0 +1,19 @@
+import { InputStream, CommonTokenStream, Lexer } from 'antlr4';
+import { PlSqlLexer } from '../lib/plsql/PlSqlLexer';
+import { PlSqlParser } from '../lib/plsql/PlSqlParser';
+export * from '../lib/plsql/PlSqlParserListener';
+export * from '../lib/plsql/PlSqlParserVisitor';
+
+import BasicParser from './common/BasicParser';
+
+export default class PLSQLParser extends BasicParser {
+ public createLexer(input: string): Lexer {
+ const chars = new InputStream(input.toUpperCase());
+ const lexer = new PlSqlLexer(chars) as Lexer;
+ return lexer;
+ }
+ public createParserFromLexer(lexer: Lexer) {
+ const tokenStream = new CommonTokenStream(lexer);
+ return new PlSqlParser(tokenStream);
+ }
+}
diff --git a/test/parser/generic/lexer.test.ts b/test/parser/generic/lexer.test.ts
new file mode 100644
index 0000000..b3940f3
--- /dev/null
+++ b/test/parser/generic/lexer.test.ts
@@ -0,0 +1,12 @@
+import SQLParser from '../../../src/parser/generic';
+
+describe('GenericSQL Lexer tests', () => {
+ const mysqlParser = new SQLParser();
+
+ const sql = 'select id,name,sex from user1;';
+ const tokens = mysqlParser.getAllTokens(sql);
+
+ test('token counts', () => {
+ expect(tokens.length).toBe(12);
+ });
+});
diff --git a/test/parser/generic/listener.test.ts b/test/parser/generic/listener.test.ts
new file mode 100644
index 0000000..54a31ab
--- /dev/null
+++ b/test/parser/generic/listener.test.ts
@@ -0,0 +1,22 @@
+import SQLParser, { SqlParserListener } from '../../../src/parser/generic';
+
+describe('Generic SQL Listener Tests', () => {
+ const expectTableName = 'user1';
+ const sql = `select id,name,sex from ${expectTableName};`;
+ const parser = new SQLParser();
+
+ const parserTree = parser.parse(sql);
+
+ test('Listener enterTableName', async () => {
+ let result = '';
+ class MyListener extends SqlParserListener {
+ enterTableName(ctx): void {
+ result = ctx.getText().toLowerCase();
+ }
+ }
+ const listenTableName: any = new MyListener();
+
+ await parser.listen(listenTableName, parserTree);
+ expect(result).toBe(expectTableName);
+ });
+});
diff --git a/test/parser/generic/syntax.test.ts b/test/parser/generic/syntax.test.ts
new file mode 100644
index 0000000..046ef1e
--- /dev/null
+++ b/test/parser/generic/syntax.test.ts
@@ -0,0 +1,18 @@
+import SQLParser from '../../../src/parser/generic';
+
+describe('Generic SQL Syntax Tests', () => {
+ const parser = new SQLParser();
+
+ test('Select Statement', () => {
+ const sql = 'select id,name from user1;';
+ const result = parser.validate(sql);
+
+ expect(result.length).toBe(0);
+ });
+
+ test('Select 1+1', () => {
+ const sql = 'SELECT 1+1;';
+ const result = parser.validate(sql);
+ expect(result.length).toBe(0);
+ });
+});
diff --git a/test/parser/generic/visitor.test.ts b/test/parser/generic/visitor.test.ts
new file mode 100644
index 0000000..9119688
--- /dev/null
+++ b/test/parser/generic/visitor.test.ts
@@ -0,0 +1,27 @@
+import SQLParser, { SqlParserVisitor } from '../../../src/parser/generic';
+
+describe('Generic SQL Visitor Tests', () => {
+ const expectTableName = 'user1';
+ const sql = `select id,name,sex from ${expectTableName};`;
+ const parser = new SQLParser();
+
+ const parserTree = parser.parse(sql, (error) => {
+ console.log('Parse error:', error);
+ });
+
+ console.log('Parser tree string:', parser.toString(parserTree));
+
+ test('Visitor visitTableName', () => {
+ let result = '';
+ class MyVisitor extends SqlParserVisitor {
+ visitTableName(ctx): void {
+ result = ctx.getText().toLowerCase();
+ super.visitTableName(ctx);
+ }
+ }
+ const visitor: any = new MyVisitor();
+ visitor.visit(parserTree);
+
+ expect(result).toBe(expectTableName);
+ });
+});
diff --git a/test/parser/hive/lexer.test.ts b/test/parser/hive/lexer.test.ts
new file mode 100644
index 0000000..423bdb9
--- /dev/null
+++ b/test/parser/hive/lexer.test.ts
@@ -0,0 +1,12 @@
+import SQLParser from '../../../src/parser/hive';
+
+describe('HiveSQL Lexer tests', () => {
+ const parser = new SQLParser();
+ // select id,name,sex from user1;
+ const sql = 'SELECT * FROM t1';
+ const tokens = parser.getAllTokens(sql);
+
+ test('token counts', () => {
+ expect(tokens.length).toBe(12);
+ });
+});
diff --git a/test/parser/hive/listener.test.ts b/test/parser/hive/listener.test.ts
new file mode 100644
index 0000000..23ff3e0
--- /dev/null
+++ b/test/parser/hive/listener.test.ts
@@ -0,0 +1,22 @@
+import SQLParser, { HiveSqlListener } from '../../../src/parser/hive';
+
+describe('Hive SQL Listener Tests', () => {
+ const expectTableName = 'user1';
+ const sql = `select id,name,sex from ${expectTableName};`;
+ const parser = new SQLParser();
+
+ const parserTree = parser.parse(sql);
+
+ test('Listener enterTableName', async () => {
+ let result = '';
+ class MyListener extends HiveSqlListener {
+ enterTableName(ctx): void {
+ result = ctx.getText().toLowerCase();
+ }
+ }
+ const listenTableName: any = new MyListener();
+
+ await parser.listen(listenTableName, parserTree);
+ expect(result).toBe(expectTableName);
+ });
+});
diff --git a/test/parser/hive/syntax.test.ts b/test/parser/hive/syntax.test.ts
new file mode 100644
index 0000000..e6f6da6
--- /dev/null
+++ b/test/parser/hive/syntax.test.ts
@@ -0,0 +1,18 @@
+import SQLParser from '../../../src/parser/hive';
+
+describe('Hive SQL Syntax Tests', () => {
+ const parser = new SQLParser();
+
+ test('Select Statement', () => {
+ const sql = 'SELECT * FROM employee WHERE salary>30000;';
+ const result = parser.validate(sql);
+
+ expect(result.length).toBe(0);
+ });
+
+ test('Select 1+1', () => {
+ const sql = 'SELECT 1+1;';
+ const result = parser.validate(sql);
+ expect(result.length).toBe(0);
+ });
+});
diff --git a/test/parser/hive/visitor.test.ts b/test/parser/hive/visitor.test.ts
new file mode 100644
index 0000000..f4d2cec
--- /dev/null
+++ b/test/parser/hive/visitor.test.ts
@@ -0,0 +1,27 @@
+import SQLParser, { HiveSqlVisitor } from '../../../src/parser/hive';
+
+describe('Generic SQL Visitor Tests', () => {
+ const expectTableName = 'user1';
+ const sql = `select id,name,sex from ${expectTableName};`;
+ const parser = new SQLParser();
+
+ const parserTree = parser.parse(sql, (error) => {
+ console.log('Parse error:', error);
+ });
+
+ console.log('Parser tree string:', parser.toString(parserTree));
+
+ test('Visitor visitTableName', () => {
+ let result = '';
+ class MyVisitor extends HiveSqlVisitor {
+ visitTable_name(ctx): void {
+ result = ctx.getText().toLowerCase();
+ super.visitTable_name(ctx);
+ }
+ }
+ const visitor: any = new MyVisitor();
+ visitor.visit(parserTree);
+
+ expect(result).toBe(expectTableName);
+ });
+});
diff --git a/test/parser/plsql/lexer.test.ts b/test/parser/plsql/lexer.test.ts
new file mode 100644
index 0000000..0a397e9
--- /dev/null
+++ b/test/parser/plsql/lexer.test.ts
@@ -0,0 +1,12 @@
+import SQLParser from '../../../src/parser/plsql';
+
+describe('PLSQL Lexer tests', () => {
+ const parser = new SQLParser();
+
+ const sql = 'select id,name,sex from user1;';
+ const tokens = parser.getAllTokens(sql);
+
+ test('token counts', () => {
+ expect(tokens.length).toBe(12);
+ });
+});
diff --git a/test/parser/plsql/listener.test.ts b/test/parser/plsql/listener.test.ts
new file mode 100644
index 0000000..2b3e43e
--- /dev/null
+++ b/test/parser/plsql/listener.test.ts
@@ -0,0 +1,22 @@
+import SQLParser, { PlSqlParserListener } from '../../../src/parser/plsql';
+
+describe('PLSQL Listener Tests', () => {
+ const expectTableName = 'user1';
+ const sql = `select id,name,sex from ${expectTableName};`;
+ const parser = new SQLParser();
+
+ const parserTree = parser.parse(sql);
+
+ test('Listener enterTableName', async () => {
+ let result = '';
+ class MyListener extends PlSqlParserListener {
+ enterTable_ref_list(ctx): void {
+ result = ctx.getText().toLowerCase();
+ }
+ }
+ const listenTableName: any = new MyListener();
+
+ await parser.listen(listenTableName, parserTree);
+ expect(result).toBe(expectTableName);
+ });
+});
diff --git a/test/parser/plsql/syntax.test.ts b/test/parser/plsql/syntax.test.ts
new file mode 100644
index 0000000..b3c50c3
--- /dev/null
+++ b/test/parser/plsql/syntax.test.ts
@@ -0,0 +1,23 @@
+import SQLParser from '../../../src/parser/plsql';
+
+describe('PLSQL Syntax Tests', () => {
+ const parser = new SQLParser();
+
+ test('Test simple select Statement', () => {
+ const sql = 'select id,name from user1;';
+ const result = parser.validate(sql);
+
+ expect(result.length).toBe(0);
+ });
+
+ test(`Test select, where, order by`, () => {
+ const sql = `
+ select eid, emp_last, mgr_id, reportlevel
+ from reports_to_101 r, auto a
+ where r.c1 = a.c2
+ order by reportlevel, eid
+ `;
+ const result = parser.validate(sql);
+ expect(result.length).toBe(0);
+ });
+});
diff --git a/test/parser/plsql/visitor.test.ts b/test/parser/plsql/visitor.test.ts
new file mode 100644
index 0000000..d8000b8
--- /dev/null
+++ b/test/parser/plsql/visitor.test.ts
@@ -0,0 +1,23 @@
+import SQLParser, { PlSqlParserVisitor } from '../../../src/parser/plsql';
+
+describe('PLSQL Visitor Tests', () => {
+ const expectTableName = 'user1';
+ const sql = `select id,name,sex from ${expectTableName};`;
+ const parser = new SQLParser();
+
+ const parserTree = parser.parse(sql);
+
+ test('Visitor visitTable_ref_list', () => {
+ let result = '';
+ class MyVisitor extends PlSqlParserVisitor {
+ visitTable_ref_list(ctx): void {
+ result = ctx.getText().toLowerCase();
+ super.visitTable_ref_list(ctx);
+ }
+ }
+ const visitor: any = new MyVisitor();
+ visitor.visit(parserTree);
+
+ expect(result).toBe(expectTableName);
+ });
+});
diff --git a/test/parsers/mysql/lexer.test.ts b/test/parsers/mysql/lexer.test.ts
deleted file mode 100644
index a26f2a0..0000000
--- a/test/parsers/mysql/lexer.test.ts
+++ /dev/null
@@ -1,16 +0,0 @@
-import MySQLParser from '../../../src/core/mysql';
-
-describe('MySQL Lexer tests', () => {
- const mysqlParser = new MySQLParser();
-
- const sql = 'select id,name,sex from user1;';
- const tokens = mysqlParser.getAllTokens(sql);
-
- test('token counts', () => {
- expect(tokens.length).toBe(12);
- });
-
- test('token counts', () => {
- expect(tokens.length).toBe(12);
- });
-});
diff --git a/test/parsers/mysql/parser.test.ts b/test/parsers/mysql/parser.test.ts
deleted file mode 100644
index 394428a..0000000
--- a/test/parsers/mysql/parser.test.ts
+++ /dev/null
@@ -1,24 +0,0 @@
-import MySQLParser from '../../../src/core/mysql';
-
-describe('MySQL Parser tests', () => {
- const mysql = new MySQLParser();
-
- test('Select * FROM Statement', () => {
- const sql = 'SELECT * FROM tb;';
- const result = mysql.parserTreeToString(sql);
- expect(result).toEqual(`
- (statement (sqlStatements (
- sqlStatement (
- dmlStatement (
- selectStatement (
- querySpecification SELECT (selectElements *) (
- fromClause FROM (
- tableSources (tableSource (
- tableSourceItem (tableName (
- fullId (uid (
- simpleId TB
- )
- ))))))))))) (emptyStatement ;))
- )`);
- });
-});
diff --git a/test/parsers/mysql/syntax.test.ts b/test/parsers/mysql/syntax.test.ts
deleted file mode 100644
index d8a1a91..0000000
--- a/test/parsers/mysql/syntax.test.ts
+++ /dev/null
@@ -1,11 +0,0 @@
-import MySQLParser from '../../../src/core/mysql';
-
-describe('MySQL Syntax tests', () => {
- const mysql = new MySQLParser();
- test('Select Statement', () => {
- const sql = 'select id,name from user1;';
- const result = mysql.validate(sql);
-
- expect(result.length).toBe(0);
- });
-});